760 703893765 709966830 387137675 134882706 551198594 983419828 919273949 595763773 527666018 492843062 649362362 145254068 551489402 688288824 448345537 168299108 428574574 498949104 613560857 870286034 683635973 926674385 775987719 27217372 119548084 372258481 247597106 473399991 626772356 506500389 108365184 995815283 624268068 580438744 749608903 916548402 258173121 347795771 38016854 872964833 247256544 855897812 611672370 361248986 598378116 165605821 61352746 617350436 911685734 425764100 943616928 109483318 221802995 923891993 200529095 913023156 981252734 22079001 486393079 532068840 114209854 560679053 666450918 953598409 479056850 431414436 222920089 423731093 174389611 664771058 553326241 303896723 286825016 125461613 955399413 146776730 297991463 189028841 534719284 621131451 178263795 442370460 940903736 86794630 593692144 267343867 18225033 339334715 241278123 254910406 455353303 85571503 153909705 154036879 995171342 540879699 792900766 394850617 69591964 389382390 67211316 845481573 24447087 237799992 605313959 722266702 913946737 386091266 911922074 426616896 206479369 762185625 872253311 993609225 580528846 266617257 988814552 490920585 733952742 519109581 147163339 891283866 382183745 171528332 602299837 335125002 910234192 838817232 191539078 250268478 302817915 24754964 389674513 124581019 96796490 398870184 588178287 901383691 727524478 776351134 158276364 416895328 478057312 131147184 62433021 426020868 813697468 281663600 123919267 191373097 502277088 985865451 821102341 778710902 896646315 816525965 822330969 782529867 204871314 175724808 667163730 46962265 560945338 284567175 134336086 669019 342197262 925727064 231166198 426677796 663890079 871835001 540030863 851562446 539437860 167114588 877907349 760137569 855107970 487532373 93921271 119753343 827070667 654095836 168203074 20666141 964159813 102878873 929100824 801168200 17052429 417699635 787946534 959213140 262154652 900869215 99567539 250473267 855804240 446619879 180268143 819257600 706389220 749097573 243306502 544432815 943423922 203874114 871118306 586557611 226539557 440765391 821416887 296073923 926190035 147708650 308403637 858590383 609088458 130277538 993128635 69403669 577431952 125889 360550491 187305855 738232114 312311312 863412367 235318124 690315356 261959490 642510910 32106497 452780621 833549596 528737913 614594660 290622666 730173350 563038516 570538561 740825562 5292051 709494909 118239930 33141976 653501503 722203292 262109087 268777603 974916220 658623420 307896271 42772688 603212088 409307730 489979644 112167347 256406300 918899465 464283661 735199438 157964567 997314922 606931852 340282226 803419904 160518977 105362963 857221176 211468658 224625110 31818280 985438403 31810217 222530483 906329045 71004560 641636523 419276310 749730341 200070601 125400329 205246876 933943998 309162522 724569653 325440478 311538102 481045177 400174440 236354379 833051037 617681211 45105030 383492806 705904107 572421988 813667319 630843763 999130752 23680190 423038894 964973160 526162313 41835044 356092309 471547674 410310983 27651794 16367612 512104852 377292845 325706999 831991153 480043825 477733844 260804980 839826722 273155248 999392691 404831277 403915083 636798635 370326951 614317201 861803345 726175302 313217083 156456920 376700260 788510418 93329063 461457189 419462625 868683102 483844049 197204630 318219285 961957739 933375 503434866 76947516 770474262 133632801 483046315 715653486 552063287 545474458 417140211 658227050 993618511 905517197 795276974 911863839 575654436 418697919 366709292 893256356 521483983 582055239 934948018 858288797 251792560 561651100 834574254 387131326 198923979 616006405 538712925 57593907 278592212 223548237 140981118 537050239 777658791 223839834 349450969 288480766 467400078 618229286 823778071 502273143 52286583 298945634 260052661 147769739 865369194 130843058 558139872 974538913 207610214 250465613 185507813 704942908 722669649 278230160 701663491 978027139 584505414 90648332 592617030 499789487 117007928 789832203 607120186 374080468 395506763 282818967 917615077 153782572 22089747 515746550 280380014 600898345 575241834 496023198 607724953 635851602 263976646 703160594 817662062 428043355 432379226 346481304 348342952 533260777 482543382 443043808 237842834 88055114 706909054 333110767 268766558 327691744 630654094 15620026 242143481 645936551 302232676 706125852 778812790 72653999 501187919 728964163 484809016 792861732 266280129 639051855 42530648 622858589 851406335 617109537 988959889 784413111 17563077 675529226 578412670 344973161 539115010 346880801 475587350 93443242 833017996 665033147 864137601 485979937 749363942 427451887 416964248 280858553 475715170 106727965 531429146 5842032 125440291 190420928 457302706 884022994 16387851 466650574 624569445 132923353 571064209 787349537 899003408 987048197 417562502 466820726 528989632 179412640 273239093 816237938 857170496 698905095 93942853 780023907 460485692 371186632 433168101 374427621 187241870 303436620 294096739 184788453 557931488 619700494 148177048 530803792 766766520 570956102 562845661 860776077 568542867 966822287 92044470 970251165 768389322 550837777 123764205 14502409 719242000 102684050 501912951 169094624 506311616 783787116 982715621 632080823 191333568 637792316 320240214 939901399 926959863 802908154 736885446 343130083 688971714 414329356 649014063 155949765 660815615 28374032 93335499 173215099 610622033 765117115 912768990 911726158 818285689 984929429 960446330 932379931 687191913 862184468 583508883 761951796 272125853 904100297 63122570 895020930 782007422 614822034 33999168 770596653 748377943 53052109 338767670 643575778 371817170 16090065 524797489 883872454 841680613 252624630 31582652 184885765 571266064 686035014 517333721 273912881 952947514 58929639 398512395 157208988 141045857 518595810 213081517 777444391 604189982 835571311 318699161 647273370 243294502 323253703 301591155 12372450 29156907 47358209 560191471 743099389 131897651 466227368 963861521 910730358 992160744 861859476 47896192 962728198 135973938 259413107 290134799 320826422 389549826 739973078 870332063 117024361 379208327 787661682 715524941 266999631 647457370 651366085 583720711 296136334 476014541 152456551 562512156 687025880 560006286 703703848 88383655 349882231 933128242 524514672 619203195 269442855 685723454 97341287 912351992 373532339 501656608 433596388 878148935 977726021 252107409 962398817 990738608 850214903 830261054 302751657 72982649 634403056 199717272 82117679 630112865 113038351 445857889 191406069 382479396 807469921 932463756 65413629 204202190 46013182 151553098 782877206 491043877 127477527 99152618 614868218 911580174 778087446 289556642 686144913 228335775 462537180 108011500 310763897 590028326 757957261 213909349 116245434 126298990 245687937 723739896 277832046 355582073 438930201 903254645 196818356 312268249 340414312 47402905 966609727 491294503 805468925 413307314 970416867 81133271 350786436 943202907 409974398 176210892 202088233 71854616 465701558 833285308 967407962 616516785 61710701 219564811 320549032 272183506 434974768 829257626 974373080 431852760 225824142 840024470 710626150 906813819 679688992 445025844 151913803 920103778 346811615 218498764 834848108 292747765 913673506 606798802 89446498 447707849 467182576 303041101 636074652 926140575 482129702 771926343 573831083 159327243 185820185 80425849 642362432 241767405 334155470 680063611 4961790 992871167 429823143 13476815 638445055 83578657 153089528 828186252 70336220 821127635 46749113 978482 30053311 125387808 328721555 901092406 56342988 345735880 4245311 955125623 260875851 462334423 644170600 805046659 485246108 873811100 873148427 973840847 888997677 948200189 138466249 869401309 329109196 966070103 277479228 686211342 906187055 922823033 367874217 667906419 509584770 911713660 373726375 838885889 94678209 259993540 860178511 981453938 580512136 749839698 346012367 525164166 13650906 594250631 131971627 935920868 433094635 821841843 46233093 834414071 273832473 480948078 743059776 995510779 617104853 624498270 122964476 985676557 994173624 997345732 337347471 356673328 554052428 942372128 383280193 656949401 657215639 702781192 71584538 996449254 552126336 914235513 313415005 571629561 14658655 464937534 350922239 736631708 175598855 889856800 252560451 584710872 702761534 952038266 114158899 911560735 9824511 629255677 475525166 709297047 135150105 209651937 381174482 677050169 592871356 760771053 454944610 821495455 82024658 206715832 382377020 506241576 109292003 207393366 324855610 723524206 569929007 716310163 857383316 864181119 195875726 834745833 378741437 929524338 315798322 617475445 40147872 566562146 710104132 970701755 821064930 904894877 29127995 579656481 280595560 824511131 989674550 998648507 743794746 814643226 488623877 551575756 951582293 980396295 972090056 988930804 413035035 897217844 704654969 836735149 287877614 783244998 844973893 887297617 662021752 953984574 1353441 364946469 938127107 991868755 61224634 313293357 392481609 944868908 819735682 926782947 608717482 959131454 375817348 806662598 358499352 767306878 720521196 802655752 855391312 979928681 695764187 907457045 616672218 711209088 348528127 503687092 867880957 999166546 870650213 902822026 655256352 946370813 84986447 628406772 669755089 679209501 699439351 854557553 111835797 965540927 637316026 756577949 899534594 917870385 475840519 731321203 730098326 861299716 38143896 823241399 654054220 848732378 389993874 439424723 886618533 950342550 974716260 983620744 416249239 981950490 128500557 214956737 811576448 899055089 862907797 984707150 998022168 998904924 70285624 429384412 629472533 913489614 323990784 330567193 932169238 936290045 913777909 955927779 924396970 958054429 538403520 859518753 883525614 919304239 790130498 897599789 136495912 401562496 10339110 227261725 638710807 668713751 449872033 617022180 131088277 441465260 236876313 988754055 190113648 480141564 744635047 894968837 232556000 841903641 367578189 516975684 191904515 216441771 953117211 995186805 503141828 841471370 367127471 428938477 844674557 908398835 574013754 737840855 963065783 980423594 431710580 442705996 410922845 827182990 364489967 497307828 858574928 916057463 691307465 754273700 251110137 518919058 356831680 467590161 247364896 932047472 434768479 722174764 778810300 882325949 89408879 293894493 684675424 909306318 404208284 495741192 879594574 899401917 702976239 834023146 28318396 284922154 908172288 922759592 646870381 974768801 266052872 519102859 344704434 521229217 983400991 995014108 780399227 788247814 644273649 911933587 847672025 995766783 541130003 760836340 371868472 682296059 106141051 361162384 734031211 981311017 582918029 948370315 216891254 500020918 199120991 554116893 982893191 991595383 785519349 868739680 165856807 857378481 638240274 790872745 205442946 642276546 735280313 921543291 474155914 900763265 968180390 974488023 120541370 418335132 431152435 561723210 455133632 885174259 682862023 689071548 654676871 829175023 953758794 959368592 678237592 735525746 630590703 892249874 406225686 457657697 729551558 922377525 888340302 894668231 146884764 738914898 181257416 625813840 800449902 940158079 613194828 825909668 102455902 263771759 796903414 960185278 743895271 767642037 185912166 378438548 658497961 824667339 44922640 176299023 646953880 778990007 816984641 896606047 173957804 316588795 104619478 793374543 118934105 964858805 495822054 579196447 961687594 962959918 472868083 720648967 795761918 895903247 242140395 703263913 51325487 210491167 210841693 715124809 940078908 980709024 646184635 835405483 89876218 179841279 982505397 986665979 478518508 666309978 253895635 692422693 847448715 954980872 74353650 165156165 149164014 558896182 544121630 752461574 44756035 291074563 57258487 143610651 440159037 734294539 39182349 865667376 898601332 961836498 424290681 814601997 656913244 804145099 324524719 503679557 99301931 302980696 723402788 737378515 914738860 965653806 692448487 791657877 427587932 970256371 827394037 943481584 449080934 719121209 719606788 750375533 945591817 962679129 430113622 644155771 164452559 261091154 963931328 980479622 870619383 896398988 429449758 781891855 798719431 840112308 505070481 792087927 351287798 661807412 403507504 577907952 276370944 765548304 12818041 241054122 235139051 254893527 78650430 181140772 900207517 919608061 163405791 967613701 168086190 528997242 568997304 719494075 459154010 847395407 313696056 628685466 729693545 809101100 1892528 298470314 144026773 375403695 387398591 449987450 685442268 889500348 64892971 221934864 241779869 672546254 224508497 671059055 423209309 591808033 618189105 876664489 906671576 912364490 52791596 240865585 29368265 862014619 18609913 179938800 498765044 585655478 205259700 418257325 282587645 737308737 829834156 888625773 866910982 920110547 765620282 995914044 840807512 868211090 87711316 922825427 462287632 493879903 795089468 799459457 983406119 996690930 421673981 976734359 959528610 982411237 620740259 639378325 646355058 725443441 698455309 713747409 774740798 786149286 559871765 656944437 213303295 987892707 723738724 921934927 690797407 888955486 36880928 445767351 73091517 494514975 27679800 849015556 716947675 798249621 927953941 958019865 898710979 908209480 99847817 993365081 512844111 816285657 662315181 757315724 35517378 490402514 889501717 965280909 354859240 394168558 640001578 784590367 417132014 900676938 981309597 991954548 695446246 867998298 799156101 954586321 420635594 829936946 477663486 860746898 264721620 484274044 269957391 325123648 711007546 850043042 492812558 946380108 594826306 770759964 550010333 996387257 435776366 707949004 538681362 678778571 512581281 761763653 905217587 949476504 891258744 953030907 167934006 706069812 334183250 542684700 801835037 927670626 695575283 949666281 101429876 250454976 264524426 334144498 239307355 473342003 578930672 781589180 796041557 813610696 596175837 914670464 37408232 38360838 623060434 791542446 883911370 904660814 800568442 808492704 678127991 941601473 961975151 995650625 340503988 810800165 102246655 171165740 625233161 736391364 391031386 718806471 296255411 587272066 732058748 901091616 445260945 615206379 940914663 951039980 755418936 834377157 626232628 850236663 975046792 978718128 532750352 998608512 799607674 901292789 868068763 994490571 538925006 728084934 244396128 412918789 907282400 988734736 412108628 943329243 839858274 866308049 107850328 515565705 50910609 295706652 264426584 859458505 538722380 871991745 606479746 981105422 766750585 870288730 486343812 792920085 411949958 891595719 657379918 945975798 675739787 969164494 449193675 602542942 296629713 583110315 690173902 768353556 255026263 964656039 739830841 865991364 83853233 697708646 561241657 687291465 422098566 908628062 422393980 700387959 98425085 866211024 402451085 584864152 765628426 896898659 822552185 890843396 481972679 977128728 623769055 919879269 60696567 247704566 535444862 556090393 230160394 488216958 783132645 943441495 97131410 332475041 764229041 956262983 497400649 759369227 481441534 602204303 845202542 970051401 170258148 385687325 193180865 978757484 895496560 942347126 176686009 848665893 11054025 517527781 752114876 968345533 713289525 891162077 373432686 580262103 860743473 978698185 13702795 727306961 1267265 847056709 683627856 958303503 56080503 103817158 145089026 613739068 335607224 432737823 988767874 993263484 520964246 543988795 864023886 976603409 145716290 586573842 527406053 859011724 738509241 976428768 465225099 934821756 440986891 676816665 163053615 425854188 691344324 869609244 610379499 947017050 294135783 682194393 868424631 990455485 295110521 714281477 714624029 723376837 537300368 926205414 908032100 930393396 925827709 948800763 492997795 707851684 59430027 625744289 296146549 695706167 748173913 941801013 21175633 918615568 805661267 998511647 727981066 861925898 816805868 923060063 677997362 845571633 952097255 974337157 661505668 817853298 524417965 565225050 56425594 165589766 487890744 742152670 446349069 659966427 405131156 658723150 746514642 760960738 38738609 162329267 93391899 983996415 705005380 939762134 64316910 325684469 878237678 926220512 472992848 758106137 966308042 998943623 43785141 588174343 954656230 962023677 841686751 881834506 821805618 936454493 166844798 694030352 974252711 982461777 191129538 864608886 486238367 895425202 322431877 923360812 414502064 580365796 823196576 891174972 459785095 916452465 375991399 861414615 92731504 318293953 141107310 591766641 189392929 687296328 109153977 782325410 930594734 945027728 654350185 831898199 88547573 986804443 45470631 775024341 822947253 931880117 1435821 831921357 150430815 198325494 510798941 775994699 878651310 928965072 672573533 677382478 908490325 986151679 113667468 833792477 253428885 529049769 510101945 592609682 499650015 522015746 994232042 995308760 680621695 935139890 963819201 995966374 907560862 982179359 669305898 878129736 509866333 612546316 66466600 725900633 93450830 142784667 104566673 229495387 640897339 993352224 485936694 544286787 730466557 831021390 457104388 965150736 451769920 868599275 798061597 799459773 698531537 713395852 655051791 927926942 506988507 885233195 61700982 745978663 271130463 429939565 449314541 502347929 493583372 699600714 25788331 282156559 82784592 392897752 743975061 894943245 721765231 767143669 563777826 779970083 454315815 959502764 860742971 944509343 807169661 917068157 793279510 975982469 842130692 943041499 686932762 707250416 947731609 975527996 171667238 936222087 910825232 946360853 938702313 993348394 93180713 519388950 476943950 839944271 72991253 215191735 538231281 949862508 160579245 753624755 763639270 825703601 289265060 413571005 967735849 995208312 914700483 987478836 523343072 782714305 409147016 948210824 697028096 819986589 831610795 921961859 649669229 781690819 906246510 938736876 449971059 515159184 650057441 974714867 431565882 450747159 754130997 792432074 762228265 914059600 528183660 827811808 62217055 891829485 51269438 155520529 627182107 798633114 700271725 991440313 80897715 817823869 788237152 951669616 288091217 921330459 290797980 989304291 676976316 747117310 741516925 774707631 74181323 934014042 721354999 799888005 719214079 882706271 24938779 440796401 369536632 968338799 824249184 858832060 378617143 609227357 632288841 866607893 655096065 841962947 212491897 945241151 990032574 993555153 458398317 987053073 668919455 864715448 992150528 993968238 59339666 436452216 884678714 886358994 442567887 725918221 419985707 933645220 86008639 687270642 884374880 915411214 787538940 833616515 285497642 397842662 983429895 986283719 309467405 696459685 343768299 394040780 801778577 966039884 970876344 987703573 576301096 961600077 78358258 505972686 841409048 842555174 478017543 895455865 892224125 930921249 423905920 796797071 361773388 451056711 357009527 904145174 502247630 559821665 10401595 913997387 232967312 348272646 533385232 910533217 129282176 900213930 361313031 534106567 811282507 858700439 675199506 810618202 955951999 967928034 272914018 401867508 516370233 649712991 238553822 287715324 821075163 962198526 632660244 982846797 358537854 437484221 958334079 982194305 697860873 780589588 344267131 363924437 599398408 715218820 636735947 869968696 140524848 631553145 177947118 823688377 729567360 790435465 630772135 657168210 357706919 823144519 738760797 967364382 410774471 948202001 469269135 822248750 971300442 995155188 26168400 425653067 86782566 286314920 940968848 976422569 60796705 461408731 380206352 452547244 650576130 998933032 23715694 408150624 378696580 979826931 607008243 986813545 466523681 598519578 953238343 957818513 791847749 793448016 171357126 733244459 82485054 780845249 101741274 264829814 996030253 996892584 881700810 955089478 422943889 970565494 766202669 966885060 368714701 865146179 271693410 282971596 489515879 985711556 346175925 542872604 429116815 576387179 373669441 930499697 353455563 948939435 671744254 810745193 772322172 983407978 470554017 782212682 205846460 637256503 187465340 978010011 889209054 890018536 402220209 598175273 115039206 814497612 944365621 974515530 181295757 483809907 653275355 894443413 467089965 844423229 769504604 808096111 157450736 698428623 616910704 702093476 657148342 799711364 987303018 996917437 917110565 977671953 269605033 408392842 107657998 389367013 882863795 987042798 181076173 212272115 355591801 830740620 802940473 913416612 700959404 833048039 848975469 991099122 728998002 729336184 884038704 935010289 624486620 953398866 923210101 968772033 412111342 789838626 124861501 910227963 858309391 867588243 745828889 840332828 152060967 167202336 66378410 334126051 457580378 621111042 268781493 614380341 736186569 862514823 329072370 477381362 917825837 990414255 596060188 963352681 647953675 811078904 711751225 814102013 252105881 544965217 669612899 947699608 857740848 894768162 558617344 967196085 300521330 895962082 754176259 778264489 488626974 683786968 141224069 525855180 521868943 916201119 995777695 996924598 637932981 891214946 63130123 385607832 334032788 472158175 637911459 720328419 74011957 856373694 935806420 976892973 609586411 844506356 680947556 718155140 911679858 939470913 935412999 952162375 248796397 342464188 139416746 656837210 679678914 988964208 726809040 907517065 779013105 848255231 245050929 917868785 813435952 932501111 345312544 346415922 98321883 796712309 393960438 470156425 941873514 949155912 92437740 912217419 255041440 777558552 478446378 913444127 180982614 553904469 880216540 950646648 712106223 739532347 428923799 442610362 829574557 957991342 345566101 516218246 919953570 994796803 579717690 635440853 715581159 830594179 318203787 432069462 957367865 999131100 344866907 841065281 184415848 282321535 110717810 534558529 973444159 988850554 145763519 587441098 132478212 334808984 311694642 811668784 507155655 733821226 209152810 646701508 141812779 171846141 854570356 964768011 784215637 862694273 742287209 833759607 846866010 969695262 885624563 915380499 902472393 921897563 139150918 190616832 26757436 633931864 774045940 916395749 423117198 657127863 361832748 530668912 96894965 643422964 554657024 883172792 124139135 346940330 601733429 962342901 988508109 989231341 383541110 867377159 902277504 969946819 18983328 587862119 679507825 714832539 473655170 680513290 166892292 606194132 246762613 805373079 882788085 970261337 219554860 701147901 40618274 868393248 72816245 890136397 676117717 898218932 600914506 616825672 453479835 464238058 252953585 430782584 918373430 955147222 411706229 471887967 192464071 672752108 984797760 990298846 85955723 919658438 688654534 711461656 503543986 609403875 594943341 874656248 288179660 976480555 606817781 874211699 581176094 870757679 605982109 925927522 315917759 422957325 541679190 886855998 511603797 516514278 355051783 958434154 198067754 199502135 202170502 384341738 294560751 473979128 811379331 934875870 138964152 980746319 651219335 674586965 564984461 740037156 448212188 687971946 389382277 578805892 12143388 390021804 287189513 666180327 228870930 666129310 997765305 998837961 485938547 541716346 99415189 419026000 301504596 511702349 158968424 188248198 177460309 498367436 791426472 947526195 930010861 939656138 268257086 633535182 916049925 977409194 379922937 792067603 749855664 979209397 481979945 704784092 409484249 543799114 674027271 723326029 958383078 960615358 731263857 966121275 148027982 602476134 770468821 796459210 992600938 996439905 648675878 904739600 688613183 983590496 855299349 921900776 263459271 666718687 932132126 980817721 143528036 428801750 892673759 909156559 317416276 972802428 604229433 614457452 576255897 869884427 874523615 995854561 637023883 869991080 972962879 975715635 228346337 716488778 327357111 559251793 831813219 958837494 778665164 844955876 811982686 993897081 559525172 872914979 608567552 891908330 958906103 960112119 540830047 615668618 941991319 961981553 51273746 650483309 763673028 787359421 471168608 800480156 419853527 958331818 378749650 924374543 186220655 805074091 379499866 818310430 467390224 925591842 204151197 672218572 469049845 542721490 679449856 915943878 693223632 945448240 894372930 969207192 583751825 932464687 337773075 461992760 902973337 963233311 739135952 992565331 696161063 841517430 396787731 826588866 732984870 792674764 379654812 876892262 962351246 967081006 18089782 745541829 238589041 409267866 915004735 989096369 151761031 962168859 594400334 958893357 679455366 873809530 198059083 347969770 854569431 971085654 618914393 624030728 858693247 971939554 937047170 976459224 116819475 422663715 380720461 992248757 436307629 848619194 53929139 410162420 535337531 648388161 627444539 755418571 399089577 787301535 278581166 409354268 458669972 545602653 493048227 797870712 552874591 911150499 659950003 826458861 84251267 148761347 15777977 350238708 109752125 197703488 478715878 488320190 654966425 894329040 689067331 829153721 224516630 656594266 88064918 104092809 80293810 529725090 701446090 981951475 354807374 696871815 682788149 893750965 734312717 840794379 94099557 833002610 975089466 977889946 367155805 578110448 419075716 949899710 61619944 698009272 917754926 945545995 4057712 689415324 740373951 927181215 849708658 909729077 713990830 819004271 797967799 843837610 155264910 964707249 661597997 818417648 592240825 621842847 194753690 755768364 894449217 994584206 844224860 849837906 652916835 734453761 147742469 257111145 310781039 324940213 249856287 369772122 669719938 800090878 851760421 900464398 955245553 981429196 306474317 959375730 796826846 868323059 912386420 962514471 615715883 986027528 840478227 953620736 561357501 606104273 228727416 375192280 769910894 987771704 140971570 569749068 110114012 325087181 390408985 715570024 652109634 939156275 828364226 851399946 534363870 541618987 100231193 957748547 780087719 977946605 597191050 809616111 313943220 684368304 973819050 988748056 167122132 286056885 857472142 883277013 760716653 808288447 293467247 475676286 908492216 978667023 247143180 402795562 25939579 288046214 810043042 900803655 35893056 448674633 475045969 681433095 192164629 536268868 898839336 966419719 589496580 966330449 354826818 469847225 58810943 806107907 308812647 319776560 737691803 749980617 96247787 313561316 538461538 723666597 575627864 989213620 508824370 774780970 368759713 448988336 626429118 920520935 286774680 766562419 640834350 738084230 769384832 956793982 153390466 375015795 358116560 666880946 560992773 948975530 900946036 967359411 618387084 675874243 578857099 786784756 85536677 297912794 34832715 355809603 48019660 907811906 708668543 908343384 916069789 953042984 956137559 969383968 123347284 959215833 421474094 550753976 741941417 769348911 567338012 691496484 97740584 868928760 35732333 356262940 564737831 964270635 912712623 935840613 266927476 562659007 711450134 841232511 673026753 843431258 693596801 946992445 77547281 749746180 707125506 740460421 88870391 965334818 538697359 563709744 738488800 870176080 821017872 954916797 497658068 790693730 114839794 755235434 680090825 988184039 215206959 450022257 416779444 693175985 974557204 975533893 504928368 957703927 724761035 748595944 874599140 918461591 479337101 579277856 675802395 803763665 160550061 516856798 155500259 894222306 43818035 851612182 140546419 374571901 464087866 564307014 952007836 991959043 459418317 649124325 836206907 905788166 10923137 666392859 731756767 799125442 665051209 711810130 829253045 840565152 691792606 757635557 235680802 850615559 426433422 784601960 335494826 995350863 337216769 634659722 906075495 928909881 83913698 625660610 33946969 90841777 17959870 658663418 776029811 949155757 890446185 960283274 794745845 886466423 820120133 902276428 572912007 737856400 376035721 387186561 143662751 778670733 146247012 564112917 578345149 856001747 632080466 893631882 920260134 971557464 271960641 470373733 81044551 339907979 247026502 317662066 691725875 983616450 889907632 916767213 76769513 449596868 721859593 884806539 970854439 971932453 382661092 924166536 847070336 928740937 382762683 407722805 864261780 907085732 407093774 982731109 164621837 403242871 197607913 887182349 112576852 317155309 781950940 982752393 530868298 818783770 102398414 509183839 8707175 797649084 559741602 683926619 276194040 296543693 441097994 576093136 486792465 953902618 393794870 928814606 968678802 970071484 417089223 701679086 298540726 370649709 238368365 864528417 922984090 959885625 419553811 782565011 812451461 884014041 532196634 982274866 309692575 389405465 54717892 816151687 979811227 997894903 635075063 709552195 711152122 810129108 720532274 963114159 564258006 904005605 709097980 838333307 156214870 446176301 393973646 866323555 199565382 276643456 160413904 894481267 410323825 733868797 851038531 947040952 630451568 799745357 765386176 817971781 232928367 773361338 202433891 878003409 353421201 420345762 714811466 945853900 506526212 658021993 986274577 997321225 866992525 883235717 42541578 684954351 546882879 802173531 721953086 736743966 164592960 536224578 420668487 970033769 57581539 927816866 610176262 728624106 606780564 955810768 692961243 982266061 401658218 989628711 312541099 978335373 634435335 750710387 217201609 342007286 77965946 813258015 512395642 910270975 413340469 553238146 127273951 205621573 340403315 491705681 485071985 734225991 817975031 970860272 297689127 967442816 985437660 991629504 600355428 819738409 629804633 671770702 437809878 662003374 476570859 774807582 621314179 774553726 222061649 759033167 467391445 901442076 722416346 915452860 735432198 850979220 564061780 817115688 204402523 641137845 753154051 887576329 846616744 865567930 6593188 367752858 896786498 968628141 658469211 678036452 456385656 509747044 945629019 984547790 219818839 228784412 772355156 889391198 110262990 991417612 28225585 497631630 67544553 638761216 660924554 838473154 480909700 940545281 245045829 368974745 617292774 995885494 201984810 260777674 21350867 235409105 418395691 965188141 188867399 713101749 878123074 898640581 440183134 939919669 483819098 839637504 222648989 705416109 528193106 549711397 595276952 980123141 609731897 933773097 73767687 588553201 737129935 952256590 283597214 319656366 691702110 984488900 741016571 811941201 983458952 989944502 540254574 972600959 128788344 792129223 466219636 705799113 563511537 804007552 199660944 478060452 739628493 898572856 923837657 953699131 767027149 822265321 802546030 965328924 935356503 940742025 583668130 835198527 517801162 837180929 42478536 580201852 883777856 991054490 908912778 997517238 911091090 998801750 812581928 825401897 179490003 651210367 576770550 641035641 454387979 540853991 565942351 704621525 83694442 150040960 344176573 370770326 826865747 984861421 876879655 888318679 82973203 333647638 435199470 773247425 485115516 682808752 28777961 851757260 932720520 937581107 77207098 813941474 225011153 604477986 453276510 528011604 505754473 555471816 311712228 945840451 872369603 991444519 548261877 995608666 21050594 230712753 349364977 755343000 51766820 576995017 125143349 258304088 112376499 925981395 290207662 982993791 396758957 627823578 463117559 556584400 686017944 938956821 753732832 829650700 405748695 578901129 603748328 922656018 224389418 955309738 11915571 437955368 639233910 733027667 426484167 702186043 310138913 751052672 778139389 985461973 722632818 820453558 881018533 981436324 448089710 500567548 180584248 692607450 590672326 859767037 166780897 902489774 168071281 784073702 120404719 841472832 552948443 600899294 551491544 938387292 73125316 962629676 590210091 742176081 616112944 928981237 62456876 905049559 577662869 901433772 277931508 420818237 335256946 850958511 15449233 788312178 764792775 874359113 187642659 468490474 841013657 886558488 483647621 924035687 753065308 823023601 598737059 605739092 487152229 684149303 276562267 553403555 669658979 727748448 464678799 611424403 632861207 980336457 481858343 940300200 34332612 241842363 148116507 779413597 804953982 842027753 359267137 847089233 830524263 836987054 960146812 993765218 461759739 947155101 579821086 847640661 122511116 775897230 88825402 545005832 888698506 981939068 380244690 720123042 291728512 623495371 921705142 970936624 156883840 975856686 85318780 576345858 964133372 986437130 49526442 159771412 43627147 621306166 623164298 752129768 228471395 870934565 494331935 606802812 323428924 835188943 100989600 812253750 313818564 586609079 289999531 449315498 551265477 593301833 458733655 628516613 950530452 993097760 246824796 532011207 176661392 394648442 288204828 816372557 884325827 904156302 676017226 844495284 416818216 761790918 368595870 410912607 589494112 802378441 13004665 28337163 693975042 716904015 356482118 566450470 198948404 224985404 548837575 863197248 954139868 993739672 754666476 861326690 883412720 975830720 801200118 919782024 954176473 986539730 751053133 880718431 815099883 996473131 582338830 946280321 971970796 974749858 263071149 413611023 73779563 856447732 80945156 955814104 546673326 732400499 553010710 982926421 628250425 637943655 774750378 955417293 949115794 962324128 524586735 688134685 552126434 932617656 7791758 934223136 510956727 956865059 61072026 305634168 617714246 916958215 108943789 538142614 513122564 533880110 720281739 962745398 676875145 911083866 287347073 319769685 679017148 741687296 808709331 985873144 464258125 928402268 149695765 955547018 760769773 921743729 671313486 956481652 783131526 924779574 169967151 524540243 867567535 952509857 1983789 690408739 152436485 473103037 622214474 849801149 756914082 886524991 452828136 753651955 452231402 700554737 919253017 925357386 84562292 452580571 413652115 504742893 7753978 364365050 254471704 891337191 118417380 449471529 997116600 999321927 587736352 930790151 303506298 320992187 337925616 996878339 124518642 770163015 903928254 925341652 401950966 814436821 581470942 995699953 643796786 884168560 480016044 828380248 402959505 541134191 595913046 765357530 437895854 573291268 800783967 836614741 645685576 812127488 68736899 633694642 688078416 949412751 161430586 349688156 809149803 835998064 117014077 747364236 917459692 936924981 328516145 434114405 190982977 340832439 943841532 947161880 35293773 902590977 529115937 967581165 99577436 170174245 245493167 258057162 285908995 358477944 75502659 847264036 617937899 716539337 880561102 929216266 510073294 532216170 384631602 573165167 277944200 492177799 752470861 940456834 814803543 820808899 997880155 998983510 91154818 970489352 361810560 580415889 24410116 147108273 457680989 927092629 874181378 875600012 172498394 753324577 870006308 913060003 490575146 760538453 454618333 932062892 899072097 945949152 622094285 761952466 682525827 998817574 659744659 804033698 387431005 707758858 339872114 485922370 715429448 973188538 729319152 736176429 294312485 953808947 609566317 648073147 304368773 433811360 76894687 188290384 502498560 656082126 548868855 824393575 429770660 821772386 273904050 711281155 988398717 998578065 195378525 441111184 343979270 666086045 232010820 846879945 162347938 303380715 396340483 652158788 138537148 494759951 433004260 765795468 12300019 60131992 142876710 273960091 385413211 490303428 332274765 729713308 112143984 739506834 28993724 915529096 660964983 913606149 267953283 804651754 799513838 924118504 130149370 871918997 874104000 876891608 585679385 668671308 272528328 534085859 190426817 458463391 174475234 502829097 651814263 839315439 213005580 342873262 307254792 609097245 429958646 638192385 355381023 574588046 767381959 904738163 678159717 959485286 658053995 807536485 976102088 976473089 166063734 789552116 224137346 874993072 618136950 751762395 501482740 712687143 300532852 555041660 856405279 923503204 362312827 776673752 107637434 980853346 351985991 683874638 121902858 296268403 704112381 947484882 451249864 879844437 208313120 987140086 832797179 989533892 858448510 884852907 74810513 496000359 649128849 710491132 212944629 935400260 365183726 843491847 638458030 946268793 548474188 866259862 146740840 178464502 697035143 705772829 804964809 895516596 835163340 983628885 53297866 645040957 321010112 851627322 615995242 913928466 383449596 670563384 128246841 148822138 797491855 893628368 699006463 919305328 403281699 833715519 756664615 942474120 705947557 825567012 118980604 763036842 649121064 754841746 117955587 705791359 348919425 622548206 936342816 943566386 87006157 528506140 740103625 858407729 291244876 637837825 73882119 218140199 536983508 973211367 185745044 322519074 557105975 716608432 515687693 833419421 953782427 971369023 893080085 940014700 288593419 959615040 969640889 995533416 286851360 590080155 599352449 744594711 504378210 928986980 492680743 971092497 711857797 891425134 111223534 157623161 869942513 953243737 156759521 220205538 480730270 807197053 276534930 686898104 714549618 942458966 504455250 556931052 390196597 453214896 217951969 805321519 332628504 520607454 749467900 869271492 248995829 925847233 945317120 959771265 458308991 667979981 65582100 367037579 176377372 493491827 337926545 620722674 174171849 852285991 164551578 953714753 919042880 925570507 887694859 888990878 857719113 880352464 771974038 942879890 416389490 898124803 207012432 525555905 555247482 886432898 13838195 835106874 359258676 856191994 517861575 844565261 156719195 866930194 383893058 898202391 50688340 738557019 934007113 993388155 267656262 558040609 129646521 130762329 982794248 984318007 991287475 997477804 39180136 555200881 702712269 858590910 760698131 936002381 520126156 827493592 919987921 935398432 676741894 991240567 566820973 867826389 576557881 958651871 59884388 386043769 229075044 873354723 10632203 250581484 173884118 231504069 267523616 371607463 616879054 996438252 150167565 713153264 615828465 720936179 259343433 703902956 789975921 826814099 208662737 723684989 629105022 925336943 586146380 801707507 128406749 655954868 549775601 722782603 496583348 602721156 892270768 899640344 104340834 406868737 775323096 893607678 70773327 699870070 301877539 360130865 78037262 345177194 412091142 653781539 463874947 890236762 714473185 864048328 261133164 767893936 799143467 956562097 852594648 888024986 301686743 516239760 139973079 543595260 230021022 936115438 804593529 890977625 399273929 962016316 982945107 994905686 938496582 965807572 953156568 997952557 131264262 596141969 777323007 976828736 394647759 792286260 850646240 918242405 541001001 969984453 647388796 851811111 64535152 907607852 692864526 774220402 164336856 239783500 139660702 411209083 779005180 870633110 278263838 695952697 819089352 854717402 927092218 931144171 962131992 995826691 38102555 815543599 965854769 990523703 168370638 383706588 284672398 375903491 862506909 987987490 612657829 959756717 735060364 822919304 534844311 819647658 249476750 848817741 361668921 886903237 30853296 931822325 450970463 529483445 452910211 696277200 870374097 880848549 347273774 860324976 192418275 288477825 6444772 407363284 491305073 850555784 298633066 577606385 614329424 893429965 725792665 926821774 36699252 106408579 610672235 872322150 535366450 828110500 215032803 301062123 455515098 555311667 777700860 941279641 958704576 976133990 774083879 989845863 488674730 495302887 454195367 997321857 628709454 847069614 899168226 972379213 86951425 786736987 685057693 741819569 630958880 950797647 199452342 418999106 769583926 907268971 234629864 929093604 899761127 936452510 492659559 919144993 757629604 989978276 602469422 936790742 751459914 943779601 422834373 563623686 465678719 787046499 930242796 971400606 151424209 260815168 798659433 878923589 270579492 526884126 915051522 951225916 572440870 804467517 674396026 710778089 417396798 924353170 653341397 887968737 794681319 996154493 960832412 966073085 588491096 619502555 267104490 821468356 287263743 621899789 650267161 840318159 142146446 847587706 932119880 954222909 598050972 642376904 755955326 783494137 74091227 354888151 686331696 764681266 418696167 606205040 178666264 508872894 778290028 811099058 132534341 942453625 807615198 913258917 6209197 734068270 983673618 997978588 905062643 938856167 869422316 937763945 268320519 449469554 397086359 900719292 210348792 270104833 1447886 132388036 397751575 909335017 104961651 393261754 925248185 961305071 254206130 359992780 894035958 934624383 34560122 121869471 149697211 632113796 988610277 997093527 94233435 929460435 889364387 905069058 22307021 261674515 455049843 850556531 462112621 750130403 980329025 986141617 692067523 918295029 737408577 868126050 246908220 402859620 87501015 342163585 820849997 840951823 894718773 895561890 796274085 941169923 430678687 951706799 241871191 747549843 509665292 811449669 609523296 820097384 812940299 989855851 68249869 507029606 33113225 703638517 932220364 977820910 308799579 688447316 556556397 904120455 735342484 739474427 774022484 872705150 204248160 572555574 710955159 734317351 655647565 819751754 771093155 915218112 498751084 644975648 639287623 799500045 265432091 623619108 260892225 397394287 341647200 922248675 647152390 815586989 992374795 996316717 787033945 965337298 163613419 348309975 1856806 34159872 501667179 805920019 206697495 390850487 792590999 820049778 50494608 437622005 871117811 880774215 881526501 917282950 388718398 522708604 461451601 586420290 204559267 382003315 824475745 864211687 788563929 812934168 588443737 957362302 226990372 455860841 354421436 530827475 512694450 599529516 268060572 795866794 997326358 998504519 973116523 987130690 511807832 940565209 944552030 972117688 612299837 938624768 932753271 978457136 43832416 187018959 642643855 867144189 239799132 908191816 932853314 960345553 824112450 997003831 195725947 964777442 808908964 942411153 661805181 866578534 708422458 743210869 809852250 974069956 214785936 564926355 682936907 777968742 269583549 794329537 511200016 903438438 242818512 291887771 43825828 854290092 302547528 557138618 690631259 908387424 46053547 162664721 292978377 814066724 238330461 653519870 719119286 755375258 220873376 496061994 962952548 990969303 690274474 927847655 384509367 871788598 88310413 182599202 922061704 959862478 537419382 979299438 203514059 452492379 692007704 916941768 497010316 786440521 767852377 971287010 708106611 831654862 504200899 786988251 156824000 663150527 599382675 724332291 815460564 926712079 681376351 741668782 337636264 684599516 307142641 328909342 895547472 900610997 456832926 915272223 97497243 902918339 790406655 878318410 862224273 908061723 232737 794564674 339576310 814786511 143653869 709338234 370677666 762139402 648876859 746572267 298662688 388733658 573786355 689692720 579845474 913664514 205111218 822011911 578262423 839977368 460316025 600750742 709457040 929290845 705768452 719318495 776282815 969973591 386912953 802080973 251035675 707121462 252841077 330610348 883872785 951095932 748983954 786799760 328096583 904475759 189103083 714452778 804901360 873450559 372929909 799187214 263938887 853572253 514289925 682985569 732739228 779199818 763259443 853382341 342096352 831160334 27143631 959610866 524559727 627243497 165931079 873506221 653479270 942695744 690756234 894570167 560860088 637408443 727586620 913275431 128830192 920461034 35124956 356722726 412964056 910590494 297836564 564508653 150737709 857988079 296250399 764306021 422185901 930987439 576839553 614950259 669382220 839766065 959779000 975879456 973036075 975220006 409200734 631218682 646022596 936566571 405799043 576131377 422209625 501493621 725127391 925181133 729083069 849322523 406705914 468502482 697979099 722657347 447481274 550485048 106224150 349211379 164224905 206645989 78678431 433261912 13508912 65756381 350641866 671362741 979954443 991951390 480963912 707043548 747442531 863620750 567164965 872876784 117581318 996377208 927396687 940647193 883273029 978190988 186529079 358073725 199379764 343110412 948846094 968747256 249328315 621788009 854039091 907075753 124232476 944767520 377545772 387625837 570496103 576221284 37736642 67159131 287940482 425727241 954647023 964415213 579302707 647743925 596198864 684909055 738952890 857283370 569679808 686314891 890007411 899238742 549631868 988685332 670184386 930250494 702764429 984725905 445136950 762111010 101440113 456989200 784517488 961479238 789678634 891418857 877713549 929413117 996241337 999037752 688487095 889964429 325609366 633340814 159973299 236117936 903711964 960338379 423846212 585602432 685852807 731233691 425191607 949899614 727976514 778425763 331059823 482227053 829551144 886473084 537710993 697037800 908439847 945500760 308434110 468917369 732191601 745794354 887428487 938773125 201583548 711329713 169046916 524726439 775440552 940870765 570716352 732511435 969261278 977171678 647586985 695469344 234946056 555323907 353329905 367809263 519178307 699128759 216527313 862384824 249035863 367298609 963866907 967855646 192050902 405240788 968676507 984766817 714163084 970093647 164730462 430153828 588256904 917980313 227947329 299229104 550401395 963886506 921072806 941082306 741226103 864757001 343862914 850962001 494479712 549466616 159064683 174969862 418792979 830429078 970475473 992917831 41538972 559518143 618227107 858114518 753788757 943512507 88195522 156178456 476835827 851848064 290085410 731124305 449362926 622697987 27205063 341972392 258799709 731146358 817606013 915048573 361069409 913475539 743497635 854642289 117980529 225726415 541729077 889604575 978751333 996588201 877409658 983795603 41201064 928283520 97449794 595187064 367185315 625735868 784835042 887661833 730339816 812637557 586670020 613532242 198281857 965238064 683242032 781139611 496272427 902653320 958687503 983134635 777359284 942280957 543310623 833254090 675212323 796659094 71969931 677824416 50978171 458726459 582072737 724659416 44407538 814090176 306736508 383997459 78106534 92094999 795033259 971523186 253066493 901424263 371845280 584150741 190253425 667197935 622079871 760748199 785988287 918076498 339930878 526128827 595686664 901052012 826208544 856032279 550042637 801955002 305009008 326154094 637916059 883965994 308239919 341743863 727027537 728736933 707487077 825747253 165028631 165703393 81665372 790334243 637855585 713608308 912655049 944539397 774637732 793282686 283385323 446937197 330024183 558466770 15872280 734222916 817015403 996164184 561417498 862225989 128956524 964476468 736727413 982583407 18559619 633385883 749508 226178936 146665252 191951664 844466885 990972894 34690851 599311918 718019651 888847586 289421617 872884881 646547768 763025163 247156616 789850611 890643480 892732086 933600002 989906665 709957015 723636309 581792070 884574687 942021659 996216226 460554814 500734029 436539930 861374349 30181561 150862012 485748610 904581358 94570353 244173279 137285072 698839375 796327965 902981421 439431302 899181964 529134134 940828501 616755609 940426630 830470992 968314841 518671145 775115637 93960150 871393366 821919299 995468839 295433886 862160827 187472987 355489415 570842556 634102495 721300939 907514291 230371659 715959820 703960723 907755533 81389623 692110872 724204669 772706254 446660170 527762971 589854600 667202605 729296561 765993265 775274229 843231912 854859289 880113364 586301216 954897071 806008487 859402383 758758940 997175187 544460221 912516357 765149218 869733961 21602261 165830686 203051348 721324727 297823323 613407199 121634926 623415292 166733582 800120437 435997683 699518224 454936737 481742469 7516375 307478286 381818445 811588961 374119576 497790921 565456734 893219995 559321153 923884164 207230953 911378444 144471509 483965639 597960443 822801517 209814688 507156469 867034396 897438768 45711221 685294697 763125283 823066585 690172614 945035321 850233741 937834209 316354244 933405839 892130230 995321677 409852680 656782133 666851729 879336967 288267806 603800039 281950311 542849199 138350172 477104280 428183337 950618529 390576845 434883670 408081453 907062355 753278365 758965194 988326992 989550236 163825333 630982112 855312014 979012738 884338446 904212844 711632417 805957556 739905037 919593394 448327045 508561713 128522336 921441412 257920366 826355877 642776789 698757779 263722850 416373390 533701009 967755699 255707046 602662576 313590146 431933055 826205754 927494374 616808513 639552267 526237866 676607183 980146418 991799381 790585432 929493412 847577603 852319743 242298792 990014456 930879353 931690377 885610930 930315239 476899838 745302970 139998959 630592480 528843773 945723104 804045494 960198502 452331252 928175631 181805223 946244513 551506261 885290001 380173838 909183896 905721394 923222783 224718882 470104275 993571645 999291745 758032602 853637314 796857425 941039940 400370137 841057297 401446882 488826166 514009442 800343946 624759499 720704170 6020814 457916758 350599630 454844615 89964243 941473430 168255623 240807351 802374647 987290977 987984947 989814034 933592429 938507653 298746383 421260813 377330989 529859291 80428684 648094303 823622300 910638307 177956316 560047449 464869954 860441145 32799092 175965913 753189396 847727564 519045176 632507540 562762079 654262179 863795778 905788287 11371253 712561046 883197240 919183208 145388786 941977596 978586029 993366753 184454176 520616441 175442129 540840575 486903856 828580692 971171269 980412797 848687142 938154461 259174584 406628399 327715345 391095735 765307529 968593350 179554384 999281251 44231574 93961618 409561075 441643855 602752538 997102752 589006919 638226751 776425430 946295863 654683982 915588728 65785149 406112168 762336273 982713523 31066156 665370095 404270358 783776109 634496662 881402821 11110499 25677202 432162874 761280184 726065160 841716052 614092313 789367706 644724011 785071211 4687374 223612879 366607006 688544521 339361875 409845502 561288830 769375476 250510944 438234475 31290370 538250251 399306977 465219238 278364877 973062374 291830356 430445504 292293112 541437714 950470539 986645010 30934984 713125721 230585297 440073351 411273733 640519910 497971565 887214768 602587005 979266059 44608937 330689612 495189390 857282082 555188629 582483505 904574193 967605468 255553599 430255125 64953996 852356630 53037326 951062380 511156089 749679682 359403681 536867556 736393703 890866743 256543914 913486844 462227655 533908322 659916307 875713432 953560289 968569190 790456248 826205513 866342108 874592018 712580265 850000776 217990912 626524030 840886276 962413861 214988710 501044590 478378064 897312771 777714257 936048769 395180605 979974548 876324295 906377425 284664328 703848636 407400780 647291035 145500277 337440455 730019332 804743250 135521023 650549417 828918352 962309705 955378559 985462632 419253655 616539256 612319569 829238373 584677408 839587315 738665045 831330494 285561570 488792628 252103026 724178188 799718288 883627434 830602824 994276603 278119953 480471141 685410737 754844943 174872494 314214781 579533348 787951942 181216115 819119498 624149137 625794209 73954233 852619632 747831037 799528268 838677248 894443764 454690816 762243145 68884969 341860980 12818023 699546391 347150186 894002293 429429255 986006290 947340310 994830422 337325813 775028620 465544920 992736181 875772409 889925716 385908401 774895456 935119593 990969361 823309161 970918443 404054102 702783184 370148181 938498990 692843144 705826015 250465647 325768669 651884459 889658087 46344673 522294060 67453625 402877488 909455525 956182273 587122869 875799360 401887436 833538124 346624196 777619964 457503696 485910340 533607249 776773450 275789374 885680270 86645241 813107146 106231295 170078912 707133200 886034489 769735819 774693800 795013944 901182437 403185958 909360806 944041281 981136927 295717250 321084062 418732915 527626333 871460355 877346829 34710636 85211782 323426877 791864719 53310883 319353046 224518540 369014804 716612266 962658808 266406919 936467742 49997104 516379346 250496331 318668465 634827545 889599510 451020807 811072957 433518173 892337203 975538891 997809476 281072847 525999012 509579795 737446721 411955 882965958 113777391 269740205 753947884 868511679 276899841 420496941 208505502 536311709 906847055 933257666 386019607 477425070 699185213 705841089 65454999 645038307 940290233 988904592 292906724 428255055 34138803 571000369 713905793 932865445 824752058 994859073 59473679 309594040 326837952 909926550 964254240 986546704 267497460 450380018 265139118 826869411 712590998 944399275 546609327 561340626 710183127 744850591 937931194 965035275 564706505 910257850 271807649 597310078 464450526 638508666 334196504 703661497 311440352 862630900 798557400 843789404 280222948 658527237 197189641 905345317 378356753 389370069 122954539 536746001 146016071 223383076 553211628 560278836 399846911 958148277 744898279 810791861 14745758 206521371 24683798 420517238 268292086 623893691 690860361 904732713 455181895 855297100 538986227 708394865 864320331 967775326 576633730 812727481 184632659 924955408 240174999 344086670 790616270 884830597 428301181 758783660 545379175 857367463 815112875 878367730 354811519 796686760 672909934 967294532 214923061 275314435 42902069 884904357 607345674 912298630 978495539 993884572 698692149 854233181 126056665 493269882 238673041 848161888 57559366 788162535 67881487 922898629 66263816 122865429 10175286 21497232 559569270 767213220 178241851 953002823 263062902 471786191 362063986 407220975 531587919 972459667 630320164 932902436 245663623 598593269 866832084 955069424 973436154 978788848 31015910 655291469 446160828 963165314 757708802 807770241 413273268 968994719 980506109 995948426 196629520 470271854 612312424 710956286 31659191 952327732 228955713 801888205 580489056 902771605 976082552 998200716 59967589 936236089 977112104 979145634 217318465 404510761 329984573 905256973 933057367 954234731 193975350 449805570 112509890 885008214 968149094 969476543 417803636 867416308 409912469 706648375 579716115 703583229 568070443 985650814 298915637 697636067 744312093 989436456 376468171 473091299 239280942 822893914 932656020 940012078 607049104 940876399 580716101 708342544 819682221 834234413 819200164 845828590 112570843 705372902 708006279 766094690 873752725 915138941 437123218 455326160 384186325 573795904 641582422 829632576 625277391 827510375 724957624 971004641 490696172 502097196 637878232 893061930 165307000 249339160 913628646 964174996 444445535 723836206 440510662 948087528 975359357 990130701 944201221 978300056 828386267 988959103 542493626 668987192 71485490 554392944 43147219 988982314 551446868 780309797 527433604 909250899 724441093 755630343 491601167 958715061 438503950 769066883 692278716 815009424 800742791 820440221 209512584 508393866 197721746 547270719 475412393 915108626 572110981 887833597 291470955 521604371 766338503 998620755 957470768 991131446 28673738 696678253 632569942 898467118 49119931 284139102 818860312 968423629 532308691 733943513 504614931 756913865 257059976 789486551 309095773 753815705 24426506 356030574 772944214 952584944 440037743 826632425 815188453 971592050 163395702 883528523 334637355 680530973 221490341 380041651 929431711 979040548 48598427 279008739 65954471 429255091 540597048 599394428 565928951 687295537 557573381 575839409 332027295 436033858 921541872 972066018 929460750 936800514 637605409 849188850 666749786 867888056 886629527 927652167 527482358 638021599 504910178 981938868 150225069 945512223 35837433 834988688 277102508 651256425 34728865 499328893 216984609 925927207 956368968 994723201 851403878 861658207 826607706 877815217 306061886 890299434 553473305 623093300 392902739 985610547 397975492 562620196 943359609 957536945 874425207 900168200 507240896 551978655 499358980 896233986 664724416 727432405 427483244 640345197 943823312 964616406 151212825 803310881 652348456 656388899 109195040 990925047 58258224 583939644 113907670 561149838 870317861 896062244 115590843 715674330 805218263 819482205 162143478 510295134 297861039 658931422 163559198 982087241 562349862 683982035 912289448 995651257 356078356 587827147 902417112 959149404 665734051 716961773 770104772 974695765 740646357 990339263 376010396 714718453 881983093 905140569 869231652 936981355 793918678 959209178 778531936 970163520 762193876 822183258 883284938 988914622 136216607 185949770 198544193 485945634 197832538 897674643 962825696 973169661 734778796 937366612 185324101 542995931 784942211 870630106 989592757 990324917 425458241 626839335 289550757 840525316 336125187 788201241 505809092 612907093 926438242 938520597 424609779 931184501 433360940 664130534 170486168 689599606 136918709 514004441 669173325 740132893 431259991 843927791 707081205 812537414 592330849 743570045 838839998 964875506 890301045 911222733 809165553 886989284 643522385 929358482 121092746 227283738 702247858 951860693 16170632 620600503 107089465 126667907 54769784 525982449 988798957 996491959 243499859 265828588 893344110 970478375 802427571 977163830 733630471 991818441 268993190 813268417 511364332 901163991 412732496 474632582 583312862 728458328 507599468 696687391 255730706 461617463 936174594 957129000 162921815 359605869 438310671 681743099 790743198 990690956 153597893 935281418 574502550 916212142 959513717 977230462 68593231 183258615 742379134 921692020 299331668 620437971 979063764 990018700 231268368 607611262 970463077 983301681 318873079 449558510 33099572 425090599 106816172 542043834 325294321 545606709 69397847 709330048 789970526 892326163 66274010 256857979 894603757 908595041 208177569 787795119 384393387 598784186 82754530 885440118 251907604 770786115 476183702 974463778 977055369 981515235 501538074 636808657 504074618 568873609 326658740 376729676 217606185 747366687 11135033 743073553 15342155 522606122 582207136 614794909 485993030 553816137 276468388 840618025 457230183 933175609 887640298 968581937 217709844 882940687 968137197 972856998 631916599 783368085 677192347 952782902 784920210 861121544 193793980 217980613 595128112 598814785 246359 359685216 23573777 955737235 369540093 556026472 961534418 988647423 891252538 921561356 182889791 370357329 926624520 935009026 701288382 894313036 427219267 681703283 823003291 940526950 849158110 905354671 820249776 968354544 345435617 499874329 634544190 864936596 776820 794895422 958033426 976954172 939572487 943381922 812868166 887358716 8722168 567895206 848063814 932295473 967931479 981465562 558980827 706761864 87483071 752360381 678874590 833732895 166748829 208226068 842868661 910587099 409536981 480563028 644277117 737972585 793636785 831492631 719037337 724009733 840603755 858937350 394521059 820112645 420522994 864152662 688068291 999050033 449694557 450612369 723194334 833569799 356268680 362963312 829441690 914041336 202642162 262109298 224200639 692062913 527616943 586405255 588647742 780143160 45319186 328358754 756924633 868840027 901762800 950780546 582303620 610153858 767433111 975256723 797872780 994614092 496340248 567688599 959152318 961383234 403358630 414785883 739888391 757069851 185718571 958760986 18097520 149588271 555136499 644427819 752080090 827255459 504479045 643988783 245852583 914942416 802832267 836468289 114576606 409909007 664250716 689777730 614895518 782574547 735804213 915209141 719672793 888514301 324748863 587665431 960516120 991128313 111657611 385332172 524491279 881989216 312719995 343729084 182013705 471997065 714563739 720973601 224298060 235522022 270013583 405463319 133863805 790941400 582455691 873893160 713630406 826167129 748486986 794255450 674814831 988284317 351767188 869782359 76620243 257253141 671950647 803252272 178404842 435050901 529365247 830240412 658121158 939330632 106520736 226079100 506694905 619233266 44714069 374016757 830043961 844391098 277385115 709882703 723086756 894164253 578068560 601636777 394407485 894511632 288590645 576129065 407347076 992740760 506996130 803584472 497328237 577243318 63013853 871056229 145564718 828764840 878926733 933957853 41979287 280415377 885851715 929661714 87683401 189937236 150741530 431109113 137329827 881196011 528997264 777022197 668467340 682777638 639244951 644267774 815275835 961427895 6633755 100621292 218251832 667412973 251898029 485680214 416878807 925922480 186467667 631528513 841664417 867809657 889167264 983611627 108520200 141831673 245275526 743031350 460088870 508367638 673719078 779682300 57907736 227088023 731315973 796639624 91298563 860498312 774817524 844102160 948419489 981530638 380794651 450134360 278750457 628378323 624980274 650790272 21233547 804397730 114797920 355034026 269204435 482496499 407045711 607796221 878966603 994863490 930363433 981354612 272195344 477137630 255952950 570386213 892176059 923299873 189592301 708482610 197173535 342487565 966724443 992275532 642619991 691862895 195765913 683515534 709485624 958181035 583058262 906062909 939418157 954060673 779101778 840413804 61017394 522623228 616547134 940832486 846858487 849775694 338631632 389614291 652159852 802756108 507779068 789548954 393477450 524013707 421053486 726247475 713867429 834559444 185829723 568874676 869584438 869878968 842333204 923524442 547890769 773136362 664368292 749239452 917383702 931257048 207110265 214798181 317410518 338330081 137967036 947749395 374452824 795359757 548214238 767928921 477311902 580243008 307050317 944337898 985738515 990824650 599997723 831008134 768197353 935941997 203521331 267301949 252750060 483096132 764671848 786655058 658810834 696660837 876849747 890829297 132464394 997331377 321469740 600764030 271216333 747583147 601562757 612338147 761756717 776551067 156914882 649605396 986059366 998533342 321935400 543957046 585376676 921749325 709782675 934026680 989543360 996990351 883748572 890761611 674929319 831601099 235937625 789052750 236036603 990563167 728641770 936308988 908831638 914784569 761715557 906970198 290749660 915991771 47518296 976899888 359461615 978892065 960219836 968649822 379800747 650079234 717585181 853926683 112086549 982844811 13096077 587753973 498758649 768767391 728427764 999170620 302774953 666560001 253908168 554212347 832581604 849471348 167145008 215631073 295339722 930459470 311679183 864650675 181103476 443098954 38028176 612435280 24089089 338691749 181604243 344659205 425120223 782838008 317387008 334488209 516351281 736082288 958587378 960624419 624066972 729139182 406520134 623910793 494047007 518377934 858787382 914007662 145086233 438905996 39705072 838859461 612612088 681452532 850995261 857680998 403963890 692334644 378313668 441292597 707003459 905439829 886540754 940552128 459564302 995231382 951928453 969517606 692203030 938981045 459319302 512419461 592150862 959020420 533707008 687607231 903625503 937956250 64650358 289445491 977653393 978731486 781682659 980367134 612473522 852657039 479831542 719688946 994619283 995771360 750686227 796498228 926316253 939845458 754491659 908148870 554475014 931034383 339027458 814204878 643311366 866184951 432450768 977960609 801822027 848099971 830137352 978030134 538979979 547724210 342505732 834763845 565121384 694969094 520031356 690602620 633934800 862090872 718903808 985989636 542904915 888276944 352391762 945397353 280677609 329641142 927004141 943787698 739782742 991996301 430625067 747974487 779564975 979662090 690945744 863931655 107610889 800984347 721777560 794376644 478744522 840843000 434988600 911752882 736184710 797894030 434929655 846598933 605163113 992805489 841903063 989479051 887666837 989884103 786354368 933925713 206632041 216055324 980596684 998282410 987804630 994526077 809309376 954523934 365225350 792473760 392312212 584072460 873864020 995623760 668269520 771597900 181383126 838608161 726312234 942602277 418638068 930912475 699900995 704695415 746919319 830736125 147791195 815426853 264375812 784465227 453441415 486084576 156808440 788004277 928408965 980790279 697842924 954658659 978187308 993523065 681798271 860487138 342940792 567483601 57440034 795285551 22840612 839972695 509689643 550799615 109573613 641937904 568837296 947638155 893178475 975830854 457133279 826637512 209972814 432097753 24427303 642691884 476770814 693506315 356348299 497690571 493306111 682546701 944368266 974723601 358552292 989112965 264833197 307832315 431255792 893659687 733870572 751070744 165241151 585336177 718197525 742824923 668344077 733974224 88143098 151662881 299541372 596842706 694057551 932084221 315982365 469489629 730477479 906179825 37862161 160804776 759451060 892198673 628233794 945622931 248768203 502515752 373899728 583811098 299545335 567336268 389366748 471543487 483584207 912014445 417331383 812738144 968308178 980866269 265914460 342446625 240647107 562265723 378398205 502153843 428526285 640688546 699880653 958339416 870633044 938191939 698763306 935729133 11529851 998077616 986776602 995314725 72537151 394460250 537803757 749188213 769290997 907912932 145461849 640050525 632960514 640862285 117331892 145446601 532030010 550648904 636913017 983685510 501901309 609443345 494727340 615128141 588551538 779950251 937043105 981132018 594481090 680010239 220257667 244946535 519436730 715866221 878965444 913072984 533372431 807477981 657992285 854317313 1516746 56851125 38023854 536571395 337389057 956551364 191941746 754938460 734621747 785300164 510564564 673108658 275160458 471969765 549329150 729825540 45744879 216183953 528262140 546855615 463049958 491151452 705124542 942041303 152956178 569242049 267828583 437362677 602101264 867257575 790727582 857620160 403380094 417780091 407822058 453760489 4992210 396979752 513158172 779771605 660207089 788747729 214497328 631838317 208358956 269462041 890430984 969547129 508856376 594493461 451859364 818662734 744813445 905134037 97021276 488520869 836101145 964818956 383730111 477375556 844907060 872852807 266047433 621491078 399580753 560333442 455266778 695676027 19860512 668185410 37400195 634726325 134482361 953510422 528676549 733807126 734077794 821996055 518198649 604700104 179995216 379101308 469098037 707294234 335419186 648365012 865888239 993904483 578869852 770246262 263322742 514100276 383652890 676550078 510781550 831120100 183289392 663430119 519497220 713585141 940667797 985078226 716505148 910949427 756597271 938215266 367868016 777770194 773333984 828429294 459325917 680828024 8736944 877537442 435877263 931648052 926640327 984483755 761384018 880209585 60629838 287336212 429889026 589575213 328725683 831700419 606770780 888382309 260699888 922581469 581503739 631160984 363441791 657923426 998872502 999368177 759175300 877740317 164668262 685379445 739117190 992096571 502394059 748268747 979115089 986298802 994400933 998740640 843153629 925390577 65961306 456824387 477878554 546757436 432691643 738008508 509805458 685078215 814822369 966471019 904380261 971637945 427921304 849814314 186999065 692272501 941167937 950903885 744192893 987806026 720270884 872498392 146090 584740385 686331054 878491492 826703244 861196182 817957000 893981188 107508731 784139901 259018022 777438624 123790692 673887811 209869936 308605757 515641338 947386338 115152720 353142516 20041283 936521796 562550357 746651194 586177818 628629693 955278704 977246899 550106041 800899923 728941871 928071126 167683238 770000492 424143482 966572522 314094319 398694960 63847735 774018234 568829138 781946441 151649457 729871916 879720170 938722120 829830019 927885544 26363578 502059354 40052323 454944731 288876722 890674501 217602369 442628982 409598621 955605729 968124603 971495837 31260361 236752759 730308970 898178297 813476568 985126793 486227189 674040233 408284811 762440490 377704679 843911869 562530245 766579432 804568690 875006637 395253585 775837444 820000820 934609277 278540578 524952862 526294801 671129929 692328629 991679905 95645493 274532728 836487450 926677187 708635046 994058664 250743228 572243615 445660660 970107867 610724126 840759479 257093194 509871716 726740191 861726225 621581478 686827248 754531666 853515268 711007644 756350616 211963327 486205271 136826969 443259575 93931539 236485678 514914425 829762192 664610318 828432612 242799581 586648104 935806117 995874989 263393087 329814360 386259066 945888921 653829768 855193575 807881203 975422631 536044293 757109067 433757523 844195977 765996374 784984530 736106723 762859193 979814732 982638455 790179746 811790705 803248891 941588356 442353894 528053668 337082813 813701497 101759195 439484271 426547845 964235394 195694625 462151066 208068130 310748568 972762115 996358923 969263668 977312364 618938980 925651520 101235523 903608998 867528 338825393 212686577 227760584 370420370 629569440 534661592 938757388 342409922 511220071 30764694 549360731 692743709 876645529 711883244 783355905 634961356 919202091 279948680 848111589 218577466 334851592 901851784 905839036 642177547 876665168 882637480 927824979 358694249 849590201 148426195 164114854 485313126 928214628 786066423 819932578 321376744 500981577 96998231 546200735 788282684 924160997 928133270 983310825 225666237 536254577 969629144 975710781 27087359 820415351 288143617 668572879 500405797 769475301 83800043 121611611 616235761 644687169 467286506 766323986 423177100 511133434 263997820 580887958 791907428 989235697 274020537 791598337 729563943 887846759 868295542 976770324 698147421 775357940 393774644 997645488 10126006 948438762 733605613 918569839 297107844 461009722 749505661 859156899 14368118 53188775 630576358 681165609 395211510 396370076 831049052 930159004 740349572 781848662 858336163 995859142 70879045 958759390 244669811 390296785 734683305 745635442 82739410 871705474 144868389 795586409 907558648 990292211 843002192 955871230 284629186 739438298 873754619 979692771 764759706 794217057 531544779 734203216 807207861 835813991 172145188 555868923 310555377 724362173 687542064 733598697 535259603 551321813 534597506 637157279 751825276 975377915 785019162 799022962 978820155 982540857 431583206 604657552 463502095 544356810 456666274 478470059 107979980 875239979 926480100 973030728 552984559 738874722 823693449 916971143 937717308 941599782 543683386 949090702 232975707 909199715 623753959 676469242 913420503 962182629 9565114 468256883 207098972 739094166 658911694 961893409 149723728 988981160 745684011 850179699 823468458 853084787 570527389 688230092 712736118 963728825 853007352 902977347 407813588 416129601 166048718 220942988 425991619 453692328 231665880 948116087 633649262 836095993 617055785 795246616 59107822 371059365 721685769 735423810 905526959 985321031 396232425 756858580 23303064 263585139 498500761 532659628 524534490 755188143 810794422 855645399 70121814 728940444 600590526 788993973 303001909 388526210 497466217 987183144 390414439 760753395 379439070 831726262 670794687 889417973 922235513 988164033 145320162 846244511 293372298 813780129 497894497 517220556 654596988 966632109 832448995 854870603 779510829 921047480 920805664 946962147 638955477 644798651 670750644 747471048 7749214 194889513 384959900 998026376 557732471 743046938 49909041 984417858 287444094 840615997 344248821 397410474 942304453 953539813 646691851 986053240 914883616 987422905 15598390 902727094 363420756 895891454 817999675 825975705 793783926 954850400 209648398 381301470 530810938 645839964 274755768 376092288 434217639 654609297 622386252 764754804 749285636 815069813 934766214 951497459 930278521 962413282 119763643 812491840 913059072 991363690 554923272 810772712 303920575 540500520 881626523 925600025 640933620 902799513 367970033 854886985 353337657 872233788 739398743 977928625 111967760 387189191 279169180 594542455 926456600 953816995 260297921 884249087 631502759 636982930 420943076 657221954 228367754 255244928 446566447 829412670 824230653 905277699 487845027 581785408 644182321 831290734 562504474 601931817 177847906 427616785 481177261 692185899 986228700 991548070 49049650 269775320 757945497 904674758 575941234 591353899 375567939 650236081 886919731 977775111 783880079 901753789 897282773 955501140 581745520 587135046 905291840 977791561 40512968 114038027 75992070 560840503 41533424 870985719 320435027 727078514 530312974 868710133 358786552 438375793 196742463 324549533 246603186 963411281 878080140 945505448 593355759 912103130 327181795 800525309 865673438 883312417 865241089 932648579 120993666 725520240 227589670 797540022 556341454 572625428 271961856 499824808 221034831 853023876 386496999 986631085 84282470 317681190 762772349 898505135 892839851 901674924 108500705 114019253 411170414 667440636 936117296 972100959 903113292 947350115 774050080 908127021 488810135 579922288 86209953 921534120 77291383 304435312 813591255 865030982 176877620 561219926 879258514 925593134 58939434 983423620 463591627 840711194 93329113 107001423 183434333 216272512 34110388 807754689 30418399 120073202 790363353 868184501 162531872 677743405 636751294 852456322 467561172 494900445 154695239 453959502 433364707 449409330 663247969 855950365 458454073 788485606 250451198 322390159 472450202 598304182 386885345 935082198 809290932 992380565 257943302 839415960 906507421 949139517 789051632 940458095 308273164 643464079 279075047 954397486 478003101 928229274 664554306 854604695 538741776 882556706 124907659 647514773 622934910 744378360 304025519 392600595 19660135 333723745 307832696 833516911 128049128 650906274 477609325 876372244 856553662 954484349 168959965 277592224 114558772 630372533 81707919 635583552 538040562 575825518 959498002 975860182 789907712 996988451 791766492 966339067 438625974 980165286 712092764 737148436 79567844 623861285 143383241 780685215 542774307 976119480 6552804 148670967 805109523 880845669 645855283 899075303 630084620 991617735 507774885 847915719 490287395 744423799 755128114 898851716 708859511 796692566 432319677 726612429 974672955 990693872 6855275 54944579 709894880 775785118 33252484 165890634 720625342 817636574 629129862 890254806 251802359 484780133 692249242 868067255 852040966 993751413 816953158 852427108 242809370 971787826 713227853 892066905 174047055 787336377 204496952 253745852 567533840 792127327 817138510 890444187 521458576 610052694 89117852 121684840 514718904 935957856 261075461 262721538 281509902 938664572 2406679 808979910 725188389 865226543 617697039 722650704 333025696 848056813 209179078 982141969 179695062 305265436 756317799 915201629 170176986 417175636 503136028 694014425 650167764 857509826 780773730 918097527 855115554 937994134 637190587 699434224 289098625 423818066 909931914 928263494 433620105 863094662 71751176 111785116 171031261 528228263 389729168 984994938 620681380 676812657 66241402 455218703 177851046 581833704 906971548 997354546 880078559 959738455 352401370 825552299 163624180 697862930 908529494 984992476 794978559 838944092 781267948 835164586 584922504 785428115 63007644 460568460 943914451 947191434 597682463 866552539 814940198 923307714 448176678 708763917 259617713 531090774 437402910 867233273 203303003 752618436 286897525 892740223 620106395 697208471 497748951 744060518 892582205 907273222 965442438 979346009 834159341 889954928 725726434 843860918 613340282 924546968 834490672 930160431 177295073 524528303 62137406 63234248 820349107 981120537 58409899 66534939 313354379 460159281 524502227 598239511 815771646 933565507 415905085 853664160 800820844 826817038 356636836 532039479 242258400 500879300 221836288 589975114 538351622 808641596 592804664 996464362 985809255 998163787 547440605 904970339 730294448 768074297 998020754 998408604 811273480 892083663 365359283 821460296 482811369 551250069 691100541 870989038 626628360 659333653 136361925 770866923 596608960 667581735 458869313 635767043 21646366 559099667 534401720 836215457 207802342 295963860 387692805 986739837 860636243 917452527 335585740 799512016 514094848 711389775 613550257 853297232 624381899 742915381 49729615 232011109 100102144 537033446 255512662 585179266 333603156 486089632 312476488 719323760 256578763 886433928 12604942 320511329 41254685 635619184 313669459 987460289 201326240 647751877 984398299 992917606 131867624 851724040 397198873 886540300 689936011 774044256 109041790 295277886 818781987 883149976 918969708 995865362 794499042 907639281 795596567 865858060 362283162 549221397 511110047 665221681 707921438 928910549 882611137 926463799 418576964 892875167 480005263 710126711 32986230 681570193 764707810 937418984 204691741 292700364 452959881 702438774 267138533 338950598 358229003 713403209 343764096 617222487 781761932 829740680 228338798 922820053 958830507 977464464 227149237 368347203 642934768 741579361 464234035 746154433 469573012 480749590 152433615 949772225 966221662 969049241 576729367 969030829 403710340 624264265 264999761 572198610 52262750 287354043 730336771 954884742 802780711 941245279 207646739 473224888 781453562 816850536 768146346 847262224 996916170 998027060 961240785 974153944 588944416 932550808 999152607 999338644 318321945 935673093 272968320 339438481 774717478 952235034 383875751 925986236 199489702 737301541 591798957 831080455 819524028 930988746 994841118 997893971 584470318 794874106 743032486 749481855 66943711 414710821 30176510 767985052 131515250 144097167 126467987 857711074 719530261 861905805 576715939 851814525 640870153 755471931 845356069 846565265 214335590 683696413 434565183 613335317 287413432 852651719 451248591 732745218 902508585 911040610 429633088 488927118 689116227 896251165 335653500 442367500 294918980 850504263 661648030 951462955 799800259 864683027 392219317 979138934 882613692 951683573 305416053 587323048 989669648 996887903 415166632 760259736 253017847 516260834 874223642 923522592 651482118 838401099 822573169 992672078 261675887 940173173 259899821 914410902 476697009 836730519 566285674 649211289 942836665 963530258 648881677 720960875 926067749 959769430 605982009 866715863 613101901 708072456 201960050 608961711 55962824 323565664 567370173 682134463 769624092 919640616 380737223 721266663 527364041 634817195 907759525 983125169 864535301 952853124 697529324 707756444 432135534 898876522 21925484 306496380 576093252 924731749 832996684 842055819 947935904 963406128 543253880 885557085 338515772 702240122 470533301 761549924 314475180 703497100 816007574 826001158 974835620 987119257 404086881 920451303 915832027 941511235 593932570 901646826 718918755 773552170 623942065 846876990 764258226 992937847 554589918 631120601 457596493 921547773 644252290 836064705 340937049 864559699 710998637 799346488 754204974 867001952 281961039 786998233 324723875 909942409 631240937 800060032 527952916 677750377 66901716 942916409 24292653 224910000 157298293 411660418 341233642 564008726 147873803 847313998 266423563 283231405 76261098 760460429 603913342 804526752 487462007 625677623 541193995 748176836 496441320 887833435 931590388 994396509 745349943 992907110 952793776 952850240 639800629 960177249 398866081 496373220 681666262 960316406 445154505 725270070 383337807 656200728 404332021 605895416 269872085 430178449 164543962 893053746 426635304 720186036 732469629 923942092 716547572 907104269 347826764 951179678 336938132 546006257 127387824 800048158 434967374 936976810 693613527 889724817 14549880 104692890 572578343 841950404 48964982 441082228 179063770 219132877 989633184 995936181 331868141 610515870 827167914 891845663 784104861 809966600 107888198 693596109 995929015 996936549 980073674 997065460 705725203 985294026 837576138 853134285 863201501 993150473 138325140 140331504 384416785 490240570 244225004 634049031 51699116 442263469 613479984 806476305 243460910 799642956 145968407 438428463 325040618 363721682 758419774 899415726 360606673 935546408 476005631 600785709 207099770 324428865 793805100 968513955 886209343 941979720 207132610 583303476 292618539 955007138 104348415 643167700 761358022 787854713 832804629 847686208 989726357 997710731 667504940 989323228 965076708 989833271 979579098 997931294 232257862 623797418 891567698 916596844 364114515 383613626 959319710 980732965 507148044 757623495 836141214 898657432 357973970 496230531 767944372 988121480 43573131 245124104 842893894 990253923 814318937 937648130 673247339 917405763 645651516 962145533 885709092 908215807 74931661 972499669 522544167 894734400 849134650 867488875 202922997 207190440 155726338 396744885 359914254 882532788 106879263 250525191 114794569 910946337 678946383 972512768 844028451 997448596 182670917 732819542 362957838 373894324 731302768 753264515 158732288 796175881 258131420 398558591 886489078 980731409 364620372 951555933 46142276 739553094 239889292 487974058 538768817 628255868 340892003 785379766 706763388 828636441 137011510 671039181 866330756 911724638 215914010 901706945 260479877 622644468 683443095 836172470 668918562 970442127 394244368 656299917 472287928 600837931 736200810 863403093 510838139 989450851 968482491 984984174 219282796 612698000 27155120 995265421 861798041 885081936 632787318 885461043 19506162 980630642 359137783 398080983 794172243 914740820 217936926 624578208 471340911 707106786 50032545 804177350 897325892 902229259 929846618 942078085 638119441 834521043 892026906 922821052 957133130 996285082 775354509 800504058 747954651 785758654 992885789 997753792 626987582 803615223 221629540 238713356 444104373 777846398 830660588 930025655 878372508 933577908 695048134 952487954 2831921 611803139 367335033 999180611 860567720 966051934 120162431 682489065 8397386 376500101 539235007 888685284 174857268 900758446 805421962 921999439 348559163 888467213 78409311 788789462 164068256 798409176 335036318 487742290 733471798 765944473 105525258 656876293 570388336 600571715 48775377 123239963 193766597 296415854 680148188 825142209 257998614 424665697 803735850 917694989 222324961 224301529 526986131 969353995 983532848 996545209 379618124 414516475 8253463 603327717 668935823 905336852 337485388 362184195 28934488 252800645 561133114 573574694 410765141 823558260 78717989 346481474 568007397 691648067 123293617 895163918 484109870 687572662 444577022 962285176 390433144 895597851 849916158 874961517 677679272 834395858 75000152 630170487 269461318 469377421 963872845 993291729 179819205 271669381 558593602 921753785 255879335 279234912 497198939 827664634 610294080 983897229 540549689 894887573 973335435 985125445 149865486 937075799 469164226 868653326 883024952 952914913 5234249 79384863 749489212 837595460 836582229 913350964 142703364 754697677 243788014 396103656 408440346 945185431 834019553 946102118 178512215 940102526 848263837 897608567 428673305 625817991 790013276 923758022 460934440 942920446 765436503 898094780 637394641 719172575 42624610 821520737 929411600 931640090 281990824 885287592 856483760 879928245 236289935 515950930 449417433 522428559 992414623 999238220 28558451 237230742 982882197 997120619 587371217 693564377 978819374 999385788 604528192 800879166 144599961 602439926 657747880 707676325 490306561 644260330 318808893 869709550 39553762 623248471 350491035 629019291 761713066 935264200 737588194 827582577 709062355 883222322 941550442 946075759 525024239 642929635 857962777 980682885 300599859 482224820 971425290 978623632 56594392 353862846 483658993 737029827 353906639 456226273 166241968 673328369 859147034 969079919 267762722 483237170 103564000 584705835 480779053 527312368 334628006 806702073 865513210 898556275 66504733 662064794 504102525 552505895 714424380 861959481 394672469 629974229 747427593 959025533 454007930 945766855 874763363 983728087 189691442 387016689 58249724 535834133 779048387 893115922 766862164 785017639 955454880 958670041 123229590 272836196 708175018 937685965 285274761 423138596 28744098 852927202 468515119 976362600 317718830 439626445 346736969 369770779 277894096 984840888 363498632 865138759 54356977 56450913 360896754 431594604 534198532 711220522 267880256 524145730 427390987 728665704 913584468 958897339 539924601 606350008 960857347 996083144 113107511 535523770 831708612 966286466 802354347 843042831 423015721 837948783 162157685 483643619 275444691 405325531 129970817 398829500 553369875 765636223 669643428 989794225 740937717 958745308 699744172 831182123 514975971 976140839 178787473 329055032 769782660 802941607 605984790 610667766 301802667 431267616 130240538 863224168 461954491 704988163 111744168 692652968 267477889 548801769 444266913 765302222 106352519 915899945 78569065 455014623 483511123 588617591 907468170 940641011 892790060 906105436 633884144 825028553 185297649 338269032 892854450 966547549 697227243 702673368 155849737 409796785 513089442 605128234 398871929 811334164 666846067 982974679 86485604 970031384 898789445 916656858 323913376 715819941 362344561 904078491 822840525 913671293 778853339 915898363 951400525 963681838 878125995 959229603 815739911 973119176 118246588 293666823 986802519 988205664 402027413 965108673 282074668 376427312 113364006 677642484 16799497 190199668 824358929 939755115 349815660 718884548 828442413 908905310 585476235 618512647 420710967 481577015 903969764 973438557 856459561 881307692 300691074 996333986 541529871 930534155 65314989 270078885 85538382 634319263 763146684 978962725 719324886 738983675 15443865 345423662 23595541 114441502 971397256 973295827 532603371 993148425 860624446 997813493 497387153 523849636 644199 193914774 698117676 924612498 330244833 880825791 529055305 923349441 567931567 713446418 904372563 905526553 952346098 966597832 608833380 970425227 867988367 930661781 545669196 846149936 939992203 983289668 568685933 953102209 232460371 532081573 659548182 895652745 280261416 304951780 707142122 864025012 492184973 577958170 439503680 706035701 684861477 952861646 634891277 646837918 400907450 859396965 150517942 357962569 670363110 762948525 58832629 137736203 580428247 602349349 509481090 761997715 670993429 881659828 787527444 827880166 895164002 952646334 600366381 823667973 78831071 929197397 2453509 179352841 661762160 684134727 28294724 553695782 175151721 788068122 479778390 914705069 815410352 881175927 802256051 863168020 721971459 973592653 498259495 572630152 638835014 940003554 849559828 953170626 136511713 336964040 455393065 526212941 169596036 274952508 102480477 319395772 65371821 186360876 17717635 370824748 981422933 995353935 647004854 779947336 956848997 966152802 584763444 686188965 498582183 868783041 357206858 808499808 334606734 816895963 897275222 983467824 803125020 859945581 906191954 910200601 82299777 386085639 175826751 919604763 726911016 955364481 812515919 822430352 200544187 989937392 568097736 712376425 336290685 841950178 576976108 820146716 222952719 979497285 136604634 633254779 726566682 920209874 218580510 976438240 633217666 754826867 341617405 488975325 493538282 587139062 810762998 822613053 115522335 298857941 436826503 983293027 227840413 867241647 480209010 697704227 759118203 993198618 343030598 703031017 734760441 918801712 742704479 885280196 418336904 809636545 976547311 993668780 922133464 935416054 350955442 742486056 662704407 915141939 754970097 961123585 191156607 649451778 7436278 900290106 226656793 847895374 357471691 754036074 478763265 510565773 518546134 990095154 697461736 747844148 384044183 914570411 396447323 918769094 573761301 948649241 262803609 923105025 251931374 492715018 352213066 440247180 194601684 392100734 234664210 564956072 857023150 954965876 735453654 982145511 746686722 777271077 518290735 772304184 550357266 609959418 166063594 837670831 638588475 893961311 612391390 932771733 146365367 244427391 666556139 933386987 990782841 998440499 38892209 270366979 547571457 942284182 708512190 994153703 497812830 735777129 617825192 742665778 284837093 688155969 499757048 792619783 254498605 935641978 519929036 931451150 476535957 598730647 158923749 268454882 101421246 960670326 845554202 864035183 291054205 710876118 141869205 919116063 71147806 540370891 738169680 971728009 498430302 563317348 73161428 315177296 585969759 675039354 825857257 901345391 305631888 657311402 254433183 323686611 746954099 748504605 558100582 662177804 264564622 817038673 184972933 277672210 804427245 959609404 247314400 910766828 85826625 121619279 737547454 952676627 752410957 764988468 270676616 864431350 342598660 604311597 941328402 971601483 123321533 216062247 607865313 627959821 844925665 911064813 399275236 980648391 342754196 611152802 933085905 936164613 396889425 801810459 63389246 249131902 525857856 684266674 662135811 797353237 705014646 779454135 725859589 999118392 491757931 742913446 291367306 756373693 901928708 948315879 193793173 250883774 477588061 918929044 212114697 911337257 84740402 543242568 260351888 329143589 467831491 553713639 256341665 816810747 565718238 602085816 777333953 964172968 138429591 199394502 674169830 724530475 759743119 830662007 551082971 649234735 655174893 845046673 291877040 459437611 466518030 868610486 230144799 940720892 389530409 996369314 758909868 904571943 897889722 923919341 609484429 801281299 27891504 688356497 704579026 758194321 316899881 717717700 381737493 388954218 272224025 492537386 279433489 303458135 594751193 846100849 401557826 445229559 252924553 376211974 846662800 898247799 568659274 757737846 341175507 755754360 781779270 972363455 789955160 917091248 697798072 771411107 104548245 946843027 822300840 890922768 427717320 782515095 488886130 699321247 407697583 466167512 146674155 840955564 399923286 994973744 312670272 762662655 718537217 889817176 527190963 807277399 477344601 509111283 940380472 997286202 205261344 810511665 297832265 730330715 591734413 688912353 473078115 510589524 861533481 942404240 957970909 982665951 112830559 780557876 829498781 840779234 775501847 807166070 921351878 978746979 406091762 664798406 372971897 400210770 973242316 978852400 37173229 238797312 476059426 821948681 350393533 547083602 351674643 677124921 794000694 816394380 984549125 990589214 445152131 550129835 178574876 820243597 351300399 916405549 245673129 558302861 292185867 889603842 621180277 867738978 666777723 752068285 767606227 774165439 877865797 989434852 273044476 341564947 250861017 721037163 580751653 672477565 503136868 721543756 138637113 865749129 352958114 929079957 491449743 520567924 512034026 646739151 4673452 454636201 96956918 638413613 814510528 832994311 53903775 144957116 666412170 942321574 581087302 969657505 861696947 997580151 911754646 935575895 205311934 507503803 19125958 777510002 753587914 983057180 380359513 578938549 62443289 723776783 476586346 882989421 665257004 849385152 497894663 554793645 171059550 307322278 406117299 633900390 693303213 822019862 874866087 931699448 200192094 698497303 147638888 670378592 421729253 714158970 303083950 531617260 586261049 612426532 258878997 376688167 70588368 525619419 820618504 905645240 123686974 572358227 907377462 956466127 477857904 663242192 648338011 872400367 887626192 907960669 621988451 802506114 416416494 632787059 180990132 774176396 622699242 687659727 478040317 889494398 168005201 968504678 281440134 992896023 234641755 494043379 684445050 844708230 190550230 294541445 346476413 478101229 737205567 941769103 811897821 938543859 986754874 997983013 304504546 679773303 912740170 998482574 719052966 761493667 24298843 721616872 596160791 825513521 216826991 258504882 746716870 960132504 448587334 792939164 422227720 646426223 921692106 970336227 668923382 984230226 110125313 873045781 867401624 909470192 841215465 985687749 9475971 268820700 127593873 302496562 892999532 923701757 620351222 961066519 318455614 369453444 689925440 855222439 144108118 870404736 574149340 738171566 673610416 749216194 635590987 800638756 473588212 564139111 185870879 376958667 220276946 624283939 108231690 877265631 530544746 794994044 89219710 720270864 58142356 651676888 660475914 695405166 958307031 987523127 577784400 594479942 277872751 891507902 538279585 943564257 333041218 976532836 281540334 603952653 233350737 515981364 484512812 877573440 81292854 92599471 641790524 965075638 977606922 997054532 909355724 918809989 550785919 899109108 62886908 217818145 170004596 258730096 540474588 573239688 826548833 830154772 213338550 448790489 799765352 853854642 131756203 632702172 685097245 875938352 212109436 565441956 365813473 376091478 459677305 648091744 216644162 381069739 626428001 830305510 421640812 675546245 585685192 951427179 383150642 468626304 779657649 894058810 989325072 994678113 503389322 969395856 556418738 693582456 231038042 254958466 592618527 654733223 617979149 988778831 414171609 673062381 755440051 821074550 798842653 807555513 648824364 887268113 291800763 912148989 491503064 569643833 570079023 810162801 390334521 775095307 585145351 656762082 860604777 928660665 220123028 629437065 877426262 985985933 389585936 974402887 490584694 543520729 179029840 964571708 879855526 921839223 754979393 948590410 62215017 250284029 564232263 673987595 397417983 636408541 709597772 715888677 177709180 780091528 512977727 905456351 941865585 983063999 578728330 909077817 727456271 947202717 142099130 312138998 848279317 977221067 987613978 993750705 984789474 994865471 317145506 778195303 997259417 997795333 335876734 859404401 710055585 784601803 840657836 866375144 804244904 910950294 848631119 978807126 991360797 996184004 677395341 718625082 62901477 677891514 926240521 995122894 405628599 570298678 469022746 690131216 271963318 610862267 703725406 935682311 126149069 577460703 388801024 984958279 315647279 544483368 963186931 964083752 668728589 877729503 61321333 729021115 213187274 691296681 281181579 937169758 468476675 573933904 409308128 882663857 717311784 839431513 776393047 784725950 596473571 624347785 483956715 538443625 118464411 428816257 192685794 441132915 371671172 472022328 895570787 929817166 353342913 886335615 712437643 752054947 624748207 692761008 313157789 753380973 606425707 866480301 15220568 831769302 383412696 477897117 247954527 294409614 235923462 816106922 123366803 149228439 985514385 989357657 217390261 948827531 586269336 616441601 925767377 994329889 931134004 932242648 660235272 969865644 649172487 856660058 417927027 886994438 494708099 827786454 357151011 483565236 415336884 705932960 473973291 640124354 876558373 916733821 484783478 914413344 497719 952123128 448297188 623586585 840089632 934644598 266082000 894352098 792790618 957462710 816437672 988889784 924318901 970000194 116592269 528854377 512753287 668422315 671660799 784934314 264407231 767529093 841735433 979274725 959749948 981826469 170144420 769383647 912282628 943540674 706503725 806714243 421596647 491857591 526999081 590142254 388057360 908627351 822094783 879744649 60778439 551919161 543119003 983282281 169304287 184965788 326126584 399341678 353827510 610489983 893576877 916267459 114120223 349367245 745377242 850389209 227141177 831942595 588306119 805770283 748357233 826142769 253613452 351623643 885660477 917689086 266159879 845221007 172237524 208026731 925834436 949868332 349668306 888701098 832459931 961040572 75344135 136438760 313298915 923306133 493441905 986661441 589967723 920781080 56827561 337945837 649973482 850689070 253810509 271910747 381854843 740616187 397308530 525931905 954836937 993053049 997316129 998192132 766152965 932950620 514841562 832093485 38148650 991323116 516397706 640905478 983644022 993195876 54607616 346010327 725675587 820254769 297892181 360722102 590376817 752137840 80032316 285711017 223464599 597096470 589742905 789023344 339154975 914091153 356584741 772876681 518054346 594488888 478038067 970531858 768536125 961622321 180411599 659622449 754295049 926250143 885619712 928222906 963541333 978968771 386567001 407660644 213537052 850513033 994548215 995826778 97533746 294768111 760281894 869909310 764012069 785215386 359420508 679007252 388098562 705336026 971575659 971975347 512287516 523188683 311283886 762800301 497746976 914372667 815684860 835110260 989338070 996221081 587076005 626948867 971779660 989743521 998187065 998483384 534405650 899359041 397653608 668771256 981197292 989001849 801389928 847533787 124180556 273289668 613612925 885133481 322448077 945762915 170398216 896381211 63439032 701461229 869725916 870493124 526739814 898650509 59736988 436821755 912511924 913931434 40949051 555676993 898961648 970635504 722011736 890073176 915983220 922914590 497183768 556633005 350775089 437391399 88897295 681295449 476929486 642717843 947093445 972775909 118124012 892282975 260352293 869466249 665646693 891992287 264432671 772207028 919541010 972379510 447556356 712039363 478985851 904959089 512054012 854186949 756562578 917237747 958170189 989651103 584220030 589087343 469034163 932749748 694761183 725009054 504427942 946555136 497541439 540093381 419433997 888967740 235095892 516734401 495122615 870895422 443047852 624159860 453836714 511463346 84498967 505068580 313442182 848087127 646877668 753112476 636722487 943830101 120897176 624780838 205028425 909446945 123763523 190039561 15995431 570126655 585123208 772691383 691464525 881758530 799394433 875415982 744721794 897138518 721514841 959993900 103187913 651325193 858943341 990515394 656629960 932104652 297018950 548678954 258009139 953789435 33692132 678294585 726054554 913511141 33914135 279328059 673838438 780234053 308807525 926253813 256360064 956567420 690954233 950968553 183949235 247115480 812057518 981144272 848922991 904831767 516055020 757569089 469457244 648970502 16426166 143570535 565732768 660145705 383970043 758030416 282913665 720581521 744638483 839393735 986855569 987364059 173524586 274011234 933083156 989631324 821662606 997801985 119342559 668924974 76309179 179776965 839235030 865612417 964297590 994616850 230558496 328659564 460249923 769860329 990109311 997199813 729264081 839125525 762146400 787640008 914738682 941280718 421988749 493486355 413161955 683777132 572791858 886795978 256198142 551973082 62183242 430096296 549713727 632816816 787428737 805644364 248740905 727051830 752005174 929940924 276665186 938589198 217853201 925275361 47781361 76570997 344560556 481783450 474647134 574245085 991831145 995906458 395492944 881783896 991746232 997517689 26085530 373431543 174490179 781302753 867723229 873453548 392415242 993277606 11578422 226696190 84252880 158652791 16945458 961908193 494157318 932073316 431111713 510571026 426566675 428914126 270193106 377799855 752360178 911167454 925872879 932587361 285977846 872950864 120662847 331994496 725702051 959425985 598143124 671869377 159168536 543873715 576725370 708365311 389426497 452321086 111261866 199561394 299964998 311005319 720568719 769472322 717439053 910598470 648076329 898284618 456751162 735975601 816328225 880323026 536354641 552931127 265026522 809755884 289385855 893481286 496361959 728059243 75933060 273200550 130988028 975732917 62585773 652764589 190140051 219038818 702018446 827020958 52624959 565036525 883137715 972938771 345759431 493602623 869879064 874468929 502652274 679968924 399572065 722809235 634807073 995620439 219199595 888038734 953624560 965646697 746247491 857765165 817456793 941220433 887651444 896547995 924800960 997325207 288020202 931091545 840298330 859102253 187068823 381600965 720595626 784283542 458099999 970359599 232352655 508109901 130627496 170971396 837688140 841444888 21589677 228504039 801377788 927344176 619178710 673439239 255769777 605846980 732819743 871687198 498902541 866496768 393737191 686738362 495678787 694130514 986174210 995615316 697603826 834061543 773813594 811717414 202824168 272144484 172845602 686542276 162622520 555563867 937474285 985644952 297150687 582617479 49232193 137540836 966414971 967092715 586956721 956003087 900012000 902197659 467357393 888572807 936798021 976164377 389084864 612408909 931701944 985149518 985034087 989492277 174842417 290823580 839470538 957589752 61273015 468174406 164339423 948214135 927761329 936707928 915295311 959705215 499304358 737337039 900506739 948368138 590227916 796782113 722350813 992072525 53385882 713605295 615176745 917617672 987298170 989020574 396939498 887742296 685524507 837016048 779119693 910663385 57351334 194643411 794502393 974406253 559807907 892738190 304451708 335184180 188698582 346748953 608208403 740071683 680425329 751155918 269001795 801196390 138460304 315081250 407474238 637545559 776763799 841568802 103175433 615716851 121344102 914599085 926899912 945778577 410302394 742834885 241612973 812847979 308996009 429202013 149068427 965093628 745135417 928329948 838759504 921526169 362800172 713436269 878836346 880660648 268907447 507262556 860123775 984143259 914332649 928885858 950376652 985583477 994217258 995818674 43100118 664998212 108204608 198398846 364024735 520109744 689864626 701904641 994765857 995651939 63094128 642135027 358457101 917459479 43060757 351875483 401113304 765302841 129033870 515298171 332231411 877697029 511343890 692844378 443992711 621627043 976153565 992019418 903990812 951211270 992268628 997308609 181871758 584385858 94483692 739911493 718734105 931156733 146088345 401823821 371400730 705353765 428699508 500065968 94218916 285826885 729346139 866037165 40282066 433802392 826520696 943390827 170942485 409198970 437925404 944171083 291975589 893128338 899683242 907903460 879809210 910866003 56430173 563341457 669105564 950966018 649002313 825643414 97011133 838314858 987643966 995783202 82395129 697107642 491343234 944289456 348526714 703754627 658060557 959601425 217334164 221364407 746745401 843353180 382148330 864663745 446276686 449837361 417505543 515106778 790876252 906315202 813266445 831659434 76993492 904569909 223494052 747512339 326383157 689543197 551015820 641176529 587140866 613205775 616863575 960488183 22734102 660750126 251693319 528063191 104496682 525633000 119043532 394029980 342872627 811241531 312581091 939223932 280965907 988802554 87332963 510363046 672947888 805204161 952285290 974881239 640218514 942454548 387498757 816562586 977256195 981416134 303756019 488822061 163448724 377500063 418155862 830280185 96535812 986187894 551017286 810774764 311438021 533675734 550273953 954349316 461611341 705689918 933472594 985881377 733451482 770448772 930564133 973687235 716514810 891757525 559508570 608614971 754104269 880893020 857177873 986957610 822356439 844515054 324281012 888417551 77223557 262444943 27275096 950330444 116308625 710771094 808863424 896318212 771230692 996113007 117375071 995377797 122047793 912480776 817072860 983378569 202048013 306273617 574337169 848189585 633156629 731298444 313623332 846029473 428328576 699339176 166311225 230221943 411299952 476404489 531414860 595675305 19897520 794120025 554630860 905153139 178814001 797918051 240009211 440708865 116992070 799958200 284649918 959120391 670612749 766181702 513278793 810415945 466988978 735629536 817117046 842639048 303066116 407452918 717745109 844444779 777795056 880987278 796648168 797050401 390776229 512109322 482394663 787190586 733292107 945542267 599729475 856563542 182779183 196274642 780641027 986388093 985631103 995036223 503183784 733823765 701717261 907475540 235661410 409409150 988170614 998442725 590638051 755816954 580753268 838807637 170258997 753419234 75496079 670097716 771988897 797103998 662286886 934542581 736519989 808092254 832508987 983270679 752006302 885970295 750250512 905382782 158907084 932066188 686241441 955931146 125453473 289344301 222541530 503671735 328266881 512647102 601509246 646682330 33660448 39043232 455141202 681194187 277097195 610670643 971065397 993381543 162663115 760325971 754942081 777533817 899029807 927014867 207469090 700290197 667554846 965649475 344066842 988523930 151460631 817037853 482702970 491934815 698622387 757006469 273779857 577219254 98713262 797614685 902954305 906035393 631535037 632630572 974377075 998466219 384726235 758563612 211948883 900817726 967459448 984790040 644286870 985445446 55920753 193451054 181147323 368505665 242950800 365220471 300285158 862950853 263190184 687912196 347576199 799448658 86880547 187396003 984816305 989092111 112564256 843921198 22485202 870353597 80189228 91211952 657052411 666225318 635698493 807885980 451995454 723786518 583782744 948521540 137538981 447597889 591479032 799360373 208404406 761396750 860990307 902638610 614645099 880649256 676952048 881147947 81512742 900264642 861911689 862431797 906464686 911746760 865210365 921848181 18347523 48276934 871728922 921428277 890531918 901043811 944467656 989786367 953988790 989550218 622282079 699790989 835200628 878087625 441696176 883838881 570459950 667872250 288139049 436642705 696303667 795646251 667956378 843830886 314267542 971143555 922444322 937326651 813115247 950772361 892908102 913186588 391258517 770641254 283513756 909292070 784172043 921012607 652595648 965215836 675839893 950574191 116479239 515237019 870101756 979023137 235474861 272199144 240715158 539923056 878005409 971011102 465749274 877780985 231783507 584445531 955779598 959506442 746092415 749142868 4921656 94317855 10954524 982329592 694619930 748351037 768405137 894706081 655093763 695528267 243749336 590750333 110865019 314217617 256366392 442228932 81389408 90151656 559657147 832099714 917298481 964975635 653681336 917388466 943584965 985819119 200712215 264494619 79025319 921185842 25489016 944339580 862140193 988986303 525420886 644953789 654595462 834899909 886095594 970031727 579481668 692847711 586986813 973188967 610781112 855146339 224043077 746906241 904716083 919345668 14363236 160680010 96130926 457740917 603641303 980410037 513178142 657773486 321675043 789554887 829087365 866676651 91878811 430337435 656164068 974799192 141679356 637598084 845143626 954329586 380873369 810412551 706232487 831767466 167447267 906424663 331736265 491006313 566235032 674835531 989956572 990952968 638127011 912595136 476827311 884238991 332815615 968906587 772455247 826849673 399980508 544133264 984474654 990448322 333713391 472401007 914278642 992260988 227395367 437631290 623156575 994103716 545670047 854076643 902255161 949876791 502657883 910873759 790636433 797031112 127556179 512543983 271280586 515818960 557536136 750312079 870934065 904489287 475162355 888371982 31026157 304769670 788188295 961991380 576247937 687723860 674342021 982903399 859204444 952996019 796112195 855186772 200589349 601837881 101568546 699934889 880386962 923566124 100989112 396845439 59905744 116798548 606660181 869039858 660781843 786122843 54925459 289320350 226868384 570313266 149231075 879284292 742695496 849017600 201348459 906988689 775309188 937563832 327197993 671396986 298584101 412913635 802298350 966993187 610547496 875940918 657771858 900577248 518220568 663480276 76778539 602313780 544886984 982223184 592254020 991795451 436597386 531086936 823915474 983316921 550230574 948585059 358590832 844360692 743966642 990169726 65088915 340333486 252631257 653503177 568156833 929163945 275877504 440227049 427892113 845058218 353983256 905110241 694403308 874531402 714827015 936568196 586031375 608128878 690640924 784354927 756411831 970481534 962819305 985936649 635031629 912991150 507094719 751051737 619251715 789771238 451199824 767907967 224165616 261459123 288866823 643028824 360554491 673139142 446730170 970849874 736513891 967129107 483899115 653016457 277521642 427511533 932805160 976092262 148691571 454875202 488214713 891890211 660900485 771694634 870966932 882454243 151353507 361370559 499778395 681701381 549544127 723360569 222303898 750413668 664079688 950325935 611619999 646836106 695923079 779046410 480728641 661497537 323847169 966513050 440749099 689401225 62252853 956261605 351547964 899122784 989469868 996847606 299802967 899538217 167847005 597081703 324041144 676830106 427066731 699843612 183038405 999097094 35126768 591003962 177781227 733438236 218570748 724623400 804050437 950483035 640408472 739496867 900354681 972995760 573506879 729979672 258778541 960162835 784697876 966505898 158134315 922553301 23920908 978447427 639237303 896461120 298822878 747709949 245938077 264284558 65903257 575478440 95904720 645593954 961286532 991564330 987418888 994963338 599312215 867563173 536420952 872648213 382379177 456701204 959569914 963087566 89244677 401931489 954923990 978006504 63273160 67703107 70926420 998325912 788069692 993943437 380741797 421478240 992276431 998817727 861641051 943299962 672677492 800242086 946669251 974541772 180123669 281316238 274082976 536704314 132132749 644234000 375159539 898344743 378230291 780248312 488358495 701112789 391326378 809508405 630662378 852484471 132987114 938180762 14988482 457910295 114092995 957669413 981823929 991614717 831431900 961091142 856050256 951534168 600292561 992172222 902943776 936138585 136792009 384125539 193191897 504087883 504849380 754997157 295190610 683488748 282851856 519751891 534382846 651607770 965556241 972494996 666571896 949608104 771182679 985093357 195509494 244751849 396273596 627970672 217515172 458890032 151027992 162098719 967022537 996141264 630215767 867228870 718376933 807571232 323378981 414267694 166542242 481031683 601498685 804077892 470691424 995298962 340207881 554901600 137228894 451509470 105976020 844867978 676277155 801755474 909822283 990685983 311735167 665265455 198259310 922389951 627978627 868949596 996440362 998786300 89987498 552366719 510796142 567511164 435485383 970088417 12987756 361617868 752890844 821911302 455544421 749856334 374634549 550557632 571437163 930851030 995624008 996743150 543774976 934300830 51729358 353761321 107959459 116701806 283320498 567683954 716047638 760445943 526750441 581659613 837557240 913789625 316820678 600207066 549121972 914800501 851159465 968924926 872234152 934354207 767021800 822909136 668952565 860249485 1888222 296180912 856256663 901097783 149615385 758697131 567385448 768958098 145961773 252048471 364389151 708030716 656613834 759183662 655454907 853672518 461984697 760753838 613610172 870749172 664359116 818860354 739455601 998511014 628190594 805855170 253279226 790844573 723909075 940964455 85944355 304303986 294343753 643134137 637697361 763278270 53990558 588225535 622350182 948032200 205301622 726551208 931128769 966577766 861304482 933193337 248976209 885386620 946147503 950755954 973250168 997436004 311752728 737463298 281471532 581649699 45202017 934186073 771101870 859955767 90538553 723401070 141426394 268485741 963522589 988038299 363340644 935705555 508460024 924687968 372304 946514223 593737705 968232070 546436159 729518411 961451208 968591695 245794915 790217769 3960182 861016625 254425427 832349903 57321458 827391807 978570504 991131697 76996146 584703717 627383977 879710394 634220891 882257822 685105848 691119883 656300687 860593885 513270999 547604504 802066595 904972628 296674756 468515902 582620473 858753920 908894712 976544489 255535389 627538786 481198518 847268629 610518612 645152591 641219128 649291916 156396726 631851114 325043070 655566801 630004392 794142132 685776235 720758212 3818346 61741095 818387694 985868880 155959954 675206727 846694990 882841721 306777039 883136381 940556921 996508405 178032968 784159609 901400803 979362871 707429331 827867027 281140355 403553771 713946032 935123549 637912651 855131245 800617571 858621998 892483470 931476045 846356605 951792507 663681788 808704075 822161727 849723127 592550426 597605434 561751604 918787690 866633194 886338487 116393316 364523502 31444013 741932134 549642746 682933614 542768020 941543240 247025299 694448783 76683098 554762373 986411000 996711176 128244274 163786610 156430481 429662111 184459431 892872596 452097817 871359273 128459700 865148428 114735048 815958301 764450994 917773778 966094578 980846819 907007658 998784528 294091241 752982953 846902140 990557082 516508316 669313471 638406452 812272714 195948044 734782429 121448941 485782004 34592319 436080073 477739315 934826809 890717879 923603987 300506874 787903016 76360419 259704447 736508763 748617823 484049117 834270686 321936523 420914706 982638204 995255529 177303604 324313701 110010869 698112899 882259107 983028459 764331012 972029818 368233007 891265346 970790399 989375876 665181481 969608127 66813685 567896506 731873245 744538835 828542878 928023862 265078732 891682147 931746438 932345451 288076786 716993254 891544820 917551008 172261153 855685640 162130188 789083851 539157170 953526153 724421108 822637518 563886027 841034168 640042803 875614223 143495223 797522371 409113423 842865371 276746790 647616040 180205883 292481196 809938233 998506769 762203788 950110915 566275753 977926036 632416177 847523633 94501269 309132748 494724005 767265410 901972922 984980320 881739702 923230395 548452924 802461360 961787717 998117054 706787796 945024917 502111997 841082064 830820418 910458249 491390232 693143161 276015709 573655748 154630797 427609880 729463303 847626459 426535760 470143903 870228315 939314904 324069177 821589697 216246229 365220725 687036524 757578112 777423373 928065170 182145012 476907049 686628705 843231563 943821262 950023207 913654222 978144287 610892031 622621647 826637404 960078513 698824738 849220382 728658151 860781222 469063784 910368174 393614113 816402411 792335949 946322670 681939375 893685162 176040559 875146944 291922154 658982447 937413727 965171569 669276815 982319343 51968708 994874069 232631587 718738435 213060007 623808400 158495843 694166268 96688522 316001920 664949420 913702745 264700767 617551042 218377499 598598134 513217754 844171352 319051116 387134409 164563183 894003233 386022895 482532448 819048637 903213034 559040072 963149968 640291417 683696766 726102153 833675667 868739825 943747938 29601009 995224740 570326771 604885299 347067262 934527624 4624584 493666491 658437633 730895873 376830031 613866074 566172780 697905972 110614822 406535923 22912370 536258934 651144873 920569564 441228338 763109356 368742226 569010468 210193113 951426715 900198987 967454150 701902806 869298945 332845128 472896707 603410915 967928459 539511595 913781349 953887375 986920920 558269568 620589587 371897187 777458772 732991994 846584355 175687138 692233771 330379680 665713334 176160363 772230567 708201977 917054183 100916927 785054319 301511809 401257634 636397970 876911611 697091170 855272655 872138363 958754098 849645152 920529591 453194933 746916542 616204881 753078847 151749947 223820601 10394709 160235437 96989321 358590762 483049357 937645064 17501903 733271975 261364611 356223825 799916154 890461293 336873887 433641693 561543823 924875592 138118292 936606766 603266557 665829260 281609789 932224563 14323307 650585229 74263101 351623814 19263123 686548631 342356974 805117131 240060445 651813286 531795998 825290957 250800990 406903087 443498661 704367303 254226330 751303557 657964074 702826596 614901435 769189133 475005588 475893482 331740258 372838546 813856370 871695486 177968699 964733986 404562703 574950976 464576527 942776498 566269029 568082822 131232438 612449951 28249388 405688272 358263132 535607143 344984896 672872573 381148657 873553159 487609412 666146133 201428098 471001763 898379726 953734053 466841488 780813266 464569645 942368107 893613809 910509560 726100128 880835680 635358085 857693153 556579390 687494168 553615463 846221436 870224125 943204316 66942345 220430637 152387314 301946417 780538919 953583030 888082231 898303574 572471622 869896970 67136037 160069992 128782655 247601540 491225371 861837551 394035041 439806484 652616149 718941601 499806924 894172217 332922293 598747153 397835794 864907505 238501111 807443164 471142743 540730375 53397096 314881841 263649530 911451624 778169203 989123792 949259949 978427764 117149851 750703785 875555736 876829520 926200842 983989510 973977763 983847739 312223980 979349378 581892545 715674237 456840156 755510743 52468542 144294846 831243411 967616823 378878454 467994728 436519749 669982937 841925536 992665259 9374581 87011852 110163129 741571848 243009712 857594033 447754742 865451397 832673471 850189678 95295002 605767746 349962365 494866529 874237079 958484710 163234112 680271205 725357308 924420610 140968933 508025328 776567174 887388620 992916689 997277641 473620455 960007313 270885961 794860198 203955865 312282520 769899922 949384734 868642177 876672353 711272485 942750564 396254080 987498182 719320193 802678901 733479670 851974313 350075921 559375005 26700885 78466764 292493632 463832916 701774417 850810371 259658023 460113714 693718529 774469080 89378407 300391876 393355724 501810279 542145711 883435997 846443236 925923466 902252784 982351724 984944582 997089174 369625987 421712715 412171459 460451708 208854979 462005584 901800641 904554416 897927286 898074506 136595735 974817002 321256236 789774112 814525716 909838720 835352052 986696543 607329444 651149092 160311203 576033867 998641729 999208518 518004750 825123043 854969145 989836000 890569313 979374781 910047034 966895318 289079345 508722234 1410851 32193935 443216631 689298971 862018276 971727515 13299576 117773478 940890514 993526748 407797862 632573531 844787483 920779314 267366591 367831937 892791391 955150382 523851248 573960023 751021728 869661237 746616669 981582040 518612342 588031547 770448834 850636569 318730918 769295278 788278937 822787991 841960521 904839042 870499277 920025325 703466364 802480596 439175594 710547044 335846534 801367489 708404441 829927998 975371038 991899870 264612271 594354441 451600085 629777289 910322058 997933863 30960597 564966454 723184165 745770411 309418476 332622126 782415767 796879320 193262916 672558378 407762582 698403768 631028682 766656577 781291745 987044716 488594522 575582443 199826973 469200085 314439321 504209292 924425425 940870165 197309580 784814775 784911779 990344469 835928395 891887638 481948767 628213306 822069280 833313721 410836808 772961963 801690147 951881843 791171420 813904849 729121997 930518811 835095218 867834764 783184478 835355706 854022795 911983021 186459506 419902922 908105243 964875805 225032192 255726953 447955758 566254103 423609205 793261008 241280279 439414780 173394681 399710456 388696968 998535292 951980558 974037971 740558714 802188514 764352388 931575131 423363824 615618071 12618006 957267509 517200660 811437850 666688297 896639101 585130030 641239028 907039179 958212525 864564700 933213601 994451905 996534493 928692201 949979410 625985367 982579541 639702992 908549694 82437778 925265622 567388011 730735029 872322426 887170536 569821439 920451500 218563577 851583994 800906570 901413730 573102135 951296601 602716410 869766524 779017012 874073290 325008748 389153134 215533847 580802993 515665658 563996146 991207774 998099495 406374045 967662707 515309265 611726382 859880087 980331928 404644657 877263538 597509013 723723616 812605445 992815710 751512103 998663071 338235203 547979518 824503392 993646230 452158534 897086586 229089723 297558516 721988942 764630196 592673085 978811803 531635712 547068359 362670701 566106719 408777206 524481442 280651589 544253437 97219618 344476772 678949428 742454418 420047904 601869279 751017722 943601854 874065822 995848926 514259861 593481558 451916977 705262241 426060297 829386658 57699011 207383182 690242659 878345323 40907743 438221216 638627073 911151492 388396979 410084972 241531244 643419660 174501480 533867210 365075114 983298561 57376861 383420845 40726388 633194709 739855918 813650829 684338438 841756934 226792989 566669142 397217774 493435110 180677655 904854486 850939234 965750488 378784945 863262895 349084324 610920883 544895590 840917569 425506183 666794371 395018191 896670538 720006685 902534829 239736631 761989137 88057509 702865277 867074556 918634073 970095107 996834440 903549350 973409922 492989650 630695460 718130506 774391482 46982629 541118864 146983273 911279037 126553914 657623913 532059700 593929782 832192727 993940495 234588986 825085257 426009947 479923249 884618048 923444933 461826362 952949532 844521759 976388405 582913122 845642079 857572045 935780377 583315197 838653396 823732307 859880613 432195172 937486173 64826191 970924597 888421503 972540165 448640554 905709834 684290522 685691908 396594284 424359858 412937996 476658104 699860489 785345634 220981799 474434751 764574612 779573180 404998858 704592188 36791289 530609764 146788986 357659585 50953330 365035686 171797975 592696676 135605280 309834655 64995988 380909522 964715425 965189641 386812562 783388512 152797664 453436259 237798528 518091197 581158856 854827731 855207389 869448909 893064058 971858989 466658739 715195050 656848075 910095430 977058457 993337327 845884923 946995969 172478385 886811150 469710401 621775804 761294050 994970017 856226742 897064588 494165704 969886895 934363595 959750588 95568253 380917612 124240064 430071460 939230625 996524098 796475119 827666660 350385310 932098575 285383970 915773067 829985456 886187268 841607759 930341551 166890089 437009430 7563152 612266725 225889944 808838902 293434094 988261470 217827867 815795840 863661731 939683449 207221856 378076459 184764552 746403545 126883152 766317981 776638102 822021918 267305448 873055501 602741581 899468199 686156912 891067536 75664457 929558443 494177540 914747285 630939097 975703064 52554994 943899742 23124926 702233221 973360778 977247989 54138829 853852126 159629711 201635904 232783679 451064517 36309808 293310525 104381106 464210788 742530551 749957390 397384087 744382466 741284479 789756338 384472460 765290098 714567656 735056680 694025593 868800257 124414124 290152379 487287036 725767908 959595444 971588657 667590422 816520743 761327426 840274949 737094406 936891599 62892399 214217167 681337605 928171369 339407203 965734108 155359862 268236261 728140617 820762328 851164330 936255320 84465974 245012891 463193509 679487088 895930708 943849931 585174619 962561158 529230748 994656987 109326704 563927640 652272019 653195274 899179514 920911282 542497306 813895846 735601070 974224666 400307676 900676004 972823969 982448203 970018240 972842612 177435440 327367086 500986484 807760473 912615195 966605697 809934697 924019072 196542001 770932324 676391704 788474124 158296484 781375082 470394652 922063242 876662510 988815775 10695011 352791040 823197727 974666988 821566978 856810852 377752032 389703572 36488535 323686202 81402755 286369891 354600601 505701394 984446979 994818354 860907217 882222968 129019666 661888062 640719024 806010291 852544579 960013685 896450822 963922408 833490989 914171823 163062427 188207032 964181340 994866841 726316190 765857581 873903688 986029493 462998852 779228717 387330885 615772772 502296410 929476166 858787608 884628584 113805338 658538124 641705974 900328509 681398189 797614099 508241424 556346957 66939905 473193435 944980945 980143312 308829355 828232270 356752366 383324443 312142845 397489495 404356438 806745876 324547912 472444971 357778572 796037581 636743477 665164903 12896011 646780655 123236243 697076484 345594511 818093369 118313710 833229913 229062580 388898624 979249840 988807104 746381670 983497329 466160745 707298893 145308975 775169071 565472541 789101560 164596222 782991422 473148416 773127413 57947026 700823583 918545981 933413185 407292083 994341619 111390437 529605686 825145866 858425625 608844270 919016130 416137366 806272040 958151087 975342628 704310526 734107796 887005233 901968715 108143812 339762072 404091884 638615943 581236490 729986063 676797917 830347809 142253524 566128702 324636463 947414109 695727616 960829585 10004773 333802792 631292687 669694267 464696138 606326177 15361429 139493609 933391348 972317671 567839144 876003016 648660049 660567721 48810624 900761897 972424232 988726350 461587512 625822804 35822599 74310848 766456770 819951495 4710198 450780034 470195006 827777680 708759875 774689884 118771949 901939214 209349724 389198487 526167267 608115946 401333719 639143427 261762954 473486820 882267853 927444470 112883843 182233466 774904163 936623090 151536083 619499009 920047331 937311876 738939728 842699273 375763247 693175622 722437275 761212041 128769838 223437615 108624326 862594582 156523694 938896663 738731373 782947051 60020217 355392107 699148655 746506015 92058811 528007812 598652094 919049842 384649979 878659259 551970995 760261896 760700176 945711979 951724860 979342075 895833796 926932512 866139571 947780788 657772320 912449209 431953524 607763927 842869907 850396958 585731750 883948312 106780520 263310171 572843382 879659204 80179323 288175271 870451070 910328434 258268131 729466748 483677376 754123699 544557502 592145078 703053066 893350802 753165878 965182269 54805644 855543079 52128022 155950265 910224691 927952561 873894494 919688749 827117049 898477670 743440865 868073237 549048181 955573949 33834074 351122894 499646086 706416920 844301851 954427642 841983293 877754761 358630434 379735297 364753021 831981669 879627246 983611519 867072450 995688388 859436746 890589447 938128664 959162360 834523915 951907896 641015827 930475388 516599130 632916227 865010419 902145695 1469475 640899057 747538362 972925437 828278056 980038583 469645687 631201766 229111962 748089800 608695568 762571352 177812846 364294916 15936797 958202126 289506401 928662740 267560058 577515709 68471991 416859340 698197251 889005013 317933692 463232344 643594659 954945938 977413628 998828489 937293600 953950146 961303230 988275187 66254219 274144936 729585254 949915286 543388609 726220115 282867192 768981073 131882860 393048784 82498241 669777607 526338042 884252388 790530412 834289730 410726631 961586359 513072372 739977417 345501194 578542927 926530795 946426593 25542613 361860001 742254961 796858439 285006838 809882428 61435372 124314974 710000428 722059193 824154105 911626251 936775129 957650961 471031531 996798698 837651851 896738450 271987536 637922869 101399469 240403205 118661090 564640539 209784150 944732042 877606298 951450497 144110522 211817928 148945248 883453325 155135487 208036711 429585198 690722364 39691755 693771551 68779758 530150681 871111101 988924076 57093141 545268477 308166317 377859559 661357734 894368820 650198438 743639732 378686711 787362129 415929901 442551753 111161823 621185369 749019194 909273096 460947783 905348009 413696983 582002812 244825311 710589230 505016323 664005676 427433514 731769156 903248892 948691635 882632595 941306837 135385244 896922734 698107986 800465930 453423612 705622892 993896987 996468348 314574084 360594460 134548575 901087233 528224934 740608877 801202763 919121232 431808791 604423592 56445394 647702967 654817836 668213548 133109153 540691228 247692278 745410530 105385203 515518490 416275685 756948209 776460328 888712102 160855204 491289274 112799727 405236062 772187626 777265365 238598924 952360520 124195413 901597357 93603212 423750718 127417109 863581406 152595648 899833852 334139880 700399777 890375355 973244885 256001689 499701758 638561902 669616404 806940711 869855440 249763521 637855394 137121393 825016055 508741724 569002480 325893250 669606726 631411337 697120497 645401726 740231519 403644905 430261019 380543877 426581283 525481953 898107563 690497587 907699590 19102586 616214641 37553223 906284420 444984090 896335495 949651240 953509690 77194475 568871658 708952469 819049447 65605222 718354738 602381722 608406006 968914176 989416942 478005459 584980439 436137139 472586862 804835404 986473854 181648807 902727280 430008988 685554036 247417991 550978864 296794171 967179098 602736812 762590550 378010353 409910469 283216654 989169725 101617907 803697476 865097622 913159486 493054587 825563527 719083544 871035626 5949537 124900912 170179151 191471021 335291923 747705285 491377823 620108329 766174680 925573401 927602509 932996483 908360668 919060601 286498196 622790738 151439161 528553739 900787645 928075976 717479862 802668958 265611302 683789955 609327283 633109735 565643609 598639603 820910597 912892433 964796470 990092380 709232104 976798418 583678124 636919315 64224737 132183916 700960212 739239720 894036822 969065249 513383581 514982471 799437258 820590081 95124146 821418547 232600691 806328823 17914062 667588432 379311512 630608513 847151672 941540665 514816825 888194035 135252416 897947797 382232684 664933538 420736054 712379749 857757029 911535949 100846616 339403629 122035456 911479596 670389545 715313314 360456136 468024230 133126492 685525910 118495405 991656143 891421100 896836581 686773875 714785158 618051047 752600714 464714286 734419524 247455569 555657457 208072687 983384214 188210772 222044003 497933175 539940465 167561866 440514485 660018038 957909346 863687083 976109147 315946364 485639976 428573567 948216242 523394123 911016688 434112420 533182917 220671571 821759558 831450535 888233928 747814698 904261549 735970898 906291452 961428506 995411873 986836472 992342313 732944586 941148699 169269248 905319887 29242294 923851957 698436634 936223503 418167259 627106267 563579038 610610841 217442938 529880663 945378312 993455673 996916090 998884089 592656974 984892217 22170602 273182634 570460113 706946942 381144383 943034152 493473646 623091419 26959892 416674771 117442592 251886654 654481180 857476258 206336531 238068118 837241581 946145439 374617425 461769010 38546754 563203310 264191987 707023233 527296884 785509469 409823315 434628302 53138698 643628552 394977860 582035966 732574013 952542605 392944289 529493453 699158455 703828384 748919093 997948926 513313362 590340066 526663835 704501185 146715862 985917376 840865722 936773324 38932376 884634207 314112856 847018683 363046264 906430783 551069667 824332770 456875782 481711811 971363508 989315821 307770809 311629483 296357798 613693208 834906223 872601286 267367563 369422096 156536659 351711613 434194479 714947011 521949175 985385733 4367637 698919138 138676956 427472174 989919964 997471287 483869367 914506588 103138779 738566833 591382536 719944808 536017821 645073996 437091837 703555394 145917346 255207608 932357597 994596500 754334675 877604228 272503138 591824514 820100997 897620228 396764090 628191394 368112487 559512900 734547521 990340724 513219150 724985750 878202953 953463179 981117184 992406195 885749720 963438791 375791270 562022759 96643127 929080662 275977743 926511105 992225745 993144116 475654809 890017090 843434027 942684705 394105806 794958864 412721775 855108076 642599461 901770328 718391723 835460484 949124453 983103827 281023011 588984495 88412526 157833182 835998213 930385350 859496253 861741073 8407738 372116273 153685782 681858041 589227533 765524059 169357953 426746681 193222040 674507230 977333743 993958148 49262746 428070679 951293976 976908984 190175119 398393974 609566021 793930486 256747828 433147427 911137661 996917703 142361341 566547757 6887000 11963091 261024389 386026585 635013412 926714343 874235210 924236864 371628181 635857911 918674680 953167265 888349472 925171731 621535566 837563125 743008520 845947739 940601575 989467724 30658699 256500326 77227588 116623735 141363703 835363296 189665899 809970954 769418353 892660594 381548450 785440884 163271881 455392269 937002642 963105104 592388245 637448801 703716571 932274607 574831501 708081749 454665170 993594386 731389734 777649116 684984172 843259859 780394796 860607049 608372145 731181460 996531450 998773190 751199801 884224076 194837163 744777997 268452754 638018898 746641452 747424729 376186993 806334001 87061793 417033903 316119443 459128042 527477315 883957024 431937962 960199822 813607976 996214085 685116946 777273004 313743033 474981854 670937535 947390599 64686284 109378660 849748652 924891112 21681507 297289844 110362592 848334654 611121819 622984380 4719405 622386519 762924485 823565577 877851575 898235018 658002713 690257733 386230572 674159337 210762300 621422582 690181958 899647499 934453736 998299117 711819177 877824961 68282530 115312888 695364910 809149433 865950109 993405457 783424395 985426986 174898626 856305203 975366136 995255853 977667017 991034952 187838406 260974494 551871210 801530207 213794300 939918985 511441571 710243690 312321223 776337026 641302385 646912207 697773723 988536927 796312200 984483595 985178324 992993742 925229715 937362312 711352994 942244890 663860646 938425932 162143618 427961120 616436652 742014598 212799627 649484432 389540023 540558393 779280506 884701778 424331203 819534586 125615975 828733665 840715455 877491120 447305428 721314891 970158621 986450232 887132521 945039569 894501404 965350456 455950466 864609335 324942030 477628073 929853841 968130137 292058045 982091503 883032328 888392318 67315948 716245703 697861424 773902082 464620776 992754397 367913048 947425164 159190706 261480926 609727334 854027505 814093519 906197603 593678765 802315634 36206663 106585636 35560070 91072739 135885990 492072897 195489831 514183455 754744171 854842260 90351357 259824122 38859681 677741598 84219487 961202343 710784546 724782126 22256733 864715323 490374780 850105590 513363121 772116334 417874812 492407283 545722403 609809042 662958567 834733689 242248967 893070219 861927155 863147492 913756389 930689610 596612386 702024747 469569919 759320838 784650144 993273907 683548747 799597559 734141356 865471571 780645233 816299551 894008976 989771062 709589369 990271080 119896537 632168420 426919461 476076501 723239092 833068153 286830179 847357828 17126092 416839188 525423807 658146012 889727877 963238857 46217503 69898586 761889876 832822472 542638126 972678989 462095301 497972802 996264790 998008979 392907350 758939577 398325056 586669630 470420652 735762587 110987979 196894923 712950108 790902046 734419545 862829694 175061673 817148626 487225096 668726580 169984157 725512567 992443616 992654187 670428719 975267761 395935632 521499471 49744686 690110549 875487696 893262656 740492642 745081684 716311569 733793467 198399481 561046769 643735393 672680760 337012274 898478647 942634465 962040546 842432313 888734451 481340495 770955072 586298697 802156615 157926047 416825547 535399661 846843654 533042086 772995409 347230022 611592808 419725661 721710084 64140965 172612740 785737564 927725564 208702329 973302567 542725977 726107212 443357790 630043906 784550699 848488390 670163977 833336113 648060040 675505695 811740200 949518806 492574649 602655235 643781004 895659033 721806532 839430133 196427233 888782150 20261130 47383121 550687776 841064939 772456484 808210234 683311457 990662097 171388543 206577220 770207628 774593079 498396551 677374076 382417436 842107958 51057434 276233229 766449611 864168923 180799275 785849235 41086637 461367669 138161529 589915315 932108223 952782156 737710646 902752606 662390971 789883020 146203611 299774550 825209300 982559306 559245761 597034466 381730797 583970929 752319049 896828373 974718974 975859130 20410923 185695990 146019882 823895687 356875657 431939783 243612687 888627550 172110005 396779746 309246255 539886990 904622098 942382238 892638344 951300368 132595417 822565181 860185202 939604423 19443350 489611510 890629871 916317706 770851217 916207204 2061570 992254412 273807765 960128663 644202608 657634490 856232051 896861524 418344883 425369300 918289374 957919654 13657551 211845858 525911904 748478102 114825524 629902474 962420718 999136950 925927535 992122882 206239680 686718526 414888447 616254967 576374946 827352189 86215420 404461695 89006025 859543274 140609699 417302600 827727358 910595456 995423904 996927896 334822474 692435506 392328118 958698513 331879465 414135641 882350670 996186506 1444867 884544603 658502796 779730067 118594707 259197441 57508292 331434816 793989813 838518677 579468843 905109017 292151933 323648304 112666510 200901337 319569681 440506815 739011726 892191279 339456464 799391248 12459167 108983663 398251877 667926931 450389184 707227660 188335955 714544475 91530937 118205305 890800423 893996225 56401845 421880913 377054157 913366539 876358064 987073367 254974931 794147627 131674302 316506998 417052733 631779564 771832720 846049491 643551800 802274305 878169444 956279401 791425838 933940956 97070173 417028076 686964623 920526774 478866474 712988763 953439061 960879866 487108699 690195782 805061438 873439890 227149444 793666079 555876766 955177928 912285303 944575154 395361397 408226104 212742548 778620653 497285426 946791801 114922075 942518608 615395403 739263349 980790063 989539307 860887275 894853375 577705422 626221369 344723149 488287336 782873846 942969624 868046399 963017173 719412563 939187385 578030986 980657467 555940386 836144087 377300471 550877461 43702437 470875951 358909243 512062834 35412172 541831501 535069339 834024111 853031536 853782224 780554613 892293504 849686030 965633311 426702429 687956288 590275481 967583569 268638060 519955183 993077458 997545868 342438175 635861707 840421971 885534461 896314237 977075727 34398097 428091623 508612519 605185653 973859038 988929346 276725561 520465610 975255751 975892929 305083439 670404387 219993145 688604161 761446282 811519251 607535760 802582678 881118862 959143793 577264043 874665916 825775296 874133814 931449759 931774723 87756455 818401406 669709984 870820605 364694978 748159167 545969239 665701958 87286475 439063731 606230511 630234824 953083756 986431038 740565440 775676430 94247146 469159712 782513966 889640599 483839203 860650715 801192218 983472295 422447986 458179401 216709906 396341508 714078460 756775693 132267421 605176207 210095887 315181530 99414198 734694482 992327416 995900918 898856733 965754990 374644582 449423897 750796580 805329206 367802198 605135482 494015759 581684175 390312469 835880981 418143705 802663479 924498475 952353468 987802403 998004229 27779103 572022380 565948998 636558475 527210743 714276635 381693647 458340143 328869574 947696726 22185350 146313380 525642330 697392725 464539627 976335740 865482875 985088132 838390577 851527577 104780376 793532809 640016199 992844410 915516757 990479518 930271039 933030408 197099395 572827120 866518369 941993527 797068634 925569795 49064397 58832119 631403475 777930669 745032913 966625478 676937119 880738986 713226174 980131096 844041359 938746847 68027189 743455864 801315744 807899328 26843176 41325098 267478674 773429764 237761164 648881023 888080746 902322611 624357063 838854070 101460997 218745763 937444508 993005340 245257881 484370508 653809522 877075290 375930013 825462367 651336264 886789718 59942565 232640353 529933982 541974959 120586273 980364603 41796229 901427452 413561293 957005791 758922436 991368488 979557264 997008225 820007702 860723233 156866797 647032526 646343688 803696409 353734836 412057798 296289380 733557940 39903885 715799797 418774154 577655446 299572060 555359517 418790489 747518731 960913818 996318649 110210080 613539217 495185087 988779846 248465350 293298548 429099638 567257015 832462525 854652012 940569193 983910633 252356721 377245401 752298945 854176839 830998328 973617950 179532544 802555584 491663146 692309426 866990214 880427012 902334825 945789688 412222545 532044247 117437236 924811505 66183169 715481947 29104278 702369141 307889098 354702447 968985006 997896902 554582883 648789085 845893804 851179667 248506341 335938225 896265910 913734508 155214131 594219939 289533273 465552151 627359781 998658616 720711267 898987168 936363020 944713671 975822560 979496773 334276114 948540087 11016727 679061364 603084482 924893732 431415899 619605860 120297209 319426350 283785793 442569272 272838949 565389339 347285494 422609174 430509268 677430652 663189814 713714192 776146053 834540539 24688387 382159226 471407456 831558193 343948056 921959753 973861302 983319100 145757910 916356506 24860021 371709418 122526696 432836090 629330012 749268909 873089147 915759268 50859489 544955780 505805727 743026310 675066718 972810403 656417618 866153467 838426188 995179160 592879487 771526053 678378520 949132985 927959157 996248873 437584234 978816080 974400850 979710063 100996707 777690182 478274952 986059373 767998792 950623116 971540954 972726938 985451729 998299563 555364652 650209842 325173392 527444900 730909651 991877987 594131699 958592949 304432985 849343776 295347987 623696671 971287379 985454145 171166677 348052278 126882326 298775513 197143319 875607932 680997082 749796171 288148711 468738627 633175194 748489578 868993926 987074416 647372504 661018338 156492487 985562104 529404931 538073475 224095389 466147557 901401082 974315413 737229276 907492988 968655547 993843413 744146302 932274577 962706639 984534077 817189222 822510176 526005262 989783706 190359327 256262627 942766215 981692785 76993484 341158015 295317740 560666064 628134927 982536375 101665906 539511940 606541225 932989196 757843540 983121845 14002614 889223349 988663 618857621 363668943 448826454 95822113 782723379 827607808 899362439 819581143 976480077 352236279 943663545 816768417 973413907 821910286 881528715 686748454 752490299 901840614 903627406 59252742 236527450 905516974 938835984 767450425 830247799 560026044 709944905 30622503 727276472 590094763 948939817 207828342 729608261 599344791 905492674 326152513 685154829 166780556 715368191 347681344 671344162 860553128 887361779 144471983 189421225 417454679 878697578 749747609 784368299 193209708 920908541 571793001 757323820 402315458 665864786 962636248 996574010 952635245 979505785 692064775 699679904 529827181 880982870 217344460 322328340 798536553 805596496 936435809 986802914 406347411 804041753 48955713 345624503 144219265 734822178 890748339 939301435 263353595 810232699 552228232 813746345 384047269 418410169 267268155 359961636 147270407 228809837 599991291 996754651 348120110 507075328 677220018 704764870 514417755 747452303 391986258 583358042 741632658 775686141 125668558 839486585 154760882 768788026 143149272 482967086 422888455 572581495 60431473 372119205 167149285 320620530 559422071 654310044 38477814 951153235 88367365 729915814 561894238 705598215 538174688 558877648 945687595 969726944 43593304 377549429 969210671 981787521 8311696 168205227 964169172 982455218 963786159 967815573 346506755 745041457 784332958 839596885 200022473 464152286 978272548 993209983 275691721 766592441 464368278 697251849 720159516 839135451 513277017 607542178 768805834 947389545 633667361 818958671 136578628 663662877 838570790 863053564 436125518 654781692 302942935 713871990 608719878 665528095 815001429 918447268 244698855 569226754 200885902 925151076 319468956 870870991 783722053 915594075 305699084 340933708 375110889 437466780 965677974 982977271 129873521 549032741 238725618 726667847 544413843 676586669 121351674 181005671 287610736 975037587 490896529 784668015 964888918 997820024 408984903 764764955 987399128 988722651 914372113 940215924 503344939 967500414 534379382 993413301 444009554 509887065 186819733 267883725 4854858 161934204 609130378 857423104 847264554 887402944 404394668 637000817 121307078 585987642 367406804 702422338 737995213 928936163 157107967 921103113 919969255 938343748 620567630 637395122 121573899 810505831 887861927 934414166 384414488 536924073 198306419 935696410 70630700 310765639 574204824 972363248 251588986 799746965 404253653 687649605 56238038 172502259 489429237 757883673 200579939 542588711 808563253 870342094 391353002 929071914 351103419 355939574 193403068 634462135 905825753 938680580 74562197 835325324 254997192 723405420 861427875 892931202 127863325 918482668 788574650 802949069 820008985 911658199 84467626 446916154 697512330 898825117 189864512 253168632 14051315 692859783 225605405 388621324 977827363 985762287 924557976 982863192 911577292 978515840 727374776 879785160 872195163 900755738 201805351 788908718 109341586 703675268 56402398 993860176 262845937 470554989 335340287 599836894 281052741 684406979 186152499 499728853 234590930 492136168 682152877 698668279 214359125 916246404 500389877 804700693 257918119 796904835 358006259 679279540 733787837 813760561 420080698 512306921 956631639 961903240 147690965 711390256 968405885 996536842 833640154 846196950 498047589 720139696 797196933 956359550 32424734 907435735 259823093 676848022 28689617 182680580 358438705 779923264 544849507 825107498 707684038 838018579 182194869 557540176 275146096 888237608 859438210 979828023 455105386 560221225 267239252 641741035 85459246 992139371 246731190 653299955 306254572 522767427 542106393 685199720 278490669 969159204 607536945 892270047 862035546 990391651 104760089 708072603 505586634 515115284 575531905 895610890 357955940 949890032 34477142 355866055 745118233 872028268 510193609 560607581 83987424 842887245 891523333 990700989 900625491 956582710 434598994 848311985 941856703 944014173 878646124 894211195 843630348 870347981 785813040 941228857 775802869 879352114 346150482 863645513 880813375 938932862 914596316 963728938 771535642 953643215 60670674 411004154 527809912 758841880 254747125 974832708 280762144 998961849 540589453 624519600 495300183 516245016 952598725 977203048 358243086 814012978 249157813 499092163 160679297 639271311 360583596 993888199 101498915 649627106 659346989 831749740 331219819 822295761 13429684 286722425 990856376 999286740 36182232 267974532 880608120 880667805 60832754 908579114 706665078 818601504 785189287 793253195 873199371 889521198 985722549 995859020 318437775 327785467 202445475 479606217 880239697 948517202 868941584 874087101 468667366 996348639 825585409 947447715 311584052 500698156 225959409 758128562 872814036 903530948 384731768 774445906 987850725 988372367 223901080 370794316 418646455 720595041 793770424 873346424 483399860 673321548 754095437 882053194 317339836 452230366 378807624 671537464 478268064 528281278 816342770 895370703 3551048 953262169 6494335 134468078 219554401 895496932 655359255 995418922 26720876 947770898 354630661 988429049 162060920 514827961 642668026 690631698 213166434 731507536 3227265 376271188 879142771 982806950 601044005 789431432 912062161 927364100 441008760 785016393 339742254 358019154 782830994 904155670 208741612 417115172 337017201 479118706 477570786 487781084 505485170 603284473 489630110 887086423 94926293 192795011 787224038 879181623 680387324 715664986 166845386 909797451 241279076 890487943 454743656 666077326 483142665 577003901 325264951 645306111 202577715 618812487 964643414 983835982 159536361 885375071 579178717 742353297 103666294 284114197 822138333 857663305 672882657 846622025 254112972 356867231 735835300 794201430 382646094 451139583 117387919 873989169 376782796 697467895 93913418 691099641 589589688 897681913 118837164 241396237 225990053 884093949 996833573 998051259 482419900 903414805 696149443 784676623 333106254 829109208 3222752 185727607 985481160 996241001 437104244 769849659 296066199 589267984 357971274 533891620 169870743 940539628 646479533 948191140 733910545 773477739 48947872 926479494 699704888 737407500 504033404 514481511 351909616 934186790 52145577 889185992 695308382 762789020 330098584 679433024 986566632 990734056 607627548 766844422 167821021 453867369 789956569 970589071 149172565 320747456 282408735 561568967 776091276 965235294 431188280 941848320 676855633 765742866 756530536 936004201 309451340 955613979 867255642 900143337 483913196 762013672 623871866 775575220 84056930 367734612 138857430 448626358 558268619 662515911 858127779 869396735 935743100 966407200 283831941 740000067 307000074 702163778 220843294 632233273 180817532 543594102 672694045 767507625 530723485 670666359 408851169 786354598 12984356 81402711 443964442 804503734 922255182 957802015 118868748 486871641 696491807 770335796 449218498 923707174 865570229 904890461 708280910 988139527 912256256 957789974 318272384 794489765 782404132 848387668 668668891 941591268 404176424 468990742 337213936 790722218 669535781 810325590 546458740 592934127 244407172 586185848 575121880 635076653 628872057 945733720 376168922 993934192 850632840 852573076 139277814 911273257 22963525 286966790 881191636 939821193 135700327 569434291 507918045 858997384 235945101 814258301 729637361 802566665 978073098 979928333 98395756 302453070 345258408 781069330 693626449 988735739 519982939 938638296 750697900 755010578 178188401 799806146 415382629 600216417 42503307 303113453 503478458 758267207 643943637 779489438 306868639 676900244 327139826 416982564 102437693 167341653 509842536 746240181 717999177 730437627 237364672 475018853 548430338 826618260 336370991 877666344 947468395 966152928 795234456 981659078 924280381 985836764 559241991 799775901 839617925 854755779 803315554 927990983 998032782 998356914 647141036 855902731 387977959 703098099 529614684 922295195 726730565 773424093 726472913 948850256 277099500 471645191 349877409 613438691 422735135 534163012 479349880 836025906 489926874 790030158 273762779 467604714 803603698 886634603 838040819 972395715 951652549 961552387 500283215 645138364 746834627 758207932 459421997 523744269 367477279 970420300 642901608 840941272 131022651 782615191 663558293 802739391 887409021 909058650 468197230 993595390 806127372 977308489 460439188 972064301 565586962 833722586 497774971 890149785 114148078 192373289 393733357 402468909 615518239 821135716 774159376 774696450 414681799 783688519 697440109 697691036 721225551 861977564 685265630 794325176 247404178 843342683 162714627 799294159 958612392 984859112 861054000 891345421 104745668 767967997 794970246 896280843 861596271 892684539 349307554 702874002 171980028 307655504 665094407 918302030 690487206 774141465 959415595 983747626 890519678 957213629 722412507 901593590 634269110 983929972 953629727 964205082 898146887 977131299 536322392 548347954 742058473 932684998 521030722 572279516 960550498 976441732 298270364 811858737 556010391 749027737 540253327 676672746 414348659 849807254 840224246 866179791 953006739 966165603 49838896 924433040 939206669 983208915 251347403 629984162 569215974 759366569 107400866 616079925 124230726 325114317 932969376 996641765 450501216 995682201 824891846 922695843 244670137 530928137 684613785 991990413 333694650 388164494 781136138 943740554 875420593 940381061 780198750 860988239 919385841 971608775 624163906 641306270 647807956 676403395 104763323 957262777 861842914 872501008 190668133 242157071 436364527 653399260 373231048 949116524 996723937 997893156 77046166 230255483 793348438 914855530 90372767 392658965 88700361 442221128 504567931 706258000 825834572 925178739 925599534 950978175 62571624 656887294 413985326 606265430 505369428 708650769 647547438 940421610 572975399 729348397 477009166 515652143 20048538 885479291 820946510 830222732 304171193 791835725 689479794 795356356 644005296 819046589 680652425 794548895 382830889 947782265 756146513 771084842 552042980 832853131 391549899 436611726 312014342 622080568 961674565 966394982 868016107 963058657 138344244 957226583 649608526 928267648 940162618 958130451 966906345 987073081 482783386 940629948 209614230 421104327 165740238 549162830 801288363 883233501 7613396 551986508 307791577 494241248 525810849 925351414 35617726 506204155 961938012 979675193 278991789 538473004 531181845 736953849 849803528 953246100 582666076 946474116 650425423 953269755 861318819 948781535 141692372 333038300 631002803 745921564 956819452 981606499 331722367 761420799 592777996 886549837 775362607 982193224 518687133 984893643 575444890 849053559 789382505 857879272 136920638 734078564 254526562 257063543 400851795 921287527 22600870 931142699 745030153 870856302 815448983 930447539 96686115 285516563 932872523 958422814 493411318 738425459 649070112 870638250 303455975 533733306 841866234 895842147 4059167 357390923 689614932 713268443 910299581 981949318 657609402 834131207 636164323 899905971 708336298 764334245 153719696 166858772 362799171 751178542 151277173 784158402 350541283 583775527 978596258 981815390 763100455 787603520 377725854 553085487 362215222 446321580 294509457 501659315 650741539 773470006 912800414 929100811 716430219 849022287 633368421 942330702 192804074 531273704 214741408 508434863 271681805 680922410 958066732 994147342 258764720 851053081 632397029 637060891 401431520 451070445 810270695 942309076 854710053 971676891 91234864 637634494 989671715 997077690 211299797 449630208 778155125 832954894 233087056 836007439 796956743 804688888 462789478 825693305 893963465 939034191 151753326 337242262 292536375 450622621 968511698 990177335 307409764 929834501 721927953 966731445 997226104 999310682 604123624 764202117 6316327 115643570 278853779 554293152 278264378 666441983 921835049 987545277 441935956 976218601 20770333 485198561 106602916 543835683 594338548 964597195 723763100 994428220 484699080 740228045 141742679 825160865 258089914 746867543 141267051 991088374 861927462 992905830 115938499 646263379 282649997 720482661 32514579 128375124 105976146 605855780 360452468 403476757 660766825 922864748 176111849 882434950 643093472 845180466 543910161 906099536 435402607 555261158 873056432 983606707 785764661 936117093 534765076 559688407 336857053 943941595 464794914 744478430 677555730 786539724 198590787 936186867 396250168 986021014 293557131 862473606 206645293 616482111 679574161 978144170 348582642 796221441 553625886 699838528 792064882 988473748 681194726 805957997 274086328 760584874 508271419 890089642 311773471 313981475 128387931 350518584 363888673 806172355 328807912 643256095 38724531 554793100 584305391 790792289 633153906 880473842 767647139 867065017 618902444 850184395 459238099 971855868 153441685 425701993 891431650 985950023 293019690 719030492 43232794 338287965 285080945 331278044 744716021 843667032 79623966 921386827 123260863 306407972 570231033 772521052 4784070 408104433 599599005 981222072 682173544 878882900 393629811 550083093 560870993 808883156 259421015 288901016 899415650 962470944 713489567 890154818 819455566 962600654 346908169 756318466 988320944 998867426 99262825 664687312 681761565 689575728 857899190 899882362 326817855 564327320 482622192 821712706 474574266 602871520 239938728 269643096 617188866 691946634 723099380 928005911 27270067 742976154 501151100 920461666 534061634 601449137 452649195 854902003 650173205 687308243 16003976 70214009 655077252 712445675 306026818 644282865 398809661 512019893 440321406 950445019 62065602 371538504 743076027 964465846 67290558 141368544 107403486 434128906 748220788 814360174 730721958 757011874 753562120 777844524 514310291 609199879 913124766 974872684 486146174 819048883 495125463 502473053 324417915 745986535 484151007 671579409 119109238 572013242 257842062 967228355 746889028 767798947 9253953 619926123 309053396 889795908 928096375 968147899 783057864 914452490 672456936 844474030 616942317 926431049 760574744 869552129 994895307 998270384 386248052 634324084 369845688 969735798 775456955 820106143 104368830 653899868 642949154 815683802 341997474 580168529 260340662 970003794 931622506 970775132 328364927 500736027 687613029 845686093 398101550 470976110 670148261 933102745 498489031 723757681 148058667 672860109 180227542 236081135 894535725 919376490 229220745 393024882 81395147 958899718 371422303 924650332 485798538 987959062 595730659 810119915 923721034 948456349 965955084 984667932 973617678 984293313 345882747 938417668 174586656 732902457 562258184 839952339 133567323 289820235 253195441 476821218 366984959 789189271 409981947 415331778 480942738 803627126 682538556 756294674 374472617 509374710 213834039 359633638 570226990 791192183 104868824 570818675 507258784 817057852 379184637 990281410 610534822 996390672 309568487 944540941 339870994 721766596 541521892 634933212 658102975 936386736 6411481 766226681 333888309 840314070 117184248 410061489 196014504 799279470 693154329 786037900 416738364 461419927 742898593 977721632 119897437 326727994 607640176 694071354 433820388 753763347 865306753 913298611 617669060 981938774 156942985 354991087 250469322 819736843 42992075 968276519 732881994 903112096 159712673 170536589 455419504 758310138 769489025 910093580 890881540 990522338 936699195 966913181 31910527 668896498 735654227 850735468 155367165 337059419 145751957 171356371 250957399 493783610 753618777 790827114 814573098 833217704 356386527 526026730 469798736 786901914 675151455 732099483 338410564 953536429 496478424 788165628 960957519 977632191 164293425 645349165 772246449 943948196 974523212 997385674 83581448 524949984 689912469 692892156 52987253 435332930 793568197 903653564 761875965 930377055 658227985 953641287 291978866 619923380 521534514 879118195 690707505 824971076 685891394 997987911 822637946 914122298 636559077 760298242 639873423 647676210 908467990 935071077 314365285 795979197 460580910 997060682 796246342 939882583 339652041 420148640 780535549 913897180 527616286 979695162 256263961 635755543 397796960 763536010 692809200 715963093 621001958 814097926 281238384 698134373 121061097 470689505 986370057 997470971 976284038 981536464 35509458 862434268 412507087 830118314 934850960 939308083 882529876 894821331 280362298 720659155 512595081 977262919 577573673 712767879 768774922 923871842 650230228 853307662 285460925 501885959 570043618 654082217 730368665 784103115 68092676 840727618 792229082 979658084 598713317 866322975 540676440 621681527 981837945 988987400 423206976 973233206 131327206 696144687 983850508 990043692 473634442 587716042 52285057 151904783 11816088 399246495 399195846 603841392 994151001 996670436 126705841 613743187 630932426 847559564 605903741 794688578 38737537 124494485 853050677 936177796 335036582 508693880 530078191 646976325 900397984 919543170 590188848 693736428 588270259 654016043 407643725 535164243 648591319 798500337 513700049 629426566 960429684 984640707 395587657 945912094 522605606 667159504 107400331 212614646 708326561 802454004 210904109 367737746 925767156 944124755 824095105 831928288 681689332 985081168 419599384 988582662 876948902 963062210 520464784 775974500 794604312 883101987 177305406 535424059 415816083 921156083 415663365 811236127 229634139 346249824 420804027 509310319 959135182 979944309 226165327 500261108 467857279 596072255 93263193 480387111 679469972 712724487 208039052 655530628 795685157 939470945 371164342 998554039 82706634 152931124 500709418 647204759 469349738 530173607 795860777 860066459 502719887 864802983 263612168 303236943 365381046 605224124 461532582 682661175 952639477 985384914 396118488 434944482 515423956 925194180 840279029 859206465 628775235 936496865 274937631 513376973 84884329 804137596 52169148 366454169 210933743 338864663 658998616 735959401 57833364 690586095 676795120 946437048 417668810 767024672 688583745 995850484 234097555 313829872 155885018 548667273 125673009 506847971 346089701 451783567 209785592 933538082 185388433 724010732 312579580 803932117 396921608 885877234 974576243 982152762 82598058 396383463 552819975 804198429 290453830 728562956 90373043 753638985 500186403 594018894 597679042 677056045 484550298 847240121 630898707 793100940 264290029 794667270 375805251 416999904 777448570 794417532 881801751 952315145 671234612 813589541 311472333 437734514 652670370 825633123 746265490 998637585 176056941 567003910 987912762 997305549 658537052 668850668 303046394 928618741 326505892 953955696 584320589 633228176 199494554 225270240 815724374 847989737 956884399 973302665 523748169 595375809 256350853 699660880 92577289 945066105 663646976 957099968 897715207 945726578 895200850 953247242 810756757 939076752 717772510 882524066 338594434 564069087 428449739 970349812 3580929 281668031 165224680 224250614 391591206 794856241 183064592 324310381 724964863 905719010 545583572 588005219 998046489 998596083 573669047 982703793 800598784 810460547 697434704 937710187 735948270 924743077 498939113 845952661 351753656 897636911 764980940 820024695 737137434 767655746 201830675 554054684 12199917 405719050 153738277 397294301 768732422 810902123 221004162 826556349 854869 591214091 881260964 921911426 17335381 841795026 599564193 794640495 945338817 968502973 537848765 932527608 753784614 908025773 98286547 785426965 321795408 709956027 766399490 779182686 57492889 331411357 372232997 446102600 614032084 738997087 390381109 782650565 317547196 801036339 757077030 879093150 152786202 768495601 820741991 887426166 947650794 993876057 262451856 622106407 759010308 781681227 629407102 691748349 805444795 937328949 762953627 823483211 908813779 968456333 139018725 279897297 796135700 906307820 748130446 979370181 529109672 973940485 820721752 952027457 772357357 837247856 516126850 932634405 341459589 898354433 180581436 491440353 85007279 856258714 271151477 627938494 426373567 724151372 105355065 375112488 277741275 778231604 622837935 935722187 843884544 984684758 435087612 796069524 11858590 600509045 213418864 403506810 134731813 768061705 193714639 803125473 748552375 841312594 14502018 525359793 154280443 914826726 744135472 802441637 810336744 852088602 897486029 907276488 17406202 321888833 29291670 57735594 648916066 709085376 574462254 693012345 692513381 854809065 848392387 995258240 942226393 981508919 599094967 850239994 128881622 309143478 125466286 775482763 12197726 597915765 535339491 963317890 675749997 950117939 722157836 793094712 257886124 725941104 779183478 878689263 240651994 625166785 727396444 893413269 114384145 748683703 251500147 592469289 127950464 501177990 215892919 945610993 761309075 945494273 581720434 769545641 78328225 335134917 505410351 608570845 184029855 390523076 704545416 866710553 238780970 509190038 273000348 304364498 619539519 957228639 263029674 821126316 647743357 713229799 103312802 531648397 642667071 899140069 503554600 588564800 420244249 841553020 391517173 405851411 15750588 589524085 86239183 167507881 137493648 988215322 713355437 851986628 871284571 912562048 143529236 292193812 681916238 991213095 344471431 698684972 303862559 425989059 126674678 663462572 98780628 918906909 415659255 692829841 10376419 961429949 8991587 892419907 395049926 816137964 161463903 785775146 615759117 907479994 883135616 887196521 354767910 921360095 311233236 666181461 593511298 605374033 714722457 982233338 620823950 951238772 237406741 681116441 353078081 468906130 624077989 862826721 802517688 810457161 694198173 744034917 345264944 760008664 962581738 976890971 535173357 932620226 60593101 474642257 654346260 863935223 381370161 821383686 217102080 973704639 303871801 811546839 510026887 920015078 401290385 770699523 448308071 617565081 53198437 785156894 882053019 945178782 598133761 598997242 800130080 960299705 659509149 716514231 778448917 998850118 493493876 598290139 365825128 501048922 382811123 875606287 570378274 922925952 714540142 810265170 568982430 752190467 461768530 956233841 383621807 974258749 781737781 960020498 646698269 656498856 214284646 247951670 574375090 848899031 849153977 850009873 808819863 900668378 147142204 876912000 932586627 993046322 533367491 971583340 271598817 484046765 382713765 659203170 838492208 904727388 197402796 471303642 770245378 920537416 395087380 740008153 663075294 915995847 550970015 953098271 650341023 878048204 525153694 845330960 881362377 899508696 957396228 997865280 55518537 241775307 743620606 925217131 234937903 898424406 614313837 777494150 451740877 808980911 903804165 929767873 867228037 882403216 120896520 829770374 540853023 678638607 161194192 984193368 205899000 488379524 345250199 805400811 514370237 694376910 771542282 886431384 973908438 987113715 436725377 579242005 594024487 956683893 804563252 852650121 354273874 627559689 246708884 710177627 507329400 850834859 93769040 796262564 511263692 989409811 82498764 597322251 15997425 407307799 414969351 942985810 365962139 981322163 748262417 759756107 96616344 402005224 531305343 876181951 473548444 680812112 428424158 668576096 157679447 978426907 430148668 548317133 37558031 888434863 48137528 772641895 500363530 862185299 349103545 939905173 877324049 897797943 140190180 534335217 133844748 603112850 599881499 771036909 633438840 663078910 532669268 647989282 970232754 998452385 358318118 937786617 874311912 966121128 471141985 865830579 620970181 885010988 377438719 901883401 806196129 954737382 881158755 979120804 940100040 985421053 235065218 568197423 551980572 562067765 381998916 790991404 681431133 889141035 964483685 986485905 349328901 610894250 794447714 939618066 626429187 889342579 589789913 610068170 925331524 971548286 253331288 365841869 361293942 711802322 733820659 908307348 141102800 733646700 861398024 975822089 209956092 994459329 169863204 332587945 52437705 127304035 120860603 213385489 54045509 448298978 163496373 414322470 277768848 839544422 736208875 813791233 163197737 791353115 242955866 419196175 963242385 970683789 734465078 884174748 915657941 926581443 267482884 915212341 304506868 988672683 868668227 916964695 81091451 702046945 266160602 441392983 969973128 983309927 759710914 779456403 169847015 867652524 138128683 184992331 49617690 468297819 616714231 871116367 324472339 679862623 511661702 725048252 317873895 565300960 629164642 950679415 763209886 765007739 963435709 996972475 156526259 744283078 686946023 904801518 105348704 681766205 601637545 612998630 813261533 901153648 30683889 787137596 82683522 169518606 381964627 975324740 998478028 998794709 631365753 934695552 906734058 975851518 436489795 591835584 338504120 719575870 885290638 958925328 723488900 872620270 616304921 691166374 419876692 786089191 153927213 933793210 655205093 860080871 272491656 450487862 934824105 936930752 719918625 763490678 61604631 512663186 755280707 967167855 645355850 916000012 305846011 827634755 664243528 719029921 792521689 918502427 408683360 542438758 654877848 802289800 607073280 858857226 455969157 905524827 32348137 348037812 414443693 655297689 782114580 879733840 230243345 344435835 194404925 224874870 342784626 854969259 926883118 992288356 37774662 351435541 418754301 612814120 917126027 974949318 392744370 404291800 157739907 781714299 358994475 945897527 140879289 993456124 564605408 624749303 148518221 986411703 193334443 405764070 981128152 993602712 850229124 979777221 75753942 183686001 888504719 927349336 473347772 987262696 509296736 692463556 309069572 495446678 223603410 814584451 106483333 841578185 200719530 274283634 51357416 162840607 480841045 898364846 412569846 678417622 418189745 988834932 375608874 915035916 217358624 523465602 909377267 910805485 785612287 931730090 34822287 989531316 599086448 906762613 156249712 646562462 259124373 943736072 778805922 934612218 497052316 987371391 348069677 778677816 968150822 995411464 171335198 603756829 833001496 874866718 623481532 914476726 34559122 170032906 269612918 836832885 825697003 874118384 588644110 824145397 840482851 943982517 37817699 651768566 76101165 321498710 675152378 743289488 562671220 769744371 766804567 892517238 435758193 847900109 185053711 916262092 590902414 793061724 867432714 982401220 424435526 948385779 335322450 858800827 849646490 867259410 61699406 818897870 891397898 965578835 115951696 781077824 374647799 729639007 157991059 374204970 956738150 998420649 716242848 939223022 832878663 997932252 850698294 863347767 723938253 910504138 548517491 690163555 414400176 770111895 321173888 891458269 993011463 993680687 905584995 935356788 833156440 879991494 985953222 998936839 873279661 885973484 586587433 760167542 729356121 730624790 211980383 910972694 966215618 995057205 965257092 998364462 377956049 872389869 938621439 969902351 942603013 973643843 675379352 680997199 259363895 737021838 531510844 982334592 582871590 858494652 518450089 697733237 168224400 737336746 126251788 725472244 917097606 918947399 493574398 496712647 176504411 535200233 221070513 474041956 919039148 966857841 570194400 613442107 246181787 687768321 581059378 832023031 917488010 950303446 911268998 976862915 699696954 913384285 227012150 289284400 244199055 878620922 546796367 653430606 839536909 991443958 66410262 511794343 430686359 641069971 751195844 778040838 393007227 901561000 443769628 503659798 244383815 941994274 54430524 986518183 798622669 890141686 157017424 988834370 691841094 867642272 58150807 800242742 690779751 709967383 793969110 849660701 662754458 750113115 500795594 804861709 807765634 870237920 172364026 962270761 756878933 814633399 678573760 941588096 764282184 777459652 646361063 810076868 200292222 915420449 513268751 747087883 139185391 300741161 264265636 880590557 668259641 964273724 559246196 672827105 869844219 944597445 367235888 815896548 528600947 897749967 731512924 949496942 222537267 296497104 648382967 923159750 132826419 137520563 777387007 886746954 989641112 994720909 426353231 763056825 390477668 801212050 840891312 856491667 44110338 171250242 772395905 911988147 943891736 949386319 32328811 469221658 924669639 962607178 256252808 788193803 369732789 437763660 405982032 552244780 565938785 642254385 377429460 662385595 735887113 966445526 970763545 998618161 861492761 862916555 632910382 792257915 862041083 882781615 685543004 905211744 258168539 698921112 542795171 937363037 529502430 705168288 834021737 902036390 11654977 56567405 33545456 932199441 465347646 614549221 821293952 935333679 485936258 724555906 493509212 795399835 215955068 600088960 177994356 394663746 905019629 986921505 514793559 914091296 290111801 500384881 777792953 854150366 266879027 359731634 789989894 895147218 700605646 865102218 770815606 779670301 340356861 487981467 177670469 609209097 707300579 733400413 801479479 944904233 778053557 813738366 527201978 560439880 657585678 860769469 400374463 457905629 568671602 723195423 584595000 968690262 707357154 728920994 556902202 587513803 800318788 841406032 690528088 788027212 18996046 456685640 206572861 389828105 183304622 860442459 46826627 492949809 94570109 440808795 343969991 424196254 596944839 681373446 356780511 598241117 348755181 805534014 293710606 557947872 458760042 996779714 83106631 469778481 342614331 851777692 356414620 536706373 709496844 802920974 368165514 742216339 394157855 937548471 154363163 991577892 745619291 832479604 624474204 918844286 599222543 761352277 406868173 891251239 615208536 942704279 58475208 358402985 97874354 569732219 165361909 964326585 74438653 838958892 172150848 306885302 629454302 836536181 474177462 742829191 694884568 753444200 187071469 214821198 201792696 891378544 886322617 941328377 836956026 921083068 757411174 844699872 75809572 649782797 702224028 935363646 374384796 932968112 123208387 368784758 501181402 790962770 774535565 937625113 419048877 596759484 834130812 977874352 749484703 930324288 120787646 727021156 784185470 867896141 942270277 965063905 150658331 981954963 69254418 639953015 859666967 937501072 845529901 885569967 164226753 705836607 2608085 30318221 418420168 598260983 689174716 758183914 845722988 967365271 51573351 565163391 457639776 636661837 343478881 440900726 286669960 606760583 589065282 905203417 369816730 633950144 392802190 511383801 71447431 340585304 721823928 782502735 162276535 519486166 58627331 692211021 732214779 770822851 994820837 996821318 378902168 379736567 46794782 133142987 972584376 974023891 196593917 917741982 465897121 629347810 775091237 831242683 198260729 697625539 353623759 564698823 622189871 686422160 915150677 930545590 130076680 703198103 362625553 907220191 645749070 913193457 369920339 739194666 494364824 883699846 940945784 961834991 363709704 734090825 503329987 618128194 508382886 899165705 776100515 853757253 157556521 620140660 174569012 827703540 754822486 952347841 758976424 839306018 846453617 890600838 337473580 726597767 147978041 565307382 180145441 436259456 205931054 882016285 512399512 747241479 113820347 354416310 394254375 409124767 439959929 833397839 570211208 711992056 629592311 943602968 617265775 868048872 523302862 916085003 710749550 820115147 740952448 966446000 644856848 858731633 29559918 310242503 203775292 304544088 881155296 956619178 787899839 834005521 629152855 731866372 124897041 641621430 578618966 732665926 602775711 757257297 651694122 758910741 119600242 320098444 605718951 699266320 696078698 945124433 254721944 984942922 851806557 852197471 358539382 605514487 432143948 522535847 281523167 301767822 113863340 987351908 29705344 509407062 785364486 887063036 234062426 246936111 3348701 250497890 748599316 748730035 827205844 890351486 811091653 917111753 716818492 840851456 632952107 693935523 917380592 974488892 817943122 834550178 433625196 450876919 379384937 616872887 645776910 865124369 795534902 990229236 539174275 818702037 353707002 380307995 789210333 928755011 945809906 975122244 980730056 992488765 519000825 701179795 792491000 802329039 799647071 953816988 668697061 678027228 171060137 816637925 127941425 396283831 22571607 794916367 50610601 480273511 140808619 692256964 8040179 884596659 748307161 763333144 62423553 742358542 217430675 859101162 838492681 977237767 119859263 933387376 384903519 573422707 267725296 323281899 651935217 997881874 174968548 601936835 140110295 423734111 779590750 969247135 776383370 960391264 399217488 646725861 180876098 280610958 648788008 726052290 826284196 968306910 410446578 878186491 530397352 887309366 174517806 434805642 896156860 966270567 640478437 917287513 530033170 885896629 680640371 951604539 509534325 880734927 299532206 860380115 232936640 316297343 506319107 588834330 509161859 665548264 477548327 514896030 533174796 958464275 447755593 738092420 712491324 924452924 371289396 376580827 280248695 700030567 336810548 736105808 520127217 569458142 698872730 909161921 646294828 884436403 68546391 486900577 146088927 787194522 728748530 914852614 605784871 754128738 83642793 931920038 762980123 978327501 825875574 957744800 834881413 974925484 798800207 819598732 580060422 608288428 837713270 851388531 356951409 955303437 424954858 707860074 267042654 811024966 984157773 993393918 611611245 866688276 17852432 469248009 823586136 936433073 361609095 587020159 851541125 869059693 156777714 859991023 607608774 930400383 246090946 904745131 207034251 934022725 940412403 957403194 715301772 901722635 338669131 974352508 104592042 291655022 65883809 346098991 942051974 964652333 285904490 737233089 492970876 648369762 492461699 997237612 877405451 930602538 503963187 981643998 307914965 377685680 600085766 838041982 498990558 596502044 949752898 967438351 971385729 991821979 183120523 761453098 520312385 624258091 92772067 332578823 983192397 992994528 144525078 431657049 484598989 775291429 449026011 540709005 888533568 945177019 502708733 898929991 623891170 921911789 968396097 992637929 572418028 751034374 818217398 891920619 576348671 844716568 807103167 972783775 114325656 120753780 428545941 979120959 364463775 600927059 412748057 517699188 325390855 620467438 757638951 780571749 11460181 278577931 471029776 567739893 237571850 926872267 423908864 574493230 25602232 491654622 687397351 746021671 593144614 834121566 204859958 622590073 280351290 505947413 588552654 785887858 240440406 680757910 906734889 977068769 245798324 399767520 964164704 974584555 701563463 810064182 213344573 907757939 718221201 810478944 217757635 423557215 30740620 708377766 432091640 879707503 541152434 720264750 458089006 751250748 257637533 260439414 864136495 985218196 450728634 621871034 127264464 762308840 326388693 448249731 783882432 808157759 645038042 865261650 905223523 941607377 806117858 986561894 130966714 587358570 177320883 820595963 129118400 569637293 496916403 967497280 803191354 811972604 337259073 939036449 934875905 936077215 539208077 704607234 565229680 863325992 998523163 998557056 290582602 813322032 442574561 798804539 270698040 740928184 346182231 783537664 330131001 839375379 349472955 492586533 711676706 872821657 775328684 972384600 533401217 955756523 415604751 774567585 542062229 973798326 740588553 742920361 384915902 919618744 159590924 540716046 43021352 227524507 858892483 991422986 523237360 637154041 600908266 979138333 208083402 445723255 916421414 946148614 178689424 275786966 983822987 996711576 597960428 856582000 764691150 921847272 923816242 960781723 967181405 999382685 826712804 942236713 3229074 698391716 696137595 982183843 723785524 770257326 411049381 511483557 501903245 954085765 944044331 969640531 546696201 552489749 971188473 989056443 662271300 866286459 248257926 254298584 812240278 957008418 925029496 984940586 846111950 932524024 807317384 811588831 721318678 728459983 447266848 670728459 39468650 178563171 206384528 397488202 111976610 170509999 131001848 151244539 693323872 838436355 660493430 725017459 846393819 872289921 427173208 474482606 934267839 976847943 439067432 678752487 940005147 963777840 415222559 689271835 757216750 939488922 544284392 873879379 520321718 734954364 268171142 457523487 291811729 837408986 884304966 904466910 376770368 866295739 223842118 433592214 602505593 845349311 621689255 658173160 263200975 919592437 671861134 744294500 739698060 838034951 929811212 952303970 744088892 974586916 532953800 778892552 306280639 521651905 104568955 529389719 83742738 573707504 624742725 864077503 583978015 894875324 643243090 998608866 156650955 868800790 450766127 733352475 463743052 905289693 919018540 991076279 787157100 885143053 414549736 802015313 233799719 650003290 496450435 820127009 530362106 856166688 291599348 545914345 13425235 475292733 876514051 901234897 345513148 919884419 212110672 500892693 90460921 211533336 316242112 691377712 522722293 984353912 767141465 893303590 152906300 281946738 87450758 280668380 4367146 27861211 561711998 886813619 840887948 955733083 212595757 388578966 197739316 913632611 577644649 816739341 981224433 995264379 856176010 981168852 768654420 941202741 378474051 680753330 845878784 880248325 755082440 905233457 318953276 953928519 107366596 839236251 12198980 327285429 764116740 897443453 793889161 868335435 236859395 429953548 838855971 871414693 681527189 939191796 715598929 798233392 993413368 998844381 340869454 983038377 677577497 722107713 81291393 278157592 914929902 916495585 141248959 786107583 740866166 994508936 319155871 526063289 602730363 613036968 360148161 426048634 622577793 833792291 39564150 942603432 281809710 688004255 445820549 748582995 457145583 597953988 481375520 905027471 975267556 979030975 949658095 997461554 266962410 290077944 418143737 672689765 591779441 783033996 970473985 994264180 698845600 840724647 203660831 940725225 174469425 945385684 935606651 988721704 390324774 501157487 418584876 635715351 329074196 985742180 790268692 867121687 348362406 507371470 882588081 974397556 817251869 919877751 960322169 998971974 385973905 411915329 799860172 989950447 550484806 955740651 451326850 816626616 634093440 634608541 32679878 142921732 854004278 913503783 194595244 975665008 397737473 991779665 161904579 530618720 290476467 683629079 461364818 712412071 605440990 790444178 680599334 705968405 64139234 347431438 956376169 998598565 619919232 709305486 453519858 698881076 984993607 993729951 944299664 985212765 422197405 841193427 33500175 959327873 612352547 667155096 162665730 767931590 354678478 579531811 186432616 305833178 810647876 976431652 579734353 953010319 134074045 295476394 108717657 223779881 62713949 819212094 700354141 821555136 841683056 988845094 214444086 807856204 637954958 933308559 299153126 922867905 995808527 995974445 771969664 804185486 504145294 741676384 850158376 916888071 17884011 594716686 30761980 424986899 51010742 387274839 868924364 916915940 463589363 802674652 698346001 934973178 193390254 741082769 815430316 997467545 889356298 942343064 339436311 371252793 433282346 481076077 964867746 987076104 86108643 888859804 228069755 648290848 188526561 701788183 350706165 524556205 816021354 936133041 644387408 739113172 538153769 926832172 957086037 987912745 952301447 955981200 706320152 745862976 653976490 931886007 795321504 861437839 760935911 803864949 337342929 688676667 94848276 873852838 607806818 957139642 680091994 958531490 935572676 946993975 921903799 929172008 547134674 913553430 222556681 741974196 119573574 836486512 878343812 955445320 756894078 948398400 92697929 976660028 298511707 710570940 392850060 407399167 299086049 579685337 193475828 885505859 613434665 832204096 287443016 571033385 40709505 900326223 602937100 665592642 128121270 494396328 931962258 977925145 908577478 983855099 117416292 578297926 259131957 772352199 947597947 993196611 984587875 995301874 353713678 989521537 72216473 713671302 180339120 458005984 866116353 880375647 172342457 186231638 475109500 780781458 907976648 976334716 535456208 966071003 857298354 988543532 784949937 864731360 588252059 595532012 973176752 994794535 313478438 714064328 649596629 744165629 506036311 998633917 120795736 467850036 269244879 949772271 731482356 964906212 133103032 352607029 91752745 759457175 564632064 937467841 337799763 424405330 983827683 992025023 695939871 938985717 851332104 891948353 933877883 958128375 346767816 624823225 992931278 994488869 99334895 371231477 38068710 459157246 420668825 655019273 372304201 486095098 744236792 792055473 499652850 912555904 991875601 997612118 518750329 668552357 813705849 816792127 150885985 574554084 244775522 913422662 813879871 886300215 82430056 354516189 923144941 973736128 719325616 726524526 996893590 998763763 642070647 650831159 255710368 966819747 505408681 757291777 236612376 817443419 814122430 885983293 508681062 900851970 124971190 717131205 810297612 860653595 435262857 537307224 107652309 509883789 203028676 595714978 549248532 642495772 999153042 999195123 77961824 487693238 776429708 910010699 548687512 742861298 566835346 792921529 898272390 941341500 861554769 876953637 536974990 743460636 461908244 980658617 376664360 929907392 409993914 812081370 7619197 934130429 835613562 976215753 247023045 901648096 481342659 690763005 600592128 888616417 914629233 917789640 951604715 957094707 730682425 971287888 651664687 833516750 205030806 467613039 266796773 563386981 714036085 924809580 428443962 661184669 53435125 926646404 567828170 667039049 313218470 394434949 641787805 919031467 56572446 844730735 961303024 967253608 716987334 814621977 880385252 956456367 638382279 702950196 872057361 916058289 216490784 829177611 398510051 801460735 826440463 948245817 213637947 990162071 970251311 976628948 31505602 166122767 994757035 998277288 201557455 809356959 667127808 936182567 434983624 925537203 387555239 459590289 282432000 424341051 444618653 843666710 290154730 547295266 669739972 687579174 747898170 835982938 844447504 924346302 78067754 293724164 657555081 985182158 516889762 806819356 609817437 775341695 444886986 473085340 846055928 984164019 903978549 973158997 140178900 360987025 359216325 996304073 229381905 364014656 637055176 868553829 795508671 798640561 982699330 990821384 612697466 687192417 144776838 423698939 520851329 826045654 327900556 858338366 975854170 984885909 739034890 753164233 96219887 855552120 362163624 555448917 914136242 961155696 285705793 625418617 346007573 810212471 59301538 221863782 25836984 609023473 580853142 733845747 685369288 762943332 267946462 553457893 765798638 788270940 638650411 857094450 220090383 449301177 29715074 864955479 371343576 586173454 314724014 917957607 492554624 962748789 607354174 883620803 919590496 923593024 981540979 998082623 456200884 797037430 804696104 871517897 584223096 886058328 372844962 864157685 961012641 988112615 714540004 789895082 393400258 680175648 367709992 815086193 226012486 875851157 229158621 657864831 618549495 687540124 108366397 698022539 568465078 825609459 922745988 980245737 823782307 839062971 170244768 493882008 580320773 719446395 53169887 983817514 806948540 903251155 607994260 818985469 656058780 909969214 501901943 853308309 770115325 943618777 917823679 954658362 638570877 671188458 179725370 298319923 520243432 590447716 562198811 982484098 447917058 551122295 585460652 771602955 384644911 593028788 975104360 994609652 937894115 986280997 971771145 974549397 29797224 746205814 19203887 260848334 840099945 926421701 737683731 933548882 385317613 807357564 236814601 272606833 480996366 524225436 62525152 527641046 216389461 245079936 425709338 620133962 442362148 730614680 678238682 807468991 303819843 543654461 969834986 992063456 555093771 727016264 362154251 723495096 785069602 814722833 793742620 815929395 353718311 696454414 748756638 826795261 281966985 486115082 927678171 981271418 177778870 378238327 50245084 506909664 665261280 802716860 26614798 192667160 14173682 212023134 762666713 908212569 313581168 844140094 112805151 633406163 65419996 117377936 893518714 950435901 236662130 398645050 596859985 864358679 328584698 961329242 675216970 832046027 903488999 914190440 490336997 657989109 723609210 804720305 707579418 779232562 854458511 943899314 751450227 764093332 335010907 672017499 636048676 859825442 497618441 528746587 648405688 945344486 972427026 995558529 897773192 963280715 44379874 280606330 190848591 252293465 636051072 751662728 377967178 781044852 117687523 166691516 348085494 391498020 98049361 177424364 770646709 952547209 234578986 310082235 514132358 988025007 696740036 988168494 996591868 997944131 991898021 996265631 512977433 811429370 83581905 447467338 710286923 939705566 855049473 956312367 898848670 907929144 61045029 146611033 573646421 776155151 331201033 381795357 398557087 655944048 970451921 979203056 698600193 974353405 724753645 807387197 84252326 709068532 373127587 653018767 712229843 766511438 289938093 725021752 903423994 933471088 605147593 772097158 374118638 655456197 198284343 548664892 64292637 118768999 28982505 267886284 118390797 432207569 123585623 970089323 110124904 959497128 415000898 814112991 489934736 926889698 569156523 890825621 517468175 629751325 77101113 289291639 376675058 521570511 522267908 529808718 375113163 738210750 82034021 453435943 423308383 609740933 496944721 505999659 109227640 412093495 845145535 985360284 532556895 972588771 514396249 761030396 730464463 829367094 54938002 928395823 998866764 999161277 955260944 958354402 493108700 791768643 713788370 983058103 291033260 909072403 69713721 840279753 354283327 843141755 984019818 986759054 392922705 930887354 600717885 832737051 867174100 935286998 588376451 760535652 882993041 928103144 524452604 758624571 759056369 993187097 137763264 685777542 935731729 995468388 256186639 512970157 530173882 558879674 907880843 949344705 335788906 561682326 20374858 440775752 151488573 553292023 318428876 811659413 738197339 879788239 974489830 993486222 824851201 933312668 454231578 455845445 199634030 804384505 153694492 193423958 485028368 837182418 833864437 993963646 190782505 428082838 758872018 795386198 872847430 956591293 590254581 719369487 565393282 991689385 621035973 628257912 7886120 782375822 286479785 765861949 66266485 525682474 540769522 885459041 528305400 872946242 671662347 946394688 54320352 363278807 951740573 995673268 955555551 962326568 596659499 994692229 102074832 900034666 821318531 995239118 343872432 914067257 458050458 511185693 545448519 566458043 469813358 500348189 520788710 753569460 13966918 322673406 17815191 270490300 282209614 657789658 125842913 271092240 430978867 450026639 351254692 992976834 641937429 910581123 343098990 394713450 945741723 951402920 26563251 856336342 190840551 298315245 201351016 940104807 762345059 797969448 100565935 896650969 269116830 378858220 335862848 365217025 681493295 742449532 983248409 984649104 704125895 748201276 992884895 998605198 151961932 986936990 685532107 959164301 374641884 636893909 788804044 811160520 140382048 826089167 283554077 985029620 636146705 983968822 567999211 960085693 726377107 925465228 224656015 971868012 219244793 777614513 527225696 563969671 459565270 800501393 279288815 898680552 848108056 990517588 411005991 715098753 888510613 909277480 154642846 629831723 311537309 532368343 3481865 378298560 834757360 981754159 939937859 957517394 148784093 707120826 225520017 692027070 336352866 957452636 80657075 110247614 658354440 753981919 298915388 312571047 211857807 713666102 280255889 749639708 232396321 789921484 989401920 998034786 989292310 998217352 569746020 840273545 827621056 935520478 788324377 888610523 389662585 995747938 880539807 924104492 206150047 866619341 314444354 506431460 631168039 982337752 494487938 960077158 662384656 727200623 389193760 754086025 473874598 571027859 964514144 964780357 235559504 555718149 325738103 403688092 708887090 941957455 525505529 721699053 529784264 901582106 885398925 987472886 624712661 954559125 351635784 399340544 788193640 931855667 773822453 928436371 905808606 955784763 995232823 998600824 748572691 876073010 812578496 895997879 760433216 855001754 260665005 996659228 996299865 997750799 648474731 664271132 430000189 712259890 525032129 554881975 712177718 941278496 704159140 761441846 661093963 768233369 87683281 662725210 737938294 877539811 192927816 225192120 503389792 546607273 246222118 910648507 3937659 306941102 715762730 908172839 853994548 940485297 750284208 902846388 508396837 636949772 513110380 836657928 783529965 809561785 712357210 829927093 772125687 786604785 739950951 934407928 160476953 221215614 226886482 991838434 180058265 510801001 496392799 629840359 207793411 877024614 715705984 941294831 374562579 737629028 501439553 734275210 595304196 846142192 713156555 988099777 995591371 999148767 139335202 636379719 114744763 495416439 318431099 740063908 924953411 984579098 640019364 691064466 342798850 855502033 624647910 659753376 971231251 973949129 770853795 783151709 705616700 924787701 861412464 960824755 470972641 883088516 438196663 556137466 830356725 866995725 810658361 949277462 170131420 250318317 250178291 363211452 272154542 873093534 606243468 942613660 373897657 590002043 482772988 568871791 495754878 524999814 75594440 947970222 706075848 831264256 916866964 981370347 770306181 804173214 132859801 438308260 644774960 985393806 139785034 297025234 736364176 962607631 588845761 757355594 637941856 769685059 936785131 970318881 938593996 967812892 728814162 749070815 393748407 631513047 346327170 634792418 313339393 423505256 594920667 899499829 765237319 799107500 627691601 696962589 28355150 182468680 812454477 889404482 23827141 756411501 736253196 861011264 561873139 730822257 349933482 367319268 603379168 746760009 825598336 932180858 397737217 834361489 481003300 753680629 582847745 921472331 457333803 613441151 946057618 965372301 363458908 998678858 47210855 417972232 114544960 824151226 266339332 857604692 639464041 730257973 405320146 769285618 714100055 831187411 210064057 503852524 254485203 600774013 258192824 973735061 980982465 991678643 266860311 709019634 650697134 874955668 98014021 682357879 340191186 378612674 788170625 809777231 882502511 968017598 412547211 964893502 800551436 895303793 595292415 964705928 653703134 889732071 404904384 472972052 211691450 760066386 980947011 982620898 422902709 698040215 143970036 488779578 813922173 939513005 420823726 980039623 372402601 937567451 413184745 982432421 231409286 764972473 835340674 949583809 191919805 223691521 293387699 904149099 272588778 285685823 384680471 634138762 757453982 938663678 870310018 939227532 283182257 946455115 879572324 888504461 764349386 838087817 17049867 950954991 327489126 438117074 366349967 760054585 244780190 849094982 679030384 776764880 447956527 551336824 188066955 822514280 600693183 682174386 326742210 652027205 402181575 897171540 264811789 917523172 865339926 962254292 303825830 440848104 693827812 989544342 957699936 996339160 851473929 925799497 366084271 674766118 316731413 911799979 742800642 987339620 212353642 715728182 363764294 574068778 228923989 729647998 596635122 990945961 822797756 928400240 342629305 607153596 774631510 879536339 320780412 468365512 136933173 907481597 556105907 644087462 326316325 920020995 360675500 928344405 426724778 576052657 862191457 944023480 943725714 950095208 93568913 489403146 52423832 55391280 446306207 918291554 621244278 908528436 117906469 502246582 212360465 797442437 45184363 482932742 351037412 977877800 985216322 993493025 527200822 908947458 571577105 648983113 129177049 513632544 181193433 921606725 515176333 846374225 301389254 473371336 897347137 935153712 74772630 350702476 380517116 681039986 871964585 878064443 760341024 763534569 156276464 684531089 324110763 686884640 904771434 925806348 620025061 793647619 922573480 977200394 530385119 580958732 764661379 853968101 248029951 565876670 64011156 104813556 328528686 424340433 595599392 955204510 815924457 863858522 766686573 950064098 963067527 977879934 272166540 419777414 683569946 931987935 682197522 811737477 616004516 906420161 354457616 923854525 933960001 986819420 775371375 994826485 914335516 989248910 644238074 856362584 949418454 992820767 908322622 975275614 329546315 669927531 803110810 900726118 772075890 904921443 401372373 655049378 532878883 944356813 736372992 918624306 447393440 620585743 605518345 609244432 977538944 988231962 299822394 646020117 268511565 798731291 975369147 998025579 234299614 521633524 818097419 855543882 102840326 188999327 801444338 829576964 220168292 863235614 167373682 209121048 795515798 857109681 450187039 519343709 824873496 931883791 682198743 798366288 919468002 929934286 37986567 69699004 836909051 949345687 390801957 940112664 851289116 903704826 193085161 217250008 867004433 966680900 63260813 675052038 844010699 984382574 384565735 963268669 333002701 959542569 635443516 956780691 312512539 824938036 584517543 885262194 857016612 866154597 667098088 819612723 598446141 737581846 49633393 801375180 804341596 805333280 907856325 967709093 779338262 877694052 26321153 41074165 614256493 692156895 356881494 849747376 957632752 977776133 422606341 786606996 668776845 684455951 500505432 779597365 327331342 540669788 644369880 956504991 180512928 897287059 104483938 305438720 268671833 431126648 416313305 619542532 269162580 281248963 196876016 727770898 973433444 986885479 247267480 905924428 439843954 533953344 990895259 991461328 493115981 779760261 870597586 978613135 934491520 936867183 206645344 840117018 497029638 988979715 141439228 587643899 157301901 235836690 319674170 338183947 740057674 894180178 280267749 599364148 593127475 876414636 876235410 912486362 283075032 882435788 409359752 607596230 766429839 867314484 349656513 916076871 836200850 909489007 16538184 663225331 32636306 696292783 44968549 397943224 33889142 136585346 748388587 866468665 938159906 943010798 406405574 580330313 219190358 788808164 341540595 552231416 345036586 704595576 267303420 344423879 94306204 391275225 298311497 940282330 452638653 816765489 945587956 949742566 440901343 631497235 322202915 385850804 304984763 713817361 794303014 945245971 455906143 462841100 747277415 783173281 11883512 649657916 424945186 432358016 165360302 757479112 901350597 946825940 287933708 649309867 20687589 637171478 350455375 606372852 359225021 739800921 312075411 988444602 708844486 854585658 790798774 883107493 816636240 920718970 339340502 340556560 845756448 902256232 845642710 992985270 219056826 285587367 830073853 874772940 180454651 886673995 177791281 538955815 205589685 965079050 214131335 347564306 469086504 817982642 404313387 660109801 395761445 849943653 928977287 987313663 700868574 843719555 640353809 722005404 756626390 855562100 286651674 436273003 220591115 741749617 324184621 830729438 779870126 976609517 363442268 426826292 700846533 964118139 521249388 781702930 306685894 599815322 956195075 966457503 89713432 970186294 335454987 836263839 860592339 878742463 896182429 935865846 116405427 228093276 360716070 603834691 649550469 659868228 123663537 243837301 357774180 447427472 628488352 991023119 703101105 881503879 151289823 483338168 488434468 701434057 425588291 575843065 319411625 538739141 357398869 835488898 561833984 934488256 499556754 973303710 695859457 812167015 567793515 997577472 704492159 881657384 574779694 941582065 269717770 903729007 110634186 779518844 516630718 595703813 918730599 947322119 600616746 675764398 178628139 320941754 329647161 952793913 127478647 472303293 591713271 938076967 476432360 991436608 613614032 676897910 800397079 997336205 692666265 737596538 590844599 761896211 277445128 462123027 461128956 734259159 927099053 942021887 323724992 563732476 654160356 785300797 405271452 869597473 199822692 906776220 492952034 723068593 994312364 997513866 312240018 443573672 402358369 814268505 176072812 865679260 710529895 851299860 487706875 512181826 155537148 286292950 626636042 981549273 912357109 913097062 893126241 964602514 572025850 821059399 906604700 975751287 52240475 470223550 434823555 822305445 308736526 468835108 982621146 994108933 967330954 972704286 470129498 746221574 670028468 873740611 345075727 636520055 13839564 324564210 749134341 853281423 12421106 723861937 513548960 601366400 441855744 646814907 395387410 585658242 460716023 795458022 681647545 805425303 200893290 517260153 554742672 824605218 336075409 459281054 870621654 985541901 398020826 805841825 433572818 812523619 63956987 472658737 583420427 737638331 725591640 930476995 134213308 389409674 835614075 988567025 587683753 725199262 627365596 751950857 707706428 839239943 369593975 601355874 709178681 956527957 881966467 884326191 698835489 798210692 508801241 639695817 380193878 954873413 155819722 617726959 101706677 565112728 104714036 949317307 804026698 974976525 323469839 434905902 4180428 327322894 104851963 745793853 352286705 920964898 393054874 823595804 906454715 981570055 138332643 971831763 686886044 715673990 74023292 481709959 471898571 839711505 456744901 921532829 599491807 816812629 751697318 766358232 180381483 948956838 749137368 834302319 4301320 921349341 526843492 538558183 788925520 850303188 98606878 986401642 5215405 556737706 509179085 843953849 819273477 824279728 770684202 953021693 707820047 983954507 131482820 431020944 661969582 942583475 484401278 997734123 492804295 524254240 66510306 790754482 276379557 551033625 412297584 986387757 58677810 129508505 322339597 435515508 149516586 579880139 114547130 776892716 2921078 86357893 453122005 611518831 879834572 948467221 550090093 928399204 568509876 969074390 232544065 420110848 658900913 659189945 672944876 772997860 458619643 557542717 298074189 884709218 853407228 901272051 701044927 779555836 3089261 905575522 72377853 778366773 661017093 994990949 831812739 954389418 84641004 924218190 777408938 821769240 791154357 922704654 239203752 622037731 570514406 694010984 390918110 661202256 371395514 441518231 500808611 753637292 466714703 944487609 439842880 952171929 295594119 695866797 301074969 985296570 775433437 780969389 478650878 976986385 496414351 736306685 792299016 800671841 845784451 904037818 720646390 797590150 703352519 844022405 592031181 787680679 941802900 949864937 634270368 802521817 446143755 547108506 483291545 914270520 966905168 997724330 550427413 911743779 737701896 904109491 797213242 870344186 16292057 705946408 156067245 658304983 908164966 989622908 604314146 862510914 339050481 583395919 465787638 768237284 541723582 581506769 272172832 605227817 786691542 814751625 755157028 899727666 103655144 503741979 631663578 936484723 221087446 560756326 527862286 691398957 344123984 397069016 351116161 899309770 438307164 615752000 929084075 934569202 955920871 990246677 487095337 975176822 931084878 977765700 372567311 878457853 409092878 596294076 271946003 445301282 779298236 863690630 965664693 996582591 271129354 588554762 133757179 252715421 380215685 394290419 272042607 730110467 500635986 907547823 755518102 881336020 902167736 926580739 331527243 660070934 99906467 572041134 242104054 444945937 986937281 990197597 299377845 531634806 17913402 597042035 686738699 767737117 780045494 874700174 245465119 972370819 972053355 975505506 984677004 990759122 14909472 556442001 191021503 553828291 636157084 943851588 695015145 995528306 474866346 597560332 792247123 917410757 817076797 963348044 740419206 905634959 224927118 846721867 770041541 918864777 909702918 929104699 551331552 832555835 126999945 454447626 474174051 598308452 361803708 932701275 614755594 916522360 891043912 933055476 233866673 667028575 68085259 483838355 575667189 991134707 510857773 917459215 627590303 890731802 794618152 905777126 440104434 924593978 350838950 507608127 761409507 922292727 497230676 533141784 927320068 947314316 499913690 903238007 184418796 544822772 358635779 723191166 229616347 783717794 108034704 111610909 710233097 840357494 674020352 762215611 277228107 362940344 714540249 872798649 599543095 686555630 640389085 880255226 172205086 421158549 854345217 973242181 720628252 832925286 63344900 894340126 239052699 307734604 787001562 961057129 642107535 749487204 490056730 637068667 675172172 915775313 716824447 764488038 469909086 480187697 123700938 214689406 964672093 974210663 475132242 724128677 885933696 963889523 158590056 749233948 995693891 997995994 771355788 871291004 535956681 727888103 198966937 727059695 660508626 695189598 613077186 916646581 929820479 942146419 775803420 819639402 874400391 906849690 855695893 959893533 149011247 881547193 869302401 990164961 300365822 369747105 521944489 880387624 789018109 859815483 601722603 818950280 580394851 728523294 533820197 687022372 127460829 195167855 388563468 887508721 690658908 698006114 365449201 658931103 259297465 387656615 630102902 696987425 753205371 925135200 329295230 474007021 780700798 857943045 158524959 278660393 73762042 498161935 579419651 842891352 448155238 640277799 603381493 732993522 845929748 856566228 947282132 969823534 64474242 653023522 438322536 850498578 468512181 855283126 686932331 719873673 945657155 957812183 600436182 716754417 438836971 957736284 551069337 979359790 986343370 989134132 240224126 462516366 32416562 310009480 366980470 797248176 426036955 463048389 450339873 772495885 374995862 679622452 407825956 722827816 759823261 997473527 957557680 999086319 146407981 364268210 126640553 322158677 93282421 838542113 131320401 231745122 526065253 770554477 659833557 963951698 429401766 736696920 810381657 813937892 697931611 866077732 705531684 959204355 60237850 277622255 524073171 636856395 646724363 837244280 583715071 816686367 65270872 860619480 227160771 591440624 482629631 944391905 353522915 876302921 972836786 973903649 731588237 818796493 884000425 963300687 675979993 881887039 815617263 928055635 45741552 796181582 38914440 429707979 663042268 809791156 627951475 973039294 397379843 453097001 462087832 644107064 298763724 878285747 626328982 716510069 706353590 924538452 577086090 972539621 954957552 993545979 731571564 898879175 821415482 988761824 108904309 248697752 20661357 298193330 213311065 893601558 135357048 577668859 702990504 994831514 553713807 880220053 422089176 874986737 423287732 900019875 124677621 243938563 455731317 736556477 601391814 751312767 303407721 542816618 371625967 615568662 817888713 940852679 633563703 982348506 771914851 889812421 445842810 455249937 773572774 808125663 475836549 767464911 876078202 901660125 897289120 950458537 512199536 566341893 391980104 606071133 110586682 872728958 672473131 901233534 843896996 901928482 451561095 566280840 610044783 944633485 271338044 610856242 410135031 947057517 106810081 536335336 380033048 455067403 877178476 966853863 468101234 987915659 267892539 773485115 942199426 949822341 425629021 981567883 208423749 659091029 605397616 729679518 342865704 638285493 109697230 478420137 182684797 537191942 962622894 982943772 101964174 704824644 660846840 794658815 639588403 696269258 364597997 496546116 184180985 979515163 231605047 613852386 927071562 940954467 138134275 924020814 32769268 832777831 4378284 318531578 63208924 69288293 49057672 156960177 623072971 844658880 576389004 814113552 915788421 959724027 898487981 986677768 347921862 759739891 481795143 616799985 828916277 984450255 661281660 856131576 300624921 603927420 510439985 695180159 633214486 820170242 798149562 970342055 272899243 697103281 165294182 968014739 269024101 941846916 640107353 741490986 930585206 972096057 22201859 543839452 321825294 473276255 462341897 695930511 864761112 993371249 930069172 995779050 130770363 565408681 526215028 676413276 601926900 848516489 213626653 964922432 548305676 729260278 224358136 439982405 295620435 652406608 418677320 780867680 156558980 571414231 302295467 439364307 346958854 711343345 614584095 806478133 970990104 980578969 194182869 994206289 16709825 552007580 349234235 685136312 106343051 813524700 956130351 971921528 783579508 817398164 674587797 778207823 558999285 806927102 384453976 522405745 966080086 994451423 752861863 997790239 598114967 827821409 94383435 885545458 973809895 976818025 39043720 172639106 44779171 876552207 310150620 722191851 330660839 689003372 304330222 744977432 856229882 995927532 314763756 753056809 300284399 334006066 939216224 948252374 580709115 786475476 757802693 897290315 454206331 619461835 228009098 581110639 642800132 760057983 146045675 200640635 906037906 936002348 385862148 502920423 584503143 800802218 978042575 997975680 35362474 987017899 364429568 950241274 950711481 984939170 925378109 929528223 52757337 554032715 845924721 852017393 916811329 923285866 490352319 754693261 955968795 986842787 850906978 913301771 522831565 710959394 298263570 997810654 170301180 965874304 5766347 403111063 516845828 626580203 814471697 842519176 301186116 738176119 914756679 939553614 839393260 867914193 47415989 918643071 768403850 806691209 332239301 470950328 466616176 955373955 979740935 996491616 937914424 990388123 768707926 918784804 363146156 918204468 835228871 928881770 740835229 832676951 620946579 906396346 849440571 951527766 88316554 655648419 744841171 751194643 144447200 516331400 319888938 677486980 821291961 937219979 716446889 842789882 226335226 895864117 789099955 888345378 943940845 982849286 168447132 453282050 953520854 978377834 474609154 609915622 224291506 483224794 849957858 987413585 786588737 880008737 665961149 937062649 152855879 457262073 788685964 954727643 919480017 985910444 785534881 999356193 328638916 965053986 623585848 847083263 572725949 976851050 8706533 587318474 953294491 962234149 628985165 636781981 42123790 459048631 759530340 879700797 840529459 997985774 408318295 839310233 614227654 712424568 967905652 989177343 452108994 907884864 176008772 514280504 218512087 306055053 785283772 839973129 938641706 943809715 189588251 763761386 127433838 905900584 783151992 823738284 277591674 852319161 232230260 308971445 318606418 471531532 804838038 931847180 665523505 779932711 86824636 767407491 718116197 804002790 836254095 987606097 926289067 998481750 447702032 565702014 335843082 468014268 236906588 346508025 142103396 805399283 820336318 970974693 899075425 922183165 689440227 833966554 446663953 983695721 794076853 809406498 24740237 376960207 169811830 808477526 970058371 973969616 481092089 894766005 842044465 910211729 380246005 401053324 346080455 991794523 989222500 997510171 9191903 900574827 891495383 971509217 638771276 835942963 773691828 871467426 945106636 970558014 660097788 973593128 733559999 912680393 762829541 776118546 37429405 294581048 583379507 967452563 589639557 787767616 787226083 796881085 929010294 958488724 242258111 727480073 603702282 677063448 727251098 740485877 366221138 588320003 675931889 688679672 140574808 847752564 575168617 792629637 268957956 700455152 798975676 889396384 318390111 482150076 635544525 869737373 560786231 878279193 91255875 376260797 969756208 986396318 998713058 998851842 443190299 623555238 110463556 712603512 975169582 987286202 30110576 910464326 367987878 610425058 443492485 951332417 94802387 253746081 731834283 764776104 645056574 781365442 716177377 800263826 720293245 962363584 358852401 956368220 480327100 681199146 527422614 631330385 190623064 288192706 420808721 664778118 794962000 850708980 543911206 689771443 330646258 946478236 904052088 957622409 296826464 746827276 773356777 776753949 510426958 669634182 99864859 456145167 641339835 667004288 438349106 949159899 277187822 807998445 643308441 831465715 832056573 838213026 566280817 726927524 547439550 754236479 483363388 836863629 398120763 460687940 299258267 732283287 431200555 499856266 191960808 625107364 752185261 777031755 651097831 817936045 809608918 914527145 201314810 781237318 763218438 842249442 47548858 794050802 6417364 59967899 458883678 721068780 572044632 760917491 209482557 856351013 765790707 836580302 499419614 762346404 8360483 478315173 202342700 969038152 163057931 482196359 550660471 589945614 832626060 867655134 468610183 771755380 116038623 897699106 365608630 968007506 103353212 184479173 514261352 836015754 450848116 931564934 686014410 688408451 762037917 992114159 549007748 669318023 833806207 900138453 269338170 531685059 241139107 901167084 944914545 988300508 887380162 952729173 59551730 512509887 902694659 913001771 120590666 583380849 386409890 533193053 545361314 716730738 305022684 611853629 133686704 425177507 179588975 949053232 875048176 883202435 630040736 699108162 82900858 807935167 718574657 869365020 149111498 163554584 15280156 77722875 871487282 919272598 972081853 994619561 932352112 994752209 241595871 274030452 668218385 677173581 162715820 970232809 260270381 593568412 616116100 645759828 507968710 611785389 311591335 987344354 114422618 394910842 150453039 527731006 973332384 975083032 892209226 948286228 13448483 932149456 84092786 224634663 147224090 795160804 191279227 823432338 902269546 946229598 449588181 854012931 212317526 962836697 61808167 917885603 275239328 439066424 356960591 392333493 222021633 319182183 499242743 551004453 980309676 982894842 805605809 877681045 121850300 549410839 642231736 971980711 906131548 998130305 747498962 882455146 653143742 870445182 398143319 859661692 997693944 998603787 966641644 993444208 677707797 906305482 105768660 149832051 593549015 965979765 801098367 850519206 581974490 776539838 896524553 904422790 329546573 946414300 829170594 925411715 610291089 747040813 134926516 327924399 932019201 981512747 611688630 939495885 427967895 936234497 930209460 987149631 372044627 851701392 721896559 912662736 168259409 754070806 747967090 984798075 133626572 140250720 64016918 390337042 439420532 909438800 901370958 917093379 831785876 831857906 921498420 979719751 856333977 877905057 527024335 694242224 500128407 934829691 685476284 805515942 321497243 963097460 966488843 980980814 891738944 993296767 256202429 455285277 729576318 994485649 106806536 526371641 303849306 570928249 883173845 988098264 381296269 887233981 990022857 990096408 752035490 867226769 363762893 715413177 730631410 799799164 447045881 656513773 150275459 198520398 425776906 989363774 796389984 957478194 777032499 837533074 594869809 959388596 699336586 966050721 23252555 25650922 491324850 702518619 455129093 608041002 243323008 792457906 951253678 953421019 176186002 971815627 935420474 948320657 471203030 745660310 530097738 826093735 40118051 236625804 78562473 908966657 359653968 689897402 798883934 965195085 225425575 543871281 388371620 441790600 207584204 803923986 402708523 893634728 759720863 827604589 516132189 899384707 204045378 708448052 656187606 719904212 720946379 997603772 343123663 485843470 808637895 839611166 288528672 678940891 903764675 990342123 289071090 334290232 170274678 353687798 375562693 856364713 540509734 711810501 16859749 964928415 303824193 433923242 880720206 978622291 628936421 872939984 757467204 811857977 38815482 688598260 52257591 178700730 29005833 671229511 352433909 776301686 580521729 641871703 944365003 966435889 10145962 734911495 296734637 818323128 502561489 639507705 614178791 920297501 372324437 781354126 921582268 930211160 360732183 909064453 682070758 986310634 277977438 975644938 984564890 991708302 485404178 992791007 244373611 280512019 354501552 735052811 645613489 858445670 366747348 974252688 49697327 237192677 983252144 994896964 633485343 649638093 226003935 335762644 799539249 997997005 39899254 732152215 716204638 783091766 439574403 877388573 629994682 910465591 450094997 833927725 831123839 867019564 101188265 101745267 997197422 998622526 724723180 977048667 839463970 892209269 396365095 600455301 238345527 505698146 219316211 674759990 279626004 935387495 64043675 866808706 244717026 345866664 336271941 906198145 70187870 369923774 821158818 831128291 411740674 641516827 974209210 997615507 28268080 144529184 79135437 726673662 400782054 574431161 408222406 928063329 180362212 496722783 529952252 618977833 510767517 620948138 888213407 899490303 993682254 996128521 56405742 113074710 167186667 868905426 56135605 128075087 107261052 256334545 755815590 934401438 142942375 686697007 604044151 851190277 737020687 840489587 333410189 809983959 227182492 631443993 45164619 684526811 194326550 857880137 742969741 899142521 248261944 263479816 393639357 781160580 75891707 813076542 689210449 722174752 229010207 561643914 269245055 850536067 511690122 820306924 756197109 787556007 268517588 732811844 646277545 668272034 215634435 513222957 926180436 943366304 47082877 233222018 328310016 590972000 577702572 763027146 671300976 701978120 119861677 422974498 384492642 598430663 799674141 965921137 924321896 982737248 395082531 862080496 12921619 763246255 674357294 906391318 573969832 825934347 985958404 992490790 54304805 386447627 416470447 867296363 129123746 271711638 282449347 439798439 595129424 946992309 289118325 908327432 725230570 959371983 712373494 868207979 258748492 602748929 233525847 827461682 370570237 698686336 442518513 599887574 305262038 652853308 589890922 740300960 642681206 852952811 586834993 662230385 729738976 809232635 342851885 453801863 937197578 947707607 444903989 746062026 473972961 918570838 936882689 955259494 36132513 658586925 472442917 902313863 32798829 506011448 336720816 476187107 378554738 491277603 612354157 951360149 626691187 767787736 738931905 996223696 509595716 578295149 548443913 654920675 92571189 257471561 564410741 946109194 175022930 198827407 195609611 416869123 571243935 634167567 492884349 787728521 700832139 767764461 148494760 298800212 783868785 883874105 103613016 763305133 977973932 996139117 778951421 821010706 843323530 855325488 186128861 540084902 625486955 740577028 126224531 402586774 858088048 970251848 429567060 656743812 426075534 484305772 582916262 594566857 770290098 958521787 403347879 691234321 437371440 519882912 541609969 742039026 889677003 978896190 617845964 886975721 351631469 765110039 476108380 823969197 381498442 539309156 811998974 927683172 518110852 650084088 699285815 953106992 674699346 950311129 317682698 479554867 501464965 996111513 654508878 991630427 805871728 814982872 456841515 463059562 227552145 639905121 839256354 952030509 366801864 704842248 174208118 652490581 89797073 583704560 752862506 972144584 930975561 988074468 150904542 922786802 860230138 881637025 315885690 820817737 917403200 949215051 24408929 214553902 993066208 996232873 837688545 975046001 889910550 965894839 914862156 969759278 225408611 869211239 673105662 907176522 31886683 980178985 668060506 970538490 977219877 980494458 433167214 918609658 450664602 886979746 783542150 830969396 392891565 443014593 938280292 945116122 883709344 954189392 901642677 915215960 846188771 899912746 636208989 771423204 736661056 738700623 636137344 725257993 177571323 241263279 398337132 604165681 514946649 618961075 534091697 780040418 283277719 806434413 836038403 923673761 346497073 864040797 110963183 801474051 303330879 903485146 934930916 951071898 166348925 216669472 717167631 848036860 116345863 631124301 192748454 713929727 549854566 974872186 746855591 990428413 261522064 885603376 221072954 567671343 421963842 765180258 966534905 998676435 517821442 836007115 866885473 935811142 563384657 603351789 879698887 899392477 102959212 647248023 180364219 370743594 642295022 875562787 230824053 895308162 81700819 617344963 478659029 508510339 86022951 729850355 819557444 871122788 620420015 897925734 595120330 913543937 598428016 673720899 137867696 395018020 591879536 690318625 425008639 516800696 907224326 992952201 193285408 406511539 400677551 527363666 577687307 902607174 127601549 265034580 601381774 709702987 251766296 823773236 263993687 479244574 89830256 566907616 742391207 812275027 902515210 904652370 268019140 810979637 738832206 822384873 418498470 433470885 192982966 461775195 795423093 889197647 78598635 993038584 16732528 851441651 54583295 757556384 19261076 105518902 695265547 965840875 512959487 535850185 124293386 181673100 171889158 776337559 309171617 437323184 177509465 535033785 79400211 792850997 211129617 449660033 307683935 478216785 32605334 440055209 568572167 839489661 816605086 978716647 222861609 334494096 227873163 838770283 709358847 953269109 336146747 885602650 455080086 508417800 675146662 750906572 284961573 949917894 892739784 927495843 913931349 917353885 912487178 965454996 539579016 817124497 413732552 670960819 578232043 598704928 991952024 996069543 780692672 863561739 857737721 862776032 276517883 889296817 817428724 823170854 623478837 651953463 553388532 974123746 614674244 892926981 215882756 429707798 397014529 972544977 380746018 727086924 691665977 993240601 679979705 755235839 800514038 992910313 842608919 897146639 980531210 999048376 223507537 833444315 686885294 707198592 756604364 867514656 879297845 988253746 983281174 991382301 513422773 682791293 526551317 638313733 141440646 917124109 378017879 796410220 316499618 710094197 269201298 733480700 303357123 569247433 620578753 774478232 604286854 878756236 130200810 970252734 312201040 794227669 377290641 610096094 490424619 523694691 615474155 711786019 207958011 736084373 976748101 978180120 228615819 600783781 553282047 892675548 657737103 947703777 345486665 710708024 747946970 847830997 96049626 242790631 140765332 459172958 422107352 748516529 612734863 805211672 340217817 776239070 7324316 185118396 249106668 801346209 514648995 836884229 466540031 981752865 586354974 861205211 208993850 816144028 994697686 996081291 951228000 968432493 902438565 903481311 471068427 545412970 282103894 291306276 1149671 509472617 369191294 824731120 649235260 923887480 719535715 988680354 645185844 921284952 266956176 477487404 345199422 626966064 521789448 591416376 908423495 966392017 880544265 978449990 112221072 841362296 984721863 991983074 987565493 990745779 670137901 728987162 931033436 946737899 177911561 502138852 289268106 563305264 586243956 920262186 808417964 982367495 915494827 966661604 329860679 355355194 468091240 708567485 959037948 967264578 503525387 649099163 260133841 393203361 332363156 742994098 957630691 979724766 884766074 945023425 796166054 959066391 34437550 835464876 34029751 802238293 813883906 841234902 285637212 359773085 729497854 740029788 661276513 661486846 890374810 989496931 878054190 966635545 356811677 491145637 898761678 955835861 830273556 950596300 207870004 887057597 752690007 965398453 669319993 897320824 787272156 800966465 228272489 388408945 528221614 900773242 290299354 638453054 63196018 475706126 630383307 654368198 939003328 953306646 128299214 338251582 41592837 552719280 162477282 930279762 825492885 882981614 404799851 712968925 283465624 678389796 984743043 989804981 99636834 621597003 517276405 751493640 179990139 367527455 199569748 571002513 260141149 762227607 946572270 954903041 207660081 680200948 707490887 872848131 615109814 898351673 974225797 983476571 263813770 703230880 843924514 948030989 107247480 781640461 102087379 387339687 77239364 257657386 282190718 778069703 319251523 479982525 674717335 975725657 464443128 477781139 769561043 885594550 458424456 908649090 252459147 881255289 548052709 880092685 954389044 987975151 319863504 722644177 263365543 579830796 330808673 487953121 396112220 839181342 820537278 825429147 967092431 970439695 975353280 990183312 760527886 810784645 144317947 350531469 656120178 862278818 311563401 450840125 819235718 970021713 581378037 720119997 168044155 761078245 767007485 877897189 821621048 892487143 968345439 999371022 591005414 964473119 942140169 968806343 888583981 905311042 538999077 756210523 431517584 545160422 912099542 978435449 32148540 948570319 194844321 979865372 791819363 797611719 622886885 887885758 59136685 855805832 996508581 996845598 658856311 805572259 826897095 918679321 271816426 839649574 208407308 489404631 366818957 689296624 162795478 853149587 522647644 808740938 788622729 904378057 144559900 929176792 678234087 904035992 893659890 934428485 810326243 992370856 136606448 342953627 68784331 188474314 136889985 200968961 740344142 943077571 761973764 959867162 496890273 558347935 820540040 921034458 106751349 447126383 740775033 742427228 116893741 218648618 361538869 878854656 582288297 880235734 511037768 680455531 834233272 953953365 178930750 371507164 391462139 726435916 112149970 340195211 76806438 974685221 305920641 881491768 36033221 781439101 520744276 789725417 427742689 851310255 828791293 845129720 579173234 812318661 14204179 381461429 215653229 535387023 569664438 607680553 877986636 891597304 424997624 666987724 772647133 874537733 523037691 803178776 829169320 872088603 278941053 362032850 302997604 858813395 443968654 974981901 999242252 999249541 456093544 824322589 773692949 840967428 544461796 736696979 449776766 624058711 252651865 877762496 852801139 940022339 865213358 887113947 895803673 935456036 897153926 971955653 560098256 608465215 212417365 572254493 538325622 899847847 999223330 999342413 747289626 760301892 697936734 981759165 976896554 977721392 413591179 621401097 251633807 595322237 729337644 857867920 665962629 800903120 815119686 835158188 635304062 740697380 219660921 714830418 586364672 944180974 196610751 631372603 70474478 860715301 223468181 374397336 740734924 870423949 237865609 986529117 204400063 322037247 459499454 469903473 501731470 633234622 497661420 649776469 423154527 436898258 812699600 815581599 596593448 930743088 783844712 994296183 446892565 826557457 313713714 986689589 694832154 856707024 284457246 477848772 539009048 897295420 555563954 928001649 369405652 973208663 774825571 998212902 996242910 996343889 434167740 676455311 338371412 953107232 283700205 400844104 546445870 705789505 458542383 753376008 178466697 469185342 242927968 972049206 559606241 770859304 672509055 814677088 710258552 947076421 899442235 963225507 640143686 912309230 8182062 228500161 899635471 951559545 605969141 898637184 856046775 888558034 796873306 888104698 137379421 759291246 258613641 674451228 669614728 869412691 407483852 569825107 862978137 864391570 203725319 284687632 570540980 741234933 273935380 639829273 65516439 952790396 91594555 641117844 86917419 523696358 43564553 906502896 804045258 964509018 924668817 963335826 130621050 660117974 995870269 996882004 561098774 599967724 977945324 981001868 434015933 845430378 194787542 731606256 844683615 945643078 142623190 661641283 747153595 854157787 219731224 238220510 157742273 415044681 707229207 781046185 253631060 674629739 307854980 991033857 751114922 861931108 218927275 959068793 389973319 431418009 997524920 997686844 875433036 971882548 81972629 687501946 30633771 199445036 309007513 571106386 211586065 744034896 30000028 666217933 560323496 653109320 536665621 791404677 775715089 886164824 386881504 556986268 133334296 484576209 375332597 828825116 281454231 809194148 593255513 675206315 738698164 759418205 794803067 892798856 237620659 342034841 379365421 871664439 133077247 513691293 24259891 802542532 429700467 861918579 286125937 798849982 187086947 820579061 932693839 990853985 61114081 880507702 257268686 574078940 413536192 516111780 96813237 545294938 310540104 572187587 974008726 988077219 234268458 895358476 216291932 224911704 899953415 991930699 99870392 320824422 373903671 392498198 251360865 586589516 570240638 632777513 742754989 915933153 509995541 605463160 898911487 949006233 432361507 950977951 108849492 246570069 10098163 913510372 667988381 755502376 405071067 482852090 911044259 982373429 967389526 996090254 210856414 959273731 967560755 987320615 896063988 978454888 746190238 973864224 799643334 886409718 581071357 874238650 282261292 410420948 834354105 985175051 412079137 917610578 529507242 793345185 790987968 992709587 371911518 996824679 710237277 878184845 750604934 958145434 201848987 549779563 481141716 671754670 894718520 987414320 346341249 530716667 703618373 805785139 947323657 954485831 577663579 985464180 751751580 854082771 542430824 767136774 154232077 691239440 960391620 996097696 213847035 432036335 708412404 953633828 2571574 353181572 33170467 496553202 968093418 975573595 325852222 911544060 247539832 981783083 218631310 357625540 110737732 483726045 587373935 877394846 617768370 749886897 553297538 967322156 60368379 78897530 591219488 950163084 214892607 226599555 160171914 600400390 947143283 963951917 715602241 754217413 951038327 964708302 913081660 941160364 141756604 185441227 620115052 842574062 250755387 539658490 4907361 25993135 875490534 942766622 937206708 948304335 958591003 962907291 892017821 938740511 688925371 821559388 851479094 916074641 450407660 559240452 810550074 912782380 895324225 941488782 627452679 956660129 32360756 936302919 559717386 799521813 152879205 216608243 44452218 940008606 624515975 903180189 243187163 918725277 421837684 850014731 390386731 456640996 128955835 892718428 992355336 994121787 248785428 452507186 21326679 615428974 586652107 810987371 789365342 961531759 714899199 875005707 401640394 430213907 363178562 667855758 406840054 586129876 771478277 779761314 745028479 772696943 68956319 248255065 416994767 927012964 212491090 265776020 787618727 925126840 787279493 842404590 949201728 984653039 168357557 741629330 399922917 564360164 398480738 693073608 279879951 594012706 199810344 429672926 267515121 785090307 499866689 759752661 324469652 459097497 5979331 124971525 606574854 944228105 353594107 355409869 156586316 973377888 853394683 862644308 869440219 983382947 494528315 646520110 631224254 995704712 158166485 791671836 745179154 802429915 999036173 999358931 371731231 772697458 550238714 586856496 500237863 624368113 933734670 970897754 321685888 430541133 721193653 808149270 863211284 895566740 492631716 711156355 480167880 811602981 705052628 951258083 662532636 983806673 507232254 604658003 726370518 918860537 79838990 274830618 264218173 274062032 488200654 957884421 631057828 835474036 349523380 764252132 205087157 777563507 707442808 926835878 247563572 605760937 757604242 800995354 725225810 950659641 720605686 754789137 18314422 529280644 449940595 652450767 641119648 897951696 898453883 989050223 416733872 973873155 251391857 299030852 386918090 598837971 50327125 749976145 529938213 594320164 613841105 764147578 886410530 989743853 109741788 653282352 567824362 799377658 192811094 499877420 297249586 505106416 705812151 818297466 109782294 583696013 364000287 935972266 787757188 796702469 233367331 428345142 791535195 897431758 370807283 669370745 629114026 721905686 752350747 753233093 524420758 783840263 778692732 920475950 877930333 893793549 116002463 618150273 379024939 817879409 805954622 994301451 455041874 675678816 206776960 530177760 926907352 966911639 622657760 623599902 387575679 423464169 2065753 84776497 70095689 586307476 486444776 857266139 470343690 591091425 53408445 174161019 25954890 789012778 538447941 905810902 203034685 362324012 997257699 997994068 506281894 998548078 937558236 944805289 405189264 778025778 633789254 707253890 564591361 758520187 537341567 655490018 85590076 190402220 70946059 497391019 288285837 783425046 498094252 938686019 518803725 616253961 393067832 458527852 712783459 963869724 5984851 732277892 340058012 831001352 830133143 966774353 419891565 489297808 894278285 944796381 48067658 787083895 123579071 708259927 981027681 982243275 970378532 995807107 438885381 602593809 122576596 910720072 261218610 314580993 675450313 784790426 709794982 799503301 933948517 998595936 874948280 903289135 341210851 528217014 64304315 188340146 258947663 966177006 904574969 919212741 440123224 680429461 194177761 233750615 508663757 740146747 943356311 958381713 3309151 733476289 189814606 971475758 166147585 872084824 465717832 495348957 786009777 820402773 934515169 962569933 880068135 894228751 840234667 842396771 899599242 958318957 284925809 405269947 998978476 999224738 692014918 748831545 414250821 698590519 85093548 375413629 25460676 611079062 907877698 956648797 946407281 959694226 989391389 995073549 881441454 885818734 709803488 810805381 364039600 750735747 598182068 890867581 581920969 662590020 88053639 525818093 6505054 445182447 421555259 511095596 799864056 841238666 941537822 950395000 583198744 597138043 158823413 675282413 4049777 671464001 854491420 904663880 396194936 649307311 68352058 868061956 51752605 848262706 768327052 860097373 601548910 823941772 608877578 665227804 424804007 649920487 178711797 377816121 909970548 945218873 166712101 609156999 9309015 877815976 682440615 796148927 446082402 533183771 797373122 864698013 661564 958840818 392922377 550397027 623426629 725981288 716207371 799117198 471837404 536648999 797925936 900665886 189360225 572305152 375910037 698814141 472047528 718936046 424324069 727350083 37339299 424189697 364965550 713729505 906411953 938856624 881656078 899807834 895636667 955653946 95170899 165099631 853598391 887283027 864084708 979492070 606570740 743429744 290213733 518250542 478734719 765741466 159706332 708465929 669462238 732191419 551844861 909362615 616354903 862244068 959585296 985513692 396593538 754834939 741720098 814380982 357840562 654699559 685076277 705904470 383770371 484884118 105131368 867727969 602533625 633350886 366109434 384850060 145114779 315306348 905963869 978950426 336640643 844124852 854621610 874777351 855165511 979818868 396968970 868629926 312694600 677389648 304817105 738519814 150479629 281727006 403833067 509414794 795312375 860874442 569958900 684483397 960172446 994484208 861205178 968658719 91001443 482641126 732737772 900660280 770274942 996920191 748587583 774999559 989573402 995444198 777813922 940474310 257234087 938270360 807629642 840159924 142519132 327972740 926345175 959303786 590678132 930965851 373316038 560095266 298127931 497002611 864575475 898460091 981853547 988511567 689811777 751180038 101820653 707547570 207360209 723175085 433210582 585120734 232641366 289419717 742056523 833994402 239362613 728146570 675024579 814734682 763398097 935601493 2601048 824970285 619964818 748372145 614599454 683866967 426614314 736519363 932280704 960793832 591828211 807866063 4050431 238363067 493794596 848546830 370588027 944967468 369480891 562749579 16498155 988939824 187092583 584765399 118069755 933251523 800988603 949570220 138234363 751574611 24873171 248847948 586696887 762712807 423557165 931278915 180168508 434698019 517566168 729336437 182362175 808105874 755157764 885307801 671058822 828995790 286871890 955699454 283574860 688472455 670995459 789620278 824010836 965761704 355155980 909001058 589838271 719745104 788793222 986857180 266445724 316363732 176374193 259584843 405457410 948424493 86375522 501396054 530623950 565487926 668283162 752137926 463312889 750315110 845143102 956759331 325838988 357721977 694550970 921755062 485312050 774863293 893080624 922076490 603255385 724485727 943833038 994032071 33723061 564239479 90223138 447629863 739210383 912379213 880132945 987519346 61478819 116095053 926627471 957072746 959765994 985326221 133188046 229601501 67054101 758891602 451807362 891417964 534334085 916706172 287554639 786551724 275443703 898257791 465139810 823040760 467361854 672543057 748075714 978245942 928137400 964518524 289672050 961798988 446276693 778012845 3592068 499781821 627799576 900698299 39486739 897890812 245828098 886114146 295261861 936274822 933873826 938866671 672488193 731797183 252706433 703986965 388920377 431112761 282997006 697057196 719995407 820441137 245404518 871018780 718459093 834869135 465245012 673780092 630767846 788469629 120459571 833913660 192457524 882234049 973554794 992586157 955619559 990142929 361817076 511717115 648404612 846107409 943172728 966048626 500606569 988119229 623439668 643230273 443620682 463874362 947988162 968926360 53875561 92675067 626963084 676631532 811639325 884457402 447844956 534546476 411992078 879113627 735710733 942437650 849952043 977492561 349619726 748163910 431970487 585052753 300980611 999269964 703046451 710272775 409123566 920940005 604757969 985831117 144780424 422975079 966004366 973962758 330669735 358665656 628637742 990334562 499614364 917885716 11413699 461752921 309291255 602644850 858782977 895023721 478440651 934904420 877499163 978024111 77608979 815111677 123303401 804744876 489749992 936671897 155563064 442446869 115154944 218618727 714467157 828480354 367128197 995997357 63682602 783669575 847733179 858644846 966107112 970879771 856384930 893281272 908864091 966888839 567880371 703902426 271847133 316484085 617458467 927603395 361088649 946868797 884006875 914427753 402888108 925770556 537518255 977056239 233187435 409594664 398661987 884417065 884628410 965798409 466038600 673136748 83387911 708507490 389599482 750657934 407438828 815953002 960301502 973102096 532521954 547912415 487732769 669225752 17929376 642823250 9960354 492631549 640821916 852237988 926578339 943734060 259114026 529472028 364131637 760162533 585296906 984590028 372036140 765205604 392896012 915762661 471376659 943609835 262656536 531133199 59881303 374998284 116722317 332381758 71430678 82872958 893620822 921801906 813686622 892567895 666311508 995846671 462898284 501245624 734231390 757949948 504518102 658229616 625536536 641533677 904052695 966886083 976129186 979995643 572403286 879949366 934291447 961856806 640216259 825745929 698442895 850857260 226837192 300604270 976464134 989661777 737657229 955433751 522012423 537516669 599304826 731492034 915432080 942231985 924669664 983455743 863171138 898385167 791453556 826431206 596618708 927452164 167945290 690730586 166444860 321929555 238867952 547180907 943320990 980803024 524903040 950209692 268913957 554685108 555923829 925305893 966251450 969489942 809360921 934835356 365658825 970432946 907404856 970957351 744431852 832914774 466550713 517519720 112163999 908354247 809673918 843048314 240843880 298934284 170278722 459061704 19764234 316830109 895642383 967376115 921298724 949510652 481642730 934311243 267396474 448000854 242926605 963035882 140014965 575568951 660498997 782780675 529482176 823135614 127642846 369383097 918420791 987559623 677124269 783433404 612400682 733715748 831133836 880815584 56787798 341237073 853306192 973580707 232787606 811958328 811712237 879653330 683700311 994752690 160180672 331328192 766820408 994631644 545019250 854642914 852329527 959482718 526402194 581181563 267705736 857946090 307751932 876102540 956574777 962746449 308507726 707163122 133386884 871419889 509625859 518784136 374512211 757719331 858775209 990218565 4605019 223971746 870238440 960099257 913513301 972285734 814085246 823992849 678659436 994571379 559665883 773409367 226771239 725720268 326851288 854743037 690102294 786198879 779417519 845365945 280432969 963641160 547466872 746985613 178317381 188909066 669480560 848734949 108455563 582395374 915290533 981730117 313519310 583662846 961415619 991546194 159781466 472807741 413649167 727250484 716247418 999149996 443254255 878576403 709085843 802011663 361456928 971846431 653406349 918439126 7182232 877767155 688711417 891577772 604476273 762696953 4284949 300648293 366128435 949602340 1646712 543570593 218325861 458600074 329551069 344651804 572809034 999134618 620692173 736524309 946064899 997579922 133005652 585537999 348747765 391282356 583154968 612566958 13495096 838591472 169822530 769237880 133774688 939993326 456463369 719938580 469776147 952855935 631091394 826759770 372781007 380450328 408729751 751911271 297760489 958568472 9202369 282919946 378246707 483573592 521558390 753281974 630534402 674453546 25805166 374247993 148398137 709043376 861813904 910354049 285535740 384258724 973407732 995606675 914389535 962449704 263297529 738595950 851685871 970904419 473738605 612621105 891009074 893868197 285844376 480409940 913488423 990962465 623737870 782399403 13134784 441663345 897238695 935485509 570495056 989132282 668715857 934873499 462183487 580604276 332490490 481198634 587135501 950980921 123590135 801011833 935010052 987192486 672202435 739892490 339984853 800405829 419088077 908182614 551817102 950146673 103778249 185068928 532277088 647006512 512707099 844885156 377054367 794611067 341514002 655895695 175594967 556593056 274886068 928611127 857309338 871348153 113132759 212129959 343637035 628596014 103843004 194639116 434372540 467754981 996066939 996476332 559272192 874488341 285816846 580943763 744993514 887141351 581537239 691813023 976685892 990892868 386284338 648876545 903064810 924398717 469006417 654542600 781379290 937431524 420413576 870413484 240409894 966802510 316598337 480463083 50877968 417348933 979922239 985390757 519335231 863568518 672245366 959539679 550757955 584568408 112902948 649077548 162548535 906602634 457455280 532727329 821139582 878789375 869160864 950421390 324310956 709286034 364596629 958938870 413469486 736122232 700323919 711135290 533209913 908627784 326201735 558289948 583648160 978509447 289175484 558742642 115042451 370586436 616523425 699119081 677465354 694414561 925159451 987513597 189023236 550443169 184447812 475655176 463918672 500041832 275501882 321558334 269265498 906254379 260972964 548158292 682625360 721147071 26817544 117757745 291095197 586783716 932210857 970512045 970086167 998919126 279571226 777068566 950090868 964482752 897638283 976275180 868749987 891196066 788324701 945629102 808290926 954092520 632376289 945463096 909296359 937372456 265019542 650044259 121019897 759944748 506991020 508965914 900106786 948205720 766495648 903977428 304678965 604358761 793563823 915053747 842835475 980004366 555700649 875078545 601988422 644980073 174212852 386904049 955831563 987890872 117832212 548436160 801495809 837231986 611306501 684731860 25604427 756269289 507778442 856929945 583471230 774084836 832881239 991536036 29651384 804800508 276011511 948318062 307488922 615680954 630311305 927683171 63666902 877448053 297789761 342799319 312836978 457467808 294834207 705960372 465066986 869914530 99353902 363776764 725001759 865694849 883975921 899563520 368694778 812353559 62012680 552494999 803183082 823798167 361559135 776363898 673976160 863434196 598733196 876264396 505030768 622071493 908436605 983041508 772262013 989147605 784826995 888603441 983001595 990184359 264564802 823942224 501606624 739449862 589586199 743059648 925794374 994024255 524626343 586475806 992280885 997282735 119509307 320169055 570776927 715834270 8940169 514050658 689144493 976550874 126740208 134557000 506704115 809090938 501366072 622154263 893685775 993046717 93826191 180350531 101873994 199961981 190824067 391627144 516237881 820590803 560331647 943188483 837357565 971836539 177489268 716649599 590913981 747194992 840550282 994811263 257119550 359173780 620295629 757106077 324444420 742560106 134841477 823160056 785886388 979312152 150071915 743602957 864168095 912706830 750765239 837142885 515858057 995658408 655781937 838746904 623492325 893453092 488241368 851532638 580452516 613667437 511378889 558535549 163546737 957090876 238885965 677963993 875477894 899182475 507568365 573951772 737428572 831848541 585317626 723024969 959008547 994798693 526166634 712129588 747791701 939534071 322748361 579406410 643848949 780945392 313949568 846085044 163694925 980907273 257805907 573973327 5245906 652330349 253343352 281661930 154257629 553313534 609646116 687318335 268855689 292019557 290905165 345594058 179801437 477467322 789761727 835952968 5192221 755168750 286359932 639908872 575259709 718711731 561609317 918835488 520768729 929925703 926755513 956208087 43178026 433948918 279673177 321667852 482817438 773800633 55485272 446214811 612454059 709524694 724686469 953447636 928253231 974755964 587012676 604064043 939423668 977174512 127332660 250655127 603191543 878639414 296051396 920628351 280322522 883107428 407409515 798149496 144952370 442074273 616249020 638777843 286360325 326269698 481334451 774038801 276670767 761986666 309819010 583521982 826359738 844176571 566244212 917385225 886068946 928956948 746115266 903671134 105179102 693105655 14675026 412542612 321631299 598962948 518847287 960523639 132270004 762775059 573216572 602481728 803693623 834634754 248932198 849983411 151589562 168937300 404484220 711172899 123692380 473970127 345872274 652219222 525295928 640921756 942829654 999243047 270727598 893866062 268255945 611856298 160285735 684244521 163561200 170914272 522227801 899403907 937867067 990507540 56860482 322113279 575119330 814913710 557359951 732450089 154387433 700977054 858120465 905229213 259394865 698399479 86081164 289722799 474564400 519533574 9073024 58913063 182804597 783275455 707504792 869828144 913800181 980501118 208498646 332353367 267858570 649435102 461471746 839764104 792713798 923158532 321588778 406588130 667555180 691686929 83165325 523006637 489152625 920563545 754913212 996554551 804131651 990317324 511601093 778967152 543000108 874351319 335571609 973443933 998731219 999019616 500846626 546161630 437814096 710183783 297387488 940876913 996094966 997434320 275721941 381313353 476464740 743734032 28067738 251646143 472552913 538748148 345700588 797782972 198767640 484644304 873867948 955449005 311568465 424612283 634738539 700705275 72284784 266465072 449285585 800179678 388175725 673438081 526828881 948353686 6527694 437967596 795637635 836969719 800931875 839217130 753331136 967092901 334151849 769498632 822281825 918278054 112951012 406707430 200558537 597869483 578029738 888710842 79561552 203575036 962520642 972039572 334888165 882627128 65414285 187677396 150658902 756256380 384053907 697032459 402935676 853502076 119394126 204671725 47354374 153216318 156867367 748630763 957732309 962189105 721297188 804893522 639441306 699855568 906670343 929468906 600451207 985190731 801148364 988944195 255721680 498650355 838261007 928903603 638367189 698338632 142033617 878087909 921203928 930892992 894312186 998734433 666128720 985339216 986991115 996636500 487423886 755813141 523843971 609539928 506724981 650169454 554422193 839753853 926996979 958545980 300477967 991933568 944012650 945151928 18555958 626420258 105656614 278212891 716256352 905165819 171132028 400616302 549152933 715637526 663215093 673757978 933249479 971372850 447064261 890886518 492460164 573889685 435099188 588620995 862760278 873168709 314308201 691430769 22450269 267630175 258346309 692739386 87074111 364104326 846499682 856908108 900128124 963390523 264804845 601888317 399308218 416942652 844860157 916397933 606499039 663921232 907333501 963475029 172417629 379412806 521720733 894961638 921248796 935437107 496176482 992937093 589653947 627131352 377384534 443637827 643635076 744270651 99684756 676154362 918928327 927657048 500249010 614278931 175112183 629901065 742284617 909486645 281247158 749688169 595893473 956754529 81247172 104669432 607959421 831364680 555659188 975399774 728851182 794435108 357521266 648924210 950268265 954986651 111384714 639392043 811235087 844999341 600040818 685805144 142857179 907076183 475287702 833455061 309289558 648422926 166709113 761292214 945912153 946679976 991666761 997532163 23655358 317290512 998514188 999020949 409850686 616514153 228736167 444577680 451407959 849350224 40606463 483894498 858021882 892416375 614640529 879505383 537568310 811077921 112404850 465088877 488098173 661247443 283630699 937146902 705388918 797484859 617876958 703290272 582310885 878989618 883393318 928698302 593754584 759968401 304220023 752734980 723815256 879884286 975888329 989314738 548493039 845194602 34733892 207030969 712986277 731106946 582237364 701898193 403382944 512920214 988951473 991572914 323792313 570255913 787134888 793478633 989606589 994995966 416705560 494262954 474710165 485829696 56329040 649049738 736283379 825323883 812125454 977650943 922191591 973295555 906615930 909910463 107460228 751204742 912901097 949064539 456830857 988174622 399610307 786200100 355570403 442679297 626655298 725122429 329890124 716345490 627653192 648833115 265307827 552171777 577197544 888554712 8294295 245883882 314133111 523610347 449502794 847138151 114812334 955267010 87302902 93483272 79072452 397102523 775918415 972173773 254521448 481131834 823371829 906288143 447696759 474245197 8162703 22369646 664270676 901804633 462118668 559107575 777872701 803063582 180721130 371522605 180150486 939447193 549349808 913181417 447099484 993999963 742765340 862426597 25993857 795651925 712124366 722301082 963848526 968123395 999273263 999275040 852046791 875427231 679980831 830158663 339968254 387456861 37791263 609224960 578042734 683875878 337876134 743383216 805946653 858942411 960496144 991879891 377100153 539194322 785615289 967906348 631960526 951822018 311368917 782710367 461250743 700751455 279758997 986810627 839601664 922412946 771839346 888109117 864667608 942358562 877511156 950706507 699666008 721568675 393860983 949104723 494356735 758035692 191820755 903126018 881816435 911753931 591263915 831713067 870363233 999170817 49022453 461091086 99899205 544172782 69586638 410987713 202838816 524497387 862745325 891454397 820684626 826331204 825834120 872844768 134216429 795776366 604460278 687116966 319177823 991052125 459568043 667029101 571413128 779733821 838777327 914281293 282401555 343760582 19505684 793514804 23449296 394895924 256655015 389529530 53371521 624577287 905098450 979179254 590191954 708514154 984593535 992526447 464571130 861363656 746321152 754331709 194740587 279858890 833060820 988889595 251036982 899224669 897997266 923285297 460960959 781001572 881507828 995831602 512586254 720221053 671875721 920619691 901534230 905745659 937556438 938745849 802257285 932956940 802745391 893466961 77924068 119328956 129068636 904186219 404804021 842195767 758124353 918887209 392869429 754452719 203455684 467187409 819935373 950272862 377010744 678038513 895086439 908176466 373852276 568415767 85203309 675670951 856203283 946405099 205274395 811589942 705887831 950901300 994663475 999154764 632324416 758711004 23290804 536445200 710363976 895383800 570417900 625623433 911226246 990523831 580180456 732473869 55888304 613004677 322067385 944696010 501550486 617057074 460587433 465573997 667194421 746202039 74304027 222819084 191400018 396685882 226651362 901635745 736275891 804579118 163569771 995073878 502111294 546872138 510735012 842559522 248485008 507242797 207779979 224829529 148638569 867056854 511684531 749245611 803931279 865010491 406385622 531260514 253550352 479482746 355399420 928842359 975757167 984137889 175733540 252502394 520755152 713642404 57606453 242893776 193439473 840972529 116629203 896047705 380795682 595376347 691110678 858617275 919726705 940722020 530170254 713082441 101874955 606124448 246264105 951951112 865321551 894435903 567548630 793379588 812944755 898597681 446253804 715764188 689823366 963132738 623486421 944598124 216504070 429097533 904797392 954583639 400144552 630558426 424487574 498885055 144888416 319905217 751416980 779137247 532372233 950955266 767436329 845912140 884577800 892140461 933673800 967243171 558131136 946828541 666978400 749744254 996053836 999085266 88885951 538693531 44527103 692567599 288234023 793348736 372521171 495881225 423178077 443790875 453895640 512084442 928650234 988404141 371622962 619299303 619199814 997043734 781872843 943302116 664052296 768701280 404817067 784374072 425680879 600491859 25624004 512892112 549664472 906998781 357772008 713371646 47145926 532365910 490246525 602804000 703522536 750667777 432047971 636709996 217145101 916357985 994977877 998388763 650022979 690949931 926500918 949680826 193180866 699512196 676005890 790811884 667987201 893518810 962564561 994659715 654335248 740854002 976065842 992553223 918727166 944405453 27146673 555565449 83703751 453767650 258627187 317332486 408172777 764400898 385625712 921795681 76133511 267340013 972399246 982751868 183079733 774754094 136651567 382884655 962850565 971746068 523187189 945415654 765443501 980869036 434364012 939798349 439287200 707419364 829164440 910881288 164169825 479638648 70684365 506785797 401738876 557300345 722361666 976146800 576534364 841618735 774046440 842386413 743384680 867320784 874403332 961197992 270778297 520201236 542619234 708649848 807753744 816307711 199845533 973910167 59981719 942877700 208224354 285466407 857335774 871161411 698614308 901560380 661168502 710561345 892557657 895980816 731753783 953898263 11691643 621765320 797484908 938495791 562617931 617006659 797226898 966670245 372928321 495669386 28660741 226077903 193655471 922123953 377181808 419921033 5364890 183394452 251684148 303521160 722919375 880615409 180810327 307942341 913845784 948731578 756899999 941332256 484268764 878354489 621453951 830622110 689671906 767880147 47800904 522590805 217791668 721400642 935528047 957890844 293243093 393082753 675191115 833557417 515231868 888923803 713810108 891804186 823134120 898495854 190460035 936840939 377163134 803431740 354248524 532205386 396215012 437325992 432397441 584865896 92477300 281389754 336575192 804477566 238116588 314660958 589359676 997916485 509951409 656539202 113541092 309994441 82134397 891016975 888972059 958650611 919680992 965876557 407457061 737338415 155855817 867354894 66769094 213899665 811292486 850587265 291343579 970333387 866498583 872454093 624290750 888435461 173689538 431912273 11744826 714673517 154667782 673044202 192968290 930421504 313046211 627326016 306505288 870787697 807710033 997876766 499538675 588037440 618460827 946282500 425965682 560033331 218329616 460401963 485204751 925499294 874085095 975051303 784765022 786463898 830835246 910320094 638027378 851741879 829031482 978614036 892854984 897518043 503316357 505202242 620541471 956158333 580403261 750981206 946452939 947665703 664434573 891956745 562428142 566298467 712853720 750386000 296186207 321738721 113868210 955311677 853229541 868596329 623055153 842046968 275522951 407148619 583857138 711316562 312672080 776423814 172700686 886585412 343296627 730844010 61265092 194875874 291219365 542794694 916210834 938381480 615437944 763192797 82710013 554836579 703712003 935468814 813000729 969116693 888191008 983960849 983914645 985999351 702497550 943538827 680280593 748218843 656274428 880412467 893859115 923414637 411900715 882699795 410618731 864104466 759101102 841101610 899414701 967331689 162041280 800223628 312852138 759828195 424320187 789450646 565874123 718512567 144883843 314060081 734317469 756084454 94299573 119202789 659981661 878366447 724756059 836265705 764143088 910119627 639469786 825811377 601308637 881812791 399117387 703179260 692576859 820988923 111623518 950294455 123600613 856027452 304284057 862836646 919017398 947038890 341873509 778737868 96959669 582880638 515207073 977792777 878713220 964835471 230389370 902426919 780790448 961198044 847638937 862365180 98774892 159506761 622568062 743031804 809840100 830546915 704974194 767488332 306988454 366035782 953528304 969248552 800223923 859151492 257027073 641184648 180535591 517114744 111228031 964370820 17020164 697162372 105381955 486333682 577842374 697831114 544886647 994031538 401979346 941918172 153328106 735420220 307793592 966765296 633093682 887389772 655731199 775300674 725586021 737534397 449866778 714252253 64191986 174364426 861772609 954375861 742952203 925567107 671639748 961528060 153147469 597216071 308112636 544210064 534464597 785242688 947727918 968681088 878884891 898552621 886975309 937805329 766281526 903549871 767433437 815877429 110915029 661068122 245693597 277043016 737254225 813019990 611086903 874492712 727629181 919821982 283896946 740731377 396332077 981922832 853943887 939611621 723956457 777166540 96450414 557647987 502426924 604222517 806793878 942196498 980919623 990822545 751863679 940518251 805922785 873168008 259750889 785829471 780346521 940533286 832732496 934836926 418839459 433115011 49508666 827007795 80941462 244704221 432944130 547345337 642500402 935570995 222038717 286336355 737649193 796718047 555433154 832735831 517264423 880352043 708326105 875097117 204623127 599253916 835306166 885342768 386369759 947358102 258590325 318427154 185275505 861477619 862458612 878265523 614419709 862641776 894750425 916998059 20436518 79245025 318457907 480361533 60910260 736905985 632311254 637420451 547688396 696606493 841846984 867534473 639267344 979203618 340234135 498081021 360999162 526591527 852037765 927932931 753399547 755045328 497268811 565482944 517305144 528915490 343421699 960909127 468385948 785456843 375786221 609207820 611553069 627446500 598352963 736999965 958708983 962981982 836170977 943140254 526117856 887038458 961160509 963479782 852961356 921278934 194531859 671806503 941543656 999291707 907488133 937770703 508642975 696890747 707377383 923637724 621544049 787529715 473934942 937281614 148329578 607500926 876330527 987934162 708455392 844740464 962001675 993007999 569695041 742697048 455562489 639893459 625888539 817073208 606197809 866913023 3719568 779850523 291468746 730836156 626432218 885634321 470184817 830322252 537608586 778349924 521232135 589829626 917395791 917872522 83429851 197557041 28516364 823848717 251334147 542064847 685869805 706387863 327726234 636913071 240804461 928026711 710847345 751243478 300951703 834994961 967769813 978812038 322111829 733262513 799471059 997897955 133383498 222547117 344234618 570000772 309483369 463501165 118016205 576365808 168873605 869611128 517646073 979308828 66772250 781017849 463429634 487271633 218644202 251758786 960066570 987036307 14040328 555626841 418606179 538716892 314822804 918677339 24359163 871910730 343532888 857197072 632125798 780287713 871620509 911128481 429224862 946305659 134312910 680937520 571573405 884470119 933432036 958865308 795589994 996007460 984108661 984494102 650912655 893102414 788956351 898123544 432461114 668465437 394739668 814523169 48685424 387400233 574160533 904277042 864238436 970927047 34817439 990512337 816394726 958240081 818563382 878323516 747149782 911003979 623563102 965496606 606323413 914658317 584637864 952074902 818996575 942062219 903904673 962813349 543095302 966613059 265020286 348347907 537950411 888453737 852078193 883203225 634307932 634770530 343145646 621990011 936353709 965637021 856641834 976042160 880980346 903638255 990778733 995327742 250874465 961320306 469420605 909793907 921482723 969836386 110243178 726852178 961089925 966707484 624744839 854932866 10573519 195888229 668738856 926422295 469192769 604894805 84904135 468454059 970569611 998416889 725604334 780460590 717597590 953555530 292351189 315509059 478788966 796419062 717701476 910313356 669626109 699550257 725271577 730253786 54870894 454734711 837919282 925146889 326315751 509497601 18403178 246321866 10439097 987399516 746141583 874684912 620795496 769202705 921069923 987827000 195327061 377403434 409896260 602015453 3130753 689933865 864990114 916089537 561944044 963374576 565580215 866129431 969547125 991534981 280649493 452209185 755557539 932297124 233537447 581791700 460632521 931800561 500889791 654934854 136412471 908146046 932106396 977031042 874386395 918268348 217231720 403435131 404879441 749674491 288194069 658492062 600481472 766066852 703014633 762834929 715293541 734199455 326614032 871822106 448705719 625104324 188558792 797955025 279432867 501782610 631999109 954090052 580016648 629346395 718844694 723486596 199604954 537783966 457127238 934461789 273823085 973632966 858014763 864288451 857055846 896396042 748812268 868321612 618671942 822684464 550400390 983249291 900174360 936391317 735227483 878168774 6770073 888064086 396697370 875583126 695463028 699907153 379151297 665977269 606825844 776142142 379798558 764856943 342619151 454511912 891240155 898796173 186308388 347954037 369384087 800435874 727678818 797120683 514882532 545198660 209850151 247749102 597940366 791657427 434886012 596869709 975911040 976960664 941426665 979019363 496593182 541540988 562806354 823944989 568728133 790185286 140730993 637062071 881506503 967884641 934847946 961643152 767387013 781592742 695459895 867203741 539037426 592862839 33033770 886477567 487221591 880235205 810474965 987432419 684316378 889588462 242316522 695518301 243710679 899037285 276704591 388069976 707853921 775565478 132484028 221989065 987181927 987795544 650383938 734970562 10754783 859875530 351565731 413447418 353146070 734021696 193772806 740111612 260991117 864511364 13569664 657756829 339966371 745648837 452773043 607316697 362541712 861080164 579787453 603268457 435525203 513431601 493755550 647999466 316099483 650844147 848973341 855108620 398131645 564817411 727473307 818288637 731601983 849205195 978469852 994861352 277765930 854129071 880800365 959401989 949229445 980095563 512623924 792220532 253049786 759586941 547152303 579848759 56502448 421770691 589453760 670602637 487632747 518252899 973193921 975357908 871153720 957130386 137252066 336051709 433127383 497988697 322966155 816501162 860365298 889573258 72231827 548116444 511865192 623323725 890843751 891693775 612070224 643515002 786531583 815539069 354013943 981147298 330450771 667708955 875368447 908182189 441097315 698006190 243512628 792221602 370833731 929115148 760154319 840776468 187393198 588826806 43946271 255489187 702560079 985755951 203670097 425338445 620387191 794698933 490331040 779177974 752519429 854562970 278572486 475655335 896675458 925675181 630639009 700469296 377892726 388579842 217023455 971995012 906141444 986781643 62165584 254335336 515797282 915416120 106071806 945689218 445555035 705594263 163855714 372080953 311263174 997545371 447371079 808634185 783495549 849128988 311000423 836159826 377297736 979016710 923695137 987951719 935878681 986840367 874111144 929369230 73998352 626517704 500738763 821400970 600984450 610515005 546077595 750372741 544598491 556256886 932478319 955036697 338420074 654916825 493544764 645024498 948016428 987472043 141358264 480517447 577035794 902422461 46611447 837222347 187697704 351317551 639280157 861371304 91835977 350945244 259959035 455301738 710942946 767413366 229247253 323858810 404161414 601665880 998322122 998931705 864985017 923461267 119489730 949774716 979268742 993122984 365606256 649651444 85096422 854222023 422708111 569958395 415499828 537632654 811687801 917750325 518308201 612104591 895907910 992332890 224473578 652687125 348721447 463355782 148854820 737529513 759744707 917461347 362620919 811275380 316758726 879315219 918051420 998278839 505774097 774148891 646717583 825777393 865705589 929407729 126981775 552774467 477717139 761236065 64390559 152430470 430466035 883449796 994374991 995851294 788722983 955323243 326775451 764101088 311118789 726293715 510083935 522800654 902608137 970846600 887336352 957371339 487236275 893251784 653135207 744427145 244483310 681159897 765525622 852749572 174112453 927763275 546632207 619495895 342350172 808392785 202184052 635896133 630199103 644014053 643118758 949192763 845774002 973500621 573163133 919099167 950216351 950391964 1359296 961189170 527367966 643321286 397676475 618223176 762837458 811465138 68663777 103188816 566415740 933196934 646231513 686017269 444864989 607737543 413881881 910454061 436477019 724301738 817636228 835030782 861207798 988285692 438167032 726041660 790671112 955294306 577865218 658949872 82212131 326470671 845180645 857358194 865380384 992306370 878479373 900733059 378899679 646989627 851845254 874606386 76456273 261067829 431947156 716490766 23127303 287207223 648882935 892860045 216103236 911221395 641455155 805197669 331196607 956936171 262275286 578408675 495952735 794510818 546942339 974168573 898158192 910613984 188811096 762366781 608061987 996709423 31512325 286705234 619689310 874774000 215763037 412541005 800217001 807143385 376129062 460527289 958883421 998341959 550837706 868429737 82893965 721714877 229196877 254583310 542571538 923953300 741669536 762830476 258139387 983055676 200629454 611120271 445349616 803278815 630166445 748339158 345906659 835670429 875117850 992278643 139894129 362285513 857931905 954309802 793402178 897414778 346704056 779011164 5918938 285310543 663975176 983619655 443638502 604884979 495972608 956742354 735871530 896464082 933106323 999327572 894304532 944325421 495729330 933752608 631754021 735364191 549962191 555481696 352688694 665553794 722368048 899230964 711632677 891949267 382922762 723620178 369826928 579645794 46983123 998572240 902394517 980891545 962734029 989466549 475560326 898708491 538953560 926169036 569241364 744777582 398806380 497654535 261697028 324224344 245909686 307025292 535799274 947002548 778342347 783805616 572922658 636758793 806288480 936600994 616031419 933781225 725794877 978215101 431993952 942402375 510676350 880537061 744856569 833920491 681633800 683125829 513314365 779190582 837790066 945302385 892483227 902561108 38325503 72637395 304561951 500254273 462360653 865400438 876045940 916743861 923888557 938536909 523169039 869037804 764199080 983390992 742426406 757960012 945723359 966181408 421621215 895908667 800651560 936594108 100722720 473365238 676465454 817317174 608046129 990333472 310526805 423214745 937396637 952117871 180076337 766013804 599113111 616664360 912758069 973305618 424766084 978161930 770509138 972267382 567160315 687523465 222282469 983365222 656008869 968544160 9154273 672692048 227305153 438734549 300120794 406718924 856400033 989875795 72726149 434609692 286921878 451708892 872381241 876027672 912013920 995876389 750837331 765528237 698944099 820745882 695638740 920134989 948098772 988754769 564335733 894790041 832380987 961416237 873739066 929616898 16504668 420637050 223092831 890061468 322337369 976100959 170453147 703019533 2035409 388706976 383000376 734150897 179144200 190269696 716711205 750389769 283455528 679669484 560784782 824323519 223574790 985237545 359966026 451591849 592131616 632906903 604077290 952146567 450742104 807301013 526012512 590591328 278985180 823652999 399374388 775689918 592543376 648951950 737440809 942079000 221058315 502447637 293087429 988115039 900455603 960088587 393594301 965074864 879396193 956397672 957699037 997618929 72903156 929883340 972864418 985322455 817638331 887934889 227795122 667291561 152671843 624399381 924928905 925092356 16527130 438067760 622475780 923771828 373139435 956362335 164072820 590324706 473923108 750639464 852013396 962808314 565195871 718263853 513844353 827944522 688314526 769019405 195622662 833404337 164666853 929752929 373680577 642054705 402881298 641062878 601815323 830867822 782168582 828871308 67462254 684304216 6928142 526569353 851670716 995763149 533567656 750615947 813942005 924015638 397667030 992048324 840774297 841125594 390662813 460886132 852073914 996458693 90131057 186259060 623589956 976420806 978137117 983051374 137244709 844304320 34977217 832289475 761920360 785101219 580277954 594339443 697939860 736132119 132524265 306902680 877143363 899545795 951560343 969200814 989154929 990256649 832753031 857067941 976194947 980238727 631357910 898875431 442942921 580199146 184219999 729004380 956654597 997928529 634053722 992032877 680486657 997731528 271492514 510473354 69137762 97267845 698384742 828299124 177658995 477151100 266030666 625389359 84875737 658935643 731849142 997030123 161541306 756168412 229786561 891941244 174065028 900401223 830324538 929070054 557476369 913188045 935208716 951115071 280535481 383237920 24319519 758562709 643753183 742190622 381084211 652826115 524449252 672625266 852707292 866558362 169190101 948648515 89369062 903588271 335764371 842662247 225964270 557969801 689870892 739522797 915255170 952903603 263115209 731270435 979116633 996104720 830458548 833622452 192253526 378362017 858663572 938840766 274308907 685647177 225494106 636224069 929220412 954629402 698269362 871014977 525992256 607317205 262429597 963354408 875332979 979116946 66328527 866002475 992351991 997530101 247701036 637184618 189661516 577722908 540959281 830979184 842257876 865379343 855484093 973201013 246664848 507840196 109622047 825305166 235538233 612771763 885357557 910315193 455444012 577377744 968770357 983258001 628058407 922666250 135760932 596999986 253216896 318965281 429663014 797522239 785123383 928232230 866020632 964830060 34919467 884486520 899146165 927987484 672495839 821018901 373983604 675725295 838309712 885377598 21487076 790325896 529271996 784920055 871104710 915682746 796660332 960385001 39568170 936423197 25276022 573196064 789921949 889071434 578385523 862016757 723865541 816149891 742694261 744681876 919304186 933315065 432956378 862195724 827848104 961269779 803976200 907614199 33661723 414124743 930379613 941831690 378893227 847391876 255318971 617689304 884864611 979136224 322435867 989583951 727936688 753232587 37376609 275023310 160638658 462898805 245536704 665087889 221891832 548278568 641364846 876418376 762352140 791693497 995704041 996860200 378444788 713297536 496713571 777288309 797296443 949437575 327752499 766430581 620285536 984349669 783820354 866428069 284696726 551170434 97150697 479259069 680501991 954196138 904132595 991141315 516224257 791121071 461016163 768253050 818041810 985291623 672304636 686139444 289453433 341069782 409355225 994446653 1668539 732217925 632631230 943997441 234027378 775454556 751747254 841963419 466359016 500263372 813171409 899219145 758855927 828636261 738259142 848546010 99244559 253455370 976298232 995190463 226088367 616164846 941397530 964079637 173551213 978902126 345863469 803091160 773971867 954774741 89793259 188122545 63221314 754781034 663548375 893503947 277700814 779451760 915473354 954665719 845106515 932476433 433300095 712625724 784787373 938505825 539010663 949007453 403102998 615579846 552070457 820778982 101868601 714326396 781275617 961690879 563808707 733006423 674778358 818584852 80692081 346729750 933552299 987729995 399892739 415327594 450117034 674259109 895360873 985618591 722452376 882481520 669777498 733237859 679320601 914653904 880004154 891775656 810543720 915947111 114115813 119861454 855872600 989021673 965093527 991447605 584017740 696683077 174199353 909849008 741644104 933385388 640766788 992892120 17817964 824808769 24483050 324577415 35925210 931428844 541093051 630205752 979337297 999309542 37498945 386765616 631886998 650001926 432188028 696829556 491515887 537754666 789561895 922952882 137739932 422713419 362348339 439325901 594017553 803800711 292339305 466520723 515280735 935553235 689797367 786682507 309741311 805922184 592703362 609482017 1381427 543237378 125685857 299572899 215373916 529548955 406477853 888341508 68871864 205101355 496628763 957191049 645636999 866721818 389916360 948895486 622731453 767783239 627117564 675359738 913970623 967950391 94998936 341454759 639359231 848251344 467279938 714689482 103581397 397192867 33246740 562676148 665700151 983403815 950335956 989153755 588274520 642614458 334511679 350072392 55547481 918187473 257236132 347962867 272876024 737906467 439601003 441470965 241076860 466732931 397714724 909997933 630981219 989876164 492890553 923947901 432144219 519643983 570659658 783278837 635189297 881964550 616432891 795743737 784264719 973793230 626584671 897906863 111262323 222276629 886712062 957617584 327487215 747072885 862514556 902476302 322101298 852785019 115165920 256739012 60865312 589342524 70954774 494609032 774270541 863824868 958548584 978353024 882911621 911985107 533692531 567128950 179662684 996231856 537492809 700180723 989467520 994404094 934278993 934883650 402467146 539535866 255797462 894984817 748376356 760524431 427859995 916949804 150301051 656789990 791113662 951289046 743490766 746824587 654037684 788470187 943807730 987616481 519953366 800051021 302755151 751004179 656029787 921196953 171298563 650306806 789116154 968573137 946854708 958005456 469679795 975670478 550226666 858847617 126716987 504989774 323836934 867921523 104265860 888281258 720876964 780382290 343593755 700331270 656397884 785621475 310624597 606481578 21283995 129734278 967395987 998267385 514759373 675350715 229077947 641866074 976741642 978695312 834141807 927806531 779265216 975927732 965489170 988579495 976694155 985591911 352972946 661023935 383162724 784334879 984293834 986912006 217964164 911194507 819839756 830265574 288730361 725345568 321812017 729650190 753169961 802357117 194949859 727828456 104140135 470085471 804714194 861328359 951089939 980439582 704450080 985861397 747746816 896166920 47059685 237665450 644071377 672127371 260469634 565282917 740841969 801739338 87943777 195939826 308195008 931987617 288122577 606267404 527950428 529964112 203348186 929039959 585543358 615768292 518535228 550166663 606114889 671167548 508076973 570038434 498020784 978237936 306395452 697562895 900884690 946083384 925632157 980189372 946895533 993553662 166969932 371308387 959150104 973315566 514101522 728740954 579521474 925696029 234368666 925860151 607757390 614851991 137385779 272652604 162349212 474551301 459035584 859678270 977785604 980685331 57598536 157698583 361483189 659162846 229481905 690305207 126359624 496091334 18433235 195305488 274654156 721894117 251676761 995583903 443284945 940623904 28314411 515532620 704663805 862531150 423018318 624425466 98571894 226333621 752135313 767934229 648435360 790280847 61347990 454012839 858287581 959455193 113657792 534805520 231126648 804436399 663607198 991861869 767641639 879727331 811559218 907416788 623050217 744440158 883896935 946118997 517822182 957194010 84791551 313320304 573273208 603990271 908520339 995426615 53605200 955963938 516809496 553341248 557678962 562757861 409552528 618504238 629562761 917940666 398038362 657848129 962179675 963837625 633241444 665485729 265862851 620400659 70672871 153672475 887332386 904654411 597238375 625131977 13969582 291800283 701418557 960377799 818963345 950895889 436804035 511697833 595534879 627007581 355160013 663769689 944624184 945617680 164260284 352840521 603061370 965192382 233919119 634394064 363004702 928024509 295370263 836614183 879901857 881266123 668512264 695143323 175022387 644576135 806741460 856579150 802476493 945074312 850200038 995636652 538024922 572465271 460712564 514696985 122707575 137150358 86559400 191221789 206026274 272361959 514944012 895580833 428440346 937726062 626711887 863185085 199371823 890200784 36349723 528200101 743535926 769661529 588399946 925608193 377575543 396138243 361616762 824868879 554057651 679879072 137082874 308600275 288959120 486658339 8470112 228970853 162537275 945341614 716604328 871315455 136825380 534283125 47229527 734275014 162288694 514588519 619756623 691594435 336917085 976040032 451269204 493149369 315993917 564073766 855647855 952035888 723026197 943225686 516224178 917431917 680849409 705025249 663490658 715276452 672666266 734820769 163474939 674500687 684478395 702704313 290000009 902958944 752173067 888640850 126053809 420359215 408093276 480286752 729710623 815857721 923185179 950775817 688657239 726837362 821195638 901376505 519104468 871215041 545969857 991005811 84907109 278410120 237227277 979506186 310642577 741331251 403094992 840344443 954851182 981104534 76970997 310552343 645535547 715878448 495471974 610228068 893147920 993162831 24522715 589587893 405835395 695190898 386129444 993791508 861593796 913302282 361106454 452883133 484020957 660981715 781699601 885896399 189714180 245007467 980720 509511408 650000998 835999931 414218770 711780892 840437193 877382710 239830359 447753816 622440321 935915726 389886375 921170301 489998978 914037829 674956469 784953533 533912892 774985640 463186003 503363950 602242640 960723118 419523268 580165487 15080827 554481007 636873576 836204156 387731109 484789038 828617083 873592789 868844498 956592314 54042764 340457788 379385171 662916247 132532664 412551818 926387169 966177486 699155734 966336478 159036472 978491468 409529481 553375214 904164719 907425950 694887067 819445255 894799756 958822550 858978144 960463487 822562401 933728867 795920828 924483906 915979548 932695323 903294061 971601183 70980763 474111321 869781028 875893519 477132317 742902161 787537358 882920769 435563887 874004472 682021260 892468706 62401385 158569044 829870478 849002851 731599773 966055720 45494315 333911084 603175055 794679037 840474290 985462721 574656382 919904329 686880844 934368135 636537316 800841323 999202737 999312692 817162665 933233328 767612098 819318179 140430631 771044563 652848165 951952897 796713223 946271712 423648496 508296610 597862702 863542851 10349644 995558314 33208114 518903190 634210479 822235503 612770531 743347731 537076636 738596771 467421428 819193469 113302889 175268556 879497195 904625978 520334505 549284233 112206363 476559350 481820011 780648006 513976009 607770906 72727354 359944275 608843674 775314717 649441106 870438554 74232022 980525134 742089390 865764060 889367322 997939046 727734835 818796981 195736163 592902259 456151272 565192054 16197968 68922433 236182229 959713964 556892151 946350624 756055932 846377742 36270829 655723728 89720861 287946804 260527770 407806563 217652046 903194373 509545643 828248482 493291737 904350578 307840605 473895419 858396612 919679730 499925251 898675168 14203692 84766004 577701262 617059211 335765311 793862733 534358064 930461056 934820445 958741462 568593322 821199520 186598729 452593743 177637922 413953914 704305555 917472265 703961335 998833591 949451900 996980275 210816501 436261363 475110962 646568412 11407961 248086328 694856404 765909578 103224438 906982330 792360877 989103346 302907896 709033951 519466819 753894854 757257599 927783450 625350578 720441178 303162808 555140314 2945702 931056201 600150497 679408440 902539024 999316119 695468308 828297867 263991687 493800904 48353708 377232734 137730211 486788491 511841229 695629208 109465 13460361 274545933 275730052 955218897 970420375 871338583 919472823 431854490 971255822 892937790 937324030 919195154 933972350 717288812 908092863 830774444 882663591 961609968 984233849 377804156 646845561 516304645 842525023 928152983 979855231 780871002 898860551 537510045 915711901 315319370 860679240 797901686 927147352 84092845 972041567 385669894 474705152 883678073 981432839 666910424 750548973 191048676 620651090 435020757 503565321 373078427 680238867 792624448 955375772 571448717 882014162 547008236 683984894 28881216 138601717 450577831 503479955 210461750 879064884 888761046 984569034 987246620 999244192 638722640 975127620 611350085 740969723 861227334 911804227 670197117 947287755 601080186 949099071 898664384 914299590 90296779 863171600 723162348 749923958 4152521 919209348 126589392 716702188 406894275 530316872 19554908 52222458 513412126 552479484 944869582 989468485 66004923 400125745 615355812 897120434 533494791 857214495 425128779 713171391 43782420 932351887 118008725 647489354 952608971 971065528 76314093 970340596 665916596 941193212 97301178 354447032 877645904 954504387 720539723 874972311 840191704 976199341 53303948 534024582 407973733 494850337 189809137 789653124 651509563 962818975 402870412 474031641 448147383 586431273 546582412 604575595 576952937 736480688 965159327 974930939 862487506 895748157 236123979 237445924 700200488 702963180 209536486 743531139 891753045 907715122 991046043 994607419 698736687 798361646 29583361 245302392 416836161 983110342 710032470 772353091 146983811 170401304 751808842 828061781 758415369 847945803 589630585 826295531 482799650 812467315 434633381 852001893 497154353 886464019 458097348 778036897 491517093 834803307 725422887 851573101 182975747 603564104 269986769 468617477 571244344 907396862 113468760 164164962 925432832 984264865 273356195 303963839 253534168 856697201 691977547 894898781 349376229 739922756 198666371 780542563 649983312 662094003 248247167 635609042 868249227 943793230 894398907 918122515 685930588 918045585 209523054 983890371 496431650 615026726 847384906 942424458 426185010 888695731 375990795 808268423 223071494 920297714 870005708 933193131 784504751 950136225 319301035 410771305 191547318 571890144 725462938 991865668 802365083 917279329 698393960 962815443 545777733 637252339 589789797 965240211 561218672 997686775 209868817 431615969 271407561 776767803 789784427 899879775 767280482 830465132 497149926 816868623 11064838 702091379 938309520 946675902 918854698 982603792 34584472 928031809 879994016 928496997 815485553 960235025 485990875 874563438 468309018 674266913 658996751 721405466 491808373 907256042 756136776 929680685 571446433 853083831 830270517 881663825 165218286 551325948 367312397 679114343 227511123 463935415 780948410 921374222 18860501 443946756 919375524 978811331 410708450 437248678 465636529 848052366 468126115 779796484 874207541 999100610 279727291 623341669 478341778 968848771 154129559 836479476 895745228 981046713 817456191 981767236 206889251 576770555 592530913 682087801 51546386 416958620 494810894 907764435 511173607 929361533 214311937 903821326 249612251 268050914 880425995 895880809 851692874 991258909 521833804 983885923 89651962 773197767 434607168 853032644 532136336 632169237 978172581 991994623 127661897 160515082 176497707 451156566 774993927 967340364 783237855 886057148 450859302 678391964 258321398 952093801 116271066 753271030 549246919 877776856 841636780 893716777 949543608 993051823 157885331 873215045 809932421 921913114 618411342 627840453 424137062 787779657 590373578 783444783 944069995 991384111 493714018 872475453 760050286 986981287 977839243 988172686 624723722 888770450 246288452 360198513 442941832 958276483 718864495 742565906 489265295 909342340 911091488 987538422 601204105 651701157 891276695 945829456 932250183 996161361 273930948 385703770 659138052 661412989 182687172 954415261 148098351 877740724 270091227 694608909 100986587 572178689 701212248 719932946 368066535 499885918 330449788 599341027 321172849 580266346 67067120 580498916 549620425 782735552 54101790 409724369 339918157 711365616 755055694 979396072 746128428 750038503 810527393 822148637 620563212 627931000 310305519 625293990 981510344 995293678 695071902 932266784 312162275 986500376 907373723 909688630 289314072 816618629 71924932 601148737 364031341 820481559 540660953 996211632 189234052 460452299 552710240 949922690 617137510 937541929 983963020 997207950 394564084 397706742 924120228 947038527 183154844 288606867 688549922 731990212 164111239 616761459 294945110 864447800 735988350 792274817 385134082 387646174 758567733 953569007 89574804 884342696 711703065 940093365 897967328 998360342 376293998 696921725 199912668 715402125 788946437 981913527 114593384 134003430 891821067 920908850 294987128 496458561 422245213 964820866 520283107 640513213 100139247 711434722 534384961 651679553 105029278 936786849 995455619 998655017 99383279 171536342 70291619 182606973 709091975 811175043 725010517 987301948 526737683 541797425 640819677 699345021 49746926 418765471 43105893 948511488 22640556 119092619 210240730 468109697 290374896 846419346 470106219 626530021 179235388 940322837 21118482 560510241 699867283 713264858 719073736 828197855 358761704 706431318 318445754 695710227 389885809 392791583 321929258 443761150 692386908 778642730 986988742 993603152 307044764 638762389 391682719 976758941 716467991 906453788 10100537 532316624 665472707 879844745 81732096 854377330 813117118 942100528 582822843 689988579 990524632 998598719 282388656 427673192 326700091 563817751 393972961 769098957 697043984 969649792 121997626 500867450 994415531 997743104 90374221 864103056 330052182 869163342 240606247 793254612 924355315 996662385 965480771 983693176 157601139 904955245 257184995 474728579 206590778 946278774 170635087 969017671 79384550 664009619 520758035 790924330 825519946 851140982 190330569 873955372 984207972 989844146 678136606 922635111 173776857 319199335 645243737 790385056 85055482 427665015 740626437 766470787 549124832 618501303 930790582 982779257 488061639 740564345 613591610 700151484 552181537 746727731 103280939 955817877 512656546 636899162 315310759 789443567 482905286 733168943 387138431 584575666 720763978 929695858 348601138 524381255 508712465 810486441 29863627 81067068 183104079 733405176 265782534 696892979 807924303 952908267 67455056 109264202 612054242 864756532 337507500 966547310 417832576 708837182 285019329 589596744 664269876 880361805 895368028 912505259 951061332 952446417 857660288 899731751 811879601 985030546 406004895 817982444 699129049 862168705 797934941 878886078 168048074 506097287 632328501 815726499 329325561 947429842 392078042 873226441 882524313 907119251 895432247 948108484 207967087 409194884 512938389 615002161 23064403 338338258 400805890 738480510 619174487 623715650 287681410 712268541 695416740 803498141 322546262 414409311 890179385 988724702 455258561 821318583 336477958 949416455 333273088 647240532 759571109 883898125 232951751 567326531 177790172 766528123 929100389 948978703 147671655 626171715 997029684 997762880 9979825 600187071 880890988 957450751 940675023 980900888 341223877 487249173 964461637 992475389 989348162 991390215 378368487 835472472 795079807 949798534 343030227 478732605 787303237 979836508 849364850 882042837 199254433 883151512 589368879 758193216 761651006 949755307 825314654 949930538 545721788 887227466 458788030 989981908 545680011 811596085 374520269 680806239 792066129 814438242 521042881 930965587 925828676 998293290 30105731 915644179 644599241 779025067 53655764 96991768 707605117 893662808 175993498 606539520 431120159 962355876 568032597 750456596 547397352 548219962 104607629 639053550 954595467 960195742 525573307 949577862 94939276 683003201 574945142 762429814 278617936 472766969 855246237 918457151 668635588 799596354 992018588 993156145 348235545 386631144 746761480 956743237 741005297 798046794 288745565 375987022 631950555 707700332 814105901 962686648 821000980 889581395 200412366 425588967 729827210 980194242 728151262 970988930 749254044 932101308 211050821 729919606 252291028 908198832 548380608 833307861 575903534 707739839 630632080 921815480 80111561 675482543 185401690 185489871 238370398 256549427 316359619 593507682 241033967 654667732 953238669 994134982 86192443 665461148 551585604 601206039 959107266 973606063 501441141 659774012 159714381 825163458 447984227 902189965 230850664 877687137 776657975 927214082 17981135 359468075 333589321 969196458 564970667 974736073 351706917 721256618 412124151 606281080 497028128 583662630 277651242 923154824 942217410 989700115 882064988 902483874 234442167 535476834 612799291 941860731 456373590 678863580 11075005 20856782 285296364 950093965 689939774 855493384 405913068 651655628 448981707 547773908 419191761 421370483 194836284 234349889 466927275 555701307 678112540 757326671 31269019 579289805 388650274 457663200 128426697 895581287 218788527 685802832 330144207 793930697 696312223 992098468 73806875 248461525 480919383 891809485 475373053 668949340 767375974 930213449 674886065 701153099 95769207 594054008 809059914 958641093 37497100 191255614 813461229 838090187 214451600 959607908 373915134 377065624 953778509 964021318 623065988 828731840 56293442 480180165 273558708 611809692 532591106 999283133 322543709 400592191 276810811 472310060 857237747 929095599 115040581 337927477 150179381 955632580 684904496 954802376 499127603 640760932 368603452 863052265 567017909 695811442 652741484 875451133 731232447 885986263 571294453 858731821 251236697 828772772 356710962 618067268 109045093 723180211 420840596 773385032 220539652 269290654 717745927 790663860 974119806 978610880 137374545 682488931 117397022 354037537 328019657 678874812 882434324 915032113 76303280 497457267 691942594 923101926 234678792 828987655 734104355 898870413 18013976 61512649 64795677 720190776 196543647 982595788 45915541 740078997 238840248 813938878 229241517 634410676 703598440 859798129 899248403 983434686 959991426 971732428 450182574 560919943 601537970 892106097 263306849 407124761 660344802 684821011 915754286 988742008 249978370 946708440 686161597 842354858 187338454 799910369 158935267 502306813 582419804 793043249 333022645 761897735 620229701 911041716 789337354 811734148 426933615 503954512 426436629 553782331 379842000 810851521 237850471 636796140 371264628 642500644 690746552 782065811 740018057 923159944 460922741 906169258 281471957 934508744 788720753 919125443 292940977 927972414 308869064 538433251 340527846 960621294 825472018 839960633 180375919 755069477 386646879 903055703 993421921 997781522 733325502 775019900 802547469 839536257 727385269 823950691 681779849 781775775 412895404 437661870 106457645 997527756 366084818 631636977 74548037 808405530 618580269 903634837 225967971 968666411 727682791 999383992 350731786 827849319 640207957 823682242 855700209 973335006 68453462 393877053 214549182 236180860 581569624 678593590 534167386 582728877 126621261 701668641 908157540 909631402 939196422 963615429 769790809 894076289 12168966 348375709 192746293 458520648 961939890 977098785 851253710 916289499 443052263 993909238 192890956 485858522 848587303 960409801 798277866 898255735 912179388 919880202 705159227 878590780 619929459 961361813 561175276 885229855 500284138 558038104 380834130 853084775 58769434 855819404 106275481 985731605 144636051 546788902 787215831 990325840 966250658 990799515 298066871 337952126 565316260 706917969 39160637 813405324 351809669 534860870 84316431 503124446 247847907 471766937 617927509 825277747 502074597 641335872 22640112 871754263 614499798 861027194 971114392 975697332 792154180 942634950 772653279 785361756 946579959 957606204 426889153 445965017 15588093 879553998 926402149 995832119 997529699 999355318 253798801 774509376 873063149 951609952 795912735 796403205 938634602 985832065 252207960 287907541 821453125 965297185 87175444 344010870 587185280 660103147 355538652 557139657 345481661 371975760 938174138 955832282 954076087 955385069 908734309 913106644 968146536 975697496 908511435 944692317 339183668 412848195 751511319 918885245 152368740 760489193 933497908 987647886 389418925 924933619 22793147 564403551 244723130 985917076 660351149 777984886 397458523 612448861 993025707 996019887 221487573 669702868 377778169 460617564 463401669 952133993 779385299 973581880 627947940 796332159 950402407 967943693 246042277 529385384 684198400 990434221 601305615 960850215 616344556 894796140 772544320 901808071 105388201 346330481 657508341 958694999 600221965 890577313 932380818 990838608 575905282 782179155 96439007 325362332 725612128 878465263 495092940 865720032 543918064 832428839 403945734 479526771 564861811 856092582 816400910 833750542 192751503 614862768 10140841 479286170 580409072 784518576 993167086 996892431 976102503 985491525 435190983 869301958 787150000 826416414 103303707 607737849 943568821 984901891 918384643 982939470 783033544 834689849 874974632 968892459 312749008 733118159 230027107 349359144 664260955 983818864 942422030 991654591 495391686 636467610 58260131 243424757 556249746 811700087 650870814 842129249 273292469 653791486 635753991 971627783 267950401 787178174 745379746 983546240 675582120 881511634 953834901 969163548 179666459 310839022 881832369 983281131 374853660 571480130 620025396 806997095 841193119 933485167 731085935 880830558 85678406 621796201 566988060 864587021 599636995 770253194 697922868 860391479 954147298 963847238 765563937 913114263 397863108 931661117 734924889 785603572 966886626 972449702 5074075 186752944 565773005 749641501 20549682 191750771 332867837 665265500 898407081 922209344 424837736 598492441 32176696 350891430 66374764 820765442 690648001 998331083 945495648 966693556 624636812 652190120 909516762 997203298 52636704 647359517 463931158 916146650 964627375 977157322 874897882 942016250 25715760 653829999 245027611 964500410 885328029 915524764 600121303 876245005 325548062 897044619 32009627 864644783 527687847 778218552 194809452 295740255 547853412 956429940 415157535 783240049 712329456 943287286 223166990 866215637 518605616 666396874 546516414 904904081 53955003 737092331 911671081 941157466 276489845 736161000 52722754 247705954 901412948 910625808 919933920 964864533 616021241 747925412 520372799 593501768 784621157 879106182 488292596 633834478 826749036 870411615 917792867 939703353 249675706 278934951 878748085 920560601 232131781 251065062 355844571 752773805 947233212 952255890 70183834 131104877 832225380 964002712 508796018 588252239 651393727 946788124 60997907 295940677 718340864 743708994 335612285 459642420 803548386 911307069 471397303 687829157 141253326 936512509 424173771 761896104 295726215 686122097 334011109 599799723 609558806 715383967 23756708 447704390 212905156 797642189 843807067 917332171 580007132 689749744 965674179 980465910 890431159 971396806 284089327 837089761 61751418 633002974 155416293 815676247 83321168 137537505 896461608 927457005 269146858 385250340 206143706 968900882 895762745 915910145 455353713 806555002 36064656 909241490 617488724 664280940 952178432 988559203 572936012 947453243 212211301 726616210 79937521 342165144 483965172 596233522 530530340 635452960 715229620 984383238 182617552 699458476 371821388 652827716 101990143 415501286 296615528 794394604 288415630 712697353 846685138 957103355 675490677 895995645 934954264 957081192 48010062 263929578 825669303 848019077 367875525 583967365 254566466 836791639 550046775 910043595 201877693 356067238 925286215 976648321 734285505 996754060 556222010 880426157 793498926 998776122 739049864 886161937 99322105 818585789 245847554 853616064 765852303 812878221 649215686 944294071 965076976 975970093 734935955 792892549 46624417 554300450 886942333 935309197 638977932 786479697 995039219 996371979 135415979 357254058 175356879 598120615 839438251 899330933 85274704 756600656 319026034 345359623 125261244 751418938 831311278 938769193 901448772 999359376 586594471 915132060 101562245 334712327 38983792 659761678 104079663 582565212 697983944 910442831 947201665 972684703 576671345 770056738 374378682 863163294 859286763 892589793 355649959 700986372 635012900 733542504 278866086 528744404 632383107 791332877 414239549 618860968 216991972 529936360 427576920 839388388 100208250 334781412 514740159 830203835 443578033 778951945 175546547 419966842 753249705 869802065 202681361 947089945 109025510 698704944 605015440 978737180 386173501 524645020 669743476 758001461 104034792 649533463 986516733 995521485 350038211 379039253 703701782 897843142 255046587 448464319 490729145 894695352 995725788 997360528 853924879 956749216 688726026 891963886 563720644 690375292 350058570 545759789 623049998 943432894 50928874 717659824 406295624 965099940 178637380 956376159 622678152 738846234 284726159 785717449 806416188 850408995 935954858 952169241 483919619 950836045 316535177 523376739 519750455 842102651 439245773 822926327 120204678 666903184 603712413 884867099 555053422 587898572 638176205 775303765 302500066 354909873 265599688 474257710 739573119 798350719 492250237 699007358 850120555 960223023 541438317 653259254 36143728 542762035 30932586 183569290 74919929 598158176 518704018 738186342 606452755 964378762 331035512 480279022 780906172 835017994 847443020 931713434 22549411 282064822 772182114 996582123 310752092 401738120 765786895 797723527 977727862 992237742 209286215 426240828 536286190 577654573 223197082 583691548 203656855 366676596 70463176 582045820 695052287 956688836 195070512 432413902 5352341 876651943 150989638 572001080 197567869 992043350 290667134 647983766 973368742 988452843 781194378 842903029 467151224 827238523 610569233 866496652 598328180 781139864 589049601 812900824 840873146 887859406 926747471 980222392 104015243 506249012 601162913 687257062 221406466 949248889 279567392 281509541 601148067 844949987 404510103 564897274 476439690 898825238 73121856 625427654 979058477 998458921 888372163 894510725 892070790 946874611 90318114 761782706 687964062 948657222 188826571 787240900 771269056 872095749 178143492 989880209 6743716 662774774 390026998 753975958 385395849 728176041 846188407 940236456 548449176 791936644 278781699 281602597 420551236 683896887 500222421 929345040 805788982 901312939 753349469 843614639 79344740 107075810 16819417 545195357 228554720 597531204 229625024 371061820 517075703 793990934 44164732 277787936 488602218 918798835 445128832 958859163 835614117 904566294 233098652 321881611 432195589 532554924 363890157 840535599 755703229 796184926 189688083 506541683 160056494 521713741 520981373 859166522 806831549 807696682 43784518 477732877 926875339 937729741 533449684 967244309 220569223 393490640 655785353 882666625 400723028 432390703 779610892 806143920 687127246 913628217 867418657 980358374 47029574 517518607 558841997 942723722 524474655 893389162 431771210 504881018 672267449 704589710 291807756 344536023 878757208 953624439 536024048 946956496 250707371 590480159 833538405 917999990 200714715 440909631 148414989 938528813 601130806 913590014 336568695 550787367 407903351 519953954 571315016 715119056 274860440 826432974 110174684 773906348 296064358 593342300 262786429 477383327 926152277 967009308 156609666 496455921 119993023 783014056 874617615 996251618 804468955 941990776 597525093 772976705 722928077 948351944 464143332 505862362 156563592 225183100 673398466 930784322 581143521 715990913 95310461 509780155 648785388 760360404 759733933 840240227 787009234 820927765 467009972 598586051 22536573 744594279 951364828 998925083 784284855 901582351 163539136 319789634 579857368 996170991 766366391 888830862 688954160 987524026 208447743 799356296 484034839 859538229 602441120 782867425 588375116 832271023 725841979 901299300 573676684 873976324 20001263 77898656 374875573 924105595 53855488 290589107 735400115 904181469 620135528 924206673 704821382 881921452 698426358 744809217 538392706 701089208 381005926 919363214 886704507 960511320 53971240 899197735 62065601 441200804 27717425 362608606 936988814 960573247 119636748 745962524 151554256 200051423 284584444 881332252 535676476 954675986 683990023 731891905 486867781 862781647 502541649 553140354 941004944 986967079 288549517 828692108 4700911 950287253 831586137 989862171 588599393 836370802 237508930 566774954 531937781 659647197 595430983 654244359 329263327 798522381 741669353 986834180 454061182 931875206 593805652 827031587 12351874 723286704 923624992 941743191 821915478 857079918 550495542 779528005 693335670 887565395 508470552 896126986 390712411 740387565 937850087 948718403 273534175 768136392 532228010 534334980 744221171 869121454 597261521 939539013 449025803 799712874 621725707 652071661 99303151 325218633 543248352 806206429 272970354 608689810 17657788 535117761 717759203 980611240 718074369 966434900 582902824 926109873 908001049 994074616 80011369 482348833 259943355 577268312 441305624 968106513 713020868 808551714 61601200 862226011 454444399 763015975 249194066 804320203 984217066 997063777 847029515 949226317 68878053 838101026 811117003 865843721 566981349 827355756 25998711 120587604 972199127 978767052 107475263 131402669 111495938 929729356 942402064 964388565 970802792 976135379 823184534 826933991 944007022 988317411 812717488 976637389 648702738 813903019 673137463 912524277 991340639 997000380 203810329 632710260 203945065 493550941 186798097 924040094 170598761 303231854 795149060 924206566 275964290 816506645 465464410 897411937 102660947 220878175 219216136 691711475 369447257 444022633 214265037 305132084 91071338 347407131 853927977 996759264 229374066 395556971 384242681 452412005 141774119 513749472 957990846 966423601 919059215 925145320 256044433 800375389 193915278 694446980 631449720 973995734 356613475 507637256 190105251 215769877 131003780 546412061 896920029 905988268 6665229 85257878 175414566 368179894 432192949 953428560 947444298 983643978 203710716 249065837 287063848 605893162 193089465 439609879 194491451 563597407 671090027 751981101 423491279 673969814 307757561 808682283 123902861 481455870 145826119 304754200 987376324 991312313 970956524 984430194 130169744 900440515 267301273 789948640 244956097 796127698 7230651 500539742 116137504 649976465 988382695 997662396 876859584 944899107 291645819 560901033 521586182 655956476 507924735 664691347 41393891 553609193 256599077 348641061 130913761 953027034 28088628 440607574 670655306 773446362 399226410 904135935 373000478 603365219 490289104 524882496 231964720 910408404 184268668 337196898 194774441 957642649 819622442 940030758 732583732 792595970 466897135 647632045 213936608 543049554 928100192 985291553 459400851 548196996 996156473 997288047 510796465 682805708 307263826 472459330 836274843 930351176 180907491 393545566 249725932 399007753 730102421 993960074 14833845 765096872 152660123 964325922 327990849 383983970 986735484 995772165 633001187 805076751 881449707 943714824 780834708 833666324 867798807 944583629 316067675 541630769 544573184 893700908 401967373 514594270 543394737 627400157 808414625 869709270 433244522 661977905 869311324 882371239 259446897 879559403 395378888 927358721 793228025 959697313 385112307 512527028 586936536 990773574 860655384 969060668 85568397 392464528 385495179 446683646 168088119 500129595 233591645 945225398 38106162 682340433 733231547 838196059 76643463 562745832 180656704 455764142 664514088 965866365 379213638 823422279 952198877 998822672 246738078 771023188 557473161 639483743 483347170 518747452 877813384 998419467 658613990 909743925 783033077 784154076 406771912 844346657 366549375 432399855 264937894 327847978 478565569 789625611 62304493 951512172 986810801 988965469 20393551 283416709 750604147 866775688 695863606 788569766 393555568 452523766 914131948 945517194 264059740 696642929 699567560 767547064 357304191 502884173 281900645 401472306 484901261 766723920 825179569 843034422 907399074 976149644 47036344 276511937 50840787 369439094 808152178 828507778 966666240 976556588 450102637 477905211 898878963 899664801 188535333 591445114 878483700 975528894 11020296 312655246 641144297 821401337 913223829 968452569 327309276 913273717 640249804 954054598 838933062 954757948 87784944 368412334 946679911 951323477 514105510 656389426 693802126 967887390 720310544 839913393 292687082 724292126 273679857 630575438 323250737 846662063 402893996 715558916 446452664 459371018 684794943 763603505 186175701 588061144 159572846 301001385 943434725 944745360 254999366 916327028 684003816 873551858 281926573 779972711 322253447 672758085 316708612 688468353 162409178 971982894 805072220 962416823 801815569 844267449 375212430 638766737 411555976 669433416 486338178 889483791 285867123 962605085 631039520 641257836 221000852 347692182 78528750 407176389 746639904 806458824 122828966 419610829 74653941 851807520 189254856 784559031 1324420 409137172 639220947 960129103 779510469 947176196 455645565 836559876 87100560 570937465 87972076 681820866 848196551 935957175 386995333 902024065 395573723 812815254 843507736 951550441 29272168 899960625 222157336 637317666 8437361 17784924 402645348 913536699 412505809 644174629 135947658 298145593 561383923 815088053 305857694 964113897 177786001 396278752 282551070 744508938 588763743 929183834 445374156 949502800 803930276 973909256 760860777 797785678 467948297 996899198 690768935 982556470 421052421 770220179 340127839 564600059 29653605 209526320 484896870 842268997 772942655 789490989 69615420 287148844 278349686 546392498 608197455 839850591 453049563 541944103 54788719 108956415 32961830 75724309 186711721 558872734 586410970 821624847 870926005 888061146 689208919 962982569 615926901 723664115 431797971 579349447 612825620 824951787 563497027 777900757 394543735 663996550 740200046 877453785 306113780 373471330 956186462 978014940 36313156 808300567 778013812 794699460 512402162 811639952 929356305 959578581 482039165 892539539 532570652 818186918 77587712 753630313 85361129 428475264 742973659 967371395 444673662 631232493 79366655 743546241 632485534 824462247 205985625 479136508 719002369 841173960 871351030 898162005 641112758 840089940 695136836 858686124 165138109 379989877 160320324 548357786 272819195 919003511 710141485 768575202 919275377 988494230 329189822 485027013 810609924 992436814 620599724 693882304 716899499 793613553 124511361 352838988 533667813 896676317 225244844 363154779 791361228 998388886 57159286 96109703 902852550 958129767 77458359 967693462 111500679 597296844 329853566 999222209 780578365 897460120 207434308 273671783 585324575 862878934 583171460 805771911 424008757 638719983 579247165 891915527 570841810 930139712 543622352 842673681 103539625 932154889 798048334 909583356 287561370 467404378 910029699 993613149 516899727 999243314 369407939 953861467 394118680 427281556 779036538 900808566 898018746 925139557 303165313 449084634 57859771 727722642 23581220 225312163 997081350 997697913 710989965 819389315 791640749 934614676 828273331 847481775 360019518 798206471 628430331 910817601 193036902 968105299 693237899 846002632 33300144 263221977 878293532 883317970 752503029 964621037 781846709 850557435 404105302 795641648 15386169 516423053 911933500 912351747 781298354 817420787 386893179 392005318 580809520 737078728 408551515 905602428 718521663 750725508 95850260 851082707 995242350 997074252 868177236 996740358 112538025 431271271 643630388 862180552 180959451 299863458 764106316 765349491 46606739 771650341 955469235 957773755 872264051 884496729 702157584 942185534 11618840 76756454 202043162 463554851 436009279 448912010 327128074 839058835 525883660 872777904 330111520 956256029 964351911 981446160 430387289 783553406 603665573 728748139 828888233 910621816 370113412 926196234 702946711 724226725 695204578 793476694 617059355 819037327 654871211 921240406 296599948 387796520 886165912 974184810 102837062 766541770 271143373 554558593 525707728 934603789 572096684 728784010 356806632 485329610 677506982 906280888 255338512 369159595 929627548 968161442 215581623 784755127 721910704 859163041 731592234 981980562 281030963 579562937 403680686 594992802 688986304 970852494 854604551 942047669 198652134 440104099 722612096 726142362 825907898 930773648 416308691 855240283 72951996 969516586 515916735 807037485 284256570 859230209 118352167 344799657 404306912 919594760 711590414 734306284 909049830 934945652 836787277 997947405 442239074 644426745 976803638 998302297 314605841 738552469 207298819 794608523 161547639 709700150 929576173 953481608 642533603 881754963 117055157 818789618 594499899 800031834 789362491 857107333 823243038 972989221 124340067 304304761 685289643 759344487 209451362 269252743 272095581 862673151 764317519 851557757 728797323 896927472 755916774 812708300 345657881 870032736 752254852 951613584 345570193 614152718 46259019 641521311 55830 748967025 577954376 697817970 732533430 864449838 17116070 960436266 635495840 664728595 616656940 847237498 93751686 595190460 526414331 562664665 447787593 889315689 5883235 569428287 751030480 825243505 633115680 974780569 835637037 836220840 432430399 673538872 376320168 929992044 853520134 868590703 803420032 815833608 267996837 611470981 113242279 556839693 333077095 537944795 955023360 970501740 171913000 201201022 31575783 980614105 485478380 694937502 830864611 895752802 667778577 946448755 854344869 937250667 340426511 712027789 987565646 997591075 127898582 416590400 411528388 661305378 321281796 924809291 224050808 931862755 181938512 635614381 731022643 741648020 746945353 800606192 564893949 985735498 957867677 985071628 643823962 790893687 285287575 797276322 672949927 754226364 229490646 658870585 3858734 719600963 786045814 970310405 595387607 649268541 826679579 931737419 125511290 287778224 282193752 285162559 445089597 686538624 995530494 995799491 565537843 714925311 802572385 971580528 604366159 709633259 815505142 919191625 546911416 771681566 81427033 813343078 906772871 917282879 671335879 862070087 28022557 717094087 898881208 950077617 964292861 965543819 771479048 899626495 292286874 951949636 170793463 725631679 99892026 951815978 637022324 902968515 676309406 878022965 645327187 922489271 301997342 910748903 551250496 980386364 921621733 980092083 290251047 689929978 418958684 752250219 144580852 997437462 787607549 831716351 604024877 680719727 500250224 661242329 876799098 984657263 990488391 998237158 568046087 818270010 38410657 626235592 636161307 926561520 141067850 606002559 142839211 490475370 7845642 318663790 688515146 721215910 196885871 459274515 70590604 793175802 214520072 925846049 790891474 849625786 453610981 600397479 630410579 712356124 112353625 285787714 334568359 908957588 956823760 995636093 752562914 786881129 913453584 977139490 122369294 690184534 117077797 382851148 327973597 551508546 376230016 397085240 435668016 754042628 293607402 443339014 526650544 702604745 903550014 905862159 546398968 839399561 646143530 696729056 43961567 594898510 762153250 933605356 298510505 449945740 626343840 825661303 79414759 207360507 68122121 958799628 313247302 586205459 291804824 869825072 563880889 770899168 465822748 990705510 67605325 355140999 194081668 598280259 446887222 821714624 270357183 398575905 584605437 956703905 815640942 967983734 298515478 306539722 66689805 136028638 297526194 312448889 492721394 780099374 756943632 860631540 436931865 673672319 926508440 972529890 45614295 229203071 96983575 112136810 715206074 759230623 766279112 871732911 501211146 852149348 40190511 504169108 493449467 905013412 92379242 367313084 863670528 964303025 904036904 939595155 794975915 910044364 6205877 17376518 45359934 754156992 317313287 350734710 925748110 989193833 22158615 519726598 915742182 966670779 853316373 979554705 995694618 998168038 957050244 961283967 416871386 672763467 217456016 787682258 727490886 740005107 285911667 950907976 380738945 419046777 358455740 432711004 865943074 889526125 492707969 661678045 604669318 984084498 107729699 399059231 494738836 827953725 632992128 638666451 581695687 868430871 577266951 610179514 303051288 521812616 954463797 960090063 776125190 974505541 125757210 747787672 829212930 969296926 677742500 996436150 622252020 658894594 89334251 947717516 224871213 764521597 854647575 904167550 687533372 747644573 13831685 530032891 907115957 969190269 426631432 955286597 966228044 979831761 710679376 819865916 514049234 832864315 493963680 713556077 978995906 983718588 349139853 800471324 838666455 938191994 503210720 748856102 894943501 949185263 710539171 825422810 561898270 833320637 520957451 557444248 908600303 975090442 646075886 756071635 814143223 946997471 651618664 780659709 422914093 508649279 521666247 890378960 618638811 758053248 938204960 982449256 343981563 519260370 452033758 966746596 510428111 804836893 455262542 902225701 957943775 982324826 233978127 680332930 25778222 104844277 655150589 689164614 164966107 648542416 461508747 735900802 655256284 922473501 288329887 433502216 186358739 974261532 741077180 907154930 498014958 612472144 307169199 957667839 377915448 982827956 412182788 913006643 148927296 665095145 888228455 891886980 651895223 933458750 816178490 824954971 407502128 535560172 163199663 275498950 12345389 864647263 984619988 995141731 684438461 718616451 885970713 930660800 173410348 496371383 898315201 934099712 121605081 447873478 165528014 697831783 267061157 954987938 90966217 757249692 293155234 961176616 569771887 585400758 571559442 657654753 836829403 955361056 472347971 506701515 782927041 839009827 958182333 972808562 621959821 761617162 699302548 832389049 786080126 834787103 663481848 725866218 245879162 963791776 180649044 818527459 145567627 235098973 773491923 904450200 886163322 898083497 893720142 923632661 679061918 741675344 178049899 763004695 422431456 791751078 416491306 894599086 351371484 653145956 90694119 884939565 819648042 927970050 165866363 476355772 103636504 518854342 957346 347371110 740588755 794433085 296705763 617776017 479591112 582500732 551915476 902158011 139807929 334352395 683085438 839767499 185111555 724503488 91366028 745529715 469274414 653785594 336917449 466347626 232209674 685016516 844126616 895170724 418051042 557222608 569858144 851094283 171359977 661427241 924238872 942943475 525200677 905579494 722585814 908725453 181351727 914098901 51953473 549048557 67986956 605724687 53030429 796777075 999192635 999232245 844467657 961397049 226834338 616824218 138532050 528201353 375633649 941183294 864199186 961528289 877824192 910621780 883669602 914788073 352783925 899478189 51454750 794821551 598369370 627471126 377239047 980711907 913452012 947881570 67865139 922979832 43714767 250160649 227777584 473166745 184139307 322253883 191428093 536738310 629466392 996590976 766601262 977194960 221142559 479118287 307072242 876489834 603177638 626929940 398223787 465320628 126273613 566879768 591073017 648821925 568778372 866674814 833689260 964940450 791642205 810918043 921301680 943113838 112809178 123748032 848521546 888358256 793229438 812513254 680368728 856092703 631854857 776657159 48499828 431183000 956098647 972073425 141711048 308247141 243132493 654485128 785510894 967944049 897648545 940821923 990747983 996099783 176172443 862285396 149605873 634525727 791837399 800184988 839416165 879616745 914589149 923732383 638825718 707262485 537903353 747383723 37438799 385360788 389819450 894655712 42667751 571784694 109609312 640461425 621791215 826897927 373616792 438585895 84500876 563978500 422948603 823505186 977127326 998793132 18973366 885381542 101735455 422217574 947963295 995178013 151888717 892719619 558074840 582285951 900733298 928532097 399214500 848707321 69668240 359912189 544592969 733422231 479610700 695119833 110832111 732715945 731585175 801485464 472128908 968628628 939024109 984451266 24367871 158995430 264465371 772072534 809918881 905954261 427889728 943119087 862151580 970190269 401252537 846642834 208163520 267661525 33333236 932827178 506644777 882223131 120305427 177194643 607296624 941426045 665431906 916008314 419306771 945774284 283995298 500805616 480464888 993382289 961171719 982143271 511755900 909779053 83055427 703038592 717669379 843834850 585471276 725461705 125461993 302996866 725758897 746157774 782898531 970782019 651584236 921000689 462546876 924443430 671837732 918205996 88322604 358063437 733985720 802322219 892881588 965958684 214095814 377665805 129037066 202714988 224141583 942743545 754549390 851757952 10431038 623702146 890345854 993724612 970971510 991375914 64429036 622218684 129905904 589182946 319045501 426261155 648729382 806405459 114696808 825540001 20432664 948293953 182498739 324466649 758043590 817611730 926629040 933770240 725259461 872371957 92192916 683796891 182764872 383722716 331877412 563181801 339033518 578672080 283369193 763174716 336719178 539356737 973457385 985917023 184801386 931402174 305891945 961312641 754080763 938613423 462000166 571035894 499399936 930604807 928955326 933944955 636705667 727095615 686006140 848038814 393939623 414215438 621547994 840029282 344346475 589104332 210431082 465561775 354154527 602077044 441852267 468531566 77731761 689744492 166631626 510101799 23937796 744503017 729229450 739812858 872533397 905693198 156155556 187722520 977878137 995033366 441521481 697602350 686670857 737059592 695348614 918083906 327988104 752717434 52416515 496476939 523438727 662534981 686014406 742506309 952808223 961004635 512572621 957222675 319957288 835385059 806340188 999324129 532694584 747473883 360015617 919256975 87505670 600709204 984040815 988580929 829787129 940448907 559795441 940811419 511897101 618197481 169389854 415730832 291299494 958644033 65633930 262104450 819451986 988255044 950627095 960791756 77316792 230839203 100636950 381030905 261443899 792616495 118154678 572270578 307658064 944102591 502131278 623608901 712085914 890577273 904916021 966116084 221967084 747007668 589407455 834501896 942706672 957632728 903424042 992152642 951745769 958735387 476221910 954884953 657756360 709415360 683223577 843790059 997912092 998831902 943148321 960148511 797090518 974419210 883850585 978610232 664707503 818336245 847284095 884299901 538051491 999129307 878936959 907395158 608916422 970112491 878683964 961604495 17690373 217182176 859624032 899111318 174136471 538947695 298613391 653272422 674153005 928427071 704493925 733142894 37057171 499042108 294887299 446699630 682140989 717503256 736065512 911499451 211722004 234860516 797665631 923814769 747244520 781753948 917382001 954805016 856057325 937094667 506863122 972979543 815929316 989832260 852839398 896901406 848464126 899659251 876997994 917263589 662357668 901254639 265513651 661070120 982790389 990263092 372757943 955567214 652770017 912886586 653020945 794911306 139990766 483870029 608932126 748659439 977233154 993908992 162525386 662150246 982193472 991782005 308905139 629214687 950744862 987653435 890279062 998919367 220319797 485800074 418294276 848298075 828031362 971786695 363799277 995275139 55651053 562878161 143895074 962028335 194332356 954757772 679251056 864992230 478345385 870717261 823851427 968253610 831520770 940489474 791926958 892257968 445936343 591365365 875967731 974940438 589362451 841285211 804655471 805138261 649093267 780960926 289634217 480656078 303146913 909233140 36838966 53017359 571710722 828423386 22289545 339735543 939492449 977015696 879804403 977276745 613545028 705649332 706867914 762569938 992741482 992824070 666363797 788248217 268917647 526098452 984649896 985248346 121603288 159408492 57243343 749934053 916900705 994508272 642143455 678920991 254096531 345721281 341416627 645542648 459457627 823996184 932571914 970999682 735585067 820875138 647393692 998829385 258697867 461917068 723049606 795710843 487751857 646986383 905355876 912314025 590059285 636159025 210027226 927497916 528603271 583399672 584140908 970503960 904758501 995055269 757450009 804147705 885745272 914829633 246159670 921923945 343295978 744127313 443912722 597947563 211543931 965615169 942600135 958761746 423603645 884915957 570252901 717007396 149334961 610248039 854593090 969849290 344476616 946358119 542408701 769612104 720743711 775553085 219408024 939318985 371068967 766594424 108105022 169523631 888104011 934060162 925877208 985000013 96896886 980755076 519520726 546767976 446946965 645123665 486804117 647614394 593441561 741516888 88692612 129214194 358879672 703108318 979696933 991530454 62660589 117359964 381831590 743548316 369284325 694906888 491154583 582099299 988044912 996798965 616131070 986437746 714023556 998515454 329092742 892958702 880376991 967036444 139495298 520422716 445418451 744345672 677565047 702618095 860119699 943545370 670489314 923040775 349275143 690179919 388043897 633873086 31705967 884123227 424853617 776301080 165206518 597523975 174875429 652306883 445113638 472816216 507130649 859206103 161541925 558437958 450655831 579559867 682111681 954121970 974578628 988030534 908114145 917934138 294854291 685789720 469283723 994758456 729422291 934332405 251507787 524223471 960751212 996360118 594607825 872765437 524820288 565049869 352361613 660302439 290037164 625325114 192301122 675703319 279356279 636431793 434564069 586281809 837060195 847703969 865278698 974649060 186500703 564433160 936960210 959361138 4830661 703141875 950286298 964827559 566978429 605726733 525767728 737905509 863046264 887101237 867346030 948449147 185905686 866217734 933977489 987526041 457904577 657443336 804042600 918059790 906321259 939921290 308277292 909561545 168196365 429626471 751530547 792741820 971157595 973232501 166051596 957521264 697930952 729259695 168930272 926624927 108275162 614118852 289238584 463932919 669501099 775991131 348514077 417565936 514547092 812825145 14391871 849800645 663261721 769480933 471403385 562224490 115025341 612188217 45859801 391901516 136968830 804358495 671853527 767301061 773854234 918862443 291356656 617438837 803542613 885939994 976251200 982755641 462731172 670107862 52992551 60193918 412603389 471821425 942009778 997033913 925702180 972487091 993889298 998903055 557973887 843248246 114786035 310573602 449818456 635072262 252009971 322267087 18117397 417963647 538023798 880473336 475571150 813270993 124413881 512324769 815977187 977792237 799403843 893236744 494758501 998774507 86089195 786754988 983902180 991486928 363410694 741014916 374396797 956398967 785618117 956333322 568553917 934593250 533307469 732881601 738949321 898191771 248550660 460352028 381857125 867289001 664303135 825062794 451572344 670843676 637084520 742576679 727286498 869572812 112299067 443248058 383289471 438721288 496989993 593921514 509257187 980456471 719004715 770564553 672831645 854605858 657860312 870022882 628934231 763774006 226642249 864030183 899879079 907712779 154958706 745963605 626819648 980349986 357254232 911054756 756452378 785998164 312491299 540271453 179627259 601742023 614095194 769909234 284115374 868568814 938803189 996036885 548839002 739336471 100205164 244190145 425735318 911269060 626803449 901401033 776548476 898721171 547244360 857453706 486543880 641078362 947204159 957674532 996933496 998829035 343796503 620399407 907035607 933523118 829424706 893360681 788536473 898908827 503828685 873988082 694550744 995115976 721022079 736713396 516904765 557634858 253461869 539175279 928038361 934467505 699054555 862314871 623814245 749117323 142327733 916770842 348754250 382015491 735359791 827356199 211078204 326851384 808609046 997777802 157985852 637830824 570035804 982054066 723180725 829475127 162855679 901943136 224353175 638806027 346933640 448930165 943614707 968211660 124943702 651945261 773436412 852176728 175012109 918025848 308658565 444043165 694535690 796692448 380324769 544886790 367031252 881610383 2649066 868862204 466623748 566547424 270070214 411072647 536440559 814340182 599446799 959757168 271317316 603892822 918912016 934935430 889939703 972855122 175895169 663128150 524173133 963949046 201315365 896002083 977795476 984424586 952659259 960293012 176975771 661608454 352806931 633550424 177342307 706448027 77433987 643003403 809764211 897673320 692056552 925499814 96505394 236642271 374752657 514267273 642204198 731925662 407232027 939867127 788257292 878595007 1404447 795214493 19137798 68722199 57388146 863105723 401386311 857106477 789904506 823379605 142704551 763234314 846888295 879759731 683673399 995939954 517321343 546582443 654965012 924831908 324127383 752479820 676196197 921040147 564607405 757170725 574403485 964885222 244227898 590565201 31701680 585345364 308948027 343660813 881602434 900072621 632716418 730876521 384804376 909140025 964056889 972056212 421924749 616763643 929804512 955454722 243545631 520299008 502233400 966009387 222084336 911158242 725808207 744851459 932308772 970612941 624245341 846193456 979477876 991108183 548678573 578247085 429735916 529483322 439300344 464222974 92790062 314952667 523917995 673540060 961474676 974629050 804320571 923681849 394121054 461255495 434234139 603731882 814576077 864368289 976170211 992807444 42902151 502169681 93372803 969045264 926794732 953128242 722614701 850003188 775970424 797282560 706998098 874726594 135679983 209989931 196510144 514561836 122672104 718706172 209392081 798513675 836340779 886193811 957344287 989280238 56149326 397349343 133165317 160976269 641564562 937430004 460017978 869378512 982347034 994357582 436072586 787842157 376226105 580131441 816379379 961065592 49152763 923783290 354032206 539691364 312329485 847363016 711885125 781838983 504226055 683526012 61635753 215572924 76141116 386918901 944498482 958831504 526883873 747001367 41936491 232801804 302359033 560203464 107039977 183723550 600889733 712789404 360979008 526968812 870622831 970020132 833862028 925448830 692813711 825170110 38469894 181911351 211759641 884164193 238590200 921548529 284587734 890373940 319519203 762135625 750173186 994183942 497167000 897500873 17176546 712482444 729247899 841899590 886285699 912857828 692404716 803522949 98924822 550543914 785746770 807440945 907260233 940351840 107762535 163516185 984208838 998162007 421393713 929219788 315234504 645040135 880033421 918363925 230393416 942305244 46440916 747563833 716487808 799114251 950405752 984443052 127423196 962385222 950457473 970177797 993574718 997946330 504434334 867497695 135036255 145365534 519449753 835716710 54984733 133566543 163423913 308177293 842317462 863951750 38425320 530518519 495969835 922739655 35442 926059125 761740908 843494380 393894283 797328071 667261872 928301554 467114007 904526915 828993000 931102913 389423658 389592579 934975917 989001410 213856838 809657286 721837901 779732462 154475073 368435845 861948108 929135523 401651006 914189411 365388290 714529928 657205936 930583083 353962480 984450823 718366087 869563601 756157507 966183458 14429916 106644427 709098468 881109660 307831401 779823975 145654528 709381946 518507724 978233041 675694008 771157845 626654014 653780219 690453543 764377921 583865826 830576982 750584527 894978899 223014635 604023941 337231803 916738008 279283667 589832748 409781435 766061723 317705352 547206139 801344172 871276109 553386926 573269658 900343543 990596447 703984875 960549794 464800616 859908996 512064434 710587398 546881742 832335931 534094822 578423198 937492650 979448051 402899705 649220391 845762141 931694462 88473738 313568965 268885912 957578982 865506409 940082806 210115760 917274333 307405460 419828247 789367821 808296524 780072009 839618831 512207942 942816235 357025193 908791063 174180553 373805230 4142229 391851611 733174705 740411871 863519964 880267563 135362062 449295409 196549992 942175212 525245831 769943071 316384304 612901507 902713591 932179345 340829291 490145579 479152768 543766319 238431155 615410680 395540957 432155939 559199442 706145484 409665255 565652853 120429041 324233099 491763611 814382514 102696681 489883525 368281241 599117971 694089937 952075841 685427087 767830042 392872028 929304738 997731214 999195698 866099673 940874151 46778692 797091403 756247108 895918104 274181927 760133441 339664050 479257841 760415048 810015977 502920383 699319098 521620951 935950803 369924327 659610305 737828645 763637069 850281448 865015553 312533784 807623431 741122036 831088512 681152885 697895959 206017023 336884009 179372202 361002738 143309687 226971171 743840281 845660088 343640706 389479416 953877521 962973870 549218752 761855917 856432689 950494185 899845303 901109400 525796748 838613577 145074514 325227212 703222403 705319520 252581019 545543802 722691225 901204476 908021330 997095425 780971792 782055918 968704894 992829515 851951669 911589108 549373796 987931003 295594064 429580886 581156617 964289968 408660771 578638171 359849776 515637823 704890557 846175113 529618474 613143425 120007027 125746071 646360821 816513407 826429113 884200674 965433711 980053193 15707292 315736508 489269233 827127823 41868354 695189766 640815011 676044152 695922971 736640615 789673081 803624698 605461541 699363043 506842733 878903478 62354051 415752181 672878272 776172091 248202285 971727027 999392097 999392532 23958746 34053919 747395603 922450406 734143612 787619293 687635280 783045224 17471507 174133062 817457728 956981457 478893668 670623651 107483018 344475655 744254578 909460913 277201310 409431494 520049672 707782317 151920544 948174381 613880578 753491259 182857589 698136403 804077483 863490546 683807358 719871134 641533859 950673993 924944961 950397657 715784386 909607651 334303360 753092755 501395665 763468998 766570846 950923539 746849458 795499219 414604566 551327732 828734991 867187192 124271420 398797705 431448091 819031374 397142499 955266729 555412107 737160124 20939312 996696171 137155273 236064424 660786748 982784245 229838416 939291618 792635697 922798162 927970111 995048636 921480731 962523740 240412197 486074413 295185567 523150930 450219134 951991749 402062277 858639674 205431799 936672957 842544992 896646235 694458990 829840430 673509822 900609290 766625443 767641059 935832550 989830749 571266306 676466952 466068362 576086123 264688206 973060158 698462488 838909165 605193707 689009999 438451032 578479529 966889668 972658664 131227896 400422822 803115661 838254427 804939769 907758000 265447979 278617072 742956276 837779446 642404151 664991066 653586828 670865872 839944609 894140122 114147867 120761712 210551615 471139614 741493711 777456552 324415776 370860559 672398876 916895487 167361267 316954384 580657825 846741596 327335375 884245252 212585231 786742997 836457723 929538901 317710832 372035703 888743792 904355447 234280829 444114171 3865758 782807565 445463683 838598772 762685569 913119782 409696434 429464442 386905531 652482636 36767439 627455688 307199943 334372438 495619396 783354163 169046516 449785441 225466647 407619647 367936231 638686031 316891087 926620826 97828549 400665721 498113117 786174834 956498481 959933889 992912182 992916352 542911862 607684824 229893254 551998932 427984746 489103871 437080620 673348828 6015923 669488431 777604453 810999715 611918114 772678791 805356464 966246847 998125150 998535607 588559548 911404366 754974169 969761137 568150031 959984371 109281656 743978643 19276952 821684597 877190595 951246428 181467609 882842521 207797835 554721777 970376987 997316674 712854912 788240224 857969655 874519562 46786187 402504470 149060845 942883767 967906725 988411757 148907197 354519186 975239317 996529382 913974025 996711773 921238699 966834777 361878298 636873224 858256241 995020337 862422258 970391070 797429263 986873836 416228485 637399668 931056299 948698905 270903524 718568171 213627607 593371513 387402012 424436319 922889200 965602474 899597124 921044449 945883928 992572125 138749530 377895583 633355839 646429802 550862616 716926889 764668927 892111405 472685461 747723233 784575905 798286660 189771131 452823079 430169632 513211905 731793105 822106627 737746812 914747094 928939363 980188092 286595303 937836112 949626438 956445761 366029599 918970104 919391795 937721123 711700766 855420543 14539320 299972205 319777480 388077777 177792732 653585631 740580482 951129879 303645521 898034447 601759177 678422839 334994149 584727214 367947750 918266052 638898804 963260293 492842750 636307868 84325346 570298665 29155269 323881674 287028620 560325885 216556409 418848766 857832421 929922622 208052679 921704784 913877559 940542676 268902712 776985202 358724531 504212026 806297320 919394124 819387567 881986575 189934449 519220548 626437852 947446197 821558718 826260051 135134212 565159119 351117623 481597630 762639312 865011677 286380714 807878933 801265186 889336401 263822146 825762764 429806026 639473403 364280319 562498073 985597213 994507826 678026542 810608272 61772290 845121429 359069438 906936136 637859641 921333202 66813676 315220523 891409678 935699943 739820132 822437563 601124020 859258321 55404633 816731791 288708131 716443234 885777441 976659810 191583815 367730988 205536567 598034814 421325222 701582761 837002201 910062059 849515696 859247487 200233374 930421250 438645205 985262664 448051715 959343810 568481374 811537612 539663729 765317494 699167584 742281178 761231136 794963502 957719916 997548019 769555269 991990616 803664696 869035994 164493442 479489357 977913121 980491735 477079933 522210045 842983882 894725670 423884546 879613855 464420932 539165805 899050900 977681987 65660745 163849196 548314573 898532444 153889311 362619190 303149988 502225843 938255581 976855553 783967482 849332568 319551880 521344502 146380882 172513114 320760952 978901313 919252547 978340344 868560659 965845317 649802501 675636423 428438617 972540465 295187387 447612134 478329032 767386591 333828158 349037836 9046366 419087661 196369635 325092451 878213416 904167754 713790313 922577988 285933235 448181066 240971581 886409132 125564532 923955659 113342376 533801046 283176543 774941922 195224565 277091557 397100328 538152073 155921611 939197660 240306458 434182918 82844135 884696420 29333107 773642725 610450527 701659143 400503733 583641513 894224074 937248925 701548897 778570478 42011075 716015371 24798772 286564016 630660378 689686462 100010220 793092540 294244579 310455869 740707289 860241352 75138168 530815472 620266454 815069305 510279244 977724262 15406979 674131154 590038877 933733767 441011594 802969672 149791107 997074387 552215592 724490924 655064193 712009248 517666067 763817070 286568678 895572246 623963892 855468947 507634246 686193117 613274932 684068493 514847256 859323330 156164229 566399903 350781791 840644072 41224374 522638918 979691293 997379030 440069204 806948719 908025791 925510657 576094219 955848971 920578482 998034186 95923794 927162579 77181003 575972619 940603516 971193240 729545619 932260037 558131231 907058710 739042574 857524654 305725391 511025769 354279006 762647075 283208461 949808189 59423759 618906678 263160703 358368183 633514191 752864700 48074166 709755102 178035539 743684244 475248011 647747030 933179735 934148897 122246365 136621971 411546631 636830950 705128492 937589540 348823604 669086501 676692413 834055612 573075092 886253848 704301311 768864964 413507402 596685188 34727370 555061672 176231993 599527611 324118191 916032995 678273081 984931193 334276961 798255022 709314659 840476427 678714665 989418303 279620107 700126203 632244807 778379379 959707267 974863804 347182612 783080225 210319091 471523546 615340402 935741151 810227579 925341608 767046208 973083299 33490422 85569972 153680753 288895390 74181721 582988189 467055527 979199207 133713250 534308685 267495221 327316669 110654508 280439684 929021527 996322542 447067587 985524445 559750923 801569302 466073395 781489086 795434540 853799822 434479027 517978991 287302986 853352403 558613649 587741989 247282608 551946328 964952926 969887936 928891435 965209015 393051318 824394513 268361039 729713582 927704121 957260848 685002020 700204943 862791900 907554556 109545244 989070062 370193388 559965567 136473435 295323271 298189436 545584426 391518951 694311426 871667388 898403591 654978628 835609057 686770099 889959223 548152011 906480075 317327199 378581616 26235980 910214148 991702412 992616812 781393467 982477892 580346914 716511907 13227340 306511464 647463580 937133138 195359764 399821090 93558472 157760324 296492264 691965963 305728649 979011148 130329144 138951433 915227833 972135895 402970369 922994440 163813703 697318755 969057962 982717113 412273346 790063143 548062840 867316367 671573156 730607597 190500256 657006781 846724781 942064159 49046894 291611001 715253489 813594633 720704240 776794797 852220334 929566365 503518223 833735177 253539290 698453051 295014901 411270120 436673569 535189850 80656521 498706862 392731252 799843525 205109034 247418843 627834290 828789318 434444320 873839762 225390436 604511110 403722136 977236800 734501787 863776228 326609215 517827440 833472177 988931233 673899782 920962746 792275092 885540962 510837763 761164469 601992140 798288002 46080185 329461463 42456177 117283432 929505719 967940444 472268016 971338353 737822850 969025278 639369714 972193671 911202163 985319096 130656774 284657379 739050701 869676275 773590143 943101018 921040599 971389485 172986206 365139369 563793516 796734015 455085621 540851169 20187752 834806513 647133694 876138529 931993239 981961851 192232024 534656017 624182018 864475350 293225955 293730859 241327980 669421540 817320913 975495580 897503536 910127184 911688027 968138549 174471329 904241793 374669781 908450232 138552786 204767007 568892007 971647306 905877927 956819605 851373557 905783675 210015979 963693243 738909938 774429939 652092766 959247764 386883455 931899423 669665948 747615214 135721702 136835973 97935842 730696789 497812 857226181 398713665 713862179 909505924 926528939 383683497 624156558 551173629 782455009 882708465 926976305 19393028 317921565 316898515 529629403 154152446 252566015 393195345 549017349 449587962 979275423 648356684 910953071 700826991 878432729 253105598 950075610 7378774 913611927 309383236 334009061 944087237 962403549 800128934 938059784 805659468 845271398 493867635 925450950 446561027 581521554 575833016 708920124 490530957 694536890 930231759 995662852 245871229 738177236 585625438 871372074 470106317 490358310 55613524 538342830 19998753 158728782 24603461 203635790 125201888 422626160 825880513 896874209 148381091 452187007 663775219 907771616 542169560 635372349 99084364 709198571 784257632 904726601 771239572 879471153 644807634 838360748 844931088 974931852 401254438 504940324 689633760 785889324 216055338 976386458 927427452 997533539 423176892 764068711 5815110 781738033 116356013 176221844 726106832 940129696 537649517 850693809 349699504 416789056 58621367 474560001 474932361 869759175 985544383 993282271 236649372 502076357 168690160 169364355 948731781 957540749 849031508 908796008 710453041 987246122 683783013 983707169 602090452 983085936 789951702 918282657 478676447 522748361 117579748 290542621 290439105 513553410 683496418 947271967 451687951 937390876 205186106 954482333 557223435 565632008 609444072 935861119 531170012 876479879 77590179 517954199 606868636 749158140 402234449 712810011 108443198 146903652 239041123 841419838 125458558 594184545 988680595 994581064 784091030 880779516 827685655 936502553 684844540 907594759 254666119 822593687 564889214 663354413 950592308 985893656 978419074 993908844 892289066 988541613 311500998 675411664 715886153 727327708 781308963 791901667 695970590 796848393 2777214 251282621 572851625 634583160 391015845 669489732 975867001 989441067 124085988 660190573 227741566 372663370 681657473 696083180 836553502 869754852 825961926 887555304 386170149 477103722 74988447 293435727 443348838 617455164 350760871 839986987 262872248 759376347 408962511 839266094 239862834 716907197 341537117 548303700 296959018 771071197 530340374 968016528 287348031 942446854 60712657 126477903 43669378 673886420 843026997 849402503 691636563 906923139 520761971 688772938 20343531 287567832 68522176 226244612 264835209 274847627 447537047 876066584 542008239 768454206 134063887 758873971 355140052 395703857 389246881 656261751 143477508 759090378 318098441 468045835 54416126 356186558 843593195 880478436 805812540 978146285 711606246 892427566 528652471 891992339 699689131 969287908 603238979 723336964 678893319 907906830 407270871 979423709 432868323 581034327 904560531 912980302 334321837 876653375 718680381 846853494 667262871 850010693 695054718 819208259 628769764 975786678 294563379 304687263 990460150 990831349 424881092 724369993 45127265 261428750 767232847 944103646 596423604 792670771 430068917 705474734 640879906 756274560 423305925 647844022 274631167 681105625 29209403 654758581 452330506 743482928 600662310 862420779 43562452 993168493 235300807 540418133 678612671 946985660 767476195 851525868 489638670 798366808 713853004 818279242 578542288 597727926 468651913 534442492 439571245 794680413 671303339 725672391 861145070 940597864 176529699 374401445 938810704 972870161 46380860 86157684 363054768 925255673 500301878 639759060 179562373 448514835 120181181 249617707 419820135 927879235 379340926 978263296 69569107 668203875 775977375 864154429 885873985 955298020 351614603 534962343 830233728 988574828 961829460 975416240 249928337 648455505 340476369 755003403 44163145 928080290 438966438 948755815 282270289 563021177 52338425 495050824 926876726 998352592 585563903 654265143 786444262 835636973 123902891 887693506 656846776 661688086 690465615 696976897 918128134 993283297 171702305 808960419 30490332 732204312 525963615 733015978 132522290 456697143 896045143 948517406 342994170 863259025 932459445 975478994 585022507 825368903 258701756 441656477 341064898 687745493 256424979 706723131 934831090 965533050 23531793 635126728 120721436 349682927 796849958 897884103 930767125 986686195 477530615 797524143 909947100 975800477 590872541 817381995 649463836 846957245 235283851 888815675 32180798 178585175 935030542 974265027 786774556 894083486 691372162 982891478 33791484 627110944 561380987 708176185 802876093 983097044 317571103 557313496 69644288 189758976 54447313 81720940 252501618 331050121 145932567 691923591 810527939 894398227 207427486 402245913 758185196 821819435 650483464 921116090 970119962 975942872 134197940 212465538 89000905 202881551 3905139 691127484 911993905 918535405 837577206 857366554 145110019 575258927 741660719 903281239 987912436 989175010 210577493 716536690 872664448 941881932 494259469 814092509 20645405 541047900 554213461 559344479 657941468 846750424 377168317 875684638 159825011 508140450 319322687 821034092 766828154 787470578 84896052 180314618 14837973 208378550 97033757 705237724 462145745 501110277 984680451 990103130 834381600 914968256 367086998 811237123 755421103 798888143 662790827 664879797 140355906 146113315 923225441 943688623 311341017 760468753 909905568 915299136 959694493 972722583 992388022 993978544 356683570 636455917 101925128 774307786 370176523 696817622 376459912 436563832 981777882 993301550 300438391 434426427 779466758 799082707 500536011 955313371 100690672 177001631 405090433 897714660 482668332 696281876 365099877 632066067 185126382 598249783 676734244 685333592 477946997 884395596 489427721 718473468 597344812 944264260 376658540 540102244 620586550 832673269 206099485 335778592 351785409 617392305 148872433 259191858 926945638 973650817 773254329 823625411 131877448 391629663 211084048 502122652 139943170 348664762 261169793 334698105 9297924 697058812 620757820 626115811 383139875 993481378 468758089 871285012 166964033 233797345 846885924 871121857 841036684 888508017 876989189 951979928 661542584 849942494 82799142 805705433 884657983 979788155 151103249 589189512 956143552 988402465 952849451 988849544 769486254 787091680 364765388 387246597 224551892 939378293 660215966 843477535 943001174 982324436 983644946 988274804 64139189 546399626 531779445 860684764 220287916 278636898 875428555 919977056 973966463 984177898 57701403 688360624 539885466 625851468 900635224 919112619 90191012 966320635 793502168 901347913 158150959 688176599 436314355 874043147 417727570 944964886 741009819 852256633 519163352 565927944 240867592 283305907 561658405 566793868 846433246 924243405 48337089 75432799 69899595 272945045 558019011 570603157 961885144 973725661 613001367 704417754 775605656 866261811 637677632 662238063 249184184 432749382 806332960 845123136 41866621 764182377 188913413 531325727 537791397 983589691 47152329 470023923 928071913 971722425 372335700 540987027 456126837 632074814 34365556 605571891 821173268 867246637 327642669 785467554 639629362 668042536 136805643 581520760 37553454 781784794 103065084 531321052 703699278 759495692 225480845 260902718 618659857 723192853 903998468 923590445 346161151 699772942 322119478 567203593 595187727 938970301 983088243 993800466 862889103 878521054 375506039 543659405 766370309 962900871 226130024 724468200 335480709 734822620 597264103 784548556 381772116 919497491 453350451 525067275 491307702 751414516 661557803 769664899 269195732 411244238 101262544 369192514 409891504 506055263 213083826 622544757 134033055 860181541 149875249 912970664 879777773 938940096 154152337 678150663 393405363 905465574 821780671 899161453 805135546 808056036 107257788 804868300 189958402 994755099 903681614 925984398 582983195 623522720 707167709 795301136 370353880 603749969 403616482 776425500 320344744 577553144 558618449 650837684 861703658 983797088 612626554 678492376 222442024 268173913 971388188 984313674 336762801 419474575 81525970 779582729 786182660 814821585 899143422 958299019 72755480 283328393 589045863 775380710 877653500 984080741 620738624 969452490 736016466 861963904 197047993 941346696 291668566 844714597 128173804 320811831 352903579 396484588 311785489 477833839 513468044 956503001 323809514 937923506 603982179 844070179 262024784 678387855 168788543 664944670 343684621 389272526 480934866 736655002 465522453 980148802 429002952 685319323 155736715 348699841 324285351 421916553 325307710 985628362 815897018 935518676 578664159 892427911 89322531 158223455 241457901 817547478 520547850 595488004 118701122 787656222 891100946 956176331 349519161 466639826 817191295 974408655 422270021 476357904 760695592 878097760 184324472 761440102 387925369 627698192 27733665 170689451 203698069 774904201 378550684 509809702 531984159 819528553 509838731 919846270 287585804 948006709 48413544 988448364 407045387 797662657 461683578 563404303 73810398 897044437 98806024 779405162 943548950 956453962 94039585 258060715 815366690 954343131 427053524 747162990 5465580 922972002 88464757 745133573 17278293 543401220 622651736 896379610 412753838 795103841 28882261 403737092 888245828 997681179 730331955 778535234 190313336 302357148 550606923 999017662 125470237 387732830 665940860 844293463 98905300 387050473 219865057 908281890 956652737 997637094 313389707 935242854 964917958 979910260 179290725 550895104 800456971 979499372 356960347 534533851 339884977 808338350 185481008 553647384 65691670 317388384 806983267 834225148 241855817 857689469 310274811 827141902 209286826 811842798 874558431 914742469 214951997 727685512 452355008 956256434 434185902 453513374 313957682 635196932 333661159 395811979 508862046 842778674 840899528 904879556 165852286 766756818 137925708 291274986 73129204 682467060 208987858 246918229 787131159 921323451 767429187 786695122 688878462 780881274 451851343 957279244 281347423 395187975 225038482 602859209 804639806 920943813 678004976 913190403 28770854 691912721 458812889 587222978 776496494 995064836 707089610 830666832 982497653 983544390 636818694 691328479 459358971 591301478 666551991 966230842 468180768 528906222 144624867 204163469 630940449 700389485 287589760 903415599 777069246 858182562 228712707 701937492 124953554 359142989 870378969 888253209 723114580 971267163 505536981 869510657 689898121 865734992 818635946 979910235 916319097 962356737 297268900 612580430 928520677 964668973 447766393 928229651 751185652 962871446 400370552 862470665 537496140 992048844 478728744 954067225 322303670 357590692 901341074 914849085 139605815 816685049 701985620 956338484 975810613 983849298 474674114 927570432 795891036 973747933 136733911 281354101 571534142 748140235 751081261 826297571 753448277 779226747 814761152 861774742 745630135 817713439 837378637 863985119 653145715 880909729 591304179 609271603 263542989 446982500 382739455 595314964 867950644 907821644 262264830 297040730 512769703 597115770 382569568 459629953 546459556 883350506 852208627 995849933 766429511 871188143 501942482 767145540 711664249 960312468 715092071 846077564 422902122 557389504 593186040 999085712 294197743 810523236 29276369 825721076 549152461 700075226 21489058 94116252 743784513 998026285 858924135 880881393 891890571 986656234 926761219 963359204 873035606 894621170 71891747 165166563 441833517 758415893 61700568 410103739 974579038 980181498 901094149 914447092 913549881 968784951 554294202 751604729 599988840 876709744 224589181 295339426 874968715 891852296 465468847 493750310 91807153 884785153 98167082 133779186 377778801 472687681 899277515 900133392 547189739 871585796 487261907 952689477 955348643 960041292 561853434 946211028 502212556 814383129 338900419 918069948 247161547 770930811 54530619 967870355 821510041 919601760 162465640 818701738 376004904 821654985 701275410 886471010 808209481 864618014 646706664 742007976 921940748 939718378 42112113 619927898 249435235 384133675 419883185 878873369 26463421 34614671 488207974 526142521 205930007 703620882 201770622 681011686 215675309 849765109 172819106 580288509 216700906 541427293 920935526 922709422 233243481 712370878 16372465 720831181 767213844 983611253 577265567 980139750 313973873 715756052 820218630 894970746 798009725 927065201 961420654 974890994 969752215 998232651 225506359 952657742 509498726 987059057 489056375 515988163 223786719 282763399 921984948 939373651 534889292 911714008 35564956 661266079 302116486 967007051 405961574 814750109 560779135 632882013 109070440 351253117 417941726 447681914 199731040 235132102 355347805 518306704 740955134 742640936 523392374 646316904 957127832 960287686 942733619 979658754 561809397 884565485 5235572 442555595 599071877 932221550 451987760 452998127 179104168 986983575 256671596 780673275 808118029 902743733 15748799 499550965 390235121 456231769 381497131 625806643 561885202 852904297 363461557 801415644 995370914 996231290 402744643 715792841 678586181 915192862 330425184 600729793 762392362 927923636 837919728 946969883 297898662 402067835 667100129 702284801 504585317 764029650 526973958 570973194 805868805 986130900 172855098 455911027 389712751 780290193 602984590 877244031 225780778 996210220 894444221 964132773 536664101 671634642 469121220 931294668 354789228 471937608 807648653 930248858 348513287 819026695 165358746 383576398 421420095 909254877 830580833 860393383 636959138 793551105 328991001 468149934 916915090 966487076 904385093 968775954 313817175 837625455 3766936 100915296 100510231 203850264 277592900 680263606 310140075 739700414 526336472 624102593 375743578 914246789 852159477 895657729 396040351 831751697 942914319 960087873 367979657 374425630 590943464 897946826 107814269 241838147 942270230 979604014 507537778 759165669 394501385 566711351 145957494 578046306 945075515 950068468 128277686 564037752 752835207 924919743 313995482 933652718 570567552 823358136 935613546 959030420 402844491 635153812 131515759 802403288 202152879 598220098 40146241 393755532 455992907 889748480 739323796 892280441 90101894 217061821 832616043 993827771 504501394 798773433 925858146 970394060 491352353 634287383 795588773 830841517 149207320 725343356 283629539 790186993 703851031 905481199 184054912 940668648 707860397 895473323 521368150 645749469 517775419 619703887 625427808 729007329 798620879 979304294 476066982 794145994 657190239 828092199 997029826 998723689 43198932 643810372 590872197 661793562 171305096 463183421 500415310 590345627 666513634 726986868 665147199 939855505 499241314 721673725 485022498 525109386 668098934 831184756 880997036 952586402 586259506 650030693 155344977 200369820 492693730 870135604 650186732 988170081 526139180 563215585 307476192 891022240 569333071 862317403 724965262 752168643 842259524 939478256 47184840 702825580 221421676 583318561 181907687 407627547 455710784 504187702 891614208 899488284 5237712 121884284 471062539 600408455 762066818 963410244 979992672 985414161 732947713 878982944 994279436 998062567 550295534 782701406 601289796 933702189 825107318 966305120 486563235 692041236 527516382 835450254 980593913 991607668 206676934 592540956 117631085 368658708 558266665 561190161 532087604 756795346 342435638 973374687 597588436 947279476 239793564 923871611 755502768 859196296 431206518 584579305 401117829 670325968 805819537 953040850 262889604 276809697 806065544 816961033 854837544 960724208 947380222 967116164 164432936 470088211 360375138 552403933 495215409 645618692 229827942 257802293 297601463 668335780 74976989 730791618 745419740 975450888 513682929 541067161 108290024 490792660 545114771 844785662 617340846 738418071 562587153 731077266 414521878 419255443 556697701 786723773 918919608 937726829 128133999 951478397 976333328 980338111 703703597 884717450 816383165 926024605 863674893 941750294 721058476 937153713 840545963 880749008 977274524 989357878 691753991 790020914 9441329 539401389 529884112 709083887 488368476 902745185 867872180 906325289 450543009 911592080 529862130 847481518 167448917 687179141 969865002 989335295 63609858 854072484 218286952 458074830 158452918 382979452 731227648 786248766 354514316 982096001 483347039 544574070 19427277 991123901 969710314 996359348 106506746 641016062 421917937 514881554 774279994 967905340 199698220 807210329 529237260 723988843 561736911 951153131 677200711 879449029 580588522 971595348 160214644 450144323 755408635 989931378 501198568 647158671 383684148 513192979 200835478 526313474 258705773 301261977 723569733 798239445 707950597 989039188 294512341 320083000 914296492 997342906 844154586 986287831 781929118 912324163 703375982 812169390 797547580 910735557 616945902 990068563 57070770 971836219 923954340 975719486 309977004 913548998 708534154 778476507 512473705 571262571 163220656 969402619 978937842 987446114 225467895 809942492 492297514 784116261 24002848 785909676 434959359 714246760 752214212 820934987 833326251 948762700 281804408 745099553 206419823 256691341 178286768 373667956 485409593 862035681 685257390 864367399 680304295 992292642 576558203 822073691 318126572 472022318 969604634 984353551 534108986 721597489 414821806 600768324 495144517 706243576 269502628 542654478 188302990 680035484 416219209 571952775 911272666 955968435 737414866 889752182 411154346 436876782 113777328 224791835 966225794 986080213 243356679 462366521 245584180 475466381 775116011 868785231 277208874 779668931 525860928 978487021 967303393 985769440 160419168 747856990 401750731 471788010 434676145 820595993 152864963 293586085 11705089 495504286 764357357 960652579 929309673 929817071 558130438 655302929 917125372 969548744 224388382 539811965 973331293 993488179 661190669 865444159 209362402 422346907 276591040 356203202 774641665 904690511 125303894 826955455 494858381 993565942 552533479 830687031 3746302 335457670 429337612 528466525 683704964 992727035 395351001 491547347 749301766 925057048 383093915 986510427 905381012 929260603 806794206 863665936 777719534 924691339 684044338 913268916 720598263 956097227 932183283 983178510 132267509 934044453 120624888 963519357 89099787 555032492 730920050 952667295 740018671 832628697 163424737 312562008 26887959 984724076 511608579 581265542 418655099 699477690 246705096 932826163 973313856 989980750 597048464 875144470 586855346 826651910 326082353 524005605 138879001 349844751 234313092 677765424 825833235 960401945 247638674 377961699 397101253 434692890 20473968 639739379 131094687 756115596 701953901 748831498 237745620 979716096 884980573 894314299 360251340 560761678 414257429 920834292 271509014 546702132 821523079 981030276 534414724 668584699 516642963 565469231 806333004 888532561 61288582 586249805 79129194 458948112 369285180 609594324 498123695 729116854 231399641 308206185 357633539 829592279 628387566 760813075 943719310 995587711 96369180 925916796 254745139 608683948 486648416 878123248 80248974 825369565 445432285 843385047 418315444 761230863 989919049 994070602 570682068 586225298 353377382 629591637 469398742 943175086 466153288 919638228 835689438 917168087 88904249 200575635 840555375 841019218 528542784 601736718 60491012 238828265 144746782 302079444 919647715 945533193 381223869 421896902 644937841 758361384 446228374 878693583 464461654 501935694 644813318 858127660 861251237 892479995 9324771 777859402 330089959 837049870 876809928 934109111 964130899 973063746 60533584 906654341 845863170 912589930 147323419 983675661 509898014 714710053 432197995 905870198 576633963 610061689 831225338 882058569 866644339 875265979 179883655 968498441 149391621 686034853 280980724 548414089 342037382 883126896 810721219 945178494 637792075 866668611 409525644 657917605 378300298 689265891 248599551 419412871 801180944 881573696 602925442 881405298 274266818 316545881 707637772 926386654 553229989 695989185 408392775 946413284 288376164 546535386 111513411 447054202 389893953 658893339 493800524 801401380 906511239 957964339 541846175 794331930 469394127 643956352 305524059 849853263 952028953 972139688 939340766 973719008 918755845 989416699 274714026 326979110 355975863 905410800 389488020 579230299 948508723 987130269 456351796 824693297 734194292 746588128 840226392 848649592 902091565 953807046 408558084 802866796 953713246 969079150 124699931 551845233 743545494 901470247 800901840 850377891 55600938 730543476 752246117 916792332 558965275 742910311 653622755 872612997 728100368 971490885 305866357 465565230 838007259 854502018 6861588 955216785 581444370 670783539 999017988 999308173 308095101 470761029 749046763 834004040 505081200 543954143 116491269 606947506 129599546 832973006 749394446 797797760 813267837 930644009 91227700 836301220 698647110 715727590 385444582 505485610 626893851 836100852 326130602 524209981 819366382 994009443 464748769 733283371 14631687 443473125 360396988 908213648 202568351 366671352 794198132 818713732 725696142 868302669 830394535 938056500 593802665 597832609 999362722 999385069 653360447 674890745 495013961 990133117 327531804 882009785 184162862 331727728 313623284 679418278 375982306 769422161 689362355 787979967 136384469 544160601 168615730 486769808 823017798 850834746 637723482 857760425 222348279 860528453 252720005 565407266 703652054 812584734 85819068 729781705 676858360 816858026 696450130 737054261 107266286 722987625 824330965 836033114 164952571 940289665 732739361 826901290 547662532 661499730 61234367 845694837 586181931 962225488 364471087 791420444 577109354 898342960 887321035 937625212 822130627 867194246 204955241 415554409 47168345 287717735 545260822 721854187 67568818 153831545 848106380 903734257 91201212 351059142 219957755 406911870 282390355 350543510 307081702 335821412 243904278 346027241 936748237 969865258 919021007 945367041 26205753 370091541 150836515 684618428 373011754 472811038 306469403 349697456 314273904 502354230 650661534 677988558 126416729 596584469 774568572 852666562 965308854 997800606 136651484 731443028 958437997 967335564 364555391 841866181 592412136 871505132 336638611 856396446 976003409 994617826 177440406 900084427 406738966 877648071 459172401 657061799 425461104 627855104 620303008 885898733 87236054 295318470 476305327 487993809 345368131 920822475 987335512 992609269 939671695 981416985 183365003 892962483 429831501 826242762 71834235 513792608 515707333 791465912 525278244 774727708 619575978 868421771 204675710 346843612 135683855 845102128 167961557 383935367 667446217 999004438 211690897 818594475 281500113 494821427 875160733 893575095 602294800 959353609 386252258 903674147 97071331 181127922 723396534 868548393 908538061 980237893 889928252 904221235 458433235 464380459 711624374 796240210 25181931 974317847 881950765 968017272 30163159 948592824 42719633 666380834 726154540 854480036 420906126 483034765 53146216 978758237 694796827 717794619 910172555 928773023 530638108 551335967 834256852 940537619 850767626 907135298 180618597 310077828 888698023 936426920 839733107 900375560 446576629 966770334 483832353 696284863 553308353 928535434 85607729 510073363 573918985 687197607 313892763 400482350 373051003 968699025 938252836 961601719 224587135 675712508 269719986 984512215 9209372 852875210 252220174 959486934 407453429 611116895 828086516 866258105 406449524 948820342 483649081 886939801 637111788 723628826 941119797 959866641 957718120 970958728 404476587 455910601 584555454 850896140 825118390 959330693 937065414 952679489 217626965 329709324 667601590 686104080 685670785 742957872 980442028 997846094 132854872 929775933 406813181 739145935 984125689 996981985 436327485 566416529 937919697 979381470 569844727 952962014 854529615 977611654 318334500 486295753 252021044 710649629 304651807 428261634 764827373 899099730 892330146 961193505 93009309 996073231 221139084 241779029 62023291 224837319 167882852 418107032 432065705 693309521 939883044 993636387 334168428 743560558 959592560 964399498 502182220 650958917 719588501 813430224 343511054 483780315 333671816 930516011 435026110 976230416 763704004 894924878 714970179 929997673 500113629 765946027 482340719 805628110 698897188 790405747 352380203 896825448 732502484 840823701 835579150 904903993 903565595 920665812 82884868 211759136 707486569 822831080 454542274 744062436 372928004 849971554 512404159 729976017 734549126 902512721 244072576 999035597 374075786 400013152 827986685 911764170 961295114 994591887 888733141 975457497 228234584 533548659 859467242 862452438 485762948 920795222 222028037 566534062 66237718 616378940 606325127 626105534 54484850 279913708 754455751 874451053 974438442 987874834 474991991 586722540 778684520 786556117 254478391 623741744 537371490 894202671 180038538 237415794 865338819 935255420 815164641 981133537 735272414 886026441 338591855 783552380 53422239 394436175 299823954 336175751 629258782 732468990 118256324 394716949 657161144 703658310 593470371 882364324 466711437 938822124 492652097 691023478 542377617 669357094 189677812 469145256 450654710 918053591 8326080 939810782 219047019 756657494 25835533 907323606 989398812 992852929 209197968 905093569 825675687 989293108 939414588 997250138 868686270 973111785 696349011 746386220 660659135 898725103 75147346 111251470 879228237 928853817 481265939 793529623 62676257 452399149 635609368 988796157 307351433 864267440 392497429 776328170 674688761 725213026 625354566 626483990 202989325 730551579 769216526 881507189 280518786 488808134 981548178 995728914 200143046 910410655 311525576 380140890 69087058 453018906 858524234 906509420 945462476 981313096 851488353 925422780 560048189 855820407 768670549 815561829 741034515 760161472 434054112 520729724 420075839 922418135 378685856 585075659 775378337 879154856 169265206 869731645 723858909 732778734 491858142 884816654 572076880 615706176 413516306 550639029 256572518 840242028 586740855 701709527 590235490 928035457 565223232 776622505 182414014 191953517 361799443 637908517 673956640 838142160 27848533 79480898 749658130 857467513 175837790 739885646 560903326 945268817 847212614 973902123 849617221 876228313 229563267 297642931 126197367 716555355 492648050 864304723 5389356 259308127 511506541 544284079 857778161 978403317 384933240 627174805 3045061 21460068 383936445 433517067 841563167 932033453 66195131 930158556 481344455 616672843 581423271 658329168 297970895 630552159 474647081 645541341 880148440 986239113 703627051 888209982 650211482 844084461 407517073 991086058 488167161 681740620 809038398 925207699 481635312 486552878 881066457 914335970 735675833 921185093 691093442 996386635 22909241 69260106 951516462 976580107 910949494 935136190 386224641 757353120 373392408 511816138 128571027 387754836 708831100 976443578 473577457 755716305 619813619 769115837 347563173 856329778 541509857 906898750 702138686 733680071 860388352 895884740 791771041 924129383 64218571 574216160 660849547 855016292 110128238 817696005 753448126 773190386 229012588 477719149 370852369 579936359 160166537 865811375 125096657 572497925 943201984 961536664 201611446 750137147 652494157 876679927 37074260 148321969 664327870 790696683 568849716 660352603 431142531 832624014 597484788 812772419 317013607 975671308 335300329 381344269 597032658 600624122 746681702 912339428 598047928 743093628 376510716 514276963 393854532 704609820 530598507 798462270 817849674 945334709 124593181 743483488 588710647 650795911 810182395 926317045 200170506 663702598 498876421 658917901 566501582 853683956 717349584 777745907 838377369 865858740 56537154 91706527 113664883 823312931 237660278 864536189 169661053 227765303 490194845 845072508 78730871 137814838 280479423 416006944 485686334 638333276 832745513 942457917 449715892 869581931 189929111 791353336 356707473 802107070 174168726 810580247 623692879 766929877 46241880 799332970 644977284 657417702 283989275 720149983 914408238 933787735 199027922 827581777 551724132 632510540 451085180 700230946 464328490 713322433 323546532 830665671 38907399 131090521 529320133 883240480 724374315 892258460 884595983 982534361 477030870 976578006 283985597 669009385 808727233 903616428 974117119 990540018 439495210 730412782 260646908 303195430 815648633 860955978 89644238 917789901 606923122 749094424 427498859 609780444 584895216 929387662 925882398 938938417 564604752 704844660 621018516 982978941 120214118 620087413 815193979 924412650 989460267 995789365 523227039 629733481 560665170 578079893 435635934 955067292 678468536 925317084 716296674 763007004 948617975 994556494 318238611 826107137 239579284 431331049 660296392 908644128 973353247 993538585 205580461 517572637 634738300 806491229 327721418 612884007 565050352 672336778 141624653 881433489 757383609 951728334 775533974 834647188 60223784 648282971 906421960 933536422 884075484 917611120 297338898 833600514 154629740 572632585 903641194 956846623 737543567 764937826 896190228 904337554 52961055 783995081 31907754 570288034 625853194 930421292 917426807 986036930 601885574 773527447 178369456 961188300 422459603 628835974 758176195 965935762 267773136 291740071 472762876 604294577 734788822 838594053 432193312 446824776 550444757 655038477 621408226 766502807 26108053 310219041 580158590 848478181 513806402 651161188 734320074 840551324 763594868 947361631 130689235 460179973 548129802 888527348 39965568 128605761 219134182 708965683 291533042 781183657 639105483 941554325 537967040 549930585 974354138 992752821 53693288 499858980 144367376 418476526 220845103 544424099 428601147 862295852 415852225 624896957 369615708 976980387 607326501 862167793 759515762 865641238 263471886 567201143 806781075 842273366 872540939 999352954 802804585 847677182 478692426 494669307 700395942 749060231 238648679 607760446 407703892 918386338 927487922 934822590 437012816 787722933 321896270 564819378 873115102 970794705 590563832 598017875 133814351 155665742 29145666 473473765 707297602 969105102 134866468 697585579 738886426 814413749 15730865 884676889 984500736 998158699 759456201 891973994 171256224 462127843 416001075 791243819 360377418 588986678 586956322 642428062 359773833 511860348 461613991 850754740 751899841 955293573 276866190 662905055 246601854 521631984 178833201 829911295 504999224 986770068 279985182 713832338 660174606 846370317 366264160 691007688 269129880 356839169 561829873 745077561 77295215 124529565 561649536 744319582 856439907 872877636 585930566 594526294 823910349 936007111 928656664 988212735 266141191 280959658 344376778 855909323 570742868 751231189 226689042 873152658 570834510 892980893 190991916 414851694 183384199 713668057 736226792 838348811 79953510 558814490 307047757 709999198 944083525 975986448 777781713 910365123 102509888 159010800 689654835 756985833 901263397 904695057 102781713 427791474 8810126 256654217 675790034 968840202 445811697 582339227 101806208 110217237 933668778 981636581 9797875 136956454 838708743 857514863 555771156 939252037 94659302 697459111 587369536 823869902 758248289 922042044 544972699 680701548 183240384 957836006 454987871 725615088 198581453 775407115 377394165 832980072 638885089 790567470 123132338 785847489 273262205 294395958 680655359 706142834 782463173 926428933 263630273 941076311 968944304 989945135 26923986 773133545 465112647 786314324 222599648 630043705 306540924 602214554 641192243 979453298 396238918 579483374 533360546 855129481 910604134 970085558 365425928 592110708 404368926 963236761 973955686 981310617 232761128 718835152 857683598 990958724 812557348 881359715 861496007 876168890 456457764 550039613 390870218 395016152 614221986 953809629 932072372 934300651 848767714 992410460 770056489 935535774 634963445 642879246 162738412 869535594 41260065 254619835 547871156 608928854 202549110 495426806 188255699 399528532 384502738 392785575 807136205 970162976 322156847 566444684 127480769 404517333 963356399 983083821 489759567 769478433 35205809 575496044 25861354 326865811 601414290 609324020 217206908 658613729 145264380 483036667 159001252 663329723 149314920 997956908 28826331 452841124 555201462 689312118 448210642 675755582 123809589 367461391 798548061 905108684 294422526 924139823 147211974 171200925 106901780 724376659 712902534 749407785 674294923 959663954 75367827 665038066 62983920 930645522 445828862 506712466 122818014 349862574 729065889 961633817 579535509 841236321 590052552 981426959 527761739 914526568 166839694 938194855 874703910 983272685 519759819 623763170 300702322 367827856 352182652 378282596 335543315 610608917 61467130 497132458 695752284 756040523 279698848 381166070 442845825 526709757 669258347 720575880 521048532 978054985 71984991 831191614 618181715 888554923 615738688 999070526 661912718 804372194 754567077 876040935 473795384 594179980 661551591 710215222 589357897 744567934 757308596 844201749 503977400 739111182 122025218 847420377 360133162 460734524 756166650 871640499 177221830 330445181 455951769 803273032 120475452 144580783 337008854 562044739 484955032 563273148 633589581 929649243 114227887 299857754 214710195 434960226 484320673 729495236 593921928 926370750 370391614 798045879 26404749 679409025 792646961 799152601 137213486 481082880 982140871 999368318 168576961 219114730 530106040 664299831 953958186 964757912 760944297 850841351 970118903 979842309 6989586 978442648 476896254 634240944 405579858 539741326 632415106 782912592 822521452 919506493 840528743 963434254 581866114 920748967 934006009 956429722 403349513 839900835 751625252 909072551 620412335 947349615 535607448 722501443 213501836 745433522 228557496 861917244 369232674 811305556 639141957 994264394 33756680 646828729 897202298 950251945 499803388 983095254 469477236 933845935 489945328 695541852 654057410 687682717 706623964 906172354 948036394 979853448 285335591 641082513 557574124 827495479 697884024 734585511 570295901 608555150 300949909 492986500 289907858 995512763 369027079 795217521 684844734 790997584 581887631 842954811 43846365 440749516 864126583 906719392 306562212 330301949 943309681 972370628 673134266 889471454 425668088 751794557 850748244 945187814 267727750 313763756 268010896 506343118 679396756 753481131 486988002 717489080 624659136 966843773 355189550 800185819 989977751 990734934 232519373 472120688 832747735 865510046 476778263 566999958 797751482 944823217 924741833 968081587 642779736 766064796 751406839 792697241 347195764 679590774 561335641 915675616 585694449 682364745 805599622 860684004 153425792 616617320 642620108 643896484 750962119 986698226 663572396 848807949 129625231 367328492 399939869 985475776 454926504 515711348 660030514 965585267 586059625 702042834 230221554 497604000 75916163 679156891 974504743 980718525 156709401 234551383 186277707 887958908 484958832 545771138 133494287 162310164 57604583 178061217 576966466 618696872 511429897 613124408 442831756 445478407 204555825 634059059 965516434 978474962 717222306 739120391 25921517 373449014 571841977 743789878 250704314 911895412 745367348 917587111 433410984 545652895 45252207 446726133 246715195 614664843 418912152 942501608 132822808 342324857 997999017 998956932 105942331 288290681 982125489 982770815 146997135 940644065 647326302 665158595 480809444 829296724 462347789 842352081 571935120 783153432 107220752 410770068 129919662 167954074 197145469 235436519 154904175 922221299 800739245 828613774 310531718 675509667 575202879 685334661 106208437 709860587 730772093 937597276 414600489 962635577 9517844 306749234 123707013 353503078 438566758 703320548 698161281 935856638 540622191 673697445 101485299 129794906 533954226 731151656 630680138 948628407 777390415 833123771 298504222 577841490 312656124 569690413 665028384 959997882 266986820 836066477 496259416 639117993 127339923 344750465 153490076 191769655 752752304 939778341 426224086 965749164 590540157 970193246 191706877 502772409 619906172 838171184 842828881 862842226 997929507 998904843 867417737 874986593 829051533 936610459 644828389 727905972 421635151 549676373 858871568 924327405 919427561 941647627 531575227 694635426 732855823 913297588 589049727 761031284 881225968 981168482 404065685 405899337 761122367 894197434 450816086 750620283 973405552 989663866 571294687 759004006 90619457 571225949 864823628 998684529 883889743 907131778 808691726 868787604 294115207 748521435 735314786 756001141 314627305 919292197 808230330 897041279 602613181 952842325 366635913 936588146 733407947 844956800 564486041 693839022 341184388 403761496 300830371 372171718 589402544 874857381 48323329 646836812 346065779 573157157 552226467 701644380 295679321 332059592 903706303 926777825 10391684 507374182 231906677 501955117 874729757 912706004 657666894 834789879 817874561 883997502 986774320 989145846 149133357 567515288 390173875 998173347 116813036 532042872 355022994 729793921 588979953 733633698 658946272 668488051 825312567 869620985 417105316 731341717 87850513 828355793 126999321 226183680 906685724 972646995 912825333 929022677 209861604 312127453 659928286 766435905 78229777 708457095 499829848 722606199 158235774 462287650 458656263 830647001 839939093 842617171 700958041 893141073 909553927 971557387 741851094 995639383 650405314 973627365 665643350 753802156 941370131 968208204 497817015 639549499 13243776 460531629 190784467 553835251 697015873 910612471 134855238 221022137 195634129 964912407 553239052 599344992 437355028 826654582 880198668 932171831 685001402 985408221 417160227 818631477 386234159 629343660 796408724 868971986 630736301 744423580 498285360 715143999 840591294 867756651 22322623 989865274 27498023 60700927 958682907 982381096 797741788 824218677 15800653 612548111 31623204 275834413 551279919 617832209 573261783 935747682 998213261 998408921 968981926 999127999 735370977 994322198 318261005 696559179 891899384 925527948 586101607 836248745 666152482 887333200 879268040 917553759 938040661 947653883 508103469 525820200 697970463 846773242 411700351 925295323 189905792 908986437 864327010 979997761 848926178 902799786 925004514 964298888 684348015 807849823 638779312 983688588 302401107 395953876 952659751 954800797 324499302 450860051 481459528 532544371 377507333 856065466 812097998 864853069 736974880 970451348 124303621 493652352 138095930 946810256 58593529 715699668 263709001 708053966 879712395 917133339 690207449 799983596 194902955 735806070 288591394 341985099 604289338 842921131 159651420 950686190 2381014 625391338 744709082 965836013 66580955 700328770 988168217 988730217 424436094 851365875 655413843 848557244 804192805 904336595 632906446 771739617 592003750 623147637 833923718 969937300 280484111 691586019 932110197 948087237 666331238 685732236 55699072 142753858 729692134 859793275 925608737 966979650 134203046 898123840 235747716 732668620 41534535 772886711 43568858 269840608 703339352 791196385 848169832 893734205 292267493 823595380 288888967 355954796 995939023 997705688 815959202 990736975 475468488 577132736 755255942 990506863 722917409 864363912 959287327 983784464 296586633 481074603 509431995 590281354 584554018 860000391 836148706 894438840 219415376 351201978 264522477 400593632 307997902 486559926 842941306 993832078 219242335 688545433 102720206 477405129 488452521 668451535 964728019 970344891 973230438 985108782 714647818 943427860 523451333 961918191 224517927 726909269 543742979 879306443 101458289 818949447 522243981 893272310 298747120 930352314 97278600 621964517 499797807 902812064 731145073 769751917 272980601 650305155 766733294 996872867 277892769 399412618 185054143 778944411 963619677 967865027 720560193 747229494 227255084 996899990 382730212 447899976 919494067 977828078 201872392 525386362 488848413 579770133 547699082 817317043 391162699 919985316 963362963 968941774 18033947 94756491 148940335 393442984 549382056 920558947 312218979 522062475 795991162 983016920 306743786 570363754 550023367 825167718 711073590 946038117 549605735 922559219 759554101 836304337 34088175 190872738 981604087 986801673 912766314 941375606 257619222 667886529 304831414 427821884 390891423 813398193 35954507 401471031 83967779 649937774 453415563 731803112 960848416 972968807 466360668 656350953 481156811 534419235 314123673 749623154 384931447 460301079 930576051 972623123 374219474 947405667 349778806 939996191 997618173 998080429 772632981 827857656 667999104 941449642 975424575 980442238 313301537 818731482 618705795 874617917 315313676 331003504 208318653 393914402 424445814 435829850 772673767 924622777 404833311 952060100 636482526 956490042 373363618 892638202 653877406 836579789 253865616 276712902 988781346 996529008 748533750 852323932 956434310 988422096 786392989 989677361 607058808 801683046 466175426 688350726 610387173 783520630 304409001 496577106 346536130 907478552 123178098 516411842 400355895 951396948 323897742 819942920 131209284 169198212 567733954 817450942 82750852 843403164 223254957 263445699 740765100 885885245 376931310 523896604 826982375 878032230 105629310 644554956 66321310 667741394 467552779 679314829 962864177 998596958 527187259 861300361 259696018 679586036 105781396 189405032 522153173 548832198 13830895 941856623 606393641 629965930 868793653 906453036 26257127 725188028 837805603 863868855 700189281 721332955 243579837 977748734 891286727 905515342 337795492 830066076 68319461 193056376 721333049 723013391 586885450 826068522 277454666 310147440 798037475 935938195 840121525 945679884 954539940 998960811 960826796 977842180 430738608 488457042 913794313 989511974 370754130 674633317 74880759 784687333 300761059 421402018 13037399 527485941 439582941 454449637 101676588 614687036 568607188 629840534 343873652 907165964 510018611 910126789 400379130 510060013 26240337 240053116 932428310 976246372 545385343 589849355 735477578 972730189 231419205 278227416 368640471 729978178 514139271 993254866 684050356 758155264 489906732 938431063 886271605 998290346 875236450 912218836 746521710 960485390 934643176 997114114 846317845 915638954 978209051 984847800 864934161 981050976 462565064 883821658 624373641 927226393 204303086 814223612 232958823 293749547 302494621 550344034 288364049 939659397 718261223 915938765 252715371 521921727 738834763 862423783 914201859 956211650 820428969 844245976 90402838 296220348 611288829 611593644 144006434 615007739 352406199 532046717 91249196 538451876 740866322 856101150 529494583 729035931 37445254 925691996 847030837 898425416 478452693 836359969 982741979 997390893 738487264 904663038 158836276 256256501 52424401 307782683 117889782 666897970 372741863 552963709 995908557 996410824 484492990 921271025 522649769 899770527 545291500 794666460 311590437 323921341 740212581 773562696 373411289 740379141 817247660 924082536 568283930 863165547 985507523 987268017 193601018 804029997 486661263 514426009 680550759 773514713 930136572 991327161 315427933 927784289 896000182 952005099 792821809 963042677 137541876 873104444 253072665 893932276 664812606 981563103 515885877 844827470 88389056 805480188 688056862 832204612 463037547 598397738 860439005 991226020 587206495 866578297 980467588 988090308 793519687 831328378 478956143 622850500 225494095 717158979 52674926 577806473 517483169 660187827 77093505 326949385 992253421 995834861 394275955 903208300 308085130 547773391 594936392 821146481 311161127 693420845 319983315 851240211 203107779 839088881 644054541 676663847 362956380 640392010 107585264 559052259 324662793 864592939 744579627 882285744 695874326 799300146 153782719 589289434 210561797 727586296 972392526 975257323 339121072 402837872 533955194 832662176 279111034 493964601 556413205 559835820 20716412 298702840 864545051 991779827 912505324 969599263 150853202 241015282 711081756 761132355 946229741 994607789 980330423 981242279 354605533 681596403 175113150 631139142 478120022 635568196 742101442 944905801 634651007 773030016 153432344 480710932 546122330 578346905 592747386 887131253 688392874 749738657 924965993 945615064 559569466 774424534 481524846 581234478 61525371 260094475 48612952 641572878 99599269 459065198 74995963 660368514 787282083 891432420 90089078 894208078 486700869 787346782 452395540 962771626 33372994 648542242 108137106 203987421 954373547 956482009 290243901 512890733 77363205 956181806 743962310 779680081 288207278 770733814 286197055 777922286 724885811 943580287 843699973 856911094 733550965 854630746 659532184 968278939 394797035 433534873 933564902 947188097 707214210 973957798 638980284 983140342 336783287 581838857 757883375 978403881 914424091 957856810 489618410 862927874 331899956 446259089 131269953 751253319 82421232 461803251 303314054 700791919 694347210 717079389 267701603 900240263 368161493 508433390 798468124 950354993 157603877 863245544 806286234 871131686 776225051 947708399 988943190 992882864 157574635 516477573 541685445 574115158 176804541 266398222 201947829 963816656 269085983 675856163 621128641 783968400 769754555 854026942 259227494 514578527 780911172 963355258 846275147 862166833 521318757 967244359 583692043 944860990 224101496 931854049 650800590 715612038 526524883 613874649 163833950 891510068 601693238 730145036 284534908 287809242 195118681 336222793 956727290 967685955 610233849 838167756 810399048 898555410 519359696 983745857 593837113 779560306 613009843 644523676 247602913 937471718 626623794 951356369 10416857 131766227 586756684 603887311 238115826 328999059 600258712 857781597 826566507 955556602 739648624 894275144 225897565 369806330 202247493 838302906 494242724 801147241 497785963 946843998 165388765 470101177 924139019 975244132 596095443 933496092 654326943 870671432 264775489 825475333 628486297 885040842 14787896 245414124 803847871 826027871 238199321 833705998 123719697 285842006 731054772 830481860 552215883 713403351 607534486 891645889 214552427 672204799 806953775 937076148 77769637 96704881 929212467 985543738 690692306 983303122 235627438 252323750 406023214 732913080 718877334 761580547 393997297 554929000 82103604 191752867 148228605 291422145 430789006 489838781 371932902 829757984 894201778 993125068 824845008 956529982 666252598 700814886 701270256 892665482 782064739 883885591 473476669 482266134 305696796 982543483 267793684 618228562 335275143 797565593 725352202 754878456 196489141 196584593 820948558 896835236 368182850 604216503 218773143 898548098 708333247 847621690 887881480 963313347 848552118 994938079 100438671 341444144 16700710 580748735 991173766 998930072 526853322 812165423 129396519 582774149 449169617 520679923 465179353 670238824 283079992 836191220 716677716 899104164 733793453 850731423 144142295 896574170 874388488 897038397 179538805 294101510 650852667 947614793 418172570 873258519 219106960 460178189 11788478 63330219 238311155 525930880 617356981 782152966 674919456 779384812 601678852 859662329 2108216 708721343 902186639 929510648 589807146 796551217 322477764 527863408 388346877 602124392 123488299 590646787 191884463 344987768 510627450 876770602 828027887 991927266 775067512 799825397 827667398 969087426 513880460 555834057 849548341 947459252 941147358 964336871 3010 178134792 264772991 614476781 754906646 770659402 685563983 735641652 152063809 740702021 991739562 993443689 370464803 864257746 309410020 463712129 618881405 748002421 496890782 845277302 24577148 174233894 320145371 904297662 929847068 973643027 400139199 768461401 658280490 771073094 945449487 956015390 117761020 937322947 629637679 964102381 658494726 877031925 395429914 838295994 637217044 757477508 967142561 991825400 554762427 746523045 570884259 643262259 71943088 189087517 316148634 729675253 983748154 990287753 980699402 997940128 273298975 872407388 242646037 803223525 120798907 212839286 223068661 380632859 672883740 740120478 329886636 957842560 549640262 628574175 286465913 545894457 441497852 666727470 495712767 699270526 969503047 986752381 366187002 372531784 5741828 801501514 351236789 717762928 923519112 993635964 987267230 998591464 867938648 925240532 541144077 995686056 963027897 981992195 253177837 341987985 776412732 895243516 352863681 517616332 155058319 720937346 158394568 773680184 305086606 714821453 985812581 994360736 755286600 802233428 903168593 925187963 452076568 959482394 766969127 988925661 347257598 496389772 835363461 947524971 564674701 762667903 185192414 280111561 132602652 475339227 279735859 930792782 943239541 973689081 914228108 952805488 410220490 615798967 811629127 835240839 462804343 979711352 326927480 820629716 43159550 367807545 343879444 795775377 411264515 691009516 977091990 996292591 881638035 955881770 932515162 974374128 764721763 766658609 984848750 990843963 847731821 995641041 700479063 937688335 799648899 950424699 926963932 976703320 383899971 488312354 532995607 764461342 986865126 998915196 738297246 925053852 325661395 417398980 308131989 748491417 991460239 998570006 170632005 607244225 466837768 701547922 733327672 835359782 869468673 956411264 528322165 594367466 429890472 894290637 474731798 989919552 105374394 568525524 219664746 763836746 638441329 891467503 3990990 384753170 455686464 868550968 197025820 812729103 212051187 717487328 940697742 978980625 501351224 892525055 929428592 935933441 831426884 849766370 314196219 546485468 304409695 734867922 710251341 880036711 798422647 968796693 329156434 926489921 649135236 751983763 439796944 634568094 543379494 655757938 533760122 598649906 631838980 791061067 130664395 963510874 45375990 943438323 974846125 998736014 861055364 995650464 518350686 858858378 830727064 843737317 9162535 647581587 333302707 393791959 728531465 729828350 266521366 584896080 282105218 566533488 925112744 961164678 848950185 995191553 738430276 884703844 860092535 972964372 573371747 852546882 608537324 712755739 516731214 760773757 701296191 800094549 740620982 785351177 292694447 937258569 963059556 982015570 729592037 755647467 948126460 967936988 74207127 969461681 517427028 958900901 806483709 885256968 725051301 920768626 245408541 480880362 362905375 989512726 746798574 863323129 196949137 978670162 107709089 719477870 374703307 910908494 416531176 831358736 745699449 876289317 384111365 597438483 702898241 804958529 42650095 337445327 662297697 796591047 153773636 624919323 416088355 798874855 192493409 201916203 987241244 997183083 390784624 673046443 594484428 848951732 287074768 362220769 154178483 539822471 356506988 784700317 723998336 777308400 826228028 835123332 523753393 717302119 167714179 856553857 10513785 859425733 621557649 648973110 521180460 958903074 750253474 831705304 320233677 700403882 634796067 897036931 119924539 193411795 403141285 763789618 824895260 880306046 136393359 373814694 893480481 983319914 9271480 375477255 120833196 893098896 186410833 955286942 649533934 731052979 913158960 992984672 549750025 857095201 576802919 724770733 641057092 819412473 803519292 890518915 522640993 698374737 120098959 729780529 397565371 496352361 670027250 955490681 145268300 146344096 589544173 787533228 912782635 930520663 893249601 985015687 59967754 548114400 785117339 910457698 608924414 905118572 211328560 228085852 862388438 968692064 611175062 899198905 383512598 494274433 215770722 792528675 308877975 514384493 286935964 969735064 673102311 821458074 521615531 764122637 387741734 659371748 65844635 845846587 702147773 976449610 848930146 949311715 703357303 779877396 15383950 415516270 69942390 230783317 207064217 456017687 428652037 733886969 175077888 813775311 149835677 343359613 489664678 530432876 958244179 985885974 659190273 706581386 234146107 627186403 776942983 934308174 642912100 889926522 697408430 952639276 664976561 940467633 458381194 826070693 248110838 287526352 694431434 749297300 384801376 836900967 723125967 951348975 381989763 465758692 510256306 559976487 264430365 307190527 321307954 808282282 166845426 426707672 39075340 437650331 20116077 430895098 9837092 380208595 55063808 733943812 426182708 705085608 740841582 751644760 569177467 929356833 633787160 727379727 317849543 802330798 264562909 276405307 432520228 482420893 637945682 836022376 996170172 996423634 737938172 748738051 942609858 947701172 27709088 948951161 369395101 833010444 662004487 821512932 358523360 663792610 968146974 975016969 87564867 392110122 759458508 880956582 898174191 994878296 934819039 985996580 19426185 844312283 512574312 866838232 327001003 381274732 828806996 932022783 33507252 465383933 107174471 725100647 556206334 920380841 619550699 992020374 871897621 985619004 201557179 236338594 443985318 869050921 832538675 871290273 99639468 283653674 81048814 510154668 366517220 419514513 415955040 786556194 443239776 821305620 114393181 366797156 298813717 785608836 478553543 892005730 448135574 488461063 159848323 857472068 422815832 748331811 561870688 711257120 465544039 498373278 572599113 940729671 455357791 827429389 998904901 999301352 763117879 797017864 70959712 320397589 244128820 544639534 963050270 969446257 957354478 984673851 648442858 980237389 633058707 780948632 694648623 800563474 289571448 414281022 402907353 695197567 986369370 993203939 754421017 923967623 443684927 933284662 647477595 772254557 642464408 654328888 363024671 934218428 612630530 847150079 697068207 960563457 971458952 999112556 746354375 828955608 25251263 346621276 777316878 900650522 959719702 994343170 380752276 985116706 310677125 702084599 219919415 663969532 366515296 806915848 667801031 853864072 199515868 517951992 992645792 995087952 954527817 992194118 760331707 901295788 135388069 850864950 512699184 858859042 758018610 796450828 666356851 705345198 131114010 835507874 171812766 739884244 825365967 839890303 213798902 916924784 10683390 524710468 543584647 618007965 424579662 840318573 528571795 875135576 41389880 77974656 27532425 524268911 361133699 787739865 503442972 942209887 179781673 238739075 322943442 690941289 150184503 558076766 256493707 385652270 621930812 790082301 534565464 687839847 376339044 520524475 437769861 537602076 191184872 665658753 965866195 989284831 738228295 918966141 884058287 998302490 514569005 889547131 602246365 812150510 915415355 959243472 313010965 798857372 571130385 774038493 677009713 975956076 73216729 326960443 746124529 937051903 384801512 726436739 723007067 901535238 398723655 451039077 441612815 849253845 983919341 988761911 864326111 921168861 116121276 672456105 528387570 854662926 979279970 994055173 646285860 718849300 961282761 965201366 461729822 576640361 928173818 983025100 329238782 825186537 701362694 822249756 101694642 104938609 337927705 934606218 556259439 608650208 180216235 992683421 51906990 852215762 988771406 993206798 386670566 833797324 700411303 728165142 993001285 995386065 721835521 757852514 844192365 954706728 995226959 996908018 906566463 965178135 539246030 558513482 46543956 111121399 67971382 659569964 581327954 737602817 402596341 787242061 48346485 59875159 187237889 576103002 141195929 984830841 229700813 759204477 129743304 331972133 270518046 650539848 506195180 566008007 486319371 757891481 338344586 428947388 327765969 454147737 742935883 945575446 335326433 746057909 639413290 827442070 692311807 904744808 920183305 933368124 445683782 621856851 128359246 567077704 894339392 901905887 593914106 620873362 877229568 916705726 719420612 870058597 955468225 968372391 164225101 500913621 714500948 923148409 925131352 944535262 594186747 965703926 180506945 845180872 542975326 639013369 623235014 699663155 468238956 789563610 277149705 735648902 248833475 979610756 554372360 787176938 285547355 958934911 298456215 825146597 824365915 886249505 964825081 982076742 546420637 796100965 802581844 979883508 26813888 980587218 231557646 520132193 977718131 987448871 570361911 590268646 509639407 568407097 759964118 952630613 346540618 360644293 882070835 901698818 824693665 982613617 96700206 637620560 571343371 907802170 263580565 957003980 834734001 868663254 488966984 776331711 304075294 546587810 950811436 953902854 674717007 849714655 850097274 866531391 480410293 583345070 187455909 981208364 926350220 931705902 929788698 946526878 758138687 943627517 27158680 366209253 715203466 859813942 551696846 648547828 979807368 985016455 155457442 935584222 28307096 347437585 441584786 867426261 367811687 771026712 917998133 937513604 209719709 380690472 117653832 542482760 95681027 452095137 173759111 850793347 890901695 911847664 842819618 872132664 107240966 475832594 387857847 820956609 261884839 911821116 486335577 971898031 216135664 740943203 387456310 852955475 577652430 737827298 484660692 862777794 992036216 993611862 345464843 553026560 496283790 651960110 877288344 976992155 739775080 920733003 428423842 586505724 500832607 962516930 328293306 955365325 600385506 662522591 566356260 988205359 435319729 593681726 935315116 995823242 694357375 824659953 748854633 891913656 579486667 593620858 853905960 905747782 626649567 879068013 965485241 986941858 107365515 395527642 170683743 414231598 790688916 796945348 948807051 955881487 378741197 941059978 740036519 955992319 358114307 433884359 995638005 998156661 668434288 917241982 585727832 784167918 702050781 734000293 220942545 969686194 335483457 477626799 535133856 779649855 838906366 843389687 549053675 592595353 500061516 527043162 84751099 315758668 80772942 109410903 836996730 998754048 206502010 309623410 607424921 717838680 223111131 357737602 573853540 726104969 176074041 461748501 459198418 844100483 289238743 306000971 578728500 703196317 749362118 987973809 492171828 813278569 989275833 999091161 380752708 994925601 547957595 904941310 765061984 918492549 174337657 853827693 212343027 850290510 135641745 992858191 615365516 784846649 814879382 866025507 441782291 799294833 564755614 725784635 187379595 628726080 679621324 729785708 744674743 813584384 21837221 601478195 476071477 562488959 230361562 426191059 621844868 754263840 305177217 309117502 139226603 789621907 883926178 900157119 570077130 703900280 645502574 977940809 530906671 875694941 493690983 925623915 988713349 998698164 195039705 301911810 2004101 826487895 841772689 981775564 100074781 693274873 26960806 299043431 875980057 920531776 812122093 873731951 294659598 344765091 294038361 333209406 119781887 306562066 92027260 625212408 538340861 678977579 5344940 365647251 687602421 839502875 440317428 819632282 528724616 558651263 437662627 706503142 697494361 871963606 949361113 975468381 879806588 993074542 801652923 871461760 520209822 694885742 218797724 362150511 493326796 802532813 369174156 987910451 383513590 514420192 969637820 984816320 590148179 819653969 935496348 972746474 583967997 872582054 80476517 225543504 170622621 405598561 218588572 891605368 313148590 992587341 800406758 974820656 604430052 711296154 999167295 999344583 984684815 990409971 68658534 611743893 34489967 208719181 518687380 592480801 218802402 380231692 88052707 486754195 868662073 942497415 975827019 977689436 292172508 819626400 444448001 884740124 815552163 959551091 628003812 963066444 933114042 939417529 839338275 979734921 565547692 607006423 550625280 923761751 223201416 431954703 350358410 953791092 883659941 972157785 980081008 990386374 934280483 958321188 592972884 871323855 954533289 999377276 950239837 984091916 202484742 662117040 143421527 391907961 346507360 656340415 262608592 573351071 402213024 484264832 944447815 988026763 887355642 998594242 807684335 809716883 500801595 926276724 252824387 836681492 464853329 702473167 590289198 724590322 529054081 556578853 188860350 381747951 115653951 796918305 418367635 583393800 342768196 854005749 582551656 827784815 696998884 857340247 294628530 577702244 140189996 567610979 149816952 240377687 777482437 970294650 824189860 843085096 7399798 811060196 44762815 661070766 580834646 936372479 310910368 863638834 225361246 496450263 836762206 918824679 936618470 997417818 152714511 973744668 785851033 840301650 496065053 991747086 326185877 874216814 66341422 831250472 401878551 603594019 655469812 661176863 556937217 993887010 72128745 400766015 220327461 765839916 234202968 746883966 404316416 609350751 963146188 990724622 93982052 704548199 572992173 586846753 338014971 868298398 702482207 935583433 786808363 888573864 200610067 544353585 977350107 988469269 153266291 368874280 992799558 994714830 778551836 787652877 362560514 624111815 499324162 590360725 772428634 870742349 901070568 940775261 128183567 263522609 270821117 707615768 95655860 774251077 33740037 430971292 800793436 802917948 966454815 998210827 828234829 850676541 413725556 934509002 61258964 924337577 801209578 889864394 760115986 769173536 492548396 513749967 897758270 981356357 94460233 676326776 711762773 971147612 57414443 380902866 513543285 549315027 298523823 394856444 136446714 921115417 988520274 999013421 503949729 532817284 962475999 973099947 359682761 619037439 173801180 392433098 825053032 914241053 313604981 818852651 761612718 989284883 227645343 399233862 437425049 603124666 681154150 989351076 474188247 576560233 677892187 966745277 493655929 911151578 740800068 971582385 716606059 849277574 523056758 858178277 649402888 961278829 142058725 342235067 415323287 822510294 64534033 363029364 717022211 816484541 344500105 535502751 827783688 831279510 352784506 572260063 783064997 788562707 213266724 410973751 718138974 855088857 142807322 458052537 578268326 828259128 380184868 753209172 448786629 604268389 322085679 502067643 581145287 885753211 170912108 583441213 171197715 669334405 157331300 611800092 626331058 883051020 58460157 965153200 345138417 696847585 259419089 397640083 455036351 535555880 32638011 180640881 773559993 959564464 607515657 927226094 832506067 959676665 22318613 723013120 998011626 998219558 399617175 822046079 951510628 957910147 181947273 231569363 17728535 714322022 189418691 294505302 545779065 951700763 40297928 569212107 809713040 999082500 820242388 942255903 954123036 966944046 584652411 714356321 915553753 924467586 7673751 896217968 624751695 672851536 532447544 763161244 199925136 894397206 947110202 963802557 183351123 805856334 23295949 476571028 749105025 818471972 849404583 997808389 563750457 813090446 217694679 971959649 492096965 880036038 555903204 597106004 155633973 299298593 34853107 435018751 377735073 886600811 940686813 998108459 933029334 947784988 44447615 945051559 109778370 410715763 690945110 905735562 909031493 972719963 826433747 852615657 427792641 962484854 489871065 898658823 129822664 652008191 42449878 176904121 212611206 359899879 387663510 468064330 976674605 987330923 211156345 800667663 554659948 954879838 110691814 661977763 408051811 720828141 741912913 802144668 357718974 397826646 735157434 849584742 90925492 871912258 350209156 756366379 836272114 885118839 771035830 811870866 977074919 990371706 231701523 291905866 807842698 904225021 785473945 935814235 828878586 958171617 791800745 952596659 731330999 773186693 826576677 952508491 713712575 938400379 769776031 787833261 864021020 955070156 945366662 951834450 193512293 615910069 519801050 765699039 916106395 949991297 80650404 230645290 683605083 968303210 51180677 356928638 249148583 379096189 744020755 991466904 608086976 731689899 160441517 909973101 9605423 925570611 702211583 910889606 752534531 869731249 455770413 831858816 354553893 981129384 754772026 968839550 573766029 671922533 36575701 89115366 33282221 785328696 878260095 934672196 368256339 649191712 181447076 487832325 189021842 635310188 319284251 790039373 712809986 937639984 106695108 140006732 73055419 398815685 195007947 375967497 434017422 864754185 267953862 440421614 872462233 981238968 252777224 458639930 484730005 646404196 685687324 927606551 626296597 681801728 410596553 744366801 139698402 714095415 901167489 927577779 775420244 907322861 319210927 598171081 892022287 934597274 105954354 873466782 445785747 496327771 978904509 986555410 919838574 988360131 55368846 866570357 575016440 772807148 490756001 686680262 133366517 239039258 240218200 457697521 12445394 831322193 822279959 894025525 573593166 675778075 448746140 516216273 732301025 796219394 503575366 706599640 704370784 780110317 843717782 876514126 393816836 724935179 131613117 890522164 353053294 887290418 10895453 220939412 262106273 663072095 585227176 894267632 994798845 996167067 108964762 852834904 45541766 557297048 470355182 503839698 172985255 787325221 241740595 612751102 30675906 995118534 61108674 951360455 597143440 702416116 937030317 992912440 271618078 928212102 423775117 682024444 256049160 605690827 469511965 647912064 682491087 762965429 35000503 392087550 33914603 255795153 441792104 536892033 434019720 825686240 945859342 966706431 361735513 644199478 431510663 712577952 301992641 730846377 631668676 879563772 912812047 932581802 529950976 531981094 611358249 999055122 628270941 700783046 226147743 321293410 356187144 451603352 474183703 986785565 886932549 972461404 185082478 644206888 223696331 518450068 658795966 714213491 870882449 919783041 562114942 827268526 893617633 902806389 652613578 771114810 416855489 571304096 664643052 994151002 685018698 735203461 341223503 342249653 96343534 235042998 375040477 659126203 71630621 668065303 909833217 963667696 963565404 992967696 13331082 258634516 715220826 742988072 116357698 727915245 689573019 861686697 536454018 951092489 222855756 915142640 620628994 941022152 606144 121255991 52822133 724233674 855884311 907871061 829964202 961976235 312167899 690111180 52265766 506428904 637560962 731432892 14866638 976791831 461767564 561150719 308529096 872462250 255788228 354602740 659662993 720505898 988959041 994466240 336441630 658608085 121567404 936444928 282132532 557354129 439493351 658501237 403674185 463354072 50463359 338332902 133247725 655206905 123505453 658913208 363609400 729498541 365307794 409222151 255282643 798447614 720260789 828067806 244018925 529650102 771004489 939941710 109197622 160491677 933883563 974376703 174554715 985275279 262326629 650267631 492421350 954908376 907104836 907141104 256922456 962213647 599912809 783240973 606403943 798919095 806489199 935507136 388169294 903446861 108107620 585674233 607795783 700457567 630197052 938480675 117478947 600256601 542199780 625671583 325648079 903771110 328333928 440923265 803574504 864650825 453340982 818761116 82399520 489593064 856881867 939972194 961188787 979159788 314982421 504306259 654539924 984846307 530715358 728169133 832152733 987037579 549155494 644599329 245269433 595662693 524122244 579478245 146837672 346676430 107124662 563901150 425182671 640975328 245143971 608174338 29955048 617338857 940995685 949300338 453787385 875166900 716826029 822010659 663718970 759526353 151570708 170165820 888969122 900470701 271214511 877627202 65569619 663212509 633801288 916353722 310313673 874150931 639365805 991656230 816550616 901375705 620551596 747265227 510920152 579780879 317246315 633121864 943650999 945250739 146064263 847927756 16554190 487269506 572438629 678287641 722929601 764438607 750673353 985093209 970355825 992644891 709595433 995654434 784577546 889888462 331419303 379657743 212083104 593797359 471758455 854122366 701652480 832343077 147256691 989744855 550249107 665501654 920807439 936973005 656047706 707768876 427673086 827965680 972119420 976819069 14206366 271686469 667591113 898953890 992030062 996053480 95590660 860327138 800926071 906340406 86670516 953650558 246753641 831489041 372524935 768929450 260263800 399739597 689117810 745432225 13630597 236141715 38084207 363128962 184722181 916120682 634679735 747704216 414091083 696828984 915596960 993670346 158863745 758539132 282225088 349206274 315668108 662276664 905790699 970989862 643362177 753022029 241772037 412624179 964385058 976401799 138271087 661417439 733105245 746656670 361688490 845101265 304805723 340465366 226237353 738856614 516272182 967274073 308492304 754791977 479751398 840849600 5284609 498764210 802039226 928234408 540960653 627075593 746264893 929191384 950789029 966259660 599313179 682841732 869851333 950150717 128947529 726489367 238120004 861098198 157263687 224418502 886830508 936869193 302860903 434743984 219093107 922691604 446073602 968471334 650373010 732240906 631530948 692265992 171491881 227940565 62281044 298419135 804412929 960892836 725370796 920731612 912983141 970896264 961528706 981496905 113666630 561642201 422293328 624359821 599706017 827243101 475929694 595921339 88863709 664793379 454686494 546324762 414780658 443984491 86117411 774814457 99831884 641832004 591876690 654122275 393108509 734687851 10605644 292355709 832754055 959042413 194169332 274074040 724805477 865960313 882671729 991686866 930145748 947712407 67541694 826832261 751822126 985176840 342642426 939460462 716253579 801478741 821028098 979425688 809991289 941243472 583452064 892626434 477282073 482991594 342791009 384327187 740814402 911375471 314801294 388716585 600318504 956240784 196327982 844985713 527069858 772816240 252468638 639788474 423794248 556038194 103726080 947263985 905403487 974187085 320834355 458511583 783356411 886836392 357659989 997550550 863533509 922276733 371950000 629620110 536478849 975139749 935722458 939328187 536478912 920576543 923180324 954544815 765015666 842626049 584147085 633921938 253040779 863441389 977078111 983978851 135937808 172309580 594952450 812233403 74289831 599732505 885765534 981485269 508474795 669827203 179629302 250170976 993592475 997027104 63942958 428097443 76775119 871314817 136613762 527239968 642515292 906447167 264778450 595825507 119943474 724012049 591944883 738572015 580056007 596083844 379577252 652956649 883973037 921125880 725442920 963105944 652230220 878796767 58702830 708403368 153292596 858713335 906227374 956098681 52631079 71195630 689228293 970089573 619160066 920550715 465152827 972514135 539140314 770488146 644479213 986268336 962296086 977398782 485297909 701389402 299852381 634925695 232251124 658072305 632919398 801329706 969311193 984721257 780150854 864598899 902936478 930605302 523333015 985790497 14294778 956469097 628576484 695365440 121764160 220556788 985579918 993661475 204853223 717144395 683874928 913689973 903186746 990992198 710866243 794973666 751052272 915085199 717978166 859259221 669409203 970592397 157277895 554596627 639016788 667454634 97534768 751962606 769818955 868250797 643986075 645735535 504580082 787744307 340919198 876206654 180398927 278147791 391117682 939004013 531789559 982896661 520253151 796952826 570002469 973971181 74465395 173451490 251912930 432680430 475730494 705243802 234671330 947851788 694367629 724771126 488390745 961356178 502393 967385612 91803425 802383879 907533796 947013397 894860215 914217981 648496609 698800081 134361659 907974364 562325084 774045593 17388587 229258829 795879415 885923331 951331284 966309662 714021043 825923637 198006213 776951768 930698436 979258389 403294104 949460340 774602629 896608730 942576468 984538340 37344054 639629461 325159926 587029913 698930851 884625535 438308239 973395161 393491563 801227369 996813124 998823238 544623887 571466166 582150454 734060770 910753890 996611582 231201046 736308912 38199424 180117098 232639740 819005312 170879641 543718576 324890770 812096869 157163033 722439827 668991754 685236782 598867402 662141197 106202449 533770278 774518469 881629407 953208740 982863720 793085370 911375085 847901411 887334152 15016709 51087053 23310517 459781740 569483639 649106359 803431250 897533728 289198552 507228836 364374638 861055447 104288122 841460142 522762180 909982663 818681803 966869446 263029229 496811208 775619608 798688241 346639915 813955556 457214282 845102933 355230748 861816649 225632550 386040740 289599651 426189603 232437272 982266727 94229558 508002743 135060613 274282354 585285777 648841319 992726174 994913444 311848903 682772275 736798718 788255261 913991857 949787858 892258222 913060859 333846273 695764636 14253394 512115077 316655554 991958564 483347097 829554947 470999837 857713727 931356773 956095418 925927630 964786626 221196876 330052139 358933745 922079572 397023111 402775943 390731682 802304537 978170813 979013375 639645071 879965241 936906811 962094526 188718344 819760262 944041127 955210068 570023235 676203214 421910816 929588604 239372120 439710309 320063653 593502521 287286125 544745204 436100775 473339734 17932755 441005518 277239585 731031795 161589627 915298559 531813065 592879026 941287784 995695752 878270561 943179380 135782150 699103010 174292074 408666488 131195751 925383535 899065890 905921156 696497652 927696055 275164193 629615478 187477030 804881286 211639335 641534032 620494560 710146515 724426508 937036866 54740599 636368028 493013107 852494717 719998499 983540684 80199861 897799224 617437595 831297033 305705886 660791642 289886784 869972143 191746016 539631252 926983442 990728729 761180330 777613429 921280098 969750175 799580542 975362887 259299030 823657913 230106229 379306843 669368869 781727881 537179757 864742265 943028856 995607003 282749869 925459846 388577111 683289155 334698879 933659047 754225612 848320273 391122430 706595491 495760452 793357328 148794191 596219059 92521103 289145861 963732894 990036910 898618085 989659986 810472709 903396519 967108547 969753271 996071376 998801582 387447036 764919464 997493658 998889418 941106441 995940481 108176416 676161697 450161074 852276992 644301305 742450298 702440973 829297989 26157007 560600021 638375849 716588854 322341014 894144175 664995351 734057229 804374236 939036939 947968087 967783678 461274331 897614444 277323611 808111913 502397458 757459121 806204459 957625469 138611703 344246503 492681802 930059002 450942599 810838924 511976433 810402039 970229828 995297208 912177812 925203825 810708281 880342942 173514361 918546504 29096299 917331576 320430561 717055166 71985358 662001899 900992214 918154325 244653573 781420438 130542965 928760648 460324328 787732244 955381345 985732517 308074405 731701343 297572851 410815317 538385285 603834741 508409318 935978929 873802318 965317180 920494783 998397588 673627205 926836604 892848784 903397242 792585271 807423020 584664242 912720604 600097537 933300991 504608808 826749732 947677489 967369438 604281478 755690077 873604950 926893310 839141662 910191114 30281213 474556901 485361261 673376788 375622760 681532409 219068983 228810341 79718516 473063743 359218117 539125476 768750031 846626278 760624644 957210835 123471228 950052529 162347396 434473319 733647365 814153174 242422081 655966124 662810919 838562069 974245263 977929851 440943575 515086312 451400334 788301362 22118334 595313615 632453434 941146101 247535218 692140542 461624702 906452352 858221517 925812034 131065546 765553538 433830303 728750369 673700276 976780233 6954570 127934204 353058034 866063916 199674159 515506048 140741740 851844652 867680505 988255135 240400568 660178326 776868462 940887704 389725324 492634327 361056167 388260200 892188054 969499422 9760021 885110454 289330515 383651875 366979947 724294275 552492617 929989829 665144657 748767376 430767268 440253208 921129033 933360563 128907925 616974097 803259212 941094149 659711496 858498632 150564510 392704089 783289671 896487270 797265733 869555638 49109608 538225090 266543292 994309769 285675606 396364854 626735971 808339357 234780130 764071506 49247225 979309845 257664314 419777001 96284063 502661330 162188556 409977359 209802239 678400980 223230060 282790049 558940547 763718887 696718832 736186378 367675102 659949995 592722463 597500056 866274048 941557128 737553692 892997375 979719302 982349329 415906832 791349273 693579319 741635169 68212182 957581626 190650708 672282727 964021597 976569662 767267297 908187370 869621076 951808648 812922184 827750113 428136339 745380602 254098107 510163333 550517338 939554081 399446411 665197308 376157923 452289103 538657684 926387214 248535292 796230454 653367025 876784819 117957634 405189763 566951677 937848731 271407589 601775863 208920735 846227086 477065832 955307042 401023520 925115696 805912596 966699999 29521679 648641386 125792029 338640451 681567257 838526658 396302397 668360794 484560003 842304677 217797365 987868690 979084841 990020750 303228691 995603831 91324630 517775534 811333707 866085096 357917568 365223700 183238018 322489453 111818610 138646175 789330317 959448838 616439287 768108711 910056270 919473594 108483895 227435408 230673904 297318938 113931046 611818704 927037236 998698089 561818382 977230479 151729425 480175343 786306194 819401709 430881431 598502819 81361842 949461435 982812434 984538725 980288290 993797004 617928103 934125071 480273091 833957034 395307380 992190045 370218854 664917000 795888934 970222703 928052296 993183644 935782922 939647626 716245010 821164428 233247788 816744848 383818936 724183852 925644452 948949244 519313189 524930270 86929695 406250132 105578585 638050789 378845420 457848281 261907782 804156730 422942887 482337189 709789285 788405842 519868647 531739956 937049224 950276256 209579318 279765439 755120466 958362374 358711212 796379491 646378283 794993676 544454972 914563630 621428798 793789470 749382139 820018082 971719165 982320913 665084569 949751466 20942651 426654571 676404543 686322643 78563893 241426549 741092524 768758144 488410042 644421102 41839868 64939650 164530364 931776172 805968309 854020055 888314091 957324064 773958210 963730632 536908712 791514395 10873158 560975657 309494714 841359511 666388117 846047422 591294947 663067223 423636736 889159546 98933043 118729383 197346423 425259063 487705500 538121675 803363070 822477779 169890948 366860051 90417339 955182752 278054599 939055114 23353989 162580877 561904383 940439530 10465923 761694006 936965628 945424512 971073452 985427901 306443832 819594174 326811285 441756247 307028452 599318623 157067832 894944041 909415262 911031435 57129151 382242891 687684191 787399636 492117400 795084213 512340709 745645315 242298452 758403280 710742384 865382081 344461284 859254836 269068508 501681607 920474860 940621206 865211013 913766782 157133771 400711917 181085251 526115546 451766963 627544496 905675863 964084750 581650328 753673052 673921388 871811889 806867160 863859709 1796857 502640750 168766760 826826514 174725238 713088345 217944954 867965469 257807508 837502077 702300406 757768256 129709843 759060669 291411863 860373528 614310226 974477417 36786127 792780003 112526682 438613001 355665833 844873195 278661176 943621111 415008070 671225823 540974181 839133316 812432298 955566188 150559551 258526967 393332353 826483859 977188182 994799771 115348242 387639438 717162063 909212057 7449014 497449494 693188770 697707942 638846034 882212874 163096828 867914584 644984085 988413666 918084286 937003988 604426348 928104919 519877790 803594986 200691111 597865573 771944292 940390876 733468702 744754370 814575508 907759051 736136495 856478091 152957341 879681458 777109229 863327547 589010182 666095292 700544646 880952091 37591060 586769383 266062353 406828537 78557682 694134349 582291276 715331565 456928769 882320324 691666736 831856853 338847667 769114464 315842308 774173392 560196126 621295490 978037423 997895162 334572397 407494898 891431388 920394552 583431301 963096849 969427863 986165534 371184381 684618409 551006608 618496603 447382213 885210411 985359687 992169199 689456244 868828060 305349445 934136989 640996001 692565239 647114396 946721288 321796012 768422248 720337988 965158034 319817094 943697468 320805711 740801440 374044802 561796087 878930439 974506566 331526232 856284332 155529686 329633413 428246413 704722997 770220053 938591710 424330458 723586683 726147236 889909935 303506819 730910088 20317168 368598928 393225577 837435390 428881902 770794972 669160300 693547059 804707234 874809669 230764197 597752330 507281230 676659503 808130380 983464466 795554201 864801682 894445251 992966014 711902573 919628891 208493741 597160425 347844970 353063877 562318005 652748060 619940054 876147978 918646732 987147932 532939951 817513695 730174751 837929740 572146133 639562412 376131930 841480712 186609074 531144481 499051238 510231815 757979278 933477669 242022919 302100657 709308252 768290445 820365526 892145191 725516200 782643839 105145481 661324178 589646633 873737873 400760239 785142675 565863030 800994118 230792431 742674387 352129595 452260435 837457804 852822392 241139046 800013399 379975992 563508929 960979887 963790555 218033820 696403411 221922074 406599404 50239337 427427690 679349207 858635367 548309211 753351313 704039341 967519705 728718544 952435874 394639826 698678952 495266164 994946378 918037557 941279584 775244674 827438147 426706182 466143587 49107463 54356607 793541867 892933992 489793078 683983264 929150342 931943211 837758321 841301771 722623837 904554449 631467697 952572695 438608644 774255708 161836022 175253248 239297930 448258849 430671213 992327067 219912982 571762006 626494553 993383851 277942667 810909121 642171086 736247628 874103050 925973300 178194264 328516640 382012513 859126514 982342206 995694590 142143387 359960958 856046712 881740094 852745901 914014514 355241823 871533938 540599323 806861160 316520120 450788830 282942797 967982958 931911377 954507350 424950131 868586950 907725667 907882521 228578289 781241572 273491421 988105659 248230119 345792306 832023631 902850693 282845523 398949735 618550359 761741336 750939567 822339666 416712484 872866326 367968882 566466413 313459030 645605936 702799482 884779696 427738155 923048306 20331906 258483361 33275987 379587959 158219998 237518002 139651554 809913919 353031865 624425001 346338856 858384169 20833062 140554090 466808898 676978546 100703228 293878982 985705640 998931212 312049827 347210376 916201102 931454053 864885970 914059119 213525871 245199602 544625116 722880415 331356075 555828520 188729033 318682618 904390777 991428559 663942813 693688995 970291942 995580651 572975639 644902582 453412641 490781186 596713929 709482415 502403784 730852921 469646248 820969821 276593280 814304878 649078208 704575436 44651074 604515596 135155860 946111794 52023498 230382014 343045663 659832006 138125186 401031618 82277989 619096198 607124577 721795581 182251386 266950485 595521233 808079173 340799386 562512400 157490286 237646580 981602993 983830707 578950870 973589957 433397711 824955704 954868750 975924442 831673216 944173939 908973827 926106017 229460077 976419938 270163792 552357880 418044957 839957242 802233600 814001352 766039225 893022236 40841932 522558620 678390007 987226098 778103975 966596089 406081552 676492969 177154291 392802087 385224326 969672046 813605595 939373361 187854595 241376757 436326218 775262078 393979490 832078805 789275247 799201812 425818081 426587706 837488043 945788004 160939589 252443233 307740009 799182873 732394156 772739849 716960148 782226705 804189943 952267860 400188786 477844383 219177847 654428876 986833635 991652440 286022734 422717679 213553285 853400075 492383716 800364535 814254600 942414319 587222990 822032714 677392246 856302578 440057358 677217344 866339612 905620015 830302515 899889121 247508727 978443817 597445168 827311695 969434365 988063450 542630557 775313635 562071563 792182303 738210409 939003806 264843253 755955548 764162644 973157635 835938521 916171748 917359188 926784614 560181160 776870857 401739740 576263861 859415877 996480689 440314660 858461158 152329835 742717565 700158695 771187921 327558160 584516985 618818146 717526154 713368930 771412265 386366403 447393353 663401134 916796469 144065014 636807973 946893606 965645608 824191184 877008634 953613767 965657319 25562235 511167686 53346645 453136358 528784193 826157692 44484657 744296930 469776680 574565040 844560755 902980667 28100087 199308995 57947185 575066187 187138269 309965700 696447661 765041931 34931533 340629041 619591184 670568965 638578868 644892131 327063008 996945439 840718363 994706068 679904862 878236987 614605640 814063106 591771917 853637496 506036957 904495133 99404029 147692991 467119081 915470885 926902619 988489216 212785430 261470892 418990459 532615712 947744764 970000720 380210753 672236936 771634178 946746136 10213832 112624012 894655742 908394611 211967419 603286272 808900926 842203442 350407750 604964324 734018038 941888074 653370305 699363592 341647949 823504594 719168994 946128458 472683376 722683084 836205083 871348324 113927892 799962723 305214149 530901824 582701816 708317853 319592934 970717588 989059349 998431512 734793033 850887524 515595899 536274393 728399141 869220484 251456054 749672454 185443186 917342288 335151425 940857863 730953879 761968672 626592691 737155860 640714985 731772529 586730955 893537505 807655943 910339370 877660371 942645749 801831020 987707943 232517931 567612418 276856781 777052338 570835041 994589714 392663650 971344672 915237151 977667469 931344758 970493430 917630125 999046657 497660752 778814752 441168025 529502609 229229649 829766963 389788999 511719672 899797043 907639852 122227182 533847662 700118797 822981806 108910192 160816784 757640583 893567316 731489608 745095891 729434037 781169578 806319640 935491090 482579689 958507955 564121609 829664066 944847976 950181122 740590114 932474162 293234871 368431105 649084530 651537736 28612179 104756885 488498986 713824629 906348889 953468899 998977499 999016508 117580528 154459176 288635845 666807404 3441280 945684341 701428111 969996465 892498764 950316601 773860177 974650321 534815922 838735340 275460989 336281179 760568539 933105913 716817728 795848368 304215396 404712429 732338169 953058349 341683519 808123943 175837254 288009996 947888626 970705244 941208272 951333280 263892161 479131179 181728871 689390441 713283207 783055272 750016773 878671719 181692960 473173997 172571841 837292336 499588704 983420053 894334190 945887133 428158713 728065371 759290003 767721637 440818807 681583118 890000906 892065405 476805749 962959442 95871138 274940168 919940536 983608619 45304754 244611094 139597528 865031865 308150846 585812570 217180291 975654439 732341626 741457661 529295079 645542251 115907197 659958680 720605230 741442010 984967092 992464181 784624201 819298083 231439796 543305654 549517658 648160835 366951388 831611996 700126902 733880686 439263043 855817989 20521113 716082403 522518519 815848077 333170122 426872170 355957102 808580925 375906032 653847247 32436959 821520202 677249856 954801487 379895323 559675484 211080808 584856418 616644176 625989812 22328799 817811953 501685784 943935195 63772045 474486523 23723291 662327418 346512141 960531786 805789079 990509773 561742457 651080827 673586474 904735641 573444043 990058177 462737164 548555324 926984593 994500296 101665174 281655447 438295394 799906797 81633822 750734516 389697977 756535299 492075105 696299544 396537885 846542250 405065596 446871334 780295369 948752611 687791347 928928309 451509282 728053116 557752413 807238390 929384640 979786980 758967552 930823098 758748573 964483521 720033234 761770724 261419023 997057102 308954217 797293806 955087637 978319791 535129665 860986890 11408366 186223046 734992222 898527314 549370744 754881003 17809641 624119594 569537564 814382242 765761690 940197439 777309042 980013206 460863394 811274602 887197681 963157978 140653396 708278556 21956880 741778101 687925203 707145568 574690973 684067224 904968973 941807289 220720413 991178804 638972963 888714942 418587295 897139492 101067625 169139291 604759910 685496882 647558048 814570400 515498162 587507921 352816315 501382060 485366730 780700858 193563920 545481457 39913435 817402919 778144531 838780622 669792237 881430843 33811479 526125287 992179518 996312820 753523483 783122019 843918181 956932996 245279557 938394893 556091684 669325746 42254435 593646255 646845499 902456096 945520413 999298113 284918836 956916958 16424572 45696962 658429944 671471848 460674663 655318923 396833250 828818826 264842372 562311083 1925905 903683329 406011549 833281993 555756680 669035402 519432367 561523001 395492324 705356049 174330511 503597320 597615212 735020163 813927293 820624694 928391145 999334355 154005973 344221486 507032488 774139863 682147925 910466758 164264623 963811483 101551973 984328739 432016213 569377108 630670414 867687248 168412841 685023517 127097730 534399245 257474034 935630349 444137670 850300535 847794416 884959593 206569538 652368221 26396862 414976622 766221121 912682555 473753329 820890818 126843250 719351358 904325391 970657517 895165989 909161593 620639541 884719085 487819561 798754534 954857703 980842375 475354795 873656021 839276410 961898049 708042613 740735094 286170357 662966604 300846561 889753245 172060943 634172109 726532270 824849120 494902920 660867240 345683079 746963468 525879309 560674685 301044973 688636206 665307747 801960663 520615027 675478217 791839987 941217208 594999896 951123647 539295104 862480086 701987958 971433758 580028292 598367774 113652464 558349596 135749887 491284166 565923894 941471414 402202470 902535216 416458051 606436503 364600710 365089673 197539857 861000250 325257404 808418388 210475979 773779605 766327488 947340538 868032214 885978408 185971335 488670719 799059301 907905466 569032701 706504193 151728934 335744762 736742888 848860616 188481518 947847038 729120962 982159090 117152405 679166184 51829122 384655065 671250249 926678488 967818916 990099065 947912371 969761343 917691893 945944205 627766243 684229944 319046426 763805281 130398934 757904298 287495107 386162874 869350827 932895352 808675927 870547123 215274695 373578096 908934472 941804662 960890456 988082422 325783683 535346295 961981081 992110750 672230847 976136028 911083173 918164957 126731353 292493851 755752686 998131274 518508144 936498039 264056092 510265171 652862173 734838540 872199255 931924301 329686788 810043885 739120793 853555186 420784338 595551328 744825214 753348086 755620423 826038281 292547934 893710315 610135518 833601770 294001514 816591108 387274662 824157566 75105091 370222138 296594518 825962002 281066015 813020279 72475811 336744459 126922759 342600554 908655905 985862134 180583236 634420015 923178690 968703393 677340647 978277168 212229487 301081564 883639739 940949690 923321450 978907355 123960851 595156816 633340220 923395258 193209253 471398262 934500523 941962256 303562307 980418900 147257407 280212601 276415965 409691856 479806765 703696631 842377381 959359245 939809397 986054378 791030874 873415548 618264385 744209195 484777677 523266125 751341201 839278351 741028087 859935011 460224715 903984089 505918460 907671758 322013869 554222503 789081808 977918544 709812289 814361148 92752384 770458120 15511782 35788756 167493109 518109610 439181109 549672187 392717553 976439111 674825651 745684801 139895826 492678130 20793373 66950986 383605874 989545248 16245719 691544188 132628349 692324160 488572509 910991372 158225545 869273298 757458869 921658086 668183852 678646466 437268840 500033372 244181144 408343217 630442907 987374822 396280716 727638315 449447682 811007207 260920414 997687976 537575091 793962636 843326356 847186686 792660981 979946549 862794355 908481682 682231472 932142475 691685928 889408157 726098595 793544483 970880982 990761896 814308656 965410793 685688943 770897200 201104150 680696983 146703266 989685780 931429794 997421327 6588752 179307998 881666415 890234921 78603913 723040788 737350977 989473132 64282202 759471546 169903304 226501065 873327252 936736022 159264581 858510927 419172752 813363069 966590383 970063976 903190618 931763972 873443220 901971525 201344228 841318548 661771019 858567735 594600694 956918154 194117919 891188893 149830430 988412927 422571324 644328869 358833344 383302939 757967915 973325951 213334632 661146747 568532556 718862291 301976152 697135540 788156904 821630645 767971537 797788570 119692771 573582280 136866873 655086347 82792844 278983419 796060810 903812120 551119923 756873246 2515272 861508862 666997869 772957286 113976069 772421036 945737606 975004673 69283276 887527917 285849039 855082202 960708295 998967753 785774248 865760230 509176779 750841629 550985813 946482049 311593768 425553238 684467442 914882584 236653651 438617523 67432658 191661084 690780910 977407640 775246831 962605700 190011658 849907562 282619350 381416275 620892725 912806246 731889904 976192865 253052039 617922931 212671718 651165515 556292661 770650341 662276372 754617888 715667750 814786099 448732562 913429230 992225020 999067472 502176779 998357379 644607140 802059687 724516758 857456334 45757045 614314449 559828497 712624841 923189629 935528710 42726994 156108425 14973594 95160749 185936061 597043657 174317700 319500593 523478026 914459464 188258589 294978305 135661497 688414662 465412301 964475766 207992743 971471298 272172269 788111339 625195802 947005304 733962690 992146467 723360757 841342765 723272596 731435154 842495466 918358694 595103658 768839469 457795847 636458946 467137494 790621517 803010939 865609681 835025047 949120315 948095238 976349576 979418719 986576711 753543052 937040945 71604041 464570980 584095741 999231146 36435254 391324767 851197017 988798784 757690852 908799294 389064568 784831449 387019229 922952359 482881854 671472650 865021370 927711773 987901299 996179901 279849064 982559543 215199652 562576258 415917620 467686556 657824145 679537679 63943646 94744421 159588906 647659406 308422999 593691038 214402284 918060169 112917254 293453792 964429517 971494150 970412046 997399623 948371454 954688701 996948641 999359282 707056758 805950330 696219964 935422921 724249120 855183636 358389522 544768927 823144547 886234049 212805664 880949551 194456214 575383327 201213604 558427551 305568130 573687630 23538913 826495301 259713404 858890719 971654760 972810805 385820575 936830329 826369241 850496839 831360178 884619732 711754842 743972405 33813643 741412733 347352442 849077061 795273090 841192815 786666220 904403429 710305806 917801660 556790410 680550444 623737126 795627633 992546994 994093429 832697479 948612952 302537819 838990327 382106338 814402436 842144932 875253012 192741572 567465263 804077626 944095298 979373721 984339437 25120087 229566988 301769144 921487832 357966901 689233000 541097593 776525468 996725241 997927412 655693137 673087547 355056135 412921142 328693792 943280964 761325684 822833070 573571523 929675937 755888929 949572292 225069968 749800655 766647038 778858923 752013257 811338263 191720785 473548051 604434080 902353590 672567342 920536463 51424804 686315796 603137769 765540384 735527439 971458382 768299231 791341782 568298748 910612733 234027558 277673452 776014786 973163704 120556380 453917813 495475464 621103990 207236337 232744723 774011731 931963990 287362133 822156160 901721248 983111291 454922539 811614526 791034589 976616131 726123199 960865844 794429965 849254338 758648097 817380571 521037844 847992622 996823244 998102260 104753688 534418600 8067061 919970741 115715697 618295326 126989024 610781589 974447201 982323072 583639698 966706020 359488263 683223028 39478223 690361155 687726193 978760109 226077246 549437233 745635069 949964922 60435315 989970740 420609485 469144120 186915751 858634775 296950519 527224513 476546447 652654916 734084061 909108657 173727617 285259782 943288177 970118327 678597122 859200604 398869283 513896549 35944321 243962287 252921701 380473226 445936589 611074303 39578884 969503050 335391360 955117484 448006714 545509824 814026860 939728068 519493634 919945135 245477958 473787187 637869525 640881969 852153201 932978003 834794086 951071167 140609919 991651031 757292405 889258322 904392029 953243819 1905569 584352561 697727208 791777973 329976622 595175854 934685904 955233761 147748013 594565460 195734471 945300216 732740940 962940421 473386725 986395338 671726855 770720848 181599274 420466209 995769701 996313066 274797395 775917042 352028059 484750521 249751439 903608817 602540238 834087699 892316138 972371457 52322989 915581019 462401950 806057743 679630757 687259299 137356676 425370460 339963194 639402231 397124492 957012051 513478439 830212188 850959342 910815823 458313962 543470862 557802265 969316424 997347916 998798175 282891486 743645945 636777533 684241653 938529360 965664970 327072526 972119573 459832940 988688974 679769324 784720437 392537101 626768866 465891215 559363082 929870700 952401281 519285976 964785572 711454622 927219941 415107287 863725588 115027144 362562816 167859297 765576047 732076991 738601033 220879902 769137052 599290961 713806456 370788558 819722761 739387215 951274661 730878734 910637956 662164509 964008955 531537665 941729542 669317027 923188258 160012613 369776144 251806505 906728111 879821432 923065356 312109249 670467163 551483711 844786646 709956351 858915533 138227753 141201238 403713861 739033292 291784967 757528914 330547096 972722854 898533010 986792285 182558922 417949910 261698144 872003797 113824535 564002532 872737815 984018648 990112872 991745585 116770070 816424260 983516469 985821755 560711758 929969160 899184661 927539305 315575312 412406994 737330731 784224271 135694426 499961635 636312762 832566595 675132453 814783030 722967127 830005707 566129850 926552484 800429159 815272904 480731597 834953312 78727212 501433007 624379946 899289266 123908319 244857660 885509898 888780717 358050112 982574549 449633730 913527894 144561419 920373723 970086141 984666170 261084125 319266850 168480407 225292015 524827348 980859656 495302169 838555649 611035989 724333529 314621375 579435838 84195127 781266845 186063308 547662317 282144330 438945474 203854303 318107823 604099829 944451409 294933446 988802421 125846651 592587957 806836822 924597548 490940027 773987475 416980484 490745905 284949136 763281621 800895425 839152121 665156939 881011236 796766145 879574391 123973209 310807737 803455579 825867802 375623738 737119455 532440014 757095677 21471088 121540267 247188346 328924084 838551232 899277237 879690067 935312250 277047861 300185883 24264664 40090415 357451740 569107817 363454463 603785666 580032336 969794088 933478744 964312847 717556371 959827189 621190791 890393801 814819010 928512793 633907945 981905518 191722275 200769365 597757311 674929742 911611533 967818556 774209863 977925173 715355063 825800578 635678368 705847085 289010188 375658279 419748459 658341069 390828330 529613748 155637331 958574944 78572133 343317598 766954773 791842202 539143216 571014033 914259558 928088288 385125897 526903546 354233395 598253743 653311873 857079248 761850814 981270437 839978422 998581753 327482067 410760606 715556454 755923304 581401460 974277088 736412725 753514406 842011716 968498131 616023444 831538129 79183973 976415449 417452511 801926447 504258383 994450368 387876864 645630541 384528406 405688196 292813911 312101551 434966666 702196173 34408456 981995259 854275446 863576338 786498798 954484250 24274617 536319448 99666711 934039948 445569743 573700974 333890285 821163818 645311216 976056239 488356798 873571737 611441381 933763478 946038383 969396117 117014296 493452083 900289583 913506138 871172159 931150279 226130272 437296192 213355992 409711875 502115948 984151052 99881653 683650264 159153612 284320118 817461332 892901377 467067178 684295894 827687936 956196628 262031952 982976906 815500156 930568351 759762759 787884457 221540830 837294272 429740857 635826797 186775940 910594960 419105942 621880711 715940670 750491059 485112016 839514709 347874771 532244632 63322546 471264256 201433299 614824787 11522150 479713470 86698474 615760447 780520312 787770618 247321971 821152780 624064103 812273238 470504816 496940672 490700456 715711458 858229261 893931173 812880134 837807139 185492769 655774941 277678601 464606121 742377570 931302821 101494597 321873633 346134971 456498646 417066043 779792328 982702379 996707059 264795275 681289308 240916311 390255900 975535133 995838621 560748287 565536957 869908731 875157935 410960946 755542185 97108213 947898899 659047088 752965998 380224636 806543833 718479848 768621914 591372762 766728949 596725265 981161475 798996627 833515814 59002637 576359386 567729151 583162740 230462378 549071747 760898582 777529957 554555287 700055878 902639800 955279834 766273465 869405752 323639936 574271078 705475098 825873018 998457133 999065651 762997494 978146859 38265932 715715773 787765154 869641114 409700634 495145527 431493148 795257562 327776855 719319466 356187479 492946672 645135251 981397060 579904857 743375433 375891177 543804425 782740439 938013650 355482457 996232689 130592067 654036552 957260602 994242826 46203572 335156378 240987585 388253344 6860240 752274325 225437048 916938579 760432777 830822109 639774828 780243783 576938926 867931504 598848628 665276813 425445685 874486308 688206736 807272913 419209574 748476259 689610915 707383853 340840871 978457053 906691836 959832779 743322005 896457093 620089403 738249658 689857717 860822253 265363349 366640282 399436056 712394346 922118535 983581376 770212776 795243619 823898340 876605762 408752661 410097788 822507022 851866159 804659340 945097152 757629051 871456712 119366720 177033077 382232467 737255012 189354970 437390859 526879590 652367807 730605688 987360352 731242443 782558283 776309331 977320550 282841149 949582938 923675942 986426373 118971950 723340551 524516215 830251757 693526105 907134742 561803313 899410535 987105294 992776927 373213365 535256669 923818833 925906520 548441416 838277518 261732199 751733628 827026737 940981042 670969124 906534524 974770023 996578143 12642163 447901215 918643351 920761746 602489856 788649961 145257636 565569529 127401383 885046964 154700372 250567540 194468765 423016924 449899783 540902938 216814870 327920336 687789896 992902731 29772220 899865904 560614791 839316646 883515371 999177231 253626835 300044759 63333720 237765118 319026956 715195210 622333629 914007161 651762703 997486249 489785126 790457279 484388265 851785176 318242168 385922620 567449424 737734335 565873424 941915029 891420392 927150401 333491427 628235169 50976309 226217843 790318565 890368223 664062509 898068102 953857729 993717318 455539917 631139383 117149711 544493639 356604824 767771745 849990092 933364676 44085940 641133796 873707052 876514303 270900419 584355709 918215326 990053162 911867225 992304262 837897350 899923836 107686077 621596865 475021945 680513968 712915249 934580555 964023358 980904750 148155699 196534294 874073911 994032001 740611118 862765387 881943957 883812048 208416381 572397078 532661542 647937105 198816150 723922225 598283534 986270222 792640430 852347802 464566651 914472441 65424103 735063508 9951100 252721765 58617889 185015889 806399872 838239316 470156270 644330004 662385273 752654900 328011586 627396081 636260606 945073707 25886869 763850349 7767330 487793085 806092153 912401529 494681204 508358590 349571623 438204195 887305143 953960877 967351127 990341655 509475630 682418358 165455466 850034390 69964710 144121387 620034790 636568987 788905111 988641748 368684224 708915732 972697605 986386830 670416803 711256297 933428290 961490701 762804626 957803846 938444661 977711757 924314482 980015637 41059799 192104049 313526779 672926108 783210870 840941839 244718503 789025684 575260200 651881095 475443033 570868867 186811277 804689723 445160591 808673418 603230687 619295899 114530316 724361794 482107857 789978669 299076508 551395753 827577686 893862780 589843543 875669324 175662009 540854041 699129982 802813437 3655379 31943872 653535868 729779485 941034587 960372021 677832519 796014882 853097723 915207371 813943485 825327771 61201877 836971534 732410277 821652246 906375808 943117957 267892861 956050431 744409086 976771682 250588024 777510453 66552320 580839096 871227418 998733331 762511188 936883673 941412543 995848895 303563170 395366458 23230442 674022121 348323165 690087547 690707955 725562689 421211245 871997200 908392054 985737091 892021431 975866364 759548189 779058658 118179058 912060073 59405263 862826044 415824916 687639011 669671319 859286934 298877202 328903294 208645981 677469043 295654682 758536738 119010419 211121658 692557579 858359909 467255390 593233021 823906121 972227413 33331005 897912649 474281821 738781015 571546699 756171691 564104250 580337507 523147833 606622164 204688601 806431443 984137096 992050185 467416428 553810336 825491898 913920259 606669718 689535212 128511508 886265866 838530175 867908463 696300867 716652287 646669140 707451589 363899208 487419699 641605533 972027987 512410275 843922132 200966734 391716852 681214712 898521801 955945432 999150027 253264495 436618876 170569048 296184116 422315491 538260526 31517572 457504300 744521390 918034655 56972982 927467144 757538558 948699486 848300382 863088079 105300119 768415326 343853575 876349103 503267038 865958850 520327761 531217986 253256627 473787346 623217943 892677768 142549626 529308131 405392796 747899692 428175434 570823246 586113022 604113126 61931001 855930950 38464572 249674429 876807249 897272395 26291050 296694449 723761253 797732440 2395322 90197628 843761277 852492657 820122260 991629784 743625426 959584291 871298919 972448659 615539788 964194724 798674336 912888503 420158790 730109879 882802787 948364306 863556923 888231153 369610854 523119013 994741789 994934709 667990958 803132711 820029734 966267003 141487267 504629365 227575572 414429640 524120930 845550780 180963110 607829096 362787736 824402447 514966132 918244350 407794425 530804116 633362383 673555509 883144147 958249256 780791609 867052199 301865563 734324609 240763228 585336617 778340612 896191005 601033570 959767061 208767213 738917097 166379634 843092778 791308333 897069646 230028711 517400362 475784648 752584260 584180215 695722258 255749283 646840766 854461889 907729632 716073276 971159184 883284705 980295380 94527642 908065136 550270667 844712852 548148531 769473266 300063248 799140329 540090596 912040316 324965715 465077342 684119770 848864203 790797657 881019854 755703902 832311445 248502613 553816617 395686546 883657820 474613464 525791190 480657448 554001676 660786835 740237963 71138421 959755942 299411258 932349127 531970831 548641396 971314633 983485600 512445869 950872104 546805718 564777375 779359417 978070774 878418017 888417061 199222524 966983991 808331584 821428215 976733283 994490472 121800703 350141714 957157874 968947196 113079799 594941842 448013957 652514887 88159284 688431468 265840659 968811135 733206847 782847080 535367309 699408431 895106040 918269148 872378937 970100530 882983014 945021483 357672609 610172593 932119155 944471767 752818114 809365118 953850186 954999509 616032529 909765727 319304896 985921708 6193935 269488390 505972128 805119710 51198473 641138267 108980683 984404194 529845607 927409888 609428893 958764026 844842147 853309481 631253894 722624625 918185653 959602208 93887539 500015850 797486816 932960678 525187442 669972738 242822767 291794392 375519899 758781069 455594174 928771246 283538943 886714639 499115662 570295118 717614552 823284926 930359544 996252022 465790679 726385542 204542395 746339984 34373365 764744627 433296566 636781043 731038004 968872357 685477291 832186897 55027167 210113707 853933984 928684001 597396519 966857218 147730341 904910241 493234889 861071935 850512849 880503412 244764771 934240841 247803195 607596931 484320454 743618478 796511963 860712531 44771707 685054152 866467635 931990210 186007977 546235080 713705452 915177662 758879669 959876306 19098790 361019463 758144612 915244452 67112367 126534893 956119317 978403454 560950542 874050492 376516748 892119270 681453829 733872798 46037938 283093367 180842673 635292297 616677828 998640607 185574275 252401567 7185149 635529658 686980111 893404777 521609430 643066484 121053612 724003956 482328344 981872665 835214198 872589136 98891394 516189045 458278914 953155403 198050347 442676867 186157064 430824962 94470831 693290395 560409308 931057930 874349148 941158586 149389604 319841013 350617118 666328547 658416492 709115414 423988010 715670383 50512314 858374970 260819888 283519507 772643422 992897187 419718502 566792048 716517908 893153451 110835100 732389164 656874432 879595009 453847936 983703671 600158790 951958547 808100228 921557494 113333381 852962191 806112401 837375164 627901293 783600167 884174510 958186268 626749473 741591639 92734613 171818527 459472404 612243111 201695045 253048472 668976973 930058516 550570051 760771216 117197302 482788986 860980327 877849221 375925310 994033608 275886986 835526823 184268689 731654826 29873475 151440824 660050793 874205600 637909415 936412568 906645005 996539659 905347568 908549922 985829551 998481384 125280554 221714530 954679390 963680461 883836163 887570592 748885634 841149243 553626492 950552123 800617573 836686501 215702423 428139835 296387518 679537894 291719581 340510861 794779807 801035005 638231318 813811076 505967723 525234374 223802529 294468332 965342067 969355124 638867738 889751620 205583942 507911059 559303509 784773822 115543844 817412338 931862339 948404256 858497817 950822160 216829252 595130837 901292065 956912762 196592469 553146679 661167267 727502475 276919362 537119777 172989634 657779311 123686265 180959657 602710817 880828012 501910983 652485220 133122286 447364110 641916498 841150444 55174643 188888157 403391318 623760384 531864087 912822432 731613908 957325970 824568329 946197762 184145245 935099211 218404582 744893790 517517889 860499914 691958450 695787917 187450729 293632912 805282190 940703628 938006876 957659477 906038517 914598437 577654029 787280412 375126793 675249345 591545298 978202196 756734047 847829444 585720026 952989131 890977641 968779177 550792050 583368933 25310187 230892708 158158984 434946817 652951832 908553379 618463111 966123424 386873351 903518004 727362383 925670818 262994836 837329436 999089551 999307726 573649254 714148604 268478822 904287997 59535397 379639711 327696116 941777472 688657163 992260106 73012999 928708872 840747232 977174347 493564623 870240976 240644051 351311469 340313667 711044299 617685657 986326856 477974097 824139808 646080301 677267798 334510651 605533758 543060002 633508113 256433586 669801034 534387840 874821284 426064294 806311645 107137215 352278431 418825313 824708400 855625244 971987434 145763858 403895949 901119793 989053143 648718145 821184527 544169605 915491985 906878310 952719502 855343968 881322087 646589868 946028229 616189716 668948920 26444265 898139238 536070742 809681973 514908416 830358176 608805957 673037511 666050408 733691328 921065736 951922071 264754532 468485456 796908824 955980113 612173788 874243989 314956961 602812843 577325974 645947977 570183462 802251784 399673721 770194233 602425685 708290460 825051556 899652478 644206484 890582024 641048485 863119510 818456809 947889456 521957693 938020182 163883320 691758779 535486464 569584574 81218289 363689664 202642479 777485996 230839357 802584029 716656903 894889069 679372117 940230066 582868073 629828056 401370142 877362477 569359444 907478546 249551247 626864893 565688663 961900124 42285597 315313898 804815021 931336346 155794254 919953868 388052941 827002179 268193091 720323554 116933513 824469578 738883210 967997742 48203960 151604328 665591032 864622241 741440050 827566838 294960844 748203124 978141752 988483365 701010513 968795208 346746792 960976517 285047984 940964171 432898765 906713975 565165142 919755438 356014051 615249121 763049447 976307373 98777503 438093043 69344346 839059204 14250363 893258824 482040671 899593810 762075994 920461056 355502769 604914653 216652142 277422229 979615526 997554720 127618643 709298572 930177967 994491771 446464228 736363744 759114062 889381223 305225981 334859111 348209573 466530510 105201007 457029138 441738089 988744304 906745311 976763977 123979684 431670405 974005481 983590881 508501807 643082061 303366662 608354144 176455938 523945161 716586595 781085569 627272745 941956267 389456264 632851204 602831750 628001813 95197783 707468456 711044064 947305468 577491209 627207215 16141767 657507949 483946755 634354090 70903079 358943220 653190090 847877839 887203498 957736151 61279535 900386250 226770608 683265025 54279780 526842212 34578892 890046171 325447047 761961761 787046204 849733876 784820977 908649313 132733019 584933588 828740928 998667717 828750382 874352059 919556757 939321921 116168262 802408042 465169720 800273024 492102244 545242725 29493478 435410353 915416311 961655353 590674196 840761441 898559933 901502337 827510226 889564403 195659395 355770127 31492396 399278450 277127710 366966544 510578289 690027982 1802972 932250560 550731728 858349449 689083146 735053977 581300423 980888905 665311576 965583036 825414828 938493943 389960110 669751994 660359649 777643903 211372814 566449156 429980559 462045067 877966368 902896180 998430245 999342679 590372983 655645712 563200659 945181692 236342293 769160137 860702309 871630229 991856684 992033677 491272034 833856625 902719115 962706050 744950087 915300999 423225752 571662129 611799080 637068699 403493020 703965843 798379629 924655279 466176320 802009920 439782423 924510985 760050314 823131382 701096475 701806251 844690742 956092024 784245891 884783272 711669106 745060868 127973003 997915453 97348880 771150700 592738442 724762998 771195616 931355085 256864579 521530553 441992492 971528658 71724980 250158943 719382992 901965126 983637474 997924165 971339115 997617681 330662547 796857444 341750370 839879336 327775017 530607502 904701492 907682977 538224418 895828448 137045622 838573657 357736947 570336723 566523675 675430860 187905713 507929495 581477817 740724323 133691736 267286579 293610798 554447169 594409357 936051720 44971104 245249810 702995414 847911128 277525194 348285953 516165410 679792952 530183093 977205308 897967077 923316260 544269426 583128350 526429559 730217442 917931138 949628181 606576970 898163436 833877097 910930606 523364249 620347419 653674808 815595483 772992769 865385240 258609864 699351498 742966504 792334797 608684010 958077836 426618650 462758570 128875564 390551947 631575803 751259050 823993497 887262239 54160077 933217449 111594774 130331029 847193541 882883195 440069839 532332242 820502516 895481301 210314415 632588547 240373499 552446233 234852308 317585397 926187224 975131396 25980173 325286719 989401813 994015957 534946748 571250075 132381254 197835247 136157642 189074463 67156766 96408373 543212210 659051490 158318822 424354969 132720774 480372801 438244864 809097768 214377556 274364286 728514456 876061254 249589557 764476541 381549933 833788735 392092531 585091507 350465913 561966661 666991676 919038059 909089361 921455270 245251719 879171358 228663698 667551315 676985494 799983854 681112898 895096333 149555630 279553562 823562860 889751049 800323431 961618387 917314255 986272454 729537185 763550025 732281415 849373096 717085320 787655282 250254977 575326430 414298473 699550004 237916059 883657020 890302233 960989209 457572696 570344335 443346695 526324446 171046432 852298399 481349109 826530748 953369729 989948642 150739955 254541737 240575073 992803408 474901902 848581568 699694653 963716930 418788992 596265300 263165780 392164594 39186727 546553762 422886742 939215871 807565244 995950694 934976736 963895473 657325152 755598648 278035044 572085413 446329875 780057658 607679605 615435724 876670357 996604086 726509478 993862418 267371842 419379083 179587123 495300564 236913973 315393232 258919016 517119175 808627798 938010948 456151183 688729574 631107198 668666797 655825078 808886165 30373087 231657898 356784184 441956044 259409316 939429621 660013673 739426840 342004685 957856861 194502896 205903936 116150165 508583013 911127749 912575125 564878837 994584574 570388758 934375433 136330134 970627974 232295307 847966397 621414348 886588819 558993345 805612415 821463651 879673885 230799295 345523909 737181051 811219256 418922716 540222050 96876278 272112803 451099662 768561994 228444963 693853447 867490593 893944208 994956584 997260217 514358914 627265021 124801630 976434652 610941885 972476589 64290648 71869699 169054919 652047049 359483455 512811750 267153517 953284507 62934509 244516080 622708222 770619524 795690447 813896207 755053245 776525445 649446145 695304959 192875881 266296551 156324239 324832901 837950009 855468021 843491060 918685113 579916400 680539852 791994980 863128005 741441677 793454088 482908218 926829738 882292421 971685588 592325911 840291086 223138225 994839920 902679860 996943710 919560165 922028998 777518855 777782119 343689433 798089989 528451517 994033504 571202175 634460669 846359631 979692877 965723897 990637112 420165111 567280563 350326574 748598746 129214531 634606206 40208299 540782585 946155385 963026543 833055169 933929014 372031666 468690215 876259802 923026608 922530189 949258189 545899296 930889445 97617470 962071279 3880131 811970054 949590827 993524004 517232181 871581742 997496396 998725741 329201822 991882554 478387929 699049065 738902269 897825256 832971827 863709432 243026372 351791924 249865906 470791209 28261385 384304785 754288837 953952696 845122677 968260782 477347622 706228883 290202310 674599331 895547563 910243328 152814157 305630762 295908019 300763990 130877499 593570303 160558587 534839883 795167364 824827661 754996927 911246509 989948987 993314484 237760017 884839049 923245286 983865897 479807640 648887341 449153504 497316577 816338653 843378485 494561897 636239031 760180268 922664248 460408932 585882086 733958532 848334473 593060888 662486821 714915176 815837312 839223912 898117962 803419694 898495932 333674341 417837474 903099251 970219669 998959301 999032779 187123410 739217226 562133100 635985736 872166139 974348570 371979155 547157371 614879952 959241527 261176265 972009372 182382694 911681758 362169585 984619383 939474468 978150255 720310861 779150535 508038315 849807498 711909315 755514125 150787817 448675733 846523019 926779381 580226424 662305387 641097784 656865200 802364875 826427538 186390282 656149819 129218955 576611806 290942356 917373780 135839666 905883024 136682983 337487703 113047071 423939438 770437706 966589985 226712984 664393771 798901017 952245048 419942008 754695136 949772893 984996563 222031453 921624499 716906954 724382221 670281058 989604182 157582987 657333991 748660064 846180930 662388095 811493692 86305383 340936963 326359490 600872911 399558436 604984246 106908778 627691975 548186767 775397176 637209476 717282581 27095242 119547605 796575590 817266933 884150328 962092363 253886090 472516363 125508236 179717869 313711578 362178770 417332586 721326692 42894804 534286882 706116174 826238076 867332821 985003546 300763383 781652514 42031986 141799667 996776043 996836850 235184208 884796824 788877460 816322766 5703153 650957025 639961189 819977128 130704220 915698400 565062545 634844711 887359431 969415643 667989756 725276353 346156216 740973208 16751354 878351222 925646240 984395862 775552436 970587038 501120574 857668323 772931573 780550340 149294375 810502185 462698781 905417760 962781056 976559747 647874689 648641114 870975494 884631363 13575987 340484011 429001808 534183827 666961709 709180123 67547672 811005547 129517141 306706677 504281705 588190378 598679140 949690649 592516109 855515452 277799881 326848403 492563381 677311572 515411350 997816237 574580052 733213876 525008945 737882780 966027896 991636972 801942189 866284222 623540957 901147313 640319835 650731001 98515576 901534320 396709320 634882158 350979128 627463210 793580605 914980100 720798641 730139523 251750095 661602717 854420365 866269684 324300826 545147512 322592576 809828812 948190731 957142730 762232424 985539686 395338654 572943258 163473728 989529115 896669095 931457429 569130890 598161558 899514302 983044752 939238085 967598431 700977285 947610993 768022692 884731990 415472435 646294687 33287551 916244064 504132775 890502389 857777690 880192529 835561527 979690695 564096834 725516854 128877058 173748748 777291827 901151218 388965700 574313845 830638067 970709262 100110555 162417294 591729171 814717007 939723318 993675209 857720998 964760162 50657066 295422594 684401791 935724472 740163034 944777177 906948239 922149840 201712177 619332615 251869507 589868780 399532402 783119034 616622237 998293729 965080829 979333828 603624815 936872664 598491808 906853524 331858569 593357261 846558983 992718351 59721547 124563375 379712879 635184585 998042984 998894254 117300488 807860701 308519198 738779018 594938721 665156935 96982255 815779244 314864059 370200668 457297208 950920180 188026817 339971084 381554195 388532432 833299197 930241453 1527965 708879214 180469027 820290074 432034436 833539316 388655738 845810922 702969552 868355353 873423452 877414223 779986512 919775699 905323954 917310808 958920402 968058249 465689849 515700506 621224483 629053295 44169132 492590782 189408515 257663668 902078405 934595717 390734976 630107756 566591626 989130590 314175445 408353996 708267105 750581150 2351529 3283724 553142290 645269365 883558844 918805596 596989234 606087531 810947323 860674399 968834519 988549641 9704803 660253575 874932061 959306437 788930147 917521652 387667843 897476662 68855069 438290356 484170881 650119030 613331518 621729127 197888229 586387129 237060580 774753600 30281114 181487802 629508502 733404002 917879603 945013170 977540059 992037134 764260593 850176943 319883920 765002698 16340997 868664039 251789465 559122593 759981980 804743348 729688601 742646572 710066967 924726418 36355105 53731165 694601863 788161132 446141976 476094703 100173876 718113696 356938289 360269996 516809734 692333400 437163350 486205130 431217577 868652242 80556407 712349602 689293486 954634710 135401890 565694538 583739060 719701811 490048363 737123033 29915790 172101068 572792173 792089163 72789291 513127835 673259281 944858163 248380002 809272496 667979394 817590477 4315275 281751801 462960476 585167873 587999472 810238939 574283613 665942455 281004581 330377295 94999459 855205972 817707796 932630533 589627395 864541554 152585180 742932337 819813280 844930512 96349543 150581109 632297553 809672533 763681241 778358043 944267809 980357464 273521393 404919611 663704469 754067585 46038222 921582428 298138527 838496031 95585898 900147215 559808986 617325636 865443614 902636565 470699749 554344007 510603170 614400654 697161669 990964372 503603533 790398478 513380210 734285582 802204668 885545360 259182607 826468601 644538770 836042521 867091473 870082165 229820849 279320684 849592855 949600593 5150749 570377864 320105920 691280972 44521983 491894326 262142662 531249338 75981958 120365273 539655949 921247594 567854577 736136714 285623308 555612270 360817020 591322856 484042820 922421470 405332343 935679023 354153158 991323506 534385541 854801236 75249165 732846649 194146542 727038329 594780216 602192762 287983908 914164804 319374819 511214886 239555146 301136770 596865259 709966374 693494414 720984326 220083514 241661328 483552504 528164265 869304192 951807560 83883181 89659768 156784950 662352215 775232104 952269194 726271404 792655308 752766488 986811787 317060172 349044148 261410778 881784742 850292958 917343764 640283077 753698311 746068338 829423141 619868400 632798673 141947247 388301696 972058376 975580016 174689099 250631952 33029243 638352850 468468011 617432402 499891290 971343496 746381659 943064521 73620848 340364235 276732717 729515833 144676895 946795081 227288566 932749456 950235878 980751703 447884352 714890861 941769072 960082098 641694938 946709018 605161904 815349435 850803533 856283961 589855166 636674638 862868219 923999838 743254726 886785317 224056890 352714921 530102041 952406025 689673873 763235873 608351796 864553507 704263829 836719533 289233723 500752190 134966117 645649705 993952116 997286278 877198526 944397009 945201537 998180594 249895929 643284561 982080528 988228569 64779024 535422081 925650581 951613975 426685986 688859395 265567447 415190217 574175317 810844870 425894476 954111409 816411789 912157919 897553869 911139118 777816857 817387633 798503467 803228324 995312446 998577565 361701973 700845657 287651541 922080814 50985724 843869749 58935631 71448577 60028874 385947899 625377778 780746722 42038135 435536856 252838649 936737172 390139765 563523228 248384204 975642767 759945734 859724424 468458198 557519047 218217797 451153840 531197771 695573164 311209864 731589300 616008868 935138464 368129495 543122134 274076143 311452958 965044158 996109115 543337081 857511865 451593076 834455393 884336397 929451194 594013443 984620263 723786057 767864398 21985817 948692388 489950879 984896429 815585232 946868211 112952938 381788626 836188541 838914504 201815039 568178985 187242235 938975505 609701521 827482215 791773214 961182824 124719669 787535680 275898994 543822968 722294262 983516676 933476636 976211472 421105632 959740254 373096389 837673514 706033443 878707147 577742248 914016181 359981124 936252396 938951683 993659028 430415878 457400858 654737441 879932687 874544657 906472044 653795837 663228006 735861329 810954920 207485696 249688801 81371887 977706978 215218940 848324993 631564144 995794308 737091532 883335482 79983341 692408669 651557719 926693085 461014957 989798453 840114646 896742734 129215349 246007165 124012342 132853031 583455029 840263073 568962859 590057829 278624537 729571057 321873379 526110297 284209152 871329222 976871768 996174014 78709361 698624142 715991240 920347331 651966676 824493359 953411545 989222531 761192554 879721749 697511005 905465644 684304909 805033043 677690766 821946237 971666488 994309596 434464875 529147563 362849911 950778570 92823810 372276928 633102588 781172979 682478338 766435167 65809024 373792886 626550498 679334885 302961980 921207171 205008186 931917751 14249546 860437592 461605724 697169637 376134583 891294212 990400172 997973187 481992502 668843102 24958613 698368630 211687268 317996416 291938554 836984503 104514975 257230692 996874797 999282434 707024823 846706509 836297647 865474491 804059178 949304573 480254349 594579711 310868349 657377779 53440766 475500549 696151145 787740038 469308233 782015301 236363442 696549844 157913144 236179694 67417729 849201706 137541231 491751363 696844664 753316826 832061326 972287324 932247748 954155296 764429005 889506055 715031089 909162937 531550022 690050217 520228614 759172428 940399105 958079429 946739029 976843294 751719004 757457035 15602644 34622908 308231074 749436365 684364973 687519862 731126420 757741792 67462833 762212105 143915207 910082378 466450760 927658748 193704883 319050535 769862707 850481500 325464576 952110361 769701940 861988306 407288963 972874393 644586119 812277190 464865537 759910135 761660197 836918055 844997964 932087830 422004564 983660373 903204587 953735815 439788697 883991851 139019372 812490096 320876509 885811075 495748305 967121740 611308550 725388701 526525376 984240065 493219074 535216950 316227356 718964206 661319780 885698857 929415933 933758073 353643181 502383628 23795199 237819721 712063448 825996373 401375301 563914883 723321063 838639464 981180347 998404551 115958547 257611126 136790787 655960991 963396405 982286866 595300132 839332103 636550083 899332515 261915232 277151263 363869267 489082585 185198269 278314764 651463956 669945929 674041331 894541243 651650049 738430269 787117764 879316542 982038480 984762856 839148063 941290767 779547899 853939406 797516610 904933221 911318395 946555311 901460542 983795638 540302431 692170994 754524949 848196958 123148399 170665792 421066842 458977710 79993778 255385842 982156837 997805764 561997969 875750449 873374369 992873087 711063143 835560263 165318084 312357315 19049924 765842035 581335854 626299102 707604592 757105152 837243382 994544744 264602143 316541289 261540388 923870343 138090838 487480205 182832437 605115500 177185998 615998154 455819463 808051493 972288312 981533724 676558071 690173685 717582484 862762858 79857736 294131328 175262691 194315324 49352682 474208238 22698840 807764313 141627375 900841254 783024859 884370543 683599438 860468267 288722397 908268387 358989494 823932771 425750958 965645321 882950632 940005451 740910256 773993846 77190929 279539314 937384908 961422381 356549122 422354987 316776861 926852052 589932991 802188661 241481092 697677708 525778719 614050636 402568965 586212900 716953377 855714535 80607294 659082735 548053143 685232522 361794911 579702694 11018754 616561625 565985145 614670812 323757962 983349779 474193361 805297131 511544736 601111183 164142582 758607776 788629390 972670665 369525079 701036087 491749665 639664452 310729495 905595554 212552595 945297987 440907521 830394891 106582264 646571525 935136453 961329927 911596955 935606049 454578354 664158327 887373726 895882106 638575013 716688868 677828561 758555253 82700010 607193076 650903650 748852340 139331045 258882343 161323841 665317083 840355268 937542435 612103450 731711665 76253635 95290128 742889455 761190996 151558711 330366184 789427565 852221848 114767242 632484836 508609476 829670912 263753497 749834162 565222954 955203545 284895663 378061485 225746910 460063352 839144709 937050759 865761183 959715814 693661152 905174216 931941733 974815820 277463559 517810108 52756058 854273308 842967120 936450401 812393880 955429928 542337960 613870778 659883413 788049628 769142274 918410140 689346731 998770621 214491909 591669932 131719107 599037960 102335531 602797489 746100353 956864658 459495868 981203217 808183493 913715786 418082966 596223557 98384495 146568064 317160862 335929375 140202538 578583297 420664667 878733669 297715168 439226443 315075583 672809880 466056621 636706514 181801318 183642945 352335173 775387210 772324904 896477825 948857393 998863722 966722664 977233874 543587014 933890999 969883327 992063874 440781778 787730922 349761443 740529307 184477321 210681830 170033483 441069984 956688875 962463343 514974683 641662282 678647035 871519859 451514964 704317536 767775199 958342919 622621496 676021372 996114116 996380400 183319748 570300612 260893281 676292495 609955758 741533192 328400966 620221150 799068277 943447561 118292245 160578215 829671067 977432925 223524323 937847591 877420784 912911664 247557249 784095708 78974184 998449167 87441922 166031493 943385937 956514544 717218988 862382292 296350380 956561988 411313940 801891794 687991126 723539472 792837077 862368130 436030219 873308824 884298386 918522683 439375224 515137954 619842244 630532470 695214317 784444406 475870738 945804123 24874406 749997223 58350389 119952902 923656258 946390651 252310415 992616511 210427768 269347918 2943795 270462680 325991427 447488225 998660855 999203640 527523973 987051296 567407526 691183526 38621475 310061055 94322894 717749503 846683057 847956981 163675555 677361502 88886938 142831967 478910920 515185328 734638498 756178233 641381446 993025711 963297296 999070241 446324795 801812630 256665219 885622179 600129144 694057767 274214390 458800946 636442818 768914048 220859098 889813303 752113323 962992138 420626563 544503803 930756219 950571478 493180918 707658119 319707188 753214971 288765599 397404827 449397006 526102164 534587650 561158730 821665054 949020300 619564430 672265533 774990241 889655349 342697692 471265201 671537165 961815275 815575023 833922999 225926296 749325120 976327065 980673071 859696760 995690020 460659991 912584926 528257204 812704696 851574001 991743288 945383542 964083539 490464718 598452192 820384250 920652897 343562896 737166497 341524181 750188264 557205624 930420984 549087181 978982085 733861526 998898395 320483487 573708630 794326665 899319529 165591732 475491369 218874511 785649581 472432416 585523689 627783322 641256450 538353335 720982421 679461296 871495727 796758899 810586158 967556871 996080190 663611658 795278838 300308030 956314393 956614538 969269778 856371245 867459960 871766850 904502004 697657135 779410721 97371338 935705466 617202999 765489611 111442 280832066 429006288 607844542 332368131 574461729 377922084 601846607 116008807 152386529 422289871 507686429 846339037 902489760 372759779 793362805 643869956 967862278 230107658 244097204 174923438 733070955 293592447 612249702 257802645 665204295 565973509 945970730 451388394 470016606 575200861 745639885 452823414 944085696 56191050 774615304 31489065 119387291 521714913 526151052 186929800 781020604 39308111 907645884 324940847 596832398 573208752 685343363 835762298 851032992 749326424 946715399 275138186 315072512 364049558 384776556 948619447 992988202 98434246 696735472 865202684 994544600 36509540 205454397 23289844 842477683 467084177 905489371 790902846 860644575 404388804 684898749 868492854 957621130 318890255 463167529 828789238 950652573 942124975 976364638 810831595 875623482 298880981 417958011 412542200 710686409 536524065 894424966 235491509 586378611 676250710 930094988 491269045 912166774 848931665 975754918 451159990 529915735 950775357 991833048 509670910 577822130 549851154 625342594 296967577 481280138 522428951 895748498 700610998 745234240 505558554 613737499 730948565 900326315 136708451 324899965 71774898 953380088 907106585 982786186 579263710 719903950 213892555 641130111 543964479 554515267 147112400 802829328 358555106 748235318 510959618 979322886 195369429 959107112 238813211 554327277 19996042 91745188 815197648 815756560 522656631 719382656 488346754 557517935 774964063 870322782 172422525 931391750 487916287 779103642 80915827 237351488 741871974 945205245 766080370 772516196 575446004 978401853 996396246 996425189 179633046 448593861 416599308 532735571 121405087 830638529 381204942 646598741 953709749 985777369 370590899 460983745 257801185 959857912 523580070 817693150 534407758 614152987 980330064 986724094 228374754 699539958 91124240 730065933 363636783 433243450 621655352 671519044 443383316 717874321 140474451 664558407 140654792 727071108 36586231 838294739 611118144 884162362 526458240 688644179 144871458 807597737 691772460 916058418 319835498 635380119 78272505 273736370 196801865 599709354 815527048 816976333 596150612 906512803 760048717 828856919 479075562 899247066 729021686 873444012 444821762 724717892 427199961 564343321 492362895 561334985 288499017 732770115 848934225 892773895 142602191 898251935 628136048 778727035 414617777 675941712 390376490 975631546 646642576 684434585 604006539 841800909 914900735 958290091 973613324 997963393 683469181 877706351 345409711 881815255 883935326 920071747 214012137 766802073 492197887 987174913 694940164 914339328 111707034 391480486 930038311 933790752 97232385 248904889 557118368 907563312 373272275 557657343 191043333 372960559 462905859 739073268 38404061 65666500 363110357 916485967 413005551 797628156 781818654 921923048 309077911 568348654 293853651 311117373 657949183 770223344 405104198 767581998 187208010 718714170 731521807 901945823 281492494 464311732 533335232 829513063 582199837 944250911 700764321 729569717 143571144 341973441 926100397 929109929 449600291 534455269 561157835 716553651 792641423 921237643 265603239 473012122 510740384 770692802 965954671 989826241 873810625 955272023 767251495 854444529 745120191 773729663 91915082 754563767 121297266 438573418 856400599 908779519 470814618 885702398 782340447 951634592 701931615 982418309 795350241 962442314 72552669 623929724 230550697 580363371 810432077 891865911 24044581 682044441 542732025 562240390 107196832 856370753 123432475 506594520 332050848 871226148 384531084 704767475 738823248 868184144 879488442 961835911 473466313 980043783 170693258 852769387 875670995 913292496 703088038 900394294 205929342 461502182 126808703 446968404 91749126 295680180 937596386 942014227 43527234 809104470 405065523 455065888 354119301 630884415 676590486 821453126 29784905 506840479 673592005 870551762 745918914 839521854 770360484 862344741 84989220 356216051 44606106 798647471 375371269 596647747 66359292 289223902 204267243 630253311 844377910 915671104 634785254 819595015 625165521 847715428 782578 205558947 716423748 760714882 147972052 910785187 357428689 518057398 70244937 715088310 143185375 729790132 405919339 639797659 704766298 724656463 909867628 972016713 499328259 663721037 601336380 679746628 771282918 906824047 106388616 313176029 294619192 976376295 541913277 840092794 304441680 565712915 819143193 978044224 859136516 932534317 433950846 589858110 700335245 929821954 551410112 566932130 708547060 758706660 344229582 477238892 821710060 827659608 464591015 603665292 912535993 936094078 878206805 906545105 603912265 772101629 897163786 987632114 474414676 766468082 227986925 648426106 197962694 769473294 6394640 238369486 504586302 826841074 230968904 725347608 815088114 930049807 619220359 956613445 77196339 365348182 358960322 676443161 393631431 441846895 262748794 833460646 239053644 267864220 58915888 117564475 331791450 905193938 545445499 728791834 415032373 653481639 528888014 664296644 889503299 956413661 354871471 620082254 179517010 429153674 671559 657628876 44043350 983549422 193258881 425184713 414411962 858361155 947651201 959881829 142325480 433772419 96322759 730186270 939277784 941965879 756885842 977028338 288407994 662428068 839067530 978055789 510212614 631897701 89217901 263466924 677383620 963537571 55921901 290961907 862979892 993859805 159621763 608895159 193789600 342461635 33254266 962790877 164688455 626873685 479102893 778600071 717192700 755555452 991313843 995436300 655442106 816591580 473365204 708598961 429066437 790019903 966097515 979656530 250987535 477444711 166654972 491901346 700732165 877811232 732591614 778570026 860568402 984081569 293941537 826235412 953005290 994625863 373988022 411968366 297481319 428143990 467849505 704888020 379633430 554731629 798708435 963874703 866193299 898443631 78188357 108740235 610663783 909255478 401506488 460670558 15915214 753935703 855806027 889406455 955973705 958908690 464367119 669424831 30201351 920852729 501453923 780697359 717070224 868024455 400198705 575587650 552413883 555436541 159110046 521373578 197479076 796103396 852458880 934154192 315190706 429342604 167454758 345827632 953570252 986654920 421500639 504150926 794884195 898203568 455625914 720613973 710840255 736265004 76231039 626468657 943420991 949076161 62902749 822473750 975079299 985479969 41246628 456038594 816223594 970069155 22982972 33843993 145147946 795512759 413253274 941732794 382344084 562650950 586062693 678000042 361725404 638250957 673747113 680402463 480125195 530204256 956174156 984571147 599100890 767741739 582594207 732247969 845079810 945020294 737714797 921794976 232541613 405068849 405020446 792521634 102076085 890428059 277794610 885505910 500062059 707961674 925370072 958239673 517281386 554404317 246312875 351556219 458102663 804107675 344367665 380339669 219174144 438520990 96765500 695071106 390489094 605405404 623208588 871346914 381549302 387767240 331669401 418770553 719716626 867714530 6396093 222860710 714256368 914153287 647201042 718132580 237087609 972806698 282157050 953682710 83333847 147879217 178670575 390547793 765037720 777879097 316330917 349778780 900471746 934906072 812942945 827288488 409254293 523919178 678851318 966271683 66225667 145047252 932200549 992452899 977844280 998269328 714492924 920502264 434790904 834296134 431206378 434344453 792919861 877235220 602895826 664426537 648450787 962658473 548303757 887782051 293836407 607789163 133920166 928096684 290090553 299986549 289883695 697463811 292682788 814427148 667944853 781164874 420665846 527433277 999293123 999305626 220652914 268201868 198787936 207803610 692604541 831444889 60719678 334580746 65178724 744835641 841365946 920087246 706969143 739513680 966393380 993466846 313871289 572420014 492458763 519875835 430729920 575250743 253639905 554324864 822528030 861572427 132217469 727499883 307216349 400227936 296078024 395599528 556116535 892992319 3789823 979978230 149662761 638904909 561404012 957312879 803490701 985767342 973768487 997870332 455158935 700173119 990698320 996264007 913052774 994646569 672512957 777067850 429310993 834513627 493462007 915645422 375454897 969289488 690160800 877507389 552394543 880050016 408304128 954051961 729293387 979553635 526249809 671808699 634920618 988243940 495516475 940030766 567344176 911274076 191983696 383671371 842069959 873640334 799630453 906624249 721305346 745709133 20166118 71539513 957295940 972640085 785301077 934708290 58909715 202567984 524547258 869317228 629291963 830040837 116846101 833163319 309616870 669075714 126796959 909591557 956531968 967408466 506883282 865539291 42326993 139603386 632314270 908359361 643815210 903213421 301970318 881187127 372463444 850981951 401996822 700792832 936123997 994607326 261989028 982823625 625656534 652078275 897424735 934174070 581564875 927962426 284657275 543828140 597953601 812659655 77714277 894395804 183204514 325908394 207035799 605001187 588734792 900356297 601315106 839375426 457730315 887169386 461905015 483749162 439126895 550501375 305480983 728996457 603766745 859365471 403369524 912658368 102030496 596569435 22986933 760266614 45281329 496218982 318444659 946516525 570453205 857960261 89289175 895220067 246846300 269677462 666309188 885909464 972224686 984815531 166504586 463749817 605351412 701971580 651062130 723764545 984309054 986461873 310107379 480618569 308350019 789181333 521053445 767886052 278671839 940457181 587389249 791754962 760463159 933694276 939136223 994132536 151260546 918733985 288241646 923244423 972460103 976300772 597909563 854422296 793806007 917038961 811339069 967632776 396221436 730923614 73653231 931639127 911511367 974202190 518332512 542094558 946442609 967942721 403554268 906770470 890256438 948004880 454621445 490164877 629773312 893424359 402207924 913861991 672395617 685802421 588029420 793686064 897083071 953507522 535844187 667793871 973684147 985585909 315467301 586898810 318625927 880467564 919997901 949533176 623567912 935791489 997361544 998889610 31391368 563716498 150342922 599345040 554829672 946327542 73759973 560953248 11435163 737489864 354264585 499412047 492210244 994120140 942867117 953517423 93728810 623069865 954163763 983098951 585732178 714633202 716910519 819458342 782107052 788806905 974304264 987295277 549293167 631137574 952740717 953340356 793599 39787191 442774616 644265779 752751422 790814495 382821609 692805456 204718749 375920057 234605822 309627147 613088316 617850076 317394174 827629195 812229167 991672148 888829343 921383687 656749728 773287049 193025634 523238839 660464796 872909964 658996259 989215242 118898175 922348242 795234932 955239756 41373394 201754170 960323490 995851318 339358111 935385831 654966176 879078961 995274861 999156253 203551587 488355253 572627221 951238973 627018717 886045562 695010360 746944473 300316444 910109225 323035948 857015338 160528376 680651180 977502946 999039582 877921918 938351348 30536498 738942516 561569147 775091558 446302966 544135378 145784984 827266518 944588107 961101734 547513752 599014113 210113985 882439026 217163950 781159909 275576747 553124375 357802744 378245829 50652396 325223847 854337842 918012507 628788574 655408627 587823600 646038371 702893068 749723290 4553653 460814956 622794354 881478605 392190202 812758774 509219371 820616584 500315663 526182346 9672001 45255186 623521761 710625854 323838335 717450960 714065126 714310667 652294719 956382765 437110710 894488683 801268595 861130983 629596921 998038122 477378786 767966264 840511211 961962421 942113306 984017153 314337738 739436643 801317772 861662421 448642271 784835347 30231199 553261558 125381794 170065726 566086061 827787160 967778183 967795162 881758209 979755453 598386287 899224164 328411206 919202644 860564291 933391772 638498614 727162219 575828281 885877441 629808139 658571483 23109514 323707099 197692097 268470187 630370760 911240670 718650454 720860515 403431369 735247592 720561269 978150493 80394327 240496184 320704075 598459778 600463669 717330798 174132844 627511551 358501162 830624250 418029272 721947599 530607336 701587460 135971394 728322555 663564128 668712572 456669534 470209773 837571604 965237377 985638039 989049789 375690209 400231647 399640385 986191551 533362227 657053437 263752415 380971571 683187242 718218403 194993883 785206511 792281293 843918881 987147816 998039009 154532826 745717983 22279148 153306264 149813596 806989880 319954517 587201326 566174252 855540127 102818594 538927926 391345362 956574857 237964288 856897510 662188681 675154737 875828746 938733354 161427310 575688262 364462722 722271552 110226200 338468214 417871698 513101208 692503258 916449998 718932910 782008904 93511760 771905641 359555738 832020479 188244720 807423164 817869226 928119062 797247970 984171496 107338843 761272328 259929549 674304732 840128841 887838061 177686992 707811908 349832323 693625476 737353628 888843918 736400703 765419174 277626163 971735022 260321473 457279187 151486933 671092028 361310749 834984199 803561332 928935618 264890255 917828698 918109869 981139440 908600773 917873265 217922697 648582886 774086956 876837810 99497539 489573324 984269692 991675702 811423203 976921905 786489936 957698515 259625527 820181827 843688474 864776376 634473370 679169482 429073232 804158372 984150012 995543984 111105733 600669465 644488655 935093987 186333299 810008702 285401210 339496848 555630266 646441109 203968643 888589758 642892777 659556616 547195490 720707403 922150773 949314545 69109276 179222282 978000478 983144626 894878076 986980108 210015998 703798007 785766101 803058977 564736891 719178230 573324653 632042302 811296196 986503009 642507302 850134614 177769901 487916620 596211602 985113527 500539150 740341850 705142606 856696370 210545568 427064587 566588737 702786688 854519592 931319812 859476398 920012908 832504705 848316132 907564663 919915107 683892245 845943939 38920332 779547377 595364123 868206499 930599026 989180843 350031889 915694203 309373220 493281723 826244836 907476659 475448534 702362967 780494482 954478444 334594892 465210689 692854112 972979630 375728941 806498090 648333929 779509107 96506422 261878681 71331412 623219260 198573370 272162829 457846168 589541077 991130564 995541142 859625987 970306203 2573921 321632763 315487065 990788819 814356724 895439926 355696098 360570891 958139970 979638843 796154467 979571985 154442118 194185424 217279809 494490147 840248653 995296383 745511636 980187928 939694562 944432697 385251477 600797812 231754248 343914488 685797099 814849897 502714241 574617625 622050623 828077776 899596179 934741523 145798073 213378368 742302304 910510600 432444995 694162944 636613116 784489923 97854056 164067065 806105722 881180823 357382507 962203812 344294225 983745840 230466540 842207656 691386815 721255126 928302008 934409389 669478333 670498709 160192095 638578455 165159666 189651920 17349050 86546567 368526481 762052542 1424680 553213585 461717409 946282531 599952947 863374654 315388373 637488467 6010582 50407651 357185127 941956846 809358582 928904301 799685595 897996734 856391206 975911203 853505859 972623785 703260408 756174678 718364543 943159560 721428102 739641128 507938661 707655530 255781674 731841185 886868931 987072450 422828824 982360088 714309364 934294776 298354530 578301561 166505786 580162900 539897685 589593033 850367100 962909612 593589693 885086350 365859417 987338910 457835311 984411156 270579497 739951989 795983852 910999339 447215660 483500640 723680514 772259289 297387594 498605648 487431527 511425928 160137462 200432915 663462770 723002493 707033928 765742226 100834358 402333409 649685914 792920375 103885799 292280105 692707130 723235642 386937412 728885293 573709699 942378981 888768979 922989087 878071025 898987726 548082482 672358419 474707847 946789505 31137899 251612660 426694431 974746779 300699045 703715010 312005755 570173512 228740896 558759120 282077095 695988952 916226888 939591938 326627256 878280167 284661089 616644394 672904903 896450268 828395216 968526818 642939649 857847986 183129288 465908953 951570227 990369506 619451573 864140707 369729254 545266979 838592364 968407279 747562028 946367402 521293319 568470006 265571217 816997128 720785075 947403478 254157668 556450338 830680831 882101918 326045722 375100933 112046823 973640210 854608094 979271009 741121166 914463232 44859360 548058169 923434128 946654924 510226569 564322929 359161703 488050870 823472025 947889112 907162123 964141603 158768018 338328955 584589029 803416415 222034170 337293463 217365943 720852513 786008320 824989262 805665024 918205099 8730297 912669512 825570424 903970747 316061365 780313956 718828276 959531276 745910702 896442359 300868705 995114249 366203008 971368321 453383227 969401717 623487457 863851521 903687630 940222274 384493370 624007922 918751038 919739378 190434618 749566881 451397565 715381839 357081170 392491421 997287323 997321332 839690836 956804884 298392371 459658862 381031566 470371710 283088866 327982278 767293455 972395029 628822225 862584455 550905427 883674447 597628686 753932394 714681881 819142627 344683261 466721491 534611571 615775170 551897314 610903932 969417926 982614410 588790383 820171155 587861315 935034276 101763286 989972925 518041761 631949593 746672702 852067572 201027026 411056005 664290015 680411760 316183610 961514859 522710217 660013779 42929248 495499158 974222123 984299165 522313766 840162769 32254947 690038952 629268979 831349239 369084665 998639066 312489883 990998160 253515940 872796263 491809798 923692267 742777682 799210152 417963357 562761932 703010005 866697177 83665534 786509925 273202381 827405651 288585132 482877164 513158787 844673001 877618455 945463182 117445686 448816631 875275964 963313527 478013715 775780054 153119854 581513485 812197436 973208617 682457839 943768399 193660121 797425982 528664464 699959723 181822714 583553517 110806043 746164226 983620873 987909143 55753873 297714595 312556175 790193317 489049887 840049231 239024299 294907038 273054798 291342134 214896401 868132183 672366064 860439205 911517032 974750662 508014292 850831800 131860940 193060905 874321763 908025269 208250408 658869756 488654843 875160867 347493673 965029497 59487933 378895361 82011175 597780067 528581665 545332295 184871428 263113507 679821154 770582110 17242542 314196211 541908 81078789 83779474 441001249 75912410 855236003 225044554 448371502 700740240 890252675 582044357 652774101 88609767 202429366 91362117 97650624 421551795 964570419 370181385 453500560 385976920 680108747 668277916 724951938 688005114 988745560 855600363 975266104 926465572 948235497 344315112 446542781 966304723 991759000 496051361 718029248 576307679 886473907 377485302 880658064 823017825 870567236 388396282 853879154 532894060 758682364 834938707 983642603 141765480 981151213 323547433 923917419 111274034 807868599 169452625 612382797 600230753 965115641 225680049 899294406 924296991 951530016 884840479 894016850 414597286 877821231 47749511 613335136 928869889 939158666 97923912 520220187 839496853 935076955 175109046 848888910 613630425 825221032 259924427 645752941 655984744 761429229 299174111 872280689 433840419 662965897 595557314 949689773 320400290 764265224 105326676 210556834 700976709 827266295 488548743 789816793 120991720 691381097 60962575 310084476 978269094 995031055 664349290 783289163 720734869 804831214 445124527 486801715 784527888 898961381 15611628 81408804 839966807 891595637 575326809 835632283 668000615 806109445 267794530 349538515 503603678 743098723 267022766 710070081 575065871 872208108 507981759 745694918 187433134 981471559 637028831 846503340 257570357 821458637 900100167 944521293 319466564 890125185 271055482 328415956 453722123 908612156 920244950 975053094 940157674 965494669 787319693 940350798 31996644 175152576 150461358 233609276 577055441 794088572 712799123 844662685 418449662 570569684 87093256 190589404 163549308 303627119 531964705 668638264 27064844 341335805 996878221 998497282 857449123 901610733 998568753 998917214 204459890 669707451 650995604 720791959 173825292 774004645 676601154 802795054 155657947 428762055 685725184 914779237 561039858 921038725 744068565 862500947 280494500 535707702 929372149 951919622 854099205 862252052 446994763 706883782 813449294 987976174 293705789 991037792 337043732 423407658 390755226 829644935 895286741 943142612 391362836 735200571 750407476 763118607 61214308 785746612 873006656 987752021 12611999 753713996 694507491 914890960 202867447 217208070 282362649 745161305 82283587 686790145 200681065 497599385 516874709 551745085 496246851 678025932 391175620 911940301 580365714 747809543 55674357 276103735 376269075 488194301 963625499 983467258 233409947 503393821 866609991 885581723 651616732 750405574 611236948 633221792 775634244 901992239 709941867 755115652 55422095 419503427 587300984 664701230 145214341 930018868 676229398 699197386 955042118 983061363 227061681 329646606 903194109 904495383 169744249 551331770 957402234 976878934 996093379 997209937 413952760 685258251 888342452 976924152 954815446 995681177 448622503 558949026 722831420 901425743 859214945 896275054 921183416 989336483 564593915 645161767 389664662 894854539 401470391 579858880 338099177 874058441 851188726 895439104 430114575 773731304 79004192 700284187 560880166 588642057 560822242 895729699 851874282 873220911 149943445 389613733 584404503 588967879 93740282 952558083 4900858 294576948 692306671 867050169 354133801 442554500 454825126 878099139 634970230 995689054 554695744 968844779 222586448 978465274 345188113 852474023 496610790 683013771 439440153 690932762 881231868 954343350 504675366 682535691 109218003 517672709 494261309 818611862 527652406 744272057 693644872 909723823 133516727 486298691 415741049 987083536 724846675 983055998 412647427 461954772 633925020 720379373 274689285 330826484 474093185 903358658 242508173 770135697 542191893 969243371 41885582 135231380 631790057 822001216 27934973 726621892 68459116 803087604 116025458 924913258 818363367 924963554 882840324 945466940 547210627 769338729 802589448 846908797 387574028 993560014 280168860 450430541 190908263 778997126 829513478 908637236 15762262 484486037 251753183 761501128 622321434 932640641 90334393 578278754 920078268 984386871 629143581 777022287 268804391 867139656 415072888 844618839 453876276 962587821 873794916 949785665 633737517 792600829 496855698 715567248 140294930 574294751 37363732 776363802 371882532 731430528 881837983 959847216 837060957 942150279 579818460 711671701 577358093 740288832 723033528 932289643 748840453 893143416 627071323 675469073 476024615 930233759 585510924 842343932 801905010 992306022 162894234 916611843 778663049 944674355 737953866 836730573 17268990 361123587 397608199 587515572 543907438 692193731 928614856 953315790 774940418 823131088 160624501 663097792 134052874 872383310 441338517 865006000 154340536 259190907 181776518 804003669 181170023 293417494 986426912 996205198 856400100 991203211 888385445 974665775 891367122 938301993 777577453 852432574 310785185 426192347 407345225 709171950 534907914 952437724 347308807 797147183 516021911 879986705 65635235 443289542 121997 919471894 309740895 405409637 325632132 590973224 165688492 508671459 634730113 673617197 349642420 998066186 531346059 983258250 360813816 899662925 657083693 957327100 96103047 404306303 969129806 987690953 133773760 165012215 339621731 657123515 577251915 595450868 471049542 929842089 200873462 330896280 220324155 255396878 71504630 414226067 137924282 764895921 958312070 995801129 710602569 857480844 56230997 638970542 585913910 844934686 793178901 908806694 398871959 845616797 247049559 260002576 273922418 660301650 779561056 914578235 889650514 930190769 70205012 255151295 906809143 986184731 8788551 371657562 39407322 324946707 234564785 316259876 699265490 876145884 489546392 643983790 964257582 985131068 332748915 384322704 113335671 715298680 51957072 962810410 120292790 442351562 377899313 617689461 839011339 898451643 264617223 504150028 904929805 969037956 879679752 882913801 42945026 674132893 614421057 899009772 98820305 121920747 949277067 996068815 760468749 979294952 610683212 787760956 168313166 907968315 57164955 512936833 177702220 782904829 450729679 554538953 435550492 885660645 422045099 826867268 62905170 295979982 381173779 645818214 412649585 732590068 245084964 693539699 443844196 866558024 178123327 259848365 18314433 440067208 53974106 777809798 120553124 868222924 119607340 520939916 452852942 852482107 837732863 900379994 897823320 967792544 957436152 989814877 664245704 681826630 49029818 541669911 766149753 996898346 564578322 587114134 65369937 974584239 427083186 898744017 163239102 592657629 909462115 961589925 420669434 431117166 89166663 837572570 353936559 966258236 867533600 944330990 613893661 913126556 402821288 673232322 296278154 576409805 149742567 579018184 311517128 458385416 85609247 211006769 212451183 680683124 602780037 934441095 289763339 596907115 929258337 956114341 308557928 801052100 186257939 697231922 964055047 976675688 321884510 905889862 16680147 789375621 429214515 505685597 319941265 368855307 53211425 643554960 869745731 969300565 560338173 924728314 635548046 881765093 177568102 265335611 673786513 791750015 952811686 960245563 815843957 962841014 185448616 847080970 427875764 841298269 160068578 312130233 285457464 981652572 274517466 819517867 77979562 394232701 494021008 975799147 80720367 453156646 562860088 823191826 353062096 736196998 762319085 796640902 152307446 913711239 71673391 460184621 614093272 800747363 55268451 663367038 551351125 821059581 261752393 464256991 647891761 953887642 154695942 548833824 837431869 990940892 907934790 927479946 704609731 714754162 231787812 311277318 991487711 992679294 703645970 930929562 966172971 986106405 683816338 968287625 394717368 618147418 793588593 837606787 20222901 258640647 751122781 822608305 910843738 975061821 541882612 557641025 200411632 855230930 791806675 813748958 746509541 996720685 905042127 925957983 631914881 694048207 105485352 290893570 22153222 136013631 745675818 789252876 670282408 802453398 602252241 753117634 622746277 796617366 548399620 574159165 730306196 738216570 284155927 297143435 181028635 940987042 652587931 918405659 805367433 864089688 15139127 325433792 581506437 683237428 99196611 946927967 513904706 950209793 946975208 967429498 691518774 748560326 960526288 964389883 500750385 580799789 737721170 813951884 801812481 962031096 144284799 328984216 584948320 790219212 419780858 784986854 631571076 786296570 104924891 818180228 305038167 824587229 860329983 926527994 31837988 586384585 540454740 648874444 269206112 961376704 325860422 451879557 485839614 645390589 99928941 640023401 107271477 950656397 374962070 758500798 751398465 878213622 287281931 793473526 736429357 813451924 604058260 825576391 177617706 359844211 960606004 961003790 990801829 993898430 22400322 997018413 803070701 804308759 261356768 275280080 177365200 882657747 405475223 997050065 194992562 273933965 721917984 839095408 166676819 569505132 470602379 842770175 271121811 870621099 539792049 726927606 471609524 716173255 601999814 741105751 994306690 997283388 635293499 769752270 163765498 418288890 67305090 783933549 522708360 739460250 775450324 901213586 937692605 991337712 697936791 818984381 291245186 478328769 743076152 866669833 606915901 716680845 451770665 648452404 717749648 988722987 667432416 714183139 464992787 978486331 797929755 988609775 75497858 545344337 341850960 659470323 109032416 810557970 674502929 748521367 639492337 797525083 620397821 624805392 489700953 533877663 280873417 931890824 685967263 838282866 876245491 896923869 944861699 976176153 629882049 949309423 269533263 914929265 823303766 974304535 210535779 524612646 694147454 868158166 375852871 386483233 224479783 582353650 784691882 843366698 574752314 672739211 109683749 705329198 757879461 949903362 238486463 508051377 325656694 592214606 320590407 387571428 611374455 617192379 184006551 698398322 435801229 605938520 94532339 320341216 49796900 543888983 625656844 771636795 323912681 676083529 74986408 195623429 199467460 480387725 475927572 638779271 25669630 57258711 416960060 590008011 592302945 881100620 796514613 899058389 812042600 816763244 214691574 576575328 706042667 729817146 306574211 869564645 466576159 894410029 801764184 914424231 907075722 988779036 505660911 563806546 515767952 839346615 539497448 924284092 252949662 637409549 499576721 711262213 517529042 978015487 80998015 998407771 631419639 811744761 662614491 888481530 560202576 714087156 87942662 896517122 362944247 425254583 427200973 680676450 926935731 978692492 150456656 794983692 930727085 945665015 387692418 673883373 458235012 540442141 751498004 919029396 953496225 962061192 740022232 891998555 281140450 490237117 923872897 951595483 540996390 626274533 588616813 827432449 459517296 748603278 317885912 340899978 272571209 906698669 75448684 737619208 415130660 522877259 191305679 608349723 635381056 794009997 34513327 974471527 438684497 954730921 264058222 376910549 849974379 907497786 112694540 439934547 44394026 336931330 792895600 803210812 967480386 986874632 45538533 523806050 816190718 869776520 689624953 976764629 147348400 453516553 765193359 867169370 929547072 976744069 875486728 973670116 348619869 407119055 338398746 632456559 986926838 989921913 255400810 919449926 723196174 781755397 716676856 985365095 595645321 719035998 971626894 993767669 917816787 937895253 535157513 950343169 754709724 899010611 257641689 975925938 615728650 958606283 242653556 520087123 771042175 893004765 286250889 870968476 67204581 983741227 552126873 867825520 232142338 463016762 908663732 960181647 990098992 990107223 186079216 589977100 751066859 992541813 184518890 240005097 838557420 847249745 827583683 851380331 111377088 259421403 405750881 668202448 43397823 839779442 384639816 653501511 292147282 684035524 155182299 914448103 875469843 936623732 550360609 719133048 39626973 464585189 920919810 922138581 758961810 900439928 15810337 384031084 297728691 718981366 14828026 569760511 764305793 997041261 613903711 632723282 182800033 777941793 376181092 405067173 762644687 875334975 24831854 318012230 393886275 493964972 427053260 715789262 139586813 715755971 507657472 869676320 141431787 523103110 522639244 824394898 432541498 683890500 368127551 955369515 72274171 462289355 172069891 870349738 915152227 954967412 320999083 582570933 597919678 860209061 20740636 898621495 549000097 992605694 709320603 787326694 673218644 693393122 308771698 572576679 347522516 555096199 64817509 101373531 606681416 798786249 360555960 887079371 453544101 903258022 609266463 719526921 23879801 375116058 446720925 804952037 9121901 804343039 99824994 441825860 140196514 942497238 88211387 820932793 73140329 636516822 129441026 742759607 846772607 967180221 342093653 732926545 85376093 559853452 913016635 992915310 915825691 981791908 916284464 980479989 654251967 817383823 258755379 527811862 305960866 349880990 630039751 657085409 311040890 787678585 114806186 620885190 667555241 679521932 364911329 933304466 493449596 767397636 993983934 994069810 577355839 796009728 423283626 647895851 270325619 365791013 300320183 491580316 794353464 934997319 315306089 837920496 273897086 776094264 672408786 735889968 777064270 989152563 756119414 952901494 566404697 712469076 246672968 293485683 815215803 963461931 178671794 911547147 177482202 207782333 516537975 968297797 689881198 946435273 849667501 974269065 395267546 691495512 60483865 765195971 758228030 797536809 454192601 750666638 334338368 452105185 816210247 894090501 992165986 994931724 678720770 761349161 391021567 709796627 750798993 989424221 363038896 698114385 963960116 992868965 426383650 836825577 137779715 631026251 916889562 988938329 271067242 581429170 291776655 339130921 83365257 404618691 688147483 921024991 158152653 170959140 212590383 273531673 574435473 803936222 436464733 687065338 327916076 609343621 174614395 626729798 610819243 770654812 995242303 999101801 590397761 974719261 817053461 915486286 620114518 913992517 252365229 432212316 755992391 948175978 664864864 723102240 814885006 832735433 72971368 319224810 849478621 945807486 298981860 330090876 684784230 979769760 411264342 720452753 52195370 630119388 454322866 936538029 899007583 992247321 929699558 942660643 748747017 791305171 44463677 645643011 700737394 996187804 235758485 944636731 245153959 335703005 230016586 788408098 165191389 207563095 951691049 974428318 495620247 634686350 906119159 971757757 632909129 931981469 95667328 373314205 319381972 320162310 549359883 682738633 689207598 736751434 732967597 824281555 727311998 867412540 457567923 592838422 179486315 726836846 498212460 518363161 868456597 971988747 814343521 946146050 204179273 514099068 549230405 819969921 669929990 748808028 798854258 837921196 133279826 294505190 388541373 532873827 101388058 903955647 72525850 467429679 140763472 662639855 974363359 980977245 411044361 634763390 618961267 942870682 323622497 789613821 531173429 827885050 141822340 792456977 177741952 601678976 243790328 464731230 753327060 929013630 756054905 872864228 258051809 829815204 643570561 950986936 284660429 424807725 180450580 343690363 978215517 981458082 557165200 844740859 79291668 863873537 904585269 938715677 413019186 734745995 298032852 301654264 103058891 273396467 983957844 992259624 283397420 349400256 283490771 627235208 11561695 129478885 123501506 603054491 832529757 997552132 745773929 792535016 897670642 934318839 649068509 810663324 688553538 861977615 904351063 931499662 555227558 733353089 629091879 957164246 705563891 915024538 267820534 985423392 578840033 677285798 522645709 523830468 6968919 500848691 366698352 742859780 742918487 984839508 570256721 998859672 507849977 584739649 393790022 963278767 538271567 781202175 809953393 964787277 183892667 482100681 48645691 585787659 555390360 710555769 284644755 536507393 214946011 944575080 642762343 717161930 360618666 656835067 532105869 962076065 817931327 836196387 138842965 343381462 132998047 638074947 3672562 980230791 175149967 855590819 123602548 809864025 832006090 832923484 542592268 613877905 450555591 543935027 180464252 202876994 810276410 823117535 473595081 989659145 111365694 892668877 252345413 326210688 30813558 479884498 69339590 579386118 926357483 946320905 888634508 943926446 627002946 867965295 50156210 104575739 664122444 927128779 503376183 520542367 753243002 891279246 901870759 908018651 48480510 340808159 961570195 986633508 874360224 940966171 379464228 998570825 880914778 898015844 987564418 997710840 3134385 230478508 688693207 724873997 384133578 575593337 165811830 534496113 534073915 638992599 444035717 970492522 671889856 925312954 173948718 752011077 490777706 522808812 363452508 389756745 545342880 666566183 768083529 777009253 837750920 893618542 702661294 962881512 9629460 919167423 792348572 863679353 335066656 834656577 208925235 541869780 815404527 989120430 122216077 729166403 676251662 918771960 70485746 477542776 240308098 945938252 342233819 902113065 957377396 981993295 990745261 998003569 265262094 943074056 321325809 403767401 316062094 510051617 32634647 929501596 228713869 347810123 950995520 974517455 430762711 996474780 870603911 920062488 622042316 739514190 499666386 993230215 492640029 956632657 22391648 906716708 203586223 965414127 587065726 897917500 688777076 941960119 294468386 372420411 99821615 575328049 210126682 866562081 445392361 714282781 481390659 818442650 442370306 644134804 53093344 834915274 31473777 124070053 378094130 520894161 956207394 989579632 706859135 711785009 533972990 921836993 322911792 618966765 886836721 988088755 664870741 882060531 96133770 664919941 413123872 478131713 269278476 434267742 822615983 977084588 911786730 940068742 578545948 767574890 677560402 946952088 435942241 497974605 444139020 684784180 873498914 884341162 986770550 989768885 588903632 680392126 671863993 681816495 435409459 894790318 171385386 483600992 408532734 639368582 808718836 961089050 175825844 322809248 200773414 686547679 454489073 477963602 970839674 975734294 317908244 895861344 523074076 604409927 84621375 264100794 894192042 973380643 26663666 338454524 905334832 929280349 557691253 846869102 393678926 872897791 942682763 984213597 275964969 549465305 847999373 971617613 441477418 953028207 947839545 994753015 65410935 548460865 209697505 560249145 336828451 990941134 956997604 975831768 510287235 905752211 707675390 958634431 883370027 912066608 871622323 938360903 544367318 857457229 810772262 867926966 986296057 993763460 443727942 556726126 205948076 375499516 165759408 642964988 837904039 969373078 220896824 847975420 108953940 582301649 242774607 242887469 800437927 971821657 185754607 318710072 791168225 814042732 995968283 998733528 376443392 380195914 938361430 989508371 364219052 788341665 229359194 477335423 859382590 972051756 92805871 295723672 212646121 668508664 777714250 879021959 534360499 591757972 103333543 543739691 804247034 969783165 21919901 673161925 688647709 943002680 872664487 945101624 839943100 849820305 230643302 373072768 774225832 798487461 335628157 697539643 557463569 962510534 950121279 967838269 151804980 970465510 250410651 596845474 400225089 756637163 647547001 929365094 517559173 843690814 34689943 784929070 429866135 465728697 992154207 995707161 187584411 848898992 307028660 581288218 224364515 428888091 325074016 530708217 17727427 941058732 988965403 994949515 179671767 594870035 256459830 931556119 776707829 790018250 853261376 891121910 739955979 792763725 687080683 933227313 87548240 515754628 537296790 613430644 680407747 840353593 159543574 533715826 669820050 828179075 864699224 928517754 89505550 327568183 784977344 947599172 232638208 783476628 527399655 942921893 523360883 576730547 497465118 596851076 836169820 860028713 439748946 721741993 753692562 785452051 612303913 982465568 468289040 628956913 227074256 883094371 115938903 377201782 820886826 866567016 246180516 680578783 41091453 271292236 539912022 992296444 451794979 500691430 675105106 716663850 382566087 576887276 194085970 622458473 977882643 995108044 184561634 391353884 281383396 466796402 549726211 940102986 148156962 930458307 22532309 294487722 157404675 938938400 372649325 420467695 495372581 908430700 203014729 254718811 314135354 688292253 401034924 705409075 556370744 781937746 873984187 948779196 528633607 742703788 631705750 939619088 725546046 749456950 455845468 576750881 548051093 601713687 65246290 848019998 681283764 927598278 778652301 911366694 86418379 714679611 561686390 948644013 637986894 973714291 294936032 488001064 808171180 848183645 819408857 907323856 338814717 465918424 125058749 973942107 706604195 710199045 534593629 551526369 273622245 474279556 244129396 691837532 622310151 935864983 846431615 894863266 180686316 234519912 440248962 998580458 634099670 984199177 512182904 535735568 311052488 701647208 842538926 872127594 199023412 274276331 697495144 901357114 260991917 437992237 387753781 881167926 338821488 859933693 259426479 613478309 659047122 862303394 809245572 957563095 966558927 996023556 936475314 946373903 456210205 530709397 727656256 836638105 903877571 958954231 350635185 661887844 196573770 735129457 645926443 668043996 526509180 932149699 272420562 488916925 483964472 499314778 156211934 303521453 940759369 972681485 730680355 863079323 963251499 979477539 914519251 932525745 133297790 501699402 734303825 941320792 505191933 809214121 872818365 965421338 481290549 603367239 447481498 528106889 18761399 521258786 448296922 682064454 484339808 822429771 604408544 652701992 295648058 721860561 863376597 911160321 347023661 541720025 230221742 708298365 134415872 996369136 304572003 396660884 716563306 846474549 632974344 885503143 262532630 715066771 935225256 953885253 225926723 469741329 927822824 955839254 431825396 989999558 983770672 984007965 563601444 654258280 719210361 721442904 344000858 680002421 922909521 926784470 218578096 952679362 16032988 705997141 811961646 829374098 552242690 575150770 555674847 887806339 513126153 785151613 488658863 723933816 413358387 510499322 294172276 861199312 239591279 408771524 851108354 866132968 193875836 552494732 631430850 925306754 10935370 64110201 108146491 846399915 2403627 286198102 964587452 995910430 452463629 486077716 281948019 960572482 962218134 996569010 18774851 815877943 74313474 548496321 664890707 959938497 399831101 663403119 381990309 715157470 559278877 982479306 319600384 826748645 808570265 986282575 360723492 499242160 583739871 694934425 293690408 922488868 832177250 883015442 727070716 837738680 651531958 921754610 919173250 949662544 944198982 968376795 90844581 215280861 439516922 774105106 543811336 644336521 667244563 713757124 511514374 575030793 636791286 951067869 530876588 865427596 179468145 322474878 211871914 868283339 173537280 975216574 47464062 451454392 967066641 968331146 177430579 591462290 660974126 730149893 644599455 984956793 225130904 899547129 834778184 970765713 20199024 42261207 317972838 878505704 132619897 350732975 646710015 804187469 46202977 434782305 918119214 996823462 800057874 893757465 300715844 716200936 548920824 869981886 710240441 716071190 447281191 908819143 285262693 535776409 88417186 792360716 615405870 629350212 705102322 745849611 984324282 991829413 170499951 451710981 564849543 817279203 392387804 598045023 222306336 450058024 490435700 569971406 289074085 701198456 944113145 988199204 107617091 534401561 11169820 759677044 591376610 887875150 113627253 173662019 488947069 792752768 482920012 616147394 713132502 821997051 533540815 945207508 710062468 969181966 194122122 619244601 419987452 694905989 93909995 771601747 358259523 809168447 40155845 313003679 193990948 906018699 793683803 981671779 769122908 889235960 773053250 783924200 690152911 782407685 614377014 987196719 350792941 887231236 519224475 777182246 666131669 894057230 528916752 936350299 459409608 795781468 347297523 434107438 817232033 931367080 583885093 682347494 538349839 944684645 294644038 898753236 784058962 845375545 136815391 344269182 225605827 567122352 272621990 515602366 822801930 956416969 895784024 955392349 796484551 978124749 773551104 936207646 878063279 899282659 609912063 632800106 977267695 989711460 907833487 982927205 56263623 879642019 516967724 529827371 842023449 958497205 28831959 836496875 794878931 832862603 507064222 801246704 322589676 845247887 48695052 399440564 239450762 317118762 608381806 698845682 336243883 359477541 533584012 882652687 877963935 894538950 294874138 484950041 296961917 914502788 435153268 847457095 657877894 787318192 628930471 812064557 84325009 946170036 577205993 833966099 821856425 955440228 79659018 177246095 258338576 403075125 758985283 833037317 58218811 526180114 223216089 951796184 270110532 786393579 974233061 974289358 826017809 854518691 318269139 755617409 461201200 610007866 249161007 714878393 607311738 934763418 577353448 625346089 366652054 691146759 578562823 955051479 153349583 395674640 243851952 790933655 884161028 966343332 337032907 564079197 837193175 987079506 756726094 791641994 547950412 631964443 770974179 790352782 353957701 453846810 689483563 918529812 968740555 990967161 890541539 992367445 612553705 997454222 272519536 832405494 884427722 969479843 466804852 770983744 701108370 963385116 777878709 891339882 970411367 975710001 326955114 627741772 833734684 937085782 209929340 616902372 954238137 992115928 75503309 503184024 803393318 921737458 950622158 972419033 653281829 744011465 946666356 991579165 26795573 375392716 968813079 978269436 502989302 623311855 354040340 825242152 720501371 978799936 843331665 936063250 556923091 746792564 26342518 719414617 499930635 817036890 674546504 871012521 324270401 762027550 343187141 845458102 806647245 985981221 40357027 445934068 98114775 810080769 372961394 850342848 339766035 341954464 493069012 636323804 970779077 991437996 583247808 861904715 263676935 961892811 581883374 642249936 884900444 917286111 19901816 105078123 289780659 925752886 858702443 947832093 373726118 575630211 713625717 935744308 105869489 811339946 291219916 390686230 69264816 170872663 581209011 888636247 428785748 531963254 551421189 552986436 673998488 929439219 93482106 180324288 651297058 784672458 796186509 963478329 226972801 738183442 456779284 775241390 288356315 727227724 315130487 614040915 438183477 512979254 38951355 211621202 710845575 957913732 233835126 235949130 42970168 360024880 939126730 959182261 293917008 414418847 34506836 171660021 858176391 864200978 960931448 962606295 797653856 845008832 933576616 986868962 433712023 569769023 736307047 831674036 189183545 865010238 296091510 462193646 651392834 985851621 371594761 870798796 419154455 529041670 413744127 745791109 36206722 731829149 636647601 726927166 550643477 779831824 116069519 584797532 475739420 746233649 776381746 810553890 591877662 877864341 699007114 789256705 549412299 572994048 89536963 713358804 602746332 666537339 439934472 626007728 164287805 274006281 930663097 991441179 13667943 839675295 811539263 960494881 301878135 471412710 558383376 743438886 635051469 787349389 81173542 746240814 565982161 704985579 262621578 859650842 425339962 693563660 909714213 927586787 928358855 954899519 941700738 997211118 142213524 931962521 25255727 662206174 26213342 366003802 130829823 460656972 905701692 957850013 805970158 975322283 148213657 444969002 454376949 978885624 266204969 652325421 869577598 907516217 247988653 547211625 847667602 923834779 832428134 839903327 691808683 793065863 372840751 724653550 928818773 973288796 283474050 807620992 743005662 976449194 29782739 493458307 683552461 920530052 695323082 796197828 979847524 987692137 518889124 570677181 152940759 803579614 241477420 475018451 116420484 817759669 978799498 986810232 871332214 980098301 473299934 678066414 933683733 935236388 342570532 617644553 491414797 878236345 749927197 790584277 364431288 968631741 831299471 969662227 344556200 861618690 739464679 927038450 907639771 993831295 993414178 998176126 811142341 954937007 359784806 744978287 153955822 971445864 52664362 799065674 37543314 269800996 315518771 423656809 49821054 530678318 583656014 921597546 182970863 912124778 814920735 843557594 957540698 998641598 112141940 831336616 78837251 903074438 426787542 822530954 875659766 922241731 364539996 620468141 695748005 968302406 270160896 613405898 129499869 676889544 712245723 837266364 151906053 564440353 458010269 799003289 327125221 485979228 767615509 896519655 361864994 858668118 334867925 940356751 233384182 592901925 668438922 819625503 312652695 398081342 891705115 945409592 785803824 960746259 917115435 960252184 445763039 940326706 367839557 676326453 982314164 986383025 70740318 661545841 52460431 554451942 966700216 998404216 524760290 904442038 928756451 984364004 721437713 934457225 423058247 568694914 487994847 501404766 369976825 797773723 875411127 876760222 769124055 866304217 156047235 570452438 84954462 168920771 74981872 165085921 273444020 966609782 416082409 611288528 280135245 673322164 840165074 842508264 329748667 332599142 501769426 643906487 927262550 941912447 410168770 873145866 424320829 996065723 160646779 607759488 662591153 701747165 128586634 770006964 887645077 899355254 273715841 502647592 745491034 924652884 283209560 759782422 576238277 845756201 915187013 944364010 203620948 484356968 164260721 666190665 773477768 788069042 117648097 707683980 238050051 778399973 926815338 946589316 916610986 976814563 123663382 815810470 928638402 986241429 626175212 966495425 928523305 956740100 573043186 664463217 867499586 953490707 948938108 962972428 908977254 994239206 37582623 748287941 76052567 552198297 792818280 971614739 317182452 536803735 375039646 650729187 790451909 909369075 373324193 811549712 394939903 917540718 842694662 899127168 282730730 448594552 300573338 429062021 369205496 586569065 67834429 695373942 67984858 337279345 648222573 814402249 815514247 908348326 589234588 753987024 727675234 747380195 439986972 736218381 265613434 516012780 940733212 964220721 811715057 849916651 320614421 579268388 175944746 184343981 961805424 967503801 220382251 896914659 279661567 292493754 756124424 996410790 846430690 950184057 309473351 322345510 718629598 778978731 273509908 296634244 852473421 953359520 392091572 914652699 479351735 746959161 424867237 939693408 370517914 996895510 594139221 667297633 231785960 885742150 321483817 907938747 398784666 442673501 615272267 867901086 953056474 983804097 887609245 971216572 10650173 890322734 965789438 987193294 567199391 775484321 887923451 916784059 347381347 541691136 428296640 484572995 23773909 165420718 858724072 957748399 441775003 700140175 244206207 752517665 813628149 938721217 477317802 888365854 734605018 825445488 338325374 710618059 848407722 956536251 892208988 897315251 111578370 793201032 970356616 995933770 746500395 838470233 356304544 797903768 790384846 940164475 269783973 319928106 685038133 735631399 469865408 683202827 339063956 641849696 174508262 284321854 280392245 409116930 952652754 992167811 135064658 881013255 938552160 989478368 368838176 812570912 459697226 638225727 428104435 611330537 264985969 357567805 288794084 380141358 225414960 407556222 357709599 873064043 169961290 810675909 430993690 807865112 54379596 434568708 543481992 761906213 121212329 900268304 751999416 950764941 641229102 926872350 439374596 858584301 319160868 630414940 999323938 999325409 243801275 302314665 347917432 851782521 439722973 700204262 843801242 887508612 873039867 966643536 360423863 556844609 523352297 763673901 178810649 458970550 431020921 689883253 646031792 742354387 349904627 582576984 760845904 848090182 579064105 892325582 352193233 949554117 753971831 789196917 370229960 529520773 36205069 858218585 198505174 974796096 479339503 828885974 911479712 942543580 622538842 732843811 220222671 302743267 511770248 915092368 298556106 590328501 350387826 573043050 361108731 941053556 723835412 817631399 120226980 579649810 194241927 895394521 849792409 915199507 358737906 736981423 887984305 940952462 90810876 851978166 521958067 523557915 57485834 787975139 969720575 976957483 589802132 926161257 518036216 823210525 967386500 996713321 255277626 707804326 423220600 815901496 21480318 638990675 784172959 893163970 171468954 549221052 937532833 994388214 804804201 922770843 42838082 802019134 601544635 805014356 950460406 971634943 765123117 968751370 846692234 917134814 660977769 663873074 267033890 698290292 496496377 901373395 432942812 647327665 964259623 997813385 217404164 393024097 837385622 853996669 476501407 988374960 253231833 696020795 475378855 627005461 202124040 388508641 536367627 946789357 273472191 312532461 818751869 861701686 220395836 353316983 821706989 993564515 342908491 460481203 54578918 893014305 385465801 516235559 704012693 847284137 221498383 639846705 230659009 771904894 147194976 191357422 104297020 234405477 900652992 955898798 150115409 963127389 823211952 916900812 834159022 888198728 55431028 321910385 876601104 993012060 408712918 985636545 382578781 578149779 493868764 583726615 241414047 918168356 205087848 545962787 262116053 399322847 289669392 915367943 610969368 735003731 811410330 961032802 921035895 967295387 716029933 748256197 469069970 761189253 482217545 750061357 598911345 680075708 524503200 565232910 565428258 820694785 721581030 815387070 624110491 971908171 92135117 617734843 60796642 608655971 310941692 784169672 930232959 993826396 4670528 54082603 583459417 736117783 390567462 771979789 531153231 710264282 809977541 845242412 888582495 961683687 541495776 622761219 389237566 872142768 927210211 945895092 103378205 909944481 358878626 445575212 575530445 916327046 29784635 752181865 258018122 748318943 479327914 870065648 987603974 999277582 958886651 962119473 48144587 896740694 970686755 979364332 903923817 966785980 302330294 360547707 458471265 979743657 375403042 858545772 816078457 878606664 46353283 375329302 82888038 946965089 873769308 884366259 347058961 446569283 213755250 555426030 579719044 946644201 112341951 308391245 201600605 870966944 96198077 654634302 763780791 784109007 898234971 958847592 287049152 798031627 345642575 558573277 930031985 931059680 126162156 580020885 468267955 772267061 201215014 457037071 818317148 995500906 676050517 801665268 351172738 806013774 895875654 919225605 8219596 349476183 116911164 602112580 850773404 913509787 826354170 978084082 83742886 988523703 640945792 769992992 465820144 849007101 309198781 469723966 742777064 933847593 900394081 951835609 26716627 242114975 649674841 827107932 676807655 767590375 751245343 907913567 276245171 648701143 491903419 636941026 352399135 781699664 323163782 671986211 332806965 597670395 760860147 996680980 425030430 973894402 780329078 787568125 192212361 613113557 514416643 993336075 573195960 952409634 461094013 692698244 812399495 980976888 818953422 899970358 861433320 933120919 510106177 745514547 106048647 900176319 80862724 869907796 436707998 691069192 442132009 935338233 364569999 758117952 552954520 965878557 68183039 307554527 715857758 851109364 248382099 715612790 141167824 361591770 423254923 748882288 180520990 703851672 529222344 941333370 230325336 593018804 201761165 739634677 248180573 609712372 163380665 662283497 48080879 988131796 90054619 464318915 298508460 502945550 746998463 787921553 109152200 843117336 822943236 973450444 477404015 967696571 219023867 961938469 213083889 628276363 933902993 976973234 259212933 679794500 336575489 466073197 321245529 702138001 832631363 924081798 694720946 950592616 413939689 445533813 981294582 991081527 894990315 943620262 748612993 981336723 643029837 748518606 852908838 913322587 42804038 158424579 47845449 506047646 777691236 963173564 620786367 954895043 167201708 885295275 991348077 998457643 762553059 766196165 160132950 392272745 342787867 630067720 409049492 508811726 35309288 371938596 228117572 730267303 597076943 735058452 795751539 851007939 712899760 790865229 387489469 821093117 562263424 791040261 546911550 964149346 595096978 601890435 659197617 760528137 485216128 738410855 183682874 934455217 832242477 976736762 359502216 664673043 500393129 797978529 268249075 811783121 586559131 737104534 96668259 589050323 56648509 797191331 82445825 552474343 267123744 423031973 90011973 115238690 34054887 547937382 428304937 767598531 226230844 745948470 51314873 281862846 528076217 662233695 111872526 841593046 75439222 702593112 554968944 848529661 483665206 958959859 316288036 682114379 779424339 827845510 225316292 933662517 310545353 365593488 217259560 923348789 873058780 911320320 250801321 968738185 245061601 437762936 764220673 852180448 480640135 902567114 95909751 249697178 588122847 758894478 752481217 997565488 740483354 934550565 586007906 617330766 252657137 577792014 734819327 870090914 563868350 603531131 585311621 904241559 278814796 951095510 613400455 616085070 705631185 844652508 483537181 986882398 230470703 982855953 20338417 686330244 112156170 622879434 182724586 852474691 921828479 943656489 617051305 624292364 223442490 394245043 665242573 946780695 669463673 991338424 97504814 394095810 978027689 997697446 629838029 990130675 542555677 565820559 459548719 464452361 282279695 578224913 223535254 874484466 652965295 953251494 825881672 827934883 759016208 806747709 88405569 282426075 879607387 977296132 682072166 935019996 380097461 610207099 258432064 851773673 678270139 856020443 386787806 922752606 278601233 390880797 197355851 682501872 757443418 787455124 985146113 996113677 727066551 804246459 606780818 928544936 412291226 689116442 947521008 951071081 338753039 975355907 463433485 559569556 82348781 856282839 514576191 763631840 623516027 759788555 730544638 952727346 996438774 998212714 313350148 653679308 906465212 997080249 548189155 761461853 655746782 910871673 561478535 653857094 661230205 771814865 400895310 789171577 423290000 881967602 968881295 987798241 27801754 742263146 867733500 918640089 920846519 992599466 976957072 984747321 322664165 724089400 765937332 941159170 683977259 824635453 391202496 964354036 93203327 421905024 966259191 996513808 65131493 375050759 833753683 905656376 776478694 909406216 585414590 802191045 603644680 608283949 231039593 314464083 646851300 773851358 564213405 640051920 564537590 709449032 621007574 637996415 690904202 724631879 827889654 985860300 111254877 939798427 44394032 830903265 184343150 726430137 736669708 775944915 269472640 319616594 84436188 831123361 27342312 559195542 291254325 464234459 925748805 944562662 653292407 880501889 261730116 572582228 318271740 476734129 981490607 996612538 967715796 981865820 744686219 928668645 296368803 616075036 184756962 885491862 45504039 672246320 435913060 511627498 687340681 764443461 742334235 910404833 192843106 521110712 5574870 190445193 679885563 780240463 356371158 551088773 905371124 976651269 995717406 995822823 851416935 870806837 882330294 948649524 507684231 668404525 957573623 997179187 262620877 821186083 271099079 904027307 136020098 712336022 107016445 295561463 684048517 967467587 713671320 975612668 173776978 637525804 871597786 951326204 989282962 994146385 147775920 364047373 335387497 932227449 998246731 998373838 427413762 432146915 503973082 990606471 723167622 738523375 784283852 967230965 392602225 673193433 315509724 774783202 912061312 942694897 246335450 556994210 674276464 755148065 33146264 426939934 851563519 857276618 703666212 981773927 468334194 560294279 469494200 727134285 30851233 656701473 462803128 495518422 510446515 600954193 126216561 429117578 257280704 584021211 264914141 775452228 232042182 752222133 669395847 946115772 763774418 998464684 53213697 738416801 756942651 797118308 670739172 777849454 623396478 787981504 470860715 715872033 17841758 766174134 851222963 882693245 786547757 996207166 248451707 885525836 14328732 535994054 519247939 880859302 3029300 794948433 781696512 832917198 657543491 847417018 148309811 367488518 893869335 930395812 35687515 347193458 472541417 558999639 582451349 599420338 724053435 830895372 77708907 553109779 183634802 706343070 683131486 902478169 189094207 620286647 611644848 656689516 845171335 852785955 32839822 187437535 901780415 933640579 28574247 481331230 747289041 779963895 928866161 986287592 506676784 579288470 883693752 953905771 519797202 611705848 759888239 997829035 377057098 645075841 335547713 596362813 274872310 965627273 962356476 986328920 717200507 764121482 395666073 816211024 758517277 816618389 198018619 297220269 882208569 942638777 356602236 566911149 705231361 794562501 335801306 651474053 462808342 601765431 115868100 191219259 511006641 963326498 46747055 748053928 83859770 419699595 754117667 852962641 106209776 455906785 529865998 888890108 226832894 800805516 552208977 629759456 214902230 494506495 35320440 612965597 89184098 333888873 812261674 886593384 140425211 265293245 62207002 423060721 933863967 960087070 558164747 697024335 433822088 454951340 710450560 819080711 78769828 313856052 928054210 949449036 990418005 993597671 748921946 817603059 736772884 997231446 391607261 843153891 678149263 944408151 280440945 960243468 945856325 993335146 877313335 985507034 378281916 687178894 328169723 974048790 557361115 775612678 792110591 931462445 513152035 645288263 910725194 922132437 277981312 400252804 224309162 915034927 348752348 606559303 272585142 985801088 89253853 494556719 869305005 972865814 101338520 267700306 845135065 911347083 328173914 364915411 578440491 923967503 273492681 570900901 210138556 401445737 613446417 688925416 284717911 769013593 844644223 858432255 188750322 755366153 253430165 418180886 943374605 969441690 553215762 630355952 464434156 522406264 423448573 551888339 164404762 794862866 161628835 209476069 759881485 912035117 865875647 885343684 63897842 275588790 351747693 529733176 467991016 688289254 921951925 952383805 334844486 516580546 565447034 572850370 674958931 816117179 110772589 983685491 646332867 952434115 483042329 561398185 377132802 809913667 46791513 494911898 552450629 826574991 473439427 602309029 974703152 991649157 888779230 897023011 328194294 815768302 403336868 833055263 578465572 607561363 789861326 870772132 428246022 922089529 746888677 949052412 421418238 495533873 597473700 661705485 467652270 580253704 455159300 564887671 739426417 826319732 931102176 973646311 56715716 687257880 297993315 981921454 11822892 375604212 611911586 721530861 619977137 684332443 287540390 913442748 213576906 484290578 640819082 727030081 930949213 970838923 383628521 651699424 275030140 550802937 280724979 998223771 520965864 587709131 831867339 919381179 291528439 736862013 660063006 882155956 661968732 891636057 658955344 668278424 559074503 578714630 24182282 538829765 685176945 723710203 460410729 781833395 282920259 713335152 148537752 634183200 529934408 714803398 649496990 693211793 168351678 539570589 747771136 985105858 656751893 669507799 546488859 997079785 833304798 923090815 18916807 413198289 158022377 395063920 774081640 926317841 273395049 361670907 272865279 345274130 488902706 536933067 37082980 237821487 480017575 829024327 420528390 792881571 39982531 582688892 17607941 922312564 41199455 684207902 78058816 876363044 816525710 854483682 14154778 543049585 25547734 685156093 7684997 120638984 205240607 752744190 550782656 979235049 902162017 904709001 99797373 402308941 796328630 855441388 787204167 841829767 86734576 157608564 357634127 449273891 206472863 756426901 203581052 736118755 660822948 761185717 798610522 996386928 416334863 838176781 756424804 875322339 257999467 875270826 394252507 772269917 101153954 724783063 398268011 556028967 94418842 615988945 249862542 524212587 465798220 714090658 488367059 725692040 939518955 943734553 354580806 466454570 989319313 990365176 897372463 995033915 112325197 953331661 155213123 525002103 260533246 386855151 240175371 792700901 116018606 545267403 606570745 708135903 93771298 455662388 638571857 740995198 92333364 287891803 533801989 832460350 750183202 829994693 126213091 560457077 884016474 945507783 515023129 930033603 508800038 926382136 59340332 118255804 676997893 901009749 80847333 499689500 411742075 952243530 264629387 837666307 146183144 858495150 674911555 855993777 82900815 534311840 42755325 617319429 47625902 723836576 19866659 168885427 253169766 292796879 219480043 967212754 770585012 928055266 444763280 931425507 752474537 791444995 96833158 317467914 128660135 203430479 883779347 977640054 483239757 561358115 675622439 863802541 498718798 584772095 282881264 977185066 909938941 933612432 347666835 768876679 478890950 646999354 382441366 810552841 545333289 938220280 708750026 787216046 183530517 744857088 790265367 814978047 969027484 990457970 699179798 806170230 62207734 111744937 125465194 243630342 909240088 976827733 935589985 960224593 580106587 875511147 528992416 916527880 583201778 708076319 66727835 507175468 892253733 928657083 735608734 959567366 289184946 753271668 558803619 767560995 37925884 189667816 524214708 791357856 703293332 847464271 287395993 814979261 640224218 847790707 236175504 289903967 558838315 995706752 29093426 256715122 945788097 973967036 43217856 69827221 50956743 224259630 528565112 716129306 183466523 378884078 535714515 905538384 956556361 964949619 878973597 915181645 53014377 804370740 412758788 891622468 620014394 982194101 176009531 800510879 928205576 948674172 330483680 404186390 96283638 933452730 105434512 396851688 653421623 834148877 32712498 906315124 340901043 962492225 667689559 876920729 437542168 848889469 507695584 859842796 615815194 988122497 686178998 757558655 87672666 471379288 627048122 946137723 231188356 413032381 698086769 757512034 957866367 991322226 6955215 786337494 852605534 958354693 535940420 606367845 825335226 933762280 835972695 887178034 551254943 804565492 941024285 975044925 416333424 733239584 10746975 327268221 723793314 756652017 652656325 673599485 466843167 927536485 244739168 685155312 349356624 379441292 518645099 657736958 979149537 983837111 191044761 829340259 216976140 283996492 250819720 316136449 599896628 890039629 240623511 249853357 719125496 969813768 136835023 834001669 396147100 765757938 587552752 971751134 814900005 907971476 921594382 962643040 878746795 958934388 623395746 824339074 652756431 809827812 229810808 438983953 492584335 950723742 854138278 876088026 307155923 586346857 41557717 165302468 758549234 834680693 363047637 391084052 450650544 766159894 367886808 497513100 829951539 961804508 855432274 978535641 660215538 975203494 834359523 930314780 563580693 960989950 657325161 865142740 986994731 994265239 109597699 350609450 65043750 525584994 168832728 511585382 336836570 666255985 4416726 686999250 234973494 714415962 552943301 677437976 389728353 620437370 103411870 976948797 648097654 795187203 697264146 901152057 837197715 881644424 38697263 117901852 819421517 943536647 4848235 268326965 75258277 573564222 647447912 768789724 608338648 878142677 702245620 934972072 985014579 994344241 568153138 782280141 822898768 909069984 464290752 916362310 718404538 996447419 159320189 518302410 547222540 698137512 415620645 621562165 174810828 212256209 947709640 994980625 317106080 792620397 371451050 488571237 743994373 976850603 986367081 990869288 566947927 584843046 860886003 974449388 449292407 816823014 967706429 975123649 724070245 775837009 97651603 814470525 337957366 406024166 840991181 865500792 647574437 691343027 696969064 925653444 293768256 522430446 128111003 282076183 145734748 970374290 360793148 787555411 904249932 975650911 740252091 756023999 302940920 826664228 710751617 985535467 964848393 999381851 812423320 964014799 778002623 999215642 307567684 844276197 907203602 912669238 255559494 496437585 703022457 909236947 690966136 723193800 128562445 626880428 867263274 889461706 356311843 609602951 373857587 683882995 715108758 992981188 473696283 757085153 102668504 195623096 369608774 500966915 958917838 972537934 272276595 892658175 340225208 661379321 98290772 811855437 202116974 246093701 887875787 902632832 463683539 778946670 801872224 805875938 108334868 326197722 421332631 964635427 575123454 584185124 52871938 91331505 174915185 269958349 280648201 865712092 631041254 800398614 16800268 154244439 738637604 828325603 650771113 884707399 524645133 569933052 253176390 422404200 635902386 637112005 175682367 539337541 942942051 966111042 265949758 375945186 85670760 680873351 586291772 915971424 75337110 602388767 755563753 779975279 348441159 859017588 21430142 436799113 801043837 959093044 881083413 909540493 491762767 805243231 662694327 860972991 468894423 637250614 388303789 647660754 281857493 499496314 987882281 995208752 704409380 910258202 162242476 817124975 596126378 630014848 477850867 690251171 307482480 526336680 414483521 469403439 441085735 757780325 427906301 959699245 600270524 808328285 240530611 929118322 710984471 784160314 411237443 424312558 420013454 889875346 799112300 887374757 865112321 964609310 139609857 879771361 589611140 606084854 229069899 409087945 190225501 620218757 964719952 988893511 364904804 902898390 238586637 322928162 954499382 968762949 927707640 973767685 868772948 951868552 830844147 846141553 561641121 900213316 74746039 109057561 945807793 960570224 483835731 994373357 177518845 873090104 820481598 927083648 957096414 996330501 82390390 243003880 523283253 985469830 476823457 595157007 378667876 791159113 60201129 480576317 65054250 908209301 111739929 931107943 925260953 951408449 170154433 945515157 267184280 628983527 153314731 879290844 563697546 702476245 566329660 664907112 648400768 872291424 470440536 878687901 532980926 778233252 476719771 962755680 527635738 781796558 143767619 896797216 74969576 870312352 163248309 986872592 507852386 550681192 621127199 684212165 807766967 971078242 7676764 889209823 256263890 784399179 2591633 591391948 875266152 892742735 242592915 747928166 36377155 250788513 262730383 761782062 842690919 900701050 837836424 857686063 636050955 946053014 643728304 741299601 359572178 998079226 626486175 927318465 301286207 857018992 959512285 995756141 937341825 961311493 474361829 515413345 272823812 829587599 716930563 987993053 549668518 726201054 544336509 740477494 646487854 783645085 197419847 318760090 390217933 749182823 40928471 978058279 957537365 968853883 457775357 784258684 848679221 983798172 344715632 738600594 211625624 890685192 173893822 192918782 666417198 918679023 530498708 716050797 881118101 891992262 44337362 321839064 437997378 551952814 246879227 527065383 123629142 587308984 638675835 937914138 58266102 285917773 214544106 310917148 419455398 930025937 638138894 815613830 232084582 365729285 1624871 883322773 619492327 655456121 834829443 888580206 267791919 455447037 843473945 947141086 446617062 691798173 598724738 868471797 621617294 857624266 900194368 976547614 659445924 860169879 736036200 823246689 484115729 979635463 631722491 654093408 120327534 667223251 905965676 985397894 770643574 810692079 598940186 834125467 904803091 967510364 470202818 975498635 578437275 868896659 8515521 763197746 80028162 127327932 411822220 800950745 640059772 789985722 209667843 535982883 610393035 891139883 178757240 703995821 303221289 498140658 160874528 695867960 33986990 934776382 603575076 662178590 428849724 901375590 709975857 917397516 626227433 852810154 45553309 868090131 969426912 975981215 380782676 397250523 993376070 994071644 235435331 421252676 576917108 628519402 386460412 602641736 760205514 920553798 870021089 976959044 981577443 994698368 633700664 816991788 983150725 990519742 469526015 508681983 252196438 511317752 710731138 840557090 516765820 627752109 414018460 455661584 849297783 863156236 767952299 795363475 546524679 744224865 94009395 321176165 778634631 812889138 572957662 669029364 205616383 569184298 729764493 973778736 387860303 771063050 908635303 982070714 345711464 589214897 885183563 905980227 555320512 826552993 968303643 968852716 180778783 806727141 846978199 853505509 415780589 748212808 915531121 943517632 348675381 493125817 897626645 942445718 696296238 795646082 347933750 893341159 973090762 981809814 242823432 608729544 112921298 526587691 561401462 940126865 3948456 751539292 120517843 945582236 969071500 994453882 671348410 724237072 45366351 585495872 222522331 993743536 408711336 473602790 611241953 920151179 489010906 894215684 445533607 593553549 469245751 817876579 68492048 276020304 124600030 129997592 876613312 898873813 856289515 861437761 177520205 724533240 29531502 422022921 104179441 985339751 850707260 872348318 817917953 913178333 554550642 657432825 483689406 530312833 515811349 777150793 465465590 864554101 911408796 969680727 284063654 802993747 608259439 889627157 830826246 891047099 97210709 333931997 963073444 990984914 684425986 982119980 325031176 442931098 197714597 907839839 833014749 919090858 49604019 656803195 760135956 842184412 982236154 989563171 635508319 919873102 743118980 906778861 963649324 969505824 699229149 963590972 888217811 940417627 125543464 214768418 993536439 996889219 526137535 839607577 826182507 967927407 729075451 809228661 275302567 914556802 233131331 903646245 999112702 999138125 29771150 254150282 91855709 545066118 607934789 926130005 794802545 960324977 737857713 827499206 728071190 941647460 85337970 131214978 389039452 943148651 392807043 550216290 273793440 408640224 320447797 989863647 781646625 871313461 645919615 853742272 752393334 768235134 885530948 908118052 64646582 903554359 114278559 394667928 324909437 625400598 795560583 925628891 502954262 985934754 210521887 513471793 180767640 770591472 688974262 775093167 239120287 260347648 783236564 959746980 991009675 998263122 620182777 682400588 47584066 564082423 849597279 953824276 424941143 608612240 561040142 840636671 787632194 832695199 282147739 928954566 934865561 946710557 603323317 702416584 284261370 482936690 324804280 637558731 25708735 455319893 786950726 881673377 302799333 577540794 205227569 781494581 328054666 615373805 298688788 635030093 378202026 807243350 872256345 961426050 723361008 770436935 688843333 892793549 23606008 529757742 144317298 526785834 705634939 946304549 550533137 900583603 457287838 899883362 219504314 978760850 14305475 869424847 544760037 711717645 605025372 861409625 930621440 986999140 499907612 872487769 532471948 636381252 320679090 795214700 269415636 552086843 427857416 892976253 455770099 879493148 532421578 953734407 378955272 708494609 954839872 969366021 405957649 509809035 805372829 998771735 366966053 422683162 783487745 849452966 554580505 868221976 461645044 759549676 417212799 536153557 166180966 166385265 6521389 677723200 974564686 989320126 544185172 570085999 843452710 946666392 825661010 938072171 935847284 959306387 387253300 773208653 885961196 976814413 756286970 939678441 770006889 797815790 995077663 999243509 740368416 885940153 870172637 876519618 274304456 323188397 256498759 461684460 284761576 816370486 827513842 868668887 731135728 945742318 34585199 363489172 963444560 981153005 988090630 993101073 335023085 996815353 348415557 946024469 988972365 992714100 214466076 305371959 973761035 983277744 436947434 779889817 427735482 921181956 187810234 712924879 380022627 912864236 461512547 630812191 642938369 996049867 808435452 963638600 152975506 347714391 473006140 800635614 70487540 699545447 414041804 777679282 123363144 950577276 340640975 513268861 550932430 566741222 601498870 978634184 542931679 760352145 556406546 737028036 267519523 696666559 358571739 378220705 99307722 789104836 474249684 813942112 180341969 591112464 64471337 587426254 785127690 853941463 780605883 791075292 695918533 822930697 746752571 838551265 710505291 739928526 453997046 719490956 307110889 920876657 143725553 980669305 134099910 823145646 729546733 904043479 854991379 993652241 654640945 822085997 511413336 894154047 503943814 657607254 703264968 817606093 125521667 413044210 484985668 721071555 423201090 900038509 212767588 269075085 770436924 807612761 289848614 310228304 40128969 228369802 512375352 513650745 410386908 528735307 416769467 550440058 590268716 948097353 92683801 484671658 719243949 831975656 899340424 978936262 114340122 302328381 280247688 513565953 5766069 935427258 629835315 889735257 384137841 701473764 824250750 868582355 864553107 932998033 903406883 924487286 288462188 974308834 602826369 855342358 75016837 181081069 187069848 606185399 766935102 776713090 724010507 947025285 974277640 993421129 186852172 406900266 126090106 797390098 206015857 253844151 164828904 463177207 108367377 204214375 651829697 708511766 666202348 985658910 625391734 828056948 439576226 561322135 147090399 674919284 237578315 472450748 208010899 220822560 679024049 773012182 282100590 508894348 543289628 800883507 989547820 999259683 459531827 597808683 226718613 765054700 767711390 910117346 688183638 804032757 351471558 942663146 735114058 859277421 783309320 959078509 490537475 822641668 800793586 957718675 140101947 235883784 598734468 658616941 791279007 826827003 423092279 540242442 730733162 843730654 989505214 995249106 561490567 744754299 310839009 912755410 942633243 979715523 867009149 941780464 843884860 922363205 969546464 976221219 404126311 685757511 734557750 774859094 197488697 996230806 807539346 831111560 42916087 660689241 942107479 973914781 384746493 413487675 489945996 825930038 527539672 941804828 53511903 696974789 334432688 812981476 457573114 784681285 651864539 809355860 702002735 934755093 82086396 118861729 742427510 879310677 549956563 560407575 427969786 641231919 373311084 451265766 247995675 525402095 544800225 906144703 738244893 867601056 73414890 454719996 947640381 963346198 259725864 647416271 826827956 959381729 986133144 987537845 375850609 661902324 164816769 518120026 647952860 681992327 82275985 351659519 647659703 742941135 447548552 799384732 663784102 695993113 250275696 809816121 10050622 708064199 88426445 292376948 371799893 651840204 635264666 848956756 530595440 636844699 687404430 995547278 869112612 909035277 856432726 920407814 514870286 809383362 900608651 978309240 23329237 732861152 402100057 704302687 665935134 744383459 881974615 976747419 7721798 784594417 983940550 998979074 142031630 361730436 77870413 969990837 740196160 926588261 981962637 988685791 54596464 758834434 470455761 996511819 397738634 419085024 585802022 932950646 272668594 486765901 44697676 536022737 39257191 457117369 209128702 473762454 99337117 667564421 251368497 971915884 290975758 591279809 665173682 731355544 86013331 539676588 915700828 977539031 55589990 154950602 718070700 840438800 665590277 879522613 24929290 113009450 252231496 752553614 293188895 326110679 166199695 189401664 404190112 655498590 396400771 593357290 862525622 869301551 179797561 759546603 117112577 524278211 737800343 775990397 459271996 872154986 635040014 817901866 239741157 728066214 80085947 800960320 305500910 603048746 942084734 993379214 291723824 651196463 625401283 751663022 193225079 396004322 272942582 703860818 158923387 939740920 953258829 997158941 415226548 665700529 326811887 860152930 679974321 793317050 71433458 375433785 977126371 979586760 476869249 911013853 394288057 489370806 684378056 904376089 882700200 904636882 135518476 562517061 110224940 423734347 214241195 303553798 807726072 879918581 362800066 656515452 844077088 969020821 643853594 854918830 345664924 588272632 504039367 849808675 949559947 952320733 771556560 907523349 587581706 875763562 143482162 356335717 22483433 222602897 216527455 696874737 882884782 907954322 844661085 951390289 874512483 903731831 937278248 992215314 28990876 949365249 37918870 881797966 363857360 694712618 191197568 745989924 221262649 694400597 34914091 357894350 291690841 839440298 795214716 835262165 477784408 812995544 688185349 902053728 310343734 838098897 516301251 829926031 862409832 913125933 459337800 921191907 360665344 947791120 361117691 719289800 774930486 943343096 179245933 970342449 902324103 916952881 119275366 960678815 35956134 457850665 421822501 759775587 505954011 940920444 398568451 768965177 635856597 881085437 124081342 930541923 916235752 916534449 342648130 545236484 243394516 625899518 988125868 991337702 289958698 485453281 451527875 792191931 931154860 995871214 384897199 878808378 105906034 865039026 598116371 674172234 780582353 788806477 225264099 877177059 33554239 812777736 191011182 506558184 31861264 957962309 926236019 938709255 219512060 347996779 303453318 591515067 15317139 861609045 606333560 858559401 21775688 903850877 431410642 641924046 25915202 872087016 491983135 746578806 101090952 342849879 739878694 956853192 695088717 920445931 922056100 975199673 322788276 820020067 997655857 999220570 364645663 437020128 178975158 796827329 74726351 944778435 202093990 751705219 541483590 956936842 574766846 749627774 738595090 959841488 958105417 996547914 534214446 645071932 714629011 732335161 408957768 547985509 206989128 579576031 477336696 837085277 416912580 823788507 628936660 871095611 538565591 637739636 826272188 865317344 721943241 967606293 907122884 950966405 60975328 701971129 616610416 859885488 980805622 989801356 506844072 796991980 934536613 980556486 610240683 957998042 68559898 276005661 296759894 510488522 287900792 647143957 77709740 802839119 583320584 888112557 866863769 949935563 92146199 388901716 94558880 712772924 48828809 439818404 601106212 938776146 970019599 996686171 312200742 965949922 482589736 651189690 763818775 828283180 459840333 708895037 543735871 756002402 514347256 688712106 798836800 987671869 33240034 529906570 245734466 573334676 533702486 716712954 827274067 925380128 132243082 350080645 772362422 865646962 560848811 640811702 581971948 951726537 548195958 548799244 565311867 616895427 582110127 608054502 374547677 980992594 615808065 920955426 506071466 730680934 516469192 692600987 926119323 997961223 94381494 680723524 508970315 817146344 969196944 976391644 921287174 988881716 158354222 343201490 679042047 740929598 949355812 975269613 897954723 953865992 75535503 222719339 70242335 332327459 676531285 961002568 823742770 932119974 906046539 941873128 6597006 576820813 933591245 938141157 670150817 860432377 193955985 574728497 92249150 680525329 182905899 457684007 275689174 399454385 442827005 540037669 278569522 600186566 920177659 930860980 527705057 962672557 927696476 973704879 912428582 913877296 83846774 987514175 169024299 269618038 676985586 692806223 525397865 548984697 494497767 521874247 290399682 495130224 690512169 867072564 642659018 919947338 807928267 832713833 381409088 567115059 908232980 985902517 184195166 449338904 992969478 993724204 305124388 707144855 250022361 270114939 619377865 932718996 440387181 461424324 305371238 767372367 824252459 982094888 79643301 574896258 651584302 781075948 498846671 581137384 326649239 936327575 267945943 900587120 783669731 792933711 558026082 893772320 337320441 829000812 83386274 463561598 225635543 878119027 734023110 888372953 958827061 965231341 215389736 412407221 98172882 212134420 977790261 993848189 69791592 517799263 340136496 914016689 437406158 649338020 169784114 911789316 664773051 825625133 768824596 936664247 415852268 653294384 826413980 954735661 317751189 428960155 538162006 717356788 591065578 843521159 911554117 967481916 205241905 746017088 399096659 760466292 764961359 798437217 994000068 994811990 614996931 676958861 990917988 992984720 614498524 728406850 418104541 513551651 254154939 723145238 822671234 997797825 81099494 642437171 61547924 820722257 408747245 433547665 73118894 492596271 36404966 860669907 469663650 945932995 956489702 961728832 731163775 783790658 367371482 508831607 537548285 705220120 655414061 676085153 262082453 999011709 941815010 985979320 742398577 850815533 836285080 884575683 558293755 860322060 840140711 978893005 802360855 821908323 63440181 810609261 388478258 468872808 182997111 403732757 383848342 811851507 297061423 451763130 904485730 932761487 197679862 894648528 799865780 955196381 468872121 546356525 53987165 233023769 437369674 819255419 263296985 731583716 741491285 873040836 459997331 487603657 152536197 815005344 634904534 956917098 620918635 960944671 142903054 970277533 243888845 713849189 147260570 313513062 801606466 939519946 281394366 434569028 580982989 806154675 484781361 869998635 651800334 777494007 922014863 944942261 723099790 942020869 969235597 980788057 471981891 639808861 203621185 534066788 984181374 997124754 908299044 965273987 972059724 992232237 874867016 941459484 559164771 665037905 529048517 757154075 716966717 974551333 662127477 966924154 30127886 618728565 605844139 915324372 413038302 789829914 83273841 481810168 135378216 521197128 616700566 755537815 480823176 641851531 621614894 688010974 118192778 655765543 608519702 906044827 572679494 910874944 507639778 730550486 753589767 957078225 85947644 683328087 289436992 659645737 194713598 411124093 462313267 680227580 79358377 506021138 407184008 508584264 931500432 944479874 635269450 936132100 288059774 498913669 462183656 703648137 180892902 670886168 188601631 966747512 431596942 483608825 280387925 421725479 245872444 808967286 551263849 667035096 175832280 688475379 71945269 768879089 686711759 973708780 29538326 845261380 485212752 674710550 36148257 855921675 125116464 764855470 474335320 768170508 370877462 493663958 214751850 367619475 128833765 425917105 47816231 264011515 346788014 545783237 508033188 513039576 847091166 871347820 117209829 382979737 161971474 427806172 83138625 512396868 335162076 414920574 442575759 634106686 591693083 787520156 45726011 728784297 875884060 889076267 624644978 628361957 89639945 644982603 498030756 797939610 206991082 604788105 811478171 829791453 371668123 602669102 778584677 912696969 196262134 944357260 395740474 548938594 711910967 744603152 903946705 918305989 476970809 477050769 424249241 495293421 505508511 859054886 445360117 788307001 333236995 829768340 3487197 542653202 714246385 787220295 64714253 373608917 725929221 872036249 360171219 589922644 85596589 109961574 255880619 770330313 362408627 958861014 174973602 480567032 441848170 988540745 49972336 727310164 106107009 147548343 278447734 776104550 971708744 982364528 296508092 487475106 588873612 993119102 343752961 480423699 817894211 826992877 871437087 946529291 845255727 853923500 241824848 258794801 863602829 906899436 266418243 601535823 447282791 493971480 267204767 571387610 607718447 797521304 69335583 686118677 967926165 978820744 852522215 929093909 699104898 921695153 485578314 914903360 393157668 962874725 318004056 562429210 432285210 452849862 406694113 732617484 980486037 990227008 4797461 666552786 320938036 511408651 655776432 689155275 37537236 624837931 22143022 624080944 51295257 766180946 373729732 520852809 959995918 981564149 409316797 777120217 434980822 963812193 106204537 756930404 274445475 327073283 704891757 861733587 388443630 418325580 283049398 473918816 359140632 773666131 571292859 709452262 326554208 757322693 628469378 979140002 372984665 989787562 967354476 980632118 498975445 803359726 925711986 966719599 87869550 520816742 38029735 353990191 498365377 507143069 683406467 898517388 763429922 897292225 343193581 529826257 112529478 657669961 297657062 520345413 349430775 869940118 559738089 754474872 361226403 630652359 999091823 999172196 960401248 967975223 372787883 610022405 517642078 593144269 172725685 467196383 529541036 726743641 140235018 792633072 259815259 400890734 790078093 947503443 694557526 808134060 582100863 638701442 202477989 574940786 708129476 922284865 968080934 989569205 842744322 946008999 301135461 644086624 804665530 988367605 440595142 900935716 650749204 719682702 641731461 849513671 487804525 571427523 318278739 554256651 523810979 971400115 812382208 813315242 527890344 942785866 803434739 862150112 581460623 616344816 746116175 908928725 431714014 458942057 403370453 561902834 684045026 881425066 621955625 998468614 98929120 421900880 593491529 917483946 396397209 624143952 768786701 879971097 485989717 595754800 660325037 713964335 891670369 937030257 968923231 995430694 857206697 953831649 421582645 855782465 726514883 855718608 891968634 930498333 175278040 201706461 640656609 754924784 244404021 501047858 852872197 953207891 194567726 766461767 214623119 600607713 661393873 828178525 153283989 542555364 863967959 985658668 124359030 477901398 20364579 490210840 846646456 893842048 699300829 943080693 861004547 916406377 958815921 986701567 401141004 657766877 36542285 319419157 528848396 782089071 257749704 759429132 687884050 945799778 284072201 821629789 282971998 553095249 30308919 784484948 698633556 904621682 293377343 913296029 665173653 879784271 843761646 981751745 10214454 642653925 670213227 892858382 37424945 132847367 220561377 461668414 993809777 999043404 315472846 450061217 588751483 686767355 140162266 226916113 532819260 933723308 332094111 813150364 683204574 725034850 359136474 969010561 915082776 978682414 459282745 751883854 375080809 783383950 983224124 983803378 74397269 977488325 93197179 624667333 571621 19810846 838654683 996489244 460037160 710073989 536659368 924229782 857777936 994855082 527772568 677824245 606219054 914318552 625081338 877173515 148658926 441064623 282392422 811875612 824500522 911763882 121319786 466404312 179258608 812742829 679465169 735106037 803132115 821019420 623964241 882023334 353059228 447941254 182780883 384489097 373465874 987408243 136327353 203219896 446198648 490924381 873326205 973721563 255124642 789378053 271684930 480931844 668475227 877027164 504453175 637635611 34893891 781677838 844423210 985730598 560365515 754564155 454713218 652407222 913506069 938703245 855450471 915425165 762931210 795367363 600105211 897648810 998668753 999256466 395296971 864979707 38897498 129528838 55274896 512534082 5772482 863001386 922665258 930274382 690335232 832018569 598706844 816918280 910273915 921783234 709586743 838361482 207522428 577195486 137342279 357656670 658758451 699135821 141634389 909892047 383192253 412319103 790492076 936313659 850631855 980594839 628890328 773656991 966955208 991027005 705353013 954276827 186570333 399586619 671851288 965902155 963812004 966569456 924090161 946168161 422753572 882273325 665846874 832853259 610499123 845384731 681008893 788719957 518314669 993931588 282658161 726426477 952494572 982678837 545813058 917241020 848247323 922575005 530503022 679112068 905003827 979503304 912524763 945152195 141510219 723849105 66689452 259454294 71385741 148393466 453948050 719936180 532461126 872420917 174842970 770046695 181413291 892239838 56261967 711721566 229642317 303303159 341018498 903104492 746246891 827446639 760175165 910066116 821497924 918105754 917380696 995110097 766419680 908446464 273813538 825325001 648707485 817330280 838022924 945954404 915263253 918700040 669066142 753706706 14400008 304767506 594264302 617670420 493681155 500037084 20855773 896013915 953602464 984141037 223087841 441981707 178093111 560583640 871955847 998242039 409813829 815482639 448942616 782852203 249820324 673905942 858123571 997159017 755969961 866035481 629197275 730109506 73252107 198658324 415138890 867413662 557479322 615622717 391375497 784470195 105072556 849671287 360352962 594972814 663770703 809597461 815281095 862528675 271904553 521290960 97426564 729312437 141386492 919170625 240191869 539769253 531273873 908540849 408194673 924650627 619866447 786212627 665670376 991969603 102468627 808969653 467889643 594036163 962810057 966401262 574946862 585664336 562448036 631575252 732847672 978689551 814111276 947704088 351315328 846443217 147401289 681821037 517261837 750138513 608428998 882348575 689591047 690918327 108596998 162005903 979104363 999204031 425339755 962770522 218121199 810739160 768143743 803559276 774391592 861511536 755136690 949742202 439098614 600138167 544433209 671000656 868382285 940945649 297725035 630537171 707662416 981045769 892049147 962819181 716071228 785975055 159060348 370625082 254697712 718028519 715282871 885938022 681356173 855124983 826754452 939177254 610845183 694376067 322102055 885769708 833421543 897542178 552260879 779029755 56696134 560676416 178949725 695175565 66507912 422771894 666444239 945479889 707290458 831355700 59083774 298251723 26368740 238987832 664154536 697725517 653878338 843018219 883951304 901624177 36966517 210758932 547231100 728401156 56472698 324395441 313329602 871831804 43443076 830929716 30305842 824059978 465776521 496187325 975656030 994094999 454346567 472481567 887118951 974598908 79167485 595955422 180604647 491226426 649608659 897103701 252476328 773144537 444226081 537564940 639594942 755070573 888526056 954877562 155255078 837590020 27631383 89660562 255502109 697294766 925398190 998406491 990731524 992796365 35814747 122655722 942187983 998675339 269605764 565695338 702258663 830331077 15138354 347323486 674392582 751318048 199813871 761720301 623867775 986577060 632577666 851720047 500726392 522388460 288229334 353407794 421372531 658009082 40239454 653131005 604339769 785965539 891819934 960738112 736284860 783071577 676735355 815735188 412132754 490488749 554747212 792234769 600014958 936387290 769447631 960511438 508569068 905764524 205162700 237143241 209084611 860902780 923277411 951983689 272088270 317442209 319414456 979212531 470661704 712556317 717524680 912765006 418268969 525627210 57612662 724777983 943164485 955534151 507276784 699089913 20963744 277238738 865833326 884006698 627395250 793795870 838637198 998616457 687723483 974108326 85496349 958345215 353456974 660835399 65607338 258033001 395742651 538317106 285521460 674341095 547401631 779825523 883387328 999078500 644107969 774327640 450699190 498415555 398255001 986657275 524967434 907578343 422816235 424387817 634244607 977895639 100139291 343961729 987198263 997802774 156112863 899143427 610367410 920088339 219943712 880160915 164206251 283358057 141606680 922385375 741319751 817159220 683244225 946687717 56374531 94130222 53944154 273284220 211133715 981336018 785892373 801337497 939903014 983194249 88299842 674307530 851481708 990043084 408054779 923020916 26345257 723392356 60530276 725079349 401017353 935391239 54794710 848258949 494715599 965537978 738390431 755276506 742915350 927182022 53918026 61302249 263383843 993602318 935824434 969903975 706265295 734164594 464125178 681391143 862906918 870321400 737916492 893898461 212265537 495802168 641539991 910087875 727000654 867510658 752902964 865732182 517608358 844279559 852537340 937140842 205657591 926609796 566045369 878873771 954831326 980008657 190863916 477981664 243063773 703598172 512217406 986403794 107069876 167742137 31719378 321314029 96681333 572551413 699410030 851363263 696045258 960330475 474605769 709643266 706547935 781488427 74005975 818302868 727965426 947398587 560997443 772538926 100468590 989155592 815557232 943517954 117038834 661736105 172884012 936644645 113564080 900765745 471035916 746632720 702673975 837365167 147236298 369118615 830176598 968126959 531062066 740111941 886111380 933549064 865743106 883515339 958571292 993725411 505603293 925564929 770803296 963903343 65767491 66845225 217562403 494402985 680748207 717615923 347795885 553174033 23530410 623935041 138351103 306396018 988732090 998871421 726156446 771085039 885477288 998011961 767400587 944360758 956391770 977214367 954078209 971459376 311587154 865251971 587245651 608828124 320772643 652458749 413900271 416680236 517440730 794272166 979250949 981719374 525377547 531288644 403304464 640128698 610203046 936551806 809543963 887492203 710997881 717653753 902213876 980507796 393281139 909205721 801373635 871911830 332926866 400696065 848527909 854348385 212988215 914398412 717895423 921210071 712919867 735924022 387042136 635912885 218485614 523575945 545360337 761599940 152336737 494298101 398531024 926930582 265503737 992508181 542003618 994284995 42972120 448882453 431284299 775118015 705225788 929373396 835741032 996894495 294826863 611815556 366277285 567493581 539745646 904564411 329749660 754829960 78004702 703608036 513817587 866685930 26542615 550183113 359477565 615169008 361124958 617863227 166750229 299462028 117000118 438621655 944647724 957481129 285920343 646534615 332074331 513615830 156783139 193472537 709864263 766670647 239446814 908365131 674341627 687453848 70761187 458531297 953067698 971057139 745692036 919709637 759743851 841308044 950582052 965854592 723211675 892756547 409120956 855480970 465404943 761031016 483246847 566842154 452393787 566761865 302049005 621111582 416938480 869733073 243439954 306011596 518423966 818869957 352999314 449304569 909344365 978876892 625242407 881479980 268222368 918624938 719310147 749876790 886457181 960553948 156154802 874594212 795265868 838140699 330828038 438007182 13675740 682170553 323210946 341046261 155563008 909440900 570660679 611973611 234822903 675886353 55748693 185682836 13986816 108864767 622196273 812339159 35388684 964304289 76497920 818879992 179154789 922144268 826571791 969894247 719307375 785930927 883115313 918272164 708482088 775757231 451561415 658928395 89903677 390841981 123716285 493692002 221734621 501669684 514603790 786575191 772545669 859296119 881156122 902306879 83677263 162264665 99306923 243050457 335086505 456901378 171591474 510977773 149953635 182988739 633666879 950530424 455464037 835578386 376697208 668930823 282778361 699957755 550170560 720131504 863674107 893614283 795848985 801590751 295920598 694304852 148092717 289442787 901032925 983436932 425703610 661103669 411200975 711646544 581612970 591477742 774827357 859134365 641840172 792238282 928760098 969415688 440940124 893854306 116520434 684047461 138650836 323288806 608171008 775713062 8898642 426567341 851429416 857777864 180564706 919993991 108870811 185711095 87724568 545775860 492907182 774420510 978690908 983580557 404035915 408640305 427930797 879461677 996044598 996070397 859343180 860368929 982762257 987369176 769099170 789999504 41166719 571179617 639361047 816769403 649323152 832249489 224765875 524395532 686747433 803320649 968938314 975229341 279281883 969372222 180970423 244868806 839623756 911789302 753349864 974804349 799597750 948844314 797757299 979049595 29884323 976318282 686077439 689465646 860022645 925420233 629456505 760392554 415754523 975819667 713199704 862763350 48160798 603583835 366916490 823235518 893138582 942225603 934120809 954726039 807014138 818275436 243886302 257349247 308224031 680425253 82171048 254517218 358621174 832674827 905085607 912328339 752658260 890274223 793311037 907144883 665249679 794241276 862514895 946605075 409519234 811973976 733989846 974005677 258415965 364643254 350826566 885639795 86292792 868307037 896481247 978911569 295651097 875782021 209280395 985182154 427566927 992060894 151270579 308654640 838671996 860904475 896180865 943477761 21843542 625785081 173218353 714574464 7982826 337429766 880740852 923496994 412288660 780326793 682746802 986470160 837921387 880758577 730058642 825415082 974512230 976917965 537924977 986815078 267704632 474297203 794618470 889152713 357561409 886455963 351416962 858193587 776405276 926131069 314848936 944140601 358501236 973618460 504466372 525135619 49057406 598505743 32761778 76226665 730264460 888784983 121135446 857901966 802483237 996849545 235061769 408224626 768305482 850057679 195545398 914514717 321125971 469754847 42651991 145847911 152841982 342133647 690798779 957710102 680280076 837359542 877777877 964873529 725091777 816178028 225510089 813214328 33674893 214807372 569358425 691757882 151244256 331542248 390485282 936707542 112009841 953664717 224051988 715859375 945211644 997503440 720744475 763182461 758998375 812196166 237155560 291304559 810353563 971859973 143556805 974793747 246127667 448431153 458429814 765416463 990190897 998636124 454229978 924578224 549355142 652132573 772510832 923391204 334035220 750418725 686831388 773541056 419785986 632976688 513162176 942272316 439851564 663831528 298061539 355516072 133790924 976260365 271077325 753852755 795362065 907020163 165090373 466983748 537580057 669434166 20369585 90645975 13119986 191361715 634293876 903486620 582789553 714987251 952646581 997770930 447457881 869059563 439010330 986292012 229313414 835820098 702573367 741016152 816698278 928478890 892161338 924112745 959127401 998629530 967249065 995499568 590148414 701583819 398191161 710954408 135384665 156938871 494012273 505563729 794067499 796131638 209777244 959178109 470858505 880990357 663337825 699054588 277255869 742683086 742642291 830710484 875462435 984875336 996254844 998506378 221421726 586415436 130593075 743860776 768318984 840995507 19795208 343309686 395024149 893469005 935650070 973384985 149485138 416976670 39657881 878232068 817862159 900445039 779435694 935564386 376274247 926432762 468993723 664115214 761713858 852827065 97552830 574497435 587333641 739998598 852129946 868341299 698965730 893452051 242267019 252804860 875734791 969955872 594971857 952672695 908530601 930330732 551848280 642296121 628953913 780965513 367469117 614547192 39918694 665435585 912660635 979889691 214132908 501933419 107817401 213067166 42603537 170107177 216557549 856514883 525820981 948234487 488946009 980387102 414320357 502347246 950672728 958651419 839064347 931627660 812014288 983131962 271194276 465744402 59988612 863176390 188608666 334932421 235163666 765176429 832880715 906493766 913709666 954767722 380879540 804787614 967232596 999083580 327146501 982622523 851273753 919192994 410429949 654959120 423128572 884988963 215978773 786397128 681140240 801197397 91596991 663506696 406324563 769157484 794396412 985039645 892301671 901057373 850925197 986774437 849189533 929089057 250098646 431697789 245349805 878019588 91960347 134856136 506680606 630483047 853389542 897105162 504412368 965781644 568579506 860174285 836540704 979999091 743739287 972474915 885961327 971943059 764421932 956511927 596646240 993407200 591935885 841846163 509378028 871575090 937616819 992646495 886540811 917928314 980614374 995379546 420062225 817292495 962632640 995758762 893267217 963937322 729206702 984704493 203049680 660200605 989832072 997768554 462348047 970731051 462281940 795838030 856263490 886438560 357872954 747591458 248352401 675019253 476685191 688450630 812598496 946518304 318686391 489532586 931484728 979192988 747688325 921983590 416560689 915377739 997026495 999145118 4847360 869590304 194071351 564838868 11144180 134987092 670181739 937644719 718014729 996467126 915213297 938514454 986155671 988170962 293770699 818413160 701385693 754307215 226554718 831726042 268291987 340218138 511068890 846634568 997915982 998331752 714305371 762341264 790854905 857258553 819615551 899457287 212359510 807245337 450556115 623109891 528391268 901319911 327926711 639528293 714179841 792525330 737619619 903133029 395960881 686134721 248213122 564618886 531152963 554353978 551918982 563386449 250732391 979737651 858006569 894968198 442347089 788452442 988808649 993203779 440181981 495072841 940346738 970661150 108790614 132033745 79056554 588784025 270935781 714055972 471850105 664568708 455601199 808989786 301356034 414246457 818200250 855647090 839586541 941098207 213277180 823607631 717057414 873571186 130532164 187545229 992410764 999135695 235248906 483366154 308363878 462163587 50218844 939438597 984961852 996092774 292843672 788344628 964077810 967133438 136422848 238998525 31547229 933658280 112189491 290850836 886079624 931937127 180261168 491133364 953968809 961389039 953719152 985097605 111896086 900733305 492286822 739389926 226046580 238969211 5489331 225853806 479950714 741623135 436032262 472269831 526666297 994277066 818569203 926099240 998304793 998509191 917982164 945477286 539938571 890120714 361068664 955954564 665164542 862576657 669845434 929561087 240565079 548151900 235303762 451490396 112663691 323212885 202131724 845595444 135103242 351885064 848731244 987698156 525830167 935732832 232965395 590294109 933388142 942521881 366448705 942633537 578100613 616961424 607306265 610969165 493444382 884331335 878428663 972624246 101663943 515692482 342442597 702311419 15566108 461623742 559813799 882190814 814028221 838712020 386739381 775575006 282936631 469569802 372165603 558002171 909375206 958984627 14165129 349900146 892317463 953986786 685076708 829300804 842461569 906145599 833652215 842533910 62918722 446049599 76364206 97429606 485664984 658947575 296777733 374633526 923425282 970038100 879471337 964441225 771594823 997982093 784076256 816017668 13723791 431637420 215329619 695971385 121416895 598649423 714268654 959604343 598763784 636433005 670105665 853208177 69815851 186795725 75007172 149349227 727126310 767966807 854543148 986190742 701674258 905740438 289794053 357268270 662205870 947326814 95730821 940716882 699903167 982233450 939210357 982471019 738358920 741744512 518209187 703078601 167215532 686800622 459368107 808040616 247211368 286873737 982561153 995800945 447354224 839561479 354313827 497030610 841889688 973105488 328382540 360171419 830954606 952923444 520837625 605781262 241003369 907082838 242716398 727689473 155856395 220664571 118423299 690140787 662016948 724786794 774867762 901242436 243888892 771363852 22488264 590564746 291768543 333151639 989603563 996030718 99955784 680256108 623342245 657746802 886012454 958478757 20333022 355659092 142249997 508188915 997059620 997275828 452833566 981548857 350117723 926239981 602123223 866515162 384664165 723975420 761290419 790594115 428367449 690636174 124279912 485098073 476907543 912320115 416349987 705670309 493909347 732974084 604465460 649746347 603605650 806294509 566288231 806272904 72190999 351927862 780360700 934963043 413183041 983304008 629846735 715321949 796412639 942433266 214040787 514306445 793429915 962336870 71455868 550233233 66269829 236834623 890928272 923702837 285703231 680613630 529355018 811489165 219267838 707439518 600931222 606997130 674936502 978872679 600798583 917836197 519837470 593857920 190089802 594719383 122474745 596325417 207461377 496028216 937448077 976491801 478924443 654321777 376091944 459828391 139912813 773877467 198923340 766310178 465981601 492185585 103966250 228649071 631586701 743233745 705081505 807153005 338093062 621787852 898303008 955212113 722234023 943199766 274616412 599704377 794393950 881577172 691603081 759082633 821992621 907324232 717860634 887269423 963236282 995351161 968156066 988811805 666058361 686975119 886345651 906639049 157603235 653433337 514336158 853176628 732124374 768672982 346113926 677624900 866954413 963700437 277787138 662746129 449989630 496484201 680241065 938770105 812208508 826603977 677966103 981014762 395196663 519646412 266209843 323269868 986387511 996913820 530363708 833554174 525933562 894484242 217105368 442598728 929682346 930845769 661756914 965112572 476091859 560351672 173411198 299647591 744174296 776091792 374264174 787854327 443386054 932476873 892153962 990811642 221358851 871208032 820472826 821207144 779413922 876155033 74065229 221963400 2490153 837659576 164575907 253428278 189667271 946322703 870473687 904736503 866069850 867569219 87231018 759412320 117953098 482804498 860127318 879078381 499189094 792974787 10222805 909526101 153890630 449448485 377446979 543465852 359081639 521521097 922240065 935330820 915822917 977864041 684209196 751003443 319126681 664401663 148510170 178763037 567510920 578692930 388033701 483904049 378005435 613895127 650577715 762842700 892177032 962956775 679502153 840832987 95415081 577088341 894257026 948628071 295389520 819227749 282903446 794932142 64116844 987452639 770028940 956732022 760789971 872570549 224524620 757228572 6959933 103118238 497901189 511026550 402542988 516172114 773375204 859159572 737697428 782870814 809035049 816779376 559813352 996068280 163520878 279146883 848113550 979201775 940101545 968042525 286689182 723011634 279143981 857787577 636237799 667007417 925526398 967180204 688474102 950110794 808048832 852338039 769240576 858183981 278079186 475799219 951765058 965929800 600907053 608126610 239649725 605492253 610799500 928904602 289454796 573193592 932599125 961519962 764517516 790311077 242878295 562949358 249033371 731921947 614531688 748109762 749095828 842946670 653848444 678033693 932401036 956486762 642394274 693399526 848708541 952584135 288648542 372018565 5155797 469453619 498982057 674473267 442281736 990015891 341020530 732179852 505492447 802834129 803888465 953927743 799066847 878463234 840942124 902281113 728482382 841806956 989081912 994917430 100775357 324013864 745418369 796717620 443170820 731019802 761139247 896543610 210994954 301801212 515934402 612085907 44888610 157339443 946690237 959054417 273268794 811694823 311991558 918026015 148126819 853377183 217238230 935486784 742712788 997153341 983616071 996034035 186060843 367632641 685658510 831959101 720817635 923967318 164282226 489973754 172243128 922974016 318679213 682651869 451028938 597801423 644934237 958906061 629181585 998703945 269273596 538553471 104443212 642686949 192374218 861659409 893493905 912794923 614607608 739796993 483909439 684209175 477767711 952565574 238271277 890569954 261198704 972126425 216951690 505182419 44174167 97439627 87122321 361655507 668037832 895458950 967890109 981601849 158694732 556274973 13647625 981275397 901450495 949491403 542679087 761907322 80152284 347175106 974241130 976614041 16867411 939272769 368671932 586877074 297820449 655015550 868360652 884924122 755671434 988841999 887521685 961529822 249496716 532972855 137493868 512120906 311394992 376989931 395111449 718610217 784139386 821351123 327822952 518639697 504244273 540990423 44500028 906059939 367634529 613487907 701910262 719069907 29084432 945555510 126242764 523224070 30417799 710466473 200734246 926478439 739552277 867460250 392680358 586753516 783907804 956611326 931919530 998022273 679143338 882412676 598195990 992666078 693990077 781455103 489543795 992832385 863634005 914024984 130271481 431422559 54201354 544606483 619007979 727118470 761894174 875043815 777980850 983700520 421339824 611646712 607199476 730501085 771630416 801601687 824166129 886932291 288690638 664327230 194130980 936369194 605752942 660654209 502942780 586417649 806032687 935151431 852948069 911074014 930054407 970088132 594300801 684500237 911578112 952045077 552594307 707362166 528365152 716086595 591176356 872030594 976417183 978301634 707141146 752574064 956153821 988023815 136256285 691091301 345720074 663388954 61064880 82753122 46420597 724784174 235159391 989869350 787863249 893301888 794222058 948084347 100604692 158438596 481619305 805482949 228462049 438414325 300896462 428577609 415614230 749059217 992896142 993874604 697063896 975886025 7595452 211478944 917800611 990770806 987643529 988530673 418439629 490748406 889169326 955338298 513480003 996529087 832538683 894938601 950288655 985418726 115715086 922316293 528954175 809553396 259967868 526961459 350105456 910786918 480072325 547381692 774857854 783227958 741317255 916164563 852167555 885342943 889419246 932450142 237905290 937031804 55182134 811131215 509146699 548426085 431867215 804662016 33202202 922321774 190038802 485245079 992291023 996772486 630539817 668955386 906732631 919945538 140742439 193045106 513799890 828242687 40792556 484038400 159030085 721348582 350621485 885214516 571658811 716271608 634573149 999279535 521537996 968290807 951196057 962920154 308899316 438896521 660235837 830549404 44350643 741115223 264104421 297487736 141539366 562468636 494982564 895175498 345375095 698809002 359672716 837150663 552960934 577706135 375816011 925237779 671704488 802947282 539249144 607509254 401674517 823863758 321828741 565916052 239541764 748343285 929102321 986081617 418097108 472566161 56371496 893476633 208833862 441947148 493527776 748128675 939137669 973744359 322248356 924175207 828702032 908849205 725325619 946240676 991205684 993418870 624769723 710650098 567233809 899951425 720427769 965585869 331865513 898888379 231165260 958652598 564054073 739442699 873854318 883462777 909832009 976928361 448290760 698457087 905331366 907372794 852881915 877802254 561856473 906804968 420431055 467732530 179091383 183193860 225936174 536621411 62718265 664641959 961321188 976907787 88345918 687758448 902090353 989409039 623637081 989602631 941245088 972338053 207342661 337028756 913973188 992762648 190922327 236328570 876495545 931425548 625915240 708563889 183686262 212453158 313262881 458027406 4028530 675763682 443303264 984865067 412698901 837650220 725117339 931315515 726099924 778081522 959073062 968760013 476000189 524596219 281382852 632434376 593657619 867268680 261538198 709646062 51470183 892310798 198826676 610885612 151489717 260203770 363722678 398646822 48221353 237313630 315530898 680855043 761242612 762165287 615522346 850448065 180734211 722625170 821949689 852584199 942064150 992439831 114004171 772486951 674720059 989665832 799583491 821549738 443129372 779004298 847089199 965666244 222077612 786344304 954666597 982574704 667922830 892862050 746705872 895439875 786291942 861639146 274997853 818054941 713692641 867446507 223805867 543564088 801043877 968012891 148322378 280182337 351192321 614073393 525436384 897904653 384288698 779133232 824131725 967981832 276879034 870738504 194266414 884897796 487514039 627227471 764754805 827981989 876720750 914344481 407417517 625306100 376870753 854443135 6267143 656416001 686964507 722797110 962848161 984871105 179513542 922231010 182549934 675304329 784305375 803390662 911725412 970004105 825607097 942692527 3727495 280940577 173609526 951379195 717198497 950346931 898398600 932336227 423178151 873454004 378233561 546124742 833879884 972145007 658235561 862978010 645132995 925513013 972168138 997616654 509621482 819869274 968473237 976038196 740266759 951473320 61664605 631002137 924262711 994746353 841790096 959709280 773626120 868191122 211953704 401970865 810321195 898668115 619987387 861028426 95168353 456386090 731409859 973400970 366118923 502758180 806925574 987169030 21776878 507511462 429582500 882586458 992749644 993295281 254075104 669820165 620784408 965116175 455841719 629086135 488137890 923503389 397179861 603158051 518835383 755760277 226604639 350128601 198169458 710095834 172771038 919131767 803970551 892992765 156567471 968274206 826990482 829387862 726637077 775775379 341461592 586168857 641174815 885713118 703106513 895145471 835233312 961201361 70768400 821799019 880259317 914159421 412616814 704046727 205949629 988956419 651065109 679056886 574326568 624180307 199410254 277059880 564508426 666103878 997637479 998894619 47571297 588163293 851019569 923414453 850534313 973722006 645393351 764025924 453555003 511880781 411322444 763840731 531945893 783422552 613635988 644177521 707115522 871970030 851126430 923290686 911705768 941046737 186739857 611154569 790004846 919351033 377477531 929921771 977462890 996910657 750532150 965182454 289578841 980458990 477746953 845385221 302766491 871385096 173419403 706129556 611912142 843198686 933754075 991114998 184813573 239375565 379702120 855909379 439835543 803431388 768046863 807015930 787150778 878081932 891782753 946293045 109942415 873185147 405936069 689701349 409482613 848525661 158087175 790211181 822935860 915013913 242491233 734231392 453592821 536431486 81107386 692266676 532906240 739501136 784829184 915586830 811712310 833388991 696052416 736616983 750880651 897382704 32921064 927315932 769993665 799791293 218393279 238279883 686104724 733258766 170393971 368020005 484720941 507526231 738448309 928334058 64382256 99264257 525106335 948723459 973252503 982531293 287691183 578524816 309282777 533443137 42271359 688271733 285530438 897993398 313143588 344047831 844316332 922356299 823560488 877184848 735306141 833119236 771139012 817302761 911327948 936806890 367510069 431004480 707476632 766181614 409133550 896048715 160456739 584810171 115902350 448968549 482434224 766050612 304113136 552167116 171659668 913013859 781331975 962901752 399053643 973058968 712347082 813714350 504678612 772745221 551705139 756864106 643671426 870372731 605375424 615634392 519498136 558990149 509553118 675540642 933566408 955215674 288237841 549483156 870714371 979293643 887646730 943400274 388320328 962072231 60177940 280955144 943545735 987725625 45974149 790834795 933764280 950150469 541300681 736263283 595762071 889710369 280029201 326462109 321828989 595386924 36216879 931423379 175232459 360932688 599753164 736388166 38489450 73951200 80081145 911788563 887126861 962997628 793449446 935459046 504130454 723739847 389811670 720046719 437877257 452511961 690268667 927535102 878361514 985530551 289505668 356935984 312330895 429242852 378316725 936465376 852593134 930112199 766075406 999386762 559510180 686082977 282384704 959329187 142112841 320558682 284915308 674954620 283415903 573244926 297516045 491917046 759485031 846160256 254425185 269905643 847025991 847534858 100646499 813447271 963993885 971855576 211894510 500413861 400625479 619982392 379793587 795107568 648692052 932118022 636613167 684320968 655452568 942162388 144499058 499513274 76772452 910033409 951530715 975763936 661907292 918316678 690241160 936569956 989838963 994722370 440448745 833994631 133694215 292768461 407012967 884243432 725615368 850616475 533853317 761672563 508086792 665605448 532780411 889561844 591660391 909981045 972759953 981072743 94987278 169853939 292211809 921936449 146463799 462878349 125831182 330241724 462436770 903127404 393470080 646099033 885835893 938729950 607222326 904008439 943735489 986707439 377774168 953853472 487517558 858465494 403436446 593941479 869283759 951368550 519779789 948175397 904623413 939171521 662284921 919582757 718347263 904589634 246737706 472274281 120348240 751241633 465529128 612969026 285439619 872001019 232768893 344054404 790727345 991927399 162087459 971113569 494839995 686740661 838922860 905089779 909946035 987042924 50963072 774696000 891993625 937711369 24954409 689932745 737891735 890197448 550646425 552735028 761516354 954463289 295951730 368463757 72901116 247895608 744341990 877375527 318560032 815237815 444502936 534276028 981883034 987668790 107189012 666876772 842050532 884077347 909612283 918263829 708266184 887794507 633267209 924539805 428184292 451353787 810417443 937244484 638629856 662149778 215145080 472433821 28192872 365901773 44012489 704673554 316901939 975110733 375131906 880538353 236850159 773480576 818328854 867699141 126590134 456400836 447395336 478223854 938044889 946347327 587927742 654353253 960206383 976340734 962896454 996152977 368304553 724932428 640566746 923465498 563814583 597476977 793624263 945780584 77570739 414250925 570348872 964855283 114762494 400165594 359342088 513698045 599771783 614824877 136671403 897394154 606254369 692554982 750344158 830524734 756980880 778519382 332955692 371865050 560414172 570834932 84113706 709693649 914158646 950431056 905617363 985686493 298530890 960231172 329424847 743156288 610133979 760838947 372161246 935895190 919530846 934110389 430692937 432189469 121567243 842191047 280148249 952095045 520526250 706895202 743414250 788994433 251724852 340821722 842181640 929624951 454844855 518950988 674517837 703701770 876349983 929887054 853892199 940437952 915185387 971767961 975503263 988930918 343949579 938404903 516782192 638862689 749646265 939981342 118022676 939360642 88660958 92564163 605259722 635329778 672027616 737501314 993854732 998060622 697730653 925605341 649490361 751862961 427494875 720190409 622436304 706474347 624334561 639911585 194983112 614631033 231099343 591456624 549692501 765556568 318763599 822159005 487702197 854940480 946935266 957204916 315956818 923380063 399338049 512806109 573335147 870398560 14559823 298025657 93996985 626526067 648993011 975541716 254768355 358421760 587310176 894430403 846490153 994005023 543998598 631816451 922508926 975562079 835911984 923002594 396495199 472059048 996156788 997606127 478868872 679337343 544711936 676306242 567049174 943543724 646794700 703371713 580957395 743073352 447629197 540117164 18690326 65514817 617741933 989919906 848953506 854390176 227196635 661407448 563745350 620740639 858907276 931702724 132043575 332373568 918690929 957537838 777356087 788134492 97346689 802310194 415787561 572569308 698788323 708702417 572246638 948098404 286138640 805550134 612996249 670943146 368089535 577792786 108434793 730778705 914390739 917373360 286620414 626080134 641991630 817482652 488265368 506846699 443150457 783865456 714326189 834027330 436112902 850248712 596858849 708852689 424462522 959271811 774385832 949765722 740384698 764739635 958023171 993312839 712783826 909227084 936043027 958901075 152947694 646270663 740441885 837016455 698168113 876174915 425512664 659436976 255983606 680558041 652821214 666575807 105456476 154357706 265696175 930389665 20977248 527702171 47888092 341515171 503260455 788960382 871690440 913220036 952211361 998577038 446644462 827356090 203305880 741153249 820158444 872830157 887677994 912582678 85715476 761299695 625492199 801207849 696593969 926734077 613051696 903449679 732552396 878469937 63440063 104034901 797310342 979523594 428863826 922974533 63274231 267742264 26653896 430433268 227821492 698003726 121992390 929143874 905676011 913148725 581762004 885680839 706505974 762004521 33278531 406986882 223621404 596370279 941991036 952248489 814640578 870931687 293480365 595825733 611525076 824501565 437709264 593193099 847751612 910415177 473036360 887327939 292556998 433704089 602054840 685663774 7724186 155863370 80763715 453657710 306244667 655543116 762568273 867007921 601392297 981962175 3518307 511861034 255503320 766787500 336207019 368330339 317095202 466976787 631934816 688737884 973774675 998698133 427539282 451882222 15669437 354256390 335836548 909429136 171698312 282585981 69485351 739950004 785670295 788527678 483940564 921606143 227078584 691237449 541066072 806456828 269661445 271917655 737962013 768563449 136494238 773983364 132773529 973970556 250958681 574742649 143902938 297592752 411788176 492547065 592568425 729005819 438874486 936501409 717286646 760689951 303336030 877552403 104076900 821068383 317293575 909319834 585348098 823154354 449939030 582187436 141862940 145591582 746926891 871669416 267649750 496522116 773914885 991848939 630350811 728034692 665586698 790115775 399985210 916301219 79524726 364861891 200768886 601004857 777455536 859445513 144546814 576890348 516552166 630556095 94546132 520480631 642161781 796580735 16559244 135272565 311623005 607720252 50383696 608006311 297501694 406287079 120274914 938165188 172452539 318490730 410858949 493611183 340889331 394593610 888089872 983196865 636760894 695344659 765489932 774126566 969928310 976650696 373188267 443538453 999304932 999310949 20783040 284673367 873289598 991254735 309464718 396090310 635743107 944583668 750925728 757837679 923759349 972678900 615426364 903345851 153102452 352042426 431930115 979791179 222093893 265707214 918845157 933203502 410278007 850419008 30883089 482063249 315761607 754539377 93058806 653598153 653497954 790803760 7406901 755643296 77990057 222814431 784983437 818138212 208877583 646437669 779218673 874331746 245024935 349165188 456948444 814089037 33406503 53703661 419573748 553891817 335057368 685125202 859482016 903756115 561845119 974893989 821908271 904619446 184305068 384467409 648772581 892526192 298982802 426998064 795718439 799760571 702414948 751912471 320350479 669560942 241440927 972429715 637864453 991383448 646610617 797322323 845778625 941639325 424055735 598986147 690909399 960190122 820824205 896417738 561857091 723472853 665781235 961325118 935724745 941513100 587052339 888277842 177833975 919015563 143987389 551914569 577960493 809210623 522754570 979673209 936545172 952271027 248504518 704703851 619708921 965307907 882010258 912368547 401559216 707944368 877123670 909751791 246494898 474790106 764567771 926150112 376474131 744936400 752209851 843124743 220059169 310237589 220793302 384566860 786639651 897142314 400592035 867229715 626633585 830516492 47039095 772672922 845506270 964191191 244873435 851040529 325225962 342612617 632146238 859955822 420182809 924109891 974397635 982074630 323003835 360597948 65542229 160608647 630911971 938391384 369757007 949316046 285250120 849063976 701965794 756425880 681124870 931495076 506837636 657762915 893463598 911888887 958777656 987646621 680081414 764161820 272878739 316614516 194809256 931496852 828943127 844404683 43836065 833640334 921327139 941471569 267034316 652596725 900110508 936756482 634040401 793430197 469534237 490468805 146599424 892213920 479706058 769261526 537532768 688666476 907119785 988275564 651662948 760307439 698772335 720571285 622446038 708983567 458247803 522017647 25381150 921065672 200316407 783965305 411561050 737465824 605748500 984809523 104305474 672880676 54602704 965162952 61455063 533570320 156870190 869050114 73838901 870004605 81722247 829793155 893631843 968425191 427419258 743766754 438691494 862874468 913492181 992694802 920213604 997630819 983004575 986288816 479727305 569995204 633355418 755393189 699940273 972535494 722906462 882083937 748249748 825706856 829547316 931516351 768543402 884191370 541930790 823845701 2167561 256723685 790312594 909274185 660286976 895218624 415707264 673517210 181015690 409247708 384192345 386332965 528650890 907621554 103142385 655943972 959118569 975051277 109679345 473152634 580334295 889697344 70282523 236225143 152257205 400035145 831552549 989566914 880986033 890294604 392300254 614531879 515346445 974295614 133932208 159606506 130574957 788551763 414635619 763240794 25672456 593736882 447432908 580268408 982395231 995697421 247780257 972060117 439098207 736463803 134031262 271839663 564092399 940157987 627956938 808265681 341721690 882917528 122817754 477891002 44392435 492720042 467188009 870598398 667687008 771433950 415516291 770432638 913127227 957105850 509183987 623345286 167776067 332627475 941362425 954011618 62907161 907276828 667251568 703472616 428100921 451910309 883939638 935760368 921556893 949033358 195801598 949887802 260459596 867991453 136984860 715353765 489345197 691417011 831838627 959050868 136719912 174684285 110518735 373098367 699282658 992788308 696569539 881036808 911520710 954730182 489212680 861127584 165880196 559227172 695226293 979538467 294003046 402349519 974945567 982553139 32886125 354695308 824084731 898736035 203594187 451467962 869701444 917050969 945551365 961998570 695661269 975464935 858474339 967750683 653063835 776490621 285377214 881441858 306162870 853111862 786351635 897933584 331527798 447440090 827643700 988197812 647777660 953027460 575395544 726303959 592574040 774844204 377401803 445379451 519380408 689239889 813381107 874590895 186178765 292424363 270335988 440092101 827263435 917718914 157239860 489998558 694930617 845334192 890714788 922096142 714978458 756380973 723350332 869328170 882941808 982086479 84990576 771062873 928043615 984284137 399543833 615946720 472513387 898331820 2830874 45533417 993793365 995050570 981927999 986578088 732962890 954212769 197005347 754648862 295277252 296289339 529851873 751646345 875559140 999134848 196292271 270919297 421216406 764779980 891854352 929481790 126243731 724702973 929420572 938283403 789616381 851910409 740882898 988257421 252138636 323861244 654424701 976650400 776328687 889910263 759333624 998734616 79151020 143583051 914955050 941626343 342618761 566722781 416829785 810044519 294547233 539817290 57121596 567081818 196883898 228587070 134130454 308563300 719752068 978406427 550591853 796491298 219045771 534461644 697384335 950275259 523936217 544784132 473290561 659901069 981932616 987374490 735064511 783907611 300585685 972663576 22107501 755329843 141226220 865839066 606594489 854962325 295363388 681191375 600055632 641571738 279567581 943913958 809219085 871980533 521940022 880387545 490955400 948365330 358996077 754343442 277413004 778750189 574222902 692782682 53020510 603165287 505188102 557681382 321235608 993455935 174312315 850161509 791908220 959739170 792007867 828445594 283868017 548931322 411303174 837817080 93815890 711557514 412912407 638621624 727428970 806863830 98341934 952869979 658297980 862929501 448928272 744504801 7059450 290610272 424875543 451505292 379624339 391069836 968403082 987467460 762835389 975453452 774149317 904714357 993615166 996453775 717613801 791784929 894245255 934484112 326713511 995537471 276264806 950349555 174018805 707230890 258609006 438172233 881362930 991733917 131565246 629407622 995480659 996415615 633030728 990526213 451739568 594540531 702929781 961736474 785239314 943660832 453540459 538844563 403774269 510604479 445065570 572484165 5643367 355013188 246731755 792165253 64802459 816730441 387638724 592660260 145390230 841302051 340202781 930912837 475557679 628029095 333188980 539772787 350349088 564334699 695846132 843127660 55480548 682853986 343703652 917151043 182243349 513300487 330453174 743143718 679491481 894194152 308585680 973866208 628635802 858979416 888851038 958316425 767709737 904431451 822570437 858633968 500810787 551150314 570799128 862678898 688845704 718574332 664610087 665949739 716887679 950125556 864273300 897618853 926950038 976621553 19560523 875059557 426416755 574857100 986017311 998572738 525196890 852662611 655450283 787294774 852700215 881891202 468335886 968354304 664161290 943881585 775965720 993146853 803364800 890379507 216626114 460503430 955091059 969129666 505437556 876942685 177451225 344069119 134632728 256108799 8734432 738369292 906502589 917304482 107700793 831040137 540134340 572859623 914658852 972818958 215200820 792626773 545743316 778562863 317467241 871606180 773290293 878499316 187031934 838832268 759501587 984064329 197199491 426517695 381797126 563122875 386732277 747850468 789663819 910534789 445838042 790030681 645596083 842253265 657938728 802517152 223235521 328391336 422772344 831200410 131528068 552011673 346708477 850311815 933925233 940445236 733900208 893883382 222754445 440229110 631008357 905234605 222734258 340353048 221646430 916425152 604263687 968160545 124630639 348462791 609606648 888238211 295029783 690240938 419228084 972715205 281635412 294605823 644193150 696466245 102605456 330004112 960568607 978159361 109889409 523280764 424068469 532107289 196351542 340102763 390237322 531953809 741084883 935085376 684730004 974101549 109850104 642742918 584589380 681407328 873608315 951716958 862217104 949561372 131203609 151921996 472643722 763799827 690766743 943035950 396565364 572103190 402931847 537684086 249122007 422615617 755670402 974745602 305382372 689801234 973639737 984962730 8162935 762270603 915331172 918042777 988969698 998685700 720337314 749648690 549799363 749963944 893853188 917643582 975135996 995824145 348694291 899218145 236712623 319705431 131995821 519017696 686458044 809207283 565680412 969043003 183375508 769275230 16744476 53070183 737746197 893990813 878503217 913444894 376980680 913610998 848359961 878439295 517062554 758194342 900394910 960598051 428266539 914361631 648342520 900903069 951430075 992115631 127154245 550304654 93409149 240750582 808453523 939837002 124952108 995409770 83637283 833772641 78143475 168890750 875082007 909778927 653141324 818295566 954262978 987214780 504883843 784914508 869946105 878739143 294802827 981507955 730396038 904368034 88261789 894924440 209250102 505537383 13157064 183928223 355564818 479404394 501271713 754513058 981031658 982200420 308127430 979805017 990200976 998996692 692559201 745145070 640201980 976995860 28391664 612092265 162238881 224246474 472209936 612413772 322299683 720003050 841546402 844564314 175062724 881307799 423463638 866683978 14080919 634630557 336022969 549225017 577746722 968223251 278570731 570958702 664502089 818794060 977418713 983304965 551840710 946164983 524963345 686228575 524836048 711205399 701264359 874456512 897206111 956048268 718406243 984849902 54074615 98716915 924484539 951863045 87729977 115297560 182389659 378963957 690657756 831388821 17172195 415770735 327011164 959452921 122008987 703943132 195742363 778594818 157671155 790256266 620947532 813610001 604881200 764020643 537993455 745282547 234385895 620629910 263471756 681418491 246364147 982532167 15071762 138818473 930068501 968317831 980304295 988789180 27962473 358634206 984471194 996401091 192423291 571434696 905719386 986429746 109695735 715059274 116064127 881824962 663072690 741315402 258520193 508161225 76448909 875463258 751582706 807982527 345434327 569517307 796782611 801737892 725228115 729467149 440560172 871789741 834014728 957528993 960602562 978980146 481499527 925372989 481265678 572459328 249188774 289465703 624690918 635452378 608728015 914055108 853580885 870110527 165584874 202689789 22521086 402170765 220068591 306651026 21088898 870250711 326760106 655531287 86852887 227148572 846510985 991135260 204421229 798290387 788832595 883252519 191159003 328631104 198070318 719102480 631883674 790650911 189340659 939614021 644021163 980959241 901802450 902409529 429572026 946007904 640016902 696740109 237053793 486072363 32132269 952747964 252449752 983508446 312437422 394107033 692951897 762206909 233144914 656630372 943262102 982826009 176468761 878206724 16088873 994078658 961700700 964863383 511601181 618779663 89292235 256063440 887649531 993926729 383668741 765154622 192293423 236577539 804995422 860078376 94255120 511702306 510345546 733783650 174613136 318971504 720686116 735251320 280092938 769416846 834521761 899337217 310337648 676928940 922604673 959857626 38154088 755454117 256664493 299721418 509812347 547936654 580044247 788539451 969568591 979136227 469864453 898834108 568898682 815539613 207956763 232355026 904398587 988430156 738301842 969998963 484464468 858391694 325963856 723842699 470315422 688106387 832961149 931633410 28090007 753614508 646006328 942766763 789170496 919687932 844081738 958325533 969721920 978802555 83703748 132748068 218242773 378911965 513697184 768467095 161934668 553570366 765100291 773003863 740814490 973424178 52278351 149832710 841143214 944877190 922967050 973103776 732700792 904989878 431477773 721472793 301425826 944674193 952350531 966369109 837360651 918447971 137244880 261272636 921385177 938136777 159387099 300653263 993344030 996545159 631641662 852135925 804133334 899189582 227390664 745662627 492459916 518905186 986602007 990170341 137794773 701882122 189234311 749263946 608476052 689495226 35440438 792338690 264175058 659364490 783562016 845861186 327879433 430905587 189547163 191616756 669969388 671681345 475248239 555078594 944330751 971509596 954814387 959986700 137586018 425478778 240766386 411596861 890759183 950381968 525637315 875983322 835083660 953877064 232213720 285498612 12320635 473898003 484822734 804010816 191269424 844572241 936442313 968680368 950793521 960413287 425473209 590160268 327288950 773167126 877698609 908975153 334250210 730987561 600458952 910746697 81829630 699242517 223421351 659883561 414276547 542361304 197877361 930462609 561661814 683592956 944621465 980719535 559431897 642326902 944535313 952024592 492532649 965824131 400127112 623040236 70539668 331892495 98084468 609595096 805187948 900801469 497305337 727974853 203911708 547616535 174700044 491089789 473339018 509508526 681867347 860017618 844113083 855414364 71637490 971290839 809107214 975758011 608896848 647453097 630184919 732720205 97507085 325755823 155064990 801089519 255922614 994278736 362591928 917327161 891366817 927938366 957083294 980335847 216855170 852602462 423770233 671546379 454330285 648507554 985834239 989326625 262715906 499994194 271008397 306708622 333368350 387392439 217200850 397512250 138809506 432649037 757677251 838355642 730095328 857842941 846585969 893819742 31869556 47367606 932393326 943185668 172705913 468052520 977276292 979115374 604690498 747669763 868608373 905253975 623773181 689588367 337318483 635507947 975065099 980913203 19038425 280824510 622777440 662062125 426967341 490485907 399777276 968639585 695075427 752415969 969613705 986175929 976955848 979430516 615021003 746346473 213779247 627440076 295960984 828656520 109732743 208170019 295025256 676911753 179659613 912706107 562360539 928545178 515042890 641410677 953578537 961290671 864841883 881673964 169986785 951121809 940914271 991543667 381080521 807149934 814961490 926757991 147829989 516984715 456027170 625976657 746869115 971805582 922522153 938229619 323748809 715079532 160399557 165080237 59211261 219448650 529444422 794763957 767947940 807845726 744741054 911483692 889138002 892108890 158700490 771216315 804407681 944533087 116375157 513901405 561369517 862629224 32310426 86822737 245883049 646484104 747710124 856817422 320823266 914058139 280517267 516548411 529700170 545191259 43200974 977269920 957801897 984659587 698831170 898645222 998560211 999065555 743419361 768113645 507960001 789984081 646454427 734024914 163672277 187052423 358682887 420346582 238426109 659600075 194320546 568925475 218297695 426396597 641947956 872589437 139958086 542166405 698033127 805805957 653856300 674684990 640701613 841340769 343780686 968795896 521917867 548714783 896124471 911085916 22982533 739707239 765247504 963925469 988264284 990671235 715383868 987279394 315901077 342748243 586248707 690311944 14261589 941832378 81898967 698546349 858776427 932997272 56027089 621268605 313607041 678735853 729045746 878215016 889516436 941297842 87019488 232210615 759854506 950889885 25401232 555400639 243644385 423990991 386609953 967570666 443262911 942073590 227430149 470795140 64683448 219411332 914735835 958495583 762936516 965280047 178277000 577589205 753755323 982832702 994042980 995788286 353937701 672176304 156214406 681994281 899531946 979304495 44843904 918960844 344526785 402788325 586159157 684851032 785251068 940891866 946581585 987012668 628594990 870256839 793534662 857265349 59196546 382565272 978458198 987639598 40788701 527554249 400983102 766327567 748610641 862947583 77453212 457397947 986283580 998827473 104625595 393978975 226580719 517824386 393456317 557025003 573913765 709109470 37761649 159920392 975916850 999082890 635896815 904022928 403621346 978767219 179749783 730925029 830965889 917509518 853682806 950661932 497271855 976926561 605703410 933262942 371521804 394250906 152122580 591605581 524312369 662342943 130192915 247248592 437942086 712119722 435755084 869866580 645551233 711302636 634097788 705678195 725598392 775213376 195820466 466692732 516321932 898281241 638592820 779611838 996624521 997055364 154356966 716259399 882564130 972039270 260679554 788293641 40269428 615127801 797666256 962157255 505762961 775613646 642450133 981641049 299559213 569516389 978500854 994445340 494841210 904646815 367643114 822445007 969603112 992835311 510366427 552777734 545336807 901173688 723717621 897463677 41137738 186078907 103532678 178478362 309485461 469697545 710170481 776983020 873106952 958773063 83606793 552855189 769085457 866881120 217804632 323495005 770963138 777378637 832788349 884176814 602480123 615545809 797574372 846796499 600580207 822434344 998679952 999061978 563646212 912424829 505354294 797223650 714734190 902020793 29606308 30707796 290393863 799473398 48466493 715317980 372955185 500705039 920045633 946885175 701226175 944041684 504851129 786523444 56184607 571593604 940659930 965837510 757287451 843545207 731702190 970672032 901841061 918006559 966216576 984210006 633407576 679662222 451029404 746087714 870049078 880731526 705776795 993451552 847819818 943642348 803953430 989886224 874646304 920505619 67910054 929461868 52496328 209013867 146571798 854134922 696299443 944411877 696054823 914632198 326030659 715344260 96517169 955781851 126833527 511917243 171443867 559352736 363588426 619360546 489497126 584429428 165125953 444426311 310589691 692778593 755676579 925999093 965560915 972821697 708492911 961641599 935609250 988967330 855027541 924073063 490988829 762390468 237341176 471923284 21604692 691966936 758716907 875370001 485649752 767850894 593996163 825811108 504655571 637242215 132796795 437973417 914591757 977534348 427548051 574669728 633484706 913835526 278258633 397807896 954162183 958535859 931045811 991447471 435883827 990140848 442084361 643995970 352355784 578442562 123499499 269456099 299602706 475787546 727515257 857546661 606401352 808300500 200046887 601299942 942377058 981772994 212782722 652757819 503842075 873549723 451221557 952191612 646696229 814650480 458876133 619464643 923672158 944911213 767856468 865061525 247494425 875490809 712097335 768270678 52527057 352708588 782619440 862973279 116394351 465658638 319676727 992893224 995147863 998611860 337501286 694702423 602326589 945172764 398328571 631560075 65262693 907050676 150147353 819653704 58328788 676077679 289923226 786079001 322707117 580763121 239511309 528526452 659241433 770053993 513935510 527914060 674286460 808587870 575236100 818312922 448608922 720835336 674112065 844926212 126857959 817286364 403008960 888209682 193935261 727364297 917790883 987699830 287850778 915204846 171127207 644825223 862614400 938682038 266360523 679590116 651615221 747876809 534718532 950352228 386886081 500234944 265878034 875528963 453647735 990326030 910989703 948466002 747423650 994843878 158537100 488633489 128897898 466102382 343905927 917900001 513589326 755249528 353762854 955854833 50949978 364360162 162984562 587346333 347242282 802656732 537846991 862614867 626430009 784416886 595673243 727632801 163738365 404874501 770944024 962229253 837119760 868126184 413226986 471291593 671776865 927000519 359994987 929158486 824551927 895973295 418058362 996520321 835971548 848335675 297140155 407387795 700704398 818289684 715558488 975876332 529953078 794051764 819814639 880136977 784999095 791415168 529675960 676350893 141313492 298310145 778415792 795780698 458370452 958514193 140447026 682491059 991428934 994675572 676749586 743286648 423914623 532363952 616737818 867174950 235576333 313660041 800431445 937211857 203204378 991416187 208989266 784492866 106346430 216447060 312633746 750265838 215232816 940983253 986059791 998988006 569379746 633420873 532314514 889797180 315461102 442632379 287487655 877839237 770210846 980466206 944833837 967163651 817827950 989315599 916042086 968380674 355730748 963229793 829971369 851324393 830809535 883208755 183964298 283583414 794469200 819495679 881486409 973353588 208524643 955766542 844565795 940757428 565415354 954530223 136973048 865772494 691866211 712970903 435866798 453309677 978001375 984229868 891580441 920823507 403935800 606473920 781764650 838986740 35910927 655829702 297001323 694080586 901393015 942752787 295912538 418598805 747611814 762367335 630019945 911568827 903837071 921755213 705756523 816018018 561404543 771559540 839637640 983418765 397675407 802310568 358847781 938949949 227617949 406657982 862260993 964464714 725869179 966526024 803460476 966707943 107345349 537715367 285974786 828554609 550413209 682766664 623416438 948658687 356435759 959894822 266350624 946731934 4547924 615780463 980926942 985848110 483433695 516504483 14795642 499247636 788701992 819800460 359876297 429895258 552706962 788583776 501364192 691349565 340612088 579403624 385152209 439722355 316037576 873651194 297126521 565366831 492863820 868793340 566694965 954920639 541346709 664634204 976302546 998591047 319887162 924569483 300244564 712904407 778060991 945379593 28623680 572923152 736366620 883267053 231521708 450484435 447821917 790737358 418172158 736758531 807367910 853395258 671733489 837140439 510990123 796639575 684856141 688810788 791138076 892736442 357725834 489247824 554840924 698198729 490039048 630036646 808287235 818225083 758319853 972151195 101436763 918597866 881120783 942835429 345770844 863893483 835897508 998241732 970654541 995547716 966961966 997666699 779369538 810165727 792996822 974067868 701428038 762198713 876914480 944021703 687525479 990971371 374092235 416841345 742355563 907713331 97689146 999304054 526630444 642401942 999288092 999353935 827749535 989155869 637041502 685714828 20664922 206370905 657221732 695720740 973316491 989200109 474221322 779286614 708275363 761507578 949111255 976649392 363426412 603360210 387578519 514322440 62786454 976920162 993327684 994211826 325605088 355225449 479092441 889124617 744365202 959381845 424844454 770241296 412374083 489000018 322646587 688416311 778394634 846360824 983449469 984402864 656857212 738763123 685282851 954118525 306936715 388266094 582955773 863563916 245003386 701013115 157642123 640435000 201997448 968239727 644062168 992015961 653025619 927890891 804449474 901221300 989376420 996435764 764447586 898333351 530803783 543756799 729945950 732255302 488961319 910129459 861599706 948871647 422389289 452518994 852084670 949694667 644535171 740278320 167891019 321986433 595807308 690901957 808949585 964102401 481302240 645379950 216399197 803807142 215220429 655027881 369091382 914042243 764691149 770103875 167155060 305619315 427520004 774534965 465827738 578123089 661495222 728568108 116895869 971973424 22421647 963700888 623062689 872004759 535207262 587875699 900256869 925435321 267135485 698024666 903441373 961333720 729177806 869952768 273067311 971509137 966836161 971512917 45878815 660023811 620994248 908297024 383085947 648715571 430382130 995337103 87241646 666982568 368922509 480024866 768915694 942439774 896274980 927942472 379923084 479166714 270416331 838898157 44540801 839611066 374699416 865379328 238827714 939372644 453250836 879081812 420577843 432143561 652817141 856327500 414918738 579213723 532027602 781927250 639201521 772133043 977040295 983718211 279889894 701709431 856214665 961328664 310007611 897228432 477717048 583105160 246211731 511278660 559242072 663975880 614237990 883161466 694405348 804892138 406420245 786551707 10722886 970950463 305071264 667579259 332554007 792612780 422595120 478308991 143985464 886997264 186129373 802768917 903079074 969887997 700598211 808239726 408205667 976684896 834118772 860114779 862208577 947039779 960188448 999308072 482398091 549368928 430087386 971163560 835352652 892653081 407927852 550895372 849298537 870450566 415064758 886462057 366140573 674435395 340611514 395682107 606352625 815709019 698265510 784412672 4454671 400163649 408894931 450293083 508733850 732858280 747266880 858119870 880293961 952795227 161295249 977800954 65966801 774607717 190922610 986203281 560389964 985951889 178985353 690184170 739589898 793330166 335089785 585572691 189956389 401302988 272587427 753141472 123775285 240140005 923289669 982631821 507338548 741293438 262534506 450425065 141336187 783736449 398285103 646015208 717134370 884090947 748315234 931688294 656522207 840237525 590720299 838993707 880725023 901663660 44178312 129281644 876096150 935172836 778125177 877787075 485291304 755892213 744802912 886020120 661179888 664952010 474862199 883546524 372723449 526839166 241781260 769823453 981451562 992978489 431223279 619307308 805908682 916722116 491674095 675893839 899396370 931337406 417037472 620217976 105437790 651537943 411553552 864267428 139883196 448446084 858519869 955176227 951640306 956900641 843160189 927996695 656175375 906218063 325673304 718639959 636721725 806336025 269673274 519149059 967845819 987911581 823835822 974787554 533985536 779223889 754876926 841596796 675435681 845487331 343173664 501611628 792625214 911499111 184282175 739765430 953519383 978620713 459576517 653987101 679479449 822736344 53798314 599987147 758230921 996729939 644247996 672882473 755391471 938869402 443328000 731646327 650852863 729589775 503043417 902258901 193075819 454765477 860302900 880063304 511628099 745064699 948530051 996538191 502312121 887281237 232906944 441505726 978817214 993358102 287918836 406305316 161158903 360730888 229615700 947365292 505515308 972849059 293461507 922389665 899849375 931975243 96976217 837865540 239848027 983825046 309117078 822954816 428214605 907996899 409486619 459622339 722567066 837261225 190225915 400674641 220988546 375082215 69142761 162075319 936589659 973762987 971317576 993246125 285683050 463192298 488843138 554226561 169420210 783458892 551107432 856227925 504248408 525962330 398716378 916695103 153454656 462902156 308373383 637268102 287952052 596895102 51213708 740483740 359861935 654882121 264212197 740100300 386917492 705134447 894114191 940573785 228348715 923935332 326380519 829028088 199837572 486374022 469279591 563120419 574345791 748794864 412889418 444734715 749732267 907153579 273788107 810391587 533631789 673660647 908458948 925898779 591339314 815904590 634585603 932763989 305858799 664044947 381586366 828547338 19078914 390136913 360221014 801573395 969043625 994136254 825471160 962435707 239866904 652116470 397720003 561599501 210217166 598258540 547065251 657914417 916040040 916320414 226489628 412932311 57761640 342852350 358408038 846030360 527645865 810212674 153353521 182372431 181506555 806258785 243805043 948457672 377733345 468992830 954649464 959483285 260029256 788347272 416923321 821331349 445335545 471343420 286329450 384351205 632562856 721545765 127898882 278203685 578924387 980595133 285550323 411336430 173407030 976191803 559529215 631620191 375660343 407333494 194435456 346536887 775851767 936593520 865125655 976074711 394828248 838663624 851793884 868732591 198920530 417449478 353831665 949183160 385009246 881641666 614355861 861200698 272730719 936309777 120256333 466496505 588658644 939538206 40079536 762861963 942253401 985398300 160612674 360189017 198012201 476208967 591815414 601787906 499068855 810759941 690262389 862736230 600809870 629208471 607270557 918133049 506326250 611072382 336310344 408802136 441371972 989068736 475421131 910635656 843905824 977111918 377829597 467718526 315676554 561322938 211284432 225057604 491005496 800404850 14780472 775060147 128726997 560772126 704950894 749234209 627725146 756494525 333333252 449552717 867121114 978221994 580192699 984509202 814847443 908731768 354979706 391068980 522879257 677834097 856753391 865085608 319762922 747267172 330493545 575603786 163635257 525598123 25122048 679335144 36421751 64658060 477763004 548490090 247091685 764606031 726565170 738069592 566445713 771898238 66717725 825340798 316038625 320231279 999056457 999335974 3052613 146060895 31891427 759768921 943382789 946481280 769250002 852445928 648276454 782510714 83085043 219565964 955976258 961861862 943860521 977802250 953646791 972358394 479983099 812634394 210185876 606365497 896565748 991674543 914093685 944979651 582467819 629071955 616790974 630626997 307158892 363481123 438573205 603142530 164529285 646905560 659794800 897430629 762996300 871596279 381631179 442296947 152785123 841281888 964648022 974634709 823599378 832623917 944822488 959789827 471598688 617956483 73547679 605404192 913880261 980185086 72952415 704022657 198636310 901422864 990993601 993073835 972083049 983682856 905456418 933764728 218318030 596505926 280381450 311283559 915272112 953443425 83841258 416868568 366890492 393215417 837159924 928191292 489542904 543658059 294440589 648016023 280135384 453142404 369211540 694236406 996041100 998899675 346509842 970022362 783330567 964411806 593969777 925393438 520347232 683446898 968669673 994660095 25667385 352266495 107793259 364271955 529226894 739755317 974159003 992806058 696834102 956024671 735923450 954992914 342514624 731701569 673532121 986938689 120829972 686307348 377175299 786285867 213129931 340532357 459318039 971371364 728762864 745204676 451135540 456976024 710690721 888024506 56621744 928242940 253193563 744025133 371052016 860603920 307029470 596588330 164660396 662276364 497824952 789827957 357545498 605354505 714016140 826407682 983700470 986877962 404619696 656870107 845805208 926078164 67690495 903128645 935151342 937922473 58850563 437281815 989896042 992307600 112558210 198155645 245345282 647463436 69046469 899262013 15625938 234786724 702651169 829327104 913364122 937317171 257974237 912861084 371529581 376140403 914863270 925838624 394653224 789841022 161001395 268634666 626709951 806003313 740405409 746682442 816930833 845854779 54080902 721255800 812139759 975599459 11155922 534315763 50622182 769190273 554141438 882830512 535345343 925667097 816675279 918315239 888324728 910847925 330978698 581569658 303831430 351926871 554287778 811387618 622530276 849643215 892144962 967573198 780427444 940189672 794014178 812459795 232363712 620446864 38548560 196653952 212288446 574834748 745684875 902042707 824384623 873327518 811056021 959757155 792672551 957511032 157084762 983179040 485415261 667795418 560528000 776651416 630848754 877859915 448291777 944989786 617040216 985912436 527198741 729094957 837375763 989457501 579776453 954707077 759166262 947494629 803204696 914659734 594435873 950763213 961213991 997235977 900754985 962143172 807092286 926251143 96734270 177711999 218526568 931945995 453635289 782232019 666896089 963693776 712913043 751035452 70269583 403503775 743370196 756757400 645641818 712818947 724974209 895022792 11494732 618639904 53619448 892069613 581186381 728064871 558488618 986644138 433243025 585143527 165781725 336351265 393805742 737364396 979015732 988306969 311242795 328369253 312218980 871751309 1772127 277077500 122311037 572241446 701298364 702354373 412846641 495060946 546996460 847538592 60482488 795955943 170580482 338890111 265080148 812367186 675082235 851815703 915967769 980653361 994781269 996553033 7577048 156264010 370743083 830057806 730903020 749873928 761783981 834724586 507314204 732078898 96006010 875844976 462350935 550729161 737901559 871037294 446496828 451928172 599824842 809861444 992466029 994032618 169291077 684435384 706334071 856994379 657332355 992409060 773490047 975135020 308020310 495780203 905678869 916787264 328551826 604181685 734763416 905241569 118067423 987039343 600950059 619163371 616644356 950103962 325017545 446316672 429009291 908620926 517015106 611371122 169036153 872767423 780534173 852082317 382382059 446554807 416166115 602161052 184673755 482863224 457610451 624868575 344548789 837509954 101945239 168806424 524023547 743803318 77031759 462053906 49485815 815660691 937567753 996020971 722333473 867513790 367690976 369276262 549245984 973000916 284511939 536950981 372663173 492801678 647656646 922919604 855773426 961427498 977293195 997983167 223325160 828823295 982947947 995706966 425753450 849573282 757265902 989014105 286884749 336804951 423188008 455906388 633489876 823486287 611277835 869809444 92525256 142078368 789809325 847243517 236551896 701192621 349305370 551276437 854045019 994675080 327734089 788392175 24037156 557013897 553734380 818208046 224574085 815949506 394354855 874665505 756626629 844569273 669020248 795953569 976567959 999375662 423894997 680131566 274028428 642062123 4382138 371727256 606381323 612923472 436397196 748208514 558347980 660908969 174436830 812674498 359702486 410858364 772879255 774921488 377160424 543140080 734718323 793410170 404991345 521084480 294624053 750108548 446593465 913852256 36771689 110341129 924315587 963672137 421895292 977053455 612208573 971421917 448577959 472003489 799043430 994249119 97749802 336060005 43140461 88214792 856868505 995766210 739194486 868711215 301632549 864775706 119098311 814033983 594085529 852289205 130748969 840665240 693136122 806704478 864174662 985255652 506056812 793041527 274353443 476879707 169839427 547296669 272741459 843295651 681834367 949366191 21499496 392955790 824926426 965153299 785242730 826188012 567081116 815017602 99603234 499749465 777238320 966909273 379484410 842277463 358808921 810300609 389610473 930114603 682247143 737136807 417490687 947278141 527290789 685379052 756358190 909579712 495891202 819099562 588444335 597400682 19936830 683899690 163765160 510240044 878283161 940969835 834559838 954578477 859694630 864471544 214229075 763088194 440650852 685204677 22709103 787952112 220654163 646779358 169826246 481507959 936802665 943646347 556685860 726207034 343641211 631217667 254294967 924749754 170476366 806410199 623190787 642924070 440618383 862192471 769812285 927607965 303964387 367141644 368961294 677682846 563432942 589666145 720360511 894867837 229480334 439383005 396860133 884873665 628084075 652322967 816119802 895958084 128566604 499588475 37912428 931775150 148052830 283860553 477262930 829912177 725048335 732658580 778844133 956062693 195481542 564645822 489313977 683693012 376837078 663821296 389154942 494048583 988082929 994358861 420408018 671121164 392183676 896731323 735650747 748837836 489115688 667355178 485335785 776063329 533173947 585039369 538555591 914948422 522926767 742518094 441267749 828527419 679642362 962610114 651854299 752271740 605200020 997575647 847423684 911075697 624926385 857739799 628132103 663648142 759300029 981197911 227577169 332727679 702028531 795215253 878502802 891734008 688113542 835467925 995725016 996146597 446623730 571454154 33083207 472720430 727659478 949237589 149164895 680370703 836759681 840997566 776797760 793140084 55192857 745206628 202016649 682968057 551657431 696686192 797426551 828009389 283484412 497172812 330506189 516083782 860320243 898633241 360074685 917009396 711752533 914403299 696624020 728568080 736165911 957315873 477580390 979803003 20981415 289630821 84081515 99042531 123995039 787941859 332104043 664620523 17332002 478434044 700390037 751835456 983124204 994038104 57980384 982337028 514941236 797593056 757300194 995476214 191756078 209016376 794978670 827242464 783450147 948116457 679586654 823850101 984160032 987572709 817134773 821757444 186021979 772833336 142246587 842837541 751097389 902446984 171732560 515093834 103962032 735513303 837088205 963959400 349259467 820254762 38326483 962906515 858960409 939630563 226060786 322933442 868163676 902243872 544295021 640623709 54078365 233400983 805492363 915186819 629349445 645528523 910323883 955188109 662502227 887257345 745886392 950064833 122087890 987134174 434973829 897236770 129172388 812905692 54706374 365506091 438361586 889781498 366034847 957999857 203152962 856739158 926695437 987550498 370168105 968345657 383953850 574784080 988287360 998533712 85663546 341186387 291478841 327466507 855294473 964859843 916189025 944500676 992405919 993783042 53512586 236475108 98038060 127346410 654750441 840542469 791644067 920582608 680902577 729202046 43811764 115949386 141269065 575088202 199644757 735177606 272428534 321388109 608254772 842164686 439722484 794047049 466504217 870308209 757480534 905574340 190336058 880587454 22160319 336846614 108856121 869726881 727288638 756534405 466088787 473056737 598585990 749270502 32369257 256766679 503307218 682497781 635984355 960991619 714054842 874171772 892163525 972977125 689412925 787564067 849681490 909539920 497477589 652021535 132742127 892127319 549559014 754282477 426029306 919245198 543012317 595305018 678294850 709379349 765074160 773752301 565359954 725893076 469932861 941599057 251249265 905993376 609004540 782742377 56177730 235947785 497574510 641445633 491944248 619553816 987219304 988803134 220729591 278383570 956813255 965166309 658749652 723763107 852287165 923574279 570403062 730259518 688974299 722522864 193542690 557937394 861574627 974574980 737585996 994454298 220974078 969338872 980285475 991466325 58468877 130541395 712021293 912604149 859985504 946769814 205411395 280684356 257318538 318060477 401302107 940826885 885730970 921953758 424102467 764068667 171281268 223012562 517567348 775954247 498303548 782469164 276466618 877471921 594212155 828793244 525702742 618919976 644940802 771464291 668140899 897077128 999191272 999319777 343328448 957957472 945963486 945985274 752454144 938411553 706913550 979786732 728684479 901084439 675697928 990035124 389206885 713174698 970431026 986216984 856189069 873607110 987139868 991641648 804228778 986785518 764748572 882387634 664985237 932804931 606154153 624963782 753859252 845491180 77652445 623051726 479101656 757351425 551413269 925859050 854021601 877314022 247961687 896984184 679153860 964401474 857202698 945065623 405950953 491234765 7545362 133550375 271007078 426672083 493264114 918063124 229277123 729946876 404425397 577085887 573647105 748454908 847717035 986907156 103265487 878256724 712308717 843174999 108120767 958584375 110668394 902335526 395891153 833975647 967024038 996210412 127693847 188566919 765549796 798171630 854954300 946965000 832465187 988941202 436592328 927812177 982659544 989839722 397804623 835318452 432588261 826400680 438700409 729429796 487319217 784112791 710442987 911646260 475606350 685002101 971931164 986558536 550094682 670272095 240551182 325571716 31366989 961027434 967990524 996796357 906676997 998060977 366392790 851696532 868781205 875166111 688991891 904393558 422010350 558117972 349465113 769749619 728664583 941948409 273362029 562472565 947333040 981486679 707221410 876485563 349740981 408727172 153129816 926594826 115324582 738646692 889232665 890760717 648292410 652367434 899560296 920223371 894339855 985823928 181616070 371508220 736666751 808158423 823766742 991205131 719549137 858873211 485577692 566092420 739397856 744548974 112144541 303372640 327620129 373054983 118658984 577673429 839375511 912020300 923454374 925621086 620651239 690738056 656399331 888256722 684188889 973222125 668918732 743719759 185864822 596860131 641453983 836967618 524414997 763046901 680509393 950276773 643895068 880465623 286487334 487066005 307394599 387360317 735277456 887729866 491337409 501003207 591333684 842239714 862466291 977775004 71932506 334777104 890898314 981711393 482415874 758976359 132340420 350791292 997696630 998975485 642425297 736205475 702781739 813003928 129456784 987969975 358629538 919110367 334149737 534233301 676060003 763620708 662000037 967082726 515128986 557355535 807494796 828028644 612586583 781158586 670572373 765080100 778388056 856697978 542840407 951970786 349483386 687513018 900881415 985098390 192519505 969400088 296687345 696086204 727105217 890697454 655145628 664211265 759725104 924374297 31972756 893559402 964673606 989620511 445551764 505877174 662688238 784455938 928219813 991999602 731864877 861758319 454647116 712640360 361413021 717431007 857388296 883644424 130737224 631190629 630797181 697455473 365006741 966354524 476318421 877153236 369563656 478446120 213185241 391317876 732854895 896573955 840012448 976290702 355889165 417963827 299284368 487863105 962054772 964430745 626211359 669461176 780287761 995314207 617971276 970017857 767393589 915852915 763829379 910708297 213034569 514269137 987546596 996819609 385235424 865985331 663336134 979555140 84158761 272596543 944492094 986305172 44633492 677459049 371107947 393854836 330436977 678898466 357075229 723474921 166721695 671512989 168601365 381182302 466997809 958366749 79937569 836999393 664430444 930798975 395970894 972095751 371285115 449537598 332724790 580018711 995114333 997379010 863988615 982842891 499890617 853665502 676431226 830815187 380495889 543339130 97943344 413616507 939714785 953560814 936924434 961938554 158149993 462344591 530545326 665504393 267531555 986596700 639927 63310462 102707276 986286311 377283818 564811465 840826442 885571704 954478596 956453515 852486743 903098028 98207576 261499778 919291354 975610315 479132164 491327878 812524983 955783144 527774943 632946320 199840517 930239395 183320190 811662419 140295265 505557928 421868181 987922286 343703811 879397866 910852975 946605846 856436131 933069688 924792689 969392396 356545373 640348871 470329220 909599795 941556448 973609147 447239867 550803480 801761341 976643675 464443700 826829035 562799174 899164779 441774659 484113859 416070524 677715422 175766388 712708807 719104520 729092510 926996472 970852413 761978 291779189 960334823 967549466 498290453 681696988 296660936 517924796 359336547 760625189 800339988 943896704 949653544 976422502 858654405 900300146 89615320 971017715 512278450 907056764 520322386 607095796 886511640 992985517 538069635 776460608 574824209 727530657 69970395 390805404 318769804 624086969 251549721 364420901 401037229 518403671 776085921 918718637 181820792 270884755 507074212 705041165 911647629 932911764 498230572 760199657 458155831 629369022 563658618 990872219 482222442 494613133 182257671 961537954 304127349 841480345 92954690 800790445 170532853 475977835 650810637 807490365 260948541 743353725 68396015 624905894 19822783 566292231 597215477 985053065 813528117 990707786 158187849 599808824 357697026 599154093 849971908 933847242 673085412 823830744 247082878 812110785 765182720 849753017 303904918 536961266 830914659 831654347 782663799 784400379 435207359 511671909 935591736 967289989 531672852 772702109 872628206 982313047 593947745 944660112 272687223 843274914 888410491 959517898 406000521 993847926 949148467 983319271 394127612 960970925 858330242 967417173 944437998 959612144 562233269 944643538 540868691 681945627 791659581 896024061 61198683 676475403 428108700 607132502 591244216 726983672 838421182 844773757 631012700 870074943 367947553 373644937 420996181 426294479 200544282 779835474 607534207 659092399 997736286 997883389 69090382 262012675 447123077 850111272 597845537 896042923 681120626 941109317 546347560 851326233 417999129 609673954 739004458 844349735 957642508 972941580 51305074 449334107 841981065 981316776 836027360 855611052 948794166 964585227 862421052 912932172 963219454 978129120 915033259 940495254 967579639 969281585 266878526 623834656 704196629 970436693 99139426 178760550 200486591 222241633 308753192 677910436 462621268 529430048 743730244 834743928 7943007 38297979 839983090 944881064 275996535 506430512 128298625 533129971 458669773 552313611 979953166 988736425 245521446 456030037 151303170 412689579 371223727 375391369 869867835 870158568 752112994 830217869 181979497 246026665 366604668 658463874 459220637 904481465 427392360 977240773 207401099 896161875 189420879 541629542 309349999 723484230 51856409 123822864 787291819 873205549 766868890 944693439 766919721 904345131 853023758 947499129 9290184 722231180 964165542 988945606 891176885 932837926 294004876 878117208 95111335 390952450 855195958 954111342 410929470 810265681 846586808 860873662 563560390 870012893 276721507 614476473 264409314 650938898 543744784 782239741 552253223 781311328 430753385 456589439 322769605 896865470 160349474 265170865 985809515 998744918 467330076 918579567 822302249 915989697 401225660 711143166 750883919 837595036 459100526 856141792 85051246 284194443 960687239 988326088 504827604 930475188 951026699 991301862 67274780 508297928 363050654 906867263 941463191 947494997 570866825 660627369 59170398 875380199 451896545 726004682 374188462 717539011 477184147 714238165 756148034 933837258 924143416 945121205 209441914 560004879 73626327 828440503 920031537 954103946 802299522 827291585 294235329 559598991 343039807 414186163 826726792 880481314 178734198 834197593 521063665 780786451 114866608 935379561 125035184 269451429 402633523 653039778 917494028 995525811 630773612 743146626 429231444 721104085 249776498 268696278 7099070 59498906 786509824 894570384 553354742 964377975 143755158 973787745 935704902 963181874 713863940 898249956 692810163 808776938 921714958 923868278 930199966 987583452 857367812 994730706 844925029 963126800 903043895 988559610 660784910 784757339 854165978 929790682 398014822 531436378 490576549 654908716 328888363 748453257 908033369 962359297 775618209 819084416 478834903 686496478 469260870 500338181 597379319 717707314 90525486 584495101 520122422 981141843 587766534 849470431 771898146 869192242 141126197 290424461 550510209 775406843 904841472 962373681 368670839 559318443 921561331 979358753 339575520 941357517 676157715 842489078 841418548 923096955 39531315 981641247 497642385 971857119 909272585 981412391 742578163 956639522 465260134 885885545 165057302 389830811 442285995 501921034 325148079 444044845 320720066 933762965 996692060 998369544 448096199 448837353 570999497 829627453 383902482 548674705 489568448 820627966 49904142 529238685 752248743 992172899 408133108 791559838 468476072 576516090 2504749 381355557 886826813 913929515 726549770 813826573 415510118 909012748 595241901 724537710 890148659 919623117 735709701 858720251 415594221 903833187 994313583 996874134 2746575 667355708 754272588 795008818 747359376 911344570 389490055 897210810 753185844 770263038 845647344 922619931 552937362 943333210 986560439 999251987 335958167 518158454 51619491 348521826 146893519 893972172 819211758 862552648 700415246 906520899 692154284 999149951 979941735 991492662 936860156 950017316 731514045 919512092 109855162 670976695 586289301 593839999 159476954 457460680 839535882 900057495 985614370 989758044 558496226 896852601 501323317 710702149 727716193 924542089 193395918 925775317 620864805 688414205 937623264 952860380 652022277 990543223 830669665 833859613 746330674 973696666 374743549 391247826 769343669 991261766 412563046 822442758 723665854 908341088 62043515 379222219 647736511 782245203 704000814 817646339 90444625 845822775 949048802 974433353 717156413 763280320 734042146 897902837 40378590 786601239 257626401 864992378 222460711 881012718 701368207 860337995 109724303 892283004 770040452 939982879 708671600 722640619 893044567 951937792 64078794 380247205 619257842 981130326 889898514 906606571 214518803 902773948 175290141 386165177 502654454 621972667 446437676 932574513 623682087 964852293 45674829 826342760 50804948 243838143 363145816 971030106 912935742 965151470 977679666 987626400 286605864 697311873 173229258 293359996 882864918 917334428 905148949 942076638 733499295 911291446 490407215 709309274 892537793 895867245 506880727 608635996 916729820 966880442 535151965 792002914 458268933 588820250 636518538 962269666 845908515 977646539 17857370 950792551 406747130 480672277 319378207 432764652 926371630 936774409 170532255 394367905 162144866 976691599 907156889 974846766 709157761 966304727 304647544 951542145 907833078 910845492 767259314 800176384 195665691 324442293 924338081 929859653 398775826 475598985 72678507 307346388 812660178 830946111 432792117 435505363 25339124 595172707 485488542 578526590 190562673 737508766 926805884 985296473 794053041 906402361 988901860 988971215 303153130 864529173 164614628 743678249 176853312 316027600 114217048 354583806 465899060 469286358 487058104 592412782 703961561 835795518 556219303 855362875 317934042 680275360 753197066 811567765 624488229 820458530 665053930 682574602 444861140 671544362 682002721 832824371 769098519 815223337 359972569 549689607 655699966 973954045 314364701 611344563 768648687 832509813 466283462 825046664 274415268 297192649 92059473 469303658 399029730 847208298 11679846 704889410 419866959 668416723 103177351 322742291 246371439 638980730 164567493 392653898 495208629 758535249 277904611 629087480 980900847 981545883 781650115 857659298 253566857 968236095 766977793 842953713 219927110 326916473 93196476 298372462 743665667 771401861 720000960 932841503 370011647 815595094 122517246 835262527 418927328 932225263 231293329 354697529 521095868 579117501 708461108 983427763 135199350 761857710 188264426 524127133 367567211 484447581 759210940 759796878 560018565 577076991 368400434 537542397 918329053 963222123 395190904 992612450 209167449 336600536 524903044 919455801 890158840 901983299 961332121 993817145 418285262 545300885 899446553 981616916 656704350 829914970 421946022 437369628 20099859 467024740 170973059 438249707 231909362 906632016 721149834 892213693 351421492 767263128 229192866 954323192 62139671 420830064 349289396 823816284 393429909 396029478 335636861 794346301 121838278 746449631 816105982 854720744 600890289 711155341 422491623 985840104 903979329 993155482 100389485 929526351 237108360 289516002 232191236 535240632 762395893 909375338 235172085 593069103 889204350 979932167 183541320 627771236 320728935 489317881 877811980 977409408 390439174 647226956 168751103 897319107 183765658 378203290 786259790 866735692 403783053 855036357 525490866 607324378 260126622 529021074 204656773 645864435 877504328 948739137 432593858 517590311 13744331 709970209 568773313 653897637 171600548 459964562 130018048 224117754 351627729 756378850 905263222 917969307 628676088 856288254 358500321 623638628 336234340 621318654 643112532 958805767 73366928 663548986 422321711 846009774 330259228 863805907 578314160 661809462 277956893 992100294 24322705 156253125 649924631 738401147 375111220 761493377 442655913 535770970 443415364 948732030 853739527 979934558 210847741 711894649 533755185 828626989 511828892 902362674 103007589 230418705 921076600 997434506 921379526 955078655 854358709 899117081 66642956 203678685 932254239 997801213 407556418 758673574 385431696 615325693 947279832 975519792 182472847 392171848 985431921 986278470 993535926 995970572 842056565 864493090 63760215 748027114 717665834 960462854 86689040 428045548 758501542 764417638 155966364 613205300 275519345 379409575 662310948 936443276 601162613 807414680 991915532 992287006 697028644 964141000 535001912 693566997 186868491 444529129 401241516 864039105 434353555 700776279 728936703 969976932 495829658 755677258 361962926 789945649 950449223 981549469 195262324 927707154 757058814 999220755 992768326 993508689 300134956 883757431 721482719 848622730 847279843 871698920 134943942 436384247 644111627 861619566 335671879 805932632 491679307 686629120 937686510 959692838 626670195 896835008 645018374 800199720 211752610 418530854 711504157 904755033 753770583 912343881 72697796 96848734 641444043 923267297 793180711 978132131 297789738 463317520 989937196 993263943 844642212 980731066 815553238 910104919 137914258 251378354 587784614 610638019 467864402 838266099 524460218 847929447 343132772 915269005 521942320 589718780 81000799 811701511 650456353 853883137 157838250 519874257 418061473 461765089 383794716 696240372 832530918 980283221 758093224 967402028 711344277 830975606 892848482 975640077 119905742 291223182 719655102 834855860 306111298 798140562 619341393 669671010 84161353 253381467 644109852 829744017 732317498 743619463 20957486 260733711 41775419 172547153 696756438 890324979 911420261 979054825 876704304 923316069 473727112 572922412 47984593 201392506 541566240 623917923 384609726 999139724 2213781 385509779 582785962 587811462 869222822 975250591 380736130 615983288 699856445 959097884 895541373 976822813 440072852 607199088 746611154 830492287 699743815 883505053 413164474 637694310 240406479 423656657 22892115 569053771 484486152 520195667 371213817 841717632 562259346 660735374 452721705 735164811 293465059 683954310 549005882 992129269 481661838 724719010 831351082 906931498 855569592 878276202 143693929 584665434 685431803 783876102 146129907 227144477 476827788 615270866 833934114 834388842 377824711 562890008 374989258 608126342 451319218 771809678 114232195 666705848 477935046 727674706 791021414 795872294 168712432 444351441 349525181 753441205 943035091 962743514 92712534 739110019 274134181 458664659 808718371 963795184 66456 641168468 132282331 483399307 33396530 909496500 487906013 763835094 259474948 943842445 337280294 835034685 397519224 954642495 312623757 964207578 278674108 348902769 970077134 988598803 128809489 743355544 184482636 908703604 828009682 905915311 175793595 469729452 351593006 918349577 457553160 714469144 500915822 741410256 195716571 501983377 251319515 705867140 539959229 714414239 515627508 744024081 434314452 688563223 23022832 359026454 623786178 865702204 574292380 931992088 63446846 312034087 442403711 847836083 104539071 796979026 308516999 760757491 517095263 755172855 99774986 203228654 136853655 301504305 49518026 494385380 935123402 981003528 183560842 922462579 866353104 898783081 360783284 619626865 22587597 599868920 220117806 687844328 287749128 638697008 842911424 986449002 45413287 555914278 590274012 796514952 302173495 537726168 618962274 936309824 826421275 855286849 732750668 839515342 496169844 991725993 67604191 416373466 734570388 860023165 711518811 713990116 531948022 829778504 10432648 203500267 226962959 575898045 691508385 772483079 334827983 362571376 792589352 899118289 819370429 913018664 306675230 650921523 751712883 825750172 585958476 894438588 131355262 619055656 765739816 876586416 473301602 690459681 301425713 804062598 417328851 635847500 643351541 682037825 581081075 640022879 553300702 889845044 838274323 982260308 979862647 983194405 665840105 787710878 78738778 888453896 33534887 70614588 868124781 919101175 563857644 854422599 407690724 926699731 615349530 732109444 142639376 218813975 550386016 701083415 293486685 688081854 865204912 939772137 905960311 935031846 697639114 703133911 242251955 705177603 832163795 849567176 194456178 542395810 179396504 427353595 736359326 972810286 733510992 960703012 674009762 980039257 548035496 729540555 95332160 980622463 629960609 697834879 792792431 860644266 458577953 516139111 278571041 870173715 561242387 716756870 919798584 926220774 819530596 924062303 610497718 885707302 694583146 803510464 198352179 486353583 996087339 997976671 738425153 913754291 572204767 981196349 7513966 790364846 946153733 965951765 366783846 646085671 571898182 806158721 104791674 548936610 149794329 640984423 213255477 228243673 941331641 982710685 612914458 839219279 740867663 843310389 866318221 985241409 435940732 973080993 663591895 992816044 845841714 987809909 549994437 809226710 925685563 926336139 882759315 925171506 589197400 916536697 87584314 911875440 342395557 688102290 150003347 529409166 926514924 997525377 681488781 905248185 86351715 884434837 953054617 997149794 37708418 959050764 274563680 513881024 830596594 902857146 812420610 974245052 419365798 526525174 112229369 904625570 70923297 473158640 433641100 729852861 739277550 849409788 895337571 942312911 282318314 353294753 958374601 967136306 716415632 760881189 702382561 998316496 626704903 713756900 887100884 926255937 165084081 963348888 37600175 884028914 573497312 858138152 936349481 966887598 868409104 928829352 21426024 402032810 203990413 525400208 635940605 841973270 247732475 621275584 987994805 995512753 707774066 806922637 559546519 962324959 259600934 261315863 97015654 886697885 240914514 679634531 715763522 832009219 15217178 474730182 167516730 401595879 118179502 612345982 496853691 837879827 62552143 952162244 23102308 666447183 735748509 996468400 153705731 898332646 74210522 302474157 773634774 990900561 311270527 373086825 249746464 281246799 586339429 923131996 294013500 756084216 496209511 625020797 134658677 831772813 803501791 977258936 860048160 996638355 451882679 460428658 946532567 981999821 353009128 938095268 490947067 819265549 343710520 701286862 455380224 525314031 407663602 574134347 835603836 905441607 287397481 985125769 183809901 729448378 982761404 995927423 699796591 874770496 609666054 750865255 387619170 724480357 576046902 996836899 27856665 884130751 723717185 765317294 162038127 823847421 549244690 675723912 149745199 748199946 355398399 817689217 525166420 913367225 959144295 961161479 823133629 937571810 900985026 922327627 220491129 622338356 901763918 915764278 242830618 706112692 829896494 879539821 684560508 781277480 101328181 757702030 787404464 856305693 172098820 538287896 52897753 857183754 176493396 374200882 221712664 753347366 824706352 863771069 627608515 891035942 761291532 948000840 92570150 865287020 830326389 881680304 402401560 639754240 165573660 932001955 647501222 933546871 383779058 762653548 866911009 965874489 128101380 929469868 777127682 941674530 28974867 309985277 675409546 970859077 111321121 290542175 131444075 658264535 453941550 994087378 606958438 969062930 231188951 452699931 581167026 759997916 306876275 531995708 72672472 584115279 604862814 723372990 720411558 969654304 538423904 688721064 113195354 389846030 320711021 581070888 881837507 893943501 480577159 560404298 280339111 480223391 897377526 990781733 635069409 726780546 635589570 639503548 316867385 682731856 591277419 710429674 558372332 910380826 687932225 697015378 46142043 615492550 427495935 614801606 166022683 231759390 19145879 705436234 445328759 989208799 187194691 887941258 310827017 398681499 469353730 945698761 873871193 950320844 594524237 935137521 6480179 39186523 803686922 868748330 944151472 992679571 797708955 868404054 92423181 348390157 408923268 619453187 136120861 858898426 954935904 964840652 298967936 702377508 455714921 921650623 829727183 831444981 765267888 821332753 755512771 883024055 525489648 766537900 591245462 618452035 835705167 881992065 568023047 890295939 211551483 233398037 387798254 798208748 501564218 846583329 861112385 867946518 325014665 925955823 182068911 961319015 433493303 782576967 218981867 634611927 164403245 441707582 672186029 754833470 424396034 461257991 216091395 746312358 991676368 997272542 952047627 958392539 587041301 667725635 432760410 485045304 477922517 973401237 266969141 322876974 630472761 908586350 802033601 910590319 249251014 937344238 398031503 731926893 353411085 869272770 624758366 747325504 929033803 998324719 155889967 587855235 596563248 783779287 33982435 502012751 205567818 434125258 351626672 528092320 396848711 979223701 413115109 987496461 516259407 785875500 258662806 515184317 751985270 781628767 252404762 825408138 525675183 766221903 617434450 717523367 899587029 973394557 610741721 823408189 910898100 992924705 172502875 857432554 614696777 875379092 729966433 838687537 846001148 995550951 272388186 451580821 236479448 777121460 414996953 784092757 83514939 856020630 935679623 969012414 761433648 796996062 848556676 856906481 612672486 851367171 508430673 771920605 234439236 239224493 38899368 757231792 294756411 801759714 481728626 569779800 806252379 921498866 919790769 991125333 242714460 731293992 148657597 625509911 44637189 699213046 984744673 997374058 638586964 755312826 652284955 820376850 629518281 674902301 710783194 819614061 944380051 958116636 733997120 966213236 595462156 919807969 535228794 678742872 325101886 393431678 631287009 880757701 420456588 453064495 978762247 982725170 670590788 853382155 913639183 928149857 40539032 956313744 676040183 739251250 658027994 801726854 782568823 861230789 455254370 955459269 40021910 143840628 297783884 881501689 298176633 803428470 221707145 882815662 861342967 892139080 661330282 909150322 629884452 997464758 40589582 328941797 635332979 956954801 934706900 990180271 236274936 864735656 330889243 864491521 568094251 682482944 196129359 305750737 319474509 972628888 216326197 474863921 244460521 567809787 136963191 852719866 847387158 896314292 742250306 771681638 946972865 958431446 822362624 977099587 923027876 981737767 615040250 809040788 245964592 529039351 339054266 662315372 136339399 174211751 743246771 824816068 423202884 458223353 812097848 875028077 602867322 686707510 693886504 844298691 428392966 915135244 979599592 982355127 308484760 911326961 971525458 997417313 123413992 461688938 602284993 931354302 580629015 866925444 581893193 828225473 324459793 898263290 498421177 715874074 757110066 785235250 843732708 910339533 79947201 985995826 748382737 833512268 729035149 866446531 798987644 864515441 507213877 944201435 109670220 452952379 116719941 510777405 245868344 716591284 541759703 906724399 205946706 249720725 413342390 716059663 395209533 633083749 775716493 851587490 852000085 990572755 717244329 794221500 970216740 984797503 567423681 587410710 909043373 993858163 865879966 875561423 525081770 702670055 404484954 533124057 117893963 316211745 283556864 916641323 828566297 842898269 610710588 685486834 150629053 199885964 684095531 706013416 87869676 204823696 195693110 406473312 480881736 762721633 385381576 938473057 353383939 399427649 449897851 459984280 789920879 870894532 664583421 961685775 972937972 980869457 789150299 993860540 871065540 989219032 348796269 796614533 126994052 345044178 99221409 642435271 905128303 999027041 28500089 574880302 841141030 900741930 370336358 623526701 553256746 828924023 84736469 833409612 774467580 840102777 876861038 996024774 503562560 944321643 94097518 761424589 61116359 678209665 269483996 277297938 216489873 833649739 473572369 511911366 57575605 135466494 353555361 827189948 599640749 984270342 604616102 935286848 841510414 904290244 920703655 928841735 965819256 998391869 145220184 804434197 101787244 211030289 268486614 568267057 327198624 557392130 100504848 671852696 144919603 876641016 861244326 917793541 12235989 243143844 787061586 939471872 313321977 596346386 738423136 964742357 709955074 976144612 697920208 710444501 379597720 958472676 637797376 887650890 841023236 869379599 574907214 975316486 504523569 582599223 483465024 950424651 716099935 856354271 494513233 908494261 370686881 727715884 582923053 709019198 291605146 706723877 379577997 818992316 633759198 900360844 292597923 339851675 125122907 709942672 885996710 915800358 91412063 324946484 179805016 940006593 518682369 990388086 398471994 629722179 585638846 818956357 427636261 483070508 405111186 834455463 232659252 924064622 827593127 994632351 98333326 247602660 243261242 664651054 519219962 552841086 141335521 622203489 121415348 860558663 299634053 826613526 18269397 283084200 270024058 941630947 939511664 991841821 846498131 937475959 3573468 957461825 488842227 835702299 792191092 920516289 242478889 967417686 648642190 701456647 400701552 907119640 534207659 750875110 199989865 230643520 696975755 863183460 93136609 95804547 154997928 436606082 693846455 728895592 109687980 700038874 197434099 667718046 85956100 113472712 261471739 310412526 980308057 987375934 396527568 749401340 909065286 940482849 638209498 966989165 184612965 324235999 978382768 981534328 778391857 880797094 742954777 839964712 280365026 997582066 487089474 675616040 728090420 847828889 332522921 416939577 8430711 745983109 352745765 597236150 935023887 995588009 767632426 886067617 710243979 789117596 374432321 896251603 646293284 774601327 272938114 776085337 825582584 924532400 276977849 892690200 125891881 480217816 888033538 927836433 243985984 335024993 941866426 943828756 74236033 510721147 771024248 839053394 738205630 779260540 692866128 846072803 994299191 995976003 442475931 896945930 427023825 976452960 270180800 861358666 301458847 787532260 293327974 460690091 230647588 502336590 580900107 962901629 538737462 928702064 239319043 800175211 557998449 941015679 561460435 566423854 281920301 739812313 334091005 380804991 497230027 571580715 289591365 727674935 692886499 959022866 407437170 947128583 933397443 989969158 775903979 848664828 339377599 411687411 257017253 490685079 126224583 964289740 993086805 996920060 903495930 937890024 91677833 768837559 931421668 990788681 262126562 842260316 948717869 962863465 983647642 989905799 434218907 942792674 743046671 818044494 672162294 962729257 760456016 857242107 232838044 895839827 118182054 575568041 17768825 508966491 667312946 690463951 411702681 683960260 992315931 993998851 762674755 965694272 826966953 895139130 945996590 950410798 75542473 467647052 418200479 896625269 42621234 308111305 179634174 259697775 520889420 740486612 263511066 365107454 194092576 292049770 755658346 856275485 437283665 825905388 73533100 385957258 209240404 571163464 941708584 952208132 266151982 441714123 607969551 874271043 443353540 506215929 361811781 440589328 917289288 925357562 13184357 858951652 178632779 263233157 335089924 587906437 123389838 320012718 908186735 922597952 619048003 932992642 555614181 734350379 977475966 991837373 651088228 948777794 726531663 974627887 693065849 772109462 375527478 956347482 492523193 965552494 473249382 791591851 836497680 906223493 234041617 348347908 330163092 776860854 394124313 750097727 138298020 557429507 521589426 615625880 497356266 568883498 925921063 999298568 341503781 672223797 739451182 873946104 114990455 232540034 649112217 950264157 934220653 953101191 24729913 562606959 193398965 427878579 96706312 502622806 559256896 927167767 959812710 980360885 720393008 884639062 936797429 963095988 386928435 756840532 87174811 903978565 727108137 853465445 175708813 243391992 22160840 654104997 269110053 495982974 235379959 834579339 733661289 887016905 361642318 719235238 213996815 973650559 259718692 644047072 884223824 933492501 777304180 908019902 940684702 968353587 706316211 907671589 577167239 579964643 994400384 996148724 85726019 688991403 964818751 967710492 824972684 854391338 313260128 774542073 769709631 785005529 936787997 938647217 765957426 785435050 49201140 784316447 678902595 860267313 868546659 924014875 822291683 867835276 868997454 909621692 957046599 979636745 884743854 961994634 556616576 920795061 235176235 302682338 747464271 986118964 43734073 89743044 364425955 559825645 134479582 905781049 395344120 497108822 358071370 617704983 198004835 205886650 967417980 981812864 227088902 391039409 299676308 971422978 487151621 748261990 200058187 202159341 789862823 912611756 715118096 937789516 210238977 805226438 415443506 461976428 440343772 502095077 364074412 623603589 329862025 378006372 802732507 845020548 238737141 993889686 559442514 868212016 405467010 606767020 875821057 877710271 795756357 833809838 322439225 511828290 83380818 255155371 271691762 585648904 331340257 580887728 421021273 436004098 500720724 969894645 272622093 408596638 127961124 430823133 922459240 982116301 968445697 975426035 675094257 730589976 701257912 856725797 653815105 800797780 79459495 981811222 106408377 573757996 270629785 696187241 802541799 956176027 178406608 794632384 548886512 889760638 788335295 838550568 364043294 659153280 95956361 936123286 969907873 979719573 566766081 828497690 126004503 834881448 345550313 917260405 267551397 531680286 925624439 934555104 522939460 588117108 606764517 767474181 446101641 726956994 385868639 907011163 102952739 438598017 907892017 934170322 267337700 776505393 826055615 881522007 895334438 941646661 779244674 830458048 98758401 172158164 521119801 521394601 867352088 982933485 12422664 278167664 49092022 884541560 187936558 945034022 50984053 798321963 435304538 706139125 128922337 466985338 468287756 572819222 611083194 621808747 841344212 860197794 198053203 647650639 158230672 964146667 232543945 312510311 121884742 584745154 136380222 838399106 516705084 778438887 501818571 898864802 90588565 291539723 866067112 926255481 5132817 437161277 824153244 971108406 841135028 947185615 563341685 786417880 286485022 773814762 730188127 979385316 721792912 725065617 884625639 898295859 542664951 882871372 107118660 336637273 11127690 258461825 983268087 991736868 74505486 100578356 257180773 824549014 672092338 723712712 698652207 728088841 516902678 770763958 48188128 67065621 403745562 908928748 142839188 351081939 769554898 937344777 110903118 273733100 879749295 918660477 954066079 987644656 614597329 874533936 716040333 901799827 411253161 976298447 481926989 531033841 366268890 417261911 801264177 868857599 757200990 818092650 513644399 718783735 510498363 692547546 136148617 975473605 800995761 876800828 961264428 969541242 810299045 844977572 883205175 969260229 829146904 932213613 348261722 735792917 918083893 946181073 91620103 915847862 89709256 721448061 685057186 957067886 293586548 991332481 351931956 838986719 947164634 997497722 757034694 912151260 9935080 68276666 863683172 867355910 497950652 537032620 713656793 776105517 394426821 895738942 263063395 382705204 909355690 952309862 160546413 687333664 303905653 744884709 226061719 962279300 592965618 628914485 737448618 961380903 478067831 516404926 730005612 959679165 988175802 995806850 973094170 978183193 889114629 942306598 527858406 939940472 871793215 992420658 834992333 931376632 945213040 952622758 148657601 687562932 115157662 484929683 818268568 976462966 412555610 425049233 170107226 765034524 538460360 803891130 332191317 948813957 141037455 183276259 74062982 651517564 527158083 751552218 260256360 381207414 984518961 998446557 249545064 676782450 287321924 476562985 846002853 853951447 647598377 786775893 714632425 996613939 820305930 853681474 133651317 528132348 875541084 984101264 611885977 686742901 862523681 872818538 192305287 908027455 137817378 738438989 827671341 989742648 453841112 848840221 223776647 628444662 143053126 785686829 744570019 763076177 609015413 896148683 934103868 991048316 692474801 792038664 696655148 988355843 243212214 895434287 610381966 626011626 960600272 964091152 866276755 893153278 232195832 880096506 761425739 866855460 724717280 969621070 212112757 804887587 701659688 989831801 70094867 893053367 60748703 92235765 386354757 882822884 267724864 306094730 198786627 784480148 734419856 812759224 739247105 991314723 318385690 500204004 897572727 907041177 208926880 717437640 41387169 738910185 649443971 802725421 111317986 447518421 658216573 910282221 681935721 822982543 355165967 698433254 477410653 824152964 196304617 716628588 215834403 265929917 988987117 996685530 388159825 519946680 361407591 663643006 98129022 476469563 214976298 517924317 869084189 869247068 205315704 848182270 940606971 991503863 208134568 354646266 629321603 897074359 912227949 959147841 433346337 443435212 620420394 729578020 878481507 941517864 563049955 740433400 371930006 783442172 678390300 726721897 140004888 518849578 60816151 370338638 394859391 413892001 395657247 721292889 620436679 639753705 510126287 517834162 87049492 261831054 777984501 974649395 748362211 815793408 451897168 828258646 922666877 993913153 306512361 792786251 114204243 116867614 700769268 747443553 58667739 264116201 68907993 853721972 977007563 989802430 552453970 579290457 81804645 566617733 303079385 503528013 448858867 765421710 143864767 704809675 523169233 690402688 817508572 835593663 441458331 525970837 16574238 650780100 296645792 639087296 151674057 963456131 182699488 242007157 347816034 713763167 176535023 358500202 985636909 988151094 987470462 998993595 588469445 784322884 730521725 888477839 712260179 795872317 786529444 856478127 639441935 766714428 862554904 879422292 171293283 947088181 760714843 938804968 878895457 928404223 747147834 916672181 682347595 781866386 868573303 919758655 83367128 726829879 609975591 827983515 806181918 959762026 76041527 591667770 814174927 922962860 817042522 901192956 262340168 417274801 273142243 903949014 726091144 864633488 153087140 308230130 195402084 998706280 255425869 836849097 498022656 572833892 614688922 884165092 77728076 251505589 671586679 752326914 150533233 662361187 695183690 947517981 841524646 926907396 754868300 777767624 204421144 463790012 822704653 951116958 550745747 708114125 770101156 866030667 236382075 685425922 625539892 743530709 3089194 622189846 254540937 997184692 804332070 890900124 272163964 820946240 313217586 551810426 229916356 378702949 327187500 799352635 933889083 974709673 999265838 999268211 7403590 771346969 657588227 760079712 229767836 315171426 822770292 838291192 231567975 478023496 732298461 777333344 242681710 599972043 865678150 958019987 769010533 989405868 498890309 799683087 444809779 644316907 330205973 602548790 739561809 953925413 998612939 999218602 548127012 814914377 26269291 176000097 858469738 958061740 599974142 782853559 366551845 967486674 151250223 482148739 380092940 515395174 805263183 840607824 752743819 897441353 34000587 427082816 572195312 931965398 268597065 330628848 567971620 876623203 460707431 818533930 297079328 633022272 942960914 994694692 609754357 927797649 396411673 530017537 834187511 975329669 679172662 833493234 363197819 498360623 629290158 991607388 567329753 689200526 989780767 997741396 941751769 992556413 821655454 933180371 287844487 540239246 186601470 361671725 224529547 711328493 160655717 363870464 146777726 469709666 150126800 460829689 504299310 761866947 653919630 961023404 348706632 532208986 994107789 999274386 534835653 783851511 842798155 904888039 109651292 866733474 813116091 996602905 984730824 984963929 805174838 965577467 625667827 678790802 378684534 562077102 831525341 955269455 403572080 990788808 732351566 978705218 197546767 945844926 41507423 418195950 529559932 855257630 135492340 932562622 818115101 866527307 319238652 871636145 9505112 661524141 415069919 916999127 61173255 299055698 748649565 816871590 734569686 738334596 479258478 900816453 283811044 700838821 196425332 222284862 751877394 848370619 632463499 758287007 268496345 943686684 832256859 920087906 808552910 926782431 591640911 781759291 116280721 996954867 54684085 342857465 131227525 480740657 160902091 322375905 272840820 752338175 684029355 839616636 498904682 742206846 25056440 448574835 340384519 965891793 886519439 917913601 799377681 996745544 6496981 246972397 471211768 569664408 959980290 961363434 404186694 554802990 341080096 727063902 467662756 606382079 514648086 744868638 45089099 490157692 641312384 855340828 40898922 438583009 833517863 900761080 604170806 998268312 764198926 942747284 137732594 947164773 26574095 628424300 373169745 700626660 363162630 598374631 207901482 559899701 495731428 911018619 45687694 168527166 444443031 574168664 755293737 910260607 987265198 991202321 580473043 651617138 52493317 808820859 896021908 943444479 874122223 902987870 936461479 940554000 762376814 802516245 754826665 994332368 534031268 792394996 691659953 699117357 243490253 662824641 885396470 895520264 466371963 855615082 297464270 543849745 204604583 234298625 45192018 892391251 620250103 802464893 129063947 737591760 870125151 967557696 351483979 862951939 151256410 806673028 777373906 947327251 404336839 778696369 436235295 535597292 821054217 838564867 589409718 908413332 62233268 639964968 503520339 694749068 85885782 859817235 755830200 868248707 277691742 842184279 852080943 885328600 380187594 850396192 165847394 430693980 683424014 815903628 755796856 802738803 33951662 823660758 664239770 677657647 667598152 931629650 269924069 958809330 612847729 891936151 107993247 573820940 949531602 964718286 832937617 866857606 184870810 616705731 124386582 961241770 680937310 802238725 354845167 942158191 289913915 956392965 749195226 983709800 207941753 514431762 410355287 646197066 901174822 948090915 87825620 298265261 521424881 984580591 124142570 579820330 436135010 442835901 889186934 950414981 713746345 896853719 548623546 808166116 2881070 643111031 13002832 67067644 982122571 984006030 929829773 950042606 38241220 239960566 605650166 772256351 631966500 941209875 17478605 783904719 764549999 848303812 392819426 887549461 174916591 438636809 570767381 861150444 633136251 798071646 922147351 975833212 971925025 998701905 724754375 907505809 981044205 988583736 697136227 842898288 69085401 239411029 780427386 824499260 635103000 997462422 602304131 883851574 520271517 769835585 244374034 348593767 493504629 885203337 380667865 744313736 463198955 466957513 969954002 992577589 835696736 880083993 218488269 861767921 291606954 589882827 297551509 895676568 969578879 997837046 657191457 800137765 645603692 713345181 600536205 784690339 746861469 854400872 872889097 918250502 91075696 601818521 478561082 504089310 391273062 916835573 45042763 864379437 288873476 947581470 384746274 768042208 337741144 820484090 267038912 275265404 520589595 739379648 340937315 669155685 911400431 956064324 248838354 485941975 403473866 533292088 568187554 846105507 989922360 998324243 677432268 910413016 948776166 983223312 942595438 954076527 936311933 990954373 330665406 722229019 103796079 231148025 788798506 939730189 307083616 707111661 509787638 708717213 437423121 569772230 923812852 966243203 662129605 673095489 412095637 993882137 212164833 645668957 113376977 515367184 713182961 977419026 594389132 657109451 577781725 923184091 97665880 780449351 823765367 832232643 430045934 658724083 247445519 549903952 414061271 427671398 894686843 958112539 959749616 977991416 725159365 744046510 582178395 790788254 749984242 869153436 1299516 936331834 857486218 873853858 356879602 451318057 42067844 522238595 81225930 491224679 508744521 874884467 865244597 991064913 3915377 606049066 730337764 981406312 956210143 973370884 64028336 342227269 392928352 536674302 430302413 497080129 176036917 600282065 184463535 870568119 961514117 984418247 930929754 988976712 430936685 614309548 603863431 705677235 226829382 663372279 808090918 940576411 455799089 639889358 916706756 936395626 34648088 372436852 886966191 977136797 10744605 665213091 696722330 728760387 419048721 928330794 318175560 536212635 75711786 307068624 149053033 849576124 368089477 889299773 488909202 643219575 834646952 904455084 595545259 900999489 271302239 417511309 373434891 956779729 601481101 706457719 779742329 864058881 447691823 896779060 460526096 669107781 322940896 454069181 368406862 650730960 717705323 957916685 998464715 999048283 303900080 360443262 435597474 915056050 975098758 978071493 372682511 491216710 221662974 821826303 508625481 727546931 331401105 400826245 837401175 864954699 276359351 372309536 824911346 873707352 302225414 745992321 17441233 631398580 835784627 965942735 809881806 900876682 764111929 920669106 93828567 731186056 451529999 907387918 814417279 829905087 160865353 667275707 77045942 872617150 400562904 632590532 329126538 846733880 514591720 754531092 916736880 953615425 418014942 950204030 684131678 772695661 473707079 910617391 785796852 906212643 134143367 779999587 586162430 658441128 811156737 972045972 333997507 549193094 294371253 727035799 902826677 982466358 381529135 737819658 522767494 669178717 754168846 790837173 963344314 965982798 520211425 673487699 49865640 682729895 148237980 467985277 56512879 770387666 957672370 975728333 14263352 951625167 795124269 960200059 691651542 883985575 10261325 282585453 990625502 998626781 711003131 788764968 499880293 514516629 706655477 772964815 973481236 974724691 945308653 979607802 675402883 778302355 164453726 806582097 117016556 166891668 527249671 569606344 309566332 323091336 883360856 898441952 132436989 874620591 563430164 905432908 525739086 604665249 605391158 816284324 159735099 373429310 821220625 878161220 123687630 158570801 505472834 745083353 204942034 506144593 509992955 823226032 563141971 598630436 837569064 968163119 897465508 908787949 982544575 984082514 327389595 806642528 53570567 233862510 850452115 990686391 183567953 616399168 138772695 374091366 836324080 880679394 38070216 299352399 534050836 580259035 690234245 923924523 928040393 949020149 357966595 692316878 501293942 962949556 2497501 20867142 652108892 843908077 477173151 864444521 670482295 798670871 336302772 589433448 134646769 979432569 132194008 347687304 367428684 958174000 520090470 550652547 833273374 838731607 795449871 863543505 657423273 747354776 312203582 398599637 882820445 947084509 830502479 938499691 791110622 984578358 464794727 973637191 45304687 360991754 635183822 640642736 549210013 963073817 107512610 375117971 550498921 958526671 730209715 809998302 396637401 752439465 814253740 846358272 118053888 994344001 976318157 977260397 908282480 976045796 575372433 950784860 219259446 231634981 989723813 997498800 849318771 898530954 434983023 959504476 210370486 361839660 260258467 384568805 698475591 754319358 771875242 867149988 952185423 984870778 622318167 658777439 389462155 789042591 640528946 917301822 171553328 577808557 893133712 940432716 414131209 659384828 486783808 900047847 185955796 556066067 452306842 968732191 765186931 951538092 390645645 507961848 801213023 894201421 336575225 900873769 287548872 622045036 712139162 865149867 408796370 801437312 151020683 351503048 901452234 945023521 397167184 494151706 52004643 631488239 945468680 949937169 584294900 885568380 452979653 978758847 360197239 505932974 635854577 812797810 894139841 895786071 652575224 775664048 168903160 391154779 929110109 988654625 466235286 790026727 729123620 822503462 681461506 817742451 307470205 530535107 571933664 638039562 135169936 177529240 828320505 926134896 669540415 721020351 810307390 942842425 619829813 710015571 610979756 790600130 956600509 997906394 470244963 664592719 502433320 743239210 442028720 670724090 422119246 697494628 185894164 806934197 415981714 831553668 345064089 880038974 402618664 426976791 408270879 602959137 787031599 924529714 33776651 702989627 944169629 961455336 481207474 527813394 965192397 970550917 366974539 911857165 742421211 883648732 250707396 593152083 266048623 340562969 164102633 801086989 606859551 975068892 694146918 757273024 418714719 908007868 270573738 318606790 930357299 952066847 896182700 964967133 934943413 976198692 937738978 986799646 847389472 952304733 792592143 923716930 253042173 308267723 696376275 887841254 166145653 196246495 919626547 928231229 679002379 686060642 828108079 877891662 258614071 587279405 503117275 991325788 917893520 974197520 704119137 788146823 270997558 944555738 550103489 662053877 949247505 957452007 349722408 590212719 362559384 894893684 863897749 870225919 311000170 849141193 552756278 984473485 446288428 697733376 612160428 745441460 670877813 738965364 571634929 810798627 743710866 889800948 810331462 977298838 898788201 961243846 849524712 901351231 370282341 590639812 483079878 958656687 754285364 889665694 769866060 963066869 313311285 968316349 385933764 627641381 802684681 955679388 895029435 901618690 88109376 747417878 801621021 822879265 56650100 382744342 804367208 984753236 93114273 805373604 462523197 956996600 61186822 308699963 850609027 879528416 246538484 315813488 369539340 519355930 771538613 903805688 660394609 699219667 289370963 910943152 844621109 892075599 552562097 759972013 87027707 338680972 897395729 907126310 477762638 785486585 89124607 678527039 715126519 965408505 86717191 144989131 500911036 945543063 85766734 626352713 974461951 984657092 295340032 668811435 936065781 946923063 799032089 991843181 423784955 633671623 18038232 507721388 186460893 504833531 623332671 840571797 884765811 947210842 323190283 503241175 711026871 997419165 433022510 929390334 13724445 684750636 186498827 340698957 400146675 945169590 836994010 883283486 467806592 517336285 224453493 964890699 118967039 366843938 89609972 411055755 851119976 865434662 881362322 923611725 407282470 738524647 104007550 517182504 912899327 986323835 693274927 746207674 773170179 970484426 45388166 830470444 509791725 918059955 256379159 554884169 197212181 706910048 144710686 876498585 619980336 911578040 12291917 364014615 654589002 889363212 683815070 717759468 616362398 806055210 393247853 675555910 710687519 782560304 180433005 680320852 898280572 905954219 665309300 713544481 564400427 606854917 828979331 910613940 55782669 900787843 969069818 994896964 951896364 975211254 974748782 980176210 517563188 871524836 848815262 978460358 538548219 816423316 25413773 678896032 224842645 840581283 737304753 921131141 448452270 667911579 942983479 978226138 756367430 762644028 379582819 826003656 878283502 973582678 279223000 911511699 805540656 961168999 131819227 682537288 434012519 728455030 593934642 777779940 805995157 835675441 8344957 374417229 638815736 939589896 943669199 991136513 651229192 752142364 543156349 550391006 727611725 998586876 370270660 537620737 861578766 906392592 121625382 595285877 153038996 919344144 431120694 496944765 793658273 932313465 567593963 945795205 211675762 357473818 766411865 955731696 173950451 912844319 13994305 572980153 571514120 850209034 698539711 789861462 36199550 219285084 938451624 965613100 488748845 579518694 908066467 975732663 829801213 904204510 376168757 722722799 741056985 911350920 878846901 887884193 863007143 872124685 604974302 609822210 365602509 725925038 803510868 899918489 877094089 880342512 85541496 186401246 215166184 261748191 699386529 958464847 690507346 938755790 567124747 597600046 393975997 892435053 56553888 415896175 728567245 832539550 861196486 862327399 292423202 387855955 966689602 985873854 690083904 946915255 320333869 949971256 847113971 983758103 327793513 675931114 339031495 626799751 242699840 692379007 316565073 816026030 645476185 798420500 289074894 650017804 176887569 242332475 318825398 752288552 871506118 895215043 708841707 753859977 872771361 892996773 598450796 602459129 642535427 959335893 969125625 979950805 627161575 865319825 289640638 386217804 100784132 702640397 253303843 277525636 428503083 884312509 230693133 966116444 890023627 905670645 301378854 927324382 520027666 751503119 763911463 798873564 729372653 735875497 13955125 697403596 247453537 309773209 273046790 658628091 262531038 721903895 69014851 508218024 876205661 946792173 151748940 332886983 130817573 926939129 975434951 998842776 376203285 447944544 761205060 876740874 934271074 949908376 365808027 506100667 267764883 623951755 945341630 983492475 386458434 869173636 421831923 688939408 860346261 919511870 634286584 794110954 943593236 962987254 128939152 446991039 684915460 875112026 366407038 556363109 668019825 941037455 978009488 984139358 75374161 647726792 615391937 926444518 156335541 766826522 988582089 993974132 196708530 617526880 881717942 919490874 759473107 996288659 758118043 920515212 992791176 993373653 806555749 977154056 708228217 811734325 432561750 591635631 599819108 912145158 326342236 401980635 641183943 993388720 469935775 974846790 325228329 927106870 690929160 975419708 629356075 829544343 709745349 939250765 868275085 909750544 617317942 797901320 770398766 960669055 243480797 740240401 923518651 973075484 593418831 884602259 614086878 666131946 759787389 782262857 964161664 979192231 341916155 356955888 813525944 928318628 24487652 461154103 704840407 770806298 749885422 956881856 660192557 854961411 326717761 971080114 667596696 722069111 687765643 877065497 652620981 960487159 479089977 692448573 722023433 938013677 468091194 524818561 122246191 906779301 99507507 599560345 52646364 423796393 248945156 285393733 265528606 754321917 273243216 912605330 491720710 843821151 584118764 820951257 649938083 852673506 320562684 888150839 255173376 708732860 637516278 943124643 297823815 738406340 911442471 927316438 188944675 307296798 108069409 471434963 88171409 329149301 489211311 878980958 962410335 983073810 900096792 915169607 561576493 910629988 833548902 849784796 314679514 812527869 539402881 654103516 678613145 830131933 441123936 981189286 926165614 994472508 75415511 407311002 332988768 709204364 346196739 875715737 757462345 920861581 104085106 471411543 65444302 618532942 469037031 869807533 294002013 827730616 17801797 473665826 148719386 213300632 56230420 381477180 301574979 958395568 751583963 764377527 416722656 418328274 887503588 953962476 581571917 623854952 628944089 897526735 358423379 546010895 941874161 973590226 649886316 702672696 458366088 840920181 50117252 465748599 254566701 303059766 462412086 867679437 527372497 601327502 355959157 488519136 204298596 807493840 904017001 921838323 48908214 324245132 800732157 809635352 177713879 860572632 236809585 438361000 33626344 388014936 948844764 959515827 160963553 531524198 683970979 872049454 433582340 576543904 510176074 714220475 302115649 794576739 956344931 965841380 647103859 647280422 251477472 607558527 95859291 140563742 883390572 907835382 918346309 927335069 843028101 974672957 488428675 956758946 258213079 975030997 854844643 993443667 822710119 828391444 613517937 686781196 648767031 945912793 652489420 716912488 943890886 974946988 525804451 793967955 777274605 972287226 772334411 787319776 152519361 706562765 869892784 899737309 233469079 252252289 358653225 732071267 75375471 360560065 166801440 954070042 483446686 918847844 619842268 922738615 500296482 591129259 114496617 675854219 90415203 712414734 815635795 857443509 327323071 891917361 58062504 89730950 252808116 454600960 944915899 957219923 237056568 898960998 412685363 890754004 43655391 964096154 661830315 685727474 229554559 644125605 17038749 321536776 32381360 720962854 219270342 593905515 344856143 952573721 489021182 628861754 590806141 958250395 322083851 661146159 260930550 681092117 53822025 232037314 701314673 846588191 611066312 790968742 29462887 700925519 207747708 359550493 132403523 222171833 806668367 834089165 227975205 674003676 447839210 933002139 165748159 576394230 300588460 934827207 39924774 437221947 883385727 984231453 786500474 994044221 374191114 980370767 525541873 719156045 601676124 803663661 614926881 725724467 800426840 849401415 917333144 917482984 530263331 646640524 593609717 664264760 942113398 990836799 23925679 538428366 721177378 828329027 775409531 981151478 679624831 739136149 685408477 810022284 796745434 868503839 818801448 890157364 37463052 495744069 983698795 997901069 66580238 458264802 996837404 998844727 446671281 698713704 729855687 799563828 969321456 971985783 295586401 445089664 407597884 547699601 572272189 652111096 895934778 976966050 239911165 402745351 732248606 829713103 314987752 830913672 755607503 854869293 923141250 932992443 97372039 529742215 883069366 901825336 789658803 946106383 558865229 717524365 800479071 849066928 451173740 535878659 893177955 903477799 82843225 418341711 517301002 524647685 801987497 821432813 155335463 594094467 475472944 880639716 550498356 976258603 802341582 914495417 95241510 629157947 616849643 883128739 863757632 955646479 535528690 868289500 97345642 935514342 821580960 944727023 862329286 874985151 147919630 320943867 832621528 901608707 172020681 314219014 464254685 854690567 379488103 623807210 908040305 979609929 482120956 749392991 450322775 729905562 784197221 986769202 794926406 949468421 657802348 671646805 428929020 550134661 159695712 806890059 458889697 699697674 637189495 848422979 27789474 689175249 700845873 735984012 59547025 571586366 418470888 924950045 254149013 808142758 177373473 796059212 71426562 143530868 389291967 955280607 704282481 961148642 132534184 385092617 806268358 836345763 116732223 930476899 696465308 901390670 715927697 783819985 884258843 945475618 591452737 704045326 195057173 432781877 615230421 684020471 28577656 622241776 297808224 990305557 7201194 899199412 880383199 996983812 125871257 126579331 139630005 945122991 659606490 978580248 20502515 22173214 801619426 850036607 545671493 605595932 646392840 729639703 100172986 920199610 892573694 982713304 82021309 542591687 175920998 515463408 237775043 535696704 714201663 887622454 447855838 455023153 761280301 873443127 592673633 595295834 163705001 536043995 845099451 947593177 211262219 467345784 535935302 874069997 574431860 868314107 420510374 873924559 777316839 981040884 705637706 942870879 268863908 572263918 718987 916768944 596435253 624601834 489293288 795138870 959551323 967333594 906114345 940747283 643542801 855672214 331554725 957011775 580007800 847608229 445470922 694406644 797595758 840531591 705701433 724541410 807594505 947555359 574170127 947052573 848098847 899000526 350233213 352684009 455145387 742696589 591586568 945592485 707713727 944632804 456465218 717281713 863648830 897440718 842831943 960913246 864424713 952940923 905003683 971046997 60713159 605017561 443067728 500546637 26990827 561576680 378253771 622340630 505032891 629176803 294317618 948258067 147462177 179298210 507557895 514019847 865508485 972247075 9406535 257164647 301992611 562974299 810262006 967590816 404673888 657153088 511981667 930777572 637662173 820897136 359352337 886966467 889737715 920669674 948300388 988805609 246857971 447689621 885403359 987255294 507022548 580861147 671377141 857007663 956843489 980898559 194481158 882298469 682446844 842675774 494554791 939881399 396343956 618018843 607533544 683229366 192078619 838510706 470617797 884786010 827571896 850636450 917854773 951128014 55630287 232696534 765017197 999342795 287337417 754855450 369143039 816992353 20915076 920510882 302317097 538364718 149363990 546026858 99630027 444253347 244920150 519293241 813007006 837586442 503916541 568608310 389653976 891075335 153297693 918303252 86439891 939663532 745489910 823092811 301872959 598862559 442617723 843512833 364867887 762693866 788218291 935301293 931940724 992542715 338034126 960061323 571068033 626212721 600423559 635939427 561361104 581415321 554010880 759466898 277621085 652632329 485975593 691547535 659783709 956339264 562041223 607838995 944932073 962161884 687385741 718034930 203509103 751419905 589694651 675070259 832393548 910032708 311953078 476098272 655990201 886792419 328036460 684788980 992320854 994093401 762404377 899592725 607415676 672573585 345363624 725407357 188628353 677747963 498517659 657389883 54799442 216336658 508897133 778822885 669970399 967691622 782619991 869961165 246943348 778323599 668644000 685634114 530062791 716375380 124843102 301202561 173922201 670844395 286544354 505073723 252354060 302285228 533855085 654481574 19997150 687831905 123880405 671355651 49829961 810780329 966712851 997281863 857339297 909825369 629712867 802780722 171164211 389235557 776842370 972693441 627131473 693120045 652900114 759543765 22265750 398892956 30376923 509574238 343676730 708985005 244083833 318674800 758090512 839962066 195575605 281188461 411180181 454200705 550998057 677052290 487777524 945617027 223147311 845272173 711426610 757396574 715021159 771089394 907007073 994295290 273083795 314803164 23375697 838982056 225910999 559212879 355434183 888789254 416255775 648132485 798491092 919929471 898255628 902113380 659715400 802249615 44636328 269165898 179433341 665094075 684884717 897175522 187955397 712906251 147578626 830192728 972736753 998619632 216447951 901660873 103902245 314544200 10574605 23283061 783678083 819161400 447412903 637986273 909345823 954030680 543355865 648891845 87117756 634700042 968293036 992004326 199348086 680140370 980458066 982439476 262925802 607366732 108967023 188522784 986164697 994418203 985953358 999031664 849599488 907565399 12695587 314249113 125696973 311685462 801126911 871782989 465443473 895464533 85042917 913160539 344808823 730866292 889420311 894739247 955592427 970894406 403492927 599059039 877977561 921209153 131745173 786759862 218569160 575186873 547946538 858725843 34435652 848676769 572208660 631076050 177153930 737253405 382458286 549431639 298467938 314968072 726396099 849881074 296485150 532626870 963812607 966049139 463181708 749013163 63762064 376915251 652869492 841323203 26113203 473812669 16440003 169893808 637508065 653770940 522404154 739033252 329582615 706332843 271770765 861080408 545325868 827909070 828863154 854187617 89214837 182548622 427620662 611507124 557087286 969985575 375087654 976714856 708576056 787755141 854947785 866756147 222307276 524938874 976327358 990450725 927360036 927661147 989887713 995146132 989486058 998695454 94557159 191427987 308481144 874080955 786450861 894360840 430716249 489847872 619164663 664343504 676738104 770112171 23395026 956701394 196851262 820316782 834230113 947800932 967713005 985725039 518631998 786489284 467133681 869036555 632015181 733438694 479233454 709186713 147259341 573255004 293499954 493292080 401847884 746062882 75587752 861030554 689735498 940591536 152007817 383243674 38769957 924863016 886250892 963813689 831885065 933107854 561148404 589990172 810566510 989932018 462493210 541771504 589144493 668468035 723886530 929762506 402519581 781254657 251961229 500104886 67892442 889299320 11297710 698770803 497145038 578660453 500270978 525518550 362805948 395123461 251832811 667213333 895212925 981059212 645158285 842962081 919025210 940452933 635700083 972312903 762488629 895728383 998261570 998998855 679087054 751709162 755369214 783180447 655342151 694057122 335594609 600455519 552051324 814571992 69111101 507071533 641030026 667796102 548029100 916151749 847704390 920017779 971040664 998070682 381587900 397533508 923179507 972296408 682178634 819336636 237571619 344145333 690552239 710043463 339611194 503957800 462301931 756872632 981336707 983084619 110152460 337128769 699093898 734843167 493443280 919713882 904030392 919831379 221983983 978491414 419594983 960276035 943136046 966546204 411476083 885968820 74488881 663564514 820292940 953239541 88100259 706095544 877396019 901085729 347435165 854661641 623178157 815052331 460826338 891067531 272330507 990209696 997332140 999219130 163523114 363379875 288708863 386565178 791808273 825425523 896611105 911077747 454434995 886470308 366936044 760306156 855932016 869177246 387532317 418435938 99605149 586308547 821186128 880240866 495023340 638914612 590586335 680681768 182670174 578405387 63562465 987232697 200083456 714063770 272264329 388408090 341161248 970968273 170338617 248783117 915482092 963619846 828776498 923073630 64334769 327723674 605132952 614880261 983520965 983613117 964711971 982675701 890153276 918128516 712233030 897811517 309308491 420770868 30983180 172966550 875546694 886521342 19452440 820094525 869160705 902137842 175138722 613764632 619593003 698606616 507765714 811543319 632880638 933296504 902814875 968357884 914699186 934778069 931198092 985601309 361259929 486335333 68759783 721223406 843716522 992131299 697028340 868496586 495086346 841253805 789583985 938663597 276760607 734767710 622180765 785961635 610910831 757967328 551690253 938519136 366294349 380446349 594898098 631922179 939600980 998894348 463618466 588614077 235231376 402882344 77610058 925185662 252885775 768919719 472459303 843183523 671523832 845531635 542582783 623514263 292825006 337296729 954955096 988509478 313621374 520122134 844469262 913011223 648260340 710633760 911713944 931877451 320805978 441946135 362893406 681440980 238430141 519535626 945335047 946991147 9698056 350923196 912175570 960873101 450783417 783938665 705259601 982451951 443169350 470564164 38414852 575066934 11359607 125683757 355385894 760263597 717441421 981973514 131557563 551621482 407554985 620139353 271141221 827275679 281919964 365463611 269675591 638686211 857392215 929817638 838287509 854825738 651265336 665322249 750987791 921523528 466261932 776645055 931305223 966695201 881196272 984249562 354231731 997242020 8315923 11794867 779740469 927984662 220205930 310154456 461226830 935873912 319906918 583863386 723581056 814242984 8424195 312431173 97591728 599494165 659281227 764554550 351390114 490702441 42125435 958500947 674211683 988539659 873114876 957387066 229940622 726680632 977946532 978257445 770343904 994687286 766779867 950783664 145134957 203169928 642085629 768421591 300119142 840324132 919072994 958903015 74545622 936517548 249032788 956626032 460534367 597951657 425008508 996059194 676641872 729838765 607695852 653047887 812689914 940053814 463428584 529312476 826725093 894490523 434168491 893286232 812772707 836267315 879357949 945700011 957573628 993929153 462000796 578144439 710536800 929604075 217664262 425052670 141217633 806880730 323188236 821807144 142969806 584861568 80005380 158709299 546939820 938557886 244615316 537497611 109692417 380122558 736663243 764848328 798298693 823014035 267264936 329651027 544870370 739482677 827176509 872373810 392449175 433317343 952991484 953527430 233389914 834885368 997596396 998665977 324952344 924534809 138411054 990325294 167958459 256322638 106339155 611485921 365046910 710192791 668664762 989058852 107834509 906597389 290304450 857711192 557066673 624809824 357790686 733519623 422030874 807065250 699366814 732811813 819201276 947254539 863202632 981484557 591930756 956431051 559128496 681429216 709859542 867412855 976794794 993160617 72097114 101784225 354137698 396254284 302755377 459568149 560555282 622256934 899095572 915771832 322245121 584215579 459578258 834879168 602396970 856012332 132888847 489258439 330205562 772032177 883149117 887888152 821200449 854557929 651643121 690783241 146698409 239760914 824595933 846108724 62062952 162802846 904891680 935632680 488378496 808191256 592904266 690389968 228731858 524670640 465115850 916542307 827529173 850107828 475185055 912619213 764299416 792394983 122249589 674758327 352074845 948202903 414343237 419112162 757527786 886434602 481188566 533290696 582479180 798466844 397866652 614841455 230603296 436749155 38226080 916642417 553081719 568225204 146348088 520806235 25170185 41589870 339307889 825575448 577516305 804773755 452472967 578143428 657518837 729502196 766380442 861040539 71907406 813896416 445097863 706308419 564834320 690042158 549104491 745415268 335396147 765296792 486451793 705675831 533182386 536848234 975792000 993602264 187582701 679621477 472026119 618176882 342214277 455521320 309987515 487451136 658778188 999253784 807147786 842456841 375280726 696396727 104063593 169923277 419526751 793593104 653971347 719495960 302420543 903930441 364265855 809355835 675298158 813784783 968493684 973820689 884851805 907570057 994505895 996704575 758328674 967132028 742888689 803197815 916304177 971415167 110260300 569821734 306649322 854456949 483569755 742954231 18694895 47278932 188437125 697055717 814124214 831275009 250980743 923976655 776211756 788737509 579734072 676587321 67757687 577512349 496420171 504656461 929994466 986830077 940917320 963222486 347887987 494779890 55076992 950670727 448688308 821890562 26560304 923187015 353029275 729019466 393503121 647820009 785234098 970604877 54535404 255243541 482239024 644957067 510751195 605989728 448696384 450650566 335512492 526643284 128036490 858735607 52475651 596550435 425849002 598759717 780125660 915320529 673447897 698752357 39981279 386799986 361272640 958418067 328841008 932727384 707465060 895294969 699427380 713590246 12159264 834577801 710400732 967565657 587932494 873926869 668133641 711003257 738935268 747448450 413738503 751093879 109929041 256987139 758831516 863793922 177869954 526815631 192509483 430276187 897505144 963920707 484449436 652668726 703103184 952765659 501734138 784349867 142942683 860525448 346120268 707727500 452244569 798220754 678377686 892954191 668791403 987658748 489743955 644126336 251242527 496104361 824287904 970406634 295921678 571269105 447365200 723068096 156841906 782548976 688049864 751576234 616265861 837083095 293364137 660754271 394624141 884001781 284746950 620525168 935631382 974936884 998114676 998148763 730933508 968061843 598983608 697423792 963597345 965185569 39844424 514358238 564051883 842485932 479915637 837626804 942398782 981875747 524723278 807317062 655835650 739805539 805081653 935286442 254849811 814719879 483626155 911645384 283743642 844410967 731900820 877176559 537307438 897221959 778325577 958310328 643578856 673251715 347915876 845393812 266073962 825582852 599235835 756588379 237828213 879411894 614010545 828609749 144438997 627234150 339017480 958481771 284787064 929561346 834552649 975546350 45647669 834794417 512777328 576815758 410266172 967759449 437867970 778960486 422574562 847913324 786902312 881194526 243510560 395568566 530870431 949679587 232956726 598560982 490718314 801618953 855646194 972330413 727147454 760700746 65059419 837670755 368569857 639921586 496133595 763967181 706856139 756716991 8528493 452894109 974724191 997345143 31920998 460324024 391020192 754451256 20962179 913680925 886820003 985395918 659485332 942109589 648626079 853155927 562163192 666766046 970365590 971417835 122832298 723558979 758827509 928304725 392591149 498089127 849281436 989204449 591546851 949753324 576818289 882759533 886323290 970759448 543856325 865398785 63310954 363552017 732764603 923261589 214034447 356801838 353869561 802464304 73391387 269371717 653111413 827433205 727808200 758071802 348514045 371489336 927868119 950964854 780012276 859560893 110527104 189199800 654811660 990997729 21443275 398273561 559582023 937120074 855938023 884859515 351842903 409953565 686118818 757236308 788518170 968803517 887434958 985873177 724651478 736451283 208608127 753627788 420207713 986345198 717359062 755481109 749733116 847666300 155643025 668427134 161128303 593221169 469326013 949693503 613224944 959772708 556817825 606420969 477490833 601632147 461385723 770565858 204407522 369300844 863215088 985745977 479699833 686915940 795071162 810183458 390317125 837056735 716660949 717377036 514423465 775495777 417545402 870733685 248026421 320327379 456410263 898685868 118584274 746667989 808603037 823069008 126332998 824916715 79592633 513790939 756411909 888014412 498743031 556912487 42437646 483321904 276840153 911406627 190926451 614995164 409163352 674187507 387317716 734245145 192865651 683446021 861562478 888415759 938088014 962727031 944140699 988182934 576470235 685915463 845897308 893335251 58531580 183116462 333988155 634470425 651370215 719831463 750815386 792984132 942519198 977674557 248783624 501530523 840768243 958794288 321273080 571916023 756436611 806287490 961142372 998561422 155500907 693345406 904546445 964331113 847833809 965340492 320996369 778842860 108509697 677947518 764811367 828398406 158791992 385493843 113690403 279052423 659533641 931977438 719657329 851794484 864116770 988750337 680025712 834399502 990168075 996708074 901634862 996236953 744676709 789195158 18130868 833024175 135752369 614497863 735333398 870757709 849419341 941453182 488052686 867134197 991717334 994304912 880420735 902511014 554551611 637054177 809915251 940819505 88798209 995830474 380299975 385591633 419040919 768045792 943317379 978658657 497661385 576746731 29277082 822223710 821254484 905072310 214705538 276095685 880733785 898222797 596354946 716428209 314244550 734074893 621324623 820053121 803213193 999330527 510632231 684031455 433584914 959655939 47600228 418990178 881031043 885517586 52070364 676902248 398255922 439298010 431356187 674281623 137932601 149268327 934035189 997129861 827069784 944893217 525958946 846453719 459538514 870195802 531116610 579345467 959885143 962938500 919642627 989039592 121935996 362329443 809536779 878141842 515785811 748272014 297801136 929548964 972891112 998838027 488771771 819273433 971724002 985194023 47397051 830391762 12424796 251060046 302904679 536373738 428677158 527547837 499872814 670957177 208304753 425228939 445040373 508673779 547000810 671741371 605938398 729286409 712649137 794843457 594870713 737434845 807817841 992703333 363370822 661286925 565362164 793353565 490363547 650245523 345788585 637678320 434467448 729440055 225610791 706983866 193683928 697084539 987970944 998728046 243586195 823995719 799373258 931060468 600336307 799745142 150847391 804409543 808241021 946953128 482251763 628340766 750796669 886355233 439626603 690712166 786129987 936917179 911190427 958064630 60763314 900264013 820352205 994099779 710805698 972335273 527387825 927065798 513400445 549448964 499820764 738857069 291647247 847355341 653632630 891225655 662658177 817382286 370427567 761194362 369157401 388741889 266001732 477339493 490592449 563653526 958244050 968857831 810584416 918081795 779128351 940997500 156062079 535629974 846636866 857158532 922028302 976311965 563726271 676452243 501344411 521981789 523596698 767143917 169878591 443908555 338576796 898494356 309059362 944916290 356484849 796292120 166259180 549275348 585140942 686281630 735497783 890927709 517163618 947842484 474706407 531255475 440385704 442489981 311776197 721911330 132222912 780377111 455009116 940552272 206061030 567885510 356344542 996287598 553405210 714340994 522609839 672792214 864653771 913268865 875812829 976814696 723018897 936539535 283452374 477322750 815227529 991909353 957986691 985799969 560269021 625110893 1636369 51165868 188861547 626794107 118057279 451967341 809385502 995203644 980717550 984605768 91434536 423615807 666341627 713837676 54180229 500467630 326573817 567942529 632103359 656417214 419310974 670995008 469353328 542477853 607473287 619385751 746980099 921984324 620369902 971899900 961213759 992763339 470205801 764440823 417517728 986518856 64674642 587488842 496665509 533955731 182462670 896224161 270083676 796733373 207901768 982965549 594614015 972373162 630665408 736050724 453802407 529590703 812112687 864461801 721851918 762152852 484574326 619966835 541861105 996252699 50445557 154901740 389624862 508415283 295354678 344077343 444710519 573510748 306693358 544867262 579360462 812438347 218711012 495286481 464772086 926185556 435623537 925219692 674390836 924258523 842773776 994182423 526889368 904219612 784079384 881772180 386450428 993947978 790860659 834468833 353065136 944989041 825057971 964072170 475733935 841446806 386015707 748196389 27387503 837314337 863761572 956653963 112848939 708450579 64642141 399687664 945847888 978579912 62005089 597471960 626041704 823294769 706796862 996614705 730751199 822846990 210853790 427116557 276555749 441042570 496922204 910577525 966993354 997413272 910522329 975397483 313010859 986955947 141281755 955252212 451237811 803129477 521053536 858757734 447111669 719830236 935040329 994289327 529639191 676798327 879212342 935391690 388410430 470630899 33459521 88244120 349283908 513124549 364856469 431818960 179614879 597232948 354477359 663412748 496723085 916083048 360243109 843949324 279395588 907149198 364815868 945657967 687008757 914265429 341913856 929206814 66110287 854051406 238817834 504756067 196946108 376959817 796573781 809375036 994031091 998467848 896557306 950492205 6102784 546441556 630562120 915234880 71125776 862051653 654953354 758835015 488598162 981430176 50417313 275717039 644816514 833098693 589883957 614309687 166708621 628907079 454959082 749376346 104962071 336873669 970268985 988428868 102061196 562834896 673708884 886636093 747528442 988296057 951014950 973832861 610253861 863318263 907520201 925487077 803047232 948440630 525648575 808012589 42437905 904066709 105840218 565924767 645595367 959962301 373323628 762637113 698797407 817761411 872283301 988058526 934578627 965589934 844006841 865622936 658748944 742526614 571088518 913256772 927714673 931596621 847142910 940268094 451630216 531611318 795585847 913938199 252495099 532636424 764076075 989503817 721333081 917816702 38033304 441384911 110634008 295561182 948819454 965890565 74856305 330002703 147678644 372478401 386319812 790081722 735795767 814761663 820586291 913851358 437545599 968844676 19281610 766687342 62703796 799688594 808121086 824008523 406499524 877917359 100111678 181494481 950648405 992418692 56460699 303518741 764057884 872764062 79593109 897746139 442805603 854475167 389029125 681153783 592375913 618679267 632754296 689533114 991683641 996146769 605996959 846486844 910966442 977543474 277333277 424054627 297804652 968118482 523788335 774426697 535939680 988474155 219393006 485980365 402634888 523770132 194385364 524952665 56444682 882642339 448848304 704514337 373719424 974609838 917458674 950559799 843706485 978022908 448137205 913892645 302766742 389424775 323347885 545791142 387026362 868289618 762937967 887008559 651589582 966712825 34667296 81956439 741699775 776294196 761293283 817818623 684986550 861283540 399442909 719103287 162088637 220138972 996477358 996786976 384747732 781107417 891235365 934348069 89975563 476994798 413424602 571304378 788207196 875278899 53013615 894544113 454631889 985153867 464557924 680337341 374588048 388917426 534666055 831753365 433425081 700337572 992626743 998442095 736395339 773558158 534987653 891053293 841023914 861177647 403197628 499055185 882897600 976742275 124872092 345351278 996707232 998373558 277146158 993930707 534745272 743507765 689991633 997614926 898679669 925395741 394248749 588480234 626119705 912041709 443641570 490996769 179224458 290960643 430664658 513672585 853249196 881703518 6872623 434958922 394639037 799277914 897978574 915895012 944510910 970424318 110272710 717505019 277965999 848452822 736722216 831622360 254033748 471526643 338694415 587283050 880136669 983427810 159378174 374789858 792959768 964853199 918641119 926753386 94998263 573661856 75897900 480657229 646658201 653398839 733645108 867308074 221322811 922806741 615994098 924350732 28952902 220489530 605531057 838642289 239269826 251147361 761822379 991256925 943500742 953030239 675418612 912811944 36396337 235562189 292408431 642463003 988977053 994486235 782508454 978948875 989209714 990540240 917471989 985276367 6008061 200710634 781549798 797876116 210222804 553745440 597165732 617731467 929065069 990168372 585261743 687827749 511645622 905163391 118919080 979669443 134151095 360471164 592447 471161711 786404254 883442991 770001368 839468083 636433599 705906713 319217341 440622435 490241709 527119577 760163590 762211083 845314387 880638588 168973895 405995352 41479433 183428097 235941209 700565465 295029519 487653711 667792130 717183955 558219511 568531482 184383229 630444079 961022612 996600304 581568556 981691291 637389944 850480712 327096995 801042566 625954320 747729482 345800016 938106988 487772217 672908475 768490826 900967736 331793031 577908793 464701056 845333143 272630439 743157898 468368171 895168396 100806090 624692932 828728858 950054313 97739795 887296047 650302026 668502003 799145988 885470999 76037880 783182468 920673365 963159008 492721773 629888010 178605397 958532647 193171219 842741365 531725298 538008572 486735966 504284586 208757040 546057062 707274247 754297374 255937420 380772628 60997524 71960829 572513748 578856817 887075694 916213967 292237012 897442294 823901164 961774620 1042159 364513944 862792002 959831355 388589314 930112806 760018710 849192207 177039387 456024032 75822287 462839551 440416062 861195869 384274718 892212855 138807480 608058824 463755966 553967687 507341841 800644291 997243795 998093497 817244609 921460935 470773797 741856103 257610802 297909904 66940104 362309530 677345552 856491020 42087375 901180828 251989987 462362688 232249156 752449672 234369888 959790445 629335689 654592347 563854576 860973610 116401796 983556807 953129027 954737177 705702899 834082499 466610981 942510640 126931707 242015078 206531319 773932004 626470893 793249409 211683478 791475368 664845228 788414700 73718314 682271979 845641791 937307670 149560454 684435852 904301663 926611004 901583881 987040172 272131535 628515886 222439644 432299005 933862962 964470847 791189636 835496520 162010994 910476416 311249098 485282049 751066064 941513420 305551215 953935235 451342651 833440476 734772619 932074504 959102536 979332433 512319304 849301059 688657374 936012032 787491894 965872183 210356100 636183256 647822682 755366769 622345792 841666967 808431213 865720849 714993219 814775343 455152724 461635587 828860677 837013573 952784711 998210192 777411873 999053054 916398035 994688357 981995200 986652616 668524410 771082945 149323753 815067829 333105148 500776929 94265873 275049359 201272279 953030936 866892580 983553089 713489907 723736136 680317516 748450610 985042573 993149298 356711730 881181195 799421215 957829036 275404952 942692777 228152529 983241493 281390668 769327689 648347243 678242895 322450230 784681030 459317272 670485533 788620458 799727015 354651277 909441593 324068507 812397121 524086960 821120263 827530551 872584662 170369892 423233903 126939131 839933356 179563776 435931942 897349121 951787909 706058863 806199237 491444115 740392224 115272322 699528903 925187354 989601576 618753789 738202068 788497483 913634411 164169619 962878068 68929620 179141528 442736349 840878665 321382563 650756908 99153703 458878875 59775603 515959436 304880274 693365738 995282521 998845002 686751353 827118665 6819700 911260704 111870449 267120036 722396962 954973346 279844189 992063143 685997245 910953615 68036966 502729854 687632165 919567496 905697489 996796492 187685977 713330780 455320282 696252860 178624891 588984954 939343738 940201645 552722115 670975693 794112695 944947265 840422592 923555095 397514222 944280271 275095250 981712634 946931941 978118294 982887622 985068464 703796014 716736816 31259354 795299612 757174282 973570855 16708342 797163392 488546569 686679030 214819705 370734780 513890766 823820120 445621372 623790451 412645990 612315850 20720192 529099535 492027200 658061860 132794556 321157291 899359331 940863452 800254723 980737650 265437286 510921546 355393076 487811824 348310842 901544756 394239701 497287417 955577869 956797710 246997723 777002182 650175436 867760359 742759927 937636928 179648333 226600829 304062871 503870053 480219282 833954609 465157425 474045585 547570391 692841320 892617779 973584163 262346867 960121303 991991505 993711829 684320465 694465459 164494631 238953248 862721603 926478689 436559460 934675708 633164606 919185487 727230449 814218301 585127724 621278644 352939726 764774010 283321218 706037506 724951781 731481530 624554840 676290160 992260128 996089844 755523679 934449314 656704312 873205480 408409808 616559427 714895080 916806583 831884168 914613651 985854653 995474073 780883089 807216459 375141583 955073452 186698436 238127056 483163367 591183595 844852479 946317562 288374506 611946202 819510008 935842065 866871532 943917213 406521475 559997263 512431252 663981794 781793220 895915301 58863316 373219586 458318899 713255221 932070444 967095585 682159848 882056091 904798966 995947735 227979399 325164983 234898659 786624714 759909843 951101333 609026918 681499842 363079754 581100929 27121848 883169579 826432882 997144258 477534636 518735115 446585201 589642344 853187865 942883108 386605319 896914476 352359028 538052082 800654055 821355031 691368660 852307393 285309723 805011679 204139608 496943840 916694600 923132111 863754710 960459841 653699215 688042292 795259543 902514229 780074542 975961855 30241982 779813425 135547333 612492367 797168144 814229487 882805370 914621828 846162846 979778714 779830821 990076950 230375083 459116975 899455384 992780736 965288871 974965251 334348537 582540430 921902830 999235479 994229130 995328695 479434860 996655270 979168258 983863514 430597616 990129735 278423822 797410468 636242550 977686592 742580461 887247150 38799617 281340865 323697873 729290252 315009959 499530149 398355706 536539139 993791704 994843295 299417344 985642985 233731375 973813822 600544619 921060202 293940530 570528998 960833161 972809421 19682319 423148549 999115694 999314678 6177803 988910738 827416100 900502383 813607843 935462053 347108030 804585067 866100247 883614245 916197311 970316284 785410749 991054434 864147013 939986571 329133373 389663088 10516897 665606380 789354187 859289877 380418713 408250345 780305466 862673375 64134154 954645161 955208224 976173329 344683532 366330607 653768479 845051285 288453896 606309989 380367923 554510172 722331147 793820154 281159922 567898237 181024727 200265753 529988120 590878221 275128053 621520191 447790035 882526360 416605127 875464083 671125829 884103641 317839121 925641986 28421149 926679352 738668013 803199698 895728764 920862078 902241759 940467200 136453694 919961273 57001896 500881707 796658112 800125620 608484532 784277277 561748568 637768946 968243895 986199582 393379509 521454857 277218053 706898780 113104256 482456787 183622434 505822759 210671834 433236357 683095755 969147365 569528630 978545892 495442142 937118478 138969559 597875412 387094133 744737717 126017572 793128829 511962734 916008022 191562232 377638786 938304450 981090248 362458492 852338253 806470873 979019299 275031524 427144613 148528159 651537247 870568474 983061989 64270736 735247381 538560813 765929055 204305915 974897739 713204274 943876037 245193261 636082637 867386246 949275011 702886946 706351481 642589381 645975956 147485956 891958341 222912175 478433949 348055204 637748974 454475086 870325948 880289998 932824391 494407221 583992179 563819100 888061296 168392423 723512417 65347426 243891059 756520496 776410396 939546160 964412597 551602888 758049468 733157891 983256792 983128081 996867105 545875994 599845412 174407161 536420611 82384573 525885350 276948386 329510124 700741042 822853122 216011809 910844104 907066840 919419438 438941643 759811524 478648 421679124 418501152 592525190 789019299 913057401 136691321 347215063 335749174 939630746 379221910 471560023 183180219 888096203 668715740 861825821 912011077 998416464 935726335 996979829 982272308 989769465 925884978 964549793 256322933 861890330 324106655 775403778 425622381 887700767 938065490 991369264 746489731 754167628 987612860 997454278 119126851 371585102 396195289 837619806 354915676 445979683 567464800 981331651 927940920 937324198 115716029 797705493 59878000 542147519 746414854 940398065 301471966 905109066 648139823 817627578 947726961 978042079 949818548 984963888 491868073 651748316 723822838 857780875 478746538 970740615 208421318 793960276 601415171 996826749 457971575 656479331 191342238 862409689 840856910 861563443 905657255 977431609 71102067 780441298 251913430 538653841 683088442 782348503 366530585 854856195 654666883 794849433 683115368 875706392 237270369 763041522 773587390 924267828 593336629 831936260 42046377 971279641 919908762 940718730 282142150 932053010 542317681 728737719 468852594 537524317 915155903 956536809 643005500 696513283 112668152 163129003 427701899 702400718 80662340 390194254 725888886 993378984 235744035 392772773 140259847 380622474 995471815 995893740 575931231 654561432 111008130 573924491 262513168 881348566 935166300 987460126 969161371 976866201 132711035 699906392 69240506 146619573 509275418 574961008 305483235 598006289 300509377 887551233 54084109 206629295 628508189 880102180 995403927 996055285 96144317 581602890 938361288 949093977 70479733 388748246 68229479 398021462 946878929 949055129 744827253 799095499 922915667 980846173 653897589 774525263 397029765 998007151 109450900 207745697 554657029 605633942 93103661 293940472 228209913 298861837 330625470 968913926 372468464 687380022 908331496 953526283 885545115 993824050 924519095 993637177 216492439 286418020 138130250 544642986 680545341 730163083 435730569 762899426 849317297 935709524 286981248 500260979 733602525 753419385 318401002 553580777 115612674 139050464 709549685 767360412 727983073 840587155 982910036 989121500 278936185 300786326 443523648 882920210 337280178 420661772 855211495 876718925 669816393 985697200 854834019 916298926 968640427 969993830 515537551 981540974 379439206 520981883 463124039 715640215 907437051 931017090 533947909 624884297 556679939 959336458 800868614 879883753 730445191 801084698 132867773 395330386 914563613 968488520 136722674 548936797 548792534 723739102 27045216 118746900 443927907 917564798 585243052 612279068 462752859 686892655 692407295 862143576 29482727 73751206 207689608 778774413 923123018 975813048 402512068 553607954 959524885 998226870 119915729 158876193 975519861 978370323 555935099 661636838 687234315 735325509 452138933 923959339 332422469 350681820 271710872 584404750 791903108 920867062 727468597 856783876 700717866 935790738 730317166 812005040 90184787 992234499 450697961 576598389 85793412 975881556 591037722 816612835 130193744 595389776 89830778 242573684 76821284 234824936 436791608 858433742 432351232 877549902 502034039 827634969 436745621 725288076 766934594 901293562 486019136 961589673 419993713 852257297 73036712 948056512 127614924 175298932 49174689 184471232 572247171 622820252 711971127 884565608 344906589 953680289 993969378 995621060 977204782 990002878 766277821 899677440 823132451 901868174 17202674 876417649 228239437 534800452 71018560 893225150 587434873 589200023 633320035 953248641 162491265 166722406 279937750 452696952 81940556 125713324 741036904 924357091 162867290 353544227 224533259 359548290 971259546 974698400 524168599 905890131 255800383 989539722 671127988 852948390 974624055 984935211 457056724 778588743 470344021 866129072 196777889 813880049 555221029 779597384 936473469 963105057 922574442 943946902 926422760 935700577 445644808 566669655 610632504 808091840 509011335 534295190 535438148 671047081 131046848 696091736 517021497 844699643 767485869 837771991 391035112 995724285 661270465 806367406 647114521 874214395 728658334 893483282 730482131 951756490 477146184 868376546 388248357 438182468 676072405 715130762 184931901 411089383 74987081 732109501 272885448 769214795 772557483 912429529 850044332 880137999 354979151 951173478 285715202 655080471 31942232 271862820 869314396 911676984 448216618 745447830 8763170 490113249 20331841 296051107 335301780 462092479 400024489 971341121 162286251 305087175 880437604 919541231 389829981 887363946 393498829 759263432 776006544 838636627 12362563 737617118 985227636 996528165 685709578 724541290 275138355 363811814 575568172 749769662 176028243 806012698 752108658 932194219 559659091 964740995 167896485 174400583 639227362 977145647 911685515 928107224 101390888 224734274 428536368 442679076 956443485 969187134 920287531 965981097 57899197 942576343 188689847 873301269 238420807 969207832 520908330 769004104 753449892 792234573 229001401 987592646 731794092 756275730 630735483 833785271 641442155 764056460 829021874 924019493 740866019 931067987 172534533 782659013 823382657 937705279 473595929 661346467 685829611 794535119 723441407 886941332 671049161 876947540 981571090 982177994 403044549 481884500 460125732 880850380 497832006 891020958 494340661 693201391 683928696 859871413 145367309 578490891 447451071 927929107 908017371 996641884 586553141 725866604 57990953 803345991 379173258 541521271 831959977 847541366 857999457 959066073 824576239 954235851 745822072 881229883 220652291 373570070 248927174 327669485 949721905 957406138 93555985 882855259 166837258 955856946 807036739 883531414 287938599 504308200 859844372 980182821 792649980 909983605 462980488 985667139 859768933 961158089 624234177 728295853 359124766 366134550 767040548 934372965 578653896 819773119 988922052 989769719 169612706 243849323 62463030 728679422 667445558 682798021 165604144 642049819 319002446 437266997 81910049 686995878 854739875 985065406 695635097 774478457 362401575 383768985 686372229 843490286 110419404 464371211 551470760 737057146 672152267 800524272 152404911 441790226 929399545 975837818 642830276 908885038 162558710 525348850 691556568 819195077 437798891 534610572 599833167 701972629 167333122 201734918 74053376 816863117 677472299 898308567 134502458 579348779 743517410 919522924 493627782 650714389 637094367 875891760 45039092 320071521 131761563 828485774 604832295 939108188 554595855 781054525 490199957 591853437 56944123 636623145 420248623 495729303 437887031 525075194 984173411 988359722 358939712 957044235 188616992 931251237 506494416 508322779 876775136 945526929 232982430 789020015 960688120 995392082 423663876 742041804 57041203 613341126 227537146 941277838 294468815 749520124 251352793 635050737 137484371 138822014 705409915 788201803 24010521 178533165 815100901 863048667 153329086 427129028 842781183 987610593 30176761 445221044 141905868 894640532 558079404 777263328 750786139 875879187 39794474 494252486 81629924 169218551 152254815 272808906 298280527 791976254 216481269 899247696 122587827 664782491 265049953 855375940 174430036 379557066 571958333 811645111 871474059 930434999 727093124 824520505 217730874 948471726 370360317 399243778 362229585 743139055 119180481 186311212 189890157 567107731 851614438 872149533 105315406 961891764 390609680 905775774 519251676 923340566 866438327 925571100 590936302 957231262 475443378 983159299 407489255 706407765 655444412 866359377 492465463 880968748 146467088 708341220 159779474 557321799 87792831 487347782 174418544 696496730 465822891 628658856 929521296 973711770 907303723 971790513 722536981 811023051 686759537 982564116 351749555 978569216 276762930 523939902 918447966 948337719 779141905 948218733 34927226 740934482 382719884 467543200 437689089 564096547 89762446 225393011 728148357 905522224 662549229 835945515 988447926 999140151 605241488 656181778 927092513 965102792 260753448 333146898 284429171 472428965 322256170 809323118 907660193 950223766 472018929 813178705 784953694 955307540 574324790 627652632 520973431 915681502 31818103 607287327 954378258 971267331 853456485 904009995 79671185 965255734 93608055 754617762 89707533 891651645 567915632 583316727 785628075 826152567 587069405 677172826 94177984 988947728 558450142 854097167 486296298 885387879 163296355 584718204 449787364 732122748 407588392 851863208 565818684 749423206 628486504 900693628 670488145 745814687 260373120 296425492 400602750 751878993 336699837 854643277 185541521 525739400 103717319 679243851 429107579 449798483 637783558 718349851 64772799 826600170 880849010 915324641 156607910 754551565 940205134 971410418 333887450 425487359 961471063 978339860 726102156 912228368 609580281 686400824 114567889 382751273 666852158 941318671 864243300 929770334 93313933 894621976 47532782 102803218 109764018 829531011 894172471 987779488 834116641 872934941 12499185 333337514 671255107 753913401 240617187 641135403 326720946 615700288 87826977 874087635 737795663 892559097 487322979 823787969 477278927 758232980 857030326 995840761 314861733 559692942 398066616 592892970 498142359 608696517 914753051 952336754 527059409 554485189 106261918 362555638 403701071 792800428 430905353 872883969 465446051 912713369 533711411 894441720 104588690 771557050 835392200 939223432 891638851 943852036 819001340 853602450 682062750 781586247 621234650 801659646 466862397 753485584 603648836 868957587 158777542 175555070 767091292 819956730 46962168 618678901 763335525 801844500 280505311 730557360 54448837 888553890 60447097 854393118 526305369 660917643 11360005 763320108 8967271 354560999 941269018 971564416 952070284 970790712 745874400 899797154 760389485 951939822 384255317 818181490 175434419 419199731 478307628 611002581 222086111 527368125 678434726 917196815 357642838 820088105 155979835 500956372 623014014 682129722 132217587 554015681 212254428 621346714 791650329 874646179 59451304 147842312 51729106 792040599 77668989 864848646 869760528 997565459 529952131 608013758 519769902 546176475 607208024 986875298 535349098 988402513 344599235 469410902 772987285 822220256 835536616 955193609 137621633 481031423 719860587 917470335 648209026 865789097 998039939 998686553 127118418 667874747 423960312 755229813 174404978 817271039 803179144 948017059 148115674 889834083 620275132 656918624 327843816 540200723 108527180 441318851 324899289 364246802 476605613 747582913 533528388 644112812 728555497 889632816 321980524 679931180 768531938 841867785 987930250 993770275 318326985 925404094 153264033 661195046 684022742 820024499 577629784 710774412 785895008 908103348 389508605 589450928 123239988 763089741 755447199 762762599 752610353 781726946 359377566 709565197 640599148 701344166 447017466 958522081 772825925 877410915 861927851 999265665 32742384 335743401 197987002 586161358 964315960 968289315 124444492 463670323 87165271 799305026 128984025 486112455 514317959 655248980 282656714 978105279 253822075 583024666 783180964 867105923 928520215 933372723 142711435 450454836 134132848 486339903 753594750 776651787 599100202 751017418 427778313 554065850 471053773 687209779 478221119 615169484 781354617 938222680 261946887 601744071 385315058 755390965 241970888 593830511 434584191 984804589 197380028 430054209 892950418 931061281 618126594 645040122 819157206 986423616 903612679 993787307 864862299 923451344 170608539 638655077 279965645 444082156 105487677 670939464 949299344 974934023 127863998 168884792 360751843 763198079 594719744 621125879 991388948 997121012 682089211 739623950 909887629 949157575 536052166 580154644 63476606 310381054 503750680 780518696 791200502 928788312 290992863 980734457 236767478 714956724 947202757 982997987 490974653 931565608 654573316 770604504 187858609 776566969 349166237 595431007 177377333 675824477 460072313 806905004 887776671 967658005 816919061 834978784 536257636 847091038 356063323 774485091 772220604 909647945 944906042 978156014 728457601 941036748 9321421 866538064 834230825 869029841 570457033 996004250 563745319 807328541 512731762 899130335 758567390 969218094 449726554 470951450 670261167 748766441 829289801 864276982 376331515 586937489 800248560 812232091 238116461 618533787 444146054 599846903 913094881 962469999 254021560 759732177 507452087 792782014 90061551 249898652 144654154 978206128 554425751 718702481 854944544 969958649 769920923 922910646 811482693 828130685 556316517 812555499 103482489 190345780 872509669 884567292 4335195 801189008 958690048 967950404 597602985 859760440 334389488 971321333 393377957 458394741 674292550 851965940 162790045 364260288 892723690 950230238 115380675 485540018 117712317 511658956 192904284 923030127 763680103 969775489 741800299 952022122 444412164 518746707 661419126 964376624 116246015 130885172 503214537 557355217 285866774 509519272 64759124 507203407 809752700 937090924 769494464 864064660 191461450 736184162 707829822 989537102 226216768 669312873 782113277 987408409 141466567 532342694 605085237 781929015 460862251 828072913 484711018 929414159 682681067 754308013 850399802 972190277 756985316 898145834 956764775 988704172 516971449 876482356 331936091 870365500 331599651 491174199 460220727 682971714 540762526 755167987 253061796 363004401 594832320 724396195 315661766 976834872 46505691 426817358 290385127 774079396 486477041 681634404 565466035 992286439 726908966 758806190 372602147 770998084 537931223 565543494 416476089 787862559 336108762 797240955 801323523 918523059 732251372 742276214 884488033 937870747 858601847 932002850 503422470 662234532 285344840 370088072 717042210 882720136 61743864 826515951 411956073 651892537 921379 903541573 971585079 979915588 488769701 512740973 412314346 990873088 228514384 722072850 319768058 359943996 433540475 447938419 433305558 488338796 104464505 124396350 879073613 967123014 852459490 859618880 660506968 990434464 971139801 987438224 881821319 882590396 44718581 780292776 433571270 492248228 418453559 716979960 790287548 821684286 160393333 736976052 604889940 916540578 613500493 832093673 328720758 953787465 958505924 975587326 57682781 654558017 373660942 434339214 539419520 913049279 505778645 948426840 429905213 653100361 423071631 452864197 897100483 974213756 32263634 192086028 591075672 788183322 662127533 707998969 753953042 899012838 25374155 617675211 499129444 916046588 181759241 738662402 372576231 887872538 805723246 901120044 559000736 897568400 904440907 908145002 652371322 935820494 413005041 647231934 343882560 665796256 103696471 758982361 862175028 886537273 538634799 967057359 773885860 983624409 87295832 144013543 717737506 739973030 53646938 274490131 416981117 962065773 438594894 969354653 120245432 796289551 764255961 787122413 552100874 873457667 866609601 886246505 503422406 708457959 213907841 664103570 925022119 997323711 840449161 992833878 637434739 947349597 677583235 739808351 500596122 546660719 497614270 712044493 172073175 510647811 368916011 817321582 582819174 774198161 495071170 752093631 235051427 294091300 8590727 212859119 438044412 983676491 938795945 944871243 477200073 706523034 774908607 929719468 94836048 996571833 783483623 886928775 823568531 959212519 165590246 280475737 608591460 682483700 510762542 614532865 410355171 615177556 592164588 713083536 604920607 703639819 746612482 840217566 801990607 850603640 391814634 690342757 443912298 798939397 610975527 785837314 569748524 929872624 791243768 867647796 993627711 995420499 833340937 985611522 182041129 769085545 111207811 642056683 301671049 855941603 461143529 528038294 565018427 885885311 324308248 627207473 902021413 946196163 236093089 361559890 663646626 681217177 80860015 190454986 644727029 752314649 514307196 920386020 390794248 885236763 49030065 495469322 838977619 942885480 853977669 986871923 235491415 756205611 511431634 732728993 291887650 606098045 336008274 723201715 55809458 880659180 470331858 734179990 750841846 915812177 877547065 984767128 182609737 254162021 229747273 980495775 674506980 868792816 459046207 961677251 922175601 990665126 339726185 987467284 217565196 391616026 402444782 985767062 817301410 946079790 627741218 637069328 850862728 900392405 904720752 907513931 366719000 542744558 574088251 993987413 91567736 911451778 10840275 151094966 1664202 507783791 560811390 852841422 514659996 525630974 866208781 949859881 329418180 643424126 653071138 899141047 14443853 443111552 406230149 867260045 442077775 740655369 263452234 992057537 167592175 489198305 316860832 480328884 557820940 933199442 494873427 679160190 524706486 860922633 22939677 942282257 242750214 568555339 288857436 648485483 950214420 974443585 82582511 675082610 81102575 524564005 982578939 995439410 581430384 587568378 940090044 982650504 533007129 652526088 880302049 914345024 592787997 807172387 655242787 906595066 924145946 989912487 945648592 951627850 561432446 562052066 549100868 805694276 340119197 409524015 425591924 522935237 567435196 988591957 727402836 972792778 132011351 581856752 602505246 975073059 660307149 984284023 437353731 750294133 287375683 842634246 539444459 998505252 691385720 986033471 140663053 913003449 729771128 930544414 785400241 966871552 517428690 879849645 15744686 523609334 595453914 987568442 953747502 956969367 205530024 371593572 336392646 942544678 820463383 852938013 243856485 496363815 594208751 737108993 713155828 742374065 167548499 517509349 270310385 790246638 185502217 586867843 686784232 813161460 356940499 694103881 421805926 817026344 859564306 862348410 258358503 593180833 521148319 849160463 337491571 497653659 767407113 811278246 228625715 857361272 918005934 976707865 918080464 938812035 730503299 744321357 303160288 653607198 588551502 892571013 709681477 961412846 981718195 986951480 865213460 887068491 173581561 272981788 572201103 836905909 639295847 995924642 793496392 908795280 647385285 876580037 967552251 998846991 270451310 865666743 262717747 579824802 133689721 151403936 520241128 755334988 19524532 834148849 2239673 85584832 762506813 902444270 107392249 119943036 985855549 998359207 880331078 937232694 867030490 878545833 160759967 865028783 102670694 536362132 449799528 526907434 465356533 946342461 19845133 553206766 659410846 840412650 364056572 434309491 650088163 751874357 553315045 573527232 798476075 940944206 140261425 685520109 837725927 888488247 895511799 914469838 471186995 729017890 573504150 899914349 290292384 602643487 769606536 962821427 486604210 622829376 666560786 707508918 367092648 527160447 826624046 889840058 330909767 428817626 205031978 795417595 157512482 790202466 810838608 961791007 211519219 587279486 294231671 976204871 555986565 748927739 469507195 630939190 175420236 853535427 634768819 689460227 454735171 483792960 606085197 715452969 123306434 497624106 187343137 214598498 506152012 556907290 662555692 791634543 157882920 892664201 440773101 974704793 562140206 765024018 71977736 101990786 639181742 859058387 106518417 260496942 688193449 961896238 950911266 977882633 341109915 903182525 106954803 230296069 569189750 682355233 505645543 983369871 694322900 810964025 839232176 940334658 47392977 978055904 564117645 948882363 363297685 700453676 746188933 935371240 39282133 348594017 613018363 789776280 518888722 989498877 95641424 491840761 611253914 967286858 581880820 845454104 295154042 807665019 957466552 975852007 780544225 946365723 903132145 955915780 579629801 918247222 65988290 233276747 649510369 992811740 172359702 463097291 709552110 966661762 556698081 609112817 487347057 916004427 813014365 961752423 761056312 863618069 511560839 766290096 459039659 554158620 517951670 666078344 953656442 997438578 925863239 958080722 970459144 992556429 745742519 916368327 619385919 878401479 781740416 881146842 308047376 847269047 559823428 850907483 770790155 938035757 479528187 994659595 586238648 707191376 582740377 600370884 687825483 995115517 571937716 660073821 166237923 641985688 392573816 559035393 57062969 500432144 234508599 493319448 795979371 886893477 305006245 365195087 238733215 419062090 152850920 229449523 270707792 282356680 864050228 877155847 88259242 329773779 416817911 702046443 474499778 787862388 872664754 947505399 268925261 891626362 307909291 524621428 501457996 839857930 339063942 805565282 85164094 962938397 454557218 542354136 365294661 656732870 489763326 890083438 425287071 620081057 315164798 962236207 10880857 943572350 206207487 779973040 497510238 649862534 283508434 473178133 646255578 943386256 173749284 401745774 106427762 747418865 317209050 590170623 759942047 902204272 605313559 650400136 548108041 624465284 198563196 381608658 169684939 262092376 472565702 983191211 399842252 440029594 354664923 464906683 287565674 905469086 626923553 832794919 564938800 897459450 351876817 539535325 282696534 373418668 436526879 478596966 868636618 961418107 568321224 829031428 542134510 763889148 623126091 872274032 938491013 946856269 438620802 585921791 364389033 493212216 275940770 869791220 528973812 958428957 822691035 868148002 163737767 435932092 697641328 975621291 78281891 713132256 701493832 980281876 855985390 924539499 371660198 532660077 518911177 563129701 344953425 959624741 279210592 366403717 56356905 59893753 997864644 997945608 757223473 918531893 38016947 346687871 809532231 922768706 943184972 979218305 139579267 423913255 803520494 903697204 995143330 996198522 868404089 928916408 861387106 981267688 278545679 618220030 452904038 791180472 140489324 282931044 816007268 879620452 549445279 868411420 161660340 590324282 245640649 747836278 26615159 478446455 923562519 988924139 968334494 998831454 763717308 792783303 953437407 964543925 985235600 985440910 366337161 795813630 797111096 806197939 942704031 964639326 846390205 946905950 82491093 405887599 982551691 997547657 372631340 884259207 909073832 933422618 869081492 873709263 386165589 939617383 112318178 903631837 497458302 503526753 555019846 689033801 254611913 972055086 687349648 865587101 335853308 491054993 293643611 652139067 63371003 720709935 173414994 782774412 119932911 125076092 887782661 977899248 440902207 719635322 186303791 774548915 938544511 959768477 451623848 541400798 831105911 950112057 81547648 618306001 790560321 918460562 809677830 874907395 985242720 988227437 190895463 339151069 804363022 873161374 219469627 571989707 247492158 918188421 765583310 954554807 198975552 866526496 283501875 685907329 517945266 860130272 962709254 965059559 8944645 900150814 370792157 392442661 809044921 907634911 900934746 968368917 557035972 559127714 225798418 666528217 724813763 924543905 800303615 940310000 411760159 622373825 722843550 978954294 463289794 496923484 837744661 918782107 148163239 930586010 543623737 772331040 936482535 999222652 904177522 973535274 331888270 817627970 727353630 728817787 244823817 958682307 539861379 957789663 889408951 964530376 190486811 525465789 458007290 641946527 806170729 992282241 416023564 885603066 628385356 770281245 213507817 344247911 259596841 278239360 856998303 968161893 466618693 794750720 269084801 782493055 570294584 715676194 849741818 946700627 793815680 985573408 577936788 789514732 345195147 815042103 744926978 921590973 439264695 838928864 237669685 474698382 153217000 605650785 203217155 839289846 477043295 495701416 308263474 698543894 237107241 564379363 543066301 592250059 57644793 899949409 519595762 547381721 22931557 841471930 507260085 803362925 516700920 969992513 787036303 855212170 980393835 995779269 785005460 967065908 608411926 935152793 381573406 549460451 787243025 866309768 466462548 981796954 623009474 627963963 745415745 865836784 640816977 796879594 314495323 699893908 813334240 888144084 162793243 832697311 826456930 874519913 505605653 768698559 663977827 837051541 490306976 597549955 50492448 430976334 46987871 264780771 695472163 949093473 543537169 595156585 418640987 829369339 422106527 905930561 495607752 625080681 650659584 711646226 725570230 961602243 352048060 849899949 539581931 604695352 217230645 436230423 150690995 863773206 771757433 844787650 145953631 248972271 711429047 988707781 574048954 585605364 843538720 974774138 671977772 933813264 128925351 276138511 697631958 865512822 903727055 970072434 304204514 577377923 605574927 850988289 748127983 848489372 441346045 512061030 751091285 936842551 340246212 456820943 10327619 814389868 567200932 841957484 779237686 832759601 656825843 864678700 530633787 722115261 874003308 914757518 695308486 904595688 222335765 809808861 280288723 909600305 122189466 312734940 770752121 979218267 224550212 396570519 279353191 531241677 353649433 410816446 688819558 791138507 728681344 975102812 265025359 376416122 267856097 810026640 586702488 649667436 649203266 768389596 988378627 990355125 826558087 948227423 433396103 937789419 946247120 949107110 90397738 178126984 820637789 957495154 985983745 991691625 449224672 614947099 417867697 852291276 635398720 803849198 197952751 768779013 446750433 602296233 164745317 993783767 735617317 830794419 37047429 466033697 326005162 650138479 404836161 656176059 791341442 924435349 484523517 560406573 68753990 523249544 77823108 163736784 159228696 811065519 751576366 972726808 602574849 840703851 660307586 785522548 406291175 737032297 700294821 991083129 571016631 969616799 580961276 939360837 930632642 936058799 782840727 960684351 539649449 790696219 310992848 802671371 79960136 933665338 264564827 421831615 694268263 855432250 646866359 858952415 295572725 325263947 814905869 842852366 270804817 867767579 415971247 846428366 63211334 245846031 561974002 806727013 278065226 850382798 759621515 992595473 903990136 990344527 976240712 995422403 127806762 722754770 353690714 751916882 137670150 577236799 131761389 886350624 465415174 966964054 706414120 991198123 299445629 536779230 314137118 658306496 709447513 971511029 688052250 708095987 48379626 705624595 151929493 646158287 461503831 900582069 71282669 584484943 596093242 725320428 168208603 839205135 813654788 872526775 304677011 593369985 469800572 753023338 864499779 891612354 882465098 908812242 361916315 394972900 562222215 923277017 38628038 955898784 165099955 211370011 204745896 526115569 126959556 534151792 23118697 304530111 474171192 644547057 698438549 827962474 117992841 867838138 846617195 928762840 202986638 264659080 326607406 438645470 62000004 995856934 674354610 687039814 84295061 119354470 578056615 870065495 717468465 830748602 892027956 939860682 795587454 894138164 636531771 887710138 179929708 183103862 536634241 961726629 772993488 881078360 113406378 133654331 828769031 937876318 141341192 943608264 320982111 764850450 775108224 960046139 916748511 954810822 660850964 848102800 724244135 770570427 739386153 909615786 552576514 872229287 142382680 606194463 291832223 984366478 453384579 617948981 83421809 543201023 284511180 573978980 982853304 986798380 571288035 735563945 673338186 693319924 957665789 975182421 206323714 562333437 742242439 985698579 976718006 979780774 891824912 998323133 471105675 961783657 834493193 834645015 98418206 246001386 512675228 790926204 632731430 726872339 145122090 390709595 775618668 973498657 442085224 737817223 810760832 978980951 14307020 575524934 99391507 960306476 854493132 890844958 482609737 954070939 463481727 975416598 96900546 307553573 153821838 245774180 161299303 886260360 219424201 381357053 754125598 956886125 533676424 667094930 1989973 689504472 821046937 963098305 216566227 356532920 310051266 726440128 289557272 467744331 371431930 939905293 58697032 137771712 588196105 815062288 384480136 507952948 787363700 797213415 964473728 976784562 323663998 338874583 313904773 345162118 171221758 620891792 75982585 761950903 639304008 689255775 944189183 961603370 551261153 762495695 185816611 282914442 733597 705302717 890281671 974569159 15435727 86443731 548648210 850433632 52322423 206713860 287757303 522148257 84526487 480142298 717668557 751104393 508867755 814582885 383222509 956230775 304625844 519135687 845929654 862670986 188527647 478361199 536303673 613640170 665931313 852817408 498489757 553207461 391571356 626151288 264173622 581150851 746708456 862305947 114211981 506161906 249846587 771323414 946564559 972200897 471802709 748384445 271751637 768993620 316256495 484196281 33128956 528973901 230128760 410205988 153004314 459324039 820689395 960351760 748104624 860608982 461534344 587677950 699772098 835682007 230041070 782274516 560429795 966377053 532512987 734108616 327717094 772361837 747092872 754419490 194276466 392414358 849300006 890226760 443227860 839559631 103510329 618167120 425926773 879765820 572549575 669605675 235284376 284852189 983274687 991615378 895749621 896684279 6296164 694348865 512028161 825036639 325085426 623141429 524192936 790018010 816261032 945991932 6848216 243116781 69722262 917950503 25878099 144596152 216233742 395670123 916863249 988345562 755536467 896266284 577002519 728005487 503761390 723521953 553000422 757605234 745392708 838198090 147561954 879252608 537839747 789503168 408059162 644983029 962684589 973024527 972163634 981205140 829317737 879520372 699771865 951774404 289603228 774820491 553491372 821655424 419461203 988340630 38081797 641754800 842910188 856376399 170473839 385035668 242562130 624291771 719701610 938504342 749650015 939884194 147283112 347987226 526063575 981549047 900549156 919161413 516859313 929952066 39381261 107391871 329124641 673007900 809596338 969207615 760373627 848343399 995664082 996431131 890231568 945000173 909891084 927413532 132906232 497171294 355759714 776662053 981593465 991848281 237842218 694895293 514877400 811769642 724153975 826367400 768528183 807159599 450791354 457394937 653506710 690287025 111092422 885525113 566950718 784735047 345462352 969464010 74029473 996383005 414564510 507050578 882088489 978171626 493726990 855320477 302373358 898777799 574734206 629283674 78502316 248191781 635503665 868605982 319912247 627937322 195395351 372600811 613932911 741371948 662075216 960888675 41446725 859945886 463972143 693376749 766020541 982388687 821080570 976975801 863509539 979877461 293845431 936162255 966542515 977142177 994801969 997166234 614759749 744286044 216365737 925976017 843444730 997626371 566503682 640678120 556348599 653704295 10144213 400412000 976955321 995064548 419805072 804310422 982984861 984736922 198058404 687675842 169857740 525327039 518289467 904397233 715585624 878174150 720414196 877948565 370794648 687899517 533484025 596255575 678724797 895135658 293086114 778834429 331278572 873394393 543070754 632311838 901085015 930859458 777028211 785388674 876819332 931416352 96694933 119788585 32876181 365064997 11380608 229142251 660132556 910683349 405976399 527700477 800303015 934674364 506759029 844303005 952295741 967432949 138633685 678605991 252388703 629865150 519135061 683740229 419291387 563008982 43916333 455712945 888474041 971162680 113467642 431500232 497980766 816988635 910758013 972318214 584318632 988241333 211970580 609183603 92950790 254888591 728221787 753697358 507953889 825042825 872472070 921938463 134079885 763375056 97640992 679355858 31777163 967372976 808309429 899690966 616138197 921354544 327537389 705150155 620181297 871956633 783646371 795287326 432909527 694254405 533554662 657934366 756971026 781665888 711651557 989989192 871334269 994744475 982633806 984694897 708329709 873923641 378117765 512326566 295170655 664965913 882844225 945848811 40291994 817722233 578237215 946254622 911927548 971061707 350439542 777927790 451715189 805390204 577658214 896663451 172647300 617160427 505026097 641911967 518107184 524548087 890747650 910645806 683450790 702602133 701514290 907674775 531463700 812281200 17351682 414459722 661203438 890338520 657569880 926319662 325526835 518804328 971684995 988910180 509318632 886689213 527461156 746172571 29669843 33765342 513592235 596139573 744370589 968070414 45851246 314280522 897894893 964744780 496336477 889239515 338675212 579019091 838269560 901728370 965832222 990156311 258281099 461757327 129329379 314604289 679919977 782839135 903199749 905245218 645794500 716141123 220348115 838655421 437778257 501509140 209391538 803063617 834910531 947190527 644531079 983574814 169719146 954527317 352205866 736445681 840941030 977933103 890541231 908087009 470292297 881058665 855259147 947653505 624636486 962020973 513228125 775469758 674954654 975921879 732114349 743162446 442429230 927279387 593444370 956338370 147771152 828585354 599133573 605853465 259692930 546131001 540705143 574894205 1158603 436004899 177376639 793273304 364429881 439324030 154360571 952600904 171153684 179933299 454830303 737661670 845142537 984033848 205774800 711163133 685675108 778051487 852992364 988449566 793793240 852102645 310445547 894251954 84224377 811155715 473842635 514884847 713103317 898434855 270088653 292867945 106662232 256528657 584092702 839564858 109890158 866394306 173568731 745700392 615478023 695911681 434472842 701035821 399856218 554432340 948260044 978251461 389331725 557571386 550150824 968465734 267254604 396079666 596232859 904134853 666921421 671064094 741161299 850043361 703189904 804327998 194202515 680501098 659330966 680856979 546236731 902802512 950390044 988240432 545544194 668057804 261588987 932809476 925709655 943378615 289233720 825966729 750218937 816345474 138539872 681626398 909404528 928560747 995400016 998963531 664315688 969716149 808695851 957836848 882515537 964547487 28230222 360989186 974174511 978814099 335671330 848606853 491814398 936872069 785845693 792980684 498874416 754717800 138488986 834189797 218948529 350744134 33143172 826654478 36997006 151334259 2784934 92243086 390926546 655440861 873694027 925986417 34399745 230915357 546547225 894737011 545134043 741537976 42952666 924251269 28388613 329363299 902258139 982007035 430799588 671142129 167832308 689900720 143004533 765940597 54808288 737016187 702183857 704449400 437456578 860627914 457330508 634420704 413430470 526939903 173860398 272598055 159807717 633035661 218121869 368389307 762799975 769842742 250769017 958239604 843949484 979574316 222095770 271100857 180820457 538086138 499245624 700379264 161116869 281095805 53466177 994414365 565217782 817537993 382894964 668592646 545620856 895835163 485116640 633484030 220244309 585303073 811774622 982017303 938048549 946064962 23094280 746488303 621174011 912038844 456604440 517059716 630000515 710628805 954120894 986748752 245224111 880856760 905855925 970353596 25447648 905493565 875701099 929151058 710437025 933014772 471585669 696035814 755706664 855293177 261557705 778565894 199749646 453334607 247894937 265934276 170153653 954978799 827272672 878796371 824962777 874266350 169955448 659637116 952308038 988175238 481982852 741728624 820765604 948876153 448741289 584746812 451440855 720297324 556901669 711396205 795102580 930022826 695363638 935027087 759525439 896999721 688227713 901791951 503500957 649720289 57558842 215400953 441291718 794408124 489229828 583923879 755727673 777041942 421145027 691634239 856997947 882423667 340553388 360965871 272767898 403451305 971583415 989332996 955114834 994483790 977936860 989872407 439891550 619558813 178780625 758297287 675680549 933744915 369248462 604675031 757554588 970026308 453818530 539650642 10910785 428561240 944210764 978195458 550646418 888396629 83159112 486907555 81343377 343167399 298475606 649374345 601484167 793403874 454847127 476630973 615972830 968341142 165536601 642557824 128466840 249469906 287275552 788849262 271332784 673849309 527251695 970346250 391056687 463253116 943760135 986903488 490369756 818597815 239484415 397952004 331069067 563019249 660974639 851784493 303641866 736186923 920707903 954097527 562684037 597411635 179022226 583552844 146189901 404650668 134100565 308580988 840884662 868621375 530071180 949914831 336135536 411092763 875651931 909879526 709287279 795483727 973368657 982970940 574952630 631417234 433504307 895794351 219012411 707403847 959890848 966068286 421243071 629947495 405405740 809756086 32257287 500175845 479517438 934094548 282872579 839468469 346082041 569472245 597277797 852005555 431572613 885046838 56901802 514259483 467345814 714637953 650036918 961143035 3250602 760794279 77374591 793075047 553904958 851779206 568318297 720105097 578505556 948250684 356571354 875350165 795625027 820691918 530912969 897348758 612583370 664150453 542884795 631161385 258353675 611394710 681394033 957144035 483509671 522676477 47686499 93633583 529783888 924115686 383027641 924309620 364073646 925163057 916621248 962879877 548300191 697943715 11688580 488142529 487422454 507340295 997532208 997927633 894376520 992107546 963822051 988971121 94363987 587337971 644096288 942082424 972994088 980339732 415121997 676295676 117663733 518947884 49368808 143821220 595740851 685050170 411030812 967813434 113903759 974487305 429140186 549312349 360299862 403338692 953857529 985052006 402632334 577783606 886666401 981655426 985247821 998448812 603837193 989311854 185066939 237779291 215534280 453877728 473776873 503789490 891881804 989869394 354369278 755509989 652776562 765185400 482602612 708751739 357377862 973762790 521935096 699067739 516662185 937149959 365026102 482496374 731559056 967303501 796420152 818285868 541988554 588808264 267571626 679818420 265661849 293931296 471437239 994571314 316177840 454054822 153571290 196330040 362758853 874837495 739964935 750363302 206823697 901904466 627351288 757132055 33548561 82551050 776596972 925639276 311316514 913269546 509027664 683385897 30501897 483464071 343707707 836045176 119293751 163036296 448868075 811238488 483794355 580942072 550446607 595856269 152071159 965236789 681125716 866183310 600369875 955884526 742768022 754069905 928524096 997550289 242484947 810003898 979924891 981017137 812895122 973018663 151056184 294160162 615567955 694343487 35463698 799648308 922591851 964786748 654402103 721767319 145847791 600666707 601944448 843849919 649932248 988660686 316108225 540891010 793854550 954813892 849687080 942917226 120903330 602521352 285989523 324433135 831693802 839364275 630255819 649841694 470162731 518343069 769477190 786473014 13645923 220054872 719613631 908860898 954548273 989851352 783654124 858757596 207157729 537742881 770537599 775432709 19114019 596161964 216292403 819064952 156245527 757108941 366130272 731703918 224370029 280286706 931453448 960549497 979335816 997987205 578998279 818649861 495038730 657949538 784452365 896999717 778746318 872071360 122103081 573412196 19746685 486535951 484863607 969763006 756242257 956896338 864903657 887412831 257271274 443991052 496099579 723590323 36101902 93341777 65642507 885736429 671751651 715625923 222498082 337990543 227799021 612862079 691184816 914603137 748614201 858111481 602859129 675885519 867094153 949125666 656867159 945565526 931930159 998190925 288138958 755456091 304054382 762778656 768057792 830435132 893255742 969272622 578905709 608861916 912022733 939403731 809544337 909283681 7322903 468485378 96818575 242244594 696428301 702070018 883832138 933873888 63964408 662703882 708746104 730688044 418043031 540356768 794064416 979266480 932975133 972312401 331810127 382244226 324485928 636634055 892424990 894614344 84998387 496600169 236529465 463530441 626222906 982072171 678780430 809515890 938277737 967381755 48584247 536696771 174507703 493811539 379758377 556669263 851188070 971699186 988007174 991066223 101252493 894990939 66007506 366659403 418330890 468721620 328380810 407431841 25199019 741683247 806475386 906069600 954407328 989907778 87796183 414017612 359184179 427576338 990292312 993504852 107939482 680971071 462308010 689613291 30840205 184305435 478111812 869949241 68755735 558726949 110402292 918190633 590602866 853091883 990843856 993387676 554115332 983958910 2263924 20069972 223921023 695103617 523229021 707844023 281079886 730331339 743598526 832582233 936305700 967437771 756034689 923080245 837417766 884950240 582434517 686084302 565370465 659841715 817398576 879014888 853272701 907507797 232376153 750597938 231063571 431498429 197200506 643523423 166074996 269892490 456309615 586095222 446467489 655022005 21743217 671882942 563360005 931332320 124807033 464563683 257793526 362823054 86462227 430520893 318050188 949973865 878338599 913376636 652772585 721596904 996411627 998867577 495296914 673682537 266119384 797700362 547154898 647959923 600374098 879261149 217220896 964496606 398394398 449492726 67671646 812087924 209595670 554983240 156334752 262245171 501738027 627627619 968006415 979567817 412426349 639325294 259007825 425173774 218353676 888721199 85149814 762067058 321518653 796716489 299113721 447536835 481937779 762597846 565461902 580730984 753430875 757091159 899986783 995317291 155418297 916190638 20564893 902572922 544292947 735847769 457954899 783256248 187006748 481108932 985883233 989536265 561651124 609712855 599735169 757770195 918711887 974671457 487893562 556264947 293659694 708601711 149099407 403585051 170446016 566126683 29472124 601831248 328481962 794183238 660671204 689977881 60399527 170965298 416750674 852595609 313800890 389212757 68582504 96878631 243068151 319220654 588626908 711481773 222671982 702136683 347942912 350103442 139040658 663291069 776651859 885813565 368998109 527239504 578167172 778899462 819331013 963232481 248108537 683425115 356499213 383246293 280715112 612590216 544289843 936778406 361096443 499516621 643948759 644918378 956174252 998865510 325326573 551766459 75781785 421176584 646387875 787442704 737372797 751829595 92042261 440956501 159263277 210662931 225471225 526756066 853842867 906208571 468271503 659029525 673859308 788454322 542153500 763325350 833512336 945636631 877196348 890610750 526239952 880996855 48513287 284800049 572612082 962273311 291613628 720884308 4991052 832106897 438967314 793759320 212476628 431759236 817471560 976468803 211447516 898410534 375921881 612229200 364275159 947399519 473280678 604126594 429465927 977266975 956031500 978869965 195933367 722843310 267418964 829737526 265512937 365260281 348736495 700175206 428643538 522225732 987377911 990354949 605633656 831783812 978684008 992055594 869910099 936836403 884481550 971277640 26475657 658373148 431405869 749513199 475208024 781736610 43255769 780348147 238882318 459127869 542352086 619728513 388660682 908308448 138013357 248415230 987375315 998756330 666017032 729762555 93508154 752373398 875808950 937168810 386181153 588903864 871541773 976098224 971276349 980860085 770837722 922499212 157126876 189669958 188081466 192886418 973336798 996319677 484368021 711359277 339469670 808797627 16444184 218861973 543807458 946433252 727017677 800418986 620363142 896986044 443356100 925072597 297321464 985251970 583375015 878070002 841375740 957432988 224178072 678764077 48385035 935094355 990133833 997241497 845189816 867321181 467395236 529119073 757856632 960884224 467535342 564184922 26643199 850845128 47747879 426258382 854222181 897016005 482507471 485848941 700220543 742666202 153445924 862347907 993883013 994457024 334478563 367985936 921084213 968887397 704402328 709582456 485483087 801871521 829550614 990938259 923704718 949784382 309668133 839556521 270432276 335963825 538440360 668293617 209003541 337199851 839009563 951878273 526872370 908788961 666735412 998795242 6562788 948455715 622657622 994620000 381847098 386183571 99078021 223598630 188884902 237375632 110067634 397589935 229674313 845199718 365567182 864765683 826886000 942698264 701880977 749855311 70236709 946227159 255437837 720253394 377827310 546601878 390973607 448792613 340132297 363393586 290053902 572479923 906248486 976217764 313798235 404785549 239870768 712992073 533924232 786012103 388965353 821640008 987249890 997076991 601787286 938151835 508095958 991479018 828385221 836184188 454746766 852885140 403757334 760540008 907392461 923012714 490319864 818076116 978660527 995764326 288224106 994708553 938589514 947346430 489696647 918883974 921898870 949719154 989576962 992783371 74193369 941214066 419284064 873915866 289525628 335970948 771317815 982168965 569181865 674101697 664460174 697433615 577704460 745535425 547054723 683315851 744997384 906514923 142609446 777774425 908214108 925025716 252252392 728964940 667253816 922950712 201011065 238124490 751429363 784585678 368677558 752113231 736647814 871690892 504304375 536583081 840412248 866011811 29947708 284497417 222034781 675433983 946660971 995863661 501945696 732245908 592148621 931049879 479680775 901254250 356249285 455868595 915516715 996525620 813871296 843966662 42207788 905796046 682426551 921873370 857895686 972674266 259721692 700764493 827633214 854101353 767703970 842030638 994501599 998632082 436807775 705404162 886216705 926979489 437534103 546750090 171250920 933975610 909927521 937439912 471093709 617700151 409093739 910598298 7486304 742009905 30342854 81982075 420231290 516891951 350449780 953900175 718873384 918056108 392544280 795503319 180852880 405638253 696880195 923762247 437840146 439028599 757570172 992956053 409824861 799774232 764877704 933081981 126682791 432816023 613661976 724188753 794366803 965751138 144387880 992890047 978911937 993779319 921482888 985691368 873041867 888300136 696667585 712790412 17777414 311024693 875686133 917561596 226131105 301826591 998541675 998833450 60555622 214890309 770677841 890139560 460331092 867488552 141919525 419239618 899776191 942564827 320795712 575829765 825364472 980505023 101101197 839458034 199323608 624195517 74771050 568042832 779794412 949522740 488044068 803267091 133799585 690075387 144802181 312773902 67271617 171971301 483363844 624068010 178587520 665807864 761605663 948192915 373754583 653091741 729826023 955306850 310354890 878649053 583783343 940412509 784656831 893369410 719839224 908694734 880826310 887966259 958960409 964061344 689053987 986889324 527639538 773332524 517207753 879577239 475479569 637243471 376997416 907537430 511005042 755607297 498727275 793132915 102551061 959079484 507996501 890327999 248616043 528666884 990518864 996985013 197029698 419354643 443423715 766536899 610126311 934431993 495635755 602377275 822740254 979032545 115147935 915768151 673681588 900850266 247140072 448125331 204145774 797550956 277112355 763143661 720450843 762669223 489002332 986418259 286019661 443882735 50889662 556997674 225779037 503689586 102160915 714256565 188153084 196086653 540260201 986695861 110257750 818603658 486092304 536102703 924186887 983877397 88451242 911454165 984467830 985824890 540546302 750155219 702199677 749678910 302506923 809955906 601622642 988360682 498008707 665414651 594901052 989144245 717395933 811620153 40565470 503294680 106759860 140548659 397809539 563483121 981620131 989217586 728165776 838075028 291360137 351729799 508301919 974956848 743739073 789013532 669844124 680552193 729611481 929469489 500986549 734926305 396864641 873083652 158235856 562889448 787459696 930731593 363706139 789402500 635069427 898597064 373221047 426087783 311673465 492458267 559103762 644367563 410185184 792454319 761428938 912072088 98173978 364806558 253589664 326098931 418943029 834679562 135065713 396546637 237981335 472791458 227081692 295790129 130637325 995145588 677845056 845427749 2570918 722379264 811499231 977147002 544742605 770909874 374023519 631187179 859867745 995330828 241485994 888130448 701374967 757691026 395721315 993197944 539846937 702135255 555805908 738079013 944669915 951280174 565185907 757546393 489668773 757185861 37137557 984575765 308317961 754650444 78811107 721287161 65149514 793311796 651400344 983551133 976841241 990896724 536197199 617538445 530419196 790196600 280000446 744952115 819603012 872336981 768305801 965299857 100411666 877920857 165637039 461550958 868594507 934370561 431331626 633815666 535641458 996960182 254112906 563647110 349420963 729510062 961093967 965881407 77633974 468435620 156252359 770480871 931343410 974990426 318423714 767279854 61706158 426745278 695987694 978068869 663246594 753661312 366381935 710151306 962909670 980408632 903372089 982898654 343038962 997858889 980202463 997910931 480326080 997081809 207088201 952293983 720258703 968429138 341626945 741677203 520839047 599902749 967007514 973818055 338537394 961214654 737618157 769332528 325127931 891768892 590547684 940667021 762324608 919407739 383221236 571222328 984809213 995102727 57005788 284099476 874928013 964421615 333455228 512437016 959736830 974617384 612876981 737165883 286763057 343347402 862390818 874252033 338532839 465486776 383195148 495013890 717900240 934860510 546000957 780022906 913581136 953342207 402626897 528130994 556151987 576583635 989337412 996691469 993696360 995661110 802227993 851215589 173990468 874540073 679495584 818793937 158141788 480294282 383319925 758950350 791068923 813239087 79725856 829638630 891354752 940287701 603089213 802709754 962361150 979514393 32371188 751027824 168347299 803164066 335330560 473341413 344699261 891801103 612924922 861233144 343436384 506999873 656376196 820475653 432695655 575749984 889692226 962159935 711957675 794786234 904775334 920636572 256907522 366455673 582365131 922280915 974451638 981238127 326166044 884835927 648577614 746648782 197924087 366399617 465995036 623130616 234867127 881979190 671580447 760634308 687896731 822597192 170927762 528049221 666519932 848661602 207098096 841266362 455891127 802476706 129299875 858222343 244303796 867410967 490276676 501880454 273770642 543125772 559033475 840063876 438687042 563164897 175424245 533502585 812579245 905366242 207434047 858124859 684094998 796440970 805576485 989005006 908887111 967010031 401667349 467846956 71340133 968498554 389249170 554212479 220102618 893852505 699349452 848142126 434965142 842240275 764835654 986283933 3002007 176486667 974511531 988502747 816137555 991897094 367701749 997172902 504075697 743406134 657725539 994213669 634385802 876314318 900319544 946044480 405953166 777031839 650159509 981610232 224299937 930531999 414759513 983702378 818688010 938478352 926098847 928703813 154783717 215181924 308703047 480027467 44210698 563988110 808588735 930887146 77140875 629039614 758673239 841434999 629788493 739908106 776779723 916337205 161598194 253346706 274838812 408646270 222996879 244303818 712803617 900541622 660752955 807863273 610713600 738064906 502826052 779346062 972114413 985596573 821771413 965186056 319292722 402144625 948423098 978264366 248607566 310474668 947154825 965011693 396296204 451038306 555294781 623842680 390088159 915539897 779465861 951218624 191728783 775176072 367543218 369409793 437012285 561606804 890003428 980671184 937962222 974588345 70370611 737637239 837652874 931137272 836229821 901722960 39147947 957002043 684323222 993628188 425046452 560237061 141640174 949736736 707647779 725137615 640157093 678849667 569556509 997731823 518724609 629448167 597540491 898228040 227055348 804973304 592853285 930440155 435754232 587442659 347271821 590471976 59126581 895889239 635935274 898311135 579584457 779067401 966942033 969418312 638783122 820882937 441691721 911561754 454076709 783119473 454627159 858293102 943567114 969163235 511157331 753061023 631675628 752459922 475339224 874660591 973568176 985958783 486619664 631912741 315880342 637501161 159770635 600936624 382457090 391448269 717500766 834285184 384409893 399570717 622899605 715660845 716722478 845321588 185513502 419867137 620158047 960252196 562179380 941541824 202020720 828722776 573371150 932654516 108976037 114970107 756304958 913028440 496138509 520253330 448892542 471586022 702357129 853013596 580814148 698266731 898930671 978736370 318104183 413255800 863962545 928796470 950784045 954645224 716156864 780342814 679056328 813630990 416877974 690427446 175474106 543052247 647979152 943864131 690540135 712545465 796207027 929073998 506466981 898266801 167506858 555404051 155624983 651139225 403585681 791445615 923342572 974885785 914997366 986472077 911269270 949958365 707510636 829850225 772974008 818563306 399792009 689686417 967433236 969348213 955939433 984767136 627376488 894764130 727480730 751173276 552537904 599698742 139658859 428936613 337859873 790736199 607818534 676523237 135532913 475163569 46972348 456107378 582462068 834873922 174988572 880859036 229921328 430757069 468537611 876759216 997030806 998118689 550341000 768683233 723239967 845030097 616512961 682305741 527758677 698418485 363964630 419997959 263397055 941718468 27085107 59796465 726465849 828829928 322719714 434311752 874015022 988190780 654137524 955839530 32364636 583488057 505287736 752401743 868477980 944048473 499339274 726453769 875114377 882775380 256934183 609030579 858285366 952633902 506390037 997043136 265292100 602553536 425044596 651533911 585706452 762695567 746157138 857209307 166205294 268202084 254434761 266369959 130731935 288181170 305214421 865292813 102945303 127071683 757001033 798038278 548694992 722303469 961802683 999328835 471957360 671898797 217270170 989227512 575087867 662748945 474557734 648206782 840673457 950407819 88682162 955223089 197636961 703385696 324381930 651837606 417636768 551980669 673146563 962060502 52375749 178747394 994162941 995982608 104170607 586354363 213707277 645271383 90648278 182445323 821105344 905136193 495080057 812569478 968753489 991429448 472893028 997081767 549424944 702241583 740013290 996172563 961809843 977054862 525366399 747494113 296253552 859301988 611605976 930430188 962468713 976633654 924825334 933057343 879793570 884789111 805932419 977792446 697662335 793584232 31339385 634781919 996673313 998626104 813991400 942830869 821946969 980923236 923710250 926461575 680441003 779641189 717972793 776089121 440395116 807675585 432807860 591981413 275461927 682929091 744532927 866912576 354368034 481855966 714729454 881295481 7606938 585575684 887986152 973532874 631495556 771122983 558833783 664703882 642324025 987508990 303498300 845741143 994780917 995052283 799562343 965281775 949276737 992018452 749188263 798520966 986332740 993585148 672041024 762034204 921668107 958189324 362729346 846078776 272812173 313501717 603969341 720604036 446423404 722787731 723582091 902143752 807939077 942725643 21670167 691810296 508857589 682570434 758802013 989911076 137454268 634853586 641224938 930583717 437859663 459803451 979615887 992374467 400876255 561509720 345358286 540299472 612155058 967492052 883977530 963179855 941187136 947325515 270166367 334072980 86175471 204539092 564408413 717953447 719195716 865176521 554451992 693582480 703175859 715697840 106952387 937452920 423496 324198490 244785689 801057187 424696744 722911790 70448243 346093948 79968827 929378472 995610684 995759493 231904829 515689011 687715435 949128563 108912209 892086612 930994387 962509803 391132508 971506381 939732374 965164413 796254229 886919176 96836679 649176269 425706692 863138154 680886572 773007695 257101025 764704249 394542789 627885680 362000114 616661286 999282958 999306074 681142712 727391783 425936142 963338556 908173591 962983831 942407830 980007008 643888084 781769184 765204840 925084039 323727048 725993407 153999020 762196331 684384202 922798040 404903009 957620916 216853663 472182171 269606925 406822194 60827907 780767730 161701301 720180738 866495391 921987501 771454369 832067272 311585758 712215058 188959170 864144113 699652292 946687438 765591085 860259983 816637623 821048709 907282319 981561094 655300414 905656670 497221683 708324789 961453323 998966950 968259101 978754680 157501602 945067064 97439556 808291353 851233831 997803440 892040262 912578597 301675679 926323876 735416442 829242601 521226341 521499188 290367913 956927496 110782125 803290386 570966581 943564971 718572003 847958986 50694523 301195218 363807582 797836861 787356335 792825315 61111967 440020105 980990529 996035115 428634514 639062367 923152773 950790754 733724858 844523911 295218379 943208751 602885591 633173345 783379494 917707623 246401702 432933545 384217879 409397149 901530209 917209489 460778439 715288699 52122784 652681728 896210671 898265992 489636192 773670080 821232396 963217398 641202779 787387491 265329274 866624356 736218959 937310124 366630438 772272946 557101682 792469183 419195916 766570443 717849896 807658078 746632904 954189196 739391744 970994852 450115038 637667009 254537406 652329106 464148476 481486953 597849723 862242996 377382636 506099286 726597811 865350603 901427439 935777167 866132782 968599559 921827626 995205706 716134744 876751272 649058593 974089332 869700333 933572083 95223245 140054336 669470981 803105830 76432349 227505746 604176667 811009136 270157229 752959586 912821988 982649790 212642331 263202015 203652990 525026368 111032112 229010444 989697686 990330265 993245366 993542791 56667370 807015516 438512208 823990119 19661500 217884998 897555413 967107529 338915218 524055751 732098501 908465178 885792020 998615491 495849416 629283195 717644665 776071082 977115828 979548885 817934328 944686995 868912817 917812935 923239780 936255574 152123730 748661125 382158706 859500834 884996442 932961727 250679138 402299722 507729592 855178343 782321346 863406805 996458700 997484083 729555070 819582591 984123294 995597032 43524187 726774921 346836031 368766019 164052132 906894023 826397361 910901229 584260388 975853764 90911408 320203617 360951113 856744009 909213640 975033046 525470745 724059431 734674947 803873067 309237351 906032811 912349748 962263296 82359836 265194654 664760012 758954911 926981441 967656286 286457026 767302371 48119994 536287472 751238348 965704413 54725033 501154872 688986861 993366136 883172782 967673306 487446351 640148940 485145223 977602324 350755426 718598030 725050225 793063496 349164469 385079224 62814880 499202261 56927422 239733231 750059671 869632137 795204903 901290058 586502290 709979570 836296383 994195983 960328921 979725966 730465171 810798623 333872520 582993749 819831760 879402888 80418111 237933377 464412726 912633387 523256672 990344571 989289418 999052925 475866749 857358069 926360292 991821983 944832170 965594197 711009368 886049218 713505936 942974238 340759374 471791935 872455295 931108233 143882547 271985661 584315278 957225670 389854106 514162386 86526867 654842380 997114984 997658520 510932578 593486492 344662773 773545162 741492086 789333672 598287294 686170023 436806542 763458302 20456434 375685432 8072512 873341999 758330000 790627247 82479764 691033168 513493316 825310244 966922100 992209435 618125394 914704152 22087924 659388018 382399193 968682641 522638158 776676978 311898127 846094906 267066893 566890721 762711544 961243596 685959368 786636948 745115214 975449419 197430420 478462696 667121389 941249178 121523216 556213457 839013321 971481839 314909927 455312978 486168614 539478571 400570398 965990529 569241594 761444960 296837768 698890094 368330934 947637983 272954935 615314108 206849182 620472009 491449466 978766425 411718728 940757230 386317342 772071622 165356956 722253861 119390587 505894027 521374036 871683413 246596811 735792521 269929323 531137000 599340752 856542499 172148888 500973504 322147801 783451359 448316806 838970530 96081000 437140647 48380357 502913592 961987230 983505154 826358195 913616605 213239206 771756557 725026045 879317027 669144421 733815292 622300621 768328825 442368005 527083707 423451002 724641008 468590693 992536213 61241653 933467809 622967660 966524795 556947328 707443161 379598330 916358318 684798089 836708444 345310491 690344533 33775536 854852888 634808480 810802148 261641444 532345631 838697867 987724963 868894660 975066615 673213941 908507069 851219069 907536498 306065034 891355850 60251809 411963560 723406932 977698068 586032486 746238397 562090242 591371074 598755197 643490834 51831857 475307218 851012293 881796987 441847749 895934063 645632014 790143681 887040715 900413035 255180298 593468684 341710215 885428185 655274130 666529715 55108115 149904816 653740583 835214527 825867258 974276809 24086547 737130954 874990974 898869336 851716379 943258304 918640223 934563721 994273301 997137762 445485173 518337290 37254875 513726230 568354473 860160638 335087106 385691331 529092046 702709003 107884818 307669463 518679467 755263674 156444212 191725115 196004424 843520599 34059839 80074872 410251217 934624873 203900875 443287094 136167441 146366917 864979215 925943277 192696787 458065038 266570354 588220588 64311783 905110703 561921319 774376621 354281847 391306781 706241672 888568837 766762255 949643668 895949401 944904225 605915019 799486336 536542269 804076176 418710750 454254624 489016248 870136962 1958253 227508774 694238037 897202874 589210175 785422515 859769584 949018132 442319218 550406961 12611429 518097702 578732451 828322925 507763136 793050744 533020663 950931048 557779264 902012657 334189171 763779359 622644761 743157304 110336382 246823369 574041295 989149031 84895291 619631027 81756541 179522036 698584914 808120362 856162988 966022673 808708089 948806300 869873350 878768415 617158468 994384463 12298790 931608664 19992870 383584331 210329462 701609453 20949163 869561305 759251018 931648644 19164808 918546035 435500965 611664880 615965418 657784852 689217534 715290777 776603124 962084698 5951732 579780131 796717366 821093792 142787578 226068318 966997891 975737130 704240013 969378670 432985480 530144766 501951998 536824505 631566074 827238535 196674981 931178862 129779284 207411032 926803091 965771420 499585619 741979989 52527326 724551464 328193825 904386242 928724692 964204229 929366762 945411298 935957615 995800932 255563779 806733372 417909815 787689148 259740511 422284654 749810934 883486516 494908422 818488427 637115300 893399694 931719290 955099719 502067051 909722010 516123956 840322426 277714610 667110817 536979845 845012250 934768191 948080659 927357368 939793125 707333179 927740327 167050258 561261911 194036818 434083171 410047041 843556008 316586567 726453264 411146146 762938942 776612387 980517426 5670075 791163718 200264940 241618181 25946413 511823125 102429117 776773211 683518147 973101484 790942897 923797570 908138106 965527498 31121911 424963544 902845069 992614244 796651329 983582232 940541369 992840310 734113830 919999521 344588068 781274252 581738396 787623825 582908293 839147873 125208437 513045415 727904215 840262788 868714949 883976935 984836742 993783752 34583473 656114983 361883380 810423001 47946590 183351052 837972215 962142270 210370058 258999791 411606424 729368865 781773410 787157656 577649111 714092301 562122241 834255589 735344024 798882139 109221413 941972352 504210642 978623985 980722740 984301813 320898408 622200033 474566787 748329040 177947571 922664358 454854984 849083434 718059264 824720819 912552329 937980609 64704120 992350904 714775852 787285311 177225332 212442861 257591580 505253673 474274967 730995222 639204525 849417833 870666538 969575921 475840047 675767272 648568002 865292144 833402155 884199222 971122615 995845407 489902256 586191342 256650837 857891412 508325252 520546928 181264785 791592809 114564454 296661213 801364287 877973327 130375240 453313732 741160457 816863376 58503757 311944229 272432066 754869717 944099836 955652217 550695619 609344880 282456043 816503621 103918445 762742451 998916523 999350718 925334359 967115430 930911243 991250096 926726587 948014721 112461057 921054448 405550807 451419455 946358041 971666707 113426345 455081571 387357478 943809305 740218028 963680376 695661713 809718670 18401434 651417558 586187442 854702714 347394604 751403005 886499091 994067128 185657033 703907707 720714784 754120533 969138864 993641627 589102342 752307616 920891747 952983316 106174460 796963823 555463884 634899354 51387792 99078100 298205393 530721415 527448431 647289437 950125770 965667547 620447804 704718142 298370299 891378769 415299503 763488979 269634631 595004645 615270447 731308813 398831804 834940041 322635503 724274775 123783882 523372421 886679580 964083283 470786348 921220380 771051578 854781832 330288692 367332895 292074128 729188087 784289271 935565461 659030586 757738360 334130114 765860895 261785044 382664518 190693156 541047561 905255536 977507290 206055904 369197181 963571931 968922523 218417479 377314144 148189271 913768108 275334661 823849108 417102721 847182294 6417695 127625521 348447554 726654158 917563428 952768943 994343910 996945600 945511161 973362618 572067220 953961360 198168232 352067732 665880999 843131409 153370558 947967258 659799161 954533514 398762808 915031487 534556795 591200554 947316623 953874214 255530773 515982926 690228837 743635952 208317956 923910346 639882540 848120027 948603418 981466131 601851112 935329472 379881243 401550562 136107182 834304122 629219213 647124093 119233757 781020162 399713051 512210809 688563806 832223048 592883836 989729969 4572976 879968254 114988711 206054494 165108151 824458678 244124373 566136217 131354532 180375640 363824370 770867507 34266352 403478408 824951822 928686296 986647343 996869075 786790474 814168706 458770975 984088429 556899263 594135751 422316158 990774214 438292185 660302290 807520421 868528581 174891789 226427182 601101377 886904121 980011238 987326213 813936609 946571006 336183756 737354103 392485777 760550991 309344095 956562876 97445659 171330075 331421753 386727941 946032247 968915269 89455097 414391250 936006465 973358382 759833243 910016287 576512957 782369649 150749421 609051955 519963180 954784038 743748014 970369765 90775470 871467206 210678687 398057946 464860332 691605831 38419799 422236710 86893502 653503913 95541726 227438151 458845959 638348217 222119009 845472365 95492315 237486850 287465451 831909019 201486088 838433993 133691297 663321576 880410390 964527949 93523490 595401744 186047029 723547606 681016030 803332969 346235727 666939765 737032094 984161180 904479509 954881099 476550906 990684415 93985240 143807758 335751370 869852137 196100705 934127831 851757777 888718356 45262762 946474760 367036959 646215552 357003576 871108097 652916070 766045514 341557004 655400749 627391757 902938737 556054406 948697837 968522903 999137421 183979922 303424649 531899862 596207910 609610202 701722123 553764860 967295850 706367427 980946417 594700071 732284654 983124239 989858480 198683588 400715715 106236341 150111461 326103040 576086612 563208230 724962879 756692565 911041178 389667868 796610350 986416577 991035457 510879133 844619202 169043170 228251392 347053207 944932960 823725330 906687396 646962560 897062891 840515383 929560159 924797154 963364629 131523647 915662109 667551859 992639073 50527432 294748111 240662917 814373886 883205735 994613729 400928295 873547481 546672908 589173138 30934679 500358759 746507696 761492130 574297397 862860340 149568498 592776919 715657459 721936224 830619129 856040839 988364189 999217340 172465761 709934394 197158824 464286078 342164078 940691823 325993386 758038698 133514522 370872758 722577689 900488606 437066512 606933442 532721238 678799844 166795461 553087020 254340992 496826384 469076880 523612787 170191398 428598148 611465705 823926032 557996039 970569110 436526338 903915252 863707565 983371316 594011906 678564315 856846975 991157008 139214774 772543942 249102572 722143046 609923145 719598329 723536826 785450744 686849231 834785857 624993540 799082220 626837269 686501923 800660701 956576465 484112359 784158820 576934195 813050753 948271425 968264374 649997385 699000885 288877445 876004054 948510266 968090276 107117474 678565670 104354686 108788658 65125828 340526496 271067613 516421927 867384572 958415182 592808908 600936031 937513462 948582118 995410505 998003264 66977567 249303703 417421241 548525506 698044574 964762070 209568071 976250019 719209414 991662494 944995902 983442309 76117163 248072772 274277784 494800706 171526366 846855925 365441757 804675771 51146233 995483881 163400416 529021828 185071235 266189943 443172034 446561602 11618751 248324258 407889768 431958438 160169836 189899255 544495337 940264545 727810498 763199725 294501370 822982887 787195991 958276084 15151511 70022521 965425433 968583658 693742573 812501468 763041300 839818051 47459367 58827974 694729699 992849436 947646624 985242053 245010889 964689040 164657561 574809795 91507133 746294237 315873444 589889422 693314275 975851113 580103739 595948168 717880287 900237149 677521753 966753611 322299390 994928584 869139492 899631135 267231242 592971810 875046615 996282877 692056967 908761683 153540443 288392223 101089421 466451505 119340236 346019221 590697082 790144594 839857617 926560153 793550296 883948899 393634209 691959053 485485218 509018659 183194801 194667628 660457544 937137630 909706582 990033214 299525243 479755208 638470980 833001529 97052950 799847715 904933009 959106288 600945250 651221244 694307772 846651254 837844598 972619631 357494408 885550037 416261491 667391137 50942296 515292148 472050339 516314446 190806805 619957812 952002189 958933198 883608104 972216580 357414925 441756466 179650634 825783708 88245285 751500811 445297372 689859523 578347536 921267302 525313934 635028742 365056845 960043878 804507115 807441960 40353675 694839523 406181287 919557254 834711043 981765264 732110199 909184349 444091710 869907161 248002691 340113027 641279416 925833419 619895905 640382593 543966387 905500844 229667498 556644064 349809899 950979634 237739660 952605959 267015896 896815636 529600465 817398945 36533353 594365463 745654484 948371916 257936308 793676676 707122680 787896813 436372994 828930097 183512502 625443567 903285147 944260752 848105746 871815144 815163483 955950205 786262266 802902822 176797143 715823414 286900437 494975821 223933846 885972326 140402944 804176076 870881205 957940036 993265657 998252819 389622580 921759444 658693744 746787566 8966508 488782677 188940288 510428710 810991283 989196326 38878430 960348957 611537162 752793818 536276888 804771450 847648548 895054457 111146079 770482713 620942748 664059561 183670105 430505784 695448196 913114012 938071435 983586708 608544634 887296370 538509421 640897963 442606177 532092508 474167811 926018361 319678885 631411801 504700764 774008355 352785165 873604291 191911100 341372257 487390744 912624610 91478148 668336466 409099969 832116706 550897095 965181046 502674166 870878687 798920360 986560625 660473214 709866077 362112272 903496331 903017170 958273233 850404705 992932254 345284884 403341825 671516148 900642476 428214346 497663447 936810946 945293948 679805054 788846158 342874704 622458153 401474194 840263264 707912399 870944700 954574638 962064065 793869232 805981760 228699159 348547204 646214296 656391219 113684931 323856360 277712420 843694979 246711536 521801215 233817572 465591430 941942403 981456943 645282479 840142415 807309734 985258605 520154846 573410898 656531015 676927223 734949847 765456566 510499535 640701457 725729756 728156253 941036810 946833237 620094868 725317444 818307606 913136444 861494010 972754058 651468013 697419750 779260087 789131736 396064330 715631019 834271197 835294193 501565602 600320305 433772550 495252727 326645861 958135357 925080971 925749649 366563739 982647369 863029611 875909037 769579049 904109329 933810356 959538482 409162920 440769063 561352830 940389197 148098891 691710951 745887871 941098850 639256411 873386559 804310821 841136886 487208551 908172778 978162324 983114672 156317606 392870945 980075356 989878179 95001740 297153371 504919226 963268064 326523408 489914097 939571602 973001914 512466638 706328065 270564873 417564493 930169754 970580671 699079884 911230276 489118105 766991840 72060286 394159650 878870317 961474203 90132278 206686160 589454779 742726620 122115929 924846494 602863523 683078917 654189955 746779839 826201708 925129556 931439337 979347001 84489073 331232902 354680077 725189401 777385311 811124996 594334653 990598163 231018067 870547787 576750434 688974233 200645011 263336253 484112196 847581428 658859766 685927775 594818854 769474728 372015933 456861375 477704912 788951086 147563875 902305498 976393883 977471034 12412956 965212102 916972785 940181483 176648708 671520177 819554980 985512152 631288312 990690178 152656924 350990774 344575996 732508220 444241740 722585804 829832379 985355614 14647866 627412919 293339518 949203553 389558727 811747619 793488639 895638723 947866703 951347817 263835664 498457964 173373087 552858428 17701709 612802655 904642263 920225962 339992730 874245218 967955331 974322599 542722506 647688280 288056109 477012909 23120590 316752861 788512308 830243036 160505862 472347955 378335665 432747265 864020085 965638533 828030769 874496713 861789065 876605626 386855699 696413100 520132000 568012547 434331765 913511938 932816393 945626098 234373098 350763452 367696464 922772087 812320126 989697929 712237017 879981057 734546804 839862481 141438090 729508668 602504416 983652661 479764359 510691950 28665272 546271400 608024617 921384344 504353616 960477061 990895464 999070892 289160186 311998179 739203145 878986690 762077960 996527625 670277345 894685651 67083837 504740688 584577963 826043482 554326356 947762934 132896270 174928107 212634246 826636252 676720507 872702666 644553790 925732388 365488137 757944167 740766278 768679387 881147926 930215226 689739782 765740781 172903316 492745864 686990639 897817534 642646737 690007289 9810453 208563868 615155798 952293921 40231274 861541253 301132178 898623962 884711038 956187011 177025110 998809068 650392881 676686891 787290096 820569243 875702815 896276997 962046580 993061366 335583773 600911969 760795913 831249610 599952264 634309063 522569570 890714011 684749778 740944503 450333908 759520234 871387749 955551834 389641173 915116942 219013902 280705276 746114286 941245680 363922432 684346669 446762576 906047344 483524202 850000747 859054672 972643655 297337684 528203048 573656872 845932276 939575230 946331317 846897301 889275043 346654439 929322754 783240270 842667192 504910447 719493307 200298535 695470164 291313556 313447264 490035880 504799980 850707790 914492308 671337069 919589745 385535291 878784956 572319469 670384993 880317295 887174264 83888501 272348625 917057367 923073375 161147484 244323142 501408366 818620809 278991911 813156594 283507667 763254979 886346840 980739485 691982826 856663912 573953270 711748813 455113231 938008909 881871257 930478211 792290968 848365891 431204173 827164322 854706858 930296273 235526314 813531779 996529201 998712603 258996895 475766832 140093561 494848434 509777454 840946237 477049775 693570024 779603193 883570814 872620462 887303597 335391011 827182695 901913041 986091333 801619939 902883298 227860028 467586560 664119283 699331125 443622689 550454118 31398089 470755192 181387298 559872281 879329649 938787303 202255722 933365120 116869364 222233512 76690554 891881910 566867859 970672039 230779665 407750311 872428054 897886968 968607130 993725809 76451075 902144549 334838673 458283002 310750278 433253418 404403402 794011656 542284005 546091643 861712517 926825880 28675317 302856300 8860529 817106359 137195476 552887530 279743611 878368874 623094056 754143489 394140008 469712712 736400964 875580460 542634550 672544451 684243833 690365221 24527408 670166771 205634482 274131993 998911256 999113922 624469159 795348025 582446895 977446103 239399003 658681108 791624014 947867019 159755154 831884382 138182903 314602260 267848990 292261817 368194294 638645241 537623747 807237117 618235875 777908488 333831625 710717045 408507504 849474912 566170848 629506764 437103093 747650760 61867570 377674312 772220749 831369611 71270647 449167876 511650102 903861299 991186189 995162955 332280793 444211784 982907230 984280175 960454102 988445450 372256904 797664219 318897854 628009628 323977103 909794413 408438321 426273069 296960132 618893721 706134278 944033367 737091900 840118157 858339015 965099571 79655035 536049727 840861578 860538954 708240564 941111255 656613150 798589054 406404206 793884280 946175445 979625271 887269249 928210305 595435404 659589750 478443800 804117013 417341773 612423720 762192487 841585588 246175023 768393908 326994149 873900762 746735611 785770143 39678815 811044232 321165326 832566319 551879461 572756494 701038814 741889662 301938846 489416930 823604715 913285134 681994957 765481516 448255483 942701374 139451928 823134890 568248874 966023350 695048895 728806125 601180155 738187310 772754753 861692389 505207959 602163485 817944235 879120297 922266678 940910594 56773324 477954292 769134627 867754142 258262016 868170077 785722056 821511165 385744462 803985722 550406402 951604877 539380035 541283121 586769603 631350267 28015225 713058230 235677109 287221439 631389323 873870488 217004294 825706085 458708639 992303495 985370374 993570527 367855090 897933391 259676271 736842450 393708895 713790565 938510933 991175662 612532188 989496202 152792902 657429337 256713549 311803458 245435541 305114916 108633052 702316943 535409112 581772826 615711294 880875320 394682502 856994110 786900059 969480395 736994190 745921819 909507284 909702205 83498096 186310330 472141114 685984878 469975649 631521606 845811799 859019727 130296866 334885081 898148419 963339642 285735168 461301367 918826289 941605866 680138558 946849146 869911979 911570038 424374421 484511825 665672135 798857210 786253256 809432366 320609342 323819884 647069736 992550846 686647782 946247595 478065430 925882238 247224280 717594407 369039474 929173688 311794528 487462151 666710594 751896790 823311737 925932101 921400606 969323458 726518653 811273576 585719298 946505872 982287151 999361648 564677566 641105988 288777558 492580127 736341536 844875776 516661091 894156527 905724729 989151224 145209603 160478664 276656862 584314992 364530161 681965360 772390565 986363203 930218729 996519013 32384373 962995424 749230740 801067576 325909627 567214224 490474716 522886090 576232253 653199614 202099648 482164984 797031696 828686944 89623629 735847889 215860369 259640292 872966780 910235310 630735435 798395168 107895993 127517583 825053927 913452936 803349075 878868484 885319813 960624271 82875477 257946667 717745195 793546393 482942750 625543970 835926359 927268460 507329200 510238386 54235118 91632604 82204615 519142131 358560681 497503407 687250903 845722706 653998680 664119700 988235752 992761276 379922861 398372436 454263085 634289329 317170653 376946175 4870921 74877507 16616135 395210276 373030618 798238919 885213527 968817661 270323982 769117414 438831967 845310505 45404484 274384711 996967523 996983083 536133345 721608621 472351529 820135292 982565239 993926319 264289028 772114141 495915789 659714455 378973079 551244399 336846040 455923935 662060148 843498438 124673101 359155930 849560375 974834042 647562050 943907896 628813739 635745111 461113057 489223952 272636999 754915497 122599585 908348730 218257703 358505395 182151039 931363543 182254181 552141205 530378222 954113351 194246076 215420795 70771724 90255366 381774394 988054792 717215180 758847811 170415021 244343289 713797846 996162449 98460958 623002856 148050874 475080514 859573670 983995860 319011448 913121476 301103749 750595573 428789619 846753445 383939999 790289058 154504504 861934183 801060823 886112666 559826296 606212170 429543094 735201254 116669479 403597998 95291383 615551235 84500963 835163937 528536502 949271699 294046471 947317767 479502732 894998813 258085560 361715956 579607527 992367717 857108655 927347554 673446194 973423474 95692794 687493884 46011363 447981945 951264830 995272864 986271687 992908259 784127683 943612927 532723866 751887229 647592406 974413762 146490736 835987877 64520431 407612693 24222603 975242379 251157849 569042074 274427335 345276491 914641811 958736700 522237836 743272878 562789644 708191477 610162531 675261849 593081153 806618298 473999708 815483078 356161626 792373041 862719652 862728098 392456176 785326018 891492373 958667698 903785271 922216442 106224425 535673940 786135021 867642678 878872704 944319840 778064186 963084693 959865780 965810953 66147375 112637688 596206556 838619456 107309608 404904253 645730009 750382550 134278071 477624462 564190784 664124367 113642615 383306714 197770057 774833737 224723097 946297595 235466653 621324881 782210032 854823543 135530157 783483873 961771424 986748278 240670222 271752493 513224718 797800952 942017144 995105907 779280217 799169342 437952946 910671280 405054767 639825881 829661822 970315274 868441529 953777709 113098868 950118803 369450912 863599314 595996913 857937158 62828759 803381574 528011389 924728707 882513914 941242204 754259629 949598802 968399258 983095641 117466095 428132209 593608700 781783506 46945871 611268238 657821875 727021723 36274966 305706184 841918455 981919657 864743655 886458451 882913432 915583092 419184563 773611109 261769057 529066065 605198524 724896215 122809353 338368781 664514970 978846205 382443054 483389192 81243268 96238505 868876909 964809646 88231959 551436976 163197640 748565752 701615816 752450895 439890276 458346313 365817745 814700704 69285161 567821964 723941543 953496591 343642742 949079229 878438520 967222763 49359071 114083490 496685144 932957392 937113989 962465308 136480686 822518989 394149138 398701069 854658251 975367530 838823962 866891612 191343443 486217548 514530029 825853549 769680073 897998222 727882466 784298483 876524489 995571356 315708397 993637240 75917435 728685818 571294345 885767923 981078930 988100629 8470512 809643831 381577598 947690037 840384609 843536535 678432522 705588810 843525758 910158168 413360052 630933274 320830214 916198630 264168013 583119755 830727298 905841667 829196644 931501751 590741960 951285617 2621065 262867796 340483498 541648718 708540792 920052770 685975447 955479354 878758682 895785446 889547994 987940878 956026287 972005874 743849833 891254977 45095336 456281809 57159779 760203016 813680124 894547153 631707341 806493002 847919609 955965004 744809718 819219658 274190627 565342675 10609631 241204995 732777405 964430291 430912537 757229489 337251178 764747711 178591550 921392373 391473365 567957366 498196755 991193087 723333479 861027184 825931653 976021268 296756571 462425953 110746492 312482813 698865442 807230060 437118339 582483044 399823173 835258314 903614457 986578485 36000623 620920782 144059938 903057998 286094767 319284496 739098002 757785243 713452288 826204827 719541451 971349906 430985617 865205487 155361147 609709850 617409919 892940364 453727566 781017720 158104467 584775208 361686053 430858096 784771739 892705188 634587613 868508490 267092039 636114131 917753956 931494249 94454020 195286888 858684466 957380660 12173477 441665740 441719835 591473653 133939230 183129176 550831960 704627110 378211396 464858798 291268468 376449889 911636575 993812440 609486238 877574491 340067763 491950830 793851921 952604434 388416736 663490236 280755712 479254528 362323758 981200969 439623851 598353352 305942454 824423416 859359853 995402347 273986936 538843378 964274736 966972989 532099753 592093226 124469755 964779606 547326559 681833129 132050281 309959117 880403366 964997824 501025400 918582291 86747050 803272279 173259498 444198285 65830655 936063913 782429224 845475461 610277474 943242812 848081033 974039921 65131957 546038400 912794142 974536105 710108860 841151513 569255751 595075504 253538060 324274107 22129022 949454933 370022922 787699940 660769291 912602992 851896935 858280728 515661545 869714639 400062942 820141261 728336255 755451028 15239657 679322656 286443446 666749149 204034542 497698563 202225976 926265762 858243779 903851409 193710221 333550128 526759619 731651502 839041087 962755282 383085700 730189077 575890487 703260944 903512386 930882344 355134837 800401568 524765345 828424911 504087719 800689394 329819920 528431130 657349203 687085970 945364655 982874743 242770727 778839826 124906144 215727783 465640783 872190989 32753256 708429339 304431799 434717030 654787444 726642458 885617897 931114500 892713689 915601356 645731883 789133822 421730555 916442618 956890162 998195844 865419426 950972637 539612300 577929703 911420220 919611902 137871616 473769899 52444278 380755906 289508519 876930605 421216400 478451832 497631227 977845599 341529899 867475180 356319364 454332998 914031929 984118379 231654647 487416603 806263309 878557223 623791260 654740932 812609859 963172399 325613585 604010620 481060257 615805313 100257252 767986237 329923305 957822480 700985674 941750867 326713112 967822760 220203746 733244992 957713917 991856636 459961689 506734313 349549591 436980178 45647406 58848085 493825534 578329135 188940656 688739360 938446809 946495908 352351366 592280958 159431285 723832411 356917035 579798201 264278403 382050025 713524205 730410335 886924197 919494415 135981465 782939013 493604573 956375680 858559239 932834597 644238386 987313292 606607813 836610229 928315308 951833040 840427639 905663801 747154528 770073081 866349782 969577414 929305881 948373812 910282849 912795252 184323769 573611744 45913044 190612241 532656067 764887645 359252294 529552263 46870826 809810119 778146288 785025728 920380053 950183816 956684146 965119313 426177350 929191018 921196969 968258145 628968685 850906665 521181967 761648892 985970893 991147573 888181616 934211260 136907868 776313427 807588386 978762857 667749443 931015321 233156759 375234299 379233035 435484165 919037055 929208889 295448422 617362484 353075199 432960877 227491377 733866861 67575965 289160209 7990525 366215129 939957691 967890763 137345347 584161766 911228934 950684793 317348797 994677493 571227887 660341901 866865478 972389112 200190145 877058910 891780449 985386571 252309596 827272512 782904371 805946765 286816321 386044448 633477851 966543863 361165005 860441983 729181321 947269055 928036147 984562306 906874820 950956306 609370728 737941804 917828564 927600076 280046713 809623365 270600539 851649774 759548567 838617546 623807305 773528872 401697725 503829595 998564840 999175403 100247960 652291412 487189475 731617755 189972378 661165464 797529965 903654256 710096810 808305247 264729414 592712450 367377575 486702048 792237354 943846640 244086711 450625848 502173792 734189008 245728828 273871607 931540311 968038488 437534430 858263685 467116594 978258387 139179443 430710570 77714065 313456158 350370942 383701129 308997972 817414646 36828997 525350086 985057667 992013046 750960998 820179767 854581304 896056225 185662458 960682995 128211762 965800939 496956587 535969193 693805149 745713552 878598452 900244046 424166128 733605934 536329860 932701832 475289489 739165432 426915094 603319898 361043941 759408045 897926457 962321053 627056418 924400031 161253046 834740293 118850633 743747700 871885534 935373980 482359115 600503356 489928083 588257673 64685036 365011824 382798671 653605146 420935453 698375873 354760676 583865616 666482700 876558913 822526830 952613257 917391002 952135492 354688625 762056894 926338791 986003981 533247564 896650419 138455117 562098244 498863831 918887362 157227301 708928743 871845170 990887822 29549272 258471456 856593597 876397482 476860236 901096893 876549789 896329707 839951334 870624005 415632460 632768078 918259321 970574765 29642684 243271433 879018495 927894954 198237826 830683592 145391439 310050193 103514121 330272005 713935642 899267150 399125085 712533759 16376066 554321762 912479307 950584659 738652444 907355985 73028643 174894879 377290972 468229565 273905414 378366568 226357799 340457612 379846203 711869058 591803790 905029002 336738157 881344295 8268233 202153172 190629934 335616350 722510077 752762924 159661016 753940034 674528510 766759607 276825013 570789308 485479269 953833801 820491688 868303748 136489567 808818859 876586439 927492228 894041955 932843342 857612532 974922911 566193299 947887398 56897499 396973224 34225328 889920220 422245032 569342457 868589322 908519597 483566378 876847810 198659260 792112560 127790447 573283385 721352412 780731942 140102373 960811592 942096120 973945020 761297352 927168690 972773088 982220584 805790052 816973410 363504899 655150695 469503555 781438027 604444786 755520723 99730876 986383740 214238824 254672191 571938445 945438111 265273800 699459221 799631905 884959604 929766615 932940252 460216113 651877101 296293913 659859590 167787258 476462425 153469014 361707043 843589404 880212253 792725771 864008100 838055510 918019786 583450343 818192317 300223942 380591555 580783551 884727929 475251470 950909786 88447407 718050606 863908242 915099959 995003364 997657793 825842717 983987333 48259327 480832574 503388861 803240947 731647308 738321299 304045466 908106158 244352873 997734508 879450170 892184990 360554257 680233450 294853380 739483352 761024994 853127044 493317689 796690412 486546032 623746088 555994311 799477543 524816578 553938513 710702774 940002255 392725765 923983087 317075653 808918115 847150361 952637071 626695454 726234372 938506157 980540566 416612905 540087185 807269122 827562757 783581399 921008340 896341623 919147035 770723470 907270195 412126843 875353789 600496757 919721431 336705044 854236449 334035953 759435127 710338434 943990358 910322289 935754994 894286161 922810146 867574500 963253141 500360837 699038543 843661491 888051212 287044946 363092160 767062601 876083955 455922717 733856488 492152157 606134844 383461876 587343746 261218938 594936757 274507032 429686361 409786472 803449231 297535940 728566953 286187032 363446993 49399915 558385240 348857542 919324793 401311898 549439691 549927675 580918346 367469402 986516707 308089139 620034722 804315658 973196755 103128713 169442787 538366215 618613104 315164678 396060847 131300580 506444637 614524661 833622487 288162593 678488893 845498103 962855915 134882682 148475242 609784506 636403859 814217112 963683191 464386573 859529301 394180216 982665947 369301890 598007762 909472633 974257866 538195112 750020477 554353410 856991251 594875706 706095675 317345322 415635116 528749599 972528923 534587772 714809915 455455743 617743428 56806230 796695821 291864267 572445491 802197011 806405987 818226439 851159124 900538745 913426892 830950622 881395625 898041149 938501428 247834607 588812722 927497871 975632076 917478088 981454046 422519131 673692984 71017992 692006000 393348169 617926769 302486760 651466467 612070277 733168111 508698210 517176898 210293649 659392564 524548191 696597996 412411171 957541391 82276031 123657778 577677632 871256513 993444954 997850891 667977855 719301565 300181584 748671989 948794602 968936473 311431129 974098725 176104491 387458170 168225869 172284073 166969097 669856159 138613988 273353938 667932137 816357910 877882169 900310831 601505540 783277780 115662955 902598081 314944546 749546875 35493947 526493157 406300530 751600163 74260538 833601375 159063156 612237262 897459454 946224561 29100744 258562219 500676365 863973022 628969134 704402361 40027862 580450540 561406114 920122490 112090518 362986980 314313702 544205931 892097099 934494439 8669899 250595082 832287938 970901288 398067748 593955995 713617577 906083800 335134382 512523767 405234509 559516532 235188260 957860085 666031604 707620855 655960086 888007524 349126106 357632877 810765508 870558775 569182581 920623198 481865175 893774464 76233489 634209767 417824239 450866050 244063908 359217508 368817958 994658037 744744847 919811792 365503169 385031313 888701518 892259415 813234742 981796719 477541011 486780043 379870113 784586910 242282033 687938744 482047993 767925010 84715508 663080529 224370623 921749270 478482933 776276932 684903449 712204320 242793279 452522247 445264314 810756298 438702561 523733116 513844401 592747721 247584245 540713455 780523039 947832128 681870918 722884027 655080602 742402197 60333600 661142723 114804687 941572223 638609427 849308136 887248874 980820047 539639655 682094318 1525008 282640894 394502788 668756204 215615646 433890695 414644211 616298812 843769142 919189687 341918760 651548073 197174758 380032859 612161682 645834127 71992196 872901843 383673617 516556279 927057155 949195232 484094477 922467261 338251813 411889763 14927511 995966742 749826258 754316772 841390553 888452431 440536191 479031534 573047426 825761208 666348588 783122624 5446144 485122469 839045675 841707043 539044505 677920450 984194426 998305406 498873985 830358483 521537084 571869919 974902838 994176456 187679803 239951934 437174770 678109704 429898835 992661468 837962222 846150382 884148625 981602518 44348713 533937993 400108541 633894547 380100693 926007453 734721986 779024403 814739355 970051728 723128040 938220126 570180648 921755832 286359749 881004638 101481432 976799759 205759264 858538903 914464235 951747042 868327524 943620574 248534577 747046808 880515721 994241498 456885562 659692787 822354470 977851900 701448096 863415428 871267491 966942112 286392403 730663861 774954002 871174100 964440263 978286735 440950875 792465112 936609735 999219390 494614152 914324241 243819822 271356586 698043664 802832730 676807986 764191664 593059753 636427247 827712345 925007644 384683923 882159763 104264394 551041384 773389421 939930609 697135893 818838674 429787486 602626343 325040000 645670421 655116524 954698036 745246972 810771366 65953845 617966954 194321362 552587572 801686254 980704034 609748041 778011336 540679028 829977679 171504426 680419607 33151951 567901043 604789744 949207955 138183973 993027156 642544243 834363267 176161157 807014334 819200192 859019161 560867079 820672705 259332435 590667738 706861546 924476866 468112355 726598228 437148873 748113323 809593044 837352661 961305027 984089498 278703527 524480892 270678921 617072564 994772666 997867456 791917076 952002122 949283417 978917202 327350105 489882688 229260003 838329181 932200585 952919901 282983209 692939311 356244386 985340031 105507722 362077607 262983538 566047479 804831241 810999821 443971947 509545628 513204684 594390653 831274897 863892672 232281623 352218740 316976267 539385694 50123419 263891314 501352106 954300768 755031526 788765876 127618117 525064232 402688668 522443775 302365595 774222085 162198027 689646858 2603568 213519875 955135719 969176878 412954701 514743800 778955215 903313515 893272825 896090707 414861815 942395359 43076672 521284487 889186248 924535545 184462618 865017479 605024600 736758270 86862682 472374774 788266139 906645203 624160602 894057579 123723633 465355649 694478573 911502207 204126138 622577494 977072521 981226686 579408653 879194283 806098170 982686937 57699709 567207380 921678916 985079352 809906427 880449889 438445176 535318657 57443414 830581832 497714682 899680552 280333487 457905416 109715166 441399395 762435302 787077002 269934698 989689621 525374378 526377374 675354459 679640171 327761296 466255570 562349061 658347012 649126252 921139874 890491858 946557873 146172546 615623356 765212298 855102612 986273160 997542581 837293193 958082258 240164796 273812245 275147680 813416214 994062611 994997227 151781551 624558796 592647798 950653854 376959015 709406269 58482741 237627477 176351244 784038500 190525117 968116312 649046029 976137751 456126905 552313043 921373791 958151069 137831364 891446809 897838968 934468838 692766569 984245549 491452550 885197493 767653794 793407282 607165477 735328795 871875557 938826918 118841911 978481157 183099448 187566870 833571712 986416906 733935472 863321482 25891958 256496702 99681086 858101619 372807986 905309070 596484773 823765926 30369334 778571730 499776663 552312059 197542297 954979582 971615796 972115332 725240177 946003079 822838074 848870881 548919325 986050449 460152899 464775980 807511104 832791601 456637758 853484770 471292804 743394178 859887921 904572181 564867196 892928756 253125953 710988313 709561598 812430572 719506112 830257182 646708968 702004458 127209400 296623388 266477125 332346534 70199999 964727330 246290008 910817079 796494987 932251385 962890747 986042947 620877986 762915525 479391083 993552755 369935347 980215574 283936771 521356401 18449367 558914518 142926139 670389451 533623200 904201029 508869617 893492633 3811680 956597336 266513877 659857410 54159364 659845955 432282085 610522815 964526706 976755500 830481114 960316094 134916837 183698474 170850530 722559867 536923529 594873052 220597784 232646896 241565220 584138352 661233084 794911079 124060592 250307116 721523668 887745016 253188566 416096973 300267076 742147907 896042878 901567159 651322933 655598161 602702598 885616299 765054241 943466036 685782321 900307095 780057317 821014345 362717631 408922792 673948473 995229386 414416773 886670309 563161433 938532167 445217249 979897189 618818042 974061993 9130190 299228991 540654822 991951606 427399932 727950532 984276360 984804788 658228731 752322491 104535818 534327960 298198359 569074098 432687118 785071738 153186169 780487410 236826438 348959868 27414786 700645098 555135649 838165085 921980086 924046518 142006280 760883403 600863843 607353821 915824051 969339246 913240532 979348229 210464370 897869989 443865321 858330790 405632949 434185626 114876025 125604344 654816413 994682596 616337416 868949964 581819002 909355704 871711661 969985461 980280229 981169956 50114226 152076339 822312809 877967906 875439961 967234776 465797339 473855133 605424961 995099798 360473989 476380175 320629244 534154145 264842401 350845108 418979050 707554890 908367689 958659816 128211512 412237929 875138 851140288 581783929 831299314 531292810 955227840 324933774 865268381 928921923 955702060 292233699 877269092 247983451 350394615 377462244 385034249 591928979 768358047 510790040 673162194 100203765 396024497 317633640 451782437 386654936 907748956 68868878 726891262 621200829 838511907 152082313 229295768 486560509 734048043 709335039 856116850 629953429 732912197 616006744 880373070 321792751 530859271 596043713 667881347 971441313 997262112 456601120 607599371 394585625 457368570 294292188 664153806 871283903 966995530 583561328 632112835 333895222 817455749 30993232 834438741 527111005 549530187 616694769 690474722 715772990 951365317 517952641 564502637 699340782 900584692 53839375 530973989 968891318 976509321 48509402 567062565 270380404 404574891 511165748 653684755 131295562 723554953 892307479 916620349 860971236 884594658 6281129 175349482 647774317 890722623 222112326 310197666 630595385 938858259 885398161 907538807 249146203 734380693 399827096 488769770 213298159 932474644 416191071 747897295 388870300 585126397 685419403 993227939 158838522 343277665 859206623 895653810 168873875 623971164 746151096 828453272 962266233 990353931 345631486 592559836 20996235 372146874 473147065 480401611 569751329 958944739 970416303 991656068 861166792 976527818 926449463 939602204 776026402 941867565 379101522 911194268 135146785 942694034 49038023 885991906 233544409 244457783 46151047 643515888 325890562 783835818 431704723 457246530 49881061 54627052 20046838 202832172 921380618 983059376 227611657 566849469 927611743 988009091 769897777 871814141 436183779 798782787 193589190 796893815 883733216 931942783 807176261 961952062 535103749 579360964 347651292 775980768 702571564 924254636 500127690 973653457 154854732 238688651 600390824 619241755 37293697 776426099 680597563 828205795 934175981 978930744 198111470 964676544 663926903 794527819 822834831 923744780 567514518 643435801 127363593 131427763 523556874 930669231 884617923 973630391 889166115 906843931 6203967 838712384 526486718 765687468 674290108 841978889 850648950 956225369 721981402 923916354 925887205 952724222 996649491 999066637 398876047 455238595 764477985 811617031 578649634 849331213 753690417 887074440 312110891 550257301 879352725 880779678 427818 439855075 489399820 966645934 78033913 939940028 649457019 744961203 610955890 623297777 334815326 610874782 274347074 662046582 453433877 817068123 833735208 982812367 599935326 855730065 454705181 995608047 238692105 308108914 115094512 507541059 648584336 834404473 931939454 961129845 550461030 584756411 829427173 891573542 972177593 981814273 60449810 375047300 758948177 863043765 351242436 407139833 418700322 920920306 624124803 779040371 508121739 858838243 489225540 552230938 604811294 854091710 94597146 360904233 378586164 875294628 364234417 917416647 477672168 673161115 966062783 993408011 434904480 483451879 661665607 824173891 3301286 39308069 504040522 929996229 33569090 196948969 768351432 927746870 549281257 910707323 689249471 750356663 908391387 937317775 454518981 744573883 41779835 682107395 971539853 980572417 263930739 408455958 887738412 966319423 312875390 673397749 23436560 883300720 880490240 989901343 555426635 909514272 856748247 880473256 56656880 180208136 1069569 257586018 476862870 859027330 764261319 951282006 850896515 935765733 97818158 998864270 888571354 981939797 480168458 570493229 972006683 986853406 648941024 663855508 296027823 468053597 101642945 786935418 938778264 989559407 837753074 839105591 150442451 393156883 65376622 238662251 284091966 832397471 305066094 829443449 254419993 433832185 105618883 140057590 229475886 365805736 767343328 980089056 31886131 349905287 342318554 764018250 60825925 845381437 46166105 316514176 25343758 893007204 16483137 503352644 63231786 730258782 841702232 915684187 828818900 885243160 509826758 802297733 514855773 991108773 141004059 514208359 206340409 974425584 60099206 826512616 504536267 621341916 612972468 659930240 313082380 331335440 463639844 694293538 355219844 757882530 573766132 906021234 138115825 616245737 165843836 840752840 65851045 346860229 908243834 911752832 279915363 368967270 335975805 808767805 491433039 502156458 665060547 683522750 668185124 888192507 465366412 918939991 897254958 923339982 984828595 991348512 6811086 130101737 952486968 990435171 618741751 688054002 386537078 652566553 596192217 640519826 899436711 970022386 225512957 675216289 311706672 771000500 173417392 870687418 513743038 907876501 337468741 353145733 300542546 966231974 780780320 843424029 99878999 882449538 298949313 301260422 623028424 875362051 992564324 996213071 876115325 931714448 495874045 803100594 624211326 818305707 736602667 931316134 258160249 519180220 778935666 976704784 943211409 999276381 782443489 805669700 786153759 996697025 795589712 973693371 123925958 413291049 139351178 388749204 207079067 524058349 965781815 994887525 420198590 667142318 856159012 958122238 435554791 771778436 206392180 209809361 718077116 912363663 179751989 236399828 924522702 985515348 221632462 535170101 448203481 506003352 149702251 723676774 245053567 702438157 93325063 198966199 107292972 467302608 640024282 797575289 528166763 879113002 566540987 873473713 414993427 669566321 520397019 748243706 514812237 734221262 705360645 833375854 544928570 786651268 705600928 940789591 517535635 856833458 135473619 376987345 627290346 786634595 595284063 845739939 503574499 631617557 479182843 813680560 106483389 842678616 644317845 931281719 595057540 778812702 878214267 924530428 731738483 988338789 441239518 856412662 729455006 996214082 87327204 224265042 435157928 768656393 103806138 874772786 677367923 801053818 276621492 800862865 877967012 983508294 402400919 551720366 864209295 974504042 764719058 882872539 171263684 813216992 858462651 947674002 878555226 954336066 187009148 599441395 517100370 568834859 12079238 511924606 853705842 889934195 628175209 739248734 534672176 982308845 91859095 604400686 569275847 988710825 382873867 896201650 484993754 643981374 957612285 991462260 254956145 726793360 141782205 939989090 163766217 661539069 506587710 771456812 680176727 768543907 435677231 564213182 851488021 896488804 476677955 919673052 443004573 604825559 342495172 427286551 498238440 767784919 10878768 12979476 70769643 347444660 11993785 222908392 697155963 937229688 916648637 981772736 199848493 565407395 297601468 384864389 448736840 656516557 354249777 489450981 545519977 929566075 926164050 970868471 335336719 703880035 918583371 957646199 842478720 899808777 476530825 914877411 319183409 886404453 661676297 793895249 735012543 985936039 380752802 744624655 607412959 880555723 457512299 970174538 579952754 688037698 136900032 737002679 145397302 187632741 169568945 336253384 332530255 658310921 6710294 722060655 281354558 677808676 339093110 446124604 847773566 997618561 69912553 73041683 706500602 812310518 785071988 974772096 459337932 522612173 790400500 822029628 638466951 680026496 895636374 934546160 785805445 787621989 147310547 936046411 934177591 995608609 597696666 720800854 239699474 392225752 535548652 640764550 4433953 683265004 701052787 734557302 310698791 922299270 871024345 900904101 792046255 885598711 115359050 427923067 169335396 301779274 271610819 464053346 19843349 97845980 69982521 865536404 254335233 267647488 523662167 746696054 376270373 631966072 251371288 561197201 416051582 741937698 149084511 525390665 349249845 402972802 942872040 981104936 982472264 987070652 838999458 882988567 697174188 757137079 579510230 602466372 868697316 873246678 407694661 871269013 348656070 796747677 314355268 751043454 713458861 717515449 643875092 721674353 21578268 49144148 43601512 498183276 778205201 859168110 573148111 910363291 212796255 790219963 523564627 640786991 656275242 755853407 542078237 650078945 290494094 333522651 675143472 941696392 682643115 843850069 508673513 768501202 746839612 910460872 723487607 913555892 867393105 910620708 475637361 654707905 341476684 805474467 235085545 532687514 59558792 753071378 955748304 975600987 21433157 221358188 421734542 535269289 994689257 997178605 124647471 626049453 532150816 645027762 286220926 694988456 202278830 496535123 539437876 661486130 57651571 551983902 534323613 660173327 169082567 996314238 725335635 792020317 982072142 982936127 365001320 525369375 43743835 600069731 780576950 969619057 148993290 646153418 625634048 648390459 60368412 666053457 990662466 992633831 272637622 310514704 800760627 863879293 318575737 727256451 196412768 401993000 849291185 877354578 908883441 957665119 608309062 924815320 375552290 399495833 14148403 492225544 162241928 602661699 208843730 796626180 305216393 311980258 381888897 563875015 940083913 947861629 444263035 999272929 141457832 503893906 872750569 894372328 581596558 726821570 755503676 916554124 608368631 721384588 380125865 825657325 834465279 835827987 741906955 886661340 92625053 540768828 738449382 920560593 497435727 604812532 802975866 897151552 447694128 975433231 254946042 633582420 923395693 940882600 842812059 947547308 948474828 951101629 170470133 541383349 173431834 730078062 713118485 881794981 472398261 591661668 65023946 545232217 194117501 657422682 356016823 925942152 838892115 973712090 420598553 905226654 772443331 994432144 972758687 989882385 323141753 368024612 845807622 928326044 872280624 957214020 907315327 942448708 621197654 711546266 626764160 679568499 224238154 459276089 578183002 944849554 696836383 891698020 358570036 586083921 922547698 965042443 236598514 785597452 441632132 853618234 358933435 917492573 843057830 895878962 808880448 956141348 776021441 887250609 831363867 841601949 995474864 995852076 837436160 986891918 580166632 976945734 24901570 556244530 493599345 917442722 366484957 389923192 442388914 656127862 976130452 976397306 107807497 624302126 960300461 976013889 251784399 841014499 936429659 944261690 455490968 936000207 722783832 765188655 624285036 958959434 940718582 965078451 128192601 856105204 531324355 669814741 208287257 322240370 60575404 839069325 377671072 469897935 870523371 959421917 602267641 837094433 726769159 986172001 554659646 759308833 819010813 919622999 847394156 871902169 704588578 847187596 757960287 931515018 592917209 796924879 697662393 984779284 21442305 327478098 422188507 563244820 247907236 933320199 445932156 514191380 295350551 806617706 896809897 969267719 287730297 840337938 673199294 753342662 910301114 919502382 103344835 545402824 980154524 988006927 550439068 776793944 607317898 868607686 893403673 914986771 887411671 969732321 509356376 815477956 656991132 708698932 54943736 304784491 913875898 941188534 434136577 912825869 499996262 776180321 755568422 801616356 832692817 876615280 741521367 900966159 877607485 907870086 587757613 759934512 646603549 792215729 86805372 979112162 35997517 997562662 403819567 730446640 89754564 528144564 360718963 736504833 168282029 770479318 465101927 647312294 769031729 877836775 710061601 931019934 549157478 713154797 616299139 957878884 137613279 690887297 167817566 760674403 466319811 579466749 805074488 936403596 952737626 958832900 566464349 934236449 375902450 829430647 139172069 613777801 168337646 429620260 994891469 995449494 765382404 772717578 88449302 656900387 19092042 641102017 692594729 813156969 353885632 681917135 165392284 807038433 900274602 970837250 137856017 202944625 431172938 704746218 642560673 655864555 877020485 895211631 71291198 510719400 231949633 352756859 10900947 651587323 703172475 768337197 581775278 893030826 828321433 961958954 558462756 630515942 39245411 944793413 501079967 830049650 580372778 914029802 95765357 905270028 192399438 465343824 164527260 354097793 401148407 952688240 587201721 763338439 116030130 151700262 901582101 957351256 586161769 858283936 160249840 948505540 581172106 595030380 378423652 903065585 96194167 629436823 384997895 462869196 644356119 999349160 858407705 913264002 51380639 106096996 709371656 728897860 953340801 998168355 558904708 831492417 700530218 982367554 279382237 860278638 30786508 849269205 421206585 630297115 736231694 818347841 829989846 908394272 881569299 952217672 165876787 379559080 327432372 496794911 513784925 811817784 317480679 422005274 14977084 849704651 602494209 902951702 376564724 443776964 883358003 931107064 542736648 714353996 442313731 911002094 52113792 310770694 843345639 932186470 64223027 70152594 61711979 813921502 445863898 527902156 394525435 414126450 641108308 976437865 758354342 964767178 510362041 788573130 559049460 908466366 311565924 782954449 719988602 809444202 519231 254925244 123333077 976236175 812902418 982253521 670596914 715830502 778273317 838341533 353957652 376228685 444378856 929005315 746307733 791669996 729986250 995976963 388082803 741478262 78272498 410386552 633993380 732895095 140072867 334564581 340439657 362226930 978887838 981901781 638967106 810713689 207396686 887149395 89986588 980074944 611578453 657359169 592305717 872439951 452360734 845608052 917638907 926000599 159217140 943852645 689244243 935241139 210054281 938564056 501891346 622650862 270530171 933600083 188793049 266370007 790226747 808483650 409378246 499892363 369686007 450037461 597868580 827791672 643436802 739314296 227345123 646782849 519790849 956811076 413763232 968656107 536296557 671148556 252687627 337145805 897415601 962755332 363273072 775910208 91521733 508969643 801257182 977508518 742680384 813419771 986177904 988894984 951564089 956334446 247374734 933268818 264762624 806557694 268225881 438843447 145344232 587771765 264419753 270295129 853904589 982982461 298274727 505293957 425101214 797938747 780476112 940779040 447612119 600206611 383706380 769463280 386633438 968252356 985529444 985879922 197482292 779438986 31072261 405788051 435865357 685794476 822577993 881795251 887650535 966984580 942064943 983885784 32933432 877842623 806169809 989587929 243742568 395600432 603866135 682657152 897701319 958475553 46439874 643537956 452068049 931100362 231447410 374773519 56468227 415562408 867727341 902388559 763401042 791533670 735005220 998543450 576682644 744201368 451717940 775521342 670412154 863924395 784235561 827663482 993838664 996059859 761735974 969781728 153098261 623654712 485809156 997099044 404770877 805425122 526719587 752418356 565057795 788467897 780356866 962622512 798166872 912348605 341577030 593840415 149109757 842840728 226479723 230679292 750234526 897934537 919728346 967600961 840282258 974092114 613925049 843022254 502253555 865308164 160134849 598120606 615127542 961138573 622670943 859849866 666753088 754671833 736943350 804698159 691600581 964967901 871363765 946694949 555652797 785769499 235171795 588743101 311658645 901748124 24494730 383363118 302058670 938406688 175054559 730074225 587627317 953511760 236848930 502605949 326014758 717660396 351595651 587398104 81874672 294683878 528740301 751522744 866791999 911856578 505160506 816880731 485703323 748048748 775916607 968347030 704575153 975182162 81562897 231238337 78624340 928372815 104761799 953629740 220105574 749089393 786217804 985077445 676204977 955135805 737614592 745116447 198593821 624405565 179652345 516355945 204515253 990816846 427050743 569479077 308698278 341216952 226741156 902472939 304971341 366263175 235563462 732942273 170627854 486162415 955481041 972162967 586547069 638267764 837059774 877047107 430532826 626343091 504705043 841179097 508161555 689126287 406666482 831201387 177273568 181977738 951662201 989848533 412346070 747343792 171238232 283021011 963991390 974008830 895523906 896326640 703957984 898879299 720967201 903011338 241852648 877624618 502038597 556425042 566238527 888876593 27249468 828679407 91671820 434453129 349083730 757784208 602724497 835660992 618719615 730787340 532865682 662061036 815707176 817578710 416415735 492909793 728654163 943870183 418721553 576096450 669203036 690105951 215847827 925090225 429584919 589058149 536079335 875365552 160702353 945387939 677982177 829520385 37943415 749435006 468977892 598742591 188399795 979365258 433707677 582573396 296906905 675284593 738408665 750504682 153152311 425086868 977714349 988492983 585978323 927907311 105683960 457392085 898267684 923958173 215936884 727033558 455270204 966289716 815534967 965931464 12124970 331263507 836505762 932277499 114229831 232983940 561074230 786564522 92397973 517829211 88294932 514964744 378416900 907349341 753894114 993729643 31767326 294761691 396287886 767944784 379418888 622168236 41105592 534701903 151920735 732926182 385081228 718609909 313939907 620856154 494544379 735372760 495665723 512311589 737392865 918554826 977481476 988596649 960109603 966518150 181933175 999003584 204583032 570794632 875912769 900407311 741998197 790074651 773052762 841898571 811373987 887451281 425346991 618462735 108165469 744943809 305999614 423941660 986182671 991502965 897141804 904235030 755251260 854693053 853202477 855524715 297741344 507572867 201129331 511382805 994186184 996775568 785494463 851908601 353186900 684201586 687669221 689770113 53442695 79122523 366604317 925436568 753032032 857273414 715415607 960627000 687164738 915610490 415023431 459539485 780899226 889874555 826657375 903750882 662507558 901634153 195882774 201678489 674666100 869971861 987991859 994908652 656912627 659232091 87198487 637038531 833408440 909068236 150187518 428528307 809558662 946170769 700121342 786826658 305638087 654956999 832981790 899270689 105512993 763918931 281568773 331763538 324786931 933131378 4081480 159276058 347039290 833343095 435008437 441789148 304998075 330672310 107298218 156014286 502687287 592855490 588420985 867551285 293767467 472197468 428442116 701412179 472834155 632040832 659789273 736214026 659610097 892871515 213185514 670769901 993528815 997369537 479211625 838189001 7380573 596250932 820979765 983298999 178742905 705992156 190155318 310203788 740567471 790106098 789006937 931787682 296374514 460977245 630626650 991191981 57284183 550890155 205871748 821002102 757753060 788151679 49389037 390141312 929451331 982299090 921075801 964984590 23793094 636952320 65398635 798387423 636884986 938556688 752300296 926771176 574651177 691768755 842134353 971914205 441826053 853397215 110556032 277933985 997737466 998215711 391413636 632024112 905815339 973194496 551123675 731292924 233297257 667369442 726275998 975616270 703339319 789939479 779809036 807356005 726208732 990157735 216795618 871097289 9365470 647788388 450255134 879704387 994866663 995597939 603678580 877067098 228122136 484790165 523598844 755984435 39409110 286500947 574520034 778427926 944746340 963593524 15395167 62077980 607553643 694074394 509004768 722561283 589174687 860176249 775369176 785176896 797286703 903312094 486216265 801156180 929685628 939447253 599593003 620687185 416241184 879223347 126391756 955235732 771570952 817412207 692333734 739794913 681304328 892774027 194287165 595285645 698653657 722919491 830452176 859916020 16101259 747863984 277183136 400166451 993285542 994033961 816653887 968308572 717222706 951801387 704538202 940554445 816947471 877023796 537585053 917521094 696346931 860531802 364859350 480098399 275259493 666300027 712540889 829642685 752212155 931752069 916329206 966792047 877693644 922011462 835436822 973430945 140021852 507941458 900997515 923718901 662012497 886664303 462497981 630417777 123933482 249163454 677751609 701662002 8855434 132684875 510418359 992466522 708482733 837359605 60649804 373757332 624067387 758152436 324135718 405525814 550811050 796586595 357582251 410675424 651558579 835982837 577729694 867062675 57410836 393578342 4022857 582038049 940493663 982981257 105495233 715674488 372341266 927118601 882830002 892440585 712133887 788975053 71456273 976671690 635756359 671312499 689916330 803678318 214348778 962482247 602680693 996269238 560290086 943137122 958280644 989675847 801478506 888053418 782851344 945104749 646707133 836978640 886438410 913315966 393261194 479157857 96796821 271763463 897809972 955592422 897879273 936494621 881821439 989858802 941331112 999261971 85637658 681545209 254223881 611622784 472651122 983973292 294161995 561747933 10885140 517747150 249831900 845991049 71676379 559594762 903443025 986681633 913498356 969580820 132133091 245034824 820723865 965042900 187774396 800046130 305151476 469286849 589641833 730956694 65189003 687225206 2046067 774192996 190235064 354288330 217566433 866315424 267902494 416827340 885053733 980792239 993829942 993847966 517600497 522165876 407908919 903680664 268690687 452755946 347529981 820278513 669401879 786230527 796459600 807586096 690913757 770312794 44191488 492506946 182719781 519533777 617069678 622767652 155393633 905370028 346087786 686923727 183978279 527062604 387562627 875269726 938156567 967294762 678978503 855498188 58260807 450734257 251749339 940727383 652029156 731291533 152914215 417354343 339312589 688818245 160466347 860648870 938448483 993417189 349899961 722387890 159627058 488768327 771366314 985712986 337862283 559045690 409508686 970715514 342755274 864038406 124119317 911028663 375890366 616584130 429545252 520094739 560567082 963246771 824204282 917677051 404729853 963911755 210912831 277288838 749694588 775710282 639464081 742989208 207430719 262411123 752317114 862346737 361562621 474260653 403836522 438618912 628806904 748891861 797956593 798395530 359719581 661607525 773018833 963612592 438405918 556845160 398585504 447423738 459776216 696810609 819150250 865709211 119819507 936733060 847803602 875919841 412544619 619537539 786064938 962392782 298658724 502672283 592268873 736323902 25089492 141133847 501067727 541171605 275325407 663725117 709625047 979907931 402891332 572507252 876067743 940328238 298466455 429930900 367006943 922955662 119983346 696625190 967537903 977547409 775906981 842285993 288143038 936284444 613291571 767746363 755246000 819270688 153539344 238947117 677674175 934037137 966698830 996333004 897322962 957156746 699273018 779666359 176369205 271997919 185604614 725521928 458773633 501625598 720731201 883474662 662845167 795497353 978536299 996855032 199278741 977506782 234335787 467046216 145311011 645048652 579327526 865826457 369070037 891003193 263744432 659245190 173597101 923754783 636417596 899720878 157068133 956048335 525909775 979972394 247190369 607563377 499772664 928379660 324800841 439305744 346952066 492603568 194614797 546473606 100705079 479209746 375881468 793250682 111200819 205925759 787913885 813498137 732507588 975783180 755126445 883949989 635128529 901707508 682923273 963284118 311617063 738219738 712707455 800588252 863303709 972226650 598238339 966962433 416756056 864478671 325875385 392886194 26977858 879825442 676149928 763110134 14110478 504298938 925094607 952842627 245113527 500689215 322642742 912549743 155706945 221607326 54115691 774636508 544311176 632639735 610754056 779308046 809445807 951187121 952687454 962748925 310665680 365912112 311524412 784104840 89928439 741761591 868868432 945341672 610293711 783006533 819535596 894747906 20609655 80580386 405867975 602870344 551772266 633611433 114095047 494025584 774399346 988133394 539593799 667397817 683784686 900228969 861889231 980478414 235183917 608835949 523894289 936747738 148700879 777138241 10693431 209390024 984508786 990577476 726164900 872779078 866858505 891776136 343085075 380304914 916459342 983632381 841164920 913469019 695828966 928197537 581609017 805572094 878870137 960462754 878068955 903605069 797416379 927413586 767998000 937070420 352491270 680404860 412677719 658177539 56394366 524729494 185373123 883912856 775670025 979726708 92397665 180646677 34821257 923050865 484843649 887650130 484737547 688506952 373244066 917823173 635239282 955503225 368644336 799120354 449530760 480132668 618009995 725580462 172605633 488745854 617952260 743792284 440204690 490929981 608986502 988889840 928944659 947737675 757692638 904422557 751502036 850874786 31880394 995888427 99233551 793045573 400010617 589590351 559521516 692532173 160439101 789846228 685429011 833303830 917474069 944693345 532939673 677240395 819538915 991970175 678736729 823179810 910912822 977275781 164498519 708947953 206411949 241306848 511927243 897502792 33027829 155659698 733971471 843389409 309299644 336584620 947178483 991435104 151014545 455518816 457850548 583673132 190259525 532659791 32576780 600192416 997308877 999109706 50016110 170588861 496715878 602448967 67853438 149434573 957373273 995182660 992525316 997700895 563267496 706586916 368086449 414067891 912962479 974210548 500101081 508953773 390980106 765325068 413623719 527622434 803775645 825418753 44870379 301486370 806993467 812935317 408476770 824397173 186572104 256007675 461612676 725876722 947656347 961100018 570585848 634046253 805247966 812958014 28124030 359029612 344076256 570969947 144023286 244141914 302658069 646764343 724983963 805255996 249620685 658709980 378169156 750623982 22902616 834113543 29140690 648028883 725569029 885963350 913480616 921755020 296737551 981954723 146560302 203387408 419592687 498341596 559380169 608876336 284383947 374774972 951681487 981035700 733911541 748874437 969290230 997532943 230236595 597884049 339797629 520457089 739000976 798521529 961929917 985664666 491445043 742082266 917980278 955050473 327643355 877290231 617271893 795055632 521504311 887736319 17420060 832812043 980684114 987176817 395203639 803217910 172950104 681666036 576243780 646387750 917112033 969341645 518419923 673199810 445920513 721296991 8201669 926923376 648935450 887994908 375682770 380965663 357738419 864409528 183028033 902729333 708264961 757205368 472327130 580319107 557788030 602651588 358209654 802068307 236418515 997800679 456289367 961097455 960926473 995729745 414470077 797851446 10396499 84596210 59172261 187642781 380239257 853223999 914919975 937543007 976717119 989013424 883771971 980821749 492660488 889060083 670850324 861892297 989590088 995934706 821887730 935782051 378374995 836900571 285524444 979587876 521823776 905208104 888184489 892707612 671989708 825584882 454154349 822145882 218368537 844780677 962358025 984037884 917911569 985194456 593048986 947976717 884456249 955526002 310423726 554638634 893760156 943646582 888559561 923887555 660950805 833097864 40073916 406047885 641801430 919085209 332356637 449527250 71418153 825325627 245770694 867997877 645353033 864962166 110248596 961958424 624671313 882412197 775159470 886755318 758067354 956837789 48515700 214908405 724570603 862115954 727629308 848370660 190867267 389717980 79897028 376856039 670257990 672950887 663140353 740672681 927274150 995355650 145350355 190800170 241827507 270680840 750037649 887263706 816080342 918771512 414002329 899545830 1554025 711754669 68883738 170838720 626321361 767778059 613611857 860687995 58405473 414883585 981609688 983635284 467760132 657184750 246024431 916053904 660645712 936688799 843824811 922319258 272824318 929518622 787887087 897317201 778905600 821775780 639057190 918996484 637807119 886835903 845225114 885249018 74946346 777856878 262843301 686318948 646019354 699373109 642157354 661129209 651837035 900106762 453019980 498192402 735239547 812722635 669143839 732000716 399932611 412545928 674644792 957432008 53877873 995119389 818577899 836100205 438471453 816433250 335386266 908684148 977836379 998050458 245576744 672560374 305162737 414780742 638637199 713166421 45683979 222621173 772692887 940190611 270359958 918152316 943799311 948586433 496219622 927828762 121219245 288420053 262392399 448923160 752717610 835584520 518712409 709300366 319155843 427664303 834352910 867327947 990910993 995831095 95605820 664426071 226304666 764368406 321659316 888191995 62556598 445356130 473553082 658365060 669263898 675254641 226612125 765682461 108192270 541227422 229540203 906933052 147144674 653511935 182370903 514450207 305080580 494475119 684044814 874353887 119865099 897054955 970873166 973709679 979211849 994861905 563089066 658527318 652323761 826671327 874349575 982015171 821834408 826478583 11621296 616783019 919293151 944792274 763225235 812206363 943424506 994845566 613593549 894915633 199323676 502403512 793207757 857525589 234035207 839615976 394156560 500085088 657938470 879097744 17288399 286827980 422478697 735711480 372392743 713406599 226327966 615800906 350610753 823832233 27180553 141037814 129194231 398998612 411423589 991359523 875082750 909236534 122732937 858641526 217499340 773888611 54115097 567727089 792092233 939869964 438240449 641383894 805739877 973303786 153188515 175716279 519822515 890744214 221589453 992634584 341798804 363883979 104586380 240756045 262824170 352688023 90379822 445970042 300265392 720319616 492491451 845587864 845493502 882405763 572486839 819272425 23818628 941802313 334838610 445837205 577232970 905434535 931877003 957764355 490362711 714618249 483495023 757951390 432458119 877881053 809516606 937883847 846647778 997029746 409522161 987141187 636466932 860153078 22674999 324051431 672668014 840372614 114357032 224604762 307291067 741677735 765501639 918947383 84588570 594767195 955379157 968737350 946060363 985399641 939859822 957574404 520781999 962271020 7850062 447926263 814989680 826875083 796485596 934851309 727292831 832919835 112973581 684535067 825499120 878968140 991646850 994433105 728224841 888678875 30589534 321610720 758203560 847053457 958491498 976103794 894981940 941723065 882914772 916432762 811997611 980645037 719523345 817180702 163009397 694240987 768315587 951754634 218666494 515895555 946922798 975130170 364627333 409091100 99342405 456096074 63214743 645868312 885194552 980052011 854115549 939365897 2879834 204170666 662031524 750567825 197535469 752784768 89931815 986118026 51801826 644161996 603170374 837769846 472021802 853992646 89376109 175666920 61260720 781655722 426760300 863595241 432529134 717808858 994187373 997872479 30389432 112972586 477785949 491652852 423804789 477180738 298106841 429070572 704101994 809182119 420402147 705329494 331762851 663057715 30152408 975671357 147849749 339272739 617754709 824081773 158563560 554042090 726099098 801156163 489992948 751765025 609500318 670821087 455984121 873158551 50163350 606856767 736011148 984507586 785959397 927399145 975567198 982883960 265072292 333130817 26294464 957653937 107480817 182501635 418596021 822526538 39568524 82769492 269511752 776087200 804905633 805952460 392035169 728625043 8487827 244131214 670069316 684731414 897650774 937799109 18690106 172867758 720884611 899003983 872083844 933506571 80096784 869946112 22408985 683091964 739968377 929348402 782446974 819236761 362362737 715344644 579875366 724395020 582919526 894925078 393238959 416303785 750289931 982180951 365874537 566255096 850843987 929879145 194756001 549896556 845287240 986863681 642977118 644177061 562484338 730414420 282815629 994222869 668249731 763061924 521977701 552779277 601466155 835093805 818237264 891921759 90823438 984202636 23528056 196199393 418908386 538251346 466951927 815155270 158808194 933466049 576482087 595163818 210204299 661437137 635059991 755755215 721553716 973669958 253555049 850647472 498585532 673912039 885494513 919068162 765326658 925454872 712894317 747494181 331953470 374667063 764726873 821296921 738353393 989975072 755309317 928757526 460171118 653675423 742746891 872767494 898103858 934487986 454663522 744015097 462913999 750888981 380615251 814476860 35693238 852866923 389315646 726736214 291427476 965468716 305738941 972044430 218123618 375478688 613047848 850686180 138944109 934993429 790051987 956646349 307737640 799008843 359241305 927472278 184227547 431234542 852953141 942976312 174507273 815441706 489625388 857573746 629733028 859266088 405669708 626938854 43503018 149459397 757213442 959615407 293012818 338414575 899809303 916169928 847118680 931707776 370442226 693438046 230548207 807045734 389781239 486007122 257969230 761782231 202101901 656606396 529101800 684546773 331282249 399918423 623025367 801527484 216251796 291092022 148145059 401467705 566783178 699723268 987302553 995174289 691872621 881707289 855678982 895072799 859190094 924738472 81720080 278226204 910156350 985599592 403962492 887083747 578542630 641072641 147545451 192174638 202441030 766033473 649073711 789703923 810592485 895064456 281544869 823554289 617566032 637482325 973860511 997637608 749215439 839454849 507374143 951943184 470078410 580187406 129664002 557140816 91199682 586115329 429180559 594879212 494526965 554415742 922318030 957063964 707844667 739533918 412170182 880024562 161582347 504391906 228009261 321975629 663000282 994664657 749930382 868077015 971500370 982469459 508369971 593000841 547621214 951361236 573758462 858583033 460437524 955401466 452243564 513630021 203608250 610670339 599223196 799405450 806576929 877298180 957881416 984105112 192637963 687600673 803155001 853470259 675739127 753623668 40174665 635043502 950387183 957821647 125105493 718770680 899663300 994025297 510377124 803313179 495871737 594179654 824527624 988698143 824517524 856670690 464187143 722009931 49146789 764642699 508114929 916913396 775124992 939144040 590541713 723553769 645343881 654719335 870672589 952119782 59431238 273829410 825637164 911455212 208379834 468080432 20875067 749776951 192908930 358029241 302019006 712940453 600709108 968590752 844914462 901369523 27831623 107248227 717304852 796594445 276109916 517840070 711982903 821498270 13970806 998326333 230031588 787631150 870035146 985904782 170028009 181669084 712136135 787530012 748093023 903928128 129428906 975868533 41312559 839136907 187092954 685760637 119755550 871388017 437468232 479304707 982398808 994422133 517917303 604800037 884358876 885508567 588881844 622379585 839955492 911198508 809664184 980532630 470352316 994439760 698238629 808078358 982118740 996855176 749477737 922725495 536059885 739969237 88809135 217668781 52956990 495609387 794914706 909295608 281048756 586955260 92236517 890570291 86690680 405745830 902529656 998281023 425352305 456077478 129785274 156854903 909013051 973502504 798236591 829339296 807349986 922235928 768771272 769334882 742817460 851871024 521562971 744396385 417765891 580845280 270633189 466874732 290540694 636487935 242929606 280118040 640996003 776748848 269131146 945610968 773582535 972114486 67284058 679169044 825521818 919802861 370931163 895389414 314417033 400235381 314919847 932056603 788300623 981826918 731817340 945772577 442627731 670999477 688864551 760369634 528492970 731105025 617314335 882975992 792422945 914680530 690075805 776947016 723213498 946484871 102270046 936463819 501294261 510042644 244519648 588258446 705864912 857160554 809815141 988118686 77828179 489980090 121084912 522057080 407687187 914927998 900480474 992038927 284125715 784543236 889949882 953242705 704998671 884400594 322592446 417941214 689634900 779625160 514321572 738056362 515300192 863806487 446787668 918599259 330168426 806869020 809318710 923458508 406723969 942905481 53965137 673145005 591445167 613669126 145686879 246098387 17676791 754330322 406781293 698411171 878769066 942604942 800283705 995638892 285076856 626055640 728075607 963201677 927834217 982135600 427038690 973088313 295015001 459342891 366505868 483637830 157972423 409215930 606491655 685692609 423350938 728097734 698511700 849255707 567884749 786968665 528828175 788059791 783580300 993148689 271713490 446956138 236704586 412610471 658207554 963529170 891969283 929789903 751468397 884940633 158437876 268656196 191246223 308769915 493846402 812928439 422662055 434983796 26127942 717341613 265250525 509720697 58259341 230633165 869510306 878573938 227768316 563945963 811489978 971237321 251903685 292459429 505950013 679236845 423677361 694105601 624386127 881817040 15951108 971306022 584920947 638885474 249837150 831503838 861707725 980810953 911930571 986478545 78901405 815704835 468323154 671203062 397957272 440891991 310461 534154353 524177329 861065797 762031847 810234835 582234747 660270227 196848715 275740770 762542815 779549464 562597786 807971970 324587966 470245271 53662866 516957341 646593542 951887144 751559836 758971645 948782391 994323223 963130800 986689077 410158805 959686090 326472785 567608202 682576131 717492703 616002921 891547309 635766670 815035818 37449511 128182087 675022786 880125970 104083345 283536147 994000904 995440266 64346534 608107360 225212519 750474847 542731787 865789061 916330060 962387551 67701619 884573673 291361049 474788360 364156829 444108925 333048720 787793034 311827595 691279084 522378920 639181901 549204164 703171732 556570906 734591765 783906051 802950390 745837834 976026573 481375035 798587412 908621371 959856471 268906250 927620369 614672486 682774515 808972763 996450240 448370041 726044640 759137237 948830542 809765875 975286763 120216395 412439904 16383953 125352096 891709137 937586694 443905354 508995655 738126553 789165777 31383330 964527752 648410383 653581045 216330045 387654019 748297065 892458651 425338570 624101665 18587436 640620988 803367835 979227102 678359406 856084043 726572719 844996156 550314340 768081478 425992386 783876562 613593586 902365377 82038058 765066753 554789166 862157318 511361741 552456165 789115911 976342281 8166552 171965480 539572324 654576154 438136001 797359983 439602149 828544425 272556876 274777339 713731885 721240621 214656300 308666544 501030632 759215685 430986925 828151774 382001265 640313256 426514979 562414095 291089352 302422916 584889582 903861568 86678168 159279410 17883535 585246219 661548552 762852347 572112246 920313009 387120855 673385207 117280800 309778388 774039998 839838638 681442424 961021213 256969793 735457761 959788032 977082136 448703393 984375345 489493744 629838561 362375795 767128773 392735658 516644709 297486891 979797378 896637768 997635281 74510482 954998515 200350865 770309280 512904043 625738757 496162878 904014550 271394761 424996119 9881743 265487730 332745083 907612071 603375226 723650521 847449868 962457323 900118520 926382958 222596507 523587970 169115793 988028237 663798711 964887351 53387394 214104628 855299158 953670156 72071021 925611466 851828666 876445951 714441447 932165444 227112459 878209243 965987606 973670683 444115349 543916793 933750153 940080648 7818449 36551863 642104238 732310319 735774020 973450109 657539575 871698606 397776588 989304946 236215542 461528812 324727904 390920074 879262533 890893890 540807909 615729627 445590186 457757678 829946976 843629263 17236472 726317020 889526716 945634476 182974484 740228039 934974234 940661789 514751912 612033764 747292595 811406127 583468171 954397344 127546935 950819322 411211077 706261744 681741482 946076854 708642224 857662212 135152598 950010630 692028007 907451351 427097769 952004589 283262585 617582471 230392388 292050537 676293246 970368223 702663584 889041944 918133659 959568268 581535763 663223886 890971067 940053871 960215352 989880376 643489060 932925504 815684032 968308251 426839227 898392913 390604954 939992495 310000523 945362779 570597897 615256253 212583770 590608098 482888868 617516855 216488875 803302784 747403791 765136694 86856264 232469457 91043524 203373224 513939198 570783218 468326037 689086044 397656767 886207064 334444464 551169636 431626542 843236987 760283259 908233549 253401731 590084794 232380698 859310826 314426719 339574825 744798540 748069654 384895237 451189588 358146886 712629452 625599437 690837250 847919184 951944843 854321371 982691247 288020863 403550569 626493477 853917382 313203170 469661987 662986612 831598741 342461368 885320985 160788045 944654812 380350608 784262672 927310465 954931138 370893800 827885024 556114294 635346097 939227401 988087119 100225607 865943666 657926323 809529518 694938218 834814289 390757219 686527550 860872083 868924515 855764446 993961396 235138678 884954713 969837887 990777625 652992381 858247507 704255336 824212872 505804097 872030820 699316459 856773176 731511641 884335536 562488896 782902015 279518415 467920476 724071787 883619084 602202472 714685960 96786861 176362821 562324088 765178121 429866661 710559817 717803651 779049976 47093698 444468347 900627517 903385203 672517561 751648803 950729652 971033502 390805051 484033543 540842543 991297585 596736089 651211818 653249545 758800692 566158930 801455248 509670953 633760261 707182148 868221719 734718917 780153849 57255759 598741954 214551439 407657915 29129987 182888400 675650444 966509583 634514550 680414379 626398228 999015700 321561483 779258068 224974222 387440808 106482971 983842206 546677414 982910855 155943331 526226727 752206274 943781413 268094613 472908839 860954813 898918183 227405049 414246986 631396421 877144065 466981749 773071228 610415901 646018392 850148701 971824872 623235571 820089760 380043353 925649360 108592284 454304124 529531653 898893669 994897874 995982981 886182623 894020001 928820656 941022465 969163358 984965824 16342939 169339232 610420014 982972602 917101015 923493991 583045272 811501676 252111297 751071428 291330313 499350094 818663391 941982537 485446693 542101209 605138126 788555218 415197843 718325032 94790295 487144581 899494463 945505382 492127762 567718346 10019483 812649423 698713422 959988309 143406807 855058983 108960093 341763944 631490473 678755836 160398513 571734164 261925230 327691528 512633933 778071356 450499277 919213308 70957594 543342077 498430967 519306499 648375405 973289330 368868663 554705667 418313898 816852297 754342476 857794015 588885655 638927938 4768421 476674754 392234858 608179063 365905662 815984044 768001999 988833479 565486288 701884522 185575735 395978712 757590354 915116878 778115605 811470774 400753966 836061926 719197477 787767609 23009258 851074226 851408127 917285266 492790967 642794612 30865670 114356314 439405307 721327173 193484399 746600562 269678991 653264099 36875547 175695030 421429334 541753573 824795629 939606435 915336932 940986550 250232504 654267137 919361557 974485213 295601634 518500182 254489977 457463047 561489471 732933161 908969794 933979287 990466695 995041089 878704454 986679362 841702567 942146673 916837124 941591344 902996913 913925885 883494293 996386657 578596233 888463612 592608153 640997244 268443936 894617875 428533691 748401468 185503889 433964006 928516705 933466926 6670893 173627955 738420976 825823076 82870741 743275651 246232250 677276083 956449051 979266073 550880013 697240978 149510532 429927707 991464230 997304018 880956290 966477713 704572614 737194869 514131508 525395229 527645834 724441736 343358403 856702257 683586527 740294716 312236531 839373735 161894548 393844033 405730297 854317990 669689715 712749778 223631267 316076875 520289419 932926691 179985753 292669786 314780521 535870842 290108133 695842776 864876431 942881995 15436995 839285451 7075846 445180527 140061615 996114644 449677839 761219171 804098588 890159239 89756865 609808307 171629698 623773305 577901639 732032042 188376373 267578174 766836048 812844078 173376662 309495157 331597994 446372464 257338635 798447964 767664069 863137341 325963932 542710993 296475466 446721279 487814881 868427423 793366779 846562747 906171552 923341187 427194278 732554311 114309258 401025920 497548594 888398796 603482931 702231049 822934663 875642266 833796968 934613809 331185225 636634848 273186751 640588916 479235743 490261123 281647727 842607455 233963232 786899250 305256056 925857381 80140529 104188362 788279554 806566180 908843724 929549105 63208862 690003176 473893699 799513371 356630331 453080294 765673403 976720246 731782804 844704459 427887716 444311027 127218502 934133262 4086532 613054940 436464487 677201734 431887046 686334988 164635128 283882607 148456548 971823489 478146435 606532358 354575491 732499291 390212658 547261482 535788170 567874713 209464370 314125299 980370507 984889159 389863702 650050931 753698785 806407191 631411239 838255064 773387194 861060596 624678694 652766350 917570575 969635695 224187176 353630456 298081130 751209490 466050362 846572776 42341631 213292132 429601498 541006024 326117489 383766968 759351479 828298954 435331756 894980063 355002676 889840997 682566464 877074002 414292138 526589546 298887235 479485808 598920083 965492469 926031704 967105912 181010766 596950707 591302981 714342210 233376539 280143538 283749235 498399180 539869318 884438977 376692426 570836227 732566949 958756514 967977294 971003783 644100437 697055397 78476381 925610761 164122515 812551079 702198221 786715357 426383035 629828239 78980547 882840483 68336434 627828084 920759413 960554865 263049268 424741291 349899203 955043039 593234465 940592154 935931083 996084257 494507897 964451317 997853963 999213448 244936204 958196613 118426988 309002994 887087756 990229566 123595308 257268135 587146929 676753850 492597774 542967595 113493803 976458421 477287518 653680378 196215052 666198122 533945775 714670700 526835167 634762632 304719426 987862553 931468926 946936376 902538092 924677254 721215482 747235777 673450858 907004535 538017011 714055507 564911887 786548842 801887804 845746872 636074391 817935914 23052831 814743620 6037292 316579335 436716222 814224701 303839113 752457417 717146186 840402381 831933760 883147666 278368455 457106500 450674725 926411701 282150075 366248045 94487373 120893671 171212434 839611046 102695645 359655281 357814120 691732249 231970816 697843680 224302390 986640605 444382980 672123629 927123052 934736208 557411683 599615216 175030588 774543743 339387161 982483611 569196866 985369352 661303728 936875098 561514417 731655419 748057057 754636402 169015455 351955538 451201940 826178904 36880905 67134023 670704204 709427593 687653455 706336839 253250552 949360786 536548563 957012396 533626190 736275162 856312022 949004040 959763560 965933647 410592041 620362536 204068304 444774775 554927050 621817350 760365535 817560317 225863670 833553558 842002782 969077530 586908147 800199346 586830542 815407592 70181859 642093950 978744533 986852110 831733522 916065413 478391496 651881545 514221876 861013401 366081576 913215875 113558833 933545423 146969290 445321976 401303998 446648282 802166230 811384033 713458588 950282496 132327849 912125540 400949496 775810088 512054721 972980676 722299911 743777181 379901085 481213413 912215161 937816787 28052671 563091799 95496059 671006221 498215403 675529980 398977211 515465228 643622716 858400230 640616298 751792182 727240494 998329737 624191721 692526312 599118943 618100090 678722032 962752851 393918370 486226946 73206595 593917138 572345987 681544967 746034469 970805124 54320649 736272690 146960245 774200773 400016285 502531638 60652631 110802439 49143155 715908538 725341705 935719448 179796522 499012396 356775769 718895412 415724853 539210790 449790632 853273790 508736488 772384615 370660627 585421281 107421218 818325033 928093232 931693796 356238024 781965711 750618974 812602074 88643645 315248747 432072031 564278393 515223466 926295484 272945887 844104572 257907744 869568908 315342503 641066155 36132407 256288794 21250623 426170864 656965605 864205884 802882990 882285145 818192612 944721582 952583973 959640360 491855947 667214531 216534476 908857089 949275143 971907482 863604830 979360242 551564186 862993228 320166717 499405290 379630946 961686503 235184640 280401795 330493605 694563020 279565543 766637603 298862217 643644075 160701446 757446703 16600267 686084047 468152449 894850874 833597693 852666419 398987227 540935750 335311074 725562916 233266444 734227890 329702684 776585371 906956296 989820326 127491627 988095886 641115389 876199520 96677562 190937767 858956442 954524022 480365488 832699730 389114642 875367150 151443203 213944415 589404115 703296287 153837387 808199170 257786419 319504699 201881219 590963583 422488169 657043978 522762696 780712570 848931741 924524027 489751881 590919102 715233886 823780515 859560844 982663948 646769902 755340173 675340773 981110840 573158616 700478247 893376766 931558940 362156443 444648019 797725007 809485426 61513867 645349626 577463505 976019675 333472667 571561152 975112339 994921103 339306861 619669607 102114658 759518978 358303455 958758942 479719190 844315034 41956716 382203751 895342765 935838207 132350428 242128178 547256945 876377075 778548432 973808814 258956400 625305226 395894341 720456334 375840902 517141117 67799265 885070604 483644324 878027669 844546751 906031922 335354186 639453979 142562728 905951776 919592166 941171964 588194610 776395474 822621525 952545187 109632665 257839052 340097800 931371786 291355188 560003690 173449576 609640984 995450525 998426241 533786213 569154099 407047433 807488312 506495418 899195217 756073948 907985237 259622790 870960210 176845204 848422737 619688076 960200641 927546036 934389562 628012526 837802586 533236352 693929456 239922760 895703371 904826062 954115522 860832773 939020816 464865111 877104914 443585327 852785512 676871000 928869071 94917260 535761016 594412442 805734142 445740775 956245322 562555710 759996006 159991646 856326246 511393632 681163620 242363349 983273701 380966646 606836285 980119081 982997371 79829214 429048086 54978674 976863059 346315257 682108211 339370212 488352505 206289034 434942781 389249769 800429227 432817376 965428320 973903773 984015448 469641016 721315235 293874256 956414369 920270346 959265296 549180429 615263745 803316730 871943314 151733975 847182038 880643450 904541407 92257864 368646199 636140908 705635295 983705261 997099046 624457138 715141833 789504180 924793992 305954632 804186279 555283058 602751593 546994915 807204925 584946730 790136008 274830610 873596731 509890884 972916155 7260050 791514985 990746409 991850458 206261803 912383181 114745485 245097379 985046961 987571990 735397439 858606068 838953365 977041686 856113823 900161893 143248482 892955659 487363573 538009033 409151289 471475552 775403610 951112699 645612065 695168250 355973072 664514013 306729654 896378567 375175791 608447350 715090608 743595158 583403263 637001075 931778937 944402453 290997127 788675867 343096988 545980853 165596430 484983825 660498271 962698518 827259024 984095199 234869772 590408322 99348072 494327522 406204895 577429154 658032291 962665338 22677366 331183725 548475353 822369060 800808796 838137966 800797694 948879869 906201321 945212993 679821962 694460123 399629025 616513600 996558285 998880419 31200182 908368272 317369888 671915666 798216172 845565820 314758434 866454458 302820999 364477251 425671058 941655526 513932129 968632405 550217647 777558930 764459955 861793857 108392438 835071120 705373671 802487816 749460329 908232061 119745942 693107247 910423749 933221076 910873454 970734234 128170016 826393833 121518480 290209565 939428863 996901855 838564447 896864828 172096310 753190447 763264676 866936138 577452913 765073723 876820241 915789991 741065046 941381094 51116459 75119631 199137989 681415928 8458063 539268370 218759556 378386333 78824784 647636462 243369412 770367752 558741944 734843253 129426866 557502486 692208613 696060405 348822033 461201310 393851469 742819366 332073869 847864176 223387292 493043177 283389942 802556480 681596917 877789168 255468911 875201433 109646053 422308919 716570068 817034771 30825890 789943771 833453555 963030827 966637627 974983929 796754765 856099960 41443608 419285716 364874116 887870227 924865769 997467760 603938601 944799826 114972101 712210545 951796230 978464682 976354624 994893638 382856043 446956913 833685492 949357708 773855432 824751094 804831388 827849802 723163453 750890428 240445686 716424059 962550640 996642843 261461803 305657509 660841185 868145846 760884380 863117588 532049557 989622120 490500131 530223396 637891015 807503057 225722950 504773636 548543067 643279294 777257743 828118151 892915509 985735514 680110770 768916416 845547216 873782289 496209009 881592492 36325431 435870627 612617154 725897247 798080274 856134406 407233851 729522477 630781974 861281668 328094025 538363363 311917767 888000947 429459536 602670292 924947191 945459530 237523698 888127324 584847669 963502263 783110373 960658838 794963672 914397860 536446636 934091976 366094631 889924563 399761004 573912084 321706897 405887745 230522480 892698830 657242911 998589047 879527774 959627663 351067908 768825572 692554195 710364593 530310550 676392813 958868920 982132159 829732849 997200731 180514217 398553791 319112312 916187322 454761751 530677724 77330509 218051707 529101345 786742753 702298588 777785652 431377571 501443530 578580140 675736959 756792393 843762711 229857453 423293057 216189341 401250029 619524334 877093602 380321573 922161288 592696973 593586118 43472015 971127570 459327642 516305526 492014952 802467089 874397368 992349270 929951539 981216906 65571900 428174034 109059734 318987582 133658874 403755676 191034870 580363726 965656119 987912671 34615709 403805840 469228139 536279588 374346109 627778728 464928690 814035750 657614952 788590944 41217747 365293460 548900388 646882636 612526288 664954827 798128447 903568735 897275559 929802839 799323071 978814643 553105289 974456174 18574585 414822692 904541350 905198037 900682379 914340562 546910769 696696007 708916307 801538000 458791638 697475058 811673759 852230948 252620045 952595763 198065059 836143949 239049887 990345280 678882616 750453362 94154472 487690817 564434214 857956684 592503143 789220746 963674338 978785498 269414077 872218466 506511783 719890816 615703072 707738394 711265084 836393113 965390697 977249911 871117685 922611962 357513478 777588084 636710426 757754279 882053690 917092188 613356574 929734700 76721042 330302365 546392233 977641764 249477525 478992804 325534535 627198184 2704004 653681804 522577258 853608696 800389715 949938893 929750016 957218984 507152761 690578988 291821819 894258476 962874689 976944696 157173814 760361477 528271171 904144127 346704864 833284375 324755370 677601913 916825330 958985367 856079821 934160276 814302477 934736211 524838050 881927132 508103459 760280186 798522029 887529758 652921543 688221096 535742785 941685500 338757279 827040965 153099941 719588012 241969900 320544262 255385413 726588801 538064840 728206019 451852626 938144705 507834598 876902025 755081840 863936629 692207402 792584590 775456641 927064569 597963394 602486283 664263305 795943601 981724110 983877609 595977290 869543111 970196472 998786104 500793462 779152690 89430386 509895935 788154144 824953424 823122222 945203915 621656732 744737384 870731438 886493452 394881767 507796188 518315638 943036625 247338644 375393330 25978669 76477959 26560982 279084083 845999253 920426853 399478284 781425856 381065404 405889168 104318890 225568723 174153395 783230978 765133887 973119938 421286041 486253225 927230407 935373345 925271067 949365982 681519853 812129036 525100445 833861065 789419101 807794957 186280393 446371127 362252891 852480018 203978680 854427456 771608639 771999250 969953123 986877687 255952697 517117313 136829600 806492089 392765640 493026969 791027212 974822342 257429898 654878074 815005132 866954710 100173711 904174439 117552896 356179579 857589286 949973222 688379715 803373991 400984176 816996962 82290362 871080878 40293310 89320054 104065706 497758165 497000991 545889357 821055112 885428895 1890720 893773572 358429580 636559175 571649882 919033320 825395918 854398432 896422259 934984755 609406006 828450919 895477703 996731438 331512242 632764191 775402924 843278540 406278833 909095944 15552901 597818106 602335837 912613160 13201511 43124458 626982188 813540260 151361690 215897126 816537138 854368293 611511414 949356286 509525863 731387778 449122934 715262747 456462183 961784378 654594660 678113162 393290028 632225109 116995852 247586599 726465620 834521355 612442992 873342661 178140179 410670287 190734913 627568432 754879207 898844511 855695745 868103452 168135243 533519700 369966191 795578425 436247727 527175758 856388726 972261415 123263003 659742632 922375194 971373006 619485602 959834456 85473331 823455201 502037279 656743056 483546895 507949493 637189548 791862840 335877319 726823882 170685789 927601085 547588698 750769393 272624878 971844100 532259038 645880403 777794204 865120151 759882807 960664641 854358186 953579331 163626975 660792959 280432363 745840550 603068366 938239505 851550555 969320814 385422487 459791647 717874691 908973677 985095869 992211886 279065650 729935390 794185815 869152687 577420365 766009445 704505437 981449280 275840078 408136601 9999031 338281779 789670944 990667037 160274993 591049753 787145344 809927079 451655186 991281849 64572016 951316349 212012281 914965984 988211826 996176106 183580007 641414905 828249746 889033816 484107067 574698586 134997865 525214357 313649375 896345213 640302107 872933035 217782835 247031655 552421075 966284707 245716818 874875170 389167351 618533085 973787954 988374583 346840172 891646519 258938387 587975298 292374341 698848294 511548071 613382126 512025456 633781983 923156479 940693567 249691113 971193055 996920460 998198080 185658643 909829204 161200814 518647592 817942730 950955775 300697599 490769694 180038559 548956913 722587665 751574756 370133413 921879263 733890671 868731499 932765712 957347453 271357667 275034620 27633584 169924277 941691250 995926070 762094515 846526841 410219459 835620183 486562317 595538178 173281407 981647801 29947814 154735353 291652528 814916289 424138101 732000983 598217262 695354535 419154426 901635060 90928825 641300329 916645439 935142252 691985598 873467683 714215275 735157391 712503474 854496983 22411792 451301650 192259657 598788329 578262050 773890712 615091477 971663213 706159667 948970160 303055058 318599697 812353056 936750044 419973318 858954538 770670573 945818141 561728189 794863279 104727438 893640923 356494705 805297747 652584065 835971180 680124314 853385886 304203708 982076319 185129913 644955125 16357831 955371802 737914031 931778355 236463731 376557248 560095374 682683645 709227075 949637980 18897515 500556717 419784063 485152810 942535275 948952733 837265228 914040836 140701164 788457086 667497300 705779834 942366503 976783234 12307351 231296713 76072830 916867219 166252442 784033775 525775781 984907074 846241411 902118830 348446115 868028643 51038219 340992167 966379197 983783641 625822834 793089539 278179749 414393771 50461818 422405582 235217260 901958484 628090671 651066090 991097744 997085439 913573728 923855165 967400897 990253279 920719854 929270423 355490074 402949465 952970565 958552806 641166401 948907382 705467711 720046969 695757697 842253622 225524226 782354870 146425038 370253850 811816113 969584115 367163915 658389530 52349165 690800283 403294810 702678658 853127734 908978738 557136361 973991103 522400634 923788243 436850158 941629118 789587249 808407395 49659715 928905946 504846281 767717989 824399676 949742653 397825806 460707453 82962053 868662255 755999818 970079649 224612602 922262586 281142186 634952382 462488860 830721766 835678373 998151167 687993984 817114363 231745769 390028128 286914232 373449739 496453479 887106277 29056475 819655924 986082742 997650480 547736277 712984090 614032873 671724391 587248783 831322290 70416197 964885396 76510778 732483720 724694458 895797918 924232453 936293226 300192346 510229237 708121360 819096862 47968338 58101462 261258758 334152977 992358115 995124646 446403067 577371963 884568835 914244177 664359038 752344100 458805171 833212036 504744192 945324987 94356657 691136314 247969984 847227914 851017593 980032184 568557953 755378886 295420877 586050978 345640532 886802138 587869990 737788497 203354272 213440238 369107866 502352784 298031823 777371791 832300218 920554686 634988232 682085488 624427177 982557802 607238012 617981194 450874109 809562223 330567861 476343672 417763830 608380257 289270780 595745617 979368781 980294462 174345817 872924895 591877329 986640999 596214308 986404526 319426185 843399566 17384319 342280392 686806099 931877222 680062546 836098468 130924983 895381444 164967669 367357073 572281932 731060854 323298486 438915149 946175427 950987953 754603566 817028073 676153850 816129754 174100154 338985178 667353125 822417901 273041278 801065653 871831368 908332706 62134401 745297701 621678758 745696196 563263049 720166551 469169713 656522765 727349654 976647630 396714370 846907302 740668813 891980797 560997952 675583966 211663814 415648411 99396294 662066526 748894332 754574309 761275678 863259785 535298873 670119988 79552345 449924044 712846497 841987332 590189782 786327838 177161608 763248670 258684119 288959744 96742508 655382281 350450453 942578367 228569360 940557034 434144858 465238512 281032978 774877514 598153593 705172008 606818130 779922936 109720336 460419735 925758491 929827009 832080357 882793647 418795711 794114507 410053967 483712048 931511621 956778523 46176597 691642210 172647253 267757670 712138737 834921992 488155640 862008029 297699407 852303949 763989597 831029333 442001382 531519592 218736679 868769997 766806774 798094961 363000542 488417173 108465425 192094588 957824517 998132668 889535694 952276943 313620104 662673336 642055385 870245469 435496052 499749572 382365078 873820921 2175323 344565375 83322265 997432253 936927578 980562614 950869282 954320804 293005134 616233634 533382028 910199256 611124460 790456419 242706003 274867048 840075223 880644199 402647408 726749365 678261381 946360280 91631026 590940125 40932224 317749193 178229722 359120451 392137304 790239208 735059208 945023918 753951059 796593189 981869657 994279866 174810264 843569338 685072424 904737432 792350734 825211380 898777198 941617669 911640080 976725389 669014329 852457378 451915747 554713778 788515955 807013722 734517718 884433943 167484684 474425594 797108114 930901160 499015834 971243561 451755390 721505114 858848087 865191330 990107394 995038872 691142345 765336158 455832070 910208688 403048688 730637668 10818077 234795440 990844355 994945539 459658849 479151357 891664233 966699132 281177706 664589357 270300651 631963909 157796004 427052331 403645162 722702421 760483133 983886125 414862926 467436921 875375956 917521717 853836871 890028834 105483421 511632637 526332368 683309494 138177503 835705422 149720389 783129887 834454944 925725437 254677171 372773902 243192125 280124831 711797539 861700487 190115962 712336783 31122271 847450825 641054262 693556510 737376782 955654346 472617634 941448875 62646693 978984553 235979399 766231472 159903651 494722699 582680583 772585589 723226152 735822476 468384908 887338431 681628999 894917679 20237030 165912271 250018274 928017674 957489312 976260668 808405023 952116012 644183332 897179380 556171955 665421177 40444510 578550410 830004240 916953371 625929229 803841898 470480047 787203954 78504735 761667332 534782476 842830861 915938210 941042844 329620498 482383129 605919378 713631398 184775559 922532930 367831653 776441627 430165268 888138939 901849381 913220176 966351762 968902724 738345471 817596580 330966817 506152634 470973970 767059911 211363643 483538169 863055439 952545666 878243428 915403872 472062271 677440117 941401803 971598771 995173806 999205155 536940426 657225001 225539680 849465850 469750746 742408652 103654367 486553620 265529872 536809657 737057709 865583897 822531156 851926218 121422606 198883676 353870948 567357672 30202832 543930093 144548951 630547231 415378878 996828544 214971901 979756317 353006833 774330222 114121913 649597495 548692582 882590223 14592970 64860468 269591819 353249869 650200237 751458660 735605366 736049588 917211775 939072348 145181660 259806298 409834458 512298130 499729069 691952595 230018251 837907969 313412597 673792102 175295976 654695681 498843562 925734233 898659998 986133892 643351322 827088426 946236153 998242400 167383445 650321952 880625948 925067636 773801556 989727903 486060022 836175310 768433349 874658445 722985898 962907429 203052879 277836680 57077627 524255165 397276194 469103040 696136093 697872159 903864197 950572829 253720339 297193019 433121499 821703607 167967400 388047201 18636577 112682402 556686940 638639025 945342408 968122322 440202113 888535128 688330760 814127191 584770687 880183383 288214882 986849205 196853299 251791889 255191747 306707232 759289607 892314760 49356629 78274824 806133236 855486922 632275492 971879036 515360889 831516586 692010664 848433142 786043461 833886906 564054268 691198486 262014974 756585443 54691187 615269030 378605451 755334370 117442858 594357052 203139137 533756641 331606557 594106379 487211793 526469534 414289603 437679851 688866596 739880166 44311332 708687459 483694834 778061888 287375774 382946506 70369999 361930594 993496074 999219287 759398740 909599004 182798250 526720459 402131742 820447310 66979499 151372200 481828071 925811351 237870593 942137537 488175462 770476384 79942731 975558677 113224711 521255030 987169149 997501204 457897664 848509269 432788392 535963377 15825134 807413863 31889575 278573127 844781437 891068435 215139201 716155893 380364307 824362367 507451854 922700344 907482919 950989531 4421435 690266126 62494680 684708194 383860129 412702040 363151199 937103803 134804246 233961598 603932523 796320044 354680534 590302771 352393131 495851745 775768396 788901649 551638372 801506353 559586581 712274406 557003202 886620258 541314887 627488732 736577970 744889231 360708085 779799896 859368184 951529390 222681854 729326592 720945543 840059030 54174857 231688735 283611614 333232355 232159272 493307375 364442751 605821445 980552924 984777655 205038897 367264330 822381896 980262221 759770301 804746594 207983937 343836560 790403392 991977326 344252163 586497225 809820139 880787739 926855742 934113121 819811279 821533359 150221267 856085482 630489984 660325988 798764781 937615650 424965116 830074309 785494287 929597319 125295592 134815452 579559520 675406475 420291845 586886190 8785570 969633140 114442304 356009788 269062195 568791783 70159999 849391679 227792175 765573567 352154607 821079621 285458360 927654879 151377991 620682671 160682827 599346139 963766900 986247497 191824850 681222736 726849049 852368723 14500254 854801907 615385875 717881543 21318588 191301279 56770135 687920246 995230853 998841995 702184577 707874568 809364448 841456653 333112194 477430866 989069781 990023332 870279683 947459560 808607120 841780581 897217216 947741245 142262794 757980804 902187706 989018533 708678229 776976808 365579967 870841567 788202071 981294188 905334205 996301384 152041913 537829906 6862220 156462052 735699360 898178498 870567458 994490732 550839235 731084828 811075007 946733540 432406767 960567736 52850805 130760169 246184002 273590995 553819418 739297937 740403156 743300831 108726551 334137976 810928 742594410 228105735 526093281 400614457 416727779 340909435 373151328 859002537 879993326 405720717 638548545 614332690 760689974 156194541 793598902 582989887 713037191 575402952 890023369 244320882 410040477 352495786 573165626 864076791 950565015 219862648 838481865 474146132 869675371 522365251 598676895 39408037 506153942 87526010 833416657 40697011 891225522 985576538 999056570 828613557 897324576 995492547 996845757 540616922 552254278 478552427 553895022 479543136 998401033 829552241 978520290 282584344 670373470 404593015 952616014 189887429 639093463 322891982 352779161 441753758 963239902 769175296 939533384 603280592 819617152 546755190 574572220 634025161 877151776 759877705 943212441 574829255 815906716 380758894 489463214 847805748 986715614 323271422 635652473 982406355 983883553 304569892 307390682 304206950 690605342 214293204 802897064 409793955 963535201 455531880 560055791 525542496 996248414 441583062 774588032 181846343 780557266 949939002 961043285 502205674 639534146 853872369 971654633 193743037 496309484 376040066 876559459 741529646 750828657 455859593 533846086 383548989 413657747 979788600 992862958 32328055 332856593 230371625 255713773 100359993 544731511 437049526 724438169 531961744 841113598 169198281 555704366 754146465 782805284 374425109 878957596 117112211 917502020 168131172 538440417 643770525 742108413 599360789 922557983 139875003 729230819 186735417 786709236 312160995 464957522 875477718 958998019 827499091 920458334 768001629 923643146 91291849 154248351 950706498 961007915 297647661 374042957 275249808 914280063 70603420 928754649 768072337 920281437 978172279 993998899 308252363 808606134 435898929 868778995 700601442 830014176 596806002 769436475 129067924 527013579 639230401 714335836 677776989 731072452 908253411 932627241 698208263 996094857 70612723 910092869 807100081 960000765 451678215 826017696 702989077 774809840 744857754 907560899 37021001 527386489 758115736 959924566 446397231 987786765 235042137 984195513 809490695 976280889 87465345 410067336 836225309 982253801 757684906 908168003 502629120 904976549 513560411 725911271 988307193 993170482 166297549 388385850 417258968 948764196 722921780 981672240 630519609 964115992 52784812 193607213 994040984 999108246 66194190 971160942 115318522 216754557 869431097 875310142 838676 272421446 848192631 897593850 233499420 415071876 83425942 705744821 781782471 787528791 972561758 974617099 460429393 834668022 965666144 998000223 721890947 937626031 197223144 778929306 559458364 764748997 660426812 761611977 816088699 849628297 441261058 738960934 166270090 502981530 974259648 988542305 911920455 917528182 32617987 880988150 458106849 719531684 796218425 925055246 298069521 731270917 413732554 623939927 614899942 817228821 47415046 481153008 161790229 171948643 427155976 530800153 141192810 454609437 383975244 421486976 711736956 719471631 601045108 907408229 504054594 827012804 615238866 817610908 829391903 981886888 144525389 258217777 735046912 876935057 339774677 640809492 560287036 972918888 551025589 973933456 810763854 826738319 969866272 972015541 231150168 625739523 665580874 918216541 828660066 968305512 395688809 743133020 153559544 979536185 579913592 662767204 300311239 387709996 912527457 982472149 470266866 526251751 641599693 728714841 638503969 896936596 558386854 744801736 370394553 934334686 820083663 875069942 156705601 872053723 912787722 922732468 279124922 803427517 403498363 808447999 475791262 724193671 770779379 898202997 56997501 451152740 453068174 949334340 977231614 997808933 771517447 819457630 803176191 890052007 579947869 703565411 739757889 766752613 346170712 983935566 870732279 950039111 510655735 993463191 520448691 963728044 4441579 807998999 313909138 616597838 748285402 895098728 865052927 931204754 176818739 995475218 849878469 909030853 211277529 950790303 346509981 737402962 193385629 989795834 684610491 892484792 220668326 659481253 686677158 939386852 394969809 914657808 577169036 944480546 607207480 664662796 143485695 215857895 826925985 922173213 376495401 763054981 21220356 452262261 150552658 438234192 269156194 517618713 332877045 750170652 388462385 769095356 925359884 938151331 35092379 869780788 237152234 793130995 300625532 876417369 218421461 275263114 842733575 878386436 123485697 646547951 301893952 609155547 570722073 929321821 560092873 874658617 234596022 962473280 272704856 732194194 35805378 625488565 919750004 994641164 88019583 720233520 256423390 910135112 699144327 735936675 897841413 967929523 778504707 834887770 179320338 179636324 972591783 998068391 654897973 796784704 541154899 555240258 98979862 309422178 71149367 950637586 431355523 735102452 879755806 942171072 968265450 983600204 103687615 758288974 406883077 903134212 892414767 898432906 21849342 806249278 803199735 993407253 724717176 753383918 157366449 295628930 396614942 804384247 187541157 996796099 833959406 882998370 33115094 63238923 494132129 551885618 594243753 845861878 176409027 241192339 690080196 911934843 240059581 521830061 315989044 326100400 847674208 930354166 207029022 319494689 950852817 976218172 616584692 623435539 902324642 978190857 192596546 825874052 853654913 897335444 477292323 603451144 306801118 404139689 67987882 642753010 505646936 926045767 126304177 323800886 902196545 999159689 847794896 902002519 909104679 998486497 685300593 818226109 276779783 785314457 796528969 914418500 500598070 767710261 109374551 851555263 209314126 327350972 856866903 893037824 316004622 925545570 786905238 923194891 721040510 882493770 985140985 995063579 925871833 935160766 788996596 937123035 497227920 943727840 457126063 846215807 34276440 435349112 835009745 932202679 834341662 912050795 308396086 887555279 728150232 736313300 745373383 960156646 578749070 724601170 139694529 910796295 911681221 956835174 35874853 527531154 93317735 243511278 928478393 986443675 8110434 527547906 131992768 261672994 864201265 911544021 491434799 532106010 305611254 652501742 499175837 759961058 642542473 718538431 718075475 751064536 885001580 910139678 299406238 399409793 590382141 831120440 278022880 776680525 798700277 815118282 908601248 921736769 429102158 928239854 300736193 590799267 189929753 924743844 835090853 944203380 238524801 370400561 863200478 873524357 455167212 838091891 14087722 881761188 12268026 909988755 297457319 783413335 207449913 618035589 724715084 733597634 961464130 971387345 398479029 590698163 863769369 928521421 547532218 567043544 378191604 385018503 893778833 914373982 566665495 813204725 669365715 974474487 912818057 958463144 250105370 668012792 112978026 999159012 670536632 709383261 554488957 637950679 153208942 870373191 8555237 559351042 245907161 938098314 564577937 717887194 510413907 997638204 484662246 656584663 858490640 903477487 647724198 714396088 83737778 154120472 686474037 969244305 406967198 864180198 528638613 914897989 235803900 383367056 815686899 987474352 106724182 577282927 351226665 401065812 580442414 724309074 986327840 986473882 385299485 579441366 281021861 868029825 959507875 984918269 885966793 982889654 35027483 884824948 445095072 920850256 574381938 675184653 947795809 988251461 110027912 774369543 44412520 125955652 75814959 544071183 157985349 700019610 302048012 793155924 693818720 762150631 829966250 975484765 469621921 478135331 579466092 698395033 591527981 844568011 315505418 645577264 995670872 998019469 506801552 646628443 245762468 810435947 147605609 728661188 361890069 726120705 20354581 69524263 274598513 864512773 841463171 962264713 183280069 750661622 138227375 179264141 264333027 632559452 488293080 812288259 126806897 393736478 917710103 926375236 548976929 674976327 856395956 943049716 205211959 247940170 891373508 997730278 644904056 960528617 943726539 945436370 507363331 993456042 253301439 877446380 750010206 960800579 746684178 909326370 594042803 868307895 53235272 530272342 870342348 879276409 730598521 769098022 625042761 812760562 808510864 885524185 259452642 501239133 723333872 934047936 824270390 996479064 870755413 900401190 626899398 905613228 874854035 968595713 995487043 997460740 945827496 966252492 732462340 928591085 512075771 951381148 454808606 925482409 333761111 601851146 453186756 465635050 503877927 512290525 920221157 937123402 769665681 780077821 262157066 440327972 248187205 702208179 348648351 666995568 849434374 855064311 399844074 837608619 891237198 934852474 150850122 165173461 280174437 992127545 933601116 954372814 206616390 661120598 268132316 593236991 409133301 704744328 401639643 695338494 659062125 745971889 426458166 562904815 431211708 947346243 352427654 354771537 979434569 989041267 444901395 956859298 41716097 738851804 407481514 714526110 917922787 994479704 468920334 882332299 315279669 583907563 547012080 745182060 44507679 586275460 860854715 956131681 739937299 918573617 500469310 872417601 22287871 387726455 224655066 374755881 501958933 902446790 952680705 980312718 175037256 604736141 76389571 215852983 917080505 950007801 725717105 932527186 652974872 770069987 863590116 867961051 960934008 992722559 244913747 515105425 85992093 494379514 513678431 820896365 423067561 655097224 839954907 936072383 490730264 857509491 463285313 715094728 577755785 595076222 109761955 493134430 182084311 917236950 940103916 968702869 770302766 776568579 91290364 773615908 402187235 995659876 729671764 932066445 727396297 798965651 601223833 639466453 576290636 993880661 503983924 922927168 376884944 440151369 834346321 944796878 518739432 634694540 641422597 936474084 379839799 953801367 914778372 963824264 231685399 710346527 818246325 980885133 626435898 895821891 964703600 976273108 65516352 92378584 291802155 554645188 647293450 670965690 544437567 664819471 112339096 828390997 35381277 553228531 381658674 780160811 651420449 831526057 797263959 845787883 599680823 754335673 795395728 931917444 535930759 998435748 965159064 980047117 908758057 911824736 373644044 854576870 624419294 720409085 552245607 940921453 347285217 861493612 352754732 704237978 900503578 916335996 113829958 664730694 360280887 406352030 993523255 993764136 661217159 718410439 942226822 956068195 813435492 904456732 236514073 642230652 938170639 989598633 224225837 715523268 268417169 957425974 558445521 558740226 496756881 999184311 794864343 795645220 962873246 986081595 937363164 943200755 22754047 838681539 150560393 862315181 862405647 986163763 17372528 281610074 736653229 791512088 87157158 961970740 232066455 871430804 689035597 813977900 299493522 539224399 679212306 793442117 388607359 625595632 521152681 632254945 949457176 967920991 541785486 830515806 86363676 882625651 437631194 459291207 477545409 776447336 232686999 832007922 88442643 280715624 915213459 991106191 685587260 926420721 289364893 430872013 484599775 720370666 145987060 967803543 520824370 781105819 937558945 939127224 776849619 848769087 475121591 616929358 255039385 278780218 893865624 939168489 898911585 919508754 450582834 518057576 98814914 656931347 325936062 341222871 578136834 767407240 708698169 711409799 438042849 586483097 854577293 865380323 591397406 993281494 219025830 272272184 732843744 738548104 503934812 597834411 517310924 582149105 577347518 985176673 17982929 803604051 281182293 510243708 660302094 811460384 597957586 986506899 375227469 795105902 144864405 981231580 288144335 957688335 292115877 320153905 712479017 998675218 258463307 827694651 388856670 851394332 373619765 412995549 136020522 353614134 707830215 960887185 568869003 829534870 800392841 893158887 410366342 772840548 72763914 855759275 142118841 718882866 65464525 398422793 760233051 851699291 118754867 543099423 523320424 849704204 332914659 938600815 651920776 687575328 108096030 589695607 408410554 733493896 612649822 818755045 464336278 891952569 504284552 928184317 104951648 315582846 371207493 841232797 58120276 239367014 295033236 898224716 752300229 960178942 207980694 725771906 760684465 779486279 955268402 967652500 830269769 883681551 864486611 975175662 682156845 767636824 483374328 997030922 97170943 425082482 158077623 548076222 237588763 822644724 337314802 836041272 763280650 893666936 265696936 504755503 640769155 995870503 541016456 850260953 548989417 959243777 612328583 909471484 484635328 584673507 141756335 383908078 41349099 150338908 54314941 844408309 610383586 693556018 488843246 984573134 850070690 931101366 104686697 755481137 718768369 900259812 410595149 503154300 76496852 279987653 707027196 935690238 332309763 500565730 672565386 796394787 59589954 971758368 362286467 694882110 776020306 855882359 622844324 791359830 566635319 694430780 857217965 864788437 700383451 833999224 423449612 624712579 924154768 954439179 386287504 865776790 830278619 837567858 23551614 915048954 356274869 448819034 462513742 923728632 32537266 224543485 565440114 926151292 537407815 607461594 728621672 957356035 747885567 875967579 598299277 747711466 742191561 793481506 441022037 983098068 782125600 830259051 195500004 316078044 741966590 748702077 449470375 999130723 564476209 705991705 38882146 945331137 751138132 779948332 717021473 885996078 333069513 714504562 694169925 886640708 859606809 934495065 745551830 891012940 668956889 866303365 995248982 996389249 540199244 895846380 923841911 968860572 389593121 641401409 88227043 421331240 470005531 474166034 33478844 373585775 389901510 490735195 448080441 507932200 791351751 869938284 493868009 967189020 628498063 826982864 785335398 797551590 411231829 666707475 300706704 932974601 81864876 748476108 704727294 930170915 670644451 859797701 577394975 905422029 17217541 216668561 657392844 945975303 384518217 801192478 989171761 995681538 898928960 905192446 718953640 754401238 390543217 561503376 119872522 213127513 997256238 998793110 162191591 780615554 235385372 945013617 56405400 423183442 295448569 509822284 114908302 628837599 85520300 862398353 592757165 907637804 328899796 798828796 853862411 961174524 459203750 678217214 296047716 780336462 370553482 491314666 30798893 254714930 777719810 838804046 253613022 340289200 456030389 542893467 295005898 574218925 897449416 949139743 689300695 934349642 376466076 491199232 57683422 99138760 535544522 789642306 390653335 586295720 336191899 679936205 851823898 902324434 710857155 839448680 167150999 842204416 488819912 742686522 167189052 686023060 745574706 767356636 365611314 886202628 324954894 962870914 698653864 934734679 377469410 420849688 643607170 808323455 601264474 935659790 390160055 573151537 416782576 505016944 730848770 733671842 491373703 831655923 723699432 763207871 297925318 883796925 67041616 139712253 200487120 587396653 255119744 661106077 500470345 874101618 151188548 732784682 373491735 468028764 940741179 958143999 747925731 944258236 884690837 980032845 449318446 849289967 862363187 915851615 686129354 808943161 305327676 933248421 818278665 973927009 697862260 948786295 680673885 747840999 577629229 998826188 674389730 905056029 522303137 893571640 386843658 888406050 236587936 916619457 240410312 753136598 373062019 932892275 926213839 974414355 382836331 927488150 187609098 297820096 379790940 455972329 515938467 932570114 893336609 921472357 859983470 876512025 500425196 761904874 265946427 984165755 863086398 973052845 176091574 689468506 306447797 839036625 131026699 273721504 262568122 537961512 163864838 633274148 170353289 846105688 36499874 114912025 765773555 791588189 776106359 783572258 411392112 903654962 684493074 860854611 636969342 932647851 211014914 581734930 702492756 737004098 334385274 952063166 790394632 909855451 890218135 956074332 973793396 979563595 516050725 916335525 461862784 882831140 129673426 849351527 945755234 960798066 843204371 932392242 97099258 395743160 661811912 834173541 856793233 981927831 154373231 239491513 808779485 869863281 544622665 939373199 388603731 786279207 693360174 985562726 267438118 942379224 704641037 887173383 280918681 748538725 299366778 675833755 252184627 716656806 97751083 640541641 446750108 528695088 149803114 530663427 996258786 997628795 403309868 835835627 39219367 741310157 352749208 388353555 898588958 973811450 435940421 856372535 912121535 944544984 929087339 970379813 748452409 795479986 191195255 390282968 255654242 337696528 58804622 272495565 659054184 784652602 580411073 852643661 136442294 952379593 953785914 969296349 248102606 943904695 653721981 723984489 730541479 889293555 325878417 431574146 751955203 998274875 70221473 189692576 488553178 757913183 257448004 529235439 925526636 925839690 788202994 859547361 682363883 773580415 39058819 193186514 430207327 525798344 760508109 769295558 237065794 440552909 106296020 463099113 943416080 944234817 748166572 838975143 81888806 488888670 446512538 506097899 675342768 713969158 686432158 927314892 239936698 819481617 184812858 687053032 908167772 958006761 455454092 951992207 273002709 903783880 320103471 451702317 163627233 662147249 364539025 738533308 575277428 804794374 592213245 881207615 936749393 966019705 788846213 938421508 249807531 794472562 670998334 912857747 786304233 854308311 409390162 764952763 602518448 673374680 684425940 841986157 283205897 836189881 518676367 947705070 49321273 708841590 136675514 499412454 135770029 754368533 214764661 282765035 768723582 899022116 445425711 727502303 843780259 897032470 929048129 989781661 315907140 811898824 64788447 590885752 214853274 974336021 955968804 990449784 901711587 920314523 932554071 986839658 580166239 954453092 932855283 976639290 794134383 985071693 724796644 871296685 192650889 518629931 696504128 898726982 897008760 908838686 106521962 728101091 32668844 612963924 219166917 832134939 11178612 463404201 807220427 856030241 872016780 998894657 711978705 722711370 294765428 843334135 734529720 786593587 760144848 838984675 404408578 496931766 690417076 829800537 747915955 858674332 603844853 916638627 107023545 273853996 876746941 969056972 598493300 815999859 539506416 657572925 782537677 895372905 437813411 712620795 461023913 544407368 726198361 808506767 654472005 721944040 906672380 929658404 695259040 971508601 831123467 869106029 682967089 925103737 78672621 116417522 181162152 976573734 449933341 811442977 293593984 505902086 556220947 703808495 342402122 959625616 268909925 818177815 872008555 878141155 38604066 511828889 528946737 604086107 448096305 810214981 838023454 953128342 783776524 789839285 304625057 447932533 885085371 889131936 979356516 995055129 725096472 768181568 58745235 926545880 403626911 615781709 377425034 840241961 523226144 684721713 703485248 968057611 189487100 217000444 626759088 794507349 246023076 912927460 252202996 922840998 948173182 965996722 929780303 955031107 85973216 932838318 80517691 149344590 323090719 495093963 989387419 990206675 18035523 997943604 895609362 968517247 897696224 947817620 292505180 295188245 364901168 951714862 629614382 938697050 95124034 337254493 74102866 728889695 186111858 232440293 835039773 843780265 478237161 543177324 14688556 974918331 881756292 975663695 168869520 644258987 351209576 937393645 216652383 945976710 148747437 246957374 30762682 732825622 787439294 907059477 300170985 650998873 206000252 420122145 651627078 716226923 223553865 464099015 51662681 696817691 874538007 917941845 731603057 850903935 539329081 984031099 990163559 998549104 260733839 571327646 228522157 630748938 233935230 548807633 614385388 921467254 215077749 279375927 946078784 980081066 522124204 656121349 729801719 913771511 87440783 442728450 51720714 274545503 307739450 427291877 636222223 734240960 597070333 782463772 794057554 923993343 356910905 450258553 709092999 974265302 345083113 975825139 208690723 455649652 458095291 906958486 686087340 916979061 797271197 895935346 804155027 889191496 112961960 381118296 319562731 988254219 265715168 868688166 451457647 918141783 584269233 689697341 987910337 997172212 218547944 737338755 441557552 790951120 74737985 299161479 961821864 969533769 171294118 395776253 438641141 617876402 717413111 934914726 237248518 338435065 321511918 582884828 368081533 469742759 490023852 581983866 48331139 473366001 968238027 992529157 438905823 937613810 102718135 808211095 156773192 661724291 552890212 833165552 829213551 852109643 55225568 489414764 685634304 926133358 377030341 665702064 423789979 797571016 715864432 840217281 456633291 818319097 316146499 658684142 544013827 820112553 338304741 816580545 219377952 408833984 132252314 577930986 464663978 625664187 736137321 811886144 149730235 980521211 290628544 643459650 812105729 852997227 338649535 722778392 546152457 650290162 323931183 851692391 597097869 836248725 323356940 845604519 644640265 804601733 157122063 712235694 481931670 952814675 295192759 505521415 395460073 621057355 606181092 658127034 615675114 882236692 620298354 781388965 275353596 636310057 502573367 660506834 329544013 481802952 550278369 879057234 36378495 106206153 217362170 243526015 71923229 808425367 417934206 484844245 107335593 649860101 18610854 642245643 340284004 530691805 86565812 710152970 389592606 706204183 886898514 934059885 971843054 972446883 583653767 834350992 776625754 893549501 945779280 947981473 49394555 354838146 575280628 689194046 499285882 664848645 312573474 756854518 416716475 737408454 127155247 851751982 362283137 433605191 271964343 988554461 299416325 920288254 535025400 586468475 244692873 506789642 623831988 820910147 671925465 916807191 630027259 993431773 400570075 782797534 158322144 992714402 492948363 780885163 163885867 798616048 791556259 881462445 691674427 902301963 172279134 198543970 347330375 489353133 384789018 457740097 880272161 917385123 572844629 942909523 347636847 983837960 972023639 973413461 330209141 740030454 577104914 844693509 929425607 983788508 34478617 231136750 479778822 942282214 838398024 843701096 905450495 969471190 298416132 897958487 598529657 849642803 457487987 621169244 269745437 354989573 629248813 928125447 721802464 815739350 505725789 886042826 331252813 362491231 437653092 652113213 652831963 847367491 435103495 615267693 335908856 378667192 320355613 540300813 379084274 796472520 949940114 961336395 643273318 735677527 994732803 997751080 8669029 577390858 547920684 646976993 404607617 635508500 662570294 836821806 890172904 996086953 16347675 407446942 11091556 766375114 389899706 438972923 858830747 949913221 762615049 935984460 839377496 879518135 175378817 830321080 32274716 230900185 195570371 637289509 93918233 531068531 425548225 469843816 360254151 555089560 959518309 977051204 930824007 949840689 543778454 579994538 554492483 784158789 86014972 203562306 690382090 954299197 896055618 979909520 192358598 912695692 506314850 751196909 651567888 979513038 850144430 868035904 843390463 871077195 632554619 935034055 168433482 728785401 706893482 969684127 295124717 556295776 448905837 757200779 500213493 888977184 601173247 832291106 162317204 538560971 847796386 908493980 181247298 379668365 410824367 745236812 858931682 946917022 60081334 563884716 592291674 672238760 149668706 320570605 9205858 650753611 52270262 857933785 741864082 827069138 200952488 803690857 784485036 997297436 808333739 950812391 893435632 963276105 756710065 758743783 683054268 998619799 264426239 264760521 343358827 402806905 5471483 766364113 490498418 723623155 465690893 808887582 137503413 447833434 965393807 972492278 956005419 997595570 423269922 549511324 861596973 953622984 362691126 615491540 32127435 77136969 680571845 696992916 532936356 978889340 393757895 738782360 979121961 982086841 429289643 488873833 238238031 819122139 947157841 951508424 296316049 676196810 241451515 603963645 248170901 793127623 642556995 891226249 613360660 749194854 12562429 936047842 823546292 936651483 72249386 356510370 380242003 617629855 267404731 911731304 678117884 976473768 548549507 836631896 917619878 998370954 730602683 757637251 695920633 707194694 718850117 734367343 239573477 703765350 941177976 946782059 53447232 147287139 658549703 813041988 376780974 826754677 215789238 547265182 196343452 257825995 409385017 809599185 41755113 730625477 789696684 839095628 581949271 898321222 843223800 947293615 972117356 994939756 933245685 935834215 870029416 874575779 483025489 983744679 807376142 918746393 838008249 897998116 539830671 899596406 390507263 568232529 936754951 937940397 609392096 761045673 764221955 851482539 787072734 798491529 973605023 996467113 587406123 632048698 658459434 843883936 517733577 670671591 908711545 998122687 583316955 759928880 977910699 997130462 847326985 992640597 50794144 796218712 347487581 832763266 580356953 939473618 380709044 566208270 365808721 403812512 914026763 934750807 42650887 46152484 159514224 329382125 124923899 283348248 15105377 340051079 71924604 270831912 490348598 779958417 911090372 966368305 219504419 875306416 894841107 958541839 368879922 884638795 263754836 275847866 581375008 610449773 792377941 795780652 597659530 985914817 866027245 952531614 503804618 559079202 223453362 424162918 219172011 773949534 968047705 988477809 446524932 831650363 589411360 988085187 843896776 879044630 523232816 695480294 52063505 353405800 719116432 933781110 671277743 832395374 768645035 796591441 955345912 986640905 825993863 842630971 111776879 729330341 791097127 815888033 155288989 697439114 665493409 983554065 453865741 713066153 98749142 911024877 868242270 877751094 304825185 400577059 75650152 776380644 197386957 330704696 669782864 845476411 845993550 873679562 104639381 453671294 976752556 979294990 920344897 966304957 809629746 972392240 240683013 855147595 464199410 775904645 498923444 669291059 276978613 542511368 169094330 811118442 981744588 987843346 825434310 832984816 892535244 930902247 318719805 581857930 903805403 908510109 944926004 963106917 271426734 418792095 450430013 590805503 560441839 764115213 731667599 848294733 852689425 872320225 394862200 806639856 302229361 901935010 525152116 638120213 218730375 747073541 200710908 834349067 681989556 714579212 420751383 658052911 110171681 538945159 205328967 412313746 760515104 760703593 796387186 829248773 766643703 797215445 96889200 459314563 895640742 934983705 414042106 569088227 7052889 271659094 525498942 817153260 770794682 928821659 848062570 995025280 495179895 612390099 712845410 926879936 129302677 722296909 352576409 762496844 350696669 448754850 167287365 516099098 791728221 799017225 741974925 832617260 392108900 436760930 755253309 935759237 1222991 629459864 939977143 940483414 659093526 836785205 249588875 352944464 514340411 666864756 637578103 936309982 266116345 375093690 134082611 599452495 959112114 992012373 559397721 823991542 416532924 970374627 352806093 577616707 497310340 884868753 607834886 661393999 115982227 811751944 821541306 940687883 395757834 736371948 516289918 636442137 943092468 951056425 242118907 962522914 971508519 984320368 895227841 910880484 845946972 925113684 177991396 767771193 260454654 783265313 825524453 963207492 712748 675700399 48829328 922947055 159074264 168251606 677571662 728111466 123602084 560935996 189415566 831681818 567015955 925194139 390483289 603797495 209721617 628287985 2124719 137626490 196695627 391687958 145475960 232022264 117765926 139045075 258755703 334006779 959640111 983898810 594509649 948730817 293657131 706968612 249684348 434189307 174457140 741158653 620314711 808667054 347937016 636800955 785938007 965948321 282304555 939354689 378265760 426130060 120105945 623723955 229636050 947702555 192528456 301578792 284489871 578037351 53364274 466050605 834403288 862385708 476812163 966472423 916513686 920447825 837485469 996309347 54521447 80287634 745040441 858857781 765626414 870906327 379315902 958169717 432425296 795161030 750861718 852484169 45886272 665050595 76181286 251486474 469778584 723863882 400605639 428988264 950254090 962471246 220277221 439034180 174787341 653558167 758326066 814870471 493733242 689377821 402110567 731845835 984946232 995274894 643321724 670256534 733313389 813885476 517356098 849347025 190942680 358994408 306838852 864265599 310379315 569045139 583798862 988277715 666181488 798778949 290353024 377848676 160818131 590126743 451870932 763170420 166141431 524702884 173564520 532180308 128177183 752483020 533922307 660847604 773204495 832604394 653310650 692180350 247313880 743323574 322865202 376604616 713631035 886904849 244929566 645860206 809780533 857926572 990486928 997324592 145539325 466672735 411052020 551276944 474347622 731423393 667614952 858048366 242276729 649054943 725311029 903692568 826616590 919324720 875299976 912537155 674859689 818218346 473550193 779668451 24989032 938353445 156766602 195126434 665056714 928958422 89414949 733221055 911777592 973285648 970329948 993648289 511788927 792233280 594734003 832677540 722858402 956941461 758980656 773902784 66343684 161787640 442218866 631951431 431116599 545842085 271030279 866696627 663522347 841232181 864729907 903357184 110047815 580283726 932614139 994523238 95470388 870285140 456324499 537065527 56822434 270147355 536105178 624129999 11077277 635222229 473251620 818078240 757717847 864620729 856984261 985329496 695717692 919855773 739107949 836359062 909098224 955456061 929829524 935019621 209938604 680764339 108433186 953572649 423086101 973560672 734876372 988424423 847782085 911265841 163956766 823168765 662625146 869670263 351638784 787829954 717097450 794473695 610033395 850167407 381745626 512224101 306618307 354655100 377738266 509935633 810589941 832018880 900980754 965676898 591375551 989274833 650873685 873304071 257992157 578917988 271057713 722505127 770747589 779639598 470813428 720818267 288468723 914810427 231258303 593759123 161231797 541032327 422355059 991179981 445888601 698941401 598260649 678181396 400854570 487562534 519741976 641020980 668578519 781216605 450559389 718442323 160263892 714434232 582583950 887888969 190543389 653613794 578624686 651658108 506848690 731488088 328727095 396867854 933450201 952105250 623495128 730612693 373229093 590024911 704852680 990207684 199511177 668051671 811198060 847835308 481112288 944018680 529172431 710249846 752581899 785203111 820187298 966762991 73988713 142393267 836742430 996774467 765363947 858253670 587203291 726674415 656697073 702737324 388236359 790967467 134371698 366155858 487781772 881660887 635467648 757288595 755987969 875202036 394951575 467217930 885723007 958713260 887917599 919703796 5888145 748820305 568808037 742456032 107457340 203531445 171291686 880031102 490362185 663741814 598251442 886551968 31340967 621474565 688311183 706904316 994403464 996388616 375890849 434786370 7873401 495650539 532834905 649565786 727462399 895025253 859895751 902159394 129117408 427273452 141407491 298384827 923272561 955575867 586133164 659601142 596926337 741010684 572923926 716482463 640857056 990127340 878921655 984514359 384016726 649710748 486248334 593905743 653752216 902067875 419556625 919455726 438789034 647678156 582852664 812232160 730335145 746337618 601049314 625397599 810601043 979518189 389163431 494602640 321324104 979084697 977063328 988739623 718672556 851049978 499112965 954292123 244324971 680270212 597680677 645404706 603184029 973472461 39490069 332098755 870771748 988566777 278600978 887651628 983756300 995851515 703611600 890788567 525838040 596033754 471874149 770142969 131322979 132461050 135986615 987238006 7611875 517507815 518367963 546890829 974342220 996950090 352914211 417679334 544929122 923688277 430411566 557661662 380705152 834467319 732195470 935805427 193659003 696334982 717119711 767434776 743027077 875853273 115468183 548115079 661481589 837815255 2304288 32130643 231474224 249606706 650874124 837898285 278873119 899628629 406148832 874476244 321583515 785965480 967694336 987078592 107821002 475930387 666401671 825480243 994387562 996970953 854009848 908562735 598255818 681866938 421824474 885741466 145297932 269985261 261850202 989219943 5403754 892561685 546430237 634921554 219637518 793534780 579206621 996285608 85746677 547602975 158708965 829415990 7892805 375998300 395355160 519665017 18462041 530880767 886655109 919933881 381265002 764486125 255371313 632276219 515893928 664110383 640287773 781166642 468176794 832290876 685112306 958508141 918298912 948228994 351649841 819644995 953073322 981341991 625580043 797141731 109075129 506787870 664808958 903590471 77817635 757724724 742682683 988731230 360673789 997144782 651581794 835764570 184100619 804189866 565885628 763076625 740768758 831875349 300654830 975986835 290164774 816019166 58753368 835205109 615175188 954449281 708421473 823645788 686526301 797101305 375799632 677579831 916889306 947473216 228027188 679071440 495153067 926286638 332855346 948601667 722006391 799022271 100038722 239184449 336484462 905299204 775194192 916430276 766762457 941682279 381546799 874481527 549236739 683562035 700507109 788105403 149959680 353410902 384880453 976497168 60007495 159007224 555261646 656110030 177753222 214712432 45049935 757026615 686628233 904687716 720249187 870445315 844652236 992319858 397900757 721859500 988354227 988425706 331337759 949222048 772940610 807731782 715889857 892111610 346610098 489636284 987625343 992505355 297586819 987815905 966592608 986429067 443905500 931713266 49422511 718667993 409430398 745674450 545243557 727794993 645497771 692476628 698608337 998962287 594746432 820473612 198104288 797377230 79701346 759842333 890471542 923684328 162984326 302633240 45439702 932511359 112368937 500625956 730936924 839076054 679972298 683092343 368553054 641627020 124895451 158949354 71405301 894921218 877528077 990371305 121309217 542914899 55460194 466294781 544119982 647894059 114140836 231859635 460226402 464086628 552546128 836363609 230410512 604805423 278004156 450728799 496557231 497752805 522143348 562861293 342215593 393115389 231485371 517881034 319448429 970431612 542197859 700518339 22279807 76421227 345753614 859197625 947993745 987616207 742744746 962939808 387765664 555873141 498617935 998755893 298029315 421665412 153664674 795076344 595136508 834864015 36701121 623635013 468805934 595234277 288588205 290022582 261268005 623590230 796829681 987481675 103290320 996820993 632584245 696785218 915756839 983836299 565038866 650485744 145209828 522451553 842762223 888681321 45918128 527605448 368414970 380528443 791006630 955714269 471446197 761378993 57479906 622495766 6782180 559754784 949771240 959099403 764441862 873585491 967457079 972917376 860454083 974183640 293850923 971013914 844833188 931035786 218657790 732431268 828929264 910203070 667749892 740439449 194531497 791588388 71594734 170064301 566021814 991542359 563877694 798916392 820256012 876524093 876927529 969308958 148962875 356482609 707273 157199207 631944672 679035276 691217106 806434082 516511089 657664844 554369426 958800167 796222706 939814327 831014396 908925403 784147227 864398533 73092974 805513800 281344853 286973499 49537476 837298389 746148027 822494249 7619643 493527792 221045765 472659134 557449933 601501378 63197065 570491784 613973313 694739315 348737318 572142718 124803194 763874176 925632851 967810743 988858967 995816024 315099272 670554104 898153400 922644069 74981749 105718182 888190976 959567501 46873702 892582114 191680997 539694093 800511570 833709455 451263852 503892467 356859117 931855572 355388005 964096800 572136984 731962268 982804840 998587761 554908525 888198859 324739493 550694788 813977736 900045656 376461852 507443520 37291261 768760841 993216238 998322938 975817484 998173724 586016882 655530185 81437035 695252175 874366541 979494690 818546314 915748856 108135822 991890939 441258386 788027471 861594772 913365265 620259784 846205278 177534026 189636091 114217342 613708041 892245784 897269735 776482615 937587105 275567274 973063289 27109683 979090200 530339909 923126918 409707375 576783188 586534127 592721563 113849367 975548853 869359062 992256635 711356240 912929674 689972703 969351019 826299109 987900596 883031455 920066192 400079727 757977891 885675275 895301887 407858507 425782617 478161400 732414390 440115191 797527419 908489933 988858686 206155236 670654180 726396472 752931341 695119882 893834421 505356210 771546142 837431785 874668041 41786016 670941134 664621833 881008550 760090908 772061184 465873623 718083214 540230049 626056117 641056948 667293362 198445961 837030258 149177824 559724847 94273694 919723589 126594369 954650871 893610652 933288627 309775653 917281085 759690422 801350275 195866778 517092556 865327133 926817217 66301106 767204613 581923056 962985617 827764913 962252219 709817972 905260311 975739498 997036831 502740858 680215246 985831318 986437518 428909346 441207504 399843933 958032438 751969813 869470898 182514062 840958632 4454194 848820033 939056009 973982331 975249689 976057640 123015443 607085782 826336835 898632855 329631178 574989506 450030460 469131047 344810271 770025086 410737455 733336560 454229714 474409612 40105309 864632614 644813432 704753240 476362768 780349974 887578594 992040679 746529254 989988759 928292401 992383485 36699275 578688950 203793613 751432385 602260980 879083799 92557658 969597278 909933999 930365078 336736019 493525288 208215090 327135748 332910740 816349941 749931520 836423202 160786728 629438853 500253268 959251376 301207731 616403575 565347074 767081918 671700563 890681676 251369141 673255701 837180583 857382899 259124753 741144305 940363226 959702590 869292017 984887226 607397982 832115276 414944782 739218421 358575198 883432286 397091186 661535591 89148403 742708569 360824297 644135995 918388171 968576079 867274629 965398656 784476324 894208746 391022904 446502860 674060223 955930728 296789423 502192145 851356512 957993407 187499582 938000818 499964928 595640473 312034578 892908263 282227476 313424521 143732051 210772913 509777615 846101468 150098082 745335808 669335178 909634643 998397296 998791447 376698666 383528459 506276553 936672035 819504884 994522310 743887388 775169936 281100134 856459675 632307883 996853284 36547750 168924270 187194647 341155764 191407295 548347990 962493848 971063162 592069955 924104383 427348170 756171708 379621978 821559031 503767198 605043961 73941869 978761229 545797928 631629549 522419044 684730537 221665201 875011940 235604465 611089837 879024573 914803141 869265940 910645608 210451819 397573005 533759711 614544627 921862378 985241423 559797799 781844502 916429530 980208018 121803115 670661371 604029889 870984064 208730504 915659512 730727197 889120897 79827482 818513728 121737977 152503288 521933831 719788477 393458948 612863335 863396450 879456216 733777812 884906205 140138768 457673288 316050110 989570821 153796298 322150616 74459574 370072282 82327288 323820017 611663179 772949637 895813091 925237051 14323796 436987537 413803401 515110422 68969917 883752783 837259565 958280394 189334634 624072991 821843297 892468422 774450149 926380936 288736251 916414034 728949720 903534736 332220811 913009863 810019086 888065304 858175962 983579705 121831897 243173488 789093371 882751129 731313739 935794082 961863627 987466280 388811356 786737638 174682266 791785720 638765121 741097110 6567951 545115304 553456997 605198017 921454433 946226849 603813989 830365352 130312766 914769722 851239190 974196693 105413375 989301555 928309268 960955156 797988671 987083868 102720410 862395131 650206139 654877437 691410107 944644143 853616777 969682459 594151092 839640762 304554943 369157427 39968215 648779264 106803447 278952945 501133960 986836044 819990381 865480617 193374226 430038537 453307970 467409244 74517456 392852172 482948421 749186871 175429081 599328188 562711801 832045094 955334931 970964343 731391127 998406789 115099849 430234877 891249697 982301374 865380186 983398088 732989116 897318538 8344093 345654275 174724096 659699216 4658636 601199209 127222749 533958972 228901595 333272272 600870897 711966975 301411035 341444003 245068131 528279961 536465647 742643377 757515404 825223133 51735215 444779078 582242000 628238424 863987159 958603690 793180307 837686531 636473753 883124801 104472913 371104775 465708432 850264779 581428523 866024017 781269103 818495242 922892972 988081017 334105617 632926276 502142492 523560221 369361576 562503713 596697181 974539956 670782323 813803532 8591626 627959182 693653935 763788991 447798894 763384996 280575885 637668277 637656443 782322143 587273927 625775493 610423139 723723086 56621580 612786467 448634468 584737344 519311096 604591363 150983549 628189614 677633099 720190612 191113562 833117036 237142979 714368524 143810126 699128877 346424497 926134715 324335261 593361238 935965058 959337493 263326850 692370800 5421970 591874987 143867361 910484240 297210389 912183725 953172791 956418932 445061630 562951455 952102614 981865343 401105836 746921934 199645462 962850294 209221260 267704691 822476262 896804679 111306402 647830944 712616013 762279539 369367486 387545325 693005090 880674425 663936761 944454613 211428147 431910390 638251820 904508112 388382840 491396676 450040198 762906870 145492275 497792852 490130288 555550080 211501847 238785896 22760473 683392266 414058201 530325043 714260138 807597055 338425877 442193660 37124447 531678755 52356182 514276230 659359141 962585287 754645313 911322828 635168151 703203700 358716190 901657839 906360218 993283119 611936788 847358132 786798526 970752941 29984122 435138914 203666526 328419687 477230648 544830231 15147127 916901116 177237116 975123842 659575295 673663713 369005785 868864870 10623730 425847952 461944040 754499819 518410114 743732902 679749625 868893633 973263062 977507048 21592993 98496396 135852351 339205480 136820958 684089909 651028730 942020034 296595223 313980633 22586670 897263565 709248180 778668064 182634376 577956006 819384452 935872652 636401991 703993130 137248243 518099125 278199987 285691768 419943994 772906758 800116030 909799316 232433182 549783640 522296902 993621297 673830370 858415462 544947095 953239178 62294617 74585613 11079248 897157893 568337601 873333391 786642706 956907549 419294272 585754205 33090749 440741440 853662602 930159708 386206013 624750901 297375807 572686655 521852432 966327490 425826730 703048928 627464202 812334729 217054945 963527290 349898573 896124400 737342634 895500910 123397624 875943255 435779146 504047064 166369801 309960818 860642196 937949672 246989070 873039358 934851279 940115437 923803536 960500788 967006379 984309114 166389897 986456808 453241141 734832795 134982161 384667108 448627563 665782053 498424034 835028680 987529689 987688789 230907329 283207431 836624824 913898964 17187574 965439434 620005103 727269382 644754619 661621912 399249000 882719738 870404098 989379563 844480630 878607910 646464446 901293444 559336437 567008144 786993873 975130342 499608305 665435146 560068320 942867443 91458695 863251039 233200315 961083642 786198477 908764647 699850306 807819007 111435678 921646470 937650885 989305887 126286010 754413918 925406621 951272518 764629915 923923951 192028956 947810259 990950696 996848793 294855617 992448178 394799763 953007559 962908969 974042258 811441668 995041881 698171567 737845527 18763213 138922963 123877887 757836825 553264120 588413612 822547326 825871646 611706138 912640481 238773977 650964016 168955671 664809757 741487239 867109513 373060657 840534731 895689370 987887741 55630611 865505300 7211288 963612514 237355712 450542143 525307479 984273262 6357515 210283232 705528829 947549696 438749521 582992200 842614945 989082484 377444895 995410249 658042407 984174910 532095834 896263884 202176454 570510176 325474650 847824885 563810655 886523508 120171519 633052534 352833448 981464229 462574236 474240175 781192600 801966521 101712391 765475421 815940554 910058573 498385044 800423706 267628135 829307142 505219921 998551229 732769574 969999523 104228731 381472675 5463124 634060581 223277655 913169880 181739256 911527883 826543242 965898774 21279710 637774496 804349497 837342169 923508997 991511901 118781575 489890814 755481892 969568046 596508489 638644689 415949712 794814272 239093486 780826178 941618165 952516693 238899875 691799882 748056300 792643797 808593438 848476889 985264197 990281135 615638316 643545711 552667231 972905773 170228991 610456342 135361296 184706101 75981728 337377172 452072203 849239172 190905170 715577508 781041516 906415051 493329066 942441998 714684770 860884269 862684867 891110677 755957941 769878075 917614515 917967729 726309229 823991804 737651279 820639649 30410601 189363092 380516400 733698263 64923393 846249685 246295287 522861600 169588140 191661260 685649579 867791037 991779418 994968828 905865327 985272568 488417198 872357915 766202385 925786648 566187876 800887473 192352340 253249068 670814103 747473657 145941624 722819576 370114081 545543343 945754963 967098473 219664179 676915501 770885350 821599185 468298868 802214443 438542064 789890315 992089063 994390401 914361720 939796415 14950564 986617409 289468313 531831935 176354584 765222364 11968949 21861248 650945116 706275835 548757814 733404082 657770943 840811713 459392563 638942133 409458703 480039482 510407876 548596966 158417556 515072669 145175833 304535947 922219281 948814224 522184329 768051702 374553433 544659914 183924769 551720925 61278610 280558926 440910215 606305374 579440606 695264156 353707386 449293384 322101539 453719322 500248217 795129745 436027625 576200797 463330961 949120536 87105816 877575661 416726450 876090421 457334911 630756084 952733997 973386868 377137338 990059000 696863756 987470612 265236683 677284493 360024276 607740030 330315711 449801356 435464440 468489934 724248060 872030026 865295996 905653744 819041426 919201788 178523266 430331112 234204409 745518764 813180558 838354879 737419215 780971556 903383528 963425078 738731508 774726308 120181999 878396855 711310827 927431056 918605218 980952301 90979178 576706022 672259194 699678804 339477949 516271178 208581576 498478615 943332563 980006448 974252434 995906876 22800764 192125484 851998795 922521168 206857430 977825890 320051981 596719505 830241584 955579879 846658387 983518191 234962694 554323127 367807762 548030392 532090526 536684040 575211502 858832538 349680649 985570837 886715012 995434118 32626514 443985067 995170128 996866545 663090717 887066078 760731720 851318946 127409041 314067289 307715043 712512747 657115968 970584397 258752803 594644609 759272394 990781874 714493675 939452745 95938529 459171826 421007635 494994274 121732052 314191604 389304857 664191804 278609498 293208557 573802269 941349665 4690935 225657197 213206257 648695095 2473023 205616732 750422442 758462617 263490939 523911633 841632945 972639234 348150746 551777275 344905553 974824872 34834189 285276610 919317413 972473894 81816115 607279832 508618302 770039929 35164556 807826798 533242003 722859965 870060917 908600006 715478982 802449365 424573662 824771510 180907084 454158906 668708010 877918697 230909425 827162390 990888659 995127828 934428747 975634717 111320101 404060769 240615017 829074372 793050716 952943446 768481921 965471051 491238725 813349716 105853463 160686785 153948118 433777340 872352767 882372412 930745163 969010266 299594569 391298627 922176972 978957234 93340172 713240559 375769495 854195618 517556273 838341409 719016184 844558013 294438181 806361916 39504428 888372205 261848664 912701952 320678919 357298810 107715262 566195165 374857564 980589769 515924877 892550612 345713384 703043710 557233906 857607497 582985637 665944254 921671740 938081307 691138689 806633229 259445360 564524098 893555862 954199588 150191970 741758668 584181281 773869426 243059516 909863401 772572390 878807202 520421923 577778721 296791842 710216083 167201307 305662821 402596427 895765185 613093316 808102158 110651254 799454753 410173568 932045777 878487059 978805304 872963159 906282868 354509068 876113251 802102608 821840856 21467790 675178646 902794312 993795681 268271308 510956840 776064002 950195710 307563439 374657875 307797152 649316590 841775201 886770610 822315386 888534383 254790911 808227503 385551896 688324047 313577576 631274753 137028195 585229901 452147122 858078016 164797500 365597643 976473502 979618739 375384377 984120013 831069945 958694740 724734153 954501957 209195572 793521617 626544156 634963834 632409656 911320624 954785355 979603722 634795583 718894918 624791869 665736209 850825766 927704350 140193050 800544788 431013950 626271491 400874810 941836653 245832657 345853877 986254776 995248555 157428795 445358844 141540096 929668319 45386968 958470513 690192038 793677958 907596783 977155403 782863026 944966269 984623396 991684336 265105619 998526134 578675105 685622496 326094749 604361489 977667576 998976480 994691279 995215051 518472031 924153482 70574377 72331400 757447310 951144116 498133062 810148653 320544551 348138503 669304394 947385581 904937124 926481735 212976217 675807682 411056983 792587218 808201410 903613180 988406540 995244830 516590512 845606364 789139345 979383313 131583650 863397656 789703343 995044819 256504087 564609984 986427584 997520689 119977044 838790595 533015517 834486506 357507933 858622605 594673833 751758512 487014351 757141429 895694267 900026616 615847656 638307259 867101704 992053301 694759654 971500680 256068231 541310628 161496745 761491431 738380322 944757690 333943479 731294621 235214505 834860082 326952914 570335967 977308071 991440761 493365341 671209531 864764028 993302998 806072628 829104921 585077700 911377099 83169083 463744376 126799243 822823676 689475689 876538858 822867794 945667746 320177184 647088674 880432853 921940144 210483936 628599453 707368650 968473356 166278593 425007039 182622890 482390468 87256880 855221778 197930343 657525204 506818388 894092749 818763261 978328631 578069416 948741448 838507828 975304862 626306891 971214514 721319023 812403826 208069700 808047317 507798794 858946594 201109631 815457586 898186875 982092914 819037494 952632478 769713172 864863130 764755716 904779125 714195553 953703035 955360004 992709348 854894720 955093887 237862622 856072514 185319941 309641070 522263355 622924235 325197986 635866055 434894184 998491164 141899052 904531868 636150784 855035535 504415683 539508522 621532472 898034619 710558447 765507374 302396598 750212122 74773710 586118091 855583643 926169374 709142657 879689042 340468663 364930653 560515626 707682602 82809070 638805443 627962680 775268916 776485248 811564470 417976890 775072744 940758562 977224852 289428419 575711460 626351911 886242143 984173226 992762646 485601176 556055203 842550451 990318318 673329180 968953985 886290479 957747505 358650738 818595954 246860466 708352327 760654731 958933751 840154491 987559806 25938780 445953291 476441724 915655294 821067260 981442656 722237843 870916696 564794956 848803236 349884524 393079023 94778245 464219195 833075858 853670429 213694324 948580061 730726078 928549199 229057044 374603044 551223237 714867312 143356005 896353476 659176381 684050834 512564308 676752222 738267651 753764138 430369553 768249976 875440649 913677209 102277117 659915448 857948938 953750864 215514047 771694678 413360143 581128541 602488190 896669350 563949350 759503470 993244190 996668331 971076837 974498606 988323335 993833369 657686869 990514886 93496795 249022206 748391592 964461870 628463299 857013756 554458230 901458638 349479645 377400582 355472346 384466011 173414422 881575292 836545854 921169170 51969115 345930385 85106899 494116153 150617243 632741771 719671329 797864263 675306935 710419436 491052563 974830761 222800981 431213409 717555912 760985189 881645016 989471928 814373761 962021727 411328933 775471221 697895367 877641231 167464207 813647572 911580625 915883728 921854505 953735733 663039991 802009746 498241457 701358700 763033538 886331537 881391480 925895874 692811670 738195686 809828984 935387485 26269782 696474113 540616802 921621452 427050565 688080290 756559668 786782797 81211901 261009757 542799617 700941694 596223204 764726143 360100434 422045909 870831371 922334109 201331885 330102662 79066289 458127371 652837200 907694696 593771697 854827269 830863962 846685806 650135135 909361137 563370918 773678463 817880798 866792395 850573507 989949469 131201112 371900030 689772837 811483046 231931211 703305236 743362583 929339275 745776742 879905627 736314921 945238820 645627122 829386559 89885652 879375081 314095496 362793256 969115531 979368011 225579162 319491537 526605750 816542290 208485200 838637371 951440275 997971773 216019071 483239300 7588091 535352944 220077416 720739672 890475627 993251607 341282719 705199993 591104739 905647291 419025644 428001828 35307262 395715687 113115089 863288580 312330374 950732634 366229964 645688512 884698864 958797838 429646664 488875615 299675380 498951288 165906152 993174320 352103674 971872609 513134725 791371026 397851277 423333361 479876327 650012005 829092148 938304409 613297110 728537586 661719086 932380868 961265989 998692981 563164666 601229394 108791669 728254074 260009853 824266310 306122867 434586882 8427289 677534992 498491167 642919358 42542744 803289127 306657887 923626763 606848738 895532489 562534905 692713595 676132966 832847190 783456616 932137300 177765663 852463698 852796223 858855597 622343886 849025513 848334942 925343566 387911216 554424577 936697949 938072924 489499316 742936729 45642344 460568157 673500065 851073007 688849555 748572421 974859935 981846058 599028346 869835108 998415684 999044834 287972821 769888662 470944932 933250134 775620400 788881231 537069688 864508409 179967423 949921258 910992544 923582193 165805414 859754904 131657 998755360 74402875 857028215 21986718 931430514 580629100 912591859 529224580 599781515 390847828 569911958 607129058 787171074 911121795 995600839 491352236 803390656 417724126 636969716 637718462 851716009 614535689 888389463 939467875 969462009 702926418 712161837 267645080 353744426 979239306 984821986 441882934 816250796 404256108 413385176 209201648 674977556 955166019 968538894 525831082 561384261 223512340 701979355 720669336 859333095 278159217 670045283 885599658 961615088 801631970 986098725 28338205 74781361 101165241 835024019 550046396 924070827 620635648 953952597 590540017 688211978 72683431 615733242 477730278 566847536 442537118 468546946 653661169 986172205 331845691 471133416 142066568 292917950 208830082 762473048 130132433 936100449 196440045 591539709 130688010 983350225 833755948 990244984 163679358 953596204 368047617 909448146 975203235 976977198 507780692 711630290 331908805 832912845 86408110 274848589 908773885 981235080 585506311 711597835 478555879 772161383 366403943 543850579 963457833 975357811 329532542 489076904 997587855 997826071 516539847 989784145 506923045 990072850 391517727 723809153 975731554 998051787 895432672 958282450 313852904 809422349 141276334 960829084 508545122 597447466 602171503 984827799 567894313 633957246 18886675 992281568 42143084 660395931 482036383 836468652 902992764 922844526 696719913 945523448 488147664 605778215 748896060 960047112 903317027 931102090 240007848 491180835 956767770 987478167 995276162 997454131 856822530 996428161 868952887 913712879 711088312 930168283 175552868 971776420 329172665 520184611 743056342 829021214 549200136 580983277 587577693 676969603 543377215 741657689 134168112 756155024 691454424 865417598 964095916 992131026 177090606 957707586 896260755 986319565 903255065 947173155 464416692 487096874 640855801 669221822 956739229 993060364 904119713 932060696 948700357 971566130 700514166 852079950 93357121 350632006 990252124 995279071 410918339 884156996 329252587 784527192 44557657 627290774 427855537 501765410 890538461 899248282 470760242 610185854 684469468 846697999 835806661 887364811 830884662 981138253 217664062 587628993 885110154 939931754 694699135 915143270 524676160 971672312 989165383 995085911 527492613 811011986 523146154 786948170 161758857 609943897 13615831 129960229 609443364 681388629 702288168 788325257 714206303 753534542 137954806 618632234 494585830 559533719 908102343 958384002 89688353 754380437 212892626 997165366 397359619 678345299 440079259 645368436 872621153 953519211 198568876 450932260 234589847 473857865 380143254 973265043 836624971 980134255 906816607 992627083 943731568 987289282 705203380 808119902 747003622 897474487 897330807 971377169 102794480 591095681 690513954 742113949 941506340 967094118 337131867 495265738 814728820 896455675 610830471 970829355 108667448 371781206 267450503 414312185 701545020 921268086 648922523 881167983 877435966 898608428 665895263 832961702 286499239 555754498 768383812 849387550 25612341 437372262 212127403 784154873 946725644 958309493 306032534 341452477 282512457 868377823 78057101 391034852 64719674 686364578 931632838 991598295 930069229 962615740 715499369 893927317 129664584 573212517 958149188 991734078 122531871 425575511 257361367 268782001 596355338 971924797 406929864 552849192 10943454 543531822 142765952 178533779 682257893 872393798 562965568 957512256 529481747 543933214 404992665 681705234 468117522 903987685 310222064 881153296 709620967 880476635 339576612 777478403 257420076 424817714 170513144 903612646 493805001 728590610 332615427 441742559 365836686 873252928 306112752 722982256 292235702 820435290 714586708 868561199 598708963 843606199 889839570 897300873 653211618 924663716 100817230 654133163 618116702 886180497 473780856 674002406 39540465 400306986 283633608 582551825 485932218 840019507 62911383 669364240 571138923 889637787 971600822 998490694 892810160 983284190 99892779 623098932 76810061 554588271 877235726 918174932 694045804 840457257 352647777 387026965 161425991 247122823 229110422 835003311 699589329 963490115 269378504 911741819 629285116 902899333 747846447 793279240 759410717 881546475 6777389 256740443 807982674 941793125 55041209 895593379 831390040 840920959 63515805 705656065 575231883 858287413 607343623 683951229 765060179 906927872 501656853 593555467 233822091 365537904 795834023 846531830 144593031 709079535 916659158 923900143 139836683 371359965 612218108 789633849 16821183 971953128 318397126 710478448 305143437 503720155 440911198 517834564 335444082 763141122 461436616 839118864 564299989 953096084 515340026 883280391 662757094 751254846 637005265 783485242 366157186 950859931 130447697 222389782 48014714 551422123 308718507 648191538 369954813 852829538 445585277 921530914 363173365 576723264 232203919 402883306 258680426 939141975 263961702 685472457 250558491 960409733 96406224 462459602 936678778 949085941 488784031 675069013 611281815 676331060 939089915 993089916 678477731 798127706 716186539 804077593 941374506 992513316 826959489 881712793 470156264 489476290 30307840 774550450 921557574 934814856 636775264 785686041 728316724 804391315 778030157 853226354 434390938 718011856 142814606 848822064 714905119 732943634 898444625 943576191 136919755 553958770 907792099 993271879 556221895 889616306 258912047 417093874 42897534 871203651 414972818 863344203 11949894 594773058 606743646 873689466 992548222 995906500 282352104 514551087 856787140 977662856 219676301 811650726 132853860 303806260 448947523 939250769 610899161 621218731 106694910 289104841 821589737 860465322 971247663 983710560 654990923 834116418 761391625 971429223 832564930 890842540 432861058 891535473 152480043 207271848 742717944 787357174 472052389 991873771 827969167 962954994 916841514 954644458 67084484 368188111 527742307 706905017 642574260 770551880 224700980 546427236 7162373 654844151 547846496 848007813 958074166 962526767 539645595 815813996 656889158 773949325 881213895 910829534 865311294 872281471 216903788 418565893 676553103 928782463 839920632 993834712 571900032 711885374 11024063 937955808 121252600 835854942 589883770 825843942 988797316 993204867 692578144 747953165 186025876 347706371 292408939 382908863 162597386 954537771 994406523 994815822 677166172 889081612 861966677 949323392 737930670 824903083 496620937 908695423 154452945 485635553 442255318 970436529 976113993 996784874 238658373 634998890 919071574 960067981 336908448 802832774 279886888 373571450 726972176 823084475 820772714 827227428 848603189 911570982 289880578 881578886 456249159 595099988 905167202 971288789 638198787 806872526 967012959 984307860 563018447 902316641 499690608 790174831 888042998 945363425 682607207 967732698 355310319 849887985 621923306 768476680 601843913 829176538 406158084 432175457 513656061 584172366 398753520 950053364 700322650 999053173 54800394 683253247 460159439 895643264 250395211 444795135 184562085 775368101 316666557 578762867 714815577 871898991 361639305 436860962 914755091 995404939 590958090 683833259 87396424 123990435 925211959 998210202 353948200 839901107 526292729 578660106 680726115 732759664 507078090 773150679 231469332 944406005 177326756 549310591 912343870 999165877 376296508 638865625 782434404 913714426 731056344 914033592 656257986 714481137 913815463 989135698 468523522 907716899 36737938 668786420 386307744 895274118 170834490 456069366 245764080 517390383 789621992 831970720 533653489 940219068 489821019 639043159 753217406 951873153 761308078 900630461 260035712 264060369 61134858 477650711 560032264 740386952 438388874 759911828 154673423 463624706 348428739 928399251 950796867 966015816 433675156 815857881 621343831 917725888 295226473 797494793 382081414 651037552 643797413 829161103 102845792 447485086 434111014 487121301 678616656 809670459 671392000 899341283 343884485 422167564 432002449 483159465 315665772 922876583 275027658 844925438 350011247 805992613 776423804 844051881 265660056 714739847 599072599 943453840 371346516 922298370 298454447 607355637 426165355 790696805 562172728 726690155 894185244 920642003 385555716 823487984 806637835 916213080 495936544 956086954 820489020 868869429 511297965 666516136 46267383 813509765 45308909 497243962 319561516 676302686 464311571 732721796 601590956 878263462 156385348 507632493 655151205 689249674 481249902 616911673 399336975 878638259 454886206 891079651 561768138 839166045 282800485 646628128 837310952 947359717 839120661 865470411 916371346 970006812 425628147 854382417 658107514 746276755 269191190 980185208 158557713 905414377 88707156 692861220 503262536 974129469 223024165 865552475 621709377 775948112 621257293 785361083 531687646 661996011 704167849 892750326 815813089 837437759 788042287 809404681 72383467 838331914 964027560 994287824 912349135 982899215 844135050 911523118 503938398 690845413 808253372 980733708 788693238 920476386 288596598 411049759 170382533 616972918 548076848 604793759 303601800 988313967 80442276 483719064 241209189 487192493 226139024 717043718 535971766 900996755 461512462 721011552 539403593 954741211 925966015 987040721 935439228 983083821 522745212 640205884 286361283 725425655 937300271 985737269 914381726 939269941 863041111 921295313 381792441 807843102 298006799 749888161 638111687 803223532 319585622 588646086 235277507 962048519 717165661 721834885 365000629 621491225 57009231 249717655 670727722 711956363 712194088 937019541 30343253 268722070 171858195 320716154 392385877 638364766 480892438 709389804 723718289 728425572 658408402 689384933 15465576 734681457 811275288 905202856 412137978 849078354 90627266 850960759 225115688 763656573 682698445 707844484 749932063 755056616 461830602 931233563 442149436 873962544 777017238 862793559 611476092 996549582 621517601 863908806 980015877 987619721 63814429 486813095 605525812 706193167 380943777 594109036 911200576 989151003 197828051 698749471 204984025 799059682 830012288 977795716 70015734 595756371 536718618 685496246 46728641 300164562 809622274 863413521 365069963 942112909 267389225 416257180 658671147 826942434 887700102 921360192 96108073 947775927 523203884 931260826 601482940 605783561 43400845 913223188 779921009 941244930 197816970 354544006 883624781 946215934 462564777 633180879 643834631 725769948 722795539 828926679 811701990 962515383 103609326 328185762 557265069 739431067 165737848 712249568 525115751 863041254 391925217 868426491 383361254 612444610 285966977 942419391 194242243 635088319 327151908 374853451 142692339 344191544 686347669 926557297 58517652 332221375 797150646 920440115 951699564 989836814 60754224 151794587 231010216 564527057 433342325 863636104 191249254 428728149 468535336 576624429 400037492 422826541 582557759 777915063 287953578 395306332 890216686 967596351 984693336 986371065 40522136 281712048 332880251 794568162 86501286 494896535 40349761 390093155 426343449 980165382 509216072 779033163 356087174 390022631 114849886 739195790 473125089 933621595 780595616 984946986 246520426 680716216 327071646 482289961 983503915 987401578 191425053 246264921 642388054 930554651 498501602 851183515 746420163 975218587 228869353 669495087 788757774 980527962 16526342 694154752 896631799 916158664 188487993 473134536 945303655 964398661 407826391 591910755 843657434 873956125 27266368 211642447 591946271 953956516 904134580 957632467 423980789 790138769 516160334 611096069 119539242 322144104 22463698 377945070 430976316 897053989 875765632 943512523 956221286 986453019 178392274 271932769 774360291 896119267 544076347 667711727 784758409 969580076 747985801 981791953 870642511 908007266 504143352 505641458 460597873 586907282 118853822 636902932 134439851 301634442 885856850 897619386 563435834 802534829 167731166 733117195 225066312 482290371 430516387 646994584 63148604 722247809 327025500 370388660 263026291 824697851 490927830 547247541 651732151 988011972 667769574 824020231 874329790 977318471 633597716 638047163 500808764 581918084 609669012 662850066 712429687 919907730 713053059 779265664 796920117 840826460 689098121 779056793 994668091 999160137 50013513 472372981 590796559 613887490 503222665 983119957 158291463 232182054 79984364 840964506 802429982 976459790 259990473 297438258 792673542 912927990 106422972 797050506 644237099 877621507 301331880 353182886 775815001 881077252 604198509 789855421 884519431 888665605 123075422 890437262 852196508 888527215 465477164 514568105 204862987 517279686 17744140 17844233 770977828 916380868 388630236 614170054 902619847 906291994 698706405 974483641 721618823 729734935 60634359 557017130 121003732 807737659 629874997 743709127 807193370 836582188 310543364 925777270 695137274 717803284 480482627 709741867 864299238 904241069 708006726 937115192 706289701 716078916 269980633 655825739 355000172 566824827 165323923 345805284 278468412 698187116 760471723 961464165 670362324 719003794 334785362 724297651 700232628 964496707 526592194 915124295 356717124 710178107 475007005 627174119 26472238 817487476 799707651 938204273 595066867 739562552 320304147 408649391 284320752 969643191 997919328 998214851 197906514 948815537 884291861 937311837 224943649 450587126 345929862 374398423 8454058 292853262 319970579 581008747 979934930 992389221 723314065 927192018 697351513 940763187 568856401 742905502 189920525 900027446 401060302 706999749 767050691 971898368 745534679 778042326 189724477 825999164 286395205 957011732 491521212 956638485 143979178 209474904 931260260 962278415 152242440 514459294 570581517 944298302 809980750 923565750 483963880 714664427 783720786 821206989 299057373 320847432 798315245 828845763 3605499 938860731 605470221 939444395 74319796 669857021 225974915 271194727 81337267 627905984 648453666 884118170 385003529 663898827 170054946 433554081 694488802 774964885 177396564 868530554 636009617 815250420 808587830 992912658 357775488 505280619 436057495 444119731 383516595 934417114 370541078 803085785 264744627 594312008 4347382 833048855 446298521 725716328 863364584 918266479 771789823 776152426 337110467 402556793 219104179 384926954 800000325 893809510 129782614 679857267 380186961 738663651 618677012 940796816 832508027 949615428 590992981 669570133 740405375 939781395 735534347 819968527 857550068 924684849 61966644 616109112 191550494 585611473 952842181 968423651 593761777 815207668 759561033 972706226 900691005 983187664 149680420 354049234 91159090 623143882 750912221 923933342 101931841 513562068 30688198 197879885 841460143 915828008 879929213 883608659 36991152 271556742 818366996 826037744 176507381 483465946 226308105 578554027 240635400 666039150 634880589 693618025 963834596 984031720 973157963 988818806 316331071 560834666 111671546 392334269 170060606 934964426 959412768 990458038 717845832 883907192 364702513 938596828 685547296 772260107 343672915 821213504 55603510 480345011 580112406 621743334 226638884 553784341 662577353 917488927 706392136 992146021 128483193 148073813 827297873 991499803 519844064 648264122 582961616 695392741 238705214 379724849 93306407 647628243 369023842 796426013 812288927 838169926 663579911 707435104 487576963 490007458 968552240 981780071 463038732 684589951 853056206 997610377 817725175 877805173 452197077 880172495 364190196 439171628 302875806 490545460 299274720 363651398 838726080 842690939 577289924 689466687 491354654 647777592 880370985 901157730 246891142 907797287 185027780 606857103 184376799 826149392 368839267 992329718 28227865 861941535 162767912 731244502 160600984 662882170 72761790 948173525 368652441 386383153 986515829 992413562 276667376 486527539 141447832 233206308 379181936 588570522 551352746 792381566 272596658 987393990 555220807 937650136 420043 766695667 90038704 478539418 465444329 734582840 871414802 882562500 13244587 420736840 494859539 726888257 665605522 962453095 762816555 791153070 996246418 996333686 857187765 998309288 948425012 954174427 848817499 851438174 391312631 519087267 377193399 598731934 490610812 511275131 58702682 453117029 182392709 403089757 442270714 876973855 305311577 604507432 724649771 925984816 442884950 966630861 759694454 850228873 189411991 842571653 83970968 443019478 499105492 935602459 679931542 937114549 854518473 982012588 763960554 961955778 758969620 947365825 415245001 608031853 943963899 998028606 107729001 398475023 626170445 902394150 767443794 825600495 29329553 186194944 975055026 991947788 867059685 919998682 758768922 958919321 596471974 938509157 73436505 778344109 16745232 973012826 881411492 976089461 946910617 961952575 160162219 313737164 187284822 789330722 551048262 924429211 591311809 923678601 866205373 965850970 984580992 994142938 495007385 616059983 832932570 872268122 460533555 697450811 108588598 443485816 987809897 995862698 875640755 959931151 727779694 885363963 641467399 979000854 792663714 812101551 491421626 565652023 786319109 901238011 205419719 446464555 477111867 502821518 425538021 792833931 711217602 775120399 840012232 878719223 325246916 412738707 974084575 975078675 825681820 944047624 598863169 986330548 661348389 900850984 412440020 918578183 356631102 729819298 182748875 876563424 228830651 848378493 768987952 781659142 882989389 960433234 739208795 786827656 226630546 927278010 56268852 718208789 384060902 999378452 384984904 725625427 429185464 881769197 503123596 606016786 198836918 345985614 29680711 745308373 109385884 621212639 108877853 531166862 588879238 746310617 342381005 921058393 271785148 572795926 978328249 982929623 753209105 951715363 684647053 839210939 676387316 711231183 136940800 829083166 228085109 754747320 955232057 997745602 651570479 929931535 791084676 989194740 886110316 918992376 768292103 793456893 11787678 938044636 839768054 892142262 543474782 781612218 739026963 988174398 664132495 989852924 875055408 976057102 381255503 992824449 867661533 923477711 901532078 982380688 372998403 510076372 945866135 978869867 750202494 778395127 275003124 925414290 626197731 747775692 557556635 692685437 984234384 986674913 897110121 968569699 623449432 926033136 826026656 836101973 949312997 972236378 164083591 697980731 52873941 383670447 356211511 603927208 51945770 242581561 130880124 218172129 417324447 769794979 7503530 455902069 444614237 460883122 560312426 974394445 327402806 418082644 172794493 273385632 545520009 626670193 122490564 647631132 655719690 895898098 12062407 942681175 329336143 670388457 194249615 526186220 741963672 749778872 473523129 570359284 412082207 819647989 226043224 435824806 839159563 939973929 913462026 930993953 574905846 979707408 776366733 833407900 68728545 217060739 452985103 889256825 376714529 440266295 676072176 746452584 141585249 221007985 942074142 952417879 123732575 542360246 180824557 968954711 466192245 782305677 58765891 131016177 181782291 576671992 355542088 952943496 582401582 799541333 716246122 995252519 753108362 982822196 887593583 996655140 962291822 977171088 803225831 952562685 526902917 742017863 267526044 573286805 671491992 730666492 14019214 562844346 438232722 574771746 502982353 824151090 247054065 268010905 863422164 977983677 72007878 865122012 453416411 758097215 925522618 955730961 829244783 935850168 645135371 711314676 383403950 532669153 850853373 879270993 71464305 444293103 471998742 723655061 324335830 632156323 139491722 430109660 12082964 365814854 856652153 982857020 920379692 927799843 953523329 956981877 71970144 522947302 760145352 966230076 133086790 385228046 869370514 959804280 344826169 609510969 904380247 946194287 874193311 975112439 257488221 269707837 148367792 731016702 193425231 634626758 659941600 841461030 576733456 907205292 553519295 561632936 275345915 313541096 408842014 857853899 953750251 978255420 544215309 981163745 771511123 960700769 915684375 951669220 157104183 625917706 585391006 921558356 127518029 468724606 63407245 752056431 751212917 811761122 358455389 912834854 857998628 950077839 84105089 376232203 509031452 563040955 864495491 960314285 17885066 149684164 435349443 537993230 937298288 945002662 624576612 738199858 508221436 535995128 126187393 342024573 243882084 611622107 907253289 951912511 874245871 956390375 272315118 278924930 178286855 438993364 620143659 645386908 448258023 496230458 138295731 809547512 891234278 946190306 626594870 897544418 953880312 994374434 211024894 752882004 501189975 994607361 764319150 950878106 617087728 893890612 348070076 800416413 363430991 419125101 153171294 748127874 158555070 341979154 561160631 855554532 681386503 823991213 479388598 571362431 871967220 891297488 95091843 756029931 419981468 977452958 138911791 290751011 331278182 655604088 216911845 962925431 357503435 935312150 980013506 998216880 967411046 978526314 649181395 771771436 871992594 997745291 73502988 163316953 753558096 778863860 276377648 540746999 531736807 853206437 84662066 375843999 510446980 583632586 167084594 244446347 18743325 907243447 569503539 856740972 784528111 887658140 940692718 991236375 59836011 368865728 892011072 942728568 608301288 635865909 558719123 653092798 200526076 529673607 311521712 690292687 166920382 183581321 212643497 901156733 380462799 418545938 633802072 962821632 47670061 564392820 567424696 868409729 526312695 784865083 97911857 702127539 647390907 955031371 971866241 986163704 141128294 567239330 273185250 358421692 895890074 980270774 614411502 864785996 909864477 944804272 418040284 786154282 642246285 707428209 495607097 835984759 319179271 767794678 567385679 940360339 165301520 456359409 28676939 703635994 386685330 595371486 678713012 790632786 243879779 978735143 396018508 917368657 157152226 336400338 310589840 372778201 666709851 749724213 351488301 820659575 493952241 668555111 359719604 745455819 417729780 896754810 303713256 799638673 195539845 350792347 9955553 685090787 168179682 382034561 204895056 416011574 497358451 786619517 170069137 178252434 358128020 547935435 101449368 954931053 536835273 692856832 124644616 513830009 795338109 982254047 373078520 906300406 239061766 606890701 142514617 434206466 402419826 503810694 896054528 954960888 702715355 705317866 810577731 929897196 325180726 436115767 629304002 654670917 625779072 890537797 334858682 530695074 836568548 978271580 319864925 456223028 891375471 997438025 932010999 971940583 12615539 755373153 503670083 830368828 919639551 937410443 862466439 950940378 247256730 848979280 443522431 477572503 572040664 618793198 609781234 854026754 250076076 814757787 107931056 922587901 115440314 516149224 259701949 655420001 839997206 972845740 330065549 368489591 23239452 430724590 455763799 477556812 887382718 908400025 535283798 742679489 366110443 694241118 920654309 925245618 653651528 931281411 434529576 612392279 703768775 959378621 285490009 342920849 408064725 724853150 641733668 933246206 295626213 490343044 192413167 241529044 373297263 574709599 743423075 948008481 389153713 763414915 511056542 944316377 281990749 725907029 783868165 868731357 177511548 788391265 131712620 585589985 373652467 638853102 100442016 315619060 611616616 727191071 787767491 970900234 270388763 706816708 866683300 954920489 646653344 930942927 357062149 476506652 864029440 953287139 890693898 904372759 436338699 500971801 913842438 936322079 381291609 576486544 616080141 848545444 929190621 976488781 392868264 974089425 881475963 949541763 171997497 308551568 115241004 287134321 372895096 823584499 92060042 813917892 789864533 836758844 228276603 550918728 455322529 900939558 669162732 826578715 610941530 754226095 967192095 986987184 243416366 992301366 953389097 991949736 61856417 618520954 159954753 413372491 785026992 899672482 983032767 995776022 717579442 820144764 80720858 502293007 472691499 882588181 599145653 901612447 172345508 855824359 929093037 957323101 765624743 842351470 813446144 990289222 208952375 762896031 589544957 599029899 231597657 627993752 484859392 796725461 478003245 559023121 276325970 480321913 418821609 520674656 260156660 445121922 948697844 951998448 317246151 587410379 534901870 924313489 757753521 847993840 118368165 567192384 330792332 937810042 622448327 746602153 680500744 922166681 692506316 897069900 606492479 779147054 123358931 495470488 118516320 662984411 216747041 821781825 735357443 826820965 725222859 732530925 278197923 932389255 457310756 696349700 345450374 902486904 294580772 674237357 676875445 718853077 7084227 113734405 422248929 651421924 83731217 451413031 865290845 984246602 887943533 995202446 160977861 798122488 567892940 895534116 693347842 698991718 85948528 178433763 121814421 947194171 66928406 812350144 383393864 442984679 75298546 412255534 131072276 740773414 951991820 953653257 249163466 370902490 302206935 429558593 309247987 880773212 855705285 903698864 976919720 996214165 236146718 632697878 291923373 472145726 966251525 982811398 972929285 977499081 221997268 619478075 83316950 954139392 639588276 928026098 856857196 915968907 1383439 945386240 809744426 942776550 949761290 966453379 667122977 744973235 210131262 402474478 414985859 548431370 714325028 770366150 615055532 814278701 714421325 719998530 931459688 988334596 137694915 165488456 193088254 208277455 502843934 867507004 752060422 762432670 649030168 993887380 882446323 919530648 847309588 881946214 762222224 831445936 19329303 65841557 955659882 959659703 417580641 765512510 162539557 405841181 175070361 363891038 513281103 737735497 415661063 756449075 650573277 856333209 271953447 870064960 647573439 998621023 336551760 439293271 809362440 979572910 708983697 869902081 586243040 926156443 402925139 793535959 764118651 804255239 686469277 929161495 327439828 572249132 278177904 438877007 437697789 683663651 341411010 356479582 466213898 841508265 576736938 583182579 642052163 715485650 429252632 984327506 431195303 443176274 315667802 617021680 663598271 948317563 746558130 783366771 910346942 991998357 842480425 948359978 72463148 402023968 619005088 619673002 393370658 548690492 766142856 957275757 384867419 708153951 983090810 988011871 214016613 917470050 549279931 905684829 13641049 661952362 356045553 950452734 112119998 642890360 466522094 571493288 741020974 797140333 876994950 993210630 665538520 743646870 481052644 743857553 246981528 318995027 742880789 860259218 72749275 364082276 588041488 713140789 543914216 957952435 812529495 836460142 903256114 984051273 842494727 986367646 384563489 925110786 950606254 952279823 981151204 985240159 424003996 847589341 64796240 560168468 817230072 909805505 226171492 562475002 348416294 499967019 750096219 819713539 382849103 987357965 813247824 977583505 272620111 390242525 591776407 921407410 380719828 853000485 347259730 906875050 255175633 606534774 643828117 725871343 883852091 914775392 575306778 896823098 156533615 883863297 653556881 859098628 321940153 524322273 291652901 501929061 970553633 971536760 805337312 810333270 647973692 836390636 165041172 448688159 133730086 997445726 89579042 892129437 748242046 764283683 333985016 632383945 428029471 997490548 886004919 894932604 773912223 822094537 944936713 963399688 439107290 462566093 220492676 271557247 853234151 877987245 670707218 959954641 657992180 973554828 808621092 866391603 531247721 687077956 118239632 500711590 774991640 993213626 954690579 975388453 919810309 981750385 906255209 990509442 744665822 983382361 29984648 190585987 818463778 938362054 118793196 669200084 420190488 591810051 775050202 863368408 728378149 938307284 564918236 952469356 771948687 996129788 623416374 986411339 995543150 995836078 782344735 960614753 176232685 286473832 867759938 975415552 543273257 682283519 649380416 875154756 277311468 899255051 192321935 747983961 572005762 586835398 370182537 623284844 237621708 774610758 480864355 640465526 519572657 549477124 905950466 954533134 605551253 969186856 937913754 946507119 548743169 589029401 724042403 875546049 58062150 194295495 597918564 610958825 641149767 653950133 41613916 455459127 66911958 475920298 576591978 712445993 278247306 623116921 262064368 458562093 7837232 923422201 231581634 669628732 672572534 781712229 277354663 948616156 166026764 389750014 148860107 734325610 670546012 992213294 308087805 665014227 545602986 934226472 276792395 556074154 532033000 899278779 868807020 892920788 619354224 714938546 544679098 664398779 80265295 141014694 278937824 720062406 989849308 998054970 121503738 247953762 116288334 731858662 810166416 898322956 224329568 396963907 249886066 675529513 149118205 352250072 225414605 307133814 441565722 944960111 97163778 586471700 203492212 230113308 548586302 597866454 444321547 703447932 537173209 826880380 705373859 738190883 640620485 659197155 103049096 462147441 446597916 458844790 513757389 630064063 279141727 421246282 605081880 940855051 528145585 667553365 755048043 827232717 917396899 994958351 469432973 845514906 363828540 400261367 502550221 890939446 690180399 952592211 289169309 864826928 891776716 960231813 499053666 786693771 425085114 511418612 670815231 859681504 343383176 525892666 788879848 798521763 796028483 797755554 174203095 968258838 461588882 675719643 547198808 588326111 69649013 474275012 939555650 987039494 247244013 851738331 668684432 986218921 766566591 904464588 64236754 127891916 418597048 553258457 819173703 855390399 155054480 724635877 760019949 843322005 908174810 998714638 469399927 502682075 926496994 947929938 382283462 547066336 627463327 986620289 618679560 644370769 838031516 921197467 732788731 909218210 581810270 689412248 653607254 918734395 704864823 874084153 734538083 851840298 314492885 895924924 541908106 926173832 565532955 701316394 661094772 997044446 18439272 94339585 107769067 368299198 650875059 830855026 750196727 938014273 369041547 430085633 426262984 991689576 465509445 533463578 539725215 643010280 3344925 257901718 839379549 953043710 278186190 621331211 702742485 739047077 414157294 895292039 478959311 491529711 169333921 202603953 344667609 990068395 840677273 955882469 290973598 865636168 970895988 997564067 484423860 728617880 504675137 927110544 105247106 849052964 33794334 476288243 413986502 478128630 894223870 957316127 937663717 947518822 961287982 994712687 978325695 994066001 302536398 869222027 198269217 583036924 484825526 640754990 553049248 580499669 98107239 239329189 882356613 956599296 834216009 900869550 233988295 739036124 352173769 887233961 265823607 925807036 338132928 388784752 634540196 872678273 106901445 359439694 524024940 567721758 380547369 800686942 678447751 686804289 264510206 810930845 363675070 782124692 728669509 781960039 239960089 405108580 319144854 353325966 908860314 910839149 862094821 969222768 426896918 596199976 460926248 548779929 453443852 926289182 722550823 992163838 166274235 649241233 96662272 563354046 201664566 675497787 115198504 696090454 737405426 970796163 25258110 767129353 697862876 714260874 404430034 971590538 425318727 892723402 368580278 642022252 530471876 937783546 964488612 967116032 304211444 874828049 224421052 294333805 406417537 828060814 66832833 680198387 472407101 532226368 340151726 659643764 538942121 787463629 590977971 869741409 474255341 515950017 765684131 882999737 963126016 989664090 725382006 968294892 865114694 913364462 637256110 737674209 924327327 967000927 349515098 416070768 31847233 352833385 90092334 944512690 668532947 781632492 670464814 684836852 272427508 688604436 877335179 915362832 338808695 501211490 495592399 728818799 649129273 769579229 122671192 775180616 751103926 923530668 386211443 800427300 198640397 994782761 745869277 929654047 205779333 917848108 518733816 520554884 131915013 982529248 284734595 910988780 815965300 821487587 69269110 232158633 941354929 950883249 879090792 989778837 494406409 913257626 366594120 605507397 931612722 986279020 391066687 925195608 318421999 391025858 440885755 618382290 568651723 966065391 494733062 809305039 395983222 417587177 144900405 162958861 623092282 708705102 744869765 803914484 477570681 711650771 113461302 767823702 823454155 837581864 673465832 717983963 371395072 586501930 822818295 928752871 321705355 587702660 427980281 744842038 822039130 989626392 829352197 982361587 542770300 594221425 871353329 973036783 379108515 935547246 798711534 993961197 843937328 892347056 254095829 399672235 263694002 382161485 825270076 850195474 310728820 564151813 168737986 607088012 47681074 698030784 273692838 926345410 890289986 977211252 244066563 691296078 362752679 567424287 4825570 327136965 287860719 423322159 758298934 799106271 244899942 335417869 633995730 661632276 149726689 692461992 750500248 819739874 145802861 875136885 116128562 642486436 972114208 986192713 291619802 294521075 877617429 998513566 843665894 943250256 603022852 818022243 271233005 499812129 50305137 192334610 48477105 602797892 251574117 287231540 872616887 876777389 810426934 907474623 144354694 528351931 826148440 845150668 305798080 857359021 522932533 811499749 761431788 930874012 822505619 993342989 852805551 875992576 468866808 772795830 299504666 961725925 333620483 528723178 128827604 477353379 548366801 717254591 690679289 763598658 634592275 736182151 328608940 912522636 176865357 346643146 583574027 660891026 710749397 808100032 104074513 457559528 450124503 851928251 800996787 994148257 695454886 882212942 282505017 715854725 108700563 728430029 257508122 924790235 746557480 990849855 171230602 331660488 715600452 866696533 456796314 832426587 224704564 438435854 241373684 364585869 822854620 890846125 570397609 590927675 289213328 897465789 528443622 648686654 288636681 753480007 714442 139420986 49980757 58089363 931097664 978338277 984034668 994212413 625521807 665343140 518540721 828375437 6617567 178594839 153837014 841170721 840147860 974186704 596991792 597511690 109194753 713617542 358519201 489308319 319442174 660343929 904571342 988277577 815434722 958935527 984781972 991629122 733399164 892329922 407804010 706448421 519991977 907365290 980436427 982995354 6215850 608640257 400434678 458906781 158574101 959637113 944575912 976704358 181615700 827046660 72559245 874900990 795207888 915553225 167142667 557290699 280654493 919213683 934896880 969614185 919345776 921277126 221493821 762317640 670556757 699765599 90492203 757295956 332304091 956165940 663719794 917361062 655703535 829087556 409420902 577520210 381234539 411940187 14249801 749662702 667818989 823156376 599747849 883322510 36329374 250691412 402159733 455959839 446657997 917053920 798805408 989520576 947035975 985807431 931921044 996524720 763952091 933666442 389307220 716748668 407948338 439805936 134126091 776829595 25342585 847509405 631419113 917951883 385122307 950122844 276655486 586729221 601093867 712146211 510754617 831695385 66538568 227546719 498272410 892217797 967759877 996397770 973069942 987941667 616682699 939551569 711245884 752517593 356467032 435170506 625651871 716248048 405787149 700335147 458670410 682043361 449529365 933807569 266814083 728052513 597645645 885299534 605562313 842976059 217447567 918394997 751545711 822943375 980727975 982725581 493205124 655692366 453679254 852474259 529372551 659155005 625410520 986961376 925287762 984851322 832767596 983370657 153984901 249032238 663303904 756198699 52088452 671599614 407119612 896545493 700827294 758076430 409348962 747305898 413957502 432651716 75911120 391494974 593845309 973821856 690824789 773955174 535560912 843363759 97510722 739906459 641075691 743768596 957079636 974715063 647715919 926564191 442411143 869007477 776804330 965277018 759059827 860743164 156704188 241290614 212983159 590707717 262394671 536963627 651065993 921789902 873727811 943669899 807064652 908372503 966972211 988396618 437007223 808908157 740253028 800152438 748091789 969309855 730659030 762769144 452748555 710110997 890873138 892743807 430500692 931779700 208874912 681444905 896230311 939178033 178274662 927433691 122775761 450071334 423537789 538499766 113238829 446503206 399434015 705954491 287736395 527131760 788898142 836922410 697360042 832603515 390302523 993542901 4357506 189495345 981416953 988064937 856746517 913693070 548295185 778241320 490582462 969532094 815152079 987050114 722135184 895327694 600850471 860413362 35680604 204489894 934292380 960901285 115576321 484580244 788001291 898479933 96101420 201145454 282335037 563649840 591186057 968848454 146938625 838447962 986360659 993024100 183942100 783995594 204493606 693938634 110523388 526412060 358584676 393826203 545140987 953985128 774031954 829083195 364079546 429396166 387907830 431092838 108572227 237761581 734938045 950434648 573542488 639295508 693334389 912544251 78795197 826598825 769222846 898317134 718971820 870223909 186773332 816323221 842013587 872045779 471050258 877957545 165631746 268274289 328794408 916356857 683997848 770814629 960962302 984032532 710204608 925032909 329259037 450063388 744310872 937823119 265076920 758510931 599061510 826185429 700902931 703156133 692777141 963933781 497869296 784947463 175478497 458697189 747896898 752022269 523184804 612904268 128795797 841852789 159673598 931241927 74656912 804844842 148755898 895890715 698660659 779319609 220259378 983843250 24938714 167941220 307741201 660056594 595422859 612897375 90266514 848066717 567480849 868230174 713286061 794413200 803060339 804335969 260373750 622220789 496800141 500358865 232025416 341917650 507929899 940106852 12409175 913033770 240527292 905260088 703526087 734491564 324692980 524529078 562801797 914540579 979660842 998979123 279608318 360083730 643143021 858269189 30036485 360807916 569463394 818280841 322977481 511484741 744853757 813779738 169394251 474542180 84014591 995398665 784651089 800590128 229092727 606142409 207419134 586386264 883530475 886577195 687223893 835757155 928263421 962572139 448737609 802980344 118117441 381162360 156167905 696135668 122907569 607886126 225914720 503132669 699880502 875443326 499119878 914015892 940797905 986947513 618625650 887389880 510170311 691755374 255855863 807826860 920490720 954629517 514610422 860349532 786974017 990697680 317209835 965529442 124528950 986973016 655975401 763752485 824613830 949830207 126624632 413476915 887091884 913933489 788872451 974899956 368966278 936952667 17304126 226573053 172928388 678877566 354694630 462649105 863247402 992021505 601548293 881566295 424493636 693618811 219380858 683430648 518636665 805263358 3725452 778917930 27391639 337781055 389899266 904773605 92847243 315604809 538739336 546583708 345007664 663078562 797568634 971747392 973973409 992143237 664652300 967148383 6473465 403495524 293641444 432536596 293167348 454800243 681457726 833998317 874764499 926764884 800667441 899071769 972350193 984706534 96091509 876887820 108231755 446476495 299951459 528058046 201549954 585559035 876022656 934550647 768656666 868027870 116042340 924874906 18173693 766901040 221348274 615782451 987566331 995922373 231829696 501109607 606128001 657967080 625842466 962982273 306055970 782452432 436535382 743534095 559193129 806938388 123179605 982188900 648332112 874017207 389687347 791320900 280064287 884707766 797882570 810075437 992324587 992779055 310512484 841653535 264988010 664975450 179735997 900208358 211205605 895058823 124341858 629819551 803505107 974736831 558049800 604896255 916388079 987459419 323933685 538656795 47687515 823564681 19088963 901428840 212365809 881704044 156281314 168860218 577593373 910369202 296056365 637575979 485179391 515957637 72005770 379293537 942528948 988506439 258957772 649476972 788042209 917163549 193906064 626472982 703012524 768459861 713523616 723908196 153944903 702776815 597394418 813338337 355299085 434686690 848399146 981942000 559581989 724127516 401749569 575770346 513859725 816078992 408996626 924205626 305374434 351997552 686266259 918265037 558410966 663574427 354265981 945641902 506211836 982500777 273570444 543556365 207418112 335578609 710348786 932521981 748423523 948218912 106692780 366105589 345440159 360671030 873447916 875871402 735250341 794393908 355040005 970458732 101127689 837469700 780627981 839096574 259926778 654144630 110662600 981682341 49140938 212578354 549527523 969754716 204398422 483499632 852103385 887643238 199007844 576845325 848295764 968984001 699316265 778971452 49742395 862266484 78842978 616748444 845694942 975858722 112495502 189783689 140533592 208161671 781746494 938376212 452352375 604943750 293919452 332915959 112107923 218911398 735659854 991779416 455399510 896001278 951086721 966086469 99906716 938761649 132031504 691837245 579234986 826620146 683044763 853549648 880321790 941884225 183208063 700322307 740104067 754253046 146454799 750667015 516208819 615634230 207119684 524019286 919682641 983363471 539799643 961291762 221658500 793862717 5722611 107131823 504187957 961582233 677741177 955013246 328485357 835023338 455266017 723185561 94919937 601906082 937804081 945442409 536710870 970576490 750426795 985194670 266655061 892885317 457262855 531183801 687325554 944736498 208435327 462816148 118024804 196419572 114948416 442166796 588720579 712915219 306695823 482470074 211039711 984440774 642397863 970476983 39769015 293751741 85148269 662060966 941952913 944832423 51416169 289399747 789200852 833251163 55661919 362164407 281251201 745333896 781382671 878560648 895533570 910360017 237151884 976440946 887922981 969548822 156812179 477128288 833074713 959134161 447228753 712088880 659182821 707350983 631996678 974322790 16343518 429996640 121316684 562322205 237152673 696216198 293262926 791476803 551334281 634583340 624877546 847287464 331843771 440017259 553301582 637946265 41085662 209204552 644413453 665224065 771635143 877912316 231350515 434710761 119613835 342285583 344396989 461383749 459790733 819229202 921661130 931287213 98935219 649393841 267492232 921290683 141761716 629857476 906905711 986648250 789083894 976982818 820050601 939774990 155556140 570607482 799039068 916479684 324921854 902701822 589057707 647971149 109732362 867220974 128348139 159257824 251329609 798172951 937968491 996289201 749261338 865171779 512727575 576601020 589728278 891314319 227109584 375240446 479380692 620954507 684931218 908790309 467451543 757981285 57862836 544535576 448301182 755706890 769130404 964366320 519469721 791147769 924898444 930232901 643785301 780320308 747397204 860926376 193404024 465288047 209260474 716804355 710615268 868660164 92250659 331738339 130167148 170218046 353844404 740029237 36296929 960636320 143962332 827854945 994270330 997517365 244569362 901354934 731430792 882527082 900995387 972514389 29539725 591931458 139540141 821855028 268716455 662551090 74747988 345418221 618051895 712416405 596271677 884673241 212051708 835269374 710455746 730641503 883506907 920394540 698293443 839757534 663183154 943745747 160920719 487115849 115265182 337264010 518560048 711508759 23488934 798818491 849550805 951341278 301430195 906219552 611412419 759845490 857687920 895427484 946565547 978363466 422122078 864112100 739641870 748640281 468320210 624235843 462648628 794190701 65108759 589809461 685124776 938694697 406680829 583181505 447431629 799253453 433441286 488987227 532315417 621987778 644498937 697722632 21411296 403842580 825242540 924774497 694753719 980034210 299568945 869995370 542814796 942698229 766528860 929297704 1260323 657516467 5120947 145488893 745586677 905926862 92573603 149542202 858626195 938042719 409973882 529814986 846955969 877403230 175725771 883013745 732240100 744893161 890439653 901450120 612824518 971338646 315330117 763269026 796327795 875156744 345064021 513670873 747071490 822841111 222297796 319233429 297224993 474208747 218514746 466702910 994971413 996181304 86453338 93559946 19406849 627435096 908683660 945162351 16876306 177443715 454148861 776741382 791865271 801414220 312582891 841206518 872527804 951158063 168980372 646282579 276089254 791462539 775619978 787559963 456522444 621661933 358963104 768870209 287154965 571325447 231715818 532629925 475267054 843631226 871316352 930814390 939896593 970880888 103399571 151932410 991414162 998918964 212179559 240502075 56134898 295745449 199890983 674653230 587775879 787396980 188285221 912326688 88261673 393047142 637090430 998110725 252413062 475392145 634819406 931934695 710971975 813491047 520038627 759076584 664396747 811746762 659228594 794219883 14395391 933973628 756266846 806260052 692159807 886394929 489349628 728231903 310045250 405321016 337956375 370239779 972800528 987804496 405552353 918834071 165193604 809110830 85333463 911097044 963431999 996725358 550037484 840378378 525879433 949066748 304125434 522150542 811643680 899807589 289724508 873700327 511298309 864579727 151194908 682084688 891010756 912943227 927733274 931668385 976539522 986643504 581554410 748786504 328055605 564004183 808242983 845311675 269862021 622909260 538467831 967382059 409125599 804517099 99340498 164467197 975546138 976559314 799885664 906816571 659982065 774733929 191240591 882805571 660858457 825671189 545879488 957715862 984006898 987843625 758655224 989618990 530059236 859292069 497609017 949185517 788088271 838927153 125355014 759387257 245879443 746251655 537752527 948796754 195049238 924035707 191987571 480845998 666483895 812270185 749100803 811196098 22930059 979666357 2136826 258992079 447485307 728921409 898510431 943176735 751721364 900687849 10111256 123489128 582666373 834804336 294333527 591136500 424206609 803070157 297902168 978969479 562734284 960617437 436343650 813878128 937564767 948576320 647453301 770823486 185600793 439954841 882791743 971155421 914208909 985466540 231889599 859704075 711810329 723614135 407430224 903203077 384161002 862280119 336373468 727972557 124556791 607185229 323883858 416007248 585474398 862006616 465786523 957275814 801209072 843750278 87384299 568840971 662428143 940053059 111318201 600004111 515967732 853095782 220916234 969829232 726057277 800522145 710711831 915181477 852507423 934513828 407937250 484437394 533244567 876814913 445153092 763238778 108676337 146266069 412022011 619942003 898861372 977557687 532369326 748947058 789947448 909479850 51488420 168529621 717980540 973348079 199078816 973989328 304364557 774867235 458025425 917803492 431974308 998035096 413180576 462209440 211651355 464927254 533132242 568026836 823619477 885085530 672045014 958673742 299591921 442056031 768365941 925383185 847968333 970753629 580797658 937511949 639000588 898045852 320125424 386506207 952743447 959817304 167969172 322640207 521749714 822482838 581196588 950068335 520671390 745681543 228859568 263464239 137839317 424825898 713189632 858898751 596360495 761155432 219352768 523493302 371476415 863221172 265213643 595490695 559497483 929403667 175288260 445989894 643706512 650438597 941612234 967708565 711431777 752425044 873871645 918417744 18616917 529586250 937635238 967728357 660321852 994927256 573476402 855335640 539047496 718586763 517186798 860790670 699822689 850233002 721302265 808677322 310220382 465409929 498343797 537174992 908246602 952817207 280361751 934535798 433012665 467064288 271575522 775723019 669706945 682061407 597843244 674225666 569778287 885328725 799265932 952560501 251751968 869076994 615930546 687471435 515424521 718761909 239284946 803777502 334272181 864869467 611175739 758229250 797746898 825889812 493484312 593074876 387580663 731904248 58011138 687983551 16182732 521288100 175485265 530663202 348783913 634081163 654819829 878267184 586310123 917625858 748409676 920796643 310115234 423463171 298674725 395473924 207320732 725863434 314733042 623126573 332576599 463135467 103809748 837726685 103437611 965779638 518478597 693378034 610527670 782568062 4336793 614993350 425770088 992805033 816150319 886969503 14086133 186585532 798490204 809376530 836590811 840461694 851858801 909992131 527476153 990624411 190077618 841794427 581074032 769868283 968191090 987182631 696000905 723241059 333182819 633166827 925337165 989298660 576414895 800005229 242517031 938632765 910104644 984383004 997985893 998509213 135583961 138366031 872810070 873821028 94132309 396143312 82119343 123605180 393799303 435483915 863805602 942461633 503659147 988129504 257670575 988221502 189168918 411390914 959788209 989927240 833176584 914694393 316241464 374496809 912952127 994443893 667814349 771455485 56066482 326208970 331407427 848956865 312710007 403396023 815001803 985686738 761639031 780118833 379845648 816145157 946279541 950736724 345028673 417446316 794479326 941342469 236306041 429180632 593645289 994081482 245448829 389761072 122206584 287567958 27407438 935333138 152613553 918776329 415825603 439238727 315103395 383427975 932481732 994810689 987150098 990255137 193532637 421216186 320464840 979745747 618009616 928796396 453026574 533155664 84524988 891819164 564687196 955343434 324155667 469977930 78348921 174735392 878437294 978687612 757567059 904206011 140458057 765925626 336343007 562385248 801721389 905110495 185920952 960510005 473047361 712020670 765540404 953301362 768697560 959075833 82756084 206869041 937761102 956418473 464743896 526998032 146567801 842467208 52099643 603208146 756317036 836901854 330574839 531681167 124507107 378487762 637726150 881938383 201720802 956488760 993410934 993844008 242402401 452117088 736010077 882149701 680674180 888076978 311210448 580931294 182662432 383608580 86788273 263619746 485912418 855850533 77779374 683794922 894380344 973506585 995971026 997763691 917166749 971070068 943293503 968777505 426391398 663138081 448394480 456129433 674113198 926158610 729789060 830472309 345405025 466629783 463649776 548296408 417501785 815500755 108259885 210012147 815891044 978823032 432639888 893349362 709786072 711621442 20001119 627531785 940884602 981475356 104113938 109592183 444203733 628903575 852066540 878782983 603412363 850195207 101055439 801359620 380615317 764107722 959453499 971892606 588409343 905539528 338534111 856989411 615060956 652660684 424444150 636063177 108401758 889120238 460263398 918151958 37790521 954653629 979435344 986895939 722653151 756818729 755672241 881322657 681560028 809938876 671348368 905779127 785929985 931884392 510063440 772003868 358227151 396576255 613605835 882317750 61005526 867297534 151702288 937675270 749318262 871917848 35178942 52080948 115997547 133968515 848787601 992602898 278987282 365409787 914818786 949947516 298702773 340803008 998244124 999026469 334336466 378719350 469942308 823594276 947236400 993309073 628051210 981873977 91311047 665284993 149975701 482267359 432401585 472124029 502625547 886911693 749603929 761503745 867437501 924244623 640745615 723150466 11372580 877876670 307393105 380858271 961784962 993887586 105062915 817673512 891225308 960064541 818815718 939762513 452421598 669135247 965483261 965639232 581106745 928416811 2538293 243369492 649432780 929054833 652105667 746746863 166182178 844101960 97780101 230410650 880918460 954849347 946431620 960311476 662914126 925698829 911243093 965724334 905381075 918925266 117605587 996510041 506545026 670318174 237310547 417111743 181012514 951293036 98895871 915145949 569934238 993315054 858825410 878102957 35358616 581423197 806893132 999126331 773456385 840998476 566970947 836038112 780300195 919575418 779685080 985505941 233174154 868388320 927565877 973426885 114536301 536492478 710372336 983617137 1019386 30760941 602355505 673312442 310441127 844141933 719292886 720504488 452933258 590277812 422276457 510735714 301791840 688504849 687271759 999108123 66112632 441850728 675965978 936586954 563358748 886145461 916993314 967422770 462935058 859337849 552364077 748403355 612195726 991071594 559931431 910211537 809240394 992605828 532702213 959060116 749301065 943752835 510244412 933247704 70831708 747402588 877767302 931450628 839257911 939914774 982150397 990413646 816112164 858636775 638163685 723389591 526030110 776534726 725440945 840591538 653725894 881361140 197363267 653343592 658287682 834849179 862584529 899146182 887429715 934395620 530323772 589216767 282257516 304589350 734985397 979387149 787230646 835507902 864416503 880574306 842055817 956483308 76589656 878564082 326117243 827001781 166007199 506145169 434476294 459993492 174582726 847802912 173112402 863502778 306928858 757097342 31245827 689916564 540741312 778667635 565530132 726859250 763581405 911733616 408818019 738688309 712767886 752776442 242592482 497201966 433571850 706745934 455134452 636235038 14146064 283430940 593962112 957057314 288655147 351074997 859586919 997460298 825482284 986360440 41972364 382002097 486553946 524370362 734142564 930718233 462248964 560192636 133463837 668410983 285044730 302705111 1207218 615109214 84144689 730683848 423329164 982035420 852121361 919641283 74069659 457832544 68618823 144396119 536741414 775071693 73596932 345430250 829230609 894631652 220530758 738203423 930142421 966987264 482555579 925354142 322917896 920211909 275493846 369705541 508926894 851102773 745501995 755950940 229181285 249606126 565674641 685455609 274391344 934809483 686780295 734860780 568811386 859159481 250629605 683733947 443990871 796557584 129329562 455627211 306635835 815715933 523304079 972430710 844653791 959998871 393527393 989045907 107274360 744596982 60580239 719489113 969873263 997839864 614360581 864073033 596528905 997807559 636558407 793222364 496267339 986649709 887536947 926590559 688051532 994545890 323804998 605379919 685962658 897662629 408281008 451999777 754022527 952015081 102755284 561191483 869708885 980722391 832539151 968775349 783731689 990844857 279885508 330204846 224590442 511034925 917960917 976205238 489749824 539502327 13815306 299885696 918087096 999000482 601453186 987631604 402027042 637996460 596674268 675722416 630901838 637067651 756283616 756947592 220118900 758450014 900209818 928406212 361683065 725477930 164632675 504130438 314350887 959887698 530845754 891248160 708247655 978379259 335031126 529228755 513677743 789931976 994108 181826822 934250880 954367410 600051173 617424863 471293530 617270870 183993140 844782686 983574962 991006388 232132934 628004351 576661786 974273808 996376210 997823650 489274634 593293092 828991729 850867516 335911616 729580823 823824179 836414224 230892992 477085283 48715216 845554619 197609983 676863415 924344056 949427033 228309218 827895408 327509512 597274680 342212157 783149338 316641631 422823796 163704382 584601042 834108179 843707551 1013934 665397208 620785326 630509404 397411343 728018094 134954849 475882105 478796168 780648367 586174490 871740136 361468837 478812218 963445630 985222150 176301511 459824602 699887076 900158855 518312277 899549722 84221649 750252267 218299906 288810580 523165034 799174728 718748346 844130175 732912163 807577153 87908106 549430544 974441839 982436361 968088050 984550536 435174945 983456209 160416352 629200610 729480321 914029183 357340866 658901706 929979136 980734174 897008995 934475283 722920802 948495673 97189617 689193895 128988980 687615669 483735530 936172050 296943034 456404459 133559690 362756797 61152 495659863 402579537 887106744 873856228 918300506 803489060 861861350 808287730 827211495 851210054 884329112 688467014 987758132 622838893 707040097 207601153 481506349 402312047 860235563 948870459 962992588 718272403 899120594 68942049 539332690 315170051 495186502 784891278 987892054 695129421 848149558 883133150 890239321 594573773 720418453 951915949 958139003 13715587 43089534 27122039 521176428 727607774 821226229 187049974 426188845 188114757 223599424 116784642 977376244 617694435 891002971 199911864 716668367 423125672 935810213 327226687 375307585 486976690 578248548 38676541 421279506 427120758 914623828 713392379 894718773 602150674 655739436 714968562 852699075 198858368 431724866 790035713 982809732 206949088 921055211 539033133 564736712 120011686 809180282 526527205 748902507 284115568 376871770 533506542 957978055 589712863 864046735 532709507 824867860 768010905 915679888 777868394 781334808 404331074 509738496 896247992 915769979 473070549 829850100 660374496 861875526 642502678 821427346 702095073 931149920 216404773 568812095 909304668 938717547 726522096 859472333 543257038 777998240 148819848 607598075 312163495 424988719 443206283 939300392 228652916 458836223 627507974 833668695 415939322 920600237 590924773 843387731 582126468 998942044 890959443 977655053 754114231 889291092 768512623 926109586 70773032 491303232 353480803 950266793 548998379 903736300 266790616 863888255 303881224 650555924 174838847 827655937 688254207 726556352 949964981 965262076 315258417 330957849 434848694 670413408 972369322 998925954 802409667 805841523 542108855 987011111 544344603 895506398 796103364 984699867 607441852 643666198 49801607 993129915 597294880 664182631 907405415 914844686 913398553 972883829 479319438 517777132 957165921 963975577 807892799 952715956 291389217 517575874 952547172 954439184 167370396 449201503 399284114 772240297 128384239 493947336 93676067 518689214 769725638 937672585 27119848 863317483 589082171 613678079 939588819 994776820 106880698 200769963 613893543 712811161 199049982 716401171 522180717 888467059 210736257 249626049 795824339 830828474 643658572 700621571 588515647 892500625 620221930 884180660 34021565 639857903 173352465 181100528 880150808 956911861 381146827 898631933 360401579 955943105 185825738 520425387 447704473 730651329 240173212 995418227 451950165 562969121 305558477 852792898 35768493 713167042 572026066 776656909 643019759 849772894 641759777 913483711 524490962 966966462 40377513 908550573 710857114 866716174 99844347 689465328 149605997 216885480 476601582 740145032 325209419 493647910 354840280 686545578 355241766 433957812 389032399 996420140 566673206 665460131 115186643 553928633 194064799 360371293 861912056 911835523 627249424 774448117 85972553 830981641 803843602 848339597 503515648 975536607 208891602 307157745 63403531 216428217 515459667 979852384 555658407 801023680 871647574 972759125 551103440 598737551 651788724 903762194 102187112 422216115 957463977 973369942 589772113 845507845 879453810 966500536 139705411 577713413 653895546 970601609 26730459 372482341 450899556 648630975 90948874 598251704 240575385 415062269 554598362 714170126 461066756 804502575 374432984 946659854 571724993 939443266 793961679 806760040 76236973 427029206 261801058 265342192 631160957 883284625 847346511 915959347 554537522 966543206 369545255 917376071 778277143 889762708 309893206 494120579 815101584 950094316 739336882 984305256 629141000 975849761 647235859 857204974 845610554 977166077 835146372 930142595 322522320 702556792 477117920 622015627 146591934 721935765 93145933 302209045 573302910 934286107 362563728 876961374 467520916 528971794 77690727 972413819 463296884 634126325 121334802 983343864 356297337 611418560 451236468 474987975 637459454 946791545 935992222 970418131 771601662 983072937 938452518 941868679 987438524 992475922 901000346 936517871 548377613 711132398 421731925 745979290 28130903 731211779 191879811 318932912 656749403 820190136 460192376 742648699 771991185 812867878 487884533 523920611 151701414 165938320 53117750 413047503 300283420 364540096 773675934 977428300 380453657 874742430 348576038 575636748 456323867 818814107 501751184 816145000 555433381 953905345 212257731 487073634 973695767 992630062 356007190 710016608 339687306 507232430 719518515 812568766 993876064 995991410 705649163 732951629 928819560 930057845 139709026 346534135 634372967 974045108 739940343 983313553 146646585 904214449 463565480 996926978 756360999 894711028 305446641 468910495 252220711 442048895 716467449 792128384 823739664 912968551 663677460 981810678 855842299 878129594 966514726 997707540 13634641 846474056 884370429 941482004 775380718 896305018 263807578 488938687 519646883 912091197 393883670 406149425 441199091 783940562 71694365 513995615 31861909 528132174 370044576 478597328 130840138 171257067 584578786 626726880 916880757 918317362 350324820 470984246 853657978 999374301 739890154 881842456 376393081 740568397 109013766 832098529 445618287 926614661 948415523 993050240 215685750 511296196 218886868 541410101 706204277 918842204 748284944 944574437 768408666 887668725 584987535 997104354 481917665 815932805 840062944 984340710 137666674 794915632 961828207 974458991 363123648 905571334 239232114 601253009 799293733 963090978 91847662 569948310 651750915 867745245 836972544 950299549 42140264 983999003 281311931 819880980 810339655 923294266 866513538 893081381 703027720 831502554 228610025 728321914 195771284 567631011 317000353 929732328 126155241 634477167 724799794 898850823 125825059 577764569 858727575 873240480 57847461 410173856 980940141 985587001 381124611 549869889 170511399 973500638 623492748 985401472 914245376 955985927 864855419 877857009 222679100 778459224 169873047 638594048 602535925 689973210 2566905 781893724 296194158 340572080 455596494 992589092 995577533 997336265 77551102 861502920 561920743 732471395 613466108 802529236 175454022 274898724 57037675 948870113 485673069 936421006 931802694 973073156 324378206 414426843 158592115 419236196 233481812 627086944 35811804 539311955 483998540 607521439 486883613 561631345 384419701 701759677 390987102 645642605 642173550 791242198 468520414 930664664 707749953 910478495 587603934 836990972 498068083 911917224 282474358 824906719 982654408 996691893 171197691 719577700 757710939 759117914 640830365 791806471 200184635 376953080 388459045 664933222 720078742 723025721 515263836 730164427 178099073 295571458 665864662 718098400 276785097 668701030 220191554 780139941 792577597 912912375 323556759 410501826 920905491 942756130 705380715 959446730 595443995 871459257 341076224 628084994 544150302 944970925 681173042 949411367 674110146 895249408 660468475 893570193 470709082 841640982 204573748 846276376 180575262 962334775 914589007 984556502 508915410 742479013 536670869 932942702 714357349 829527514 350651960 755613616 774478710 846921036 442362948 533623221 866315519 898898609 325731142 914933316 41388186 634417657 275323239 778461556 960776417 979171109 303610648 646251276 719656650 983024770 160794529 866018721 489690924 695147466 670674809 979771520 907369146 974190571 66540459 100225203 779045234 786005572 903095379 917037022 979241455 983617988 723611886 874159426 33015911 364356571 840914462 961797983 620731498 830648630 240997126 636269423 377446447 861675102 91756286 507633781 901027625 988483865 740921590 886925580 983208934 986143423 839188649 923783328 716535840 743931265 175949385 806266530 457924587 733447662 300813281 558913085 135408402 506665203 316846418 688586576 6660778 486602064 19237700 501579082 774312659 977126496 929531157 968829205 881954713 980496200 742683652 865695398 893310980 967006060 774108444 914940137 830396683 889805613 277341907 456954414 751594250 963441949 836303453 837695511 344581976 911322762 768217692 768648710 665155623 890735536 682964189 953910760 343076291 753466627 808764956 949656799 726968914 856025950 733960346 915310068 93698212 953250684 869530086 979159946 436511506 490592870 803754397 924812692 813397024 830884228 338433934 966082787 922270743 930308203 105307644 562484106 241815310 678655064 521657708 751025291 37437983 981544088 112342246 557872938 255060543 340210736 698675031 862516424 442597749 836458047 791941208 898852424 826497234 841354356 243459512 364214214 759218367 893315760 323955252 683864274 175609664 694693394 508622584 664299473 515195821 668713195 460870753 710377356 966501093 992115001 979689338 988678366 612191174 842503959 517837976 883608051 4280880 621649131 442639905 746186021 183605347 942688524 468016707 896873397 77026293 323246067 530826194 919468218 454549961 461945697 298789560 939533059 466998257 895286683 703857265 720044954 747644900 825955715 980877474 994603857 937094029 998729379 618967143 919657447 707401260 966964235 829377360 896112533 943670632 972558855 943771359 990584768 896982454 940391216 50055711 392689465 757103897 956112320 516432338 615228146 394685151 657846549 184010367 569980197 963222681 969211526 426335272 829075865 885150442 955605021 432008441 864108740 692611184 931283985 238177421 490662051 793609610 988243621 224978463 436236372 680615776 931496284 585716296 862944139 717428834 934260787 491977825 739463629 519304334 960272026 891525053 957104160 352918779 721367535 985979246 988027331 936675821 954047120 858740649 979717938 71744079 850928037 525978349 737841944 29200667 921481574 341124888 699544715 417357505 588424859 983820591 996764094 254298475 263461185 547696100 758785946 456236179 637323964 632956972 702562836 6071129 744210718 173807240 978176236 620143960 842740729 483596482 749228502 404536036 771042288 402571687 797691880 353788019 974179012 314031502 642040817 240713710 980605508 639659936 847017720 882485852 966230060 615205491 749734793 728544781 807319071 132310322 320447902 922827887 973614031 635469034 742417367 256605064 852032578 913743620 915640483 896411549 896821218 926889299 983787826 342313396 376417695 510156255 716883289 165812874 854080111 133545221 375762639 784903753 974960344 833029291 876062407 394699411 620158987 938590918 983296395 534261933 756227839 726195996 899956546 416077366 866356163 674132962 988768000 801824259 987572413 372984125 670880835 375337811 814198289 381466566 678202554 273105795 884687608 553673397 740320964 692447917 925481076 318411258 995048856 457218026 571491063 772842460 865566021 676725135 685351192 82687459 395473863 39250821 315103982 840186580 847475004 244140909 794420887 938758703 993997601 881090461 910778512 18406124 886718017 34726725 56676969 905486840 998448780 600750067 916672445 228126194 418708674 263257097 293438192 343362536 364398090 907164140 923461987 635586247 743620629 315427354 811628026 697297890 883381422 344913829 885723248 248877792 775539493 704441433 820344406 894116239 936352093 131499055 321344678 570777448 706514379 514536905 907329794 178865065 713631016 862750810 967098859 718198156 964773833 482928008 982449379 890350789 939752080 570152291 907151452 449749465 490441536 776180561 780908400 103231689 650150732 61257722 904908733 85956013 872719134 649593348 742080044 106283227 327661739 19109176 817071420 287064995 762715029 640122442 970651188 997607067 999281150 275128182 788513123 84326631 177174114 67390168 881987126 942082494 967219326 694667218 830967791 949200272 999055470 819403191 907601558 518957474 875074651 965993869 966887026 582607519 779306944 297579928 929912510 67142703 761736577 112500211 827015582 101617821 416571704 290712642 612442793 433543739 963974764 831484988 935909109 576632135 892371846 745036915 836059919 459794758 880444810 935241434 944034060 512986850 961983323 92325359 691728210 664470856 698551922 517667682 546362380 482176988 500158529 131360294 585860463 193878632 729700011 562079768 672568935 350634604 798402210 801858838 876188869 366080494 571585782 268091264 720187318 380238193 809881507 657204359 695304959 611154701 874553524 834973449 924433827 104314280 440322949 292295163 464209134 653878805 789184455 673065991 737626725 277430126 850873318 983906845 998694641 2300800 983854643 766582848 813926362 777900544 832948143 976958841 997797807 490605140 626860865 350048714 532853167 266349611 467641601 152986218 266476851 839359797 949887127 228619360 539415099 624539814 924601293 232113495 265909982 470378387 950350638 577485420 746263181 24065126 953673224 649048902 688400058 188607741 196524461 671573811 834303760 804020519 815578539 338477619 881808155 222748716 877729621 628789005 778978879 910396205 989642915 470868247 576390207 637042951 707669988 872953161 972427702 609137973 746252482 925972644 956431209 273005161 447909195 680587967 888613719 159783814 623083779 379808072 574794093 504927923 836231261 322754335 886637964 597412351 886556355 933351584 944795456 305245947 747531960 423700251 526682533 864169717 868313070 17978923 611645380 753188854 834907671 212585700 474342604 113589067 790426506 274757107 287763308 153845486 855739033 691595444 968244562 780974180 849411170 838741884 991335405 710404952 974190210 226661690 275976491 879439026 880751636 95401226 360819217 581278431 826361769 661325171 791726561 921310855 990152386 136880216 209838350 330790452 906677126 379693997 623352223 964197652 976181612 229910724 518584672 870035679 899968510 537817062 978677372 622034799 770381666 70928526 590812068 847112762 863097808 420678997 947249181 201035476 545361819 749190475 906761811 692699176 761489875 37605519 411708480 193817678 372641244 19782650 147343243 410385470 915263007 308819231 970943561 15683051 232242666 826318228 861603023 206789599 647822743 63934168 65008310 199481067 208607520 585513675 908511911 131532617 489132636 429778013 509874362 75320767 802505223 660805662 994476947 27023759 469581834 754891924 937354080 337999966 627520326 915724338 955380870 453427617 571324213 919086081 946613969 937829710 980253471 775216085 985598315 7478274 358831191 637660343 725764723 106424928 312143454 54234508 791089832 397756099 856708964 152555403 483272938 844226114 959244913 237625353 487771719 186219778 945849953 910878019 918855388 997563703 999348998 507190885 588760369 273944997 447532174 233008369 695405268 403638221 730234081 660566087 691425690 265010806 275712406 509542640 525104692 35232803 303947135 616148676 680303328 322624150 698378607 526206718 951909463 69559150 597057463 157738500 967721460 546670191 964188851 64881792 292911788 821840093 910384521 877656688 946027271 709298566 988020349 788008965 900915074 731006974 906750648 974074496 979920137 436958148 498697935 184885257 442254469 675632757 857041444 973586389 985162662 536870277 909772357 160703038 440089161 205406567 325321037 450635795 706260985 965476163 966687983 514046891 757125326 601660410 911867678 452359632 521588362 816837469 966686889 984927510 990735355 869839524 893314708 847351738 913428925 241682759 813104349 270468283 665714579 99337429 173648904 788602554 929623482 278872956 647196757 406581921 768483705 314656659 352226605 341422742 908994134 535227357 850872597 624975211 850004546 662437061 958119897 952690218 978889588 74050216 268689892 521727852 568268947 899928812 927856767 697797017 986397062 796547423 979061526 391253018 912713583 467193226 897533468 279461005 663718928 888850415 976920862 468667461 850381391 388358326 679617032 40588801 70232837 497083377 550822234 490795224 607404378 373795644 477412343 604676863 779896097 125254771 129511906 838969525 968517893 972849698 979960491 243363718 725305874 262617392 630997002 92847329 829413556 947550466 953928776 986248159 991311286 710674042 966596085 257860357 741965356 171218495 669216934 449991794 685309237 422879924 656035279 645353484 739547996 309457719 454334505 415828704 606379656 222163584 496598774 54202419 685929700 935302001 953072379 735887986 833848840 963443022 975219804 212058641 659169036 585410769 761388713 79714969 888841723 907712820 966250049 94847595 730487996 669621598 722372326 8368405 720145550 813218033 919547436 353053750 436946241 426344456 910193378 64973786 845797469 289897829 933981947 283927075 621300371 224372712 621990458 128883829 968972864 586488547 782877366 736974631 972806743 195488892 800603553 851959452 978703409 268466520 733169432 569525560 628963142 523513282 691735000 163856199 898166091 690918809 997552548 524324187 960102544 623902253 641057937 395457928 577032447 901195800 904600903 159418565 695455959 598311087 920561617 472165813 986620145 925121048 938861453 937930410 988127496 346921230 446203799 615208500 815071866 988746038 997103575 489445322 838347416 327922047 554211696 647007527 674945568 842386745 908373387 78843411 772674292 465893496 702372614 69177253 189259289 434663090 659503564 443750931 819799075 380641340 942617835 152241169 421582950 640905802 945233475 968258843 993052947 990698836 991032345 354322491 675759461 182052866 984425117 6555757 850617846 772708653 968615949 943720757 951295979 7401615 500870825 57348118 692799165 168692370 956914155 220136222 839989455 161471574 331333009 68833932 992605817 850667610 984088010 58537211 604032264 166733625 701766183 840640533 905205196 449232508 917596499 393264383 681578957 998356178 998911099 970736587 993562454 99809116 163075958 990943128 991201663 688723491 914296969 669931835 880027410 450537357 842573592 181309966 602070754 327576513 805379323 760156314 765589122 313564975 668291783 811183260 866988841 212931499 304787519 930796383 949495262 529752655 665263368 443496162 829387939 384327454 738629864 340543702 614424778 30594525 702187931 957498136 996500572 275158266 810144919 700205982 716678083 237289555 686310275 431246969 709428392 821916395 886267371 911859353 981627987 995215791 999102940 174485462 838045405 878875855 944634238 509720928 520389655 511400106 702129652 869076796 946944894 354321538 506208861 995657208 995941271 867749095 884643498 11567339 499254776 861465508 969101051 132906250 509207791 5508635 928937452 679576530 687985637 805354049 925794307 5082817 666783316 269000516 908635333 300780698 465337019 41113534 632841892 473636876 938514364 465991149 483661043 333629052 699318835 514754896 560442709 639270725 818750466 255025680 455194321 178626365 675511631 867586238 895168733 188284923 829559238 432337898 637204553 192766029 208685463 423205264 445922500 700248977 743280419 588343576 822630881 916734180 957836309 419567255 694197037 644662916 859359564 985891845 995531743 514665736 707051094 991430975 994904908 589810648 776639021 455371540 763621768 740798437 910464539 436141752 868479320 375896088 768089125 979912978 994583859 711829730 739939770 465901674 832562309 41499428 308986849 174756662 539394046 939409197 992299440 12698618 223729722 142742632 842427592 538007103 579581508 599265798 952005920 212544710 767089430 117850117 874891164 306502793 559775320 298560968 437661971 770018056 855485108 335875310 600671842 948599519 972460041 44890226 84259527 747644725 807710710 507514023 598477576 503146829 640711957 700825221 922465964 772036033 907368630 46393515 65735322 663345781 759519504 828785994 833702719 853171621 955115785 957819460 969846432 223318063 381785924 374094283 944478583 975333509 985676963 236967458 430600449 130412896 430984850 612371779 952686961 164111824 720667281 122897149 792806058 626350010 636768252 666901476 759397402 940638201 949548353 397822211 601843072 657014711 772960247 956881152 987674278 251594355 684444252 269425163 918744121 330964144 575595971 86816550 192434941 288159402 833532376 287324249 842274448 73403928 347121181 38985708 981039221 243725769 569047033 842315456 983259495 504427970 866346327 410721104 674850826 811345508 892788053 732379512 910692765 920467421 922768694 786410188 919111597 603394967 613831538 154361677 883349330 607951333 888821492 120251739 605162653 821903904 857166744 405979443 760420650 85990699 835810554 293910874 849267073 800825725 985893093 237137096 263730525 783567031 942075905 742436188 939777383 6497962 960595269 939512174 955341948 705637321 827951671 707079324 929081255 280415106 627441524 731254788 951863797 589721564 854063715 62550744 318995518 911536190 967619417 493724330 667622079 670360293 869309218 123905280 682276199 328046756 388541944 28677501 705265666 300459231 744962727 176576427 929583545 103970468 925594704 399214108 989956927 948806473 997321894 163089136 996116011 814202921 946207579 974693147 996671032 400001896 741813265 631846893 662097874 110353140 310037925 909705468 956856471 245459311 959977998 739698677 752406484 706623818 973117390 547417531 720084268 178502918 408124818 854150206 927753418 277746113 459331651 176862184 369672055 362603818 698345446 978473839 978561170 495877365 531706306 864669788 874940261 877556483 905491084 785147464 883096843 632801259 667427119 116367665 155516573 4144901 617485296 340767705 542433252 874799251 955043666 250193891 371802764 185412397 900129806 277022474 652173640 821904558 962411102 37567358 905895231 565521059 725177855 908199786 978703898 579312192 838446956 239554232 722129726 571899057 933132236 397699202 507364586 884664200 949465162 340217443 610144484 225813808 557294506 51893881 104710616 579390014 853176792 250241647 367461993 699447982 924305864 587640634 866503558 468528715 865955981 339956410 458221534 594242376 912229001 935347923 962768654 497866894 761426464 234831431 772975052 864669398 880876608 936363689 984848468 898358373 957226799 703945119 970772116 699869493 729769287 861913668 955954442 50355506 173891117 499266966 706094313 803840779 864538783 204796933 697784072 706053881 767444158 180583837 699362657 371411281 565113889 364526328 614187518 780227929 998573520 217214451 697892350 670135225 734277135 590313856 656345953 25470204 517436453 586616328 851257875 221844830 448247479 950610975 982602280 169800335 896220821 730456719 760950858 793600416 988642366 502103182 790501165 823715684 867969859 514702531 708522640 98541386 641984103 914195952 974441475 781959756 964200946 482879898 766635418 535331225 911482422 234027252 963120100 721552148 939448080 810337098 870170949 502835607 734512294 189659534 709517977 987502153 988312653 844100881 955387264 774758888 780768601 518379709 541528347 744840405 822182152 342098494 638598640 147242414 351809882 229980486 437721132 906349470 915007003 202541357 623556703 853714908 950922592 209985941 959133434 644571607 823485568 132668821 374025528 648549783 703159235 711504743 970443699 266441044 773027596 802677337 838403634 745697085 965100895 534177676 623023426 147003808 296516034 253630544 363264074 645805012 971108913 996876643 997092413 681193441 909807791 270280876 822302929 701965017 976489515 740033901 740179060 925115297 986639499 693347132 915208717 276278704 695550849 805158066 837204078 946890026 964591376 496579528 498961978 16454174 85257827 885173268 914088698 81865874 414949952 794994795 986651709 272234835 522727984 341003403 917091520 838290201 847241187 374413699 537647914 521120949 585093982 644554160 949046351 723382147 867337400 960328424 984611384 847631370 965872995 8452203 9289507 991280834 995247522 894191882 924322510 675021933 716588568 313360261 907590739 571317645 698657429 147867728 206597883 992622768 993689164 359712355 760688852 957491300 976956472 16678364 771824226 395654928 799412726 596229346 755870079 103314530 635116225 779529597 903125012 900766479 968159538 530154085 870319732 836461666 973070313 272432214 798646876 77103062 890344294 361759014 693467318 258343392 516494508 391593808 942349435 826422961 827675877 137668205 953212166 495335952 818195057 880111517 902334388 713374692 969606565 628051899 780317676 271292955 494792291 950274433 961498615 783957643 998262905 374006357 592856100 456704331 977591389 663726969 862098877 314943469 386067049 360263932 451943452 629909679 760801944 981875849 989123306 777860560 812056172 138053153 740743465 390082887 670334945 842572713 884991951 360769772 937359239 97878784 934697705 872911479 905623914 115587276 476087414 693546658 708093554 270783371 909491983 475949565 658455671 552800851 944537076 140170971 408002043 541162928 619883602 957454308 972287185 86078734 128539482 868841687 988758420 780121213 987391352 943863042 959882305 157634475 759551911 70811121 562489834 488243619 552571019 200800762 637338688 862889067 978689923 964917648 985884800 79762855 650299743 907214124 967434138 240868809 705383041 372460881 710998658 401314473 416148382 904207487 979777111 959570897 963388903 836508623 862970491 473237547 723918143 206469514 276798959 834944530 987938234 28849535 43045231 451440813 576586974 580701887 995776909 293566253 633025007 189808437 200191362 915421767 965830182 965533878 977611449 701307221 887053112 227465338 434854898 938745594 954863399 387350816 773649496 999196392 999256129 799497445 880729815 123844817 309233835 369489773 835864056 234200867 324196933 809642296 858019021 562115689 958882774 69429517 69834476 871025166 982656985 578971749 890309538 817509884 913393751 898739353 901728628 880659664 897122357 622909755 816934366 622512795 888136858 789606003 940166798 10081268 183513905 566250483 939609529 23136056 139517903 593366316 828874035 775195635 818892783 71387218 521237383 798880824 897552377 469499603 806590490 526098008 683109712 151399926 464693416 946485449 995033044 494575984 509184491 978695799 978772809 355086702 875569078 773585932 944646664 838894685 874998036 203539319 520354403 241257247 891630141 683408296 927398591 213625569 888298938 653562728 819339722 348913172 546445602 452576748 757789546 445908445 700885040 292597706 303910709 632478221 858399646 668088776 947092103 655840435 750880633 386856851 634933869 5082587 598234673 422020593 682463038 313209907 663050739 854273875 970892985 602536477 840937671 694368560 843815654 697914541 823410926 8601671 399553403 488997458 985720532 479033245 821298097 232810726 972882979 252599191 281668488 783952367 887273623 972459592 998513135 700545699 907821023 516960681 558204515 586363132 656026202 544895467 658306258 679004849 713658259 346846336 421657267 362113069 762593264 707330693 996902081 41393034 521959157 50927162 959749643 45771168 588637574 937209451 957079461 700842742 890426504 247102091 774305758 640855236 946873922 137940792 420734108 228941406 850744518 500637581 535296105 350148011 711256868 355657533 563156989 940122135 946401175 677341394 978958726 722226040 849519128 156954849 199015834 17725020 54011269 144181360 268341504 736852675 804171458 123738300 525669823 345498084 399115032 482481895 622064983 606014235 933401063 253375276 414177922 140528529 433381395 168850759 525497085 44251550 681356468 656599085 981961901 449546131 674562135 845684593 975676920 261168926 787640800 657548259 864730458 892166642 934219334 644100048 757260874 638019882 778033310 693792304 838618564 876958900 969498089 501441766 700316322 685202191 779619380 835490029 970609448 783274956 942922148 353427597 618372782 655160018 928525758 317037124 970188517 220115760 880194801 189376486 798802680 853504824 993183651 387639580 645175483 195910614 398118950 411552239 922067902 836782767 892895084 985868662 998858394 815206203 966813645 301338952 540565721 77381317 875597150 709759747 983447402 240370106 630913330 804684669 827638812 341134766 860892291 734031010 865109065 551761647 752562415 172912665 384505958 212118202 890680196 23876449 563093986 383726494 626666606 631776279 771135554 172434576 942431416 770794192 852753934 286347614 449697635 516345363 752574283 156553206 755704804 459981337 559379555 490029258 932348885 706182981 950939332 332686916 346462857 933573241 934324076 61121498 238595965 981752655 991807192 323282016 698921258 847940982 980967652 192678789 937969574 720200353 883895776 972107038 993758012 155579727 703154608 452159261 595382499 239624421 340031113 993367273 996121202 416744069 847752614 87409632 754501523 612761943 948481341 154978263 699995919 349161639 602803079 563762981 797633762 245498957 712796251 52609911 432454378 226017855 486351150 502359973 641024381 189524987 906327725 897372116 903511754 147430535 410589001 981618830 988038382 403955724 692861298 700018778 717069418 786125059 946817427 274250272 800050298 78071074 804276441 562328213 937889866 137755652 232565213 614761911 845883114 518273442 954255887 616492269 746081792 940580305 991707773 650783232 740874597 455164055 515611115 885073791 931799998 835062491 960609934 45465727 734706918 529011350 729513907 518833221 786571103 798795836 895839675 107213395 536609629 152690407 943293024 379357560 897252745 636223990 785631426 392820844 984033226 869325195 924985282 521298357 738462841 520430155 753760714 409665681 449789344 96842834 839826965 389452160 524304928 967055076 968733595 434865936 961465706 506118669 747400931 953449739 959480023 596500055 995177574 528562757 807714604 452389894 483579207 777734012 870835409 899431082 955675023 589861135 817505896 406659208 720919219 802491092 956816038 959505304 985293067 901711975 997131323 602429386 792493104 138098531 472923380 325230176 504406593 68056577 618751917 920536063 993058869 451515518 609475833 235402507 663920248 552958526 606403425 119994088 269601847 952916153 984175983 814093498 818467414 14142783 697610982 185884352 539332304 323840178 565434618 851478539 991118094 733327720 870988272 965533260 967138481 790146717 954287828 766383567 797255800 346748838 408663252 192843042 928213310 199092926 975625111 740465578 945234167 718714931 830797685 948261915 957601761 499138683 944316552 978374729 995617561 323006696 475759725 188603133 678146175 737881964 987584460 468812054 606793436 986023216 991921500 32038276 495422252 274153674 496234264 351210697 984149965 490213549 970228991 839210180 935054765 531219955 974789391 503935062 876039023 955230059 973834102 648746571 957133615 570806021 820042865 553574497 810029481 12988979 394769304 600691913 674529558 264373928 920757485 79006274 222115977 193456013 397140795 53224103 416803670 587623617 802495025 531044773 974486729 395728314 810357739 164325435 172248351 355870537 756987465 936462568 968495425 435018378 523504021 81289582 364994805 700871793 728251726 498600671 679108875 583089678 924678819 559215185 648559937 621113027 733839435 781327555 802732404 167512725 861053502 694028849 929509549 670562433 732573250 150474610 240230508 604596492 881920762 300155458 643602337 323944730 951990558 84203411 91940720 969737763 982425588 480593285 575239463 976814778 991786374 207858599 260590309 111389610 395259956 721565476 981240048 890715532 943201062 372544379 508265234 540225522 544465103 479890096 864589538 241567786 420494326 754037481 825352816 38367589 474398101 582084689 993761892 714995270 999061389 512197667 819454132 749019053 873619618 341180401 494291096 775001605 924791124 614249000 624565259 218313671 906762959 459618648 809972698 162944361 925569947 103877008 393127940 164128543 552944414 310170723 812775682 464865504 890733400 737454605 788644752 268696418 495059207 751391302 762259167 913612895 957559835 168125107 366489981 491246848 680189409 958654694 994792795 639097032 998223241 995147394 996053099 684603842 757927282 587635659 701025785 680136405 793438463 214094667 301882519 125764083 907664775 386530468 869856438 280018812 591816975 429824554 512498305 855501628 860783577 282719727 297748497 53709028 931842835 466383366 710335549 943530529 993295964 728236483 996545544 407685434 492913712 641647636 754723680 593994943 733717124 167772524 876415693 92586032 171894990 768018867 790431355 297783705 623805847 716507996 893340963 452871198 894992110 631725697 812047793 870062349 977797566 416109307 775478124 339982552 719443970 319344822 580799240 186873318 447431273 521731624 628563345 577560186 677839853 269775226 409560383 891535181 951482797 60078083 949780447 265155445 659579303 981186286 998842506 679372357 944658460 390839247 764496946 718081596 834479800 557080432 728597815 170452143 234074178 455543599 794067927 98147946 651252663 191161565 407552720 639868832 755831197 572111841 893895307 447073535 968111666 45946635 841745024 775168207 948608328 814665450 906543685 400065904 795117447 864300580 952101392 593309305 656233246 666090602 889733827 21184125 548034379 417808155 958677743 119599424 549304449 128651409 597654170 258910800 339887827 908741373 960521392 297564555 368922322 649122194 922173887 332403691 505800730 140607416 592242849 247463857 733189403 168628176 702124433 840755183 871404867 117592930 433195903 208491245 729622198 956977739 981837539 597469316 939850993 215455758 586789015 907281023 970529645 573933602 966840394 642916856 712316488 301397889 831486473 210692128 695684549 840651346 979671730 253206732 968392055 392021214 811078688 381156826 932100508 554584025 708875779 729757213 795940732 430299041 809165908 611012310 863651616 412279185 827794538 309894309 462768550 272556299 811105408 849865077 867126240 408860627 692806933 844735290 973771571 867019749 976436542 485040513 747936211 663772815 963974445 674723957 961691429 322112747 596962919 978219971 988922751 669893995 755311272 177497800 456180802 221372488 379386019 114697197 792731354 60513343 553144371 291284893 906488444 984345998 998397704 228524039 619130732 946761445 950339670 44952282 245803404 797729077 974684181 742011503 989078857 903422610 948672161 232500976 425413598 93308309 592614716 750200993 789546158 877734859 939150762 965554908 993876598 474830740 874115112 151900112 628152103 782654342 922007957 360302828 404479673 839469593 886786678 428766667 953271342 826847257 982927495 881356451 994224500 94142063 752299063 508278659 565930119 294901296 488368049 486694981 918276224 38422555 457272912 355178049 378440668 681835389 897267821 517105092 711782505 204117030 946603910 93050180 450539556 962678705 980322531 423184790 638686417 651721781 922441158 436626932 702322799 1643615 320282169 852571758 869006899 229300530 758585510 14951325 450525553 242194286 964185670 128427363 373669717 572395937 776050346 423098702 605208019 653986573 978263937 731294498 887050984 811572684 934731462 569866880 586405118 903987930 969370745 76296895 838485904 512525743 663011934 971874412 982798669 137179490 732303995 657345938 841281562 853121618 921418476 220863612 824860046 232762289 937410272 65751837 530258361 749320520 922610631 121971679 553072785 432420650 898795245 916897005 968722610 289018608 414970534 950542306 985894733 5289827 13511375 380734951 571375300 715197756 747423726 128695597 948349166 620157704 671140128 646246693 701200537 263595011 946168894 758516363 843791677 733622471 789870496 949062642 959191098 688561031 824447286 34726613 613630417 876753364 961570115 409139965 594976601 563811585 568776296 538445640 559036515 256402015 580337569 673768825 915052705 757553973 838957409 303210333 307671013 849911454 894946128 279017966 777733060 720069958 772716378 402518110 776147062 588584868 875775644 797447169 875903653 827823262 829602251 192854604 446404710 292429051 806301664 737761575 944404502 315266328 858733024 579842134 721300155 134961299 701024252 722649533 936562127 786997112 931703526 877079015 956310007 912163961 986642279 322184117 364147837 215059158 847634200 950788662 978038162 221531912 697724060 586785006 660756528 539094006 689655519 149345491 220500988 80165653 949053888 62682504 670855807 265065471 636594852 565931334 972992435 495259359 727927829 113304646 806003543 819443768 838152730 262957380 421091635 232813174 288988986 273627069 505097814 131395957 204441723 501728910 678349035 255251088 302713234 855389981 994343089 666379634 926067840 227787217 930485045 745474272 927118192 713334887 908816485 444028657 672064803 712184109 954586443 80828787 864597833 780851945 781379411 769827141 827878122 133774281 996867006 40930087 374626781 844573838 965992907 659829035 915963522 738977589 919321309 670200797 854292875 646497923 850525268 626465879 938470620 622445895 859394180 849306315 938729591 41312598 353130349 12764361 224648894 745769073 926002752 920679758 973308243 869834715 893406226 27322154 365375916 715642251 978234768 775588884 790225065 985463697 994735688 838166023 917072975 417843525 871086996 4365965 723433081 111568444 649268907 562601573 613179422 491970339 959699522 843101549 962291681 815517184 979330187 944490555 993262275 440987614 828845225 811934621 913147752 57035194 672303330 108427879 623065472 770415173 834871607 547911089 841307158 922163883 990604588 533753595 668936493 878243118 892503881 781720637 828179011 873999371 951828613 638647522 751035897 666065957 856660275 608990946 700947526 229912546 750449538 501204540 601472146 729592103 906379375 478945505 802394991 730811813 889716123 347711082 874824562 498052641 829092144 40123518 150851176 373528176 960357485 879477285 980922382 544877008 893074899 899728664 934223864 208026252 358977255 285169917 979867836 448780667 838807321 623449707 985028000 597380847 791928307 535312034 976851939 221056669 485927661 93765298 688624148 849724297 932774511 841964442 969159617 326211454 736217339 326550269 765510968 651080452 882252291 926073190 997577796 992657338 996454489 569902922 868668986 481685709 886787487 600514833 674693184 133837766 579575587 39219153 934526346 65116283 107737864 975416564 975963543 776961632 947694199 961204293 986951185 230304355 806354369 296792849 702347435 968896508 979389115 315065733 745196169 3350866 919213010 504490977 835128051 444321498 527514530 152711884 294223994 642248561 660658270 280655250 866148871 39275855 321816226 583639079 760794660 502753800 644590344 235199636 912243249 73345595 636710018 517922473 624213630 991441016 997388619 36579751 253550827 783829819 860065570 704425353 800131741 840022682 921954627 956500191 993261545 954414331 954837773 291399423 543761306 127004280 355872465 660027233 968052758 890384367 971989106 22028882 985947788 768084114 829668574 922327401 924566671 175951638 494464513 630443358 939261715 200709380 291635380 496788660 871384280 552371490 575568950 371256043 706603721 99207131 109844070 90078777 287165642 706078178 821682900 738239492 879858416 392682654 472843848 65306811 931026602 54213505 514699091 682743061 975321848 651402837 768304099 10169493 358628937 866358651 995043656 800242451 994134226 546260957 836358780 125575198 326883964 666731283 843497103 48046551 338970509 255810594 667773842 990138833 990160021 269414208 886658844 202451331 235439292 800265156 953102729 100829301 201631226 987259337 987990862 775440735 990062383 814117868 857364126 285962897 474792719 705683881 736513453 51506921 698654390 203008637 774863393 796244317 841517178 298338481 732132771 497329703 570144178 59660236 528758642 304027252 740496207 133299973 187132120 743404407 944911487 861789445 988625173 428017380 694893956 439630115 526857124 257394231 405565702 165064113 383913589 83992721 888955897 633988811 847797718 878714443 974121563 120680652 628789326 789205207 841345024 221524096 567796190 725908007 856270349 77349963 907633132 391055354 800773211 331822605 579884885 344783711 413753916 759119169 954518693 83356107 850548038 545105105 553573409 408678852 495713029 502131968 832615711 381761311 809450311 510660944 995502648 579965032 621887941 223188555 347564935 472330994 670233271 893621390 975376095 199527834 333087914 336346560 742198594 678527736 712282058 463154809 693762213 307253275 539741272 799208696 838389252 364447409 606773628 462074998 612609301 281020525 562504285 964067183 985429504 817216397 992321738 478049205 854001878 436521654 834812239 349409492 575835554 200263042 806839863 507285464 955381052 162383725 383625420 255041274 710433645 441078131 773700006 684333911 703179359 455510107 761553731 760976018 761777932 717380758 978814171 22242993 992171896 71603251 779550087 360453581 641767494 375690880 890358802 636282713 713247985 879721867 934714184 514363823 868547682 387274490 429909563 707769235 819494111 880986932 964893749 84213784 338852249 568510328 856984406 564647729 647320358 351472054 921369949 667746019 683065827 51164201 258526423 162530729 222559293 755956370 893274553 887666752 996527261 650357426 887583469 520102818 696491107 569172543 991737950 162338814 462120721 148660749 409179529 203128576 979522534 988572750 998861038 583359463 928108322 32540807 592102545 680139378 725127869 300333952 315848430 898161555 962914018 360349323 864549336 196701837 780060959 677963693 866870842 266594113 278916033 85407939 406062722 724474138 852544442 501450925 589774001 95225272 249839529 832999916 866757209 614601207 631878013 750900270 779652199 526832136 910384739 781444032 855094869 438250849 670121668 206233285 406329769 782616538 901732529 296253725 556466863 773835934 805600001 157443958 455255686 457416538 806160050 294731249 515751998 614832851 830270703 168545408 561896972 960506719 982029069 590911825 868348098 912345674 912966967 493681686 878403706 496922645 793073196 604348302 666658787 525541461 618142827 167971700 406849295 122146489 299040893 252959483 862141400 88880654 628035613 698665694 854207098 399652216 564361498 460164306 933844289 430223573 952536542 270981300 554617335 972774246 978864364 567150892 819159963 328192215 375007135 484610328 836407095 818886543 952618246 244950417 575753507 221976930 971940253 52382770 75843070 423813057 486084447 833987682 882046234 447087207 758151442 222904823 607448541 719178717 739481680 381205384 997278669 700423108 971110730 829800380 849835715 307906160 401744280 904474835 934317968 944832995 988360967 495699022 784585224 361822916 923845772 979298497 991260704 577901467 578095226 99771153 880256997 221393961 680184426 410020530 488653351 440802709 751461265 261936038 606573377 728409232 862873361 428106877 504718333 656202300 950547398 932851844 952969301 839904911 941011779 266986330 921991582 74799748 667411376 972151707 989575577 411684307 759490077 520179070 707528134 418555904 694081489 363395074 729619358 139707387 888768108 6708931 266530656 195363244 233875840 276635854 307378297 778189044 883358184 387597829 634037002 634906107 797213001 619169243 930740567 632868 120299503 455764942 634851943 507993938 806510740 368400516 422783057 829698523 873792759 763317662 856626166 318893289 648792041 321693789 680334816 535248172 984815030 823508069 838349301 239195743 887631111 111993264 881196086 349252544 366317965 245259189 597610918 540624178 807382433 86315419 804857269 46986684 912764465 716811586 784017914 511032674 688099114 657779994 996941010 21975674 707205246 325331942 643462659 524209544 912754800 268559754 622897707 779022156 983611494 505026395 616756239 995943980 999290475 310908484 709186860 444521399 820314343 823296704 842097781 820521296 837094614 758052954 851751812 798144671 952482667 382083153 603731420 912964750 982477489 159121631 812706646 613837439 932570364 688137756 758639137 338302957 376647574 644113754 748978139 642709536 788508461 448130452 972031419 613378487 621652317 111289917 397593061 179480237 220499296 547079844 893339267 553522033 742467965 430499515 489087159 136455183 346662652 151313517 607317978 368835294 547610418 366478692 567686526 773022092 798741675 241951186 894917886 898772424 970055575 227569246 911382186 780784993 967428622 352828228 883680592 503714473 582521513 115998351 331820285 874832336 963248849 427371637 705979690 477598136 565150603 651112257 910440789 442429482 794995288 970105584 996267417 531109639 921790407 211847408 290293128 420414379 853778776 954325856 980964364 162676040 697904070 157931840 583440216 956848367 995330911 34018455 357569651 920158334 924285888 213436607 885102174 827688371 861071321 436187666 913613073 251548290 723615992 574318627 887290255 93884571 135586875 756076262 791415989 248258395 742219895 670714111 726063326 845826256 957322090 197477362 431608016 978831142 982317462 953294346 970523468 259757071 893353175 707144472 929825405 718953791 885877918 481083443 932074530 474666478 763506557 296789609 317163854 199099067 640050795 705332432 774830190 780013970 941546569 668384315 933226327 619927977 938084059 689931396 973902317 538140860 879557610 155691639 935821732 300478354 702793399 241608550 689150108 226461909 759532232 545515159 868023270 153430061 749748493 388983242 538940287 951551861 988894610 360507437 848827213 257870027 747452554 66834218 344490937 299201702 548672202 122828868 809684875 298954818 365954840 28999429 733914677 777376522 930544648 909740006 923704010 231257989 980902525 868586889 902076716 262727943 806627249 380682054 659923182 240176443 460163743 512438614 742633088 287369520 292360473 708364614 915729356 778643774 893190766 201633431 547554527 627296293 720666560 282289672 879633964 530758261 963202001 271822818 693093991 293126950 353727707 598665735 851749730 101632844 769100755 433274746 834777455 848781336 911548521 902749273 989449417 188453816 366258883 173414230 499922127 697105705 939449187 37122850 952169627 735197338 769467795 762291706 868154883 88212560 469546350 116837784 783456773 899784253 908606111 760960761 805033655 932442392 989903263 582726170 816826494 249594001 963432367 181547435 789957579 609489121 893444532 195565183 352690490 45885772 311069669 324388578 675551192 29490177 290801934 882552036 923085024 191578181 529059969 35005619 280843287 260182733 649206985 781161998 902470131 88955957 729876192 853908598 941557296 641946861 769492689 615362748 740409688 47401147 995846918 432201389 918537149 961255034 984954157 144523804 416453290 463159587 639532726 447156496 484865210 771988810 889315669 116443535 763152005 899321730 973815769 630776656 806984023 49727284 259916935 614411382 871999859 965139292 977006121 697785463 814968630 661056094 980531571 392835164 931280594 196403951 244747505 712826299 720045493 224434279 905546696 121012769 684293624 172998750 380262951 577405433 782756114 537997994 589229094 463480811 651070685 101957117 775628873 941882389 954127660 341318099 969839989 908295463 974549336 986069494 986624344 539316872 734748616 233112072 405515603 623934470 774504140 143022711 276233668 828249594 921168689 862687764 902850243 37332817 957532852 22949265 168254746 310308713 944137024 457895524 940044106 879521737 940615907 852396023 931231154 736559165 986245261 754913146 840762828 296735577 364797204 945259418 992725251 297550307 373479222 272103288 524493477 631039049 859793845 392984636 894575950 756228468 915356832 733988977 803867476 318599667 356881937 238141462 287142188 1360489 331545381 858864379 953836538 667809256 751020720 571069279 914456121 680783816 940630709 400792967 843084831 966131589 995581084 366097120 369050604 434829847 464052688 913710587 915104890 519669818 823462166 872150129 924266328 670252257 679501016 48520715 578471574 20628739 998589134 612107684 925886607 671151332 833310395 9068529 708993887 754087917 766564885 316872706 575711445 78543149 303556391 956743644 988178329 252537598 703608416 949466916 960492422 297146623 364028434 988783113 997075465 341704958 513864849 113864323 609680286 929619973 998560803 214840960 975336774 519275593 525284236 67193197 466958901 860419244 930959351 146180396 392316234 627172677 918210295 754364795 913267918 88986708 454129136 421453573 523801743 76296018 642501408 152776669 555707132 710121036 727491421 999386556 999392018 645469224 740032291 773357639 899357878 313858460 636920589 22463010 461976359 253654102 977502507 832411179 833235822 287534085 553473474 851870617 965270747 593038221 857882308 990441944 992511052 445900681 727922416 134960347 268968337 245872767 277150211 231192775 837312988 733461022 782641428 577599656 584552531 332184578 830537384 542525898 639803449 71307402 144678159 427291689 429540355 617666438 750939217 408007313 713497062 478840868 701008204 394564523 704459181 234595694 639607557 146355413 410404787 546250939 581324384 21612726 376995268 753150930 797652863 505484240 710704942 605131837 743466526 850735183 880593806 996495033 996593212 403743078 958309940 408771010 504283063 172141383 487524839 346340722 555801870 809736302 838859076 845009031 952173985 318142495 827141671 491099896 904412695 44243632 525409279 791268304 901907126 251422804 556812082 210602500 626580763 448744384 491623883 40161657 699921409 818231982 873057115 271657647 317795980 821489687 869187495 111184607 639828946 78316295 473128998 127853498 666978891 359680854 737569876 761922172 991494468 261123611 901447659 693086622 764708214 183709538 283918668 361469998 886046217 608652724 795805059 40669560 445414918 89946505 535411199 539752618 873560425 677697705 945500935 758912960 909922718 650304732 876737443 529652105 690771061 764786185 809060515 541342786 589100999 46468227 411972441 462089556 476687217 315559987 560410427 352931819 377751774 422875738 480660122 330189820 935784638 503832587 656006233 220374535 716288586 414902915 560824973 705833962 736134835 640859634 940780567 271217911 616055505 19157931 958204249 402273298 834424642 778053895 784970447 934723117 992294722 253285746 267321621 660350958 746974695 332812704 373291052 266953873 360823317 930759474 979775122 359397807 526077318 462517935 821042856 446224536 949403968 563281465 793206826 818509960 899068519 208905958 696925915 568945868 895777541 858391288 909230990 371516997 584697387 400723996 470319853 662005712 672049823 194858721 746176386 325841139 491071360 720855329 774567587 78056694 404318813 321367423 610293588 731117293 939551431 440115407 766520684 275724780 791258301 760387262 942879555 431353465 887526441 769214092 976723255 4963462 820872852 232234472 459250679 852552592 948435448 471391227 606665243 977770595 984660573 580461955 875190853 63071595 674304499 455307138 817315641 657959164 926920773 989080353 994470773 970207362 991393291 218776809 697244788 576990212 672619656 895655543 950588710 662088304 850310034 743082628 952968901 111953390 917836818 740399884 990398464 292667880 571958259 640024524 727413214 68156603 89431826 42405302 560852513 402502007 568339043 414520324 738395365 394915769 648008869 809464509 937156784 973029384 996002156 328059543 547756897 637136693 941090498 92721280 821405684 891251620 989890303 282039549 421787378 363892293 907525764 808136952 969212346 730621598 864913675 665754416 986968950 698146774 970145590 380501268 624203177 780442529 978608416 590815780 967841310 457223533 970639374 594433140 823099277 597596184 690051394 74242106 957793060 36575604 397796085 770743722 873949016 478614795 595009115 589247012 782619365 988756125 998361280 482101958 725783070 937341364 956623642 28018447 192766759 832118967 950553985 379976679 900132811 848630270 868952368 909057958 963363666 323173626 843640451 302909304 811014787 725541214 934032681 974717847 977558809 129714408 929384452 475807029 871992216 411746403 656855914 834141352 854476974 237412768 628339510 876849274 967835002 474523125 591803689 872288944 992144597 797106718 928118724 101237637 384401335 48021906 430656530 511862515 775880299 778459251 842132326 616018665 730921772 568638059 792101356 763938760 890273384 608988628 708172516 305455031 976668860 264201813 618819417 775789447 881393339 702438481 913487966 880930001 974652848 491520291 662765560 215731850 880741058 301057236 727318411 244351602 691216883 320839057 552719082 44811832 428101551 362516991 637527457 844604227 990651339 713366967 977422453 55923349 858374278 150647255 748406326 752639174 828750537 247579442 288539194 462249767 612208554 204844726 244576493 797286995 889136021 488019663 508726165 969022235 997205674 334221637 411382140 985031831 990696909 946850803 969366473 641470047 894968144 914068247 964937830 900602999 974071163 890731000 890924414 50368140 784123570 972346781 973731120 675513486 800591714 885356846 984846235 684196906 900983624 777149498 944560527 595334402 895584536 467138899 762973363 941795472 989942483 442602588 651335676 176921187 996007692 167938758 424760146 842178789 889255207 754588821 810818260 810865714 905611004 517351088 532566663 993254378 998162163 44727504 742418638 46180156 790809449 121554279 305035596 506779733 976046064 153533851 352049267 699897144 968098200 676006835 957249655 443252854 964468353 30796688 648280854 646757132 900583630 367732610 975629013 64869058 765024976 107662553 270859052 726411891 958838298 446964604 568164541 358758684 570709285 932404806 960312616 854325845 910672380 924112604 963464550 712573760 981944855 921320198 977863306 13502885 260361549 635573492 786920940 458061774 750557109 279604952 939200344 36044874 905571009 889458700 893910726 822098430 963190046 769828410 995097251 826753553 916642478 985010890 997809315 312191116 952389354 603818329 654274073 660908082 844551777 324034244 582749873 792645717 824355857 846413907 945815769 116259664 882141901 163343932 882687450 817165652 897952077 864780084 937954146 30735976 240278730 833978906 923145405 472262039 884991121 381713103 624903922 232601689 814860326 333903383 527849621 838061368 969508270 665340246 668962945 667938828 982122198 754247542 770584474 33381682 110295004 866250683 973487759 305821445 416597865 135714588 537175929 190511013 570030367 874733592 984106210 534075463 691083950 727762491 955350316 572885128 920938935 807820775 894417506 440331729 783373043 979319127 992320929 351550358 549302055 928710524 985118850 259727114 857313015 258941905 303041339 85588042 112531528 148742039 281002094 223031066 641943780 451102120 925234391 506880957 901693277 743062963 779697566 450714928 840167883 654657631 837399984 777413948 920361647 494488457 744613005 366568123 685025170 128651420 677260610 137836608 175078218 209314774 852608549 319213061 644448259 541861733 651182703 47562614 517028394 259105738 382668151 728403908 743298015 269623198 887302909 354805962 702435968 447684510 480380956 748068692 854514301 322466287 888611060 51319103 503539508 871111154 903054499 949973130 952973636 221729731 808178237 767607417 887772053 976371525 989214684 614162144 761278786 660342269 670963810 777186123 946827120 319339006 352576494 635390471 832287921 159150163 237193607 793158966 969425186 503867706 560520565 299161582 689396133 901733162 994820049 894434061 981668860 876021418 906161055 72108901 343888196 966866918 977188378 483310512 574991699 430702412 980306815 696526721 934988246 875077316 903026953 363482859 501920091 556847956 819770254 941521591 960094672 410965315 812874020 736463660 948255764 676660229 780286483 456926941 575761873 793636836 930947849 286792468 792025217 865707073 933980440 551975125 859352803 126765230 469565916 959318084 976816810 178918311 625093243 46134687 820450554 482891786 590927903 375193751 391818041 667438932 761307801 589013644 689005473 886309976 987433779 200688110 732139255 712693281 940336864 324821010 580918184 612550508 704376687 195349260 273666395 314239819 695157757 473155607 563874696 71638604 222978082 707147263 851134746 831330700 945383077 950464911 989132408 270995195 590773902 769245038 964813512 231790417 967274754 447143331 735276618 228899074 392136494 144717295 212734569 368437265 589110552 13988809 913389424 671566801 964665955 564154783 906661972 390168539 466558193 720391942 890308095 365469959 635534660 235405358 915137554 476876007 995633552 497331159 935576953 215654522 538155277 816491514 832510597 570307214 674924666 544312536 592536460 450256918 484711368 130652794 775721704 825024400 976206343 575242349 811911081 261430682 415783875 890456710 911592243 271762199 713283301 762738230 895421813 803989869 966029946 727587530 975956896 952852720 955714288 434760155 444537078 218989759 595800030 483674705 889772079 363107027 833650091 641665268 972903897 73508167 235496770 662643235 719550406 241549548 344167019 699210245 704966700 236801385 247493072 859080359 870257380 75629600 767306441 685243694 814025568 194201274 983737915 224561808 448812676 177551673 799617444 787957395 842270787 620918679 992379135 528145747 994463382 463955209 598053956 850907557 928010276 431404299 835837142 572677857 985393456 926771941 959461216 405260523 958751839 207486865 538191552 12722770 582664671 299465375 686963965 207031099 330320327 756278650 923554379 628005919 785096651 937002069 952611818 671483635 752325898 957237506 994837253 974685192 974734257 543565065 612889688 410889437 452292670 879690982 994224380 515846698 970489261 328407555 959762945 229982773 880816684 153373331 761372483 761879690 921648950 315577572 364809804 442127182 561527566 591206226 947756379 834235715 835040109 292095047 292183653 436443698 534595176 371872619 844669290 561298061 762927268 171725155 276356592 335781842 627193235 211427534 528234540 856166054 875118143 695353227 881393064 893173791 991556315 12036788 256486517 178387054 515132132 366908768 399845078 688287740 869170343 755647414 870175551 784672345 982277078 377267902 915537781 484781690 763938453 649447623 876711852 594016074 638069815 529298730 618808301 846515956 911038997 288217324 710647767 936865723 956966215 685568541 781818639 692605159 956578806 460598317 798171434 128541925 509780888 608799747 847977406 844655232 953816636 775927700 982974249 947002024 986686706 167200232 450408404 238091275 276062343 747539844 903063586 627434802 980280527 836708926 886243222 393799899 662965533 61985018 897204089 624314306 673438961 104876640 149260624 964111815 991544143 735238250 951619267 138534512 227038561 555149995 968014590 546367021 623157039 915709102 919350630 882980814 983562700 690832398 754024495 85569945 733713771 593544368 639342836 604667735 614139314 832279873 988572959 799630411 962894592 591362811 658126951 666351239 943591745 864602111 955505403 864013348 942917844 290196014 788582393 828257952 901665836 566563306 603968341 305706979 593429015 527360652 659275291 740902414 967904517 209522468 711221880 953062493 981499828 788960733 881078012 937758751 978933264 991358658 997368711 882331496 948237172 275959585 346448950 537188017 842913801 909883657 963468816 874010756 882739569 891826958 914429091 617156078 759129330 203607292 878470573 595739617 713705029 423567631 752815047 182217334 877887021 292175132 704383487 657620290 725521547 615445731 757043867 764391247 969765997 497397223 565030635 574069563 885805799 494785705 937336741 899679904 949580957 581004092 848100346 976190978 979860672 32746392 692004784 92038730 495557140 973038176 975209668 746012632 967464395 98108055 825271106 375860803 702809634 829665647 981369961 283672431 511094229 620469101 710160514 875560777 959433461 308946123 725030605 836682887 978593081 272720631 748433514 79258534 933666152 320148762 984594113 604753055 676084597 754541012 990549559 994003624 998354041 249526429 347627617 458832630 692021824 674532573 692061218 281885112 670085013 686425370 978727378 273293293 656506050 313723337 832095578 517106451 957698609 510677094 691845949 778091556 964209815 857124350 998362767 414880936 901816620 970343205 987438265 924925564 930028603 979500130 979680181 622898558 876472302 241972457 937464358 388160433 832255381 132985498 689104481 276807660 569683041 147631011 176165413 229199050 906709906 819937936 877403323 351316352 765535600 794889376 972851868 953776593 979337549 145256721 710554842 340690764 949478986 673808679 809611068 587907860 951949340 290334439 956446300 543612192 704843372 274109229 843510179 643051611 784577952 335096324 903904562 297210367 536649919 981472717 994439786 332114307 526714372 396636165 873446796 976191875 990064860 495053140 730302402 271636255 300872810 303115574 371030039 301459731 480492452 175118500 371069149 136072822 429805219 469206218 579652319 992396928 996078936 285979076 885535444 787249683 912792169 987856369 991327213 88230995 473075153 516306898 780156311 203337538 405685307 495266946 897565013 26916902 938361487 841543657 873543154 792020257 839438769 624629896 943836201 317599314 410919016 856153118 991461347 149311196 279012913 13423262 745979541 863322961 961478733 188057916 678661528 584242201 944777173 630024618 948216192 387148305 552830203 461983224 885012300 918430914 931529309 931712576 936364122 277663059 737523942 506190419 708980951 567550765 661661779 709285629 962069345 436493207 964283129 847964365 853972519 240345213 995221550 746849194 891831556 830866739 885117067 802533699 842919667 316673038 806972367 3225397 108644983 233777172 923224832 671524300 848623244 660766303 966615591 589372916 955718028 313597121 708889003 748248913 984522037 988486700 999056005 870691305 940086052 279517072 944003651 269116060 701258713 408461929 496431663 630407951 887593193 115471813 475432073 651698636 679562419 971560775 999032193 100777060 516187110 634205724 878479978 457509272 774723495 952338667 995381433 913511780 945267819 669403429 732448408 738052741 879128666 435031351 857594734 895259762 927847116 954912647 956535196 438105997 557981464 982336332 992033313 704232185 969097539 347336866 813059387 766281836 788863265 321592898 750688329 722138212 849879710 185672586 623268847 358952034 420749386 304697973 655006972 658569788 811994894 736219729 747036867 749445761 806798276 934036334 987039438 932239335 942887685 736365872 744755660 556295211 564877620 634286602 782937195 497335829 701214787 422619381 769065369 201308827 990039467 680334018 962546928 367829295 627914788 233788128 667734966 401403412 426467940 632940722 680116480 257028368 756071388 139218984 870092092 703953159 972333244 786482756 819707193 977677025 995588932 514021634 649148874 840315918 847462305 51819516 627420851 881508801 922704996 286370561 982187163 10241122 212200502 687861101 815144499 822513081 932524955 395234982 814228591 152354124 684949264 283864588 872494273 867635905 896283212 488336570 522696019 118483124 878138949 201253201 450843462 357171013 825693453 980190186 981439073 145172126 711758577 302579709 975705970 220386082 986593726 520840406 821850571 496981829 771795447 580582226 925766987 597118599 822539022 323762358 663261065 658538996 759770389 146865737 484295704 510436831 663030297 630388459 909350224 335104351 808521694 907392439 912365789 511977962 582914212 522855418 730960326 380842683 764287574 562912035 635371732 173458155 597365600 787312345 848038459 647319414 789945497 109415600 844511204 977515630 982752243 547510309 559470873 178456184 217440206 846983796 860560635 897953839 950992071 669395250 727172916 419718538 550127784 732429250 919548058 632559398 660334304 125085359 921365866 283946745 579321455 199239884 984473117 20808257 793909182 393761754 627518041 639614193 767952710 844158132 916855334 190025067 662349693 233921334 346060468 400229773 914502768 964666494 983309743 718306476 914450245 737679773 923052660 179403494 389203358 916745480 934899570 628890579 898716491 635553112 858324055 226975673 547530086 588038602 802051256 246474044 893835936 747553752 960096238 452741607 707471168 417401680 905825138 91033576 966658512 300578485 746981221 691069547 798927403 360379703 572910637 21135021 968374828 958726885 984290205 951764459 988889223 987066325 988180913 574901006 990623710 916666040 981778703 461290650 986855265 20287109 508862718 802942494 808619782 521670573 809589142 313552517 414469969 284147283 767089924 314087140 860243811 877447592 944764886 675529828 968191396 538181217 742358865 181503364 777755911 861782438 908492753 847661595 921424320 73322742 672753944 569771444 828937919 167418395 742726155 186821865 531062448 829332169 931798645 987794266 990954966 268748575 469685909 230075120 705579500 946041725 950332264 475828318 732538097 473606798 902144207 132311477 918024832 329792314 688019851 739153196 935335488 317417771 818702080 611684356 615205391 244665201 728773030 617904076 743069072 922253203 974624741 341618544 752716163 716307409 914880961 819526238 962166924 589207471 800325418 355783776 517741737 434432990 450188423 857671826 999060282 102310945 730314462 178323405 823266539 301401690 887092525 37872515 406626350 543952134 728626345 696184769 772291159 634582375 972567211 562021489 722499588 758177137 777420029 369851052 521885056 624057849 792621567 749204679 905017347 147228428 284860316 284928967 912885823 922325413 929971187 447553488 542439543 995868368 997288623 604899258 901827476 608766970 824537589 683648154 773963084 63551064 910434232 11672359 899118263 364537154 672436613 627882322 770241290 269531831 576279932 13291866 670796288 730241939 849279427 9076525 197823009 871294126 872689797 120599019 185563167 26345192 672814428 183775068 879218232 999219851 999386134 58429042 793302611 234595835 467824972 122428203 188317796 680655497 692888827 163409958 555897170 297937994 392423830 597208419 603164629 597059144 925534182 330724869 355365532 670478012 832251349 189808788 395251909 845577410 928249334 297762401 375823914 800218968 811751804 105950377 364904797 274159415 757660916 368174911 394015659 405164808 479139839 595275149 705367402 170152283 559509784 805370469 809694182 591971465 809115121 162767585 551430003 169989353 319337093 797232192 805332530 412187537 921444542 524366796 852458892 347289622 508998110 41150378 996260131 275829923 909184091 126604786 608403942 745943013 955911682 179116340 918836624 453862090 950254613 122574000 685821308 775368212 892990450 892875596 968944489 110272684 777509383 923581754 969677003 532464555 747471192 572882799 718077175 530988663 799613102 706233912 886261781 609458878 752284394 939394813 987929226 252040701 282036417 526115580 615227084 812797397 860417989 641061997 657772672 411321186 792283800 529301322 600609877 868577868 890904215 167104949 451670705 659759042 821932125 306186050 369826670 998028663 999004089 932705602 952716986 914905700 982871509 649644926 996218726 740671481 855424515 628673651 892826977 62614889 735140282 172434962 737122636 515391479 598494499 204433946 478735813 839364708 905573384 856958475 969100522 861271243 916543924 532521912 791733680 659620364 741837287 412814927 751228354 302047661 435975058 728596951 989934534 766274276 835772703 773463607 786405762 315063805 493878757 43569653 360309152 340975918 914947627 296885930 832096478 820357060 842100020 354007544 692084147 610032571 637551420 467878206 714073533 652649691 790180016 918930535 944809928 364463416 592612536 912943765 916454195 991178484 997438924 647890203 720071152 265546547 437992280 892147754 935172697 669962091 996112441 830763872 832530504 691269392 847285394 369324041 718740005 190457235 841440028 304079461 904545965 653686710 662347858 132884565 944682924 233636524 920818864 800565125 976272752 981365571 984651989 364270789 549337725 487550586 691118380 62101118 413621942 651830027 988314697 332791395 579620768 99735121 472797559 121255403 534490440 487351264 971241832 277191209 720755616 596647274 897490200 183750665 845366646 128830873 685275702 635081937 650617258 55885710 242279618 644991894 853421420 87206674 310775302 232357537 667207714 608919968 903698656 660380357 877019797 324540099 955702996 986461572 994288923 143075706 963048444 513111446 649314050 702360383 895350509 193296455 966176698 905299710 916461296 166164610 307321337 969780098 980543300 782020119 917853097 661226674 670670573 198060242 567832370 931436117 965777508 576651248 806963013 278399730 378620270 802090583 964770369 420669831 857569341 774704605 947425290 233461460 434452383 276475026 439101156 396649256 755261307 556811235 574096646 536014739 870929408 932389530 952361269 550170056 585623658 417600842 922928824 610088174 697116616 256954611 272615095 354515873 820626037 72718366 496282391 343914288 446631351 124238274 562511439 489953040 932275090 66350241 930833257 668542997 713851668 260268580 497409890 447932194 938754247 792697839 923536952 931004630 945089792 604963356 849121448 235124606 725598378 350329613 520238921 641088460 704421049 16647159 418291349 646478853 849235245 54991494 620016689 274586847 468177700 525173833 713083757 740395029 918757466 781559868 968456389 978833 353698637 623650216 648322469 697653061 703288881 749381976 835975772 583644943 906849699 22045587 428799187 896556766 989122009 426131796 772374311 82663027 207767905 891574372 906605967 945307065 988607472 951067073 992359370 328992005 429892163 641371640 933768602 438282181 704679343 580446308 911661290 19628103 50331308 716390946 936525008 911688439 919871459 156378000 328115253 724503030 963636479 129283695 393114816 691551623 808094716 721078746 915337575 105224592 820614920 732292260 967350718 623210403 661870732 945309393 972868365 148929410 268058902 681254745 712881663 400397340 642694811 649450765 668725921 996854123 997209160 348130456 803949572 373372196 821812709 580801507 914166199 461916845 930579083 307409126 917671644 181649843 922957689 333094195 352626494 902390470 993354656 932175806 998060906 973053707 974535148 537524431 948373625 95703292 752385198 211870825 610965397 988150880 996090248 680244790 704377046 841523309 998766490 303362031 905776725 599476441 740049640 291390 680261996 239751841 283806754 504724242 672103625 441223269 780395370 902795452 973454132 874914527 965912478 283923252 697500288 200919946 397646602 815996705 883974431 985398918 996858182 429970878 874406915 124722078 145132703 324877834 725311433 840201511 975640922 118698532 707605224 814734997 909892220 208384305 643319609 107664922 804059381 66206216 412487463 370831813 413469587 728630207 984944211 17504028 945631213 457458942 731786743 846584418 914990549 609736452 992492484 87017881 414913502 703571071 862856910 81284084 553155686 982775553 991076672 709234292 968296150 91495865 190313231 735984007 971116583 772391076 800058774 24916930 260965164 238858381 748856645 625358437 676187046 952819965 969281340 157329930 721607485 874777244 987520050 566987742 986301622 261006393 593267374 875277008 893381981 74924227 748884494 500135242 950592951 180848322 370990855 4330406 361544579 766441136 923166386 873149785 980400400 941789464 993875176 63317005 157965775 683651177 818477481 816469168 881085552 182046328 831035074 609130467 642785923 454910897 570262228 844798696 913422961 4284988 230092421 263956111 786788807 182653049 381909088 406191248 788412497 138023526 138599968 540924772 665647182 46346879 270210507 649238420 819427268 308583344 739048795 396554100 542977687 164096145 325324011 16904023 428306851 905695760 922176743 442653696 978668964 442015277 477935527 814851790 913885303 612297868 929169531 483005468 773037563 967423664 988884116 836190351 957126924 949299337 951229594 723006196 761891257 163833126 661089338 833788957 950027036 278659630 442237141 982378824 989700219 23628913 958514143 511346841 518585411 239014488 689842295 949814660 981895851 412473450 614994924 597105623 929131679 297357057 481184885 865323308 948897708 313263749 592352533 156570310 745482264 155119373 431372154 169281041 686622853 649378740 953122339 550412321 991991183 134515558 857972152 20230862 429100704 62008362 790534667 708086847 991174696 12581922 396745436 768963931 771714224 366677664 926898436 990087211 992421139 269054872 828992449 258271549 724516645 945223857 959457975 421270366 718178548 623061926 866876472 843622839 933719558 852491972 904965170 203166480 296533859 216533356 223307520 417567663 605566195 486962230 975140116 265546097 705547903 622992607 689393116 265217439 532347741 94963317 921054663 953246501 991539280 276459229 956892222 46257489 494853900 951112046 956390054 917198049 973410838 831547883 836616628 54440292 770543229 824484412 856330097 565455455 844666234 873443167 928912980 492016073 962275958 121204599 821233784 883384072 970228653 996715090 996813385 607918043 934990081 463756847 559841681 157737105 729128843 205248732 947888219 893556983 948519193 649154923 837534767 458159634 843400185 209314856 329120594 339688688 734097252 924064224 932572578 854095031 877901874 494840818 860408901 285366516 792994147 382922499 725528603 1525641 794533376 60831318 537703966 325892509 874769504 252258230 698428637 741999405 998483077 596032451 851310594 916809232 949709979 251536298 481643220 27707763 303472453 33357942 330511372 602515873 805344505 418860649 874450359 459786789 846623533 39607473 234880853 253464043 292679321 396942866 619353092 233021448 823185937 493175105 638009209 733697164 993055563 382785830 788763182 162580330 409246509 709297461 855477301 384155887 646072382 212453489 495603785 64049247 895772992 990355860 991753796 802939876 863758266 280376833 354352743 960723616 994283094 779733570 819085338 994395702 999048627 926066852 953956986 24373430 991893080 965883754 972914053 198675390 500226107 724143752 787049185 4576564 703305873 491586981 604407496 731287505 877963729 571803662 691010230 201570371 249460017 901368733 941619224 578804290 905199354 564188088 786982220 380840420 602970444 530871352 703542189 583557595 625342448 663569889 921817124 304699787 320133915 226756916 803205054 899582363 987256794 379557055 778914403 727895020 910782205 831653893 973283308 686885284 889571597 330425790 954566314 167618534 726463794 330509282 606741724 623644208 695968766 588146003 884358895 552053884 812128003 746653021 909377535 901364691 972583194 398401317 747011494 729072400 900351831 137245382 996983649 349040064 785242842 680494956 717133512 41950294 455492494 324971135 802357694 946727311 990012937 87864169 284951351 384331428 921521382 553969983 577587082 941015097 962261013 361895452 670114268 21932682 671396279 504045426 998852513 87495500 789869315 862917531 940632783 256303240 813407758 144980503 585972670 8195869 655409154 507796447 937064954 837665202 851190589 180050701 872989308 407367776 494340497 693515870 930662855 457617009 790647494 106720011 309274472 178377851 800148818 195511353 878451851 299622803 711447310 175626911 411883565 629202833 674046860 991834261 999018579 154780235 590029977 60166037 636425253 553247738 815282984 663059551 929540936 920219866 960257950 194664970 476853152 863528553 864917073 353714347 946856509 620065590 759823059 516460320 947992906 263852678 716173793 170135125 761313649 79171827 287322164 191541703 800692312 488671591 956055776 831780786 839612127 704150694 870119962 736865584 836157981 68145600 846532268 929586999 965682842 12488025 25494225 558239835 560533544 800626984 939055365 832372878 954886532 564841396 909384945 304187604 353546669 71394652 741773125 183572758 306089788 197739812 991013509 658317237 981507715 289808606 339152844 633594417 815332572 699271073 971856151 945271042 986540985 160336588 665266731 755354413 892851464 189758642 962302240 923290425 934889475 181765846 904326608 139810052 717780254 674310196 792659688 559728177 721879808 717503249 974770419 570720458 833038917 790306146 928472797 821633700 912188887 663233791 735612916 567175347 681065120 914463888 943866093 225728233 906476193 558031394 638689177 676803681 686554707 128884175 364586766 149666728 492455513 636255368 734360847 212772199 691234031 853923860 931002011 801798570 915663088 466866696 804966199 978963092 983965438 116864277 690087859 190263612 265661453 869223344 910102281 75304623 744133924 530288456 939385690 448072907 913021705 339954323 770875217 373705902 731337462 978644502 997447849 819647819 834222336 413662420 500186473 842951247 972064855 391589094 579925727 858301485 948432393 662588982 994541676 632189308 936317465 121194789 286244825 189425903 573842787 114550396 819248307 991840332 993263364 66271621 206963136 765520244 878897293 887213236 889889980 539891780 742924941 955943722 968722324 285857749 442920259 952683251 980073093 916349191 936050556 872435804 992037889 549754175 583797582 843902734 963073061 567835515 808192333 342108647 531873265 424187809 941975163 825994308 952272722 951784845 968064049 88429964 364209515 957074622 997573596 947346195 963438798 607415859 663975588 95570909 962578165 365625901 644815555 565475667 797488304 479026687 589877787 198309865 545340504 508151613 602224304 67109424 288741982 252191134 739750727 994052663 994490924 360196413 409596319 320629150 342847275 790550305 896983393 585996975 781036683 870306586 935985806 131087203 867458221 182254840 718212407 754070480 768968326 495402925 895665275 909499839 942866561 493816057 593319688 622190794 994423837 668966263 911787180 998179816 999264888 817542142 863854332 920940235 940420670 23916334 147025546 586884794 889904121 68736111 731913843 296255732 473979193 826329776 999354423 358490015 505075528 769397678 985687445 590048104 838328214 600888912 851524186 477834022 697852358 361966539 665832348 308722913 770336688 79896690 444067367 437865680 454927574 635993794 981940477 984683536 991709651 86227388 885403138 359162115 577881251 790890598 962679841 275813957 818202656 541527726 730104479 627777070 761114960 709756352 994590632 937366053 960156280 300889149 759941554 592026975 777227479 658634396 845012329 474026608 524269894 567275200 595559192 983082287 994574977 320691746 403896589 568714312 756977520 266115054 863779526 586548543 718059781 298618571 684318730 373327617 733575351 63686614 256521634 76503461 93786169 905178435 976409243 500424893 693035491 66601095 297308157 229284914 991515570 818117002 854309162 156953310 436945035 528602852 963849950 729091080 930149210 487350835 950725520 69982633 130005440 716362174 880242444 546463576 790337277 649908808 978054305 341533825 881649668 204565948 501155940 440844517 516014591 360337797 426847998 780798911 903247816 355835460 904968744 785192820 901727508 120206028 135739348 405575781 911461541 667062004 867476876 291657621 889990380 901277060 901847059 845697028 931169132 22709240 200555239 763591119 968518661 187260524 607384604 758248685 839503140 913811934 937630832 256483775 567921248 491052506 937720544 264767816 859311735 196550378 932550665 103868184 620218774 348252100 808786640 963442717 966243525 976793652 989416245 972264144 978402450 127801115 245329357 605193865 651812574 586267329 627290438 424093824 955393107 383100806 472134308 848341804 917873243 853245527 869880885 245414254 608235354 204234771 581977574 922192788 996496760 236593214 925472559 286838953 863715685 494187868 970853392 160187176 826809404 336200585 938831564 649904759 666721891 426500225 929700180 899806912 931894965 57580093 965876298 222790505 375334474 980897652 985998330 285414515 977105121 371783245 384467828 393827208 794206415 945544844 998580542 292117372 326532561 745094126 915810951 714778389 761240187 927947428 943120830 167976145 275145529 410658245 606634844 72881595 814363338 378241622 891447975 674653011 997633678 395697362 493636639 493651070 910502280 92443728 613063771 804018272 860687779 602165003 728719572 826174394 896057097 635774656 964209286 351169760 763487290 564146124 597892079 300174272 347618913 922939233 998643587 736110646 814480786 798969816 835006373 876394335 947606636 495330832 534731733 322941252 962757764 109031811 509406810 524400877 555624264 828054379 958749939 935336495 984322301 986406395 990014255 942360934 993300023 925119080 975261818 15707082 943522651 82721546 265971339 677359345 785582052 461742133 567426785 199481491 778678129 971182128 989705740 898697162 954334601 968699151 981016392 939636385 955817798 915935151 930714600 692615559 956404789 187710600 279994390 519795651 646978380 711300671 944042266 500585011 974298865 678113467 826863663 90602819 846925185 649515671 692128867 874792963 886652122 163391863 935986062 144066466 302620784 654134998 920156958 166220538 447767376 247538206 878107797 953662349 993896559 245700759 997842515 343089738 405771184 877092459 926739680 656829586 805613320 259611119 379718988 774290025 898229391 90862301 842683799 810365890 825991250 901786580 947654248 593821350 789146306 931975859 978554893 39673028 296549059 582500023 793943695 974306334 994591322 59720774 152241365 851329000 928551802 421459593 529301599 773982052 780286463 952034892 953523600 773823033 923467295 788371081 924114182 278305337 916574937 244056522 390973290 469179047 786635486 767674418 909062848 259938641 382859899 742480594 883257025 814123722 890760805 500500217 608919840 733799682 973884710 933054270 996021257 307378687 940304932 87931384 959557860 649781935 795345028 131707850 261914653 474956252 479529222 20038290 413599607 298029086 963348041 985747483 987965390 641875165 663783260 430770861 917284686 591078152 992189837 61667872 428008867 502092080 595286641 739431526 949657478 78142386 908101035 212178057 355202618 379545691 712455039 403073809 855598061 431044118 828401289 696472937 924927253 495087508 754436194 342190767 820871433 860767851 933829016 224306961 809698085 756389279 785673651 655156607 704872422 439812843 858383883 941794538 986896761 576745566 849747183 212353586 224254079 644562008 856908940 89914663 324745111 157304385 986899655 160686434 501722200 279556035 950582793 174204546 621511948 203254414 894461351 235723670 342696164 478176968 974357670 351936894 582143194 825083693 910676982 641047842 702380846 460245812 498151674 574239191 996051008 297055618 419104497 278332748 496674788 692066492 761503406 987680975 987783727 181280636 246465595 944653134 979830668 253959814 293087941 8118733 744712898 237713424 971925777 439241684 569349438 635771805 680186378 715323510 800960668 175475492 936113848 309281993 721140459 578619289 605869220 649159927 659816699 355339768 908138453 350651169 719240425 407228813 560163523 949924128 970735578 186280275 883926048 456124034 816531943 747561844 823332964 259095661 825746209 975705673 998289907 916403643 932270096 29416899 397784358 825810704 962693926 582501788 597551200 718613528 927128511 72916557 324170114 595820425 614585889 965940846 974491342 390424878 965670333 489942747 702341459 809532464 943280519 710901857 913269217 91212788 843982051 603632798 676218033 667920530 834523544 349446801 869828217 318655229 525816890 857267227 892598930 840125687 843462245 117367119 992723238 77271462 410925609 414251731 757837811 77085354 808498950 568563734 908996355 699291097 799290361 716724481 885471030 236784743 492852067 470349449 634701453 94597461 409933692 998780921 999387543 11452123 322358076 821776437 918695517 123928904 562888104 874169 318030916 169376531 756215857 499827131 989940235 809018539 873674282 416935659 714269836 211757597 229889606 244802856 457606095 462675584 668106463 713439201 713521345 239448646 548926241 865211120 963162367 911117584 949103143 330927711 705723478 30682759 432278999 575129405 787835532 223681166 384928304 392208538 701808663 784362978 908308913 55111874 717864855 912983071 949404668 76284892 432648768 114214458 480921765 940719579 994641243 544403178 604147687 187547119 199675267 61270937 567959971 469018824 661940449 706773787 723500118 188048972 467576691 815312247 941833913 795923621 806178425 456601030 581258752 935341106 954870652 733774569 741292868 489918350 509199727 789710681 866315312 966836108 974512056 356509358 587298023 694252527 904787942 169607848 997361912 848279681 919709037 595518007 889264126 328421720 401741604 396152472 895805580 343926952 580574747 699390732 811278922 701880933 907434862 723877392 932888011 586983236 982835164 153404669 603285378 216902916 637934691 369865323 713736911 933687409 987690041 40619560 231640840 132579306 595200040 932786353 944119023 108230442 715159585 98738748 426409872 936853865 961605599 384308409 601717761 227506803 512041014 423047031 971127179 452797563 474579078 516720026 913047801 650252422 816649599 922958733 934492535 287503468 870341799 371328536 882199649 660911843 766913609 485278245 678775443 743384914 775584730 48891088 778592595 383233948 861833118 940986994 981805270 845113506 955949612 795736695 884635561 103291854 867206597 53717188 830780970 826846563 840071334 4476310 946858202 238717261 828509989 557495692 674267007 72073146 576070296 1375330 140831529 167430055 783255853 552326217 748264344 404291491 697626308 646532594 997821445 249958790 346457497 567204105 569857223 446145742 696644817 659477019 956270753 568954440 691488437 16494869 583296008 952419954 970088953 19725450 854908967 319072623 454542859 473797635 987539001 771322460 848688430 152898154 395516949 825983330 899831166 534044624 781599031 440755307 800851652 798736615 924212032 51313162 226792019 888579178 997392254 367858543 443570022 987507969 994712677 451392365 649553003 791448186 839967814 763324526 933364402 388170109 784527027 135019528 552594674 866544307 904000841 488875444 945707221 651327093 959310719 275518485 469591432 831374287 920751587 27549158 33886583 483260428 781027025 470465015 981474010 70572259 734228963 110918310 919691553 882890811 980704439 464218542 716166790 12007699 742144268 83707578 739783583 36547424 242325474 378730104 580457337 693114453 700259467 882166934 969568699 849115196 962050549 932985376 967104807 509181442 926101245 641095215 830246569 25601538 838713311 636628397 778376102 115483751 501315196 285505481 979449160 567322393 785037339 643251710 928962638 75951210 547417888 763413933 825833115 861616732 903907671 397165481 494987450 54525734 939633187 326861103 884390228 648034763 982117590 568687825 694497816 524054854 822633698 782644119 966976381 374179772 798403182 692395699 705072504 404192946 923945448 945793959 955226684 45540791 56945726 564904215 722199962 380136005 799984704 873788566 980833874 914351113 973782960 10163700 627772143 305841034 337256599 124052469 562117407 68638129 127876073 654232382 758345323 538226685 603876456 631722638 996716082 192969101 844239607 159190515 584037948 569207539 949615364 172319084 410160285 370502512 625854945 680954415 716594343 23068861 427019596 533799073 632409031 617073088 667794804 32456901 779600178 402097573 901101247 80542387 656013230 421438177 579119895 711760302 950396165 257550527 362346184 137324580 940531918 588747431 640614658 476576613 545498198 435403936 993439614 152895426 330680530 504625886 841187708 181553236 383049926 323585919 413732515 985517248 998470546 109142601 626184359 935117307 981854986 798976117 938013615 477316707 665301289 913103177 958494512 747647854 815594924 525131394 928288341 429847677 610294085 851063594 860365877 117347302 445128072 860199864 877606405 996624852 999391430 512518883 557091333 202879599 800251474 960416663 986098989 982944833 992784000 996903929 999313946 746365806 898031743 822848222 917150518 329779817 485107379 220986534 638487200 478812397 649376269 146638248 924818379 575833609 995020899 208426291 420344755 674364160 717596411 776065380 954352971 858966364 866634044 816566803 874853602 58786427 812604508 627406247 819865047 50006251 122214191 852929258 969700822 824653835 958515696 805469885 981581711 361465843 393892405 45037568 230694993 997605412 999085768 451417605 572897829 433219414 858595149 943181415 947343652 353596017 424672191 222186314 329785637 29132399 201894032 708737876 775306156 298701516 456979631 793439410 960638253 316257112 631677104 487699259 625748692 734009750 996169020 612278986 665468894 581202861 800561198 852754701 997819010 367346834 668289982 67696695 788316081 646160045 813691211 333240832 591621334 21958013 929893199 944069262 953946705 688678281 720137866 475329414 797493286 918226381 965290713 412731456 879900418 462559420 763128711 692172561 696898878 287339950 340214858 566564738 690212333 198252183 671305125 890479568 916719671 816381545 952158097 928449410 979350400 810222984 972918575 289073529 933534631 413401931 950099052 35737746 841542768 917418782 925447537 131262042 523633907 370035608 627685803 591097777 609993968 486379048 891071007 816125037 883303981 363368212 965295016 662358774 742807162 492614885 750831622 847465252 882621794 530180763 872035831 967663433 982448579 550692804 693016975 271400720 764097253 646301868 911680961 466920194 549714079 293789434 870004525 242877852 268640282 762432159 807496818 446249380 501842987 140843603 426297722 764217370 835395756 704336126 845206883 457244301 968977273 662817481 753879553 431787771 594794594 606028220 657825719 441411462 939007721 32547790 204109125 443972656 554092647 284523668 650582409 194155336 273375512 863655310 880734110 74214571 199470140 981436041 999144535 478489156 620995176 511700824 988687217 729206216 751668980 735999216 982270838 771124828 872902821 551315444 823015818 518156305 642376049 238477996 617862785 623952275 759889310 837162360 944290462 157694596 264776540 391514779 499219478 592866555 633396255 105009219 476540112 762877066 972545474 374065109 469597082 711025773 881764685 619452867 990000674 111112682 773099087 748385523 994265543 973282665 987406779 422786723 735849993 949276400 958481170 620243900 931809544 57613859 804222264 36137116 689988943 942977346 997024966 693215764 774836208 517725166 921722253 103730595 201078697 4365107 657823080 247102415 287357516 693522557 771101709 214343775 926210954 637507509 812495351 300888944 785748111 688180649 852724663 723515394 762397687 274294676 792632885 400181091 738776378 499079433 535776397 43932107 62489193 958474319 970915081 161032517 647121575 481185318 570566423 802762014 859955618 227052127 518480327 136594160 423999743 203370810 883085761 804062884 938986105 683868818 725413634 289657398 963156911 790019137 892432617 791764454 870747298 884409281 906040166 948101341 969967537 21579154 613474391 477965406 943932463 185467458 186658618 57523686 334372503 299855714 410591706 267967976 860021175 394243031 494322904 779041320 916326025 287122017 341897280 442465220 849185031 856282583 902222566 420463362 540286442 535191047 583229617 992971066 998443995 104844630 280229632 992024286 994932974 759306034 932610875 942063125 968224223 472989089 521173196 519808359 694773159 621450024 982837720 607058606 624269671 719423396 817544018 974020203 998680350 636525697 755739570 222345237 292967197 745596913 936603664 116341133 555623085 224791839 275826772 191533077 530689446 836720420 927972596 112708697 147316102 138780204 160130344 837422126 967342315 519120259 925718100 46002298 315151343 370469638 807052225 64098307 678565534 137989589 637176993 155534273 437518615 526785445 679610462 532278107 679997884 103662951 497017189 322418460 544244460 930424502 970887503 250721381 767630366 781581661 908938779 787666637 839960234 200890205 616009832 586913118 672304443 805636100 980176747 298614889 588935520 324131494 578610533 538238006 665401568 807257386 979914546 673831638 827175476 976754735 990351490 637961524 775375631 228286456 296641671 381505940 717977792 69256961 315303563 102125337 346076483 963219116 965566476 897498821 980559264 297016907 357953020 137442267 542099617 881975393 894611126 826942755 943070855 654251256 843010747 545716077 864221834 896037475 937835016 974087214 991087155 149698679 600332133 641740287 913552697 152740984 905449321 546088858 841458378 210731553 731000053 984457215 989979042 875174040 876323249 42091224 97333303 126442217 631605186 592237410 980255758 658008607 728080359 677333328 924696616 785806571 978795574 674968565 688263542 977593813 987366884 148501716 723375430 792691330 988808848 841446885 982156302 825118375 997835184 70293463 509258035 794498102 955554618 470210448 822309979 502050074 935567719 264790504 440364937 156657281 569112487 40613254 288216163 77801545 588441257 884526412 945725663 100916299 430748041 934549235 966454688 26493232 488926518 569275266 830189492 176127168 554068307 156321678 405547205 761896476 926176443 857396593 905015578 443190730 836825784 281227815 467910647 64953714 910263039 617360067 644773596 960287029 995497388 315672 746615450 379459655 881445280 351265312 914399467 686609120 847517357 77224802 406445627 83468756 806312438 308261002 604858476 420434051 711504576 888650221 889964578 197280371 306267502 196456873 950632494 232000916 686190518 61608221 541833375 222720934 439277806 943565318 944773013 845417533 913053874 82103775 767472728 215358156 461062464 130087124 470610784 339190305 416080406 854885837 939434937 460515813 518904036 260324613 678367560 216770034 415452611 108494053 459673704 387372188 859762286 182860938 555438912 664884505 935645064 540284057 548260478 788565358 882213520 105264308 891947512 192187168 617666354 309831594 770296608 942164175 957380679 44489338 421926511 487770683 823773999 717110681 763518483 990471646 995080773 909036944 948386495 580114873 721372945 274842000 781073825 514527880 673077965 877809804 907853873 158432294 325452471 526582411 715758876 849825913 874388897 251569127 527803987 3793579 39798050 564286457 778218649 746333444 859947886 982243607 984621596 355546144 821338361 139911502 680378860 419178599 595942777 774613767 995507339 3697999 925096519 178601345 244695685 414869158 725516928 976994862 991936377 199785310 973121460 433753056 669846261 292862925 478018311 805060681 960436005 518448811 910584070 197772477 942721163 715402293 809299027 443404916 725109082 808835364 895343831 720229317 754772972 264402665 700274571 86902119 880002777 334454481 719311715 913812457 976479697 894970571 997627970 138545384 611861051 501492530 972891703 523899464 742908403 510320085 568762165 909403866 956743366 791649161 797506054 135655134 327573220 3164594 102929898 36709993 329349544 357973071 768332923 312625733 604737748 311476102 828123690 38823361 337181557 768849686 938252021 12863806 976972160 736654300 764805298 61440438 887671561 370866803 401799992 980488165 982276674 441456877 846581128 543944013 929973982 624600845 798652104 196180957 313514437 123072624 457669660 73111963 204400082 572051196 725660561 856164900 861646209 818050262 824062055 725316267 768921389 486012584 644191456 914893365 920893529 933367986 946891795 194348107 363508707 718267342 906428910 981898272 998248784 381681994 925573063 6115560 604975487 161390535 936679430 894683489 925714214 380157561 996072869 342379579 404008831 848430140 855695798 171130787 770703907 736432251 802473819 682209727 810219061 658328344 727722643 882392066 953414104 552734244 824526998 138081842 859933394 963566695 964378206 335626361 483878502 404234669 507185901 491708391 895248456 701229729 864906745 603724425 638533895 140953567 846701293 798250467 934151397 318234873 997982849 277125664 924708615 559973353 863364307 74595758 152800392 428064972 496320875 654800718 792448464 483281516 862638833 195265187 577772231 982253 355987367 676192616 719325360 399896099 758055252 683425825 826412685 295184055 460540923 32179206 856176321 30206013 489219475 123603827 513436040 430512023 469400952 496787893 594263387 353602189 593097385 971154501 990594076 603608370 789907572 555530259 762420496 292543605 936751315 24000211 473864685 358566171 873525972 771484573 822440371 199104653 726459450 505419782 626288186 515467836 519561339 673011773 795547433 432213577 833301483 563632729 590001282 133568372 512357238 88111733 484439115 486342907 526617618 431701160 718639931 94455116 982654808 919699649 984384304 177141960 817556661 300412341 618837041 382800327 801147982 441533177 956534363 618507630 820123608 812320875 821345988 386990421 981073390 5130654 503797184 918563914 943256920 819467289 951964427 102902739 806538376 277162270 461426754 691034425 727358419 266757472 730173249 343674538 863426353 421693760 586447048 623150905 912942298 273026466 585803753 139384419 172044317 238417948 484639802 541574440 979675084 685699764 718668097 718582149 994563934 229397668 705999024 276535871 335273865 145048653 664065725 116264555 593315059 309795233 933098517 836260336 874303574 919797466 947252320 672886530 733972636 154208416 500408948 822849404 866662904 285886488 742420353 637249603 758693947 352858315 806836725 709907129 739015959 336027375 571918916 562610373 605880864 26430174 101529694 323828801 988742462 170489799 291816681 160879131 638772267 134625609 534500442 382778729 550660480 460924980 465835565 240446929 958028609 868093113 993404329 332495862 800807608 889431799 937944771 640094970 742054767 398258179 741673110 628265497 715846920 714228025 862047791 157537492 396956498 120421230 279002035 861659368 990260475 374281116 568655722 382052319 510322054 558422671 617472520 63001001 430098709 845365984 914248435 29894121 510485927 114126008 999253721 28301217 935266192 238508214 873755577 865654292 897840968 360609513 993256596 525237809 755496546 89685441 162365929 253328179 959729135 864202160 941405124 412384799 920120360 428674428 726740500 49029042 853155959 211688349 821193280 989153334 997986060 916727262 992718368 952804616 980633463 101597707 788618023 708252545 915073888 956916525 992216674 24262873 586297020 963315900 981582629 412715316 588051101 401214223 664692213 75329354 906014049 56877949 68540398 449651053 811117614 160998526 289724692 876530976 986501874 420065649 653393300 604084504 606083539 877605472 974513673 722772829 748133678 503441625 698820084 605745644 992093840 81354423 966152604 992207078 993472892 85865412 869137045 730220024 913205307 332451983 389756423 608897609 658671691 707941255 969902225 926072115 973972064 152250790 620487759 203688863 814061101 102267176 802049821 667782232 845244623 40349948 602711094 23275139 681271502 358958970 363286121 298713700 786251688 984195210 988394100 66340064 761934411 790051627 948854698 910018295 934613509 649700072 781299169 485197365 830126332 180227884 626688765 252138852 407707933 742576512 935444387 648138250 867683449 548006179 708648501 424372833 910719368 237454709 606976672 698800289 957157565 948529507 977657139 462997988 900169907 807522194 820883987 219541879 579095303 95805954 808307316 343369537 778815295 502510024 673531842 597331737 861332653 584601228 677857131 356386492 826636982 685378800 785602279 233519208 370981645 760882206 844895501 64258817 800707582 552515301 788121820 115746626 945735935 229212269 303015861 199712951 240463388 617007470 692501594 676252615 874168249 469423418 787583161 872270602 968067362 871035819 985699904 858638749 896293404 176092734 692879580 78477361 300467206 73701836 684538355 176831275 940285309 464994136 991220449 939885318 954440211 329503424 441596624 738487269 979967564 942958845 997321371 4738858 426732556 402542417 979810352 375967908 885466723 756722314 910208836 280447561 549344452 310111657 759260043 880488893 882482236 90298 437030831 594186891 796665680 734567201 772407949 308939256 485811118 338341061 440034970 321684666 974690601 147431912 960554847 872137580 903832036 335508595 463344001 417685964 807069171 113759573 154407884 642565455 794179306 458972164 732874665 197239738 779248849 901075440 951868635 723477432 796479696 757881935 975200519 573082570 768982153 48044411 825197481 892557789 936401279 130219524 560596128 823143809 845672908 22337003 454524152 637411217 896248036 801496651 991257550 661001109 738934425 660840890 865576563 910589503 955718137 355989189 734217360 445516153 925837716 667142606 700173788 237494458 803356067 994068100 998646442 34864173 545617830 47703473 246760052 464256352 839038113 129142222 888410593 34815947 626990828 451069797 457257087 50431041 367418462 630000113 644349010 818678663 941634555 234060580 762158689 885514849 990006556 45082326 652187482 391153237 710612136 823655688 927627841 159837380 725790143 927733899 934784950 438595150 767996652 848273467 915394686 235414495 522307255 470459613 722342583 763758565 994600691 883197242 942159179 51337880 128877070 711350668 847644632 603737790 638469890 580273162 689785847 403663405 680256113 880162000 892697207 379680372 974693215 174132939 648616223 219535561 347569306 448735751 688118087 472376928 648295373 787658093 808991174 744984039 879531838 286224447 969930573 529809204 557435752 996987533 997751663 713165184 741544348 584602797 943363444 553898394 830091074 153116736 347007897 320259606 885855962 461980019 580338371 437056137 817414656 892697598 913306704 366746497 521900590 795350056 899101940 86056779 903100139 812031866 923795498 195319187 858864225 539078932 766625822 811839464 853376381 593243953 941974266 966195750 972337248 307984638 782886413 676769267 707136402 410026598 835525345 113429480 418666376 979287043 985360401 285759725 621374898 505269750 723478037 652355891 830327224 936041324 991594617 233027811 843126345 13342047 980747716 693473661 948613174 286761846 936282608 143800929 658779134 407086907 730321571 223356534 761906171 962349998 965749615 513012863 547502614 170514373 648761009 980377677 996565162 846264225 973997678 72220089 834261632 686422108 916395937 103899455 145833789 611169206 762489890 704562045 811860559 158260522 466061261 24552904 247738394 464116556 528660552 617333314 981657045 249954684 395480566 856086882 977219189 637128439 754702909 466061309 704134836 817022389 863956414 922094852 963646695 651256405 704661097 867155091 901382609 800588163 924314476 989081358 996842101 164622357 963052525 4999774 202729753 107814563 239753467 469874386 564192127 415948464 535989199 493917278 535949328 872473470 922742833 367504879 897058533 645402548 852600170 421140932 933555872 304493908 410583001 504154922 607514124 270601825 681993516 724657431 945996133 153117487 591274275 744017344 887250017 955332476 987451383 349498531 408850094 622430552 817957091 213307527 387505808 97370779 426912955 480839221 523478772 139369451 378914582 116830871 346651240 124134667 557674692 377437966 921844518 122747424 701103755 641902206 967729417 633313711 667005677 549380576 709853879 307202057 322527328 639193572 706940172 676674009 861920483 111858473 887652200 734153765 859559255 559343268 684447965 877864859 943063886 30414086 558677467 130658834 500254007 11826845 235319526 922074999 933237674 604607525 636290046 914589842 916889569 392018763 461579163 512539870 968554215 321897651 750713200 931711095 987575284 111048760 171552795 318581725 511111156 47665276 363517420 538412069 577941828 158736749 621875510 857837445 998110115 817989772 897898291 704245475 850306319 524357793 967183274 756889497 777701764 537018586 726390287 885376289 998401529 538159339 801653558 123524000 953556975 723837841 887849025 399670171 880634486 295618685 304177709 475556468 736313773 658450356 711637318 316614141 824479958 955321438 985498474 797162178 972326749 343602089 960061302 598024639 974066350 997485226 998721876 353271709 477953306 636736155 809863783 498649556 890104683 293361793 473478536 720091112 804288371 86824712 257812890 532070291 766139819 336331247 675146741 78905371 983486852 607793579 860750701 512525160 761454361 799277277 989474571 217779814 848995397 520597903 941803639 427685499 952958985 871582657 874905725 838855468 961593799 751171855 827758845 773183377 841523423 554809812 953631295 409922009 706460141 645051569 736780934 995522849 995620690 441032568 623626117 738888517 763127076 622357529 846909415 543490049 946301798 310211887 787582055 387143733 857992133 264514271 436285441 190846564 258626911 808806443 969026790 922779153 993920644 311488236 680306927 283204985 447669463 305712955 433998497 489039883 516383322 580938410 788448235 321351535 344644619 253277087 728794771 190287070 932826837 998535073 999214052 324961059 784816918 976255573 978490163 798534777 877189527 391892241 689497479 505819408 638029302 895578736 946777149 521682931 876397800 76587323 434503873 257078135 623339185 281926556 391479866 455173200 487487114 786263996 947471784 411289689 688121666 779920856 940318655 489320543 780055454 126924341 518171205 326622537 874613855 748042237 913795981 158070131 702640434 780796478 812280697 636485570 657981730 729691138 786651951 518609770 578783511 647083249 688931484 531518342 604851301 61164140 886541762 423791489 759046965 13787399 902113607 405127616 476422950 140402724 471612528 76045562 293875059 283857241 902041154 39917093 469555911 674857003 902186869 610473725 823263847 931792104 990261876 496750470 797415731 24477498 133015637 498545267 812398103 360622569 941299884 748429317 902571168 386445449 482298357 724693279 737810509 191372545 900844438 954892411 965882224 15544381 147396131 914978836 947547615 358102508 487194597 117830997 994739172 459100516 542862152 913748660 928889953 899135729 958238539 679467252 977982630 191283501 825654981 436177890 962471194 622041637 689428502 479806244 934029749 752904546 865150070 226766734 681052351 4042698 202801302 975326145 992182997 893279570 976425901 222078826 563995368 905928886 923449775 532218803 919053770 851849841 855124702 938324985 973671853 364300395 889380334 125809560 658934528 586731331 699018901 530271777 810613843 774944990 787630428 649055823 888668374 187811872 856083044 13837804 206211451 12083911 955989753 51503200 917899405 753137171 912900545 560286756 607315474 308281046 656496644 945438933 946147981 686360346 997092123 477837857 679505215 890404195 999102860 819469606 886826731 994825365 999003521 557302331 611260335 289368230 847216393 995555669 999336669 14781908 550605024 284450189 791308639 771420803 853048430 706864060 738611523 581178370 897285085 393379681 439462606 518603976 764858530 466055971 473284007 317315417 851220513 506269588 991017828 625371935 803615944 751542018 769760677 82934428 177153938 193795903 366409668 230568499 414060828 482090161 865428614 765863351 911834333 134370390 208766034 880508426 904606536 106238528 359448512 954153739 982643689 883006931 939652470 606763302 976057273 701856916 897866676 652515485 762900710 208857623 304917782 400184824 610428343 267110574 450642307 431824467 858572312 577490285 844608628 66160907 672335526 190719501 314930486 137420115 604964343 191732537 712506669 917418418 946697666 493637800 807497572 933384486 970765390 248919297 821021390 582972656 676008031 110550233 147947538 338332 706206867 479793817 698987000 434793351 804318869 617546379 838283330 327122110 562097907 306810764 459623921 824189210 880614134 500161800 557619185 441277460 570525478 579222683 922668909 341747804 945832116 353199038 597296124 626586738 746528187 980783282 999052689 900438107 984511806 115182987 703043443 64562170 805605650 133481720 147306954 182293232 743586059 578759118 602843339 350810767 374089101 862350520 882614995 224242850 973379405 531466395 846299677 891475534 954405100 913029963 933282699 989345614 996468215 557336965 898118072 224002726 962203212 570081626 715754452 89643864 445081094 821805701 980782708 516839977 724799606 56170690 266707385 571151861 900115825 767629264 878716483 2908254 643684516 504577916 812142604 510852870 771060818 927115148 976606579 215231476 475386700 744087674 904718420 273060800 659349104 575648397 993282769 414878858 862563313 909493936 937650961 661150329 969153400 637844540 957938970 256408011 962787592 250163742 423715577 921962317 937758532 286297702 422301151 859582685 924001696 895625842 940438358 979641930 991701429 168939757 232066905 96824973 546124527 494213162 729384031 292830107 482288333 445465521 668860264 746895745 898826245 18847885 632005930 528947484 666212705 23753341 471518539 158027399 896194069 961363961 979954389 613450339 671236057 697490301 978800644 445092344 730627062 188208636 898875399 709820322 872034182 886447301 896376433 653130378 942318951 220238365 586767506 290317092 948649789 466206775 974473778 430309183 574765296 453921724 943598472 734657571 752464100 552163706 582991057 141972391 961335345 399261936 821895914 552552489 987495983 925081729 950908820 238202152 445983070 760766048 832964349 178379051 629207444 123251470 428965199 545020150 758924476 868676733 872982581 759783508 804805192 443253294 862160223 677914983 997300241 102180100 235549924 125830941 548832750 988555294 994926842 309502979 977173465 639295662 643625229 223716568 987974542 646318856 826723413 104810058 443583220 274317383 660253352 808148257 892964256 706884289 784528635 722877080 956317705 983791837 990573714 266085965 404638495 538312822 566815663 214388604 775688619 804342253 952826048 956750991 984907180 745578642 885219099 732330142 769079904 580271104 854427470 340445711 736824547 634764492 747882296 784366456 867641009 136123208 704605652 701369307 951290301 785953176 936308207 743284000 974755290 4861251 113307288 369894513 461318159 771868916 872705969 445331444 460388301 180017435 403815680 933091479 945199705 229267709 980613272 300939760 387537963 5164014 852434732 301699258 525886982 873199024 997344788 702192952 715881353 286954322 803740394 501449511 781194812 218805209 572472758 235936813 701376971 24591185 896011415 199067261 864304854 244428841 455550482 266425158 839064082 624046261 932247603 844392507 942561755 665556719 772965033 401070171 788931590 901917576 973644560 47070105 584641261 792999000 972658436 192156537 882207681 698625637 708038296 508674336 523325928 362593638 409519552 900901203 970056474 945952093 963278036 507802730 762639115 573226093 865083904 190510060 522893070 869202726 930947424 96133985 239253507 569281628 850557031 55003394 586653294 363321571 763788587 205914728 942022013 446285735 925049176 119794175 122123557 617006460 712931011 63540588 510712424 122858322 353136893 3060789 784353560 91128326 566642830 189335654 689691640 838219879 941282074 632663602 766459273 474709221 562475378 332789798 942508265 538759067 649817004 387077678 676158033 727447026 896363184 397629414 727631614 51758571 839396043 202501740 443711414 646346854 868524006 819395586 884637494 696272101 707755535 201047342 298731604 870699998 976416057 453801332 892934557 69296318 380667727 487148565 993359540 787488999 989795670 636474237 907148596 381202059 859519463 649641524 751821861 555700068 916553548 286355317 741240483 563749010 600560042 528210697 793085905 165136768 355043939 328228257 552247727 87329670 826315478 272788985 951277572 53123780 734886772 157159293 178829576 483441 688682290 636315130 984720076 792270919 921017474 107491996 234277978 61078571 334557282 147022590 750579936 366255841 519856741 328194836 505930145 368596905 742796908 473019932 761364245 950415205 977549458 809924975 860377950 579607557 660022422 217715563 990799769 813727608 920784254 176855847 710582737 256447839 320515520 177331477 810503289 668568443 910666755 884495804 901725222 855162181 991872318 618478189 916748548 981947651 982314443 339172594 923858162 510817446 846749900 448992748 735308791 396116819 652364136 930559202 991336771 178727909 918560323 246011706 983508671 544754876 885319480 597788319 743567440 401330829 825915407 846543938 929686123 486951281 953026117 129858866 946053444 202771097 213444468 770522732 798065430 764630866 931543351 853680024 868352358 332233841 942933269 781649037 832659396 50224282 183695707 152566362 896452819 814295110 890640556 545207982 804563154 798666648 886463390 764167136 775791576 701786865 792972813 977963347 979558849 854966439 864779173 508159665 595432776 600365111 903100008 338185002 534452851 504547704 673682662 13141690 205126393 363530211 434426558 971798824 983639714 749969186 924113316 44208302 956058849 895066484 902770987 756823996 807199152 874507031 898650803 477894575 722238853 72077464 745295457 916376159 951465650 491023113 835293551 324915590 998776217 896586689 974712567 884620982 981117088 445721501 746727294 187266732 896879692 888608108 905746154 152500455 399672577 77814382 80175827 426546856 754509601 640325585 675628127 938950157 989446532 871758854 960368639 995423418 995502304 904932482 930172759 755304713 792782803 730211244 886371112 120110031 276289408 323325594 487240562 903372646 912713077 492500408 521387896 761856133 917497369 834979386 894003695 313162494 346032078 757309645 907034175 543660455 882072703 228416114 268922102 702080828 960676827 517481498 732274954 514265496 978096978 61198497 433130381 428248253 936787890 174738118 643799707 722111504 747409614 894884262 940827448 275660422 569864976 733155256 762099607 959142677 967478593 780062005 957380350 332122373 854786289 82843542 142610572 26998928 552117423 975319173 991296522 483881031 758132639 504467132 686037281 288588290 719251786 756760850 830305715 658573432 676813573 546524638 932434289 372724630 692715950 124798281 438486901 912674630 940571851 909731837 936517787 954002780 962920427 505640314 528674259 927908991 963848390 700650830 858528983 147800337 239781431 369890460 388795366 440149845 690684227 633918221 814350910 815964295 915737994 818608343 864298273 3288804 329910563 208558017 744833632 743424393 983345728 815301858 876368548 690758177 738173421 76947057 930728869 616285364 858032908 103083972 223553010 194899335 779284313 305754972 962228669 491209189 952224852 183517763 579356567 978348318 980820224 337761866 527549721 203088170 290043050 686838721 791313081 719599802 743372977 361437164 395668661 291927740 668677172 871393837 940402484 548811448 816283775 413794836 811895733 898362081 972511696 589433053 962175159 935893303 984439423 559387738 829837711 584118268 994868373 191374476 445318079 589302298 715209912 843108023 877881852 507229903 668025467 467871433 823852472 405228433 711375926 37505561 640577949 855627337 897484279 574829344 825471966 974173652 993812432 970143825 999213314 958482756 972601869 604826583 633321239 44152066 602436988 71477476 500435997 46016340 631942114 656121313 991631692 898964198 923518014 775586184 823175573 567027778 743584961 155495828 810191310 394076701 796534032 703550199 911151982 872029572 930394972 32840940 406139011 772121391 825145161 205663687 705412015 225950937 889647064 405575612 948762447 737418364 851350024 910046883 992509394 956701331 988331624 95344348 719488671 646903959 682599843 62725058 590109206 113334176 200982978 731568985 849938120 88062117 615721781 494445362 565426114 16989771 23703159 845751252 859932216 67398796 872819052 493651943 738652601 222012933 557171895 44333555 939597685 620026151 864414401 100975853 903006462 409549996 727907378 485029393 678592364 619990301 667520070 698490211 825316680 246636277 718984594 981243633 994681377 257750187 905852538 672645561 843347323 953498820 966671257 890854848 926484291 247959349 940925083 249759328 607891425 266358024 322997105 230086342 579933358 337189000 979952039 780320613 990796522 360328594 767335718 90677916 905752193 54374264 508678679 570298662 608475880 252936213 573425147 449934858 963005078 334958935 351263345 228558324 492318796 637298851 853570526 967222930 992445639 481922240 603116981 945687837 945861955 511115 929262112 959898215 969350113 706317535 883980472 626440820 837482769 43362152 321998947 107400891 916080532 154686728 782137852 400993825 419841891 974864769 983097864 494598281 663842343 156641318 642669923 379712673 617678329 457071358 676718619 606407632 625825449 183218987 186829698 759764323 951590680 401542546 896561433 684551186 753073605 519094607 525646465 781987383 828631159 154241246 795650096 152267043 352426629 214770518 939906915 483577193 638003658 494002081 964026962 618993957 877335928 567511871 722251555 276610752 531346820 703329048 974110528 77607347 883981421 728654289 927459636 102323199 520544343 26939408 27351532 89228358 153201241 248457905 615455454 766466667 833118597 342367597 647251081 64980469 366479878 800488974 926316360 83979367 132176119 761448154 782178352 639857728 738044026 435935473 963896419 593406215 717379248 101398140 372940220 552502401 919208426 994370175 998312915 562379965 909014238 372129502 551951584 258354383 537441118 949304787 953956393 771300707 781045232 412210699 972258751 934244536 952406554 6358551 920385488 46706287 536401656 115571324 289997061 416960797 528687566 554435652 967584134 902975319 954211182 955951756 982429130 798085895 981171958 637092772 772261940 777428816 845016799 383696795 884860537 599109045 870191100 877011931 908948745 778958251 840015672 674459605 726264386 820657900 858008421 919079125 927890852 85707354 344180436 205870993 302676917 191895179 326720461 631942529 877580854 214554413 889349731 663076450 737101111 302925036 873823942 669778978 813851685 61078195 341957816 870918858 931265967 964070494 974291375 395610774 996457555 419849508 909430170 442219673 679434528 717264835 778707269 136182876 375309710 394536308 437355085 958010612 987890688 552174860 878600816 302314775 503737363 764140466 784258682 397601578 772427171 418327581 977090984 775289377 946524355 397210032 673175723 204152993 527499722 44546926 692401925 125977669 906839654 460078085 773888966 626717558 716578718 927160046 965020340 313835814 569325361 90645319 747045001 952888574 963582598 63562413 430357351 365747548 486739119 457014320 603152142 266835431 470223828 159322205 930139222 296877940 687475599 455629077 935632971 724780348 843492103 514995463 998796561 788873434 831207437 733989814 873411046 87701097 708250856 611261278 678654155 924639587 998068913 733155908 745873399 123143148 657339409 347399396 655202714 655172475 790537105 112384774 344056422 816181634 925627936 207244936 662342900 171896432 757935199 726849369 799574236 215909128 924852640 996115851 999261435 64826956 994754820 664575378 879241540 833690149 993470144 616864601 623102276 270899487 878434323 308340045 678190891 813861766 991036946 823464467 922474845 98340918 765817164 970935858 996702096 195039254 539978780 294377950 574472481 625939608 885342946 359109084 501192401 138769982 928878800 296430595 631631363 416098644 546642027 20828790 264736679 834085037 935867171 346390009 400536447 14421465 262475875 343283242 971634984 286538844 790724797 639025651 735516524 616131622 871895005 605027359 998416108 941519276 949040139 147895963 375342524 769072744 915782558 926033051 973106529 710488499 716450879 561857024 670656226 985129415 992795981 598280172 994544445 483956993 764262690 985854236 987731793 407583784 573680738 914250699 970073589 212943550 804456817 802938548 828166591 241704000 888079721 736434019 895231470 845998806 931429498 407320676 910592905 684012738 874150781 108145718 460987632 868792635 936294102 887917371 968732031 163244100 319231785 533545164 749887641 655868784 991640804 110725659 718173863 333654440 640560513 719654388 928102743 34970843 687735551 834035912 899016756 533189099 661836883 311561068 562596335 843911125 891248055 76680440 972738973 520880979 649683168 189538938 385659156 912177603 975868731 102810450 318170145 719569174 747966185 238397047 914110162 603533570 946408623 139975532 358046232 47784984 365347683 96793401 120760328 29320259 223543884 649782177 922389198 86709153 814798530 49203637 571994680 523792059 677317314 994996385 996560519 888247064 917964684 624806138 687261594 610579023 886478501 686677360 772384389 423858780 639396072 989494817 991710401 813051101 819623243 165878767 222925186 121999192 408393415 615706811 788741118 923852137 937654795 802224927 816754502 722356994 840717892 14233016 571856073 684606226 933273101 135705126 928749158 801320911 979393883 718859455 973142871 965844023 982314788 862245496 912408526 784847922 896189381 88339912 148351590 756254906 786236737 868295553 901208671 137157197 509578280 301366674 990410010 406705667 410140522 353699541 868561668 1581156 324165250 261031971 828488220 978474680 998730590 257365590 865643186 875000822 954566868 354586960 434691372 674295596 733601506 875882329 959126999 34088360 738182419 774010986 988455439 69593201 509997482 576642630 616072516 226731425 344406501 610261711 722712645 839693008 863942981 921482635 986916108 930395551 941467506 873633581 940599610 867372183 990502933 965796564 976166664 794356751 871603239 616794450 830299994 820251980 995898850 702893893 761305765 347155670 612398075 389203536 688090897 520236566 707171384 820336626 917454925 503686103 750026384 286499745 324554479 104453004 111030480 548918855 849193502 635278436 925335540 626331016 793791696 742137078 886820243 242516233 625669097 7542338 304730941 222414998 289666294 349760365 885105577 455763720 539711594 468882059 470608197 91652888 793566316 20106826 333381375 358642312 491909866 539823898 575681517 720191222 901188847 973481906 982596493 637117086 871038202 854416309 887952372 542743128 953442354 347876814 776821848 602817402 759208874 84802062 819055255 826764463 830576942 921289150 999110627 54757933 920057059 245320413 749654744 924592461 957376509 10080283 739403978 390382523 566635990 652804017 810177807 189703432 536566183 493442856 570667309 793756348 861406152 392798306 700536569 579854432 708529576 886548454 888270117 140814451 316588820 354790928 635302768 652535911 754824211 323843923 828320359 358492757 914531915 57887946 164402274 337079067 604985175 665188722 948013434 482060970 572478477 229059832 989717319 966881066 999235710 350528519 465001087 117119592 485416612 213910889 637068778 160652695 594598350 340402272 743691683 134764685 924588834 843246202 919535435 602352094 676507708 930342567 933492109 63146525 678488070 27768775 519298945 727056610 810632921 315759069 842022638 649405113 857448967 82440464 902826660 321891032 709378917 787796507 929730962 750560887 944934303 975143470 984920196 482135563 905910585 240301024 416801494 969815333 985089231 583698679 722420362 966948053 974714902 525905345 857133733 477515809 980043738 11466444 811945294 241122997 542358672 780375472 906524438 376573651 624761147 720179081 881123430 240789470 357515226 7344974 966440292 124188655 343652682 89771405 161127586 872574724 951671002 331070943 988078290 882623810 938143029 313704339 760727503 686538658 749943255 271334092 342186558 826993106 906917135 22339856 892573082 467181814 593000198 187116163 321275864 432864521 567169479 122278336 433958619 410096347 804348603 660443190 801457874 897164368 985118678 958651532 983276216 322434644 899205953 69785838 785771505 220632053 827250304 494452902 570754073 449188502 748544549 792576893 919231006 633035237 727656550 629944390 982647806 37029930 343675222 191442833 218557022 932151571 987528990 841057888 935170118 28671018 247527805 764751408 865690301 494167256 771184674 444067224 577578290 732764974 753467853 720671226 870069541 353347265 684004512 196845876 569947872 989112584 989903408 712073548 911904046 730507532 745123668 108891124 938572644 920011055 964220971 593905365 683826217 800656364 888265988 7708291 918475213 559297451 668652026 281643012 539384533 726981168 821633379 398896840 756417405 28841689 453720688 196572816 503332940 598113540 851932520 628343555 948894386 962045462 963338256 340829904 984471250 232432630 438117589 449798914 977365808 280387644 768049275 94738723 713688889 484700956 938088279 378655542 457871891 902309360 996159265 998773359 999380574 465598899 946070033 827398977 944972666 821209530 879430376 916781413 926739235 846147847 846765191 481603817 800500277 268184419 885596147 500806022 861124802 72505413 139163215 6191332 626109838 650118944 655030673 439597299 605866787 574118145 959802794 948711297 992319056 773091708 790797914 798325152 909337539 515487703 739059560 40408231 838654038 174855945 927053714 936937707 961113752 789570786 836489237 25421737 144054899 768147809 816969720 450916840 469795752 833554863 866064839 436614088 547921475 983144812 992607755 243193041 338750485 251978402 777245391 860606469 993573513 429322375 904345254 502488869 785429184 127113887 896826899 575387172 806298350 269840454 828895064 441186235 650699081 654812236 864117187 738137492 756290609 688107206 949945350 29810815 602982112 893545142 943582101 556388481 885612907 579877188 648292900 724276822 827345630 982356812 986732760 328719007 770754555 921766689 938242358 462936792 900613128 324364953 335744080 698705534 889690621 998463143 998682361 172805953 861734873 839600497 934837996 609957880 809213724 209364486 779364302 368495809 790100518 565051708 687255331 232168372 991197940 617402143 808827406 267525021 298265683 744247916 845920035 481447739 699601065 488874594 645719248 510537705 810232229 778576881 957005391 603212804 826114763 209752970 786523023 537864231 756511243 26756772 201906897 578924608 756890901 149773201 634472140 567571441 604229659 189372416 793108856 320769879 603339839 138949268 799934900 365246282 540814650 834672721 917999480 686227001 888900646 476541701 767016778 601060084 962136752 45056947 141107353 199639921 617434263 109747674 307706764 283253203 641816434 228086526 866941057 411356554 709977617 931229756 988335196 170297350 409232368 208549367 583381373 797840059 924207898 509626541 839510907 410727784 770691675 984014331 991526270 929637152 973459751 920296813 973238025 412256975 446419483 391600502 594523725 397736878 918127843 546048801 654157916 342061359 679212348 100660701 938628048 685494404 914028502 151140304 773110684 634221054 872902896 931555801 987268117 791102414 965062603 764586123 909948737 537367770 566227170 804293454 934751938 71724546 657068358 725798301 801418457 777747913 981830596 995623705 996611505 83108574 392877723 649648110 961180781 117026720 255432674 434174520 765760504 985558922 996038815 820620867 866008529 99574306 858864397 569554006 752539245 762740778 986643246 556782654 973685593 571845921 651611498 828850118 956332150 730644336 879166358 937558024 968774614 921550147 923381567 861224021 902139005 924707206 992767834 914022169 941733513 980865303 982367126 575508538 998379055 10000463 597747652 970420619 973828302 4048128 251919717 620632566 946808801 792687699 836292952 547650792 872965593 950555405 967896363 33236433 74114503 825825286 888034211 751021611 959096286 638857256 878405897 696440865 775299288 591204102 847840768 829955148 951962844 282480380 338378953 186884982 631229563 187528531 206723931 124686918 659019377 524953266 615912865 243851195 373280960 438962279 936292650 810673351 910631033 114689248 638253260 35770096 67703612 585071236 927593056 247677754 468618499 868521257 879775074 900162422 992155302 913502108 971057788 417188006 706010226 875822421 956270311 507411546 910541467 40477809 115942221 846685398 975935851 901550842 936018127 90999388 762298824 512342919 573456995 760598348 813855122 78556018 723109663 988977735 995867958 102432465 810339798 734162583 843113969 40815063 57142235 58359202 125101167 923059756 980463525 325407658 848291364 947024699 974707090 475045993 509705797 335451897 868097112 205348213 822137636 767379968 986198483 573274791 591624065 42722495 555156846 615223675 992482750 286080244 377051718 603352362 987988861 578654000 773446350 583936674 770145846 904352086 987308282 290354442 783560486 696441960 894577814 121100592 224633132 92135224 614060905 668610853 684719789 20428399 306823509 36473528 125490514 850957380 886495341 931027956 943423887 118549125 180666557 573037186 811050007 310779167 850383643 831028562 903435200 333582764 793047129 382367778 873344444 459581334 717323274 537394263 725932151 226735881 246850912 33498898 298981330 306631104 333206337 451849131 846915651 93705689 250391368 514663459 706682226 532080405 621873572 287419315 636112678 531437199 668755790 834010151 949895205 600841168 667999492 276340436 839613368 374548373 552467344 28969100 213657651 944391203 945769636 361044561 760147526 440595193 506033183 171987764 958959091 985104274 990147372 163339028 603539122 484150081 712368231 924817848 993270174 19998496 602042819 259665155 501143151 638666759 787998432 708958732 827558856 214900712 922331005 90915797 147642231 556050718 701264086 50621073 909069246 509864433 919801804 89415318 820867858 604477478 882042544 282634491 978474458 931510242 977449382 546777357 947561496 961209045 970673671 536704369 787489850 139498436 397279985 743903807 886193668 679614671 994821256 795344185 796662226 25000153 450270433 122856118 668610688 144148723 787880563 741413360 839764666 68563803 851320289 358777937 752326347 55107954 782663454 235429297 432464668 641308444 747539171 991719821 999304057 288028305 846405654 570612480 865976766 227539191 863334992 567432869 739391684 450512610 604503364 804780792 854134602 833257514 919320576 92555212 675647468 461323437 624656200 280935229 288068153 119865638 783329300 441514961 603337176 775293418 884986571 585147809 605405777 400048038 400176944 22583439 39752629 34712929 415923509 804131121 965341106 115241872 853284187 904533748 939937165 611364097 919761230 171597625 231623358 798453167 848893655 292888520 623983403 221739529 750979064 747346351 792684536 925472143 958482961 868165099 936644688 552899469 752092662 702638466 907762934 549805482 623759142 756920853 939668767 174858321 561047059 924809563 983538237 305741366 369583041 805321459 891620517 444301486 586973083 728779356 754514937 69251999 539781318 962230006 970843967 987614102 999281390 864532255 954630398 550829154 977633946 424558006 967782051 544849362 815102930 890340737 981120182 948261118 963687563 557533341 580931617 489480665 949224631 909376633 918741206 21759997 116422346 755387351 820999286 457931217 678698022 339589079 658785233 350972473 932999602 385671639 946620830 361003111 968297395 383941070 726212561 815259237 958876474 752360717 887911051 683748903 722403454 820874265 989678938 699160203 718727304 236591294 387052773 528918449 727164495 812133902 909394694 604698772 774889782 867603404 922743532 618035618 937957951 308522836 613501683 517464624 772665050 800778313 892223500 993435625 998522024 807298821 854081982 315094826 865641242 769129048 770218314 447471910 520855950 464342723 987003833 114504002 429652469 568922348 634036168 517667957 539276441 167533068 429234217 700638477 953912289 473749046 714181573 660691614 962857884 697111177 908920814 162374057 366174715 625330407 866565439 747007021 990787934 139430278 282044640 968243138 988849394 247038929 395687079 902200030 995466884 579276847 642422103 412196139 720210095 902123755 902420175 487603609 938777218 452038739 763860755 102723193 656895778 408999831 769102126 651125692 803946425 15750156 500520644 696354325 801104731 434469319 594659575 295869029 776913506 654691072 786356729 793372713 824974437 217707071 581189652 897157314 966077055 492011895 839625182 38696572 449563814 764539399 851542913 131916731 660314168 785326771 964464876 500879085 623272689 909624349 914605318 956593794 968490908 185714994 383298258 492885718 900772827 619233864 678812503 829806299 858169812 505724515 538986647 846685662 905068023 599103022 962797774 599340884 649935068 389126056 478949008 84426143 182990059 343567266 460522279 307850961 823918491 517148452 860260273 531310026 806215759 576696244 770865383 230459831 661062839 996546970 997336331 181521802 673847864 382966329 947239116 711057653 829380664 67211118 669038878 353183869 962416427 862046891 920729375 28765615 300291788 452574172 666418842 86586162 551273549 482114320 916601247 817389949 962242251 200690843 783632587 723408291 859570735 423227737 890566966 276419831 458616704 405346156 753996027 494303461 824482394 554629506 808990548 668379628 779391366 352886314 628529642 157537639 646700086 311072699 717481008 401526879 605731007 320323917 786516190 176056487 662052997 55199669 470691739 915903674 924911629 239295507 276811750 958523125 980025428 684624981 898140032 780143097 789793244 806027007 987561247 259419949 964988040 358138644 564943594 512546962 740046750 159606858 822042742 295469465 671032811 720228766 932168847 32387644 327377903 275850046 766406985 761484010 811162485 588690472 632680705 274118050 997486537 790949112 972624864 282759737 642183158 764594866 810991861 17936495 169574560 560321358 881552867 334426476 555491558 656639268 741540845 702856990 719580524 589670451 732973254 285917207 607262193 118857229 690973611 69978909 619509755 627506176 776542569 849391323 998053714 669994645 907104653 260879431 870636514 857024064 973578102 15392915 927359388 718373884 759363098 393659162 899383708 156816470 823997683 141586396 270920429 130450624 520653935 965204753 988717430 564702070 591969310 328826993 570634698 294091224 957077109 754559807 766216331 843218198 889689788 687337024 925140287 554814659 886167980 203788546 461557476 818577224 874753595 178533093 837127360 309465588 735411849 409139969 958961529 857590340 964556140 385495165 554661526 901856445 982569818 604975367 760289126 346279347 771852492 648069497 676777529 114803768 919092137 756442624 979216017 230812844 356437780 548367100 681443034 136838335 842633763 925204966 997531802 618573942 770382600 591518304 914895489 342694004 590274501 822440154 855572502 526529594 570550292 798087085 830657152 960361677 978457900 209021426 516415328 125946095 323607726 438319704 613770606 804634125 970328646 219642119 423645494 978668557 985420379 813296437 970375143 480262621 647451125 429259665 493381760 949145566 972573775 782607486 892002890 462782650 474462451 794601892 872014694 619335885 943689559 993947965 998364609 868634232 935534434 278446264 339866670 714158069 952150811 380123651 403858704 434669917 751741290 659348845 789823761 958284586 996527745 20053629 42062321 456049787 590772324 980761489 990842287 256308196 988678383 205682885 807839910 23383940 161144711 654656639 692922962 91649591 676014359 128059106 364377984 56694068 868814643 174019108 420014985 372366862 768757889 744258136 780503071 795072359 871995440 316515151 687311863 941837988 942785021 346411576 628610960 359109234 706574885 951382755 983097615 987848003 991848041 950205911 975116601 56779751 361916159 952375141 952393817 111961803 509550878 217286776 284092276 123222395 276626170 806165203 987801756 335524579 444797660 334435105 491257997 167961081 673012802 387014887 726647817 914307878 921328209 245761340 349919472 511873382 730453754 715672952 789527867 276024682 305090350 269263459 313411209 977934994 992983069 191267165 776370086 489034437 695544934 981947647 994150197 977028617 977205554 820480969 920081460 723503526 794070609 749370819 979252611 578890087 608667106 586804408 691826955 963177980 993610013 292883933 932926622 694869390 910469684 799636782 960300101 330575463 372972831 298312169 370106894 947031674 971636159 391991434 687234485 103900483 963595131 165643380 835542477 226858903 884646360 580761661 631536045 921892934 947731592 720930380 871340726 956332919 993145358 666233269 873101197 472459036 826658259 34102539 234381394 942501504 944293231 812966945 924296588 883268957 985052098 992856804 994857575 60971921 883836762 587681965 614928115 669233163 989988815 880856212 978762879 423341670 922920841 800176286 860245841 951780397 956219919 549343038 720764817 492831166 506439115 295691287 848760187 863857600 902372161 744483629 768874287 131518276 330809815 426862995 863973267 205184251 255869930 786501316 860187847 889658340 910784909 700847329 750559289 458263460 648548922 124521348 518196507 60480826 148971991 383581176 521789389 921894458 939315557 219275496 336282913 309907471 500617557 499523934 779965468 629230331 660571437 680690389 992308088 592421366 763093637 825616790 950268466 212510038 317756738 605884535 715509581 526471595 864822548 706576616 923800485 169614299 518280474 450140568 686405083 465673168 668392380 831596222 892506501 490089105 725283981 66070146 800869807 350697767 910340449 740495393 811558495 831937942 944317943 171658482 786987709 879882363 930845562 869990284 997073956 135335727 916706222 685959031 754087002 639774720 657979701 302602490 570418033 558558909 742598986 323854829 355033253 686348750 835622616 707468119 717653564 418514022 452623250 319359385 327260984 528723004 559461856 68319043 595807515 359326796 448807448 274654470 353309115 875430860 959266644 914464500 986999389 37175298 826887632 601432279 956225180 298831028 945793562 256301734 708793945 383353131 880400677 65501473 303557810 678927404 686598514 709474808 747655299 379029281 556986647 150543621 648195209 198293866 880000363 235213786 927743375 359136973 622503915 683677641 871662415 650549493 834581668 920036985 936832294 993918689 995997098 183063124 267079931 632779547 858752873 677160590 709237207 497133322 769765631 571102894 870285647 413067161 854414364 554212422 712828171 156091632 884531692 295067380 529239413 18895257 96585901 486712230 697876779 902196656 995128457 10398904 501071020 29022282 334952576 794826544 908281526 53593750 272585022 347874963 651938701 27816734 545367843 701523525 916833882 755230114 837948984 178391174 749274139 711107015 836630519 701331583 830641952 496731685 839384790 941025048 953017386 511168799 549684608 126225756 992216656 121187513 747098405 670374220 817686060 671870545 764700932 469261349 492426341 653660664 802965689 352531914 942434431 16559317 392482098 772744732 808716638 595121977 871928433 574317548 856073428 478665227 973859189 433748212 868960656 672559198 837367653 917340721 987697062 733534973 854283707 52034425 576774372 677671109 752688822 975280375 988670976 174442960 842536073 257644474 680709359 395189767 430923564 2777641 792525876 56544253 720307574 398740917 625635389 767897124 859117774 596853815 766907834 694731157 851823796 42838264 81597887 459335988 944969156 830050228 885431446 224072542 453266602 974460169 984506664 281961155 965076839 781525741 839724385 799607608 827045557 155538847 661697338 75661570 526386484 148053062 644337226 283474365 847822727 196198764 471075711 155739830 888421168 431711350 707959037 970798101 996416381 737223007 954254651 33131231 601241742 301839691 467740953 657919406 674877678 695348014 797835187 296309175 985875430 43484318 741260291 457734667 883302405 528367653 734818755 206565773 614651545 786811331 985795220 16256706 287235610 240981836 960210621 495122951 995603404 399062754 920272639 359601726 550004325 437858525 938644707 608253370 819390535 31140155 397364496 860389863 940495207 22557025 93144691 454877159 802515576 811073669 837543475 381383143 835849628 606157353 754115883 499463508 931674699 1547274 460840530 156155380 558586616 350524433 602299389 54326253 752387031 543835028 860066101 572292915 835144177 350469124 360188604 95315822 778294645 927856819 957009148 463036009 669023834 576151118 851318688 384566036 963407245 179013329 987394076 398466674 543649695 385723010 514565332 574044933 833264261 319779290 632544098 248336902 857187291 396505900 732151638 463975238 771507314 523941072 570524869 251138859 572496758 833704188 863594452 620238853 951094944 664606164 734535880 549475725 767332288 472039820 486538116 281662785 588565334 770161897 917152667 83930432 929953118 998137269 998652867 289335962 972441156 254583762 764686686 786892179 859019365 571567867 870163021 893357812 952908226 85439350 487219445 582852677 839149026 438584122 964109744 506379967 512477935 464086371 586309751 214076905 664215249 56716780 252599329 379382802 563859355 957433305 975725379 453300415 783936399 705221382 791773042 731786934 731787459 569168463 771695669 565910651 698854073 502841313 538125063 135829696 335811466 937436748 998120515 133375994 933325442 986938698 989303562 272128338 501062834 958581202 993547447 673506814 995592679 513532118 597114011 453873095 620864981 171029802 277971917 805025643 874850992 390786862 986009339 523164728 625395197 464706607 741787643 368906443 441644306 827168788 951477299 525603256 833859551 258237629 838389694 14676155 57438673 400560884 854571082 49768143 540429602 889800997 897030117 264761621 983223140 306072017 421325229 89600164 648366696 7986133 249218106 790009055 858074512 595156107 970840238 115992934 576318832 236570457 783551101 99550791 139821794 845125062 881129603 411698749 793191788 730041212 910573010 735553659 901045881 165708152 530226713 14045992 909875704 327542336 513313981 745203902 870706515 49749845 988640560 913597261 918128382 652267809 743480927 885863085 985453433 26455250 357612849 437066088 772642581 890312195 917224473 25766108 327636954 731595974 795440373 924770688 937022646 958958281 960417234 756773504 766313033 476531571 637808909 391689793 607318348 195641504 608200315 403347999 793962211 419118864 744822665 228100589 842250706 415683728 544697383 773718125 975473031 570871883 846244063 849927842 941675270 949329033 998738918 907298312 949852336 398936694 988322986 427125526 995404485 240115830 780620493 461509354 552382249 94639921 362272732 792329891 961888291 401441701 784059431 230857177 277406092 174022452 604260001 394379720 680693349 976080745 993315948 255207350 707030657 840383984 854216465 242030575 340027115 817908079 996734925 739142392 921884160 191953131 464683429 681245849 966186384 552991058 772696135 595457881 984874865 339703030 742620528 902360276 922473262 923253977 950363317 302344441 515509039 53319551 114205331 574261861 592618346 93544021 760843914 14542321 883749517 93179944 873600032 701364588 845728340 759218460 763749599 520256980 677983664 154463903 325581014 34908678 628873756 240985036 963288854 654540043 970244410 433193237 666752461 976692696 976897819 503817880 513266526 91339309 330757760 300183811 351073936 729359183 986615456 14518148 369481579 457384584 910524855 824272570 935052679 818546052 843004579 498097568 920883031 358865681 375286775 359537243 930656613 58249547 265754772 405613594 904236402 617642649 881853378 56857422 323283633 786323746 817583027 272215144 924918971 648180533 917380524 341324003 613218869 461571493 733014803 851545546 868931737 106021152 258110225 986225246 993801537 438314900 678165089 966523108 996996245 360452198 457443584 397520927 456771041 742851737 923452603 924962855 998148338 34502900 761031873 839889710 997355279 424634439 625884659 580101932 939815322 108038872 111962665 700891298 871469863 942930790 993984203 60766371 611286941 851481366 987770862 372284510 611816171 133936419 645537721 17769230 909771892 826439157 871862894 42743818 471118070 208033029 285766520 689653281 715389301 997053209 998722862 108761235 303760315 95525686 313478305 519680390 797701101 672078538 961762148 612996895 902079362 883746562 970623868 227641861 748062147 548698896 582638269 30978292 641664438 935815516 994203792 645891694 930153372 781609184 902678567 438008683 487248391 977286620 990957426 420863045 751242255 170488383 192621404 135595454 971115441 854853823 992759727 284568790 902199513 305643160 553267946 119731442 560354508 194451619 566129628 207500700 949326941 88198009 530887624 574780068 844021444 333284642 386823917 161505921 470952021 354665298 585899495 106862233 113378843 202280998 377517006 133462980 627603848 995114566 996974834 629598451 704263110 814309210 866725319 752701198 979618440 164752006 626720380 903923855 912107763 907736250 921336757 872647017 983080800 945229246 964290251 876104940 983073632 117539635 761099215 645267151 733823965 142358588 186768715 170391303 581553313 62032681 595535316 77590833 140683018 926908421 974030901 53317862 944041720 71686454 541731160 68677577 639562567 756064088 964909189 42744863 712144518 691506690 958698135 112371108 475827270 940272580 982705261 913711595 992617460 598219927 708175896 863930002 995382940 79064137 858348770 887127248 923108186 446682609 831340248 578026040 786679949 446482015 989996173 682328293 831409588 575427698 698680671 414153561 971223598 153025284 899196662 932456927 957836230 514344997 563743000 624646260 808966495 636585346 917721121 955408745 957377490 796569234 912234948 739763252 844521844 808452161 943741519 639549594 762747983 164184184 795242666 204242959 622243720 550981145 678731750 100416162 880713231 180756112 711290101 491371594 752387568 818866278 986523710 638196491 689072778 252092494 825756292 897692962 925667047 629314441 921961043 475031174 604748663 608820943 951399424 71016116 868066062 317477793 531000896 868095496 964294589 646314727 949452688 751044710 769949398 205008258 877427547 163024606 782874100 32483127 554769250 339444617 645052545 795598913 801768263 169129210 648617948 876993422 974715811 995648729 998578923 195069413 440049389 137021835 950227639 855288708 907035305 594830650 762449077 330071303 691490525 160057537 223029883 868428623 901859728 544845421 764207040 554378266 555768724 917229219 974764789 926873659 962010459 889399337 903809705 83628900 466879052 526538842 600898952 217335529 804187854 447666995 731475278 806506720 863549799 704644559 720520163 396027683 868942179 895377489 944481843 495975452 641220555 965525304 969874231 679428833 903052101 234975614 486518639 911002956 933083762 54770062 615679171 688096447 777435562 45903018 825516229 68494389 472388290 812812988 915534619 866653569 937268951 515213802 820842537 992721290 996310559 692709200 943459186 116822965 578424888 481878657 817660321 92301172 724272791 436633222 976236893 172837150 580982412 955967778 965720717 975142800 975910442 745240772 890429079 697905962 846192151 590890396 645377936 478145067 686230279 476775736 899961027 960648364 971914731 835019635 977268352 222654227 766255715 766734175 955608881 753445438 759196749 874835015 945278415 813536366 884368146 886355616 989428750 252319798 313308220 588878866 839840100 391254734 735508629 111700857 165528011 210938318 401722459 970766046 982090736 486525143 989555408 721808799 853598680 252462262 595983841 188759801 962787819 98460668 347717159 934425499 936602472 718253263 860487915 748457748 923651757 743793147 930054495 238954508 300467099 172504966 231666546 776541588 962835245 137419156 357112998 617532422 799175416 375545694 507659591 156313197 963682945 887978279 999237372 701424104 837080444 239020256 642016927 869667563 902949381 236486362 478371068 979305154 980143197 937473207 968047741 616156062 798244059 378147497 534648059 987985499 991062823 216524468 737152245 31433853 535073800 69665908 788996501 810579968 970735332 807211232 858084594 326524984 734622629 290668237 911231790 794776763 969596604 12522987 581966402 339704237 884714718 679310049 850385629 250985369 829763759 239574685 390651383 729690123 854166920 200193700 237495127 684467929 754886423 597658487 757943138 871485262 891580827 276971535 945817619 433859125 751309799 567885038 907533140 445430937 712399998 71583925 563334854 221877092 975480099 193754467 772764382 213986069 354862148 222259452 514459094 899013445 908778389 940059140 966050140 979074894 988542504 444400463 968935859 914180963 967484535 920450942 980784935 28979710 740883809 197222077 497186161 629825128 697864715 824140217 932567497 754790998 980341549 394985795 651179641 724220047 896914712 315703290 474921342 930990033 966360530 6646643 822876702 633454620 764667526 522089916 915428972 185245279 921370949 406189124 605384368 47189531 394104009 961356146 966412208 916167557 946511541 877855113 914770828 386360413 853318939 796844189 870727838 856319466 951749785 849959598 886297429 82235957 250176383 407129263 654802057 518482345 942299645 653662579 897862746 859076235 951052665 661771404 898528791 786189165 875331941 901251997 982611992 806069023 810254352 870254549 902366900 240226916 386759918 366770653 848574688 612766200 813965919 968973592 998764312 729042166 749903627 485526442 550249230 46980022 607119975 659481035 839296232 254997176 597752185 645976228 870756000 381232613 689212015 68153464 383259095 881215542 971115396 380423484 388511443 937828995 960543733 513952429 864082095 260073104 889440655 437301249 962067853 520886619 630458552 104498402 572360512 64347500 83560864 861622547 946651789 772705184 958501958 464237181 880618701 876146006 901091181 624839276 814038919 462384600 747528510 651821393 785650406 326796189 767339873 922763530 957422411 76111352 865182830 75721601 93371475 370129839 490336288 62736722 981923956 447335332 759958123 581451801 708009317 350609278 816231255 15149834 127918000 430231079 659902361 7256001 780318039 372142836 434568829 36481895 183399177 190623351 220359044 356446496 445653425 879477932 943673069 900674359 985225850 857569397 980831509 1664813 415246593 774360635 889397393 452463296 994560961 575950637 751478672 823125312 948774505 261479287 862731388 307195498 510879491 376503031 657218939 713938481 921042628 573635068 950798167 498031034 813103626 949960029 980441071 258888045 660247821 859345104 975012427 315162798 909109979 806175407 816325616 560766959 928495447 470737850 782862239 867732703 934175350 3281849 94147752 104029265 986794886 120574331 880059807 413592366 479965667 526251305 625694350 945887739 960655921 819944867 871133648 971720757 973309769 787189388 941778774 775598602 817012359 784514421 957815617 513542836 622844671 784342926 957092596 902958061 919264460 336532319 617715801 321286307 476078086 866772170 958308715 202628616 577036287 102520723 218189932 745647172 869422962 289800787 669794991 739893485 967938110 960901908 997155038 550884820 905748407 447076060 747935537 279218691 872074093 141061767 806630391 921090549 939358635 671213232 873163037 671391746 707954052 173973618 913506946 146603951 727842987 930513685 933275224 105072318 550876361 214750823 816708054 308373922 621879592 551666822 843515409 403317728 422738444 219281872 703756313 985583796 993821246 259943166 966735154 502493370 857324006 273603439 908880724 700580399 922956841 810692074 878337119 9069714 864359380 630909454 826035443 841150718 849750509 38510319 773066099 354330727 610494821 658616396 841484552 299228136 376951875 787172236 908619342 706718053 794271306 175720262 321065295 963545586 998820747 263093390 657701894 428426445 917520136 748224540 963727224 48992861 953853543 728596943 994867872 769519130 927482273 184067107 974856958 419155255 825304598 866347779 942595894 18369168 838890115 186259994 972075770 299294409 542659184 934318319 953295167 311836764 729461050 840200572 928754640 68480711 207063762 157608420 786042703 514413718 723559013 331950287 551874634 639607881 747598371 725502843 918414841 150752446 498242624 450498195 650163528 102552411 229975873 322249771 890183441 121834653 417294871 307910706 988328038 85985358 676764263 207248951 271579285 23819199 505088401 764907028 936674384 953556430 968012552 642473412 882078081 101022773 887404938 836436211 921906567 677026863 968932825 856531971 962907642 973256335 976752066 144311063 462224262 104099235 455977998 854698316 923408628 845863627 949451572 669064661 920470196 900814793 934631747 768228811 855669602 617760288 711236449 710887133 886717950 618118776 682001620 230256948 898176678 463630134 839824857 425320302 627732865 898884761 921052187 139080760 397877653 775858602 978692362 263719541 805398758 935756849 957355069 45315234 238653746 912176535 998414672 405215872 993853207 362203387 653981264 544924303 594314998 736727481 738216487 152739417 262263284 236388359 677154801 484904572 535399132 295897612 595716507 703708464 730575188 515626168 731450521 66285228 885161534 941734252 954151212 315034142 842147240 12133913 976840035 542358933 846025315 816771207 825487310 307843369 988616970 316280986 950461011 46976925 78104647 655947071 804330922 344935913 933031374 796698395 844449857 59133852 751970446 413321976 596747413 701518590 823135583 789033568 861734197 554751248 942136307 955204813 979970666 76452893 945698516 949919301 975816873 47113727 788312806 916890556 921572993 604969351 829675338 319022268 704686583 872264477 990038746 908853145 915981866 156114419 679560987 31625755 715268599 305798367 832272469 351337108 378811412 583540698 586977373 348486162 556065353 274907650 846715925 181826566 963528732 254952769 633853198 476404430 671795950 589484790 874200363 863146403 874532970 623878488 712754846 452095545 785523680 345242867 480711498 24649519 81780486 959449746 986099614 647764116 743686398 68292615 953337515 96054263 570082987 502874912 774988197 325565453 857160594 186511123 212699999 921856163 973887732 260867048 579058682 487962140 545641407 531204256 944893688 396770249 912627365 150307857 809150354 143006921 536763320 131090636 761977261 392813532 487209157 641259021 808817656 637833049 998454252 757421303 759796018 193087302 957330363 75369295 224751705 30146632 389400570 550369021 608727054 695558058 804224022 702206516 705672508 535153664 727599694 438276909 744121497 782884908 839786778 994335952 998829103 10509072 836407736 124256445 245875129 780374695 978981255 577241198 711549374 442613450 610302791 172548058 664755434 545758381 877641164 962923679 991279629 357153071 713392042 507250157 637405980 667592199 819481144 39714902 527807933 67445749 954837514 645383188 956942965 249766916 434672878 870739949 972448643 849203330 921034683 297088951 497035974 656750847 986078159 392576565 802174133 733029420 882821477 632553838 729489194 829789316 927500916 628452213 744041151 19126038 821760778 278831388 622902149 321189896 770048511 286209517 543693603 394274759 445239446 362199346 468339030 748219546 849151858 662031111 892339961 133311465 664465761 289138035 899018285 858672096 881010366 396443845 856268998 137669760 192556964 979561291 986759169 699825788 889867291 410352888 595449842 618750350 622923147 631818571 813150851 757032436 875764740 477145088 517374854 23302357 413073778 207234606 959713202 554152751 957440981 118352394 437605070 464934446 714823769 706686976 786254694 4783187 280884184 215977365 473045637 698505520 809114442 767334378 928725433 22677732 397797582 575355437 662044206 148231589 467153097 126508343 279691560 960193426 971259161 8058184 383451325 20030153 322591080 125787913 711597037 569041370 596732612 70799979 615014162 809956946 917788898 95015857 541071354 301527575 871682021 343469800 808945128 886356838 991145816 222797367 267557092 982114953 988406297 839476171 895843687 459953963 535913609 359398974 997973965 131382964 427917248 226433188 926630258 416490878 841210844 48949284 994901723 131041847 990972563 886864375 951898447 403768673 515795728 966920535 967844201 50739645 137758613 289431801 402022405 807393708 809027273 942119276 989520318 237602582 245181697 897815360 986946001 420280354 467293237 691451888 833551817 789387398 852645443 266887051 295876930 561796460 875185764 164261113 962245137 993637438 996573679 301994657 876686780 239976659 464738806 483067332 984193125 661958612 682833872 363778170 558498728 316415883 730456405 795760971 923160398 258062557 701724466 490408787 622552618 214437088 575358213 497977372 919269656 923418317 980766845 986002966 987053657 957451201 963633838 474815176 991991208 272967126 327252588 962913316 969975507 530108790 594096357 665162359 862405021 536966033 714314268 408420553 782553945 370019229 721007267 873902469 902428410 835351512 844089495 987604995 988308101 423985336 956618330 749442390 801148167 667226612 906430198 764186092 899723151 64647691 619515451 392096297 464309460 421164228 951703071 359694328 441691446 473873415 676644892 866056641 902681365 832597044 911406692 971670632 976258885 457823339 878293209 583362783 922629721 29349132 977645831 228778380 469854339 584202284 756967597 509779174 859768349 230403051 850451959 178716562 606975920 487109513 899474750 337633166 675841112 308797958 744985662 150547286 468952997 23212955 519424754 564827443 935237846 588511146 814797707 935874046 996721230 98739754 734230004 819424037 934386479 542803096 673936015 561033375 847915099 950862859 969346680 138538115 947708426 583200207 843092208 146559610 722298885 854054008 884611618 495373124 980713952 766598401 912552045 106064396 773931875 986772505 999233815 839431578 958296021 161019288 610055004 35680063 374873032 256350097 945870854 130185526 926348375 116481557 303983916 878060006 969531194 374651317 803040533 77940559 588886905 475863911 698228467 145204181 950476688 399498672 418995649 124983335 691140642 719610761 779056830 416070155 754925573 276610973 859811015 133262179 259539674 992766457 995141206 242445533 700854233 500195947 574922678 181086107 476172324 880928542 909731526 904923960 935465178 137415015 824341565 253612111 547282460 290158224 387330308 257107355 944872681 75164131 979206431 19518010 977609614 524394412 677084606 433423971 622230365 210458822 506197146 7380590 867615237 546304691 711023632 426021217 813437989 130831448 619133128 839611371 933037579 134270517 887510416 806981895 813497892 542272756 553051668 955397997 969286313 280995656 340606970 911669760 979992465 835966593 939700896 971241601 979162982 671138100 717660340 270965657 680802872 677453001 919834478 215096586 521059494 803405655 838123281 509373465 633512170 731291834 924643425 801887038 891668558 693637881 828590614 78614979 495993470 855927092 863255817 503922130 530965442 253355646 282015703 433986956 729374990 606206522 726789297 309131557 502739210 361038963 733861921 776955283 919872425 580753498 657576915 931351925 951848818 136910548 289868675 113867147 177915999 104529212 902743934 302773892 624169368 289754405 642817173 482197832 880020048 599257808 814914152 76852516 521832370 125706893 979268136 668109729 779168609 573038459 645534804 77716568 455025131 819634419 864429214 378842904 505743721 731167174 768540323 795414624 891577102 352979261 663142454 598700300 660722341 17372082 563210833 28817406 531376026 249005619 654933093 247496788 354559146 877203524 998107454 424731176 723023999 433805870 564299149 721278728 737777515 427076852 833425482 747334338 863429064 394942729 660316533 796306589 963473146 876626724 890478742 34504753 490656061 787114423 868232752 224052304 898992848 107244252 978312024 107261056 258107669 419791973 620447071 169770405 296933580 101754113 857902401 923254193 969611000 841946358 931627092 894809998 985705814 665137562 962297310 187796246 736069135 72149592 762922380 597276907 762142638 835489947 922741266 308359138 701685688 487664957 746822626 270814237 383186947 349043245 683589306 260163631 277346442 771658896 951510821 165465381 733135932 708896620 890798712 748118109 789395763 317915686 320429218 248252883 619529164 717959138 960482241 9892053 457912774 956634923 961700810 819248845 964942938 96535441 277350899 93663731 732574785 214886680 453432935 444344926 487369399 272113131 661493189 743379069 796716536 371964699 560112810 344241475 844377879 587012428 654693848 370398047 509601868 2442510 808491038 542835550 753551905 908254468 965910408 955607832 989379612 719296286 869702083 606582831 949853884 520658718 672787603 990201162 997047457 721056166 790864094 228379878 553183000 462773900 742477353 686815511 839124800 314440719 645218250 54845293 977561326 940069186 976447685 879537439 921755244 224683417 542082213 237673016 288472824 380160203 922924387 179348253 900210368 973370354 991583685 477872675 818324779 714741326 757735261 813583161 976131394 862965245 997390364 717248238 999116112 649951075 741800660 403456760 409465008 814455899 819445632 89657010 995550512 618481186 825702535 825834299 901796782 196663886 746009509 596378777 665083865 960493699 961260144 184529226 256511419 62699713 888270754 17558163 790186006 375910958 645611688 52686205 476034514 505934346 783512490 491179702 834016290 906970574 959047963 182218172 931521462 547654035 608641564 402713466 563189911 708209887 865421005 629231685 792450346 432360986 449751250 758268198 833360055 40709592 870359439 84371191 205503505 953539002 978755896 194220284 280922761 429489695 633003799 951748433 979667443 767422194 814213104 219851472 748217905 698925501 931327758 275574438 957996465 193679585 697025867 37242163 604799032 755050833 966912364 535804447 905409470 704073016 734747730 957971611 995962156 254665865 619925622 26024422 401535826 359122698 587172902 284763875 840231005 260003425 728832895 338919987 975779903 660778458 839311572 377375206 408466095 369119913 861621202 634125526 820752834 111784567 231216825 680725663 793988996 92178923 592620116 833884286 939685571 40860353 895722096 925094375 935130477 297909184 361495186 169174804 731256513 276751104 607127440 639224195 801640444 82415231 785446162 925011900 984814754 794233681 967697255 796827770 925092612 634142657 638479454 806850628 874858217 558810688 860495289 347661178 730318909 329287880 867431839 187557196 820814710 872009012 882102035 74251237 169371715 316241445 712676336 799361904 950699829 206302366 543076910 626360113 737437358 192217460 323560425 719227605 872548782 38910225 53768933 777753344 942538124 615449926 646479159 709293322 783208592 74909997 459241303 742793130 790571930 205912467 993541560 816917116 872522031 358956293 414145212 60779260 171085094 137402999 614725770 139294590 449990658 211113122 810894052 180316059 941958764 148536151 429045586 134701387 867849786 314137988 952020569 91183160 666260799 990845464 991871162 659516922 996680879 952321758 966677035 38495526 849386982 134599323 935896000 982274911 992807997 875337889 923125610 42669324 62806058 696773960 903091183 301272719 662285457 570226370 876650952 423755987 494135327 71662029 641055694 283383305 932001285 918368292 936709795 176996557 235995630 723256724 806006297 49955591 345402506 788588601 859798294 501812200 516592503 280902532 970557440 774403711 901101243 18160961 252522173 309918325 607315165 279999300 722008354 933085724 969964078 730643513 903362723 556622783 788028873 310074844 993241315 677456646 778372256 474407841 764769071 338800759 844330101 175420081 728454662 275570240 663668572 863195889 933450973 333347688 880748891 882007585 935124005 364196599 382282780 108238841 646590962 838109811 958845591 986447726 987791470 695294128 715900684 506651716 798921482 456337911 667686859 951175685 960814717 499822218 605573628 162046607 313931076 265700071 587938051 511577438 909231147 993656068 997455286 285292564 694236710 992378625 993642105 259234379 511278764 740908975 905386071 619732520 699059853 582411062 790131587 883636937 884055912 499652121 804539784 729020636 903537595 135650993 726320756 606645356 628039869 252594356 668192124 558417210 571635848 762228882 863508371 119064781 336144302 849770989 989341980 86498079 249541143 772978116 944645493 947110348 981141010 348018456 372692170 884151992 956347126 144384234 312621355 33091640 581057264 550246702 975844217 918668910 991412363 985944800 992856004 61375763 181435843 573672928 869715816 865445396 994110743 314780045 858580517 505034345 998880177 976487150 996640322 674566457 924315175 782725137 938454068 227601039 823949029 725165597 829608059 904864931 980428969 617408304 698503882 551439480 966837591 285331094 775228786 573981599 806977333 761414804 842354653 490551031 955306399 591501844 774673523 236425103 952965875 751741006 987423142 510128885 876091441 193923858 555605567 671582127 681001865 524100709 934639881 515156380 895118671 199634878 518727430 789404605 922704834 879722867 958898186 161604503 436174710 613253572 781856832 613799960 903790072 557094547 960141522 880432735 890446435 616528843 799934061 507079267 628650122 747774107 937124651 625777466 956978560 695278294 984560994 163842044 459029633 495321043 939312875 900863714 998647462 66857739 212324240 922967708 954687848 409558660 533718198 600656207 684261491 171555721 930625690 832539205 956505230 617110055 871927386 605504635 739978858 538791588 781737814 872490931 910155189 686895980 987340383 648885751 655233867 593443047 819074768 464314524 921763060 879313456 935306235 721460264 747909340 955410549 990528806 972215588 984901751 299182792 447588917 934793893 991431418 855846557 992058596 634300496 901338451 818005909 893919484 143720917 942575965 168890075 562800075 39239608 880603427 636386050 644859488 886372845 947073817 428397742 718112231 60555812 983857330 448966109 717012509 133179445 677572563 827210656 973374794 773989431 938813982 741420604 862431415 760361148 774917310 130902912 416247566 28259585 569162176 55688420 435679986 449243192 595856933 446812876 746666128 823680623 840310061 88740973 214349133 811923050 838306452 782832282 835443546 244460369 574007874 927538836 950004450 396576677 504026632 242839419 576793481 422316882 890599001 589891586 615427909 140208669 145221458 635757328 925657210 16785054 286592054 255765946 981022253 453565585 514366072 581898306 685687225 861384313 876918057 981118412 994639584 887019066 902500654 716265324 933164714 903259815 964278334 505394222 751269866 459014711 905316352 695926980 810537369 277696195 494530995 259169892 854668315 557888387 942935970 906785754 940543362 626511067 851957501 429224715 555229849 809809700 945947924 863752689 874606879 19630875 343266319 620698896 798980500 467004653 765045231 265917991 289555511 866079711 921004813 231505261 344448147 241733836 439741067 69422211 343324495 168287366 455155575 135107171 183786421 803399820 905761648 582755166 643394062 469084254 834366794 209948710 520422043 201860576 251908341 405947215 636011358 975679698 983292028 467508243 489386852 242703430 309669028 291768210 574888671 625217770 790081792 200386245 990540436 867849645 960456025 324710280 961986550 453271267 479995548 959696385 961138851 378478551 489389679 604751928 922399396 514569951 769329127 579012906 735628967 407774985 787368374 601120663 663591776 974608582 998808425 386433782 621448445 842171816 966088125 131573596 268104979 778374823 968253808 152105649 388786845 338380673 843481125 816661689 890703094 514473695 683572644 712106595 901425599 983721416 989433691 547771895 615279529 711552304 958811913 86562742 365781872 770857070 929146558 828400303 935433354 177430301 964835789 132860422 388268495 410027909 687413731 638111721 929240936 346476667 626517236 375699352 679891818 645295833 771286769 316673736 572570958 773702995 880511772 677045848 906697102 141060741 391048822 801603620 963213880 356308648 944811885 599031788 917992496 418192463 885887649 259410540 863203389 160690659 706305264 237148494 932024578 952895045 987484792 804241298 979744139 572922251 846908607 758918317 977663367 814022707 912085381 802838964 937073814 494761181 892805315 310844594 320580085 554178365 647373123 659605066 857803757 953606528 970537744 341883988 620400044 813749259 956706550 891181896 904557536 56906501 665737112 878633306 913445851 219149650 783078798 894061649 966072107 203125424 466121858 354503162 863409972 282192592 732269952 850227086 859684270 866336704 911738053 465894845 809476338 73653542 967982055 555059335 856557559 848010620 874357522 363470088 480582861 195563416 657005291 402272662 966103271 17892432 493817779 872546827 992844040 205579120 348127545 874668287 908980676 526051164 809237545 197592562 873292602 925636255 946206864 406363543 501775774 18578634 183351326 558917970 782132220 754009246 766521987 118980497 485920756 155021807 158182355 255047891 863557500 481758501 550315227 901795114 912062288 528443850 819130769 723162321 731913998 168370093 765536468 590178888 732598338 752745649 886007822 266668454 605025652 631603989 636070180 938622647 961067098 694214290 757471312 972475522 983130521 545450552 901004627 79213005 337800423 469423893 916396793 965059682 980603538 842166426 863582641 47803628 822771922 485273670 772850108 970139694 978680036 216877178 357018166 219221950 827637139 619734766 935680156 870226936 872672822 867729821 879817812 675621682 732956983 972917270 985177161 649870516 895189083 91636501 758660379 460057433 772548440 205893408 463039250 698947610 804880530 298564894 577042140 514364654 563940622 784766442 931054505 325892772 510148761 299364825 636546619 492711340 744893871 400662406 869183473 695121289 722778004 2809959 95628681 157366023 796314743 740732376 961783379 864878069 974256873 332899452 859762439 679407144 809793955 879940849 916415139 99426706 975936134 200708955 476306038 648169014 657841718 979486442 995141485 163404786 626410048 30721907 461097097 304332055 362144561 982112451 984758607 586779157 862642772 845489866 984145704 634529162 889372516 471877009 929248350 970134209 978723740 128077519 675219945 270194336 515967323 328370580 864223103 992084210 992181475 405190962 967135076 906056360 937234316 231754457 544379371 250195840 479527960 331986386 910923016 994185177 996116673 341041851 374835038 705334334 801651039 108154718 377919323 261216168 997564404 778591692 857572967 161321036 435564890 863880264 980270575 227626641 730328189 939561348 989255510 478580384 591256790 718329154 904267477 267970608 315240700 862544757 867094975 927673475 997388125 705722732 717671744 535642828 994950301 762315074 922284155 421663134 943572568 768509280 891652117 128502508 864935350 917666870 992981218 270678764 325488029 960517562 964847257 276450494 927052530 312967747 805105437 569347920 770431038 375028449 471710297 3051832 528142860 417756081 819653541 862804496 950698227 190326139 653295708 625764264 949170520 982165064 984549923 403533085 410286797 394322687 501973133 223268824 678708482 516389019 965437918 458471084 488422942 500169163 573652274 912052177 941923720 220389537 880593193 186679893 342088301 281533700 575295631 246954057 325862525 846521278 858252218 706158589 853245452 261420744 505451252 550505772 746253783 303429331 760806382 995734535 997533155 520574988 881512618 266523831 283444299 337776289 396319761 2701743 362698117 349276123 814250720 2093821 24095116 702621044 938334520 12030821 456284959 616368697 972377771 240001426 831822086 3152238 94133908 761540182 769403851 403539061 882384000 60667201 811490620 439948770 463741808 800961726 943423460 707580406 717623637 607226957 802364452 961835311 983252712 706089887 955253902 770688085 845148285 139402431 794256960 752088524 901206149 110718391 913740723 720432107 789487334 514990685 644033275 903720304 984506658 659690835 770686533 744543687 996584140 255373232 360741575 674676029 927201500 779804164 939547177 226761514 383195640 140847578 970998827 648045032 785711942 586821971 691405051 720621635 893746024 988861687 990334673 963350154 989121953 536472991 668157250 40476405 887836040 423063563 708339496 557413870 913087393 995551993 997081771 84342045 835921423 682363351 715026195 275177705 414784352 688026112 923885952 517411073 628096556 529368418 968508537 296567879 699280912 595447637 807259377 471223275 818094730 326744637 450074563 82367558 140882221 962834259 965595615 829641865 900655921 671922197 757584685 743669290 796583518 377452270 915943447 661432464 741624377 159165690 682526100 326390219 780971880 668342879 946462191 964448661 972396217 192992198 341511683 673943529 770284712 471579958 663711545 95203706 926704179 790621081 934937253 500389899 651240711 472198244 551048416 51053374 497303424 61047113 461254623 132858952 565680414 451312002 916322343 808149412 829678830 99991651 560183581 428577548 613268541 407109594 797458959 695451569 977254688 434150903 604156987 23903429 374277450 347782751 840863838 4129124 750946893 907414444 958524551 507452124 702731730 981964742 990672095 186804446 981637613 46110496 319027911 760637284 915624835 705229062 881384601 696684917 765821808 301649806 446491268 684777024 866198867 640118924 825277461 114728569 364317626 390787360 538680552 714600421 926141142 608633156 997307844 180153628 203753324 242738045 497412410 811472557 966111691 184639135 974660124 211022454 561381138 316519938 336243255 588648227 824495967 278157054 352667697 869393065 984917699 200052972 390264982 431151160 985031424 766576849 840541312 588739369 666845320 938038447 987771390 860148994 909023756 965045772 994095024 983797362 989182560 512167169 689770916 24414774 931910754 211770590 820577380 708212708 869425142 927010527 959565771 433746896 813251596 269107116 950541032 494831763 733543425 469956530 476102393 304879928 549616078 690961445 701349544 893020470 918957093 10006766 729803946 268379616 867584653 632292849 919904318 362000297 472881596 967533072 980490390 694426306 826207808 457736795 604561537 572965104 981221263 497758350 547215959 421768869 752139109 521124270 782264700 929087071 970853614 45236941 451934869 655680665 743200103 363222064 808870715 785963079 829164020 250192615 796300676 909817185 912395564 295892920 968488774 344102266 468561119 410269021 839230286 897825919 988504461 83073359 187460894 151037184 468834820 131030282 802637011 173429020 647105795 580923396 973723296 946456065 994523186 461881547 616545910 965685348 997710225 963598339 982863400 809949079 955976370 758374323 970340018 84754018 870710783 143603716 671176151 943041248 952269405 870478088 938447961 933360596 990254043 695510905 777591274 498535678 657294621 983043470 994418424 896859326 915702661 794527615 926636590 946817431 995718059 537047953 987154849 384296275 710005779 192759266 784173066 184830113 287085014 141403649 409248314 724073844 860258808 952669532 986183898 246710939 828168790 577291124 945265890 365605163 917865150 772518712 895013612 881818963 966078192 247688172 398566117 540191811 891542099 887951595 965407945 26602509 784358793 129826253 830238575 164916354 581897541 868744539 956751704 47301566 750847459 20548647 115946507 686171096 901561715 57872234 730362386 450863443 615462138 353457414 813278411 784924285 806815193 553072675 828132336 319792099 451931128 241525272 426935200 300641844 403434678 990423215 995539911 783921691 832123972 803045461 824704685 257494102 657902384 750966343 912678644 429071629 453246028 438953603 881150895 106450120 665543337 796433419 799419519 458753150 766253264 776923475 847029068 321589617 998075060 1363396 346859771 674101500 713043362 262498509 720665089 800785331 860946548 543717821 675718317 69557315 889563510 338775112 664740292 211913396 326120095 666271765 918187780 591767010 600699370 857864753 908059307 889696733 933454902 206205341 270027758 792525753 922453819 460605534 874603993 519195225 794790313 219373652 664021510 429670038 674103746 651117138 700811193 830341943 859795374 85401165 575425893 108701632 121514240 956998449 996156004 712859535 733635229 772026851 924380308 755250202 966142613 522091252 922152385 594366718 796779722 535032967 663589660 489414665 861218680 112051373 841902936 327998068 863034906 42130308 662134414 76047542 926990804 42945280 164790369 195396576 877630828 773789902 945329140 467906918 639981169 310988319 593381738 911636981 937049180 499526621 551366862 935136451 994845492 429289855 947859278 463141380 606542079 321999245 339189539 980148807 982573403 259057788 701558053 792747673 830229101 165827006 309033628 668760140 931034752 907552765 968622184 522071305 598299626 765317033 915617390 985069714 986422301 104130603 709066964 925414419 943262987 957957159 987923051 892901171 940216761 347825666 539578197 309298558 970992050 874433400 885894369 11182514 402032754 478330382 942384243 179850009 260824579 226774935 472889426 932716102 985696623 344670161 938509876 984559310 991378656 193364839 369631411 129697456 700652065 761620941 907481440 603472099 797727249 385253923 778444896 68938156 651683735 965363110 970684001 101757297 611158938 984067974 991939080 304876027 653562689 69272268 415802833 689016856 830282869 20065546 171693791 454725886 922447137 814363739 958974775 443666768 769471495 605928032 835079276 894513620 925533520 974567162 986967443 975116992 976983507 182748177 469774809 190624114 554831540 8760708 971798402 396352995 449258130 506933058 804845116 696046098 720126713 671513457 774515415 289628422 612402309 837636209 954325556 701267724 767624257 637217639 906000068 226264646 323119772 512758322 761321894 979801313 982891101 433160674 439589676 41197834 975866992 613755233 627704640 838751362 898246052 53100963 330733669 490236623 855618932 760066383 903389407 72837234 124949911 139776408 217535297 661420161 731766061 780939564 909421264 240267669 363572377 460696350 952235899 402799829 629703312 470660743 668947313 508797084 830363282 302070256 322450864 896842176 914221646 195553774 206842567 375825711 390723665 660426786 661114595 247615583 377442755 378993944 459300565 898937322 977606187 282576587 632587603 682930311 844133877 832161720 972238451 514568506 868023868 725501934 739667613 882499113 927206707 744284087 909993119 959275171 977516959 854286855 970542359 738376015 932167978 594738316 955703543 49328456 255126977 195787629 597389163 867089725 954258973 687605200 994569006 437420879 464276549 295741441 879390224 113752710 585188532 415791791 421962278 883329376 909895438 202674071 453701582 813554598 975188342 35129996 43814030 138093186 479002641 808870688 994570587 749490088 793207090 619878788 750078099 330303401 617890548 531284850 685577834 499994468 548800598 274629669 647140924 599556859 924388671 237326139 448968280 582102335 956321021 723671275 790750406 884254985 940345409 206709655 344697838 762682322 917724938 196730054 320244316 935842524 993876304 236154655 279799558 491394116 949768391 854821979 976693021 430336773 924839608 22206667 714837419 729596217 982782894 268929216 691478163 227099158 248371432 789357750 803925590 364099383 920837629 633301753 968765402 701410852 724654482 903377394 935307812 641799298 832904677 755790214 805062548 625047654 965641881 911237540 986219736 396399234 481229960 296443853 601186595 855330868 912950816 386986126 521782400 670537533 879811386 81013496 326471662 144768096 199999076 551577124 994970445 56297818 417584386 160159102 944397270 253228425 894390242 519332554 521951642 302668577 490805781 48508013 298198536 60844616 213596202 355808123 462189982 928572855 949682902 598382457 951544885 295969255 477620398 643992118 703200059 17134830 61606657 632255559 862080034 655001330 907570299 942666492 991025428 196345454 408685605 736365969 778783585 460652918 518784869 769433654 797353450 998372743 999286668 882883004 925813820 899642526 938267347 984281579 992103605 74150094 751766133 437653849 901673023 405674050 477319426 894323491 985617140 548826605 784158134 98068212 258559225 735943874 813694324 351107967 662900981 583100965 810929603 279685947 718435958 227291771 322394925 195461775 344530662 713460785 998516585 573132862 659737295 378275573 927679812 149655615 746029710 433210596 676480920 584228524 712704683 622075439 747801744 484380869 891542255 634490284 730350669 651567829 705384829 506753551 741296144 573562683 724696150 569340391 586180141 802591479 906757836 716612815 996919885 62603956 137991931 625011722 927378764 99478188 686493898 657265134 778760704 502508514 575520491 37344536 753964478 721139662 980220784 43829642 505939178 923584576 996926302 803690402 854199810 774879207 778740611 602445371 636905370 521331454 737161628 612510586 894904528 47789372 151631811 395533276 823514412 493624140 623088344 609428998 669250420 597077898 889884129 586594432 820030487 195165044 373777983 443866840 748980474 100635303 816594986 615038367 670312927 905583515 913407038 557948360 607490066 783717445 998188954 360891848 491721733 875451952 950912675 627449569 732737353 199043967 451665773 688132251 887756935 443615447 690658170 244322021 991775462 715495687 730240448 915700964 976572343 69654141 980505811 578151501 768432676 333178344 779499050 41895583 868130296 313613410 409479063 970394473 979751059 319506654 373900148 356174393 841667779 290505663 939872660 322575504 717996257 695130817 834595026 228232236 543556310 636387789 910734677 461573054 523732845 670268224 715279295 889888346 938652856 581425210 753092555 185346640 236179083 595223632 975008891 155792457 491359314 791630240 998513823 580549722 739161484 379860724 501688606 748018997 800656234 683359107 948007906 159776942 898688933 397742335 873074039 520563051 687316058 129912624 320439731 889398533 923545153 228864440 363217643 770568894 937890150 965413537 965638449 87081400 918938206 86919918 898472853 179077691 742387434 414708104 597975803 344280590 518792166 120586807 918913324 939045342 949116322 69291270 829789224 160454085 430154942 796843411 909686524 118287030 144590511 255306068 724663721 298397350 535546543 377891007 701652587 305463824 881449708 195122524 718577375 436139510 959121949 455010357 991614511 787724390 857929062 83633915 307592982 695029108 713933265 740864553 901984441 521502684 719251605 39641162 718019666 950515283 969036454 926799239 973469311 430996832 603523699 920815864 951280849 88401011 138273779 645868217 831419178 563272391 726810619 936670843 978219327 169404984 764738843 576759236 942520744 191876947 374321151 127366459 701354223 726535837 821722610 273583641 580474115 858064409 920541988 19500387 234589750 944385526 973652423 478812361 865509403 151361520 649792995 698358368 994847150 592601182 748526486 896997529 938650231 171513994 652212572 264167329 435738100 284328421 531456510 793654971 826261907 682192461 991855580 776215812 845163777 369143415 377144351 864318048 920907662 949381422 992861874 686166947 711827365 422608457 691069317 410481283 611431593 73448741 752598316 544271602 873676422 104226894 215619414 994170947 996251965 464737911 497210123 927098888 955136618 927258429 937538002 238250118 834782651 289532105 343120039 669733531 793553085 151752464 212141494 437120457 847316276 392051807 757122488 61047333 787790431 602754885 630540170 494514879 845264730 478725784 950005769 258346654 852405860 975833785 985460394 51918747 457090373 923192407 983606984 582399801 719365397 6659646 993972066 302171120 878557840 912617620 941116875 226251498 326086729 743240708 896311228 349792539 385003788 287287005 540816308 763426229 832445683 635741220 979026195 737061606 973600096 356445180 541969858 886477451 944517719 251842889 822369090 489239836 590107459 422994333 789878042 701251248 768471946 164328326 917640577 504894470 573858104 358237603 475525861 363445727 392003887 157859481 444012735 626108186 776240712 561073745 637263583 145119753 834207810 330478223 549269305 326930669 504839927 193291238 960074246 645094312 788123571 899746457 934092472 330413757 501005003 104342791 554063180 835167292 909779497 219708094 606110014 307609459 688442482 965639626 982353167 423773339 543134056 184798131 711711572 943948852 956978424 829768468 878502945 768601211 848012253 88170085 382267170 688446745 883545638 818594603 838532366 25205248 241318390 537343295 787811297 111618675 236020746 157272627 627408087 486579955 493964766 886410510 962506574 581285289 642028172 405711832 679929596 739140798 819506527 857632527 974745103 474495050 778433449 492768525 901622711 147815699 149635662 831135288 887760860 25749445 856059765 308098129 764822650 521566483 667560881 802908180 961979433 618601950 662366430 785573382 935026650 852879977 908368295 610507059 830795655 315795573 819096388 71187675 393586617 281514718 775854185 698892954 942262695 82806568 90745225 210474790 514899905 817533124 960038135 584079559 628520629 879874713 909765421 382062817 556218312 865658330 965100933 666617566 719248793 837432878 911545427 494962640 511832955 155558328 611571806 43672195 51386462 138895807 387950975 118529223 498232235 201929985 210182083 336514977 747531563 597244656 675816867 652946415 948714602 378814125 585363273 282521536 286613874 387521457 425891187 637837688 739060708 876065194 921234818 687980558 727908309 60650909 790187309 615686325 826605359 592833220 648317275 727140464 815348301 678322599 706045000 136818516 725001153 653686495 839139516 284597852 768153795 655216196 997254623 888279995 899689858 828530777 843789098 70506367 78458427 193668059 814107914 20726146 600492504 940633549 941548263 693443459 876103318 444925195 500175690 126442177 765867851 267181506 673056217 420677489 505917747 533399279 791602930 622482370 897183346 249605026 878031877 137018555 628910383 97351323 465779136 528021638 950932283 549884359 950401257 832623113 926428392 320579879 931478433 98122482 816942624 189020083 831025342 607801212 928042583 39287297 312002993 426997945 799315196 218869688 770954907 476120427 664927500 481188747 924773670 517547002 968865336 999165851 999303943 934517367 991388303 390767773 860164150 220627236 408544289 677860852 887164846 958281817 979695517 15382502 218900292 507661208 744224011 638836466 711490377 666435149 770492372 895582603 981703828 354307914 888907278 338124531 493100741 440413328 654846621 277521003 579372192 296559819 555531295 408793596 912983704 231453880 816933507 643271150 659888574 290372553 390429166 497901351 613611602 383278805 725948261 610408700 907570640 797753180 851566573 859500396 893011132 225740206 511934389 534611122 912138392 782193934 808553498 766740925 834230682 301440990 733855988 27994581 186682991 677936620 839826367 894347822 902206399 88873022 903219924 558896146 828444058 940294038 951912315 280847962 337008377 975000663 989985302 452565066 982869322 106194477 497820487 168240375 949560224 698598499 818068057 429892349 645909377 203472642 516054353 896739433 974702595 966266849 977036976 60997582 769102280 724718008 982864465 203393222 217615046 40299793 971390345 352525014 485670802 782644646 796798469 307478443 995455533 706795146 768287959 439316380 613421948 911416002 959967295 67165550 82025341 739835265 905655336 4711390 625312116 457959222 933877600 230878966 344964773 191194246 201999422 235008503 432041706 363637321 419894391 288455046 435935674 701452887 865145530 487582753 992472697 403026921 900452580 844304218 951908741 872234456 988472374 291614438 293625746 509679645 675419706 265449472 402918049 498022609 616205483 621929263 851054961 115497991 888133981 844770424 979243629 945519807 992807109 624027489 974417992 154411292 408127668 898882815 946925695 454662607 694592348 144094924 335545447 74161772 118163446 393206618 692276193 907536030 924185765 799141248 978883091 834150268 872187789 786156375 947107404 58875041 234862792 297205888 800235080 948884687 951054059 472345008 992643709 102051325 194076018 839225428 847736789 621314310 947601457 328396069 353436258 208216159 818350503 925564337 973275308 411133062 453408433 834857409 939054364 562342573 992815162 10541110 831847963 179537582 427902696 461448981 960739405 226095428 734389231 292442709 746296065 738412150 866349308 197047119 602818478 208778282 584863061 695460727 818444941 125599960 212626608 980909410 984977520 367718330 725695323 962709097 976239085 520978694 662523513 816380296 966610499 500023918 621256891 881746206 980090401 91210388 331424107 147953464 423607306 995100286 995587171 194712504 254118585 594635285 642639750 372090412 426636685 37345500 601939624 525638772 952903177 295041604 972289011 422614265 529978046 201437166 550801540 86382090 963405901 15011838 241070754 890785971 905143025 126566582 956517880 86469177 952648849 42230243 160174544 5997454 255730619 141335605 194134547 535307941 653220868 183529252 752964910 806965737 913748610 25761997 676317382 372711046 493394365 598631720 724559996 314698581 583038391 519385062 523974147 615939843 914271101 615210002 763216933 912270608 978513708 680632467 864299942 498753767 716758675 813972939 981429473 795300593 830712338 120064266 397404936 893520240 913611799 560791653 635365309 925588353 931464154 97280528 938157615 462522403 793972651 109244075 935120154 749879130 867600452 492642630 862956049 182696477 387020750 967536854 992818858 461031048 782433122 602921424 919447425 288505329 726547910 803527745 823523118 644721983 974440527 716251208 805533806 220020957 704919859 709121603 955157856 717623056 920751733 156347746 649413576 568838362 628123708 879911855 990244388 437667683 947616460 586783215 852579222 364923077 579627655 183148069 479082583 193323487 873595375 792471507 926327666 233375428 566768963 867965754 946030049 210157148 503506807 641321649 769050587 570906162 805771886 922865377 982322328 812565143 905654130 226264824 511817775 251694620 357881502 619356334 641512932 794814395 934367033 852038815 958769263 352966978 828190397 843554500 886175450 431538755 818528814 389352189 850204364 816744806 902527871 409392176 559886430 733558666 804579778 687462549 988756656 610060983 751370842 616644521 991185949 802606563 925310675 752339601 990580505 121927351 941565078 901183040 945334057 978261418 993215997 517160670 827823402 194743755 653344821 912730142 995060026 272438083 543065714 632767000 846495183 597298764 849327696 575210608 920546595 121251488 347621346 274954670 446917846 928274954 970807749 798601328 987898625 375671158 995691216 976531379 982417553 189043658 901821241 703950979 809464599 102061260 359349304 880889434 895891992 863240192 864474079 188037938 416337861 75827302 692552339 237398798 937433441 902263729 966360337 826326433 840028766 852340267 894539157 674151007 755848597 685192812 849409773 265551155 295299553 888473524 935930323 376432940 523419031 350500807 450216875 592418790 707930335 502006804 662167493 104286104 582775699 908788180 997517185 395499504 693462047 295868337 759131626 816309177 971820234 849887606 936289209 755153676 900522078 912516799 916734755 425512853 783918789 773398099 966016940 386419636 852384167 64270685 472182448 433223564 721369333 147517366 270886938 435191069 965718254 781154988 884501041 580396431 658911365 355824390 482522145 849557319 962689532 606366310 817240540 852299828 896757326 256287651 691770494 529065210 766952482 27093721 110243819 164461071 776344656 458147189 973874090 194500989 463051749 239005381 919098669 106642903 700490961 124799196 947923802 153963962 363707518 247042094 262259105 8999195 960897953 922187589 926306792 823183001 979938683 642700400 986193218 567254485 825286041 73667065 403648640 417087260 566900975 488178083 789769294 468204367 582481939 145372700 629948686 447129977 777221391 553291889 998775167 393773488 901744748 145553653 840801788 543460404 841729976 380844581 834819773 715399883 722048500 356199973 479712437 435323354 997450995 10485143 743736309 939918369 949104022 498959578 926300942 660812655 932352012 897660769 943503102 469783528 663578784 775148524 984532682 698675700 909798036 369897814 376102307 545079203 776300084 998711363 998754520 632078465 634102946 582944941 953365186 137933602 964011782 525911168 580539075 281808771 518677887 43382186 242263528 902149902 963894007 35929116 304434968 586441658 979424787 357414825 900219414 40111692 631638597 640112855 909546022 146107929 459091106 600482810 920607826 86017661 101654757 643159620 687116796 570717648 629420794 547272160 908977754 448236299 536068729 417659218 867822908 895248962 967677152 198540610 936330720 917184199 975254262 13142798 802706035 93242828 266395296 419245295 721559191 575303045 942606986 993167175 995116593 773142660 905817843 494213571 937518383 61127520 365216994 908791362 943526018 113604026 530571258 709772488 921901676 189297255 255802656 588537251 805306374 825148170 971692458 877998185 972849121 639237964 788413247 356571598 844268411 689808710 802992466 966337216 995647668 594017408 698780985 593837384 946807368 758394656 929008448 727664632 949147605 86346072 331511663 329592865 875665183 786306519 974905639 439736093 750802529 473815307 497899186 5012837 113611836 76426029 146399422 600418561 906865754 430817805 706965519 615257763 725899946 88120824 206354644 934435976 940106539 265660082 773644640 218891735 617487692 929701271 934132753 562771672 566940970 447709337 995612471 379036645 688447606 240264047 770899385 524047483 700930812 575044518 955035170 347208838 464323297 474788100 802261681 908766930 985176416 795759330 941045530 113302127 272474280 802722902 880468750 377551999 903860565 405255155 706793681 693247446 877835396 839978315 896714900 332083358 447708790 297105382 977262480 92706736 589157538 98570100 891131773 852889614 943235326 41139215 893465793 146027158 971743935 48413658 917459719 707583267 709880881 962483873 964558329 827823821 965691414 214847506 600170832 942162147 986105223 512990881 634795158 483140106 763399491 300949345 314766986 437785941 828777222 672365922 923737911 864300011 947894380 503444949 720969678 846788550 974243649 687077045 831326133 704471335 799850300 200138895 744730126 605171872 994779172 463488885 688137458 33356045 142084041 472083428 785920689 534907407 827238440 914243345 946593321 60403704 960896219 685537463 898888300 504221238 597222188 88793204 981824278 18295620 182301790 5278480 411675246 335258429 414191076 573795593 691457510 402245471 730437795 866472957 997195272 182822268 506078984 591259596 814020990 703837217 746888176 873142425 919081364 800326544 937881128 845517904 975124357 212374652 253019763 202247679 468386155 668336304 811471315 162950266 742581103 800215166 890328579 26583697 810332751 545934548 904038790 691763392 980434009 699579356 760781973 716524652 944748883 115632285 329276351 744377329 932087749 595137471 997814247 375219228 701151613 131069406 893304865 625312285 678031756 440159634 731044040 593857918 720844051 576183619 725531073 324286713 582813204 679381030 735892886 717573954 993779281 279198572 456980602 559624865 867073754 553079988 675997280 545110888 716404096 682898952 812675007 90654430 994800793 75619271 720923716 496400758 870507161 123553073 358778217 841319849 927924830 167404559 582034446 251540630 853332940 375419420 763745968 283593450 316498288 188792764 512351836 863866685 867104436 438241802 470896887 410085974 645861762 641987725 939995322 428801445 933215739 667134220 704966546 526114573 964706760 86052010 908882129 235240787 984914757 624255082 796338507 753813325 780156807 804708128 905413343 534466068 921853627 471613022 777356516 460312348 736697312 614595987 742922163 654402028 742725287 916139408 927198904 729121881 867453095 383061805 778429803 546049574 887424877 422416757 941404364 495220099 516002377 153562234 332390621 397402878 947230030 548686059 816591100 358432215 494158460 682743557 711182953 396024594 589034874 550122196 878776801 678940830 750908576 298957806 959048110 938373827 996120492 992693533 996175669 621014880 696238283 592266988 835030384 158250546 517583950 303246911 915315509 565871135 732070380 387281814 389309975 402914803 922699921 502780993 681219272 586247930 853574593 92551010 730320429 153717961 635121861 800918648 906922407 188701612 359664114 94567747 222347741 109102018 180311004 38866979 973293634 587867136 623488779 914757564 950948443 670201379 836852134 373217511 501232573 345267428 408036172 9453131 984064421 850280173 934519325 302146294 605663915 50977775 270433783 852258199 967644597 878134593 969816032 318502766 545285281 519768247 931953097 737643512 838006971 939522974 988511420 445158968 583287808 434454481 501977948 631611834 872080528 954985997 997915618 176668158 230809284 301535572 924154732 691865727 871042669 492703265 636717596 301809739 498600159 17274887 707398101 919847232 922766235 47238180 459980686 224321508 817353152 375527614 903564362 760729494 908235686 969179841 980734412 818398910 913167170 950226903 951070897 226867495 963313680 360517430 533642953 532540709 820474730 365759270 896044631 353349125 691097313 230887324 408750473 254849398 793416300 9082855 347182439 218873437 595100166 467268355 520366827 32720615 515897914 30538738 932773047 382286973 910907014 332341221 806476568 105316449 560008730 363262782 580187935 578220850 581340509 249708219 911528386 814883663 995138410 504384928 830274383 963903308 986245854 181966224 697761544 258705634 482833822 155352902 765659458 795338548 822063011 331757217 543583262 696190815 856987429 726131181 960333148 170604561 982357478 379814951 870994271 673495677 966601446 626226738 737316279 343279095 445886915 410964076 866555995 127005242 408322483 763032734 873650512 464112395 937244983 829221012 983228510 649365628 677851316 582364631 667762251 115310621 185914155 37364896 331253553 844437783 872469963 310952276 849892698 341730121 507667115 177333291 973732090 741556786 944771438 678201472 968359189 429773132 478112493 14972987 554930721 19104761 406749111 639523156 742779039 140661684 439296500 631087867 722687130 87290429 99811071 128392147 624827430 954822377 994352216 135514347 535258273 85278823 908208904 947529066 978819799 900902825 922057025 760315569 776222403 633763110 873572431 205235320 804797982 661142289 844939123 146408128 885429758 521036289 791182581 108661913 818278752 413854859 528830678 675005673 813902979 860700563 894255839 223360285 922519824 269336697 937889498 990920921 999079559 386412804 533684235 60454294 620126555 855209126 923621270 67246461 335940883 507951727 926300225 784656728 846220259 432207524 598491422 146059011 352918815 351379733 606717930 574303512 588459739 952734977 980616746 289318644 379955212 808027639 829411088 465249628 887170735 922793249 975921993 871617327 901314874 814722377 889381204 396780408 538640154 297961682 331004132 639547616 746217429 261675647 635576989 792074363 994737846 135136539 441839387 56755050 315010875 140556143 535724601 14160931 563022720 225282068 353483214 256347449 942984271 247875489 618414452 165402733 899251174 951053031 965719042 2304579 809914900 893680026 987262845 217345109 403463005 932263763 976713528 718542302 751904993 628747056 899494502 613736632 813676566 152046291 648885414 70431375 350933665 24925959 696684793 361948955 762772574 420005024 562275349 911092768 981180551 875963047 966582427 694273981 927790218 8966234 773319321 11465839 884827339 323984531 910360800 364200259 664354396 114312474 491604023 520317521 981253822 960689464 963798824 262929367 296772839 414055283 925693100 626145393 742482475 435827999 922597189 986012568 991383811 250954080 554360047 306096463 682045702 204140448 794828106 893840379 898842706 136699728 755553848 637805906 663686503 940172651 949438895 759463544 972852633 486399839 933383999 443644166 529660170 737207557 935495673 447508711 913541930 903791690 998935428 644860562 866630733 294881989 669600175 913045902 976600920 97538318 599484769 773859325 800037212 49461943 351288246 921306852 931188286 92701707 285071345 707824947 860912703 308815032 525291551 807190234 988652041 143151948 931614056 62626047 841057380 278890264 728279792 291247318 406349840 834598293 862103826 942827336 945341384 335461206 483020053 728209947 829898263 847094680 959117921 235634685 400879925 958412571 968089371 369016471 931762091 939817361 946411638 795278416 944853123 950798035 996343507 948998187 959276857 573783949 621968963 26159095 429154176 930551415 971526459 271183837 415390646 655374884 925618939 211726218 785531920 115643906 834876182 180757483 540770994 882890319 994449729 865612335 993151228 315818583 846162679 246981684 304692064 76663570 705831691 669677785 695920560 399528648 836314305 344854059 731093897 693872848 835240380 21203637 41151055 812902419 975818205 132614336 897028010 287286494 978259702 591181708 931622811 752465157 848294061 196575404 432138860 513189523 909779793 844406918 880364953 545318266 547827187 373536124 573658280 420304871 906264438 356781181 461572587 161688596 358675995 284131430 358706249 828987868 886395073 759353713 826990901 626818551 942812800 577288768 660679982 374963686 916071999 997606527 999145519 60462010 158297083 243425684 821417573 622283051 850251176 644475347 665452242 517551181 690142456 614048305 724056525 136493902 272392196 537916384 962789750 997884937 998861784 886902026 918860617 151809565 673549560 806509893 836218981 524048479 561124427 426525134 483519713 611966639 695756796 160641475 532950611 618844343 948982876 715345675 865964796 157033317 630713944 607667941 672254592 270872224 347518933 966915081 970861519 690979821 691566133 338981396 709587323 983917498 987319489 179755520 594992873 346994757 544692376 996689248 998442232 153891673 790229542 403984135 967947846 596395787 865656778 608575765 932319556 732062949 963309727 656975074 852675402 503135326 736550881 398264693 817401140 466135017 512401017 952511985 991252329 518056134 886920003 282717653 573722133 642457898 743862882 175564593 921982074 792258524 901304596 485491350 541449702 310520320 427758876 255731648 445029392 826918520 869273548 362941966 504716603 142642097 870273232 822014576 928160610 391358320 503301287 364657948 879324729 201162169 978187059 50547149 768864349 791209684 895305148 47482504 504623302 98654150 158108056 215000872 285133161 398230042 438470968 896390466 898920946 873578405 942197218 968894969 977828374 836170490 892249093 551603300 618970604 371373624 906475637 19074811 489517161 545020686 811414209 724765079 739528990 153941995 528343676 787587284 890697672 674645493 963442291 172949365 496998812 385530568 665068458 874035629 922448756 89923869 294078208 846414229 910850403 233321057 492001221 134979169 191805897 894237008 922918010 380578499 622958879 329548978 521814727 217676653 306028260 493301749 903362525 34205154 668617785 954557817 975195423 798743008 843215238 247009229 548517603 33356729 190330179 740947858 926369731 577307652 689709730 220722170 996281339 882524804 975657914 423583474 970409749 943383982 945870174 712025864 903031819 594602964 858488731 915538688 970675204 387222658 797599672 959962323 991153421 785670669 789706936 507018826 606265544 593986177 695309233 358544921 695240347 74659973 629340306 727641325 894631390 201957327 806651948 275534492 961347819 746692752 878217484 566100386 584364569 284661735 393213751 683542188 703455027 621956795 928373492 882188242 952182133 64339746 198606788 714857089 768018169 731560656 919918688 94186703 793003997 456766293 634479777 582027031 612604479 146564715 416736316 971621993 990909144 57938058 642544112 219994720 630455842 260276867 398512575 249256973 592218233 585374952 769591826 984414249 995947875 653505043 750866386 305893491 626540395 150689706 963677159 272923593 934260151 393908802 662593429 200529807 352444447 10723992 231940728 559536808 925791252 168964529 674701221 308519390 444040857 25463301 586737128 348484072 553186706 588224508 622681380 537500279 877024810 915273566 987119550 491398622 673973670 196305105 739302926 83774555 480075497 986050375 997735152 36187353 87476373 933000460 952892111 7618546 214217418 381861498 962955411 172105594 711422836 483558972 892556220 904816475 948124699 320949439 757974343 291611041 960116544 306853774 411505549 283723938 561341029 183292626 565530362 535895747 650338640 682451089 760891798 614014500 800779258 59255543 433327657 367959155 795530543 842412681 882213401 160338599 754629875 701452160 781253383 989080159 993827775 699750858 796997052 30930495 700748453 693073162 886292646 419443467 919149143 578436102 895653370 890623917 982153573 127067281 843971546 681215586 700343050 966533093 994266794 599403706 629999291 258678575 438354910 756553904 864101877 963327222 993031949 425565541 932998500 556982279 949783271 164685816 302817119 687105001 898103002 328313748 638693399 850053161 974703242 847557753 904363694 900006837 910798525 88395950 142073807 333353384 908294602 668346701 796756004 638275331 926255324 462843030 886960701 577405154 749814986 334228345 442118765 787726951 823188815 62895843 272409473 503459057 838041761 700908275 892760715 854166136 970304918 525014020 883624979 607233221 992420007 200546114 574961086 1133006 495789081 174287327 506927546 216070616 581568758 632080498 707907485 864684933 908075975 433130988 596676445 528577591 865993326 862860993 885351091 794245339 990786647 318131769 948362186 632809919 814532590 646521245 923565782 312227504 613250182 958837318 974361359 583045849 887186439 652873217 826631557 574388230 875153603 589034699 935116163 606088194 721705475 861183197 974403581 249408636 958541096 387918891 486663399 952656295 996818027 406241344 669469090 818341635 847456131 604988153 875552051 420431198 970163268 399394350 867511992 789616665 832333219 392907284 707985087 283405159 923177363 969030675 971336810 226225487 542333029 916833485 967027380 29853213 186197258 220702804 389251083 755471216 940655294 532474671 824739636 171433451 867617141 547181108 716423547 974264124 998522320 657080046 729447561 191082218 788481882 382895027 978738750 545566333 589421298 611866656 749513698 396224490 915886563 189193523 458226242 788775521 952978973 323300899 596774932 504800462 788037052 90669704 971374740 734435930 776845350 952767400 975580322 668118191 882753814 293179951 476339539 849432095 911344645 194632038 395660980 213508291 553142378 974368180 989224010 275195882 572199134 943979470 991752385 302246346 583862896 77974687 158730881 223706654 530991377 596974897 779365507 617964197 956084548 801781989 872980922 890411130 892371756 366612682 973122481 388366415 589541804 782447233 954055073 483379202 835106346 708142118 824324573 326274789 739269688 474127431 868811044 200212794 594841531 201599181 939959085 1405814 655153516 11142045 543883613 254059721 326373633 161584764 592486271 710854038 931379925 166564068 872555336 436247248 481531664 199783625 656628946 768101544 875284277 878666816 984166744 41149516 809977380 610309349 989871513 680869092 987692611 898569145 938724748 426722032 985951739 680770849 732968068 183928216 231717102 366005686 748228683 309231883 811022794 477051960 875202901 434875102 591066543 682331981 854757972 470128390 517178629 497505908 637756869 215091451 500301420 935315217 981419212 893396496 936930660 123000574 827238505 586900216 624510743 74515384 527022379 944484422 950495633 576045278 826114990 417503360 969369330 250055835 266022595 371516817 385475723 248157555 327492956 117359907 208018325 818648378 866665353 653152746 928677818 914916044 939223125 348701645 791866224 325582578 834188582 121527460 268503312 266850815 319875481 706003079 890957063 736044759 804818992 651245209 883978134 699756351 708434370 394710652 706662423 238671187 485567649 126965540 656509813 630557335 882859445 740581396 898798704 830758590 840105911 630809179 736479699 419201374 629452770 259829931 477273953 578259237 634552249 191260634 823763506 821766207 990908312 737924566 824012585 737542706 930348094 490254324 584698351 282220372 562343394 511299034 734458305 282733290 866025971 633428452 676203095 662420557 871831146 269363670 490994714 686466679 773682073 559754656 920088326 887184803 991657317 656215617 678028781 932625301 959459948 471851855 955362401 191725273 367355288 903066151 908482330 681800587 872924076 276965948 315235137 288786080 446278116 97027114 443667506 151916631 272809150 932789848 938205564 444102524 830645212 225109582 367234871 2366204 122018312 610634813 877474985 755435399 828311468 622233221 735495802 915511187 986207694 760229586 944592613 874379580 990526405 248125684 351957020 141373710 331385089 504393930 710363921 876920212 933664044 182959356 512233654 805562524 951438360 298606379 611038505 222038776 340565302 908340640 975297285 112895436 170514425 553123091 716352842 715522653 865391903 229041411 524996838 652568926 895605133 699625856 702638094 897691821 918370521 919872926 941671945 314628474 466285457 984256396 991753889 801539328 953494703 128244564 599965200 807970306 937741710 417324560 474762357 687966861 900566530 402001133 495032868 298829459 859177714 473982297 786648336 112538077 670527890 559766142 853868754 426353863 530693865 72961379 892903392 10490288 890051803 304032028 650620049 518804135 541784205 113057516 608439647 253992617 891911088 873226845 897380328 781969702 793480561 221113585 538742261 587999170 898029169 107504034 659958243 191444120 867169100 917196940 974721938 743469671 763245226 290768115 350636521 59875478 934997559 722542235 792504598 761388586 998891631 928445400 956553192 792292622 926254381 703090539 903703350 593364404 734817471 936587549 956963620 983900999 984757215 601927818 993087186 625429359 846591783 580504056 964457937 833288615 975093721 938151881 942053854 873648493 948189767 600328016 776903539 563946470 839379470 797811545 950350162 354343433 822377994 934523136 989068025 774550914 932319416 804521233 861027144 985179953 992388789 836102360 908007188 463832466 792013603 283353657 297460648 701862463 841536241 710921341 728237890 673653522 955587025 106949876 399890069 637712906 688754571 161589015 782875270 14498618 721826231 817070823 830784587 947307723 990229502 951389092 967714759 512870151 802705740 419641326 588480391 725455093 806552038 481916420 523093352 976810681 983025953 286179024 371926174 614864976 676370476 966564500 996771419 219472369 244773710 223394930 998963846 113397581 503564006 13741491 187412837 143350020 340634639 233292174 725557231 349155623 757521766 456340820 467075771 125302683 639501894 931544558 942764910 923216771 954750662 370845015 855301146 309826436 444327749 148251582 226070810 963916481 971012579 41450632 859356788 13816513 105172383 843199769 859636862 267159773 681538350 196879614 871495932 402665263 963459693 899364248 993119598 193917536 588705478 400825685 970045669 351852909 962714266 698382463 996083995 74984233 835415647 817494707 961188911 342512801 901871870 90503792 282404832 21401981 648933999 410822221 676151013 192388079 513112393 402522558 670342947 746842953 872579352 347272645 680998380 548079133 824141224 783756850 933042650 829147344 920719690 764746932 977299343 725438986 956006782 580801811 779840340 785072468 979728862 498020530 719777737 416397951 840038224 320677067 774520697 335531592 981868758 960428330 984500324 106922546 731079490 200802127 872485537 832328821 995208790 122802370 500256699 566190432 661110678 866210937 962547489 557311070 928142161 486325336 963944413 396585638 460860962 225609397 773410027 219064720 655202183 900157676 967211610 211455641 772922871 596266914 880856402 804984433 849428170 857214073 917029247 406866514 551858627 372148979 438714758 861448442 941284358 993847780 996446441 301897725 409963684 399631855 858168883 887798279 893843998 899553433 988436772 110412844 546588361 682911755 909487715 261895126 487295461 642581760 967453116 201288391 273804349 21323938 155453053 847922622 901392478 541678240 733440031 733215044 904760260 131143107 166496369 923066949 976616633 75523878 983635897 620710924 639724030 446415699 727794108 552448512 671662130 382367400 398693484 997846299 999051015 978717308 997379954 933102188 979601963 392363212 993905539 607994160 637687324 136262618 888889417 888782248 962775081 794222964 927264483 570406844 801391007 378260287 456220795 12473357 539213705 61377372 313338202 274033747 969940433 732560020 737335393 12047956 428473502 160556004 175459467 348306851 647280997 849186709 900636492 329285454 441579448 471859915 571989929 648611981 858020431 532973312 553935005 727794546 838682473 150107757 495928686 503366635 974841059 372427246 707345957 355215598 890929451 620994653 782969247 43394099 977723798 675062370 811594725 300562844 846410986 754046493 763698637 92885360 106281494 842921115 970492641 26524849 147901230 161035386 774825859 859416871 872735987 625028205 721625171 751246292 813422897 138480190 565926428 201389593 363111751 911907742 995958967 848416636 918416954 234575532 767349078 424280140 533797713 409692104 609940323 706292828 721669320 853494969 961094427 2640515 508587889 448283245 716330478 431414560 724580663 92911387 478516392 274086155 523803052 460791145 805985087 445842576 876204847 805166388 830571928 862726346 886868773 286150035 502208152 554202246 706485753 550006568 584741069 593422598 830743480 891644330 966156566 510905525 940866975 844343705 884951662 480234136 871921808 228723296 975427349 66732268 349940999 333707266 546642441 513526162 862631140 21896875 419578550 72080552 571600697 753804871 898288292 880406663 911188673 865891894 888075870 104415644 441154767 519008322 666391325 421375971 722823191 65518485 206359685 61992198 876362179 72121875 281427647 808788666 996410154 356772135 703772124 171563352 240382991 684670954 794381102 370230202 574138608 480948965 844769814 755121986 923353330 250250816 847084377 70367545 178079695 900290940 983671355 294517550 926521313 881648325 940863013 838551033 905489845 32031047 910840174 417715720 500105310 160131676 801620335 765232335 938378532 330343804 844468480 838641831 975286785 469899853 718689181 920221692 924492238 912332343 971892982 76172052 873653622 159089202 951082423 121564980 413162457 977866465 989877342 791437289 821893369 620413594 720585262 204684485 764569318 714008462 954256762 973395285 973535483 465797868 485030796 346874150 577219642 591023692 926247029 831122932 884573897 752549250 984094136 633375906 758670503 698479129 975810666 525314051 994838069 958679450 973709725 709103447 796567897 410493817 912072817 432941414 465502547 904409093 910849127 76395144 396642640 572631013 696243052 407581049 993833236 949876065 960715630 462186929 835327522 130354742 349702692 805612289 942419294 926610082 940505280 804801335 831013950 600156174 826818411 152038650 927481790 527215080 723001795 91657511 712004996 187785259 660327171 985773162 991022643 253992858 898675463 196922350 288451653 825253360 976412535 60810831 191269449 567586218 902606236 466038736 722758939 209115796 537281436 139149219 921031603 992130531 992519436 747013377 875134342 645374747 889143557 608696375 807411012 851147109 870555671 878016945 915607740 620966078 746420389 657930705 701300310 83372575 575025211 192582221 751813439 870709577 993327891 823888882 961940028 718387544 843263898 390543373 600496950 547201319 903142240 122899228 194284146 595713220 697508877 591338479 853116500 977831966 979477151 318017783 458555922 553177257 556816826 427371170 706525221 764782710 805819252 403902700 451285097 892420057 971055479 421228347 880063472 428648169 522623176 495300206 723175718 532518676 552790084 329218766 651689354 453262989 789683189 827019930 880201673 813478659 846247840 267690124 324978614 291721872 710052761 137705498 499382947 200589540 829041960 779438365 895750914 145534507 692627688 3977739 225397572 435638646 944551311 56750920 712282085 494908003 723534425 870744238 938343422 777047062 892130670 421471657 495597250 108590234 343192802 900572686 959970126 135890793 349280856 826110095 966618704 478332853 854134062 79322672 858020838 729600695 808357281 389409437 399803171 461791785 640053206 202933763 554447383 240409158 364809407 208785625 385960214 724075848 855744819 380830647 442372277 222351451 906473143 287411812 786521836 539647399 754893988 947290460 968501440 675887310 816621614 418884116 709277095 811106974 921848492 164877885 803437992 994152916 996494105 581915919 821656830 555308584 951154932 25498506 348533858 195861230 847741689 633583018 686008668 17124385 185809235 225731025 721875219 763620370 941111532 22941836 874393452 809376578 893968208 689031102 827388831 849511871 997058319 135309728 184208464 659437361 744502137 433336334 999058112 108265977 589714269 4694339 864920965 85473049 515038071 296692017 660698046 51822799 145499493 394834261 514426513 57052155 582418943 528334747 728874749 484443355 940625657 218948625 726373949 441947284 559402357 982306275 992553299 363782281 565328875 726315783 888685476 246377608 514489834 983842173 987058215 102209166 380307546 484070685 552900195 662689740 722868707 56137088 911604123 952437060 962620018 335970934 718510089 149265372 721027092 570069485 723531815 770881489 991421049 1204365 874790371 176025004 327965047 673797240 978348693 736684078 975632537 1416615 217727604 185220720 976220638 670103519 760756833 583861924 925922096 330874390 973061260 542381080 709049712 393122254 668295477 534978733 669989752 586083313 946430753 229160364 481697045 947200175 976672966 261170470 296098735 372646365 378282735 236144063 912756498 921990599 960973098 770476642 946873989 118803061 768043794 920818099 943050477 674913855 909956323 344005985 880068352 704259868 783027703 155344496 855351548 129818208 723287185 954986155 968803606 909316365 962010441 559580292 723758688 915713969 920214961 206955789 521623902 943776414 989385780 299413470 315895723 570221367 681253553 590617156 857891946 713596508 860828740 90654734 188076026 233422404 497699208 139226942 369702536 619992716 996932750 56434088 296461377 998384327 998852734 665242583 894945130 399479428 666154887 52006142 893535904 456446458 720453074 985761274 995881783 543446069 613645788 825800577 947500919 709410752 757819277 846155596 866507482 500759561 802443049 85883530 599896552 216471361 637021975 114894184 865840680 658184578 857354613 231061996 629354767 820530604 902993664 418683571 627376844 956608056 978972587 591711625 593220325 414072534 651300138 188318289 526111054 393422524 425586495 665708322 951944632 314010430 841157627 136622804 475252725 283537284 528389626 565522514 657866515 713171076 741689990 612792566 911452368 182659217 692223865 567020339 656373665 507692711 845599041 71215587 276871615 610304146 979176165 846401101 992317669 762792863 819679383 153614249 558915485 416092330 626363732 338624593 911861157 601406657 770897173 504092004 627932073 364604835 415376631 128464634 757749579 37458444 200035486 255614933 351133060 495028993 717444439 457323973 892688440 265132248 446631728 915393837 967493185 228777278 772573132 826653744 969013764 47743638 967202475 138670446 844015789 656530524 757068949 261227206 549545291 497474952 913630576 459421916 568552591 725406593 894548170 79801216 698641965 872246970 949309491 808429253 884202487 578737044 794517445 917670704 947402970 437188901 554131770 973411037 976198064 447840332 637916696 158269445 630726348 756674938 936195924 795395185 919633812 854062066 895600546 459508614 997519298 787313196 804483907 335403131 841203993 805866137 879857261 523571555 676671701 15820342 256246171 325943101 643741806 768273430 787275765 34504258 206051906 688269820 904040554 607742522 790630705 449703780 859476633 95802545 695758769 299758857 684771957 358275932 655738880 4979288 247657655 587760180 898985885 278161100 899522836 728495217 765077946 692397577 992229172 534042865 611379478 490911749 723647786 951343469 969711328 623807543 758166736 84449400 655808663 52556173 168516167 709183956 917730372 89398956 662318374 259099167 837389543 65469610 904675673 161482094 960431784 774152122 964120912 856024920 884066006 860109014 951256792 617651063 623781903 433589496 862475002 518832495 714615560 634782230 788777144 591721474 994767180 818703335 950342167 878724153 932521689 71286180 664447019 526587930 788373874 7076351 723626432 324108623 653221253 606122544 875392339 417105393 474927282 871961705 982365467 123956265 433451067 167814007 560253266 157924685 677877350 107509737 856165080 531025205 537971239 626754782 699096962 203085563 344178096 329787906 435495239 780454518 898561559 824320631 876963390 53188735 372517539 365674471 433497582 497099317 904667681 755864658 878158267 916818415 954817213 479035327 950012585 770594900 799864860 186238739 324177971 717169110 817321166 730632059 753465026 543242832 600111367 827179181 991637790 778660135 997427675 116186432 992408147 139148513 776193908 603839109 734107312 640500062 817405837 350324892 448830742 454372413 456203519 407033554 490454400 896246677 929093944 773498280 833582604 728213292 916440893 863545101 997105023 562795364 609029686 600653442 715676994 899028342 959687436 794930006 797234317 323706612 806842747 340913568 874510406 562791114 780359276 988724205 999244455 423432746 898174726 932180107 986590439 578224834 815390528 478530086 945204943 268465437 271944373 828503746 856886400 948958 290321413 15876786 697484065 42830606 199185777 284907787 979667386 173299929 674117183 587119790 812190981 549210436 648092391 21880429 405467355 32250220 729632751 781381954 981868999 20323551 727173008 306636392 361579128 79024306 772992931 122235976 168509072 357961127 860399649 293793817 632884678 202614214 794390123 309038733 769333722 160436005 591958665 792512609 979562316 419980351 923746900 156977675 209166699 154316106 231689228 50379464 488724573 298425538 913386507 491759604 963550947 729981811 880750251 392472722 586661118 635627957 900417512 744954462 750848350 463818477 852769841 945056751 946274577 663985716 701158664 301285580 772205587 109889403 282437677 727920936 960790493 378827638 509564434 637764392 654544063 429048095 756650687 674397275 904756376 622329623 906460300 715405606 888496648 304984122 897919212 63115145 445737788 581376961 618067111 231814529 437068391 431117588 486683763 561456411 784547317 659801540 999074972 224270916 628842300 583434795 754313279 85955731 225306471 677233328 947676006 321987213 461391725 41186995 362334980 675525329 991454115 429384226 751887479 293015002 450827231 815939990 841825969 835102362 923796796 227416320 687474912 438350510 466466637 210165993 247439729 140987231 824932685 424208949 675433581 68450907 175646728 713399174 876132635 231754444 610829156 649464528 925929760 674586788 806193590 647947298 908326821 438731708 500347941 633681030 977105239 270824731 881896997 371048189 730274414 638545646 896361053 518764858 954431309 758154031 827906082 657936097 881515540 689661273 964624133 638218030 948469202 275478051 295073309 594296732 726991289 724484676 921992486 737061825 888719743 413547133 840695948 890564703 934835772 525062535 965229058 199644969 292603585 706991282 824133700 355668618 664330247 527681862 693359396 170504827 985542274 851474967 867955150 698491483 853210891 988656281 990248419 866524202 953321920 572180781 893120970 959568604 990365884 618422086 756901566 488489478 494742484 981938818 993549621 617097092 708141577 554509592 974800773 515740235 909061972 813733502 996657290 157262487 695949230 330949886 913640250 756527319 993013971 704697152 763699530 763690676 763849313 241404187 773689898 461822474 564755997 773788734 838460038 237118700 540821968 421893283 542038827 487252337 661708957 84292532 700614329 136203310 424238125 796228410 869647990 34261906 128896360 927613317 956807704 908276766 963349459 772652891 981893439 340731755 561050652 792116847 976205005 161972200 671016792 803069517 987254836 459722436 495907104 484213599 751114993 653451029 872200262 34846141 177863683 638608985 747065630 241471914 265570798 661001619 809183417 686328265 789499164 526243225 875698468 836539926 990902658 154840661 567670368 361748045 897825143 874186528 952941778 339781063 978080398 569253924 973112554 389064419 448419348 698297236 877415323 744134206 872135370 303170332 479679378 935367867 935581335 416627819 664497375 162893843 951747247 577507973 897470625 214234150 470557129 826935511 845579228 233378504 371347217 117317461 286645967 52315313 645238104 710098975 791561095 352545127 816052597 837209431 895069305 3453695 12803260 638535569 651080856 536529455 579022049 163915214 436429231 753038745 817944429 350914826 842649208 930916568 943587310 807396652 926813708 508729915 744887029 786328494 934606142 243740910 312115131 520923973 747967586 324113282 924650688 986135043 994427676 355922811 877027575 640709084 885607907 85594266 446451047 694716998 883942464 520043629 804859721 940302664 970389166 927723179 995007884 817371735 932496595 227016985 959824108 759217040 923894782 480905478 845262584 80592170 968253503 868420976 888618625 102139632 398069694 179299231 578283988 122413547 151825783 164307910 738383358 920915312 971529157 493187743 963204404 277463005 488836051 595093620 892220168 160398580 270859200 666725842 992322047 383788072 515918598 955544217 970466375 703700916 767704195 149883355 450918489 178471655 321543585 405079264 800048121 653050704 790851697 578079021 730079748 580390563 810103987 179322990 532561797 984579832 994054367 272061447 985539396 649670550 958439127 575592774 864940976 242947740 357783941 65561275 230605788 484100902 995326535 340177312 846170913 175462809 518743307 837871894 919661597 932677962 960025245 526103799 747348255 880089922 965338270 173830586 998344120 516623090 756001203 420063770 931609570 541138748 598873816 456391975 993100784 726062800 899937047 122927199 203807671 434368885 781937093 334042386 358769479 688919335 852665731 610260603 806426171 451229926 654735732 468266603 721445856 62457377 838834752 113929994 405108439 557677177 766721750 702182734 925786467 523487048 591513017 104523682 379051935 575629905 640575563 352953253 669733935 418998072 891378082 721769216 844295265 951824061 996383116 835732266 914583817 324445337 863108570 169151375 961057209 818306687 955266041 279601046 305486070 713987006 896403805 344101717 600334403 772887358 795336739 301336245 489878307 327377097 521937074 980849602 991485788 801178054 875948143 313710589 438230318 53564430 213765820 475385864 615211530 82492959 158858871 428658616 773747114 952377292 985597842 338358212 888613075 506242001 712768348 649490485 768313146 857468629 955420036 188181759 774633924 818501123 895482359 872466346 873708147 954754328 990072413 603738904 669370470 145143251 443621816 571006337 756610948 211554639 263834492 118594563 736825121 431420553 645092949 455342524 508394171 75339074 400608404 919163626 965191375 539302371 621911232 452126754 490418177 546408609 864093204 828247223 900324065 806296666 855733314 230174135 956094368 561606897 786443998 268867547 695216676 616000779 907045572 907441881 937453584 218351657 898888172 811482766 839808646 695729532 707650488 586909233 805930541 314212357 329250586 393703746 891354514 886220617 996785565 173648174 351792957 461703028 904702070 202451393 881189241 353402797 745892555 571727628 770610147 240128809 845833582 327220103 570583294 739106762 768500723 326389189 688759406 74315392 432116067 39404679 111536892 628452786 707815053 66574625 122966186 271297625 768945893 965851484 976615852 239130373 621227450 342828756 457327437 473283957 712981496 859890855 968651900 740658422 828981468 357008742 555103072 862387746 866778455 183709958 821345975 806748196 968695029 629329043 647876325 160506001 801505022 806591652 956747443 142638396 342434015 310985733 380939305 775231768 933967435 690610512 876261579 155841800 905226486 21246576 48390133 138684664 894549787 756310876 966445107 453967605 536725251 304434539 889690255 350715502 523190765 503899795 779449734 986522351 995766683 61231489 205340942 647753956 872372227 888475434 889059850 942386088 976564444 492801511 544929527 719271649 781077325 567343610 749891488 683097077 718433957 498541995 636732604 363174180 596416144 361676594 878713807 334837055 695621547 786425164 995146895 169194686 459257544 364722742 429479505 954759229 963775198 19210471 40442391 823753702 945853253 96162541 113788743 705332358 969425326 838344194 986280114 73073647 213785772 44016342 402281585 143519391 256732058 846581190 914415262 749226193 981145245 181683726 405764808 13818353 876168972 770466334 969889835 446284341 546165561 826608640 879335350 774695469 867799413 929781186 930389297 701605088 711314613 746592278 751049676 418391350 882353160 501418113 798371338 177787025 569745186 403767485 782000304 445534611 808697690 492191014 507551211 614728618 667402602 440437889 958931336 152124270 657552705 772240365 966984807 677090803 747408666 768428280 805602057 477364683 767357187 83122752 722815655 907028450 927163308 594531511 746887769 454590563 671789424 932018450 961115591 621589835 671331168 952740389 998677546 433208295 809032828 288935228 560366142 662597978 997224308 239375789 528148396 313795364 815400522 224031866 960847013 795157539 867966130 493178654 712747266 223626941 919088439 290422762 843181553 516427174 870308972 554546914 676731297 504006285 755975486 856317286 935172052 646725236 859741818 815843691 857456691 847068264 877057016 676241018 846601530 588313332 811205405 207047498 668631672 863296123 974013462 574762754 886976381 692505580 982886333 134626366 296470765 443501958 776956946 923900579 943615955 389404771 723647337 976749280 986179936 453072081 855400837 132443096 419412462 683498432 759543192 321654929 367902523 327257431 941884089 818541113 866914050 757628471 922876721 354181922 972725456 210856536 844881165 177828008 565158806 666233824 728442650 776022395 866721706 13519372 933760711 319404119 731836766 467673397 620139464 849836985 888884002 375536486 499434166 59211231 253545986 79244644 268135374 590173064 930428398 348623069 555902508 849533239 902709969 498362217 731091505 377989937 511381523 288518789 641860001 938827108 950029055 856060427 904981594 645668827 702572416 82148495 230082370 624181602 744879274 10441505 677731273 585129041 732006655 308592980 951228335 944956304 994640713 342071929 520072353 924705220 926638158 299213715 664168780 184681948 379124437 864802905 939418139 872823463 902847652 695111412 842021666 176454209 732209721 984192974 988475831 592701684 952588657 639063229 718566877 96275721 961049030 950800739 954962080 191116214 859365159 68566667 338912002 84425265 198051096 978251025 980236698 63202943 544851045 789973352 860773466 22155402 396223845 334271239 958676043 604004594 670649175 225843154 244469891 554242486 828628117 790336939 946711169 514471431 874013949 120242544 997601659 934302235 969389222 384015525 817804247 152656839 885245567 506867379 658094884 40860888 71030184 325004747 498344496 334373051 973300235 90463732 817060735 491422212 973741556 397357012 817800465 376778749 493009807 801957959 926409903 354277914 923685164 495854744 890739389 820156961 955721293 880713788 963872364 996970835 997713882 591854899 708704341 851011234 877736671 928618000 928889174 206625049 458354917 937682550 963507159 846312368 885144909 83811744 363799011 632706945 791807962 194318848 270166753 457392288 860943275 100834642 772748102 494208574 706738180 332328247 974919637 984643546 998347906 984484011 998758174 860673470 861490118 236439337 391129756 740115611 879366731 664234415 946765376 666959106 668173063 506248859 885013636 754399010 801103975 408091587 710167644 813471670 864822401 992558765 993699383 152556963 714035289 950520509 979568209 763133671 931612487 403359039 592615579 152111130 465754265 441427947 592636150 921569225 993856599 141325282 638078015 854717409 864855265 39602952 252423141 65087997 216915968 159402933 299256974 206265340 892977584 59928810 88885975 773876067 991990408 761548802 793133016 743285330 800090697 328142547 677647025 402827009 958320571 616369931 801950432 442357963 818110700 696428789 713316062 278624301 576226480 536314092 639841050 224433329 544020703 105168401 554707037 596716710 628626830 38130927 555135874 770802841 948462651 996119956 998896402 617896246 987284819 445754909 564053534 866326945 937367979 568349646 790630902 272885439 286924004 675961350 867377535 933543958 992933356 602585613 724159366 604489725 846807781 183049157 793001572 430802925 490945241 685412973 890529549 240944610 500773738 958914471 969853552 534291446 703137495 446663706 632883134 982874779 988975718 515706950 813234121 83083786 443338407 112047168 185063385 886538146 908994611 41537774 491909847 619394388 759650777 750063664 938387136 665475556 798272846 902956931 916556027 133367002 452223599 369189666 751602615 291295840 633287865 459416577 773458199 958720946 971094886 909710818 922904307 106528754 654008514 197561931 412600191 20706466 257283702 299979897 747147066 78198362 193361611 230547284 860231075 428990138 605364173 51483506 300535002 207866223 543904506 861547493 878110127 609804135 633320641 443714376 682066316 369637845 548907172 3552083 436533907 454165135 701266326 1717412 955068956 98027334 981164068 550435651 809934306 420673424 661581294 559501204 739795839 140902783 547360380 915265421 983808507 452559916 543294051 481725888 535746605 10989189 579578850 402085107 495713115 4753811 627588940 71926269 779203439 569360689 868240176 373530828 475120063 549475159 766371145 860280765 871487445 135221219 608883207 915138537 958073485 346576235 684325021 346337943 368593091 815442434 976374412 702148279 881282747 492194518 500035099 751774833 876268764 382579582 453164419 909389027 987650094 656084683 912351085 528804329 643175535 639197238 783105698 380872942 414428519 25260048 406437948 69418369 224808329 529184577 707352126 926917615 973640323 279205618 581013738 452527343 778611388 720451617 990953963 808507075 810492757 842146267 926953567 48890173 447132631 387387592 779865261 339080063 646789108 639924143 770126815 36329747 303633130 18777975 788827290 170344062 400316717 910761439 973634421 321799189 407575248 538637603 974486078 127335836 640489872 29898678 311890412 60076124 214236156 792261530 934758225 19951019 304317867 625579889 726457277 560049289 642682320 484022858 814677698 782633211 956171722 718884881 725546269 151472569 169577844 195048082 482785243 427970923 725907190 126080569 919676558 320763259 653830659 237132706 557450213 43456295 567794547 239619872 311911328 81070900 871822142 76546604 964364388 946846473 954079749 338796881 538447378 972754323 996208632 658059467 883735554 687496661 792820497 406474288 975786107 797943087 895979574 532610273 594939101 563729017 935942355 166625614 372961384 359181696 723519337 726899763 779189444 163718930 581953348 570913853 984855128 460655609 903238607 637855871 945582343 793623750 844035237 586850666 749050383 868197790 980452454 678972908 738220386 205829410 589406061 727466478 779835685 874402274 932867213 90681116 891661683 522819694 795896622 727510512 976319077 405378181 890828185 582162420 594004327 690396665 782893656 636543597 778331536 158288020 836673410 943880480 950111710 397288980 611336098 685162586 908710626 629431099 759974419 546154127 855321132 237587373 612274633 652435207 918992550 525464428 638932183 491769310 583746872 467995172 673979231 779380339 874249205 456287831 829638281 889095031 931235517 209233848 535909379 397444466 945843753 894385682 947489811 679432437 692470397 261141481 997955158 160893370 530494689 949642109 974787026 974222702 986311884 952412263 990447117 784587247 816265451 480839082 844608733 232229398 902934541 426119854 827772144 837591815 975287245 94589744 494238368 296917944 685936105 417944910 530105101 277307694 547634291 513338555 748039716 722580588 786001170 61560700 639197744 840024126 964259328 294490970 950867931 730528465 953766511 272380486 802945810 750036758 957998292 567469675 848724250 554880289 556433852 772556203 965423330 332834314 342406047 573575650 977021599 863174277 902505922 350215094 742660140 437148170 455764631 706278959 711468723 566609754 679268328 642665753 915552431 582888288 823813120 723837631 767606279 498506108 688329165 938559815 966859114 657088136 978291507 19044472 978322313 563793771 782383985 430544918 736927411 9345690 230581719 612431226 775824167 464799592 711900351 985767929 994664782 274980938 406928136 689430332 980914207 325850749 876856977 422772519 852919485 302428293 313265479 484152727 708349056 916259450 981464146 99162070 915111897 6944496 183955337 78286463 198525790 669912164 783818453 945514232 980701513 134836106 945655634 195486151 777519103 646501802 858870016 612870003 709060318 500049561 988384633 778109897 939565490 237179409 460594227 926234814 990751124 542202070 871413796 559600846 697201110 81193057 145818189 802798095 837732087 103141507 678127575 135821462 291656474 352427269 417531014 235710629 425914085 326637171 754281428 3098825 447364666 161484663 611219428 559792887 764563612 620128628 783601161 252761796 517660736 781534680 945353305 91820169 823831967 568432662 864798882 623676852 952818535 939917359 978234983 551099304 820231568 837345532 855160800 929852959 933600211 359575185 482740301 250771813 805193280 391432008 529819257 580491093 888251547 490699077 490935174 324286543 547139033 53432206 360240561 936392322 966461141 166000226 482254782 930252357 997972736 690837245 899274142 32849587 257725145 600912443 837387803 154638941 627661472 74906764 156584487 12413110 467480376 506870502 672882727 381484327 860084958 469084271 706831121 57512940 364842321 278592253 314043842 202178211 245059654 209461095 435600999 182794463 822347708 576420179 634844704 142584546 496711395 78058705 335421188 909691408 950375362 45562276 883105783 950136621 955170764 461146810 637452138 881237089 996521489 494210949 929966514 908297354 941687520 926777395 992788186 421190355 894150622 107636313 420998047 305177959 716712044 832833284 873563068 933524268 943491871 890390652 896494609 324183283 364241053 988008504 991310573 594903940 989614662 581883157 718343590 516497338 992881232 147385536 997503983 993763503 998876816 319062025 581616683 923267394 930228858 680581762 845632280 169734206 350335716 321080799 373625853 71195905 695183144 829090074 881861287 609515152 636390188 800530475 847849652 315888749 324821821 466742599 537274274 107407582 776508920 866676837 897844180 384122179 572491248 435181693 445232380 671532254 921098965 157308325 262138498 946962396 985904641 274728612 927385932 25548794 844312860 325206954 827633243 18023894 301471500 377273847 562185062 474099479 723812962 601255173 800932491 124503124 371416060 919971259 965284565 552762299 555404979 208635913 301473845 796232432 892587187 494632951 645950226 486217474 716689515 488642342 939492517 7622175 248332478 976882045 993739111 737783078 940310033 261050540 794944462 97312740 544735171 932893995 952598102 346329464 815154820 810397067 863765716 600339563 927455213 949969304 970657997 163682529 389283510 114293974 328351418 449033961 575113939 368305373 537732260 687491163 738067887 417716017 445847229 718849317 912053480 456059412 706753069 312990409 328134555 149483615 605181536 659381793 833875566 170906615 661717964 209632570 709093182 374672634 706453094 962111116 992056930 581518282 937334540 956331306 998392671 632579504 906052063 867695598 898388697 893249784 904186304 427550927 523464512 895854618 934124416 393206586 940636462 484084627 564415590 412220373 748801674 943651285 970355172 975202261 987991349 260438133 712942996 939666119 970921492 896561290 980086540 569670799 970820695 780430055 810699343 115977954 138590293 720039681 846247584 392669085 935377265 154295618 793350021 720882179 893148720 956156054 977174852 359583650 670899740 533692042 759524174 109245891 872035700 746809194 952911424 13761868 599127583 531481523 554947689 749241475 762290485 736559484 995992688 833447188 965271174 844324682 911734057 728053983 918821563 917497912 930822225 350618905 455556111 142946759 367885836 714678936 817364946 946640645 991782160 790222438 835600824 911895161 924602030 193359381 759306690 150489468 539010675 720189060 783032831 554384141 578913935 849767727 993177810 199476850 595335094 141241795 179699157 123905446 466175609 73345505 502661325 474702583 793289569 502531260 980702686 236124439 238570106 713116005 785542904 182139868 367783880 817123017 900209844 258266402 482677825 582328101 584979287 259272079 283983167 642715430 857898153 377818942 495099800 428803363 429362804 469531432 615409417 722664790 977091120 424165198 952519101 283362709 626908090 386433571 464580614 835514534 913883933 119818842 439999404 88888896 919980133 295109649 924866451 63992756 920073299 809143377 926859791 814151504 873678507 119844041 785590246 941191294 978203737 17052860 140332518 882421509 893923711 308709788 360939691 907217351 973287624 609163867 910796072 732764310 748758229 79722888 203691526 395545855 604612294 716591230 849855309 694640448 823985346 626728344 859851730 19968888 746879103 551579171 889355834 464020943 722328260 955427049 987898579 345567545 501994574 770217513 787929362 550612691 941560641 518629687 565680314 331326972 914037282 153299472 556539337 156678779 950966365 256331668 689462676 239604740 302147873 352868624 537809569 349098296 550145633 441481860 683511079 419036552 980534855 840146202 862126121 519952451 908710374 464098570 470461076 880795801 922535493 755520119 960530491 142974643 207418617 338052545 684740351 664791803 926767370 778050641 821157768 707603618 931808270 874539083 955839561 319064887 953430136 480692228 627253959 564729962 605149888 578452376 959332791 884501664 963302807 673451037 774621794 131140227 372078351 800987269 985705072 696785536 768053990 728621950 813645058 790891906 859351334 371686949 828089780 222983393 531411477 884981276 952576068 924721263 962619699 28974126 830715786 384225012 777556908 257245343 588213776 726557062 797628151 157125926 295024313 578076234 920021042 183889588 557288023 808232372 963542171 72468297 184485372 273720854 580671439 585571748 859721957 542021617 557306225 603730252 714509362 191332489 209115050 575501612 820716342 222328232 939607749 266810976 484087339 79872349 883078507 611415358 897595341 57104257 116281884 644351321 858756916 713097383 714027713 411405299 882092399 553146004 588538200 126016002 617001833 305772234 664299605 661409759 817475773 395115615 747064568 200544572 629842448 519275676 822383606 220178066 407644477 74640850 415328078 984208448 992486193 907906545 930256459 888549486 913278284 725186765 921846227 685997555 769206591 652692822 973573408 432857225 794905795 724066689 802350017 134998940 145669099 547006106 763511522 291003118 574770253 251914133 460045294 730415398 950323270 556733275 779957101 273023684 599199638 368100728 658823386 424578157 589169999 544335995 807481144 382016103 684597227 530744970 865389905 966620889 991804272 107727041 151552815 671578265 816586174 494331124 885335345 683870234 740847474 291484796 438020448 142934900 608133302 236967296 649966623 195092116 969065164 183325768 926548777 456006087 944906369 480501682 812201217 840352803 866003565 735845572 908163478 275733829 472291998 968357471 990601122 621655600 745942594 990055521 997731652 279048175 376747250 348253582 430282288 535623458 683314929 480828989 734911279 420982221 984557782 679864543 962399977 703245250 733746463 693438487 799501682 115877073 853507089 44975572 558147613 794043742 839692387 355898247 862039824 33579187 501061208 670768627 792921556 874859745 890429717 137363961 247086420 689396740 853930225 916792139 965694749 27077705 277279285 452103672 618849938 519877275 573079861 6276145 259622031 308620084 878871345 575080014 898815610 987066454 989072883 258371835 451149979 667521165 835630687 97914709 218706355 759983235 935709380 785776185 896700288 718548741 943591904 320697190 861496616 972546600 980366891 782908942 955588344 915269989 998943037 414740805 925782348 379619892 862778218 832976617 859361650 343895095 356959144 13175616 797237413 690513366 791666829 298778652 491734249 847332540 857141339 868406628 893621050 297609502 694661364 517780866 924646419 534653868 549353589 442415477 468580955 503882776 969739550 50113632 166498017 57024871 631299525 612102995 964211057 387203840 542439266 363815304 809042956 427940092 713721689 847899702 909686572 882837248 935050964 47881126 487687212 170026229 949506748 294997837 838497912 208055975 607493196 983018033 994917760 873332192 897091406 418283357 648894390 980142285 997593525 728087150 854275801 969531529 996772100 730886953 967715178 719056002 822880894 64087300 878337996 595951699 715719760 721101339 984170763 612929977 932149419 664651663 763668918 42195002 310791434 665135094 968392969 532100844 624465175 85280128 179820040 882897809 926733677 194387589 901450367 391218893 903491200 247851541 766633306 754487515 934850795 778476320 973861519 486977927 863210931 192741856 477717697 426827187 943910152 206101617 691806273 550295628 821711453 428891034 430357742 16361217 561742099 834457514 878322671 800251276 914411754 934669121 938468925 798583119 866386543 639640209 950656902 57668506 205558808 236039539 976914169 839631263 914533406 356437918 381450629 430178937 622391289 980847198 987531856 88352969 757389180 61956667 517744325 120484873 185513280 274492158 919423017 84864018 194740495 125687675 283522323 130536918 430247401 443725263 530793503 407608543 408546610 735463204 835617445 597204016 724521690 916228668 972071424 710499470 951901458 21527737 922909833 645086231 732887667 407862573 824600462 533634738 770013499 537405825 846992818 563856008 957277497 596381319 763283001 693986554 855086651 454860622 662350485 145318909 247876553 344821850 976836134 583021288 681769495 851087897 954111807 537514552 717613351 247768225 434589247 672456945 891095840 881076778 961101941 436752362 746518903 82098952 842632680 842941294 877699738 777329684 793784394 74585217 988946741 695073659 797689330 690679679 849996047 777725978 874554218 45759832 535255107 689822870 831059495 679244607 803542838 523107375 910209013 617193878 999275886 138789246 141263300 62620102 798271542 91987763 812490167 568601095 756994454 918313479 965173808 885023860 886137893 94182573 659026114 722049454 913097768 478907311 793945803 919298270 971925660 422865324 838984814 638331410 817068071 465649848 548133113 33408028 790740950 943180939 970611883 352618403 792032782 966940229 971538861 757024614 760648188 886229314 901122608 895801922 975144727 162071161 186711164 838610831 935125896 971409691 990452655 299120815 704798036 251848906 623502801 483096282 899467547 112340095 645590117 268250130 270219144 570640167 729002080 15189050 99429815 340889424 756182710 356872110 708540444 320917027 911625368 126493223 402985080 919204278 936340398 218181256 602162970 627648427 869465730 267736965 444928900 748295220 998177068 466613036 649256490 50521699 371470713 631367072 880149188 600157276 989470138 130738477 202407002 816562628 918747039 94545730 696948717 591466630 655860674 780208014 949692019 141491226 701265942 500395563 928548409 599371432 653331783 805737594 836409902 577525425 944948577 69810764 276612623 570856343 579551509 366938674 918364510 700639556 948906899 90239784 163647494 993714544 997372424 874137303 986355588 388280717 668269067 163100014 328164487 788554898 859746432 974948276 993884244 839170894 926358018 622401244 857051636 532743994 585761103 557712157 606468776 278216134 935165380 243782314 751161589 509199467 916350115 16894547 812909558 182071648 798416779 411407125 423234323 549511066 562218476 817569033 935732076 726678090 957118623 195091003 858783630 183254278 982302355 27929429 292765755 369208 734511219 835206348 958093855 128380764 999360197 463848862 896852011 98599986 440014317 250796980 452335140 736892452 829388756 584836228 799706056 694867247 958412355 271574709 315126981 548600743 944841376 449540759 780008708 408729577 669726197 870453412 922061187 125637912 820384530 446082085 875460692 933645340 962419568 357746693 968828438 450719278 999209241 672892839 790407921 690893110 851769908 673308700 692088369 37495102 728780899 148287777 968890165 569682225 718932002 832180131 971834996 764782021 981000576 352662487 363206181 405602984 762107220 921795381 927719912 245317052 245577998 698676340 783882274 72020355 912603815 664515629 856036787 871092554 978101662 591471998 681869092 701274636 743729675 752766825 828153756 78068032 324573737 919610283 946938836 535040576 856876345 381362792 583951169 223181513 429052431 642007253 727230330 570776075 970455084 279048823 819811861 506248155 559368937 927603530 944988489 396058504 489032878 762321283 813502262 112937403 341358792 524075740 611974975 288342161 793024900 57368408 983466651 103381490 446909595 170490615 581574350 325357430 770979153 848849741 920807121 21633919 983291193 154083744 695808916 800624703 846449857 51865494 377108618 621329610 686842597 223444504 292900588 100684715 872261292 810712360 996404443 1027270 350122621 169548196 552650508 492425840 573467963 483338210 920132648 999322415 999367233 40479935 735154329 247971153 364091648 300011382 796562114 264913376 974338280 919725117 948177434 636182393 738261315 613735889 691719312 594534300 693899994 347686611 976460631 49361961 183771893 720656671 874408400 992589781 998245102 150036337 892034249 604529360 880597900 778994373 804239167 273370193 840196980 420871071 882817243 161183301 663234733 369864441 843297169 845168959 915442464 904696651 991344188 108392938 486435824 920153477 923702540 421734170 692808344 230554347 559035195 558632090 680141711 753782242 824849272 609228033 783222509 776817717 950151429 296036371 648159678 648132152 807735429 828918107 858707154 947734956 989165682 552305825 886886212 787203701 872087914 12324023 106970393 405286148 844815006 300648707 852839179 184905982 419099633 275416971 852192601 717991181 786952522 841759634 914967352 697503021 962143032 13498734 219182017 579681578 662617276 877707135 952822172 149249653 750256567 370035080 869639536 354338294 822866193 441237931 937419435 743633794 809291313 628947728 904836764 587721379 689224496 767439153 861158681 830976540 859583832 72450479 509847846 367172049 484140869 779228588 906759497 326311801 787456086 101537642 885839577 296233012 792112830 857730711 953594333 663329773 804172284 328965959 644804644 540001596 632359060 20193981 449275976 624372340 627173158 748991035 889645766 387797174 997467664 803646383 987650949 298493280 930624429 23359866 601652480 251324403 889187715 898010210 972949650 531434894 712881899 414707187 582578202 874362210 958743295 538504936 761475574 169373450 298075081 973170839 990983550 746409083 933601939 161551020 442348103 298059750 838842707 956365345 959806723 268081919 928084017 2811786 396556912 413980549 425176804 294152824 465787182 728373239 984612089 351957667 956411028 293802161 372445175 348431355 858675200 185984299 923552674 390064672 490709139 442743716 552494024 817970260 877548894 767850420 801546037 156911913 842482881 236125871 324969584 500551470 779594236 533379584 567072014 968097066 991005820 520059615 692493505 796831533 967191454 500992851 846007058 652531761 811858714 628996206 675908751 910366525 978281979 199906708 585818286 62563230 941246849 555177654 958269357 223710393 465386177 249380208 870909292 951013838 960476333 469292749 827770574 491785 207438281 21390176 864985777 256196135 964457174 611113365 765876774 853895932 859633242 889622744 995077547 137509386 482069882 603687982 920995017 355160413 625201762 623598651 734647641 451563766 953505909 868407838 883039741 436368815 879820038 964740156 977768622 254500884 306084966 50350037 369360535 465495004 781519485 7832724 206494367 175458018 739328820 8298091 848642350 538033647 771744988 921758503 998323635 547335285 634262305 435498305 467724630 964350400 970591550 162448900 391589302 468784943 993913120 648082242 786784949 124844998 128411702 506550169 621471916 496851159 951886831 221746679 931453885 491253447 681064445 70878952 941977119 857850799 870550664 796009936 997975331 985497128 986187682 633888183 698057875 963477438 978562678 658259249 905130626 572491007 691177893 485043720 930758311 533707490 876151743 336882531 359724916 61170331 904867667 655395487 690578155 39443759 684459764 70706806 795290758 813957477 882544015 882338061 975524763 212804832 682134384 575108901 685308941 466285027 683973152 938235415 941327966 798994713 829858800 157287005 750341070 730960128 911947132 214030064 253325416 436657042 753908108 539706268 557278810 485840449 983180548 119722616 221507674 190207137 335124991 28443610 444585068 44388224 876828077 678880864 880745240 458014012 461871668 437152859 610630380 390043803 825956819 49735277 84904274 847496639 961673839 236809677 546139122 744541267 904341396 472613881 831810792 387725367 521077535 878898649 919788239 504549341 824593982 974841217 990438253 941526890 980255078 692235499 957230406 14831879 437905643 863268373 865789755 265356259 951439428 846286788 943313347 207874589 841499601 609217239 671835143 444515387 512725732 680963448 801247818 971993424 992742668 700968248 864820310 228832179 599318963 467653370 714894337 417239655 730360856 184010733 866640723 332906191 765105077 709410235 822142916 659068432 966574176 608903101 663792865 867153559 935976996 40898583 501758396 218776589 243529567 738371767 903842254 316342522 668647774 656850411 831231883 131934565 302293189 12582246 778091249 337108290 666305738 483959143 861749959 577339425 998253245 754462591 948419102 438958844 704993006 136087481 717716827 996817350 998471237 965016963 980867015 478866845 977195322 155835113 280461783 524281541 661970443 672144877 700843990 173892629 827589699 835497759 969866123 727754614 796034832 76701537 194091675 659647930 720657024 992407115 996624554 635046992 772251929 780991317 856083006 604351407 688774102 855379157 945153264 800614385 842999403 674928232 871807778 657789497 802974775 854622006 971917938 403216536 411386685 238484792 346041962 371840389 590989045 88997100 316736513 14710323 531108097 644236131 740302346 105476351 515635354 322673245 543934978 52984960 981122747 980580653 996926592 382216478 639938209 216766380 512438160 682074411 996208566 526337928 669484910 952256070 972836962 440307562 888912467 611696334 748748200 983870398 992595773 881826336 977344362 727868938 896040327 995439502 997590535 54720099 906372681 292217772 828632118 420129740 781777620 6165622 798330775 397405498 859613003 580626925 698113359 797478075 808883050 686826472 779622270 612265417 749499987 393204787 969731402 15170242 569148381 594472299 604824441 582965016 907143744 3456481 522891043 656675595 671765764 393830730 702718598 696384848 921555013 452080435 460000438 871771856 981597003 78739076 802529651 35923772 305195181 639849900 707961325 907802255 997343378 329677695 612113915 633834170 849780586 641328042 677989821 186419883 514018283 200744531 314218935 150233110 236404990 235742923 405634440 182568826 431544739 531896014 568242145 987018403 987773419 254298599 751847433 633547819 944075106 996241963 996779934 356697054 668948407 845985534 987036535 6139014 586647359 37740068 212875357 54818973 896846964 434328835 896015300 787335985 885255352 16487583 454936392 543372207 555890745 291601741 735882197 706241961 856579489 222625146 960767976 775649378 838126925 856892945 896370583 703310012 818455863 538053902 756944609 273757040 551303110 619733362 918110007 944078468 970412033 534080163 588570666 923274628 975618089 169576253 286969053 222792089 869371414 873518059 979933955 113813964 831093649 396712637 937108596 781878801 903731898 917369623 921075596 740477474 838338948 761333667 792045924 950422317 956744206 229424063 424929972 752118927 787207016 957920572 991530341 598860877 781294767 613016709 802515802 240002948 952668360 696625738 744841458 742426291 891970274 402710250 775642287 741811264 885869211 981480671 985330953 965706330 981418698 916434650 953351734 5264887 545736802 430413533 638796629 33025331 955352409 102135820 954768705 645312731 770491127 137050342 877200984 999068130 999152005 103078072 296641323 712443585 821532827 908608670 947382335 387835273 735248866 799340435 918204680 269530305 457765783 52729087 153030148 286070118 907760636 570754013 783336714 932473103 982455069 997610182 998856380 216861706 907457213 679476487 827195392 367232380 977625646 984038570 987328311 311773481 734883283 477641260 853605959 919449050 962173647 728669077 885538630 90222635 99008617 56504334 627116908 911510806 983799866 480877493 598764635 981639550 997160003 821975208 970980060 221318968 848038585 229949978 878009278 981610971 993292291 119614304 291712345 237938445 854214720 191555373 410332646 417877031 622161767 849666598 923323015 10712996 358703364 513821626 908934796 829161581 878927666 630277226 736025416 579182236 859053304 88506646 499163212 627221868 650856428 18258323 715966526 826616645 969712979 520009465 583003935 730138523 796149274 259092245 857788506 588915226 974880974 391553107 859599893 507972817 591769469 151143684 654798854 327726576 818528145 45871253 554491446 521101812 684694053 48153667 373066603 919668794 935280131 422449551 558877164 726049928 903281412 32417980 275839199 282782768 590878914 633113488 951749029 656559729 826589954 14377848 645805146 94482475 486746434 970093771 979573484 51926419 558569922 293078801 302530966 222692214 726124468 403954394 815755246 156119406 984756319 990635517 993436682 379807919 620460097 172311182 224544722 557957631 894791300 709086375 936250370 376831487 701301530 169420770 462015997 576891609 774817226 922186809 973496679 562321236 562506404 20228940 562212162 836084214 970038822 604042866 618162439 51960944 725387839 150867441 345403066 772374415 845576438 674849501 767896066 440367786 486027117 810153726 901894072 243577731 743654646 103337804 805229319 365612329 755056866 561291815 654284967 82683990 376990247 975683064 986266383 788309199 997482294 900322143 984319791 366968341 627530247 378125536 551696851 735549706 987564213 741334831 943099466 430883978 888961573 342889331 540160478 237106041 246843298 292546537 756752470 821265595 843127226 383136778 659567881 730165946 929038585 157995328 907719921 480858466 522016888 753480269 835528233 111372259 429625737 523925833 547656743 585196314 807466414 203348071 495421091 41292009 869191127 876746589 922036270 437928937 598912057 833383644 897738817 487720677 719484742 679457757 783630054 70445391 327684162 287347079 360490832 410009633 504175211 481286 361191333 975291113 984290598 709817668 962336822 319310267 346683821 381854400 937962944 150141509 696288345 157555070 847222680 888118277 943696692 165773889 468715833 562527738 682046727 962634070 987602348 848190445 976271977 653546843 689351336 293820424 433977156 395794063 737903898 107984035 171154259 932312596 997223937 800915362 865671671 106511161 389964861 626294827 642762983 591368481 814660486 414470111 724272675 327534291 711730711 87657952 640245010 958815614 996530812 382088522 795928372 613641652 658370153 877648814 920646110 804917433 904621445 44774202 264337637 609877230 918830495 373500785 775648322 948253867 975563528 19319227 942184056 727264923 916366847 786546839 981529017 173045801 203531861 26592496 960022592 654219858 806313252 208090835 579098414 362713195 683689130 318982911 895228974 906218398 942105724 294902692 299225010 492922890 724458421 302809426 933494551 940345200 957766865 64848576 158681926 739827941 861828415 274829185 596954189 391412861 722609409 43569277 308742349 700383936 726790508 40643120 535309154 178098680 383295150 325461086 767142291 122340049 943256676 582107476 831262236 269575109 705870138 818180068 998037245 136621937 700092255 406223709 638079978 122482354 133681954 779474188 824689136 187795092 495651104 189803740 229534045 691103726 696318876 375634148 965077008 687847252 744693541 463818639 911603784 661315048 695528269 788635528 823780744 170665337 904831653 822433387 868451130 860834469 988216895 837582287 843507770 274773692 850799893 823409555 921756387 17158854 241922289 699207718 917467702 393711014 633716478 871224506 997133075 294385727 491302695 293010900 529038797 455151084 729411852 215515281 945533788 177709791 469528113 904976295 964442580 591245420 718776970 46771397 404415825 206328871 841479713 640413385 886789365 176341129 486375832 124036851 276383945 175516419 504928659 556775783 993024053 457362345 550218104 423992508 669115957 269882174 426066618 565890911 593821031 25864156 187179247 1939931 267266191 417185150 893632467 581771486 671379285 77159184 429370286 775022025 805158331 977243694 996061925 684970101 743675576 550297318 760963314 243729109 510475556 46792229 671365080 78675867 171948224 843794005 974562012 743916840 989693503 463091062 844750460 712780286 792331075 155038050 726724712 884906234 915905725 539458163 729027539 120983187 670523995 87013607 728918074 597258326 897278106 938923807 966371423 642305961 907948527 518119964 737207280 98522460 340410368 562299290 682501350 288450739 836439405 463811732 846257744 933818911 982427847 289126568 763357536 932281969 974786225 853926348 876850438 410115654 559801344 785735141 855307891 851658492 956706621 749178824 974075008 21759764 949320774 570641314 765588764 496965953 788488882 551726417 804346336 652709127 761403724 579916794 680830766 108347521 283564632 131221456 706398488 764083418 792588378 824163387 998486527 581433597 903059588 774198371 954415953 296821768 428043305 266952105 504031166 708939376 904391004 104083668 782668731 569415513 841612096 808749562 934063659 19415758 988200038 314463876 998917287 147200201 351251872 381448936 740213031 997881192 998044045 924035267 972883080 404842035 474076238 315907174 316674045 310875428 528494062 188134811 974659997 94958453 564595985 485260016 702759603 963862134 965347008 81171327 657709889 738548117 751976977 737694101 772290299 613129262 945056619 493436731 561999363 42994275 776570186 215848455 660957641 649990698 809064284 257798508 836615737 17169516 920973988 134187885 241315770 45070444 138784103 507025131 634202768 129435281 934489497 942685015 965229632 413294298 515088016 12970733 574411318 458275164 850666619 507229408 787790690 589145427 724931475 708669446 727077639 777550553 904979410 764231268 811067463 375291634 997211877 366333552 970737193 651487966 839416622 161675488 453287677 682610770 975828735 592721678 877668750 507582138 700386825 645863183 835911233 224478847 277242606 140516306 532044176 918435747 945738261 109476508 951924093 16940821 691625149 358575348 710507356 758121535 795649803 873896599 883364754 475414615 487865471 220395369 946025333 776604417 926491900 534041314 705446312 456344699 727284347 385302410 424226306 236787834 449950955 578881641 988718160 941699190 948897676 734723004 755412919 676841097 697939374 388179853 684462850 861111188 883773031 658644807 664704873 183963822 835775910 432101941 556641399 145888683 631550881 190678308 450326672 818281707 932749953 263724261 765066996 654037841 994119435 773470688 823766292 761441790 838828734 109091131 360602246 256107610 992974722 699355753 858080622 844617287 880634781 322615189 337325312 482449099 723626440 996970894 997223806 970730330 973006170 836452326 995021433 476495736 509477661 212411320 980008305 833976865 939179120 742794159 985728134 142429081 617107932 402800892 630142512 966632295 978287923 365889771 979958788 961955790 993260073 914061349 926800584 790384538 912074033 705055859 736323856 31484576 904294754 25496328 738485658 692389873 724212907 975860438 999195483 427559435 819725921 434689485 725421221 665695220 885559066 668447219 940886292 493468750 953258600 487326073 881502724 764595087 932526795 481544259 794197487 55463427 533295921 290813055 548591109 367457015 801883359 756376259 854407989 302961546 711676810 55258115 636766222 608142384 610685263 270810508 430124377 638338081 787728689 960890933 987514236 361463561 793615763 880029957 963776965 777242839 797314021 164241435 713040599 655310159 788898957 776285930 833247447 876895712 894502159 336510420 893160556 916265220 921724180 950620927 980994440 143974286 662481435 781087848 807733567 172476654 679146349 734758310 755066447 698536743 841013824 737740507 896645178 329985541 881096813 972552051 974181027 408802770 687289422 584845617 789751242 384383466 882418198 360258017 421806601 383342652 636179567 789021567 869517700 47621603 304499008 945375740 955833967 500601415 950088419 50875604 744578431 323925924 864343102 757155972 810914296 24468830 471111993 84054721 535753353 47115925 197411143 100333258 703694245 291537067 943364976 500496711 740121099 339597882 691904776 653546436 740897447 227779753 682683160 663231642 847929342 280700920 610932073 115974201 389637588 114375066 162961968 39222335 819992530 709149693 792723518 274663873 911753646 868537068 956435540 425613810 572127004 235448482 809202642 779940336 971396407 313706693 411717980 435658890 821763680 144997077 269464303 91255193 254687015 427596433 787130026 617680609 938001959 256975223 384560365 859622004 882183225 703685312 803924128 214083898 839678929 57307783 556010475 305129386 624465162 739334309 881311068 647599750 743500984 649127084 845428067 859578952 974567174 794883281 919351776 80520812 134273818 231426491 684610939 164621954 741039424 882529967 981199967 94034398 657896948 19113910 200195422 776064982 867599483 859967569 903653194 650931350 766215620 227900941 666226503 607095915 647674802 277875776 493533617 603876040 818936151 553380359 594854988 711644221 762996007 495612148 668713758 791575015 840149002 740690959 756904961 54319024 829400230 108768070 821854052 800306004 884898164 539085306 634338333 380155696 991028784 424660689 506843095 67071770 643301886 810252745 832979291 500120165 954736751 752520178 950187669 770672461 830307233 564773073 722969700 190570619 751222307 617155979 937176221 328939860 583432712 197309860 630683635 669168958 805885284 824793030 979916005 131985863 572860244 589728028 757412836 60836686 569082561 768799059 836457616 387891088 526087716 739142574 912154879 923991386 950138603 857064678 973744262 61897276 118715166 426821397 664466240 88836617 300280682 660516181 662058644 865257561 877970496 322164814 635929175 2010005 486008972 615720831 785449573 136324720 289094027 321781698 504672050 18372370 783189103 684130766 847553659 680493513 930292867 722519295 866169250 924508948 972278936 911270380 971961930 196437605 740709240 901444921 968553552 241935505 609033088 588280347 724380014 708854618 980366928 187188761 351598921 652777138 964136081 101048585 666995142 439597548 908553299 577068709 968043957 439045579 934658421 656160076 743464382 859958787 974101822 34656512 993631459 106266812 263987706 323288297 963038237 583901595 905315207 136302288 851357929 256158472 790123669 822348653 909400264 575461371 724293262 475754939 813588345 988472231 988983377 862121052 998634767 87875875 338890510 116836672 663972025 464830285 932015390 867163078 888416622 88502193 274641029 639371932 984741200 124240938 959696245 722858735 950131781 75970686 211076770 505180719 538151317 155432254 977602475 503978533 885627672 250625313 793619157 399616954 817248213 49444899 864273898 873277137 923087421 696428338 983551545 128804442 605183753 907461429 931314947 272202213 342560875 875458601 904711127 725509673 838483342 352874442 425040837 366342753 883416005 256089714 474639771 747566513 914309784 727776107 949390442 900157981 979217218 946111445 973067740 122733454 992994044 853972042 900266817 877651045 970580269 179549266 594976375 813529382 887647608 375636356 723511148 492187966 845262020 226063431 353233465 914099497 926030006 263059066 290712483 563888568 781163670 626772927 889720334 186352266 791575228 719901103 926166414 594140533 739915367 910733537 923390292 766009650 973403287 827207129 944149772 959845743 998165357 189410125 231228566 801218175 933704305 24559153 496328102 852462044 859202506 264036994 982754047 299102677 558560070 371562086 936010624 544358421 958224785 372127554 842262486 699211591 928358414 729656407 737807479 665210533 926148675 343435506 813762184 395765076 770004200 315475977 418123525 703011091 710723331 352119097 647809907 573642634 975375508 501970287 975309005 462999961 492028426 668448737 796224039 121347069 324717049 393006758 535532427 224747319 421002133 120732396 336556116 232001069 552721989 399652962 594296652 319417623 992033413 235402159 516072145 352654639 400691290 711623266 720606452 721963065 769525652 820492108 823481835 209286634 569443682 567882370 807231630 548543881 912302717 773083110 816455129 76786030 705050031 470116813 528418868 228477244 461989359 541057894 548840378 855074853 965065677 988037525 989539230 939738868 957605496 163909204 833580872 179737886 658910424 935196969 978849681 786196255 975136264 11137349 980124853 101168347 313149302 996898318 998607939 93455265 464491824 967027070 999272359 960505154 995149240 795842855 882924885 479097710 505913768 950296198 966037309 824489100 909657695 667269247 778219266 463405655 572851138 343034767 804441401 594634705 973301317 40208581 595683296 296820741 955831927 180695645 996425013 349527229 528197827 642298142 912677431 273133617 462591426 120049227 497434454 266665005 948467341 491600853 907070023 664242282 723976291 309601776 589748560 169819291 582575083 324254925 550952189 9499556 732698610 935610753 954116559 437699616 497965170 569932558 798823291 603133871 878141374 817584378 964756827 936357979 970181058 962391243 978447025 715773993 743008903 236434251 414578215 498021508 925846421 661022903 833983334 720749283 954155872 126079478 158511159 540431642 840451125 842685407 860881621 53288162 747093030 849948048 965634276 291926220 664434937 94345197 329568985 225492749 494219744 172164175 795174040 306794624 805813269 789519278 803191502 318543181 898991821 785007112 790214610 677439487 704606398 121755518 154507152 225712010 805020022 845727054 903441600 971864958 979440576 832696128 994672223 264312148 557313228 750514893 885875129 345316874 417638672 972375579 978428656 966327160 998754664 441142359 452157760 399898433 968868456 44598334 585549998 40220841 64698899 28126391 323948838 106137749 184107018 641208824 871010781 202702000 794027136 2834483 344799184 305331726 874886048 528636036 560931823 319913115 943790313 129942616 456903393 180842829 377523159 240285819 633951177 56727151 484081703 390287658 921448647 633786115 675682357 214564758 524560618 984677827 985193793 453379918 465860862 97235216 172328986 647024583 942085222 393559202 860916475 406707751 638710269 661915391 851317398 641584736 954779471 234130843 401374451 495186638 496322984 378674242 883057547 595701264 977953661 616750814 743405327 804328150 976590443 736789164 742757471 346068259 358010128 239837810 430971214 906097689 909030603 218788916 974458218 618979662 749044387 991700251 998744127 743775690 934891638 306118397 810393353 965090454 989367700 386503529 698166756 898147502 933139413 669652697 858210266 998866499 998896256 798271406 880142074 445245096 795889638 385064564 954669251 944189998 998301315 119980410 436616589 585005826 977670474 100984427 472792290 710626961 874688260 174124895 648827554 579706203 905406607 516936787 606860309 544341811 847070581 231528929 746176458 434035177 529681202 449746852 748095244 391894152 719963235 680861215 803791541 897287138 980975272 753481199 817498343 977024070 978940190 620166608 905314433 812384461 862214098 770983371 968600120 991765209 992163468 715227262 952484678 230093495 912322669 192618005 594847222 809575165 978815161 740071642 783050404 642405214 798174809 526653203 543928048 506724469 664809709 598281040 660124453 480342768 711829940 21051567 840124458 404173261 480866024 638619486 713029510 143456803 261183659 260538982 620770632 328664358 638476977 736434941 903927326 66884462 465478902 783508288 955013445 13730866 599616696 220840991 934939629 790997301 891348018 506739730 809737941 870230906 896761129 124631510 328003873 435584044 918860462 433608555 913231547 388735725 631102475 396675213 565687296 818206054 903476514 722895905 995389293 458294868 827656294 823251042 989723569 831585117 959335217 517176666 617068077 538061932 920725724 221607377 522713086 842109429 842529982 970411329 986879164 58476834 111344872 100812462 401634496 551050809 788737508 790804857 999026851 796501509 847393175 462807888 686772203 682639158 884622628 178396035 428538978 322863222 958732972 798868559 813430865 747933702 765715847 859922862 947451118 939561397 986013332 793059358 810000703 913466144 970539394 103310888 813898868 209420652 251096564 721283067 995947694 238110767 345364963 944516115 964553499 558638623 584935778 394184563 989850679 101161562 179597537 456472102 885663342 136045139 451572607 934143665 975663758 16916051 229937932 607491300 709355677 132968311 881416863 322027319 664482960 453157973 995613963 780012049 948811821 670092836 796436525 817791967 931401138 898064062 966747333 344677981 654914104 162851785 495782642 789428430 982605738 336732864 584352022 273190102 938482041 611649167 932920698 154820080 730001498 401888400 591175391 980633292 996247213 476613437 814035926 553407412 829672247 676223318 944462035 306898315 830818912 967076027 972344555 220065934 440438074 909336030 989436071 671466675 863890440 444575456 897382718 410453527 439140984 402352301 409266891 63001486 457896545 842208691 980681148 506756447 953363437 225483198 944089918 840396322 879348187 803307781 874383225 864640566 943695069 224469349 572069751 100197827 129150924 774375380 920341307 457360817 833524799 307756630 450836317 737876247 768565842 430851617 691863223 760052851 832474951 104191834 160119317 570962233 905126573 404792433 708057379 224781685 808578863 691096467 896358667 640675858 911680494 995176549 996459475 27683137 896697025 511890642 870914671 721718292 982248717 855933510 953912628 743809214 860816073 121694244 995652770 556033679 765165577 808518958 852642236 421438970 835115217 817795000 903814884 546668086 593305399 41470675 908394106 775848941 952227503 875301961 984079153 286203763 643708890 421095656 462283614 669640425 859635046 995079164 996903458 226683108 638755253 696096717 766697935 628260092 842221730 801242300 801648544 677624223 864849301 625916209 657824995 94397527 328864287 195377221 237299601 996063201 996189835 80584103 594882261 711050793 989812443 862815616 923775019 103634202 386972730 718032908 829986988 982055259 991746804 566008193 872720341 295861345 449204116 177423643 358896406 116279951 665525116 442412233 812734731 488786950 846161767 61282808 856570413 94195080 950473234 802092488 934988020 261846825 453721121 352157904 760343323 297713435 787902213 600892192 833713079 296663630 357314393 951876184 973297219 795444702 965042228 221947706 687945134 222624015 744677658 475252175 728457544 554372349 583690302 138434915 420805531 269754605 467054445 178831464 446756426 185138242 596658277 252648662 916166001 143746020 410464451 474443788 657383666 509297255 928739355 664862932 955978343 437715867 732178104 65766546 207691706 529637630 972516965 476668239 568102154 839297088 968963460 505514467 827612776 216922088 349566983 437941732 635544700 535366400 726848809 68349881 708933525 24975412 808695862 386453965 702482957 528720171 949970711 314482028 719280577 102641013 797062371 579096259 758251027 374331375 976455931 252991544 787677777 637648772 740364262 782434194 904909062 166944258 846337464 24048893 248387723 141111532 509900287 705393659 854052240 747058974 768635204 836247930 902788224 735982099 773372745 720837785 858886448 232318589 478238932 519052754 807368524 36421107 415136231 953598019 954954139 496898756 914542897 782364812 896202173 684146122 763526434 483765578 951993792 295393216 705262042 485872318 524778967 874515090 977334209 593625426 973619991 445989618 933189750 216968122 415865873 839722506 869577985 701522966 890777787 169786732 954737773 186032092 465011860 658230565 949980078 460724015 770440896 63930317 549997465 631127796 778795771 689393904 733155038 365587038 775694833 531220775 635958016 805431915 828076505 830607789 864515499 916308333 991507591 599673668 692447846 257993236 462049976 648791081 767161536 428296331 564463601 32645876 938315859 643808245 875884586 317263663 599931012 29272166 470251776 651951324 996264038 100672127 494023049 637261010 960345531 491048066 877695920 918157874 994241654 621894247 907504024 862176203 906299348 153688291 757607766 680737170 737692331 736166493 935707204 841890713 945819300 597343480 764866850 649722127 730373662 492861798 833464216 684931325 874702333 394178269 892876973 912073937 941893156 319901176 650350764 682542730 730605016 39921631 996957618 447103367 918010161 274816816 501996247 561729977 602296846 671785761 760838078 871149990 888571795 898568987 941722647 385327548 504189612 270849139 713157461 80274975 950067074 699374977 829085300 688711614 858396576 302967868 703820388 6668126 494667461 622402976 970451073 884419438 941828516 519995569 916622150 816314040 989151024 928134405 983431117 289425881 723811709 285442591 448423100 652093996 867630525 465470629 845702309 777069034 912375953 88044526 361638253 11380962 418889289 159250540 269007151 595273546 822452895 912174401 942747384 862919746 890558845 417302448 748406029 835972631 952935625 497482116 884352777 447044017 790072850 717938021 862999358 847300970 890931855 394502540 865327881 565527551 775635156 866051179 902773822 490609086 897065578 773828369 786745211 30833136 988562538 300284032 546568813 465032874 995005936 284386462 895791083 895391338 977834057 956557376 960816974 273071294 779086884 887573761 888113270 861479142 974978052 894614045 944795318 51098180 660865552 552728626 742362615 3673968 184557169 527141669 909009330 688118070 908189390 116182258 436222256 38978368 952259707 865861989 894355842 281028353 977103641 649571901 909523377 250371337 765898444 834921003 933848690 316613804 731069016 111448762 975377211 107904053 682748036 512454737 844756004 927553761 991826152 591342926 592065789 170709529 226724601 256146887 877309093 103344246 576293581 319939333 920031978 919225890 962019175 586471739 822814910 364503675 991213220 767665085 949551297 793433638 926828955 504166508 571627143 756014295 788214075 863072873 955298713 555163471 854657996 312025828 506627055 126434205 592428896 148359061 428913518 301286898 790877723 705478635 725791079 668493610 677097132 793869530 913594926 856506076 882111433 233025562 789248558 415435799 513916323 842946173 933281715 297918728 330569947 906440879 939390195 525987828 798544403 935804271 964193630 402206172 871277150 632823366 774384739 139601014 400173186 211510281 543229042 51143112 752928147 545311288 959742914 149792963 162389566 808330046 877777118 967237961 988189076 636538164 717977720 617420464 965872930 624837786 784394335 899354983 990738544 214450163 412049269 641321958 906442868 482895051 740582705 231361893 251635657 377683380 573177201 239011996 657008929 54802821 910786941 634328951 864163358 12430859 153788140 697148132 823437890 725443492 891241405 853430429 870148444 81479440 133552760 867020696 867788736 288362263 755013347 683007832 873586164 923377469 928476990 920462105 984215917 37291606 849952003 592564371 787219193 371574652 950116103 750539086 882841532 337543020 682679880 145825697 151901288 372983928 920655477 91246600 794129161 627239882 689362990 584521618 714376101 927021275 972340300 598916422 750754519 11210703 47998397 321314936 856713899 234272428 454676935 450230165 550184647 371243258 708203030 433352174 950907045 183259486 674823902 828932301 935353078 914944987 996440693 394338500 514538983 818748697 931967355 517556111 579319371 239952298 255671934 740145112 972304404 140678574 806744075 569476355 584899988 628286028 757067256 738423175 890341528 735772259 981922151 661992873 854613958 778655653 817127689 604978432 883918959 362452501 888073945 597126343 954232189 725146275 924032799 813829274 975134176 948902380 965928579 121862621 728265839 280950177 333200053 419746988 706229507 359356606 954371124 337734859 963162538 22537634 726907082 998352363 998754863 154346087 250048346 489553500 896770409 731047632 989667851 468517106 854496371 29693385 745463758 680602457 986022923 963535723 977919752 892746635 960010077 801109461 947355712 910735606 976017282 918415913 969281286 497753649 875456060 817809678 841174609 153542922 439562467 780894639 989310959 268521819 780418478 748796820 757531308 705658832 940833667 58271870 92276732 790902152 933427998 378380316 617760378 692376715 881282073 297557057 376662163 745015617 761957631 232285050 457220764 451650720 555534035 64145219 592714968 166238357 900563654 160902607 830950865 315934401 584023971 758665497 959534436 70614163 230422043 549862256 853663060 31523140 427308284 488257712 683242430 517295680 807661316 135400666 896399046 728295666 848968430 452260286 645585928 609023921 634648312 635930521 684528406 22437050 950098661 516343804 622655827 433917715 973358836 495376344 861693407 331157147 433221819 424382409 500103943 532985426 945503297 324319344 428548413 880445837 971253716 470191357 784597577 760954477 955944732 337276465 688808587 554184011 647837709 392400557 398342617 445306397 657063653 943533089 992605079 500653927 868073987 529190419 815582269 964375400 998244308 527516811 711882342 546543164 685255083 610552807 747121527 835897136 873505339 840702825 870589737 966709432 968835714 77439833 102465293 82287899 449639430 724124670 980602089 355670200 528389991 285152889 883267736 50396370 239544165 980518944 983049132 341809189 603754083 957989564 978135240 615659960 803689931 869336970 940902820 561117209 823928070 334561174 579789754 136544023 444709355 17168579 423801038 499906680 675505230 405536551 612033705 854997534 884115980 215920526 883747965 735085104 858682674 55844274 942401492 139532159 453804713 101479796 262716960 729548312 870370766 219570883 713073325 586066654 752774382 280730815 782847205 592604686 687204283 229618259 544410086 320078628 690037515 827993345 935739023 403120388 915255025 422655614 505077334 752055126 932330230 297942816 732040449 385693872 491007061 180589208 803315399 705699236 889060887 791947197 866217121 449927366 594955671 68535555 689551744 261191634 846343408 521955690 575282916 343615749 776400021 918071067 931364387 244221704 542503898 233986896 402073430 227327996 643071514 988987021 999333326 371159039 872509528 497096863 913824559 500857734 663488370 412244314 624670227 30433592 127257477 260668839 511113207 595918269 871423108 26461710 389232331 210510170 215133663 394260961 686440241 559234794 694266970 908104229 939768932 966966584 967696748 39032688 148521143 7261753 66948233 418744485 712181805 320422042 756225344 394823417 924436973 986410875 996608635 131595064 554884408 925676112 964285459 692376840 695800681 670224635 944340717 560333868 746554933 883774732 900863163 943274247 966339899 188740529 360504508 929117242 950329196 603868032 976423340 500248387 879000668 657906322 962126218 131529979 340960332 576948810 842622222 347583980 640399326 562363724 669279159 91187373 270013053 706072343 989464015 719395120 967821560 916558354 969205909 679026421 955485313 352432324 775027105 589075373 841126793 387020628 471082846 834040211 867199677 584090791 811636413 553847642 696305170 263801875 559612966 478991895 696946138 737566221 757216484 406443202 800982944 416947293 583895046 128992946 865614014 745516549 857357556 881359976 931882572 814405913 918734960 59646427 497382006 544114338 972542207 246709726 427471446 197146881 994094527 34001587 707019777 267342218 705922013 294797882 961581818 388360783 521467843 653396224 675592961 760971450 848354449 130024566 957818305 998414084 998999691 584169954 705171463 785535803 873396530 589653915 922478949 174230786 284131932 660368454 732164890 160358159 879987394 454332764 927696982 700542663 735446378 544028946 754278011 190397595 725401394 301395335 737825070 791805522 913586407 601939661 952607383 817764384 931549222 316520951 464210058 367142472 731333699 490580527 675406842 8083481 649356434 683026114 900770606 730163159 971781714 6585411 24221747 432536954 729313159 668855434 931722862 330461532 572495647 500706009 699255812 870560219 941782648 63032808 253341869 492047020 916072206 555468022 636687820 956610838 958606255 769121213 885568166 638475777 989985769 313150414 826083377 812751708 824491519 522479812 821758794 390748037 652868535 658677968 674286235 924986838 940795230 388473508 483283277 366506432 452652484 641698564 814707690 155665969 199702563 872029560 922731197 432829252 960285125 272143592 345590427 142071699 207997886 434880180 646280817 441916592 684291420 108978149 126916702 996556346 999058077 620907301 723831612 306281976 523284359 789774373 820160075 351731342 565774988 592862402 703347402 846138604 898745859 719357519 725336284 470215974 506057154 310561734 526016460 708692390 959221099 915716284 972871746 706728937 879064587 985299460 987737601 644251709 926284683 51298476 56686564 882279339 947508446 465140821 922621515 296052684 754898414 78021159 225935924 773023721 909861799 481572976 663164786 25492263 755457879 632575586 640537299 623660687 713474917 446059112 539786023 12358449 56606916 244117338 771780332 336975768 671165660 454835640 930137728 793190151 924047289 265034448 500908901 779580970 914481282 251200278 443808073 71588033 663780093 602848551 971932750 371170593 592126432 270989648 870311883 151108304 549005717 308309750 985982529 411286654 913988744 241303754 665953009 36691474 984476644 709977787 821799891 219076851 326850366 42978544 283429844 859508891 867928281 242671674 535965508 2896503 832990791 26230635 394448461 42662389 838731688 307115164 921371753 25192049 186177339 855511785 936988612 378042240 940567065 832026712 955579094 576963981 778620351 116797316 331997253 636933221 971218018 83440489 406387266 949954136 977342049 185003567 828554277 91518642 980178217 386181036 913958044 517174144 780851953 656711855 748371025 506799569 949467648 296379432 820818792 340141737 952524253 485586414 954489544 194492499 523622728 889471319 963034048 286365984 594785204 952777289 973812314 487679408 622116940 56963484 629223087 754016885 949460682 30186488 990611408 661997043 961010425 583549529 711816542 743041912 844534306 872841347 882192624 406161537 953961090 699129627 907373733 184734144 240678034 644384476 817763433 62118629 559835655 682840999 740623083 13656276 890534793 439974290 811498750 187690143 958831056 947680952 966418111 867497355 886728459 403953324 988639744 705394903 979190722 362145438 491117121 32701656 942988720 881412757 951663688 287363740 761384480 346538140 732996452 42408192 964222647 571293222 893063717 100797986 502891581 543089322 995651484 516510390 930081474 330438047 566131603 81305491 204427670 137097560 412667597 759531748 954110304 132464458 348658570 521473926 743237614 590798806 820141830 744001967 766481760 665444912 927563418 310669576 513822209 172160272 627639386 364819919 904692150 125400764 346945221 615780647 666362009 731000030 749900247 634422497 650299711 467856007 617079867 326310100 366154685 231254500 898926808 526019956 745927030 163545729 304954243 197819111 310082706 877370017 955180722 445992845 592227754 680041322 685190877 516160544 687285297 33386809 158757601 945306055 998391061 279033107 873554722 253832114 533879470 200416958 639030812 373874644 374146208 952983181 972958884 708920876 745200804 797082539 909668531 168227705 644089134 394423982 462907952 856170834 906669112 86560479 728616870 790740143 814914338 137286031 811735928 751245111 993207262 298877486 520888064 672083533 745271080 554937137 671829882 801962633 853465669 749074107 982880371 959480957 995636077 326743305 364169733 571650301 779514301 276819411 385833579 990433778 991796316 147122356 507842156 580474231 878540903 606512359 710025772 920812141 951913699 437235223 984458227 439150256 923582219 180240893 687689767 912527499 944199692 865282253 892568009 480984459 803560320 713132537 926652855 264177198 346599716 258609040 334354153 147666952 500213790 816381814 863758151 309733406 739348063 256350011 485275778 117769215 696851986 767977506 931790673 596929214 758166851 12243950 810078429 200991258 808681213 92140113 271312562 105159512 639068166 894173911 905291054 29821917 796419368 336808858 733691479 228996139 932174350 460321523 660325874 931418332 935333636 340734609 760229587 828821303 916842657 985979847 990380521 765114363 824856362 870207329 936924552 614967221 670256023 742546404 979080057 135295501 860823068 484137530 831755529 800017413 890502737 944248685 967100280 144499107 865797010 327475639 472770102 631068050 849368153 666653734 934175865 253697563 749091098 235859744 937846631 8431877 67353405 74124878 418932656 616089649 977116062 808123766 954815623 355909928 854120927 76781558 200507818 753412850 904306049 949825002 975515831 820309535 915737673 569532153 594042245 975178492 996465106 638165926 914227363 665591336 798340457 371609927 793316983 913729403 928302877 96615373 769112643 532094341 920940615 526186957 874098136 938575043 940949478 732389975 797838390 370837622 984740957 828197346 985081423 432423429 872053545 802377456 955010637 415182262 454659900 417821921 792986773 630339414 893218532 522348990 765400851 735992370 914118265 481323415 670336970 730668834 846028785 250835961 854940669 82150360 457167883 393994106 802792638 497575374 855799799 80282154 886179949 472706489 650672987 284861369 733373696 715747052 740667731 880883921 888246914 958333045 987717279 815033382 996687968 608776770 987942362 526646692 645007814 150691067 164188847 753576335 768449943 689431016 866825541 600675557 952113951 201883813 470214769 800730080 975730279 363809111 823159999 358376172 548759738 596745528 689494533 915796482 931999872 627200321 973278490 522602544 796093345 637141736 675816298 754529210 945173885 883498749 900134511 568752742 809341795 585042472 967408375 951376729 954840488 965024373 987120527 302545779 670743860 784542236 977688644 911109535 965840115 573355652 947988296 406331604 511063148 357215423 978909737 140555686 518425685 808196274 858220556 505377834 670554354 400500430 623860233 482134680 637782329 124264907 475428843 755340133 810577035 331169755 631213584 423191975 616202027 178440857 888098357 2527407 613958086 928292832 950562572 858063851 907432674 505395618 944322101 195215664 708068734 780694684 856138415 383862385 390266886 389993338 986067846 755631256 938313488 549766868 994873561 718140213 919449238 454307382 635065393 889297771 934916545 900668266 946048130 343649754 397834228 758712922 934576451 493340479 879453685 982312836 991843396 795245161 865878848 140472182 761945473 571004999 590146053 936898946 949554874 763202151 960077717 42160206 982411738 955631627 971634949 616045981 958955763 268881223 849893912 293767865 838218819 30823382 368671407 917215388 950655682 219600388 399442570 669469397 956258844 636529428 758728279 985053061 986201452 308802453 475430707 964563399 965484402 378745252 700908674 938278930 971537555 266676099 597592326 564936590 860853742 646645477 666230212 576077237 578578845 86074754 324695359 844143317 852105141 298262691 905493531 891269383 969299642 260095255 549151039 287082478 727385864 919865720 951351663 667260399 792306442 144667933 847797211 939665216 957806738 414488628 517811703 941049018 970811949 701867801 827713308 922752331 926527299 789914029 976200926 74237010 294431688 494192180 878514615 446147064 641532857 308546895 966215659 168817496 744745384 556390348 916607592 806984108 976862883 310683117 950213192 485262778 691219550 329206724 542541342 151866684 789065491 260145205 420514985 953387573 980139001 555629897 669379018 180986973 909159980 402082085 557342683 394588963 754405029 67663568 128396242 211758787 626174665 766234875 975915427 180937562 606984536 327793717 827259542 496786633 835045653 906508983 963373729 114166079 764615609 483235318 540081325 36487690 542693499 56775951 971606588 659512919 907167835 589100874 786000272 897704209 939797063 949233401 983775208 292537467 791246141 591166548 790486572 525698090 986421081 965356184 982925926 377359268 643625171 949849118 962457621 22361519 851091009 178859470 574014675 229005393 949236796 978774890 999148665 114374467 644867247 769649883 812230916 553440941 905934297 435319935 510199617 30786635 633835280 905638906 936586333 887323075 898162673 305138235 376701268 500946297 598194117 455247800 626320458 928978167 992308042 432355065 901876800 837707568 911896391 285623437 590044286 24197938 344743619 785530916 997410621 856658572 983120443 706508233 934153008 385699923 587657847 636952589 801798080 924554850 995676887 441304913 703710220 11269934 548101076 523663137 947260512 257604152 426153822 908180050 974956538 127198275 883234705 819259833 881830937 962930005 975546121 930270406 936908826 140296978 558158992 483290505 522141449 705194716 903282301 445954169 762555606 613895698 794793303 376449411 667395906 571376903 989811063 566622201 740185629 199461889 436624602 592577651 854014778 92654452 669555361 758795904 893125105 210088139 450968293 475548399 690325933 725864785 829663759 80074169 376206613 820039412 886628314 452973358 524436412 8493451 621443310 598529691 789674974 171143564 530598965 24105503 762296615 500501048 765109297 12328357 458853121 865381393 906966281 501946155 524449608 672181552 717051267 104797700 382996349 18211990 648025105 246397320 575732678 668849193 727399408 799675813 858928492 341756538 495798522 563490003 743910270 506881221 973521490 239420245 372663347 882071721 938912472 451051094 569082616 13738469 413506187 55196566 171327183 317371089 539388802 332216207 852544554 823125843 934980960 845497875 989355231 6217615 180905784 952061655 952767733 671832487 858072889 150786600 808182012 283502169 950723953 395027795 879431298 496076398 629367458 599093548 965678970 391301983 649752327 72418952 330456295 161945021 642494983 938938742 974121222 719638650 992345848 266805354 480447826 295583079 526438575 572495422 798033466 106143254 489170049 404563488 521690858 827069368 902403442 406131246 578118421 581455140 682633480 458835549 922384171 736316303 823145678 803164461 817959229 953163451 986044602 134084598 453259864 685940067 771357519 953716207 996296270 387073503 956802449 734714555 769024526 134854443 742060104 669111391 794297354 332436259 524175890 149822360 447013506 625704024 641503544 961220261 973256406 985324303 991344854 903435768 988167235 219779038 679322026 461436754 924500607 663384426 978444514 445532713 761916507 940989563 972652138 756150609 975744609 877633998 881784903 498457237 792584800 949230013 984845304 980770582 985725485 39801843 436613848 788269447 850791688 911356944 933745893 710765686 790107489 997217986 998558853 285843843 850010842 604736510 882547868 285651116 636082189 222569807 565404217 211636136 922232890 668977806 809805584 931364242 952028688 534191640 550131004 328431611 806078479 51260551 104005987 798522771 898004759 725824589 850309719 705128665 785893966 831295187 950340982 977439321 998692819 556296269 680668328 129977632 295114145 604828454 610122131 156241932 186135202 744371657 877905990 798100722 966806567 196206490 708317655 561913756 784097236 290756466 710414247 68853183 191835070 101620874 479890064 809790902 963277724 668946255 706039833 510097015 940344820 118311282 827249107 600047517 710836473 870146798 875804329 129470355 177395155 487766230 847337100 658842971 987249789 981846717 997200685 621461281 843586294 830055769 845887446 152705032 267101439 994896921 997159399 124947456 256746258 986594192 988249679 311067589 589849195 608944386 624339172 128924325 531958910 693096690 796973733 485714603 564477511 631497157 665855810 556279013 709835596 831535039 919040346 851897264 893486815 415004885 431401024 254147116 278172953 549964184 646063398 409382862 490970746 382025499 793378847 129690522 512989446 100902935 907072212 521352087 835576622 194387904 845172706 468242421 816642205 185739914 408978362 257842799 543678584 91914816 740875690 924811264 935858925 125519320 731899718 607623886 746745999 631409322 693655591 544803989 726155670 978940739 995143330 89989734 262630808 279985147 672728407 658323691 670109165 746833026 802622677 596241496 821369085 229475563 302968762 358388491 761699220 790406649 925016592 659708168 676857605 433949384 556934252 471132063 537836312 348480328 624214397 377425961 809256160 929018780 961791467 354920370 561074911 189628570 582912240 272235401 824658550 228061433 242803872 572737199 785566657 757421388 847345619 306032692 459757824 166339180 722815288 96711966 145583781 892075769 930228806 327209590 526648579 390004718 622743849 46691668 366830439 663448397 875617040 531437850 895989411 897459885 939989905 271842978 849575064 372547424 821584988 326539921 893257821 151449093 962684070 662992642 760821316 278163432 848741600 813293016 908323060 606641638 738600506 691690951 868549670 725173757 939271920 350612315 356204905 814126744 938992340 306838197 702559811 414422993 660124426 239932944 863145903 971457896 995576874 731248775 818269381 178343082 421180379 803488955 863473329 90766956 235331241 620666518 921263398 699080608 970662368 938281040 980304027 854254278 885498477 353625385 938937293 771131092 939932087 322225573 616945183 325542693 709983877 684215368 974304094 273163811 766244411 553167568 806498076 832611130 956389729 617095013 642398646 666669440 732850025 184678613 768504895 189606096 779720751 852047567 874308136 491911211 591118609 812316160 996617540 846351504 923539785 753913916 927002218 229228198 394011991 856147415 870380787 325938997 655618390 215496604 412098138 396400120 538134417 490837311 977010931 853429875 920689331 365283215 887517720 482524886 591215725 236567371 505325587 902360853 934395308 297554496 426129112 555180122 686209661 74207837 101016634 988995244 991023088 940102759 979607325 287425621 964583150 635789936 883043989 334458261 376750945 633965404 944547625 418242331 740995726 734827520 874647280 754196395 861049810 283034760 744783347 59948349 383127525 73942056 271588127 970519237 981180381 659436766 816967291 910718280 911097104 590473640 891342241 838342433 901326949 583716547 597860673 455323048 925926932 949177107 973878380 805801141 931863574 334338688 383332074 718039297 979510058 474087396 615243711 208072241 899000936 153244785 228341629 62288682 878674863 512361526 982804366 425671406 561606098 402026853 462837742 759706009 859173539 710704261 870388257 411655903 479853232 374488790 522851911 171224563 704930466 253396665 856748820 565617218 969633287 859600694 933541499 1278005 74568682 132783960 418250549 102877804 497612097 440923539 563356335 403994961 452537182 90537038 291733706 591453073 690026450 756068153 976369537 473977188 683130602 413228696 669454693 451641656 505446528 249106255 464168861 681069878 893029397 601629267 609959011 930628666 986908938 144889907 592528339 344629489 671292360 342363295 971282625 723785323 740009463 37805726 970284373 410431399 951257444 918514601 969919194 65446944 650860579 413783768 522108220 103036900 916972389 406737024 908757611 795571102 989441115 608988985 905577392 572185632 983114677 791794686 883975067 701352111 840543572 376291098 815689441 983346511 998833794 654246498 918902634 206203707 459410875 242653508 307978099 40379527 95562769 838225184 889437339 222459974 754643528 988493224 990888486 521122330 865863687 514160106 567519858 983367110 984834685 121152320 644659075 639296677 820376998 404015344 492496481 405228995 749798735 336745685 998843474 869954300 956967736 712745340 911165551 607633980 894838490 803396994 827567956 477789208 971533148 267909540 330694702 513884503 577699186 885274795 886017436 825301085 835661408 701838688 984218675 569295745 695291039 171664848 744885497 572889054 837478134 386798926 549006451 260832511 306366377 657444054 836482265 242793890 573535207 406188351 944044287 356267007 988686074 484404907 868971105 206837806 365470104 963483349 969289142 278223424 319211197 979413726 991249078 388596388 622716493 829845984 841289787 209490543 400572862 953757813 955806943 267291891 378320856 775289504 907132858 201418237 429765502 813672238 864021947 782310276 912673287 797464507 961809521 523892306 655458693 206228371 367222000 561714000 936167817 961506186 988153687 561898400 847772978 331030345 428560296 740896654 902080286 950411168 976177388 457519292 929377717 405901617 434767045 929072317 991517356 667880475 968954358 156107778 647056117 269857522 536883460 867523718 932197738 199260251 496481883 179769344 230185836 776172192 984235850 323004296 493095217 494518757 539048773 696516931 731994962 681298204 936244200 415271493 844545594 515496263 892670807 5555954 542630929 838453289 909378272 583656209 621347980 881754753 929419725 343187420 433837424 649531154 709117533 937157012 997851422 623843359 653356542 832692233 978648597 718742187 881453473 472445321 692060963 678566346 892508886 868870672 984599266 879974790 921888832 880762697 899749610 517931660 744224669 32577587 914705252 404164355 938387261 499493756 797999800 776491694 810440946 656028978 975063205 111508963 900628073 123040829 324154266 973346937 995035189 169651412 284232358 600991912 804290163 585692679 957821728 87049382 308929055 202233939 221983026 489762027 909258694 244038679 985808026 710398275 936368988 114471561 916896449 817656636 846819514 821060542 858884081 631419817 917282954 508021948 823194401 697821043 976866797 458316127 570646989 702425828 745505639 683547052 822022843 403701162 727231297 520218730 748168148 770986284 780075538 337941717 992807751 719735935 988154568 933449535 998533189 539241539 931842665 625908752 780898781 915338721 930934831 718991385 825806954 923643211 966173472 396531293 983647027 843331789 916457086 132968363 984111074 920542056 973583114 831799137 947829052 437068397 874562029 469494140 910585645 377006344 894118689 553673688 935992525 511808066 582239110 735976278 987547592 789049869 839386563 451242695 588617881 13785127 111445243 993650361 996367666 320124070 707489834 247953464 457691998 444234907 916449684 550129670 573030513 741390577 937358927 37984041 416508756 631394287 821766959 181306237 997483402 11543018 860973422 812699584 960055251 656964990 695244641 789341460 846587309 62244955 784273549 438033043 840952769 730149186 733459866 456804822 527405873 380312015 510775326 197196166 667394095 917920024 946675703 49689758 241450752 795261993 799313386 130267220 174460766 316090135 848805536 51537909 362656329 652931204 801543252 145445066 636674282 603579698 616026835 723211040 859307138 996788019 999305452 339693499 618528584 854783096 885751696 117394917 659510023 247869228 833417971 230094048 289970966 706684723 950105013 295312967 832444627 142320597 753171367 296909801 472217165 216645411 717444335 667479853 794191885 135331923 987523320 678811754 960595043 685174645 875461492 608910818 783498549 742604471 838463391 825495170 972833745 799814578 828522538 939337218 962210337 660376149 995581838 801381101 840438848 622202818 925311263 260693027 817802677 522881375 921996808 607510387 614781836 815731414 964778867 777333942 855877457 920306487 992698202 185117126 255960504 948617947 977370539 857883448 920960367 527877855 685278231 968650546 978807886 560149915 668830712 573668916 785966358 669920003 880657289 269809006 400529546 88234548 290001838 283035910 680098680 616750979 652926888 698722801 854103063 640028384 720266018 691027695 860059369 652693917 685455650 315618016 777845229 663793757 890084561 955396673 973645022 901070379 953261586 915747917 933429455 308048755 746909973 390821923 880677232 984676412 999337469 50787273 369431114 848559739 897901250 702120141 905971108 640082580 681472561 366676977 714329644 201148070 429626682 41519508 187409101 838750812 891812645 765782991 873529732 38767998 850132245 981512693 991948276 810618917 991086459 18125042 474184859 325330961 946689678 795014762 869754962 329394404 612045028 611934052 797311247 233933663 717150744 850745318 861048757 898731129 937498014 685419789 991737431 811608682 849454135 965324413 966509851 631190453 970273767 491054466 780017475 693934512 812594586 935357460 991102262 335128158 343245638 484472639 861467057 341370601 934974477 22768799 918532469 383491405 907147958 157252100 904585100 576574577 945290862 649959288 897170619 515361389 575789046 567866954 967645321 479834600 749009095 599591830 905021963 791205702 900552882 309260762 740196544 891943870 924505013 85657385 992303427 308426335 735454936 629063496 946198946 375002841 756031614 44650790 409058488 897887410 938141741 588796082 890168494 559720199 883337508 837217261 976736917 184574761 349575401 206727199 228335278 368163498 476828129 631943843 846440767 605560287 767478074 876737650 886603743 522981210 598571547 305547020 569871910 930060994 957578751 919431594 988506733 327740094 607667914 796143638 977447639 424177672 788988954 774394043 816286286 265533198 994267824 259463134 845747319 62626259 975594533 18475570 878565074 334073750 853553633 203471835 838169126 818646659 998771379 789171837 996661433 390828802 785443804 616107258 811882014 319927605 980408698 427229133 876201336 320551007 399535812 337653079 754244871 918950165 940863669 599917659 609381064 916520254 971741924 751597505 789921914 423344347 968519754 922476805 931347269 314282036 746608909 661843454 958745133 181251776 349962704 374979194 468202292 486716185 732159049 850349751 903098708 305694544 723113800 157283328 490579435 875032084 886069494 310233833 872000907 659165896 789925018 543653629 707021114 323179463 612698114 65018362 327379634 559569809 800819890 151999403 488059051 754886576 992700748 5954734 974673034 335909371 935813432 502192530 985711364 361616432 747822943 236024906 251895057 463767058 728059411 409544897 778309547 785094790 882535495 268319342 519740570 445612433 499140842 232343876 592389068 776687321 858276459 795243369 927478828 969638553 972701530 411886530 972269513 425439469 705429032 163324379 601465083 544489134 802811212 352153497 551960095 395849721 442154209 896730792 915513277 699275841 987362634 43924638 793778903 224643513 607981302 316400767 721589175 356319341 784075612 105133195 391405058 465132171 527439945 987477369 997913334 544011821 856956650 861915338 987410236 59623858 81243485 746595911 851959681 405099327 485197532 872812020 926245184 721971294 790551321 304036349 376756992 748431415 960169603 623089428 701374492 923498056 964364848 39762814 562329205 62042985 696022823 494328628 526492629 56388866 285234004 221414827 933320437 645313635 667077449 631841428 759994910 706342044 933970533 949243724 990313515 212173832 671835017 883957906 980899837 841277851 913158398 634132111 659903619 993014666 996571584 8330847 983684991 632899254 800966306 129643253 325047469 660678883 885744249 748874782 899990730 512310086 700478826 55243165 687835501 629977263 767803796 836903110 919583880 27711931 329211651 850465038 945526217 653482534 821065400 506616742 734436716 629338461 808043847 464032792 572933728 62480825 847913597 119878376 857155893 380379281 553471742 433022330 964922229 143870667 266276462 56559968 181775331 163806843 754852945 291155772 511424658 237302924 357146139 181699893 905020813 523664266 751807584 20585588 938585672 734454036 765662301 906756111 971478707 353579049 901070449 976341111 989598655 714559437 792822708 74891261 989109097 192355500 643944125 237881627 867001461 660948351 908216897 831176932 877843447 480724476 617274385 832513923 899921003 916291044 963557848 229582821 355816870 481644702 551523560 596444962 639641383 854786633 964256811 946084245 964107460 74022905 830863894 815055832 871742835 914257974 967206690 567341505 895179674 302067974 641538629 264904693 976295346 381430051 729315918 904209113 987557621 710523446 967829769 869300695 991232657 440717258 600871353 481826439 685136066 874156271 914680383 495460759 820143075 572480275 586016010 853315607 914569671 364165160 565343083 813265236 999234508 405286288 442679783 372132323 406166611 273463911 473557547 87918016 929982304 687547608 902390141 787225471 970232009 512870471 838881755 282930176 761532240 683484448 689771037 647577955 710860048 164488009 853962073 950626482 998497137 640382885 742716623 924780202 993958438 178771586 433610323 917653137 944657203 911557099 973740041 698810144 964411297 629585636 668037291 484217122 896171412 431769077 616924365 300093080 980773268 763432885 857506895 192266755 784132142 752195439 995580673 387704422 773134420 292231187 528714694 32324532 237944156 922233158 977999733 539019354 675692839 889008842 989514518 520330248 596901335 315830092 682631919 57342306 112432098 495248841 745160223 434714118 682897883 615088048 964841439 815142471 947916686 347455822 424749183 862127820 919750709 614723914 675771954 585376384 656693784 690660004 731113528 290706031 913688048 792260048 893818113 96772062 826680748 295100499 815217015 351552464 735332924 68743540 778846037 534573893 629506108 207560186 249791141 693284179 783517009 742753507 946901957 743060294 771330321 813808051 829513540 144899010 633985690 657310507 838259725 609561814 806889461 738354656 879642625 626862763 964258421 639456621 907232695 690598851 915407025 533185797 910670306 130919540 431683938 544804632 726765745 52538987 403227973 300934168 529502426 733890305 798872416 939766716 942383103 487696551 991851474 410278910 422182651 125098858 597740834 803158804 872261667 418924348 757705322 317727356 675296516 899510640 981469388 665221219 747546630 373984733 399584387 228654578 886038022 834535301 844386970 788211140 812524729 108450221 966877897 794360052 952202508 198072447 260876875 649929472 719487110 958416841 964206756 157700872 577351688 642652922 864964536 641685665 727933045 991725779 998922663 501628204 870244919 436955609 964735909 727064763 783341870 753072817 813470611 286214501 979225777 325476950 968034655 889618242 909096107 921998288 988619409 220088247 664763341 768015399 894030694 533095627 949332318 298270875 470144883 585485894 680360361 50848852 542643201 849318932 913781293 544017166 968675253 648392675 665201737 768848244 881237886 561847374 725861835 115709450 813124299 680663093 795725344 42249286 951962783 475492689 778794928 476091719 822226386 732402767 766599885 884694295 908919207 258555538 552035012 282785661 514470070 640877694 878855748 27247566 45889584 144373830 529488567 336062517 809051078 719552477 726747796 134510099 465042468 507127062 572282696 245190137 523423690 505328592 548134840 552356740 771022368 769758483 858715930 425469918 716476438 784515637 915097341 510932550 541990101 610637100 680622523 590929294 772562301 204880553 620871763 644829022 732090713 497711065 869924303 103555458 409826603 555256018 757125693 301887558 401406075 833495988 957488321 312988643 716192747 6493512 951331064 117180002 205337344 798577517 858968277 623832368 880306027 272489612 527551833 764854062 978574575 497108194 954523925 550079463 841320225 707926962 746159993 140166833 228428993 381524217 605751957 579663275 642993542 329796530 361547600 607387937 673830677 457602133 935972442 335737101 397034520 528924093 664778522 152469344 759603456 64796099 879847055 466194565 969789412 42011090 90838473 69971481 535381789 860806555 935690392 512939736 771581522 947609730 963428261 588615055 720173926 458703289 777832741 931306700 946543291 888177382 906904655 766201850 850560821 671892138 960164903 595303286 629511892 849052473 980161654 761037271 894448258 963004158 992562701 381915176 726050702 702600334 710173303 586232066 703582830 731154169 985385828 330766035 717704355 45220739 993448879 603532664 644261624 223045146 792940046 496838821 868364931 775039806 811032308 433907985 665062457 130295137 783035762 579106517 689815602 906931758 964308008 298708250 305736710 230221704 575967264 928099404 947554252 12625819 359093988 318491985 330557105 423632930 563075745 544506728 901748144 56730169 995195508 805525913 980119922 977425837 996932959 26616285 819105761 320471936 513414740 777535333 984475763 985740176 991252475 254336152 624202909 204356119 257616187 856133888 979406411 288988944 511688488 686853148 859457206 619715575 772333340 608560698 823932430 618889271 664734406 341224583 379551919 494798763 573396114 533679259 766869092 907289367 996932782 251237134 330301424 972373256 975080746 485152095 594899770 645929781 729787619 948733463 976268003 645683372 989194525 54045966 831397546 16385933 440825246 793746199 957967374 115660651 149550314 351922940 864854244 382555499 434271017 617254153 830370426 487964520 833121099 296834157 496202170 733140877 984756053 953173284 953536324 988622650 989287245 203455824 645604739 738634020 845268590 61110468 718368683 906430789 948912614 518111550 594198540 388036019 880250803 366889779 487110474 898047858 993509849 597219181 786118902 261466283 479899127 943317936 961701604 789616309 936470788 774837629 864970752 911761685 929931719 408897969 511988688 239944503 460806721 709363834 818199836 368874276 950104358 74439607 352361932 180318449 331682123 129984315 800240181 133888669 751121557 824182795 946420508 510060720 899545305 981556305 994959131 671441884 899942323 977041786 988470866 489559978 783191648 195991109 502106426 39893820 214678115 972821288 990463230 57695355 458236080 70724988 376551629 177840923 418160140 675962614 852924937 303739260 654911057 776572423 888329596 619444076 771203759 809113577 849097208 135246223 554097996 664739636 792748147 716924360 757161444 764745891 954328727 759297208 882572718 497073984 663747315 949448257 964795591 764012691 876965773 515768825 882449411 375832610 773116078 664004996 895364330 375412575 512606314 270486870 371607548 715267451 718795917 657764688 659034930 469247111 470860410 832505466 876184848 891203619 991892835 854886276 972572821 737991232 957998183 585416860 858244913 882854441 910063064 351113714 526710370 789765175 922431849 191805187 380513579 265534952 902317894 157240232 565987822 118183663 266370367 155647467 387899517 55284737 158076638 500739194 930562729 200342773 318041321 484728788 570658128 643377265 740095461 284331779 606103178 967694034 989142171 308722546 638825842 444738646 450185715 900565505 913680173 365749826 395518238 26062733 594721930 587266472 871242058 367553614 806015133 789687190 958352185 895129496 953007027 5532487 643943385 395246285 880528844 696904479 972825247 56930039 106549754 641237752 742576340 175146115 552699387 13193514 952995727 152096404 950055065 435237531 886703913 180634106 268966628 587558705 771958508 920317470 980792624 166079310 667687222 130812808 542846556 667978440 892292522 458123136 770958486 654706056 962408587 330883941 501086203 369628981 785791737 258049128 601210948 800255588 864182289 30153561 277348575 245670157 421497289 14135044 324079863 995705803 998111178 751158282 927911707 560129636 911711381 399136885 426678377 392904796 565552603 674735343 817320016 713646654 897790592 329393501 711936667 177694350 629514896 487113732 999209087 288920788 496122702 862564616 947062856 930789321 941605793 431407262 896577295 376661466 973289942 212828931 892572758 122728269 710541344 155473515 854778071 366920162 837368845 381964848 636973751 964025939 966881585 798139588 803010534 10710502 347084267 928128567 939925138 719512433 894475940 520293356 935886012 679622512 907294754 727862756 950581243 809856679 823635320 814692040 981778597 266998329 826689764 281564640 948250525 762452203 992493616 321974586 443666700 162175982 738977820 200176929 752665075 646096266 935075922 765757657 833400181 653648193 716697255 889130217 906053962 597305126 686354882 227075296 616047516 872679424 916597565 240446001 450903255 149929382 882336879 47672395 845384050 971315286 991975663 463619506 817430416 356316525 518660936 179704687 191325383 687171207 723934544 440648381 817255372 529955799 596399199 20891062 434144397 8069314 917825421 221107860 723844843 130701492 384007496 743866537 987530056 419502993 642740690 408387290 862297082 462014896 784341386 523074949 839179882 993611085 995707935 153517509 651992623 998275342 999219176 750314600 850833278 307650450 977689674 16201872 484838507 461137018 811208672 835754713 880027375 775644354 872749938 557135469 681064396 167652797 909134311 659854940 796586012 30348418 987288163 436429614 836631571 594221642 891361902 193856687 968340702 794889817 861196461 793636679 939131498 529531707 562206761 987845446 988062094 19292069 277663531 685792805 891990551 55676191 229674746 3971952 610525019 641802845 889273338 887551615 942117806 404433158 720133523 198555421 326912926 580172070 781265603 246590267 303584514 63561040 898142512 631811837 876737668 367440941 649520661 960870811 978360319 75920311 860845174 775647488 859298653 534389871 615400482 494791842 831988818 902674019 985521975 709521475 829137300 690290222 770532178 932090479 937660923 202495563 784413830 234840389 848986614 706466942 886373528 512451947 786955761 199622662 799947311 726558009 833329218 395684404 519104449 28577140 589804146 187384177 558551068 237863107 838018844 82497478 741201921 781684357 894964246 62781974 683939691 766997319 770762297 580408409 792652567 889583173 900368383 71113854 768107831 964875198 972316733 740453495 978149473 620750362 835714300 879723936 897771628 126986475 469354336 494777924 870598773 855232076 936687819 521530818 569044103 939423271 942418679 286959044 414089800 361856768 890586664 794623561 915110651 476043140 832107068 604656629 715454912 318449701 403324553 994794762 999024589 558113298 645534950 172023798 481216382 236927668 470614048 466759952 640483560 631328642 632403921 346118083 428801556 414926103 451848416 927861701 980312319 86891470 244406776 623735437 950902003 882464479 970365627 851114353 939877513 215552667 551625909 410770273 765673570 214146995 714583749 540861385 563100216 975480224 987937529 670844900 770681052 892685006 922253038 359571281 499849304 72134088 380166634 606511156 810150045 698285996 998926993 257702481 820462601 439597222 512229699 31286730 471520247 774595323 893511017 263390835 366246177 843835565 946075642 789627047 910780812 191122123 887837256 259476847 549361777 585528732 706923924 480167716 506796976 171391538 648217783 52883084 536596849 429591079 848399414 776617227 778513613 50047998 367210245 823130181 977606143 65133702 447689089 522285874 934234727 56701613 984761982 64986252 835125018 16497339 872083360 918606749 940550524 861048883 889652012 56588583 638359828 944570912 984038683 463690649 636092552 398676358 870001447 339838115 481028449 747753122 996937033 314901211 401928115 672187539 735916336 801049419 944736996 536287050 592219789 282341388 479819443 524462631 966754847 95691350 161983703 230128134 639883944 298185036 568050961 777480017 820512648 734289039 868675381 965973519 980908267 974224140 980865011 859309752 918304331 991300073 996127343 757775573 839512151 603593915 716739236 742794944 814465561 860496889 875593368 597049034 823236998 787451115 823792039 300161779 698003614 226732616 654158606 886065821 937249623 222458946 723904340 575861518 575895126 341917458 783593754 215930382 332619760 598640017 709683971 751681818 870631892 161737853 381231276 270833764 776920077 827533960 852530183 498967716 991585038 42325951 985241054 386428758 466684740 392803240 872010905 139561987 422357449 669160409 889152800 245321102 400710098 680182916 838392104 811166787 832576190 241844309 967587511 470853139 626065153 881239614 999331045 519287946 583378581 358942109 383311031 647360006 753881453 833951147 892220140 180241926 609940640 314276930 932817713 85633175 652280666 81989901 851883787 995860097 999272575 272830989 571402691 701202263 787503622 767555265 799052912 119390929 882384332 390173365 781289602 416967697 553619280 315631881 938082922 160851900 275093165 616930090 673858874 146489454 181411795 533596123 684288795 543586915 993101986 992407458 992835325 83712174 328600987 916521807 974324743 82974364 518030862 390687455 705453025 777450549 789411910 33458838 711593627 446231560 959829383 885588236 891853137 197242979 951859307 401825642 905082802 246621344 554354524 441718936 508942648 337891629 620840844 724749919 754372852 760422887 988957546 567351498 622764206 808016275 862415602 390041302 779487650 420933254 656216555 999009174 999173001 319741042 648570791 995063630 996179328 83023812 320178360 323213998 337095982 48845630 256992698 680754209 873592694 804776776 961062846 123755925 821800283 625761875 884670096 813102549 887631196 890407108 995206652 56491147 452660941 289136955 415195627 757939308 956904275 725197692 892182961 104857946 575847494 552747466 572532995 655197538 734766691 898611959 985436928 627102342 724272993 157306135 165107083 287176477 341079122 710790589 950330539 507648385 877539301 173168548 759887060 453178189 604796306 906897630 937361393 733305293 790833101 461567980 900848143 228537993 450556538 37837166 532020198 765687212 866688622 496420013 942306573 20515354 152905617 69242155 855571847 982205305 983252486 504200299 914822507 637882712 783743120 796807025 817473598 489122031 781209039 208637147 949833493 726308202 988594016 398202721 411923705 927183698 946425488 978183203 996976124 844878323 969360841 995014578 995590985 714606753 873005501 613475402 943238451 777383382 843001864 1424201 404409924 802313376 845562197 964713233 966860496 279353217 433212696 555144138 840256700 854232575 928860537 954552272 982001758 508163638 873013296 90629384 507310154 802862003 863390858 55247516 394137127 53975663 463567787 774835523 893761283 4921200 231052749 154540589 466581025 467004167 794866892 284489723 442362434 181550353 650615123 795751738 831341105 606320993 923233519 956939987 997742256 905792150 912361038 153432923 200155534 433209357 772461590 936748558 974015646 543058257 928418890 692791329 912337978 516516935 889577548 868411993 976564580 395668832 493131941 829535128 859154136 284243735 615432255 971209211 979460970 24628233 375569162 762684763 862988778 719329183 949040634 145666988 227044800 296376406 418082387 152569827 482648662 188832955 397685182 666366245 884686698 257820966 845716155 981643363 998557448 614113707 952361110 87507339 589889455 71079885 623627433 258576174 659074890 900449700 980490997 886124655 956428359 808528157 865562948 661707494 768442484 201596118 311454968 361234721 751758958 380231725 707656857 866010924 932474987 996441394 996905850 279213809 462951612 920865 165416113 27937212 911615649 709123515 836890338 313814696 482078649 335189788 546557761 102703034 814437179 45111987 481777985 718375994 757716355 880844628 990730100 620670651 773048571 194421291 550543249 154390582 637110046 895748617 949542458 855763548 877897327 149493963 837711326 976130839 979907300 630024492 781126619 145423841 663034705 596863020 792189120 76844914 584374055 852323778 979723078 600829438 918634785 86850767 309808496 580297408 670598010 307462828 560558641 685024479 940255149 115847417 774004159 236991534 399034467 39766016 542692504 766294756 978009853 435665394 684313372 550615754 882629931 740053780 808861628 132252698 295300548 516678036 696973507 278313808 931805227 995323033 998417341 74242760 757145061 588317075 809685128 668133758 936587419 361026345 539062932 691768705 868351138 624111187 725458255 206612554 736562956 148495567 272155660 385318835 443503898 52357343 511018248 420907381 986067585 601638848 649828136 590199234 830184546 10665821 499493571 621374254 839470472 300849489 924135194 946920058 955207919 188341813 931206502 324799466 848097054 639654687 997827502 698576996 912025953 868551682 940548137 42463044 738533500 474115882 844027651 762446056 906596031 12989795 328914890 295881904 908087714 604748538 747364540 630714804 824114892 885672599 912929535 74315710 860957068 37899324 152573023 73073602 412740768 465963085 495169506 5153388 288888448 570312064 626913457 514676404 748296778 824733242 966124199 139667743 158760747 192031091 779648428 365637207 988852936 447201204 573488495 812549374 973748700 30831661 845533778 76762472 799612246 629318143 966953193 491935853 809079958 415415120 668633603 879587501 974248582 619274041 883952187 663506068 933893851 147474234 619739734 339386497 392041321 553232880 790137578 399056030 810040832 435729771 638077921 333691863 814802396 295169116 814881829 286105751 533336264 845425483 903386070 594503287 692410504 669816077 861491532 158442469 914568156 487295628 986302318 109919742 206483863 36276915 879913479 522989474 643122897 911899324 988329518 438143909 944802204 392924222 621405196 211067415 886932303 289703617 727168783 447558852 913047886 104247578 379097018 59466191 943862574 31193301 132360660 660483669 983403774 350502063 690384960 920160374 993610914 954747001 982204310 62869766 173096229 746206785 839393260 920998795 953210933 636554087 786282822 364148085 592462209 455025998 572561596 461178893 854588890 165888119 475291054 410564154 479120356 492268174 884650800 74888837 392259660 830036222 909168054 879737544 911650811 81541610 767055839 922798145 940267684 915110912 935346542 247863495 547783677 406742812 722718243 189574461 343599073 356919548 719625882 404878047 670915064 804876002 909624780 606953968 834025857 146675412 187196928 79215651 656546041 177747178 262264178 200152133 487189155 788166991 859075379 338211442 969012523 723126793 806244358 581045382 980221627 33723386 117793110 80777125 337371654 60174663 107251504 811220296 990824733 263123128 406741262 79622312 301418472 717654048 838071610 804807806 925185198 687899463 762934782 95169979 294124688 637103228 986725653 294065298 753375446 896845654 953086774 393370324 777926689 276267773 845015929 281064947 733502026 639190794 688717270 531204529 711657937 717205576 855327070 439754608 732868165 362651367 625783061 997788175 998618241 488327978 720251467 443770279 869203762 649202289 715998515 956534879 965004213 714106880 820658892 274006761 791405355 406137167 563266232 212513255 764649379 103031725 345690622 496594169 886632186 672354925 981698318 414303877 828575360 58589438 931801062 245538440 868497680 364298056 536386260 692303330 902679277 775012395 903521685 702421771 971641333 66477609 134957166 980303816 982873785 390056243 874497569 87987303 522237142 852839178 863120418 728378385 972796025 103206473 491598587 479054935 480482064 37917395 587812892 870941594 923642408 247931439 553825971 274602578 924529891 679765159 712446166 772660552 996187193 139250050 462860362 994235290 994500584 831921095 864362500 387503901 717555308 475884538 782920827 638985659 752738573 526144180 808761185 468418557 747382125 994357919 995816245 415691835 964817603 510053930 778115227 592829723 887689346 189638988 228187027 939234784 987306664 255295607 662742018 301320109 428133024 839228559 902256076 660370034 844035191 57904990 188850755 483433502 631393163 417607757 982028139 763539385 812960971 325730568 351912152 628129068 888323380 440898252 994573645 627131740 768514252 141394415 612475893 488529078 882287127 91070962 621637608 120897835 152519203 518188101 772254449 400452281 563800133 626997730 759161034 131982776 148822449 790846497 822317316 528321774 552495020 256400228 801109394 936335299 936471549 483912062 773098791 580453952 947772501 767137746 910270608 222248163 421196356 15612246 772770017 861570153 937218960 267055782 644347210 45446598 365900349 924564081 967829626 179098600 310511707 147394379 194767118 164793045 929171858 135947309 796272723 321160917 328633657 917980444 994472063 735576611 843938251 321883535 748480808 792337459 862880984 532646273 634084991 59289190 949406075 697865538 898624173 889502440 931646279 38685221 336019802 972241774 980490904 370864060 387144859 601933015 833558705 174492964 856091479 696018263 818692851 552036790 829180132 818101361 891667925 145585674 657931433 873416990 980741859 638048907 777335322 183911084 424960721 927849935 976703092 686802404 884154509 126509375 930642851 760465683 883514269 890590805 944064085 198324860 812658668 352002683 965830316 641519168 686036007 347375906 857197767 828275873 904438332 865252173 953856656 778096098 972875002 763805665 896144605 23117151 848619184 538750933 988130793 615634969 688700653 381800331 450531013 274720944 519748226 30955220 772262012 480311727 900874730 379595129 916900799 13151806 754588459 561156627 700014311 748920069 922975013 864614389 865779698 115954683 297759683 702135367 997315330 288517874 984398822 148241643 539438020 12365602 243141599 286457298 297481096 673318191 780706000 432163604 644667057 421639259 706740894 496239494 963663208 517708548 740788896 845273982 935744206 364502635 540958705 19366088 845058013 921042901 979322521 525818289 892086756 228828346 597485713 47366896 139485216 569597948 865780831 480351407 519457533 860707891 870788309 948162417 949763869 634052623 657242005 553152702 682168237 102626572 484002317 190676078 716647509 937815360 994654305 104960545 772052570 570403478 970385960 751739593 825808632 496858359 559768819 551811106 870468062 204056010 737626844 236436980 277001022 340255365 719403535 465057772 926892449 51686703 510812311 943318159 944078951 895187991 932343848 372363017 868976434 299039243 740636208 793856652 799550965 796834805 814533141 19333785 283142806 396778658 684965080 521296935 692008385 554116953 693285427 447412485 949714504 519518096 690368999 288233611 621361555 879269233 961906498 819440233 837680135 973656541 990855284 288216785 338146846 818982730 873484276 107281627 484772709 561409506 710335152 601289592 673380204 158848335 653930188 13893767 906778154 278617677 718744084 553948969 790131111 860978554 953325487 411295237 717043375 86878902 489959780 132480128 996867567 852459235 868605994 675320615 912490617 575152368 629189537 708986084 908127990 793690680 834728530 969608292 996038048 507883971 674425374 476300719 984533111 431846676 597424707 280096723 560126389 97545931 683594000 291065821 601254692 347349683 620081809 786971267 932421419 602839556 989897254 937842491 978652035 661789529 921165654 503827530 783153590 552247391 830996170 833460018 962439336 890819257 912348290 230078066 898016616 862860567 982438203 238808884 957816648 730621768 926925275 769148153 959711216 28760668 140168041 769423292 846924256 879951226 880858516 259553737 632326038 805904134 918069451 956068882 960670137 279654685 783356780 21317535 41766822 593814729 780545012 755200848 778281575 57039829 427339371 823108086 900899163 730622312 762656056 163318544 563439650 563962198 687631464 756652320 966095180 325056450 505406339 802259367 959128530 957540004 998181128 730292465 816534444 43857902 753686233 362399061 648550304 608896120 620635547 562383459 582577349 268559392 418400833 458325858 562803644 339775187 519474969 178599089 220015015 210933520 676194699 983597281 984366568 206438276 798363281 981115332 993133338 955020248 981107579 780767086 894574755 814475050 938064364 825720001 878781773 888120060 948863131 222678836 472999454 449946449 903423879 216682947 333344130 700596650 821761659 744643439 958483783 973583943 981543412 911818885 918316823 688063754 981999910 725065132 875151093 159480648 451817921 143019870 395060664 435898214 789010353 232069072 467959075 642264127 875671742 625100678 905109069 918098158 966371364 633782820 685471863 232473360 776049022 299930073 458696875 732925216 831982509 905943947 924423781 14357686 766021665 905907427 936506942 579344331 784852393 128125150 816964321 37557702 722410042 785031649 910504707 28165536 441682095 333981023 864145483 270805828 965967988 899936957 930634331 494086752 673407827 467267148 968563359 166635592 802482260 858953624 990395815 857744480 996507296 836602525 981305217 918480542 952223515 696275057 960278739 906323731 937532688 523901108 854384086 119710750 901045418 146322929 912025398 271324989 363691513 955853242 969642501 447321665 738165331 293364544 782663119 68364532 669530428 10888332 468351718 733337204 933580077 134951052 468451346 534573831 677816203 555163872 877143495 809082153 940308039 171197059 992741778 329337460 446733738 866837623 990799936 614303602 912140522 807756851 909896768 616824045 744903140 301348659 495866408 923797831 934941301 163457699 837153321 622640829 876404032 393199473 773828179 737253268 892025449 187997056 488069330 386682278 715145343 265048754 807099264 852067050 855803246 55952457 293966605 164261506 410136272 93258145 644168976 321545853 493812825 21601142 74075895 963670934 974837291 499392473 908829100 116366766 280613685 384430088 902147806 678206107 987868525 830967208 963728713 539723282 829921663 910072972 987691082 578180431 883441294 363722281 408577579 466876775 563564194 64192385 481350687 759310731 780602094 788942207 851072450 144203925 683819716 820228222 829650022 154237383 223508879 351349914 819969045 798768945 850574418 183544788 937715535 871338742 909312698 547037226 770011437 114144490 775760510 163517552 912755178 513799302 672138597 990714067 995414737 804404178 840279482 587294888 695617365 716179415 966297890 795663797 867149873 517234280 855878241 699033649 996266257 357257926 377121680 935759218 942401598 906911517 973694585 864874389 970817669 911212765 943017960 37052283 813644724 941842404 951877222 949604183 971542700 127022406 948381569 200449007 969502801 912786118 950492043 38830689 489041365 222461792 887752919 409437808 981437062 701327571 807423159 329742791 555362337 3538141 328326414 673534562 957085939 960960381 994249280 903723734 977495174 766914023 849056146 644260440 793639330 813912101 870530391 986877931 989973714 313179142 357087435 171408741 449073741 605468163 615612301 561409780 798270114 979989633 989552419 61376074 938675884 343550867 858248192 78313757 255333327 438324359 944981682 725373168 942667116 28244572 976350645 563342250 714292787 920243548 981227265 294367714 984165055 236305669 376556612 72140338 905279807 588719644 982808664 473876993 615719750 269966178 618032874 325248476 511571328 808588102 862085043 950467389 990168244 722898350 972441928 692760249 762298331 239980879 338798862 191431631 824399400 409239512 900257028 480966503 731430765 529695529 905428641 221020740 260653973 89663902 152224111 122543828 943380143 925951210 929286678 834913928 849865890 794738945 862097093 50920015 595789891 8356284 126740840 932210897 991395351 904237911 921244044 81042871 432029367 78369065 760404326 141214776 311801641 24902041 916448814 552494228 664066063 520039509 814415405 520460817 583983328 766982157 993084187 872822751 898385035 812382782 821773749 864090515 965867461 690047449 823470245 896961881 918190798 294284593 513330637 216139646 790835924 688670059 710906289 755447573 971590870 177369377 978055925 737214405 784304591 590910511 741735666 72019991 686614755 307741203 990915072 199100248 223086397 948288641 996257998 211127725 862880668 245245838 846255924 544356896 965037502 716866003 934616242 317710604 344185768 677001894 994795990 902492391 993122657 366218103 901966199 247169124 939046374 199065717 747572876 442897555 866753339 81081250 425928858 337156028 421157772 664953180 704097720 250082290 485558555 545693172 814064265 559935997 975393782 526381988 557291903 287982858 991763111 89453739 922186195 48639851 688960566 406414887 587010977 438765624 741080274 929575259 977727870 275855454 662593687 746589475 779480823 167893887 948751524 784478623 936606559 673156920 905233840 237391415 366047269 534653823 634492440 258989891 747467484 749149974 775337447 955116759 967798223 34703306 768833856 687608433 742387339 968171070 995161617 439138615 572832166 610490958 764444774 63129083 569801585 452784667 504405556 385103780 623752962 619937334 961798064 245841502 397976579 525791150 906963566 746662920 998798559 567903915 829198161 996066922 997040737 964784164 967070387 592808954 949088119 488962357 958135757 191307365 837654391 828185308 996674125 47618977 208223102 614127176 660188175 224422198 442420836 21977657 257260105 431863228 630267171 964650296 998183711 241926863 934309040 320972076 746248084 579696962 967112926 7225757 814341922 106697511 279662701 350636544 601949915 566046991 656235083 544564994 719487563 10469006 783789698 838941139 936902843 232720481 412634257 585934341 741697586 191496506 451578427 577065560 813463133 800478660 998756129 662840643 815326533 108532054 746788379 692333543 869778361 274385960 402727554 817289394 913697100 769248005 985202556 79110651 658375718 817531177 995130574 344333155 394652678 299044369 638347240 645169165 705959156 63394286 156405567 367318690 906715486 10269937 49087397 226732910 797418662 264664758 708234786 418606754 500191088 114909810 875689713 247310961 514156239 954254711 977126115 317959161 785315776 744471476 942741690 609451820 803283942 661269747 978592231 739589921 788374432 534072825 727894107 484675041 629154605 761626152 934868593 914128406 944817283 786412820 804014047 943018497 970102659 649932849 705917873 120853635 792421926 366080278 463045182 878973026 879925620 60535954 883142867 360617795 657281655 163102420 469598563 43745682 137391030 691244238 970551676 511162194 761054449 488943546 625033916 758049425 962233710 241845507 781875459 428006736 641424133 100940157 773480513 863907328 871221601 539892669 734880591 428065727 500654050 923191668 962736173 482207462 552739869 927163249 978693278 508872738 848473343 625596900 871516101 3100913 709729487 430411031 437758201 889013677 904221271 948961023 989024263 988166449 989530991 697920354 813185640 241868127 891939979 773944475 830569416 142541516 314178455 531664297 900011708 339873214 774947132 528009000 840568900 925454175 948039300 355744762 853628346 114297844 779341533 208522727 774381135 627748319 750491439 595756032 948944262 146004795 702326191 525616205 977456237 117096013 449930653 882240802 891286114 901470790 938484959 340157164 776996762 347235563 725092651 287595907 833949373 917704632 960017462 336256167 616712806 401816354 407274498 987496390 994955439 690214493 691860032 463603683 771405950 565073923 835517971 962785482 992018720 228660999 571211643 124079844 249797750 166517039 187509498 796364363 958815092 413603350 557623350 103266232 783087510 969590943 993124113 283897924 701168735 155774708 369028029 256570241 362628387 675034192 826013635 159965641 407007733 630676696 873459317 982850089 984046584 6493490 762382793 986121690 987662325 18292805 367387415 656897919 870412002 583506851 969112214 824730823 868197433 441051515 882093324 879108484 885518895 212710149 939372641 291400547 901754376 426975394 971144012 415318947 929122604 379973560 509079173 511567920 798256204 800830437 934599396 993631446 998486707 68327818 850895444 868103241 918468878 427940905 809892257 78876229 983602286 787665826 792296530 673589743 950035074 242886072 882324538 244747433 736100788 2526423 512482044 202567317 639360523 958574343 964043459 349046115 722839801 497159407 531009661 13349153 606695802 506519101 660853614 78280811 203650333 862118148 989384343 711267744 796114801 11763647 430980941 688043084 947337283 815925411 826983289 209567376 667265100 823301690 940110096 575706786 988156494 127472935 596305708 914596745 929111732 979638490 985899834 642887386 664285193 673195052 703216571 334915339 345854172 387637677 915269397 771513267 817837695 160914603 832436730 54061463 586290808 165669774 219752688 432233087 926648515 800851093 892104284 189285752 847742908 156208487 879001984 251421828 818674752 856432256 944780136 882444905 965065191 558076809 734170620 26758844 720701186 633436604 874597861 657889416 986106649 63952091 856222726 9087994 433010271 728586895 985001367 670159955 824247962 67117508 418081295 280096283 506400841 880453116 963733570 623212736 736385387 652571567 742110639 671226318 786767997 358169292 638007595 915521241 920519040 741974154 861097627 710958402 867136107 963193586 963330333 189943190 521364205 898438404 979823660 191490295 746927980 395015082 605861298 501852720 745277352 435399503 868222934 748721390 810988243 867079973 926693495 532236883 926037911 856159428 992020406 19443324 338859313 895614375 995510958 535435437 727604454 54615721 93064049 983546544 990349009 823668549 917959905 967009440 981446120 411683663 754859324 207381249 650278038 257981982 611834641 377324185 470307336 25959101 117485525 860884686 960586737 840520444 913472492 743639481 984190709 790018043 861164204 724748192 823961698 484811697 600532032 415861244 717854768 305976689 380924280 161320415 508292352 219462075 800372719 701986112 818751085 806988454 938467889 508356705 868777755 139052835 917023631 504041223 969624964 250894982 325768400 738493848 813518693 650841023 889617273 755441458 779083011 749091422 823898860 813346108 838101097 315277414 789442013 329370951 376457557 663365644 969915660 728724636 752058571 919102464 932379056 218871890 953406125 992116069 998920470 865027104 971299968 119943361 505026945 628795630 903841377 504531520 575026073 770292105 787433810 239355929 474537465 847844662 930596427 296555070 901080125 827835335 954673920 916633047 925386650 878985016 887244334 307658037 715814457 526726034 599264959 497454099 888388565 140744906 298115024 510742293 721007479 622674257 939503166 473960221 962283087 824781362 869052295 387929974 453445988 122971644 128101468 229101506 576171412 739033798 774158206 678105087 863927361 863899240 948375225 127643973 147850962 972599423 973368146 934191408 960787722 332356202 777063929 909488138 959612273 578111251 892302177 196447596 934482454 441915608 976080092 240770103 481139124 151743979 781185733 294203733 479584243 116578044 613327220 226064838 884110309 225870651 770946192 33098042 707928338 240496220 834112678 16578294 397315233 414310355 907524910 829790537 953207580 165751478 585731450 414041874 419339851 19501614 155806791 600409931 628476683 467965358 943379698 50430831 837971377 409488635 469216942 334814649 533748984 717015761 753978353 277547030 691141388 458541224 472801725 626153117 746140076 105334415 649893912 153772027 654790910 406877332 474028283 114557674 252167996 794007164 803204876 144122008 598981425 241639936 616745253 504790478 852190236 83562242 91954343 921511696 927509172 608967438 612986839 203118726 946320389 831315839 888906714 572543349 934351103 139919163 410146277 877775109 967608438 605077403 807671453 317494553 662698747 499834334 744611134 946317587 954735084 614249711 859514596 579192773 836401418 985269675 998977741 895270992 969383532 931507747 982803148 229669829 816799019 664408324 947575288 408514615 629499785 685881881 812251514 307460202 387091943 713678165 805730423 365957167 574086330 481782367 939479248 322143600 723008067 791963070 993173081 78369526 808332172 395500705 947855284 879375687 978369723 860918589 955646420 303209106 439421416 973664272 983455739 846465505 857122303 118092252 226010224 594391756 954255617 705233305 951504020 708346172 858136593 736403861 756303154 553036915 968617774 223165584 231215419 87359160 661527548 538843064 864313648 274456090 355712800 980711938 986116938 667795104 983949443 747066707 901555888 32249595 681150366 332786104 545555623 212312675 399437813 745084799 936401583 168408208 404968883 905889367 943347235 586009398 663838047 984389961 994666968 66580046 522677573 191972133 789953454 48716074 580543314 54138208 313850793 466226597 535605893 860309866 905726647 129217033 933004248 444915121 774394552 41423310 543905870 277646586 315104072 339532787 696522592 199295976 490201681 562403016 715881720 736115228 754431875 491351093 908949768 66751217 272188007 333794636 510565193 97657564 648954946 207177890 332860708 197905606 949268899 698463845 754050181 833822555 972153652 448093016 701455682 797396648 860344679 268156679 747525149 733331182 918946586 86642048 499292037 513129208 938329273 700398559 914042832 348976544 713980505 930388256 945379996 417140416 915003680 635075458 715243562 948119214 993584888 895876484 932704026 686734886 802443594 25549816 725341384 302027878 498682587 386868661 465116273 641151658 785092120 819080365 921778980 36436974 958742391 690940480 812900154 825296439 863846298 959443065 971714641 365419411 887482406 796275422 982371200 871135140 881244815 704515047 876550596 472964687 788084999 691289808 708990546 939153735 946850694 1819029 916647822 142175206 800832808 860508945 908298567 491426768 501459748 395897330 730535162 986584433 998389570 347905791 854372324 502725109 535821789 117386240 425919826 678363627 978984869 433279321 760190437 674397637 809549834 335999596 990232228 575519019 736315647 317209355 522021260 237395395 935493376 310273316 902115193 26666032 981110912 520657118 987911361 529440906 553243293 92083541 610661249 239075055 256988128 401688214 957812778 405641477 678005853 184486710 611744765 481884902 498066825 857629694 960252817 941962775 967689759 743304377 947641410 195705433 429824061 68641912 754367007 724814781 990651219 435788794 993195160 503646854 768201276 125032517 496330768 936626778 944522098 572088649 914145300 129785423 765976462 383884501 514865545 274324043 737793243 125601328 214604248 684180041 945704004 361135929 894245965 901527925 988364609 34986159 777078629 344541300 429934901 398009449 987474135 331226653 803664002 651812832 996887318 505547333 808259729 795972785 997346153 948923926 973436823 292466799 828566641 34420836 740843619 697473763 839378569 510095265 998535287 58382407 481560232 982584388 989774795 876464373 926315120 568266816 672564865 197578713 438905317 655026247 829151205 834351471 959334690 75607524 608449877 684771240 805546040 458072018 581982474 92484136 169222583 789162436 989250525 688976604 774744804 817116035 860573530 401372130 541978406 748566948 947584756 338202654 938804308 202452951 726101158 128755610 705886138 672297310 889314621 804909496 892146943 674550108 719881018 129745199 263984172 79362427 559244446 115506698 547939489 447708427 498094538 261387858 943336468 682671456 945916461 956158308 996570602 265419787 911528156 347656251 684905951 138644334 283848185 958833661 981563401 473529998 830264767 715609614 716574069 346423700 631792098 887672839 889754385 736472214 786622260 523998358 939782020 786782382 875194020 781181551 929304362 879727858 964282478 323729277 887302318 726456036 884271267 416470856 884031261 608705789 720028725 475311596 571196924 652058580 912553513 898187228 980126259 386793419 507253096 263327407 390318047 32214816 609805839 932051042 953875536 80638054 458955940 87353736 886925333 438132391 479647324 387767464 912266907 508449542 790095955 201283553 842366599 417796589 565075110 182078050 567586410 246703898 964115549 336457683 871771749 194876602 501809281 99015942 123138981 291388716 399432282 472201618 888434879 157172366 319209645 28871550 560952700 5977198 972311289 52296212 427936787 296641259 624903808 217708328 472612922 455708362 725842971 776941515 863785384 621008217 661514285 245438485 293863077 677445492 875118042 718477280 854944967 128654200 505521511 130125026 277621429 322460636 907551129 179538115 907678719 91772647 103211234 104457769 197104501 250780797 660568900 841999914 907750166 550550166 928048732 796123239 866504317 440763427 937187243 644241949 749162274 87084314 897161216 783452110 879223415 627830072 743706147 224915521 397360209 538466785 770286204 474621970 490121144 322665524 906939766 784435312 872547990 178831 597149668 163885954 913528620 804945939 930936319 281456637 982893752 316925615 801198874 896691868 959097391 140206511 756756741 287282801 656251430 910484165 949919288 914269199 954412420 494058784 975763790 605573286 889566717 273193650 553017196 100562062 576513955 815168708 941302560 554352656 911867224 50256415 616342853 529638984 599758137 595993356 647327561 535604162 625395296 254577512 493267934 510946293 811725579 447346828 929941546 751399041 795801534 76624466 240990133 54097623 836560441 365402009 959884720 730355125 881268740 324139269 347733848 378862418 704680466 606453036 944694586 181080946 886471924 970811952 989715202 42062672 442643300 387832452 602397379 103289327 278509485 60952235 154242219 171659110 455556286 491553582 697692433 528985162 998015340 618141777 822563130 170250632 599520852 594503278 701287945 13532580 520647230 26485207 727968728 898693082 938458363 93542978 458077633 421660830 876818082 699896867 911252584 314965387 769499328 927090652 967868375 570390930 927287617 872561626 939799916 492203726 723706244 618498621 920965828 892305806 998617086 682502000 806403933 540503428 990495631 341488402 802951627 413068054 627705791 294101794 816535604 99019418 499419645 263916408 414027820 409467419 603042193 262557449 299566558 158767734 430536680 517329199 926910095 388367727 894941349 389496576 424506717 681236558 951310689 669312873 706514816 336982090 385642536 305582143 998412315 214427544 528386072 771010392 916167425 354962633 778924773 119970197 237266321 624732582 826938865 349471216 812420527 6879577 352719827 165372459 389743404 548579580 721171499 468661723 968154682 280964417 443304397 369247219 864045544 213490215 793403962 430137849 826267896 771158343 972415781 357040634 642374685 170614574 449084354 689355792 808330586 56860425 585660371 135785373 204615284 155260459 791126706 281639355 958088074 799684190 912301912 593725467 616204268 491454771 868302987 654585890 792259071 613966492 780899859 843794656 940016736 162423691 782850408 793221789 879363726 516638428 908303848 866224375 940598151 820607193 985928715 944267177 992255903 606831037 655895518 334299649 447795082 904831376 993656614 877737706 945886822 367640567 443271684 381948330 505597662 703558896 725349281 43023809 525365327 314368060 721866757 530984453 590772426 989109769 993521354 317794029 380400378 96124793 954400862 212191649 888143819 771140653 995814821 49884655 767599044 108731528 553146045 237427004 669747254 736505911 949615770 569349813 716626815 92609120 319364710 525928367 867913497 996230185 996294790 472379388 711726426 16041745 442048868 44547064 484714568 345865942 504043317 151015552 780026963 943216442 964971947 991248327 991916845 47097472 816377248 31599213 271631298 793638379 893612350 287869634 644835953 901894010 975979262 75018119 922334681 348573186 716695619 409565087 766969365 476914887 763742950 537026946 966356534 900055881 947291716 574904099 721259268 780817012 837396663 236496930 466933691 678157698 998051874 910665119 946921886 696741157 850003266 582105915 616721306 396007629 413119898 934024012 940595067 393635856 399055866 818883328 936604511 480560225 856366812 641884714 869808813 893257135 899854915 793113831 907966672 970954020 972808927 664870733 826377985 318074987 689327191 888715226 933408968 6022595 789203337 620428505 789757187 14269898 362981287 727911125 841903674 466290787 534600251 963764698 970883942 400715508 455193411 614386602 634326177 888251995 993582036 183862121 961557230 374048942 899121323 852329171 982821203 731131017 862911780 499811142 987873063 651816205 843752553 733001896 946124724 786277249 985437532 653736012 892259846 212872358 963909444 11367240 140523774 246632754 962005078 771193581 807010906 62672401 761714975 413293592 559917216 515252353 836207233 423297559 968396455 277898623 853493860 401213239 771210427 821941495 898498857 472972711 508901221 405619150 952492980 354104000 685582449 788451022 961133654 855339711 858689160 254623867 372151658 133447078 580457845 349076716 483597666 984252432 995200661 157048599 695811820 591301413 674025703 744040107 876326942 825128852 834577595 134490974 494545621 366218397 998562558 203845568 585594222 738315677 877285508 933952450 940390673 150725147 802324486 336970615 444301701 197225454 771416738 62542459 934218013 334194400 954980601 253380949 541502652 858265644 890100235 236973769 311686569 700356595 933757362 155761613 758947294 634215089 672657310 537252102 663294474 979902687 995935416 250595371 349661972 481430342 766871507 123325793 140057028 302125076 489319822 126639727 472532572 883716785 923244476 422480706 608714988 327764251 602692077 551129981 962648423 991548805 993012995 881233099 929861705 211587884 427270213 117308206 637214934 922083605 986562670 799449008 858141465 553414989 762593121 893913699 981712907 180177582 243048257 44178222 949751463 702505527 910807060 910509179 917880115 498464758 638089524 127111532 214669886 17162731 789200621 641251765 951306397 62089488 862497778 80876097 878050723 553351015 590274692 629035017 738254240 93242253 587626666 608965276 826628684 552739076 708401318 650840675 886968543 681381496 695020641 101872400 622381489 21142981 102826419 339472360 829413782 700167983 786057008 404174925 617474168 126949766 919242846 572705566 745314543 99969819 396150048 107431493 461763969 177219335 334988107 173420768 550044267 307634901 580183960 392863524 744133551 235512114 960315364 299362337 503734051 400637707 705458416 594979651 742576441 16666450 342684713 44700936 473201825 993918053 996295844 432058322 856890175 424975906 763353053 534726097 845758214 803154649 945450717 330383051 670442460 782646657 916237674 750263369 898939904 181173069 233508371 955796120 981998605 924748722 996802312 232106215 611927815 326018783 495645875 639220344 933707982 770712238 804473487 995626513 997272957 884904550 923649346 907053040 974756637 928684649 990398489 884854237 992472296 83133017 778367665 501504752 913482836 904855847 965962022 269438301 422508474 785136104 997012153 821150149 900122958 240150149 613741776 603657998 614398523 911246421 940219747 968707559 980170549 277858492 286789811 941780495 960690054 694968827 767636813 547634617 927561416 773418649 892400482 861242829 978023269 637780158 821988714 429016325 931038067 262880156 615999904 253180459 466856920 900594652 918018791 705072991 916398108 919442082 992453199 860465966 983302532 860117945 918054792 785127960 912082971 48694643 171950797 618974418 734661233 417464596 673852231 813871326 893267300 536731479 864633127 191480232 486573109 652207615 715758831 295212448 578345515 150273583 649581811 768830188 796274713 666537784 951703032 439735990 500230186 140956627 745881718 274932240 920988082 172773780 647038131 610459884 689440628 962638903 986540511 806265121 996199483 757976321 852659360 347628384 755503596 764283341 943327047 879560951 974091346 139711028 441401430 345409676 677812036 828820985 965901344 244208908 734452553 210480118 736449565 379612564 446740323 602914936 905943222 669407633 918484695 919841172 951509605 408950691 585310429 142232410 145916856 914913495 939553190 742061746 764415035 212388541 447607730 589502610 593192024 935193046 990384611 469186081 644740596 748417159 809439729 854052512 898648880 393197731 420323592 717132847 897245310 410115373 976243612 458211858 841458685 801452987 839203993 86590194 706889022 629353413 910292842 74814843 589776944 934635479 985883874 942483677 987756813 42076172 90482529 637298863 656470668 709245658 851177974 266026547 423279741 22198959 570898999 85735476 166935589 783703233 807811585 43618402 827291067 149796244 469382841 462793647 934351863 452085064 489235619 403371007 457722878 222802225 379534254 786783355 844366434 219143593 303772884 646017654 733233837 243240846 825712979 403113832 938581997 12681703 861502169 203118593 758220590 101113865 649704712 877137856 968901300 362900633 619083622 431841080 782755944 179498535 512524580 508620303 944834167 894091806 992645937 890640982 977063529 72548774 952398140 79624135 802510803 316978081 855649871 946077533 994979390 860855002 865735138 146507402 355671807 423983030 449151179 775672052 958291292 343535679 930025827 411969221 512934275 727135183 945284986 484984971 535452202 644998474 717307979 11548074 276871110 772845283 962553046 427118238 849953892 936731327 956843810 513700958 805940684 754489500 777721206 244744631 379373636 330865884 854380882 175654175 592610380 960711693 962474900 664829683 687128470 101613429 737294585 68436127 712823033 727031208 729389638 917294683 951060027 276673448 892400027 46076812 625074443 489213993 848011903 240546797 414457741 394549000 952178512 502143478 518730032 532327982 862078309 837596413 857641606 164806744 213000860 522394056 878835062 537636399 858394109 319478019 666643593 223504751 729848770 398952074 709729029 453308594 909031729 434007995 960759150 902182079 953580759 149750631 821224147 228694869 724477687 194817870 665931968 29621911 876937724 361065147 443379132 242061660 899290689 168332232 449639453 141408843 894812979 6536946 546999095 376103469 869094906 300259858 633998596 818791228 841957749 226499314 615225697 184406399 746298397 79673344 544070926 132443499 398809322 766189904 989839499 414996446 580301660 833375193 987121490 359085578 470696584 329327421 502691095 100340773 668060544 977093414 983241787 738246901 923704305 605442482 884739997 153078798 262528778 975431051 989311885 923339641 949402791 428519208 766787449 533293465 751534353 544333836 995133335 89809771 214812745 620151005 717565787 813460667 828122346 154280145 567195243 902426915 926640416 972581519 979905397 417824261 554569333 42783138 307570229 638694312 675631590 727341860 988565295 438854340 838132266 783274362 838390586 536314763 801136413 88808188 959341034 30581028 833819812 311304822 803017826 119944562 558071817 878132468 891617815 713618352 911248266 319943208 641573333 304811027 564535778 6399271 109420510 916458295 983013269 561271613 756922403 932758080 940936897 47486257 451010200 658203226 995633868 410822341 930535775 269684139 322567195 479964648 833739899 821041982 831313897 650237390 755360215 485337654 533286829 388243773 567185794 41628595 107331723 995448727 995862812 991772647 994079718 967732357 969987410 623306935 684008160 334699808 990699970 416994007 703759867 133751798 658237017 114059016 385602734 527718314 955070528 653001799 966428695 987722716 988845867 753617194 865515771 864511477 949311228 218501761 325533349 388469553 634674546 12744889 970228438 824284034 855944665 68810866 701893279 335597852 442237642 633225359 826423793 775630566 820496084 428745900 773550499 347780191 763510043 72982674 577622673 539465656 577787868 687011881 987276851 142469395 353684844 808070286 966761882 892497594 942851093 373121755 859207439 170711660 585145661 244031678 531260668 956834257 967881297 562380801 905576077 249109198 789321141 106932130 486284870 371937923 403278742 729443708 875431945 225624526 774741001 856261887 867555144 886898424 914703069 425136788 972105273 65219722 605140375 76605754 112380083 940808025 944407766 871450691 968251011 201514758 258442050 202060372 772354101 586775605 641429576 74671271 226064138 72329234 864899018 884957961 985703508 957730537 973454890 371061132 444817251 410776880 510473302 989163409 991233804 380279114 745735089 916161959 950053359 199248621 928039224 716573300 972466159 845428169 955923194 630151749 692362600 995722365 998469641 424288795 821836237 844202360 955680978 349796890 896969298 987295600 999081407 827462262 872881226 414142585 612153324 150150608 679929957 700755609 859738101 672485461 890990211 164779194 914885542 138284679 979821040 511023505 908602880 266026898 514114217 347398407 915298013 473942783 785486263 998514633 999229326 998962021 999153186 58484792 453712496 281427930 858539846 100684459 364204005 305801776 597617923 84517110 429239698 261460888 583869320 201087386 213540958 2900429 768802908 700907030 709306845 967494830 975382557 682915591 828752275 13856676 752914337 358005417 484558467 991231638 997314765 672877921 686492996 31302159 594301453 520057811 713429321 891009044 898859767 872060557 935164096 637756010 784942970 135733667 925766311 888832733 991524881 186888004 845730643 811635403 984303455 473315586 587825731 8007506 507690071 973641097 994339517 371631422 753702371 559050745 768933033 29398587 875815356 527153989 587962652 639382663 695116266 359176693 619923143 870102306 933110750 148572683 989834393 535490453 588840468 618078107 751427563 515571833 729301276 70226241 699652907 514221368 822046743 291536488 394769884 211031569 915616758 62667941 980603764 41190592 482262801 506965674 536389216 532428941 853784720 867256008 922440640 875642162 978571450 460045502 850093727 293695573 476793187 971124220 972088400 938585 950872044 281480895 284411000 16996433 490435792 37210034 907767788 345324530 918475603 387358649 474646729 775532001 882348909 221322477 969626938 873739458 938241589 528797789 894332056 971671449 983398063 1568456 789362044 413308385 440293784 209371407 814421829 903487863 947307724 294098473 570136670 214454054 967019194 370291675 841269291 402744721 575243839 776460941 792308563 651656363 665651861 347523717 841935069 259868083 989953518 41093466 271878635 860800236 869816348 35658476 686451446 958021498 984999169 504004354 806095249 463525300 684195185 284435915 435998006 570718460 861146873 935578784 987573144 42667133 517870780 761994214 992040668 479592382 961681226 658273190 928983844 72761826 308375290 460034162 964119974 812124263 904231417 621631211 658504879 742411526 880520117 372702489 515378924 725261043 786553280 300650510 470981613 613101419 802809766 824675737 840602900 114372882 969670209 940283763 976454943 74040385 112195996 654157057 921828651 790267649 898240204 70983984 771816341 508334756 964290171 635168003 705087917 983129431 993667470 516046848 532818560 604311711 776337033 573663488 595465719 281410407 500743655 790024006 848708188 709442682 894491688 27093500 867919822 130549846 179045190 856566996 902353919 810952779 867449484 983783201 988139849 75721111 847836234 528853046 943198719 122049579 653689149 242833496 643389292 995770835 997799605 821368976 959998604 809606212 973057805 121497858 742084165 424857923 974489608 377595719 691229901 85484117 168891462 87276082 397393670 138452543 913025999 17248986 501579411 887970730 935595942 495290127 654277754 40508815 55794642 62190247 625435430 546656764 663882791 33001694 489695668 572155747 950301076 336825076 542971110 27193335 167636489 102893943 453149428 194718286 788230451 101516670 461633676 793359342 862355026 824125558 883660674 144230139 661862888 243519887 292503371 78970857 832136199 752351406 914589815 346804484 588111285 472024247 490049763 762952753 793495728 797580495 887122522 402664177 838471738 960552393 973784348 64161345 836370728 289468974 861609115 109749010 620743146 195240124 777259959 346316131 813543589 938356974 962320642 52322922 283589000 716760174 966868291 643056310 899587486 534296549 943031307 902103749 967026633 213028027 229550464 353764901 945266780 39551300 901295692 696998543 828784144 922439468 972846000 104328512 754377663 399486089 928787805 988695278 996138356 69712648 556030599 982442341 985755085 530662253 753188321 176780393 819102501 849929897 895452845 309148604 558150445 494837756 790690256 401925749 909407492 870956045 883473359 620126152 794354138 66690773 123033608 82419407 550584934 556932333 624011423 373325492 732889336 466717812 533095395 913163678 953394229 981666442 988641750 357084962 920591790 969874375 992744492 555292973 559305175 544081167 761122846 706118594 886858162 75772066 635648474 192095821 984967015 775222449 839365304 624023602 717498058 661165942 752298296 611343074 955485277 389090021 849912970 295888412 404457054 476342949 537052066 512433996 800148968 876279852 960276079 239774683 558947685 12958387 171450270 22510714 424525305 593317811 756326835 451350918 825827270 249440106 734863105 267691394 983227400 563759988 813695134 825268869 841756309 154593385 446014341 862302709 996718912 204464937 607244929 588890036 744520002 293666199 681031383 452785627 848031513 809334619 971043434 904523585 973893309 869988602 995554909 163714895 566865203 634339614 657947712 426773863 467547014 862026955 964902990 856732573 985118440 499734334 558635335 773709500 918619791 791858494 863167737 654057640 938243276 188014551 661490988 873922749 900241312 423024939 731996168 900255899 937599828 906397584 973797667 145341830 278427187 693147909 816077457 540380883 916813805 562632437 655374244 848108097 900110887 25806201 186663964 768508325 851148314 232992694 711035866 866060600 910144771 607245473 867713579 277622878 287573117 345799039 500144439 345703438 459492332 606555138 675168794 952743001 965315704 752107374 799323288 635290200 952682568 510119136 526948135 319868453 673767239 394186458 581682326 218156175 636758817 77172117 644189085 290123017 767428613 913027894 939938060 319477161 604849441 255723161 789932496 942325817 975284198 349918190 420492288 186393570 311021793 423905323 864066312 968982575 983861748 915386066 977415523 901471335 903510149 417384817 946305575 329892364 412846588 392268920 813940121 415123095 498378047 191709427 484631646 221658684 384746447 919795376 936636742 237465103 861862895 198411124 457475543 220116207 435341455 853043598 913223174 363611118 962879398 570570617 583721139 616600280 777056054 472457674 553966645 292602365 831318880 840792137 879203582 897059243 995619661 496182846 974145129 741478697 997724095 627463713 842949954 4354592 216336713 515949762 873311805 230260724 873557750 755503455 987522887 717673535 854759697 198579413 695937500 325922401 740344736 259746755 374660798 987962103 995060320 835632435 848913312 742020916 937738529 228230457 769704432 353503046 470179618 770954681 987716158 738516484 889840052 859587339 868651434 66112664 159250387 125682712 764158807 926783460 954041922 306842313 569853540 317205932 447646015 483511830 953116993 532277551 756574696 652902746 731639418 615363834 977064518 600703094 961186512 300872372 388854997 139212575 980302409 313685135 858300029 885752320 957422834 605509066 941983065 489288429 714149311 672930699 708479071 541032658 745877533 436486305 609424047 189328584 718669066 584557885 916506454 920950066 950663233 811194711 871931365 711533868 778350788 352105740 611976871 205876762 507476070 306926548 881077819 899225663 937180770 391473086 882956833 557634170 705238663 75647646 726592760 122599520 762313133 945138278 961014730 875048220 967709953 270521912 799050785 164552104 851135140 664749842 771864154 388467 602479982 632260371 679021940 367948064 370531067 439992531 955413530 78037333 164476632 629130664 977380221 233117784 616317630 340593035 625634216 819348718 899588239 807026808 985706093 541721654 576457026 260708656 669500680 495697713 838086415 133968878 734085594 247097531 617289442 556223879 821214544 637561280 653377642 920961171 989797845 468288675 952324117 976026372 979779187 395721965 877321587 152669701 263233753 638878225 950637323 966299296 969073794 20673417 652587084 731067496 974356091 868782523 949528616 100260766 410281387 641937085 952282498 51125001 124813891 938996199 962646858 197409772 495141125 539258398 994842552 465217505 578967666 133072216 199246483 436647627 722137129 616064992 735635354 696557611 910458577 70248988 666413901 395173000 750664644 316545109 899657505 902493461 906790515 487839603 631448781 775875308 885191247 467985570 705394208 931107304 945005475 310282814 360650521 490168131 832447571 223599596 835481871 397752716 828227255 461008912 878953275 51119638 960415046 590159098 667960495 193142307 521803999 629616376 685948506 17859722 897387836 310713153 653952504 983354267 985994989 244057693 359593132 890950120 945925728 469135361 518578882 102123727 982272517 399482902 458570149 221985127 410501801 317777556 740525124 893937186 985320180 770556075 970802530 682519333 875023632 867559278 910826648 306685171 570036352 408813719 992140036 708781935 718192349 901200946 931219089 698771533 699376408 117685097 393448317 929713142 969053835 471299329 858885358 794596162 798311979 355916073 684788483 553253688 810058029 949136077 995546417 270708743 865138904 710294854 928611981 843544130 935312609 630669291 702468923 597660158 692333791 609455819 877009754 158739267 323708726 19358297 160762170 267093952 399246540 124976580 503521910 604469684 728598895 857325876 920349766 843933189 958584923 936661119 952760552 552972343 671866716 700504894 765598447 689692748 788224907 54949298 694457413 237868416 621204762 766446064 956451014 298250656 663980811 725524262 826852253 999161554 999383148 566503838 669168508 87246762 721182409 528265827 651757660 382211777 680253511 565058438 719743411 678325967 763954700 689604951 904837884 920687555 969412692 828808364 998355110 565987801 957519390 234619637 863124305 785464633 935805361 454762423 705296739 737883905 769863303 7827540 709238296 159649374 350425219 664227003 735503596 260641450 266091969 152465880 553207693 401908439 855120442 826791028 896521924 375654643 486217019 823896709 836506233 966777131 969659323 693196347 932011551 558137407 732080818 898520873 904712145 663346438 882281655 64992500 75080032 343373405 872498343 684516317 942487132 970957505 983715236 384144122 846951412 86678143 997217029 56361736 726846133 22404590 299129405 385783086 785451024 126031311 921350035 555681498 878255477 540979578 832977547 78638887 735011728 650232271 709681663 919456527 957284253 446812755 539648651 734984962 810041519 763713143 969719954 927062033 975405994 114957589 545250372 130858327 202739794 202710042 370276762 656405278 949498110 788643591 837643470 458061720 556279779 871381299 998372926 340137623 615311271 412958218 718213229 371751693 732662153 218051934 968439488 598405743 764024010 341913442 352114729 579121978 822121975 951423619 976863588 132528896 295234718 666022898 943813131 253682232 300339200 661285185 992681046 10041176 682490905 746805401 871896051 53940315 168504358 394218122 608512210 538920849 548240473 364444860 922120196 221835907 798932489 718730780 823726946 784338116 881753308 969598384 992081129 427869967 535138877 609292003 940002838 329630736 545219567 649223883 743674219 143851276 635540597 25540608 418214257 811369875 976844309 909237918 984719827 272496119 361059870 220145957 595971017 456934576 510026775 554706796 857460653 727767517 879286314 242075391 952674223 8250841 544546576 14002605 334752358 864091158 961432637 956175202 971774919 453971980 991440228 473360618 738315899 684115061 753168881 251882732 445314295 556643918 756752981 517685052 792641242 241950725 716785219 456273920 691491680 922446732 976856479 981418767 996140563 527385694 688999098 502492289 873795707 88874063 501232211 665856542 906648980 900753287 997358907 845676913 992640867 192954022 948235656 357270111 989810967 698731085 841704916 19488125 974612170 452124193 486682917 504614155 943319982 350254963 909003462 486187346 933104374 823896734 901038618 721793935 985895717 617208936 771305385 181918408 501848962 385473617 846469691 696090671 913144167 335756123 559722823 666988782 822486410 263929752 518851537 978894201 979368884 502705671 835958144 314329986 316738377 330401408 516166524 61526287 642607801 604939874 877581490 657785093 871584680 748205895 955139782 98439417 515730603 902630621 925193855 820903530 824577218 427397454 831900597 124994872 522972388 390497314 804170474 216939453 755029290 48007661 622407313 431620439 614165101 636902567 756482756 45427991 324270834 46621782 181979950 259916124 601757679 830679751 887097165 463605139 764739328 939447402 987034002 491619481 930601371 205200681 745783067 484502173 864571021 558540875 932127751 605083526 724470208 427566304 437833422 197608216 854465314 79656187 852393575 795248196 849645778 806409035 836075936 821513557 972513847 761373698 868283711 382699483 708518840 984866056 986941868 906247151 916602790 786089415 822900815 315260471 979162922 924396598 981694856 308165210 768980800 333487574 340342029 646233283 938281757 418737145 736047575 49432174 419326571 51212026 968359793 404158545 494580341 55660635 249609095 61294533 575541502 901226639 934009205 178329202 467698476 273229421 872446272 645825900 659897486 991437927 997516124 687120027 809935017 210659687 702476463 753732981 968913441 958754611 979686783 56784432 140083541 549594136 616173020 951635515 958602312 6195644 433950671 700340765 789010990 733391690 753284199 72056670 74764040 592861047 602273816 701293407 788391795 17054087 636624033 699985537 736505795 534883066 997955205 107865028 148785816 537797995 782802377 555983627 754593175 935805220 971211691 215271888 445327007 368194683 851259796 503112086 711961306 294536941 438743326 946061427 986530597 994944346 999305224 74189936 918536641 379158450 624482429 36800176 63927105 236168648 693593895 217385997 492808163 488633427 490448800 98502210 810461058 49030698 179623887 668183751 792230716 855536685 857214150 462527447 569408607 854511739 950661370 480792720 831049882 7319244 240847695 629523449 744499328 142756744 360593580 563345705 702659915 809447470 922030035 594368987 695814555 425678404 516811074 601042824 637480538 294027637 355999252 530549732 770983557 270327732 550257710 516862344 800504741 163534782 345066049 570960794 811234019 592540114 827172496 470051582 777188105 83691504 939218140 672049756 760590105 329896277 854824970 480002037 526963237 261155471 397893153 558978603 569688057 191623938 454475674 553747594 815942436 905844518 912415090 181879058 821895678 587526502 651907978 537522229 784058343 393629247 396419279 151590006 783716036 242638336 812406033 221492132 564426710 322876045 552656947 857966557 936617792 133080165 607044938 708796600 948636204 196585687 520174373 760163465 898541925 401583061 528804053 62594689 496067854 507808893 529799202 720461649 810702906 420849498 935379084 788389638 927895835 388854543 575658437 937067716 989509855 259619938 286158432 785779872 929623149 356324431 428478802 194366445 323762188 935341405 939716660 828387168 866126379 948173360 989987317 326214017 818271028 830760970 834339941 168282995 707700937 564778929 755655400 44431338 689288175 366376659 619061317 948755124 961309484 447941928 953886015 409356619 816608910 468890661 974830908 178807949 923989693 474236514 715751213 762131211 986474777 989865680 994829552 769685908 903403320 870474818 990146119 374417885 583980681 690744358 847291445 46628060 320451886 4019202 270183512 126087773 682137251 198877133 388860658 227012862 920938938 393133632 760762986 732083811 971189908 167375173 350622941 790192637 865408765 793611093 881173219 450007871 939790338 148212425 240758291 737450856 780156946 269048989 286529781 199364465 583746696 172727766 433791129 196768642 915780179 225090814 814291509 728431262 992346934 278144638 844194578 152484949 364717920 657402137 676052902 80025973 454404897 409553789 480405758 982980805 984117161 717505444 912235165 110461484 935329330 450454158 642411158 797148049 881730447 704090517 889740635 970803185 991217500 944895568 975519473 422864675 553734866 693080200 787305112 743303448 810550948 165903860 617177066 751404789 884099086 239213525 887940214 508095213 791051691 998122257 998506772 66808839 968577420 289149984 732411262 739555084 995222706 555049223 624254491 229606440 951729744 920791420 988937810 1611485 634066456 356460216 413637129 289890851 430884938 620811205 864873124 509453509 596344827 759167202 983271693 218657237 459255422 417038357 432375913 76256466 722515909 546203975 872133969 399532488 742068493 771787788 778179007 83999686 556967759 228283397 454096369 706663932 729845045 469056761 823197853 326062019 467965460 970910424 996905796 112580891 917585391 337133970 891870672 415223518 962741128 229120169 230864065 157071566 329593729 246533569 869012571 584217086 683552082 23455058 34236260 743868778 997135430 969014414 975670220 294248959 623555008 987007946 995009652 182598588 391830549 551831187 674405189 171593762 793480921 196441674 684220917 547196652 872239425 7265401 106862735 119653166 414655440 329535970 916733322 605794156 915123374 405428772 563547421 212358398 299073097 419822992 889638111 869020064 879265796 874670875 938818080 828872202 876013484 690637139 821909296 280993263 929400634 586173798 866618762 666356566 696428212 564713630 797756572 758772295 951579473 903784013 997345118 426981455 468320378 310966473 481839843 377833779 471855548 935626312 965971871 824571044 879779141 361326091 423833338 745569422 978611739 842725736 863181412 111745205 457420768 72459659 652806230 616201243 748228289 129414335 359153497 177267361 523794472 71901926 265700396 422318720 969406838 266989709 435300779 69419402 855158796 741570222 801675582 769483469 791090055 620814937 744224221 77286067 576460043 505190877 726081661 311095517 978111400 263774907 321928080 942249622 978938933 960573103 990817328 882188145 973530697 535224938 545577409 651240716 922571657 582587360 810010918 928340148 981763688 73324229 419008003 842656773 995299172 614801494 724906898 461950658 476789835 137820353 592915317 545224686 598265264 564292569 844777659 417545235 696832160 147403651 789056407 462403110 807022206 712691525 931222601 66090532 754060187 24809125 861566618 142888601 624599973 923195559 993243406 25302475 984850311 771202421 985653938 716918328 744784266 266755368 888691942 9346224 771759436 775664972 939796021 443808998 954445693 4627717 256608123 986950854 998197340 743861110 751291812 103806899 609333029 648048030 789238895 785128012 945646805 613480712 868130467 414199464 961554010 876818993 936354663 919581422 926438573 454852971 669152034 483164314 902877125 316828354 349923971 457846048 582489380 458284060 917598793 622053585 776652186 194427098 275399437 67685979 986155838 983818775 998991972 572363571 586354133 95101603 909186996 494769602 892289489 369430180 622968495 849480736 993951357 276624928 474629755 636471345 672917299 411208226 921148168 959554918 982476595 374801630 416807662 234323174 929804339 903712999 957940521 795533304 884986021 926283561 982897084 742509794 785552344 980080566 999234459 817225548 872520601 69755100 309865520 911215831 931125261 384435795 824378171 34912402 423469729 564085340 982548085 418783485 624712126 141365573 191505837 387529257 403798105 159362748 236183925 428782045 584405633 576237054 927130108 992627502 998409572 235526098 462550877 180338520 764850224 123259236 212583345 376970420 735014604 534017045 842836780 608287235 669829151 913628135 917073465 892682616 943319399 290612807 594054544 402563152 898083851 97878496 961596907 792546111 965527392 850878150 957276427 313070925 620028865 992240843 992729510 645935206 805255687 267642857 704188815 914308630 957676914 941186693 946346190 117026814 976448395 236205025 251710610 211794755 432572815 845020182 957156585 752092622 920118998 828207598 914962197 709978267 831379025 460881863 707782005 12665683 984987611 627044218 944153671 825291055 943920906 765043612 846812229 176373816 326714131 449963671 779323518 352271081 903546106 934217376 968377611 876472735 925586756 18867298 667498853 424682447 832914455 843570298 992133832 862515605 899255883 381712166 829099941 202496793 972060154 602705623 984184302 970213299 977139304 807661614 965066024 55101161 299327210 474510901 875549537 391526486 407741355 231423184 488496810 861168930 915367788 659542869 900344959 79513208 375113492 219961563 281043639 514927100 911769538 717136994 906562492 564041426 752658038 428738992 756833222 798115971 872998107 858620233 926430939 114518799 730069103 310109079 314088671 964551896 975285954 761908417 792288044 190419113 427269978 773008705 838801844 126840254 969843832 21731956 366918992 569291542 997037610 76632315 245833884 138476907 228483198 685036609 854571882 650687721 813355417 640118956 865665851 244472842 485941527 398972996 867327556 89949682 963098970 933890256 940637728 514030515 747446921 428495754 451011312 561846918 639291427 329045697 990432807 425751415 928092534 237158039 867074987 153966449 743815652 960389787 972690015 40341004 82348871 925395110 958275809 791203601 965278508 979384255 987013495 431649787 780314311 85351194 993471994 540666878 738020556 931308714 946978578 573677416 986976099 108891210 981032593 844114319 867079903 158020921 435148313 939543355 941057330 913689952 992365998 744340970 997458139 106679608 711642941 136736244 900560174 193504569 529789570 218785352 777806813 265880261 872429560 23433883 295422239 748543131 998224588 266524796 401655153 351578304 813053791 855823881 892221951 812856194 973543647 56132347 464279310 445420927 836509730 549094346 977400168 280519197 690804759 610100645 697140095 222519392 334842063 610664924 759384185 132666262 311721212 693142320 720448644 188746234 499744550 134549215 643584878 975737095 975966673 262901400 895198522 725916700 825453766 511055 218178937 346037496 792081081 289606479 734185751 831642473 843569950 688757290 709843097 986198551 997202737 345019970 581535668 10746892 926747671 530797363 771814533 842242864 879834900 999331049 999357021 902722321 980208032 897839154 993945506 883289033 971888430 904820712 953189512 819110194 914198176 278601429 428932394 98423575 247965742 612459669 809726047 661665938 827426463 92488508 365503513 530845637 631504822 982371607 984536821 918795421 991375237 735174510 904586656 84130037 522225521 188995887 643928639 720666097 804425670 695544565 942839320 718575979 947311293 857756972 861143790 589350544 959815198 849294753 990801446 184867038 374683183 252975509 557107445 359305008 390074962 655675188 797735469 666367817 821194754 176789958 771574743 135244035 901586960 895662043 970009882 868327332 969721293 177755375 638834135 955835117 957327171 191158638 230218650 291549755 874795564 486899786 771766365 210853206 723510482 704160440 983111487 593534945 814034524 743167178 854761087 469321355 985333068 544993887 866280391 839827344 853465434 693743744 857040712 488203774 537445644 643801837 656861729 952746960 986738707 539842807 691040071 834146525 968243766 229384013 883931921 528404996 697144050 806674649 913730686 107616192 265113157 502308295 911316909 971323154 975071153 850483152 963904652 260030671 312354263 721245771 860251350 679444890 963229346 594210278 960349026 211030853 853736800 200334389 244622545 638413391 896139869 64015050 924144128 811623030 868024134 297299847 383529293 489877626 914414062 103913606 228324075 397139722 846996381 408922874 918956306 93162441 502932244 13009515 406564930 675396943 908851819 948501879 971309965 572407817 600322854 899971294 966782616 563665919 964879110 282576382 422596459 372229884 749132804 546772482 707982785 236650823 688199125 283025257 648267448 995936725 997401522 903777587 986565939 77602086 612066158 335679769 448452214 574376266 862983270 595309554 902248254 695255682 855598550 27498503 161303950 138273284 941522235 355928907 462553334 986041642 986805362 163301057 723838085 684747508 690326130 336861898 651270911 344661523 379727355 18235586 645081742 623171472 848205700 142091979 895225968 987433919 987918704 139285904 186363585 153336333 805725640 762662118 809077563 977538967 987920712 924080042 964300403 831802651 972376172 566313477 960713511 981337231 992650408 448018661 836928706 140699447 750697807 489514472 921229830 253730471 862892187 21093015 492641191 583494332 994501439 596620129 949930851 731289103 928952987 765918168 987639255 242909252 997111259 52322646 213362552 134093106 937653149 889479764 903931866 340795208 548172280 778394012 805953763 965352400 973861257 249576460 454319257 259832220 814005592 194620196 734568053 182767169 216232604 385297996 981788532 543094611 875187116 95163063 625154155 216130737 773274868 973030349 976212777 396251685 566063162 830158176 953384003 243518832 886388874 764512711 956685285 233314496 647414706 682998152 881140339 715884665 966892578 537199356 683335308 949596786 957572829 525246690 822613992 744784720 926409710 633953823 873051912 886823988 944639204 648780315 979811142 104483157 112636069 650990932 967194659 227291428 844954935 243836017 772744898 621518207 703643900 745463500 881739292 991570004 994660126 810372739 830368503 300631983 635800155 10081871 588014228 553350811 779244389 18382356 979015780 582400592 988449721 577362647 605795925 246346492 511464469 698920747 944027158 819065442 952414089 194634051 479946370 903101724 936061970 863974467 872703948 541572797 641714158 321866219 650724396 865937362 945751004 185271285 798449989 966502687 969445235 711387400 976000448 955619431 996778327 254852278 969867394 523991358 532889112 234482405 412141650 25118860 891747837 679292158 700324903 719743224 872432377 963938511 989027546 448693271 816854409 217118476 279395587 821351327 992533045 726289747 835607072 705422701 787220565 720971042 936694589 874709671 950029500 446781837 880756441 324133803 726449336 508697212 831238363 746642048 870539257 44501885 275333458 417396509 507412538 663794107 902001775 37986349 678598952 777615733 809006723 599791399 793694527 38649912 624717364 857247689 922276918 596061992 960450907 16675891 407665309 577518319 693720967 451297996 841249786 642264734 726616047 319903272 474124427 347445308 705542780 486896912 791469888 893163763 953662742 607883177 961895717 173264094 397650457 120902607 652334349 428828381 657531859 262212575 428054925 900920598 934722479 903136181 942808230 261941617 465815231 710638878 876414642 267244979 514499935 295087576 865540646 672431520 874788367 644563845 921567207 963732003 995104166 129619826 971972957 69726746 201436757 146113973 285966267 724725347 947408617 855497289 901467439 763117537 776014918 607369653 745726242 223595249 887568033 5906032 41755587 506617008 802677639 498177734 678951809 970991283 992330157 158421899 187431167 778224166 960437861 223183029 293951214 200878465 233442218 487253336 778885636 743233286 954956163 590397076 612362451 299437641 595975752 441816948 948071330 624353866 737461805 764662824 827986087 526609953 953796035 255378551 805248686 278657590 411722367 725425128 868121070 752714849 989471747 112562574 264992394 72052990 136129200 818717597 916638321 392129661 773021622 150311986 659837204 587876152 738306992 870559923 871921094 299553257 691425919 217014694 717371240 278202027 494088367 140905437 185399293 27433852 692286047 299650416 375917765 390189207 701353209 788612144 865433436 915694540 992644081 57487307 472168660 756853436 984726919 995637158 996635482 93455832 182137840 611117976 985782864 39780753 266969710 923961169 969727339 443169425 971636415 333420363 468611149 43715921 924403093 763286578 786508395 590915175 737314362 190199193 289830010 523664816 939513543 876613964 947442861 598182604 873638246 688896186 865106123 215462254 423387534 960573150 983394784 138958699 314865282 780925524 907350472 176535074 994541744 106599137 838218994 245441679 448101055 493703477 707607492 3243297 892470365 877708390 917843883 808347597 878036408 719089511 985006879 90086565 924981748 631201968 980822754 985170854 985569973 198305011 943362126 691575023 906329240 69648302 925278235 383382250 739860706 395899425 657963181 82838755 697286465 342305763 385737235 971913853 977165656 617520883 671409856 956789141 970474224 16128611 864388928 259939285 576420919 262624897 322825796 842633943 844979236 701310689 915126554 955662070 982938418 210886904 637403115 770349092 976157178 328434001 577691243 678877068 991316805 49890923 519496095 906041261 991274771 433906139 499268271 58327985 129605735 731875084 828101076 976408473 978242742 781680467 871157938 549232727 996638620 686402248 947622493 469338012 846281139 321715307 566132430 451364986 514322739 404501685 929020301 212931879 419776007 397657490 485036417 297945525 839898946 762872296 875312029 714451775 865291364 461491290 582547628 182110022 960937105 785695661 959139168 336824723 867017632 595329871 874413609 789453065 854860251 391937800 988742140 205171538 224311784 469499649 699833344 168730776 654012140 344394487 442929893 315510359 621115793 312981699 818061387 602775571 937841490 978134581 993341156 847011536 972468669 108649403 883144951 684781098 765499053 864652187 939505435 177770829 749937320 446343521 876398752 336605928 530152187 606214189 867816465 400040527 479021899 832539083 860285740 229277629 814332394 818927152 837205490 346017713 693578877 528746324 964924753 525888815 555530051 249906456 510738446 736568874 979432547 979758619 985335125 618816810 814022307 312088323 409628060 746782695 977837872 218172517 274456148 49112813 294375874 506755068 789264419 393614442 628405825 768300047 876888619 200412542 618059138 886331925 918274764 974440363 977063249 659928993 843044274 459610438 868548950 315180854 871847809 627344988 949157498 19700356 179506729 250053708 927819088 922896694 982833892 83750703 757759333 946292268 955194740 642766932 847368108 487908777 726227721 751769356 998909285 998061846 998207626 345916982 537277069 552150367 948931594 675943491 908336026 649480544 929679065 774765480 843550763 434082696 840411142 9350000 520905521 738127225 755187009 764339708 912022481 619218191 884921262 251490784 312026167 820561405 873754838 899090457 992386276 956675891 965304182 378817007 947394062 282352645 949776059 831779452 900996496 671936528 944354594 560794074 891181048 251358720 784206881 766279464 923817865 671940165 802198927 869443653 997700569 240567268 703540818 822055992 870485436 162887796 493603411 520714180 826379244 89683456 507536539 13416220 727042026 11750928 167003392 893218532 937595596 445192782 726090786 11030177 835091149 116763676 625976524 943455076 952425323 250775612 818096258 155773342 219929017 612375315 651710186 752286387 940736667 751208046 927799086 345818929 893293217 973293999 982579784 637449724 656813681 519392070 657018816 805085255 845909470 731663263 901771554 372509583 970356782 565105501 821746111 106228302 367799716 745219603 882867241 655487025 920530929 735845747 946570326 801429304 879013728 18423523 795278426 104279848 728572915 920761533 928484245 713773615 783297708 402341469 433557211 786150666 906254257 715824075 774399009 737193409 778270666 484771300 884782227 370601536 485174654 942585088 967617361 437220131 873829790 174227421 838825009 185407613 315068969 134412749 401264098 334982926 743948232 402718597 558043801 185803201 288180625 607813341 964197396 522514105 541087998 125103224 238387332 59951059 824356449 701346421 903944462 203855293 820204172 565272030 831328122 708585479 807773379 197786487 617092500 386620615 541721006 839602715 865311525 931240990 945697000 554777250 784994245 767710968 944237690 270095483 975010451 39468370 483386049 869556711 971946486 690280321 849250229 200660314 235592644 897516691 920657416 127268614 612108658 735235389 881534558 794955687 995371585 287011863 805787068 637236830 851583064 354348949 675900599 771388384 909713472 648091251 893881238 406392902 534557659 537719586 914936037 156627601 893907181 826008266 918573592 906701254 912273520 127767197 313703098 327004768 635809411 767799128 910575759 459620642 861727259 258691300 370268426 615370216 889062246 744720332 763698085 690354257 903338990 826178098 850924499 323855268 482190787 404195597 427839448 237030062 676060780 746635066 873541828 231682230 351158751 825450669 911374790 883211295 904642339 326103786 533730635 276255010 981748111 768449949 776100904 178152230 785776526 150129996 305766456 343426168 746523661 229281684 868699482 779114850 819075794 761907265 947879800 98373186 328998373 935930430 949448058 481592746 861775491 116354111 796291506 577540462 812969225 927680366 974281239 374055012 510830702 209894298 455975359 685173630 980090730 355404400 688768768 962304734 971977565 372239258 994163961 386323232 856670743 367672278 989557910 937721508 979899849 697180963 857012155 733514015 765633329 760069261 778998999 921122597 997281594 82731821 983155508 726140713 897357091 925517983 983286069 879296455 935196865 74597466 696624662 101620697 515932471 148334172 273244421 31776716 232748668 46271229 561851216 93888993 700677356 352769920 930288422 927538159 975955524 663585251 911567873 181615816 726551222 929621714 975318151 592070887 970699010 404562336 631800783 100140924 299253277 541467428 939432171 268555474 972477954 938189908 972071525 475713371 491521946 421014334 962009346 92613501 111757667 328326247 738859776 599473678 798668790 93875233 912279372 545651850 639633213 7746544 928790563 500354456 525441492 383792052 565835061 569634458 838218669 892382091 897307208 43399487 387272888 535137509 752746975 357407873 976326991 303416701 904124553 258820313 708803948 518244234 968454906 868277325 881984426 344165558 513486099 695886368 799382561 759042224 990148730 475705471 792406859 936641202 992589017 62406437 463616704 844738599 942817105 447860714 491835847 510052087 727162770 435976700 700111160 657284541 859082979 414475765 578017056 98421210 600117406 829875496 912267376 552728231 950178124 188243813 694166643 300748901 753106496 558376236 767196100 180467627 733127066 974326923 986798588 836761870 866719381 391676301 593215035 784847872 841669955 521832711 701755024 200390451 642460892 741461314 874957255 746434812 964379321 305045948 691217747 170688006 746581786 129223513 301743489 956185019 973106473 438247222 831132793 405845406 743285073 887809278 897967843 842247369 941597805 834527280 926557708 83021385 795761028 483239998 567991003 748242115 796475412 141366697 629021226 426292725 702877376 391979330 623526251 979661845 983019798 314418965 642965349 699854789 971333454 638966125 746384790 695013041 910685861 599547043 619485455 515611869 525048876 400204490 493220925 850235203 973193731 566534837 997583870 935615090 996199532 925390403 998869719 481036737 636941333 240848908 565528685 805262814 863967998 966236385 977001191 573224415 856729631 377926210 974749284 841990982 949504949 402591538 519576754 614028164 681605504 489521321 725493172 592506831 925858503 527497122 615410714 521169002 831612841 202994889 404079252 163657507 839869743 136632589 894827040 534100876 908686028 602497100 653841628 420147073 850412967 703525624 810198866 764043969 890423532 512867501 540254299 843217502 869416716 790019031 896993243 511575135 520686804 725169891 876326637 551508306 610989748 641872390 646853147 858126055 865109101 186123366 443194801 625701451 771343119 440850770 701849297 315611125 994810371 351206693 657815920 175745569 297116409 997175387 997292160 778882426 856802898 133536479 803211898 671509474 770968991 951173992 977022679 971820565 984970580 991727734 996104456 879101918 991413751 188027298 425365308 712016224 803475109 962842124 973431408 727890423 803818979 77658345 189474531 127945880 881689915 748966148 961346612 546712507 966680908 665589919 979648485 548011138 696873668 464181647 913084714 835259846 984825973 597439223 860206742 475101859 929258566 652893326 771077542 294910740 947818632 993693228 996277388 477721393 630087993 369182759 968412201 291226390 424777803 464659882 978628431 158509060 396931734 294207133 575544682 637906713 756929119 340490506 408933531 750905348 757546315 261870092 614358299 231283625 644260136 59385261 750650077 752658357 815935914 549708480 752194166 913239497 979580689 957654101 986595031 422354055 434350346 315281319 591871520 211867814 568788703 929901192 933052390 558561624 792623514 765494315 926957621 657995982 749316026 429213865 916395953 954182376 963600606 570847107 671926168 226937290 987189672 330494001 804364749 43236882 194161175 476482739 727447773 63723777 328554002 130077654 645479334 858992381 932347616 829628289 954192634 785450324 787471072 135343985 297231827 975860522 988571577 221654095 858741676 61713517 496011160 813224195 946526990 952078518 968561243 989775406 990562625 914039045 973933350 193611862 535612743 588222539 884570165 317704938 527774925 837351569 973074512 778475150 854656998 89679037 708497592 802890334 861531335 927444671 958056488 154559051 391496801 227901114 258443655 120746309 606516275 338024566 357145256 563452930 574640262 460321127 581706356 599831021 695700013 871358408 972598892 29326247 862590347 933526180 939696529 922204238 976606319 87872450 978723192 30034170 118219938 468932772 495765753 873565496 999286931 65092649 622575815 416924227 742296287 562234383 861090154 230923661 384960479 69332260 720580196 124905879 272557922 671631021 720815603 992409824 998319842 501570891 699533812 109048040 971969590 859111723 883271370 417508573 576892211 913710328 968010316 905968122 954892873 944829379 965714942 346463761 600574061 321898435 760047367 300024825 664782474 795176365 851130354 459315769 646790004 616860606 910047141 256569598 762077703 396140150 737355866 102713600 159753350 494480087 515313114 496498642 784322896 278068925 763520706 489015769 530987216 68058966 548473314 499708283 504493002 407155200 709441126 968556543 982261592 35619746 618835481 48673065 679942180 203072166 890136604 628330027 691015996 637754 142758749 452836735 526715016 199601788 925584450 641420907 997724832 828067129 883122888 420664330 446907591 77673830 293835284 289456907 356324880 258649387 868870119 290082721 495776306 658076416 814341808 802015822 952563785 570925379 854122156 264272629 859258339 792379821 888352790 751868117 827996332 684276910 718001213 832313965 969882667 441669422 613316366 11041015 762482635 938353094 960157586 489412888 553649924 122531907 743094689 896541841 926031449 890059669 964303642 344443339 520964035 70582564 146544371 465335773 964894876 111028745 628779868 222544439 240142947 118859515 472608507 703111481 893579851 3462696 71627604 650208645 924859632 671361100 696376239 570675355 846689484 622693496 657447019 751342579 868005453 652392963 686434947 290948027 955505275 123266307 427503581 550306783 693083977 5292810 82784460 423247735 785334646 142706426 755289478 203560612 521655492 876854219 900104077 915173107 939225022 41298554 483408389 26707639 284366515 664535121 834814175 592738854 724763728 904857885 964573490 687192993 849444602 600202231 665576213 756621589 971888616 972323482 997265313 481446525 795477941 342919053 787261975 233666634 330749288 660928711 678668112 233424696 912666733 64048667 451419014 879955754 957946212 596788397 849608679 576154488 998128279 197149540 755025714 719508947 799424398 964564330 967542816 562567876 731705210 672399131 970703843 881306712 990475532 718608239 967007283 996047347 998411137 68555994 562907079 910834517 993420813 308156928 592418724 112108626 170249993 345036081 869839767 662071262 913733571 637956494 833186096 181309056 980028112 915220949 966485661 99879569 415441266 415215032 426187669 101599378 364880067 958631667 966424030 165125157 722141633 48131091 248471251 191770059 417425399 658994909 690273652 988589936 989226404 288872047 797922148 662657519 965877049 529622428 996825492 301560297 775711176 290808821 754644213 458558348 781462605 552901830 616343958 456786872 628562368 351389088 387143497 790011917 933756929 423114766 577557230 431428191 772584977 715317219 728992705 400073527 567603136 531368724 775453171 311161718 319394431 617350769 823161199 827870982 901326843 426610111 808407576 766110483 942835635 407858398 929409484 580096086 782978993 102350558 280331625 392921511 742543701 201966757 914902986 439568056 742269403 912252109 931708020 533860685 746097780 420445260 990598143 573083779 931816679 779969931 871466375 166224399 295108503 16235990 992086665 510678612 650898642 35065564 48588625 510820359 542608351 948536496 971826504 746020843 825791499 855802994 896664150 299774859 436710705 379162768 970588202 114493785 423004395 647361691 781264586 258314009 779873710 543583939 974174927 553654904 835550192 430855238 905005904 136681979 518772118 328769831 923853748 433782790 672861476 882915372 993505322 140997480 192276694 17769624 338290726 515277006 667635780 272313165 894061755 102974475 550843092 616502491 843737997 458634476 572669185 798097068 832285839 737081810 935223594 329347461 572150070 407030062 949814102 563555831 597189119 730329855 915157512 509500268 767258810 413102393 786723678 83206651 229983463 766750890 776259765 919691592 942061650 976052172 979548636 69897446 986051743 668304082 922187756 266619554 457472305 553289008 596252334 123029104 201409403 134953999 460594608 40280453 189905081 178791065 455497717 60563439 538412388 708599249 767954367 103424790 398299764 922299866 969455317 223520879 943612826 59905976 570166338 894206157 902920613 494043977 748168016 742770984 968296341 296464111 765266981 358768258 373014607 398190243 770700324 720044267 728803594 309259378 329064422 862654860 950871996 387020197 725430168 616174074 835229481 267881745 293865576 423798464 772527612 527677284 697583188 352565382 560470541 461682083 495514847 67149320 528283020 798502075 840025480 505253922 901210843 369196465 374823194 767221346 985392509 527120868 583220128 2303195 39834050 275168870 570021590 539386878 891229416 181152020 449496689 290213979 937329456 775057362 816484245 554025780 973629863 498761339 634631367 8192423 371166137 258808741 651290907 601056686 892749680 982358594 990349294 571559777 966220228 63343291 303841035 304273082 932595146 679976521 686173796 984247889 995929109 559557966 948108223 254450761 511287459 732114694 957875342 324645932 784476994 217758878 520970931 126011257 209519130 837409716 880495790 294968990 569477171 424370101 821062627 606255985 819145856 541040981 915659797 784065748 806215413 967843401 976217680 68254309 396512981 207510817 213621976 922551801 990798299 510497090 693969580 69965076 800781787 845298833 961583242 503510816 652738657 462152833 463074058 793309807 857817596 23033120 360706360 209531779 860545729 517227731 650419955 737796437 884485994 803610415 990970579 58477722 905337878 826453909 861548092 239058427 411739681 774011352 802771699 168477008 229240226 383034110 944360049 237572790 980373759 47092309 135719788 6336162 838177245 291934319 808242596 375326035 440310178 694480277 894510331 607206952 861138627 185094110 577544995 808136275 827047430 233576412 528566855 341919209 476494277 37507779 123532054 667625724 690682695 289397201 371098877 531792613 588485102 388750066 715764023 417578328 543730249 157244372 954485232 92185556 746702553 324639565 460614516 22351030 500648904 538702809 974639718 133382469 935004774 622080238 860284902 389552610 850781299 558844673 984130766 322229002 673150645 958772815 959622214 333416574 593556922 814503544 931514759 838546971 918383259 830826023 944469224 685747163 800552765 517968509 575248906 822409506 968488344 892770839 938127555 601707133 755327911 218352394 771852593 907214458 978713215 117184761 695661116 347390372 572759265 990756191 992376448 88447590 392928659 719761725 769414339 876926687 910467117 922604878 936545139 745510316 906239643 583323261 866490555 311908076 752580759 473346741 827673581 268853100 279783375 967157921 971018868 848171715 955888522 486663966 807137310 984692832 993614331 889913737 922321476 809506981 974865228 159267013 827240102 880383689 941882747 471954491 891243463 462010278 937311089 134148171 152846757 121058468 833107242 238733672 506012458 279905744 664045772 410311014 771849384 877138843 950711250 561947549 642310791 879139705 942673334 984675075 997117621 861029447 987035014 772216243 806517487 907762014 996614708 49584972 581527705 720917736 882049557 580502968 792282959 456718419 540381064 896285916 949824576 779155626 901223166 45578193 800034208 124341083 227993442 658216837 794651351 271840040 802219483 831946705 958403059 653194232 717480898 477890965 621802126 158265519 643093536 779838498 819438093 622466278 977753077 218600709 274654131 639317894 990156007 328636139 340637779 187097455 789332431 756901228 907340315 902066577 971927700 146414911 309969170 524571082 541131492 622103321 942338454 899196262 955452488 64421347 746818882 911057522 951256934 378020624 533137699 961094004 989569635 59373184 847233891 179592780 445793611 559376903 973021086 782289750 866440292 755425911 859203493 849292767 988953089 784021656 931010424 718782256 973930991 479796156 890276653 604832745 752918587 674987202 708461385 711293946 951511293 947654504 978321151 906394408 931653332 55597999 800920843 674911705 737600533 302117673 492700592 129128868 846710765 801836115 969737479 853268565 917367741 891251174 941842104 263010665 763832656 58560768 387289736 391635364 939244266 963540378 980548127 678523742 959101033 130149958 679782436 353064781 752212758 520749727 937436914 920584229 978771980 378918808 775467066 553265212 973864281 238837732 723871863 653579279 935720568 842038994 934595526 849019502 972286622 707512397 771506004 989052927 997771155 687871112 762881150 159525005 674040285 501724524 747850367 228365147 575117148 946952795 957706865 387796027 779810487 242876466 277302379 914513397 981371781 267533548 286922537 543952773 805139863 766478984 977105284 855561909 860898887 451738197 629970698 676630491 973381996 75691695 689541405 390274 726333777 349579935 424034104 841949270 950437500 190194372 750432756 248258113 389634513 870885548 964433669 703921241 845628622 914042329 963421203 453070228 829601454 387199603 442877898 931030038 958342060 311376004 580095032 371577712 905060353 591019567 594022793 998492595 998767397 377948142 626658213 105426039 123150158 311600773 466650422 186993669 231357603 260290139 704077860 12312242 981350824 919122120 923536379 764745091 901721388 313672417 506556021 650102645 826900228 267431452 279025969 297049605 526553257 879391707 897418018 169582561 564404263 803494058 833635247 519707771 610628676 41514978 365463850 604903776 932163599 972797466 986385614 271332513 555927958 397644564 518831760 298471973 363103971 702828095 800332865 704796427 743248916 986539953 995733010 175587764 319351375 601897098 923759263 146706470 719135602 886637205 970238680 672939327 758742040 13798462 772653586 213305038 731314319 385632862 569283370 499318333 580201688 664357271 985971738 227235654 716892578 171994865 663030269 981470491 984850500 669902983 903815994 742650340 992233313 595551640 882120565 859190795 900976164 478210712 645116031 71714450 423436869 492364444 762412396 813331741 831145679 319192940 730663148 275725429 949892795 659166238 739160983 916547860 949523396 858194068 886020250 261715646 600019931 253328645 820771303 77229155 435998920 668091763 773115192 230088372 601629980 510269710 613243512 784844469 955574555 34230521 597726394 721274018 849175615 527915522 810341973 589803193 972264175 148169023 707564479 5693617 442333583 728626331 980103379 563337299 583856731 42650671 135045104 480301935 717109965 214707533 534428753 594267654 689606222 503249459 596950250 414769519 974344941 8581380 957284439 968585736 989341174 643061615 887224672 243946122 688891178 880365518 903597303 597419305 601901499 574361678 816204240 459466493 839293381 539908171 676370255 402237029 633868225 545135794 552199057 971562678 985428166 423279454 618629792 127636231 370722774 231981186 340079943 199100367 485358525 270500445 548149037 910394054 973897924 514201093 627861675 998888154 999381204 706944378 916642223 297747376 407467383 968090420 985938095 844950977 965269414 287892089 830492762 712335827 716506127 607262050 868111684 9658603 400141581 300888901 355602328 783273252 828505107 890038384 932267300 243294731 996469387 912703161 947262930 654427634 685467639 180422451 354211003 195590116 342713136 432219978 658155367 98672582 806705439 415148102 951118224 578208979 921123574 80789285 352682638 345635775 359738011 719552043 992785309 776167259 872817912 773139386 915240387 654599750 823326110 273357165 950254740 438965681 928028083 771259580 797505238 79845151 987711469 226735815 905026700 730838692 851879482 506733638 527582390 707401474 799900390 730835636 827171869 67867489 655372010 470408825 818176612 44368590 381124167 252203441 890337326 40921733 629805707 505452222 689267342 758920939 911226603 128179463 492813072 267798958 897981078 634389627 948163182 909185895 928478703 551177350 651361465 359452772 550492949 915168013 974684556 879635543 906833709 15324077 23078767 43494706 145745853 716736777 758078094 181483236 931663529 907545835 951295588 286761861 834439130 655332092 699320440 851394320 971486579 905206163 922381985 201623065 843595443 244894500 473970318 109489650 827338167 981130463 986765736 679641443 697395926 277245984 627252935 144888911 266280452 538649349 633728376 606378749 853527080 868795833 953824135 128277087 193394418 648599485 848066056 429915943 578723231 363215208 811071440 690040178 741329573 960554 411681500 73643168 582309479 562402888 864292638 611774153 639352663 267693091 297565416 578349242 842556372 558771111 693922820 248770956 680248422 514866532 621942388 563666298 969410655 327823510 606199211 416792341 460208066 674817177 727670846 797051803 841232367 263667369 798671816 297007643 819880193 290261542 906663808 493030536 934394931 141389772 166009098 736941402 972224056 756618970 917912811 931778186 937636646 650652252 871769367 777560591 895610410 211209154 740124068 380503760 757505360 338113586 591254169 347342753 641787676 908059766 985867747 169726286 508820402 283847100 760121812 270620615 489533145 451298887 955442462 256094928 649420399 265701714 502523390 86239786 401295878 89875967 158196848 730535905 990633550 479824896 605382129 195104680 275633810 227977502 614017696 198242863 644208536 37134289 320398190 285467752 411022311 745055936 767764715 93298227 732978183 215481086 566704884 661864547 916200346 817858257 817904577 741271580 844979083 83019869 778263735 682597653 775682709 860936352 877223963 258908777 734317070 821740339 935092602 264104087 705320884 149232815 395693879 275119046 418585600 349219571 533082029 588382728 829121993 62779556 885253500 523740816 855581664 798165596 990293261 257666792 376038489 240742751 688271485 155100906 536328361 995396262 997152993 253197413 690901467 667326898 722245324 574505679 889143449 14756925 352214671 284144232 792394516 400590778 710001696 647158724 856461249 86120182 538329344 694115215 950148420 867207248 993983860 744418292 897530388 302003606 442498674 756789444 905662490 389047167 755986763 443166308 775369357 818734681 960373848 254705506 408749491 108381767 641805498 176712434 713994842 176507087 601259212 364667030 426674444 893238501 968259016 325322415 554917071 415699059 863717218 855482133 938441605 81527901 616573042 804561363 851381488 677623611 772612446 498116486 565321016 280148085 986312811 653444120 942629786 324116037 599620385 704626002 928740603 899992277 953832926 656707600 731881491 69335538 772420812 683553083 810214773 220434266 627775798 831290812 955284166 692674975 797742673 349395515 689218473 327745328 335901091 574706102 861387634 878020894 926352460 35693052 783096918 519707269 799220544 349432828 818494243 645132922 743469019 384892646 648894123 913329093 934871720 168805482 441720524 215332026 559919538 37349230 858262889 6367558 909857493 678326120 874595806 123775860 548945306 133182204 859479688 623971894 811279306 467724680 507279016 201269240 968737487 678594928 753295542 787597656 819063882 341138878 501209160 802134166 813148906 115267592 661318304 342277429 811892350 932611444 995876742 154727977 663390587 877112393 970366903 447482266 860992917 850597868 935443091 237866900 338909041 496695613 632560841 815109870 994666584 383172322 509426219 731604739 733973502 783089500 819651257 861123499 888568880 343629344 766446866 791716823 792046425 420175385 639915101 745691278 794936511 877528907 896531903 607711118 676824064 237337755 335118055 44814098 324931477 767618936 978036008 290176300 943128412 226763411 424392728 47510287 671737255 19084783 943031906 385239797 565320534 3409297 669294323 332310031 403339437 158324533 582453813 446458333 691378174 798431839 880600410 985647158 989122166 566382830 625892934 157726476 245321579 264333972 730557330 33210250 648467698 635572028 644485237 97459434 283573022 784489893 823712920 123799433 533665574 390183194 693251763 687822991 775665623 887849837 908847290 993966315 997846369 333578727 782553240 492224210 881274406 338576362 967904699 730842590 987210067 321858128 322898077 910775810 995542731 328968199 993622757 550443850 612537795 501310842 626242669 650797222 844243835 642102716 793392981 711609766 767321138 102477557 623992240 295574647 552340163 864191446 971504626 745471014 885857521 49673792 136498203 541516715 960827603 927605006 983587989 517200119 735705790 563279542 608323381 183430144 221521824 706310466 771484257 626784609 986155143 317749206 810946003 885634199 940751939 137241469 731840825 415966063 697499961 556191481 601981474 720118375 989476131 476890416 558397087 325706916 371692951 195359779 335462578 22173875 237724296 373227669 716678578 960805258 966535207 179943820 453796149 793324201 999035034 134525121 255059530 594956140 823414348 141748637 801590392 924741849 975299338 727734036 777638531 421176191 571258328 351087207 725643972 357432848 511757543 974084591 980400909 608718761 950529890 689898701 968992328 793643219 968442429 834319942 860212737 61998036 298166299 808461461 893463291 665607480 888539523 129143123 569737228 52684446 583628736 390651113 672070317 67559658 886358859 76684262 870798662 916301647 948271628 738350602 804361141 854543128 937616668 774336344 942397168 162501458 502299375 674689266 807809296 102796464 165822597 637601178 752189227 825034432 898715817 928178503 968328220 53430878 699521187 39281373 416978333 836256674 901616855 48792167 177233936 880016743 973646701 938418790 956977266 979283093 991911825 518074318 842779447 868445826 956250040 752751794 874115308 933911168 960539161 301287556 812779021 326037765 744615265 335232936 335318140 488668181 579939334 47465567 129524519 1789714 31146848 381180684 584522091 13551859 757894936 340245775 898188017 106586560 366079645 775447428 817850006 448456672 810740210 685307854 770220102 487767811 512013087 198228641 734346776 241949983 523507677 28879895 837294208 968709650 987446827 777285901 814952373 959545351 976109769 323139800 829031764 623653879 873281706 746171002 964049865 181767063 740644646 644000480 801750128 123957411 862657725 955785104 965437692 841996241 913617310 564969026 798694724 338318569 763892325 859091637 976339483 532374171 891689925 307690526 785207555 877167798 902433059 930050344 968758217 708034700 869880277 11645412 476660945 337494769 725403349 662338863 675358489 472849280 608793066 954988405 998207648 962959488 982305184 355463676 967089876 518403928 627069679 806707209 933767120 211057651 488131481 766320065 821218479 844221421 985680365 139781997 608102563 188172239 536365954 31660605 762269892 382447253 600730086 577190573 606419503 167837881 968857816 382516693 898833336 927719863 961034792 12127875 795724134 246001556 973644546 837898543 850024985 794648453 926518034 442306424 965689763 726879415 987222827 692968264 871161531 555110355 978693722 888432873 927176741 123242753 949486056 813450676 869505818 436454638 689042167 503120289 662209243 591390717 685387144 865232007 949617550 996941205 998557271 502097177 851501107 289099958 670234042 221282094 254951255 634922525 734220316 534760572 940343045 68353550 387610264 755061930 965832524 433409429 791284703 813805410 857761363 797966556 962589311 501547832 525395770 751640602 761537520 865348846 886526256 191128799 939620491 674922332 709027259 519652231 583972009 256931326 972962738 178622964 788632878 197107350 827603353 235751544 863389889 232980461 263350503 184086097 369186905 647424420 851623782 228905727 961485075 391419442 977115869 830545802 914372357 249577598 682785325 230742178 972876449 260744615 940475145 803678722 972643860 679230114 727467725 519404450 932574932 819036159 901283855 103019064 551209407 14124363 470147647 421256297 770475551 312614464 708153747 472178932 904394038 632268696 701033471 374708758 780152765 137601473 453157868 405846267 746774274 640196300 717661853 986209062 995147307 701071192 792909898 856989360 895732707 988106255 989479014 301222325 501801786 51417255 739412571 932362431 936023301 111072152 641837426 625083092 701320779 782947199 965797109 907003866 909380626 202321664 806448811 185573816 377789794 932810784 998582198 623497799 826822493 795662443 810004630 256820576 971475057 192023866 428104980 429270829 898853087 602543711 628178817 173751333 344102872 422261449 562513866 553569588 971606189 911731509 998214885 58301257 835576898 512204823 977167117 280282115 811898840 434029182 453363040 525191237 783733379 577870296 814400550 932748774 958734169 571056982 892755646 600593200 828670047 362453732 542101324 389450073 791094281 14359962 847734108 294352404 977213977 378680928 601454554 25544625 735314496 435612439 720054549 333710197 833701495 537525174 943959478 777391203 937850478 535507921 955611878 593561299 694870084 351600381 790469742 552510196 636426090 832319972 930408130 829275635 861977349 290857765 917921391 310878357 565313751 534954302 904316155 763789201 820267558 737574375 875597604 992260893 994421665 932117492 987987730 281217122 450835824 771961363 832605205 593242197 865555720 940437367 951195952 618846790 967068086 946658521 947306346 560673519 634079207 417966565 561915011 627568424 921309615 283893082 730782244 132970133 540908857 153337428 857297598 165481716 656889617 364836272 726758983 451854688 719027252 708364755 742517157 105244403 504037537 224413719 858754207 767241549 806199691 17921572 653390361 625750876 703469336 179340283 988696613 709197015 914717345 178017234 526434556 849518802 943271237 885671490 923040366 786242706 853116785 413897095 658064991 345124543 635410616 482737807 765609653 816823263 933327447 758922405 918023635 211001474 589209296 819540138 884712034 678542769 807594195 603301255 706519775 213153595 378828665 899791703 998768372 595675757 874159247 726254955 822987966 813699713 991893075 105074328 648645261 228841884 803944933 710478668 833189187 236767842 261908546 758625068 849635466 881689824 943904957 949702963 978816243 342591875 406392839 705507409 985065261 315463228 935291627 463456078 551066975 546883365 736042540 766019296 984222165 854302532 863910280 694493784 883228512 253336189 576619734 247478262 831004129 973479516 995172865 171457986 546299113 86014292 114887227 889698608 998688633 17546619 875491443 387507206 537501535 553936488 714119525 345336825 555463034 894722864 979757624 578418673 954687653 224902083 880149965 355652145 729398460 848390645 986893981 345563121 984862991 836139386 976413131 985704803 994327987 536002429 789943051 534777390 749609729 506695301 967378943 974910960 996143723 174038469 747241098 321364562 505078081 524851029 564893869 285102101 751290893 635789937 906319454 917971436 949492994 574549374 788407890 725880777 827177961 282164642 860551930 506265081 658950972 323451854 704038672 214552723 271711346 783080508 885713354 324704626 572822598 884210334 937992977 758055051 792768394 176689570 635524669 879024284 892493663 525417137 784999360 707027976 768228119 980419392 998686774 562287062 973687658 208447938 663882950 898784457 981601542 772863745 922357627 205009864 941558376 673500471 801964574 414740089 991390495 159905520 385044683 63255645 342879089 921235631 943441307 512426717 789351778 391853603 865506899 542208331 763923496 897975676 983701332 72803136 945654836 382353243 845662900 235060950 752781969 341064565 557218639 657775416 705221285 464926043 912533101 484040881 679570798 69403033 604053611 260094654 478601131 649841730 689087761 446533538 900526977 922634596 949824829 456184963 763091400 219557990 725621532 550742059 685227232 693364955 936722703 76571649 181338258 685184009 804075924 570387341 871213192 773761854 878743098 528768474 665568666 963597571 979834885 848561202 934149874 2099816 132248823 848986681 928468938 319125831 450245302 920537631 983849484 969287960 994367081 804391619 977127073 532122145 753048753 151957647 918788756 44609895 428534820 700714435 966761467 962490770 970718574 328691621 826583039 52974218 379718729 699211056 928948848 122658898 255776128 956485321 971167288 969641171 991372594 540389018 915134503 62951680 733328348 380454262 940841269 519263896 814433312 776314308 818409097 515925389 690421540 667931625 750623434 301932990 995086799 833793079 921700858 478423778 677684864 825843388 909976489 448400094 824006448 604613409 838240707 984108531 998208981 564805419 956302344 466835357 766303574 293185204 303025751 274330474 560147176 226793043 998107401 272228902 994845273 979783810 982043477 538249023 559153334 73421963 560136603 831036179 856655412 367940 307208751 263702875 481629099 60826746 874298609 137668441 708366015 757348787 863705082 446835538 671082502 571555952 704736197 232863208 680029061 261681325 706649287 551935788 596533119 523189626 532224397 690761788 992766950 602643969 693876240 850621995 853264005 137794415 339448354 409742324 839878968 754319101 976278536 964859586 996269323 700145620 784391446 929618523 975933243 213293395 569225101 870653586 890005151 89356689 532304988 219562943 698078292 493998709 912982209 197000453 945620937 527200158 826356267 526123388 529982952 747465713 809504300 13926656 126022716 817556465 989745583 737671951 840547019 235167639 672505363 187238122 383166480 508333614 595848732 321355190 508519372 570833624 946442197 101913633 219032109 472518852 801239395 942616751 959974884 618689719 854521428 534405687 968474806 189259347 681660158 110606222 312551954 533895993 560971247 721433017 732901346 461394510 819330549 658126899 918655746 921955516 959946817 759724310 841729516 547372261 792167450 483232229 942725840 626818478 800734755 241400269 868122016 607778722 958577118 99938055 542772112 423120758 941104416 863357874 927816847 479724303 588942069 880778718 952558062 99013906 233882929 331068954 713500355 799255004 854924964 374947229 495037017 635406830 669669682 164801161 304773630 985163350 998370279 798071939 869933710 419537632 500041875 842496692 876877819 183842998 245923391 855739370 984825514 805947678 818413402 54007631 795704357 968809722 984868833 912264020 920898094 345069482 731614140 398535528 657044195 314596253 724193148 461939126 832037403 27277213 953003408 809441209 961174562 817768700 905517270 560833826 828022680 629929942 765756458 315053513 844945656 330442330 641487633 812867172 969264336 185314284 841197689 119647982 675530489 890012658 976620127 327661729 772042939 955147815 993047284 155805377 763684064 704984188 808960924 697377536 911070767 520634298 678075675 629223136 945943430 877848178 903330248 8425048 653588124 442691494 786392770 289098866 724454446 309213605 802153321 697833424 783988836 236886397 489909287 683625844 968592283 596952984 877261828 133602022 361930527 477454561 821142311 254652964 664342301 743117598 957519756 504684021 509193854 278250562 996055511 287613708 989639729 14624452 929065128 169448185 651147969 586514534 828009973 100173577 422959391 599446340 803347115 211197556 702451208 579936305 615926772 692641228 877421759 995546374 999115749 480588199 545251520 5505724 503694963 125506971 644897657 643773728 979619839 254931062 608529247 768568238 846507602 11017856 262312703 567412144 962335497 523401104 811499451 188531068 227154765 462794713 572364743 22880076 336116344 973705495 991476044 348719356 732706255 351119982 453484420 755786245 799726006 670429281 892555591 938518460 960495668 379052342 992863276 458983221 593357606 197568461 957697357 87960354 774851360 245197864 628642737 619255727 700839152 221286460 319772587 968816083 970460524 9800170 949944794 415038434 900928480 44799401 588786996 995278069 998500640 858938058 867716756 104301470 691846634 334830365 900982084 22800368 449820224 368329803 485086259 875950776 894246158 660753699 888051846 597533499 824326751 805398869 934092379 901026159 915591059 731739350 782139490 605185748 912125977 716260619 895311548 245713618 445082325 418266796 444485365 948398642 996643576 663219502 865363977 464154510 547038144 752382764 760893557 457164807 602985218 605596201 754744049 489754541 529670956 781006253 815181397 443467467 685771601 961858241 973335565 907333036 931924122 114503843 937829246 275242767 354045311 172419829 929179404 89804551 367857953 318597366 618191407 880891210 989007384 466533714 711363102 134878739 173499593 216141876 601995632 355944351 538033616 658869730 908541121 909645987 931355326 821824688 874812851 366778876 390635887 144919549 812681463 310827323 313893849 599775937 653359537 535901889 779684100 984335352 995814360 196154532 616618825 464506853 497884732 104242148 652757441 27825182 419405179 207817470 960238528 259538852 279558456 707452611 737760564 713981200 959033857 981572408 998947160 966593529 997164168 464735748 907907728 965282754 982970973 704445253 737458033 667089992 998073017 397483173 900827220 616012680 786750045 320870404 558631949 675972671 824186455 557363259 595116104 754343586 794625614 338241912 937290319 561586721 781412717 723319919 897996924 488595562 832084646 801105048 997358991 687007227 840662014 276900735 583925799 165063584 472374262 736894683 845865155 594306597 908285781 852336908 968024267 26868782 191251281 221588366 683703180 88399253 467069816 778600112 806296111 242532421 967819016 60552873 775955228 242691314 588111173 799190916 992655805 905055080 967222609 299897895 577071768 956058529 970050505 633737342 934721603 616863035 750969625 753143943 805453056 118360401 340412896 877950153 912373789 150696783 434046631 194958117 610838277 514438537 847679330 652019020 821086110 871070751 943457585 495135693 886199939 225285008 462544062 990796002 996144752 85036428 825022231 277591476 953516343 732515968 967330566 425568492 791353109 204698108 426547437 684656162 918591311 153612497 750015914 52152553 877362117 866545818 984427695 353433348 562424563 748906845 762137349 552880866 937058899 417248618 732829942 196931710 840297232 799276078 924417272 733402424 840467386 956123429 987704645 284144926 365707708 29600294 828041774 784681060 784730938 3718474 348583057 194620168 441175426 684306593 820804336 455716545 689425807 389580385 491490019 524324535 880248389 771878537 814098916 620601725 779434728 22636819 895389622 760457217 776295282 660276416 736157412 566994020 967996483 372537413 502523761 304408119 377956520 112385478 307475319 846734131 893041350 698074032 882977352 905631625 924619012 315349427 531530674 313146203 795635324 466688887 819978721 176439860 482590760 524746081 852378898 896566255 931241638 969166647 987811971 905714762 921590721 579079594 957412729 378365981 682494786 694958474 700252076 319465164 347055556 983445881 994372082 364664924 688847495 169949411 711122156 329357656 633659190 220702510 986979876 522902438 529841091 136167356 471132244 558655138 868434781 724277283 759048637 845693876 864317572 226144358 435369060 138679412 992648850 126356329 149837901 35125927 749763460 129103518 989404685 785071701 797878155 177545616 295944792 451709913 687226077 155496210 696994044 475600124 532140934 395491194 960660564 300240609 628284106 764116076 977447057 832915201 988894127 863229976 939988092 69455936 219235781 285536332 594798955 187756622 573589043 669589883 884502908 972304342 973883167 230450771 779099532 109807802 366688733 349366877 823597397 300860306 744569534 740897335 855266404 958640743 995788877 76935748 257751739 31176867 262508782 140927515 642722948 60353971 961926759 663675623 804816878 545252511 617051520 15939883 347713371 512525068 594427727 146479108 202007057 861658141 879686513 47663494 856707050 293893383 985366554 6093385 33149419 641761662 760624346 634869320 747472364 889850526 927895595 684784938 881463251 732704903 986594652 155063085 222925122 997024787 998425255 379219691 707124044 114234020 509667703 18074724 61399140 402581287 703644686 319199343 763347386 913562365 950344735 792823182 835678033 50790794 482143604 244668568 895185126 176929873 697433546 167777661 454604713 400728811 771650066 303187168 308550806 895913262 929210482 551250859 709897525 146045329 660800122 972226958 981882554 500891836 761276072 767929246 960746026 996292718 999389601 561157321 717211940 855158110 975099356 809056330 875668691 945606005 982647220 766046414 901606659 911282532 915363470 459558371 469156801 82842880 593586125 447077309 630959770 622916496 713158330 204789074 660909019 925362145 979904933 546944403 697775240 995112941 998822067 245172892 913092450 926415618 928043904 614016812 973603129 5464015 988354526 15180699 704914535 28542000 722384214 732553784 891444915 38385342 404705448 189651341 545986757 587758498 843338188 264988931 932112713 472617174 981851151 727148681 818626962 885884086 958026433 791536924 817744492 918678542 964194522 12928199 521497144 503826209 921174653 116633443 693637971 698916692 764265159 23346025 126703677 106555791 724398845 11505771 756583980 600362899 622231964 480127778 689999545 371685206 952594747 783157042 828028216 879563957 928763297 392452965 622813139 218043518 769322763 677531484 861414547 787110983 817883520 48025951 700180623 839151421 983481149 148793761 956356026 188403511 293727749 617247565 889996905 74534980 456455786 79457709 674960716 115127301 346322328 500599042 818128742 298789547 876753374 453425182 600077534 925168708 935346096 809308945 987693002 407669802 855433953 651934755 985707333 692702694 757296901 211713831 937772017 580575143 733876666 784539625 905463726 606862204 724454411 679882230 852329745 570161853 618798861 364760363 384923536 717164148 857313018 939343437 951213531 220453058 706475621 817236542 948650103 367517857 954876151 831108401 852885741 615050946 817026973 839856919 942333709 552928087 660399215 857213202 997514220 543780244 876848264 361713648 628902694 570637864 602887777 966309350 985702742 20421992 583279115 222751736 673312639 847659048 890871290 490245626 733075361 994661949 996914242 34580637 244900704 455910758 540195164 319474140 765560833 979691756 985048089 706413667 793054336 335233805 431734473 249634618 752126497 183347782 325013078 85302003 341081160 498841509 609617318 507236194 851592420 915573977 916332262 854080960 857597378 55783471 291716244 38775193 319214056 30260421 390329732 261714366 901120863 324098223 660645504 663946153 840118884 526369884 615939872 902937388 930679666 21881153 892883747 497140990 509433975 621706206 866538784 677601761 822056908 854235832 973280059 373683443 587664485 102918609 904289164 633258759 969384085 498225972 510204598 944944428 952192728 663741542 703261747 886009280 890455740 36643070 729754191 658052525 697622458 7261963 465574347 45626914 847407156 557470527 564155123 647518415 925483802 923900230 976447097 968250636 972870840 40291043 67373300 926923562 959495537 57799407 236552175 658329414 671828626 490294743 710610287 523820456 648270789 738212527 773025666 945635809 997935613 303705708 593608900 555561500 700979620 206465412 722995695 537086903 760257005 596271580 660868909 965254617 983757771 709119936 922430462 202827817 250687346 563802584 841011225 231337340 455301456 92473863 961816887 98856418 825872587 133126312 643026335 169800566 677562330 829336795 953890986 12861749 127471542 92046488 499362024 460647387 541442223 978484960 982750461 508053527 879174949 599179809 994492708 264115709 307175280 336920555 742159035 475322888 877112261 518461336 735213512 565404587 910958497 489636160 560151294 912179459 936309330 283307634 468322745 218172969 242917916 715329372 720053627 3983158 216550882 90583079 222609326 712260807 761420534 522606532 611648268 572602036 916503467 127459592 488888073 20826683 356358591 190124895 228490044 719585623 881632470 679681822 696709305 425250632 655042408 764679291 935901695 104590202 854535609 301489491 715546558 342217693 670470344 732759004 941625427 717600723 756589759 738645329 896213091 700123420 957648822 7771679 351458832 7213775 882438022 182298104 298089310 611682949 841592273 356217436 540970983 601464074 956344862 738250331 996301351 134271501 540197931 109401127 415694660 976353892 977861488 403958164 897911325 597423858 731905831 308239436 673529841 69465326 531739284 1349909 435159325 529446599 667130127 432938329 506944216 388698993 639210198 615855069 623363732 287253040 698406696 252715236 486330432 45586486 572249403 645698838 846394021 635422604 863200744 477231885 721116201 481114901 925576690 866737783 873658453 897718079 959881877 341995336 608651311 733588755 805910034 712062897 722957807 939240469 964642387 290739026 362211962 430985103 516147930 193921197 477449454 485764613 935176007 771747954 886952613 12826054 142509736 212084838 464356286 575333299 952333551 848498487 963880148 341392970 991940764 617027480 994178914 838132317 934460869 530601478 825464852 114217252 390970111 105290656 380870838 764015453 803853020 307673339 611151593 858277021 875065604 184050119 653210166 926125445 979717452 405652762 432548051 41478225 79601827 274094424 340245456 625906291 708956223 324893744 589257635 210498617 372954429 909061616 966276109 13226598 505095728 915454679 942833742 274423897 718857272 9321243 428992490 747892796 819845289 566020272 793427289 807505725 904464036 502570160 861730434 619620844 695028679 721122272 897069893 897144415 942091859 985019654 989840949 255517515 415849816 934882857 943242802 337810523 566237070 465087039 681064996 770710356 918031305 294673250 565886128 817923000 994584839 599170786 937951642 125567626 644799651 664267543 944876163 238644631 262689961 826993303 992621913 10234015 982410531 982471161 984410006 897754749 972282973 355745166 568900715 199076443 486138105 223432356 937340937 417412231 737407738 220625481 264695089 711871040 719298690 875827963 991896709 829086375 876056271 324431171 863861264 990030352 990464992 608114934 697324639 577838407 768134996 66670604 367479815 482523490 628225225 506797574 551728296 360666669 843206363 260289392 420584815 846956935 904239003 112404151 539104065 7295967 754185037 583617586 758063228 679042525 907185110 447622510 807043124 828664861 950861846 965842688 988287117 365803549 611299857 492500989 722302614 736203784 851235487 918369914 996855773 490773370 984612121 533377241 963727607 18797665 276862937 432201974 675056294 668220956 902820738 916363458 950898304 966161190 983189970 692753926 982024598 829596127 908013240 790070568 929143201 887248433 983560992 409770952 961529050 855386132 942524967 925702966 997521960 418531964 926548063 326361602 672731478 312640202 454368639 557186407 629421131 5149237 225656558 381995239 929007029 81514368 495659932 519929147 611137734 583506242 590632306 941342395 978233758 830399945 955876401 437682291 870137699 626202536 923034600 163109755 373109637 96980123 196764497 377866387 917794590 992791695 998983455 970447160 986734321 575881749 901076694 572584021 898533725 274394786 462910903 492440025 739827061 80154814 743272655 71617889 269567454 483902848 537283946 715870091 907409348 427627954 566356145 98790800 792287453 118300476 382042474 148012897 512183229 208227198 419208503 282993005 820528892 199161169 905121772 363101895 504722365 648008109 893309067 657962093 777500642 560009751 870080565 922456000 966488377 195396657 327836437 418213127 606857650 788508841 976777779 844712565 880210541 95307761 842795304 694964073 934881587 709202241 769539297 920680194 988222072 956091455 969265824 129989509 437350901 573793830 769533848 812548802 993120480 113925583 515374567 69658746 366195867 15290264 438802098 815202601 927448602 144859812 239351670 597970937 870181468 252328200 811416729 573271440 799886788 765519033 839972238 268483176 273365678 165247870 217362515 688320682 929777383 420217674 890645834 755243482 957068983 69781202 424494784 584862039 704499786 387289964 844443644 378921950 608540892 134150383 218111658 703495783 919237679 156717062 199217459 319828314 781827226 19612921 463733263 707749557 852280350 342516178 821089652 867007637 998396020 495964219 736810124 932931686 977553709 93962593 774939532 73709129 783075618 691591913 701885175 890826144 993514423 414905580 682927107 434185041 891289620 618522623 777005298 465846942 630053093 719289093 797146899 993662113 998679018 941864327 945292660 884482825 907963972 489627248 604287888 884898817 923176171 789370797 902345002 438975965 610382025 496913411 630063540 570508345 897032300 809804263 971757707 602046272 877337885 210392346 750316923 310919931 744452227 836345417 878714302 535963549 886904626 801956108 897208750 737792203 884189620 815803421 828879584 404525522 690201711 513560378 533467960 758988377 790045954 261836507 719589266 101829672 317177250 332887392 595944872 228207300 481761014 896624389 903765261 140215801 685783700 14828369 759873447 730486981 936241261 634844457 818390316 357322415 691167909 519232438 523033949 518606369 895620716 62358580 332292646 489524913 647934110 802670750 811914666 531234043 756522421 108388933 977997844 227713834 930181170 946263010 961471936 137826954 609831086 513107958 747432502 932170210 968090592 564544353 895680172 428052931 556381731 471087055 570667531 861196464 913158737 885360836 987342442 238778754 311605305 281356987 700139903 982602464 990029554 852563765 918334828 107334868 973366454 773518413 865279307 337135244 433619342 196353984 368582233 176001846 841887775 461217657 787925285 12015917 773145583 411899642 660606035 392883664 483851794 620604004 657803554 806804855 900344075 640769015 649962406 544790034 898521135 833457180 876247648 707753766 880890822 166325308 396312671 880910741 959487262 159849244 556493327 488810851 799936425 389410932 963090256 72300968 232231918 234148789 253281537 597456712 945288844 421754478 933039235 126309089 132335156 20329532 234264294 72654969 923187279 436251647 945618240 696707247 894922451 713892519 916968130 416808863 819922720 466727254 692604969 895179865 929504405 534409709 596769895 454116543 851339308 796992136 897202408 625159454 986511940 961264195 976849980 26953443 117711664 723178668 893432339 642264046 915532663 512589889 602277032 481733479 622079510 792011856 807800401 367851883 432433580 856382226 890351497 53458449 555581858 841221803 963580938 934415994 977088500 442520033 826805448 848750373 934978319 411462560 538062299 174349699 618769959 261870980 505722419 163127199 813059784 399818514 482791714 604589652 838113710 796682408 879564761 313276035 498325060 196533677 978720635 672617149 916343685 178105050 373640670 55975697 450468186 240873571 549547269 419157675 814285623 453476977 706550836 994754570 997850097 624843301 789903185 967759067 977908986 909396333 959302128 323245201 674336289 712815114 727606705 417339295 626093800 543108380 688881614 71849842 757913793 606673627 709782967 57216556 680901468 404609030 969606629 135182076 814720722 496979545 926383951 658379512 821987643 48403917 630895853 935090637 982773835 70372584 661596881 762418730 847616399 317976201 803298654 306522739 847758293 983828604 989075534 704841275 877630531 450086962 722197078 87588623 568363141 39920485 876914085 39491288 542984078 209153662 800729390 117184696 706474980 744125370 851931473 137263272 805304522 704687155 779196445 988053796 990420922 725710624 957256370 823568345 919076433 763493841 830753270 727112573 845882383 414397412 472054076 164700685 322862698 457373545 765055044 745700356 908017263 597054974 952055868 780900500 816414447 596264404 823105916 777355110 987714122 805580904 835630034 228520863 819196129 680421466 768837157 767392055 799657126 929664197 975702993 175769029 682975859 362526758 939430246 506998927 856238374 733475816 824114379 889100080 980440991 730805289 812721586 683587336 976507772 653329441 768862001 390109406 965640184 569935701 831640952 124007502 400693176 240985688 546528303 715084928 974557060 923774046 965160800 741511881 754428860 626117616 768179901 318042518 497778400 209454314 735868077 425332334 682629909 694445063 927529052 920129708 997775786 625121836 688421628 834759752 910392910 802755553 997412267 599999852 744354139 339247277 469328886 444654578 701667031 455883008 671416907 895228597 985982046 542498946 873241814 747406707 956814800 333738247 982196528 828920119 876377359 568499449 630398356 213039684 218290966 443310089 719776356 357346275 366017937 738122253 976682187 410023160 569687474 631754371 845291000 149975588 151821335 174944640 566927107 116056952 614493843 334721004 458703872 374822063 946831749 162726513 727292041 355392119 841815776 901702924 939011973 804126609 906159466 163904541 486403961 224392963 390964825 801298611 985200107 955157333 969531842 488512789 534720128 511756060 954988397 874747262 965597340 388113155 778081436 157585811 834732028 277140558 436863004 888885277 891951374 93790535 674778243 382046610 580580829 560942508 896285273 373500185 515762841 841817844 900205266 415678338 626650681 938979976 971593466 88613739 887958488 466007203 795961224 397895624 733169266 551774307 798920044 708406460 743900610 926488076 977225397 155037036 346546975 911331609 961397050 403712563 514538395 996488923 999215964 216257502 559836205 57765986 595922728 744266520 779035803 840556278 910395244 736997766 773456899 784108546 994954898 302056227 676207012 820816617 900064086 979528372 998285324 200136207 462286178 630171755 995998704 854691498 934855909 548212848 605651773 508311908 734153881 616064308 962096109 991959972 998438407 914735578 956727032 355855099 955928918 98770590 942738821 10436113 785269212 885299306 937177148 359557440 881058083 538589952 940723925 443575176 508463666 583853395 656266655 687498800 874909256 865827925 990106345 634713736 911188395 979324832 983148766 389544640 618226092 258464654 672379582 843408706 873447189 70096371 243683843 264791975 927952695 620803487 872453334 491902088 674906675 660182200 933306899 686757513 779629927 351211861 506034879 145103077 787843016 923828837 953292654 988477690 996031687 675206734 688780583 811455623 933099902 535168051 779209757 942263627 995340769 192021440 242088052 472387036 802519889 295095618 862706058 636387516 789734277 412104114 646851031 454869276 588671330 140574604 619254378 707342971 797790025 464702506 598920752 978320535 989807172 166071581 489126657 429393256 691006914 197119235 362916532 902311064 937647369 24792916 346967906 771412191 915207023 324745490 762818545 958310115 991750573 356986645 441357812 817497944 869862336 534025010 645436191 337846462 799366033 175308637 305421624 974350808 976910504 871652875 942692930 816216369 862789247 167380266 192488290 838401015 854036941 853993243 929540913 377432088 857845503 960630559 968487086 686227493 951879895 255935376 456554631 828208776 950824570 555097741 624839532 782504924 841628578 441168518 470346498 363455955 587503136 449842295 564314726 617057368 641507294 838604882 878068620 476679595 797549147 91599280 745930578 75676465 818855847 729466144 934629762 746807876 847352235 310155995 571319835 380775773 997441283 689692822 981902605 835803156 904491396 920704203 986341754 372891344 722916034 177096559 611745562 818012196 844877243 601725310 919528513 295822607 662010362 909278569 927448919 497880632 832656192 341674563 626427220 785115089 987319014 659452398 722383486 279881437 531958412 145675205 406682728 400010995 839904173 36400257 293094132 792205931 992940012 244824492 383286351 639724990 753150107 453364018 795330237 642953779 742742088 872704633 989807940 121194100 622602701 462119464 918829043 844606501 864764162 420742742 707440598 991566001 997669750 174498771 562899375 382330744 793247337 892424621 988295349 316604948 875820368 508564484 836183861 604850561 935187616 42178755 140322235 888600361 907217360 381041564 838427210 54453512 499415273 241447860 795732930 444470398 538973952 505331385 717881755 524161387 812822425 124512377 788873608 816644420 918445448 833856268 858723594 945660186 962913960 865234220 873481582 936006352 987406495 356976750 750302717 292233024 367907704 303210546 460397533 631904788 862724748 264909302 429322756 869124148 939237055 580831610 671197013 506292429 684744377 666486849 687390199 146176706 240298894 123895327 164196817 600066312 725756303 618405758 649771119 685582161 775617597 670743188 871905620 458609360 943229765 497384370 998936181 356685111 472472457 680232234 930505229 546187892 604189981 257794297 313788070 622713924 824674450 158639455 799375245 761905903 893626034 390841281 661566552 272791967 914824753 426113617 812121258 230464028 823891983 496687684 916350258 55295029 699307124 32501215 804926975 94693091 127922984 717492385 719219318 379655917 841933175 890692055 916517385 673383999 794929680 902971177 969981604 708024557 847888309 415727923 493121820 175348518 838627595 377109005 845451977 357268473 681590239 601512418 737246190 271779148 566683650 737819071 907817135 995187706 995901486 755788358 930369729 343988461 353466879 571576091 573432450 593902454 610087660 304110111 496841615 344277279 470391326 297123028 651359180 237090927 415020922 976925044 994700778 876580146 963968896 604392229 763780392 325580807 401804207 988783619 994453634 324381780 452342256 453393640 552624255 608525977 681437228 513772639 685304255 149807017 261528051 487847303 817869544 998212520 998731123 854044231 858712886 2408517 347912527 76027970 341533030 459178500 827760654 577571875 894798492 982304953 984449170 677363812 940296379 969064986 972137042 672793897 698369044 952696134 962340224 268232326 761729477 843346235 991920970 635208847 778688684 291478473 768628654 107035594 339041939 242049063 383549020 555190500 640160163 79025010 146841951 316103259 651691422 893600647 893684091 767442400 832539573 455748684 942794695 792432376 998017418 985204845 986643218 943031805 970709949 127428259 652542708 15500477 820838837 844273531 862334690 274068700 857591682 266075180 681515797 624232709 626917436 393160560 604663033 669265757 718733097 893652408 921561442 950379788 997830146 552082520 603373890 227085828 284991201 192562355 922205134 293401177 547988384 796031475 999227175 758362057 915154253 735482416 959846873 619692005 939694223 338655184 898062399 340216851 889366875 578327527 942790091 709746684 831468389 955081912 986764054 111235445 832764424 826740969 883116267 558888265 804183654 197435324 321071534 885150088 958447386 834130994 890856904 268736025 801685301 356194866 945160564 387268037 406234522 504673123 823566641 801610845 981224801 201408031 210712021 595652825 672685137 596012885 670744497 242077736 583560495 882303865 901622742 907087647 948442398 599659686 886041941 71381389 851315930 230564991 501736238 951887976 975467447 631716309 981444583 235533382 530701540 377858772 534723655 872388145 960036167 38251390 897859061 890463619 970644936 351752546 773452994 842735213 961634718 662429925 777095679 192941913 875667293 767332677 814606605 942488342 959620621 213410120 843654317 35454958 420857958 868188284 992088014 507123149 552395034 671605214 918621379 505664294 526866061 286052832 978078376 755746783 958956929 722707004 980495019 54716234 821662599 306000624 453588328 214593839 450795730 28092165 791711412 951022296 984768136 822780938 980422540 685578711 738621313 899903432 960696574 868201633 882576068 107544499 456059341 17513448 752275016 851803241 916170975 517399299 668820524 8584769 471922162 157724918 486255646 556800829 680178427 439414166 821568312 22614131 697794029 768040153 869319774 492569274 564425139 466957982 750206900 731342774 893719692 206890038 432144483 437531424 764848173 215601791 265750792 45946813 896012257 266712157 508248616 552547764 593138689 688402833 690420336 921906038 947921331 13269947 180590713 905960837 932766773 502185728 818693849 232650956 317717360 537094767 960521323 851160072 955961636 85123546 572458712 617103188 750519617 850049641 907408056 100059060 899635782 106222982 517006807 851936791 967859769 679927627 868697500 315834241 993927907 442932014 698366617 348566685 988210406 818689545 920243851 347201406 630265576 402648097 634606302 184174726 829979465 317790249 521754481 301441444 786611897 156539215 395116553 292735042 664691497 197721316 522240426 31474197 912491589 486254556 662287085 989674126 991619709 993712470 998244912 373308002 588461790 132073405 893883192 45458027 605552947 636841707 782824379 237153932 544063920 496633663 851801628 318155877 858489744 824876529 910601301 898828312 900695467 413511901 643004268 181032396 891509095 516997524 666624140 898026051 933008237 375322569 905343430 197286777 895689964 211517415 905752304 607887011 919245975 803502912 806267356 650567537 959333970 918807062 948402279 939134326 976503992 802052868 990615882 486119525 570619730 860853867 939194181 959936402 984835479 123040800 610271429 140201198 366052517 725497616 760294025 10816637 188960988 383583963 681214147 965331011 994861960 339948885 695133456 504047975 947750952 389814194 900056725 471911515 927328335 343136379 999058158 550660118 716839711 169564950 579619584 236370054 904573626 342767953 712133280 299945696 819499470 737453718 871649289 974839776 980659030 716289768 782215594 240077062 592689769 380035067 491196385 677939922 746845257 521515401 637269371 207602474 788607322 5485931 982618969 438585949 767699831 449250664 935643081 441407958 526544843 693838449 876600726 583194039 827983861 310148835 813596650 23038721 711072949 753278106 994874304 232965260 831968401 110417546 300693844 504433773 739378948 53099237 56057424 77002992 232297519 753240042 960710563 370693446 692863616 394151223 787032213 266872399 819130192 828297317 960257629 173419601 814081154 471449247 561637126 526529077 611454567 623526443 979506120 335924683 400359904 888878323 910366387 32320207 182054665 37575036 646684540 245052153 852484517 964730648 998721919 917300786 984130507 20758601 715241510 119895176 860999629 121365415 836927476 792660828 807918105 720048725 869342848 326148659 873598893 847601907 932934674 197345666 622344072 266859688 405989765 814027826 922445489 151929539 327974775 766244282 884196043 334371890 365336548 903013962 972870676 364228357 419118694 418693550 935020265 675500290 917677031 822363265 890632454 741738760 825388994 716173290 734607506 844890551 960538690 577630597 630410685 99761610 342167193 42788729 484460593 865314915 993239872 447042996 510456255 399244555 928392884 119247636 475910748 660841227 771557074 332213534 987843688 5555374 128407895 297022362 906993580 715983702 939759403 364990066 553644029 593674211 623855954 394587468 905693084 424870054 518473018 929328854 942926793 65345641 967841855 585277117 880400022 17946141 83485877 964452161 986757120 315822394 911324127 536898924 810373042 430320464 682642936 724837347 790168156 268810478 887252511 879412244 974940741 565046510 819504324 726434323 783267960 951490430 987207503 827007565 919142903 1599385 261723564 261113429 779802536 505481682 564694858 240461217 613639350 815597805 939393259 902540283 913108037 504708086 835106326 916483495 983468643 916876972 944723557 826748951 982506713 645502748 867722633 200034773 705829874 511154710 872547480 693702388 787255207 210026895 678828379 798467775 803892661 116786170 752480925 968598287 988371951 946263453 997084669 243718448 781588233 511958609 781920687 24520442 77308765 340565254 346112675 699241215 852867141 424364014 727330382 558636197 576765436 360534688 560045362 319666709 753349632 404223872 499958157 424167889 701192741 236618722 248470326 996653821 999090091 922870107 977365647 369321396 899241638 807782122 966119123 513392613 985920853 732495920 935806921 715595496 979876875 14851399 205196421 565602524 593517836 246854804 400182533 340204985 954680716 941353309 963633106 122315982 185661119 429641308 483808397 59941144 804468363 999162653 999200730 980661559 985620907 234788850 773155610 47103852 489545533 672570603 816994615 169346889 681621278 87276620 727469140 100998397 628217823 332652076 473259821 782663558 957098377 181716805 979200235 249790270 634305152 550937013 567548225 748666726 950764164 930211549 965598994 48601076 800664785 856693957 872380263 304309893 876212482 441860385 487763602 113624568 920917490 348831007 493630291 204586590 282667521 925555703 963520775 728257147 730563513 640029777 961014328 852168313 894043337 926172368 983230259 214146048 587269660 385748340 827356356 160623234 420982283 558231342 606448354 424765611 641253654 598832348 706804965 135873298 616226785 874436427 971752730 230400427 851152689 840251826 962570810 240166303 720496065 222633771 475071500 950525323 960260118 500809692 677328807 152334148 497449362 350005345 525563379 961959561 969141880 945805747 978647600 196826354 597456748 276842286 735020294 736300248 851719330 631387285 783476955 64468999 396695904 626446539 875416734 759515219 836667907 627128862 947761292 244103389 926894169 78693281 854017652 92848533 364901678 672786042 949414479 291900880 514426989 482297434 739044492 520201400 624063830 963010281 980023029 597350889 948668891 354350360 764412216 831214127 847555107 469025386 834417310 258964584 494918162 191463907 319430915 958665111 966323465 502039987 998661042 526793828 619033481 730095860 901748302 635177392 657467531 4654508 525943314 780400992 851424190 46232250 976887224 641075559 680326658 182277164 927950290 579608242 808509321 524926250 682883886 179380004 699336902 978071632 997496655 412825911 555003513 28663389 251414020 274296499 705807335 383196532 963364165 982338417 985676147 974370257 984481619 998311872 999297568 175442930 836940335 967657229 977850612 493218828 977315015 807402137 903656500 734793377 859325750 882811459 998144347 908026997 956854269 887012441 899466739 323296731 715727130 787950747 938897828 917438554 988662530 857561965 942165807 815881191 983473527 760671597 784524735 13541724 141085142 724344212 770148577 524973714 683622811 350994069 994337205 882835434 944178810 836839698 925894252 678327132 860247749 501669221 611534530 908318720 937254275 241862940 535589123 5892101 648363400 247124187 997605731 732986026 876668995 544181460 997209664 971004763 984339047 184983997 793326631 310808557 988116364 221071323 822051756 234345232 718721055 775578442 900684126 900035412 958132945 609025354 657522684 696468463 904359502 436608796 921090803 408734302 442847297 30699379 813493430 739801194 858980006 609451587 803141772 399449669 932624203 63829798 944799640 355371005 838190466 240906627 337616560 865855453 948543263 672595998 957788143 401544150 796540929 155122532 326516609 215984649 576431311 3383566 418283826 229409342 689686048 41576238 743620623 390214308 580025877 525241616 737077663 126444527 666949595 349790146 899023211 221075667 540142889 835611170 974586865 419643009 718319535 927297805 988408470 576209330 877252394 518133937 546481813 145309236 961237400 478453043 757837912 568502800 816290836 412793757 871268173 261517017 746794643 683528662 921199934 665075760 874221279 31497908 865289292 862707593 974373138 599850889 618846640 958090773 971172509 594276151 674069355 42808247 435893880 817779041 835803825 354197915 858030181 66648850 133869603 375285552 722570799 200896942 314004555 796821077 992912995 339458054 602336099 563926779 726047895 64710858 733131012 235790305 470100278 625460034 654490520 854169336 884820788 106963172 139433215 695414872 916798041 44778705 786200350 685451549 889750233 314956344 566166245 804746638 997944121 294069866 842300048 898460739 939588882 159215250 826330113 406201894 925719266 530372784 635928483 565532559 569033775 59026642 723514597 276773231 780458886 222771786 603957101 633417820 825049037 126517314 667573677 533609761 663867170 328804651 821839212 601212056 979427905 152437923 810351457 225660132 901245819 181401209 609366091 995069609 997639713 843451052 927408104 364603854 920976477 935249706 945594277 672862997 880953195 513108187 977445447 516413962 518465069 408991151 663774611 681042098 920008328 297891629 694326155 322791306 337494876 160059507 881308452 744589957 903882786 529528020 591166617 963865413 980604644 442452542 803029002 562331296 975455003 343729922 729257316 491542274 730555287 363593611 962914450 85417762 972840776 672932265 973319493 45582570 618667649 406430606 586285033 362864316 457214671 72698523 508763569 506094906 822759520 30386733 304168102 701165222 735343746 364169819 804329981 902073247 964451536 321493452 534822915 33183867 389228765 355358940 967200045 668253216 911906491 37812672 137146106 889183197 890414222 596994538 850908816 448168553 928340107 920262583 999002986 846543008 916705954 82910432 655332151 818397999 903081336 956152104 983973301 147301555 247889208 766991718 777827671 952516749 970824513 436429005 696986476 282033149 700995171 410521808 767582163 209327315 686971380 663353598 991638594 675009784 932685622 227432482 332865018 846787504 912237837 410477650 998857066 86314545 180914169 333596872 632234314 2979418 259215824 297528405 329970178 491874768 932686525 525775282 735734672 761503809 970119784 599538040 880713950 704801113 963462886 362479004 779355589 825259716 873771349 406101474 694013483 124130569 269414809 31593572 864993451 485164445 542273149 752384302 886545108 687069768 898454206 378273405 639412839 793367274 934126066 879950506 915337527 380472493 829278286 251308529 860365778 559708426 958492883 593760972 984410884 732549906 987561143 130847452 707823929 115934797 541012583 715598482 915862487 794356975 807441086 243792382 855370699 116701725 997154999 376452135 439879455 106904952 551243238 87933083 468183251 755495463 903806115 679647668 755335092 405422113 943874533 387467418 706429626 511025912 797405290 813489588 843081989 899056293 963150196 82819458 507308072 157784402 756405922 6741453 332649277 847727303 849399350 500427252 556396967 295222269 922519117 133475922 787753326 302005186 806983995 679651834 812406769 407693025 490724735 763688370 923330654 280133631 463981226 916295252 953540437 63141469 824133492 155740969 406190002 339765426 444962031 57908121 537901802 507531094 827946199 469809361 576369439 387474877 963536554 548813290 728723145 94377481 686189887 780450145 780634990 140856061 658645338 792210574 929559469 465272568 487656200 913072996 934885915 932870045 953159389 888380683 995280487 84767491 539663156 297751289 498641415 562021541 748242046 826803865 948593243 12332101 789306366 336333815 601819058 763101671 928522320 956890368 967842926 647280453 855803499 90760276 869724255 515952667 883839316 978504073 983245882 260911686 439322016 222903268 312370287 820779331 893883113 174280833 682127704 635820103 793862804 924444269 924807494 856704350 876904440 9307672 138367673 293864406 465385666 594944184 956650278 273631843 846120585 996191367 998672598 769489046 963430641 902844589 933191551 995282053 998949379 260408558 880536932 728306302 995702771 523856783 875737202 748694695 825622755 754893834 993601301 428453600 747429089 659118984 942152107 394681715 445067070 760321232 879496390 118323572 151002547 121709017 301996398 166768862 311289746 381317173 792208585 884272038 908695757 465067995 776451375 94949904 336401003 408509858 776051349 477715785 584762959 200390543 813791313 217275670 245181087 899253098 960011078 333073222 982362389 391313477 512772755 534911319 984600849 450140507 680288798 19223225 970189305 474461581 802001605 619917510 919847107 643306216 716135199 16882384 910928338 821621992 981517482 384663340 959537538 505716812 785108696 480406299 865319132 876657014 997404150 16413623 291609879 954442035 974874961 806516450 843941714 835697140 864567923 112844034 504293269 96217334 216527118 636531972 702130645 497534269 588661874 417763809 874273884 113483979 311306469 919064985 954646663 702642453 993342403 930250731 974793430 772627224 855429486 503934399 829815935 386191196 901978105 829458283 852268968 585680962 670235990 179659738 647565824 500150593 709651693 992609041 999258600 848453682 948887797 338429784 886054281 214177979 815446562 627304693 904490913 517688493 757191903 361656569 680462130 87861409 392570511 287099609 734488461 974372954 993628736 933050998 995796944 802143372 985838128 482341507 982924970 953871644 989988747 977482803 983677603 67110109 411965391 550790415 742531322 880699356 999039754 790964221 895752198 291864717 867726073 414826039 462898558 801261761 977945774 196801866 948260923 671698616 743399722 532156402 618997788 522159892 759625155 424728913 784906900 795617390 836204328 787604077 947068654 320832594 323723806 224158168 692036581 925913642 977659780 480440670 638071835 134060313 500048135 111418331 199220435 679402905 729049182 38957056 987710599 360936732 992217931 387300284 578682192 476919319 830630172 559274399 847210578 200094369 595600936 508336070 940215779 642169298 838046408 432080378 914578879 187330488 493478790 730567825 867266586 689760679 956489919 42385131 260035294 54661628 576480899 169682435 773230568 317857242 896740193 582185248 763916281 351260568 593815637 544710146 664891432 524646951 838127608 871515847 958878656 722443149 863857642 316682681 981007361 895978665 908576241 731247587 981964124 624495530 905234586 852545266 969120909 451317553 617969747 901977980 912938874 443176996 522767510 329170682 536933645 987270277 997911938 826317767 910131913 850240797 891744704 738322958 823727550 179463711 986892600 853750136 884607938 633854106 988445500 91666480 622988550 819559098 892370527 188429248 911236781 389026449 822247279 671871516 953835932 156800196 270497864 476836322 508638112 705663637 919928027 586904010 984484855 294294321 804993868 160639968 690165867 933479749 936428850 745152469 910880211 703933025 896803148 773833405 916813461 652992350 972831822 134892224 272428639 618928207 824405082 610853555 908249628 833595271 839494618 150984333 320273244 811206332 980951353 5047587 706859174 836012802 920447582 727863000 797833919 341542185 886676819 508018650 559006728 837483534 948201901 763727465 996269124 376081501 642553256 362980386 996253984 995988035 998837698 538271226 660592521 573132399 961329273 271936179 457780244 380328225 714584984 83192366 775399072 715598521 923761393 244381019 735858496 782200904 805702742 314169428 590469515 627340456 642488886 758373146 963946158 975599621 981298219 62055143 749881024 232485934 908216382 918297850 970063667 275205381 390369416 324770350 353048258 105164414 921467372 71166219 342848969 241738350 284340924 543779044 562746242 595367957 841645947 627095038 943802219 40398605 859412329 287475279 948068137 526209897 775318141 844819645 936626704 673637644 861935848 694631932 940174654 297681482 704035281 905819149 984206810 700248393 711233443 390951392 440387700 673164164 832520039 51434474 868928109 358566245 494540641 376341589 755181170 102613273 467947281 572770745 947215746 900332491 912608112 644066076 745029266 348344201 693973062 853279503 868382870 321566315 985859255 442188965 952579960 345692779 632504849 369679741 443237419 456076354 651543125 224862373 504520610 697380552 735711706 457184977 900526660 397151112 678948083 267796308 501380826 502403195 645422441 491514208 861143918 766635650 862887496 806471134 990729809 628269134 874606548 852138648 947745234 899230708 908990869 441633691 684835449 752051416 903954635 798952780 959640501 631701486 705944314 867455760 985091198 887783865 920403134 499924716 736430972 456726780 899618692 778498657 963674705 99232526 518717202 647252241 658626904 888638691 937196587 829097036 842950074 176021550 231509760 154645423 286671646 332245084 704634576 805098798 898167226 385506022 838472667 851460976 914903281 405534169 620149430 9051489 486833794 721395194 947268690 539549416 734249281 943864943 989506364 617858273 739210437 392041769 762802674 739701908 968365080 11407247 309927822 232356884 912581057 872247018 980534524 746513309 991257406 335612132 852515337 81652995 588586419 804656941 850450296 269763051 987860172 295965330 578585475 770958472 797010016 571576656 869430609 816617227 853008997 715959734 987111060 163989971 265322200 826540110 858799846 866178835 973570354 768930482 771038192 339117811 553004643 441684837 916662610 306048505 858354590 703961586 793859872 910059468 927072698 511032579 896332946 166954622 977497781 99835980 818068116 415972862 723952861 74777617 912848412 921458962 954632928 867296130 917677520 597772041 603036257 89606066 430935121 837880066 935841098 257242023 779642673 458415588 681722229 711808906 961704697 466851892 638771373 854792221 856827057 180659406 331283059 800959396 805044736 301107547 781440320 273484362 285188244 29996306 707947535 276121393 642886769 428489244 493345955 133272130 172685155 269151496 615501946 921228248 992514704 810727221 897050036 155891931 280578504 925139802 979421561 217580487 346847815 813121111 913895001 627718202 920125549 706273118 728499015 888049259 956635760 975568187 995127725 818425197 856338801 409810140 956512295 959981446 977940377 165947659 485078452 170121900 349300042 624849970 698192223 391069262 962329224 493090278 679893489 951899343 983122682 282514642 939232609 915116560 976760007 973508885 989956856 864899517 932861935 433636978 939539375 617932069 680092245 496063156 557382930 302400375 436392400 900812037 914090096 74712404 843902659 288083781 655980200 952471070 953717028 473528245 523214698 970088900 973914454 903497155 926943675 820792172 881215181 953595680 978569458 595438181 665116754 684806314 691842379 31626746 454201869 952257475 986589673 982335415 989311466 339660238 760005194 412819748 702973373 549020361 585314828 620535690 802007226 898317703 934236461 77597761 781803615 905716713 969675358 798341176 965863807 310334492 459835193 365249004 668437854 994488199 996489679 63910683 433543577 281859513 371171922 708820683 865873763 310240913 776879733 425064097 838205811 328017375 550048569 608141006 847123819 408818786 530881974 156855806 599528531 276333387 304993029 106275754 659513304 596355503 704136496 217123007 852676072 789191888 868706763 794577920 818377115 393740007 795039383 646088 423534906 449209726 893278420 527206510 734599341 371683108 386955012 621874894 887255178 225233569 678428273 260842329 306058841 791034323 824632116 235226545 337072085 848586058 982561439 532690174 860303315 128532119 801324854 491213368 762920794 799594008 982554981 945195732 996184168 697690203 938342745 50816088 329029380 161416953 348591138 135993648 561085543 630164951 903505858 264709732 748074135 139515036 400089038 877392990 948535949 727759945 983318595 564918882 874179109 6071059 608607199 561300512 964534747 577214399 662714371 350988922 798308343 649594131 827059945 648478041 795951705 85044261 290168847 782392103 799857034 186961861 749261826 579464295 918880203 835762516 902245578 250604706 453854123 33263087 93981291 734873818 961078069 432072536 972351067 39366593 674741394 284337795 802938170 222170799 500298120 542720852 987733025 564316785 860161030 385239988 607648125 880367764 910126348 474327877 794782205 720920919 916936560 226778298 335557300 73202856 918103937 594258025 686268470 588140631 689766432 408578382 751471793 556940163 883325571 706584992 837798360 320845227 621613615 329557357 813402532 36109516 940514584 397524475 420471867 605517951 916073548 916538612 943017306 437187585 933444289 477546364 805177838 551163378 729606140 539865817 628280273 846932226 914643156 587765278 972567787 903327524 919031268 946475056 977580306 115268075 453381883 348551995 963284951 202176187 203883667 291851809 913480051 623553253 848573599 844659111 860074060 443143359 551390951 596577463 884263379 317467579 563496886 330249928 693775750 85302607 122593095 209557860 726935045 208257864 593357843 722816225 896291345 942616487 946201375 923890266 956970197 20902372 413020016 591978825 693402094 726532925 780879413 660258560 692288488 323676951 541615965 375350556 814578827 719936248 765697740 442628946 641896156 101098212 201912613 810132206 824084497 614660345 897045016 236584626 614491456 931525455 951607140 241075952 837627327 80577078 129108801 684029799 879776009 162972567 900819267 598821230 755551392 904341444 950777675 50822722 296101427 181945701 526194753 600472580 917729242 907294225 959544436 40502217 188208726 719827723 765070426 811262109 928089737 868341002 904106170 14197729 561825552 770463963 957717744 624817269 928195884 305596081 312863308 935542814 952242437 514973648 857468804 53340937 83162794 275428677 996248108 192268129 508088212 540468087 652082605 50356896 568231334 776586616 781295643 385245817 586771481 488398264 525161563 686712494 691012274 143289206 843931349 643786754 902496182 363638749 385355752 59153676 752485026 822506934 943415549 432598103 541180864 734219059 764573360 893231114 973113601 934400940 972184240 846129120 887234266 951591828 954216202 35391125 778400125 169870143 198138631 845712861 976760105 85852032 485347241 776654060 961993183 676100041 726074127 908028280 921153403 483595859 845156460 148476503 658748818 908696088 964237028 505218112 749202944 86312212 457776532 152273472 853214780 494587121 933383147 386668819 548313462 463006522 482694921 48672274 959648605 412415167 751874489 758196197 952098883 485361624 701787301 543831791 787054582 395952705 533434642 626015815 819654945 312867512 445007025 225803701 247691306 284780530 728182031 971471270 988060451 372330279 937870811 554932346 845786171 296203937 398925229 105204011 496034981 807390285 989595366 721504887 916021020 538070996 843145635 110239281 206004333 44802646 631434967 646504696 811682348 145838768 847977088 528879675 637341884 128780797 236498128 852726974 888137115 385497866 939440897 524294089 554083852 708553802 793250952 652500088 979955778 761665481 882817076 644772545 956418528 348460672 825391302 705674713 822859471 414107550 959196847 217803384 783037688 889947830 892720610 964559069 995253893 799603297 936823389 75067064 941221951 963365377 970991934 878373004 924460546 25807492 672191160 161861336 950802348 268596113 541534152 383073528 870698755 607735526 727372036 740506521 883140628 677933753 998285715 488309797 780264154 678240333 712749778 670358771 773256778 763900066 954761245 384182096 956413652 938994258 993751208 796490898 869608692 436113707 682706145 157543568 357599319 681685525 770684091 403225921 628715710 215161908 797285096 293967682 598328779 682500496 755187126 145443753 764224273 852843070 866089127 445695729 449500297 446509873 587783252 313839831 866684351 545165779 849640465 430812309 993420481 95464890 304137767 606290346 874259260 84796915 944753493 58865936 706781284 818385959 926078401 484462442 912261519 410063525 611748290 684407750 823237818 634672962 668473105 98555906 221368337 707925743 901302323 718364290 963308894 452952860 515211238 712084124 926956433 615161916 745454028 419535328 624757956 989120112 994033201 949311239 988354223 575404721 671156530 775873730 811423805 496755082 994538326 876017847 950113124 265473448 846969572 365088969 542228340 718419022 759239471 729295791 828018550 834490326 912808462 889622985 893045066 563735792 619502819 672476284 974799448 657353972 869441184 40171061 45365657 350223916 841312399 765677289 932219649 713140346 971252822 271996025 941868328 525598417 554626412 922183791 929589668 668314193 885678035 430140010 476884086 619648910 991050231 758008773 803128659 681156986 703754285 443344435 876538281 924318535 934064586 888868527 990023679 860946131 883724339 729793251 869949802 389201145 540097391 75629316 964141556 801124459 964710721 980360691 981218542 25111723 91418421 68230445 443148614 351961398 485180859 672160027 921685728 178374395 532879734 542883244 863743535 120126822 692071478 47842410 834976032 944918523 982181546 925830591 947975532 984935952 991872356 211239774 297826012 484706927 926302798 216039758 281893870 384195259 765866278 954002553 995230108 487480397 695185709 153872315 589297928 144695290 637895699 359223731 566150177 750989093 867943534 928465546 962730360 877862217 968071076 512948669 882892489 769050577 923925896 494199518 663940568 854651263 937436080 386249770 965073804 136055449 876748537 59736279 314209871 410732699 908352568 157413980 531399380 746352068 854532653 319120235 625125467 408627415 747116138 921657024 974376306 462067595 529914440 389828710 940529995 276630697 583146000 316776750 549905541 991018841 994250853 843554167 958524045 587247544 859647415 748428198 860877824 163612721 822786270 408995443 520745823 687409758 696718573 882427703 966856911 498625429 569534842 341069160 516643348 596257246 765703253 459337634 923389836 549529905 942430039 567455360 592645842 494279959 935988191 237952197 757342455 487184721 933805724 188743905 987497282 927102105 960123197 768065205 943430007 207734648 754420960 568888543 878928170 394045123 753146932 711030405 876669868 476687503 853562349 391717500 904345955 170892341 986877011 287036594 758727738 296404245 528375225 218948889 291609802 272832268 824154800 677038765 892005902 685753577 695653293 261984749 612963023 625975388 956547735 822209830 989689625 69880285 777697238 954533752 960904167 366377211 649642919 727401199 820627477 89920562 95630970 828327607 970648088 737372079 891332393 315253905 458369380 305957070 627623647 576741591 922680854 711786624 741932414 258877240 373031974 233198449 938843753 469331587 978422395 711416149 772643554 263274540 979473863 530356138 925972063 895762955 963573217 236910952 586920934 94886308 406565297 464630313 867203339 982311739 995370120 854916813 916423210 728417307 889624276 205418137 395241300 93079567 276876579 71965603 470614995 773786529 935824244 860975675 911430798 580279973 658909411 187902007 292523959 642809537 908584167 316690161 788424389 670751237 990951149 880449121 929589234 694728145 879260581 879154997 904853178 145811291 696735092 223925069 468526305 366341979 385195997 965177157 999346524 400105093 580735975 74713667 194050085 415459873 537369319 343456803 832976967 950351414 990861877 656590199 929412653 922182295 999079952 139071834 147750222 122546922 390534609 957006107 961384100 678179123 749063971 498742636 860743711 888794055 974892518 312950727 658971276 775249007 935650516 383113330 389747400 761472679 900124446 31271366 258331960 7084452 523665225 857710404 980836681 152522528 753521483 300221804 590370230 162493087 192755638 216232293 982339218 708983486 737288558 50447726 343161585 843311701 977233983 71089415 629481779 841240272 933269178 834966910 952098046 661750923 812045028 468776333 511068947 953374285 982773573 647611179 794500864 995892336 996537256 169805666 764599134 70036586 674242142 724650321 820399660 218111075 463393106 54414181 323290170 801290116 934235516 704839829 827963169 433538789 964454251 242295507 866738569 647678049 862684539 257783134 297906219 376734094 591577752 294699635 883266394 249278716 581014527 390373701 869069115 244341071 775412836 109831819 294276759 868486087 890005205 547292294 697169697 645628119 963825316 534245040 793748594 268483373 995775452 862927868 983438785 962335912 971490324 61797722 585616830 153469864 395543095 834357460 953397634 131664270 213705838 401617878 846929805 498732101 672026205 478835972 736400570 105613394 388940564 949277677 949786005 473336361 943441764 367775576 781026504 229831630 500552811 837491185 838686622 27870286 747528399 550537482 842157247 701395426 954775554 673381014 760250371 977022980 985918286 604035502 849316542 180657859 224845779 180561198 610554860 130246662 846870858 840745883 929450359 183710863 352432621 27301876 578315276 208483511 390946999 695997426 813987323 363501 891345900 408098859 845833632 543068969 860604052 325010020 614179358 343970998 400956353 433752783 971246337 548557156 700763336 248666860 594886354 961304000 990735607 620099542 817530422 26830502 346053239 543825164 922531216 391982493 693510607 300227706 923981130 370392339 462160352 105528252 166175271 257326781 362698493 743544902 856479066 406234890 588578916 728364615 942026264 453491629 632083793 608659087 966515593 359184002 943516586 220469737 653887895 71148986 88505635 357926521 689759145 220043296 542976440 968886305 982480404 212216414 738543528 183537124 557952502 192192911 771627545 472641903 678371431 127401720 880826850 730469125 908137503 167486719 375455223 879205264 933154480 238232878 319924979 417360465 438492283 371260104 590658131 697250640 712312021 701817237 894534171 362988593 493884027 573382150 716340376 992323068 992788075 615461927 998252292 449644395 802342597 498810659 639680029 755520680 989250880 603062021 704999805 734702774 938414619 917205974 967562976 456274914 674961880 673995375 912677028 285863811 293345232 707099432 791173375 430580864 868504564 454148235 476542746 17786602 340689495 269759604 979561096 275254136 866248272 115771252 412721084 117614772 902955799 735043202 972771773 593269521 966156669 293989422 294692944 975147225 987039707 609844275 767369839 196082572 711895006 553037092 764901337 39148488 264495479 86768404 793074394 564749147 892308332 270545004 536501509 249186020 548276365 638041408 726587464 695045594 828866940 958992477 983713481 746164416 959225219 21341197 675292746 635649424 887290993 206983193 452746239 947033280 949484016 741831859 948025852 937426407 952197419 995290813 998356352 8487413 168426723 184252282 849099374 156276767 404158601 188287492 304943950 558195105 947749876 171169404 942657884 685112738 839294681 216695981 858835859 340905898 730592168 100048463 103058664 602705835 782811651 402664763 658817037 619710983 861218536 205279754 795047111 927618277 987493154 645764344 657971970 979612891 997541950 874976035 960042573 822115771 852571351 468949748 495654058 75731416 289583850 776068920 780578232 717641396 840342549 188293430 895027258 68337570 539565045 228560705 316570645 353093719 694138243 544874017 656856586 862841688 976312469 553997427 589837848 702402487 904733541 282896753 922367860 28180136 673714561 337278374 384376874 948986401 959729348 184222816 857364535 853551416 910419666 990534492 996738174 462085691 663217729 539808494 604287714 896419226 967247489 375264959 436994434 217212021 792215293 439162028 992566035 238009899 608544075 563565239 590853669 348877781 467898032 664565439 774360278 486950879 708146098 349191709 924966090 984169398 986881894 302898412 761032626 873076484 937096232 29943382 245019476 639891088 773018563 981152334 989999701 628419855 815752850 360010006 403158076 900550610 939317495 461972099 908427939 622623721 835786426 39347947 258791388 808045787 979316850 151522676 692227417 872514173 947902577 967868994 991494632 657640116 960282740 874630372 877915585 874427783 880670717 477515008 648180929 353103418 637411676 204287530 260729845 43207000 521313235 481039692 624815375 240494965 605036078 647298369 765282649 440681258 495284359 700849776 709712047 153646495 756304312 671895134 834990257 547985540 963209115 993041140 993588144 614167629 820795387 12542536 909435529 421647406 468456862 526144162 594830348 790565975 795902281 112689447 551348046 231195260 819887103 664302805 963889664 585258878 916862812 72224612 194188890 862551251 878407776 268049636 278445789 870587924 948129120 568643757 855884626 291535634 759671476 668200325 971601351 971996205 983912960 7837010 279395179 71852504 923881514 133015540 629788129 709283579 911121311 282906265 766671665 521455022 579119133 361393212 986242541 226955324 902828417 917407807 946903134 217463441 628231695 973849258 993914177 675632846 742334052 722049317 984054544 56768703 151961035 482620553 748413110 577649882 728066980 290183900 389245659 799257771 961766985 168552833 415827457 579240126 754813575 402681491 745734807 839438331 980508050 460301238 767605180 533234198 660903678 804500389 966860037 439733319 746204057 940073273 961967350 634957693 886417474 408599916 531359885 435411808 642824138 822533424 952814198 767297482 954054407 284176259 468536052 514649934 854962511 106659992 133405596 40530934 730612992 742503961 964057229 677352922 732993459 991589665 994809498 924369495 984640892 23269108 539743092 816676339 995432305 453623816 840026840 242364661 970564478 903914665 905170580 736449430 810953573 689699278 906264100 906626926 981461195 200440689 857704825 63118825 549632737 123911689 995530477 131878988 979433666 515617231 895273293 616083584 776268227 289451733 400094335 397945330 853873380 223067065 552952571 653906854 795249374 86528989 670683035 488026744 994683043 777076863 835163383 237001976 729645294 826566358 849827972 104227264 736625202 263096801 818869840 149746180 223810316 586901974 709637668 55766955 531440338 712203001 807479779 218883610 421204114 95579352 487807866 698278351 840512220 110773224 872274624 972104130 986930760 926625122 993047251 274072394 345513946 763833128 980574672 182894409 473017753 256440301 914402517 318520355 556785988 408181087 488473802 879239328 933946880 390160922 412089018 382199057 674977352 746917176 948836099 893418354 906980975 74490436 517631738 83455166 313388367 937279808 975524766 222838474 949172823 975832395 986217593 541096646 556067063 11290510 367950774 880697227 883355758 594501200 616054407 520426116 850163221 700168553 955707045 940935262 987268967 661562483 927981898 579583753 983737384 57781397 533043568 253552101 406012733 157053882 527181300 437699409 758632576 766696207 782815340 124703712 826341227 685994687 758957202 140628374 183383129 421991431 955951512 814108099 995513729 709888141 888742771 787592666 804332438 104341838 352159973 898906087 900253912 194595679 425969172 526638260 758595453 222732048 697027778 338009255 360460217 570915578 602951518 833164905 874939932 599121540 884427377 248286220 383391911 647823316 687642533 258072842 480384344 72468378 190796639 366939581 660978933 580312165 683549090 40882949 894831771 472627065 828941010 727054152 881005669 194591241 506237281 313938108 553128152 527725903 593998549 977336499 997196588 245934055 944148674 905084902 932822837 540585191 574851847 781378180 809408621 30750625 478150775 689066874 877699923 590412960 688787267 872635167 873653681 227610477 409231470 516116880 888680176 661764599 817161874 477277858 507498522 795041536 990574370 124525141 387084453 356415068 592404106 695655637 722020658 530571369 751650119 246241827 621646253 177605668 178426602 241143660 717969182 205372309 393796286 144324843 462152524 105567370 590276826 998234727 999195998 269945834 404267734 538801666 819726547 821666018 922817202 322028381 434528439 333502066 381853868 591916797 866058318 488872277 511383220 300842072 545250603 145876093 644459196 748334678 802138230 498015530 765722809 841851180 882658974 47906316 348938846 850511682 876216459 553043567 731767227 153917733 565181142 394214471 565661926 636975288 727509062 269181273 686027034 95221650 97456645 462146494 586969933 611530094 743628420 333500618 400808895 981161801 996734521 675367390 868060027 827500045 908303506 924890720 934878798 854825585 970173240 990855763 998163028 849745755 877386398 137855618 784413493 970158146 997429562 243054229 714502124 188038458 814188748 167081150 528621452 944336339 949742447 971245361 975055398 734071944 879724239 379904000 674923449 519214526 639991918 183930727 391698315 591120319 804688611 934615983 958222625 395048435 978831176 306226405 339184577 608370466 916221317 570361173 646769011 816786493 992505455 415926909 978959099 712469762 832655078 192560191 294151966 26676816 673444826 765355333 803302661 38022113 980223550 963672560 997302819 452132988 790552396 197387717 611083622 131495046 992625231 926473024 941754131 442990622 720703835 251197972 535641285 287216663 907282204 697374307 920945972 900215445 993031016 209962179 876220594 549489361 819891264 24644106 121247640 269347715 293897967 644024887 717948680 716681634 963088804 123562376 437807868 689040279 734940836 330882868 606707097 935124578 950147858 253797762 676520739 857851783 962979206 974581265 986982563 718197256 854395835 247510204 403887284 254922708 397712539 123918846 982238899 291453767 978412826 155193782 363032191 672173661 770464692 955849438 957355800 810320238 958182984 933072957 934904678 927923814 961084753 934217294 952898897 387706760 958732156 634239597 793032219 631397282 750360381 899678893 916241772 906881203 935037005 36187342 754267851 934099360 978473726 487718376 814337516 958286764 958818716 407034377 492363449 390499888 676283530 311944181 525788154 549969115 801930416 238230485 919234575 782309421 847383879 201458663 496257066 636589981 952085515 39296858 826435542 905631834 937436766 263648595 939484123 505722103 840539705 633911597 970207134 319481194 459635242 542276406 905419320 230828851 347233361 874979762 886160278 820760886 854092310 84549668 378632587 819753435 865508873 637248879 744262051 592116281 943976976 782703575 883804366 195378576 926578665 435005259 556943137 271350158 803613802 940155104 971846016 795896599 985361455 11139588 365481075 607960265 621920797 691275672 727015457 609682853 716837278 722057719 830943487 653385957 933730489 73672518 166816870 720777734 804152588 381334270 556505127 947414719 980014533 311661534 715829475 688122899 767631409 958692790 965421473 698851619 885993420 579756402 634021762 316836184 524216258 403649158 678521635 900205855 965643655 261271136 451809449 629585244 778930416 102427911 739331122 588692645 797235732 383013501 708399889 119001200 743046247 133888291 937643997 584076356 799390508 907729109 954081343 931513200 982712630 54247840 786663536 153856816 589985711 503325929 793729333 760838030 841751681 995958804 997977714 94668993 185339238 263017854 612450454 651022457 916611690 545302163 554500919 398681006 863813405 843301068 915317557 178127686 595922378 504489348 863817141 601909120 834070913 152253412 933109597 520644505 582429223 981085560 987375169 104976324 150302358 90003491 962353749 872283108 934370801 680908304 697836828 171034634 786462638 417481988 581557377 506321875 690728423 285569903 768512517 828422450 924175151 212851717 287729658 697556059 805173646 390070863 554691882 417876494 504743225 992573539 992683396 611259791 838854497 261825165 749238646 28919427 319048090 327808049 729379772 603301398 748414914 372412723 618299941 988004766 996784584 473239419 599658951 876882331 879595570 262991173 428054679 821182066 840205337 656736419 814700014 140973283 827119080 867951552 934077233 424408556 526017533 226571214 688383726 431577954 967336257 985242016 990944742 827857721 977781989 523190273 741754772 522437454 879604502 187304621 646434503 161697280 297930335 591969517 840986144 981382341 997770002 302486930 531866955 940693527 951608793 512242507 911866654 106423297 443792387 974507183 986778560 37362976 535358376 284096057 466732839 172678028 418913065 500352942 843470636 985816411 996171827 490786917 859307078 562321904 804232302 49847122 898590567 909172709 926462286 145871061 316395050 724461389 799327505 838115630 925647609 292416038 959789191 169777582 794504304 674733627 958304455 279692110 974104671 197828439 219051480 336403332 996117376 402884821 624066681 812971120 922672757 241258694 945486241 288136720 643282518 310414119 632211435 950497615 983606217 710133762 726957812 918750462 948042052 84997025 713015417 166240683 572345631 138790002 265293696 816271738 890828310 710193227 779399107 823047613 972644686 570137256 597383309 851228918 954742388 757829784 893093261 113660516 273276494 971891394 988814101 241081602 486187294 249782516 466674198 595649694 825428701 428613194 754346567 362283718 372025802 341552359 755872142 746966597 821871619 222796314 480687687 840561263 961038335 120765736 675573405 97714993 122660121 980768978 995556147 52815058 85985946 111258318 506560817 958274759 980229905 881798507 900788744 144663244 691756922 375751438 865548294 763763607 787551913 917931727 971888878 594341674 746583640 118548083 955968517 869564888 922288015 76697959 218816223 211938734 705018708 312080695 980577562 490662006 691636214 544210481 597766805 773387445 921407655 368505988 730353843 842445007 856562618 871859127 996467385 591058769 815472009 328964239 546393286 271502802 754842456 542256243 873278699 569286403 683775078 142359923 837082059 559427721 865567405 248718469 565944543 323884352 536448652 971554970 984827994 588977653 625400320 594601859 757026920 865850832 984112664 425266864 588192687 253689813 964477775 418735994 754533198 516799230 966865584 656458087 900442497 411617431 819009670 657880579 909256875 570114257 902812750 313587737 685021828 945842267 996905290 144385271 539712146 963312788 965388363 344093579 732042566 245826853 290198938 687148690 760070517 1245715 253137490 474636362 829347096 818801907 898660466 955509488 974147061 89301807 428995052 406471613 640710968 610245132 758916523 380387069 761915211 879936398 935266643 99024423 257787178 392754067 787301732 333545770 838857335 255281401 902788394 834213061 872149190 332163258 657562752 972056895 997084491 719965481 792986428 360787525 928616151 264145006 908683950 196356653 829502925 167247905 395507795 978108080 995563783 336535407 744139216 236822313 468605020 244685831 780526397 829011156 987113625 753266222 956176982 906295519 934854238 775360597 971390474 565734238 585568202 22371865 461359870 11583919 804051894 239725644 506754860 807293565 829436612 22934620 695702947 539686491 933968098 343695001 877727943 677528761 768875213 298418112 927863825 701231701 814395781 416728514 610875680 84263422 244743941 860839670 973985582 204070589 986658074 777034392 929083888 629853028 844468396 601113462 874546259 523544024 582709406 219553649 243076151 18463895 934939036 769468378 919846261 513742054 667526413 458541647 610333379 87355962 564608416 446735849 645608238 217141289 896691769 916497875 939720603 180759758 679851214 829573096 896195540 857619013 967220681 887128794 938263747 303061894 354750471 744005809 973692437 928688089 950218574 481059880 969868335 318143597 518225389 287578815 542972950 733286304 778727120 844749640 884458297 458708876 956316145 866357435 981596037 596004895 738725174 695930207 785216098 922911916 960511185 116112997 887487231 963692797 965450553 446433990 642462916 816969398 959327972 129599498 403762897 155294342 473457013 298391384 425112039 961104105 974341075 198417559 373861692 579847132 837521768 974425561 997999680 615550479 803516079 591687486 682708830 396831196 643103079 185158584 913639755 680085059 919937081 924423163 956944315 430454618 681651541 371329428 826909558 273079253 848045612 681546198 912224328 272629759 437135357 352519645 973538830 842018218 974407540 356056912 457812556 227453409 395032050 277869522 580827760 712965786 954842153 697232283 871356631 553574216 700662153 262089003 668768790 231036830 850588970 79720074 326952246 652981327 829282481 941831269 972493728 946839678 989627452 744992357 843623001 141695719 270781325 378309870 530254868 75444038 416314972 972328702 986537794 452727850 824579424 412066752 730426513 277418190 418394449 768153566 827128160 612441303 677185213 828674964 892931561 745692724 787094818 581141698 692583156 864368119 974285180 816870462 980679476 590823150 993592967 629749719 703933584 796705476 886588784 267480132 750879256 746098977 867393255 347525886 462345980 525575859 711714817 731193737 764971846 751775371 910228390 901149442 967837489 552546332 794730003 808077137 963010780 579648681 724656119 585665263 938955208 495033932 507779429 300568123 610582244 210216560 697785121 969597226 971548310 213559587 708100234 629619495 735420553 496052260 822436984 70874363 292506880 760923262 851424262 946958909 992696096 463359094 672425179 792993271 862040353 507668372 649814375 423473847 525432525 233784859 695777455 990896979 999123564 310900679 705266491 970706375 984802038 483558519 818886239 701436749 743811837 816194266 968757032 527437451 582545096 792746285 880355898 687568931 716292752 757575557 978512011 396398808 411892228 81914093 671116272 517960328 781321691 485804554 619698571 240863271 350515679 74365405 202305541 642484383 880227277 37002207 345853519 806858758 854315023 758757233 800702885 16251787 209974710 592577580 897005489 928312960 952941951 53310332 389371644 101145241 528889788 772106529 927027319 267349395 730658363 200147051 859265581 469544324 702222684 778435600 805077901 459375573 852915854 84091188 753003014 671556407 977828447 48784778 173065922 723184210 948091479 226552007 356862973 295470744 452261141 20908968 784634249 57650062 92105140 488558892 955387825 663260700 910985588 731473431 960411060 892089328 940512306 112725631 353462535 867734964 926859915 795968362 877105402 669546259 681728942 55738126 256367175 162140820 631646023 343334225 916792873 902958440 903857024 970268233 981617650 906562087 976785359 97817346 574061873 891534910 892944387 753057126 903259951 160434618 772394739 263841351 476006450 80651289 188726555 478304744 922189250 335250376 976345773 917727000 960908734 596353646 846973525 534810988 827491242 308173810 850936155 398339060 660001587 5190791 209007142 884047549 962799480 594210804 819424643 798219565 846952691 255283258 868820595 97372308 571918037 609119256 666430431 784466084 988294202 744495486 796270305 2729778 773337882 496301648 902300553 508696207 931507032 417222974 980371315 982972548 989951787 556256105 686030033 965497499 967438437 83435833 862433405 560094232 815893567 609489624 931356978 153730004 745058354 615540539 647524864 615599397 990522319 308419890 461253364 995772615 997294542 212183340 306355753 175576043 209298636 988189809 998847404 935838760 946215903 785372810 864774135 72885666 120003125 379711921 995522241 374181889 569225346 656510793 989795640 526905448 859908701 112724885 966146061 893615487 901497748 586359197 604905366 974738632 997486015 412000949 864199949 604467285 788916951 778482234 945628405 544351042 768365196 330072041 780912587 62235856 75750583 420336566 596291356 252963578 342450785 567231779 599588790 811527966 899434630 569754657 731512338 616583293 752644565 558109533 779593571 630684734 789312768 66211509 344067789 469357947 939205388 622976104 952886028 585047815 625357078 928694729 961299790 481247963 960008819 153569269 331718726 762514771 886417047 42410202 261450315 326925248 741332501 867575876 872234631 925110308 931750724 489472852 834520496 556839873 720465111 920668993 997245589 560082833 715379445 344332428 871130528 486447507 978311831 488215371 956828018 42927178 681515079 897082245 952504424 553907242 968998355 894151183 906059289 568140943 792865429 202250967 206629522 838475523 840782939 431738352 642360794 110200004 954605683 86357819 547072977 79631606 546906092 23126590 907456017 393581438 631119353 983858676 989977815 328085285 665370032 225590468 566020596 463784228 735828636 690173767 864222007 494443934 996132433 321963275 550226427 316840579 680431349 400396747 972792014 64811513 802923434 727969360 880219437 663243057 914499174 657622908 889972389 511427644 994253124 147329463 441747533 870750239 942852483 447007139 458647752 3331946 759436660 749145401 982885859 665343416 826948973 795164961 884855847 876940297 915606063 612300627 754575692 145372101 638807533 674951688 845267859 204360288 788827109 566402110 941959998 795078025 811008680 614063003 899566274 92832999 690428039 93608230 552430554 482312587 931187171 791368447 890335034 866727715 903621049 974266337 978961918 979501025 999004840 918924883 986385557 157273239 453646937 811832061 915199537 904786582 924537301 47429992 320292027 724840297 882481333 460852374 533721812 846373235 931065910 489229278 862990581 493785119 900303223 981951466 985613845 77243811 494239887 358323409 451374465 616801317 851007185 894444413 989718902 90784072 244227920 997293402 999383360 243519154 782354269 113986348 670107392 961544002 993094627 637954645 648907050 667010800 984859765 596998343 647797639 800710089 861941328 820172272 886701720 410127197 926285255 983701679 985118440 869314589 929699515 413196510 429059274 503507271 904003397 636536623 678997334 967383518 990578202 379813770 850216301 470543091 939395262 234428406 847529768 898551748 958371765 247566799 306246249 578707739 911254076 644260180 946719160 861953570 980351176 740530968 802075496 223457953 817715178 53500995 737191469 648381108 995432533 68620291 665578784 758834709 834983616 684342786 862509408 900938090 982430987 72165762 245072585 360975014 396672538 332500298 655819893 270003928 287881345 856103681 954667646 379109473 591234149 394766065 945752567 970606961 980950327 15841636 917146279 324548152 496083974 360691624 775120128 488725021 810692779 920784712 931821715 288624161 322818281 66250245 645721941 408760762 786745308 101296814 550007914 83424478 841163045 209623134 758977752 442236922 638969505 77479171 133003554 804569429 912353554 667208822 947446820 612668301 918387169 341176215 552984198 593706752 974089596 141122192 262610991 294364170 779310931 680240544 904329856 896690587 997358071 966840033 968831394 265292165 537866763 727144419 971984304 712035338 718783056 305388405 632607636 977784086 994466221 655421563 913670322 774992623 890645286 565003638 977633769 291017112 807627934 140468731 949623156 975793192 986087299 726630680 835134732 575005429 958123762 116550045 473290412 336699034 509348856 368164765 722203070 654988150 737055344 396823808 586508598 32675444 950416296 423083664 923605769 236351679 779321035 872528722 901560304 785221028 870765682 236769759 651989436 13439909 769523164 260407804 458552378 572678813 578409575 537300878 631587726 566060297 857419266 594700098 600190354 758146896 802636499 547539495 580780595 920764123 997034216 408202011 465908208 744162376 893730627 576076299 672822130 154887202 415958942 578811541 707608747 427140590 438798733 87953266 712221648 465783804 875143945 497262258 542451372 585354105 891257201 461538082 720572574 974848238 993179236 502621117 939424874 726991766 816350303 234768459 965960337 538919517 948577621 625246479 762437357 405131205 700189295 757014940 941134470 474419535 969897903 736452038 835701452 209135962 920804184 2702394 816794976 27214113 313077629 731155144 933347777 773133399 978480440 969432704 977100728 59835994 84524971 888557932 982197103 805075313 897837416 439885413 543773342 300116206 536697800 99188016 900817338 294705283 717669295 529868760 570469147 276155017 964403450 714135756 946040900 451884770 575597338 802038317 947966461 443106968 595952577 624251831 905607991 754347151 929777407 643243746 661044806 188570307 531305425 850462117 957699466 221348184 763281388 310777890 961334589 320435853 478177416 981154524 984575087 853247313 958488967 221481081 391249470 234565798 246947041 665481849 739183582 200821744 566081953 924254118 959691488 990295353 996541418 951757277 966528970 802188986 819500373 74594384 176214068 955106079 958788069 578344172 691492553 376702244 768452715 287355542 974430007 329073424 405070436 76826196 616553936 844476289 949494359 377135909 510277554 355656615 411907831 703851229 826924266 900958445 950465725 452614491 550957125 208067829 307166766 763834755 812212899 911668605 918949106 684422501 837609100 865843447 911700972 212064913 698245765 663532622 926951485 981175832 985029366 427791680 979140080 58978047 977571999 523935531 624171716 479424087 892044891 365671925 553483307 341716753 887966002 184511670 749260591 924147000 973826536 64135683 366549905 970082523 983157713 14201215 487120997 11934727 540175791 119944535 372336089 353824076 396221372 585908727 819381045 357638512 479846176 440267760 699226345 5846136 940839598 956964532 991128378 83493477 954707441 519824051 754610255 599186290 778266758 393238341 897571526 133427637 834944179 483212374 811039119 849566690 926501985 767871024 859066676 929834865 985815287 228942273 597571253 463693622 609378692 144697813 854458988 682116279 748633157 317083360 967974218 744143755 773571409 76165713 586293264 382260120 444111886 283743014 372199335 758256447 889076821 412545760 665513817 126769649 497464535 445847234 863156395 522064802 767108801 387137859 452533772 484870895 524134167 142512395 914400383 610324249 966967012 445622340 697375901 863348957 973700350 325085697 573159160 707362015 918821634 584414859 763020982 58645013 971882375 522826568 660631323 455251963 510708909 290166545 444139331 980623397 983886184 288132746 952545845 148919690 936805646 351775559 731953132 879541749 909037624 275711275 961663568 821199838 989870234 263652125 768101142 551634886 860153270 815027820 871712638 319993164 658750624 902804466 998503461 139566516 199681036 31708043 717122564 360961077 917561051 81313873 941844399 113354402 631368588 435435323 508008909 591995756 809837133 326983998 631593288 248090892 764069094 194403598 312978173 303700645 708406199 859716306 997257246 364953838 951305830 590298158 963210756 869688271 887661693 442253472 882743632 20981993 598853639 305234385 842587912 786108838 893097244 899288596 949020840 42019596 734028768 268033783 977641678 967670203 984282497 840861449 975479235 822445085 828422393 268139810 732327374 531107936 863203609 828388058 987089977 629494864 876644242 78718404 723292319 230273853 928591424 708872045 763881973 246619950 411686433 366619718 651234634 290360322 851221373 919173888 951687328 409270083 430641009 535519796 836284075 482048168 550279145 674930723 837229566 458524061 681412887 26194203 954455200 209979324 967779896 686913149 781316120 6561082 453017623 473912653 753657661 240904511 641951580 551337935 760887566 878437618 886453145 372239519 912714915 37512611 299371814 989586843 998966677 364227635 478908460 275419026 855392193 812496018 872519545 458006214 694109648 74421952 830183448 512043821 914522083 792320689 951016339 174751670 337144845 188491876 758149755 372664783 984796278 187366158 408536856 560227290 736844782 659416471 944286705 701718089 803132494 927603988 947533093 169549668 240240586 253468785 631742182 880582951 892950747 945772691 979064396 649351676 730487978 230392196 983026847 628146996 730810977 556025766 833819699 232942667 615399784 256118949 998006479 564951836 736959994 906210654 995300175 190518944 468535788 573191565 961859422 684700978 903215759 603176593 995632423 608174328 960101484 994496830 995886785 756357868 805016691 634807870 753679788 673647808 938714275 593013336 712048080 890644033 987965843 954970770 973263409 48031443 907749957 597809819 973772345 474826709 598583843 703156622 721311359 139394873 637135504 348920989 546574054 853147454 998366725 88689455 244790425 87903339 881652447 612884754 998505287 686986905 790305276 226017503 696735668 743992049 909453700 348351754 501254129 903619434 978993687 30033655 939354971 156356909 541224156 644700471 767009961 821030636 997125222 131338300 512301317 943467309 980682179 105780400 139355170 763350763 899723180 739304221 914341440 264592021 917933085 482472514 644566533 8828952 124332223 417115912 885868775 989254267 995187117 221848280 546039337 513275323 627213277 369637450 533247762 545995062 953419604 401866192 723178858 776409809 848809282 498439052 952560825 279908618 592737186 978480915 996296446 833579547 950816228 649415559 862771783 960415221 991387846 441933774 836705508 427508680 609187340 581774379 748306094 85531457 282170268 897980713 991212700 176286306 255379575 58807362 719526867 427354246 726707417 962566578 977960602 341859456 594645792 662269356 892933896 74296895 205028065 469278938 631817596 43867366 609721591 555433196 649621628 73565498 634523723 291103196 773017452 712098761 920293386 318303662 444455908 995965067 998235379 21494542 684844215 501889396 655848141 488390557 781846795 993781207 996280387 792208494 865151301 187499456 423413577 955153146 961893961 55377443 774259451 123726477 281303341 568626181 590993609 879762906 919046714 123173694 815566236 365004808 434271336 988117733 996552291 419634175 787756111 300129966 788034654 147772977 640461194 475364945 974241586 657902255 795184286 796255864 842112279 866559308 925879979 18195581 249664734 148894343 692292484 20682054 627751170 430830965 951733151 925963550 936458260 412480321 572260818 846678402 879321142 157111688 168319373 202794905 866699987 853405144 973818116 383391188 995964422 932116919 979810921 299109943 975677210 816374720 920312996 917656532 918755807 467479898 628794873 780912506 861786171 218683542 947545849 338703863 969837201 149465636 895534347 708884640 931030918 850345967 908051542 173384554 499796623 185601772 897457463 227621296 238186337 986875764 993814524 457529782 474241155 907397888 999060697 803009342 940363607 956605539 997347632 270377665 568047355 554614577 619986282 609948828 945487111 109986411 324388293 133709478 742996929 490263127 967973616 686902106 816768270 747595881 847585861 511623436 661605752 265008642 404274572 39993613 693892259 666618233 693931940 51644832 968419521 225473651 603547355 703909590 898464060 794124996 914369129 399044485 861056778 294172087 826623895 81698149 403664427 564314083 884557264 676026165 707939094 213948947 598366909 95890682 720105669 25543756 481228399 751353980 913300236 803964660 836641020 222643720 473562154 726119037 976226305 166383324 947337573 423269634 515858435 250243604 530830863 613183394 951286785 251830221 919710090 981289911 983317586 359866326 789127090 751477414 964375642 97379554 141928418 799306264 947606528 400493270 523497471 994363074 995551227 131741536 802331647 449661985 672143014 494230558 542202573 478560186 639469568 703584716 861483398 989915596 992563991 518012054 793576689 151387294 989544627 693007702 749663542 978345172 991325181 640768573 716887593 2346214 919937685 604867358 642835318 78308078 815532357 996215460 998009411 230205346 973518516 611651074 909072647 9826917 375100864 303092934 971699514 80719919 749515248 645290248 905887902 325104250 814342066 49234820 532890758 947989313 972893752 163207253 282269242 466578273 822752011 386931506 808471713 806857762 956185925 861790390 991002224 945315409 946222076 193448228 859975008 759000093 983339266 256097180 313127939 768252637 926701353 444523439 607579315 481907971 870753338 720478140 927958189 63924419 946137175 695472365 958142442 605452028 632474620 38353283 916596543 855218978 938777816 292573815 385254745 979390829 984738160 604934599 985964085 908477349 921392528 431455828 921251310 755732778 800046033 478377680 971758935 678326455 919161248 452927360 651406819 523887673 920985526 369197778 729120016 545041024 623715040 857368240 933270985 847414619 912669294 913123359 960704946 374810949 397925837 410788583 503746197 316894744 851145714 105240299 146215113 355000500 376143181 978532184 978713476 966835027 994095497 928863957 946879251 242330734 443557229 54605872 123648971 217517942 922843742 436928536 795130673 174863946 703969176 386281933 780403476 80641725 928877457 136439397 219471141 606898180 825543457 680064995 749729354 521617026 600642395 112223017 940532383 58142039 490112814 13203900 210832379 532466773 782055392 342103814 906046201 487033752 662903361 236224018 669886974 571000071 580177479 970972112 980863637 673472249 867214490 198183390 235841752 662983759 740692276 671959987 775211929 76219772 119912665 39364594 707913682 172236583 214595880 435632027 515982094 592448759 844798462 265709267 798771781 120475085 386492800 140938334 356866442 850609030 874255749 722581641 941354435 431662278 928348917 58254307 398221801 34531188 425766670 410041018 880464636 414879592 534871753 481325296 694159647 12924952 931341281 55751142 642988261 835743193 845791754 959851866 969413648 845853359 882305815 316285570 993326980 456474712 784540147 201427968 633520787 781729492 977845281 912718283 921624154 890685050 990989884 433859165 882028613 158567907 727322425 239055511 329981401 836526745 923627662 839209592 889934667 200282220 415880241 320885233 629608977 510774504 620317932 870595097 966190231 329136497 820409940 177274033 877470400 199059639 204570734 284674000 566224392 994443877 996544640 792320378 975001164 988068091 988960614 230942639 536922323 872798497 951221322 202560664 663766065 985190986 985200773 981025407 991041024 77210828 299367836 289001682 615005344 917066835 996835767 202337336 673014021 45090987 981750840 913532949 942643693 808836567 835369616 151443760 257052625 252498630 305668535 441535601 649131425 135700398 438014360 274199807 601401789 572615142 580158663 241170351 615289186 992688225 998788386 893178795 982922625 779508085 796933958 67909380 973429998 976052231 990731212 952533843 968563455 277433321 833604900 620323668 707948399 232069858 342831129 208158448 982143108 499700404 922316249 711141894 873133543 487273035 983458575 847873925 981454462 891675738 982906730 822385593 980797471 700178444 702245391 32952820 520706887 979976189 982375074 73091736 848592773 747856675 909479091 799939997 865126566 671013638 727671116 393288590 902559531 733131778 889967786 951508101 996067710 604418209 907024086 277760922 930786400 184988038 634214935 514605953 776341416 117396204 269099275 947791964 979003119 436423608 716987653 911228123 979893686 279971862 884415239 218143044 737713422 500243952 784662040 29141290 366509609 860342328 863602734 963559653 991366547 215754056 457775735 502950388 729728261 579869279 886566477 977498241 992452333 360056174 548963051 227484335 739384871 220997868 357591061 277312042 972499899 810104986 919490931 153937073 716777126 667027082 827709876 622164016 667798233 258740562 386681978 83541762 447858981 449834840 733523506 632782725 846466030 651422546 966755133 579247699 998285596 897102885 967171408 26756029 386308443 275335292 658090537 701210229 863787859 292437046 936159420 134432529 189074795 59495380 146882724 545613251 926226435 632436947 818989336 979118942 982410175 735735123 759083293 550166852 973232992 191521594 702215022 289047511 584680830 623547794 853841797 410052198 616008531 60539968 761115979 348318564 564313032 109978123 349134160 484448289 776211680 851035754 960845976 162351028 337429981 47934272 455367291 66024743 182786665 16344706 191623055 398009361 966422796 162544295 950549713 91798601 949864427 118614235 356268050 463539923 927136124 81830229 464526292 79585385 155222412 432680162 607750632 695166028 804641338 337978669 979573860 35836520 511662129 896033971 983737495 384116042 997620236 528481937 878310938 481724089 631909418 867478888 881908560 95626967 282279225 124882275 419710008 729781401 837330559 958507144 985319306 443641358 869817464 97077546 788314725 231293314 811988581 331878001 991286960 677846649 718157839 137034408 399526142 146798531 663380271 375729869 963181527 9195376 706850411 831933626 863753893 528155681 600097485 321628721 376772132 832190874 901612467 249301773 470373073 948775745 990581971 51978792 119198034 19225693 727075967 327796958 786333992 911871805 916734137 168183260 756964731 657832395 806622461 890981187 933698366 400341099 483181224 314257381 745085013 194080870 254104828 40639569 601172836 905318272 933158045 933305756 951697252 500038644 581222036 333064069 437937494 555426634 940234152 574270805 681357180 347079719 550529017 269286478 753567816 873393465 959438458 920095777 949089379 842628917 905970704 257639964 404697749 944922510 994440588 628985835 898479729 678982246 968118474 774575889 834365967 752240092 906011097 109488077 140107358 813122647 957013432 912600498 919772988 386240476 843820252 170217684 747058093 261783123 487352142 100205932 444283336 820819812 920195355 925743348 966525763 876694762 993699683 393569672 707393416 202266928 393191258 254629567 947082201 754909887 887918052 168035464 842966936 665595855 869272889 906799477 918131191 325226495 960927401 821716325 930488975 634837162 870727551 956040918 985626343 429210049 597556991 567918108 940304216 971333406 999139031 763494314 914628014 642528247 974031478 479703648 566341451 958752818 982160209 827667634 934464399 357937739 656480310 234839335 978053537 37489662 834966408 627671032 892803038 886469085 907541790 800776221 968239047 793729122 881829908 435013442 601616096 408999295 852061310 614717984 888924234 483362062 939658172 176386979 910003785 355157399 595989147 234257975 639484820 768373506 792488009 15804849 202162384 211092507 708583377 778913284 830232810 202337589 681686544 97106576 203822641 215055024 322667464 664386066 983358130 330722227 571111815 570345191 975660963 208842496 599670761 742101647 902253945 445936991 880123075 154436409 603241197 117789288 890693115 288324585 971519661 427019402 438101814 277647592 617651941 681017527 773372481 517477106 671741503 171678177 862854683 970933586 981085429 243050336 845572314 415346153 701383982 395829632 569378204 999069230 999256472 403669751 887253967 508445367 717242577 354714244 904610946 98194887 729003471 438669846 689876715 344957848 555790251 158811472 583350106 570809487 786633465 544060323 743397452 110977096 199980362 476588207 981242609 983293430 983833199 77563143 739765895 319875715 796777325 872610765 893888290 303913925 728411413 89724808 840124509 695719581 747866097 862930304 949472881 688789184 771492377 94484131 983684266 974643714 987490873 43092114 752351404 323409891 438707106 244846421 992924548 724077400 853879492 301439262 330213117 568122379 644310977 274678389 906850231 316067905 575896197 19795872 480531667 903706157 910926925 799249887 902795175 865663608 917312560 975604320 980754808 827960439 902252062 421888723 809599322 517731047 764915854 644751072 773695831 220393152 906516785 963636132 982105890 196132650 467794843 39682216 939211031 609938082 664446075 812539111 926228812 161794787 521058679 524257049 551631857 44375422 671428680 651551228 767550459 798787156 963684107 297123440 907813249 125172722 127523644 963733168 966214669 126016308 847793751 84255428 298708866 71684237 210635040 12013183 578987759 672814735 975196013 542931258 982298416 384867129 683837722 984668213 994707471 891744729 909346711 345652794 930646500 216873304 706722883 253371744 529023282 686262839 854866595 360794495 396739601 918959325 969048322 517219778 710230829 351586971 928533563 592033136 982894013 108564528 795174402 38845994 957134127 418657340 591475779 211517626 695583610 478621332 535347287 501628099 844824532 849230750 862074813 193014068 924404771 845151266 960264439 469171413 550774792 374549192 653710222 459721685 640142191 45152568 244937273 758187635 887704636 120915615 720181608 256827589 333560191 538822696 762543051 935615158 941832931 69607168 920932230 997917707 997941923 177974942 964010649 181799685 218162247 510710833 926842985 236937697 663168518 9461192 333407592 908793613 909367352 110542816 168133894 40976721 426441720 591232261 795659868 40765954 401977195 447286614 850003339 598161470 667296204 825349404 863053828 430662908 939062493 743906164 760671934 635436572 869052637 136462922 297235714 424456042 700503142 323202687 941312076 807031538 915283299 675840765 744287321 879470829 925536028 210060679 974746262 654607446 749492746 182687043 306152102 609695717 729583499 442050353 957786683 731485449 892621289 231705997 329901949 655299440 676987044 835523045 909604609 669367771 737698481 40723860 144001670 99486771 996791325 883538476 894173611 5066371 200581119 571956624 652208915 541397988 960568819 783995677 871675018 887535529 991291374 248317129 483997787 708748843 928416392 683791493 981059322 562570251 852638250 320534797 947334911 652322116 669635990 66974754 431122689 85962500 336607088 614457715 882661077 650231592 699936684 824285183 976695450 781408129 988707967 906802222 992361673 103339322 743292777 854348186 938900736 916405562 972078386 983547541 990284756 836253373 921834242 104194518 144522511 204897040 619074175 873412998 951478951 787359526 896743483 779279120 855012244 746884895 939649541 675469315 955125566 190617763 408299205 123181762 734134320 607928092 814666201 188043854 524656200 754857798 823347162 80865023 883760819 945875819 993498529 836235575 960788502 237787343 713744565 902157636 963164589 978002035 989313730 473531753 715149510 34408550 41450064 768563410 969689911 540260189 701697551 836049198 980877921 567074141 919723584 48639673 813086733 458705403 957217844 801245503 897117517 97555906 227576922 25764676 526005206 618070559 795567484 387374550 929691133 424470441 675177888 908829273 955722640 776976279 884041941 415170247 530511414 13906847 596336021 650779065 744127907 633593770 656558413 572470388 762948739 563718943 915235937 434080235 998688031 503482055 917815583 210983329 435764703 892782989 998931416 667479380 801554610 726389971 829050235 719610210 896499487 414218169 837233157 84380215 219896049 421564056 667464165 285866217 801305685 542269919 826425831 178062155 280669987 345065012 387902338 868300921 921606828 769009555 838536680 241748265 712354457 290958329 554083895 692487739 780780722 697153927 764998105 557715121 597218603 434150842 577601202 858174021 888967271 14080361 771897723 877441690 890947534 255514560 530365998 346966000 781644727 341903146 494337230 460606605 625971130 173896831 317800983 950726688 975017845 387177796 934573112 503357217 649177977 33246253 171825803 552757098 686142496 898593414 966298061 979715768 997814028 419712270 593466007 460205136 987218498 150315266 200098698 790496761 866003015 785958962 939445480 989516232 997136740 97520007 533997801 240985587 810164381 941263561 988321332 849984423 902595033 732195534 841224813 255624505 389677290 67010777 885525373 350580669 711218737 894470791 973658492 680300638 836328447 568673313 845662649 890190603 933545224 626199672 865957954 928463186 959746578 776850872 984835732 476745385 480210520 206740280 552040476 831367247 944277747 935266401 976283110 935251075 958103951 52679265 355072848 341707777 590213712 537168965 939016499 544855003 780587650 403101395 794963354 793753534 959471389 943784638 958888832 916065822 941421884 628854379 974610808 105365869 743187561 780494733 985691971 872353356 952377674 495588406 915408676 612576194 754825640 108466759 999089360 584226338 653889703 100184605 347381583 130540615 845543120 294088404 556637633 203302688 344119042 757699463 840562188 170071790 270791779 755095915 773616076 25903016 819945526 467494351 654286145 811106764 833649037 92567700 909553534 200818048 257600430 180609246 189075258 447018482 526480494 547353439 801734715 805440397 902675629 510526027 625373876 973327898 998950462 399222541 474406663 973747750 987547277 530536854 545205597 265362461 707301322 841390485 887083438 439654181 587082874 803081012 881998790 877989865 998652010 324010728 806821741 801744919 806057187 162018607 978233154 315313565 703988781 772242478 899397582 84008776 129399167 553129965 769371660 395971476 457405354 372060323 916035872 320808072 469067330 487031733 795779217 122350920 256312495 607622137 851002046 422046273 969349015 737699079 953497295 132452967 293795728 103911939 675833464 809150841 918602142 760504939 891116114 486205138 912526614 243980411 908349242 44847423 614514581 180691172 476270420 708295896 911214840 229602342 959488593 326864819 457885207 988650710 994861495 644540595 701859372 58199176 751588843 772954170 988308250 891866798 913555252 657553507 962746502 951618342 968367210 907873988 961335511 936501697 957990539 15056753 70703493 963983503 974549192 737052288 878841757 588868610 861344131 753106634 924761429 682266236 957153632 216853960 285656351 869361137 931486310 907986048 954612962 75897560 580418476 155130676 664769292 570114505 966524114 456205795 813767934 8456469 89028997 749027208 854920973 598212817 861863302 162734956 931475222 705845675 708942904 199391314 577188800 756714938 759029498 820670966 841273231 138962160 233320908 803608712 908476815 305550526 465100559 530806032 557373956 767266263 867978275 762807590 958612667 425764841 820542435 789686812 812388489 907039776 979444958 793995207 801743238 167809903 753545345 327062465 578899159 759263489 917350141 557993970 713655697 900539985 934586001 486103179 881606977 457005930 498895838 378339824 500382719 897379044 968026423 437881073 971385680 661408537 794000019 423297008 558918534 325312424 379698117 99217449 913762145 66141540 399429876 730982590 992047804 942838208 945915494 214563393 834359891 876827497 947132015 836246921 875907362 553578149 640626772 112664680 930656464 990653270 990768984 965864827 984667046 832223050 858658782 792754630 871357154 108873443 974173775 905653790 908655747 445751811 823681379 19293987 871185800 742874535 972380870 186700628 525471385 590179827 774315053 597592903 901979333 434481672 507705684 219989300 364186171 192289980 533103089 81686006 512767900 328449772 723595236 763985008 913510352 499053618 590265089 680045240 918821516 138707103 362041999 627936340 636714536 419658987 862688383 73288036 524643324 408947823 909516154 474455607 683899940 966712729 994851638 983428696 994562210 812215091 926994776 109609166 157845641 292721975 306358981 774419937 985988567 8379318 328623750 921574553 972044879 899269766 969632316 398217094 448902536 677278446 712463043 453936077 837351348 533086053 705320151 930901157 961325745 410904428 629088576 366286101 556673427 647126286 881314352 750035248 803539381 626075150 735825859 493865674 928818422 975065603 975945905 959315591 978466247 637457111 929112389 683108472 845262306 359086858 754609656 266679549 450112718 820800156 977736949 678312510 895174443 107499939 891047678 955989985 961475908 280637634 374357052 248750410 629681053 866184715 981454527 535792000 862043165 795478812 923299197 848067985 868652761 157753920 742253978 389190843 901870347 786117026 896362271 848124454 963871140 972923597 992891486 390677053 470067643 570652455 734554055 815797213 858301618 146047706 879758990 40894475 345899627 201950186 418050614 293151978 468306196 630512866 783481508 215128358 751034859 299192130 765908293 698484987 925600092 284866771 894743700 914044690 965396636 807174811 809962744 130904827 923029968 227735929 546473030 424850675 972467481 148092390 190337853 593302492 816026034 770026102 974837816 259379163 960531257 983613831 992197950 758095258 815728462 853736411 995187586 961725515 993230293 753382445 841358081 193749494 325865658 245447542 885774297 483559455 537194175 379006056 884164678 589216998 991648016 748932530 762799513 560278059 920444027 390903353 499163940 640953042 809597339 429812918 924618925 288892161 431876556 672627547 682278497 281419241 631529268 140626604 825551473 134360127 684283482 185914630 776725509 83924350 239762194 684575513 731834855 40112080 304354639 646207240 704460216 603078062 889862807 531128754 642570970 68382174 336141028 541980655 960159354 219931247 550256197 116541001 824554691 468921397 578993164 678960607 856972067 861020417 983667189 59776318 131445383 34001879 710554347 97820913 470024340 13099147 97739792 90400306 451042901 818626822 902353537 855453908 880177691 177279588 639060631 513557313 833178853 232376139 726191359 888964244 892163681 216075882 677487356 464600947 680164326 53809182 462449532 95531831 140159281 714650500 924047338 558057397 672682825 543778243 761403463 748901897 861856104 843943808 882565921 324985423 905325970 34131845 963043084 465183130 924185900 909227729 910122595 90450449 830086090 583159742 585015300 983460887 995137795 104808731 198583625 888879887 892120749 426975809 621365195 373661943 459152380 196108924 981834921 863622030 924852576 836880243 978341504 504787965 852350649 356478112 372081644 948899066 976618474 781700219 915081670 142071925 199800005 113931670 409044051 547307477 755709289 32619932 154149868 51668727 251392785 934376550 974668480 141378842 833228808 950136930 981224671 678292439 847052802 428873160 852708428 816673584 864692372 886883394 964682599 392679604 407813598 784421631 823071268 281329222 437425389 999054462 999204116 450511065 742764894 179113632 665195095 962393954 982758883 550462221 710132112 720472071 865420647 931318484 932531356 701215895 937438861 607031959 994313413 415308389 907391811 666091599 669668843 288861033 423301384 581519053 873412384 807840634 996886636 66096581 708923887 782738377 859117199 963260244 974401861 742165241 808654723 761798418 850124894 519564477 835700905 768744012 811014016 744423479 799199354 596120195 627407146 524307594 682822484 223710203 961680277 608514791 887084609 129566785 450309914 744148485 954974839 116952748 909484588 866098655 920997836 741348416 941478719 732391366 805397883 489145935 490984449 654059476 863368809 685361207 802235273 535446552 703818603 459321533 857059653 10653562 520863126 640993079 939756276 211576861 668906104 266925975 659527713 582964947 599372210 27948819 152544156 574214808 632298374 956537244 994385422 696392223 816734213 342044354 685934386 371128091 376686221 449721252 860970788 633182712 656915673 716068848 819644516 34835791 710922300 639776402 809527165 260927298 768133246 643326769 711101054 175022451 995430338 263709530 562562094 888971583 965523307 726303920 821017904 649396172 661090263 537202152 805396390 239123640 557553716 941666596 998951205 393660747 568193240 803160968 945828268 710321813 884169743 784737486 919748560 752495266 982101066 735664157 832567427 99717695 843565375 866264185 921694312 797793482 936117159 548646484 723285588 36809369 636489078 78808521 336803564 322156730 775653919 535602867 768425021 484835797 896324043 245308177 807016838 122229815 170818114 547319404 623526554 480649495 503280556 159938365 843188041 446183031 480400223 991512888 998860093 32337211 665161279 435473713 470273788 982450969 989975945 985050428 994898945 668339148 998507765 795278367 910624631 582598531 771532906 229012628 950566806 190052352 468284845 785934569 958089599 217173193 711393113 362145927 758843244 865018675 900222873 296791708 706667182 609498223 818156504 325941557 826999987 176522731 788450981 283737011 338751031 439880204 832957295 105980429 297424304 452088934 759393326 278707697 399317116 842128179 907890384 296066724 724413606 498157391 939156635 612054547 782226624 895424551 955926852 652692491 932894021 659537781 828106311 16676125 449556095 159243192 314886051 989995664 994871310 689757426 925814395 626396515 945687167 156605845 318826214 486988190 830226422 70243410 871262450 602950288 854043668 399486145 690649853 897311331 967500291 453118261 977454092 964047359 974140202 589594493 961158907 342406687 931738795 284540437 637771882 508196427 730719203 1208917 811466566 470990330 487236350 293924879 321070394 665990305 952552942 802989048 887202543 418074311 903926117 454221961 861274363 141373383 964405330 918284635 964635783 499990229 517142485 472757678 735381797 80524218 938899654 199513473 220963493 792414211 897653233 185705866 599972870 567328524 910965699 17274793 926520111 325703953 643256417 327082027 346237494 785051593 920579843 186068106 569118119 472245711 596107231 381358117 927831164 947502766 954290865 746317243 882414686 194320609 739528556 971582216 994649818 169960840 226995432 887798741 947915693 578736618 844503248 639653820 906433091 398996662 580753096 631919493 990169401 932897808 980619635 50698663 291584630 391308397 997213142 299235973 582701919 287840060 646068081 729452412 731553287 622301626 710278422 842617646 983159402 104680797 594028073 776611078 997899824 157007218 446008230 825685687 894297047 293325536 905042646 650665326 721027678 652312214 871843632 673312498 865022082 732931299 874833805 498135385 753938744 737286105 902750448 872873120 928613875 286330137 735519478 474138864 495977947 718878032 964074232 782284277 959893932 462118047 763463176 629731878 971071707 97510803 779774978 990045585 994307948 241430427 600019201 482140340 620719337 830324748 925511033 594335084 802088424 647350389 681946894 977272610 987744449 555514997 936785927 807841987 838255711 275668640 883933274 689050648 812504040 774155654 930264100 818972237 874676535 619715483 780329671 491067466 662658450 214009495 847402346 438132522 879251915 58959591 839521360 812444769 912112390 882213722 939538405 525774273 835542999 161255480 703988522 711104165 883385105 674207160 989795149 229810158 351077014 551956832 839844783 533190681 914173797 211067271 685378599 790405278 888403373 528738893 608234633 402566424 755169257 103247028 640477381 164288183 525204139 669625374 906529741 541057696 904640912 216363458 809031731 31781733 985548707 142251974 777502450 298737424 783500626 178200929 618627464 45334527 919614771 477617021 648580885 968458458 983885509 69158749 721824053 969111002 980818178 443452097 880431297 181409350 330335422 320674747 414703259 655640495 739603674 595732534 946527043 840495678 890059808 393267051 779073359 946105161 963513894 344859894 846941580 406086761 864187472 62688588 930312823 709290542 985499621 527215659 924512380 133989877 417188983 586573300 864284931 863161616 981627643 238272722 961056382 608746438 885205414 582328225 823155015 409065911 423635088 612725567 780159641 204037683 552857563 125231241 506317049 279234764 403810968 485120760 900951620 681690955 951599213 368673513 508398400 762889752 869849206 769794388 914642079 596558413 726523990 206675404 662857547 455027475 788852177 625067676 931292825 849577987 853926814 305145358 409521288 270278026 956534299 514546848 879932623 50083340 128897142 569809526 600755877 532525076 677837641 477244899 717371801 912894041 950419088 750825980 798856769 843186760 996637170 811709791 841754878 422860726 434416751 940060479 985375953 397208564 483251615 929502052 984133008 786026489 870136763 816415355 838440537 744011042 996462608 515168729 945169065 675881001 870220756 819564337 977794366 980575985 984543717 524237040 984960679 69902880 401237414 896869583 907862363 452079654 874376808 306113534 738876391 17309185 865914315 21538235 584052105 80738187 692921781 37050494 120240492 71435790 964040693 813799772 964588066 874234300 909870699 788034131 833809029 222844172 788871913 571584061 915891691 369614479 961407866 974758496 996941950 712935152 875370145 571361710 749071667 156263003 990851461 144762368 575733333 348873576 949281175 366853222 377154119 936824502 989285520 661719386 865583046 578680013 692748224 538264483 614283753 726127405 965681036 378246842 600276363 96047460 278324779 903172678 914017276 372410264 514386624 421338713 566912229 489863773 788911174 212274341 368095096 740795609 823974261 811461494 814022587 421809677 811911490 639015991 934788861 185438441 849464794 561918331 877638740 271927931 341691408 312625289 619755185 480289005 818797663 866472616 938142616 433642291 596513878 667724850 929187359 537072674 683779488 412711055 777317044 568568380 611268106 53106634 460804550 163814238 666933155 22037335 361417129 318393647 572249110 623665321 916498146 96824885 593720679 943152338 948992390 916300401 981450975 38157453 923991804 898000409 983801141 307415822 625028004 984180145 999056944 158992837 823164240 15570392 52465236 624264725 750555931 625508845 904122975 419547242 860676703 982561932 985323019 346218440 489028317 103714109 402642781 317047233 445741506 965875191 986904204 701594162 998548769 177196322 569767247 524141298 864294697 24916056 491735315 471753632 550003472 883847869 921785949 822003102 852183479 584653612 720910469 865127329 992679199 898881045 953517840 221619356 436495859 284608506 773468262 46143389 750384415 779355281 924077669 314634086 593401931 244102453 550980419 905790406 946881329 399617595 714895253 730786920 736909429 745314410 939708771 324054620 515912893 606213157 676807853 471055996 776144962 712975305 888041376 653828591 975660291 781945217 933127705 246816804 341197030 715804836 989442824 502589728 632673714 485916934 832568200 336257255 669546736 885343802 972678398 49336302 253233840 183442793 523189421 186078713 243848183 829582226 894696623 316535092 559985887 980003131 981705203 778359175 945364254 985033283 996612624 599075842 670564740 815481279 906963470 514351120 955648545 406121279 663212542 115146528 710533514 78067393 623892515 406863339 932232457 879645334 957461378 853580175 872632906 601160466 703525118 805864258 919486912 873075559 911672605 194091989 839753917 15361329 50836676 680116359 738257908 681018029 865277879 684219245 997170750 860545910 931019178 827457659 917110906 903744009 928718431 12016594 584448048 289493747 430177226 333020804 479410712 738326561 823794177 237004261 551391811 205459700 625707070 883654607 921280752 177177421 780690009 905282542 986333841 399776654 667072549 312202626 657709479 55143099 278625757 636838301 702883555 330464853 593615124 958537690 985998105 401976428 918933967 151417998 385817865 699720598 857398287 632344488 913751356 145479650 647864401 457083870 499889260 254096924 401588500 993914228 994642304 180307707 528358209 524238768 898563201 930746168 966214209 284920386 333067439 144378650 581845226 429417534 949592560 703006770 922943689 742480195 980451001 209316199 839237898 883972316 967321759 103802854 341696840 950629785 995011893 576418670 926736219 408489226 564698499 214272895 972972195 273150569 801706735 980471487 982514483 368382987 695040342 786137149 906410216 204575354 442722057 36235346 377684637 865270463 927487498 935370979 995299330 76779171 143064068 764350996 989790082 121424093 309676819 380069736 397478243 334774517 587520580 443934646 626360909 188149190 525632828 464650274 697799081 276289163 484126082 345713868 623718275 386456215 835558818 689993303 969934645 928899916 988603036 26180635 200573851 112269814 392549680 530474721 998486365 298539885 465242503 631203409 890729782 499419373 720955730 736671718 839589489 889865575 988475656 943963819 986042574 781581691 841304743 572531269 941512559 948635877 969619962 124288367 243898650 963609223 977833609 944332010 977784688 671543912 994756454 456826888 577027378 807973064 957326941 675199946 894534689 566352760 843389338 92165871 536420796 572978557 996606550 585335644 727058035 418812348 894839588 866196238 975587226 960876775 982555005 51688044 653534932 309216603 788230245 315227507 703143124 672897241 890297656 587604016 866680589 261408931 921294260 902038513 980472062 46511095 383332125 267439943 738835087 264227985 320881112 178409326 823253488 437652211 981222173 765896471 841343322 613150619 733709757 472146607 607109383 797355681 959071322 978915325 982849104 851846683 913361476 7305117 452998709 443745011 673086960 389442028 604893680 183988999 201956607 755756334 892073056 772815688 791998927 593634993 866131542 806206492 924498920 734296226 753819794 850917562 915352080 580128071 668200001 641202554 942952503 114989214 393911894 417499342 653835527 7627970 994578523 941204510 960389987 869538573 903967605 129922055 945526604 462899252 804381447 780489870 802584346 621643135 675860365 687928379 790389132 647641418 743986208 768800732 770831282 866897713 985176437 144442973 406754033 191324873 924498868 399198462 716532053 878668763 897363222 198307121 478764572 432979470 882105962 953621820 996211766 416650137 581228871 318026224 490152150 270609647 995324952 209761839 399367406 208447624 892801795 795188717 954940898 332456809 936359224 98074776 378427850 103143108 169542556 746171813 985337825 720234038 941550936 538034062 705228789 262588517 264909543 767339621 904924681 479400133 546540068 918016223 994173752 987242134 993412061 689730322 790103847 435639062 608809617 573080348 920155580 118760913 993044938 39617907 441049064 376675092 740101739 888212888 983511765 215070551 749091225 884529157 959912033 658801590 721837520 570062957 573852454 973057544 985538697 219724209 952280170 869697222 871403160 313468349 702211451 161263304 557726133 261173534 894428168 400041393 426181085 715921182 979882993 647286443 792300132 283219958 742000315 652018831 673106715 196156197 605850580 757771094 845349016 798664258 945861563 933491052 993722629 346508550 733152040 102953243 744910489 188428699 845209421 909631873 928228977 665938227 953009041 248067150 601542735 420934361 792617722 807499795 925762987 70748878 857788160 997326891 998290799 67628678 410265942 540145680 574119063 857606370 998390736 291303036 750940069 164239960 932995401 393801742 691129960 443503322 529102837 792291946 971109878 501158038 936126504 654539604 893604768 15207702 293502344 351252151 529895735 29554914 670727276 235546351 856039173 779208612 892127805 368539462 474562719 29465976 949553653 994671118 999195559 155938475 417513193 632993041 685527295 344256503 354309206 997948472 998078721 945973642 946371946 531717108 915792147 761096782 796194575 685085549 809090296 520462530 544616997 21523131 537635255 988757608 990270168 675428924 980454720 435876744 600221751 793102564 967755708 340428074 392225423 910518140 995587179 352757551 803990088 819929265 890787738 516698270 885709306 290305258 690123993 39437391 477483821 321866110 458447145 467775379 925552143 819173996 975976964 272512384 985859657 133589020 872501504 619963171 987687707 731841778 832559989 396641482 467091950 459518770 667396619 84544697 511591907 106869620 303599067 483914246 531269484 112009759 259088407 319753816 494960684 366750896 802792515 530876773 732190484 977609734 979045213 546959650 918562383 246609066 638578441 957098241 991265183 691046018 906244006 418591910 802269668 202402002 573820934 777148515 860255030 74939540 483198364 233495742 241339859 64830455 220048148 236492429 758943966 181935678 579819654 387101838 490094235 251145084 775622097 836582264 983423463 25426221 641898733 430998329 993408507 260870013 779432621 223634188 541785475 14509597 752382093 20798774 53653543 932138783 983652799 115738095 144129493 951487209 997157545 155338374 787013309 455423613 844425791 731073269 997892323 79996711 175694015 78568862 456401494 616580909 933248853 328652493 927910002 922563781 968293266 252525188 402022432 196139437 762962993 236354956 790037741 302584612 379288351 772941729 792543517 468617728 831348483 186719067 482687465 644727658 777055304 687907270 926650364 581632866 915901206 392512985 775602214 584339086 998255385 575150869 741559853 550902093 706611087 134806205 725386629 698325451 875990454 528410481 901839299 531464551 716194661 74990664 710586992 622444280 636813731 224329266 423687874 420756568 858734529 351217112 867174371 524832203 887661754 130777177 445733987 177731876 807531579 791134914 931876527 497238446 868108023 927819067 977348315 400928904 454330361 289523745 486293919 18627931 226183671 299164313 907342259 521966453 714434452 879936190 961960932 751397094 886081590 42059058 834087346 319172987 793997607 481141456 685023442 503440064 724779568 201537563 915749296 96081192 997916942 923867513 935756605 330929216 984468978 943826480 977853306 173639539 617014323 425644552 453490975 552302997 687635332 534300758 918110109 337848593 969972075 458757424 818046672 369827848 587650905 291455853 793008394 585651175 851038115 3324404 293079235 190132310 869754872 909886797 916246224 979655059 984555788 441051575 677786567 795676904 833659562 401081864 706454217 690133528 961210026 42602125 189093706 27913359 219702113 691534028 736716514 816358553 915578341 965122417 973189019 130884381 257930818 510137461 617953227 188167163 804926553 99861156 516330855 958036323 958393293 615094862 938942433 186832090 319827048 39600403 256000880 694948108 966725010 602869755 860409757 309456320 741856011 700309175 769474437 11449039 733590255 656349294 971779544 473971324 998152975 762349744 808459636 651640048 945087163 469344004 808062555 213661469 539266424 465522630 711093280 714509679 886343541 408544176 912708657 714428460 886727344 113642191 553846422 108315022 615877155 454649122 977318042 434184321 800508226 101990953 770080395 722875107 880363895 423554124 793237708 348437363 748423864 18116344 255488976 372131235 819648816 539581576 540188706 133431711 426749761 307405532 385799191 119078397 574946701 336953758 446687492 980901624 997277809 397487435 540597523 329197644 527524604 580734628 743256886 598891057 964617009 731221504 864968113 983148522 997158236 206064158 953050764 965871170 994623498 644281685 964319999 308824572 941424768 212789805 501673276 460370553 583094448 598873293 665942926 752840393 977210033 456880678 649713323 77253964 918540230 496090782 541869772 4330318 57439779 696773398 953832444 213991584 667413213 848237192 919854825 74813458 812136662 321048615 826701259 842835095 864237274 153078519 953380924 977425176 988350488 444806924 517996075 654815026 671922146 4803134 737704996 678907386 857410919 732082834 791000543 476166558 621525280 434528551 699087909 419756123 480301102 583835422 874390950 908068293 970488294 627716792 866459040 337421247 960337094 591480696 657135715 771356438 974465344 147623960 260063713 678733518 925913204 856355829 896829077 141928409 736302182 579273848 990819756 205137734 590821000 152918545 215714625 350684375 827926694 653759219 808875450 959659983 977293762 273313718 746234133 789241853 928240285 52354014 169299209 210474105 959010774 909589996 937414623 677359256 710889789 790767917 851946138 809641749 854249266 221375721 575988116 820866294 930342031 43461201 525939620 659416788 933429957 632955235 803000713 814419112 980919946 900442695 905676060 253224351 298402698 657973142 870002418 503618151 760617706 315929218 944022351 430775374 737818565 705338851 754425481 226833616 863792345 112611650 393439612 308962613 423277027 919344005 927827946 568811638 876306268 700213736 796889128 516529347 986337031 515589564 678089197 527799379 903116578 278120885 328848097 589143835 949381796 745733525 962413204 732058412 992599980 607677837 801900078 994671544 997123209 266070292 624955357 981957251 982295179 825060035 909147946 26048030 705417257 916064225 970853790 966381186 987574546 105167951 575042705 290848537 410623604 880971701 902565600 383050289 417690714 989861695 995150041 126800100 138746332 96965355 452939168 247342 669557246 107852390 254648101 844360234 983537273 373046878 421101649 218959210 575408415 839778752 903291251 845357808 868150673 633962992 724949183 545283668 821450012 57496663 824219697 403844191 903661653 651862983 915196307 822796014 887202462 689134579 916359224 671938250 966210384 87574966 910769720 578191667 794233988 962166 94287895 682472484 980030278 605372003 851506842 686891707 800178534 978273476 991793177 954987194 972899426 702384682 747308676 564062085 971224688 468553538 738134136 118551247 624231355 723551941 911707267 753193513 769495886 976133728 997144097 585260586 618144072 223508964 961368078 937640930 951154786 905762019 973980449 177914801 482733469 315873508 848497061 590057234 659250823 232848460 928522489 975349396 986955909 595897811 611603754 461366887 892103087 898570819 968544878 399620447 691106986 633599486 735474951 824120977 924119365 623576265 715378145 304137310 686969967 963283906 970014730 594705491 887579343 835710502 969522236 786182651 868481006 247001151 851862514 725820751 845319767 280096639 639494688 21316880 470301833 920270042 938401841 710456084 986507537 222184748 288447421 803154330 921176605 42775727 167400231 133365260 464061492 614661570 871034939 57264597 455545286 985538856 996112722 319010613 717528722 522696472 822640083 791717992 896641214 164477780 594598020 755279105 929915460 822111919 827814867 534102349 709185285 696832507 928398272 201917471 382230524 143011522 398320973 941718609 964606496 637141688 895819029 529215253 973070306 108630761 688185668 668304904 717205676 467157707 508240151 425086922 577163979 996978565 997530405 152894900 219235490 310545407 320537607 376995408 978795304 24944956 495110225 977643153 993869503 689708037 758577582 806345671 929869147 124319440 570740859 297541274 913811662 433285591 966045421 915694791 996979088 747090670 894367177 596536632 973526406 353057732 988322254 444387140 845320435 828592134 907455533 424832234 649726759 963894648 977241020 291357910 367406662 52876307 891899885 831475843 880954158 325850784 967508978 956785774 968590698 956257602 970535697 283146967 457635886 891514898 937942448 797789383 931088035 173939733 433648544 667289111 941037374 148713704 738698590 239584266 779533202 963112589 999163549 631883747 832021663 895383922 956205377 627721476 716248516 521024366 572268884 961849336 970484211 633459092 971592135 393888658 711116850 423240058 870395359 695381992 862963066 279272403 723256242 840543504 933863708 848428656 971535140 507352623 871077976 649865702 820721028 473826009 497960763 746902730 852152497 792959011 863517066 172979457 618160015 560254945 702196397 317728761 439699232 145361643 922471096 57925130 578568273 98800188 625262731 831344439 909679657 789657502 912288923 980784465 998236476 734525349 745117361 516476095 580896971 336293795 380783591 192320858 715039441 98020244 114606504 133736526 864337822 175956360 744396891 751161512 832784610 820909709 974156914 169499671 326733903 998348793 998882205 356424688 624828755 772884841 976461224 398704263 632690672 916255768 969270779 87728162 161027829 592476696 802754538 731440159 892237111 951649427 957815643 629974607 956747651 479085291 798107918 884415475 962167912 10551696 377646882 284766536 649959959 572808844 905552313 836823987 873275645 495081906 913718373 113062161 270033521 108365871 498287260 650948018 811339401 490070482 502124133 639979512 939739607 306561579 609270953 441458935 486032316 677528117 952520405 631070076 843725629 657567152 683215339 905153974 991714375 254991177 477102324 572149100 736483775 250122093 706393340 731980510 969641358 503158026 539278278 403913326 757779990 948642430 961711073 882725931 933724957 58833651 149955665 725824603 904256090 247533758 524144523 345178296 830525104 880562076 936509200 953627878 981515366 81107721 950522257 230140348 406679603 391487597 900514153 369059714 804992966 659561854 876379747 855808192 923484892 55822291 185072207 357801962 847821399 396065577 638369028 890941685 979239774 30439693 608740097 376548072 745253179 825063426 912503734 402093371 688295607 458426291 661580361 454328340 945322964 408335304 836740381 878217847 939659606 41650424 557527955 375746841 484057270 267564225 746755672 985457296 989450198 602740900 866639919 632527178 788615161 84011369 941860762 822643431 850715563 663671840 820760261 447728306 741231171 180865766 421164180 913533217 991502139 700354882 831164818 756758262 901224860 775488728 827121561 204286051 275484510 824522079 945143253 315500277 645201855 73046010 393278137 734562175 755629854 216691615 802371993 522764469 554838101 124177548 644563851 530618504 833511708 898581454 979257294 304551973 939955767 80030918 758581154 764223561 933132919 518414911 800537682 115567675 337551283 312490833 800973973 776791013 960095610 291603124 538802040 105770786 260275620 642136352 947949889 84053250 862603567 391765367 665030497 365083850 963656687 121587278 565703842 923515060 979814982 380842930 723467157 236190971 941227342 164972811 514422043 545150532 790951766 35615615 80030874 403264638 491556215 38419814 419123646 535175243 673010537 435179059 534052564 34497041 652760251 476223261 488484001 345421999 549934003 798478375 930588145 354917676 429406682 206260340 479540536 757912018 888606856 744167222 904226469 419299961 740463017 837895498 840580461 221591458 470840256 661942887 683269965 439903404 828079108 40595485 877353149 60445946 582334655 993143474 994240778 87274262 665265082 376257717 915819915 343863395 401723919 222738116 642581659 885053492 962963779 964333728 982805136 297011716 647742119 125123666 177833811 1450556 472511658 254540921 716165306 116515201 991437861 724826881 737536974 1738204 174934799 917376212 959674920 190660378 525783365 104765899 979095805 691483129 940894389 731606043 931989363 897015423 910560843 650218450 906563469 959042807 961981549 951999404 990649468 557740251 787722508 297251594 753065039 288735825 692184350 302232057 345382477 728442252 950457503 263242652 541012260 996586746 997111980 115417867 396431307 320527326 602669605 196980168 545333666 700152378 784205806 786704760 987521650 604200446 708025804 859834371 917567622 606949252 997269451 919420324 958383415 844606272 944789873 543964073 681791834 180509734 216873470 329832686 771949269 392477686 904078510 796302325 872273900 693036984 967225049 543949504 832238009 859892402 873684348 857522252 959697178 3913677 558850341 179535878 378598351 246937608 302931937 483220635 814759319 934169611 985819431 59247452 826847545 756576418 852992101 76965822 962608523 800830352 857413957 422733064 675038005 402482211 458314195 471879641 948506553 173782402 218074257 829231758 838571759 366596728 367860344 777795605 940282294 275128654 739448919 977928357 986090943 471466869 760537186 10121282 214175246 119757359 562356798 190588115 667481979 17146314 132640154 726968502 994855185 935638206 994556576 475635022 534693147 698667228 777046912 166680494 728583356 81371006 550718779 137380573 281304467 950090739 989810806 634208687 875090731 450250969 917254680 64441689 324854965 47102701 510387859 591606796 930727518 443668320 620674744 87252169 842093321 908307927 979167896 420947991 730375092 79180280 601243662 856578964 865286111 629424631 672809674 182495509 811004720 313181696 900490301 418465731 483471536 96445616 146834781 238310231 817026999 15806568 736797794 181849711 292215362 284609191 973058709 105885592 193243864 659908247 660242726 803031527 936643884 965063454 972263526 589351666 931310056 278585143 701686410 623753315 789708780 671919504 773605510 592817157 704342834 118069235 570624877 229231089 718035624 433455460 703240409 484320081 558443524 123189684 988983575 986268632 996032717 635069628 890348008 857404420 914839190 517353187 519390881 746622730 983140361 530459899 810321569 11693718 78910876 794021535 978391048 825721676 857060812 861701436 907551611 624279196 835003687 33812591 511581159 254033114 264357576 108561496 199502684 60054237 963154909 272388524 663050779 771626005 828930734 549550499 557689711 354759322 439360878 624622735 705238484 526390927 793697884 494363508 828860875 978711700 997534450 581039280 732252547 502656607 522925727 758850579 888767690 55233300 167695968 343400211 443184630 877701650 886513188 341491721 624830400 853452296 877543168 401976118 800272588 549123989 686685296 925134667 979569382 282545325 444953121 234724559 477128056 915144196 967694753 513922063 776852990 44652953 431797963 169423218 609919625 317748200 444641238 716382403 918882742 160647582 379318249 187767220 859135519 778502600 892220316 675935290 939545787 788444335 983885310 38453830 839595260 808726973 989607664 123151662 257839894 906663453 933460920 340386707 735747223 957893401 972923265 328376127 991768701 569920675 949026674 670495321 722537583 37234091 997926791 465069512 684064212 780408644 996982370 405465603 631333348 229930735 886131463 968596105 976190483 468527676 541019534 584251915 829013023 110587591 528703146 688533495 975776964 831847924 886060310 630742221 873240466 220999286 549671132 278679633 341135410 5793327 350711041 857076787 902648101 629865638 865972223 469904987 850774439 253400586 624092715 439494350 966609163 971748730 984083368 974936602 985972416 34523989 619086675 322575497 659773963 830145564 929520625 30433939 861454829 727909177 748366822 655218193 793698273 942834644 982831760 417033604 745578091 699509418 904846746 778860045 815716456 443877465 458725888 562047725 642904248 435231487 599827159 581697564 817030422 113877962 905191966 477600768 856190395 869827775 920285702 657088228 747521544 588901466 750346030 129690178 469702248 69981217 903139996 39106652 690131124 910537395 981216660 203063828 547526535 615416604 878786601 859828638 911622294 403237810 551368538 451144285 955602890 639709158 708176739 355522913 620331342 440297408 890268018 664281456 857958732 506898804 577134921 356146125 927507077 278387194 415855951 178994461 576323762 798214693 861212791 294847663 452729772 221757668 603239465 142610894 201081612 576815935 737950711 114722785 201445666 650635064 864079676 880020534 934749947 544351113 757619250 721499096 780289163 173112947 249619530 541126091 585342897 866946736 905061058 873331164 908943389 952442107 986885940 829239008 935114318 679525505 979586023 357035699 614335685 781600856 976093773 723520309 757002955 860229731 927989905 16783494 600725526 529763347 766558300 528813947 953113493 406916257 957663595 717680852 796866198 204898269 748065482 617350770 816303862 591171610 864829628 352449275 878000499 71349343 268925833 78468469 477580535 732246198 893334209 754555734 756736736 765915440 912260000 226027144 413155212 69767346 701528984 418761432 573272501 455774740 756841337 84053846 445835685 265418560 599475180 905349389 927870113 348362914 834519862 52972451 949944091 144959377 937090622 104424545 895715590 810915371 846379891 151417558 896229933 744892677 782525090 129208008 851807767 960822421 992888288 136158939 598362801 708578088 841000677 536674057 932718390 913708908 970747156 710598077 829878402 616050480 645177758 861565989 869741520 305840795 503173708 350685803 602366314 701518185 918706198 108777077 256974966 920772949 936042314 881839974 901155323 888614465 960911714 980283521 983951852 855988928 963688206 3536415 592830464 503633135 947168996 39258240 866629467 386477770 427763344 4810335 179804710 420748708 543280686 76806931 509773316 947120862 955314345 997681123 999168854 395842219 684525284 410656008 745290855 734545586 796564558 846385335 970197812 332042323 789629512 211503195 300641938 428279176 857884891 859499949 884630500 526850981 689998624 818793604 938680256 122413988 905266129 308398802 387933543 715835333 781392458 47052400 647957384 558475909 673487380 450844875 865429104 321096497 799318284 559728790 940416504 132417865 595288693 803250119 837102762 57782913 827712587 817459617 875014686 897469247 903653093 242995750 707559021 114409143 235589130 802091634 976701322 875297091 900415439 232351704 827874743 250946001 573924924 790880640 945114609 480530424 874143466 158078130 689226407 893659737 915986311 656444067 946210884 407638987 488840192 477260061 778875032 499153715 878143980 215716375 263175974 687046817 732194058 530381705 622127218 676554507 925462501 789828000 909926183 149675326 714928642 69809862 746517274 947642749 984393210 585198941 694936463 677116596 833528560 168531297 472202432 336220476 472128564 178025567 473245816 252109559 977479992 773355743 988817196 298375551 623885625 205676158 757728991 244697764 302232684 914603313 984926372 548131474 702123190 356877240 572725568 294219735 925856254 694793373 734197336 259960991 924407912 474136483 845007774 255341669 318381522 77320385 95245662 973630424 978149291 458231666 768208148 761354773 852649729 805891655 837048882 995292199 995612981 573300121 620326506 684704008 753315640 683900452 923964370 313502075 604002582 538290848 777829994 519160454 599517775 591581358 761169190 578296985 945463889 749255102 759264589 114840172 281079377 264536676 617429798 783706136 855465208 165234253 907256083 907552961 933136617 615057815 800089447 258797932 380144303 738187770 960402607 658231460 906230356 168390921 392660015 878580420 947960989 304255326 868886160 263781510 772609729 164499223 602581248 624698216 981891960 363558553 844085176 855359050 969862360 487366415 830113442 993014967 998135327 404695496 782929186 898023013 969413798 900142859 923202975 945974677 946040240 585548616 877554603 754150481 764577518 282681287 484678480 658019490 892772997 359828997 666852788 930380631 976020723 931594220 943461619 714557054 944524941 278010741 440117226 528172672 614393155 222023023 773570084 25956323 296081138 444859210 818436653 430373687 847598145 678226707 880789776 108839537 676132641 443963039 565024284 232939433 687593611 128171371 161399848 931497275 932613565 35499683 428699853 996252668 999260611 675961807 908125734 981510739 993243354 440828524 466833889 873005084 973869212 343760898 364832330 379677493 642752152 455785631 533807446 64421087 146918094 659184381 743534012 330790993 421488877 635632001 830377967 155530486 685286120 263636937 751453383 259314228 885530904 386942649 532526998 821125024 906298903 873240239 895491282 886384598 970241692 95389534 949306255 673943873 828383607 820852755 869801053 747288300 747564705 954542843 982095794 216470652 990470631 900117798 922119292 50180674 542650966 35218676 389198884 364119143 403387655 198743818 491356615 38013779 262873767 351362257 958332494 340088770 749274233 995495506 998187545 193246951 754127171 769881411 970544014 717137994 871611156 600903655 804781757 692812954 899680755 957676600 971188345 981176426 986904998 785849655 949478846 362640051 383884816 120459122 735379588 372383918 723929070 881550737 945642230 356043379 713694440 904315771 949693829 320145366 697105068 215405893 397812990 925385604 972990454 633431135 797950012 395441333 596580439 216408744 954676816 431785204 987514738 616941678 626463986 216980239 605423368 204838678 416096442 47447109 633053012 773044639 883736762 113931496 863806817 597581388 994480464 619330953 789807551 418972027 891962754 409142811 776123874 53413585 141739258 918850741 980259980 249594750 268837878 87144557 263128736 100033971 792424915 315462913 350862105 915793733 958286418 680873728 875891627 904075945 906883424 881417885 924907787 530496791 879198423 25151607 637605377 232681509 940555778 57213784 491837490 940703883 993479085 711927390 913278405 149109784 391548520 258016463 885453037 343264748 697365046 89223064 391733170 415836855 531231191 323240252 517394305 712109017 865362066 617077958 710596582 340274450 362831502 640344106 961347014 648190767 783847880 635247713 689591632 640407913 995215539 913255258 959126926 815257205 889320472 71663697 720626938 355352662 617487913 204973666 827424376 821888664 825685052 278244692 645187596 300296926 645488662 306412014 310601439 542876447 795913384 209874729 849637334 943897524 969428745 598461023 896754511 727039424 882948056 352742117 459740685 507134353 547026200 61635624 510551711 379568433 403832904 233326978 922289748 365263937 425858972 187173442 947431173 831528648 951351651 565350363 616066255 762249320 860355893 27698893 773822414 392434516 765264874 671489813 835233359 76786239 517144596 663204300 674580083 477812111 763778973 882764441 949424433 534470606 844141931 71611677 600672603 370315460 593139548 109836066 826229391 21506627 644960243 688831330 916604559 703780506 876577292 425481725 659162516 448151115 899305387 70729240 734033163 325220365 589626319 612098906 772926278 323550230 664110956 328058633 770810493 365623086 439706449 387755105 808743567 673014443 781111590 142397631 748610633 556904454 759016009 509669723 973391721 435250317 956791785 752702352 902342462 744217263 954208768 397952526 671081566 159268107 814309849 32079168 644407598 470695697 866151980 796357224 800669452 536759928 833233637 210414116 549459776 729284834 766093876 148681669 966987313 89943771 660816457 332546153 637184718 275989706 872774653 830450269 935780616 500031488 596277520 107082840 378812602 57480390 286683927 908299964 976410588 217510393 543901816 535236836 901729530 84818549 708724416 109672658 536912269 992516465 998533691 228800894 246087793 876133928 906967936 28397405 601911548 479927257 943960290 816630127 842242299 16341910 54739441 358741360 959264278 512497097 731449986 42221022 832282579 946007103 969852602 186192114 489466748 368148259 878891883 866319400 922920821 203544670 392111044 441359113 936961013 513642699 765968305 605500938 877397136 191558564 687419564 471037662 870189568 926760625 965341829 992567877 998807406 1686699 270679631 332848986 538981607 705994691 982650178 307274233 454221413 193156759 277545259 974509222 995014473 573684027 771142440 491442358 920416087 10153356 671521924 678063317 720784225 666271865 922722223 157247673 420524289 873083170 936432718 704599455 745439489 257334603 741684141 81329356 209425210 836976170 858607731 488646556 906211587 742617115 754100915 995195392 996079509 317146274 975329427 575835822 583127753 650989842 737739471 738684258 860621964 35155403 861501027 580626083 671794107 589372187 925246516 686075308 826217699 67307969 491486683 141525356 210192459 7294949 133900599 548209073 891944115 88664014 700183507 451907522 469341924 337255970 428902203 469976155 503351612 995915031 996819629 139404476 367775625 977355542 991657017 95232344 765864701 823656428 884486562 709823282 995150147 730793140 828342956 350339287 629862397 814921767 993956194 572897001 910976064 656929591 847777039 133862835 398038673 246132835 411504908 770514505 832882926 916306293 925171321 424894411 791412948 379562663 721372224 616994374 854560846 811499705 984007888 355489778 709586719 370816000 997035752 865864629 988479121 65059794 664349160 519640188 955666360 365079840 626031635 643489889 673003243 231105706 447482395 60150776 155442215 635524581 907262619 795502301 932921952 996114464 998647181 175051178 367067963 442952086 730402090 953904687 974581439 762796556 859678894 62130643 447211776 730962008 911367030 942468402 954804040 983422199 986161279 855024648 910934073 341931386 778380945 943159205 991801837 148915938 407062985 609512839 912614598 199771515 930713536 181911242 983718392 948431710 961589817 940558362 979110512 232794089 814328691 482195481 660485152 920108007 941626962 912252515 983307483 311304613 950205684 296974438 719605951 44680936 287026934 568563508 859112021 438191787 648653570 75182592 791230547 204072122 730956059 776072707 899068416 304617512 774923322 802368225 954676459 59505019 680118306 625330186 821960306 277380078 506164698 35662657 156743585 217528620 446828206 791517200 892485197 893078627 929795961 46256116 384595112 606050012 815405689 953887755 958444581 496775986 835756012 611417856 683118953 67540170 428097962 453469775 870542943 561676205 678331523 500440449 778866774 278429972 555475686 373008004 713809958 708617904 713851048 46788053 877749955 903315657 998491404 891096515 999371642 489367417 649821219 820495309 959772998 565166542 671085631 546029387 651081969 962149214 976874938 712152319 969788757 947184959 955835937 399662007 960181215 23260681 92902778 644208044 826302530 513157934 580643218 270237329 758325960 976683278 976860020 34887400 928613664 423892305 610651373 43822037 651104484 650503990 794073995 148799596 732030119 785159421 842027079 669909170 779969620 82099760 937952280 949561807 969432853 693944507 881723507 130410792 628148767 823820495 993568683 776959405 880861430 857519471 859027571 554447204 978791238 653551105 718693537 413578643 449910218 618602344 940882563 355407805 677385369 212219728 972481791 450396447 474694240 194026846 844746075 470934599 474962590 666472516 697963256 86974604 734958003 472370516 840202866 379342741 777839257 177916554 580199828 319380951 534579181 764269871 990531665 388920092 955915693 975582407 988853399 654245123 986173348 528450806 688280805 113142400 724196054 964766701 983586642 827770406 903244988 556279960 786185774 119343033 996753852 187499040 934908761 554782738 646258124 615753071 647510625 796347979 878350906 753353381 891906933 988434332 989094303 281292681 425211754 723956122 829757356 189601937 303961397 114317927 403927968 698631410 818680200 493983554 782759380 718356431 966045122 889692475 934013830 521727849 869183918 944218016 949663271 189612054 812177961 772031622 808427420 13882810 203257192 880287605 931043714 996367730 996918098 238256656 503223285 188362492 222632403 946250677 946750300 652625333 986523082 459751808 682847311 948494460 983887430 965258682 997382604 561313622 592281591 426568914 775561882 339637198 680662626 62370769 210076492 347524597 405572331 980873838 984392276 539437216 683419858 992990762 996597493 604283792 610041833 292803381 954620290 669051151 850020660 79277022 481949927 514653501 697096088 732677048 985748993 837529668 994918977 787369511 832886658 216291971 295472232 120968508 162568656 205853272 388935837 207936251 250311893 813730630 960089173 740182583 837899288 856286628 910676883 36712883 975141475 548929378 566306236 24443282 715838326 427810390 686553824 351233188 687545923 12152528 774713801 233610289 939413617 635004402 688218261 88307544 715590379 485153781 512503023 621078346 850092635 145767885 278409106 830050637 869983774 108942834 181430418 310621663 683973046 884992259 973785494 178636844 884341744 765211377 988517733 777345017 994263495 33829318 533113988 41568527 129586617 801210979 971702887 177609913 353054131 321579118 867617604 470564329 772871155 923959981 941725951 294119369 326705967 573181740 911505353 96826384 637071713 322045548 602096530 977875932 995420106 650665880 738451908 323320327 441748059 293108937 684691736 14503179 192184241 674676702 708479933 440330328 844712443 565411845 704031257 241004296 752966020 818717075 878954710 894607589 998478962 123047687 245874356 651201117 895672360 357465292 701684764 942689141 943548984 213534394 525015785 805322922 805787883 922629562 936765504 851861597 935293908 882112463 902736581 524947061 605229562 983690751 987431256 399314453 411850998 131152582 925662016 104822902 636853539 536836735 839532858 563987084 959119014 479412113 858197026 66281507 891091995 400170158 760045890 652328894 812972334 231213908 592346341 109346194 321025290 124269000 182583575 373542464 829172175 597647543 708684602 44924402 57852333 38077836 713248187 578917321 848652340 831781625 959674714 67133413 295239249 815200392 964459175 148686216 844243969 279213470 889964419 399490271 523367717 898960732 962672636 549480049 672351585 398353596 784440512 148655518 820363017 302588680 926467962 30025344 242945471 891107486 927065691 63575324 817223400 249971120 413762930 845623272 859077698 221253786 528072233 644296254 939671190 272095518 342628257 53677578 332178255 302979168 536180007 700810984 856738735 201887864 564512385 59560832 719170072 422723165 773584199 241552257 810826856 762902607 984084044 979456025 987387412 505778671 639415636 355188190 875137570 281047007 774300545 394201933 835926611 210675352 887522266 873565550 952440047 398385692 475311491 312520502 369766832 342196951 549651651 278580851 644950317 415844075 620576737 125507773 536895408 307443525 415283471 100172619 908927272 517259381 587247060 344143749 820541054 904695352 995973419 804200604 816379687 880536214 975281956 428091286 521967670 663016281 915269573 439891605 800786298 629072721 893661508 315499666 667099640 714750807 926140250 868309458 907395134 689482953 872332437 495480457 961222543 497976608 905550448 940514877 977731163 895374153 962585327 237228124 997329384 758758362 907720052 713075937 786102574 124111119 574607101 76871662 97720937 473379594 504966696 292636153 777755274 210100166 976689997 922600628 960136681 364254958 634827891 939957104 972506869 581706152 786625708 181670298 863214164 488395835 895098965 625590157 678664896 827833440 969684100 231745817 433942970 692430772 872805780 302179468 742476511 568532555 782937408 966941938 987582932 359623937 885570586 602243130 843765758 672888357 739340218 764096405 937474654 300020599 972239088 685589360 904003226 178369129 760877020 719979056 793629480 62584789 480077065 7928928 970292434 871582915 949324635 775088743 993557587 720594650 840842539 248064178 779137105 233740184 679785897 716353077 907604709 664901695 717829573 103861004 601367087 905622078 950543024 993868840 999017647 919322658 923546460 414813996 637166990 803473277 915109651 34688287 825494101 534532106 691190089 818725705 972177463 397100101 474588021 291304763 342664193 109580713 500101347 977007435 985812047 994638066 998610052 753909548 770225624 580931600 992858380 615116677 863671448 924459872 948017503 596087485 763485187 416073666 946149203 435654067 803822539 28798462 637546693 537796670 625059115 841469294 912294771 580292848 803952821 549873543 656922313 23876564 822809437 657511225 892098684 756301902 909432579 79695068 276035092 963449719 975893552 580123120 652416783 149759410 576916838 952732684 976296356 644612004 757082752 683298826 798626645 926025241 955569520 478186985 791246786 619134420 812859045 997923989 999358785 199689469 874837849 76380826 200927909 934185135 963911419 165352659 358935154 197684327 489453050 231428207 273736239 468213376 772370787 4320770 49692063 995021048 995437076 184683750 215869480 432191903 781418040 101665269 488628011 864382472 911896762 56917542 468712316 955945054 982026953 58604677 76832770 753910675 835962182 648723644 959394502 448952015 587469644 440223251 892157363 785948744 922048997 942371583 959965191 468020489 663128857 229104240 304461068 935405348 998829025 497012232 823472678 772108258 998619002 153675837 198048579 512155233 732885025 421789339 673027232 482149394 915645906 335975196 878249970 548770825 646763613 23885269 347666281 610183668 802114445 808880991 810984925 242458494 791949326 431680336 990821648 193796438 444544177 558066055 917820845 683829097 938786554 731769413 953631442 346495293 681947363 916961777 977287943 924243299 933374687 628518334 756007136 743313647 779459582 667340971 753133022 346776189 657963860 109324819 799121764 290772513 546597777 203536591 634648877 526897262 732196092 267141860 519345676 623690914 727356082 138747913 220719442 278442778 426393969 702615058 826591572 697311451 970953171 689435233 937104960 574889405 976283252 573418601 994678332 465032443 954120077 846047364 858529322 44870328 57595759 61061149 93699688 534237824 639669041 41245070 567198000 276697841 691274993 713914605 943756362 538099381 740561208 596926712 827628512 168191883 487749260 974414275 986285163 927940550 983364279 979420791 982421821 524217028 668479099 745470451 862284682 75147938 804623464 637644848 959265215 907371033 919769934 301693559 498892453 439553564 757180236 124370070 786394959 673950402 794992270 460473010 947102213 863161206 950842489 112847419 594824617 978167903 988749851 808401018 861084861 502854099 754691432 111325786 623106297 484743089 683787582 849068412 903037995 431406090 961452627 174592190 989592814 549508997 740012547 87973990 670164066 169576585 963533481 155131622 434401004 37296185 546154219 516300490 662909871 506727683 649036341 434567430 930041083 385638779 708705236 361886449 957613451 889850029 902591755 852200386 953807748 546805102 583885417 110575105 785630463 584044548 923072108 432643997 728032509 784361451 979422054 814820371 953605592 74834210 481812610 313603879 715327359 414219363 561830022 833125530 966557830 806514539 851347091 948205841 976688326 623771261 888633647 797583958 993165743 418084631 683237634 601083659 984669571 271813835 937234837 785891419 984424029 273518274 416762062 210442321 735631357 554055992 626316191 896044725 989717567 799536354 919746096 915656131 997975951 799931833 917832241 737174749 927310156 685879280 956765907 212409697 868558342 196947493 385222593 418807221 884107304 943425103 980376218 792313547 943596992 538601568 793203422 955473875 992587638 319064011 864397678 120844326 527810813 402790431 414507322 877091638 942038962 557953684 925343616 972900533 992226207 403192518 484629196 90039049 174729526 7022181 232728799 409598189 453054294 761371974 949131876 765105154 942713547 688716470 884653557 743097847 774860056 375048926 784602749 586020228 819554716 653003167 795355651 408540875 568559781 526739272 862990500 89657209 359116620 210458433 599193495 302275145 592003279 94593604 279263776 623126675 799201405 567860238 845955596 603537234 655658218 910163218 989515515 453644386 788965420 597748719 630514372 370540823 386602727 208190392 222905741 83480738 664357406 9540295 40886791 842795385 861500812 945023394 955765998 709395937 944111117 291123246 860163855 275753447 580688561 806681244 953177283 617578087 690706613 364198850 880368515 450924405 892123028 53480917 529726062 993203092 998072032 260833979 778783899 54690106 218103346 903714609 940656756 110596570 279839826 539431158 907804978 599646433 682782534 841070420 940612713 197758282 664060298 640686685 810187028 602820299 831700590 675791121 973010866 171589641 239526005 470101564 679384224 649115634 741224659 494978576 840742110 944003452 993534111 948156493 950776230 633760791 988300219 275446150 644669824 478907368 983425827 84585596 586362161 17997988 312989391 30294844 740191183 782914274 953021188 740128633 796045696 842244464 995246200 853165902 995876287 177894021 696838589 288565555 491564421 500920101 750744949 632796912 862970082 382443969 756800479 87263700 259923927 911214262 935682108 327635960 921714679 933478367 982730678 692890001 867279961 211100546 306694343 557164063 587285307 444674396 821671884 249356511 518563457 809305527 920558718 831307803 932362189 187422047 349014524 45939275 393286280 80807142 608530574 112505778 182654360 606438261 832661579 738517037 940029019 699987868 975635858 847404416 959467764 218958373 757613430 458554030 733925241 686289722 952289278 449765850 843487695 610330688 771807999 711012460 809583939 548544621 887977620 411594017 638168245 281027580 542820823 689914330 851409027 609940268 637808062 477531198 559649108 412162944 729455356 163041854 731727761 134428008 584960551 785812771 817643593 7012954 989475468 397657902 945780238 943775067 946880504 328983613 525371121 690306843 793086220 943601751 980596709 394997774 488448464 683178217 743691853 360459459 752108531 646559739 667762595 280429875 423150187 684413202 863287774 125972759 521450788 715665902 997601996 216883054 827829380 410508559 878862903 840111419 990963192 15519708 342443414 803543621 994870959 374550722 466913707 981504566 989612056 237302512 537939579 231862032 575459659 132966153 392970469 136064415 501342461 923374227 930771421 863224289 978972104 498773166 796361495 131809686 776065163 836603582 914573986 622771025 944186828 573785872 789348992 785390316 820608451 403666949 949344188 513963686 922487714 203296440 454916120 333702334 406649803 216746940 386810158 987978390 988861142 858931182 965950691 597475919 997255588 158407558 254621990 92805975 214572525 630581689 807038348 600641668 803934754 911520337 980646914 893606560 944723802 985092532 985849137 637591464 870248650 366379494 894451572 805565647 883928247 269949407 882876428 201621966 317677217 942749356 998537403 362805304 574691582 540926290 921397626 28188994 60003952 715633683 894826155 400032122 818345465 720581104 988064192 996054210 998428656 929071037 984833997 714127873 811741423 220831832 227064145 575517299 994629602 848380664 956681415 592015990 995696372 285222567 943577252 613875904 822010012 582835322 930049916 976762774 979985551 683528271 850219500 720730314 746017650 260157433 592343522 712414283 846904181 225105439 416281001 441353234 939325725 796596714 969857082 602894470 812942313 468184635 763327966 311177033 393883468 129226659 834817837 872714490 916102897 352529171 626338045 633022941 838428665 337400612 822028609 649848356 864118724 424097894 743256052 512554058 581046960 384582819 849664977 424102807 836727342 223977581 849397943 472769226 872225337 459618466 970105173 880016547 998035323 446636741 467339721 474921497 765735930 303677975 766876080 808569545 980503612 945786132 977252495 758560611 908419630 154633758 214590054 998428796 998465648 970969876 990998882 429884424 562869717 455494196 965145161 610728785 787253475 589198269 640984203 480488538 816197547 525843534 828422299 26664417 818360176 913556015 994975236 315273465 934319085 421704720 564597036 160468078 169712602 888923096 980631423 777677315 883389267 287339378 731380966 593345617 783520097 730379123 862102403 982786537 996607692 253629219 788161354 351249658 765750222 131800740 475074897 640115011 897475639 881364203 966638788 252287423 971660449 319121716 813247505 30232141 904597666 178831258 503018133 912241038 961722796 546201669 628136770 761073398 783694077 688080200 941071439 909639984 948031933 123406963 349858169 776647811 830196495 143974397 385766625 418827955 907846464 420200542 803541874 963904022 973966061 124217481 539601902 984080073 996942672 528388608 896609985 242842995 548167929 75062965 504828329 608438510 872072010 606524968 939050581 170201194 594592761 620496388 644182627 670229467 754338332 485437264 988583337 640757775 683935210 616729477 983534509 501879936 505380863 643656701 649175076 358790501 670658474 19852275 385346105 973526526 976914707 276893233 917647046 288659591 871007124 383033764 683457648 769094691 940577242 866915487 942817473 396552525 719972334 74233970 470079100 94379104 694366911 635787945 768110737 708367780 952419799 816175133 977349806 835793389 958151142 342917423 777976428 573658056 653178895 7169825 241330117 788807371 890697454 650833772 683289529 556103468 594745816 46558602 842761611 648233629 721900246 327940819 997198937 282177907 623359906 247141143 380141652 960448914 986949011 53893304 619102906 792428864 996784924 177235218 397018571 426892731 973941627 221505932 944087828 754976533 883309421 996776167 998027176 749841584 885587614 17424801 114729969 927900562 982313631 808730641 991918014 18808975 465162296 735147665 812435521 53396988 177075585 891031257 988432046 26497178 954704259 629288289 651330966 107018599 131036700 231919897 732047129 847567138 909437450 842325946 871494622 512031263 766973638 294007713 307502870 719785707 848536763 353720446 757144432 358635234 647939545 9742419 945811922 379326518 979005032 732614616 888288640 441483382 618774795 369723622 689646609 929169738 950136217 266898920 666753754 882737491 977647736 910538735 973597757 609193134 861155391 203824393 927744821 108507103 428600904 988377338 992735393 909113634 951896570 543178183 862251584 938934671 985597147 42148287 938097948 722771927 835293314 198287772 661162117 926783621 959029275 269489518 683215802 608849240 984973652 853154304 941010087 551480203 952192902 585803642 950242869 70392640 883901102 215859179 979177152 769238073 807373281 1862018 590185853 751745318 973234010 724877500 775180456 565362610 796391924 316653941 980558843 689636941 693895453 905623403 912414384 106907116 686978561 57643006 333980620 344924595 569918447 172950360 409133653 507419012 566350471 433287212 855612230 251686296 562671689 292808173 360007330 856531095 899452006 669491015 805073628 703907517 926374778 808161515 985516168 692981256 858342885 498569005 900509425 284817660 898135933 806251875 826114729 407679568 690636226 544978553 679260559 890363658 994409904 679436084 732037848 150628406 849306941 405459349 549512242 271301148 412414423 110219852 217776830 303816347 420335079 700907397 816825564 50704855 600172968 807623670 949357380 325470675 632969240 941377692 989079225 966933644 994965179 811709156 890495048 907582707 989432721 668057922 676160405 665436719 873914499 632414436 722200486 956667662 975004996 582258190 823710557 216753503 768324867 391083818 954138838 444515522 863725018 76853426 200262698 476086543 682449492 152784567 269310591 348608337 920340352 625936226 873825681 751386406 966746990 391140137 592443490 878339693 926631582 781212228 996668960 65959123 237647441 296472716 976087150 19724930 342834375 60696650 474454964 416505384 810838862 234371237 401955597 986460389 999312648 605694454 796349370 473103316 566778420 931960208 966546690 65470813 686453623 367700587 749334150 969638548 994791544 129346825 325730965 136236537 442071908 54008647 884478844 195954454 415978140 494259898 528389529 860839216 958693547 771415633 804990604 415414479 890661033 84818961 197429849 377224124 615944017 769865701 872638806 512856053 948255166 234808572 927186125 53530237 153886070 71919083 742691770 207465061 728369088 235818518 502972149 226454430 662235416 539264674 708094378 397002949 400707763 278927689 876885810 855894806 991307804 571590691 749128188 122337394 490933353 117287481 270098949 779600786 873183339 808297718 931034233 446886488 848466246 365258910 478363944 142297269 752845363 773711189 921965553 946031293 959703946 904147052 963460253 400529304 620974987 657610747 931261660 374798270 718949511 473177072 483707357 512036341 978370562 258894973 872070627 595322765 844923480 917971683 926561719 264466120 446023781 369610040 791206418 798549076 971185068 560729183 595107447 489311943 754310226 33399539 609662365 134994554 697684153 622871142 897347811 997003838 998569672 555617343 931032713 602779747 915327234 258473803 667889639 267371599 565719350 106896339 740309519 28081487 893244142 765272345 917380107 972109908 999214299 174523590 934750201 659747427 910095136 889960965 976134640 427916599 871019392 639225454 806960342 277413373 852102072 310747450 348275239 920206864 949214043 12035150 617943686 810618606 954944192 625381592 761207838 134445684 252468867 998543328 999202428 712752742 903503363 680285586 705407044 489959210 630614662 322179932 424627935 594753775 873451431 90115693 546280707 935449190 997752637 555140327 777345614 795234803 940616969 978138741 998905761 924196453 984928207 53330491 442999397 457902437 745550421 915906559 927247056 771300201 979911471 333813389 378352642 95946296 679756503 361072163 400135504 421340879 477452511 388088426 795156266 115165678 952343753 836090028 957473072 401182619 799974560 187088521 330641239 411592702 467191336 323534000 367060684 937367320 946178572 215367073 899172242 492580537 568335360 764287842 768352471 691681648 895324558 526213171 988419706 56962788 384713358 95748303 152503930 506361232 671351942 960765934 965805745 943192435 959773163 130226504 410099616 359668595 908172951 926971033 946772479 827440213 999064953 326918332 549491030 77890216 689113131 974944542 982644566 390296013 928452678 476273248 720627931 893280360 976615991 639549841 859261487 803311907 953420143 825347666 921231966 149035836 389258764 44057678 646884100 59896242 369717076 42396923 876149106 937091106 958349153 543615776 615421691 550930673 597743459 739117590 773038363 730551206 736156382 707736050 734910075 772859987 822207813 540053072 854986271 245379405 949249326 891803324 903797801 229268955 663814090 728999428 848419974 37660945 177189485 182315289 704881633 849259519 935328194 439342583 532158935 702188735 807497769 724877766 762003842 519340639 592409745 467153631 818282833 118938318 599872984 460585590 850028703 477782943 521962156 201153283 307240987 436717140 631666513 60304057 110067959 92928718 915684667 914614915 936813056 845061577 913481332 676273535 711769370 751485349 921035022 437155637 732816762 671909852 870155968 5594888 605281247 217521111 826941244 318922031 940436527 728479679 882918960 887517740 972362204 132665112 865032793 231032826 378171661 682848450 799621572 331192378 908907704 775412547 873223463 99743924 529249462 581463054 815034996 845826246 955064944 744390349 827867970 897329653 978818983 811810648 940304531 444001380 985365468 257448510 556846303 421013701 682966295 5963352 512814333 591481463 762084393 265165310 413736233 386309762 822129867 657304779 966828398 27977874 623982108 4226253 972681753 583930576 652697793 749645689 932216678 624263727 746997023 871847732 908667786 574543224 734736749 375377841 908297869 106463708 139218302 338453411 885751956 438339823 795175976 678687763 971532287 510409484 763216321 136434657 914719159 271665019 414175531 352677315 858752181 556325189 740901461 783644867 911331391 313619152 597455674 849717870 885017445 962375589 974428540 869956229 924553382 714529946 837443065 49244655 747105026 531849787 916615822 309068868 363330466 424840695 695235226 271615287 563953128 599069555 847678711 294649669 391699460 50985789 205032502 939392664 989408523 674421575 923579158 859244396 896159243 559586311 707161602 850511678 911042645 614866226 711090704 555611928 945849545 230339986 780664624 686066625 841528823 670053115 870837968 136177854 827079681 93423986 204887181 292895911 514176349 428058481 479195007 511079816 670370091 452393605 578281860 93956804 514344831 660742450 701021278 707429847 760089305 19714230 781758729 213592124 735497824 740359374 787575570 873834350 991382859 912355987 981370579 503969503 795971288 496459874 789115348 516891873 552496747 801437786 815353154 823264214 975604964 401136592 435769155 295417854 556579969 672050330 998094034 963575694 998836697 228151647 587635053 26812224 499364079 26178664 950751215 375805310 437075500 578754951 946921882 283851516 291370650 742776943 898159489 280089750 300233922 785218027 824152320 735377612 888806204 54612584 827158684 267132827 885872714 679303296 772300340 743491305 994485858 638786008 782151058 19285814 438731461 303053674 799986485 733550118 909908100 780868312 830345092 866519309 995973437 857603683 969806158 503034806 808449913 650545235 909518686 867342387 934168373 161566854 491126839 371445371 375499493 96907233 259547625 927024333 984074314 54384044 419622818 234845793 809952791 261206155 793027431 762814125 830575196 163565816 232581794 225807279 909059256 365878858 870276616 668697979 800779738 249139696 284858650 338689484 351724273 134258863 441406506 67249970 740685324 274195795 655732496 208828397 639595591 519568782 577168115 267949028 964677615 635510280 675571204 364435212 806020062 457194750 701859264 972613678 995936334 568773863 601549299 808595701 910120639 538268238 979413164 996384681 998447634 994383857 996048788 726233189 932692291 182923947 614157025 396203999 595747205 702987230 796415954 664921035 775452587 866106914 952276255 948082447 976034116 802558996 834431043 971905031 980978674 927085128 979354051 496204838 966131537 266470418 308438660 830335979 888984298 456924605 632149003 522056622 975814577 290977404 823020771 509199979 991869886 656526275 716037769 673154764 731482936 52491401 307357085 329106570 359942427 973069300 995871260 907493095 944979112 246783504 767054568 323414498 627878724 326325985 693530993 592766048 963264272 296262454 720686431 343450125 783137538 450285398 874305945 104004024 221901696 1383709 653797474 269472120 477623453 596060913 718775547 71124095 83894711 734555790 845754107 259510866 273534135 992382239 994554093 764944793 957417148 24415516 940941094 261784304 381365102 538104718 921702484 318068884 406587399 279593194 503672642 269990304 318338669 83552372 591018931 908729470 987731609 972209602 988421186 812164259 842553173 731396050 977932265 655070141 687291773 271537533 986239420 971688576 977042221 165877152 347780954 834591221 961784745 567948362 706429893 533206016 731563571 313765207 941690007 319121887 900409159 544130010 866799743 260903513 935755421 770099946 975711768 799281667 807537186 467426574 658019262 953022681 956937093 656685679 908904233 195385062 559134040 930752306 962086786 163886769 454420495 980802708 981529629 63586378 232121069 885307060 944181862 153785290 653788042 289292579 665638689 241842256 798517936 944924467 995177055 919528777 923163657 167908898 430127118 124474896 563351852 790291074 964924336 726551674 835159881 521205866 715922094 854898115 925969874 271579670 293803298 479036348 609229104 283868182 980787548 73389787 122613291 403669766 922047793 792415231 897558665 13516679 352320988 836224995 990535274 415268302 727102221 389098023 679994855 820956109 906868361 646550039 963628283 333986808 628896115 694964001 923106295 457104187 629237567 112007207 818380118 113223894 503198834 283717446 826066890 539400834 560421663 773431951 878627649 475257266 649853809 12573100 271591405 148881719 904719527 692723607 945973507 283272021 887018558 311162621 975092009 890863256 956574229 297862163 321853568 775470688 792560329 561606246 757040311 566003819 841451932 129693878 180829263 422887388 832042728 577142870 925468587 968475369 978990371 738188738 992803368 686034721 789144915 294776631 325614116 253090983 725097118 257406565 478692550 816256534 945606289 991117900 996259239 234260055 443750721 823555473 871475670 298623598 521409745 150048366 803865372 642149650 947910323 727762565 932169803 603227633 912546667 140404962 884306362 880492927 971084532 114019129 799795300 996088417 996694796 244548993 715023681 280682559 939753453 142093281 906364215 112102877 599287860 720241109 850248977 410121920 756122971 720221134 995744004 225750102 510283739 51711354 805560130 735805874 934904241 904275456 999367051 976183833 996876067 120064593 490948242 697051830 764232217 746374370 951175946 969642401 981365617 499811331 635233783 530726831 885396338 140051692 415430346 736079929 834175754 813331308 835950799 522414861 991249383 894946417 899299373 103209540 569627941 416166396 440593559 609812048 785971403 108523784 916197867 938506330 965751282 824285139 981298774 876659949 913805448 31740368 351462869 645541254 838118502 309739119 335564501 559828142 929753361 917218192 927068103 38079840 334062482 292065627 817280048 348933366 644742781 844532693 860511959 650715222 814950662 456126538 946890096 968611588 997308301 361322499 419652948 895004655 988648197 457999085 619256467 366371110 794018653 954949904 963062436 348763241 953098644 439984321 949806043 576769431 773034876 991749107 992810914 792348259 968171713 211922791 326755817 85674834 992614625 127287355 217496792 426654116 597585774 380732715 443455864 248231090 675388656 823649793 993066055 203582334 895599818 154222819 543106398 338026176 563669838 955037499 961041015 408844908 926882907 986463738 988096300 115568540 818412983 606945094 662457460 180852971 345178244 85687849 309951488 308201576 367621624 295100514 429067267 9319421 450639459 523314625 579085791 254471377 808934822 547467490 611222101 96439703 841098475 641538441 814702815 945035430 963777304 661516106 795563198 804310247 980897752 233654962 835234381 633102493 989598991 103077829 245543727 740611021 920655790 276133837 429937050 434872967 627306634 161269254 804399854 81185679 663972813 469580482 542908677 103886592 537228894 74834174 662199732 537170331 981635511 743824685 858730636 254870374 485718886 513352801 645541932 411013072 480583251 557269180 612466189 442726659 781538515 457056449 560774917 533739892 547302940 22372254 500386323 736307719 898388070 159085744 603637615 496252187 673029153 938148540 942310089 215834025 445444140 124000406 163757153 206379712 486858505 16661116 767459460 861111438 903348107 450079693 482149415 404292409 940182087 907333217 981197177 458832013 806498738 978795018 982532795 250811257 864806137 384109226 457053807 832915075 991758277 352403822 867399178 839782762 909750778 499782511 898949475 201990231 888564761 620925296 751201537 256976415 293230818 383740728 848683680 530905413 777640298 475392473 737738873 359825372 552945556 144301042 555996214 117318977 252694115 587852093 772836235 514957059 674725763 864598223 923239126 190181334 771207829 112156663 368244947 237394056 870647045 37951683 598405418 192761405 344442718 870014585 885505359 76628707 204889540 575442626 588922825 88657176 91499554 821986718 852372145 980359211 981325185 621712540 726722418 68310348 294846340 526156278 630400234 209486071 339681218 672044840 819620315 315614801 980902722 638354665 682594988 601414681 618450251 60368170 100872397 227346321 491321894 891219797 996310060 570171643 695960773 293269205 778305940 528433017 987831340 735150539 927447692 699590946 965570685 153158854 213168182 327268163 867916787 443124891 831689940 535502948 716585123 732641533 740305428 799535045 998301474 105673795 131503572 804155509 940669131 992516241 998929039 664333811 986101942 978316284 982440520 405151665 611950665 578082936 671212150 812925594 867452399 697158598 927845930 957057469 998656582 261726576 660884524 555326335 658715746 679596117 996694390 694233862 900949982 237439784 322870108 360939953 874996631 91477377 625266836 350567083 761502289 451357472 973963511 946065377 968888186 702839080 892898298 154123408 974116754 399280792 922340752 240756289 477235571 816646367 830913409 469737944 865939997 295031559 768163626 962266345 976837648 747410171 817754499 517771907 983099911 838552040 991812040 215349228 908646899 252638296 667204192 673726781 979692169 460292777 502883149 179141636 365788885 658209851 807592917 575737625 624442364 803520941 883612801 939901194 949130246 329508684 499290713 230593226 469623519 466247897 818529428 2511191 26878164 280203838 802588205 103524120 182598261 164045350 948674320 388447641 755754950 167511388 342318694 346366427 818783469 914506096 935588915 178852148 324881947 959526476 972834500 284082681 849025253 906090502 973966721 90502248 303762779 387065226 731064550 850354000 949659408 591218550 632616728 653457341 805792485 800356430 818457261 899341885 901678388 608043767 675567417 364308453 521210419 621099642 742461752 486375178 805770909 163483110 993709895 943077580 977314809 949827943 979991167 210311528 771345839 42758214 985732070 525404137 566701056 474064756 929398992 398506693 901157622 154435300 973006659 349751447 524142960 973258527 976791722 684562777 938874853 507478168 752367918 851622791 944325090 664976649 933641673 310794918 848027824 212972203 923616880 557738812 769952273 563047296 637112799 428375894 801712903 22519238 770440159 174169192 252547133 433622275 558693171 127603862 410465529 719453406 991155517 942947411 997051846 80046360 375518276 261840772 711651143 784933110 846840179 264451996 295790182 676055497 953777879 736263514 844736709 967630167 983514570 759103934 987125082 100520058 800638642 628839735 859184894 941082930 990927999 535244545 610676225 932834486 956864656 330997662 916753929 477791577 595719507 582021925 981629192 979736731 986949092 323323749 990373806 734655052 980376680 838577745 873986323 817308074 905383713 960988781 966923734 37157907 973741209 420093878 523912169 17654764 151419970 6205506 796486970 502201580 991474807 788959687 962766520 337623415 877346967 733627804 964888333 599445063 981345703 285103064 815733509 834149257 883095035 285827135 796093161 892207690 974653222 285357292 523662076 125793435 293659211 506639494 906959012 980088591 997946704 795893665 953679587 710497065 807783774 540955319 600708764 373198508 717874078 624415640 849012891 171784787 529065334 902287708 967235685 284934112 426333548 764550468 874748860 666530938 875986041 106815020 939480729 917724157 931379500 296940605 874890195 977816553 992541813 330256104 848619002 158754442 192745660 734272940 862877534 442641543 911654046 742466919 804272119 975688858 981628620 520961391 985367804 530298113 759703641 827900655 998635336 37507415 834084229 840339790 846008793 562380357 799709490 204742127 566005371 627962049 664856978 545216998 853452607 194637582 771533252 252153213 755270210 385794885 787138106 823331624 929141736 810593351 823587942 324044505 791825318 201030927 828250035 453177449 590689453 506260509 621019164 425207696 674862267 828045107 856180698 569728625 882861472 530133107 835614236 690939375 984986006 570287620 769562004 663158028 720181799 376330735 488347789 22119437 714924228 48154793 811196213 671360644 793122347 446295908 485944046 15567191 541683266 689906964 990263241 973375014 981889771 231572407 303725408 30067692 200509466 665451193 819109631 937546970 937793413 317626479 347645795 700564513 831003994 366082948 703541959 11957619 300805477 866062796 961875884 951543446 984657476 393328118 436608989 649177884 961493975 377824209 542090703 643382062 752125664 633354876 821687136 120460160 638026300 971899937 990124194 473325152 650567686 768793895 839661514 313745166 949911276 200737518 809270586 607782426 832805371 329250713 659707443 735360481 780326741 380179012 585918128 906209274 997016248 47871931 729439856 454126180 856905250 399578296 498203442 97013591 141202189 597393591 675299526 344170186 904096059 871923158 984058769 951491253 976202718 993686215 999240337 401168940 787262606 620305399 896779177 960334507 988711293 132668227 462537050 587755495 693352902 375897227 534848892 773221298 778235901 457743927 891831834 854720730 978994135 150925210 207747707 808866314 934547332 292681278 305152513 703406240 767605299 278847072 860260219 143266157 271972873 159722521 271128643 445055556 528274505 737835484 858265893 895943190 968927572 693921743 801270081 948353060 958237399 947963407 958480140 6587640 635773759 332303241 397262149 482748814 907766982 146073890 802818603 116613576 867259659 352339896 456325135 608401908 673776332 770149190 799387275 901433926 930151502 481039358 553982587 786354431 880434854 608527156 922794003 87752567 307248057 642008818 868860328 317955192 615328447 417925688 676012384 312082696 712770505 308499897 551171722 54199656 367323037 752229568 845535842 30818424 876445796 814291972 887106952 755566441 962499007 781035919 875831572 317383736 537466199 520062116 529468175 604258251 710565735 581176901 971706171 952122452 989436699 999339256 999391085 241070386 780942053 570786350 943008062 6107596 751990124 436054 339372538 177267134 856907905 174199812 501331952 934796244 941059976 12903733 672992378 691557251 751813323 322730185 505287469 694272613 792276513 153561163 639208449 578930052 939906646 158556509 734365384 848551336 916724128 766841992 863574710 220703354 703231480 438667320 749818425 316953219 399372497 153643872 731070074 827857324 841013650 869125926 994714013 408568979 590145397 6238722 146553568 3399095 245184637 456632599 761501928 471121484 759900189 222213867 476046997 38641656 883336340 531367886 648699738 210179253 750032638 311591161 989806507 560483745 578015243 749153964 809769282 398440022 458242797 745569056 764980624 958498621 966275217 197226552 673533609 998480181 998928064 437722912 854045018 638091956 852533420 84242677 907940218 793269169 795162805 660414977 698330484 758643571 984622223 709132605 793279173 298367605 638918537 686515042 745087959 794444451 949830595 690611384 821966127 868294672 973538224 337897955 834284986 507191466 976210635 417387921 734665365 278871209 862111818 486644312 722158125 684236490 770327438 963589151 995481046 866963912 984228494 110336380 279592629 276669318 960276093 862197348 989699393 339492448 929310929 658200641 725135496 589062681 862657173 923443292 932936871 281292500 651799198 585558590 756391602 43224028 805711163 224927427 320419245 61983609 935019749 340006686 932400717 241556497 297632550 929420263 943084468 96604586 752815013 393939000 644652392 755190973 834480442 795011117 918386981 62754193 425977821 860749683 885873673 952726335 998055693 852979193 882435710 375272164 548092446 155195053 781764110 478854843 750796383 7680978 819691499 745372595 849053811 738849708 823909658 792656618 862370916 543429295 615468630 745423600 784983069 886423707 942332455 327279310 894100918 807538193 812612582 847440650 988377001 142467828 804403784 912741010 927056746 7178171 370409621 932925648 954159527 435359889 928748253 367184672 508844259 879183796 887533867 89438211 987571063 609186478 616520455 46290435 474000678 550634345 668189744 620461489 907396983 277523138 420239487 183592121 656192647 597314271 764869442 281996780 800599790 440721475 458480031 73252391 370660206 671782254 698398997 656788638 858520669 427834778 843766925 421579209 562938644 610335351 832952315 976380474 976948121 93622959 514783969 977676172 978657710 532626103 928572306 72766016 389534872 800896545 992395394 929312063 946163791 477611845 986796921 730974708 978877723 896436452 922640413 981710871 984964904 600421127 713514362 545945092 937407345 213336645 348278630 58834234 124249980 829665414 973389733 537385199 800669766 651034745 760480231 353431272 745185662 374880942 530437484 413884565 732339816 521366065 892809929 383694399 857251884 534190677 793632558 685795601 801318016 428781650 554717939 415050075 741737007 20787154 207598761 412339597 884715987 234150235 521855799 112053753 455862503 937721173 983894498 713084850 940375585 124386147 172507395 208547891 866867263 761614946 861558515 940252147 987365001 97643839 745533575 819285344 995511357 38391681 617284593 480585010 922850218 487418038 522582008 351679602 747617483 218516164 732195918 429138188 468339033 682085910 817536811 496862027 519342508 93404026 731607243 864406800 972569256 261643818 754037370 511416741 713311019 193172200 402472312 977110962 985509109 599423751 844098600 515351930 702995217 311898959 693469340 80566231 558659586 293965817 476013204 759251945 822103642 923484273 955726826 793352675 986518647 868258501 939749767 668776811 691590978 94701995 672988788 531946622 752284053 500501390 869121349 610858928 614915967 560726328 786672734 578080758 959538336 547515503 718668078 850194433 915948597 957840240 996656412 305461800 927288946 846772301 861362464 991046370 997048890 27745490 698595162 528155688 703620091 519072158 531694018 83529161 686189937 135137153 921136438 544327340 707640783 883850851 921949242 752390433 975794596 823156828 882107959 683703714 755300278 312453289 759528963 785745653 924923583 801488609 937919722 482424526 567368388 649972224 689898046 67863366 471696740 355294416 967838629 629988394 813654895 406106793 572322911 96707669 443813088 111798885 719748940 330795350 945105074 630638637 656231695 689931961 819120385 227989438 891341800 468457645 673956483 762262363 955579834 199553432 348485634 412658740 757295796 264909241 805501401 535946141 592632651 271173094 471241256 308918847 443008583 522922030 682569432 224882135 587029884 814413965 937861369 126478984 661347807 996716995 997002358 192150471 604341112 808622443 882870271 568620705 797220952 315621850 643094037 217768347 449028328 123181155 183168050 144793650 829734307 295478369 782670067 944978982 971598201 202812453 967417672 378615457 832476587 682205792 903220075 888674077 952787263 642042359 658259964 925586164 987750495 978275299 987519168 414669506 604374073 93404072 656218526 724026075 780424274 849572516 938709703 991255244 991705935 464384675 998261370 393816309 944434050 760171830 996454221 628505155 895645123 887280981 891623967 609097609 920317661 605837555 721960914 110178486 682667402 988230334 998074918 351502920 740478901 819174173 987062487 648898686 688579254 231503268 635063855 222532798 351825363 331103249 391757127 370152761 745227777 310032128 632122632 269152658 324459646 140445334 689894836 863241001 873016095 386462368 874842047 228934190 438358495 670213677 798829828 768824688 875150474 513043444 715019453 105515295 149157898 905881852 994433474 144013005 335456647 457098788 858081522 790233977 842077290 403006816 952509799 642715811 716768201 269106523 744341230 981586867 998639390 3880235 912722338 231296842 923749873 37104440 551643375 43894235 243046377 219292440 320971540 472413992 578270669 178170202 940783809 958438488 982047555 840132343 897309994 347360893 768539360 338459889 530023081 974816569 992583995 15332013 294688033 388146567 472954281 304669490 321362727 53639371 620251474 141302177 159669037 926687345 947066319 478445178 822653708 799017840 933863449 729517351 878959486 719307065 783914111 933369192 980225941 778350620 831192353 790202796 893479204 240190841 243118218 934736347 934798102 820699963 932030812 527039287 571108900 422261653 475814865 136187579 740390536 30004381 290985169 29877050 267664164 586129907 689808330 355080698 696171357 94275600 796636237 33203282 716199959 605069707 760704408 662350205 848136447 382173318 831663480 342997298 782473554 878715076 956328273 475915050 985970342 903246566 954385552 289966599 858930803 86060307 319576844 832876965 844141399 608906986 954094872 850332534 946864203 108852768 298740291 720113515 886940258 874538053 882041567 396470281 624002012 283119611 754229287 529943453 555021498 595172563 820447088 346351149 579724976 475181432 805682250 796448049 919199419 292490535 654390952 778003925 996143179 514648945 602369477 262239782 483946749 669997020 712576782 138151511 709388899 966479178 975433600 36490747 699608098 178410864 676199058 354515618 952171391 210286146 785984129 933308561 954861536 185570540 756528438 399901750 850553802 8922127 187339722 448857169 652750847 875151188 958649679 177007959 358768206 40109445 865816688 497956280 571759315 474796007 750606130 180740449 784294466 204068060 842386820 33608528 584342981 217966955 864083480 498307112 626369611 795566248 902611101 188071255 560501217 966622766 990614074 769393946 793592005 811523830 959423048 971120423 971243944 275129908 711680538 400721027 535319063 671490587 967091344 779377615 894475930 410066564 639801656 854988255 941324902 807480495 966673076 425888469 756956341 696722988 819843340 423209251 467817657 99677778 682489973 810954214 813071287 688458316 980236790 987192450 987289837 573033604 775864477 158057408 896977070 408337441 891418827 194666479 869547514 736143599 738009496 892850208 917022543 218103711 290577669 532768643 816254876 83211491 874791878 656230658 966807950 964910743 987389917 159077283 512662962 559707191 746993467 136749652 874090535 365908791 940530437 459746819 755145691 635756224 885066762 28946929 591943725 670566756 693216293 830407591 888521804 189684091 610627840 698746176 960665921 900062252 925936419 637977188 713724892 758740504 811580936 10199531 735269560 946478705 948362904 642388129 773714382 511692205 916866775 789840932 872162971 627493281 631430814 719512724 984405025 755632849 994725414 326627930 373332741 944326060 996170785 815764662 816539840 955233984 980748367 815009292 927041020 942989800 981531038 525172081 689531821 518652724 800721550 1088736 758938230 213276306 279714720 188967523 964591188 135857041 498491831 986709391 999261717 779762712 927096005 429009358 647036728 547020959 738128068 699903288 835297665 558543857 666165921 802933754 849844724 192415461 412277306 164191610 359700686 521522490 879509154 584182898 721752243 35321714 153092909 380502817 818261863 708264106 919758911 884247408 992309713 127658253 263507881 714795608 826239146 584283738 666213832 600803349 759008444 956401975 958779993 970332183 996116361 994784616 998195338 615316860 835515346 387235238 769987466 678405910 915415123 379909511 676100390 8114782 320672921 106134861 852671012 26341278 855338770 973670132 988874317 18238973 289317243 124406836 387898001 202981381 957084119 587397652 839036711 656736835 888115796 22800033 197282895 206651028 788613261 236333362 717815242 58002629 334441346 437267023 812446203 390965399 651139427 181294581 303961437 309325394 618875373 952449718 982579099 458065495 896275812 190772864 796253493 841357212 987578263 509192514 655026638 272915449 458360446 224339855 308178856 738619435 746625476 965567678 998613778 201689674 498275209 398225734 796110116 754282431 840502066 200445333 289452819 20153505 690216472 91653894 899443898 826402387 979170651 810594723 888517411 313906843 595407863 55725490 656675714 596952319 621245595 411160494 449072767 471868522 937291161 26076973 859846035 950212503 964758010 424505945 630913055 963583527 969564921 845714927 934775087 354054582 599152362 846714064 935719315 494450043 712802539 307324345 864792942 113917516 365420744 362374009 947695449 921850901 939040364 852021870 967124031 429572529 447074795 274527575 949642423 337840090 387800017 770317115 945733957 167726805 683678732 862678349 907077959 569557320 661151412 498109592 990336282 663135961 910212192 890853211 899965392 463104819 625774797 185186824 567232938 995877096 995962652 729381445 976617921 181048465 643732321 831934117 885608309 353834880 843434327 657187545 934444618 394824670 624951547 816993616 881745492 122850763 605059860 776145218 883588575 544210243 687615297 398647455 689840467 302910359 703187354 553585946 955140173 968236158 983396339 506323955 972354484 772736249 919866100 491206196 493636000 669762889 940621773 419748881 546071660 867732618 929231820 403005878 767712960 280776385 885757567 776112080 813403992 270210047 716899500 910128822 911543646 386880748 851966973 508114951 569055501 836233302 993521164 714824475 827998674 455845574 981048257 790613268 800680449 651989298 690999493 348197865 901771963 443006286 479457301 519117405 979189721 759104617 927869532 115195339 262231806 829974050 914487945 850389921 880111100 637084652 959607380 681877939 746485489 943798999 981144550 136996250 183244894 292916662 403209314 734367590 770303279 804724082 826608512 743792890 844449145 249261729 863779677 685932910 995080653 269748965 751081174 518277747 633504410 117946793 887802231 326140067 608739318 563435937 932322187 8778155 536858903 54270206 629758220 460585464 981278010 997165509 997707166 397567578 582923369 400517247 825665374 377804679 612847980 778805141 965677333 362629245 586584710 219901534 541415976 22624700 503574631 846380228 884952135 127788950 917070346 844638410 904800935 961705427 976788075 461213546 512657216 964734611 988337706 394630534 986643417 591027551 873951129 419787872 476036569 230123876 254682742 117421947 812034192 276184749 656910106 650728672 683037748 693040605 819686445 995818305 998325892 806010602 864086367 707817878 709938837 383952006 450149228 783512701 793011023 875446064 989685707 391158948 607040628 128212659 516866097 920471999 997349311 379315663 841284663 183083599 942752258 247739676 515283538 403738669 691108878 922088910 975639749 267977273 821922539 423351774 556484821 410133771 421713243 233688401 306617848 277574171 904358001 722522649 796452103 509843553 742980059 819625 344247962 473492743 618246227 212182023 359747083 819377078 971943193 325309747 331801010 665580221 814723733 503072253 828698034 963297347 976062779 264568644 327143387 219392535 378449781 467302998 569694267 504930935 794000916 730997210 975981054 821223679 828752644 319676200 361453450 941007264 952257016 785398419 887951442 139938868 264484100 870750882 908136324 909712560 915702345 476595242 956429496 25959769 40611673 299963722 324549617 382385012 682379898 214847947 255509698 941822212 961591466 376935942 457789449 347651091 395986897 447700536 639821903 347496807 788560358 493516211 924196446 422380597 862944653 724688350 787293208 800359525 910328984 123078764 325581673 852720132 862919393 218307022 534539904 728131621 830779116 842686403 872006045 750404074 959359524 158011664 706613734 746132501 963469655 705426754 891372705 340929509 896689678 758781305 860931505 745584264 893242183 444179386 541827601 279994732 670002467 772833341 995263323 223040136 898448265 851876785 875428825 358018043 921329969 724124665 724210063 856115118 951547983 843264658 940591180 794535812 914018209 96717472 417213044 922678012 965534388 897078112 939215136 450128287 775276035 139550884 665564665 456010605 809870125 912243605 947963742 237235327 671916012 198488352 539778503 257286061 483522092 826212745 870199530 831174022 931330684 165684753 307344919 469339779 481651096 103876652 219289598 400686718 688139206 16683679 681465235 776807508 952278890 572084895 598803929 793261420 953367925 432065570 650244140 164270403 271069413 347069725 664773497 333439523 975284027 275231374 514753554 386929190 698934286 905621651 960830164 970203007 985278406 571571293 962240335 289327958 914701021 515733228 749699888 988627984 997399357 892222532 983508502 393046892 865206974 923908200 930666547 757039617 940811609 629420775 676441050 689495757 689652676 333898481 699860015 551266173 734224256 993861121 994698779 961883623 976305997 177858027 813515977 342585595 392496904 666913653 782439746 146922927 181607663 170090307 736393500 523329590 666903125 255805726 355909647 391815492 637504966 93417456 504846776 18587380 426143399 604159228 731535858 709778018 798808991 639367760 986098745 565023938 913169960 473747085 638651489 847173609 962518701 680033911 858914238 184474006 916779307 231443680 987399844 355859129 651950414 302526333 392523740 885341855 946787707 169346623 471488485 447753133 462546144 243101750 852834286 273978971 425217797 874197792 985884346 193075054 386753928 715921155 917299542 445413232 901204976 36696315 701177844 60743540 807671751 717819876 804930234 991276756 995416222 521703734 738364775 520037094 735855511 983923623 994053713 847337759 959865181 78614819 209652991 969804784 994501613 965006552 981537419 827727276 855430972 500770616 541261354 695366819 994186960 634962978 706698630 191209322 889190990 915780538 970967289 410808435 893512718 175611693 719156655 758125195 904350704 535425381 650026494 110150291 966960718 258780580 817235569 857598484 910432617 915015945 988920774 112115966 297950650 409804016 725227638 344764061 965873113 23549791 421070912 574362089 799267797 21388178 634099028 808635626 920299056 331044928 709288404 365147920 910714345 176853682 488122083 669549459 896446873 526532610 831193063 565347045 839573339 760973527 843882925 623321116 681274639 349201473 912779538 433046732 507527498 671069917 781660581 369837376 884072774 1904772 8085042 753578653 849990660 60467920 116338090 487421726 531294073 55908344 485168899 230767402 397931888 549954250 588031562 217863288 226180180 992762933 996198979 135441025 493465622 166560474 251034941 948563223 983897029 575206535 730088496 750263835 768840018 157802336 677053656 787883332 876040231 563160462 818674222 930709047 936445126 981765861 985140534 235084028 929687505 996511873 999360557 318886226 546563782 886697617 976660524 838901979 927379584 725556521 844566233 80387817 198584899 134243514 665278024 249180126 257997765 542802260 603208989 609323730 913146029 699266720 840166801 915237820 943075708 308646329 802192529 705207037 951831210 367458342 508390962 98783329 142874038 568205916 987797276 600950113 893080380 774537205 957470630 780858067 909899905 949710807 992896103 381836843 402139975 132339471 839169851 484404927 520980353 250576063 455924356 43170582 318940730 305845781 970269635 137171013 433081102 186743000 679036902 436176323 573648683 968023210 986439208 622836787 945288739 687389539 859655344 20374568 946689580 895174616 975909071 99388251 590711184 763087083 970341859 814241553 922296370 902429187 947681510 448636364 891303520 132810075 740056563 115982870 579602373 838477813 906674646 544691662 664553159 711901479 831310878 147997827 511075367 351618400 748656518 896821114 909991820 60274112 772526939 783927570 901298629 946177540 990876899 710520689 977599695 834906221 869661246 144613807 510064554 640067619 865128922 650351048 681232513 864430537 947836873 48977600 941356694 953479244 983817784 307561991 472268125 602349249 939029808 673820329 937506419 581566491 858012878 107799682 392981315 101922335 964703569 979496666 988831845 356113960 527113232 19575133 946773512 795695680 985942397 346245937 915136091 371877554 789465456 435093965 842571081 229373408 586592253 96229647 454707255 174969478 400812739 358124308 708139902 285822262 682927687 788442339 821875140 512963244 840082611 23812754 502920507 939443755 975111423 407230244 843870149 724530929 804509310 678218932 719399713 781725616 783696168 132373128 316361865 472081497 611667546 837784495 891932349 705565309 961593398 247841548 859070646 481312258 661231773 589152046 870984626 779807574 805335235 234148851 721458170 28189316 820465060 439885416 728363232 207160097 949310978 596655878 660013785 219786308 316025049 632422472 821200100 617703338 670961351 820547817 897174771 302524930 953193458 589258264 846537272 508053700 821534907 359133880 967471657 997942829 998300402 551611522 912663066 23921922 129853132 930479945 959628755 880106937 993783811 862553049 950958652 179725323 370195960 333057788 656116137 216681090 645772825 134493157 970415590 356147799 649921010 17827708 727682383 543615417 773642332 641944065 722603758 915566048 957734319 520447329 790629220 83085867 718636872 203649379 802277812 175045332 837184355 367031826 881481409 13809993 208268353 847368514 993959926 878513732 970474428 719817104 940921533 824289996 955648814 311485996 879366263 350098651 690489268 214353868 782564319 95118142 600728034 203064469 634485711 369728229 566194992 825853383 874688716 162449199 642125506 696408722 890958622 364838767 732416060 98620001 461655286 556443514 564750758 349960838 607710061 965639480 984225797 197233817 636905147 619453443 956632837 941082200 971288099 763459580 791383567 868468831 918063325 909724405 929348612 662691905 720187724 898731895 954562710 148812947 619576457 191578161 799831127 635405719 880369306 606313637 614257627 641344332 832089775 352757400 460368462 432231355 970518864 388131080 394772274 54357669 775713333 867016850 933463348 849105620 982535261 388478540 913343564 910526391 983987869 152471694 317498407 894578870 984450903 804967501 949653933 571572756 964430544 649680060 968214571 707397456 765290317 383047869 669699121 166772068 990695337 88789573 450345252 433698675 497748784 728425957 906205437 324892655 636102955 164184736 680348184 235130764 339025691 157166047 635401589 89390788 795389598 437820222 840972803 188373302 360912493 397317531 859010432 528832788 943458428 477282051 822750818 206193848 696221920 177717252 635993601 909653676 933398583 986388874 993626969 922214028 995820895 260307112 266673910 169248453 546086582 159539863 801572043 409411904 575691923 504671226 756797002 52097718 847896125 862682489 927528482 374101083 800631501 86475549 891092838 378535714 924453187 888615039 943531233 688187135 885215731 710256095 976141272 668486609 697254537 708526471 732879814 611594801 747094442 38575843 461925326 478035103 755381673 396073727 906834534 257113190 304010572 79267630 284413518 632409516 925932170 588125207 899744764 529468745 898152846 345463355 723565074 184367984 954043598 877125076 927511054 697615411 716191307 840821988 959776642 383121732 604885163 486165616 939860108 378336750 988262757 248044817 322319443 987907034 990414659 284201478 819434592 290560238 706621418 99866066 291549352 805320579 830489975 59915400 747661105 518056029 691832412 425645439 585896912 748791519 988799270 248270229 922753832 710783751 863671166 16791185 412147392 341195438 551005723 883668690 933231921 136320937 830135155 525323335 926140242 378117576 389497020 358133713 362884470 736746813 956120061 272513209 618624686 894659072 920350093 932175530 944388137 587303132 832606107 398985002 713279096 401669817 689103416 543995369 656721182 472143351 662201193 154216051 853122270 288476211 297686198 683779406 982656495 156647007 992146146 16048048 986001622 586368590 894554367 678020876 706840571 889269682 960156361 754102930 823178598 281616819 685534721 776112979 872754298 102907537 971278058 627641230 938175923 187066436 944976776 888339073 888376877 754149548 921978567 57016418 776058060 52819787 594983943 769506495 855522586 502410765 814550212 549223019 930081985 167633048 662867631 723473058 993837432 365936695 370797252 333394437 485647759 884388397 956880403 131796853 966584421 757591444 956925918 706032894 914430441 25915115 897793633 610511008 998661199 343287821 806169922 210843035 573017810 318269484 324989338 702151333 849077873 460525974 603942764 234713120 565507776 998266942 998440073 211200703 343069367 488595347 949601809 194329793 559546558 23211187 464586429 672784281 754671139 266291568 878816708 302855317 857286996 539819617 578148884 87425128 212826301 662430311 937819731 852099148 890806909 799566604 877420479 933450720 937777459 526034770 958198602 2702790 395732371 864146864 876662627 322610160 364766687 306113568 693404392 419259477 652729702 877143353 892923568 523291632 943003087 486896232 778841586 238644263 655672444 22893084 288623678 875439365 950908569 77574376 532776424 810699205 921451970 983846162 998600031 913055438 937837482 791310701 941143881 864680478 982010432 570940606 743107426 190565557 942663169 234900898 857586950 33012014 42177166 541025611 928047858 142101059 854201350 994743779 996737551 911869651 966059719 837691021 897507858 447999119 832365085 319523718 411845058 793030996 906511826 88735483 477501576 480203729 855489706 185145794 975205172 47356008 459031046 881146988 956423434 661663862 764548163 164045781 425311968 736558904 913378103 531466003 726206194 434052366 955206612 842370607 848150161 917251405 950440196 176334112 225694639 230942864 504729691 355681574 376324682 635070546 684597566 634776876 818815525 781749103 997159094 129181152 331987546 883653302 937802161 506123328 953249851 82360083 940776912 783944357 845977843 566737241 742138869 590701528 947030279 457215427 470845045 330922752 461277131 176679456 434346316 958910309 962422853 564518793 885685052 737781205 974226118 598973187 950809964 239057065 525443652 146980371 149803891 639831777 778281689 160064151 694000920 966647647 995404710 238486360 669191235 795196119 994127044 704152861 828324471 463782759 994271632 668110585 973488852 611727261 834355387 567157244 964438442 414648972 639409452 617734333 887042886 545058146 902901698 214576403 896998829 21463539 328306102 329525956 464789261 31750623 296253223 662189278 731506681 464285785 827635263 69394830 113069251 718285884 974298082 259126889 486919764 101165548 858761949 964815175 991148150 912242299 992928642 15853081 947978782 303798902 966259364 290466639 546259811 591137190 820354501 295100377 809054881 813461372 893153120 13437776 243775425 151786967 901546697 980887443 992959350 760944443 888917608 815365453 839355140 849924058 851199860 360546781 974104186 485528717 623331388 72746154 522824385 993067679 993711496 38273864 919143422 499450376 965780807 455713279 586490460 981653442 995367404 235704 681806304 46156597 422129718 554048225 803033033 946398474 958094340 912344591 923428096 696089427 777080594 290917139 566270318 336995064 359495840 200443425 906653629 241232543 899244990 308640336 364096834 256675203 485818529 390474667 500405918 321974993 468582754 688053443 781314161 242257140 550047415 589351723 723268127 739237887 872208260 1014246 782319325 212901796 660902095 25768269 504756246 99313670 191326147 923831859 926958631 380577727 932032062 332805230 511306011 820780959 894142757 83524593 724140107 900822950 915028215 313984593 458330847 50857289 131076690 219905037 933090560 754832897 838170250 390407974 632756209 434725938 662513016 922572532 978571836 107745202 708653312 986415661 987875031 863451980 976645320 92503580 758134014 192901100 554812063 877870811 897855876 42971840 94747001 952085367 987630031 315614612 607958818 14210174 690662473 731139525 890905166 895257554 933205363 993406143 995310274 692225435 938660900 488964373 863303540 398705381 677049827 582588612 801151116 436226839 594275402 622880186 991594586 789438022 909781641 28925619 930696652 315298692 351261205 52481574 195292324 411264304 620959006 155434535 749687348 25710407 539091402 263160853 909207086 611060855 771916678 484685314 899180182 908320751 968796970 800983560 911263078 751152640 884993023 574017138 965045347 236037579 556713925 372483761 647583363 124490107 356624215 620623260 750205128 750385070 790838867 240169221 784995915 112635967 601476448 96072370 418339298 593773415 893582619 199831961 801473777 754405037 921320870 534527772 912364140 382710863 821411901 716209916 907263690 105041995 801654682 421725530 800541398 360145080 819054558 700576717 729806013 577217235 653476056 831734986 849105324 670080972 868054476 429884484 974528814 228487644 880035271 188588899 383650521 919230649 930219534 424410093 820474839 944921762 995073663 361573898 689282457 684350791 690173601 72471749 374850709 829123526 981107843 127855957 669294929 672118091 750826543 88881143 926642239 633572456 881268790 403755496 646444529 401789614 601522619 962087553 975079232 682118479 877577119 426666551 476510488 871334732 965818048 980553935 994387812 382961492 679035093 886114304 913473638 486024875 872234989 779879303 909994400 541812709 832814105 767677016 860548251 383541080 695789679 898754168 978927838 654733504 854532394 499697064 723660793 655775855 807242658 185149726 674742266 827057376 909291379 402883133 497970314 319003230 662366653 863157172 997283847 602959031 807078998 730595855 806409123 553200562 785486503 281327823 852617564 882216261 914412335 444110779 590826586 698222610 869034881 876542495 946502775 490626108 663189995 52927665 814157654 376627873 422649980 982016234 995971814 574468325 847558877 697253747 761024031 231994772 467710192 857418177 998469938 669540611 953452108 236548801 708744183 793780449 979071438 596416933 712025293 586262704 980726447 727775512 953540072 568366175 708874913 667339795 782036065 412810316 895682755 638715649 766475026 315142319 875587362 211566735 494389750 234412430 600370999 511217032 801861887 159450349 534281932 569622731 893754671 26541613 957636586 389456198 621164096 403789256 785234337 258675592 836562558 727270477 763974583 137916163 327347112 234082081 966471917 730610661 760954975 771484439 989909898 913749944 923514323 60468991 733512894 311379729 763364117 678521840 925033997 87769845 563493167 504761649 815037958 23522655 93172201 536294576 639219374 808339278 975949801 930430835 948064037 373975492 730227376 65448117 194023417 251075341 509516619 367924759 972914442 655706029 979140403 932713732 965364855 584099845 659058402 864856365 996741695 905982628 957962282 717476161 941148810 248071929 755158597 684708059 785879823 715088357 959785166 608495287 710893170 191500375 341572423 366356371 400049394 825684270 929485938 215610003 881240179 472522542 923038650 747020119 909104356 714495799 816918404 98537697 569922916 254670352 352701485 308433357 416897454 423316732 503115507 6079316 126747914 344891898 942925048 470945219 492852329 388359575 766175457 694162994 978613575 114511345 571983359 465297619 880023373 134426285 570585387 855481575 914437894 839673506 937430710 291487410 559855870 797315592 889275642 29831869 962304836 155702951 552190125 686552987 703137724 676160832 740391707 607684468 950620580 544883866 848460974 253001847 598965129 273745527 835990025 103270928 618519372 766894788 924311489 648155759 959379056 20919681 893174843 890584810 947699981 502828314 663402063 796688993 859606849 308623371 710211710 955062927 962696225 532943151 625386023 284123357 801754571 182863450 208209658 176961640 791756215 490170291 849461618 649334010 801701458 349127065 378435245 21162301 31716499 244141288 681226571 403264792 957312049 471705715 789520464 856577600 968091172 84628702 232181151 437825224 702297801 789136434 948315434 164354566 972688455 734159662 821526224 781684766 990008704 119035297 859119993 197778826 554864874 857162209 916839590 524965237 940272118 701286739 893947619 516017364 774661600 695271762 744596374 90838331 725104728 613376349 946394467 241457589 393242002 378690183 558914691 316282088 815481786 111399498 419083229 532077255 753789071 574764128 629928166 544908856 829117177 385694861 988195355 93672909 448873887 287960924 739965698 324357729 599694169 401384768 794655846 54781086 127460927 151300792 951654716 496690728 811450325 859026959 907398264 878536367 967506565 677962265 772694531 779999147 938670384 543955178 575285293 196431866 821949208 776117953 878428221 798837183 879845991 597667744 789232144 691448072 901906280 589779508 707839954 86438868 435134142 541249419 699966386 83825740 302362199 334071098 822395868 724903821 912571716 631290821 634928907 483718700 733917554 222375217 584708802 770602696 844799767 771966110 920080795 39650769 290724926 886277782 988726940 169654181 306966469 861253852 958518153 961545465 966533886 261699750 696274796 359534812 808148310 692348587 720556572 368889798 583322235 472233884 520930931 542954495 834648529 659981047 690239575 229216118 705343401 942691555 976790843 423199720 508917998 137684564 314899791 318892060 845895790 387814718 921892625 541742503 598891862 376196126 774081396 765395607 998349386 845808912 958786741 369799844 642100690 330074500 361854045 482052931 767429599 586237146 970780640 852619909 887345230 355005176 842290571 29801324 519700588 770572904 850554462 921879274 978277581 736585621 847051239 173273760 238748093 612052023 856571607 118548187 946932174 884435930 951631790 149644953 960915060 159137668 308748244 161057471 334916274 730863654 788409247 202065651 215711789 712828002 995519980 584407269 883196380 810612307 887897108 473884883 847688323 917969179 937335946 658830318 715756616 258535260 676440023 201576364 870443236 111314334 183930691 649553414 928529573 22341573 194059555 930728205 966184173 638754478 937551029 778269827 865504592 8341211 735892674 277318027 393650309 161154573 440549250 752989620 882355181 207105942 298703211 552894528 769684203 376027697 478287407 651918046 841670606 662741421 762309038 427663595 818492023 996206112 998353862 744604168 799440332 441860001 602655763 16239094 931094488 505156689 853938182 401776545 701531969 280926231 767847205 502847695 881699594 531554568 543136906 910518752 913799485 15036750 998922144 413461366 995103436 429162416 976223241 693676718 854152869 870536301 882921352 235756047 985338126 302017703 350592844 67743398 605248325 698700476 792843755 932439478 998258736 738025061 980945242 370081864 884794138 498583922 932415257 621016837 669086973 444507974 833956611 935611526 993934100 649684873 991262224 145810277 684452005 921524772 949688995 457467613 702608550 500907881 576962522 611379013 911322878 922918207 941408717 961785023 963406796 153876394 845501662 502727893 912581351 837709513 909669374 390279065 694755323 31609579 422757662 224359560 552119032 159318447 191036515 277043613 551571224 436438468 520212483 50686792 461934346 499628316 878020128 923541947 963179567 382518176 930320457 54095211 537763659 262084154 317535877 136631993 342170289 67700316 912714174 12196087 126956246 985844897 988332963 546774408 875735834 269273554 394197002 522859503 937631777 310648633 542321661 351837607 374274831 259885251 381778840 179406737 378111474 870028400 898208943 779247499 873379028 407889614 820602188 768418766 778690883 611371592 736908274 884545125 914358212 471718417 983015808 434926667 509877605 739909852 965720263 694980217 898159324 359795838 774162538 86228388 432526536 91243742 243175636 114467842 858041183 640757049 673848016 619441957 685093643 380825221 810407757 995726860 996846573 332605437 865441314 706897451 941148260 611453286 671795079 862205952 976283863 466631211 661625281 70474478 702970935 302199374 518547037 973609219 995968283 209954377 247819300 92179590 289885590 182906910 586086662 845207678 986452660 594089904 795152782 19738936 503654441 290230678 595797514 907121071 962053526 855344497 973587767 480869869 675287668 768692035 917361657 879482393 969546814 336090244 989387433 128330641 918644490 819438540 874806701 850735593 982783820 16120316 57056411 208397306 926384427 961926967 993260217 729578178 855522853 657324058 854372823 324561002 525935868 123752510 467086081 518407174 634645701 457281406 865539162 807756860 883117399 698882768 723991057 677887724 996847400 721048809 765715217 573373007 945027040 49960874 187098006 505036165 562942722 467403788 922675616 411688801 529649685 21884222 490201006 539026424 693579170 270525258 717511473 772732490 907922200 49567816 160951963 150115872 223524003 980043233 988592534 148935286 176683172 401212057 889465932 746489583 893906011 65491539 852825704 704154377 783346491 761990210 896280963 840804275 959537635 553876949 674757829 644481171 747772422 44660007 480731591 630391583 791622902 881036526 911978586 241131372 489099478 685708718 938343609 332071265 532143772 674060400 701975782 180467740 342337451 341451821 455665930 402749875 493418699 27962950 267760121 370322036 584516764 120073850 225544885 510986520 800338589 655874286 927837910 407775270 803321287 657314053 831721396 488050219 990314564 60476073 745257340 844923616 988572599 469388063 517619158 857995276 982215852 486552305 736130172 45745742 969916312 315689314 942429772 35522584 292056860 291390951 577108799 131658799 411296608 108522993 838593370 209979131 943424187 915463890 957106631 968917974 983462540 308788690 618278195 545996659 699768916 801922788 901697543 851994587 994066383 807037438 813347419 602789930 742748474 197534910 384547937 346314265 592286562 793213801 968114785 314991288 565823022 422176402 572457573 55600581 577708610 625647399 782207279 30503073 302828738 49921469 895980789 797432984 878766012 493815069 587076026 750592590 933788151 910633763 969332458 367205150 610167570 271235496 284337342 451038344 966197512 574201801 791962264 872656892 957529747 589557372 920524860 493964026 837807760 908509132 983233082 541317999 906452568 155139050 163213972 409463954 641384943 446522958 597804073 721857764 871564429 655482391 928687201 34814698 135338444 210369686 890118957 592093626 664680217 996443966 997098008 881206561 972181075 673070592 790964198 557488132 778046740 860809466 998901156 196483460 390148263 174801575 227872640 334756301 702918996 534833715 671898639 479518925 535815087 774229318 962384961 909510676 963436103 600253789 726402571 680914450 970725816 784712019 863711195 869077873 895831993 28239233 307580834 403812212 780681217 448519808 829090872 275150168 568631200 174500021 370996658 779879216 877390465 542127022 794447231 483754572 880179468 127577614 464010975 595544245 804293174 986118800 992596210 971877622 975615922 825097319 869108350 675414602 982519085 231703274 690115480 387730786 520791282 615058316 824321285 704650949 956614243 28583326 441619867 24078057 33706474 764151961 933901303 513076105 635883807 615728163 885629194 943178736 944749783 60637936 104934935 815219963 932297154 248803508 956846199 27272087 255816862 780540209 996637282 534170165 879193434 787045546 816458673 302966914 833093527 337298993 368997343 468920069 743623913 878300231 894485283 249395405 810719392 825406771 959599194 958204955 965971517 258251445 776783789 913413185 970108145 424295699 772368186 750800394 756578060 832330186 977873330 887278791 984008868 830873657 941576573 814603509 901373167 349286832 692606375 103373257 473411054 904465357 917430389 844991783 943520163 20199257 467678108 880860024 921354387 258092533 517299833 726393680 906369116 970978402 996167167 82616186 764811415 201586283 458161631 498467690 782450437 257663282 868876119 833697041 890116169 89721797 174414080 939517365 943306722 313312781 766508077 93045998 196366418 36140325 231680927 958217986 980711070 634266756 937503896 78989937 921281662 454599927 835631396 512620760 932787482 607697239 766473152 309932362 803243339 184596961 198211743 165205996 312270520 165684218 442535500 408496024 587140765 62204377 724247638 437773723 981635735 928545244 986810331 999038581 999039721 796489940 871637046 984556605 997504371 637145013 809426393 706078231 768919430 385103659 877138667 48373140 497725003 979322096 992439971 399918897 605160263 668332806 838706765 518076827 821767740 241691669 807037731 829807276 966422532 51063507 921900568 436794661 458949526 264599399 616234482 993838063 996572289 320760410 783466160 122636547 634085593 191292273 463304292 565761667 588528128 885715327 988791820 415118678 815173248 928981469 955534218 291365579 354650100 930525188 990648564 14042007 391751527 182088781 789368505 908714177 994432645 997899152 999250345 150041364 256989761 48796084 706092957 445076250 975347588 51974453 62240409 494387180 920112323 785529929 937217569 338265779 463897919 897411499 970652326 208721024 561083481 905200945 954510084 968440760 983310600 52427454 429727802 692798739 834590003 717597503 954059613 991108666 992248310 965883527 977330145 702314180 954894212 808429123 831518285 151869723 393404272 202625094 468528381 80778313 245756954 776323100 822595282 550918664 628248172 398823617 674899529 27393836 714756581 539392819 586527188 95777075 124840381 82462353 211572004 981884005 991163040 107782793 391046519 642177586 797503525 849688731 975339204 889530073 894426552 79824090 164904073 710889015 951836359 734773330 745757534 746608030 768939575 753548723 754289388 670262729 902710323 449833410 810848198 739085583 868137103 381399625 706352882 845175798 864920907 64596740 843198495 646536367 672839602 449391007 825744190 557621474 649030279 912090288 972412682 60526895 577303752 972391828 976178000 394856652 867228668 658240857 977512689 375572082 756307238 529629351 845458700 383796304 524266002 112608108 265640514 939102330 951472078 719199198 940569878 869435335 976876657 748564503 912855881 291047846 588649984 625427452 952176824 574958137 606913253 440714216 961139902 513127495 581251118 789103274 795918668 998605130 998845247 519484424 774361754 868449160 933032570 21411942 988994259 777891175 788292282 811015589 974251804 623137900 814270249 785525197 785712994 221360904 757142883 398623008 476117033 399041806 570615592 916660308 984173482 976200279 989665049 83692566 947595502 156117426 862990924 57743660 806604619 273576621 844352760 606827781 690275095 89859721 177949721 105699438 413604231 965791327 984368470 776492685 877762279 922057978 994918854 37036629 474903950 538574940 790530034 11778088 217900619 383100179 767470120 389175181 661017609 169774859 866197893 437170486 522736489 295999143 583027327 6859348 526211969 718185955 943141167 828283863 977240489 668284039 838688025 804480870 896708762 528256636 785042479 301292181 957349475 35713846 964088992 320303190 837809491 750381735 929823948 541232104 773869232 852529029 980049354 309459772 914975219 55637668 847027115 289534189 464207362 271276477 998303611 603028386 942353980 542837035 579203019 411371140 542440424 942385451 961987521 89744045 188064714 292477611 304709720 578704736 845177765 52888389 930226451 498177719 795788596 44006845 882156849 857505931 992230374 561819479 960293274 698704449 771886607 751314011 772875374 687929131 989698943 186857655 963974725 365533023 846281042 696993044 882733706 340615342 410780672 575664703 946346160 878712053 890263964 299699263 461209508 960917554 969428459 497991828 650698374 999192835 999381584 41016300 745969830 913173344 918858309 583901316 798896361 2494369 369211540 490430454 649511643 927421470 959670945 236427995 292139520 603377846 989321587 197498830 444758940 884397528 933048610 205570392 457253808 273352387 285577964 938785119 997093356 357933714 560883178 83030253 450038988 79813016 601533557 992853944 997113997 283256985 485174623 128409930 893875549 937114813 961155730 326793062 871379919 978765691 998924859 560253867 947389221 828993302 960287613 584372864 848610568 362044294 576842801 508018315 713448768 113301151 799926822 286704726 911801036 131456350 259515820 804354356 838099964 842681359 956990162 860753063 928852007 992804310 995790825 867971015 995558422 475105091 816982063 144719551 214814777 453522942 846261147 518066221 730907511 73869377 949372851 689477367 868366906 764482631 951661262 202096232 241317966 517275925 703786663 327082759 443318471 909294719 952943686 14625056 573666774 693530900 779416815 984305839 990233347 141591801 805704015 610895801 768497613 137055658 608999615 358649913 549597078 316277290 457727778 468770322 680730052 374979817 655922363 522377177 918477330 815441026 957175044 601666362 948417781 826075232 942321821 954930738 980397817 727042342 842462801 183476621 609555284 480415808 568082469 951810577 979934133 977047975 981440615 563482031 650772059 203283855 360101464 20460449 737290906 516900467 520086129 588355156 635618353 406046994 637479131 722897620 949602247 370528540 765327024 908878077 914419891 773414496 853853557 764759130 888610000 674453781 821715559 877009710 960133515 955424972 962095678 427434691 443849869 482452006 658391173 934456994 951801893 330646898 990621290 518926880 746589074 120880382 912562590 883438188 973875906 542985578 853391024 294468089 307892255 109197536 430421906 373213208 706222557 854862046 899378135 766467404 884634921 175069638 913254636 710110593 820463961 168881758 315745307 671885913 791535539 783240093 811420205 107823706 554605284 330047804 365855614 160534011 818942265 339973376 744814254 472228397 683447416 990366745 992331985 530358137 885981415 137528916 543527102 600305299 923635301 466613866 544259840 484249631 643902716 278952425 633754323 4881995 611185897 495622018 891646055 337896671 984277780 683610422 751734452 666313897 787104717 216317456 381590067 651715481 976895481 476305970 872618941 830598526 980844021 475891019 934531307 17385697 340039663 988093226 992946539 386702906 607893675 160024308 540806296 418082226 722425247 78656149 531181074 656536027 873061841 732686475 836057802 750202316 882368135 30679587 288213185 527534416 663653820 18994442 451372480 647960100 939866506 236218563 236380288 888470863 914522267 345997834 524500474 78127679 130384495 787953233 915722869 929504951 968366449 709819531 790492851 913806436 977778300 117050079 165142234 45665704 54802647 639570694 975022028 505838796 887743256 16770528 626176532 57575195 773668048 291713653 633522378 697765028 978868725 785368215 931723419 705342324 776746469 97422601 152122337 871213856 933256323 796864232 872973694 352131946 511179766 675631193 719776261 732802367 780143217 608094025 690114159 744960668 883902714 512112357 589643458 91453686 906130604 553103116 900956622 437911888 992538059 896625693 913585710 559446151 764597633 924151938 989332373 263788543 895741717 877902013 903052808 79282988 335618935 616255706 930911153 945584219 981836602 850841333 988587816 844632495 891933199 987190081 990087184 170332303 901524340 780052125 793194348 412970608 543577915 502138523 654955663 909764781 914232438 963499632 977671752 56673883 676374080 102038633 249232929 624848385 832871815 884619871 932882703 498756830 585828504 354869037 804798906 126503453 724716124 167485388 711778674 387266917 937496778 350839621 452562065 652418129 947385309 784814778 868911914 538294311 918830754 639442345 953167108 800220821 964801895 192872114 536029514 611288479 663375004 884022494 956889201 745123547 912244613 678324359 840715874 242308419 810529142 345468750 492277283 434535387 616916483 664798658 742849595 210208116 561530558 917134592 969076718 860808851 884205347 100670867 415280802 384627686 412924106 968048551 994811899 827141688 925400127 724247414 751315065 599484039 915639647 529243196 890772396 920485457 971771632 885909298 944723481 182515212 537804153 6087800 515881513 679745581 847365754 2084088 807331525 823276254 982978201 52499395 750901834 704264909 864174545 498979566 883993066 940204177 958927990 109409384 233610051 253850122 411750371 17493778 971900133 750301254 985468607 7135158 924917474 262792572 437367048 379417867 486717138 301252417 548710365 83507981 95465162 820722126 953939395 910964648 963033262 820541120 922306649 880892312 883741433 992672118 998979761 616347642 902922555 40032737 729570440 224503490 850202660 857256882 941890597 910356156 994159858 512408939 793311030 317236121 522329899 787873770 934978634 229977699 261829356 824210735 855893602 370710720 735439107 145236127 330887562 94128931 248406202 855841656 894447492 929138539 997655371 468546860 507244531 82419828 771413314 82615596 499952324 796114476 841666854 847748446 994714844 676101241 973505362 190033191 840872517 595953022 972402763 977520854 983622200 165497205 888261146 738116772 900354198 263863688 432298768 101018858 971545033 708963255 776040798 422954046 888709512 128606221 682936453 580649057 898333739 857843126 880669189 755790200 969695348 190729603 711128499 252634258 508739822 49675195 931097153 343133275 659923803 437894977 994848139 947937111 975492454 315850992 415617728 272043784 421921096 992214402 995516469 857392358 909560522 223169465 605012651 890980817 931986236 904528920 994127984 544277682 843143429 138680698 535492618 320290761 424117637 118494507 744273393 358887735 460821499 547104224 619509261 422727529 943652810 881857530 915506957 325122990 484141013 91496279 417584373 36632402 39224026 440097595 657685557 215832054 753911154 537600587 549954455 71021796 660342101 869112286 998500727 800877310 937982618 296962844 365461574 686150379 999377514 273821950 854911487 45698008 221447819 93001135 98836188 494946331 704239531 972292103 976007441 13625518 257068081 684935072 862645837 781382864 939911720 875960428 945964786 945152658 977681764 441550538 630551029 250867709 760972812 852935940 863731255 75754194 176974419 915941311 991471089 870503077 958763133 751308883 773313758 492770207 583691525 518062229 610295291 661712849 689175969 794821251 821505687 412622163 665831000 631694302 778994899 621931128 900691547 879056879 894373853 225602984 594983598 57296033 740211752 585895068 775122756 659778192 963335253 730742826 950752790 760603035 976676896 264542345 941399972 118487575 922202393 144088341 543179017 342791535 571883002 684365747 700804171 634809737 911554115 647382433 812949711 256440895 714181012 76124005 930082220 187814873 490154967 880722933 948637949 620394937 900755603 681160090 916227545 996067188 996286465 851754946 905137471 297430706 704700999 741311368 799626545 98862327 747145515 884892227 945845603 718892597 763902920 269888504 888209604 192318745 811134957 998899534 999065545 648929642 930966422 117575394 974507116 289366388 740228074 613345970 849158419 778440214 804950363 145907679 860947018 490970535 931164517 141707746 492301910 539584592 581145267 936812487 948270043 780532686 890696605 945674095 951190814 717531907 864078065 164873005 706706331 282088243 734097059 713585317 778675577 217605902 533634751 732046063 822734407 844804054 854695115 332272111 639147104 799994026 947000743 839187554 929795784 492786396 717257981 716572403 717274727 783754935 949594227 22179238 296800740 911008711 929089839 212130902 517254964 906419339 992032405 468542316 823829217 297713261 516042420 714713304 727445380 519891479 824493396 54101944 75600162 879056237 936016052 537620515 667362217 888762753 889718570 406289105 808204613 686692812 820674908 310634501 322463235 533100489 951889628 57378880 916668982 968888124 972904018 539566277 553028347 336982869 771443921 177484127 778961672 642446882 743147691 612197404 731220152 603328673 837824871 404835590 739867730 532456844 669343117 330409386 636566226 742603602 847993619 697662599 770066411 664280373 713641006 972658119 973556811 727376446 904028494 160679919 340412909 442989903 831932251 582601976 848991549 213412942 524407270 352757526 664431210 73237618 366156953 147014356 661543354 760852875 997248155 170148876 815120166 775522488 904077490 260526570 895479188 403374124 803981344 595264453 670187409 690160572 760291408 791949846 924420381 214494075 621256139 736674556 753655753 682149480 989042056 210315335 240691162 524297537 730390809 593224041 658847634 456139830 693747934 421315071 625391989 255649997 711815374 831447970 919037049 788540047 798086848 80866855 184383303 870260819 959280872 169052884 772819111 692480818 786057660 208513324 233209536 211006859 480177152 258138582 340566452 479308027 898391247 48022089 549632662 196762283 387750847 23244569 845663657 921469061 993058210 848541357 896591185 765369227 815952724 886973959 887130972 112653738 397346093 842956883 992164512 238549384 477248842 618908962 690074159 807623376 814005250 528928501 748805670 61063664 400810960 484169283 570175016 810288503 982720258 704711703 778880992 149260503 585098891 738465783 782945444 258104697 671273892 890751994 943402094 223733151 425097624 477993202 543007396 567130141 938605763 821465770 994675736 824363871 884960270 195626390 630596017 85525030 984720022 378938369 764274684 601005805 844778778 498476910 703287240 498471567 771460607 445207630 762738726 191258490 586313935 580412683 619943429 772008406 968460106 639530907 983256334 17343525 844346397 910301718 949722305 82628506 864881781 589906142 724130293 797151610 851726880 315296072 511047448 281948289 789169452 190865931 356508406 375184555 547683938 981939478 994567112 658622435 889531619 704033678 808058696 795734285 916116302 539155501 756279651 478016175 540869708 396409994 989267643 617883104 658674901 976082705 982522384 864431504 985212575 589661626 795217967 20182765 724960430 502782306 631948243 251263209 479406162 865290788 934742818 674983993 835970920 931091022 987145624 359896047 942422781 65603410 161597022 808341014 821396149 240353723 758969220 665432734 835898323 129591404 622322690 124995770 815657504 610507643 856886801 977076435 985431041 450106356 696149447 905243348 932851408 222987392 860413954 249417794 607495814 710753009 976612833 35189380 82965249 144349460 387571718 147052957 970395734 360850464 875971692 765094659 783724190 230348046 531512183 361043642 538588342 481510128 860178070 624622704 730323741 699891880 960343112 181515452 938933678 790798750 960577383 997301995 998551216 353661537 818288075 325071014 988801373 318182108 513849295 906010000 915388482 680300280 802014938 187523809 745801359 92021067 198395365 407860543 446182956 413305051 507967819 300968303 962828551 562949095 611675277 5058594 359067076 752026131 851196523 226403674 467645847 815080375 850173358 764581722 983005742 650173460 977663006 120215642 661360725 479908767 512007931 75703361 161826581 181008169 482210152 435212537 611226065 427343385 609783719 618958240 884546213 364881908 582944268 789264523 801785288 341165930 364564981 940664131 941469075 303162290 716262611 536466960 726633308 943726869 958899250 794201041 864744889 259520798 398486514 511088576 962514891 297216830 938178875 272425156 313529437 458584915 894336549 567736671 743488536 160170290 437526352 681140602 718896273 653303433 837824627 945334202 949987718 151091843 785208781 961207801 985244626 409700733 508721387 40254981 489073227 627929915 873104907 91972926 498508329 708653733 894001027 357542624 945932173 941392487 946160523 562845250 712735667 919471289 992447572 474174163 753774939 322749819 734218557 775626525 846153439 950389032 982342089 975984709 997927469 986212309 990127957 9333065 349807167 997626 302147415 49895663 868757786 555411798 622519533 126696557 803330690 43066443 711101526 384410271 901121014 365380781 856088878 67226306 763784144 72873119 870617379 161398472 199058007 20705995 819230320 305435207 847481625 401027565 612151412 857356672 904181101 942236385 952410264 543398436 934523951 562584652 663723187 768859101 773187335 531941691 535295481 483846216 494938974 581014059 890836236 482274421 651213306 719787799 907037485 391032296 576518741 428268738 907949151 947258711 984300014 948046555 978923682 37105224 185895109 273936154 472729379 800519280 813799870 983005568 996735473 605243349 656058757 533183931 902985408 983958109 999256775 754757188 929814766 778882809 945114386 322863595 457865990 935338284 981924716 591039209 724259301 289842610 739631685 216619335 761563555 776134259 912411415 880802689 893679163 360149316 682885402 432207922 689866464 625932666 914610925 225416013 985996903 62435012 477612858 474245061 802613459 362331336 581572458 292590086 670493257 986520207 993632634 403496680 563229252 360207226 565804397 623820430 714601028 109787498 408080370 206236283 888218331 391398592 648416527 451015534 539492394 940145150 975238463 468487203 772784801 169371234 857943746 56996976 445138762 586769274 860680909 635636503 853337150 310216186 558793589 287523535 627466886 452285067 711968604 891968103 958803668 241601462 743337832 800672209 878547453 277840591 661420053 325753819 373664263 807945605 966154240 763107147 993846727 432972120 445799269 640001804 709164120 684051064 929057745 768850973 862711309 298849063 387546651 109498406 929693690 947729724 986858380 210938703 894100669 289827319 718142945 60607151 165508645 878313737 888486260 225116538 562575694 6560655 281785690 17228277 376775365 332260128 591869138 887375077 910103543 389899721 912314734 755267018 990891366 803546454 837174800 165878474 912315264 496585721 832701154 551090515 710785956 222581225 568158153 277585600 443316497 577515411 658653946 942614276 996231139 526918704 646558602 246017013 944413706 186762663 743081878 917577475 958588234 621649057 946743580 272536356 304448376 978813195 991857798 150754232 170655954 318903662 977569489 162176066 216675795 130014263 675901489 275781217 581224222 589756115 684919993 50385642 197221529 721255378 987191510 193115358 981792796 908967821 920471440 560258649 697750042 595911795 799371601 833602150 935743394 931394805 944628218 688926721 725169383 88410037 511441612 168770982 810444132 897414795 951785510 331323288 526590880 139564370 248185528 422609412 981719181 324053633 910524982 37982458 271816529 913506189 957534436 378459914 882588992 750091556 776326149 872532513 946346622 660044895 954240592 647772354 780428173 482515289 619749223 584279805 588806990 176471559 297106692 169974111 741839740 377715326 711412771 974964343 980998787 183928292 509460839 89189629 132370891 364926735 883050784 865871339 922984695 548858189 954051480 317575922 416062888 906771804 951870685 693295933 765345091 641855540 721960643 876794403 963081767 434846424 775097693 417306395 428221288 626695347 672846448 291407467 415824940 612748084 687700309 525981283 977179241 517720508 727731263 533622176 682055626 386864997 600719700 225579010 239710528 285961385 573252894 930859232 991510156 810857190 877419151 494486446 931386635 352200340 787284999 886836788 985667967 836547088 958917015 565720564 782930800 411218718 862632197 324536653 469694986 472188085 875607840 563329301 839656284 509064995 681080833 226317058 504732813 542301321 979057491 443847841 946011198 988220712 989394210 306772609 604025047 213111005 679911184 859848485 974349059 354667542 567892644 339124855 664094536 808506969 873640087 483242098 998086495 959536893 960966930 367588360 652473348 936897404 973613009 857383819 914891069 732865481 763511364 231329420 722850848 433561836 766704532 762024494 763390486 609525503 762623087 561139123 982591841 781042529 895740056 684520712 957424785 892249868 973783050 554725479 817197097 823324103 841051986 611142430 731789596 846240881 912776223 875480281 982094476 96379638 651700665 717626203 884176951 729989237 964310340 120350073 476486424 901478287 907223572 226305506 484736008 411884934 425920167 622830331 822470890 963917919 964388812 827815800 983155336 657640459 901721022 933173825 950848005 333392300 454634915 454685436 573911025 935484471 990338783 485617054 882065737 456747788 783376807 52928457 240773212 399729161 477730676 641103237 667610248 713347875 735114014 721338014 982000771 47555687 731745121 904783430 943576195 530839986 955842574 604333915 846124219 492240743 946774134 399235895 955770294 2515827 658147283 353712076 542930389 371654273 528082192 615750899 875440014 265409054 543193734 856623616 890602212 255311387 684666788 433313621 672880941 887222294 923109685 811872158 873768880 14598828 62963204 123643509 976749061 244413362 345614115 115186045 274056804 260182215 825584803 484308932 507723255 449190836 828989504 312459984 784362741 553280591 744635508 688705472 992295502 525457955 733677949 271350287 615776725 829731133 957831377 222617725 299278004 302686270 721793700 832045216 836326122 559067556 847164107 631601951 961939794 474220992 741527117 822429646 837570579 564966724 856961353 328309098 949051971 221861891 616889346 736025959 805536541 252655430 560084603 584289004 864831122 868831518 891578293 216843127 909073034 90424327 581039153 454086251 461306396 245089577 251981712 63476991 363532915 408770212 618848936 712381616 990762545 153205425 958185858 759443046 954261564 772799757 875630790 145313651 318890787 867864837 872974487 310857788 641885812 944754012 976902569 924989364 951235798 890078804 917358739 827265915 914278271 33527799 889370605 756666697 772576059 858723323 908344168 59098454 481425871 726084374 805696621 752850867 841618562 756132815 800041895 751868757 872236658 851223872 994071701 578309133 929199572 942943678 989706351 108594828 679248390 53332834 484884501 279376575 944999995 513390614 610008165 262430547 642679746 368632010 799306588 512711097 809077277 179581457 991383580 958925994 986977730 178893510 449214554 324793170 376706813 518331497 590581424 155433533 838261126 102054228 244962660 918885897 972122344 469456502 922580249 500755218 625928413 245980938 452626002 913358310 979100619 389113607 407658333 731583916 809526630 852594148 996814703 969256576 970705778 972743335 997974203 124270884 373938620 637082230 780879327 850129931 978478452 949463610 968261532 447719103 759866406 888704093 920407567 913033472 930009769 115300879 963070162 635876199 748783741 889314784 960861926 642066482 971209786 898453756 998030001 539263424 984215828 440501065 576531192 462699245 861750641 374986478 918513454 851074555 946154070 102460203 584980662 672622900 737439725 930758971 952260937 365323352 783647519 505818416 854844718 797297790 982124267 393009372 464073186 761532615 833163372 950036862 955015370 299417294 693644834 753008660 775682630 704936717 824504121 164439317 746476880 649780187 964499378 615229860 781845242 54609199 911983092 842611469 854425313 256943334 570914395 205803102 569474271 93213325 231376748 252089513 350963442 882451465 976667553 702875881 938002514 677118236 983886471 145865374 938617591 464029282 907040522 214178294 684244471 383647832 823029793 941688486 986253103 7673614 111989211 689878210 861392862 539614459 946481669 516915410 566828743 874843275 943169489 945117520 980463333 817890453 978196460 268472651 429005756 615015999 815674643 652459284 735829918 25751760 728985658 943260049 951762460 33455577 73111032 802673313 838385737 626424301 711403084 448408544 707616565 910406497 959350007 565381319 618031731 298305464 676209882 113247827 234353172 19703065 944145391 472802475 987146562 806290655 818275693 660790343 771158655 303302749 952603341 442838705 716559728 780890186 910445966 227039196 979205016 509960095 596212778 448932024 614152995 847668263 875956067 540897228 633924664 380787588 730003119 878544329 898181342 296156706 715026265 861286321 952319836 138802687 400101538 486921880 702103232 695340082 721693609 579439829 768594722 141654833 799204375 770186990 799153718 382421038 590175208 498127862 713054830 235686229 463323891 739212831 975447330 995327177 996482110 980425176 985981382 366046390 449761758 323136278 962838646 633290248 852515436 787883658 965855333 429260823 866117403 56240853 605600422 795916231 994555865 750705217 960661962 718284925 747079871 857689291 862327095 208390160 446010806 398047494 494277670 39244518 350048343 468271123 572226277 71038169 116354235 938867391 983000175 335343315 506069012 300254486 576785356 972260348 991684516 435833544 715040558 337680375 805860539 63389772 889207847 314273428 578269086 514476536 842788869 95881864 203183733 249889234 277885497 791136869 811444111 860514215 974397490 187169552 831199224 201151074 598759779 893927970 941230998 445209834 848398941 557325775 633031354 332658442 488158707 87303100 668835227 823683553 963488449 115421842 720542187 184635146 974026600 426878360 600041233 866209272 881876667 190521315 297090472 536162254 596030413 81726321 186972444 491669769 782817025 445038428 770386315 124484353 748551765 473720332 609210209 392352677 576463153 799806966 977299482 30987882 859979888 160795073 947862648 39759433 562322596 9725256 262697784 921386806 925905142 311157132 753406915 221273958 762951402 761053059 834773357 934121956 940213556 545104904 916405854 698273229 939297895 876084660 984584413 817504907 905606354 857761758 872527985 414426223 418605296 263510794 555463521 904827760 965712368 245145958 743055459 845749385 870779405 88229939 440156111 281461176 316890625 796856819 949246066 785886519 950157429 969614338 971402824 679329327 808636898 650579278 928806481 217237547 403525818 16778453 273963830 360083504 389946107 508158062 574027120 511801092 889785175 108900045 981034755 375339756 521568848 272050027 975175535 641240615 968026501 310857301 759457558 318902049 387112519 657560124 862764180 704258268 885766462 938555361 981878388 251756246 387790466 818068925 912441816 228000470 474746777 816252868 966500640 127369865 879381159 351679612 676514800 658803225 981112758 626539981 773761441 65559680 469941368 372099705 673890748 818756453 936527498 903401808 956637428 574899724 897636478 801947170 888357251 232599403 694156713 567734198 971170667 65915863 893811892 649852440 902929569 651050996 741616142 823556006 986974339 171488508 209331897 599336134 887065001 53131131 387649934 839039932 956730346 208272311 675490527 358801782 636546832 585545584 800949609 948957061 991949778 346758755 779933769 239184875 505653474 599682699 968429572 837401041 957447015 982999378 993365444 950980783 968123540 828684903 842023019 886341755 974741502 81479741 515671348 699315143 714768473 804543517 965827432 308072610 358839109 761899119 833310604 239443146 998450193 920623204 994924834 161324388 371827286 353471612 548902227 382994805 906162728 213778551 888232446 502178782 608748870 553682682 724299488 237443498 332814307 995822595 996891177 244133714 409391581 214606185 498419146 81897381 947904090 709620810 930735789 284661292 651597028 853163928 969395615 627082857 723370651 576034336 705506161 798301644 935488091 596887860 778064675 238158927 973121515 353673137 843889380 823432585 940242677 98503430 881592707 427831263 877384367 106563499 600418428 422373313 785114472 283708206 508223557 469566162 735556042 506156097 516158651 740986203 833071727 984771081 989072705 168727883 550815321 900349730 979105606 332826439 477828505 748681170 870475881 405779238 776472740 890747922 979750398 731809745 819333357 724755578 974441757 868688774 940522294 885726519 930989234 766269707 925723690 992921048 993306513 829733115 920118519 255121990 922333274 162056118 323667848 193489250 980106933 561814893 789133310 281178271 968232454 878682298 939270627 366832415 424754304 100813031 398352890 370208786 915396256 724804300 917523278 158304757 678717813 548119599 648504796 863553874 875827586 830913485 891079374 975778086 992163658 914890826 978510147 771005120 944906882 157106859 407271000 815522626 919983946 61040531 856422708 951967741 982724095 549712094 612752233 36017082 293549945 42196441 593694015 42088783 799104649 893322569 906782587 80302979 399117033 381968900 822010634 445403516 957336159 670188133 832165141 655053603 811815119 371571032 610916468 340731078 640235684 774794879 985799228 505910488 956343318 366265576 863070793 564146184 837802899 814852127 977799634 565617550 582675649 113695348 219253766 19114461 340968277 501421279 793724164 478407687 639488061 135901060 733092382 64319641 357447764 564137549 943755765 120336082 177172638 186887795 933300811 196833103 533276654 420028728 655249597 610870044 736279509 445647342 662611014 83690878 271493057 697669219 727851274 663560033 840895557 223232910 282391711 368977163 622699205 746944201 912951463 857234822 865721259 643180818 654931169 610206233 680670803 964769257 976567501 963209368 983932260 848639059 882451266 424268860 488952009 151021897 988136907 286189159 765465796 270656228 973753358 741733107 772886135 532299304 931530447 30247896 663603290 304244086 720176159 18544849 919512899 887926487 913561711 824634977 974386101 254793481 804453625 196223904 774167967 950549835 993613025 963480696 984026649 901077270 950276390 715708453 906223347 983064418 994923589 939304171 958367048 500529213 997817297 14389441 789595881 739011576 887143513 375607932 824790357 755174097 939947412 918968344 946585024 129521946 358965734 339927957 674853312 895205837 932029218 751830258 965555747 1377552 633295427 319678727 650966319 699022031 976097643 856794135 974368918 599347417 933332397 158101533 841823013 335218359 806769966 68837656 898091735 78687877 413996215 733911214 873613205 823123481 955742562 319135029 594845493 508453744 528559567 948769308 964977203 775139109 824038845 388961150 613979082 620595723 807522986 242610121 998247570 979901685 985772307 245815230 480216968 829002726 908557610 236878921 681570348 384434949 926663071 279076276 767738960 639657515 909921301 609306148 716879157 173905879 320578117 729218438 791993377 745490091 771500825 293833823 514340153 269977433 912709588 749389508 751281434 890568965 953108382 394144685 566845476 502962984 953134647 116072522 331093601 290873098 586488751 625185870 674742434 772743895 883703015 326668119 844949605 69799407 346933503 415025202 455356356 192651034 818069807 576896449 829553123 949545665 959889373 402657752 906029592 410115755 410331994 214020845 710303197 581181057 945494065 981576927 985631573 400866989 685844008 165429165 909748902 431665243 725817065 382689835 760321382 511593921 876101710 266061948 769016776 739450505 914023755 319286229 794085925 348479951 623584518 88358129 479597884 45974205 518709981 147897533 938083325 126126285 650654885 821685518 856182197 247596503 280264064 803431113 971608229 868215096 991245635 635397395 932462145 82763116 729259400 576287943 976857316 356822301 719805365 772777645 807362449 522043561 808317214 268638487 410018805 609932229 876029156 767264209 776152624 83767970 949730886 887964316 980968540 700248996 779010187 192097238 518008457 44737938 630173958 582758583 701751820 725213760 975047416 866529909 979436283 713715123 904348575 48133187 626270227 602923221 930842381 820557357 880856424 144364820 722802515 371537570 581671294 178775474 755406479 913083290 943599490 571000270 624318234 302908031 856918902 456039305 766327034 632619667 654973173 876632378 903840352 490195122 563753636 737147024 804748637 285089071 410098621 337823519 768527537 704350783 742710741 750682916 989696214 137707514 242567016 735013571 766637917 760134037 925551794 385229316 708573806 747620687 925673440 482799877 678450863 663182604 770249140 823600761 852616829 622052892 908486109 998645749 998963138 400846385 812191783 564900868 819966037 63762323 451522162 852686889 978907102 238466076 339124793 493999837 774181218 712220186 731686945 167258810 549708815 106243329 240231179 918178940 966129964 112211572 436960115 307067459 329006791 492828743 693121417 938326763 985009869 86512399 798139075 952264920 979971514 806825731 917275478 161600698 511010160 105135390 376478862 207330833 424353148 558569901 748691701 485683348 875483178 432586088 782746638 40552421 760260857 620563061 974288225 998382936 999387636 506408452 905598272 513454467 523329910 568575735 827238229 969425849 998336714 385172513 655096651 959279354 981107866 531880685 752072710 503553496 991316750 538915612 767950189 212662712 444610326 762062503 952024498 761961043 809747684 617646224 674611457 984992994 987952807 867309217 869034107 368720530 695333752 661687369 987754316 740184494 896000110 984614401 985034504 529969160 948313921 985102251 989001247 729001914 773811472 40582975 881023289 965815655 990707909 990926372 996654517 371937108 769311242 64494296 794568057 236628405 241312574 983737862 991066929 160230778 178857542 261133528 928716590 924784866 955962553 656123346 763704797 453475591 549801957 770260775 816329028 909083943 918445843 511660996 594347918 941768849 945116479 178975390 189757338 969145155 975102547 871657514 908316240 286102149 641692691 882480687 916188491 232717647 928573914 397888863 536071914 708812576 980714978 335804759 509745810 807257759 849544269 779384951 823982486 681842404 870925148 364739976 887465389 275579556 647972533 863973008 968231986 402785976 686450745 864478215 916318257 806192857 808371574 162043978 500920581 10117129 964108535 337644282 596393684 595455529 806350192 851773212 872374590 67399371 901887113 955847802 956627693 864023449 970908739 445759160 760501975 311181645 980809935 841027922 968237296 566693913 814181874 131153194 805757403 563539878 712468155 264410859 412090412 120401336 926816403 148872847 556028978 809684254 847106149 983405265 993937137 862156677 878850217 193632790 312849784 425826308 886463271 478766256 745464450 597134412 927700622 109719434 367325558 665852553 894760738 710814680 870376643 396352373 565720210 554062367 847988035 393975149 571383273 3034858 466684137 928772942 947122380 738347309 807415535 286782456 659088197 820853438 885607223 337597060 924962983 302275217 516827176 295165385 482056832 683827201 897863191 937488738 977678125 539973864 909159101 384489837 924543629 140031728 614465182 927272295 927788496 926230185 946793920 272798495 978668262 876556366 949112655 683012674 843789134 471182118 934960771 543579578 909516169 935742842 991933699 710805916 760864063 895298653 895972861 302620286 522993448 56374040 121754592 913028012 933768843 883426514 898855522 914176762 952770505 101020510 328304835 279366101 286444692 668611484 973014533 204545120 736927721 827128240 921766939 191843166 337805097 791803131 840058060 256200602 392623648 248950261 386502967 938640885 998120636 988662934 997103509 648374235 711693574 149456881 665288958 467747546 807245638 718323966 823814746 658932443 961480207 972022028 972087730 387452072 804630709 396340040 722547237 482367188 875463263 644966383 716805353 134738485 240042664 181372711 603642015 96405440 804516704 158089159 710589851 812269100 984883494 344116605 543165538 544802099 766154497 886846809 971260251 185780635 810167726 621823871 904543611 368102472 875870290 591833131 788408992 360364353 731452878 895818032 898481491 917308008 959049669 406501782 560869942 445107860 914401431 646312957 679331884 357712253 795524209 139389666 779726797 314948144 604304019 206368456 294427078 986136767 987540512 795924947 823379470 699120904 884520971 786912812 832131758 837934231 863678719 149106093 419548809 572377582 814088128 46701349 660553143 211822043 909560369 467600416 933602579 762745065 764097676 811362907 921669054 253225612 292474042 383421006 763231993 763352583 861898759 476641028 774268470 57649338 855132556 505717613 603174027 866243794 990133630 386472839 737440675 624096455 659209298 847248670 943720891 736245431 980608874 119620 301053032 397266331 835250370 301043134 494107387 289513535 839132517 712321954 760504211 332506940 445251562 24012199 87741344 13159765 192107931 88014463 722520640 814265865 993331175 452054217 535445764 517589703 960403793 671162354 759094953 548774271 938411925 660028304 949446239 612242442 624616263 271755166 288459019 883263092 897778287 410430874 475001163 289815315 730401307 329560986 675896894 922041639 987048211 520553573 714165448 92475429 521329923 950757232 988993406 136925490 566426711 750262249 853092648 725174155 815703245 596032500 994815075 608329679 956372404 787843458 938481976 524883046 912416703 650001129 701744558 657845872 841443624 893589377 927523511 175899935 556791152 531262828 588486479 349097272 893709049 975368197 994132253 626518887 653797869 112122103 519881783 650505717 728748057 772820411 804324998 765115383 822249440 997199227 998806773 543044532 775399700 394580230 552701097 108657573 354538918 40290699 888219432 93581057 642554207 120846723 623593494 761651767 917182970 826002834 841034320 42915908 334910090 834180481 847469087 687784807 765432513 296259444 539798917 310913124 715054697 387112646 706046213 254820462 348302427 356864310 974556955 809081178 942492589 157484435 770167678 557546740 585434740 881685994 924572360 506936539 914946988 60740052 616006094 756707445 997237731 171169759 550214180 783249454 834755754 493317859 557628933 929922345 968679079 73129014 454556674 143225640 533099297 106496974 713489256 60484217 857761624 84149891 172794255 292281129 684784535 187770823 448612861 756336353 848639845 421640513 621656335 132855154 924369316 541407650 663216517 554132579 816722817 691837369 825044055 709264700 786317114 128475015 394008123 949522842 954825269 598829063 876612827 86799716 678396615 296155585 754849244 462391270 689664365 828926402 978023135 983951021 987026854 352332769 979461430 583484610 991421287 372697356 728049857 773422897 832500035 503911562 883722476 117376017 809671671 991936447 992810491 947641759 966207515 438835799 804472805 176236734 552870097 847861516 962473284 863835777 869265341 639519718 830235672 270118693 435874231 535862744 704736833 247675520 752255023 726212899 798187797 261951191 695014493 869448848 925089425 880060822 912739066 179089306 589923269 291896498 433964105 504058756 687382390 286777766 897966413 863152660 908232425 18459638 905558509 565945210 639710376 630773975 920396888 902160935 971373960 580870926 911275190 628798322 752750265 405472819 413240500 14289896 974116922 293788739 560382597 97710090 279187518 181408252 244433222 676650364 880423206 485506944 622710941 447875644 720130576 343111009 750416886 583578426 747947747 132037347 613105943 969248696 981952512 95144782 349816505 436311069 534610203 310678845 961305446 775967537 824100455 747605165 968911227 743391146 887121950 417789049 463245993 813746131 862257200 284755320 807008453 914495959 996327230 463001839 497744770 353088240 977556894 691761915 875046222 34490846 967924158 274892855 430962035 156709810 872812831 664546744 688608103 851008745 997606332 7616133 933132987 821566392 980556576 863376010 941438856 391892053 838853154 141030671 149030597 243007035 498413947 69058629 235798457 916503929 969298828 491971986 681443983 17105559 518060163 424664582 669718787 13632400 253745185 698639536 912520515 780655041 938822037 631340772 662006299 823855357 921940709 395270028 840159281 249412252 677517176 360949964 630420922 380279012 595446579 347336633 523621244 367844987 735178546 27272106 849079236 600280201 880581176 310956499 470957169 500563697 907902970 349033889 676255081 389797421 907802013 715572242 767754486 445256429 916536147 307296999 841901435 451982096 843329934 430976535 807680685 996199436 997621971 104247086 676916916 758191617 869344420 615558121 779887046 465176448 798260700 944589161 961832773 556783807 728049178 538273183 731539831 525937796 982082115 129379566 529664965 92211434 383187236 893855322 995002483 822207532 971387168 4122039 744962847 860924786 991165719 546039988 993730138 999080037 999330236 952201316 977194341 374458708 725303978 805818799 984264021 609822392 998314403 525079404 603279197 793073896 956260214 737754993 971989418 708060310 735060845 69206551 529652922 654054104 696068855 782099086 864854547 433729845 717449592 909817052 985778136 695512119 933410208 960052577 992555585 13686956 970442737 141351751 880751893 337149124 378842705 753902041 864966300 81167500 660274765 272530614 774065200 558914357 798496408 201542183 398165373 470067330 636297342 201657573 734393520 237288417 794050571 646153588 937777639 8928781 413651416 935837521 971407674 18412930 566284745 989625321 992734596 964294947 979709390 164236259 913782759 395814035 808691067 83992151 814689289 777275879 800830210 811568644 873156938 68846072 192537727 887077862 909591458 957647605 986150026 944188660 987235424 622448970 739305530 774047504 935720528 384473631 906625190 798988656 913881638 502383952 926665070 478138232 941776285 234359068 622275551 103130508 126169163 386723170 466196337 636296845 833198669 783135514 925811793 859431238 991203026 563144308 698380580 670576358 771093317 810526385 900173172 956158019 971702625 11294628 163047390 513378708 806443749 293230615 541364883 366692782 628750669 212486110 886166366 615179555 740299286 809755616 837632729 322935998 634326478 664944254 955159020 115510047 219674431 132703202 341889076 918384689 994317738 536061353 676787101 899734871 985103978 879082503 941849979 46233935 852188925 50350018 681927528 562169233 697314316 599119052 629738844 573509983 856260676 274955518 774402317 514160711 541064754 296462222 593776889 865587553 997066311 540176075 846773839 447045204 794267164 347304475 462184389 776209394 875151769 91223758 375189648 373727452 981548570 754657345 847410428 858217072 978650500 540241579 993839384 800631089 932612999 317812039 580624586 525466598 988385583 289818055 801440346 348880848 488864054 258872910 408837713 546154801 732592263 502388049 512548420 515383159 744862353 96106975 770557143 615512781 629443895 165394622 422300909 763050081 975689068 636958994 969604925 439697115 615858571 671901382 945531423 144332286 774638688 762957714 866693979 985905201 998601132 809272188 875044243 261815074 535888696 139021192 336911085 772949718 907660245 491559899 586360187 474700609 484101206 767466437 802358826 180414972 993175386 202650239 713256449 196129119 739554350 728700716 906766806 14699295 330525420 673016572 674184398 175053902 287047527 416618783 813475357 241311745 991669597 395889076 611338994 1494624 649386980 28476357 390826068 876895161 987251042 459020901 608911461 157053526 245486309 683766764 885391046 880078339 985164941 488994620 733628352 892248652 950537317 308399532 845594670 377077464 478172721 979528352 986816481 638564825 809745394 393867106 719065575 373444780 728283213 388573634 435542404 236344083 895736115 973973519 991998862 29434061 749856080 112359230 562551529 759526301 922622356 135036540 807357506 116631594 346997018 299907701 657313756 525777186 718982807 907231515 994572285 147296503 872459146 336272883 631060421 279947789 954608373 718342429 823755329 211577461 811367198 694756314 837480928 789617935 987025820 473624418 950918637 286924541 739111438 114343475 583580357 531847833 853444087 357946848 791608003 295412548 977156412 896802136 935031783 592534236 786564166 373233811 801987260 197113082 776935761 140301260 646564138 58351850 181532639 683290368 687759036 994320928 996663494 326186624 494997545 810129425 894474690 895195092 902809407 211274996 663784689 32956706 173526842 137668283 384236355 786168858 985647541 304900769 398546283 456611107 874174272 646580168 741266278 694442455 717411146 808337098 845029143 881171484 984203781 908397115 947167186 475214930 691724088 726733846 942660880 483592269 994720709 912936489 979480069 564499390 778148348 640353144 998380642 989351797 989779503 311750231 942945993 868293775 934563125 970774678 993821466 154180054 883501865 195751671 954172150 254503004 330811764 714002812 768596179 579699066 906334345 733736965 885899464 22674320 486655897 870675137 951773848 333125347 945902842 29170504 604114619 662357619 713747144 644907139 744936307 768493057 988053675 116339962 251050893 585862645 836271711 445718174 872386153 432863441 975623436 633975932 740334390 360692142 883191820 115877494 968132664 18083570 959947359 717944125 856546204 343666845 784894475 431461653 544114755 5531110 636290408 663868755 918993309 594657772 802271871 482126052 545861943 276592777 948266452 50320190 637708072 138415768 920859232 296418775 502277381 137242992 981019209 231211681 987022888 556000263 654491079 568416054 712930425 897209329 899411777 515035871 926316075 535486814 721790824 348794268 407257626 750443657 964838106 702802691 719430055 271623477 371578345 766158137 803414203 687459959 814656930 174939806 347964277 135274213 861454986 605639416 794440547 924800230 976496489 575013619 882011978 929789655 996953819 963167042 972651365 744022840 821228121 617422714 870950402 619405266 810644308 724679871 732417855 63448819 391126243 60226356 420014099 960606540 969854264 693139055 841760822 95923578 544393200 835205310 986003910 596496416 962223221 673708250 807820058 95318856 980175183 523766974 562355282 278951667 962231290 640274358 720875065 60012621 425368814 252130584 614281951 615721842 639597309 724620612 735813128 258983941 891740793 642282692 805827165 169748590 711665429 922919153 962438665 33734496 427105394 995032720 995106688 966716156 973431012 671966914 862000582 956635878 957358451 790889549 907881058 8587141 353210681 368448853 563118783 861544258 888750532 452205295 951170016 690295484 982362110 785548076 937140019 350253398 359061827 493713115 701208835 326170431 751457833 122845367 775694084 963879920 987571300 580508437 599254197 943936959 944515841 386130675 958010665 496262127 923048640 961969892 988177230 415178226 904631546 382306483 392571459 764443921 874738830 507226 973067244 379258227 608570846 45356465 350977457 807374056 899206196 412953444 521255645 754035617 875677537 983667745 993038714 620405244 660559893 235288886 354792684 890121043 932946555 410843487 709271910 874387276 938648107 419862741 873494094 415455599 525057714 731826332 847772532 108817958 430437225 621299599 745886322 301296525 670294643 682154373 881766435 424028964 907349796 271432631 278422154 535221633 897982747 362630503 597319427 479432403 950653083 628671213 955415270 93338040 514307543 299342912 837834191 240725367 705391371 459109296 801730131 996482742 997251353 994456332 996324738 531604127 986521104 484852074 514891880 976726166 991080043 917922402 946933018 625329318 695009388 698936498 731076216 685581156 713648637 370334025 888611892 760942571 808274696 658547897 864147378 492964248 869523766 372694631 660893992 986225646 989778102 315738272 787682284 305404488 771111429 893893019 924515711 753479456 938031602 254376073 406362838 458836046 577197147 784220883 925532164 72685959 269804333 466308907 896168504 68689495 458095556 757913828 947315844 169199800 446051138 752293885 855562708 770230535 809394332 377056656 611108395 232885654 559832477 719314200 791456769 13351548 770840698 320120759 379360788 302151328 313454048 220283428 822247491 569618976 875907285 201230831 718766527 675841135 904089553 983826394 998309071 679721306 870589465 156655135 398143927 255862446 631199151 930819823 971179175 419404790 480294025 249905970 286575493 346047756 913138238 686094239 832313205 629930024 903749271 478878750 540482989 873470063 918390356 898240514 987627097 845738525 978695055 826501603 875937199 58050336 916400814 552956396 715846833 984479511 992062189 540345204 828855657 321465727 583635546 274142082 384249687 212530242 902051863 604435942 702613828 685234008 866492062 287008399 951359719 173756687 593749872 851479588 860745790 122864136 203990784 406635732 945924823 306857050 979522912 541185374 544582833 93059797 286907290 863386794 912703629 761431485 910855528 230077754 591584760 803411968 859995213 734788893 807076117 589679722 883043865 569399695 845370266 35959621 342955476 245181590 968496745 982643467 993951828 986636904 993751743 168131863 475734172 324933023 526763647 884544783 885790063 542185266 725647532 205010715 952678790 326823977 917397754 826966906 896622234 832518160 956599240 883186922 998441590 518592986 577597637 869283630 912874199 563565196 867647832 725547673 777893440 150485252 398917036 85784565 309541578 969225240 993596087 396754058 607593448 815863131 821895936 944910656 979946260 325518804 421355072 925569322 947213722 505968053 533127672 184174173 223110590 626799962 761424179 214220918 741561661 586375737 988281308 980646295 992482859 137321557 695601708 719323851 865241410 100681751 498170911 911636428 977261578 411535443 735906032 111024354 145292154 515992523 676527200 32139082 602674421 475663880 613577475 93716213 957506754 401560848 912318546 170391974 365600410 444153192 919834201 444332130 841402326 764971949 956596567 396181576 849700402 235993754 602495408 959604031 963330472 690489279 742881045 872730570 958071632 750406995 785897198 864889124 874066655 423785938 823063429 636481692 667860014 261942455 864696355 426808170 508726165 685121370 871070711 13885566 171233844 676207518 847446010 44363640 860840794 218612955 860059671 665875834 924082013 474543053 742787515 717289761 719554904 961901159 969026858 608053454 877063133 953469071 983501323 17884123 45998390 486170281 520825527 461440240 920764115 248420139 249429407 641530119 993551219 492057766 791658097 646418490 906312251 783864176 893640264 768574925 879508611 854358960 999338616 506196935 979733519 838970681 978468600 141992839 526965113 858677970 918772806 633467074 903554998 362908107 688637424 703622745 724775584 309453576 892390170 325476886 404569172 847953363 950863710 481690186 861777684 292207659 774949749 984580816 986997598 713935931 984701850 199685168 949232892 201449174 738798705 783047248 902109010 374507572 647434838 421707993 862488462 945186072 945376664 808955257 914815579 475508730 897662698 799445116 866295188 742720613 757623395 13646933 254377059 828290574 986972199 323092247 475013697 540252995 819523190 12501778 139786901 704260485 972405057 256323763 796098653 127021576 381095063 731404399 826833245 151413680 702509572 888120839 909697962 887505986 928151917 901207456 930861142 15909217 26628349 944235981 966790425 643759339 959102390 392349682 936035259 13704023 519811657 497119699 924075344 500310004 718788682 431907121 865501503 994690733 995565652 277522218 366101324 989487003 992708988 548531224 830656831 460681202 778800199 797067856 923496768 620142897 889886607 519778830 617918619 399193253 807545051 254116613 315714031 239810427 415682940 791034478 864601207 502113808 641953048 774746330 890683873 309819428 609654322 596527995 955837656 456347122 943703059 335945826 737184777 244303784 794068548 616135900 866052663 512593239 531273733 360851497 872780203 337457456 962297975 559756300 814357620 478231902 591275166 589108393 621101724 906140842 945067024 730788429 946642373 513476294 612785982 10781801 423680132 895481301 944925970 672834369 788878326 698698313 933013180 139911965 258508899 491692736 697479108 6834922 894117781 79007413 197330372 952824158 957336134 393218322 595663165 239775779 306807831 568954403 970341500 992513336 993101317 629772626 972884480 203039280 702210298 396819886 616756304 165421617 719484344 868495099 907920117 271287718 954360195 590040693 751026427 214267732 387252068 45379593 567050187 757519740 978936205 916982494 955107484 860089955 928227135 284797628 380336774 64421064 865241013 869125660 940329101 262186854 421698647 602964751 781551966 923280783 963868670 449329269 646683791 115595216 957495386 372943393 821615594 4967692 658893548 138922735 816764165 787646440 987171127 845478400 968346485 669091050 765636896 112718458 271525575 972615512 996162357 559265993 739413723 914860261 976086995 539024692 573902727 596926264 665895625 402653616 868106046 423198609 478625681 653743418 754059850 487284647 775358522 923669895 995303046 476012178 536189412 563665934 637631739 957904803 959181825 865163795 995390428 370330353 716405690 360675921 972116233 366483077 707537218 838801215 966655123 690459137 991067252 250595782 878622817 960548008 973667734 64864813 952741572 268101934 600749060 490379483 532887440 270819634 724024724 483313551 635057496 420991206 933985315 18047626 191348504 687871700 763524927 715096756 871014185 496424008 923214165 693302754 925858764 925449431 957234891 552964702 918997331 40642817 523133905 226047583 265790591 267386081 524437912 560808053 954286736 290482744 990173112 524395439 897086389 821996965 884362261 975213818 999301742 949240718 986660384 438375271 924727632 946145497 984603896 959181964 966199820 154706169 375334850 658962167 996149771 267935100 364032710 709253468 843608583 969079882 984188191 982556444 987456865 447908001 662213861 813244545 891439351 861673246 870746480 449638073 604517654 106171675 400502381 431106076 887605400 878699622 985938630 456157826 553973338 862966635 939690914 577126934 932450347 522329953 836074113 278429593 829526338 362852443 690369516 562613222 856547171 17071922 133059759 819778922 842795628 433915910 919815345 249786216 937393040 914150164 928273754 835600392 887519505 465312756 813383123 410141067 433936180 556585037 913304067 421426506 729368616 995387995 995831558 238261266 766913846 978705002 987902939 595008458 809666986 114953294 826596878 579213400 611900623 882141655 929248817 574048697 701116237 474055339 617693006 978480138 988607836 31885131 632725111 446625233 981031434 636595690 743615672 131830289 273748273 570787385 972089426 912534665 956273041 213465323 876043673 106507919 453481514 383335033 414755144 592442661 715007386 388658537 396680406 422187924 553001407 759111304 790875063 574834009 907796987 634910437 833523901 270600775 997171125 111484927 851525282 79881066 746442882 900324833 994126929 713339760 720009170 378126372 972807349 762557929 903410353 25914173 829503362 699580512 722662448 170838198 693853691 271302262 591232061 345916342 594211141 658594323 990130510 522650004 800202693 793059876 946591868 543028160 903169922 753654273 960364684 504628903 611161271 750484664 879645647 695315139 919330497 459121234 520301927 167187262 450739039 418402702 426696351 861717296 865435381 113677685 718995665 895162530 972382733 575231971 806349311 105138912 958079779 770450525 914124448 593797148 835021212 655602402 855327521 419518540 858358498 484959822 898850489 958554045 988555716 716269813 986757751 266326276 882076324 159439518 541785171 679082500 688776041 147128651 247815170 31631491 586869761 241283610 277200698 938246965 976632809 732692389 885822579 238309387 680331780 391129124 772608954 288265301 737456367 14754116 96220478 858714578 879304392 706742353 912929008 419461163 874538210 538044975 657191548 894702783 976290759 540519555 986356909 791130611 963321367 359682234 937919082 280487964 826225910 421425361 596676597 551229770 982428887 596767230 808130202 278592067 769077416 705062237 767107722 134631879 445881937 86496738 552020471 90107327 985946435 992247548 994253868 360046568 423558010 806968142 964180494 760400514 946051040 598097120 938968945 918621436 989511478 247515586 751609370 913312944 955848061 297487424 795695689 841486488 983711087 899465079 912591443 438292785 533247468 79791327 695036959 477470963 862479920 517250219 552497590 810081832 838519267 406852611 794697038 55968426 149468530 8641456 340083038 610722165 949686526 592677658 928811964 867968295 944152572 187954322 777139479 771511114 826609213 738162300 863436951 209710635 659880417 161362508 388414179 456396811 825464847 161427519 643550304 540960358 690264143 723589031 942725454 660733794 829518136 944265911 975694754 878581026 915755298 834991748 962183040 31888067 640468310 815789420 899750704 258463913 309521109 858267715 876659394 115890216 465821527 428104798 579177883 462159901 620902525 584980689 796579199 701176106 963172356 577206807 639125754 440590900 998340774 278922079 709478047 672496393 964296786 799054083 864446882 505234580 572019156 230460447 963178138 317014633 809591697 631208867 913644095 970902120 980701425 631255225 656549648 379625842 840159989 577906992 693016691 294570234 358764150 43795165 99966286 813719530 935954244 582614637 738234533 274179035 567606453 165932156 868586603 786006207 905020161 737688792 740046954 741533896 864064990 390165876 803435736 440317793 957330463 754620597 889055118 427748492 820548060 629180289 651275648 310687996 609643535 801870240 885048057 620264701 679980757 988035107 991628059 399052914 607159454 458336534 794834976 247987139 497287886 50976255 499944493 232651721 303230055 915656689 977123915 797316506 973232746 127054135 465736025 492665834 975345691 746093020 898864249 442406001 885395047 915565947 949324348 223059985 917412489 182608433 493968985 814860233 874362400 842949854 949720952 754754413 945419138 530851240 612157835 648522567 959930873 360891197 770412381 381898533 882323803 963093821 983422490 823660457 895146718 138469137 312890602 1057944 404743278 112455075 347806995 574253516 874409752 857004934 910439289 917323680 925247987 455593203 623494293 99440215 521707506 803987647 928623467 726823994 898139996 629843341 816113724 187154354 720315060 871651872 987361216 846016779 937862667 619195255 743215898 52961728 253394235 119670713 460278070 831798736 884293405 614397151 675410916 190710335 334971747 523701452 570316887 387797798 582244960 720811394 943451030 241034556 670439918 456601066 807674909 967959876 992474423 490266211 865157581 638383633 828751074 728030194 925313245 604616765 724251688 27121429 297783298 886719316 949027655 743326923 914732697 453138600 858114165 47216862 129183784 118813685 519985629 822112263 962922682 650155193 984770913 25713011 509828541 449343237 757415812 791239100 888552090 805771183 851709992 536182884 730315086 519164903 941781328 208929096 346872502 65530540 113965035 27387523 853091544 126527503 481740271 727293732 841351658 71431792 633876273 518045073 716911819 542629384 676431218 797628146 918685574 141205910 556899246 832205954 959490798 442285404 851798054 759744598 888848523 610436339 766237195 409708644 673054723 410091798 949235027 109217479 228453536 25181509 846236817 237457917 493721005 577669303 880492371 211926106 651142692 113180588 904173705 747710541 967538727 477171391 843206076 947955443 998527477 185356882 265984303 795675808 854689650 962524468 971602409 669486180 987732520 246791521 525391306 600690463 818523693 417071562 590155926 870374011 922551814 666439925 694688701 119955098 929394953 153933462 525776093 620337015 841326803 103352073 788823943 408403375 520350584 481770497 932192914 665950676 754487722 429402023 776203927 4435316 42293218 625093527 658251812 857952992 964180688 64807460 633018391 357440562 980590044 840938749 991708433 283047722 422440360 926120600 973565769 479912093 502459372 325465658 901082741 14068748 887985084 154519472 616116895 921865518 984326257 418808559 671184081 885478438 943077468 378528224 385285867 569868499 780645400 166962197 954672919 948029127 993760297 351474701 619355312 565365010 635239307 358050750 804237783 525490653 560248695 361634168 556047452 206198243 861702690 403797929 604909008 918802203 938657382 855491867 944891257 183429490 277849990 191887167 668927920 977529527 997049304 226842535 377929682 499213256 942629199 466574928 588386752 292623533 566439501 911160689 914031666 997687343 998154002 783140853 889231232 67278613 239612305 715576267 955805839 974568791 979563855 983305998 984217318 565259235 690993763 793275131 915684861 611554131 646118521 330785933 585116175 653447949 977611497 364552628 444900066 326672084 727008626 22929845 743945333 586263230 645803863 712729620 774243597 818147085 932692386 808289913 994591043 449034212 579628732 307842831 716233559 632820585 685102097 228095194 709072385 449751321 670391729 517808143 730806026 129193162 978894146 252632577 615953190 626673045 973293042 19003650 594610636 488569919 836550854 285399460 930813919 484103288 949779247 562199272 668629921 820795901 985347053 70337075 234661241 114968056 691740479 779616909 847150143 866156646 869895062 865964854 915574431 620361715 810179797 613302834 803723892 678617811 685231466 526801072 619961968 240748186 604700795 348342940 891240498 839100876 964725026 595241356 636266853 59733630 754803344 446581400 653329334 505332079 756288550 802573627 949234810 269384330 695145516 859896904 894543342 915758411 943231832 360781816 794635841 605466341 757207015 840238225 990051525 87392921 488751524 245946690 530345090 917779856 951249119 450775844 519052925 704173542 865822473 138869142 408793204 772696894 804214259 695244035 720404482 714533438 747492703 854955357 965747200 459363511 784045176 218612549 849486672 686586404 793984121 727803538 790871774 637710512 651564063 53993694 157765608 675480748 860978828 859697685 866064428 779127162 800772233 50036368 208621680 394536846 812149970 371528604 611723975 971214610 983950006 454073552 626178476 413653167 530525756 50848148 500794614 372558590 815869017 970468721 977856965 797458507 898653135 225899248 778265272 131769917 170189370 564184236 894828691 82391996 217891692 78417374 207053626 615350128 671068741 6503606 790189471 327507640 328176741 230268668 837467800 447637475 788504360 551408187 556072142 241758515 842987613 24429053 650712107 839215522 884701888 187995106 450401605 334966568 516566708 601636805 757121812 980356668 981286847 433278822 973427945 922906277 945199489 340727762 450876766 285932021 509610405 269003488 832517303 546892723 752800329 569625032 639789774 349977536 829605193 15234049 232792458 582814271 909724426 28272179 983354868 552031375 621102861 745495723 916925331 886940927 966811569 303795271 956371316 12175585 348758993 401120340 949332961 57643795 586729052 880161101 988153325 184540688 285365607 701516202 982039105 3296947 23253000 680524211 791963051 558080071 988631102 74036881 703181600 418428414 944756955 897825369 988965448 597769753 600136678 67067331 830306630 936763935 943717164 287709367 679726035 795711345 936892635 927839738 976722487 450281987 457674630 263600821 885161841 833542590 957756973 251264041 409061833 66749603 722662677 635124429 642589136 300289693 702843340 993434691 996221084 779781323 897026236 815545467 839992193 839628422 934556877 887126767 997332158 481735106 966904617 271003818 482615179 816952043 947831437 868986371 931005768 483406391 969786980 829751347 908703259 779916829 918848889 886737567 998588315 277175053 972291366 985352642 993282287 612982139 895530456 778716748 980917494 420874595 442653838 140337897 635120851 343700239 703677750 143429069 865275916 332523047 821351071 471360884 711406827 114543210 993704878 979305544 998305254 292557036 868070521 527879777 883835949 118931024 925905115 708717510 870660481 797677239 808533366 835080325 846800951 806529023 844149990 302458945 701783325 602648217 822294382 701028329 916343493 152860914 654459920 501461353 955917499 358961297 439664057 328565106 786434056 413244255 462619566 705312196 707693279 894714095 958431761 757517780 962512572 569016193 714013480 824520271 992004658 580593527 600537701 46714475 769871594 970896587 975437476 216841583 300928546 778748368 859624756 522855455 531646297 718877561 957395213 608988324 963337416 83905985 778419695 138974757 519371511 543108631 840227567 225914614 693176004 773488689 921719152 65605891 551808969 39874574 958894114 773982256 985413850 253518060 358893035 116201025 549990467 968972133 969450188 990905217 992839807 184879925 593326957 907273054 933166850 752571136 920924952 773969887 985375961 355271782 498633417 398770500 684413059 304388285 729135999 813266767 830872217 595122186 893383194 691072554 864093663 682650605 956231584 270933306 435253038 923727383 963311496 124826348 147704315 834206486 862751415 191177931 351503062 921234281 958218151 29860713 57837382 883017091 958796528 228284564 371790858 738530427 910721032 538041147 610345668 91274291 102878110 600738310 625107401 441532603 736831220 650475891 958951854 968608534 992756447 435307630 725598935 89835072 885861042 454415086 502848199 97978292 808936453 105317590 903578687 26427997 605351742 232070542 819931722 582991908 717962251 197173801 302155518 284382534 532116445 398194861 451138546 639240283 937222502 378227300 451042336 89407887 198744530 34264141 413073914 372496863 668948311 881075064 930779967 25687344 275196098 445634296 893214794 378996166 764810870 220659470 893399741 418760411 429960135 686271591 892899719 353867748 545781621 567670157 705106977 661994559 764786444 6697914 916059736 2297423 949215151 89704487 912087822 978930447 998998058 165442540 927993122 428691042 756243685 842607868 917836276 523235996 753745065 285779384 606458428 283197037 414175640 587902164 730966954 612340190 909631893 641394419 898409257 151979261 995649544 118111028 840119378 354187684 519723566 892688429 991158292 243574563 280842202 155113582 808131113 547408108 976675074 609711206 667109519 239550295 625074511 89771359 633165578 569004031 623686031 227982600 477929376 789799964 852260780 310526230 990204925 395350753 742427303 364101252 410798324 99964343 188796885 753155253 974974475 64855224 287604679 580499787 611174501 775375217 925982506 36221694 795533795 383559341 390968308 161890934 549987020 155880909 370068857 122017900 192206869 343259675 784271553 891333460 989154122 368824792 519194096 509884187 520530605 129079030 160406050 118697283 230950366 642410619 802337436 86267476 333849823 783605342 994430394 274095753 632784618 213732914 713918799 101889725 545710067 484494878 985355480 663233091 781364992 918099205 921719341 51977313 155467055 381754246 528427114 332789042 402633248 389063348 760772894 150967190 777682374 291953770 932286655 895461786 904638293 698125319 858547133 811500983 916250566 11227498 899848053 919187723 950744908 455258035 845087478 357708154 443375981 697516346 760795904 438618701 526794730 788722835 832178328 294947831 649545419 991288348 994469837 314774330 366372734 363691399 370635729 14994121 25241308 249689088 579618672 123686793 612343470 953304222 954523356 563864428 704924669 616818791 624958785 714660596 829296344 836703526 967726970 406424948 906031448 588950754 807094104 867168735 973174435 460959129 736563276 246218748 780757126 502828801 556058203 11654781 611393508 749227154 978358999 561592412 839674923 44179429 214793619 356545476 662851782 400020403 702838774 329651161 958518993 607741394 872793388 570000584 684543600 925378247 929851883 349491033 935815580 118759694 273155181 735963540 887822865 894792079 907263343 214487264 478273962 324449234 942255521 431154614 540555154 109474799 170918041 663232140 832435538 375112781 786382063 106138553 346996938 14143885 839669039 634589554 738643131 69111418 705998752 726859434 859593987 725235125 958480055 472708192 859675117 291834900 521401627 191052195 495929884 548273184 766312059 467401951 702249902 625053846 882519511 515598427 811307972 374505100 503849872 463728027 643378315 939223765 960482439 197901773 724269785 121199283 551416598 782717020 904579144 494186975 970241862 310484160 370904907 536130370 673433417 329080156 911336136 747457073 823834241 471768234 921135374 756473050 798441277 335164516 993985787 3851249 650664519 641834489 904661771 234182674 411794775 895337620 950482305 349900688 606604091 340757638 489189487 954172740 982740187 356836036 622139226 164945864 381793705 821010699 866085650 679786895 823465674 938050446 957250923 212546674 687421278 431451726 881461851 841764229 848909093 198851756 764312285 862548597 871164123 884563412 969319304 422863888 864475693 700703604 894767532 319559718 589474565 846639233 876834548 185859669 396489678 313526881 792661431 224394023 962136351 267196669 671331173 285852153 775210168 556460234 637843674 501543793 537391770 509365973 557169299 452507081 930380549 960332725 986304446 611997307 758844209 975061679 988179873 62001549 752050369 79591498 567805394 465001725 922323129 855499497 981985520 634767186 651531360 289568163 685815254 661505407 963884648 879092397 922178527 268586727 937585831 954282553 997278083 934414220 957846293 216237911 916323326 566433598 695423610 52378531 319064920 803895511 925035418 476680494 503971908 809281751 911794479 663545449 815986125 791037384 897074277 5459485 264180923 898507771 914108846 904294446 961754890 849041705 914545621 421055758 812352877 243289268 539156669 192403351 918661221 751283823 992850649 864729866 909975430 337804507 341489688 190156523 888302911 503002900 819753896 289696424 934547828 929188132 955268153 790785602 966971214 832610895 897429457 246174638 458415631 326085108 819350551 484678006 630842342 709295556 779481430 212342230 818884657 794004189 852287720 29911 750099703 335276082 786071944 829813583 991563629 148384297 966636168 801085001 826971846 154484489 743393340 807911384 845197233 467124783 555236321 207516690 918800730 498246134 601482368 452202240 972402133 413714572 900085563 701455535 865661403 483285795 792777777 574025035 932924016 654239313 799613699 718256225 888879085 882365311 930900983 691160543 735767742 2062035 872029884 532757478 994030753 538937117 808100371 875215555 934534734 929763890 942672307 993447305 998628330 532133459 724758844 613589691 709119353 50725164 611576200 719412203 744436164 183894905 218665504 199508310 323976223 32342942 317371359 282827920 591751060 836013797 940651306 272542830 323960979 424385160 852266756 594968247 680159901 100589932 590203653 580272617 585743084 243906456 568116401 276196174 797306756 158852316 932021735 467915198 594197212 532517047 615038916 899864325 930481529 861344268 962979146 588130475 747402656 739113445 913364762 887007355 993259198 147009604 223608639 863463480 923333987 882450306 968253715 239697073 788399798 104430670 285830451 470057599 513398540 934295913 945776329 727723058 753186862 320750680 644893517 160698394 789786588 78858188 927994977 977183786 997643795 841827253 935158147 50950951 717186687 540092470 729914113 683652246 802573579 46421179 74162933 878334003 931931586 53869350 194035323 108743783 544327458 98823733 573484913 982459277 999365384 434628824 781090072 704738449 843574753 844804449 942517825 714218807 752259904 602466015 957743734 881670229 897518038 538822461 965430861 356487840 732787960 274886740 422213163 774168305 793445745 215378006 883812308 617473005 704872887 444712937 644054598 980644258 981648035 422871102 726952204 968849751 993801401 105063030 342814339 98405961 449657400 74953092 658085999 505916843 559498380 42050803 204668450 902041749 994745853 410429488 787702108 745090060 989256852 843501728 956876836 461705436 924142285 799566789 996463319 189892068 892213189 876868864 884642332 232930104 641723440 299133126 933360800 760447865 930424142 161081529 598023895 831636944 944143468 774513228 920260358 545584785 918282061 203788838 274817619 231762510 496813951 388843768 603257129 283049094 943521526 533905999 588172921 280309913 922359584 28294074 817300324 117994676 460319102 838399789 876604897 870185237 920376024 286360462 329263803 667643271 863290167 733176693 924740389 880300831 975612917 94558856 932411397 395613557 542805769 192849942 704880235 278177104 625434250 897103569 990547968 692838100 749796876 465304376 995282320 67998903 765806332 728566360 998197399 40832724 774694333 592174533 690350030 911678729 997655511 191829016 862020536 20916996 669422137 797052643 925353372 906769759 964098299 722293903 871534086 696808011 949425395 183880370 358520626 83187014 666771707 989978668 994760068 28939434 919713450 229682458 406223197 509710251 840958420 203125076 338466397 340908450 380909517 527325770 546713426 856037287 980524263 100075651 722817432 760380448 833011268 826212973 847041826 701930747 842240864 583692053 765523806 919686669 984880138 490372209 861833761 13237984 120821875 655319135 760781849 638015988 654658526 685630557 871799576 265935777 703516632 999279599 999329143 488259014 936533878 775442591 860246352 400446149 626214522 223103377 671011921 740300637 839341386 569928605 807277998 663096931 716390104 470585074 498773626 329836114 799032524 240275624 724286463 837391439 962972476 256013009 867125645 88184926 209930165 748844649 970770998 166973447 845522589 617425195 839396174 605762974 775951819 643968996 882979105 545420138 981415655 412867625 566819064 444944675 639612786 477832957 775750430 284678867 714985672 378022237 718411898 176228933 844009279 570170624 952751637 153576444 913590663 883547344 973100547 267213387 785953605 597395198 719603408 135602864 973793045 899110380 996280843 640070190 661380840 453821975 989568859 739671386 814473639 544005354 653485088 302256749 990115453 737597414 829202097 113270156 226573288 373570495 450576702 717819297 750683239 39289605 75671816 337715656 390705416 531355626 949982257 373607712 643383865 131857414 958490796 832607378 842592541 776295646 980438490 342860793 559561080 579529322 979788478 803023524 872434551 247381092 907634972 694148837 724325881 96905630 913598790 721174074 910875589 246341417 821607902 51595195 340693661 471628797 759947324 26748192 786817369 21975260 119753283 295959660 566188321 871102226 953665331 601611373 660262255 505146655 888398073 233900932 991613113 888148380 968760854 371361750 487877695 828120809 914814836 910698085 980166443 358888050 662207355 434597541 491983991 58871452 878018418 265611136 820326960 822726899 894776406 404967991 967666866 561991939 813682089 931671696 956213428 643357020 788834532 25835900 537527913 36943737 886739496 888124683 920577925 318140601 885650505 648676370 690671231 143228004 217773412 627049111 858563825 630180519 655587825 483390130 672554669 47840128 100770615 850260099 923203430 532445730 534311212 241671254 374967584 733590126 976255746 93135183 732055850 700452154 744317157 902145542 988083739 927688058 932665087 972717937 981279497 954140565 979626292 396866905 996324787 791063988 831579117 365960561 610218813 224080590 391642912 361324384 688775885 786921022 939941952 949169443 952639490 501295677 665408799 793116854 831967322 741807922 769742958 165058320 922243222 983001775 998279962 270338540 886898407 355330822 833998359 489998116 816808688 697376729 704447155 311152252 489047879 465133381 961756366 45832050 541519172 672084534 788233737 730847317 882421002 650184458 768192559 115939640 722120705 775841573 885461115 994528568 995144976 159641066 672435882 531657007 645534600 977766391 980686247 833956676 857001920 766103954 788222829 143054196 885161792 905992137 938195447 655690340 961330296 61343261 955263065 705012962 871538982 867863364 994951558 84495273 823666662 387288161 789053281 975416820 992515972 993103618 994860116 320739929 382385882 174250292 965646188 232560471 908613880 671647583 998863272 456902236 807481526 305827007 565221853 653063982 948060754 514629907 965329686 548464464 654777412 749670597 926747951 763917088 982369163 298998360 521518973 170897997 375170180 807075365 964116242 149228316 269681866 621332957 981917339 401916580 510107124 691634535 817561935 329386590 629895882 284304191 875636135 699233770 944278099 574905209 987475106 325661047 536161209 195126202 254253412 153759934 881592043 107167576 635249920 906745730 977724478 208769462 732669579 864037977 891178362 445883471 455384631 278168696 600908345 158526899 949257938 685032322 745048520 236831494 274697138 315874129 747740594 330811930 922617075 957643431 995412942 624276149 834431010 702014567 891075144 358527030 701742685 691313195 807955844 496632075 740063011 619406264 975621407 848036792 926071617 108306656 722061137 664840604 857409107 193962293 976898838 944202634 970826284 650215244 745958675 716506511 770962921 808015074 971919741 754336472 820930688 228192643 991524761 257920297 389313498 402489701 968847581 382145379 961477846 150551889 199984809 328055906 907185119 658635098 914144218 536102327 573051536 409059256 782820812 686923405 947055839 562968944 997166582 168097908 785508979 92697809 653456337 111204588 814044915 297097507 518164189 405579560 689340916 461876054 808809646 684233380 957833322 660931830 720240408 839810814 843028960 972114613 987560061 947164451 969355979 537482943 560419426 209944941 336600724 710716652 826290742 60471075 123656672 398989062 440967689 757631095 946393573 101070476 208600993 170166678 249561241 487341300 979206198 773989719 935085741 636894999 836550692 254190648 410772161 312893418 806853587 984169461 985722588 725412848 765813265 141959536 542740839 869566736 964610564 934524816 981771299 148297265 511180736 160340644 788892838 364596433 836001113 43650463 733953656 408115334 774232550 755561231 801111829 794321325 863464775 967118248 970827973 111373649 455103461 110993052 825819310 216350226 389992122 540954776 948719850 791578769 908617300 125964562 273681548 944493833 974339741 204876255 423206388 797723538 921509686 265467140 522690064 120269661 127904686 103553355 403156621 629245975 812811800 592226282 888055135 836470857 981246819 373318473 411845585 194388227 629918393 800158171 949623514 717079340 954933180 837630940 981305590 787498209 997375143 412523232 449317402 675997791 844339468 11371985 939189552 249311803 513426517 688088260 931636490 582429625 749312555 545694638 686812921 448533064 950207901 985015631 989204732 874002929 879855951 933742951 961147786 890776758 984420471 892718977 904410101 691259001 740860279 562003237 777004175 97218261 245517972 253843049 789290179 623339158 786123817 680009729 937385660 718352505 789750869 432129845 802384946 129360754 161075565 49631283 269226840 463699217 880591059 297964307 744264679 395599505 921277499 798048181 813754977 388360443 788885479 72901414 662852895 128093011 904234198 870030330 944107238 809902803 916908782 115507607 860192764 849362803 906013878 168999443 356528386 286191832 911548282 665847337 756627391 910068030 988818938 467062684 576457553 557630783 586500539 958601012 972301117 271017158 517509771 698303024 883353131 944537424 994193432 670314917 894309025 880257967 929396459 660850402 826304247 825102986 940871159 55249674 275244503 789897788 978744122 586406764 819202744 132522572 977965255 109259433 132108324 172798853 527739646 797278292 964603598 421343846 587915136 629550732 673328617 477040465 856122704 796061887 866840745 588548692 801920258 811518453 911874154 646095268 744268558 876191034 997597672 358000770 432889986 697652467 857574997 512433660 918176899 695982593 923562159 510974974 807681113 467238486 571681556 352649012 673873490 109019923 491971700 494660324 514064832 705463299 963659461 324684821 862403883 415100559 958110357 427702198 685227684 248609355 812432830 548945442 601927243 581832606 713472987 22303148 48022601 699116557 999100530 471446349 604525062 89864323 245356642 200798948 311359624 827242911 884668453 352671220 933421402 33587765 295860381 209541736 779233412 669377189 985324675 740271304 993588638 105934618 270661614 87791344 516896405 831126617 884076136 287142502 960273788 778887110 948615931 70682474 451088258 958300632 974845765 58973169 967068915 464126384 852922839 917522060 941331781 371973819 975802480 539800528 688799452 783407138 834236869 577733365 938599113 113234109 816723641 258347817 504735383 221157147 264491717 560297586 922925950 434041149 578540144 879251139 961464704 669608332 982015023 471123021 846625608 924991972 969865351 605155695 853117545 516067795 929271507 202894565 703511266 519010528 760320297 9000055 164678949 422146388 931798749 835838699 930913447 531478304 810120144 896281408 981490482 13620382 216786303 725657333 786567191 185350272 796273929 147426768 457198448 943204759 957938040 40795395 182394627 885111701 984503112 792450131 945607563 30603771 649978238 665517994 740585594 619284269 786605692 997236916 997963290 455919557 571959487 655486484 995621722 87095928 380258243 305573556 904816535 661327457 748642702 716444110 939954395 833965247 853550329 39263922 623168623 759284549 936740780 144441067 746300093 137748384 887559871 449373622 851071620 361433046 532385935 418040543 562304374 117240410 475018171 496836341 836806544 123889238 430323794 427450887 972388167 209068996 433124381 551516233 874135457 483457146 949022054 370863960 913005572 699511222 945919653 223900923 407989220 975163820 988875456 452606875 956467942 954577089 957773128 82660481 860815231 543369710 976133784 699160170 981378090 333529094 364888051 737944027 774092030 741811575 764037350 920955054 929592841 191016313 983159333 977580778 984972687 901016833 962780290 94726151 797679213 786798541 853563436 363891715 441419371 229139954 267908946 940265896 975592965 383150534 618886638 391176697 466255970 225791539 321619901 688404438 796387408 803385535 920502860 4674950 173834290 374430455 597879118 236620649 617517990 192792589 938896636 27514079 265011052 259638643 615005092 940878948 956061366 715498472 731438426 516850808 611931134 918414256 961295064 810693044 894163984 105273219 205887007 418398954 929387777 370642174 475152587 133537141 957388394 19347742 745770700 70147896 523069961 139246806 633986941 179194608 287823401 809048062 841084297 205406637 918707558 237810073 359208763 340756477 647823620 948702529 987591883 115532712 144702631 259852579 806462321 552373556 912342891 817446757 935639608 29171378 239668160 782119767 932747077 957376281 973550243 859345742 974728638 31514483 635125141 554100553 981478582 539310340 565562367 695345859 823785824 883270019 981049766 361267198 669082280 509465503 891941400 625993135 903991644 205783255 982433113 39776672 279100359 436538826 590211316 782872150 981873895 847537953 954496801 120664152 772792061 284687517 288151643 436980237 576244339 544355499 553480622 276028426 748521383 444813667 830930397 275247838 333411661 583599529 639337816 783672571 800843818 851445104 938917683 196612759 998205477 842909651 972716063 325725400 479680019 537081814 912281838 55853588 551204221 57127004 668360899 130564496 772495643 402076861 637539591 902308006 989142007 53103112 854246435 965871388 985274166 361536690 479196321 200270290 224774628 860071050 872719557 709950931 940690231 446876925 955644078 258941372 518878955 98931791 989204867 498119048 901060768 835616562 843967083 924352914 961636482 929804973 976484405 130644634 705509407 989101402 996529864 843399456 985963074 189156353 790968639 354089801 501498490 240183317 545034655 172613370 728497019 326084671 490454772 191758111 670271666 785492032 877122444 280353215 666022565 996151537 996273457 220173049 757898845 329412651 899760219 430786601 552588697 589669984 809689116 689074660 905316896 635215925 968060555 672107209 800092493 506510362 810330878 936972332 998950803 500893777 859580094 560403818 690558622 835088098 891669349 263505209 644362511 78947022 152192513 565298866 785370793 138158136 976488622 449232314 472427373 22321598 778068288 63899820 828251874 96764360 429238114 441313007 474496251 883723428 953032172 765390909 897054112 578430645 931692750 779082907 944884726 729605722 941128447 77503735 290286910 460655503 738648207 929699933 990855459 572891507 982938535 829949118 872775387 726345718 784700623 756501405 849333864 657911073 950076910 165800593 471626511 81795109 831158193 79371252 973658594 573655511 685507309 669131345 832268676 909290363 964505798 696635307 804018879 891496305 970672683 628196712 821532439 937131119 953254183 93257000 381778430 459898908 562803183 249202894 890860985 524539995 936355327 433966906 510265039 267959127 802796753 683626616 856019784 226565725 671430355 902827939 907579440 504419389 834690952 297762865 419350376 152518034 584529506 943537316 956684609 955628422 979986855 302447475 461349379 863579149 890422819 650778883 969122156 108648337 463458605 704362073 782675177 154981666 457025172 758022293 844926179 685083356 873081775 943224709 958239110 952307149 964578811 633601214 756269158 438949730 871800091 701286486 888369862 125113128 933243235 149258325 869561584 727039477 748298514 860197058 925920780 991478409 997980760 103685932 303108388 459801443 725926707 736871472 944649488 504834266 562761236 695710799 963680343 10381141 136622051 495656258 787238396 6217528 446554374 151052072 952590871 524853827 645452084 830955648 833354540 922048404 970140854 605954498 967758724 588098385 741227124 396990925 787960931 343779997 562486023 379325827 935338807 833465270 873608609 629083924 861368313 323914784 518832376 580473300 603604614 646818690 719603221 144648832 672926604 814261291 968680652 758045764 919694147 384001015 532150884 390240371 481727180 167966979 552970969 134854253 816384812 366986566 644841471 35224434 295647273 386257606 820212906 935521068 999294586 263084991 546089734 152123193 922785655 587809010 880199765 850337417 981033642 96163025 403930854 727259703 922807788 972407391 976445555 286650620 476951789 368977750 789718354 785703754 873482114 578115649 931813513 789950520 960406752 758759809 781049077 675026431 915814895 628308595 921534422 576546019 752338908 438163634 731546209 307732578 880953099 24661575 366687133 499905249 906245544 128170394 804417594 844562447 961432947 500512352 855613770 896291911 944794891 568121990 805389215 346283050 935316362 113017602 420190543 751791307 866607171 386287262 724094438 951368976 991634512 298127062 738571619 851800252 887738287 886273932 897189233 141718979 675324364 672293416 853464791 807017933 885530468 333219034 872896245 89084470 164481460 183232351 622094698 146147945 352181172 509419609 991786931 615485128 928621806 442037510 781218325 53847882 79196340 113347945 400516970 669682789 893299050 971963880 978321303 431002058 967697344 78776480 349346949 618090979 696479582 511491684 734966295 527081323 990128187 63091066 807612878 40735719 176660339 916995197 940299234 719389936 842540176 320840978 725235276 863933187 981458767 874286761 958387217 652011572 987303441 765417317 937654343 14621166 110441892 810893342 895757827 469190822 652112312 466020492 937240832 464850097 975228408 785847878 987308765 369429592 718668434 642296239 670065080 993933387 995450105 457598132 841255243 124444873 133432616 917014715 970654151 270054233 832754841 205385873 672655975 299578860 924566518 791802060 848917260 730884274 834407223 396379480 481286026 523291789 617685301 893919664 942869478 152816296 586682386 476493702 500662568 918879670 974017186 716701006 802009622 485023341 608467921 107909093 722664547 948247636 987970250 702457478 894501977 50609464 537822632 814904967 824831648 460140775 952016109 47484405 546463634 46414378 662757889 415781971 996560796 43731057 556005326 267160180 582789838 875002405 876592341 777506339 809835910 399606920 468682260 764223479 985022717 794823178 861555482 933685298 989287062 219232911 721975017 416587432 519507131 890366416 996383092 430970242 718872932 493097840 629071891 621139001 931881870 583458934 892966920 677508369 927715161 947445553 980211563 521195344 945507566 52282907 287595383 253007798 325360084 946619324 995673293 961632999 967730685 245722298 396954804 250293034 334460646 841003664 856801362 437559890 598806573 463074946 797236957 651281325 772095456 248092440 263630860 220354796 821787972 421026914 672550190 369522040 687199066 370995591 579838786 468654688 602097672 791690553 962047883 678438858 887728793 909175181 936465534 156399236 804660926 931832447 990164021 234739754 508155644 224727002 809413400 377485854 996029713 289691511 577453712 212772065 343434911 794426042 844447770 552516886 966520072 442164876 534073523 273030283 643393239 872788702 962244831 238638898 992395134 473564260 753019060 455351304 545118801 813065673 851979182 629368833 793195603 34469919 261134840 17849871 883026624 675582186 807910299 340920178 450366139 433438494 494210108 490202336 989055598 688296312 976634271 226423975 278159919 361256164 657909077 593418693 644573672 22586713 993295857 527599542 630859377 618915678 770464442 793373661 936558798 465823878 796859446 964511017 964677774 311018750 444898687 334586375 864870707 524721503 900766356 949552960 962269375 63634897 676979928 321871039 353433776 466560470 988088092 531812516 687417068 858987480 988853209 687374184 958621937 541783870 740448549 73307935 464672564 943573185 969113852 244265141 986734385 215072552 308520756 204976601 712308001 83645820 612465060 330868947 451008697 930731605 996604415 583649347 674968043 982515594 983572455 797491387 832179160 917555055 961769266 630128831 998847098 358164591 504145404 553188437 731894464 338480835 600679568 195529424 547841244 228490466 230783168 256626735 972220134 712929181 919449708 931398102 948487111 906794374 978208896 303506180 945807874 315602445 920921990 639437370 716856062 533688658 866603230 332715860 809730008 417333623 702917595 413128663 902990523 244000111 986305663 723477616 892385370 346618240 956467561 70037016 363481169 298299615 551997489 162589683 690928981 782572710 861648414 734964324 905198340 980893560 986136452 518796881 720990082 24375705 510875971 178220274 577274654 170429472 549623848 449041306 518277518 314303735 606376440 900137387 936625991 47903580 978942503 780099460 975682886 827408978 977444303 593258347 712430319 607815641 995679992 151241585 762517652 732867693 777458182 82527412 307880936 15249736 293181681 722777634 859123601 477426508 518367803 492091100 726109764 795790116 943590164 316678086 347134714 894220307 968569924 76925781 536632066 818768061 968853344 963382743 963557254 761475275 966550544 957825565 999299666 486808686 955144432 371779938 631839776 602679986 788811722 771985401 779867388 952592343 964385333 374980359 758061845 980123813 996274897 231876225 745800335 179611799 655226010 216953537 748953687 856446270 896091145 389698382 804921923 651010029 811328051 142152819 298978852 321815996 648525424 341764707 823082706 344061059 560972789 875198967 947945833 694640731 872429770 469848747 989472548 749636562 798218277 572872510 732104904 635360503 901131257 951629658 964786535 673263967 792408140 847124079 878484839 414703098 598810285 897832811 986473673 879352125 987817700 4638513 606549336 634564252 760066106 723779805 726604712 649442827 995337421 475921481 773949445 140723418 927984845 175488229 901335650 504184890 646410741 363170707 870227816 591522351 900741125 408394250 885603163 695887806 836849675 866573753 883182906 651147040 688490203 545074124 761262630 299991259 973524094 317105663 869844771 196777523 442224991 659712942 705527269 585838618 785574085 857743792 878475844 765615928 795470331 902150603 959787256 418692939 607998286 544805388 663277315 101618999 560052542 313920358 475960313 90019645 598181010 894338600 958404317 703891842 895181056 37247729 664029434 396857657 421069483 556569801 561564748 93389043 384680975 401158455 665429819 980540746 986629200 932225103 935975925 674507273 905498486 636585602 977722488 780917493 957662574 579881787 659239507 994061340 998843258 328370071 806382478 713887416 971897118 852434741 917758968 788026976 904652641 971275688 971844551 453303197 920310345 1572992 576667180 835171231 954456716 823858899 975228238 534932360 984385375 578888637 722692909 783980864 952787101 926905474 962087489 884194057 917474257 750909903 787786359 162228433 787181205 235149104 998163248 224667305 395521500 257115038 281536082 970800730 990772575 473151305 684393830 126530335 974694516 365502971 856953183 961983409 966925163 528811460 564000773 187087422 408054557 796006933 968643918 802511186 988208430 633961512 726357520 664083353 855119540 933923702 954623065 249921228 660389865 92411439 704856257 596007111 614160051 610910770 710147728 253092778 341468816 347964811 734424007 435983132 845781412 908921701 987325404 247322305 474099356 410003257 969586839 807126141 818933795 907109110 992361704 558065437 652336360 663039605 852374372 864267471 950872408 312686090 704743706 719892700 728514724 478476139 679332588 266318477 680915506 310916301 543227672 404021644 698173068 495285637 677427219 228936302 592143538 229163978 658282612 56084722 925066849 722802958 945874298 715003303 770832941 663819834 997581778 195547539 702836862 415567974 831453050 20091233 568613646 974438405 996313528 473766792 874463653 130367663 822834918 738127740 890734606 797242062 807259306 792920650 893521465 919022794 970996791 695985203 966302266 189124329 942177689 104671123 556503238 921054934 997740092 230842507 260800030 256738603 735083434 172496593 778518425 688639729 809567756 146877661 345037511 338052661 757864427 514512208 786677042 777172042 783006183 264138554 683040762 702401939 839838645 169751569 521771941 278936992 513653770 818206318 929489282 898817444 913530333 308663593 784188766 637816167 841723311 508691981 707634122 312963934 906662414 476409810 953610306 199150430 461408446 809900663 843834360 519117779 608930211 595401308 969603387 724117144 995102121 965072774 985421956 942455433 982514051 306632271 660498505 492638150 817190014 508046437 559585533 401655388 984149671 800288031 896807088 479481156 519818515 666066242 863177737 435083897 972768764 244891375 699246544 826269610 888329757 896123716 914578384 837994891 906270709 759754712 810404595 177734257 950169650 627616715 847649326 288106286 523428238 390721559 531692968 848121092 886299116 213085478 664184901 562624501 652989713 509722945 958889012 822302411 938567749 255843826 945770568 438437546 729817846 40122966 602705921 829379637 952002370 228264182 576789803 681181006 895164429 223405144 591358705 339411436 970432457 986678619 997150026 774115884 883633723 632476107 688420412 161654956 839804074 546228333 860927434 593376887 928244671 963525996 971174205 94046121 551163344 325457066 571948632 735104677 975958957 162039119 778969592 747583622 822844759 985462585 999144724 850868938 885052110 119635270 844901389 499567524 899906836 20898431 533544093 10003977 958488743 227014240 792393987 209334227 515843138 731748732 961536639 478096899 506588610 824193261 830404574 823305373 856597539 140531956 658257477 620542354 834632089 6981629 773874365 951803349 997891273 705182143 787721917 729103694 769091725 523118352 753102002 634166783 665339642 798124029 994282688 280751046 896767354 119371471 903650585 441882635 796649958 155959460 397148568 699232729 744462083 679368244 878250172 845286409 872556449 636537354 857793939 449455088 997925173 596161545 976246069 559330720 712192915 724953681 749479702 732035043 863084526 434018308 977541469 395638553 488142940 60603516 532488858 147798719 960676298 534163397 992580934 961736802 974433536 610369381 838479434 508272657 972707495 201123945 798647904 402340666 554502852 294267180 449116657 450673231 850829714 887913906 966000062 707755172 985642704 58475529 587714807 677862909 784724447 686653780 837844882 175462436 390754985 194709701 217623216 995387955 999122397 265365809 329104253 211141207 657981746 397782560 489654153 236360455 656236988 404647226 562197291 928528928 973629316 849875422 940557359 427601342 601145033 907076751 928071626 112977992 932103058 724539179 877864915 918147225 996880069 536716828 834284414 765657863 780013205 69230095 742992485 188873013 890399533 542597391 770013475 850837206 927258724 760182013 954818395 951253439 977232157 993070426 996907372 427306069 456183644 887933094 897710530 921392951 938123903 533234004 649943039 471426446 724263304 995029790 999108175 383157751 462997458 624739865 861969566 458505765 873540001 953548222 974930308 792181358 923477272 104716844 503412461 568891310 610830763 949926240 955960063 934089327 973042562 279565506 477984221 898848212 959438987 428146468 605844251 348709500 750664398 313629791 375534329 153360493 772270702 808030212 860756888 766815110 874652273 526928014 825829402 592591988 913481242 216370098 228085586 716902264 828133195 124052968 524097954 208942260 486409235 923170815 962424836 127195993 206769810 428545954 962129335 574659511 669527338 237837557 887985123 961691838 971324315 113845024 162347552 954010151 975138891 830294917 920492573 163113851 296785049 91399099 203481936 275444148 624617277 794058990 895838173 474497659 625496849 424607155 938808577 540758080 673753699 797345762 980454602 541993847 638903706 469992801 904890920 741653108 814472651 974090148 979341549 943881402 988304032 739618125 743827305 124168157 439940422 130232067 678184753 158649598 249357881 113829962 143757810 619662245 701110547 979774263 985929836 178862304 786451729 89757874 168632673 939267610 943757990 987484736 993151031 225094977 425683407 349903525 783428465 320122596 528760511 897565627 964609481 699096096 766745092 206275944 619837253 728301417 912775535 409446706 807005122 392392267 796729902 757024099 828440008 558531699 692437188 783888220 942226732 687753046 906517749 720228973 974581134 890359675 981807040 938024486 947003300 316120933 856330968 255601254 267102350 709937562 956214856 690745087 947952746 121517802 795823583 974490475 995589104 656181177 921969285 975389996 998036772 337575017 433722902 510394274 546801615 177615198 380099876 322790374 383497634 817820814 922190415 952388507 962520884 232543684 344789087 196028185 318109099 17826241 712281428 168469262 721114641 112115383 738511879 59603964 289291967 665013875 819874121 872496102 877399356 873012635 954938000 895842956 900436232 223076598 824402803 219984529 316789761 950151651 978537489 278466318 830901270 344584040 349737149 900520436 962700328 182750401 412004581 117159601 518524226 273658759 369213917 979514101 987230545 36081760 819739183 943790211 961441870 454464253 976810477 178219922 573341278 838577240 996924276 584680704 842094744 924285563 950196005 90970239 671823832 322737177 550289124 962811518 988032521 759190232 818609851 412752542 870863862 923899996 983869450 342877479 763284935 720326050 731760838 380694100 605806939 318711329 670876713 537542911 888380726 842649913 859648545 934947307 996135588 432248397 856029909 724895843 774365283 321734400 788128770 133655077 559657538 190976516 550095744 443975894 671878565 893702459 934470818 389732933 585750761 808678823 841412631 656900182 803801621 882276335 884614740 116636676 224736211 355459966 939482528 831319913 840035321 303530447 442633784 996352215 996985032 6610764 130110264 217688583 631651140 74736073 494855606 160825633 700764113 554865748 592499632 736224045 867864707 417111991 746312180 859238561 899805467 534376652 948952282 449871133 618231540 393544984 473711043 339773469 621811165 319927495 873376324 382277782 491377981 611094184 980825113 915630198 937062472 447720559 579621963 201803000 566179697 29812149 578022119 135615449 798452070 730919873 842512432 856277032 979989343 575233748 643647264 686111390 731692193 983481821 997139473 123552277 963399591 155414811 801453048 494221573 902719684 200145492 362962953 987952837 996096817 366817313 958136513 726435489 935531632 729775223 894111774 407443030 687523449 611948098 685041948 938140267 946814431 384061440 400916393 544682776 891728101 739547339 952507857 615033232 874778944 598470754 812655411 414707239 506562352 608994591 893819107 399080150 625693650 707561047 925886908 533570839 806113027 319387953 709541863 185204589 400752335 586048856 829101355 115977868 658573431 651694758 699606453 889952728 899767786 272569091 915960506 954676919 970706894 16292048 151483877 275828181 594985945 578984338 764128212 952034689 988157071 796319393 928398266 209691160 608492499 836973848 879753988 712392370 963571545 995593782 997818286 127688327 525920608 231830460 945245627 1784945 767097650 257817855 386286239 998593184 998855215 987271414 992370162 931800592 959985909 487115236 697634119 971182289 991576646 380198856 886050469 108769261 678084239 594636655 834850122 792048877 828505429 864845274 871341733 66789566 430372444 330978894 825674834 1459192 295334598 616751950 639966466 517898383 778805642 696272804 807598911 405165685 734038565 750410512 813051937 820145643 958311459 972509558 984124227 258015350 760528450 25726666 124835055 323820997 574939579 129472630 927085802 556705135 771806165 349363233 778731623 582840173 629848288 866352522 979494541 97560388 528099894 511181333 908334430 253406785 669704904 632604695 840392327 689260937 710332956 422275871 616735463 735577004 908626218 634471656 883892483 202993662 240117642 156994613 695071768 635094321 746139371 531649454 832943432 100917435 477463810 818857587 991742486 396105197 447400982 993518804 998200867 80689811 95820549 602352406 997946062 248524317 479406482 81412658 143079101 78486840 389301326 973296295 999048642 750007649 905971810 530229139 662270566 908072257 959638508 777682263 925972874 475731986 579980925 991282784 999310149 392599510 774095036 360361552 772652121 319045792 639873224 81207965 635245625 878745404 955321532 463553426 990697572 263629145 293957503 179177274 526483313 263864613 705324123 173495345 897863201 129256848 145723040 422402272 934745949 29050239 97745372 601104634 932933233 603924085 989593158 124138013 248223813 869530616 968659347 645015165 665912333 26247848 904885576 482107257 642970537 439621387 475086782 624905898 809297968 846812409 888708499 415500181 587594017 300478781 312357507 60553257 113241018 643329102 687641662 916142360 979202425 114425446 960444590 982567383 987418566 495863471 857423000 187367615 965170867 834709116 926893789 268468526 791977275 273832277 739366544 456054962 592920476 88439488 91487270 812122360 985959286 85879530 883542820 806410708 832611936 95778625 430284219 337608285 967566793 676333806 809261417 660352522 791611712 248487292 947280812 654063631 812242771 197077231 200179156 344240150 904275699 393069888 967007475 604255594 714222799 500910948 557526107 929511466 967860102 130359263 771077562 366092679 435874908 766489825 783749045 978101467 979279985 875025572 886044857 592341339 593900996 15953496 421526666 912672861 925096809 982655083 986454999 268658424 947505193 319161746 429057951 824817343 975981444 183044673 439512443 812663008 959622816 800300992 959703749 432515005 663344268 815491370 923997628 662260594 924348735 674438705 921073655 200263168 613427818 504079565 920783552 202282008 842981237 357174592 786877218 508202220 526542840 253217397 310846340 17928202 686434876 852763494 969990491 54522636 307645367 464982173 694212147 16914506 250793925 28435583 275121429 472455537 647372262 441883655 606845558 551190546 687088935 13461246 549279297 89142280 240346968 446879280 869342971 675658541 954525312 187596405 341165184 491835907 546252223 558004476 835536959 219101678 742131867 331348638 851496029 990985625 994425532 484374384 639467427 621161996 719985494 312541263 755187022 138614990 448067048 978269084 984364088 874120585 882004801 296828531 570622803 539999838 931625960 638925470 741153266 586065461 811809837 909936517 938989338 242661627 644283639 195651973 352951929 909416628 986655124 178086083 385753871 209804012 439859279 523248939 840993738 357312582 425920320 294564121 444988957 168801771 452250090 113193544 812306915 551443150 598487052 401904156 593079665 36747170 254693291 751083144 801391499 111012482 735036456 120674701 984489443 187928591 654796860 310346797 764080823 68111569 243464408 916546064 950336722 669642114 974007732 754522409 769740205 81648581 331618243 114420284 975371066 681943620 956391759 253122 501237117 268969996 461402589 3976914 680340181 215025636 957424752 34874132 641964195 831909614 842870296 327284742 380962694 626635928 915344316 625982842 643452388 145611807 712833426 185862455 477744787 964628805 996974069 868234627 896934382 173504084 806048159 255799136 330666444 494466079 508570990 157590939 993981412 287769940 332167484 84895171 680366615 231803384 443400993 599709011 770688312 589333825 830559603 631491546 817077480 764289992 983153848 19621700 89643294 971248995 979795376 643327070 812499917 682910398 787824651 698453616 764300540 74198150 573683680 876176231 894717839 305495607 603674817 759264971 800494071 987072027 997852128 103866518 655217371 251631175 720786927 808216762 814678227 347165634 643739941 581365876 864807066 323024577 775027123 193059401 905222782 699434034 927297569 347303537 663440206 704261550 774824037 78876106 232297481 287343478 378491775 333216798 409777510 264271354 945824832 948206255 965227120 46443185 413985532 936811889 974486007 19593186 406881897 368983196 740042961 376726859 804783502 479352855 715413074 597967343 949488972 208569344 785388358 158033903 340113681 856419173 881729142 577058119 930385328 216806508 966392507 214444929 327531493 408605882 838843109 982551546 983106685 873678890 903537443 219380424 352099707 765384144 846059346 982900560 993985851 55058332 699119972 872233488 981926896 89873129 187971585 501295196 765592629 244293426 441868095 151328801 230726039 951848458 965075115 628023293 963648753 443397115 749757056 542310917 991680851 134055509 232148717 888931282 920913290 79381160 450746064 277747400 516205517 432335099 601667102 695970756 780705950 428081099 567147058 129594174 690280060 843706007 966515460 721180457 774007557 447614625 597158504 45559407 300241716 175604368 640723606 614627725 875961873 66474200 655612265 221522159 720014131 346552040 800328677 677293659 998847457 845067510 896395451 317476465 870319310 216842725 223708258 66757525 335417298 777923750 849590474 318991798 842568811 669493810 907835235 553430239 683063818 484810505 838341949 135972170 338006782 731049183 916854766 165131052 950613029 892895898 893854110 847147667 978729597 898016588 967899728 792164492 922908723 792116196 953256594 306233077 899556126 545947373 959351141 773895277 893755064 314442106 590850324 813626573 858423685 150683700 979083475 224995903 521522799 379412646 830155675 493396885 556661374 460524297 540645016 233499412 594692883 496700568 573114724 887942395 988297645 896257384 943135528 242137314 760289541 220516152 741851789 924376751 993790105 421496208 819708043 555481251 596478020 965345376 992685142 914729934 919376812 35061794 862583711 139107666 757705580 144578738 496042838 723619062 876740404 74978490 673735331 829134567 934806889 579806392 972710516 899216825 945566726 577932443 971665585 976555250 978187365 255801501 834440909 832765541 874130126 687775311 759318638 436535762 718601401 617713202 660204835 948893665 976610843 447790377 686031395 99180757 559813428 3132478 50586177 870901863 990106735 439881756 643102804 314485072 494760548 201358722 641090954 303095979 483729154 6574214 415800340 77985003 886068058 139418463 178534124 595339188 797345646 295123032 695601411 970913478 971129515 680239341 823011568 292459878 529810123 699904251 712256374 232401740 326983369 337242352 849801394 89702167 210306153 1933125 385755633 841855011 998739608 635832850 843281552 501095430 709205611 589834915 920770676 769933865 798004775 188294962 874207827 280098381 963573280 315864171 353080223 185265481 987543300 2210891 576229698 820612218 997686522 836541716 919358637 614518328 985132062 758620115 896728853 954226314 984790046 662975100 775308175 83184162 539733831 660892513 932047085 570003139 747703006 919895129 965952530 193189036 500166585 66150549 268013670 322219882 886832709 366076652 992050989 41487151 476260719 644751751 921387485 493265972 875391890 607624628 991170838 849912001 921196234 932037192 960281609 109461924 415574062 732299774 891441345 406388895 893939487 330207327 833836904 717513440 812597712 694980286 859952007 714222027 872983700 136605177 660763505 261823404 328238898 73175008 198612007 140568941 763066284 158637104 316550180 982339365 988318351 687207723 944533017 857811660 993883088 698635477 828504507 873500325 947300791 610203961 806587744 241296303 984411175 696570059 887271799 780488528 961204466 880863181 899549056 312517253 751485784 542724636 601859012 216891299 589643470 721191149 950168832 432841562 580634154 272114289 383831299 812883726 862471221 145405605 490236542 623335039 763678703 531987308 744980830 427790712 596743371 489539000 804685297 254221492 474241232 878133943 985433289 349036263 725146924 862371336 896988386 315545963 967588250 135649544 886162893 853768573 933994923 56838130 782081144 685612867 858925534 534798197 914567326 629192847 934264545 835026273 854105743 567091860 613290708 286813909 640409458 818341363 982155793 905623974 910430375 735057517 885877358 75495894 990457063 669670201 870778777 419913943 929173934 829709864 987710823 2304464 834147208 687572944 994823460 782644460 994160894 404374941 802652339 895998206 941764971 142005841 379645312 438329457 937409152 982734145 998718747 551562697 944806790 165339189 642558901 456707679 886802220 843987112 856568287 875395306 971214138 368170246 523597252 558398238 900363936 969872644 985092730 801223538 875511476 264536128 908003327 671829699 999015665 628264674 947133156 7155728 793863103 136119723 458541822 439168268 472264839 428180885 815519349 551565308 914477243 705268928 757783674 204690493 852904869 532748394 688528692 424042709 661382198 685081613 750140800 220845390 636353162 182075038 897951657 271167937 464948662 368871849 816913407 530167222 984213688 869209788 955670908 333508277 673257089 200750404 688552053 91928738 416897670 862427889 977174978 158587476 282232800 230922297 930421546 391856129 778967113 708200377 995892407 33730959 425416923 523138028 678833418 881731767 952399957 901877709 952519573 385621510 621663705 294576644 610579914 388321263 792718719 928770502 959976286 633764937 835977476 328085047 783219061 156638851 849145650 97942524 720760905 67359428 828600071 343483586 972122854 418055318 619168655 342410339 994405332 869625925 869824583 582205829 645080374 956381778 967666320 72407632 509616647 922640504 984006436 59309560 638743312 309438449 596437550 742794419 979412803 904332317 996612797 213471906 712954491 54347482 420936574 356388962 845013093 111663655 847127636 108249461 478618682 721915777 904671268 414566728 578194053 576784088 795633006 43741906 477417865 603534459 818862782 182890024 627507962 627509973 790184376 956603930 995641445 420590305 779462963 590440940 857001960 938439090 975030988 335978956 759114901 298301385 415117652 745186970 884904622 419798580 771727683 896868239 984680540 443648691 569462276 341639325 876077373 293409545 653401059 343499031 459500220 369902871 421874724 309426670 538403138 308749200 955976092 614786469 704139202 899825623 924025497 970351550 977723141 163930965 834525719 904514161 983993775 923129183 939467938 201307571 231689500 841888789 918382877 813450290 837534863 713418557 845572429 274977801 493295781 877092124 947519202 757770965 841893972 828322410 973491433 977127685 996649905 223050417 525369550 374476759 953347585 553581996 985523173 201373695 584267122 453220821 673703477 123029588 362910333 689980526 883981983 672283473 893325498 980463206 984210058 588642557 702423911 27366223 920893143 931560985 983883406 16626437 814056675 563621356 764479567 152858502 777614433 612404184 674086655 554293591 700331546 44438841 847872013 236890697 524119058 544874576 817188562 196484208 783483472 423946357 931050177 567064209 900276429 753873286 983830210 961037317 997572713 542007409 824446159 466612096 635737901 145320519 728645936 470812924 970006309 737685357 918990035 894628921 988493570 148451643 380253524 738619334 896523707 271415642 687992156 315668302 562392816 867598062 993576374 931044903 935452826 162953383 371961811 208353653 752536851 357745100 648198459 458513376 589554216 354023675 837856860 999096875 999153279 427819098 698455392 147152614 840310858 290143089 717872734 174531418 264741406 133812369 562222976 73281277 777385402 290901675 584373096 629540886 638764843 483504625 896192267 587618108 852825319 463122334 910033667 538916210 565802287 638967937 913039019 7954462 78578096 48600811 218985386 406739445 491183877 924306933 928954639 261842978 378890672 531946871 957782002 891312870 996664099 683139178 890334783 591834934 946016525 541518139 613662933 477447027 831668378 427745694 932349431 369717386 704671818 824241324 994958569 627822475 668808501 920647613 992922084 966718482 993547761 789407988 845365984 387150634 858113725 187679465 575543554 449907427 469007921 288515951 350903857 592710832 719301516 48297401 863999096 24911302 333988345 631058190 989444988 74428678 499281826 121403388 699118062 964746282 973770941 925094065 925993105 62133824 417240411 72685963 879392821 628369284 722918845 534962401 639972579 715960127 957285224 525857246 546016603 494248826 809853585 275039543 318397468 711890188 832615220 549210085 923757019 494553776 669233876 326424687 977851027 309772159 340210000 26360715 741769700 594489104 692175141 397274850 767640576 711839510 798129940 949924052 967569550 260978462 618599658 230443163 245610688 832067687 880707709 266561265 635531349 44945555 91304418 512589399 575879067 450006031 823792544 739342749 810009197 771764482 975196832 564590911 571749641 407955065 511463661 289561295 870790099 516551265 637487496 823749225 861045914 824038847 968079262 861906164 971266886 177930818 923548743 228932596 447878541 694288739 757274161 524330703 754674994 8464975 626127901 305106551 948171822 531874744 609318035 378281718 843158036 381298653 836275494 608674711 628857429 722439956 789608019 358570447 811428852 795557192 923918030 226641311 434702988 124578830 711161608 974260611 976647932 600303362 757230623 872524998 951279253 588432106 753739266 673629423 801690643 779606590 781340713 565259279 800845700 909604120 945945651 522131868 812886220 664341247 909553447 445592665 769149898 272418360 414675298 819253762 973988362 894145297 896208370 820707686 899472153 716542110 798507596 209009531 867854502 417889188 760970026 971653853 983844280 314016481 724274718 72255479 806883899 607629016 673000308 172147368 848377446 512141003 569299009 243686631 342177641 105341915 150616053 948534327 971621684 766182959 844677161 709162683 855411336 535209162 555881768 987548839 996181262 218210299 271334622 61356276 121595194 293839438 805526683 1278895 663817574 428767499 530212533 369469663 944605276 107049089 692495486 573424827 698578519 220908965 770441742 174660780 407913035 228159278 287620329 137976871 582992508 62833126 156037476 890393204 911709948 616743775 662936621 629367090 633989691 806422210 971814661 790219989 869720259 775581734 920297640 453638200 541602008 712742259 931578864 536360956 626759820 805127939 886236551 850563158 962703033 333189180 561538641 12524114 295530957 350375190 917606161 84804256 252361935 609532162 655863006 65753085 716919613 562423920 873483594 172256026 863112362 464942675 547813965 514470101 609415074 377536005 677866751 486656971 830434860 543637972 664103104 913933748 977453151 196619300 318155956 947254512 980786763 546598154 580050795 179009160 433357348 786844129 909781696 614966250 946181598 777159515 847841355 435358491 570349344 199949918 886554206 986109752 998486859 104734213 387273616 413663799 829189488 240401742 469383252 906530236 927532380 863655207 931831930 737525155 934749079 920551445 967511819 670529801 832403173 686764947 961477242 5852760 857204456 299627610 383753110 60471417 951506169 105544205 226671683 33620 191642323 31844120 782026531 4065444 574042093 973468186 997061792 672335190 924689337 650721001 903768515 737228264 909021152 634312304 762111326 48879020 723111888 588672897 712560389 347323561 454711398 778701575 896076735 916226475 938740413 23874410 300204446 351015181 798003084 106208941 799859249 595733091 814470856 374493106 666117429 273734454 847200007 499345797 670417173 344202440 785306763 60801989 811732302 135158272 431377527 611300100 689778489 281977357 945970584 475139742 700832909 575433233 587418098 390450062 565187210 16242540 479818057 550778004 573849271 165892921 398338199 325337319 369933755 586651242 844595363 687730305 724281206 266886045 729183063 415343681 753501452 30722225 710982780 757712435 781091492 891290575 985309418 775455344 788030837 457202772 481225037 130899889 208753409 795092725 987484002 556865951 751593406 612405591 797335746 644381878 880660216 954162118 974211521 69257813 606711618 750105961 835657720 735929748 770476215 881191237 979855690 932336364 967148350 812673310 987940506 54737737 747263848 516479551 546871044 806644332 916309477 668753958 903385140 24999708 147524721 397569735 481161575 81852582 120877766 891844835 941111484 493145059 838634427 501093317 813405411 487391891 944998656 93570426 558463174 290216369 985607891 122233103 414332921 85971105 450432646 266277237 310207689 567997487 608913835 465955872 544573928 915189715 953460490 350272174 473024928 815158014 951229175 50060574 976122117 549199205 840372681 358661748 446425977 901097689 980276683 686073617 893247509 379199073 929163598 328006253 929735885 233288538 553630440 741666812 826519240 481033343 858032758 821171792 858548245 177167717 721539712 166615368 995712922 735923399 950289760 144514394 307309272 58325073 536358524 851072740 962121042 972544375 980943472 16619751 228571460 131277792 421542088 596026946 674106611 830085555 981068805 167017353 780738467 60674483 336954266 196889429 896915727 326630513 622628142 71852205 360473624 694828551 927922996 52101641 873543551 808896951 815792944 194849386 700854420 576651741 745413056 846237662 923768600 813876439 815689391 440948444 959745216 99959946 395128728 609059907 688336658 956509859 984042066 871910285 899997377 156962199 700458923 416213361 949330316 272377884 699576067 651565453 982678256 681119887 986741760 373207535 434876265 430435920 928203404 312313006 632572644 354698896 465888298 508960840 685877877 359244720 645634678 591473027 819664310 402891186 810574209 853504877 911189822 406413080 620253248 678552489 990759288 720377840 794503696 610295852 814442848 448952179 687563428 770123352 778474858 412215726 608588047 252925917 596032435 332941522 667968351 59313659 958628849 576790475 816102233 680233687 920730738 566450077 752298484 581630603 970374507 28436399 480511278 400422643 789463263 253710072 976771942 213625418 513631492 448557096 849737597 175412805 332423415 850330704 975831744 522129408 924922118 532231036 627229325 34672590 915007080 301095287 328450448 202685493 319700209 962464994 966759100 457506466 756006698 826410107 947505302 631665629 905866857 277477545 585298325 645232997 857169135 160645099 939362198 680789184 789573880 271953107 601214174 184911263 693807211 862988229 939730634 905916700 952463335 231946794 512878579 22964769 223178553 585246822 757622867 918462271 922054868 702237133 991056734 271930052 773183681 326473579 327547418 215580277 815949700 626688638 948285065 238812958 380557293 19859090 752202624 479086305 655089775 318892712 460880158 900047854 926726486 251168615 512765602 756097449 883904622 171002548 468551795 82398204 575530634 750508955 849585112 717805040 831976023 370026711 726491598 975667423 989449351 62780242 304789570 452804562 919167870 509791970 932024258 65859578 394645926 408818349 650531423 940907856 949750153 947596700 951101368 643753168 900628271 185344935 394938356 852514394 970419829 229211790 758318238 179151419 778252601 977209545 982834155 819357079 930239410 452716899 584284169 581997394 758896340 963455911 995629845 228621949 306379809 665067017 714783033 762514589 993934785 384498304 816167394 373043853 754118289 702963834 960320039 955837195 990092198 512843382 537070147 484732114 814502354 550609527 619876548 826915088 959132270 156543964 238378308 917473225 982630070 294042851 950448624 177803732 503508891 589197906 766122427 379967641 544790905 916613619 931658596 935628716 983982453 713407007 767243387 903808134 929833583 329812827 750516687 981406342 993716831 931854787 951012004 132395767 394820127 422892894 512034255 637265659 703905865 375055407 759993233 858208386 998499431 563450423 688727764 61879652 986055971 769777405 895575322 92545483 199110412 549450848 608514653 978897761 984266240 45052226 498043555 177896612 483949270 528088121 754537639 772395970 964873657 664448873 811117656 234038787 887273408 193046425 302879924 488013393 732579960 359039345 626822169 747162429 946863697 45936394 607807264 312774082 450759372 444070892 495062495 480590164 881744444 673547472 675618436 422639128 476205838 237765344 272551126 520270777 978407284 601041995 763381483 688683447 826567741 944384278 976567306 468200451 855389038 397768371 579972706 114030214 207067388 304203178 573195111 638406592 730102980 939042977 965857454 445644755 914599592 511728320 892740513 381921200 685929109 663348555 807800990 682791848 998273517 984962409 986881793 344826424 929976044 988810578 990365076 36610846 878911065 235677913 761437245 83889374 243786051 828922290 962891569 832812748 954235897 788807727 939079440 444924879 586266409 635605503 858384415 415141353 609358779 971224999 990627726 464705186 509004292 188104863 294132140 388720907 465033075 176007766 358621481 215644228 920817285 794226978 979434801 561329213 897105103 236494862 957888847 214755023 222515104 503747542 931182486 324908042 450350320 849739649 890517486 839883281 969419747 367139381 824832501 970834584 980935912 382529382 406202181 35000123 998905517 748918807 920161851 687785718 938782050 540748541 723695282 489201998 897697316 74451815 720215513 885991205 998873269 866218366 936604815 990694881 991357176 953332326 988662240 419733260 935292562 394557847 954836690 546485118 874225964 917344667 924352287 268097246 568270044 854647427 949069981 280147939 300209840 564968699 692373517 699303193 960676790 482500179 897622391 16819169 563511995 52517398 729863639 890801698 984171007 821074985 935008054 922623968 981466772 861025027 935262518 545653242 563906119 983427986 994231888 359399061 721570280 247246024 390631516 318001046 990135636 820250713 896691197 412710721 796699299 491481277 766760128 473709466 761486967 550862955 957642072 182510305 351024054 57222949 431420132 372343654 405491652 2191099 406949948 621065376 771691872 636479179 952209337 404522670 724305629 155864696 795949761 126522473 807903474 326970598 586013964 34955996 781500775 121826964 352520755 354898514 521587268 599414643 877537852 541270710 722358230 600382300 664559825 907407660 926259576 400320555 553708412 46845101 440931754 809029529 811175102 20948281 539475742 334295600 744385015 49936963 691610981 602826771 953180299 315355290 348462568 778978413 794903830 761433183 853794989 262872380 519955518 292774615 844137714 156824179 520971405 867908809 987046314 662321721 846881521 564020883 975102560 476417970 746555627 956713893 977102826 403226646 914823285 210603336 338071114 390939840 627528460 285142295 904661426 102506332 311846214 693454680 793842990 828096488 985771974 465398750 890403963 710514278 990315810 386137586 583813077 385855571 667854992 255292528 456982401 744181194 819590977 41375378 457338046 973646814 984116658 950174619 960988765 517799762 795366573 258261567 448021782 744645222 839685038 409714211 500594824 284737834 615239145 549847027 981690632 178970377 420570643 449606640 652063718 126066923 225619495 777744263 864396963 296972873 307244680 748547365 881530461 584819098 694963107 40247171 385378045 648345610 801501234 824259232 887842636 973628546 999390752 229991078 344846304 642332867 994703111 785256144 831482441 667087485 822292441 604805378 851386847 396684823 709820044 93321903 563447568 600741559 686691555 787264135 816972665 43976363 291656581 721617492 752278120 514108794 862369847 963894384 982908163 126985793 956475138 932787637 960049629 628070106 972681292 203027606 341329055 567097227 784436927 818313507 868393739 727937881 831104791 470154107 966567599 612819810 884014959 191697649 914142336 724713711 854069378 994537 303995916 775376897 886283708 248721568 495290046 489799853 977198158 620274987 859770499 626171753 845705259 128469572 947227912 915498202 931138418 520262747 753904893 281703582 726426257 336292953 562194076 878866719 930611496 722095783 819110822 37755141 946190598 908743176 965507965 485820598 766698228 327504116 780201772 650466194 686530497 119302842 743103242 755946651 848645686 255511757 412223365 748820047 945774677 912157634 947815332 87119862 595517026 980111853 988435141 142483857 848989393 323791039 960966223 379449311 662014000 744927836 917727050 78507444 588534659 681063890 928813633 821166926 856945470 118291743 561569131 818906643 937346202 576580432 834974127 282822584 709707070 365483430 806439476 625947287 985479046 452364775 532637248 603752245 808268154 504954047 900437010 361328640 445221961 595554396 999244227 63717069 205302884 544432724 763350515 495904365 901902957 906069935 976363650 845853810 928055021 313109812 541250950 137268102 381332692 848023562 915043851 808392393 820236452 157047218 958431115 797233569 881387913 627380988 944977324 559496495 614459129 116735144 780550141 353555017 982209843 825025482 832760847 584848378 844440694 105539768 393427017 413133583 584365807 302412355 996333836 282794945 841675371 168001903 262622001 719744532 924131588 351453237 811669611 812926410 952121912 553079842 907792269 57969582 144890125 436065037 758194571 874158455 912155130 94289362 947374081 504661832 528006613 803970919 900678553 438113530 662308727 339914472 745116317 521010925 543907818 274394807 401594328 914338259 918513232 287002303 578396459 953197290 986697338 163409046 912112095 499043585 764508548 936881958 993463131 177220457 961889117 604098020 812879678 864776898 992556031 168004620 461738254 856249164 946248540 428087613 641122319 928521929 928894759 971854601 989186399 635818792 835406340 640166039 905260559 620809331 929552317 802523599 880158820 347109407 935048147 538063432 545221460 731309248 911065496 353251379 779746981 251666396 469582934 782316485 947781161 716373622 836003063 344748169 760111190 679826158 857323660 372914431 496675263 153897147 943889989 944526528 991146282 789180725 899407382 871476810 876276877 964375544 969689525 131564227 225024350 3235011 110588097 449830441 938523007 458402625 862260139 827847094 847997336 586772338 898415618 255515718 657169438 809153725 901617225 633170301 853041237 455761559 824804985 595837471 774869267 688280556 794861367 449885991 649099169 208116400 997898492 172775318 705327678 918835767 957010520 6513911 479622739 283474457 795273517 857897615 970010814 967494533 980529035 341363358 679720135 537397363 848180760 254494345 708499440 407532169 942578770 593414247 998207573 190752967 813536628 370046565 570681856 417530184 577355370 379787493 565937849 653733841 700317494 970199218 990420193 986880911 988299813 287924530 376236126 447438481 751960494 118835523 689946537 611878883 676175417 265799023 863052359 605517420 904736651 879648857 881786442 512404499 861808122 687123227 830271421 513321402 696416737 534559521 667037542 74538976 933685932 206086011 864913651 798375033 815037781 450663871 858130338 306212390 674867866 176582911 819440024 849962630 913655075 705950145 971623928 129874154 747130383 320465603 743385117 375071065 526338410 864632243 951824576 995078432 995643485 62425507 222518218 533286936 911664177 560651784 939045654 409878292 983115409 757128386 857377751 43256963 984340834 642049519 842781527 461394 746166546 229861217 513230936 455249403 983452573 576384655 709386632 232977446 982971209 752190732 845512916 954315258 965670834 310559825 871810672 209683809 918467902 531820205 875565907 215935051 228460165 766137632 851051278 690429264 848730227 528812211 549081657 592727336 887592533 119994451 583204705 374073640 660501548 921101818 964799597 65399215 683156464 299507243 869014205 474848157 563127713 67440130 800588438 693638670 860102423 651422231 843788604 211474186 722857889 520204 947559272 434940427 719856406 466200132 976035319 405931971 874718713 156576211 277853721 684269035 739819670 267774278 374916040 327615554 678014179 572721955 842321454 149471088 502150495 39570248 613334666 910622115 919832650 180798153 637109672 117910335 936625870 924144303 947151997 360084323 874303471 593122778 871187596 215101478 271666271 182344944 778425022 788498603 885913498 93691122 170697950 390789233 559012878 583971213 936072907 51939704 319794411 331076969 969288572 769703911 884254793 992167086 997229191 409883807 548773357 617711934 800910142 177890235 991661313 23861486 911859540 522536183 792649009 39990163 303723930 585022900 661813741 682386875 764121870 968199336 979114338 130932695 473844390 678568910 888977166 652501752 964557744 829147903 950748105 988611838 992055296 375310220 718766885 958959720 989967647 154443293 532111332 116494114 522824258 276695048 361457857 664879004 736514003 449800314 733097769 696029646 978516695 701577671 712543358 73551838 826950302 47793267 709117275 959744575 997402777 530634261 644295570 172755574 728784291 502450752 817582773 55462490 418200025 922725003 950724549 610455596 848696751 901709594 905519830 135779768 270446925 643511943 774707384 755005341 915954868 79296345 589805574 436496350 641336742 313151013 409766781 22126338 979166624 806196914 851161506 324380575 393621322 687491848 743325446 645041965 946034552 625672451 840463430 419453603 521967314 270665555 646128427 197873386 730075622 214140776 791825409 190171143 932661866 855006789 954007368 786824299 980315513 452058319 625105863 501987823 626544072 40343281 349007719 383855700 861559004 151297282 802989951 136736413 473346762 718329180 942495594 284210143 886960964 603313803 976464049 858529054 928286615 765341685 873610112 560195557 875966368 132777618 336662874 799249209 870487950 805969845 989664101 205242372 897534198 564394282 613620128 265940384 285387068 872323797 963180846 193132166 454142467 121924989 596793476 849967712 883326868 796195466 850844744 355779314 481867847 281995399 866702316 536495276 935724016 58876174 688439903 447420322 932517036 447759384 527976368 248448009 802421211 556511588 722413264 501394702 739220440 149171962 534476840 861684380 908754555 738723163 871174482 756081785 975345481 800919210 892384559 415628039 438603661 571363770 899099164 836012498 973634573 523194353 554333619 308301477 534850126 774719786 834109124 385223440 744232867 521465887 597499569 952691504 972922079 41825238 687168132 763020259 837587424 274827777 577523748 266030086 410443491 755208109 989819967 815444899 976203090 220108144 738162612 462963766 815971318 839981433 863796834 108141969 727249145 811159984 934606173 965528610 970851190 919035844 998493042 698347413 776139658 168282731 697828456 93980637 448815522 553272408 897170462 88076214 202154628 111099441 175423464 819503417 856937342 992787855 992861780 898624926 914727791 197685043 700601867 900969885 948228681 259206909 412723436 789825797 917786622 378268396 697638380 38445424 948288569 63591886 568020571 830416335 874794222 849589366 929309771 358622800 512972730 530449656 717144484 692291459 715300438 950674948 963913245 115117823 872861814 449854021 743888145 953822146 979584074 435246758 446724353 787947951 788016617 409495788 994115315 660204284 925263895 940630870 955218709 461854258 811302512 336947762 457219618 610554244 886253303 269919959 593562247 179190045 505012851 249373687 276372607 272866837 497391750 508879963 625663491 579672398 715508049 356855149 535891737 453939960 945855889 191609799 207142957 460981558 643026388 333496837 382664540 524083257 808387691 877856379 927088922 884565379 996336311 851059737 916855886 319131589 850820375 584998480 964779303 933047343 975789981 919254720 995900450 622750977 759796960 510720470 856063006 801187253 891988566 340409052 416775202 528999286 850530277 650026061 900454257 555413309 774825125 84432635 93575491 991237235 995063208 901488013 991563247 551136226 831144116 756781313 776733211 625273417 782428892 475825660 611748288 260295791 648951809 964533064 996705478 460442318 935953096 690422014 983967436 131035412 977721002 643445167 803084978 16835215 180903298 605182584 978684326 138017254 521723111 1850360 927439658 535546183 812412379 438326168 580377246 545397559 904142282 751818706 955585829 816193200 857733853 847842118 849138223 798313527 914430530 493384237 502494513 901043019 958164337 63766644 879911785 921327042 985457358 962012815 987667878 549219886 951979548 503781099 677505503 158326638 489315859 840053130 949744103 291435976 307841433 523792202 563664818 208187203 749376801 754986950 786912082 586271871 922939181 197804638 260062984 632610162 835428306 950355731 976235453 276200727 709351350 975448524 980523848 358356553 723158472 96747889 98688419 841345220 981030631 84720212 993125862 435838710 775807766 783658901 904771575 118187845 885109260 689556331 858957980 41316344 905974080 693073549 764205945 158923429 907922807 388187913 608604073 238387884 575512435 960064967 961942245 656867557 904895012 779162983 968471621 13433905 216271403 114845943 409234872 274985052 660539752 530840301 569482812 726570197 995276703 340766719 718979010 67599052 331324848 656836786 714683594 903738135 920147040 592180322 868782661 687953626 737353041 951201084 962144065 143830802 942926398 250526907 755135901 760667958 964348167 798766955 957727122 615702509 664547841 371948717 528936989 496988710 812040035 991134373 992221920 768195324 971730197 739279042 954659845 79437232 908906560 630523488 844884240 552080063 747447202 597720672 880829311 355658018 922482148 526040583 865277730 329112457 554247436 205563414 755015098 915429552 926453369 328741188 544979248 143311687 632039298 837580308 850187745 730815248 777153547 623650871 815484310 845369576 977607250 992668629 994709943 612179203 854808629 750942207 807578665 166292674 251901923 578356443 864882580 247676235 630381282 288637561 925673339 19402495 789067568 521914155 818534935 875729143 984018826 342172973 967807503 654542075 766613062 883888993 963483777 184947763 340097735 167420275 440983465 963565035 975219561 669097820 698555222 138202587 341518659 81724440 215297100 825163377 956835228 284431941 691140687 212467209 336176378 428511586 525068202 95537038 317631506 101195241 657082252 64077193 510408235 17859514 449298427 785963490 866919886 25144461 868280037 152776912 845464422 332149265 802611387 44493862 227159811 317568431 860178978 423031355 673379220 282075854 738612588 764587070 860215928 402777407 834449915 688110567 796495967 978875052 995321282 580705216 969621411 645522911 685305937 642119000 811967738 794140789 965169961 762760082 948445997 905623059 954827847 92272962 959109389 896772203 958385049 519291757 627500811 437106137 590223870 580050350 760257046 176570489 452317990 380049962 886173752 805546887 918997556 367341006 913588208 827917680 840202813 455996020 834670765 379258375 977515103 781419470 787099838 666487993 981342721 716883745 854437727 974155709 977276458 362987643 747181724 294611207 464797098 954416877 994605059 743598978 752634184 633219420 707928157 604258409 703474528 693381337 960368662 543449247 735767151 772123755 950222767 610546400 798021133 324705083 933390116 303199531 840241726 829894828 902270706 926808249 983794066 651265548 849377664 532860983 948825804 282875425 925562997 313053847 382661882 972590916 985133787 834597045 988723642 848319722 960793583 792716521 942318415 276024777 392547373 876538332 990370471 120564588 484737605 353192007 527991915 364165375 690699347 837585744 870724322 1943390 275836602 972857603 999057231 835339520 861181799 384606671 617737087 509698526 600223990 232720503 279694103 470810966 587118509 491679316 776028899 67136379 472767977 560511847 866785503 954332832 962853989 262492410 886518118 873188933 903084503 952158748 980769590 208656934 798395310 965163157 978303902 767569903 787273862 456406570 497331664 374250642 508440908 880914526 933089415 830100841 897546323 753212549 947134668 122307411 327103416 170700164 353265107 71729758 190635748 236915127 693763973 946260288 965368067 124690906 428850444 530728394 567199950 929580848 970067284 421089848 542097233 67071232 744668996 584678465 807102885 994290983 995138102 662936379 977411594 739373638 878801898 720660679 894474904 539405633 830860504 357334436 361724920 962762299 986227265 514646558 714479596 630371779 971838391 302502278 583516795 716478953 782079656 505468443 585998006 244542385 743137206 848406531 932640844 826482628 906615900 276253297 953102951 850825500 865092850 947508325 978832226 90044926 507235972 748919269 769976401 220989808 455695005 198441707 280952033 987352897 990632827 879086489 993480280 598386123 868267309 225420920 229159823 6177354 37610392 939955394 955339630 764830713 840811376 946693085 988823664 66452088 233618192 53334543 757346114 596415888 722382822 398912264 509452140 146151113 363136344 601160186 763062984 513437352 869218942 51717024 302284502 282346883 628131989 80534106 130004186 499344627 894199739 50149923 426109141 822703324 898078305 540638555 802256617 100722724 244791688 652290175 953120965 438997851 878112710 448158469 973620320 922279942 956876796 617892790 937227918 660571284 762322223 872514048 975822396 37150240 687466785 104756797 632487804 238141977 563637614 878759381 925671495 212540079 641756547 464483956 621348528 396113059 740017819 634099465 784023301 76529525 650351607 906970295 954126967 499411640 514550326 454019864 860347521 357581877 819696904 600512926 707203810 951487251 973153197 890441937 985434897 32329352 509602995 405137377 595957186 176405553 370726792 373380848 555693264 611533295 772581843 702531235 828397326 872598550 875799099 403379195 939886010 509744360 743415483 386347836 867488937 418100446 440770890 372672666 399688445 860534265 898093377 478647196 665345205 753238015 994791958 124040887 609645298 586626225 691364659 528743341 661254834 416942574 834607808 210917623 387790855 857740374 905837326 949586983 989605868 273511651 389981078 117225529 857277520 952274502 996886498 761184806 951494055 890288915 926836670 147194704 345153270 131161186 649364858 283857960 386250631 29235785 920859089 250890226 506896148 836073951 944234066 986717553 993913735 215154508 930417755 42547050 728361947 559418375 580896648 369920504 767589098 192935283 541405679 137246584 304619164 306320142 703064109 226883105 568801928 878577087 904108861 183867928 227942987 208686046 624164668 387056266 435646643 111265679 641300520 825610842 904380121 191771704 768271209 160307749 712522745 565499921 783333744 912355915 952718918 104716840 158296346 506408485 525462101 260571841 733431701 501108188 958369267 981549330 995487164 762756391 827236456 35971142 361575764 981528844 995803480 542252974 948450297 619210031 816565764 479002977 633417361 899087406 965645957 606715019 822832676 558599926 728688871 494401049 917605079 541922456 800925642 609050819 751558088 664238608 995159686 284966171 814393429 855745531 929094137 833472451 984839079 560036526 811002949 259716522 655342966 324406605 336128583 171590805 807977026 523166351 769317109 554924925 853937595 878434907 960439487 938756515 975092921 417068217 795057234 529360039 864559289 892759076 908229633 293129405 940633317 582462256 770269070 240261699 999016670 533717871 685052510 723872751 729764603 506186943 994627745 72150061 538548178 104158226 449110965 299175103 846220022 699004996 761201938 785304004 882987987 939581068 975698250 601779001 724484312 961285576 973706067 959377755 962332623 742113611 858070893 992458399 994917093 745889146 779825607 819389514 959884990 110725714 743762513 97261898 398154091 757147093 770890674 954137369 986391726 555697870 639184804 831611559 974963677 348428032 847970868 735904574 938503026 240376054 437828187 804359418 868244974 41728365 385112866 251562756 375851055 580460571 821398534 940578246 955350590 773817442 906254337 953327409 969010573 448633582 927248244 734601091 737304754 913670287 923159996 330766412 585818299 180072032 644679924 718114091 890323089 450773590 645221732 114316400 391080809 574768136 636491354 140382704 179274114 572602474 737674847 479451966 618876829 569099000 629491716 389283058 699786899 92743190 480498825 567304818 758395876 227976630 399489079 662427417 751487705 412214108 897472800 840998844 900851798 663346410 890193123 975522236 987405691 316394603 499580849 652180660 836684688 990330713 997431436 427050393 823176276 786719371 916703128 130890488 572798359 497006605 507030006 609812162 891820655 792529135 834053712 302238374 503869689 364891354 929615603 84669669 298134114 178033527 458885558 171677956 880058631 596747885 928574727 886241249 986633536 913640351 943678745 912227858 925515740 713153939 782427778 957501209 986558564 813483198 899866379 926040744 956843691 164115000 863876844 609645913 867786663 849101229 926895321 802686416 983785254 988529937 992357099 253381970 795240715 823683541 851351208 655312379 750898168 264760555 418448382 480585420 978979617 992180031 993765852 138992955 461433988 152558340 953233835 241400258 565968310 676794460 873044140 769466646 905033976 850396847 877849028 959028312 992010818 423362022 612613360 399031725 778664437 778057593 802016614 985028872 995583212 988276551 992124806 378109822 679657832 404979499 706551217 551626248 883917384 629766140 705822497 406185149 408494263 389274578 500104548 845778623 892720844 92756740 632356437 799508945 822079420 707214315 805251559 511574821 947224145 73082561 585515798 775513355 822911119 24467713 554024303 412940895 769251074 885891444 937513619 525156961 687128261 437647524 495866503 315381720 923650218 83818892 240384799 998176758 999319641 276712182 736240522 810564704 813647498 327199160 563782783 340056355 698754070 557601339 766740191 486235320 944420294 555848220 579212711 972804579 984321494 201544318 914655323 783618612 871268941 133677777 719236491 120982517 540524720 160474449 891021115 529060439 981249134 505056849 948464361 440512983 890924213 305230346 969916142 160091977 745803331 176451470 950489264 222559585 637724826 812285223 981826740 561916618 705082975 377087610 676812707 129080693 755830985 759873563 780735951 215531337 479242428 808260699 928471534 491180836 640634914 52399645 520815906 409484443 926754745 827704622 885360831 761600362 889485370 712716891 737434927 931456741 979202749 176273673 365054865 962786533 981663102 689682226 815521220 125330284 889093161 816666641 837786601 71600241 740959690 683369812 974705018 28322699 326767056 806944744 925998345 237834578 555558547 585508488 954252560 871588965 887808779 75119980 986262529 906696821 944673188 532099133 534927858 150152597 334796062 515096764 905129716 792946742 850813952 782122990 900518607 195056270 525391377 474939935 813345524 190870943 276153085 475428564 582335262 603115450 823260690 660189213 719821465 702358739 774496404 154869755 167607046 374887012 563686654 187620454 655834656 956947707 960595415 128372534 685895739 372391038 461285242 342973315 392432034 710873190 853777056 778152336 900172891 271083508 387372245 447208120 969435617 833878923 978566746 60165644 654965487 322492285 776827330 780851825 813777181 480780077 937381651 779696277 861441625 820013795 977225928 681296348 699121258 240380667 858469079 996348793 998895280 306534098 797009898 803067100 907794530 202559434 246469208 441320124 774137329 472171517 935987905 763465905 956213713 11931774 318632572 704496523 798289859 270685248 708265366 898923308 980171085 10235211 12003295 619995883 916657706 862099795 892958801 7171926 238973375 924157763 938915992 406182730 826269232 183863018 786908934 836492793 844800912 380386067 425361243 172055074 628423107 53693694 488015125 398033727 466623090 226797717 760484822 228170761 278995953 704231374 967315509 83581023 426485601 217752137 886557176 692759423 823131764 163288719 994936429 893285582 913916148 928142340 991550901 553309642 674774041 610580358 827918484 324869480 356066181 128003231 622542257 627169958 961661970 222471155 982964938 403886481 543299926 322204337 646857336 391597862 667046198 159146840 601320731 569947299 741007372 981236044 982510696 177812282 441373674 695278616 926094513 759387375 834839713 1961038 668849912 452145403 705865543 528479513 989700220 973131774 975042054 755700677 829922741 356058227 498556297 386488453 976894983 296336420 338652736 421000809 659860495 578121804 946672782 670062921 826662727 236596966 557363974 740437791 762420886 618107854 897491737 792275115 866641800 477565503 901158592 147694868 162930701 186156235 565260123 337207188 681502751 979557542 991813998 991319422 991342419 231202801 456534147 664936776 847973229 392517900 668991338 750658591 978778343 733567085 983719929 42895007 415645847 2166385 610950972 544355727 945828515 391676310 402800363 431929405 464466171 648890560 668200229 619848928 646048004 711917711 942103539 419259159 753104326 853844678 932212694 932219158 979255520 601735229 910881138 244819180 530548823 906673568 965784752 84399142 99990602 456255833 655421463 320206455 378352438 177059072 632437578 528981884 875441024 704242029 846664454 922724768 992135365 8459531 237233878 567583943 896357966 266577781 308910591 751728137 996544775 282247875 748688130 273428399 595810591 453643778 487265293 913271891 949881379 202307598 729578641 296008601 984220046 207558488 566239967 193339548 635487930 299740713 657205868 174937492 573912077 313392290 796091343 156397256 250988204 902592460 994852611 42983860 206408396 222484511 987144256 963431670 981731681 825024605 905313454 77967811 857107000 17905401 586756501 647862088 953058664 825446361 889032718 698160998 974777262 15461010 78336071 172479309 331639633 398590636 642320154 899467152 923130170 922290438 957722266 216126998 685022179 31934565 46417797 578478847 939005295 643275681 866984471 544627507 696867581 241320350 267639066 573326961 886575711 435267969 977968735 383628802 578072384 381963613 729929363 538186588 679462659 254452589 877273346 917413420 927914472 779735818 826963944 1814523 942457348 21431759 357074952 530788894 795826782 667521390 862379402 872760848 976843632 545434330 800085114 294336245 790336301 419212882 848712621 913009782 972925776 775371182 934168951 225330735 449678921 406135271 622496385 804265500 808243601 87309690 977845493 218629431 952294565 340227484 602494774 516774248 574982704 818483577 853034385 171542314 192530663 43174734 366793059 963698613 977589817 112272351 741544731 69390882 922042031 709176938 902597448 669765555 842116456 724352711 800851653 776935341 975091982 486200440 632726351 349768015 738497541 281052973 299543896 521942825 552747449 69621212 850959643 999194146 999231314 756624814 950274908 196431024 245909077 256405060 692033595 81659614 823340386 397511709 849944786 959063031 993534412 46419776 427320053 674646561 803791856 873322678 984428930 422245627 503327084 292130473 363367193 126198733 568178833 924180392 934762586 218554638 619983103 224767136 488496346 519716475 688772305 326669485 332871750 18770088 365309938 978854486 982021589 211689479 217264340 948695915 997778612 50905482 461752027 748549784 965864714 671677670 958564770 976293422 981579726 737321231 833100728 594692280 873014990 990471276 994720144 479822333 949075633 4420312 150463217 965523018 993194419 551948137 995501155 534573400 787264421 160696478 632485957 507798234 655518764 673804473 831724056 618192757 719289854 318481341 832354164 459598445 778043508 897875667 925646975 530227617 790678255 917345692 962812307 900630449 915302544 860931640 953664400 709300569 764414205 900899912 962526504 349932583 752399977 498265583 832218983 122807171 982164201 958597925 960014929 486557088 561063790 819164196 878664264 427750311 479075448 90475161 321610363 725896706 804135797 366934958 818967723 66636356 903382639 909068979 923336804 768920144 952739768 25000914 725771813 36911325 901927692 684177314 870721415 391885458 624243377 233951846 695031732 747968636 768299476 618062840 656597522 304355064 394674121 894228468 975586631 543775801 611592017 72331742 672650154 306566451 519360366 881155999 911407309 936286558 966256972 961283124 976616830 881763304 984022094 438400313 620476907 420154726 498724040 147063573 964752376 914228921 929113050 704269261 869866674 967057603 998534726 245438523 249790622 311485059 799645862 692350285 846440005 2668239 337882558 96294508 443649002 669044130 881016632 213476539 470699220 251034605 577334402 176623459 258526011 341682165 661440046 44885563 754662390 253106877 301641321 315775269 781743029 675838396 867455210 867402039 969037452 353299947 356908394 946907174 995177321 136135325 138116727 41791386 699222712 412906334 508943001 138160654 911036023 456189433 816066651 568974050 655852992 992959817 998610441 619391212 842821817 100901964 348999723 532155456 847225109 758746644 904759818 906882302 927134205 113458414 240543464 588410042 994046265 149086745 276162781 342446412 965606749 25639671 656269730 629382099 811618650 809176199 879986955 639162632 843893671 114134938 667195090 598677350 853255461 192816609 864422751 121494931 425977113 288123204 598415047 902106924 910483362 662058262 947262115 254205333 980744236 779943105 998054892 314695059 987184046 351196201 411775379 19028810 592987480 151165057 300402792 614063455 762276003 540791204 617987121 996508582 997104926 803829802 889764481 774810361 968871364 843699954 969778215 824265991 853097662 825132764 852091927 573152722 820497190 93397362 668128898 455746937 661626168 491796307 753699188 25047493 937202035 588972811 807907305 453443864 922374002 901069298 984462790 727515961 765980336 142636646 356146075 553244132 859465426 272732442 716396753 209810906 291390770 23804922 154735631 951645104 961936146 537331902 701552710 88046005 138128520 15664933 420472471 662063028 732613073 363687254 947818281 873593049 910126859 455932110 720465552 640641815 834700417 653909438 811489247 89788096 348967852 12167741 269549464 596294355 842754146 48292175 178572595 203188092 633427564 945333075 952156681 608362667 915395405 522984779 611292172 746595825 776324529 938669089 944276455 381805926 516385564 361380807 575464202 422695408 530993374 918944984 931444916 239396345 888107040 713042249 962111070 148077601 516767018 108499122 123257000 657837504 896959009 646849478 956914880 134083800 361928318 138562501 140931854 208807636 443153970 988894854 996077285 372649208 909072334 323336494 444108231 364114268 836437301 978520093 979203467 954380985 964152730 264649327 522890881 238230931 777356174 236221670 865880511 421812203 821683728 103140986 170438536 134009642 843220068 92112767 116781001 559704658 900528344 719002577 761389020 209204820 900455348 642617966 729465750 685435650 767497265 111602100 307527979 332484074 985865396 392030298 726239393 567221436 874284700 124858624 308677737 747762980 770465592 567884183 993356871 164729786 273394055 46436967 357493551 384710647 946676773 919520622 995113709 798230942 998760935 472718396 900123493 676790458 927158150 657647054 964714376 842683475 877085660 909314791 941318671 529943968 652125998 677235305 836885032 924106128 964331438 246169278 653695936 913188552 938597882 599351098 668545580 916828161 965674066 857986350 947025211 750683946 847645856 167497379 587047818 726259952 892542976 68499345 721675074 312457119 581512488 790869327 987460016 94436404 292462741 890424552 992520221 767134398 776444183 822993061 933482778 220055816 574428074 753090261 789880342 447001716 466126690 523789942 963683101 532119966 976909294 396093604 624102162 631701120 826180469 79962923 661623916 696266511 831113894 964250864 970546901 985176439 995979203 751993112 865091709 414748234 838867396 157168483 660695887 275874635 722434201 200763827 672463364 466013664 611689632 285401766 839314962 361507840 996359132 872250322 960303778 961847897 979328786 267382755 485038946 375961447 935971572 192751284 271630414 731215071 958537873 772542051 844732734 985648552 987347924 130600851 686367476 542818104 608511419 108595718 656128388 141817878 838393478 258681288 357993188 551627326 802503201 260730240 285178758 558002017 933516044 679040892 842354914 122632885 835566677 207047103 450146975 804257400 904682790 995214811 998143411 805430166 984436460 682832402 717338537 499072394 629844694 241073966 537857160 961355818 997951774 998115068 999027207 331540266 431303206 465776178 722718121 60585574 859598942 566769038 995068958 75523268 477835751 129236396 331698603 584347566 985699606 916946399 972207935 39301513 593325206 610213652 985912455 351440252 704086974 217566184 280297377 621258002 979144785 772865002 843895928 890346232 952950959 109633656 516399100 682088850 806477296 625260939 997727619 691749180 843554150 377634094 968564740 556439363 742582512 913061720 968565675 459918259 657384672 208312418 214656041 623312682 741409876 74780313 739386829 129769890 602943787 851092726 911688798 856957618 974962232 666444853 796698492 850487591 877057503 274936677 606991380 431587644 534074430 343553365 427197864 843879046 927312871 875925087 956457383 333563946 823933567 935173680 982903746 943132473 981428531 234266127 860377811 905137586 927778673 993106634 995203258 527544997 759180520 722179875 778632580 909339993 931348360 471910957 868219604 738405734 946564190 301189875 722625421 933762388 986188349 91147197 727341324 66612124 428541476 526652981 654354372 622852309 927866556 949752241 986382846 696564128 857448385 486924003 877893472 772551671 966934881 84332486 183470389 617519876 767474350 948691914 963447804 155071251 498954537 173761202 643804882 285351091 435763204 843174361 973643082 63646106 586072328 253019853 928671227 500987949 953279808 447759541 922105592 332262179 653564669 68513754 99515221 242128049 930650051 524054229 699639085 415983313 574339514 216586018 265278014 116879788 730116127 564390951 689789014 9088268 48825691 799992684 984695595 938514565 989813597 464507207 496467280 280190188 657866992 327894323 712917694 357244699 992349483 806640543 918388333 507741597 995961122 917604260 995935518 523528171 685539615 382662121 903174855 340909544 989840073 662076333 983744081 445667626 748657723 572745100 734781035 877177201 971796447 928603932 955756776 236075821 895619702 296630435 340006336 72870103 546919852 297000688 428435447 876764686 927059092 876149112 880733579 310388535 601411015 559494715 802383981 500369144 928534700 326605430 411271775 520079152 562416741 973913534 977799654 455544409 587514988 824425406 963622265 607590563 609370356 263376087 854330343 902481610 977671518 697579332 984155021 263276873 676784918 713286628 906846685 57750547 952022768 754803169 893778283 117452843 673042970 864233543 890944824 161489841 588721657 903525198 906921863 629264020 704123854 909321844 981968686 91339233 331263693 512544454 781495254 295774202 396170735 285218097 702965615 876439672 918168068 548702493 850680147 796117268 901299804 563972836 711698831 230519649 865278018 381097584 606117796 175887429 883073740 514823949 952576959 953682890 958615434 464675520 925971328 294254826 481854673 598342928 750470762 259406028 812031527 486886324 572318489 441671729 889030496 256592589 725550309 848510215 961299716 818683818 889556810 189837932 409514555 795997946 841213486 677824402 866304653 653238405 754997496 304729689 870960010 770858796 896237373 399592938 525786072 260514562 277581200 406531749 455142779 557799009 566959973 340412127 638200760 649510766 856075138 389425954 723607716 769086228 805842871 608848979 815922232 247835380 708760567 576541057 835332417 97402374 818086585 930717466 957684287 838740648 928794106 362309889 771470882 189253728 425516191 51582328 836928863 56769926 920238812 620232603 811074003 255017581 847184885 819906626 866669398 293290809 605547669 796078887 973711476 568915788 949870730 622724753 669791986 672318387 872872590 360632014 701360972 958094690 963104303 303763223 536554100 563161244 634926510 951065443 970346144 522051436 675999735 684229656 694364273 425235642 741014529 76746081 692676421 709238295 979393130 10435303 515233782 332189973 547178038 877622358 991492672 351816249 517683559 851457430 937709120 248045657 815466823 402309843 867108835 205276086 358861781 769773285 779186987 811198178 850087456 704952193 809846127 56478469 743422157 969479248 987091934 268130859 435045892 531905694 892830237 125377325 656043893 479015769 498604514 802936796 859788334 768757583 874647103 57739437 587885332 504943018 944174796 878195944 941217018 823665073 861658811 392008659 568604040 71998644 721956912 771994425 940953519 831546839 877181679 646034963 932736083 184483017 957100002 169075466 307676202 373459090 995900861 560729242 743210362 3498917 562972778 909860615 990050999 612446864 709902729 515593598 818224382 410959492 734607416 747215203 803995487 725494368 807301706 819650636 929846366 196581185 322894122 459401320 717084296 768022936 897982522 786880557 834753650 346151423 445583963 994708639 995047721 516344191 547976340 500526053 906889711 958512715 964342135 903137333 962515101 519729540 958928898 524375630 896031159 70366140 749927694 477477999 718516415 417916519 936952462 251196682 812726982 670025757 906892523 684685629 975441047 667226200 932713643 771362881 844442481 266615197 627625849 90892757 481547372 300709527 518404377 208816410 894471547 336477031 477382417 374825746 801497482 280518057 482008506 595989801 772979393 197689511 946513066 348511709 569990996 976050736 987274460 915789457 917191104 73566062 298652360 689268753 781091003 864920398 976529518 85764958 842442073 502517968 907103138 871758806 886091750 670578315 952313731 415977193 488537449 2038852 798845423 770620551 953865146 549764927 594380588 28838272 868892482 677856041 830994154 806118807 953539429 521563391 650249178 531878648 849584243 682885539 993466837 606752674 995279892 740583762 790164054 50393503 978045091 707083378 980444826 580255283 878679216 118393632 191121035 213432507 321959999 293727625 868809954 88184995 986858897 409444201 764784292 850496346 888070654 808475165 931123529 821011503 992467757 74188656 195849294 715813986 929864241 276771985 808175024 175393481 448574083 329044908 697421059 568306442 577435628 9949082 61527841 283641408 826362519 133630801 874001233 759206846 860727019 66907055 473593192 989548112 998265479 22140410 596602911 236104484 998188878 559822254 833537812 670431595 968451905 476309322 647509860 748026382 923450246 293475814 776060184 643287835 829522898 443131059 540786899 74940001 278897292 89109363 499014441 797791211 899239416 391909822 627712846 59311712 245534981 992510919 995289916 554169239 992507525 480728397 521189474 396384807 427815783 758741984 773277350 120826837 734349153 885780376 963146797 804581143 912057152 866993315 951242761 128250326 863285828 111071759 857460276 659188686 809172387 555322652 860891670 885501924 912405134 146739622 974573595 49388222 273952090 630927837 843904313 614033776 735049699 641605326 931563537 624228625 632289405 969389149 993317394 867152287 911274963 982551793 995153189 898826496 989183758 391195844 646966020 299550787 652052638 341395053 368047891 940645565 969764741 323583346 925103891 823586775 964014840 718298789 778428119 590768328 980230553 112253696 119582169 861221679 956657796 221600018 287843746 624989106 851600066 78406952 251635141 523794330 676370463 84619098 166748110 644763899 837474717 276931497 597522157 975588181 987293119 885363042 995462885 348702322 985876520 732720735 911089423 565410737 711608230 653757091 872859578 795565864 967559748 171892304 659518303 639922293 878864604 300666490 739914958 528685878 780500709 557925962 793744895 594296033 995076104 884240199 963911187 652093423 706893974 479786292 770459627 302234009 841355970 258404501 525494221 784473349 941510455 936652001 992826667 449385426 595752924 706773675 776350260 889621116 951570524 544232929 671375349 640768616 974727091 584160449 887738678 929327505 960275422 473969853 640686048 194998118 552815298 389615538 703753525 636683920 749293751 916412256 931988250 94759186 442637945 7120575 65506438 318812 953764894 682641286 716562480 37726793 950653597 983203316 994664634 44762822 421017076 747199011 845229047 7984524 812891691 613483308 698843529 940088145 989901567 729566694 845241398 326465267 644203419 318783589 490214564 73201246 264243858 322981338 482833546 33199987 726139755 185322785 762164623 974499176 990930873 141200167 316296438 648405711 939152814 790579895 810571417 429872553 832089010 931065626 995938844 58699946 125909613 136140362 818420836 796538307 925900720 981267107 997544420 683731369 764044168 378618001 945385137 591822967 807350512 992447997 998862505 311870984 876875265 565553575 734138143 60109385 376248450 904114671 916136530 691721777 877262133 424113224 988428984 288039658 806052073 365905969 558229875 635511442 855920907 537367568 769308912 875168834 991129972 634316712 652802408 988961039 992315599 842408002 884573828 414482665 649844992 938857217 968329366 787493753 818687759 386443567 403392828 293030203 884760615 449284462 749885546 204805004 466496895 394840733 596748026 720478212 964574638 209921983 318465329 224697277 741636218 559722257 870238805 655039244 996539335 101469983 211343092 891167967 894966855 391128557 990524505 287637529 621918996 15626131 499700692 209983559 673175127 887970096 959435038 385057806 981029274 65590025 104357649 726472838 781714792 350742280 739169987 71098309 314634197 388556846 605367847 73697626 749730256 87687799 946830454 791214053 900626546 855219717 974732263 591563724 739115088 67680945 491267523 266092772 723542154 51264348 662135003 545589529 845113776 444216625 691664851 860919653 969074920 143365972 253009747 878040874 957859449 479822899 765052020 820893505 977379136 864954863 960664751 145742698 591748897 357786729 712625399 183596620 300060419 467572158 594214838 736684249 793212667 190886805 471374086 877960619 987700293 577663896 741704421 544006390 811147327 14396121 899970064 612769556 719970084 716257323 722126953 578124646 680743138 112956657 338150421 112718081 412739482 306023421 508916057 312114674 435745650 315534358 572029372 638520018 791368325 35408092 344360357 832385341 893204518 566206211 690434290 218383460 873787159 900121062 963550543 284307863 839470853 667164487 725253421 728620270 741425158 700184432 931961931 492857670 664302000 717647353 789716953 696488285 904167889 243225484 787460223 732720548 888769234 309341560 508802836 1289718 789760114 199669314 566107575 721188063 760850796 719587581 959958859 483717701 884191237 298689866 734629016 148301924 244296244 652940179 899229835 120685754 328773969 353417948 826370774 491017773 499551649 165813796 869974069 751746691 804160641 854254712 919634537 346320651 759131892 386549736 792328378 186696574 913676332 695545561 979624658 552773515 941163825 429962912 845614594 438757974 480187165 702838146 840024784 910885567 941212263 694656866 757206615 476033855 598326682 802091469 906554303 738415737 804948775 181237497 501696320 401098861 825866501 496465729 997099286 707383648 932343402 7273309 985333676 369470710 929052541 162890248 997615972 276024038 869096916 412353315 852965152 493452098 866546358 20128403 180328939 576585827 980467652 193317825 288266458 796395608 993659130 343366841 572833555 209227066 881288856 222227292 920937075 866123356 895353344 560692738 900243865 302546963 582451577 211359508 550233645 16870214 256133996 417980586 671940518 669524978 988348554 962387289 997675660 719876235 895058521 958535466 978322169 393907770 409835429 67258255 943268704 301944978 661428038 964833029 978080782 620724833 897902380 66419695 625040535 708482384 981088345 373973671 632446247 551468440 568320270 135153123 719137706 603274621 635049815 234949296 512966102 3272762 754267326 164965935 206239325 502180809 633723857 273917768 587868592 526915039 826775716 985505571 994111670 3405351 151901335 145946192 613921602 310934598 497916968 72401592 98726388 663858693 794072654 263723268 549435257 691498914 698432005 30123634 158113025 913405138 981793923 94204209 318328150 202792591 310183938 983786333 995405509 73416257 880369597 255266029 474844404 248836441 440516226 990417096 993297321 761850804 836294210 159126450 190074903 656196080 804255020 687350876 813155131 977900446 983363073 478442469 850348736 834414108 911459768 518024974 983482441 739391645 860990108 759989633 975255515 845725513 930993689 66184092 361684307 791168649 830872082 360259638 367210537 680993531 810621823 517941912 781374571 772039451 848016401 592048843 756697922 384483458 727302999 727075398 732243924 830072535 989640223 985662296 989297086 716309383 910015648 495429227 783722799 783631184 953494606 680913317 867986792 297224982 327275016 947508893 966162924 588495272 924979453 271997406 771368342 344460631 383321447 352527737 846757819 481669263 981072237 715084795 891769250 937487656 946466868 925167455 956743051 44665549 57494832 342748908 406998437 403025516 831102630 111218409 961396418 242137430 531801202 555917158 981391061 164865240 589703710 895179980 955719358 410395654 469107511 986051097 996743123 890467753 915796613 712947951 719050760 796583817 958075344 15359915 138340724 132043410 956461447 819184446 927870294 795239519 941614627 549492852 646458190 65372903 339706139 43325116 207004229 779554726 791488464 799199557 925741486 493178920 848540029 872910325 931870488 970663142 977533150 837809774 937193176 973455371 977340642 987152197 998194958 113079172 663926002 441475722 796815426 794769080 865504858 145066304 751120015 759260048 856380992 568114956 965990249 284684096 996081107 257330012 846076190 163683239 236186542 441574488 816043797 19577654 810859943 394376733 699099052 421580148 426365512 703428141 739056192 199015272 918007250 433760385 915212689 28137264 482507165 632758588 657817791 615592125 724287962 729034954 872999980 952705907 965594302 729571976 944233287 969723461 976774630 749350707 813090143 657102279 987632558 153866927 637477018 105584106 416870497 162687038 312674231 86440333 380846977 947526880 980360716 194480407 555163927 533776889 739592871 16306592 360393651 465339707 854597483 493014982 514124933 373065078 736892952 904146892 979069984 877093198 972207936 108488514 314024005 52045920 437845090 6178891 342414001 584659663 730627439 109512310 571497475 795551113 985932257 690618930 792629618 219430230 456078180 624058065 985663955 976495890 991235704 414956275 679463925 243635543 306128280 73664669 736626524 221688546 791558749 644218232 837004357 519144155 638375198 13268312 554764352 362762677 766926978 462615064 483962457 539500528 797081672 97171749 855047659 664592866 668855482 725156314 866523688 332380607 759759538 135244167 311334515 858446185 882841757 209754958 858097617 722207603 751527477 147322382 384884389 237938785 316058921 657624597 801889875 114543870 678425406 1294737 428715158 32084993 307627223 71387671 385712195 237686507 331571961 637363310 776009919 125931035 486889554 957076448 969249582 513454614 625494847 181517094 699497516 600262507 655732665 220568979 395927296 598531458 957938975 520506963 682812368 583761182 808545285 204862660 716456524 32760398 502288251 822406716 852202821 485751942 990588475 974554431 997431953 814935899 819984047 775909043 908863225 573473950 632928505 852712581 855527124 419278075 853796697 35498225 171549181 819433588 993893531 924956444 939255051 639642534 859451628 63225052 137901532 556779754 831787014 422900027 542177388 968456179 982289625 456474880 482608145 192745976 498358507 690462553 770549571 232837638 251661849 887193084 897663539 580700881 641008194 231851696 915882466 420425282 456625957 17556197 914369808 93780536 811498613 162133260 432071128 451839210 521958998 491455045 662334133 487133 269608703 285130030 671424368 406482998 599377817 223773052 614684111 544988552 862281128 834175654 903442591 443422403 609572466 591984642 726291782 754781031 955481468 155941872 356570112 530266441 586084378 700462472 872295520 978374024 993698322 324532975 406430354 125564275 840009649 419256935 716363382 439715240 902796296 452073491 758012501 481855373 936324881 265538980 944611363 159192608 437029775 250299596 967174528 460196148 980693668 755157157 984088023 644675016 730201577 286588785 460922732 73631606 83350445 939519668 996878646 466116651 961666500 874788445 923378047 927155056 981508797 193807284 257976122 455867543 652332208 992343139 993498275 746335761 993788713 202855172 813338831 735075137 736466346 898951317 936776259 114829485 796601687 607444308 748411948 884199427 887334671 396658659 996279075 977088310 992661862 240084801 660427023 774649332 869284807 401589892 539191844 201638443 332696116 430220729 818897629 789582537 807177346 959031359 995271180 5400476 115869942 873236766 949369647 896449714 945258333 289040429 931374034 411631441 550130546 462003018 571146040 815534966 868706356 802990155 814844771 969643827 974093700 96209800 108688365 539986879 682721863 324633941 443700221 809714078 886635444 382182024 880100006 665497220 914363731 33575317 383685667 436161596 941077718 541967524 960639713 605477394 983541826 216073455 889976723 231634667 839620636 128405184 419520275 724600891 987955977 233155924 713951654 199672925 711862176 843413402 881062678 238780176 660458866 616711241 814900212 995010112 996955466 551602470 803921306 916467886 940253847 228895068 329234776 656506113 837358927 773168383 999372865 342254832 751709553 456953524 562432469 451453364 503477830 332225181 540504550 361785051 887663302 250393786 661670870 669579801 950752430 468574621 931257439 32815141 222427759 554167418 600172365 57716322 980052414 709612346 874579285 712212833 935170513 7859034 878639488 665524481 686006462 257496774 607587283 569186229 657121770 363989827 470543042 939644375 959047485 422202883 807549364 840272665 955508980 94554787 217133216 273215721 655355931 775943418 864712380 311962977 665191227 401435661 676212739 148870721 251980725 578995918 856410915 730710717 830899040 103492482 154982264 234531654 941775671 81067986 223591918 937365550 945222119 563944695 688952170 353020417 993383396 734404116 915405458 558338735 886529444 817443140 945908750 206437296 734266554 299170142 579071631 419142602 744394337 184666479 740979437 359319097 515816045 615725415 807033695 33481029 187324044 865916 129451550 4653756 88774928 173726506 299124258 432300630 714709858 500150474 817090021 607190804 983633725 840839023 939860196 65281837 409693949 590505502 865263754 407825196 439126295 601222556 646935388 721489966 891325393 757163215 852643448 357417369 708916944 289520495 633302889 214361972 896345905 951382378 995974142 702719779 928735717 808431169 864754040 92728513 695504596 761388604 840841753 110252315 785827777 381956963 795657317 118518051 169346894 708243584 819679168 200258179 705642820 137813523 508036824 322174193 397767995 970101078 996222443 786894287 905059087 374056972 974280840 421856422 510405756 136264441 928694640 425259696 447068902 728851189 855930022 62897020 511831212 834214219 888617803 269905569 578441680 85565152 855629942 602522691 908438801 739099969 859638597 362433424 421295428 217265663 358097462 743171219 945055283 997726360 998411660 664726664 980107162 976894570 983253383 264799798 839696017 94898477 647759899 270124761 884335486 5321287 713335107 902330319 971048288 342848861 672508912 906832483 948632239 537449364 976901133 572682724 960974446 803649226 836896185 200694174 349532842 211440059 408153933 505806773 820868680 817452906 855516795 418681873 612115668 237595224 510853849 114595209 500388233 982110821 984299524 817328403 894609618 854616811 999246108 170120575 193165146 323920885 916934859 527232050 954693401 827938564 858388723 30921543 433413126 330112763 678709679 88800459 358163139 415823278 535353846 824195518 996073190 69807124 564705766 858691521 922177188 84418923 650696535 204751993 209435784 499816648 720051524 351700165 850708657 934975273 988237857 283448523 304261411 320276923 991827469 462669538 632170016 221310579 989371720 433203763 912258947 36028324 768981406 484020366 777977309 761651095 849115488 632266424 740075598 756802687 872930951 892243591 960230559 733339738 776937458 119409491 202688869 12978952 656141646 84108277 796508963 339013125 921137833 348230336 551229047 490018443 783557523 162617223 168736088 723248334 906074307 256931532 978658649 868016527 974672355 220541610 265144335 691315103 813917667 795111114 840868863 24070576 178800724 851317374 877074201 409028357 649651168 208095406 225335183 544763425 855152801 555541570 895733688 980657792 992064984 658293425 714534171 789347489 808693995 357661570 798702762 258928956 318332897 117746261 424908811 863637125 868190142 708364784 795251655 953876354 973307166 680213426 701366399 881045596 994271221 760184255 912775429 454402403 905871201 440361387 817543196 420228017 564074256 665430513 945772353 231999131 487786286 679111462 926605456 240956651 255231945 974010849 998639867 15634639 292720052 153899912 295426301 107668773 648974106 658172551 684026082 326404606 618531225 815313871 865525717 983656652 991506472 305135322 536738503 29738119 968734484 717279151 990798369 808579699 856117469 442953180 788990395 262973689 401367874 338064170 877162025 185073048 768878509 928044917 988788623 789316776 935129580 930375784 995325462 141936147 427317966 427003541 792402791 931622351 939867175 813700987 909454975 731774083 747684154 922537591 935961091 629326141 924449921 358899098 773650560 38394318 368465746 965698235 996561147 378301618 430868930 897753063 911748474 637962167 656902345 477384137 484502789 490617885 531970122 733461906 764300190 604096945 984637058 706954015 995872528 536818308 681650865 600314155 741878318 389116630 618200600 348416128 757606706 510422343 825721241 256332045 807990681 449489121 868441784 546777397 668190383 911242334 989378527 405295023 830792046 920572886 986192200 144505143 642094699 644327994 792550461 649254990 889283531 549419744 638490085 391716635 959572483 28481054 882621004 487769910 755581298 28948206 317632050 924167362 982501412 51974362 648177457 754619425 905699059 53870540 541389287 663695550 677022671 55112090 920424646 961321041 983425390 321961802 427727205 322296761 328684094 643986666 791875742 81768826 975595843 152098475 721793984 80333605 243771175 185630731 352975022 249693827 730348172 640280539 665688018 937597755 954507618 987244160 996225001 784433535 872871062 106208771 278417364 432016835 582234422 500121887 951249710 169204898 891312385 820036833 886411169 352116401 984556069 203405346 393424618 887839982 971114783 325090387 333872868 545347203 686920078 342230009 499151740 926746585 935997843 274142007 820814143 759834382 766612090 690978178 779938990 26465564 984936485 951633142 953642419 678338576 696274546 399813297 679105874 686110579 772369574 174042344 593041534 534659746 774929212 89191526 211926520 950641228 987423642 627051725 733661663 265837802 746468359 526140230 761596358 393353933 639833772 548296317 896799048 428891949 653677081 416966622 974777000 682824763 915813611 307136767 589958755 227137990 835459329 801283069 926089315 568663270 750152434 920843904 938258120 504267130 547036729 308153329 675474562 708878035 971946113 216554360 530682981 402780133 863851498 361318648 376684533 453319330 542878124 119361157 559321845 812469560 957213359 149314520 474578114 781270291 822073336 708523004 876937596 6592445 131117626 383997406 581994088 693034125 864155626 346266930 523244513 641711151 953249235 54156015 272857608 351811552 949676545 850988247 874734584 352219905 983857854 833753679 897386318 820372066 853263810 482570614 713346294 953348525 974865810 545176515 652162221 19747098 748997460 686229375 989627724 984536373 994081607 857691624 881664224 446012023 988913810 587047083 650952022 340165167 888031029 653758915 703419432 582668778 632551890 162008977 434106248 806476254 973541955 345057605 793084266 604096609 616591171 315101020 839660979 41454470 235589364 984281290 985494423 297823771 863802400 566717553 611303412 258185060 756794176 439110636 898141490 687004608 980967230 643717572 972892240 767852708 993163169 475867689 517959089 444989487 520135611 819504682 828731348 802311337 906787173 950587146 952496112 250952861 768811316 602092168 776152302 466982901 862302657 557472154 946484538 755203934 889776725 439897824 873394804 603904833 854983980 638735999 710574553 850114365 922206307 728939239 897523629 609654096 697046415 167557236 934779385 585202316 998632578 51066095 293150682 703007588 720046822 485223511 859766995 304391232 642026502 35374630 835147115 585212462 722531221 280822855 998190351 642680745 859569663 759740398 794227410 982630232 990808053 176071400 326849460 711054590 943990762 967360873 985099240 592869714 924988640 726431675 749837225 445502149 750137157 417848403 822420478 46637243 251582125 383871381 640999859 853896416 871009325 108256075 112372706 30270834 790107493 405268734 916570399 307388602 368841674 811095095 885072034 240514076 295555532 819187429 831486419 386947613 692281927 535297770 778203773 82553141 706935430 942977513 972675934 980644435 988727868 684021934 855602454 200431363 437124390 674481891 929864711 64836801 783435641 246221996 621127818 670896330 888826043 829928033 864602810 276379718 569887241 876888776 966413260 548709672 788765668 133372490 929373489 432237554 782562414 670773879 978413175 426385715 644276137 965711163 979549621 830466524 945385381 316209535 389324509 311347038 921069850 98769185 650604942 547895262 761830174 449990710 723774648 359019219 690377237 66830936 981715709 602978063 737858611 878134512 890040081 403932674 662887417 93098366 96860688 255707929 313743909 527018867 724529747 194908247 478831131 905830187 974454980 292067153 698494657 114954065 358999079 389396042 422951082 762211260 994464319 871574433 932006280 463190321 843304552 403329089 722122587 868193395 868812108 371167099 548570016 900568639 955203248 636123525 683666640 938731216 987747443 658976776 965873602 364889023 395276479 897585291 998821107 221494663 859017891 374377237 828857830 600999239 696202374 970542807 974978136 778454342 809698960 399183474 818323533 544036260 571662792 18845977 277119139 563287733 831623827 72998125 314825600 706912285 821020437 558674193 779001434 587404832 758408063 836207492 979202860 583763257 600573615 57824570 894776247 345284801 593847040 149757514 647221603 111381242 524841193 131243823 309581752 278859174 969004693 174055736 847579287 418667676 685657515 161169029 212340051 909920905 932517240 49474415 382975257 632222850 664758283 458402526 708561696 86888872 496036950 347057329 593824065 285188735 387565390 275857132 579185840 343601196 733082808 182340207 685521716 669649144 880923075 707440500 913350753 59917573 598815821 726876593 762014703 727066576 760085621 114280459 398481742 479768928 560335585 528916968 981436868 856847290 916022624 585486696 638113490 911298408 964602297 645101216 698698757 212537774 454020044 19996857 574638677 343365990 695794230 1292761 427999815 634517084 753431238 232734474 319638690 565593823 968090753 144437816 811350001 237845405 347332453 99220693 812801172 662681445 869211399 46707256 912280734 289332466 838888038 382075663 776320121 814534600 820548685 87937429 328945046 979153489 995321203 985443672 991623601 56415066 86183029 649782512 980747088 531230233 545414124 668827602 949111961 733710646 792924526 39465115 582418144 59660486 635031313 926465019 956716456 344885158 930761858 274565019 656425153 845446413 877714624 315097488 569131801 393933748 461263398 723046266 727207044 699219759 747507474 928161342 941328963 784497628 967537283 931765722 933243399 256157247 637587814 680946792 853798778 170476678 637987331 807404367 846527718 135018480 252659202 537921451 959197570 794959991 797403799 781302719 957671848 696370147 722417112 141264931 572256638 695434592 743508516 270578581 512474095 413748354 448727851 834675259 874201502 343980343 823774799 867769406 948229019 914510660 968353684 865143071 943520030 326095277 327498954 501434986 784023604 371373748 706313352 915430812 982346157 739563152 859393893 34934517 856631804 94919019 470265713 79290493 644507929 563284782 686632505 911642436 964331719 260942798 372220250 980714814 991690919 155595888 844882734 134168660 687124851 538651934 631902219 841294257 877033357 329343131 453845573 602455302 835120204 757815872 998527899 180362504 699280968 62156552 663670065 495195735 727307582 63391658 794788667 906285314 961340433 899854357 975804942 422079329 945117352 769932141 954374743 464866812 889966630 477497 383197400 403729800 579932683 946615718 963078076 178908881 573505838 932394292 936689457 667797421 965890792 908453675 922522903 775415364 816246893 365619743 424539824 918136348 922155358 477019380 776139493 642702212 664906433 251833701 648050586 588483746 761233337 273815496 611526047 147724811 405629342 77601491 843180786 975051119 982219987 803567045 930559413 207119728 987382944 738638451 974367780 565894207 817653992 873914145 959820302 989504100 997863721 387594382 502186002 586077981 650231092 526711919 622333984 707319796 783055618 17040749 441843370 317081759 499014182 61603703 67188598 333587484 897577371 450594531 811132531 831702818 970210580 113594395 979974911 888827571 924168814 564515577 689176701 846813092 961920022 962955109 975868078 249288071 953291056 530944375 610408540 159568511 190994536 384531791 547491674 855274655 887665696 419089950 471275439 427719047 555295572 505860278 651687941 302886576 320433700 206096507 406829005 889014402 904450448 164638365 356771335 454462721 961997192 327260632 488493566 788516347 988965929 108666137 506933285 711898345 842047073 804454946 824565871 623197744 815051281 194473525 221807537 875881349 883817560 737784660 875414316 893221146 978614356 649683840 959621833 136203785 318979444 387117749 719095763 876466151 990772831 209614182 257084876 230293009 867029535 104479499 885586241 717161258 826682638 608547850 629827879 776489335 839247046 860523812 947911254 951630100 987728499 600404203 614518678 564105654 710601579 735163467 929016134 139815242 724883700 616265821 932618539 303322069 363840175 826864147 874803167 326757484 580980876 277789587 455204106 172287204 695772891 81708228 153816340 550969501 842340092 553196708 588992308 415405084 731292640 399803970 633297074 693983105 834419080 881470606 964351140 169902793 426622485 779224609 977901024 650518749 936350895 589267376 795530048 441758244 809114207 857431449 881630540 806412002 932317755 779584778 810903723 331939677 660473323 351111503 413239668 298311900 952787057 355727534 840478204 40918670 641461499 244819425 932045332 719603785 756384364 292521076 619757205 895388428 965315823 843619564 902962567 620395531 930544005 342179083 688984082 904508924 983581208 856162104 943796796 280760145 683696768 557187399 806380322 361028347 885314627 518847701 836997241 140491241 569764395 252140992 492502965 937554160 991734680 901671602 915665671 924828516 964380804 715940949 894307248 59500371 361169662 749065919 987560260 459115164 925691207 138124760 887784084 512344569 543194513 588758187 904873849 338883420 852413791 916678919 939885695 414144836 656062385 726365821 745934410 884375026 970841571 656482516 788777045 620484195 816064747 85829591 774560369 236419280 829252140 315969723 875574002 471667302 748453789 685776104 696912834 901401827 941414976 928712445 952028051 291849187 729949486 290352171 307581248 677775181 826136549 896184284 983830417 715999055 780329873 578009677 787391216 418700893 490293004 97821665 362329937 724291161 942621497 176844248 259753091 436761390 620890050 252068179 737013777 603916560 803587561 545676213 757592815 132275748 541200320 834972852 882658178 610857493 930859560 284454969 677741237 434723489 800123876 988481327 989090526 913669019 990136286 515653667 898659181 421576337 569849732 677433061 924185167 365191484 613760962 957554536 958363754 354683317 564947604 497639711 504955172 847466857 932572927 655363583 711831931 169210772 602534609 91500489 221460969 776529519 868745761 271510754 560172643 687835596 712446544 519535337 974640204 250107426 398400201 378979701 422973958 894863165 991376382 288529052 487707432 715751292 846362781 187797582 533674433 830339465 926452283 378535095 795290947 464244610 511036019 752236173 984303222 167721149 788747897 525426803 584887251 382915265 884689201 417433096 560726156 384761406 787095900 289606586 783741120 964853843 993773626 909503883 975120774 951481203 978517893 685336535 867064374 713811647 746342057 172395050 278307779 659394757 917909413 435092137 965464792 473238917 610230102 267473530 384554389 283072561 461412628 742282615 831471459 695769049 844452975 53321573 446593129 700677547 998227235 551112494 668167728 916352950 990397620 30223976 95569529 762781735 885543021 303512867 462287512 508504282 759837727 377020356 891950246 748194266 963340328 680591064 750141385 387553653 415228267 397578000 482926611 377116607 660220665 950087227 972094854 14770852 932688239 253946439 732980700 835744347 932243518 601030065 972283032 184433208 389900652 241602208 441042059 966226673 984870648 929562419 979467878 890018451 942133058 406960159 728463414 75077798 618966585 70524685 701411751 208589096 969319481 755485179 931161354 779603611 812497958 446447943 813273024 995341690 997034620 996336222 996747775 10933544 546468761 950195103 998628746 468858346 604459717 592283772 629613841 286025949 921277875 939440395 942771679 821458364 990409279 299935430 370774320 314339731 824411282 130138526 821331178 541130150 679484898 111216514 935243375 799399928 941940562 539951954 751067429 322958020 501904347 171083070 478664327 839972837 854075949 50081177 492213323 108014325 201624526 610335633 852747968 273216376 605710772 747677500 885662053 26451827 371996294 587299563 866797403 79226120 929992093 257634130 726859709 393965950 854485279 535014582 758440219 439374889 751436272 178659727 650249431 368022354 424775493 19859990 53046081 476910059 789577320 816756288 941773096 742987854 869921330 952882793 961352115 175566378 998464720 902421064 910863928 812839526 815145141 484412363 966348963 73937247 229023762 423783706 996829980 393757141 400563190 685070643 711118447 985683159 999218325 91955358 362342490 695246535 759378077 719818178 937292840 222805001 362472016 392601445 567315509 47695562 177976113 753872548 886369846 295861543 833718926 927408492 990160594 938275468 962382963 77896907 190482846 87186246 506794055 851136189 942688429 60585870 585314265 905793473 936776581 932723789 963750537 711383160 745948296 223141562 602220951 997461511 997734880 103077668 979704706 541580383 646699235 442400385 491819913 741659256 983480413 885506470 901302697 189986576 612939895 866781204 869463233 781476316 987162374 817411358 824827985 911369482 943501205 678222121 755474308 711828594 763364713 239393629 950340174 141353152 597115681 173202949 833621718 276947475 566701041 257648995 958012896 480932409 766578505 250228540 739090710 685163533 954148404 991606383 996973987 912491737 958100601 277057041 369812673 511309860 864118127 368069902 691770955 314569470 799929417 326250533 556090175 287536812 654245563 86110165 887504798 749139387 790070760 614181820 964991531 312193352 513660841 386327580 450513135 815885263 939415575 623344164 635262125 761615395 800358623 393544833 720067851 994756729 996027914 521529342 674955638 723106217 940895696 22739687 723817366 438545555 548172814 469012004 850097966 782324822 800292939 787801537 859503377 155722698 742882632 7318808 951437537 418559225 805222864 740874508 804005683 562162918 684273807 639747589 667775622 540715358 851389177 706578389 754330786 795325454 981909798 533975266 697759164 157442119 648727532 865644622 948380489 326209553 730909875 20193363 520234164 448625542 451357597 442660762 680868230 955279428 985108941 547622091 655529984 944413431 944901564 223062173 712936247 213139067 624433801 106990918 602265677 833083148 866388605 107212620 265298763 184637106 799652613 693429623 787135020 651724646 799210541 856222932 899035280 574392585 855348122 906370576 969858855 389504444 665153786 523548820 714849021 442325699 767142927 473153961 657349003 88080805 91651785 81456662 214793028 227654388 756030280 828158391 870255734 37972562 276413408 867906364 907998662 900771733 941551046 387067567 501280510 603489895 615601800 59246792 563822920 974120124 980862461 831867968 851993627 456552610 644174066 844836851 930933730 938051116 981034933 784681304 799337186 467886130 500516963 332237826 647811462 790030065 849771169 625920986 763911241 102984080 993980624 693378495 892509242 128351134 893005900 591909480 715317091 87780984 405884758 592947731 936149546 572228459 843292675 333523716 940598702 852528465 992975596 463275740 810213560 408867398 744734995 566206514 952014093 752961463 983374007 891882717 917664441 412223180 567244152 807029498 929441032 8912940 73822577 95234409 792243385 688266720 885838477 207981129 249098703 388108615 653487856 933170994 995378153 128353160 926998271 220850720 769999289 918641369 927021801 640578191 933158885 86048814 722505982 929312930 970002835 988959653 990623016 703702996 931688705 65832951 580695082 668445600 682938731 808597684 925545459 330220468 928103953 94480846 705353713 526183113 710593287 284829722 921414841 798158877 973827231 158809615 728990682 256497056 710148188 855896932 942147488 737591671 852967106 436622494 691044787 837611772 908815091 438283516 746706128 323185554 563823105 190246702 554008529 608260845 877203788 670039328 721733299 819136470 872666137 565353771 833735041 854974018 861329921 421570244 657087507 942057205 974574216 820298250 928528032 227567020 776296591 122873240 371410199 201695255 334882869 662925445 918320281 334538729 927727898 462939950 535003353 345116841 370979225 585210932 808955125 76290523 984619229 629995801 718283206 457123545 724198151 115148970 876707648 561848856 793261349 455058480 862531317 885105616 895969908 876379279 922249226 512390156 804408835 564654713 934342881 585903865 649933726 678535343 909151378 943522609 980836802 462560553 596969257 344698593 750631076 59412607 598664076 632475865 914696109 578821881 866326499 240630504 282814214 180841140 707036468 930862733 961070006 546167787 719381588 122241013 962747938 174211803 771630696 656129458 901669448 826921330 981948577 278469694 353600908 957192860 977587839 94033107 620950494 57427346 708292088 517751494 793939424 758408270 976168341 395559805 892212215 304470583 559654060 892491181 931006053 64651751 903102754 66840736 499613084 743501370 811626284 550612454 773337805 781468089 938776812 231100691 992796628 979120434 983031390 103087049 843293482 518670351 786117377 55095104 811550913 929618404 968619448 412593606 708422552 297533183 701330968 647047851 786717820 831946424 939013071 292115035 817505990 337930563 580480864 673852720 973085400 388368405 877442733 741025877 811279246 323596204 698721250 990340251 992369062 826025729 849638363 498877243 616955618 324292848 798502592 278573105 671373128 789493889 841205051 462279055 642147921 894658822 919151843 655761463 811898469 82169797 287106254 611573549 784369468 395180658 771655756 782322052 890836414 861811896 950999660 277321915 562059053 972569518 977378177 185427055 712168024 371097456 523757917 849226997 976486738 819057760 967547442 430072872 657148042 773482216 963524424 433256754 540406417 509813974 721243311 379580301 708817822 734307528 997342134 246072810 362766086 760593735 778565683 620198815 652587105 238235206 708375031 890757825 961609383 880556089 952728035 736444108 954279677 354448650 663858931 840343380 946637475 918243824 930322327 330338269 540822262 586814717 815738533 70158723 987441313 115731181 578066650 362620626 926153011 707085578 786109361 661326143 780667417 757107641 759214016 552429525 804490148 414557199 883075322 972275876 987457107 237385221 468854694 372831763 585047778 507058632 527439024 145645317 549220628 133106 634096891 647057267 865075842 628100067 697099183 623979283 926911754 217366858 880225801 758258422 801829357 276113495 725991237 625892570 780505442 603200194 703646995 102544698 642177303 706926518 810590590 994688274 998441554 358051245 688840084 863473488 953430753 338374354 745646649 128139407 343522054 252807986 327814333 633917333 746011576 746468467 940196795 879101263 947756773 990331758 993732313 224463657 478922589 640034536 655228401 477280773 828981522 590152312 784547369 211688600 869232767 786884414 918956614 815884871 965906354 385092104 425754073 190133785 945889479 476989931 984158101 500262793 890269781 289249498 400772717 287484801 710091611 842016821 929481410 836132454 876410752 848947834 941317364 978290559 986378881 52456591 60407025 950802852 982170156 362657145 905449930 363433441 374480431 657980158 965456572 946548128 984275263 847372446 977469669 61680907 190303528 195334281 960918482 247509745 261542047 201088367 514404224 936513630 950206056 518242996 749558398 517090432 930109525 390627000 879299593 979374462 981979193 315803772 630432125 26169886 848591057 257005729 868502508 333670976 972247094 700931433 883271322 482719897 733816808 416661289 521196880 545799107 672715396 957087241 961733286 370571329 381468299 403819766 711091724 728564227 728680717 248502990 787918557 248214627 278117306 592714315 717678913 23874181 734773995 390341859 846589608 158009147 304927308 729764701 981436701 56218344 272238503 915951740 931897423 398418943 887658495 909644714 928516851 866125354 956101706 689024685 988175352 731475194 886012270 926063150 980001792 85269225 578122299 105974754 268355435 768699347 854113664 513445615 711088635 932400735 978931732 276699932 932939749 123329093 714670822 201327068 608116800 705080607 773330838 290188829 858885155 366546488 424664638 453941400 692314133 994179071 995738125 923781327 999144363 229982454 419750391 129161309 922444880 972641492 986245659 61541362 964778149 664792433 837398231 953819288 998352265 772505240 849695369 459388346 639115424 607249218 710507147 393397044 464814498 79017553 947495952 975709050 988803682 150826215 320701889 134408732 271750757 601277935 719460365 273278005 765372068 758511950 774103626 2025739 705657640 548709445 584160250 408969147 695004234 514504466 929902889 31503133 77248822 756170971 793117799 70301097 439843071 291640781 564587190 681169956 698595837 544073884 810287037 65125938 678635899 987509636 994473176 801512911 828977292 254250964 396634495 355675799 713734350 541417031 602062567 898003592 990736961 329565297 583717511 386385585 919290044 19837977 667892232 4129626 240372017 616419554 779691370 907283645 936640767 262162818 929501745 432093328 673513202 855067374 947812117 983609746 995038660 392290874 392972631 661867326 688184579 573159642 892340482 650253007 832213247 509898351 578059553 692332728 727540331 412520532 910737452 905071535 957297662 772286953 908710950 642872730 913974314 212026518 279877671 652308609 895136917 478469309 969622355 161041862 220710347 782931298 906913048 110761804 951522836 916683054 920845898 503820536 790477006 442119632 666483728 156327906 835206196 574241622 866662173 710990212 771628928 674021487 866588884 342478982 876323774 832966568 960436777 987172627 996269603 811572436 966170953 276070476 962963377 132929297 539496687 636546592 681682547 763222252 805061370 538836121 819596187 872770292 974318561 206469301 632009499 497541467 929768674 489965963 992681356 267674195 682490104 853145520 948989997 785263618 942565126 817688087 929223556 433188213 487661054 753074382 847783995 202991810 472985849 70721881 555322721 162514748 190468642 261517986 366238244 462244256 975828239 194893937 234309933 376155450 838448452 827832622 997016182 78255112 546441539 539431589 791764576 424892567 652021962 782005407 833247467 738852946 963838036 299489648 631723713 296230656 379989070 496703349 921996669 840438499 973492475 606647730 653634833 155044794 478978290 198631728 445512709 832966310 896732471 997318016 998518692 328307587 372749430 256736266 676586130 8752233 264460871 126376769 245793393 444554167 805803477 263340805 564256931 892973074 990910232 152107854 721525958 970826626 996208404 473143212 583316503 492113318 922671717 303788240 746796131 973800216 997073540 779104862 821878904 304361913 530952031 44601622 194658443 326416982 338833244 539258082 925411182 372464916 981170585 720044941 732294192 165109107 340281716 353513583 863989915 297664790 668678363 402020267 500686481 174127856 359606907 822026191 992902610 941197726 950598612 324500292 497445617 39304115 533135338 148887390 461812175 841294284 878305175 910757474 921750257 782218749 809307332 447125826 646719708 745167813 855540550 144053023 372480606 214451521 918475376 779820291 912336520 850205333 963977123 154307257 647487975 702307261 830432372 898206856 977765646 510719257 674217801 152590489 550366892 584826166 657378267 893465324 956213168 856325362 897271268 733867026 798945968 137049905 872720970 333372980 383667386 591547510 706703415 324842963 585582912 546084720 919660547 700344769 987352085 14108608 220518047 268767816 714991355 321584614 575026252 875944783 894943172 802720248 803830225 63124984 163012522 276889678 322771887 206528015 871575260 381221442 728316418 774845483 961793107 382130353 852173170 800901202 988225891 605069003 823830473 420458676 482376129 877419540 981529134 833321779 966999379 345456113 872362432 846297810 871841569 240558703 736875775 245824088 674755905 997490047 998626163 46158297 915480627 360226044 977186335 399507057 852317653 381434934 712458442 306207172 970382337 91148651 838952084 784574261 865921801 12244697 147245143 483155617 516030019 370527324 576903207 338895205 796137421 224210594 824051790 898197630 934407887 910968617 951353812 685969411 929404675 766410039 972905229 542110964 564484251 187382245 691384973 675570213 798482721 982953556 988069496 177089757 583156962 727547527 939149313 176219956 178909144 239225708 362264460 787600336 856737925 566386483 912272165 985141426 992210442 731369477 982710170 710615965 727378858 543425023 552610445 362581029 815182396 796400190 936621447 148507416 208828721 532481516 869370077 13369009 946013838 829651059 921166663 54001780 503975101 951344588 999006631 562194337 980613567 807033460 922998600 633079595 701322970 975051195 983001664 930251662 938660024 276943082 761303695 321684061 709179816 955290550 965438606 322244528 419700299 564797842 792429112 673307932 934973930 619694736 824754829 283423151 315944427 914710141 944715804 17037345 902936751 354324753 867973840 398313717 709118628 587178373 621786748 448907073 697369366 569623769 794276374 673384765 746175767 711373479 848877031 307145250 628642862 883160390 896971366 239838161 998671182 295914489 303368146 666369861 973085250 743284851 942659641 911411795 919219790 708579441 869348685 74208285 244965228 293066212 824122165 447662069 520484864 767970711 911574833 620905042 972652279 406351284 662548672 691259936 931802844 301153621 341354493 96161798 581480057 652472568 810518199 472463523 811430679 2549650 12357562 311300687 814743783 266765944 837287186 259895923 914066441 293900517 752554068 160014230 691064894 929599219 992388744 228806433 823279802 618969790 930123558 480139130 506511766 98554897 641945380 653523957 975241198 867696829 941271916 998477199 999026192 941008461 988351303 124126943 874179852 655543141 721373338 859692096 952846586 295780846 519871053 742559705 917635662 413036369 562016200 708770442 917830651 644491059 817027517 127705654 684433849 552188604 780743358 308812419 789664554 865427750 983835794 252906071 582197888 899121452 938806691 692159113 915732301 157306077 459412832 832281966 884389825 56310834 499051313 840842057 998576556 554020006 853662308 255175311 339888438 123903848 862034808 796808134 892977421 286138829 428426127 737013325 763533402 143431270 714825070 872018111 894917862 992300915 999384063 589487718 839874941 941383939 969327266 313517414 637165734 145374878 196136290 21025564 798007653 694266911 740651769 61672325 488618453 903834746 951475816 775210846 850656697 829205838 948032978 472988593 753425375 336993272 918141474 990890547 991050180 887095933 993841460 124342007 565470940 401496607 621455453 687635005 983769419 72422830 844245239 135520667 842089633 293499315 691956031 197611258 435499428 567621272 819821246 866898015 882628743 756768672 798799278 556933687 786183627 86511063 885313014 114823164 488977624 120329913 436242200 639402820 750133034 469941182 676177337 745345782 863438852 455577048 839433474 378813137 530359110 170885358 849081371 80199648 430102117 888346038 894146255 812851151 900519621 134521571 703598076 757202173 957004028 819231365 907373754 920218459 959722927 770117543 953367793 758908066 898605910 966316997 976888732 298033938 919891201 591152247 971818549 351587665 534101579 13403972 156578221 194681143 455056358 666714078 900202513 956368700 961179640 388211308 769167497 986887871 991982160 376035976 467409160 125301140 347850788 509961809 856130098 408486487 456523715 189751096 253769558 519419450 937679887 968588710 973646467 735336241 952369677 722380384 783026196 782247815 987748862 998560602 999141984 384308691 600417203 209416648 912366522 634632969 881062963 770378257 929796897 343029754 888567305 37972497 663806803 217664601 441487313 285855836 726864398 953657734 998207959 383602312 946425542 885059049 913627299 791386040 891346419 245034682 878281854 301256359 809110311 199153841 885786541 309832881 709976371 313180739 668536754 13696895 46880690 800748648 996991237 477574069 828468380 13824845 57076855 910682733 925130992 796765289 825246663 10290728 558134235 348754465 587197402 957498123 998937821 685386503 967550238 704510065 934797793 858849509 896143348 614935428 849124831 782821873 798938993 430227310 871312748 410221639 965739936 839668652 878074789 675302592 980843444 240032405 271312973 513891834 944899331 661123355 840636960 181448700 360990310 790456954 908753082 804250149 896441772 241703829 485835499 281514899 786222662 925395995 956047276 811951315 848691089 784898395 933344771 660236244 946364777 314559713 532214468 666884401 745639106 592959318 743083920 265912831 485636542 405193499 523183508 335160038 338135772 78567943 719695471 455615807 928322303 407907127 549797882 581004782 620424830 861001597 884634944 897337330 976555384 944423267 967878173 982068188 990846949 982737486 996643500 83105458 506577896 654571413 958362320 460278985 986703047 199991416 747773372 957237926 994317954 474241951 711714993 3225946 561226659 925547263 963065729 647992404 903936306 863990143 931011575 207434783 689245044 105682031 563008164 382931092 474903213 234402754 730319403 565040646 959473978 192790385 592271969 690486961 920155082 955263904 976321127 207547521 629709131 396826756 516500724 872660849 922412731 454130130 824935960 69326031 547856062 907543707 908114785 482444170 853882976 81525046 836415642 17726459 46507413 554912543 673401649 632181231 964472144 351665343 498725134 995789837 999155380 334938191 653409087 565910349 741645635 461378879 766100991 391996363 449585835 794435366 899937658 67713678 121859985 232239344 810929685 212490156 236650591 690303942 789394269 476009946 780745296 961648664 981194587 914878480 960379151 881261061 887614210 130980383 958016143 502743168 944788565 987424100 989033726 251858458 855665578 231911991 855332501 340662743 991376636 846175871 962382968 132553064 702623310 93564152 583541112 721616655 871975822 925632107 987991343 798847808 860124004 452378682 564699398 717445422 974704959 986610708 998885851 593678074 651200645 89215276 344504142 990395649 993549636 512903199 756576399 768110364 868386462 312827674 829451751 847134512 884614448 859224880 994594215 767167162 814979037 436881081 948205362 436219202 642017116 179460433 283518882 677697534 796725071 836202692 957495575 460514105 710697062 794223464 841476750 615520607 823006183 355150543 670161007 861455118 878880321 85944275 102665938 220867199 770728543 757783359 947487023 175096212 282912801 124685268 455490160 545006129 996649584 633801279 659103878 816569765 933252577 266848013 845136939 256072458 469144067 908483598 961901825 23674912 946174327 557455809 931951155 913020331 949680943 794701999 847206076 633141175 835065153 937080234 996463256 777396748 818857010 291131380 962781175 999143954 999258015 703199998 849593047 331305597 926142090 235424049 526077140 392272459 401951660 447194796 889726685 11771653 763451220 479023220 596246508 850427274 881235019 910246307 938801732 581891915 840532379 404526801 668221139 794171503 910114651 221831334 790093291 914226150 975621008 150538998 281164853 801598512 929087170 429262706 531735932 733123163 889854885 192876345 793571484 631720142 687346254 811691568 865570855 858352755 917409789 528492293 639882691 524428492 891059408 708935903 861306690 183053053 407693061 898797883 997518437 682593085 845807612 422634723 549112969 920114057 946674110 432316281 465750166 577989858 777462827 362810694 645874662 148205433 928278645 911147152 931781672 988928440 999221226 554336648 595336700 251953760 985277890 86762396 942609100 590885921 852724773 309123492 965014404 372613984 465152577 781612839 914339032 497510019 728208403 894714263 939387944 85731975 205935471 855668212 988465604 780066895 936655748 907856668 969777524 468258559 752483984 692079397 917912558 588550995 957861287 515453426 568906397 394753724 502708752 230421780 350945110 129744279 298591804 849128615 995370757 941823258 956257049 127714091 780139255 221326251 849499635 13162081 404961466 592789731 667617955 556130705 781137686 403845611 468955336 766269429 794214449 634498029 712458835 878006872 894336651 346666878 648596863 240547522 507806954 450063902 522632694 613329641 756909051 351139767 856928209 545327521 568201310 805898955 979560985 915191547 999261926 116638546 279778680 185292556 543254666 821884336 864899834 954816316 969024160 257275879 524433895 332730580 691386317 857215364 889427124 92893690 916530157 170972585 531786890 204225683 937070117 796202789 873818221 781643833 924136981 685753991 861491716 27923895 110403064 966794493 998176506 881876661 981626119 353860560 471157951 937906595 961929192 926915188 937308316 437264361 779933760 619437984 811584882 147891844 988948970 747712510 790872626 474425761 569972367 30611004 923393733 556440240 653092937 704561083 782289743 447545163 939561721 453170288 590800354 42240476 131266578 687444102 859966385 739314808 869498846 15781136 193502550 429628232 581481937 142157337 600339362 145250202 670047556 261666024 970214731 975380 645090478 377672307 866017394 351906047 365420798 3579275 473386241 711630089 956495463 344260850 540383141 886900592 907535660 37432836 662750002 960020135 978594572 656438393 733123850 35140998 959640806 112264191 626348985 591243975 822975933 81877504 516950093 997218275 998258985 13736964 461531999 760484251 975882298 964992241 980760096 140552454 228750923 153837642 989169405 969819053 987835010 441693270 489206227 248665242 398883884 773200697 813508877 516355085 579119892 280248214 512660864 309528602 402661828 348423864 531987161 506739392 778961863 864670837 904679997 91100594 484815432 912368437 989085500 484796545 618400394 639774222 843893571 470062744 632922419 379549100 756584929 928294794 962749733 65896886 786146601 108315906 934273827 61105150 349450414 445595442 989441746 120843343 944036377 302666776 714787610 602082766 749292874 770528674 818616298 219645103 449187752 810356940 980172837 424083712 880716678 572670743 585024798 377180872 928686005 100412182 758851527 656471489 706560570 407850375 774842071 412473739 784464146 223163545 948940302 599283615 633620356 585089690 647400660 521533398 965049918 970759323 972809902 977020999 981060378 342191330 915792096 955895426 982449378 561456365 895400395 81397390 310075163 473262557 707087025 680476722 817618143 802431802 886715702 251308492 355773195 532352633 723601222 850768058 855548858 522400706 801769882 303415861 866141670 374718334 529733657 192244106 946333267 203943444 948536290 881322304 949724689 796354703 926643108 566924210 928752314 491154010 832219673 58932912 528495918 780692287 897834386 403239036 858782883 215381125 669292602 109822971 470316949 787951689 863766351 373916235 409332671 358344427 660889381 435955180 654015767 870347873 893990848 533653536 709600886 586937927 774234152 488919916 626017182 796905505 837775540 190308077 353094250 997804915 998693906 66433213 368336539 760756479 764909503 445232821 583860018 191644306 957649323 85328218 289126991 693900721 928997142 517610948 696608556 25142271 739778242 990188500 998707304 368947712 558108813 594223181 616037144 950989414 979238383 441479479 709815537 990809923 998075514 851167971 939746398 161544925 525169417 200277510 401553767 969996325 987202087 113293927 495472632 109075345 993872393 366896916 782767641 455306752 747059868 628791337 643764756 659881036 999124211 766041230 917434119 851780279 982627277 720854165 936137562 284742560 930937419 675618685 746189990 55780456 293942054 783696368 907655096 432601126 645842316 542467286 735199789 436864187 826575289 151745397 943367034 261872889 747352367 26152806 544139962 259576560 617034372 786871221 918003986 633671590 711750695 318204418 751374518 448547250 822295883 460952925 814050938 310712402 719117304 91706436 140356472 47926943 246732078 31244378 986741700 497680821 823751899 445048548 815330124 503332824 886680972 527236898 692444127 207394239 317094665 467121726 859219539 850103854 924753465 96313706 172270805 233716502 562047718 516613468 800430297 573654030 805512308 711453512 730532310 532737914 556718214 742752030 935926810 727081157 858563032 436261428 958703190 29181016 589257790 569494253 581438715 602226359 982159837 290540740 754389151 734236105 836463702 103736573 978418390 238536396 692020537 959115565 999021490 582306118 709356702 392102864 666595153 459258063 857664726 204796169 273769226 305983432 618791878 524894052 647718267 107726778 411587592 48207122 765971103 923666059 978812259 114216876 753418313 187201697 884337618 747648789 877657915 789374207 829971482 905789475 987475107 850866992 986313258 301977738 817582520 302833089 487317563 414016943 900277189 473874893 964322583 184519857 526748755 291992595 578584404 905893974 942506039 848893263 992629740 410916589 565826429 659356010 858572535 582529651 827694057 994588489 998732992 499005132 931075747 177609439 711542828 38786425 940619613 277821149 779364736 590235792 873380367 809176626 857460116 918438107 990271613 942484350 981435370 252318952 396336582 501216171 834294620 341203520 955909737 303367140 971822144 270196580 676018231 221366717 506409082 308795625 560596106 496801370 555176741 473277126 588015947 618525255 996783033 649642487 967130701 175723652 201365660 821770453 929479162 3704486 48519376 534876525 688110358 913911697 971768525 266033952 295665880 610684385 746343043 897254063 958735654 860504487 964895204 681202377 726069556 800649847 812117065 970551166 989072853 820646941 945714096 113809582 866883876 172313878 174964185 892690307 918765902 286532359 344682208 74732933 501865407 937795486 974671732 367604189 678115024 244759097 760016235 228193859 762020350 499547650 911292297 832425287 975665022 355283397 426595488 75900505 121368784 204541003 337943840 872882648 926331861 45450552 126439332 255719167 350370102 136110103 434188012 657467317 789627360 884689277 934780659 504164954 604867282 953574438 988397914 874862793 892413628 867143241 929357254 12992403 120811057 594024101 661359813 31452276 861300212 699384927 997523764 892551919 900850711 831974003 960575250 406655037 782223192 104308576 782166385 162266390 515287850 468418927 708051080 439641155 668527591 741912602 950273642 192103835 873570219 796029681 959356451 94049579 261032076 845304978 870340188 998086637 998665846 811346219 998279920 975568404 981007101 842411007 983227154 358885599 865276082 241345062 431812026 723627420 976531219 200185092 295921396 110286184 914768121 824310286 941390690 609046023 810962969 421806529 812148724 596287464 906365325 868725897 874427977 631988943 924692461 837273818 839510383 604342689 612019828 962224517 962846123 164775397 666757424 152464111 909887451 65293730 868775770 601026036 820912976 775541516 910254402 9841626 578099837 541623182 836103753 88381900 679936226 863184868 920885855 100519527 242370465 524419578 680606686 688186091 706064693 887651639 966832162 561688553 562734509 802645507 835387234 949369072 966885627 617335691 868322663 863713137 976488518 857442571 939917346 464348581 760075513 492955489 643881901 583402336 828664553 828228946 983534924 928603195 962333747 579283541 934060694 174507545 486188448 510670047 513486524 709975650 734150663 940363675 950079082 83872597 435511817 72515468 538129521 359243091 668823201 763953319 796581366 304038175 460785312 803615974 952111898 349545701 962861267 9986677 879477595 547843333 966980200 728509867 967194813 208635267 959905430 544219914 739497483 584543539 796124800 492974508 895680925 298220293 754532867 323651621 807679202 584530280 782009458 329301341 633151185 853731482 894608456 610135023 832323652 806046635 831471379 792491338 811194874 497284061 694903754 43218336 957046418 431651881 747136062 262613315 926525103 993643120 993938585 353873600 660513084 963321846 968295472 653402155 681195193 160052167 745923666 8649095 330732822 508694979 703031035 996039888 997164236 206638388 456715178 712845246 780270146 682991380 921588146 727343690 966632164 139841288 547967539 789897961 852016297 102226753 504833852 501962835 529587123 588599894 985898074 492504972 733607774 84879999 691788588 916379371 977029686 734124728 776766397 161401579 228359909 714553846 788250539 753617753 800008508 504192555 900789595 123117061 578963092 579015342 965797619 707017083 900233982 857415309 985400982 985457047 985692771 257650351 720986329 974311480 986313505 561708653 720971655 469882827 820743194 541667595 743157740 547912259 953635003 213890015 280318885 848783723 983509428 265698866 538692827 880719449 884045807 636419089 993070443 479430710 681151541 99261299 505197687 8899550 893314063 969582421 998680762 386928473 424346526 101081723 134784413 216839976 871768569 922455462 968302422 680323192 906483133 148916237 728929865 587416179 921865656 148529496 595400559 707700764 733574772 123521809 789757676 46320371 128649058 814689742 919784840 944936733 964933068 388273867 669684856 469329583 817982729 729685481 797556395 62093032 770273101 869960563 962638278 665534651 848656277 949859839 973273178 891125377 961019155 833289719 919771562 406246388 632617633 121393790 704392786 741065757 757362369 824865313 952828558 403390917 752720756 950178590 993838891 59809453 792423178 107213927 680384192 575764594 901978738 595294172 672916093 3326013 439674355 994427667 995290846 397762024 738850732 274938068 666332933 377138401 770393350 737941821 794615097 841140592 975961691 31464624 899713250 778108164 966692734 528840342 901236391 727950722 872917568 892762245 982349945 358521190 817153375 920914563 962038642 994679967 998944210 41001395 558306615 576644017 740277785 745106885 923128742 402691334 856423678 464900548 577589711 54793994 613938270 967441767 990409387 991271739 998863003 918234803 924405885 902627253 930763394 837926422 915741301 895180710 938666181 52419031 306393586 435004282 764124991 275240081 728839843 266382989 723467983 464760315 666040015 384179904 566498598 745115094 901690346 51657461 400737485 256559158 699394749 425472090 974964566 930443177 998616433 553634437 931945599 721753330 873631009 204174535 753400184 870290550 999200732 579865299 887688896 787153360 912313339 553384975 779235502 477019897 696449358 491454545 585678727 909607291 975025795 647410908 811907927 421884903 685493235 107795080 551704874 682771927 770699599 813479913 909584308 377851797 800350421 468759539 885801025 920703533 937085762 803985372 860345406 423335913 602009424 66538310 894064698 455006675 700615473 197699320 527480845 871735261 966441794 184988275 427640636 246995516 364997112 510607347 869698846 36951278 321311713 17787781 808796080 86570139 733103437 772840946 942049471 997586852 998217038 89089546 415946145 305732145 929978241 529896596 676714897 182029760 541393847 707502624 934191371 939079982 966287629 718216911 985317831 161298211 627566300 153337873 487654829 741141967 791023735 395782094 708136489 375071905 817492386 881255948 911338423 671820308 784104245 475128455 971917164 8129092 265765397 197916256 352664850 702149028 941220280 11618274 101668191 112891437 674546488 903570729 950265577 356930048 683811885 682126867 809727771 980938115 987702270 249475860 757126910 381927704 607164576 125854807 278118939 457135459 777145552 69754694 259094926 643491674 690386993 306595516 923094632 562315879 823652758 204949397 478677563 64561511 456402085 464510083 663328835 998457843 998713545 627933489 764947791 211035242 603274803 819899129 937254071 352456258 427971200 848324813 994879559 69132844 586363288 930284015 938891936 258218929 416344023 521802584 524969540 368289171 874889830 973546282 994690484 719157009 779939380 950779556 967035638 642306074 824071524 139470889 836928184 957882321 981815976 168778650 408672305 746268590 772492530 193930381 443503654 126414863 961308577 344481685 742327465 975006579 989405694 722290133 934812682 23861923 571197132 321641477 387692867 837255089 956934175 831527658 837086312 558013775 828818975 878714990 937044036 4738226 486605978 686651554 698683668 378557951 502714421 573283341 976653649 621309632 881644151 586719898 792870313 677006109 798715144 144624358 484819552 399039168 996014544 937230976 948829028 528617256 728045188 477019544 543514016 278729295 289606549 926955288 947592872 654230170 868613573 177041085 550258330 384075505 913165176 981105993 989937829 97095656 466443948 417375372 972247688 762398572 784668018 166718690 658142630 118655369 736323465 365773094 837465302 288817501 673465908 562274409 646636357 930775158 940378276 114960446 504521743 147588050 790190749 952178542 989891431 373210429 695344678 393508754 399717403 440614945 463833551 471005373 738522503 862658896 963848685 67402600 343408621 279346515 828319397 128735260 330201083 402137848 904929510 682328214 779597603 540847112 596140786 10188109 118542276 523014616 977092993 648337982 834418407 399292027 627691865 118019809 189622842 938108416 988543809 931203565 943614783 186159166 464395032 932245674 992164615 834701867 901493728 154090804 206096559 708326003 904356657 700513182 829645262 724549100 851973255 636600132 869127097 694863160 717864255 927030426 962357799 249431075 301087693 718443584 761996861 844839079 924536361 486270610 801463444 33689678 608978068 857153443 937146392 720124441 998038044 764211759 801759571 268500241 699300124 964075896 974499572 956601763 985033748 991919464 994131389 883063299 898660576 553036464 885566225 437921330 626862372 934531828 955260961 426184801 445070602 925707973 954169627 920053249 999084366 392819922 703646726 740218762 819843827 166959097 926052415 504605149 524673851 907486564 991553235 785626491 854144890 864073608 867359296 161404294 393431025 740244439 853221371 140419748 998239568 789580492 915891452 725470872 752566200 280800821 993720421 33119947 419826227 837371906 986641919 367293877 429171873 171899992 733677487 416883834 779809979 4248325 741159975 410985518 804736954 295330223 330246634 555872700 901972488 721787217 900129200 170362658 912301548 10586544 170694124 68823613 350891163 408421522 896767305 174763550 793203860 988433541 994563729 142170019 253235463 131863338 539540064 130887437 641854745 845700767 958176046 890589788 914591759 723416496 922829060 557991899 561735297 352747141 385134203 195092755 817746625 452981107 952455047 614000673 745293635 490376922 783082030 203738210 392371123 795433063 840990010 398694680 695706932 911325653 928038229 103432141 723906365 605448804 646471377 166609485 485696315 70637826 99447338 155490189 935921140 455370043 717362602 566206085 983897461 2947602 113529438 776474540 881277503 436573186 734350289 707089249 967966429 204350408 842422946 208817832 369956854 208798991 536926633 777649913 950011337 138398366 296317437 603916751 918676086 927268951 963002428 344582272 724282403 921564830 922370446 312084866 332367498 994126844 996281694 903842512 983325087 899455373 941762576 954338137 998449561 608198450 945336695 804347648 827557174 881037898 995538187 132468596 532336116 341918349 717913663 295500511 501330636 474439754 564518033 817523211 961404830 113098230 282651257 705303737 755179620 652142611 859709354 640913113 815161347 328571111 888385707 6576930 723625706 616519040 707759166 739908463 785101638 927600291 967845473 534265858 641654654 654254801 999267517 387991269 989505593 3289697 523669833 43954827 629844689 701744822 839804010 402029707 908019325 40563967 407340918 197278133 462445746 587088380 955105580 832375084 899886040 88888095 313494297 911793149 969786773 805345425 972934731 442104651 651074084 16229534 363896700 852274641 906292345 425925274 501448766 582512205 873166791 179383528 574256280 679774492 682050414 881365510 891241841 190170825 285392858 781469254 928717325 655253190 933890141 455907915 577480572 469393591 810022760 818379462 963037064 826136439 925347022 708618653 737314265 60370493 828926409 240438633 370821587 899359985 968772172 303571438 690553391 382019877 426550241 135642384 482551627 968500487 996700017 653573455 978488112 889289389 956245536 153143379 847311148 788206977 858499559 357092059 681842704 979653935 987324691 135612537 445792966 678339352 732813734 685632573 908013635 39200663 867899232 316293106 901874564 29623772 672795342 333158487 960421657 723453139 769233466 560584388 959698162 948461106 980688847 161470409 766293293 486815705 854118286 125471841 703752238 843717680 923711018 148249493 617886175 429423055 899850915 1971179 931399700 613650300 714283426 570608142 713707652 227267499 470085429 862859807 866299543 861644659 998433707 669342300 683927545 289256070 611829920 141968277 153332866 334979171 815849048 107040312 430049624 483410992 627169175 70000612 398376339 457088022 712067440 552419371 888961309 610150623 699069286 838390124 980667691 191562756 637123085 900521911 996577642 628868963 852807947 486879989 767340413 300030463 716418057 366455678 785841531 870299418 901165937 277485313 733037090 28943970 879252241 126987970 358504574 218049054 449900641 203563290 366680535 765452900 873102551 484735508 705772285 684930128 840226838 138332628 221051936 722233620 809661089 40052776 699529331 338066623 547966955 1880768 282869851 7529079 378775803 192296803 941519146 867672676 951298129 644527251 807268121 328204392 374130553 544283782 745648823 12702599 598772873 975737589 981100810 993772826 994936772 295286719 964608961 443513080 541465255 327466905 777795017 104443111 744015091 127826518 373946570 925461332 974609718 694686029 893364477 528814199 973297918 346995715 926479853 434992074 572143774 781214116 876867516 496489538 527929003 105096109 698740492 913392042 966674650 600776493 775828392 653875844 918520814 833642894 858522258 206209859 621141138 630246444 858432149 432578105 608709946 523312369 958149859 919120719 964069524 141598017 241886363 740437706 968439470 722185562 955576127 318812697 927302728 942461733 984178462 660968604 695662957 934168927 995545460 601349917 735671264 652391582 698663136 967315353 981929077 578191470 693890517 458206486 921297343 394794893 972115994 73079733 114722523 629273663 979733877 239462006 762260050 605703392 739681094 400347873 614774636 298462308 521064910 957038939 962322587 811120760 961195393 304280820 583256350 532567715 570096976 74607476 548107478 410612470 570510695 580034582 710698225 260035572 365093251 88266225 650364072 381578244 841057969 177508985 847352690 700053354 754018465 21448285 249696488 838116845 925201257 30058877 87788153 482053918 838176053 313832384 609122869 710300188 817623031 364521095 631235333 642355757 800185889 827456124 924734383 923059293 926497812 545638331 907493299 394547419 923054563 941316806 977393089 127078434 811321348 791150392 887228995 460725996 860810092 649191083 945922946 866278099 925080910 45413983 195557285 73010681 146567932 928516632 983999744 683607092 787007746 784418629 890299035 711060961 772635114 549023008 914475133 798101156 820134484 567619309 977202692 945070406 995520392 11879079 951554013 485229144 989474974 15191982 236274908 299623204 874140902 212312215 264839407 97223182 546184203 640493931 758053796 375251997 785516792 749592195 954729594 927769701 946360462 225541204 730795635 722317635 969688518 153633876 675209484 85261953 413287817 802341066 846891520 320736404 355478031 56126959 741370907 829787193 983480043 627792582 652240452 227365432 978883246 913708137 943704458 319427202 664925722 25492658 718633420 515097117 625573504 713745131 827384148 221838193 274382196 375599963 712416083 947698548 973611930 101541325 387307675 284225001 717727509 638684833 681737050 495432226 747362166 387073191 497464423 776650869 801242714 21889195 810739328 849466399 880213712 25410390 244059107 26961039 622303159 112311911 520481907 828082610 862618823 634868353 828711438 333922488 906816113 707917011 901757243 690562801 765090985 52088732 475372390 475687436 798454143 193401888 939962642 972570730 997917855 236588782 300065182 440748956 486726340 935380953 967306023 322329441 549240020 201612381 523562095 565003743 627171245 132080236 605367458 165140712 559592000 15284079 765142110 368997960 942237363 651968361 843102294 786408242 916441032 893070221 903532587 583311492 854461433 405748050 448321826 629055112 743004976 131283216 894032635 641889741 805712931 737118311 958601053 230696039 997297974 349587866 401754438 46162474 296006260 174778331 630838558 724335082 771316350 286483894 959594125 49518071 908789136 515637504 524017919 841092063 891358019 201804060 331152772 74264443 926077857 453111874 692899860 921177138 987343408 713561639 906673082 625323996 844748263 281632560 326920469 977128951 984321283 764940328 876767743 372959791 997574823 860478062 895514199 860460054 990600849 814690909 820928407 571674629 869376565 478136062 551191592 234485408 537444859 342551981 993034913 726287761 781204087 174262909 649039657 27511094 101712437 422935516 629217355 576232237 883841591 496507491 901573899 960547419 973352992 650950486 876641062 894249604 919269459 780104567 814003282 934901661 972202258 37314903 624501583 397595449 763838470 575210134 712540400 128466713 443506440 345747460 718965733 160648452 648402565 231184927 797833605 568260999 660062575 291674595 363533211 174128403 680963951 629233548 818470861 383808018 919383876 574888539 887488974 970143861 986984255 528927929 724076371 294584898 639167901 8755664 703834377 235701040 288561476 232765564 591706953 450817646 615633602 9796557 801758022 659423721 670292695 623319495 785888938 149640758 574079526 804878410 979355881 826438493 837649381 817048964 944287224 706171562 801408017 462463483 582436427 98386152 820008015 528865251 696032984 385450856 911915731 829489393 968047898 636342455 840057235 126080268 901901679 944350187 950434157 465173804 870898547 313645672 587563451 166809820 464965600 835293909 881005412 173062985 788144475 517258775 589450693 791123197 929878496 655265037 878816455 705441674 746071820 516782022 619204173 452282183 716374768 11356753 676656235 764808290 895197880 387374880 928621335 711883357 831107704 816889874 955535422 831940510 933185067 192780114 822775968 693692859 718114321 832964324 971155802 694634673 800755474 848505733 999060592 561421746 650469136 324789409 604799360 201188740 502782564 161601118 595930046 750972176 895608209 820856308 824686904 442781276 938164996 95121114 886661527 194133331 705824355 985266217 995776906 204028831 671312802 918433449 932685867 511485282 703875929 774675464 778250720 515237352 667488779 837357967 921874058 906008775 969741504 533900724 942607751 685963890 878114952 756162287 983873834 195192607 412009913 657836533 704544886 125041157 834093143 980545543 992722974 930818456 985072829 72125490 306672158 149302369 908925203 48065857 373020664 761664073 992095441 536679944 581987731 852881923 890258101 983129317 983559159 34686817 516527970 27347973 133368941 734549045 841780810 306471229 383423118 630717522 794180721 837304346 909555867 388565350 438799959 28955798 707283271 730447565 783407509 99535494 178462104 886618819 949286318 12693792 431167777 969396663 988976174 135859772 195174014 718771141 778481166 60067496 340107803 195076501 595197810 240918529 898245523 706924198 912362240 542931555 570739512 892385013 965412514 449286709 672822680 989998958 990497986 713468780 920924874 789905823 901813588 593420039 888884365 988872390 991752498 699323342 761630932 110874752 645832868 991325023 991939798 796574685 847243539 164012209 316315932 764636273 929093778 182835677 214540160 114590101 672114730 315418219 366805099 161013529 788650280 945517283 969101798 623556529 805888792 803961465 855732068 69467735 357340509 263946641 416543342 516201605 991048913 577837246 647875074 320036690 604144560 994227131 996893974 583199224 877089333 995711751 998513862 756237143 878675839 479683474 703156300 357822490 867821621 170093362 832032017 64922748 274928858 589334590 596810559 305621208 662360851 228844603 887004624 467493555 819019313 582624006 907063192 367369513 960649584 177163698 676027531 474968161 765665931 782557385 873911814 488442223 800423613 141111819 668870499 922759790 977579850 165443419 314482809 17163920 216951306 703206839 998750845 459572277 580442364 299639956 327026003 875660227 893484368 693958958 928302749 515404327 971176308 57888206 144585029 826744638 840143808 34216004 433566289 133442487 715735164 396413217 750361491 392230808 861919374 315814226 366794620 877969747 919757197 137422377 756956586 404228129 676548704 624446680 802909696 782320761 869300232 648982032 966185489 171099647 266960890 316231108 328478279 26863567 183447437 945440888 947622189 919188567 988302553 882457973 991901143 367506699 654118248 979556262 999244505 233872473 604560015 436828031 969948239 307933627 878210740 808859804 898957295 903645739 959678846 512384603 516869917 930126289 983150254 629904889 898731895 996886550 998373957 380093621 890557003 555565562 782609177 90443414 253196744 998072211 998078893 939382718 991028803 525672844 569622007 713715237 780845636 887047670 914732784 263234531 986936901 764101585 807630463 511613923 969857115 198197378 908289198 257996770 485954290 256433848 316796447 780034696 946382192 168349709 866557347 42541662 653075781 256620173 562506169 934187609 938194925 605879201 869807283 217623996 303150909 309668984 399749910 144591277 427802659 636335111 657018274 124879963 897767272 390145708 512298291 635100037 767884188 983630043 997074372 544382769 733727870 256999850 404759709 714443077 796493676 537671922 679460277 659721342 809642956 447767063 681971554 174570528 732688922 990870574 993849732 117261284 512358556 345169058 973916202 305459345 711406494 996958966 998551021 867369784 927762000 42946250 783070296 913842640 929707790 161107625 338878517 782269183 925421575 40943663 416439777 385874932 943908131 991117119 998038508 828647455 905200768 207269309 632049891 526257352 926901249 835478925 875457318 138843489 444722240 457882061 984182553 983946162 997255806 235482523 453228255 110821102 516901144 297451171 639576361 411012551 592829902 907388082 935480165 69164966 110753865 745271224 859161056 714630776 771190264 79611598 634339927 44242231 284050171 441419903 913520607 211712061 856179641 146018878 642010258 800696265 881136126 671616435 969887082 837681429 857413164 281035857 434315389 745216235 765612577 298732145 443884716 422962354 816197644 438258046 653381208 701866361 815037718 664868288 806532270 520614309 640256695 93886362 427311673 87518488 344564826 665715177 801201700 54702281 536807163 822896321 907218766 608831435 975138736 530486758 700057812 43240672 670357760 240246432 834266696 90157655 563771013 266811092 622066170 260569995 961836997 119070869 413100755 734059224 969630152 192814146 716855155 849264397 855032536 325785189 953253215 571436542 863367015 73648542 577630547 775021472 864322799 226760554 402661988 943921632 978576470 787149341 998635436 151730814 639133674 340844293 768469843 136798868 907778702 172605996 329199746 924847482 939249218 970885368 978723080 144810249 423384244 248861299 255188973 41217305 95026441 396403797 517823085 843102151 875784032 946885108 966269550 170598663 221952765 185369031 754057476 687523448 851970933 150019456 639107308 631839126 805878622 414147250 544601174 85525019 390287276 496467240 939394866 642162969 997828228 864587121 984674481 732603041 918247335 460652913 942153638 65980278 477954673 277452498 939827645 317824778 349743505 774593030 862451073 817067723 831140615 228146364 994422246 378111277 721314855 508927316 667365648 847511846 931672117 349377454 793676138 567227881 636213125 932954753 998966890 318463002 862917573 779876759 917515336 82758145 647631287 770308609 897048764 582872606 689671829 335321257 796459554 869602291 949881497 968941321 978950575 102707158 674694673 584789135 955205008 500117034 989517820 241118313 675739102 901273355 948272418 925483003 976644651 239852183 617362638 429019039 905293318 242786273 435008032 488655018 646071857 68621670 508742275 183116546 882399788 29003572 546161328 243177400 338959783 945605015 948782900 388659963 891653676 299335302 860461055 508529001 672263470 257904259 762928907 144026760 264097798 526537701 963712840 551236744 594350074 567796792 702081613 646630874 848223842 334986361 763602408 278315990 291331518 319241008 522929819 777397308 843928324 815570576 858067526 413002718 985765198 192675206 225608145 492625690 754805044 607789054 625315075 791219873 842270963 543865920 789921988 270741625 304436609 323507002 944747436 851479663 937731949 535643274 742424380 843807654 857785527 132855 47096807 62401816 191404659 574447477 642570086 949990017 953326256 694805303 915639593 891779893 910804903 658085295 759629399 239415443 847438100 839253010 918002241 139055053 512518714 158921992 685796490 301767549 307735684 360764547 556626546 800014712 996451374 252027061 682960843 350827115 577421606 925667516 933258289 404629942 565380546 147976137 261743165 357638688 684361171 944920990 984499515 872122810 983691724 191763517 598775837 472406656 624576154 677474778 937791632 511147816 767825912 566001391 653126791 873748609 890505640 103307655 962171085 56858004 305837095 322618536 419086006 531406588 602676760 968470406 985816377 562753890 772146622 693397289 781792607 527543605 735130402 766416909 887247783 199291765 417308687 771825210 908943495 302411648 968736020 693301223 805519724 733219763 841625560 142458864 502665743 283207243 595282629 557710306 810028181 810692793 995327851 352902189 376517798 182083267 442048358 485094786 674111520 723059534 745452956 799504611 835406829 393101095 557134970 576921025 970969851 124265590 929340830 361951371 528514522 826339020 837985086 470372860 855807811 520811545 603203610 114449414 413520914 964092021 984224339 121555493 751878891 753297063 965121688 95644910 102216138 106555102 373113981 231467528 988986670 15865851 590474990 875353692 883104709 5500966 219615866 841556257 890428434 132881762 314425320 463636739 679645083 156543837 877632454 934121385 942955641 298595406 689369159 852270744 878242593 962486696 975179896 985479980 993045753 786534067 821559428 853838874 894282551 645618106 912772757 287674658 870104983 441191732 509448707 809473529 917602171 201379559 940002666 330148541 643095544 230727366 777264050 641180040 900834659 380813419 713102716 577195924 823737203 269188557 353145396 817066444 925915927 424847092 847180462 890064075 939836052 932811974 957171556 175448986 656461438 814558093 982708771 949438265 969808121 810075009 957985200 13549869 518777722 256170222 831417351 705303627 797897415 706874243 899097403 535384513 586712584 651545769 834244782 255816446 294468463 165929161 439475976 595857026 962518219 843791629 905947587 983749273 989531305 170979882 791923684 365841858 541655210 362872554 643682917 803372364 832882407 519562429 601515265 817244382 941750028 375113117 749685650 281864822 527455348 438510795 583771033 555024887 926354463 695904135 858948283 503570550 545202489 292879434 436959151 154474157 487797804 925992189 991328893 8288436 95217149 480225918 647736181 19548159 629622981 526415893 909121973 99344304 194671276 807168584 961551934 186528348 575741806 803922009 915208551 183245712 899375118 639798290 718766726 579874120 778071946 477588508 846705756 342486623 421652322 606968296 725837002 537411664 984216921 819281815 985952651 62987795 173417311 901192924 986478928 403369330 806174786 354922162 576411793 743330246 803780793 516898271 893300062 807238029 928835335 164207863 696559064 659119370 977593203 805634748 914466846 729152051 848789576 242980930 571196011 768084955 976590195 700197976 868297520 184938211 515050610 18078717 474834901 409320989 742146898 276468717 984897302 541774732 915460301 486006251 716863385 276982274 730969332 783681966 927821251 246497102 680449193 926869051 956160754 858049239 980979456 848853946 922037946 501161599 879547359 32247111 918706562 965946 442086820 762928679 840871156 30200983 638832247 320088641 468236916 163212215 374618866 301731300 858812398 412380805 540844765 994814483 999128722 599627352 806907668 882002720 883446631 331007034 722168308 762622852 982300178 697785420 783930002 500662395 641219982 567716957 579779066 101015016 243260581 184863739 652458928 510494291 525332022 293978345 403134964 71250740 864036304 739810904 907595653 149398788 709829867 766233263 930991975 257088880 758355688 307514920 999285547 748958130 948903097 709761735 773659605 243117918 440186742 341560920 824750174 830923719 869804759 158862810 943282627 480012089 736410712 468078738 734015573 177839432 961709385 663660545 797692873 759043523 964246207 164146145 625052064 244318071 750972342 375115167 837081066 660455289 955320876 682097991 816288291 121177977 820699896 6232347 729100886 422177601 696213286 569512446 717150474 785625104 834258459 987584391 990640746 467662419 834172184 864030317 979534231 193637009 431035041 122668067 585174745 905736195 912067903 564299940 866653069 531948696 830842086 438032462 808035133 484900217 889637539 432795879 841526844 776070670 850319902 172455373 747762843 223813052 792992699 279832930 986768433 873405430 882773192 225331891 943640804 953198107 956782776 301476868 995637519 67653360 855614271 511296667 824088024 539314482 952659426 344866329 495504705 284263754 474986508 921199494 939337752 786512231 834129376 687219452 907904734 452818039 558796094 944459145 972620679 386841685 927364489 48791595 687589325 14438206 21963819 609488207 860405362 854974027 864748539 100534763 138985147 576440509 817671235 350848996 725247554 84368879 200989363 188551188 278436604 262068752 832228263 24179024 371077627 1712092 772275785 522270204 775108158 208221839 673170523 470850905 544477524 372678566 718281946 178415591 420419974 843506295 864062232 176197519 503758433 892044036 925601407 113519676 308599227 263671010 356469992 242892286 280095878 175012165 367885502 156931971 837678876 404958998 663202303 47477634 808268543 380407429 642209482 302850202 327705323 398647573 693377137 700541235 890438565 629646280 669500768 274915996 555419248 737829662 964749991 143533401 252458417 680413340 895888921 364581767 573036465 642199886 689418362 235399637 487858551 882344679 892264624 331657918 525402905 815584111 889783716 298747763 646965543 650499384 741812259 65555407 221626307 256243595 904514043 38894055 67679744 232997583 862168458 228605986 644183125 29812174 624111352 907766535 961807960 421169623 865440180 191874650 487474266 300685075 638229789 241777014 781107749 589482975 646133115 231975135 863122275 833714624 930760320 154288850 766640576 175706591 304414950 241296925 780616398 725253960 784867998 219961614 631194610 470765051 897794671 257059696 782453277 989454590 995961146 32659441 581488827 429319792 521984216 700511022 831926218 138279178 367265165 295629929 952902607 874155736 993751626 111944309 503497236 911904190 922535578 37623816 394815937 232402470 445064503 383878645 468526352 308307623 500001366 107486327 726660383 673802520 710459101 240924248 779715563 994336594 995179981 705219984 940772650 29364801 929972779 327088227 514435858 299837920 687486485 555296275 929164122 756565018 946220700 113780316 923544710 744464681 911304907 179686466 786171971 994859589 995708689 586769668 699797875 290257865 641923206 420293033 990813586 142283186 984913956 395997491 613962667 155162088 894555478 661162815 776226590 953704420 993746864 103846448 842089684 672155761 844327758 530989719 559345535 895559291 944801104 314872863 745427524 974216635 986661919 332784229 399589306 434714703 737770775 436635635 991886642 616669621 792304469 824905678 935860560 405351528 432361328 871972185 906714082 631035536 707810760 414506668 620464610 465220343 476309115 433938537 710516971 128670387 664379315 459264900 545607967 638415028 963462606 308717011 941608789 42801661 429600257 51403408 565456442 944519597 946003285 418375862 528165778 827932023 889655293 343983054 798548088 777030193 840189240 309214487 603650092 819235903 846306006 14656264 66047634 256864508 367708795 442159996 832605620 396729441 435010818 653570876 808513482 957079733 997500496 320104184 927619266 681329378 854439823 913966675 985970912 448800304 972412987 836802264 875447883 562777568 599485410 232712207 763999279 250180022 849648414 514489251 975690835 640397559 899238412 843606467 970995579 632273760 748544834 544360876 786040438 995229315 997931070 645799727 921118322 602678268 825033189 791609010 904587771 580345779 647446732 756545257 770043991 955507921 981438074 611010814 896153708 204959564 649742795 737953220 758417990 426779368 728128065 169882912 802005245 64321511 430470439 196455228 805081134 237861277 341238775 378526038 577024030 478005225 680396612 165789212 600603763 184131180 897200148 211770505 463006866 491147710 708064005 960793792 978259276 531362548 828690938 355444389 725881138 743464129 883429178 117606100 715402539 909051282 933043693 597000688 760057665 261072189 756308268 212163710 365282589 920255746 922900249 489372884 879365652 623713193 629300174 998687158 999388537 497972414 865000383 865189579 980614401 463763177 489789806 670410262 745542464 304090125 590613631 615405057 707344301 460431753 862175408 447511371 916328839 385346612 940093818 864188205 897865538 251450147 690101101 823114603 890211191 334382738 456499886 75563520 890401975 29761690 253123371 733324950 831834043 736887608 868019370 934409711 940999399 381446655 774575106 758112747 817022962 351111658 459097889 712496120 900503347 947490709 950681793 449672073 508201101 313480444 505607634 443912787 798565231 792017493 802446517 2506730 188936661 889396504 894552923 405567672 574366285 428118664 521632718 929087203 986134192 584937548 818528181 622456726 867295825 445908086 796954119 229300534 801469227 363626881 547806762 989198135 995690823 647257553 746584993 286906845 564898144 264965454 466338080 995561739 996261029 476313204 926516160 552644992 599613290 856017684 986202480 566136617 648748306 155781392 675038553 523547288 561431649 862943688 910482354 139437382 621098475 596572865 726558604 749908815 781349349 789139667 909302741 160176641 330643437 451358526 858160189 45050121 934414645 998093186 999284313 183960209 883696776 52106191 769741283 353945953 592898271 308685233 941894049 682608074 970535321 737795975 817154053 56736928 358505054 876733494 955926960 647001068 728508315 542119370 742345096 909416697 920762158 425750872 631549738 452403100 561497886 609114117 707710960 369182491 930856085 395536170 664539799 600449015 782833126 627861761 959565631 940202703 992427622 766923412 874519777 602262677 758213893 181362959 332610154 580234689 777655324 857900438 945942294 700448811 718498929 776046408 992154019 546501784 967522516 386539475 915549158 621815645 673522571 630968943 775167675 610630833 791904718 516986911 808782673 733314227 823536977 918862944 932067407 904759775 990624731 776204420 891894984 331051713 969169852 933235732 982658885 746821273 814875235 982786654 987872039 867592626 968298946 128776679 900730700 367477443 476830375 571873343 971064549 97996387 524634085 202391511 851763101 471731282 662115321 786148079 812512851 597865663 997132183 724563562 907580687 141754331 584288453 802359431 959292565 164137606 648257720 853229853 885288433 261287134 927939854 46343447 742454597 72871569 587528935 172305075 987338606 835122707 893400945 662939170 699553009 961721095 966310952 238901698 389844937 801095643 912264401 555828487 909310940 977453813 990038513 549183852 955295003 397660410 865439640 192746735 528477062 531512010 688628986 655311010 842119173 687891933 696684317 166122138 480660345 773973125 986061704 999363190 999388569 3813622 223838493 465087153 689278114 904422113 952227054 975285692 980601737 376497990 864455594 40215 93078895 56453172 777806227 676027152 707911563 924735725 979261675 939017384 941068054 302456411 574090815 164474455 534860970 660120414 970941446 551327194 608957448 173240478 454972972 900317693 994832412 426070942 470346133 526649581 874654797 829472150 836898730 527344462 603515705 478960675 657985799 178861479 547111509 840808796 986123767 733433297 887597510 254811913 508442244 921673686 985007341 688587948 842745382 655676889 823967686 129308521 541538221 632993 935153068 207403636 335601444 127777320 408772579 733076037 835434901 4845290 17642884 510299513 712306051 920438850 964246224 460724119 675908700 719363105 761726712 807507468 911411638 606662736 678932993 992156949 993577823 443725185 651724251 629417444 933913388 683916782 927099812 953828967 964082493 133286097 851640836 12682420 372568959 594197727 650526900 259542485 433204907 204429141 214571278 716145045 762705641 739245288 777255488 998974922 999169471 237254982 684017788 765002619 957249967 79910665 548834748 732926002 865618683 658197156 764536186 454475103 832504899 421417109 653390062 139421023 174843510 259743109 492461223 927353667 953155163 150961295 371059466 303250441 423553276 876727120 880266822 526221870 880975784 125984897 383349174 997165302 998748975 671369195 745382524 966072680 989136123 266551412 792679466 388856215 563855129 487702755 515161217 538215932 816660174 486855725 800302566 227063275 501529739 110997341 482000836 801751802 853122729 404130822 673344503 399536169 688080374 62359385 446004163 538017366 624747763 616086804 711934371 344429286 739037939 918712427 935007338 655048172 776241372 870396556 977850394 743792028 998655473 359116239 622476682 187891463 545085245 570816042 902845629 856412589 876181002 637414520 713898696 958854474 990037171 472810826 731533538 301109081 849993386 964208253 981998909 370227832 672017630 104479848 931098705 891869335 974958166 193022458 506429888 656254648 851500973 437024080 836067491 213165861 773251071 627509460 736531004 246951803 810551121 658588950 975054205 636567380 895097125 672466138 877153354 888584971 980166834 261132430 369915125 197659094 253450194 82897236 793687871 542578273 969515204 57162702 208915395 809707005 958920737 863162846 864013524 381396384 823021256 241515044 393536755 755979371 772919381 922181373 989506130 772378546 815013652 70276764 894845943 713006073 987744169 344462389 846903593 482211377 895167704 936400859 964832453 841061556 899938364 428950530 995885009 574832963 584485196 851093614 902766774 586968537 766165688 515579808 822085131 279892131 474818958 989316600 994827634 801587279 900930488 100281607 629102829 869298913 882494050 406933889 800817296 12257138 213396834 394088503 962676167 115093351 863122026 707887680 842890604 688715333 766387046 272738775 894492403 374464903 513341640 510394440 760721122 241524350 492979908 119107249 340896083 655398391 759806816 660005582 765269707 610945953 855348683 199819457 524637440 252844394 339419133 965058577 965206914 24299279 110952369 299627026 655433276 187085446 338700054 561630666 786856503 974712806 985601856 351612489 886378795 316242367 695588981 312082537 646211094 948999229 990314714 336516538 673470949 867512810 871656311 726443317 831083152 937485099 957532971 266250407 506553163 590522291 817106495 646049297 838822614 635720344 953742243 791310556 924552267 966483550 977925629 735351673 957251386 148290284 533132761 137761274 825698270 371698910 803989862 619067206 644093072 721837666 781363378 54403058 353548629 838288790 942648211 210797744 481427737 269241026 437474703 636468794 977459867 702763849 944151220 145692016 496201761 476200572 735894157 251964772 328087084 374040365 721796340 217895787 294271163 234512976 480109208 996398861 997704362 707084647 768839165 521276734 714225118 177631991 659927787 395540789 538540540 514366959 699181656 720237269 860741775 886231589 974850311 435939900 973133341 30475548 868308604 753524775 855429715 565889832 666992251 559944840 565777944 478479462 824931097 622835440 857814886 717470049 800450616 285114505 557131089 464986456 653698118 796373820 885943233 478849564 823595579 622435849 782255833 625833961 716231811 322859098 600541779 400351453 928118194 644534766 689249070 911478314 973169667 994983562 996812001 427164993 812677481 726562240 863109466 521997463 893515181 298364246 741876943 29303711 963761946 117951493 223345868 890608801 943371971 198358676 416267229 657319968 734418518 544529025 607808469 982139981 992955436 420313742 636710343 974862098 978519630 180861647 843053753 720992285 898551260 138038301 323351895 525610246 818322662 401046653 710459910 292936451 454786358 524536621 724290982 739980545 778841304 194594667 271180585 349365026 849516323 146851212 462260267 189447056 658018526 505150763 649160638 445022477 616709711 124955972 575665423 999366064 999368965 973050626 981462671 679060877 705854386 965449137 979945069 759990977 859719705 211628924 939475734 115435697 421098130 396603668 501354349 575540645 910750334 152766589 807976205 487809299 815331155 891568363 907140856 185266642 398450762 140322237 877506705 744758405 797654342 942756679 944897480 959390261 982321476 387859353 578972583 471319725 827004567 510658795 796472350 786932520 813705590 43394456 993031576 201373859 951184196 402769968 461424624 97314699 447747124 573985703 637899189 455417620 956110359 553564002 804141394 654087259 967231198 925860050 988977447 578891121 991426352 85031955 927199915 189848456 885418519 273118424 665346257 476578930 604187518 474230273 830349987 544752410 603049592 182893039 780442532 852910693 993406641 281898187 393399637 419756737 456398325 752176167 833620849 485796152 644253168 659724115 803760041 531669615 996470357 244317731 623452195 241888938 451800691 337381433 423871331 754328931 896712056 153601673 835434070 365418530 982839870 582070955 602570064 357852884 533159200 825682183 959684094 662160100 824239049 644215600 668419549 733007951 892424553 93572916 495857363 831426703 848491142 930925141 995710048 94383179 714451465 575380043 730986052 908610338 943066098 409767021 440411625 656282060 892971042 538123748 619878940 454835356 835531755 801005750 947325463 984696231 989528996 958830035 959806707 820751775 869848262 250910609 458669795 61452985 175194548 830399782 953413645 341020014 845342101 632985285 954051417 597341372 833897291 146778155 459850081 587907849 790110100 750751114 777915164 901987239 977786908 908062063 990113570 630206125 946940999 869475514 939456127 747476222 914885608 731932189 855156541 744258819 927011153 349855238 642093033 198687762 961379188 209616109 536416059 474443138 919304604 312739081 939296171 38522515 743201113 637407115 787747792 654074405 939911978 542432343 652122877 570819114 919296359 132622371 988035280 115242993 747733750 383986016 698455508 293995187 619953083 159595372 713672599 282836977 397234565 70932988 911993906 440603000 927244556 581592695 592837194 224448633 256112567 125787372 138653565 768819368 799972924 716971182 995278412 911724503 981179230 717072140 973862276 152000042 179627861 484500112 864757441 174402491 977441979 253671851 935942609 130820900 966386920 725522921 857753847 962992288 994535079 797875916 968640236 673321050 705441113 337175146 772335739 387959180 836462668 834794707 999224895 735657477 944207877 947498639 957741172 675638811 983036780 206959008 549030636 639970516 674177100 681729047 723870219 20265278 347638239 753060500 882127186 612210319 796158898 882321908 970714182 898093706 943395877 420314054 548215418 413634317 704390321 135672162 861583922 151796298 546449174 970277046 970308768 560868489 894221955 912090965 919441108 308459727 580673101 596236150 758072991 895886997 948446983 465178530 637572866 227339069 547367831 243754948 508235059 591889271 774798069 447608242 691071104 523226364 969285891 780385748 892755323 794183156 843295577 692827963 806339980 350339469 624882503 497508745 857873236 932557777 977780795 386816751 794435623 171287728 881557764 95064624 176430271 529140901 812062855 59093983 563793015 732382965 931365062 168437061 758829678 398974392 852426097 85439077 726385334 252308925 360939299 672811072 802461404 24782695 70779960 317170834 389938611 569885751 614453178 334307840 338234600 90072662 495349140 91528687 912495482 358375077 662054760 837074490 934354801 40002203 799264378 470528330 580432392 31737582 132123383 638705354 653522226 409688377 432608695 742168085 832385771 183937600 474746683 802369221 906374346 684915286 901185534 83750149 718813845 215476683 578067189 120454266 270840612 453602572 543244234 258947385 294631486 720254487 828529987 400977882 673528507 426968804 705256681 550638925 956868222 475647609 548592853 167064648 477656565 378349363 504169400 935278657 944625410 301724609 441392103 475673083 490353731 108032808 154931430 955303003 990862013 100667538 383658970 42574147 53504560 69971096 465551308 484546225 621103544 44912401 127237341 931216850 951786890 309579128 943951521 839899502 952558404 898073769 966627728 372448618 911511248 61817192 610293961 758712832 905217000 8189508 243211767 666877373 901628890 696096465 975838922 250258352 445003716 79068970 752095651 87872370 376188170 600497210 954666593 666214355 958013320 762197336 920418563 133068266 360198136 901103066 945590087 945382776 998472643 908159053 981556892 770511682 857560141 469213844 813043116 211592733 299511318 588789179 831167040 688953827 714768505 994188657 996340092 902917273 980712074 350693892 437897921 315369822 832338593 443028135 553269162 428752762 863630050 501256609 812096336 705104360 879062537 182411939 688764115 346946975 937010752 244073467 818998060 729780222 987504049 386572040 943784208 801083075 995925187 748113338 871451810 131256135 982928888 986478601 991505541 30620983 285578680 398038365 626895984 724008370 838456734 679873810 825817001 478657101 533011005 16927721 419093642 79144480 599953249 833298885 882214213 289685998 984772279 960952595 980331315 10513746 760458514 326164156 444816121 902261999 938397228 493846553 814995236 121681442 615250924 255773533 461553456 245515 44275663 539281038 736041105 819908247 850042070 991404577 991625156 858897266 978218025 121406956 930508006 143202432 530858755 340570333 851187455 543168400 974815937 710760135 736558595 323765553 911453178 783289148 966428661 731354216 817718221 531814946 547658946 118375116 178715222 909017400 979534325 695259963 808228728 448810089 491469181 573658251 729417888 558310119 807195724 636885100 933928569 331607986 636996624 683409257 905380646 825319972 907548373 615339713 698142448 491999234 978307197 812246692 953660163 437300545 896304257 255545463 982693561 475892383 487354858 361422500 789820620 541404067 685249306 849441169 993609746 198415183 519099207 635908730 921746219 978681205 980825888 997910508 999175902 813092627 823502232 200371321 321147959 421276807 557515158 585256277 984933513 330744462 751370112 139259843 221184881 682386917 918560222 409633969 474610220 450444683 907729813 917497811 967890108 820727510 829227209 562057261 935697276 745590233 911424039 557231936 785096509 219391572 344633530 397490186 573030519 317420770 319750471 703631058 798052812 64085085 882113128 627621455 699433061 644996547 861145692 661786046 729823281 507878956 714809236 369710510 674619971 599343677 774081796 249362447 820630747 843646678 973726673 661680405 922321073 977147881 993365750 336192550 520397400 506822833 788468081 646570263 752461632 139598473 653228961 609060364 702786266 536191177 886197782 194698380 787632211 264961442 586879430 354305393 426601186 646409996 994302208 853019093 860234318 320835819 976529616 535661913 566221288 836616345 935583123 181956863 260344740 483509729 823650662 127230239 872331766 847686115 869983850 274469179 427836310 737598748 767031619 843282511 985678192 863483188 889116100 127336866 614167548 851531692 896865324 830600562 965204364 156210258 174365295 483651799 935916191 125193292 694127200 542048202 686547456 648318949 941977744 946973440 965922354 470320641 488360372 645770920 919475594 680217227 955751703 674548013 737004027 688998681 747048457 374661209 751786264 174622419 869211488 895302778 987688606 695642559 841243231 510612359 902291701 526369677 698660325 373073611 646874910 80833531 336519881 381601676 558084694 758609011 934098955 819213415 940868536 252238660 515106520 183895349 592285636 566862564 975882108 209851538 995597298 986752904 991921304 329932405 758138917 34585742 502279172 450893189 865655105 291342472 665397221 199909997 527282299 435427706 722732812 736397520 903702519 213432292 968294592 475773173 816033044 21180409 605509476 914367902 929106112 927577645 961277158 270072122 782270151 203186171 888467091 671495012 938660343 196072201 631805809 395206273 438725266 878556683 919666719 648645891 949302446 65725631 308861925 270633721 283311895 843135931 992835823 7442047 457144106 136758705 836828439 128247525 858167644 554602156 871860371 160377244 655438666 969502785 976048662 123583840 326829380 265198134 979747775 179688566 973509744 543096720 945335182 938095097 964603080 916327914 994066250 461951267 601838690 211037327 766468916 503541823 894908223 873943387 957328893 533754446 696762741 90673334 188679576 525671687 934751304 591712407 902571448 909474960 968959304 443514378 566856498 778451847 984514506 645323530 699322971 251302950 301282261 17861108 67556050 397477877 451785765 420222621 558781693 476594036 640550890 447140351 774213858 163811919 365084427 435561134 525595103 901587207 915250170 60276539 356100167 830106089 882770958 375269320 880814580 793645295 816769393 503110912 791934125 315212814 621179983 746601095 883989031 207161426 969067610 497574653 968539010 380552871 521213176 502641502 658830653 290513760 696080330 243331892 609706905 400296844 798822899 972834939 984123421 17900138 807990302 665488496 919715757 497746814 635870427 232796667 402832004 426652411 738953011 740511394 842807329 166608796 245445458 688315023 710199587 773923261 971912319 972465566 981097971 689094037 776922214 541998030 542710222 654757634 660734274 676403703 822524956 669493741 892402903 489066703 698201359 305778139 591401363 704356696 747638043 601042813 703329728 975657456 995966008 297830130 603959147 797428051 874888241 436312363 780704466 376394055 680242645 146398201 845402880 797515516 992602508 66382884 798541205 311918994 952054172 815596962 993563520 337170842 657618733 916786674 924971459 538821390 852632844 567898118 756387072 529878202 648321293 951408287 980053900 695756225 965902994 860546772 959901032 711790321 937646156 472232687 627763022 51477245 735606819 865122423 955693369 972631132 987244987 767295670 941178851 109623698 312965554 270347967 734602613 144639435 429605168 489285033 807174399 889572314 899891753 12303553 731280232 208146597 235895749 561190236 802657700 790154163 977058892 74334295 751869296 621065514 819512642 182389506 811161216 831034667 893955763 467269066 792578357 400874222 579510312 469554654 640488986 979142503 982786398 752730619 861805019 5449373 483890883 588191918 859763283 761039932 806712358 212628221 499018593 647955166 701543697 741949309 950599391 648941705 892872609 494498388 786747800 523189247 590609245 862186500 956531925 13886227 460136865 881035309 941933379 892812922 959095685 203679109 272487906 831869361 963614883 688690981 840099215 833597488 848546770 320873603 589930346 307419489 832216563 642869160 959159966 456397053 462635834 343998776 354722917 503409276 798059037 765859242 784563417 760762812 981673214 3516580 261174021 940843153 941998981 97916218 159676770 905611776 920925437 512249567 607737271 138386316 348697988 241534296 644619052 426457875 674132039 338910407 766831452 730955073 889321535 812525850 857817935 943863884 991784728 862174372 968130123 90627182 721376812 556946653 633640286 626838446 788766627 949428973 986457760 483362906 872281409 303532266 896372441 183867613 968973029 821544651 980346910 746930893 884534570 471088989 576730240 594144269 841971634 6654476 609617208 731021637 977171678 526489550 824318815 271047847 797329485 976244361 987605740 5058180 411165437 584050665 832021165 897070374 968738762 195577840 727447754 867762044 905652790 966861473 999260233 667030725 771942084 37003092 48763545 815794882 863119565 254835192 562866351 587909206 908052107 9520461 625821525 94213393 985692322 269362006 577742101 226399396 787668912 651613437 680200419 345564518 889999488 730976888 994447052 451025441 847334682 901329810 992885837 626533582 917371233 586373729 855794083 393323244 884660617 744715544 996592743 988904356 994283140 228795078 606914353 949452803 976779248 877305812 980554493 367214618 987499149 939321798 953888656 758881926 884581378 311882134 548263845 824412879 851153870 970945493 985704005 353253374 882932123 961404794 984302727 702114266 738420512 673893509 770587126 333721310 728201985 709731598 797087649 245966595 987393775 568076616 736146916 298749206 656062695 708185379 833874604 874379868 917547966 530970423 809495521 452746384 541165565 408766813 651090221 325177542 683311086 129434663 551807457 892823758 964075893 518632752 704032052 313510024 336743519 544282193 787901229 762643971 817039809 989734856 996662947 513550033 876555856 615601036 914025357 708711861 828470223 779502669 922208073 899680817 921200499 532068023 825333011 883444303 964972264 674584509 691038223 116867208 512508950 988289691 989685089 158540983 223864078 651920193 911051386 179184162 948557859 185455122 197982228 813599682 976966758 936442898 990510781 295203854 560756908 222688249 555725253 644318380 910586769 984216019 995295410 738352849 774110973 263831262 894780683 993019964 994031543 740566880 840540016 804067116 882057627 905293265 998474927 872899043 974101728 419986807 605324054 33845409 106566258 401543022 948279116 702794109 815077765 735023525 908401164 852245812 986483608 956640401 988647495 97508375 263313132 171874450 474304235 250774591 954370250 113964784 569221011 505610868 840983222 204380563 338470538 766021601 774322128 87817256 384479391 201997326 265954352 702813737 988794333 692578871 882712416 686002720 856022323 718972535 740648943 18557528 901075024 604007012 792277642 832524835 940364665 11161385 20050620 964840957 985319056 585869743 814740177 165152961 324877232 190747098 766008242 453695460 731632264 423301604 980528074 821406899 974101775 486348769 605271466 659360897 735517357 844909944 903760299 209992101 642627246 45148390 642579977 709195079 943619194 886520011 888047954 497426027 695001461 828183292 903144553 594952180 651298876 778828955 906397433 136113992 336431829 499893704 716395469 87696758 931479358 56032813 804439413 924543466 937726342 338477219 352792743 793525981 847564522 325073533 333328853 629784627 685875986 931214137 963369387 900600217 944424513 159305793 838617904 723504172 801591767 420936219 693037414 728883413 915990245 563392264 813310150 526118600 764933465 214284583 967914308 721617723 995804637 286328259 399221430 945304962 990162477 889370285 907053092 270128825 843546598 997758797 998944571 812077432 984949006 756505283 891923403 280069502 653358971 753801096 795395431 846859557 884212570 203473453 240013858 381337232 469843654 840707344 855834744 67526362 822727001 145111933 161524392 922132404 993029013 289299001 922892120 549411079 577982388 959013948 998720045 295891386 448398204 404378929 689901562 828994158 942797156 448887736 554184007 469427703 780390794 570133181 966855668 235732515 342079938 370583711 689965176 37629590 299061732 845522341 973179263 606635921 931953881 50149247 817657500 948660438 983456665 968230952 969196576 76338720 463997160 777719981 788564428 878469850 964950728 951636471 996780943 349593263 464057680 964161092 983240581 206816846 337200452 317118158 546802140 268329990 287299214 796836792 976278994 974529323 995694122 612917986 751317080 810681674 818844403 883007814 895535320 979419190 996586043 50898293 445088465 429531220 809514576 870797358 970549674 37201624 45786945 689962283 928699193 634160275 696978209 184766894 479774594 551006211 690887484 73523891 441280996 298128078 612909495 821501588 955982513 415784624 636178415 381361406 526763326 957971109 972771992 24884486 301473412 154318524 931892674 618386957 823817835 715962004 842901069 523904469 555841302 147049586 516746274 438308019 531394180 363054367 627598603 725369068 778136112 877472742 945246776 729778141 748001747 413566436 452318004 561535884 850993475 550200038 906906736 201434604 513243045 981650117 987989615 942309580 967503537 149700402 895880463 664754395 804493760 414070394 419860478 167185046 334944197 738571374 892728109 507417609 983219797 66990871 951458488 872706581 905968860 401074479 911121023 439576209 960081329 45251305 50492737 644105781 874543553 205075234 591858881 402421187 898155773 213962192 854928933 579988759 970147407 849577872 865959453 959322933 992000434 284994543 348525543 29006388 628495446 622166034 714876986 639920697 770764224 826419991 865997261 488039414 950796609 219489876 507188971 703571844 925622704 465423763 758721572 929046827 945056802 841160094 998879960 84788194 294783609 969188478 997184866 573937775 710497083 564316267 889803973 5045289 337368251 301412627 736475220 916099778 936890910 411850310 789159289 201813403 410364651 699408294 971923140 603326845 764693987 878670412 929049138 396287893 985793493 987563498 991864680 884400154 982750049 274664716 760529806 971979335 976338599 429974770 781436180 873508398 956825600 943158419 996136287 159110366 278674341 391651970 433262790 889672674 924272484 838868441 978116487 389243182 447214005 706933992 941694298 494258154 951966177 347640139 741512633 666840038 712149899 364775787 390183203 13615985 398536352 349973585 657502150 564465875 703150542 950675412 993135835 616909899 894187607 138637838 148472024 77292885 967473518 779065430 835859261 484228490 628149243 44773650 787707241 682107545 989342471 823821200 858491558 208101288 465350879 238049589 705957234 896285936 899949100 544155851 895120124 35574517 253234533 948634597 956381916 7088968 384546733 474547414 995588073 168102969 825980822 737200439 893712334 16347745 920114089 731130092 813359488 633690984 682759925 56185727 487778989 380627913 731935412 88892307 474483687 668877700 941335278 45964799 541964768 739392068 924692730 563980795 662120240 168979743 987596206 314507444 896348608 296868767 956427142 978574100 986665125 300309694 593687637 243202590 503040123 221839440 783568207 424849306 529320928 373993049 609782015 707783635 828895246 776341637 862627953 564572967 854254860 947139491 984544150 392352593 430452903 142082525 151340382 202573491 596259736 810338284 888353513 731308273 873574991 853231219 961887578 901274780 980116924 455857049 792675888 929608069 978017167 520335083 675459861 273372662 360616370 795458436 951843301 356350317 539764850 656396605 749585879 754631802 914145030 143575026 603840911 167512974 266381875 138690490 738144104 149295443 399248846 629247450 884897198 858282776 952059948 486036481 543740148 985951663 994864302 846867517 934574661 806141070 831959955 570920818 617773825 920981888 999290987 394331596 655526989 612602750 920025722 915071897 927589229 664636218 717420551 533297705 537027662 1831557 590159140 372453360 801589249 778675705 853454552 412757882 738143758 894028662 989545482 234904537 535466425 531626886 554481199 189101667 334043685 131252631 419843510 524117378 617968931 343308949 499161956 594724341 856743871 360656514 422080894 768911415 892521675 928637426 952668376 775972583 951302404 357028508 616084909 620449836 921589464 17850057 26133645 489355239 744654227 426203803 868847755 507013033 832813548 936485667 958801351 699117967 841146047 554547388 846430568 248908065 896723584 812375899 981035248 812163610 863073670 632006940 814396666 55800175 579463479 770474333 946303232 130599970 824513206 781280553 927375682 310163744 715545897 138392088 938787204 709531035 794059342 321966398 495460951 587926266 879116693 706443812 993293439 867762314 901233856 127883506 190197122 772983761 926648721 597427555 742908631 336168287 659354575 308129831 867575216 458862452 887136215 849936569 878681557 760521816 806037907 567189833 854111994 610815321 771085348 467266729 500949739 889543595 956850869 77294423 844141841 988441923 997411980 236367135 876373697 821611198 990500848 116395602 483457870 112655993 521901516 768923220 823295009 776015508 837171253 537586712 644498964 868414000 960157852 549367346 868732835 209595321 539309628 155723515 806377160 385643762 627859414 183084594 421078808 832010373 854241607 955889671 998327251 625800622 667791744 899867739 921009822 938625549 965151801 780728938 939717148 710197491 864964902 834443458 911879003 645518062 740315656 806348215 879541079 549211643 873713598 113148390 298821262 157129091 884575568 303804945 440174344 488125428 764286151 170853105 946794847 286093456 970922094 603994845 971153243 562325846 848416358 235234002 397490292 454443322 501304529 390759455 872143744 284593415 990087993 159192219 888900035 867298912 902145911 831661278 909591447 674418472 938993342 687842072 725618929 640221720 947236647 278753390 338419963 433917490 487516354 42531812 809236493 335716002 838474350 249550908 527036971 121761797 360423027 840870573 951819545 79829268 500050126 748608781 895592405 386737185 713042402 88927279 409738843 730021548 809922794 998577969 998837326 509637553 966152747 679170910 692551910 929772113 944400474 109859082 494584492 566296092 629751101 98007396 863434836 645193040 721566100 387867966 799954166 446477364 537178405 290760080 597389232 93016878 515581478 458965437 861978528 536588334 976826399 783826822 948751184 815066025 853793693 415982338 589512137 310338997 447987747 681462147 777249512 779730861 815719849 801250992 965077270 974223651 974934156 343955010 592228216 433706139 579965501 322389295 835378767 802827310 919860200 534154774 673396159 990216987 993398180 43664330 905656718 688469047 746198741 799401276 925163539 610110085 959783481 55450599 988293296 582230565 840770021 228946440 703169487 404821748 900672562 113235080 484410271 684691148 914222336 2878697 578049784 506742176 977185754 196905270 273028944 154215616 269968687 540469257 816845206 418962798 772079892 470394874 887549044 249374252 603734845 293560590 856758904 745278554 883476145 556970078 663604006 227191958 678902408 455322896 604937117 670091263 948261125 912004362 950022403 322462101 612331840 905148957 980873572 322057491 773618146 709202861 989888001 457609818 634142411 149673200 659242919 336486821 828263310 379682436 461112755 378658830 633862240 575700506 763457279 485217195 939924614 575065661 887160077 381352698 666878983 807220156 813566660 593539707 773956671 412579397 603496411 972859620 985473651 940094398 947223057 707789072 893640639 850595993 862892681 669046429 751530170 684762127 955690182 661172243 988218072 28407672 618158282 960281951 988278593 18784520 610813661 478971803 735226444 774134506 792477880 492789704 832618481 964395727 977466455 886262816 967593363 489002100 994928195 30212270 898343923 887389082 905148629 706494686 955940739 460161837 711668793 277732239 690914592 209124241 360380690 276903192 966199225 894816626 955898728 123579386 883268843 280672903 702052293 179225924 404921568 116882397 740624249 653830154 898474639 318327319 985394990 8004760 89623644 155674827 990121696 118898145 901489290 393949190 904247331 494425287 895567925 165835403 383000053 590477169 876789404 606170489 699203211 652232031 842129463 933902769 994900564 217647562 919233190 998950080 999056831 967893077 969244253 134158160 229373685 438705720 698435003 31467046 864773269 421939575 596103143 930219138 974230454 851042448 900795606 954060785 987168623 749076584 977011834 951437722 974210220 825715141 912442666 249002428 605475216 598535183 993888116 165148861 404200278 855486542 909866076 257909363 826499331 297331435 956765302 366192936 956666954 496306003 845000007 532959396 695645612 175294004 797294452 498680165 961003809 982214677 991331472 212740834 764428468 547390473 708481323 390952241 590388635 822729335 886764496 225573399 970440037 844295631 921481548 199868264 634578229 107101055 918996493 877487865 898865650 994505566 995609328 729931542 789527790 474524862 488320847 319617029 683363623 68977993 525151778 360884430 810771625 610280173 695149664 84235909 784164804 435358204 914286862 553947148 821676665 383041758 463336513 500417783 942639011 797352912 807286604 175806633 281485438 692265014 812685739 496666750 981791875 505013102 580002880 132334738 675603501 820838909 957737490 640380576 775380103 589291583 689458949 876633347 964821541 81619139 567038329 619048696 777225342 420002602 447303970 710557362 820779181 919408652 963416413 929908302 943983407 337936729 394459570 945913691 959798162 619615986 760171140 430172505 977213866 994093692 994949700 297317320 336349674 348970084 780178892 235702999 752184378 889389724 911264796 227405411 938375041 299754040 377434621 454048945 481706874 905200349 965417229 634523024 934633405 367444903 612905602 408042356 955133252 454593073 476065278 568029709 828470983 584952128 660538132 212332792 251778264 638956800 975491140 301319486 407503105 200122059 469641719 112806225 500015439 63020054 652415873 881995307 898447255 190315143 767023261 447523467 481915589 898160309 901232325 821179302 948295145 305127614 823411008 521735590 957924634 497010463 736747660 896630617 940346812 838871811 904538154 15554850 705764366 707495828 870157797 739039655 857993204 50869988 905084635 668155020 702170918 775261375 926576645 300163561 452316079 780767313 894211036 108229249 969677778 298143515 787928581 403204499 636201362 237166334 566438745 683077125 759274994 104365124 256847635 260786914 676123699 508842039 538591348 878923844 930177423 705776959 963053251 117403956 790757161 503517335 934168164 616722100 933879034 598560818 878235271 421479035 882713567 259919940 642167686 270363254 556440525 217300063 487058841 276629528 377500624 997858867 998127026 70623929 985655365 405718840 460049610 131631787 726646412 336020004 424462972 254506644 743427273 64473763 377061502 788562388 956629222 981268476 987868727 81761429 420624070 659246993 943666901 392371097 662332600 874322139 951920296 557369735 977547448 796410890 869211646 608065668 665467746 439811448 976606401 697058555 817593247 657640679 960870828 31459669 874251832 959612255 970550207 829093918 884556708 837473967 919991948 169095092 457434532 686948509 970761942 420503283 763933191 626734783 706008553 677691198 872084456 546071758 856717235 200464920 530191955 233514274 810611644 505309048 590395333 632580003 865235186 939618421 989330766 512452695 706898759 646548997 759319144 434234130 690224670 187111098 537331798 170386965 557904869 901737777 936129413 47939096 413399671 502466696 702797034 74302098 817217725 309123121 672822523 559262076 963749537 308506673 677217943 581364682 987233903 287663072 794805539 82198181 353160142 336051507 840722659 668308803 933036282 985361153 992204641 572074250 854075592 97616609 795049613 484010859 667111443 460478029 469513105 79630165 243494245 491207069 777476287 918507318 943257439 7608360 405734294 436698304 807043435 357089807 741619998 227181872 930805370 271485057 962517554 792251574 878267883 898867477 917437267 163422314 563127902 78026289 801854597 82205621 809886632 806268194 859602394 89498780 347091262 377755131 965855667 473241717 511870360 971945289 998871196 164713994 993748287 895641522 919813787 794202604 886849474 855156314 897977984 93294584 510626548 384500819 858928980 111126255 616456226 881048976 929135561 789997073 916370804 703821850 791953638 327199780 527432058 560927648 918355494 138518448 184116390 860265598 904358878 144114269 925777266 687597565 903500389 139886462 526943674 628338467 825171997 39214671 581588996 372768868 393400572 569086056 658988156 245283347 260415033 768115558 988244038 987918444 995061380 300199955 743830583 73001158 526743124 138864631 891184178 825613483 984142616 108363256 513405202 841065121 848690839 335218340 369276018 544759532 997322862 681515280 691866762 296526857 755570425 951028635 966326360 977303314 978168179 57916132 72379929 996726565 997184866 389082379 614955388 955049399 962735069 311104674 424681759 985604083 987058994 389571674 514503013 262589265 943131267 628993472 673665159 882833002 976006637 576051891 895604838 91456100 353195850 152034121 765053768 668128070 910962395 596500185 715648338 876813422 932393639 38289418 199296713 595921835 873323901 917277055 927364923 569553643 814712161 260422068 347826926 270179880 929168346 363476779 487844563 751327114 975646367 288371586 411344444 761421010 985966746 374530554 505250010 81779743 793234289 339402304 829826877 795278705 846987647 122344465 365793532 424795332 907954920 844495694 949742202 159690439 930752078 348690540 893981887 81616030 937277699 508539491 871964736 323261388 454044803 913150065 979737479 193594958 262755315 620972010 725339426 180243727 389626075 267120776 863055097 993208133 995443350 654683195 857380854 123143218 153148365 99446905 986940161 591577056 923926367 28293884 36735844 706868860 769742052 662725956 978875621 940036111 993593106 162277263 549189122 968423327 972739799 623537671 695834952 405441526 728426458 823932167 872426967 751794320 861961672 269371168 842707974 601577825 773751936 421932421 754382322 367738435 646940946 66972603 258180966 764792799 814589127 948505862 961281612 943200563 992061564 163663675 712162354 375061599 442112538 35985656 727561653 340806776 774204173 57104074 820693697 379368697 908587173 619844811 933719201 938455539 960170036 145258180 158004129 953688511 954741381 589064243 953920832 26215394 119347000 465145616 636769437 476277322 558472765 641884689 890402158 9604508 541481786 562980023 583860324 275153497 507084750 347284462 659544265 8449210 940829790 358287021 391484613 248285203 681662851 20222945 941359711 793026466 939785376 193397390 344197701 51218211 895726499 279374290 417043585 638987304 873025155 50993248 996836029 993660628 994990384 879118947 938606522 386896423 708022013 583997004 712394511 908943407 912302544 284683997 437681507 296849059 592716534 477638675 672136396 662371864 945481346 370297124 510238738 330468378 951277631 346826962 805113550 515296521 762196605 124055694 888751889 486402718 586665863 755991401 889659588 74305070 570239823 436807835 506113446 655175632 772397667 217038665 956242380 838834912 990040036 126628747 921904933 960550529 968505102 799084114 811928375 450283156 622090113 370502400 761647233 230664130 992524939 362781742 591529677 415898779 714122765 612236929 864065585 127292949 202190434 837748858 855569517 426512984 479081245 623620374 724153080 735795330 753125272 501740057 864682282 321916450 419771338 523183813 650191932 276049674 777652927 444388658 795266912 879492326 969136436 952776303 995149143 276415380 404316270 46800178 850163776 671208209 829173857 866219544 985337751 974055487 980956474 900108303 996721460 709755732 755536009 536512184 997078192 939729376 975958610 346802726 347641214 38679259 589932705 237496214 326560422 410269572 467853865 741290596 776128144 657764044 795155236 572269623 802961047 784321850 907787576 155470695 410778946 146019052 808224699 238940461 407933256 802687400 816742880 950716188 974770860 527417952 672427442 259923553 856441120 58008176 101753369 649241363 935371027 330569398 878120169 45450949 368607060 12929545 694424477 753482455 980224547 142826183 678906262 775241939 791467041 509263319 847625741 470670017 691546264 409215729 631696359 331676814 661600058 606382749 954009218 67940713 660353233 677092165 993847031 317207180 515420848 518665037 575023268 991388754 993140339 321398087 484489649 285961957 857235482 528664084 677172325 854115092 976558273 44210434 629973514 412986944 654271781 327944546 524970335 221873420 955696009 569529105 611917265 42238130 420917599 557192992 673583683 189846725 610769098 971616372 991506659 521511576 692895482 756526703 895994442 163879980 296943262 133678768 684757188 634665809 847228986 321836870 541943633 784658231 931297103 105848706 548787953 7199166 237522936 644910560 891558015 290059611 639792228 679698726 806403101 928008322 990629259 730418298 812341012 824950901 895205414 573951239 816687378 281684364 751303308 320536330 774541481 496292134 904044579 647232217 950248934 846729943 863851691 321283797 497283634 915996152 946243352 110286577 559603730 194160682 558890199 411674244 536402527 741921107 883981717 916603503 962444644 614925122 743111570 875725752 916861533 702828019 735656461 809095300 841976465 868539476 943985078 609891134 789026416 866741135 944576838 142165069 929520856 564225345 589276884 108180189 782589621 376841519 726261646 521738415 891290633 288263595 830111977 377290217 783162400 506112271 987599961 723640330 972030578 573228618 799405882 941287896 950143284 302264270 925443826 431073166 735495648 709771348 883653715 511034129 737823071 764914910 907180031 537734590 633350851 763588801 921709678 563958060 853653984 824821893 882060776 233138288 510092328 641628989 891666398 221957666 971012790 78495068 164410136 859016957 961303107 714041624 894726634 61641704 807804139 920229856 965318278 636657388 944173521 418976006 567821740 499650125 920783737 326445707 667797241 305156959 980585540 145001191 906892081 878594600 993535848 717214707 781724970 922548252 954708840 132351212 907387968 256388185 553885664 87388212 859585048 793094197 920762306 326758999 496369694 425125177 497960105 400141301 738845551 729560211 757828762 139698362 613723738 506148659 590598804 616794435 699701961 17518533 971041566 142591185 569696026 833525922 962469508 404243044 663822362 986224385 987769210 118297767 862455872 740110023 878820042 800749729 821017697 214119888 544768445 440619079 655068287 688289070 934061592 829315928 845366064 440917224 533932099 620942533 705455022 742281532 934341304 48268515 422127977 77575019 395433060 575335928 870801018 699203229 918720590 870669442 904124214 203577053 308021914 139395415 312153959 996566892 998208629 949589383 978721701 842518503 877802151 763320438 940651935 214259934 411674235 733341499 750437304 593277943 634695021 394108195 729435508 269395271 361314633 205227619 336158809 219706682 405954649 8162907 875816483 581877918 883237538 244502629 933311252 78710253 277293789 267064980 545073800 960835901 991682908 76537980 441812684 535321633 558447641 625421117 852121436 700079584 716523376 468009389 768587578 187774274 931965197 929649901 994863719 292703532 515307082 33728721 530999195 892204026 994796940 861198679 925634428 311178022 424282955 210048397 927380754 396830633 465618410 568000705 880545147 547258493 600043240 737727910 924151433 250606208 355600230 886997312 982657609 267999650 670255978 558202927 602221837 189651391 219633971 108361232 432630291 60123472 401219517 5202250 443788350 211119125 855926625 835594280 957088197 789418073 993460869 979436760 980313101 354367666 747744008 85050587 352520304 98661613 459559689 576197176 959635019 648380018 952296423 589348877 858259743 2617824 477220481 871018560 987508636 719518615 947457980 951365171 965672406 713506327 970181960 906056204 987332089 815813111 948832464 464080182 966924963 460625815 992385071 852050230 917133698 142810431 513135813 801323630 850863660 3495501 415214573 491515451 882753523 392296228 828216306 868669080 993359230 844206712 886619827 774672753 793303632 899869409 917368666 716028729 859836876 932739290 983614216 32938475 274221214 118287178 873352935 75744179 484972877 743083595 777583413 52439117 299883844 125700435 347000917 277799368 886300784 623594589 666254091 478635958 600323488 375043336 818588229 6867772 569228982 609173306 648133262 164134131 390630727 154026108 269459281 518561649 563818924 662606454 713820329 193241194 601442570 440692513 661903578 337051633 748983139 140806349 468670683 365050382 970689778 490232501 895245384 650405186 726376472 891805937 934013904 864729768 934527565 892167741 941966143 842840282 894168207 686534863 761822551 124670756 634521062 782674848 800315440 632760737 823240827 40813730 336485686 52275282 318090110 904463586 974074482 225398496 410723761 652529884 804793664 684690427 914077098 187006729 259027225 785424314 847103546 4965093 692970507 181419572 753025829 24642717 942283754 48329440 809182946 168067783 696813880 970638929 999270070 346902076 708686403 609152567 800790740 234973301 717852566 895479722 995248750 10091102 427217473 643650912 822303264 492293680 998278709 954719809 976660233 979370085 993293022 409206174 560707864 623813804 878173037 829180946 921188973 911790371 945629333 884098794 884570371 468627276 935088809 791369629 951616642 765427845 820157681 658203585 966245887 792457755 836439896 259611674 780758547 8695696 261904405 758075982 818195328 258218283 365638025 963102872 972219607 916045388 927056500 693729589 828277501 890964483 948917780 628655372 822980556 411546349 437351395 916621954 983254697 424767556 960859783 977995770 986835023 398806924 500355628 487268372 919327317 660422464 844266512 201210102 884568729 426881706 962026003 130169616 701035623 348593732 813712330 849612687 945366963 808647026 897856551 162414924 785685653 617747857 801856410 133994059 613383942 955770348 980456435 319970580 620076210 953130508 997220725 412084898 857967061 551204065 720376175 589027156 869700890 345178364 528889481 721125481 989085368 868302066 957192813 907563637 921204028 355232048 641021168 969714978 974582856 895656343 954892745 712242102 922185864 207814574 218990197 939036530 995257696 575774715 893850082 67783437 563164800 838079584 871786842 70291288 258058188 851192248 967848291 21442475 671385403 634905361 660282306 229969274 562395196 763008332 920109073 189288251 802910502 35684970 502283066 22252554 86951528 228394062 872304399 368625123 751631924 647808787 795756566 943067321 962041586 829187966 842679516 819413374 923977359 849367341 936459049 129650368 816604478 860337443 939216457 882399817 900132335 663013516 757372838 769640390 782678386 455533376 865376152 664033858 779216372 361380188 362874078 855199682 956562119 217941098 675753936 991491158 991596354 755500311 875205113 493453453 828532698 17841787 604211755 14034936 533768935 181818645 673520184 934734203 983735064 734828156 887593252 981175035 993568634 831339399 977640210 531659238 977947661 41865928 202723738 475661638 584499544 435115116 445475990 219773770 781102561 192906346 693815069 393621759 446920604 162417235 690037462 724419528 963178977 903956002 968162573 308250229 702423024 590256355 666192771 171801706 287356475 168624259 560479809 623925334 734638351 507496627 584580303 679522260 841144043 854295159 912168110 90029044 989217658 706123146 912360409 992741996 998874524 261401090 566366827 269802856 838679378 239961094 569319358 490009805 781234692 428651412 970872930 588148903 827463038 556008417 921736627 112102194 932160937 677738005 766879742 582551767 804894598 584485191 699288669 74268973 179055479 621824121 748127064 161232375 721057087 869975985 963731529 695163944 854187467 456208323 525445319 97654951 561349500 809323902 840966602 573952063 980808413 479207309 834522259 817163895 950565166 916900826 951545871 617965932 873412668 802250978 839254999 966222147 998840790 322649273 776501458 845755024 883997208 347255327 935058324 208576383 481595899 766010766 948954950 60546105 415128091 805263146 972305440 114273732 559826976 213165577 633214241 626588532 632969833 259561428 789476502 379076056 924370042 12833766 401682373 779686119 845342409 837532968 938170995 690634601 753555831 595275329 795739483 211016193 454177842 62398223 416210116 146525639 681081993 827812845 838699774 95671842 392353660 312283763 616795990 73397623 138700351 51697174 418544062 818423216 959890092 557129422 941167857 17353383 650171382 813260672 836718133 526428170 819495834 264899075 775221951 764663184 904521460 255790608 302000585 687856612 752669936 440401132 568897392 138719705 313296200 627412386 703503844 131097421 301107934 615498910 954818672 720050267 865033015 740689535 814481634 784651373 983516000 875883836 979100669 237301143 661209263 283408822 374456356 432060824 631020040 232690411 959612715 117414945 165708282 480177963 939484139 213455237 304170413 194173195 879126925 157890156 723350192 104690478 528008388 661020630 783775098 907716797 934057064 786355319 827072362 598872459 731132560 777555674 856824916 344425899 665624286 690900516 897785552 201109595 429979898 169419733 761977261 726369612 784662661 304993527 356373125 655604802 996769215 763968492 864848011 164025287 363217618 838639253 955657691 222775718 935244259 515411043 557703545 400517622 605427024 181162418 724895095 318972130 626046653 433408487 889688654 113853422 894345885 667173653 752861456 470876568 976034139 50755207 952981931 652793487 779355760 808142232 987841620 895496516 895845140 229131885 242803019 214595148 879028569 575829054 580853928 891700889 919874821 509732652 600380974 74921105 581532252 957099695 996966344 393371109 613372452 142579533 966521092 579805957 928358238 380588510 770704306 512541065 766081298 126031156 947057086 790163902 922418010 443263933 612858763 802606561 835879560 317139169 993323125 625265959 696124034 50670087 623850635 92489301 743322118 633961527 814637589 693538596 977655145 27202550 192100509 681260567 762102491 668049218 914043178 78273269 267636095 324357463 821392043 656249132 966685146 810113445 826689179 380134352 504438318 260699749 558483881 965894559 984042112 368519940 747577637 289519865 573901742 775967548 863739921 647191244 767291956 171489986 177463714 612558147 973575189 329247282 734341973 70169672 172554814 928720386 979750000 880289410 900537293 8358366 364675560 729614422 987019912 189649897 647513004 263222280 984075995 848781951 998302855 42371664 352824537 921822592 974911041 989398018 991923575 9095243 801199490 515538043 615560945 845575986 963280032 863155327 907744439 947120713 979111326 292168642 920718889 601277237 895157428 421190681 675648180 174409810 890392993 236748625 978089940 43836304 555979848 618662521 645878209 960539425 972025929 565207829 949911714 710360801 859193067 990195633 995595579 57879954 423125217 419225961 554903131 566159433 640869443 839223403 988539197 987714901 998028697 979214112 995399329 704598904 957238539 439562036 698413491 511912274 683151576 132075364 386969733 617322557 934458719 432356960 987705217 358738092 675463162 355332844 984597857 744636158 789335034 507592305 978962944 742674038 827855402 897360111 935539459 91734353 971438686 55516235 460391318 438701488 721527073 766673351 960229666 360302155 739029004 97455359 537651913 365529493 764595231 169078470 282582162 126644554 818737396 953691973 964062131 346679718 382929673 900444533 951499275 738673835 795257359 385890123 403577477 450151570 888913345 186092898 966066811 503088173 650968515 436695095 815388117 862964068 972784678 47436232 461093277 495964621 983354766 837631307 984639311 724281453 867893510 442729613 874890828 112738588 664529859 482534690 901662545 208609193 738484465 938756301 961766090 708103259 947859493 506103474 515746132 433927854 934659670 612500454 689645487 870283636 919550368 136456316 446124139 303983252 892255092 905608148 919290125 514079994 626094578 347560686 890271738 706396017 776989230 69503617 975188322 211786206 489723846 670338880 870325806 6547892 756166578 223314976 685442315 868605096 945553528 348874496 825737371 369649123 740092998 981012723 981743933 305346832 363168979 220159935 595620964 330105089 676659331 888829318 894031293 725116327 843631684 836634803 911573239 120849870 145466488 506345225 568463616 804899771 872500170 281146602 424780444 82005710 529192311 545975630 777619343 598415587 987939626 442311419 527496083 765769576 977080243 670190113 868899931 644513447 959268577 129066123 461356272 556344749 933308024 488822427 772890790 300896453 304816234 653374309 962921634 980864153 988368361 647254892 813775323 692201443 953343824 449390767 762040125 176428710 652744570 125610154 441670732 323273156 847623409 385120205 393258099 425356856 756944466 244820073 614569319 614371351 637232152 309488310 720073137 288249722 714667875 882353135 903630562 112634728 503114321 980735747 995226230 360983426 866404550 761143304 794534229 145320091 458043504 777293738 913721567 257055547 770359812 308210162 354496684 101954349 104214806 861580050 992582430 729451543 921095835 663254436 857895929 245283490 767631532 468136851 564999078 235525840 726867211 16029710 423126471 251511230 534401672 605132257 659692250 536854087 710950328 302436131 345421150 886978784 997658529 814864782 828042307 366885475 773614494 865661783 975070215 627496348 643476518 445744897 858911141 5829299 744375236 205742919 375821331 440974602 564055337 346527910 852479372 320409524 457214978 300142665 921249017 522297899 935419379 95798990 589792719 680190880 694957444 403071796 658882167 182487957 204166204 272077874 809122688 695585719 824008180 13588226 126042303 559346973 976772522 612071997 827693133 687753523 924016156 900356923 911652103 7161283 488878652 363693666 985381992 314158476 750697707 662034542 993281761 20011668 65364506 339429546 779238333 200209339 503735505 452710518 729116767 219500447 508828220 83463629 512560306 586142059 633022777 699729874 965568163 206257564 656119883 132135057 960668288 71817848 886203189 453029482 993192754 882432267 962150264 725765013 946365339 508236585 755529259 100071522 757943867 200416804 316011762 802821763 935349106 913836127 996664764 652901161 716657947 225614984 596920283 86973655 566415382 689490759 766568809 353186489 963201029 108521415 741134817 459096033 800687705 675062031 880937030 510659481 822764648 611589277 612417249 137958514 518718315 354360061 954328180 18624008 453154892 878051789 994406295 915598487 936990988 26495583 489247670 275992906 952535104 209242103 721014790 634922614 818805930 852857388 879173567 293279042 861162069 984324163 985300078 783887243 992723998 148888490 702613508 122271964 394660741 417479453 657809174 746113028 887375580 721310142 851884613 711386808 911754279 3472020 14248240 631958854 963808031 51572332 343041368 818629119 818936573 755973069 771173050 917812512 985819292 463189541 785008375 636119465 988816722 835962409 977294593 568438885 649338482 530420600 598810339 311873014 460999882 700158886 742537713 119823297 319038137 252601731 471595095 878365164 996437235 211427360 486928487 273145643 700639777 897703138 972558304 695054585 958638506 540907978 900818634 182962566 622864556 472076022 785262554 164057891 256004283 764619692 939673673 653495161 677030314 850366562 972126953 201577472 293869698 885656547 924114997 107682483 639918113 464583326 465182416 262751712 265682109 313655962 483241615 339271111 744150187 423288236 729517921 784503772 942011309 223843829 881516165 756215138 889032040 177675850 859938601 980491603 992661205 562376426 786405215 732011863 980040659 612130102 656826990 571894018 822811530 810771545 975976069 147925955 442658483 840555407 964540230 545542530 554125267 902314273 977498695 371102227 758200387 65883511 504335229 827555193 903066081 418882502 650197112 840670369 910459801 866218257 986828258 456244467 971879609 756630477 894648231 35351974 980573916 48149029 523632863 567436828 641793744 715825182 769862082 39852343 118378154 398013876 655839785 973092166 974294506 144239931 608255743 133600618 952280280 467367868 811721243 794482506 837938775 348877498 488863567 416202830 725580749 576097492 820021381 520764010 915268889 380684319 995532710 995700341 999327580 248196988 800025591 419986024 714052512 193005442 258251359 305655758 993376690 375242201 956439487 483002535 697740825 359080114 817351458 664043439 757944208 799455012 828920764 283290002 587747924 5436328 508691069 869086345 997619868 663360345 663541382 293574488 692510261 561074245 782684646 720070067 887447125 861498327 867316739 18183432 797274780 706997211 779442225 263258824 944782422 64756990 943227732 950011499 951882184 521185112 712414268 823883179 920943085 472761887 971511436 329212484 824631469 169032671 690864795 468009085 985096849 768200701 904323112 163912489 478947741 973860423 974965544 342660910 951727637 806677595 898915564 486726037 865477459 879285058 931535223 261817435 694903402 458862237 840630751 951914567 959536642 742846846 828547359 666749512 847307635 647476857 835611581 266550588 847519355 689025535 833641612 982585106 988210359 927099927 965657223 663041605 891488415 197718678 790001629 579652861 789893065 755695640 857593771 807196109 830095654 367694037 795065371 631588648 660764727 162272581 831599502 525858282 646298789 757252905 884340434 800139875 902382499 961753551 996023940 250798216 402923569 209043096 823228997 339762233 572305085 17712334 372493225 171733573 922800298 865701801 983864041 158878661 870763407 393121563 477955980 168057657 347766352 320110182 888696462 994607112 995381626 112316760 907760621 134343778 493396216 2294903 197127355 165089883 224309672 883400110 948032594 175097745 445804258 546088680 954395085 686451962 795681545 175143502 468795312 199953848 396687817 603288898 961565473 80579505 355102496 418109524 598584200 935403449 991334013 905020122 933303355 287707943 700305860 146935563 756593972 947742851 983276146 283012772 916503689 356165176 490897429 859678996 862186943 262455835 587100181 255243942 272645862 212146685 857687029 661181929 978987623 100531806 573708337 947235740 995613638 336565732 443435430 470508996 886108015 543747937 746736276 736016242 831933673 282638212 714735556 831558379 931029029 685999918 888129426 174180504 350362910 887565382 913546937 528398911 564656527 340486583 725630249 599452668 943393953 700905415 789930402 468500998 528337371 384793373 711634253 143964648 946562043 7286260 419024506 10587428 436737432 286835058 415173912 459359277 676578250 163713674 280270128 325817266 685528283 415931356 464896923 636241924 709094640 225513782 539530644 610556600 670552876 926694806 945638100 387271411 495971082 713651442 974825848 514569319 534385307 64145632 836309190 615822532 949577364 254971286 867003737 722011710 803418757 289419627 369009380 801094118 824655015 735607478 939679580 831377774 898342452 605058479 621217051 828398400 837987437 912660509 975845031 273347512 849076902 382453148 480756797 1227678 953853358 621232058 918322674 274832129 796078511 139957024 320440024 561708148 782987152 256524851 942020919 413386586 679132025 661707655 690566051 746471345 981950165 854066650 919302977 579330219 729835748 458670453 912155919 486348544 853343455 25363346 915551955 114624485 716193571 944569585 968564087 537345431 679778978 30623645 94763252 143357612 169752760 281358255 415430947 518396322 774938110 945193456 996918196 819417973 978796271 951040692 999315788 119888911 149490653 664080019 985249320 583669624 791697746 789364045 930655791 691238002 753209095 541733145 811118140 430525405 567008771 68170086 358678881 223972984 827668810 664860769 906246248 940512846 996968433 486422728 618223441 67031250 318828756 13038036 711607965 155721722 735906986 866641529 879729896 212394441 451876462 370832386 533219170 707025490 946701818 923737775 962626803 887913126 935757819 931441758 934127148 360084326 406041504 463375151 904690022 921991821 945088211 747193246 861609829 976373288 990857084 452525187 634197333 197103126 790946075 742207857 840353797 12473842 475843487 413904301 780300869 629044465 685068504 35202534 352309933 762097787 986475112 421774469 936296288 555393801 942890808 801888732 900015203 763562837 961217614 992883739 998345819 859461704 968949385 166536169 609446493 583437311 941653517 904006433 946700096 426178109 966816924 628190464 719624902 769881449 814839285 831388034 886507228 489468232 563078628 398368443 949083073 133291585 468349127 493610487 758622475 838389791 994985780 888713958 978519182 460075471 791465321 120105543 258954358 688952769 861154525 757952134 956056278 806785610 943224822 751838689 753357627 573931694 808161592 915713791 963756542 758914755 813116722 541596325 830793235 717129456 972177956 419013736 537441851 398781687 752949797 85714306 660595325 306072970 638326603 57661560 210744095 81170447 831523791 694966214 860325013 852471239 872542917 516606314 710029713 24148162 365890709 113446274 217670284 30690864 296523134 623428100 839961893 460988635 708415192 867236774 893404888 126901244 150053488 833138857 946500721 680477517 837665800 662868864 810809564 770927578 958662026 432285143 823252797 486228235 943239261 934995150 973308725 582466491 997795338 513501697 746278157 818587448 966176645 162742990 426334472 29684851 817759047 860516316 967541720 101484875 509976779 360761113 848894527 70687062 766533123 500960863 896673884 96705877 294668868 80293515 920684635 10093933 391922649 35680680 994443125 139609480 151492604 801625118 898998193 855805191 993848312 963766584 981310206 964217522 981921182 250604996 738337836 141026076 215111094 887832835 991359286 217927434 433737217 972359496 974785488 513857728 742986610 61864883 639085450 347593911 484911021 152308740 749574195 797773412 883252262 196070462 526119795 987972622 997531228 130571748 717603347 338108421 785421642 316588276 875586467 559548702 679007684 491916372 554191623 692701940 751745147 713108935 762776094 601855780 891678261 497369704 744246273 911008802 956343950 523184623 741530354 487293879 741615188 598223469 632629502 301709399 940925743 446702293 570640397 627683414 969465836 524178363 994138685 213013446 400837927 586324332 871853593 678569254 930908807 83231826 275758569 918088999 937084835 212853483 718701488 877782330 979013613 556562287 961175855 181142353 286115204 515052226 845203587 490591978 643409184 756866107 892159403 459278828 899349142 480495307 751361524 994574335 996978791 300910971 521241621 497957370 911329673 84924287 682379208 769562799 913893216 319225722 416852030 716212615 818138391 923139634 949152120 495246148 527092445 318056277 655249500 446397147 590894460 447790168 847868154 607238494 788444054 963525722 988528218 580395110 676240918 74354500 633150527 375248604 542964453 395557626 972991932 368649429 949505487 454660677 649238849 742791487 776245321 129864717 363589383 571282373 849124998 775749038 819139221 946198464 998039890 398891151 781431218 61647302 537057714 300397348 772287311 114157431 886234691 255391620 383265576 259833567 471008151 913424904 969567236 723490920 739244147 629494935 798660769 587962741 920570776 759927379 814483342 131557839 228023380 214818709 375828407 214530807 770013209 146578932 607293339 632707060 696614097 695596093 836527470 973902113 989084167 716613260 859949601 65615575 606098251 36693063 992433346 583198604 816119057 994745563 996437803 924968719 979535595 173895234 454052183 659692879 663138546 160964148 445310387 174309296 887665023 681066476 920012211 796013335 948063874 593148630 983064239 22496950 549446620 70615866 621955915 419669815 883372571 636364364 893673429 946482529 993064575 585230084 904183929 639256755 788602730 913788920 972071123 489366714 920574597 708382156 883887847 961333782 998671800 555178951 788562607 797190466 966539426 516465004 746608599 960403683 981562054 358005845 546696650 963665897 992484329 392406581 485657948 626299956 840479320 291103231 345726522 674486062 704610765 280927070 392766113 479551357 672129942 241209241 388739911 881182167 921315922 272265946 764852977 476743695 506789493 561922211 878389015 568732414 689355824 623364144 967364857 444442286 549150786 651797290 779547696 391468415 759397057 775540987 847242057 861674380 965190890 409799171 526527922 225578699 364712403 458262525 981203157 724129283 748211037 113674735 379942596 883315442 943749224 617121243 779870885 125875455 757552965 90877048 309491142 147991853 655091266 619260668 853702197 61098541 692641438 503675437 504844619 858558744 875669592 92132904 451481418 803774395 911116532 144211025 488424453 813037593 908759406 476386055 523921583 322012323 909379439 676424072 909347397 953298547 959040966 518716334 578663720 735062698 891491226 733677137 904938819 66067030 856504089 812746752 948437485 965309510 987923907 321580744 982961177 984576403 996908194 508166702 961683063 261392717 654146042 368645908 960946519 528103388 969575514 796457470 941189669 984350641 998387705 206246034 810279896 523982454 733552572 487577047 719083048 948565576 994611526 598534832 717019845 47733477 825493491 917938800 995522608 648382357 729260809 244934530 639442747 183284947 282836382 605998937 869814968 766194994 810468657 9882526 105404252 283691639 805985162 612468162 867645463 179579660 991503649 40937788 811305680 242092971 594540904 556746663 947909949 700051332 982033017 22675075 713311561 169621428 482256512 249170802 755126443 76517064 763054938 336005068 646966832 8044540 930523532 836086565 974698188 869239766 954528070 862598837 900846324 723777496 774043616 9777195 226792789 96108853 674395110 49482283 420739928 984827688 997994004 789322330 885455997 575018694 971235433 858519359 859160478 983523193 995389746 568080575 945874700 377008288 840972424 286865423 802795688 144697409 805994790 524181561 579520800 79489905 987610497 524763391 566775303 258035922 404195313 599964127 840683052 775167327 911536239 436026625 886998615 147442281 401743689 535138884 649593711 876299436 904062987 725748019 974049684 101825794 999024730 854336710 873563248 902230413 995335617 443597093 912584714 846087457 965596066 356775775 659197282 624089775 734619085 60133525 410429828 728227008 937087076 202202506 704726357 465588171 704267869 378351034 720828807 478727174 527045461 705462076 795462780 834770518 995851822 47671718 671462951 461146692 724344584 214927373 336725811 827843898 946458855 633571399 988867711 238397903 402071165 940881289 993123745 73673487 596117712 526000415 869579634 958182761 999043966 591734704 736078011 168310672 842444798 191645932 833275804 997491066 998836722 674707714 996845691 932915075 954111164 475499857 852808844 2138885 173325016 31113992 640776167 982244918 993342389 152158014 903312087 636647390 987509702 447756 779781282 90051847 345719319 773802945 922362528 708795348 844084739 483469509 671337340 733473699 899286564 763518790 798193487 631598152 714735454 666735174 977756177 199871925 955306762 140299739 250860985 694109335 833797033 520686074 799552191 560577421 904932470 333066041 621052015 988459332 999323442 755153842 881611963 300329940 329158676 643116687 754762202 856730965 966622031 768550135 864999290 591057327 635287292 777676544 882971657 838013145 839317182 573126665 587754250 274236844 908979799 894588074 932129775 935797780 978374853 815844186 966474039 528779556 891581888 131061338 583715479 730978703 791853305 787485916 842624853 538267867 952774330 686640657 785449038 731208133 849907504 441345970 470945738 149971059 428731641 968404398 997013082 125341875 546418283 453891498 760829067 547201832 858794939 790103205 795241350 285395128 441223266 679904692 685455017 13971941 81089309 97743627 980836705 165664279 363409174 102315927 997094041 347849338 630125209 33147265 849735230 92902752 846262745 269567630 994862347 205736469 579302747 292512970 709247698 288892698 782299550 126757464 781957817 133508544 289359727 746476407 837953887 570660964 908779301 200136028 710579770 857540184 868144937 686238691 898738350 51555246 416007408 495862377 656682778 561113622 817266478 445169200 795631462 113375303 697199167 899066409 923378455 308806350 432908800 696710230 900879867 714982023 837492358 482415895 945126881 825690214 950289722 340843734 967429026 970549710 977401482 881984778 897549537 672329897 865149818 660985775 894603321 522278113 620717240 357743962 991118913 432644561 537988531 949686416 958917676 590256008 795412194 758741164 867898161 415022769 561773640 88875289 391234809 861976942 985400829 967801791 988567889 695018079 773012768 442432225 469546660 542793234 959987741 901712450 955285441 46966375 281478083 304107460 676458755 579934964 659905593 688207720 993766806 886577980 944631383 502915599 884831198 365035453 529327722 937062840 964361192 323780660 836869990 430961065 474646560 513557848 824768299 86091347 886580422 152824888 387953959 344214007 639228782 117387089 570947460 94673152 393048066 88627515 369964462 102765501 711301792 162596579 801454973 408266291 838869908 560014334 799393958 537425648 842868081 730904548 827860365 270115891 719539841 560833393 768901020 986241994 991993425 993111508 994556411 566078280 848922320 969587916 979298468 475510140 750688945 858322585 875236828 674882014 849063899 77919293 582686436 105828983 368270817 205155510 811568992 368671111 646031588 41190112 53309867 334251758 759115813 74019837 170486611 848381264 958890183 685882679 951281970 43598589 530663195 492615679 943397325 838373040 876001391 772637820 792180177 493348009 870034729 847873717 887665940 392041301 532072339 444291242 607480930 729447456 851937210 253692789 928611689 208716009 901713508 896714286 954555531 118775340 461056178 207510037 865146198 961066841 969053759 250376755 484975052 38309751 494198726 365061305 426163694 773543221 954439892 350686508 382823275 807720328 903152155 988400308 990319734 214504512 721749349 740774435 760736140 731595225 810652914 399624135 889648598 449356096 584139843 234154368 885375694 667012874 680015871 209662378 603638354 23865058 319314594 125361122 672775689 263740876 733010361 729287054 906586508 7466991 820571417 977891243 993125589 756420415 886512811 235762900 389262422 620512407 983745434 293471730 567307371 994015612 995101874 457039655 493197530 836121583 959961263 477527586 745421783 291626687 719106897 900628000 919253538 750955525 845444245 602005247 986762449 663789608 749449534 451735372 884282310 496941938 527820085 25355595 132011912 720809340 899876091 644234555 866215792 700890181 723859489 835828566 912549879 537895444 919813775 947410260 983128520 673333967 808769272 342247221 745696972 388628225 870672948 288778116 704718099 42985507 190171968 218131985 578501624 960157161 984839077 301528185 339463654 542910658 600402636 896378483 996786706 841516000 950240095 765261020 925332170 514556873 762851504 701414814 743750770 793865540 968446323 190947173 660835413 71167389 594590203 662810886 759088161 147398193 202933945 480763066 679490410 354576303 783618560 364857601 668478492 911798460 912006015 326007865 481898015 72533560 750816223 149861293 813076698 13982453 511254237 670000474 966447144 816958549 983574207 72694465 302353798 794139213 886166871 38584081 310483690 382292386 866991656 878035034 953705870 210124388 731498225 619476322 836828939 407628418 691489663 557260434 929610433 508074866 510567619 797061313 830374491 403894989 687055948 45477899 984281105 515052994 727180256 645716036 847546492 837296432 993708552 545197712 655628454 867732594 885273446 625013049 818682591 828956679 996200402 787831992 998428419 570115568 900429493 757714322 953438575 447635489 665685182 129259389 818723334 54620577 621112835 807519031 859023758 389996821 699578686 634830006 778371409 345198599 398438278 690571894 874039121 309898266 708018919 921542919 939497936 776028406 883652289 8956090 184778226 353983150 838582354 682140469 982550585 547452513 912697577 734818210 869854298 496727187 965189435 238377953 669140748 866017780 944294018 194251168 206632608 439578394 905142157 32199123 615576008 287835920 531256597 27096952 973675357 656580957 736239514 439132531 771185790 111004510 227450845 627959629 727324791 777427137 816100520 124447385 289542872 720689522 820402420 40175584 913569934 382541723 427862424 147793527 483522270 17674978 631142072 864845988 961566739 359612031 468285792 379193826 528502435 149379673 550470771 273767418 284032972 597713905 603532440 857879484 932352391 183426358 796355814 280370370 383411994 536054217 779860068 779685091 919175191 876152898 887316363 17758173 325822419 757564394 967415175 46170876 813396476 278927492 394408420 659833428 981255626 82169687 940775540 756455618 762967918 678148004 902294735 107523711 192659962 859953677 909748574 730054443 885525771 314850686 387748237 609382500 851452540 317169603 999132816 857083609 918641468 261969381 486485646 761943956 952850438 851424838 931582402 478932189 998685634 584307273 857732830 560207268 800979565 32608646 640648106 167319444 571474574 179670072 854004081 394033363 647963191 314298166 486164018 775447532 920459867 267719256 780789729 936563253 994323948 145908937 464196801 963345966 997842446 693775379 867652951 352229795 464527305 850753838 877288479 610142895 750429421 238791208 536276878 975559508 986206173 764435465 912200301 406724426 531653341 120978199 580575141 207395323 654900665 691708666 908198357 261494325 320325415 415842665 419134012 24168864 976717141 666412682 786397426 81242194 190849089 506627135 546828830 765407836 931251268 374823534 818938637 886697741 889234968 393745429 997456400 448062684 507878411 676040870 694698021 750835731 951714630 817350642 928741172 859865243 922721927 232270262 460262638 848320869 864941979 928941047 966793028 284786151 731095056 940772279 954285744 902497894 963215256 453518733 974417561 279564720 920041721 64229977 555705812 594462262 798257265 421895237 847481416 418628710 866616727 295607616 355675769 351240872 898922772 359521190 924389486 256821696 833606636 484283239 590658222 578124972 595373060 532005772 566858038 791668366 839371087 441240828 722344074 243269048 681560298 102099323 552276345 980123879 991741182 116145961 494247722 533282219 819622539 668106219 874085793 965695200 985656943 729864954 932238836 798223904 852441039 779650686 858127996 78468392 331089995 692737381 987147072 717864853 987828172 675904056 837187915 267134736 322210712 652667263 764922763 699193788 992379258 917657558 963162773 411944503 615817912 345481113 496642817 162524415 444634882 661993834 686484511 919890313 977829207 948760235 983923006 566688237 871982597 602065368 829356464 258770190 487917138 790696119 859647228 571264616 589308875 90502885 963296446 414545560 710583363 694421011 715564305 430695516 736626888 809513995 911143200 90950356 283140542 354398180 801685019 418744554 553933828 508036767 856611026 125669811 636239258 75563851 392914537 353484757 562336189 783705930 835045417 653835473 981270299 120831680 684819147 124862171 712008607 546104366 832734382 994394716 996733553 780445649 825371928 298408100 639300706 946814481 979437635 495451616 656258165 577372072 587330698 514832145 684791732 754374521 989196600 228304999 420045485 33543396 689971795 380755503 588097278 464400980 576258619 253508589 410101783 719030694 775872384 89014009 143291405 648451595 982774547 203781594 673607140 91876055 466402758 481907460 546402281 286805273 934864995 644395399 648240192 404033115 709413037 877828865 963464794 449969546 546378530 252681191 514855738 911028697 912603488 120288128 671580540 168453225 527235838 553168431 963660626 507449758 832599586 280829699 442415095 194556466 386437395 321857716 360225727 425915044 493570954 574914560 783756549 525039725 850192379 31549689 724762648 230649178 844477794 100343259 531738781 898457075 902238752 305342491 572721306 466273679 677547216 128200699 253265705 606906411 780494797 571519123 798033489 508765421 986086574 222470769 339096483 559193336 632322645 708977975 991419341 582758507 760276194 744634868 752715190 693078162 775312765 546602293 568684589 570630879 963468656 737017078 847173761 660710125 890712472 387311006 922835390 488748636 667110871 132272362 666005080 818472210 834542389 420642059 941071035 890240533 965304075 304655168 601957715 410981121 536289478 232525461 962826846 756576754 926681884 174508740 953126669 763957036 854807454 76990924 636262970 788653202 821085666 345176779 761192445 844283735 862982043 91975551 965584872 596265286 653945537 238435769 889365744 826707923 921104744 167948135 673456619 915683677 965267734 283191603 392181019 484550155 552751257 433377232 888488464 648033850 662323706 779901691 921366881 97043727 111231704 778779050 935029444 629028364 799463132 375835345 580505733 913894940 932305690 30048039 607186955 256370739 312203527 694511632 875717810 422018976 630161713 411168270 540953376 498572780 542591974 379246083 917349537 96547190 944980925 455919654 644224299 331627682 890693282 641521073 711583156 167057458 960955382 911757182 992349462 726223962 813876539 971233317 992440294 598340326 982921262 678717378 904776158 104585006 836671352 625810438 748434536 684277256 696506536 814031458 938007591 269632690 604674786 558993281 675356529 727986006 822384641 744392685 772237166 590929309 994948272 451874517 940438093 44746773 812808467 846859677 907634708 676283475 830000775 258829960 291316052 125077468 956561247 467413712 706516485 477557546 949291498 510946155 891283269 779636521 793957474 934580157 978452781 712906303 738583439 211826256 771559456 705426115 923949767 609382804 755240571 141089100 588940164 402498630 626958027 546759876 828574722 649160175 994835563 638130292 780660790 581438931 920802682 406671552 664160363 875267487 933439154 578910374 915348654 991123595 994333474 150508532 504352421 341656340 759257354 212051714 673532152 420449922 518701016 475288320 866137637 455524551 581755250 214521951 361458756 574192350 782893282 873349531 962227294 329037816 448551863 928042156 941842371 525674550 880064193 901458674 903664362 95535099 987181058 656323129 766365980 655939366 690516216 23842884 931212822 844269838 997406198 414286209 780882071 704435270 811574506 142560409 394559331 82125113 445820421 78402927 148194412 601520856 606543023 820005792 993727472 398528569 974096886 440771099 602138037 581987097 619963926 54598601 192188754 328320575 482995302 900477657 938152481 567509291 816424550 50593241 422196047 489354757 612069723 614475221 656260168 859978614 950711718 546327040 990415717 235722085 872361103 587813223 881658269 6135237 748814602 30970141 730432646 685294342 713659402 52317513 975432609 437212701 795011670 683389355 911096349 182872863 321211722 891744053 982671550 53840631 570915681 383558229 629811379 420293176 456788224 379270165 533639544 275779143 933262244 814957455 953842796 117088836 780844751 434270306 587684071 97332313 573616482 293942153 869055878 567243197 887699095 89796920 471412472 42021931 943107357 675189814 844997235 664787057 885121916 467123905 866425387 91568700 206020474 616947903 831037899 977256480 991019832 692441466 956330826 685333814 690423346 128320067 906596141 496977644 760842654 385875428 748023462 821412520 937897566 982823213 985390366 347047101 497213976 28272210 154140514 27958642 516053535 804277366 905979453 93282294 181404985 850866295 938031345 787259311 797884114 88429971 793153973 767471959 770070925 707368048 802260548 691346795 893729684 129860565 386266381 835943568 967889155 874576051 894031698 335279528 384333258 798245782 935513995 716023396 787515678 365459278 406731108 182447664 197603467 800353070 899425775 664954153 951653728 126555184 299365898 432756538 598555217 255680688 720430159 68025677 787612922 319349303 586363784 495585318 973609472 560673237 843658984 129722759 907704252 466528352 698231247 740717650 763712130 927646778 985000138 21279276 489341441 772320080 980709947 456689533 892418053 450523648 933681110 52200046 801292967 823535681 913029908 728809243 943524550 866888276 956875318 274527576 651229728 216633541 291370807 988256721 990602846 552483204 965299392 679327528 951951604 976406543 999285995 605276401 944775990 893324498 953777330 266648580 312733086 306520282 821117969 592814631 879489497 140743996 824970392 370471941 831174320 636206482 850737910 866278385 956880346 570470763 651490263 280756352 380827566 24317281 461041444 804715059 866454082 273279642 843075776 928914568 979313244 145594653 918552223 624132862 668641932 208202508 318585043 202455970 947439659 99392346 920855654 929740341 968676842 845000478 895959234 647837797 968076690 604363164 748716377 59886889 675423689 443769034 761974274 23674841 205157605 298862678 702315823 987804409 991084819 360930363 770360772 638306943 664344985 839462988 881558704 944000354 957282841 563745215 602777146 61375911 401601531 63423553 387683275 237330839 842955649 946017987 951373298 266964711 657946624 134376466 217955614 973894881 975813378 163429594 348228642 943570648 989857470 898944470 904047495 772579956 794945462 298379731 586437086 27901783 81157831 812245146 881624051 788974399 827772779 588792090 632453523 388544166 819056553 308197629 672347118 562489800 913147744 524563663 875802457 754137904 880061156 602199487 706752093 777111198 805501489 131199479 556438800 771614709 869644460 904370463 915988674 62528408 809859034 455646211 645717797 946940776 957208088 389954616 675310758 766144702 971873591 709442410 993972378 506408252 585139865 900164204 989139182 363888670 725942396 946739209 979676635 949391780 976836286 964442213 979503461 296060243 826554595 950204025 999034784 713052008 896852089 214824839 980831418 267881433 802404395 628387245 758806447 933731396 996566674 374895125 642864637 853377979 886228893 176226243 727180894 729569681 917958256 497958667 752916013 542911742 874024511 156624238 171794255 580423628 798930992 88850483 892847490 249000842 727318684 914188059 915692873 552491516 958185026 936463252 960206410 145620434 730604770 335225033 390162902 872974633 975171107 549503530 752201962 89566592 803306121 330230127 763639161 437560371 942668460 353393753 804191252 657470224 914584619 794845631 796431973 5679924 294188944 228537898 903822005 3353548 503265316 692145299 889040067 56730828 613064986 493832305 728756094 375555699 666482109 641199384 723898139 53043323 114412784 375740239 917632371 853530668 922627029 398619340 584269044 959781795 982719564 232134693 908140224 393505843 454292812 654806742 992440204 435545201 569267858 503551615 714650166 924046663 983638946 365634165 964573278 309175822 574840094 330649457 812557634 101905852 720610088 828294168 829164580 670819034 894913958 82153972 807093676 674704630 773815213 438068574 892504884 83783604 637266516 751707337 855297181 579229213 883185951 251832669 356092732 175768406 397390158 767538758 912905059 59224945 227810510 300551323 867858172 421313729 475696515 988290222 992640958 270585507 449224293 125747662 348790059 464603713 916580712 802302112 834378784 860826163 868268931 412371365 974520643 900730928 945002786 970996480 980769474 766460372 998460808 257995118 301494330 440469255 562322789 629946492 633655701 986274337 988556183 831260232 970878252 966794929 980976024 353622824 724724424 736682632 979136643 28907996 570781345 481398602 937932278 741371361 911575723 16009901 444098935 5177052 100677649 732765884 773293819 536511582 671036502 343256796 657595058 264552753 626038995 727934055 740885766 220387412 723143212 679046719 690351349 393436984 989702719 442171227 791190798 603162651 759016245 648876506 941603788 286227477 340469009 368353227 928625795 330419373 772639675 959466533 969325838 526313001 556266728 8421004 830249704 554663048 781859478 417354448 684827953 156229273 896132095 675846977 703593689 153959009 748299225 745185689 819649743 39756173 654369889 190950340 225648301 780532804 813972906 92386814 335435161 670399415 992048769 760220062 785569447 552411729 886584978 774479514 972940636 991982713 999172861 204461588 506437004 201986730 369203477 707593808 825042942 415576641 735275252 774381430 786539828 174787497 297217752 545181349 988096874 183515598 673111977 82985777 885470284 677533905 861886092 759116701 931834352 838532757 846735856 989946874 993134747 97346055 630574742 167292270 544535052 782514879 987789074 557836163 736036515 770994176 977695287 551419867 803821195 791371230 829065004 185709577 234374022 158610495 670594273 934270735 983588007 489734431 978432204 677702765 744284275 425529515 483598682 253696347 588214141 477007926 741804885 811051473 957177009 19823911 226411837 956075392 963072164 847313720 921629356 801357002 986643900 765796813 801091213 583944405 887369773 427365950 837783476 794957619 838722646 409312666 519097756 174771536 782099181 259876706 645000634 612023201 718810953 882592500 913062920 219118758 528331586 948395483 956688504 507810806 652302486 556890575 666107696 396992555 456712506 768141109 870161369 754491717 771008429 581481815 628338507 668235283 679803177 408705771 472625138 285406085 645958787 928649427 943890148 854672452 958354255 990780566 993636923 553567081 778776315 777187125 832329957 865525648 865975422 180071006 230723601 153010233 986294946 319881631 864388471 58404833 140409202 266037689 636550441 423044077 687374340 44569420 737143150 180533703 607029911 349859995 931929143 192164127 483090637 75840 466966882 292745762 597834703 183549118 521992511 794300635 830929674 611815111 792480611 147415978 854868990 767773014 860715184 738824148 970755860 693229275 732377692 814141461 925923920 833679665 900123605 690519181 853160763 860073784 991710506 720100911 750941770 570715304 789560673 571988672 899478576 61807428 329176819 559255572 634022434 937905084 962481795 810846263 938854128 13372020 358175100 642205307 808893216 757497010 871095990 729631253 820469497 412323990 764271194 947500225 964762821 192254632 324085362 695685579 790109571 883705705 990403513 975772000 993121461 855818121 901169889 464086803 651404088 701376108 751313337 257763006 421642781 343407941 418243457 269628738 300591952 144598340 542312006 74514509 428881972 368840384 595251444 542692821 570628546 166350102 284320069 590960118 893124566 741249971 801705615 959443135 994620558 311709469 403163302 160320349 572266890 895482915 964607885 689995221 762205322 268591763 620725943 845179566 875930253 826769245 956027044 146867329 419833620 330333517 538682466 799873111 816469828 304733257 413549934 282410600 724312629 706871502 734120251 943575840 953082769 971663063 978829326 983883485 990964634 131575666 922562577 618112912 672107364 641223678 905250478 839474462 905897004 945596133 991868810 237646159 287734419 841200845 959347995 112228501 425482937 510083725 839302312 832259716 970571265 515750234 846856809 967018460 979278341 516004520 555626800 383763259 791265684 583607775 608443874 177831869 200171109 670952294 740533913 775443686 831473882 69972282 244382410 119603798 681764415 769098277 852261751 298707194 701062731 762469871 897047049 784380218 968797409 88468241 133778934 243542349 497013911 76029331 102368610 435686542 526958638 742453010 793386926 873465139 877339996 290627983 604857580 368335167 481809565 406575818 413032960 447314937 995332386 234645573 263883575 201773660 284599594 388829932 719061325 324119286 448034220 40918337 629327577 144298083 469489373 825649741 877301145 554301472 932997529 33578817 697232316 587007470 933002685 650176817 701959901 738570700 868640224 477447114 894276901 284735526 597629859 182684996 557048566 517176154 769073421 802039161 966263648 328656221 879365339 778987652 848669890 140069469 354324544 718086161 727459521 674212194 854378901 291920756 687829833 919965084 942158950 239829100 244016808 38854673 815372476 952043851 960053607 359129978 430200316 135456116 947129189 276696516 277426930 633109526 894876904 370307723 709828994 275913369 759851824 961038883 977978496 629581831 952543398 149659455 531457737 649620721 768288853 118924131 718129655 85451519 385494878 279431381 341325443 244380649 381306111 417207224 849720140 826437182 889798915 89392683 250934861 467087247 682244678 773725494 887922363 349837406 776794086 638001060 977294460 195201050 274675779 236788700 885098101 168178832 898641758 276039435 920559522 512949816 929353044 60358073 912524636 994464102 994936848 488220525 701092027 973066396 987066212 989769472 998118401 331742049 717970381 407655545 535860220 40065866 185223079 503374310 509766723 527969783 602381757 328185382 636647560 177502825 245180564 756461686 803456375 366668769 740855452 110650312 505419972 974906765 981601226 485477864 982218686 488667891 888072745 410728946 599859152 172869075 991352557 666259893 840737138 363453296 539829052 794894756 845604351 47144402 997374736 432039982 575544290 390003047 809806046 758879521 825868783 965124742 987930172 447739037 452554649 958275324 991800974 160465664 635933108 54277918 274978165 243437957 550690811 357487841 409884072 836202576 922129836 678301061 826713185 990064073 995004989 606646643 726486709 748053166 960482904 698140162 808008338 417985513 939863395 829963660 892408996 963998697 988429743 188694974 686869043 267553502 815256244 747985028 983009233 380088125 658425383 639491199 919953072 386272031 821563284 300034375 761079784 149139539 920776774 131779669 279279061 195566342 514074257 192859794 747451947 399527516 567476712 499005643 501378470 151802607 831001909 449469471 635771504 543867922 767340917 884634378 976658525 548139933 736076332 768092742 919118216 832984012 989890986 788936727 960007987 861791412 932994798 100660669 245840269 46616360 215290722 581705359 976336099 295935604 655659331 754753540 931291678 432031188 746399656 744287346 767587002 943797667 992034345 346450690 712675393 356319255 609478435 254711645 573781018 978363822 983344933 517967614 839368813 546443033 960392603 606013859 751224830 826638807 916203639 635302920 688324261 81566261 849624621 464689609 712563842 696146137 780059166 226989113 881253501 877625279 971074403 302839853 385332891 301952891 644504901 395797683 962316705 342354269 957809304 22346825 290848282 293554574 695122099 941227791 982502267 707300092 976949625 242914654 374115196 869301708 927016058 822374365 916592822 469788286 847652680 931313471 937540505 447451001 866657122 755540161 909196320 52560450 479708548 590444326 990197420 981532685 992073350 470159694 552500858 460683055 602314771 608103166 860826309 771165760 795565201 397613969 850586991 454423443 700657744 419170193 528777484 692328873 788787734 911125055 952522996 930374754 994806612 207713609 837431762 913298576 965824332 776642022 957428404 657719839 928915840 58372820 157569047 390226201 585173964 427231345 587024254 245970351 720770737 110243370 267855504 513609192 704461939 541632148 863227682 124844181 463231901 595627003 865016876 291195336 553177466 959030578 990502963 58104 153693922 642804480 877921392 625555116 925115171 962554424 987235888 982869263 991588113 845368756 956082607 758644873 889692663 825295039 915220773 378200804 762569870 588706680 595507304 44319625 920006768 799290607 801737227 628307711 952115991 193197717 252326139 358145353 498571253 109741052 820370582 534005723 584378051 707627759 958421561 450889965 694890218 720397142 913130251 954440252 991218346 463078375 482604958 80573422 386103088 207911973 607792394 603934595 762566529 186396292 381221191 65682035 479001128 558516206 568114770 727969318 988418268 473793021 667873721 2812520 969219305 26514143 263416907 138055189 730928725 449117491 944859884 425198579 932510594 8060197 773016161 842331728 948088096 85419868 500323005 505336695 652464722 325017442 342959388 924174754 962286307 893054302 946369036 253227698 534920384 965191471 987008126 981215370 987009552 246688168 492618665 886222030 981912657 254617732 324270675 320395885 795698416 734431415 922752994 287832261 874887288 646118752 744392210 306806467 579719242 165818321 309444681 511131842 951164372 127761901 406856863 323926626 511099126 973908478 992790921 845596932 858764943 728989186 957460633 17712788 294113095 10397003 266274425 520820576 900783730 820269128 957901089 166465573 238197018 609149160 962358805 646692617 839164348 770617805 949664083 650016004 684117619 941444770 980671894 58101239 299482435 915466200 936645574 514576857 785239339 385726313 722199794 516431414 742012355 811108280 882341930 980696045 996831805 876027858 895214355 708483924 754315666 103771776 113666841 100379467 254866513 617974837 806180242 311352521 838718287 944064300 974556193 832955913 959148116 13244621 346821352 537863089 682861237 133809306 630809764 117832626 722370689 639610650 801708421 442432304 712800263 238397718 713534864 186756249 931482794 735051266 976357962 254286197 544257031 832811011 868101163 637906002 954365246 172915867 251396943 378439351 862369477 157142442 224761251 730431791 900774535 143037007 243454411 74965924 304495711 147380336 422708394 401877040 808587882 697534917 781518152 922988449 936242292 973611708 980622618 257141343 977050740 918270448 973498597 361821667 444750706 391800712 843354075 184875922 659016778 176221671 361618243 68703273 933442811 524404286 669794237 199906618 225295253 147181545 790355059 306349708 883043995 822092432 837093575 942764861 951832273 774916860 844804153 715702288 946433079 978924176 996146151 232112041 834984902 904760209 924431307 398208292 802190403 333816263 961537929 213611756 274041573 518265856 874758771 311181266 445270923 386367884 647692006 589323041 871979401 438084259 778692435 306004425 413147833 689740417 722221268 822185056 869418845 959039854 964920050 11121159 907133076 629206434 701872596 98457285 828517639 752966932 794483579 161651483 792997146 351514390 363246493 596854388 823585735 229654717 927889619 43487720 808400851 268239813 621072135 870590469 995054741 725684047 996499598 704609153 907136427 705605738 775749994 747316134 778052979 438626286 453866072 562606947 635467369 500742731 506878918 845505380 850685911 927149026 981163187 774737258 884871845 192708997 675807817 423755070 438534142 70828111 466065864 198189523 438577534 277724982 725269823 437980294 843354216 709080220 980553477 620049796 953863763 3407546 66503987 322791465 568193162 518288504 775907662 479064759 763967043 406317918 497433900 192473496 202986164 901319580 983351516 636167502 831754659 895317513 976887599 578314741 668589296 304581854 833418867 319515506 606048701 389926605 701473398 320708471 889317315 459852619 566666821 82327843 871430044 187773206 327322777 312451460 846117235 212987612 526773039 141839437 841019175 176289590 245392608 196270812 685902041 361920923 605154631 619608868 682144595 822688987 892486470 515177878 534562636 250763747 444397813 292497904 562030476 9343052 134390990 581316951 978406200 721539664 983297134 106049512 216499792 345495330 755744517 819490265 945064589 459200598 490487376 716724734 881281086 768983903 832919961 50957681 832308486 421533502 656336259 639047737 782647851 594242460 916373198 490263357 981402155 934783827 954690922 931685229 976371416 559932479 749397008 680173173 821206239 289850365 514989399 407657324 693601481 245359625 631096292 509070030 964019853 81077105 975459570 615258436 619092317 662906600 683063859 149817587 850345372 57850344 497223273 453191951 556716599 10830007 765694537 931086106 965043765 845757799 885918637 238059674 577516177 480571368 841247065 655719418 772410060 786600895 930146221 982239047 994570935 145280287 630063991 239171868 470094940 232707472 268276417 902710554 923419252 239271303 507855880 79727556 980740435 361136042 940541091 276432892 320386242 613190154 675023457 932249590 993510621 596988920 778365297 365730282 438873464 719795109 849701305 43738443 576675542 52615908 599440843 146724632 782555246 589815913 751481184 171353544 311318435 338112690 566614566 82274142 524198656 107408814 278427709 813720172 838178749 940433742 957548671 442127907 719332074 168464669 934386141 681676950 983200773 936031036 980641409 980139556 981308264 92807142 480950388 637876969 716321639 674632790 815376849 467379233 811159803 814283727 875854290 479876714 930788709 92742393 170224594 191776223 650758873 957785265 997273454 246313330 785093744 897992256 950879086 317986879 663870479 400153890 791559046 173286111 923642297 226810606 790231002 119197284 762890386 338947237 809598069 128084815 983476853 888613229 976918381 427489724 678915952 252609420 624663767 519490127 652674541 617190841 844939088 664106714 999184084 838689991 886613439 218102205 645062432 685432229 914781308 265933636 475882036 903341433 940143665 320126499 994219588 523910369 677518368 900731150 953167885 948225262 950151399 944584139 997121704 26957008 462306461 617126860 662885310 489445480 859343618 677093302 795899682 368714839 392414054 715125464 930893986 202865453 791776226 515111413 775569723 291063744 578588674 678239226 880959047 15197286 413635883 81818054 570269587 806706787 886302442 651664838 717233045 355935147 414906293 567887607 631725827 890834953 967009633 347969238 816600448 584108398 846100540 704144279 821854137 343730407 667116680 365994788 825464705 437258222 655857239 946481650 981287831 997022805 997857505 209781374 229484582 865340694 917431964 802512941 996738341 528563293 836006290 517232279 555634500 821636594 948754268 509843931 891191381 920047221 957771204 114739740 826456888 137422015 924687015 208236577 391849451 863408882 939070622 229463032 739930297 338944073 636411104 675461641 930143508 287520806 897334096 108911672 155833697 36227619 930781443 401404708 585780637 234686112 295098775 731064868 871595188 736161638 776152602 476019247 743794536 13333293 868653338 630892256 960879928 55602586 311234284 223535217 253676306 256027432 363472440 910581245 926587318 479848995 591600222 344466266 748366319 600841493 677182569 614103015 817836456 366682855 781952738 486418611 722180461 240642448 956516159 757728631 847762382 461602946 948044180 102417496 536441662 185101283 527423133 293951767 724486195 673800431 990980614 376643487 697447897 197961696 619429102 24055028 922957802 148109791 602650368 132236455 165045215 676870515 849483175 157073648 223907070 595494378 748906643 17309111 927368514 957121896 995461750 408328906 978933563 401692824 491158255 910193552 995284926 685944025 760135468 482066057 832906418 985563418 986212548 140437887 554164314 871829290 994577770 544848891 831513876 522453953 977708347 99617848 569133478 282265213 793564406 132220795 976127723 63535150 218058132 865170505 865230601 608219173 904778616 908121981 974382497 552098173 823342886 688972988 909500960 110394339 154975872 783509436 795192689 853283628 907812638 534549478 601739917 328412273 401525809 612150334 781158257 849520271 954372178 941038765 971608059 7249776 829771184 899496653 993778992 859782605 936764604 909432585 982396012 285628676 657929146 219977034 347101698 76398812 830691382 962880020 996184921 15178599 764038113 704062661 872694836 6982458 467508583 464974733 655478103 791172784 836463939 712508828 872789313 739477429 759328925 688073545 776554621 263511208 966632934 266695971 692505451 664017437 751692644 305236542 500568594 91599973 539581995 140389811 549783126 785641322 806531463 286182984 554246291 284359080 519885788 877183141 889627332 542099360 878297467 329994558 494835867 828914259 895360086 64405008 585826842 906629372 947790831 601584637 667556264 283593466 771027747 273117108 348937286 185701149 554014934 642804664 906271301 909988033 981426957 97256732 357008636 494286116 748023086 833667368 890500440 390258219 476741506 457357121 508962545 62210937 925096556 55797611 931806972 712511630 801819043 46594977 878642503 13748412 460385599 721074141 982326712 204304355 829366745 283598099 608696202 175096689 497845709 252466295 290364754 146713800 242873517 957760798 958355190 162857972 992029410 637382850 831777167 652969067 771027017 631261920 637412105 436924701 449378835 955710654 976547213 502808046 710459357 342876930 490604246 239424428 249249734 573859792 855673834 999303723 999317271 304193711 596729181 326910690 539613675 865929087 952856154 980620951 991921077 921027450 967684539 473362884 662285742 635031004 805561389 31222665 810421237 437122984 598700084 353131840 801720896 998674795 998751865 595792455 903911654 734278480 798090776 901400771 994248412 685007821 996779398 69188043 485040230 504049611 934818278 435344383 789698766 540837666 696206970 240181764 656890239 451209172 609132778 344380651 601861558 87037633 206475533 401340318 897062283 611326151 699254773 295865648 709382905 576504749 880842330 225741276 968566450 20125298 945736025 340421996 925916169 26873048 206687741 240216330 718929868 88369024 142670357 846734035 999119355 276029117 276400926 668040578 977093917 238886636 387337964 664007103 691244990 389905313 678976137 257975077 971617360 539784772 946095572 806543017 928860390 439729098 714913451 755274389 979043180 768389496 863150806 911686533 939803792 226598793 785998930 785315001 856254180 853735457 979115671 98477732 737962996 510795049 605596582 540554330 627171974 931398249 973979400 392430958 905381319 222055964 959323759 487474523 828022807 577759323 669414506 162179216 425192126 281682672 700914558 265319973 909638424 410141804 433944849 771989493 958650660 660573979 970023026 709302256 728470199 126729546 935243619 975064037 980818331 382304485 418814498 219191053 276984521 327553335 617215366 41884686 151782363 88936740 213138505 62734955 302250356 299627300 307119989 86019309 802969538 781165705 885539932 980605235 981790277 351611655 660466634 556788780 950443408 848485163 991545626 721691624 974764217 300569593 387065048 399240469 675720374 189841979 558305950 146472058 658314354 499203836 805127092 955380669 987367061 864416450 928980025 193367581 858196380 453365537 479330033 551507975 647697613 548754035 848647992 282750544 744593697 78021840 593323513 641144424 910553146 85310827 364185453 24822675 600153354 597975876 892852133 589878974 654862631 398505156 471559178 82769279 381944778 379011672 644037053 692548568 827385766 508938238 621038082 456827420 462587297 467168859 504616925 889051170 925871097 443813308 862761733 223000863 562784646 267102290 975135662 704485378 713912660 752886662 836234622 437517921 955805262 88039485 327587107 124815230 181566402 854750379 866450243 861572518 881210302 698024205 829432526 739898326 765828761 336993875 937560800 541328612 980823658 774534638 795946726 598611561 779200551 973552789 983715365 487561257 808970025 483670508 507999474 257885791 884682867 27976911 317526760 72918950 467864831 185648691 972953416 315298407 340654923 79260092 762351592 361242626 597933834 532091270 701104215 331988658 397253682 777868967 942523035 164549244 721342650 64883598 389172937 228314219 803774999 193403610 812825409 927482301 987677958 687445602 821343361 908583744 978965105 990665480 994673125 974509266 993509698 313778249 491009947 536282388 942941247 18107349 79254315 534321364 734855573 267170990 815415416 843332210 952371096 725828673 806690378 731653982 944056988 447508526 679794382 859756859 958832255 993256119 994144928 1508183 852257062 171695245 407259836 179720544 955302455 501045316 582717471 174898967 462261314 590442182 795479448 943016544 978429684 109714997 907303544 631264431 689567709 96316884 341182693 720863987 761089364 663186886 836961495 958896937 971238964 574602435 959578213 775785140 858992431 277691989 480456054 905812138 979581610 458425613 555577281 410265325 762402459 913870451 970355527 253486888 472199420 826475763 915492452 969432967 983045907 172231650 370199971 541017109 888355932 56753166 271888965 772809284 783903949 995896482 995989028 725266316 773606130 559442578 777929118 501929806 992517526 148833311 214046515 432486543 881805919 113192238 498163298 968840687 982449011 234152661 817111987 435827048 674019431 369731442 953791049 375181166 858835078 124926648 759939380 662530540 709204770 175994475 411144661 457408737 580865485 19261278 777929518 694751706 705693360 997799847 998746763 622726139 854374005 268607209 912308497 623950101 991707725 825314161 988432867 459802157 532417769 688369893 996045490 74840822 937305220 700288911 746312653 913007988 964282878 376800558 633594539 703923830 786502303 391183600 606600307 366315000 447810980 365803060 404614845 932086412 974135090 955358584 985109797 858827892 945369845 473017250 547642517 621360837 853353794 809376768 839227995 719544063 954617928 234181171 387665996 894823674 900026451 524162317 615844717 874282543 910645540 725064550 903134215 963025459 975986511 586942049 755794815 267823308 305761894 469975006 657726511 740931777 844493219 454865494 822221796 215882883 235369567 544842742 814821118 674204551 982659508 427793794 431726833 508911017 627825730 956874445 960020162 23733479 145384717 982769192 985804539 295499024 679459393 268651629 805558830 647920692 772743088 272299254 396314839 233260368 986309604 376105333 662357157 437643145 488736347 724798588 844951329 331892951 831679768 105551336 314938150 707518392 760900722 978295329 985020060 967085327 972034448 636124485 867713401 720571514 742766632 554507560 695988179 960125953 977234706 445124849 875736685 739380183 777196519 637986203 647853673 130960992 483813654 31166989 469826686 380270646 919858538 772725756 968168527 339448197 832105221 735222296 875339858 189059870 804425106 137589025 469534198 168190876 956208796 37892036 970536770 287947026 637020665 138660548 367391740 100008295 211693459 746438450 845766611 826225590 949839729 686917800 773413707 673839948 761480247 641999366 720587735 900922246 996203063 75155851 466347109 166401720 419053993 93417565 489352704 444684847 559043688 520894171 951099342 942523410 942526049 491683044 595082343 510438178 516121230 632742272 724706748 476344160 724623274 906317162 937034122 580628612 994397620 5078821 106537954 762807951 965050915 483521944 903855738 669431059 698696445 187070532 923043965 316375813 705266309 860601906 996314469 954385938 977820984 981574817 995066301 271493832 694191092 510789220 842428057 982440919 982958627 963026574 993632730 226225613 681794550 306980966 942553852 911963871 997620156 580448581 732673416 954716654 990711006 966677502 977651980 181681994 455078314 339274426 904794027 632591210 655603522 727628331 951771892 451486477 896363282 308014066 892523992 735336460 863316210 22561616 318260773 262849614 410042217 161860717 959319553 883789262 973204599 425148427 680451972 556269166 817852827 689885413 992240985 776911211 875502219 224793918 297423025 341350766 843099786 674806452 838939434 625352881 990110119 28467180 356472678 485128102 605596736 716020381 996077217 470521153 585712363 60644671 304042214 46040528 759972924 844044174 852269586 521441565 874871917 197595821 280274824 273290572 878812361 491536409 612176223 359152843 595273797 642974847 950458198 747560186 989526904 77719268 935944457 821104001 867245672 803519859 823695054 722814831 848520506 227146688 618504119 697913396 968641211 610504464 859628120 492404332 979755357 222286681 966837857 235460865 514611673 480084543 598365359 44501654 291099928 364949294 846316552 459198832 965983070 465098854 817903474 436775111 554658322 945753482 965489885 247343250 291252347 882483773 907447280 179828124 422283165 593834237 691889117 311604489 942126230 520930125 967013358 550202897 665430470 419472131 694345323 553682491 861608311 556191472 642017839 781479149 791305827 781122402 935310762 159157346 273861330 643283321 927298295 764955420 937462145 33059677 130345532 930132229 956932178 305989324 791017429 178864208 413069123 972698355 997841705 571934172 901889621 176152039 248128853 721431018 891791659 276002687 397983863 200793909 425444745 676588383 908753547 19694277 892337684 767072894 990529588 736378396 797341213 59641120 936461502 585309561 945709166 920318283 964424729 430330844 517212566 207743860 602517030 543948975 638258139 283311457 641579907 564340338 891805078 382449983 978084010 324260954 505995871 547389771 847227198 481727372 680108733 879976624 973131905 38641868 362385151 480236489 503216614 702904700 961504657 623021960 800183491 360015659 507569113 40122619 387916939 684170302 847901282 539444143 997194083 731672007 937186707 719440939 811560517 573713517 837546470 741560036 814585959 930662840 935546646 25866446 771161277 991768131 996872630 446649596 493561749 288638302 811197180 37809962 483906743 642097498 692202462 482325618 659345702 645035279 995067153 543425009 746028847 671958338 727423621 31779434 956971760 493052859 733440665 220936690 606827873 753304916 780458785 141271737 462389470 211934748 275639768 989785706 992645339 786600672 967643410 875419613 964424968 755499919 773215392 850430708 940905940 833426737 948077037 6003362 396011207 48657650 707041833 476633524 890790261 229728432 867738159 862004808 958645695 295086432 586091670 854765441 947452199 759029996 778903731 898918849 987858029 211035672 325048518 207829119 496171863 133271577 836031841 654265112 877603039 457224513 706648642 35646451 451314630 182521362 934918257 776056860 857231199 131168435 979221332 279825146 457436581 895016813 985530320 460568605 861069640 755311553 894090889 568269963 793548525 386179447 800381201 643239707 918955515 421655240 683019600 409099435 512957167 960121898 991288132 430922099 519588273 43935216 967907573 973435256 978116104 531919975 686567915 30888193 786124257 378686727 820637376 132238658 659607858 380351296 815694631 496818665 967045467 811096978 864793083 853190799 901910888 907520080 952488336 913277766 921200333 106488255 585255550 301271 973047486 750935854 965272261 822306677 901482930 906313177 960646891 195681262 990188895 169811006 852099596 885335485 947906702 177043663 581183590 567518223 588127349 879487995 995686341 793941406 810742223 378726261 918928126 179269182 685448732 72104109 965998099 584333165 801828147 565400024 880757299 300883649 945731366 917650339 934391047 124739897 553854360 228450626 465499698 416413041 467775172 59282059 405313712 885893343 969356250 423698124 724532189 369255548 846267552 668307965 947655640 845951937 890573473 903687200 962532422 257449103 507452381 997702107 997935421 959027493 972578732 597283321 635337015 259261471 958076324 332704120 901522978 832989756 947407625 927413929 963846459 715052859 766826434 672529765 863583229 980630118 996635733 263542827 275575517 470507983 932856247 410608119 714764361 570261457 766084827 934620180 945077255 42696132 869425620 100119971 220932186 121410569 910323932 167805203 912431639 266038519 480954184 434341450 543380974 125140485 734075789 376134045 770871030 532037828 659152514 291245867 941663310 701970575 924388874 463481999 877506042 311367175 888402634 994881611 996973480 34178204 344512530 107601655 284293483 95905843 512588557 626472636 636504599 651978813 857040504 335421279 708191263 278775367 545640374 598658582 784624471 369561431 948505281 876316590 929449313 966311135 985501832 570191013 991139297 601575621 690014175 627839466 903699683 796367298 944712892 205547775 796909217 849318777 942695074 662587063 663318864 62108053 414160736 35718412 768819204 209683438 405158571 730667632 977818213 572791836 718660341 552228737 703834593 150119258 663460009 443452607 721814222 541317493 780611166 880908025 896020483 343924172 486206323 998203744 998941815 885252539 975533834 860092801 868089610 699908308 906607297 368044358 639993862 300358924 813221639 743208669 757199563 457107033 608630046 218577894 898007852 811159657 940551980 395591663 683708569 30067105 204697253 174244426 534463998 691657006 764537811 628534446 823588490 834739849 962868545 927200381 994326206 469203057 661368892 199299894 414672284 62738427 611358988 213972701 644854416 927352855 963127595 634877309 931170643 530111089 987479128 612845419 924839776 900144110 998741859 572138465 730678279 482189123 593338482 535284427 864591969 735471715 778443365 537106160 813455173 638388693 655482834 805759204 854105500 87199235 648691845 532824957 846743362 958462926 996450281 227398898 339648386 400444240 561518599 577312449 588889559 917140752 985056707 96175290 328534234 179203429 647080539 747380012 765886752 560638712 789160624 543067370 935318980 346699087 517939513 924657594 956293668 717697897 790193560 625815030 747076035 605084359 801588998 52639712 733628301 639300185 646341796 779443372 998838959 620867998 718371154 388705187 790239688 217577712 386564525 581356843 637176524 727406437 809534569 250191129 984419769 572254638 926671907 528435453 716818708 101294903 597348611 963119472 974432882 702012712 972807155 95116583 515651297 992967873 997761296 213690343 247886042 681033578 744811895 710225119 808446473 240487537 431013293 140653279 264769288 428973789 997255362 647992754 744876863 941889061 973695834 37870400 569504667 393468647 524207000 761085528 826788479 922844680 985022609 352119457 832787678 100886514 443999528 990754815 992005623 574776432 760836613 695244267 829572335 823369507 936938553 452430527 553143376 653794875 996550277 482344853 738179547 687618718 833886635 59441925 808095733 665733833 917394555 288950936 289277037 459164321 697908790 393363940 790442417 468472282 926079216 730956638 733813322 576004295 600810372 900907496 936264679 702626027 933941739 671512477 760203371 497232099 636194064 683132697 794814713 822622575 973174158 936362157 987376825 292172788 546409332 663616738 974101531 452571694 526734077 962906922 971614774 208001299 716430032 704816416 970113407 303755899 561549190 89009611 419038896 602536057 942895813 437551291 886004465 106746541 732631757 343286019 736803971 778219526 834937684 216151318 842883551 824406052 831164675 601512116 705704049 990890816 995233387 346415460 960124846 653278605 777308415 900225050 962215708 835589921 851844899 958753429 989230734 550647477 675730217 199869464 246838762 696286923 876454273 81206130 393526816 470131496 498317369 982237678 988512542 339543462 829776853 428476385 524112404 775115370 863878791 548192415 998263037 167287928 894793140 51289058 297666314 48500967 221990517 616873329 818745443 481481628 706343916 412151275 550247829 832727048 897572185 37525255 455976902 352577934 802734844 663471766 937600724 165859514 476981548 790453554 985017820 6384648 181350623 829058468 893935264 352029915 876318081 775417195 901666832 360382552 785371066 466320373 888176307 307124562 525336485 433007076 856571616 564403290 716745469 267361920 423196859 425401412 675419808 216680371 968768385 983755094 988994350 74663499 667082844 913939220 961081646 80372836 357380539 334883830 346132393 458423258 936728949 992661905 996071674 44762506 113041231 655515335 678191887 987228351 999082291 225314231 615711806 729452344 953240932 337207239 882585547 496325643 712137417 166811759 220862881 789164188 950389298 554563700 824676920 283317040 392929890 858089555 869789214 193626839 225012790 1350104 84941939 84008034 175289189 634194010 920129124 113445823 202601940 523418084 775255093 265549170 317491316 404352584 551309494 417200184 585030525 156906307 251961846 845571094 926161985 817670550 859617756 121956533 711130621 891193466 939619492 298673709 688949606 632411449 994123895 95481878 99533086 98964976 730534841 661588222 939875973 130166630 339101366 866630366 981720225 49928289 247750721 358143707 985010913 251217723 653133711 103841354 601570460 741596277 743718464 930089692 974903560 473809032 630473028 774123369 920248416 855212590 991564961 394633283 561663117 81032915 452593893 73107564 596502049 66682442 817915581 628486065 897842066 546242636 937086214 563402062 825241506 972286294 983219551 386390539 478350802 744439004 969560858 264317126 569084048 800219104 868666061 807756542 836680408 70547946 940612459 861111738 878809967 866060854 909552818 578650864 582379134 578782843 838136849 899578416 902103189 826985481 979253911 639680071 753815109 343406331 884780245 530410844 972346205 331669191 348500224 34081571 472553891 201709065 505464622 936733328 971103382 656036654 691255504 610077379 750460678 1267166 510342311 828681240 922096935 926937819 977675656 871884346 903551304 950112623 976661552 34408090 272586277 924590831 957900361 160022608 463519366 810616761 909951519 305328705 518569956 465397871 538075670 821594124 925427406 923474976 965528961 733597276 782633499 362119225 449589592 660728573 866570981 348088363 655091125 875280900 917908483 649821199 863311484 274875904 779991455 565797257 722995089 468776731 792748393 740883336 973784515 300732964 694029947 933680396 950417128 968107719 986934030 978718156 993698191 159565478 884091451 797561127 797573990 390619514 983647704 262213381 634311626 891696937 993190290 954136820 954176496 795243275 840246516 674074948 954289539 965301617 966772622 483898209 851480720 651984821 889006441 276289634 466576159 226405231 302442353 471135774 495158042 177724704 467047186 164191081 936481046 556988459 674565609 663788634 761233935 715069685 728084661 879141843 883954760 132783922 564632575 370884221 746939770 921638172 938671270 767124912 934777363 749828377 988932756 302029177 364479774 578745948 836419040 188310826 549773398 550650369 641002213 680975123 899509735 347659132 971159848 162462992 368024233 338959743 616441840 68918 473186346 223536305 290247362 648081899 959184379 41324241 775282838 558891933 905543971 520571849 791097673 350255226 605083223 796215998 821805522 290683326 685593360 233643179 375898685 486950225 964503219 375800464 671623275 66378013 600929615 724747454 992698795 693405943 844501802 155058491 326817216 722577096 845636345 473947952 629837382 75598747 561175073 291127119 395499694 13408233 589792442 714742577 737510619 28609630 464544005 439048831 486520491 594761812 849323847 372860607 540216186 204893294 831143110 347243712 349962773 7865904 484567294 57853544 655984532 694511577 966524690 164827005 542005456 118551195 865578823 203973273 960719600 944858584 976248359 234341044 452887373 919378505 963663804 152186191 543177005 487138095 616831377 202018233 251131478 711259164 905903594 481611327 719829153 960091879 966452615 55610672 991870491 841640508 947400607 304356652 608191918 380137956 703747601 660260997 958319011 285965055 835538739 439618917 818656107 917393260 994053727 294931984 789255977 63408783 97029354 969193482 998328718 109790918 301389297 626593760 840120644 870642615 944172049 315987226 499936396 299665441 320730107 586226630 661574709 148499586 195866908 575778333 701339675 217862214 541534950 616043073 875349566 412277099 488067924 148903680 296450324 556643401 595921090 891446443 912954441 429373749 833771517 808732311 953643072 125210579 128310877 937100029 967760237 64793107 144830437 633263260 817233817 663218223 757012990 209064552 348540655 189685814 559065023 526266641 970604492 494502166 931363168 507062600 690004319 387721886 496901771 872544809 896645185 758785763 959943932 755147419 790333717 956416890 998290336 193922281 807824293 501557720 759351084 909662219 993052542 496409293 574810676 354182383 673537886 536818897 611435341 188710215 202070902 189985053 798359536 247362379 597574012 546921927 804103292 299295417 720250273 624377509 748704019 994639488 995544862 646938742 797816361 598359554 981634514 562379779 824676248 528463727 772390985 341655334 478693407 376239432 544258777 702106111 783097440 175294532 279958092 351443990 576217571 694112197 831027527 900867144 977939962 440128304 747243996 141966808 998089548 500735534 694589268 347364854 382747541 663581853 829180066 2467572 214654855 887640937 975262821 562898245 794397969 544178186 823564822 762154247 843180053 308732990 897102792 647337197 963038091 528857317 613298333 835177968 911869305 885634778 916554280 435270335 461760546 136711239 199438224 620653751 711824676 712475996 874329516 215798771 221281347 142281611 986214898 434608378 571706704 70539336 521181704 255700340 279157026 791160407 868144128 784059852 971111700 117975934 951982126 50955299 514074628 130486698 429454656 815443106 857339615 743203512 760224981 315577427 498661623 357686272 962535201 115036064 184381867 140035414 910074230 122418873 319348472 683617528 778352090 667602054 959815770 554714798 866251410 792842719 816839721 628719699 943400481 862285946 870761625 32478167 864579713 208749438 523769939 680835806 753034509 431909980 468404194 659042146 768936447 968642457 977308522 647761864 943424746 452728709 687473220 348920552 413491313 725610572 818287789 914961476 935419141 691073276 851736423 733470819 793776839 472965225 988718633 884167045 961064875 790643509 953015348 54830080 191766147 68256954 855098498 184443983 522757628 211282725 741115439 281699546 814849482 388015631 772509611 650407538 822380118 932716055 989945171 419878607 488655063 403075295 966310454 294518967 456970950 328383163 640923012 686258251 707697355 757038978 982750832 687155672 972956599 405431825 759275825 432530208 899528428 674343237 744892634 319128035 660762882 359186960 883136102 735538806 749264700 533316488 654992518 954636541 989732322 609303410 666604371 798247834 888275711 786189534 795259714 574797629 715760450 999193778 999350306 449212514 864545800 940039895 971110908 913858209 967014895 289174259 513462581 512836348 526096424 130195126 537107638 172900317 531552240 124202588 383505318 469321307 796035120 877415326 885376075 68728844 454960615 568340776 740781020 1535087 217270775 771539186 892953784 461816736 589989092 298015737 571839684 608739735 830506732 222735832 644893631 151644946 182641737 239195612 806815795 184179659 534827653 719475536 744004983 756324386 756701739 400973960 542030554 907644976 955003154 338856267 833318863 555809740 839079716 394973205 736600689 921731434 935963326 793711580 905883255 387771412 707042352 983802367 991652061 899132021 984428339 902042196 979945005 381731543 572402156 268375547 473759980 495294382 680773135 738131430 756823802 405927394 770939803 901980388 928975132 487847073 790788770 510790079 635591497 780226214 986793680 265153220 993880984 624517512 751171821 935176948 950234525 845921214 905893089 7510786 969485515 73042922 958962007 743471206 780845570 221499745 314375691 490525071 739141923 437342109 654454948 668479314 748768541 373465810 698347512 399181112 839768449 231449352 386078697 590451101 637807552 619747673 783662613 981132145 991275557 929936386 989810832 456043718 462652408 8309611 701586899 622674672 624297487 357439743 704593633 692818070 918040199 364674746 547169034 807899514 948274051 516098903 538462241 108192317 328771896 621767229 892964307 562084928 811169324 5306944 295100225 228880183 844536115 748776066 924080424 119921146 729836940 164545096 811639173 882403128 963676868 653886033 751905531 684132159 901292280 859327356 991419873 331469713 961281262 969713267 978446017 767969952 879347195 984217085 987324833 347425501 923872159 814177251 856688384 121048402 190337667 125676238 777294350 77967542 353505452 82926853 730490151 717732574 718893265 909568145 944301320 792325951 896975070 301726766 609350325 219055251 957628148 933429735 987264233 981209995 990808242 610074108 912551480 1096569 859399705 408291346 612171093 640462538 800328792 898816885 943917595 29362299 776061376 922965677 958738753 133271394 303431935 388998177 533771247 63447650 258060322 713683212 739778071 346446989 430180987 972649567 985008736 754276955 962525707 238065190 480590683 209593770 438429523 442478174 453826731 882595598 947041586 728124445 975626650 512338292 750630507 310451370 547402806 956547344 990692129 277076409 934928144 879865574 986674122 523680357 592020637 443808164 921687043 39880939 81553932 520231896 992256388 693335635 800161393 600019593 867265368 40361645 53287823 901468758 907121193 585491933 894757950 858665880 907655644 760535661 821049541 931848 90512630 423292617 828996844 688088620 998542062 652370695 983519020 130981018 223652387 297574460 339143748 798898206 822016044 524294076 665760105 671324026 757914256 37273330 423681383 724892438 748478330 587014146 684631051 817760564 991861735 642272846 982223558 663052347 748738621 107668746 680808598 999245956 999345238 8682549 555282724 265919534 290927837 785415894 807835578 154428431 774349675 26946631 159413083 255168380 922618062 988892108 994267458 347722333 663712219 780554541 930389553 382167110 851091892 476279322 941842408 837264119 940050014 353403849 848486709 499248510 989629606 509900234 519816186 750511101 852779402 708411322 994815800 235307232 381596925 606032392 606914103 705227332 846388852 426528989 930219009 847795104 886306333 668394099 774109025 271606052 639867973 277663931 935644654 521508423 907192109 182501854 518331596 565571845 707385659 575924258 774170460 583472915 867218610 74681560 117681103 256825953 687127271 896022549 998168885 358999752 659989563 981465463 993952744 744971729 746964939 438880351 950907115 833654230 977711143 347608476 726813505 236580127 340445598 581008742 797552185 669664304 918166605 440763903 515326805 319389126 603052776 955786390 972494701 904528565 937824209 361863117 773402893 452033133 710373701 477567907 923513727 206622095 601988562 411749333 859188022 215957202 267352101 955088030 987653146 52017230 736218116 995977376 998682347 413855944 667554319 237021622 747891336 122203262 418466751 171252053 474890616 220553635 401810960 337020060 617598679 783011068 835354449 938503402 942472358 525908268 681917988 861352295 963034633 598750246 842189097 359304821 734493251 402107753 592887241 555286238 979802815 813259658 822404739 968866172 992295101 918269058 961251172 991131521 998922693 138902226 527238687 618216722 708502143 917675987 922443556 268446902 474643097 462691340 844051200 582031507 801962869 369897595 563189578 226475787 665368493 831131291 871480031 890947390 946733411 320300763 815673877 49618087 671161061 612649978 687692471 323964055 609197983 255870322 528543757 503806153 618100375 433464670 508077011 835102306 882389959 811504546 929664373 709044068 950271888 483490222 959105917 88209880 272423821 330161712 447423820 191128533 799571284 982599687 984214208 541369087 764544744 716207633 972073353 691643686 973236614 892192861 898003173 517552142 536939131 472996105 680492086 812171845 883256172 797470389 965027824 140755593 858528598 13824158 787496701 456896926 960365610 234467164 533100180 508513006 643292515 847850514 958793591 503016787 509756834 468376873 623192043 562244217 972520460 163128682 334217073 684391460 962272413 511923826 733247508 124551328 701720660 446756539 859512017 541230844 552996962 6618257 822087306 635688791 930596148 482368308 838723198 72464588 535310436 345778663 599141848 291823707 352324851 796330611 925904849 2884080 551806476 429736627 827679961 31479484 45251101 776335604 898022547 666981099 911360454 698399516 925388542 156018487 342572974 574481196 933412071 785630452 821401205 268981728 333329236 395944803 915593723 408665808 646185528 339846649 798751467 741841255 804619049 45842211 697012460 570916582 593908274 628245521 918807935 486903969 680022809 509822865 820891746 51238573 907639542 360749929 536255071 174058292 432121069 670894587 979434062 844038395 955082082 529111167 545603158 680193250 839493843 753855933 928878487 632245943 960292909 176552453 860709550 793264452 831038576 633597881 648889965 337369073 952053721 423597819 761000414 778384847 972350599 981969889 989795842 497731064 716267855 887623095 975070089 367051818 948596220 601491725 673915846 212420707 364211244 284836086 645629976 582665112 698416651 173688423 602923222 559375636 722104798 351003705 451596777 325640247 466597354 86365272 622071223 320856632 507451111 748919095 820640793 488088829 906758491 382036046 572323935 619259767 846205108 881046043 881146822 951563869 958346187 475599851 950442006 474693620 649994219 95778467 514771241 323098353 832178830 348616589 879782904 773908657 788948646 340391815 647678860 10632733 116700842 605751038 967039795 260356371 421570746 196526786 921198571 81598437 855923464 962782885 963143081 41046860 825751058 179129659 695023499 793925477 987264311 885093395 928937891 402686732 588892329 237919732 961616516 924616912 944220239 767290388 965450062 825503500 859516610 656758266 772134628 806123214 847608173 883874676 982425379 625710342 740125371 549378488 731751665 820835651 917614263 723436690 828522960 384368249 832726146 642899526 870047597 695142065 752912369 731699635 930038054 407569690 420742543 35921478 560164600 118376874 970329126 16287881 313567463 427122509 993333399 711009410 908792391 841198483 898591349 975386905 992922048 63563023 454519959 50494601 799050695 69133991 132944153 845575184 999218058 344128991 636343849 273958609 822175704 206011263 566867054 843001791 937272949 214626607 676022541 252286265 632538172 248245566 565742545 182849224 822328510 595784116 867421876 801811819 868948139 574165152 839055236 916094674 967909897 978284684 979247760 424374585 817616498 211716052 968643779 2984960 884225820 56409243 86265743 889821615 993234898 44490808 100575260 97468987 397835064 896642334 960640506 162579682 686151409 939317417 975988858 686943549 750469902 882852191 967806441 499769243 899360187 49484340 58886252 847623293 881052342 661423382 705551170 217030131 869473829 420349268 746584485 711255646 932104148 284217891 413745007 725856968 814362456 104130530 752945568 181238582 198948673 949042934 949275451 320992930 741827149 598084354 777014528 958067334 967937217 920700297 941920246 893819752 898162780 860223751 863949460 584059161 742849431 800432579 958221638 966264019 968000994 580756790 969407934 573224553 892449496 743182264 826532810 837803823 893290760 903466848 950642400 921069040 961867883 253190759 900403641 740407160 937940322 653192899 922586042 214969183 766742459 181360171 657336721 857940596 967767642 957589023 959039731 205568442 584869414 936884795 953514674 320399912 644524682 73998987 793728917 153168048 394630078 649623248 769903179 644908986 773469136 928605006 997777760 461953635 534321912 776183678 879347644 111833269 158628798 531008547 797227942 912925843 954413923 514084224 904823987 591767040 783651051 197882824 373795197 636457418 753818081 311133520 861802119 843899809 946397085 356814218 495520930 776646970 863206422 356289687 362911807 191289981 553148969 133948540 282578289 896459895 934844586 924304029 993636969 108647079 933936539 738695667 805705484 42072909 647771668 268815754 348284467 108288699 435715728 263843580 410665925 639169469 965328802 485774222 948838208 194666060 287607453 64823113 621308934 106558871 656816518 537862452 998849225 859039134 862220895 176091184 738508311 521129141 539512928 262390346 519106234 367944777 397740939 317107448 461443158 828058903 974926021 969269944 996190360 884547341 937028704 408023011 858244284 705185575 852125830 915811696 918609145 355314710 466766705 702913954 973642811 268059739 974241660 482767020 819014526 341810239 426682781 957963909 959075577 692465063 821647225 181899411 795198774 287719424 519431551 102919107 399716255 704786214 728911082 639167572 819965779 921119539 929897696 916268682 951435600 921051451 984105571 662900286 822238817 621387870 690804831 767752872 827911019 650349112 959024990 372381677 691851380 536805324 838501964 210444702 533509071 182433494 482277197 376451536 928187669 787974742 983982621 871672414 934270337 201500106 762431986 331682665 591278945 910919085 936569235 836720788 919382730 237924475 648575753 20088286 830699093 314620389 806969878 893937702 933309229 607892319 864956744 457592295 527710593 200669992 956718679 915099369 965589962 704152409 705298976 847584224 899483853 229493076 830806549 77288288 691376685 770667891 792065244 677321108 817991995 370640929 916977696 703691925 786103834 383196147 490720822 128166204 972814223 903346309 982873705 291433304 568911022 979524520 996672050 119433125 246275830 791058603 919657221 263878385 850199331 953659254 981556348 673745370 986693812 601318971 705522947 869256137 948612029 481474898 951316970 663005010 995758626 326563020 500319577 224924360 597417423 646254606 714769579 618363503 740497875 428354065 982789256 178026101 336670380 756014830 909216418 342469556 599647388 209633966 685332851 542591688 641598840 419652429 923970290 81389455 485450123 695521771 741516220 669806441 870826011 269403537 571608884 533031958 729645796 805972367 858465694 786806462 849568779 588969585 908222277 506721306 510280330 13938070 351656792 172592828 914376215 912693945 931678419 387414619 608228409 267991882 404083042 261175614 871420885 422611235 883610038 765370757 830977723 237871479 307971481 506845016 895153882 213978279 856345399 352487184 747549929 621514502 628875026 599562438 978391248 615203608 836830165 976692118 979161888 590358723 908104819 616555015 750987478 758313214 843782931 42686739 499150422 305010423 470729001 1307200 837938859 575392520 941512929 736894417 854461680 367696874 857794409 46613999 600431059 429802862 610995370 981552290 983785392 588095313 828913141 109105114 143694214 642463172 979134384 563109543 812676277 149948141 731415518 481112559 580794067 669073821 965978832 25892440 946985315 113997379 806398419 490955180 731756475 723624614 960096016 350209930 875347971 197328532 919013734 865486530 909696821 711289249 901097341 915705672 923769609 720943481 739883470 18849008 219676030 932237098 932275793 698763479 722652605 440983341 467968203 178491361 271873078 316829150 428550634 916462639 921029127 646380628 781994229 568123212 717898920 595802451 792390152 259795835 785530069 416113120 793166554 876354319 963056466 704977196 776135580 300459390 319712315 462008989 988499758 188547281 343052998 123608893 242002417 267758715 508040541 646055559 757884107 725226751 798575806 560579960 842784951 390662507 716920189 738554911 819122756 64732515 535831937 500075823 594761309 631012472 832922444 45956026 860176390 462120766 854546788 644335167 927605824 762419251 917432980 355789203 530729561 917994496 946047388 580510527 890529731 340875572 877717645 469564563 493301510 271932243 613386205 344171603 997100305 480086862 793239837 708372809 897336804 839396725 940979637 133382567 698782234 700867957 713659553 330232648 409010819 922727526 996463361 715009191 950587187 638448741 714625702 912243128 973464660 328006624 597723988 752324569 880660706 976727278 997897877 782970953 858579541 980465599 990989732 842314260 855325621 789691229 868734613 280547953 398731207 365658277 954057498 598412897 994672704 524439286 626373462 826755333 852902618 998123094 999381517 883962657 975699464 829665472 977087851 850449745 965190657 202502026 546233110 177284688 503910903 301631318 344633148 147046065 545401687 512654174 661975210 251800682 345744151 827906896 844943410 621684798 854206170 277219480 707205185 610877657 898068161 477254441 937381469 932904552 960261169 426955342 873963697 321189534 519493392 211330443 517021725 428744265 914722579 52374567 390481891 105113107 626852299 889742789 895809534 933608681 946644392 560436118 822267704 576411470 880973013 533244644 598727111 559760676 984409387 593862461 727080744 764767472 958923699 147887256 901738219 690822809 838753565 26637528 54563274 103162783 153767221 711661278 966107096 35135481 131383814 392502359 821789685 797047266 999233921 968884307 981484649 337030756 557302464 46935045 567378857 364433550 890274863 574694737 810581913 837143097 879432820 79340688 906450721 135996841 703066334 389928158 691090892 141280945 802652538 274023623 632023570 632241332 875852049 499173159 940182948 942448585 966909116 569804158 657416104 283465449 636029149 441068972 566332003 429361415 817201383 673308206 769255586 687001270 720875057 692690284 981740631 269566593 376205509 569152487 704443447 568353272 915908468 536169052 762033120 407410815 747434640 955269411 985600209 153972413 813911698 521018552 624738009 926568759 941932416 871010468 906260589 845292129 906063355 868091184 918121339 238443334 808462387 760392282 835928409 920561066 967694305 413411827 495206935 214824488 262997322 545915293 624060152 955809527 963922907 800495954 855435678 324817763 679471908 515156793 765687976 637135835 779049308 534938503 646724261 337312699 502124679 767742739 923528441 105882274 849825640 134606701 909365220 449424766 769814224 429565139 803068374 469404720 565873702 498543102 844511135 666661205 887352725 311963644 519682941 921832108 985153124 957751058 987793617 468126194 562503897 436047367 687027482 601970930 992304571 362983709 734887033 582168371 905561541 368848937 936750839 861946015 964430512 751626718 975315309 648253505 648559216 463601255 579013749 406310875 512404386 446626276 793726555 943357601 945871898 864259934 955757015 628494138 678013784 784724096 925353084 857111713 880535343 414800262 519358747 888015268 968346359 817600769 917821329 392127720 785989657 785932601 980809791 17359692 747452322 211293846 405912403 205679316 366869369 173947815 182978426 945117695 956521841 216419544 836457326 885230660 940227593 617627566 666406744 993679211 995127556 5410224 840277755 867627315 871828803 625334474 720640723 876126047 929626134 249587832 271985679 677344199 969544432 643681272 986489050 709517772 890261296 585071885 747954527 677630245 684829597 366683511 850953148 732822884 814295546 515505037 589068462 474397916 740885131 992216893 994960049 831216078 853563177 786649891 794312451 609465430 878653769 996980873 998030997 7138533 980116366 734557362 879485413 320031196 742176791 162780194 920869707 86379240 927204523 696771718 764381663 357833514 767167668 164836758 740462513 620215274 969635209 22273472 316819607 68810835 430052613 929500384 965832810 593495582 647100973 666712651 688744624 269225332 721577149 613586151 883873412 493557224 846418935 685928984 756118762 125963488 738747125 24457051 958791472 45804599 613891618 44584738 955469907 567428928 911160598 480805036 529221668 764306398 899149148 656917682 687175610 156980957 309922737 639247322 753877029 505725161 534575426 591082558 615997816 232904305 399588490 911062959 982275506 658962120 811686052 419106600 535552461 287668070 357636821 529900339 547547107 39314982 601526662 41837273 79918591 897054703 998267529 357093758 622575038 875840433 943323876 998997068 999346259 99090988 949850036 818536781 961811316 832010929 863204194 638084060 858263175 995396815 998691638 930621368 975288387 935912576 937819696 475271096 852446229 930455042 940776587 88534503 475688420 504219943 765447752 224365478 829292888 960411502 984107157 580040275 606566311 598752690 674881780 734880789 951929971 9629518 708811956 865826514 874764884 20797248 303687746 594042295 879480602 95461464 525691535 256168063 476288059 487286800 586364322 206962713 759139250 252257228 333523949 519453254 986130281 765237995 776126566 745692798 995726398 377614329 416288650 987744001 998012331 960657790 961106870 808099167 886332063 874859589 942870228 16185789 515629348 823449977 883975581 772803089 967082469 418696870 788677919 490778734 698596470 248786104 549056145 301353060 847493110 898327436 935047384 113038237 892586735 979663067 984538806 59321889 335410947 385216506 617056255 219198182 933488812 398565888 508660470 83252454 390912083 474666066 575820148 610646633 634228281 862004227 946882255 978667047 993397927 882427238 969139928 484747155 817305415 947739981 994648857 739199132 745386250 80799927 401514627 43186754 464661870 174167681 528589394 318984414 650304621 249330458 626931273 352560330 798231505 403115888 437361533 168592291 675032730 525301137 975556448 480258741 597938229 39335454 73905839 5634788 983325143 564908585 902693817 329035517 537453044 127704491 392547105 921073196 939195873 901278013 976121490 972857843 998232169 97039821 991078808 805133759 884739542 506723569 687585307 63014535 490539322 43314164 536074873 878449664 986188495 809568040 844043513 350229789 904038406 526548929 764715433 876898177 909483830 935070235 998538993 665566371 881185419 571922215 980097860 591774979 814738499 493567054 954546095 315128568 995356058 358011937 927267180 481851948 835558060 422996992 787416748 444354504 664190885 146783800 664269753 22416454 551973759 347980994 919235200 257029501 656846778 567033577 736629044 915917615 955095968 985067939 990561253 356844971 512920247 230221065 349439452 588252839 692023640 663697942 906425707 492966618 620685219 873171832 965883914 372087741 396613537 810314107 987689013 702746798 908979262 524234969 889037632 243740293 536757468 388080052 751347108 541569779 598048261 623585262 735342805 239314082 280617030 208252199 232736337 618941167 834230345 32752226 382286597 818393481 967644514 619299421 689595627 340753718 507037440 769252048 769395868 435246932 675033825 475287327 918014794 239744873 922442439 255740676 896208690 724111859 776237151 371234354 990246778 320093653 681128292 478751460 564964524 461473918 953812994 353391713 917430161 214492331 574886756 906456779 964428085 801948159 884006856 976901418 984817998 480214794 829726002 637476256 825400340 390137819 720828608 190427559 556136673 221632035 411842902 691558157 920912799 445265702 778437659 440601264 930032689 37350923 696052852 700186639 988603073 52113679 260182861 51971910 752005402 241525649 594602145 432865480 543087183 359875697 581292998 602401025 962166066 422100187 665189711 538855372 717369906 869090412 869824612 882119480 955460958 55218523 567909162 947570177 995564255 99165877 619321914 954967445 987329589 152053715 412277595 72555691 239856198 891387127 898644810 611444941 979604789 873774268 901057890 674529284 764243164 71473242 566340828 80263371 272267992 214899604 484636967 10745586 171629505 122246379 593044673 794135940 940540615 680645863 818041928 653395312 945501887 143423969 663042778 113403765 753468446 653869659 703832580 330206290 624048536 901169140 988253923 159143517 732240747 668115023 819465215 941903673 971868421 111988090 373486190 243649950 538278555 216943992 534229879 285521584 584443234 855785508 899739240 506119582 959573237 459317229 828944409 106795468 525860203 624871773 767424203 762660908 806921228 534928375 857829460 125401566 547599846 273255315 287232546 863884790 879709769 625167406 722012737 772504294 860641769 867794372 965698001 118083071 827037207 81031603 602120503 346634738 970218950 567717406 983830602 44261577 249277624 445970558 730986064 317252554 562737156 440371665 549631439 204972450 390806102 143772802 397305094 30154853 557199110 443271151 505403711 426704808 564964467 483829875 599918346 244278665 617029397 803279348 890781786 368452079 720557727 531898210 772636155 761349229 825849791 681207490 763402180 860903677 873056013 615260891 760031350 471166681 907490113 507331334 582577959 537326874 577269699 329886424 920042159 897437912 900288458 429045449 940819000 122036885 357536267 137997483 786486341 978132006 996446238 936353978 973009014 724340462 952759422 206831123 887898554 735033308 976074343 907308510 951873418 83450579 454645235 958039886 969950428 571054724 636197999 895116642 956587534 350767736 715476599 571990501 901596860 794804519 949507555 852109000 989772448 792585613 873927422 274659094 658588742 692617187 740538877 464509602 730393627 919143929 947117380 185083040 404859452 376497250 984648113 123680475 449162296 380543281 718259485 379354664 486167695 38934793 854321421 195962074 862137132 761430075 817775520 769229320 979121036 810162532 861386880 266741916 636641265 60349098 970864663 200889187 821284594 666363961 758913850 775968621 994816988 698128287 891099162 457073098 590697393 26227997 373356432 897249033 976809326 134273946 706505959 272216925 945001586 325223203 641733141 297474624 824139874 852992216 979086245 648675969 761471056 946430073 985319778 800094872 971319622 226592561 786404185 540642720 852666107 578893591 592182849 24353608 735268972 781312085 850990782 551049239 990135870 574870408 983810593 80915061 248187585 710316070 866730262 187629911 345186865 311182589 390120905 421169190 441066044 804946553 903996288 455734315 660971025 287435361 933350707 191167323 880832840 559451103 868832898 84561986 598098463 986473738 997432187 525827048 917387739 8578183 106162464 978301648 985463489 127176611 921045994 739193119 835434129 189512163 811923948 866668551 922101047 394879933 534434737 304809408 629072844 300475094 837401425 266751438 489340984 378926124 573902017 764560910 973631256 222887798 522384706 415352819 841054717 842274753 974714331 668557916 855504830 877391493 949254745 657035455 763631765 791545903 850321452 943511509 951926737 905946618 970013621 611319824 953760361 766609387 890233919 204897924 627753416 570266757 618954826 618651945 836072604 705478233 718354697 22630032 65954938 556193568 880100088 343438636 976230934 455417576 765217473 369385722 652706965 604129965 976763919 935768615 987232382 788057742 908464636 582638908 631018718 102374556 962948234 2972222 125952620 451980070 604322575 72271618 794695633 249853965 586763757 336470919 410509224 926907529 938829279 665140860 864924238 155243929 297426073 548239310 811406507 817297019 884163548 240200136 423537353 330149291 990544302 689021306 870584462 276199016 594972061 214544964 842250291 296544830 818814731 529636148 631278221 751097187 976449269 150468596 453314836 289096995 668605148 845101791 990003312 596049138 716377856 630061840 745319115 955870385 988660074 381628965 961907133 190414126 209934552 355383817 871729716 215119950 759343832 196101406 701787174 370396220 894264309 155939147 333303584 57581561 324987378 280567124 942322104 55393540 329310403 300952189 939058022 128454885 641244715 176312806 834885668 283850703 453674086 101788680 867723212 325148572 778175999 187366276 273905722 938202011 952653288 602393416 963357149 215925434 279771604 727939486 920034980 314422651 753811970 394375361 841760770 964998154 991765581 311029286 898773048 816298726 868462003 57530869 394872962 778246983 995224766 58208520 707448174 538301863 654143040 377419481 478299569 498097534 664198051 738638859 965792407 866387206 924611845 81601016 217561305 657436364 925012763 262842315 388242569 638982154 855977978 340380555 937469896 850176421 996114728 442323433 942849834 808305977 995114700 974815045 981912390 594152151 884059809 166092755 441212766 997913839 999315857 409640247 776756155 800777722 939543215 216259265 937762967 863758964 878526177 62769099 131046477 840534282 857784775 515891426 635623212 502571803 700672643 149056613 996052084 362749008 480966498 106004042 572264777 188338805 449461904 184675997 317990640 892106742 913467819 37168005 162440948 964872807 986493344 1816819 541451313 472842897 647755392 608938812 745703414 596700792 756074278 926938170 960315507 374949736 845437565 369757108 612260299 232579363 611633410 882470734 960978942 614957982 905968916 304507794 787736883 650578618 697018102 391392898 673191713 778794281 812850965 310698347 789663194 812249142 827651188 552773208 854329549 689530915 994317228 595809298 904813297 629081113 953046830 951423398 966142718 698331033 834797528 555875800 657934769 632375468 880226938 46731216 910630539 355698454 860189960 754082315 936371393 716553306 822785754 232785200 490689262 63596461 244339222 932484295 944996096 92805248 377884285 607312525 779521150 298801835 697406423 99804836 571615159 798268870 826454737 937007576 969414125 773758378 987578218 789261062 891971891 339117671 721325607 576850212 989039179 595382433 632953327 935509331 969424491 510304471 587119603 57114 325646683 22187374 848595751 87990114 197273962 62101396 166476022 405018667 716039697 59883259 447305153 615634980 951902679 548329095 601767007 957425641 964784891 68829344 381532891 452039084 691550600 151276646 277213075 943491950 987513483 687420674 907209256 579054668 684416468 864717887 997563369 173305911 956379814 111021768 248872379 876771744 908012851 831263088 926458381 385430144 404048337 394981156 407000488 648045758 998730470 887714535 919229509 803332915 870758356 119647062 606556284 629561982 868465113 501447876 562626994 602538052 789321902 35940469 891425047 922167273 971494004 903441370 936267128 782170159 796677039 730110177 933432615 257217754 644436186 681686956 924809453 137068135 176957522 52754672 684029188 847256838 946084076 125096343 285284367 971523124 991681142 806036776 866867907 314813752 580553569 443573615 902822959 557178723 765565295 435849298 821278472 987196185 997180885 279172015 812807156 193755048 637177145 953159176 991178865 44531985 77228925 375101618 392730669 617656728 623308311 380605754 525619200 455014346 646329729 978650812 995846245 46924979 808473550 438724678 754579527 881405016 905990370 723112910 729991283 329566393 772301933 190685568 420637657 550868423 804362784 285685202 512540443 860318974 906442988 540398242 615702314 823052074 910066255 379544024 528183312 299638949 888928745 459726525 907165721 873030958 990867275 152204419 318531562 319844330 346880689 660922380 914868024 725522497 877847173 296849372 902042219 478188898 994724283 114593763 419714528 439203983 763714892 681751662 986157494 636269536 965953992 921082500 973970172 164815163 610905300 906337119 930164490 504893536 715805229 612069411 898399420 766835324 905728573 965949567 982537229 222706775 458979306 448744877 804239300 569635342 927123692 438159279 982426088 37453078 421217413 212164512 959454806 644112984 681394031 252917620 491796825 31242155 395849773 257253995 277033345 819124660 962511842 71431408 434167917 952261515 965748025 779827904 869197261 75152132 841224255 533828759 662206608 42533439 920508436 725124009 794230057 211786074 727021876 359815067 719313098 102767617 782450327 322941092 351536765 30874956 733652576 383950313 393793342 74489434 604888684 407084211 443332862 824343357 882252896 667962822 901987175 948020370 994328490 132143728 929137466 285060529 792406475 755325731 886919375 182178699 569267783 116752452 785806285 941480728 978230628 518806448 756667794 777734252 833688730 656219357 753478358 91136517 732611904 426622607 630049503 474747342 680781150 633155738 894343024 235690624 569703506 100062417 748277680 329934208 492783437 829408334 903112489 529246680 778197790 526466917 915297654 982425216 996322508 649688865 986498617 933541205 978489790 781390252 944925484 872371666 930840989 795956266 980879297 820468503 870995213 513774846 970691991 399265012 462475323 375409906 961961926 505310414 568965105 320625998 672969384 745568360 880046274 671280356 714311521 436647393 764293063 568977338 846066531 630183349 798883160 921188152 996937146 764155179 945513288 21142636 61723468 403285169 403576144 992614753 993206437 204267605 313729251 851512351 932723798 538253063 997307948 854255816 927611913 770454691 913774184 31826576 44932402 38666239 657011175 220053692 576477078 121126857 467553777 45165114 530159415 417762086 819958873 118494302 579024150 844809675 850995047 763699790 954721213 78365506 564478663 233681336 574172096 358380191 978757053 12013031 283553142 448332594 662858068 652777463 909874644 261953834 863750908 864823745 952022888 681007054 703617698 14088081 504516782 996102873 996285652 712666645 718124757 586767917 598292395 454400608 816286481 916887308 926696668 609542340 790896300 101207013 816032802 224591071 325679928 347626327 574979958 806449189 927236524 171247072 330358096 665336391 694243572 427868346 672120726 564740949 618136390 314985296 793708380 820651331 889683143 988759444 992565069 454053755 798652289 739989895 756697932 932475437 957751628 254071829 375684372 861432006 946530343 376712533 507931112 976782400 996198306 412709004 701122743 608415280 763793984 280978049 421335974 566099058 954365192 288358196 996116212 939092711 979209676 221717041 467195282 587950538 722335562 524454092 600487357 221770841 540100831 903168175 991808157 341136571 612763916 645961113 872494385 79233275 757014890 863116445 997219416 215199262 226697504 954158397 977080916 728665484 767855930 556507567 919578999 210454195 330141953 443365856 700544135 258316894 829160110 644861261 823716451 136866814 142969362 537708564 811839840 439691600 984286541 986912232 992695737 970318311 970761725 249310994 901340156 342833574 496348311 564328880 657880693 858223114 902391178 491859563 756828749 539876864 847289556 41063683 935618777 332160207 949395009 224560967 270428749 862044510 953020821 442556457 578109764 841385367 988176388 886341852 908925997 685138237 702247960 747735185 859341654 632468159 687857903 237099789 298043286 443195341 855140051 852343010 866833075 455069841 951420300 84108249 994436734 412205354 559583211 146601377 649083465 691685857 801173259 577495868 952702030 292993739 671932904 725982251 895552777 468823710 914018555 755672672 926416841 311434808 314618452 245437827 934990089 787110352 822648486 986632848 994727876 408761888 749589597 304485689 960021513 904229348 939529236 863748481 886326868 154684449 995668163 825414184 903844398 474443116 842974046 956042188 968583102 19808281 778848551 53888993 94380787 159300616 771907032 560794081 994698924 407464416 669054380 164074843 548219495 109695571 334911771 16408333 823666412 751689082 837401741 852243618 994494552 432464561 763066533 873304432 938046949 447864575 914893617 555972731 729047818 622499260 682429076 511625660 741882810 185258391 539133357 962304283 976537281 266608119 487494535 646286104 658598213 160189115 704154628 760167340 805778331 726100383 858505122 292720646 843100462 458120878 777786983 229706567 981212417 370486247 891709786 66425366 444731371 601920872 803841334 109456234 795159474 68374961 259630462 717962437 993878696 403995484 970156740 434676421 767517681 40512595 978896954 937136203 974474460 283620430 945846787 710800382 756787783 784701948 948564024 476653636 947202402 747226689 795111582 627767434 918337534 957545668 992685870 724523491 945678199 783657870 875904260 674816029 907572245 792387910 978677221 170301497 835087856 667845255 897118737 752580668 752861819 8054558 807659133 249403396 779139239 187402416 720197292 12313830 438064720 135494443 869139477 481039990 639892282 380025669 789961957 30345040 141252851 363719500 422840601 183933949 298897954 766074359 866092586 463913656 556755437 296434746 685948661 951487064 984516711 459369152 691805624 785440187 885552429 679015380 830523335 727815924 755476565 243255037 941302329 801166256 960739163 683924290 735044516 51359771 528638356 951978634 975620057 580566446 924272915 513126563 702159376 44212661 687464594 349190837 829538832 743161588 775742475 235281886 746086088 891637485 947433124 613335625 932544538 301561628 691037625 7177959 26098063 881588447 942450268 765821456 809673040 150639594 730582655 283565037 716940648 869713705 926537660 626838512 642201313 787941891 900491307 486458151 866889130 1288473 446244854 443916157 525561894 942522541 985498715 515631296 929089545 668053637 695546650 960161542 985257837 359308209 540933700 943420359 957297851 720335436 846482392 491397962 906071045 64495205 824520513 905236087 998182454 17039229 869272397 34212659 454631015 5028886 802876539 117252383 497429059 226474276 768179827 793823198 818486625 964611118 967087773 881126075 955019797 631415344 822284774 141688736 948270535 338674309 440407370 313500231 663492202 730303462 943345083 750629458 755508306 967580230 991794201 48074008 491917571 366066835 401559884 595661992 767457392 409897332 681344489 429211398 903381016 984691171 999036948 255738005 257015408 13841534 766452948 418323031 464617860 629912931 972974925 708443830 866203855 455073686 923282332 756651721 903128108 275415533 929271848 613445174 887210620 101889414 820186833 373130994 906949911 616937829 828294790 67969860 915046931 80418325 829096330 503923329 644192561 507495676 932186069 510112903 956551133 989351091 998176527 15982866 613277914 927557181 981652889 432737532 603069171 60613889 351816947 824636671 979158116 968365480 993987938 958617642 966690444 229727602 276941684 845019016 967376108 914753385 928836517 374885742 665119057 375091221 648852323 336024556 354901850 253741948 849751688 549082507 636503263 205976649 299984205 387284058 502795441 854147814 872308289 577697914 616642132 156042747 364480717 55113279 468469835 393055242 455162018 402084788 572201893 203781297 783085807 17354993 270485727 433565048 882214917 106099161 892469249 883622578 950941397 844675779 973053573 163949060 468985786 99202995 156333408 784323131 971099949 392328606 865437774 690494269 891354026 215429029 531958108 393326692 434605022 722929018 822786710 555023283 989688271 212484577 901854844 550441981 850235776 629744831 864656805 504418406 855971786 478964394 741774170 534795989 935770800 83582323 407770363 54439098 357411173 192291326 382686127 252467256 487550163 906991098 991249071 778390723 862947228 98679089 836449108 712015666 984624509 435614527 948404115 817050259 993617532 47251916 780457629 708041911 756115637 80332437 945557958 628776285 893753285 606046276 795475647 977480254 991762251 512553268 838823486 533218770 888343993 807729429 869140644 97246102 229501849 738083125 956564170 662753082 933911156 893508977 933623262 330916173 602348091 985596358 995200243 911981378 938215719 214415509 896909113 816127357 943257178 867959702 944815736 972786926 975038633 255881184 503393194 11755266 961184516 967847992 980815360 626930131 697852014 478079450 479062387 347447661 713935391 62728036 991118433 802587558 894356503 446484173 455238831 590105044 616581202 25586873 94887106 608557036 820450340 273371394 857347253 695664990 705839766 933896374 935705446 597129369 619765937 237434027 355630755 142733669 895053250 307632233 633181973 350849426 415178819 104308816 500687108 855474747 947558907 591482793 702903048 237214861 618114651 666456661 684326892 922456121 978499908 695713664 782651010 207150290 756069689 613008262 845485869 197990491 601216826 22793848 969238051 100640499 941287864 184751854 502920191 317859378 757413546 767239433 897531696 948616324 977939965 642810393 965025214 340743451 385244567 362268486 910908265 830980849 848023412 391825535 567719470 110181751 171871892 848311910 857767847 972838545 988961549 444787676 564413780 404691530 856802685 531070374 682699684 900730564 901394643 208878852 546468388 300998522 852657301 675277331 738074520 87260456 149404120 735171095 885022738 927614209 994832250 852961371 973355912 806001071 921078563 808768441 839096158 273261860 640001384 899294807 995871953 64059054 103513924 816467507 902614838 988521911 997499533 287176296 542734700 559776137 648178056 98959075 406344036 985470557 992103468 79532285 906323925 474049413 510506651 988684191 998448669 155582201 604456549 484156636 997973522 702354045 859385887 269475484 824611776 841124643 920711730 481986788 678003830 239512721 689113033 388977275 677970570 453107860 659325394 380000132 998547343 233962123 436458861 356723177 691403010 796675037 905979472 820703774 953820184 187422724 672860071 179043597 931903504 725562044 978268385 937981016 948644975 166942771 775195001 202750628 643040572 494683753 568045900 746119470 754498693 475699094 916165815 364147208 936888192 509969933 785278241 789637961 989551345 817853254 883636125 406795715 624273702 816237933 966395014 75569246 243512922 797156855 972894498 106905806 213636109 632521114 757366304 328797220 629650633 810675932 936071617 692946476 780887244 142642774 607643101 299794051 778434322 512383981 530410472 508659311 847381778 224684092 718168767 303567897 546040306 661457284 873834515 993879524 996715410 518432191 560530077 349026794 949862418 693466098 849574922 766530899 784025431 560443571 578068796 407915823 778700205 139240363 921096577 875203511 881130891 110478275 579395805 408943999 581926049 705658410 873957788 395634479 466901761 293262907 921035871 261181938 822441114 645703792 973063532 640668054 847402298 447601868 588999618 385207736 494281805 623944003 903097224 418159236 780811239 565303595 715689921 189065445 996241988 131304274 477067090 530368485 821556758 862489697 977654900 288011478 678232146 419292371 559224916 796780192 968923330 946635916 953774483 653678885 695167837 746063101 969095012 99303684 524429297 105146893 715232222 237174455 718856043 624676158 789863978 440776021 926382897 15051867 218758006 695449419 907758464 478004517 840297994 81524534 271832020 388638374 656165971 304543699 875512893 414336144 458069991 911260703 930389840 910157388 911637004 497023616 815569099 928410999 930087500 933977410 964225274 343934267 503563979 593474265 612923444 397059689 597323245 778679011 823304885 529148605 862182070 786741603 928639658 615601550 768803828 223558860 695936339 731517334 846804176 55385993 873581127 134386164 299044206 150866292 916179013 717558856 769082877 901933612 974126854 684465066 972495721 136104264 286134100 224741625 519059482 475075936 624227597 614420080 904930771 202063993 742157912 884992060 967328717 600483671 758478357 734783822 993085896 249410468 680564781 323773367 899498073 439360393 914624334 360152530 901717683 230609458 972388939 995734670 996569876 897047940 961179718 37302511 870014931 98827540 980510500 153751718 191891783 337002894 994568352 977274607 986976422 724503716 887956807 382629013 510782913 928114025 996613095 885061431 925138205 772141141 799794887 86697093 601120553 703302454 812855501 737637229 780311587 977884190 984751582 4639302 890784793 170446885 749842434 833708682 980258161 16704788 688039737 66182587 284258927 455472564 860670058 50465532 473593147 434235116 913475639 212652028 968998593 398132225 718681362 402747919 578307874 801387636 930254719 417042560 916982420 452332753 667663346 807309233 863259301 858059166 985313912 667745041 709129277 598104008 663125076 354833576 656273526 492746707 876761175 971593984 977763197 722207352 911359246 75268385 806808590 849501628 909241275 973008510 991041743 996617542 999192767 603436918 777488810 211997293 407695914 823057534 879845153 308386055 486728129 683685414 735461311 626641219 985907399 363210511 924825993 871391277 876622879 833615068 908311155 571877806 786356311 842011014 991598961 493190512 860947210 85306027 776058134 909041807 996422659 50613850 72573235 26554167 970570456 215078629 816012170 911006046 988862073 165171436 433855742 795059648 909682256 92787385 207940028 324636048 947031622 464043916 510780872 36980862 370127137 3712782 103741138 494360329 981152140 800569906 897931159 305967799 594162033 597849512 993377205 870319517 922281934 214607282 663757532 236448410 794093820 806478352 883099506 26003105 628731113 852546493 855697892 780835252 860556868 993550055 995700526 378444578 536809272 810908128 818766109 334253672 828531621 71963255 946847497 481453472 754866890 731083390 976470184 578086749 853672092 217736142 973793202 509288815 550978581 767846795 898360231 269153709 395308863 602427097 997660400 678352154 853894188 758806249 929308154 798492053 884510409 819672176 899600486 468731364 727162023 229336909 384009721 688570140 710109098 923187840 968589925 648506323 852948499 829281394 832957900 348180781 752514569 196181090 430306285 961194163 979902033 350880185 501057493 930629903 967579423 219797856 881446813 843134401 972856778 147420669 539772855 153459703 880751377 400668006 534907875 636907377 759117665 615772766 797315050 907522670 972412218 421582099 696262219 931100999 936971675 479486404 558494131 632195478 994844472 149198609 452418174 45935586 115524269 476050641 488571246 710748693 796482000 159507588 711255946 732502177 934861050 5579879 257205753 449958952 489346078 352445897 770414902 104343566 525807132 535918687 877969257 751436316 869993098 797004263 942693479 671272629 865033795 92286115 771222877 801897156 841723435 890190783 986836155 945242485 977692480 458395944 675250774 970735706 986608906 30082907 980706700 748901793 827814778 917920617 930532079 826712143 932152577 440440677 568221239 98576628 904038884 676638893 882959459 642727902 938536861 870432478 909928099 59318600 283210647 880324501 887518988 449495405 675409535 354209044 926158328 196892430 817879675 19388253 134048881 851938899 995310209 782975305 884686809 409882690 578577418 282309681 948624689 123218299 339782905 513578831 835756468 678092741 791113316 957391647 967716239 188762776 787779258 806760850 856098364 552358884 726545903 743328741 832436059 248529446 969018362 657672338 834995125 174696412 909529042 112845432 929854253 98203475 110049691 832536710 865454720 346215051 644529951 271221030 762600546 591627625 967171515 535673825 819802641 185814871 887713942 219932936 881488578 928111943 989098169 956688618 961606093 959263407 982948798 199949133 352629086 721475942 884232924 345208428 956527822 345717811 479263426 571909481 655325165 751364526 942077037 442741108 958298971 105359395 439544841 129974355 788969819 184461334 576127544 425639498 515933316 636598203 697931024 169134006 557252373 378388311 719111855 809514187 830428685 291031856 400909137 137055154 595882329 689203764 770822496 605293594 632005718 363567628 392938490 696361026 940962881 322462540 348876179 609996516 870236949 557033142 889539688 131502792 368024397 468157349 894803763 730132816 919747033 504205199 519265581 394621480 630038644 442013384 545088420 237850809 345806748 118490071 973458946 348635403 765461139 659721599 773223906 257408587 260940105 363950704 535101339 771297723 989142172 897908477 959031981 408335117 499523164 931184684 978249971 472979696 827291127 46149875 866202837 827307333 919687343 697190481 950729757 783597152 924572201 334196935 849190912 694972422 730161910 595725210 847869682 493846157 974479594 463037457 634621121 178715422 285962586 13217378 154970684 236348707 411800679 592418579 722751616 35689544 820571712 17549936 852211026 756865830 769886865 548312477 569826117 73041658 197900840 564513112 791644656 326716129 863240195 356061151 648339130 164946645 657832955 944323502 958670445 858082670 894056278 237095502 421416122 872323598 883602910 21819739 370236452 384667027 812379212 362057211 399189442 772344940 869385787 489244542 906951710 418808297 620172849 964107785 967449072 718185158 838734986 720800674 765270020 755845462 883689841 261596250 672776424 274747872 390339845 255936845 484110640 620783182 740825658 622000766 687998223 838582395 907321337 424837980 990185051 141225525 342361563 905552652 961326073 893968583 955582559 104343533 349983690 127362321 139202331 290096582 593607253 666732278 727456956 566465717 661041081 417352729 880423808 291779047 459898944 110459529 741682247 894826763 995767140 563628578 938043252 111873424 683095837 434853000 533882163 322380307 831869007 669322277 982492343 291252671 944333423 572658022 863930257 13303982 587643572 667111220 730886298 301436406 934981182 385903560 696377290 500671839 601145586 60508712 873456542 554122062 949261838 504054755 636931745 967653353 990215821 195197479 426560714 497834118 998989885 360175201 606108487 375049343 947898397 693010773 871495216 405522060 561411202 934537042 994825778 722399835 903960793 721707772 767227643 621434681 738191210 767611893 844945759 815003067 945217260 974511940 999164047 207286267 888177926 361894327 826197628 38797486 775565809 327647745 749975221 863635880 968516441 143314386 943466973 814580605 859104595 857125852 859689805 982031462 984103238 650572787 776147332 858541812 937785935 52172663 807453016 766541928 767375870 667996114 684104149 64302318 996187245 502231491 983784013 509737652 639479302 916255540 964979010 377281243 851518085 29462138 78596772 30226485 636435343 525325796 816963211 468533374 739199678 21765609 129517880 665286632 685620309 697452559 788223380 811272302 924142134 488086162 762025912 596226218 734350103 242248077 832035537 1818935 130655759 872335363 935006801 846163327 981496621 730863145 927941434 451636105 739427602 548223251 918216471 835384795 889833126 18853379 981125725 917323133 966447981 316922387 493597750 579881185 766163572 708093449 998055969 15554957 415019906 6981400 842177823 615624708 892304862 462934695 507506098 849491270 922629771 743498894 872028438 88777928 198566008 803489903 843037770 270689779 905261227 97111867 737523903 767076980 869837079 634907543 674259333 400902443 727142417 464533015 518937850 477905526 957250942 153198772 753497344 807034067 901536768 167133130 619687410 71744996 110648757 651841051 737229788 129432599 525042749 638461793 988948973 590977548 961665280 808992640 923727013 205703857 909806236 543388293 956319088 312397493 992128050 369777082 610457308 51740105 709846706 202476336 671795090 585283166 818659424 767311072 788951832 26435945 863077527 838358144 926545687 775677018 948200207 877866663 891301968 173466013 178725003 188879824 943622216 589360517 742557625 548967646 626379845 75839786 735899531 331692373 590088044 604537432 734043722 822818200 957505806 178715282 883854486 857198418 888178101 4733535 770217651 561809170 936132296 545954734 994365744 193878162 269876186 62967421 592396383 338321037 618517620 355281582 918170455 871692172 972245378 669399316 806413823 565903498 997484972 69421864 342096300 700339209 807140188 956680629 999263023 469257595 937281109 498925146 837531007 138109901 469066520 387755515 899508607 975532964 977121816 924985758 935967786 3519187 330993260 79768633 979747198 685398740 817485175 733530235 840185388 227550715 828472025 157109883 965345912 131747388 529567479 275190794 569505608 875483563 919836855 156917161 538256346 798932510 933924321 428110177 887031980 728210805 791909796 225313970 515245996 289687849 696167358 70891341 795435837 485906903 732930774 978663254 988343733 825881904 857718829 323743030 946088518 822905843 871880103 493824610 612754392 382713390 725323034 329656586 746398392 663156251 845773925 730771347 783490460 133640663 755106596 153094047 932981901 17719138 477811395 647226287 721860168 485226593 535473071 707086783 755366259 82589420 484226080 497116288 660664612 319876855 323197446 78626307 622177140 203303064 838019450 315465600 601150752 209906069 606428325 222521059 924031293 165178100 468530497 113537301 418737679 576476773 994216489 630963919 637731527 883728903 969619922 667367789 906749395 669173438 680126926 66430689 377006782 788634981 862552509 863679349 917442329 750415038 962658072 41629888 717881834 184863158 614282441 552000153 799123118 601170027 617265428 766105104 860539363 448668167 754620206 895527230 944277198 215484499 880980310 789662228 932081387 526586105 547892908 543958590 853110140 774530704 797791898 462678955 636166699 631696103 849571038 108609503 330447894 616968584 955593497 997832280 999138916 639610371 805454539 856784824 880159405 2995944 370329560 276970786 427274055 178652653 933953277 729864182 862112924 243582087 582134741 711188616 949287059 670965595 935950744 27327625 970658306 586687460 669192260 914860850 948328839 995453061 997606802 621338276 717091818 736694955 861419071 83459262 734488322 311508941 559485722 546557505 686796584 940639774 972360406 655387068 941330599 104744956 936080182 959577651 976042813 198248556 387116059 631760109 828261643 46199213 299273391 711023918 917440627 315689257 612039788 734310819 960288309 973204779 973326958 181989992 241472468 860861070 888263894 408760666 838580055 63748408 242333303 610733663 756047033 881283783 968659887 418172474 849301257 193889615 868400443 462750473 477814715 898873002 976231770 150705724 333947264 158054530 869099493 562306586 978985155 53183859 762544060 887054159 891498769 532087614 643907488 194833738 532141620 769348623 776076594 344335192 867255136 640221303 761192504 162832975 250490974 832930755 968855938 468284023 727197081 974088570 980372221 769687387 902531982 699028195 945392343 297701235 696850453 496639105 723389932 204801354 304974124 173262985 416596470 313952604 908366347 856620099 871165426 706626378 824817304 863755560 902788314 261005491 361999483 630338688 871639912 711902508 732801556 124301884 437917503 613661220 930606658 304078204 455536210 706031537 978268451 329415523 434963144 917687556 948318117 645696724 834466139 537206953 909807796 174587278 999340456 811069282 927112332 297943928 801447553 64324628 684666832 4432664 604298985 634803253 756954839 957464851 978502439 82514263 845341863 243829172 615183780 262998243 350504901 703091771 970899944 530052060 584283310 696084292 962097863 71560168 705883009 369654475 384465457 931471251 973704535 436057381 692745241 369728169 731070940 492265375 932415157 125692701 930804816 373506529 594490743 248957360 849133618 949053127 967454026 214461610 859397066 732719362 944400531 785534629 809752482 456408038 947580185 677387154 934500341 890683247 981501505 964639708 965840289 981292339 993699908 333545335 440095611 909622065 929952058 907548943 990383888 733101803 850488183 494126436 787101520 451216789 683768027 179946912 322708415 826954685 862633520 238017038 797536764 160583537 703516143 478524767 487334576 424384592 601132493 505498024 974054230 694214147 720209370 820930547 980340260 767181270 859192592 82215730 572100405 614732060 706135897 299575702 546766247 831065595 882413395 814218651 968602278 888576754 923967116 949995549 991284562 476217761 788897272 151320442 844275059 71466028 448992883 224218914 944721118 703217494 728931567 501710920 599189984 919948180 933559382 832143402 874232549 654101754 926370926 194017746 681748335 724422690 739273594 226289714 373145248 808873025 917756719 911746841 964082872 49917148 373631365 394057438 648509345 278971310 837652963 446614812 559943413 334099527 351311307 550774037 685215516 912439078 943077590 706742430 994578623 22375856 939535238 710484158 988854247 872523921 924459547 539835892 650898521 871569392 993717739 515816344 800000667 381300428 439351690 163307970 583299331 847222414 905137386 368798677 545101293 751444257 948847809 103239253 352601325 848701528 991408854 430924125 810924508 689880826 800879994 72499102 691660050 70994209 897213413 398028997 734800184 640626965 745162524 65921940 453959037 65851465 691107414 457842080 996242706 429974778 455722617 427419737 676578562 624697149 879568859 890010953 990964576 238439319 565172608 329963694 730060474 812751346 965576146 464905871 649960165 321040108 364755183 900952109 971228014 559895560 878539512 718807256 814882821 414005519 803274803 827107466 851653804 468064145 833693962 600015206 851141736 109746788 962684252 184808144 989037977 271389750 407084451 491677193 504808177 795414627 885432650 347132555 540840321 667365573 838979297 835731182 892747430 626382030 679610545 82980542 743081883 681019776 794066775 874858800 977337576 250065991 282050120 256639985 729722392 937149690 998874364 379810848 474648066 993945288 994781353 613434743 894990912 245284185 480107556 670273034 845040036 595268275 599432914 617796602 986041853 152436996 408133363 68409482 904070513 765503288 998892994 736257451 772822358 640576722 879464081 188752523 298582240 877670974 930778896 926864122 991459425 331699679 966825692 240891760 270949661 212866130 316402067 329686791 776313546 676500493 728221939 660088271 790566318 6425108 726855965 713809685 783708347 596485595 614981056 598698518 910716356 4540669 721194181 197612840 224039616 662431468 693414239 474074188 879917406 213808104 476177461 747742848 991653572 797453867 907398784 469706875 962615935 995805526 995934294 55978590 244301119 717655366 832659810 423253368 722752330 314277946 815562254 62147771 618619644 96775382 666541721 818676452 923021002 370925815 844274572 627133003 852096482 597389107 810685952 821889612 876573252 94399184 543759866 636144840 971343150 82737327 301561814 851696134 928081880 626014195 654051994 174563093 906614116 464978037 751636670 271279690 671552929 39622151 249338391 103394632 700581018 379612332 840650261 757997100 765770532 709326122 947062920 401786734 498394955 256818845 991218142 52925987 55639461 269353065 952246181 339458942 615408410 141247734 366426076 198650073 553859076 333087697 808458040 544397275 987068785 772820166 835471277 698088902 896104553 435566614 643451910 116229133 612406372 863891689 983725347 73034775 284551343 302915555 379490773 378761443 699557614 514907096 929246551 653598498 739735879 69099375 607057728 921587881 921985735 952546676 955721756 1762685 107279550 865774757 875180369 226352505 231795263 374775888 509338305 129815017 142891874 874828801 887072729 441497174 666138411 159748096 760332735 280232962 281988839 225360386 872509798 788989498 837915349 788778574 805312260 920964783 963692290 79873422 232593727 709756020 841235406 881743962 890549900 379171857 527541381 272827828 827860510 260217715 362614313 753121221 905825691 113369862 837862991 786044765 856419406 519785145 908918962 776333034 983538536 108050424 302133118 472960542 692173716 864741895 891987275 214411738 808240144 111932775 413027751 65108673 279858412 625196142 824538468 43610071 801813953 820030594 951078615 598143079 934377507 360053158 782690819 762966170 963703625 215044284 228859109 372279883 640527173 35981411 549311596 919159705 974233314 994944346 995071543 306160744 723249439 763897538 835916489 579937797 774434170 669830185 701939929 861517062 973286928 251273603 342841019 924334685 973016139 825453710 995480512 436700680 919994150 862658039 897029648 88606161 957432367 177595263 385097896 379028843 497758285 73683762 476718221 771555697 989370364 958059715 973422436 413421411 808303396 588775496 642468436 177442897 571193542 965635982 983890983 582593721 784566245 209643564 780068251 158440934 574778832 842181675 974474879 267387385 844889994 154975721 454796691 7512281 971995301 516138866 650287083 166870749 477181684 327992007 771590492 132127322 909285331 979734306 990203788 620754331 634548154 822752505 892662902 888405035 970882296 275267465 416148074 839277197 933971762 804556407 924264639 29211464 533163970 315018943 957468914 586323960 756410206 613172725 987036847 544212569 838513411 423036509 474678494 938669913 985975202 420400680 625871454 559231608 774580251 686857196 827234104 874222598 880033969 239391763 255351339 519762477 823192851 502506817 972617842 559546130 899242215 946600807 962327399 756657003 767298158 332776841 971976982 116865454 429191811 829822848 917890270 328001969 759006137 129064202 412409080 487921675 668940839 714641218 746887662 150112330 712477385 292304870 849879143 855637505 890699305 939248952 965413545 85665974 529310544 472155874 758407824 530970319 763142308 320664641 713128540 379197896 604478449 980818957 981185873 701570927 814400099 593142839 791925960 130746760 608166369 602727486 629510961 592120431 928944093 647128171 848902028 215034625 628094535 806901335 893718721 88862681 480493152 730104895 734606237 647703236 666347448 964798438 996117886 558303726 857235155 533323756 749751177 363153582 878737284 114618993 270906739 37706745 725354100 808117539 818433972 50209239 654721938 808832458 854130908 867981842 883725189 775007277 937518848 772362380 959508102 417140731 473235987 544701122 926154081 815376288 859821723 814714358 890839688 300499218 721269628 99347997 787291397 903840810 943625142 418293987 577012309 992122194 994955884 901256633 903358634 424178092 620638726 694965634 728859522 591116360 951998091 885042610 933872386 325208941 925360670 906810565 919649755 15459796 922023171 274453420 663120230 547792614 907368495 427215643 684141419 482401014 509558055 778110323 845666470 298061502 670108986 604388598 981604124 710225486 850573604 192072770 731357512 85215112 915319494 288675533 575741100 460422690 994887327 773036065 970617815 20382843 314360234 748893436 854942181 6370030 86773544 793970803 969917422 391028633 530576561 289788730 570590452 141580301 179480872 139609628 945814663 171087660 355753127 794463119 938290575 836502432 915599862 47933377 851720541 241358341 299286910 339680257 495658155 741550348 927062396 591184578 951857225 52007999 807754103 17610654 901869172 788357313 952877426 730708919 854557392 719894019 856298993 179946098 439604931 719452879 738521386 502459990 541310733 732305351 921628645 925176668 935979018 571582789 692431786 132508800 331813215 409398636 456746234 602904672 642626543 147822664 815065897 127941946 357338145 9877441 966533874 185296764 490018063 743406504 743516008 392543839 480821018 269328783 993312760 138433897 804099236 730645245 938457892 253340053 617818289 472406839 798592942 795611129 885866952 792156537 808453370 218747702 858521421 470012926 930109268 12258907 483180649 352233350 687528572 90495791 333805273 778144278 845822764 108344988 659939455 636957774 986365286 828412061 895590283 991830362 999321755 313911258 920213098 367145881 547770086 655979196 948557833 109542573 227856505 365399382 721617085 781141406 829409983 790436689 900573183 364162235 802130850 236595590 912518305 296552563 304422411 86912955 578909158 178109519 723446451 245966223 973054665 373459340 626648509 392332049 481043011 696753285 797704705 536741736 840818718 296238490 700017457 75284903 423561481 852601255 925737750 686174070 853270339 426076437 927563894 689044187 940657079 874592721 904861087 241106866 796722774 496804006 908808875 855730154 935943560 636012648 919300441 351501818 741880268 426958701 899426563 42796375 638229377 149642022 519059648 455501780 562197403 54845292 114211798 758700741 795255823 426002769 666219331 20969709 66772264 15087987 702434653 720731946 726653151 347120330 356938499 4054752 816414939 7951764 830107431 423110162 580842215 641475704 926382696 894930943 904186636 70755488 451201032 805761313 900075694 402362357 778668682 903999569 923907449 430877142 772243114 281636287 852242727 268640445 752198276 41141378 288437817 167873065 676318158 108043016 742491039 734897066 872898279 646621164 828663318 2404558 162175810 493001954 869768533 331406147 613401491 313836387 574197813 50122610 161416424 887347162 974427357 43250100 485065340 487566596 649484563 253399649 519608795 704675100 881704611 64932923 480496093 538854114 837090194 282040833 695751860 618716006 799550802 4576326 237787937 450394865 680777044 388199535 942958342 536183570 644038417 828481330 868746237 963056985 969643614 711872213 878756476 45388853 261885014 395797231 866056307 141374765 434121987 810745724 982192534 191256729 259178141 2990044 884279338 857022166 902262387 868338099 870373524 166021319 302110127 922403645 950202710 40102839 182456074 279683752 717728420 912476910 953079465 918341507 990816504 165082147 956790155 468821073 895989591 167748803 598750775 808151245 997442594 781497287 884393497 124346834 767626019 185050622 271414912 388883246 608890864 437722243 965049238 951668228 998186525 450849002 936496639 291427454 878509523 252286988 994880732 549356922 853207314 610707846 745356963 342289811 657444443 151467239 761996479 950015012 962491191 106059152 949142371 425820591 780993092 696719509 923205307 164664574 753251561 445991453 611117445 875744456 960048423 627976509 920434696 32565632 126706970 96507406 753072835 940361877 955973625 303631106 465944530 138245172 815087771 214727025 284199244 737004312 907708362 264340575 483395122 952516985 965151992 611448015 983629974 392833079 647139454 448742852 722524528 492562014 924894159 774393552 906853812 113195919 404395696 829410823 973369776 252890188 943857052 695947274 752047760 644234604 832511669 529138370 991926131 798915001 886585502 435940611 719227107 903259427 912586277 284878115 835775951 32564854 275827468 998426444 999260925 975390664 997239202 436442290 734826031 246614756 885387411 115948236 228335582 232990875 464874787 911640936 962838438 77534961 923668737 318591738 356771504 125882232 637666595 699333117 794204487 131730629 223510468 6173302 370189521 974236005 993231531 451184666 501665004 802691405 995130723 649365961 853475537 911907831 993881481 904476588 935290716 300342050 591598750 131801586 482437821 946176319 954469294 256467070 991696574 561242145 929945227 861382509 920443246 435564971 459285443 646309272 932379563 680729217 797289370 96090385 217411549 572905921 985723254 807434529 976864698 446990131 851924490 639070119 948655513 652710804 798978187 245382619 573436619 586780840 956491212 999087343 999152732 602408369 626020329 223295647 933155989 599626602 934455667 992258716 997622058 95400410 886480093 197791030 623863808 202603530 207323801 428118083 986642139 731378323 895371839 154316251 914756273 566573083 866112087 862915248 901327724 117470187 691616813 718976443 824815836 664528841 665213879 897206262 964815263 178639064 691095478 843883217 948233383 945559395 960616747 216401713 491481268 805435333 875881164 1938285 374421677 562251715 806770553 876491288 882850310 916872735 998785344 185645626 487059606 598408577 667003079 564152065 743559798 592711444 909350253 190763620 505163108 21042802 528296169 785438017 990762961 210059464 923777644 918958105 979663881 894432235 959963652 263079196 579277202 511375936 907624113 801186435 875203188 207918729 611093245 871466117 958914479 33908693 233219697 648642752 849763164 321422556 801026607 624520333 653214881 941999679 944788535 814383188 854517190 332923500 344008531 340281885 343690788 71630305 941068669 733212368 966114887 408277728 430220448 15743999 38498338 965665174 977674666 935636822 966873138 300974666 838984552 772499916 894849884 414302606 929706830 631359744 937896059 720438421 968606365 427941910 592013035 864147127 935490449 470941558 877825369 918507696 936202229 948919488 989061751 887845725 968775084 205261964 987644367 101446263 867076363 288467055 904783285 11274509 907066915 747548523 828094270 991687069 993934566 239278949 838605431 641485024 722573784 926479470 957400161 951531349 956164101 183472735 483062034 470806923 820324343 135785543 885847598 144824032 681073992 703707700 713283851 767060874 987812855 504162622 730501631 858586641 868639824 137559996 383620184 711884029 713904650 124905948 652412632 454391847 688912642 23144107 685166876 655590559 853493399 75766851 902107116 427931965 871582433 4458794 211418139 430916887 496991555 13318997 735470805 36123560 265725642 434030611 653053464 533388914 651179581 916773242 959340886 85024093 299986329 566247573 838138425 685824393 885551999 752392928 806026326 924773708 936665020 42247211 756370926 474245978 736783411 305725161 830106500 744120771 777294950 190891834 194793775 480545384 955813175 875375707 963952415 574658545 724058376 815016967 934735301 866816527 996413113 66711052 421897292 423801621 607300192 653196150 725776755 602554521 859467078 19287971 165689484 251136918 946224714 743644304 834856738 481788479 616986063 804616132 818317699 320622703 617683582 587123978 832846248 718506390 985196958 329613270 651472305 503606210 924408244 197323672 636989455 760955011 806389377 969802753 996874564 82807649 283165828 962218569 998132017 583451078 587756709 378246443 786237038 215537830 246886837 980986713 998228768 963025059 990108132 583186842 742617848 906710932 911441034 720229248 824255010 128030800 481785464 675086808 900904362 663489829 852057011 983318892 995823831 379293595 411054927 277925863 950083830 60295546 876831543 375715369 671666647 838993876 954301985 236412833 253418195 565900288 759223085 61077484 217441204 29883356 553333249 529213559 749073664 419902956 988226751 972174975 974321274 565969163 593478985 476643649 652497770 402283359 938757222 957766638 987300716 252231904 734265134 598689804 701494132 92895085 249045634 413369212 868626697 546417954 635530552 753837914 886530624 109294166 590739290 719836809 720830309 623175238 859821922 69534639 822296718 984615117 995331013 128975320 583423887 913006453 987429900 942037557 964728960 196751394 722588093 478952854 928509950 819168517 903660126 415532855 701569135 730789411 975585528 479567469 695999987 570644345 667760697 652825405 695612482 471692998 541477532 970882635 993524462 405131400 961277685 453306684 706434382 65306099 699340423 591159422 682403316 736364473 994099771 338686479 844940325 981389059 988888440 756802540 778723353 707045606 934764042 142480915 768005412 847653366 958147131 465276098 900460951 254250784 654647711 853570201 985013859 69745965 106664673 621768306 728881646 658361643 664397139 683417355 707971746 206500153 710996432 79159717 738569133 264847599 774189861 643832631 656789934 583064001 842679102 197240786 573217620 115170395 297336204 982605123 987388270 379215433 540092383 750799827 952472406 225625876 603347931 664430189 885398252 247744039 961216684 444584137 804531537 347691318 990086409 972884924 980540965 744968956 761655626 249532586 588342838 170554485 772530513 472242017 618754289 427103456 676896397 588059205 801891331 142353709 271960287 377938672 507960383 905677191 959990360 101368399 266999882 88283751 697998044 673117324 803794693 740609056 881246853 378864398 935358692 884183240 948660356 566754681 842248853 244895838 515448925 888320362 898371636 321297801 650571399 492064988 750269706 316610350 902900005 442870718 558059387 629155416 946641806 126823580 943196539 355276508 607680222 663376860 708470202 274179470 925602601 754410433 771840900 672834093 786012934 429417953 931321873 126704190 591243491 860279327 922419078 772754931 812752563 620589041 955704564 362965363 808322572 262963422 392439784 456421945 709991238 134361572 171273189 705906537 906463046 818397402 893339584 519872061 976760664 397397465 999377411 692368661 904044922 456294665 885573571 741156598 948159039 748691216 997634348 360196934 751900477 561392882 824011494 823914715 887739268 996558469 999222100 573907491 711562991 772489282 951445093 949360654 964387516 256334761 835204244 346921114 654460109 757088522 757892431 826020844 841232433 539825359 658710256 809544744 959270006 5154501 369879663 943626225 975590135 967066140 972448237 465878202 508102365 240622417 497635076 463886471 546808471 422216504 490738400 70847936 157048880 321646260 582628895 874541421 897027081 704903431 827904595 769116689 970467244 733524903 987922044 882078048 974351984 991806842 997387521 107513107 221102839 102769553 216938736 78223549 440687812 168241174 792321442 789216358 875599490 167839139 536104761 239279534 859546418 763644171 978659266 701655212 957985731 232347824 437754061 460829117 564750146 891555237 997919357 960912492 977723366 747680159 971810707 454506933 879237569 883736157 904152702 487394550 558026001 672255492 931505281 409251532 627350383 969015623 971522372 494222659 567736109 593456285 935815969 135816248 984927496 682758649 751486551 213250261 892299715 785580721 984012370 49248606 544434545 277415093 940977196 570493842 807933451 445355267 923353093 583537133 663780832 665694577 701930876 99952724 395306329 21395541 924956564 950923605 956936139 609897134 955317719 380208812 434155111 684167117 794734014 487476057 958785182 800999987 812639306 822298220 989175198 426025064 431716711 841857345 960259737 638454473 705037736 814170365 862244269 824426519 941219608 995015444 999296305 468563376 948485034 249857051 924934079 206789333 449134285 789113288 974241023 593978630 937253868 477528337 884130821 473479959 847462150 622139592 862577167 217652067 351321197 72176566 311266748 673908956 988871896 216825337 295189525 472099879 633021083 853940126 873507804 759448498 910989268 760881160 852721831 785582057 979420387 791532545 799465441 20455249 683429099 486719859 756494379 23241001 510594648 467074286 805381863 576933962 743451961 24318083 34689241 497690465 994942397 189520805 248186537 715192196 983861786 648766136 755953379 381445854 782389769 992476302 995243609 976990273 992454271 964284537 976485287 186063651 970954689 209369380 368262760 356687565 783294858 609256315 752713515 534141619 715909514 359570104 413758548 931075550 993900935 398182060 522627138 300107893 638024836 37258142 485587173 144524364 394965977 526415964 538268847 146317592 240647004 961416573 988090232 382976374 960290306 47786787 672791577 507392989 883497582 648217136 672870545 358875138 359758319 141992557 668650981 348833241 886176396 179348336 962866046 976905081 982252399 554498772 802569416 75178072 178737791 872893706 892733212 255987136 618682651 612989137 971145040 760664530 820746426 271844827 835567562 906097762 975181490 57314927 381310315 288799855 737726769 50671278 989500074 903555683 971330722 649583389 741906871 339767752 568745481 13531550 306285319 190470181 956724318 226648117 460901027 528472510 936405863 41892344 124698115 906619638 985220343 2625062 714245298 302771271 877593827 77417342 458352022 210806684 338025290 793232801 969508283 79660024 776274006 604172108 997386135 422374541 846254367 157203450 675013207 743199467 836504480 128539897 612347891 614342682 949094167 807609600 811519485 611522637 926768419 844050471 985275341 599320414 963581005 208937936 467547363 21632147 370928752 969499572 970785802 487501147 641978251 814331825 877180794 913813995 983108469 672311367 700545011 157557475 858433569 886170427 939069768 530716165 952539769 684523614 829764179 394711891 968531144 373126210 385668257 740430543 792256221 118065086 932271920 426302645 546171592 813548923 909504752 489719411 962062751 804581559 885145449 542154113 745714257 791889983 935210983 871649101 995827045 592846897 597356954 919423449 983350037 205603305 983808641 799788770 819130859 868103892 870792316 469880449 763576308 325909889 876886393 814593207 942513459 775531978 995381816 197727719 592058361 603017815 710239152 135356325 770236728 331537081 662435260 118548167 910372357 401297633 651980311 866797007 987463469 210944748 463227709 994976255 995048844 967557873 980714106 362352478 608881361 359686376 747656769 512237938 940405492 473672085 786537395 829801555 920858039 926281961 963985332 170917781 551559909 735681113 964623057 213619942 844790617 173769182 210135806 150347454 921911338 842564174 899870463 201822912 568035501 696430123 727637005 332415000 688969091 965519270 972373337 490208782 999226552 217486067 217585486 949363389 968003772 399132896 774577925 881035263 883598610 836108056 980490204 113340120 876861623 24249821 813443486 330508005 434167786 647574024 672988773 567832770 657111671 304438263 953643611 329720778 772611992 675501168 788472434 691955909 909833084 820911823 846805663 757994221 769391312 764655331 971208652 604798556 624328143 848918121 968961136 668626611 968044970 711525291 897857778 568349193 898461381 648572539 748163126 352111213 643064068 666936917 969354449 22045251 689088218 408500890 627643282 451115702 545661327 904885467 960041143 728032543 921173279 364117649 922013638 414970546 554400065 310022092 456605688 400061735 700308941 518270195 857376649 324224689 872433325 891509199 991559647 517088998 697291586 710051258 861280676 499991329 858263135 561395052 609634844 571650889 903558474 469574224 773055158 120738279 897351688 772740028 846497636 283315500 962351607 142598945 322292021 838603877 862018019 146206439 847564015 442092609 635546778 373988076 700576631 374155434 941453738 69695544 701625464 74358465 348143185 326689627 840620800 514200932 871724916 88188906 473165477 594563013 687338982 935481149 972620916 448470205 664757907 542700431 904473068 72137069 136666078 654685616 764694772 73435165 785186355 305332100 343487908 396383874 993294447 311197723 651725959 911582372 976232687 262075128 713468893 280373158 690070365 110068292 368504450 432886544 688254663 348366190 644111949 7947541 775846990 506594106 774700446 891965987 957811614 221479937 681968950 584664325 599353061 294141642 793031359 422261727 488928792 222142032 350819182 867537827 898106293 958260031 992149629 276040516 977416275 296034157 812925686 177251565 674486059 137198988 701213833 914080128 995903955 456606713 967835612 973895261 997099263 869030995 991116571 325927515 846761812 833647350 888741872 336769910 956352084 379474367 629505761 516013773 962600901 449228864 826625027 303595387 863521484 247800822 337758167 573757928 983048331 422149623 484368492 418940450 847515892 695561488 980502597 418931577 767143958 114105168 261940001 494168367 799707034 836332475 872190628 340104453 353067824 671885694 808934629 406589501 744724165 540810340 696896299 144367263 302263986 730662572 762072234 867109167 911298938 910289022 917572670 911193037 981706682 181362769 339125971 813846648 887867938 258424139 381847116 752548876 889720671 275433623 910572264 865876775 945731927 275972502 422214488 424259025 906221092 370821397 537408082 143401450 709429604 639522975 843010694 696426304 855627207 503961423 940650584 494099361 946988273 554035554 918641433 588864878 758846356 20447790 793563695 481296552 796544280 99094121 134680700 694542443 938277597 603133957 931357951 197945040 836715408 314987363 419019913 490234826 870051227 31954166 303764170 705864248 753191908 802424920 889282003 473469880 539513462 652117409 730002350 592420543 728759404 852848100 944521102 145252041 327240942 585471946 921819155 961910915 998660622 703763349 744335266 885609770 990097497 713114959 845635715 524959488 561173614 336856219 576069674 535328079 582012573 697291505 890230139 740142868 852812051 167956518 630231202 992929385 995809845 57130441 834177607 914221208 976632826 47741844 929393873 494621746 818255257 856429090 945008078 13243747 142675865 566884041 688882710 521940629 915167063 248659307 297076118 24678790 786601547 674349975 769935523 618148127 748578927 365718507 794034872 938615171 942786517 635018243 655638397 5583156 983155317 334550268 868170770 785284417 863121936 118634732 494495474 887627948 911182038 507852441 510651267 232181525 554934742 700209353 991658337 281345499 667615416 742397514 816908198 148821724 936546722 516970116 879827923 126253049 612692716 365306357 813682063 705743235 788314005 881159500 888846640 623483122 869873487 638308614 671206933 88749598 989728886 550476328 878463813 224256311 633725922 332162159 845712553 236973315 249073233 117778801 767138422 814800394 824679218 806666167 932583583 238111504 240921333 26557497 188423313 148512044 664154427 387455074 559108243 359732626 465338856 594683646 623809823 491053900 826236603 195532488 392786843 163350704 849817653 567026423 884005817 437273665 557775601 777933932 889996744 624909496 886562454 602214119 904652464 710938373 912872788 68708648 709918887 280792093 861342012 993965191 994265886 566748453 916659360 437773364 763004565 376319527 533691253 570307866 759211857 815674515 957703063 602639710 732204893 988955685 996603286 767697941 895421032 353082868 355729152 274310788 623628571 797598109 919663489 785228227 861156539 457262217 692928196 503171773 589401364 604193183 841678363 610278239 934948836 201449943 316125179 965138320 988566923 45008839 607636948 191536628 837892144 140211624 748601256 840668802 911909552 735399287 853282452 729109941 763069270 102939905 353718228 134371267 248988768 72294944 376606220 306516392 971339281 49167777 898394572 252726333 300313232 990329480 993395127 815284287 983438723 83991993 142907243 203033046 470379545 959664118 991622762 350030060 553214626 151696025 884998280 944442079 993483296 935164272 936108769 774286468 964148229 292546853 754337625 809568873 954292200 673752834 694652664 205894031 669071473 960706991 986020597 869031150 917568180 511021772 515545316 986107877 988212288 504944695 986787922 960121753 974817747 583379911 681670769 667070210 738281658 177385167 507169741 205106843 424086112 28722707 855930177 666076333 712631701 399707653 596489985 918805994 925793304 797352944 996305878 38694905 843953649 709108953 993888064 499935317 900364542 826377882 849065063 327017797 999384003 469519578 736653109 283849396 858301889 489054080 876175940 180886084 797558906 713883130 722786506 445823985 904099179 262244152 768239387 989380884 994456157 316337169 887144511 843924951 957651061 63770518 299249496 709610205 884688823 449561365 629391868 402935203 622615763 827168729 998783197 375755380 994725399 84521331 366511023 693543654 883324289 811386534 944768883 827183795 965286161 854457789 855081975 417651753 622058799 643099602 691026154 199681112 896275101 331957501 427408952 398942882 968215893 581849006 829847378 332511682 473203233 365310778 469213200 303882457 571385076 889021649 954025925 859711490 986733256 711858135 997798724 4841431 711085364 328668129 946681185 972378457 992111620 202982608 701281867 169350224 919820768 595551983 982173550 256818605 671872324 647793046 780247236 485647548 800511152 844809375 854165640 276083919 496080168 736780244 921069990 255141541 265447988 87948328 402016854 813066593 926382377 882894613 931298143 528001820 741568083 985364263 986369030 707908840 871388746 255131428 528076089 45684299 881780732 488760822 979434319 769487380 962620102 293349330 722455745 871782477 892875031 406165868 748679650 530164787 811205636 126048969 273071753 817499233 933888734 813569745 863018524 295623173 362036635 757254479 794523009 480075645 862837988 305354373 901952241 291620801 597848053 376448082 519598912 475085463 952890222 852418644 998673700 886598399 890807064 913837716 956283803 649968617 804642200 329982034 635730528 474846699 929443285 112992545 635584946 926495076 947917139 349866226 966844226 903431102 917411434 197335759 467772683 68523577 522822388 45029810 300611700 503554060 676265407 180423761 228711833 74315636 461751334 861150310 893193781 50642759 814377585 336313845 489103309 432857662 540249874 985172751 988301933 192383492 928156435 939547750 941709772 903533251 948938860 586792701 803943646 955676564 960377128 818097103 871338932 942072631 974573326 126852114 785516180 500204099 794233809 690724928 967570251 677567774 805046089 241307210 408743332 118491878 930048250 813248756 933415357 197461058 398587705 46444903 368642616 307125505 444174282 35065679 52889756 979809731 991836942 494351813 689874688 88396375 138486335 523398951 839341338 975402848 985320424 310015932 577574225 128728262 177947185 299161991 890796885 323635368 653722706 713428 429597263 383393486 461267706 676468958 812843671 40632034 648376545 924989508 959250692 949491976 970793687 585439196 845248607 632462247 904537880 441440141 490746564 692668124 891605700 569304879 976127058 866709548 895491297 227589175 335837638 270407184 964827183 977012429 994435066 680334046 759812836 970988574 997007414 955252659 974080557 684939716 835610813 111448335 883428674 983205751 988026403 897255561 934089184 45876257 109894082 946079977 990412807 494241656 926211712 47654331 473635340 900649831 924049005 429736682 440887504 567043169 634309827 204762771 588215604 45398635 348477827 549251627 888928537 763073637 826941742 920008269 966412553 8837190 276540831 618416659 814588226 675155893 750182420 56775256 704531287 610592161 801799653 836013985 949065998 474575231 974823882 512513432 990771990 967212546 968429703 143408338 210850717 222699256 335232674 505537571 604314811 325735125 649946513 63936473 101623898 120434610 937994017 643824969 870188756 259545740 397930129 242962601 470127670 137138497 174134697 76763400 738382008 198629597 829581944 54637377 233752147 108450352 499279009 328864725 408854502 607943681 972219352 359660250 880613209 822681545 894031530 63340022 429316663 40497417 836459458 323617776 917333979 18781163 471548453 230781307 954377309 921066759 931695787 23059880 859807208 217070048 740989062 47991608 572892854 622066208 842132392 472282197 972500237 289251777 807413183 343448232 697155219 558942703 821286851 13885325 851221004 80360327 238807888 288260045 898766223 19512316 138221118 132481094 544606163 722345393 820355206 783662244 966155517 560954428 997776731 89535339 345888126 429266267 583906569 392294029 845344949 666606639 730897658 228157419 369913015 778302179 825864906 166921761 521152124 776931359 901371466 100412249 811449704 109371753 516074878 189823215 639807140 669300703 827374376 424345704 853431182 721200931 747479251 515755800 732607124 272737153 659614518 982655727 995028223 258078937 418228520 639568386 962469049 675540727 705478923 213558542 718422439 919182276 942385678 262830448 475323666 494538060 963771390 194444630 616191983 777914296 830253689 400140360 552287772 889208531 942928597 686478481 761919393 272769861 994997846 426062746 815361444 491447415 768269568 593474466 702899583 811673146 843074983 915680844 973531235 668503306 920590482 63025809 672775552 441300117 622541864 56372603 923163978 82093460 397919766 101971647 322167251 29160085 427943916 886393434 950000526 352481054 669333463 706937647 789616427 668012385 713627935 143491969 981887061 867588150 926004105 508302889 520231894 283771200 981348960 422467220 496516082 124436430 948367585 827945749 904718464 430881637 445085927 159335090 743435704 538007817 779127092 257281124 342144738 243219146 667505644 94279547 742665233 106947368 912855117 296571979 487127142 602286407 665769419 181562462 923849153 796459198 861531433 53555674 500658448 546344174 875787758 920786829 954232775 592678986 956529855 562828894 619640531 254489146 309214418 160408572 967140121 813272022 981670980 377668119 752608610 289074268 906403674 516573103 579067303 548127862 645955836 440450214 855913405 561873082 592696815 358234040 732561037 2517743 232972636 249781373 363695675 986035587 988654050 274234535 910552003 984156810 994628484 997709102 997964164 806138430 846442547 102168962 282863802 24296953 690160670 770800465 889560250 334115466 939551521 845834094 966877920 343321518 819629774 401584500 632850501 219891112 694266123 38732622 373204867 419923774 445861661 330257763 589524497 147849051 427216144 953858984 959120863 353934986 402881118 258723501 669669781 120670942 441280963 636060079 819096783 364873240 694880100 997536483 998996426 955295875 991464754 283408741 637590719 412120022 560091853 795258806 989861386 700734678 805023288 188972983 686507327 568710307 982080977 268281648 677856366 38407960 681626560 475984182 839587388 214101072 652469100 688606785 997575666 37319171 629161702 173090678 495385623 609974761 829129502 869610954 895082586 213088943 866689952 720525035 724492143 51920033 82266379 508313525 946255243 791237567 828081845 48700841 611686938 483288133 919640289 287348972 634661370 205720181 771231624 554760967 577682600 39975899 577880502 28821187 933694269 96669926 574086641 542672906 801202159 683272940 995318711 955812874 992024406 144901424 614290241 943478888 998508897 790205596 862484195 24446485 330457779 902327572 956562119 483935581 675049061 759873434 786055300 861613194 983799037 601833704 608568403 351508817 740325136 771027482 803711596 14190006 491568646 396697058 619664698 453108369 628807841 691909829 894577342 691072044 950517778 668496261 791817670 22886508 321189599 97267890 184567567 31380558 110847133 204612321 684314571 364905085 586505669 371214812 997519476 761372033 992215431 337727133 990517751 498181531 836559542 61329057 760868643 990539879 992413873 397261900 480557793 615790617 834871051 265592003 331684882 442362345 787142962 544465664 560134056 715562736 910384605 361855492 603955329 907327959 993382684 120773306 315956287 530721133 695955728 897338862 937837105 59124404 173263429 795346507 870922464 981157026 997513662 432875823 992313225 121962503 536944547 919737353 926654696 482248315 502952920 995947729 996557674 206448793 963688061 270768310 749731173 16743626 276950989 232688514 970651540 821490590 869859706 503054936 513948377 404393093 585477122 198353120 323658891 952248696 962198248 320187730 759163178 485289106 597902720 880046917 982666433 146957131 598045945 276979018 679517435 659924129 980127251 413153466 623774283 958185108 977695596 431766793 467971402 750181996 828972273 592363869 860290654 146509764 261208139 161078459 912323075 939675504 999045431 950771337 976583387 587060906 629801149 405120047 671807849 132483572 473748487 941052919 993736925 913029186 952880449 921897238 949054380 122684364 402672440 775748778 857653303 422362921 949086245 122687481 276691898 583292851 694484210 199482858 627033959 51474955 756355633 693371511 835608389 657918588 979084554 625674223 849396578 470199994 730087964 897209325 990743393 626990389 796692248 177788337 919747187 77900271 342659024 827892326 875471072 114288103 333044704 346859551 766128318 497451009 714084554 319321474 988430736 220364289 453307136 277544061 656359449 858066883 886624828 968425444 977635451 531720380 538477927 220755799 911094244 598930396 825409127 550722661 977688258 384124618 403781360 519738505 633661938 817955162 833315227 779089507 798582081 514166152 928197237 233742052 355930912 256067332 655857284 608150793 658407473 79652037 277736827 587508280 728491557 709556550 901739569 962524336 967762445 818815584 840265167 259093447 926634755 182634265 944889511 466344804 766012139 483753992 770131916 265933667 556233923 295924437 321895861 671704690 811608349 240131312 877898946 771544550 951491218 229043782 966661312 250822277 848115495 492554401 909773605 443233435 886768634 788476069 933419179 232113344 923696313 185128141 935753563 652282736 742817048 117730608 582049587 575387260 867636681 48328638 568469288 856087504 950790565 47050237 468779341 774644904 986667220 557657668 671370608 834822996 963791870 935019296 974628074 131411791 930701050 384409684 952554303 998494305 998643824 684748953 691759208 558812946 651470944 988006171 998880860 569607633 683242107 925198973 944733634 648594538 700291637 974960170 978079349 427157888 842050323 750155604 751111065 349810435 527094226 950355104 993537405 174291333 378372890 478535429 815499274 190083341 680772341 640803613 803821613 306987551 530640382 530093004 882435562 111313752 684501617 689082768 967005237 408537024 957002906 62858299 219265336 112398282 496279856 830745994 905421140 748727063 781440433 2007559 273492818 454346985 959992813 170694578 468497911 878030415 968639206 672499572 862992383 768329444 785734285 14556567 926845378 120704307 276930624 297732322 706507221 980985620 986421203 712165405 887819472 23241826 499730030 384331176 710236402 962910592 993091581 463135929 510619763 901820456 915153059 723073685 897046134 874037301 959292804 647239013 738409969 54613524 631164605 212817477 880005527 205783303 685932960 200102034 301879725 438340263 596288847 706977429 728592022 541144866 801635073 183546125 616662010 55059090 769326947 703237476 952653763 248362378 293062323 843502580 876219284 470541998 806624785 956820964 986261664 538740779 703786549 496546936 952820394 936169409 942787321 149098609 330041518 758817686 868159871 86136405 886716881 848081252 974873000 969894940 995685523 850493460 881318814 47628746 886789099 996620493 997972251 529217854 848435310 242378346 632678349 745560360 911987087 933865328 933954475 516085645 969453011 375245874 902444102 421531555 622228278 563913739 981874462 879929075 896981594 423201466 871929525 506856562 729413620 924351650 947971947 282809421 626941169 322216341 840502494 607554145 998564011 119934243 808162795 778945934 907676334 785144414 900125041 886493936 992067760 106337803 967835219 360361519 946758651 617937795 945804931 615071179 708565182 282130905 336589408 741370784 765359531 505160362 865075550 841508582 965193845 70011955 679426206 236276342 379874191 67378640 401108472 62033663 936331254 820970407 821226866 791387250 808545013 190545019 629625621 366837584 869810413 900429740 913504339 10061015 890450484 840442967 913929309 272876765 298822503 333637717 389172285 639165787 862545428 111610335 946003916 524537709 613586232 55553861 958236557 411392952 742849117 128891424 846864880 149425698 404152705 72092098 509551361 367851815 837099742 356700256 491810350 160387230 957748617 403062896 631659802 734683007 810264084 298710302 969040537 393124128 855550238 204265885 779576137 486834300 504303566 794770880 927521312 467488004 897356622 331251034 840397675 983370683 986411029 704912795 756145489 478463346 739475337 930638825 933306707 387803119 683663433 841748192 880483749 148624116 854994885 483477005 677245227 816637307 919823499 846692215 872144845 339903267 372716031 98541773 827138450 261802693 955318679 669876011 931982331 755652510 880868835 941829885 970210950 638861768 788760721 878734868 896070596 364754854 839891728 650610257 823980366 665783419 842868347 68886159 126681133 837225930 938168177 281618187 341450775 877571777 990067439 319506432 766790977 896968716 949581426 877945716 949232215 218492320 832079827 517749170 699411560 450315961 877109845 325969811 907795516 835130348 982117518 885629922 936137290 734099305 773818210 312388255 428567180 858058424 970232603 637649735 875629345 482396142 722257013 725955469 896937419 481097248 648476791 253032810 749050311 50169043 157851388 242614012 256419218 175303194 834082401 366772879 443629490 108011957 984871694 672721227 713288613 92791968 898363403 286268699 783154081 282952474 377430553 775030887 777610503 386700731 535124782 90436911 491064174 659674576 912769175 368934708 441264776 535126673 950867094 498171019 990703848 201824719 429990053 722561205 739191974 561462672 681029572 413757681 750924591 146571573 455360848 475449111 721269185 304833079 706913978 341742949 641712293 993249210 997569596 57346593 774748430 322901149 377663915 519001974 650042610 806925438 811472488 433519668 809223305 597021291 901684921 753305136 902457769 620405250 948043193 38808698 656480055 626000313 859667387 705589825 714152689 200439506 735675010 24962651 141975407 84737411 146119326 958049111 994009574 992750841 998767979 31864766 60703237 499712911 873950843 464224824 535075898 630786103 642137583 923618195 929640629 224231662 974499610 683434745 752111437 153799342 857729571 591284342 865806765 693526504 711674708 188047437 297854785 988594468 994089848 907334530 914712854 478633916 905486839 36831951 705411679 394710635 670737991 635940221 940881141 249959576 517019808 976509372 989839537 299812850 953537404 785710260 939447861 926035544 978033783 721443830 730494492 198479589 961977236 132623629 891420531 409423100 977495839 458549252 586848238 723525856 748441601 897827044 932412700 447046257 579570295 211518933 648635350 141420110 950898784 273515840 443450552 401951253 862813508 691001353 812049565 835757697 983807633 369741385 643070461 565701491 929302617 950619831 989139527 312718312 753486289 99161535 563251216 793779413 881439454 614892891 879037825 907608840 914181766 118204998 641342987 903414224 915832969 804553011 956124195 765273877 910636203 530273785 792106458 328535558 560470824 669684994 954940663 751364777 923446633 626739482 846293892 717688477 908569842 727599399 935954918 524681311 780325713 930490726 951832389 626652353 808314632 373270487 954844881 736588602 879230505 135975401 282682917 973481302 982538493 988342683 996484332 632252724 764924303 779078265 846912539 738552080 848788120 904811990 937448730 520815315 976531299 653378163 928990773 946666914 955876382 187952645 849334789 170707008 336894178 315827667 446453289 207673897 639543476 394737258 981867332 195524596 838152915 357273258 966646125 362891068 550751713 103298658 269544711 557175809 805261389 405649476 670938206 931115215 936585346 745952948 949721984 11525463 726431113 683940322 922692504 122485515 815564912 596724756 824608843 58653110 565847766 988926513 995723923 273816059 474241980 832031323 894192515 73516527 369830782 998389249 999019924 672679558 755986401 483553087 541086602 876186965 951782949 448777440 932570279 366147861 864761449 129755466 703092474 795464094 930657706 357056225 612369324 344789946 637279004 101699090 705874072 539644215 561104959 991797397 996930268 17380033 265863952 241088084 674820182 788593937 984853579 731152234 941938177 716367762 763742847 414319714 694537800 433535460 512944231 77887953 865094052 140457621 264779599 761089054 881402906 648545122 748116308 21329251 713864672 541638362 808061872 214439954 664656602 314818884 974925303 776762104 875084569 474598971 957815715 3533202 390878381 768348813 931877743 816577280 912957144 28278781 612214260 15456948 837703870 667403234 729160674 897789028 933001959 143927881 913943154 953491998 987746826 193862872 518777291 236743009 600365626 607421858 822301800 781948806 973144301 270646524 796433332 640244076 724755427 158681476 928418454 809973530 846708878 340625197 724881537 921936780 936554765 227540233 682793420 340992693 693942761 281643370 333499746 133333330 596771697 45004869 498831573 682618465 689244259 465182948 788750112 690572958 920730457 882499241 920773980 524489332 993951985 372855681 817011505 36704188 120961622 31885319 431313901 144150795 690122070 457611719 497123087 612604098 798180042 285719628 976466243 46154927 581982028 354336822 819796929 782103099 835242468 607708862 649413607 351226647 414828471 194082339 516756886 605652079 682105123 187766800 301324895 162053284 719039151 312765020 783491713 397923538 764632853 404493484 799771570 295832661 711896976 840062278 900968315 880563504 953852489 908974509 995856468 705752580 815802538 530434880 615068602 970362415 995203492 308591508 339726093 676770041 963186543 957440984 980459106 478404520 957397929 480135142 794585922 362095779 588404796 231656330 385253492 714484711 725015118 260222105 946501428 463191014 906989342 839682666 925260679 506035797 645369909 26963545 924466129 128991034 584482307 933861557 967998850 286794688 557533555 820310477 944043896 429431500 936457982 13895958 478574416 465156773 748190795 96127760 319847991 469025325 989831202 586434083 858748199 77414640 552240470 960405094 977930135 33681989 472970589 210558457 951025509 693907633 807593059 703810793 943057339 720748139 789592504 534923469 716731535 742726825 953545333 114194099 923052045 821704003 834351460 133077551 147518487 628654123 965171805 564438022 944172207 207498202 757590273 274170971 995650211 850715182 862610745 119736540 553778770 565072049 603313484 499197785 586292850 230615791 929405536 407896861 486975584 860532916 869002866 611573537 628911502 746199995 880036577 502094491 993140037 207554370 536180774 674110082 767962311 86941067 737434098 739187818 831526016 775114529 822654653 679860 388360879 628974316 864470512 96639772 625316758 614267169 734855717 374883206 674884914 983661487 985685931 458499814 823966395 780800941 790577186 164034421 539640317 366922015 771375548 855143765 918082570 758329574 774966509 314191593 676009313 993620899 999189680 589934632 718508747 571578761 666080397 863263157 971759710 785110561 920328455 845484320 963331682 310289296 995330636 525496800 541058022 778815783 976035861 856573449 997305703 270935733 971959184 509204125 981795825 759450355 855991024 787670918 919680035 843100221 849931650 50881878 396977835 406578644 444048045 413320047 774281923 157281769 984303749 814337886 923139796 118811674 455912113 579157236 917936562 473269308 917625797 179690497 601481156 68527679 828860748 934382590 968614767 110026682 613701635 665326602 998448021 555789090 854209976 701814822 804935716 170219723 404067363 965146536 974434833 338738654 548209325 798812628 946790054 245446519 903472617 176176791 296402050 262247175 860424652 897978091 951650215 172535635 662830681 680230480 855466803 298905589 772709620 420241481 532159881 14401568 823039694 613974433 779038221 257172436 509967919 310952200 892581273 991886668 996810449 981574801 992166030 495651693 534172643 583594394 674760516 792393118 952526849 527267653 667663495 74319974 967867435 462691068 804763267 370005876 631822583 153838830 596312259 204206965 758755555 614980991 940851801 922867569 930872528 279711335 526755950 872323197 912746678 818585612 971838760 341382669 792576904 361296462 766889115 828515578 857073414 975996365 984060948 240892226 787280634 668255120 783264727 963391689 986729772 929923634 949607128 153651281 983363084 746807406 848185775 274832132 346473162 703848040 855551641 565732003 753895074 535500977 815768222 607907863 994455667 899571274 950121721 380277941 772361336 898603489 943553661 633002856 883616459 753802081 829759570 347426484 416527092 108076120 756044352 230009003 770914746 652610295 713652039 949328416 955287840 350433554 819995960 436062466 847371513 811381595 841786470 647269983 774047646 394512436 758791280 310335678 713134198 367831235 638657611 817109785 886790644 329894160 866733724 707793050 766248098 815579267 845216462 760907747 892741050 491559080 599294830 553405265 709488994 292673990 389376289 560504471 585896629 449542637 959318612 583308784 609460446 590276568 936786076 533247927 802160283 670142406 738757525 43782019 361749989 587055803 810634845 21921012 656053182 863563569 868835542 56254842 247468714 791151522 963393374 164314221 266418743 886085402 996735938 796952588 977145679 30588669 593166443 297491133 383039046 314410227 381538647 712226875 937414213 946987607 986504250 752993103 890875154 217766643 521702144 97695075 525748912 751822248 951555604 90405595 400942673 39887089 343459750 571237001 858811394 49700168 729963027 208582400 988314193 372042522 744011173 921642465 945795030 442973491 717773054 757233065 910148507 707498530 961169043 733292137 974598850 461459011 620119403 608246861 667899895 58229613 487713941 935577046 944422065 323345016 973628738 816919698 899698322 779523493 863876985 836181208 917485009 128662087 253587814 618583475 984875210 258596351 338916616 327530773 603349659 723354635 811998645 200567833 878583173 81889214 100356173 885089271 928888093 775561797 984029890 973051939 995918129 614042039 704743947 445060064 802781215 93989170 553184823 295471173 366561333 591524008 846151247 852635321 874092315 455371556 791485384 411629964 517440683 820195102 908640498 202852498 722078182 652085956 884404688 521061023 992372231 701003885 890405934 912593890 927352461 290633839 713301123 761930856 840321089 769813593 857808961 125264578 558238492 644458035 867418074 155136070 325995931 607596847 781846614 581216790 761285765 798437612 839908635 108510654 705822551 14601920 653595366 787238954 992709885 14240305 763607505 585774184 930733194 473905551 895539175 222996127 787251043 534957717 563235495 42013573 430947528 809902210 936654120 30966591 305776819 236466171 874181820 530964999 679218016 104383068 708028835 877267514 913835265 792313947 881752121 589146338 986203645 671584310 838027713 624111101 860347451 975303472 985220348 613399340 808877312 215531632 632184172 154955585 587517673 586713642 705534140 260046183 402321877 169668049 839024591 407109484 644707084 778839809 959269720 173716937 523882561 29495566 366083220 509548362 919028071 941468034 955396957 224742408 466329965 736640292 813182279 677013384 911342100 247144488 421223148 716138204 776362899 521410525 960307393 607052569 828144893 335313267 554518060 176376832 707337683 459349872 869889107 269413567 972737067 163473714 237797722 72167105 464998864 554999547 851150289 737657689 992778710 242932214 982331715 47278461 297378270 218162976 905425779 347887877 945047350 762445330 795187712 48437011 132125359 992986107 995100994 196059719 906578140 737153095 901633900 385459071 435312329 809554414 994244462 754247232 855835518 485553059 627539091 994078399 994431287 258944927 911584380 574826977 758189565 891562231 976571348 98486511 470770052 874778988 943071284 800366812 929439342 917750326 956623267 134011774 970537443 238974167 571476569 551059349 593933889 227307612 413496383 585063662 957553315 740602217 939495319 680097538 681978304 325935754 445041159 172656823 859020153 866127420 929519206 543371971 803782597 958453027 977392529 217443175 346514962 247742148 613156614 807180401 877381503 392393253 929484611 303069059 328136940 937421761 996082662 36645055 101635295 288862875 969922357 834603053 972143940 56603898 144856386 389721971 885600749 56605687 135484449 244090670 675052638 561375134 564678431 255677382 959560796 656338103 681962707 151254676 949507347 988933296 992292822 381800443 441884962 90788475 376291705 482171159 682519999 239008462 646836352 535547549 551578889 900984621 976725600 613046859 657995218 939945401 990197779 412404931 551312122 182747798 190363487 247971532 860954888 685844851 695937617 680939413 762123535 821747778 859314216 510491480 866688475 597708118 797156794 579313005 768468199 720081650 905509941 487408104 854354873 634508340 858352707 150588928 804783374 733199102 873375074 503617609 916100220 256509181 687290027 146696517 858497213 111218255 519661616 351620935 647011847 529258423 838593106 527181536 539646953 630647820 893182858 703372469 946687075 95498772 906401911 721410244 923337387 220286884 986632358 110518714 309999979 923738020 928200605 50504680 705851308 268848584 712998072 190214299 913897907 281199484 776842785 519125067 871890753 564602467 994144267 929462002 929726004 383183489 639228930 103995526 566688906 716948737 853690261 661455253 737233579 88587587 377213873 164119380 331295444 690102177 773169499 403678687 725297315 141310538 208855111 753629644 825305416 38276670 726399586 854007957 920437814 897521245 947849423 719880092 889197827 514739866 864981737 854293762 864009171 946041097 988040091 91500968 932584237 639559596 708670704 130390599 420498900 136290047 601377825 663957399 977469110 615767434 731746938 15029283 598775695 249813759 915941691 19962409 887349860 939549804 943308890 476704029 797621237 443527005 733443610 278704137 716478673 896960364 955495802 588836367 772241405 792042248 993138161 560393722 875759910 306616298 334623692 521136121 726505878 705646986 954485725 120329917 188532614 977958816 982131181 660676844 684210574 364199487 394828317 820230887 943183458 342374906 560821383 907099736 937271583 42823274 292946227 573746061 778288332 988846100 989921886 424585067 652121414 858820917 990774600 185519460 420897641 992958215 997826215 813704334 980153184 235892103 671699627 305875459 543381222 73953594 737694762 273940206 662383325 657800911 742522660 590891155 607463972 402893331 656718536 38858336 276291371 400002296 986614908 985718961 986386413 508050766 921595867 393041106 436166579 938201012 948310385 839284433 881595130 432761761 750159065 656576616 769294742 907295217 938630194 939641902 972647850 101133884 371921497 215284625 936187434 8798585 380554369 827021875 865548293 132555465 135859826 392406212 522575208 406795902 524851298 516291499 578492998 579081413 924134387 847781660 995913240 755241106 762447098 823807785 846251668 793350235 904719968 354712128 920404197 844303223 978647625 201101134 726842229 641386029 949216556 90359950 395140664 48772883 490701991 461142868 708983895 347124791 581782375 707161257 834706753 354732677 499832763 743182820 839796376 579905793 975692854 69954890 129318617 465673523 710136205 27356903 741249766 369319352 519056398 55399879 136266964 539813430 904101380 875082816 988482042 287251030 401388520 84587107 988371931 309163268 993923963 541754706 744712911 432542806 587578962 111954235 941605859 22769322 69467708 212306414 662004163 854313933 933832798 647695262 985837648 432303941 629288288 309560535 707223160 412523802 676539106 268562922 494804094 983394578 989497590 620840067 639629536 896475716 925061027 182529144 829467972 457885720 859084200 836595846 932227514 956943710 985575082 48452276 818625032 127115697 366535042 874755012 917286468 947228419 966328764 577864868 786746971 841689910 941103287 618300030 892620310 606355324 687238306 551854043 627956777 802615931 997271609 938780653 970423151 165598909 995618844 260927696 275196444 400233231 419787112 53941119 675686505 662433503 993551014 484886440 551078798 699824092 953681375 264932611 596225427 272849930 551706482 877042942 998412815 543436279 578682181 525909074 897940426 167395176 955368279 228866374 908096575 191893 169448919 789879589 951004272 981625509 998807499 240645125 539810584 317853895 943487142 802841879 875537568 429897514 744706371 326729743 517098217 280118204 462331867 591572620 985853670 809931705 824358448 199328571 688026489 648615302 679234665 797116652 903303948 612809510 798215932 436060743 508878805 84684490 374171055 360530323 584739318 661006248 928091984 349318767 843761915 146525833 981756669 621775981 858803497 929521499 965646907 785250675 900040438 868255251 929976961 252253957 312377081 369345802 519345235 197549830 786881227 771935980 954829489 566086060 671204497 39961066 76134712 128300124 140496772 179639026 443712818 270701928 321402888 270192727 518869274 533247167 608964309 31669565 787031771 562081620 822181512 258940412 546052287 636708410 670214205 718678009 861553349 570294691 943705445 51725486 552131961 244117738 642427710 841998731 963481996 827567729 966985589 816379009 892216019 184519873 205971060 811276059 866417133 803969866 812083953 144104172 940021184 859258578 938169900 947091644 970785067 739830040 762268738 735731032 787439431 295486121 953344437 424508470 775944739 55089751 431291171 602774274 642372914 126447268 600492067 732299618 967631594 617441706 789144245 94648280 135516195 731615259 761199891 219841543 634692279 192331837 934857575 75411709 692777643 428941344 700729196 981924975 987609984 878156966 893073066 516632245 815017117 638872058 956739806 66330835 658008105 697280723 727229387 843079438 988875467 299945904 764188321 459451420 781542232 57818869 682446760 203762267 213626509 427804600 723364699 709624903 763960794 690757143 901172300 137925829 336958416 612447342 845179634 430664500 840949260 50355198 358911761 434421790 966599396 284119928 797835228 853506746 949336912 434455643 689091692 712041985 798830419 254098051 502775319 522864958 986662351 64430741 354800313 848379412 933799399 104372903 231303737 641792375 684653775 393713519 773634346 703484476 813797628 364413975 791914639 126427297 981654280 844533311 851707708 226348327 872172083 216936315 535613554 592791541 960131517 320332614 656132638 909762992 916378872 527854626 720902443 9741906 58670183 250022335 863095571 931811826 992215141 878665149 969876931 635615049 837847983 269402542 559033421 928715908 968255572 687463803 937609652 990737528 993006462 686850696 811003013 333673454 945912356 117218782 438649972 85638470 292428930 863480605 868891296 509177507 588496953 144326268 667671450 250413227 667654041 629320335 915215830 112018693 930496793 699866625 986604713 632820416 679825675 199755311 793392776 804576618 881883908 19142929 422865390 744193593 952634194 239438091 677435652 665499844 755008336 309252350 764736981 819446376 941413128 234374050 305374845 283128046 667138066 365343471 522384997 600514961 892744169 729124471 855406580 73316867 444737218 954802287 991990240 965446380 972351048 948803543 972431352 90668112 497287332 490749270 783907546 998692303 998721662 278353580 446166073 78600012 140849082 995670278 996022868 349629678 558916228 837750379 840598235 704850125 823860532 651693723 719559376 834428300 881143393 378592456 585387912 539270645 591937673 477270116 741709505 893153006 992574783 898964139 909249250 275262276 521922908 684289221 794146244 512471056 529863349 930900268 932323690 679059643 692438250 971491804 984628322 874713713 917437103 835411585 886484354 159330278 228819886 947245158 981997218 889027827 949575989 25181307 408157697 981449300 990913505 465214177 509312197 563683599 817142966 899561114 913180804 451328600 853179501 886404053 958986709 130341767 643653778 989777516 990746015 173093615 873979943 444004259 522354644 114366617 486951141 834022576 914900682 949854733 992977382 391856885 618735068 783600737 894057607 482563565 894680227 65836357 892764947 752836949 799335092 219215482 737775976 410790377 637938110 81420757 716671307 548393355 782295409 193524447 798559885 998043641 998085208 23254961 98283227 293721517 946885860 818872063 969269233 250862627 659855657 535118216 593001628 674012902 837657562 522791652 631503403 174204821 713974211 438823518 816266784 890816492 900965129 601242304 870844330 892970285 915261734 298912362 716520490 217626355 609033294 998746388 999298781 315104556 859378671 876466434 921444092 459746447 491575461 337216089 458385654 973693735 998186649 46706442 713747675 622582691 909659966 674596922 751508598 778202535 844407372 557834390 642954952 734532579 741930349 645614076 684258049 128998295 829492996 516026451 810672209 11206810 626075351 305275492 323596971 545718455 965283730 11175761 20501229 798168301 906099692 256495823 358192256 938269574 977057043 110685948 631289510 463990257 760648036 53317513 101493886 159079812 342364269 6851753 91672630 261248892 658012138 679725486 696653928 776344351 803091122 704628645 873146764 420772238 767506079 558300049 728001868 864504249 951716857 927379723 956063518 159232604 502010346 115754001 391141502 424828630 857767829 362164233 613190282 274040609 894466463 760312681 908979291 427931826 623769561 599426290 832798879 412674299 595283029 363456832 601958771 718733942 897441348 591707216 893536838 793749968 844728526 677853522 940122062 250765945 425766527 718771470 862245164 377693860 480553061 165797080 551121442 785353670 863317083 55692087 325743356 727074653 789260265 874066884 943496564 980843282 988782151 103268930 183792853 167600644 328096456 803818262 981464828 934164243 968435275 74159851 447696967 862161991 903320522 337086856 441884339 491555865 917661401 472296411 623345402 603603023 738183558 304609883 953682413 708605568 909741537 559589697 899443201 274740254 747582466 326584947 767202951 166015229 661882440 658428484 888978716 232279471 834196911 969106834 973142268 915105647 997968583 775267219 940815233 355007541 819939488 102538820 874424164 602104317 695893522 873111513 993881533 114801606 274563384 772197910 972281290 333141860 346136163 906920844 943819913 588839871 981574376 247026104 543615451 954192567 969446707 577507417 870731790 816737040 876318706 87735834 280905373 2467444 443155361 672081862 929404199 800585252 979922995 291694102 876418904 923384595 928336067 533844325 666079755 305416338 952915151 758373878 866306069 739936499 890620001 161097723 462529658 195052619 780254096 733520459 870739677 32318361 351089663 69871263 590662345 456018674 478996682 703097381 831681146 902186617 934978720 775045512 992936118 720885648 859442967 314864944 587988886 550686562 869162284 797146025 800216315 48700402 541689993 564533482 766815823 838807382 940700522 882352053 926831210 235406907 345330374 766715568 950024579 108523880 466331531 925770954 997512510 570440775 810795341 181893537 538634725 480478557 579584008 906882117 956465656 193419957 198937170 683307238 810637892 729641729 902107089 695353294 707064924 840637449 923597177 966784586 990703726 295606746 298211725 881267882 900538496 219941507 968612262 11344428 879443303 542495707 545933080 796429690 815531031 592291820 832281601 321085176 844232421 402540029 857078573 38411864 287381381 269077055 551788865 507262462 711312987 437268210 617291983 355617810 532417993 490777340 772682741 523041405 665708965 673696025 980689365 161082550 973016324 30925145 78241106 279611805 622136558 31688477 511388221 519466673 520588785 930719087 959766081 524290934 804385190 261513937 600741460 183956512 646963775 315400585 453832946 53141669 953471077 200045680 276362336 847834309 914275215 340055421 938093044 136656548 543329593 818145488 825910199 958672617 993808931 806655378 819856296 944284910 997816673 326229740 583566259 520737487 875079538 227670831 857609290 864902016 997258266 617528023 840572352 380055112 795480395 530860515 593411131 869241355 915210659 276600018 340940810 995955892 997257288 953051738 965233744 273807516 643692034 548706167 709095206 962684616 995212872 812474429 871623025 241775190 329997481 480222850 521410171 569184347 782502233 455009355 813295315 847812899 927745467 291085667 616097744 770817619 997161859 381979112 545963252 964455899 972912895 774579140 985052693 570465074 589637915 6332106 20159499 790337798 958275454 422537117 754749977 970411689 972374523 436775979 547296197 296028516 637283774 369960232 421183561 729779269 958494930 416868956 711126189 50649879 534524435 918220154 964899333 245957478 338253866 172658625 738877250 757079032 877518571 2277949 657753418 464185437 616954891 404496582 595898237 27478750 562705038 696616421 753185201 46939078 399447414 36498754 293893433 209013856 969432248 298868902 895861410 728986183 860405385 151039508 545318268 464488698 650226256 256784445 782227680 818986240 935080059 657561756 788993253 144901622 974805250 556831942 910756276 616454131 947333386 535054994 948341509 643344984 861947807 731609400 840414018 12171080 965404850 223658835 412493920 624099923 711776130 416555580 484241320 125642166 859354919 183136736 284812045 552092447 756019865 838438883 998095993 281942739 340753114 953357387 979482895 75950300 951582261 703434489 994653855 257028974 720005807 840896204 903538017 14852100 869644787 906338641 937269573 827853042 878689737 409975933 527351024 971246958 989218784 631333859 848146481 739120546 914228924 567952446 939336712 267847591 782233373 685140143 853972870 961850764 980483026 742403902 856073656 686695380 693351146 9208158 881851405 570154026 828282901 95689251 958876940 938013382 945147005 378570370 512874572 20007706 167534333 832657902 863742478 754439393 960559241 741141811 782119251 941349867 999148206 822862746 836593854 214120802 925176397 867118985 954709207 541212871 761594100 950582012 984219182 82577108 569392053 553907920 782125949 499804708 659975771 826804719 956081459 258868919 329237007 571613875 966034582 211206039 735698970 261039270 416280510 880663484 933403189 226362080 467532620 910598670 977238679 445104372 907177882 286089775 987014305 417987557 936429327 101579857 461689804 430200623 494057561 299317503 466248183 905365540 991698607 492053478 851950813 835528743 978306730 429577772 552399673 985346736 995932125 633550417 929400584 289476387 529105833 512939822 884253563 265071518 955854826 448139734 461826587 37751684 861320852 152193741 988057198 899499115 976642971 438587681 663767082 710186174 968115470 145781560 492916228 300695262 849569398 976327439 992593125 212674173 296684974 302995951 930859285 778930817 948007303 256810274 882121784 283359901 330690385 286225553 850512427 116325548 580405087 890384851 988585754 146930767 871936865 742036772 990123337 643284762 949049295 855052777 873020243 29934344 608815668 377730850 833841515 433599269 488785296 239408331 432223828 955262537 965907620 741663976 832845487 874368816 935280161 209149090 583639330 942552745 997354907 51458433 927120946 975471541 991169433 782670080 783596645 19606946 675672713 644342655 665129713 626572596 884329606 116628882 564765409 819288937 917795790 929771981 940807323 366969581 557015980 367392306 846278189 649824941 801594936 281671437 357245819 733782302 907725301 628741979 829699026 466775613 804546046 252623208 929469839 844104781 895675552 965700531 994781888 120898401 605816508 727347670 749310678 544925862 933678124 590347466 721601342 32660834 627559604 875907015 905414460 396512181 533673053 914989394 939776524 55267707 487471491 812657065 861428487 68665009 993034297 200543244 994270723 236808906 962164568 266928893 919378571 993243976 996836196 359540046 624069631 305814876 823214486 110348728 212134664 588831807 855778488 583988060 810031555 278975056 310210546 274688338 629167909 665147681 673263107 869902375 875374796 925340367 958915537 639504926 701254359 669348398 760429948 829472126 884912000 742479190 758433068 882330405 919432883 875936488 924102075 997312948 998870947 695538409 905711352 362549012 633808387 735808279 776475546 735696120 930567772 617431891 909113753 884506966 919311608 750851126 845397574 417100644 621218232 204761864 238217639 734389179 780579765 318704536 987800971 970687372 997419162 855412017 974789368 978145379 996261968 807347787 908459519 979432707 979643816 473211494 724936270 783183943 795351074 363071684 525606322 880921068 897807510 394992989 753474982 958392942 972177878 927642708 984693311 744102405 987624305 334767293 692146425 38274031 39044361 6942506 672661384 465936509 732829912 442220816 607841201 40701752 996419688 819514742 885524755 354704434 518064425 653202635 823591406 749096947 893615157 72099463 422235229 96341378 746499327 578139047 821549923 58805909 74245374 818921807 878632021 950081294 977748220 10392210 896698047 571931073 767733680 667559929 773920398 700281465 969973019 718821204 724823598 196772455 258759610 628578509 637846363 913000540 922424306 151829464 901050242 369601831 654235841 886298333 901194791 882146788 984533346 602876664 934545670 926501779 955058184 383263679 517786874 595620322 602719862 189552198 199738999 247648506 546306856 38913481 94326391 456897818 484120334 719633001 793439457 537511414 646028740 156816460 300722470 74474115 426054552 73124127 511825535 628478785 889563322 388614992 564380901 486141314 918959457 115170106 163300251 507189353 788175572 672259061 854026890 365057234 629425129 593074487 641182344 727201915 974492862 340380557 467171560 526603877 842662843 871980529 876230596 872100719 984532543 647943751 782076024 332013143 900543893 386227704 662466448 453090185 549597555 586063505 925409765 562621510 944610909 975849423 989104773 737976223 965533386 837813080 870892513 653404105 807572786 813674768 815563689 221736257 962700747 770345178 839350476 265439924 418870726 877305264 930717619 440967152 544208730 723167933 771968305 512021459 652469630 527104235 907249790 598112750 980695818 167342400 454706363 563682046 881141888 965466888 983850322 849079911 851489673 483545843 785529142 512471860 514687758 944524790 965589894 146935192 910123337 124826500 140181077 205776943 779722445 264446912 958048207 508366376 674183411 721365132 924018993 250765534 877701627 538783203 554092164 641026551 752043517 422160565 548673358 637445812 867913564 249960840 489548391 745579652 797255784 242779709 998534729 347545987 367803481 798718606 909767261 817969309 941941021 582062546 637820099 810901230 943578239 993853172 998869995 427785491 593686898 918138576 946385222 427140319 704218076 83107175 903001506 509422529 837516931 697543295 764144047 618693899 749592338 201185415 856356474 481615018 550980429 121382948 497670428 839616939 912852723 69740138 178639766 707819360 815146157 807923178 965039170 64654085 221000480 960799323 974082913 328368081 356491656 428186735 863977526 730480150 824070015 366208295 775573185 838538987 913501994 95833970 918279036 4498907 381106059 164292823 321030668 454164073 478110881 772307801 946796593 988020055 996599263 110807184 300678673 160597049 714130748 920325541 975057156 918721071 949095154 500368949 912933410 598361613 734015471 661983645 812437172 339999566 883404307 33324135 759356112 332507398 577144459 990747788 991546109 445283187 864561567 104609697 455908659 913052470 964843354 982248244 989530399 694632454 709813580 842476747 972111543 967488495 993414078 570111265 895784175 377634338 608309521 594714750 660360326 453214593 663320310 187724095 431622783 322778039 458151550 748454045 865294900 178164350 304203915 544434892 651039626 20284940 714696499 904083218 979737777 635517732 946572628 229911120 913707121 760785698 773977580 398591242 541721910 394196706 894046178 755764753 909514440 705288122 841155014 162111661 596723124 600881658 667754736 314353342 755426959 687011438 972743021 237126053 824206473 259576197 470016572 416359346 809756394 887934772 894938162 807116526 896119419 932769092 982723343 297179675 649380742 587352894 791738169 783617619 798788871 422601309 622493877 406739853 935391087 839535896 893886530 354775022 446213134 693738377 751657127 520376903 592671214 82626557 465254568 661089524 749847480 198745710 915976153 842659242 935799042 872532563 957658453 180371270 720295167 699022195 917031275 661689688 870194358 861171229 988269566 898642809 930616752 462111504 651712852 832413454 902202603 369267573 435866425 875868825 926956746 696334179 886681681 916634864 927456061 314913708 748158475 587919981 914636606 854667090 994436772 659690870 802808552 384698827 667373724 198607139 750670419 283103250 773141262 431652189 545553111 20959879 693052004 190603762 573351530 553996236 933828975 865153442 998470472 677135048 704168403 62672906 352709053 335622332 684170911 750274929 893474939 760590662 962866632 989875049 991178538 369226414 982877447 148651409 315020215 664727944 768144446 881785762 968393740 24768965 427795755 89241918 321615295 471556531 732492367 5293332 798770367 121541369 434266978 624454531 696084466 902304288 919622546 425492653 616447531 368288455 414549734 505491250 784517581 380477238 896775994 972040665 995459600 35701340 675482225 752080143 841600578 679800387 984437369 78072250 344757427 669719825 697832323 251153863 654935707 10590129 635405979 818543765 908999860 885937346 970171926 360143112 533247916 860499299 917441882 748519942 948878876 615362101 742678698 856173064 920016297 371079928 561609841 365633709 593993745 543413580 689969198 273673507 575977610 728255964 878606949 439461597 846546343 998177631 998693749 280275357 485220267 297981777 781866430 390456581 820194548 879754491 900710244 771589239 826036090 145152803 613662052 848794718 921924067 863811060 881267930 540449750 823456814 378934512 985723291 587940192 676746479 566220301 826266922 199933244 541690411 346706722 909522756 511128307 973362563 269961871 643005786 558199633 755762047 615692893 891798323 68137873 440504174 212007380 620797482 54379137 406446659 35214980 205439109 598290842 873441780 149053258 773533580 664403397 923422302 862298827 898795580 780770189 998953326 541557471 560383788 375391283 396477592 825775689 968337923 522705508 591046851 994007228 994322454 45377222 855543275 957057800 961248295 276622956 286030180 689568898 968033694 277980369 978419690 303489541 997344274 587948585 865412854 521291974 753816206 543510344 673526891 328105872 814140531 310178653 524636388 505421773 819612262 58888928 944382495 907978739 964390328 67430411 883656642 919317057 966748229 960959922 997385961 931998367 959916374 215693366 653835879 870828888 981129734 988390384 990746279 76028856 890084427 10625803 265071437 488983389 928213632 706113379 708618438 45878936 709176812 304097772 905921866 11129557 216034121 907427818 997817217 218392694 408617825 5191717 780380607 334428213 814575401 698970803 706657760 726512782 982174663 256809753 642362927 895839063 926357665 361453198 671222924 778683281 917301047 924835741 961652345 529408916 689103011 518380263 923755808 75949521 310829885 227410923 800612235 106161780 708736071 966041956 995300929 347627414 659675299 110503424 156294068 198234912 552086378 433239864 491396471 14224761 254605776 391508116 531923715 952206280 977226617 122747914 645358244 168118959 703062104 700472783 756078367 763906578 770828158 776804131 907520123 147852532 829218288 476119030 518724963 113069245 232834154 833453182 992757785 292277271 746376785 10617970 123743727 419508526 918299084 645472551 827497740 286365548 667543963 192411169 832734539 872194459 902146064 114400914 533507412 242394340 859344068 665311645 785726232 793855663 955663691 67504866 555919927 555259114 576266119 681265162 818945055 593254805 777146349 736938246 870600244 943188600 989100342 464092071 829409996 563626832 578048479 728973148 960727119 683170908 737041103 99731815 675042320 836687351 950993417 969688096 995242797 701813378 988477682 12508753 312723589 254381099 395980250 118656458 796851317 518186720 647748260 727751833 755803768 273031271 364986349 376113369 688600567 710704556 871932448 839735728 921120999 12521983 870238168 596405727 805185254 551054718 837745243 856600546 959059406 730162533 945368250 400538248 433356870 878717195 932712147 685099819 995547940 961642780 968648365 972327223 987015054 715504231 965478916 150680948 222779689 839572991 895243252 303060146 941205941 575405959 967137609 987232854 995153718 719375309 751469794 778907196 926467400 948937511 998843237 960835459 973603749 123717908 600321447 544851522 785551774 691168004 817742717 613301062 613508173 482366031 622451532 724938621 914961505 970474666 984646129 756150104 912466826 853263327 888880340 121973475 441270023 745375404 802131156 631920286 740581682 67705140 545964199 20457998 115107353 17788326 619341205 255754631 906697091 505953964 957014754 243066068 768841412 804644872 919061570 450741877 943077202 69199290 584216917 13014762 993136117 574044620 799566476 771940482 853010588 937971960 993473198 275204961 331883372 233034199 974813503 376008248 519870590 590671709 670242546 14607341 626290645 22155026 414288856 543713838 979515216 233805155 702947301 420740647 836402358 604180004 721568192 351337519 913461417 209927966 311887036 382423665 880615712 31218585 680113080 23517327 794764590 984098857 998869546 821274025 953320315 767120170 787512307 694877909 755436151 670698899 909747297 172460291 471194239 532431558 887752776 977726074 979176674 435616339 637074999 641545389 749997384 853734363 997715538 940634663 977697169 552588835 755719798 858971648 945025969 895420553 920948200 365969221 977631725 291348314 349979359 711242767 714503622 586428301 800003511 782420768 890091156 234872628 317207920 141510258 373341615 297803496 358327688 828449498 889745379 769773397 904738244 924929563 983134397 339930072 630682961 481529894 511194380 34055195 636179655 126073123 914440985 809893343 917616343 905706787 915760862 275041430 925396698 947265138 998616568 724122242 857912184 715694321 907941709 122078725 232199148 465305420 666902174 242732614 892774231 305008315 380477016 5323698 711557841 890302350 985164080 353290993 956240851 283225217 737278242 317503801 657964966 718466141 725602276 140534726 589183202 694444291 956785709 792852091 843814967 47554400 514181945 236626952 793598757 239393640 736237721 807360610 814769170 577764838 699523057 916237012 934025334 836119167 967317028 394478470 973883878 773911169 778632161 981836407 991538268 641211111 938330571 899569037 964303999 754434001 780346838 591111988 977725039 105803727 525514921 28651705 52865246 646468697 684430419 121266373 370616598 332863199 460554509 144752993 326304247 124079791 242197160 17772096 326255195 874935733 993297898 556519767 595802565 596324326 818712917 524893226 904482419 176481099 544796631 807290445 829225216 850152823 985071449 373006029 462522677 762532937 866753420 340508087 724240166 568472118 670329219 871210400 873048580 443207127 793901328 890179597 956564557 152209514 944102243 390166760 458005092 471859805 604473419 535745880 628146799 681613663 906710945 908987517 912644057 735648752 741769076 727150785 732852417 393327279 463164659 233605090 454829549 598097593 974336672 593741017 772874494 784212024 890483193 914101494 933204367 532195301 956882465 835881933 895261068 779905984 782741156 784565645 786667186 804310390 970235177 816978901 973160897 701157748 953301510 264859794 808683660 829442546 959708963 379047560 400805754 368560683 780168497 807720846 934798217 205156914 432932498 478230244 687429712 839155337 955055118 249383620 686797567 132489450 663448271 87183173 386289616 464873001 740585904 716998786 873136745 937627570 989669590 474497893 898357623 566393912 687427634 195547666 223770494 761360353 866247093 520748510 706422905 47005428 684126821 530044477 969139471 290373606 821070907 555516073 724071351 88182777 259645166 92783460 844452580 126347728 655347692 190068860 296682335 492381780 598400479 978515134 985121934 293525737 792679522 141795942 540776293 308566460 966214017 703530413 938846554 360745279 764313325 949799968 981892080 174190279 686356580 670694759 863670811 498683348 578919065 805087198 918926138 328957505 540132865 2263737 504008042 749903324 756568064 5422743 944472424 468603838 839175624 114779934 121213382 692303190 809515585 867237296 929646672 484851515 546301379 47662517 83028159 844698471 853086233 439199920 648233120 649756016 989240096 219451029 423337402 678168699 956166337 544478437 944498737 166357742 216019939 248414190 510656947 651130077 728644410 399127167 898003603 457234451 956937349 11818276 751547625 186244978 793112754 362747413 400065108 70475995 965857100 945155571 985654464 646749792 740013897 854595322 890317335 213350606 939774005 318976157 331130461 315079355 444574456 298913230 656170253 244643870 251571178 236984179 378218420 431403223 520087784 344026970 735051048 365218907 522737417 433990329 817705986 815403480 978837904 49718605 885614267 147514718 217872894 851780746 973897712 963888570 986681339 569078222 745804421 874540681 948990617 587825407 691890190 505255502 965621479 871297940 917555290 119855900 524782092 481879891 581222498 58814637 205801993 740271638 761094084 577984159 887835308 846328608 977977751 598327837 669824904 263205422 300700204 952801066 954175188 872069906 908565563 736142969 852842118 108122506 223274544 414986626 670048463 526595914 555852802 777799684 941339331 415146633 772508857 963251971 966050909 610964229 900926752 664231141 763822908 671417435 733480007 232531044 290283010 207467592 625595822 72665381 711646056 30244622 97315808 416876289 726764311 44745050 809778281 461992601 869153008 624537892 740672989 864875054 922069906 944399702 969454473 144892469 401609047 821395856 909225490 345904475 861489544 740712351 968228526 743181888 991644894 680716442 925788489 102916786 729956395 981461801 982708972 711154792 890987077 662233339 942533680 179819221 760739265 716579049 866933287 952121823 993798014 110104453 313497605 816417802 821492316 172716148 755681196 108194619 151471787 655656539 928110847 835222945 837167192 197628584 873616795 692679667 899977652 126387384 510332970 91799958 391242856 151271456 865482044 259337728 777866804 5679896 468608164 871663290 974366087 976381575 991011439 980451232 981849084 332324171 920518277 428521924 866660895 747089889 907950962 796172521 908763056 580012261 678164728 699413250 891862491 239971326 454900609 975225661 975870769 277638706 575643421 84634492 452522584 873394994 968355413 490390151 826731442 504374382 978682609 146507825 303382037 690254649 692160274 334733719 585158534 889894944 919069819 426849440 534687588 198600541 305095672 140549579 995919026 564338627 705286346 776509818 915815807 440375140 478862571 523865780 768181844 829205803 964957384 69410574 767298446 500411443 600730403 228475940 311862300 958369756 969393686 648184969 818043471 688414570 738701643 435939165 980379245 901511941 966087379 385615828 457635996 717228325 871533635 856291282 947385716 853172942 995489024 687645140 903386041 749882407 876148396 429862081 736713454 888921502 975012661 336450849 657918996 795200172 920610564 946210609 973244317 241722453 887897081 786985229 904149539 175013013 290847674 210104829 798657437 517760795 701927360 255777847 326349421 263248394 447262837 348912457 648084812 567025314 939708483 916124241 988931802 110233721 165093205 991839538 992186246 173876868 815162691 492162971 749845565 962973317 970439427 348118684 870932888 796675373 924781382 936417189 982723136 281980545 945179796 225724435 240248863 953963319 955058896 266135307 895537300 537146132 599890813 483824188 600134559 89057977 748685867 348958231 385958690 855418165 867995893 705112446 811131623 571933015 783693063 158882705 429848362 979799208 990656771 287688084 380562725 146607387 803810078 245993899 670213435 9085387 325681128 37792860 305438863 645209870 941084897 695726994 981080663 172537939 398790983 929518564 991740367 308148047 869272454 248568252 852493682 941587943 981201445 885415668 900006064 328437566 814586578 380556535 920117532 526631842 891930846 292698164 326624762 654821754 930289602 532009553 644880669 39228478 785453683 282254332 972724092 591281689 912336882 955021477 995934878 321000403 970645967 613395777 877431858 948856622 994510693 900297600 971697376 391729254 530730100 78786737 887618679 427228025 731389360 406393859 435927191 579027048 665856577 955837147 986159617 571997697 718825286 89249006 786201938 99527104 600099685 43833097 568142626 863755093 887386277 495490844 652747753 996243676 996384825 27261696 540231500 313963544 895427336 116226410 688260569 837279151 958356916 687345379 871455389 546644044 881252406 125769746 426438260 154260316 478577244 450875774 778440242 322474314 832239423 700230510 914813195 282323043 437140540 502733167 824403308 702033357 943082298 377272413 868675892 715485863 747707229 704201168 784246858 129861428 864454926 383404862 451429632 869227118 930862886 931835563 975723317 387252310 705649508 398114007 698164489 637263672 808839374 663862405 835634862 712429470 759574224 734136962 971279826 348837581 464823657 200043707 720702530 706202873 854235956 708501557 748519673 378106333 755425555 495467093 567402192 80019044 724037426 453090892 904040085 264143371 282542429 965424597 984064295 790117070 971538894 18537598 61616761 917990260 952100263 539576189 718760699 66348521 231944808 251443256 825837450 876032840 992237583 516316358 521500627 231143259 716337367 39147027 499577165 837378036 851295100 264070411 942537286 173189695 913719635 906540948 969287348 332378773 836100883 425086816 469716350 630208037 737329856 86311987 568061873 784966014 950493419 906843113 932662773 814163910 953466366 19945931 691352305 801132180 950276887 737104680 774570990 818266036 883279928 809167616 881875592 686991054 855855623 699372720 804465241 612031687 932925108 857097213 959037436 895026334 966674311 602892281 802429063 372018725 619742302 471481158 535717381 988461069 996188907 336100869 435292402 344971703 449873889 746713139 981234189 952895054 975178579 612625131 804827815 916986999 979458436 812483062 888324355 559342606 737325027 332819867 702285816 422406900 973094210 331407719 962923963 165488271 984287016 917203215 957879605 665574628 703106539 557692653 766504555 844180074 908447607 837243486 885333885 839040384 917867357 148802654 392620261 972939826 994086212 11735665 923072490 170091760 496733027 793937922 904780623 80519883 900759777 155853786 190901334 999108763 999125457 441839376 503278132 490710688 787067824 26887255 951265308 24271839 667830447 362851278 722093516 849908511 871343965 914475958 916860008 602106083 916875914 997502686 999002060 250360432 644777783 446390110 529001123 828104323 990456934 815642829 844754396 951375206 962271478 328958265 348970734 410514971 503859218 321848440 831512988 660518633 673945334 86877815 778775186 172412205 895566569 130537908 708900218 64430388 876595603 383367972 440530424 452298417 834168189 683664766 976835477 691481090 813982178 961463392 963314681 815346240 912792668 892777997 979871550 795953917 983840062 601376141 626500040 380053857 839903780 21524381 935598779 297936407 349792261 637997933 841826082 409145990 769269687 711328495 931822980 158654945 952611552 358264126 923363755 494215189 828344786 52659709 559286650 857811015 949472845 320111700 631662098 724067685 989137421 833913538 958327661 155211855 711562222 55933861 628418071 477408433 987374362 435844080 625904539 772621937 911177807 667059871 760443858 58203654 430471056 726686477 730231027 429159783 650573824 868013561 869558598 381825167 804363286 378618337 621328311 162998211 681443820 348998287 815674655 958506692 986176052 416002071 941844158 757994204 841469229 358920981 600280608 897512794 950352970 166820872 709101679 724678234 996589289 260312996 478416839 52072449 639958260 69429044 418909414 754867194 852405427 825599354 887102551 270855040 668625964 201825744 505115148 201281644 492919548 238448768 299035419 921189305 928338982 807059608 807616015 680363061 782521717 966136221 981619967 697199766 731662031 708822036 847446707 116486104 347293106 559385570 860155937 540932039 629440117 102514769 970082049 728621273 924478348 888668013 913761861 421741345 889561387 933668138 987472641 131376895 374368963 65138163 347582269 690342349 755836317 697322742 736217334 27365210 506223293 874697002 894712687 445047347 935018141 106965453 834365622 424955775 641694703 525923643 716120045 959812595 974389465 781435236 882026407 427404251 599810797 606743366 646771736 384606387 624192978 894908814 899823801 109373608 801758532 65416195 440478542 27937543 508862996 351738139 623576594 892652266 914328728 641546463 721309101 672909275 734062802 736057085 844766392 860553546 928377001 83427540 992473177 694772642 972686935 592463430 654537225 501579750 536378215 728089227 774404773 972895654 980167918 887371122 940336512 629796043 659568261 713853032 818160231 344953478 955105498 545240864 967668450 499009356 978846577 81940170 786083682 254171559 901248390 564852738 697322213 763866918 973263236 184912096 295676449 32886431 559702830 538911382 902008673 679327981 697196079 84220076 982885307 768793721 796857631 834012667 893476093 421887937 623653239 473076810 563219486 668724362 760836702 562355903 792465923 116604736 555237935 311780809 389866510 608489896 856455605 670526139 862955103 71127493 342301685 31485804 464911515 362778131 926635657 77518042 158345247 456369276 821512313 260698429 852050684 956153712 967785732 268208813 824770294 77840478 774153492 595256398 640970791 7494357 733526478 959097781 967526163 248084335 309953854 512166912 749457141 397681902 708588221 470955300 718148342 776456891 954258581 244864928 497399617 465939301 849289703 573617497 575157670 826978334 905952706 153734776 450337853 887817376 994015497 104566482 996267863 539898202 578211545 64766194 951528639 697549048 710823053 727164682 920285103 738713279 843349193 822007961 882302834 454897249 992475761 161215547 335792828 740134652 864377399 593196851 601655008 170404937 760980742 464220445 984819341 932208327 945397632 97027695 998203040 960373125 965420092 247341854 519300311 727456798 791402855 92886022 582399663 557129894 608764257 500698705 621792410 276058796 282666819 415798687 469664716 317252790 955414494 219301224 874487517 617993297 637498141 408497189 840409175 596713779 881589390 466012676 673064419 423579851 732041932 479905234 657542191 532389813 644160658 236997102 954066438 493476627 782745650 605936397 729278693 986500494 986558009 482112790 518452970 993492276 996393020 638109787 832974012 966460270 989883512 391481411 503119466 429555052 943203127 715078289 806526595 477177996 863383843 809921947 859411646 847589074 954931263 135582810 923040048 266671589 970379655 893308314 985239058 665093186 855996633 768486366 951748492 179184420 663243265 976737725 986796611 11323002 473339035 791007243 842934924 173739998 889958221 533268445 767787247 164833190 457366592 255273528 956648082 13805898 125098072 782981727 809477644 187108115 691447743 53310475 296991016 269931808 806046276 290710535 357249587 46095581 646467331 415603985 745256739 508377960 742669522 110621549 280636093 968148980 998026984 204243195 376741733 825839800 946702482 661903760 967458281 716345291 809453490 156640541 753382435 518316426 947590307 44075053 210643310 331706764 569824204 513696841 554707114 786933207 793516859 939797737 981605402 14811633 283740243 237949091 413312609 95354728 624221882 453657050 774442664 383077270 887339002 593549551 621997140 426628773 809886308 168676153 700052822 112431482 470028045 473042862 963390159 522211040 878091098 330419369 910140653 275712424 785666915 345696237 987213179 392049177 397955432 444316839 493024289 522030673 650333500 171465768 700429712 594200204 950085120 127964719 426738898 408250147 716313972 348664304 969664797 868671249 948189466 74974641 458585005 290994341 453862499 959805772 980090431 783584793 947215178 876357774 960479548 979037896 982394390 858178413 921914448 990226097 995888994 118062794 581296920 366379460 854707598 773151973 942252337 469082866 645203654 646942574 671957540 357692961 553644615 444186280 680686113 240162014 851295114 884302427 895722747 951985345 965240291 77538833 739903584 343697531 432427238 783610054 799386504 544076620 650104864 715344124 866215476 813514185 837329383 564783581 814749258 592776300 793720347 891949195 969620892 73916001 276269817 755252453 812248140 511177409 649483672 608286630 640956796 622168748 792877764 113406288 230030156 896786612 900352122 820203909 912468425 104259317 359350560 180879485 411452878 571142695 977123886 145520240 442949433 645618688 826037931 255486387 849477430 470839323 611228576 547942924 623269123 351832633 923337285 813408282 947338478 191114293 668225092 666733988 882421482 122730698 691905779 493947934 949060452 339634224 799896264 445889135 956313753 532338124 572926699 310246501 482513294 90342700 386022392 947149364 974517776 909190510 984838199 209669096 352180715 520751744 891273566 878524746 931514453 919166656 956475510 863931096 959260494 568207567 960258136 510164982 650815006 862441197 893044921 253654585 800779696 962810881 977196006 783202504 936397019 866302320 936753645 870927699 998628892 520517264 999229887 275020840 382712802 411084098 894353653 105464924 698013428 433666238 662572470 444622031 539003278 412935711 809936535 986387219 992112408 450261280 583481460 780392438 848417094 327729037 508010904 695856828 810613562 733563095 982960619 866627881 977991880 156215697 831232589 28370860 685547059 982713926 988453136 580088888 680841783 499507493 816621951 264265759 856206504 819333857 931693088 331942163 744104457 521096350 838146856 235671685 882665037 410472287 664438851 281920976 961941775 453586173 712765169 734386521 824163089 448837496 581878181 228082034 675048583 197382 89972929 476036964 508496037 834664082 868993756 230518695 239033363 493817931 960968548 908577588 976034579 1352289 870552537 624127405 715018589 425631803 676309085 509581266 913247642 51278131 647158615 741515445 825766151 413116972 546427756 415206285 474804898 662582418 731044900 354562509 849615074 212199093 612329580 65838232 609026524 613639587 730181380 12270102 489175095 132658738 986874182 222012358 628673002 904542876 974520738 104240978 613247911 17386356 870672270 18077538 508175556 119696054 666322924 617315925 754898274 467799859 647138719 731509219 884940699 781890306 798116813 60666007 972404327 536403066 708010342 183707045 672413990 550057980 580858623 715668160 834322412 187263590 600381573 75689521 369582345 222061257 408550611 234037161 277292819 726643414 742474137 948460108 978835611 551400293 678023779 148539833 609928622 909257317 959959444 28891079 195456193 428806403 657555760 953196424 986453214 949019866 984287836 875284971 879580935 432151749 535247362 46743216 356132517 795744128 856805213 87445328 142223812 626336152 844858483 711246883 960725418 156288985 219215692 326133784 774721087 434875622 971261720 557071914 767771076 174133176 488954552 473057232 946506439 213246555 216720595 740822916 892186317 82993143 724160572 950588550 968485843 15504715 210973079 523566250 743390322 655276630 868648721 266812261 875095638 829231875 923958204 392132997 800089455 485896066 537020560 191538883 281608414 839621899 991689777 118645631 405678544 107469624 777515361 954223217 997158275 512795960 901045343 798235277 890981559 928974378 975676383 86063774 773449883 4271820 574446026 855180324 964504489 128829205 326424605 558232613 916471995 1648815 289754766 3551495 112831282 633985458 704603997 371850503 432516224 985033672 986043126 69201076 400920345 793182838 834735163 494894876 598702473 147105315 981029633 346211697 915776483 139124660 730540540 645268485 941365346 959869410 993046898 492839020 702844113 961568603 963910492 309948568 641427101 621940352 657737152 618359268 722205260 343593470 561318923 666859410 720442674 807329115 866327792 297197404 745604732 375198064 421731496 804657594 942893697 394447313 619939427 967152219 992462588 713717408 865100582 814448681 816506404 774413705 958636369 486188545 855092113 63389486 450741231 170107459 403996538 453678831 577302095 251180649 519373236 909401250 990211024 461830905 558041547 355648870 940094208 465111796 492571538 662809834 975494025 307648175 456810336 534600929 557985158 441901808 483815656 708635931 980781724 391359002 479035975 730748512 907902746 686814899 779318263 69139776 728313316 109930667 186388094 155746474 998281657 88742935 656323381 366115726 872308714 315960396 352320322 156918298 986735442 552159242 573142932 126999512 511631008 552258357 670689293 250413600 542042543 94575886 287786265 598508336 872977375 468980073 891567151 748503050 919460117 908727898 918191246 7818550 831255566 961390734 966477976 480191594 505381044 346800425 600066583 902179605 975890449 274892247 310694127 850296325 910528653 729406541 960535344 825950474 858481353 67778023 694082929 619930642 704721783 220872886 898562465 531847685 626716404 744976469 885942334 944794441 971779961 215323548 558541144 687848024 870383283 433153160 786726013 762737807 947692767 572741427 903591952 797807390 932278646 766001977 911662005 870789282 938111028 880143637 902487449 413796769 557578637 622772339 669791700 112113365 475091512 706442068 775405869 22514228 909257421 18281386 163470328 143971209 391545261 837717990 913868441 684802626 731897045 177871880 677700159 963489044 967623661 479540287 584082625 983552177 991902831 342940942 344912847 462097489 676482617 595190116 882149674 417077020 834824540 921607993 991633954 261997955 490194652 857899541 948684075 717760813 820748674 840613397 996619359 916399260 926665750 68717473 416357525 24616696 112268618 930524345 964211797 471546267 517246301 495159503 626851075 265839270 421918841 86959125 952917377 2043856 489819205 704386353 866549305 275907301 818650044 634718583 953768637 854071794 900528577 725456270 741404446 330672962 526900246 580055765 741280137 857406694 951281601 217551798 691621021 342151001 895122471 271400735 644062528 605956696 994905801 95512384 974931541 119209944 231472187 425756766 618783515 191759821 541457285 468227280 658308328 337378784 929567050 386991910 583569546 26559152 672442843 845211143 902055452 564929115 864455550 745020008 835735131 376602200 911447232 953708594 979978367 279036647 666225971 991683449 993366410 910229442 992582625 538399558 732038666 57953618 112044867 842662319 884030245 621594306 984359967 667356753 963178076 23941999 249675749 478507592 611713014 754393621 894943968 387384015 511471122 589075430 900950200 551801425 973512365 893707835 925784053 817220563 944257589 525616211 631893653 53980663 106591080 559190066 832496071 370685672 610579434 673285809 920937971 722350299 848797009 566528073 793499670 904330058 942352928 653288381 962087509 783588976 842526864 667747777 758290341 593337631 626489351 877861923 984879279 815873056 963696400 658683102 947692499 567422982 885962787 492176985 862054925 931573084 980299214 589231941 833742068 998384780 999138739 739065284 760976691 303828192 653312907 742663146 840327393 577389842 875299573 765432372 803851707 609131259 951567515 938022924 954129032 108099043 122610721 235289223 858036341 783995225 938203694 191273680 723708062 972895925 981928023 386229722 390649355 212531431 367112878 240776394 809648898 179578298 885031169 552083463 867800236 768919981 827120151 481770689 845623115 606944347 900248652 621182319 833074904 918420991 922467562 124650633 803025120 163667417 593937254 260795840 583536948 502220486 885941502 454271322 617683435 553037242 993265339 557788642 604874102 870113881 982191722 809607891 960024116 478703808 675892504 800808659 876323503 586516009 725034774 158160654 206923133 495335645 910932695 542609256 554616922 817681836 859346735 27504358 54756137 102104472 292367465 749894216 952030870 116515841 839928342 327947302 552323081 761078906 979954313 160667818 305685138 628714064 659123810 451174927 656474847 794623594 811309095 128775480 836166364 760309267 799086510 55128245 323230706 586814412 981015070 155731496 317955271 947996208 958420271 696137288 718002050 515600439 904494133 703485939 945619260 15322594 385740071 37716286 950695483 71478601 678612239 380992026 967059801 779734051 900482741 244152727 662392439 714170799 995164497 162533652 399936060 733652355 950029022 927528579 954354234 981253929 997996750 595905305 738709298 962723490 998754235 633782792 836929409 41683512 576092300 941850417 957539831 183609075 979318041 25911655 247897212 54511803 816049074 229856630 403495802 113978425 133304706 110893593 627101824 604117979 940557998 667748559 869215369 722715896 830644291 33973710 127726107 555031165 731132498 381190484 900229675 311442554 943197446 535168293 928847833 136807504 958599443 543301542 737694082 267355337 562930736 847279253 965743285 387940052 901130106 307719110 614176489 437479589 595670454 564527500 611227740 636154658 954847145 758691195 887654986 452685363 985443609 316219535 700415765 290197551 600502874 116322567 365581382 570199882 583496745 150048349 639574150 73443003 552341793 648673407 649673704 415609942 665750056 358352244 449940882 812721955 974435794 261572381 755941106 409519306 876027875 952099651 982889680 47765415 565846430 833040980 984710637 222899444 621530122 150957795 896984019 228066995 908227558 415731790 566938400 209282123 328489827 138868053 572657495 843146897 980584354 365133372 601906724 160372445 764510519 641352044 936792872 188986111 517402587 659666772 899777096 938646985 950414917 367178897 647683721 324628693 346163598 484355568 920623041 840472837 986389459 679444738 912159268 149037893 556356756 149965132 592374170 311019646 757847150 976457501 995234268 309363347 938828793 652220051 697859016 83220601 92966592 614444247 619633480 955393341 975217243 169275376 702758259 967837012 987539188 884644461 994186853 603262770 834427606 410119991 723735056 675394623 683946830 407810483 783338915 694705662 994397386 113132277 529187647 385752712 839263211 598989824 900028934 450686807 964932598 919682892 962274208 896251850 937833738 957657954 983165346 607366733 909732598 948066022 954223136 848855956 947615979 941803345 957247006 230523842 952223817 247546254 832620151 788499441 803430126 742086351 859773597 304372243 818055167 277084142 471539157 304703805 346532817 27887802 740770451 195629872 220668186 771211396 869633065 895046072 960877469 946889267 980510251 488765504 862363920 963003990 965081852 280266098 335556782 959833092 993518640 824357625 989586936 212021659 513650930 885850489 966194925 974145749 982713665 592286217 978515797 812655959 827888910 480235437 827429726 283379241 871330579 614318818 700405142 340415557 828920522 528250066 701189608 674393830 769147896 248883517 593898806 80905989 238652101 251421714 897127747 222950611 245305373 640434710 739647183 291189326 922008325 684015413 995434024 150861701 411894287 993719727 994932967 839942640 872253787 659915806 689819988 601354132 767724318 888024240 943751642 282033915 582026430 817368964 832256059 124320954 351062969 609849268 993670115 280063681 832899774 373484734 442509825 848836092 990135441 49318834 329180577 746296168 928359394 73847482 560076790 731905583 787254106 315135186 491897718 316498413 503441501 388144438 901693921 698307235 816451645 793106919 835227602 637892135 934451758 258311699 425114734 448848169 665019098 519655660 700637938 101723053 172490703 354269123 795899483 203198659 525854784 588189665 959893115 134552002 476032837 992111909 999049872 697714800 955102580 543082017 916459113 819167193 916965679 611189762 875385933 618920914 623230080 482848044 511536166 642029325 752871289 222867916 777718877 624834746 762361384 222615151 451153561 52348882 837498375 659991837 930005901 637571353 743060518 678670013 902745209 720603390 976228244 871987723 997570214 102325835 266219552 177943792 965330969 484549656 485500672 654232226 714396543 418927539 877350867 524810291 922026487 71583912 451433142 102119008 799150960 133501008 269693642 602400994 715206925 298211612 691083734 772790732 794806742 697547973 833380067 518196338 772274665 689682263 890231175 783043032 826456053 107666561 614994677 409479553 636053261 75569613 628675862 505398646 885728398 321094088 577630272 309755707 805575123 197369102 594494967 60263009 351007953 173752211 661536878 113501925 848809857 906483540 937650995 558734635 761695446 565924293 570687913 729000746 975920233 906730302 909266338 441914871 852568613 724965113 919325276 998814615 999155398 822636686 879233821 807365485 865331236 444047456 634699960 449993548 953688978 616462108 631041919 460550385 943661488 317877613 423920840 163557575 786246067 586567891 733332481 708925320 912527977 50327530 998599103 185064651 411839872 175392992 476768517 77863201 603313685 419191458 878397593 184622996 512708624 645869901 928788668 266321127 289209235 557697305 970745580 938384704 999289083 43694882 159912628 695135277 896155538 807925520 926917872 209154890 741537123 960294205 989477542 82847508 668508775 670970208 818499674 28195231 67492408 638317960 679710871 429799289 802480903 158282870 671599671 967634501 979073098 242296614 456203114 7544351 731242299 824824038 867402221 208432221 383631419 226049814 266849365 430236967 895567485 133578446 471129183 952704112 987099019 125435520 390330053 448862621 798299411 329135113 599920882 231428665 805537346 388858754 848747623 793686256 962884585 190582969 769003056 940308669 983694598 81773153 190802092 141352577 301508396 58462700 764422636 302554083 536274884 18194502 107638880 551685755 556421408 235394842 907117503 281275805 394262970 141193016 470506800 418160481 604377943 739520995 973938794 576261488 825233493 204981119 707506987 850300293 882689380 631206243 810942214 836459223 866943462 967924390 975957585 177144506 423062419 983403490 988902622 521627628 673667107 683315234 906529997 690602179 751407555 663235260 673507428 217858570 619225843 743626791 919443827 841345719 854070574 72254703 710495510 121832327 579680698 959966481 997596349 916285410 992111086 323549142 341756876 309878158 961582021 816866348 855775993 781160672 826524435 830805657 990013602 307707792 696519086 392372389 990067251 904658427 909871130 406511624 431728784 337740537 836202194 170233767 709184858 412083260 605910687 41050216 860846768 878633813 880381312 934958677 953632682 185000742 826081442 321617302 994033129 176608307 618619693 114617480 375524468 394052167 537190827 53361489 765893664 825485186 901620845 715674316 914920419 395713785 871787144 855092433 989000248 539927856 827049668 923511502 972332834 89633478 697339657 823374486 963241190 815246787 953469958 215267774 704067969 673450336 880691735 648020772 921413760 841448233 902603212 485085664 621607098 27697 731656943 73745991 749529879 855568769 898542158 415088648 697039576 340269693 575080217 229709867 967591403 43656071 896066808 703871117 818933452 660428901 775715290 270716047 332922025 196625808 351200038 290880251 979890320 145417491 237786003 234955434 947100699 560242327 708752004 514360362 709959363 885794346 987162556 929425104 995373453 852706203 876145408 237544816 733956828 488132253 574951417 85635263 540097708 751462434 939691354 770954520 985835690 282267806 704088960 748925465 909643238 770122458 950528060 203694168 366001012 668585266 758457844 470892868 532887541 30503445 174658394 543725688 867091492 676505827 680549172 61295642 750314985 687737097 704690277 937955830 962595232 151759832 774142235 372409996 566679391 633768410 686576334 689010502 708032334 846998959 875294244 359320441 868837744 800115914 958473462 38032956 886297667 8114857 195848364 198047039 453852483 788167419 918658269 158712033 838351469 704791411 976710755 936052532 977968324 427423999 475319267 299573983 874878532 843654611 865003891 826065432 918801969 25369600 39910888 288160882 940679740 163963230 550378660 678534342 784434355 128459839 962726779 841500003 957137011 500604357 868463560 524826569 954524845 176351785 591609814 986472726 989519368 248303887 627582180 821839531 890383119 921724172 923586739 383086968 943918381 809496782 851116151 307193513 761560176 999261620 999376676 394367143 593157271 431282279 867442486 248513641 636111864 338056737 526323009 54934107 877491153 925303443 946624000 567676820 855619952 326377270 720411959 693488095 823905112 116336673 837998420 176732783 541176902 380529070 824026042 833893694 839117630 324416769 452910069 300772452 903538638 583526426 593079400 359487325 868595709 611872603 900802914 53839523 752159730 565184435 997392396 449531323 480491651 740656211 837539178 842825624 905615882 323779457 502099346 500804079 964472729 920809947 948052596 528137572 556092353 320176128 790556106 6541322 971046514 572828263 981971758 477332191 941481577 922728784 964899342 13121519 795832034 874382290 952647627 425323177 499846603 758021738 936872999 321181793 458338221 21506877 776569036 513592879 666478120 477727673 951276936 884684165 982511775 531329633 852018699 692509989 954592892 454222739 806197381 539707405 729604346 640831477 905570811 803767503 848747182 930310758 961287765 186791951 898472070 333676783 952913250 875214829 878544705 702041078 759222347 727604546 959190993 695656920 874411187 318814506 747258160 365170108 671933515 915539309 925439137 622908047 712152494 145487619 825258024 109851420 728307114 948696389 952426981 111446956 508297220 590599637 634797550 513302466 559149496 69483721 608270367 933990218 950609044 10628535 555066884 498775033 517597449 547175310 833047178 34936622 830676718 872970860 934519811 930120359 960491965 608896416 621704571 323955851 676104892 542026111 799441427 957997076 959580407 770659732 969115670 955333166 971077558 315341531 777369873 826807315 899445368 153100579 435471616 402293760 979907063 622215267 762781854 230982131 425463743 279111860 285767791 342966237 716358929 280960232 902167812 506211926 939436679 616728405 878797912 311430346 930740536 212187934 339979130 967197881 971004125 618986531 798360980 938260268 958317734 482325444 854557659 136319851 952102120 969767471 995568063 554638259 594775180 56994795 462489604 865610425 902652167 213329096 401582021 275964614 282854883 763920756 997386244 210892508 544825971 460681101 677860237 598735616 890589547 956218408 966706036 338990782 772759928 211198419 510594968 530232151 759250907 906976069 908670951 620904498 729726047 360085426 477767512 367690167 998959656 101479236 956027813 307831245 789908728 270677022 520747099 367578669 900841969 612119526 995060399 121307165 593178839 124498907 335408537 464090783 878856893 381886180 930815566 616455614 793364766 542155241 832827424 204165410 274140410 669542686 755790597 67581329 587078193 405191531 645020836 829175786 936004189 439279872 458386553 870813046 944019494 576722381 849053517 213022074 587802697 389011699 935674793 32990180 71686539 849558859 902542537 945296877 971997117 837633804 965100110 537706951 922783147 345984703 995748270 602969352 899900014 143742907 984713166 630851325 924938102 601374300 729818370 870099350 939279261 713700467 874914665 377153330 466952570 24912285 310319321 240445184 643510032 200075032 658088915 79392692 89508209 320494427 371946573 350651396 377187141 340799228 709716048 767613862 886686280 479572773 873912484 245994056 745934823 153072185 881699284 59761094 928199580 85238728 783621916 714986500 776013554 325241012 569726218 345991297 749542316 588419903 955346011 848398450 881356023 977055103 982118916 253680358 961378339 754396860 886851197 507591406 721200435 798350122 847660978 722358830 853714722 193376247 775055465 45036068 162984595 996295632 996994328 247651728 481426473 16816793 653317716 371105647 579703740 13771993 187188515 744401171 921521812 729273631 874389096 149757010 732786109 437195988 490308927 560002544 958168627 344787588 375735459 690617550 877127048 750665853 949890651 308495368 428954898 420370285 762361156 762082727 799989878 516978405 554002040 844559725 924049396 102599741 172833171 881664227 980101442 603007273 744795328 735398383 761973275 452038971 460778868 294087489 405698185 385952987 454943221 584201492 788899341 552124557 968524895 803402832 973981776 314669515 494301878 27286167 256507459 601112006 936951113 941176070 969786087 489848179 874416576 19354123 284135604 750963760 984588456 358517611 531043649 144283007 872632596 735068040 808514327 754856931 949522191 241755080 668217465 418464754 968494495 553447286 575236225 742630894 966994157 667712359 953330814 136399450 138944749 920018849 988539241 717915757 815507790 533795250 625967437 868071583 932218363 518715806 547833831 369372255 706211669 987326186 997152948 113343625 339347760 816361805 886248210 736921319 825234323 106161735 406756578 205031764 382248009 398357569 949713170 40306759 634960005 581495264 735678247 162242634 576989228 432394316 862841422 872442460 913231555 778328171 797820067 848746900 918518207 538218436 628026409 583451315 638069936 237390391 626493404 55797642 328820600 762186943 839666794 939849268 981477692 394604213 645180988 733385603 809510106 876866065 919009670 306894479 826017004 39016959 120822744 559131196 776442907 56073252 904000891 637030029 919547863 497568258 663092295 24362106 313119670 704872983 708158849 60759634 609987182 490084824 585187113 538742186 965904400 668191030 836190527 147701288 894147601 571564232 902462248 601986891 621589378 772209275 907035207 567765798 806298095 356267653 837814923 44355952 630697588 28384896 217642120 445834189 904324067 467196895 576916862 960599669 970295784 911917405 921683410 623346845 752819085 556669584 694185393 843740321 855598488 451086501 713880755 374730384 432634046 715995552 960194037 589706694 699421577 620704150 692586620 260671585 821434424 52805717 315834724 536416816 689000511 701710708 819644086 850470697 917755105 419295272 654383667 555193652 605051710 577245152 950844928 406336729 684743171 967330972 980220749 1822072 664445440 116833508 229986246 308753187 766072014 193866653 474015217 943513244 960124153 581761199 822509750 142211842 526531531 935609562 967319492 440565225 778362471 654164367 929378454 950510396 968153254 117406155 825420861 908743534 965338562 99572209 447922660 624017077 942750266 88101016 552682003 948884047 973016908 131794549 364871453 509724944 894638440 870940740 935950293 516830988 650594907 126190245 161970630 163734658 308143267 446752426 807090162 922346055 936680495 123519605 877887226 541033702 649101642 85572318 640252330 545454802 570091623 691136929 813085521 170060666 222012192 586609172 809936063 364204122 819886803 296658567 796008567 698026382 968431130 738994389 860970596 273781587 792051311 937042033 991204008 965991146 967057096 334313462 998504681 304602009 620091600 102331149 345077715 27234298 444599113 352197513 722705721 84921716 327964651 331553874 524350551 760624648 938985831 362633112 733216850 287564310 573177669 695749335 783578268 590540685 597290454 860437514 920547560 828824380 881281374 134584283 719878026 998341103 998475075 686222127 774653012 690623909 963646933 214153200 262534395 420997052 536763663 704200388 773018148 851818375 959416951 176206809 331467108 80240501 101077086 372267344 679179172 504427753 855371578 821408936 870600859 36311991 917163976 670155171 868988296 492941118 996790699 957417590 970828310 69815712 616086407 527575130 734420159 390291890 824682380 946818229 978675092 814087338 987827717 643069045 724594021 348712920 540681004 974190475 986642015 922776270 927011434 500530695 845897133 257132211 666852652 566278824 601030961 121999033 601221223 226303512 545521285 743921298 894950200 172039130 517665716 833283029 869360881 650754132 710833534 615362884 625510307 529509258 716975005 424417763 485134268 479350590 538400763 159006467 719539941 302017488 939252851 723897531 987481889 267089705 906761713 867168285 936439911 638824898 643129285 466311716 537350146 205707247 838544524 250248366 946323028 338437632 989823055 275872091 654780127 713318500 843182613 668792624 950014244 398278369 497253678 314714742 823287313 974282948 980778779 548881063 800578686 21573808 726747295 421099874 909666176 193535545 233015509 446157242 675278951 339027755 595501062 7233456 580571494 825738230 955611932 769656491 968152057 719539069 947268591 765269946 782791627 198068572 542560783 167820016 675033856 913405572 934861667 91417138 432267010 778180537 788429642 906275873 932185915 825000745 910335385 479700544 545114488 350588745 656388947 841349129 989275529 105813075 294230372 626853142 730330023 706822658 739794515 924683474 986153646 367809585 801477119 389029337 840893731 215626605 444709538 183728004 938915141 179064173 241024322 825627842 976016739 215907548 244039558 337623950 401472920 113862294 870203473 47990962 989042806 930005571 951288314 564704273 633319386 884284175 988582201 97240551 425501615 176953714 458132742 774045465 811636519 415326798 612100928 856494022 946060289 620768830 814530044 798101087 988112665 25105171 900520491 18211962 92455998 351909884 794324634 110072598 837674042 75740224 303216534 959814387 985360770 637355237 656248285 437320986 629873054 427548387 720024198 969180690 982452986 237544649 323675433 359092444 764685844 697844347 712562086 639985218 657314203 202061988 771865396 948070975 951594606 355252842 853263101 828344205 937474057 624927254 993516806 755455006 877782885 204794134 686014758 694729623 797715957 467648559 718861546 289364239 813573109 893542787 898247695 801613342 843144916 859786055 998979778 239108228 891908065 264642910 794693813 93201357 986728412 359123464 519523992 893106384 934634878 466469105 574688432 249501515 900128233 100673281 193397059 120750236 824651288 473978478 735187707 568973742 940092888 817708449 960655584 2875162 347755347 756220397 838912242 598424088 702123279 494678102 629806481 725088463 789185891 51431611 912412534 185963734 311554980 143072866 608127208 545990139 718676102 723539914 732546501 521479675 648642205 108933630 745478232 451621324 482722505 560524930 782494896 726337699 991389668 392455817 867523474 832118452 973820652 239592206 732743848 838504026 977291707 987145165 990569702 42850529 382472836 696819142 940643490 722867725 755103518 567321311 811280485 92347426 188160483 139986547 521433551 744044959 811316136 931881450 999141949 419043830 797412384 96744386 571296260 933620111 963926430 529041832 590816106 256521857 644072433 158250481 594195066 578667284 793455790 502469785 712169156 916167754 924886752 850464261 986509582 569569891 656252679 893192900 947107982 684462463 985201613 317102057 470075071 146403971 892354721 93406922 149078358 866880205 962166987 14165878 274585949 57096338 527792047 814795368 928701128 587722346 612451089 242088218 565545634 994379450 996269678 867431163 906759495 25639753 71552220 198861709 673811563 187822584 597068617 552319045 784703216 674551787 770080467 63699386 867482211 681987110 961435013 803341562 989666723 685298510 702933357 513336534 930376494 734770442 974693351 171237270 910263609 930546448 974663028 48677888 417872378 507354268 623573125 810798890 889344785 922144449 962189177 878819301 943312915 147754548 763318154 773153690 966452982 213394200 304011995 989039447 990571454 675737142 967728172 706326667 854607530 982163969 998837205 893171096 905025216 628956597 630123527 363858151 649693478 333156760 721982659 13421101 779138153 258681819 439165901 263620302 721965861 471505769 691170510 622600169 964417280 648056449 919081968 417277737 541724315 655815271 844168489 176732799 267102440 512424235 781485247 449493026 848910318 414500753 670564300 362829755 411074554 383118039 937391267 955933900 966415741 228924771 547763030 430644566 853161779 910331841 979807652 949837383 985669619 570950024 930043410 14924697 387520058 672201512 882312552 678344826 876328872 723495592 800688004 125346770 920362540 941705184 963604536 475928659 820063837 644872248 720989318 877663030 963272930 124505951 191414876 712124698 734977498 407156585 825375879 941979075 983316997 877265693 993444439 512563370 612868362 512388488 840782666 706688416 948141858 606670751 987724980 461151831 811494233 100767130 593381881 173889381 627451596 394178915 489661356 364547453 566157188 524711541 946399450 456906879 829882750 723138503 748165676 512807557 871646145 951408025 971977757 548097362 978572576 530143950 800398666 920852029 953934711 380461463 402385854 44221986 185658936 416994490 621736132 970269407 972667934 779994807 953543206 696661518 924759400 775388406 833807632 434265158 839399666 402936228 760460930 403137315 419329828 701689533 919902069 12106878 325358141 710087332 752769606 116584788 595697046 647748184 928313794 710207812 771671385 467365021 968555937 992392101 994257967 665390625 847198865 167961689 447182103 616484788 647729532 676272914 856892029 644934295 784266912 747872434 851911679 424043101 823143189 103714728 430901584 705455178 900507788 783828033 787106077 117705400 392792761 123820293 993158668 815172505 956637302 962908893 985078727 188576788 415637427 356464845 839964861 403971041 458450369 665423647 742494011 77617393 901432091 731259945 762498616 995995390 996606529 342996826 915616680 54352526 260087313 708523283 983005658 838398320 892308345 973973789 993158330 259884802 837416091 128769981 595206046 736200145 931946033 226757321 947717275 53256669 230106736 262230952 700649699 96047549 286871174 293015476 492642386 818012318 925186802 884483323 990117429 588539957 728335869 253435043 308989015 963038717 968273610 848211645 852890627 769314393 934237265 780741230 912001906 611474527 989516456 783560267 956084978 468445928 921872433 249865233 511800112 450708871 897229408 592650420 677254689 500289861 530797890 315676691 702354272 610466530 892142588 12593427 68929036 326133520 555991657 807677022 974131083 993382352 996115982 69830741 883989953 974956116 996642308 572036051 727677201 155338598 195012123 932637366 984101440 666459606 772638620 290261866 656267228 399918274 475557319 949246495 962157349 296157051 863412163 662683209 920431406 942161558 959635370 713244295 875120065 359860986 513788368 492166364 933343664 10605548 526920775 30837581 316321298 640952520 738274569 567505833 843999204 684890743 927765039 896818535 926409358 77019325 884382141 477933302 935041050 49003334 129577633 108399240 501018956 138105497 710660510 112425255 830056587 554330964 650744512 606579392 820448520 601706800 837774296 245587616 480930694 308105269 861678332 888622605 929363881 270283395 688703043 819525598 958208970 143517981 415558991 433788403 489150543 271403093 483640637 544063127 824211964 25233242 678903676 76523756 545426500 841826181 905778593 560263444 647385049 923889194 984336065 571034818 812942809 883591991 909730123 410443904 763369159 74455603 784054058 583643515 994907570 818575980 848134833 867090617 878448415 436480404 448031238 545647732 581963150 658676687 780017593 813269371 867655401 208359289 568476469 320380584 825866840 665871163 975645719 737208090 951721613 897034627 954021923 65137626 699786834 135014810 994479144 662276631 732165937 81312169 437046017 744848349 865234181 846046236 874986495 204528172 587443933 29983677 410145033 76590264 218194234 512028517 727765788 446387274 596330109 333573853 857292183 298094582 548698002 688004850 994323254 886538688 893073306 183649319 828022163 277656288 671887753 836985478 929297874 753090437 784524763 447151235 828628162 552732449 559566884 241208446 385638804 578839075 807511259 452111236 853457710 664430633 897171176 30556960 907943932 21942807 133067235 420934022 703580375 281222540 730578473 925487757 952370316 499692658 846071796 9673337 584189201 988146746 990694889 605199690 733555099 426094062 892884156 370662706 881239728 190429367 363290414 834789988 880415186 586787282 692664747 657658948 910714994 384333597 953763354 151805825 428508759 427830959 535160833 826435462 900904742 814101650 882707043 100959212 963254437 336659447 544124605 637746725 713077914 513217776 922754843 107102534 793310222 197236430 321209569 200632047 521760501 205029160 736566484 734697978 991864033 788183178 904070950 507951456 922311251 452186430 913311500 739245774 802303034 544943279 635761885 350981466 880376852 792489832 970832861 647890760 919478320 253295234 615497525 561288574 800335481 386877836 656172966 46949149 409101858 939870074 965056255 140045464 485950353 446791845 918399351 571951093 635775444 749257266 870109508 655412019 812633585 484895847 773638639 982117353 996617987 285469756 984028387 222939506 908253676 974634154 980065442 834597611 851686632 508616094 995527122 781647774 822407396 28268951 139935802 828000901 853920188 292286717 503446469 253244517 997721375 682228879 861102659 558765838 977754580 507292611 809738036 238348629 494870050 869095461 958172283 905356589 957710814 123840173 139058323 404992389 861495353 525986656 663608658 6536503 312373615 175567060 738591568 167898260 674534999 247547726 932487501 837869627 844311219 357484852 741117027 371872242 443841488 800372144 835231176 246488090 558154716 253123940 683882974 56517677 472721337 617622626 878982165 924840520 967380571 330154254 871664590 451159001 526160430 140607520 784446946 852927173 962388425 539112430 719311772 730563767 804424186 543921860 616589873 214131870 520006355 52863091 621481902 936884205 988732022 790048736 846231107 511863373 896597117 426922961 688486456 116542652 772272646 357100027 461808563 427803422 895159667 16781507 919110456 377636892 575498819 624760167 892973167 366324671 784907984 975785587 983452411 883653903 926889878 512890547 699223186 687334017 831397968 684132535 997357899 306961419 437623441 756230842 768149603 427858350 536054289 929806842 976784126 833126387 856307461 602806466 721275451 334436041 621819234 816240231 816258878 546254144 552621022 383139587 476912280 492829261 911203829 978641964 984569190 354704492 952988820 885981552 941549501 930887618 931477929 192539716 600239648 894485022 953228885 607849710 819894162 366936223 913694483 299726512 691702006 186792177 769567420 354853690 396771801 299981169 545349890 404964963 939645609 319250705 743622319 797968387 872490672 96121061 617496587 436390239 898501485 851553159 892868850 96980084 752504716 359144223 416894224 502708565 856264440 822509019 974697315 864375772 939804832 39943405 461140126 31614611 174178261 381697681 973792177 701876627 910473843 705511914 844202189 463511045 722581860 141329027 641547284 600351431 875048902 265317273 671495823 595320117 667083623 667183343 878708320 90080017 939699791 770760351 926882784 781026015 893578972 92073481 264926577 570702011 576159723 466092740 516920702 80046583 501499228 591684240 712307473 82517485 817996828 714749470 888186025 968488641 974012990 979661443 981078644 71361603 811783240 964774841 968175970 144123401 545308453 393155082 905453943 731359070 945955776 211739370 918489718 105282673 691013410 373765631 794930707 649997355 869033520 498744929 581441820 186493501 913376402 401740948 512618161 936352257 956811362 686332261 953425262 299867506 772519089 185092850 828182734 74563075 558184242 799179494 820966217 409077351 801836011 293855045 743758227 569196251 935141282 383386882 805614704 411535103 922429655 930898452 938894512 263801982 600131957 326889181 557312276 420265156 972997103 534510101 843618416 203629613 567415939 375282078 770975622 311481183 410396902 741219961 954427699 805289561 890202964 260738234 968264469 882477664 966993792 722731 828915640 306515204 993975600 923982050 934439638 346905501 685595225 628805822 968001956 449854506 748342232 831482256 946889307 550129272 617548069 263391621 763910787 212972514 522973750 784829966 979989969 985836644 990035310 319267403 675364197 312200390 580615997 474484758 589272601 682011420 946355843 268244448 900486129 151145936 314247801 26451061 112874099 93859042 414795402 698525346 760602090 579523743 960414976 357029837 778474552 662989503 866843826 223795486 634712893 783364772 989188119 22727869 851199658 346661244 779320062 228496284 726836996 868737472 924153368 99377761 725011048 993792477 995259512 862315719 910266173 317500207 865153745 830306374 894520173 259339309 691568091 591522982 806222477 460704042 475022054 133968231 477765043 611375587 864645521 867380568 872555875 362486080 742814014 344719224 686412184 131370448 962311061 978636178 996408916 61893916 860883017 598301825 755071431 848571242 948395799 404903389 952935947 73324270 615569348 130901805 402387790 858861428 931313323 842555903 962779184 793239873 812239563 101531158 213361442 895729484 941428320 28463045 90150000 713450956 997678732 540764117 989356998 204459191 880710070 925574598 942310679 588572565 849720189 368047440 996671245 77728277 863017017 740580152 896626794 186637332 335510996 378194647 457823786 985070841 996617062 472091131 663149862 413681565 515492649 937636000 987696478 523515103 874206181 450395441 670886109 402889137 848556713 564700904 906865957 17521574 362090710 264658134 463441562 996649334 997489251 830317105 934069537 558930715 594734392 605393443 934538485 509055337 687485232 591816835 981564195 729301651 964376536 916157587 997401801 170351668 215505577 273688835 514460773 716848593 848522315 977399610 982387712 567787942 907836819 546821203 588423529 762178742 774744867 401455245 959776593 876136307 876707480 471274591 916561074 520600094 737185060 378996209 421211174 96421656 803011855 754084396 952575720 886502777 945705181 84323055 681099698 639931298 940356460 537849280 974612485 280616353 306202664 557136237 772991181 812230771 972108418 845067251 893294705 173082249 661936511 804369359 818742218 906618802 992554895 313040318 723771030 968486807 986463554 702400485 976785029 784141333 826267232 213005919 728386184 675080170 763533994 718892175 742209499 526656619 895200358 530014599 905088587 174020188 541202106 167639797 666145721 401392964 541247292 301529218 967383380 835302439 946626451 710082587 800214204 724620872 816446634 255255421 621461605 694607151 746774751 29051868 974840591 233878262 793465357 684121439 862883861 991127544 993501295 384927018 855585853 413013535 703884090 775928943 817696512 352482064 401846451 16415018 606959382 448140949 501493721 221347227 812190550 836320397 954710013 371994049 750096731 892340970 939189010 412283295 619509137 510690343 670812982 324892662 583662258 234128274 539811900 806705170 829303300 74015210 332146970 21722797 99933830 435336266 702476342 85928197 220424067 609922491 938836591 723921400 873619646 871824889 986294558 46197788 753744898 130473423 468411801 20190994 412451272 42182650 427629591 258033565 795950909 48293311 784004198 517351831 932890982 62210162 74777545 893731042 934148335 89799394 828080778 729006847 811754456 632210710 708434969 993438328 997677910 343636247 399905820 505651192 695342228 183331670 271355315 849926533 981535542 330357283 862129069 372758210 728444035 85275145 636588757 467579381 728369117 944462841 999337021 490504066 659553421 611214443 704516399 720522766 853662776 881687320 983885202 857539573 885202742 573883392 839725119 947735871 967550450 463093881 782283826 128862170 721514632 666678789 912909827 936747757 961544006 462595048 463168635 204909479 440653461 6349089 551184180 511053522 908244937 510688543 724453745 372200118 769418263 140466467 444817815 494163690 545841875 605418662 896088778 411761466 473387671 592601327 917873965 764520504 994768285 707552147 974215131 971005821 979569447 160559098 889917660 773763365 950497320 916138925 983699400 275108200 304911396 302823390 803994176 783134722 984164908 119528783 784138512 309634808 504236462 271733795 472426593 972498208 973875136 315781148 409606162 851636793 991887267 853311296 870752940 52215605 217996618 510647877 735632501 610502948 845008379 151108778 913245129 888000317 993451665 521791222 612248769 747545454 763382740 392584789 935995890 324126825 798487997 816198920 963225245 148426575 359911788 285821059 302088212 985824812 997417949 495375651 658213274 648405351 651158395 616682102 932809477 519518825 909556904 275744710 944317484 276883987 383560612 320152049 729689016 262273867 756196653 268271560 712255685 506754671 940390266 500779838 736952163 263102967 645104973 97289058 417933363 574701231 759651271 345450084 814542013 797015477 952677061 24948328 554612233 7462707 318630497 484838387 557086124 353552347 960018281 106048264 983567198 515840719 601079328 787774582 926256605 9303217 485409141 399809145 461664691 213287621 539065057 139489095 628818068 673340937 764819580 994578660 997899379 716512027 820647330 139985513 388379307 157450815 810377411 717159752 822842345 356993109 856867537 462825432 888844479 892225364 993102344 952470835 972776569 3953155 876375269 951856581 964478821 380456203 720706438 615667237 904002963 997320052 997417319 638866880 739903274 747676779 877694450 845341970 945099105 335671291 986786356 793094745 818664159 141418830 775282004 705665211 928137852 486682552 971914462 934592259 946427095 823012108 974856903 277301375 855511406 440893321 889349269 629205442 920786719 702292388 791017800 199537022 778819502 280369272 904828702 283440591 844301858 164447459 310420505 483584761 594101465 248099309 952101071 561086594 729968521 37099094 819858595 467300767 608312793 315672620 939395303 605724977 842887620 236595745 995406623 890371668 959875979 68910693 995071538 36973856 515438759 700427192 716673338 840544281 926120390 964187288 990423423 967174868 970608575 7816252 648617599 282349936 573247712 163723525 399619610 411220136 644411298 943194716 955298179 62272042 607396459 901117359 922245691 638692901 657500263 441556937 939462750 186501399 810281626 558548158 832529684 711024732 831745574 718623067 922799539 871843508 972272929 500663407 947291500 378834462 812705940 234929406 461562121 26613982 76098910 530735306 990804744 553785614 921024104 961608478 963764365 499455070 940250156 732404169 867253160 800766680 992553767 895838456 955978634 724373043 888823621 422031174 998076028 530027668 707207688 800264959 853773917 681402886 977963105 394404925 504861862 810525165 817887506 92423224 740578355 564545892 659481234 509954087 630439342 124407955 350475792 189501950 721222354 533986714 772227809 517944870 990109667 371335726 566420451 891895261 927424237 610829612 896280795 68655225 576459144 47832740 81064366 74819100 634567846 955421354 957583256 799096079 957218300 636393252 662530482 997780943 997931026 159146327 281627682 855931385 991497575 986670314 989395406 126271307 153206750 353396559 820320721 416472237 737265849 912094898 931349303 618985259 853392476 88434688 718217079 34026024 188045059 525720926 859867663 613684052 793877274 965203875 976581685 821478188 906053924 282639969 544784518 62817897 966620131 856112848 860043158 440469263 478980801 179515461 879659310 225252726 888097207 510865562 762891337 83738710 616853341 571367001 938048225 790222399 813899374 812175756 928942763 55421786 411863607 92432000 225959700 76816512 85875703 535404106 606692104 276714783 886637944 671825382 918958801 841848364 933193325 91629244 429791903 313091665 680819081 597566456 622843411 752848554 847956368 236065966 348228273 530770270 799619139 425802951 910665544 576379407 883548176 69727095 609943698 104612832 926715954 134946710 542124319 648916473 697437422 599277744 674502486 724604751 873852027 992293327 993388728 620488080 709076101 584108964 758402515 617805164 864585096 732658435 943226271 542775726 589407726 104945959 555504499 399496049 860558587 25880465 678240496 221948571 619944392 826544191 911042537 697974007 716582142 978347469 996247240 482049140 978529325 272473544 520868094 77396769 768825471 641552971 777009842 978250039 984410688 602071458 733642589 517859129 571616907 32685506 844483580 467371196 915902529 884048469 941684862 871069980 895887505 217033616 588678899 796230706 840723841 248898635 797522419 633757898 909388248 941614991 993201729 681801243 939118284 473999186 534625746 269363956 859305203 11783330 788234727 884918299 902014027 874923622 895414836 588398177 811208171 637839986 931605463 556319267 869262069 357203729 979851476 642758693 841934917 543043948 911068597 307256455 408655358 480010359 494220278 543252187 620412526 476093603 922554135 230546104 403507998 206890474 254537893 197405421 354136486 259885670 912145080 967754637 971126497 769884312 852019688 954292316 995890596 583864059 781571368 976443231 996947226 799969146 844118317 862016440 955858582 84031342 575767506 63804741 137295644 328803418 489203525 679795469 697350172 826352579 906543795 195696930 579053377 151481897 421438640 484019739 675482702 398465861 777793855 986263342 999194202 945888944 974180824 158267170 414789863 71301038 888914059 512495956 729687157 817941282 888429758 336200467 432447273 188789993 404370213 186643166 993266695 223086334 341662735 93462451 703092626 109539632 564944412 623845435 652071989 971713852 989139860 359615158 600043255 312105569 444797857 236468663 650953692 916201649 916631155 504917363 559686018 30406208 589274593 732079663 944105038 559717480 754344505 329413706 637924653 121474568 148966203 328839518 935311574 560797705 998802095 571612598 650476913 763108996 836618094 671573178 808123337 267679940 496996590 15588680 19324541 216505699 606277467 547579869 942662796 912620442 955474625 324864496 767837192 576770420 601616115 644539206 966960590 344075700 431277685 198933141 578963052 330115128 874947780 837932808 934807238 970173380 993077355 20305432 219242466 478000722 869453871 492144643 790455921 83745092 466243942 234393871 906854636 199216572 288427326 918572024 962804385 249196250 749535215 918309570 992854271 337542585 798382922 88486100 809942971 211863557 331290494 62530779 467700299 129570219 852827356 425493794 467296035 287151849 399401263 648980713 926566747 195567973 764244112 508904241 520277867 50424012 977286235 401539125 564254722 860642976 971543565 355743871 741997555 898569672 921128803 391805888 458528372 256581796 746053227 574752509 705554712 564785004 973752383 807963708 950923130 340692369 525836576 878834885 894407864 937761334 960551445 695838785 931861721 647974855 791522745 950013131 997313927 941502316 995365887 832436437 976801296 27313385 485934101 427179687 933486006 146841825 225340840 799386928 817099393 60891849 845412948 479057458 981820034 9980154 319518502 122251867 453992927 756773335 809163791 311724954 882111231 986884556 988877618 75640555 437150623 736546871 786519532 918775534 990445015 174147091 367605337 474171256 712267747 733831254 797178116 980218325 997336236 313914310 528160843 316748936 874321496 938398534 942713699 463887484 857165522 422993801 692867379 252847827 520306050 508149574 894430175 655120091 894779891 113719627 924769817 871146030 960575321 75207461 994287438 835421781 859746244 992382627 998248893 383519495 835941635 170658184 378390565 69210365 609577789 274503560 377792406 885212061 928513102 628228339 677059884 916146291 997247473 705938528 963840726 897917114 923910041 839866315 873150368 323531628 430357370 337458178 742537365 545157439 695571250 132870546 840353612 506033764 640995564 954778688 976728240 754987415 889963869 692826839 958140081 105792704 776043840 698669430 804217711 940098460 968880417 952725711 971609123 361661935 402440761 534036663 582696344 244184573 766652230 821205368 839411184 882957262 945987243 696393817 926982724 311736567 748834981 966219189 981494789 635467452 657491229 514276736 658739311 633443023 994461111 117882052 651017338 885710549 950456013 704238589 723146307 186791841 905927265 1390397 106199137 724100021 805767795 320636242 420249017 663635280 918100810 618389125 887064082 720991488 792634987 726834614 940940085 585517620 626101349 723399952 751655919 505494468 928550749 381712033 640768546 987250126 995964099 854971970 976208928 259277763 334614781 959976960 989634549 760120971 868115798 400930592 434965300 610054219 952302427 303891289 455235318 191949024 869689958 109423818 728231502 584427677 598344083 517232472 599651416 971290089 971307608 81993983 522035451 525231991 716465384 209970939 832985526 628745685 813728573 159319139 357538699 3354150 666382988 884525218 892940101 17132939 448615343 223951296 335324569 674741409 709873378 279565597 534801639 962914099 970882847 743434471 963258892 400254396 500713423 861648078 954845131 176872601 305446415 518784340 866310639 843042578 985250746 808991479 831915046 603822493 754933760 843292224 916591268 41781127 775374021 785272566 946260991 543486102 719314591 705281113 947006689 695729651 767652806 591324877 957919042 471881513 923028958 759876134 856716767 920130815 965822345 831754623 875969718 646630872 681422369 622114318 699916644 330197489 502347393 643314305 866183782 852313982 921283277 718904060 952943944 383033606 596374031 825721207 921494972 977152360 988055176 604196790 752020254 453796909 617516938 762694607 956656718 58835904 179079288 828687966 851001185 623967408 925274163 497440579 585879467 294459610 904022923 327744007 335989540 503120462 998606204 174077781 451513634 687804253 700434177 73773273 432601188 104239785 783220399 545316941 879359703 227378115 719010896 32675000 200661759 841602094 962383194 905212035 941137091 455719401 820492793 556312014 681207696 917659677 957078722 155804897 901310468 856285049 924892208 584443360 584675960 913556947 940176793 495939982 968112613 178856783 933117083 544312968 701862083 102198983 385323477 133315611 781664399 808099917 950220778 930967997 939682976 816281982 870921446 827155890 955943049 687337432 736998262 766043906 949146482 100219843 149647579 964171201 975585737 661508819 919145208 727216906 886468706 300818206 824092641 721451667 838443698 71473500 984183881 147030168 953065490 466934674 831643171 362569841 740294329 430073017 897939293 355479422 476195767 73749365 315528407 847272674 996819631 717874204 887121290 504000938 751870813 109989681 544480826 119077703 405866840 963961345 993690045 203148769 357916400 394036943 894969910 872137385 978224250 558920417 844193728 925483749 962847689 286838905 947458437 905261160 986395207 277799994 445807785 167296953 877596660 93046238 538204841 984368185 988892282 677867755 809041221 518272644 880743424 170030082 494888991 697150504 796819807 774053907 897611050 643707952 805143979 32311428 439465559 774933763 868326864 410760305 646653961 450212972 984473546 141672075 774420631 302601418 903495561 733116460 955393609 514886864 955421773 75509201 972796959 591008846 752568727 77112476 717810684 110924067 909540503 49085979 614551946 996462929 999242286 618834430 959183156 315861807 795378148 605698619 982100115 185002060 741193035 725042648 762949977 517925080 895115925 994836881 996352616 363637817 420438740 529542148 982476850 363177403 825001401 494548919 810547238 841235002 932213461 247041307 510026806 419136546 524515209 194285542 407711520 296720406 461506158 597325794 741835173 914462884 955253208 471222137 904761058 808897519 828812670 216501343 565807050 7814828 261135936 485521373 838611881 309806479 442590233 253964448 696283500 182137654 678243837 298457884 385235616 724263518 739889654 845702393 901599207 86605520 853298286 800108434 839792038 692532072 864123611 80409969 558525985 701652105 778627726 713268781 993835539 147174165 332456905 382186117 674473325 54058285 867654681 319973527 830936569 212354515 257424336 893703628 904666244 367409117 665077233 510670786 741690969 462327946 541341514 99370296 402649422 69340576 562571974 777983627 794411733 680889353 857366159 875230139 898925672 213769182 243476762 72223311 322071130 256257438 667196875 893559734 920083808 634256924 680650585 252253503 410806802 755102956 879328084 291233184 401496311 255553527 906833815 310538170 668281843 7127598 865208866 955666234 970629639 255214013 272016904 983585051 995660347 105300213 705742311 707228263 988356249 46736812 974552798 298799873 554447748 413100641 850567526 396255503 855256529 5529101 979585687 900119482 998402733 732734616 992254830 495162942 662845502 681382516 880985749 669285159 758511950 303354491 403201553 854966669 877544459 668408389 714614279 642707585 737834129 813544999 873096130 72848091 261735076 224807691 471599994 537963992 878632754 813504128 890077476 362467964 399202417 588925149 900842453 561922093 605244243 57919126 502765249 648417380 800754365 10568119 773708941 196907276 348030305 205118845 216911923 315525280 831616117 745746818 863335423 37959017 351613867 126049651 828443607 21787807 642415418 37186285 972705804 493531904 853611307 142410948 183852685 945851046 976369128 953568227 953970705 834461700 912844449 136175369 963327516 905086379 969808790 244165317 825982549 84384198 794450381 3432068 256753105 305500746 359595626 421882451 967404234 580503813 904357941 297018335 820780848 719897826 988330668 168675892 449450488 910589864 998681735 547402324 853181863 893846832 989248157 599176634 706125327 110463687 373243772 200259096 437886292 967699290 987193380 491609924 796366348 677218671 897954489 624541059 884750261 423278929 858779572 187583448 477956228 381340356 540435806 587018752 862528110 23416419 200108682 266901891 830468084 943802238 956119067 334756548 845069734 109996428 633320965 750135026 932508075 366877287 476507443 285385899 914693802 578994147 584294914 321636575 907548913 260374788 950821849 293581148 392049339 951642731 992559223 331227210 395728838 936481711 996236482 830816232 878324484 787656974 901205204 660333279 996743394 661685799 857185013 984417866 995302083 380028082 560211480 229552693 558096327 998133219 998719615 96277805 526221539 394433375 930395933 768710806 832135319 950838035 971453387 182899617 248169539 961911560 964231726 56454725 489786592 33743730 899829951 63869637 370028573 638622077 847909370 966966154 972342745 649549434 958513435 22332672 521331753 632501262 879116796 495011320 546198605 237261814 811126559 860549604 865751247 530460262 760242204 11305933 519604543 924662425 939330806 218801657 796408051 547133853 954477214 803101585 889555382 438677472 664512455 831790971 863182945 898505264 984598779 969610707 997862080 214142985 262902640 169740019 963056934 127881391 276171548 164425162 931495084 861377890 914329734 835450378 964007138 206169138 897583134 691547586 979080528 524581932 647731456 864061588 992672260 232516567 857682266 943583986 963018927 241982490 836377405 288518873 392085241 744688313 921934243 422270400 651632086 31549917 970578594 149185868 760207731 462336448 702895010 429909701 435769779 883012926 902527888 811127380 815534086 310265579 642249042 682388066 945659932 126981081 922310183 294655811 399441829 328644263 824945062 397336633 718273168 700043070 829130632 55299634 330417261 32587844 231123145 783711037 824368806 175517247 890285064 781712950 789770183 957359960 967112064 442663367 979243445 596839089 800510997 893195568 973677169 500893837 571738676 388254585 487263452 53218819 473387000 476740969 932564220 74522476 186776193 218804447 441124212 56035337 847218114 669447507 729836492 311839125 840270378 826769801 907178926 654794741 788195344 789174879 833976892 979154570 998452228 982404183 992140079 988658689 996763803 662218308 998951117 450753052 719809821 133052244 720887025 183010304 557605071 134901285 316470381 224473138 871679247 342453000 366609755 274636308 869653837 984369990 998366978 367791685 443478729 911849647 932254401 823230001 957344271 292386140 313003172 564557489 892395985 866123452 878785906 203223842 676067465 199496089 654417751 806466664 819564659 888203501 906008942 978538092 997858213 6539130 338704834 200128219 726650664 396487457 968445902 658914949 735120561 651781959 652441921 599962850 895339641 988704320 998255602 980747288 983400451 392572740 661194789 791372675 980753047 515615075 607776182 92622594 370752802 737704932 985913005 55772360 536973854 628459537 786702877 649566317 801945393 688985646 852974399 304338502 416376979 667302261 985430223 718064733 973004847 786347565 889308761 210095700 335189857 999043142 999220849 91016358 501475951 509393591 984529818 721293560 843266085 378163771 838995665 650692867 753638366 129046237 362540413 124552335 482498631 547470269 692858621 318071917 389426143 135664166 833017387 457781661 467029840 809200192 822021682 725094309 792286126 5736933 400532797 383755187 594356943 682866410 740760772 212109700 345664396 832687803 935428904 541910926 607388463 735265751 832999204 703650233 956339888 126463407 772369490 241726788 662018694 211170053 474033721 115541254 126797872 34882208 898361546 297849839 378924918 974818869 977574011 690392073 879195036 340034723 832268511 878711309 930177497 382925968 538187679 99248179 142310675 234842809 528402470 669504040 998572893 345287677 783206187 389472739 776425180 995035076 996924280 326784826 715892163 94256907 459095873 948318988 957197732 975151662 986499409 182255622 691831557 388216350 554311947 848588182 850406929 610395208 786431034 819738343 900149266 295906593 559517357 192692168 555423227 97844742 751875568 857322077 993843937 140651802 992932785 818583042 829960812 14471793 83855528 528517076 789844268 582326693 868756815 790930413 964050251 73145898 808992331 553689209 599856811 720734190 893601357 664675390 672250713 687877982 777749518 303492573 949934433 181662967 383634648 94715602 385510349 124563713 520571076 241052868 464078837 349213247 922683100 631859100 648709992 394120806 791860982 291269921 442801083 502138718 914650774 614333782 908512665 377753417 909667237 546603319 914863421 18752431 838655118 151348238 936004219 505857702 839172371 553835762 813825103 130623893 841944028 164181448 909510611 318101414 946044251 309758657 995341700 707285394 806457870 440178538 693785689 867810661 878203589 397269339 900853573 817807815 884416123 858282231 932818123 39831127 748563822 447655822 863046466 697638029 758044433 103948176 158170625 963978918 978440513 752492900 858660833 518806653 562006802 334081817 848726797 29348558 769287479 667921574 785722639 575613301 584036246 213331983 219399187 874524865 922250590 839117999 938563627 458040838 876437579 548278666 955102558 553181262 928507893 662815096 826806041 663335031 833896057 911012805 997571520 496854035 814162219 252653621 515315077 322495853 388982778 491507172 579637430 846454971 883247128 153687982 516489892 934336840 938153846 781234591 786804264 134554484 652114432 839781402 926851963 788674400 837022418 302777466 305830279 541539642 614272244 955054782 965908142 145360712 745476920 49267962 207229000 337730316 867953072 831473660 912840144 170089462 363946768 740190748 814122143 345282810 707352176 69041520 601674274 583359440 904591991 125879062 756553493 431282014 948652277 579957566 993736340 727432655 952293056 389017844 699673976 703757653 782778192 315793586 357674670 915501682 987668486 78043441 972160091 578034938 751584180 771060631 851171793 281132564 807062478 275751739 619282341 924986534 993733344 837079578 915207008 462987243 838849141 178133112 822991621 818040080 841547960 19453110 496970656 693093888 984013232 988036955 991954858 197315389 218980792 393613750 578523287 819193042 946183192 513384797 743264292 536614473 558427239 780316341 798685387 608744306 823691547 519836806 533931387 372009210 653289092 49078168 223427053 221409251 608091872 855880627 880297879 16128476 546147670 244562819 435149129 877589522 888038869 425134736 977401243 215667912 832788208 442543125 756532360 518525779 899942901 424423396 430823798 905919056 928490294 764765720 928468918 371257194 838447937 687879421 978421952 971716180 973324010 682830881 823637551 427563684 935632528 36585429 618370162 3710720 672600288 650220958 875338209 303163635 307069607 87259558 523426167 422853675 742005778 707442939 979267317 758343995 890906933 563116654 582405945 668053728 739980769 604917679 894735878 191802013 501824003 675040132 799325679 721889209 769581036 936840133 993247347 827632704 930182150 301458761 830966010 910012371 924726371 720536521 891127839 740458057 991451404 892308562 987387074 269170300 740970291 528029228 960590207 514569162 811502709 83211163 491294281 279361885 986116778 950935969 976062967 464939643 992649836 306314984 446877731 515001811 903974355 248573079 316441073 417976159 660596846 924353211 969316798 352766602 746422666 18105287 960213820 709430920 893267280 180841239 315092844 202236488 779673158 914524015 957370560 382707852 962837501 227917049 574257690 62209063 264003799 984868611 988545668 251905810 517517528 50198675 919182837 50225582 257882215 45725637 48796761 146876820 355988976 174532456 891401822 410528509 483098681 59873614 198179528 524062156 581524298 775114284 865949873 163725288 717988566 820753758 978369908 329893516 384927925 992918803 994032030 736985181 963384360 410633561 426317291 164882930 230070183 877294235 985136770 140106268 564181317 359798319 551973629 536951458 746456234 402605129 685633733 18083843 623938043 188796879 696407882 584329654 796835208 631073544 958948054 36597902 661323672 647967003 886634902 508895968 672796079 293442946 849629552 248147079 491791854 194408903 209668773 774195123 779207549 891247549 997552771 124105503 204150544 235652608 701581498 212490622 238123513 894883258 914700616 749986117 770516283 651978453 968416352 99178780 299034917 188664567 379000738 888998817 936423254 527412281 815485978 762268094 922054561 955227401 993480555 707046715 801929728 706516857 813379942 569610107 812420837 356455603 586966199 667930108 817276171 431557037 958528451 720908639 820767480 290641018 960531567 282174461 613114253 419124694 715729265 623998420 930826242 159001981 850310830 166152768 651467472 887280446 905053903 756295904 863763414 90433628 430724170 633447408 700986385 823735404 856353080 762723006 980984190 986988812 991356849 511752213 776409916 242125925 991859792 156142933 349603702 383743792 423374681 227287493 322540168 673001849 766552588 898181601 913226852 15945007 303334425 43181033 262730710 913325757 928253358 972414089 989069061 354905138 577160078 958617282 972015637 435942455 514661745 827282611 898660653 500320138 771717757 960842783 969230899 852872066 938174592 532853665 706824643 843104416 878565274 352481023 996220361 46798384 320957621 960589577 994163961 828507868 849361339 472586599 973821498 147661370 924312827 511619770 650634750 188989141 341836545 305673329 721425174 735699346 755301432 306812681 419778527 473144091 571991169 508673039 976276579 51887446 222457672 808235328 881492234 693364634 705911645 879992631 981921929 282342683 443101316 833145700 967616238 443824428 610701936 265655773 825259080 976553777 995768113 474326149 863444167 354825606 755805497 109831525 438164896 525599227 530400839 474178894 604042545 46556163 807779616 532161697 935027271 659081174 854737084 220060601 411667258 563312961 957750457 594306527 869940452 295962843 605802854 368310462 398653133 690918202 892237591 978038097 982097183 95377536 831561829 442907259 910956576 842143968 973088685 952689250 993050514 972770145 993151997 119480866 942588290 519027888 966476008 98494846 524189224 17628509 938077846 390184245 923458394 553697231 836843165 603084350 623871980 14724739 291701786 218285505 601013816 147090728 471160561 655745178 788902569 493403902 807025341 241124044 506781642 549242719 765404698 305344186 758322644 331080078 583186388 822980418 938957071 173752652 311070741 953470951 957212270 695691812 965162359 206401649 234257012 918707334 937023616 811878197 846076344 883355289 993577775 766561181 877559315 746298544 780796339 42020120 526995806 446719898 463790586 729788185 823917805 15935960 668467899 24218975 828903104 649230063 802172680 370483614 584120239 214078442 940766612 337034544 993150030 694856778 913357529 940984057 989680932 191500912 479463418 762540023 845796532 824914957 921050355 982728405 998171133 695704495 953770447 171987189 323818590 666498605 854237719 574133759 696038179 18146829 914012979 751247299 812772316 723461243 928439858 455982316 767120327 358879322 687330371 418865856 844410676 724785948 792069385 673597739 791716564 360848800 818667196 262787021 449225641 701607029 894295982 492672845 628561268 778102997 959436730 398070384 415177844 816359670 961220234 572428046 604464826 998696521 999205463 566591829 641649497 261792479 756161102 96196152 262012093 703810777 841421343 197477280 611124408 740517532 999170857 280594576 312819519 302413071 997808755 976562658 991660361 840095147 889289870 869755274 973455644 521281868 726672272 832163540 864156341 598263789 754207076 445154712 458272880 576588645 890320477 304461090 783353389 873022070 901922287 399971147 797810239 630115492 769497513 139876938 151046633 599286566 618518292 58918583 250988843 862672111 900855841 178950645 902005584 270860818 772474682 448184639 859908521 474547899 840873345 321168309 912557804 672377708 818474383 136826606 665681109 445963245 908892588 80959691 956804841 183403883 559546762 462650659 974179871 362512334 611567178 430242924 823009576 238299031 559630881 263742520 573135391 24874552 880604961 579012750 659924230 522291901 595588241 248824804 488997207 575727487 609762202 750119266 788267097 82582484 971667112 890138920 934670048 869471101 877001310 575885787 681726501 590220616 838896387 718485802 968715427 935980885 953647688 205061783 409130291 993450197 993626791 731149002 911525571 788318885 824472830 407240495 441748656 35051778 835525818 320418953 893058594 547923423 849841636 826224079 908212576 928320312 945372294 217975267 794698571 544946724 882217306 546239013 575391919 582467792 829473760 391103491 614193337 254744287 483640283 158943095 921031482 324799508 863540677 142696797 349746610 944054317 993221433 808555425 917575220 383156345 447170665 511846105 733650782 155456170 798829284 112461513 404701223 922352663 966789860 514382451 632671263 377947827 424796221 99228979 921981815 262304924 695769993 365699625 499497983 815951160 921118452 918796571 984936681 266220000 776361293 871513847 901708903 927567817 993454635 342778188 776373698 290894458 831191569 192138634 249388476 771248514 938033685 78950489 921783077 970067815 994111253 298940851 489569896 385436366 560596595 104997997 913536799 760334646 951328339 193047120 897058935 384657169 516819228 81861701 206954108 867843475 966037458 200494694 803524370 162207653 829628652 86667660 948132166 725383087 989117815 403493218 664188553 743751674 789492568 974578359 985523135 769485928 841257481 781558263 947849778 989851475 996005819 27296191 89870298 58565562 780421944 372664171 610024804 986799544 999346894 397420100 444051523 4689889 551453765 418983775 668513789 446699949 537742784 188328851 788615843 531009916 789956253 12943969 45938728 659316825 796802411 413525673 788231852 525517157 714261163 677654832 867305118 310541191 382081216 213774524 447374123 443954848 711993231 66883868 609605471 4428571 14694046 186063201 840597251 408593136 961335061 518983050 560776614 225789391 340529772 607287196 954774565 944360967 973767615 372617842 407325287 694030804 876018466 449136722 582667173 1429092 533354344 759954440 901091206 863689514 889568532 248946394 327726486 470624161 933969892 64052384 704127652 516259684 615873667 159762543 225549442 793597708 803901664 643419346 731106517 48399960 906217123 513375137 635972921 589413872 998454811 100028274 302617790 453619083 478542051 981189925 992675974 41574670 870934181 829389222 859936989 443757058 452433692 786358234 797208845 903110579 944191204 73758747 745592203 937583043 977296775 617691137 959912880 272667748 630180248 521337945 590958965 524888024 664612222 387412452 435197570 321284549 559320631 674440367 708936369 766506337 885817312 292867778 595216661 75213645 80908527 232116392 794941006 494206767 744285061 663349225 989108885 764847799 783358459 927978604 944341386 283952475 989743500 690703307 701458257 797758932 888626931 983192367 984835837 355169704 570899167 457577888 926008161 544101628 981083575 862451508 968958733 645126318 666158536 199475747 711505855 169615609 265883584 382773851 592780237 971030832 996200398 318735914 781774392 648022847 750070948 951809682 965378397 600511958 980328221 506156752 789542730 219806106 513398559 583501868 826749901 386554959 977797049 270727726 766674555 17062270 634701651 290917181 549076098 871435603 879753297 662464125 983782769 641137570 886925765 288348850 707512577 164603315 436035226 503039163 855753284 939047984 983727569 153329203 583330605 168600711 494224774 536794650 748901691 519209860 611937044 612711966 861443104 600989347 860606036 358843308 933572866 101674632 375137135 74006794 238296517 229214918 378555973 374132262 856296295 73251790 792492557 835106639 939372666 567354169 740122715 577365235 699750824 384957598 833454876 284548356 344606945 56531002 113359278 187520670 949027996 238903647 810037347 92126541 658503494 462309414 480441075 282207424 442302922 90216759 635181100 83054438 261836105 490665183 548032408 919992479 927901724 407326138 653741103 82919672 144742404 52140548 658218980 736058447 973633405 422217837 688299628 245577477 395070849 500145029 726600579 566629881 771126398 541387468 872059574 585946972 799728671 186732280 434318450 263955249 449457294 571672933 600020542 157809187 305223230 838639057 904640719 423144445 831745368 88203200 242012460 11981315 889130855 374888564 649802348 815521534 842130440 882321363 904915900 660150093 767918448 796574452 876085663 922650093 927346717 676968582 965597848 13718350 292132734 863551434 923202195 216167689 934349980 124411142 295412963 380594372 936558682 982036504 992651723 514531259 888962611 850678236 945100088 152488796 867496540 470093884 897306034 30282486 430847574 871715687 965857979 32643952 427717907 543114199 632352484 900011323 984591958 42646018 183691671 767655147 842544565 202859927 386495026 706694844 898855594 252680829 708212353 799012327 877796944 78409112 871685053 639909213 705937350 653235524 804267210 977069588 981957557 182390967 641296448 212519453 306750452 418660417 587030498 264948883 590879202 335589600 585183073 489200921 972679314 501079048 959589711 606152326 695444077 65443798 165869355 854713505 995543104 768695435 836040201 445494135 488951493 812651142 919625844 901096972 932057317 188499948 383189202 830013509 862035731 460382612 683005314 224591104 685047795 723510655 870776529 683414960 699419518 105903262 384631446 172166758 795892456 685633103 941649850 157772778 854800624 387910568 497443130 455627187 842927964 992574611 995731652 420559764 651681485 403719427 536931925 929879805 951651986 293263855 306378914 847687238 929217757 109725211 619478203 169741695 370095900 550405346 979068006 574500914 609384543 249454337 673460870 448808648 637635802 618599912 846369450 158484171 674181297 17275161 731319972 549640072 674421761 49396783 111237055 783847350 883660741 36331411 306911085 352273178 847050381 349678695 433049642 947092268 957538410 161615474 714677940 313636230 776328119 955458338 995364703 478591631 779176147 288417389 328078323 601805158 959401501 310813704 801964134 256362427 277591549 724667229 748012745 21834277 160536640 388809605 442993591 518660245 887885966 940875847 973606654 91699562 320330574 125536138 470314596 372464423 951888111 872561533 972202326 120748287 636309025 777597882 934902061 252228825 853592902 905019342 970435115 492109496 633880371 862493908 992999093 910744439 948911748 688865886 788508317 985867780 997854697 135375727 492755328 138993317 389106103 986950140 997831787 831863158 908265197 207902813 312042525 605971863 791931068 466653039 783148874 687829026 954624448 424817064 738682137 734764009 835787361 933592006 938267092 966163203 966169751 446837746 616713583 272076062 840209200 985764386 998056686 499730707 662747330 952613458 970974214 157024195 557337583 634815185 811803608 293166493 608275481 448951152 955076109 223918094 440943737 637216688 832517444 984904206 989809367 570746059 882327667 675889679 916295698 377923284 433757502 270989091 949344795 199482675 658514911 831617706 842733268 708622875 813600533 903952463 908893564 233520594 779132841 829478677 843351941 256828861 505388101 653355161 828159802 401921316 914349104 517667006 883679719 852337339 973213955 667821578 933466589 696120154 953890235 220181272 608339776 425901847 819808662 618343099 722004353 736839404 943428456 672207991 779694529 880615799 932444280 211613457 369929026 537453846 889459191 529780362 613825773 97791436 796842731 446147385 827107400 659423596 721258563 709244544 741292709 133006880 538285914 278527527 624067629 723253171 909578432 702913339 940228926 498681956 596189367 725963683 996124999 479765339 836947288 870230762 945663195 885929283 953427276 809674318 955480025 654595381 805616327 40567815 293453113 512874000 879549016 389482363 409254849 505576553 869864260 454231693 623014832 769150615 903821693 212948783 364193661 154699184 169969798 682757867 872271511 374446936 456115623 137709223 266368057 128783136 220917162 345118960 799617324 306821952 367384103 885102886 932842195 770679307 934521738 805070068 885898764 201712119 783505524 898664125 994813373 24689913 349389645 922985377 930789775 697210986 994765620 236881216 390056002 285204092 811158910 796265053 997006681 649368241 911799243 245664649 653672348 87621984 657870678 711949687 806719225 549898731 789140526 760578228 956815835 383428900 676529936 858496830 885541643 459674740 755807211 23044160 611054734 309829545 351319890 847256726 962632436 371706024 914317666 572760037 809468811 165443667 374084681 614884759 808199791 629853252 993145667 781541710 842090987 342277790 701503038 943015574 992201509 863558946 897527234 371787716 683202679 481327308 913161270 501023127 860321019 362411771 870236071 894106083 923832165 608262927 816827221 563829531 937280184 180542969 856800280 970083967 991688729 748703979 759565273 680074914 837460569 494459487 734368205 795529812 966935221 936479518 936724514 361207691 682261207 832627464 922487066 741585926 828127994 612378445 616526463 90652181 694036564 346749481 498052235 750424935 853815762 406619294 900590783 460145181 795805325 477822209 643925830 37248700 816871368 896118208 994057348 813178149 833076483 931365351 943715628 662572861 943192719 270739058 318956805 129114161 749426937 750415623 805562123 126418505 692391471 66687583 906121704 268796564 980523502 967328700 973107373 951168500 999130941 955665829 961154176 928749681 974417574 267891188 907377324 626171642 974695319 394732929 908452153 405553919 896438985 6529646 335891981 702787521 949782766 713218155 864505129 614402377 935633838 928733683 934392255 116767625 918539850 243833408 969491715 33036086 873089065 610000687 804526862 475857040 979667224 491909080 890975526 830383756 879602721 781469874 788881445 437536801 657603633 754314521 869702621 736073591 856487888 486239910 723330880 438878516 466212804 638727372 694545720 745098916 835830888 260831008 308514482 567779518 757446758 167424729 235766022 349760150 766288023 298708509 590651888 688636936 808280033 351543674 991153329 355529092 875582339 432778020 657462982 407733044 737342265 719262586 982915835 939065622 990699151 9406500 601363269 517598041 930174850 272242837 503925082 523510693 905945077 159807196 491747353 651949685 993779378 114172901 330590657 751328914 980885589 847406747 857392261 482224155 501299701 496975 379027937 969842955 976122666 927665961 979713529 403555021 857007891 127255546 704373510 392338542 987961157 811701404 991286477 628781859 882983481 932277036 949702165 207350706 720217505 655686786 666705925 582265121 776067955 602245887 763903142 424851197 968724230 423484031 486923954 300912834 842797288 546884538 857173421 483482913 812979214 604711078 714445617 25429483 543425679 11541419 675885715 916348405 938675600 591471503 781194306 61696698 208535544 974758571 983866058 909466656 974441210 815814294 931176471 328024504 475696470 183022241 943315930 78170465 718557179 443017809 757194105 837223807 946445506 751530390 871139150 427457476 926126552 202981958 441859313 725148990 862800582 704718310 964391644 329160252 918873451 29637951 866859022 790157061 844069541 182644299 522894851 753156961 954746031 71155989 299852919 808666870 920070758 596293548 838959561 812050231 877704694 489115435 803419426 228583773 952597170 698056005 886525291 951519448 953173858 202590072 373491111 412967289 557265567 117250040 601745384 26760196 328373543 961428811 982793930 568547430 720736235 588135447 699385108 919163232 950190164 331087927 755912697 490256437 748455481 421819797 496760461 330008272 646080475 415765719 949015331 654066138 977417661 382363059 613687867 799840793 910707846 195942338 714661374 904485709 948757548 782783172 951874866 586380183 675646553 175417475 966451990 19207538 601872910 380899971 663474654 97938179 581680667 666841432 719025781 686078462 798272889 499882958 721093457 60124664 119100655 798383814 901674620 528930935 560249841 239088547 432529049 917977641 936848129 121454242 181451243 546739497 725168680 742919761 762513660 603922646 886001893 944333858 989426081 901156966 977447507 609355567 872355410 591652219 992074143 952513351 955871839 390661098 579836139 920786037 995420862 184547757 356515860 331320411 522295556 996987658 998594657 522697516 652882842 331631853 576282298 216346661 406271688 775807162 813275060 633592333 983753393 623006885 916546766 439470791 744241466 813387227 855915188 904150670 961039663 883528435 929072457 336391730 846041874 318073438 939264624 463757700 808924941 508504757 666818950 195136776 314636765 544867853 658360378 320597777 579952346 526254946 767045702 416778748 949023051 484146580 492037627 667358581 976987315 352160663 581282984 689164631 908858981 157480212 533578803 8055554 406239401 781274916 851040310 551386271 584264413 827494977 868152404 64675753 284435308 485320218 757991354 394287337 885603112 719678771 758997557 625733932 749590402 756828343 929349566 6368728 737285546 673244017 861896413 81723693 770052291 298069484 637183985 431731523 531488524 661895712 853125190 214311732 750513413 20169345 188331911 209977848 752786011 764667093 900741003 647687272 683929643 107942568 944723923 491228295 598846462 842320688 889398506 783430405 877031208 634738821 647666646 342173247 349556682 859043183 889451556 21627246 838841923 550879008 590622334 327396374 822054319 6274134 708760229 287672125 360874394 490326741 650279379 807327305 940427237 514321201 673188893 529169482 663931937 973033374 998879070 808968726 970484322 36677879 133117643 690938964 699411152 840165741 931610677 601408814 828254465 150071211 160661016 614816750 878781099 142718237 846088898 239170638 744578307 236058580 355712127 25272434 767357602 796553451 939392115 209566122 663365015 649240343 987468682 277240236 952404587 658684623 712488906 763196404 808310662 458563026 826846497 962590765 965105327 210714630 390487771 130884828 761362076 936687312 991335615 295338296 745712095 205623025 659610124 884993227 909885784 721247909 993511838 675973008 769736466 918546151 947052805 48551377 981882652 213725438 519682709 287001964 945576489 711232648 826723466 989591206 993035871 638798624 693272854 668632083 709830772 728075417 963154941 845033271 873700940 466035516 519421966 688824577 885298480 535968863 609185850 224351328 891828255 86522480 885394604 895856426 953905782 865493399 936074412 88348881 602401671 247766007 589758953 405072856 744021964 94056467 818437286 280324566 435198386 975116924 995047597 511020301 885901157 518567321 627233236 745695509 919970219 707795606 841145323 442740368 473412844 375001456 422724916 423799629 518999877 664415546 855764361 537422753 816075252 657628560 890473225 69219685 768260459 552058559 612401577 561409708 711272968 347894010 695430766 410907888 613895302 49720782 365733779 485084389 723715789 624327853 710592060 803457034 883201449 778227342 925778256 860368648 933545362 52019 219919663 978083718 994928911 512232688 801359982 506372732 740033738 613503999 779923897 526726992 824930615 362686474 742361864 497222883 984362229 508962830 661639306 714025486 756250844 2853793 27305205 815194925 891152154 530342229 638456275 331145994 936911880 736167237 977435852 950851141 985483947 782451760 958298459 215934623 281309091 705455571 944314009 994641911 994761952 17281007 964640690 730408762 890751744 309181432 862817698 527262692 818574086 489801556 641187931 964714886 998589110 483534904 726679054 170504698 619763350 877135577 897674970 505425724 908237055 583562735 860192885 688476846 770809131 896828242 965317848 607628877 896732470 71671498 336654788 27282218 363921077 967820057 973870000 779753148 860782698 929615037 932563875 943407202 990113764 366042879 534064090 629730100 904504235 881158298 965434736 855280499 888181842 92873523 244359887 434037059 947765715 650353818 888378708 766658414 807399048 491478235 645739138 736897539 786350703 670236179 950600991 338452755 858273802 124327185 920993935 320821154 582919105 994916589 999385515 968489510 973191999 104992768 603718461 658124345 854743822 816876983 929713436 937056720 959183145 196940527 365521794 437471785 619428818 510596088 607494610 969177846 992909748 323435340 567991683 426780571 580465669 49730404 579877439 776731933 960463627 608464397 898569941 293755264 729954682 512840360 851369286 691152097 865511820 994524382 994573423 466388826 929721434 705570249 917743578 492579685 743792690 864848290 907404520 480486160 881811177 426733251 603572215 569716324 615929605 723507222 880175208 891955607 943428334 559846332 719335776 738196827 916245581 855143212 865586720 596046858 656560824 647103574 654056384 460928050 902992615 281163043 730536653 2182953 615184361 240749 45490818 870673241 896058321 98472222 821054761 279400651 345526654 472034038 995131811 470321005 547259682 12791149 44188559 967731935 984548978 615356090 933386371 432196847 851666441 530352855 750456629 338356332 850640514 91592780 161370350 18056811 875794073 341398935 460868235 173452481 685640923 361092858 712208004 474058762 572894999 386155744 857795495 961529870 979078323 281656807 923729694 954246163 972141405 86809344 918361007 634393414 637494641 47613120 366409276 837586806 934582772 939854318 965584336 484231813 696195805 239150999 878285508 63695987 923216708 560647287 755641861 208471058 436679129 626261589 680315539 944173558 994225105 373582013 796156799 964204692 987854114 759217866 776310462 994249477 999035827 236018356 997485242 435977629 846101190 960533236 999149247 855836324 868836106 120034373 831051237 695342270 870621509 480649731 489049394 906326610 980880735 158593197 697770595 286409899 817979003 733535090 981293286 365216512 644517371 153571386 770017733 951855605 968493905 556255188 632390006 466123668 887415070 432628841 776266177 809446296 947379276 755277393 968172314 474914814 708754416 654593628 870374366 947694777 959723387 216450053 821241097 165505640 639806227 25990846 942613582 605930905 887562081 298989783 478599732 981612769 982406693 374607902 447655731 172218254 256042983 43000143 762405760 919963554 966621406 523241234 727518635 323731792 656652099 968459089 970654536 369044313 836313523 368976920 565403285 680129911 754352986 266914272 589655321 619870050 865588487 117432140 647218845 719739889 869908731 15284449 394759345 517199890 787171107 59313226 484196315 482771075 898055627 146470783 424301940 830595221 989293426 266041654 547137353 740179447 916018198 699583443 866620503 370631907 779620634 372194325 850457910 737410252 813932436 74839718 423004554 385010995 615652946 632947598 951884519 18480974 320885907 658616069 724867271 83044457 622257990 154253167 685077245 43293886 765613203 96774628 693897421 815218803 937793158 895327433 982230662 829341517 988950531 777275932 852653014 623532463 855227903 263487734 419800241 314624874 759850525 710666838 960165604 405307733 504584149 3215104 884564749 434721820 739283183 51953910 664869029 613724288 896803714 781944069 839005021 165888158 335367274 933074543 979511748 181299980 292711463 293076380 313774498 846293383 873234078 659295842 967053689 539476413 974911743 673257340 713425063 15282497 346357102 777965375 954737398 675060916 698712504 793272411 976002736 131266753 758315542 238114553 435941902 974091953 988356335 488309078 901148829 94189064 170801524 867151131 925621887 349155523 862529585 371265116 424469567 621698450 910690447 155786409 985465808 248253073 581356717 131312548 597794172 831121863 946919677 225333616 757817268 103651332 996892658 991415950 991941772 869982715 881922097 3870996 211637205 320903771 900002612 138173187 266950652 242468254 514845585 480554837 615949624 302046136 800289681 530156965 912923877 552749436 660761181 540114918 668271439 257727010 337212547 841345402 992091578 548775041 862515630 430141857 567521272 962510438 993204203 969443757 988897498 204859842 223739825 246665397 886690173 212581860 258070721 124765353 645435823 195399968 544781959 898409473 974549961 198942275 765622754 607394503 762215653 151360613 895211014 229346356 922641518 290101193 707500430 572946380 969467864 283731734 516129527 681564003 965722380 780517362 923328458 685731882 736715105 479510680 740021185 381228954 944699653 313963271 726280811 913490494 924427317 448470273 655939928 900610821 937900025 840206074 923672508 977941447 999228597 497154084 909771361 984808053 992787665 851619413 911442980 519047946 952444149 910077890 910270638 205707035 760988749 32036844 895303501 510279018 944688218 427035845 558999912 215369888 396154405 593746850 954250127 565818853 723652821 291684745 543427420 487827504 581014006 81904706 625287981 973678228 988250680 577258916 691437726 770007046 933618732 720110433 780815163 867012101 943911277 64993099 628061905 961085618 982401773 399392748 591198955 711396462 821010167 32768011 713839102 196726214 241247853 657970799 662942563 549525661 750436786 57805889 898306648 524803199 769690414 749946542 961543353 875785856 995352504 511279595 869855760 817435394 834471121 944083189 969933340 992244554 995313097 446838371 962882804 284024910 904897706 381945219 529217490 433462664 441508007 25859650 700141361 734528702 837378035 317073278 906661529 754757782 849752200 66648272 152603508 30782009 241627752 883668082 954703558 200176935 675595062 330132132 820796233 688525036 892497947 788990638 868151666 261680226 929455819 4430671 709320183 683614907 719666161 653170012 984230342 373704462 566629688 286499496 456872819 566868764 671043556 124386906 926174397 997370164 999379991 45178533 94337092 140153658 630415782 339649555 455208663 796578398 868809328 78688359 752379882 202725963 598115322 125490619 593058725 672420989 905351860 411563854 953074516 423884795 884000265 520090147 613076193 695009179 742753490 890127387 995201230 17706530 281049690 857522843 894444745 742651980 880645899 774712839 826261979 531874431 601446580 951394743 993401962 975993523 986869267 352741403 562574323 217818517 871353194 149898146 343438040 260200260 469146772 882788672 996355751 457728604 994903305 923177755 983278111 282697258 360952850 438502527 945642394 335876670 363637707 724647415 788744217 416654469 623097688 831594765 888352074 245610945 753372182 13331412 923990307 553131714 812121416 579977752 752760356 829570993 839872787 378175198 634728040 595749589 649101722 749823890 878896859 272946404 655427873 278743333 619924781 700988054 864953791 963798851 986779542 730565336 883493489 943277232 981431146 728154448 752317547 99290303 956825729 876883614 974080693 869696786 989479416 792742698 955955771 200065524 294147870 426080924 755855754 138139985 793884101 539715157 551270673 133673158 766515617 565436578 760847627 414382542 625062115 540142867 779377936 426373969 758895003 359879479 381652136 50943708 681187822 506451995 516980954 575215473 844435539 994847603 998883727 898319407 952544614 425765795 630210224 365253712 907558888 153603303 791371387 364211697 732238243 958873007 966997689 169556548 900318936 761765949 990759763 653864124 776168175 921281039 953555639 326680757 632860973 558854680 880550019 523100358 792255607 96257317 507037722 496075596 524995762 979674653 998496208 837692820 994056164 35489562 77552298 325404943 777052255 250517812 331440155 337820821 751865770 827530299 835459348 398575381 504026840 739826884 875874688 580031846 604628800 844116921 976654983 18773750 729350436 976588715 998427754 580439503 634773604 777278451 883076243 858292846 879984416 542835798 776749070 960659663 998796161 444720745 929709912 425720914 645182994 338641680 562373120 165904245 261110985 244549295 591753229 133674328 823916474 842480688 974179988 528193958 943247875 361130191 606703105 655719152 750297875 931896182 935722030 136067092 180855446 313951968 664495704 179314400 618784499 367524640 911793446 62994253 100689218 399820074 540255078 954884366 976836361 910374724 954986013 974616957 994412213 673925059 834444873 792697493 959163091 804772322 981739086 838981383 863252835 412964054 560336387 9040803 853612030 685897408 997739174 510549238 912526354 180556369 812691748 239913929 686725218 34161603 246022594 87998129 135298435 948053365 995443564 578369315 662057131 35338553 492946078 348327222 773585576 458549682 952093608 245693901 568656376 939508665 963022389 629214576 668374040 119882275 961502313 676569172 960265516 322935334 595922620 437565732 439952544 34682345 156020638 44073259 336837586 675129315 757890402 830748995 958751881 267840361 399889363 780632841 801963050 574724653 936922435 849950149 983049451 304246583 351873896 755759280 777126653 499864326 702029130 70707566 495711056 367643925 971364520 779144650 876323834 667358551 875703333 330702052 832273483 386359416 773350950 389114280 678285457 75607058 448160822 91280347 425769129 497755303 915185923 164460191 908028534 169739592 267514914 817127121 817697241 281431686 421866813 827869504 874422207 676813935 830412540 209318727 454394401 82918949 737046267 626962078 922931533 128954853 678180649 429101433 597307151 820434716 968579894 998172712 998670341 154948893 879585875 919928134 993133693 384883898 714648439 349013464 817730647 234379822 374793201 686772646 834382477 787219186 903793493 173269972 187898780 664947976 968393682 244227174 442875248 690981362 717718918 535477009 757759292 957395254 967468362 104157316 764820462 947106882 997051830 422126503 716754391 818272392 865226014 51363561 349550299 552852846 914845983 286592526 821831123 285807490 860632534 179816846 310820596 777098131 897666852 57552828 166739319 798186523 940158558 869825575 913416005 263556361 973107630 703646590 893668646 223707601 959812426 205511407 970359888 696170966 830193922 693362221 785170133 855150177 970151717 944190684 970250687 440895772 538745867 328577767 959218870 719427275 757415881 48987483 893934900 325934882 858251304 492883250 730336655 557535577 805724147 807836669 914620399 187967610 878264776 945391666 954322125 393337702 662993059 780411790 825937320 101112046 247610966 994308974 998437766 868448490 870036319 868284655 947479298 415357167 503150448 362711221 526377959 570658183 828761789 502101119 679500111 815395495 857868940 529754086 815875308 814519678 956685456 902138138 962376236 513163276 770031137 141389036 855824375 580903506 610621229 538882235 887687678 223070041 542701202 425187889 942573611 22869872 502039245 275099180 514642361 680054704 877332537 957763101 976548722 373782363 757341721 241948153 510211154 662538433 688702952 887892903 896310025 865586733 890933265 580987857 937318633 488685514 809729190 628274905 936350725 381474695 868145385 63602147 396213426 914984993 940601924 199052735 215580194 560256615 968571024 716445086 822953110 551938820 607739522 464504355 856293811 82273058 468046636 628193305 739370854 224637648 980384935 420942597 669744930 128908948 896283599 893213549 984639634 398532105 665390940 439089373 811677347 769225103 864502614 442241984 761901322 378072621 998621650 947188173 964407898 550609944 876763070 979259741 980468732 436534009 535262194 528647498 761175906 308510353 575191861 706367509 912084141 939138735 945239599 111316700 214643377 323257326 686393404 469596802 738959003 609301182 760685460 376508403 475301119 407918372 465815429 652926613 955703191 305463298 885797977 791048910 908181111 361161626 568160186 329293667 908683010 400687793 788483553 989391241 998494694 689366072 913907681 260541159 261521394 367966165 742708836 63399674 234581504 32658470 674402900 241121627 600272677 362899054 530968361 785928237 820135214 216498752 607696888 449515162 806674331 931046804 964085114 781061312 781235884 238967633 526592610 10035034 414130396 942583387 973428579 158811489 814593474 374044128 532866134 746383555 785327739 197704901 903009164 125416032 748462528 385039758 475932696 574849767 767975748 124421462 531605729 104210351 501915501 47319698 65397298 984921841 985393570 580344774 745854522 787622464 807457305 39281043 415721595 975252586 989277411 551303473 795818550 328759263 973280209 51874135 464673817 50914353 860172153 584088705 900681508 591534116 891594008 242561770 923287723 953916098 954879931 887764812 923886670 367160177 571621095 607524167 822915151 220609297 507235933 552795773 940890786 993706184 994534201 295854632 707214618 286538098 606903181 514959294 989190107 701318744 875029799 710682895 950597031 185764117 649627188 768527987 805036924 467400440 929551111 845095441 882959525 98778102 123816222 683168624 802783497 20844639 580729970 692850010 811960711 667006360 809139743 988604700 989193503 561574640 724683188 553871281 626482499 149083803 541577121 293989813 315892210 519544593 724701898 579467445 657266445 678002049 936089671 38939470 474244637 485677882 884626919 890348139 937216766 226274622 575878694 677280971 745720964 760070743 779467867 631715633 865810819 439765574 442920399 69033879 828985369 491286976 703044440 862806296 957954556 460687523 653836536 16299465 401076312 571501428 879059867 125215233 833407936 10708066 584827472 838624065 845393566 79647985 989034483 260083989 613023383 655226241 667901489 418751865 542858416 835672888 984399379 476390000 638567695 274564474 696185408 806749075 819725365 473421334 628340808 62526197 98858094 48805368 875217131 409156609 625127369 324848160 557767163 928849701 990529199 323460331 882776565 187694448 315773503 756128074 870521869 243340153 572826927 980674678 991162707 885219439 974012233 208430333 351354909 224421298 809108788 947835303 958423683 359964686 602834976 805537829 927528882 256705637 956241443 10281163 313594662 930850139 961324317 760109460 867778424 175421405 907344799 63002525 951492259 793735351 974954945 853870223 905717467 156004700 353633117 152023455 756600834 8959057 123359227 303126194 886881762 932523056 953650752 319881004 768727803 458778442 538011511 9123347 479187966 44669832 852809661 913267654 929662002 787017180 951764472 246362766 899231476 679340832 745916116 520424647 669908335 338812775 540864960 311557127 670609471 630484493 903636394 875269008 898879282 290139465 563178739 15524832 471269267 542266294 779021360 93525885 883900655 982767359 995815455 44580391 339268930 396720366 982193170 148003554 298420808 548198407 943056558 81877387 751196672 937127449 942532383 641896181 926476984 438476330 671092666 672768977 778428134 798659901 890769606 455110124 804538512 757750513 873458834 458916543 651572777 273850829 363015359 906094164 949676334 360344707 474138298 568089170 868865262 227603673 807196199 588293689 674086043 490751800 852440113 369914767 785166187 38647241 306595625 828063282 971496743 35910072 455114254 641332813 802875053 211766828 627803617 743441125 928475019 989589968 995856752 18557367 443227488 721895146 876306519 452817233 503601976 416180479 686811284 263300428 848664439 702520377 705980647 873497072 955382206 111552519 990331765 374545054 595903881 592386113 949471555 81625222 539819865 235016422 973300767 336776523 870316257 260513924 729233098 331302813 810538688 949589949 992837321 211167527 925716033 712871873 728542963 961345687 996717897 947680028 976537920 828085401 908386616 875601793 994541405 125544969 288055710 863951323 989549161 151128125 627913708 427439984 668019515 802446380 997648588 789582887 916085023 954094554 964381138 901748009 979534918 390360529 453827458 601866097 866603887 575987455 712393430 803614749 845719432 396978235 907985611 815447203 955195371 997148696 997788927 281274981 318482497 310885986 557758950 187592107 827995735 540988973 798841653 95616021 146400722 259955889 674180906 585111084 912133919 34162135 391939846 841503036 846127644 342517711 706082279 357483469 738012649 418373229 678568589 632526057 644645042 271217373 834737108 752453611 904922840 455949296 811291018 686083601 769650126 883899775 941204474 339120303 778342477 783534298 910830092 436128055 692679687 695358796 896419424 431163184 449367526 962018308 979400671 521085315 968765102 914372160 945579078 199383724 784071655 113578335 836672542 917551279 945278385 630788189 801995112 509290418 862552864 317391116 373003047 363013655 503199617 259143620 505277790 572900575 658730258 538152102 698590867 978548456 989598554 912764236 970218923 661865040 922158143 950403674 969098576 39539615 881015984 542667042 782428194 134450624 736233258 130601913 525503094 864224472 966382971 869512900 952091184 196644383 947559860 922833301 989721820 541007057 738294813 886238672 971282119 138723848 266920173 575488451 771324423 378736730 974207156 110570598 593759548 536415820 837376838 736705436 737388348 123574697 868327571 24478152 329485768 338084341 435110484 98827405 253255143 729645218 816891691 273252041 781081980 63651473 464938693 217536176 912250809 390706332 519109157 478292988 683070784 549936186 759092214 645205474 970961527 786855431 996309364 449094471 989246143 178818537 957293779 436483160 953355316 763706371 864513324 550686188 856996155 931868831 966162327 367610864 947640222 614073122 820228962 52048643 823446802 192733649 422021022 25947021 98797215 657133892 692653294 412389479 854431154 542962296 878544544 821208077 846411688 669310383 791503594 204881339 404877715 115816839 407944615 434391478 933647526 581900911 914296054 54297961 433921987 366187651 818117107 568018678 667727742 32413461 882903621 260337362 751496122 505937203 900070680 492997285 495706033 206096945 514626572 297414990 625930961 50024762 787892958 119145863 404953650 780276172 982543189 426720320 865024236 699173342 799801604 738518237 879807891 830600318 979089982 523235445 567409544 528528795 605570115 822404214 829789144 748707408 845035538 581466296 731975352 223423155 413398625 64726950 888621837 717451796 903921835 122933549 344144460 653833135 764086063 833763812 842950291 631939878 914791027 273624714 811794588 49908706 478797489 500849794 755560852 540062653 941017211 349638135 627947418 947383687 988592934 848588788 869033898 205163442 781607450 892019940 922679467 563339318 964983941 772724620 853483849 975381177 990838207 955986409 997562212 404562093 528007776 159743965 429073120 149253293 178771734 269798975 636179942 779833361 923085713 872798233 907240743 176951153 569481389 695671582 828219685 761021253 985140391 942551994 996958739 688356373 967076867 949477718 954321609 734950724 865270424 14153067 139690623 504326295 629431859 626882557 787872787 522539956 554400096 985833585 991751306 472927148 487383073 101299470 223511596 352364666 903166499 292678283 961320936 461087419 968093681 654065159 913219318 527602452 659596293 313780574 504177802 653528177 858256249 71553531 971988436 100093128 540991232 719698017 931035281 680279758 778945120 757539336 827143530 290900958 784610901 45035516 614008012 419845161 656254024 361739510 387995481 642573725 816373368 617724167 941324796 280313103 937104445 13379348 787294175 648975583 812953974 384451118 800953927 327985574 805654022 706618840 747957880 810990599 819613689 194570566 654529822 847951066 943939013 907833540 946263047 428649258 474077689 138797298 661294713 597070608 985686267 252023860 861961755 50526333 265004752 348510994 391913736 470890973 663690468 945293109 996901392 297845947 346332999 970311697 971935239 64848625 363987847 196681541 716153949 704250343 787062458 72462495 685411157 749580983 817287664 128599870 557480921 396584787 656711656 146903702 749639602 553946990 923282028 968381241 993379566 435338711 934108229 416923777 861792035 725734462 955240723 757629733 904032223 750120610 942798906 49332039 667491653 154059722 178499400 430406593 632620478 908538392 925805279 354564902 897414281 457454964 480917764 835062933 962682034 515667055 994787932 972948870 989857890 887181917 921317138 379539376 414401042 901864463 911520917 465427165 946361976 518579514 686339865 92158525 663767196 190481626 529654509 355540165 627212877 143784922 207077896 534079994 891359938 376784039 838852883 43261590 584499145 706271633 874643170 364133497 541139028 68435963 974334653 287166799 895495311 791791981 943247759 117679368 861477952 105924546 534682915 188043032 551719906 548720615 783744370 427906025 653285367 946802256 971543690 46964939 799064365 849473486 987142984 374100459 554106939 439807798 927759329 945794584 957390760 789181872 830130003 851493924 979172765 84212619 555596904 333613717 536649973 309433160 483451056 324083168 722546492 420055573 560439139 211503554 755950259 276999056 810522205 221594085 364007277 258314737 500785397 474186047 785999945 326684980 717987443 281484068 432742097 493475243 833407048 275979727 548361561 556467001 750285707 43266822 455360342 583345194 915810907 212475359 626844460 389978863 691657656 374286512 595966678 993630710 997813661 586222728 748449282 136677275 935088257 693763541 781261107 632450043 872235140 683195562 863359586 904348655 958990387 690888999 730399348 374293450 738109280 947410658 973047612 940576044 977128967 331176705 408284580 914535778 920126401 942911564 969375645 206946190 767151967 97981093 511917979 779815725 796365701 219008255 329683975 559577989 870804275 957251000 993756386 482433364 612376967 462669872 623137883 893592564 953291967 713608429 822310611 177864962 492028396 129087934 507399924 200464211 284957940 881589966 958538814 303877168 910289561 734297041 903528095 22795793 648707696 962409607 999215524 374251815 756083746 556288175 831667622 268200852 724271092 254026527 845710330 983081810 991630913 691915832 745284907 44675641 684400054 583796019 659426753 145542673 376599616 344944557 957169081 533437492 668960794 36860635 969166496 351685875 567986720 134063444 435040863 605529488 734542989 887793988 992175848 498039153 541101856 884197222 939253611 66584901 466251156 629165899 857298593 104543147 524374278 423196775 972037212 793608436 921188530 574939761 620680610 918564229 975350955 689001786 987603931 993481816 994254280 931609198 977475639 861308011 949812300 652638509 758000574 897578686 924914286 197386523 886302873 768415034 838134035 956354486 990971236 663371134 929332636 878269209 885319403 84993829 382099588 945092348 998888196 243067074 931663964 508927310 679165617 444947191 826615707 363632281 525902284 529012867 533339712 428609357 681752060 978597877 996378642 854581527 989365598 946737026 977627799 776763718 828904062 616808092 893308379 773315275 986305552 877323578 997340304 778960595 915221576 922929324 982356413 861461536 930672238 689830326 975356212 216850611 848615645 108446047 544886133 966791417 976951938 227009566 739044367 461489612 680475824 20917277 988742479 342714149 968735105 582374148 970777128 594622289 731569383 500954055 807675553 755716338 837518496 878515847 924696324 785093283 813263588 947495199 981407708 109253946 801506643 181045155 526895395 622020565 727432691 854850676 983787192 423263644 902559607 309557797 684438696 168759602 808169709 782786718 975754107 649737933 891780415 16112776 333827401 344763316 650257166 695535946 883483028 349045149 706633551 512991521 746251266 716503465 851557374 382067333 833672267 7492285 987881014 931821905 986560722 280850280 601174458 818247687 940340476 835452066 874553262 302007262 343659290 442571686 643860985 257506749 649781992 371452072 518313777 610682764 914151564 657273534 874889866 302799626 371312040 394500758 503385300 758453536 784366047 139578323 359448676 381082638 517813921 820036756 997117350 592745050 838458191 297539480 438720157 150837093 464646283 84124795 127057566 956235599 964003465 708876627 843466049 411598186 796937624 260618239 734864625 219428152 864893314 38485018 479132816 227265511 496148407 440870675 681583280 743716857 879611973 585630091 632981245 187961857 533827746 449417126 695810124 714367070 837592798 597019620 939087857 571693193 949175397 290565279 650425313 571568999 980464965 176256792 493141732 58113306 404034608 412898215 544096559 712404206 741956931 595440604 674006582 527178086 806027029 251751610 317787876 50226226 885322287 666107070 962386816 100532012 669321864 107148370 169466658 692143986 876323006 916010170 943115388 515093752 670822090 24151651 365677337 707374946 967851284 734584931 885136813 762194279 921867989 411294191 605485075 675962404 708337585 436598531 876677263 11190193 860696811 543347642 741704193 692765875 746165280 155315023 989628816 106055959 528256432 863783 388483897 922732693 968270122 478660903 689839657 105796920 866806373 681440824 860724480 219947233 375822198 579296102 785780998 917223042 998484296 118393763 395276926 382449560 689798111 719721659 778076496 358754897 876394137 488526762 986301769 818517795 921555564 374866334 900993063 274487467 974256187 225613823 674627482 455624352 653828685 584336071 767479537 249944857 791832329 253959827 524023160 468901576 941604178 516510301 868574803 285037610 533377161 466160443 718547260 487557669 734307617 334558509 865530055 217826649 879486629 78861807 869734076 833639957 857362877 808107663 871252264 853753139 901714681 133772331 542680264 742519140 934969857 135515066 724272027 200241901 759736870 766161898 898125365 329264591 732436097 481358706 948043415 821720924 830264478 836761761 845209613 396699673 407075921 393063549 620209931 125317822 281514808 947456983 961961942 20548098 139856021 686871871 717455917 638445067 685744750 310521043 702757262 331835183 725121169 491826772 856871271 830652175 996729718 622054398 942656193 585808579 763850637 10993160 714290609 303415891 628042821 241745801 507198274 14574097 976834317 788677074 802628917 659097566 716848935 576413868 582710310 464999626 741710536 309397566 614494517 249932637 678801086 380519325 789629967 581113359 789510694 755594799 794578793 262407029 353987601 910531680 912040739 49132014 161445598 978180523 997452693 725754352 907911857 611699936 775935921 356806288 643887617 102629235 331481162 624100027 869050176 407948316 912633167 761549210 900294446 681933013 722772108 924889496 951959798 903968689 904148531 631975715 720302960 120779859 549087826 911593637 948784436 600583038 921441052 572061286 770360577 837148925 865609463 344386447 713651292 378908183 735402218 96993237 961503998 884923719 995101895 220691264 506655781 245162167 992711726 175323686 933835817 330870212 616286021 499325198 911800606 492618761 557835965 159565651 775515960 824429001 826194203 895358438 922304923 510727386 601289671 934245209 984625362 858950270 878967708 805069155 957806891 85189501 190482819 867386895 940459265 288557297 621266305 737244562 765544657 72014772 753388333 497746118 720031834 929170657 998868349 498291088 887659130 881589654 904278333 896381489 910208998 652242384 674001865 992602508 992871019 152462241 456107459 954223641 979168638 128617465 519028230 973229279 992758962 574709125 702695112 598096976 758800460 551239750 765371625 377898957 974673057 92740447 540403424 416182704 970307776 711060994 727098699 655088723 978213837 359753474 853620267 644525792 724822546 233345053 865646789 27232088 649703746 5448014 690398667 198705274 294699238 638453617 805243308 417091048 712868580 63824120 72111016 200515744 818559344 250242143 814508412 930798262 968983489 870775039 908594499 930123912 951416451 636032966 658137440 524989543 876813929 443558220 847343993 11166161 956577216 375838830 776437187 980126016 984429619 459828746 591282076 449543058 919767956 892764314 899051692 377067766 831746886 812307323 879103934 554131081 785936179 515402470 599317023 352589931 820359984 457456031 765804015 59979699 235007035 31871397 392718568 309202574 919602525 192238874 409244922 45942440 900592482 344301542 436321165 350838466 766011403 818231763 829374492 292787626 403409818 981052122 992496830 676585521 692717241 937776932 983657358 823515749 920039611 335226937 337112805 413204002 821218222 107209832 740035107 794576935 963540818 186882101 882557591 303905474 862425136 855411541 951293064 542373814 693611025 173946340 791417301 484203251 572508129 219246131 869718434 59531646 844680592 31229915 382992722 476249604 963489229 31384100 505380045 312564519 907330629 603260266 807645044 268915092 281256237 437095858 797265480 675086 939646590 294713458 952645950 676529917 995462856 326125357 332148603 979868923 995806574 594769709 806223939 846570986 872141760 972904199 984365061 711073857 943599039 152234234 210342580 858472259 928593979 541838638 966834844 352638402 835223365 913889947 975884022 213328966 539869606 302710074 661441341 836057330 857915439 529421719 985452749 5251924 282844649 75990315 690585641 900885849 957615123 776205214 999056877 325071365 471703467 464076446 539347438 9692689 938443391 66621938 805732906 866085327 899110058 635911058 732437109 840847460 949985596 834615699 948342211 586508000 663591856 581969713 900836772 847936324 939053503 873397395 959221803 675752026 975535891 262345874 315051109 826791130 870885091 457945728 692195522 86442769 399517732 884423956 967253868 299686431 994312791 378086207 476248440 753846691 841688571 397567710 904792983 650588612 785331356 261623182 449386859 760595091 878384641 313653302 536592931 125467405 539268812 450809646 540088507 629950669 929069116 43954581 278362190 542477091 956037586 936853657 949864035 443140710 787051466 713155190 750801086 757691881 946872809 85472819 839104848 885969584 924156211 908875943 945777630 903529003 939188008 192846170 584337831 886916039 929720200 701222395 797914383 383498922 760144865 161655584 238672682 532086364 550574428 570971644 725766523 584891793 671342912 886122728 956972176 618200894 816937074 676412215 695983259 619185336 847648728 459420410 588597713 942031414 974833237 391442758 478289182 901026062 952219011 158249093 197017594 321614091 599922212 775848798 993775163 245442148 305579822 173314800 603901506 656008011 892144602 626640077 731491757 823296768 930821670 447507370 889082537 456930239 847077575 147733528 584816886 237974849 465214539 240039595 727680558 27873262 249936326 839017005 903668210 979807991 982805029 604673401 930864638 475732140 515909573 294399317 888332044 334193013 988780742 91417283 567908473 90830555 595559262 536563230 966416986 860850613 983816835 49874248 421885747 108834033 963593675 883856825 977446786 206626902 886000660 453447920 579887616 200677182 687509412 26635762 406872712 137185393 955550178 628010659 642253090 165239748 965717598 149114258 836731491 843755696 891175610 581944765 620038647 908871734 970398063 68423174 599455465 341239081 506511534 197958541 322576703 983740983 985217569 926706954 986311449 948008313 973617867 725901080 782520787 301713020 670741215 631889780 968810938 933734802 963247072 739663594 791456353 416181480 605783612 519615671 949638456 218569828 478443720 740469085 761009899 128524488 262391371 438897802 883310285 623851913 693253316 728957201 741106246 820231062 890589867 328933085 668299656 973107288 983080828 708354762 720228062 203635070 983224706 515492739 780903870 913179259 968666754 126049852 979601497 839684509 849460574 220869119 922478009 692991212 936476534 608841143 810914148 586398132 902290810 657202873 965050234 852572839 965880697 61085577 903141376 632573617 654729163 792324633 997504425 22759254 426522905 300225911 933096498 380815939 764473072 50910732 800148808 933649260 950038044 600614251 766384471 886088468 907662327 91861890 808127111 771730468 925533998 809116274 838406708 92197560 476129819 573020118 867004660 104147845 850223287 923189504 965822464 583756866 741856616 393158271 864717217 447689970 941441426 15750444 743850238 833291208 840415182 841509175 924344460 88035907 532517429 593651960 712149301 710491133 986596681 125640150 243966002 61970670 511905975 881691005 992181647 558627768 875678278 768046849 952042099 153961198 714296655 632633455 922337954 881563297 970892978 715261225 832893954 892929938 932071203 27119955 774471369 309094988 846901615 569561718 577940302 3686267 486433368 499008915 722192184 550799517 987231266 975567802 986038161 514998437 602989491 207001809 824426730 75209349 119580686 115272500 908897051 398743129 510119296 516639310 790469682 323324811 950882602 142133742 973524704 903325032 962542635 152973324 266603305 792750686 919119083 980050104 995937676 591939036 760973450 6587412 676560646 577351685 669942890 741869042 923600947 329874997 728922838 486071514 627721710 978807143 984612905 44654490 767073049 357099811 730666520 14498078 408691653 899072240 901578731 78656186 780309583 541884964 677403949 68076318 328351291 686797116 866098951 467646082 607111696 952812275 956671154 868937017 993724883 115443188 258385885 429531145 820043477 472757337 793156608 465972854 923242548 312300475 767663207 779316182 989135964 67943619 734997779 192312237 483594527 760170143 896686032 922549355 975220715 535579652 608913405 863554809 870236629 955226975 987237049 407347387 445507404 708546986 719011217 887820097 942563558 866987334 939898659 888345077 972840523 550965464 994868644 952218505 973513075 635887294 751415853 249869319 522740788 309589163 548596281 87368207 863003806 449297871 638580639 595626521 717530267 531442213 987795917 534631912 836990397 397477796 765863173 75352751 529027766 378948235 741047562 19487416 689763250 489442306 706470924 142762388 777960675 836170059 988206822 742158293 904849577 671276190 894235629 372991640 928702121 857994837 973864130 705162192 836563039 509530836 833894769 352350694 921109761 33132891 123208403 172358356 192173927 44512391 799156046 52486471 469204795 673959191 944678758 874066039 880299450 495723320 918967795 851838620 858057845 973657544 997491307 140088291 165142086 17116102 273011501 661239383 772885307 248870824 806498392 502817254 912882712 602125996 681909144 999122847 999314640 842083899 850716843 679641222 740199565 185052991 804062756 365250186 680874366 588974361 638047892 218490029 871109393 110237338 691150112 908839643 957430879 203180748 288417764 114102951 596883202 41343991 125344295 178239743 336688025 770987404 954686098 205940162 464265246 79268813 747445274 132489066 264713798 490173084 604868331 538075740 729326026 113165114 603894475 960984540 969404856 958859745 968225613 481339873 482109687 440117199 970200905 360573713 594695016 913449584 986063285 280738548 801284355 375303972 817696383 909032343 925251265 327838742 906007701 52024833 410448811 37665406 298870641 780703943 922719281 464888558 626005188 312209980 826719136 721239091 786946470 283586828 799869697 69776603 407312200 820397508 821418894 802885205 944642850 583408291 894318852 866016538 902772825 496145827 546938176 129807410 955915252 14765009 663738205 179982946 923571666 584922546 737563251 528537539 692059760 347601963 350062684 224870878 371879322 165781059 618858040 1001648 218797697 785743751 841634436 429873293 814352998 22042088 430916860 799530949 940089081 933174454 967292071 318164120 492607053 473856921 601618019 226037687 442296250 923549138 992992119 810489929 903665923 119956288 954834276 689816458 905824934 218721985 333404720 761391377 947199365 973336081 986415449 654192725 956509468 590851724 982996530 299997594 985400082 375199608 999281814 755272548 990382491 880968153 960643878 165887819 815681362 911649601 988424557 473486541 613408244 223812757 977679258 305076177 617122245 216758868 404343559 705913464 940620620 799992973 837836542 274670536 806641026 16363470 352630271 538833997 831220109 369039045 503061080 796016301 931887178 826495585 881762929 308746758 981666596 605708084 820056307 603231741 939846158 129376654 717556867 246874033 426098176 728081274 953805317 172686407 281780506 557406030 810706509 929943037 989466185 89589028 491137959 704883358 779319335 181441556 591810369 570585328 808753983 796486504 848140940 389611076 494631003 54472802 871323899 936856231 948062988 58195052 454745918 986906813 992472886 334856211 765488836 602602186 690935684 730886608 800532730 572354936 888123048 426905379 471100611 869999461 947191389 888655678 962172067 73568290 458293664 442068678 944300929 93841689 800348596 716831959 733011286 542486776 888879377 450034569 450690933 350870347 364592334 573356579 941466727 291583690 955399034 271016242 738880880 986894806 990002685 721282262 852488066 859414839 869850252 252411210 994204133 630790704 978586906 765953108 767348080 89752930 403089239 804740300 894616336 434572638 487522254 617267638 946923922 226916906 836588922 863771195 979398028 234712484 966079599 636632270 886480832 964741387 986084382 658066061 981460708 992156065 993965544 811210321 838004928 653669191 886860000 762246399 997000277 32313432 797186969 909294126 972449101 189542271 249216474 435383767 743765561 31867278 443457082 515573489 688994729 58228192 266156146 659049017 720762163 942154397 957541357 24394366 562991267 553601601 713930459 859618712 871659282 625426506 722930734 683964554 685970342 27822384 550782812 388119876 911926905 476018495 736533068 284030175 903490725 906792570 959704881 608688927 739490600 360110814 830625170 800056618 995134628 994876679 996556960 875386272 914102261 318995792 979884339 218037593 756659791 172283848 747086364 456877756 933546887 284323358 399903884 899839456 978856540 79966372 252101638 584120955 816829740 719235158 968413368 896603 256084324 452951673 478988601 345154789 914883656 521943335 836072218 396649506 642478703 189015857 440515039 872093832 977192317 116425328 734728256 509767326 523536590 687187134 938509943 207948967 600124989 502524500 836133851 594663107 968708136 390755624 560398208 119112139 318052150 816478454 988350754 291882704 779762543 381062317 750637290 541757431 813631268 383606413 624024925 294171767 826505600 120045910 810464153 637993320 854856814 662715721 923664071 961747496 975638637 504703502 725978002 741894703 889334010 436471758 495440434 817760230 925754283 854606404 996809335 750575017 974821521 301320100 919887807 847185302 951899956 2166818 896843372 676625827 965227512 840933552 990965745 674337598 877316078 820682648 981271405 796877871 798330264 410668394 991843383 722950702 871034851 133024439 600186385 780428436 941446839 526988640 658524229 293339647 729482932 479126062 764028923 635946110 734944015 238564337 846182645 868037080 976261688 29071327 84596141 707895162 920155033 194146233 826721445 160738885 269395760 586145197 957156869 364714566 933153605 94146443 861219747 545706719 913184152 161918184 528167485 329815955 768939580 860598208 939718690 895861274 987007441 322614472 761678405 141775692 341066454 233265794 427836149 741285748 795243876 674375402 734199515 451932458 841085166 839035628 955542265 190078759 713380296 98105405 246217914 807729734 918902897 284094825 708949127 705239203 775427328 845390081 862191338 292629535 559489381 908241528 935228582 281165687 911369087 764343857 783467634 801882365 879578624 322103963 373614970 464307953 788089359 872825454 900989195 74153389 427578386 845860892 952602733 452316964 630937487 985161527 993444643 233893158 468157795 782771302 984234431 567219216 798356531 912061527 993462427 390991296 416565904 234196666 381641483 647456860 915344160 275565964 995776671 996063513 997463250 402375240 479712433 525341759 947300845 904747281 997215374 456063010 705263263 216089706 809889711 539467636 777740001 619151344 745590924 544226853 946362660 850746907 887515936 520940405 804960810 145769196 975180354 178986216 258013372 156121262 856717706 520251103 702895715 400645197 640134583 540361087 902458958 626183364 931125936 884587625 915807097 377504144 902627876 328157059 451028187 44105683 545524671 133564184 268257587 365809590 443446506 407847543 565706753 368528972 991703634 604194156 637164412 443583040 667237816 571790642 619080008 757208874 795041480 39426256 394717063 352587349 958447222 779926688 885645653 773752272 873762365 978172924 990743454 530240425 772446466 407270779 512307810 979585234 995576679 482182672 863320415 313197934 584988235 243257736 633018183 422382519 513584499 775735233 899647123 753231154 806906199 83637571 481440063 729827186 894276887 455105146 609162038 654471167 765262383 481137803 666680511 301180203 773459802 989416463 995551151 271074195 989435673 905093230 972819840 976314516 984292251 552252639 828894147 353092326 549914326 262867443 882403075 328195153 363936896 541631739 828737274 775283407 793754736 741495518 910757347 405499142 988728362 857972848 961860899 262876478 734694927 251667260 855322228 149597994 771088065 20342422 866592660 705171083 910510208 274026920 729131340 899418323 967334471 227475569 812713785 193030049 500815919 520634489 728994215 862058511 891523019 860203433 919300267 236560556 656078786 342120638 481572715 806720844 901639115 212672364 480352752 368194290 883084211 439536721 858574091 221838486 689061590 365911620 744838350 800979201 942166111 943560988 991930183 99263432 754169455 681319500 837374887 868079793 938835755 731047712 920823107 174033461 906426235 447238838 653128458 826491393 906895778 946917052 953323933 301601581 316271732 733890671 983009364 6924824 442081567 697185796 882385173 927110304 973381833 123965277 517817244 177430533 842248168 444424029 480064743 438818028 473079507 169787409 578415924 315048358 791153392 54728476 466899724 881277368 994195398 719826523 978919139 669793737 929337393 465576485 873342558 826896425 969731807 209829307 576088045 698133392 820554031 538249676 734396455 303054003 430231597 48199214 857507110 325803044 721022298 920353991 936860144 650690462 781745982 539540446 654662859 242657558 882671680 513386606 929595346 881492565 996472047 579714282 878557580 74766027 459253541 203216060 710501535 423303627 969421307 507352055 635358413 507434501 669312901 819220773 898562222 526239156 555944497 480802200 605903320 655390635 994342098 455057841 655998476 603129837 854187117 346172568 372877977 477505577 548714965 823951645 907038308 392992849 583580013 138428464 274904923 18152548 136183186 617209433 785243749 84309480 306519154 742684423 887565628 465430543 919353336 225190760 339299044 462464574 801265744 708060075 996558620 112233043 495223503 301636586 918116471 525095261 773721537 892729331 963685772 723531307 788820821 434719369 521157105 48274853 317544472 696357190 866963963 847174290 941491289 277763948 542744567 986964011 996945762 437751234 912971781 930921990 950260737 581848217 668069290 449991710 994742079 398903891 992078546 206316289 223426344 236260828 798797631 864886143 943247208 897168865 962850337 877003490 900077258 411880788 811696105 128504570 579847712 336673485 791440570 442612281 919841747 107207232 745544019 136758779 430868144 42078788 598061393 626177677 811468097 738378293 740642286 375294916 543062614 113817587 417440714 598854588 640486389 132585845 286507175 404683213 736390800 772561626 863629564 967884856 990388774 84549591 403502089 102260500 179426608 341718531 596228608 870780598 913494841 801882533 935518372 921465572 983639738 893073426 901608007 407364278 509732004 877339760 916439543 895477419 971228259 907377967 963251036 510645717 537931065 987889520 988244996 845990473 871412008 58140600 64436027 934035321 951431009 915115730 964061401 640582855 779793246 617065074 915624659 348711438 824709610 173018992 863951707 150296898 226281963 510380306 725837995 57254917 910753745 803248205 858986396 49883163 569538240 305616934 951287895 987474222 988461048 509764211 526415647 390556814 837808294 357814981 779267966 78238214 878915496 239810143 932415901 801240721 838257697 623297829 643044921 900294161 926572225 812837537 943226522 699189634 964701150 551445389 704341290 160896017 271469361 251271769 399487444 939722004 984507388 878236672 919039951 409486624 510543020 575062932 857207235 319598401 664380143 205800118 283077283 900734266 910439965 903900870 911743580 969129620 980819973 91920611 332929779 831876903 967022688 523914181 929347721 666118462 688800549 736124687 807249203 994259727 996637666 84224547 890767394 451769918 484147802 308597206 744254831 878677398 985990552 856853418 931815473 485748714 752492295 726133014 893030281 676149205 854427756 868959019 989774003 73251030 837517681 864485350 937959666 190207514 744901217 259487587 821686539 784230439 833334136 822600283 980302207 956011495 962423462 132406613 730436147 591748575 812308593 588303316 806265200 969976364 973999399 107956867 451731309 78157998 764941524 891407097 990604047 849631858 950517928 797599961 894336465 332987637 871484350 426249790 741394190 94537215 694292180 385098130 819203067 962616822 994277419 652033903 948614778 109779336 924084114 84928062 733362047 711980843 781087818 362260709 692309561 559861957 611691711 201479344 419895686 751357582 782269553 880350349 899411861 880698886 957214341 62565575 592228421 474969151 501256995 64008612 582331605 798184807 907751300 799240798 914722004 980170443 985733127 259073814 286918832 275795085 351366131 978699155 987737130 223040706 446872182 595022080 668905417 878627705 898173547 170090107 945126393 77257770 825798194 917040685 962035982 87181570 127967685 259615083 296373583 458444420 464788766 543549885 794947666 96385075 99893181 426381233 609818131 667010390 966769640 145951718 195835600 605148984 874711399 97260562 636671742 297004358 882574690 154294056 885020009 592890921 776151601 926792447 932425936 53246523 100009794 75784126 270827010 180380762 789270934 149580462 740728504 522869988 581445684 333013743 572593719 382188917 656660718 62192929 205448069 166042343 738023235 948598868 960471871 761828397 933515750 873942173 883146347 313418506 579015334 607793022 830776816 724706269 942241451 268838074 389404831 389681251 969240323 5189733 845645603 397502748 953427537 439142633 606211720 723845185 880679626 600825423 840186924 830138642 904481362 52584795 100090633 279588719 663633310 365345775 759974391 803771902 998637610 975157642 976539792 305605294 347702462 607130221 625596533 82171728 107184898 279443498 614314497 724049962 855866458 388045027 951345695 703014692 743089110 664758286 853295744 614811703 817979317 959532292 998705160 718932694 942397002 589630954 948677131 220958398 612468508 554870919 624018886 368296968 455410102 274080646 841132400 270004023 912148236 839718432 956122925 465628738 884931469 54809147 465353962 72140649 278079062 842842317 892785831 285470646 366794959 615692799 836401507 972832233 983195252 494498484 652597102 91394038 558267564 414090323 549887483 414666883 750058608 151417280 533063819 209140817 451452091 461103336 824315101 951888996 985064161 213935945 652200115 402914477 732835993 19840512 645126612 612692800 713962259 815379848 887725882 75177338 514990802 89285610 283642996 288276717 344050220 601760268 616111229 733205484 847842857 481234168 807528724 852696343 910140603 30157748 445153010 454042890 975769908 663470313 938388573 276884405 768415776 218782456 662689995 310137805 920469400 952996036 963780555 714467349 872639789 324302866 582489478 750886605 886653497 147708133 870533089 587832719 829457286 184359013 219668249 313289437 788473607 355452530 481495704 262931126 784786520 70675648 587925461 681092005 745318026 120334271 362920957 922351120 931938011 979930552 988678109 778976404 905180995 339819376 951039035 860427068 984896141 119912370 821683969 94754846 303367749 122348076 623605413 139014773 714897455 620994706 724253259 256101291 744568431 980971489 989125018 641537397 930289761 940603305 996338961 759567466 923640685 603558504 797824880 224671824 878164424 732444476 804470079 777517602 790168046 262963105 933964575 972644252 997823068 974355385 989694236 865538612 984344441 519245177 951891267 314979331 928609466 907510036 954217663 536676352 839979706 234592653 417216396 887537372 952411203 952229837 971095267 38688404 318782640 423940278 921745872 804229416 823009777 839714970 933943146 766490415 862561566 477389346 938861358 669610303 718009808 839977085 856688988 511886796 519040108 621470338 933158443 912578386 919561490 256687618 741523995 808429758 819867141 792570346 988860686 354178287 671415398 344790821 742130573 695261966 899005140 97363697 880404638 115349373 935540588 37188845 330829371 349817149 510321980 976529064 998978498 109967519 523652418 688132320 884017263 417585293 828483577 496270953 793782227 823629875 965557736 829127215 932925861 161518424 181936744 664053808 755027100 534563923 950131817 9630833 196178109 591650152 708380416 990844117 996136179 723996059 909703823 654779556 914758036 362538567 517373765 331140702 997127496 791474360 960476434 638747817 787812106 822145162 884960647 563992822 900048907 6705365 965032664 766360658 991756380 598687904 830679027 284638154 969629134 649986772 992528267 777314316 920606133 453128450 872110207 457428640 728474265 286050722 717275353 48274816 836232511 627177886 821886180 514861707 602228923 469043914 953571465 80368556 456655295 608694135 897163432 248519463 400568844 832214231 947046039 790911809 990750204 926638244 968576534 933150150 997572111 881643287 933629435 847740785 852668024 767225129 795793339 354013653 898588902 679763175 820334146 109061456 169666544 91185919 474753455 554775137 920448215 315185079 746331532 4296927 574132277 379671904 575898882 946728789 986733025 419504933 518017607 224591595 290930079 475172355 719303085 376271137 566910236 578204305 782584260 928916474 947760025 548555867 789471728 776748354 919123219 963276500 992557670 764431341 841891184 237990724 950836537 463863032 805891465 55858558 713757265 416212067 667470121 380522901 673805591 411184137 995271614 991009935 995144986 357989079 980756484 773895441 915878639 484357986 705926832 388419981 902647592 536247145 690774686 492622073 843982408 735516819 885012751 584608308 965969965 754642149 825631222 490132127 491415405 189829448 851022057 176754694 263931613 181951061 639989912 450254307 479813652 531127824 825189136 919728866 944755811 621262461 760216484 521872572 603139345 850392910 979477152 461649371 796603721 645878118 815231908 189642375 788758954 765133249 777197185 134117607 284551068 790623999 906971442 744503671 818057078 997602571 997950740 1632706 418159318 998990619 999156064 721212248 736365847 978323195 998747240 279216267 478142718 28154533 576713195 964846699 993660797 982641843 994890070 672648971 901166086 407422509 571707534 314902045 785668385 616937602 899678862 862670581 971495723 663340740 895601542 290345530 796354517 44420856 59082330 866950919 918167801 705659023 878373562 339969765 986570750 868313499 984358176 219639350 881395751 582708217 804944798 210675713 698510517 526137812 699978472 931043963 958283191 599189219 741361181 304255469 311980566 365136386 411060867 230823444 720149739 673683845 917208124 688734625 796704662 587011507 917199091 453874294 509454257 104307816 404049386 670004616 811209320 589736867 613324689 831576844 847453640 445340967 921137374 23573283 632591229 70971170 841333569 664593042 797771136 321770553 764110929 665339450 783704678 837257464 848891205 296852525 710278228 598513344 915428965 587067564 864927581 11476401 323504696 648887210 761782959 973697315 980571806 407535325 659520330 429781406 977483842 673716962 795247108 474303489 610476298 797367449 846811807 170430554 713585276 384854683 704608777 840027814 905011388 346984827 717269714 457122220 832577160 785036122 803797550 437469080 660810161 895195179 978496604 408922731 603380292 726429228 778357248 385465906 761940199 671843419 958166999 512020983 740953058 57801327 306726827 198150565 497861086 771180988 892910340 138622050 316253677 567438079 693254330 358149201 557930558 335282809 584195826 176466965 258585890 838344162 927217144 183207588 365065539 158818139 544942724 853774229 993868483 484189769 701100524 709564668 875086646 717917764 833510576 326863612 512584102 322619923 567969435 443171496 813801190 815338458 964408373 517474989 587176030 95940531 135516584 484834518 775679916 556933989 920327476 597546452 767592985 220357152 777084646 760925931 887607609 64968905 310550445 857632871 903242155 896364486 987680989 54024485 851243891 510589046 813233150 23220955 450150357 597206959 701770670 348575192 668198112 392468944 492821547 905289530 910905644 429302171 934860088 453944587 849304789 540140068 848889144 562908656 990767841 845312818 933198163 493843762 550661338 718333930 824369900 516514358 657621517 297542621 793494998 480779381 865767700 86465290 434543255 586602578 969522114 299445184 831394114 700517431 973011433 532749777 744999921 647145263 960445171 504066871 567583714 279051423 481414429 875146192 935284329 374681809 421858178 229850063 645120588 713693219 959642550 635136439 921712573 797217436 844334105 957697061 996660897 713661553 795762906 875343464 956346407 402004552 581221901 46134843 239949246 558739564 684933948 977480580 997081121 942337077 951370383 482104016 550036813 277295798 727194278 178969638 256831253 600540608 668104931 303655730 342722746 162637229 455958260 816220197 869834982 354967360 835746667 109257874 999330647 907853562 921018568 980417744 984818405 392906393 544638554 787627455 999387594 380678807 678168832 250294991 503782922 369430095 767759931 244484998 271562699 629626788 782432812 456892458 532781509 819035482 941351928 580126042 809731315 802449254 837123629 936036203 962099636 779211271 944332334 11222218 41639037 756379835 844777725 148343680 828483925 107663925 859795357 658680409 931007302 534922288 823398743 200674481 803859250 88489163 494197387 75631042 493733614 48797813 170912049 17209557 115015462 98349359 402210948 265745256 383770890 991754623 993184877 834046180 875325258 887303407 956993057 586093743 824579227 130576265 986265253 936224274 984299055 239421382 851909159 770661087 983839269 635157003 812791428 86134716 215279770 158566720 346065799 289331962 540407108 962608059 993561737 462179905 904581537 763119060 867275833 144114697 966796810 215549753 768490097 164320640 803034646 866516845 884634932 681402853 699846832 819747251 885799725 256646131 511687278 5949062 673024075 444701491 996322968 116745722 591394214 92624443 426650278 232824062 842124825 648612460 737488875 515576319 846650219 314860411 419232075 138382922 333189621 875232264 944796080 10688356 643786685 224271297 310838789 822335603 907953409 489823020 709071444 806082234 941018000 598606074 872709811 72354958 509826325 712337412 773002552 426217700 450981035 363641634 798580002 522365828 650924949 112724117 288275789 833956097 858202585 765479878 941417249 814273216 991708658 147085428 677264200 981985094 984178600 226112431 726106692 131753977 160280659 701863449 812071501 734527365 764935249 482468035 535725748 956660142 993271837 921752527 936963846 265486123 629074712 977192822 991521217 794557663 947808527 158032845 179215654 817323478 998316984 249935209 933079570 261190896 865259320 294850896 397951242 662364050 914366970 360584871 560856270 85478909 869660090 971069948 978188417 987723416 997193262 482940686 689113067 416843388 548845575 442845918 595467413 326071107 677846537 241266293 783494244 852409841 963141406 753037111 960610116 169174229 470567169 545698324 993715131 410438622 792364960 589237450 733362418 150708975 718092669 127533130 735835578 477510497 549804474 51493112 749433103 176842150 394011451 503380284 875634409 513378033 547360514 90331718 795718600 904144379 986208644 104990977 328972916 521517776 590218349 791880707 903202675 684721574 910651714 964144239 970595341 277060580 339599509 318574912 987761768 389736785 560147563 563686563 763618754 626939286 937369691 46236577 49482714 436473552 827298863 720188521 973259056 333362725 827877807 124596483 267299208 933202592 958503864 152083018 537814336 617021126 866771157 49662594 334561920 809208128 959603553 226077972 833668823 475983245 858418423 730456503 984592041 293687495 767828722 497914853 987420788 864382952 903879627 829280789 922875355 790394942 885966839 623829598 960284784 63123173 638232801 269854563 557352214 920541923 983418336 202589904 463683623 516788502 926166412 212360761 306202298 253516485 934517992 915420656 992948864 259651450 523556082 260868579 888723286 422326890 909592400 186227039 870151160 309452084 848836066 397430530 793769922 516894674 996103934 174356162 753346071 664945216 802273177 153323172 851833746 425308116 470962613 894756264 996655223 910667148 923750199 212085824 684462682 807972055 827619535 989073343 999203705 181606123 730886230 974265089 999146000 800733689 883294787 934905495 952981298 204337842 564119601 129252595 506676312 856136151 969911968 697110582 901172365 20924733 843832753 165330441 916368500 148155070 260113706 498360537 936766872 670455658 914180676 591796424 927322522 66135657 906739544 9188361 783580007 206937055 759243661 361548597 907981798 640482374 653278033 808814733 943278876 960641385 971041314 401672522 444618166 707522341 763884312 207088484 336500715 310289157 402148522 483070257 914671850 235610365 760689203 994522771 998032864 141340642 311101471 389481618 736650228 233021726 956534944 408327924 477012335 723577526 911662257 30739183 817865335 752655152 909616846 977176441 989864351 650415251 758124174 380728936 383811585 490750178 509774996 611857914 796743161 506167274 866429581 713505352 863247674 189102435 687102157 381976288 877301626 244480957 278357963 769597523 959345204 731493971 960151535 983369685 993007568 929335564 981748753 787882790 877342340 182238396 925559926 204899442 738036298 878166990 992589076 741559121 888610531 921063758 978978947 258397156 364429290 349900477 843092441 496317804 521871152 649463753 794661589 13098017 940765788 347850588 897169613 275008770 821198352 362631674 970395281 994104355 995782130 371897737 630563292 702644600 957957119 203552521 433356086 703496974 754628911 716816991 778134107 323435864 700726390 183860997 230617426 353231215 527659855 795418274 929970608 683466151 956640586 604898194 672790264 225898517 695042630 290037718 538196026 343252039 748340933 35074493 148451992 44329161 700306585 807154509 936180342 694633959 740943543 896739515 982151481 960569347 993529821 940025987 943521498 309913655 592514222 90121614 728267790 964589087 990272193 573628226 964310296 129590837 229430892 841006162 858790047 36381888 268566429 551711795 816729482 18915392 867119115 524082476 601508559 121612369 347094817 831095287 881825605 244236086 296383567 457379320 579968658 858095125 957595900 148239788 961733140 981590805 988615829 906796109 993630095 266221437 751505014 315562533 792466692 559200674 620122719 803490401 953495078 27345747 652170027 406080349 806076952 278924269 345091383 266727965 439041314 45462300 868821122 980833083 981051538 403978209 426914583 655144944 887405070 619869784 849412005 392218498 445418405 891902758 957280833 426745505 483654400 95919796 241951431 923307875 968657039 826013584 874235788 762816936 814020886 55651820 300858940 87431980 389175844 230771453 620748799 456833409 499667069 216115223 501345657 643632271 799608319 584213616 985818166 334460771 735997988 564547257 870949680 750249532 838562677 112385191 870901867 480808518 960718940 89061674 370772645 552673072 883091417 179260396 437826402 187848441 414195583 531488123 940035818 747447475 890962313 429190267 547686170 214686703 607446738 844105014 997074835 421902268 443493728 630218399 860575441 386031429 887325497 10186566 698578776 129033537 756897140 919509877 923901603 898431175 900075083 901669675 954304835 271039494 632774699 19077032 385023220 684036821 727336525 537499615 651605248 492369147 612874135 610281109 771815257 760395453 808181159 447601278 751800973 653353051 816438577 655678707 919022425 885048461 986383762 325401843 737543187 80182014 184519885 564528378 745935200 912868490 916621971 645771676 859054797 605269871 697733257 647364584 741494770 607152677 651816347 897878994 950701383 605775513 662878367 815570554 914343219 371063131 768373169 893351830 913894727 684706284 856573773 762793456 947836130 600870822 798927311 466828358 606956183 798302189 974778767 813523026 821776884 202744083 490428012 495449614 907951197 820914670 919540633 814558714 963497996 910904258 958071299 50489415 451756093 738206780 762387250 119836864 809880415 635734808 877364640 881889998 991891581 481551487 879010244 142424032 155993143 936462831 955419302 211907188 791565013 403940274 581060388 817904136 907746777 685176539 861817973 3284179 915308363 117661298 376735285 123910435 231179751 622858202 906314232 418657475 743994848 919519015 941927364 827517588 957320751 415287563 958693443 461218503 787922700 379297492 664905282 486660112 713781933 620161238 637421475 549608631 781231364 551507291 765136033 135302630 983711187 700123054 701391523 155702223 292134643 157097316 997052415 671825032 972596378 599132090 903052130 993269174 996005636 861292633 961675953 326065400 364858249 759225215 943164938 737309326 887234357 126938549 167544940 381874435 507468977 298949050 525422395 83344312 290950450 359635675 432653470 130175798 765007961 94992551 474300484 795933113 849855273 502468542 737723813 49928343 808912827 31017171 232563748 281207393 940841400 142894145 352432572 255677253 421397042 785596279 960363124 416979684 989572703 223148595 888433756 323843858 813444335 770132441 949767841 564170185 952979612 29087460 369712980 761690723 876442005 751939125 787603613 856187509 867182412 759993246 981286285 57136387 813137644 16396650 640954714 721467809 896327219 973221387 983916160 267146216 580610546 429065877 539019987 924281866 937214257 90640158 894822954 126988554 577255617 586236064 972249114 319251846 694721899 837216040 880830336 408797060 444983919 817938145 824178608 759333894 818937410 246475753 744301544 526464483 953761288 280461900 744000210 206793873 404541872 182305960 840451140 572438526 795389225 415791747 493746841 630336842 710098519 437499316 512126579 195647509 738413651 120398342 592671747 875981716 932813958 777854717 897262653 754517366 821231934 9468509 863349003 436198895 786066723 609081976 790817165 879231568 953378309 319892994 500259160 343786095 862537545 70315801 233838768 935564905 936351401 696998724 837049197 102542204 175062561 313259307 502409578 517689756 896438999 70882675 388945002 967409100 985864362 32167416 112405569 181708646 327557086 731276548 821134585 128681327 433979905 457893437 824985848 728862601 858341045 329502596 418476813 910612939 927305110 522944394 818083861 481697347 610847101 272700425 650730225 322979615 996430070 633889744 938620371 451907557 535411070 352960732 518134736 869534480 967871436 171764835 368331814 805000985 866294513 389835989 741663714 446785170 461230153 890074039 931701312 418863681 842903922 599235552 938110587 85067982 197010002 295218156 530528438 677368336 723933136 884301718 922112479 224428339 888967457 354321030 949243674 657123025 886816980 846830667 849424435 538576958 902957839 207750064 966042265 56832389 297491461 369428256 525494433 872566946 892904317 236783798 909773534 998916357 999277973 751703439 789240362 10224284 213229512 65741204 599517456 524607599 986595038 581314884 603483122 324490860 933508424 729003824 741467760 43902143 381235364 604111433 873692947 230141285 928606994 886753742 933821475 626411844 879497908 129321254 620425947 311876584 680362453 852102951 855267597 536908777 694125783 208018472 501372087 555429983 699192556 519875381 563713660 374916019 697683251 658544467 766557619 436060354 652801947 825187892 852257431 395838978 688565419 913572916 957275231 413436394 940903259 969692068 971516572 281610398 852853514 202732357 374210204 458088063 774371729 220549760 707040548 723498142 958329059 786702842 966584269 94357472 187801841 926630415 964676052 532456704 867539205 252761991 530941486 221755761 548225567 259128551 324752242 732781410 810033414 479202547 981260078 482663079 647526815 397156740 766846836 340946865 521594487 450567842 475156838 603036631 970669607 394115444 683635542 19490050 740390396 860421601 868769799 881639806 933585427 333829267 349228884 166871894 511513635 707534871 875418218 564503557 915662912 225442784 411071277 285048851 865789339 656412819 903189965 433028453 530646529 243432413 248583821 269438917 869864445 571470036 855802089 485876744 771566702 656959340 720409106 896737838 900608800 465602090 717715043 727213756 929343144 105893894 763059006 93207799 409582324 157219247 256034930 780796027 861171226 54875890 370090513 869728207 943429364 547253128 550272360 51847843 895813024 633243608 782238706 818196301 913761384 972691459 990883665 443235447 611063419 693879 652275819 137845106 613835550 881352805 915611319 162583962 843851048 330225544 616406935 151264226 922931751 735634543 966394559 916699747 973143826 7516804 418948611 459726105 848104817 504499639 770288317 749765593 795368983 56353444 368787485 510437767 684061748 542086833 922308695 917121055 922508572 414559517 603445038 748927344 834953897 142421354 820090192 473314556 479139788 206968579 983689195 543226103 889697006 1869387 259097482 344091106 628914832 727856643 916788427 221321062 505968766 97238525 933769446 211406416 407000122 190474229 888090394 272666757 564313616 998894491 998900109 645683395 801479118 231775398 525103522 78072616 821382633 988301256 994848967 690281110 756437880 169353836 478402102 547011142 942765301 927487244 988961737 559708385 848785829 418052056 964820104 884934221 952209771 455878128 535476727 908032057 909966395 299717930 578228779 714263523 866883764 579315209 941541180 331764022 785525424 215142528 517209542 701138813 713957341 442950561 989713575 27100256 580175094 443781362 925608823 375910984 489492122 615834644 625612039 172316409 721503825 524031249 651855576 990891175 994846902 902377531 985501679 16034060 814483950 427070386 950283756 398404117 812802264 529758626 945899842 38583740 499223042 649077699 933284046 287935533 505286361 719291753 737216757 529665955 561848896 663274856 923279487 500096549 810714470 202880970 622727615 699119655 959360093 453460696 906541144 614829568 871808685 898202333 902797525 182761709 206870807 22550532 44252476 671101180 741544527 891486880 996627019 538127589 788606502 279772577 443727750 315057946 975340586 290118827 489056540 419489496 443553712 461991751 874533896 78083925 736778117 92267359 96857875 175625114 288211127 7214450 613997678 77242888 292006128 516800060 856089584 568939547 570146791 262204481 893300573 242891969 619798750 698467832 719840439 509686921 899490821 888981421 917351345 859732261 968513027 139634402 480077861 420886831 833206924 415552999 847068363 266850589 672793859 322612373 519499398 515141290 855908671 696356310 902698497 729845226 998955855 171537022 995469359 272716971 887101600 431140678 894260162 630007116 944295507 145946644 449305619 641297901 703542577 109079606 948122415 612447194 870133172 897682482 911059547 932427937 990475803 511483514 855577968 499719620 979372492 167972623 911329211 723898468 964171442 310783896 528119160 605001117 628113241 205477607 222587385 73724608 706494835 293392739 962235315 341316900 695290706 954340293 963966551 741459075 957529755 748665925 855610014 419701846 947042107 663487107 665654725 26612087 715438439 84594116 785434188 382660434 996278725 6969715 742588273 410387989 643960929 450342452 936014155 126703501 835210114 123448308 356111253 915047889 984166155 421327619 936443305 947405651 952410386 85753205 351577672 483047851 730271963 637033836 865406928 68165895 924923038 639363885 704010196 446385806 493722547 186501327 555446813 48970822 593352095 752749778 905841390 865098053 995565568 25456165 938037104 879723007 978414364 878542586 982781546 576691267 791994762 55882342 543934201 617490082 802790321 673341105 816634640 627210531 998791699 793196925 890025439 239303598 510704732 771264002 985251377 886647987 973011613 151641411 819579895 843334131 920266716 242021814 586934882 328472988 939333351 324136891 426423911 750487777 833674891 96866068 415003285 194664547 768867467 819019087 950282977 221390815 383779121 679566804 756991985 330782407 500863962 357211019 956478393 609661272 688854110 456962155 562174135 484353353 756825224 926108753 938215606 175191652 542860813 802085258 811069959 629339367 773601773 708287278 950642234 18992153 913522724 868866742 949300598 112714986 292780754 20630921 128684911 174324713 245755672 22317910 232073206 928273969 937294157 110005428 866741013 880091601 909211740 403885533 426795297 361604486 582652017 153863609 594128860 967653450 972623066 833592685 955614165 581277080 909902845 99323661 348649621 453346840 568657754 859603902 933205770 106821706 208810510 319652840 833462682 329271995 903525836 138153795 783444155 227554774 805641549 406707548 539646368 162252572 672324419 865218798 903731120 325720443 592968520 195392649 716540473 922654786 950175659 570026229 619170122 375419848 885453802 923366534 995098606 745766696 985407083 217804994 384401251 476153967 636920251 369186967 707188604 173331248 805987057 199281535 603223108 864810679 871472112 679066141 767226525 997262194 998373538 699562968 893424110 72209390 766010143 894476813 931533753 545563916 714179737 782405332 988058217 764328531 910211246 328855878 979530627 329953594 518476318 621675841 798766128 289531263 468829474 943595591 989314172 893045061 976705848 795930968 969555049 697167678 828474069 850074237 974869504 629450769 981896140 696523721 912383965 917439579 978283200 240794814 400531761 400704507 691709908 764666282 851693394 993164705 996946810 467431755 552115023 19841995 32101900 579382206 667714649 913182077 920911171 818698644 832779888 207430015 912597751 410817392 671849850 746120157 766794554 245852139 739606174 286055784 715392663 549992722 645539218 475461942 615129329 484161868 585934234 447685317 601780128 458921105 668263026 475100810 717663680 896976716 905772591 740493830 914592561 286130285 392166218 344603181 770379584 767955531 899465004 289568201 299991091 536685952 602579677 729734970 796618191 733809292 739585103 893329724 940229950 851665995 912841712 381377161 643646337 539787184 963778139 814363552 944918058 346359545 591490732 366304267 594094011 279492490 672539015 350958870 801306358 148081851 817866005 835520286 968102366 241327822 610026737 489581728 610034307 426620025 709340308 282153813 514074435 178741020 913244604 290588600 532311650 303423356 428029116 333429420 927231119 214054782 234003571 140414552 262993264 685435132 874353819 151543147 908585113 839461622 961449487 502188649 824741295 270956647 770993978 944994503 985344318 196877955 798564862 873041481 975715532 878222752 918966135 772197309 897046171 591012077 998929442 683275636 721381697 836154273 896702803 139662732 922882460 890504764 982576876 564802524 977279527 422567327 819733444 373953677 434272307 893431238 902398370 447436496 798836806 836531322 851571409 73852733 767068336 396219979 573582670 37129586 582171924 830925173 951932793 323690284 367402749 244312986 823324200 343972068 462867892 743114981 797183468 227855354 563668494 815164875 830284232 260664824 427660275 914917504 919673392 192262710 448088717 318828501 805394155 208338141 926114090 802770586 916942826 104543233 647042682 507918549 602249114 670720113 979928992 4337719 610870339 341537358 903851334 990434747 991613463 908996942 995269556 709112860 976835690 134327804 664821556 54048489 83263337 212401810 987310678 684654449 983953316 678439984 732263522 504722796 835063303 314201501 964352692 712442767 883599258 444182954 694236591 106261497 829838850 904627280 966430595 346905114 640484151 504060282 681856432 552551479 709803223 564277950 836111630 552469924 922252009 402207800 527123522 981250703 993498495 522927101 824691126 755752476 920291217 144889072 847936050 591879209 731615236 88128134 426763620 725118707 995929134 817080123 825264962 906057535 981612929 759118833 936746508 773630770 804731504 274104020 641497477 550351876 670485066 940009919 977349448 574496916 684612579 763455534 965601613 269733425 471744573 764849716 797928384 942852885 985051436 432749414 660460672 299034279 646456476 819898702 890464822 776042228 800534479 777518271 926752698 434548890 816443863 659351149 863140898 937965695 986035762 232091102 839547713 910876390 996821816 230117891 915744847 436985382 800681779 77409817 706335325 895369102 907321780 330706480 485171777 561924257 740433415 731811825 865463211 49020059 223766794 817974782 856686997 84815000 880153016 559634574 910309370 245131823 445176861 242552385 573805562 726560876 814910585 119916552 955131743 863010205 949323452 975980280 980419019 366540983 658333735 371825322 586018581 236694988 416055904 469061551 976844697 454294263 843886293 725196486 750882017 885738066 892522352 396172690 846588170 95925272 355810816 358200683 759909857 101590269 159389151 486160402 949408584 164309520 472420050 524628668 909942782 142850163 462262243 888882062 936015930 486831410 491833319 970039113 989218955 129302292 249745109 523628808 989747718 631578510 915350884 599404457 980426422 512970147 889589046 900460209 982900421 374659323 376303604 57369421 673109348 151575487 826120529 579527187 834526564 653858936 676015313 846812592 990804795 843571446 958747074 428422388 542877194 60018605 294622358 585515119 769088283 388405500 655349186 386959988 844465935 458078271 617890031 570888574 720521976 171282821 287870049 106192141 571478100 180553003 450373743 295779609 312758250 209355260 730591528 334386249 538245183 565760128 921661530 886761991 947971682 880090734 984979782 732785750 917022432 941233676 952768451 459985695 634668730 78176287 631163505 873185959 924293005 238465154 508817290 123107610 386399709 795191669 978542460 764654512 894391271 171559551 655492300 428052581 651959083 982759367 993676260 570536506 706667022 987299394 999354520 213233014 313026033 108655083 421508042 783310969 948491111 652941544 706012028 736688819 848651754 350897990 972340363 62788248 583965564 684641231 896825043 791141804 859873557 706899145 715412719 74135611 76537316 462943744 482029781 465802993 814603095 841969260 961997875 513875851 559309928 540775472 910440955 664888941 703409118 164744375 697446880 607452457 693782783 666588076 866842776 852203964 928646236 111452545 633491089 205022011 442805951 923684129 929643245 692964177 943649910 55335921 63087198 816991033 836641370 234330555 594668756 964458312 983672830 939778302 998058336 855058533 998951461 712614875 913493734 540889717 938032114 781737113 880595564 178902215 869165723 389679818 541987874 288335084 614091765 856723016 904479473 455927769 976076488 971672701 988583208 793019506 915773569 688404093 726208796 257874559 955904975 829062255 913528933 995063704 997535821 36379627 434812400 785253316 983655371 606193816 669840555 95351265 324591743 25582149 282158619 989367048 990203426 597176754 952837946 753326950 820771494 818451029 883691467 726013562 781466724 573027002 754634663 456477664 903731566 923560376 972313607 147050387 800737782 281091419 813526468 73677423 795336494 792937246 813544505 942762127 983564622 677220974 842813985 936172714 953906905 842428321 958191739 683360507 796542742 259246980 989418120 297483189 483667704 616587670 647565189 54662668 509306467 694346115 785337359 142316908 340708965 441059549 509360412 522302663 977131672 268299848 782425336 26894212 323704455 266790279 301224943 488898799 982424557 54504996 280213604 28508529 831273771 6869799 380711112 823493145 912469872 110186348 339856322 714034700 733563553 537642419 640257521 310268284 918688533 109227021 128996614 214084057 940613457 83555368 255777131 889110917 889924146 360128904 837526139 215663752 797479373 346795718 447564912 42403449 43553808 26818866 31642432 528399363 640851359 616363553 728990969 736730691 896593377 620427236 922192409 682634127 719857940 228130715 991607721 789678227 961617696 586923730 763179002 402629571 855038217 436002526 840268575 864594997 894946996 348809451 455754513 405452690 959287884 39052273 266302830 253404797 299679541 292472117 829567801 463011384 584095830 228760941 921493163 190893048 418596081 818713870 830670322 853747435 947214627 349673153 869287395 141303395 357856510 416479245 987482361 111132674 727190984 966908607 974993733 183252464 236710492 851895669 881672945 714422422 842885044 314607824 597558967 898293227 965351912 616714419 741456528 230836760 523865603 862788696 878831874 32133802 881525014 263146812 461481916 445201885 703351235 502381826 547378631 869300749 993787660 830974858 976010764 358929154 607096147 69995465 858419942 823076836 844264312 528752163 645336246 44427990 857141785 620982753 855739488 463670804 520995093 626023654 985731300 314861703 747880737 976219747 981140231 993134369 994391998 142257987 968457429 241907243 608215957 100351738 563600526 345833563 704181752 904664543 924859499 834792208 880682554 692396004 966818520 220460763 274247207 521735821 788346830 258353614 995203691 517876257 831804427 518902111 530334124 804767511 925000228 63205835 983025492 335750175 813554927 596393920 632683410 592767160 826787917 113979445 340462720 414135999 604430236 154429569 645471180 193040649 412929509 797950311 911359032 713445107 812380020 687378613 738466387 889036348 931901092 683992421 914415094 25669190 426615051 569184346 740751331 21077292 918530960 22581668 474582240 42450753 603625725 372449178 848599246 554557403 955416273 419453904 648246670 796009652 864715855 398365461 807200557 761985719 991246799 541076369 781767648 237313998 753124766 540504440 699644036 913320407 989098512 75057646 388543225 310183308 682016505 418783209 523842328 946453274 963181872 422382909 984042332 135937985 568694874 391077991 531174466 288671920 664925607 365236175 790882890 869400184 903263394 729156932 842911589 781967908 972127305 441146952 804453378 307219588 771802990 179089594 198207423 501721161 684024146 418417388 951468763 353490997 783802634 640423308 713997933 792017863 887890813 593885544 822632797 919594949 967596682 224018963 547614756 165219010 531005373 452081087 564277593 729775942 979665198 815742851 999021479 872496697 902426198 894150618 957482494 860089830 927991754 431981543 974752854 461559681 662514863 53387833 330051929 811986827 836962434 723949190 862556373 595381301 688600961 201359496 381062299 287238653 341861925 108134426 159906466 273141678 903450904 897291562 927076652 683331560 811950740 386336133 585686270 306485078 706089208 6929333 105885286 83811872 545573030 814907276 990209634 667958852 972765541 93826328 947957135 864472265 952732012 964874887 972103432 255066445 587153611 351721132 662126981 431762526 801585265 83240174 891803478 376553310 376601066 191551177 880119324 398257385 668098178 92645038 839856127 622111936 942960811 980909399 990416810 733890982 790601710 458348449 705306047 178899452 362288534 823150725 937767830 119168593 616867031 491775453 722111253 962492499 984801403 204472977 789889854 508251386 652538671 606232682 879490006 221906073 562791510 887150 900219916 21499232 859024842 547145630 876080108 510123351 772280854 934157036 959323657 666231294 977668472 526585487 689743432 740354448 986085151 254736171 962319361 133567413 882906768 562388851 815032774 399218682 573859183 426315245 451179835 395029438 527805543 993394107 998284629 749749067 892983367 481898468 704714229 643464286 791469545 19772221 927439481 928139840 987115092 820362577 838840730 835627203 838352161 81860636 686372058 727045969 833546217 858246353 862414879 182909486 598561499 662612650 951809223 641360311 733939950 445513588 572501685 136373011 571669697 981866526 995505755 201048415 650801206 532294203 730795065 507258535 606759333 69874087 225884782 763467246 950009550 915070610 931021412 396838120 579469560 993687023 994542743 943284010 973153124 217662370 768063916 580593144 838399166 918471445 952207693 828009736 908556860 161968317 797414145 627191050 751737825 243021236 330156921 95285077 809497449 519607276 865704255 378527646 569564576 906637421 985998997 119334112 123108787 62678656 341595313 919447597 970823169 852693386 919271408 401976756 846529261 199194052 963530926 251889012 633618269 18863694 693044260 431793868 649471402 732776148 736234193 420308522 684771085 298753332 399169666 143180588 809237339 628548021 685889803 154216310 230267832 448546933 610773908 43362489 785990723 860356553 984003965 877186597 900293277 984975450 995848667 570389214 725147824 90182148 698287784 849722242 892457574 239652830 900448224 666309903 753675405 602879165 606353576 799075243 914691203 934849417 981940164 222284077 687626899 827577122 840774350 822713028 921682138 946553517 947964717 973257659 988708384 878311924 978486754 255585813 605293839 407174315 564080826 273982270 497226769 764819052 912027878 908278337 919114365 681202415 944189620 928308506 943542467 304160143 379959890 523247609 886267561 492065980 499192553 911560994 973045085 913419166 934689058 24872830 908569279 926669219 982848680 379652856 763379213 489546441 579799256 851398237 945356743 544817652 566041419 824226429 968497704 392477380 696171985 970726359 978043670 281454616 937328759 902456669 958965060 336112683 901389333 954815264 955661990 812305361 843438613 465175900 509603476 54303607 520217236 643704880 962711927 443914839 766245233 333554544 824837325 305529821 673434694 808833539 965105159 22006763 176897337 421117079 495599069 88255143 895085072 133993184 654497599 318957825 520668568 244830056 422475728 286963452 736798675 926235496 930779005 758336616 758464220 103632528 219155323 129580695 169894262 950974163 990318671 772820879 866517226 54521117 982904104 558643461 927178745 559197339 888459765 505313161 658349946 51284886 748071790 713206387 829083176 282814441 441075449 443559956 989844320 113326147 353985938 291904087 764200494 600782451 761380832 424255303 779565241 424289564 450640408 849727990 870054595 459789425 726726708 532097632 642571451 415316316 944981264 163353820 763631022 451929401 975511977 806922311 932973895 831494780 988188959 640202760 830460633 382338538 643127095 858496074 864442358 500348768 729087685 102548041 657821689 567326189 773389166 890845431 971885441 193687401 673496149 672702982 676995400 543771154 923792950 242107233 850911606 611800225 894576146 424720753 511923345 165841404 773328272 868740962 887202970 437465440 989705089 326000433 921209231 901043567 949173395 108267882 300681045 714091163 929324890 152795079 570443894 160615918 485852519 439989617 621947100 471271098 692894931 215170757 903608838 536477046 899108529 371797746 964358408 627622649 696868702 242530739 500390305 780875546 835923399 400450649 409375320 792750240 965667324 838618822 945302700 397428845 788217768 651195632 927429981 177320759 758333536 599853553 726862707 729486833 744518967 270288440 823031919 219698055 724698959 938207655 985150129 635684968 897484687 105733581 621767169 709051257 900821026 341394304 631053320 616049603 970559365 920498985 981653175 949448896 953384456 842008896 888872646 818662329 907063096 412947421 494708155 222242593 978913411 243368614 275074975 793568662 856586344 769811033 997067185 855509649 917630070 74021985 327528214 893300122 901929084 904833046 968890132 614106677 703622334 547563152 883731434 933909931 962233373 437061121 449743643 603348239 609107290 631864338 827224525 62663549 257294308 191335821 758174998 80973163 177941111 945751942 970181220 129500316 830433736 399530898 803400679 415962238 764272436 961254584 980114692 508929812 714407038 506830349 858630825 956685416 961150314 921210471 973231040 562702141 930655754 961067357 992241241 910796772 966571682 635180638 905083097 724661157 994841254 953793009 973829149 87031318 426460709 640370802 956487065 481174880 899750708 690304062 877173774 305609435 312203588 449223936 871058048 333646052 766134567 462383004 899947461 187869059 475616439 697269930 712978143 649804706 973516484 417382880 895123458 271653806 417077777 960005420 974275347 804096540 901547955 936417278 961482098 77197553 850490152 869018041 938793966 811343051 846571978 818477192 877178022 79730548 701699424 579725759 620632296 304681914 898982178 839117612 898120591 50751896 212873476 345881211 952653541 442610169 679619745 850377675 909052850 321054 606555022 110352289 919435788 250146417 459995403 119983596 338898006 124230547 770538678 29120351 902408080 34956170 173397486 742425973 953148930 494604980 932731565 166708752 924100991 236775157 648295074 367848603 773305901 74287611 313844054 772772655 995959618 49121163 394217131 741088291 778139449 679537810 713640347 529139111 797006546 748824968 994224080 505161589 670095129 779274598 817915254 792143229 801141627 492728909 814719445 444814239 478959514 836526358 971270055 965790935 988573795 774265205 931806197 679125338 788380045 806743308 820317023 175993183 409602925 869973666 880403536 219490093 523702971 693820581 828703677 838564001 914386341 450479448 715771728 612357377 871397492 291035443 701147707 904149394 906270469 242948683 715291688 939238348 947491652 546236226 879255169 471578265 865975189 376615872 614761811 400091362 548136768 386589292 731942835 555689534 751462564 447493033 739928484 601780190 786151480 359247515 832257835 14917825 528446348 519805476 839195441 615090551 935156066 199633937 237339432 406744088 804512526 353892173 441666683 602150271 619430242 283992257 366053764 641691381 699911963 263426395 420155394 487807577 770593087 808551812 866462673 209292124 852772521 375697710 835424412 877481286 955746577 46083619 714512820 500628444 603736508 688946541 835632422 978150811 986386166 105234524 915163701 68609641 969888666 139824689 174806917 536202408 830699418 261032629 414711138 485334903 830699154 523718427 555711414 4329252 280435755 36806285 242233333 46382429 967017471 983815607 988752316 822811826 926496680 770981814 960212738 878934483 929279381 939859780 945093114 205096232 985539513 859238512 946014771 562294117 664358817 237967353 698877126 698214885 892396678 721223190 882783125 714881876 786403912 319691262 672997999 479520459 899119173 768390173 913378627 419793517 758818794 307607615 965721597 259471616 338707706 465892895 534073900 533420795 801820376 269774729 492537586 649520478 749594841 621677165 859756756 878947330 898431423 473414061 622014995 645212546 788393844 840943665 910447800 495806300 917882055 684765859 860379499 899431998 935022309 420811787 537798388 595008782 634915832 12571597 876778110 96355 145365609 263398523 775044776 370156820 942629354 52153573 731219634 265946355 561615045 603068870 828635672 634117170 968083845 887462964 970785153 893279575 984526485 259430379 819782636 397203325 868451443 765261240 998832042 471258191 825988516 660341525 832153276 713823663 939709234 464817583 918288391 408026133 627469603 49079873 739724693 237710666 315229741 83720470 159201188 240105845 937478968 162874616 988182614 672766855 939004906 245120422 872857009 94681697 958705356 30340336 127788268 729128162 982492340 859107831 993346732 168444953 943093750 181213979 262372969 838069519 991659956 655017008 935680047 986184137 991268653 970435560 993373650 461443610 648926528 644554391 927586054 702738416 940278217 19893454 89288914 140224806 759197481 879235377 984369870 678905520 699217452 596479682 904572410 656816952 957741601 854352819 916943819 621928647 781958117 329880560 786500267 489272484 957966316 908766673 991571540 763843645 993467008 542251211 647468188 947934436 992654965 674744071 735546671 291175099 624719818 446366180 913437418 758165467 913350151 552712753 811101890 818202988 939284420 405549513 599915646 831787403 917677960 846742547 866817025 168765935 435076180 936378271 941444594 166298254 975846179 672887140 774395769 725365067 746631994 985901119 994334223 80043680 822951816 900240139 975758584 682782839 709087252 183568849 295304917 424053871 736603577 71303446 235569102 590731606 694237098 644965664 753663107 562366634 959906739 158234169 627070936 116669543 493764074 510171899 654022911 627543862 907705748 870885858 937056333 739625973 788387274 490033039 538555156 526119843 754666688 337198489 824863940 569394574 915099828 869598829 903109152 513335597 614615105 365337428 432045853 622143913 749293734 581540647 970165078 374888073 955063900 237386190 585976694 379001429 539157036 360015671 669652150 897102129 924767933 70533536 318269524 959694442 996262734 921710179 931994541 584507290 890776435 432406414 685760561 866795459 892249995 265404286 991314587 876737638 941473170 829492556 930693537 520749201 975150638 843605403 851122424 347850626 428563434 688943047 822106040 27732850 413048315 741851426 811105592 80696547 652736993 954691291 987380025 408523178 803720005 69200410 776788364 558159943 591038259 347465843 921702577 185664875 587252830 472223717 484969843 81772012 712298113 440381406 607976801 712670558 850634646 239967228 822847374 981618361 984667550 414312060 969575964 97993640 562116568 871002102 975989572 797868148 869526395 491160560 751974982 596111734 661334274 316574130 345902582 600497219 919672928 828969453 835237848 908636779 927035726 585152991 748411668 203774169 363325512 923004274 991842984 702833758 871338628 831662387 973088920 512446290 833462733 932183222 981380499 774399627 972319499 36922279 815941374 640895604 823785948 948578832 987943852 450393936 707275379 4879975 158500985 845531779 898736023 2001086 356110521 818202289 914895147 630585492 781351963 980730004 997158655 22484834 850516550 951063414 982857046 559354236 938040783 617452395 619906218 463208944 928448709 78637067 832469968 806834559 883525828 898115954 957671896 241389439 243583476 824661129 926664480 484801074 987741299 826296620 939364721 168487379 249024670 57802965 545268451 611950368 683706625 623991870 903984713 497757523 591942006 585715078 835476659 144212481 627187811 133509376 182868084 198384766 669291532 511035841 664749896 487031124 501035472 27390064 934423893 636839757 716693784 788820185 934359023 788202992 797920010 490078541 741161682 515179436 905741046 954545180 969824166 686382483 939219335 383602026 959023783 113958834 254259708 514337286 648703913 193193493 479783472 85715721 324196612 970174037 972570123 319575205 732687803 521537222 718283573 347295658 708330560 616705847 992214709 385896282 509996265 193375619 407031697 21360056 108992492 608175382 656672008 123557886 879992480 640437044 689217723 145185713 889072954 835749012 836810735 129109532 197661677 773757220 980871462 229488108 564603312 192603975 300009319 16648838 477125651 791870794 824257036 603563328 927716297 607098378 629904122 723667486 870368009 372011248 531787372 30520799 376069546 372586076 638918204 100728983 279046174 288645570 618716153 145717552 829084321 667953308 971391566 111738794 582378403 990147941 994891056 89351565 872317308 342563888 492467067 487466104 611870888 505988419 778715706 952958110 956281522 170594151 180803724 512576008 724701667 351496685 683456568 520646897 565319187 204897643 862965263 586831649 735869858 320751411 962354922 447303144 591441371 6615947 205914197 215562309 738085998 948010134 956006844 899992538 975399544 814751541 815634683 41977912 245334396 483543473 983911468 193054580 312926734 292928484 365838502 625306146 766939280 135591455 146034200 324912555 751684986 855330277 876329158 962653022 963838341 921295033 977612142 698281938 932145997 43940729 734652673 124154675 354770785 29334303 497924785 433046051 729312998 302565645 877324780 416193264 844090089 792761106 837519415 338641779 379838439 18321152 204970179 947233930 996905319 675728250 962290361 745299793 786811452 66376944 753183094 335652427 518747972 130794420 149570514 339291719 603762275 597442680 777065861 820244305 953108331 553456326 579054772 305802562 727910110 61083630 540936194 376967543 397903263 276916915 583516642 91865461 527456915 316481800 904219814 274618804 807650722 779861599 894496677 298562049 461184751 194543449 908980706 521268774 980171100 300996784 724649707 114811916 482789540 34836028 460149630 912432871 972045802 652914536 966586586 26427667 445332087 845232880 949281453 193851958 912970532 200236932 842477359 110696638 522568986 767884737 800687166 618896599 850841340 370494375 380704575 26861438 356997351 460218779 729751871 258069908 771660854 634213885 719406915 334802348 930903549 893626434 902574822 774795412 978399521 888718796 940142978 743915596 782705151 620712726 651583074 141271883 487699288 433696558 666692496 964434077 979195723 562643893 731278778 403973625 731618674 892194875 999099019 164848849 804862280 522804468 686913130 258366578 322781127 296848333 566510556 554009852 645430874 610578115 898089972 99877049 169122022 505186360 719920886 256172719 564753675 372004660 424826476 707351640 970190830 165906777 581058597 450647832 968637999 937080272 990722448 150317104 487117508 902840619 930115645 898202611 976620340 708089167 827104462 78328385 319510295 549109064 777126379 53859945 888608118 879489452 961881193 449952987 825664458 927865846 935480530 362287630 400833328 60264425 875951821 669108854 785986445 919034258 971312675 564530804 905436415 553326324 738423332 464489859 752182840 484921053 923710238 29656802 411882491 3628863 993510565 356575720 585284220 291632618 430130685 711247498 767604349 893648511 984553093 486164357 921836424 255784624 587076055 634531426 989054809 364205021 807884976 621219157 795132731 905870212 968643353 337983818 533906114 709602391 786724451 505143089 827504111 20025085 89660134 356950266 919999226 524201184 716872107 733417348 942499758 245705693 343303757 748000305 870682963 810778724 978086306 752933472 938677452 464995636 972629040 49579189 812396397 71986143 197302949 43724544 576947621 298131443 348051049 243178595 753911307 188179602 241267215 278028016 749869146 379392781 574070927 147021568 878058822 868150462 875196700 611502315 980378091 265466174 633186422 339139110 750222664 779291925 987917299 906532525 925579525 310407875 408632643 547525417 680476404 419742509 984834332 240709395 291267642 984876360 989838566 614355458 870973712 366463718 845393514 845819701 911654189 93091508 497989839 935712176 983856468 388580768 536194653 153207238 870731554 987054818 989500807 351570287 869847984 127913722 235841078 287748031 320859167 280648433 789080039 315453150 390451180 957614422 998774785 196805420 356324411 184400849 704335499 404249995 953786004 472328927 851382020 645599793 748171304 144715539 298802599 880100393 889886329 944036317 968258876 987322383 992621730 815393588 859564263 143335173 582490391 527021847 966804080 306170417 772409746 443399230 670597810 779362665 808943009 826571208 867891989 465843726 642554722 1207825 592081027 35921718 419437998 824490134 934136337 740202342 952752543 61249867 833872062 219157709 329500500 2204647 532023391 392795079 853853266 273866190 551032593 564628394 908842463 320282002 565311385 266759351 453432918 748838539 896125331 480903262 851614935 119267763 830938154 962007858 985156481 525177183 966538686 265895328 543745626 891320491 917181346 960473942 969143298 518327344 704103014 182837925 970424716 202786054 948824003 403651967 647904020 146175117 525207615 8590286 337901424 681258324 971569653 986284938 986655546 234003172 882888829 46981038 468681360 694086806 794998987 538517296 844243564 595126196 788547009 938820905 966184767 618018143 968778319 290329786 591696691 58156231 862532116 404105964 886089856 247590023 858055678 623452278 895582094 781249687 992366876 234837648 655895251 503467587 679790895 774959570 781843991 459671864 569762742 859174529 954672712 290807425 571178904 824620155 960921449 189391825 784968574 375961883 497512982 563846948 572700567 571973612 625713557 594618477 677839253 778654510 947890600 902618487 965555801 288431745 373259216 363894399 690128697 235209383 585196922 349336887 827525111 361644056 824564172 551375628 834675217 842564590 856802698 882265427 994537635 893837827 906121465 917319529 981615366 885008127 988244770 426544766 557325812 766707 254996298 298934763 825973670 537673125 823743495 436760625 839486199 55546583 749418198 183839012 275519775 863765168 957162923 152863679 396482354 902508245 904327032 587373026 656994168 779071674 835962113 619128744 969802945 264670748 793316139 548566874 965560780 759433309 999178186 290094431 512242416 506673040 801596638 379594114 483680291 843240579 950898841 860212761 888226453 637412616 921537826 567056147 978394517 164138240 834534458 170284244 381464206 782692958 810131962 147242560 550698645 233459192 382353228 80092143 632086881 274008889 798741527 475626202 711602062 40869277 203701413 266117421 443506813 588228826 730514370 201565054 761615694 828020115 972566665 415291670 779408286 627921062 921052430 812012524 874399291 307745483 360698410 319380647 920205378 258352890 337870570 604323992 741622447 362813193 711186548 614965586 779979677 655111431 954178749 20824630 108827103 59386430 427309881 262278265 380937901 157714715 754180881 826255506 857434620 395783007 928803378 601346496 834969139 645815323 983236950 162256014 354889882 714746533 754360475 12967518 580425930 745775501 884829675 200602936 944541164 608553231 949904677 151271481 583099978 424486651 656649783 666986103 849601718 341882942 527660488 529477171 781060831 539465259 809472148 381701525 412913753 871741704 966023141 805917704 965714738 870909967 959894279 922271728 997018138 895801324 998271670 995302635 996964364 441014055 779475670 791839786 798108212 871606819 901681232 653348658 965990332 764232901 845758418 708421742 862412786 655392112 713094731 957312907 963881529 641563077 915646075 892886984 995567993 922096159 970304042 673082824 880784583 309394430 465952652 437332347 822673188 430251472 783030672 363434383 699888011 491389876 699806014 190547581 575176620 387061182 452356928 89437181 607641383 829782038 871346122 583608609 795613683 944427267 975356380 267449527 313642940 277165985 684704720 281301746 592058963 395685446 940070160 994638417 994816027 319855396 932131711 299662182 914071195 831318419 875508316 138732485 526032661 27357939 327941330 672037268 811674332 377178215 536893596 352381949 917781187 176265920 414300736 351300653 472313067 148892106 837121587 352595375 735697205 482438090 895000068 2074023 630899721 135302010 784370810 113965773 602904161 395852922 409767434 513870943 618958351 71331893 572797988 491827118 788108195 336005642 763937342 408418993 791525207 402526458 768520533 853706235 968280884 761691533 924704871 309745514 580233152 789245754 925711798 780078360 895636749 209553627 951916857 256337684 742262358 878870007 938605339 871433542 897676805 769403217 798283529 219834792 404885167 19950139 80132611 342610283 996609106 636490092 970065513 461387842 783570562 766946870 930325700 614907884 925258487 323317088 630406687 205564575 878270673 836612253 955710017 184281262 248961898 258686227 790476249 501274384 709425461 664896440 856748791 119669122 542066210 991787574 995180279 976337615 979867258 964359103 998243466 652940241 729000790 718466352 882259664 576984869 784695419 902180815 994054494 38866337 320627654 52147286 129430973 214703740 488491828 650490010 811538791 912825351 913853334 392959842 991164156 637661555 741335230 170984160 652154462 940330170 982425254 337028051 855769951 189390849 823526478 43227454 968826017 32216916 282689817 289309895 289430784 807697599 963417426 634437764 686805626 104840499 180983225 987870575 996770755 606627006 804484736 42932210 247352498 910309107 945214191 136625536 382767886 683594724 727230392 238051921 904001868 589923813 868251253 254306892 593000174 383403054 735504902 768763785 931543248 290917623 869770387 447733350 843139229 329501556 405044247 226487564 300627949 325761723 684784075 264063002 923737540 91346295 494477972 181228956 200853637 892063245 911087963 622112526 634093350 877946889 963466638 62370739 93073487 651077888 774143226 303993305 707621128 462255423 532286278 566877679 616926723 751209161 882861132 61141184 442705381 443531288 700586882 64225132 405183287 775714759 897752893 701314404 745373032 225460210 794233006 307010448 679087326 138295784 612845761 251244649 728655346 333883771 719441653 263914348 429141178 274499900 577051284 889072859 975752690 719283180 940989072 341550483 972794209 693208150 850727407 19869576 107466732 65697227 405773642 862897048 877545190 16380780 398420180 684066939 809098033 694489529 782386124 644888306 845004810 330032513 460929770 938705952 964903470 710887599 981713918 667626089 992114133 113737126 565647536 7449709 372311703 713080954 845832782 984868409 985307102 576372040 728590362 845484073 881744631 680208253 992124886 47907476 168365029 790717750 927088927 349398366 367866237 947309125 956624524 630537243 796061248 919893351 979538054 803516811 945524976 453535322 917526140 956165963 959241566 613822877 724395049 583412495 597696502 673313949 803969410 191936271 913238433 278304891 467331786 659533391 752095930 767425969 837629150 201436561 820997518 60764306 346977785 436600479 852049736 436872041 481751674 427676291 752790556 646159473 911658467 528137004 689843287 890728859 994044164 929446867 938511944 140333493 967867431 185008603 925938841 646913003 883800497 157936214 555057268 839365072 915609112 909705688 947738524 598861972 967251636 228957651 463943012 855700784 913514960 849778238 941571528 69215873 391038829 840343185 988290450 64493219 332326418 347089949 863006313 708304412 733979925 234537687 684263993 415739930 762291802 75263641 759479586 903745662 953603322 285894343 639641754 225598574 604093095 741098036 946697381 242694409 320066676 527531036 794319418 128206872 825844337 443707479 594438352 861647461 902926987 417991724 837026774 97349000 355527664 261266879 283741581 805353315 876008274 885253102 978689999 73965190 538097538 102693402 119925287 659224978 847162387 652113992 967882217 622889620 951465632 633040409 725961148 367470252 507824488 852216509 853403197 850265429 886782321 942834299 955866480 585702186 789266680 371151254 589432016 274468320 667843498 835656621 923909148 505307018 628164588 64593973 427429791 94831127 692896461 420215276 582499486 25580694 740644092 458938020 835335010 394546178 457044633 888517042 919574210 306202309 413447374 309074608 333186954 81134889 120182276 897295924 991949748 7323838 193526947 367646550 972792702 36380741 398825660 722374495 740145275 672516781 806652127 507680257 804884953 266983364 439013594 339151089 787336562 84160484 895012745 612090046 764070564 28377324 831739189 587577035 912686091 500562149 934726110 221583756 722888882 413252078 949076282 463426258 867409035 738042134 917647568 958759642 966436840 601517255 862053838 169989190 179632041 546809564 602724392 972853191 975304009 625332141 844686311 642049376 707015857 923847241 974529389 971535479 973162649 405953705 661757028 702940765 977574356 162666924 666012345 603218896 954455926 532914141 778852780 689037698 782500595 9707785 326832102 792717378 907958011 498525304 926155255 355064160 855673524 101106185 365275947 59665019 791402921 110612126 120209363 335253435 455278727 221203994 972351800 850604663 992477240 180167492 500601761 5999082 238949249 453279681 566690536 440183050 783087296 255052710 320478603 197703024 476544753 912335322 958330275 986139064 997215522 612066273 774230908 555316226 774492552 131882808 133929559 827901195 871158485 15694963 777096582 705782717 935480072 543194729 840760950 328867583 441066880 77659078 800440125 884983307 991116519 880710458 981445372 168758575 488048472 373976166 438795616 504948230 568961030 348402100 905823590 852819703 926212024 625490093 677510042 784180120 949287625 564643615 666333024 710107497 842018884 363096365 786032591 321821436 957995123 292679542 538396488 634710183 791868627 637730220 813355479 405116018 596672493 435456530 444960749 447460622 981964095 358233269 887870866 457664839 712436289 977718767 994617444 833522796 971598168 115578636 987612350 390962703 497215932 85263186 676745929 74467286 471962087 863444907 920201722 266879736 704080672 205162993 458463805 116337013 800391054 873264153 927018679 872227172 936772513 67394334 279843987 419237128 982888184 228778259 993533569 497055219 607961435 9134911 981795074 311009894 595982096 662996652 751818981 788543969 863056221 626520007 925173802 852045369 992863860 519798671 976303203 822492013 943403513 412811743 765013635 316431765 601940369 548660402 813222737 967081076 989653819 291938488 597318378 804954777 993834652 746091224 903075702 421436876 636421624 183152251 686170012 72679187 629037108 455817131 623579276 643096003 794980880 443881666 813195557 920422918 996488120 399607472 661379908 666800878 848380708 775753164 908260645 948301408 985096800 745286950 943342147 517646194 966799539 718003383 906377569 719370853 960426851 180457537 655094185 43334097 607637293 639440300 930338820 202461981 259430247 123080613 126617543 824581846 851749562 688615911 861593354 852475830 861274231 876379827 980737533 357336591 537035625 108389547 423197743 226641124 372512861 559048123 822953659 942917058 970405721 149259664 493587786 166727576 232299065 170846939 759413324 821124626 907865652 356498112 566180845 20166915 29484139 827186661 853670506 609076490 664709938 561403106 998668429 216215624 677975243 825845894 989143453 316339421 626890713 233692241 427520011 779108268 882463973 687151951 854073313 714362983 968587940 144975556 210967588 276706318 514816532 75498177 248309652 635899014 643884891 475933344 592871039 427386954 645375731 319529816 503574852 836112818 878307255 869743466 979829710 969545597 992278506 449469380 650082282 477602818 574180217 215597737 381609900 432660291 730357178 423829037 681690786 989684163 993646590 569307588 904631149 413599754 476954746 824531402 895896014 733281558 746189333 121244409 569865764 767357976 799002906 510354986 676917705 944213450 990189286 423384479 696905699 530045290 558997893 297165985 993403567 930162379 963683814 873535105 910494924 287703680 438552691 874491820 946988354 325663361 915577339 336454493 412221515 969660767 970953045 465635247 480665371 848659171 948473180 654366816 899043207 564783569 965932803 10968281 471912891 724883948 776795265 765588504 811545355 724287449 976857899 99890357 210192693 408950601 999258737 36543129 885052212 131578656 789061793 966311064 997696365 369161106 631009424 109728764 171399635 73705649 562882520 891503750 896711913 490686782 540274367 63786294 370895340 181720773 514375053 862686878 949564680 942790591 944809418 232437435 237072484 218777861 359999419 135122414 825792614 57665003 841779319 912001582 975809878 427287761 658837861 26635590 715717067 43428224 850503773 519280744 976291592 809491672 868581151 343963229 835501783 588240324 659018921 532333298 557051436 202939826 589697856 179455120 611587801 750891646 901373801 737310844 795932742 609648449 742942903 974316503 987664817 92990724 756687323 714238163 886453696 538223418 628763155 400850576 738774865 934514829 967133495 328313000 967071661 999223450 999240663 489097491 613818795 285043825 806368871 249049558 548872493 795216983 893079001 568730042 625915630 695726561 917422366 535257800 622812694 112680659 260739239 394891118 777978653 273009521 886247428 907412247 931806413 958147565 965420308 946968980 987580441 435558297 689997745 924765485 951877861 247125861 721504809 321986912 730879694 249546796 925593942 759300710 762391221 342686094 397266217 837724951 973094628 868137407 979362857 901970982 919913861 655800117 914302119 374361249 891268104 488406950 936788111 574719432 797329740 220232369 233428225 889548502 973954024 128455912 807528814 245198482 343319481 466546888 555468820 595130067 967568792 412362607 813397645 642494258 864389036 104025524 617144589 225344477 668396562 679050883 925469778 807707705 906597797 937452256 945976371 146416748 431094672 798764433 949362430 481424490 727351458 62323808 364387243 44190760 716089354 984660051 987691052 433426259 882034098 315443037 510526756 494849701 818413182 211862601 755224739 948090536 988197055 557428799 829821646 798504359 991442082 38924164 844103306 866004472 919809042 703224000 725386550 971353508 975855284 924983763 947588379 458008264 547243583 388234423 951611071 191010530 898257927 640319120 731005991 102667387 796761852 893579614 935310765 394258671 915076502 325174458 767658536 521300661 569672878 609390364 831446861 595922497 842811054 702386818 807141189 26493010 615754754 53237647 795259267 735822250 977438091 564203138 740451077 820671605 958672210 973866819 991320607 848544659 978624424 865044630 902534916 691784848 811957036 694632932 989530810 409117741 997896152 746062301 885604069 823530415 877644451 301984121 942965030 868037841 980299469 886357704 923770184 236199666 587922384 187347838 659338241 87112333 471529997 631697254 926289281 924185679 964071124 93874450 829060107 606812605 660672855 221199650 660389540 233806561 942806331 459025625 694540834 852576851 944715613 33625030 823063201 494252040 646108016 345814052 742420538 737815615 822284379 269407669 903506560 183160929 275594272 54868870 72279996 276324802 748634952 522408177 556419966 716676002 733287375 890374725 900419387 473948430 910592433 993738412 996125253 259709583 711481729 927749211 958505269 754974681 879274517 250395812 510536493 882224233 887599581 887775109 898191956 817208066 817856287 29796532 558914034 361415963 963239035 410615920 966720730 29861437 438455923 460984337 928722253 289442274 327308054 213042920 762822361 129030424 253626895 877516863 975958135 359671248 525771965 207379524 790680331 936526807 943529524 469411830 500651582 569984782 652603395 751335113 779086029 740768750 759091202 122593198 236329990 343898395 979885831 102410181 124538409 721361455 819364723 265652810 446320230 681293039 708130636 928675126 938125018 651230440 763512860 808956942 964829050 750019786 934667258 302063480 873261438 581989396 807001644 490024079 647664673 823564937 961698097 25126928 598434332 730613859 783439687 121828827 490048710 832767815 984552996 216350351 358356478 888341818 953944415 393826757 862443787 473386676 786313798 468806563 950799567 842129399 898782545 682451648 748606266 492611218 808635523 208115828 453510545 364674546 898269422 264918992 800855407 664748740 765738614 837703548 940264527 153814252 995429537 849611409 855988353 237489761 355415246 528994480 916927954 87818831 989647580 653918678 754027494 487287200 558509411 658474576 954844575 129099855 164592983 648650848 688849418 69691437 287944692 934935815 954459831 598366742 636852879 988017251 997113782 925131276 934438568 312117152 985299079 804660269 817829982 864281368 955157666 191540612 560300144 951690580 967808781 267478789 293176028 127162509 257216242 795626586 892543062 404048813 888025135 766514138 850475268 526884882 547145798 675646025 907954512 368406294 844098091 363501345 518264049 528080895 969689215 368908892 710768928 592261148 592319776 341446221 800506950 232283388 876894415 610448062 990651004 179923863 555755989 950769727 978953998 650113948 663635907 358753018 919972116 147309355 553979062 149958130 899364949 964016460 975934878 865964772 995938622 563550635 916825142 414259908 845881267 777296474 847288275 736695970 933071349 259972391 341924595 695968253 823264696 936777221 991608814 366406442 929346168 166177046 306191749 482073889 663636610 395522485 783407135 501389554 760747253 478815675 905630005 986462688 997712246 609207390 762481556 59249504 672786407 267525377 327936166 755258691 873513302 774608045 911770612 183638581 995646897 595238721 795514755 271511493 766297412 489878527 883776592 606119075 940740466 451262208 625867247 623735280 824818306 808291612 954242055 331925081 837259678 283896219 874593500 927450426 964175771 859270247 969607505 288526446 810465529 421340051 855116503 14625732 355836899 12038544 437337114 885663344 933817308 758337835 956442821 184839191 656654452 794287041 818836456 27712059 617239754 880186414 906414533 937251426 977732122 662752801 745149039 101182135 338652717 836244677 927945372 344531952 775354756 753852065 963935288 224884241 906944245 576571676 863624347 912405557 926243678 299142381 429173600 614864927 882055661 793993063 971242584 983531057 992370349 817061950 855118890 918042850 952724380 751476230 793712353 340796421 354057954 294732203 601626341 368402296 727290782 908003325 981811429 27003760 97733474 744227465 874329816 961550632 994624805 401764529 516932586 849782357 926102207 95099589 534759484 845938305 861848756 153891862 824632553 841957011 858044851 799974327 891092209 452189688 661525964 913216636 995245778 486533027 867016367 130165929 831713988 575939559 980754500 907241834 989281359 29516738 910098863 814208824 843389221 31213595 772162835 579405599 766424856 612938835 770961981 540102280 743154329 432885217 624015994 74162771 705470684 534037614 688827064 677890220 701169212 222679460 674249664 200949151 326198285 819535413 968797253 350905986 947656022 906027720 989433123 117552310 474863172 139272744 630544005 632155720 720072513 603408044 982263011 483505412 791021464 23040215 357027257 349348224 811046570 976950205 998366398 404602037 520232626 673795019 776983688 841820644 949783683 535989269 593490221 939122560 973436222 973893495 983989582 422472727 931550254 838675715 861564801 250667156 687288122 311786508 977245567 123268182 915309100 444788863 908198782 905987401 989082301 526077812 534880020 675774589 960064969 823283786 864041386 621576788 898217498 300998682 865668459 939356653 945731662 544227962 690000139 116258317 874554356 650850052 746804965 610841024 852199065 646223185 893727513 25038214 721093797 507034221 828590600 781873288 796004691 85887989 888665684 174223778 841320757 144404777 299580330 691191127 772962543 868718761 997984995 68359265 956559272 609971528 855197887 689720370 827204962 837267552 842048623 860790642 916919249 396960088 480966875 902648335 970332448 291960262 638216918 5190488 765433272 843573382 913632753 272898494 841218614 313125788 543948204 139507645 854595194 319077800 344695363 302140865 672481669 300417480 735743607 598283968 818638354 143103961 944128866 189386328 859386274 455512602 825015370 833388288 917717202 239648349 582724159 242634880 521250425 849118934 941130353 470120441 579541960 401058234 748047349 743761522 747039029 225561652 926397385 428975458 643687098 409493771 724130806 739502961 967951166 974124594 993492867 220603799 351433358 957212090 984429058 883139201 897716002 619606468 846851121 182559692 952738769 103085564 380585478 877659386 948567588 393667026 598939466 959817048 965843273 334181866 342547353 751966822 982462450 432214273 770445304 76493566 809650884 54891036 633787673 385461093 959210345 31569151 140628065 628495480 954927817 171623758 940423105 206420395 369936101 979907370 991913099 489400205 535750327 103655177 872983008 646134187 683012777 25539614 404749991 40066220 300009955 546050089 610628956 239569769 809720669 783195870 853342894 783070444 919812288 680398920 969357369 322118028 720143726 955763475 978521608 563040189 784399609 319614597 347415932 334930942 482624261 834854279 940725396 704579918 844796143 961494565 991857303 766156238 817843328 439961313 492661695 215949018 487585863 42271541 941353565 235208281 394078772 290972098 381758725 505835155 669460004 433293597 585950542 174553803 777988620 163387634 851930818 594527195 995135564 450415578 997503283 443160073 787880736 746752151 795374189 246497134 656424386 975617628 984231041 301234445 822130280 732934403 965183618 218538488 543457031 514424161 983809139 189419545 602696962 638395219 983640863 291242532 312942206 442632296 892939289 68579844 866595619 993829397 993898896 831047731 957144403 153192702 447926119 243680253 929904131 240220399 863086241 998175490 998724647 152988451 954926670 383779452 913839922 428886136 526657201 533198392 887654612 391102049 616621141 226172071 271498759 888208573 985928040 510049887 787795205 920892527 934341292 855449399 987738228 624731534 662886671 768582352 919281508 704319876 734715641 149775976 510735380 145221226 640707293 730470923 740687183 953586535 974651302 47930727 511879865 95508128 129096328 80070753 919865639 786997723 920997622 498397259 842439279 43457870 450350256 980339734 988412895 495397519 710546719 965931778 996194242 325826850 650812807 134672575 533638072 240374673 614227720 781417894 872412570 499878881 984854501 756125640 879776451 301007456 600178477 25543981 563723940 182184175 335319460 301131095 745954271 792151873 887150826 663765747 667694730 152273518 569568256 132483844 483153520 258376075 871783826 524176840 935758561 319956912 465620518 362587505 859296855 226006674 382642686 485054819 753605172 687867149 763723246 61238036 581522542 707816816 942362653 734332273 991934517 41636860 375280983 850496772 881923733 481260365 669800695 176571157 817867968 903758170 930156723 901189649 907512297 926028014 926568631 350111761 955823796 10948734 394087150 896551527 944922049 946666733 982982984 239243130 746575690 437993622 989898098 272281835 861227840 771197376 847942582 697191922 987784498 551255550 985284522 720681582 866514091 158610198 717888170 284166542 751094800 582710379 718057349 933707233 977972314 399567614 871852169 753064946 817471275 91127807 410612418 869801768 989283303 606363986 953108777 357988847 542157542 532415971 687850798 480170439 493714976 948521493 979018696 152568830 912843795 572903519 675127888 481511496 853462542 127928508 737080027 230054520 254396055 805756859 946485182 378523592 975563873 666370757 974632545 746603150 972114665 943857083 986118350 162891240 657531847 704693657 722786906 171408438 673955464 777661625 852693113 8427310 491334697 121366100 331392379 399745557 584303512 52643768 208222032 391307700 444425141 472401155 889809004 370183621 593624029 740947607 920960387 816119670 995662757 961137635 988374555 814353791 956615161 505953144 960017602 963932995 983598373 532293071 716184346 40310662 338539801 339073016 762490792 574724800 635928348 357950175 513174153 808434852 894407641 479558740 946998929 834113906 872906195 565473866 917785294 649248008 859132557 342473676 434685708 9962477 201397716 44798488 265165012 271404629 459400091 113873589 951253356 219151379 960953137 672188897 938404258 231087439 244931925 579955834 767309961 938589437 938769817 247458119 985866879 526351006 985293658 748333883 943238404 167433485 416936856 193127426 238766430 369915504 898149209 667001832 831500356 828026248 832787965 827657583 943505327 306874021 645888672 432865624 754751649 439640933 565091717 664429100 967086756 883301715 963551838 471183407 771714230 346761659 762681472 304708007 946889042 565126986 967694257 976310021 993360699 783973651 913543496 550014019 981493861 867379168 895875356 137891565 400724430 893592668 966128163 665936350 996286223 568325794 756773656 483382243 827237619 616866244 855726961 22107345 840670640 389102264 796243666 3484346 562088451 560028552 660183358 983510574 984571525 818738644 869879447 693446897 850547669 378119960 738924194 711246388 755136787 501002598 870289346 710873614 885763528 931159628 970853506 675593642 890346415 750622749 793534124 843568283 960163035 822334904 828860878 810638476 982787592 971606733 996039924 985851211 990668852 187064877 272113190 252372410 686257653 990923165 992898514 903750870 913282769 120921360 997155704 824194517 989908325 431250378 780547986 671252037 792393585 421252379 700056579 365394468 804456678 28668115 570583735 605038709 899198274 726648427 832326608 234314349 633377181 87785851 170954856 582960380 828612053 395914177 893182322 178860341 729536335 251329318 630044642 378817584 616218812 409975195 693677745 827962568 998244345 887220129 916534690 904939917 907018924 743482589 949410444 891053868 904830885 29277036 202929125 993117231 995278885 167367229 725915408 594774849 788679003 684800861 880910668 653063673 843541564 367231830 388432618 574762810 808754749 579635689 776018077 101377932 820498722 525614655 848784872 195228589 817570681 926321705 987348668 968609796 969137661 607801106 803061163 592243935 961104212 489031793 594595019 164738101 783471726 700571911 777744693 415697924 586588732 364857021 465277113 298758994 355927951 46784991 400986924 452711103 509767093 276432074 666530605 769251530 901169805 836204218 977730912 191142409 811144650 718513876 829783842 404116523 538686293 933722549 988309337 800714898 978259234 371849800 836784512 305961293 455029120 751968458 756274010 992736279 994261536 762303411 810805235 116205731 351849912 889559680 927431574 69528054 621469277 71245909 288682164 13582410 139670433 317005376 923352234 166224639 896240843 362931294 749867817 875212673 967868702 46431403 556698476 210735532 674546200 911732330 927557995 648539366 991265736 318999005 449116111 147761313 178502222 277549978 509774115 730158062 756766328 629467999 917735228 640087708 963596080 223784371 775567086 971128514 982020129 692080284 881349532 942022863 960659321 425834723 803117499 39845994 517714628 693964677 798541326 359537285 974641001 592542187 611734158 130941276 971658228 384748160 759292716 784800832 870735285 863037262 995409226 232096393 726780966 514608687 997239850 913067218 976625063 376400349 582381584 812264874 923446642 8468139 908692414 781937632 845357086 850956770 921154194 959823751 963728766 912159760 965088345 10361087 400668539 718863275 977449015 67150644 151612574 737522421 737829322 474907774 849887989 981446590 985299191 396806971 736279967 864234740 888585089 494402824 666134155 792312481 887658955 761964568 785024375 781981632 855730219 703261691 806805563 409289896 915665088 648470367 655237389 455216942 541693047 111867052 422392834 61488209 672482659 373781133 976704471 120648715 285942202 818932010 853841129 486212199 771803712 368208920 675977277 202078447 702027255 606200171 835428540 158349511 546289778 591318979 737663234 161881273 274661977 716965362 856033521 914250631 980106006 829924178 987935849 9084473 606498364 827322900 943999517 185069039 241602602 669686636 991631596 126660450 888484712 462829286 594890593 387640620 649926480 570624451 662995178 100639612 695965036 904137692 910980999 876458728 940894223 915625862 951037952 828921174 833590281 472708167 816233096 573878221 676558260 826626601 845869924 140970977 727372166 960835035 998066438 874108838 942803720 62655011 98398428 437263455 586474875 501080093 964074099 907355323 930070836 414310655 434043164 656003932 859443814 659357356 825982260 365452378 476766894 653455324 816155611 227212963 299293163 600382532 933891333 826902256 884559796 718488589 745075222 698695966 702821274 623464769 638539341 279712513 372194388 767636902 827007684 386879414 546763343 70897503 276433081 160504294 342046297 783229864 923298064 718998725 732559911 612089232 959098307 72998287 754081900 616847874 953339002 505255053 676592368 972882039 994287815 88431798 270451917 483979772 647514353 49297239 549596133 187432017 686321337 567963246 862087312 213171604 634951130 44775151 163485149 598026757 831930849 708164091 901531566 637994617 751710997 227885938 661425122 612543413 839624422 150841604 665872962 519698440 855204891 449203214 788001279 88405028 512475908 978071866 982935371 877035275 938143490 814887766 994528450 751276179 940378712 900786344 978492771 130917035 192258942 739685015 804421308 334873539 735292958 477196654 911120001 779550327 831535739 938652280 956319611 827385675 902798172 553175295 607475921 472057146 852486362 874524196 935048967 260748618 381159414 644868423 797844502 790225871 886178566 212489568 966454270 331782981 910074332 877565448 984714375 108569065 460974719 245373393 331098931 178125679 255405512 472197725 503340499 720780813 819815977 5504127 524975537 238090607 838362580 721833903 797596808 505677319 922824193 316592622 408854995 258333935 898546422 255743284 898382769 722010217 973320265 475868013 637775353 113096518 388872986 777210511 826855504 946641104 993382354 163817377 911254741 523270035 875819460 827203998 944373370 461680256 903256763 733944324 818494278 355869711 711048442 133123448 898013753 273322112 457916531 336503320 933575472 323254713 327419370 457272431 671334600 606842989 900400053 290880206 922488755 585134569 878622108 127341955 728891344 319152615 971150388 189968820 726599701 8136722 429628808 991336020 996939989 486659538 672782221 198499162 407081245 953085380 978714612 861681121 970172558 268991426 676609955 127266560 624139062 583885765 852762511 170448528 771331921 372704505 992976087 515754555 720223860 190581455 750181567 754942460 826452990 529962370 677516020 960411881 988979975 350606860 549125602 186086872 739969780 25795539 703747844 537241368 759183052 498497289 597798239 20485569 134574173 446825813 901625175 301293737 655883196 608084698 974425308 331701961 435306010 208489644 849754940 291389034 562547149 716288709 848671261 100033461 646233819 254360263 960484937 778477329 871428185 320994758 906879062 830487441 900844295 610779431 938292855 162260259 375770204 137480978 393507891 557801296 738554987 452593629 882876616 557725279 710806859 561624428 641147486 726264221 952519495 215584712 551062978 216343859 245499158 860158614 968339897 805528301 849860892 944062795 975553247 185129409 670179620 17081916 72135090 708363456 790767136 271983795 788441686 497750755 539017271 177736236 291405308 432799526 997614366 745748728 870921681 312547786 595346250 430097545 862963280 987204189 992768404 721857742 930548553 544880985 743417544 504219904 733491900 241727532 695444420 718206754 831613471 107586383 636013430 997211574 998358262 619105209 759553212 426048830 715891931 892600650 986643456 811153688 964473828 148390809 164090888 701608763 864305976 948432974 974998327 920117001 949436530 467242536 568621621 642504995 750631063 942177751 999144490 405974471 610383549 834789749 943017180 109020294 755238536 415719422 445554640 87058910 403752394 119097421 563342383 111278897 859961355 689199575 789983276 75958065 593151508 887631994 932673306 309137229 784577171 357743202 377136400 996247182 997672159 200233917 644693419 89028069 238152750 303211619 950683197 889881633 901186013 490496909 896769767 753768353 792473544 627532756 638041536 461668530 779057174 979660382 995590112 407656372 514076616 862915021 982091647 114076293 958658076 499638921 599632905 915342721 962968642 643042331 735691370 417936352 965509677 293806566 807920018 501946872 513030419 747968122 842838481 213322781 233011491 193494872 564995131 704933967 736576100 84849755 136224976 426289155 674978274 427398718 941771063 407078970 425388176 434926960 990181840 562936319 690874738 533638584 887134702 170130710 886464211 456479624 503681921 575673175 857993411 632515288 858129637 88330894 447123347 435512573 784099372 434463309 727972315 264489564 813562778 215742911 962404190 107765731 564614579 433591748 467078357 84511114 484035263 474936691 824992902 63917869 921673401 863131612 976485404 276790388 793621366 626089526 696935500 374365259 442964843 789521831 970734860 538799570 917912296 588078928 952049541 905787134 975449059 475087617 775388763 383522383 776927242 643751022 709130465 940727245 944606333 720415902 979006506 819717509 994579166 200189254 824121572 697972313 939658948 585524359 913428537 441956757 636367582 999121873 999240008 659323511 909492985 553189953 751027343 141478198 327540987 724086974 815235611 552938464 990512001 639946662 662972167 274536046 770452548 670555499 903571945 301905342 591467327 887082868 943914125 213983975 812919378 204258629 673983882 552154388 757424902 619514644 715771708 424177312 929843061 657348873 658704410 742456395 852639037 308047338 630886917 253522113 695624676 238220350 619141957 137879309 535414945 884285065 935266028 397067046 790675301 194518539 690875770 660557740 917370780 251312673 453429648 257046083 352768722 595524026 679476230 905045484 969546225 163378861 556345920 841069864 852407948 890638390 976053934 806257586 939828594 284560937 828693478 509627265 892682945 409851752 691550210 487571791 818786491 923595953 946160588 281514105 916750863 149000678 837546603 17659336 19419343 401947463 651963287 461347371 729254888 555516887 692536230 226705874 325432486 391652150 822570942 502729265 942625105 962003833 965406063 961294807 968434542 712066470 788424567 51849841 809109932 906261136 948274394 648958985 662129154 859791291 868553590 748720825 959741138 593629594 917272538 990128615 999069810 355662809 715294163 283285816 951510213 956309258 982102277 675120663 820532000 144183202 972704068 353180569 490384625 878791495 912849300 640515654 837626883 599693970 968182380 912391336 938505791 782978831 940276490 812434206 960209603 441438900 873277753 774056726 989564617 225833545 917131937 711738576 828053404 864387630 977516856 249224019 777104111 603916012 684717123 919410781 954702508 393755519 724076220 529693877 737305647 648995514 909759175 134422919 166871599 264761958 868462371 953964228 972232249 960991064 969335338 114251455 782057108 978005022 985571992 170595842 234651320 586381942 746917471 268904801 936968768 578690562 624558398 897735002 989269376 327056869 914996911 742975862 981577751 564615523 860353657 464555232 720124376 661616645 877437957 218629641 759666705 643714429 755777838 171619225 870149670 901372151 988691220 508989805 579522167 152568429 963120898 849447805 964291277 974905435 981832090 567625081 628230967 823028750 854726679 107856069 482851304 992065985 994574771 155912489 604286554 13360547 522480762 81123105 692868091 566328156 804128148 729512455 881896315 658815077 812308190 966410680 993888867 711733022 963832546 547126469 663851727 68095198 615997289 702499452 818679651 297927738 745662066 708134018 734548009 890144590 998492067 840760800 893429123 521748968 628937805 929801581 990909256 936282498 975635105 801158118 833616666 511479638 590657792 600642300 702013690 570382153 812754345 1322797 532067028 197571720 617685882 961476546 964475469 820942001 978262445 185752235 218476505 469601564 881768015 347192152 584355436 997839043 998156089 989803520 990658173 939169786 985752095 494186663 997643591 658380994 759846023 649479812 962112223 856513862 956532243 816140447 828760461 379785960 795618939 916233893 988159923 534891100 965530477 878154930 951974982 882875651 935175041 280559501 647814115 234077435 980845208 37592065 970999373 87181103 430241917 780710851 781801779 13350622 254101427 882912322 949315134 860369034 952202910 799605041 974268721 629243424 854296403 195987742 228942355 128940478 875117154 992792400 994026335 472607012 862423326 758524308 897227816 96474581 157213388 286307355 518001720 774624485 981504045 287759837 420213495 57457966 214347443 955874083 998650847 428400402 650275107 470649907 808161714 730911843 749670326 312905359 849944138 352700062 458580657 634796940 803300683 881993907 970262214 33261688 645068514 778303853 973700690 705614430 993490770 637110230 957857604 879451339 908871167 687994818 700593128 947020912 998017656 889286688 945460616 501240203 895097088 443354691 588903087 943471284 969351018 81057011 649174978 233143412 347594559 283680042 422235694 478275295 939620604 210056625 388147323 623202411 697407304 720371986 729780006 179467940 736482458 365260472 636450800 101647097 700679056 417351167 485574230 58714307 848947182 458964208 531381322 619045942 752567353 825363708 889964006 438008736 748910625 214810618 904355396 106278566 128535985 47761689 770798069 616566878 794551016 63677515 286478583 68285680 458087742 247236044 723707596 768479122 938946329 62109605 454192031 665945828 955453394 355771409 492682280 338864836 477171325 201574195 841417426 985878689 993985081 896596132 954531871 133601765 927628241 886226794 938177843 425629977 726985257 204138859 524247989 62718137 996871593 99016364 465679189 65008456 453744849 145025057 944441378 672434199 834018721 36666581 806060636 627204735 730195986 734764471 827268378 548174668 764919088 707492072 841317667 552061663 882929328 92125636 389696616 961955946 967830374 776663698 851477137 117995380 123618919 820964555 881285808 472816181 485244316 644710546 796239380 682560638 719303925 256818606 679159600 327175520 586107919 369909113 568578544 275774796 520929608 88882726 130274862 384608134 771452385 763289943 838252039 461243515 836801191 342699869 420520103 846005930 988058388 288625496 319567144 128140812 972351441 39657760 200767485 21363885 41142129 250425832 576323920 544321912 878795803 99192920 854132163 589406676 762872568 178189105 794486588 259114987 744523712 566252337 779757180 487075246 620025746 150968776 719060337 209491796 963365261 298500840 767765493 533143599 713350283 813185906 914266296 296916032 355522755 726376523 962503083 297653548 643028898 838116472 838454042 738827458 744493203 372243882 758857543 649746931 940126900 991679665 994164744 740767507 883542068 92576915 888364683 404978035 580216211 575689106 911128623 221280869 806454836 737169042 825364692 650164076 875214667 341820083 806826337 228087433 366569219 424784524 939579174 368945652 532862612 853954505 890380233 773044835 985498171 576675037 690204772 108870561 625256353 774243994 913913308 870653936 992407730 72103595 746486886 143975007 982926425 231106227 323553433 200325678 718250983 159438866 225978049 231630003 267676559 187766595 389117826 668199615 712943089 608402518 664833675 84020928 266299764 149181738 517430401 707932532 762762985 463366759 887291330 325829169 855984219 126285543 502012217 791074761 847393092 851930775 928472758 30575154 806549406 856899023 867255715 195711129 752780529 890288788 913449413 228752902 259148666 692569304 854977341 316350775 861259846 826742502 857711923 595782559 803404177 814373233 993516546 654362151 974166313 165407016 521536904 872006376 987073494 565474600 738018764 79259437 136715763 561302138 839547251 951759666 979240669 196907183 600970054 88236592 113437624 553185939 644012425 397441571 922521809 480217912 534364617 280117932 647999694 465819934 764876582 356443905 581717719 137471316 458666937 4554950 437188531 360244362 879710210 607113191 956348461 409815871 858237963 552101164 843546318 401608361 531508945 26254510 209753322 971970642 997154237 819414404 859081516 191196368 694740556 502646115 835676850 530595131 973798436 121781066 804149058 298905422 879992191 601259518 637124066 773443315 939746150 381342912 908820476 359958562 465601429 206859231 739880423 870836372 939213679 552379821 894997956 67735561 932548162 645991171 787483276 775271119 931561799 869821107 887892124 397045156 422344982 660422176 766479280 293122035 792736876 772508560 803153166 968962790 983279638 707325089 809224051 648959072 732257850 212540969 787432737 51371698 382391395 228517765 852036266 635508606 786752748 838163582 875613812 865186535 981432487 996742780 997716254 323767097 721550920 785323777 971008638 164761548 407576502 501758320 627786702 285090232 327441034 628302919 736442086 761569628 858325190 676580204 897816820 492217047 495566538 21724427 369300179 400812765 544671268 398734996 666538541 683807576 930567104 412371009 779400227 277926921 880355407 197739771 719551424 734972078 791863602 825785969 951034774 850760326 963579460 763286492 991442015 480359546 797593470 352616740 578277173 22308869 223195715 891819760 921135688 772079746 823325746 488702751 997159683 855512708 885204648 658812340 734695290 618436261 824849692 992855573 994071439 401452107 941646204 281631861 891994546 912579610 970426901 622151795 923607636 764413502 766587705 177070699 633708422 80862853 929042688 653401493 672713284 111777882 421798327 269546429 387584330 728153525 820638123 634902337 667095522 293982302 949118431 608847116 931432753 189998436 979743435 454804368 877593917 884120746 890700495 301054464 802063224 232256330 758051373 123185980 487202305 915415744 985543129 919055841 925168060 266018420 736232426 539821775 818482561 823920760 997246972 220389975 573764191 969709675 986162679 485440629 745119613 865554934 969501320 430841528 743096008 54100491 565816997 745425419 895715484 973938832 977247614 771731125 883002032 669120387 956555775 178377285 734084128 311817415 474073460 45582017 110734004 303469889 498720749 269049757 285119366 548240445 977630672 777104517 953100799 246145008 520277227 478892497 774398898 814457098 872674418 797750182 863481838 495792023 738130183 119221834 969490370 123464487 960636108 929801171 999131293 587581171 729873693 58191276 748324531 594308237 779460795 767999000 917099619 731470211 906364457 75911929 515233574 479020086 968235475 943124767 949262407 75923084 970470646 369653212 925233652 101813296 772913280 543901600 897907551 156074485 422417187 734756428 804058642 508932706 822438930 200358233 768258616 419187591 716447790 956311610 986763906 652229044 720679928 795127223 944497321 785484194 964018740 300587741 811340375 926728140 981110038 250648191 777245371 208044210 889876260 924737046 963729657 295420697 708200625 325899392 511796034 47842021 708486704 158831545 500458226 199189334 461246821 140793127 490135921 759478294 882638016 442716372 763388148 914143999 935744796 147142336 771575922 756978469 806321805 563545320 985038817 989051889 995675658 691152225 716998186 92968315 916911476 79034199 349774164 856327342 904923459 775550818 868502262 308996857 599256890 755627448 993582916 39341857 923918409 282155814 776147011 727783725 956015871 644432539 682031356 469433710 781632531 552765552 777105285 111984054 267670873 476987539 584007362 355206435 700341953 224469254 679919621 760961022 902216028 41871902 328435354 134223823 146506914 364918866 755911278 804443463 818224620 747090584 898313410 593835336 658996374 41162897 631293920 811785054 907857320 665616144 895609541 602839786 634416599 376646265 917770917 798737754 989262567 302590052 471077694 867431861 924969477 961017711 966299429 891598529 983849586 498358397 715949537 23449914 132915154 148179610 482400065 8901110 929737147 150874580 573511861 396572750 821432005 204975045 387328601 517534058 722236948 802474788 872258841 644838299 851549612 156961994 397712223 445005573 767913627 665292263 852643547 332739717 334762336 311081874 994288542 972723956 977221042 331662517 909857383 22444768 190274538 43748736 172928551 666298587 670391970 331344623 980305780 538811940 842917033 537931540 677622800 767611434 857627774 267773872 544261175 701626880 887057107 140905906 407735361 390082719 668877860 84643003 974163067 330861389 427008926 246390662 931048036 913597273 979132840 728578838 755858090 424769560 880547834 203538510 685478735 128248746 794145923 455731953 978986968 296525413 515677209 707009342 719050370 490223838 982610406 754957684 881070188 917050907 936453909 992818327 995981399 915536770 973085730 396309093 678138094 74533557 779448077 439971016 916998444 380319382 909952033 240824682 380255232 208072807 689616340 652074893 657459709 924810330 982597999 238157677 626842299 952856219 990862049 111839668 648580792 698131176 737433155 298135164 482317265 472341492 671856892 566341773 838498593 271631530 512401486 328112596 810695481 38433987 568804350 961364595 981312873 78370333 814770336 130809000 524684802 320005237 798175262 678700019 723857546 278960476 644245617 926454063 980962354 564513914 737209118 40100884 979838392 805410687 837907640 418724149 636303294 302353436 994966458 701958589 822633076 573278074 622096439 195164455 356519947 45731123 583523637 612079600 790027751 698065467 796666181 285095278 827906072 411257373 807280033 988332127 991170611 880511254 907134795 736391073 796723200 982433476 985338466 25451399 984537397 102552276 803108826 789808447 852010577 289960180 455449317 531003374 760670470 122165035 779965712 17204631 424243245 412090674 561643196 992247436 996813542 8571835 225276668 589064892 995574197 535030896 914946989 867812580 939301522 368483784 493379702 587051946 998323699 982401000 990522059 851821661 958952704 263837821 420824755 445539455 786715981 444825748 685924340 828970005 917611839 760580489 997113473 649288140 728971191 536515293 629446295 712218406 949526902 755673985 822522208 206546041 985174563 673936889 974248926 614151349 753165491 310955394 432569432 617757522 725515547 384881647 408114504 135366352 305707134 994849528 998462117 550679623 758807334 645985054 674970941 754357872 867268921 704456706 882302285 295376373 368875897 71690270 331293078 355084582 818972001 176214186 625968471 583993655 742169383 105102947 359879582 623532299 722414207 586105885 992684932 992112088 996101440 774580055 851582063 262972497 820567971 624309959 941072019 170218472 371300729 196049083 246916262 231157112 830350818 71323256 205603906 502575849 771375807 963497082 990596298 858901746 870408875 283018005 714654393 258259736 624991714 377536120 412741158 326359079 762293668 982294451 988945176 9369393 229859060 155479616 828611152 693153801 841117018 104099042 670131485 44337802 625717971 280689412 601812063 828502342 908884775 437975901 765560128 989336046 997196486 738702017 756469989 871972514 935343423 190449005 910102272 99036547 371244050 339100933 761297919 388142309 982499697 695568779 724616383 362171681 792090162 1796906 947293545 433422259 725756988 189173945 656691569 351913386 558528061 9300526 138490531 958570037 966804855 558379003 600758729 989128435 998325617 392503747 771153586 860781624 966042625 385937387 476935607 719591038 815721013 750940389 786749151 406596282 963355170 21997157 556673220 988174113 996117839 441404435 630944192 880288608 978496243 235039577 717315288 72398034 412332169 36479246 855981307 631021192 649064990 134017764 883556599 96960639 734178974 887224692 959017856 587783805 986592002 108244940 806692632 534474811 962971645 624661690 642135749 280809192 847828237 782865635 852743219 821718507 957209283 282489973 407665648 471595838 474476530 954228252 973038099 594045210 693708713 822406410 967308811 417916713 701614844 835300314 896620110 529668248 631362507 952413574 973262117 782560532 987452486 501319715 992342871 213091929 236613660 475619201 868604133 929095087 964831075 41001297 495157810 667346122 782023462 19989889 689698627 773783188 882131531 403121388 666341045 363908559 541753588 77196408 493845120 388386357 782116375 907357917 990173022 559795998 977843655 263821665 672046261 769146823 993462686 464472639 932050298 625503968 950464625 313725115 881179604 336284294 478284869 358011402 903596907 91082196 641875214 247591346 834359535 461522802 802921575 434344219 590933152 686873087 871093032 759562141 922532629 917694526 921260161 747492378 937108472 95916057 350935929 75323144 593982328 746053012 988305623 309146944 463881259 704954137 831472057 17123046 786285254 376473380 411403528 44435349 644921509 285305722 772109703 335807213 886981288 359661230 491639342 161829626 185355067 165959059 431051302 710603829 787935181 527580508 606692639 16473806 179202305 476596392 726820344 419526564 501206558 850702691 962047107 879683836 941688525 106963207 932652612 332053198 486847903 608751539 675634986 260354982 513982533 895297304 990380122 901892442 928433256 312565046 639700920 965281412 998933248 356248533 786255215 593700812 675378541 603189168 832140415 258324213 418606987 737854288 959812053 985872523 992610612 827852628 985387812 316939947 564900216 38088245 335132718 239893386 899560128 407006350 759519845 821626296 858260028 785733508 939179748 21331496 721584297 249317534 941985429 109039843 775151044 189574075 946992048 515852355 963055973 812396486 958416861 285506375 354756376 461340671 493207330 588026974 906519720 223943152 893948749 918387170 989717562 68701494 947048523 775775727 898860010 763606482 822183602 761434651 781195077 220341811 609452942 848442707 943852999 641773440 867175721 409183371 862219769 51759184 915109877 160411262 630900457 228666903 777759648 890431519 942899759 802219313 964292917 683561903 979316499 148648018 517526385 964627677 975269423 215574428 590163827 747298310 876325072 567873670 821469869 675738117 846617126 769238399 988865577 529390046 988371343 275535820 789226697 374131256 527371330 606350545 842731721 523364297 855978569 445709027 880859814 443825688 882111218 759532950 953396440 58648834 693360176 948580236 951360884 12231860 173238334 272866725 510334221 201218540 848549237 271758722 695102709 695175521 943291345 952671100 965932793 984433186 992123501 733317092 846794937 489337636 988006104 779141279 958536425 956341410 985503008 530733245 808826044 157950204 365353779 488969978 630909443 812238229 820249222 203235345 794372955 796338986 922877710 898298051 967809551 373039103 997317278 200055421 534154377 119360345 928600233 563006187 673180176 7626998 60733702 235726703 306323397 77563522 850517064 108995994 279803594 988463788 988979014 335790708 870957235 96495725 880757044 41624870 229755596 293479431 823809718 604704014 917143601 814880070 944877972 284123033 426712000 303363418 424080332 934848314 962856458 453692657 520986611 196911944 847978817 411585281 912753923 686195497 737448347 43339709 619640631 440787560 877272130 130207226 612280883 116690675 939698664 629197854 796278158 175973814 502399418 57463536 979837616 806401070 828521964 658208638 694074809 722683625 752487942 490812021 748045031 60749335 758630495 71555769 443809731 783401417 802672591 134813068 392876179 645310712 862857764 880731673 925063448 132479605 269908208 836747296 941244819 634370197 700050921 351001307 458078436 379629414 382592876 2320155 697538044 885012561 956549923 643903834 759946383 477008495 539260356 620983684 722121327 508645376 827085919 6382699 175395982 98180942 351208339 498447265 631869825 451700973 522068354 480948801 847479548 73838816 871466126 735235307 892599562 107144225 177351066 689764354 831131385 509167524 554829969 29844771 249989436 384279479 598855357 834228379 981368579 151597809 614730048 255943916 998893675 191910736 762145445 238609131 717648198 530306378 659326029 399957125 443638038 645331781 940777198 901824753 954897412 483039384 804676545 328024408 928833458 810648987 961113114 893242605 969270168 531843465 957202965 342712512 462967822 502044497 766808162 853140855 861145674 25721253 909853307 625352755 648518247 826382256 876453300 217967340 973154134 796307724 799961014 725243791 795233781 128884185 991070681 983370398 985240282 520273624 662089841 821869761 981484099 440560081 678382411 938705415 959458010 515739551 749364345 134085095 802497645 878127705 981772870 180049891 729499349 512655434 615243855 79756561 155110015 974550210 987957331 110965663 194050578 243205238 771957279 975402125 990453921 177120401 273007576 120353864 161944751 346921771 963897036 323923629 940143427 541470695 690145238 364900177 870122488 282860968 328020578 994177132 999086020 58081749 733805127 570655658 949064434 51824497 839301639 894744193 963381474 833778151 911053955 386261793 828364167 636650081 913931090 331311985 655173763 920671358 962641010 202453498 975847324 829190453 840532227 352124786 361771801 882568592 922889405 314393417 621956864 774433496 863026533 845353643 865701389 500949240 572513553 231902767 355858825 213455830 554340901 580595925 715422832 780900172 900385790 984779064 988733216 671293838 951442945 102146785 381532702 749205293 762211785 582182435 988630701 45410573 799459853 635201819 741056234 801144011 975358362 589223035 767247502 222314888 774736648 834893347 888256074 298943840 364595670 227374811 706965089 636202990 742285812 259637649 670740193 646749738 821942817 655061086 798523711 192848433 244303023 320143564 922759947 181526128 314796830 83785879 447578764 134362492 756475793 888106604 961458846 749197206 759250145 583425839 815664082 209893407 800478498 605003193 832663313 554813759 604239354 787458083 988236523 457491510 834468431 22786459 608520229 983672678 992133807 538579442 793545655 417383484 624347298 226124570 629511171 505126696 904861583 229493475 871518659 883705337 884346322 337572011 568726422 812778722 816257183 576166408 847827435 882368415 949664338 907761531 964330306 675675819 728596597 687867054 690256709 24021802 584233672 932416925 935188588 538886967 931370994 333860616 644473294 214385043 883734299 654783593 713200125 846306444 860687277 188408637 375819496 854032122 871183754 417440443 455202920 893708986 970982378 329247095 810058519 721504061 743104439 70228461 880266416 535203564 996309807 100575030 937437843 445648616 956081525 136336040 784400803 742765639 758030727 359503928 364631695 525629891 762111371 413018087 804904479 698570909 908662117 371406657 741769229 532415221 768840728 760220434 806758359 325001180 722532459 796207495 989601389 977454244 998343066 563852500 837775264 74233687 762579932 253175508 324599331 247490185 472903964 617859857 637280401 649855843 929196415 178918667 858735645 533336308 614910527 64903704 298536141 572710194 683756473 930960941 956239982 686767868 700802703 731291678 915422181 168039865 764859281 763587811 788371558 374273512 886570817 136878064 910211980 118386649 982331708 145783095 530913131 255842207 640513925 154847203 680982512 898337729 973248800 18780736 535172178 338791 831186821 589634225 939310084 170509136 225086686 826188487 947532170 973483935 993801202 39723530 713476146 163523763 331276242 132233790 402173718 915579628 986342014 103312159 432959938 480801084 857553781 210474728 333378922 546627509 849956291 13097305 733568797 50900867 922815152 400714214 840992249 862969102 945584338 728759454 963327987 738896242 909355094 484056099 721409729 618170663 952111365 387991008 904140005 811906692 971058409 149001356 498127919 109755321 614780229 966298515 982760238 53576378 404273402 912019185 980940051 795694338 951119931 199099200 800013978 969963145 974321606 395813809 885754999 975327609 991527385 115375002 458012801 311803544 691334765 827369594 889282123 150638892 974538134 553710772 814412300 155173085 188559322 856567758 909097084 344245247 893094867 667055110 801282262 63205836 470707561 606210669 775576356 560010550 708199832 835286801 865419313 725641728 875771814 61611153 498690077 112582765 371117865 97562291 164471383 131890057 304033554 210840171 339121476 640191213 743428698 927654214 967654809 584133286 821838771 297444251 724946640 958616726 973818478 980094869 985553953 19834625 844019544 141293549 800112698 367856147 516194644 119144261 608605213 575217674 849511202 671424149 725402858 701714369 987853970 615913257 641540637 499575410 582280246 626536528 853519895 324249694 485635334 748145539 918326824 325278478 967741511 98252356 941207910 95062852 394339522 272112496 282317370 326758515 431596580 222295032 555578339 223463861 759989330 264410666 720012314 288345724 603585666 994696113 994734852 92566556 832408702 829310138 875402362 982495735 987612263 115563105 450495999 912871628 976369352 81336474 569206484 834041423 943601359 720664911 964730534 352802301 729083624 790477895 860428627 530135347 846490625 124874008 335843059 937131948 970878469 194004952 513696234 778602753 958384900 808002797 945227606 353247087 909846175 997224470 997298679 253417834 840169512 28167556 376030325 870196797 934888694 379532925 673508342 405295094 960570160 611456870 613442623 26640066 770313717 354311219 991207221 502059705 519730797 217924629 439789529 887396527 919632123 691146250 846345201 804228214 927539336 753567598 827772138 629093057 634054356 486084723 980835110 596179763 626451069 410448400 813331945 260207566 449928777 659134299 815397481 119675459 939848829 875959429 908798377 571969553 697899241 384536539 784499341 424952154 877401681 61170894 660884723 73587670 496897201 495245330 659357262 779262491 984307527 173237109 439200653 300791265 822521514 131659208 215660171 21925708 893390251 805308112 984282958 275132889 608187408 260169186 702555976 68941183 355665033 892206819 930314391 629791633 899074376 185193619 971223255 962250207 999331946 712176259 836473522 384190190 496617967 559313366 645814794 338658989 974243065 59892136 162067048 901557552 982408703 427724997 777750563 603520303 908520080 39300939 123639085 288283992 331892585 628607132 707477110 808764424 967967761 328119284 961905732 562208021 611209721 391552260 732212401 35814788 672694524 598750809 748318200 117866206 669404281 314751969 849048089 657102784 990908248 128763003 505833899 186334495 996576398 213308551 886545701 997289368 997789238 916370818 920836904 508640733 958915900 562026182 664591251 9082671 333073633 248258117 318254951 544705002 801678182 481119687 678036861 485263095 503853058 592215984 596472192 959535336 960831727 880341647 932126323 442975817 802201228 323724820 833490352 471610694 617313182 739550194 961153789 72479142 609177991 59995163 906298331 276723497 544348592 382891991 894371367 386861780 507081288 783362687 949399556 927276397 984679692 240837648 252709447 36475352 772770024 952081785 967320730 276615905 661357532 267425180 362034709 997931949 999342643 884506993 972702485 942910049 994264404 701611573 745591621 821455321 895198660 648428962 727386822 525178209 927791129 235024014 604133402 34773797 477159098 394544766 432556719 740712091 943392866 491753773 576654207 295567842 571539440 718087902 817819591 392819085 696722014 8371134 912304985 888710728 895695686 905035340 975088550 2495292 372641902 349316986 732753843 762272109 762652516 868886408 927425675 323211435 452821686 460569088 704080558 399557571 421157731 833095980 907645874 428940035 950066171 502974835 880024166 641270842 742620125 219097768 450671311 467589835 658785128 507005327 540237085 309826094 870446166 734349042 882879048 465660744 483213354 364464816 906838713 62077174 845250155 281215303 540960012 101849212 566741552 989566885 997118834 666521619 720063061 438497446 534341095 767816076 916489299 585494538 616678836 160460063 162892752 659707527 892141787 17200416 512158496 973471011 981720734 145554085 243367108 551727840 594075996 755052391 932351051 759057098 866803958 704488449 965164105 577146164 595718082 175197699 410279657 207574936 230940182 395033655 900323160 600976736 785271035 263783246 770875180 630718416 915545909 120019780 629882710 73360712 642869573 973620665 980517648 699330108 967979221 228670962 701413046 588691281 624164712 562304873 681875728 78460262 279474990 392318043 548863606 429766245 651956838 533481884 955413154 398044719 586095875 619081188 625888119 346618300 459617368 109425148 564083531 308571660 595763502 966604667 974316524 588074192 671394033 772321843 859953337 685602872 723776430 53900084 793302948 395663352 414924486 178732047 462699050 18541897 744543887 512987042 751650006 124815141 924249438 206440207 361789203 395088411 958731352 60616654 414528952 196416500 704062344 291194585 367138142 74236873 367207685 263343151 483305539 706102250 784317308 235334640 469770173 101522124 248165302 328864090 537266677 139141960 458862091 780033745 822376649 938984533 945770273 283066454 945669052 465058441 731520911 129564814 613736600 289061654 975871915 640338220 694375308 570559647 980604248 909172745 963144430 704718750 872120032 839091859 863424919 955283963 956650126 664343081 691172604 761396024 837320560 295475703 983560465 428394401 586179894 488095428 998538960 25894224 119363773 245238114 859718649 98435756 359483994 921897857 975568504 254560229 737569671 609471689 689948791 251070777 691422006 691999142 909392025 532864166 985585085 857137556 981614117 451088839 986174098 972897292 982597849 832186225 923176090 497058212 506531920 756331679 973774004 765170989 834756764 525539275 676239552 856047117 858974838 854356118 958811910 386068340 541870534 349841552 715889459 223717527 647988551 205577625 343400058 805072955 955694161 222084502 557601144 836885482 886520997 149611109 663436163 109777985 127451709 833708024 912398823 584979679 642546770 570592967 667235630 285371502 526205918 4975407 393997862 231262290 301052978 771886467 937777174 918540998 956171307 471864423 888955063 93455755 762232798 309110052 874333732 37062548 224343822 111619824 934517026 64399640 851481388 252357104 990495446 27946466 932368792 394029780 606247812 64847008 522387258 145573171 726349709 833502851 862325317 208888558 337164305 466743442 908666040 878145044 973793203 816082558 986593663 747057543 782714800 67024865 126495448 477394190 757072346 980879463 999331290 847769674 970504635 34793217 893336385 382200692 429565019 97738551 861525040 752925605 899339097 697814694 964157177 211385565 625472392 242235556 841792031 221759744 765408734 268514031 353240070 670990616 780061107 939017196 971030712 33424539 897881060 370023983 792651607 422424434 556683603 918829681 957770728 956112442 990344120 552724389 772337139 933824171 950699255 794559610 852759437 375057037 867019686 750908083 785413677 389742106 925104697 590253769 750970884 597845948 677115123 938615387 954484212 702771746 792541257 954753422 969988721 965405741 992517217 313633633 395623702 165099690 445653331 165724168 481034729 686882760 762731825 157929325 305056527 193782452 501705280 178042727 896392142 864095596 917809985 329351096 849217014 489385027 750157497 615661027 969373889 741599584 901283963 301464590 959540717 537386608 606115818 40685625 981848718 29550722 949044733 353633040 982009746 809884439 824145230 621300429 811886686 158315005 419578563 889983096 914423534 911090664 992275544 160804788 519190052 929248816 991548189 843010553 994421218 507142597 732083866 400100623 590199214 724497246 862258524 658508904 918534665 85698381 229058981 81153040 386643038 883356922 924741875 991867797 995095253 388732073 478680682 440377778 717796481 459925829 755158837 720103159 880409612 79935234 839290833 581172007 941722645 931011138 995315407 169003445 952853726 272244509 606478599 468315422 695734945 224067910 480489602 956546244 986483239 552075084 606585154 216866441 513772839 97138388 895657635 102934614 202238938 826616296 986425131 588850351 918139290 387068283 961602902 398548792 521853788 104849755 831639350 548163942 829748331 395458842 710940180 289263808 694843247 950661482 952267418 611422151 879873549 747307115 885046209 713277188 779821461 703684179 734168023 551926140 626529849 317508162 362465018 12863802 546179184 842463493 922280016 310740869 406889257 692235339 881512962 60205824 437140092 238846840 399838958 653369266 917607333 539857727 809883305 635191519 978065373 327474087 747512558 538808542 961613508 32288905 678558979 703006468 900774039 862007416 867308795 459329999 529153016 406002727 722566955 935239431 943157187 143276282 332958762 323701898 843235350 823690175 833948977 321717997 427898124 216130732 728038722 175815883 771307212 414630703 538554432 214681611 957502963 8741617 610314224 773354860 945623675 19422330 815786412 967595949 987398273 365873622 905338018 55186934 712486477 551806064 645036930 140846179 275859031 764181900 774846371 898056982 984535315 648497358 757146088 745893348 806227798 781471665 896063628 53206981 769587941 484484010 592957211 383295541 406851886 747901104 819747658 699119714 863897215 349651254 663322757 114748652 258278247 294490876 464634865 94307460 818726293 795340252 956411351 285798222 549917017 674828284 832018131 133919374 174390538 487177500 636277098 57813285 865023636 227656506 504578316 243105026 277009437 655987407 939597068 135695753 469634098 398258925 975198944 178148151 717353825 605948377 891410069 154166312 441488549 458438887 975144361 730987378 814091586 512485232 642747686 5057404 514994330 889012612 928592311 320451307 512106840 276291759 589201210 799821389 891116070 567083931 649846587 621578296 829603187 628425082 643138484 695945847 994032580 868094214 995144497 450461009 948411167 107847056 829602123 502752394 672765829 58755642 902701914 368037802 810464247 92379519 661250740 598208280 600000868 52195820 195930977 448741149 795689161 348835749 562930231 242805653 554160260 684308803 800113600 282822512 703926419 914781598 989346640 765143492 895585082 105418597 856328760 482084868 920573375 684724229 730404042 871559882 898892399 600440121 626633833 333489792 550304958 537087094 897128607 643682217 880040796 733447253 861767966 174093223 274768723 554076520 685715070 261090711 803039438 741889676 860076817 54747598 944193841 862518972 952920090 975077655 992287239 715217270 753448673 846787997 973696792 892898987 939487418 883559132 976033269 186029041 234920296 572022472 878197743 295055502 456317605 683344515 689577981 941448969 947785475 925852750 968785734 470730511 866838352 692535011 989586562 962951452 970492903 873115089 900873190 992657751 997328093 732840713 830097886 700646343 954152485 14635682 218302486 627992436 777276458 310000136 320455792 346803538 773866395 355803233 655898822 909165482 991037396 870747238 918692978 957353904 987503832 247691570 755298822 793310949 869459123 20957269 972140409 908136155 959451172 60794026 614117819 782684323 967345571 207509485 462876116 42076256 340374099 150875476 806206407 863639202 890704034 882396748 934673759 931120960 992898283 135154303 851462919 319699798 786123447 286460282 663777349 958167320 961555190 773325997 815582602 590845254 917945821 947265681 962301735 174744258 951579775 724916162 992679242 93488670 202121307 453110328 931155217 820146897 875986426 730651525 832366142 337448784 984688217 252514548 356995621 959900165 977627217 667512986 736009110 967501025 986727978 633151061 957578339 457154536 935547063 525855129 644832967 40106383 796644585 624858264 637939043 203999870 529515726 321491659 942924916 403537792 757575762 415733525 475962411 265705131 303384640 685052579 765799639 831691579 912466496 759919461 932041945 844449809 964524739 548908668 945264613 785856075 840758757 818588495 820144273 515314397 758366857 67165667 934937783 925788257 942536322 324428948 702921897 710500713 869241228 615069918 620564931 259892580 647117526 278718155 471736113 691576685 746952581 667891685 909421720 871836905 935644720 755261013 910524278 111866091 353285248 366015824 417475468 780875642 870389568 772051476 971310604 388552943 998409962 488984240 729634093 340840866 430491309 381827852 722097287 957153008 973730476 55456291 636636172 825175091 989108081 818587328 947667738 973413293 973804936 742642360 816420593 188155601 746005423 151526307 555041284 515380737 757664000 939253391 996381132 888402243 980623457 206245631 250727439 211494900 408530212 65947646 948855077 924118210 955260877 152182668 875933614 171815945 860181211 983103348 997638629 630097962 997183564 897040807 994475713 270309832 440504544 678105259 809151061 528803280 906921226 295850237 297365570 217145413 346533406 506684311 664732715 57818601 768871126 257668147 269539095 1153866 94544597 569700589 796811631 392027054 446868877 755205670 955748619 776909109 960217829 710967125 917001367 957802162 969780085 210394390 734618603 926156728 997704664 305145534 438714863 488747952 495443057 504483608 866863082 60743309 515837102 236093567 969780946 397189322 594164901 636739699 809563365 650642217 706873038 459452165 993738882 763819903 830770614 814461790 965341490 960598046 976922351 517059675 885877634 42334540 981267424 229336807 300829088 79931210 815635998 547805620 980281696 384265488 775880607 163577088 475500115 340163521 823247619 551532924 710907060 905913476 937467582 482188704 978859977 834245828 981069439 342309981 660707110 355866993 776762335 359259938 637584611 307939486 413387574 167775763 790125520 646095303 842591525 783306253 921769494 640181744 764405855 65802352 600570799 376894237 491537043 367761877 510914912 647367459 914499776 38766595 673631524 470662065 618888581 504403298 571481545 341493823 935022595 302949090 862377609 489784304 605321099 658363962 678662848 458049561 872116331 554726926 711140270 699650701 708702496 439710754 685448966 315356673 770150726 678786405 910229431 665894248 911681737 12022791 66896058 832922750 910736546 814295418 915172507 839151242 936598555 479386941 679077075 527694863 641534766 315185938 403826411 428479160 432143878 122072458 888696190 703979360 781748181 175256752 959922216 608608555 950140566 819317386 826766055 978175011 985146030 768318300 947123291 398800809 899067695 696492466 828516158 989968243 990209945 93049060 464728167 728965580 751476621 521751214 819788818 343074336 829327861 640601050 924639420 793472148 847857667 260850671 484291998 822903814 966079772 106851997 703702598 297522070 834140512 484294085 760148393 526858586 931438292 225059328 794468326 210279903 752149969 403429655 539805042 817086677 988655867 761474513 991979654 971209562 973492866 594977894 941816579 626099176 694130952 629377671 930467443 543909666 650273264 26776813 63838330 932514221 939148139 379452376 990381717 914187834 924778310 197845162 442451808 461295796 950288300 671615728 800991446 133794882 922030476 255261313 418938292 274572168 933308014 836246197 875290880 632857346 881571373 204109400 248153730 752095122 933413463 550977498 633543749 323620440 863064991 938132265 945983424 11429256 922321444 122514803 939398762 23858203 926854310 870059783 890986405 690558108 746982502 921126951 964192800 747509563 765415904 711454571 818613195 486600815 858007146 850444204 929139402 704380207 926030647 425931259 517985306 432178806 990356965 908052766 943861192 789781353 823972592 73712736 162766757 618268605 632756199 166361442 766028091 558253201 899822588 27313931 749993040 308970983 798465851 412513803 691214282 69331491 340126542 105686586 991038531 912319456 936662670 861378912 914532491 986955655 992895761 978244772 985237684 857162116 929270616 412100349 928404384 301656318 982532054 87926985 857817376 253813120 524292158 34292248 231711343 599254523 925930819 550905299 751711664 252298840 906822176 489067273 898695749 866772877 970200385 455676252 991152497 267248403 581488313 787894178 853270647 770493471 950393385 742141437 913649555 166042134 271547621 550462328 957718635 412513185 655405381 340833406 828726836 28022958 493861609 9547592 790330870 606844765 682007102 172761920 409353160 125634958 509861534 220097405 252705770 842856541 881946234 460320650 988458007 253868560 729467059 358379855 716539374 111359919 640168648 576845456 656454352 344395922 879526295 480700953 496297769 467487953 708398900 819796736 821190697 758220244 861892411 344855062 399413115 552389443 612629552 47872808 251629839 836340372 974664536 228434648 619934118 875907101 881011443 430808970 942909479 352009036 961652943 186592220 706569197 896480743 900276592 679010406 832495647 4241747 316088849 294717303 478609247 223780418 663871109 884300358 986413512 242847244 467645249 962248799 993121506 250583399 402266412 551242477 887933977 955638610 957747356 551152208 696819721 236724026 953344084 557934264 841670364 997799935 998525259 350224053 568749281 21407133 706349621 30972961 492504608 353439160 570274330 676496747 772820696 804685874 870070362 562819394 607390462 754650608 921863035 573709294 771365175 190641724 306765381 811899550 889218051 590326602 792164289 550321881 843425499 314768579 527215538 249458142 490207028 103124110 831274669 691717382 838961125 848182643 998083722 936748600 969249171 472850182 688669456 78357425 604770744 721509356 755038040 938825656 973447688 798945706 944575846 928418226 995166413 368079951 442712334 883083833 901822000 91999623 371872300 719183135 879149372 516488129 532789355 324004980 460728975 11263817 498343845 681629083 998757088 516853140 713908433 611933978 822130137 903737057 912273097 72353637 836316091 459990937 957369322 1951483 859232467 725465009 754312366 750544270 935752926 974003297 996385701 991369464 997932927 859189756 868414889 455786652 462075302 412842965 646906058 712258662 972609830 138942116 243631575 810435947 910293243 432419303 785263283 53565396 542751457 907493992 978376507 718517045 847386817 554013523 910216161 490391224 922736052 657403559 952992610 629461391 774564965 859740981 884431688 994666042 996206964 723494596 825317477 987636866 990770533 388804671 694131636 947070517 983787929 813200965 973903627 779465379 899318806 774841904 993913666 511629156 666414077 716278127 845486414 197878481 662776440 556392388 902947668 176071744 342034656 412229128 743878506 224930512 341448373 423194025 839673785 679344160 761540940 927132401 946283512 640711567 814053791 129234275 983181542 574428988 932077434 221103039 453124003 391165994 608032195 874949157 942592486 387244604 713539479 648364267 906610608 624318813 890855326 851549991 976412099 824437777 855271798 708520690 805179307 435133361 794482816 8635997 988934380 944797478 957274143 8743831 150030537 838365918 907716573 484051700 708444664 882141830 932182474 369205617 382517134 794011398 870820596 294588449 656652227 495536960 604024069 916812967 982389342 284931644 577231260 578272458 926970422 798074115 835136756 34788298 495485986 158169289 817511541 993967646 997829011 799995713 913689382 108021346 483001268 978427620 994149403 310882955 855706556 359982325 614076106 385680541 639245283 779263406 849469189 171809082 835031231 869166021 928485873 234312211 293884139 164763801 445011596 244503829 656208982 766566678 770765725 425128418 864180554 89221981 468872568 59617233 521150113 738370474 855299196 412051753 977633420 165463299 804754499 99149538 512505042 896764162 937281967 135367680 292166665 122623637 288358102 987642436 995972647 652073697 782805475 901328367 903779435 203035740 484606151 989694098 995298375 852567864 932968899 500367714 608478166 441326343 833376614 4436094 818670309 814395638 946817786 71155603 157580382 407284431 845748934 664033941 687679773 434724969 564236336 886309962 978788247 379218887 811696012 620318149 659886115 403046089 586320575 146963380 696951329 189164054 637906281 638268181 684624830 833811564 985786430 292837058 324455752 207582806 840082947 841974825 845699132 448511349 948404681 287654883 926688945 546605068 739176254 746437513 915967187 157652494 804630859 753859428 790092586 991755819 992480107 735506164 812101837 106567005 564474095 457315944 583754018 215599303 653423738 275099458 856770444 160857104 389368354 903093343 960923908 722607719 920573599 531162183 951960993 918152649 999289153 940477764 995438210 770270060 907828973 314100354 795329992 355578078 905253873 132783891 965097991 689296992 950942596 841167404 936175710 195988509 456115884 655604696 998941771 184893060 697901799 239638481 397351417 799903330 858011932 398502672 688086190 259211793 483853086 484051612 582908007 700678952 983166260 845891383 973268827 401042444 439047356 705291164 985668450 511312900 917126008 77845695 543412120 259845875 794046061 889346557 902318136 742660473 925616138 207812945 217531654 602947970 786703628 739141868 865020764 161625686 866297582 88840770 559071284 260417862 647214153 337921631 932657183 241096792 907356693 291290626 844735929 446583106 614429096 646598239 904247183 810146389 959514197 441717112 944490880 653503011 854514654 550616154 628953819 302840886 416307277 385301933 390803056 646285063 725033718 427508685 708134499 646583488 995371848 677904425 935360539 761558362 765134773 99232407 767344848 871038482 902032784 11115255 479089332 962750992 966167203 172327005 831841520 199207770 716644761 373019898 394320917 445001381 860255370 153777955 538491351 616613402 833705445 795421487 949331521 880070436 933619290 109899006 294108293 276937451 402101536 892002684 980991793 14423737 405093298 322814838 987990341 693697742 760765951 566129617 758584693 831943889 990685232 797181010 938073089 66322010 734043649 437034527 460999074 497102107 532461473 557854355 866424497 383219018 687531681 440595767 786034503 355739416 884645271 904328334 997228533 914663688 954284060 626764357 659854964 598911927 670112718 797237795 846547746 215296163 719862826 648311928 914657430 808182176 845811178 402831002 710466068 509119607 696023945 608254616 826526486 186240912 460019779 988221020 993547327 680413066 759679569 634957692 877986033 379776841 508490572 627033340 685336629 956346219 981338097 397757553 990398288 362829536 828220898 597583126 808125995 50104775 965039615 241691798 814843713 932977467 957131847 205525405 799999441 848528910 974502931 685925792 930379100 722823827 844898897 905869311 948676001 843849890 975669310 917634662 949995421 614085093 928906906 734426858 846902888 990265272 998321202 649370638 897620190 702275463 802768940 318207854 680692782 764464556 962814247 578864113 812855738 588897819 744305376 221167507 368311864 91000903 838964552 621524577 849977928 755257486 904107886 637328493 998731032 528297556 763448648 653373793 950940573 343367646 814806643 927091168 953554231 581338813 626839453 340473759 912755672 107502602 722022401 237708668 573922390 169002727 974641925 13761710 635669048 600084893 955328658 331966479 803496150 81452496 454477610 281635190 292024192 650482585 971798155 853146606 950289535 301911565 660872181 197342774 703519912 933273291 994451164 62566484 368955195 560664656 755511927 237370858 891862156 662935533 927151422 538317183 734833338 894064474 920312829 811887483 829188689 17603504 166766212 844593958 951395176 26604503 266560243 886287697 904721297 668610617 824340208 473946826 754906253 50969895 585160821 476253435 642216996 524234551 970648738 376036590 676416958 974241465 983795294 69481190 636587588 813985077 924365670 40949127 363778140 186627757 889899913 940083989 988756238 318280130 656402517 150809692 405169860 157380151 920028279 194308934 849230482 557361312 764244734 15635278 676319489 739953977 806945730 344615986 719564688 395515508 895753093 333435716 791921021 927974139 972199892 754885970 993605064 123211003 442715750 996277194 999055508 949079237 967164190 90023134 235520517 95689644 411826763 82943630 847688599 955482024 990843906 830743019 869931670 832712578 834121250 290323930 310919885 898257044 920892718 543159281 803456129 375413031 655581181 923948354 947802792 914172529 971357811 417576841 607662862 755512022 768336168 868873264 964468653 647174468 801744660 428171806 480484272 578492556 967222723 865268381 922897713 34762842 507667480 398227393 600721611 267003306 277755946 8037937 12950981 606523449 982045067 641855542 787325335 181484521 384072464 412392731 788103725 917593681 966512883 871652257 951328620 17459886 778813591 916925990 931985532 287304531 501850476 242228530 756642003 358624838 594104405 452025218 483769671 119713783 651592001 362610774 624477457 275749538 801608855 31049548 382096698 812494976 968989594 725061497 998173594 316674466 737614506 142560988 570075505 322448451 444134093 650319841 876979057 779723729 834368062 862106862 959158448 525702254 791887449 515640065 532011860 946246502 952542373 380508001 754246816 709182557 934946697 490937498 838326210 244911306 697579792 905731212 976622030 257431177 535318498 487206476 704167717 994449419 995886007 345476030 863994432 256638920 617983930 677399785 890214656 978375309 995246818 440374069 646512634 82359695 619189041 947966124 960552000 236556328 344782895 850776585 944588215 689584776 774278286 488968265 943905030 939075731 981289379 992574942 995784962 310441565 872191075 952665659 997078004 50880909 338965763 730846661 939120485 440432977 878690208 472418068 689117455 279506109 805575008 911810803 997833528 99271152 916584076 81491348 835873732 409626966 889804652 340990173 948324864 782208433 913106952 227955349 397269276 141864275 522078963 427292143 522729689 419764787 685397398 324455942 350247113 533855921 874628944 390605911 844080886 982779814 988148633 16606684 532981801 342060157 667566394 415945783 540515776 110989817 979465293 539417083 573570344 366858328 751034644 728716085 880425614 48997433 75225339 207828568 673924426 815559702 823645120 482331685 517170770 44434226 356618071 411593959 428640008 992468561 994563155 816589511 817251597 666825583 667893282 210282203 423945711 299401358 330403816 189098602 280639660 995772627 999039310 658969154 789795858 87444987 612522997 522030494 876499114 102555652 257584711 720984848 759518015 843296042 953714087 882235341 925920610 552355758 760442426 527199880 666211349 830261920 893928045 643502061 987008542 757571596 777972714 391573866 977879740 151758797 443962456 802575907 844694386 278254988 446093960 158568217 984462570 507262057 522921311 608480692 829431413 940280481 947764320 83759070 716576455 277848780 666022435 431017598 782257957 416414465 995258515 121014313 153512310 523695726 537996206 959254707 964398174 973137003 993698222 653796242 666651274 841276870 879487246 485240817 625580674 433882238 990330530 710180280 988777774 903023011 979658224 579643501 611458610 964470250 990489790 690623788 880663000 638257298 723566058 614634388 838798262 224946681 364507970 400858342 948338365 256152660 320840079 453196894 558406207 425186877 559278228 546697170 625634153 702103151 728802242 752687129 799735074 530223761 544882042 846848701 850735002 650305467 928888336 957016404 992734789 446140762 883557586 718128999 942446404 39878000 104184324 167343417 595315337 192703372 738521915 987674305 996369374 71962346 961421383 619359208 717651526 530681131 965857815 928441229 937840047 997580462 997638543 953932929 965700860 525109949 541374431 742057791 925243590 761499076 851289114 708995482 736704041 239977226 364362510 543575303 892945053 421636181 703605502 308759022 866886890 288013172 346058438 985448508 993976541 770889395 984924026 571239731 817642215 248688539 509925562 258659344 355513772 205989067 814634257 146048833 183497515 540597151 953578937 884055941 985578169 142008147 743316669 326342685 718922614 534056430 981515974 58020315 663075778 701203248 776845470 334893339 871425276 763083769 900690963 715460589 858546468 770527804 972511869 572293934 972871460 650508100 792415441 56349795 631109541 687954411 856982840 839843 692399668 549809970 852135698 240697395 842651498 825315061 911771272 257980170 541127351 253144735 833846940 188114895 794331907 823044054 940597799 865298449 917320676 929399106 932124651 707182031 892136142 279658139 778766561 770908283 927322365 140455234 368936414 703976426 774334456 411836119 647523301 353276111 825135000 669097747 775011044 94501780 889152007 984523024 991160861 749513208 868908494 816573511 874030580 594032442 996088410 239169612 607508630 521917316 980376546 646457229 992686706 287277193 608897900 438691810 736677491 943055530 999197433 188244743 408452285 298023277 877118503 747758965 933753038 338808461 779522591 193571240 330556358 518519148 835678175 976252625 996351742 608709185 977502692 62878622 166127442 930437759 937961254 595045230 801594396 243085816 356229470 833190713 919840012 891972887 981469093 252607845 283370370 33916514 320711474 471758802 616580119 804584524 997431956 735493743 988202995 721960611 796560203 31224393 728621285 884447699 950444889 702789120 988411227 500022676 595861262 892999930 940185370 647460707 882246008 474967937 817391465 856669602 988360489 471073793 972736357 604445236 688508479 41345154 990710658 240746002 429929633 319940241 471739688 604927418 816524091 494158083 651420205 844901939 904701032 138325008 471626560 526852130 892769207 64740836 611635489 659265702 803317207 235995746 781382256 888283769 901223283 67753688 656654796 966440470 978158663 247129024 452070040 324847866 616993688 485679969 580378769 781987715 858346448 789077947 837879324 685485100 985017346 120577325 407903483 507966927 563122337 234850036 325279654 745018061 863159655 799246748 830112125 19265806 946668635 649404080 860529353 876740406 886940888 791198268 921357099 67153873 670607324 437249718 698218635 741094572 904551493 254299421 857646427 258761286 423779848 949358687 984083208 285356231 659202481 588537018 872458363 885914684 943184526 481154092 753568779 275766615 657529572 154798032 429541686 385266827 888097595 930695415 988652807 683106960 743945656 958653899 995803337 215774883 402663027 785474598 870883001 284657969 640945047 322833544 857064174 168500988 539984846 489765518 683818425 432069544 933273767 826484473 998299733 909274327 961190088 26570496 675716094 310175740 761054726 543003890 642789922 774587908 942040589 975754690 991356951 941553883 959890106 802570637 839577236 969340935 986947818 596684017 777342309 455749162 834374677 31306883 226416106 802225687 967427771 259752166 353305017 745819402 964858848 228684816 313377086 696434148 968165114 567612468 618448290 218634961 350156718 829256299 989489450 673550854 738394460 648508653 908754388 575977227 912905196 956387650 982138628 464357043 568576637 987555354 996513585 375880704 739948677 864884215 931606875 259985785 786709544 802854550 838235192 347158996 517977143 13748492 97039967 528767028 534464577 463514809 790435924 918758287 953120946 266219753 599499119 525645212 766530369 294948499 448835265 456430465 918819157 390815563 461326333 288276339 508353621 142594642 490869640 841316488 860340832 77907239 712541185 560801447 928134238 636177313 740599546 598772750 756911345 23233983 265520892 499755877 725875427 573849063 994780351 757650114 814457263 475057906 875199500 436548045 818730151 183286129 902792859 530715739 997676980 605748297 808175920 751422718 951238562 570383244 878829516 411461425 812071489 357547095 639948729 196304302 587939397 593038664 881167386 408255353 921070158 154706535 273309493 621224787 902467669 788673520 870414765 593808150 765254661 773490732 822211775 655997270 665087444 782206798 862592384 650822898 752623325 637248462 647225602 13835219 372777489 387979496 553359773 593490098 846116056 24876455 158199053 494933154 971380030 537481918 755522367 106271557 986333737 901070014 949979400 78351900 930555376 948920459 985868809 203184760 814892162 578552200 887608721 319102314 665351116 428515527 604094319 624718048 631537348 863149501 864814988 30680987 800604502 918053952 995814664 562819041 744123409 590359483 945960616 854120752 977247784 808141973 900227434 437094700 584931112 833354219 965929735 461176981 997351258 714484096 837933974 669568949 795790406 155156211 299427523 670575896 808715374 256735374 368273825 972145748 972392587 970134876 971611357 69026997 224173544 208140095 323245666 157504235 303928644 79523968 334438251 361711703 789841263 798105694 986408747 369298975 457333542 448379773 836615527 979129067 993579168 642104731 825466016 739810939 997655258 853259393 869035809 480369002 955379042 23381650 46138605 527831235 916183145 64429497 538786845 901610039 979830630 767921933 976028324 890321988 981218941 533048680 864052015 240106133 427931012 441613194 993562866 534408188 939109323 493528827 851000479 399184152 527947747 411669031 721834812 376277575 633492386 737225036 959884759 654691566 898669115 143240620 231191511 972250626 988577217 660498225 745764363 45539952 518364932 100478426 862319716 826236788 843551762 956517142 971128110 726329607 901202919 60032398 634210094 465413103 657951448 672399718 781710397 320238113 391372558 665465016 907778654 242013319 415643829 911675008 959083055 42521555 253822538 272213452 392800737 770157197 824705608 984664656 991846883 612842029 947886208 703476576 933301692 15543537 803872382 375266667 524351597 432563338 920600448 110342942 959898535 447937613 600036016 877945097 927609794 715695253 818817440 166724068 734097035 393371515 570254282 332459469 752917127 709852583 861253479 361602527 475262706 141937937 985476944 806270923 987062563 943528812 960830862 731820890 739225188 704255382 713029487 498463484 809349027 721084784 862989181 458991947 853566831 188111505 767535112 24754054 334542428 281156842 920376712 863522204 903803727 130540105 597327683 759943119 964443542 564391654 828775039 720827182 790597384 116992922 216226854 952481052 992978594 921566758 921643774 361399039 903111259 893620533 926612820 93330531 96888392 254581729 777574389 222842195 384374171 348523371 849243995 403887361 608409477 831568985 840646164 862596900 943123398 137068522 468915478 472945620 800273209 935117185 959792997 657856829 960255694 504872557 520270435 842982835 879483518 174460586 512784277 219972432 541765506 146375121 905404216 258851139 952728592 316069052 485559940 349414935 733140900 886200556 981848968 772215195 836514532 296707379 652850738 775307899 992664205 224385256 976093211 562939758 603193508 63307091 643177581 495190011 700501907 146829511 779403124 119837193 618222191 263578219 801249838 465968501 509003318 598075922 750295669 836355710 916755212 292402440 331854524 374782339 406621646 158319690 963263630 656879958 871236954 317231836 869455294 316913003 808360800 756594764 985740645 681054357 976493320 413190022 520781456 557994591 985860413 403951765 903774920 679841604 789845307 857162777 926658098 158647163 548954084 979209471 981765132 205674822 793180920 150591761 339890833 944895285 969294135 27463282 536067590 975727526 975887142 714086226 871920622 122104665 725933144 642692752 797968676 692879777 793054273 398307231 446319895 384510858 866918368 94008140 120927323 810011709 857758346 147187379 863622728 279973532 374136949 58709961 489118085 332938704 343226962 23919835 267500117 325230881 723752571 950030961 968520090 393521328 601637170 758839443 938923833 459653922 804577981 436561009 880775239 941169818 996920395 454127643 868226521 515888779 816357478 618079348 703146297 932503991 948736448 605754018 767900860 295458846 975485222 877014019 965804928 585718626 645383028 176624894 184037482 233454948 835388855 387214052 493573576 261854713 991183031 281816921 663416736 623873837 848399013 689494524 807104378 172588645 306448335 339030770 473146239 688567108 993616183 74523227 342280773 116818582 870538235 429761872 666865023 967378779 988079978 511255041 946177695 708554152 840086087 70899673 211976747 743412116 784091642 933369682 934995039 455854271 833616780 565383018 728433906 987409802 995336324 173674288 214699379 516441997 566305939 379381542 602313980 602716371 765544665 614156841 878239518 748748932 898304504 392228290 675287588 344232840 646757812 959413119 961004166 83610947 862294628 727306968 962508909 218417941 405749169 105151666 572989490 722003535 897634276 745133223 954084650 797168157 971014682 78393001 483326402 312645571 823316126 40806631 92961281 166763798 896107123 299157853 721164406 435811123 979664139 141186708 512560846 434192055 961459581 286113421 295824622 228629449 670575580 569993139 751336110 451199411 525954817 873513432 940321984 188141460 352458869 740649150 889489181 874126632 960825105 628957278 693486844 315884617 920442306 487393181 972014011 346956808 391806767 500621057 509195470 774337843 991106171 713022920 937426623 495203959 842126935 750620803 851576542 705992270 793117937 159350752 403862656 597641682 679635504 770346576 957519420 430337845 918275933 112119206 783294886 194623566 409908405 120216244 439753108 342580505 714682198 510779562 908347876 339891488 341942539 999221461 999286362 871139423 949189526 504464700 746425579 756502180 793299489 650620462 859540951 485961965 898837988 825920466 930720434 558751573 901942046 625433121 654902506 897188481 902390190 390742124 842389721 661817173 722990547 149474751 498316561 313187905 561373266 563007747 769739192 608093755 685569973 456682714 904442514 616728097 748479049 131223854 591900094 289350874 575372752 735458318 819623392 844828298 958517157 554732210 734438327 58695477 733750434 593268193 733677745 361478198 821025418 285975121 567918388 260271139 477505317 378921795 927436917 274829043 802399764 97167921 555666060 694376377 925480423 431776695 807688736 656747202 669894040 105543127 887613704 968883995 977832324 547294066 707074451 845920739 919145657 407442127 932034694 610315042 619663613 945733302 986662587 394875307 910722384 245554950 376673527 352550594 992511671 717261285 999221967 731083722 913710708 334314327 352409510 704592996 738034975 55824208 454082523 365006306 480457438 605399138 987723601 567427667 711305509 100559486 460089985 635595996 992053501 486708867 565198456 215283921 586025348 761686625 894450145 400013352 650380509 923365873 943613331 164247470 240909938 25174588 759099091 302818871 317306829 730885769 827022372 324058277 752370961 941481862 949474881 950337207 982293955 427219543 712783057 439552507 724837686 629989429 792739188 305772566 797890062 387943808 947360100 367476483 616937534 107145138 329119986 995856132 996049332 493396612 952724331 790299218 982835989 352494703 882556962 170723778 388305939 475098244 935699718 926462520 972100918 558918449 574379329 261269371 787248006 876806296 903946514 780243534 919215084 523677032 707347040 159162354 641561521 845634261 964962366 124758064 320895436 839164365 888809475 73073085 866174755 146323357 915095629 475803378 579742511 465164305 989965129 957697521 971315474 868008237 985391300 959597575 967533752 257005838 306269785 97867109 969465502 728304515 870323928 19511841 929309247 614848875 678844061 721288147 953443415 949773520 993878989 362781590 979632342 400494558 749538062 862127583 993145797 351900858 747675363 616107238 816307069 64589388 416892439 719131579 953592290 826075145 982530143 126833417 739769053 138509248 601339927 704374166 932598211 712083835 779533400 625657280 985668896 824132043 866005792 946024541 979767211 761750895 979506966 302338249 984827291 119566568 457773328 682368420 855031806 515935680 985996005 465668699 984017897 958290567 978341416 593588623 934076955 866472384 958731656 213090046 810659089 399961626 846849109 405982422 455675613 237021646 763658938 191684033 400881459 280669973 537272764 848691734 852417272 448397689 570398158 912325979 996580869 201038034 913921606 561739843 944277019 385045937 590198415 950275638 952597962 50209596 376552206 210566337 740738379 686033634 784475744 25044502 616969134 402687761 978072901 665367073 743296476 848098159 979885783 114314264 724127854 516365427 673975335 327298566 795337420 574375528 865027242 842269679 950646900 573172584 811603288 129736825 488105476 591288598 629917976 876755565 936587157 901322426 980758123 930066025 946700385 800958421 921611942 841046785 911700645 729551273 994583649 643486798 964235907 15685652 175557017 41468923 260835876 172282131 501408465 474623901 630644592 817776271 935520898 6592294 98208336 722241437 797119081 526066169 698262574 89708334 812254751 191083316 701902108 397778232 409397655 521947911 532836875 477464090 809865943 794660862 809335502 641805166 837332431 54942365 746495807 553851686 660225688 648379450 710990506 337065796 909687044 983525462 988078735 755925839 761000809 937729623 942088147 502420531 740402309 607190285 920865642 874283855 920303676 367006189 787359445 199474731 350715899 777337322 938941571 336459066 705076006 746632123 812731792 254865374 618502537 752645794 851600352 128119010 839190376 409461927 653030144 688595730 851014210 575265319 833302847 780160772 897798825 557425428 748649552 484636648 568898918 233035765 729219033 626249695 627307710 541313785 972573314 819327841 983961429 937938928 975961926 411564283 977630247 241885552 369421330 138641943 403304202 438461915 705095722 769656461 860150113 42902822 926939358 298880014 605877027 112064081 210218751 399615095 526753078 650632650 956808634 664588882 786992577 886012371 901387674 650593419 653016752 789395749 830361330 503474562 924286954 855260659 911347958 639850664 776845230 760863720 845026609 526334944 746369424 562469327 782142412 549346590 785329576 89447205 868914279 263845233 572299887 828307157 933972343 81622182 374481383 172170488 883701430 81267193 872930353 91501581 617418621 266005899 752360182 277061911 461671217 219692058 456593364 745552305 823149202 685464020 985939058 979990079 987797176 209627646 649244413 400296597 669102714 901808692 937477089 597838160 939708113 395598592 610969987 315531975 381141294 91861425 709036763 28904609 529704951 767392307 814937199 94646119 349684051 833106733 906079702 406815288 931409777 80707081 595165713 210142607 406773009 408156336 522201790 723605672 903434917 619604558 837344225 340003294 463766836 769682834 925658247 442905490 501792266 120976454 693714157 58787674 371964619 915736033 925059106 260267335 883700103 608605889 802389415 312735764 952914604 251735814 349994676 273849594 351028803 377556991 960172901 180027147 400339243 527158869 751124276 804642829 985264975 253320942 661710816 376598425 827829731 683842479 761341417 917650377 971876501 863076954 903453808 758110196 942525691 437471133 846395424 619617561 774473083 891067619 991484391 776920568 831457675 311310801 749099674 101997456 899461707 98124001 155373718 59611647 87904492 41010513 98089323 603529987 811612392 951200078 983804246 19363098 828920289 575421720 832885111 382827906 566129053 613358662 944364899 814237017 934550243 507884732 650168821 179624912 222801051 270813089 948012278 431221746 722977582 501980504 544339113 723743867 960538648 922615223 994380656 67492189 200038586 303209171 438757865 444529669 771608253 246659387 351360796 380092275 935558196 792638446 847941346 173201848 720043675 279145553 790344175 998445366 999385150 939148169 997046475 242810365 247486396 100087909 695091921 715018949 993652449 434483628 875525954 507243288 658970734 6312333 252001141 899181179 971621110 185001806 545361320 311398192 665618171 985212364 986323667 36858172 187905193 5691056 300268911 357336023 460826179 335962838 918030400 307114466 889424567 540543993 827031612 823888076 919993149 865375615 897485833 297552437 698051597 356241317 550531228 183519132 831661059 434467227 481792194 56859658 952359629 53206138 509467240 361532971 471637916 81510060 875686672 406014582 561531740 930180445 969454515 242916242 846697525 9482503 378523181 16365328 947407556 303986469 664298728 62674160 107213846 34974598 338816264 392412477 394478660 919829018 942384393 237202325 759094689 556974197 966239381 722217492 962095062 296659816 717437079 329604185 438602654 865613906 873373337 279314517 697987995 496250272 682710125 670552147 739465111 353967180 365103224 301769325 471923064 938700335 958490763 619609582 806646622 685109802 749884337 676440056 720604973 95163981 371928345 170165307 575248250 352453078 892697809 351299263 919857389 495430037 870109161 33701583 525288807 859006922 968763020 348312729 645347070 748293482 902721738 170151943 344444126 624172770 674930370 944456555 974063519 367473492 725688193 175873517 643320330 334660873 409951639 68288638 527531392 700112621 782692427 855725940 932290608 446716228 634781296 591031368 658069078 529365902 919856136 133541300 145845783 314656765 865388110 728254869 796747395 867602397 907735320 478125939 491016530 211278186 596618808 788457583 837706404 762241745 846941357 198111998 219026848 118601744 278596366 756045163 951575665 95635956 633308368 776939440 947116606 68067369 687967358 660193584 816828888 457161548 622887445 446098749 555734676 66641828 849845343 814592044 909000811 838240235 989437267 908174267 918934065 574496885 792514057 734425989 780284897 94587382 896598337 918915610 960190201 82560561 365090813 30086923 625310652 749479998 924949902 733438092 977316833 778577217 851141068 749110054 928689838 877447204 976367734 155719503 802673965 579862380 929902461 439846367 729094603 924321351 933909292 876130113 896841698 504333743 627762785 457470038 525979367 883515785 895786210 177671798 538123607 27975365 336374363 401912237 735034763 944271426 992563533 820532659 855737286 796010400 903328637 367272456 670971120 862458947 992016715 942835278 971700011 721242713 722772643 756695843 944762423 686349526 732670682 950604119 996869969 918370799 925500536 113807761 994263313 769718048 907331658 964765296 991256413 28105451 531068329 115157827 324791889 903092991 937217164 20345096 122066094 2883873 224092852 168989337 675377867 257746939 391659995 417662745 804939254 357691762 489344249 764066659 929440011 620749584 741494693 248142952 600431513 826293744 967239283 74986590 565172797 935684945 951956576 832079706 897329965 984119889 987658860 390970654 448789060 423009684 891890202 783653937 896176055 465533556 854675224 733749751 907670258 75717089 191012091 6302912 876542125 45072762 422027393 718198449 829701433 561261104 721230559 104805242 559086885 387186375 958474009 955094339 958487045 788521320 806506673 269735058 547708281 804598200 886049129 883446760 900664452 865549797 888178469 118981474 822965996 4168586 624276412 288910086 838082959 797015440 905124743 541477811 593739211 179681987 757421501 135212707 724459999 164588992 325460966 575698706 817045866 807313955 858226980 266138146 555016955 661383719 971799939 752762229 804209616 881786277 940862378 69883454 271296615 862063776 902448974 277739000 575300504 259030597 284094734 889945027 995240184 624148155 747038250 623406538 993415940 219858409 325549346 323145308 380738181 947933713 951445643 742168347 767997600 833315392 921791958 729120127 933288469 178922607 980865050 313167065 666545089 276314254 393642854 533356533 786957982 217156015 393958242 405062646 760824097 178682464 788098313 238154722 744063916 876395363 933570747 822783961 981032153 555629802 630690208 103675118 166926716 441618684 901998090 514255207 625685632 335314451 832892286 572246301 857250168 791361930 836452357 746585940 817629134 766808479 838046085 952628091 961089384 671664351 933047730 889248776 960926902 805335252 875877887 929444056 995441385 82107656 97763978 825676541 841582763 466529233 990418633 984546428 990904520 884119248 968548922 40518059 209404217 934635789 986620325 780669628 911465509 313412615 693224606 609074797 995784725 63187775 588840936 716199140 756371839 944040918 952814043 754025760 918789088 209791336 272855086 341751937 640646535 421392768 871752809 330623931 780413103 824381230 971484364 34723788 313167409 246154025 625644095 589874204 649067328 296007154 763439449 684571642 813887506 493628934 643061103 686797589 812007121 527286389 920176791 717514292 725654375 526747660 774561264 101264740 226106951 427182761 453681060 645556516 768310060 869978199 977635106 955360467 980792855 889720925 963371660 37410106 617128506 2914774 47719153 120965132 301047756 348785287 690304876 370988753 891986290 276626548 905203091 804320050 866115695 352770377 685311224 473707113 731723786 888568178 966835088 831361925 977635838 648629685 882779763 305222519 652328852 836302015 934696427 781899240 973572019 637833826 833160730 370567992 529421122 400877036 663406912 147275623 412596576 993927546 998902163 295873606 908339852 660612671 939991800 447366509 907880935 37443336 667574834 688244940 707256665 412315215 980586215 956637086 978511100 906685141 940013026 63236685 534125565 563621141 670755552 122004168 852041291 178751293 830667307 50611787 393987715 680235591 717630262 625989531 965667498 310892637 757716167 302148727 469364325 259367325 662389688 888901689 936202571 580666742 972491302 622446035 943631374 601911105 724243460 497693964 725486537 434314169 847347597 119443229 976663582 686103175 949028785 639013285 729944006 486002580 933212085 794814495 945008395 756546309 904094383 384467712 964335458 555810379 953103509 714318371 912681087 263739279 484849338 436921071 987087147 530915162 766426415 944786422 985270985 52129287 940157500 368439843 998838220 151923771 566101764 660188602 897528598 637316237 771917963 2740254 317267028 806943896 855685262 258026988 977346136 917303172 986709348 689191819 941983385 872658505 889141082 114267299 814678353 275182888 478175801 692916527 818681234 344463946 475245911 868298244 924246691 864105945 875596074 969720554 991387896 857968409 961867857 897109852 927075423 209539147 702705256 919016398 971017894 89166161 794248118 427070142 671042793 377432729 953946838 304225484 990347646 963475661 983530432 91063978 627303767 795394576 940132714 836711214 953016852 419632219 612207971 640606732 794795004 656520080 865775717 479338771 502242701 344550412 653792758 763282129 790004304 613915948 668509184 323597679 655395993 87727072 412621448 439545922 881337550 905756487 981314260 894439507 907869906 594492948 710161267 156605514 265863986 110770790 709822266 830404509 907817428 796309408 810149500 33701782 116451687 287686437 967101581 604009292 750123988 348506698 758716777 30629806 757436059 824241528 882239564 256156544 894248563 375536776 981150940 745076145 747295439 71256121 843315538 209027452 328979192 119375024 754086472 30976169 525529371 535487911 963349238 747476845 864204329 185766187 465189449 116624113 688256941 24182093 806594794 229127694 694202374 661206455 771854721 294981237 794081834 658276368 882672223 769655646 905558030 77891911 950571153 827916261 926866965 25528517 160423240 297148335 413644909 539340608 977544015 767284106 806325312 535691703 830947937 373713367 661215346 80333065 248649255 579024980 855436919 738032225 971397063 142245603 541347528 586004345 741006625 115297313 809873844 977563004 994572118 427572169 471886737 251734022 414830761 755939836 894678844 824771023 994215390 356430664 926841302 700102838 893224292 667176669 685258596 993177536 997988202 779622561 896267150 715022081 848289903 977758349 982556412 579856133 962970445 444205153 900231803 385753089 435642570 908084154 930357307 241112676 919232481 766906992 867305261 763978505 870994102 974772797 986095206 960043053 993985998 577013205 857228432 593167601 923674566 848876639 895919507 47659716 994434033 608936254 909744727 909121183 929676064 966427115 980745038 432915718 733945329 944449360 947560480 412484924 776222168 279315087 692324769 547572108 763370182 80068322 632078845 916726941 969426699 600694558 634936243 4879112 98003916 605535067 685153048 714099494 736167713 488107297 841753274 78375206 976302816 997434933 997985130 152968072 283388828 558591194 666563540 398157190 546091053 818821794 882716608 909470105 939596644 980068517 995800779 42144846 964187956 291136304 609114917 400559924 480783354 812408127 891356950 630388598 771931778 486887899 625627957 594218314 907339634 697957114 735038024 8798375 111841531 506204857 524240951 217409998 470697787 878781245 888211016 848934676 880434130 151472514 219522131 550211340 738589664 740048715 986496877 958007383 983721422 815550529 870361208 394562923 647900044 168176018 534564244 389697011 804864211 845134353 883472305 468982863 831459849 445290446 757796201 154084952 771977295 628524941 746441424 517606201 688122659 253955492 258603492 440258327 945281915 66093744 524375277 437700008 928435572 828336088 908949131 744957562 776803599 413233515 779431631 677157545 820718919 579812293 820149011 828518662 976994691 390875255 670495353 258979208 286500415 606157323 918122549 811446756 884549030 102543487 941568850 43643029 400844103 225650083 841898380 889316463 964598394 463342098 898785170 123732977 139014264 619996457 640378002 774855697 872178145 534055159 773915402 94700306 378226939 398448997 640790727 625755564 927474260 251541923 408886691 581909637 782461819 608939855 933510978 788031976 924700903 155354906 844129955 470587015 774274013 381821217 687620650 543724367 988517334 642530139 720146423 742184025 824598148 484882740 502105509 583923311 667641944 780789616 813772762 508845983 926603721 880351250 910944800 206568355 273051364 809844150 913198815 645687766 806437903 64955860 674295664 335231094 543114390 195420471 839806693 475183776 591014145 348380068 639814322 593178378 659491924 178614647 763375815 819097477 974665127 314015274 362686968 61131653 974018655 105826358 766305103 95792735 172286074 669315859 891389131 970892462 981860105 908066710 954264651 525280912 912423896 649864468 830814832 560481898 754971771 840126856 966158903 453395338 785666755 213644411 553146940 904690059 989417895 949515544 953240982 919846708 942442442 617498750 785094852 993613730 997888849 855221082 913783694 406946745 444156428 524719327 788787384 476903821 803801161 936346847 972526159 647972209 755064158 218321343 386205957 268772378 314774229 212539311 914244929 139509436 585064618 198540700 826732444 281805087 776743405 536321842 966263635 277323898 477125651 422605961 880177581 396974897 655645093 306732200 721298841 863939547 917641809 816370380 883116228 165937809 685959243 371212055 896482445 321450618 786945210 755051949 796547163 754191007 816534721 857339447 977845220 99740049 438916087 985713970 996777668 282417198 458969722 139078582 403693650 347691570 672780012 470881092 722351321 734828600 889082578 581484330 584253334 462666787 611961173 927742667 939709720 13515586 779570498 985968997 991854274 26759773 752122711 725880286 958243531 622761573 908231971 45432592 781614609 177045219 251029493 858330792 978807498 558934107 883612070 319930874 848895041 874413650 944515074 217652502 589944931 587739163 822885304 464431037 721207421 574382150 892726071 219674830 937853844 612408541 961241339 322395115 461167618 302872936 807923451 859080699 923009596 977847976 993412284 872146692 983866172 123827338 621137893 817299703 959870662 565117108 640079502 521260387 794417301 246324474 984944309 986742644 993649739 797735035 926832337 542151866 770379851 183987232 565964481 928534782 944458995 971146913 981396380 461601261 629749290 431898937 902978381 395952064 922807029 954824024 980855800 611174461 960223895 456228423 945160643 272804961 434216808 501628217 532414585 892212463 894691503 259535771 755992951 604129958 968828146 399553772 673339725 735192649 771649005 81544084 887284274 252219533 337645903 505722326 745275430 532906703 815796704 100550957 600151125 13505734 476413641 125571406 907901334 172456461 866163621 374901628 721274416 452993676 912202756 426570313 761609242 695969449 839813166 982407581 983961588 182202086 842391654 199130009 641068655 572007973 631177596 187964665 191764214 711841814 750074875 575188808 802588574 687815052 766982891 171178202 294087727 602142628 604118127 47653824 751963396 933721053 985353436 408313028 708027292 227678118 489926239 594882418 610168885 664950673 840164130 938564867 977433510 777121996 849343777 888855688 891439825 452165380 914446910 78888583 435576076 982659869 990368857 422809191 770645825 547922994 599107108 892254487 938184519 742819877 988181224 737242584 795299331 650627677 806820120 713544249 801238612 343895465 990945358 380964510 756276403 516512490 626371770 655284919 923498591 578660942 906008990 180684072 844831005 69459973 191204463 266418815 269075941 880936199 946720027 885062588 904999128 791999320 846936103 717645856 762120690 678060168 785375803 723478429 726550713 445882028 751188531 170918708 190662005 375445625 902627413 49934638 280005417 966101992 982753276 840109807 909517998 371358570 798714224 689249043 926123684 681098333 973273561 576480376 660060697 737980431 798612881 349525394 806393236 269748183 349964320 912124784 986192301 748771467 973696993 320988688 718174320 858989956 997512924 197051107 439170138 787981629 876770058 865105040 968653958 131000225 828384053 616708158 734170416 732347875 759756239 617527231 856775963 707460232 737026080 816721308 855852455 136333306 879638498 424582732 506700849 297417810 932768931 704745615 949290510 910205539 911040597 828716391 897488064 834261427 886370813 414367513 429836356 987095058 987322202 165964458 985945376 101627498 204913119 292089716 439560490 914031041 915836192 1663527 992269238 242812808 714245715 716009028 858772308 283220986 736722113 168776904 254060654 998137786 999067333 861731763 986287533 4913481 948870956 833344731 855965406 917206869 943946559 25504324 106371565 276562312 326960594 401511215 423249707 833301769 916624962 269124195 319178414 773470931 858822468 366249166 454150930 208538137 229181384 700115403 717888141 959611536 996296074 701811066 822497391 115310090 316886094 122683019 679013671 115345565 129005898 461941633 956133791 540178424 853016253 652855721 960328270 763923935 875938890 373285984 393928607 491386067 533109910 36992596 895615601 7304993 216293218 933365258 933692958 19077751 855799253 209580456 715356737 949790027 954068552 439141310 712505247 469228064 723631663 375334118 957106079 490300702 605827732 457159302 833255338 371762064 880725931 423752195 832381217 914183555 919550375 332586926 372482698 294118896 582547103 722483604 969661951 75581805 478578796 55512420 477422473 752991774 927401146 877171444 946822193 618315181 813312145 110780151 544155251 223878058 483594269 247222197 339105583 60968103 379045459 915389666 922770383 594808197 974759798 692879485 700232083 935947851 982242311 55243032 496064563 267131297 808931376 599096592 693851153 453326508 456669524 156084131 923842489 251031424 328771606 584286974 795666422 565700554 871058446 654966668 685459179 483470118 675561958 987569760 988447622 818148555 894401127 701728165 729322765 840195495 867692501 790074544 799490339 812821205 935784526 153823043 258356661 223500967 563341911 71339091 140963937 633059873 837898067 719707281 876870373 569892097 848084912 590895094 918392321 669202068 822463980 316067230 488881859 692030266 992550010 47339747 382884095 694032888 896518545 468466943 772407551 616097302 928613484 806620788 945930582 366649225 600805031 518510966 976562232 693929816 705996971 667267355 894464432 432094539 794999001 644083478 760148793 990669651 996362714 461843697 558779553 876756705 930691365 85895418 588195821 401827188 810687282 361496868 471515366 98316331 459049095 627970015 694414617 992530074 997095847 899766385 922363092 333084238 405325947 574566190 832550467 250741204 957171556 374096328 690547139 286580246 381774968 400675119 516111001 491198652 927517161 143755842 442640523 115347348 993281790 736917815 937266603 266911910 294561594 270876854 738438767 708349059 722818605 402329336 522779088 159181488 518841816 883154569 887457756 638915299 755267413 351126879 893255937 858037802 963577313 528832174 737816618 238785209 284415872 190061185 370972636 553640088 922398512 935951176 978518238 236157828 331520856 935837599 953924185 354489240 850065674 911615016 967540887 860804228 880050437 751435213 985819590 902130789 938866979 302838997 385526666 211113507 633713615 552542242 747037041 105433829 163148463 29344390 236625656 274973863 498921575 158009801 583505667 683417432 902980095 648438396 720590536 599409523 930060175 896022831 920784936 237904811 497124854 297429085 340293431 984039618 987470568 472292058 902869099 743602019 843122337 784798143 815725378 108802134 497837985 317633983 955979318 839633954 988990011 191564914 598139580 520146813 870278109 176164630 882423937 936490771 940675066 395134391 734895931 676711582 861500418 902571577 945138825 259433107 739802409 428391551 737720600 138410016 928272798 14232774 750260852 892676704 916168071 608425298 645778771 505811021 570540400 384166872 942279504 823093662 940227030 957026512 994088834 674995849 984672780 43712454 954076202 758031791 988808584 695187073 963761213 407824493 730353696 309952127 338891571 500239706 570106730 252431790 980939909 25005949 719496710 164819818 202298913 918459112 977206901 104091626 120546607 793086064 854935616 858707757 868055798 216838166 846682819 413602248 701458676 181533772 729706166 834759179 914421840 934385367 949214764 430410753 952307660 86750679 908986502 377075261 675888426 379172462 589056328 69678759 640663400 424222341 504743797 778347501 843396986 189716184 375487596 674441910 789591289 847157013 973022357 192474248 364175473 504265227 841726200 136347503 916022741 695360385 918916226 199373974 594920061 468279421 782396967 390435110 635245964 64809040 295063003 219853343 668014269 743803390 913732246 587808239 818005612 163073644 708230729 793726769 899679995 651617599 846447382 850541153 854226762 563230371 667675003 835796931 951668895 897638924 974626970 425732169 886381232 296178809 965554782 103002335 180566870 370350641 722509157 271288449 353173448 893484897 922073564 468548958 981182943 757996051 967399859 948098386 989209747 216252358 342629358 266938541 738042298 497542756 692557782 146538860 354618531 645101141 797174835 752244303 984897780 688247672 708111508 607506674 837880639 986704292 995680174 833178735 934250455 711328984 838254038 148173832 696169769 808716305 936110275 391976092 482430460 631064120 921821337 951283155 969444869 214241025 544986306 180258192 741442794 520211820 889360768 185208349 461110775 878028179 965875510 296332917 896823623 49438210 628855406 196732904 380646074 554638672 655223418 906151533 908921042 689150401 729519476 20566907 118951577 448328071 643620886 530328957 945600907 648242918 855917451 243505083 272121997 817348020 907619011 553626062 581595591 751158397 945876413 50621588 474519417 469141351 941664244 140102122 173891217 452782654 804575598 467464181 501618774 990789700 995475577 159027876 199899712 258389747 934379500 463264909 768903727 609840281 715108945 958383437 989602632 804406995 903129050 638121708 901339397 278019779 720913369 46403317 187405661 246050808 856042414 641724250 657658725 35455042 233134851 857038632 982739985 484375648 729450722 369797334 551473060 964451606 978820252 467980937 993447316 109670944 537683694 483163921 610813148 553403649 946672308 851526983 963917070 115584434 839893861 235638007 250236009 416016039 603138955 804669707 883788050 460278666 476472933 188769728 885594789 591306895 824277238 344787949 485414544 344152229 641608831 464953051 979381825 821214349 904098654 978797077 982690023 43848107 194400871 204985107 428234552 31598758 76245716 30511132 815636033 38805676 994775189 306236417 313625399 344461860 639792521 566165111 664182408 897410358 983816921 650476566 673648273 385456539 710706570 791649732 855996269 471492147 756344916 317846843 326495230 640363538 812798938 594292337 620591356 606087846 962539039 207097768 436304288 441859821 535316489 920842281 961931199 934261424 997427280 470086207 516561763 408358173 754418257 29495147 848420717 310067806 649991688 152440613 926879629 920111951 922979297 889038221 922475944 446545629 600000892 263332851 587018419 451931455 576574938 426224060 624675729 839113712 889980446 648964084 681288289 326971200 982080873 956121049 962422316 370797454 965497705 84573334 664177360 178140621 412813661 150002498 166101756 535404226 879153119 72639343 403921796 566411865 665827535 377133861 643285781 682997175 798385221 419685813 764404507 967695536 989108426 929124958 998253796 189497450 464027906 256178350 384060129 20948236 282212941 621348873 714911716 498045485 893454387 305099275 889716728 720024632 954837305 828039593 939804483 55544910 836572612 287457138 661981322 509434564 899367881 431338609 631879882 161404883 591575759 892231628 959922955 540968515 656640949 571694938 940642709 112335269 737965607 980946273 983220668 954308905 965870018 79337412 381588497 591671499 962794108 196206219 502180250 668259467 802393939 507918116 664149729 792405185 911033369 401334519 995172890 751848344 891075997 670441901 703520234 277279150 347402014 567740075 797969774 953753438 983867805 765688783 938104877 246905643 750556866 141814616 770840162 919430912 949750715 660099310 694438995 223035017 558366806 813964446 843590683 421661317 998968906 275148201 841526578 30458577 901380694 151353037 990674392 831336064 856554809 838812443 909091187 100436376 633864803 376483652 707431300 895547805 976165874 333574192 402795551 161964001 258847831 85564256 595710939 912672886 930017336 849520822 901425528 988354731 997396892 296604000 887294229 375641175 828004423 417957830 616122131 34684813 529116546 996109998 997355703 978745326 984928624 990021855 992680570 952779558 981258440 955031697 955776733 416689421 601563163 289766723 981716526 175486216 422581070 406430288 870460761 469297235 718764489 741234243 844211702 310117208 885281945 230871406 461805826 602358501 720676823 909344284 910226088 152457508 873835530 946191367 971034991 78179614 369968412 603112149 628387377 158756249 221310144 336061723 358667884 41841783 399817484 84437513 907358317 270350633 942634243 276832611 836708762 913269934 937550439 556599204 643523700 952611125 961305966 916713971 955268550 192883950 339123384 597390069 797016741 676780877 988798437 174126954 175341041 308429407 399725128 73504777 586701120 357317659 702334191 813678525 982390681 769216639 967768203 438266404 647751918 20591514 901637781 869005374 974155928 24872 143915188 680396588 840576721 874351059 990008916 972831425 992551978 837647618 958732903 545737987 848206995 743628457 786617443 549478728 926168440 853354361 986935896 170218517 235549379 639807820 675068217 321822574 808911634 374876752 544178391 810789107 867005804 606415951 904040741 125454867 687710180 549059280 561273395 503010823 552131260 952999419 979701149 307965746 782831225 191364203 591042120 122851450 855728565 646271107 837708793 328689252 820903794 16968472 176225216 626973899 949255651 793373523 978829062 243166254 720017965 646707445 999251707 915639780 953508367 693299900 781990723 177283554 341168232 717550823 761636104 798002854 979391695 28346597 101816639 436204601 563979503 482272180 953597612 624782010 629048334 786128239 940859877 402458131 777361184 561434680 902522595 295041975 860549836 924086445 973264534 247341834 946938357 846911426 946697494 605557529 652949876 146813653 271813824 524610924 595506140 738687068 957983454 973238028 991618421 81727924 276684004 599659186 666033808 462636074 611187583 172969983 432895605 703042466 883952430 650407665 861063316 513230584 635943624 501573168 966355995 7762969 290000892 256499858 329436215 88102983 302278628 165393660 285838842 133998450 513281945 924783146 989629231 326328814 892790595 55304454 150422834 609891787 806526364 596219929 685670828 941793222 989206407 588218433 886629038 130101667 703572472 740634870 905400644 16689271 734691818 179244374 434492318 982405161 988647962 270143294 990219187 655801706 840850843 158060484 227955826 626509135 752799525 43027688 437740283 275749590 509955817 169270059 863723135 124199119 305681222 102430173 540230245 847914387 965714284 354854391 749522786 69274114 541122999 976041658 978703895 713763207 903173524 71504850 817142565 112198097 189819707 690042277 791374068 983603628 988591199 19817259 687404590 156211510 328948374 999112768 999383207 164764795 462032807 788903431 978591018 233363890 959083171 795678565 861795182 194635485 527100874 801840019 958607905 345794454 790753476 398008553 796050141 869419257 885042262 590208113 993954564 411587056 763240765 102450021 424863523 358429975 695649930 475969593 783769716 122187704 482816645 446845182 748413602 797127296 905319303 160250599 196427117 301523953 942729896 499995216 787072026 814248197 947897532 522070607 581191058 943557508 965499856 580024198 969258303 812279625 870679260 983928777 984014972 218976455 283721091 302178331 733248749 963800364 992073632 661515979 854511055 612157199 931973868 252585766 350028957 732874599 823831720 926561405 987567277 441290933 983513777 245805891 881216920 161350017 818451904 242240776 322915880 741158595 964706356 481852439 939324946 868736318 879456459 355940285 973530354 756271814 763871882 98176199 342247702 991197909 996223969 530909278 950794323 409246342 928916113 342023381 777182530 359376994 791071850 678306094 720639916 413652952 863287411 229332315 388754855 747641564 875202582 236025978 701124258 813335802 968600748 328275778 701114519 278069584 529490426 257639507 620283714 229612188 666033965 594222105 987090137 633075269 767229446 756245578 985889391 529086256 658224403 14064370 843345819 627357003 825229511 787865261 797161526 802528851 861785955 597733898 904783551 153254284 364216862 463039039 699069244 477272485 746700324 103791198 642741485 285280663 981988609 868104468 960576879 95890877 225488559 204682603 321932369 247933731 556638917 470018478 808146519 810846968 992761903 448003226 787388161 709109838 718306740 622679487 696401499 2185183 701954790 532987098 741013607 881449278 980293894 326171696 694091962 246410357 404650492 672155667 931700389 37940074 189672250 786807693 923071370 450681493 916488207 329620325 651066086 60427062 841888839 540906256 562724946 147699042 734939552 308456497 958592457 210737325 844394901 974012112 989926648 356226402 702061223 255432251 720771803 802796629 815045906 692460070 841101675 908925421 976827537 216127651 343408113 584986537 986810976 671161630 836655405 964149765 991369911 426467705 676531217 771981064 837976588 392762982 931101323 188972632 322844829 957732938 994682799 108001444 551379913 363639057 621265089 84405005 649941038 935673171 975428942 753734341 780389852 483956355 604689124 227959050 392925241 70686694 285312312 355950841 581149580 669429438 867567673 708911593 953937257 391352774 797426925 538275327 948329562 628918642 668333480 112821511 785983682 826808866 831644806 960842498 973923093 1844328 77879491 23308189 294687193 231677943 927926469 19236948 679461135 818046294 867401551 837293294 856437677 597629067 979816500 970121950 989528822 358630630 629734837 304246523 851032956 306603928 470416939 21863829 924050146 575391170 654018963 810026957 876920576 982121861 988281473 772885041 984609375 870797959 958940843 405346228 830487851 991686103 998308542 451595123 895761829 507340434 583296743 52278144 226602171 477073882 530266923 930128860 982255636 167057564 847431686 153103094 659117142 995940222 996883334 644845395 855442066 849975609 987613665 867338409 900739466 416975026 540452787 47828611 844168350 612724908 988729105 133636637 361170158 598918825 850830637 262742746 562729670 511064262 942766297 807442262 873731517 667194096 675017168 823804398 926574479 965661321 980501526 134317180 334247983 246166088 776039349 838211782 985862824 401050234 806579566 778182016 891536325 509409407 697342880 564663805 670632306 526114204 936357917 226840372 794378647 325187643 891844191 835964598 917555674 5158966 136690638 24886152 707407128 275767790 962233896 888080842 912397759 430541568 812422499 441039590 876366148 428683858 616309406 886792560 933017983 366852722 387766644 837384918 850879331 166010729 994741817 637244238 988447240 630900814 970661146 766402872 950044440 98538220 668979691 535769893 883583777 858086611 931018315 90103189 582951739 153718310 572578722 415653431 719979571 11980430 362413233 692561220 874289809 127235720 176388930 102263512 907590448 693858191 798144412 436178143 646478026 753073162 917228763 434960972 529109019 643101989 792423209 454008430 725312612 211338335 700313354 388564720 897846709 425133922 636157877 839966343 956497840 312773858 874958619 5628733 850800080 517734936 942834466 925797049 997666358 837182268 858087317 159407293 500034823 208167721 519136875 791034227 833976205 468766823 754561455 743176380 922535753 393987748 976272959 753332620 913314060 643075799 892815568 32723628 311283407 57396586 767349990 600151892 813548448 690848254 739463770 715314538 739204419 639395263 774427533 149013350 472137734 282475840 641735877 449342836 985622173 78579127 587118544 897816529 984173572 512670563 969933952 957929453 970585926 484620981 765449668 520710380 914162550 897767384 984041649 380918745 496457925 596409639 960619183 344757461 668809692 561332824 825249573 426766109 831284766 816369619 904917492 578989471 598033032 497535867 693191422 473460292 669477664 391583899 973280721 268007803 351466513 466786363 896341304 951779129 992259371 793967194 903108030 122019251 978487208 541506585 873018211 697716221 813537370 37120027 964406261 762421130 778951231 913824226 935387518 748321844 980766917 176675637 781622380 791307541 994763320 991425148 996455170 484638385 963941026 594647054 713220879 901931372 982501432 515081975 529150069 488860686 531048719 266794542 872448088 554354537 593483950 976277424 990058221 369552553 553738789 504856716 973467328 498776889 600422035 902746945 992322445 548553743 663188876 153538858 562628540 816917595 921850326 898397327 927199192 834047366 955294627 480877210 541043427 649763310 791817953 870984400 986380925 145473939 189956293 518063810 964255270 145702163 316093301 969940026 988301302 142084827 348130485 784834027 947192993 394496788 674772793 37370518 430755718 566306456 724323437 36394283 111898685 323348730 475337371 650723438 903471516 70004758 524719583 663140014 813995880 235564105 892261682 160415727 852549003 849038490 934026336 737177105 769496318 91024107 137993654 921524930 946867643 587370349 596309706 709854317 870048505 245939654 502192589 147839169 682024895 541469377 972391010 821177691 916616383 641597608 845086525 912159884 927146889 405883278 620658601 169749731 520986758 827557466 843637114 291133555 436560711 575011313 925308971 769177648 788787470 877990528 896248079 487897861 647773622 520989665 873724928 495220809 683637772 184617739 700327421 535183047 994011331 373656461 779501533 133750069 723806368 664092136 870885676 158219975 784272604 723926519 923857834 959973154 972450396 689178993 841075302 962505864 973207092 552048830 692899398 979125723 981667488 952187543 977042542 546142418 674082550 194644451 658212973 693681570 955319854 473907219 499103205 674694077 786926647 351494685 425094528 589502606 883958132 419480793 902763192 859604394 997887445 70644681 431649382 27694649 142341641 827214599 942467650 165539079 547182629 621607414 983176483 193524037 477170336 576133970 745807356 883782491 905247531 628367447 948353972 276912321 748644885 450781438 837002148 56580629 891176846 100332651 655850437 929915254 932567047 949372697 971203085 420027107 860763595 648913936 982218460 150292626 944015655 626760910 999309661 342035534 410632268 386560868 754223176 792904057 986308173 419701482 671474308 312833278 937777605 93183149 191101279 861115609 893753064 593859285 879637296 405673514 989995321 637131496 995546879 197121218 496478225 783807857 962615588 268680999 849929034 764395516 785021178 439484062 902234718 27612775 500588439 190327694 224495178 861230412 945661083 6789505 986924104 215473627 406699400 333116341 759641124 269592193 384409878 772097916 778450738 411773069 566250112 1936151 326729717 719074750 851908844 372490234 475668963 437607369 772706829 305079897 676270990 704418454 932191164 963521063 997435840 15291168 264643576 421070949 698915819 141082052 312890927 211838420 955064267 317869787 559913288 84728995 586765541 873420354 940214087 557720644 768504461 31427937 254250824 829956045 857044310 135359173 288570809 482449837 577013619 469264601 737760618 170668787 967322094 864198752 880606220 272095370 565633418 911017792 939844901 765884195 922705354 235906295 327384310 591505509 698539018 439437270 488870432 367342696 556550856 168726096 267720034 375596761 718208661 454945964 795391906 962948460 996105372 555785021 572983438 142199616 359822789 501893188 961102984 391322337 480756064 74805891 989583949 316534081 976964289 950921828 960319876 386070614 644812531 896875700 911136042 58715408 300514001 648725347 991146789 660667826 664830586 33230243 525331025 30307206 317490926 631648274 968497296 101802931 844049486 696958842 831812693 174230075 591650711 797339912 838094659 203864778 933581758 727271924 745948228 511895525 543016765 533332749 819670216 136032415 802644386 776822524 877191531 952862489 967177026 293421581 823013459 696599204 710332131 707122744 880486137 90690848 586511032 437069285 481152116 101720821 364026824 287528430 785907062 932520821 976356407 635221343 975319515 400195568 906157858 38445794 216000454 893318086 950107291 959359869 990333212 351232648 768910315 132043381 697284972 341651076 371388937 143946018 158052211 591783770 625910601 274129214 909752865 71813582 641616161 435227499 876258726 814703451 945089523 679913446 845893477 117193549 177652657 249886158 735947579 99218206 737358567 817809916 955344729 123978280 360935439 612775568 664713068 658587395 898298196 442169720 598153919 979625273 991983074 723809007 792262759 707429298 957294964 456860864 712281546 357717136 746013760 507988810 839404990 551762333 948708986 448011407 971354340 79991395 488469155 498408920 932040457 399675290 514972114 456628116 998338152 706442207 785395922 979912264 999375330 695920335 919851367 400983839 754789731 50052910 694235495 108803471 437922542 899444296 904558363 113099131 912111284 348718628 844416719 11622039 411729685 59707062 425440135 322915502 879434454 809828494 877902855 638043983 682402489 169571943 701961503 296841706 795337813 174968034 722281727 795716963 941173463 88617558 798391066 65720200 492862269 218902003 435788591 907687324 916095035 693846454 853123893 704160583 761263857 12731171 643893048 446400276 691121825 80756932 422960203 909678722 954010161 793339033 956651769 29331053 362473657 531637441 544839874 173957662 937426571 437604696 770457778 741153949 843976758 614797166 693303652 47860531 845432536 978881017 979036378 603795226 931823829 811479940 933545538 823942795 946988715 653634360 741905914 778692223 921444739 322888474 638227263 378290288 550792305 126171276 676148280 640212417 705962744 384372230 425920034 209693651 984622405 10063324 909753454 318316937 500507413 735520590 894691124 413588764 557269121 240551439 993176398 517800980 995384562 408565837 936947856 824799186 972186911 539316341 961031084 510019403 947461390 259890760 899364156 284736338 525477085 931308645 937799900 874021691 968737056 57652573 536167162 356723949 920226875 625453338 989903737 324197450 545854202 161688693 162508931 329005377 481040724 465764763 576594665 872758256 924631194 628224366 709891596 491223420 524366141 713582193 855416943 28851131 145735415 698790200 948856882 501458672 530609304 977205952 982130018 65866590 708529025 864908448 955813049 374665937 990542434 565039263 853836391 408417581 715617832 911993258 912216593 702233814 795772414 729001354 744366639 329836582 881565601 968307874 991959208 467559797 840493690 79689942 557041163 32918906 936814067 391649366 870444399 30838945 879141146 657375313 812988087 620567095 767604580 779057234 830459733 273590794 652802422 538422186 830030795 805341459 905202314 414378738 721316618 128217741 292737277 291596732 490082105 274086015 396698193 951841214 969578955 245727090 323687674 153759067 282643702 427158066 511891853 32746365 69363933 180274540 402938841 80775719 414022516 513907320 851907397 316926442 480300542 973390451 999194494 602930954 881091631 295846386 971394547 32201241 385673268 760501145 961361379 147743122 666769650 510435379 667871887 924156278 953362187 227612286 632990626 367008702 703842479 983616231 999143723 251229881 733594383 278729565 879181439 555611621 646729700 381331659 386105157 659490294 875025347 509864152 583058710 723128347 864746474 176999461 524504957 49611 649723903 20067446 399210157 981997880 987102388 358966329 589089812 555890505 633108899 94553858 873101434 116131599 669510288 95520353 358031717 515871650 892184856 336370268 898950479 415208517 623821649 538758032 736538843 573945189 813365252 963598201 982372716 291248524 608639547 655986168 724024239 390547449 806703726 287221468 683070304 41343675 678514714 653946260 723908994 868166114 990475613 158850773 343506162 907467638 930115650 122251397 843187534 322782680 912569611 50178018 517774112 44483203 766510019 42239970 978574047 872540764 960122492 538464283 877284544 34754060 447094592 153528343 615047008 886434527 978529269 504816540 549210135 458455003 555946463 695822892 724691482 500423941 518315628 253863433 624662104 350984419 431363352 51894337 433509770 703951469 921024621 127569513 975337923 993945877 994136561 926954529 961165238 471063909 761762590 754242602 938444515 936661078 941796642 4282810 115748664 337144065 598578251 435267224 881681584 28701897 164104214 391438052 943300020 107230565 718502509 18095753 598252757 865416486 907576620 375041030 635855379 568999348 852734298 36192359 157604033 216550418 287229891 363618914 605534853 770104839 870715225 98511671 137810397 900632691 904779739 900969965 907786213 306169976 484071910 222738909 375064974 635767991 646181332 379724100 687476334 728961654 968948388 589458608 774522559 982693040 997800301 75627715 700775052 745773961 759723956 313387014 550090234 222875133 622132443 569133016 784513996 137330762 330561214 195270071 746633463 526698608 872964036 806149263 978689662 484857779 518276930 946612858 955068562 458734809 939154809 14834774 982090710 457586412 615729000 523391758 842197711 627573166 763435799 826249711 829243840 962509165 984193043 715307330 788866405 186791445 383645452 648169559 714691598 190844568 673720816 161584361 700568746 539554777 688866159 423818916 972720410 86401133 862565736 656289813 889756973 224198614 496398801 186333848 807341701 977058297 979187143 896719168 961288703 385821513 614924282 544685736 690273142 103843831 686567187 837199711 940265282 502373206 682757020 118991208 245195373 986878414 993551209 24311303 456263611 160915625 455503410 727522702 930626165 603671749 785633182 521738928 704299033 628088454 963459161 293585581 394568940 427208093 430705641 871142817 974668708 824811486 936911959 73505731 823483737 455539468 584535933 747141242 911358424 758559224 956520396 364202634 584163519 912177161 959018116 906327389 983572232 347378942 872908249 235917942 777121421 301843725 796918879 952478870 998517056 159075254 733478761 523856888 662349837 700117178 716426485 937924655 952211805 460443855 911521415 863549459 911246965 53249446 162741212 519232613 531957124 215153138 241361085 349968967 500268843 279150948 464863848 670110028 767014244 245697698 355384924 214287786 517930706 467774698 956420852 487171919 684605939 99184623 541611945 567613798 864849749 797896425 798350734 274861615 774536556 923154972 933523040 260693567 341182501 938739250 939249503 255872883 625826283 449277007 865025363 79654416 404154325 775608246 874347973 623227577 715385635 689966783 724836362 454490788 782713232 74050731 409839223 703593262 881181319 141451918 245588213 21317778 136998091 735214672 746655468 143143413 707723980 687943636 932575158 552088564 755535910 374137055 734300673 355863232 732710901 382950954 542967649 497113548 530814171 149764388 206117751 849132733 979657039 48058759 237559031 144428747 234855033 752006201 775942422 733100435 869030493 355840423 401764085 829667426 978090684 789061310 950624016 695932520 815137205 195631760 797612105 603689142 925028974 638727686 662284392 726186776 867879519 156960850 884344433 450580184 546809167 109911202 900081216 810192708 991135096 458291749 706089410 689358766 805182021 769589382 887720910 785588300 988778965 828447395 894275788 983952412 991704935 619335641 636077677 437116991 624146620 904482645 980951868 810475849 854113662 653359533 750190273 348746460 937795721 958951162 991915385 345925984 515690304 146192152 793713805 273900295 991889118 748702037 760493579 578407766 717669577 810707729 968454187 150785744 458550131 247703763 436937373 940118870 940367327 477760887 659205282 269536297 682853487 539980510 837379133 166757097 644633135 716219965 806883065 112820211 896633736 364142360 997317517 497357584 639801943 560787091 606861736 241742489 937329263 840457187 954406511 39966477 346747832 543894420 768394231 93000822 622045624 384133880 425355395 196155217 409399596 709661785 883269949 510716118 886620591 530156851 910647331 581678739 776454508 141278107 831143982 998609544 998935528 971174985 995342855 946711116 993938624 31403062 78386273 562107173 969969035 592506788 784661028 760784680 928462209 944397501 964402233 510900703 848617711 992294469 995014805 736974859 965633134 625590689 796514391 552377052 845141281 758502387 940946684 606760831 904754461 611602002 896818914 140555138 493376571 908123358 928177424 441438162 709738857 135615438 189473180 911417638 938760010 629549642 764167652 818524480 895723101 462219626 887781185 383343673 399222893 66618079 555895774 716647954 968241640 280544857 420650509 783081709 805126161 939617972 963739907 441975924 959429865 201929177 888872162 553634267 981947958 479806454 874877904 657628057 763612519 596841852 964009588 109238464 152972725 555569889 956874545 533491434 948527875 528179168 668321667 472378804 885762844 735979764 872416045 79286489 442412031 910500533 917326413 740013662 770271708 383955217 418986766 484156441 526444080 347412360 954915498 367786016 590581863 228526125 998522938 515666498 894140193 777355798 919887669 996899104 997750181 932859640 940378592 952091885 959160843 58692979 833440899 396618602 737069321 627333558 869022073 582292641 956126652 87415541 925388107 321832565 508676559 582898034 864716594 729463112 902859704 355490307 532128946 267582680 626348910 247037839 935280810 157415729 951577283 454983542 787344367 149159828 271564167 166531892 230867721 844845992 909221926 954571375 983078682 470503989 577308314 138712412 210823686 626522140 639405143 612068729 640197595 907725577 984344639 482150275 511514164 454904609 548535906 668196597 740636055 687631314 890649597 465015048 687740765 512641318 540241192 599008923 645887929 442530105 860238892 376435266 470604266 179830946 423843270 574293206 935510404 608882111 621870842 983413031 988809690 981051131 986036874 667946381 935478880 520894167 662509391 302184285 454741890 486696525 650738872 992259436 992649263 205997826 815237093 572423238 708348290 115376240 466030309 158578972 273011329 936504773 938626627 71716872 899748961 708702895 835202407 703152123 850238009 175774194 382375909 165641002 554899414 410528885 656192229 274106060 998126005 961768433 982310868 115301165 669162464 583214962 702950784 176314251 415541038 843686069 928719717 796772133 880543329 429456368 964870044 546188549 907573688 838482640 843204547 771806533 892600870 931029713 989461658 504960952 728056244 233888548 916083055 477464358 849843637 732475153 908522691 638950319 750871104 129347141 966559313 944818514 957997148 515214204 980418412 295544303 666367064 740173620 783283252 890333184 892526975 726410674 838416224 475299359 592569903 221975709 397343930 206482637 702674266 662549412 920458294 853265976 904261691 388394009 707309482 507486946 949186123 433886972 986320370 461878049 899767484 209678445 343159818 364916215 439861144 561108896 798612435 271579502 998751435 582618755 583564857 559172144 765756287 518219357 667366485 174163454 986940831 583174770 650109347 45692227 737723274 552018968 857014035 43028608 166386897 524408187 665661574 281238266 960310858 555929245 984893232 451658615 661328002 595361281 817301856 923223213 958028076 420594956 429778253 296840343 458638570 981035612 997772834 4065760 343522143 385255422 815733082 864644337 998596550 834035090 853534839 65504500 726849729 602956208 943042637 330900449 512856159 975836433 989123060 621769308 806254588 761002969 873103239 808798923 854819277 534503952 988538225 895501623 936879527 585777504 822254218 280945208 784880611 308870853 352560777 993844548 998952460 336325025 828115818 374486644 731022301 649668460 897497397 534360549 563588312 169537423 469817542 539492238 830722532 262205172 850376913 896008875 974443624 560963121 775965697 176878022 878724726 251013580 505948274 907512463 925225099 576510940 798309679 655473350 806174624 960568962 994892597 785073288 989057239 607340532 697182454 3652729 670455378 60823076 112825253 734036038 846394073 886785056 980034112 574728105 927831643 845690063 918570509 123597437 801669196 76632785 278798584 326373282 395225422 887702239 912904190 732261714 960389650 768947269 927665329 662920155 926536247 364048755 517998715 155783615 382688343 623637754 988313749 130468314 192833173 804254542 994269404 766534669 996145230 931877082 937931273 46364050 996941307 54226893 314730141 276799362 688378673 569895295 787749447 680577419 690396904 809452979 876466242 463171163 779098099 668332555 747404907 803440996 946492465 565403906 728290762 853500605 955678773 674876898 982405834 427982732 626596594 460375321 577167524 568954361 582118422 89237412 414072531 978048814 992676425 499887995 713385317 675414063 692959215 390882061 845128772 170345817 817257232 981048196 989712728 474280503 813310262 920447067 970943944 484303268 568434407 237142154 926973505 461590436 632459872 752355711 887763265 981139383 988958798 129341287 482547498 410040047 431084104 555763286 863500734 229581262 876973615 627427534 743235162 390220250 723883761 448418124 794062815 368672551 818344508 610530318 955615814 973044258 984951954 414462944 850140864 412368223 508140306 603257342 943004229 226379682 335711435 918739641 981827772 571345712 858919590 164765241 962417978 187082056 474088043 547500818 547692951 918024886 968551402 813369821 857485540 876798370 920846379 811228601 852093598 387864779 907624802 725206599 756940742 755034045 872950321 45325232 905156560 734608468 943789096 981872399 996400216 623973598 995694304 756290403 773289162 314794600 815186482 171635733 656152919 908179870 946297500 260839380 805063502 42454313 975472893 171485169 671316031 139850341 372519176 113059512 987918172 926573011 963455758 501412714 762936482 12080864 290557686 479996649 684010155 318750842 915727684 455077967 487761800 211482186 867027304 467447106 886527952 762213821 990612151 240518854 409955707 883724015 931368343 704732198 810469828 14633699 580405528 755506058 988250080 453631394 626566014 293614148 811183172 689002468 955739906 259074288 514818672 566434027 593286984 892460516 992600577 795883507 929652311 523617570 823848905 246590541 288486096 50251431 446177696 427484708 826080917 217553544 330372334 720925300 826837191 386947210 463868301 988491291 995731853 293984466 604066079 215381018 411990521 929962399 979234399 181894988 983504405 368622405 596722277 384310144 587756765 518770986 633360674 610864035 717583746 807023810 962052173 307067316 861405923 844729171 991704979 623081321 988486762 427199231 712706201 34782147 856537376 77846087 980668154 245609367 833207826 486506331 701377805 526290745 862908774 823395346 828789872 501822079 887274973 955021242 990990587 791082063 868095011 702331323 723025743 726284274 783843638 232214953 286048843 572937827 648293085 279998557 789766083 135686683 468551006 205523869 576827089 268061849 387725265 444653842 649272602 133196761 479724702 920733889 963589078 396868801 490894506 312148409 763366481 17652071 894867629 817828995 845330830 668780410 671160470 845273842 970579575 978748401 985098916 383336336 506546167 181087520 223292650 591470080 673766741 411710197 676409119 285702175 810535763 297105170 639451882 437179580 715126118 735403748 826724520 211028718 911952203 792813422 827750289 887528001 950726388 23997638 581561562 127980845 160264635 675176795 779474722 794629628 957283547 755028050 943032957 108756168 462064603 452521660 513262390 326403968 786688247 172612606 732097618 969554742 990859639 56266990 825124029 447487043 506306159 869474225 982914774 226456629 930490487 568484577 912976176 240339904 896417060 536147230 917456777 831013394 945230131 239489311 273257378 911599686 933411347 665827624 743112678 499083260 601759939 447910327 780642845 260185646 334627225 233453299 914264616 559932837 977722594 834819066 944889909 439189790 974653334 193887114 815564455 965157272 995038755 521715990 951207887 538624904 719716439 192001573 551189493 573726196 790883964 80646210 195103303 493870654 726408050 591414056 936051921 658362313 849529367 643170172 932843118 276638222 704234836 930711446 953976225 670430526 912444554 188658274 562585381 271549065 854758362 242491898 637737414 617921749 644412214 985576225 986169816 105308723 815501382 732991582 920595348 979045996 984884459 710222693 845328135 216559208 841391347 529056232 611450824 926601895 987938208 955586227 986450013 128050041 758220338 599159317 881188023 893523881 938454435 978914625 987991939 206400577 505232694 644639317 911326152 770640327 996560316 946141080 984814692 151653585 480165560 931143791 932156782 798010798 859004356 190425250 931508701 213788857 315408802 757693032 858945269 129302721 742821012 489442127 887402745 996857694 998617938 615045653 787846609 85675049 284082668 488400301 610114669 782620885 841275776 242410689 376354211 503358744 667853412 886167553 935785493 235425063 748055606 702944287 954476434 55596513 860247945 346246085 979524450 276224219 741183259 751074991 964961716 140968431 531014329 277239821 308921761 342953873 581381281 524476600 606637181 965927507 988862531 433031024 846040178 358250241 633344694 650758292 912211830 866015833 891205053 141727212 474929849 353547425 838496573 599086881 735743949 523817131 860051438 496764345 638623033 964419131 978064262 749963045 766270001 347598584 381174941 690408082 871123843 578278219 662730203 494891455 709971424 848669631 951671420 396241512 984487182 808208215 936504396 142816276 879557233 475782050 600008168 646672490 704517498 795223227 796567331 138367338 211890684 328466810 654354624 349609813 697738767 244518564 960691508 380853991 925534194 111646306 730397394 675246677 803982647 699018125 826250837 300403184 663271844 240952914 446690967 925711137 988652099 314043253 760509528 882194244 907184305 552332320 578723297 318994954 333207859 4499615 85300255 618059091 889304059 619033620 688430866 628884751 632083085 867168436 921530942 763659282 946616912 779860835 795478852 292570750 362949382 671747011 744969104 737582221 890040258 131102468 203661916 333938563 740868631 53574591 288673566 675344581 821439306 211439341 818883113 240779152 887491913 247509063 690300208 347677226 646127027 494880832 938927230 114651810 475574121 698742300 846349980 704762258 724042243 181143510 801626416 430663403 480786188 608594381 738168304 649746718 939488125 253839388 707916580 702385288 887662009 200329543 941672973 649285972 997805539 721487872 855301987 612808129 692150507 545902931 853951219 511704766 516642375 285457940 474706502 97571511 295631784 847645212 942587803 510207020 734735259 925987088 998212423 356287749 645968960 504604096 769194120 274694425 373125867 478153285 659384844 460063124 964278405 264214298 421325938 368186663 708415438 846662420 864382922 992564471 996507202 446591991 847267843 848265750 922511775 115887484 605479900 560664303 810521355 316970637 625184568 665699491 888834143 845455045 871835242 50749732 834291969 660229981 698799220 717836108 880670541 67946604 149043091 165870797 829102455 615153277 859678724 537208304 648656981 744651254 857513832 349991373 632984905 741064209 897208726 812830536 900612486 377046329 460352404 479186882 717309356 513518354 649916454 63047668 880236549 89856386 341565657 450763078 686610364 941331684 955205538 907638722 993731656 825294462 888825374 695432746 876333751 428817464 962766048 616991380 745049138 22550418 540414528 729406624 907405001 200343990 867683441 552096730 594309358 769893896 837124821 201619880 271821297 947044661 963199825 442685188 904869185 590178573 700274742 33555077 301279034 168731808 361834033 859920281 957853328 371653925 866108973 364548094 746704751 221970255 323788539 205316271 542193167 979832764 997417937 470072537 625941545 534425401 602667489 634815902 882300953 985773675 998939914 742844027 963751122 882652961 913868616 346274548 959770546 353937346 547908633 785269362 927218272 226483638 811416398 750527118 819641570 618928025 741302034 18310895 424357300 606934551 620652836 44499782 694843237 255765262 810617161 681255605 958253777 289095659 756650417 547068440 597084748 284191457 675983960 544603423 583353899 550534155 670544424 691388932 848901121 980193069 997362065 592956072 917359912 931752977 955032821 666273395 948836731 111262752 514937055 258369752 744226924 170842550 954481202 299245212 706414324 549784888 757299193 286191356 809339127 880131476 951954875 882129476 933428910 541036700 784693870 346838747 970161504 783327659 835404853 75677362 349732603 377605359 558331365 799288562 803063192 545238087 734443750 888875628 933191864 567658332 987428650 300671229 948762140 46216986 201749657 321159218 877139531 587654256 615632842 78564216 448038586 5817026 570028939 643995806 828072087 471306424 590594497 790519091 862024225 594591533 983491685 810332063 948283539 549673717 627992816 853375910 980318462 434400155 712363722 520929290 667707840 846345453 987690495 322668097 945197583 149081380 424529601 934163982 989997443 860870881 917698555 755559036 920053199 368379355 664782834 673737392 874563742 216830822 764958808 582239876 748093432 801681162 938231832 770356085 876621155 314508836 893181073 920059400 977519589 998016986 999021464 996472561 996634943 267040404 452856943 424836222 709132328 190713404 783432336 318742010 940057971 630238773 743898769 595131931 849121798 505485303 656539683 160482605 710763811 100833810 191013042 288823693 500576409 214670976 435896627 139165770 828156518 353025419 758878009 964860190 984534577 811411646 958603828 523244583 621016890 394221718 610725174 970506608 978777373 383548290 415773470 767555184 867915130 497679501 963358846 909655500 959536594 382418529 779403840 553220994 668223841 215383078 485948417 33742128 422742001 209076353 342072628 610954240 744170579 716635195 823826158 443410877 661916792 809553055 819421992 754179578 835312255 297662669 994267054 492168961 551007396 822393766 972151291 618658842 724004313 311784724 673297912 686862800 694422395 804885136 883690267 400116017 878431173 686659854 999063494 435002731 983268674 768229419 842215350 563529414 980652058 969444971 991174448 745354996 785128411 960473175 998232107 594974318 983657787 628844982 873191355 160066507 581275431 928126908 933709182 523149867 677996017 958002137 978542217 94049692 439774124 172620301 633299646 722536105 838643280 159276219 908428584 757627139 813308392 36257278 980654913 108547967 174291532 972141138 985506792 320882196 561064846 703746096 899499126 554999801 844393643 920755647 954162599 614394434 947943101 319374896 542556827 445100342 710862878 469461272 604794637 160623271 984612444 133800613 763612030 837141970 967394087 663713076 693512943 736389173 753896981 61326908 460345103 472018133 872840146 637055507 757042663 695133154 804603963 314751101 445202960 445365050 831224580 790899307 815092253 124361980 233676397 23454600 194675987 686653218 811137879 369420786 801431369 47730210 872534989 756019805 999012401 448763869 758146730 605271559 981840185 731389875 977903533 901174944 947103929 532441346 555227148 486539903 933922998 394845612 982702136 485439394 885744529 995726615 999384791 298422129 882021842 463084373 531424309 171789063 857626102 11152055 216701380 352991890 776166041 34772799 328579406 904572813 999387409 277381555 902820227 289919789 590411243 11349384 677668822 364228169 608076479 671549789 883980788 977341965 996350650 836758412 893652282 430693711 748583697 324159379 473928255 954059700 959615238 14342594 757902234 494179651 553237161 517870037 927108812 735795643 964652736 672814593 917286147 462529160 635226100 127866927 826025159 890736486 953256903 657350878 696765524 937382897 944590438 248194240 538984256 89334954 954169255 841051934 857805640 165683859 594893319 319805462 865390829 945118878 974077362 198669073 813663535 449087115 453022397 154998453 422964244 546437746 906334012 190471772 940231018 505969077 902756548 820489514 925792996 609610143 762129285 346203415 606810194 216586074 421097428 946124955 996614985 553092924 653590019 566452949 850433922 837535621 934724318 514112735 652899952 48576126 60620713 939175185 995401952 126641823 786552827 888703852 905006845 244242553 568253461 217356689 458743385 210983528 367855119 485375454 609784182 792375395 904854352 167506324 911075711 469360531 837491531 721225214 970504953 771983012 796154349 856058621 888945628 427318984 845463585 490569868 935926945 629724304 877768532 65915733 794191153 274823915 421856569 269191759 289677648 223989017 693361209 280141627 453449899 17076928 739218829 171998984 343417286 828706205 856981155 537446792 818410090 644709528 834033682 912699500 972329966 39318713 469529428 382426680 932268822 956176239 970400629 349742930 947116609 79551524 211009215 326525142 601841044 600270113 629529232 299860490 769637415 501337760 574924675 275630747 304769143 863495975 924640298 618581491 921256088 604428704 976542545 705199007 833618386 228990141 535441968 507691331 511945975 304939756 742565363 732720469 939825507 576069763 692517624 785928150 904640545 241362939 819442185 717208062 754083046 150867329 459256357 693488551 720999260 251517216 934741419 372980234 677501067 3319963 226701580 261424310 934557073 845495058 889809650 146481427 659394721 851398980 916174998 836325919 935238353 531452449 845511987 658395732 838657827 53313900 727341700 125417136 347113890 97163655 351475046 849600297 920629482 254798475 814203812 876919993 935367346 855982906 979542062 472783407 949218048 946016576 952899533 50310244 804540804 326718234 770153332 17077596 641572233 443940545 849191053 259836612 306813164 786758263 899302296 941728583 986106464 782475663 883825703 382607288 477897430 692960436 912707867 960306331 993522089 402212453 972056285 975398554 979236311 641520557 830039515 927378822 983470194 720456849 801123184 988426674 996005585 237494081 897327104 716717197 729537804 277551752 943693674 133023363 997175822 47683812 222700229 908670237 993810324 697523228 876184691 371217680 748304175 773975 364899001 227799490 365790104 239588483 774987518 996226411 997869853 758720602 944141471 171824279 245500541 205979814 999200291 315354273 896040118 512814686 531136174 598221352 846401071 902926662 918170832 18882252 541947513 509143609 866209280 917142821 937096506 516786795 758988635 465157518 601544895 748558437 921299629 530947158 761592032 800550569 950519045 314854135 543926281 778718168 918177095 930938692 975847216 959780311 971541267 559027146 612201685 496561156 775592130 763264649 904151110 182721355 418544756 961314553 976168079 296556803 620467915 777870715 814805053 780476241 930513212 33820077 641458014 956962205 993039220 345076131 487761909 198286968 768603901 177723954 642507430 164435781 364390199 734110684 985879960 79384285 419884439 372755895 800910282 148796172 341748748 34046056 870707941 211345192 572458511 469639078 480036766 840090392 939690347 853105004 972823029 697229156 854783962 128026685 511083470 888963793 940247670 74904008 560675551 921235349 978226691 957759345 994036153 110305978 204457579 769702043 962970762 232114132 513043169 130909806 691100503 943709131 952595284 972214372 985826120 945849972 959893225 188911690 191225641 833339509 954175858 738674208 959499756 670257181 928663265 49840080 403180342 114082868 150099309 784691861 860050660 402739459 490136426 296795509 733780989 817747933 916304004 58871820 715277328 218001363 345609452 215025446 677368351 688793678 971457867 314831678 437805085 316874616 962548467 417675166 464024784 898369973 911110385 20337589 683367653 725478435 741011747 33736077 133328760 900882235 971556557 309951520 431182013 785512951 959852831 267173345 748410518 883112428 971704132 651490169 777328760 680362076 907304616 482486333 837158175 912979505 958728988 47405624 812377670 206434934 427484543 739031879 765572452 228429377 779437236 304725456 575372868 971957780 978711394 305066058 662190035 772924643 955611489 390266441 681722378 356713886 788205970 754817343 839051713 742159940 781295949 880634400 927369372 694460257 700129278 242338783 930578928 685721325 924881858 516919327 737709333 928746932 957192878 790050012 793312154 475708124 952769984 488014097 794974212 984341572 997845569 801028032 905408293 170992244 793491341 980367276 996406202 247633563 594059964 512922591 869151858 564219513 669337119 240458104 374083432 166182550 751706231 708704460 843670940 357664060 930628292 492666868 569800524 910560663 953784901 980171199 994638600 846056955 990366846 446422069 452220879 269566065 463180160 812559503 882614464 341664580 822765278 478514340 794603808 47709484 413030605 578309816 875749575 39521900 986481787 967646194 977370966 779632473 794231241 763118588 963601032 928691514 976331929 32702484 933156681 208994078 844385920 465829094 873141920 322250545 700670728 444860116 933016915 677706503 807876710 549353429 883170914 915910918 983932781 63731320 957203249 356613592 763851380 802715584 848677564 81979479 583050926 659448426 668775139 232582483 725815948 389409370 833707012 251775002 456285991 865169734 990022336 327414772 433433808 27710969 500207041 850342477 896939452 757297355 781514226 665707700 774736408 146940862 322800114 641811793 659861562 496572814 553030544 435926616 645547856 806518465 962973694 157279746 186537985 355993475 983138900 752571021 952312788 957556457 993450135 711403197 739615814 358072971 835453216 42402917 677253462 417860116 511466141 80206784 404540495 207267103 292820259 996384382 998231674 653358556 977414845 653863699 692954463 243210644 857275018 5357636 398900734 822968838 867885852 997893534 997913433 92251944 134396360 690684811 878948702 333931221 552149525 742555345 794994251 539530660 851584089 946090702 962125921 69399426 617671496 36689612 322940747 192834624 863758284 153789014 191233076 212259568 785703968 309670030 502399792 804424050 972498374 535528644 898899554 853307960 889184713 594643348 823316662 724115442 856142484 442942577 961453529 68652365 587815713 426411036 617654234 609393054 857267452 219998950 445794331 800511474 835447012 576937805 828704023 678120834 850645009 737255714 918805068 537102568 843707692 435066655 713036258 782388448 823128616 515728908 585158637 270895155 308274784 613021524 947742813 692580645 780506674 985145299 997556668 247994340 584118639 254438121 440668776 610523055 772659619 96527710 222265671 323770628 566139606 447239489 874937353 430745192 958050981 691124501 768000536 485089472 960201777 2895705 969352196 879889638 893030489 558842264 583088821 267131261 523694744 739816029 997154865 158238243 887202747 515808474 919975418 237477890 611666931 867342246 979679098 251292514 769098588 358368972 746378227 745557698 987971675 413540125 782626805 542958047 965055669 636507281 937042933 652618268 888076320 767781978 908981753 500127588 848991291 107365565 195672380 158623870 899568960 117694855 463081632 459317941 997000165 120495458 620646366 55175280 470737574 984663001 984701719 304564960 553106497 503191661 983747175 710407824 858310946 950648038 950923130 287944450 636547056 790241117 956066936 316651250 777717346 886580736 949406541 168800648 688174486 500179287 869473491 334362606 398816246 792961561 960615311 936680371 937390666 499376792 798237887 897136263 922981792 294781432 575756480 587323079 760625376 535518628 840575606 950541690 955552379 903420997 984442972 755214615 929660398 777001049 875761399 161677221 508110565 113623366 270179416 879775116 963616863 588741984 746255225 454004331 662995237 794906439 941921529 615865541 825296569 134500480 972826240 539175111 593610062 333696188 410140649 124829404 925428871 421582268 710570316 548019994 811185850 425797121 572615341 640575963 845872008 873654790 926742145 581105747 672195325 485753936 932601641 454150633 750278177 772263878 954927628 208097642 398283710 904357749 974708243 954420650 997956382 752452187 906631294 903179620 906666075 898828991 962487792 704886135 901233776 610722369 825681726 409911801 863296821 321159955 647257570 747821936 883189274 996753067 996943406 540809056 897366499 801461380 847806907 996974208 998065531 501222762 734369137 851633224 895444998 42939969 766641644 368203940 879878117 503768799 847520061 329931564 344543683 572759557 699398849 325601992 961529605 190836215 221595478 929589140 931869942 93686570 676801262 618961169 870931479 208763449 351190507 331658849 386291201 916950466 965839041 131489314 280263305 658849100 754971411 802402029 839313021 677186078 863173911 676225090 790621215 601244779 740676208 261719091 285912442 710856033 903082310 273924244 904317512 544287897 718809608 333372113 570701734 126581481 209556239 895556559 900122126 820815838 913037491 471670977 659120489 643643677 844802476 474225784 664563474 4635538 915914503 858441118 978320124 153140322 607559860 746966044 837817057 506887117 770064503 755027951 785625410 220335934 667536339 13305777 719124743 283814765 483277506 501431309 503280223 907956027 945155541 45218062 486306442 976121448 991819164 135738402 518888917 734525800 860274854 741554653 886493992 98519420 760415148 837052314 853795517 999254900 999347883 334819147 891358146 859505551 967665960 454217057 499771814 240248389 843487393 704526600 909238390 343660519 458084204 334598141 902392467 295358103 973084123 731681335 745629334 424666877 739710484 740132148 783688968 137373116 824987966 483193269 726445063 602805622 753595499 161968348 679525830 689816244 742247259 75657162 427040891 14035944 539255148 499907311 942261639 913071349 930892240 410315025 842711955 237219880 747093734 534909982 864555771 869665330 916895936 629618300 713005395 941831668 988862876 397410244 765110588 733361852 919214592 988143601 995441100 146463140 275367031 588388724 780564071 551716417 666166850 574727473 588777532 137948490 682274047 140444009 837282551 509609393 935073259 175347559 707265049 227622524 361499753 882602773 997649290 885474459 986580447 526048053 878732774 294949330 700000225 637137446 973159031 511037363 970904151 733681167 829250047 671011059 699693715 393497946 748199819 838903323 892157322 961340286 998518653 470787701 559538960 645051958 692367379 530671757 764280371 316462645 467554820 508039097 897278142 955848852 991818850 409084543 701176437 62905325 711226904 851036648 968365192 555830161 628910669 360763118 994750817 54917544 793231235 219140892 853851425 290800294 998979183 674646403 676359506 750294234 890271503 379938704 850958733 512643009 702230553 123538847 153882413 488992508 493710721 906255244 957273975 36303285 611316682 857101378 969431138 92604706 141631634 126787168 229605968 657417622 668993284 96787441 943165787 165540181 825340664 638409995 794977699 13922600 197924556 979436648 985429602 41882984 354006478 188615201 524239903 62369618 832575191 827741583 969538600 890179643 917600826 990747711 999210541 776775221 919600788 197141816 460447537 90602257 476289781 871922223 884316950 491332524 779769323 196191963 365581827 873356684 901450317 760523578 807292155 276340361 901761833 648824619 754870953 393481589 597216506 95471488 328267470 81051662 957689811 367374091 733827534 133354405 384388987 204726782 491833185 591504706 595485594 828792206 932946350 980509936 994166550 71152702 389409481 592283133 730468626 297991290 547560964 981305945 984958226 476440604 540791577 716585731 961022600 784834383 993177147 852064046 893332042 875113291 884870918 274509422 953502767 67234426 284056864 130240217 838911281 971266262 977285887 202772176 346673125 753638778 932227891 531170400 630921698 850057079 881045401 178532472 271137654 26494888 840928381 176059604 371687178 109525714 888059814 256029513 482650031 391050936 499911291 184821400 207500318 159456200 405988469 875560961 986350854 87271433 837203983 379155469 697470436 3351981 76969691 29474290 168028837 301145097 798112306 394847040 598025874 133519380 218418460 27650197 129033321 236258413 671167250 247080969 774671447 52232411 885365381 938262800 979566878 256288551 989339524 615929613 793342818 844852302 879742650 315999753 979090775 40438245 759303098 302874998 983819168 336180888 337285762 987227477 997213130 603592817 698066575 884012369 976157123 411005291 827916614 381085686 496674712 974827776 983637286 205106180 927608554 892610079 932093911 99144461 176156770 760518654 864424290 375628929 747658784 375937327 783524201 104872293 610742839 533075234 601425119 1069559 639208402 769633609 987861288 957373085 978669513 940538514 954348417 676678716 923155408 829343990 903767516 117998849 356629325 72796668 825087133 785895632 889954177 113679310 295571464 447148386 605711006 742521770 917230963 119074995 632585466 374899170 873985284 886760482 895320061 990749665 998503246 530929696 787690710 735939841 789610247 145214319 430687757 416727212 751641587 828356541 926787349 107517027 281095274 705245275 882843061 541806052 976792731 230369711 415295610 486163506 570130939 583345575 698621360 75641129 587049838 784876915 956315726 234167260 296139110 511504971 558787485 84472254 92128385 494292309 864537702 886597439 904436245 580662856 728224179 695755887 699241248 139655375 802682744 4138190 70545619 157459188 917808723 953165176 973643887 526732341 907334019 99981117 957693568 960812714 961350470 374189237 662556907 741531253 911758691 778729628 965865880 535328358 539575234 804842942 935072114 937522988 966436029 884240916 906734408 707602717 709785156 500943203 539076564 936965342 970536555 726356394 782709787 580489114 805383569 930249998 945698000 984745198 986362737 459131043 737625398 923868882 951035283 557036094 938661060 957490591 998972306 742669877 954051537 835161529 860723979 209257405 348894591 549009815 985529013 493395297 647274976 467794216 940288345 740738153 955431119 501983144 704681305 802715669 861907161 122689894 531959786 729580480 851539428 282757780 736424765 645426881 777399685 711303406 944514560 341315890 389643467 742611631 769277336 581382248 960005047 732567295 810513600 687044820 973693012 237409379 765947659 297059002 542055461 562413405 700183756 209327945 312638440 954830711 980123588 431678841 979397341 16163622 800200227 671975754 679088050 906917797 954675413 610134224 736677695 350120007 709371269 834784530 970602166 271293563 426934416 637859888 955804069 318924819 922275440 333340192 945604005 945082989 998288915 473305662 919450153 880350866 898138089 676283717 758699229 938426509 990670503 100165102 146400747 643923831 930521053 327348880 603700918 102385846 306711025 598529561 940050400 447203293 513346998 240824209 796656779 927538200 942114482 625232418 912392403 155376649 812967926 858227886 942845658 765933610 865490314 313590162 442091622 278782486 452032376 274302545 750331309 561970203 765067483 150808917 819595920 590080007 695687543 211663590 613400348 294197124 604919682 774222051 883326769 875424045 997131356 85326531 220408721 134818404 745972116 794747562 967022341 159111165 972939433 923901504 985584081 721179730 856587989 775465431 893017877 860510507 970658864 937254785 951968571 476471753 719483705 928741834 959684934 279778636 724566769 189311830 553065457 496524628 787810113 423030270 723014589 674232678 909380993 614238560 709093469 17088951 342258555 576576263 628359822 517382048 596172445 754646939 945894745 35036189 724172742 797084556 939182727 757431987 816132480 556158200 628443155 901865127 904440676 483482679 835293693 159941741 278286178 293850624 729663961 578073594 681864828 678856489 976731316 171754904 635005505 151798603 563127544 623650594 687137381 859401099 962456205 48301524 66845070 568459108 638333114 319567118 376775997 937323205 960857689 827337785 828507664 221157748 506124290 475164159 657873563 102832583 669627470 267141166 837736761 78525982 106827658 916861806 964636610 868338858 992868408 482576501 681041097 258355516 483981352 467505933 515900081 674531167 873467687 220851495 284665499 837332476 839713974 668883315 854105449 865583404 976193816 47092488 582807126 463924345 690265147 792783586 817995809 560932315 667880748 277981365 742760431 320378379 342924509 830303505 834904975 306270058 977489940 932549813 960520475 918562001 957271341 877904391 956260042 516519451 699256275 392235510 451660723 308317614 321184719 423298183 464573773 612612054 864438612 529967684 892231244 650258453 772045655 112536107 375495761 321763752 389617383 683897863 878185282 398057986 463894310 813808074 966672940 611672537 951887699 344424646 814415673 694923007 803219096 955701615 957831525 639366494 736706425 457171839 841505951 55674922 656668561 724435656 955268827 239787060 785357046 386441769 914328430 613122353 997337172 429880334 680041177 168955739 202202223 866681965 927104445 155224844 513401603 279159715 913127867 729594278 805422809 498225577 527001361 452282781 658132742 336606372 828722751 814678717 986323077 552185068 974221527 817123105 824304670 951927266 960315306 802441335 913181286 379096783 520662526 75933424 803995815 370314924 634939979 394560884 717176827 766723042 769098925 833805617 889455685 719363258 891957013 263130993 747558326 582367270 590289534 394386874 435446999 814670734 902432547 210063163 416130262 859074449 881966816 418727449 849916323 998117336 999250222 624159788 774392303 767868625 841266629 912987672 944457460 325522694 354565374 779683404 826771700 168390552 897339176 26607227 61627775 771007619 945309562 223417651 757511370 881743385 884726700 393485284 906811187 981128355 983996551 445470425 952384084 910470266 927161287 613556802 639113765 12309173 724183657 323136368 673613723 272450595 489661727 291584969 383363897 116626585 946071928 104248438 301527933 15332830 141689887 493890487 820551610 363763342 469401485 394371952 786298341 997047723 997250412 653568047 818319826 255410867 465648062 354086986 506646513 995124569 999177845 393503285 559724169 945019070 954738531 677627419 752370568 603718809 746249348 20770431 607353431 213144318 628166629 966690174 987911125 346831331 840665137 811211991 863837211 113285623 738220986 395580770 473623980 375266416 744352670 621161674 891472506 974850141 990049241 858601941 911233621 658333216 693177083 468080912 977664097 713906534 862687197 193335646 970086705 820651447 920282865 674246488 921039512 241322221 448282104 894203273 913067901 460685566 756984084 432955484 858619226 864175828 964286936 827959202 836610226 785655508 888250783 79610817 855746484 739239548 900364083 247049902 898662244 328898838 420318827 422498549 623067651 426557658 957055018 711281697 861387788 269496394 514896757 645937841 849741606 754284933 775009354 966016941 978931599 483946879 774893478 320491791 878907730 53082461 239938057 962020713 972267902 1443529 433470840 779873282 982265375 238922143 932335206 537562074 767716584 242688161 619466193 700213837 718415095 263723916 649380316 323986654 892817088 653326455 913942185 839346204 902752397 757235002 982514133 115657882 272906294 769157921 901011352 934220912 948800547 251595753 687834594 911110745 950422638 142493509 385531961 208200090 445218961 59863400 109314086 933174476 937931592 68921941 650640211 835086654 897488101 337892581 760679864 361833994 586585275 490579053 524801796 227999127 576521518 140736389 967573421 950060406 959163620 747975088 904452992 847926599 996268527 578443161 968165852 902726468 924451728 619479207 842742028 903195271 954448625 253655577 479096284 747201934 792904989 709535622 763050582 739635154 959476535 652441592 738583424 998180532 999120795 465568167 809395489 815078137 938868207 33511027 226408508 535532906 780200157 592024840 687696717 111626926 382832242 565904587 661479037 728809680 826948739 692266800 777550549 987799942 997087268 683847802 864042260 74938820 482339690 320257445 441618108 710527974 723014952 877708986 920324059 933247259 974297316 617921148 878768677 115609330 778441759 733577859 856848316 989704174 998069003 439754524 513512684 466453121 959963550 595226381 804137871 926230588 931840513 735891500 968534095 416287849 700066668 1559897 683517411 413704514 738080791 138242223 187311048 359395547 418240016 34993514 448321576 420517887 891675788 758492992 954560036 80043134 254800372 536452083 577881825 172196854 575500072 868960401 935963243 562915788 562931310 855277644 874057581 8289020 49863589 816028644 899040936 256118078 572413867 196975741 860823164 898792634 940483220 343616976 750657380 293782905 564838294 599905398 994024110 142744797 443645363 740993453 867969711 697715695 787804236 777759857 956868429 147109022 194409044 621894820 649699721 860547864 960970350 55846480 460502367 593416175 942014536 503392363 921539306 845629606 866711929 697868049 943531534 116737896 532425800 308094779 368342064 48761154 866035705 668159804 901621660 376362194 824587818 67457966 933453009 39749008 572411256 758914458 758982973 471329889 518535445 899977599 916254751 377540062 408092645 347984295 955293076 334201448 767525190 893576861 997392969 382105248 417707658 109358952 633978708 523650332 838229651 719515061 840009666 482966344 553835939 446563637 614887653 293311654 900466056 958149207 990352514 965097149 975308092 578550519 815653460 189859397 784686278 441271363 971213030 5630752 902802078 423159962 723915724 461030610 771294538 324879450 578256221 418767215 605237524 789072998 932768287 378317130 837461001 995946547 997579075 503427235 900151103 392416663 816733553 456394228 922097705 390224731 713483029 942579305 993113156 794860877 920400269 398302937 987057648 767276600 932177181 799015374 809555340 478910329 848697509 417021947 931948744 313456701 814667314 951342365 990014319 22952745 911758830 260376973 384157957 436275721 799106961 828537643 833135159 699973609 706731327 949964675 956545964 614876615 745296597 84464315 436241879 836900648 919320088 955530536 973651968 648465803 795599493 662429796 775651485 276505820 348359940 381814239 913387537 311113939 723958949 385410393 429456152 48067617 756513588 910181735 961206108 12112946 384367702 514293678 651513276 599147010 845547596 908892176 945985420 895271003 927505114 862298232 960980277 197586201 665056162 45608457 759061998 915015480 955183482 97219149 527308679 840803 893695514 135886949 723067275 513659280 602252055 553980064 925780958 295471997 619071518 519231542 807117363 105332059 875222135 41073988 744061657 174808084 867828791 942902011 997816033 236679136 248687451 601870837 997196845 55903754 451894719 409698931 908213016 748592827 888819997 700453328 925855748 746880791 978065108 355770804 946662361 509418548 940526836 537615210 607040549 391033867 828829891 709293037 936421212 697543423 799390162 401244479 526976553 11662058 995356770 952139838 990592964 937318405 994890282 715309888 749056868 600015395 904752543 191622946 579912277 62979401 660890967 317387808 831696019 316686046 353033407 777915900 903278381 134324282 838127128 75370705 617149143 25982973 708853558 72017360 812623515 439309581 542799716 858527542 891637667 938089437 987449233 442021226 656505831 537097358 605849181 133507965 519152867 830087899 950158758 831994697 945955533 224528329 392627647 996385478 997715891 282054804 362366814 333857940 886159513 272513112 433318393 412828694 548493085 531078811 899593252 67754193 307062979 577467208 623625317 827117877 992123508 569932451 855780992 922884493 957286071 632034622 794926461 447024263 480907714 992607437 996032655 50250139 460758083 916664236 944242159 252112689 320405455 943249136 948839397 370705084 640947195 640824620 965250903 914353864 979538794 351574545 588181462 68415837 298549861 434795316 636761123 433564988 965785347 831539788 912015524 564327100 752307212 193880970 718934565 754466 913528730 892952160 974357975 715797607 920778304 532099521 695136522 287119198 857894690 804623776 875844857 141408841 637436690 994020121 997376170 654578763 675805379 302308982 796174703 556024363 881328486 51804111 568058367 172735579 349523596 911545768 965058398 234353334 534108827 590139505 946209081 461819268 555410284 638944265 940681909 501407501 784804732 600970557 619534666 866309935 908611347 916641964 978408466 472261473 478553390 988405343 992281025 682547602 777307651 860458238 895559517 287242742 538490721 431494234 899646926 383110142 549675585 536881868 734561834 108237549 312003258 195337989 651539045 421577706 487442163 665555409 897904311 542657228 623261533 787719904 969412636 657591589 899656523 834448387 854792179 801867879 895575643 29149528 678645931 916875999 944930000 810632747 970362370 616989487 968231004 919445179 920525119 991854639 996705004 934436008 935445708 801974685 874039733 574786551 585082284 51773060 378761092 85867631 890641011 715324594 902271222 930240502 976695568 402701671 837728762 640600848 908907394 725432555 780696149 689320705 734076531 62075344 406313208 712594720 794419772 757048808 872051274 446823371 519615294 59623569 619451018 981449083 981926716 394945174 555412126 537519038 856451972 607960304 682811516 673096349 763647155 872043515 881610867 761101830 913222171 526457143 620779424 318839990 945244273 235088690 618579231 836011351 963969593 89560065 689389655 31516471 676449010 843502331 886565446 803284511 900244109 5374224 345445087 435641518 573387513 977262451 992399280 364765431 768864223 171481895 867738135 390006135 920420724 654383118 926182185 293795186 441827254 250141295 486894463 750971983 826915192 517398531 590285872 31903310 648140028 57787931 880000120 595323223 744017827 589543105 974506932 622052900 688460220 474795958 624446009 320513278 919544309 379947874 513353054 449754567 502587921 203249482 534435922 162700831 718396740 872086353 992536589 70361326 548375934 397592847 416351292 767211416 845042975 337062109 436955584 536488794 636649427 510120756 609055073 997539497 997891778 703459511 972899625 806368045 928521536 256245961 938623875 820202165 992777955 154040380 645554556 473916444 551057922 275631878 609909666 490613932 861745332 689475811 849386624 896429125 992235665 310949423 338668652 685790789 928858016 303254782 948192299 389365956 479113739 16204629 124319741 573225015 643446436 682618833 801876202 639000790 759561943 274252446 453692700 605966085 921238759 114944981 741304731 690215956 867946065 131989498 987217911 690495053 888231065 589456451 608995795 563588125 830284350 527624474 678768359 155442979 620337737 774644849 970960610 551974706 926529480 108596789 500532180 819415061 969861512 802342813 888384414 491285931 540159864 353912711 659900435 247087344 938388939 606246544 799272622 490312823 710044206 830994857 850445872 281728906 312817825 689915672 933869630 802641891 833788301 174977874 579073976 421219575 523976185 18383305 101359287 974134394 997399903 600229211 876202274 684769830 909150357 931129700 986235951 51837843 430473178 395331151 986132632 933091815 934230158 503888884 983116922 935918975 966141993 626642849 753707707 185251117 334591931 830274043 890199009 884524309 949031244 449150445 882088660 238549837 843039985 301556811 747236379 187846864 235080787 535053986 828932470 834633181 967807693 529188283 957408450 53075723 499632880 572621217 649587214 75590927 469692642 656155020 676006704 540148795 948427016 251731615 457265184 236739596 901467503 977941267 996264092 346818493 539927192 960485429 989644938 582957364 845520140 453292505 957138927 7925278 370709646 212933577 601166681 59897438 323418282 157314255 950263275 599484401 715530419 14044271 977232857 332571333 761147537 948284617 984587639 583201481 655701176 713390939 784236509 783009887 954639824 305334874 352414365 399700179 512612241 497955258 951207589 182821967 466083264 242397369 288259878 450103504 725210504 289806249 311125618 885850531 904116375 890184479 943804921 125910998 502859870 533471626 752602694 968104035 997259811 420095672 452532560 673656601 880599360 326172086 430876968 595163757 778170096 908336854 928439175 46182121 182750523 966516826 975492548 717794134 898813549 360022526 856287756 937104034 953940633 857417209 965957422 817603593 988054081 4463367 126093236 293090556 354823744 452688962 959197177 978076557 979555743 464943844 863688925 867917470 977849952 110338729 940175805 899407905 970880978 566608454 919250944 545156792 766417094 389610816 755228053 382019386 627197354 577526398 864360453 769815614 850349674 657872656 715991069 803543099 957977199 22393582 592820676 263578041 797525239 768987588 988696565 18043016 566055567 811560025 917123650 872271930 995770539 694156058 741458018 675564702 941926981 969531458 980459483 953058236 971506720 262624409 357976926 747208017 923525635 780140300 886332307 2075308 27448524 589490610 951108555 643741366 954776229 951150035 968380661 945460643 998283342 407401929 672544856 576995326 646359021 105974624 872295420 371868900 798448609 50424958 489141124 369372523 662154988 337010460 904024717 110401423 756477893 509978491 645820523 134157578 917102144 906908949 913225149 786296197 934500106 445063814 822310282 492833267 757760509 78105691 432825040 919832651 924706031 390003528 741896723 795770891 947556418 784553318 893620789 27518492 516383556 154644822 214982473 341171466 691440244 470419905 478764721 226862574 561563441 145755682 155240109 162839764 706661414 676250609 923876870 587349097 979486633 534476366 586272526 292218952 341868999 755788488 781004225 853694910 969017007 151164801 524103628 306929002 320590262 519914533 728456583 543842840 866753246 592888354 759176258 469550405 740321152 447977134 707176873 541135278 979453058 327557585 403982174 808798667 963559673 226478362 633755025 889281002 971975388 407446233 586331755 316656246 447523079 596292537 960186338 957083209 957713123 621236147 782249182 524208671 904648687 959305089 984915022 879621461 989537707 61444823 817764823 864542498 926626187 170302982 492390174 471053339 686651516 308370999 316503727 95557291 169748799 876147998 958354881 381210048 896505896 781667910 934357201 975081547 995960706 199665228 824394865 277967134 677445753 982070378 998229457 785414876 850127652 986544665 993503956 788578549 961866436 166117912 491594476 461548029 531570757 84243081 568494990 68951423 621224414 760677138 807553851 411640158 748575273 14537669 275914364 267170774 607672652 223780377 504553836 965080081 997908200 112031672 329320275 97618890 237348247 416232168 547855917 788469156 904032556 336111577 597532405 846598410 932630623 877486360 956001819 416551850 836851734 144787381 801487947 668666004 737435075 977576468 998882683 710568137 970084713 519978883 957156025 89740656 139300807 288167316 308781109 113873631 604788806 842271271 936070019 756336594 814102678 809374419 857420471 147248774 262874003 860666870 868771769 645979515 864598784 640687254 979743848 813263109 908569877 519141281 919906671 848616673 928256421 307143904 525243408 657811506 923376630 316628436 404013715 423947984 587696612 336455224 843606988 947029712 973855812 231448990 945522096 831821229 908835395 809782294 892718176 560453480 834241969 190968896 668338838 476050446 970887158 911162513 960085843 715416192 842949352 879230717 971955428 457660544 609818973 551106879 598895618 411224357 805307035 525159484 725457846 638478910 873668072 348877792 571812038 820160089 993881341 342662459 594131073 683153635 767256181 60076804 741733450 946121985 997941281 812109348 882828744 869568794 972993993 184610262 627985874 220729220 493983733 42326424 911619330 385975417 649334801 815513585 882398729 124568369 204398662 629098475 913998007 985742954 987951475 522850078 805862627 27775258 844596788 153665814 900305200 371046258 878942517 226768848 951667212 269611486 344835865 342351378 695049432 673081096 990249068 149454437 785698839 68662912 481362227 247500270 356468644 68802506 687539397 536969525 845562623 886825096 969093368 473650781 498678438 842225752 885912914 167591463 210615017 41353879 222625928 486699351 930986680 947040645 952654189 193173369 322307213 986144838 987917100 181348319 915128322 196481969 646662516 618486233 708575421 753194326 841702454 822380463 962874776 31010296 939739037 952626074 997044900 883606675 970653284 476476511 557373185 399739396 595331761 202983186 348615499 390124394 841121307 728973714 762807266 940242085 998646792 470117506 842179846 678006660 978960264 969918405 990958382 511378073 911060434 34947217 63223125 924473355 973426464 624662505 750166233 9618918 165040772 588537719 692488075 427232498 771234521 103957539 611511493 252517318 521419941 411437407 489873644 482168852 691672729 678498882 924273541 107000161 483141466 289243002 933576511 401597300 962805343 31494473 262537670 840202467 898636335 712906176 790555104 316315793 733642192 561042089 960409631 149176586 442135066 373573851 592044411 256890312 481123022 955762833 989899181 210043909 855614917 466091512 685273575 394599532 720584099 535333402 918028283 357726272 403702104 966885236 986163940 12807482 168599608 762627895 873809196 574981919 964658017 398480447 752355560 64587732 818872927 284012306 560445067 717894379 981453702 593410733 676895426 981274837 993566922 985220026 989315269 558141877 699040850 756944366 841958934 224994889 984699953 620682895 931212109 510552780 709050894 928644026 935791978 331816005 885316027 10739930 66333281 641752089 949928762 908515558 932025331 80130725 241522123 885277996 887576014 195910614 560723355 778866194 794097114 367948952 710414632 589711037 718220143 458638510 972569850 422304863 771647751 43977469 122040446 328098115 894883257 829977410 986607459 401552061 896109066 768288839 803803650 648841869 807649618 50777108 410529117 148885906 998370519 824941708 863047779 586993809 638900962 694703729 980201525 541893716 836348414 851335422 947565451 202715028 302805939 179899302 311948263 242971964 465324764 900197773 931367793 73858369 484994567 996687590 997403162 804268924 867552462 47243232 545245392 896174766 920371461 82183615 635442996 283934008 701491729 541884162 720358748 158761961 502598318 725696413 883810415 223349927 651827840 134982200 773295428 265701348 397762415 248050236 747324000 662330839 924326208 753778366 800173060 751321742 857691505 418973569 661228709 438921809 704167338 180711638 529686901 381293663 508393912 123025795 449943248 77761567 536305965 923078129 967979917 398415107 550557317 101562490 140272496 382772722 848529886 339438316 935522031 89566011 686928647 171377955 536560135 822334762 835794677 996705496 997924013 122459515 923235312 970007033 996241080 685289544 693618066 242580772 983364498 372263358 770847610 651542000 818972507 349624914 910645390 706713638 908425284 592864321 947051254 553613682 784141911 650282365 791158026 887863239 932519536 523685130 859829584 157687896 703117661 917837638 933560032 225179864 439774137 725554847 971234497 871303403 955545180 255758455 839234131 274150216 907880933 543600578 883869906 952652428 974412567 278659575 791093338 173212210 432203714 121100057 517482649 11557761 678630972 257067047 583222424 902756752 959337296 793584015 950689767 848713587 944465468 370593865 831834318 157935049 844118554 573481475 966290225 22281778 183216037 264819085 735937696 446796298 937464691 667905451 916204309 49953925 226753998 189601296 861648112 822069197 922149268 870740739 872364060 429466557 477490835 377684858 453933758 482321802 503725470 8922728 988830765 478785203 504965489 594105236 792630167 697794672 853819861 53249782 596473754 588628962 642679510 241980198 402648668 669982098 988165639 828047706 881541995 195414480 216539835 971398530 983080488 465676238 685941454 758137223 997511070 40307041 904613469 960016941 987140902 136066239 193885082 417870464 525624650 371250273 920796691 622141859 772011122 138242670 579406010 674810139 923934549 949712591 993525495 777306522 877222882 934102951 966365605 294871923 550068852 353224225 474166911 925515039 933098768 240609 462098002 16390485 866860858 763952706 815505326 845996752 991988934 424376009 566877647 318678575 844635423 816723211 894658612 168909183 815902234 349671769 425039907 942969187 947539951 255035565 295013355 822253789 930773163 489098237 752362819 942816473 971578916 370180245 925203690 333171551 795718466 895063350 977824557 613087791 851416358 501239467 575401302 657063169 961474697 367317113 734765673 554641233 624266401 559680758 956502086 853463442 892002519 261569729 599879761 627821352 998814616 972959168 990724849 637174232 950757280 681125748 758408376 551037844 845704118 254473774 443269232 922043668 982856234 865195601 903720990 906383242 927692871 105560601 546104925 985347498 986548549 104532691 150070144 245922186 771227940 96635285 379384926 158759537 495235513 269161861 446123796 64291997 647198851 639847082 801849111 346453493 873248955 679166988 876838688 631112381 841995263 432618153 676765865 391054237 550724176 163856888 250282470 958756692 974752605 158155485 645727401 560849243 935704657 573542651 686074326 684350578 844443106 916628320 953502824 788554123 945252468 328785879 391338714 363747782 895933355 351701962 493815025 758418079 759466298 943527704 980079769 319965635 494778404 589023899 798747268 163519941 502780873 608199611 955074871 602962010 932802324 146441238 249927759 615386740 749433367 133586024 572798361 412260050 818738113 34091557 593297974 224011366 505694549 482651768 772021607 985307715 986464465 271356486 711627256 437439713 578579521 3598771 437359715 106458948 199259465 576414531 832421930 544786661 838207479 479794077 652066526 793442102 823524759 738515203 819692664 293270540 440365443 649247044 659720077 356124072 850485975 658390532 884679283 661114233 781140491 925165774 979046837 624048761 978201122 514069472 816533728 534685504 785122244 378632122 851421498 47776561 595626799 486813660 789451961 636016296 994171626 693263555 709888048 63459456 596726742 340290656 466058363 834060612 954571753 439255086 490588644 70982734 78243136 845945064 920400912 3891901 749994261 522149574 983452399 451175170 692602554 836441146 942112503 352045162 376112742 909145131 915893301 57965159 72508301 459312526 659284680 24323990 474779752 915107432 975916091 215988212 274840731 527834817 593801776 274600660 889186017 564949853 760962287 701182643 967114499 684720683 708358488 814393897 975828012 279524783 941776667 548757623 708258746 66430057 672018977 915637495 989878779 724206458 913635633 428235414 471564405 722841887 985347603 431422118 574136441 38085587 255502287 573347604 786578177 357054088 922875223 582238555 602052105 198068040 911657916 419947542 512557221 480659943 725071185 248127214 959471628 970321429 988916032 348394832 662093741 631386320 734564657 772367113 889412302 771396464 939496341 932580606 935896871 264293095 576409416 467095807 995292681 6978945 254981629 778333621 851540402 351231808 562156826 946085151 995750694 666015071 993000075 746268858 765151309 729396088 902119657 76424451 889289113 966540861 989540096 38009884 115483068 616287832 768408304 362067428 912188285 982309506 982900789 725338228 781269125 65268238 432203671 441871874 480832296 936148806 937060405 823906418 898817667 772495211 811663140 432012015 445839922 6772145 287964219 257243708 450746324 852135141 996692722 293785650 394273675 682742164 836547771 10579409 680857926 905148784 974854985 741610151 940706146 201744177 771153477 577638343 778295291 884069721 886108263 651637294 657214994 163825920 391157407 850109913 901838737 859584600 997199212 309048283 503445878 39595884 993858683 375325050 727628437 349063422 929352683 209589612 998851648 774330377 806369700 620370857 736965012 981951284 984517051 24537008 490775840 694374326 720213818 337106158 547112225 823522598 957425842 581196075 702812993 907280182 990901015 718318227 825310364 899886263 980934524 708801075 935416176 406943131 893825155 493573166 687682361 346731862 973060319 300744041 831704751 834704574 913025084 536508235 732168762 492607946 850702752 15016630 538556715 785013055 786082162 684508246 989512778 578570002 718038723 715104144 934445804 823514230 848502018 3175799 130184535 488118417 781418954 574766790 892025343 466205342 564910630 687950507 847446149 127987229 916401782 980717510 998043120 380358166 844674451 538297042 772844679 372194028 789598366 596966319 651916589 619281408 662599377 157320729 256029732 984455868 995637887 441576520 975495332 60824036 620913771 65061876 882589544 791625508 987596789 931246960 978498863 191730862 983116925 75654805 504536338 338191292 796031724 700416443 735906449 999183937 999349666 748315914 802880682 153888080 390979108 831997758 902175021 9067623 755905388 705394911 767134046 498299462 969505301 57536488 145400716 69040982 598917612 915751924 983492096 188087214 381929765 314742007 454744478 906824471 970816610 285876145 649461826 539536978 682145249 472274696 675232702 716579558 943042620 563752298 689261079 222292356 763828655 114956701 688106009 358889511 492214902 672426813 738431590 534276158 809153265 897382292 913070810 508601456 825478142 991338422 997832985 665309328 704443507 911640281 982228052 234731490 758067177 127638296 221796279 438627511 863848553 638787412 660498778 910808024 985856393 250568621 594466723 957552732 975418535 258132211 990972123 150573915 175577382 816577390 952866447 669998660 717639220 126894302 398197622 722496478 895949371 268989233 347727860 437736645 678633115 990203474 998035100 71305203 666074121 81335368 743738952 318314809 943530742 934657293 964290007 692320459 702176863 325106551 422037160 553046034 637744108 125789231 537121211 83323375 274245945 910955368 983830786 204319140 667761406 529824775 637627668 879987896 899882827 536791149 964376426 337863341 755543413 739131111 882599644 97664197 540682790 58358234 764279362 142821319 975119580 392162201 400972732 421531267 557636188 383216081 788712504 906029984 935799039 799336816 975767629 965652627 998330956 264222306 626220853 851408015 926467591 667255878 841192855 410764157 486345814 187266292 859240677 135127381 720952563 27712865 756964193 531029779 728084090 90011902 846186209 22353102 150985973 547469345 857088559 91866258 341873084 132420485 729628599 977746285 997075000 234606222 294015320 657877165 689501602 814894830 958334370 116929947 202156592 338906780 359751701 197581200 215834827 116724676 361437847 85105487 870253496 627458531 942591653 196926906 424793301 719041118 947860141 514400934 621971562 806273825 890580208 532135722 536105547 433293877 763347815 935890886 957713245 793356308 931706618 365378212 900004113 43756441 373455177 708607766 729517307 219422800 684158526 741548204 864230161 841511712 879294190 277610160 387500121 509621405 549095136 309422108 808155968 471995546 837052694 258236241 338901079 612690388 926210697 271253626 375969434 88279192 324969262 451006337 964271760 471620337 964881064 9781433 225548251 375464581 863811982 997201031 998318029 405597560 962982407 801410305 981894936 134699581 547898796 916259875 916551533 47786786 873928901 416312361 901374094 760024934 927512294 7923739 391763665 942695368 950556745 834666704 886864688 282832386 860309018 813436581 961592428 376841411 499072593 662623212 884574996 272394216 886851152 43400181 449773424 768952327 922610798 245137237 759922039 881067288 985726593 904938267 908818340 432096594 634817017 842064906 886648295 242580595 887273967 751822109 756855774 260935345 862872103 255293352 281801293 419646036 435105930 333607062 692493195 414502365 982273838 636734211 982958770 55346313 262027191 73648351 86410875 771436295 791304865 748415659 750235250 776130742 786564768 994671327 997805864 141257761 366449802 545433154 573722927 111936023 174133641 556486189 604317421 350124485 852129267 50067469 50293882 646097521 923389339 962252134 996199827 534100314 899463980 857630214 861537913 278066632 899659003 162628304 258782402 862452562 961955139 639613823 709927348 149041701 594406499 635384062 779351710 481623798 788902435 944846071 966479548 157436026 314620235 783839776 816175314 613959922 665251325 976994073 980316968 596398190 920670985 638479574 942978957 353946919 433438849 495533271 637324350 201061308 500702079 4303724 32016287 318375 275804210 617588919 657911312 838339636 891018551 388650282 832394779 631050998 653135233 948258447 962378911 182968171 749628518 409227188 546676443 963445699 983158114 688202140 954332966 100613822 695700532 76234596 689767776 748498216 890302057 225777794 544009852 37867706 367184873 535447266 685049399 823442817 988299151 82969776 580217142 581473503 866291049 984422664 989811374 771204082 915331541 273799180 362172384 283786029 324784239 655045532 867853344 9597904 53862840 61830939 550002413 385779087 802811877 330765914 442598583 284044680 788282144 70993628 76519824 956470045 958536301 230448651 929219317 962862366 996012907 415698667 491392304 724221652 880761485 661405422 816588304 156331163 731160528 49697241 369254037 453250245 781354917 417976961 490186962 442743999 941160627 406620152 767633381 390014738 996152773 497094152 636466303 171403636 393281692 575104628 621718604 984224347 987880323 866107399 946734950 536983241 596229788 287076431 389904541 766662624 842682429 704297749 882476852 101455444 656830320 935215582 995378229 435793930 579711087 368854092 952857569 542906364 888151741 636348804 948891039 272855189 407782139 715144849 960413339 971514775 978176718 409671222 700939287 690704757 909981162 229354528 575751469 859514030 925695465 552725069 955974803 457204303 641648667 890535084 981010281 331280164 374618515 67917865 596211543 431434332 955456931 770918625 958639883 479566181 966178201 365052210 929329260 982854815 988789178 557365586 622100498 681309561 902099337 715058026 737952573 770288634 876916324 893015490 961321649 527364401 868548677 668238647 877647203 291065210 301965033 610262567 806622869 811395465 826048925 564234482 827430726 90678434 838358069 283346697 909343840 600017872 989419614 962113065 981986187 398387885 415243790 908432438 935016578 616896380 812242584 683214259 845895793 164053577 479108518 137283375 308670486 896215235 917748172 952691168 994266270 862088469 949061977 485123030 788563957 6577934 986271127 594804626 825253836 607660616 976366131 912225070 983818748 684636697 709317118 213332775 851651002 754918418 955716728 707937059 970205242 773054577 834151556 642117120 707715220 988973295 994882142 879720767 935074706 164041424 908944234 588902575 697186477 425227584 696049998 449676192 517678248 712718903 719630629 990479237 997336097 187409722 555493129 325098869 653221639 123131618 634269493 81698270 244153039 539705025 596695742 478287736 888610428 626355993 629386116 752454900 933301772 696874591 818287973 148368674 220166934 237141589 389278810 666079155 921785388 863994092 959756129 241822403 772353813 94194651 107972011 183597594 865993348 941599098 949048703 429516578 678092170 979364632 986062172 716742333 971255091 770475546 854754150 261718813 624918411 180044821 841435104 958480813 992272270 715710561 768041317 337909322 754866729 132695683 392946694 552772905 807133825 681057831 768102631 107009576 316043621 669593847 938575176 572956452 944735315 214372696 700694280 232034723 915003555 280233292 481440493 853418970 982158286 181934728 711156265 532365592 678449752 144246085 747930139 602734689 816786748 542776809 715772949 315084033 566617090 83710146 324131680 256800841 765210831 704210333 857200075 178502040 333830802 763809691 983839792 436513435 461499346 325585784 670977102 671839914 777168104 531789414 869953162 823816652 944604503 438768148 501710337 309092724 750690678 977067013 996339553 849655626 889149367 353054003 787628430 342396215 542758265 309249486 873837292 656121770 783761776 257639299 933109540 566196465 850100277 823955115 946200053 903072754 921539389 456606765 559100211 432876211 930963785 142585931 710779573 308084120 689812093 316490196 769229384 656338986 783004659 34248562 809151580 408234731 646309234 397810825 734128204 844029345 896321792 81076388 862842443 501550217 714974865 228423898 498398231 457410504 939132770 339948370 776349258 254153880 917729867 494919485 633963186 266490597 430094296 954763546 982306237 202148524 742138334 183783261 443940701 719509795 746184198 91188469 959741311 67549349 254050122 910126826 998439290 459073735 626470511 244488295 471355458 12455149 201456674 325430261 742346259 758750738 795425248 849860663 920047614 38481159 439318649 187553349 703016455 406688736 994680281 455972080 464591375 851094872 986305701 378658599 558253015 849711132 897638363 327544997 826963702 487840215 627221363 619629028 918684176 719007624 816426221 459826054 764861248 724646143 871331727 612155404 945344667 504272674 714753199 224870915 505584333 205387079 873462876 287794994 984698154 396486661 918345189 35871722 144959574 773212525 931200396 635710634 839604709 323389417 838281241 460601320 834466834 586036693 885653035 246306436 390421852 852727557 981527014 650625889 803312224 650380651 743728535 945176311 989823697 148739264 584653730 27943223 821885113 374716843 391145847 699041462 753204477 421764965 664264628 382144890 998763301 863003469 872573096 942284456 979258591 94696859 412753022 84179587 90502238 144678928 460078456 520353692 887238956 80697700 799372007 934171558 995576437 474328626 734878761 694622781 962293253 44323560 616956162 941983178 984853576 520840501 815883039 339259239 751228753 120246509 555776885 547478572 638455505 709861031 888274414 403715382 658481134 691227110 757118716 84963404 700641842 601645433 729188037 187988166 206405369 33049702 243209515 76001532 629908623 12830393 469140264 380429996 403285938 164694374 199544262 424840439 638471455 754853251 816726779 139101424 775800150 135040697 903242654 830215064 967229039 564642901 726499883 382746028 712042763 961220040 962113705 192937886 613264454 474164813 606133826 850261855 899237307 43689588 281662088 554092249 647178465 433219944 595427316 80749145 895438042 44993049 931932605 188773459 915723750 99224986 806917068 405703757 778159040 685515863 798197203 541340459 971907597 316511628 458841061 291513891 344295608 698963231 754186148 332318514 936693482 465911384 475896369 258720523 743180188 26852281 63244272 407542464 857653691 932779715 990057322 324066827 800725243 785213614 810469761 83956731 360493218 912601573 946659085 583280391 808031408 404243786 732834865 480929612 759519713 249129256 776924898 257873014 897198953 867446945 981901902 569587434 926667970 327988207 697067461 233908242 781607478 797590932 983706383 657616115 869179398 216392441 573638084 387158349 749970442 882554815 906252245 199764685 473749678 681856572 917863110 504612958 986582455 651545356 713287322 70905291 808375420 528874077 828379464 232841471 903896258 175363435 835196621 293433299 395927060 62069318 921572718 823464908 983810872 6738916 985874221 270296651 832951358 632540061 749581475 551451984 700294072 165091674 649170995 474301647 661469335 716986939 911854041 301236008 869173140 54473073 191475805 807306763 847815379 579374225 830463522 766965606 782854875 165440138 595697820 814167717 873306146 146335464 554420316 346080729 567308829 867122886 901743468 836763764 920689095 822766336 888422396 780318956 923849663 257954971 743446462 31261525 962040170 681264514 727920483 944721505 981438370 767565272 935781314 897640378 957101131 336151185 881782580 654223132 947073301 783559877 960173095 143515971 855782168 423030302 494293787 634499955 684584921 725232044 832437476 161140414 834211583 698192530 995569821 898121845 944717851 799630808 911896881 321286626 625319034 921288826 971987578 229023640 632636862 417315072 654100044 215615016 218632879 831563698 949233465 649683248 824900501 606676804 732760363 742225123 888456862 762815411 841037043 266413442 659122721 927564063 983595467 479619037 992135750 345067632 557704718 345226526 635748942 926308824 988725516 877947948 986787284 182186967 732721145 527172339 887653181 278908003 360594379 782572150 908445963 513461956 577525055 71014927 681871426 181021527 938477352 192743336 815727693 439712742 623361126 924436972 932911232 725773318 913907566 307705312 460367072 504263337 539338300 632180179 714758220 190124125 696033392 527802363 796784114 421938324 963848137 903874399 974971174 151935268 588134954 333190759 798146666 810666394 834726462 287677646 957849292 225888788 910105983 779701630 787821093 975331594 992327020 210908542 969278323 758369470 761264719 257891592 864834427 805504887 858140437 831511708 841318517 811978923 929295719 917749818 955900260 481042071 749552210 806742139 841286424 529121275 875763416 885340747 984806526 9146534 781560123 667816504 959956396 706394084 855458295 581297397 739631078 439040506 968825584 839079947 884766264 82666922 809998168 451945385 930266219 401523479 978358881 253220850 647121295 66465707 354669186 437739828 631370043 178157863 758303354 871224074 955662838 360855197 854598742 424274794 691770793 226645975 618649245 334504682 392009303 100884721 883671181 193022797 566244903 765247949 788275398 966409168 975476477 660062272 912086199 402206871 517403640 246642409 485649004 793869791 932272409 899554438 933919683 459957858 638059424 991100492 991341883 406434808 437992479 762015265 978162763 782011715 796887524 322262199 447470946 895864780 937863089 5555167 332968127 276972957 720355972 750038177 928778914 884676015 963107862 763884009 796308613 747728632 929952983 992190640 996925334 394957072 469098067 405966644 949083289 157583347 967083469 687700266 832217112 81591540 789354983 268726348 820919240 334196574 700047479 275140255 643050688 888752056 926716852 8959014 390828172 876274436 945129547 827872030 921482060 564622126 600630411 894663680 983276220 512312802 882517169 309705053 529568921 551019967 672804870 734390951 872356598 329367561 841526014 691970461 699549322 882867328 895003374 167009441 566482685 345125717 855358192 823380394 832381244 281236987 402038811 421170125 688736012 30040181 85721184 388254629 488984403 336495221 348443923 55122280 696109866 283739347 360924191 317797983 655351703 785434602 854682758 481116630 742385126 57952655 514935562 928350634 982674235 556583507 726911293 436964728 944948124 733917754 956692915 266753088 446772408 907639969 984884637 214434325 387772689 93808059 658736334 533743654 933944359 755307937 919081920 35156892 849078514 174839235 274685495 687323546 826692991 916565586 917843807 405938263 643017396 320772249 633804752 437383809 723099287 63912546 67164041 527000350 883470515 150266199 240735395 800948431 918689976 188622979 787853285 739259053 931250272 478216750 803236665 726681578 898289589 645751328 658431939 534319194 913464384 850524445 859720552 883906405 971861016 36007739 908618066 840501141 898253357 382619207 962395817 247451762 266893964 879281030 910230253 807049417 961478553 195455742 279954159 848807353 862954053 197945087 540568584 518405149 596353329 998726234 999386593 645142784 827180037 623193938 664295249 892521796 906771115 336152171 434484995 764557510 913843276 166519547 945409262 995881764 996420658 895128413 982590600 915624635 933676519 984895097 993925543 515988609 679489792 791178466 862154736 42278211 210390183 794016333 884136788 658457491 742749886 324474359 824025997 399832437 559852759 135778470 713833773 150344846 513974980 145193769 298037448 212107186 495849141 166847181 734898077 231496797 462085724 37286989 123858189 915564251 930813090 263919387 934142706 527900920 870690193 295666299 746569349 485231906 662382917 764322428 847209741 564155676 895900550 54364746 998841716 357354347 717093936 940773398 996816802 695912208 742890682 923220470 980825074 792450567 946209095 294426052 823096678 809855468 833404724 60898844 746634996 683672036 770584612 48326497 683407432 475480891 798118514 74521468 84539993 917283293 988901501 407652341 496604529 179597007 316718930 25053130 215545047 199872823 418714324 992387676 995919507 24595048 901441008 321066958 713813130 566692073 825872068 566164856 831968737 457759870 725690710 134983897 263212236 629555057 900191651 530671184 967075001 278208541 349585015 324143817 513075161 270540524 911796800 631477329 742132555 788160595 826049782 978208717 984008065 483558069 844269073 393452300 553765579 721325956 793841218 99149503 742934280 356570821 594186998 78395751 982543834 853126866 967016094 98428499 468681790 652020875 747752105 142956364 644401671 37405909 435318647 625298078 981091545 372143834 501796058 837016190 853778246 154389691 190049880 915632897 963995580 17203754 425056783 213905021 749616002 670030401 700386671 72880882 784560331 600221598 839520864 219094612 461077080 439081552 972521415 264932161 413523668 309508220 856323188 234043616 425016488 981592103 984395458 922445375 948702129 789879395 987158233 238880367 893643412 20238004 783001991 384243282 887219389 314359544 541947999 436145132 987036286 259939602 443081483 907571643 982791856 519945490 770746358 781995009 938570222 282042016 942119816 364363896 721728259 713330277 954955428 680951362 851638474 584818510 857289196 118883195 858675170 944486729 972164286 267040768 854272225 123259670 754060322 3692009 21253584 521499803 738562610 988439159 989652424 377181292 945258381 725064063 752177522 768873795 872704569 642070533 663071381 585073224 781059866 548093762 603253394 812663131 901337829 328216672 934253396 399537132 733604930 454969683 608007932 109284756 699343029 787489919 997167292 788472132 954825224 184484942 457398171 442459358 622681191 497240642 951706745 774722546 852054562 639390315 769743418 362360882 600615417 417923935 617847997 747381225 986770822 139631907 529068065 694681262 741690639 903276926 924446011 175849447 686917438 445268616 463696017 982165788 994005009 110272058 678708238 123172095 745568480 928754706 980222875 92462781 686070462 656052633 896199374 694259235 817011005 926097561 976464394 42920602 203315324 189675285 226929305 692241210 813423638 218494749 688333352 231491742 900282936 392235542 982803974 849328635 951476667 707661092 850659971 411867312 484715580 780618160 794982822 415563805 469840256 424504426 695927636 823926280 951141793 38137737 100212606 292040080 918233220 871337069 998213107 518296416 997063571 664900099 899928237 947112057 975858251 147443594 874682474 838721169 867248782 809043467 956218666 986863151 992557074 401869046 468899797 223628260 640029052 580380227 841180689 798073886 944099526 282638169 824462395 699329453 838707432 310809673 565560819 727468913 906085023 730875647 908335102 449216458 783290447 438583878 605935645 775229103 993168241 331972963 959576894 543072802 670356896 64661044 755588447 769944568 951350567 523272612 531242129 665899549 728300625 407787147 513714043 657085932 814485017 715395856 765387512 586893944 745828627 733190199 867731068 320278748 805666509 776972461 902935177 775934208 790062321 613197275 965608168 755420767 756982462 76395982 739650274 576899840 972774322 279607702 808341497 413760286 647951841 150395325 498750845 921876390 960647069 838555638 853580155 822479521 826772805 776341317 941453792 390990879 611195600 310041214 990203612 548714772 842060905 72293392 824393065 964980842 991772303 385922985 550501028 834025057 932915036 602261913 964348857 218619132 356417883 561371647 680787342 446985562 794964123 841804326 949374109 399549164 489069523 116602765 482059702 678621307 986208893 944280123 982212757 112188858 424636238 249685477 311737444 932697605 997772512 457462825 808930943 69452535 481768353 233468297 877422178 329075915 691499572 682235624 993212756 995850310 997456868 19501070 689051785 990527548 991598271 30641229 684363363 864117857 931106604 714080184 970093946 161303144 400078893 176430964 989290771 940765943 978107559 305188302 448768276 731063436 961737816 540192628 687085559 284205685 780087466 7113503 818814601 844295514 996209189 213949892 495901515 85593314 634519524 289849354 591208622 497439518 967800078 378973811 642555719 537029445 666796193 621864379 993331227 488223595 578715879 830045261 995257580 322105057 515441796 750076171 765934590 602678547 838332006 871846323 981578658 775187439 777441063 815596534 826394307 813486775 991864933 700592341 914619031 750227889 878544493 719021124 777125452 815194667 903682896 229524385 949082012 313744415 928678267 880055561 896694787 45884224 116298917 887946372 996113613 540114888 629548645 588843179 981614866 407883029 928931046 563470574 946410381 314625204 704125092 291849462 694532629 71003702 841218462 123729250 965036828 837153320 865658403 701753803 813377976 598700846 738851379 154683233 267097144 662299849 817090956 672651600 758878174 816554025 994240356 192907503 477911206 416320518 507535216 565285151 906185878 440498478 796221176 595180430 785095242 188860044 587570642 964177300 993403805 12001622 561055375 32019540 783161027 757855662 904576575 748966216 990969597 557347536 692428819 872806796 987323776 830750335 886005361 256234339 739576790 656247120 726973944 753271996 756283370 245872170 424324900 581973593 624018613 311144125 825332074 309968953 404079138 715464066 828634312 239118992 897935838 469669276 823418845 639794798 703803431 810517928 845796090 810889269 922410531 32915408 357686855 781968316 892276402 264450367 312889643 280765253 731435438 350322584 884357228 284826383 505750761 531049762 549092913 536587816 674533685 264470512 833052698 349605809 741612780 596516486 881679827 792301976 923326990 45145683 434849785 922665878 972494959 830145393 957175734 668767332 869844468 211737821 661077848 537772752 609051993 913892266 924177356 626115022 982021064 71272476 897299879 517153062 600428057 901391355 957737546 145601852 301804388 705334917 985700116 823471421 832004344 300618362 964216470 825036910 850517313 250214781 867387244 69752183 793416476 707917326 951253867 692808628 810870294 755861577 902470316 580537210 796572067 839491547 957097726 261305488 938203021 805068064 917927955 235481608 760269596 696724043 771064472 411166006 816199370 168387298 669260223 478887957 749348163 249038828 464139290 670250434 924877177 736518584 775161356 368425521 747546020 634070510 826189554 567818540 990998680 289816120 742533311 969723878 984711009 808278843 875374134 642884748 751258983 705545789 753792235 218679770 836010002 427754270 665203788 412064243 595904006 886650166 901961970 329361122 650558868 865432900 916041342 275002102 919501034 760587619 793993423 899074382 981496878 667421819 882361921 846124052 909873012 415851112 458447396 789296956 853643800 672154638 683988510 951691955 996168675 467177525 910454442 441746627 958991886 891964065 955912266 142217276 277785149 473068134 958165335 790135634 965209997 792151189 887425617 877764593 900559025 79131693 976956990 944685813 978572599 431625818 452079839 854881935 927336529 855998011 969217376 103225036 640581608 573583085 579024785 532627061 941471867 893966287 990994367 687913255 938888580 599268677 768503932 978042619 991620999 351272814 900208607 152192366 556408985 144279846 487941227 996009125 996294113 551097777 996816622 135311156 722208137 213629205 649711146 236620032 794161043 803072887 844183528 193910650 868360445 834015356 990314426 342086459 724859591 424979867 769238443 470273355 650188359 920304858 946060105 9320963 995011835 296479481 671881650 161975352 483567213 20850514 157664046 254222333 654178086 544194413 556573141 557400875 779036395 116386873 473121609 206043208 843385463 849244811 993023731 583188717 684534999 358285385 497181274 834331563 969137206 782717485 968634161 609258180 902965439 859285663 998141346 506586899 616586191 918996544 942907524 900015947 936088597 318546032 628675719 95332277 194779766 333943666 958212154 342437167 683308418 333828709 995929890 83185966 633645385 15662487 266238792 323850081 620224945 5395312 797289777 476406537 934843003 705424251 966850115 180545343 954832708 623310612 902291334 858926141 875311378 526845574 618345122 238141302 671339616 90213214 118361319 387257907 591386665 225296324 687211531 740350803 918804909 821961498 938757719 909671780 945348308 608886425 923765985 400838997 851588399 454065532 640928351 576964662 916100677 953104934 985166717 305399181 766057649 786024658 867664478 811695746 835517848 899793923 991433878 417935979 759608709 138032121 395760479 922170105 990548505 501558254 740051406 327010962 435142177 144722417 467361742 980505544 984226210 374170493 720482462 685925191 810095191 903939175 913796084 230721099 360536365 109305905 569867246 274981530 459183310 103819458 514234344 122971363 849499631 473929017 859386843 815479040 919401794 946555058 965241587 87439554 865069443 189090084 493100088 895465772 930853192 917082903 977276101 977033519 981146761 529831557 652774731 128358388 861745409 730543640 796579721 699353588 823221231 408145787 412158916 164874144 630565010 132584473 362919328 565958153 581778958 353425170 957311314 900836933 962475256 144333358 874419518 280103373 328176692 13890719 381230283 743673931 885443962 349467936 840751610 940605494 986649416 49515468 819953453 588466422 681737597 150621372 947836117 859902286 860170209 84908096 587214771 361572583 375198626 383861553 689170462 711571176 990692376 361629299 554047623 157021260 312894222 177001019 412351468 667587305 672592365 629903460 766680732 876251382 914582749 569333003 973159297 732586656 875860468 636168688 980592771 943519036 951020824 924674615 977589524 197398818 760160645 888988970 965871327 398883905 450042263 67098057 228374727 447738044 448717155 642804650 807339183 253549175 468596026 599409206 937601864 719833574 777244046 6860906 157843357 955294269 975324750 4631061 448291707 184566407 872080307 144103499 526780144 210872672 716743049 535504362 617190259 303243660 853409702 887134251 987025713 610677573 955003220 769838773 989408955 529109518 847241837 93804275 678840213 370221277 828386484 383444483 826462661 622501218 868116464 554235179 567899536 683963877 872475824 829749966 943428277 154901492 984726725 561563783 713909434 795748282 846317624 892143032 921489137 356417913 444205394 582331769 995496096 908973688 937399006 736200146 758672941 203735277 405293988 466952252 597923155 601139955 784263013 59966121 669138828 606701612 790767418 872306565 918243163 460264166 503098774 227755346 896401982 569071720 586960315 829399416 863029335 680322185 931633722 80812210 558097314 643233148 952520775 134656662 450853672 339572044 632884977 496149883 807522715 362973387 821386206 171282200 788268665 56652290 687729715 417131065 585631536 133293829 263408209 937214662 988026454 315958132 465573141 989948558 999376499 435590100 622153353 550171611 591015587 870448278 927035207 918179476 980140364 402073272 835923017 57124187 995270824 819627305 864980493 885898769 978377083 654698528 910743563 895119170 951446004 470065105 984722305 762349659 865003901 128013107 501329384 480258507 947076352 925001943 991574629 913023862 978400941 634676122 768416323 412089744 632538217 567130323 845170961 507778819 682411255 800638544 822223449 613260315 864160559 641809206 997069399 529760900 957836111 585183953 815833454 315323262 569029653 300356158 364455891 76260412 536545123 156375204 453840954 201054810 444394075 20578349 75081993 958547009 967049790 363449749 556621730 939904914 993980504 685063652 863637257 459611492 627656637 95203102 953491693 367103545 998405162 888895700 952525568 835359453 869777627 180811371 268418622 448771538 481247983 941792222 972258556 649549687 926058638 870306161 925587802 373159737 777942989 848088317 849115001 794200454 805896374 917524642 988047988 823460128 976231238 396627254 709098398 29437132 342381926 444479869 836098879 121830674 928598242 870636795 964504200 686686744 786585698 310587437 925479121 158326135 340635732 484244395 790666078 800784217 994554187 701546058 984726629 602509891 674150400 561477782 597564345 789075342 896645859 224002330 633017429 694237974 785126437 30990357 768251234 363933482 696436396 951974563 981191892 311730288 864834795 232802940 793611651 619580674 761434396 376228179 809267998 831425036 991329568 489414712 705069431 112045449 557910360 928780374 941858023 411690900 574116314 129838088 421416144 941262115 949615703 263006717 971417041 622200361 729067706 569441368 573990309 410562414 677965877 494501806 648287064 470623149 818386945 344263827 870449818 409250813 611250953 503022916 686749791 109142853 469304980 925860540 948132714 923899520 998199891 740714070 971509423 622570691 667697785 397454522 514714887 450331485 762975076 25962874 830114150 947925253 978102481 978203185 989030706 796341757 874474399 157505736 944280852 433551233 814188610 198031086 989481505 431614054 668115395 638754594 824291605 391065737 477335993 680155305 956682479 414848834 748533805 26795158 81890388 485755233 624354303 688757639 765482603 406546701 437224075 355967355 967663394 639163635 976266328 925761713 996012713 783363678 859190094 830956665 857774071 57230268 455573401 380817349 858695452 622187136 773190368 233789467 841388926 309567815 617969156 538615331 754324806 901610843 982153842 514013782 872359764 134893763 774411188 77543921 335448592 395237444 762395541 888439406 914336576 500073145 821705098 315541614 640591096 479949533 770767167 166567735 322762662 742457581 998133444 201297434 606816153 835353830 983637052 5231006 120139430 569354042 599877236 281161776 821613144 29624297 161215279 125212045 963761773 149440830 590525334 917662032 956805683 38569710 128631787 837522694 938099289 708651509 712907701 36426931 879021586 533896834 909163694 281044194 439818141 387303985 981731252 928791955 951519042 196253876 936011082 130814812 910158856 848135580 956749972 504900658 626614989 602773183 691291717 85227623 366541998 326987388 857479838 599581174 991190020 922887670 938893798 983613600 983967886 461771117 850944648 767911665 833966708 929293094 957073224 484794360 608474303 195770256 867388481 730565881 890815456 742595851 954334234 649942001 877291874 832386560 848840080 764042645 771677258 989489629 990071842 767007651 777169590 971516681 990676938 967349794 985792546 750660905 918250767 428690361 647037087 644278143 773392352 911788891 966905248 631429306 797094835 117069660 398232976 394052450 628196940 199346517 716455832 913496878 983771177 306893209 809461325 906934873 936619202 862996024 993956952 672963290 692283662 529107828 619795645 938640355 978469354 362491440 382544302 302175245 377691366 254745014 283388495 236247113 930495214 92706022 518378694 251459670 915955838 596983756 942012991 826437724 859840984 762426077 765875152 655883983 958400701 669305355 861585173 948335361 994491111 335308921 356944470 407826595 791459756 111517945 425650145 339472797 967658528 885410432 913646506 448754738 456500744 236212819 288889529 537273357 648803357 960123933 983195560 859737187 994258335 754760232 892463794 3408808 806069340 396466168 581081036 665380847 829531382 696527199 942892118 125036394 592646915 839238256 856610091 945526431 949565487 50212363 188722745 361798881 945972143 262245260 910914572 87449264 707666424 611562437 674284913 468007370 617074665 492592857 613322649 889068887 976269611 998242311 998921794 820248717 840453818 742589451 841822115 151277463 574007421 52284871 457722040 837839459 997458514 312459151 518489145 331158546 875227507 82530909 750507216 875234228 984016703 429714750 661065636 4410052 64938007 939599380 944156708 824488836 852491200 551272138 623906677 847713896 888255935 339502197 451663645 455823428 662236984 925675134 954059335 607454214 824592830 857359376 885607307 492306358 883851419 740236104 975438761 115280143 246817320 912795307 979825605 880904066 988854208 825528624 878652061 764071543 940328943 672975453 814935197 591949181 851856686 164519614 949901208 151475092 347290472 95167521 173666158 175241376 854751846 105981449 943550568 609434844 771249436 492324455 727513323 172034642 197879905 177376691 530565723 368606796 585012050 535512090 960827791 11382384 129759620 857970881 996314490 147150673 677634017 990278875 994249430 574080785 717660833 890722528 901458220 624542418 972470931 153060591 763997182 220513492 721454682 155148146 609308668 198553138 884848571 180686423 712806839 966088179 970008354 276130519 849723107 622331215 894021110 563006943 857864105 48299066 304474423 187043836 790762200 334175727 629745243 657372865 905205656 414418093 592830123 753353745 912797306 232303192 484652851 938597368 952079174 569251614 971936779 46147576 853244382 238327171 920619446 522826752 691607348 782866181 947144573 66435471 937334540 797428359 967902859 727110933 885918913 872200493 961153845 973527757 984148250 574363671 688716544 594283137 841799514 854629687 946905262 65389645 225981975 477663887 576497314 72703546 112093980 343074037 647624077 15965270 931434254 233365842 401369133 836953423 929354438 36133010 422734907 34407643 989353178 671150119 926291965 40837909 427375641 924734452 962179691 153986314 965542646 616003568 881792596 222016978 658288074 447378105 474538435 147953420 150860003 551038384 837134592 349120570 801321411 862358668 909981086 992133618 998918470 205518163 741818541 222409606 467741019 945110663 953991307 541543021 898421561 619637249 657839554 316873130 668525219 205971082 959075708 126351792 705225870 298499313 700368710 543265742 670605954 373235527 698218172 243244952 749408543 641944250 843155036 629093588 701383216 81809038 564248598 560098696 959959667 628290830 701600028 898249448 950982824 763933880 787188283 72314080 790404621 756926377 871297181 366862809 812651490 953826113 976855721 597847572 773761050 783208138 872369223 343274995 485132680 458050002 488306808 419798480 731580694 164954674 688549698 117176344 206727777 805758003 889266319 42264924 241027003 611550974 617473516 819805659 963957188 741769370 828802131 922330620 957081797 356406549 606177616 234837967 668833766 946204344 999116636 87672679 302297955 120002349 634717377 779616244 937593964 502164479 747686161 161300731 228710970 534563265 894720339 765287664 953737998 73389816 211610140 246917011 612147247 513073603 856138835 187606660 325253246 157758195 455267835 806991657 853826642 562257192 625024674 581493587 745085441 200953015 469819784 115128360 348616389 528582256 646614411 271074147 686101134 787538803 879065758 12499574 513148106 92830901 913094967 421925241 652974795 782217775 882966495 321170693 981474846 307787769 425970113 722266571 898019652 697446547 992110233 59558228 606979924 441715627 708290497 664075673 693647966 872574896 912808738 355386511 823038459 855474304 976886571 788890562 818656919 457686822 892119252 691711869 909104548 278765218 876147780 85249845 924168868 37529060 677257553 309757424 803747756 790245836 858129516 314993299 347125413 557800398 715403257 350700860 464910907 362542335 449986247 856692478 890470379 936362759 958695346 367240131 742296695 485538632 786913294 494767922 723798647 750709205 961025013 962847639 978282160 514191986 707969628 283456421 451753640 22628885 235879018 32793082 981966789 454504950 814810669 929007131 972096096 360466455 466923493 987891257 988694579 968677301 969855540 943825080 944194804 923785370 982524435 774860912 821504242 857346204 904034993 975693123 995695291 826342514 958471516 163641479 352214280 345619046 830267804 948719715 948850845 452512369 827641975 968570492 985954137 44305547 384513534 475019802 920637195 698598176 841773755 654778322 896754272 469546231 718801885 705325428 861450335 762272636 882580500 792735867 831201280 966121844 995354498 518086368 983745639 304156096 841660269 417166889 725491159 65872943 570686084 857904656 958619880 480940272 690890273 671879544 733485628 663001475 938483944 439494850 441467810 276530870 791118934 234498787 884539388 275002193 371014288 809764750 834021763 186883589 590050658 241620484 258188630 293287273 531069112 694716338 973275667 756125474 929945070 424475644 539773611 126000223 484505418 709802322 752931089 46605984 169973469 996980216 998475121 922371063 989529065 949926513 988770928 993212659 997077440 274473314 355559530 57367829 366965107 115896723 555502789 312456739 440487170 209822370 599812999 418153810 418173490 987080213 988976099 992253511 995891554 168356110 451253530 665437483 872266045 3172415 172163128 570979190 616786257 818585376 866572041 80818810 237461788 355954348 698970440 258713503 842052307 553268531 753080828 515559970 777341557 143851565 608958482 302468419 458830551 494966989 723861760 92264560 257498133 851914574 887302301 991946906 992917511 220007720 652640303 338636010 613576820 443338071 704547926 503808676 810628497 657706192 668615439 233846717 248551943 569868787 945883546 379318912 630987601 454900870 631081034 69513086 937204539 457240732 534280838 173401815 370998951 412176454 971535939 979247390 991212004 438850498 974084081 436164157 864751203 528157102 633103003 624631125 918809066 747715347 765323174 136101866 183581937 128209158 671270207 262224058 580545839 576838451 731306273 813160893 883153096 168682806 682844599 241428362 316658409 180338507 321445544 480221688 571478411 729858490 750462604 380726042 955980360 795984464 812299355 843853739 844269207 809273986 992481750 72539313 979889516 477175648 497226765 6459512 447083077 408475979 531670432 712856496 892858699 857726918 896530587 892654007 966198420 637821435 916506620 444154347 886670119 84761854 195656706 319058619 845946545 626969641 829931779 966951421 993282955 990664766 991652530 914100337 997513311 553687186 884241335 798331515 997565098 455282591 980648637 966397912 996784275 809415936 972086304 573893335 604362783 46946606 213809779 404671688 498044925 487163627 576138063 115194929 356381262 795703302 895957793 76579091 413165428 545866433 777522407 613143499 809188997 604808193 724771964 162472640 361625004 39211605 569975231 491804849 807968236 322320307 857856701 478474808 885914514 442453290 531006796 244623133 385202477 881876256 893507236 955685313 956594765 414870541 917564478 414115813 618939103 652637261 728762194 688329027 702792658 697069655 897615115 985785649 991497872 156584757 241111184 217674428 381737354 961075164 979692664 749585939 853672285 236652663 914903455 514125248 839947311 984995229 993260819 826438726 843168789 143850081 668919641 490424519 910375018 645844412 653221897 485736607 896829951 810766436 947392624 419604863 918443917 153571591 601315163 134909261 481227819 89343839 188044617 232850627 334837560 101627913 738992890 580476019 783570734 537628806 765477696 406031734 566187069 758461749 980223400 882521348 928065930 392251073 829450343 733760252 888534961 579378742 992321094 177532248 796772697 233318455 569354525 135950821 714640651 41202162 772191535 117821803 477382197 115779037 158034371 452659533 949581710 235064529 486765290 120215927 746563613 59631701 307987413 530865693 916438299 200468689 343973973 17613931 537663457 72664758 673948345 695534489 953251554 645858351 938136014 325596088 746320697 267868619 929900231 423594255 555934970 90242010 337931183 270178959 336297504 183094696 759754972 353419136 588390277 62553789 371247794 616979083 817567358 248527033 770320549 861260877 982149236 446847258 661789069 350335095 694531267 333105724 935139786 546544204 914498943 632217081 666745468 388775998 912595853 802679775 850462067 875318237 886517831 659484077 839923422 610637310 787182260 724193113 984322565 565206826 654813345 708286308 839665571 68362767 840054376 874689332 946320190 286655094 583539472 969151364 989910440 198229981 541051176 159975193 910614430 169386936 900853655 291176645 685698764 83392197 595327632 295421283 638283279 684277490 931812743 221321389 509783856 352645249 404632973 338315162 684321289 355610242 418334926 815699483 829697000 936467740 957615713 277205772 487331423 174583243 841719249 958309213 979440960 662858527 831670006 662847865 879145886 11972204 127469391 503890955 892578005 851593800 883360876 302218918 834624817 761144296 843118532 813749801 977524680 160260466 572683488 749330958 899473892 471148244 983784453 542707118 809238025 385734711 567415620 841738375 871088749 537531579 587285210 659568838 810981806 184007979 360055010 719867583 877880586 703455592 933699144 826170659 932512187 866047998 915476171 538358953 757543133 634130177 714627501 883534858 963722024 98504469 600140714 94323609 376377119 720777608 887604654 481790751 860151693 685030025 720715612 783568907 785714338 34202260 379532165 270356920 361010790 546876355 600444390 788375424 997254921 538653718 698148370 152590975 719881729 808873014 885006226 132379509 421740390 965571782 971342956 817341150 914440611 736159643 949483925 948195040 990670649 125892007 613367270 233275642 708780632 894306079 990749151 519272268 913701588 274180606 651474777 24652138 574370290 571204567 811852133 392973427 632157810 901558316 945485602 772017296 793023131 891300950 977340118 350155656 495922973 360211069 636553467 338876410 972873714 196007747 394134632 483331801 788474113 306793822 639505629 681512819 909384713 216960587 533301236 61582645 353223718 18934851 66518332 659232262 964257155 577916004 993507211 739857047 771712744 992566508 997294908 523723276 610068183 865841618 939021814 266406261 808861529 116382138 495294013 574764937 809573364 500072402 562105963 399253240 887668187 271081307 851398832 716000084 789282441 291620914 321616028 308279932 825282297 858038916 952748076 237424635 851827631 796675696 909182482 895848572 915231707 659939000 865652835 187854257 463901452 962851145 991637996 369125114 450714891 396336125 966142924 721972837 973552443 62893354 672685044 648839217 962540543 196394818 559100572 177315987 865157617 239880538 748107112 399408345 536932237 670404195 873152796 843149549 968280362 750674494 828442424 706705385 906706018 393299864 777956035 905681428 953784992 356235535 799396835 248125981 777560753 62843511 956871572 716014085 726307414 680272928 964569378 15357918 993520490 641627110 902969797 605163140 861941147 521553752 863967424 400280624 636239531 977584369 981816388 984303777 998034695 588139066 650537842 605914557 931981263 283313040 615769114 106204714 818656890 362652349 622183213 857653679 871701703 433432640 929131399 949754626 972441168 143422957 147140346 778066143 967962992 688697149 797457560 293554615 990121368 878128242 919326753 248089123 968764400 39882218 742786821 171375935 418205825 67493421 519527517 965245302 983463504 331285929 595611701 118414825 355706089 772984234 904673844 965967404 989799087 569149290 708613662 635391252 648072075 957763280 995755718 215416465 731595421 410922891 883095890 217275681 323412798 613822207 908787405 118105846 563243846 288142990 329421820 529809181 907503896 207574557 950597037 131803391 850253066 143381259 384511662 704405180 853048619 292984914 605828989 72674839 612969860 107745997 412465414 910232116 915295491 970844947 977528151 171423001 462358494 531090747 972999832 974829918 998549141 733198206 814736310 213707964 267278136 128659546 458948562 978351324 988435027 122584756 525560800 801607746 868271956 538152409 930736940 60770512 527067671 951556905 985612521 757412603 798582115 498932401 502762663 153529452 163642720 773597462 862180009 359649104 830432084 902474721 927140950 821550404 843662796 260062491 843298952 325371109 433781291 402491600 422845923 227385201 263955676 219001934 478951072 767674734 858765777 427479485 745243374 442954986 514324012 466512937 798996504 673760978 705186904 737365198 805159057 255872404 873026824 159763391 311512535 374138674 444625672 989435018 995241545 685569149 686335016 940991099 968575343 372973079 788582504 437511558 742502348 271517770 811792541 535541584 959317262 178901273 776841993 300348365 462274220 250388779 760064743 355361626 458440509 980167493 990907398 317394581 723796652 171847246 643992470 935114588 961089987 642115790 843833186 359771583 912644292 849625364 889662244 889555037 905760347 994593609 995620246 598353660 754198130 937464871 991391513 923586198 982288201 149555213 508267491 600999452 657326838 332834451 434156384 781322933 789160292 671223355 759906607 337240307 827956774 896199208 995360783 437082878 760893908 588374880 917184687 317481882 761382505 980871471 982520505 678565799 746215150 236707544 259942350 289919698 747889725 706390507 784722399 364628821 716254604 554392598 923290075 484511276 974659577 236705408 599353992 844380854 901850524 617535599 621135027 732112103 918068045 591167414 850346474 371147114 937138227 855586484 866832908 29325417 494174694 860892379 897660673 152541455 268612387 952630122 972650818 896162099 956805103 172399910 998349627 661173846 854929990 49490962 902674543 630625480 985839361 305623607 339941354 982854790 990620016 161191281 737023904 83731348 917532147 46119052 689819469 589126371 928471046 585851458 862386264 211596262 860375677 140974615 606715911 442611461 982690550 429494892 846896648 42996295 683316811 726662820 933491564 159440301 164812901 815718293 821970216 322760933 663969498 769099505 805056230 928858893 944848687 419484761 506381085 811965299 939853822 797672649 835712063 851482064 864838361 592248176 936314722 127280462 399357121 141350335 325194071 111522592 661079475 889849169 940692443 369084702 992216908 392068829 872233884 2663152 463268884 944139254 945541001 68601193 746227875 624578356 648316853 639425274 882285661 3450967 96855776 838260373 927739577 932786566 986641563 527762780 820650091 19754411 360089996 256582330 377799052 535438025 902367912 472038564 547604317 864568542 923411380 668150093 784508718 653421201 779110681 827154351 988085581 110218543 664521363 629560546 864036160 446675735 561843682 942113971 999144897 630002601 760745719 505036185 679867830 512697485 942802989 607120514 668539045 478912986 999094135 173084276 460186409 36962270 449292491 276452131 910505114 648527198 755740643 901424799 906911221 782854161 833322772 1367655 528892883 614047972 627985837 992925906 994410617 108100079 507450320 165124991 217766579 188576792 304000637 511251723 608349340 967890294 988288426 247066125 471573749 601801937 900981460 798107650 886449169 359546454 774897472 94867045 736588224 884847914 996339153 369504373 632735416 287731441 484031439 108741880 959171536 213600054 334791420 953073741 957753453 947336568 967234719 636170187 808279405 447148464 584283177 351405792 598755484 7227831 818914233 41501232 148313065 75949002 707397458 819633452 836377765 101674273 654475584 192006877 691728158 189282825 635346361 430290034 647966579 990190667 994126426 69205638 720164538 877985791 964076051 446912087 857348911 625298741 820593256 257817037 283584037 395237627 431228709 738800814 804753039 792198232 952972917 450982632 595639173 651241782 761094446 758366396 805920172 450879804 546748798 111751786 230721726 212367127 899894553 122354841 910025719 217225891 276446441 699878115 874381572 200327321 599013380 676537536 896899793 872255611 918609953 773411435 830032070 596006434 707778356 998233556 998796608 84977304 896895435 692305671 976779600 342048203 385671043 475820866 756473068 68625467 436178086 512474142 720482671 815896158 913429179 162440035 651683384 284903669 632453940 330222511 735356905 25321486 820139824 718079215 908867180 513958073 782270068 398921452 941987128 521729000 616227808 202103705 967413580 87491589 584585910 231686941 974582336 986585608 997983129 239072503 295627900 924445641 985330643 708411022 816414259 804771331 929384237 16689429 381163461 354323529 661081270 204641943 543528006 44533755 208980697 676930170 950180758 828278399 991486978 580954036 864492117 203315916 637571928 105359362 657887375 437650814 941872166 700156128 879309767 58118374 765751580 297517434 831754653 180461963 941571949 69416433 536913474 193616937 758428611 417544475 780224596 327830785 764029335 757107641 836810115 306327738 974221373 501510020 969073105 888131258 966029040 579183157 630647548 907816792 928680319 498368426 930375609 919779310 926841305 429293043 958307928 464056963 466346884 905901231 961116247 349502157 611188478 925541242 984933587 945540252 984240505 423726020 548314985 541829415 799627522 153293846 411841982 758780661 842591182 624913923 922850656 360299913 925779854 652127356 912516254 221416012 270180435 884217321 927165424 666167125 983011494 79791115 865363613 707606836 950006471 352241522 795325737 239447488 722015827 491187322 959302918 684225922 957487719 182776703 323478041 620695442 842800126 824382362 899049535 449930590 847228315 379210153 714887744 751738164 944322550 641810610 946943014 147920610 580433923 252599167 702614590 833708020 863290050 227996762 643172162 514718360 937533285 548789515 986072418 390771936 411182562 355310839 368260002 184143903 537177470 567002796 989187659 967763652 995518905 366214989 832414880 241574894 276427128 704481431 847982147 647817193 743912080 512052690 632527419 652179708 715063291 660192228 817623040 253691595 838653877 988785344 996314350 135726314 622498961 824985155 876676014 133803416 298146391 560965357 815707787 259308628 836007754 960371004 972652656 103840150 886166286 389031111 443799708 585086178 934712562 678194154 694035172 509966999 747817141 531297048 931387198 754258562 763076125 664403613 766076256 703333955 762766952 420629811 493204776 144579079 960612954 493635374 566466209 840258136 917445840 7911390 663018383 881301000 956939240 43332361 281553471 447499961 609769245 289897796 290322538 29534403 426621511 908503698 974667465 786816316 824679935 488834509 789671941 904118399 938307344 663900704 767511156 163951782 450737646 177512452 737074788 500258085 972559363 291145194 625306945 645761229 647860281 872424677 887898716 7196501 394765718 681087404 692833323 563025248 917404055 306652376 459933803 60943410 948306902 453600899 794556019 699235249 914875563 87658104 137622305 27295967 684584376 563564071 648462977 293391111 312376486 683194076 991106292 944404905 954175963 220913324 310285584 868261469 937528798 58094000 533863572 872897153 991460173 837770792 912938077 703434402 729056819 224233256 660962238 564812350 873180573 310539067 858344772 883836385 983795885 913381548 989937350 969604448 974985389 51612486 173100573 273524699 554513464 731452249 942316169 575908252 715111846 529746845 948392977 267463837 603872699 200319581 396504659 350577250 655596350 938313868 997426622 585214419 982335209 776060253 851206773 238776020 987115426 157069780 398571453 604031911 754709892 86011147 144566983 77084904 231742631 842536339 853963551 535104233 705614415 929628494 978400056 205970239 425605627 40157152 622073425 308607717 572436757 145476434 503009760 168216630 605437569 923835921 972172772 245970717 468591954 891887199 952205911 798253381 832026013 669240036 898094555 570299404 905973547 22841256 873759924 336672782 667313818 158254493 181097242 802107681 822816621 881338208 887150701 226226136 309655697 841651693 978710039 430893437 775048062 368953557 810212202 400340231 444108512 431023912 783974976 956269869 965745606 286778291 535685381 960751415 994163468 189314979 265164040 845977940 960501663 197585275 730830348 911015715 985376939 213808386 274086982 713584886 873075755 486098537 668076253 750475607 811523725 84056209 288637261 433743541 637042265 48009701 309298457 882877444 918256759 947197735 988265816 633740404 823228294 401163717 906073454 414518204 629457113 216000722 464714852 827284649 914035627 777355522 880338874 166753847 349821566 551641639 827539028 444881116 973503314 748941350 981598180 622990414 948417843 567622308 915844577 720382095 822431255 144188480 605193293 151171732 876474161 490849919 619793925 259636809 829681152 865901247 889850625 980197391 980565528 145192536 878141586 891692046 943165544 780175052 843899236 195372061 522221079 584876124 819884408 620684257 749197632 656398682 988120404 187957585 394904254 72471014 927725596 261208477 935772098 210314395 943142548 517377504 766078099 168347933 238865739 929026635 953750419 726925002 958162731 995980552 999299422 38121513 666616142 957091817 978189888 406659923 985813969 709529861 807714975 615582487 781783167 532022537 812899025 920948565 922890190 35985667 710266616 176803882 796566421 332029060 503746409 984366287 990472410 217571022 777138140 805680546 850332385 543331036 857451239 682580680 912226296 252341773 848253477 475373400 657181122 602623486 825216422 191865370 427000618 912102374 980322942 846272089 980006642 998222235 999031460 847510575 894204170 319311440 526558713 241817912 542167825 642487610 854177954 240099933 808811437 877376919 975273627 927627215 931687219 348524475 518580446 806981810 886002338 512897493 616960653 145739021 611475082 842807152 889123183 714409587 817894629 111663030 655222010 480108884 969874279 113514677 190097979 830655348 895748352 921722332 978602104 789979792 930727278 517910501 548288767 1953287 231672387 244410262 328587645 827300399 839927795 279224723 945332213 636723560 904842628 549291394 731077624 865883495 902238554 410652025 462955533 218821948 853875331 845774892 849183396 796783168 984855313 992196356 997668859 741954581 756391123 346917598 984440584 456616309 660971659 399879326 730815308 593236356 676160699 731803895 907975094 894306386 903758758 369150811 621641252 385173213 783997506 294560569 769255580 220851120 231903380 703777341 804264774 519603035 565694978 59649493 454932723 50896153 913578863 571706100 612590016 382388398 960853286 191938997 542662647 906488961 947624538 174127099 880501925 454985197 593485011 29661989 872772203 406163261 734496906 280155228 727096478 276059373 440010118 151663956 783641032 306250283 369294962 297100718 328774922 965026835 993537897 606444783 764376694 450139775 936362396 955181822 959174211 51715057 178061341 62236203 694523982 920422539 967333820 969084360 981652619 486484281 990415017 284425321 967425331 980816500 984369912 800616355 935747696 220809219 440148115 59595785 936651828 478862890 929278207 829747375 920083295 774808088 793746581 231012827 243325231 222856426 617041586 158010418 446555342 12258762 411341208 121978221 302127580 709512581 914110139 338529478 342496863 259006246 550898282 552969217 610060056 156566801 261092852 158436292 400121503 206570456 634289910 661446384 670001334 341639664 803044616 899661148 999128283 515595331 732458586 816821482 966056562 30798173 995457990 386114425 739579532 443824066 883905495 399751895 927387385 353049500 895551084 11111297 865581681 992661828 992749790 394152888 636590882 254368084 412406192 281150464 393446155 500709765 809139123 244581553 616975883 95734862 466342135 389068736 510702847 918312540 949435378 253400012 445620231 748593979 880546513 741422389 785912855 863131803 870448294 775652172 780883615 851125190 984045410 297736859 599138435 855094476 931970771 516109827 522776012 244174040 797160458 302625760 724508549 987557809 990964818 393606139 496959016 618710634 916083374 458884475 526131359 559486911 764105461 977407718 984886709 508803859 911681307 531441376 548913272 434079995 863890479 658725891 744613804 336535799 793557013 50489322 123582771 273367498 317087845 159168208 648927161 489509754 527646846 359180556 689442936 972779656 988062981 476260223 772821935 189403080 735233905 793053309 951458074 723660416 800149057 275210767 361604687 729781458 848339593 207435319 985961896 586666960 988065068 823648225 958067630 37661638 576334713 604798303 682321610 819312861 931559911 763832323 855881950 926000858 941649713 931245093 961356184 95976529 130089562 16516330 773520366 881696335 945515636 599474416 699000096 212697539 286447563 60354552 870199750 214652142 553721988 423259520 598158038 121865277 661412312 224553618 924562022 670300489 840526102 521111425 903001267 248936134 672345906 233960855 475519092 282104017 387492469 359597066 953145060 410195570 775289700 562944994 765564008 125082532 140420915 399035357 635046075 80651276 657243565 859307793 903506031 14859552 35567523 398843206 977443452 633442069 694253480 799666162 829734789 454897558 772956061 738391414 798022213 893134447 939164821 958166367 972437155 337549060 349583424 878072228 950292333 511937593 765440963 41456199 548738570 273496199 738465541 141810412 223751566 359650631 669819455 945988616 973173177 250264978 962842004 556133749 630732139 526006443 903163156 154493205 866190879 924148781 993378645 151313698 720668803 298718414 554669967 104565776 389227768 852532520 937070743 923698837 963193175 542847495 576115823 623636096 904684322 388115148 968898490 927992034 990780384 761002672 887249124 755164378 819274016 387909498 652350662 907475660 994623193 681524380 897605113 819715640 845840360 244308306 497659780 313890895 736264306 329263975 853337101 502892585 607088138 331148809 411843968 607728361 723813633 345216591 802889423 980254038 989908330 957127631 979358901 710641705 980206712 2078252 273876448 32655798 968153706 187572455 286723668 465246247 546402984 116766736 698502484 217493033 516253641 349754934 897459016 79447284 767188819 693423453 891298510 712311672 888302852 499181827 832277688 47751808 669655167 591276473 879503422 938769606 970350260 378163486 893880902 604225172 892276247 255495208 640023755 762691984 967574140 76794948 426312920 980444796 996102965 149423714 634501615 408144631 586033916 398084673 528270402 849711984 943978928 130609538 806773702 707134569 740456907 191053384 699556714 663348919 979930430 311206587 563046786 85963240 416701406 869566040 913579072 521293735 768763159 878196804 898405111 764105021 872788873 446060245 980571198 716680319 908965865 295288184 621692905 912772302 944033290 998727196 998818090 886932006 975054720 521083530 734182074 276140973 590190128 540761163 665822630 639664724 721752302 420252519 756118291 363135357 964567143 474044538 641902851 600930464 696226047 498027611 895954503 953211896 968367853 433877806 521821694 91090011 620738889 806863407 946844508 917103777 997955741 391834506 824981071 466230803 733575077 436584827 660733161 944559689 974894674 498367998 742954703 430807424 802538163 989313162 994848929 477521376 975612987 308150835 948931453 923652970 941066004 617077881 983403945 102268933 451973286 421049202 465195333 790289623 879634357 422181353 723349341 171394596 506796415 372790066 490256999 575434770 710984205 18822548 151606359 581336120 825518778 782171282 862526391 300582495 826312637 477504853 994491766 553874076 774569171 858241819 963337371 387092205 586257616 561181705 954347395 687521339 776851568 448926578 769265150 517776119 652971651 911746797 914657310 668930069 849581990 990536277 991910342 30812261 120342203 824124166 961761120 241183376 491273557 586868484 685148980 330219845 705153223 862045253 886961859 10172517 378529080 302216663 904464150 639259226 655491629 349840183 508003967 518751129 566761821 16519227 914333503 601877183 883604440 595492052 693713132 833519179 835735258 68025083 268233851 970950142 984884757 698793393 844953113 700791888 936089014 830199114 994132631 561758118 902239653 953730180 974149987 759570225 886951594 563276809 605277400 18248691 397739163 969877969 986021323 306773442 513972887 334343528 640624914 782856730 895602367 225003283 882562177 843153949 917518706 254932207 577189024 315329117 899865503 147973344 334207340 78953981 911673304 845620458 915925040 206072835 888765596 545504043 825203267 994961206 995208485 154075207 717222461 683112664 765898540 573199444 816860118 668066859 887901657 565156790 790755248 393641347 650572533 764322399 826041553 324689506 978221418 485591870 965753283 381197784 609510737 134699754 240951437 215884939 329576041 122610263 436762205 291723054 600008261 127280403 679109119 178108726 996639256 809665423 852790932 783516207 953857304 27037511 786457596 93092212 120733751 556009157 867637541 662715920 848203426 378355414 516267214 860996164 879033825 299171412 527068163 378564595 802212701 527959412 687908264 941243824 996889506 914661725 954684992 44734631 95592500 624395037 938576299 579689005 666776468 295879627 926589877 984070304 996767387 216279878 941907190 401600001 848713832 220072665 267401310 46337053 383452600 761799564 912837286 297690465 857497155 10384748 47672116 401846692 908375325 988154476 988546703 629305659 934181769 697611586 996289353 445866495 657232040 672682404 965849234 647508747 653708754 504931936 862849885 296194395 541433582 461634411 533883356 503096590 873230622 217783678 472878693 321072042 730857315 361689773 607380102 348157691 919663998 333462462 850778274 622404818 751200515 985278257 986025102 760043057 968106892 171026190 588966375 429548539 756389410 145386250 835084443 441283087 461419675 335761674 496330057 846684017 881242492 130088192 267810635 104594661 509412634 762756399 922581720 360363575 911249297 373609164 993616065 859372965 924843361 119677126 673750575 420531068 774535042 65053528 843895874 343005597 684668674 827634995 959580117 903614243 918748638 811494774 847867842 709271940 871641749 873952568 923794869 217252510 907055017 766112372 851877057 376913321 956314185 963435511 979736268 138397622 996963139 371385748 454971954 86798650 893173439 72211754 530100123 318674392 817589929 35869075 60883906 972449132 979776639 139035253 206527150 780685460 885178193 574060690 880028041 844561954 873691111 978790990 984769449 983344617 995852064 973567493 986423171 159593414 631641525 588195553 878166762 990219509 990402940 248540128 334744376 580335977 936592136 72480605 672515154 892925080 986467572 206818027 867378874 671162758 712826550 610661961 867334614 357626242 428112473 964141258 985177358 411467586 788694247 988601031 996124530 168575869 884847999 668615751 892338705 489772952 713779211 961032035 993404806 26412605 260885019 204060338 449561958 837251203 934146355 821046437 939491043 11912986 708296045 822439010 947502533 599258938 909708286 731954735 738953777 915477562 990687900 457794449 476413438 386500031 469094739 518615705 733346422 413887345 956871159 186003899 222382505 588404904 688447029 74984246 567361571 592074725 936053510 660249228 812233887 483894377 837886442 198815717 359950581 347653302 484556138 85668241 387315532 35669262 740302897 789081705 849105804 663274513 780520303 819198566 894570288 838904103 939779345 673798470 810669420 58102788 622255434 865867180 990898620 830826550 856422662 531537526 919464181 953024807 987156334 268315486 700539860 205534637 989312275 3341620 562949461 866803068 937965733 93084595 953132098 400055056 806310569 132646930 423720936 50962863 455733593 795976838 950456524 397685268 504838100 894306681 895110704 793741352 860497184 48377384 709681140 664318736 775283985 921158208 996742861 20964004 200861346 354710820 988650336 315956624 701688895 456041476 779092725 178852189 227963338 896892593 917917670 689412261 798265838 355596362 947484357 577695407 996464774 42195780 994753737 364579724 537680385 771160358 815427643 80250801 160768256 519475493 838216163 668992030 984463591 266071002 945274480 580578690 605996152 827693319 936629707 30699440 537724213 968539207 996523786 127921775 354910557 774832198 959956322 198374141 986445117 763558909 775833128 621559246 893378095 592396440 915835543 457942085 895528495 137585962 880443998 624493203 806589754 596939517 806523621 54653307 687625821 435884332 557225205 304721031 589960142 809626891 826408201 186551513 684862092 617667328 957654671 675029966 712230220 165654142 980220042 48057908 342414457 479797915 498223670 679806123 837361428 995989550 999064018 31232586 311315407 100602108 318040848 359289022 743673219 676245150 916265642 11506522 632760737 185142231 367981696 725711123 828438693 565212705 656958515 929925581 949152400 263077864 764951501 829928131 909868822 670899783 707393371 27098050 482620286 324878062 644725203 536359956 792595313 376737591 887434405 79539995 748586322 257759789 531560253 776540242 829734556 744252231 798113525 321484056 742942774 550460367 991343816 393962052 839611820 240137331 650524651 673190820 697021362 580756215 859746454 717815907 817133211 832375906 896613559 23178685 874270213 129520824 786402641 265076254 877708033 957757117 989372474 47613174 762914412 905642668 944037283 93615099 673733886 945183082 948574176 326354335 492542302 996225594 999096030 45451151 781093678 579457687 765451061 972249236 972603549 739454584 922886138 407663258 777708190 687339583 922100898 872455366 985444464 772196020 912841917 750648578 876668038 276305793 702220732 508732828 838589615 481764248 669522506 568344407 763734955 212812876 759593745 908169626 956171058 424904427 647361638 658782459 884134509 840101727 967743697 268370790 436313028 667401470 920244426 619784318 871617310 831552402 839856884 325695213 483478384 849041012 865172280 532554688 928387027 765480439 961851865 11727952 854107502 735955065 854173205 236518507 612914308 13768538 430504258 237353028 320106152 208327111 837098939 383069130 485579978 425177261 909023288 521562421 601227890 335279046 592008927 100516039 139715518 781727424 812562703 446386111 969680476 160786539 521586587 184050556 409555801 14071173 792820558 619617199 929302996 307610561 552215618 915235619 996647701 117498422 712945001 501444112 802067494 749211019 795547223 518544561 821955385 753549431 819748946 895689618 922684640 941301228 947483880 97874995 183623937 754585615 799930963 588299582 733692750 34530813 979486015 109977641 933539771 301807696 534442497 331040098 352549233 564306436 621051675 121539234 134588530 245343989 467127362 25539020 847956770 432381733 759738615 252918915 767711343 287852421 360766484 822058540 876894319 903967263 924890577 997607057 998874944 240905907 457394144 155887673 714962076 85126774 327630644 363109019 408338270 224805195 655121241 590963413 696846466 242952661 708846953 972497334 975218047 945270969 980413480 64639208 537494055 300659614 968777014 417071085 447435854 740661646 997747569 87344951 533667163 290632325 740406202 892749249 984404219 516894850 827375994 558701132 935146423 994181383 996089820 881556431 931883515 328546190 901094472 971784492 977498602 783035415 790849183 454049627 764794940 312646665 697687371 940733386 971497971 5999241 547675352 237883472 930535856 65627537 172523921 266912934 488809513 783868731 852348213 108543442 276096749 426012034 711124033 936278297 996200119 131502579 837008104 173738642 305951662 987271727 996318561 76428462 174823001 731029957 944157201 376862010 739192281 1755628 178241787 276254988 998048530 279744404 467279127 247997674 349192443 590412893 786595420 152927535 931803866 943767775 984043509 665719770 769793779 507186475 621000497 500165601 834356895 729395607 813944653 515914080 788165991 629585970 856268359 331296887 826276948 502377755 968033640 517750480 519338189 456327175 649286493 997909996 997929976 680711748 985514060 737329005 972281738 412691194 729710001 140974323 405029974 84324443 190462661 873478581 946686640 23304941 996754379 671563199 917580181 862278800 937517748 946494951 955911224 395858749 764192323 149149200 373360234 457288282 782812064 22568856 875081394 95727925 829979452 672795239 847260909 797079956 924618022 903724607 986152051 324305474 890072149 383096282 670591010 367200672 697164110 383171053 887799118 480631787 916987815 350165999 774277984 629220691 883455650 910367182 959299229 773021462 864342657 946238603 982079525 369691847 626645712 344238663 628191535 414585256 681062656 130971681 589102824 816018691 997296213 943405537 956316808 92215212 788994435 710579051 926101220 243096222 535091805 930085677 983627032 996223742 997937400 468567318 729520822 434064763 475843940 839470224 872048574 924174179 936329356 690995602 990209386 725531855 982019652 311619149 827952543 201098485 350393555 186829534 859810474 462068123 527926972 402353236 464718971 379357504 414602020 887516702 942152602 604817822 733657937 470132275 743894175 29572161 187743929 364092845 748453150 369770869 417640899 254008094 263544532 854127506 888943315 729452012 847717139 265755937 441437505 7062236 541890483 145232283 718706680 628044786 888798410 913274334 960862712 900503872 969496499 372801531 759721480 409814606 744141398 398064010 508249772 164152586 961847016 272720241 287151555 259681425 790943712 774679588 863666335 619389667 943311024 626913937 631396199 235962245 870647506 133846007 947590328 691041957 718014984 564922196 701800550 366358660 690574582 815904185 935687250 536125755 941065975 824481709 852556119 81616359 367606780 917459147 959980066 986126684 995922492 213127489 532047162 246268196 790375001 811949667 896791718 727788613 949513150 201256513 893675501 711038816 854767105 783759551 941833318 101228123 821517145 378622493 699327284 976690123 987675855 64777938 660992726 385802983 832392101 598254463 618811025 333248709 732019080 760870543 813646448 392002902 830254542 50975616 132753983 634820984 838800669 953659170 983289651 694801215 926654726 688237190 991156639 16491858 736614562 457522475 598142752 186294734 507117366 855135938 869333855 748864654 761232540 793812824 863274520 750979940 898371779 359384323 767308144 357236870 706741864 364103700 631416686 692723510 879471943 154470976 828178711 479514490 878728469 780097221 951610543 463650090 821692349 168473852 430987145 354378434 839773905 672897400 987890840 959151078 979052273 203242336 270720100 298455043 669838957 52349003 698225378 363932366 990230783 658173072 904387285 217518549 775437839 450413168 465669925 952558312 988746454 803031737 861907190 21885608 242226062 116551659 567664717 913979462 954006151 981335599 983435631 923081041 969925491 926740258 972172118 912063907 918638053 953101701 967022393 385875992 701120413 748661925 943736324 472501074 761867461 908872874 955619397 54608454 670174210 590439744 852543591 840127350 927452691 982468349 982477302 628243961 643659414 207353359 354472315 373206681 946327269 328181374 694056631 32989741 468212958 30145745 658543861 514963736 966876273 381356342 810939906 46553125 532709050 594721566 872815898 621668698 709995131 951443034 983888910 179053492 618907243 662209423 904292147 773621405 975334480 966499104 993042042 930530395 993209193 975936065 978850175 401959311 483484413 360507628 396542509 272107876 986841595 21793469 788192699 218836976 363874578 417934621 791724031 275089772 302501793 976758786 986690847 5054474 242306354 84301857 245259141 160389232 920158376 347540785 641734348 826451104 839537997 287798778 782826725 534495283 974978076 200012774 499614785 333611903 931420971 358906324 409008957 630335594 952760730 401830779 469588722 89959044 214982538 97322390 339725678 438205522 774381130 378776430 406615381 803063060 985493258 911991508 965485189 228699054 253615379 211783415 366557696 226273924 576222300 598975572 601492031 407959643 844373250 332743572 823485049 1478811 655558386 217647270 674051056 556175419 596318661 783623937 944908009 246927476 775958294 760461099 793902193 312287176 623232710 133305607 991122150 378744993 550205572 517242910 519821666 513708010 851448978 832268475 981751203 713696417 794017899 388713178 439588738 540158058 892396933 848632227 942185497 759353274 899387537 495819025 783370947 890097536 994970745 699049888 738567990 548781748 984974536 282164218 291803452 7909186 253066680 150630381 948537739 67088472 107784920 816995079 862526573 151423270 859475290 459033270 915319837 615895284 834516879 340224530 764783913 31258215 264007959 413648750 555274871 611244959 871639397 352006823 800740910 515665854 638816341 259923483 324861663 982520867 987078792 321843851 432928261 183402087 670338025 5928195 785659040 520278182 750831652 414150613 588648688 35848013 62955785 136002270 234114189 362908728 383519203 347854154 966466421 356335297 389475581 839310243 860732799 858175193 914689069 945989129 984384956 463996925 935014557 355764579 820478159 350806774 390644897 892988024 918515843 260708276 694332914 144660399 232463411 555192544 629332512 782691035 792003045 411591903 651581139 605261611 976856934 763305524 848582170 954366971 969129608 142349129 871528447 379342118 699583829 561853523 829294858 500836190 648956754 661571853 780740165 933785828 938313002 459302063 794111767 674840366 892811473 728982452 928349390 915010619 953628052 130707531 218442069 732432440 991592273 610209661 613619571 424867485 951985236 472668509 599529129 344375547 368978282 812137959 875347320 519659141 596182576 220125211 927611012 563536723 753962032 604533255 751781420 629178626 992614282 401802389 716007432 372493507 509528210 22519705 348642085 942525089 987106600 535417241 762570341 563257985 572206481 561007290 947457869 490931670 526121247 653338473 723841955 165463224 694983794 732461271 732770564 848076794 922889544 405727738 782606521 213999463 612292163 571872660 856901916 939168232 952900919 378833116 835043085 846480535 919688855 183665311 800677748 766678770 943039274 431111793 826177689 253361673 585021018 925323427 977075406 577337063 765227437 767832611 767959084 440674257 965466118 597208340 633709771 175911991 333734974 455331636 706537679 141276030 193186833 600044681 601496932 472886738 512069880 239778224 656326252 783624503 974089219 36828302 714176510 805761770 941613819 727785899 739745946 782794005 978793729 392773189 464817355 935410779 980619158 348753917 850503352 55240099 365716372 375938027 537253977 907190611 970086981 259581840 808581757 320651747 376713213 291118812 698640879 208875089 740381523 471329644 834020862 996367172 997595085 211914984 310962755 678378241 853670314 557854271 955995281 98418566 949741706 716463293 921880051 376127176 981828762 69159220 203826082 449137951 688151179 160343207 297098583 357324628 901766629 923503637 975739030 492821464 746378938 293037307 417813601 657493984 800882711 357163747 806415672 451060428 755422520 174610604 674755559 562711293 819111995 389862202 526470844 755900006 930601029 492562723 888265773 111305067 389384977 3676219 201202693 95625306 451549454 336813358 453827063 505211348 627915932 687507879 892492728 792384788 922626759 840794228 922784350 758771012 833314922 298852545 934008672 319064581 802881014 815660513 873004669 845727243 892473540 925240569 977632518 132647705 886331087 219282154 412460467 419874746 910259848 741604485 979465750 827823158 903588450 17202478 191850498 833494094 846114888 723016264 956965569 883612406 999275824 498883817 665338775 886152670 960573767 40820763 969663088 195205414 566162580 599889238 872453794 235547142 592548881 22693108 336202080 312877173 970605579 105592840 394071738 579409713 955826368 805666748 993605412 29290876 929057878 717673739 941055915 638767266 655700967 471095080 561175341 316722014 439649203 850206123 850954235 206258337 952233956 944960798 949736322 159264217 874029690 407013700 953972604 650136731 888048264 723262194 878102356 417702577 904239800 792281992 968585284 755995834 910296665 401434790 959596565 121745215 562492967 257667525 971655359 11523698 311999987 644318178 954734287 306709275 594955863 180043321 985197179 630960889 831745443 544155331 821159963 246785225 686881311 484303124 835332517 702311642 746171645 472498596 948617962 103942899 684778239 183101797 347506945 735114786 842628756 601720181 615638468 120564596 988336500 123558488 581532112 618575233 919064462 924454387 939067412 65812725 560376660 387408798 553486729 765238895 941203331 54558563 362041576 550604581 732830400 298585786 775947768 13431713 466251729 463761650 647419299 77104684 921083906 925804438 937100840 831424118 963423098 78345304 479675611 659682565 712526233 315623794 362298962 972778228 990092387 545733905 761593493 396664683 502368831 855388380 860302357 35053982 958629073 644130953 939577339 605871624 820742424 806940831 993767021 429376360 926502971 529272598 630641382 381442848 506545222 706941982 858704500 245632200 301513917 792546232 826742892 377448323 715447891 573946925 681952715 32955804 104836772 982061966 988493870 435977026 632707695 126918189 631398309 886829563 997498603 534671531 558862984 569449523 630533062 878108332 930027743 106350021 479829680 180682629 595582177 667687026 969819748 482384921 716491839 877040325 995248349 567828592 669164482 375572058 577962326 101576704 585562642 225336205 850282332 74561796 499791170 597829440 684407045 762031937 994048380 953629416 985697241 478656229 787712585 354812349 391989195 416954739 659920629 126272730 718873124 805543286 903502764 866395092 938931528 927121241 976881680 298747419 332212942 574082642 965239170 687527638 976137678 718641409 919734318 820948382 993385759 806113152 849118339 446879329 823285492 9163729 581726312 217088564 623401265 351032783 862662702 531851895 788416651 888925493 984403015 979362144 998058819 82664448 420924005 510774597 777960096 774074552 783330868 669367517 849114453 872687136 940014310 144390509 750648453 585194824 770236825 503117097 521146901 938047670 959420394 909095653 965557904 468197787 606562492 707077557 762665595 521255172 691005399 406049590 467176699 121082388 618402563 668724330 898055014 882171889 966361433 44845636 90500482 621709210 694399237 853997916 967149447 646765398 951298805 518257134 562602382 265403905 566102196 538846495 649246927 144297613 873937648 314302737 607959299 111928462 941065981 816287378 871742639 270202641 796751616 673330059 841124997 210371598 462899745 721363253 787079199 408996126 865733575 680841953 740476674 48756046 510194405 726284502 920168053 298966161 520235903 220831068 915174779 939724143 987561482 926405956 927278472 427953857 911804550 201066947 788283279 151181913 244852778 891808807 958608361 862916030 960515931 514850872 773641582 139638394 797318654 307172366 832589295 52557768 391036350 250510292 819181428 216352579 893157214 741479973 743613800 46869665 439142031 905620693 935467182 867909157 973331162 759899100 775092591 26746336 156541474 490241615 863907472 35734902 584385836 701020141 853273156 80775528 156652775 336330609 521001256 383484538 702582701 802021008 930954984 282439042 774561992 64084751 901477622 974447784 983652370 794392156 880764806 674603230 968821900 980486904 989482656 174821968 271496700 967551745 980530025 807322281 940419671 917307203 947954826 142106391 787604330 991094963 995280089 745796120 981447346 236113252 281567842 274042572 719253122 146314100 336023475 260529110 316629374 161481336 783508433 521320572 802348174 115621857 328446784 960433886 976895039 4658552 628246343 961468418 978476633 675745567 876355054 183781270 622658214 263933992 568173967 708636942 848711929 116982598 927616657 508656786 915257040 795210490 866421909 935590199 954046345 947810651 975578431 277969756 445924633 817406233 923132111 704564885 740895433 890892919 915758258 995886601 997592081 675729148 703413567 329513799 529061542 216458049 455032318 611504837 677274251 292698647 984636358 557483371 666464598 923898539 926394196 426741497 645001493 358326241 474235795 17552479 542366168 832403169 888351662 727422136 907439656 220401774 828761232 744322032 784163875 974389208 992904538 432311337 830676553 807706976 966593310 5342860 714274915 901750306 936266181 602734281 795219699 223564528 670786831 602372888 645020406 438020398 636035345 279414783 373339645 177926582 547081872 802569785 940842070 921840424 930988520 10478183 426402497 254922355 689769545 382111127 599179830 607557525 912505558 469837324 970512460 36825893 773687379 11742276 329251734 979744015 990046032 89373584 603546470 163176021 553209735 333368463 392275064 435242850 531403223 885319854 946434646 875769871 938798402 183199791 314972427 72749144 868771133 630037422 657598845 45172022 440788759 832695563 847606461 222349542 448162523 938436159 944358508 598500454 931571032 619243462 940329990 239446211 289995395 787352561 906653500 850801398 856305913 98928650 949874641 342864323 931916863 870403202 945681546 127391144 683412569 646619906 747110089 258480200 881287647 935975577 944512483 748157521 944361377 25921471 489202285 767068649 842204020 170836272 629003165 845011474 913525634 32495857 482341220 816185830 865496757 201032176 372595362 399785246 471959628 815173254 849974924 238188469 328227868 10874583 301911378 94189338 761118356 746205158 906444986 721112990 929135073 467369248 910539132 843377996 900804470 191421781 689305098 467193495 906006754 688340777 929547870 706505163 872815914 768398971 977974535 678998838 793185381 16236665 194030376 740448527 770361213 45288009 323053437 708494600 795733475 520814610 528162814 250121389 567491379 794008148 957264412 168598713 930975218 451242755 993801764 793063623 967534364 835883790 961728481 855301694 884017588 423103933 542413292 169196750 678368960 703898621 713416268 118237195 682736232 20052641 298237098 506060365 926430521 286573208 827170055 852271120 957862541 501543868 775768472 207865872 598481754 144966003 929375611 800692722 882247628 433057127 525385049 425243647 944127574 454980407 566787097 552981826 673988448 156917130 782311426 461482690 718158632 935598362 936678427 935058648 943290021 699480719 821672478 69602931 508892297 166647890 758187620 791484711 871220171 619680391 713530837 509105369 702512811 448239353 746933585 762921011 887212960 457909596 788582373 138431206 288540497 398437948 415352409 94286645 822275376 216489772 633926247 842553751 959971190 93557143 611941971 170781079 739836535 258234862 854713720 108769009 736464421 54383345 478253127 417246914 797547501 765681730 951147355 171933067 427091935 164152895 731266632 205624708 665212699 980438687 988686566 703593489 924586661 798380816 851575169 586630623 874351696 605150677 811337340 59038571 873473977 669608641 953228767 809161690 968450401 40512782 799650636 439070725 894532519 853412527 891251489 366818549 765762190 804842214 920445908 89130058 561876265 367154660 733044618 868147627 915074378 448363742 491494423 658964227 736330083 421490411 785423231 929474666 997601196 109829803 233983180 258825179 860088584 441899947 621438554 850214214 868348013 438683996 492216423 158370084 921773720 514445154 856287626 477362050 512233591 252756888 643117436 506282076 678756112 717899377 815150971 330894390 456815050 431934071 862057088 445161018 761308418 447255224 687001421 925019301 941949822 514753172 784727471 913521174 953833130 484530757 817394703 584562941 966934589 574235343 590453932 337375449 675248353 922163859 961210019 84350893 664595295 904988790 949496417 443431459 594162582 190272655 595453604 674002975 679051228 957239167 960758806 852921182 965156990 878286557 967568674 864086223 990825547 793058436 902151626 41700052 181830448 526030250 555617208 10406538 448232075 991798724 996345674 486138273 686501281 197525291 998476395 481075363 932172094 273554930 317245606 34985368 322942745 161714347 752392938 181614753 463363521 529603478 560236431 132800166 155406813 966953820 971015834 161678367 562585924 224380286 860620752 543995430 898293317 672040694 721230543 589521167 790356902 156780381 721456193 175904844 834387669 30540064 553030311 277724968 548274065 521655651 698260524 632325837 930147475 408677580 880409487 482548518 508701873 215018494 414816813 440886320 708203513 746281402 854638573 846942131 923211938 957595074 986152400 267435698 520309336 263872009 531621738 801597486 948283511 871227596 959912784 999345413 999385976 337522375 703242446 950314568 975481496 69523422 723791857 834281740 873269412 991563734 993418827 275254735 710575403 107492901 958795426 195612126 269346313 827479459 873299553 142311793 691391945 347975389 715434975 429452357 818837794 467230051 992032991 107668516 208762835 854327312 929685841 842884094 847255054 588589029 685905761 599302209 724640135 186904111 587736636 684816447 904880252 259336545 473206305 353901325 502205876 84058960 944770442 261940067 557403305 532206730 937530455 908101481 940832724 966379413 985496767 769175317 823772879 898979945 899570367 287672482 857399403 226062153 890120572 136873631 287064710 107148558 745330202 389290045 725772821 66284459 328569550 286139763 553599022 630035954 810832693 47614374 203262916 279693703 903800910 451245480 657982833 532546986 808032048 637055027 947801178 988614221 999181500 616150647 701023732 687751888 941727501 970903552 992284030 9410571 16809294 377553610 564909722 91364433 846316191 152174940 667489257 409509964 413204531 717992988 876559570 322657541 824420807 642790116 924909687 712505202 852642756 476975446 848226338 877645124 940366421 2744875 662218059 689726294 723672253 918899304 980764009 961928714 983064371 215494481 396646960 953185095 963858425 617316729 741177848 965766984 978787914 388600636 879450622 64366924 636994205 671060675 749602756 349259914 890284281 585531156 651514392 691974184 820617331 602696393 747353358 610703028 796530797 673713442 682148727 519586574 645176236 839535426 903592619 885225520 912526250 884902450 963931284 324971368 881269773 22259451 207285293 669279387 862671245 171387175 786781939 302112939 688019308 579334197 843682102 835014232 945885693 548938850 872038804 154987321 793605270 531645136 825056400 729325511 813385596 417658303 853668736 296587655 505644093 997363550 999105338 213786717 448995674 870476889 954775107 965565539 974417372 762852882 892720369 329479919 654122105 407659977 578459134 437162040 817082537 811837347 825436775 625819013 855847406 922635009 941909765 667701743 775352322 423111636 484671960 84450279 448791921 735437511 956618744 516435259 630972030 807410685 885215449 566082432 678424022 41544872 153231771 743478478 990974595 550056438 564358834 253778091 722516030 662792475 777135014 322069590 921933645 222430751 233503938 659142227 976361036 141907947 780204526 34019831 551087699 525235825 774456803 510207000 690175296 466253235 921984013 100089439 999040964 575716746 872296068 652618478 847306429 415487641 624883193 486735243 945261531 39717451 100240916 136046181 633206694 199444923 354705386 120676606 484189741 675268766 970253886 552874355 915864310 263717048 392272723 167894432 581644075 524311364 724387591 932215000 934900062 699543195 956160485 478966878 812371908 749420375 987812135 528577574 700809292 869991632 998728309 903521616 964068621 184966000 659393501 123326181 941623448 77410077 206807584 950639459 956354008 912640998 929736462 497514753 499702191 493149297 686875425 599764571 898676557 813711788 923798706 556440260 724198985 47986938 581014229 119663614 311400858 982699911 983414625 270367698 818520239 947769190 960162386 906531537 949241421 779744727 863244226 719528121 772714969 617885150 940245322 372103988 458073624 493203630 744877885 307159072 931438508 586673899 980318406 306506437 737905705 809222565 958185321 976075262 997393021 355617218 928906606 556107588 705373918 496782197 988838481 133236220 985037501 358172699 606823913 448025544 832866706 694376867 895820434 439289647 866178052 687849035 731277254 617844642 757607055 955229351 990555912 303917483 856999243 743437075 918366675 509293909 795943227 881786920 951015535 130074094 860192420 393766685 586660722 3035813 264164091 314794854 885428378 93565822 689344950 783676229 791993633 699650104 827710086 375249705 784324927 842554372 918667449 329889677 708759080 525223481 965959186 380326562 725352029 802296928 976201686 213397361 357110925 460995523 825321318 358294336 867834621 96641908 829250502 829867544 994486153 769764944 937004898 551589331 566122934 869218734 901400195 920399258 955464795 186881975 605020182 788405756 867475123 351989998 673707687 997183725 998580492 925538927 950818572 7327990 300767814 182524564 381278315 390487388 428890924 980446002 995931872 51063730 918199675 509220497 755884185 366683936 738507771 274833300 354416606 750890732 973833114 582665873 852479691 438984351 769380621 767246582 978191678 784970284 901997666 190436720 945980288 965211915 988371340 529695053 624066637 744419390 918856573 237049268 927531805 753269626 925170327 644936566 664373564 290038229 887555598 59797753 809456128 545780351 866583086 741584533 827334025 760091493 967150778 191835482 859612056 832342261 916104534 55565915 572061798 873949319 951723415 332887166 621485467 950470413 975383974 953173583 966185785 904801118 910553281 752527263 934963110 573688015 807510302 649575786 934397037 855067815 973757906 841328112 885035581 65493906 315501748 959078180 990896613 187196024 463397670 548868800 590597494 993132956 994646342 377609576 380654719 662769948 693999747 677453762 704698935 898290627 932765587 466255079 501123499 449828835 889901615 225193101 437098719 407351046 624180113 263734400 663610438 168905749 334846938 734132088 990053167 99340537 671322802 371616943 923439773 809581993 901454671 948062995 997286122 584226522 689156282 339648795 650573091 953209740 957562016 202496897 585993527 318114050 714443271 543174269 629943411 317045789 972158032 521218326 837909659 89566371 847326251 190453843 826363021 467293030 782285920 742564268 814940257 477047135 713841575 604119648 911517300 938476751 993611261 691760965 716610326 47599304 96125401 520779691 694419781 435588200 724226016 326100011 778868027 970044863 994419221 580575689 776833592 301655462 515582021 985793383 991005443 816809231 945335199 711273916 899803567 432780077 832048064 753072971 961336901 929059580 938774672 128054504 826661691 518726305 620444650 407447984 835114146 660670497 901007117 795487971 850785248 797567371 960944807 357388308 862702544 914605988 988036199 937027486 976144070 447073265 867728485 105806445 307343498 815165143 897754268 499548611 871058253 990493506 995394477 640768933 995069858 885697725 941405809 361207702 671682036 151918380 965113524 148897600 855608427 489520398 803260651 244421858 924893033 665457134 842972511 742648460 859660187 678925938 782094596 876301426 923893875 654815164 764809533 303832043 820618272 343416821 817981702 486115267 621662431 369815975 785324879 426113903 917194764 92219237 683993019 534778692 590410728 399048037 436276518 89014906 267299181 411528614 880811185 239259715 516401725 556462146 709628815 740214860 952335383 969438046 980561375 94369884 154255167 148785802 331709710 727805190 729337841 341011367 490966000 735673806 881299978 781920492 908353063 423925273 780032080 920619385 934784720 119141557 208360640 415319088 766982646 303399176 967935059 75554824 971686413 901817161 946365235 620143811 901059378 224832429 877827341 444847496 539084552 898863448 918255775 972808123 994273262 755673450 964790029 860006197 946643640 444683316 754610836 366588907 901574894 747061121 843842985 505671879 548650948 758806859 815518949 716954104 813219448 895137375 967368200 674736756 946570043 31149581 65125653 594888547 723626898 53787567 648323715 331476872 371039451 505135112 945650303 540645107 578781165 258324230 390804389 92774598 265832407 183830638 317929791 823756892 899691712 799249382 847693069 832586167 914230838 513539282 901462199 253980021 384919392 91496449 131032424 984188958 987369068 372177443 377556702 789211166 961633779 92237273 143735491 294613523 583755883 166520424 634264553 875050929 974050983 472768638 941449072 471722345 684663098 581209016 954878726 489874814 955889121 244662294 714614326 577484914 910160445 277297501 303467350 416000903 945126371 129683849 692766323 449497748 860806959 718404529 834354605 427860823 446768816 215551592 813008093 411022222 703584603 979922464 984479253 349718755 957646995 238752195 930629695 461222704 716865094 631806712 862571714 485732096 906224821 177569441 219868029 826711364 840575560 345993732 739787080 718512713 919935234 916724836 944015889 678238476 886504526 684315320 893967768 856494142 924908105 170465835 622778690 288953776 493781700 954212249 986757889 832454427 961063939 2917933 409727810 470726237 591833273 673336976 673481860 978872328 993631030 664480021 766113236 785906084 836273794 457170746 519798564 440444623 880698235 943774046 994334516 352670251 453547530 201748878 746452307 157347458 598431483 792326856 846273750 926811079 995244508 702610765 903863627 458757059 977403508 318055457 788987260 863869407 930951918 406897121 761937896 492517883 694641783 331698995 535340766 277901190 731854972 38537238 165895205 239817732 248617358 122834880 494127116 84501169 167186261 772872994 827024011 643378392 725034896 825121704 850454497 682065964 951601690 510759724 711714676 426199769 719064545 264806959 365374278 664691826 826525108 601546341 614369032 355497516 456389631 775754823 803848730 150923113 756838278 275711218 855347529 512983833 526810314 72984319 528383539 146290260 537010382 143967344 546687713 876642419 931867973 534150724 902240150 118054523 807330393 112613604 893239722 306596749 855436632 624476812 958086608 356809711 656815839 394489242 397871800 472884235 756507729 150943959 640259155 212669215 656427689 120392737 922543091 739149924 852753392 308477753 888505863 424935950 934337095 587781508 770895243 243825842 862440840 411652497 560259835 626486325 633594672 389884194 553731266 356469537 773397490 52679194 441161814 888873601 897731078 408643267 870891706 686619506 845531269 397233548 840532530 615919361 657225087 320349595 742293118 992022547 996642285 647716720 973585314 112643906 724457061 681720346 771887000 301726721 976434548 863174729 872707173 301526978 363848064 139984175 863143519 570040332 775704018 50465000 180147846 682650520 910423101 918727799 938586819 901280385 923548503 727768289 812852804 949933250 971778288 163469929 976728937 155996415 242513308 938652082 964940991 874177304 881930960 730885043 732125069 197715951 503638748 704221885 804695874 453020967 460228808 880872054 928552238 445788133 678830098 107239205 697994084 298566317 448316937 416684677 925227032 694461078 930404843 828910900 864838727 879410854 965031434 109654146 506618184 850484348 890769565 239206944 927790093 369884123 511959501 382067390 838207706 498567297 822514861 749190583 987856000 790257350 792105923 715904982 847612595 721019652 739581481 940931485 973442576 217887153 708404347 338475611 826933867 484829233 531835908 118971490 670803664 618706958 897790801 991041173 992896612 83892084 484705598 235165219 424023132 487161828 687900146 475909333 873677450 235458110 529281759 595917675 768007967 233550165 357841465 958893861 986182711 329091092 718622835 516107998 629078301 393894603 517760868 229199789 332309573 387832823 611598486 222941352 348549946 581434672 650538337 445725961 792076270 639791088 957937636 997164796 998070289 160728546 174072758 882853160 922963697 654510315 686289960 400693117 521854587 339615223 884493263 742461387 813670783 621842202 966557724 957064294 991963461 902784603 968746319 960395922 987088949 172542556 549693566 734863249 904770076 492835827 803679800 409706997 954136207 895863387 948455760 195872895 346029260 548712482 692708065 520595655 528449212 74543562 199651777 247603423 867889876 556426850 631948506 441982051 509674954 36749099 40905975 293155498 781448462 327658335 848669227 368883773 821184405 631134123 805315081 236687359 308575564 917671336 942143885 169393795 726534427 482544365 533056127 439765497 642598547 712101581 832039768 32909507 647201693 740336126 763869645 64242051 822888898 337957143 381994477 484323070 881921887 333374131 405120259 17912742 963443972 221023881 711426884 490428959 953842224 39262508 676672686 728140819 772859792 765473924 903679224 817060368 934552755 211192582 853077405 33578740 251424961 623713749 955985080 782290519 791597902 714129695 934712476 876565602 937651535 557743728 986120248 142500029 498480842 64205906 703082085 232997259 932135646 394405981 867369984 972301082 984061139 639104608 940142421 385247324 849820927 420198915 810683618 759953946 938418626 112396898 670132687 797254093 935860403 794437651 833292568 139758009 499976032 812365283 890294617 294862677 367350108 251767550 361723353 359971862 499939887 553655945 933236769 182702459 385690497 71176665 738603914 811712866 929727530 343045172 669221175 714861679 793202203 748249044 935053003 142140459 279254314 375171629 481799333 801534498 829883029 367102141 765843291 606732083 891327699 208987259 602282827 611832791 872407589 995764386 997228973 919706677 979462790 185529109 657738619 64753095 280466026 68427379 549571401 348942595 643109081 966600209 974372019 31919677 703606794 305174499 966102866 104708938 689185568 644583838 884591720 322570437 540016063 599042698 935086739 364939182 596311527 863699047 878175510 639592742 932360481 236080444 254378447 641691674 962990466 387445450 751920150 903197038 943821057 502964187 648625232 336632829 688503641 942180656 977717986 919225606 963956601 316676383 517626494 345724741 415165080 942503834 989822587 457689885 856684858 29817919 565650649 329464748 830379638 315801063 613368802 251638002 781492401 92924778 97521203 107532451 752900967 470910177 843539615 377654008 863120511 19630236 793670809 217385065 843603567 761860328 825125742 95759223 376688026 60102643 538359375 192607370 351810512 846555571 873112278 186641480 580542048 250017681 712780806 646192285 726536129 269904325 870789450 237091148 412871007 257388320 370287370 460054914 541115635 298611608 375652583 108777541 513598128 219689493 686825275 411119730 807639774 325168895 968369491 640440034 825228018 741173031 951779633 685799972 786408291 759646409 913535309 513592490 971315052 149499407 990210705 722978011 955170697 299086134 707418215 66707269 898713646 484766520 703018647 656250058 930811150 187417073 463401991 625421939 695866312 649210757 758136668 573220085 788324854 619810893 848766378 410263935 869931351 419715641 824299785 566113251 588769736 914095008 926173985 362623651 900943047 306622615 411210795 423012376 824771826 829668643 943892434 859877043 932223770 752602355 937839441 719014258 769672676 861866051 870479839 410145327 915117006 778437133 856736448 301774075 500709615 606082362 969028190 312627803 449145861 911458290 989190627 285989126 765752339 216431015 412544739 144253510 500468296 777768004 839495563 204400975 406582146 492567012 835742166 438214908 955170602 684937156 884980647 366479392 808007711 824579816 996338874 778701203 883026515 574008707 754769794 410936866 746166357 281334928 404106119 29273277 891803021 436082670 567429814 328049750 438688165 638899805 756219060 716772875 780783060 316000089 718806079 173034677 999255355 409232157 828280206 686731134 811782352 619877867 917606806 373878575 706454603 544106819 607817622 334032618 498134605 922396670 981179502 299547521 613395454 267867227 557599526 744021867 909652957 249348709 408268948 764063322 960641811 209086911 797686732 230315321 941184351 977110465 991239111 289254134 667581643 743473119 822911915 758678030 916841574 94471577 428352041 134192410 578628030 574913088 685632257 28240176 391295273 224392199 373840511 650670143 974985194 247584806 509505093 807899983 913129444 832670594 919994947 925007065 952833590 344473920 455505480 260279731 434762854 902581795 959527212 948197739 966961073 803044667 887876553 106070112 532365671 792914399 958481101 64374269 657096781 272372209 330542928 791105136 826738566 848351601 958612974 492894311 699050507 5139442 459260358 808361334 938202520 539551065 630571897 511836144 677524178 161700407 186966118 951214170 959004438 997543870 999309395 705747869 783535990 662863870 854690075 59357218 363195537 136627125 356029891 485947264 865966640 431892515 548271416 158446415 966621476 212711949 538734811 775480422 901633280 836775074 943396049 630948203 936643215 577315862 687883218 347304010 786231815 461561103 940911205 15808201 941651442 544503532 635770943 40127233 292197840 443683959 582989070 558610937 572252790 860428284 923336046 923060802 940052100 849154423 978305057 945749910 966569601 691188979 699503518 926098419 955973991 944151302 964814746 214859246 346782181 869659268 911193185 589942235 775753715 59121715 441675571 536144842 653073259 880122380 912193033 262318254 918051279 982249150 994587924 477504080 866385073 989063375 998100008 511107489 769069328 762512110 873600004 907349193 997415917 475426451 690313440 297311223 373952720 55376104 588096729 39459926 283953610 253165119 267944275 73989844 111582751 446152195 896670538 858360697 953640617 641271791 928738656 647406641 939752267 381542201 672349319 52883803 842157689 850508474 905650343 351326201 618296635 167808272 627881716 885191915 896090742 38702696 135987312 289185821 584387555 546148747 605826505 126850586 341304848 56381667 739778543 408668690 867291610 393398903 590642096 794038060 880286245 296517260 836881285 589793401 726465542 274753305 634740265 711555968 854363352 752535866 950706033 673502227 954436799 587187466 913470459 498505654 522485705 58663635 488228862 466885089 616824824 556370449 828875568 92394468 107072615 523833612 895802834 780332635 960332929 862405742 938793976 854313362 929061833 868274939 958911762 394383209 747919374 891865648 903268066 353897019 527089499 466287541 708731088 95177952 185766049 964425907 983096667 972749822 983766243 731154016 796945039 285266520 952766988 826293568 949920836 90638737 745748338 618029847 848030263 415030325 906961723 704571841 983105677 513206691 519634869 514141429 845158844 585078597 784883727 585713484 827724578 860612118 955135975 776494620 799296057 76133650 360458351 232868793 778880503 871509866 932824836 526645249 982881902 689072118 829563399 661498557 785862549 358183644 508876750 947727277 968535596 883604663 985135730 145058968 988899581 314152200 815110089 795104436 873348913 46856423 386366014 66701289 316977079 321358765 971277026 391075266 601420430 314356288 936281908 438949195 649796201 9886074 902834141 976404302 997494012 804421912 917426369 955543489 961087339 406281553 798820302 605920284 814736122 39772518 306560837 574705521 635043724 732645656 964379951 119706867 676491911 598341369 853043121 87409597 708323765 84258302 973710272 528314189 600278879 992171769 995572698 279515408 392934582 415861795 975427504 93141570 779805803 41650853 591364522 296459656 727468007 47391288 756048953 16086195 85736996 659592721 899896219 88781769 208784031 470361755 718192120 708059427 842964912 766772465 813508920 36373251 303503190 646625487 779159507 369975158 506530228 765106236 893934402 39549643 888243101 796835248 990582131 952731737 971223746 780640408 959848156 14184554 371362823 802237789 853900589 653713282 795516479 741708996 756518842 281654903 853677761 254180291 572755908 753635116 753699873 206275052 248947037 739757388 935975159 412592678 676570911 827556850 889352108 649102577 935698176 712910212 740152874 301016627 493104181 981209523 995154367 877656121 945064458 363865069 515731074 501463214 636724932 36600930 205428592 25290488 388753891 417245066 476605744 252792679 455707442 121118133 780911187 698396221 912437836 605018081 812806110 333517590 591980320 376680012 843931686 398973810 487906562 567805324 747092959 389882206 965902965 263128825 438407294 594374344 948445809 554279650 876529165 183519248 488453977 407442141 508419160 19521854 795021197 792548461 799422580 581472975 585304422 845871501 885114789 410757935 539629642 955716521 971713065 271212972 539364320 605891769 642906175 764212595 985318362 396681979 707930800 476168562 549633694 670381478 675153116 24562608 414695647 447460288 858516462 228713558 404700943 874988982 927271798 706567988 859484905 386001701 722714198 80973580 382030653 256285042 306542852 637427363 790490666 312911070 459254550 514590819 900855867 343575849 589916691 800905634 907680117 397454231 771297105 173300383 419733520 688837090 840225635 554022992 746592041 55536484 669833563 227587607 254362271 475322025 854999960 965893347 991425527 481661683 537097444 654637084 864300642 220382914 301604417 218371367 502118973 765545933 882253737 401252249 602536884 796474214 992582465 117611500 228111936 519502334 790179401 553825817 934544039 645466616 803875281 162001986 914227104 532591575 869857429 434520990 539577001 374202082 745433507 987153692 989652342 193911392 240581658 854979234 871495020 742776405 922781143 917479376 939739401 215574139 386129688 588597805 857371491 125956898 705176009 332810972 628697377 832648682 953819438 859243642 869841935 756235740 953645992 115506622 682169293 32871828 791419340 992955290 993793936 781772892 906349040 559218607 910071548 210645044 495852870 700222466 910049456 137671868 216611907 325622649 743811909 878554254 970938104 80676100 765216533 483442564 553782025 822514395 920351252 324103238 884014072 333456099 843925700 377094391 679765766 368777373 633144918 846892584 934734112 100614182 495842481 812811764 816077805 317343438 785740711 159498499 375336404 362317709 755317530 434390594 483069574 664649450 892424891 654023963 691630297 29684688 847512204 390347658 850807211 362530094 583561478 209785498 822455843 296340743 853511639 989138852 999080122 751719200 757566173 846830301 873483835 863538121 869634300 758367749 781245712 101227410 491238635 274091889 652076703 560766392 610839922 87920351 774907454 332803153 956707426 291495960 586103191 976820064 983387590 990732092 996125583 393398499 444755788 701804608 868589456 484867371 688418792 500676472 591041157 775737711 787430248 268256435 875070289 510645169 747534629 594920010 697992856 596151823 600067901 1204562 532373353 539824774 771838604 318334450 845159278 72859707 75384208 921906950 971823871 358549784 772830759 391153030 443875909 943673688 986533948 303614210 331554814 196267022 273433674 499015674 722572171 181656482 844306870 65447221 646185146 465849153 483372118 812536126 815896533 25290266 234141606 54974745 448706848 103544671 610594821 171152319 626004096 475341226 696323237 839153245 953238772 273758151 377176741 385101598 428983166 992943676 997980952 103256539 299931658 241155022 723087232 271803921 982149957 126899701 796671588 147696334 791537138 337985642 440245006 720898923 844349704 664291473 876089409 972319916 992346305 282333392 659983469 380372538 452640280 360675650 576999786 812159119 859748211 948774117 989425095 352722066 610342011 253288489 271966099 104005844 778085069 628060002 710907321 253076528 597335930 412241054 889435349 349377159 538637547 410038975 833775976 16906839 484847237 237143805 326496551 444552391 507581857 415660317 928773438 286634311 832253416 538039562 742920299 355734724 827346090 452812709 533499294 319359430 978446179 755762545 995263016 315852171 868797225 720210534 796010253 269133508 703211202 699854950 889583178 998995643 999124986 970795816 971769169 510606428 579549106 400178155 463517795 266639995 642189391 333922648 855600093 91557417 844368995 116532225 249838110 935857012 957865897 731959409 749009061 230424573 302519090 540101840 668629817 220520057 875015518 673369176 852340229 70314648 364310193 748970770 874069355 666118890 889329206 160849783 540591891 181349821 292043367 705910659 788695482 523979036 950730150 883308934 986331097 937216939 939600665 55456237 189042284 521870248 909648986 153282615 620273611 499894203 621418495 158095526 446534801 530346952 711554772 954986328 996025949 100074186 589956993 925215760 939368678 50336988 195212664 510775204 912230313 214435882 588862760 893276196 943003215 971424617 976424003 792125620 846132478 961685704 996558402 795907354 909909719 791570178 829531321 189276694 716243427 285484286 842911784 269562807 908915635 372726547 402320410 688850931 800180152 169035725 675507738 162962196 265169525 899913397 943179289 701120786 874928523 899067721 968779397 876757101 894803596 338795324 625008512 641010355 754469978 877133680 955673580 87946178 350148491 463010178 879360102 543231661 738392631 144800512 773730649 688580416 732410238 6640011 121773351 381455775 588028695 45038423 393358824 234935400 701884180 628460703 946123233 159376659 935602995 983167451 985275501 575420546 701179661 766273479 927880573 775056936 968542541 654784151 705986132 967569281 983364431 476185795 558509635 251490078 716337201 52771807 869369852 32095664 195983655 945834032 951361595 228191133 266429398 949771729 962065428 141280892 847735828 963519599 997526402 146952149 159605265 731201791 834104339 474247092 853886218 192041216 837645132 445867102 974235272 554917730 866425088 473378573 968608463 284637041 583465705 847989230 873005596 453028836 775097771 307475569 490910312 820232098 910742755 856000365 944113221 131036578 233192741 196097227 785402649 116820713 536887950 345950381 565166479 676856703 984442745 175485282 525629988 217398686 925567871 773588457 941257531 152455829 751126915 388361475 762843439 672468815 987330090 246771983 786312540 5458816 676087564 880530802 944610913 574427660 592854054 8039126 819604817 8392813 862683707 526465135 859038705 821778497 850555879 426649968 572813143 322644388 766163821 171055559 766029493 918706677 982980864 317937104 866625099 863201725 927919901 70069060 467546365 401640851 571663758 774729234 809368760 593543605 605111834 910779650 951477568 942266388 994989084 571026669 966749448 207211719 359363903 129084601 975392889 883507512 914499200 15952661 552929804 39002571 52165986 758342951 809029863 672911732 752410993 16922653 306411544 675356482 755509535 188394480 311152935 309382664 411282839 21794812 407981971 312049126 538584964 378028986 577753292 211826966 298311427 244053443 414052268 277597576 879639203 554358762 879421975 946071676 986524134 674769458 832309917 923492369 974977600 2396028 298600468 889904747 928363721 561647780 833814932 25874138 66690550 545299539 719009404 206940868 860788507 258355859 855231195 287401938 704418700 305038419 864270610 256851184 877190773 263194096 648482873 750832416 766623375 104220176 308466084 122690842 620590555 248894079 259466367 915848948 996251512 846761683 882885056 744145023 796356990 565581881 897135365 710477111 877066895 527690208 754042202 678445946 893140840 598426371 625625404 846237058 873476540 560450583 594628994 331606260 682179616 459907994 884044372 342444108 866525583 228101067 898503884 493421769 859993746 304221935 784572597 423664018 639667585 625543762 665644071 446841001 767518244 575447321 766967150 309645114 708582011 199102330 565631956 121654397 769463125 471753246 722927257 625740485 898543474 3804053 306938717 447200464 818329112 826769163 901426581 875482956 962596883 227339558 989120773 45913755 56251677 186360003 620933067 500303647 847713830 709157472 970062301 156468342 318704195 908691245 981412062 258276397 306449234 587864603 907511884 244711122 874109103 620351683 883775742 100160270 584690422 894497884 948804316 796334774 915478748 36356718 655688953 405430877 677841691 439146636 659910915 170254285 497599724 2496677 524020383 713184077 860424887 293006726 313959006 659670287 705829469 834296945 921243806 509808954 753882566 393953595 772597839 320574172 769460612 973098382 991507016 193895732 332177641 915733547 944476439 301671571 913460411 390349255 699989028 480670697 582040071 490885480 519775394 501104454 673372937 524337061 605026036 34908819 69276600 420468407 477099648 526214468 797618558 96795688 292068282 981316752 984583040 768442363 791042495 76697092 289313940 903028286 966398145 37796431 442991309 691056106 772436311 254764098 864110413 454557449 965700633 267251685 396375709 460561380 692735802 221455613 475507798 757368579 886272598 48860045 117519863 292026774 932612393 945786650 991283385 416384 371416494 239523614 310397547 9599204 484776732 707189562 979394768 546639471 695200404 289817859 444862905 236110412 303814711 152875297 361547550 183818403 771063982 487693015 638898491 291556442 527857158 172117626 766628504 723253133 998188577 372579349 753400844 543107139 795553658 25600593 923781666 140962225 312690751 586678521 595464192 605783869 747067428 50448050 350548411 581251988 838711417 735801381 938048940 974801032 975625443 527260400 670970517 914807648 995206202 893181227 992482844 297493202 542552506 297017461 481869165 15555435 48834370 624440474 756247043 106436686 389740496 626525402 702739156 670854340 786865459 510345327 663248564 747182015 891865531 838694996 864798272 493310137 959055064 151204957 397030662 194572566 931516866 518297617 697980521 916707178 932491952 976945624 985064511 912442642 948089411 339343419 490727477 293783667 547131617 895339139 976320600 511396283 619167250 649133012 824888990 26767867 45819088 864206922 907049110 918606676 982309406 894294051 984956385 934737897 959331328 502505044 528341315 433807077 492898630 192220047 550331431 249186483 709783725 424923833 830322143 10257635 447155942 860150836 976158803 743668267 852199255 517513356 980904386 646079903 954674067 426985727 626584219 540673032 571046150 812351513 919406203 48569277 440063608 242657994 984011143 595922719 628480222 663902710 752489838 40266593 886520914 422792419 752430090 856713422 922202998 90537933 570017379 975579920 995254897 933463307 969379045 557487931 665689431 277735921 993491369 761773125 950307175 935427968 937990378 634260548 799729024 467212763 861538573 494332634 840812882 511695764 986076866 224373813 677982164 501872336 696917303 587307808 971958253 455567886 925997773 237146268 361924533 703025907 771662026 551792635 850679690 7998516 25693385 932471617 958630414 420344519 504173779 727054382 859353430 918030755 938828194 393915729 876218218 87818996 917890347 451780474 654287129 163676374 279224684 873559571 959143375 563114776 945325503 402449746 705899552 900411785 974749621 527066132 682661137 696129372 918350520 81328288 336916967 618275376 874012305 861920035 968809371 888812649 979642127 556619278 733083681 931255307 994978626 944003361 965581450 121833919 181956051 690171979 984930850 348954541 897227738 740175013 801684487 46148774 951696403 338820297 912366819 344239601 925383934 709511908 997065018 437453150 828399986 534852063 834310018 597491226 849845795 941386877 983561186 988639812 989827247 95020632 210845372 637321808 989711268 529760482 689364662 991205442 991407503 74057905 362337506 604923630 898814124 19780618 943579807 190170649 612554964 542227162 725953253 761924696 780187144 51310402 550552381 882168314 919981358 55806172 298211444 181754924 712405072 664324232 881458074 58383317 225806731 888974966 904711131 119854467 647669293 416222100 726235106 314110193 782901826 322690482 403853500 269094495 448938340 563580120 837671686 539455628 796475957 200010584 378936029 463309817 914324498 412861532 684909291 812545796 939623824 142460943 590658679 350757280 837652241 462960062 912527382 833702822 952334473 897823751 959493405 222785032 658118237 110183690 159734844 457203763 921095047 537275598 644319399 711810649 798223001 715085705 969171136 10779346 974350978 628417732 898762610 829794563 967207858 737488503 890844972 400596597 839655552 196788028 606945791 635933230 875433929 966589083 998208667 137096795 443475643 140790298 748036511 217723563 402580705 723494830 823233817 222136484 355205384 179266998 790999892 967374756 997074322 482888669 581116265 910433582 933883654 752682046 983312357 114378671 773707656 842884521 860059781 360656465 452117612 552374254 947923503 904365477 923411180 606280297 697862103 869700000 976563214 493501275 816566335 148064419 213102087 434182212 671584978 680534895 878680618 280635679 460204235 729694100 761952146 455321762 964016936 216970513 559134041 821219037 839632559 943004081 951492218 446096490 462253818 188425010 384454790 229418764 441892577 126878466 662207198 724155274 782874142 848578830 879251043 966127527 985111965 730329776 869623580 782188650 855589147 735061685 777906529 654236312 913411960 828423971 855432705 386589098 752348672 140911769 337464329 576098738 809799061 786076411 939967431 193916366 279098964 491249535 746362313 915590290 978143191 697114372 931295520 125136574 474375693 216711020 271675700 121750494 439016556 111596459 233527904 796568558 845810919 984133794 997799177 421079185 964230028 880584011 906134958 251825866 746101129 130093613 429939289 740018303 807962493 701746107 799770084 988869891 992663077 871467049 964013871 587563534 987808943 586445632 818059072 583212083 920316406 540987789 568801221 242605865 920882903 654077433 957534344 975115421 982429557 205791094 443044818 501800532 803167040 597686098 745659319 664008344 849034147 31763147 338553967 376057219 925642659 819416454 995217664 753289464 930658189 727335922 987911529 692635070 970538760 696812089 901548763 499193698 550689536 795150398 971945545 893400627 909441553 416005769 581231037 924886742 945830325 60276558 379373051 955099934 995953408 835006280 992828590 711198254 853064314 605105538 972376314 339886090 452702708 67538072 654235573 413934671 887239368 647538735 719550278 288769282 610103926 352928945 590514667 284578680 527194147 774968120 829080166 488091405 727275752 710090502 813060648 723657232 893740633 714311758 847523630 622700390 785922541 417456336 514363719 497834402 918798580 792177605 902543405 649763497 692740300 754657396 789940052 863164495 875033327 793853340 802914124 834906536 907720716 466520248 984453535 3420311 708683007 672900810 901097201 372822417 543019013 755539595 858235391 889279463 928138128 616169573 683566332 610591684 940790780 492278886 578304437 802698530 900729919 716072428 809523867 919762195 956603807 34170478 895432604 426902493 756233972 319648171 997787674 163505517 869566672 319352054 545964542 28714222 108565735 777762298 862902538 620145085 709170058 786872909 828258527 6421567 532752898 623028183 711875998 836069655 883983707 485311749 849606646 177753840 856123740 668793333 759708478 465055825 515947265 724869286 857155721 441650430 773515065 2206134 77689446 801455028 959829030 761985317 829428124 447339866 922350298 872356650 993155143 569166929 846187628 200777888 402312041 772323996 772353679 567135038 996587383 624051496 697218321 76195840 286038934 291323069 506607596 985039375 990345502 933627761 963923289 851024579 993763640 262770219 996610929 979652230 992010017 391888156 866263912 359759034 594349203 214122503 955708236 343578174 477292770 131429038 440334641 457613509 753771254 876810280 938131156 188241330 764820416 42130390 705090425 382661419 822390143 573244088 828685126 106936306 113669969 631395780 807701983 114681585 509803750 302996657 757293786 331105727 800968267 306717776 359120505 350073209 359804001 200331200 265562736 56482831 949459795 578976686 791297204 390464797 635101683 74565963 467109897 779517576 830821162 648260106 996871620 445082212 550690130 950541663 956655638 437602092 783570434 76281460 251227507 442809264 833282215 910141580 971308332 507559450 553261789 84955514 627003507 460232250 743980148 790600710 930351567 854350992 868414775 354739506 600685275 271386584 749174039 546434783 896456487 85763190 694097914 387020523 803691643 381022707 946098133 651432287 661807111 821947363 909208759 87404297 376711340 334338305 457331444 462108300 504856598 724018423 988408592 330793381 407390149 497650550 503184599 727495518 737344374 981722521 982445839 619498232 945703750 827893678 972049686 536115843 978457143 984489836 987138410 649275839 843343864 615947192 855084717 215773328 591973366 768834524 824574131 941364322 981066840 721731702 890503921 281516111 490799687 47734349 662526146 269201687 389919671 40354038 148625225 646210413 944764565 624961081 661189098 881812677 902139833 998393897 999037551 694980829 899305787 749883234 872742153 715992760 934746469 45909939 240960534 54744291 970381443 995338386 996836727 618522501 667038625 154455742 520446222 76305536 291800017 683389051 834169121 747820584 812912015 257390371 398722853 205947242 755931542 965529454 973770782 173860751 471010215 363635943 373539990 742148905 986287209 368439952 428830027 575002129 880467538 131095217 793489482 550837226 648621385 180880246 240759928 710802651 920748018 608693655 861736118 38373699 617780219 871363412 925674590 831897923 961349266 136609684 374073005 284242354 439656049 913483935 948681149 495184360 963286410 840186507 962830527 884585168 952917747 843203725 844190078 217063231 710005036 25000108 487048865 17222839 262329770 166866518 464269099 931167793 970511285 873245539 889687262 159203793 562288483 847925420 888411746 194542891 704133547 720407164 770158061 43454498 417609855 438006295 951045957 721357218 902464853 113034323 225997982 847822594 877654791 806135735 830096909 679951912 744964929 436863265 582701124 457969350 517322331 563642866 963531176 628157349 958261668 844737841 954373924 164334598 992670999 428924341 716112493 596934488 909539652 856745890 883902699 255598004 896424729 957238694 961929235 185747607 731616038 260574984 465806986 665876345 785181690 373236410 469374667 988984174 998466471 754416844 798421744 989471512 997677549 335321473 508391041 468213014 492860067 966889043 991695329 809989347 986964655 417597538 731680793 257410381 583182801 981526499 996258464 181404820 836821317 258617728 736388663 642772868 921440378 125955986 372641599 304293414 730650144 529964831 952983033 842394489 913157605 683493168 691397750 735784220 914918541 395267389 607630982 361477871 756952261 479590897 643962982 63314681 278954893 633190152 642358196 416581831 699530000 489913445 850254726 635230496 886798856 542233614 916352778 131907901 621226071 169477152 874841813 273954925 523275440 302787544 935508073 615400668 957599583 206065884 949704907 510348305 574096206 947674244 967121664 469729189 987690298 878168773 880145019 296631355 602141413 137666914 311303649 465336048 766811260 801121528 963390094 773530483 842910059 99178371 967504692 568375981 921635040 286705873 957288686 16529052 33211489 759370650 969959307 993852035 999349132 377769697 499355175 552286511 849698118 687267922 895315148 282675582 945967174 18030846 893918049 232548463 602585169 479660856 765085261 217744133 348563689 263352664 661637308 729280592 954816598 664683212 690090987 823973529 951067608 593258086 717784725 101172172 419245884 734745014 997985695 745999647 943791471 159932487 581961420 739665243 829463003 302459414 590998180 828767176 838914816 608680216 786248970 563651447 572238228 970400246 974353761 655616603 942381759 421219192 888606284 225895672 290312951 432376583 617751816 50363362 312968912 76883982 764306352 302728443 329926985 113106340 893478510 194100468 658929418 341935270 885766333 728514537 762863638 201226103 921564495 270989704 898682267 985348978 995363301 611827374 724435135 57860384 295274566 905498740 909739096 354199632 668838203 601926221 794301912 732689892 895329257 453347052 978734561 742921168 927906677 20357180 901227721 781856404 915626429 373012309 518973503 466513712 614466536 634969742 807388924 334520018 384019922 659810048 767047589 682895206 880805835 499748379 910773283 360011986 480657406 669172839 766269949 492001991 908087641 416756156 707671144 801863612 813018526 370368523 928571810 696008320 838894917 725957031 889696940 759444645 804041514 886026182 954851031 987811423 993305303 446203264 664577450 835714009 986460412 734779307 789443239 181572165 231888891 258183212 712953697 334703110 604261458 986812962 989785081 647463096 827934705 211677479 421708677 584639804 741355930 247988411 882649628 443877147 890496290 656325668 726291979 821131391 903610216 669991264 753191810 754233870 770422880 694927297 794313315 63808495 741218040 599298750 823331855 472134459 802524611 284122933 580838389 295253882 768026659 324029850 602191050 942571761 949674483 950317330 964692257 15657143 307041348 399304095 582278479 546323289 773804152 804414890 897942243 597275837 798040670 708997191 905561920 24189351 992753649 516208397 722220883 783569355 849263717 349519365 448425390 334085915 741773037 448348423 535516528 139052325 664923484 630174192 958503045 70901997 520758179 908624506 909294125 314211293 343810774 300754949 626125804 111629693 947374709 69844514 938629191 976717446 992798309 167035958 392709098 511037215 833137811 377669766 735389107 808321793 901738183 684040639 744603997 187217864 590912419 298707404 693194269 950255733 985939445 871897126 927766457 259492059 749646689 219180729 638317595 168464061 565865070 852316222 915731112 281221117 746676684 665670200 989828174 244986580 843017792 53345850 94091684 575010038 943504647 877146337 896111827 901654017 944632119 400602695 404525376 180720369 977091735 711477147 950788301 106466037 221739098 247544714 340417935 79761207 759098578 782491715 829747998 758096178 959752201 339205287 619290967 595589139 793080374 15798939 785282242 865280392 952100927 865288346 905415272 670822454 996881228 282859277 656748491 884810276 962306773 460258471 987314904 905195087 910527688 174769478 731839668 104735641 659235511 759296489 836006868 170427934 508672462 943553047 978286807 617420793 712646978 72311774 75904535 720843534 868827377 920468631 995079862 2595586 85371765 309066741 784070962 380151819 949597867 181978908 648743576 300950480 908070258 887399776 943892148 814823648 935525490 630853547 730199552 739203129 812949223 678504057 960515101 415931340 950405135 622534217 860050931 112588310 118881966 759203961 971477259 891810346 912758590 505857903 702525824 846524090 889057783 781035616 790793106 102241210 794848257 929730818 957392404 939062435 956620322 786138538 850176203 405168031 695546646 47296301 776547411 497263203 923917667 843949272 995563345 906493966 951240736 139665820 389932365 16249960 42864495 781593465 951590276 35170548 488146075 459814785 918152714 528270269 919184743 331533930 747569536 612096361 693601348 841397264 899150120 616810890 840226962 371914604 984606820 782806574 807878614 351235527 920867950 404241456 684518761 507627004 693162614 350339353 933978329 23116367 971768846 116151760 212284617 719525187 911731865 116547447 493516723 429478857 656572270 996143198 997652199 169662489 704842149 788579423 830479429 310044614 314782426 123855877 811707112 424060888 711352018 823484649 938481035 118171473 916835138 899981898 990601292 202779960 902911289 418985250 649048144 115197579 256442913 471109567 789446439 587914888 666195036 976202735 983825732 497266676 668981866 610927555 821030282 89874354 450584472 721046761 840888359 950724009 997787554 301011530 884496027 377345005 996024879 171961182 377200222 183570898 395283326 892372937 935440017 256436611 389147652 289978290 513069693 911732751 931664938 868612504 948906251 708615477 741963169 997467410 998493598 947749207 956722161 713333233 912006709 991824881 998169329 755870839 874410165 747173017 895553799 222358893 895370001 457870784 859530997 924027561 938372818 892948569 935567895 405240861 584149760 995848129 996321183 846398253 854317333 768200707 883511798 631109505 873531899 965703430 966694877 123202264 541702534 971288886 984569562 697719849 805319820 160596210 923174888 535906897 537220301 513553441 780842554 23146974 962049891 74198056 875006446 821725156 844207113 275842184 642523647 10563307 993882211 110858509 119572849 217538612 245826666 418569062 881765101 132431946 957850447 831377820 900824774 900283322 915473530 885875370 935013707 261297944 475331969 166337478 400212751 907526958 977422375 861038689 918515326 516027732 658332585 386485051 912443842 32806202 57559371 355591204 601361230 49768519 82318208 316403209 802320877 348968414 856484906 994111626 994532453 774974990 981049315 119342201 176300818 437871929 793045659 806889730 969630351 483688301 561880988 412072391 436465709 132574527 696775263 321873363 388214416 71096812 546718032 617488542 802491493 529119941 910657927 348170580 877257673 773067081 827046915 19757142 866869292 572126776 732926775 907351017 910087933 686460161 752553188 730972687 977340877 711588444 971525334 783921261 938356568 945708600 995443619 135874360 135975548 281280899 739671437 979663625 980263740 854739269 890178209 114610806 410018398 875827827 891178015 957946573 970560317 445681877 853067765 425108049 494805593 158077490 501967853 555966255 709209033 409094708 913481644 265508536 797526855 622545223 655169066 142955099 280962344 275160616 276479738 144489269 774935087 292275503 417013871 247540273 859030511 937255486 964607434 577532805 584017822 267967879 279975024 372467649 499048055 593809815 726354957 920800437 947992955 246834554 626618007 583195104 631694259 821378127 840132644 682191256 810176538 274832147 968834615 192763791 883112449 397912628 779793061 84870196 718731717 481425670 976752594 482195497 815848429 365264212 719731300 39049864 797148704 757924208 994393307 496020240 607802038 247729286 890779140 886678862 887852396 685674236 912045988 870857855 890104264 783876707 981931966 480619695 833324918 516520274 585821938 575942739 760454032 530614054 642814382 969856011 975458133 806557567 879433693 903148390 957117689 690229440 935807113 972891045 983400017 773085517 876409766 679176029 895383995 895199863 904353773 319858016 616115103 949330805 950121441 962733334 967149354 796376285 953249823 869701627 957519985 391271538 639470054 926717139 941371867 643549565 685600396 990561646 992135796 426228735 689357417 148600768 735251350 933152513 978662934 152357137 339649533 218765114 633970345 773232537 813837244 942378257 978718621 568366246 697120771 326829701 596878018 472757248 862272723 91889793 986131229 958073209 984351576 753613800 770184283 832669940 862744083 426924510 726428893 28394689 395096736 976805468 982029171 135252126 566455719 551352192 928766474 371741584 397657127 815931634 840237536 715458515 777267557 599531382 876891200 457322721 951769756 846763261 887876790 870265230 898678376 150756870 254812629 532928579 778109010 812752620 884978931 223888185 975758737 230486303 384371184 830212407 995651976 502512248 771390077 117244875 275345100 784211099 937716290 321256107 385237786 962919682 999099619 926168666 974016629 250218035 481387445 106774340 406844759 868375288 974879466 765572856 921979108 519513846 574224860 932297594 950261932 151796998 348088511 610892666 693393069 604053231 934103724 754940330 861138911 467381940 637136167 696055734 762505362 647363509 739571336 492828998 769038580 944570136 966424622 559006342 960504984 625953613 883458594 656863052 730743797 41633920 914301437 707325787 737936426 356176872 847732186 763184268 847034363 810844314 879827809 353338955 825621714 901571856 953889829 990394479 995113622 802959651 898868226 651185147 966284723 94421315 842194683 962976957 984200311 900229577 986867836 438028334 843562811 688189436 974252471 599370919 606966320 833158662 928869430 41915576 257593437 939956708 984639086 768910978 970649467 793828421 913439695 894622036 987031568 291865665 478879965 15274506 986056182 224580294 869685668 11447635 586576175 895282888 956921787 319837747 598260471 951746765 986137999 772176499 807294780 200632299 436913524 278596262 335624090 935414262 999351739 785384650 882728596 316964386 851731095 551764500 774564861 29106429 222705794 801633455 906937693 426512030 803123433 371705305 892390111 617492029 698974390 549802319 905839836 109392874 284970678 205443372 679992708 910960094 953086607 816000020 846501601 326048088 954137234 350596669 505666266 745694344 797199809 364844769 414831059 399890342 704031018 800494771 883008752 85606612 310586059 738121755 927264420 913852113 978675514 587722139 601378169 681032303 799570122 807282975 873958885 180094017 418880372 727732813 742146436 570735701 906016954 951360820 977902177 503175321 789172752 579367067 874524318 57815870 781282744 148852786 432214064 48553685 376285314 513285292 859972110 550384945 556322026 347079038 978698185 500369859 663921928 367603877 973991075 949875939 968358500 969500326 977025076 122095320 670335476 157347575 913468922 329660685 711739781 209956503 882669910 967386004 971368783 421215813 744407522 627819010 633942164 806695183 808540043 382901106 726168647 328906483 813139118 776018208 865519717 834007886 993409087 754808128 992600709 614740288 838049063 929104139 929798083 806092145 820025252 518233160 566149922 463244132 579217641 352964331 651446956 10355426 797108777 318876032 748031125 986679005 994471854 553236329 778615677 319441828 811003330 573202058 649495216 232195118 408018709 706195234 945869642 708566747 978446402 62356346 770973967 33680593 776347788 523023133 661093113 18245581 684296222 290058064 359475172 859440180 929158200 802702103 968729794 957615183 968120534 255241243 395056468 446553005 478981225 664004764 780200666 160236703 412280321 623966975 828812023 803623930 834694489 371217183 991340360 157306673 183379763 481212194 700676080 140684979 869080618 568777364 824290991 627251853 826068703 969166 42144890 740199837 893375026 874348789 947145767 586406517 826762683 238903970 810573695 562456695 598392105 173257269 935550071 291487290 974023411 31946803 243739215 444251969 758799261 676772170 814008268 298497097 846614220 257975970 566525138 136444803 988901764 722292644 756989970 857637895 864036202 301906718 911233548 435147385 980033555 749310858 950447399 349549611 549960663 224032845 610095371 479579322 898132560 537923906 875390168 983843840 984369986 399055851 818204840 415389800 918901270 827056908 972661119 368946580 978500219 988778391 993281560 265478348 519813261 762532394 896207339 351748918 547597971 370216359 603002463 217431483 642795706 677026220 851727350 751768422 848638058 866634961 876724367 815799029 920367184 169830265 268579485 353736291 371452363 24317858 645350286 709778217 788473734 262519317 291633318 260221811 927627072 785404620 862874536 326642308 837264933 32129141 241462389 858623663 972727244 304766749 479698962 948712574 960910021 700206017 934427575 464789851 741950905 296867593 811876035 13330946 641889696 360967745 966232167 457430213 981183196 944420557 958176408 252795348 908359135 136362724 733604132 501762433 523280343 571033301 938325081 611062747 978496666 176903912 217680511 497306640 660460133 33673454 161881240 824014137 861733636 379228051 584821452 108013077 255625141 538918981 896294753 687016411 880867081 691153296 708234657 114167157 138050488 848598308 985159326 645536440 727584733 991603688 993887888 630745849 876584671 733797374 985749587 46281462 269192836 719074462 979706547 280329282 374203944 416111673 736589464 468390694 651351322 343087817 608852414 520318877 853656275 954744884 982531328 851796353 943012052 725745639 940945618 314804614 454276888 67394425 87297088 445602535 567594798 285000446 907261493 351760992 352728292 361728458 511059547 899191050 915743349 890504888 951400092 22041682 837345984 614827485 941304430 730157524 907132583 597618983 811445146 867580124 901748163 85330480 708257316 75776914 763957543 596527864 802417510 953208390 987277028 324400206 791279187 316969861 623624662 519342309 706686301 518860208 640529120 351285998 456172623 278289616 988963496 818918177 986257920 552699607 927274802 786942663 988425636 914866951 994300028 2046507 300912052 94746526 611202314 983452611 987544849 156163454 593848839 974091806 995780002 926880439 932407425 459783016 874624178 315581536 883850138 593106377 717820757 323643130 464700474 979886131 997215507 653189691 988026695 726627002 881201756 200395414 497146654 430516916 511767798 623917674 899162178 621023447 973884400 920422895 948600174 911155909 984859156 214182728 355022478 635303784 856625692 657595898 877604996 391682164 719015415 504013831 528019636 700378711 862344357 495383964 817680011 542692822 965371614 416114636 514872116 786834416 807000180 367651254 654366989 533083498 956804273 520214562 885335247 239992405 261268663 398668579 799087049 46488354 55848833 46498115 491910059 227557517 347512102 674332645 948882877 931971198 984139387 617725882 727698016 237323124 860112573 184309306 717254227 936756939 994214740 909115337 993506002 387852725 403741405 579284995 643575494 887886745 917460917 418379422 550397490 688352179 881262358 538957210 920209322 550966426 784766557 821408324 915000013 110754157 911349730 284912794 674507147 968062936 986860527 906828578 925619783 69990496 562277474 332612671 811813352 153855043 964729887 644673240 973470724 590422384 739411752 407796114 495158132 76414657 578327868 303666675 747660775 406091595 839161102 127483250 661248413 984239960 991081169 834846235 949573577 234399889 342247320 611286020 748834969 727722402 789704990 780550539 792406730 249448958 312236364 639411570 915419289 307509290 995069826 504682287 585807909 763013874 926433980 435480692 448741798 660277434 740843493 119575940 591738460 660236313 879639600 544905466 910946018 188564174 448721228 794553637 993053079 303086528 825640419 95237281 270218889 866913356 976369622 426873676 877497463 725452328 924757136 389111867 743243200 692645585 875731549 985510342 994391909 421691477 858401602 321943254 445914814 817095316 849326803 374812444 621517020 836351517 862477323 450317747 615989085 994990007 998147308 693178811 908174196 279648238 749932612 829107683 913685602 227369658 407874771 648099783 781866747 535541610 971046455 66580674 292777932 623036981 998879037 298378855 744991909 325748415 798126595 116604238 487619269 372380963 582469836 372322327 775902859 863758673 913349468 808241892 945596052 318692805 719292851 893981258 904601444 541571698 845875803 501701658 854906295 695274510 801567099 82195716 535386701 430292462 807844762 47437234 144720882 19640216 863134415 754402532 906287281 6156659 537163643 299239962 519720863 30461003 200513925 326780946 665976789 907245859 937835324 894777425 980542084 245127518 305293821 653876345 852470906 792505253 911588340 191730701 306501715 149857212 177117638 114015238 947041662 758663874 852594257 514155063 630831852 482789794 841542149 254056775 516629977 790858093 820243804 416536535 735260603 742697239 803310022 271549553 905114669 64621944 336344640 76608098 694191981 730142280 987359349 508632742 792761600 682182390 863774741 182403527 863677017 989832964 991405850 785185934 954110787 760685779 935580741 478236559 752887194 609614554 881455975 912625148 949244752 739688574 924975260 167455675 749118466 192292112 537683775 574000040 791359086 173061184 907464497 116747465 983865912 208044168 359783286 185491812 414062987 657154232 692210089 847816807 909651193 686163780 852898301 723110231 843844905 409934432 642140916 961102826 977594913 130687576 631914552 964491634 975633902 220955705 562666258 461159139 484897381 277675709 442156002 192760863 698007990 600863867 820739853 14688175 217296361 872888487 977500976 751302953 860092258 320438592 532759363 764810555 890205842 800710066 958172699 308479325 776824437 651802752 848212934 894602339 944663623 304704986 661444536 987623065 992663903 884895811 886668435 983591206 985328042 828516313 958642445 467814396 881353320 251161891 350580044 765429223 801767064 135028717 847806867 757460436 956906292 285133127 317414891 788653692 936133951 616353965 632212712 847471813 892547484 880266351 946875613 674907344 674911967 872654319 954823088 451825636 496463740 322897492 713355075 547009690 758448113 427265898 878897043 895108322 972300136 223094590 366831374 197064393 737159413 422994808 511392549 595734503 776712153 87557839 428929959 315729741 622138707 232288478 409063490 986823558 988103646 458958309 661169367 211349441 668713236 326554881 943960710 703345863 820010874 147020240 415814885 844688134 977329110 183778560 988754755 654942670 780797911 353704703 913541259 810426315 886514605 206160434 672398012 514164370 685623262 627279877 676909867 410319385 439612747 638736314 774121421 392573654 925264926 254843792 727689793 123223868 157782294 677628721 914573567 803734655 870062795 427886158 478117902 596820025 887662157 886355180 991628643 726638558 752161470 201893570 303842197 571793859 676236101 864155396 954268550 421550836 426446856 642414087 872507822 360674739 912280161 653307906 877809226 456473178 622529419 661146164 901129540 291249015 399219088 34056598 63047498 108515598 362772749 796495469 824884987 684834369 789542824 82500739 672953050 245664960 596609269 334207111 427103595 349968571 399727387 578263677 943885373 248346404 441971334 613770185 959277717 952731918 982433594 995317377 997181491 958936622 996395918 810419604 924575098 237160760 770130813 180257931 278018551 544282855 982825351 474471874 778756220 35404423 108206090 426745604 707536832 951622852 970286925 473572715 579354302 935197852 958394971 932379766 935108048 571534863 643560786 950074737 983356144 794300589 864903072 190482793 446169678 60322376 343024750 609035680 905971527 479328090 655429333 274970707 807575327 2552478 206121928 495262230 656154328 302763415 436979331 393500207 585400199 663726881 805699199 777596598 882440117 107396399 474532434 385651639 946458467 909522182 949645064 538179189 736086796 153857115 766141345 879408409 919849993 474548789 924433417 971104783 985217009 900837993 917334060 37655620 449695067 986722 402616866 478880859 520448555 514606236 777373341 624008337 638480656 493098680 619400082 770166986 952277819 894215568 964499456 839524409 926806741 583884203 660099066 545050389 588288561 701350422 713061610 374070470 558334180 305214678 581870082 303616555 385940319 896978382 945000880 600228278 998690950 521881133 866708622 35344045 789294590 667079145 814234584 472605806 557612203 457056836 892521593 947718266 984117357 335112145 622274377 14255742 397347937 578867318 735950275 496703024 974890104 144502831 386664934 913791339 980899023 735929886 872623772 193682267 906314719 465807469 934555822 716609815 987292727 714548110 901225394 718078758 727309962 418822054 733111825 688205898 826789618 68859596 557480202 878971061 942164712 272440077 455465462 81699933 514463769 879788867 954866671 320190843 657801487 57829929 706338365 714978007 714987983 985990802 998516318 395891760 977515056 662104046 939020301 81238798 97213004 21439355 436470902 34405664 38180615 465665149 719777985 644888847 830312609 576121192 956718403 126110219 440247283 140572454 873498460 428759229 842942280 945515860 954446933 672970552 689037429 896177987 917766154 603762694 961795203 427614779 905435807 828685196 889314730 875745590 913247462 34892512 737487189 846855401 970822454 997455006 997530477 795512853 852743565 233468086 441610601 159191388 946876491 399596893 627090490 362558706 582076320 616176810 739180834 368412277 605938226 829026668 997750297 457488381 674848580 205841633 951229210 704492872 869987929 280692358 639958264 25290361 589878703 383055320 815853820 925161101 991210090 829703082 985410392 442119866 534006860 175529199 679711641 647903682 986302812 594982257 637038334 521499727 552569810 42102536 989221595 55420277 681993061 159065362 623049787 628539052 742457288 864913521 909991448 783037434 800941107 178322418 923158123 130488435 947437701 390667400 481930177 576284097 987368115 36570574 631156500 887536166 947147398 614069171 802442952 68273614 476675784 919410337 922165313 348969387 430888111 598533003 802654625 997515222 997798621 440338247 969877568 990813513 995916854 735632030 988546074 422159021 541705465 27092171 947946988 474199693 637824802 852373 126865266 628596975 957271440 754004327 930625121 747887734 958692992 405090230 652898046 730699660 937607655 903772136 918175786 374913152 660526455 939616847 999360534 149994672 216998820 723368042 907101349 267199636 597020560 220968242 892209655 700663620 758111842 536405635 744681603 28930832 84472719 14257195 211153969 350535266 738541785 788242436 934674161 322871572 559985719 255300448 557557625 310814951 893246217 187966607 656279240 742495499 881617731 869013824 982419920 113970262 824960190 765960198 818364298 390275477 407588412 174995488 330681135 755499159 804557450 662335658 884644076 960061114 985066692 272580233 834074823 221914911 589436714 957454311 998512966 708832979 907181245 658421935 967537382 638799457 755488902 554976686 660625145 403695209 533340948 811296083 953662600 816048941 833731026 785344356 847036724 298487428 945120373 332797700 504246976 775419577 957407317 107138819 395532508 920388346 963754151 187461617 414737985 836246098 959618224 173958885 232128651 578310741 871075818 545430590 778302977 846111277 909854408 362927428 588516891 451260105 794809903 694060001 994632489 960884576 972361117 381045509 818122007 681382090 764978063 224381494 749382242 760807019 789630407 570931284 889982198 27641158 854058207 431780480 685275633 648493899 966625774 437943094 471845682 56884311 486521536 846930096 993504028 728194925 980689373 358816320 778568722 192395357 621442393 653500440 894846386 609042160 952201612 327198967 809826924 795682796 882676271 752795921 854126031 891313962 893089947 636298800 644298108 236014970 832373081 690610868 809115555 165415000 655569423 153125645 703489405 793204947 848241275 184598847 930250985 223993277 387240675 917019442 953697712 403289511 466024054 845882160 848809415 996444197 997324862 478085762 529787325 443265090 500150281 146551334 738502205 147733499 440896253 118598142 628660840 717605641 998338467 682273180 723955742 746754173 869032993 503170786 913971851 698346469 997436068 647831601 833309169 261612300 685127927 597876811 755815622 47487846 215801795 358796956 854545698 641178876 882676290 572761278 905011434 44248218 886249203 410575956 735953217 754869084 941573575 895009299 932833207 12823664 300628176 215784268 667469874 120371110 608101490 838105849 845882564 194571477 809903408 72159895 497445375 49685938 953318919 555055108 685932943 464327107 751544877 909478058 994489960 49233748 341048709 730600332 786669080 525805285 631225899 167640052 861369850 26411937 432890965 352766104 388026444 991301079 995881593 5227374 594715507 760745222 915953948 119925734 662801628 696825132 807785165 743209446 933799639 201249084 644298770 852595668 861326324 920986231 979102133 213532047 669291735 544260346 759469596 481330312 640468831 295202379 724009416 252044594 627024495 197352539 957535259 772621379 891593894 340705843 500463192 320959741 609247431 566001998 570181101 401479565 701153952 326422477 680682935 782387085 812032183 301884468 766510683 102875615 255520660 304381050 575745858 294697529 477657013 19268564 73233053 529319338 576134566 193605906 864903113 639106550 882861706 141486151 525539244 496580635 976263220 191420020 584259268 406947742 805239360 530941895 970696826 54378826 988161979 222469114 475662189 873105619 983100540 256500072 330363704 942833837 995265352 8118826 732021955 609914684 854384840 193034179 465143616 78578370 863549769 428303024 931514593 212897747 240075699 11238044 490252838 302123677 784795500 847621806 847677192 430055744 445257683 753383650 796859640 905753757 933686781 521603398 582565995 452099635 994838669 581604237 660725687 757171211 968399640 715968269 801412825 841582157 862166801 935360679 945203520 288176940 790567863 466164923 508446240 592794143 843646090 147339285 644069262 659340122 659898779 575301675 829728161 262670020 795418798 756649493 869865786 667583884 857987068 51734054 104896843 215508582 284213987 406851436 987856362 887242582 923738994 919190580 959045560 871614255 925262370 126184690 971750740 737697308 740071741 778211865 964328068 238404068 390027504 184764670 478406696 494270349 546422785 870584565 959089700 841396272 973000272 130242010 944324239 946261788 971515828 233315368 447235817 947892316 955635536 499723619 671675063 744251864 776471143 537265724 998353532 78770433 871159266 448679478 589593602 499544574 920030336 431970607 635678840 311942787 392342159 614618957 705444329 403983519 802849292 569211895 875924221 938917552 951483885 727897154 794640860 156838885 321335805 856755580 907199397 94089924 534054866 16729863 816673835 551914976 720087195 213181069 820128828 303347907 471684321 111329722 317281038 326944802 456126930 144111503 242528124 455386736 486315334 541973709 932922503 756039891 827883152 881967392 980368855 348282590 939516294 990753172 990787178 620964755 729568295 537633730 704267089 984814476 992992873 635550781 972517478 271015154 291563232 585685005 620532319 421014952 917416289 764174847 866011397 72085933 721308718 343718354 972036526 952590148 976595828 752489496 976581168 715406086 788328169 133502233 712238540 990818982 995199390 465635444 683464941 362831143 967237210 707732685 830618641 43479577 652229058 843307989 915525706 557903184 661855903 507920833 546318739 964775155 984202029 371406556 556331813 806566796 822381375 162521585 264122357 740823208 901829467 691313161 994042993 298628745 662859499 330086577 349750763 485595526 832179946 814565561 895929600 890298556 984560907 272358237 449787302 259015349 271077556 295506232 545120894 3732299 706202786 438656199 442241358 902894027 998740763 885094681 925415148 256595100 815029343 997474207 998504328 410153620 894358155 644343208 740829444 206431672 991146104 384124129 679718236 808062864 899130247 96284791 434016674 500324007 548292059 75908787 201933007 785675748 964156639 962153289 980196917 971439233 989505163 654816448 726116376 195936831 773509569 660377120 886332831 585224194 617691301 587071248 988952226 304981920 649665783 813522169 832896487 598842873 958729437 692630007 902002653 995878197 998419416 845669576 970467029 239846282 560642194 341245218 887009449 664218608 709456091 877681936 936799554 683096926 945170349 966400837 971480216 788447339 961452202 431533026 548948863 173537410 585012042 809856816 826843660 762980462 772238634 526634638 898053150 867905141 873465170 939078425 956176251 403924919 447199999 996969332 997983040 329309357 931337537 839176981 871590620 25222364 113300696 115595428 271285444 210033132 902128408 622396587 781736474 336477717 815865592 36170845 121899057 162246675 611366063 200317264 649130843 521935758 593693208 404544705 407474982 911334828 972433579 213537311 350439285 675024735 984948419 401313357 404140962 129472346 942073244 462134125 966908234 268584097 466887497 935675697 990520191 362421998 818969267 974479572 994737943 530231422 897246515 33756039 238175905 926042327 970009609 404538105 862673255 265531060 938178264 49387213 573258709 110976728 602536148 646568860 738043920 260713677 499267549 68907788 152320418 211906312 651222725 638922115 898592620 843054246 892807926 563319596 828903008 477350826 571060629 371692110 948631300 118020523 667586037 806487493 823645646 869572612 925565721 394841501 717744737 162123575 667196929 897292712 947592848 377984043 636888299 633211466 968983651 462095646 740061646 228091256 540503512 613045760 613751376 432255943 615612912 378578555 459132621 531325576 749112690 702951905 940964297 391961598 504885117 942151335 992052131 727326423 852736562 304858310 596817387 266400621 817063255 583932459 795053777 952659010 962786938 695068772 870486899 164841740 571400636 526062230 742059872 135941385 798046528 726305601 863715828 204626817 426026423 577853179 690504787 871243531 995555703 948797228 996423557 371485116 713609266 526501308 808550189 834175769 996626094 716285377 760391925 660555850 956378173 105454666 639873420 975005592 979867221 457025446 509973586 727582087 923576582 91679567 486593487 247300838 379631374 777635204 920131090 267380331 812232527 841477610 933865392 689781798 947991577 399584602 753290564 984281010 988028544 329730205 976459164 966203863 979142617 629612434 666575506 27216310 625741634 336230938 548947907 55178513 600126877 583067946 876838813 147334500 464886344 874391510 992232673 169886495 290314855 6785908 441941817 903674562 996538105 312139398 395127373 241537466 761476410 149961922 391962210 665901883 735808103 591484445 869713037 784483003 852299209 193280536 757655970 845981668 880817574 184368111 239691176 67335745 746500509 312471456 431451074 7500745 156934098 950988905 953109724 74441503 642299068 429475189 747599561 514165737 878145955 794222068 934485071 522725798 876349757 394257375 643891286 542780471 548267845 26973573 315984415 90423235 825374507 84259256 996436110 762985118 989576084 120544398 861190274 541561198 804962372 182714458 489251921 644185755 657544343 201743355 296399841 345740494 731623903 583312565 627613927 798492461 999158706 673161150 993549676 618637670 863312007 647068920 754066410 973320208 998337276 408583090 645564919 851506220 876893318 359853990 409222335 36717646 122410438 955009919 987276091 464639805 512846667 78604819 837526501 120308804 906163788 315735085 983479003 143557537 271667491 706518655 977303953 544580212 945366311 542562779 740073227 132840201 593787983 82632350 159953983 657397160 807589372 986825549 992492085 542580106 904090470 767418391 839515004 235738564 912880061 914826192 978579014 61664399 998699401 417059669 602249616 199886230 293884974 823285524 911732901 213154964 520929573 502392382 716076639 628249915 688097105 856921441 962199510 389858039 567995636 931672534 980594531 236573850 583091792 602289807 668916229 790318387 972095638 40015154 958344062 692922088 968796215 552044485 625908822 850824544 871392468 867949930 940186879 508763360 749891384 150602219 231258236 262025658 448569144 958534846 998477801 834989566 946665281 532568248 792083761 993878611 995088617 538161151 792937084 14752626 34341828 839132136 964612868 281045575 436474723 391591171 966431039 792025435 895977480 867560029 956145893 236022050 693693082 256745447 798187672 879452133 883356145 682605713 691637443 169574123 420230029 121385654 157632993 423828216 954648199 408857702 586842015 933777719 991646923 62357241 910007630 891543459 914160205 370485647 981461230 163811924 761762162 877051304 946023409 741860867 878671363 656842374 777860056 400754518 658892756 831864975 845223341 758447043 917425398 795812206 950417235 227557413 640487393 196066038 214484095 174768588 325939764 837730455 967882092 807229196 857014309 987521951 997935563 801458467 876511847 818278388 863377469 275001290 302805002 732181171 738622419 15917883 745895469 845575257 875037010 352327544 367906833 53748840 480977363 779896749 953588049 602406803 837678026 444815113 950099545 105588612 196169897 737687412 760240287 628378856 885877873 874248440 886200289 408138425 826583253 729760886 795872216 206702129 621138154 822303967 909793556 213121101 631778916 380789047 786298549 94081368 995081940 102233325 901091966 278554871 682712200 470046647 518810420 986581002 987964734 704731356 998766757 480065694 660949979 573871400 652072242 398311268 775218920 314257759 995139878 535070136 642663383 108879060 600892283 219920181 418456683 440966097 657657255 78546943 947556159 814855159 999022004 596083598 623234442 393456651 531611335 85630813 768652148 330524351 928667935 255088147 853460989 313774792 939808108 160263479 622178570 394745137 470263966 321406131 678088866 219616482 391054076 772488275 822712950 834445272 956162874 357955546 674899336 840164909 934805987 157196618 468843024 209620688 235914236 94815680 942637313 120973453 132585703 936315682 947491647 557085829 959335491 912507982 977224960 386756055 560722784 959017122 978936911 390984077 630308459 192961775 772204585 292411061 479687772 737169834 746877878 184129128 835742079 471353960 800239662 893149564 943331766 572740743 942045652 455746896 541348200 942250550 965335758 553406001 798195318 356714651 786562164 980323691 983043406 61264965 550968473 69011892 973962028 841167384 982956529 397819752 617686332 405826865 639004029 76844364 650197763 804131782 846566735 373751842 632702073 116458660 447183351 965207893 992524177 58507052 402502667 688088355 992674130 168848586 880249335 709886601 865285877 784274943 828808926 885170876 945186497 865543357 886303345 702166632 954023120 460943448 600085616 456943288 543210141 852181802 930088638 30930965 130580269 572019106 881210520 469059625 568253536 946280412 999299039 202042495 406918990 859461504 960611418 255880936 902924305 464688935 574819448 658635560 786860359 795938979 983295782 935258072 976639343 195442616 511692215 76093997 542943922 615864769 995142112 939871175 971291553 898684449 975755767 893534420 920648300 925135182 937097769 591927809 989271463 506674764 847093316 157061164 438113954 400467808 543647278 469599896 785556081 722062034 902370734 266806823 358273981 544660939 741141090 978689089 996275633 947353525 994783508 305123562 982915850 348522018 719242758 629172707 669388060 718687898 915313441 965650381 966234307 559621268 743706716 552735456 893119086 606369587 655207742 414416366 776206784 27216798 517736209 776058526 816138562 687011730 779220294 931076448 999062470 318212056 638988086 213778858 642329682 21208523 535206283 685997283 947799696 709602229 852512983 465171378 802155214 499731677 581542786 457947271 711640266 337778682 878213021 377303890 821778793 817806144 936836796 451850033 632454964 332075838 849333916 217277952 385173340 210033724 229363894 697780083 715918995 699610084 771431377 980876884 998119005 715213025 916442859 480377030 607194301 424876316 604473305 242800818 343009011 520022771 928402364 907749236 979362591 678512897 853394857 441924817 630145662 268949025 360256991 63520936 725893681 343744706 957189325 895439955 959761181 353323798 515829435 672330953 959358482 616318171 620188633 656990204 977743991 493213580 946876494 717245884 803639276 579723355 992398632 890388753 990766912 705306723 970149113 57565816 345518139 890897087 996168859 502396891 955286195 284803583 532507552 114107140 186463922 750840296 952534310 812089936 839758788 931794295 934460289 768934070 881749501 885407594 898241597 87072472 556605859 696145756 903260931 872779158 964510537 249297077 497881315 582184767 752404110 690383911 851296330 668914614 911059146 382603766 970854606 81839364 888000912 398026887 982653747 474740022 504994956 760383056 916462050 173646777 681191072 369516766 661224368 494375335 510463658 244985856 931622956 787270585 813292212 74723831 948495590 820492065 872334516 905182872 956129973 520679843 610880485 544743921 619428913 109287951 857830145 156094546 757022769 274137786 735023486 585250716 616245430 471934720 691782237 906907212 928106193 971826333 988310726 475666098 537233963 112027150 367313466 880446122 946737993 967178392 968574655 591127639 952752999 557818902 710799559 845698869 854888713 33191412 201848979 606926185 637986955 554975251 979819395 937120768 986612647 731351091 960602464 302098723 446584971 667726124 687833213 778797779 851452066 342885139 779473899 653616712 893153847 62726674 389560232 318444358 370322378 965913469 991065780 605589464 755231205 641416403 673759267 413714893 862494354 197066894 951242422 955945789 956051277 184577527 588515411 597165672 645566961 273646799 536477235 549283236 954153035 637643736 770271459 803699831 850152617 86508110 767532104 38763046 627481589 421952531 476923939 289023320 638644356 397583141 877320574 328050535 593603615 640666080 658131270 135798188 430059903 654027295 821369966 798336638 971885548 468543957 756478901 140161163 530467228 932341842 961233519 570946186 726439397 525438035 588930794 45832558 799750604 411963527 511794691 961576224 970216618 122112018 950604213 780048603 893814725 798956327 986799588 313909188 793393180 49030203 114159635 793867002 911263316 865540844 932955105 40339106 440102687 764055831 873059879 996290541 996867298 442998262 964880386 710721670 855210444 895193064 999267778 136262677 223690166 654119088 996781391 153414565 455096158 175062842 625307398 395631966 577036825 251238043 399490528 729502656 795148818 15015045 372891572 327039297 667506809 669632634 674280911 567137886 570070141 638191208 706392375 537764867 737597916 957077550 963577481 757357915 921360021 616044033 717879748 564440678 987071065 246528587 840717904 260967401 699245810 518299604 712870985 289442624 942855703 527913047 603620689 492351637 686213492 954487169 966499323 493353211 950298679 905780879 972599686 474576255 797585839 867394370 981630589 282999813 724899863 311976936 775609876 615088626 866220674 835420009 957162901 634724549 777193426 94047108 375809828 143829028 266937473 121691732 366783443 596086104 848936455 83952196 352917863 167207207 283451112 359147701 496723707 656831294 690755573 636071968 717837296 123026684 596008519 332625856 356457388 901580877 989810399 69747002 402313482 928452502 974887148 244965838 305619969 837458521 958391596 930252476 980999938 717431236 801771663 753708186 998093573 728222484 802441941 262275479 585885154 412856461 973490308 104515934 586286412 938009101 985785937 906934212 918883823 356970162 650698410 13129418 833630109 935232253 973640560 754628406 771155309 480007999 734369364 452921643 735919842 727014859 887292840 649312211 690515781 700445897 895878154 893666970 985182328 904475468 970944607 484569335 957162099 539111309 864941985 20918722 640893658 533882535 535005314 744637431 825310541 544822923 919272109 806670611 929069516 591659324 601355225 152190757 634096455 67703831 964401079 661058787 886786637 993099342 998387791 354404464 914808991 229617781 538484244 274009167 588487559 592093767 901422948 565395137 644295396 446869761 595029113 744880465 760194009 585608846 595946497 736806484 873142660 562029138 695520773 133914244 871942725 10112617 203769908 988212507 997714542 155654881 183409128 483407913 715621412 307984202 412736100 476054929 912043199 812205507 841252798 204690868 758329199 696335280 773443993 597729769 875362081 293962020 381869153 523081557 559234003 838180560 861044027 205366080 294833651 570023404 752611025 877709757 915404999 453765664 837587286 838514885 958181251 825693981 881179240 772841523 858628736 668193473 672199531 477635356 644722751 651559001 907138771 243736521 375031306 511983788 642020419 402766848 949382686 981198179 987564407 197590958 347475851 61575084 889630993 521613650 629307082 363001925 593476982 118478871 729329500 627743037 703883025 6838896 217700734 359701312 770226005 486948185 682212602 817238008 856884863 409376232 558996187 531764622 588113856 79979742 161333553 181544114 989815614 215748619 373202152 687081399 951370403 994424579 996071472 356120528 463644208 191648973 531842149 528627707 664308346 837701672 906195058 410705155 675677259 37093732 630650514 843540470 912980340 620863420 931827003 163419509 899112491 151092155 898604189 325937692 630039355 473588343 730695679 465414222 543600481 266935377 817996198 234531367 373547507 332914245 422159305 461364933 603520303 30464140 950273610 633327960 708338743 691245846 822456140 113294512 244339295 601915713 904408213 414281073 492495305 42424028 439947701 741546966 819567376 104775446 438219689 877717959 981087686 914547342 941800413 344580979 705539274 181420520 757117750 572594362 643095781 409947415 742336888 299481602 775916476 669881252 948059501 606098532 695193114 742687215 976396515 991645639 997623046 297054787 301239715 473449335 872734541 543444615 677731723 500450019 979023812 866465325 901084213 809953400 822077208 211358733 303614176 496747660 808542236 203821633 240774241 148473411 532733234 968681195 985741955 702648199 956999043 65071560 697895192 461763609 812912837 683872189 764326232 125454686 264145633 995868998 996131864 262537135 388390206 575031285 899619223 52867644 795379977 500237808 736360980 805035143 911633314 409557519 981615840 775831891 948087029 417833690 556119667 434447370 957956136 851858804 929378463 301410222 564546807 324082811 454761979 444401151 755505886 490943600 685189405 655572554 894623266 404600780 483917622 228484692 411496541 89688501 136018925 663705968 909151736 333349235 813452186 215777763 634872923 187647524 924514109 922672524 988142849 261502216 764571126 493707044 941498890 456142841 705425512 309534214 794691626 443301944 817832451 770699739 936412305 540738870 926602985 336677085 858008708 70941080 689031000 125596879 840030207 162692833 286088998 90144570 90979935 605379347 761048754 119009244 154647137 91898597 151323214 187034745 528947977 269942701 590953564 265759765 657011877 107011458 530018142 556730909 594423345 243461120 632080066 805563081 847158941 515655256 813238862 461725842 602488030 562217251 667810542 135100970 867079226 280789638 527013650 368781804 591678315 973083574 973742394 112747901 670605630 778744693 967188998 781958632 919791919 302932321 501219500 503829407 561601733 767708311 950816855 955953447 991216711 18618939 529481797 817368393 871577300 44817257 475789923 936066620 979747342 551284058 718256552 960413807 966585267 989970206 992683058 561808467 932011327 935110057 967409284 619810839 832006655 437395485 686828719 580991799 927882234 366864285 737698609 598397771 925936310 116577980 139815248 387579780 674024673 338501617 785576029 532264776 844847437 712589168 824209931 2303311 231251441 710096700 831826334 225554722 973484541 9217651 697756869 942735527 977277140 373823068 679258351 429564731 962719190 847491943 993431854 890972951 910814470 759437829 809445515 641725763 931067752 861750050 879860491 743937500 965013373 11692324 441677531 203561406 835680981 772510738 855907197 960174261 972895956 111313551 900839207 469146361 524326747 968461825 971306242 136565873 859834430 286132592 861350828 757085024 980435514 549651743 985693302 312129904 420190799 944291432 993899496 715653488 851463039 165852331 592224050 694611129 712264316 322078593 979438842 130486924 437253247 97354950 744565068 398475848 929917799 954479734 971199898 213605142 270618816 11466133 235257263 908898909 989101287 30203274 971192888 125617288 867785335 205889287 720765821 959789717 966028804 489132532 976389321 178188717 655876686 585946918 711127695 600752911 646852853 322980167 867271425 469217152 817539894 601121116 931399019 297984130 860927859 535172632 593779396 100309977 617227952 823953902 939394876 614478932 831959955 159762848 214412165 519566015 585757373 677065921 740100384 579561221 856016792 692829292 712392495 720880445 918003872 784308651 896194746 866327918 884149548 264233872 644244816 123920581 586389607 483823188 541249175 78579399 295864092 400335603 773001029 60898666 931458253 920242397 969137743 815789772 998974919 842561912 919048656 202195767 232943893 777685152 844925765 377413850 976987974 170561340 306535903 821861867 922946915 684364881 749467066 663813524 728944504 213770038 992861500 414864325 955368785 390885985 518266095 220181848 752137070 135236342 315666578 356217529 732465185 445788934 511268787 15129034 306053640 74511972 680903257 499908130 962490754 677885168 830431294 173721101 248856256 12298885 294203945 714063989 920317900 190584393 209822472 420370619 861531727 513724305 686583821 980796321 985979450 928681573 961487185 1703279 862524756 91217506 793610138 660368623 757884192 759271403 899822964 179869149 603034065 563180785 982714965 369534619 921563050 354109387 422349835 107335001 607097136 426263865 988863052 265572559 786245046 932035360 980144633 883373489 937670708 719477110 861137473 644633563 960398091 872316822 942150029 360069220 671545581 432113574 733514834 195366170 199760445 984278791 995390869 481340608 861502127 304805591 924377677 674415035 719469316 699282790 743641776 289808421 492132675 961710388 980183350 922346389 985709380 5866234 497191160 235257886 391000527 298939045 631507832 120334294 889389047 394325820 550069875 995966360 996503547 997444286 997775515 614681046 793759150 655053445 853005958 808152024 840437596 978105403 993932529 168836812 741338225 465596581 883511856 971991432 979941144 459147180 699675783 885457108 915722851 203423296 569553312 864131740 865334031 622211212 682351452 535853072 574167387 797749933 938710292 467346376 587921528 303713461 853131693 658167499 711135619 418522140 972614008 973274894 977154622 578739914 992047153 25384616 40724247 666603985 967351383 467829130 930691687 49630049 544449172 469593225 950491021 717663201 908271830 404102420 644920552 59350534 553987683 979843714 989139735 672689503 819125343 785164432 878269386 114677776 999169811 850956913 948087343 915810889 922291738 575586835 640071342 773676574 795862617 186885580 506926477 133062425 644215356 336059002 652277413 195890921 871284105 162368277 601991519 329249739 963543372 280682557 452240335 508554445 931356503 475379538 651652313 353869359 728611613 36291068 561835018 263762893 451242606 674802604 715285994 386945975 953858924 236552532 448327294 767523050 903239217 401834208 590490812 349619933 465392639 675119410 872801807 766885108 941195331 45157386 202124773 978568040 993914409 448329265 912863823 616158948 703588395 912835016 918202306 858929074 900851926 578842169 662278773 372098258 864249998 571965138 914397845 615423575 971462219 65285977 829770220 975409275 977202373 420140018 889666428 143163952 756027247 655486919 938813047 551196285 905942710 455766999 679154779 759112419 976432776 276019153 748236401 785897737 795708901 301772210 456717032 956835987 974121587 813562514 918815093 282621636 538020280 562634660 941883180 897350502 908570338 830570550 874452667 253558297 376047286 379144839 584160660 31046817 410967620 438923329 735385815 90655156 107684575 106933040 163366632 895038428 912805975 594037379 782709908 77025742 656672601 553374806 700641326 725961122 806507053 136677928 801118813 816912418 985361102 584904384 763126671 893800243 904284075 790763432 980982733 760932969 896268115 832645889 997009952 278386689 452727345 76676648 828182666 346749408 349962596 847217180 983899698 310614574 855012811 282064375 681708439 350284547 800057718 541292905 612295266 80969811 263773868 934959022 958550797 142698669 780718207 947195013 979214219 497894224 844515187 785973346 915240300 313049113 421985555 584404847 587967751 532951435 968879238 173166893 637148364 413463132 688177735 365291391 858618501 495602440 844042482 170370808 352415159 612711987 989891665 898386839 918508143 599255904 747636392 564700088 669151431 119041819 133458853 411261391 436238959 894238728 996721928 350535696 667255823 114098484 413122256 719607340 820618298 932756340 937870961 921991520 927645719 492489282 586646333 250241051 649878556 256410857 555395683 95227255 322740632 826744536 896580985 398732445 627876770 314339044 315882833 472438881 755791478 578130006 641218824 676919431 880545781 293124578 962712676 22795764 119752416 121506289 420083797 756847667 924446351 282878991 626954207 423684986 586108662 84284133 959199805 909724148 965388238 732711877 957084342 15870911 103504243 760619558 917729504 437706134 707995119 718567274 825894381 271059228 624511258 825401110 974595375 592140055 865949202 843333695 958298576 844796321 878123889 579022066 750731874 572588131 840309787 866447240 968621208 647285068 771720089 393457044 790478271 954957390 977752292 561514894 838024069 578969412 944867187 38452072 736444349 510218149 932558253 794760231 975355925 977534519 997066762 560415010 787155260 507372703 833193517 551013203 831096599 508647422 617631014 11995273 48779697 666134826 733640707 746615650 805272898 763859224 979422972 646670539 728337776 418513106 993984308 469532871 760052526 44568795 174040384 123643525 587060446 37519053 952602597 122587244 629585552 946668890 947196403 552660807 569588470 355544996 577660647 874996055 882563405 563995003 594663883 217937323 984700494 797628843 949991187 693537573 737695774 165919880 184473429 68704427 648406553 298289937 510398362 138046601 579630577 529366442 912975419 701801779 926330385 791754010 840261256 830342323 972222484 526650214 551601914 377399701 406924776 166366550 338450016 428800881 721673839 377206385 749945272 201008149 301461854 176760774 277737829 881646565 964340556 400261796 756507675 710889957 847108899 567279214 745794318 398724290 444307495 695787515 745884740 347679557 773620898 421387947 535909357 480642836 562011185 88256805 886953639 600917943 970778077 251649694 970758685 317972463 987866895 516020709 846442401 584470787 711075916 438041150 928832679 973793827 992413758 227095519 581944455 92670331 384138960 446102883 905914113 865076529 871402648 546801850 967210103 86794233 668864232 45336954 487322078 729944750 810133211 592913143 702576049 507829100 952275624 926011025 957548059 281108757 930109626 287420777 727601177 628081765 932046867 982084205 983002839 405796173 475457173 619002682 789226431 965232376 997012408 130436573 540064370 33664991 974706786 74994203 166512892 75665456 385721600 863279607 877765303 938982370 956384863 710730875 928134212 920722959 960437371 763744915 850570514 923289860 977358880 175279305 559822049 743911518 990264334 21634578 318669972 851687799 988046520 779955267 832909334 508323222 723429840 638170146 868995980 264175686 959391587 885531109 996737349 691522212 765041777 133553175 951736802 256467557 814305965 707720465 900625431 791759613 925390804 691194050 931220258 524044644 759478056 481933154 633178778 334080353 607295122 729215143 937894195 608576660 990288837 537351417 680273128 431112447 823225396 343563995 349669182 783645975 944750563 237004898 644872940 134707627 348941714 244532897 479865134 322098640 726087454 829207863 879929310 218547507 266648369 385598066 835505233 585522728 845202724 305713790 933109971 441918054 584003467 692058328 939254097 210874725 632181760 767003040 933187808 347759902 900310375 367878341 395555435 795284757 971968226 896724860 990166362 954265391 998572893 531967476 601752307 747682402 995597092 796219456 974968178 823554072 903202040 302492158 695203242 825656183 842145857 371922996 991593662 88966973 382879715 524987408 606964309 728954296 743070441 446796118 802470294 319257105 868356614 123715126 221318318 719202261 823258160 125144687 955875188 544143899 844940533 801340079 933987206 679922361 967993431 691997419 747071755 151971462 632566221 917957772 938311669 103774415 191278699 635719047 882370458 738909090 812994426 970094909 990163690 779980258 797511841 525146959 765208025 739088211 952239716 202163724 914908536 335439703 893755524 1824335 297359152 791149329 840990851 556319605 943342364 584224224 967452718 174003362 294711819 302141895 625333417 127143876 183124718 231438839 388315431 925721196 976820556 509764220 582703133 310771692 577125389 81662402 333852530 656231237 969230820 824370087 999007321 340348000 501819318 21539789 409436032 382979096 703350751 407231392 631041381 284422932 884523300 311621536 534251471 168276964 862923857 35935479 559854505 681995625 896780371 934881922 994374370 167536699 610317010 574049939 663392652 365104049 688532553 213406291 875291956 850634753 998155022 597455357 654710811 101769633 840941736 11476239 256962340 120861116 781974273 722741643 859298583 940484774 971140342 256912757 697018611 512017041 572196478 579394053 608207710 138270732 422352560 921791334 982863322 137307357 703298616 335593543 826404526 699708337 868938419 55563931 669959818 479178447 948828028 91801012 935687743 976421882 990924673 20676584 54515828 746190662 826521149 845097574 858438214 56657615 539841032 457241191 934166683 371023235 389558804 238404520 992143043 619622780 632332019 658439846 900354048 875500732 955465241 815888181 999350754 972546882 986656725 566434271 567272047 419548844 660630040 402310051 808619721 432483995 462739617 36061647 943711583 454630834 463907013 27119952 970275539 93840075 858034510 304208352 693670844 957530432 982564124 549830168 900803364 663657737 853720530 986223521 988781415 414349179 633567424 281602175 973393449 601451540 741218734 346663025 514783743 681975171 943216678 643260145 897037640 637566760 943978255 822602842 973879547 369801128 605809784 63239448 559490349 53095363 665827607 112020671 212421602 57363844 975675763 831091097 891778998 825493858 835051962 427078441 668754286 753197790 982135124 854780081 909226534 24245615 980348943 842059580 932357218 38970687 583997618 181703333 869416455 559632093 712193136 852560810 918248175 174297637 538471012 799076367 917535518 84662938 938428365 501721585 658643863 376500940 515027708 115562665 798069572 308624056 817620669 949050218 996627210 290747091 527814401 398599546 588483217 258115538 938963041 442164431 634744407 479320234 867304619 935772938 935965628 422379808 609154008 417147969 524903196 36068241 316017110 412818712 468892242 852838990 966976803 373358190 578492457 268244488 627001071 486757764 641763857 872151101 900600984 812912166 930393795 680462954 836877432 882173612 960995894 871250418 940021024 319103681 357118851 417762931 921870170 551602192 964830562 457359248 638014356 256561667 446202089 800090792 831678241 501860530 786394954 196848990 320971935 241720826 992772614 740379569 907923096 6745372 682123234 631123252 721241653 669774728 933967999 375299423 695726672 154319699 640120803 832810420 953658007 409311308 672425466 233150834 847654315 308219773 676014015 599794701 986954319 334340244 825823796 451350971 818033697 518882718 700419423 376461019 996092342 400816340 744506311 574565435 918876876 595218891 745035913 481281856 767839728 822461916 822731323 229062822 742664267 998721989 998798167 864614700 929976829 259506645 291662464 881655031 962334744 499019711 646215858 614583013 845114859 732070151 869543347 916071124 944380099 780118686 831610151 529323743 606170775 883724653 902676913 896911476 986654061 529032823 686803662 435379354 565235975 890369887 912719665 56001546 475143314 319411496 639347134 119608046 636105524 482284765 759084934 115845752 764224662 143035556 941757180 625089524 976007125 249230558 904141907 81870728 271751881 479000245 886314936 507237057 635448559 316973114 413313049 122298119 531394570 27872728 907222941 657825631 672462420 880143714 949651266 720437597 847593787 445236377 923345885 947115259 995875166 443481065 595110013 300099843 668611345 669629025 957646485 881594918 924567679 532729669 892917951 509978112 947696602 92001197 775723746 702891269 798438581 103313197 755769426 869967180 960349603 496730784 710026610 33720089 317903026 738043278 902309697 874107155 977134724 441008512 706013708 780006628 916578269 394298456 739318114 653810104 941794879 574866927 646936039 838414845 923720239 109345009 783485923 364004898 724454310 678917591 860006273 567588228 940534163 151414362 591146039 522401568 903808328 380429833 717609018 867735295 902609900 248266044 680781917 951892569 974732032 658293806 766981495 281224100 395739310 828039040 900870522 414098445 991500759 614419358 636307605 357533898 434062033 692156417 855619801 12919789 149272783 29016933 208710337 451216941 569332255 462004378 721326131 626085940 973521734 82319362 402262167 579140241 792278150 899536136 978661113 622904530 848312137 675803718 684814263 915527028 960675367 209448906 622654046 907583706 912523602 342246854 461239866 701220522 848677701 970333473 986929993 987371535 988102640 923403799 942461667 266277234 312640393 355074974 856851622 134105955 302498005 189507209 984841125 714692043 934719786 57543264 401564228 174549114 346037223 207586834 643501802 4783933 527622928 679256387 963116903 414101824 454181518 837885927 952990327 222134376 337021062 247372379 534263657 470537710 681979291 305490048 614914677 871813674 901791030 397928055 891146678 240153138 592795360 275187309 902257865 408724992 796218982 975126818 993706478 70439090 857680044 691226031 766540973 652553432 766094394 125415421 558030637 141686163 962716933 565568721 624363993 236399310 674826656 936000924 974931598 558915949 767644127 431516089 714176475 627116011 840954601 956918732 972402834 837281177 955357965 442835109 580454481 866018794 908810755 288295439 638101155 921785676 979645334 114233801 549162603 67431111 420437337 212784751 331390661 449541687 980569171 805178317 912411115 404877182 971065817 332147692 408037058 391982018 718835482 854111451 921612142 638709592 898515081 263108218 810849591 231227210 485484423 931773747 951446785 327647826 829172603 991868549 994051880 962641663 981204603 543279954 762044165 69937596 996358439 716039517 984404300 224886671 729094798 710932894 901241284 253314928 669393414 957956613 998094806 14730167 208459791 706856944 717005649 771915949 956869901 605269159 642122216 399562781 954052115 368503600 832132484 660956898 868752353 380626789 583201236 559180174 974335757 464938745 919463556 349332752 714418817 510230678 667337675 914934920 995653771 177956143 698984456 445650191 884252280 179156329 536824396 521507175 774566768 216427696 816772079 394368058 460591390 585836296 852683659 618571948 851227055 499533852 908524949 388713483 857362394 604850294 910793820 633986780 819372132 162854977 351150436 470265806 772863877 341108674 691173108 610457190 879191808 58980532 773810904 759544979 969959889 328706246 857337636 928069780 941449677 923009045 969630176 250050995 330580007 13377763 878039506 360978454 589472849 759147858 914963694 510945367 943468766 522200407 925671530 164522617 390229737 842311151 947737437 756350754 945470418 77257609 802817645 198556191 639955212 643551773 982407154 949854708 987226645 716047076 820526667 258919910 744690764 780950312 813678445 183129057 610995843 17605504 398637102 704685233 885400144 285342221 474210785 388293685 622317700 133977993 742350131 200173566 862774613 317110900 575612191 133115023 573514912 967493887 993905933 6490779 700375938 558044432 561912807 624826633 695212656 686059494 919321735 377890438 692376098 28578885 804969338 681716114 689088910 790593673 861097372 990879029 992921182 92429553 404675924 52921074 120170164 127443623 480947558 472620876 484198371 453479182 493566262 12784653 549060550 22113109 602924107 368413902 513707782 463154026 959178563 159914010 732886245 132166351 747551127 445090947 534817000 216530429 308953740 716091649 942670113 921728871 940211238 985356740 986921898 741351189 755512224 391016381 655926649 450691577 883207928 979377312 980317514 565032868 931589120 110429775 984566225 573533955 618068942 66704827 66849985 173853706 906967711 730238502 955217296 619400242 991408991 576033437 880487884 351083377 897970740 919282144 987747187 419987886 925656676 660880540 709457260 619270027 889081084 779842027 878959465 689157568 787689527 665027506 925125572 751786517 764689893 710377667 782818485 998350875 999005357 922822264 928167664 578622007 652208584 749464121 885527170 550994006 710675084 883675308 956709704 45221425 725637283 629596509 638540417 310357791 714548367 371449128 693717403 559719945 721178880 745167276 760177626 949846657 969938762 935916463 973066090 155672435 529438576 98026460 186890124 136765104 481488342 413180748 888058574 665522674 826382001 729956528 877538976 657351403 905892168 696043345 993539931 706100747 825226611 817691566 843282405 328407760 674902069 875830858 918182454 731117873 936504710 359537038 923644736 389299601 774915056 588365671 624094841 407633944 614875216 995362501 998746708 463716433 997203355 184519782 921011277 199222177 898549020 486486307 735968591 815636127 951678808 683358151 747782132 260023398 524971603 214537400 262605994 965289088 986782331 460330052 912737140 175315820 295032195 829028768 839846012 562785280 937506461 759673707 998307627 403870137 708685354 554819122 925393840 573063910 639219082 172461399 466457682 305787590 522617083 671451937 965237968 461640505 792301315 672234572 996228885 479861385 750902099 510888423 704400738 305404164 886170408 888914637 998377040 104509184 611066313 468898010 906826735 740476545 840478949 408308553 911481813 794233830 945166144 337594850 617631019 363438846 870465993 323797842 594680858 32491487 608816085 943072913 983359722 934777991 981207976 442274267 771347213 193545614 264952562 778921115 886001479 65460138 332761731 830537957 892275410 385692676 593937941 120163329 342635490 467312262 487512165 359624211 585152145 171209722 858474763 123327357 556840241 804407312 936260530 338312206 472097000 878476524 974770778 57315869 699839594 517869058 799806741 596610726 907476959 454106327 547016535 757281074 899047213 846843576 982177065 122355353 369904099 860985948 862109680 490733211 581513740 976885916 982800382 17537326 286719706 841181287 905673492 915691757 972613297 797462905 925845312 437431605 895765396 593690815 995962943 415415178 716142943 953854586 983118173 271297580 606422795 214934518 670231189 633077011 692695858 810786607 943704347 885451115 987711292 702970740 983807888 239478546 336320356 924015978 987782915 154072788 358705767 317952209 360763942 393566349 736153142 347259018 916672847 470430140 819659037 827998028 898385675 534719345 711871541 826680169 947524247 349012370 506170442 226208107 369914494 204307256 898867098 479629304 710047337 150194436 374205867 642278136 899678731 491564899 731970468 143751494 347673737 697907961 822022181 412660860 628451821 421610195 700208602 345842514 730030542 428375628 607281139 524548548 897598011 904158056 972883479 472327902 689251083 159951322 895294624 695436959 973032565 896028861 994678257 439358074 505251028 963289639 996413318 209491642 359783866 591672854 983829720 358804574 882771508 146730470 770772382 128626211 492356135 455083026 802324477 938142408 979717553 870904104 935688188 918903721 949744722 572000914 602285397 494066819 980028564 132723664 434679561 934078518 946091268 550462864 791230960 529781858 813917925 925276738 931651916 935639971 941416887 17714316 354855675 623726319 832803304 19354932 849292824 912741281 978440699 204662411 576413858 197557554 305219521 565838478 917681421 47497785 691738235 15133537 209897677 390038543 972940573 498067956 654921414 583109191 959649760 168640365 897963347 207711448 530921164 708079579 849532171 14862740 78049218 487496215 859572649 220994302 693822809 37206908 63815920 978695810 990236466 356653943 438559154 135365816 909619211 186596054 967542550 338116295 420427461 757262994 935956770 698147909 733953575 838792402 961603301 26952658 546394346 606078643 902702176 874958529 903715161 300203923 641088438 280445218 561132572 18877954 796402291 17289714 947819909 633115632 972783988 458599894 898806762 929747935 965528241 759093321 883547742 448075655 614945099 656683780 921397645 712895098 921370085 350964120 764053968 807388643 840362295 512561378 822026221 963488833 983908160 264765687 795431559 623521215 755983401 616015734 902434300 798216036 889373346 971976044 978812330 172154319 761429429 856003731 933375914 900198264 921847717 752560916 914162403 225831312 252754319 389988412 531740014 852270358 980176151 906425939 996832643 201381419 392985530 552535816 870416346 584419738 689950090 101164519 283502474 697782289 971409078 911247234 958554620 905193184 968160771 694945691 969991582 223658303 856976900 245707212 305387914 224411281 656153823 560774685 732510093 830999513 973338823 806309468 907734357 83598211 544366133 986046050 996748605 360880608 649641264 643200469 684352299 881785724 921330127 358518884 968346474 576395238 674421237 217068214 633051211 361326019 676447597 189399148 539726769 48978861 899710772 3297415 156561054 596899033 619904814 309775601 742492966 652970490 869396314 161020598 439086418 494096009 563596433 73415322 275064590 941279974 997421497 320898579 985350534 253518681 745724016 344942275 791749226 951480645 964954188 5976778 18827305 649091537 735371191 207593783 762178689 514724800 602996413 162709842 490677639 363706161 684853992 750565205 881038980 617487368 799791573 24806514 372509322 851924059 852028608 451088949 983591563 476750730 560430033 997865045 999374181 961630290 987766555 759183975 785641187 387029562 559619007 4825901 770577384 222108126 767148915 780626940 949976937 781777791 831289500 635045242 908526460 520707860 688255055 679072276 837066604 715989580 977817987 223219935 477182337 245378179 795793887 449997102 904837734 186799614 405763086 253916494 607131654 829176498 955285842 925767959 950449761 304029456 606147655 423927862 816433785 422777687 821744869 580246019 909759849 203853377 851280550 624685869 812767210 44034462 173886748 291986176 677837553 847671697 871222752 474121543 693098458 235664309 529944592 538440661 581808569 589599756 770948303 510411542 791214258 180852206 643923101 659198436 996887899 63795612 189615599 990469957 991571595 848664695 986276015 998483157 999135440 646813050 848102474 121233337 165169192 862500917 935793066 989506615 995130957 379587084 631750056 439373119 841519278 957798541 985401275 661292807 952402721 946427943 979664105 23825799 898349127 697072022 823128032 40720579 962569014 801451314 932791150 884610032 959424343 254361571 274787859 781073674 983093756 16273422 579783164 517789914 915583255 78323598 128191541 401129939 799351953 781704389 938561669 60292402 752628244 208912619 235974298 690724044 778382968 557788873 711674972 740848050 816380780 502922747 800586705 397662047 740046289 920987694 965812855 953732730 980228537 919645846 981354525 151774300 833886288 738700678 845144240 538983257 650770079 635463574 711212764 916806599 942983123 195678206 936814696 601592402 606141651 994405146 996193873 991681947 996922035 477477054 575100292 638540203 711688844 363717917 491988925 822497750 963120861 125447153 791561795 333466023 478837042 160754720 696167595 782556614 918720746 805739760 953134258 646949321 864342572 397839609 585445287 794940885 872887424 77192113 221420914 634080434 854628696 549835537 967558031 644402920 935317416 827038513 879742420 380828970 944827594 180611057 540924345 682960468 816104099 565279793 756180810 616909090 685637490 300521964 557102090 198493153 759487825 996037582 998802185 81156202 384699544 601434652 650161174 880562361 892360271 472193803 889066846 111353906 115249010 667272268 938901918 316628871 547520298 778136763 814083928 225353196 794209168 623961868 996410577 966932301 967912811 681387779 965238039 771139498 794512048 202585827 231745031 59746305 741104405 193043958 762959680 606950475 644821567 441861341 696534316 429046459 743174670 97010785 394084010 970200164 996836923 472703105 607604507 340968702 451546573 258856836 913565212 929931817 977669437 507999833 818192532 945720457 970565523 685366221 717750743 506388904 926548693 848516324 988641890 940215126 940570113 512870643 906260155 117834458 597884154 460139593 534319935 232940903 892399342 438511360 440009248 241264764 829671264 574381618 927455412 87214055 976027585 625529985 928531851 117855816 383627149 286649117 480554197 851539158 957224564 206849612 778136762 100108589 751784829 552029801 905001262 358707163 833426362 681581212 712391337 386477242 596501234 197894023 234641282 172471529 859931567 493848348 981055168 903021266 936520913 408977104 605765177 604524460 800976263 588946926 811700578 452846516 633945150 23146116 586421165 162384480 243962280 66683889 468568034 624575949 843824791 344814285 351052145 571326689 949963642 189423440 625828254 112189838 938989401 865658026 971790078 742265837 959662659 875421447 984735564 547622735 841864643 933654700 948338050 252323944 614479405 157923748 177249685 781270046 968584932 569996150 668428925 465756402 815859187 965133399 989945654 941615516 961411928 72764950 676631701 902587391 938208634 652607566 752377312 210853445 289286726 773887789 898477866 682619443 865663942 63067424 137071840 231055069 624059076 93304067 184579897 419471365 737025119 692955309 781293454 772977519 830361993 142593493 931339022 443902819 460988591 90553329 439329536 338681733 666817669 716980095 763644089 988761214 995786312 484481307 605824606 175258747 905920212 745207251 863481642 517933605 748074652 727246697 924358986 329571356 808459680 756857426 971175365 259418974 752102558 813017321 868387763 778996821 975968335 128132038 533118191 829714860 924141934 673142510 883014205 481147814 803980513 399109573 733908295 402486082 723459837 477344472 574055341 564088481 621830888 651766338 946984149 81117997 363606860 45964323 997893103 157868486 554418492 890498101 903016267 474832078 858355502 687117091 930093921 211215295 238033461 546729736 669639294 465241014 602319129 605680880 866167126 609585513 881669735 455650737 761748879 56155128 450262433 211173354 684077304 155092088 863250064 773100849 831278303 91356255 286417714 62456417 167551879 420843861 447755243 725055304 771020166 340506929 517370548 516726051 902305854 814262234 821061392 182274003 189524519 502880422 953873997 796056742 947581539 320201334 592941661 966413689 998690972 65412307 526381678 771719176 927169603 872669730 899025393 878767729 902511419 484359349 585803928 516642789 832803913 500994732 634118305 757385123 814557971 285593405 297794042 911111722 923758724 334366941 954189618 777618093 836546793 243110681 746848818 493892440 591552191 839612127 983220064 203484635 363213848 798440328 906591726 577187462 959669632 983908701 994019776 555474542 714795681 624272026 629320772 668301953 865971967 332823374 667127843 536969249 563187674 784871510 878014074 278068643 281090787 562709965 679739512 43568229 568613236 872903562 903597231 640819909 644768968 768055327 979382067 375560975 415874523 303887927 579357805 43699768 941678355 744738246 983321776 420950421 688408236 771108466 776258295 178009514 232107374 804223944 913350953 176054793 801815356 782328611 906614834 159738413 386192099 911977186 969128007 417633318 635971311 393168578 776898409 193618256 845089102 471073929 714776017 555891649 687050832 914315523 969338221 971041273 973866361 25493218 679443332 609448432 863358864 899266348 901988463 967046185 980516476 407670972 683700858 129620313 587113394 401458878 966075353 813671708 997945740 201361874 986648489 548594445 985276240 744948626 914319172 463991271 473499294 810520919 945345770 210765729 795252327 253164297 510103834 109655374 756653022 23573704 763026985 561674310 799884040 107075170 945101170 814387784 833487784 992255186 998669923 925669892 956543313 800444335 918439632 592601983 692382160 513329288 544533177 291900233 391832748 953081584 977910092 22586920 960744883 937889016 952326535 357423588 764562969 180164812 887811327 773502514 879243587 279724058 872681484 918504549 953994697 349534569 373643110 627449186 791774166 805908357 958681708 792490071 920677158 746671058 998599765 696852156 886948810 867636070 957735390 233548432 518352663 884464857 901025814 877720372 957183020 227640123 907740987 273059296 524302186 17292948 122565248 639790690 670601247 649224706 923730218 434470592 752960513 235229490 905917547 234320969 334638626 644431545 892875798 253045761 288886760 543448782 867812094 177636857 986879420 392692153 738931385 616205982 672013335 726335854 817836806 946810099 982985903 294663604 560090153 228872644 761788563 200099366 363119794 410477424 899182989 577629812 927228142 776990188 871054662 990442006 992985028 128746761 228169980 281390056 619078718 941121561 944536849 175451280 598600041 796987584 918252240 350456090 369216143 518673435 893073891 6141772 75727994 380810065 513689240 898976302 945710932 196816723 653458800 500884562 681601350 503293247 894649889 967560641 985610617 873305449 905532429 190693350 876977611 239876407 928002264 997792578 999273048 440294719 942195614 518415427 673702341 151336013 526783400 578727912 826321996 323182559 368420008 281994374 815162084 463145552 701083521 684434269 840036538 630815468 992083238 791743905 854344886 335169436 999150418 86134899 717532450 243465464 500139712 516085480 782273537 808695227 931538028 448872200 455412171 155096771 721990698 529609789 627587404 377211072 541256221 402290416 580489170 831378733 843582558 936072403 936662837 400839031 581015652 794685934 903859881 65950648 976689854 62752937 206019920 20733479 590216682 288809009 986940932 115275111 947494924 277075922 319435135 214784672 287688023 263041228 272721507 69285606 194252505 300253582 454410176 293560751 888991190 687763327 808295932 86049035 268733935 62163660 576782018 225800554 298105903 523017960 661712370 392982049 682830845 739131559 955614855 806007627 859655491 533197530 729765128 885145704 980286844 609323293 811319275 320512502 593237961 202115057 580111225 15057219 695423636 907466038 962370073 385753596 712637863 428472026 725745390 460080097 674997709 726041664 844227118 678802734 942448928 222589474 403696016 339427716 588330778 952013820 955330673 901731169 912111788 506403212 684048134 653716653 710007682 386771523 700892166 169735968 905656028 676533485 870213764 197359520 631736346 421305892 912434618 534017513 669192054 264794022 358266079 526999482 695831548 946230969 961422642 248390550 692261428 296007326 623313972 751355081 844473865 627431236 825912446 233980807 713479064 327151714 577820529 654220901 841385472 479180804 885415010 335064583 540619149 908229222 959352711 315614584 603015087 180543210 598760645 415546471 434496148 702076474 869760430 804849666 956028119 949647296 987980033 413639168 751795771 451192391 879484509 632573273 975107693 230643731 482298481 135191160 782876219 231841826 479072590 944318703 996848045 250208009 859792197 886541783 998605274 707528580 888280484 369663991 701976685 944116566 954857533 928586139 928848115 155609385 648903829 17255690 314208203 808364320 971392794 649941932 934697788 754635872 816973144 398383454 806270485 416099022 587130641 49608357 412581087 126505587 781498823 398683244 823035751 782175353 984195920 747324913 836890192 529540713 875494734 88062867 484005201 95331344 733193218 891519588 958646929 717410493 723242636 570592795 724542361 2123406 287767519 158120406 613130721 588984790 896460222 167203893 940270527 573232975 596901830 797267462 808326859 360452655 924161229 261032582 690359050 538218026 907212634 113048735 617159290 646291893 849843974 829393477 967451410 36333715 480564930 436631172 443307179 619105271 713844174 578249036 843499815 150953035 362478941 428577437 809156087 736166168 818185503 887045463 910325087 936458671 970526336 250461207 320244451 564280230 913407675 333285416 392603418 326048140 938268702 411280793 453003490 772709983 964945157 856835258 972174486 391580725 864079986 247929999 461993360 852908250 966395716 111608802 516622467 118769406 267341742 371471400 372265222 973010495 988508103 800427317 826540213 178757175 198445831 450289356 636036593 460578914 688464991 888245055 947341240 108922285 358203499 421947140 518716298 835320363 925634265 820361083 880351671 478440559 997225375 207714245 410267270 22030806 473094484 115018083 545859616 390477573 448410302 252159560 930874292 550512660 942791660 854407059 973262702 492925184 649941957 772666841 928375392 982768220 986603198 478925225 983495608 358375775 843829428 657317424 686567573 427260370 550527138 582552227 883670349 647886951 679162513 586674693 785776765 163447585 573994584 388340211 393058000 155330284 948206785 39812138 92253165 939480718 946855216 823204057 840516781 822302759 932609923 269248172 876656188 534170838 712819576 248332344 265026722 29548042 383585776 723270466 779511538 36828180 898805954 753094974 822322431 461826707 586229049 59597499 545816311 86245261 539699929 644169680 753232377 917306851 990006151 896566089 927214946 198006991 448719743 493329753 616987359 25844942 827123905 344701726 830466171 579874663 787555769 49662003 354423730 54320772 323374175 357340584 550516625 135295927 616491608 668107424 694388530 595540055 919789881 272733126 852208256 451588508 786788526 437407613 704563971 401864328 917713275 314424459 909357349 912153226 978123793 698407171 824246538 35006525 570231038 554336466 736482717 99990852 508566465 67035099 731831984 972626893 997352340 839406599 963719576 427092694 651379768 916624717 946132918 378112645 729326478 247762751 817204225 694011896 945257453 185869406 885484539 53726736 92581877 776768080 790227820 409469242 427827618 706589729 864674932 654981526 859605527 415913533 480312419 795936839 908939113 62726411 345474990 289975114 698520141 232962555 714803377 610891850 938211178 536135334 727768891 701723405 789955012 519413557 872861998 715626287 952484932 177536930 190475371 997725734 999106075 247242010 268772744 159537370 878745673 663342239 890752721 485048989 751069512 156870669 207633416 565193110 882034287 388441999 967967046 225637902 527982959 270303175 895576984 103242428 191879941 958518586 973920279 179304302 438576707 583689418 965829846 729158077 946878174 775033247 870203820 702937735 860542392 260466736 784544845 536930145 973986910 274078945 434387342 836403435 968010234 621618119 733774313 855202041 949679932 259615908 439181177 741662870 842429245 491413744 732602476 372662398 761530610 233080302 827519860 548612118 647873560 238921718 315737440 563164134 909964317 839636344 840900295 638671425 906399426 395763679 425989873 443953156 661624697 160076898 495032523 823264969 961960135 818323142 904349494 918396994 933133436 261308228 329536649 301940721 844762068 988937145 991230055 351134230 996038445 207583100 622913387 445354419 794185133 474386405 627247630 330327527 619086593 239318158 374482645 875373023 961889113 515382978 785208602 151744114 399187113 499573770 806003868 764592452 866946583 756115745 946704135 586967752 849361009 464183311 520451045 589923554 905716213 971900620 991758128 233547106 681037464 786801931 932291516 862297165 950939347 783528257 804929466 573183076 604192370 31086428 529309660 391358061 400488951 696369655 792275841 158884231 741256741 535995672 805770587 397106364 743727134 890067731 893581948 631858004 640178507 29537430 751030901 866242629 875326961 160598122 812542142 916101356 985294153 334769457 785617974 420053900 786286464 141234813 541163499 239375930 812815811 331268927 528984469 163702942 704343133 890824050 981237765 405777445 957873721 755439967 769641166 298391937 610858168 793059192 830743398 91716508 635945643 601964258 618527742 539087101 978079036 995516467 998271667 581536465 701071095 251723676 585193058 944736208 944801590 555076759 682006414 25328309 384074865 602569621 707618363 907362295 992467232 767695766 937650357 510613721 572806983 145231923 422394309 630623474 794189748 883985147 910253804 263709111 486413663 207530172 306555254 334593922 652842760 986001371 997839949 208064681 974596861 953183744 991368741 961875655 992385252 372959053 427850203 228921616 412872043 403712411 786720503 670035559 711474981 923066442 966483933 765214394 977435279 882287994 943402234 683609146 720278804 424535297 604891002 353115398 917156038 782525798 824816758 333969748 782495573 248085956 934297620 570697639 867563628 657293547 671595779 535758082 873542040 8211009 387523196 399734357 484313350 99696691 401751781 681143803 901107353 65107641 902972000 880433793 894742369 857196121 900845640 326338761 568362907 732872522 740299007 286250471 844280049 50097072 733134040 885776306 918573543 256840529 708350347 983732131 985511088 428612936 530454802 863336960 867657372 797424826 934114769 101819644 278918157 93848827 256911822 764896561 901855498 259159411 759146424 861748605 874393210 620039876 852040544 890201953 958540482 283897415 854035027 671980793 897870288 703730560 921556892 286474212 819082691 608638952 612767644 816577923 904365130 849270719 953876859 108068593 942779181 231507524 565498461 975193758 993649574 911410086 924139019 735286775 939113282 241476154 490177396 559333611 864434143 352151940 594906462 553016096 664571203 423412574 630276754 534950395 665480177 467366717 575781828 96956005 861874793 224807281 885688168 716306805 866949264 144766377 736305112 879432162 889101792 811750615 816124372 119367373 233698273 606748044 643974260 486798040 765349140 897432952 960529070 507551094 599294334 744245830 968610496 338012196 865762666 94480295 831484354 971392798 972807021 124288698 980341109 603824966 893531758 779593583 822334475 817111879 895046705 832139979 945494694 231235307 860463428 664059101 682943388 180384872 949757477 846971230 884883013 985299715 998692391 854318937 867644011 597793584 772747438 751241356 904371062 559822434 733411615 656274760 741636304 623286651 878854720 97581237 733805556 975647431 980253779 530037922 906603641 484900721 712897989 660745463 773638456 834089095 960265287 38111231 489628512 93365774 170437660 866392153 888688528 96205727 361177119 189737446 606810369 773745970 975797984 242366940 341688413 230649727 755818316 359848951 593590704 968622733 968945292 756424123 919411133 602329377 612241452 620478999 749700646 365860290 510436947 603603024 867474417 361553058 881295987 504824616 792721580 160834971 562988614 389213747 748179699 87362124 956674469 50562297 372857061 509927334 663850558 366756269 469916087 871626227 888768304 599430284 979697457 283179119 645161407 323694968 408807468 127259005 413798006 783304492 798382151 828008129 969044871 61046614 891824145 649993542 710085764 769184874 872262163 952479050 970527355 349967749 685055830 80743178 213010970 88715016 127364178 560723251 748458881 609431428 754719270 150581557 240826202 953891831 968708147 29516986 598562417 633557226 913604782 788576727 896790934 257800598 642318465 55093202 690345171 342650618 728088853 795709010 859213074 145430028 704021204 281487287 684668295 729528453 855318140 248420529 258877886 988507941 989580492 887261738 964844391 557926009 634099566 199261267 247422067 838851075 925860996 593323002 715975432 130862088 619273035 76796874 843386111 941736465 957760413 53473709 362230836 761867316 826404845 831643877 983687018 605056612 758438744 885326333 955497611 597420521 972533708 421513243 667337613 993202506 993220355 999276769 999302043 441938936 977958115 478971417 962672985 824849591 953467575 69685380 239200669 6300542 666224625 382471328 851059901 215986412 236846535 244211269 371584944 651727944 997841106 351850504 878521876 19370089 954509055 566768907 642206994 80623128 558184954 464974994 681188060 647692509 742926744 326241456 482410311 407452605 809666127 480840848 689240406 234046351 692754651 426517099 974756865 177440680 443494885 513112253 526527734 283457667 305120872 49150122 410298083 110545183 775267286 591738228 714662965 66579165 491391223 585129763 878498104 267374373 787483370 931620372 942468806 173721329 247404123 124933846 794459444 823025365 851881819 384388808 938576398 352001944 800642588 272317298 536207060 537988375 589746920 272108502 435892500 276314770 635554787 923471861 994370516 404219385 476489232 814256358 922851887 604659669 642919552 473945550 892728245 473690883 761950493 620793390 785861140 624105590 906867934 473175019 833416641 91800686 264713924 875113557 965275850 910402674 984221524 678748217 878490996 831597162 935695495 712130009 965352387 43395550 706867408 28970003 671837313 517463120 793123587 630326863 713758153 724017907 836008649 707532929 833651864 800336711 896852954 832244801 973634827 498511235 735512390 664017162 988540248 493107212 630008148 333617835 717785197 28739867 428297802 218683436 389862295 484568980 695848520 110009734 719084801 812748908 875758063 27864779 219626131 524105245 677543436 445637166 609876194 520530258 698635635 546021616 909148457 155487609 825652348 211827544 578736938 201595878 863962245 78689373 653625668 552981917 987549981 396658279 660836477 446161032 483878068 517925734 524918663 251425194 472483050 207209781 393256515 437459950 677068559 688903853 845882076 306507767 653224823 864695880 943917076 664955895 885850110 648444117 720851965 851178491 875079322 380639872 522532592 630331563 912847183 4440136 400880332 545450259 893007518 234502986 254219026 786810727 801558944 39904014 695547382 3854042 403382949 521428948 535896436 719169701 998231869 129287579 333650362 13040595 833644588 245441859 648103617 471272234 772617296 132220907 254180438 838262615 938515230 28055850 259199553 580849051 694094296 21755125 331369178 374565822 391502362 909432069 966699271 425213173 547528832 432513547 834436988 357375678 942289505 345757683 553416617 651052883 705497268 936751088 950986600 437735125 993758046 711328378 853961092 437900661 470460297 696164648 790791664 809716582 920602695 635988777 924696334 415252555 856544497 993581356 995449062 807566943 962521423 14204388 95938545 616643137 772026186 414005226 785336119 78388593 106581097 335653299 488377506 885858398 957854682 807971825 996920128 351958239 581610097 310396816 735289247 937395338 959204243 417212997 588279827 693602230 784995648 553904490 684506447 278336776 710690467 443084721 996309589 360593825 439183930 270864560 566291797 843919643 912776367 561339706 593025664 763973029 822039908 534296359 620375597 374856911 469369993 949172297 953399631 657297768 661023158 574658994 980227798 704427056 997848527 100438699 540965223 945507578 947189345 738145897 959433326 837147996 985377117 632682787 924640453 529176237 903584598 903318923 983861284 297298883 795971973 507489587 647014564 314622557 508947700 704695207 800768119 423788741 980666779 370571519 737269757 976761193 992944464 592604162 919676607 477222630 835858135 430267524 572791857 789203112 981536509 12400331 234935576 943913700 961363440 18409657 810131645 702456774 788261981 534032263 757348501 258054171 767711111 306188606 731291610 868550692 893197920 683249239 790914714 346428339 515431090 415068941 683846067 856371109 915754954 167665561 279332103 833630528 877436064 186041274 670040297 175657157 857282994 401031532 470777468 952741567 981834204 956483665 986513812 204357815 631511611 891680379 976892476 250909893 681703246 509432542 850176868 326712178 688864783 530570558 800535475 722889700 816833450 935296938 971994338 385753914 919806039 287137983 753122818 711449747 911129245 870511389 891433982 110055371 849215228 146245901 477704648 87862171 214938674 677543286 909303467 818450174 895674352 353274399 570893591 97253153 418000632 372331261 452993100 832557869 834383080 766968160 794977308 97784050 341023622 733751841 795549263 528032749 958572262 917857211 938113575 724783242 920613256 588174569 940691502 36355041 657470978 668221578 786926674 844070068 913208867 972033930 991204013 106773506 663424283 281616494 291712739 416599923 531961752 883637031 996895431 781093832 982135992 780321865 859208056 993351486 994331373 857591408 926483555 790761145 936447581 269972627 436680005 626041930 946146129 80905689 995468050 99424221 264477220 42388352 814050960 411951823 604648687 771377444 839944607 268054165 746418139 357580058 679929613 737095245 758328175 73378238 950785831 844294297 908449372 823023527 942481054 941219778 998575168 684548874 924768675 166516683 749663483 350880000 502083149 288391525 439069281 642364091 972568617 822732962 870334734 983684036 996010349 961327987 977213075 962752102 972638983 713495898 939213077 231044350 949681008 856499877 878248153 855296553 954093668 542224985 913388283 13345462 980626380 953106064 955395127 92492249 381712324 116520717 798209836 974698411 993339384 350894670 974916051 527602958 742237792 330481327 954918368 408058846 936407311 539408455 901799868 795255096 909872797 525706455 684018818 379866592 560248566 288561084 439222064 675534074 804408755 263520319 922174174 589808950 909530401 755276156 964013355 372314146 412887625 196502511 341160507 855782693 962945747 313620652 891418970 262319028 692826130 88519046 173349639 658607400 986279429 552377289 949443785 390357851 655140437 936755277 936806263 847540637 870895147 796677941 867017362 256197194 596081027 231410196 442772028 951204422 967706746 78937038 727140058 696115780 765602889 339161432 513778408 22409531 559410272 104397590 632699225 997060189 997389477 79050902 461882430 120517764 977789617 169531806 531084379 914280776 933170082 191922381 777332930 456312955 978961184 873751920 998480035 388214409 610832596 747318837 806328590 261598399 521769318 555817222 994300526 157241840 659497239 147332004 696672748 80588653 397361656 820511112 988253195 738176243 919069634 805220735 912456140 213440070 894516554 889710874 998702423 533673751 858468487 868103537 945553026 535887714 834004245 234713116 476946967 512984617 575595418 305148350 953184471 218119124 499180864 957275461 984652578 78773697 258455381 8948008 751312690 305490082 514836570 129387003 852763333 962431240 973729860 984622880 985134242 246342318 627108309 941525676 992032596 330993258 357909052 122647819 478993890 301147013 632714100 204257754 898109919 239501095 525767646 206496765 382442193 805051534 924089139 64856326 627879575 970817190 992194728 204405406 451782481 182281478 353857551 804763553 894530869 56614575 245190395 86574935 102070356 138514242 643459099 470899313 493921664 61969205 303543753 508746411 585690022 917957452 940923675 33203203 68305661 463897058 657348107 816167408 983547891 428732728 659479527 622863978 818565533 254313377 726907709 486893966 690221370 799152337 902536991 944013851 954949485 140866670 893384190 330879439 485531450 7746891 852629565 30006974 571511847 967782561 994971248 199927471 786696542 964258302 971214939 989239361 994632862 295628397 651893355 389212982 795390714 408254986 838988230 300232644 858346981 243768732 616896605 936968850 942790826 156841427 570832623 424470737 529730320 245720495 298037654 489442329 674134930 264151126 622549548 222633838 648190872 690699565 978126181 853368384 877933800 352071206 785385175 430740613 774839905 874247601 909786775 506134080 760362239 925016243 927615516 455260537 664610925 732260000 790041082 981961115 986430344 271991933 454946278 775888344 982737706 201931317 813199634 254079043 695098009 509129763 995771260 600723825 675986571 969553469 991959735 841853090 943611950 139803675 522208072 817335031 886841029 414281067 793136131 781494395 856230486 214263725 525747406 866121504 903305913 603563617 735196137 692227282 773185262 470321447 861664912 541947373 877873849 246275184 381301540 402400531 512297054 394553124 906533179 564660271 806044074 484054904 780214691 682155334 924033270 140048482 944025541 842224449 911551715 95676430 309536263 743068272 787283318 9165130 20122418 765189400 982198354 924486956 954541033 367481636 793945480 513599218 950794299 142250546 562477446 368969058 442345509 633527153 925193810 296172154 406981934 965505687 986757661 15344955 260346463 62148265 729474351 805578277 922345977 327377287 748426877 501360375 776931685 894978706 984590401 79699377 150797796 653007178 836583850 325195217 726866974 511468738 855811577 318420930 915458965 558038831 709995275 308394018 722989694 382500625 746356064 550951066 894478323 803468888 889273212 650453511 772148889 851907540 973422632 528416436 728673330 830273546 918912197 158339385 631623388 737926240 983568566 278628852 847500798 737682326 753457364 393640816 624602768 374028774 543764643 929066246 955635623 283798392 524062538 178877566 269464844 711440332 747091298 945753365 973839674 695240641 720802596 841751367 863227790 98148532 784553104 99543010 165797342 811679217 914588725 713026350 852011790 372771342 611451766 695946179 723863304 70458645 932443929 274488499 292056997 428018978 829249267 864763804 921671038 843873661 856502305 639650853 664190990 374065022 665762996 954699226 968833318 531523582 753228586 155488093 984671646 174464789 447442857 910946725 922409481 441526071 988584840 118030767 179004802 573079561 768047398 743883717 815704763 830452655 865144027 818104495 962070828 660599618 666822547 203572512 948791628 434363414 822398755 158543935 602753455 724734833 839567471 519055225 564938765 844561051 928946678 608498977 954632237 82666514 881159642 921435071 991803384 234838939 462209111 724234539 992284042 583638747 835710952 476833442 585059379 988199886 994673146 901525823 958760965 376544548 601775973 531279468 542555337 794492116 925254537 727061072 757034279 608112670 965009369 809926994 849301745 439615397 929884329 186269904 649354296 736795769 952561752 294922499 455121917 568853884 590818641 361248900 699021470 955985106 979585631 746338063 860163838 468344375 954814463 962059806 998859206 534922800 627766156 197630935 507699048 728708103 973931605 26394734 960871913 943456809 977972036 259917565 384252226 105450347 682368359 454038042 515829005 265201143 905758306 735620143 981248314 601437679 748276784 122787623 273572575 212941274 488595244 618095030 693524029 105015899 424025434 140535143 755529380 779639089 884728290 629125573 870291624 155265804 822377778 101177013 516474913 841258537 906102496 535747628 831503899 526701945 568011121 561259472 746614272 876943320 991505196 768551374 972156220 721987769 973234641 425451990 853129071 783210610 976984783 623999472 700239780 344699605 730995648 747943322 838521216 709036659 727001235 594112230 819587958 985149426 994362407 464269451 807955395 971741866 984726459 338548976 923122155 267089411 643350996 100220582 382785700 278491040 459570427 785118791 788829911 825057397 827922682 856955841 938147197 725309220 933154827 419774526 792389153 217691617 587929310 510023265 598559692 721080149 953179609 102046062 372261282 842442530 903312772 360561484 720378761 323700340 877182771 451310356 732018766 487561160 858769007 316404147 809591762 656071102 746685440 652179197 835308648 738113728 751155913 993743752 996401472 976446354 990782777 464480224 724382531 760041276 834721056 926199940 950679899 806247257 900579669 850258176 986882959 328352019 538660192 925197558 972241395 84472282 323838684 629982335 787449743 859439380 922234561 217718405 453962893 642860570 939683481 494011227 826219840 173648649 451201914 150362652 392168311 672930516 726520430 91018384 733102973 238604181 634244638 294976996 374133016 963893615 975377464 189017048 642498949 837450568 917008345 413462964 918553352 536202222 634576415 795577167 882645982 454258542 592837494 691965989 832127965 255079576 672843974 829850199 953287980 91777387 445465511 252692081 272487578 443398960 448845704 505061584 630697074 752681629 925095271 746871791 857422990 895593786 952890913 385340 274682226 221586305 836516124 618023303 850996226 49359529 292817234 130992873 583237031 570094746 869503324 263524567 856297233 696612787 717883086 260355866 685126089 725955997 875692698 347308319 891815966 983044153 986590718 475141932 966784138 981473495 996647347 371118749 411232924 323704347 744690850 929587578 982921280 157554965 255130312 861817603 948446402 767437448 988819685 479875230 751845404 560461224 814439552 156955622 528131109 949746249 996056043 861532455 923996994 381901631 589052531 965052563 983307130 553059010 674177008 594422081 821028078 593242811 608385539 553131449 596390717 567337132 948676558 591571939 654398344 971797230 984599442 340482761 658220686 630449835 729497028 955508227 982950734 142499797 899649487 893018222 987852369 798974033 905018913 341978196 780906726 132382701 740469125 204723586 738208920 140206553 742177962 181125222 595747642 763688652 921936335 226486985 663522194 25122724 113655608 692949035 886186193 531164502 785913927 393637940 987181930 201373692 273949080 629246495 866465964 246067967 835483164 104942940 451439052 479447147 899014674 920482833 951878156 788545437 937801216 495728117 686685504 230749128 450315218 628652740 669207397 507842923 891286036 96167037 785255311 856186648 949989723 615568280 990758024 252963225 854650043 888032866 907112898 805419790 917723517 696333999 966732417 655835369 781242303 671443972 957862686 858347825 993972941 31843302 633364068 583718316 651775955 895040566 952711200 699824601 822046142 907268717 912743474 446615641 476098826 17638669 901297960 975660427 981427666 597203611 626653012 408781335 949218962 632494209 901555277 329603751 617738315 829139588 839524818 629285882 960292959 929460349 978313563 911123789 974308909 220819503 675737619 265239461 330694872 421415600 882856438 354006663 688287288 887372287 950670871 10128686 562876120 313886302 769262257 654342880 873520338 238421449 853216376 221226093 271520605 906460247 998565578 426111043 971079492 944848915 991120224 464785780 996455498 359353675 573319117 177416715 678161919 22684388 445868840 158877561 679739751 828177018 836882913 437534838 919884244 745548136 990989369 954712593 963811336 293056344 850694052 239549199 695056444 969032616 991530199 135986922 362401517 873079606 879220793 555268588 786349428 296357468 998043553 35103085 127985169 693679866 697940965 270312102 422759678 426416527 477961386 720294805 980043538 588645341 888070029 186562886 435642428 866029856 957253393 278379677 352005339 443061 778526390 892669145 939765308 519856813 847025703 337519016 718883122 957230681 968741751 130963902 948999007 636541849 701304752 285473214 442712907 933320689 949062492 949445093 968340353 643410496 786847552 192109966 955787083 839558342 869848178 816204042 965695715 533797850 889325297 230609206 315728554 632173408 669781552 95119888 318804813 74764904 682219546 441259165 448433811 301859008 725370565 495081806 535881752 628697240 959062339 681150691 792085850 462552537 579833336 340329390 557783964 253864635 959091881 948064431 979474568 981780121 990933727 254605194 385972377 396131159 421929488 330692850 834815467 854150090 919111778 461275986 855595462 601065232 832085848 281433584 578861962 595724902 648639771 360912759 949235286 336422309 842439286 505331247 554774762 244711130 443703680 832677017 855292990 642852656 793518609 765101993 836515344 305630810 912171955 708435524 873421923 557631079 964354316 139537022 246024835 728892560 991398680 777338098 913561804 554929024 987505497 355787694 450500596 741710491 791058689 402958565 811359785 340892595 380678139 754561245 980084950 394545527 662661833 463447622 796828140 842602053 973135121 152922710 310288152 482646513 492573255 361317183 730003204 938149351 992861219 169775310 671807953 202108877 476019210 804191057 923119934 531064881 963250602 691209519 756037332 662591118 985554456 789536668 978179516 460707615 619666198 586531272 600346136 231440494 398212651 6871008 486601868 31448161 252184973 197776003 854936304 336339644 672109420 916970966 994994191 56643935 400919578 11533238 48305305 140932283 911617415 867830395 877275216 667592127 723079703 847821662 883341111 619586201 961160642 405288986 676359837 944368022 946699259 123264087 997174989 380161721 423458271 409995370 835804786 262027989 599260475 279172119 542055712 952383290 981270544 928351738 993429447 3041236 293391775 623054932 727355888 534951724 939178818 560168546 693894758 368631137 548256497 949662130 952437686 758531425 987084523 514906263 719743192 172290532 259849337 103307330 980527142 456692532 584222405 434598991 541226520 974549097 991423789 278496028 395083286 599273076 737170968 444368631 914815199 529849580 693413036 82173950 274612100 108567214 249537081 777847936 826821717 173522350 207592613 697475078 770442396 373645329 619691394 116092861 357073049 691281906 845084133 625364786 705716529 429481447 860104370 162725162 557630116 555351036 824142188 251987506 949420733 933887479 981605488 853189964 942547023 441371517 999197776 43272309 802147941 873477627 990046903 619820493 876921070 496779734 548524502 330732314 773276343 963252247 965911618 43975863 593020904 960102700 967538122 545407669 758559103 606348335 713572391 334523243 570710352 374786170 631263656 231086284 726357192 320443999 890949266 416750629 444503385 948422647 951401503 457660984 830640957 682549074 770360030 112981675 781962703 490079859 748907963 458673407 712731400 121913721 967627888 336597177 918150996 892863504 987150386 345695465 910905924 795609213 992231883 596989536 762236632 886547391 977676042 931809501 936850148 244938442 484608347 265865770 645067144 424018233 748172737 259832676 489817489 107066550 961089642 292085370 970834235 746621002 805011465 990776362 994510519 3986875 195048965 141060729 358470626 227212313 285504397 959540260 980043586 289965602 717439857 337644607 563153958 200984344 794276460 325604995 379726459 1845773 961070475 544539410 982693125 61766547 447515985 571374732 897192560 195702605 274016741 727726883 926511064 790003626 851465682 392628510 509337149 628284781 710055904 288264609 891673240 639550849 645524889 823686449 870438462 22730957 635227382 959168947 997856059 403841792 533556387 632785010 672550891 770741166 844836932 911919554 915775383 60183460 76405604 261504682 779223516 650200965 690256186 505694138 899277839 147323039 279657732 99121602 228443912 385757815 562617262 340079642 928248541 641318901 765689621 307187050 731763351 927763565 961595497 91882686 471001176 903598067 905330617 874870280 902702380 68462035 664788830 227150009 313185777 188263527 562194168 61824821 655695267 527849750 949964568 937930645 956259634 852642720 989419064 587392986 961282295 368037988 446597321 436866932 637327007 658651242 714377662 641695404 849072674 528648161 663940265 334542016 797173370 837794012 980342885 563164217 654415937 881945419 941175417 745622698 870993082 536382370 691245625 674062688 784088623 772531418 874566860 757833070 906356084 624727901 931730698 370951836 826159845 76158278 997336552 823989748 954373089 83062796 768361826 51850714 772421052 325676448 782969103 704434784 794822456 238668420 250528952 264795071 449955630 960682330 963297687 781725517 975241254 202311252 419267441 399672983 554283293 637873430 800421030 65597234 961324016 439131162 495597379 52315893 285525891 499181027 924499808 944855372 984942148 280698171 734847200 926271932 960769470 585484245 901375160 573196853 605158761 45106503 750513789 433834057 675696410 226658819 291327720 616425802 677236320 125777218 554129263 976663546 981983314 241031716 288066587 51675632 319615433 641907065 931432428 478644216 992329892 243062083 614136135 489400981 762545597 890409650 910278919 64330268 512387418 214837793 852844014 672414297 825513081 813219126 937199778 737542676 747498847 822840765 862611612 619442079 792657186 126465457 636316288 587235753 711887136 164381224 474046634 770072042 854819685 982417386 994216803 850154088 987475699 4809692 725214236 158113187 521564288 427160751 603274634 2800962 122844258 610082233 719685380 97497398 710719103 292567217 901337843 89039898 503926377 859043943 879480055 478211343 588277179 820482036 911168746 585086300 936433009 633473629 671286533 173431768 544244138 766820948 814882210 397013725 951354789 558793904 908037780 875610302 947193676 606007534 704165949 678388410 784947431 856945618 983319111 711468221 806422121 24809041 311004005 559794969 809010796 331247856 951463555 235927612 339434308 656214930 867974711 351060545 824058435 629448103 670423367 798990648 992404662 564169745 643972997 934218787 948429368 496072016 939973496 990327577 991827390 187947476 789200411 43709796 870583635 853508675 899373608 327625992 971535381 947305473 962500811 754025337 983770589 769221303 913691013 477880596 758301429 725180819 888745743 443541733 934478512 423803042 737157032 222900336 255182228 630688878 748745339 428669140 624290238 673918126 820496189 211660178 687475942 257759371 647911072 320975016 759945056 414190946 904907561 26333350 119968837 567628833 630069232 319636650 429989977 367587960 482305964 959202685 978070161 539653073 969809608 442246985 750229320 831356336 993819525 757472249 829728396 186369450 274683987 415747674 740963622 640645544 757863621 701060321 856276372 853228160 869478226 816132406 987617660 28393554 457909482 593993126 687433991 187047001 223338899 469895648 698015074 607595917 884363614 669386643 722032643 663608744 845252980 709591154 888680699 403199943 971087875 806482927 927731316 287220369 423318405 700146145 871710153 183206432 309225852 241420961 942688620 869720730 899972395 565685305 743477510 960587807 972035041 818331541 914380271 77547246 455400204 405081767 655240226 752314167 835178025 578513162 716241167 651180609 893076214 317039202 862473460 576431732 649250995 645742515 652260500 754984144 796797654 234353998 580103939 374472519 538456972 12633715 135634175 355401733 464661621 413803099 528013886 629811987 684960203 314896548 881519901 315743505 455301802 778029639 961423185 182632303 662332310 809843363 945134628 510915646 778404539 940749932 942464861 462270237 605969063 517819418 630724361 440785686 865726079 270036336 336432660 31656251 545543360 19771783 61154023 797724847 921998405 515585950 972537418 141801682 773857988 54956191 249289305 988054595 991773338 730646756 886262299 491400321 949728990 196288447 362769819 453335605 641499025 755988889 756769616 123219940 456174322 311895734 907091874 737119375 949402912 947705909 968908554 198758635 232619366 444721903 753702476 478897028 668465374 869859348 891078011 66069737 316914204 528075701 790991093 668151857 992799490 17988762 896730089 672385069 816702974 860026133 909990628 169531506 380629128 895250772 929737216 956627537 968667854 978392334 983651993 211961950 937240337 800254707 805595319 333971666 847178783 240748433 264082480 445801096 783070097 156051538 904313650 375405546 635359933 845050006 891016247 178262272 970592289 336274271 751842337 957490973 985796423 370934900 549245403 681244074 900784682 205299442 243815375 887862422 997169937 799527886 801018253 874108900 993752739 957068888 973054714 597304278 886917998 971586622 994742783 673010846 941228886 783352891 859677083 295806120 773922006 433704096 859115810 644434976 953908024 972824003 982605001 408697037 890696927 176542840 819611984 335017534 679153149 975760682 986392866 209218623 295618384 525022371 909846526 718859280 925239471 43827420 835277816 351953245 389973642 813268542 914572931 705832919 739791372 80535735 623519346 699980249 846923098 501576965 974180627 94645402 687204971 219275356 899059992 16634811 941003862 104735431 804939486 525822663 802947982 992421685 994904848 802519366 954983223 731105505 856452925 831067824 944741238 641511963 853562253 276437230 370914609 900063674 984061704 291455544 490235132 463858592 720929949 428039659 768516944 657043424 714121234 323131879 512989323 676152533 863992813 860091326 885445610 219137053 467137559 472681592 753191837 55329373 940397807 108300159 701877070 385562386 593504401 721740243 806824315 967608662 977999824 624002189 852919023 848033152 862904243 168937716 582690742 898514080 946149688 743665062 911169375 47948239 966459085 184604564 295222808 465109273 697226700 70051154 659360478 84997088 427970521 235375958 680320812 773731088 827674626 816081478 878351779 957481386 990166668 80017094 703251546 712954206 963921695 731309194 873649979 29802191 955287783 362689336 881607223 712906939 822693169 221912586 607224862 313060540 826177060 54146068 879847034 285613454 614688350 609109790 683664483 380570451 891814800 325466264 961624147 631810799 900978905 14160227 934152296 268832540 968031433 348703562 855531668 758851354 921645188 95235929 620596176 405313863 732098831 322405264 986487812 458948677 539983767 293994922 708973303 980159658 994091495 757562359 818841411 28502907 126644762 266868630 375723230 519982081 846390080 118811215 174366774 620795434 886776961 130265369 582316779 619526330 881967007 525677131 937536054 442063517 700457423 235998444 782421043 311967509 563092838 372216303 921390791 583117684 756174417 967027023 977104419 158392657 583484380 700691059 985669037 906660290 930672935 982948139 998351260 704520609 989445454 540625203 773119602 346087759 839010862 945159147 945917247 943018627 975270359 705954237 896164524 597064987 919464478 757721053 943998145 706372391 926075777 622965357 854035173 56802771 716311148 395473929 482377243 689342830 892979027 171013536 519707732 644042813 694824809 216703107 720014286 114863723 254231283 361360190 950495952 954755388 986033816 164613146 962784793 189502902 913367439 249760472 347832942 779463102 938122541 321314205 432516153 750929189 859355554 163083739 491375672 363830031 532681589 242743428 580428138 41533232 636321757 43256469 891085391 630842622 958165443 567154605 679682514 620126987 651564040 358899341 559575226 926392879 953726427 165085356 924051178 758063916 822576861 609534995 912718041 404824180 906309923 874987703 896136583 729364314 876066234 854870239 944945634 871526602 898031196 610971882 957075991 123888414 340502012 955165537 958415483 973239196 993748720 418927185 990278387 356697199 633881231 634542234 699633403 975008764 977204309 1121249 671350449 224121173 360036567 753116210 929630899 428122282 988523318 665275269 739111646 379137742 478003506 193958937 255888143 67668739 757156301 612875022 744908499 858998685 954624898 781769773 839795253 877673634 946491265 807158040 941118820 260036653 548816921 781414729 842990960 96146116 695178257 848149658 873189955 573014283 641474323 708667409 884449770 512544433 572554927 405547664 595072987 43895886 565874833 78260048 773235460 825105255 834825009 963598768 992527214 452822414 749972513 376448085 787209856 379459806 997218527 389748769 654953079 627599510 862924753 62104611 635294569 345945379 681176230 475990370 960205573 858051941 964101350 817550406 978051157 755820693 938796350 3950646 858377744 541400775 923290582 505564310 623689183 428997601 692431581 597381537 808391663 558706388 798077011 42026594 281935519 225801754 328803518 149050557 621612901 889582273 938786132 721105452 929468135 692776826 869249363 656023796 875549476 264458686 917373976 135233563 389179155 762309631 886348117 121138727 402264606 931618416 937916656 469538623 666290450 648932282 743945412 249567365 261620181 529726316 691434861 719073668 902115666 59610792 866336721 627185436 768758051 412264820 714551034 448110091 758239707 915946160 953603154 159394744 786009258 363583884 507944209 693679760 811613419 370824776 906296936 178131499 740883170 418398334 516941514 983165738 996752429 146052994 516152330 890855549 912066735 547283932 675190575 201318918 617210348 615370577 729561155 114872419 124934005 124027496 184602188 22925533 612198690 511791888 879818061 678294420 899247218 864278758 975912997 260669795 946418802 737250967 923484076 55605507 112654520 247421719 597784803 868419800 960416795 222424483 508730822 292223153 369125260 51489110 191805070 607220982 919570175 314064411 590743466 138542703 401664527 192629024 257457608 449967567 691975392 288967946 542056898 250935585 816683841 800904945 918890335 384392468 505273964 882759347 992478625 982830105 984503788 682270300 926115465 400544406 986232460 208798618 394862610 812667456 997674590 735573724 799349246 175146781 255793048 298866707 651714978 818582761 963508449 824244847 920722099 46659272 995550374 549121618 642492460 798073986 820101557 341982266 881111873 993736991 994236049 140257140 376463435 827952339 994837402 577511332 777056790 589457773 814360419 754766245 824235061 765607787 987118023 512665392 533734275 520366643 531814819 36837090 663890336 625765049 877787795 92046838 496620864 665075451 864324300 666143781 727732369 425872267 632442193 608036950 756659290 24552810 878660282 531739091 914776072 183277390 611592787 940416873 994700755 368389423 536187956 50794473 542980927 468358956 651562096 524315279 890361278 169977216 666290883 99867412 819681642 546534505 702741125 917247822 985841729 335130005 344394831 429487834 672715417 834363950 999390967 850514892 993431767 783633397 931890364 351273348 578492857 649400715 708984236 670230866 774354820 731651448 869191454 661108084 860243120 32049117 121633884 315654650 326673565 672840563 982000083 640816393 855262449 413313482 925197148 46384886 314175576 891091266 935728077 975656980 975700418 162146430 903914278 25887761 444019445 898272648 937153556 811506104 861636673 983080320 991554925 562536412 741164474 828929164 987219544 868578827 914892104 762580903 922435860 942552457 973092015 872015028 873329097 235245582 795254916 201824144 418449766 103421356 921108925 835832633 975699222 243869701 658938969 791078648 955901229 62210580 370910640 396439511 853552042 594890007 892673729 3631541 230612681 12881681 894467474 598042227 838378742 526913506 754539854 846793221 959088818 78975222 977493509 791474327 907341729 229026638 906055600 45460594 349082943 591559381 607111328 626016721 903578390 994348908 998464760 225592520 405167104 253999171 453208652 822752105 924775207 125346774 949293588 38185872 144117628 97612752 183678369 181159717 771328336 176555580 349117073 182071463 590140820 129405613 566121248 310836111 353932291 198397496 796876295 802319495 898494542 79770642 701389819 294391761 311126747 45132789 529791854 69277586 826952432 340378484 552394678 846989063 921280390 83012146 716695146 366721622 755524445 678173873 975131164 880777779 964078694 594262318 666458530 39638061 528402801 681811348 717743143 359861729 645859581 950064406 950945452 39099577 913521473 249967906 346950346 202479422 253625877 96459046 122584811 108099831 620760162 278961653 420753542 49447378 172139885 257108733 972445470 128762745 636964266 44617931 521150252 765999547 969579952 519776834 744670036 575776069 789693684 493582008 979736041 875972534 991917955 551309516 881882466 274481083 612872960 512433691 651065109 674927213 958798493 275522804 520300601 696000158 782728048 156757257 671591191 904553649 923448027 61657038 722620858 194510438 888952896 661894146 778349351 304102640 497194605 884842815 975866857 452394238 718489219 761832550 818342314 102578836 981661167 840386353 991765115 653571439 750919855 540018162 805973915 21714043 765612023 717161871 744753497 854940674 876127773 222384074 576990661 981822233 997089699 997155906 998446567 762058327 855582457 798208992 903348707 936192001 993582375 645315707 650150007 715025619 985088334 760205889 955384045 782867895 908417777 130993739 544096841 859148849 948995527 228838177 825627653 466864195 580138182 710897396 716316165 412530394 459542963 266424033 662660261 978501415 982121963 108697097 459863386 728839491 732875337 681515453 709239775 149753040 188379691 200023610 772144791 514172872 856838617 738994225 877568901 37570078 573934424 558738429 955417009 673915457 928306878 141318536 644065503 858849825 867208081 582932701 909514827 553161882 669747774 291079700 872571280 233441265 874447914 202777855 227616984 24973153 777813401 781569239 785907856 37877282 859713102 100444831 771757427 651527245 954016178 817089739 956584567 410593093 810933675 996995573 999347100 433660825 882814510 208597055 594936820 659930137 864425942 300458813 898945768 583436369 782370166 897130491 982459586 263822908 358377125 436713810 537021855 74181058 873039096 316053599 591233185 944802177 954940108 810496670 833050008 208178061 399529837 395800431 882772371 760405309 814585985 266049976 341740207 56305019 67727061 472053573 565390963 569864931 688937268 728904323 850434747 788508879 903823178 263153753 476429819 788019554 957290920 938046925 963523868 326028238 411387835 658450142 795016360 143538762 783935082 141824254 574653014 618063115 786548213 471891550 706603047 96376183 482944772 151450800 227283445 533684887 601471808 287083791 957881857 2857973 572774875 937693926 990008407 175948958 497361224 601569783 712484444 208445597 330595801 141060827 511888833 487263884 605737662 146952927 365669343 294081946 663337885 17379149 503089558 781511469 806853367 675293954 817117437 568782336 587546828 605669560 723153242 639270231 847655084 606666135 676858751 888159136 946308987 764506138 849887311 174456487 586907097 520663319 579710664 576922071 679876839 226434251 882846347 775478969 922682774 773174907 981443577 432157349 609926406 163188632 487230934 975729177 983023045 814090137 926876797 513795217 876465484 161174984 337164525 42507292 776072252 525038300 566214063 499315393 794116494 660663490 843399351 759984791 969306873 389951257 970405073 466127912 895832095 266673567 583195419 991327569 996557464 125608108 128992253 615639748 653572460 760739347 841839789 419340995 820997634 297559339 811110491 738988350 926748323 987074540 997502959 501836234 634480725 505047327 838484001 124643950 442214427 954867285 994384834 486655473 655857311 456441513 888000626 37518289 934653574 544490452 569409947 708039013 739776664 436973765 919270511 583845905 764489736 980850544 998323490 491126347 820877270 146316481 402226154 298712751 761472414 870124689 896557418 899777826 988864463 811663192 949809086 752824835 763640361 872659453 881362062 745725807 940422790 80981548 647359233 775392145 996936718 905005207 909445402 293993287 445194715 630530101 726606879 310226542 571346098 310878899 348244366 168313428 543328676 292553705 676638805 225639831 765995386 187878775 464777486 673052268 794745383 847583218 900813676 874371422 977216977 104763647 813027414 987040243 994303739 905229345 933557477 1646738 188882112 376055051 498089983 965228160 975379629 89451696 661503797 592740640 911208697 753540256 872551744 416867745 901842927 182939097 303309566 153593175 512704364 375776375 378105286 207158543 881834129 119201576 227737174 513170318 891733164 888384277 899471640 443162256 970251256 578380521 784986243 752511253 862665486 917707664 970798596 97895801 333798746 288932647 624492385 491811234 640605647 288878512 806702033 210330777 689414720 44847669 737460512 261577157 580093709 243287339 839061436 328369632 723194385 241337348 395569749 413576187 974957998 440208626 655655716 83203456 543695291 997884358 999124575 551362193 581336603 86040108 101917111 140572555 771143923 64633761 702449870 482033847 861857334 652007718 682178371 372510358 630277893 996296331 997084078 461723359 932836539 730431764 953660109 24289539 850762947 889867154 997409516 92210475 722677495 28262868 640327501 221896561 717661442 116794173 897188916 461845006 483510108 47326949 537885962 726505449 799198261 448606122 643480555 974528813 979334769 816240733 943735232 684081187 871002368 129937448 884501194 986929981 996940405 622880864 773253549 606635917 703521584 941319521 969752831 562609964 821315859 826044185 855550764 411130639 557089583 976163297 986079337 162731967 456961962 951178463 951466998 263597837 779767257 629376543 983885065 573264183 837749942 371758368 678258005 442690469 586949560 855666025 967307639 216530384 703564534 192882120 709318372 981397533 998917514 798537150 933977545 273544618 959204860 319709926 404530225 48900551 996702006 578670131 943228092 130374487 835457769 240109954 528000072 508206282 761219747 938742149 998823485 23786475 879327449 988718776 991216629 663341479 985485673 44979451 609230099 883401100 968650861 238360465 493494734 78677855 822238100 544213808 906810972 596720854 797426919 563545531 591744885 721619307 723764376 612927837 704737971 376468919 857009818 240468380 585580353 812276482 820401360 384723984 512083389 712111664 764514137 183518888 374930353 631064641 654864651 292843847 943018628 627815830 678857651 578419179 993230996 153750827 883524480 991519012 995429285 715844809 979689431 941949262 988623135 858913245 921845778 581466557 640962301 38179889 959290923 383684169 455322449 561580176 640585243 723417692 834727608 79321735 738868150 370406587 514963715 973538396 986504726 544043565 821388420 148980267 415426977 408185426 723693319 626387447 831133798 347923645 625584035 479800482 985178544 980531269 996756510 198871119 578394236 527830292 985208034 949215476 988413062 683168482 902655734 303590038 566103037 184810047 602197401 473088446 597288348 52994273 418964925 724066887 743815908 18182713 365734796 415778058 518758474 876438602 891375566 902703692 916046006 263304714 714291350 400334717 404336728 184171086 862208285 627530598 780921627 10636673 700713840 251336532 562646915 367595437 785068861 44802809 483818102 459749456 852932874 131933648 557704457 367694143 573806477 607237463 819122042 701631185 929827578 899904470 977816221 500988493 594549513 124446245 795550774 969762058 979293505 543152559 884502851 544274600 779701475 405093949 664345387 314610568 821759714 308420476 328255378 368274176 706549680 795175503 951226158 110141486 864430644 434504464 579141042 15108142 87907701 140854647 393404492 95279212 555773403 485842258 554636665 847144396 913422054 777964815 925043521 909203601 967273419 283305788 584700271 937971408 951868776 503115454 524634635 555749096 724626426 489929744 840600091 580372112 929354338 491678973 983304290 347146134 925851945 2628408 592032503 554134384 978851397 356551193 570204739 380297306 717280109 902291932 952044085 58197576 812774412 979759684 997237711 288547167 350714465 917042282 995224927 110406787 624824821 518153581 714663779 564985412 874957348 562865098 804014317 623434281 793118966 192238144 332416408 100390872 641218288 701328741 706607677 100596601 180043350 355277765 481449366 40113411 766945511 663947360 845337655 308175036 533743985 906226363 984745308 969562392 996760616 417502501 914291222 781412919 934259553 633016226 874513877 739332599 948524302 781999386 987536194 167863624 570932056 894495701 913805660 231112061 990646784 106007440 294905334 601686444 833496200 288376729 493666838 776546674 981353766 160930569 832783918 731907879 951187317 379655448 519828341 229900866 835391616 671738340 943761368 758248044 938171898 612802822 621196770 988820066 992693353 959575435 959844233 332218970 925246590 730854205 751908424 613690243 735629385 37645504 907745142 941856705 942025681 988709245 993782140 380742200 393024028 400073770 820310852 963891822 964925927 46514287 816069056 48990038 220595786 4398446 770883980 158562481 316699568 692829509 967847213 898210547 919774788 11014805 552346678 605582399 827647719 43346848 367148652 402252825 888934480 490529577 653459339 126105619 863960081 872720808 900555218 513579618 746295360 431049188 809044570 551635520 690344958 692802104 731445152 514744131 748223357 300667871 698839093 569057128 941039066 141141435 157625996 76957848 514870032 168611777 231541232 151729355 185600476 660430054 967538920 740388647 871965916 459153906 899885215 988869377 994545230 333349931 997902128 463527919 650961934 490215219 658734801 874537831 970094128 801915943 823587003 754207754 930748486 345076290 406157579 735799600 920045767 752763885 912678584 93329367 506857160 812859692 928482347 147783318 609730084 196816323 434494006 629844527 990507656 684292114 853898263 381591520 805325473 89865548 453260972 789843511 977258548 978427533 980505946 801653917 976649183 918850781 985071668 413545668 678688954 133686316 759803362 160889809 840086102 758587382 837040230 582649124 613762882 907973941 943485653 344317924 599198850 682985031 844293968 572892633 783755488 9238943 964745157 799635222 876785550 239810343 937147890 174727329 971155387 140681088 352268449 683784592 807811248 495084313 679833201 202201563 639267443 176154590 277430207 688027539 799865775 241160143 396931286 910841668 925572026 672518338 863973073 238498989 423293605 752141749 953153998 666652841 876827532 434256200 571384122 769164271 972980900 983223261 984978956 335883884 409896227 682374542 906905097 970836519 976186367 799460057 849509116 594201323 598160986 147716993 667912851 124979189 800163340 656994779 786163159 748152007 818474615 701751832 956440228 58016864 489259525 363711918 917482343 253845307 605586676 925486356 988349063 127181212 543834375 674668416 884479189 360871710 558388277 626932678 809511353 454636512 753146085 270686226 970855061 325491386 956941691 307988402 603256655 800379235 963703358 998307899 998962899 488552524 501164144 760898026 933829724 340178321 496141643 72362548 332403165 246538468 536524832 263212126 565218631 444351472 925659767 285670934 907374600 87094607 862171089 189644545 616797382 988660912 991813802 386413724 649228397 342135304 405188820 860704246 928105145 981520405 988029417 893245802 916576823 896373650 951272584 589769574 964769676 65973487 221852538 935230890 952736050 795094307 905238925 331129744 992062197 131748357 429029864 478652075 872519678 153721235 225361607 418694569 550310903 912677045 918600406 259649797 309488125 643782265 921902945 750792915 757366733 870940867 887066723 497862994 948627014 180648376 581073994 327242456 616033170 65569017 981077340 916936128 942383695 922689373 927182605 593187872 664886484 259775900 401851941 331723572 499147034 591098231 871644080 299085520 627218433 813136977 836322960 706395629 938244444 406808411 595506238 5091690 822225437 788182683 936362059 736449743 784745953 52971816 827470637 457511834 647559874 730984043 879053174 515651353 907999441 899318798 998419054 170131829 892605517 348736110 479654546 902342261 926266229 2437614 487063310 22535414 561250893 653801163 954001889 159675978 745364458 916489344 925251163 164919837 828912226 834281014 864831635 912554314 967025114 394847663 548700380 464319908 494241882 899968741 939359273 114951402 700652742 504553919 590317833 946484787 974869529 303211866 521071923 578806427 843193278 857243789 911199327 926230949 965838624 179422171 285632359 439869293 729683030 14239680 451017021 202961944 901889354 451572804 747044480 64704559 227602797 122545060 363489540 607080497 984443543 307960087 329733186 815148954 875680517 384971518 449026186 900410732 994507851 497933883 847358286 440146909 706422413 507559841 643629490 369404014 994359158 535531519 832405692 436460944 720450853 64812464 188834077 635447102 784999098 477741574 553174172 526113420 888091822 218368116 658854092 402394960 608333563 543839889 594481267 178188670 499943680 748077419 826434793 627637699 696701113 664619230 948450112 554867321 569227291 794722818 941713671 655809032 930207047 494795237 710280578 326120036 969673686 176762564 831570476 508180346 559564208 944039131 945388012 507741819 833267257 291449883 555234813 391845665 593366636 650930314 735976378 820465990 960608773 858762314 952647642 582297556 726434823 215063242 654910735 833021088 894794954 83286939 810047665 480598664 911895280 994328733 995742742 161781235 796398505 396138585 588019146 379517360 706692554 763136962 792353248 830254682 972521776 667104575 756165678 640068008 662116453 130137515 168912980 739354022 969824126 462276856 535398596 808717611 897159712 444391789 613902715 16710639 975357396 39282686 104362166 622384101 977347270 922938715 965269803 893857719 898547825 320632202 761239979 734398737 945740273 68362810 397837972 800892881 835364091 160944612 553134552 887359408 986931099 567305263 881209894 614732076 796440860 324361302 719896267 652090516 840000273 139026533 777418378 51583519 568302819 938290451 989303389 552095008 884797389 948534247 948572342 321162148 885128021 154285235 465948595 656821089 836532117 79044532 978957644 426568814 804914558 440679443 751306877 303115604 538254974 801487689 918588974 987023220 998806693 821115341 895659795 216032054 700060852 263815384 778231380 927880092 931050076 816989045 901974239 533283346 640793870 441616838 706250907 347558706 969624252 774953868 811260375 778472417 857819181 835089410 947164042 474188945 992560560 295922640 524760140 247943526 676699528 337628571 758094465 110029406 353659866 193628074 848739755 649621412 906372300 70193465 816215065 813516999 857518680 563960280 931648492 176906211 524003847 700546690 938137831 499568734 811662038 713942914 977867783 736144243 833056595 999682 379660277 962502145 963152634 729836323 947745024 318711297 956554879 228528475 403845142 722326090 926640626 902819264 980841502 81792139 907821101 526140928 977592435 785619265 974344144 994428689 995963852 334109997 858248403 849376334 999088359 866150957 917365358 749817045 752566323 950612047 974872920 13238200 644228782 891120219 903306762 491783276 869789489 594936808 923940643 149001506 926707566 407870853 659332791 256198320 882725081 467984653 888956549 589822366 905361152 897689824 998524104 698390807 882933561 908202782 910954274 256172003 756235392 573102276 899010391 859620898 884097947 252745164 381871150 993994939 998550942 701864505 842139342 480277548 499402187 785600961 981341985 800729149 983719280 189214079 286734343 613962700 797431834 695837271 737896867 272253085 759288970 413072077 837954271 935323163 956378161 622470564 682328192 686650211 772348621 696103953 945674946 384078787 717473392 240349259 568256456 918451799 934733045 21350336 765085029 174774019 473333446 623706445 971907291 987918353 997037006 791863373 864828246 564989180 670749776 460670358 957672938 634669534 844663848 424188044 963161311 10422464 741643248 683978502 852968465 353069153 477427615 840971443 928339072 285658224 967177507 289241432 942846712 290084155 960216314 569842615 590186109 140522492 187557107 291769471 997301100 299048328 800210427 375969732 600188492 762610344 821995445 745200207 941382881 231108904 883840655 471882733 711278110 265298062 271776095 277355258 765356118 567645097 581342218 779964022 839026353 985693624 992949106 745978076 889069196 809914534 856792234 740748809 774624029 220391123 690587390 256365215 455112785 858098101 882229850 998438370 998465744 362232814 402499913 865535231 897683789 284426088 962146002 76936501 886321990 107427874 422113699 44135463 642136421 539363676 726695716 975494138 979748948 212425494 241028062 513701139 564008308 835593509 903972987 509201485 624134557 571141316 750368164 432229067 514161965 885299418 897912807 454387889 672242912 888537080 969457694 802721530 954984106 662864987 949005336 709232786 885396211 147879666 386404267 601605850 663955578 235737973 486365875 609452006 738188736 554887564 699278131 868838791 971712594 597476511 980976215 602077913 806666708 946560253 984188664 728256159 871580083 184606025 225828630 506842806 642760039 679585721 913856613 262001866 404302253 187864010 656943998 967453459 971675516 558166528 613064576 895592478 960470851 450676559 571909239 136021331 756194980 449408278 529054113 258312811 839333410 718411522 844928931 560654035 844404263 692659430 732676048 59676666 776552330 433002296 603742667 375907117 934093525 935297805 992147212 949741031 994947945 699576899 855039947 313218898 639838175 501463959 930821021 382525805 541150354 142960134 560077135 547232326 788958461 657971468 719547433 749765165 816792901 45483148 228118102 557364317 629001761 641009275 737533353 599269873 610158490 377189169 820150666 652084983 937584803 218928737 447325152 663315491 837401367 990180236 990281486 16025278 181295172 219187252 638107512 615507936 618246576 318682537 689503858 264151101 542663128 495282006 931007222 435243507 550217161 716834925 827486697 686854557 746360569 771185307 908371059 768581557 931413429 28935284 609364842 279815909 391274041 660803726 820277222 770973373 928950552 541042621 892659577 845075680 931009837 990960480 998149736 851375413 946104696 74660098 525842273 152201720 199583649 487561945 604116653 137405921 162395921 808248652 893843645 482893259 489772982 725214772 881816817 451178560 708059664 219818212 495236517 316124973 408634282 260595437 508329053 122430194 726185536 78830749 612404197 208285511 209451174 995598821 996346223 470866724 774403620 18565615 491626553 982998210 989884707 82326914 879354905 396243117 797089335 199873282 929985793 34440425 114075387 429937354 953772314 560049893 672180602 4311123 759913071 846271889 884126662 983200327 991687036 65409923 411994427 217036411 552194611 572205403 782362454 542638268 586966554 604355454 708314562 416108225 513129676 392796471 914498733 274537343 710077454 773167073 838741286 964523897 982703340 159460696 759549907 386520949 599892079 670088880 935193451 423896456 887987166 633077119 929721621 610115573 822153986 659481801 848708617 916909133 936434222 479820132 879996238 41554885 196373591 588042414 759043371 630411182 811641233 920493850 929420387 754195588 936718418 510613590 922957481 936036360 967015555 403097734 714543591 220612425 527990916 960672384 985082816 390436784 649787149 220724810 468690195 682700649 685950522 697131994 799844149 916255810 974211488 192432506 293820958 908026852 910799710 372858935 425459053 504825060 564780222 390534262 607879190 585187865 773944811 90207467 687237235 452644187 775038989 308029268 791443864 512560523 530654811 438760041 844817432 625739356 661927840 241240864 766913738 759316290 982738022 796310589 878741669 873749492 991085658 969665378 989921259 197119298 395915460 958168041 993332875 323295495 647113511 686662143 996874550 220668144 291484442 340901991 888166082 902114740 910586086 469388800 957545843 542238152 684011335 815062661 998851239 143188526 216401219 643924206 736873070 385324752 519261762 774932042 895542699 662524796 951323100 905486286 924976924 606960435 902087080 528308738 856992653 924823307 991420734 305628439 930824844 178979396 775042597 639759232 753849064 86090888 489884993 564268440 645454410 714856190 898779511 246108478 727892148 484024979 916319815 791599819 897670807 680423262 811720627 902618872 976740504 310311560 512003056 420578316 789793456 630763785 771107287 177189326 766225831 724644069 764020391 771075688 890566964 175303897 514370926 495202711 602876752 230787585 710385677 981500894 984002543 696087666 866228175 647505409 915564504 422001919 817108472 728588368 984810967 238366359 708621345 704669465 856446249 34473799 475836989 375586316 567189885 396473051 452665884 941817899 981114897 880539620 953986240 682585997 918708121 310401472 773783700 943993170 997221088 708419033 884364931 420861389 881407472 964965839 985951110 772345816 830938352 772467788 964751395 92486271 372587315 502709755 885459470 162126559 929406735 330268919 433698584 762106140 896457503 674412216 977938600 995623072 995787962 902296642 990507660 181493532 401951825 647582207 975807846 384036103 442463182 616349306 948330022 308532763 313133720 658597153 800788437 494219967 632065856 97745324 956172910 137809587 736037522 755150518 897324669 554963497 867137535 748259467 823863796 161437860 509935366 331677493 382373429 61265155 772585070 349883432 913508265 208537060 618659655 825332672 827164487 300954912 699211540 548246855 743930128 119459589 368710065 297333584 929130960 549069126 757124306 215297532 439729170 688767218 810535597 906524502 990002150 9464515 403487898 316996359 662500084 411673260 627183260 85415221 98300458 126246140 245186266 199772317 326990714 883805897 995323069 970037483 982421533 535422613 700688834 954583141 994382730 47348895 67459700 472028231 845705991 658761592 719566120 925735391 976736976 760570316 919347862 893149120 993347664 684042714 690791710 989128210 990751439 372885569 664796278 57748372 525282441 249886937 548454451 90582264 647788454 644419167 706154746 825047977 843469813 3957865 613844858 585024450 794820296 798084673 831079225 994362145 995831699 23984457 826066842 313964777 427932493 723624710 899907155 712009586 852205034 659111954 995975740 774543900 957089454 647691987 837914501 872877562 957892239 409519585 608679679 620476121 931491113 481100548 967159339 626085806 892606114 549199036 953539527 978735767 985838481 220361794 589104245 229385437 783229818 252604939 395535836 182120049 598964478 460204811 484361210 567079345 673182349 979204791 993339112 450392273 559452305 151866118 270508907 304462212 900707405 600364721 647786061 947589120 972106987 899161185 930004689 252132809 800580665 763260622 988541834 977279646 993117307 707622429 817182127 264634585 270155627 816965596 841098318 910967756 931114468 673344387 823530103 538730579 911388367 352010749 438619347 133415340 791819277 804078713 860375910 188731797 254857115 273869925 459718051 508938890 680628400 739921463 757206515 217101457 537519537 282272707 797083927 849090914 964264560 161833625 735894619 120017940 394499532 806783923 825550362 99892776 447846239 101084268 537962893 83214989 469392679 456970947 759701407 711578557 863136245 562846695 678443433 157294417 928747660 808059394 911678870 421167441 974500420 489823444 766757181 996475168 996941785 534338348 947485817 165290968 243490076 554284019 717022922 338836838 596179632 65799566 613817488 841028434 897908707 531658132 717585945 998979465 999194495 702089584 845881801 978802790 997795189 873645251 894326162 145432851 979825843 612959428 740547472 940979362 993419102 848291413 863872435 148094883 500423797 413774029 516886128 697855335 973086753 804567571 855601022 172710414 947145825 74595712 670300755 322425374 878995081 673565109 791761588 258526731 439149873 780980585 839811679 820436145 881527832 83682302 920158939 164315697 693255140 420248277 541498125 915374982 985460332 520945558 576290820 3743700 976563527 109831880 852178688 938212012 962809872 345680176 932880323 427716921 638845542 997643776 999267711 786545414 966053101 23182292 126724556 584355698 919852981 393852399 788991469 881284103 953297814 424478981 637007929 907499555 998059067 585124991 653862824 615192558 900790525 227666610 704731605 676035994 878103898 482172766 608031481 156469124 445274412 56340783 550475040 649537154 847871447 957117750 965378708 522673348 994044762 189985309 871010529 884571925 939719926 35413830 214897163 720692081 793953544 55208796 390146037 56866385 418008493 944134966 989553600 752631788 781187851 543318232 905385496 360000920 369911076 42192134 930834161 523304430 584495626 852258757 981963018 536491596 671509694 548568217 877964950 576360048 784288602 147293114 796810963 126547131 474225317 697991794 884228083 926899752 981930332 232404996 278077036 971409651 983897919 773252213 913475986 627335669 645615243 609602012 910532062 332866991 983559577 155649804 920201961 198640763 740046501 671000669 881720071 826784104 995633854 679683468 739601791 267793680 908098597 681392751 684527036 979144423 984638334 912229254 953800112 453456153 581401289 884618259 904607891 575447860 808271293 365962647 490373577 442810168 552835451 846615138 958480358 726751129 916792025 621793058 866221280 563144296 578976468 364817640 705145827 810259185 817396572 252653856 360159026 583864056 745867291 424607468 735335390 602097995 797021472 457839134 836192016 617396116 951046749 930566311 941437605 878950956 971247147 253821956 573425181 692302823 809770649 968465479 975125881 50769125 350029319 170045591 767606310 483050878 555058880 498660068 960223665 691668178 895037370 34939287 687801075 602276438 760466376 51023517 573645906 356496671 586098401 207128127 369126190 924064508 950955956 958409353 969622588 751204383 915435788 709568126 927237611 388783878 824476886 400788898 403520189 281801518 553698336 176070329 786048892 27868636 388250949 81883989 462341728 666587757 940856333 403260852 616136313 874032623 898607410 987964902 994278001 73575871 254642541 217458986 790586305 344028259 613730230 876014895 881992181 820936612 867517455 432652299 716262197 704092930 958706569 682473235 780838982 917894465 924920978 772658068 962441423 504786626 688520672 5716782 337470766 755153380 794602425 720028852 925915891 504446566 802936548 439135250 590156120 997952649 998368097 923213240 954771146 630916727 636538501 204390892 416742435 912290593 964243596 612456935 894285281 369455853 755079809 658158019 770163558 141885143 275384278 954478769 999248098 424490874 481393470 162262321 412071448 340636407 469434455 833316487 950653894 853443107 922670894 522704243 990214838 210649524 237040844 483463784 675176972 870197208 914723304 188058203 926005632 544028505 923831452 946069252 950539813 978679709 993544575 947841334 963614755 78378422 474861581 741143493 871039269 487147210 932854726 839567831 864238308 836499615 901329550 858261654 869572191 904400447 927824645 242996947 627725059 748068855 788163003 927830121 983998349 214808851 412066351 60492408 967435246 205285208 580235489 30874639 933821996 322368630 994258769 562905207 745751668 807506749 931448420 329342940 613955207 49719694 789125763 586272005 806166763 919665775 964307907 923393404 928269839 180741841 626071948 457537752 753754460 78125773 325239480 201633896 293626563 920217140 993303031 70602433 108478339 252084038 781836734 930397539 983951076 480071137 924462699 611978326 896436536 950415832 969099777 823482101 900767041 669405725 758091312 780510850 939662849 417940289 972999015 642926655 672140759 771397019 921145864 198229679 641871028 248177875 410037221 56973931 294994158 993025081 996827036 251351804 898643333 987872543 997535137 921764910 927024715 91816759 235251409 654734589 732810708 931335437 989784146 398865562 850584336 872584067 984547347 67379373 477130832 241511802 403815975 380339920 529913627 200891635 818566462 297160419 458236269 422886084 617929965 270519790 430055212 551313627 715651927 976226096 994383880 421724129 829797014 693264601 979229939 37038527 809467893 308923102 752143036 36437983 48531261 678980955 872808993 958179997 998452591 474917254 973048167 862204115 956074981 457153355 498670284 192316285 766676790 945824358 996900799 679666057 757281818 420108794 825398874 116505380 666218286 856575336 910363430 261252024 552096069 848462791 929247504 232665826 609550674 226324355 763353582 148247548 658890565 203983944 273086387 539407900 561193019 989472276 989723609 439511665 527583507 295870614 351100648 366796654 653748263 977600854 989253175 309285470 421065353 463832178 891609064 922745240 961077739 84482064 305132060 663944749 962148494 647446916 831895356 245386464 551234695 223516135 775706665 549681032 667481554 412820086 871610311 397527524 509158753 74378276 938200231 147816511 346227844 50689526 442929892 871044733 945515405 508046902 725711693 26357289 576498104 812100968 950278189 508999924 697127985 819600220 961100814 817435303 849131146 708187094 847717938 701418826 779645843 151189618 229443193 959781118 967425716 230281186 636053422 385426948 797344919 509531673 527230331 391458241 586486130 756311584 916170787 80271543 784246382 432723206 473979196 135532586 462656827 355380466 607676665 111042940 752126741 786259318 849979474 473103381 610690396 443157378 685215099 872598238 964330666 868966141 937038007 297192686 775144219 619398592 929992801 169485388 598650537 817202578 906123265 260185865 468032289 575658223 649861643 536874933 709374906 792217930 853911207 542428118 690270180 182300811 664309316 796853049 897760277 714016681 796552373 279204563 951659901 257905062 463149199 924130978 947216393 149270394 271654693 327991735 453111273 968352320 994918552 823385490 840514109 138779108 362093905 246556656 634312820 656000042 965329293 861423708 974971588 10814625 984348321 698944395 848844127 740998877 809156374 687886813 908462395 737309734 844649125 565883109 681175686 788411398 836728335 738617229 960822548 346493794 711881555 169705305 639397148 232433813 870432653 660033763 809156619 469331976 899969144 181766763 293593113 586898416 955557680 848635830 905617586 956753529 984714334 27123281 104759822 366359788 735018901 387105710 773589227 512260597 977421175 982666208 983937173 45185181 398869064 610335746 937231600 231473263 585011914 754857019 879595006 48247178 469338419 588928892 850050411 195057602 714576963 865590054 896397002 107247693 165290951 129644227 928717772 394417848 536063168 762828240 769557837 680470987 824433781 655404014 725731293 574494798 865243333 204820090 764320803 622542477 977299913 593165048 967470183 824078119 954841112 369029559 491180690 562506243 604760888 467345556 750654065 726678216 948652989 152133981 544943796 872705920 935162085 465882988 846569968 223468176 674022488 86866807 520722463 695339297 801820955 190401509 864050376 41886327 259757503 317065508 531158364 855089306 997636845 769698569 928058774 537229842 627541519 430163865 765073517 749521987 908561633 461824056 932828426 575445129 995401948 910718374 942901516 715981165 928718302 825859324 926394305 501536138 671508738 29046627 251941006 842626004 906184916 625182813 954217113 695757439 704126177 709726905 905263115 195242184 338636204 526032656 735252360 726111015 782842140 513254171 843736437 48879936 377536433 657808318 699041931 503201569 974730460 276452778 629029158 375287016 682655547 121721689 247746076 544386561 783743117 797950265 840255593 23677237 418390963 486685224 898872372 633066128 661106365 615865380 920135225 738931024 995392985 660826249 944870211 235774512 339733241 98082629 480203261 600709024 855774745 195237574 305977037 929745802 957977720 28906267 965530691 550077018 712549146 38668388 735898328 595054626 663154561 953088569 985625916 726528209 865272946 491222411 801212337 31278569 859325432 528240249 689899799 738141193 913579959 890649978 908322742 862436342 991649361 838057769 928070158 607630516 613955890 661870631 835502139 610700783 854429990 468159526 841025989 452636316 522679587 842650987 970712088 232824815 876917808 120089199 783589569 98613551 323362370 351382165 820540147 475536997 892532666 558819489 847329760 638819878 782110404 672172179 847696297 560131036 637835837 491685189 916497789 680456261 799390403 30850663 329436612 858325663 928831834 563722842 710529786 791389307 923064615 530914893 656763851 515602393 976313036 375285275 676315434 254366273 674289775 630867721 758114475 236461320 642886500 77730808 365901875 566937069 846090584 951206719 967328836 189841854 590918173 536738833 950939090 623623578 962874231 504336226 570634188 446322416 996953739 308767812 410181563 222517886 800032643 798473708 994662754 282635782 603982998 382713524 603534475 346273772 576836827 408060692 909538522 563585813 589330123 10154414 641106271 973042335 993117004 716674953 825067772 100767511 969305365 637586305 713435335 124563283 389257322 111425840 755139879 994366454 994670700 370469357 412527794 756971110 968889124 700538206 831295045 194824898 444742683 649547117 994482832 284278334 602078109 469414939 842553956 302065162 906704556 512502324 755276981 52731662 740369467 750014725 797932526 307769571 458437869 62384132 638452021 538975897 984996726 155847078 452170907 911372735 990167794 3984417 630136527 144374142 798643266 513363201 655971331 845429390 923674903 38283037 455570668 975260680 990204485 27522796 925283993 43528531 527594641 392682298 737570849 978015922 991763879 421381198 539485037 588448955 710708877 159296745 760947652 888306305 979214276 960709794 970467678 859233436 967336832 399931330 930365738 11968054 813170990 742827474 920811473 53024099 632439040 976053993 993990012 46936719 455340742 660808110 965776880 970216573 989436410 821633095 950573361 360469595 938870218 990920730 997217075 311324617 424143151 158361834 214871193 102215333 202146816 54646191 693170428 831464170 997296418 468630393 987141230 606467578 745882079 314751370 412700211 359255786 906212556 938302876 985483740 771340644 949184583 690703854 722318155 512051980 661564839 131613919 379215998 299735548 939799472 654154481 744761849 965130104 974792671 411961980 764311361 890001823 951421908 43133105 573739724 138837634 642154955 407894382 923226839 752877034 778464373 552854920 924723630 293527570 639550419 324642651 401455543 827702109 910889272 825784586 878867051 8974554 359657869 334212369 469605514 659891927 727393513 623738304 783188988 880577187 938264046 862255621 876528905 818078647 925948282 433019553 582150228 21800907 424920237 378178671 452630451 428285264 785636182 627458974 882524274 992882782 995336509 152949740 807474113 307446340 844125953 509202455 593251602 975140965 979575767 717106460 791900450 756406764 780496973 566195877 594198750 884105755 933856970 591165177 809537616 375149010 440446117 982660004 987091435 12393824 444031462 407257085 426198264 871793302 970908056 311594280 476899105 858172675 956973699 597429745 838870004 687627934 801499194 44623821 548968258 478685123 937879575 376202600 598018289 333078585 830851105 334617087 898858847 660276170 794684555 545984953 804397187 82561396 138400280 992831159 997857023 33823817 194656200 273724113 308673260 219837453 853511378 517771403 784205440 573344317 750171128 810205485 842478601 280298834 378636731 638840551 822154195 917039776 998376301 955922451 990932705 407713755 892236169 586866300 648248527 451509995 631405799 350058148 777294403 178404435 415084740 681258675 821792632 809824014 903691762 631543065 765382112 23943265 131156582 407857969 702805423 366205847 866715051 578640870 809059674 716669361 920410384 212263641 582644532 560492385 875561721 839222862 877370475 371512879 430602794 253356924 273781267 918574354 943922851 973947763 995699874 608282281 780425061 861676982 943259983 572710195 648254086 649409721 668095628 327361307 585884366 937523513 950232600 639318924 949631221 196017391 724915650 778393489 824340666 764867434 992689357 399222975 991243547 796971159 929745485 687801711 866613259 689084410 966001424 631142197 896072800 982679085 994857457 703768514 831385408 865208183 962441180 134526569 360039230 794347845 870164714 215435574 235443049 834522094 937060597 438816961 785810462 124020064 247308352 715384709 917660130 770310971 897638345 631743239 918915503 328678432 373209310 772864311 790631966 758282329 896500088 663026766 997205468 348670137 502567201 124507120 576338696 182621219 786101749 483601749 553140127 178517811 360173675 995716872 996008559 867322967 925314945 784008415 936852105 347897404 378263700 251515845 798464435 885374362 980005690 63993745 252965552 301208036 512235239 815345825 875808279 653583104 753735670 21480485 578253292 289011832 481314938 217179032 264037308 187334027 506424032 875294369 926680995 11417018 289388939 980717131 997819936 131208586 635366231 417464981 569101559 612902262 954619645 936934992 962108178 841172193 875580676 152848079 437575338 248621419 348040955 720505580 928889251 811814588 922158624 470185085 899628168 394665703 893070306 486822585 810606089 451934109 531271139 887688319 978480418 796704708 958179583 536508824 955436935 37045332 748862818 403432280 660892869 330262888 402173075 378797135 430449340 646121550 766232518 151647063 920550779 814154875 901762996 568201723 878950021 395217333 950034062 395053380 920039090 961495935 984888787 831744749 985675746 400860201 849473139 67232370 434527125 94926546 483128620 536459637 786296869 674407925 868594645 448576381 644994293 908213415 914862371 350855124 624774881 633312774 816574396 732459267 913656045 288721088 923931440 763124860 885538679 102144940 372118322 505500378 568986122 962572713 970739665 64711347 796346705 377889975 777048560 957583193 962449596 600837662 693777864 7560729 666583390 831464883 982118317 124421757 190482826 775900873 991166605 263073800 357728957 828615011 881025061 703836498 868843504 992894978 997850757 875729626 877039885 257839852 561077168 927187112 990760058 406474893 612393581 964102786 980870657 476608250 947333080 817989679 934047393 896621197 905463914 607552077 740753539 686503212 905380222 262301404 468914784 522755203 772843379 953741261 958834394 92524098 457600371 392648708 854246670 481946384 592760334 912979751 983401952 698410903 930423751 724791601 889240900 520117286 639305466 810810631 888627882 184331383 603395679 766514122 997688182 931554239 936177518 708097739 733479938 275336878 321977927 4760235 556529250 211775984 848393021 712497642 759218076 821466909 822337832 544602750 636307467 588668744 829782961 641467272 940027815 324005880 482066422 898977195 925191711 50439082 90521977 797932120 999275700 680842699 919683836 267320840 717342215 258283377 502436392 914183900 977021263 777510640 880518982 874190595 918839879 625200128 692817232 315682310 658769146 247561200 898758075 330163185 690953200 730850733 848058888 475594175 498228103 39558893 284932504 989132242 994458267 779800288 922501016 294087157 960427405 845652443 995661053 134242730 412675544 646738661 915882379 653742230 666420794 587968992 886542922 656688746 975692288 393313160 680358938 140035791 832441176 37669161 514072475 134403250 234193434 71757148 99148663 603880711 668157526 82210577 655241404 901760905 988781961 445412982 472806139 203297395 402882416 80780937 914304887 733889988 798347867 291063099 775397461 480241514 868157695 881725858 993131326 390165833 988167140 361835434 894168531 285132767 361283927 804092425 824591962 325137852 838149643 933830690 941569357 718827283 812991683 594337098 747966816 777323010 894497125 978111223 992778911 134009056 317225833 753387172 815837680 683331238 822444247 361196982 402337023 154577424 296522282 609758461 638666397 219325168 872324206 136595588 190899792 983009977 983572636 93495166 651934438 154079765 507215906 642116275 875395430 211238050 584877408 424561433 838640249 229341961 778344557 699459981 776291174 382205069 905702846 369386622 764024611 328127327 505119955 257946703 648857490 767903740 939886173 975605781 976035172 21461448 335705770 886857339 890894912 106506788 864705757 436467676 537860406 987985594 989508577 159407895 651735114 538405035 878146023 165030793 288879046 810362894 863187785 569712435 711796685 11865146 985996718 462380552 703857844 228510724 379280256 985897479 990562816 723796696 781587243 649904145 866803314 666374242 838371441 11182625 130836408 9442156 604033032 84692392 371200127 326502320 581210619 619344161 871521522 196231035 510682372 592077240 891116950 43666136 981014500 389285640 842942945 69174231 218074210 19021333 754842143 626604597 886752538 420339171 900408007 568504545 628292223 852975627 899374168 908734279 920166147 538256560 787849649 60467911 100233203 907539021 953862788 6249246 695595401 152528682 374881227 734867911 807085093 585209473 752749793 518421318 673882290 559050537 721640590 321362386 622075340 443923152 505204683 238812003 402371762 668176013 829158014 612974240 895568456 378739199 587026947 420629026 575611638 187962424 555586899 674341879 686814845 410298484 422571360 734458352 909461201 557900896 862378654 271716158 529600725 219702074 609448348 474447789 480595070 293661380 901000808 158326777 413321326 369854498 578489811 357589309 929803910 489326013 518526768 385737479 618201593 526800249 899869351 333837686 698804437 990084378 998910553 930742450 972677464 910702408 969012038 363454472 704877650 303729070 383042590 400207367 982284399 380104956 694474329 663552053 896043543 633146231 729714153 439101848 474070802 656192646 833203237 495756132 705814400 460660729 525539983 338715493 914051258 3238429 935238787 741812862 847490988 451708883 616095184 386638586 448896706 466442723 985072731 495770270 894437541 31069422 87541719 942381699 979180220 594895691 801539338 146116886 713646777 898111235 947363144 279266956 780066478 588947011 698065319 267503271 932985856 633531760 640917857 39784290 570210257 285029341 583664308 312469603 736783273 171268114 472562589 807676774 921399221 485579912 858677214 713769205 877735467 363937479 822990979 526732601 588367224 33709629 507569479 837132326 990048564 122850516 864808360 281668418 839115902 150032751 503232326 970475145 978551142 940587274 972250762 396309777 810606186 360009579 882450103 728432446 806791311 141999610 567721607 972039158 980431527 199028796 678454079 350245911 696125932 271001526 472656401 386844917 618406256 427435200 480727518 562604465 986784525 193246871 329628483 953791643 997388835 910566374 984003758 831479199 845272552 203817039 221733378 220395161 431367999 261815730 529190259 694063352 952850137 473925053 870608305 510900712 709114501 336127594 935469619 524859193 783493485 35445715 427068001 754237296 809128339 350792515 920837371 794289612 822722727 917178971 932154297 518314055 997926450 931869611 983114299 749294892 889468947 419588030 869622023 273599369 823335585 230743265 265172393 819019524 835798418 555346522 801537993 77869573 873695639 273732760 495440407 443231105 943559210 20230006 317673515 71888307 961690823 478949785 861798120 868875117 958168185 682231120 834578597 193879194 341106499 215451096 622937154 4023196 671030146 864221990 936848177 482480083 793747761 822395103 966553555 144053014 515623828 496583619 757267166 489954334 535176705 132976675 866380845 826714127 928132149 533116001 802300689 43478491 668333852 146298537 759246291 886129082 996952262 615416057 922078122 638305563 859848693 522233995 976446221 965981273 975563858 36645852 765283071 420111841 618882170 922550413 975034825 747445764 932620126 296370102 530528726 849918974 860581589 368931638 480417093 232538420 462990168 811333451 983645903 11543676 926178089 89245080 504890965 240573431 387960179 994244282 999291859 155446754 849811740 572696583 741156438 583889489 856230997 89831840 524740545 934101503 966916899 391523832 746500204 54672786 659145515 336153570 462900115 366402779 701482923 236540368 897396965 547642938 804334972 552280338 743510457 158788752 718900932 9133642 794107748 832026956 852466652 267693554 899838403 234407639 293604636 517506870 995989419 433497032 490410020 287996903 494369412 43672782 874777939 715676089 774351512 512094427 892774617 459394438 689410881 874056844 912072861 620272150 740867482 634224215 799319725 624062729 826311993 581849017 624832837 399630875 399820955 740852891 853178284 196039647 857074758 155287400 993003217 569672498 935457939 768363873 845004396 223517200 971795328 936782162 957558740 291473126 819788430 736023047 824060643 3696435 981901328 813252019 966763697 11313742 28818865 431311479 785403642 284937650 963617580 220015473 880936879 286383951 745513030 524492392 619444725 276784879 701584780 595901706 945608759 162397275 994613983 609457668 672602360 159846961 861797334 386437489 838731068 262022928 329836965 704805204 848879650 98232936 536728368 691976088 804326214 907382727 944480697 278998454 285825004 135349896 882375412 314933613 397073831 603736236 987287121 725233574 990017193 768138495 903326420 90319132 487303418 510016405 952017919 369976544 740507694 397337991 764051820 594434883 625835813 813475523 824734532 628102822 727245245 666353997 746144852 546744759 964547062 483607542 877516250 404310938 649990775 853680449 927417073 456258546 824758828 177778093 315673497 275381811 298607540 203103664 653851571 657257640 777108805 225549963 462520133 94127586 655186341 663673578 679685479 572547546 837295023 766307996 929441886 817920894 945261331 185599814 485317102 107534295 242886147 229697338 723214312 193366394 682876280 857865305 865611678 176902827 676332043 72654036 623404133 624333729 949716577 968260853 990636866 72245643 965035241 753691360 837580527 915386404 916912124 669462962 854176160 326040496 418031756 496078966 924523150 301863356 980972646 696778274 809671361 11708949 417376437 582856359 913586756 658838153 998242513 649655387 841583763 817550085 992385849 500232023 610052337 723633850 965230240 215036785 890123752 973838324 982951767 444168841 473737010 873046019 947267190 509391160 868684936 887486356 932118005 566278609 586169328 48323710 684878749 432167154 455085869 447166068 587430955 822300722 879400537 75397386 445280164 226721475 510639457 991685 718721951 986208518 989648676 5086067 848117210 509061338 568753681 313148076 383238417 846115829 893257604 759648533 920259034 140605407 145770804 231363726 500330961 81705470 581075570 641645945 768619843 79646353 989572249 265616495 641326501 215763707 947162145 586444811 997615432 910615574 934386377 956690640 993639788 962528649 965689400 921445385 929746077 680777016 953735732 216459500 795441304 392203172 516497558 348920857 828719006 218468983 240937732 246899803 532827993 233113467 599397009 104868034 939983097 345798347 499057427 180517267 792131898 711671670 732320152 195631299 289174826 964130594 969371883 855175346 931196023 712798946 939496511 234185298 902267230 709023871 880223075 466361740 859417942 582580481 863730053 21907242 731266018 727839054 951759358 828878621 942215503 712990463 863843215 578921153 955704302 918237830 962159831 929334854 935776876 509218977 747656331 773967399 991728329 708017029 835008230 40532245 528779650 605580484 722670625 790026161 920680569 988539556 993379078 328764112 400507369 697421711 812452727 142868173 607552498 485332439 588520873 557137647 993648415 593498732 801761451 317772359 916362522 296972301 991488067 279362340 650084092 674420630 703654360 942485197 957843248 12134048 131398701 825098666 968852982 14405151 674331259 841891009 918644378 905330079 911967157 440389706 673761210 576458140 657501582 379032344 645881386 449331874 754841154 649286863 925243757 56076031 679637627 620330378 888970222 474300282 719719576 823556672 972070011 759153806 812112835 469013720 930769576 536186119 911866124 410076568 687198171 543827283 934746103 79926382 690663513 183827965 287990724 287234541 827601990 117767604 422992302 570474162 750316214 561546969 986777389 830052220 877056640 702199432 998552805 794615950 797070155 360319200 376309179 484586356 532765611 850929563 869936532 485145959 927683283 264054282 268450419 995680148 997113635 445006453 626067314 525339883 576181839 918893516 943597888 123148779 451844884 164293019 522990909 287306828 686995739 343704375 668104043 546862227 630997884 497096459 614019203 615873735 984126460 238821143 499371909 188889382 749361384 741036266 778865209 527864257 862561998 790193623 839917793 310007844 960501054 384653282 464799848 771976930 809626335 660991209 976147372 829534403 909977859 739975139 874326425 450211161 970127639 934274676 969236948 753576714 873553742 261583341 721629781 611497165 903956435 777583287 969724380 255484264 936716208 745267803 785015408 46128222 612218770 216536235 925917238 892942366 940870300 580429972 710479241 956616994 957091973 526098364 828643961 586161966 644910539 699452853 775853502 597660618 617750752 116365278 753220268 541120636 784372234 766870498 919201963 566814651 718238909 692111641 789044951 196353733 273676969 250262475 970134083 149293775 779407741 53337511 983176340 476775242 598427325 526219329 567362253 572957174 680826517 334706027 650454167 744227384 811688028 359929563 416313466 885404781 978519619 918187951 993682247 659277280 980915785 236832015 277990393 437461193 531964954 93311312 628758639 354458113 939584816 405843494 662483114 717901611 825644678 935468000 945924151 532464911 955287288 385750513 737646996 585973039 616268205 929787940 995447783 109072278 533601649 775155476 920649787 74373381 269244895 508588873 815661019 244800665 682178423 300539268 751699379 979689721 992301829 21967812 948607755 410415454 704756461 176828782 793644655 429395919 662149871 378523942 746091016 865573819 943442192 496241846 533590331 371811607 670210933 380448970 615529314 846918713 957957663 643289162 877028742 644672961 917440711 343154853 977584199 392568035 672788917 727664109 758067031 60787356 190962930 518330551 656813853 994189008 994404128 898210321 960857164 367532569 593940989 959182299 991388055 5513990 363994308 511585853 746953208 188165041 933052484 809484018 818661244 468173253 756344331 696365399 812874171 704993761 998325349 207041179 637361748 654892584 852987989 18562585 660536578 797180417 845273434 524667360 993487315 745460234 872741728 148248707 197548814 434291912 777826212 692170055 722963490 85114693 186237128 989032062 995380879 229530802 828437044 594044688 750960335 923393034 993941433 921680103 939981231 658278098 855348345 266024504 981205425 247559970 286363015 216092661 706893022 236871363 488224517 583148727 672767337 996234143 998978950 273790037 320006345 784299065 903733320 662308129 721845398 92585299 412937638 683136590 794699620 771711264 803340876 636042857 989067888 429433475 557397697 359476540 584636144 337641628 901622721 13673544 712955218 189380396 708424146 741837083 743414795 375680835 796513444 469329695 981550070 216350894 840476166 664380573 960599439 704772310 974557952 557458249 670914360 95966319 372821817 899050924 945236343 691724179 861440135 406483368 553181758 278987763 536823587 979604746 997265479 721792239 733128022 311807994 793474331 834378703 835076114 661227597 807339914 525142801 821034666 276240647 446262822 653703711 658117487 90440375 827971831 727747983 905539605 133544576 488920157 195773770 655147056 566269086 703081298 974218156 978289574 314085208 936017098 491557319 786546251 192741398 567538885 143570328 212273731 484010504 695194403 641007531 747708928 3601137 174605524 47402769 379172393 980686377 981393416 989475411 996045054 892289231 932520061 411801730 900011282 472383421 824440875 743755500 756989337 736539179 739491027 930351104 976498247 597077094 698179683 577853618 888041788 750789124 780632545 374811003 528595450 380718153 650634861 546739332 967810464 540562813 757877249 372304566 464811965 347335003 651640988 997443798 999214752 53178360 425905230 623193558 993117406 342875843 701181964 491439142 993484005 899966331 906856460 183794774 440672671 883258989 990401000 655755156 696440020 502433033 554972702 852908686 939882925 209243446 455942644 893636549 970826676 51643243 674451864 467978761 971257360 419095120 717715800 311176434 524734536 817607341 982327446 949013541 999154558 644211408 972753197 419943680 823457910 705844436 966602908 366572571 986156925 431329883 639773630 962738203 992157418 190081261 477040273 500813559 900376760 838882708 983271207 965249408 966148791 158063805 788088134 32936948 576550890 475338019 886234598 985652221 994347581 678081407 929686781 420584791 767793385 184980003 332348129 585577169 588131683 686299082 786830089 966319874 987154597 970797927 979961849 710050979 797172799 294171851 549067013 330587314 568936662 141525968 158108552 432456588 861836653 12488355 213644706 619291728 894786375 632430365 770013460 161419780 430255196 175818851 684244473 885196826 889481075 35825233 237433931 875641538 888981118 596532874 732914919 865516559 950624186 136982726 942999002 621468254 778481647 47153653 477730156 833868339 848007863 849100933 960726886 917987549 968164136 735788414 904670245 881055954 965835775 906674609 997295825 829822804 853460481 534851647 582732224 825459870 936786468 39400850 497387047 974646411 981856288 169632239 535696636 741980060 815912016 792613266 806909912 39740066 950752239 643501422 882200824 329340001 730459506 921632165 944583896 599861160 845743521 760265851 821413010 18227587 391172172 781322366 968066780 226241613 693287266 357464126 660668118 17278285 502605716 36024914 94363487 300479349 856419201 73740634 677859062 81262970 680341761 700777715 832468946 426846494 709650955 76721373 341185398 36380149 549326699 180404446 705369051 644784117 834811353 437061534 506871138 894347025 924212524 8959906 116010483 784974112 820384668 276307214 404278163 19639845 941085254 475184364 661428747 140764347 358141119 258505554 286575448 560955259 630525279 414778003 502912232 464510940 521933059 983110522 994749712 104194829 866291862 120791403 238799066 68394862 971892781 951552774 959017286 340030753 418242563 843853501 931316366 604155270 718606154 95281171 354574085 821952708 989738266 923193090 996797455 607700856 631773744 326832133 564894672 837922228 974349301 327944909 359013336 915790849 995205594 306228856 531239616 924978687 997435242 936237176 971944447 266470493 388373969 322115979 795862861 83871225 880991682 820417091 926984307 748914871 952923809 665158928 918511468 832084313 935439369 975601797 984330957 813303639 929973129 968674134 991657360 371037509 652861561 647266300 865381764 16850578 547922194 148524678 373429055 185495696 803083182 976966912 986321302 682035270 905190433 510933643 785394880 931639048 945413078 967178791 988205364 395043375 531847602 133850433 922075141 686421141 908359163 192075260 327639347 607843 283274559 342105358 935620146 141407846 356876532 640226734 859863342 994162573 995894426 618492212 890060442 777599049 809087323 860754746 928884019 634099180 761992289 121683145 528846576 268324267 968890875 241241050 756330558 548615487 907391694 518520259 537742993 464618714 911517023 621080120 982765017 753171053 768646772 257974368 866607459 560568965 639260777 20803626 612529889 106900754 263079081 541208108 994790455 860891311 966953388 771311511 793916191 403977594 779134726 375135173 736297893 936363580 979995590 958931332 991153963 937335297 993441665 878109254 957162591 911417062 924261239 993838258 994999270 930468096 991249107 210443349 808854290 704651948 782431885 839640495 965488320 829834029 851592005 415922053 783987385 250975601 710149906 352164940 802936212 16093231 228140503 549871748 580580346 918583345 998408073 26102570 869188182 582254420 782169157 733729447 807286598 114563033 514318094 864760840 895155044 661305810 802027051 957574856 964006688 506294695 908226642 498907658 678537006 121931930 784341242 120944430 973318713 782785817 928204644 609755107 799638693 371180490 550277785 675519550 702665998 367449943 539226969 67733325 208937433 121866667 493979780 678564277 804403850 867959136 897543096 371150260 568621514 748242159 858684715 979112972 981286749 422433306 493944371 158499683 723568386 422808261 561577444 854285998 920361422 791285961 921464420 241199123 771622376 15130888 271455482 797266150 936548358 142134286 299541188 933604475 968750200 97714907 966976023 167771200 245383465 78303075 212448448 188997601 580979655 256756923 960227359 633198416 753028214 597365636 922586283 92264978 769727179 358478743 376151601 668781864 835729677 400767831 795686055 561785812 703355431 51071806 191651313 85566839 832755888 655099496 821838536 880523746 945567604 343788288 529948860 481650606 982207810 36023576 198491740 409788788 488111285 610222554 756537206 39301536 247092896 487078712 846498459 911213053 952245856 653037449 758679511 889374205 929891816 364574709 865388014 124821113 214478593 879638147 890467935 589830157 948357722 808491392 852676419 526652469 996642350 407837097 649489089 372582492 681316884 728192590 828607048 71721711 117318302 305446208 428452959 950232554 979841366 523401792 897552944 271108518 363414545 668816336 996786739 909996906 944252366 745993163 865735857 392323795 867561698 27469762 228993188 543736167 606002783 123849947 656377727 957527521 975736397 652024930 866310680 581185400 752541071 987285953 994381067 701295560 712489487 347987815 953470870 743099783 862207938 111387806 643563199 679065552 944614143 480335883 864874114 381305913 492759868 100913130 254968192 674248985 906092736 458381487 835178922 127884459 147681263 42273762 237762272 300301036 904008984 203908638 290495061 562447074 937132054 370794375 615510141 66095752 801313213 541570583 936021903 571847686 650610027 314198415 919410987 8818600 408921741 310094212 800130806 51288503 594099323 406950294 749738133 27227957 358234872 399988812 464219536 378543858 809675635 976691907 979232545 427118301 593345136 945744682 969899031 74540152 603059987 151060701 693784900 184496935 320728363 808589197 853044909 461348741 927939271 909131011 945878153 955016457 961091430 995959022 998496150 290276701 975216980 665641286 729880623 475125644 785815652 296280 943635758 171596172 252901677 228121606 649667875 416149725 584166848 115158822 340517213 811465008 892650109 417763563 440218175 43781512 809338144 919723606 958451103 15066638 330668482 277510913 646662402 585392332 928263145 504250259 786198706 20123320 138559320 439217328 653208231 971386298 993683088 222794944 475538556 687276406 829993498 277034307 299844561 113229284 367871788 501092088 733427478 887154480 975677412 680142840 733897161 818741507 934070970 764898139 998527438 197785986 797610764 957074682 981544287 248890800 347146353 513792583 985791314 212821658 790042656 358672741 701235544 317089354 670309412 970562410 990088742 623231727 840288549 763291000 932206936 937063112 995868562 993732226 997751196 890566990 948477971 397965875 548557681 922958914 960338078 544350364 978769940 468622478 845868370 544386073 594701674 799181488 950680814 405597351 632721207 51896894 352746006 898747619 908467318 36874658 977893655 19883114 926422902 116676197 135575100 556389319 826110818 304111006 806911696 216520809 661541274 327482932 466342559 289349336 898087806 546181222 550254718 574760801 885605725 57306763 578905083 857156123 966761426 557445884 778204915 226772154 411031357 806858583 992500395 430199449 703123369 543708076 906467388 314432300 767545898 540572688 860561669 453696364 837020890 413820106 883954777 13457678 304349138 899273717 943583291 322599295 420895492 204384158 750195149 255486815 366021146 694612837 899370086 813887257 861203887 923602000 934333465 140176056 744660864 473940629 608607753 790906150 970640565 581549413 984944848 113808050 488461845 441935849 749096214 608169214 657589901 519621324 565021099 822372728 956773111 86353140 512859074 747513055 796962550 251571674 803312942 373639600 975332232 288692446 289656371 548177840 940285426 205260978 980451879 602012998 657041271 33233143 522368513 33436876 115951517 740088906 983640429 61632913 419431490 8974719 781579822 758778609 882088162 973658493 981958289 292737421 520539981 756969950 765784396 532715070 650963693 175371958 219827574 177111753 897179716 796812759 988383674 854459042 966856734 652364024 944115828 708796374 962231115 593292506 888176928 591404543 884331909 167844520 738606312 798017744 889470250 250131213 935281235 1575609 49864701 170438808 438532689 855113623 988398727 519956030 559259048 79485298 461138665 835823100 882371406 772785962 851203476 964304155 994730952 953950518 973566223 565569473 804712854 937083144 979343284 808881116 933738106 973844776 987180338 26109128 680113322 189658831 662612694 654084854 988557947 127957128 666803683 81761620 882960883 163525697 428769149 18254395 971018960 234288353 364273845 683702286 711415927 948500278 979770099 736229813 893825339 146833581 803550969 354107158 959719538 103803009 497491788 184342466 411388789 729538226 809690935 289733419 605357899 677010631 999381083 353718708 604843511 547049623 884402038 303289059 486163986 875791855 939177253 656618040 827955089 984915234 992392710 664799216 677754307 36723375 616666707 273629026 305990430 815980389 961706066 135445475 977412280 655303186 840732649 808731307 970831106 542370347 789389099 284853846 967776454 784408644 972988581 800843703 966357854 389247879 577721869 748015542 856261198 431473711 869709103 869328865 897302477 223385839 318785072 442601526 806320708 618266106 654859871 50970465 391931476 675388085 852493682 222669306 386348507 520251998 908192215 938978815 992941883 218134399 561193277 732991482 851058096 861899839 908277479 498729191 781797552 876366436 991230449 583862493 925361941 383628093 987549059 103039320 547791454 381406807 949076826 321643279 946110355 302381338 821541975 800347659 835030978 140968315 907503093 326366008 430518402 494214299 657084290 225621224 397480178 496668435 955886717 459420712 630720367 898980160 906434255 892336778 951857823 793899208 957477171 31050510 843773543 88189527 932511779 711396847 719352418 768249259 990070558 961630876 990783098 51655026 596158281 100922023 755190055 836363363 886032022 828731451 914285897 584322185 678467440 653946141 667496405 629101646 993876860 177615000 608308259 59892978 533699732 230230644 761825163 867326552 926744054 904755328 954190749 66567302 462291650 664234283 713983585 569227896 961275174 285339601 306684269 438002796 948492536 455362016 925287693 813894828 846699999 542684997 597334909 188730598 772875039 195251081 423053796 922407099 969006905 902608079 959363134 643295289 955514976 805331446 879019512 130022890 909107141 757532584 845924981 133515346 455849279 421948437 942686490 43120587 817631425 233713764 684876714 473988843 648555286 485461322 787031395 487492127 627203346 611999659 812693323 465600955 976472003 435573163 732743903 678434804 846400827 119729799 802738367 749067092 930711094 31913521 916075741 566100059 571263063 286077671 502731971 870858104 897175027 607155386 754831107 556294393 667410636 621274015 948882097 633426502 919297158 668794854 773524623 494317745 839669978 608185808 724613287 273280938 945998943 227287071 790071469 363176727 950312257 366310197 795189586 832768516 868250370 472295984 624990622 955702505 990456790 204923351 365800055 396347524 593701643 989227217 991145714 311303421 775958791 957862509 981655051 579752173 625335016 705309549 770812333 627228140 998686290 760864685 787065504 313856131 703177858 552983658 999195033 823809149 886036215 792415599 891834953 133235980 709461243 852599997 901354764 14215535 924345216 303305836 716979002 77563109 280322423 741493186 964028454 298487632 914576661 249967680 610736143 877124334 951961065 589843351 713877702 573313704 834686115 327018445 520780700 984677252 987085197 186492763 548133258 573566937 613154636 843795364 852540356 669038107 783695190 272802173 792164768 317237905 831713887 337160966 998208367 481315369 839763531 800546504 913335551 160401540 162974488 555781832 728557898 297063418 788908468 779645579 913673589 942281711 949914431 456552209 764193366 632507903 817980855 848501115 927384446 710456599 849978799 594795206 649972210 72201153 122376271 839342960 992481933 941726326 945973216 978210410 991424519 220279831 518933352 82320820 775237865 816726794 981474587 596907509 754376901 794333224 977826178 305092493 563943974 643822451 742786306 193081918 370639449 133382547 695598399 460581982 661559177 149013002 330695394 743269811 864296516 408606399 496940140 50489619 443693081 169904823 796408654 579064819 937615586 946219925 974246189 560592708 921625986 301893219 678885919 504573614 718448454 716140050 824604074 712586903 713915612 793778991 845255553 249561854 506711080 347029270 895774215 383166486 408918109 518575611 693240863 917129004 963666544 176007539 666894276 212719872 307949382 68697790 334509815 162748681 191013096 823310312 850590679 382954377 416208940 479482956 870071728 408657554 482210656 70956839 105443094 79614639 251832865 58459574 101021160 882391634 911993269 333439427 636918519 143881049 336480900 863642684 940475037 911298141 950119685 369836881 810518553 583283575 737940483 709176651 752393939 818981721 820402432 343443198 451741660 258949003 763023087 881242648 943857621 352251217 479581822 424437728 828280155 30252477 620983575 574379365 924511031 379488318 974640192 43309605 323773905 455618570 766141629 523832048 884336846 386365742 766197099 31167259 796361427 559576787 809214350 337016916 425072926 821123427 908539428 919749899 972212913 855143008 932532146 333027119 563158112 804664779 930301975 419686911 940481815 979276049 991588262 884660659 898055450 767541867 881028612 411367060 813823937 169574691 178340902 107285635 161526633 179313774 994952627 460132991 984991853 209117383 232578372 948719059 997149206 770277844 990807892 709955295 876248232 648782084 714261962 686940440 899896522 826574101 912385899 394057741 687100065 933804233 947927203 759797516 961545326 924813488 949308691 247944505 487106187 985456397 989766874 578284920 694140877 762974196 874754731 267404928 666972595 347044413 529566660 536495769 999190254 638169856 703203805 236315137 849075369 265538 133205069 261929731 839839948 225453567 682432090 356352055 674461506 397667303 798396567 331182245 429352950 650398774 965793293 73789174 198867602 139889667 632059556 44407321 928484232 889820824 962870926 717544769 912355835 496178102 974343683 477121812 616241275 821517207 835600857 457521538 591320868 985017665 993894375 479497482 795991915 320850546 326939708 839176699 870435301 456970092 458614376 299207605 636918312 478848434 499355776 732242280 904391498 622485357 898576100 866284105 992610326 495594429 993752117 356990709 365925620 280619506 900854644 454841867 731185939 664246723 965177324 62906169 977715538 368484649 852826809 329691992 900790191 651041009 892832803 912898168 914860547 704712083 716563679 55347570 246784503 402852334 529836500 600254825 945809299 770703456 988865628 395373133 539488241 904361538 949794062 984696815 998183248 663052494 776500807 397891712 736541117 175813942 853467626 888690441 916250928 373536142 702921716 674590079 857977835 714240672 955300909 813112237 975801358 523320091 911089581 328809466 331342035 945775469 982748128 979686353 995283041 335886868 847929545 613008019 933413281 158137894 169757880 98913262 776006859 591248368 690631860 355512330 733046396 817275424 863859446 418844393 611637185 664152367 664329077 560696134 602665891 241063557 737279401 905879548 981906947 438807381 474505715 709469385 873088913 698526856 758615978 501294943 775144459 278859911 882168714 219309902 761093047 85740896 642428850 334559133 621406305 296091645 530783849 774386389 823600027 42370506 67887155 595870056 956915580 637099558 931045399 393070587 894934281 570777832 876234549 973878080 983607192 480420447 643199355 618022584 792194448 38349163 710531259 255481833 259500101 266619256 976345921 698343087 704946728 498714200 803875050 579157882 616471492 635695724 688031058 880864166 883779616 222393527 542436260 585181770 950308292 14285716 312155585 724624968 764661755 658555302 712642870 742452329 880033013 977296283 989580124 513282829 519485225 133825252 555451113 314110357 329539780 691816944 953257410 126130048 781019653 90295428 928999603 17228293 610775156 20581207 333841014 423614203 542360640 747834632 974676589 512182606 599160025 761367991 883427856 492068837 874530781 7351124 191266662 134462727 631877981 15500658 190640303 592176240 786965353 332667940 626210988 450783453 515855066 310474511 554945042 443752189 549049748 946311078 988133747 431626642 639252689 94155061 961712394 564976952 641669476 20770749 969045469 519665071 905091162 659759498 796607420 814755444 824149245 579024229 891667577 97882727 818879771 314609101 648253135 544342452 549173403 872889656 960536356 542478650 582937796 996522358 998770712 702515916 716570952 763361942 995935028 368505815 627548220 657950939 995514587 50593430 835042520 339591183 992203274 420563942 639205023 262512297 932078209 761266922 922205233 430210491 460829804 160377781 670560863 983853415 998823396 149381630 537119097 959994353 968780350 983986470 994501504 346810233 679972414 165650921 745039930 920171296 941001732 28418416 170104637 866275863 930253040 986248435 987418030 324480415 747512446 889068990 899191583 336295724 984687252 960582735 978542981 980615704 995028357 409392926 433360574 132417054 922842076 468497005 738250976 824189383 907650008 347010371 606643950 148817011 724634326 473849515 924459143 413632516 681844620 121180289 431902341 484519644 951556838 365884772 929305695 739005209 984970560 183798997 715956552 553009839 583864193 663197011 705391699 491118053 706740266 345852603 883595215 542671479 986853923 339457388 356767133 260447822 907302480 621637785 715638336 812210879 901248338 870551950 898644482 993232218 995808113 435096254 811204336 899935215 994695392 169420072 950528651 472332243 824293442 902852338 972418361 768340970 805484113 725269182 808701350 95570439 547208494 110396055 807582837 359934207 448004606 765740218 773295783 462483064 881541289 974381450 974927662 637350942 931671473 316694921 662686696 872672266 879030792 972690752 983785002 998134310 999345429 550232164 753571559 442753239 935358054 242265862 300290147 481793671 638335429 91166277 249603673 29636519 86300045 302986479 372164461 86354284 975033643 969872050 990786739 911039418 937393840 608305979 701641437 845787342 973854746 35102894 844386896 503891843 652608754 658191313 935738590 45076507 374432136 557689363 985542683 268260436 942095357 478444975 803356802 287862375 469433643 542647153 678823656 175643381 623794963 317147358 438250755 453136387 945816950 376529495 454737961 183671526 844067637 232310966 242106893 483487313 985513282 31484204 797193934 940830838 941914759 259335093 524037385 381055000 505756185 345311409 645186394 870521996 870972142 826020892 842058323 260027967 651533116 994426226 998301155 779205074 809728719 193090197 401721219 348562616 662409399 594147105 717240055 738533610 779627312 656403830 681148213 740901324 966419436 593406424 683969650 551174030 942831729 560153388 715661723 195555176 694731206 314245032 403339690 839608052 881494955 148803599 555006123 377963721 849016899 333020776 334770199 3233167 454945164 6377141 630359930 324333566 326824297 12276774 475042316 896687828 984718958 468865401 768029426 808843860 826619733 80793002 917672552 479212111 750837703 641453946 960705541 244832595 311223109 238426128 800864708 318159529 554420238 831652268 955308588 8964199 596091352 534020667 943116043 416626744 711675302 853613082 904109721 958720441 994102271 41095860 977699314 67675058 555772438 941054642 968192506 958073627 975939518 506166968 970070218 977764313 992330616 43405154 987815877 551829549 611607992 954521389 982520324 776137922 942707846 335455355 917939294 662942695 828633815 16764177 437789784 522069244 944976009 897048055 934949445 937252333 963798766 99153441 766918600 493294690 642822946 351092117 820124580 581034979 723971719 601065602 965054667 483073046 885389941 207778547 930004491 597904682 763021823 129779774 547522694 859003778 992552229 132824300 948570754 155694238 735301719 252329387 927912882 172356713 831035128 513616291 766345807 297582369 401550796 902329152 921159412 174583836 243142357 573256740 625440889 592211341 826711968 488963966 609197970 900106273 948396056 707318604 977461616 914769337 918658212 898679272 925822397 729262996 982616063 264865643 372361011 357959778 543272139 944651968 973152684 846719752 877995759 260739753 883393266 153405436 634250321 804226243 930129067 137763858 973956726 599572750 728592676 691758064 825799002 985472824 993957786 697312037 835799580 63345999 274129506 910406968 967114425 61231708 733503958 281996170 749849769 643376786 991674673 449198717 646251815 627840359 709742915 601834756 818625002 133474826 270742821 124231564 617546093 269995724 353249116 772014293 974120929 200465923 606006895 269031365 944784840 928308028 955775466 729453440 787191469 857758636 952718016 137497871 911985906 318725314 823457609 962166778 995561936 779340801 955001020 913293173 920138740 8026067 790305959 977780835 987382805 399781969 959217779 663533275 739795287 202775777 842070218 533637872 648722275 281354009 510693732 455938227 752887820 162814937 309388214 289617593 484704290 861950486 889295712 408167219 604424935 445177685 746067138 622452271 663262318 932945922 977407755 840731212 916572631 295994300 963435882 119980550 427588159 118190881 351167817 473759204 735902929 392119859 850968663 862951697 913130836 891306727 902866058 332460385 402315089 755642067 871337771 672650945 689886455 740238679 776794621 677307943 969621789 729748119 866958595 885184378 967394616 848165499 964868015 154707974 693857495 923568521 963605415 596324893 951939923 227291352 702286467 509406994 759353202 682801224 822258091 266956456 477415307 723395023 938356733 821996933 945535896 841979521 985256924 376613769 869500922 316918643 794993395 821448960 980163710 207576898 708934058 21171930 987166035 483553130 923931432 640621044 808610206 181554098 490773672 833223018 840723427 230415321 522938513 348323783 395871345 634733205 716523718 61634169 233179067 887657893 949311317 346899810 798073025 459398723 711364495 792151475 856002813 881157221 927731752 145170430 732134189 752325410 828698166 507637257 544388604 746272843 822230586 655131681 732516360 289397651 413810372 298900316 594400768 392284694 538619362 667799456 914271758 616772566 850170986 819737055 837082718 43581889 305584942 270188498 483097450 848597896 926668310 224721714 781380034 830361607 909385287 257437770 871228570 501654358 701250173 704497138 826475438 214383558 561863888 88484637 204369613 687669948 694240275 931009459 989233972 484404526 890289968 201402841 317233338 575757658 588468507 827884061 899123498 398697733 620867137 368511528 529865945 616540360 866691264 259564609 263088471 858040068 929358499 938380151 986394597 227985987 713592629 244073299 527086789 581357527 865364971 118579017 587083400 884765772 984780345 795869084 850880386 304599854 936110558 134772486 601201974 393443413 889545346 170130700 605248173 595324770 756325970 711199422 979385035 807832303 887006808 444669256 677646373 153831874 394146440 575833176 722493776 914177453 981969879 247324386 511832608 997118892 997342099 118559253 684917765 914803810 928127823 80150600 681682711 851355176 972316718 731181015 874541184 355377445 936729087 345583512 579264922 458250779 691329621 852929032 982183217 15391266 470330112 659835357 731801560 813121942 834000832 694642361 802363857 697339949 984484089 413911576 815994115 455022235 782869404 319604878 399724735 611736438 919005312 797002944 839274170 898612195 912423416 127708146 204636700 255540998 987836020 504660396 724471336 78454907 574797038 138815917 176334449 128275150 462286844 533866815 688957207 998873442 998906670 447242814 669284021 364215963 808687146 953237530 986432523 923364779 990710866 929064987 938949034 163976909 980880462 186551043 868542562 681539037 839306784 366709758 688629324 558729368 936142281 417989528 722609363 284895408 748526081 992732507 992982144 169066153 170644204 699122186 706434828 823865148 994026054 337349827 768655260 805636687 885567697 86807183 879524347 489831417 843272480 83397925 180356445 115151482 156435826 677165546 684124140 187946812 313259437 334187951 612693069 869484225 877252096 643079819 921977137 240633066 282316224 756426485 859235170 187189906 548673341 440582272 911342661 399607555 830994664 163161723 642469874 918972822 931260831 199132060 524477364 105917713 188675589 431108600 929178299 434465215 962272537 827246631 905032448 536182722 784510559 242743936 606978167 226300909 964668791 291198179 455574166 434012418 522539938 569322069 678300083 976646545 998313959 453566752 543145933 286633032 938273375 268426153 334394355 151136658 238305296 255515482 696309798 93958929 512933362 736937449 743180416 521948555 947920606 839459030 968532828 682785055 942667994 685327754 895807451 236564091 485320702 949830378 979956531 275176681 869361155 101034834 153658562 957906733 997395982 219656283 450107183 445098788 657755318 382566859 604877017 622466710 900277276 27094323 557389370 865789105 932933491 603022239 859753541 240652196 563476594 289368930 555676088 718496882 812597270 225654453 227069719 665450052 856121725 963238905 973140912 773942834 907534565 406913217 476883024 228428066 383376775 656378950 664496227 286346732 453372578 313488462 777099549 493768069 675198882 237034409 489217403 83771986 200316689 412899223 559511519 179732385 980279839 114289570 950432462 880862789 891601368 719068091 892526664 618963945 745911399 810424270 966089841 973716559 992873494 11151289 677439447 806207507 812215617 361970042 629597277 782591611 927329045 327459416 840205491 271076196 586044827 140617904 528857608 577070648 987454522 766185305 885533150 886186034 926667315 103575820 410803703 299930398 306102078 783439045 823568073 266613056 613917511 351257608 753295506 436265358 746990256 244205860 753070590 559698999 728886412 267036933 281044264 455260684 977169132 154088495 450022719 225093703 602236843 1239718 416667042 112388474 956036290 122459255 389378575 137559342 932463259 959416984 972608777 431513871 758088732 63562022 159886729 55425187 943153929 115748164 959386638 968455542 980170725 724339052 724621306 745555039 920565683 592363854 621981125 763907283 813735405 320727428 840460395 741180741 911691087 124096990 823397441 161802659 817679587 539524221 925448775 55669577 681177352 826800195 934462706 107625798 687297938 327433682 982682684 418308554 560068045 417727005 959117968 672057351 729995440 258418963 352164966 34917689 567259404 335103172 442673072 354481233 361960984 706383862 861713085 254025957 457158572 556673720 757164393 213008793 569312787 899436127 975617574 848066972 998863213 759201675 923061269 757531825 796511613 529931627 951009861 973769657 996048960 307906076 722605665 553503370 613861461 425422217 933829653 362828766 829822198 178172444 515352509 415894596 913056024 742872536 849075047 613434923 943605180 188832386 399256682 153540056 738032146 185867275 224639119 280167711 774756116 483241879 517413259 430644688 548011959 312205645 390547840 316169503 509427735 39309041 501646433 212244593 654367396 426750501 777687533 284465855 749426847 59673811 911623623 155696737 607651996 55596806 145341420 306724098 883331569 699488219 800231094 462572331 854583979 12281878 378518248 528670757 997560059 409189336 427727143 993994854 998076631 412827219 613156471 833882112 873792579 454483047 652785632 364410544 780231299 247387170 950588252 75042384 191008989 927163021 987865597 358466536 790799462 683243639 958028539 174564663 237687867 838732190 888793231 138553513 607223797 163635939 918038801 551062246 640166005 666369971 952744842 950059141 956442229 229858954 860071946 83237971 890226629 9841379 57470543 991257776 993948167 786968166 819040894 516073159 917051621 933414833 982348243 516392498 956402416 448786732 983421112 945591987 952181831 312861739 345473672 571798660 825516653 774311559 886662239 728689845 785809358 283667988 807128949 830692407 892001224 352239738 950073081 84903862 448828588 545528194 749968700 948560289 970713211 584296111 943144523 5719006 867155741 45946871 195718018 303701272 958427435 626641500 954125248 834463774 870577598 453509146 689202806 267783709 470926017 482924492 623788035 247906910 642952910 257826090 455345130 638232701 894732154 493063174 834223458 694417067 796711527 551787400 723218207 601092390 850294075 15444341 264950126 87399317 860537807 624446084 837287207 849641684 934976539 987523049 987565603 309646778 367737721 320693107 924651652 89845274 603880487 494013653 662918139 330250655 685744105 836696202 868369431 148210047 921727645 336440755 528502132 437378312 881986236 629827162 841371571 186090034 619040171 324976420 507504091 928107568 997490622 681700349 956353569 652074112 768370984 946425625 969037402 604737503 991150474 769490706 826738923 391869430 668055334 120723376 638403504 646616882 980232401 408191670 609961074 987709566 990083488 443071595 524453793 216201244 508064121 360525279 577699674 179048522 866461873 519180386 895445820 682057642 812775976 893427736 978461218 287813387 732958520 810089325 904882659 257246212 307046137 244747877 726760237 777933788 871758566 634859648 871243649 378743655 537506571 653319321 937331417 246334473 519416790 248291043 816672898 647886061 917163391 379266809 973256517 751277805 999232044 265327015 988583761 397504127 411993067 247638243 991038052 610216828 823319633 287738636 678578435 974590904 978707279 258898082 260998202 807751380 927757074 544774682 935152411 448141750 828502517 51016785 572760955 697767166 713327667 392361877 855633289 497548809 904811418 819788671 911422495 127935959 539793320 584012876 831601820 860803366 896398547 909713928 964557678 957332812 973983547 437998172 456323660 944303699 983079397 761514092 858297235 834160043 959018354 914520617 987303800 133696285 925067699 399518516 890122736 447805081 552462211 666669557 693110557 477750380 898004714 200775008 671215263 443717167 883490834 823055176 979495925 637138817 943203387 10893557 470552553 849414280 850141792 814005324 944920835 63709324 863294983 289977100 384934142 272311070 842028855 585324706 737162680 913500977 915979943 307092210 600587505 157864980 293623990 516385187 522259572 545563748 647904131 206231259 788989118 44367065 791387104 742504801 965615147 222895982 387282133 740061755 873076805 238556963 358273327 827797928 950293164 50397591 700250416 646774683 851196492 612326058 842316650 827391369 833227361 44583178 921137582 683719397 890873472 899550717 930392684 870429920 952343024 687945619 854682100 466822150 694003347 419563701 498278472 940451304 992538151 525494423 585432933 252641044 612939345 334104470 536476668 513417193 879242850 22828820 995712118 784843797 907123428 632649045 933929343 703902183 836335620 35065617 436829559 66424863 249873708 236285961 368906759 283413105 812539157 789762300 830604138 996547667 996617285 869493494 878520137 252231856 329533823 888212362 916980165 437993086 753597088 295496057 683631627 778899695 909196142 587035524 777918827 440058881 865287602 295962156 907136801 820319220 877633103 157595333 727331030 888213727 976440829 121319579 487459668 59925531 928149726 610284213 646237416 768989316 782517108 439359109 638197998 241694747 754844926 490272164 573083847 385907720 894629969 917472077 999138661 19594593 43540674 934194228 953830645 262716797 379265954 903826778 935487476 150573409 240389748 403925536 803883850 959289771 987837203 850833396 997266683 144038362 251621125 417481958 443395796 819890978 834050030 301911472 724259552 776192217 953894155 386417077 689688549 758017531 813408604 764538394 994595030 54836282 142040044 927833404 965505679 316231525 666585436 95598049 747208296 466140260 863717241 515197369 702342748 647520752 934637522 699635290 865845822 403266473 645201193 10474138 467080270 301210899 595287373 179779695 965736097 170043031 205428759 146279956 393126605 186739503 510499441 206988045 719835011 816972598 848279188 591468378 804522489 104300572 829285782 862125769 873610686 505199507 943945960 506819087 962524237 541157208 972496237 51129423 196075313 629950506 826197578 79414840 884808275 517730940 803364672 185973573 987054588 134567728 467835632 936463563 964127388 231242571 924611819 463142748 775951900 579965808 902877989 521691800 948735036 629394045 678635990 644785857 808348707 175258159 844573778 255694679 574544479 357932311 362453029 382483893 502752899 554786191 773709621 952178617 968024843 495217183 537063446 44232127 970244257 598171712 967878842 112782184 147813654 293094050 962754582 291936184 709400750 804176216 804900947 212762511 761912327 247631067 526669771 607963472 911864116 726132526 980851893 592943704 946365211 166957947 581194653 678026199 903629385 48540771 198372689 447352465 512925844 215640693 482256928 444198735 732800584 29214996 693928124 93489952 217586208 748043248 982990453 683030716 993079132 270550398 624888829 947382136 962816135 121357926 367872978 151239925 454770659 594489494 640952061 226395689 522079016 199438840 731629791 707971969 947492070 243533940 354177806 977597901 993235873 509139264 525286513 480974380 755665604 229464022 275631107 507077870 789284297 555001681 764987926 943771024 994089898 82023030 632529280 251184332 445093133 959064866 988726505 224193889 623076386 602836318 828160797 875582487 988516147 445411835 907341398 972340255 993883542 354342034 714491303 90543514 373009760 401064992 546129735 420073343 654736494 416913497 423273237 39775380 225506258 151428317 947965410 342622372 544871948 30078335 176999274 603678002 622297659 780783305 937248661 457189151 762105611 766342028 936361124 434183666 513245532 639812128 883303453 869866656 936127327 150547528 992875395 238756781 319125193 863903559 965091274 791332775 917036085 440942098 626771120 375200064 866856892 178003022 863408348 879992570 993730027 451436575 688979465 576330025 950505811 295914345 728784071 175216509 638185451 361425863 441828427 213633617 420464025 791793405 935037274 584444244 919138920 580471372 848750610 798680612 816265070 700927281 980381887 428872823 765488446 288795638 322080882 303390477 476478828 93427380 571119522 828097866 934237212 531986373 715857874 407670433 785315676 322704388 442984357 635088913 855015387 574169060 754782267 380415293 582165536 335493278 494225311 530909006 541586574 22995284 822065665 441503332 588079735 743050927 750660137 493079547 532468759 71405555 653154583 823897109 905060679 972084665 994458652 861616648 875443093 485758783 496961309 814023566 951946389 981879460 982939951 611112162 775903846 393109920 745214216 401916493 618423280 904017048 928445266 848228663 964096769 659622116 739026890 973644975 989564080 133749772 803626707 468917322 832417501 123248298 187075017 541594089 552665012 294064780 619719070 280766931 548795635 208432200 710216136 41679839 185483096 401531848 781093298 483439625 652759407 667922451 920085571 957691219 974669690 551660788 596843151 874984758 896837902 43661507 767699824 840137643 992499429 251786613 885386684 917841187 957957583 921949439 956300684 637648316 871205042 695587599 759564690 156317639 289896944 229281173 597059076 436092870 952676128 459994709 779431025 560105553 994476544 587288541 727464284 870155478 957160564 978834882 997320343 623644719 753569649 361274790 845644999 125356090 127914342 616332078 815896619 714309573 765169095 177671106 621996548 714501162 946222490 997657792 999175440 826036331 858582157 90656133 485167783 850013284 946045596 864437129 982144670 55548848 119456029 699893189 965109010 832771992 881067533 490149110 788230426 946152435 957652927 30284533 544854942 886404381 890559752 378617484 490006859 189426155 885143343 715080539 920702710 894529448 984936021 162336864 196338322 669981665 891953050 364154042 686227133 279296145 802544910 648286515 847159603 388458498 471429499 646465688 831555244 977330081 993070666 151669825 673749248 280709872 430721598 757112059 841480801 562537545 909124413 677184064 902979873 511864906 973613781 664744891 946015404 358974878 516388968 705565651 708384250 187456613 536913194 576268215 690348553 333109452 879540578 490344875 636637427 988102114 998039977 222371593 525884695 563451502 953256497 264300711 989424066 525688564 728034845 265445860 488529590 681518704 982068830 745192939 851730012 755754675 835223110 923954361 997405571 152457966 720495507 203373119 760874180 643939896 733509085 602291859 918967271 93315984 485823726 997098356 997136238 169149832 817898882 516326337 590752498 381386075 843672813 101554968 930684345 543076133 621069569 47993314 275484590 682700070 773795243 407000219 711980941 336998427 405514679 518302502 613021433 957137035 988386160 702764244 825944021 511076399 964533462 632665818 653280740 489176331 683060300 428936357 810060950 832878269 936588425 582414128 814924734 81835325 843963460 357515097 556619694 867520468 909070955 869491967 930810183 976178741 985667268 226864063 918645933 526142392 617813837 293485643 937361413 538760268 878061195 261761893 839196058 730319166 827866476 768321542 930727135 542611377 929209926 518518628 915866680 786853444 963045127 627161894 640523226 418833121 853497034 983485818 998200832 129875168 853357098 398988729 709800230 425005498 470325638 243229644 859280558 725730952 879479578 881873321 941917577 307762677 667979153 706413721 980502737 827770047 870094149 233760370 248038314 580906786 725003001 525249397 773857524 328573207 591781260 595459284 762612847 387204480 617433348 515477016 876182886 81192790 774759743 301772796 541910903 654417282 913611339 718887681 819261160 860277568 940630280 180335439 203869681 802854728 845949937 901340681 920094784 890503355 959299804 683883928 849905535 338667652 992924185 261737335 812445585 489485248 772926351 400320063 871504667 982142668 985439060 799659221 892748126 680547855 773656810 545029676 589191287 103605127 324509058 85392754 422546670 388383244 868953666 68250105 147432596 956888489 988589041 723042197 871006045 462589175 712466602 27468558 126813167 841093544 919544414 942826942 950132685 408045073 648520606 16161789 349685105 585469159 678875857 353804550 525420381 100803417 282037666 953222077 981930298 410327389 885103709 472968418 868714112 120822215 489298911 536786769 713705305 114360748 817887732 670121309 687791221 474248187 885953098 13737993 566014246 982615322 987707850 361583494 719969554 132251851 165935588 209631737 882617272 499455237 946137983 974896802 994239605 798628449 878654301 584513075 638994414 824930629 954099014 349860134 929916568 746012918 988815586 34812475 186561376 557736448 798531638 281378029 419091893 66456713 252830397 752466605 932579488 313899206 405270085 572954642 675646622 24389709 978482479 933066209 959361058 767350269 785112716 722091652 856348125 633807614 877914365 269927248 564862610 620533222 686019817 988465533 989749148 830181366 967007984 357725137 568347567 137706146 345413273 23732927 903213020 750969600 818272359 834588925 864114480 737403337 878630436 977581979 984370352 304762966 537409623 363020543 384465295 522571867 786734746 545101808 920239413 976564224 990491971 154382279 376705710 556968062 863054397 375652708 568726042 894458149 911903538 926357161 984932418 513654769 691923115 336642630 906585661 91070327 240590565 820455497 971623885 685783007 926296286 48480947 349293809 170502501 924848648 413516997 579069713 222841072 978774266 194595646 773999347 301341279 754891874 817629378 908955586 128748037 673708293 418830439 870257224 370670718 992656543 931665068 945310327 144200959 836150261 776675192 941461525 603715294 645804136 342406675 922752134 849335337 986331082 437726904 608743515 627174627 960590247 296168399 726755822 273331366 472215235 992251311 999263878 251687077 767163353 506513527 590608888 114837707 916902895 367681726 858131883 84921408 137901025 554558154 786792139 439786166 493666023 412495453 795692272 848064377 885159860 961198139 977223303 265344834 621913539 480173863 692758179 74279717 699398992 29822454 454087011 806932634 821086896 555005453 906084339 772927354 811309778 317946486 490955647 459574574 712284917 802217980 864515317 775145393 809408288 497133525 659644700 803570156 964790244 163919398 596031530 154076611 187053314 406510622 443137218 317324400 571222165 366814330 613897720 535469473 731073428 703157597 936299520 875193525 951083189 202054956 644303629 535944953 819066128 819945138 857414911 375505582 899169145 994608161 996104958 502415207 567333419 541733278 684217188 818403086 889154750 758716274 838871312 805003269 876499118 214266108 743301699 405187289 811056086 178104431 568324395 461792545 741192838 950337415 969468288 803565949 899052096 685701654 971941294 570435329 989514868 139771120 960784593 678809260 915158195 834955940 937968025 71636972 724207113 390613716 543517286 748211220 867190724 425063764 547053762 470738002 947429587 141612065 725382157 658986412 846854771 454640089 655111918 158979542 687766003 153941987 497999930 711353833 917976108 157154396 543913504 526586299 891977329 751505761 895326387 233672468 404343814 565451214 591131717 687489148 964376564 240353653 598596727 534241103 955150582 364305619 572836684 285697151 354843599 285893602 530074363 684996399 938567775 534848057 548580993 757846002 837910242 249774923 992163388 970294149 972044077 775614149 903443971 133876733 340975581 672711763 986073202 637804973 941257760 959710226 991129116 537234065 816754726 517266014 917309154 353423179 761502837 167652374 486193609 360263316 866473962 516537795 955678113 988329197 996056285 567738399 710277847 569882617 609273251 111771678 455820646 693916538 890122199 445676184 702127238 786666692 857819025 493202130 624179029 560027858 850537439 642324873 891211685 225941312 304893705 625917093 647099680 828270356 881745447 168565807 690862622 900426407 933531695 686175933 975650731 692869570 712984967 373582700 650515024 841273872 864854724 744317329 814985524 955617480 978983458 588012299 912084801 754118890 893149334 706387274 850677106 484003203 499970929 711810447 998247391 315094414 481142492 477693706 917312168 976311557 979537110 379631472 900259210 18839618 21115165 658246478 720002357 158997993 684152742 887607145 926495260 800200652 966795559 884043277 961955502 632419682 850411467 606825531 917134908 271690302 577459989 188749037 292932005 137056536 518957341 296403032 927579739 730839579 904517583 366457765 694926746 450351865 922587863 937180912 963604541 934722137 971010765 847738856 912420623 523138792 949755368 963217769 982662386 763756547 929321998 734319416 850865200 706724867 825359964 54565434 230808860 471325057 880206677 316051536 641636481 230679173 448898602 14656040 567916628 691861186 872334292 113432953 196415696 848020247 917992128 187809267 404911672 741454974 756320515 450325727 907083493 858132461 935171251 292143479 339608314 868538651 972400740 549756002 747684530 972066059 976090463 104091459 444720220 158313374 769245698 640123938 781807947 227069726 733555801 79854583 765155854 326068156 827662014 369290631 915070241 935270647 976913458 475588107 554802617 968174966 986099398 547416256 700061927 925159539 958820449 323453780 589958667 66954796 813229032 228172910 998460460 370139997 596138213 640470416 846295257 318043305 711389494 674356244 903723770 968197122 991555878 238677558 306246098 228859196 866977187 21285727 369666460 197129555 982447678 120473724 157980418 154148434 449994419 257875155 839434184 509154052 838660829 31870833 47851919 73200447 235512786 4985143 504037555 686966697 811881833 7407162 948645474 82019492 983242680 303562004 876222567 323017806 719709944 50651016 973483406 331291374 349572727 34479776 600078284 288352399 403100001 190989189 730388581 341480742 483502084 664397298 950926668 252724963 810501708 880384310 919473982 761140214 907630750 415126540 819144677 41805865 407652325 725834703 785367865 844156548 973464585 830983473 872164165 104917905 563780905 893526908 980522101 267762566 822373309 19563556 880021355 851283755 899422331 149979090 275331226 685619679 930691820 37057160 878362585 390764012 547905533 370931874 577399720 43342014 392745846 180720907 247366594 925708522 960113263 549983629 797165003 337450939 649029175 696897763 937877236 33705317 946165892 437960248 913536961 404182716 898991230 446018561 847395559 331381740 524812221 386758423 810809424 666799591 748668912 83157506 599733527 656582418 952942839 71742398 95119457 288513509 521829748 904001055 956968721 897424426 951604928 506656345 926818214 441901561 552751706 10321323 180786214 94782341 932138668 415732364 609651881 650182402 793193449 349368848 556041788 222755465 795000762 623743129 826802712 562050316 740811917 755641972 987213894 169558850 923388299 206615762 806925149 339839216 569668742 407769490 724866639 796157244 855333830 522349452 846553109 371019388 740664907 619004091 746907310 296450310 699537663 168363263 734660175 600205865 988629612 950439363 998027098 406229409 935736695 640658624 998931575 707337048 933815684 91715188 944461049 878107303 924424038 61742451 472343053 432461846 799143216 686959794 920495462 793703003 972463851 192176844 831980151 187962239 582516055 509727766 522680186 129947213 608785682 61246581 247344002 498070857 875285552 616965518 622308702 614480695 977676743 808854242 987099746 56922447 63244314 416144181 684345694 641521269 917692245 885993677 887078364 326093260 702127986 752164984 915853954 931006929 936679221 615092057 944266574 593314762 826541677 244831978 389126049 787244885 920778910 145818242 631611149 422277119 483924951 584265849 836461600 558270559 754155547 996939287 998258666 9760540 40407692 310176975 510632640 982348228 989400743 704197548 985351540 997693788 999145822 184120396 944623954 739114999 860804200 265255291 391164550 36540881 133445324 802316176 923227075 154983292 216548432 539826871 935164137 27743838 110461821 174632392 668752286 163852191 856582161 270874095 664550533 976377051 997574149 385754096 928852010 36051222 759828042 759464920 833276042 916101557 923012612 432214577 461341927 400955993 990747946 204399784 627543652 569018809 840175107 255082351 343302721 903307697 953574768 840170370 865198388 654235828 852552225 841686884 992075504 867759120 874148803 972014274 977888888 959604473 983688859 654125694 667614116 270612583 654283765 77854665 855676207 987290418 995745050 280287619 711382981 746615342 908513493 698218239 710984787 670212707 982185143 722006895 765535800 803616822 846254556 641152677 779113770 159621449 766071041 350299517 727713715 645996124 981464850 114837305 967646173 201619692 531481171 24346774 305778783 701588543 723188575 984247956 986412082 324705969 871677467 774421426 917131696 495394709 962662837 985087786 985592816 44982564 161081909 461183476 714692655 906759783 963007092 770760341 820558865 207233530 424218173 176759908 945015763 724053294 773718947 757374506 831435228 270173023 502973440 452730489 757114582 597770331 927875103 762978066 935283867 169280425 738455196 408465975 958461679 92267574 964600523 588531646 900274569 442898720 559422906 620338296 932222444 455755036 614812261 34787312 725324385 629385282 781297723 790478681 880995532 348823877 775607297 824640127 825125655 222339951 968021046 294179508 792143398 142163704 267372835 401228232 611229212 794225293 859339785 762973661 881867845 230636292 376073744 744790615 930580623 858734156 892945267 525940059 663238576 83904869 313869964 38468338 310140395 222905309 235516782 686392204 691434462 169149800 965085515 531067310 781710536 145176514 966387961 19466260 201768882 131613497 732002362 570787429 777536431 576552307 920446624 472337532 643992183 746486069 899638451 339344083 657479821 385197086 823411694 540223074 817676811 932434384 997980061 412297314 798762089 558323604 699011365 877400667 948893322 326533921 437395653 73292295 434409501 802405010 810269889 173352632 423185707 896093480 984130668 499350831 926106729 765149805 987173717 877016241 987388166 682068953 929767451 890845803 941610149 133716876 999126873 405999097 813154978 533577022 855374488 415398661 755695591 633893041 728403138 552782136 929270415 906299113 997039715 451448704 501212189 79651320 803070870 106726653 378762013 788629426 894469755 395902465 421272033 125899397 441516086 122738022 904170244 99238735 614148906 389185169 403514808 565797679 728096696 715468630 989334001 787908582 850860927 79245140 294682622 723603577 862197804 801289394 924895368 523505238 556940068 85888923 886969019 330518060 947775513 45500599 318626057 732115290 888217720 660509070 822452600 910133098 937054074 131226908 364401929 462992590 995420748 260594769 977309322 694790687 776554362 104240647 340152819 840413367 915756675 330148639 677448298 331331402 720032827 621560131 791075469 581448628 733729687 413466877 745785047 689103247 866147572 53022540 451219512 344931061 616665949 121993072 783275279 582224183 766631459 16746044 661371401 758908830 932680600 916135979 948441075 996975653 997672941 549636827 939009295 73038553 998225019 590446974 779038311 242796143 954253649 361462306 765691520 587297685 766405895 191451348 889448133 778208074 982839656 753465596 932609236 159928514 994722500 966444081 995717203 725093030 768252634 69596917 763418073 817527768 893396306 158914166 711624572 671365146 975538560 690480208 705230646 290887200 499506987 422169741 696021851 792080492 825755829 169858077 454161798 254161197 762830421 864265707 932952577 215448313 404618904 859957103 928839668 269799813 503008756 137935311 604825990 822896564 907777247 23753895 184377560 402468183 621847299 639333045 902070806 540915321 939336789 754472802 797722483 730943605 940395237 232804255 556206682 74175369 756183003 672213318 801368590 354771303 430343183 78119944 575465422 203652373 799322509 126147366 769142134 206083586 393139019 820386735 980353767 693531878 769504809 989142385 994163137 456254903 652134760 800694636 867390352 682946740 893381405 484710435 586714776 835557110 870655879 664757366 854805104 693240556 709867077 584485172 607827655 670339367 810219542 629157429 716548151 805384160 859371777 805689638 900462260 427352698 861519051 273138108 634769692 110010998 440310558 275887072 501964006 823917954 999120036 184491820 289850089 176401994 982191728 664588194 922119744 406009606 839170386 672541132 950301213 856579823 959400386 655087158 832388584 682478175 891822552 437436109 908225959 660536895 976851479 603032797 763517413 623157419 707671532 991681316 994310047 57586566 77153059 388969106 539455481 678650747 789715552 75411767 772461890 295814129 828634749 509154978 900829773 624605797 755088280 689589654 718004640 550550016 767114746 78231145 943762233 796717149 958778071 887709861 936357778 57677673 859656941 256776284 860473982 124333383 433193365 414829904 531054975 774251317 889883927 526635703 705474600 123904115 893415905 733941053 997704814 873817991 965870879 526761134 909100713 685838853 977375377 351325764 900299201 844065448 901625462 151937701 900976503 71692226 599056825 509834190 997757049 187429097 866771952 662414978 948631014 592349906 667533467 447144834 648368602 795287058 901534327 300658860 688284643 461577427 982832524 408192015 821632141 63805532 804799502 315990650 390569063 998659670 998818803 655962069 860247445 296083276 953929426 883844965 971058334 895465987 995733391 119674597 833680001 434921141 692228468 227422074 999161488 378493001 441202970 773905414 884934199 21900979 252184998 102247820 309253785 837691052 838490834 161126121 386629163 834549037 997234544 295709555 309716803 845396459 869458116 360095504 586571348 891144551 965727095 962664211 978669143 532928423 706157253 137411044 405556543 442798777 901191928 122085415 411138428 703977428 806161483 990364098 996461311 144210575 264182325 805259305 894527876 181548141 241111447 155852657 964577568 856165848 909932056 632789472 992660235 162897994 618889292 702369034 910369482 196702430 272150069 131317420 414950875 262772885 372986208 563242032 963545217 279850388 348321215 520873303 705616009 86522619 410331578 471245512 996770523 74449476 370499863 987255996 987726443 571581607 713146125 861259484 893135662 850825709 980949155 701822574 983427155 473662638 480565644 212919595 442145304 528921293 641876918 965213790 971380674 851767942 938494053 107876014 337176995 361297739 583224795 884865969 925885932 959197813 966144109 814701870 944199506 448302462 617210363 727498444 733845189 149280939 352631233 788244881 932522710 459693074 879579980 182623762 539437067 775331397 942202783 828256135 907570339 213863976 866637154 411394273 701458998 500286895 713695386 347948797 379758219 769006165 983078009 807793655 870092045 360015355 897649267 96495339 393594350 239123476 380365484 983559670 990867587 62093176 735628420 65386070 196940076 796848058 808188195 306408477 579744322 264165804 718844904 164364316 732105413 234170885 569125729 762394095 856474533 775135901 824397273 672759813 960325240 395884728 465162408 600550663 976436939 769446167 992292078 452830646 940528507 752676268 962750936 144811983 703086315 445477942 598792568 657050225 987683008 278286676 367509686 194385816 550053713 984119884 996084223 157191717 597372872 588988039 692347813 918614218 947656601 657602312 898280478 139136862 386493532 467747114 956026063 920096336 923406426 188002993 327248932 752251872 835077047 942145489 977853263 438660792 940647480 136115891 964959281 359476664 800126260 180025286 757316903 900626371 935398603 125279099 787064301 910853838 949427207 94949151 397060778 146766194 197425899 453597779 611879761 647700750 791464474 76176849 995375714 584210438 731677925 32203341 900211081 857014678 947060742 912660943 953655808 770827589 779405713 865992600 873764193 53745145 448039997 221800997 332717824 158275087 588932078 932262572 992483369 393803790 724194778 743879449 974854992 978959228 999039633 70019814 282583972 953861055 972661486 682701157 933503611 37986444 324027179 261868048 273531266 647944498 826753588 645860527 987937798 806584796 898812725 952152966 961692929 979816214 987743584 362537856 861363557 810185938 814407367 652854686 795284277 171897 65195282 250691256 776849555 647088600 937780017 559110084 781767130 616056568 969428243 683819130 916825110 265104773 994130734 132899515 825693024 910054559 916215231 427721757 875910482 115737974 314147967 100447771 533547102 450941718 978074531 158267404 424078122 23036802 423855992 956766923 984338605 287896787 757032342 907529159 969269829 604855128 689828287 736143121 932139668 132594311 595263855 547805565 657580703 770882421 842978647 430036997 447445742 697605020 844701865 347443202 935523747 808167478 982665934 900193302 988360885 738880948 959611627 529359443 667399276 852123386 956515485 352074566 806010172 228303338 291714783 179371704 504132462 452898119 918858875 137704922 823447255 525642183 852168352 524594579 590037888 459802875 617656854 978518431 993397557 231621206 922461840 295411760 917912713 810810390 849886867 162592513 347428654 67447108 133657221 528102677 649742914 472527247 628017216 63422475 609286619 755524632 797373823 411792835 997760143 841457072 920160113 890904118 938326789 848577580 945014658 2382928 599627598 529964570 987012496 226695909 910969183 117220701 545838106 488376961 994280090 677985855 891786888 251215070 516537919 582236204 854378485 203945051 515174422 319424571 610271238 418864304 607596802 658624388 911325703 285250633 737289206 423907215 974150032 966511326 984157093 134513571 541988128 937602699 942224605 353272235 621783304 158302276 711073738 385708970 649027493 541064800 832749119 972188232 995464350 812251130 991317790 263070718 535429961 225248974 794349310 112645532 577977609 299468030 348031511 640779108 686255404 373917784 435690625 967877187 990820307 794104037 936123984 771471372 990492595 640914791 991769117 395432965 716438266 120195508 471290100 121731120 195613427 756249755 833122511 36494900 938770911 603157002 887015187 724716338 816872798 878437935 901366519 180652782 457386016 942645983 982936110 176135601 623960095 301946905 840194431 754293594 987243087 408512312 727139177 815112678 944822590 480052523 644586090 508782583 524901457 954076392 986069794 205997136 769134258 3946250 678852229 322326703 958220762 195718009 744925714 395239846 587714668 354463150 530306660 359174531 376498534 351910029 383187045 95817376 723578347 800960085 920681983 95542871 467273475 611020291 775296475 119087318 233270202 582173961 644973564 990835108 994969996 847066976 918525548 539643808 946027949 937782387 963211411 128622865 437274966 823855603 879242051 100581545 855022242 52662649 934419048 40884800 829244370 511296425 797092592 425187922 954602943 30616342 219748459 337929122 549417075 35709786 905188310 227373836 296942694 500503023 885453619 311657827 883296919 604213306 636557494 416431443 826524527 670647229 974641034 947738623 961239449 715727032 895070604 237606818 573705644 213487214 770428830 577256889 902861344 608870522 616820314 851620683 958516516 121172192 283680103 562805052 688348307 837428999 987336797 646774979 657630193 384343864 821369588 619932673 857430686 308302584 383033862 646040572 811778617 671418160 840520474 493241396 847704367 752032180 932182273 964017068 965680261 602509842 678343379 446839928 720527612 842393930 847313585 353292360 845012813 146182170 712152397 840793485 926617919 363143602 680620436 384874061 421966138 845144412 987411686 408591643 669926062 272315912 573144914 339111199 659130234 162723967 859105678 688988256 871627568 229775080 876906045 466495060 968404406 715658788 949035362 972553214 998947717 599817205 651573100 338569501 560546503 663003197 725643279 971035873 993766403 337013477 795208587 260471390 726234117 314397702 997920030 808152737 969445532 723307939 990882130 38777482 394173887 662118524 909276039 32443995 614749620 211147577 927622530 246033005 973905522 619232042 700650306 597897502 671282970 975120495 998509056 388333230 772006457 530705174 556847311 828007099 938558618 98680826 698581026 980821767 995754255 498462235 692772736 330912042 346884314 177229826 483779331 312770285 968877868 102030976 324171484 281706312 528637207 2330642 327043657 54316092 823516147 123595823 310554468 731194100 954584394 487016827 727830773 157044250 457946433 301920768 939861866 917725159 977847942 583363819 666793692 164859146 346111179 487742661 590094562 610888122 657791798 664361452 807812234 314952575 776684056 194032593 334522221 105254719 533174819 945714549 993936521 2315348 662971755 315914465 492852971 138551421 183124344 939450280 991462882 97230433 351450301 92030529 162654227 188675531 229690237 267261828 918908517 798736212 970768188 653186117 867760872 110049332 817910935 312624169 353510206 474117190 800528479 58850190 501586544 929187676 967229647 502580178 858234743 206807795 933754545 871041160 984702023 558073611 637450172 793628293 837207554 964465933 997091252 604518597 877369588 772071412 838514461 174610731 962452370 930780734 990809448 130620910 757988170 145362605 876347042 461726605 493169097 325087407 804577160 686777511 814740387 827150796 846145324 504624589 879952553 521371142 609823073 223006451 231990856 55438827 370287520 525887157 847155503 801577601 857732236 636414736 874142448 108752725 682187412 449596787 682605341 597224403 953104120 964151425 983341006 638302974 713667986 130836072 368065075 769388503 944545591 869148184 888827264 604130566 698624932 535192918 893520564 670413833 813144526 714535571 848437866 657272624 977181947 383631586 876313674 937259803 947146180 230413072 672373481 795027917 797714539 159370596 865917474 261044270 991672275 399339883 923001847 338280498 951786472 127268385 482476581 533859799 873893297 587642844 912243268 126374676 548363893 305886361 964858322 964296775 982832223 199046820 592264075 989214191 998789319 983066935 997815590 446171361 629446842 161377967 593732638 672689449 751310297 754660816 902810540 430007786 940882260 587176519 603297621 852862574 897642527 906356950 971755553 78670025 874800575 955323241 972405573 440861203 771427801 40411431 241126195 844377315 978612252 773291041 849000351 653922811 730936278 673144979 901235166 582858579 772850416 375200417 406038287 997216640 997468758 577355019 882289527 631762062 919016885 282623379 377613816 685127558 996996176 116921280 161584063 278832207 635430895 950540243 966609460 476051617 623555559 467656628 582354283 388621906 989463504 871661754 917493256 829516316 982044410 634544210 924867246 359331562 392027164 353929192 457856494 714552382 949579279 598274026 733220594 19636544 293210268 808611146 821416527 282094794 473288514 564576061 991850799 926420794 963319220 501913732 730013116 500366981 960202773 31058483 188569139 820531367 916472670 934352422 998160933 243292859 500763193 747819973 770730434 239391411 528157140 754226192 824126389 363130244 460115003 214210441 916728889 142339471 509442037 99311344 712857700 64445505 811977039 610812120 630504046 298731551 506355660 760860999 890466089 513197082 662311931 276341680 746449969 702725855 922808727 602280173 927341879 581429575 827469941 284119230 658610673 178529210 760459865 762750305 894732431 425620044 489097756 706661531 925359039 72881536 788420730 156960291 499891507 658391740 769661395 541158313 604476447 32862378 418754963 872936931 938560782 775793610 811788734 649213276 803336594 191799697 629012746 387664133 956360236 845431549 851032778 508688115 812388400 506436716 506841425 778675351 842791690 878551790 943806136 957553297 995364668 124013284 178065900 215388392 293607162 141434540 968205760 43612769 419556689 364427175 373959978 205419344 409825300 6358654 645078102 148925642 389845972 621229293 807470488 75626428 501144933 641335959 854278980 409358417 820298760 315838972 665812983 477204561 486280643 887305141 962394753 348796548 622384147 152374284 782443130 655991708 931928983 747695571 853229731 729332804 896625635 957022949 965973579 265255656 291285892 456057588 949806620 711058516 875182200 516712163 736281055 614421791 638816330 660830863 776264309 945385856 959768138 122194866 477041808 629841012 909927413 277947974 571686535 913701578 936287710 140892760 998524396 885477994 893422387 831614088 973913312 993172797 998223281 832759777 952357957 140239103 146397029 100340505 123351917 89771470 774659625 677407846 683360918 286742198 610723772 571346558 677611209 629042671 710101962 440981577 660379757 449314849 518588252 602048459 825742535 756975480 893388058 481212411 950051279 92678218 369390746 966909311 994284842 136778681 146415449 418332646 670510893 482993760 669682979 379118212 840840212 941051846 968316205 115144244 924275444 546956516 678394296 393904566 759559310 852340631 959995688 891516603 950256452 695131761 842698430 297138775 508184300 52268505 703345664 770848857 894814854 950744106 988553879 152783785 882324091 584917095 883429638 316235849 935759009 676572296 987161401 18602896 891300867 950311643 998882721 600456289 629430448 112494234 920146190 281409539 894025774 326650410 959086616 596249162 603243924 701541196 855750985 703391626 810101414 483034661 633186033 240682876 690866550 802443305 996565535 472928987 798967906 595972430 989813179 940306779 946050132 175051675 859900233 912137277 929758809 714378307 738572159 279141482 783211105 508930214 631612861 557225821 934237409 865733736 941888354 658640885 959246501 430448697 841295852 233461929 781634776 111580525 472920758 342508562 654532335 839782899 962538951 151356898 598028250 752226005 901123567 558256406 735559808 165159832 740058476 665614067 869521667 762648688 789720428 100695139 565308969 59403148 579687885 67699456 268466254 28649411 695419941 210518385 842930897 83434127 324593925 668367806 737523088 620491231 841013224 462022450 921535793 423091427 521753634 720473601 991352052 961473357 972196289 600920218 909710866 103871022 117375510 379830805 925716049 340259821 808063182 144289608 798495602 542162750 924394540 739096620 966589940 807405956 833603676 369405692 781265839 526995921 918736833 737230834 926504602 979339160 983298745 834637781 995366961 423155308 730245123 616462517 713095804 224874993 883465907 66697357 285996913 80250155 947693345 908540693 963601951 577412275 743024599 83036429 759745000 221848836 720646659 43985044 687154957 195577764 485431735 403298293 990740346 863977680 938792708 766182443 791171282 265114044 800215791 929100620 997995968 871893338 960712461 368417026 749794809 599039149 658901620 872883956 916365275 700649032 778425290 156812333 293113386 105251264 304054493 982061356 995393257 864313127 896855928 270651191 720159028 45226680 190953542 620798822 623247010 597032773 691591508 227404213 522798812 5991014 383973017 670626637 889662595 274062199 945631572 801962832 933586231 902205770 960473276 316292705 665914414 6769856 817570187 138041398 733390385 791391936 923607368 23032994 809386043 470910558 546849365 332984833 437644070 38948171 947601765 992533278 998474853 125015205 503662760 666353069 831975144 462990349 969044066 967491991 971676482 309859806 830314882 376010864 879897604 786604041 926033843 585722248 987156299 865605254 890787026 867829870 921446578 738549250 747321501 339997651 585644877 3099123 540991057 259520192 487868463 95235948 533338427 693873007 974890627 566717403 668391239 803796935 924782811 756160245 927742831 223744770 297944583 974677881 977290206 4853287 827871874 891152225 912256536 678651106 846189157 444837493 776984817 544194409 892312278 250506958 381210236 753073114 954564009 268535424 461023110 102138030 503881904 747336568 749997455 597438963 778450156 285157946 996403933 263670932 395270201 751394044 925749342 968246240 997379320 524256018 964112298 505346014 817379248 306445917 927966852 70672563 405608939 515989466 835822700 42678304 727187576 790594733 955928046 149691222 964286675 352212795 665973541 933070956 999385089 88664721 197223365 203495908 219437699 303475121 476626053 592873844 887029205 386081624 947151885 747822665 956872963 782527196 817564325 573391941 602935970 966956682 998865299 813717766 918796262 739485652 921081399 545079702 987012249 443139785 817605987 398430137 848330623 321893415 752719233 134055833 706426485 554755035 788633906 604485268 743712785 272072082 387502060 585133611 761785873 795121607 866827370 293461056 646619228 741216383 782175645 56087759 794443308 836316933 932314647 557570078 773129359 554953233 962317756 609100621 756561147 131048830 643264897 444472749 533245000 368123079 817518348 368922122 872141395 773724533 927995689 620413631 781315049 836631249 894962387 350206953 790766238 762528857 778096809 377360319 755866861 58142315 651455348 52488307 359396756 951267203 981936370 562011840 585725438 814940946 959435150 626902139 632878371 20989236 859887212 818343472 931644069 380241009 601678360 789487324 912143977 686111855 857695480 883535311 958252522 945618498 974809334 474958727 637272572 594264857 956656978 579596148 795540990 458879826 758168572 621723128 954618244 296991784 315595801 586994288 948334701 1090766 763513273 320098300 571815242 300582764 748044760 887175588 938718741 396507596 904427465 554337987 791441316 665681577 909957085 107065577 615916160 998546070 999091352 25769498 383471441 884501512 977166017 618661259 744946190 305504375 903246545 478702845 539983951 469263268 607696188 145584491 504806921 868441010 933754395 647683437 897972669 89389538 873715714 749294976 969510271 583488989 965866411 956686774 983017469 916488440 956066853 255156779 515940796 538685693 973323332 563092999 935542052 837984509 911543192 935008182 935609441 936821518 962726754 19357306 349522049 587480142 764687733 278200701 382081344 638975292 931450327 745766716 987731984 366718679 853030093 577166445 789510696 59106858 995559896 615728704 972052994 84365192 702843408 397178918 769505628 729571876 755329855 55916093 348515397 146375034 315940471 963410237 996629623 419414915 907389402 984884707 997447563 583822255 607228483 333266443 840949338 515619191 786172145 289374695 947785757 371507668 901828851 74681730 266951253 375625776 859260662 957234981 998675886 58555255 299480342 331949538 783962037 93422152 261648991 97749366 693420988 777480614 931751993 264189071 488239203 778731135 871869209 264578838 694523212 648776025 960668988 473587382 664804476 259049332 364931402 318683323 757222516 653078196 696451962 914499323 918885500 426994032 600536756 671578488 900341811 183309277 992628630 419817614 614536565 137710313 282040530 556839109 817293124 766900008 848511537 702791123 710661636 439301030 572682347 412976662 534092888 344043325 973457719 196023671 914744636 335224434 442411477 919880755 921328126 398320097 458949161 897470329 962556260 23459491 120684279 776995967 778156507 252463374 956516302 688693943 826576907 714321722 808252707 864461924 871075221 414249839 634283001 494158508 793499710 773782330 977832339 786138566 978501385 294712456 379580799 937764587 949568839 413832105 895421335 162804143 817117645 842302964 938975460 465846806 727765445 319456492 591889123 576816953 684506719 217210543 671577275 992693857 994016858 905622444 930830846 296149026 396211670 879100353 898359305 937793458 962660556 831011692 920751336 303452155 985435518 119871547 663942011 78566714 418737547 949740051 959701095 2074492 77012636 643415996 979733210 301885119 392953678 889874838 976898786 401662665 409525606 240531678 340283084 889459059 940872584 158447550 532718256 264096561 368609017 249089051 888649100 703527497 865355356 315835990 992216733 136504623 458366301 387663654 637966985 688443913 924976340 973822455 998629871 612901086 684410586 245033529 549569845 223313220 971183625 838540788 866431837 341043306 867246576 14409656 752571007 162722352 471657318 214018006 495897049 284666145 728415049 901544156 962488668 645305700 966699442 929921571 934006622 659789979 964252294 378846066 796490366 553740009 694957084 849868139 953017754 353835105 745224179 674625730 760580071 393032852 760964702 192372042 689676286 847075289 936923576 23178989 459894320 917140400 991398784 659598558 745004403 581618419 765682026 523922435 838569529 51349112 660306741 548873938 734369400 437352610 612589742 183037221 577493259 910326331 946776263 677403268 728748379 800022057 809729613 867445878 887973773 459303421 570353563 286467495 911594645 629064098 812871219 248780631 413447219 371705320 401056035 415919911 993799769 7183972 644474314 731054892 918469245 22804206 630379503 461898510 584601748 261512438 846813185 886554019 963772594 167696014 239799190 99530105 628609909 627530824 760170321 723258916 879287743 502868367 786797824 283004709 325680620 539426603 709700434 834432055 883745707 541390927 740933518 999214281 999373087 224786109 233843411 169492371 364736195 900376272 938054644 948686120 959937879 751146206 972468979 940619023 980394385 601754136 997926316 856893355 983466294 136635966 342498972 745620307 801721819 655182315 743174450 627291111 672922854 944910002 987167800 181233087 494949743 352566145 737909762 954232454 961702252 491405304 745286491 917603408 953713948 542827031 816772195 90832124 463759763 976031253 999362957 381951140 550772495 800387305 941981727 33285610 582826710 728906823 887725619 550460054 901381362 889675150 921058495 183202698 808270037 14217970 775990838 368235758 629524895 367279351 692119226 712050637 758410549 599025518 899663966 558229773 727680185 336281780 870645496 631146996 909722767 207290760 693512497 215935757 289267729 120169883 390000074 733006644 799639933 980179869 987836695 938237350 961223215 203270731 996560685 945479264 995093277 354263934 545510487 762960557 975253113 972934659 975950399 979219144 987787881 459823750 772925445 120603054 655553810 978260217 980579061 451946336 945680749 274749866 533709827 587246435 747732602 552585996 936529199 532772039 950054936 429750493 834100129 824511932 934127475 85393573 769010380 276020664 913456555 831347581 834456156 841831225 960900717 39397347 422467912 153846241 446426634 467179879 982577138 522008846 908803061 587957577 704409952 807802239 952378364 541875605 945040859 588332605 841642203 388144364 495772599 765303368 873806246 261409497 844431628 411402416 794326988 265925346 436143396 600110321 756860057 489742082 903395088 953041334 963126041 418022214 430359609 213098021 524941641 675962456 738971282 756455641 847026794 491154133 713462673 176162430 403100076 77188159 613013526 424400694 798432960 189854952 556265564 592434390 899798097 254344244 731805096 457201615 727076674 634329898 693754843 582526688 731093094 307760835 762467173 116549181 283408376 609269044 703190241 127963564 980800222 418624555 748952464 717718442 982816665 605442151 793488826 66564564 388001622 176038043 235533291 875038679 966155703 766292201 863271122 863894156 905278994 182781095 420404264 369182792 848582836 680296559 744619189 310830478 650117161 569810282 940156780 788520 792989497 437714461 823153809 328454255 708880642 476538766 600453408 725319446 904559688 932783343 980896853 690904122 994419870 240288345 939158716 331624307 782129829 724164180 983336610 259545085 876614140 947002000 977495744 500468138 671005820 552385300 770101091 343943116 476851774 6307259 401724333 205813721 338949409 631654664 685151405 975912933 985326578 530905785 979159376 803716883 813618743 772406750 921166558 850203820 851573978 613721224 838258886 947724438 955453828 97140986 366136818 813525973 848778802 684938493 864546901 499559068 766655048 494822318 764044486 897046227 995914791 399858130 742248394 709209160 830047174 972790363 989328930 959742228 975534927 264357462 503844765 136930443 740468103 86472339 398632013 36313916 567970362 512408626 901242938 455202524 623924366 823629065 965926455 908135968 954998343 464337167 470083084 279967043 645764959 748590515 984347996 775407869 820440008 134996687 461178045 706800091 756882845 940175426 952999617 792564046 836458255 561700163 970354733 347197168 816066071 22894077 869676367 61488729 229202570 41137404 404635698 142963881 734637007 742311739 925968168 424547136 818475285 748150170 790218198 348564047 575356426 139233063 675223972 825151351 833799614 103857930 868437019 616158826 736996747 549589081 830584278 266653587 914886257 753256933 770421690 501397342 915112771 691178241 891119615 423556622 535667512 90693911 908909908 623336065 917381930 190422896 388320793 125905912 444676987 342548232 608691325 868106081 994484733 965929083 998761148 633935899 635095506 449621699 477503582 861679302 929813463 200945928 558401166 63045007 702248444 611951086 915499769 237156944 941943499 26247860 880460566 739924767 757452454 673273243 864626962 231403545 601551635 23254807 373250225 382271122 621595506 828895443 880574859 202576911 785428653 991696855 992957330 148721556 786965732 867870686 870781076 303139117 407465261 795264828 945261786 411762595 962222432 876631678 912548806 9519858 922095192 306519762 896899613 144584401 454639538 902418901 986538905 738118565 846650133 68996801 616422551 275239148 808174937 17268870 847856977 997784575 998133409 39463583 647496928 904253098 905939013 429580946 438184845 293044204 397592198 938289153 940732328 765080455 841151590 947138430 981953613 923341718 944716446 581650809 735885854 488657754 630765915 774778628 928580369 725990994 820533332 977966187 981762418 904825482 925109430 175600194 684842286 658433905 724329188 806981907 976263878 146639295 525236882 369855765 655724134 380072159 597504728 890559148 893939772 944052253 975099517 131844100 315738102 380713997 828822039 329910037 853685350 12281789 215803204 975654238 989060649 104843421 582941457 825952679 945877635 992439270 997606019 123451575 234613982 839613968 989210047 47019914 194762335 831122563 858581648 161650690 651859876 145875259 210367220 541168509 693760536 700668225 778732817 185754341 433357228 994002725 999001819 170195414 766739154 544271254 954001818 560631242 705852573 206583436 972738405 67780346 670419761 961996084 976305143 59551851 269379675 196538239 961022372 571297319 722607960 610362475 917154351 222570239 896521317 715387983 768220071 635692054 655366716 517667872 581971592 461659660 528455507 918479153 919734836 668159725 940960670 282130003 904305677 244956620 395372227 775575859 915811532 87524721 188413948 729113901 736188807 407443128 532002899 283001830 514737131 774925280 960529819 611173239 828449012 232515892 373980601 229395853 991945858 666293193 713924471 671310023 768649816 602697721 938679552 957962030 987049249 314154117 394324272 895082226 951400058 667073198 923572093 347010988 922211954 294783492 668935981 111235582 420622829 201821014 506861826 536642429 664456772 758802121 962080145 670691138 938382212 954505045 972449134 888300140 977788884 149027328 154037851 72427460 543069853 60785159 613171801 439618535 583834744 69095738 228112478 91054800 124938406 962864783 969730307 777716468 999255064 405981811 890907285 910279241 959179868 197279870 390793345 566864029 596824764 353696923 707036019 221896815 400966980 584008489 643706582 86134903 284458004 37673210 623403260 878815669 911324556 1010046 265162287 363752389 550543014 412674757 812798648 864035196 940572601 680087224 869972166 592089948 695401953 960441685 983172019 642534067 773877663 437143777 809772730 967299943 970151079 758825738 942414426 889147863 980601921 708588179 996409459 55461261 948495609 811143732 977807832 280825507 415320119 87048723 611234779 177545703 679911319 549258382 974165521 19320829 746266105 691831336 850374131 34134162 996357981 881547470 966367864 259571853 687803549 399265522 691694259 718664728 934271197 370105159 607947111 395524724 881939069 892417472 901766550 366712784 480942311 838565089 922797681 713342817 854652050 432481325 508544518 168457486 192672361 451175043 936886257 867863524 913075542 867455807 953110299 668801480 796047007 701385576 736614696 230610930 770826543 590187286 703032423 830906812 994416396 976777183 978835891 374267735 394588328 397576337 589686609 810724206 984054128 709194944 870225295 308189820 825238884 223436504 866022491 44380866 457873329 890470007 993728200 133482242 483070585 121193598 228550804 202565315 826869572 88573536 584106095 603572141 621301200 235760309 626268929 798273526 978295201 420124423 766005676 98487534 938115045 845420561 864364236 658674613 659199227 854937002 949801810 465045658 651768823 976522415 985394976 254425956 730577675 393099202 865022256 437596157 675978208 421100416 896404023 215182276 816816630 747001922 851597204 765930074 772662650 930953426 963067645 576338649 590437990 811235214 990406801 126544582 231149082 362255173 961824080 332541880 429442080 28121208 720299744 40330707 507900547 906956306 939467895 801017754 916630260 679958587 987279480 540831275 693002470 561984393 718926938 955703919 984141533 653092296 887057433 967477632 982926886 738160512 892460330 43522323 89633650 343911593 906218450 901773880 920436416 347228623 643042300 984682269 990322159 978233382 989894255 462126390 854350112 103322445 353567376 484936701 971485279 556705269 590494267 273739342 421598346 976669099 982055753 769495489 890821582 404979271 663253440 516152041 716817777 309605591 465572353 840667458 942607978 878706528 952307375 70538761 279403300 132239972 491013796 613311047 975259170 678681090 735846765 209530086 252545574 608145911 849908128 221366813 750043281 67790543 329983774 541084041 865435390 301223914 863519468 658879191 775157315 538612164 706797534 5029791 381960270 56056900 938783570 260984180 622721882 281026694 996701202 669276170 805699741 901593209 923473569 876466517 918880306 906724579 937250055 627384478 773923836 554916220 602357058 799320816 871760701 90625689 484663195 974004409 980605609 378882947 464261701 27372663 557955075 411954844 968725595 773694945 923306561 232744956 678135675 700381309 728210160 184747022 305232609 189193821 928640458 12338885 433334025 713110661 771791421 585606702 710292861 226704521 630985466 621804414 835520422 805601972 868026682 28353761 894886660 17746843 586902328 871014632 907429584 712030367 859254981 607076078 978407664 414702360 846797705 120867867 577848953 117815997 806884739 645240642 778328786 366733626 857338815 127707667 457708405 584803851 589376162 355805163 743101931 549671333 637109339 243871601 309251281 679942650 901330122 995452672 997049621 60091111 74715989 421585531 749374208 800154286 859040252 590375343 780296618 106313814 744498078 210925465 860143734 307625629 347104362 114320848 697902698 693549511 710687346 843214445 870886517 171981777 840617881 263537014 284431188 133953303 214139205 274948604 342429000 30246654 964122316 41157608 660461131 493719475 794525760 249861978 463431884 822472497 832959836 138944318 561132519 52120911 815775497 480278633 508212537 198869524 297963721 991019704 993511103 659020662 872090957 312030562 738019099 400484749 831215468 302369065 580933248 630770593 916982564 537380627 959073889 952701359 982037138 264882862 384827464 195908054 992908234 242512310 360406870 61877252 744417052 690661970 900708266 887626471 915671684 674245875 869402485 204978439 732356704 621131191 996878006 173749429 946492537 90875040 931906268 467982901 638014986 501839872 775748108 77623159 897059219 151067433 978032599 865338722 939826033 360058558 900015818 446710659 701692614 67125004 576584369 905432882 941467856 648148281 811754511 681873540 968828425 385861897 610783393 205511579 493134812 970318032 981699181 823244840 834018974 50714119 372127168 883693480 949820756 409468368 745144183 855038340 913973105 456802317 633368628 262670392 897478557 676050370 718072080 434583179 674441470 452623684 913281377 247655794 288227053 99077226 260474752 816467772 960772289 216139561 816474148 611423817 776293052 96865889 700559184 172416599 300649461 608059147 764455407 623866164 899641611 230839306 344561335 520805890 733445162 230831964 614128167 247390262 298119774 779893728 802902341 489194276 657980574 981968084 982583876 645006520 804951268 215826138 571810307 694260971 936767022 61142168 815691701 917663042 954457484 995995876 998154606 750654919 913965413 622595682 752850440 627569755 655906094 205576702 661826460 88316605 194403827 317210150 873499100 218742632 936034798 929570836 930194696 485888827 559668392 268039378 313361824 125325871 988213303 216531936 675646768 478542904 662791724 582104462 680709608 919542344 985305961 614918071 893069891 2113117 591270526 650964684 862145809 399610621 631799066 501472415 710499424 659016930 811922791 194186761 410892542 953249449 969709674 748947359 948431327 437484941 500404782 395636945 899637224 495586521 588175519 235562358 815949518 295906464 635074937 37992845 938462695 131421949 473202284 598557999 677801294 657679206 707399804 929287920 960977236 925540331 969256365 589280289 963603359 261550261 670281601 757787404 876518077 825357305 963179026 8011235 678159622 125202985 273403927 809263842 825536454 556097833 679127688 378955183 598027307 234303872 780958995 220818388 242994948 477053417 963128517 471406416 486957094 626675601 878718135 339335468 411921582 681903752 882741096 187664542 569566883 527720125 711842108 414529534 930413522 578350940 729429364 70572775 891072545 207142537 280776873 4023988 897364212 80296779 452592315 182598627 992185474 569791185 863946808 17053605 684288048 645414973 798715231 551181428 766096526 505002523 926124625 226729448 682672319 284939739 520907546 397865272 730900533 633173775 972688472 848722950 986758372 99046754 550587999 239544158 281700596 569235616 644762228 405934030 853575410 397770325 615507014 569466153 710004553 908941117 972446401 425664582 930158931 97415179 98398367 815520852 959214447 617839903 848500353 844914212 892066506 577232638 945791062 26871875 172157534 991618415 997622734 684047008 831872641 530632755 663258213 259423209 370110726 437212591 823135027 512691361 967993522 111449933 400087337 240649720 632014881 263698944 349383851 557594532 979078078 657452714 665929165 663354287 842577465 10376159 183896228 938718977 993092890 828686967 993958536 100703922 830846317 339348805 557196351 763409871 945749632 92383420 758098228 311303955 885549416 912552591 975302220 701494596 820464623 939174320 948540616 555629362 585227261 892931856 909819698 166356033 729766189 29548801 287112930 739607936 795380170 899887028 972925683 195243958 735656270 723051895 937389531 989916869 996614872 941248184 955002659 645200606 882216083 186322338 445024961 659613715 671429110 188298474 466307125 417713779 944502532 122037298 526635326 998691019 999141811 546433067 919333726 110003152 325544778 486683721 520369511 258323570 840318590 11510941 645827176 101835584 647085615 473586710 852877734 21293704 175154211 411770831 648451646 608912090 870776511 899487771 970781584 306860695 580548177 941562914 969817066 247353720 749347889 640153481 886323088 781270924 822698753 21538950 974517866 770386880 914425392 18060701 727067583 658262062 823427996 562055766 733259383 514779401 522779177 170514944 378141104 282202320 383624962 980168738 998447103 252348711 821429688 191925197 864057145 185954211 662409879 103948458 870557642 505095188 580064521 12671464 721028472 747441719 989645562 274993831 275117028 895182671 910953927 527245935 796965148 432269302 585766823 483658103 978691896 957347361 992373931 833297296 920573784 65706879 598264806 145051723 377442635 672921699 952419078 909239770 998225773 355188402 746961529 427842383 545463254 220069131 350781159 793881268 913843183 934422674 995059760 855933470 965716245 260287723 495195746 886716656 946157083 250730913 771064469 779414802 988036159 763951875 833999580 725704630 871349826 920708608 930914687 151950155 703353520 415751724 553346264 970887578 984520957 653494595 873834343 894722049 939718457 772996419 924816317 22049254 75750877 951245455 990166650 462340459 626581965 646086340 885110375 853074746 912488874 462173653 576547533 778867076 850705011 440107446 713745397 210412279 701606426 601735150 648091071 570036686 909255892 654587991 998169765 509731178 974147534 400939766 699290687 105820775 393526323 233444809 535785034 836308027 925234320 444947349 874709451 395469299 967257894 725905377 861578442 19730364 730940327 231231195 282924052 484479975 905961350 213216397 978637845 606158186 759897885 980601311 981682788 705873941 810135415 10042517 254497289 556825403 860381297 438700478 627984138 509871220 640908528 830897636 853262002 394640535 688595174 753665163 775509749 108275691 845829415 989316908 991711298 420307069 644629013 20380426 181890248 622297937 772482649 392944192 426017411 383446139 577430251 137209493 688966474 533774678 759242737 952295857 959612056 28564823 501698039 734883101 912976471 694987724 980499371 814815253 852948633 442563792 508701622 989761645 996124193 295689688 623400731 91169081 502938696 154876883 497506350 85758579 866545824 743962566 934245669 907882861 989345157 181021585 498952315 756443745 947537637 176653161 759550124 582654722 882513839 547590581 586819934 163377703 454324757 160312895 695163405 745835744 885503376 4007201 613687676 786996110 988132308 297743793 332071217 871241335 897413748 423740984 700417873 62430643 534436091 187199051 302200532 320146868 869205539 195747558 775214021 78955847 636208115 34502433 822954840 70853072 636375114 594064456 641822281 94646813 355312373 650062979 937458113 241616618 781789728 858747955 995295065 791686259 958689655 582970091 652681606 922911210 978855444 947633036 959173488 98752 166783856 734907802 762135893 539096650 578791445 927531468 964663097 179369585 636991919 431552020 923105565 939467624 971946776 954259889 987087297 983383578 984962332 573764606 698542491 956278552 957681739 895529347 929636752 48031780 188706776 461983965 606403069 225283055 715237025 449367919 731857420 427327760 501178226 500993857 614064181 123259372 511771177 460554864 637593993 303421518 769776449 959640369 966371390 559329203 845281048 16626517 239283297 757279006 777326534 451626285 486900205 185878288 426591604 697825969 746282813 310327290 454254129 441128765 835647025 487303946 696532220 569793551 787720011 392890543 455076030 653078325 809635397 97175774 921354311 844116214 905127841 970082550 992321116 881788463 933088833 547026978 580932540 273749573 312194691 699528291 859365321 509101858 894615903 404897147 555355725 944726653 998978727 459070124 633899463 145236969 315609433 663613528 880244141 674078242 802647027 136370189 356094419 268667928 407292494 437789757 797353866 815571374 911049864 56548493 927045369 355200644 557582925 621365273 790939820 233057794 783651300 400840671 425770174 547071373 615703443 530129905 647168456 142520947 261406791 125913063 271339614 676343083 730228408 449701661 859133360 866508418 900313313 360841975 510166852 250811560 642066939 620501749 735389122 720498744 861083176 602183899 913154696 59299278 776567128 513767818 814783975 407871889 449360037 188868080 792835965 699628320 868791870 833618796 932260733 694414270 725286032 491462974 493845703 841704219 988459044 89119339 129945687 764358380 804771058 157183205 678134529 960539487 970595342 607885392 882913858 785294630 936763179 725833940 806741996 987499880 988492663 25514084 210328933 625396529 635629674 455947125 795152371 668281289 808710584 786118700 849450604 153174366 318920252 326358310 387242685 369989546 924519098 784305535 915738664 671697401 891134949 376109168 997713660 129591097 289466698 102313984 447853817 850890722 903727108 464957592 887295882 691371614 855766945 144286766 572426823 697407226 722092367 273447384 606803152 156181470 590695866 527629604 975595196 791435399 868527904 614755784 707021184 116166496 244763916 25083642 333512826 886805432 934751947 445584367 925436304 151556469 442252212 723154561 845377764 445197660 544633759 733618744 747970070 951418297 966958800 366731914 455133860 418924365 934176902 948293975 964245691 826915383 978809646 888485405 978986520 893811250 919996778 242484804 557628320 555442466 677379313 235430738 335076474 10890049 532365563 463613922 674505053 570425596 874677255 987954765 993135453 215629729 389640200 210739526 433841637 772694244 825563909 244367937 726270192 870312154 926136897 201189984 469535021 161885309 283137265 228509993 748098829 220609907 967817390 850817453 851332301 787588221 917099828 271387607 428094088 781774647 936645411 173013225 674600435 240050967 310652664 486544166 511288353 804340735 958213487 409340113 887683008 740575440 992241370 713098660 837635115 957997950 992175125 273229588 587347651 583685348 901012445 930880997 947037670 447351184 772111245 334825182 964168429 864192804 977021227 651308597 754194136 272783510 291405374 465231036 936749160 697514865 751420762 493055538 939894464 326586996 718654974 137029180 208278021 309803210 396176174 982393513 986685389 87936344 566837957 839866868 873766730 51493910 881195475 344376892 735458753 577214127 753922801 919019876 997961652 479467633 610579344 442507565 915146087 241991831 642446732 116736658 744754185 294798359 909405672 544593819 595973620 882147030 931581194 315176672 891864090 789571669 832446936 120140443 384336461 250210659 728404676 373637459 850686399 950230184 968089858 875472629 940041306 462494857 675513635 120770472 999248514 304488948 521608876 56796380 851985248 987314712 996446205 591381443 862298396 945526688 981941727 171480265 641313491 675787672 982299415 542805498 545010111 573277451 829092430 267235893 613984981 48269366 466396036 506995509 589662774 556316123 896603896 145733312 754693934 425584504 594272019 819914799 931686529 200322203 201548169 722502298 994351541 748778303 807260724 862395455 992189791 45143027 49303897 568435323 877191522 686625786 696257853 766033576 787337268 352184922 902060522 961725783 999009654 887520617 943107979 807014777 917698297 196183519 689562815 95084683 478574435 423031556 568493233 933359318 973499876 780085247 970001325 58450759 865597109 997034587 999083347 236033121 508190266 374558722 915434012 98468782 254545536 550024336 678735082 176593697 870340835 634040638 892325090 902973263 991558873 830272383 912943896 751173911 892164871 257493355 639469841 405319837 843040030 230241163 577836534 752444544 997441280 707582924 831338561 154010704 748758875 243470392 477376760 749428693 901299393 966242613 997929523 644646032 847177601 267547936 782961322 252996475 270247969 786565106 910961684 802790305 890298190 239075755 295196778 652803443 793335200 121571711 870044554 252210590 705547697 304200617 861162351 699170485 790574809 100522776 958331224 608276531 988948436 389749648 725483535 720938511 958452744 222256514 931948741 873683510 892446281 280257422 418040223 756902269 972901876 338180695 654202788 176781394 984360253 108414832 617467443 884382810 909552360 952321566 979717334 260453990 913931134 688487464 716711754 362478933 727059963 60983936 932273482 455718661 773926415 415946637 874783447 435587439 741993470 475063133 766454061 556734980 557245827 272798156 663696514 608900936 844275919 834181665 834460796 164343749 646453273 886685737 988943505 46503549 529585780 484694675 731027122 691051450 708786654 890416710 967696942 421167646 492099113 36144829 140988760 518644930 853484105 307643579 727117396 887605423 899745739 628395926 887751246 170922817 990784575 553972581 823502141 84488930 957860823 795341743 903891833 982249145 997939025 415846569 739122802 670134530 871052781 520414241 829422352 832160230 877645008 670130952 678367110 430306245 599895792 813956625 957292575 23739906 908861335 285044316 393303885 8535504 404105097 437505965 751100855 457661377 723570228 553423548 909420467 479118798 849999144 411073579 976757273 35824388 790695581 343382175 909900546 525411891 982517710 268532362 969017034 341630881 885589926 422117896 862516629 616256511 680806950 970729887 988285909 85453414 364637263 271981236 986653899 218421662 952970644 512235405 962591404 353580033 907699427 108678079 560495506 443489514 693595381 202346578 594285810 132244469 815589241 245289782 587862379 568575039 685201036 49594439 827940387 677540779 724381077 554243732 700648092 163639646 363507683 670723606 914722729 311662587 747893075 12698463 792700420 153878089 754965553 674686818 682725243 533738507 587093145 453586301 484243227 452803855 725951642 746354620 876537545 108363151 903920528 985950087 998479672 5569878 400251489 758759176 767873570 349380368 582264158 643054137 833332195 795667122 960820601 271218361 651454766 410231116 465485467 276175182 286947039 542226836 726454377 81482419 259439265 179648874 752921513 900626664 945525593 201393265 268998066 545028127 717569123 316763816 774847522 408896733 605165791 284084384 787034261 578867615 645588327 25910469 540585274 730075959 923638055 469588421 764557483 206384011 785124729 640826808 862714875 683638561 877488808 563368322 896302503 955933868 957240041 415089807 465817800 753170549 819106725 516255291 612919350 111595693 159502758 610348629 935639648 880760242 923468617 749854066 916667165 583885672 954763496 626340611 680706598 437014313 791056442 133357340 701260444 860195539 901207679 917309207 922152889 224333366 759050879 638712032 765930027 704847996 706352399 213109919 722274623 175008060 857483040 297612144 373641719 135491206 922223173 348229219 575199994 574296407 932459516 648804600 742347275 206374937 542432004 875541899 932404878 326245345 715419858 656912054 839635422 564597558 805893086 502816077 562656256 591925814 985112521 480890110 917579728 107551597 282093567 175324841 232098894 934905163 985949670 815730120 903877885 496764696 825657631 166015767 175771606 792108830 997790307 311163182 935070636 665718123 756172618 513799551 567012878 191756347 813222351 67920011 925729604 237471609 680846298 974496750 989174924 632258997 857622219 390947056 852684634 772557967 968499403 28734204 176149426 871869573 991552121 625795487 672829832 188759145 728763733 928989550 962128873 176574 874969776 176705651 888587432 291288134 573089837 351361773 745561170 269239635 764758005 749487793 993128963 65992407 366824704 469095193 929482933 649223284 922840503 604367861 879639574 163455260 869480617 22380465 228167211 425719858 848993719 34780836 823978367 179834367 963988712 981872981 994787291 487028746 944181719 459574222 997189908 97670146 953349772 844269412 992204867 89596778 574553437 840012942 934729967 375000674 957219419 743441084 752829292 298714294 568416001 712301289 919809743 697189580 919034157 80929825 178669474 161815305 777099828 839823523 888801689 7002340 470931757 20830006 944710320 355124409 738681251 777239894 960579067 918958511 939755211 314999857 908774282 200292426 361884449 334443247 671072749 714096589 888968209 989626999 993038565 13198804 797787265 197036863 708614672 437222621 849996446 535503878 569721322 903253639 965457303 156162852 954713343 140504773 513092201 973115267 993861354 586857727 641309265 203377216 768997595 884279414 949447248 494254800 791099488 597120620 710242851 949079503 976204994 862958679 933479718 503217443 937060944 593618523 834357678 570084831 788857405 754075197 971314996 531346110 667407202 525540020 726239974 91976075 384067488 474966104 735067924 809160333 975851333 253949083 518681988 529382045 540539860 849362884 860315891 678256743 975112700 792924604 976816325 761218719 980200668 713375232 717228086 66126142 942563328 24800934 557818402 857734403 988885634 821175594 909697409 908606325 940016068 876974143 978734601 429985289 756228075 593769233 745602637 162035640 812600953 603377832 920332098 763715364 804533813 564210158 815360338 447122217 639563483 11751119 552913702 845384387 873223655 697166872 898190819 532915659 545297017 324123101 933747314 177915291 503451894 600582897 683024531 396216418 412852910 157671896 992117891 731961672 918161105 914388364 923721968 711651751 918228823 986514113 995388273 338536937 558980623 947111349 951866399 944213995 956023391 41833481 336033458 77610368 292200010 260657987 530089683 64087919 420318768 875077215 881025146 39086781 810130755 759620798 910805055 64107326 181074988 423299529 424801988 897452016 940489276 845105390 881028276 762408695 829688113 383873809 785425744 334764807 368947517 359218667 772296736 727723562 940063813 603136979 865272044 720384960 914623630 20423795 63413149 684217008 842081733 481689825 884918482 338950134 381759456 160267410 854182885 371975096 528989939 448346073 924784422 877178134 969542133 114383565 733640136 658171002 816813008 1961200 662066077 657352113 742742466 757752554 988152289 424042226 744800859 400579530 817042879 832872523 972459139 286921184 663900654 914424082 974057694 153784832 468256684 706754659 925255918 284600386 886876557 588532528 695802063 429461981 792291917 442417078 923367342 749311719 853245695 157684890 581445037 297044169 842531792 723747020 873331319 437564400 720493175 60376606 338300985 116470236 829347951 825099012 907107707 740334685 799576191 816043710 884752526 919268221 989666794 196469590 685056137 735636735 832244453 758914530 854606025 519736038 940498877 844370341 854176165 211937029 545369202 372929394 922535786 712080732 957525019 29703890 118321686 247310159 604136830 127133595 354483141 60339835 713469652 259806243 478827017 901985166 933866815 400767638 830879802 67751680 803941138 830576723 905751529 862401493 967627779 248912574 335636769 511980918 566345740 322196012 952958995 174486038 878432802 792471626 906321839 172110192 604606906 877190117 978359377 829428717 865378813 237767295 959100936 644099958 696723435 379427974 734323649 224536175 989324034 686611719 716259929 645841406 972188971 919561303 935742743 908943876 961119501 186455959 357180742 749978172 899796944 955643116 992919676 29729165 250658771 668366540 936502501 665096373 943593892 41249157 614997842 655120976 955209626 149221399 570393307 672015236 724266085 572362249 639731708 186489716 757189907 709080699 917269863 691433316 909112460 337416177 399262775 572987469 979079149 896312308 904979685 50588256 335626787 363001496 703004803 58506140 257047240 984402323 993763721 506188215 506790016 788478468 953315423 850989891 897575321 753135248 947240118 209085861 741234197 735774057 868236640 170756172 439584797 571091430 695419755 273675185 690105538 664910406 846818255 884903720 900102257 569229622 903822011 212775955 965562317 886533911 890882936 492946132 951965132 648563963 792532692 183374905 530951149 507207270 572540325 277611936 481008342 863268926 948429552 896283924 907799675 183558325 266444693 964332903 969397393 260065320 363778839 299339986 816423737 325402334 529197681 515596266 642045060 879420367 910432239 574485285 831322599 485578579 872856420 840656800 938922502 933694348 943056923 768315489 971274896 494155347 892368459 252388485 633993259 698498897 802986035 548809430 612400887 563155529 633924414 490890287 759779381 664026882 912497529 22852229 566554072 216770845 248883647 456976862 700148725 570937391 900666248 584036649 975752135 301631791 996684838 523055395 932664328 507804727 812146725 326404530 594880821 615626824 770572841 596945646 776951972 18020316 577259470 826700737 965937231 926035038 965100275 628218612 985972290 771060271 879521974 903407869 928116538 300038682 787591344 315764449 637678267 818703541 955087710 327379221 610711026 448634930 905314117 108504240 270216516 700497041 749948328 282914065 778984929 807533001 905605326 636687863 918881103 920199130 959399763 428713159 852987833 169665106 375571285 677612707 964615754 471703589 655551722 981316639 997686830 297939142 699589777 827237992 851863490 301227416 558997923 533418263 594746255 759694881 811774131 930097199 967610438 930507036 994764243 118197794 133316145 202179378 575801138 944545235 956599582 823591821 931912058 149567620 276402609 275780386 328565264 696578262 776209053 39730680 562300040 835077223 847112044 36105068 933493088 69088508 429190390 868166869 924829131 673121545 828292970 608806872 800759568 920513513 948309769 571755394 857805853 687909581 817351686 932711831 969497647 61164380 141626005 972587617 980603219 730506050 841066447 615698541 631972498 720520242 799320199 536372457 805660981 127513011 184533408 418548832 958655541 658122032 850841789 734514009 942612987 38582196 770269271 977162146 979733381 472041472 845596384 308850517 374913518 991694729 994626522 561009752 965612709 824140719 975508369 26820761 185503111 275815912 445788933 492452837 830288673 733257196 747347683 387532632 512405948 885605136 938815699 740093180 990616671 731146572 767758056 753935505 959699868 260189299 703192343 109395545 388314146 207199546 713922879 475982386 822820993 138855793 947911350 401969013 845767216 309090120 587864554 599535102 809154058 634622206 855317745 652742297 976646568 772740486 779978410 808884405 818679519 287906149 345217748 644853079 766266986 715113821 750768529 222223346 673199369 69890130 127183193 580430726 627852831 872358540 921444735 159458526 261549089 959300317 989286113 62120944 359173449 606630175 708613476 973742433 982441205 188229938 280331338 200822745 427418845 163576086 296827182 575325238 650678847 461356451 602712866 291949087 833336847 62752187 859530301 67976212 743137672 91665119 968634497 631764742 842904645 32227991 229013635 396682194 413608230 551640532 914779395 203083909 794479555 452752956 738360691 783518411 862744548 957147754 996048662 846040527 983817996 452335178 505534007 798402208 929835858 95887157 548786847 213735102 423789142 56481198 227300312 915093130 979042698 519980765 540430867 108576051 173578809 420433605 746631179 340728088 688135667 325247471 841975085 112826579 297966626 821802715 831518901 35638097 780847809 535372903 952416558 287210946 450634587 936520224 973417109 532568406 821071942 995799804 996201068 40689385 749438811 579678676 878328767 934306831 955360918 522870944 566316327 687366914 842723889 26320101 364741075 898038226 964598388 638300599 843830350 761900617 987147609 860425385 956569431 279929416 430129694 743761419 901917267 793271810 989956332 83662313 625707810 458240127 717507219 184032791 895977504 575788234 669768608 740338694 857490991 147732306 213274209 382019795 420935203 811767443 903917411 581813036 788834976 177072963 665114165 808101914 866544362 190979503 359956842 621031718 646089577 553494091 608966307 672678361 819117490 240639256 349906552 247052957 456603346 390506542 818337257 338750324 627959549 103008210 347100140 912829286 919775437 322930835 887396495 726276366 886440772 23743145 658727879 241058594 771620420 442207897 641321502 994345104 998311143 672300847 982153223 292220688 593097988 590438126 835298682 925984988 965783107 225630080 698115862 168569064 796205576 751438656 915290628 412851919 739228121 253674898 330958340 212676003 553425514 92078186 314175453 357104922 933315520 48607913 977603140 125632162 278224588 84887404 923078905 217260324 712058869 622218574 989653244 859268514 867712803 486520000 727222535 283234419 299655052 162740616 644863503 587400677 722769758 927439141 967488199 4615615 785387759 253526257 308190368 392604258 636351297 913695265 980347130 388753725 787817267 388818073 506555025 630469534 683203701 768165027 893668937 857653058 924962935 2556856 528786033 377547443 992594909 987920684 998553014 731283102 972540117 450124539 689985600 381396244 810053111 254076155 290292185 315998210 711342499 768920052 920625526 802080012 994623305 104161770 864927550 991040277 993936519 341600336 484610429 468834810 844602194 21006980 148549365 59723880 307311873 778485515 977649775 137634968 789869262 901805353 986404654 462396105 992959746 675431726 966555910 384440748 654844915 629712912 630068883 774719119 782897490 942635404 996182540 138862750 871392633 153449121 456502565 448569601 483885535 830664047 955187677 127435203 984433692 772206054 867965504 674978213 873581724 934701061 989952790 998367793 999164658 886948968 898214623 150252693 616047034 103183621 574047859 140212028 996472324 118946013 508414425 850971677 877408285 55779070 699982981 628963140 866579180 388940100 713891017 902174970 923613925 813837669 860979600 488475611 824130544 325308148 727282257 387896839 849607265 886312962 950192592 344956881 560229730 592168823 697401913 625223982 797375738 725597017 874856539 577717479 752217884 881565650 962108848 799470488 807127034 135686470 472286355 298239519 407964286 715896700 756147084 685731279 739239216 369648525 868931631 308812640 518249526 621658609 962203501 586645051 988979747 311430127 561890339 642696567 851465192 759643551 944474413 422447131 536205106 382654950 962192785 989828962 998737338 65046936 679351504 240198231 870253052 87208858 715778092 868709458 915600609 947599971 951914426 793560961 899816015 175810766 967134786 527504849 533700693 741216663 879322375 921035394 937441544 319062172 623971769 1503591 683466629 727361091 907506181 705192810 847127100 526859508 573649645 618587638 978499235 491176852 910995465 916668301 945751384 9862697 373160081 473905407 939900295 416558285 628280005 346155441 802780835 112934987 860098447 306200590 847997333 510239531 929672068 740014643 874440437 944076151 978238704 913031854 964246306 954141972 995625255 220036468 872916872 842941627 986798699 494550794 966377879 943633244 945922813 177823702 257940389 879571072 982507269 572793382 629162373 301449392 766693227 894025922 931074150 684033465 902180810 832781628 873838765 418423481 661308608 693008859 792469415 743152097 761502612 68575639 293128181 795274714 795746065 362019409 750826795 945040756 958857273 973017375 989193995 268082599 940490446 78658626 914011299 118978105 864304981 599986285 865859967 327240702 461168319 352036954 912775139 870074009 910488467 691092505 794837461 810783872 991357761 145133168 533913886 386570493 988499539 782012954 826532759 227096471 577450931 916980104 972226163 104644119 911628270 103697725 647587415 990941701 995526593 496913941 749717710 545320553 599093626 292060648 847275537 867989149 926288403 41652138 385816933 815263958 973641471 979782765 994965774 560898927 908359749 301133868 385036602 247561998 478199001 222374394 604303147 749012176 788268144 432455034 843751771 692380431 866655281 513920669 789495064 538554250 596359949 225039786 579094861 699604212 983134001 842120767 963650623 29857179 757397385 667927079 838753681 100789638 589729718 136544572 485252820 794409305 878376153 157595460 265346464 421742781 551940226 521776447 680213552 282982418 563349972 965230856 972972642 461578067 868524168 893076712 973995869 651585669 732157125 583245143 983676948 31187095 901273837 737609888 880738379 671414118 813243243 468954873 621885473 217394767 468240791 586776492 588615830 329398646 894571587 414914233 566325485 439794072 599302520 4880570 158179300 807529196 900432627 995781129 997039964 31374096 564054326 677127487 882645687 986841721 994310406 879459157 913027346 12425546 687595638 29882626 206364749 945603185 971488260 481309861 734316391 256808662 494594912 499323581 854189557 606269065 996815941 790157897 812249357 844754448 922961562 201749835 460091153 986314013 997354368 96423030 984793540 907677665 940011148 662502127 906616250 355637613 841571022 920806235 932812852 557544852 865308990 892522593 984217257 908921511 945496777 995799987 997570991 212349882 599715633 958506386 964211195 376825214 466123365 315595182 751103645 517633991 916365666 842840890 967367922 440180969 752290623 6456546 364451097 995789421 998989384 61921739 516208444 309986469 374186418 540688795 912027329 387928620 490503484 417527017 668898353 396462614 554681788 73657646 309751126 4427823 178192961 101046488 792547754 398080411 789516687 988269016 997009506 90616962 420363398 245492746 653525453 359482603 923658347 289216161 608834085 696896151 893259518 42031562 641382600 650094318 975734062 581376750 880484632 537899077 877921528 643313651 696870352 246213059 416122050 669960849 991048627 779394191 823434255 137697202 235904892 68395104 588634402 865132771 908769457 397822683 704309201 765501391 813075046 498911530 886398169 397886815 558805463 845711482 966321508 60401418 327867088 275484552 783879614 731371536 935368507 952863263 987545490 516280129 965217578 284478278 699040498 296592711 975967841 428728118 717922194 339416841 403059594 832787831 944419467 717902948 974522575 187101865 685929084 726189415 930655992 570927976 597801634 793094087 863345674 610814775 816118175 16915166 987850126 756413631 923561863 695278532 889413399 313831317 607947385 594360590 911302532 943078465 964700741 525650871 898945641 244669366 525736833 970911353 973667242 402607922 938641888 445376551 616612907 560862741 947395652 59908530 618646977 843275906 848536613 476763206 928646541 240367423 456562557 326824362 394382059 937289388 976263978 329055561 678536519 248260049 302349251 979032339 997519302 932459392 968291182 632329484 846383430 246575405 287250283 875407159 962912912 122979285 230353340 850140580 907177816 551820134 788149702 610636139 824154044 806363354 923100789 827872760 931279327 977368678 990398017 138685581 417915123 70062550 95757520 810211506 845333609 521433522 955014446 989915771 991609845 961372487 994357024 483500801 633563623 124208990 878664977 266624325 883409986 843040317 844872716 112605136 267724447 970432081 987622607 977856063 997145699 458124675 800326116 446414447 470688349 14526174 206653273 309699291 332300716 128759483 632726426 228730827 257586044 491402992 885706941 301975763 444469503 212635313 495582062 973841795 979679258 705777049 749863230 522269939 566706615 117950479 471670697 468425499 814370302 302023054 560969479 435270330 750741053 271648953 713459657 98103392 547286151 692500911 879820569 127705688 697819342 211421756 461746069 449454481 948514516 65732242 332996179 325560077 363827581 664839943 748547933 254291752 484087751 573949624 677637037 74358794 606789806 441070219 890380748 582426099 978399981 908742333 912554967 964466414 973232203 732143575 968780413 319141742 682617637 268489676 959941800 819274229 961432300 464844044 511947012 359603327 513872842 617512120 664147595 400066297 605877941 374871621 681696230 841723518 897591875 857639529 976719376 232233981 828973323 577448438 782640686 354682433 935583207 931626543 998230847 832113110 978516656 690332782 739894458 973514924 979634483 877662875 981693790 836563583 984010022 955599670 965047173 516667437 791533943 318178255 621817272 213999304 918035234 690292235 804505624 525435216 924928660 588601972 776061201 570232438 591889347 840676541 854346758 382921583 544870014 654545690 869405057 822672977 942487878 664979458 954104098 509064254 537561203 587817223 793678866 632960589 688158883 398467529 906239019 778906205 958474428 918019035 952806648 349785099 891501819 473601040 957318215 828756193 836847964 211410308 642295339 316071440 643041051 331593870 873300570 719545237 996381004 750384399 914326914 97438194 246761297 443986320 696312818 390544652 578048575 345541411 466874959 139577756 279435501 791256490 856614268 507855430 883381128 930392673 970312538 467898292 838376185 69376738 788118044 457295717 897788784 232261436 635029865 167386544 638638604 558267693 778854511 644952527 652727787 162748266 865145225 610588861 910108325 883699247 896270352 701312936 733108608 384970243 468044012 431435680 790520431 721653203 962059222 842886508 946276814 203754700 890764872 794040677 949163225 398227501 926183121 788840388 987927436 753616296 937687451 608103102 701694187 747728217 982038042 788089019 804532754 610539945 733133893 552150133 784578618 708853118 885653048 175075104 829163964 33793358 712115009 868287473 955867726 939851308 982016573 903564119 926299962 213291966 971429752 579738055 606502932 578306425 724481173 594420624 784011606 863484091 935750474 906750345 966204351 704225482 994948281 396448997 982823147 4772059 219705142 644994721 942347250 641254148 985533739 119801515 623083585 543668063 601632055 816361815 872059907 682396994 708597260 307272191 777059981 503155848 926169819 945046695 992184722 128137151 214281985 723787641 750605815 603761305 929934655 261893689 773794592 240661807 366095477 399053962 832630635 319220685 620720851 391165800 398076202 160858575 344603572 907828814 964074890 978378193 991074297 779547245 931612110 437126740 516346881 165801041 262768855 847173249 927857185 44776098 225392121 51288117 987366811 966525592 996440877 133999833 651161048 203668936 836898430 710957988 913943708 934726611 973058534 978399425 981658138 545196120 725433777 990847915 992369174 848080563 895621669 314294580 943607647 776168612 900120525 847797493 991014940 464179268 715761233 531060964 874583503 444629450 970785286 209969437 377503215 968579073 977525044 215856454 420960619 827263903 944857789 882664438 909619192 498499453 781063859 198564014 453388383 424762983 608639362 952594164 983244631 451111700 621986176 156919927 605265253 864203852 881864449 984610076 988454449 632846300 706733001 103370220 867735559 588190083 862506173 217004522 992478062 656230907 879964031 397029821 673680575 614262778 761506609 206260733 530093789 206137795 421783397 808372213 857551950 547017813 665778947 56443041 468373229 90280276 545723502 710142299 851862979 631709136 883956797 26317991 321343096 302176378 770713277 978214224 998368164 310182352 341099845 87922398 194819200 290781748 366734415 382378689 581491987 820136491 887303110 13299125 555050745 313050821 377183326 98263801 487052744 913865159 930240445 601138103 921852880 472066171 487271017 832019278 983532910 593621416 724940883 772550309 785379536 116915476 482769933 781161270 800876104 632271522 703852748 279454917 784305298 713440104 833315908 368816862 883080675 321833706 813434453 498556154 925449410 174877711 475882103 620344719 909576908 619747957 916877587 825924865 880419819 951178539 993585943 844738744 912155836 301686214 355309468 391154208 731735204 872022837 955743885 621190481 824067697 97065622 451768239 644655590 805304904 156209363 933941521 938831933 989111553 314168173 819228710 518379001 565988042 417115500 980447851 163859345 590485219 736222508 770226593 209789238 655054617 87355637 770814343 681832865 936944852 447954415 783758903 330394816 646881107 900508141 925387484 179812127 205472369 633231839 887392595 677240623 795786004 111243311 980613259 340647001 445603772 964392383 991948923 115208554 650349963 404293070 804281553 330109744 806687181 897167522 949133523 556565130 619878102 703548236 868043375 576934882 830192583 690227527 733970018 725077341 801252388 665873204 905988865 246858034 645969588 966248709 978110087 459980564 880994604 75434094 684918612 944172455 997360548 677814605 883614183 735080844 939443049 69555358 692688977 879004633 948559497 731440050 923677909 160197953 176465015 601539930 632922404 240269228 248137738 667023227 715756847 932853938 976012984 968314878 975177393 805703483 949686519 161809206 368471080 642353738 664867510 11938808 544127948 413659523 852265316 7984431 301189359 322632288 600473454 338655433 587426265 686270515 976296864 939695224 960553030 28370232 314237429 964600698 986803875 682471819 938845055 161914674 350621827 323434171 851113256 869225096 981404641 505943051 737052231 338017796 831913223 882336921 939589011 90056490 481799381 112737886 338063177 422384416 441528576 82883851 248896386 954055996 979994643 536425366 856829004 287796059 592700720 802113849 845081750 297126509 650948103 237138775 799229259 510634485 970551660 929859491 998119961 313746475 743882993 34752599 553780072 739716787 988009793 598595569 623641253 732080316 980577337 65441605 70055911 48161785 453644315 582336127 738132029 821414491 903645692 164861558 321382447 648634197 769287677 34424831 958909659 842202857 934224541 82549209 401551559 469078881 730560569 807448234 947316473 383839728 912443444 542798587 972958560 615688091 933080289 81821495 608839539 587471449 973419709 147468686 797138917 112025592 977695257 324063085 480597705 291587340 649874176 579267096 692572961 269396857 793026520 996508552 999184520 657658942 984223300 245804827 900503465 859651206 989253993 1633067 329273363 998830950 999203423 338204257 757448764 413746236 893603203 62535823 369152007 9829697 524880040 448267810 580849463 646231880 722416178 593036682 626544608 823268837 931779300 270346496 536539790 710986070 812697055 586061701 711586285 747605384 804925032 355128784 812199962 111227575 194904260 154323155 495721385 159130895 866360250 738590852 883725638 479090939 550605654 508383206 577479572 882418148 920762466 914787691 920252019 915669598 952498563 437801137 999145725 117417426 733722648 243569699 728806269 523982520 647539708 751642829 792593227 604311510 812752887 355749080 877536926 748271492 825208543 733569069 744403236 517710573 758070712 153445276 829446371 904005072 921325556 6112386 946749667 350387068 461953624 744119172 945998943 946596014 964812315 311997366 801087078 214095339 460043673 747194676 846003924 929297221 980421969 395901520 783716028 273669106 356127775 888780484 948225564 368942014 653968181 576192466 659064861 18745955 98795768 329154943 993525993 455482175 845330379 520684976 833501623 356546164 983002398 678674546 881177745 31407237 974893850 979464950 991984042 651576354 856007857 269894393 413866062 824392790 939121092 483184244 729247262 230076497 883438750 576676715 592846878 969236282 987357463 107563241 915595905 208076547 693719300 467321353 578367457 717281645 865473444 614570531 617966053 678216 550433166 746094368 939605547 233489627 824523506 596854269 818760538 104855274 157332743 765487126 978191083 399797416 605624067 389288103 628480816 819926515 865209602 282272007 965941600 752263284 796887270 329835971 333364704 754799800 830902314 107374261 998781716 354515666 732988857 823326303 925520927 617540817 911599842 389490653 431360046 82245744 396359065 566990262 807245704 432215477 953504217 601853325 709436770 403165339 765131142 780238681 922476113 133399781 989958247 381010660 695671889 831569539 931136475 874952909 901176913 19598183 311483060 262482038 727758896 843604966 894466548 196884626 643780979 577384124 844251487 736152588 950847659 49882070 947866536 956886865 963862600 97109969 431194608 651364002 836941162 497442710 989404243 835937312 959475605 805771170 814276170 264301503 876310402 691161732 891813755 602213388 765040039 465463485 675973314 715347126 871051316 446338437 614100985 240335091 535201468 69362730 942688472 415907077 963224272 151456374 355116509 703596053 867863279 22628138 217326624 22670035 953004128 109995911 941714166 857913854 909382890 115221505 563593970 532773054 570128019 709779697 865292113 887119072 894409526 193355452 371068741 477478928 537649498 757000477 776320136 373355601 977492806 234847528 862599852 269467840 646565888 482062871 794388566 397549091 494276059 963131176 991565925 497513281 974100108 185526321 524666472 976073285 981189957 244227299 285476558 701799881 893512194 39253210 951253764 883732273 990301145 599575273 789214267 459557682 956730059 25287737 978274897 188618117 620325630 893365058 978620208 865152433 958906338 367158711 885564331 312344432 485501983 559117543 688171841 268234993 339911732 742808663 814990585 272889572 750069976 122419985 437514157 906886646 991130624 716560936 871289324 706571027 994168082 162185002 474295651 43728723 750790010 475459979 715844489 67581344 355386531 688435414 835259646 903199734 968750227 841911458 970314384 995424577 996159880 944809344 964931327 304016924 561028563 981842306 996591649 552417535 892571884 430263162 449858529 918285657 942921221 947377679 954287813 866638272 938386014 776985191 896494357 893476685 918886930 471308879 759525023 986147957 986855391 60877319 734919358 449181980 897334999 778797624 916348223 139910593 655610995 424579761 676430897 749035935 853508752 364519762 466493760 297955448 814952559 901332837 927571471 148687 846277080 872962403 885545152 734884934 745924188 234960279 381678950 761168220 816890864 379425944 624707500 965109340 973807782 190309212 862624450 794814261 851853627 712845367 985393510 393889373 910911118 558640421 632795674 647338607 942281885 41792082 565880334 162280142 733056491 952991983 982796744 229680836 797061380 351535411 986507117 576728312 578591766 100359870 655761879 979357984 998076617 700074583 984953581 172563702 340032886 357732336 604167526 155648523 170528559 93491993 894295785 420245234 833179809 90044981 551773807 210843157 802015831 460436679 929264934 840184158 847916054 575500997 592031408 702867731 782114455 631242964 932896003 909150669 991271962 416849364 764079948 134796534 399914781 376300249 822911364 721084623 824372218 160246112 839378265 335480341 531769662 336244237 599071775 675563785 821220867 246372893 331650626 649827825 914092342 956500291 994403533 817411378 873299973 771621099 781061944 43488446 800822413 464985186 922955642 310700488 761024063 735779609 851294831 936779984 945165620 690849105 991764265 747720556 881425156 679986858 938399865 447768445 985560544 942994526 998844002 68284890 344992804 168766666 320608260 892428570 933112926 236929522 864853103 788721042 863377536 106168167 578332854 814315846 826007230 920064633 962420097 359204378 474368815 906531112 922272354 733897651 862088335 986020595 994580214 826199111 826477118 611557350 753545019 955982249 971677081 715296027 745655273 217978044 897738506 447723694 805725903 746336599 947568686 805765261 880090208 930111463 957042004 944346682 987931436 262770122 535280069 907508977 939022109 983380116 983627625 448051968 856518420 900937339 927531660 979349885 990653774 913703598 937879733 602340442 676294694 225217767 967976230 675638480 686195863 122938729 991738555 191270398 831201505 849560060 984836767 652490702 724558925 732538994 812547810 403715405 950864369 698943325 967663012 760321048 990029562 959997366 986798244 380672368 472184887 227568990 819139174 442634619 813031796 50480628 404200035 130498286 691201529 729709470 997076832 226469726 275034006 70189187 433282003 489439219 640665363 159906815 968344757 199437007 690275181 396394742 694545408 12909425 174460134 127680489 167868436 439264487 893884366 304100413 654540406 446467092 617232817 822698994 880443276 565798290 599236885 790056247 799805456 827043191 880158040 812739933 871237353 55223490 783133373 962777095 975889427 626453655 913747401 642840056 841427406 739131739 845683253 353705065 362458360 432487832 817551477 660136431 742362815 46656545 450747733 46664518 485790720 200866622 215299772 982050134 989673612 961508396 998625024 989419181 992563576 897854905 954847279 314110379 546919244 965784151 993327681 396933155 486913074 965601567 980322120 805222293 850116692 653990214 955498455 488869656 497946580 524113464 605879409 73555561 686406311 58697837 796287087 908333620 978859244 152517953 859108896 230556609 664740861 459271256 821612896 471135608 513022237 984821257 998693011 388700657 448970935 282812641 368262805 363191941 571696286 785523035 920771401 919768143 941294983 442771899 913549014 298094810 893865507 558206367 583248890 686102795 709424659 197850020 875473363 800834265 825750667 529283375 561663887 545660392 893349372 424810850 468104001 39918484 381901275 921652692 943897328 687015380 708352472 723856968 993705344 692474155 823709756 991565456 994576457 864654345 951193462 551407794 604500594 846410380 895718463 378879169 655004731 172108340 501818684 585491117 779488465 195494408 314204992 267803317 879824475 181326502 539834942 737985117 824131550 182618828 694531603 36917919 924402812 880019588 894573718 291478607 515374209 44830073 206548945 978487384 996631929 789600325 903476009 97699818 662776844 822575280 958620376 420029234 738321361 616648058 994486617 630459054 666014450 245885726 563420132 687731320 825550346 106862408 495250268 28413831 251647476 860057246 988008533 537525446 826884777 411879602 845829547 157830316 398641324 711315718 909580619 155938542 981955678 282018158 572932540 715285762 871055435 107580305 163504686 171879703 194013576 352540172 812337777 951129187 986923652 584534307 901322341 10629204 230157722 157421370 302781352 979373110 986299591 660641577 745350812 661448145 790930641 801410232 996979279 252139538 693764065 801952070 945759958 38506864 309342360 980740329 988906191 215700532 603862047 957220725 996821990 783073371 887339835 555710852 918372686 123567166 265684036 404618475 680551959 698420907 717930945 115687265 121033771 957414884 957926845 860567665 978577979 962254523 967360609 369892544 871351466 251503136 299524058 631182675 955779038 187508089 358712935 196709132 203194492 364632467 760206566 548062468 888582771 508711568 511955859 285833288 429969196 127140892 348342365 286853637 541677229 83142024 940218689 213580375 374910358 787236308 973036561 676528741 997658388 809683247 841751986 518321528 708468169 916523625 966728810 827182235 900438205 952129305 986729302 909646175 916518307 399859546 466627255 985832252 988750060 423023699 623615491 688898350 904540181 460092875 811433197 16373698 590409686 208513768 859868116 272388675 737038210 34415175 42707901 365857466 989109417 370094847 832218088 517297991 715736987 11963627 851212966 115018906 911202047 780186935 918271880 836746806 924121095 387488283 658634826 474809202 943871621 269093173 675502738 114589084 403629610 553958512 555948467 576690521 988935816 628426315 678117381 784267221 874259269 421846298 642059507 519206669 655225251 548189538 620280414 728271995 767075617 443580168 652924132 137613773 830100987 508313345 663519213 677672570 969428502 575702973 886874577 326093107 695315736 672914569 791312652 717221036 864381499 776691157 862189135 993783115 996007425 562314487 997995240 885196447 959464698 414018887 726503113 540024072 643475860 282093011 634078609 763716385 827190654 204181203 310608734 827523929 956403003 958473108 975748215 759890666 975153580 904101964 916573170 386884492 969632981 722807320 993651442 367049148 668863587 993147896 996438787 216196414 845025755 471290304 627177284 580092861 911626902 321853245 939794266 368445616 716122935 487817344 512290408 932908652 947682934 438823885 917489853 716556799 857334167 717383306 835837390 284478830 286267039 254944940 799984381 730972095 857843451 415659897 895007772 504275392 812182144 344916932 993345658 539542476 716547943 932364569 952558719 284922700 328503078 345581936 557366530 287546466 586648475 518260092 583100114 754095574 886182271 41602185 659848189 87642353 539400256 936268097 946726721 332938322 642233870 745954904 758434732 846143231 883982535 461526069 932511446 54007190 139023238 528668565 624717459 350391640 686874128 422355671 642624510 412356039 882698116 497204279 593441401 66222155 636401276 764553800 801261793 819299861 896596151 842623650 864327370 431219125 599015234 498768190 564126622 696062402 854820471 404501601 653951176 711154941 851818400 682181913 857018963 15581866 66468512 484140653 957671682 311725780 556145378 736038685 813073800 435903559 529363146 381484954 512931548 294415192 712276755 137801114 627900354 403876441 596050267 745718329 777760474 603751818 909079405 787487450 917280926 724743670 883888353 725356797 771797304 754783765 904607738 443095825 807931105 771855193 884103888 987747375 997619155 728136263 841727809 30153587 55215354 264660259 487973948 190973556 217807870 138359204 614308253 573440857 783712652 933968479 996521798 907667005 909093631 296896265 946061891 965913572 971530279 265397948 406166781 369092347 770551749 234372438 281137140 471000955 499475169 876339587 933000188 542419847 672890689 499473502 624050668 31479902 405788047 878379580 992376946 754617606 830588290 640141553 707003097 396051078 550238337 658515029 782960090 211403810 540411606 925847397 926296878 4506235 7616484 311528045 390285757 578452763 964687809 67837990 398683624 270235384 286559690 37977286 47635276 119181943 673848730 181806205 670447823 385749357 747453221 422862034 562465319 114378591 714880668 659156360 794305151 599607512 913333029 134962453 625055682 625379935 990464824 628587690 771998020 882569311 965496768 278823087 973355987 193910871 595133972 349487828 592111780 364685622 368144818 116565678 648100420 76998031 890091060 289060677 976080957 263638964 919995504 538934817 919992488 289288848 717956236 228352045 324569259 943251160 944667576 645217681 724838306 332712529 384401737 35544062 976321777 162018185 586844514 853165929 963796684 143578284 334812270 759538462 983498112 889853053 922228219 824605450 979677038 21349189 283237812 178017379 199318906 499274223 780659828 153578882 154860022 321841375 498452427 230514918 309956603 198117211 968826675 698229681 740678743 685392471 688959150 863938028 906651589 776786200 863493448 475576625 567830910 354498071 952700277 300764870 362864861 135333662 253568537 435158322 921259577 117494928 424297905 597787458 877203189 100246374 231569335 134843727 776738806 858829010 925954221 524398118 705425004 1184149 915381959 780363203 977187195 468554088 928472198 673961022 695939861 591158568 846068569 583794273 585897104 727526636 747823498 21614504 932230060 845435024 887668318 620622241 878319518 686356458 823926185 607453273 879247095 973619529 994758657 420427545 898464250 381222947 423847152 538648373 591605675 215874708 645442603 11429076 90953589 253700277 468953069 872416765 942478612 188221983 413828546 142243240 510668140 102686068 647236036 484071290 620941391 33007601 777002742 639974141 972693642 516254174 520779872 751614847 971845222 127688255 987686028 804452519 957451498 179741979 854214489 622609759 928967472 490050275 969339363 742169224 826859119 608724151 727656615 489370710 874441335 62304782 181646141 593343220 853453131 645108428 655369191 679689583 939525654 26708983 479208208 677909753 777593412 575276826 623151034 324799169 554199493 101122017 367065388 287909608 383450667 637121322 719732837 439108115 754346755 746464716 965874893 800687977 968676582 897764987 971706538 891020036 979108365 912723280 974202805 132665651 202265595 516249152 836419265 10513287 208122898 340271938 502358886 852111922 984951105 225277750 979148894 83596442 295385254 817192206 893530178 805308801 887753492 444299560 630564652 152364610 796229956 575367808 638221546 910108025 968549090 182960309 847858021 521365343 727529119 886299917 992984002 661939907 824893442 325483453 551542204 964594596 980830746 129629357 480227032 460637304 553143090 924229421 970183886 870731714 987180371 399088446 803082053 500927598 524514947 980542204 991703248 517323549 985343867 534186142 908578592 680852632 957717240 420101925 589926575 931435547 958025764 482820230 501278756 64402170 259145593 416247060 440013130 445094858 832555869 281526067 861629353 404006514 548968893 331567996 807352993 252046132 690064800 697296242 856942589 789160176 796384178 521956302 561995563 57061016 631073461 857003564 978413081 858205227 928200303 114560656 578282914 623109845 832902189 303311985 861745622 957745918 993820059 637301153 902306337 667871690 871529993 225241411 457594196 269290825 336728159 464341471 473561089 893580350 928500674 888473934 978520914 374779440 446788517 120683893 964652465 283591708 779820385 823616002 915658791 455719860 761582394 161011189 649086210 481573709 902064712 572004698 950839318 490692315 675131351 793090907 841384033 845613317 986993687 854206974 944296347 705998306 767723068 343554658 527837866 650073736 941711046 64162267 405490358 783883100 986375438 255136350 850275067 846147412 959077213 259869391 512205798 741834802 799590680 504448985 562511286 78237933 916654463 164552493 344679437 268921494 580725671 740823858 998102945 874236175 888672542 693999870 897202245 549747017 956954215 576857676 719692815 70129831 82860208 155013166 646999428 459858623 883104248 750006105 988193221 942489168 961639138 135641537 933932114 208502061 981504384 157420295 160739656 376561525 920319609 496538132 796776795 942017975 974208201 171361308 705110216 441451946 793484142 502248080 666517139 338277866 683218468 222715929 463195987 87221266 325931873 48208744 841738151 7656094 771969689 925817726 985831534 87929116 786349170 971656358 990758259 253338373 768132313 375981709 583781100 350784047 535471846 66856213 597593391 18742571 716949233 155173838 446839241 855952262 931747088 141329285 195700399 141080109 714884662 730201284 822734787 720623148 765393141 531866205 707165547 690697255 825579996 952508940 970133038 277479964 470353600 906032029 930925984 870322210 881590985 766514901 881752593 607843378 948523485 232638056 898612016 230364771 541889385 773902584 968679035 286395522 538345129 359789561 995808999 396854518 508577407 677925700 782683346 298732177 881761707 632315182 786039313 334446080 851572274 835007468 902874798 976244858 991671370 196670378 505487379 207510294 902730027 546161736 985547853 629874988 758363726 638618437 771783452 65142481 281888729 621575758 851585942 749174529 840538767 607301120 637639131 933532893 981924439 376646573 911063212 955513514 982346889 56602523 247519627 248825823 387866181 522516147 827345078 354614135 947047463 756372357 952638417 481779241 545368858 397789206 856217051 176959057 359439944 567096874 971622279 867159184 982909860 675986612 682409876 693205907 732782775 860210338 956608714 914953605 992738403 651875629 882176107 647875311 886845233 246546879 480293825 125227697 431529583 647307286 740573296 660230032 823970951 523587382 866385234 693404983 903969495 429614663 490672439 817725738 937960554 734006376 952188550 680584131 798301404 913230845 914511226 286913247 422025456 371199070 570303209 155441321 801098093 118427761 830662027 634818352 746889573 330121700 976334023 859084052 868859084 241943327 969181026 451253805 983667478 540366876 939426206 126365471 656899521 926290668 992546273 745802841 849722637 335589966 747235320 131232922 405605303 649505399 882018408 78626778 166368012 46749330 859591559 107135855 857141782 728081954 785022421 157647066 469911334 663188606 838859854 341773087 812638683 395241258 453264801 233892490 253346202 950529514 990352569 955679143 986379876 85006611 913496532 162980976 647112531 39783969 308974252 780321287 808599204 931591505 993882525 712293388 940741305 577840090 830538588 694680495 864345093 938726549 941374833 30446329 368501667 970100574 987737822 325546791 492259428 410593355 413842930 913430005 929210591 871678670 932131644 39455929 345028102 425149499 654654504 305065744 472790650 422224368 965895819 800699001 833209929 789919995 835941168 128296061 263246709 985004455 990005109 565162399 893065890 732654086 761506591 255522554 997180093 807144345 916535019 366951384 393316783 366771089 883918857 536478271 673082147 90200504 422688078 255441000 977462720 302752639 694318052 875413547 963413024 557632829 712563443 118108158 439088311 363346324 770448211 632739668 856857625 468218913 911411698 518060635 551478171 138410780 147412351 786888662 801190613 840362747 914286153 968866854 978780593 530649943 740695404 543592593 586015200 765419201 827589818 210343467 459454071 511262433 948417085 707848061 893549683 434425983 518695057 212044579 728664482 352989667 649435311 919567651 931275892 463897908 916750409 757573875 804511247 417787750 538690436 471134624 994719044 473599618 487790018 115816828 386081635 271436583 833793976 768809608 953959646 564675178 778230167 284650448 759653246 99029289 932426443 413843057 570836419 448431294 514106347 809705705 886228457 346381312 393970691 143094888 571983868 115480344 332966627 419502394 819073087 422557579 800384268 707166845 756192199 599371926 974813594 27834537 177830388 279738093 446739513 274424618 774365231 250151211 972250547 372265593 757315670 971570028 982153394 889732917 967960785 868647495 952634210 451888704 870336979 11929387 456743125 291403727 329100645 920025946 958050538 257147103 428535874 517738810 717237256 671612529 679040734 682020601 831831344 439758647 681846236 262984247 842473832 910537153 970102276 430374655 918225554 818210687 822291612 500278615 788458351 857751710 904703260 534020717 680097439 366021207 500870253 812604058 930524142 706627401 942361746 214872611 263446949 233153686 603766848 494953470 798081370 47368861 998973248 179556200 551910564 581311268 883849732 98160134 347665140 441029775 629380799 866792532 912377525 463776428 567462384 91660020 901683663 10909153 873043764 612674420 633687011 394078028 799866811 24284826 614036268 209314900 476391543 831146586 964612323 384271931 815787223 813808600 911678265 93280540 231809539 95706444 403794116 897589959 932645227 114613252 683387226 467403275 533089355 125314319 915145972 806232574 822880193 724970995 751274986 716665687 834669263 68232652 702192678 805302458 841984706 130776665 439351987 841371749 894477383 524183134 585952488 256058377 383517346 359433243 840954506 729503336 869403460 353754535 899517828 996816331 998848022 393938035 766613949 340918417 896060558 848998186 926041241 715837563 878499642 682490325 737493678 497269446 765781791 110969360 345143304 503583043 872354046 411768760 805390938 478102984 500675079 287485976 427707243 240052596 249608487 400364105 408362970 62945263 937212523 561725224 757799881 524471515 954110566 694449441 955518103 185148925 759169887 544449265 553335343 859450066 967628865 497136960 736252703 418309388 938814969 519520048 854466468 831278321 940106718 727473832 914257405 814007217 981574580 918420486 925120608 765128508 977715980 865724074 961569747 937271196 972118703 851742910 985388326 944203094 989211367 735306887 769659635 654123230 654699690 517375413 642847348 233832103 663293562 370163267 522653732 382336898 579849417 795471438 800566577 10535816 734687339 572803426 814690031 443231098 480913578 401021054 776039813 537936774 892347797 76862424 122319368 656499475 970782953 566587903 629257551 572996429 922045904 87723435 680199991 981967474 991884390 264585062 539067484 621374297 886516331 821735510 968169298 365707239 472883532 804029672 926989943 992125864 993834384 639121464 911601537 608843253 649701683 840596252 981301154 610580110 645806104 373873007 728118655 353574185 430947669 533150503 697219558 838650760 985656513 781400933 850023443 252708152 824676854 363192121 462741309 190694584 859595759 605147768 772996888 27941319 650513196 470432653 991677557 693542462 976958544 513999384 939046713 91831102 680889145 285187009 985580141 826287945 903039978 712906646 947881007 886127807 987996068 947376466 977457068 203487654 936378675 335143108 508725939 235578550 333763157 395558364 913425458 530582362 629958938 35444866 126879424 674369192 689825232 398382095 624367701 816909476 950792379 150597014 494571336 183688578 930123536 403088667 888572648 785700116 844823281 358762974 674806983 925880611 973242822 569911392 688749073 637688948 714505983 451431664 883036089 980840487 992729014 386727528 440082374 229466186 602861392 878009668 963649224 112122420 670183564 747909437 800242630 682627018 783436791 129290374 935822937 634390001 912009684 262191615 450293975 866104622 973816858 469949264 754030487 192586348 834844511 955460002 958947390 691109503 835120836 774357175 980776049 102057728 672454822 294066268 953202494 763701292 996434870 653920516 812942971 867496752 880640520 503966951 840192876 974876982 983959591 747899207 994470817 483137518 626264576 52845781 471344862 528307576 909682321 561720459 922083651 151150092 899379649 721571696 983614173 998756910 999251611 484488820 581188048 345715151 486071485 858213123 898939278 539933043 955725891 492133747 734691108 347447009 738867325 484227057 754307102 321314114 927098428 45503108 681553121 742711349 896042506 382080371 922855442 372772315 536800444 668020015 996522630 455265956 746870660 313307748 888407356 401139867 479006488 624516229 758823905 161004771 628653149 130367890 360552773 619478909 894190189 630477612 756262600 86298462 294876435 520563699 906307069 122904007 233602250 331061194 781044119 707149200 708658782 625813498 970958785 312830550 492629956 950052374 951680367 134316687 840085875 737840808 901411256 644861819 644895556 558299960 894464158 892722429 990672732 123093591 950749360 429445236 630570809 393099293 828005253 688028133 957344819 963504004 968842566 595648843 816489823 252894031 974231648 769898771 817402280 739169116 954287850 964481340 968145481 965426434 976763190 138281561 702362683 279760789 746685998 991813555 996296662 978839192 995996019 912892523 943463881 636167584 771119057 110094219 990454494 21227486 276265505 394756235 736634127 76913717 511649581 290030442 505956066 187497059 464917080 134593189 183352094 762986287 813331428 910834613 965517574 933985981 942194248 344912720 553902291 186207743 336996084 84278673 647968251 350857410 753180334 216453460 348284876 113756433 336577413 917631727 947855860 38220315 740641495 153933425 404542797 587640306 714282776 164728416 784134393 294123917 884771586 74614073 843955333 656896401 959353989 816195743 884599340 766257137 835690713 408057483 968213185 871731868 900994788 626080511 675670232 24314307 591010767 829785065 846190392 30582798 140629461 214988212 632231179 41011287 774006762 653810094 887152089 790402694 975831932 399221197 797356369 259998968 482726520 911870631 969328867 579393151 819586520 918574073 977008569 700805240 791516650 941407151 970959574 981688188 992329774 854225044 899164225 421074844 878989448 562298093 608754316 273928354 529540058 813245855 836108214 122468314 854146393 494211760 611537572 737928925 799644283 668594298 934213523 719514306 744255291 574839686 871421361 223600653 633172988 879262775 977744729 603589005 640093546 370319938 716471418 214542621 256888627 919493964 991965278 583424907 641242152 527096437 601678447 391685242 817992381 598584119 618950475 223203956 340615178 426180613 999280169 992977698 998027548 363004775 472150157 517321360 856300939 968261345 995691111 48933063 101739002 550226016 795763827 686964563 917036499 505731275 749712595 43601891 239474340 195773739 529590073 272739623 516591278 417537531 649691563 474283104 550006530 538574396 855702995 490541724 915180380 536222391 647312486 373839862 724317310 335019337 397649777 557598665 961928713 646388091 671530733 331368234 608919690 236748659 624424124 68456133 221271651 305638812 593039196 563502137 860108514 986622387 994292095 693068471 841650063 772314344 814245400 366429603 716816346 840943024 871850891 798649779 858960006 237260510 839705982 171663014 756601217 197536159 412304031 458500298 821040556 219977124 765487964 673541155 784220948 562337771 727402115 931368622 975149188 583386926 743051359 176269993 576889056 834548932 839447667 729713091 734189293 681090465 913339534 542462107 721962076 88074153 705323358 63425222 308891593 282461268 371953259 855281768 912280018 931702464 995508616 354991150 502369379 803163275 999198605 941595898 964561228 834892100 936299450 514979995 910432332 650626149 802819471 57022087 133422195 867133959 965456106 988396820 990205091 372583119 522838710 897627534 924629462 889235295 896665209 325881429 903840623 731438410 901766122 940059242 996982772 705428493 929890552 153008416 682151262 808560390 921785080 683205507 988893735 189630037 763798993 927673863 980692861 836819351 971788113 471148123 953773705 514613331 584183942 488185886 660199931 768820539 783119561 840074494 967957629 773115952 982194236 445102718 739992395 840812186 977230317 753684343 899956428 156698608 816120279 61490535 925575116 846307253 920980345 989063161 995908871 623477030 679446782 499361681 712618630 542658338 605754183 784401169 909627812 935551449 971929444 941113522 958013619 797071059 818806073 889864395 950316270 270395828 896495952 935299061 940926947 11403327 816508654 825928231 909527675 26033737 596861399 58407257 727859604 367515497 670468518 275591438 819059158 926983377 965098975 932879289 991206075 121674548 741889352 380958352 976000536 677371192 772603129 5851306 763137236 214238537 281292718 295881014 907970546 25973546 299531142 859520981 938176525 157151955 850367301 877674002 962287014 689823199 846648078 779743015 982210104 821912907 993523707 184361063 425799023 985971659 995463154 305725590 957366716 729347390 809367488 984979914 992526587 289257091 799141929 370301798 432882576 87673847 332562978 940455 121162214 631796180 636834239 541228293 747856279 800369514 889487469 791781049 922991133 74508387 911716363 283442588 644462326 102626535 240662775 180499995 981912618 38606966 779955940 237952365 890103923 468844503 938931909 564649788 943706441 453430348 455396168 915365721 946019430 947819807 961454777 698401071 821610803 510621639 769057838 974322447 994710254 837798173 914695352 657877537 981841589 904300782 946109035 370443145 876564652 563526745 948722967 901115485 995660429 109325237 785383262 587642868 834088824 234099687 880515250 290550455 997005249 758584463 832040518 405584929 532517893 943126669 980608574 530701575 947261239 713480408 733060095 196199527 745485030 375966724 719215596 353899584 627054193 489201663 565138325 115405677 387978980 852140636 985983494 433230583 665919580 619878189 712182838 99280332 878651601 949831938 993039858 305272501 646530552 807944949 964963888 665699951 712808948 147775518 430088656 944310419 988938620 173186532 304642891 977880782 980688258 871318389 934644904 786255451 991110062 413411385 823283383 85789776 574264058 87362505 172070750 801275682 929030281 393714071 558877690 672929993 883944323 456107114 922937098 314016880 710896828 355176992 504296269 527019762 653091982 682415692 742761156 253802278 740575318 128849119 283552526 481692636 948125908 516191964 676562588 952855970 988678558 1205327 329465219 231764173 382642392 921167139 944202565 680373307 969821898 679126464 999091978 85369489 747813291 686817218 936470698 154249337 375601855 641006983 684627829 552090906 646095520 110686310 219615900 990810817 991642290 958705276 965239280 418562817 778595464 319397529 976886074 608317161 638933567 168100047 468899750 480588357 638920283 63373686 571257935 916287356 925584066 753833858 926390614 988473104 992064415 359867610 454687947 912717284 956599452 171307401 822632391 451231352 863939157 489061196 960358820 548810438 898912817 909597629 992015888 949023071 993067632 403333960 710256022 136048547 669402372 712637715 909168458 387378455 912037081 980699148 984843938 563177991 936392098 820769639 957586232 455908414 709715566 737241050 895020556 16734466 59040099 137939434 972603198 731104415 966102621 150819238 610442689 809153640 845246483 504379061 694595928 438010620 543627391 398254980 557742676 385508070 731319253 616171105 750171131 940601413 968861435 142881198 763120527 88437980 145813947 631273620 640890371 493969583 708450037 183195536 468382286 394704009 566347727 168015329 886235006 828325132 957073050 464899319 853337297 530452117 538823233 404977765 552593312 852143338 951202607 27274247 366683536 984087664 993883407 67087887 315364449 474109076 897660228 596050553 773784848 234270316 592806374 298582005 421036572 277319302 287092694 236793388 929395554 830791843 955070917 236072638 693693726 435804340 903145874 45119053 838357577 413622766 768437310 404943329 528184058 181070328 274061626 463753559 815646609 979716983 994566981 877391111 908665856 27174292 555771095 972227809 990486721 608672833 718740235 971474490 986046855 354574806 515104308 862371311 863246555 827636116 999125219 742565095 993236877 104703566 264983051 55445456 585280574 619279922 783985841 29097800 200645603 349447334 374260654 260880346 519457689 579579899 732528696 774311865 895045267 385837330 883705846 260997416 625555854 110464915 233467116 449952976 469924756 32720511 274010703 924226391 983910743 789668582 833420166 669645342 693764274 775405355 944181525 573775199 960241123 537377654 790841110 318907069 561868371 42412303 550987922 561005101 907937008 446679451 450758978 203126820 840759512 650900196 722932182 809068827 927622010 103935592 817564189 578849325 990841497 423020652 797809250 972014911 984385024 997906774 998165746 859489197 990626072 821547632 909647097 750783401 921570716 758673723 840322922 349661451 711123129 959479675 964703401 938757722 990562395 925318106 976233355 272934989 780654377 822417168 988727478 535215357 625474344 901501608 936082128 782669346 834678459 589526504 664967121 846070491 849833966 120246173 925721177 209580269 319103059 728475148 949229485 728977092 996134872 166112547 400143211 407958510 908998688 778566032 859463651 791175070 865765764 689672981 839775904 712705798 802804828 577291411 853368735 864676673 879486232 89996233 542996210 636556802 670741800 53643702 795349599 861532288 995506089 556399420 616916550 210558443 881576231 75992994 605917045 564364758 804511959 101579777 233387092 718703324 973640927 109861789 549663527 408120301 743129739 229204613 842670677 744298213 996930338 615813964 832188627 384204594 433180679 678167835 759118897 915353839 977197670 280055721 858617584 660229376 914448926 390947126 757218091 74804404 828422992 723764271 911698399 896227112 934428748 948755879 960563805 96816976 625048183 635336878 888774818 271853510 717159480 706329471 735357104 699697975 916991340 328293415 857690872 332300254 661899496 931837525 954230248 148645913 952397510 514915964 530130009 465860066 754474082 822847496 989007810 670579236 782324870 493232360 545532460 117806198 270376636 24545134 808451314 149792078 616703490 774068275 821025987 463360278 933486826 107120916 724883160 827119958 994437330 765156986 957700367 924946461 988281179 506175237 740303256 878101710 956038449 912617671 948138334 116038928 565328228 442866863 738308877 48686581 942635744 764115975 794791290 780005170 805271810 290614146 378524611 293118576 847676112 896460167 956341168 146507912 729440145 837577404 935662152 278563269 662285286 611302533 800861025 586222638 594102527 822140433 909037354 764000814 792608049 626987029 843978695 346478231 962449444 683469786 694111766 160655013 975465758 612714381 987429220 90352702 569098576 822677762 861793120 578658326 578938664 606366669 771878250 74185027 583718279 493242862 690098019 923797995 929674190 146114517 637593226 36015032 247825723 674761580 954005690 554835713 581570493 71050844 504976682 931777603 946963619 766311123 806951392 362642300 730152749 67913157 917764805 348330562 782763320 24208381 507349444 320397213 717588104 776998001 866050618 152147403 157569394 751563797 778550603 354828351 920910545 624146660 962084719 496634464 805802181 481321390 896706957 708787302 972115664 886039565 933979453 514052725 609722649 846303957 890570399 721557494 872829134 407007975 951126277 942237663 974187299 696008270 909483916 639179136 674820249 243592244 936576578 400571578 472934661 772879662 968224219 462993170 568174627 871157603 980096249 531573559 866549104 500213144 554645874 821485973 863062962 98091818 180589961 642166967 885519894 313338301 944033193 507133714 596746066 191200175 625746123 955829183 963172654 218657431 441159263 988277214 991815798 859092699 889097617 793718116 948813686 974028543 986384349 253939552 805549705 263843529 966951025 943668767 985477973 232176585 468282596 418364719 901935134 933807425 943002687 768198685 959865037 714541209 837903553 925512803 926449612 960541697 989568550 622601373 733448961 231113616 247737636 373535884 860310678 908196385 994153955 988853788 991010233 728028476 861658844 633466845 655311165 867627126 910976271 373788498 870004257 847531015 875973746 781453758 922006495 375983247 460989431 894995516 939912863 794086660 983466619 753590939 915920232 711823485 751618540 270943000 409487623 70475115 214484585 725458496 867888478 517076416 948395505 938025082 993764743 138243549 262633592 351802968 713052726 858982256 906209922 355098027 911237779 327369947 860641269 603199655 662990761 224396029 486905595 337833158 537940877 573190233 578742712 72129659 424229211 320034053 901275143 508533281 601826709 687196416 737690084 973555448 984000202 5440020 367345239 327176002 710860282 199537157 479378992 345725470 785097117 703192776 918135368 841902585 872372926 924731751 973547830 266957375 612593864 420972324 464747639 273523916 809402362 195964198 733682443 394176270 911951834 207687482 770081213 290151589 860128670 479915257 733260045 179031445 695144974 181121202 648433849 733543813 792427899 708925035 768830748 599690545 679330089 723753277 799828748 245018919 855860724 438297912 880926595 7478991 836785277 635705094 658693607 496967576 745399849 746761913 769700255 795753186 837793713 632381278 897795854 341182292 760847562 222304239 964233849 712142397 768649868 647199353 711997443 297055078 567093562 694934180 888150393 837942637 878758935 549167945 703902597 580283207 736585580 736398249 758747910 690885261 894706715 270109242 401875089 767296306 790829266 525491447 795948427 189693823 279645437 921821001 968929778 159032453 672860190 722499436 737621987 961876920 996664431 125728033 337380435 853651909 952363478 933044831 944471715 579200458 719271472 455901281 997222009 540471282 918237692 632610756 664099607 55733925 571267162 967263539 990115435 625964182 945735412 510524084 900243212 35086591 237079278 571986574 812313419 452328959 541293499 968042569 989033122 421760194 929945689 334827017 752542290 573345952 707462257 246088277 336048034 403892221 515192391 848228580 949706384 812450250 852821079 396197151 925445112 635503438 762142845 543833219 757431591 64481059 382081203 444936063 531377325 347958185 539883514 112598720 430528796 593779806 762705726 150109082 367073318 196463844 750398971 302354882 660566567 658255929 932644319 702749783 925018903 228052528 269638098 217068490 999177171 514513280 913296076 732393849 964457443 656225556 712684293 833105293 838140967 347665195 695508406 778156563 797337947 278062801 831028089 389708163 554335849 990513252 993937689 277045247 812732596 778992101 802623155 810868132 961801571 529760581 776891178 656765175 837002463 680395564 910637697 157165427 738470972 88206548 270974519 209042647 409287169 614120224 899299011 160250943 860022289 918080932 926986543 639046945 833046462 769026018 874898587 27532276 479479724 112553936 370640578 837506303 921574419 203535759 299708954 780142405 983172265 43027565 860878500 949687018 989850986 186270632 473779979 147289006 233114089 831735181 937652730 129273731 742149282 600388075 865897325 749520134 922362502 545599286 582649427 595804627 703731324 518529260 608673989 435660443 506582593 620746315 658496152 213726418 238112532 43973041 85308407 988620567 991102646 355382550 707020259 749269744 788800499 557253129 844862515 456722693 570442536 752089077 953267422 223376291 931389905 852808653 934615090 743538575 809137027 900542059 987550229 104659134 656574550 439827857 948083075 558347763 854131726 467011218 903379546 673159661 996270822 255390152 993519888 421647978 669773269 465648230 887875384 264582605 308582784 517239299 714827228 275863435 473937723 559244982 972916585 728179066 994433118 326461816 895367811 851488023 920887030 950772965 979753490 174541388 767437071 430322523 814060363 903137454 956979994 460998981 570196131 938620520 966308509 118152630 638748362 461976754 787580290 570095651 674587966 432156801 898275765 536014859 677959081 537022095 674182542 995435449 996017589 184653234 223260718 94825418 135747144 354074401 561398336 775460476 948654281 371683325 718063601 858219153 981863409 625985000 801843824 82322599 844592906 606635920 730927493 918975669 922362807 902777613 975077510 51603316 104933364 52506768 777363028 305470471 943414089 124207561 814195226 154694434 855018531 830918478 950789582 2614852 171984890 996957586 997745311 709037360 755910984 354312821 928836063 554982496 608268345 552361702 638356253 66998525 475117259 352599646 534997923 967157798 968657734 822824324 883730388 738580673 937295540 654013260 863303893 986334941 990851250 169384890 741443647 922328088 968687751 981257414 983838139 635310901 825231018 404211456 760436409 180894180 485253408 257884030 495744839 721795623 921053453 818912858 821795481 650045 736181111 916425304 985462826 19031643 203470148 229763477 947301541 120876760 649766405 896584968 936988432 198088187 632415736 151807520 378191768 562689159 582127418 629421023 742027521 368204738 716626667 154373384 863078364 179462553 349333385 774535698 886719762 15345735 483829072 580002420 620240240 108426807 860067550 950481376 978774024 473998797 968848112 895351543 941437596 576114113 583574088 667393016 827288330 32598467 283529211 695059870 704160835 872806615 931909444 941935500 997821687 390591086 689218189 827008584 994257017 676288229 828047792 375477023 678463123 598578217 803020030 274671205 943060543 759778481 973223797 862200180 957570261 281773111 942199683 29309830 215906124 684680790 911878209 727950724 834865098 180258317 614511111 431621745 434032265 723057642 977544555 988066894 997437375 924515353 964462065 388953649 824868421 627618595 796335559 935165983 948882501 636396924 733754490 727942995 771267074 604442057 926570815 933955606 963726171 516006628 865834498 302417914 470742484 378434922 901376901 300669562 356774922 15246290 453668828 388551070 403634141 35142557 689947379 898953197 991203081 605694792 790513017 193225514 564957248 839230197 979438203 153658374 762046093 3485577 32798233 493080312 979508889 359175357 499777872 66919849 736764134 807105183 924319884 141843420 819061585 190971613 232987817 956437741 981549046 127159692 951244994 303563417 814453018 560518053 672350810 946551121 960821197 117044797 885507230 472119925 507848524 361071245 450663910 542689695 853521327 259573935 960399967 175160313 760835766 600929218 899851229 934217471 972449070 530313116 910541847 752807395 849985027 543847162 905967233 406803726 759400768 63104709 236199146 551611348 978812436 688989270 784487190 783131326 982069657 514037031 551202625 68985361 184796420 950864606 966540326 225216736 998022921 672450508 691313425 99744995 901455007 554986519 817483672 374732890 993159196 968869994 970669798 694916259 724006675 856766728 971185208 768864539 849709223 4852333 162801792 740882239 874371447 311018957 327392014 316709217 809241476 916600692 944307452 302157633 770832162 544259316 763035386 1780634 263504087 681999355 962336235 158631501 469541802 902848285 961558512 453422259 951367504 237153879 732638918 875968567 949732014 14927025 983935920 217018671 909268938 807677777 875449188 457050233 893553807 18337814 155003197 181250690 408274029 306231691 915358495 635275543 992788302 461568102 840986603 557111937 966299802 873386039 938035631 591933107 992946537 716283743 965155049 379678818 536102787 891341813 981314602 786319858 881618679 516051129 855330420 517588833 874123556 78115213 865472236 758400654 953573496 664504720 827328860 931989990 992509369 385565085 433948251 489484388 929263818 862003862 957644796 159949843 693179366 976592487 982268743 763845896 852016600 639890483 706197068 168076797 426273558 607541408 814202544 584645269 765743719 749710725 843561445 919494258 930621673 226173576 348205728 811999553 982237116 746721520 883739468 51401302 124768104 344501044 911554456 514181175 857498535 410430595 522114729 921326628 987042519 553740027 629874427 622692297 702911993 820745906 961732245 550077743 952695606 791127001 974014233 357153008 487288736 767287453 834695304 986508022 986791759 147400156 385398228 51679368 645044247 486165442 553214462 915041714 933296655 245744391 930642755 76262509 475170450 714349224 811613269 826616706 943149716 504947425 845426035 598602208 863138142 787245138 865188070 528841513 873150890 465621276 856184830 967854581 971387605 960169627 967075803 79198926 89328431 876322969 999003938 619749566 834411178 302910565 580638138 545514056 855890502 571839798 645192335 428376087 520336732 148644487 488512098 542039265 667482486 570645362 866767946 428911087 595822940 301564420 724313121 397309135 553847825 903244388 935175745 307069375 604452133 769466218 981276377 60101971 969475035 750440926 793444642 862220762 875660448 627775633 865861338 332751684 625452957 783594747 970151642 443541515 595985572 591925441 611880936 104010754 817383374 612061640 703497928 302287294 765904663 104522680 578932144 234887982 825817470 169151072 824329154 820889494 870000284 756318800 803557195 255339869 278114882 733622757 883561772 976275836 994715524 946878216 957462469 35865829 783600179 850375998 939861047 243411499 544052427 582108262 785493687 640014651 992043649 348227538 414407126 76187777 871453380 884734200 961622375 812968996 894938611 212192462 811983783 857914315 922641638 865300099 916761182 419032858 909115149 422012117 971052163 119351546 679236394 296700190 743399183 68715076 556334174 711687223 841195803 458732847 811033746 105552865 174615671 945984955 997271200 61122402 615859017 883553621 916549676 471984268 968545564 29135179 478545521 203834386 905264232 66291426 767905231 113045666 117543378 560063593 615816367 792066490 815275132 514164497 737388026 244762613 557103069 920838202 971499621 330030554 427909348 559133333 707574959 148492293 152690703 103624106 864940526 800989318 802568632 981303312 996232622 606988173 826034191 646503197 994889202 376549318 634464986 838548051 850669844 964996548 996694051 499712644 729763708 927434108 989141006 30938416 994726854 823709182 927067249 400842245 741138175 158702025 884931192 158819091 935699745 128611999 351987747 501287438 637121551 772869797 985512264 476464422 815814566 294197424 848605452 406952982 428608172 672013541 731182180 349243227 647367696 396099095 819053160 131613516 182351743 616598532 845329747 98109210 778612260 108694040 212089117 874057735 874419124 334759183 340116055 470901779 976689191 398428861 730280404 367889520 721946360 889322514 930984160 723825892 924246354 842183236 923528848 875738803 967928796 641032907 885085106 288355171 788571424 72423759 615390787 521839539 650603357 732150837 859530894 43923277 757735506 910202703 940200043 995856875 995926550 732395643 987619139 479107359 862062958 257186575 328097846 157427490 978448708 202021926 743547003 8021302 877093277 308931414 439783878 748803023 768160477 882138309 947107780 734317862 966465918 94863710 591173957 357271374 734934162 23799905 73349766 656979373 789633458 366801115 418546069 553210653 929102031 764767964 955825283 599480913 748218415 652715840 991044045 458631069 896841672 737336746 832836352 984486817 995694000 484072374 485436395 269285885 856245603 618383636 827565986 992301741 994693588 62787570 371741113 359044402 831062295 157672117 315956698 265553891 347693942 750550935 802877889 863885261 944309846 189804017 918118596 377212881 549501123 993342628 998949902 916003497 960538456 519193364 592344292 493394371 890652092 143823842 880759523 450558905 712409301 576161371 695774563 274204489 899292701 917178013 919443913 454003045 852186345 643242988 928995426 915344226 943921500 924670332 940594684 394518250 812114832 665045051 978105073 235403074 252866045 879680688 909351247 170364075 412527511 619085984 677346455 334954902 875096686 666823731 761344798 205317537 645577639 909290198 925744808 48703157 587667344 842344330 921321107 976852981 995447553 769513012 986996396 757146106 828455286 49516839 282640362 594638527 690833261 985061269 987155090 890404483 964399302 997857906 998223610 65916725 572780988 160795907 679624486 495730708 662754717 782750886 938496834 411233236 607714837 62261302 979382356 155756364 465420218 658628635 672708546 928216991 955357034 461653548 645285623 614466096 654014832 269866472 784045718 448064161 637653292 617790346 846100817 549089428 786364302 777972601 797173836 575781088 875447378 346879104 351197536 31195311 802987001 280705341 449423592 260135911 298292370 129868813 667815800 563247520 613500963 682997457 914448473 93959581 443259853 760385423 954643891 783125591 917643841 642232883 973964091 334295839 351028495 699572632 746883152 890637259 933813206 134559377 787663917 472275917 495389935 55251036 700386577 843291984 980427198 198532894 821099002 392832178 833802252 534682113 548060983 377432362 599042646 120895021 168264509 806618207 908750535 665954986 891014566 825533136 943172778 879859590 883613444 697227759 740095898 581776776 620776032 247372406 844485183 403589430 931839306 493433970 993902648 176574350 396539011 950996192 957867341 958766611 958906993 299197510 676998848 840849595 941008879 219560884 865467253 550492893 778099189 347540652 633993104 948675297 951860117 440924997 589530290 734746628 877739243 413034950 667109935 156012117 794349206 517913687 699136012 109154101 541385229 457142120 871474832 146617601 981044789 549616678 621443221 804096488 947640720 347396681 811285439 676682448 906511562 710535449 879003302 446119779 522013143 525072287 825794616 14107582 822039220 145436332 577989531 85221613 951437653 414001745 713977159 134155757 296812766 784763468 827751439 675824168 694560480 770752979 986396687 688430363 920037613 994554499 998497764 79552356 841500895 582462684 824774270 851146082 860664602 705751915 759766268 359634111 883985068 597303401 873497910 775796289 951620225 248942368 408678686 194969523 604967545 48003233 379289197 5550427 699221880 569794252 943881065 99201134 901899376 675457156 746477194 125321351 257178011 152842674 490742414 944296022 995205045 968447120 974434123 776405138 797204602 248538963 725810819 791273635 864833273 379472024 560820896 753043008 923874596 453832287 773031444 35713949 704792470 93017796 225722441 198196521 424002231 902153629 978437615 884707428 907193381 178963577 525239702 417212982 566635329 609113551 848929128 326979792 890039726 620187305 687443397 601467409 857733326 273295770 472527917 651135380 840159027 801691077 962935637 435600531 457720104 607174296 759894726 197490647 559377615 401014088 732935382 850547950 904805120 595436116 908004122 586839446 766578333 627907143 688328757 503465412 536274207 36689399 451903078 987253885 990825138 271989794 691493768 937204140 993955427 305074680 913148198 302708573 772620159 561150601 873973710 109905889 555735336 737376091 961937899 775991230 871523765 375601566 559030599 40051800 363947033 118381778 397328911 594866367 927645779 71407614 474731591 15409993 59507857 771839851 961260348 464149189 631530801 325515344 873515419 928203573 952650085 57257309 182618195 52505747 223509558 687077398 926276413 760708277 824124188 518736653 658320887 628792571 693019569 77045670 395305314 164431260 562882138 290294957 422335468 334751456 890727093 803967689 949165602 855226138 870428679 196193013 478392387 11729294 442605916 190417837 371671426 631641131 646199801 627993099 851894568 324070724 378532906 158006811 666457427 409464547 696400098 201032556 552915096 744621271 822615035 364628122 552713031 710665166 761470727 324027330 383244231 464647066 598947892 771194986 773567665 309864762 416564011 565883087 648501272 221484684 442105974 549266078 831828898 523846882 764263289 347244947 580641711 934389867 950128622 386909424 463123063 4046714 921042938 822202758 825999136 958784692 981489754 486700558 810144096 353323427 442212621 240248378 881419399 800519075 919580298 408927508 781327119 791449108 967338487 81283874 488189014 151850977 617127715 961118253 988221050 863705518 905941276 93236293 233478353 356476917 571712386 479313898 612359699 362604855 963803888 862194112 878541166 528835215 791438657 226693660 663435568 664588390 729639225 458470793 950701396 885101743 903338640 834745368 947012333 105213794 715674719 799129303 891585685 260754997 579794171 805653971 925740603 802887240 845253224 27321503 759438487 344331924 672671540 813840362 817462309 615690816 925167280 495494256 752189361 961323468 997103990 755658566 960100827 544626590 793710130 32874731 561825666 235990376 574173444 753557889 964376736 1997369 905049362 984582812 989543936 931064628 948872214 112768500 319289960 765922790 875012919 466361899 965387270 488897801 884018456 763351394 992428628 323047698 496913687 349019135 404961900 201402946 571965393 183346862 586341699 250564836 839692175 900781222 935902766 868549445 950924044 457164336 940596929 44471223 273010530 516919805 743977425 465002531 769174547 800528392 860448144 489638796 629311596 559883980 627274412 619890851 971347507 581473355 583617144 425688644 585254992 391205682 811066838 302200922 743988936 755708479 885436239 256525649 585234885 329195514 649923775 426957009 753342114 138629333 786029987 191833208 893670611 2363416 355222348 96773130 993497789 220282888 957237733 451523869 901101990 642087003 658090986 384314703 530957527 823569980 855338207 533099639 824850695 915334285 963254526 839601927 842724315 583832149 663561070 93978188 756651503 524839704 718490139 822703381 841728115 290313657 731781088 587667100 742237337 892640167 958535570 824881182 986676857 515099804 811473941 168616847 201835653 431577663 575817878 211017762 459002397 676600259 807258082 369148648 525751173 535449824 700194344 997374293 998077717 419743431 827713368 677396725 902755135 798541368 988981010 497664377 675020696 100643314 350033616 88059710 903751315 695465022 883868263 375236827 456386675 161842852 502550528 106561866 283321223 620902387 673243806 126383834 766652690 440568223 870802792 660282843 863873063 264376638 363156187 603832829 810970912 424812280 730572800 775324674 776305531 251887908 696377447 521323775 791620617 441268181 569601820 854398302 910742626 511095692 560915530 990210698 992067098 894790347 974950414 804377645 935721738 108484822 236936997 372490851 785082760 610673655 627453370 534353850 949765614 234554891 944749636 202086508 399100078 983419348 995619744 320303698 887805834 863263887 932798360 36519034 534432207 936937954 963304167 639349724 987499949 873512809 974080493 864325838 908343380 871667389 911165617 428185439 572757308 712806956 931761257 288117670 393800118 822122570 955392532 26278264 166581603 90922393 588867281 596583805 675207349 900433259 970420348 406186867 706337038 741758109 762661455 302683226 922930345 666899332 869472546 612351044 619676886 895759003 953416472 81293664 787732637 721616800 801163904 671690937 731694389 659088355 726818907 200399881 410266353 570662585 690213379 558077374 754002953 605690817 993565887 563631120 804762648 139573097 292172098 365620706 499131707 929592278 979083348 213888570 310519591 856115130 915000078 750792769 843370083 955452872 977653537 627525623 735848602 672762951 998684001 942450078 955782002 598505151 844358918 765879580 971848944 590345324 739025071 682452290 900096019 968652378 969065670 885382036 905788977 568650818 631462183 906690975 965358174 571430328 763392927 130125070 650989237 154273500 584147989 254624484 758491143 377348519 659794636 701631508 893038384 616096776 781223497 307860960 432932973 810914375 997315714 52865060 991082363 47376841 427300818 253385797 470936416 249301850 810937130 343609831 413471376 784744246 785550106 871287555 997836476 317248191 943154291 578657236 707706582 874613862 942196303 702283992 795752506 350790828 964532560 407196810 442668318 217485667 268423250 934788918 969040890 804667746 985012925 622465971 703915988 937063158 993516063 275217927 912075648 458646980 963006727 676411808 945859863 217363414 558435949 592112996 830889809 227831413 607249828 731417209 852937831 715288020 946142406 272340079 690809519 112435552 952002994 299689371 762135805 271375367 776453546 769435787 893756338 741505915 998517363 632328957 826280352 549136359 696127192 155300865 425644403 456569643 689977447 298166710 668464706 960915649 981344328 818765638 999302970 7329538 139119340 817866881 966514891 120259581 300600245 269689595 799589686 257012886 581224677 649020668 764001327 956505278 958365965 417245149 850968380 126513503 208258988 695002619 803008956 404969221 795762561 266190531 849227616 243529312 289634862 355684233 919682882 393928224 985166808 710196104 745432189 945929181 974894084 650645964 835279594 479662773 588823315 610520170 764670520 399041031 412355525 354397175 659460899 959222873 970017208 449827201 479104912 753413026 866031249 419150654 601276327 71279807 280931842 116305439 623410940 724933383 934323403 291907816 524223593 326560653 771177867 506083739 602321101 495302856 687828166 855178416 936999414 796527975 999005081 932823583 948966513 503198438 616475075 235332587 651062317 90267128 493367301 382254926 517289248 921255364 950863233 401000570 548427319 260004568 629333515 108552378 825478668 269817683 547952460 664534854 865814943 33133387 779083573 480142932 668199979 557903739 639359719 443238230 974643396 170179527 843003254 323533015 972371901 609889568 905277396 959095740 974656060 181852622 419514520 539147507 761525157 473016208 741398679 493058029 931722358 374658738 490540217 14249372 686504050 351265040 548505770 593411634 920549228 635799145 760068241 105740670 655860057 962182180 981550881 708228379 959439057 224102294 667523253 556316113 743028617 516073102 866462909 365815913 596439172 752847530 935468175 116161558 570565757 836401029 858097811 422986188 754545060 648810755 976071542 838842709 873696331 890487307 937472157 124087317 757183220 913990235 975027679 45085257 350401624 776279357 899889704 269762098 689090981 520241807 775001490 54999018 916225920 259126867 842564416 412604550 619961591 768082931 831820257 814448113 938996813 105350671 542667821 382428911 901495082 208379008 963168847 662218481 865416502 792036265 847080217 46393703 418714747 140443838 254477887 432451519 767550908 311954806 623580472 685739965 828810357 192530839 603101566 22089711 969086847 180911663 339608188 184827952 471626084 305672012 518754966 208999405 753696484 242294971 513697681 330387255 770612939 106658818 475383898 552087031 562704770 920976270 968933485 93238387 476173731 446208240 956350628 149533857 177037836 83659029 203986620 981590585 999023419 14591554 733718783 359285774 745345306 997360552 999314283 389335605 611542217 196917904 628311737 699353882 841640109 934865986 966942797 187471364 636107804 612452546 697923077 829363742 844657465 595580567 957225462 615104242 908147810 943273734 996134322 530290218 798051946 99216528 495091434 328182627 437318501 200354106 486881600 179067610 761035487 349319191 715678054 216429574 561960984 704145107 709714842 395593928 578254807 191237551 633946263 422598435 705722618 667948039 999306822 64873188 628692292 845067256 909540103 517924779 765649328 855414538 880332565 974658512 988392813 401615330 786211877 509280204 749655442 504691419 967869131 749909348 872273993 44931286 831996669 853114984 957829514 84359635 305110560 881414082 991760339 312003052 967138600 740106557 974451199 57588884 379118010 924791158 993379130 128770585 198827832 250028233 742523037 39892999 830275911 104014099 489597961 70707937 975612869 22337497 49509606 324212122 652442648 345173265 594454185 736495182 978539843 12946462 842943975 87715094 317636005 26430049 825001469 932173156 939620544 351828965 876546974 142930848 343935738 297333898 448630763 240010380 643583142 527924682 930620097 980551762 991200040 548848210 580215469 605656295 709406312 54272206 745578375 662815558 710965755 445335902 842742521 746565529 827295939 713225184 894489704 350386789 887963361 826845465 871223588 832103950 906614295 565440360 995337019 719923284 727508335 917119658 918550618 798595414 972516582 210395835 698641089 666250124 836778175 362637909 622676949 812546753 936872317 825341650 897342621 894322707 958287550 147126011 484472115 101973330 499820540 363125996 481283673 205768140 844158425 212919345 850933688 435782242 525758355 254834233 723128586 655082784 786057091 38500873 943674845 125477943 921997364 235688055 279258939 66941523 201583205 243812892 482964593 932417208 976979535 828186627 988116943 183012358 776228442 648908944 704019446 390548964 931649647 226242799 642620444 436122846 788204956 742694137 758146110 76238850 560462922 861333700 931106212 554837195 755777080 556677985 701882347 856954925 975863689 709168602 875326113 484389313 530875256 266744793 746920185 709775710 899471953 571586833 677579638 826490468 997602922 748078969 943201715 475108505 682719584 150694218 708276525 811467258 917423669 182259633 600800243 617313107 733178930 663999954 837222575 421619836 883957121 931903470 966824386 120707605 524748359 881139090 986328084 964037454 987488745 439715774 460815927 139932759 202999926 685853970 790745196 322669912 938621109 147875624 153566595 110009437 266690686 70599346 403173560 750845285 860409859 793422837 984496466 814917647 891632963 53789638 681040212 823326478 843440147 662830910 924690143 595386800 749777167 318423906 593672974 684394686 948378272 569775142 950579279 208483378 356398640 420847333 677178645 734025151 786857931 765076435 931622029 851413629 887051683 524376799 849804964 697958103 788821699 180199500 720929324 389808247 673126408 360713330 868511636 942608189 963880768 738420372 817253506 197218911 951237689 273394284 742691630 273360443 344744093 458587227 925610857 653504786 931770957 292534755 334161648 353478738 436411413 18332979 533546051 661181448 712116096 120022783 577720939 885250744 907421966 563015526 978528781 510399136 686320262 845073004 938480435 928437601 933947558 317348350 341647867 682291472 776576758 3715499 595792461 704128215 802093999 841947625 876817319 78697631 455877273 793210791 802060331 975998737 994389985 91347865 812073006 275405280 549545358 721482227 909231009 669127535 974306006 611809652 911919849 1516806 45400130 830354340 835127785 214125849 851772947 929577701 931123270 475025017 974674928 449277756 828676991 503488425 895932692 555453623 885936130 203249317 998882493 52289243 501167877 208416127 684259028 704349825 998012635 162353389 317311867 939735912 943009237 493719628 666153344 654380997 692607924 615113399 625456269 700794169 814416910 563772745 802974300 54775739 377288312 479791251 911007452 987680142 998467507 869351210 901045523 705312836 887141380 721580064 853888768 280809126 316232834 744019571 835195022 5210515 66311189 866661445 888878900 878661408 945827786 438385032 943604905 825386799 928838752 773877078 819676748 690295325 917648485 255553422 371231980 510664484 543221477 16356489 898546421 469175262 498318628 630960968 712879104 316571318 349348625 667483185 824504693 770927994 977850458 944443145 967551901 954510550 961574798 943078941 987832752 830043093 928879211 846042508 876164569 358026828 765221535 998149601 998301021 949993289 967827516 664485889 879346195 828946654 891729235 240889626 880101966 606947302 733923146 823035140 986537691 520437105 681838106 609205067 902169259 199562333 318499974 613549871 953010395 523918133 965083044 533620279 983352927 416945313 418812151 394169487 470047650 642869973 962823282 449765628 594254690 873943593 924341258 419257961 529229519 594015751 662243297 601080990 808998912 624508600 678085527 690522826 743052228 626636061 834680288 763752534 935779996 426910524 844159286 677945780 865664112 658449390 743371666 182128913 799573784 218054815 387111586 767271991 980013915 778907475 994060916 664260387 852837493 380207756 987371993 556939979 590179864 69030182 151898019 963232581 992330313 315703908 890658439 12395087 660207985 865906681 981753608 742278479 909938662 376788272 850186863 875796011 961304149 674548641 854957872 528558087 788812620 325681440 796075743 846745209 976773526 469941013 713257215 264510469 739959093 950284262 950579736 766792166 931389314 822246060 914456736 964705209 997900628 419440567 520845399 6777306 453559567 662829516 824256977 599363193 933531853 740148344 874313697 406250823 768657313 841200140 924486291 773501336 954753487 623632221 677396495 306093244 415881572 761776555 912509352 831400915 994008182 638879143 865983191 729789229 755399363 359424836 944048317 285713990 468756553 43378589 467057395 284863698 427688415 387879597 717250665 247993718 471692977 198430909 471701595 474882243 599525589 795782445 997430894 901447473 947829143 625088723 874501177 844993680 898408311 154833575 708104466 379551810 977148402 762084016 903239016 731293493 969640876 177536324 348207162 216476154 996446764 395467666 933417554 744170249 773300200 24425162 249961133 764173210 930206357 493218441 951573392 906144019 938292344 38135822 487005903 188834685 828495707 878177981 908901556 695782006 831196623 775383054 936616894 268260920 550710140 751533886 792963550 698954532 798971827 558732427 751995128 460293393 996053072 213047328 661243455 528719833 914718757 242503741 815597354 838517823 850773671 19950939 434400613 40161498 456222671 637268386 928156379 284675583 786130596 242207822 421753603 22749647 702021329 304370702 768123693 262418999 418483475 416611822 772110737 431305320 761059278 782215682 850201105 956039057 981320411 762170721 767207674 852279751 917435369 790656208 894903114 48265882 190730272 805620238 887561357 394268841 822916591 902133998 996234265 731719731 816626579 855526801 877468591 587524913 777913299 760003057 955116724 667826771 829342035 881583362 924204665 57031864 838653642 309308937 740452308 520188470 750394739 324604213 504017182 138380612 527492818 264257993 497263266 29205538 446761344 724897955 930721336 778114704 993708918 252677751 473707735 136573143 189348436 540382817 740164058 971342358 978317279 545618588 604937662 745474197 847822903 229470587 451926110 694193965 993618794 206284343 881351254 144968358 424741207 291605055 640551392 948721112 967063241 497630071 644698020 951834026 964208205 981703619 986538213 105985387 655810534 974543178 996363298 261779164 979397458 860793233 935563020 68638182 912872505 814191819 874743984 116742324 537725189 49371198 696976774 321752721 790028641 72570178 978302107 68943273 927929405 612132401 844093175 18163500 40687030 886160469 896556142 535346016 921450775 526195644 722512515 856269342 975063770 175614875 934780018 753597338 794443317 936767484 962489764 195259741 813881638 688556875 863276458 39612601 844598830 574766175 840271703 681651590 733754322 714703474 875711549 965474503 998875361 608763493 781889887 666462038 834090496 600764309 838523803 684819650 777412960 938515145 945418795 194889292 835379508 706549614 802089294 263013572 650997860 999220663 999367167 456632479 519235174 293467346 873091257 91175469 242826598 820446192 846249257 412945023 461612906 805438045 848687614 532714042 796267652 396131053 580032607 71291075 984351412 159951348 602468326 598586908 638893186 718113442 888468838 207969837 629339271 156757497 791016735 239077190 922988559 152540726 375716301 912496787 933636103 893058471 948027510 767671400 982702807 987485484 989127211 821331329 993384565 193503346 766593498 972237711 988367063 378756963 978051126 686838837 758181785 531225797 627027687 314975046 795667058 356823509 423649622 570917613 865159789 397612283 678838513 649726183 656650262 319538287 441589910 724400588 776565769 878680498 939581385 625104778 793187306 632065380 862604094 150169433 267843772 348227512 348845162 417174965 632068120 732264203 892554933 863060031 923182969 129865406 719100965 658036312 758072795 936831976 989104383 166634379 172972588 70400120 428765424 196855061 409729722 35651742 992770021 869253444 920228670 993511238 993886760 522999141 738668482 681854111 690142185 896558237 985151992 48144358 108500532 42350946 101296260 900751599 927014421 423791150 719898349 463698134 955763775 190339463 899746960 862778732 969986285 163603656 607673300 323649229 511405912 357730943 947667567 830553336 970610266 927959671 988081751 576116611 824291707 950423328 995807908 754394278 884224314 541993482 575053568 776519898 878146093 637251289 824971376 312211817 598934199 884378658 907415577 263077055 527576161 963917998 964727356 351587653 371126615 990719419 997376018 89101063 160105686 576055678 992650732 720466576 733398688 219732868 465620789 515621629 929356336 141005159 283575084 654761675 788421709 208467395 604885282 251678169 956851706 861203110 950628062 681462150 912752177 640997102 695539192 762494403 915795597 538232043 818585181 660885170 942922487 168030188 634681322 668596288 739418148 462966354 805211446 628783110 791927633 271465024 692617044 220181866 493790625 573224677 637114224 443151918 950369675 294601221 375092361 926964869 945193864 166321802 636412036 125350747 358731009 817322021 834618797 443790322 909872326 294287549 304492425 146866360 927992266 74547966 200177975 226683335 266956532 692252245 912466666 226842420 341964698 783912682 811781252 346436817 394156770 387598892 874119342 411635181 917984276 341294876 538092455 438751559 787340301 297909657 516474096 817380196 934168851 544965303 658750868 964811429 965859448 151894364 298384772 392024481 471666556 145756044 353849358 897197412 935215707 641037229 856295225 154912469 178501935 453968844 923225843 542464347 743264502 339273897 749319311 23218448 183496467 626392807 645749688 71661580 541367050 525982295 782422307 577030171 869636758 356298681 514223338 304390586 444364909 670419942 854990989 103642459 411669549 917790630 940855029 456430170 932940476 457960046 543725496 472325305 500638409 9635718 845006302 703193206 711823427 405116202 981609812 506037760 661798625 207408830 393853720 280020563 310608912 900012727 943297490 659992176 817862812 393041249 498076180 589305958 611659154 165421245 526558530 350097065 707259043 767098592 794320762 769283020 922503550 564636520 663158431 929215407 934950482 70255505 304955105 759104750 882707456 353258376 651786222 465641903 682324587 582256797 652342048 946630946 962636124 333093712 658215089 801372593 949590049 465621977 854985026 377096074 609797165 328135530 768743645 569238799 664404607 733001490 969047947 405934058 798583623 991980504 997211835 470910189 804235001 188655789 296808223 635687869 684782783 261272457 507253486 757660653 814381811 510645843 619084953 239545223 571010192 52216622 909528432 993486572 996882056 868947678 876102265 481115671 755036371 182655252 470285021 437684446 661947926 373165852 687025229 709210205 724795103 291828634 780691054 329160456 719856943 220523428 265195702 49039269 210736677 993002711 995293544 752289008 774969773 757504394 902698257 821018538 945512614 758700068 943255379 230541506 741500870 147416179 745205074 620604848 789581887 13222680 427392311 804680247 959778305 481204348 953793849 54650603 871659100 945020147 968593312 197136603 333158818 796574602 826792454 871727308 982245143 124151505 394428444 666403516 711670903 479469648 842406575 42497545 100410097 779570022 905782385 61173963 667198530 467373483 946769072 204087636 388334560 979713996 985592399 173957886 886525618 185294847 282437233 916171511 924863547 253202925 892563476 637179546 716495019 564111431 917764476 565254274 877467263 4168171 305734218 59781971 375656391 915100773 975938864 791076053 835810569 426419754 746465051 101127547 842951781 919073975 930298132 782924624 821699574 849137860 865764680 194337377 756766010 757523685 930682443 502633658 647395543 299804073 919522643 630077627 740382700 605015888 758375542 741621166 775352321 142209131 963927872 935937806 948633892 92699714 745644566 126705893 583765898 333311414 632138199 105779481 501909321 809775377 902684157 462468747 925068075 382121649 763527888 908468893 993066984 60951857 75409588 692859263 979075120 42973270 989454574 6107332 945529970 867357628 977482398 27788384 70208269 361145333 686593632 790009521 831705867 672523689 902984886 466026871 488714678 676284765 883617394 551724206 685307797 190871550 774767355 687019708 818609147 402138554 770177570 953939727 999352470 617886145 863896653 162481562 341276955 52785966 969909150 976460434 996167954 503160569 954506919 783526796 870155779 829464901 878683558 797190762 899103317 928240434 966804856 886975180 969680650 829773600 927103738 170440722 592593285 914375925 968152499 605582969 975026336 831888940 888706101 623536028 781089822 115298549 605244370 47807401 375318353 455137588 937790866 523310406 580576041 16557592 785735795 522736112 922259126 696023732 798530965 184461199 275920906 475324895 488375908 777394526 886221480 793258105 925047601 910897072 986564075 667273106 959146930 329393088 925604573 397833659 826586243 328716999 432171546 188339609 450369663 932733728 964171807 111717728 629961792 453038395 938683312 315380899 394333568 489412827 917421550 302202054 319727499 681461781 865585920 610144478 911631559 798381465 821865971 365407567 531080994 670095198 971336279 722723934 845867680 800970732 831568868 625919000 992357789 182719102 922443709 636520460 673008008 297325596 909821133 988507852 990192019 420354529 532963893 697896579 786507494 65207067 701710211 495270509 650957931 160750813 832367345 271476186 873415678 981535594 992621235 645492744 647716155 830401062 984978734 370501356 391898509 237296036 335906883 437854722 782784615 633728711 938101788 762710048 889249720 703996418 707924360 882087861 957959336 480302994 511557811 923610776 987476670 498382755 609079226 723639997 939124865 839679310 979656885 942122932 974095799 82114332 476311174 179977031 835692543 931584631 987434584 450485336 845268249 775638038 891145267 704591447 946066717 290456811 857670066 827235573 860911607 781518168 829620225 874460471 913751499 876948661 952659529 48690666 688987060 569603049 749138135 501677584 950547019 409528734 748227045 852566285 955261846 746729289 864607935 303044136 634485991 15584354 642814342 791941326 909618736 736703345 852096626 369359542 688872480 341954138 965951392 624540979 988554344 701016412 966915392 273150759 876521700 524971242 541297637 96569159 193637517 122461181 575007700 973887799 993224849 289307869 430813832 488725119 969185855 409032727 662295553 211614790 878761785 209832877 295090824 327262679 804259205 745498944 870534366 440145158 951896234 637716343 807130392 899293619 922107321 390993954 787825297 285338992 895182376 55570835 321473275 443654505 938171517 549453363 588471879 867839643 972641574 550923100 702039574 384691810 530125721 193008977 872814494 814272994 894541654 704697346 728572838 377562467 920939195 825838576 881722222 798047315 932540403 591752579 934509789 812117834 896753658 887478736 921665748 103800085 400652451 658190728 945211090 527236351 855702286 659206717 665079781 558730801 614732946 997148737 998947311 255621894 856576987 938168604 998265245 453439832 803597825 23163910 393777828 849666170 860181842 341175769 730182813 64997797 500835910 690904287 918520191 65495119 559114496 892423242 915688854 522286388 743084137 91561478 302152735 235116954 972528661 779703120 877994554 363862822 752556872 347732623 537275833 668717425 850927214 412760751 967645900 68533685 744049890 864415607 895888596 928474596 977440380 882498142 971116570 505411420 672409955 603247175 798905718 526989792 640675562 460483610 728123722 765353472 888619644 391697410 843948024 77680437 251604570 596643856 859253458 618233845 620280715 796179052 953825680 746132957 945473335 447980766 830037094 215309753 416447569 322143832 676755090 552505107 611896125 906850412 960244933 771202449 878071049 596455480 787964975 481040650 768707762 316347799 710823063 675717535 876430469 150766963 540364939 17588601 596626610 818851714 980446870 365989701 790889231 824957997 971439974 976710299 997723526 107540990 121625159 797319337 971295022 475754306 533220226 470796040 699326568 663550289 811590013 309187939 879355973 970112665 982577202 892740350 906475588 802226606 932570646 725709357 896086607 699967498 725683737 287800593 743649828 59387674 154242376 963548891 971915510 879551426 973620873 485802917 889816250 548203264 675688477 1210558 340244805 505900562 677074079 118735441 350762638 950879424 956323945 459984191 595496497 265498338 680904727 354735754 507694697 236544783 769785568 822432656 857768037 969089848 987517350 885367275 946314922 89072818 985349331 754457932 921658977 95302050 973408291 358233018 487188928 697959512 763098214 276015443 908094022 538969189 712551609 287033734 789015178 681963112 764129426 774334770 981045653 956807746 980643303 630978496 961150865 88956631 384373957 816664303 824693243 462946431 747208223 584288251 596051697 177711974 831517999 639815454 845440080 569407604 752006380 210393245 905538666 412089708 437689009 790795913 882521918 605196316 786706216 195321929 958283978 744307030 757704327 521406626 771305226 17847819 382185708 204560331 872382421 98433781 678758111 203946451 290372971 749082708 828335843 352867182 793018615 793908111 920069946 602651057 688389286 519313241 759550658 374341327 950491316 988716340 999315342 314277007 873242315 208063313 751249218 51078332 694774643 989078239 990323090 838218288 916824439 842336021 893930792 652968157 701279482 136413844 297553830 876170566 979452587 374593673 991736191 567858120 823854730 933404235 998481887 444581635 568786048 703038617 827387395 716580764 990814814 258352720 778537573 451925544 485495485 903743317 929767734 239846568 954113363 901518283 958344219 80893885 808952104 802835522 904569772 816022005 835196934 640708911 827282948 303409274 881459682 980150553 991964880 805840262 926898620 978668367 996015849 277757084 747254024 526466470 829443185 214062636 864748177 9177124 544463589 552891621 617638931 465727053 801157736 825040148 876252654 48552006 213772448 44906396 672094550 797804443 978787150 397230823 517018981 135529649 668457909 408447927 525929994 194694185 304615180 311527538 688909856 337898980 723018851 298131521 434658748 368242223 544505518 71113264 431333860 241011456 511945532 791137378 841173788 249281535 595484741 676204469 736653099 32941229 569105929 255744476 864794819 686970400 927679892 124863328 770079727 725599208 995170935 874728335 960894496 358271750 883944491 777500446 791702106 205812702 540358232 246640081 510699793 510680500 955426377 463019040 483691964 697813398 768332472 219629882 239916412 625130506 805989021 953244053 988449953 326638910 711346987 394328747 551704208 127029216 807112167 988876409 998783703 363518388 720479655 723719679 814006962 984582144 991212008 728098255 951633272 106096476 744726146 775377688 997624566 865131627 994091106 868577971 922167317 773023462 995159514 108691843 397194345 632629038 932869753 301526220 869965471 151244392 484982032 533858937 694328305 680000122 841278602 942290192 969847869 170952635 857816165 536612003 802719631 767351784 905043132 756327879 813696306 262592822 766400840 419539880 803852292 484621983 771689871 192229959 437540083 695460768 820739064 696017226 890936183 975548773 993525332 41669551 148342392 58990638 393954667 70614235 598917538 11439996 273132493 202957079 837093350 786337952 879810186 351825257 402172923 336609156 590553380 410552761 534547852 987114841 988166349 798113321 987038807 990684788 996042250 184808390 338547384 867940807 902491590 622591276 661925794 223195689 360199869 129871044 565343330 604406915 720912254 24785115 561467647 536259567 990638725 374330850 753933078 449776364 978059217 694611439 790748312 271617952 343865650 674233235 778869902 956461301 967406976 683953053 736159662 125040928 207517482 974268187 985502426 757724105 979527233 695377903 857659443 976883235 984204985 730950421 849439035 530445449 582404307 282174656 667680906 819382521 866579533 31856602 54708729 834089120 924791853 466309524 847802947 45205756 724345433 850906803 954512928 786651862 853766418 478204778 610284485 672665851 730975541 176086718 598315511 869277750 907672916 318544672 499062035 923971108 951122546 567518651 649821594 70719702 977912962 862301092 969297479 24903646 969388486 926367423 991667295 206736027 743787261 335719418 555181114 799690324 926349960 394174157 937490961 878401940 909996028 833036458 868384612 913606187 995854714 616732103 639147830 622255001 634881887 629610667 887027790 981437970 985857028 574543904 667954603 854673223 893770423 789854345 848100171 32210863 653166144 313953755 936515459 328459017 884483613 867887806 896282327 744300023 775602731 921642091 964904119 398252077 749824381 571486836 880396019 280773231 672729847 864528851 973662811 752119070 980235366 727572992 850048708 951970021 994466409 668207219 722158357 704515979 931265707 559374327 594371903 215829518 474059090 231532468 763993454 545130432 960564932 283238196 934569752 741346239 845449683 419443240 731300491 519472930 848602488 145382180 289139560 539809317 786570622 771411672 923999039 279131908 832107384 943304602 955474568 573936757 847420958 938605047 944044077 212759768 613522188 26928779 586797771 486029736 637917690 401894441 850885534 639980030 815252221 13376050 958118973 820463968 830820678 598835516 655315680 87180023 354554364 81608370 586307632 324149778 823930384 452534085 604318179 718333694 761205516 98513134 199521487 661534677 733536682 155708870 561174424 987106907 992430063 484338484 647005502 612412480 817148346 414114120 858603977 70529419 160152331 821773881 954435546 117052102 423169971 348803132 587676583 421087793 992567706 1671555 236471080 606306699 711983015 587033804 974792819 277221293 437812800 923090386 967144353 375169687 897129341 111249442 570783311 774811936 883986715 310601722 388041195 465344573 552156408 197969238 650269797 627749789 876105004 423683310 435720282 131519807 345977513 274241225 560382649 432154402 891953089 404157515 721342464 688580745 967470106 75205107 278628409 367790087 690910510 841156475 886177345 665454345 722862136 710599194 755940803 927260039 936596108 814235185 835353257 68296790 521314520 68802698 161066537 340737882 903508791 637320865 890341842 794888502 888147611 156478680 857444609 504821273 770201493 755564621 764640689 650147764 656871118 561655920 909614285 958224169 985571979 273941761 375428644 892149013 977012240 706447735 958245930 920818825 973449110 417049306 887283202 714755423 741690226 800868932 917477609 992130634 998270313 744767318 921537786 766357548 916575423 973204840 984573185 141322359 544437052 75306757 124854714 315151499 753118984 730080740 869490748 363404947 699858555 181530075 752198515 799198034 877715782 395149580 807520335 125228932 211362200 596609326 869287644 974638084 988845853 444034919 916112864 363115036 555800852 337019957 809239832 609107163 710234109 83309619 213923055 751265267 854175769 461506889 855571962 169750585 633999077 498511820 888933264 635726025 818884988 149510347 947939987 348015897 661824257 892730708 979214637 920212287 998839971 113848416 142021301 183765702 278402075 308593730 743082064 527743313 869926314 598083518 978732668 450113880 495206566 956519812 995246175 821375749 984106787 901973410 966637112 566489850 874297147 719462113 816953429 952018124 975757143 622822336 769882647 560290642 809551633 628106041 895163002 660536149 737545271 121465172 497124632 984417647 995048219 858589036 981270304 722464215 726907037 954107118 973416797 524030668 861827534 982063777 986208605 582380901 592935239 902681217 965297527 344823061 607981326 865447591 905101034 126057716 938104278 733947703 885609204 291120683 929691928 678362960 890075567 302110385 836173140 768326691 805198733 455876773 581204902 857427666 897662433 165452978 567523613 768845743 911392340 60595013 620258341 923347198 985362067 170066286 270009141 54820702 142700637 146404533 487389521 976859130 991139743 74588753 813790606 311844428 425128750 649455590 883520030 567214142 712580343 533836669 888488804 951782520 968135756 999238280 999322646 664585664 788581692 780956203 869347351 901701886 984280778 956852243 976709942 525278941 619571446 953386955 997444102 424923084 484878205 547473967 890514071 892784823 912021194 483393690 933474666 753169383 817186605 703911716 938217133 921637081 973595888 158925961 675709721 942554893 956790428 251045011 763432718 144812509 221960343 379591592 997977768 236177275 786421899 776213422 873612942 751051031 977672281 685280932 687518089 846026887 898179551 52848239 648159524 425498907 983954629 532131033 973122987 791628472 807949209 777184637 982593453 904779297 949999705 431846263 761044507 165892853 604315773 429597570 820844454 538111637 860326511 111758184 325130930 737888458 959121901 733559978 740692422 183062863 590865607 190663211 881681633 845613518 961309629 941985688 993745297 612107724 804349624 326083615 871099446 921587004 957296173 328706591 476115297 609634198 675131137 933473491 981315607 757305244 961269598 618544767 772671418 475908640 479614799 447758790 938998861 284727401 724539668 649184123 876383034 678598079 882460869 853694201 880577557 766212509 797476822 504520403 943097209 821516347 974195279 110059169 524885327 268845469 891093234 554511416 750765869 399273963 677989063 380506520 784852599 61592178 653145376 207002830 279051849 802239274 910891715 542697315 697826151 385442126 679424317 745286533 858745548 242938387 920108048 30061780 336823896 929427475 954940544 608814527 976802840 271674920 748954268 180638051 273992421 267058444 995532833 786528256 990730465 434219791 750832351 307663754 714266082 877339535 923856361 761142294 869263107 623816596 810652127 199570020 892114479 496368992 678488697 966384369 989818694 321610373 512671178 463060766 480760966 107976691 955900924 672681402 785051813 312340338 806873565 713279151 740709984 271830276 764745356 741677479 883091217 296508638 488541021 354513210 530912623 24656472 296114080 503715865 650714169 270299725 505877192 337586836 408328870 825558773 907241682 994113812 995797081 556161923 647839207 960724241 987638512 871351764 940876684 2895316 555410354 893247851 995858583 940635391 944624362 538542370 927402899 467515573 949344361 157897821 213203504 352955816 605290436 726309573 897394876 417199465 679432335 190672385 756117371 562627631 852762426 960996214 988665986 877282065 953977989 688713563 845258568 65363983 328400553 450952973 769864489 675519729 961203200 714276792 976091854 860207139 903557325 855200665 965824876 980197383 996635736 729673067 879935033 593614781 800092168 288691141 973424222 865064722 944277383 110636724 682075431 310457573 624409429 388730006 669467230 943267647 997841439 262626048 926082902 891910293 949359864 362468838 808162123 536824763 845849182 744945581 923424097 969209206 988954795 562525351 569020099 660616501 947345396 850473045 984728023 645869766 775283371 866822720 893934351 452096924 822738220 284247209 596825844 88005823 366399447 439645109 668550344 951602625 956726668 702154992 708924318 545199265 858547357 848946519 875977031 254287442 652586660 116887171 941850049 12732822 739911603 95058655 876203097 729530675 998411005 840499677 945082886 938888506 944107569 294655623 716455878 409478142 544701498 507245107 839958712 904470044 961683234 478519423 752211435 800847077 975013303 783076655 845608735 156758562 669006644 131023353 898471321 527883124 619315240 71412008 894447206 279323112 653812290 326201814 431613009 884381601 960176549 914600531 967944378 872488832 930912707 108737727 331082065 350651423 617933202 711321268 763713920 442059562 870719723 400644925 506290445 204650874 771170744 895978903 908263304 996337336 997329091 620690124 873771351 44597928 851746654 852138598 970393978 637380452 657321507 959665854 991420989 119014681 795410831 264054917 639665744 311423262 553705487 65160467 540222092 175507051 825178579 591392031 743164846 397739603 819761168 143165939 340338516 540311358 965438075 615672074 699238648 973290965 978681120 339523026 362998702 484020484 789066515 985407489 989889533 347440752 905629186 842944509 888387095 443126480 628646082 250599800 936524370 107880824 849469549 880920583 944852220 654460725 857430683 480323211 482812292 712236926 775572948 216654173 969200938 208822352 283360820 88673469 489500510 24290275 972176356 452133408 902718707 524194510 920654456 345449712 626055443 594067570 880197618 372968251 932995652 666162580 771646904 193764260 247108241 87832458 645715626 510458005 795224258 615582030 814049747 532690746 912336301 641991051 864931099 11041476 135730474 590131748 643771354 729633550 943201487 136377524 215242051 789889301 912607493 866382451 896631399 655752785 965737095 375941575 893490901 29287738 628991949 892367994 998446328 817761357 916333192 890408241 985163488 92812396 213721148 768737386 992669318 263852579 747131449 280412542 431869995 206330263 815309338 23527598 140863058 525005420 976727107 639423270 868900257 833754993 972128657 809536972 982557704 527158202 830919044 118460361 727153387 197553931 284956440 374568606 547460380 614676923 658704749 507897830 814995472 13875848 884812302 749229525 770093933 72247016 88027773 588149478 936690290 654613003 942106143 637479717 906275413 379657194 467102542 181364460 506987370 610153921 777339529 776027785 926725807 693595145 839281958 193755186 388689319 62458516 124866632 4008650 166902963 608580312 783468207 449029977 621824247 617500628 910747619 661613493 724035102 627635456 885040488 844596583 854360191 561315537 878146095 880599823 939320221 854054497 988212996 350578482 641449341 604461300 642133525 450958808 525864118 544091852 698960926 250557739 406302084 876572067 936547582 605031309 803926218 985743151 985803322 478414537 609701232 756219624 887293124 898744554 937171027 318705008 390636128 212872939 573415192 602993850 984662332 459426291 698607660 924161178 924763319 117852470 612870008 373623562 811153936 99760688 995096733 227068619 580351545 273154825 830972211 825546495 878029088 886319565 958792543 974755264 975596028 604499907 647720415 964366087 996745158 410385546 761066300 711706162 941274128 940652825 965725933 554164313 835949611 39054352 631390650 866640391 982504046 960676111 972603268 2033515 201886915 161684266 943892998 603321852 751019024 789636327 795873333 399291240 914873293 532713586 600782500 11140345 201919848 78764996 426901336 455454239 655823126 630827555 711588167 437443239 775376302 760511747 949263696 648505636 902040338 186949124 408686008 983514046 995102917 602675642 894502732 926266614 931101142 350317969 771262593 79646209 283889813 417714250 908263734 251386540 792374175 288103757 826563249 142923164 763821975 393373900 446801072 152145909 233585040 300504969 318616596 619532140 840960134 248718001 608448493 447066439 756130833 498380811 690544936 107282813 799186077 329650767 582558808 208659647 362609060 898826564 993574527 945444856 976045926 752284419 887071576 51034676 330979577 407445639 767509710 236665522 622287656 980009784 996438608 503086089 657654014 289756898 844096151 815278254 988881917 100528895 824152653 579146105 710681975 171818498 182994879 686281476 690560420 220753267 608871856 167017854 222858139 835040530 993100866 788688140 882170458 558711148 989676008 330591971 723436284 650198157 914787386 408864880 749805249 141903405 957562092 910145394 911656249 241066244 404916263 271045988 601960290 359180608 993202104 313337617 689100805 308433317 644052555 665554934 795925638 598713110 622024982 153678621 605697423 764856881 964041599 800107403 820141817 913571164 995196360 903170554 976102173 921176332 992151730 354554220 668605929 737620140 956426307 72834244 793202734 788796533 961759616 699866140 958394439 486398769 853948629 984428202 992242644 981360650 996134933 806778634 913156874 236636410 528940438 526693193 597943244 233827779 481683166 552929857 743325870 984058556 985110954 456844190 927168080 766389319 958679306 864616196 865762307 401258847 556085239 344819617 862710980 868615816 900004830 769909388 966660447 401400947 453634998 507229671 762954049 663052758 942353366 719596372 821208120 92989863 619666421 901196617 971533720 744775518 857959945 142064896 832585706 250271732 397781234 275749006 447136631 4047414 545020666 505646141 596901371 386856793 889787317 446530339 495665006 470810572 990834622 327210613 454807719 551417937 906456188 822886102 895479556 167948541 232035307 899552346 946746511 281735815 734616717 802580537 819473400 373019272 466756712 155714591 860378926 982405942 983141842 178831205 181684988 442540452 716982094 66080543 838598558 495784682 607418677 635403662 855137358 167840839 514527046 355010791 841234904 405675070 427490333 377939114 724295535 181871189 849379207 196342528 339311591 888612453 981961873 918685425 927105805 608742539 933641543 48968780 630429901 13259757 880253530 379506693 650076633 116886643 237915129 364740614 869018373 571370580 731708791 328796772 714422430 181879472 423230312 919038338 934259469 323725085 606675083 589517678 967902694 839157416 840780737 229761538 875483180 841690069 900449860 65598897 108396349 974163226 989104682 922174331 931337871 79000253 696351727 587608799 958511471 930549108 939124722 238360608 312291674 277840437 924662033 932985295 971021393 95511395 802016533 324372553 502562243 269410206 915170537 96758028 682527117 621957742 827193095 740502669 917483646 878934735 935306034 702326350 833986225 322990787 491223903 892653659 964444633 48084545 742046230 491789340 560256897 936510479 990661931 711935162 936122538 278935093 610300885 147845626 653980937 775301044 801934571 903420548 994129202 554305712 851310458 708443023 917572245 971402789 998976767 862220051 884570839 85409738 348380222 398686224 727456997 568294740 655582062 929309531 972302430 987833917 988608589 603816651 706532988 732010638 916354930 277426260 822708887 735442750 905874228 837132749 966540274 403295559 915855251 151908204 905351065 615375324 726849515 712627405 930853211 604409716 976120461 801012944 985864956 636775716 669951322 19362298 260065589 539738687 979523212 211200872 988618842 903019921 964191325 436775412 589388791 158918233 443153274 266544872 477857996 598730853 700809188 554498732 651630471 162410571 655024921 322712346 858350644 389554070 764926933 403567124 538848035 458391410 884984500 815256151 845479161 271239962 845872518 311040917 452515585 447201971 653235674 221991989 390423789 80183128 470879708 475607695 752601834 491647056 531416369 89811055 113634803 594574145 942477238 13231932 961530994 293700493 441974198 162262299 627055752 522402226 814131369 896549358 904406967 485671044 941923540 493934127 748879591 128931289 721742683 859136381 947547641 679643324 982784538 357605371 357904477 69796867 417591710 795216249 983455500 992933925 998687258 257754881 500088808 169480946 573490933 746240066 840094597 709975916 816926702 578667841 694143475 516243930 531765938 575599298 940237652 664680812 671494701 43173257 511305313 357874211 769193388 167005637 727717929 459361287 618768449 182058623 739452318 379818874 734555073 173504771 342839054 379638501 829102001 406008158 507045214 527246471 583699120 713944197 836812093 658138914 791647188 226420372 946190384 215187290 360496531 691044645 850046674 797841541 860691856 861561799 976248124 733997824 853953743 84068052 536470825 134618290 393449707 63149815 255732404 421490371 812794469 552986519 928130115 542813959 554369348 456757051 524494956 670296306 914962116 803758207 939146123 39359994 355735125 601291947 908410153 87181765 592445778 56848691 272255129 94929334 634277124 54353710 162019625 604529770 871997400 332763263 482165031 537072330 880077162 333473104 402041083 33904180 615405497 851827993 972483772 164797209 406420299 981046248 997247650 954233973 976384426 106087947 675794435 318697472 811208755 705699429 744176025 787599845 800801109 711929381 848063007 712763737 799452611 308011101 653056836 230440713 826121386 748242947 826173414 338686432 546324019 417717084 779159731 897414134 951718934 601149438 696571275 821189685 994818240 671221529 891446427 333059225 391840404 907318489 970436971 925031252 989671468 575782540 736084956 494128289 801680201 517044012 964491373 739297450 995425900 253679828 494531584 335637482 344194663 71810901 601313438 136823463 981692483 837519834 982061938 240072865 364115473 830134417 894730513 378672732 573500323 272886294 620995158 446949451 982761594 953166768 959268646 141896188 189085543 411807355 971776274 200423445 729603856 210525340 455229491 620724616 973026902 105702031 929387685 837663179 907998621 805070251 880479411 767923621 991702541 970924934 971315691 494846106 833421725 417701407 862220039 254080662 741291561 760322368 852230952 468337071 551894680 20181924 147918866 62802668 183551775 599528278 991182553 25804384 387163920 863550821 937709613 478815228 595884387 466314560 742740961 47763618 708304136 797569104 963567045 718994096 960085826 425162493 563233516 798790398 928572207 645359976 766533854 941608512 961201462 422591427 423835761 464778432 897471020 988921163 989862349 489370445 504225060 644215723 761561537 857003520 884463436 785679614 850747056 172012856 804953269 224093089 598940722 325562888 761823874 681851162 898341450 348669273 386285873 215969198 446058146 291041390 834308552 546238918 949783493 639683147 663519531 801967011 802010511 156216373 343398927 827368644 881312168 266534699 513435710 362986627 683511375 974729515 985770727 43015904 719594315 196339920 248896891 812205515 825815869 143958746 602318456 351844775 907549707 447530856 877927963 959333008 978298107 815965845 891997319 846409106 927385111 56786432 717447268 910933034 958321776 454034526 756460621 806769286 984948882 36199651 646836395 914763423 953140870 950014456 970271041 532477908 536732357 272929753 454686554 851855494 936643333 109553921 177476058 508976243 737877210 638611911 837471896 332689349 550888177 73436934 596573128 500645692 573579832 747747815 783083395 649054996 982461590 402537667 639999549 189744603 267816632 928363349 985422475 179362710 526286705 302880310 872093377 933800772 998650483 390426860 392095083 492975742 697507407 64183912 473435102 334037854 842929935 397856498 881722405 983804016 989490626 626664853 661803363 886182290 888438249 394198573 746088093 918501661 962643814 404468542 547505545 141895760 707564817 218596800 570037127 482838766 654378127 474682969 928100752 580041674 833031547 329457060 506163155 161303293 406213111 43842200 483820157 569155868 929460425 204125826 656595769 1106445 277112121 615841518 808547209 610723645 896578625 788989219 799102507 541191820 821004296 485372478 512719872 587968289 754150800 189207731 535943420 750112399 930964186 473106328 676106424 833826126 933680285 494435515 573353124 808010917 862832239 269184660 328190831 688305904 784969398 124270908 723260596 78954047 303329259 898641040 972801959 649291299 830109862 418922117 744927212 716561259 904405068 218922147 368663361 350798288 660144959 83037344 140166977 605342485 698240743 627362462 662446199 407200390 956019859 632979569 940962650 123218891 898475668 718038878 813204083 858465340 980093736 82025577 975008422 157205930 233202699 727019004 763934797 310411891 987049344 352120321 836309339 50474041 303323184 772117966 818985685 334036760 580367054 956518298 988281999 742951358 907267930 727060714 972677556 828142282 949485266 652027824 734560871 315525377 466873650 184481741 407355148 276060137 738307325 847846894 950041178 608557959 804868426 358316908 412536548 323530948 523542656 911750440 926387088 863879206 917789039 49174532 314841499 670774649 865438552 560305005 968133063 733038006 774295301 322810869 843135842 629539722 992393782 458333213 730321398 325983681 418338099 167952518 847502438 222432444 347665154 626799168 738917368 466903062 607731115 66967673 626019043 872994963 931314255 706088634 801845499 847033918 869126196 976685906 986045280 497966523 776230773 939637515 995317469 285190837 942467348 758072131 973586469 856591332 931346697 72465480 887928045 79757672 580480158 919603789 990945711 825376716 900668415 377458553 612131736 810058 90924353 528037115 807501217 725079034 909007733 800597738 938827741 957834955 968564237 244367557 432100093 743297105 828493263 219593746 284140160 618469284 906688273 469309089 917631232 249833239 911375859 330455999 877225102 748710726 757894067 150563067 759934624 71388984 408082220 206024643 987019111 808622832 907891876 142406466 175161083 145845101 675570493 480232370 962693253 470727239 491548745 82758494 428051867 656165604 891520402 972412998 982778371 766625898 935015693 16821167 814906658 858914247 913095191 542746669 606941127 264623764 562691536 622075064 683396357 369589828 466171879 239803146 491887546 118316032 333184314 547958904 956814663 498317564 845761437 542727832 566414387 349229602 457325571 309293333 641891129 434495033 510225089 805955487 950967373 972442578 974161457 371807713 950796157 859001789 898859067 338112975 435557825 714974364 862552061 61846406 611946870 565509363 758189044 514309038 729063609 688181185 743011740 474797269 733364947 703290115 734658080 115458790 684100672 256771047 302146885 51144901 587255847 977122668 997857089 557111382 708681356 284130507 329884385 418917767 875212948 965002569 985329286 773543114 954988537 743131001 799412863 926001184 976365824 847667999 965358268 812485873 935779688 669413023 829980613 892740637 993159949 462475130 793783041 853133985 930091290 329591806 650235492 817156878 881744639 390626803 420051316 992337104 994796454 458331836 885730306 167379448 296332420 82783902 697185613 352858749 529353213 102863444 859700131 854546369 879371911 315037597 459833482 421925206 850696115 905479525 981049368 201907345 204922718 270998254 987613956 514183119 873252257 970540643 997226767 650321141 774958627 456471975 901645484 451579849 549606480 831970747 926034058 33163014 507947190 250288681 274715475 226423684 552555483 365204597 856119569 266272130 881872321 538894373 812043713 906458579 975576042 655450926 846189405 375415846 655404906 923535156 964193856 29325197 500509470 583907753 787543710 910308849 975729572 594826815 874665132 912805753 941704173 551431789 668585665 12619169 148056708 937536565 964736578 122534102 492915910 445442983 976850192 352887329 442993760 747581665 787795404 596999670 903365523 653067144 876623963 874478419 991695185 642730229 949465217 162787288 844591307 573549647 732943768 756129966 844763320 566735266 647093271 339546839 623056340 632916758 808210211 592801717 925751564 215576753 860315284 553638642 604875039 154584331 637106398 790022249 980526082 462547252 903829082 757660404 833686222 230987351 733756066 76646073 478028898 341330329 542976537 510323751 872736828 331584780 530413419 76940054 518041509 757592773 908354523 876072165 989680804 659902244 700188985 504611662 947964735 3636151 273361974 341336396 571193734 535307730 535531947 260720727 647412637 537089831 759726807 846966691 977487651 271220395 718930098 409381316 698374495 918790959 992418916 468259672 894110905 341791714 391188967 69286463 897039565 25600394 879543125 180611037 817126479 149686077 199498529 764845513 836514679 456883741 491407564 421948374 930398032 122451217 823343283 467085125 961598963 422852003 839989401 349984861 529799694 205734578 397855924 705428713 806446869 585520644 887565948 351284773 720836067 453062735 860709305 175909589 959151623 336646675 921655270 864658745 975654409 630493423 992238960 453906998 531244112 322891762 950465290 352187559 789811804 600980869 948719000 649610406 994470040 452381747 871081287 203078979 440723380 599192655 689848256 566020168 754130011 448350433 628743957 155271767 290601547 616877576 753366136 590649394 973972423 987249922 993569028 629946951 645377631 991915418 994737573 262419946 878674386 738764101 979241145 785634906 872935774 25472632 345552871 374362127 708745694 434586752 802807947 20859584 944406466 684604100 966181291 611722018 696997225 155737553 925476482 418218314 453677984 467130362 999016061 316142699 913058756 379500820 727417028 398244538 585058192 562536459 913386520 888109260 935869373 327647040 552953263 50844048 488082341 763738051 840363397 432181721 797265432 247074236 681627701 423476188 845257946 6920491 652828155 693322280 738143837 73277963 951758913 446841189 769772865 324812312 622248407 123721146 471338379 652752246 870089591 788901932 884133043 218157172 312449991 713828762 905655837 459336959 636267204 211904847 511095106 757063352 867086672 833997121 958100404 957206370 970804257 154095903 988853530 322882631 560808259 464083676 842315748 238634650 808128929 326340182 978559693 583090657 777279519 790536032 910523359 843816167 864932894 366658354 963917327 718646528 831017345 937392069 983785436 917193131 946895231 173195892 875119450 388669723 914319672 78195245 93716999 588673600 839064313 733422699 801980483 143591338 197157141 400615747 480296199 733683569 821176577 403852829 802252871 451899292 517103614 190461017 921395734 73902170 640843848 469321096 899219100 840512803 914017824 287618282 841498167 761626268 987997998 730728927 894230627 694377787 912069156 701359546 778612604 989239453 991675538 453961905 656971196 736352949 906344492 54051744 376115145 355862384 450507818 136422038 505159730 361397713 468924388 415764878 750903045 694492790 782348626 841125784 969518773 108646706 675528780 453132100 991577721 315457284 878009549 23395591 588109251 393498315 749898612 172872875 685144378 733357659 852462252 615979164 643077888 194348342 592842159 892985998 980095072 521257089 589105703 508395517 624331413 116587845 343062585 568967431 971351088 727466922 767360718 999364888 999372649 272041960 973927020 110353234 568743715 374976999 472193243 584193701 937171191 64994014 228365908 562671330 580045230 887303004 913517593 992193852 993002697 628090303 973260197 568152850 937880148 833560393 889848118 118207274 164106704 351281549 621919066 504210790 989915006 706529171 985626382 820223820 946553296 745227033 936051721 237683452 718945548 433366260 550198410 9356186 499594211 837286627 964932843 586710014 634581942 474040595 729023103 571215545 571719808 460297846 782546387 626370896 745897224 883564111 898543749 252638439 469781853 484510940 489081683 717343391 783262788 834133269 904736603 80883648 993429847 151153762 911840090 504522399 626512927 216319445 296968898 828391660 928726065 698585405 785118907 407063740 760895374 518779701 858417494 404294046 957331591 847034050 861023282 20513859 655666634 327421750 529563496 644746941 772118426 348834758 500078289 390056701 550036065 557014553 647409113 329855081 686731685 896547099 994989351 631890974 888497470 609523350 972396184 635283784 750550365 829552649 843691967 610851683 671076464 267559126 919186235 691169119 954670797 543749444 914812375 850089208 850567636 887821538 892541233 57033432 808728672 547973946 990399770 322143176 699053461 711545902 714866899 660878172 752968708 537052925 595730100 688851629 925321361 282787304 357806410 620228946 998987128 350311758 472628878 744418174 920849773 226477691 475588658 293403732 686125200 59031426 717330149 538958498 977308273 920761703 984202715 922841017 979647169 839332446 975953201 327290158 378542481 257743797 454538859 855824620 945456564 167609653 280891101 121426948 769415045 605296821 607034632 161584511 179761167 735353788 811180348 413956997 422068912 175313812 224131434 408452787 836574733 977451060 978335456 829461706 832039628 642635379 668513622 260176479 825589841 419175022 974073225 84882986 242512275 970070027 974480965 180107589 783617600 732773033 791320546 952355819 965636861 623310007 811918297 905529800 930993719 779235678 891018092 50536308 856746663 128625231 651082408 884780391 968403713 665171349 908821119 980826967 985898434 864719437 888304580 264548126 992098809 94028475 374701809 369568782 957045568 667881749 912062053 78801869 135142986 352960671 670857100 966114399 996094695 173548046 998135115 414188576 823263165 425281018 931825417 551983191 866713710 141580589 424151763 394007343 538124959 747350925 866857154 986586557 993157538 656009396 959941554 869729004 917088453 129463506 189674277 330210334 690299576 541648786 561262158 312897461 461961391 136716920 855688889 426900358 949279753 143123467 369871184 610856889 793323468 432704542 731252508 554987242 934909821 538156974 763874357 545732279 643900898 626809564 933254812 191515319 963037953 121148208 676563734 509217157 733837570 30777342 617767076 735633086 746382924 552803811 914722451 186709773 317784843 905255107 950811922 334572841 529898511 60516375 877717164 136893604 248608874 801497652 844157730 901377643 980639499 59976264 936161919 349826339 380770117 445779139 672312938 366078861 493622994 197140878 336109905 657624704 896845059 55006462 454171353 670015336 839541792 301918844 980699912 610439338 979234049 712409630 881163742 287249878 438870542 668532970 851361784 441234710 925146848 912229738 920582162 463264268 636310850 96468872 365019367 200390116 269732282 421357378 935934582 839872982 926683029 423206259 684346833 973641200 974633679 560376260 586753430 675466803 739527069 184980632 922603060 38557643 128801285 906855643 951231723 708397256 731085878 704785932 973952341 399438432 881104777 850199072 912750878 142552926 392523859 807830866 988487173 323809364 945309154 572636241 810514389 187110239 206688037 753226314 997288664 735424828 860818813 293575699 685870234 756936020 949192741 495717513 724080104 104434231 182734800 443776612 680492631 556648095 974835222 378118390 840953839 260080600 383985657 278519135 727302434 950837303 974511113 365578595 834519402 553190791 783162770 701278040 887976638 392283271 561290311 644508915 866168827 890214612 923445326 773422326 790088761 988703818 991689548 786236414 807407904 241982822 851105177 731969858 837070551 587183917 801823326 157946909 421531482 714645815 943466165 615603170 949091554 47219744 788703910 630637590 936543838 490064606 836961238 340075592 472403957 262768918 625382592 947913745 995292389 318044513 482645289 315829957 592836866 947810653 965402350 776759019 844737676 523533761 679602584 541471821 936146125 224326584 294782451 568084313 894896509 112132188 684869628 626368907 878338341 251549347 323680710 19869667 144133053 516005700 956068127 682458884 802542787 439813371 775089056 400266116 758491354 158342280 470990590 787851266 907563924 337951991 692742697 594780142 957333777 584080479 632739502 977432397 988811680 43379613 828698689 954218317 958109146 688175529 921603107 265745437 579519243 504355980 961784514 944034355 954623775 602571601 872998337 849107541 853376494 159968123 481520143 535655561 581549186 580700435 617663811 79566474 901717970 270894551 625776225 619995889 925310116 904230786 948154738 182067321 323208936 382746554 604281929 575138708 668740436 479509551 913985196 407622087 591723389 968627818 978307074 539480189 650072314 941207040 978226468 331110010 847606933 128484736 338629895 956143797 975506071 871906318 932447137 732533482 872430919 848294943 995299434 266743211 940852545 719072184 842824218 983013264 995378964 288486253 632036106 13756492 853601331 562657792 982007173 763501817 972447615 6039963 918543675 556891144 984681434 234414886 433092948 589247056 687196393 305552289 739536965 695701007 832892676 79281756 696916001 335328678 900486789 919799680 930281984 87060017 676992847 611690898 690318869 21370464 570326277 441130222 846452125 326134589 421267183 503201870 686783326 809879083 862865080 700392447 866305303 703576961 888048366 889877157 934765113 529564718 727657718 795067907 824276932 684241316 703101675 292717682 742661433 680901882 822484806 303777430 640523759 866150597 949110053 233088924 396389289 411186559 741026802 67415291 416198918 727194683 904563966 828032511 956656453 278022915 606074179 358342479 940653582 752809839 826789140 467145952 618724229 838244213 850002145 939695835 970119859 563686632 639644744 333750269 960671717 920862146 964608681 809961325 848217725 201252474 276169354 754373027 822940131 984273796 989984452 413382893 968426933 646726631 743580331 757451566 853926629 347789331 377499442 278741265 296996583 502318269 759001268 638866711 853692083 918311410 939412531 821165635 953619471 232010663 445524285 118785025 349410030 226487796 359515987 820859902 868728948 656053116 943379976 258190763 435581822 796062801 873621054 355179108 943856653 606446100 635637506 942254353 982452430 178384515 616707593 821998929 920925543 528975118 900592192 774112171 922112561 236701364 826193184 208669202 284653981 731325377 861071570 27784498 430238306 978006214 999151971 695002246 977252159 294022311 857663106 363043382 781651652 875180458 973439057 676496811 743803697 637895940 937715122 3207959 395198066 694383077 888124251 493156839 875357483 761194996 887605709 986984859 995151992 3932334 517732853 428969126 437316870 798689682 959820405 829545135 906938765 626210802 931281760 255292954 579055997 151923391 804464964 204553036 896778693 651710533 707948377 226389093 971008581 689134131 969419673 318349413 469272780 987202479 994118796 437481709 917123968 417656222 691479775 410144235 815458251 879548981 940899280 208263744 992703137 538136314 636156823 277053613 990182756 436894641 949137157 56082373 922241885 281959091 605526965 86857458 454038938 645912160 676111067 608449782 678210273 746401141 795468482 418096127 713316857 464261116 905100809 248160655 987678580 520435415 814177240 702244152 978177065 213145428 824544893 62881033 578740078 714712222 846499624 110340507 991050628 536614225 869887116 108675194 567465791 299762552 851461942 899175627 980079680 80125538 250171566 318707357 894741741 78879495 648377418 657567808 673236960 583224311 590634963 149414528 303154449 418864064 641498267 38027827 967847223 258568209 786415282 267019553 582621811 606149737 926604793 69814246 808035244 753328934 910998212 453935711 834446664 568103750 750029913 884171458 891460730 599759369 840561220 322252401 475325056 252014 653517496 361978083 365804536 949332897 950326142 934512089 971023530 803692435 846934701 843578073 981293327 261534921 686327231 415396575 985702865 178880408 369929095 465442379 616862056 363488316 726270308 824881029 884330737 259909253 418808197 446310753 684658175 933186202 956244492 1827618 898899921 965663108 997145747 729962824 950289794 179416554 616195010 577363967 828820376 160225336 907106539 395228487 712694994 184968438 377324956 300282403 327943016 432902740 569121042 921884476 966044746 56256175 247449197 495922119 937412143 313017557 985243640 608025769 624553394 720046020 941893757 673269459 748740225 578637801 685480257 194657741 210952759 172232922 809831601 130260414 484078498 492747289 780747185 307221962 615913794 500555648 806057707 170581797 839200257 280423076 806763790 451539679 826888073 547379453 763493705 576292 460821565 1238189 209388092 171042662 191463345 68636608 423586261 474898934 774918076 375739745 830079126 245024867 561393389 393848013 516228742 611625381 643256617 971012567 984114241 976329646 988654258 320434168 557996838 220597920 806851096 777874880 997776494 169342099 985526602 87056182 810755317 835031689 913258257 613761719 822193684 416005032 421126956 23920871 907316731 733832926 856610354 234957568 312953460 112902745 688786671 547837557 849374552 227550980 355859577 612832146 970960325 77464109 326261473 176175372 843533641 539768884 847206294 775943238 834815524 412451291 630267801 274336967 548505336 467507824 761743833 214533671 993077591 70478688 883545749 385463527 634012159 324662870 503723345 715731556 962581235 35838315 630471239 778500363 792844033 448716880 515634019 895963475 928702552 642192415 902458529 31880228 941667731 549031204 737036370 274492818 458498920 541098485 814761470 898989119 993666504 827398759 906844698 206631338 840584459 176767735 609598757 2382483 404713767 250967156 308248000 998677392 998765870 478328791 505457294 56462264 607104582 353535308 743213965 597514042 830052806 638361077 699171638 116933024 711003847 355553661 945095950 479065036 964509465 515921705 656734061 16965187 765015269 88518355 102507413 588815505 679439877 740724559 887428880 835172147 851556188 463557038 783457431 268609461 543198173 901038227 975130511 706681262 755186811 575561833 837759544 882064009 992733595 536587103 858300616 440032988 961364839 844169254 971581511 451220574 824086495 163782208 282389949 431613105 606099330 815718929 841716300 989908021 998279344 555829771 967069991 226533215 955319805 268463312 625824886 807350758 839638581 821113512 951377670 661504467 703206168 409930112 899617667 256544336 332906267 896127756 995661944 719873559 886598500 606518182 995858413 367145992 501417351 990966082 998884307 984388983 994824021 633970042 880664175 773939352 851290593 632928330 739957722 646372321 803146462 584268881 691289661 177297842 743809223 518608807 883372881 763301038 976536834 552105322 662787701 330590597 453233987 177594773 763263591 812397532 851663742 205028366 382790460 606874739 757952944 141390441 267248442 565517968 859265553 914954753 937880998 4822697 669504709 688282450 782664105 71152502 961956366 338466948 625738524 125890403 207742856 16860033 403424883 704114587 913999231 789368094 980154718 286808583 697554622 970482072 981059108 672567780 711230662 668315730 813278065 213600554 614349366 967995455 982878370 905448351 994033245 594146440 897492851 72426086 594950683 392909716 396715843 702371581 769988933 592652082 768918204 868637253 940513318 752573850 992253664 648944532 711805280 610001260 933386024 416261985 997002392 7956568 887598969 667118864 971352471 521796481 856643114 941822260 962845646 871470091 934084633 319866647 734564011 198380326 753794077 332153044 784938035 403857245 483541146 470646322 909606974 939890428 959436921 824690863 828210494 493642009 733681872 673500652 793061948 21445919 363090028 114504625 640216030 554366403 701191444 313709913 899096901 378342902 842845137 171126495 318539394 608685839 704314397 445298504 569969271 767710555 860240857 666348136 892825670 263634813 522791665 356485337 680627670 125563824 523895663 456653301 770356702 438935504 883417930 411688023 938706863 260693528 918676089 251190958 285440196 57219263 232073422 148372970 799062789 819729273 929541193 434780437 576915846 615025808 785031986 512401754 988946673 518385088 879411394 781162623 814629790 200781264 729355539 304558783 998275084 834759441 938449015 464950374 797283587 530288299 552363195 717539171 908108522 361394388 387044313 692484892 703802113 172864237 861666220 726382268 962891608 548611020 909377886 229128473 472137533 921199287 940666976 149401659 816375626 288819028 687215039 515765162 729668059 872610617 933976183 757573676 860144551 556721803 793152272 870145788 983567585 664405326 709669837 734735228 942417907 130624914 799504843 979972822 984041271 637352184 889488931 364500669 636881135 383007038 678706948 582839156 873996775 254601173 733487206 624531486 994105259 46042436 405520322 853199298 976636192 691135658 791642605 267952211 476749005 235652357 312946788 92126161 618717842 798239862 889677252 954634425 976103305 953367875 988602807 337257314 389087779 794844069 814040172 854629694 857465469 99162376 526271123 894165969 907525005 580587178 830677195 560531305 781604742 476265364 733561820 273705517 329952897 824791805 889806580 256931964 281390871 792594951 840116437 717080345 842098575 389287258 521522332 659067542 972185230 10960060 511608997 827951759 909060970 813627139 856229929 266757335 746419714 310520927 454255783 881625746 888998138 29123484 764990895 124003472 917273241 145137901 901675597 683876926 800958058 74112725 108631289 777086841 896094486 929931921 995188505 421562167 735980007 35371250 855991870 219729641 590630777 40488576 614820190 165210633 864001099 753749469 976285727 948002671 977786403 178354879 661647263 899202679 992219811 960076038 984715995 331729447 890022474 465338682 500593890 319854564 369063964 547156647 927316759 517153186 838006064 663225222 835923567 549485557 822589083 602873889 879242821 72457868 599732409 736643487 851235697 297078914 533335764 128259383 133029448 805927836 874691224 956464900 989223836 84114155 584994924 708315065 818691458 925947980 942518579 184761586 711450033 166202146 612397446 843985464 931668513 568050901 701499265 429611786 486422071 562070389 717714998 876654491 943427624 114649898 846581087 215489897 976478229 602602362 820846907 971694246 983266565 722502497 949647175 888153375 999038771 171564392 897687092 815840078 963880025 815653803 839228428 687764876 893334280 730818212 769680700 835097719 965107176 680442140 904502497 354210218 699209672 773487721 792371751 340080983 916796370 656479177 684823605 115897325 521432917 993005407 997862467 227109719 313244292 671086480 697302893 213150150 802892550 591138580 758976470 47065036 972696301 929647704 988618375 42626352 195433809 283646207 355873403 19074724 708479829 460069048 568244306 155396327 175901360 695580578 943015201 156790341 281851956 739397949 883402674 63757682 443459536 229407907 405082509 632708444 820874153 740822040 942157769 532731487 873908067 18043276 213543297 731237930 906391125 312733333 901414145 117304364 403295313 976261763 994631364 488942968 835611769 203228364 636471667 578769098 684888928 2226077 520103004 576385409 607124597 337619185 500885911 681287922 693351346 204968782 447172197 506450002 799281813 679920761 686978693 383999621 505687372 169017091 211310588 156198219 329215119 469116962 812771757 990201458 997143435 289120774 578904524 106191148 220298809 783921128 792945115 842308548 915233875 482847800 976637235 905583679 925039474 823468434 824657514 249112627 985453583 420383854 861260676 340546399 917893342 234380432 977059019 118838351 524036987 648442727 858134566 299292330 659845522 210849338 997572586 52615642 453647113 506341946 657478110 679897244 919789053 983225522 993242239 276979208 293182492 529652170 877988944 502301558 839943980 819152022 848214991 464969260 567236413 499161279 612888956 416019487 902335178 821374598 855529984 828293708 943218134 534565929 727021006 386346885 906403617 497966183 651581418 467244406 988130442 66208447 489895733 132037268 670942249 874724158 920256801 287322858 720429293 974886334 984048400 444018739 749879422 917660613 950915331 75158681 502647689 896740670 942105168 395165641 747782817 217012258 846071180 188840630 271194634 558378034 931492065 843407085 960058503 648886897 736874095 351165421 889476801 287175148 300354528 578741356 785529514 77583909 496875079 904912986 958208803 408409320 688314470 821068938 951136006 711598334 809391391 449343621 920918858 990519539 991463615 172277202 933011069 673954449 869082625 511942071 817395769 969607492 990674364 301349954 330411521 104131610 790628744 818910061 970949317 601215828 866227209 408945612 842669808 784580108 889942940 674467746 827708669 751430650 792672521 932623434 983827495 801887114 808601914 714483922 714746671 661353298 740842295 435719695 673992488 619778772 918512155 702855558 747651468 216910771 549806616 28819405 192088830 145285613 410890839 963310381 973037084 812450051 941880124 784855708 825301303 814691165 960093006 853140902 913526259 66454063 445927554 676366565 707530917 785389508 951878663 757141647 948331617 201866615 541819101 832093935 837519894 296572970 323650272 319352570 648417144 705264141 982436012 719900641 761446036 664829823 837089828 842370225 931579899 139618480 200662613 96364087 652061750 626006215 795125043 617882740 844364441 774624682 888013825 735691819 911320752 361030295 711928838 269779771 924755139 782866009 951571986 994310226 994435424 396616863 939951156 345183889 554367252 590080233 902931200 721460301 742650348 111623907 363107087 680166270 745319440 513801357 757502871 364286435 731091309 354859066 393240000 831958856 954914307 335763287 365837314 170914312 942077051 562028320 956274659 104133743 481933660 933998412 968647651 361854201 509408309 191869227 266364911 851479522 884267870 694101977 712019800 842468905 922342981 997442512 998351530 782806639 883526615 744586265 896509269 8349304 480276426 259637173 638832102 872963192 892847140 521141582 706088930 563812015 957577035 810366328 960270508 896515065 902504939 696028088 828978428 324755682 459412966 144862929 851051894 718034376 835342779 586840814 728712998 411720887 832861758 19376574 410403509 412774633 440873783 798741531 921298466 860799896 998690640 426289728 964654534 44572080 272023202 321405133 721076423 450191421 811337145 138474191 784252074 737006656 963795714 693661754 875068992 712213899 910296520 934277090 982914623 971741524 983033397 598422680 849692359 67125103 886732343 137190997 676905953 45872090 206794665 352960554 941255200 677513521 823082494 93367424 193030777 940425253 971996895 251783990 873143883 195596275 638552934 376151863 643790107 644692900 880708515 955125233 955891349 906764283 915580090 576445326 595298587 319452379 967588474 206823819 581944488 210087824 862007601 258484446 560770519 881993475 954949141 831359373 958831652 25191176 273920413 446318000 802944407 662334501 977257553 379291353 751801890 411356058 708918764 252569986 345563599 518422492 697529287 704215073 717128109 602277956 653909102 868824753 888554722 733781057 976144185 248958837 806213683 819534034 968712379 424259040 938660295 689358481 970719849 557256517 876939966 700927589 790724539 720715833 965823742 248871146 409359952 627119630 839377457 188401956 270487781 327325743 927702920 531938718 580950815 622930865 682411711 304334838 893524713 585700504 603551201 167923804 569663589 988278332 996499213 187227127 886265036 190006353 327019487 65192148 744295959 157170480 675324901 185413504 390606965 53707489 297459747 554103285 589387225 270183006 552226977 73122224 305049908 530200975 865007394 860541541 991364769 143728053 284108427 283814887 700275797 939264569 940175698 832497017 941558888 643588358 811775025 680741944 686800307 527289502 741419167 890550372 970607599 566678756 901868247 738934763 764274975 47088824 867424198 871216676 900191674 992789694 993315154 706370337 710122005 453613479 892776096 432295773 836870014 932200529 962910869 682972503 686271272 25216460 104891522 291936551 343086806 814793061 905864178 22373854 966502236 166054454 569059832 158343143 413441872 84048292 643322628 627785162 688778149 327146765 858875248 272101913 387233643 838294066 898656564 589921424 966388384 147553695 911094012 754047052 975666871 912948378 988593587 589295902 632237677 465550020 771896278 949585620 993055760 61103977 959539400 566619984 814883040 406780538 466039975 805220490 947462892 486975435 812765001 508619824 961857856 522252620 592143536 738218656 826001073 216189313 418702595 416707742 470246788 241981661 310211444 567424692 820516529 311699590 866047753 3682722 300116905 802109135 967413595 69397946 536048444 213463264 228963282 736078833 984425196 333370444 801440728 980532900 994338318 404403931 932624072 772543774 863627886 264780872 428213427 510369897 916760965 582304066 991148985 974349348 988617598 128334283 866694257 848809764 865100474 750823469 768781907 107116856 876723984 313496965 558217886 210559943 317975638 406913683 677297207 184641944 387334149 37919522 764087922 84542765 552333799 142839801 920429155 831306198 920519296 658819233 693361208 774515238 801924235 402272825 680855717 108450429 692585117 964646008 984740994 538732102 601209558 731865683 756516745 764039260 790529757 269220536 524549714 202908153 984295659 230976986 520177701 968344564 975676041 527044464 624494922 411861593 754097189 697643276 726480170 666128141 964061946 932098870 968224393 168325394 228642822 501156327 975537332 469049221 852458109 758481642 911842532 97371256 896901547 282284634 410716429 737118803 867467533 573292320 691931907 648785607 938514436 476330082 834709368 808904060 813605356 75433374 110738138 320562590 466877172 552489654 972302731 998691398 999002577 248189487 689272282 829331708 957882722 656447522 758119091 907890825 954830915 342084317 532866496 641185538 690341288 789216842 802206518 278225927 753412879 304565312 482557547 538339167 543906376 124195678 265178782 769193237 908241880 315118245 756626852 133167418 551291375 946753542 995199237 449925865 997689160 18681919 367477726 974763321 976362677 433521189 485341377 813240053 884361024 546751620 856767295 48736827 360267006 615275364 619227390 875167265 902903192 738564129 868557131 339044163 563345698 729024528 794459441 398863554 614094990 866020756 993212384 792952322 889258372 410909999 626591733 774909783 909951160 842850631 939137793 659736732 805460861 670635138 722983390 216931174 263749995 765742240 837629826 76159787 454806287 739702932 764737720 28267416 530119613 429705390 481983031 625517616 979200176 552664563 771814052 981218281 989590499 536584241 748741882 648082884 772723457 114586029 158895689 487743878 637891401 854358372 989175669 252996203 424686024 290744837 531550444 36159693 588212874 455333802 534521483 242664077 396468966 265695649 936511036 310190613 687345746 660452843 774150062 139234504 932659624 89468802 613407352 661248260 969204741 447034182 825326853 883022174 948180062 248254096 285804327 930218810 991326773 886973837 974427333 813685168 970162422 51348586 871051086 728496790 808087042 307372990 885013993 128260330 913686478 912786440 919679284 675922621 893206084 965603363 976436090 947213156 996658760 321773303 514771273 983547345 997575981 120302758 395556935 616885473 922571322 252292814 651020056 24398324 291338725 389977590 499484200 776053640 796198903 701534363 919772054 602983998 739384946 365135308 669317109 567724584 591011121 260040288 463727954 953539207 957231040 591311018 852442045 48924448 620980031 861626420 888239868 540932919 790586087 24540332 63264125 975497391 991169296 394165138 727298895 798209451 953744922 892797978 959341111 702341943 880277569 900375007 992745115 778184557 953068767 529575129 797440276 780749868 916325285 447191326 817356326 703187939 943400020 676370043 751456701 116333348 241381030 201687362 827104288 235094738 560247186 520853710 567120772 529276547 735543286 485214137 782375978 706851700 835139249 129422862 166315507 540852615 672010333 262987318 528759455 527741516 605825609 778199973 796925626 302173943 578726524 144814353 726250533 600727579 659526076 771174732 815215048 978234290 986926895 682542930 838602634 984123230 987734093 50910887 512657042 414766883 687428436 403866378 517853018 394107637 707059490 625649582 644177442 670111945 703212075 316237433 853340758 588744276 803514598 311382662 980709214 258058435 615085100 308005628 946845467 333475802 366554673 732877393 734063923 252973791 846225279 587668545 627713008 169046544 569846641 932624655 994519835 741845463 744140839 62355019 586243242 836728918 932367683 40169506 503638343 961734903 970106930 632117422 787600652 832303692 924501649 630842631 702425028 619532524 865426540 390431581 759006311 511831488 766214537 233135351 255143981 353333590 412113705 208905206 944177928 257051379 603594313 701591596 924249453 683352585 878160249 483542196 985197614 282945124 963684725 604794517 966341505 313846145 682746290 883046630 967691943 54322203 298737969 168076884 446228845 654357798 937228099 759227285 863510830 401222165 966938105 431198632 491273608 232069631 445879922 69705735 629956056 255853411 879427174 91409664 767340153 335955167 861604238 16739536 481767349 344976570 350750481 147484185 429916878 416271832 458540937 982727580 998521688 134428982 162512506 679707367 905238759 318871629 990018540 370335330 693929593 366499343 926402083 254163588 331064568 999158253 999176509 890296583 960180461 72420885 287859843 937416234 939891627 588727744 592937499 810077091 902626116 370272278 996698029 3651126 18565029 71768924 873773484 288807624 724175633 295192633 723310879 696946096 849807971 97862390 590183222 74080618 582821493 261002971 399184214 364806711 428531480 646971827 771111681 150269224 537581590 886116914 923304199 632452729 824752949 825278240 972229620 486159759 807281839 806062591 953190193 315770620 474648403 835064969 889715774 192145671 499016932 130008878 334438342 828308248 867673562 436692895 875752187 232326131 448536047 257129386 927622145 192094798 260829401 155718877 878789730 462433117 594683826 772923399 790640100 288729207 594666594 10709474 22163901 518361765 927087502 196954809 810236170 666875628 692593065 670694100 846354990 669827057 980160664 779812662 838514247 536651266 711907464 811214680 994167023 149985587 824485515 334359871 693988092 502763862 963200574 591821215 746698458 933093362 961345596 2572536 946385964 174520982 415220948 850170895 921064884 762285018 917141104 897846487 904456078 364941589 757070998 522306275 969895495 418429710 885804096 680694850 992705311 277513001 754606834 824616761 981016395 184372509 188724474 812621881 924882673 315095946 487401236 238346475 999042877 153306250 160261698 408965624 971339902 675166393 947152487 347598041 418274996 162404692 875673713 668141213 995240517 251984626 562086844 980054598 991140646 388720125 921694912 993132637 998463143 287891575 862939603 614219209 694674973 272990098 980864468 408958043 656326889 628830226 844575143 658652445 684999477 542331299 970160303 71182214 809096044 464952826 752111525 698362032 872875832 446025444 764222942 751419667 963380184 439578903 625251236 216079501 766221962 369489664 487547085 672515155 749405254 492705 955521336 339445009 836680639 527260036 796929028 202496562 923660656 483645081 864664410 250381194 366802289 964631973 989440874 749103427 964911271 293278007 424989506 128148991 550569773 508717067 749918125 618283205 724024734 786867238 937168310 404551878 809280232 809648803 820076658 812923973 892890918 47448462 675156852 391939812 552421313 972343672 975682088 406010143 606434640 722086780 823093186 448385867 455057589 544496152 584024100 320703821 703267027 267704967 404593726 224920694 410946962 849071332 917010255 567534682 981061979 677003487 942059016 457215191 466748250 894495496 987886125 239995717 493137298 226117509 432837717 778021497 980880740 749655225 911694412 19053844 369386493 311648363 932722252 968560931 993004861 797669042 997545047 999389834 999391001 295730792 718686012 993845144 998880919 622709058 661378480 954365749 975204540 175693425 392515994 506400187 759258694 122937413 705574571 525351678 827214463 979012248 986999481 173944451 291546916 281357937 440539615 759811353 980435672 573840232 876934971 365753561 871633975 104437573 410010061 754602986 914847360 391933506 428545914 720566834 723930366 343366775 983853766 316556214 710173274 835254052 877616121 139763793 351888406 643740867 799364663 938340530 944077018 237729035 887465377 802533874 916096234 821139086 916889771 312146563 583971458 375340807 967835206 115886659 741237800 34385169 484240378 884963793 980007056 988595221 989500258 782538947 959727956 18273523 534371406 735454796 882053974 678956349 923400720 832644009 840910109 307502390 578168518 833841639 905107125 739638243 871690329 748137131 793558027 910136271 914150210 769654835 929799333 69579273 473178628 586121792 803698739 537192225 586117353 578356866 620902475 881353565 960654232 426281073 491121661 651483653 995997948 834761905 851759456 263255407 720130676 691110967 846504794 966916450 985728895 823662065 837511136 883347027 970329707 690798362 992710418 422038306 629745074 471897188 903749418 549132903 979053218 94360899 111035000 283653838 725925375 935148701 985511534 276349512 547648533 38344120 793890593 156318645 842409652 282201539 435509306 563122171 723642157 288300184 455808878 96371183 406928017 305657077 951059545 378678187 966862551 734896098 950018275 888121615 952394296 66264585 321529965 322508612 392388963 129466265 590034505 370406396 679233351 960677827 975748745 251486146 513137873 63155733 493563693 430819320 453146279 100730532 538429389 112061348 585499092 373774109 534024288 572853534 928734220 882385615 991302483 315559761 334184443 380240899 386881813 186477970 340736735 458528881 903817648 154419109 458311087 489745599 643287246 514520162 606573642 45017802 522532400 472578936 946822979 26052078 158037504 129843139 647221548 154598639 566891412 890608154 910203775 71206679 837527063 888040483 994140068 592906393 753344998 602520576 940365793 550612374 875934114 982188058 984844005 301696891 825393508 159539903 637361085 340181537 953660000 520175076 909117357 800926012 867983584 46364092 803378391 704311594 970592943 689444252 750423932 384757654 579939300 61398279 472275963 846816827 944084734 348901877 639286599 733331277 943748458 338612178 394267176 943922566 995681219 67908697 386996606 509236068 520004546 715270076 805032941 985877722 988462377 112549657 884971719 864278344 961593018 355365807 977942214 527337002 983858104 647546865 950998972 950857926 956504208 924399592 971082912 213969059 711676325 528586013 605692053 742907285 994848781 231603872 400439529 655336521 784410846 5240349 208268508 678476258 720202507 601093770 610081421 432646134 439572661 814971196 928612754 985285026 991716111 402833129 765786219 81887435 455539065 228469120 786512124 338194574 569258382 822406361 914737087 633535191 964538949 577397934 628435063 784251042 829943552 317512131 868926288 203097740 958632177 631913748 857688719 779138847 786293622 721820836 859771006 974236941 976986491 433831667 985235973 347467146 618593084 327530693 739572793 516441183 890145054 725793453 778413984 626933933 751136230 356585092 515598048 424711297 967309397 183868719 983875268 9897649 303979640 255969671 452805440 168198048 762724451 833269377 962214230 113068997 398712256 254111910 640586463 228498586 875094675 614980294 879378688 551249066 809619874 407693304 851009925 660268409 789454542 209932091 309251272 578825450 978922682 722282447 748225684 170502708 203408396 271058829 430076172 373373242 991873495 646830299 883708038 127741628 814446150 460052752 567831880 259293998 844679442 148433044 371800231 891956426 978547477 149477477 701085313 374914455 927566563 12214858 324886723 166282204 445190209 233199698 564525714 304465502 958922020 153121993 283372914 670774438 907827779 588008469 720870548 449746801 941026417 69449119 93139373 460246422 678698911 247139039 731862583 665517581 884655861 307737821 442668838 433839696 439611461 497026337 621972125 872915262 905645491 25426916 583949615 242843652 313254805 973576895 975186517 922824613 947107585 295031061 570752241 16979962 534569104 445973231 914539414 381316695 738799065 546961486 954544714 88204669 652862482 684373133 726919420 319045181 956124966 26530057 511861809 157093882 630863861 90851837 340974407 597329747 928085601 678820149 754550243 468046883 767625201 388325520 558981485 458476382 820368948 121326392 495120243 867680022 882437727 929663990 940590098 312409583 543378738 33186409 285481436 616565798 841466600 721270393 737280169 3965830 477987655 560052042 899327543 937636100 997970037 232746400 620613765 2531643 344514576 732844323 777948216 747071601 801244715 108189098 342016875 223379446 317214088 507344755 825890402 320829360 503383980 271990961 292559120 299535655 873264936 817019906 950250292 440762253 577567387 857520811 869896311 474872468 956141552 614356715 976463125 955992683 985072160 39732020 612071201 751542043 997388727 528494939 727511327 817495406 978382193 473387620 723060435 333945855 585231605 788371683 823079045 838029581 899170961 437845929 690231621 708790103 800042174 725622949 732449607 605785405 945578387 484682951 636977329 936207432 978061092 944418388 963421742 829735089 911165801 102701185 716983336 737409267 784218277 11787053 673382284 302672665 458218649 211486164 550654322 90135034 125018046 935760634 958682753 910112220 965635721 182597337 635956869 309015329 985375917 572487056 833923085 293782634 553097194 844391215 975220991 979167031 982786041 716586696 834270482 13909547 56299098 701860036 980983313 920553782 960500054 539488272 780788910 13197843 762976826 765165653 853396814 458687720 522189503 583119457 596116310 973634693 991924898 340686330 455772580 61067951 94145774 894600057 986069514 404838428 899585642 432178892 586449300 432776545 898324154 538343036 846642821 960970443 968057905 280960410 658453996 668772714 750955306 502215592 563751740 481725073 711666608 980814066 996096252 217640491 670595868 516777570 711643873 23366305 434750978 169762095 904425992 367740194 936169026 309467738 920631652 233760204 826534242 389117205 783182961 60225752 578878545 327000949 389051817 36711481 65067208 625490559 939042637 386539214 798144790 182072170 413393966 417305737 776804060 675201460 871442233 15975455 755749354 924318917 926320770 923298214 976621395 613887475 972555648 26364275 731013872 413949141 955704400 817801044 925213395 820302015 911654747 197035493 568153023 139040793 173385599 316162887 435365587 349773953 772303783 973972997 975377496 796664323 987491356 411850633 967432181 1921891 752240259 438209486 458404530 36652602 378444894 826317143 930086564 656543589 862095840 663480430 953252096 364147309 683040889 162710624 450590331 487756854 619775961 473720164 584423553 256493575 893179648 17304235 138496896 337218664 769262065 188155215 516776410 606816907 769458347 823366144 986827492 734783514 890801175 807852819 955451594 871218490 922606410 663770670 846832560 492997200 713616263 848036879 989287929 590838217 929056046 274450832 768842923 707517860 718155098 208193813 888974087 879539024 990751007 532543737 986616286 272457936 961372347 393608019 868689440 178276358 555278122 412392840 541274274 994467216 995747028 317312340 483203548 344666714 390059378 568333531 658345696 471473764 825596307 723002542 859256189 822085814 891006262 825009668 878978655 602649582 705560133 913280943 967594067 274601980 536964118 842158017 987837883 639006037 916272101 681722807 796013405 531919398 982509609 494458973 902234487 603669775 655123881 380942167 871601489 322606921 962248828 512557939 571727397 102626669 714394045 477523920 694398681 392669079 825142130 194821898 969485705 664276095 864379285 573216449 982524343 392963195 486404476 388852550 512970496 561040118 603375555 725224703 819989524 7468096 697280506 376309988 761314782 605063830 714008780 566696259 882171442 72933144 781925058 980409333 992395845 216380670 874754480 769441624 864462761 286135934 801301800 723283719 912191768 89820276 370607745 599136395 880533686 240814848 862429212 845956769 891351986 64254829 184761040 562779285 666620507 81307793 941769439 42554613 634288639 229948817 534954932 512759312 686226527 78706579 556822838 884335117 926463132 588130517 859574202 426990585 526427150 145987040 249167514 463133433 593304967 982491915 998109646 319320439 784265780 431069184 445254894 230239125 845702979 739406414 794145767 806531893 888547569 567121825 656259620 921494156 934527207 168982644 203861203 569741376 781120245 500474136 975738093 356279972 846890381 712220619 755058521 205047902 639792751 567351748 853959911 993774561 995050813 662067630 849721418 610049475 722057454 896390472 904381121 969335126 970498210 844520372 849365932 309043215 722086198 198477361 961876090 907434001 918435745 396218147 859371374 207181104 493593505 529460628 642929461 551796699 567876126 71045802 232512046 591714887 881720043 489054929 887607136 99899343 953456305 73421562 514812716 296633674 730499183 37223325 430225210 282376519 779096169 21537489 948981397 542669844 979550556 540909554 633369936 119132079 592546419 739616856 819250676 736151020 801870335 446197950 541064823 460051104 689768254 261193949 566713954 560133790 699256983 130123383 405406835 68832140 536857015 103015182 635557259 294847837 764207668 780199143 939764244 698252159 731250210 423750793 511930455 561985421 694482530 189426632 499470443 161172463 503150522 993997995 994951993 641488520 711088619 340466435 874490804 625138469 901014349 163978503 476724442 945487067 995823128 472335883 632552761 193795504 695539057 754484323 974992458 211439438 881940365 325618669 954535764 803091505 854537316 723079926 811967631 595420273 980313449 778935789 792592004 689424053 751557014 693861190 876790696 925030093 986909229 38104799 823241703 919320915 927250462 817652006 913673895 112850990 875372708 554091764 755098254 564418638 707820028 553020396 611919912 705743463 707168915 169668111 211730612 801071508 825790852 324997002 796073234 354476518 640361311 512811345 620775379 330745345 518853825 561792999 682012142 986668176 992719329 550386408 964088582 944553119 960565922 609259700 699988164 61113446 638726047 315929086 580309666 330227434 550598188 34167790 188132533 748707590 805476088 850879942 966412557 284505772 589741007 759980522 801501709 302192956 790825765 214442739 929238866 294001522 709499652 443116405 841814584 655150245 845265748 973506360 975985653 308986894 916581578 814751217 898828419 222981841 685440377 199511275 866624573 328403800 867750876 174545169 488731268 209296473 833610527 315196501 546797731 863878016 869506588 82766656 686365666 561769196 864049057 216944203 666145311 454640735 805728661 188665328 467532109 185499134 515420570 408115769 472349332 550497025 800561856 12787485 432821467 916019170 961003350 319485389 748913095 887650315 899065465 681118700 733838584 573749140 945567792 872982847 953769708 876583622 917648903 932454417 971701943 40946074 454165090 199433000 263859376 414819096 683824935 381586389 989001939 921081543 949259661 767855128 780883763 753609453 928920578 899947086 966952372 761699024 842103651 742188307 809251328 192624083 691121515 427029792 982354144 664889494 810065964 795882999 826308487 586669232 903848025 965749870 972503430 961010074 980925726 978637555 986515643 221604769 370859073 286543725 772171098 15117955 924046634 835781997 922056878 128989670 724831072 324716859 633287980 915171152 938693238 705924133 834839342 399419709 586050989 361825157 467265139 82008665 913251627 258710942 938706082 503745073 881949697 460278926 512445866 574096331 935998169 723157188 969000422 488716918 924556252 589348670 645538498 52276045 472930717 726426940 901518686 908593784 916324769 67900287 969516325 989346586 992099220 451918259 678690880 420963804 955824555 533939011 751096336 498717382 631290883 391890330 704639274 723942198 945842247 24544907 432183556 920516297 939883738 543522896 785836307 163869033 394832235 783878314 983027643 152395540 837077183 983539658 988415235 190060398 824490207 427720547 871080744 577724250 626773263 330571834 475422650 187134924 967762413 982629257 996859170 671072222 907619411 743355832 971473339 839250820 938809021 268097874 836691350 714609908 829314647 593814663 649242679 884424577 936918558 370248350 923708239 652874278 716753085 724584966 913142241 160440339 959014441 38989010 292294922 348590478 857821881 936961493 962701528 678587654 694910478 183530780 301627233 26770753 822325623 423284349 591314894 429761891 714779261 513442793 986995338 184353577 865852285 588295441 850264309 721905892 795241274 714476480 991604167 765624838 901651347 163838502 918185103 404234203 720962265 543504463 658581494 280079895 787879247 905289912 980865386 229690225 949263099 710413920 974028144 649272888 655378785 352592325 434740844 173797628 838727632 902178832 966750217 699864091 774409628 529628770 669230155 296900573 371294557 889469382 893108298 347652070 791899505 331258735 478239201 149579251 837829753 908798339 969104633 625193723 689903490 683000144 815105539 1020560 970735843 500857505 884196784 530915846 753548403 857447144 880327408 981674443 988829043 881234076 881727165 963301406 979637982 151517490 788497450 258606652 379744762 103475755 136339041 430537368 983982706 898859528 924036651 808570280 901678087 419744805 856893376 599176721 882711176 209646887 428104167 264522607 820693175 919232030 952195635 966510106 992177404 505256851 547812495 136336312 388387624 855533150 897202670 624295650 790697920 239959916 432000910 795941781 902179513 438574103 730735918 764021024 900686871 483261668 720696966 341175707 746717003 605463985 673337317 168428070 379170781 992351470 996765561 686810503 766831779 234699483 810776515 913067102 929455743 740385674 846557868 597005314 845954353 817055976 902390890 293798233 621908135 345707070 523837840 935762676 946113765 224463107 955151398 135791563 606875559 863775152 901610903 859119048 984250191 829663779 833683752 425229757 989243592 517584529 772400741 267958452 915069440 513375905 755749859 554003540 683585547 14983979 318533120 533290298 692018339 446636159 828108381 83358674 116221390 678163447 886205193 300149253 979389256 848877112 963791292 357837575 539564001 486039547 576298931 283908271 899361202 346746485 565550357 694669928 943252962 592921702 869397574 906010215 965920891 44003654 309055854 809520678 840553460 97238103 442963626 639170793 766827037 923125618 953731125 33566387 111861122 51866978 542763582 472232989 497405821 365396499 568963505 335690812 810910872 182151813 266227549 89663986 809148707 324934021 818162434 733721944 905216453 729947679 971960993 272006824 827789533 175285136 952053177 670219907 827498686 657284805 912258070 502018951 724725410 25794615 968416154 874437850 936450676 176872310 861678779 708341569 845768582 11770470 480785852 602670760 886920609 438804058 808380911 407843394 582808437 713612296 968003830 568782197 627503909 525242188 799099087 171951760 277521900 947555749 999242814 952915830 976767667 1673721 407156848 175556274 361674333 193477400 818170043 258648767 494840456 476002995 737978994 574378835 674244283 469576126 688224012 785705593 810025616 185244015 576705210 784364569 998699639 514717832 606706816 750455365 792082482 624651926 884211344 449769860 768345042 771982036 827595557 652135663 874438157 409077107 948788958 70154286 535341088 98255205 390996739 518835653 568669042 507720236 839743687 655836303 831365708 596962180 852820676 689305464 896365476 988151085 995412561 342241436 495338126 561650651 707264947 634706370 826087512 445907542 652528995 59346054 639960005 722776262 841409963 802710179 932593805 318319678 915873245 59555811 448675642 847542947 884361235 400923312 582689289 345603783 843732100 910591701 997842146 214774451 931825363 558169027 860146162 290783335 496137175 308452016 759647416 508762078 617725031 23959997 557349850 977053843 985476823 786715098 839124017 424679246 813967779 760847774 838130999 852349186 986698729 885841402 942195241 523518558 863961668 149503506 936845833 802798836 957838451 939829647 997366014 512901049 969221918 962255226 994772875 455223779 537756376 126238497 342036379 168316363 854251327 180001427 336738853 629923867 991533013 109918804 865795836 79758060 642883067 534607073 584241779 223070335 781316276 601991 949603613 839840357 861440606 72352946 952504995 365992865 702736387 303592606 720171127 470242461 759529689 186897905 401354559 290192641 784375113 731419719 869065723 185586308 594538514 494766945 508201315 145031076 313421306 279523188 638919726 952525093 978060022 287391413 603152790 85128830 617813218 79604754 846620558 534538114 767889943 937165429 979386048 183875540 714149630 558765057 966408339 384331807 940278985 233235401 459470737 772563115 975808204 881127498 990419213 116334958 865637472 408880944 957117181 169196874 195803831 241175843 340026989 485583697 757662913 32958491 534380453 530781148 953263152 800153394 949053032 442408285 672635315 743665613 907369228 403850794 504636774 390009532 533649836 191212025 679958302 419757318 625016261 914220261 966452992 510004173 633910941 318163264 508698653 307299996 433591614 157861628 202298971 204580976 322827215 405677941 861424501 364302357 701061909 789292962 916341302 780683729 805497592 98138882 731479598 550835607 830812958 737855638 952912766 553713071 640415708 300589881 365620105 944831514 988722125 879161283 975384965 138141660 243405517 220399357 660176329 341594601 602519660 83722733 411720571 876146000 924380230 975155747 993370363 536022455 841532209 22128747 601648360 10936877 68159908 449114201 776883978 734611363 776628158 838439693 853903014 244236745 324074287 353106875 549026754 617914988 686111847 220056278 506874881 799609755 805353960 630249066 824115600 222529491 816531769 379196301 514160409 284677269 562355972 218618032 329335957 634453498 986051172 907635400 948573173 273135250 635119339 429785946 553986995 843987164 996112297 368253455 946768375 765583367 862960990 614359061 826681948 451552853 616957695 794346874 912755776 655784065 820355545 432035453 594533568 499693348 738543138 105547447 545720124 221768664 875612850 640435005 756116909 616649046 748530361 536674634 791782030 948661260 992834454 317759858 693174551 430907181 517840420 393499710 847591266 96271025 759457296 988985286 994633712 31220771 493709855 489404816 805147210 953021028 993679063 988594840 993545645 579664364 651398644 830523145 920591590 158830530 934784982 272192747 483364344 788797124 965491641 969495703 981996549 776155095 894159464 103725440 999056848 420027269 480764312 456183138 552166960 808259798 966026488 479279877 806084416 663203548 910540438 232528569 626914913 836017903 944340479 211637320 843829573 68373221 835790984 637488083 689317986 401718847 919576104 464775884 497094178 263008711 902025937 908002149 943223418 330642186 866595346 931196700 973049542 45899075 687768123 68319596 933065764 132427164 169313406 543195422 741427135 577173809 891930902 675305266 721212697 846669797 938033547 700446631 856216360 86351653 95835745 386052693 644377240 45761528 455408990 207834224 304129043 277289100 661087744 860753208 951256085 908677100 926250233 839390064 988158606 704314978 890498390 339124177 579095937 549398220 741697172 52605523 881451577 155052345 890638593 386986706 457695138 442441456 599971596 403996365 923942697 533708851 671962389 6486843 673705453 633719294 894259445 783114130 790037549 884037282 940860357 478375283 759107915 166992174 748666801 248736587 886073789 783868842 818758259 725192173 741690584 6136564 829735577 801205335 821278294 812404708 951603756 386054658 991518689 529669113 596931671 218132308 424656752 15282989 356693716 154088936 954256308 900248779 957403868 952197708 957972459 100036801 930123280 147291901 314859590 629085169 935474714 353012567 966629675 476868178 661514126 160826282 759875407 918117401 996941281 799474620 958429693 645194170 756926362 40603940 491230877 703988615 729486746 325995689 877664769 865200004 879668924 345221253 510116865 815406197 998013469 556485246 648500758 424492325 774680623 167926081 240179188 681452890 739050819 562942264 808047456 262146311 969881701 833542432 963577354 216734764 812602483 648522465 780631527 469081046 780113042 712154578 904831797 252139765 935876927 442261362 829779336 609844369 802009748 717863433 945016717 525916467 846049159 935431782 983730491 968610915 986061908 660958415 963205307 340098658 490008088 721723104 843670859 64103082 624787022 30835130 291308357 72841188 552383298 506205293 971660894 623754923 629220132 373154399 792595957 735167201 849046739 849080670 935943899 977910753 978062861 618548788 646134794 243680478 278173817 313488605 324549629 490894305 547799357 160807617 416742248 656485494 739632608 176537443 583550850 17325363 927475320 308605280 355990866 675053241 834845834 376790889 625963166 942662998 949532713 128801925 221510102 758086845 956213119 660483829 842041883 370729557 599431671 225679738 494638696 769562655 973282667 192921990 319448324 897252968 945152015 167189164 753123704 530691555 905530581 209894921 904704782 621243697 918554747 467356542 592631943 724570343 994523142 541680602 555621608 623622891 667275431 864278628 953581195 949971540 972720714 500282062 802316528 761204853 874898492 687860295 978459865 623726271 936832758 536690524 902508991 988930607 992629240 327723782 646563078 166465333 910315475 644824848 763962383 474330867 684515462 49219110 407132934 334440553 844610555 106611933 503101841 669760824 880734865 5133388 697193403 584561237 675351715 101721284 238308957 919844458 941366114 672440666 855791889 462419872 763695122 787903990 818042665 398454298 509549082 432504140 897694639 369988033 776851946 340163687 911858329 817037993 842451005 265644455 512526120 384596997 604682977 970783434 975128023 211610757 598543555 390367471 911124447 234728237 544237062 620865705 786411942 99806962 617610739 588006250 945396334 400638430 620551749 788722988 934099228 415928286 800823606 867952004 967545068 144611098 953975564 909352423 970331828 88051607 994380401 778288348 998353312 76986624 284885341 889349620 998958100 456785935 816985481 10077153 451759206 143597188 706339830 408031265 442123632 33050247 650535090 484922761 500221803 141326311 678953347 683580556 905901801 466296460 631411315 692286066 871598904 447903600 597587459 169601130 987820364 471786900 553800645 30190218 686978477 336402300 373733494 307556148 768394728 769687658 853016780 293206599 727866392 586301360 980056462 619991823 828826114 410270858 774059078 633387470 691922557 673157338 890501557 929628523 939234070 363733378 623794509 531505031 668914474 900416317 981399304 172037630 821683716 381978820 510200860 246327244 821721563 758261493 887358255 322779616 758700628 961759264 962516842 215148299 493302946 413613097 441679999 210932521 814826559 513310168 914219156 558851993 579325810 140031334 522238619 335778968 547281597 970292230 976127102 405348481 977148515 179601625 233466545 782285822 832014865 526351498 842188920 300554777 673359455 196128239 688837158 282663311 708209994 626271858 791729596 517100189 582411999 761551799 978672772 755418608 790569826 74756728 731444411 847825026 946047701 220499410 268166684 665986236 701239716 656208464 916879123 987415851 991181019 73034114 92695621 62875514 628504852 404943061 960098335 901888515 917436232 73830365 135640962 624378319 672577909 810836759 972347838 278707868 904349500 449607806 921933259 855135489 933740675 218455866 501726360 968585361 986892330 174859161 796413625 891083278 901399526 860160515 866364664 593712753 665541374 820808080 845230555 587008682 671636043 124108430 452249717 440399256 815103756 138283274 673454993 838548727 987806702 399946466 534082796 848214105 908523656 931382692 980286690 988451642 994451380 527336065 661378531 966922810 980368978 136475830 916448596 259191062 928577734 598536655 714328844 446135 461000530 623687755 837812119 207728921 970471241 178596879 522359888 980678538 981780490 905320962 997882723 734497599 787740875 233679295 920941026 963329927 987981077 209966096 569622239 456443436 652877786 968391128 986101452 41078460 397819066 458811655 778080640 372417184 815699542 952264628 952423945 676249558 981817165 115056773 118017205 376714615 475488617 488567250 673266275 337170846 417278856 963257149 979344694 347709933 922439064 156273714 891478265 428434266 992774682 238384739 969665165 208067214 358920611 996178513 996896232 903001239 942703969 843168467 902877092 212319167 897259199 476730103 691193122 644003883 760271236 605170388 725226541 241173118 697858848 200974596 943477154 317797922 409695020 194595742 924166361 159663313 673484112 460033388 822436919 983909235 993760268 10986993 775097569 998631644 999188247 661863663 771286240 547977918 819648627 817843824 841896422 552885095 771197704 317137572 606693150 440336905 982346663 475184095 556408947 525535685 893509946 526791088 537548557 879498748 982565567 466328616 612300312 502662217 507340999 27786912 145763505 85693941 541655193 85512231 187844751 372980643 934289896 515640493 604606524 882172287 896027365 26670066 148112711 11159403 628444097 746516405 833011227 376899136 411071033 892367056 930153764 85253403 101803943 908888350 917913875 397148134 559244241 421648007 885731680 389757061 661381933 53222782 651757854 112555259 880295305 467912758 556585098 343101770 487923057 195244886 773435062 76525803 942702830 54245208 511190984 790425209 885437786 892339480 948463245 153052892 358181638 597943132 846366246 671276568 747328834 925395788 949117122 150057522 773065492 644145131 733486760 383163801 446207311 935812211 969839658 901550902 964926416 993840864 998332396 767335306 933301013 577930014 774479963 790602958 951267168 600442062 857078620 676821141 937286986 515631495 980869713 376373003 944405593 256920906 286305042 712516691 733438916 56562965 856283118 879674289 982586005 994124922 994419763 259900032 700949010 723210626 807114703 172541545 764570498 564897840 712986387 912241589 958356507 355571605 734130712 369251914 698444040 875165854 877756777 896398017 968489499 46461166 114590953 816237684 957802982 389148774 922215814 532521293 949357413 395135444 919761100 26497784 662742803 216017977 637868009 44092185 227581572 211043917 869686281 193742047 789262032 953031839 985041583 509204655 838100438 522056140 530115574 679361441 945826363 888503159 936015189 99310943 666671843 81874359 175209546 122328032 587627659 806410761 868368932 939191331 971048251 607108285 734330230 511048311 937212144 82360125 450128406 56019524 939779312 254291399 318780688 684791098 894285227 799240787 870159028 704940370 857258283 865825367 952367454 617006805 797786963 440624203 855628319 261306458 623812895 898564102 996202776 896441896 964685067 812767676 882938176 808338588 810549604 192571107 337589928 593664489 707098883 442280720 853657759 231656028 533414494 893091425 974492606 394005662 447450686 190616189 445909835 4655291 803322630 516685644 556979290 259278090 820684067 252666667 555098160 819145675 901308903 48706306 523269363 575728001 751107032 486142307 610664922 858041109 979737111 558620575 839383424 868141812 952054432 424371180 840715121 830936087 952694479 232036697 960822591 296577606 864572242 20795872 744368584 409126182 424580172 468348123 595781648 667293308 750361314 8752489 516882585 583335881 800979548 861827003 947799888 574099739 609006015 719290147 971467637 360138281 773056359 152493257 819803240 354349640 365839632 947386909 965811656 61495414 367363697 63381742 223497710 184161712 823748705 530288439 550663777 437372131 634734884 17776395 872913462 423483820 925953510 414617012 454865514 605247585 910479331 425470396 675259870 940000756 942993865 18230356 28948068 915854025 925033421 432467928 993799626 500209647 808512361 662433898 896182615 673368567 758211018 537850359 888952134 25410423 926916720 540102268 761340741 416746503 682339580 414826378 563367861 924622800 988297971 752221345 945830949 20001836 331720544 571572969 995163551 25178511 790338006 821396801 960518078 356895725 392086902 821971298 904187578 506470982 510489931 70920551 120470646 450818907 684740202 957143547 985977295 834691112 857413607 683447009 715837757 107541278 979998092 942492973 984281227 435218799 908940978 293363930 971883793 903713233 916377580 966437424 972752808 718688001 946648163 323219549 780186121 221554046 892391677 86844087 442432586 28340637 716729326 218464769 573446263 827399198 827705841 137989218 193730221 634767225 938364006 15325106 628149984 473972133 663156450 826140656 998386904 235085014 627764031 366821558 738547190 531141547 592837381 805001762 806074300 701733946 797561407 149103503 206137798 589610822 617714296 499050552 929338739 253956113 461708243 529174890 751558278 350637837 558937929 150680464 970358308 404609013 602829350 951567352 971291780 661010654 885542797 123641065 318165455 357946607 489613803 814228437 842103603 677042375 700055739 384058141 997208691 672190611 699790529 412312143 467311901 301199775 826694316 495245256 778131276 422638994 809625893 536152659 925617076 248630877 330288618 628210336 880693298 822850410 992726732 626420453 941071368 16656091 639085800 622553311 704603165 772110196 895438536 10374349 798285906 885662981 997413717 895684952 990634340 402843866 838166000 221621966 887357025 927441098 974457984 993258385 993460263 670997896 809776408 159538976 538502394 346744638 496207805 921406135 935865608 776383207 827504061 71809064 656580527 62121296 898132551 474656904 741010242 985280494 993017083 158991447 210216054 860913600 863090462 18027558 544206071 159602638 357133230 163661421 806480905 465271693 534873333 234818587 492780251 3794424 685232536 318532227 318552031 200015778 548718887 716933759 932980791 487384039 790522848 874406111 909595168 507295035 854086257 626306234 738684777 133858658 438340728 626354103 868658167 673227356 785285209 320894276 547505052 392219694 652613557 588877152 659393190 115628679 127056638 545753459 855677724 84145418 791470253 129498514 380888356 452185519 639884791 215413719 343767333 106330245 853938218 982483596 998601575 332306041 766740121 755227711 776127417 733799974 777178397 905458865 921188670 961281335 987037871 734841313 909200092 876331491 888663152 466772701 750361624 74998812 912410792 181802526 774150783 266506613 542826591 436037125 599121595 807658661 839966068 613003370 677239017 336461956 636781644 864503798 935760790 538533154 815970456 13279140 69688180 82986134 936721776 658565753 939954290 100320897 168022306 766722909 915842777 134653611 759171286 662268795 715641984 980644367 983423683 790977343 907266680 396300953 871041971 168661095 491062404 393568038 514685745 376107201 549977579 748339589 992285098 661576842 753935499 220833507 974196736 895481668 928115578 623046366 781354935 175651611 967859481 241284943 310018893 197749655 627623465 350402296 862230566 787469222 823775553 749543158 864453303 618853019 812482572 402193557 863414437 356034564 476629129 751053783 871601598 871722544 964005280 303636210 969086313 203876260 571052152 332068953 752161939 992325168 992445201 771817891 903830249 585674208 776396873 726188530 952923743 924586323 994525617 611973527 979522382 884059423 892355458 714933886 744379855 120339553 995743374 916776993 942719907 217107805 929807878 326341895 812993105 775391457 930716187 651117108 705173427 294495527 725841817 861648159 968863212 93065747 696189518 127821165 220781579 237046158 264362430 427557882 684123459 747471666 893446884 859623185 948615491 823520586 982502613 218102449 297348685 184465719 342632323 766061513 799086243 607277646 984654450 928382484 991788386 304488590 679745920 711356468 860366536 581792777 763736350 590431340 922617671 64971730 870650043 379729791 855388347 242049212 990694895 974957379 982823117 296199626 531840153 945411777 985695606 481771634 611787888 806313003 930468890 306164545 334573776 102655586 776059345 137076956 992380412 216777460 887932204 362053721 829318043 182972786 609774281 207501420 480211582 387758262 725852488 996443229 997015978 978306286 980827827 652331540 717832724 199720069 684980457 682321688 798949064 600878106 772143977 152695743 699098032 127357457 921569739 919985380 993482965 467937511 807267863 242924999 408418038 113143394 383123235 633973226 650948547 44657724 60459254 734396564 873955837 641002006 942971555 710561071 902355503 624732571 660410726 404819450 462007094 725514224 734722496 880599953 897802202 313736331 548186286 535553527 808591277 838400985 903079581 319604795 859588670 124498047 888606226 655502195 910151418 53377234 621821422 353196966 775768582 592544421 944925932 485479076 724144648 247336631 823798395 63791371 192422254 95423734 215763083 594621566 932383148 169486119 469902658 555933336 962971871 741979428 822904170 8843830 837186994 866013662 972745491 778352741 805171982 804137169 856092974 860516480 927095356 957729147 988468179 567579162 993183080 491245946 888017064 808716148 945628612 633476500 777614480 539223844 543592915 965123164 971100255 21926403 671570711 198271805 971211450 950537398 966745326 983501239 989909731 38795589 712449560 966731742 974647123 506124131 906148257 397402897 432499361 264335899 418627110 300130077 603355379 106487312 285964310 768177081 787934692 382540340 803071614 250657211 678625391 739849012 968157846 806843153 979793889 877187002 902338620 547384483 756150918 988748518 988782356 468399641 878370081 924114178 998223764 471282961 894831300 603018931 749633262 808751806 975152878 530966595 976113920 270098319 705010180 267694176 983643446 271300721 699087998 202616468 797685065 621610184 686494705 477763117 737269223 697151464 708521276 866152105 922340860 264867779 484725357 556587063 795896948 538975068 946728116 906137209 920652076 789635092 957367649 637224581 911890362 235307852 301752661 312105634 384275858 936251539 994733673 434526086 985572034 717979221 779734931 859603744 925666918 841815706 996595175 712207710 774037023 522596311 736808022 25797401 381165240 191543618 535890009 394033341 536677084 191040472 541703803 8589481 261264463 504959725 792523632 580664452 781217158 818526831 955416512 876749874 894317481 835981445 873720638 805922821 938057385 246417493 745356846 128737786 840978094 483574528 796079959 940423213 977729489 190306567 488011854 311550121 711216411 111988937 851421929 898108299 928879895 812704987 866594874 930591955 998653046 179286815 599198377 802333277 859571911 592345849 776527025 109412633 907649490 202556454 701017497 186311376 721445885 855970104 888973616 479065507 802960191 976942872 988805288 791527303 980001163 652066850 746956160 721237624 927091917 120428751 186970482 694284952 736848587 73817931 600931581 450526121 813925302 771808680 827864884 277422624 571642672 213024055 814659316 614939920 761130037 81541893 300535742 983080105 986570548 917843504 980716296 946076112 975478979 962524045 972079228 93920154 346418961 45569780 913650980 188673184 825000572 154280336 172891074 533304549 835537527 608239307 710544909 319436240 906695185 306490861 688351490 878551487 906124816 700031588 803127448 475731929 854896099 626888369 922551532 710357218 831173648 870110532 895402563 94441644 227114965 517709859 933198912 854421854 902663510 252149866 654798277 404599729 835438008 548008549 909295055 863478067 874787620 186627744 552455257 617430846 747061122 313807645 451479864 836699879 893046947 752959410 947017722 980751206 986367336 62255378 197525674 38473879 154145485 315319106 968623020 214717708 390856481 206411234 684032912 769856873 806470988 433270889 817761569 234272576 949147978 12134734 575174477 390419004 781252568 555693269 721568883 303565681 918428754 887108145 894034299 672872674 958656848 858119608 862783778 187341512 485012274 242000295 537473501 159076215 888845881 592980283 606640411 615513684 945324315 797640447 912843651 486117363 638620725 954564716 967548804 134582262 435939649 288904598 490013810 498827086 763850373 858671024 897978649 682231713 687713092 594260663 629176306 9719676 305269169 507066249 689961183 288103248 642082895 576023453 654428773 710883225 842946541 210012949 927411677 432318905 696427830 902518684 938591733 622622579 675605501 654778560 677519759 870795494 893550846 228319574 939873090 660704132 864030485 270121087 465598421 605669386 809383387 133599181 325238389 453646241 673912109 701805881 917936018 229128907 888643738 385527160 496762127 118549607 836012150 509115365 579037362 542189392 574499853 484193856 572271127 204612431 962000394 376163619 797956825 317548370 914283908 995117163 998756484 615491527 827944300 352468831 410472297 555839730 671452438 453954464 586152958 887461411 921738690 700987875 836382810 424272818 505825168 233600172 969484205 891169666 962437688 542309489 890269412 193085336 834214167 252050957 342799163 922509730 974939598 659701187 791607020 426259750 893819263 90153971 872935369 880790527 987848771 515187503 814432459 131550601 150224730 476573439 590470579 278081074 352215768 721141164 864402416 225963125 412630139 743688293 862489152 716427704 880525101 144489186 171462384 465287038 952307659 189695845 745927087 904824643 965961529 605496822 964456798 997358307 997873260 498851291 762381661 793131815 957377941 467742636 489011963 721424779 905388031 54850565 787793732 184266574 788914217 764499233 847317106 418079043 716464728 385213550 739604568 177573509 981333987 408477947 973500138 930743285 943904071 873290760 957525666 695175115 747571499 428949229 996069515 934339294 979970159 513947469 518004058 198351309 306262040 523799466 727990188 684002482 929741480 339380288 374814617 308205032 947492711 35644247 371084245 35667813 744144178 421492127 699472947 696087589 750904379 811470055 817097751 638679021 857076286 256747654 860640476 2549671 460857031 137491856 683963236 325473973 328827031 78758320 516259168 955966581 965842228 528281029 827502051 14958805 16132449 749671637 784520038 508183862 897235677 726346871 944866194 577208036 851187994 881605445 983630271 991919924 995131986 23626409 967502126 206132791 809000786 360264166 505156747 614886837 710369612 555220960 641710739 887053799 949249599 882118569 955370381 163872863 855383939 50207311 537436909 557807 941316413 111148020 908378483 754953118 862847265 176257431 458330569 547068959 636310494 506045177 849190421 54592609 327915563 173112079 523110134 139029418 871589770 580998972 889649352 241851439 629404602 769491172 777545304 547648498 925624881 388078328 420325729 435840648 792563654 428432718 446995508 324274047 353641383 255002550 379524060 788868554 896846730 252900497 434971138 375207906 840421292 956085303 973160330 534063893 892053701 416563634 766175370 629992930 881127330 845587195 968056874 606799014 959108415 751633246 966053971 690691851 871866992 384186891 915050058 350951113 714299931 739473844 868961671 404154372 869527864 321180230 573933378 623461595 848710991 525406410 663644917 603360773 890102134 489598540 496576428 396763181 966779915 872731444 919200463 494909492 888793415 930960055 937817503 151259914 683109705 395100625 529117440 92719575 858627604 978723139 987866984 898341186 903668232 183753455 748462242 40403098 176350705 714547684 800581327 917874311 964300334 662814363 930561509 751052716 941189706 767836401 786946476 672824305 702770481 749007852 781883327 590099742 690375178 766735194 839174557 261563221 446318126 457046036 560645839 172994252 382464998 859892602 883338853 669223356 800755897 238921717 820225768 219592597 893524701 641943577 918380020 130580556 364018039 843537369 975354983 659892925 889353555 79380164 766566800 37663270 580797875 18553252 380290989 135258821 667551992 595659100 936452438 809040296 890561260 357515600 782693980 884611922 949059241 367365379 509963977 462863235 826188569 204807832 467230568 536017046 975466796 427372274 798654402 198895320 755720289 947776276 951619271 206978184 248304954 249496910 456865905 724059014 795991479 529064051 530652804 166957814 265352471 875488606 935050916 376149838 917608382 75404267 318606483 184103434 309905207 630516182 660867786 246139927 515933377 10588440 87458667 465073087 479907002 536007442 892817222 562272454 952059387 614735550 636706453 579805411 763773189 90005387 656980975 488698281 604721546 712168798 971601723 642560917 930514837 579643229 984675577 24692414 973579290 889580223 993292552 351607811 629594494 739424608 820946007 902516627 925850504 770342778 842647744 986258526 997416019 199360686 415194038 254833826 384163075 821533972 909154485 448857008 530664927 331084928 761414667 391093473 738482022 929459530 983567736 59835461 332651077 344796087 667623335 18419690 493644237 90442732 451302637 520062755 894811892 869128981 977350229 75214039 833356705 185106390 633507627 830014471 842455343 840424287 887348719 52369121 988565026 156958687 894211642 781958779 945439252 950806302 970272072 998503164 998893876 593040433 751981664 757137888 933508179 577498665 886340325 115757261 814567051 990263956 996510171 611548632 749789899 665899708 788716115 821882846 982105776 334392435 538856101 702548718 910963402 984718047 985118926 199836586 429538289 760619152 823857810 7452997 528418802 738686088 770590747 329196082 855039804 646233641 898282103 734637056 825078199 683533799 716101931 605101916 901139290 645503365 888083130 583652588 761018163 975792875 999093248 299722835 891282660 983500271 990959743 316662503 904197541 145594510 517122496 349393916 735756916 676046621 919198461 338530481 693766821 347204713 866255675 363843912 374629834 400825330 962817876 828769281 879325273 864625988 879167715 343836492 657502847 666083054 949447649 88419927 236660384 228120859 379482624 182119730 486077584 848267963 948694027 718680570 900140486 595755481 853842260 693512923 800784361 136869036 662045733 583552405 860786093 341026359 964797748 769521559 980373533 132282148 847267567 951172419 966293935 586934676 886743700 659134613 823439346 181470217 311686039 981182324 992538635 792550977 836804888 80115542 334661049 516156091 582148173 632766858 649858242 449846670 548397202 893061112 934348876 240576421 784118254 645444929 736641551 225196258 551496776 77590977 408348044 756634956 856035383 83101647 350168813 112942406 292515383 200063567 871472868 74390970 827671139 204715490 745926494 305331589 458558346 167171262 277564673 902666231 983650726 313403640 930667937 997731580 997914939 165640118 766980428 570994369 680671038 664293410 793387747 546080260 983291893 244652339 259972137 305852112 604575876 991097154 998468447 56922259 585788468 73182369 143147122 59080884 280872148 392021678 779669940 515945574 537021736 909775843 989666971 851946309 909421165 802284910 965546406 875366407 937499834 270868495 849044298 290000682 425749974 877884647 929352582 332517391 760808488 227012294 601489181 900667611 928058827 484504559 490339117 971012871 998002309 731336574 854259337 832124264 843491412 818123505 818321428 764816485 927620219 912775481 980262483 290108281 824614727 845418546 967489868 931159974 944722320 434339557 655984304 364030428 704852411 12301510 771231296 321050227 780350824 827903911 858648005 520418895 942780257 144313325 792161035 332007510 882402144 793776792 897500567 24733706 196305209 237845021 656888061 462622682 949656621 559971507 721994270 235608641 967004893 328900990 387590657 859367687 991210876 691227856 992942696 836012816 848894419 907475815 918200580 493226800 558800661 978115115 985340539 326512010 428997029 785656048 805911877 889550931 953976017 100076282 233813054 480905870 772421273 615916172 623951214 444078020 966776375 688520617 903645268 675068773 831604570 355335856 622982641 754296952 893932424 654646644 748666857 694760752 906704883 769777079 902055121 418502026 671632365 846923000 849264484 119357895 435484002 840036093 971935828 158958803 653055459 209792029 900956122 832964897 914690267 362669870 622604079 726282357 842174050 550450897 648756738 612753654 945617824 432187225 878442926 463630803 731612931 526623192 913468286 417555088 872431978 445827814 883034473 946073990 973838785 109479070 302236825 3844581 889747257 784919683 915609663 15565937 287459763 319049697 681608181 648413318 673251050 499962629 958160761 696446085 870921659 433989056 657567379 619639117 683906197 588544827 914893936 268651690 989316302 6633881 901005974 295060273 853687321 467921030 710937629 874055013 975015856 992279750 999126443 434430133 957708592 131790791 535585219 549659694 836226597 605124988 934427971 998199679 999031624 639169237 977300868 590134605 787588565 827939754 911691879 345923252 989862202 581444871 742053770 755431772 994529568 32943239 104666100 872111095 967001486 51400274 623094124 178317442 275193271 378423782 985732469 800955958 940724900 424606627 652050781 458281062 636373940 676012971 723534377 875484659 898725441 616115622 869684910 865155324 907063730 244536682 634872738 802168303 909630258 595444803 906087729 600141630 894001012 623244775 763345534 614203308 976405412 946981133 986975163 149508787 869994723 333562149 885296325 57872188 458024275 84763230 849320113 662160039 672542043 409300596 674139253 890767326 986891281 611982138 704875654 89637056 185398306 551488444 805488911 127663061 712515242 405389492 596851854 150958830 856103381 412457060 483473624 634866996 921321057 427169977 973935854 711741576 870628142 66752207 710870314 11504172 376617347 565846612 702667739 210649922 601231667 435809680 693105610 679943696 925979987 406875 147339269 484884296 659313926 255455520 634087340 524370532 524763670 317561701 615475678 456329612 623389416 611124250 691964191 800846734 836001199 339722460 424483204 626407196 771203487 276967732 680031837 998418404 999020498 281491332 459146034 970520519 990719524 734883248 904851406 981118233 981965811 353593670 539251050 328045132 764990869 891292900 962999596 186630512 860033908 48949406 531896562 271626322 585619442 459511913 586096679 831800377 956910418 173719107 351088703 294736605 414318092 992098234 992534587 846092149 955429032 677665323 918852753 290407216 427961420 60071649 120533085 896943255 932152305 789482058 919629277 387107579 812686253 954617886 995174793 725727804 911000155 692423395 708231001 178390295 506741840 223970854 254217901 729456890 899722714 491421257 976743985 2310980 470551013 438169932 771468728 498720402 871442553 18957590 806064826 919126097 923167128 181000060 476656954 687044442 836324945 525073125 543477144 476813741 684180465 235890360 583741768 494754139 862758009 282543889 314702893 188583768 632511531 184973465 227170271 83970749 755568821 127631711 661634158 486884042 709622678 805892804 948046530 466715358 492780632 520895831 698096497 774205798 828107364 886683817 990073328 852963585 994403431 195098369 770682149 846946662 924085374 867090307 958491800 529060117 895816263 712344615 779103443 500202168 607840127 782966351 901827590 745951618 932657974 574845621 971820092 863507528 880855736 165185163 962977555 676245370 927538107 587629777 884904535 8060017 157370704 943091719 953218832 609431578 649979867 236572934 338158623 659153496 938143441 337176486 488958548 847190094 955670802 118378233 185158075 874214292 900391378 970834761 996677027 873216498 952110889 11604539 459426497 184628299 263689223 498659767 779857149 222042167 591531519 821693010 994092837 802412408 917954826 539952886 662647928 143720124 222863157 214684505 923061496 281565592 328076545 154260103 543108447 95182591 173852931 974790004 998185248 563891396 711482335 754892121 776187407 401151558 919413018 656730319 764046474 492207368 848814363 606354057 888759001 165184899 700826711 686157035 894105834 523393001 708369734 350184413 671729025 603906682 940045110 485895250 653046049 10852905 287111823 497632891 959966627 347022408 651253427 537181822 721607871 730765858 805514463 551711463 728646216 53435024 157141122 308536585 617136357 670414297 953624178 953555538 995791810 363599944 950173079 699218776 789049272 61538963 561675831 974134698 993202665 527583835 817371919 330290448 640377144 707748965 778610749 367141244 380044944 190610475 501191158 887965661 921166024 370364846 638338910 35714023 825629943 751111701 991892830 248681606 973406820 326491988 586671414 783285916 915218434 470779676 914359645 338836604 424894054 822712739 971528879 382987636 725769274 481221491 616638912 671865423 779378791 807089971 858241595 54211903 964064117 224271160 345459332 857629968 998228320 85872909 579766530 507520968 894965449 550759898 624775321 740581619 960517554 718244618 818859931 350871398 586464801 508081071 630511127 287699521 643404896 406596075 748155734 607332726 639318204 874891910 929467083 97051513 673915637 130831911 844908339 984954224 997747778 645011496 954892729 869180090 945185043 389978764 453335114 231948972 978824242 462388377 595202670 381322610 725196137 561213864 736900501 842815728 932991304 330757185 501317399 120009968 214675460 85603989 864327431 175512358 343561845 811006926 978770401 579837113 846149333 177708517 866529755 383600948 680279909 603785214 983394588 449768086 946061680 411298320 669099845 253695406 254161545 79603054 845644571 713363556 956620262 558273067 602377927 537780334 832155923 586581748 751390928 376027783 971801969 638135368 661722986 825294461 919463098 365880368 710964898 155771745 422321349 229830761 832170635 132818536 995159303 92599402 594620158 898210948 921368588 233746646 481772422 356875147 991744993 513095135 612184106 141359930 447978305 266099755 538808814 631262254 664993237 916232224 971166079 612166843 858573604 592017571 957403543 177430934 972256175 929872715 944429152 22805174 480321545 333959144 631031988 659872262 663028365 580880892 876991421 70612895 338044049 41335958 88694026 608555945 882374952 690205171 831369423 655998388 699669322 954584581 958643393 110701317 133835958 863522953 977036926 65833218 658177142 382647440 908591924 295223680 470018422 141118960 146469236 921903638 978218204 768102243 845166843 927662262 953587338 971554747 986923336 299560399 477750773 675351330 984971904 826966659 966752581 633286316 828728381 683372713 968269666 73929631 502195261 863439924 965943352 617506675 951464781 822553704 956495650 327368235 698535150 382700484 935730206 940372171 966805597 513032833 797543003 588499241 608631716 250436772 596744966 102774987 543201672 874493385 993424928 717839457 836977197 522333793 829577144 865870686 879660404 425874358 739200758 725501580 772244048 658001002 788623021 560339283 658753499 276221089 931432571 284567273 885536052 195251646 411731313 586327363 666940932 73206638 804331464 78686289 598612268 125495642 321521715 480447482 956863589 175165509 539195703 904821789 998393141 999361000 999384914 128318665 873881921 138214343 565566778 842446157 872644524 363151574 477098249 121485205 912728851 512767394 584180292 637426613 991849520 915667449 920840688 527282257 536186226 734105168 946328167 657496549 851596842 136072020 286796107 557037068 714762571 554046513 882743921 96199516 413123208 753496023 784959547 911502650 923459474 84883320 396139949 732049693 790806319 335180954 885905643 769223314 926284462 643734627 998009780 104031462 324884384 261113993 711452039 767085338 818298424 941050187 991396033 189960303 266596586 411962670 966283931 282928977 835846388 578952280 937299710 200197305 829280020 426742635 692853747 159721250 355560816 302632861 993038562 99889894 304664369 509565582 710883529 759920002 872403463 980973193 998826063 765124614 848728086 444396216 930950706 669924035 788161677 415658338 632696843 733285077 773136277 817173820 915407324 782659726 800591098 769839474 811185126 951228199 969689600 567123707 694059302 732728465 897946043 583473123 611541402 535610721 563423773 69922445 173648286 467457393 656905520 454096193 708994809 70450261 879288003 954562068 997318077 768677733 808855466 580096086 764869637 924493115 964148347 661028183 741448707 520829849 694033324 351566500 699649150 246658268 794954614 834261531 850529254 816198621 928192974 619437879 906726233 195131897 794992812 942420574 953518124 888483524 903545779 501715498 901243262 34015033 257321652 589207822 663807674 962981395 971809866 48426181 873804639 168935202 559367077 30706343 556606942 289707993 795458065 886077755 945712280 213627140 823290508 709133106 741125437 14521041 474929381 702948542 752080796 9667834 304894100 532666847 901551110 378826477 616056848 623690427 813575251 750299067 984283546 190674582 479112413 81609559 891378950 513870387 579945589 246301893 576560654 190899170 628271042 85555823 681265214 954016306 987959395 717199915 764433819 150177296 392218557 104573037 141066544 36052293 888200955 120956499 560203915 114228661 827639956 937384115 979584585 464218953 961988732 975032152 977417307 317574458 978359043 819889129 973968675 802035159 988923445 129914107 214515717 788231729 939526735 827478977 897882447 441949653 804717629 392824127 815442162 787406250 920002600 878487831 953042185 491986742 686764897 651286076 766994075 383981805 799245861 689185709 786516785 445984178 842274475 150681088 250684306 19093684 22081324 980635712 983966876 879136140 939936967 540478393 971628987 647100467 710287016 747474351 856292215 578459282 884355608 496978527 609220630 365961381 945720265 281188294 660034323 951995514 966164290 249910953 735259430 687502715 820330787 187614407 931053826 452249235 871562263 465119038 577076498 332378095 624000547 406867049 759841384 568746482 712509427 872345654 954129216 541020963 701537623 318474201 620454387 135225904 789585951 926199614 974501686 509797691 973856562 451681210 482384652 559918790 891011102 588447692 729538815 520632848 944704401 673352868 708166070 343179193 484956137 181238398 745411267 618891461 898872255 765009901 859648220 988948182 995815364 773458391 838622198 548734128 670592896 73220716 101413331 487085726 816467882 257351791 361436308 728007504 813357966 649323530 884007244 587800627 777566158 562974963 916273533 581623555 829886168 483285236 943257939 121887198 224097211 736376861 872769097 69750402 481505166 827497393 871134370 443904370 901610694 215061698 600630749 667404261 759052573 788523382 980284059 254449432 482293404 960362249 966083297 972171335 989294826 610612611 739469778 555784876 917150217 59262123 673036830 637219680 665175814 484862068 708613704 205490311 666182511 333634569 893383942 710473560 845929993 531374200 769765208 586586041 612292565 285309933 320657416 1988559 500878338 601621091 795882837 600810840 743732104 779474723 872748741 832813973 962262972 866727757 880169180 200471963 603555858 771759776 914221500 905633595 922460178 568898582 788403682 41355141 373892833 307342297 718817533 914552958 958096088 934946454 942820221 327292429 813942106 699184124 864175322 484634210 771114230 86388766 628366416 653050644 864506970 91137964 564841081 290313420 374414982 607645081 615591249 925162117 962370601 283157659 864762596 719808617 923936163 694796858 834379420 294033711 638344203 579494267 707472426 607082926 892850269 572326792 900384755 161108373 837033342 275629164 587709302 888417237 971977897 74388339 730290998 265438781 487312326 993826932 996446753 121774562 775241305 268873032 979974930 725971891 934700531 981051450 984782590 361991094 402903946 810146638 931891779 457532752 907792950 973894742 978810108 617248966 712225121 14454317 835257181 313404318 336083700 755598084 846767709 745762052 883154409 908343060 927632734 981162326 987897113 997214282 998813517 392059757 782800507 218713625 234852900 890037729 897880639 301070927 872819795 362817857 958941145 402816790 606819743 487543462 715713297 392132111 970759623 420069442 937801173 590919148 640439333 789554324 977299982 268013692 531023703 745920763 904751204 276366190 727981753 805972717 978229795 444080136 458233993 196701615 703321387 402471482 609673935 356307782 781671044 576138674 594963533 316619270 749993380 137485089 739643250 722723270 934128835 863227726 968514208 90173654 529995601 421319001 924581459 321675742 416243242 367927868 530370482 275560920 363990783 143073460 333599996 296967152 523537832 972422986 988050813 939254750 979078663 459015008 751523009 684364116 952097105 645309346 987564215 469841897 821179993 588378105 694200916 576645112 922273968 543856438 815540964 280854185 718700334 209126447 672090974 950404371 980750354 494737462 774733364 246197966 966334387 697848896 935380746 907832498 947704322 902360657 921266963 457516305 821148109 564313260 954767487 392052727 587595232 987862957 995935466 155024644 799464016 32361864 435711266 811093966 839980548 740115048 844297951 513070243 689895774 975915440 991513177 551917961 987590659 469967083 870446822 570107699 976250118 923773252 960242629 936457019 974105249 823994647 859020634 325603731 670450362 684918252 961663423 738001131 815540248 240095770 730849024 763808322 766771737 130959152 190949058 721481851 986093828 434261031 830823029 852709362 956803144 233084598 473130850 925293230 932306065 88753099 377840929 52482243 637724457 471151173 688830695 901445990 977663251 391445443 990347797 61897182 297494941 434205760 666501193 153274637 418578608 144478521 657185909 814417708 917125339 914063319 987059099 301755560 624735859 145556203 249399272 527698806 977886664 22515948 457876665 409917345 663962733 522215709 951405722 766674939 971468401 27915028 89683233 626777797 890132258 86293156 737798200 41686158 213955892 706721577 884686330 803514917 903248455 477010766 741583627 397424202 997947637 161129794 987734236 653971702 855155811 213373786 625171460 364607824 615495890 257005256 644957645 767587683 828113290 953124088 993537234 788603800 822409112 819549727 956895950 551446661 742781755 585066446 724986079 821714540 894035347 586846651 604526279 731953277 812595390 86914521 399835917 709794240 819141218 131575692 160027530 621384423 966943172 825677150 829420298 714743540 862689068 272748897 292056730 954849718 998537618 669819302 846072706 225394488 759028328 902627512 933720878 776868151 832062203 987499280 994539855 773239808 948253454 837886105 844707832 746612801 818331918 244081610 410352867 798779615 931590462 588877611 723458129 94489517 692017131 972062043 985158245 810756254 826425355 770053341 858863761 297876350 747917038 120298486 289361215 863008375 931532229 697370487 810454776 114045050 397181481 37044297 258304265 550745452 554002745 653977519 823459882 911910461 912662940 890819906 918342627 420277142 625620620 494655686 564068129 488969322 871354094 91216812 152830320 182951976 355308902 690617119 714003775 757469068 834554558 42241305 763257971 566166979 601100841 447127079 935054982 168649892 296720454 101103496 106981128 589763205 692101465 369906512 727805270 647119622 843412339 668324309 957326638 364003127 396526449 324588253 815454767 204598768 218233379 146484445 335847803 973261316 992910433 634530216 844804706 882290230 964881695 158438607 578438784 777160815 982612090 201690025 613467555 589412080 879006137 287504095 859992527 775905042 777787939 338766416 516688075 899738103 911972660 444425973 683130545 639460916 976679059 561394713 927112811 712324849 971847115 310237160 820092708 459664487 693185402 870308428 871060668 368317861 924244510 34253874 799108911 54973167 642157310 101856366 820767900 110386302 282686081 184471622 310696662 832848181 950039876 751128667 997889909 191758240 523443515 961725786 979823605 427762717 565117570 322271915 441614020 392269658 723060041 590687197 592774298 208765355 587517871 951843951 957847457 114127525 681927744 53909237 856446288 641667124 826773353 461631867 701510882 721862461 813768457 282037786 811685600 490205842 566734706 266761835 537778031 305085050 340031214 525919312 593979936 199130716 613252959 919214054 980197591 678477414 857141621 370687443 717530386 187315212 574364058 192831035 243296301 701738249 778866246 287038960 567797428 409543586 547503107 265887239 925836063 672927249 997415449 566992693 579585455 632132882 911434781 378432963 646381237 117127324 771911991 948723058 951710104 613643279 937981584 533686195 860991488 230584993 285499878 187984356 464016064 89990581 602981461 29772973 157525919 124520357 990777083 433983336 919976063 733147984 787767068 253264226 283258026 725228364 983717366 649590693 695876680 230797072 881349762 859618147 922012413 431024824 713515391 749131238 956528973 898669648 977806420 389161366 575660727 342016262 727745266 426791660 567433481 347941041 970126385 677515663 925416953 732580169 936100476 347197655 447966068 724594691 906703484 144396388 483685058 70302141 664180390 292402626 702752836 251472963 965633057 155608575 276373222 329984127 805941496 789770552 828612062 84089625 123815325 191771737 655800907 381651547 877078655 536537240 804161280 25082657 515752326 979240189 995970004 37587426 703374722 130289744 484310511 130471859 205632430 741891998 778061206 570990604 827542485 845080617 883472567 253841567 817071881 872846383 937442080 566471718 771268700 436875112 954199096 543952565 715050727 867901332 939182355 773555846 799302828 378483528 704441179 365810988 419485151 80456970 511350828 294892389 598393098 135646510 997486670 575634543 864067573 563880317 658764250 784006289 886920923 180103051 603384709 145958310 299861461 848526138 914961292 841205448 876934085 384756347 625215026 127436505 703356982 158657743 269912743 913556513 991086630 138491143 276367317 311660065 905068300 101164755 906957784 846293794 929256968 880452449 902003251 468748977 758057691 285419406 706804134 514520887 637861555 718049068 907431888 921255324 924595856 181052257 596144055 112652935 604472659 929006466 997971659 239422321 860137891 17388614 270516970 138577116 146392143 65171597 155036310 585562685 717134181 170584845 831320313 782944855 878904055 98154728 259196296 182816564 709095166 495258877 746426898 442072376 745651928 180961375 578255711 973988826 987934068 496425258 589389362 97814306 142136734 434224761 659955071 438040110 847443016 653929643 905746933 574566702 709560862 44047225 995995589 554763875 888421092 667001798 866901276 989975767 993224416 204135435 254710239 595021426 839719970 788312198 805312888 770760587 994759895 852599085 988768623 908792056 939566007 249693671 883162978 733255089 737003403 383344464 670698655 102135015 480096678 440253948 581609621 744402283 839271326 609086923 766449132 822467379 869863012 79682693 913395371 515919740 639475071 953189871 987455799 473106557 805707364 968138658 997126496 118141653 892405418 563223810 918844649 972440519 983600258 803127250 832121778 824422464 888113317 996517394 997092668 848435878 942894286 566625934 935578777 921428453 925416220 412498872 832281166 510925408 670707090 474078318 538263683 504222299 693927899 504362690 768141917 673308365 680554331 980337980 998639984 775738492 809920244 456343413 567760356 760862557 941098677 533582780 824497629 342072265 819083911 304176328 921100564 626768768 921574742 566281324 682831040 385436142 752659150 614679501 809081121 595275039 818986614 326504 311314025 239741151 332636903 418324235 783384011 627378947 698174534 240111288 794720155 96327678 108303404 471416737 527016109 192663688 425323673 383444054 991794271 674517800 841188708 946042248 982786489 259523513 379121620 47723597 663182048 284791 510895003 156340238 485002657 902397242 916181561 415345485 614777389 229877127 761176733 804991709 962166059 687789611 907041949 878374582 944201880 663565723 712145738 310516427 789611898 83919356 907302000 871153956 875798600 373684688 455538291 927070132 942270543 796773864 900658828 391530489 570362207 662250418 900419900 542460364 581568481 88577180 975092078 582673491 583373649 107413076 661057232 774107408 804164956 321029405 585967684 517334287 844431029 252004991 615872809 62826598 859347295 30624179 289373493 419288279 519453304 572678309 742609833 617055891 978098184 444241585 943423746 582654681 982539027 915070645 992273759 734141559 870541669 968152812 973413803 422072258 698022479 103011434 195847789 671993000 988951863 285713572 386072311 303780112 836838811 167703309 493450378 436297066 977033730 489345113 881308444 776720728 951859320 611786502 650994664 591449311 970591128 569999064 770747188 537167130 868134580 649986809 884689143 200511311 632244648 826818757 836468914 590899670 672370733 417907465 492885069 922892128 979094170 555182209 803743208 614712916 776846619 47165075 867033200 191654561 413175589 6598519 686828146 650178783 997789761 740520389 962814820 93476581 199173818 774953084 989292802 560718133 619930805 825871740 845702887 443154092 629492949 308547975 866569965 568724742 876682096 552510970 713511733 357122302 650683785 896983004 990735556 38544907 151013325 954197247 968336526 924666052 933968388 533839227 785687434 612384998 661013174 824313301 834693894 344371808 530334475 534058670 696360497 581650815 738245302 625358697 864377106 551783707 797720786 558091444 929126782 993148114 996925192 531568826 878016645 618550150 745916580 302581284 335943242 100932599 345158613 460729615 743967953 988231954 993353397 232359397 305809140 743177804 887414704 105007296 937531420 675741829 876199494 17595696 743967548 474989531 906117585 998827334 999236568 122929083 947828948 857511924 868651771 583381022 820503518 65926920 839578384 401759414 979477179 554760023 586355678 228309121 247688806 831160244 986377892 561065396 679140414 428904150 914798572 466296542 527087664 546645109 994468742 332747657 734586682 316671693 877443946 208980538 579418680 469303557 755875056 7362873 955544381 784719675 793486161 2839482 205662628 416404193 943297167 874879747 926750251 757477126 791060072 965044047 996788124 543053620 770963939 737567977 955261661 2696693 181092461 31323087 295145095 387431984 544555238 73177308 394594018 500175066 514805171 579799638 996832699 107090482 892980091 71813558 833870324 874336654 906897306 450739259 618533207 848742515 983635959 947384204 975045596 61522431 339183932 430221952 807525011 128261640 842582028 285384507 474616963 707574020 729641875 848909254 994656780 864625356 870868486 763217944 784646679 373268031 392790490 656605123 835123364 616903019 700356520 596106703 709660199 246650414 738529913 16749252 333488712 900745081 967472229 35360584 786270782 540610232 901655217 506185242 865945604 183616492 834112312 344142592 806677978 374389966 891783806 864374314 941763648 865067102 940504457 705295417 783940468 513427038 783565369 651849182 971336631 726139254 952803132 327300042 817264688 764356343 978564121 174397597 346312038 903327282 923961478 869301081 995594078 901321721 948453568 423825595 874819312 846658483 847166779 584178514 586820025 770507340 895581111 745602741 904487216 530804117 742158277 115991504 233661253 358204949 929931475 38588652 535367668 7158370 61688543 56506549 897508966 126129439 464996823 683878678 690248021 258130342 414426644 166278741 816607858 118850400 281563357 280695447 357047212 541915045 725240038 145134599 450445306 197452090 641337379 498533022 799741333 380765969 712297969 819237580 967259550 419447955 685803764 114530691 328145412 852744817 991560757 645052467 903191430 130775124 162234757 278490901 914761608 204589196 594674975 455254066 642290911 652057359 693175378 732706006 752568388 577560243 998170091 141691254 306166563 949752795 982471098 746417515 895526951 967676792 977442187 334616927 624607961 741668706 754460828 370602362 471244868 291513226 809860087 484396696 984209988 319248953 718914175 275398325 393454214 672915559 794507965 998003035 999095933 169912655 308666150 366619865 818521753 68069312 913757691 897246154 919624303 427156124 885711791 626758032 632990771 470880056 844036418 856044023 956865255 40737827 394377419 530188215 605201191 260680954 737591584 585016984 871206485 827798370 945575414 488150275 502076420 747811830 847448932 854122227 998800242 729970240 925993618 263127304 764578732 10618058 508256945 128241771 498838470 534844806 768443884 655248539 792222903 664326729 926520238 102718522 878063683 959427253 990449789 855103329 918757878 98268828 142030558 421709667 515187616 18660715 86312892 164558503 848726812 645201443 730425893 810408136 927834120 652442297 840627222 554973476 971636540 170331862 288714930 476149927 718205523 974731027 994030455 653518485 811815317 326253334 854433741 724323931 761760399 164367278 705277651 421548946 699832408 218829609 802155660 542580441 724885525 953843555 997836993 695779975 887218150 308098367 629946062 156289114 958673099 460584416 654516043 843136033 904315167 563629710 923382326 873486287 903293283 690950118 941378245 114813291 776497872 103920812 951002566 634644738 742670790 14398359 241687888 608964109 633201549 25474816 204323433 711522032 742843018 42151950 74679510 632151656 939571327 984219248 992381971 945167813 958256027 543465793 614040442 977352513 979135223 899011808 978779724 374440052 915852305 381744342 998660293 325301732 683806214 960403205 975275201 536103967 983061541 815129833 952374306 407734214 741387202 340258585 456558621 299108877 786702792 586101714 687098658 189408012 985899302 59155737 705400264 348563784 747593937 232371023 337582444 33598719 800383321 786497350 991872425 261245932 472333155 814354772 833276165 414827989 531762953 277610613 948694440 769585775 868289985 357420839 920192915 460605411 579154050 513638886 577082868 71510912 951078546 388527317 436037710 263254933 618187957 920238821 995131295 285910865 786461378 86517083 401315683 542411514 912500272 237852113 888207307 574270435 887977046 706873215 928469806 307932285 507507650 270379598 359545472 440496485 820934319 605702162 896232737 48478549 66320000 169353718 820834936 314934466 360764528 131214105 259766827 353368104 774560960 130494633 956713291 363238043 411809672 426749714 830817632 891502779 920781706 107296144 228990735 326492650 894578449 66616383 664717447 528111538 829395121 486058070 502932579 532045978 995630169 835111662 941457932 251447503 919474055 229180112 472397413 444502604 967312249 822856167 989717514 834462032 927450128 618292759 826249217 570921901 719493527 889895425 935134006 115301462 907138638 388711455 648870323 403123264 945639232 694267437 747744997 539356388 733195817 691796737 732305964 231558169 597494972 219034133 404928262 566835309 890545391 135498961 776535718 856718256 946803362 609308542 938557938 302329964 454507982 964733363 978416443 477857735 771931771 421084849 817019848 185455562 991791200 526045016 969669921 988785054 992583120 107695726 697042914 249233760 761137514 750951795 871723584 321070064 769141925 906442347 938727906 776124557 915255522 527782838 927451270 413156804 418258659 312137564 968869063 885676956 973964307 697551710 931574940 756138874 787037104 454687273 537521730 657976958 924722321 987791397 998475518 703186128 950095996 261486137 327419499 855383239 912954383 300882625 728394438 826779907 946715452 281505246 714989305 6256102 846031002 71891566 301525052 165176694 175015353 266161433 719285010 267716457 285415348 526986202 899523082 457948125 577333236 278153255 559580246 925248813 941571297 46967270 525920636 698031027 989549681 219460812 975725383 923187596 970834416 908727650 940723835 666829162 850996576 383199598 809403714 854305509 890443879 342047627 999330782 170124725 552780186 920654267 995046496 217216072 859571351 761724313 898130399 249634498 831154498 356604885 467315554 284657010 374459956 399313678 836564102 717039666 880086663 449639713 769392009 187744121 555404808 932131021 967071425 519295223 887750966 554834162 674712887 102546243 712251916 600723976 987107928 702468965 839922230 19704362 92662247 229057471 813248135 24664506 994113181 724221292 781824902 740846804 993011496 249348025 670336114 588596396 979792525 815923118 831823476 544601259 813529531 177542431 496697504 367965853 742263045 951908445 961529611 383305728 905018859 210658497 776936387 15450070 758538944 762136033 860494363 346421767 757929253 111893024 771202092 756534308 762162314 42613451 999272448 712414619 843649218 52818918 352500808 265757986 941844136 422907560 642731779 892951983 976234708 250877232 991278794 469996917 521279382 530548217 996238832 776669218 856802738 253538528 717539937 153562426 891879190 718066729 917725439 393169899 854231306 157760501 268849367 281756937 813133584 631887827 850292849 665696589 805134476 858311850 878758180 675551110 951781290 288589069 885757861 720893685 813182432 247061166 452561304 331838537 993963974 740924199 963106818 518649284 866617715 317409078 788000574 128542778 355388622 106148334 746659946 863912876 979502216 914671260 950111001 211466251 359007677 600739243 847244970 459633142 466512528 253671816 929303005 714359986 970699884 14592786 210427842 866872380 887503614 474277121 920014046 633189244 795556932 156904528 738322257 578120526 738795195 231022387 971000321 452050503 817303691 116932334 395467710 789082076 972288902 536770127 925659790 802575675 966418125 699895841 870363743 491748224 598234701 959377161 963462133 187805291 369951785 236741486 898422594 842494656 905163013 746464490 926553566 583675279 883504766 728168850 861790410 964755638 983710664 194495583 653620651 466776820 776298399 691289537 704066858 709888404 991658021 883878147 898545404 736468674 925399485 679063653 884968086 33314641 375836570 23576573 249306940 134008881 429060609 759815829 929575019 389116816 536956859 713937762 795869448 755919405 845424691 57062164 890193157 129254827 722856368 192837337 518260082 600327316 828029209 184880437 528657176 917887546 984475534 55425543 312679474 260450835 549467500 736657996 899036244 28008758 569716015 834296585 973582195 216678145 929278722 55464991 282152322 59433820 150831223 984593767 988403346 877368236 880027190 200725202 915218874 361874566 997476347 265202439 539760402 264920914 680472144 300814632 838431616 607767079 909667281 546136109 793778572 929523872 991805778 825066523 831665648 455991691 638725230 400658994 856922185 650449325 890538894 903691978 966260863 72634369 982956453 976570695 978020456 998199442 999355891 699969430 925860229 217457401 964191311 494008302 792583633 716234438 890592379 899729489 941843368 998262450 999114774 350523304 355043578 234193707 631980146 265482073 646962917 526593934 917359869 548717878 742715085 521239677 549814675 663809402 706122492 941845756 986284010 805925514 808795427 766402960 875479826 943487168 979924586 311845369 773851521 295723551 750549425 113299393 478510144 900049079 963541469 50352764 321290272 346975435 419958825 937039996 950147575 197254261 254250623 36071422 188478019 896332627 947902863 754375641 939729512 825698548 898651350 517941337 622661218 469913763 951120819 726168209 810604616 305229735 739401918 705251823 863072257 591038010 798949518 728910187 759366836 20072074 343382796 406045634 828715194 919904195 969756553 926736424 958945717 273036306 976856971 316996630 745052010 422306885 711138676 392596998 786627318 454295118 874134227 643936556 798100187 712919428 910130662 862717537 894721577 706292351 862215270 758989967 843152212 56441672 968769222 339370546 614420398 296204127 691432277 688535973 803496001 220112627 539132884 387146574 512703450 704104565 963830193 379832719 582458286 31590471 500753547 472180060 516198296 594518117 616592163 361116802 929248880 683710285 705342283 689711979 816581894 105779597 734759563 914917954 989148257 365508018 517796630 73718165 930667262 758936717 993963459 589931642 717473079 680348719 872755316 504733615 899953584 418892674 904142894 778347500 812167538 996544348 997010782 308512653 630452045 826627916 967112077 978341104 989141522 87580351 599730677 885061036 896899554 926536731 990631939 40840110 134856739 910163298 934086244 655378726 734621094 497934333 557664275 497981695 605356360 942023766 945424774 754993837 948138869 557304181 729155713 102122759 442411229 809910992 870487011 577401469 907759862 37954323 361269978 304527308 401232171 275775183 427173352 484264188 855142092 323070927 884962628 692694174 787859786 270936326 320445788 852271745 892691352 928048624 978131461 450704170 968752897 154117597 274333225 34831950 121414961 100015873 415550330 628503780 973496755 343025876 551943754 553958959 899456007 908790430 951490733 800939389 978637364 348676511 469779833 551893664 800122091 745027175 823333162 662966113 725606900 106148249 530207790 240437791 950189261 86827517 157005113 853898702 873074413 314051640 748301580 443647784 470722245 460337620 701247551 836877784 930653081 775260592 949472061 375970096 952915249 436682510 494780271 371446033 753095702 470650383 600367798 386098361 931265454 254196287 766516358 132299363 231134607 728466667 967398434 622803779 631541068 904600442 910242244 755181850 776181665 483986455 588158178 925814326 972325875 449259264 619912328 918527850 920919226 55707910 154526742 262765682 763971884 966544239 992390767 546585453 576978959 504631470 662947582 235411981 979367434 516560768 601834439 365196303 668799688 507686400 843676784 536648418 669516868 38225053 752136322 180386247 288598887 793286917 975591810 288310961 875246873 160912824 663922347 337515434 503076515 569301453 844724222 800288035 879899066 95793673 200776839 333184495 338863200 958397038 991312017 718955361 779670881 876810152 934954217 639415279 991330546 85002179 871324201 509145555 759889565 597502623 687881132 883960917 957646509 790865073 936015838 351693570 605436764 593393204 865241533 830109560 994940881 450205879 843857666 648999275 897485642 224539660 445285123 154372636 317337061 503992542 614337847 345814862 417164422 611294348 997336818 801871846 926705391 673653295 987222702 893406029 988205884 783507504 893711072 88596743 991776998 58246460 487969602 489435514 897408392 454295882 542256085 311415800 404160376 928269607 941714159 191413046 322233287 88832511 129915785 980091139 983380267 604786676 756727276 737693297 931497158 77241385 309869045 867321345 909990498 436384884 757800212 18711410 796253057 373809559 895413955 750700184 867113189 142728927 146650132 743265023 822679531 917855678 937220481 282084554 487341486 668167492 931846578 14100175 102751948 340838695 978510919 559237781 988928909 875371790 952372646 113671664 855816161 710574535 890805591 506222117 964318556 188616007 767504497 40348522 641385304 608972499 995764137 472010049 909856022 940250134 944069165 470323044 828802833 738974320 773654467 737128025 870245303 483761334 580916579 161523915 503342607 776864157 851033137 988135474 996002782 334265978 506444917 40992454 48377203 821571338 875794919 51692902 360953467 25409536 212666341 735846784 825184175 990937432 991373475 810702396 857260299 731770203 964835859 764579863 779687350 62631896 285277487 479288036 482836626 643939989 751071969 614205650 725159077 119836223 566430697 317953306 890045949 248244274 572964543 903954828 959105794 117370518 609045159 59728007 169072954 241905656 601213364 488959173 687459525 44411038 544400608 255358691 698808671 455476305 548925056 186224765 788548814 103892342 686274465 259704200 883402713 619072494 967142188 919136211 997448300 63541403 847028688 245865251 467609323 146167344 522344090 760486894 819148396 437726006 933450420 141723735 437507459 821638138 965677464 38241041 363064822 760137749 977799172 388836873 491129138 243273087 442628146 759573716 963061896 3392262 226029686 712248379 936985457 125234324 178575423 149412324 271779507 213795712 774836685 370364181 771296466 868050477 955724646 269349990 313539381 595719943 655907603 836327218 898926164 786123420 786738472 948449509 988080327 800814160 977132164 904908041 957292490 667642871 921026213 813464713 925533251 554160027 708525732 911315896 936188456 918164948 939868455 996237548 997806376 478262375 989639111 670197494 872864448 396667064 646545755 884631749 969139978 915899310 977911844 701084591 964866483 381171276 598384849 883650273 900724473 946324126 998623648 592212998 927032998 86290759 116563135 45976869 892438877 974914093 978100527 183552547 779416967 371684550 395232733 196754933 843344074 419314364 574337955 179922992 232945701 671818150 816995157 510243977 977101014 208452253 435664930 124235313 992044783 259876703 501458884 619654472 921868812 487355430 885284196 383192300 620415367 216047157 276724863 718808832 907472702 914265692 943558753 433111376 902902513 347242447 683195063 259156693 316258605 805359306 936139638 72488243 227970148 738972447 796221521 131935680 571806328 223461781 615278167 86059039 515094020 431585791 887844644 581986038 882906993 973294565 991324002 90674330 558428228 404363401 513883270 97367200 815876774 676251194 682974699 957901610 972753532 244331995 715841001 231491490 945918788 842011684 870635343 445075314 918417301 313715195 974471127 685106158 736643453 660550268 950021458 605760958 650067248 382064297 390037744 859639151 992172196 700072880 839096844 929323790 946156406 29962203 751698694 681566113 996150014 710449316 894522425 924884702 966846973 378300236 831557620 323094079 678286481 196737114 310221393 458649509 654560671 651112942 743126132 389748842 973781456 687555906 778824480 354910727 421760249 753191677 896240466 996338678 997955752 175600582 861327433 599835110 775273931 923684954 927909169 651984934 873130161 788663176 801252878 36818328 772722597 912939401 950006257 66781560 137665780 118528162 300109067 692446796 928905430 715365336 828700303 865919619 975617617 320850811 815979211 30160939 237550078 536471736 926421153 548063133 650402886 6802689 973150120 433031674 989023937 668827431 831489196 685280734 889260364 791563514 968314625 260143107 590202855 84138604 616820291 255747876 271799225 605342458 869676109 977362609 985746857 444688516 751528350 309495060 740437220 656575698 946692055 75690341 974943384 336632684 646857137 710772654 917548476 311467037 900980908 590590505 695813649 697629571 856734299 463878913 957406670 725076067 967145057 170105458 298384064 675007372 718249673 569370162 782052776 668755945 781746337 408039007 541569341 755388375 770611748 199591576 826736530 360606607 964187676 432030482 968009542 508457965 618451857 275373615 395262070 152957392 918660522 397970492 691119960 665916227 904464133 732798105 939695066 519730334 824652448 942992279 970772875 740201359 786336986 401376860 724653387 257546883 495801372 250311803 530864527 339888858 652137046 555131134 844520418 335148771 953161220 382423124 721577122 957353189 984537269 362706195 803284320 963553506 978825151 676440051 832222963 499734054 605667927 925768568 934482334 745883825 853885715 100508919 689438468 160056176 777433698 233348539 681960611 695569496 816224656 981453357 986456906 177472624 291734303 311366967 744243411 738659681 762489183 638239474 729046207 136991060 702062279 247358182 993001773 679538002 901462418 859397901 894128170 443469487 672340772 456171961 759557458 626667470 945941395 981675849 993486063 745904073 809599828 334395094 720679625 727857582 792663358 880428003 969064988 245563564 302946160 163642499 202744192 431582232 860834288 625965022 635864428 637294312 826922489 740150550 742356957 306214088 628399166 963683606 968944731 781883851 969308134 867111640 981401364 782237730 866451210 274580314 652937934 31559345 270579434 338783 220308771 451872806 812896809 345112556 404940965 93297763 470919868 806514011 916158814 42053763 814193892 681984761 835776194 425308676 682557893 193156098 793817705 680859406 795185972 391879943 810119724 581710191 716538580 646244068 743625173 664585198 882468355 789145822 911200611 3945614 694861968 292865794 534838622 889427766 900970606 827055905 835889154 956303906 993819694 793685620 957837020 543734110 619424351 325348336 844787854 490373528 967092206 350928732 988290584 374384530 844681956 328527294 642401885 412862008 590907118 551824200 873417739 682756043 940235037 522854392 755900077 8879789 836729101 257758555 888482651 205532331 348904344 446072464 497306056 329279963 880278793 225765770 876536740 847627909 852556376 456798637 524610175 209699836 365720273 902621271 934029430 782346306 851042796 533014459 770680118 917519004 955800276 881542162 899179609 588431737 814330015 746504837 994666399 240271520 346071569 978705977 992160108 217383785 938704225 28296015 534591952 966438216 988025001 542495966 876046887 883259189 977149903 790408697 816018092 382904617 953393185 88863335 758669710 69075751 921197446 974355942 989097703 433501736 937554879 775962787 908556550 10311714 974974271 968040776 981870249 256058506 298613342 277096574 578478442 453411749 744685131 591646519 838208695 669147622 928231369 254705131 497523185 278714817 887862343 191790220 445237354 207892581 880508550 843240514 918175456 824079139 929592772 499588354 953813427 815023180 886861595 92695005 939810452 732673453 821040046 874021988 990815602 302919665 303873050 557090727 622990856 95772823 296049387 161689313 883045681 191394411 863468106 211504651 807723649 123655154 487726151 425627287 637379397 809192389 957022710 638801220 653325117 506126373 844805942 472819419 842967174 696867708 860490596 4591777 856664164 569066647 796513829 202378122 995568312 169851076 296777540 412282122 806338541 142845370 648282742 993112605 993667666 538098201 615476621 673455084 874560630 530156806 804371277 328999445 767357089 81394098 788246115 476629753 541147388 18966738 321375387 142966491 617514596 120867904 220223705 557119544 910624371 547775151 836155624 132102063 575638994 837310636 890516535 27503964 164130468 773799460 782504745 811216296 911194621 956627549 993207981 882708155 906538530 222393593 306233560 768466457 897300878 415627326 742971995 90979787 700121782 751643146 783964475 731061578 982585214 369483502 985613286 106933428 147361920 32324557 498664389 411169369 533844671 110492950 394744683 378557292 435375833 747968798 988381604 655916284 746094123 91687989 943520091 633626732 917945773 302421546 598027346 191303281 977042752 901655004 970250533 862220536 989345545 328457013 773661640 543835701 859787191 49836425 302635824 314890551 723565205 417791483 929835749 56929535 111988454 795387821 909335167 66282363 618413423 345909836 382454069 322414695 813322787 373802017 551773645 346435249 633609749 501816054 788231998 608968076 663544369 38153513 762611224 971770735 972254723 500415842 548159407 953401764 965415701 775554199 955460878 581980148 746412419 485751106 877349425 904335906 924933298 352809185 394639448 17549134 276426003 242513525 790951136 761347568 896805824 210508153 329136377 85581121 148300033 964759511 965691784 73717972 199052550 220593572 462803316 705969521 871259389 687765727 895678754 166536253 187459644 250607381 589898501 180868654 934844681 219342308 270979350 944276072 998827913 278373626 484191133 638616778 842288669 93918193 870704101 828609992 907925905 977179611 987141441 212421674 457561912 241168348 805676598 364573021 547280782 955104736 997596984 471185968 943685149 717293901 918817610 705999019 820351042 12268686 471465902 988513676 989422160 316208497 533906474 953416103 983647435 62706446 647902424 586982264 616749404 363486451 437970393 45938662 76449548 734355122 873759499 11277029 95538131 326055838 810512786 287294432 929784417 502154107 714901060 322151316 998576426 862591505 890727987 260203768 429463748 718338343 781741737 717378605 806795919 610185610 959892688 453839866 627973939 811424981 984002282 393688589 470525090 433978417 703155449 391683197 687992826 967221110 979795067 190307725 308970047 148960694 232822963 909697180 970691708 251248936 784532417 121701340 909494728 136377581 352181179 684102199 960664126 871669697 927856281 66639363 695384198 201573635 901190063 388214070 432863504 650467479 897655417 514006293 680412202 255565509 675352654 321871096 785263652 443585292 483385570 341526080 830066849 385671970 861407769 312407056 426175217 566296401 641644127 11616529 49268175 496170826 894503074 688882356 973233891 809603431 897941971 592912539 939748374 574858696 623116691 734470201 828691210 801657123 868978289 29351245 781364906 872395337 987037127 492837787 984291592 743546786 934251142 672267465 894499518 585419393 811154423 39853570 178887221 859224195 986312112 773063862 854996834 130929001 236686312 848279925 855965683 220586877 931135489 589909907 602614672 611916097 639092552 955440469 991177600 42322203 240703081 277469532 892923315 795373051 825512485 540972687 541258193 461057760 822834835 519305823 563912347 481189497 542289380 935701141 981709565 336431398 989107870 797879259 807349262 193987495 502933352 123303324 725649155 650467268 680451743 538856788 601215244 354521582 802378208 884225824 985256495 258863481 684648428 546993156 759991634 916369409 982286309 679016348 746692234 210361715 523908775 73517346 821913162 670956779 799435080 559639627 900210162 796394400 852117625 23990258 620558667 434139793 469941998 526031629 644048250 786144523 836287359 826773078 864257190 1965965 60514922 454630136 608022868 829007073 996815931 723372199 785402663 634638360 876640166 767761844 913000088 350791713 996380659 228622642 494416898 443466331 737118415 746499216 758512006 938682504 949246783 96157251 799508291 352312293 507595007 438656664 921324999 331410829 745407355 198703221 283474050 783749519 943177375 501889329 807299744 943472 642143152 992417655 998484387 935067720 969416639 712105705 749112523 104140124 403078053 75043498 370561620 396101296 693953387 964338846 968179297 398246552 749481661 297700198 708979279 787543181 871307998 438595606 850686750 528608567 652200420 393287149 665161319 684434387 990986995 687009516 862269308 837031715 915746912 934909316 964954265 25786389 749090441 923718120 957386748 75476891 219947910 696925771 722285789 698937418 927210187 908619842 913480971 646507238 955506137 66524254 417333487 97176154 158844243 398993266 764748104 872782304 894383533 499282274 775555261 811215070 832998408 228559815 279283504 913635360 950610594 669618913 752956598 925659229 965191859 232948284 844911777 764312479 884807448 270705510 758791115 892770453 954116364 90620535 212079201 732932562 790127537 42227876 81015295 724824299 728558601 336391210 957993547 774811565 993945703 41015354 301540492 614593312 924117203 306808060 817715481 569021619 996043766 705893308 756859802 700077885 996178299 843399603 944650455 889748478 933806342 861150987 946533521 111008543 314899337 281837905 994489272 420051166 694811021 140087901 475894370 57555061 194353119 309741731 647130712 752884457 824004469 299635446 319716785 684669407 775131881 503310778 978136663 453834947 525078555 290975757 901599144 921098413 944468840 545756737 571391329 341404325 726471822 61226465 493736866 396669867 869825032 822367086 904212174 986698810 999051666 725452815 849860624 454248394 494570293 990574625 997472475 226328789 277392419 476912567 625734915 434177957 496826636 158175482 530330133 839975838 945980993 243168461 713901198 855656547 946407988 277665657 589821348 163964305 348898823 942312755 991048521 526148407 574196691 595644265 612549272 273655432 744546976 322441826 901507075 550304448 754836538 506133918 640773196 84345508 439507609 494746043 838446662 122951696 705787166 235180675 274135460 266574753 453622449 949487020 971223587 348902279 798209737 476970055 620735916 175645313 557364812 354791053 855350194 372698688 693738711 863977876 901974198 513290029 881154235 631832530 710169441 794165467 803009707 549597217 577226188 830347426 921647872 792240002 926756288 212632350 741985774 667005589 812084206 703976618 851147457 707019831 878861236 722045064 741736438 451597425 520730339 349455349 615641218 867286756 983321089 398310284 608636779 84164385 263950230 211514023 230265699 270888873 310486747 83222271 369680381 609065981 940589050 75766199 170703401 173506424 659429511 763995686 789917538 676692190 765801292 381960777 644665513 699829033 944358124 89999236 794313193 184757675 568895739 980082567 985517644 31396213 246613307 88711663 442937308 562000922 600269056 471801671 544220887 210857398 973156535 877132354 916440220 587635264 679196236 152496810 961375488 253823995 350366732 906317907 917131872 541578646 625862797 857659997 916279118 858550946 869708057 570617897 893453210 526064222 623144262 336671991 676373008 811475014 901004705 541481221 630153832 148104088 298704924 796698817 877232790 44096882 586275704 251414428 854850079 117482638 220527033 343307141 477633391 982512129 986681690 213912740 854055646 29576274 457828609 905043175 931007028 307549177 917698251 552673906 906066866 907366699 948549374 639484666 952980523 215958671 317318081 873290317 962543677 807924245 909193253 895649386 921721478 837537219 868285576 587996739 649944015 472528650 726670018 222210738 873815690 502480199 622673311 862540198 934692392 471604011 642799483 496458769 850315938 775525418 820475726 91137725 731424453 537935259 539825902 414206742 586161542 483184794 987077117 662578813 740543276 458938653 593605483 354114545 546150264 756096954 987759301 992107964 995207238 676905330 978845377 812744880 898027381 293546541 850176806 899691683 949088257 645800792 878064574 836485145 975928156 406750212 548340087 960904740 961779326 983129202 989986701 528431812 721968981 693821582 803393506 514714984 704434986 674940100 809765418 250099845 266228700 771834906 988338692 993565078 997209744 713254614 841595549 328699161 647794757 372405784 740707650 288750967 771601106 190019026 965323637 384249045 537879580 872750986 987469655 418095323 969063392 807029089 970791685 784022367 790440603 68371716 602581255 304373382 306766220 562747078 960465263 868835609 901428480 622097371 747545121 828784350 895193702 597620532 886311965 140285742 845503336 536277995 679702120 229064388 879358103 919532332 996780185 86616185 176957650 497478981 718317745 94699990 728943764 764406062 976327359 284325524 905828856 181735701 787824367 47116467 665262858 862857301 938085628 910633933 978783819 931301113 966649628 753829800 999256456 812804341 846310447 437356982 924770345 58812896 725562472 160086276 476728531 591981354 982041068 898340360 992247083 12722058 263877935 459499413 931341806 329207418 333584504 868539874 984215008 92430317 360377506 855705283 998431771 847765101 864190088 488108847 534902416 496073747 841698909 105351397 200061646 718779339 979074928 319876636 812362674 493172115 651341911 991562564 991607981 511784179 873370940 357375389 428096422 931879424 995697468 385176071 645122238 125257137 486469123 836921784 928535500 455783536 897123854 407718683 574353774 580329144 732967891 211264857 753394635 11354128 513852624 978713991 994081367 106477127 572211899 504418601 836901236 413973778 431801651 61564478 230601960 155397328 600678924 730930423 872573359 86729992 706234605 547474851 673473796 858195298 938860874 767528784 906466032 638662063 826260197 704798253 757102599 63416605 980434459 341118522 689817740 647626403 730414859 331755088 419253172 140722153 855617708 546193206 574610762 88769276 547161351 900085770 938101289 788448669 813910803 694579782 862055960 328040250 452043238 390675172 395773560 922798480 956382022 467847234 877730197 435434217 794450064 251942457 722161667 231076119 978713811 496708029 826039103 159557987 526696970 24909998 774331464 934241869 999106601 267818397 518610278 298107451 541103210 858523429 979509026 288630988 979883368 927195039 981995895 712396908 840663980 389531711 499414548 60536451 700780787 983241728 987462402 585805964 615899601 255656762 608606774 560064661 722454484 684853869 777295025 20216772 415599841 166016537 352414219 793617860 800004766 340927199 573998731 105720024 540130495 243673 831097601 405854054 674620511 949218011 972607005 373972229 968423746 389502899 854840609 528996583 767675511 977092169 992898029 845659159 847359369 974909488 994693053 415903262 985185116 64988786 507098105 778713466 911439817 917567441 959040174 343457632 998591528 941978945 961466380 913018415 994974037 214012295 447779039 966569991 970962380 412869771 975606391 558622003 596519835 249291194 557314524 433111295 880351271 518182719 586993104 65404286 614437870 45183808 337620769 419613414 538404479 149294816 756167997 164723670 930830887 985050783 986353053 477456702 732576949 368726557 473601023 3458717 294244295 151169852 581137648 868384826 949673724 592013238 778731983 845941068 948321600 639646140 959495899 754198311 776294262 875279520 913058066 324181666 387262855 501414262 907552263 977833252 982925388 443713081 526187107 389812642 396652418 7360363 641994287 347164861 496635961 434947884 873189970 612840944 630767124 685180369 815984571 517472561 960164665 898197095 962364298 893070082 910569369 963794427 985441073 95222778 985102933 591705454 986050602 354906210 619042819 647096774 982571795 580891835 740383801 228800732 276230634 639759149 760961247 187204630 222990495 174707174 626445672 727337923 993750386 917849942 997995126 713825549 842560416 873536210 929465420 527815726 979304451 351400939 628737130 565481447 654743269 97930836 579181354 626452947 897938305 615206451 694296642 747489399 758713893 347033108 554864258 182063806 942711604 765801973 935770422 574211600 687549738 75323280 685717657 530554858 711405305 888840198 978727120 250108357 731109708 980091723 990533808 342048205 928595502 324176731 560816911 512056975 925371000 664092565 778666418 641136231 765090196 669678804 737022220 678771192 938627971 524234188 997058253 302478888 767775557 169299413 822546794 479226999 997527767 195643362 520941661 751049691 784438944 891972121 947082409 869068553 946117375 481931062 942852437 437991472 923670847 453500662 612536471 281244561 577349681 428371600 919290662 697784450 735258577 836486074 931994652 620682492 787618757 572864769 965785825 846629877 918252536 763497085 927238381 196180733 575981700 62031629 335265394 205712076 248914180 642952439 652547578 698014487 837015914 419228003 701400589 340475515 856033012 580219124 943101961 925178601 988233549 263306150 857929143 227696853 409697540 612946050 921956983 19619224 711688443 150223402 701339028 164276849 520850968 64416733 723521516 605748019 869975291 414861932 906368097 217282603 496937015 802617350 899802516 423273189 905536637 391853738 762540235 348534364 790995706 407405637 979669056 369278078 736474784 922747189 942229260 30772236 795036392 587477238 618887645 162717006 593047270 281697280 622636992 932184027 932200233 815059245 875501470 26114237 58402438 310989563 651417121 856154480 908884408 10425792 247660534 251230309 873136754 365467838 402636199 62688045 936303730 108405211 765771055 197762446 844687792 709525490 736398223 479447547 496797396 502938959 616559472 732123178 846843234 139643340 521411316 91548135 872689453 608949590 834665839 134261684 236809603 143395480 884267578 866466409 897539026 170347105 972823655 188318163 959653895 734538606 793794136 761381635 957145593 802294335 821923753 596409869 754059162 911061293 918471988 427855222 627527066 772951506 953349032 822683162 855623850 672590535 829672960 818124831 864362656 204756447 639488149 879324605 941779940 874131007 879811259 78956406 472651464 651804237 913018031 882311366 979491396 100600100 387234170 198279105 620519168 451325336 939685870 177422737 965909117 27304138 907412419 598730534 732336829 231960924 984033961 21593299 964092392 81608066 735648096 8417514 666532495 939841765 997056033 312940312 467961120 641325012 962387687 1774857 71548030 707537773 976160031 811096299 854869242 890523509 943724342 401389558 518427371 143084126 302948597 560037225 817000687 50424768 771304289 330548362 402754750 385318263 545725849 120243217 288535715 820632031 922372212 569746373 894986748 760318238 827087260 943860120 962591939 82307941 642028309 88138637 119903411 82616697 543529906 628224354 700715373 302653977 896447431 243534413 528675295 24522881 852463472 50998913 369084139 835061651 840912273 401634532 438847786 301594892 651373028 279826975 378122102 105751420 364194282 725119852 937052844 292767303 958787604 739504576 867035756 418796932 587797764 72787803 710345997 634431415 880665883 369798351 622045488 670770464 812305946 932851547 974636834 728445970 778001749 606731146 620611681 839593965 881542636 874816826 936592594 470051655 763963560 79572243 413039069 577259282 593938822 169183666 747238826 679858720 984908232 611887338 908460346 581903362 826533235 498889375 554308252 680846602 838521757 360121921 895608511 394492584 727239802 227391439 812978190 862275866 867463945 243389771 783035251 719599548 919661447 201017382 276826617 84439405 334381219 969428077 996224804 615017358 949013784 168701020 347800632 560900079 942373835 526618387 779967444 181894804 523770963 376744618 644235052 984512408 988665573 450565224 920392174 331494955 816807315 896461126 905281063 940177621 994259669 770770149 801617289 794500655 889957878 219452166 521023790 124915878 862807462 685537761 854055301 777205016 793496626 861131520 896453815 783955193 961732574 368744812 871344901 909715528 917052642 902223902 990020817 383666147 479530723 840852759 989578209 346482331 576250510 948702046 962141087 870547988 931823923 546065973 912355759 501343272 943763008 248186394 544489049 55337361 954704580 165021386 803507599 193199707 278028857 650768811 839107727 807141243 856906248 268027525 471142273 918729949 984593199 233039687 353929943 878526696 927884237 45709107 155392823 326749492 926096783 42653769 374508189 983259126 994918982 273577267 710703283 760690047 819499772 831689962 968379323 696987801 796691046 11062518 177145181 535155322 596802780 830215204 979113670 800697416 841686810 702432425 834285231 19437063 928077541 417291122 946918717 211737043 219950373 747092350 982847124 682469088 758858146 780757358 872757482 274250262 691960284 760961924 975160794 596845469 633406596 759323292 785424975 518981432 568529963 259985870 395192736 163347371 576821258 656863302 952508905 679198795 966349731 135963155 323837417 638784223 919613887 856464083 878624804 341659965 850617366 293059704 742294555 632530384 889568936 488258962 990342706 912478743 985104843 567310452 589919294 455609020 515730120 66262701 204824257 960109849 983317036 576148944 689609555 686011522 823110373 446257445 563233103 496199472 905659568 210076396 416839473 915419758 932107921 145162167 779612671 821797833 947330746 454834629 651004590 240991983 519663821 888705420 994804184 689016215 698515786 101952124 324654169 430508557 937445094 221954341 581749093 768512561 933312027 160648270 882195500 395619335 671618391 767969057 814909877 49479957 979459253 336051106 730914964 764242596 932453792 398337396 911477698 840300495 841869190 220176138 638833335 197690391 775450947 933689185 938195252 75376549 280825518 374823665 817004568 349812910 369178527 688663174 975307579 124770905 620829543 231600610 912212472 980885457 986525231 118960852 259537765 130665741 630650993 765496037 820201921 212685745 270380172 816940940 930826645 234031925 929082948 357725771 732120503 215346644 276151637 377239669 413406806 618244559 716409031 848101915 878010056 309171446 734295347 470474232 969017655 96221012 192253790 385959207 515066007 256962208 472120678 264019072 921017894 858165929 979757257 283192484 790073183 302370742 492602643 714751170 787970025 833853022 984319748 572626186 969901653 50655173 458448574 216185470 813289510 955389128 989934887 787262866 913921856 254682645 813022822 415558452 717538735 79821694 219645728 137226681 226924161 154732267 798220980 698183440 836736917 273090957 687555845 234789764 437408006 107055727 287798950 564608214 909554420 714178736 967077367 834579730 902644358 669193395 889574337 596314983 916619672 418638340 616963266 625602382 863613690 324293414 808078819 578632902 707541423 460800745 470530352 571289762 942522806 451901379 907634172 387523907 775054808 324165118 928180175 376858400 387015428 512535063 603622734 815264043 837074770 802929488 827162786 284617517 761399473 69958081 597623705 140240824 214120455 2441121 9023210 35443767 944580768 96706578 940751581 234080893 964321957 448926853 559085000 324482146 940332169 825052559 869893095 576237598 998653402 872684322 966018438 558835295 811780988 806323579 866626932 730247105 800105143 324146929 637297872 457299820 658074902 262269352 500712961 431405494 657901069 447673047 508915630 808461879 948489051 466547960 807354229 605501738 625882130 31590052 595087803 160360499 355193311 249049830 959176829 145046209 628230779 429968755 567147362 207593320 890703734 759789219 824722006 465175799 547322463 259643128 260007274 633297976 891961767 497609253 854003084 990499739 996525564 297954844 986538730 459319249 715030349 125595876 444167555 276230926 660496429 106076180 503122167 694498691 781568804 702203010 835939454 208662490 666896261 715127170 751443088 373002385 839297192 299446711 305734247 513498808 615701144 704481190 787660226 665588460 994412408 576470766 982685423 570765079 906336041 25077952 422372360 180272162 645813116 675572312 692104177 223297694 982611434 918733355 987651035 323758768 986174455 846634182 948251395 935815410 944131772 758362636 872888646 332319575 954500724 110365615 953721731 210224224 860117377 599615215 961044293 30522503 137584466 862976156 893092081 193335799 441272254 517374866 642206103 504669503 907797292 535861332 632993363 280774824 797880230 920459698 955092620 459905002 968217185 310230110 869212451 936258976 992869131 575103813 610664465 742525267 909825460 936304555 994598629 142499567 830882226 61645309 327510558 758887673 917035200 990750203 994495608 19814327 391185762 397466333 563888401 270472625 322409994 250554909 390483005 315004883 902759385 673919637 787920306 367515936 577533730 706632404 824278013 55769743 976503857 775922209 814442182 88049856 931623518 215006104 582946265 34379146 777641465 278836548 975967028 768602 72731039 170796234 697295245 100345180 530102007 831894410 901342388 682813258 924512158 584011956 899188086 755131928 986941721 995170267 995763964 756804823 827696371 215888448 590514415 408319183 934599134 338035724 398552057 58003583 720918313 445856161 698825249 629206779 958770747 504031423 930383604 48765901 526309125 754682722 970452217 467538022 572869857 800087985 873794732 89464759 388292113 791753929 957484646 14611673 613671743 253964412 559247811 709858920 789619589 381007010 551145687 580332637 881528340 860467848 914700164 696594744 954337790 979256151 996141611 499839537 591009248 654905727 742417771 506175996 549300925 45811505 288114623 338687224 651370511 47032258 548588054 337389880 613457812 395304257 413885613 112612203 600980303 734910746 840711282 475362763 747771429 636989338 715280165 786237268 807868784 734517348 804287990 538444441 695234770 188948111 325168264 110386537 738447119 953814865 993243685 506693842 793153712 286869789 957554940 528898780 832693545 16380565 637309692 339081316 391885199 842295476 953397843 152462824 509793588 980574518 986447001 650383525 654230057 522389064 810961807 733524136 739304904 637942932 883473116 174279232 687767089 340875491 558439254 208016594 830679704 69126799 393802815 240629259 273923959 766546583 901706650 87735784 616345574 30558986 84019053 908611147 912374533 573631932 721574079 387388433 851324404 775842665 964376824 511592263 834127531 100030733 498619363 899728115 939895723 539106634 594495159 397917823 717809452 444098595 895433848 290591527 389909035 595139081 693368646 23743582 801628953 290053656 887084975 222841141 646071227 467493436 834888912 479438368 870420273 722914432 778655093 172764796 672106998 768685974 896620980 424290404 601426307 728016413 798364691 431300287 767459950 53371386 785541589 507242587 600635954 162931365 840243932 987639134 993134647 411944774 478172953 926606766 994726979 734383942 800404545 282859152 973329727 495369148 822284593 836020873 971716171 122136281 394513996 229874083 318803310 324448075 881282041 221129276 749741420 328882628 717638061 481221474 608580709 734455840 941181051 872907231 945191771 789105947 901217090 19333198 684282532 728210561 760707588 676154394 777968074 895217483 902775046 423766580 914407151 96812604 116264651 699185168 898065405 85319015 765064348 246228694 422301589 465816561 699843590 2116566 544004146 602744463 979310415 306744513 667451557 654914501 964257955 703877664 755609672 192730968 194042401 145796885 996146893 555547016 775884978 759088610 970324442 893604070 962754423 228452886 731090995 740078346 822054328 697204691 949328897 369334043 523255909 128845258 761935637 669759055 730660221 467512749 705855437 277942525 460626585 749661087 844691984 454481847 481604812 629740337 694865310 778620193 844224322 370970717 693847736 447689801 571639926 995982016 998215338 608602985 915396076 748020893 959432791 653838225 876987900 868958399 942596818 21151091 966689390 262715647 887309694 353207473 862417879 115340359 569935628 17519777 898692772 951379236 994053264 917397055 973963655 834875422 970444806 514156165 629936504 631381447 821973092 878668170 939605620 130620257 534825542 213657478 698906088 310425504 520422639 496743178 567990718 962428104 975855869 314957690 983496644 417207832 616519976 860471805 989223530 676338832 744594676 645921025 764962682 82059799 356505490 303106324 808156148 82515558 357512327 969468047 994251901 571803243 987849175 408929012 538167727 534143721 961087852 455991817 601193645 315502944 493670144 594234164 947535311 157928499 296300601 108111969 432552929 931860309 987688603 67568807 354243747 849196637 888435614 408596402 985258706 886717361 923413754 760444565 928158516 939583030 958514558 427879029 710718791 19899825 174023313 378222260 525216247 650567297 658371801 842133625 962952139 7509602 884958856 842106177 968141888 435613532 837478070 217129715 248322300 906761501 942079693 854620035 887638267 933741019 991491363 624630994 680596447 998212608 998431845 740287241 920497199 458028180 570703006 478582082 995154191 213758862 580300141 614182472 778580492 892034335 946620038 778244736 946996656 173201781 353642264 21130954 80946031 415107356 553081484 276424048 417796346 134068974 485333444 203528855 920243902 978214616 996539495 247113774 780359223 346581096 393554341 691484532 767357149 594322479 796745080 21030198 205867303 104617357 379542249 380011444 451486369 621574578 916145103 782383318 992231855 532194470 907640374 821930445 893230527 497954083 865196682 221075951 584009341 284580386 883075859 926278152 964239940 439764222 522905469 251727424 444655328 54832273 305751257 620241884 766403758 22304356 746141627 964714438 970857493 282759881 952909135 489597322 542083735 415045383 588635666 991082030 996863122 222315747 877792923 925661977 946204257 434117787 615379283 226227560 772089874 362870282 856075341 721901184 897074270 286045771 412171792 124914412 824276810 983285963 988610899 868178858 897824087 972563860 988083066 554325155 952144934 934990820 977093808 654942260 946413380 799306516 995284461 922757429 938726138 672813910 987238049 37598845 537374298 703920523 808311410 932059603 964148467 963749941 996879256 651242384 735149910 491552401 735801081 681211612 709354824 154455631 251713677 317343661 722201048 894872486 982708806 198102846 505532156 951226580 979157556 764912219 873348930 31113612 851395802 90711712 947794107 57266006 406845906 238546981 753737457 481802023 981088133 822899879 879623225 344677567 561963975 156022116 571394812 215101152 262610081 360497116 988922023 858695068 955473838 226746209 460324319 565973798 871227247 770869019 865675677 148114084 990676798 518384095 604783871 715860653 839396814 642450265 656270209 684417418 804304010 475279438 683009215 621844882 678458604 975026950 998787671 725078287 737604043 231749561 322461426 557511480 585531666 642066870 834161541 734381540 788727162 194814839 618443263 255141473 615910565 864937461 964439828 287433585 829493276 611357045 820100742 305982925 684730375 823896851 910661925 498910777 600268603 697099465 769667416 501080300 623960642 911481680 958126011 606714636 859579464 113933597 262253745 279584342 331188971 315185624 572048449 51521305 441920750 41348349 631996299 221474980 461631643 711681282 960521112 450707075 914977852 850687515 881631099 100844058 607561354 326928259 515454778 16084650 431664550 500189119 761348602 518310506 953263673 518543712 774101596 980926954 994702532 603594186 656706445 688519608 929156325 591069122 996322707 510317963 525239638 190822851 428807199 250840224 751440485 67825573 355532182 764897041 866574502 272884338 981470828 791448032 968044891 326566886 475441172 207008056 450268993 959523968 988403508 493850644 836487112 607012133 741493308 308654147 581603702 92546890 530765297 438108019 532106098 431975382 867930117 10267144 928120876 355188276 779416969 819757801 987189498 618383342 943830705 371969250 949766889 720129409 797883303 585697411 994467234 528628479 585900097 145397508 652811256 226676370 451952363 166958200 345859618 312204664 930011937 325630730 816085909 896478607 963522182 553367883 590732386 243085300 360983179 253884897 727774648 904948358 941377752 375503358 727449014 20417075 799240541 680294949 936236055 743271337 914182288 618302951 875306167 120030985 865390353 748579146 880246037 908267881 910314507 766401335 854189712 354315451 522800346 764132925 860658710 937750912 958580304 247209000 667145868 123373494 267228418 222405175 466073695 480778344 544275531 836008025 849322761 215339918 407169550 27704174 822979748 37817111 835636618 785325112 863999432 59831978 744438426 435783817 740079771 14592876 351040556 297836874 742052544 16677977 623614235 748997109 817805271 874107883 908933358 497871653 617133218 517166605 652375524 972695548 974041689 347209351 510454771 659162287 859266661 372482372 809551557 599589752 906244608 669373936 859487317 100440397 885765422 770519532 801952672 206699841 973640483 639290451 843941579 191041861 366515899 454297237 883181351 63227268 259417566 209993564 915284518 500305906 751236414 984133544 989227252 741601224 930499306 172999405 797150529 831389495 979729297 431981200 453506188 710911960 978372312 673546863 721079536 204347880 907367395 292807850 429454348 972489477 995736415 272892809 482111567 774323645 914862237 282335819 527070670 750828544 915896409 947692104 975788624 219956424 907660713 690014045 773487817 168236948 442734934 82569220 848141757 682299838 916765263 141243480 256612884 804378875 843233414 744253102 953252659 696655295 957382542 339481702 496028820 973653949 979512124 638647571 922398006 834979097 855077910 599515293 879254697 176865321 958749651 354583150 563709119 473025286 540867951 880991333 975190028 284738934 962117192 889874689 981351236 254776453 796111466 570190645 947526283 859306462 996680914 365120327 382998880 794631858 823877912 270559711 845643273 250831228 320946047 24422523 500363014 824309808 882410634 390643418 915411599 593705266 948479455 325700484 925197947 395770647 692845303 627391732 651437315 605811970 762022725 309206980 376268710 758696998 972707097 468116527 939509471 841713381 842349735 586291902 798845033 319643474 892731884 203530415 533529166 779653138 986819239 232791082 857221560 281508497 998771138 830520441 971639831 899506847 938563064 305534694 560638627 427575110 798581782 414691365 616217554 424342361 754728238 258044464 664090073 305598288 833844633 648576354 839540967 216707453 332874094 931614609 998204379 246955899 766827343 486308533 600627350 1611446 778088939 564194877 655115857 131804540 842909243 960734064 983854753 71541613 615784868 827257217 965885088 704518448 922860690 74644320 865000557 674467192 705654230 511189824 749439599 481957308 902675913 200688873 504609183 692012728 717706141 800033469 871795444 521042455 994929164 504940076 630454753 991152625 999339420 917513573 985218701 19369121 264396484 183794191 539408636 892068455 999297152 723675526 902545125 512341405 669178457 424827592 776825011 526526718 707660270 277736030 328351974 823894825 974693839 372709421 500253642 767894090 799789011 761019123 877460721 788036290 874361851 428177613 992542807 366566494 416350747 588681083 736263820 111797662 478241142 151776106 511164308 851616098 998912730 87203601 178013602 624743534 804418062 45545647 520649813 700918869 761851990 128981777 522961017 221598769 524481941 430786750 951167588 474730762 868559677 976994324 977133457 101666744 789980716 165417723 193062445 466194496 584329495 393312089 816409307 822969007 851008423 523349865 982447658 45169962 133176012 920981022 993555543 611335222 648705879 334629989 969266021 355461782 751250185 520630508 586476350 243688231 339823110 858606296 950271115 314967071 831921851 982815129 994298982 59368227 546725105 645285679 749393231 335364514 774349407 615709176 676537766 740530960 922282066 852226783 948394063 852450742 943122735 128267152 938939788 345819394 575854331 700009065 982206594 570873921 976641195 36504871 957271976 787385270 892034932 175174442 416336688 483094367 747354421 874182292 884799493 284300146 900704369 930318601 935381024 526109794 841770000 773395944 965574958 849109787 973537751 372327832 486711494 480934342 836463016 999374436 999379310 971773963 980689313 787133410 874603546 2631971 997504421 479893635 524717144 441442215 912111653 383682748 719424048 911677797 926313153 23545427 783405066 939814443 998739926 453321203 846191770 978686862 995549094 162146619 669022440 721770743 897007383 279365766 666964504 246607944 432246839 491057711 617481481 325122716 831043762 948612841 989700485 1519962 789964129 741546931 919976571 462381515 946338048 589346951 880254176 237966664 545617064 45813953 141694558 730119705 797850934 57423803 297084468 75924118 967958827 674923824 827189210 923071595 926704401 689014953 694263526 528003562 668149293 142093816 761013679 930191000 943663405 166374974 914909842 101044586 899944827 677501672 894181290 296320441 776578873 660951959 894677940 950888215 953294133 845170621 884791425 564475930 916481784 994052020 994875128 966839906 977270176 943545311 992448262 630642372 960921536 164684711 275248299 846073589 919310396 906306640 973576321 78822960 610535343 314992765 812884865 943642803 953498450 967160795 980517763 456275023 518132684 680933267 987563463 184803585 868566995 764353533 841236374 660074504 743522428 937542256 971837957 183895350 944419651 608694084 643592423 69184881 825944927 910131696 917568764 988748237 991253400 346400420 687096116 410851810 705232667 837976245 941143457 32096065 859287623 439337705 886655674 528923723 610670665 323340550 326818591 898588040 929407748 52912778 706613035 556969974 804344804 122924186 416881373 968122660 990661205 655788088 735527785 831458755 877904688 529544913 996174592 63512061 831007448 552338438 584028293 360683589 795542867 612502585 628741319 311630118 621850072 248047181 696889391 913633666 991437468 424052082 823674978 539338270 695286361 849337365 877127325 545988015 781399763 945964788 990467855 334256804 379364276 443034861 784268942 778506226 785503186 414892833 765457909 778088954 960484882 324816500 668938910 644031907 824393474 822241646 930547418 969794344 978523523 50382677 903252959 403922610 546573647 524853833 620293638 868504000 876267325 667848807 709104299 935746410 953250638 683930168 892450763 497340875 779643153 655619924 915382515 414126555 698833927 854007344 977384873 511697822 668001556 445944111 824567396 817792631 993984645 672555442 982968340 569955443 615975658 418233777 831991883 658903656 925740010 101779755 977051735 725133737 732012519 800217769 918780686 377254819 648517903 92578261 317021325 517312305 639420956 394537293 996795809 802617431 847977938 595177168 749033730 428596168 576171880 595190678 708478076 481668706 827822527 191225484 788089809 308576731 893092252 925181101 983706417 821687816 994872513 647080124 657979323 744750578 744990489 123591435 410298925 776071383 895757403 284517025 707902510 767713307 991148412 414714089 514149124 993579953 998921466 85689650 618347190 760837847 943585240 810291118 828761848 48216872 366081219 123727830 213872042 805940470 968467808 494495866 534757133 466231771 549810843 865631361 937305338 277227690 998726880 840185315 957121508 683679262 734743266 832160976 843487572 705271520 964244148 263500973 476545169 929847989 995981452 790811646 967510008 710421999 838746850 792352052 868282785 15742560 187510616 447434524 910317287 801288342 806117602 523874859 972035567 313361718 862239837 900275158 932937392 688038490 703305868 177232708 865769266 313268088 744728931 450574767 814680197 478334328 736926104 699546913 995861363 861492120 920318925 883785019 886096521 359661599 794251154 126781044 785593225 577853420 940055144 111776549 177903931 6020907 924368426 656508085 963252733 674231353 836234083 960147366 997125355 928114909 955412687 658502008 771025808 488583363 614942162 836727004 865662189 365966858 812463251 641233616 677704475 787444746 808584202 998960398 999278132 741582713 841974958 911290529 944717598 260689245 624452970 258702609 689568050 963789798 968128355 545256233 918969988 298251527 800190294 387753579 886921155 25116387 326708924 118043446 592696033 559393039 743507156 933728991 968098811 995420733 998417249 394881457 709746319 487265309 757437436 909009644 981632628 803005790 947891385 171643893 908384264 838209253 914187242 110368900 620683419 45172420 970518350 249909682 594777197 251419927 776555360 68504195 803436394 45563239 418789719 775252086 911643865 776799188 784850086 842855235 872592527 886720080 962394758 263007535 882387931 16910062 96896469 315116428 980961885 185525219 301435694 255391117 363755460 893429636 922677304 589207269 706785067 341145676 831458289 754808905 888683202 622158225 804314624 613815303 978693109 573894976 650902565 151052194 255436260 211289933 350791368 247118104 806022910 422438753 754198849 888846631 948876489 720774401 917469150 601797570 639035418 879324607 883480194 629475251 833459981 439101451 836450441 737728731 762106579 455536037 764178748 738003246 831573381 669434539 765401758 815989604 918675949 45919995 311086464 999364246 999390004 571350787 964760992 548345445 894735117 802187606 879647163 833696468 891088787 704008466 724848928 443687655 662824723 922430604 981355860 392312636 769616349 970968880 980874128 785375695 956372646 890456041 906514843 73811569 523754194 438994380 498461761 575558481 816807872 363764767 844373619 550285420 796716007 665164578 901855546 305901871 731281357 435683144 460349415 64427228 806030541 242675096 759815517 760064837 854239333 191379113 298227534 922477238 971953488 338843632 455953488 98501883 549753893 751563456 985385303 421723918 769192974 124793184 698946853 206772941 720217983 456387999 837211097 90838075 964747095 180758418 374612784 702268575 939861960 102409441 439423226 408656459 506463628 261809563 935797433 304375584 452462308 96101959 139894364 994330339 998125000 433537269 834977056 420683771 462805312 715052148 959230365 144638293 941919643 844774962 882945302 802213985 970484649 746783264 890890058 397418408 754651090 121879417 324931648 981838269 998600107 755525207 800398523 225926780 276355663 378608216 933701160 450230226 602432944 656817543 845957059 346058356 624367420 368782577 493803877 682806712 922535478 330106488 451100483 775920284 942803635 691399217 827461497 972636770 980276251 476245606 791503958 919898332 932208782 364531610 616317214 29853867 711941367 916462740 934064591 823216801 923783032 873885735 996915275 786981733 937578431 787563609 839782694 105510223 266754571 761367193 997122968 444330884 901201434 97228581 429489933 827628356 916197869 782693202 853484087 894034145 897227513 768944515 914897337 442378840 600272135 943543447 954814779 941036978 961354783 509285412 933687540 659999100 721003246 615341612 926771517 689802463 776610347 280616820 869914308 927354926 990759820 695661872 821042535 387719347 787820308 680686197 992556688 525847826 703498704 701663168 965456565 599115034 821853486 788617359 903195917 845676947 856316058 720847201 990538331 660905010 921685524 104565668 681760631 246267079 421023825 915849097 983404687 112381161 707512668 510519515 674927846 831225169 951092344 530826977 551480613 575921385 919615871 144229655 324714022 425237617 923564532 754365214 774326128 354960227 644530539 826650371 956130319 21436516 345764573 151791750 714750663 370830987 484307352 928593252 952652679 428314634 972055450 118045855 485698793 532784822 889798864 901041442 947116419 148282964 455625139 316523475 508346151 836931206 950775456 84347276 548081301 450232037 629674139 596362020 674969229 390270229 709047797 438093283 765324524 72323248 733501917 675135805 751510011 634406073 873474153 661307897 819842956 82943431 963224284 386108523 567977341 791523941 915361393 152721183 843103397 565807759 723975109 943880892 956254371 458066505 703382092 883021992 916568306 227813108 553813956 561325780 585277167 698581136 761621886 533590826 910712817 812497372 927644919 907750340 920386148 462262334 660926936 222502069 638785427 169745990 711866161 592168617 664057361 321878807 862011139 977093578 998542355 532334255 740317647 333717954 384054059 823676095 985732688 836383041 853046912 940020901 968408469 429971620 791093897 334986319 554989944 156511669 984845290 457773270 855170175 27113846 477444911 868243635 992114218 507615482 989283019 270911747 985880673 858862497 930867207 933313284 964338441 308627568 359837389 470776672 489622488 384279315 973993222 223263269 567958044 376872523 956275999 393591015 770975010 738651723 972205073 32908542 696661136 264093511 800607068 534862966 547750357 284080841 849073631 625036577 776400116 66354753 892083654 148344339 785992160 287119460 965568869 389924345 414981731 295754615 714601869 481715686 826970573 636477188 761282170 282167966 589842652 855938373 976663746 416393486 659058365 81559123 818773593 793829108 995699408 701788190 734742200 817574732 854650424 806087882 988793404 820856846 835536728 392633730 965501210 844339751 946746378 105666789 873245639 294335018 546217635 69589454 535305635 836068140 936128619 506987322 780002113 453478288 723323868 221960718 249589152 691640214 953517070 952221919 979225805 689528733 796596592 287734671 496768950 805967969 922004585 201077449 466742426 560222221 877821074 574076236 927583554 340707988 993297721 380198310 612810170 183468793 424876271 671480661 867243226 894327439 956179830 52003681 192097511 533681924 993270452 118967139 595391189 994232527 998605053 124011327 272794207 27498722 441820073 343233890 970046851 129575836 365596860 35547608 166195084 943994170 993158513 642263630 655189296 207641996 357120007 248674641 747976400 362861859 461249769 725278118 904173283 838453797 894024048 67283888 973563581 870929610 892100533 789268091 947212280 557409496 731901174 789848320 921132565 175807683 550709812 989303728 991720830 734667658 872328802 636417149 800259228 498689469 944738010 129223097 653911425 650451594 944998766 49263378 682915337 818638365 866607251 727889811 925963265 609407676 949349566 472142552 912871762 49106200 814647402 403785095 874328545 121869696 992881078 196390303 949274887 111072412 530648570 707871820 713296124 864082206 894053544 660276139 963450195 379789525 767041194 605975045 895430419 604821976 913181810 209225091 720867123 558693884 811975450 108903050 554339614 479042226 712296580 60693327 69505309 790816196 864429729 318868205 767606117 345085304 717955883 4905884 705459424 769734146 876062156 990931065 995718612 733008472 793587619 337186783 374161700 611501092 636458589 56218118 447137116 218920039 786784503 281702985 963513929 538351427 984518287 237964082 298869706 891708625 932852692 696406409 780414465 765040705 772585613 296413266 627057065 408410649 824534617 462765860 962770026 290360588 443836362 478468249 687915932 58473059 266856880 539051513 923182275 391399817 524473451 3892986 537193096 27874415 746028965 588767730 933739245 336552137 983645401 648944606 745154319 643557163 740443792 626085947 888268713 743692721 865516714 6264730 30212359 299292235 529252973 189354779 838384148 846431441 892306709 571106086 589053375 21189470 428325925 464737087 979832952 207404765 406473104 309762580 761398378 184688766 488124601 588312568 949461534 986668346 994308112 681647872 814455003 819346492 967933930 569124203 929303115 374744986 725288489 778238407 893533932 306142717 446805830 820231521 849966913 145071217 523620397 34697297 314075324 567872972 888706677 523077635 865348585 230930171 606545308 679201664 907859817 831968069 954426631 924614458 947492569 345228533 503695371 644251041 733650776 561397500 971056279 57743603 269992554 737432207 756248490 514297912 685992061 8875122 160754665 976603049 982438612 583362652 957149636 758549244 839729969 59066022 209766422 846072193 995093234 74527709 899718768 37369702 858482591 135295927 430816067 74799429 995799982 389585771 953876608 718121512 736268123 712654450 881189661 20507671 952281745 155252018 497073135 915201378 973354802 737119921 922513972 422053149 510208175 550935806 652768502 419505370 469269699 947996371 998332212 408287301 617283997 377120506 824198648 588687438 790368348 288525146 333417706 395318351 464145677 409661495 928240168 156517286 680999816 851022856 908400109 585229812 675721419 910271789 985984318 70827740 204308654 439913424 870466310 607532726 656293533 102824575 749995013 60903908 957529009 577734395 616237642 69388542 527916801 9234619 462469624 111142546 961261709 6711663 160867466 490285261 957626905 808653505 859135563 101577685 424546181 414923548 517304048 104474906 479155578 864797357 934220858 121706057 307630888 363383239 949849120 290325210 578078193 975891267 979619008 618222402 707621968 689611568 880466924 874194426 951284847 478358194 541092105 778778965 853225967 476615194 504364067 670584564 819737246 965073574 993188911 377699797 898146060 396058715 725277932 155987198 489584357 715348708 963242493 28733168 782555026 7765006 207981890 461802092 653830945 806797592 818130952 230950483 354704111 734489166 991858788 128103104 385784249 234153051 872057507 889321032 940880564 465225986 852432195 138294919 380760640 449857606 672572341 828838740 830446107 668377903 768187922 886548875 943488285 479357572 697218387 688549383 842497275 686961122 842398595 789346267 936809330 343140275 951110507 816330153 917524101 316902592 831892599 819303768 821888176 47997331 863718854 244223253 269960405 668124521 850078982 661842032 992012407 145227355 876229712 51624907 784035388 449969238 939383300 665802179 941857086 280814738 406633757 136425151 592722008 245831744 567691561 550491026 786393764 215474091 657753200 477707393 479045994 816155025 963646527 472041833 739096302 813242303 930273402 583277153 863220552 247247193 564930933 674858329 875647680 792139760 946202960 800150492 991795251 912596718 998580408 644187184 919259851 267734545 754139902 562347200 650682730 182850424 974974384 343789637 507160762 775191611 926199039 623217000 718761032 234820485 287661956 792744440 981566865 652700586 927192878 625235800 626351974 243469416 359209990 760866675 895546453 321729212 488990379 658979877 865145417 173551748 855451689 733270429 828816735 874756867 944929605 624257412 809534108 154819071 329342236 266431854 674808362 879822861 893282319 257077168 257112913 996321217 998706283 55957897 249627262 165961706 811874166 567014531 631828849 635532677 694656422 470639847 984602614 645602474 786789781 345586276 849750011 731641152 758164717 327336512 383728378 38270461 398455564 166222070 367142831 82451321 692978550 374953307 768553983 817916872 996535455 383965143 590179279 493367793 884071746 605684699 905995055 574531972 819203058 423248603 582308191 874606161 959819677 523851269 543475664 302976796 846051719 846030884 861185781 271084876 440769353 814256571 930411477 603238551 992998949 533568184 861676031 669427140 834031047 64909920 365138249 677870854 753567923 741344586 862677822 126873302 837640320 318238049 952518552 780508911 822908800 409222291 623161500 565840068 994639197 325250054 628199062 33155504 495429350 610760666 864084350 936971602 977001337 990455370 995052396 951666691 981790181 262997854 825199706 632123693 679174404 961026736 985796712 916413175 987978581 710540897 992431979 280651815 992033673 770903138 972108495 529853915 755004242 780166078 930605858 863379375 993163227 120483349 589568557 172810668 928928225 961408395 982087023 227102310 594915888 446925830 717572916 734150321 930448757 825425115 969896320 508940973 807663441 702092492 885831491 490612585 533314158 406528541 939489545 623813426 624144353 554344460 929805599 648523361 875469360 860789041 956957214 126653259 733708098 985531893 995471452 398578312 882418452 590788228 652736565 443909180 977067940 890349279 932898404 592524052 795978318 926560681 975721752 388977236 436668840 526910123 696945316 537577456 565336308 98909533 809602805 43046231 758440298 69615257 93592215 606873779 952685230 916868256 983888928 554075943 806348986 50248631 713387374 368326198 816157790 122776171 428255115 164214075 805004876 904998142 991932233 85428488 827015998 418099941 423373869 555283584 997042316 846512265 926430320 150959160 890892674 168516458 253966183 967308499 987499590 712095271 738842279 279709084 391415185 354216412 873450569 788887389 946437000 919332243 936929462 601896169 770118339 449876273 856436513 747974078 768412179 712696665 970771819 658724508 755513360 918696442 936343268 145439569 656815501 209144200 211637446 420649739 460740579 177884322 643830773 862055183 930120356 816003628 855569728 53915797 190552213 122380495 865219550 260868862 885184368 907469234 927325979 673213881 941365134 660610312 795738756 65525217 856560030 240664218 531388846 212487222 520704978 892559179 989740092 940067260 974157316 241623915 768213468 289142038 737828744 600106715 615430379 94029914 558820875 40800059 88877386 950513830 992683051 671670625 793375862 744992450 830619239 952842124 992488842 164636232 726731313 617924751 957105074 985868705 991042184 695654626 730300877 721253927 917038615 604727756 630243786 110824151 596629229 291924528 919089342 438081447 727833186 834295638 874946879 273186225 676098117 274999261 648050954 172973726 283062213 639163899 936847929 353222824 594239219 247917430 377005975 743171137 851335626 407999992 698368170 688701181 931469499 690046764 710821424 538683247 575004295 491685214 858725484 422907672 898658350 703106114 971950923 906841273 930763006 27540349 701531386 924613873 962283352 282573655 425885572 93735621 375924390 904188030 993958506 124760634 644378347 526495838 676554932 346660078 585915324 38596987 381364293 822042768 928357221 737083683 755925753 222233892 362401736 182466054 519673113 272993190 703019087 220659067 897678496 868935402 906154310 856308280 956519033 252670549 418819299 469286810 996109369 371244256 705641268 705864814 835638956 480543527 661976879 376095910 895803252 380644473 556877835 981284870 985725514 595488284 966051655 150668939 987189812 123271207 806897483 519574289 672653693 209706615 889495574 268382156 566213471 4577415 30461283 627136892 673978932 290157708 905661834 542905206 560671812 548956311 854494131 535287428 920138039 183196372 323998338 275536737 763590208 2020282 958592755 56353240 506009225 272561017 354054777 854401320 980863092 845873573 994411343 661001101 983624596 137650002 144429719 747325443 951982242 649919763 704448668 256517582 787590770 989075772 993222457 29962116 62503778 505886447 951586325 457955223 864509132 106453324 850008379 869087664 982544961 159306353 264362912 646279485 936683076 933372555 995234865 240153706 359172054 825573951 988419473 745893584 921141241 486245643 819791937 667376262 696293237 198283081 478072033 115326871 129114315 544332617 892794901 214199653 919162310 406894682 535324610 328474157 333469756 374784460 848634906 640012446 998567306 167513123 261264171 745594739 986943853 522074712 740143139 700881816 777736256 910782860 960904370 55822509 171343466 533929217 588536499 797841809 943537902 407450721 657556082 451097633 544975150 489119871 567961839 226622673 929900696 71999083 188130966 245434335 864226036 257913005 618415864 190071942 307970520 185972446 769428268 768862351 802615236 803727904 821272336 299641542 864794760 102002357 900126043 510746359 646083045 220039070 885841959 327727119 845951381 539409403 605360801 553687847 997570613 167414076 621024701 959026769 999235280 35185296 748501647 473788694 726657604 44975586 843253221 355690022 546055718 486443335 952843833 227977314 948288130 512732913 663523723 578763480 895724312 258112169 567133619 688358043 927307628 481618442 503606443 432622414 937421249 994619385 998817805 804159813 810437611 404788486 900031813 79183377 911849665 456081745 478297094 398636480 521323973 924333429 980015741 779203503 911368993 499806481 849236095 982285615 987260894 693654372 901681844 406730600 549873432 933972020 953282329 983236219 985302898 884621258 958945157 866986309 952986950 577093407 704593916 437587092 502746051 404597157 522169138 983748161 993418713 136240840 496224651 653732310 816029801 713294454 865729476 201806894 398972508 185182121 991485294 324806118 411002492 20762853 244350708 339810408 501343802 243834532 695764753 13667241 301466762 565939878 783815488 269758607 812426737 639299219 645755064 739567342 766803760 547896468 631369017 260846646 953949537 745175984 894865441 227268409 469033007 303738788 963518778 443254297 461880390 236865792 418416403 642983529 747638902 358937776 480191546 827347353 901384981 137265912 621728591 181623673 434820882 39887048 266076197 986601456 998082623 496451635 519769000 352080219 365118758 566106240 730379623 134248058 231299068 869713068 960433256 912791152 975013298 273843114 465078372 313691466 360732085 404725540 811320807 58137084 701806491 742334024 955357872 508994318 805756618 916779699 944386932 71676550 948272366 5248946 958191898 303310198 709721933 261127280 475908677 808581546 861774940 200960417 593499090 356064306 523938155 357090205 665382252 747276852 968198978 821314255 987900904 318848230 918493997 13380740 597110328 113984185 502649141 632682176 987840156 686046469 916273203 997229609 998423484 874909305 890003605 137402189 238892306 61458997 818668026 311485728 641289130 616148556 939985823 477920102 859923175 316353740 872223876 368996597 768704290 164237739 269774559 23028724 647631380 411916814 672725640 979420472 994419249 624579237 659424665 388268104 792307652 96513820 965887443 412115270 484148433 48271008 132529769 402738904 675530744 143635094 903549765 727696542 809414389 602715952 860168177 48741500 760017305 696841089 833155176 917483069 967038093 806712523 883124949 700854242 804138606 255413901 865250449 958902772 977472226 557820229 944255278 532052999 893913233 600010132 700160393 26636452 937463450 801863628 964283215 508070518 553900343 578842781 895465566 238926740 428052331 192209114 207303318 189692502 674319390 550433362 676473931 280469599 877293260 816878984 858404980 990036490 990697467 498377198 958173677 721226808 869449960 735357887 888158019 17812099 325588636 308444197 316736675 978162376 999203618 230888934 866136822 530705244 775005930 690699706 865316433 784720499 901157429 739448614 892143870 325596714 675190557 329674864 353405764 810126526 939873871 324715388 878587632 292590362 318676610 518966353 842253424 814757127 836305900 373278776 939447995 166263506 449205863 471786347 993553451 523591626 635625822 882654178 967157713 366315140 607350395 573474352 632041829 861194092 874996486 153071422 600890208 268528285 393011557 264311410 866000003 549326542 893763274 849406902 849967476 635206360 972930527 637872151 752001427 126114305 540510407 717044434 834622141 207165335 417373022 22584030 708599757 551529572 867524688 675013454 811221769 327510580 591609717 308921162 546865776 711770198 984887853 270655710 330075197 34831417 368609197 932645485 957894192 792690733 928558300 341961428 344526423 637053715 991978382 155619867 833586575 339563087 997573559 257296852 479835398 856937871 891096397 508259486 882450084 637047397 802752114 593958797 762542156 231298936 568596656 264330275 666834134 386744484 737128437 286965156 963086784 23597917 241795604 209750440 917271996 906269576 948316247 820216563 852154463 652882771 812525545 13264754 230409842 123043326 473554579 744746235 979507970 526219446 876168561 154852897 568989816 555098444 678663655 335658239 445662799 220291637 695301158 465807393 732980252 54233802 602069398 257096129 422686456 805404695 821336909 458649892 708847380 519277543 575414555 898533012 899278273 902120730 987513446 69362481 593157472 522139845 558557892 568833416 777987909 16513846 186770018 890366052 896888572 576793688 682765616 491030954 795050884 167127062 788412536 718687846 778429310 478251549 781334978 947398236 972765645 75418465 566327857 184245754 996936813 932138640 987949489 905181446 976013506 420159158 997827699 535328207 924167599 438528041 462483324 17405171 380802217 57525852 565934958 75886082 705844413 776731504 925725946 301269292 568009140 746762916 830945704 785251974 800096098 19982155 514658474 27912175 659742281 778840167 823075566 629500068 835813435 359099256 716312048 461688578 656852052 433609715 858186737 456394087 529467893 722507921 797146256 50186008 646589618 12945994 592085037 577676435 750239317 152144630 500170400 982503236 991253657 764394673 767013751 254785235 783303984 802888971 835264732 415268596 971655737 419355549 913858503 354551233 379959909 390648821 822731123 963299806 983093887 234395579 902114667 823120430 915839459 502139889 613327663 865225858 893477269 641477229 821488197 452106408 699232840 819756995 953759923 873336668 886684018 173228706 986845261 684035654 844002935 198199785 910830993 78891444 581273569 250647954 699442995 870357392 927760688 740553916 766722500 805922829 806860139 669975458 746001943 490499264 593308942 580265375 790867078 975289400 986103883 537655207 921567502 323821090 718459186 336175006 851859541 525781047 673537034 584780192 961288291 913591416 969466440 739344706 945918681 706539414 877132778 372611223 713093524 164890399 209296645 456092951 525718248 85321466 913941764 455676881 896182368 44301245 504283824 833354605 905505255 914558059 977292895 243293731 307418434 300222330 436995052 247033590 926012564 272589196 484124419 907166009 976651078 850478153 885521437 77183262 322982731 698946582 972179123 312722382 437516786 913262246 994727760 171392040 872742557 266566297 541676213 247427625 939390882 296298256 540757557 191672711 791229969 729260219 935167995 116340914 938172113 18946017 871103667 628916221 650085037 636899584 980906020 48602143 995887079 90958998 126764720 868658824 883868539 536385296 840692462 141698872 809162596 773406489 829929455 756736591 799806256 614706138 973878628 878806555 939348910 683070921 843802913 532752995 624734134 184465844 633729665 889718142 925929289 257550843 310626952 205375928 363564091 820344800 896550883 416683109 724875403 920961322 936346731 419760420 465906668 210883915 309420152 534559111 908435985 467853805 867693713 849279559 887951428 943125461 996629783 534167784 849036184 807259315 945302244 297801017 958210840 431595565 822998011 714192778 825962252 669292259 927167730 451693727 461822119 623152579 752786711 569659539 605216947 76035870 600302848 536401355 955907229 408555912 514584541 181291019 290853476 518973686 952216972 14721135 778730027 786477846 897685896 290666117 891528322 814263618 981359296 774477936 934534950 791530511 947901758 214893607 898218373 363724632 504114125 513969505 780006525 68002673 879455330 513181085 685146133 822480751 840447690 917622616 943488237 545824022 703123716 747409321 973038175 194883036 686915837 522997441 793665655 881091784 962661789 239860164 890464712 445631312 725444522 988124367 997778920 388415516 957288022 419576217 861231863 237261029 280937954 335204839 403309207 157106960 380554085 266228142 678643934 266239942 391399812 619183916 822155268 130715240 620021263 760341964 834500344 182858949 793560999 170634267 242070093 658460731 800993303 225560846 652045233 159883707 894421127 116570759 179302807 174300898 946920689 326688687 330789219 461686857 701586937 768638520 936343562 931428235 975987381 763405557 969919166 766168912 995025183 306308703 389318613 352407253 508652528 412448855 601311404 77009564 208202072 287342554 971168878 542862559 565487587 283136563 490115495 70673471 91097028 581975232 909708213 157818927 589798906 911504872 938141652 505744307 511623629 723468384 865844405 307813447 569349666 164388488 816894615 480313368 850263853 576029311 720842917 66971706 672755006 231991872 422966225 381430789 408894211 88098546 486322901 638805704 654738721 25329251 103346467 155737832 451492540 354620394 372455847 257772494 721446267 544725422 635064772 391472282 544612128 450834890 638768528 689565108 957911889 952502491 999280889 893749394 903762418 673292782 823995776 732107 649294376 930636212 936620385 993870355 994328293 355331662 975796875 946333145 971676785 625796945 933561306 615509138 973055167 987952175 993356025 876462411 949807046 811213259 946446434 676481263 872913002 943305639 997699339 722590696 854737726 992646034 998336798 103579314 876043820 504898342 944621032 471619656 507399079 378316509 991016515 864301256 969358264 729776786 914636634 21277883 749198800 23520340 244797152 356788836 781896201 679020327 914204421 983741473 987791668 256382798 931918118 327354909 975043339 841833684 933484765 669438606 969388537 493900198 693298890 300357085 491799687 205191319 375271118 91922559 459945048 708279934 714477461 549130964 565412265 722520473 953007662 778857809 981811505 214774036 822517091 255263279 360967750 388757004 732102467 812835810 835469760 135446761 686148853 58260656 249501405 525018952 841848074 184842764 831774067 307793066 913858494 801030290 885043228 572925927 728469678 27957068 348304541 693921381 767447573 480250440 749261298 523161086 921149572 180076001 439106326 507383161 512819712 227754419 768697080 322470826 386429584 486102382 755602893 616144402 806283788 238290074 906844372 473235135 915627357 945352241 976490374 128639429 262737927 136035614 479009658 164930500 290475936 493813877 515990600 892553120 987754567 650282324 841071113 524719252 609473221 765684107 913262499 775228269 945695734 607757265 988457866 243806367 330348602 1229296 305563299 108731396 337294513 48961222 969906583 959089547 967606809 245911633 264130736 126289010 203306757 661576952 703448382 764739305 951774120 245925547 461475060 930796758 939596084 811976520 937840212 648146985 689244914 589727543 958234279 832851631 942255633 99512750 357489444 695993028 784500932 326110973 897878127 177242903 334035086 324344509 329765233 697990136 971382802 779673242 967437705 804086103 818016521 159850341 733583530 15068634 713542575 88477933 319212401 132811375 743251761 627191825 921643329 441599140 794034243 207649685 754877233 828062762 830775573 378589915 405771800 564654490 742002354 285514691 605641688 294208225 509419777 371757288 948208972 700269532 974329492 843378347 865613204 792341761 820038744 130155871 430659176 383122217 989057206 292614600 962176448 924280601 976532175 640683939 880715382 804603688 859144839 341967886 757841478 572560958 604916460 366907655 662600389 759657770 800969364 66808141 829826241 990638077 998319917 180023448 195828461 777725349 825457328 908161114 979218114 565341615 973824422 113337423 190083500 151658863 636193809 287781435 540952934 439940232 696914171 769534732 918977751 389653853 948099879 185920127 974655042 44457240 974661106 486189117 787956928 301095681 459094921 209038257 853102055 829412566 979343482 560225785 840512201 441260792 828639247 493692734 998250401 868204472 932415330 321234907 935587487 138611927 691985007 38128716 61873012 804366556 988591500 424080817 732424732 832555269 907540957 981734002 987403167 397589668 807913153 561851289 897038912 706467527 969321994 445293883 958411642 314361252 750234410 581771712 852516001 42237394 743568374 130558287 221480086 411255045 692806581 196572602 318394324 268035444 836142066 913718639 955976305 995977476 997724555 962332775 964405074 176095433 239496390 623714897 874001391 936537440 941476173 70867122 466730001 535155211 623544248 214901107 606194462 596368893 679794043 538945698 601745864 318158610 563922623 665589623 868259437 191721788 283185332 12252064 827706247 116371314 773181598 599024129 746112002 572645251 800904549 849553585 924990226 37821891 720000976 686394939 770657861 73958647 671280165 703514578 909571290 525901508 873820908 816793991 871175391 687673120 812098750 394993748 757965398 757336041 886582018 537843959 543066070 362059348 527878978 142494563 240282835 566277027 655529952 791178655 811262135 233366503 438192279 321176998 613473690 465067970 943714806 295840162 715401777 285499347 990862511 482678251 532272128 223926609 987543587 356770581 801449949 535992329 783899056 64830025 655205001 84966079 916185626 214483138 423399212 715808390 734723723 766050815 867319412 634505418 920762621 165113102 576641194 831776520 903630697 531609452 564404214 974080937 978774265 573439484 967037597 325266352 743444637 250685250 745106838 983902275 986810675 625329013 642378590 543636791 885581145 432453195 693952876 74972223 732409410 916408149 921217606 437476028 783049542 17476980 149666361 81321775 238964648 378823198 848868885 993819046 999081848 977145972 983416233 333831768 826930754 340643537 894958519 449412493 735717743 355731388 913841395 688089285 909562951 509624735 618512517 867809536 941100818 850182202 944010039 996943243 997849408 317505698 895958108 37683235 96546884 692438224 713963971 535449901 593475529 475907108 746501841 748152544 788861027 385155943 890538771 724058565 956381481 946262606 975779192 499011032 925382586 828834843 911442690 593850417 749420122 712137783 812250426 542755645 758905068 523830335 712813512 298661971 699299678 722672345 739378297 834686264 933581602 175876856 975242842 567568870 686494008 830424121 843969571 59666611 681142503 564601465 951714952 428589950 428999911 582342685 872090085 143919805 753223639 446449548 538495451 307861687 391391628 122146772 535743068 400366679 718201591 889757958 913007015 207722913 354951035 784378229 905128158 874834131 978478838 469190805 592885661 812731950 902858452 944577230 986039867 298041101 847387491 774986058 948546235 127848646 658119727 606381252 743978972 440912177 504211328 978309961 993170264 268823520 846512964 61254061 602707307 979969606 997420696 185721198 626939600 197796634 236808936 544133109 805098382 123551701 144819239 161891613 721683058 955573368 961097318 186789842 315481148 467306222 961766765 447644112 868057265 857509757 930661458 145507664 946503158 933909625 961426791 158748213 221307752 603055594 821690267 405568825 975899055 66808089 719161176 222078141 870043583 796886138 932960868 551101101 746708671 675191363 958198814 181083942 989853799 713666407 718614639 519619428 698487286 55862288 492873080 654201079 727436833 899372770 977818858 2172631 131136675 240405633 637162137 621843634 830162956 484947502 485441110 791565491 796824081 248345986 266592938 813096801 923796522 946703714 955968377 37590580 729852677 287117409 834906775 958298350 981733340 135291135 646582456 429047975 952289968 915394124 956354040 567009270 840440545 979169449 987700199 762663159 895526877 855042241 991168446 254261392 395130714 245299771 349123494 220722601 684010367 800319966 946491935 380063484 573202331 693449293 824089263 148933875 802420825 174269622 293193884 572640926 966301972 972310125 976117337 28937154 441788688 68100441 595509286 889809790 891237720 255730657 374049140 436298971 696878816 855541317 864429005 379780196 883646761 710450720 913495487 710414450 807970520 739362788 858431061 807696091 985839216 644721303 924216873 796435087 843027863 138267209 258581352 825659722 986440250 132925506 705655654 317677489 506379916 586447552 879301246 392199840 519295529 831713308 961181852 27394813 228334872 971017078 980803365 415485085 632761702 475791169 673295609 951091757 951103253 920348065 944519857 942716955 959780703 28752634 358689059 945525209 954005654 475790312 719710012 676396505 857627460 882962359 926660098 331743591 868491909 906785860 958747965 717528017 844997869 724839681 732589619 612780984 891335533 641329464 985589067 801616154 899083502 284299153 756297138 694191320 939754041 721359137 921182963 38911810 935069524 469134274 606559471 374323292 791691970 229722122 998703193 942060569 957067143 283576342 293387427 590020680 809639857 246411240 739138867 470562069 594912714 490637257 803784873 438350796 670893761 955508014 975003261 498617351 577262800 124321052 559201509 583461961 700970955 672144496 831768844 711114688 994493006 119850704 840416274 429879537 764285579 289738770 648471690 442415726 581562072 499933871 673233808 305705227 374327231 866695283 869935550 455647010 930173437 699656720 707488850 446389534 471145750 816441274 935197771 108143218 972852519 464796760 741734700 488672811 979950788 824383284 888534043 381114689 764748271 606440579 882621728 366168832 728138045 30609056 100518296 511561899 991029280 939912358 986026351 722179942 941053575 500060386 645198929 842641031 972758072 250378517 683480805 181029759 413168958 301076714 433087923 509355884 563522140 177244858 849889607 355348391 452871995 289025514 984513453 444074558 995413653 155540608 695967219 112636739 410167669 691722188 777005478 332938072 450026421 266697747 548511791 806241746 880413254 357673488 487176996 685552153 764238782 952553138 973816980 25604301 608805853 589023217 762489305 927546769 968837794 618123884 902377741 507749841 834045969 255464124 675403947 460723246 969160460 271781942 948689716 470931648 901986369 442927916 734838506 566850290 570240278 207313102 472866643 522876681 899559218 767567287 874386731 618608761 743869191 769441986 950549417 898856033 937270861 883584611 969215909 699489926 766216062 565241074 931859302 639270572 882797812 445297442 498678728 613648593 688525382 157570428 372927923 405259894 779203091 333306477 437438247 175350847 644432406 671540756 731325394 126312245 877243662 332662313 879399195 333860981 452746696 855028390 930999471 522315001 566277137 876294166 921522334 199109249 546176672 908672150 945506414 871531470 984205351 754548580 975514277 275336750 709929964 510983087 597027621 890997497 891651754 910780442 924697330 526145396 706082177 550667636 863872007 944966652 949989468 42262895 759174724 834703579 844200830 284236709 654591370 252907768 657178461 752100989 893716246 88707628 546716454 770298493 965244352 4444310 14410961 568329080 665225054 61552187 338124741 553078446 931981401 345214144 733290901 253753917 908613281 307541320 494739496 745473119 787218285 219151328 632500729 94591539 552091245 613577682 747668955 614054522 945779661 763530367 945188551 785496979 906852625 984585014 985773801 498800050 802898760 700590590 977040835 475564137 655004548 562125808 767174894 517084276 895839087 902254982 974018350 453486259 581853277 499891676 760867421 239684182 697335067 993414597 996785947 496170296 811287514 183284507 622858315 331018622 834689124 893523406 970599926 816359493 972251105 756164684 814423931 114746299 216981139 632690921 661382932 493478603 714857880 857018676 889933610 744070446 877364566 26391652 758359171 97102642 253679330 134756378 671043758 18191287 620267930 209861285 699846474 880461172 940432543 732778586 853131434 138333235 987409877 91245380 478797785 873720407 911631466 776596996 828268499 173732882 652281667 646920841 836059549 573113495 888662009 620795064 903285814 623707642 884889609 893068172 915637193 486316720 788215057 798638138 843526674 611774862 633520941 138311763 368121369 86214429 158959103 182477593 673248094 912649283 935735442 178109682 592416789 427699427 921511457 263544333 370576814 867751766 930833318 913918791 952245854 517343617 708666499 759894439 971428605 152142039 532367478 658332485 920831393 308983707 650792157 787720784 920364431 280302645 905295722 137661089 194446427 940618635 993423046 590987526 722394441 961180874 967702154 561050250 734535024 653846009 938906857 160614889 737070790 534741986 598797255 155677235 526601388 710977867 724723736 766029088 994015437 926596003 930813642 66211586 857845238 695137705 986632980 253379827 760008562 252420080 566918031 299454780 432494284 998860074 998992363 670232651 715434443 147050345 229772843 715122546 857235735 654472713 946236534 826387823 885203281 206215600 756143064 543558322 891433053 339642128 741643394 301718993 633145785 289429394 981742993 602740914 753868086 542703792 957351961 153134346 329295587 205848843 243337612 792362141 870034287 786782561 831234666 437157496 940157409 280003712 785005959 843285102 942983872 689594469 887023584 276502636 905898966 792011561 836507911 565437392 744249481 207129707 896641016 403386699 450892772 536346927 968981949 610282634 883263423 57811695 554782742 737459503 779317888 821632826 954342670 280532497 812540739 769560016 814588693 708830403 873052340 277600721 811783769 417663490 498642512 914348403 972188285 52786722 317692421 69842838 202737753 846161837 969213038 265799051 384906986 975079554 979339060 562192972 586295717 171070315 682464711 548059898 572339441 967563655 994801552 922162276 943185067 213204200 397711603 806982162 884434318 571102239 652403207 733377297 916622413 303006814 894856892 578512196 758244323 504686153 512741928 361493381 913950765 503767864 561646146 948398535 965826210 348011583 439000188 243409815 755184650 219811170 761214395 87291862 886746891 39438881 923181965 627160638 770912411 188860614 195358688 873809741 969058567 32409720 717676881 187541684 818737510 881594901 914337840 31199716 708636413 783393510 806525699 866801292 976806099 468186807 707547718 373910133 818682170 749218570 750504607 425998710 965120682 80052248 737867270 455954528 533895619 207463599 594051349 385257636 713731827 268398583 816963283 538543366 678858564 12836365 402053097 163003624 726709873 376571986 445188421 817423281 870933407 560297342 784258269 847004135 964976982 248934391 257343303 423339083 726437153 906127468 934100052 328080684 402607603 715657776 856151264 746031883 916632491 356416369 700338161 426108685 778952261 473719743 525336481 170724623 952076411 29604986 302846162 626170536 993507939 110379179 515674202 241253675 256089237 917572214 932191623 772549602 795840672 726786315 986407041 722711543 855680901 305622420 641028729 617410885 911955539 469762918 656609643 430076059 971721930 214656316 477663754 635213601 685842556 739927170 868589532 547496091 569569251 670627421 722100344 889408908 978153611 695800951 772355368 601677885 803041277 308776037 477749042 924095223 968727946 637749898 888068552 608860974 682143919 234500121 835787951 518008316 656068859 184994171 779782444 96859404 911613021 677233715 807994155 320273149 828458801 702820459 944929992 311122032 907588788 306925441 652374442 175070754 410140559 489278984 672701782 649814288 748081122 583174413 862064100 460231914 996091485 923493235 926260604 750786039 788146006 35098576 142578026 1582429 386290752 389856238 938933638 434226568 918070772 289122457 733596075 855450427 859070380 669621673 684042393 422079531 582759161 375251024 399144293 892589714 983736917 206985627 396974651 425446303 852536079 662699841 891163889 411023841 836024852 287854079 723558029 62589166 440801986 580780859 754458393 568488686 950783716 307335599 399051949 801946787 917804606 477671571 760882873 608114403 663923166 31188306 892873930 423775712 816162701 88146864 293199396 823906238 858971827 639308288 668753651 334464885 593615393 563258909 580311892 917341472 934715483 252478157 536628028 656267721 885458811 90184151 659173494 174950867 242324831 441053939 463463130 710501523 862117975 659908237 851209620 990970309 997128440 542164960 711588759 820806632 995531183 553998102 828890796 903176119 939994631 995921816 997185369 320364726 817882734 2550223 58375036 228773471 828322469 925881839 928333989 251994919 394896894 914477033 930237475 852834783 964607520 647577437 901427784 54765913 253668663 333433045 579848785 647264392 974871815 922639940 936926288 905040691 981131715 174671926 446336437 228418501 436458190 687237844 781932516 560547463 756156939 776562282 967121463 647520991 905981777 296433608 998271816 768252593 826187514 962075906 971233141 194596334 794573493 51417769 523958539 615525999 708064483 968109634 997253299 306262496 651219661 740203643 878011806 206557196 941951009 44973141 729037933 830206342 929259790 642829271 809573857 275354594 857605284 380892027 992889703 540248841 837831879 503068805 895412641 140521367 562617408 946889010 954918235 842561006 938577309 150963257 720030305 701187027 870849113 38042977 188270676 49851614 833397267 436486375 500678712 210432861 816475437 282046159 824355121 670570796 880797550 487837008 807076842 23096286 955795066 652473878 976259271 364964102 840475538 539465369 946475144 855972236 929394712 797908820 820469014 348666432 513155534 339191398 992232477 660225036 988149878 765417943 953433172 132141783 407527469 880917862 923218194 337616209 579068717 881983880 888069079 600128029 948236591 863268313 938997488 74168033 287335038 613718105 908828607 396041620 573570533 364799811 845128639 319945358 362432843 7741019 761086303 650010055 776684636 515200882 517998194 753811460 837618010 174679997 547480412 42483981 179912184 300706427 710601055 419279135 693783194 466660292 669784880 725750344 858075039 147878897 981358584 172936209 351705848 963947000 981551985 836390586 986158183 717931151 986762041 417581963 656564758 386515030 856130647 221624830 689317247 930871568 978718429 548166040 558932772 808563839 974796853 307521752 753106988 872913890 938934777 849076051 929050144 218239324 324142323 841767049 920668357 327320365 411407280 754468104 783073924 843326103 882262569 910073434 967011525 151123019 185027722 335418508 391473748 433566164 804158853 491377582 575044096 238154811 438702038 418198527 475681396 206575974 403966422 874585860 913082127 618039124 760764418 443865051 703145731 12193020 182923571 91529395 675795916 552968011 900299547 270594044 638851471 119341990 437080090 271863724 445084765 525917764 896711458 686332808 983260934 616518709 950222651 553918421 593662432 108418755 720986727 805966049 878287449 819881807 898094975 649548329 788099351 829251183 852618116 452388609 544121736 782733734 936531922 269981478 966337728 337943903 652264670 390330634 440946495 546190714 732603642 648521581 984596303 370618518 450330758 998704093 998824087 208688537 960986230 576221307 910394304 654144383 748803279 706105710 717077612 131455151 669552107 204503179 536038711 250000904 650426931 140860154 226566122 271407254 650304778 524119288 974741549 214583043 789264506 394897978 813254353 410773562 607209464 440030633 590685258 596794644 791021315 245754912 566832861 333764366 532076436 410475481 762419202 94394694 812116704 120016477 625875645 171688674 402372656 862865465 914018803 64134911 66252770 369754671 935565737 829990812 991999817 41419398 870433327 295734605 573158935 549442197 720450192 460939311 892055502 577355476 716578452 106671284 916915749 359757170 560169807 496236809 768613298 158639402 670052693 916176895 993497860 124545553 962166060 987457322 998924639 329648228 913241194 103501715 317228139 325957967 782064086 497751023 914691561 825217989 947709656 781885470 916731982 125092424 297219541 377056533 595339016 131511125 475491900 511161429 837547294 176631516 677289908 521156506 824297733 48981128 134220491 810604608 885319185 667230870 869832848 15390430 741002799 389968370 994266082 644086904 910565434 680827534 895456950 740066197 956998064 344667653 444887272 829204570 901275808 277093609 582380079 224599976 415303176 253677042 875161691 479965146 665149718 838417473 857830031 497103947 779987120 277549809 865385850 448822118 984316183 272860720 683500613 66113516 658184562 821888828 846466446 74589910 350221046 378065244 590279323 281648356 368306813 90934166 108315397 625942784 855417929 720184725 849220103 335599926 622799039 792032461 798218298 172469934 601673477 346832168 947338649 417811591 854448797 508688369 667022993 567017607 621171059 314196634 605854087 839166499 852749600 337480507 648504232 270266443 894221235 986094411 993916724 701282711 730876649 932560450 951087138 161700408 531656040 556131838 789845986 889150942 951028282 59719452 501549611 101002669 238811451 528869280 909934565 446244442 918077492 64440140 507206690 242071551 544207665 25710339 491661679 271746566 340211590 867903258 931710631 287866820 711951864 227419880 548365128 450169645 715795212 432649941 831437751 423010504 882895335 964746191 973303211 21935483 874784586 296726809 954152113 325947264 641092370 489706263 932429979 783120443 860977671 241130704 749211551 252076654 450910810 242854062 823932673 791023291 798017348 197505385 270128462 692581160 988272712 582395926 785200511 693216052 908042756 384968331 588669807 274684061 285956289 374851944 680393857 101288852 960276161 785586282 872195413 223170406 791084037 452597587 936217506 446310957 535373243 760990430 982359820 49345730 861235517 113392625 540418306 91644279 623628739 397892948 571629578 848795025 882671530 944700712 944747837 557232874 662211913 137195820 977392461 20146816 914856176 549257139 915595740 432248599 928824145 491111125 818754586 386993402 940999983 67704728 616629417 859227931 997638788 73147858 990223087 955265564 980079105 366708419 533870932 739468459 806342950 188795100 882514303 314887515 959024071 467370244 880695556 685208074 747982308 841719851 983582305 147648975 672763656 334370561 414072672 755263514 760274588 771272178 910502536 466505202 893087701 549118630 594684454 608365602 650620998 517765884 880634717 408217600 805616557 265248864 409809758 45797309 54171676 555080657 960553398 620308508 873877649 358367231 517791286 782045063 986412355 634730675 800402384 50853297 408536511 157853442 695706979 230419122 801810043 119457457 929493692 25667348 841192312 477415560 784389265 960311979 964818267 990274399 992958257 296866803 634876424 226245675 254547544 407410781 689182282 740146191 995048679 47031761 225515980 413589576 418129490 917611709 943352051 854554178 983386693 661348005 728849394 566885640 803136384 705123046 874534521 116032951 550567868 301109487 689218588 214195499 520024708 252266245 404298070 394475989 848447034 269016266 589278923 704263517 814482921 129149830 258906520 225714195 603244303 210955584 511038665 611856811 722177928 666962816 917474488 497039724 959194731 163271918 762116805 499873019 742976015 463303290 537520829 294821339 373746316 921316659 962344276 716104165 754416290 605532488 806689623 824356016 843044574 617087753 667025236 823129956 900847191 522131381 855849475 984718563 991327755 409880773 806673338 836568705 926114534 743111502 934808787 871524819 891026687 670431100 953026344 282726329 319571939 968559222 997517139 197579454 783836577 384417088 630204779 435953949 882821488 271201478 402781414 910321837 922395480 623935759 864763734 813258280 988550441 861597748 922224208 151446510 944804617 189714863 704155476 834969605 838774023 201098768 604116365 831712124 915321288 49300147 261385401 211741572 908096857 872240179 908076076 586083510 593112567 898208948 913292344 47142870 578654137 414516659 623411066 960221661 969089505 773369539 866312636 192146159 303992117 788425512 886819675 46625102 322266265 985419164 989920743 988687723 996134930 700215675 857978506 260829539 739900522 32060890 215850591 900740415 901670520 561572101 596833258 373068568 634735665 848292318 946855209 749173096 953652889 5797507 257464413 93314102 410448569 217453366 594121078 784335008 795007094 441421970 782396123 258263082 847707714 978811899 987356567 948572383 965274847 566150906 850942144 816731600 916837577 49932152 854035628 43527553 565495834 847308291 853003183 861756146 942428574 322779557 462792632 277019074 708023339 806563474 981144960 692273588 966867838 547550313 923838562 155136773 699984084 597842210 905980128 533614601 830826740 419421853 996585883 725478398 888162333 847174405 915438130 219102123 721698998 518440540 673780801 381174235 828596650 201494864 475379419 634235181 852806718 988734739 989885916 23377229 314357156 699322117 899104024 417317705 615107109 104404229 843288662 898069202 920161568 440159235 570689403 691490222 769735410 685779150 927273607 158090961 259523807 528960731 825566364 955388440 992549414 473107754 930726071 14674166 391315947 841329837 962622097 506590048 949635894 29217005 803087656 536016382 606475739 941828173 980299951 408553732 957414902 106527044 707823835 650336763 785032784 62259787 533605868 223713292 241523744 127991233 753250917 183923080 569675881 23968012 82784363 374259160 466701379 880322325 983818654 891191750 964682071 899936611 906161913 578605734 713002791 241413526 690187183 878026373 976982682 643898679 683659892 273329094 646840633 205367433 955917925 477854603 659771939 997942245 999207745 767489768 850646044 167982068 906488842 869406733 889385518 63648793 138424189 888286759 927949126 309269648 436562846 128314646 377618582 131448389 846710169 334876402 366193987 762154340 875205964 563679656 810297057 598889264 716388034 762676215 911544895 449635913 883339187 9121029 285714421 39066617 401154314 283521209 861937729 291753059 608832185 957487744 971427128 975127068 986872722 228873842 702083003 698139289 828570107 383432196 914607678 752344728 754922597 357906465 386486922 707718553 744545439 640690058 687181776 766714451 828935331 845607966 903781443 249192389 891234549 458378830 733912442 789290869 975410832 612235052 687863849 750876145 974558376 137398375 965597531 282169965 861154794 499945976 504440350 362731951 486156071 130907634 660609782 452399906 911040619 208493335 935071767 238167591 442896720 519301635 547734752 389486396 469448684 996137553 996171064 134021455 194907727 263563840 300068771 238518768 323772019 782009507 890148286 587403343 786078133 718938980 745736055 200649254 949535469 822543545 845628304 122508535 199051876 454306614 819721617 493509300 856587920 710566088 869288751 406338457 814123762 752631180 876057010 846479689 880038145 424634142 816839899 908994610 966658399 271168360 405084426 811542099 874874999 267499332 959188079 840569372 903952025 167288256 342569437 929882975 992295051 998225444 998714761 453272946 695049056 704691679 895290829 217529289 860430858 503269441 806748149 211319915 915734093 491823580 560506279 165289837 618215271 239926187 863621823 616172020 964475673 405372976 817451355 791866170 868138137 835583770 900431463 660835799 692223629 546995935 608232728 700149335 911220225 870242510 969725457 888864341 987514510 928593548 990468536 813901126 818046787 536746542 572224236 26591996 459091845 488685769 538560547 136676214 741070451 412111874 683853545 275867331 648752974 837469329 948117924 647465239 922316171 342011819 788238864 906573894 914934158 667319911 835757727 341986153 886266168 589326327 645288360 17705459 519900043 757381436 993050407 759287171 898404703 790070026 943945561 862660786 894598428 903608773 908148611 581646674 805675419 388107061 918933048 813503749 898948357 100767175 836293321 521325701 876166113 136143290 983378026 608103651 931669600 442521186 539663174 181749145 943771668 52407685 584740463 710500221 790176225 562840565 947995215 305178442 799622704 926341883 953380644 304529929 768258394 63476908 612057167 734968926 796036889 627121830 755559783 99361597 656261856 241763071 369737509 904645704 971347172 721937514 771161194 205044940 873703502 787259909 810228765 657556196 821505318 124716333 125396328 206261878 392306880 407699110 661938871 385981278 582213864 991594090 992923893 713750832 757033867 398976251 613269990 582667354 993257901 607597850 746566724 905322984 969322165 822452571 971370088 997538360 998895100 784272755 799630513 874465181 882970884 867906601 979754561 247815214 957268602 296657429 394023240 126761815 617083071 786309743 948276873 666002994 860816499 476760712 808723544 706743967 812932929 876984184 948558013 581652625 816553913 739142667 839760519 262595841 450379628 360395700 639794862 71007306 688610311 419840278 965728541 359764766 686302987 837707582 886733256 560337555 757079415 215576390 987635345 656567381 830085308 240983719 334447683 394870165 577124944 906441779 985428692 627011913 649866805 228658364 885443848 427770691 523954209 647314684 856826619 642968933 984732062 103428614 170059955 920812047 952646909 153387421 240758414 547315770 560555787 630703167 748383572 369609247 592646595 776045896 844557335 990854261 993280680 595091261 885822897 602826605 986967892 867606354 980824479 588644876 952193158 414632570 561415344 198672770 801032648 834285516 843122534 411520709 816176614 111811330 392202563 805336760 957688288 4336670 902148612 164107815 949727318 596549010 802692973 577946090 809820541 218254788 985744352 908036198 929524474 719622174 799058714 28276669 619732779 65515471 988785698 935144219 944490284 724735795 920040344 866560466 874956845 576450277 811053478 485418335 609354459 890271148 940495562 103066026 955883857 694418683 773582901 435133515 937428930 553322187 749649664 520344733 628917442 583450953 690877536 483997220 606351549 157239214 519446618 774592598 965567642 201816092 216797863 829668533 874549103 49530469 171733034 727219838 736463726 285441980 755261726 93510437 899942445 539388080 709943290 683874566 870280072 822812939 957299333 610080853 887996295 929418306 953503622 512379281 908688193 113310650 859845416 787958060 789218088 379717120 730051844 410981575 483977708 653161941 767851625 371495804 555829017 546841068 694640040 851114588 946760595 539356843 788808440 772646020 873448535 465646818 877882390 741907166 847131863 915227518 998398880 361847073 730351752 943008521 958698513 493719876 802143703 551956798 825848744 697613960 985071452 844502951 956582197 887975405 956206777 108665112 423750295 569093479 776599202 9894606 824155828 738628658 992022126 538830723 549208856 283128716 668439115 938518686 985766489 998355907 999323140 639444274 868687141 290605554 819065294 700805904 727865065 60813025 619871848 354901871 984337679 66693399 117312275 43056195 587089346 394882956 712719631 878891571 948633063 898014723 938741948 869306837 897419840 763588203 816845479 831700037 992162927 172386344 568285770 20928596 918026360 800576111 854694744 120620785 749293270 548661143 850244870 336399988 453172567 488233777 745505080 870762445 984077929 488506904 781905759 102790479 129074844 698165715 714371441 588831824 725332118 253850766 592622794 307449161 941420813 341709578 911753084 191988280 566882068 265599491 569746137 573489896 951592530 585610851 640283469 24940996 156572742 233522276 492597540 635665422 746714827 744497006 798575265 783455274 793369813 536835880 844141693 410747687 971808133 86674777 719042240 990729770 997355311 599417693 950770337 813606855 868707378 736228735 789867311 472380197 682531193 336040469 913102207 810637216 838076860 770022750 931302263 918637473 976077274 304332893 850747910 146500103 330736783 63499742 406919889 246266608 930098571 653888315 726017586 673264753 786510326 977377293 986442578 930827048 944655315 634798545 797449559 964507403 988016804 391138541 563004481 468039770 805532299 195932358 868311201 206280719 837997695 127036507 241863050 459404082 604257146 653110367 761255029 718513354 938407384 667617673 987397972 444659064 554230476 565663260 934986215 589045438 866556891 582519548 831390340 781675135 785929736 361574203 385348474 281374361 437245126 674315270 812663542 631356212 990188462 453274261 970395834 872957562 968032961 476045573 804038554 948187673 986904220 601212317 867424536 344715093 544647849 69251276 76117659 259426806 404167734 979191180 996843766 141247673 656455837 686864668 907720291 21859424 330275767 749880401 951043607 99591271 154875611 856543976 930323714 29173959 820168198 723291462 864235792 381894152 657971661 653226605 989811815 197882465 714507290 939043185 954266353 50161087 323663505 664258865 717542624 320351462 473076838 664379889 738204123 326552837 881258139 389548324 607054589 384540728 569832682 368546659 839416235 680672272 924418032 700535906 701395138 722467787 992407560 812434524 814743156 23160523 326977837 582912733 615705418 388644756 576892302 33687027 170363421 617824891 931751072 673019789 995826651 482274095 831109671 147754905 467657062 9344080 792546034 247255773 982587942 840974143 859295850 61058731 650339375 689030499 698085067 637955026 761820776 16104199 988592224 186177022 418177837 175368524 636869731 913935301 949642124 945862124 970219204 704611099 919124417 697389859 902420281 591936594 769320866 118929460 359712945 692315663 744869889 787388205 865882987 681378875 691175828 856553581 954669520 959871367 990532093 631760429 787224708 725954021 799713046 742176133 849317463 870004101 913437745 293700370 362120990 32283801 400971082 576267510 688812329 396109797 500155978 515100051 520149607 146846249 621884227 600863908 628214809 573262889 862600968 247543659 464511337 301999743 427272103 777966694 812592603 841857031 893968365 655850256 671823810 347147261 584335847 69979153 299196652 584920311 617161025 162829182 262589196 803521708 892005779 84665314 827796267 310953663 719893643 386563784 608016751 166846040 462408759 139969784 492739119 651505088 891138570 42359332 485826331 753993889 780700575 863910093 908491051 413555454 633547403 495659417 936458970 958900463 996825508 577177927 754352515 950567630 962276077 543327 805195477 334728472 671262022 589512364 987031184 757824846 947258520 403021345 558579881 46999732 139321916 178052127 214572896 71802971 319713425 973671609 989494703 261101184 699656532 358383361 697450414 349991216 439420417 894997808 947116622 587019439 994624222 701557175 986739215 264503142 373363680 594203078 874401160 471020518 819769621 159583995 324338351 12908052 293398075 84011129 262096132 513377606 547832577 496762739 523063755 559210698 956038077 411045097 855402406 44030232 209599703 582080238 741291456 962832718 987689935 711245379 927459097 148061382 609395556 228360895 463566737 387170797 425000602 96748834 746812695 934699446 994984273 353129797 533506894 168612408 453446655 975488511 991480463 980977626 998956440 805112050 867389233 379136616 932823648 251142510 807858748 1286597 8429637 762095347 914113783 975700238 977232021 583705596 671090855 438576487 571445607 470873276 525371040 362653577 584869063 842721808 871396705 426411788 896971561 399026550 554005766 419213874 741702440 759689571 996796618 878964283 886265530 256632636 344555734 869372850 997552821 5769504 862901739 385333238 669997659 681328856 769003999 763766118 951104601 889783323 943773281 6678051 389178670 29936192 605084895 913838435 968845963 273919915 275516347 569252831 860252044 162975933 436616583 508267395 918352440 180714315 755195518 844606580 938583394 5074221 742860000 21593551 596809579 894878719 966412522 127350564 534030551 559173786 657766326 288025817 784675555 695691318 744035690 812492512 909026350 355720085 622499685 758766882 882859525 439711286 604693353 274714588 991893610 561907509 920922529 792448616 838112168 670043463 996789384 440691991 900367291 109367799 575571319 968093978 988972909 107108418 487342367 776431546 896383642 330965546 674624292 746638845 748287848 935020346 936887485 832710013 862683195 223683084 332236671 391010631 404117307 520286188 718442580 389514575 821724026 952064371 971285085 596542984 605181509 425027420 952776115 743044271 857615815 773564586 839237544 868249732 902099290 689134035 845219428 643323658 921039030 109611123 744522745 567078853 951627994 543329906 898860205 371774047 408320455 822189004 885942696 305778444 491181223 553039073 854060363 78710929 529360735 172686327 936876405 523171528 994399177 686760559 724204546 379817901 500777923 659660890 726833796 470746568 797406381 279375474 408504157 25049656 489189167 553330153 615342387 141876764 439308548 790732322 879841232 799276067 978517413 522076242 950929139 280161241 759671088 884688519 945466269 129142751 315815954 967683985 984917283 721748404 848384687 571599613 860648938 352137460 521764941 660344804 840241048 106434036 812930864 730527385 963751474 754742183 993811989 697912526 770974139 468096362 550919440 104776791 141244829 587638271 676425189 643581175 837154951 341741953 817122698 23179909 778156671 808159252 982098846 236977376 934639579 625654120 848506648 106047276 861514742 227837656 882290099 705147070 744073367 511225397 848624427 944862222 997105705 816207433 892318394 3129715 703618748 474676564 708445989 569904605 958936287 382445321 655661575 205785627 711979015 91649016 826258755 535586237 541779598 257992556 605968159 679639054 752639880 322994515 675609571 950490046 988162124 435986238 436429338 69466126 550658331 993074733 998889606 886118986 891630224 548523754 673954833 124616287 209869500 52597166 56965605 279508703 780215929 172939540 983767904 36210330 817934533 645717402 928196335 978303390 981152399 787708806 804710679 39537232 392337640 826733656 973466378 432161646 893614896 96057688 112146052 856730379 930197547 279534335 351095459 871277176 961878178 899899491 916642635 769202012 875107547 308437317 330051006 308369448 913481697 397175744 700456964 613095862 632482541 91858374 849847544 426502773 466287334 777000818 844547802 676588725 701774442 89966510 437623483 188346064 882209457 862751971 895390103 808621045 953012267 388621181 750467800 673291147 870128606 90155160 756272958 279884102 346520956 31106076 122864442 551213031 678250238 479191808 742719410 666700343 782286362 523102810 731280359 946117587 980131908 901816351 994484942 993171640 996641687 425231771 640274624 933605679 934140444 263299010 424908493 380270756 784732741 635321587 739208959 348721499 447763088 750487943 935079037 327773435 930578801 804213788 858000788 578321446 645689934 440602780 896602435 857688609 876813194 716640754 748339539 331940216 677483434 965531879 986594303 130157386 409545229 173855782 832978010 819769063 986953990 350638903 440487340 136049285 626498170 254845427 612867723 817580185 846402512 587801677 765055998 491420702 852176074 222177918 586199185 104133102 934901543 870321778 912176943 842893244 942869519 144601183 351705452 350653828 608720018 438593490 894926797 893216448 978314845 91572057 385096038 7848756 852754838 380585478 795387623 818554678 854748343 251192407 532324346 329829223 809686888 315025588 616278181 819155313 912788079 956773035 998191249 126296535 811986008 330559165 362333087 161197344 379529773 170534130 764848382 544918421 576961228 124827310 690159979 363408232 412783501 783590142 896308439 99991066 974270085 720410010 728328276 394727974 941130400 587720681 686369660 167290731 919614749 778460984 834934150 540183829 927090628 663097524 969887108 202248596 473851590 78659570 411086535 164173972 504834441 536438015 685921671 860045712 899441368 184342753 425332044 816639000 900104597 315165533 419317832 256137886 279943792 593163327 683708550 258818800 588762679 305897413 812333569 72277667 748707447 444041239 735785734 100312841 294035005 321214255 949701306 666961893 748495672 111141494 769365239 892129004 984483493 53511083 734853007 464675552 533183725 13883779 796494031 520933432 859194173 277145765 555631335 203424858 230227278 539486490 870586095 192173499 466950887 226982839 601988097 98505629 105908741 217353444 769808957 885849885 901106225 110184796 134213597 113451702 189222807 22220738 420452381 467798366 880897324 347979341 428779937 862480291 888755116 753210657 765871824 728277159 855231521 258937410 764499565 886859446 919355295 915137876 997761262 411568571 995026356 13502623 385441746 737806792 845629862 166846155 416118675 849599097 941379659 952800596 973740355 53877462 142605651 574131274 935855276 996671197 997909820 275935526 894150863 155456764 892238601 26400979 400314866 127679848 404958404 742166039 924113338 666819237 815986026 571592690 997155545 132797236 301257093 949964262 982207512 316101355 507744878 798881244 805391749 449105015 481608212 951364951 981549679 714109896 841221720 604564544 933720368 260508399 955766317 54264467 911312252 765442843 788235030 782413345 874041508 775570699 860951006 684331402 710758318 994174285 996200231 98023749 467170872 859994162 880627180 820123393 878558734 265745039 335372098 672053080 855014707 612156199 995136105 977766552 990702889 804638996 844802773 44418579 771471798 890978516 902154563 436762896 807664291 435233945 838780243 907091678 969212706 107717340 262477343 102482491 843578415 70697222 540353233 799887374 890022950 416157811 845582756 265307746 819260936 104483706 291884067 592592659 935827508 277831166 491420034 424410574 503442341 26560288 547449368 712307143 968675674 367956631 668040693 823908361 828867284 893333848 930308012 431229978 782205553 749324935 918805901 25603447 226657435 920517242 981458568 995797363 996646085 965085310 993797221 900661855 979451387 304496578 363199877 930366977 938628617 934722973 946761187 344224235 623750718 385078193 409566469 875046456 967578031 804756184 897538730 505914040 642621891 514810737 963724419 974256874 992023878 294152608 703979580 540138400 846453546 516165290 591649923 544669164 807274287 697970690 734430032 964865267 977009370 937811741 993863390 10839618 972150999 469211302 913597590 620166762 978220338 640059446 992572051 890837323 933206838 839628218 909646527 49219485 964080193 12596492 995983439 871470861 955693908 264793426 792315871 608901889 870663157 475500720 983802758 978483457 988885896 561903751 907279913 973268551 987688613 663138115 782133810 920581240 939879483 379411401 533056862 228523226 311850489 782410902 855417546 951316180 979225800 162217945 720557720 503681806 957202168 381208345 969608489 738822713 802768432 150985641 299632028 848871471 912411250 896966703 918298177 770814539 889422969 950223664 958771647 917754648 929665496 485221879 495202865 25976444 538842697 747418400 942960293 207611491 834433857 66355130 878653316 217584519 819137621 565476343 857854142 825009321 986327470 521165457 657362852 330371514 409159414 699142951 895885954 283315617 520692147 986889086 987254772 140012011 690819002 443696845 888676188 863836136 966045215 322586933 545780099 94055125 907367416 84801061 226067554 596171938 598913878 203003721 629771244 546161265 837228921 467836667 873104056 804873310 925361520 917781076 936474834 743691537 923919874 118131300 299171231 29140465 288986760 747126739 783140523 939129732 997840780 448320013 943091583 232390314 573544155 285105452 826340575 229798971 850080869 868278110 988538596 808492438 930598268 635201847 680846005 899133570 972191446 223307694 702437529 825172634 897960317 479672429 557918805 570135556 985505318 663054060 875765512 591178082 797965646 297551010 405188391 789046405 807772415 773981967 830304747 464089758 788027229 24446388 689445312 914738058 971623442 227106761 370284422 554037717 585187921 656393862 967977124 463113159 628073950 865907602 976671821 843772545 918140515 721609458 754249877 228091849 268773415 71442466 419459055 847357622 987948560 57627010 473346535 428289560 715449355 214270791 443033354 1260144 442188543 847652744 913760456 871374658 880429345 191395680 969754956 795814502 972984221 393664788 444211654 218042536 424873394 372671736 552127009 841383923 902892538 955018990 983080226 770653074 930376265 180196306 892020614 806952419 829574422 762427346 832493734 48352160 320973408 318263901 674805459 379241627 826676909 806436383 951938144 968886681 980594164 25686506 620666547 567336263 958310711 779313498 939663307 629377669 783385250 977433663 987610404 363261606 412508399 164684490 292518532 359225450 757494383 540347681 918401589 327703863 433903587 169976513 449997560 94950756 660819700 53391366 823249867 35234933 56282427 327192032 371485511 173390934 530702802 342907539 434444346 114464595 508112028 162232713 555333805 78033420 846674008 531490515 949341178 950864172 953348331 588236302 986331909 143629223 208481930 737467925 788291312 673505744 804812860 167041249 938036493 427028685 430034125 724588610 754244786 340398240 687539989 833059857 899338192 127778218 393736948 904129529 967627643 526580724 673499320 63947746 965899656 742746462 951526858 14212661 165264539 818486781 885318700 620679100 785418892 656161605 923465658 492038287 686641813 637224220 921759010 464509232 866139567 623325680 801887617 885576390 998036862 356255400 456634100 836777179 903243789 384328226 530138613 119673703 424921023 841965537 916814671 737323834 766916238 763994564 934968209 872099090 879239393 482603180 794321195 586133242 936837304 778046116 920540127 902692516 939344372 281280761 476696038 451548759 821588816 31374307 732546652 841514620 849677783 974634460 994491381 645490053 901499120 852630658 993893664 463857845 905374674 198283043 487084306 444589499 653227196 291921883 360203664 83285329 235567383 876785349 886087725 151848375 839239154 463828830 981189352 239418360 984147893 829921167 906480296 595801761 756254764 638492909 779605678 107224245 351535756 873725797 905445199 555172235 862959916 928494230 975312211 280184987 533311936 336223076 376978656 664833737 841069178 228958560 480382716 331000240 746986452 616643649 776174832 825009935 892447265 987328604 992028294 205694236 974334677 342868565 354499429 804394832 986104314 560092096 932907196 31653653 428097746 458406989 926960116 105692869 839797853 914565537 983738688 380404805 593284117 704079855 767542072 763414955 929174271 691272527 722689878 377135074 514689576 818268051 991381377 366293141 973466008 69709928 876544501 544253797 611197947 723657513 945580829 405132109 990156020 875747079 962068234 543636494 824748080 27128215 763927060 102029003 866820466 828116774 902041000 120732906 138908830 409315593 787928022 456112823 759076260 556595928 588619097 25772148 219339640 595956917 978505716 533400373 777197656 751793375 850327741 71812826 707399214 313972914 703664782 311179545 496666627 371164414 725631490 917384727 970486717 661695439 976340448 509805216 880832041 245093658 773772414 329750327 521634153 576604243 751556311 182631691 707479254 766678191 948091413 671675458 929577328 473422696 686521695 156094768 440755287 689756353 922540466 337809745 419768875 930554762 936121222 592400916 872638235 675074918 939241099 174487599 211960714 217909533 595042814 631320042 862631033 992060768 997487604 739909394 872627174 298557235 298893211 47478733 58300323 846321505 942451293 935119087 963696601 441931456 587207286 417481776 643974447 494473944 951602777 627260266 847692613 941944019 971605169 475479306 791597964 503956093 603530621 412422056 729282164 141954919 813359832 768378361 935787674 948737470 956129067 561579397 653550881 248648394 564692542 951535887 992446167 471162148 503350043 543948839 985224568 447038704 560091391 390083564 797271885 133248336 377178775 552684488 973893214 939957690 970665975 521397046 910167818 693405017 826545170 998118215 998906725 229540579 265213872 923222910 934836449 14328553 897850456 732556476 734464848 772548111 861967378 445086234 887354725 220675718 473082601 338597575 555135523 880165858 922333835 177798206 675593210 234343592 306213547 617440717 917829208 527763395 550658313 737808569 769487817 21658854 653523617 557276857 915990788 458597972 796095203 833287740 877636004 272950231 402844234 935903040 980554173 206850950 748673664 292747771 757938533 238331764 898754644 702134265 730963642 371802379 615670767 88443261 159002229 811750580 846733833 705459878 939725447 59742755 160377071 548773536 599381217 936891369 997621459 808491961 832294253 785243038 939818235 268090361 646459783 613161649 922950341 318214517 416206949 656258880 851407808 531392061 880300747 583988503 746274551 452608529 677533454 610470631 980035863 266160138 965279395 322441016 856781022 365842341 561634680 808766831 896045670 954770612 998357566 418367898 810957899 639806915 901693873 819607830 896030613 603966717 853224339 879530016 998116926 106727397 337224320 34114170 909739152 825064532 913733742 833942823 901594770 267691168 828990855 580455579 907358169 196551065 485291349 138720282 306789514 153473837 181888740 906001983 996632940 819888582 820166618 610881939 951974908 203632367 545065388 98786579 850138314 584821695 673051149 751783358 982044374 591446736 869171440 243890948 855474420 878269068 883311830 202270262 905769218 519739452 998714793 409702288 790352152 287293340 637626815 717342046 947993236 708281638 925406100 565666626 773974128 927979363 962451455 503176138 567640116 158713341 478258328 250056723 683587823 532632286 842346096 410018910 624679576 23118929 930167056 765320010 975757525 966586666 997216783 514383081 581789160 321099428 374817087 409741716 444372929 525511292 641307065 716205903 743911557 302717145 509178704 357511947 904958013 956864184 985669046 516433471 681359699 14913391 18068741 805581513 854053983 709388810 837023971 614955598 724033065 604090957 689106285 311351344 415647195 922288056 951752607 134718716 810676663 841017236 933514300 173223775 479563820 592185393 802612984 22185130 797120017 903326297 968869003 860427476 981934914 818137787 977719958 17524736 530184456 810789799 994169096 936468741 974115490 488192365 881004760 797270813 997290209 143854325 981306135 279023144 421162027 785156173 921454332 555964626 959333874 623773541 700796527 518626735 697529860 86215298 234992191 531918803 720143781 715287287 942646155 898859690 930995939 756381395 833537026 922746575 952096673 150247193 982333159 593730467 842779963 332262736 443195556 869923755 917180377 707986570 971460504 761314482 892262990 993129779 999228226 557651892 962840182 433199120 802034328 474275379 859448501 675879760 907148031 474904419 482929275 863981272 970387724 243449464 313668391 62038197 804872914 662390271 794877537 457785923 532908963 623627461 783872259 724007862 814958796 854853281 878690446 365936881 648714138 716942197 992580754 323733265 503008745 961054243 978083975 196586678 643073127 680747688 975215816 212447333 453536307 383170921 626362251 601577703 847430589 687500273 976022179 188339810 736424958 70344276 871591267 34340918 459738728 518918455 630967548 982316150 987903121 472903467 901821176 253211521 373789278 347659967 908928781 224528421 949271495 446834785 891782390 474910462 860233229 594964705 631449404 526455777 812760331 347824104 539228989 316852141 800656976 364730826 856181996 633330521 758593121 962103440 978544226 935767973 939765627 502162250 983980522 500370376 876937699 949863909 957948735 663788946 787922576 990751928 994083708 464850836 753675718 164997974 248190664 532780692 703384924 768408670 889596829 11157421 171020637 996139 702665223 240239605 337275024 851178988 868532350 81885700 299151813 328450329 905495218 921103976 971413739 766030230 964197916 416288215 565687951 137334615 285239529 616209644 619100782 807399832 994027134 801158196 862211887 683522039 893669370 525974160 903845800 91019777 701240930 111495043 541716050 940156883 940840601 385922024 516998861 631649808 972867750 437400053 895985956 464383511 657297510 417492999 799244229 878387811 898313664 908270011 916963645 923335716 990714519 258362866 783304226 88444252 498489197 439762133 657736191 977078138 989371653 699890328 783029846 916600339 928982049 313046541 458518722 351131312 929825614 106635144 981163790 247257083 868427441 537518015 784726539 853274781 938520966 800063725 962200495 626098896 789656700 922268928 973606605 30732873 708211925 888572071 933350035 400579926 963624601 739063798 910767153 220378660 528833962 158932108 375609282 334538399 579218537 93670102 473771950 895766349 989795771 304993222 947443582 79681735 914358002 72549606 916534946 345480217 773419368 556267675 898014839 122837147 667452011 390198117 706538938 8064796 996178310 814863798 913527834 467272145 513436985 328988886 534110820 93161470 810760137 137435568 449880253 319157796 414849183 398147406 709579874 873314205 915823826 393029130 963389913 800038673 800599404 609333989 750336133 19676047 960763592 660359242 988944944 46532656 191798861 456730966 795352421 984666409 994426331 390044214 583589181 980629278 985925125 40863650 247430210 629441795 657659822 707098987 899781619 334042063 631382202 809289245 886307467 514990864 845954215 548965242 555479947 450218798 971096393 358805530 636069270 369140308 544831914 662095068 712341993 976699878 986142606 376679225 946451413 18827823 949835185 205193173 459923819 50471284 736605703 651582275 751818034 825727579 929414643 996296008 996597342 650761381 957796462 274084414 940915713 177335878 652836289 161542819 660590613 546030155 684858706 117848347 575138670 251225189 622031353 619626906 773906202 894515188 930478367 212063079 499558976 572574741 738204922 607031479 994622296 554781620 987191669 896868550 940352214 493422317 630913663 644433206 970868420 965829698 990065271 66873638 895075138 114498697 864951633 449633815 814429002 714040020 993379138 711115933 753082720 357802835 793106539 594242308 819548039 12787108 218873457 760910639 820364500 7724693 544153561 788751185 898744115 889537896 925234259 16625822 949289786 281888495 303552835 512005673 581046502 198634214 912532734 985386347 987484888 907659742 924728753 173993783 266188902 54586744 672727921 917168970 947663243 336754512 555198987 685826844 976069577 322865659 459170229 165533794 530475578 981619670 989795109 795831824 951553351 723977330 869145813 757593778 834721935 820320476 840433266 12546516 447765924 362880345 898413392 680979269 866158836 290176839 438803932 987047168 997364164 238858498 552311108 440314954 890502616 696725498 771558040 813024941 982988582 580453011 718276320 57594210 970163935 695703060 997187510 145745663 448216433 38310966 783197937 741430739 934082306 558883067 764841428 707396790 841973873 166766973 786166241 247090671 692970826 94772673 341309662 453308848 732513843 455928974 852227003 351834563 606773899 250099032 998880671 557717866 884680543 890440607 977673520 937226871 986131018 197329705 996324905 703185920 779103243 303231883 793071721 741319465 991107101 934370904 990712259 770756683 828618268 859105527 963683146 125795386 711049586 834768071 921225929 131509977 729134808 958097576 981422227 171329319 809836866 753893314 919533528 921954776 923842074 701873034 964129324 431027229 557533406 521049087 731988839 803759534 817870268 557742527 598744513 804384568 851133227 168166828 440883490 399759958 959931022 170667393 391669465 275781787 534897114 147119313 568059929 222201438 299846144 450865850 948034284 675905355 869597606 913020038 918684337 832880175 934834535 262989363 303524275 600148392 824729859 982914336 997399332 627663065 836962835 830632273 833462550 883713755 948300805 539479627 698662715 886933223 955350663 717475402 883733715 73247336 358973724 195648843 674132319 571715023 811884556 602070431 936723752 518986527 642553627 541897120 726660327 158993240 394549454 333645310 363281946 54503263 356026274 560034967 660780705 186798789 539149211 79318960 95358284 421081182 962343599 321273127 770536993 834927328 959735098 805032431 995615502 260373487 711371818 967483494 999041569 648496458 982751523 825129747 850089234 153845692 723017663 795456062 817526786 647213259 652582306 638661778 760882226 125778127 664379936 561328990 893016551 970621103 981061419 698956574 858973235 364242647 700685664 891137569 910098012 809355919 983719471 936638715 972951920 898289364 941320415 343537398 666713308 715668211 807178966 41600850 956396780 896181442 938871713 775635504 837093904 286434801 440111684 885259034 934534664 800853719 847122064 578593193 683554483 681022514 696952739 361871763 858631630 106215465 869402592 855421035 983473274 212934083 871558576 673120753 761292643 339593381 666230789 855064320 907373352 360824228 970774078 396047358 405224336 578291521 775839392 658708122 756042103 285144917 500037536 419563617 770166619 976466669 990759718 267445754 374902288 444262585 776955668 46179103 684537390 756056675 808404470 790936198 973782479 347563441 495980926 354319063 621855300 124279292 305325469 656702568 694194547 109886486 212048241 346278201 796150142 859883296 965276558 877812863 940643264 429243643 904000412 550946907 557842745 225103935 449426704 357571644 508030081 528679889 538640861 13327910 175152770 19502080 512318111 370133422 802652409 887279335 944021443 954247030 987102987 668305722 818815230 584679207 861803079 201415038 255932326 580237058 939143322 176293803 480288976 579483554 872720287 24730828 408209348 484066562 685212751 831875987 835422747 605955049 892661431 685354835 803079014 174257173 755173161 474412440 512313854 615677662 651253649 692686459 900454819 439731950 875310010 982800672 988229032 713851712 939267603 580848123 897022555 455522419 932986582 411207423 934334319 167415343 878729678 36626764 976075827 709782624 740283997 196803645 731572799 208402567 474317490 183156325 325669245 809023309 959016112 421740821 951230805 271484722 801155711 656714607 724500181 472738187 762848107 77310909 101539479 35767051 891204326 91010904 538194872 500832883 796529710 604302154 789156729 964528064 982445457 917456957 924084147 205374961 395806261 550631204 572530593 667626169 918202410 5158966 466060132 994300703 996419980 260693601 818924243 256262161 936219948 432420894 741549766 162436712 225801270 139699437 904634925 569042276 715553466 714564946 744897382 707096014 781097723 434964868 938138719 540648168 796897796 851827385 960812283 549439074 671354417 623457361 780784143 105359995 410098980 501860909 773995233 513292856 983763279 972507118 976288504 533611185 636769470 896802673 947159877 454918556 806915748 120710119 798287131 620728446 893168339 218235171 397225587 559331629 744941750 339501631 595897884 66437494 194743539 252209736 452697411 561081857 934287528 193209613 916507229 728407911 938191278 938915526 946197925 494830267 602165719 748114561 835298022 799935875 894501280 56037073 79822980 824826283 904263355 654562014 843664543 184149993 526503747 97153459 984212256 836637063 963512861 799388959 855857943 680611481 970522260 760578293 827377735 114533448 410448030 644105693 810518770 229264451 283415361 396527300 600037569 562114389 962492289 156337830 834323549 534861759 920612951 274801283 656179132 17064943 289489020 326455953 931414655 627864091 658243445 547366586 603621602 109027769 509740337 823167858 868690578 832745353 950072348 726686496 871927127 451387991 907393767 335252546 679840448 691206344 882049441 326748446 806452045 561512569 662846737 205132219 657162462 102815581 587471471 81222131 165801498 720199612 894848328 721816648 786049337 445685191 943248982 455542426 636231286 450324883 722168190 655419790 988603657 774841414 963458132 27591331 426171593 748350787 993769855 520815280 766633109 423979106 854478699 691548984 821199055 162090636 973432973 606770720 663078468 787960238 789939110 380438618 870906890 298497048 458362788 905515952 935723675 490158465 786274833 88269338 327333679 527463564 646821563 98847375 334084856 80256903 122867971 907570613 955085072 594100091 611891627 358976286 833103712 59267220 415303997 819339383 904813200 556437552 674384606 565815776 736533810 235605754 400755068 660961789 835431977 233526608 295785503 284504315 698214618 441045693 774574139 239670215 813874283 871885743 950261501 214941019 303371605 710995972 719020554 227525328 296102794 159475725 468562313 286570544 392245651 490153192 644269307 143906368 631860561 81346885 155598120 102016895 864735503 963296571 988651971 321319406 907168179 974193467 986176131 217496760 765065264 858446061 976133861 817128280 977996439 479516152 928004831 48507191 681298881 513345692 657722726 783530755 800970362 753674864 797553053 122642753 928825976 689825891 791954074 594221671 809151891 943676730 980716372 704214964 901834141 333845130 754980312 557250076 571540322 454110185 925217206 498631933 521924161 331254261 751649004 287175380 512593456 932074182 944450469 889310468 978158052 387811779 855098578 209250044 961438701 978365011 981971181 684141127 756842409 84439142 608000676 718983759 771645915 348548282 543339866 215973283 269030198 816212900 835760712 446030772 793522761 676158460 917199378 341621205 658948593 977374427 981340475 14417428 618621870 171674811 438636029 481965197 815744460 967719474 985182269 47574562 639699018 119852685 573167421 552424155 932544906 792092418 916226942 717510131 940467418 806757184 912843458 385568547 403268407 624416180 844243603 749593726 983527463 366600255 756050770 558402190 748185796 985156238 991639114 816437846 897936959 265643671 576736136 818996250 968427968 369346277 777363923 755980511 780600208 943038545 963437761 571192839 728257949 93330781 315079024 717562524 877087901 526731340 868595228 878661802 976091464 792263271 900243051 621423830 878116120 959143573 982598087 304987327 805378468 235394609 777975978 946699355 977627061 350999634 415286103 607933743 686439789 390015985 579117673 19230451 353318121 614477533 893935290 579902781 963949673 860370738 883091585 971832501 987425555 58552471 936572848 558239853 682723116 520583997 715273076 18632178 521320632 346984154 975541834 102023712 926858276 991388507 997593807 471690988 938057247 936459872 966772238 818202956 953365690 599586966 712796392 743476689 950435778 460629886 755024382 573631367 953275157 583878173 819724539 38168597 365170993 137492920 823977683 500090293 566442250 668078517 891639588 574159899 748928279 622759499 853750106 99482860 277303162 471544583 674293541 692965717 804204412 872887642 878299072 354024161 876134977 215618234 465646834 588988236 928250046 472733046 687904564 164049517 723050603 203224532 287035872 588499851 691017302 820165393 877737423 753742309 856040321 58578732 731835566 331912358 902030144 543527111 789023193 461234952 828708859 317723602 434056873 519040745 922711878 895083719 963252572 910175 811932537 322904609 620305446 121917932 935063772 279462162 596629118 463295620 485454976 896407402 972798295 328962486 351553613 49034981 698483400 529034625 994124303 270635065 982211923 645647994 724635657 211607738 975216414 505237830 716805502 379415207 802741638 782412940 971385705 914675232 991368171 71265452 199629304 546256345 594045291 647552837 869955649 205115461 946785997 136339058 316453235 71995160 693249363 877711444 992908225 267663410 910487788 153211590 609106334 63248050 721494653 496186813 789361283 67498668 337182988 693530649 731472636 75391592 191258857 395688289 431021897 506348991 900124455 75934885 336169201 988331523 992024596 243418812 497815462 876974497 980649503 276138482 817048581 520629721 979815772 612734319 927416175 347892700 929692502 250234594 752678432 788878562 867652437 188006320 876240971 640104454 940781430 946019118 949872979 534698055 789436008 623820769 690025190 797782296 932416146 125543789 184408682 959701697 981049648 608575134 866112254 514129768 843718605 72524182 405920735 916235357 992028015 773719047 804555758 264907614 976278717 348069915 702104334 12514787 238665525 169698016 405841642 197353385 759473065 21553929 185572084 880765098 896891009 181857585 262874701 812278847 990607435 754067016 890608954 661491879 739440941 917934344 993261790 439567752 879707106 247759872 285726422 388723538 630912680 571159773 916304019 182821781 449870813 689968561 823223516 743467249 828372289 314658943 683171002 588466804 654791272 771812748 779108563 216757304 709536090 990230142 998549978 26528903 54617710 942960743 959776314 70839228 82096913 704871903 744886657 613968524 794918022 500476750 931472818 33523921 970088419 878768442 906048605 872263411 890771376 516851849 957690355 144276624 598736295 739654075 756881836 786407951 951417475 24063488 163752606 14515152 156937520 405339492 847970592 374007149 967171174 205840418 793732518 263846884 931289750 822045453 822202830 535036785 870875178 20499438 405369517 104875998 968067376 972625025 983394536 415658313 829300979 399171605 901166024 166731883 671223951 555013210 714290899 569473540 852460709 402094947 576441772 936827516 941601676 750319446 862289725 651777306 843779346 651703956 675775567 444166351 584277286 92335390 802657151 699990314 873577458 283192633 858648428 445724532 619690233 373819840 437027188 894800022 954806850 694392933 808843117 929291703 965313208 202995626 815166427 51340394 508342465 17805770 396437701 328772604 682823402 308142072 417889802 743120133 957430231 402370904 930126358 532712041 892002585 432532193 565406042 784872540 817572873 964344093 995682729 580371334 764272269 838353361 929216515 91382922 503478712 518980801 670507189 876425434 964919764 995705926 997562857 817635891 817944929 103965286 737294150 324212156 994317904 576301400 914192810 136357182 531789457 578831161 821415228 874453909 931195850 533492358 924837165 276155427 507811791 711553528 837195990 791487165 973686648 253455667 477801664 530637034 974227394 462499796 500723831 41098556 708101907 745454320 770501376 668413737 963446606 850198449 936570167 491976538 915927422 627371547 674930461 896298044 997836007 680185196 686299614 709102549 855212937 526855777 890240700 210212967 428802236 522818711 586084843 101794818 519175487 404908458 832445422 662180958 915136687 134664959 794505363 401378731 780878883 683187081 896207272 291487912 599240535 643794000 983747813 339352442 860321182 637004592 979572726 773821327 925606083 260026999 564834910 869569188 954954919 302168548 774335401 778417029 943160784 443806457 906193085 766833473 960014883 38824452 125801000 770257582 833219402 588351076 611365510 550720604 671487621 388710580 392962516 505931769 808632888 171175880 325370002 336112899 739379478 140829211 655773400 756021441 994685543 590113815 591851476 22435251 182133685 702682126 967237542 220418667 900132422 362636378 677652562 757082119 784191318 606951020 841591587 748662450 986461718 858946248 932972081 709335000 718321079 886024885 924309980 639460537 808079757 701522990 958593394 834656916 843977831 654539616 729168014 24738311 627836941 849079078 997084756 506131441 508580700 998828166 998992141 665160100 895865082 126598285 490125275 4058046 396567709 737785608 823118255 184718542 943689640 589011990 721426985 493702040 522441921 430285366 860204424 656278558 695913640 77085885 829932544 123172572 704768476 728245945 899158411 704685289 792855870 71870010 926652645 119645217 375409892 360856104 968048069 428705491 736622252 670408575 991383632 641536211 855408854 255589747 319491321 341872875 986336896 125953963 277125955 211029068 856488383 642565592 998200366 268191068 774511246 486195688 599397943 300701499 368773180 942507367 996798152 655358460 685465544 887950192 911086676 191477235 193245716 673245627 991484895 96207812 270258687 866716734 972331445 615003181 962029084 631992281 921420304 910551333 921010268 368287775 674535082 319354643 936615629 984091890 997412059 458122341 994738870 262724001 800640180 770945935 979851976 642024153 776848873 144263899 886786385 238190140 972460542 736971951 775543303 808144176 898881395 875330832 935568669 973291616 982607448 648393911 907998929 677121987 879290909 905442509 976931415 150645956 629425282 882547482 931052381 904131790 926106091 521147909 917285514 751476500 897463124 950742620 973441697 785185928 970051967 284734898 850814776 490305549 907911194 313319976 454634925 965396583 996416890 749544885 764238317 244724098 786234770 283308279 638594000 593427458 858524766 115105885 160505863 804486618 930080166 137941495 303148974 878312613 968748162 129155506 615834739 346272008 391589110 772236783 918932103 435254588 676637954 354498978 556309158 328899816 692619852 690955295 744556289 667451033 909335150 878849931 893740489 406757366 504607487 734742792 944447723 312873395 656672528 682467277 697691555 296151357 616375517 626595340 964181037 210600642 346585583 896962335 974365007 378744752 541478719 327181622 444848908 272581748 885319026 297571591 937758083 870547282 965069555 923494323 975282704 188610641 188953673 79570359 580180507 34478561 734070777 453227739 637088307 786813356 866433125 893822584 896434071 927454025 998204630 753054362 991082184 370266498 488657133 194771147 827998997 791175890 883959648 891210978 907383769 672509329 989715233 17197749 473062696 493830285 676488685 676849178 816962952 192930522 814481599 471264649 826429177 393193941 490170016 938115623 968195135 19504876 902292205 856247921 953905009 526248438 599202786 231452819 866080389 248648539 403328416 310684687 982418015 696202473 961027983 943233738 947043027 366180722 755655584 220165918 955639640 740779217 840719704 535778386 663830409 253737529 901479481 8943386 680383249 219555317 959968105 397362290 920536809 701963046 742601161 762045542 968094638 413573751 687791077 77212756 132925411 993868635 995591935 466599244 568405857 571253841 743045348 747006548 791603489 28060404 483928225 904104389 917296964 95877724 177328640 880212882 895486565 572659963 822113751 319899900 483646448 299492080 771282837 426491049 851223901 554821661 602823239 604145827 951625545 678993 286109967 912904738 991212892 870257786 884437758 762760944 904694645 210765786 973736412 351050520 872230741 92290884 499323140 684097154 772327431 342564591 614746315 233984583 300783752 649507526 834095548 681461991 975381282 299286193 677962935 628036568 911181701 235781731 572459755 916987319 992882805 407737637 560039194 734006894 856052891 854990365 883010289 93574628 968268032 411463814 842760968 899955721 965541824 546488621 651611462 409430293 579634550 848888344 872963770 587714074 874092926 383703716 791298699 403244812 478776032 494420957 930461667 439589299 843221257 839539996 984896884 783686074 936159491 203721827 417611786 303411447 693437987 775760698 947744600 924605334 978755581 213701295 754523258 888681520 935216254 556568908 996184615 689474056 921576603 139735368 223386952 961025480 990103167 414836223 499877865 688343532 910122956 922590996 974416033 903221173 998868938 792821617 910630407 460060157 554866435 843508344 873705462 428551128 690993488 17975573 335732602 142882288 602898690 14961 663185570 402602213 659399388 609245949 628468601 947713965 995494824 521453023 925329488 371860306 460701344 710261144 987608977 710326667 911508911 319794838 590696512 423884374 817184952 259970070 385170317 51130775 762722519 643263805 683954309 583167405 996575560 263358309 929517303 895177617 933122109 313433432 700931311 276147290 551005417 636941740 725373633 53246549 968256261 185511985 767225761 636428926 656444634 790725627 950546684 252593452 618471948 344700577 782564610 12156944 906455769 482683116 779735244 703938776 882250753 28456861 971469578 24632643 877785107 181038835 731495933 966286338 986571662 333091794 678797059 609797155 812795573 413103534 559857192 829074399 979848358 690325616 864339680 442688589 919548254 921555821 959696594 304944419 400418530 761278149 831069291 568004925 971390992 264587981 460144077 504430531 616591443 956808804 962866306 653830421 950150044 913961834 962536205 691882653 856891566 793117060 971557833 807094691 966050673 660978234 820107139 814602384 960447752 556846641 654475913 748414999 930225964 407435800 965857345 441878411 684579608 858458381 862845797 127298448 814483667 597640865 854687799 605142677 889570161 940656444 953713615 145867708 766870834 70812838 883817199 973592277 984597178 898772075 960618529 932464942 960303121 278402018 778208935 241014571 752074011 422796522 836509098 39954207 286154706 380045355 906686078 184458508 230121239 823139464 878386584 278545941 414262697 385799010 387206245 933408721 961259692 869553219 954097663 522944702 697948472 266270688 806713402 812296119 839104192 104772391 417563681 17265239 835220839 457561381 843827882 209432473 465524209 120640575 509778186 538178194 644513073 503800609 571205668 375357588 626504273 482639250 584747321 316979747 935981755 320138985 840495108 385978027 541093297 651401156 941669973 694868792 755428484 240665675 867276698 494032976 787009768 37330125 821354738 657462309 690393657 184749433 504383043 950222143 977240309 962146399 963681025 341103089 379500916 507832236 856885595 11650062 892268002 552327939 715301953 654529702 879110871 517954770 981261419 898712664 924681527 846532003 960590208 364805521 686935492 472037739 784264521 440143990 983122774 460351907 772556389 787207584 850854463 12472014 137369379 839280485 973713564 46361177 118787333 72846782 323235673 307022915 643587751 40128673 570132127 747771066 781897425 214440834 214456289 2137095 233732739 26809124 971697127 63838156 100826474 7996491 653892778 302923650 485597881 325214209 972887256 488966076 678778144 194280647 653520948 476424424 751311497 915882818 956605872 686730598 755031447 951017037 992119781 48749187 74064479 351165926 364472287 227546086 766203054 992308185 993497052 142105777 766771084 493263833 713920865 188867757 850104074 210203260 211339580 562684120 600547363 262210467 405532165 175524947 301344227 973450987 980385412 153346352 213191215 570321138 775576456 546151362 680220506 119648466 288494746 895960473 983720340 434478743 470184593 672360640 769758199 423416791 522149803 79245030 473252176 272758948 496477411 206544507 419185763 360933192 851958351 565146405 657838245 586567934 877320925 380959893 467885939 979071482 997481636 52071837 199357362 261054973 475749975 812820919 817869988 727687770 871302725 362716383 990651427 952363383 963240497 813350141 911083197 766210171 982062042 504895357 923432380 563372087 630026067 7555375 733758616 574896098 698431774 350881636 651888621 456507602 937737135 222102083 988265827 600083880 634499634 55295991 120783990 650392404 832379532 858095027 933130612 529913167 951416843 658453983 873233820 639031446 944347683 916505419 953978220 204758905 429656046 298528483 951980692 683707972 687360966 515599746 816073441 326943878 387182616 821110916 860231779 301849195 330269299 779814509 912213642 960969272 975928508 445871392 754036518 841569988 978147421 676412287 870676381 438321285 792148715 752611589 931491075 615527434 861772880 850141224 888178006 373185147 406858918 270512809 465263647 788188974 819233552 125246426 807587241 15172268 457077468 183244853 897150218 781781031 935682557 946803694 987367630 137935372 898910258 594478269 878979022 41147678 756557177 639796608 775473369 25891809 518003723 500641324 961473200 611526367 947893509 5707757 294445847 726135930 761828190 725850964 849109539 927439375 948560743 87197895 732031666 792149585 973500487 151500832 196470189 645723209 783407001 471196841 759725308 844350463 927992019 645323298 701720570 642733147 994299832 798229399 899553525 911917596 961157789 32764674 177050037 791485227 848299400 150620607 736416225 834267518 898808717 370523924 997083161 421290866 536215828 707277266 928209672 950717996 981310966 849540182 934761544 826057251 997165440 11897503 718407537 430720204 998027340 870455556 944585143 412715053 920354794 124759333 735564995 275631390 342435402 168178425 940259657 919511610 962554650 13310659 656880640 744391171 799774355 52772717 179456700 143922958 252854619 536529647 700087817 547420521 817100971 969058541 994365158 54798319 617677181 107147637 726309532 269038632 705211818 182821489 284229299 114491850 959015503 899732728 979135609 11412795 960884774 407547874 544987366 190125978 423549353 154098206 851385322 853111801 854443172 659080387 834255550 951659039 977228788 403821769 574762833 793126687 806561152 868099069 871249362 649833411 823762944 871893159 916332985 168364449 443193282 771967779 788270556 772429320 897544364 119654972 756942771 203823010 577863809 174806084 648529807 353743297 858468549 686290903 692401864 830066227 900535572 923550795 942779163 651655359 804709149 882383163 917440409 332968194 838108968 193064114 810701240 743395572 830131743 598193496 941767054 481337347 610169338 683318666 946925835 323668844 996598109 428226770 630601783 766836803 955427069 152817920 682878212 474918373 745867935 524109583 760959802 267121866 759029016 19302264 511570847 518523893 940095550 558662716 812065764 528727520 643711168 667818525 958399421 459706995 670640464 215590538 893312130 677172008 710900453 40147723 70037967 77392058 843626593 230805392 693874285 206321633 637549071 767745833 927058618 203471900 608886978 687183638 864032755 543307777 576962325 93497192 241801285 916242101 967122417 860682240 958222993 515376791 679860565 212101201 219547122 469207575 660719025 108290547 146448784 915185711 925906023 888853891 889022085 846028673 954000765 712488832 896966362 90432712 620598636 544740615 957451827 705415960 719216028 500535571 848262328 44998818 505875147 830223649 857993932 241772555 379120492 509818544 744353317 996590035 998596199 748709426 958464441 493116638 703627763 470182218 721219997 223995493 578782642 48236909 142130060 647814669 938425019 127724420 903865394 684079243 918421265 793675518 825164069 699983363 720161002 951570262 988645220 843226979 972782365 776839754 906803832 19007860 820680014 480339496 700152797 306586749 677516228 21408035 822725865 498256930 555313862 840878931 865879363 269572754 481238750 370487449 619712743 449758625 529530280 61902239 283044114 829070980 917347056 722065894 965062683 478612420 500854448 870204809 921564044 710026348 816562729 661130460 844711428 622608289 979717089 373347840 468344547 860929993 862401354 692823135 977410365 536157987 610847924 234695883 250205089 85342019 186140317 497877587 600382204 646022478 854049325 620440218 883060838 341243528 686965982 344346388 393423607 295283654 931212137 346641102 612920061 854177055 938673250 298604988 847661812 533957090 539185112 249535786 560210009 655897573 684235073 916140959 993472527 29543435 344794072 266023167 895150479 202967498 422225707 118903616 721322851 166548697 623490194 763598680 883768729 435568580 549529122 933054864 988758882 346886917 357470665 414454169 881251223 953958870 975740961 49975890 229953615 769386326 852421824 815653973 905334619 111086744 272141627 607464718 897747878 818138927 953832344 220325469 633330095 667518980 870915916 323116630 925012790 188610063 376498853 275848852 748913008 882445370 942741692 940949674 947805399 155494855 187071995 360174746 691001873 536369996 965882615 300913232 306818830 545300498 870973299 5865708 31735677 535488669 771405311 255328204 939373696 82696507 581205810 350956861 583957460 606513641 805661576 981172996 988995113 762311508 907290823 632030731 792009560 831262262 905374000 844948208 859728638 927550903 967268171 682046060 781394424 189253511 713594478 769223290 913904814 801890251 934306920 951836682 989224122 167422445 267998138 719677491 943334885 541803081 594135950 391053504 554768351 777834058 968219208 719052063 943932011 589974430 642019094 841562406 902174374 170947922 259866726 516300024 802368092 648978120 803371505 430013076 892636816 915551835 967880803 746295600 911940675 474591191 527293530 177497147 269533231 790327461 992772753 786600279 830554414 542948614 813173385 726830149 908997097 208674163 537329456 609175968 632225683 58734680 432903396 498527262 626026629 59767002 954475265 639312983 736878106 288755384 966635714 728396731 918315971 902439036 934530831 186535482 578000109 214677144 780687283 569366632 571638774 88920415 679185093 724434688 839124280 94496174 619076398 764360469 963147119 18988280 961294166 977268046 984271866 566915637 750045648 157313091 621838979 589068625 645335192 817178978 975537945 97744262 659002366 294146242 578432074 605649561 892437374 793767646 910048101 587325745 770744796 786538943 889416012 504178413 743112112 690297388 942892217 188768013 694045677 176194772 460949306 870991919 940533955 711778639 960507210 330131183 747677119 198807477 719933268 13995604 473185672 588124764 822468783 69476234 810263356 65132733 301423842 736054775 807876390 305607115 898630458 761649125 775505096 301842769 385562912 363068495 765007729 561374797 824448415 704620472 777857744 458702426 800026196 331603684 962498400 578165656 684834772 172632496 972398268 357677848 553658870 745034831 859231361 705313196 894316093 799254361 966606429 236577339 410821740 910613861 918538888 131188549 610517849 489481334 690516022 373904582 963499283 572376407 954066154 828557130 998949711 613092355 761053547 578968283 973509786 262855837 511617990 265400641 720855429 37381643 664436784 889684299 996281812 588725343 994282369 255451426 670902639 615231188 938782669 378468735 661470273 147970305 738899398 733433805 817255140 582925462 989434101 383081759 806599620 388846357 749651506 979247642 997765625 678696776 846630923 278035162 639116605 831373615 845080716 16336468 717130374 394811443 517954094 250786345 734106406 751528891 903686570 873425723 903649959 20900179 732344601 473253937 503140335 539108917 760305732 650921604 802892384 238045052 632424758 675636076 680903429 859780917 874686396 665490815 906107886 525806728 599654681 137107732 297272407 599271894 658493413 547636829 992851045 674582595 717963354 545278721 989495628 714967466 961462343 511996606 565504488 977128042 991318344 345233708 985416424 987092200 989295288 134138340 186627873 697014385 800519223 979137123 990946880 523080733 740468780 172172698 831311827 311542810 893094241 547859129 647631932 733978156 992779366 548059210 778353811 385145782 753568530 115081535 585429372 364354363 915721499 584397157 732085699 25712919 399501959 499958398 749392558 50386398 483351278 630228345 650108357 920757024 951311646 898598292 973456197 705428474 979066572 972301387 983186587 253293915 431768501 78832249 516165633 137556209 863426960 941001067 948083974 952719968 986623575 772402864 890779681 429203768 430863402 763863349 959215152 412163185 412627138 376299440 860669059 674926974 832938195 516181278 603141738 666416546 816525152 591263016 969804767 569117394 843322752 877076564 995576834 198243847 234832720 7041806 971613169 664344945 936805560 800317098 856307107 70285560 91266995 414919018 672336378 823895656 991257229 586079885 986877017 682079172 802808199 527289381 952665388 668517178 804900617 122709947 136442142 354686597 615263259 277945120 772890481 930391693 931168795 813223098 837457582 920675844 972162050 960355019 990018035 86721821 269031638 576904877 843452053 299651245 565136097 569618264 697260578 604274630 715572223 255809716 976177235 159934021 963791065 694295124 788685528 115405622 799779028 806824661 925320118 378959926 476971584 206017139 693905492 709890430 864636759 11882390 953917257 835125489 998276901 879826717 996159088 259146533 456213469 229766346 722095482 454889333 925592446 84168921 261320103 367662902 887159300 708255289 947347824 582677136 936171666 869693720 932642026 184425239 495356116 572722258 938964537 62540221 88542261 667235300 927228848 832210829 865243908 225401906 512400831 180914036 360348305 398670088 593225841 405979163 964570167 499648141 997950565 848021873 848065839 646357119 961471280 305330891 608394088 228727689 678213886 124201505 395749070 29383425 763653457 610579126 648109329 653829459 714947508 584765611 776397760 729118405 955485076 777139376 942885879 634599103 709325514 232797867 765660870 466944136 665266047 124133939 337649930 53907806 114922022 357411819 485647500 824403752 874802424 386903101 638794116 22966232 225467607 504831122 967483867 729162989 870854532 495301078 765919303 411529549 758562868 968568103 974320021 564743251 766728698 81675631 627395579 545233952 592909069 798712111 959518910 97844079 185229265 115741815 886393436 628193269 897655951 737032604 952861754 983547877 992755644 844602725 932722223 585608736 848326043 729975268 924108750 430871229 764017120 247299887 286899501 128838433 640205085 633202076 638312934 382474179 734347843 410079536 515052305 611273467 642813356 512395939 625199967 810614338 831976366 85130611 543707009 591847783 929273766 707502057 847875684 952798292 971839582 476912699 987111519 401345258 698340934 514744802 745940096 79209337 132479686 197676686 622087422 742960554 868573077 38796332 116283861 718410312 769533656 102894810 745916004 736565703 973399059 864599744 979119167 439685973 711133326 620475952 801218541 24928323 214332404 846198877 937968991 919711632 983430988 306010237 699197339 461810619 513566236 72655511 216856870 871757408 872554417 239055100 568043647 342913401 575334353 429494990 551594472 522334901 594333382 447646177 502208746 427913799 801741937 665402014 860306815 292127066 769133262 893070577 993542630 381315228 815919233 17703721 913780344 287140104 626710645 773788165 817308038 306831372 941649899 111723676 771141527 686789173 894292642 796850551 985079360 440075999 514884192 845539205 932582677 478270286 786874316 873818877 928422653 848451827 932134125 922166850 955045902 813462447 843722566 491078109 648765351 785274096 945862518 24622575 575728165 593400574 961271726 6145735 202451316 220402400 786794382 684378286 897420090 623723506 722251401 459856317 854301368 757428846 873548130 367646885 982918912 836450421 851466906 949199776 966959550 801775476 894749524 202870980 728815832 725527297 905167042 689359304 828694807 948905104 988846981 937169306 991131362 523767216 795271402 604476177 997538290 318177106 812448465 735752155 985333312 2360486 280462169 398036530 711114914 767332024 769314203 688834551 861733693 118174448 975378671 771831262 951951723 135339292 337003577 779235226 893585884 640604797 973257895 718862385 852801596 613479316 714014839 730125967 847013947 683848813 771662616 386129828 876044402 713176275 963873923 958038334 976187259 4179322 10781162 613307822 789913933 325403436 936480959 978726581 998929817 944832580 956371177 492511500 852978456 278312619 658124117 519285498 635421532 799725168 937996058 682116542 809569033 93621275 512046900 548861301 596513859 255295405 951425533 156114728 421754085 317983140 551601927 336363706 884407602 58336446 809485490 592663184 967950112 659350637 926729445 533454077 755544652 734101492 888007625 939449584 998391969 24272279 413861516 829038723 981714486 863738809 954247919 318651593 567664241 670732868 972261237 907172271 990265420 174345014 201144361 224148237 309969958 226968031 546763831 292283559 800088576 597043184 688086688 454432761 904700627 890079714 990929600 191478072 341318625 737490634 915159636 246083580 423116409 55104078 804188860 391799173 965119557 567287321 890524140 172288876 809861382 702352130 968066496 650890449 922508761 343938704 481526224 232324142 698603382 620527547 787004363 796066472 842139171 199227330 403667502 473638816 778108342 997698096 998119552 764342342 990355176 726581949 740265232 242941948 695696846 537744253 686106348 567679627 739249596 987389585 997919638 83962966 809206892 259329436 363572338 491518426 745896228 180637237 777039819 487745886 607750490 155074632 684925802 357003776 610046033 284278561 392041830 647988042 919292504 621418452 688704781 64819559 991191919 985836176 990050481 253450241 470254338 688070749 806265179 157297021 493884768 391721548 953589710 506515369 949608889 819649661 941090151 552973567 750897746 523496034 554214114 381157466 831304539 21517043 235456606 946966122 990248479 851617644 982695253 785973880 949901066 535380456 714599415 400388484 902623306 798459829 930741222 196533123 952788510 217751625 719332998 725309636 749276267 361335611 524339058 587086845 816683482 327855024 336099813 654641240 783125102 225525883 581285811 872034416 949432147 765568645 884982570 341884783 364158614 148324844 655269657 847913438 878524336 183168283 800614012 418471626 900815193 657042728 950048863 684983661 697266782 781543938 960312643 694380648 698835194 503414163 565842946 24389648 151367714 414300779 843082262 490699422 540353229 357769002 640311494 24906297 920037967 405633013 797538124 187741166 329482166 441555038 997061212 453641170 786326056 106281519 471527694 232162067 290129832 156622364 655599717 541206580 832184255 43653640 769429424 780410234 894388642 796976469 873421569 917551086 955042660 814589233 971278252 651072477 888532351 500296502 520916395 515743409 820943989 430587457 511923587 788300212 928951264 273358268 494124740 446857475 626342020 898231759 960084704 593153887 769865382 729330058 903854844 189794269 199297413 400272988 971508952 478847250 541288005 40320545 779256557 744783829 777994826 930045221 991959301 628241240 640915406 996381375 996411434 88481621 208641656 394904173 820034399 354789553 566211610 579660002 889820049 424893386 865231370 117297145 265613449 581203868 804342571 838869672 992080242 315620619 889556730 674530054 783743115 43683579 460646848 529266786 811651758 169985879 434548292 65445798 365579800 371997962 938593856 841728845 988501396 203196101 320864755 798309924 895781769 587312431 816259034 128816198 396050748 535211217 957411898 131850337 905258881 686260446 829719343 464769235 875917518 385075371 610132584 900475387 982629277 378872761 637234726 743409334 781108683 63198516 396591360 617633388 951319101 135044641 827480601 962397868 980836586 473270917 703304954 713896700 719824965 187014503 637484301 78917008 978281939 797338705 830950749 684191935 916283041 634188648 683455644 790171216 905976022 287381498 436357090 345210328 890531693 380271472 952182408 35153960 228628535 447079403 972365157 315189459 839405046 855434513 886504964 670943251 702307774 517127310 567312349 532963135 910138025 500774485 585332793 458637857 573480514 857383366 968697979 534475263 600519311 811457706 911520657 484966058 885299223 544887204 773516614 371166858 771488511 909541873 919704478 980289713 997608609 416893470 517601046 585681027 708849034 764265031 774627111 310577827 616463538 461752706 700663075 379619656 723487287 695072832 799329718 940658935 957213366 363235662 405212903 778378319 924669265 964594131 993977270 916525875 979863232 180767962 909671371 694832494 973480763 139300008 891202600 338109246 998215070 883110019 949747179 991397903 997675620 850791069 989254465 408959424 903103017 526479706 741356392 440527634 715307792 946076534 972364991 168154028 316483513 824344545 967320129 44715124 951211157 484328223 662265688 297331594 456506593 922220080 940023789 91351767 366834818 26543899 797917542 764310489 793954182 56961905 881458547 410059792 681963541 634061070 905842106 986254213 990942434 94062037 521485941 788976537 816528226 108899686 643688417 212997010 806894712 388811022 800626796 136328642 325977917 668908905 995547373 38168591 719528399 762000333 865913604 114800222 501828010 388073047 758399420 538867178 899044316 436353695 903670355 624452585 822674199 1331014 220077839 664580694 775028730 802647047 816800109 70511579 971982869 420862795 563705880 983352904 993539781 184499482 490926322 651139073 862496051 276985352 973205547 836957845 856601248 512664402 629485392 190835148 795906130 218742251 649245278 447433104 833000053 768492100 831368151 10689980 879386249 676651007 964897411 315684187 720685662 612307582 812097438 81039462 562380008 165612098 424280992 685083794 926304414 599010713 605296205 502590805 596570004 726323465 998804217 277920824 645354385 863746879 923395301 769611212 927564671 606287395 955667132 420537278 923532771 585956968 822637756 30856812 437525131 136106481 913542053 376501404 732103661 401299554 666020686 633058538 686076444 322576812 417520401 419184330 601632356 934806605 996069202 161670357 573270650 314749384 824244835 693362468 807409399 342334427 928067453 391243547 900681223 85918374 310743849 40071987 572485368 33975219 617641131 424241867 690262526 305953118 640363476 636227728 785785338 40426906 513661418 917094337 955338690 846911446 963277958 457030827 995425779 839284480 993459051 888188392 893709831 534525355 810451233 554787545 749142098 845117543 968221077 33536260 637806679 661737923 769004383 736870285 765366270 788653764 954733210 532432406 853240547 947310468 967197867 89902986 786450981 95710932 600384473 257166514 657661910 482203909 917829094 646904780 970501851 905554608 942332188 450842701 570980642 626043697 786286842 549741189 718429191 911391384 940870196 116665002 456420370 178956410 545928546 92343445 771927673 879671601 881985138 539317954 649206793 640319527 934553739 184518460 741435065 177870049 612352772 546399055 911697715 463848490 544019443 842531519 907558891 247181455 510837522 69102409 991470289 603671572 995973036 137444661 464653040 689638865 858277010 939637729 986980587 381940890 492813381 979462856 987828923 640640580 999352144 985468624 987867571 686135680 927538664 613366036 880450091 208654037 972031561 857818496 978188851 839324785 870970846 399220295 677039141 993902450 999240414 80622069 115253059 797340954 894161923 948545729 954684315 790215798 851051748 329167471 959692314 681682757 725863754 763085133 908671650 571458756 943828624 871162068 942808144 589856641 832465562 242256925 319574258 909587213 939156725 52511790 76317662 140431177 921921113 71238706 715973971 733607057 909799945 117179549 685505144 855887804 964879600 387290156 673009190 68809625 791036911 572809166 609724940 333376949 806716674 359695562 674099050 423649304 459959688 140520844 435768110 580129517 665507974 686107106 759809183 59999786 357072875 323907466 344741965 435693660 912028343 850500671 909711637 213555028 327110967 467597779 812190363 931971475 937216657 4478302 73062537 69079424 389211704 471537165 717135087 653785142 996515987 601176314 958824277 143614643 424512268 825442550 998917123 21350156 683645734 485323492 924924928 374781139 749072731 90019489 663073294 476037316 672982334 146379860 372218547 174469192 361865646 304763783 335544436 22998560 158347564 324720929 522417054 456910361 518501140 413855033 751878402 464474241 622045860 649425800 890796055 925737524 929147742 87139650 495793950 310420981 704873800 225787698 300622129 93904168 300608226 108279090 611499186 236433121 658171863 18423975 411430108 97478697 209399198 896822886 933927372 528098547 809427856 842528618 968891013 25994125 855781553 155823505 656293599 124230910 700188269 7279443 304042625 561892614 776509866 882702789 961129369 431775878 663063505 352762143 686990031 429827847 863472290 711815980 916345762 916195213 925532544 301771697 629262142 846725266 907190450 132059714 959637774 25671712 467458058 149132217 328378382 31092998 37561545 350311233 528299583 619475436 832149546 120451499 858861864 909117726 912983817 343956609 543450813 882871501 905991091 7082946 678494355 290113104 836400625 290832275 569373469 709303430 926977446 22558717 902661518 535493582 905788775 499314491 907080175 557601721 821774677 763575441 851327925 692692661 737981099 783709075 918598941 227356755 546330250 563323549 819506824 787447469 791496576 230180516 443769476 359136764 377909940 621156571 916953223 560741199 684282960 234236999 365455908 398923461 664563773 948248172 991923626 743995341 746663614 556066020 855032736 654267711 932349715 360554914 481452644 95550841 235053107 354550584 615606741 338714462 790915070 175305322 513543916 268910957 833729186 64720201 230640093 955937513 972655126 187853258 854278200 469544380 724732468 626862597 971660146 538087556 903605900 589886454 654479866 347821872 662348538 559720251 752980236 891294274 894993164 438955223 834591130 936550487 962808717 544493651 787219188 238209966 475955877 285719409 298548964 458196140 666946187 497962773 807806014 181409804 889011978 224133099 224236399 458325380 717423562 728961805 975329099 61207247 378232428 937658916 952595429 801839623 849248934 685344599 693332759 104087794 631291576 778433090 957473966 567104300 663596423 874997390 951727081 480462167 708522595 65146388 74926277 844059794 852147506 565333369 952473657 54969203 899895796 916234627 958043364 73223615 778679018 771340646 996532304 944902905 951275409 777623816 937616973 907350441 923696962 713784117 723698533 494354085 762230545 158083660 903154716 879772563 991459542 838777411 961669691 263812244 556020018 561884504 733998295 264175188 399489647 291370248 759567404 978726656 991885907 317225545 986740032 446421324 780771871 181211797 419036127 754650079 803273380 418934716 868787418 585201264 798678532 156654460 682630292 487832021 907655496 568118717 963242116 225829202 392546953 700179076 843584765 375915965 758927746 586652595 681789423 835440082 941916205 703313334 706929117 668432891 749702331 706673831 761431141 523620470 563401673 14780447 665319762 423074186 819962682 874504598 977629729 26491196 749872505 502439161 985982210 772178681 837807453 217501270 801888136 27937208 288144710 212050270 247537451 750444643 911989654 994832269 997013310 725379845 787229138 111557208 610503680 951352863 968785013 442475406 662965899 381130772 919222070 471253892 595913725 923463056 981088999 687743152 955579740 51600707 298448626 155209534 340184080 862323702 969286864 833412678 878903785 832645638 843367462 344010095 528384479 924936150 984022357 883058067 927588834 647568083 688325674 343021766 618984481 208700988 311236125 852069625 891037417 705988659 966415322 357221558 767278274 401607544 502768814 35765885 170739942 404917958 689040899 139468016 288599148 339588329 897839505 883815177 995670328 999179292 999384243 567404028 865965203 228072243 342204496 89306718 914465544 969312550 991472042 482101089 990120425 626458692 979523116 462641207 704353805 8989624 429183760 20648946 400469367 812400285 993524508 429046610 666628901 998668189 999111832 172381203 204200700 698612382 938456751 340364866 572256799 366011275 798115564 196169482 531619509 600215822 727358049 542674836 659211489 856396661 953780068 8220609 932183069 595851489 930491929 488479400 760001780 704139375 962428170 159997816 479908934 785876133 903246972 604212891 671224356 475887476 979036505 185515130 874095070 618053216 825139304 467276079 747320822 570936055 900389496 376758922 577839761 4790433 57926127 555307155 822891752 162554420 549337424 654410790 988968862 61706314 345432650 259476329 721965590 524142427 775753277 191797308 254885848 866951633 939510907 776599587 928963834 395347512 766088038 794058707 903506018 511030632 965858852 806240679 899499902 16290675 702393053 210014342 964052425 190416872 713053649 594879684 793862620 743746601 831653298 714183791 792162569 531586377 842522796 485800001 956220867 68746717 693875478 117211674 747353733 269534736 499268197 467417199 498600295 54333037 750724850 922600500 974630363 115968391 657117251 914983936 964252674 279083851 352352054 870363723 966140354 835328184 906089855 853298788 882632629 298715087 553714461 631842496 831100031 681602156 831633166 418512697 802749654 701280348 894044640 483000197 630017027 629107136 997195661 350048751 387773509 176111833 469498375 297879116 778834243 242808203 456188014 293057897 678700904 290429336 655797004 672216382 890995455 956749153 980665822 410777782 546191198 595906025 800107690 82568952 612018079 205577995 593827426 530524301 916155953 113685325 352425345 245393236 441479028 181350721 986602351 633332912 701184987 691947821 805357331 645438046 689898584 525378855 610317780 403199259 990885413 824154136 946496045 159454697 296480153 422370938 518430588 533837136 654818264 309393893 989540847 371949557 793281059 783850732 881377244 566365038 601859075 875280251 942594022 81211687 287534947 53527545 930122969 694097299 964817143 658465459 710806038 714535011 841200680 759269080 780054453 903763324 914155016 712275298 808502557 551766654 896323396 950073807 996631487 162869891 441685046 158944765 592282126 301469316 418128046 467298674 653474088 947049011 956394036 804839993 992714506 958030361 972199172 763001014 960274009 349412176 840872162 520982672 846961362 838684143 921867204 873510370 890602536 26721894 145528990 615249835 673885121 676872737 994693716 741284739 963398887 332791711 464427492 779960402 992339395 553695957 822622688 883187117 953087746 326748214 402720882 670602278 889265304 171161626 795673461 62345470 866582714 173615299 739811240 729644511 730701978 243313857 281618018 298695212 299546888 420500823 703223064 68095266 245067482 285444664 816547784 371283262 729282169 15850654 210512597 317057580 537951273 207236293 983856702 618879348 767656850 699814689 703693376 11409026 991608916 620236604 642687050 907824805 962752987 123654701 298827793 958345212 974746298 749251716 812692445 515432324 849646500 346049084 375091631 830963402 902196837 381957722 875051920 697823800 922479079 775975759 791052052 326864331 561343031 931928085 939720481 873616126 912261945 902378880 965073324 925535385 993548818 87550261 774924386 67501140 659408001 75679178 542729898 293142829 499742634 550788179 669816527 579749040 624685218 603865265 953543916 322104144 552007918 336484686 659936583 195411119 979117107 739937313 846406105 941453805 979390206 188120253 402324743 742408020 988206841 433178943 904757490 563380129 580461334 860102412 952666059 673320801 987616456 746761388 757480904 277210875 612355732 453071294 540236415 1156521 732903986 491265978 786515497 261751414 451587064 361402317 692805228 75593506 378936405 71530524 214197187 988387349 996861392 543711493 968811588 376440095 820626946 347222723 452941789 960592226 999057170 431881896 664953532 844192224 897630684 725011065 904715157 333076442 492746792 112712894 699946628 15928819 313795281 918476459 925630958 367684385 370907600 985214046 990674952 16612561 700879192 488294992 690843331 944893246 967202530 788428710 940623896 640812170 950689820 926409112 989584164 787475308 906475219 488928 839353108 322958545 360816220 490611350 578282678 568592221 949348134 688189797 842584408 953287053 973615762 34331237 210268593 230987427 241110597 830188073 848800966 151440744 502711576 178701588 268268455 197911658 592333085 125273654 725457922 355454245 606183813 181538277 689852417 404255795 760622224 947528556 979611372 352380998 597500323 164343634 286391938 89414442 349225410 893482070 929297426 407929053 846342406 118359949 574710446 523597081 647175104 965240728 977301758 529905953 997440687 586746033 747015078 757152179 955733607 592965587 970538306 199374428 390655281 814821463 980191588 224327508 394005636 597270868 976452919 748416579 759987162 301600542 306517370 190516532 968344517 954230219 980078167 838391508 932612692 26563369 172230597 558626985 894497055 533392502 968273584 707472947 919246259 512131250 564749515 20495265 982632604 772279644 846183807 645006689 960944646 742232521 862206297 987210786 999021036 350290873 511375936 102745934 548905947 53524832 84464476 118406259 797784499 900637555 931354961 285866095 843480326 667568449 694581727 9757906 938197475 739189275 798777725 44941340 790652238 733340568 923917853 688480492 774860212 6134111 193711004 942016022 958629840 250648167 274733556 737897896 889718443 888924941 956620755 490922285 582008110 985646370 988606300 980682847 990791914 105937950 678870385 890366340 949965695 180695583 946210185 4990015 686343514 491445550 543003564 150091007 746111246 916821738 999366673 692033893 973783539 879318311 933501661 460621879 708279317 397511964 600231877 310919570 545254735 824565208 838019488 468996406 861666488 916949756 951898812 782741765 881940680 568530623 888385949 341962015 342751223 444283366 751968575 100901128 841153228 681421039 832123691 572224419 939653079 803747527 905015730 346451284 471842150 759821406 816114801 112496760 730263141 315540868 698437638 186384471 632693788 852087738 998364683 521460192 649887264 955075047 995726846 902833176 960257746 270219753 318631465 93660085 402079825 918481546 923557532 283125902 559402748 284666094 925945481 904531485 947064404 291377034 940722952 825772126 945665684 241767448 785773196 734570068 786590423 706839658 729634483 990606846 997364700 850586281 953276137 38843916 578691845 181418274 586088605 791621978 986535484 203165338 773948248 840103741 869783242 182615133 358069447 240164767 590384989 704550048 872687016 114551629 797335400 959804081 964556071 618010662 790559805 646344363 967510046 409103531 802416648 739271150 941224886 771395921 960326286 740440014 863837073 361558141 483825380 187752790 549199505 100245039 610705041 746808035 800467317 860002775 919061060 505862618 900850250 938865943 963460362 820541987 839623637 791347280 927664838 600015137 639854705 292321614 681311458 659194457 731163087 550658777 743200061 490721075 648418030 325523977 492546853 641815495 978294385 42398722 764057457 36083686 724742132 89561866 156165646 620856979 655400331 369172067 538820744 788339364 890025500 768308908 942370263 750586840 982520129 37418072 315419969 292648404 498901653 343961632 935720226 802300860 809093403 7119235 147053459 825815540 833759384 924836920 934154103 789331715 836072375 267010101 592454583 923428553 932772103 623218273 732832085 516071128 759988005 138627271 521710552 461211056 710076865 174970972 278843900 579229055 945928352 291771180 723566762 407780590 412513166 106731424 803654962 668247665 894270375 16115932 342889659 627166155 978566413 520319587 721197072 421847292 836697394 242166256 740067837 491113289 792092664 356069855 991013649 209886619 866950499 390327558 411452570 996312016 997690769 145171753 656319259 197001590 707309101 119673840 683229568 177414826 655217640 390640007 704223799 420436550 633691903 470814541 502907264 159084702 597289081 536420243 659103412 840899845 978853557 382232298 940992602 192453832 960569198 176094653 614279900 103222020 856369477 785126117 979452024 633512885 983679359 905386196 909503205 918794730 992457689 453466246 478576663 35723374 867886683 635600834 740844470 593892121 806734091 491225223 584434473 408452213 936690818 40542790 454252126 553584634 690663237 690098965 869178344 688416000 975344584 407357953 895753110 886008490 983806226 113108774 580152840 369110861 716230695 977483372 990681894 739070305 809160856 393183519 716158253 688583310 707941942 120361146 257023515 510948202 827943719 298663131 579787199 181567240 932053305 305378275 771289427 309550110 337603605 639792213 660119855 929697847 985571588 493246903 582017353 755757106 820546942 554079218 995907840 13980197 179306226 751442351 902476313 583756788 625619719 132330127 450570654 417557116 871124085 571624892 704590672 705349950 705453144 683657242 833326146 222239786 229682349 750414837 836412458 798656853 897538913 477322269 830975888 960462122 986641433 442310574 902662717 629935884 790367679 449553460 808252566 184906140 531172826 363426102 858019825 676786902 944788015 936849686 982762062 171021257 826675398 153137968 693377898 849528061 929640523 149552146 296743727 945945655 981517607 18493421 476788538 78087377 961365573 301624265 492202412 92934732 870484926 86855329 857701759 460728766 724266147 486408895 620141562 957614634 972417868 31599916 349659897 372617783 750673772 145436265 252903590 115165259 840431426 466793452 985376270 960854217 988344710 898412564 995260249 448819260 524747234 702583112 847539881 60959047 92722084 341912088 452691333 156818688 567783517 43010373 272906272 558700966 848990811 954057240 997027457 985928353 989807406 658867307 693203024 402513402 939958398 843275916 845175662 445908446 669475152 905748221 933197909 428598091 720905264 253363024 715252617 420392079 523897264 659084936 890022851 517577271 668199083 543124083 829883168 397733891 807814072 506827669 821971522 687130100 768707064 528986353 772472030 824784738 998736068 664233067 874291268 858922596 891242822 556280480 678510627 567222700 997937672 13925261 588240127 437047857 890788652 587517771 673102747 120619412 729079657 765198675 989976165 656956473 964166300 120161537 373844279 635794918 690289858 972085855 997838680 411299594 601858303 694030133 759543424 678083917 835881988 782035899 807008215 330377549 641765086 416673770 702927525 737911622 946837472 7043350 182246751 275303299 439549856 645146846 834331086 166925346 236282657 315100966 365993219 286723702 756615338 757071748 995870626 443164177 848298547 518781480 614302450 882598374 909098245 165826649 551727209 245714518 284020062 118878103 292885828 205066202 238926954 676025126 963137490 601923438 679911799 708874278 941625358 97311009 974780602 308778747 677839005 121396600 953711954 614120751 826267562 497124124 936641649 825781916 974800399 990667068 995595819 445198062 632196203 119599174 218469259 106456392 557471945 703687344 977486175 276356525 711144075 256987542 842484140 824987846 832526393 512340049 714662066 294424727 520316969 106105788 782581412 792523597 885527539 618067055 956334108 657204986 956785211 189665798 691513410 150094684 160923018 161275573 357552338 45149049 98052497 957203615 961759342 434961496 976417536 250462659 500027072 15838523 339935140 607297132 763001915 64394467 253861586 464429970 507633122 560917805 670245983 964170522 967916260 829933015 947520698 515120270 984431315 532738190 737040727 450528880 600049060 16564084 899113858 270984017 930735203 456407408 497169114 110141224 703552752 832493909 926160632 746330539 816142390 442243805 565816138 501304718 725737577 496929536 866435666 667272739 813093837 341611003 950332217 760568989 894954867 271275370 968766719 592349483 949332265 846146292 888120658 578933930 695119133 685264558 746950486 713732496 818339071 575767124 617438215 23630247 147107932 724351176 812758980 853055637 989020880 673978081 952694252 757266988 831841583 161229493 600351382 367581150 580569768 238700063 811627179 363728969 535259331 65498164 800063866 192512946 547181899 955404223 996284240 986263364 991743434 435741354 687784978 96733592 959527929 365844889 497478321 206397958 276520669 148501528 302476415 367046277 903319847 474264700 483148749 752135322 859923978 339210806 872291805 412935509 662348958 124788206 770229320 929983400 931508890 109957668 988651116 116707822 641165819 576383816 589415132 650546185 685442308 398761111 877388769 749627486 793051007 51362203 97134468 831882187 841174862 867435626 975432771 168207254 741792725 454572611 855318620 458278949 715723595 439374166 878766289 441655988 796925101 91452706 126532549 602459219 657214628 930403187 952775830 583761918 586950842 298074775 490302466 381606399 601066809 416265232 907229091 306897475 985256693 113551645 274836156 920336494 933549814 102839294 123925703 572471144 997464640 237424138 988662787 342308596 792762871 568311564 581429199 299062288 960924599 263382103 510522921 660460093 746114116 377213643 413096088 688187655 964053732 685784076 946572989 471618795 499797435 77374405 268841444 618341932 654912664 474402844 973721876 614237737 859031901 616330256 952227596 61358253 896990313 646699103 752741042 302976496 868490304 126700102 605294606 681094304 686668866 964704855 986942833 711089748 948699130 227130255 381066454 565654421 681055576 155686807 962428814 521322004 880362334 609438083 989332966 546194240 936303292 312659788 410462577 267304782 665266943 242247968 762506014 845049643 951945573 652767223 909149797 39341693 980198176 691143177 957584289 489322070 622066797 592754787 881887622 8210357 639068858 426286255 505686949 208125391 266024664 306952196 394296701 805216680 889718400 875048359 890296637 818520277 962215883 730862017 749457649 713582194 970533567 457793350 932329671 156700683 267617976 653371297 891861090 159236974 661463685 442601948 662760712 296491421 935781645 586160939 604957514 12176402 939752280 54828830 83825447 764964287 806799189 21807474 169639932 441454664 950419298 34489282 68529525 294621554 862841193 856055350 907272381 210164187 996970272 654539390 982887883 3249615 24206009 865750778 928200836 78942924 905751963 662770716 781940156 695652031 921252028 812371389 985971284 313210565 886202112 428026624 934451205 222385161 347658442 553934108 703589005 678119683 767521144 448638574 818108031 961681538 966016117 378682928 757880475 462706666 997702710 638174133 945015632 22201149 640257097 502359469 822561042 953354901 985130270 553031421 699612690 840919984 911020187 657339441 831736921 692866028 848017115 161550433 790098913 560752253 919960664 9153252 126279414 721472714 728777866 458539114 921893320 582885772 628600973 985811187 996875212 433368462 528021567 540310187 736294858 45109397 748400530 922309587 980625887 66615793 857080353 22123992 562822050 306868434 486471029 620521149 661942711 111878429 206122073 703110807 775503002 606629407 990269533 303708974 847472641 63448185 992356993 147980720 987326581 335415049 980898706 234823739 739722368 401320100 560764339 770413788 819259102 119948479 759918019 621815774 900837263 929414255 932272392 495283876 747682872 315395987 479732079 87197152 878995087 77454360 708804068 809048531 939668176 394617850 748644643 761587389 996512393 130244844 209951030 374060868 875762341 186171016 566569694 586817156 619709292 947215784 991803028 977952691 978887787 52983963 870614931 159339834 325868633 34532154 980122242 502683958 970676557 665946429 948191925 616621370 696981602 578675135 833372210 51012692 509012687 600579546 966698767 933188112 939701809 966662090 982241936 995488257 996300011 356574337 824262750 234868633 593423137 931186692 934506804 137110902 664367034 181521643 753957035 301728947 533746423 725530440 767153136 523525030 593852231 551462250 736689182 584877025 597105498 295019430 327082080 749748102 880812613 29574408 278200725 149599646 310851290 604927676 944502523 886205739 996789826 160876671 440211758 430947086 638456455 782775734 894751253 782268949 992175304 419643707 859262564 260760556 653427156 902084179 994675698 90637977 658769269 711400379 963120109 15227073 666301078 613304617 810765298 329728995 418266524 42067558 310032788 898588186 909567833 523502175 905337111 886215298 945487749 570966518 798029183 867392974 998791233 958297563 964875837 750588965 961570680 811548048 942330365 467364957 659976876 884642803 930246962 507019981 775128789 86946529 663042904 169893311 695117352 580714108 886624690 708115411 719439640 995219276 995646277 868786703 985858271 110614056 885165712 707746468 820918448 103642694 149546099 720680387 751498426 946543125 956078493 314692433 820458834 532595388 693348075 50369105 182478206 17887106 152366484 723667883 931575810 944143192 983513856 730566492 924491506 643692556 752283867 100448534 119535228 317652275 509878129 424743408 720037849 213187648 268557369 412691546 940575291 349197316 810826417 798562312 895124810 519050844 747125700 415571376 574545011 386373802 451625317 83127337 471784045 394325100 903249607 282533607 392756562 275703784 991441731 644664963 842752784 129640184 479912368 416689390 556957013 406061923 966197055 439778875 794784816 863359166 992913109 828770049 935001955 218068017 314342141 692237053 818329548 54408625 269828150 353673300 729336297 951628921 955785972 654405418 935089271 63373768 946272086 609372413 858897982 749415746 786195127 379852142 852775075 983584369 987966439 669652979 862378238 479084779 521085955 83281132 457539849 567539032 839569988 556788341 997644986 222598034 721522458 902800321 971126731 165488412 966898580 350632174 572512240 197987163 242966363 359316608 446857104 809639863 853781585 913621075 921311449 848833777 884189714 863695310 894428919 183965623 380055764 503281417 866481115 615726762 816889887 993600096 996880863 761334094 950958594 32898397 552269697 698622538 993886117 762879459 856191307 19004293 281711771 146480826 737363155 428964748 996243977 294183901 720257256 690653940 842844914 997136701 999197130 707178581 999168700 804289814 870316936 144707441 323797418 155067275 445801335 78450561 459676655 905558547 986287108 476963105 753826940 484276826 942389507 504494412 735409122 249546904 808998435 339845662 569592066 839720762 997054814 368915082 711347302 832383754 985536144 636077966 682404407 211149432 570154362 575614250 584160745 580680477 781371849 696310212 886994265 434708443 739868049 103533933 594927805 23188847 865996605 143915556 761772409 643373797 973080060 704827786 959325485 860333902 970482996 104688173 640067954 770385537 877131974 312607172 959473912 451770075 903835874 796488375 972806358 685190005 701934891 853620944 907504388 456298845 596922891 192786229 779609969 763728399 994912743 114930354 518263503 801420498 929492913 138879447 409072476 766086503 915371966 161207381 940587100 871680221 919842885 415587811 918572835 839426656 840058798 991302909 994400655 430616017 504820014 873620470 938233639 498761215 918580403 407295515 649576245 764267215 975977298 642701477 851243358 933180597 961837959 806817832 914556163 987153722 992278740 34751713 748487100 816952993 939274972 339935702 716894788 62534469 870166826 492069399 651488360 728991545 992892113 87900992 94089154 642675564 718755512 615850029 694949556 50442991 381486009 882103440 929033409 728467513 825488900 446088643 805989037 301726156 559198311 212359168 976733502 834188432 901229341 161578446 347099944 260341314 415194259 586981109 829239851 127896663 550423229 886908288 967114736 909880218 989106560 113803380 764165842 471644242 498392267 215660333 274125298 726940885 785417996 671209697 793314841 552340406 975184352 175664787 373607780 734738087 897880529 33482800 977518084 568869987 609592679 779978811 987084957 719749601 923762976 775833213 820222890 274054120 910407751 59624316 359443252 912599795 913636165 377743751 941523078 323539158 412924724 103459963 367275763 161139444 695592047 575359609 852968455 394639044 507373892 172112775 198071410 758755726 766520176 71277350 720429414 535150276 905837091 448804822 670609078 277619414 606763951 158287329 417310684 517839289 878252134 982919162 996649153 854055252 900216747 321598275 888465338 864569955 922456346 753218026 794807314 734658696 797195552 163473722 958755693 53253997 718545828 4456640 698098272 147515574 239379843 167396069 266838792 577821940 958158278 803787696 944406746 870033317 929831576 16235117 170858075 24580886 536082998 18221068 323918456 564898590 565743909 407888990 493740485 800749188 952480584 607886602 895044014 563712097 946196331 42119242 914724831 272652774 394105877 769255603 970293649 111610993 740355158 817383640 963154826 688639011 726205413 881038254 938622238 784663837 921345081 452718598 875197720 64167362 94417525 476671942 980732847 623456031 939764921 832442703 891691966 312432986 503988238 316058024 413215346 126934327 457394804 389268984 591693903 354458401 901067424 623596654 726581357 658836269 886676716 560889370 972007716 742481840 977605514 936506052 973983355 212929814 336822257 640856761 868167719 334907268 908431146 29788362 426944641 608073945 693902774 127556019 768766667 468628325 980236997 789318446 951618856 488238789 755224347 526877757 988004255 353112080 619551270 388225060 520399085 978307784 981304005 342880206 427088511 410248959 493808373 277114744 694665869 9779152 113533363 988072289 991579679 283412678 359025949 272721388 855954921 818221931 994812525 412433850 901427724 988642534 996669567 414010686 716181476 798179068 858267132 401065519 522292205 904951454 951682672 124158133 215069899 698022143 934343278 107802015 498237385 923485878 955681859 323565090 569588614 828872391 944315945 233041852 487565950 846631107 906964810 389320999 607416425 126627575 917433350 636581317 732841599 117284235 246660886 60039411 673177400 344962325 902524466 411867453 423577768 531701850 750278318 717304734 953736953 833942911 967988850 510312632 823517347 892703977 990330623 972733823 974932679 845729680 963975076 338119371 873498585 146969259 160603592 5245790 209508928 539515444 840472692 106131503 337204789 318886698 560214147 349355496 351045676 437814288 799361483 996435117 997308454 591515734 879891421 712360532 912581135 263628247 895285851 436898413 454503500 903903761 923902932 451028515 679101447 148619521 972045062 671049427 722930213 341035885 521933100 894263032 952716688 521534878 716863825 925398352 946599265 873201006 952573166 943918996 998616287 964624894 971272934 505559494 947998493 235845066 402679332 389896587 918336995 142492748 145455805 949474746 987301372 860293240 894828907 992587370 997301937 907424967 932431782 664455578 772355305 271962959 948819663 47748833 699290420 269026580 381484683 570754541 821313734 69423657 631038235 606913560 811632248 386730965 716186389 146876406 387802416 404705948 406365546 202132656 370594352 281392247 980792813 274200757 759967280 512869917 667940436 998867709 999364724 162779133 940886320 29688886 988959414 460317435 522650369 298336602 521498408 117351587 812173925 890917954 972562918 976075842 986811594 907160180 954276687 67339965 891998636 382263396 972782669 944726471 982231097 497448441 763111103 230530353 802579423 710708302 800721581 408170193 602428207 723117830 755674802 184040150 682653727 685432313 879693098 311917672 859041249 899309419 911084437 498590707 583424849 861794651 940685272 593765463 746636765 375407679 821515806 94821086 725920857 556830704 682491920 277582261 548342936 940729273 992487707 106318992 377504235 326380636 684632217 636246874 641642610 41749719 921836694 324157429 971971422 451415242 812027774 818535772 917109501 730545883 879257779 124635638 491582291 74330751 509188112 433022960 567938029 250884286 401066895 874088695 897039436 902136138 951433537 290136729 676505099 221239732 797568782 807190698 884800875 36023616 356528402 112751343 652921281 868811060 876494072 621110093 717915726 822650818 853167308 552150321 977141868 278423852 825224290 112701164 834169342 910284151 912136793 180048802 483875445 700201520 917141077 209382228 678182965 728028238 792169644 106555367 152887416 104737674 582590307 204936774 778290155 976915192 995531855 678667222 834500032 211675676 409396404 601288399 845735685 363234680 913344225 991362161 998664095 487580168 743904405 107573846 971089366 909386333 967910983 871552515 932832386 399810653 907732703 301084344 689946914 99238890 986737780 206358061 391639022 718990346 758784446 178805396 368307309 403655402 795854053 516087579 915694247 515035025 601554828 869938392 936597395 756450309 996388174 804559669 848025633 591142790 606849156 168888487 816127671 470543989 662083521 235856166 500752778 482213989 829135918 397688449 522357950 69462885 772432028 155316651 660949562 788288650 836161069 473802316 635634693 23381877 466633813 504862684 931302991 424165337 529999716 950937746 994930289 844590832 984637367 457682575 935800979 437042978 916260193 354462518 940077243 642029848 880014088 460148561 798352720 61475295 929377403 198607035 465891765 512133293 672127962 220987809 242752043 891545605 939917811 708824539 718466911 831950203 939918193 241624582 862369920 215934075 471589734 466618441 737723700 516970868 795153154 618947464 976037195 623500071 723835371 555330430 864544943 475884254 520633765 715619693 802855629 416685605 948414311 26613339 213261802 852020200 938884279 816492631 848612819 748777926 836330115 715435335 848085827 528150052 755239156 643914729 790682209 158785167 941454007 474499199 768116205 447862570 478766250 843431075 913480006 946289367 981177112 758379492 935191707 309424086 854121119 823809075 932339394 458863324 734649912 24343417 546321715 204121940 398825516 883193585 894753309 712740397 876243380 313694591 469277172 677466041 859064235 693742800 728414294 823273504 887772614 56131984 797312126 191035485 918455623 551636670 833857514 628521460 939203639 48165206 545965701 911202595 944938328 838714815 977461541 686920028 712071064 455000313 664589008 890740697 946559377 821189948 897616064 782309578 877354020 829157794 998911635 127382416 857619102 530729970 687172729 94246434 796677786 358563971 567505076 715400102 974226920 303738276 979774703 743576512 916618974 673043704 931195190 956709886 990486736 650131459 817294366 183041349 288729277 973661749 993682570 358729552 811216177 648010715 812427188 238906280 578742610 834372449 871671578 118007797 431765693 419965459 682028584 242737721 631746800 739822270 860858563 340835256 910424504 777438380 880226599 209856266 925089858 766064426 875276551 626646044 909920818 283607724 346985785 857618657 937274641 871936905 966253991 392918651 774777892 344338867 497713700 776283925 810510710 746315579 914507438 707765635 993137671 610314905 803965609 629004551 770515962 705337814 748365659 367525998 436464757 531619971 986374677 15709967 303295499 637215180 708618903 246006656 375334985 264559123 296600578 227076163 930497026 191284293 829864903 262207701 876693738 19834770 210475467 259624631 823003121 90936658 315523316 807654230 849506842 374792335 426386381 955942295 963975123 381401537 988268638 619793263 767846120 816412705 977444656 855722236 983353264 938938538 985315358 149734190 434807279 758344954 823510060 235503397 951562948 650356935 736906220 424303118 587386562 275829547 965539818 763368402 821674042 200402613 511547291 404733894 435253980 384543019 977528182 657389485 753609132 754840361 767415538 122438758 270830058 682307550 997894088 474131382 766866970 373803715 408364820 695466811 796931623 844678972 900818996 196697083 317009101 801898754 946854035 338133266 347466326 119353418 872633109 279532382 801669799 168453016 476814816 965562826 981615032 932456626 938552281 672470861 856389745 616458149 949892151 71650599 733760925 683908155 901352874 289238566 476412494 570984087 702181561 248684053 686577010 919118409 969555077 675251656 700500136 312511533 487700123 417094339 699083137 884805773 962830778 759762456 988552270 66306690 446889487 13691856 255636384 330388659 341635325 622788928 732790571 923476453 971595426 178596969 707623791 233330965 696811759 855566991 969270164 792077069 884585151 220921511 469038006 797671431 912097054 783376326 801417920 230759440 255974300 750815740 954370658 784088963 892984921 284188577 970296742 707406939 914278421 773742008 914449665 16356338 788531431 564198737 647744633 640213334 699444350 493119160 706404629 724262571 746554314 554719620 996147130 107313768 622304352 334169939 930035956 707643432 790841562 268533776 598546736 241994266 370478747 122254936 981400546 517624464 790738031 743061507 984367113 47191543 597554685 370355166 773278464 373236562 896124259 199668572 829994750 298590615 653555325 21075599 392737299 995282272 995533633 492587318 736984298 341423415 503696307 30044124 778297225 1093197 790635053 61523874 679110922 135736187 984196686 667482483 947560569 644669240 683368184 311564301 496476382 36540017 510574016 285537735 984050767 53334260 507591745 685887787 932969054 443296942 553252192 245715235 830494060 955897633 958473628 536675156 768107801 446214679 485490424 257734315 668488682 126077620 322292613 562813451 771432519 422913919 778245348 182311890 582526682 178040920 382535554 923814268 947420115 1193880 409467848 874907730 917873534 787855401 911691967 407997619 717817583 727647018 986729220 288970284 962441612 494526339 499687540 87080549 667758554 979409812 986342209 480831984 814359030 893321860 952076659 981479147 988032801 984446240 984930408 457269578 457891704 682868363 909003684 525194651 883272134 31471228 672441975 784914090 864113094 88277723 517536437 393638883 567498483 482942739 809455708 380680240 927917596 583408922 846592422 794397783 990293686 355943550 826606430 782567308 858794532 205975920 603475978 579174898 917762074 980199156 996425601 972715343 979910524 450696074 549796673 427844008 543904604 583968000 635221276 345414325 409980310 213031985 553035315 863990831 956851214 268175444 478553308 9278672 543599468 507519629 823021329 18800022 430475235 384751971 838785880 261953304 709519016 793898344 864610855 398961078 505162622 509252763 590484252 30845358 146422902 473957163 476023155 765979464 788964306 123392589 514172149 877497650 963526352 683819394 711149810 407148820 826564939 873389957 983286430 707399230 726985143 431308011 441218461 791430223 991591311 456151015 945559864 633835953 757309799 952150945 960542227 353322059 382903949 722082930 835299395 563505173 926982375 750399102 988490183 758621930 791670982 686512076 841448726 477232469 676746778 513502518 906167705 206240906 650805347 154806366 337301943 287200628 299398680 447850482 655534692 827290426 905444267 835659329 927514409 328390176 714448811 763520676 924399125 497734470 620170610 12636600 687539436 678062733 698190054 241384933 891832900 246417188 680584283 803250727 804631919 452168376 753996525 740872145 911940808 727461108 976724941 601875259 755783501 965930845 990236666 500525273 845634154 583592490 814598046 914391269 931913279 487196391 493024911 686355233 855974290 783099695 883215772 360385015 539797910 473292655 803724553 486016453 911553698 266463996 446525114 468743815 578841465 963283346 996855622 809939426 854027965 31052257 985990374 246651674 629277299 23053987 580921586 112631834 507535421 654883175 913708710 18256073 578907867 902317017 950855268 546803162 677758581 70021215 583415453 295977672 425935124 478513491 886347993 870972023 977309244 90410323 404959983 895679516 932077225 118941512 636595269 261570832 753639373 672257899 844460407 46535042 698228058 423077335 764161486 785991331 913584411 259268240 474618410 340393462 793242948 652860480 759840129 138719568 746723469 123271757 769036788 619656215 939993217 142286206 492359297 892822193 987313423 713275180 961607118 964513626 996894682 904873944 918700027 196933970 878901716 415775054 657060031 459371137 622886112 248904005 547069551 550312064 890729381 172601315 800466731 722526550 933524166 531272820 719534055 278149319 357431084 951786715 992856581 95385749 702393864 239061414 256205442 985441443 990873109 664923969 831908082 939626537 982089836 54069287 284876403 292481024 385688948 205182074 616346720 656842158 845226122 295042608 658670096 836298322 864559570 968592943 999107824 857348009 961368679 898799991 998648982 615751338 682255154 143899746 807016465 192271457 958078359 73699876 477634733 820152136 921134745 149519725 902453258 704839195 891805301 430377248 611010685 49226816 174837145 828577114 864049929 699698372 820196704 432190381 505806422 891712019 959054311 613128332 709074886 138747047 150075509 842647793 960779852 713298433 721825440 277831586 285026239 689439001 794788015 134365321 512780081 154613838 180986194 74508392 344778559 448976038 822725495 152745909 323663589 381938575 446136229 292028201 838367894 105146946 669301150 328884557 409419160 713595950 866638769 342542882 361229524 516721347 887635283 164043599 730280120 866517157 951523010 438737614 740246315 572196983 761164537 807051245 843961795 206958804 554031336 580925566 889638458 609297723 707621887 127901564 955317250 286501383 412381410 192364701 369144663 630890081 790501993 376921000 567402425 243713665 758426975 23514192 565563842 893578862 910811128 735254681 818526958 640675006 723699964 948868715 953532247 169673990 602756487 766687736 787376725 780191110 961621309 60592281 600825144 682158450 758311288 470947057 730486252 562832989 676208119 321578016 323902047 485360661 583888867 375698815 825624152 157426371 235316962 776544896 981521298 734984169 856975724 731305955 755965171 870323668 973837738 873605258 919950065 864065143 869409328 11739841 36419020 827575520 840899287 111770152 399187890 257308442 680220506 320899170 465943660 952888569 994339035 80130437 643760953 351803434 429765456 638929225 945250276 972653201 987937242 438969838 510465879 472698168 544794581 517928871 801215990 14093456 479075034 157272015 582760346 687319634 942659101 572038758 797235878 543305576 643804312 196759466 314221107 229631391 651812798 495731764 605161997 219496823 910723451 805359207 827052953 240064074 475295364 306166258 461698540 732251667 982296645 22769623 659616320 280415788 805086118 774806422 887658760 365853544 800519440 757754913 925497771 696137126 893137676 154845674 364065713 466132275 663605892 268458439 284777293 21828511 41395094 910073008 911112349 793111141 961511379 188221499 356666612 557577959 641495101 874966986 970017525 576878239 716860412 585568685 842311474 658721560 771632825 275954929 401813575 150277992 394332736 630839264 803654854 997870389 999084809 867554225 982090373 403748048 444023126 738538538 761535519 390258347 539671060 912444125 947904086 628602272 792579952 822711734 971275193 863326316 940768655 369409938 518168707 93431296 462616898 901979318 973029239 148557675 177057523 619018530 645466863 929618465 964900567 483420004 925866780 116327083 644009699 831856375 929365503 771651267 938551769 954394706 964379118 17095796 754716802 592720040 865057852 527698227 537106153 19479565 340297917 196446723 212419750 409293342 450572002 953766727 969475791 570100959 754880905 889182805 917347080 207257487 829574692 963978312 965619337 722882547 748285012 150521502 767089110 158090614 444487198 985369601 990099388 948100796 961321939 881341963 932648082 433806433 690529808 522899512 590017036 919703131 973246844 67691001 605713821 101326261 163043622 210471068 323205053 182660130 193270791 951385066 958995498 525093649 567945743 264011715 339620563 119993293 793976947 308193205 670925454 920827683 971577405 44622224 923088453 239322787 880551795 299702882 866342458 868302069 980856395 89126310 151594805 862956681 918737486 140354071 891751569 722650140 982654112 164304751 831201813 354692197 378452978 629687205 835956848 354136990 410437771 367994842 555655788 163906835 696992027 256754652 859372280 194443146 968192643 222208314 761139438 895584999 905677567 473612405 814575001 351049570 936888431 648099321 795482100 783951309 792291069 482701641 550715988 541996052 684376378 939199331 963573499 670551089 678698995 695894184 826782589 615984338 834574096 910514572 917370204 618836771 896367552 999383043 999388648 556789503 768245322 207771575 393796920 672343419 910220859 554383431 600033754 540384255 601929885 326753638 654470203 341418598 536500623 58950473 197768661 610096134 837266320 878202402 902727371 935730415 981006272 434568654 804570099 649425407 661378464 559749637 797495033 73467977 214021706 561821098 831867263 926910760 937381139 137662097 987935439 110140779 740272667 269191532 752514387 879404047 900621691 607216985 944640800 214089426 712646239 586250432 925298868 245734563 870173102 333212951 433227163 37210665 915653792 866812506 909959617 625959601 929670084 883518471 963142252 986146720 988820122 611465815 884398907 8754946 381935522 25596532 548816583 455118719 798918071 940115659 981758799 328312839 838749754 43793683 576371715 626709618 797337741 837408599 943047316 573584136 690031470 124533562 278273976 154420454 436412385 668727173 738282343 451814939 748368298 489382575 851201625 763127401 930916671 181548068 868196477 503698926 654628579 131972209 391185606 561089454 689824328 400643641 455869363 838802326 845626762 246192939 290944082 77007920 587483538 796756927 842701139 385150267 606632523 535168391 920049889 987196337 996645404 514087125 732523731 647849320 648634954 413964284 950299468 547508226 812417110 800402631 960767823 179805603 669600867 580637059 675291884 354201911 943064768 759996250 962230967 412984346 692256944 55696126 229656544 871266760 914123587 391042119 671285716 456180212 912065807 321145356 697897163 663330305 955359720 997042640 998710492 512404199 574093553 501114422 831625223 199609700 735095691 493344774 599081149 535881339 628472874 351484029 618375141 96367087 300848492 496671559 809912688 335361209 336244122 658765002 850754279 243054985 837920632 391574208 930608043 445060884 799180499 159377491 941593852 587062298 966702951 13494884 29301527 101420450 501955423 57184341 950720026 680942823 992759358 508799199 577454630 569282209 965955158 675730505 678921080 197681398 574700487 978130598 982617003 895589509 965395975 357857468 963813965 790945789 874343280 658222831 672880796 212751229 709653304 176829269 336449368 335974819 541290324 672556297 768113505 210697070 411631938 83186830 972944146 582976707 967943367 782300554 969669193 742324462 882764252 793698421 981292954 21590976 934404237 758113441 879956973 925729784 952752622 195360537 990098573 925965483 926923624 331775197 651538614 100430400 404934175 186854022 251869095 520630934 696720228 621988861 804278622 415314795 598858845 564252191 667146096 501399569 570460235 561391540 960963903 208321303 903274848 899991591 928334945 272707572 439553281 939429547 962403095 439025587 671262799 855070354 907026929 968639224 977993996 379241746 769184633 753420016 778357094 352215824 946060346 233561956 435653827 624281178 637410017 431300062 663004095 540381392 637948767 712027750 765971996 648485459 952373956 198968647 830266884 112770037 711743267 202846479 852599926 611472724 782974050 376356304 434752672 407950059 604741360 424494837 886729667 695063754 879825712 37402416 217659368 745359789 840747631 631630876 872795985 732456887 988418362 827780087 916374310 762540643 944452718 252180957 264600299 385208320 802636889 678960003 865520794 363852997 458481374 276968704 361016886 460626929 517057149 908725340 919608665 452491145 590903814 877737143 940652242 818163834 853566979 873955766 888946855 530747046 673007384 122241284 490213715 912160505 961141917 195594015 726293290 139905585 320696516 641651439 858456032 5467251 129802171 629597117 717260676 666276465 722126775 406188577 458574246 927852161 936018025 65126884 134958922 776530023 928599193 484554771 807288406 599978973 850426442 543056586 671350615 569853939 701456592 433462126 875674407 774386773 925144575 162349968 422066877 750204482 869552531 759136627 811194139 775026385 904877944 465662426 674415372 746894233 977318755 449202841 725027579 955717923 980614944 810923452 859123045 967759327 972077642 463055016 816331792 946555216 983940209 605836839 793949787 574274177 622728132 851644885 930514086 222100786 557938443 924337462 961581514 933710549 954416559 326526341 834608972 717261169 732549977 210446997 641232292 193963844 418582696 510474982 687153675 931533462 933031217 720965028 946096404 280186767 525599219 730090725 898515379 716075852 908597779 980052971 984417646 917813883 959104741 965102834 978966438 699755227 937764382 326924105 579070151 348477974 532548011 210636809 409274295 207390875 830813334 530541614 730944732 247436873 989966924 517110850 791962637 243377201 870091578 857051220 857800806 701848435 952685371 623095863 625159199 174598084 228268385 164864869 559169363 580682226 670035897 332557276 836380617 567812320 693646156 630080807 692830346 896116196 984802722 430102246 822461799 494943459 565782559 915001731 974375321 554718539 884885871 201864353 633998086 898867141 967474093 525108749 618293278 507911595 511324577 509402794 853535791 57038063 416112810 67947985 823933843 240404822 245811866 479104559 695205178 226758663 958190935 706415036 933345439 220787940 948609019 179423592 716886611 395778738 902891257 425025185 628373277 806035282 920792799 936486696 959119253 644580406 974460607 768285467 812569309 623427530 657146860 467124404 473154897 249802941 650676547 979135215 979418661 420125682 789382154 55711498 137132173 325091686 474842362 220459031 292916920 373221915 664564069 383664276 936223997 17608983 163956596 681871093 966699452 703880288 839564621 650746874 849231733 548655519 672629441 354257517 496355068 907755581 926785487 83340521 964241750 148122500 192108530 309416414 547853864 62802672 693300780 986237068 998710722 477420303 549929418 916085989 934406447 624096716 691004976 877721466 954774166 847094625 886695319 840402463 887804148 160976413 606876823 872627044 996459505 377988030 886006200 956293223 976031241 80007545 872924873 738537709 771659219 8453679 695544442 681342895 751553270 59677236 485459694 34142325 952120310 11508118 625726109 163487593 918998859 462434092 788849502 304831516 638055034 699093569 716097588 312083615 962267245 373405250 446354576 694136188 914188637 247412831 287415631 814668499 911873591 704152383 812171991 413785512 426309687 222933318 907103893 924618081 995359297 985841177 993648547 351055729 492562231 120880929 967696518 44669607 954487587 587935633 714788148 546576366 589586884 692624134 908328282 618628229 646223448 513669180 752346880 252051204 784114033 150835081 434221294 694223960 740156604 782342052 868865301 983836890 999262480 154034399 879721752 896617248 975259517 248348664 819250306 296880961 991858298 63652995 722351065 310307279 553048684 833655911 923784695 927025917 955678038 291855063 566698825 987558217 994210091 635709165 949834601 421467324 537905334 360416377 831353922 561836418 948793704 294934394 384429660 407790320 435021210 264973676 681134714 295946634 412366127 374529177 843267326 66205014 872606393 299048326 357378312 987633804 993042767 775519726 937469185 469862801 690398000 556261907 816971026 929155205 964987879 654653322 831910366 618438555 924662664 618619048 706846236 84822446 292245017 56959279 82376297 81611620 473259055 197295154 611176667 866742917 900953492 904429899 935924657 501644867 727939528 90011900 788964565 278544476 319820374 712608902 854385716 546721085 586735712 344199270 635413617 397726577 466158455 511533327 998500263 918801346 945121298 552745368 780730956 240816409 877450271 746780041 886151372 122483568 869160841 788906312 970850236 720744168 746450997 496000473 926549544 552805192 565173956 733061101 922945326 50942938 657254749 358561083 860088958 30487323 326920204 946132109 954634017 664350760 793405191 365139359 596021743 288637732 921004787 35295236 88280013 641423675 746911608 797266120 974890534 505832854 676280545 447546238 792582672 913436650 992027942 461935960 822964735 978507483 979996139 698263475 929114375 7889973 24204337 102869130 402918073 775227091 873146774 996234359 997791696 386222524 461923667 914863606 952951654 866856068 899883872 271191504 904683315 722098788 771667726 49757275 339965429 146931771 422487806 595532686 702791412 23521057 216880869 943632041 945342100 460600174 838176939 187426288 917823107 475998275 830982343 539609774 561937852 642446351 830352603 119195127 859601968 564853932 611775547 875653311 979514714 537340495 906081114 997240809 999042587 611285253 898392096 463806410 693792438 320415073 599400114 804554667 911510496 206522249 971987784 921627909 941559374 884490956 927626932 618839054 804306632 272198960 648714036 29792238 926635146 850014050 926932864 671646292 729553877 391610827 939379042 41647797 317784963 328602145 453500770 72544487 953021849 388028886 524778377 735861439 880737415 301673200 960384663 669377386 880267541 674619051 676867176 365546226 677098724 145834355 674209225 881720511 952683555 342517466 689493307 543636905 679550411 624062630 702876319 512459831 918070580 415672836 770545532 391787423 402627006 641403362 740724983 554028865 554105829 332479509 565702941 735970169 860712842 757392151 997127575 967443928 976192172 12498863 525133925 578398783 948692245 61386124 214599968 846391581 975482319 742834941 858657110 236361226 813276938 294821860 841305244 827341195 960119839 790715152 967807700 663217546 826761892 643544093 939936389 629209158 863523647 716065655 824790473 14734529 520847688 967267995 989854317 150264949 602888424 584834983 649684254 693847977 711115720 648325632 986453371 96336242 965763018 996204943 998897003 564445561 650969046 843111403 942694811 777644148 896486288 715200524 882069041 622122780 782157003 522463053 840551755 692800196 704436385 764293794 852217403 73948294 923820056 224322641 627913053 560272357 903056652 818706128 832645556 839025904 945158875 96758629 703549807 251488371 600239163 707794128 799040210 557803742 817527115 848067220 903596077 236039616 398462942 144141931 628951796 94589421 969716038 109159455 956928231 444011097 677820457 254021149 370639010 477776203 669589117 921874088 988450741 215513525 370767468 839885732 893974851 224468080 986690969 586262 126228873 217890356 688599571 599294296 853410417 222420448 719733784 325642301 716884876 479789496 585332162 617687322 730816544 655576589 707863658 466381568 938422086 765038842 996334536 997984107 998958275 280869955 804196627 430798471 570065843 994706180 997091371 386607270 997474741 472934854 885102755 392474772 921215363 748761458 757614986 25667664 934053379 850855094 960266801 720107871 976563982 837015071 978332508 105387646 576605946 339291618 816486652 929273634 948039996 5354121 527656932 9754716 870789494 322062558 729367664 308954027 424290602 311342040 314025832 851740186 957040619 10481214 133708691 649799713 729918055 907509477 915326235 658198352 891135255 786095114 900728312 293813838 532234404 99377578 225409568 641453962 763721748 282917659 919685399 369608442 931408991 629360240 680289635 760421308 783284773 954483042 982993354 385736508 911005663 475947204 818400692 19449181 389087884 378227855 721076811 453534106 729589936 186344389 761611760 843158396 948998192 454437012 663197100 964321562 973705549 293589004 731008295 982078286 985038305 938744345 973729170 948040526 964287104 555652614 897873014 330282391 646833883 705351292 889519878 184066315 807065109 116104296 591638653 285463872 765659549 481557070 834169726 420137820 743803720 528602412 673328080 821691054 956880517 512111417 789792199 649330209 785622126 711821084 977980750 803796091 984868678 665151292 840963993 719525192 855996685 634452814 804808487 784839727 908451966 698989138 991909420 322111123 477486635 273213988 279542275 867747343 937608882 197594480 774553644 895842526 936046892 145846861 767524497 916317740 954373184 294984029 831959961 779802047 943374757 752070696 998770027 298109436 344354174 704799067 977229519 752343038 985567434 814098461 829430415 829262711 927345013 106640282 455905519 396502476 540453935 397249697 712508798 203131477 974874132 344904284 769742143 809101013 836024837 957953860 964381728 766413221 950998422 535489334 874126498 623163842 763990706 264053904 917489914 461445397 742391035 688335058 897174491 76632294 439773517 334096941 617905893 107736725 272767418 215063896 933513244 327162362 421025996 174035048 447427110 775286082 920193687 734773357 818330194 571245739 885752463 835600441 839944845 356979678 554206304 319563483 721918524 566224831 877904257 147418277 481170465 403526747 484372485 332344444 736322444 676643526 717527290 711560183 763435853 222312716 591368858 912606692 921821957 180144734 438921919 851987517 921260908 551496164 865741186 375168311 550384819 883420947 884282655 12162511 367529732 200867405 821428537 847769877 960851371 874269451 923719911 939513999 998153588 140440187 477317618 413496817 974489453 676539641 942088465 143147828 202551212 770201423 900018663 281874640 642159699 903454139 985668909 602841444 767825736 479629437 744678270 802942168 987876386 585688218 732437364 573729568 796837554 328328601 704675444 5895573 242129714 724824663 783969184 904521922 949645402 399238114 884922495 132980940 767035915 355612924 513116820 292957017 950482274 252722442 805969375 783340756 811410852 118791323 236293546 267572830 529635740 644848174 655962063 558541126 627857406 18372785 447437351 140662243 725954021 772494553 878588235 304157098 380996526 778576711 826330886 267253126 958867700 509164408 912377692 786918722 974011320 855121799 869923955 228328309 590636489 932964593 940730962 174970494 803806923 404365872 567216717 973759255 976853884 107088401 969836896 26606206 81606270 735008891 755196098 785971178 982027770 812879353 902262980 762336576 920047884 230368953 721458347 937565911 954104748 503414161 745874511 711875084 828514601 10330482 60307289 777003920 976967829 360238388 898047373 766577193 834806826 183671042 550764060 591240687 939496024 988582351 996543387 923502113 934802803 684928400 906183181 573957721 868961410 338508065 960929410 49213807 80554206 201138532 810124117 245108701 928191320 429147845 764337591 241183866 329153462 709130759 947584676 462439151 490821109 917956140 991177816 700285131 929177473 565155752 696015616 586941992 806305696 926997039 930407266 215361376 536257073 759615538 917922843 330165031 384815090 779357058 943295512 928496061 985698301 889806696 920772265 115134381 582756393 747494158 816350848 494059260 533963774 344156207 771369164 332263002 529869410 762365850 766465817 223951857 330588285 910837350 991458077 605873042 951223012 247814385 469708346 768991899 937391368 681693208 942718773 375530272 420667431 972429420 998384915 100394821 809634071 648930603 870772585 737823112 761027467 282866736 774275877 546016791 696487677 85685169 733774273 218856858 341176608 790165502 963999074 743606453 977548574 561679346 764998763 127130257 238423684 645743741 958530852 345931761 494908125 970180861 978813761 465798966 875460681 705551794 924746822 831534159 867127296 643084078 908043831 436587463 487663858 194023776 644556115 595771220 723602970 685775892 715936313 974505579 977640080 397767462 855865310 122409745 387007096 699491487 755288534 935971679 970804850 639740968 684403802 876055362 896131186 62000533 842717863 468176296 516793568 359632490 972993949 762754794 885513081 686343534 735015906 529823110 847656103 894532188 957826521 79739197 560734568 456009720 816505515 749809579 911367778 637572438 789105502 400178705 578477768 812166977 853988089 354533039 515503046 145115219 388826752 550663104 562720390 750581659 963282624 675070543 864732903 346367810 710254768 923234174 975692347 203370477 283629485 154784602 523547462 512000575 984837359 382665787 424742739 914567860 921393215 246436013 782315753 167726503 732067429 560978015 968792934 207472246 358506162 46968775 333841872 271541430 642801762 803817489 988450264 33709874 849304928 121582513 640444126 716224309 786765651 244980018 382874364 188527043 861451962 181452824 830867083 921961015 981390976 816411052 865647349 131860236 212809264 584536085 789240465 31120508 338347214 68422500 910226883 954194298 990636783 4380064 743038996 114532994 753971567 449731378 931348368 800512290 919761000 244378004 529975175 922936187 953805360 516613753 550783263 122117048 165805086 929635394 948015494 752226729 824546486 213579702 384099952 95842893 523255474 210434434 816130866 268193899 862996002 20117334 768695967 547723356 893878341 469906182 826147013 950321268 963694135 659985811 984710166 648959385 786981953 283691237 431859737 261007250 744309890 267686778 683144732 774788450 881848116 377758043 632939619 264591555 761483703 43041492 110414255 264884457 614628272 899019603 983298588 145222941 445079235 267296440 868997532 834694990 893975453 513182841 761532909 535572022 773915498 432006044 855468524 346646826 740443842 524424577 805803914 859282025 948735967 836133180 843655277 4783721 447342135 293233483 468557238 412335709 676248284 624742865 773376720 280064462 806114190 701132617 819205249 924760505 969405304 515878934 719572836 94756721 130687975 96145207 422105864 917477092 954854702 223222710 800609882 413178605 836040137 334386384 600695082 611813738 658183613 39762127 703566829 172708987 734160001 968581706 980377686 750462062 775933583 43141377 558446104 515106549 625649690 305591719 721426681 631286645 845854322 482698954 633366781 261690395 741334649 330485623 576316998 274080671 450784797 403892420 603750412 515067249 606883823 70243060 357293363 318692071 582070170 494517746 983772822 762447624 814933565 174563715 246854857 98566302 431016288 10745218 144542588 287823668 687719079 414294142 501535907 640712668 910151830 606621015 839240300 811329798 978327088 565580648 754952080 858146370 883216097 168013214 268192046 663453078 772428902 455735172 714621576 818546400 961037776 870517794 910848893 2107722 783882026 261537712 377855111 414729203 731486292 164140270 681424373 310567085 433421502 798206958 946389633 428090264 470942774 489145938 829118814 421768272 666394856 877118133 904598183 181926897 277758820 37830038 927378974 415156689 812423506 737132579 762928892 463486689 774749391 307867478 521996977 343074737 465882923 672952825 923991532 102074883 358326190 921426512 970274634 526459898 904586297 977722385 998697646 16058204 925670690 484720283 657891278 228832310 801575186 747510666 876960018 826138286 994552964 144277146 995443408 922873248 954453959 441967070 619804259 173605249 989786680 918795911 935341692 441088649 756007370 858526920 968248407 740090738 742806040 414348100 578486291 537119712 570749144 163711646 285966359 179060103 575843545 50440390 193214054 581771342 979424025 590496597 704608059 738046838 877987883 849572123 949276527 874179846 968946193 345945039 415440872 712969265 873267319 805681487 835430307 815630924 915516800 912923381 934145226 818476134 930538717 794863271 860153573 679373560 981641874 111900565 222818288 699065311 826463005 593829329 632877884 76670899 159669255 640592259 658208996 889882289 897305910 223853205 594038500 654441782 898967229 788547509 798817709 36256880 257614685 517203609 569885946 106085037 457918039 477487052 780777032 911270190 953695359 603587347 661860763 261667214 419142136 575497883 869405131 762733837 782733577 401815846 910442284 183544042 365974257 124169421 186718385 605875722 999294918 96246195 265013655 977614175 990597649 52926032 864057533 54517788 413229721 278704033 645793463 338431875 852706216 76798279 620736248 77935284 921790860 134154409 570753565 130838805 240698346 8171549 733313867 386629379 881251766 431009530 644345071 457273329 714680120 823345383 976148107 965504851 969975344 502853794 600887886 167390836 209966722 279570603 651645913 234927563 302884770 705880463 949207064 787117937 989643538 833856781 878821420 414118940 752656367 919631748 991817168 60030264 364869932 117793294 689811375 484264080 529573616 79187968 676910948 82836409 382039144 535582467 843542795 173843309 987833407 895976771 964827847 123541751 318123616 101301008 168109592 850652864 983571901 935444997 949322326 5428600 896656021 166113180 730349306 445285702 476727806 583987987 677690383 72801358 594440859 44979782 247435632 137781098 623043652 901088024 961445392 826159483 981058958 719985557 920813510 31057532 981838381 471979893 621925670 89405884 986317786 196686377 293292733 138452771 542817813 929849772 974772372 303945119 626936136 458792017 930517963 557606759 698520151 623402162 793822678 368344819 707080957 172204673 900845249 12786839 28905764 660844346 914817926 965643384 975578632 260573039 607855482 832313875 981917271 193587350 729444548 762265867 773699984 491472442 610870805 313737575 759097682 864994657 938607484 550217066 973012404 374301138 863009402 357050226 488371303 626982886 872637793 614786694 636960767 759842211 961166295 864106868 909947363 756627976 978295153 380687578 527460593 196192223 341982694 438511852 660810514 2093461 422292765 142542373 305548105 409366358 999072857 765007057 944676397 802934749 986752236 975421565 995430588 222319676 648562241 798928398 943025053 714198556 813324121 645657077 717443578 733584119 779315717 974973751 991687132 201946849 811066070 919104377 946766940 278237165 489087609 187748767 290311506 531988821 849005226 226388795 987233056 647557931 843888623 161636929 570229164 983038071 996730666 958351389 990318696 197413427 312461918 784281957 968122678 95467557 766697169 933775002 996431051 152913095 825874453 973642030 982090435 268864902 874803524 957146214 994354366 935189536 935210926 358508320 732063567 554936697 570095669 197934921 499623606 842796931 856299094 548780992 880834685 769738175 871555339 575519138 989392660 513974410 657648019 251547335 803974603 443980463 560396431 217906137 402604823 367703110 384207736 407109871 662168812 513056674 794028791 819454494 982966630 364254528 867177798 753538734 947341783 94810749 892679928 405607051 409898080 695378694 744885476 114857777 470667002 525229493 538317446 55837955 219309458 12669356 473324717 400462572 970030096 487294424 556010525 866415687 934945745 469396199 690312776 314908539 324576753 466788756 864049581 477157126 921751789 218623447 449085345 202969532 446005297 361523760 808785298 334776463 904531925 494371871 623976930 892979871 931096394 224299960 495239382 492802011 919545464 174746752 177616477 284440619 823932504 99339013 540542678 123282031 506295294 138292018 194080353 10747476 220176766 17111650 523437543 226930936 336071425 796099405 804858242 333846719 712026075 203411407 530995069 876816993 977408879 130520961 574763999 354366771 568069432 669945840 960819557 353999594 723470718 766021244 814549788 431452278 590720990 547066493 956350774 836215121 837101232 231241834 282962596 313230925 661600957 167363508 663329309 300230771 353147958 996242581 998108539 624861940 856507888 384447825 873632798 249008318 991498521 979090284 997001532 609131507 909226668 170069053 284686653 752805964 898761949 83544152 979449482 485963453 514584435 315793401 461378859 447272298 490767383 810319633 951277980 371471691 987764573 93362476 609700023 350417838 448508604 933324339 960304944 320082453 650750171 735938089 905978933 394611939 597367658 958096944 971886673 342575959 528465859 55678529 564315564 752174045 799078951 10077939 326884862 671498532 997393292 389497323 553607275 761149558 928174280 267587494 938923992 364653822 465947268 773182778 905397144 369227048 890742517 675581743 809888370 631238061 687992475 924831756 990271775 674271762 785014919 799356010 836447863 186468460 505527350 184129548 689428013 130293205 653030082 131464864 989850207 589638001 928808797 379822656 783384774 388341775 930816986 182195353 831192470 650359536 704092278 720950010 907026421 64538092 158330950 447065802 619828771 596427119 662498854 7029396 924066817 603752437 958707413 566699304 788290644 609596635 747954395 188387742 253695793 508481256 676109405 656668828 840066811 10497234 92653929 516037185 913903646 73562039 373208897 503515931 662352070 467008879 612722749 126982193 318876117 376503745 845115523 290241215 491564749 374941281 641081014 453740841 867249035 811547045 866346892 265596684 996313409 622042821 633680664 135516072 315606077 542812260 930054919 280373324 894984355 79124056 110883147 383726859 461384768 92124493 255560526 51186303 632745618 665547177 986308882 118347351 451460943 487398226 860946294 826169612 962967820 537567202 894696059 655824202 738449523 577051632 788403554 244525330 413711125 880453952 948949857 924295511 926176835 583164141 763081230 590499613 865579072 914060544 994683840 479486673 812208534 503070548 569602508 593004115 799465059 553828947 859603539 174033380 862047683 893635591 906803181 97850205 355120616 876612869 921304849 416987075 545543637 914609091 928579784 104494566 995431323 1450497 317680550 549768918 621193431 846408392 992528517 299592441 361417781 715779227 814107047 946676909 994922773 223548516 716492367 589810495 910847166 441062935 834500216 332215836 577906554 198182984 405879183 393866918 689381207 929881701 961798173 155194196 781707991 93691929 948676083 737718468 935762254 531165615 900438083 543390973 935142514 678658484 743983170 601577393 760623464 210794949 793394422 640710061 835005982 116004891 589225763 358583920 714147012 626072802 630090396 367040678 628668055 768587025 885869809 902261273 902433562 599370296 928514720 254865469 589396946 82568946 117005196 235210307 848651085 203118695 986290968 820220098 968716510 21440433 215306595 419003607 751310088 323166472 427574550 332012749 887868142 46837007 378740702 428669714 623488828 728201329 897772263 55016031 301816063 606735094 940599684 566354121 623498763 361606229 711116673 491999486 899138805 798024173 857922867 875402667 882287493 48508616 946318774 726096741 910814876 79595734 427606257 985294503 989657439 457504968 772999932 394587078 882122137 744586137 826491697 20520683 104505672 916164692 954457500 409527790 612169455 472070033 627880025 458615401 644704896 735127411 761210604 423668657 648816210 326772351 545274159 433162421 995393342 447767088 651959105 999258414 999374892 977649621 998799000 417613853 447084517 342541557 403180913 55954444 672345880 391600191 831712077 599983944 629046939 738014997 743155189 311190678 971572478 105399418 843070858 750137840 858340692 373993607 658255855 814772110 961516485 619790914 930414897 291245763 758259545 859076962 930694348 573257058 890881277 568858164 719443158 418939304 459417391 96778349 201676047 685871105 846176514 234989955 645505685 420639264 679795901 894897553 971739566 945142723 992293014 259158187 797627716 19837701 424708411 604940080 749467674 332842192 497874860 891935160 956819320 813454967 923859675 924961770 949639038 103000986 342180797 490070115 556947063 664990260 811697995 842083738 881396125 958086365 981533220 702111946 767015259 754987235 827298923 560448693 979235586 39187069 343969662 151998195 742872492 548212812 798704328 567536762 822286657 307773770 804581916 183893921 557755921 490964891 925042488 39627477 91980790 746127736 998766625 529272736 893129137 758115286 932892131 583170968 644165705 748616030 817254784 994455804 995823133 97233781 342796310 167836535 642883123 875871868 940148838 712733752 912792449 134884559 622529659 533311065 872884495 948194039 971780804 219822462 528319330 834843065 878450592 814700926 897324222 285261899 352499964 487953005 739018354 190476140 518515490 356170915 905392490 378432074 852108510 469135885 646005094 632256573 991756698 74748111 599140901 86519758 327147152 243563019 528565875 511583538 713647478 398024811 667484299 42997033 262541768 916656868 963264812 942718421 998673810 176209973 464009255 64629488 323470835 958003348 972607680 212716511 864213773 455122390 674722300 11071324 541773580 338448986 703775100 289171876 865549946 297268026 984506887 296348660 782472923 837108893 876919520 587244310 641402279 163768023 227928605 583659645 987282412 524772166 803315175 462388708 761435067 101802656 371454999 309382659 588291251 375478776 942491037 782298341 892029788 590102939 718116620 720830639 759055936 233801547 342717034 529807694 870995141 83046986 777067642 280729402 895290847 885194800 950585068 380450766 968688810 755869534 824848830 562062873 580093084 141241857 313813821 806036940 810902697 627500883 977219754 471180438 536838695 949442038 952475119 126958795 629274040 796160762 930671574 29271732 568592548 553730098 854269465 388729015 605064204 532359231 592600809 665563210 780281665 20335275 685338322 373777710 531773700 393110568 985053966 663852179 923296791 943741787 953467232 407486612 991029262 769049798 814410967 404905546 858600454 685324229 742284196 607881012 614643811 333852136 924158478 949971859 965988943 463234438 872759909 424378394 779720581 943782563 960478624 723785808 962053954 736073610 756813094 834272235 843490107 877671651 910158495 296261040 791412203 604454015 679106404 872944711 919489408 232999861 595528774 183658516 841586882 840876235 873655321 751193019 812641179 782920668 937354139 785421312 917576602 412956908 902721710 371754996 775248222 272447704 773970329 810298449 815190466 628104710 767908686 102356033 527408494 959325762 973163457 38949493 475589823 414221999 629762557 906923496 978645306 70492105 545177164 276137167 329476399 591432510 869931566 137147915 589043956 788760223 933017932 175366118 647192412 598892708 686600075 779021363 803356608 766004422 887143710 276040031 642111581 376186798 662127777 927916509 966353666 703699176 756933577 925272675 965869359 975278690 988768935 508617758 517815173 757848915 977104362 675343598 859647924 141899457 866927754 296239752 778059974 352297788 425428682 498530775 910547470 229823115 522458379 807945578 859897964 890694905 985181735 421480892 812021562 506537920 616553387 972301843 977118472 244736378 454765040 903752482 943012742 907854143 965627484 829455427 863123204 520522956 747352710 7850657 747233628 100982655 456611221 688224867 696216254 537491606 953311591 620920427 872705759 831485290 891988350 640545474 708884727 971998663 978370934 491267267 619461972 386420552 469549916 71046172 742323423 916971986 920941518 907089254 955977876 160387866 399724848 357430473 418869032 992634322 995692661 960801465 995596129 885008382 978199976 242401410 813777007 832335610 842079698 296056664 475081431 39528535 417260030 997367146 998623056 515483235 643074846 694222102 761581962 43625470 313801514 823860061 838895162 908636160 913187890 766290308 992665410 552866154 850642088 387038543 887165323 414032827 497930756 792220073 869437479 729175555 944601103 385329440 450764971 216048156 758361849 582637062 651048405 620790137 663157447 241704044 928526373 639143337 850941757 517043967 675681277 235835907 526023321 213069187 790678195 566880432 640611479 692813475 972560570 49391279 940379742 223763280 661215858 441288082 997215952 368348830 412651716 275265994 519623642 659128299 915385670 634622199 695068016 940807924 955795942 395552282 697091892 396823824 790533381 839458238 911844408 617157212 744060528 457372231 613726669 101409765 856316420 621377491 793164828 569195925 845694453 301627551 337167848 418351353 804216851 163443280 546781661 607179576 808925225 631666071 764303728 349428861 836190619 294871005 311896901 479480497 914728638 930539764 971232839 547375989 581078256 704846330 831305307 609205358 910687790 523381115 710789078 34977128 448490545 286422874 629497125 846355200 857321076 853045193 996700712 643770893 855963895 672712926 766817792 878882070 974137441 863068661 915798409 907529460 921479169 981308571 989403986 933602086 980653679 40107958 297255875 136386294 302597228 631948513 886470548 527862800 624076990 248599579 611376881 481913982 686350633 550016447 654231968 912400772 921514559 249234999 346002472 699916003 770353647 474304348 963920031 774402596 958894539 926916343 982896945 419402385 671273646 803240817 877670683 844281184 882451973 229838187 918660403 253031967 387475044 643521514 802659575 604388926 836960663 482154781 500610730 618810088 721872639 771236142 822903603 724520725 996513590 83967533 808088808 570595942 898860531 495697150 819062315 727328123 863223627 357445150 577469974 81184778 98627032 516656522 524183896 265483211 574977425 800812534 977170237 246341406 852195568 844237361 851618964 701544964 920233103 877115430 903631302 985585843 996896764 801731551 817716072 777898940 889659661 260279526 903601464 50696755 128298348 575228324 883317912 498146403 545002945 5039991 953388650 129242727 735399137 551062550 673695278 883835212 938700724 135997001 335935975 988187600 988520701 223776626 665062010 247030055 708155447 966918421 972699606 128578331 549973837 287644835 685228464 279405514 988361918 929096723 967703130 538083689 787206064 760600843 923805791 130476119 188672128 137486283 765842590 283625142 742736164 815151151 909599044 757200618 838279720 68298762 177472550 512979483 921688821 262262310 923822206 749844288 985986771 746278605 826980242 180411940 637630088 477836657 551293936 759066388 866988878 731536090 798713440 912197530 950624068 239709969 468240679 801473219 877314636 789646240 921326260 159157100 625771527 417112557 685559696 725848725 982534122 205013457 389076305 990897136 998727284 129276953 294743980 235883579 689621216 112334445 575651411 626387730 922909085 84408135 989178620 623479584 628402389 815146616 941060125 202445926 802421354 271710125 705361118 961276697 965946799 527442351 775456977 704095137 786120226 54644580 721370252 542657952 898108504 229039704 718472769 372324438 744572007 723377886 837789855 389506259 640743519 213788159 250637341 8692371 954004901 619451364 647352245 224693346 974789323 433060710 454669135 935879290 941225376 592733191 802078634 417804158 656443893 291549002 935603700 829719705 952369931 870244797 880133381 732327252 808832468 361120504 972046004 661639534 871532895 680874163 797834765 812141352 862605090 314185066 624287050 950857650 965091802 453757726 798642015 438355121 783144514 291213732 674821951 768802299 844540500 634324555 875893400 149438994 869697891 14833971 172432946 464784536 837591343 812841154 987089386 342191482 856388583 550123670 582922571 812451539 939223616 691073664 705121646 681973825 782946160 573105909 761168586 927051054 960281300 454414954 573732819 898291136 928120123 152321105 812217058 760463316 831857723 881004512 981395167 654177656 768496971 53806632 929046281 126131729 779605885 858385033 919149212 803650364 932111784 392583768 983570543 655614522 793012291 500860825 726083650 639300383 877122775 787422058 911324586 770309115 803943234 800083712 849107845 604310836 720878075 174204274 302400633 269961671 862983853 505427445 589962144 996206339 997544878 484031476 734684276 958731389 969467284 36643168 223827714 203371970 465410201 334526650 997462791 334560237 577346564 299553645 442753486 643266690 782221870 533280028 759467267 685549331 717424136 658052201 850942149 358515676 535776394 95803897 897928825 409119493 597960635 170828048 940808832 267483529 789747583 991412051 993835618 19605342 174148260 524087771 690668503 270128400 584141960 443813304 945612581 143918546 290154620 216726226 446535694 495964127 679183324 122300888 778080556 229699865 612535389 611378080 876860170 422905093 915357591 151814644 686108614 37804349 226878473 694570518 996286725 595464609 724643013 358949332 643790166 685243851 974118278 434593648 518804143 720930991 806393393 259285358 791196520 984573160 989211925 292385602 319352533 641591999 787680362 894927356 919377347 680220986 714659916 63206155 342047668 801853330 917838256 226103001 365082935 64795780 366378368 845081567 912134809 394171997 699831463 928164689 979964296 581468213 588537538 880848981 913038845 830204569 898908958 11132296 581009728 638667095 844710876 611432496 740630894 466606643 994929854 865792033 887824732 592712526 890283566 961056221 976067016 708638494 944391601 172593036 647483327 394219449 832295600 183250670 235367029 969930541 977268323 994241042 997701421 973793895 985656902 770789861 926852617 276643958 873265975 626902119 825776204 749799303 818697623 891075835 927200948 331643645 379569270 609217255 788497601 182867458 667990296 727194446 736056614 458486447 923427903 414235576 473862940 247080780 274495871 236903762 896561112 386530140 893210740 284057904 490414721 679077429 696845871 274239858 371731478 539790611 727423872 402372527 688477029 511647264 866650142 705222429 810833390 213580898 529105098 842087910 966507640 948229546 967521747 84752227 378952054 742330894 768834023 524950757 875916000 838103521 975502868 380403983 541363568 663121762 823456713 939942422 940782576 342696613 819657623 685117756 701606961 179098751 916944631 198836723 672485860 263670565 761914910 239870146 866581386 406764130 570907351 955170259 972410220 331604640 897018939 579847184 771337088 678160829 902648245 132137519 807243413 353001134 694184843 648445568 982668163 266574218 751065952 367874662 903487905 396273191 461364210 230915764 631553835 118578172 728230196 952393170 995333483 690484411 846889161 550575197 838232053 989126452 995762335 831904983 948842934 576649294 929894615 635033500 829983094 390784677 574767768 134736018 207917444 386907077 469663235 533995070 579230600 691556649 752378838 626317344 635670113 819976950 859794025 299677044 654875440 89858048 268125888 97793838 416246088 117158515 637617640 269823731 426390472 904248380 931803118 544633094 611075325 912577783 946782537 918155832 929757066 605690533 777730462 870602910 971852388 420211319 891377868 921816593 940772444 855881352 894089948 896308456 931045966 790486635 861012574 720575795 907151158 825508896 982041977 43568036 108281851 561328575 928636569 833455856 871282037 94932555 925058893 650384758 768663314 579109132 607246980 558784243 847298897 804910749 891760042 446225220 689190855 965286906 972585305 546379561 608883533 290261969 580469421 344848686 864578686 39698253 543027043 754776974 839185285 837341838 871532183 82076019 982929685 168997055 805803563 44081833 804027327 927183870 976973584 961528524 998123180 644420355 829935778 383379848 587716270 752192401 817222180 274887935 367945645 204931154 297402347 4147388 378857787 975630325 995054362 709027178 850455006 110623987 428228651 350721725 649613129 987034361 991381005 286440859 406284980 835480609 842887281 53789087 380977531 990368690 991804603 749824442 947471075 214303705 979987333 674982139 838351843 135059713 383847384 116953509 901559697 594137928 662513050 686306628 822460866 792071390 911930197 986789329 989727130 120093531 508119666 574593432 605917568 725669553 898472296 964381026 997604062 186172493 905687886 761358832 967047892 887418661 932902683 439951149 847599487 198226673 890991215 34891688 167327029 901512924 980861120 59940258 188546980 739085416 780290659 848694539 954877724 173136454 724504040 881110734 963596850 349392674 771223468 672368404 733299917 797243800 863298364 69096606 380976047 936841758 983812089 619388965 715105304 555331545 876670681 98751399 706439098 92867866 755919445 389412834 765959234 56646675 152742434 25314162 388855220 100751238 343466676 253204403 960993884 941196885 977202952 874812158 875214290 775268298 866831236 989535679 990804757 71514543 994840367 824189586 964403489 744805391 974263670 623729222 895851191 599144972 862164963 860520415 874205036 472175844 723325246 660172363 927731350 748655936 907654995 927897306 979751250 624694803 893302191 834399857 868307500 405303829 846495438 385490103 790598576 939277282 967430040 993144809 996890200 715152211 802668255 443294129 791365573 36420379 135425696 387089794 695122735 516250210 583747803 523282097 675969878 264546336 465147393 715976656 870690054 987372345 989914634 677217169 817221075 396796858 795982865 555774781 742133685 378107971 664049214 777021853 835034259 933859518 951996675 132424535 302874436 649446161 740814554 973884454 977248322 259202573 452724640 849819316 893415194 753891827 818391406 328137813 562950677 340816532 996366624 324325838 442918184 860266946 878535166 806809171 887704337 608451042 713909902 355760455 738143223 676775917 897052473 91852686 795362768 193125345 624699289 606185321 882492586 946189729 953556439 801902040 819634718 249937763 272987778 391557205 932427923 548544207 759100003 165997554 775152233 487147749 851842093 898099046 979670547 590945926 984084253 512451641 721625742 270501557 903768744 683004566 888431635 974513752 987951286 421667820 529004712 854833051 908985205 239346001 470390182 24127274 429977321 243898184 703663002 917621243 926259519 808596141 888263226 711589738 951010938 135326015 848730532 16143118 800016234 962627414 971504487 167650311 918805991 10945923 621847289 121480421 321863517 500384148 844622531 729132805 958605583 906553384 921915778 71022492 217636379 36044710 649572746 421711981 569490815 533498792 597897808 429562094 446995594 902525030 908413639 820190810 992481239 707705419 847547578 423186566 536305538 703275815 918984857 14256208 174992637 459515477 765785916 732599640 821705984 556092047 744914610 797822809 825349206 942882741 977589643 316495081 352031813 464457944 547163036 610058989 839683238 321947807 924256426 715296825 737284220 600641082 777065440 570880986 971012634 251375228 583928244 462608284 809813677 262746061 575032217 818882989 996774609 457005225 828685547 735487982 753034552 624967513 630879188 459949279 690457873 220093578 415304343 604268411 745323536 535755659 833854167 386260238 401832266 457939088 720902161 328338489 993143253 755915066 966853336 598081775 741269881 813944251 828082419 476058989 817114049 169799230 352003157 495240023 691815606 980300594 986420417 240333255 262299573 955829798 999373445 461253494 688868290 821366476 840617547 490019762 594350795 695287656 889034008 482986803 539310576 777361552 903254522 877662359 928367708 381156404 902496258 979770234 997753806 418961002 503164517 333355355 952741470 79524264 90623255 257275163 619577810 140367893 878632369 701244798 874315899 672880349 779555604 269023872 672094955 254581797 498440370 966567787 991867734 333777212 944103408 403718824 685982180 237999438 457676601 287426014 708292139 356517400 595312878 11657966 801990179 737102014 951354893 484054299 728551165 501554963 568129268 732801497 807367510 913664737 946815238 284185548 421342723 156298949 935480233 354541738 813983886 376632633 658667814 541030761 818738861 761340167 927452865 466622896 758885412 665063712 777485045 881917916 898702371 2993493 879423504 360209374 600641965 370436590 952001159 760003141 959487898 903977460 913471921 980938928 997670125 853524232 988555202 148890108 437360231 38665448 928395847 612919459 636046759 43841772 522804951 95602548 828904680 310422446 761380385 153050496 521851242 418706979 530484719 114624048 540681849 702520666 937595343 502846163 642861137 925105193 966972307 908566893 926269842 437011197 646542962 495904484 599888633 445383536 698786977 250900962 852914326 2710420 623783981 501898146 587929583 779621611 832378481 830109735 840066972 204437594 944000555 775742209 810014777 8952691 553903394 612503585 896731512 680911254 695882568 977025961 986302186 86781185 729586330 135784473 280066116 600656556 691296534 647051003 957609478 548014714 864309713 269153459 972935556 846910388 874846767 946212437 961779692 382480890 471268245 368901832 747583305 996028301 996547691 744438954 760044758 841114498 976207808 468112698 673014280 760322795 989368402 206130003 710789367 115451912 719405681 817359072 941512512 413009172 555472293 64337304 736093179 39240977 788732580 227069070 699560683 2873028 740509619 821512262 942852582 150677991 667553456 152229325 912512341 155341742 837127967 144668615 318988454 519027270 750247630 185176282 632643169 89293023 667614378 666693600 897777156 723343711 968395159 435918383 677795007 867586738 954183365 590771890 741446804 393745458 435755105 967184157 978576199 40351679 967068158 712448752 804101367 601701079 843073829 702376882 982043422 184752145 678540458 712875778 772124190 940534429 941277572 970474828 994977371 203809869 454249683 984883380 988783124 253731451 451709627 134821289 308702309 520264500 986493654 981993967 994886393 263781846 646591512 838742680 858768875 593229912 766499513 910705874 991843474 583139174 994728487 573522018 635969403 679966254 908218191 209820021 364324416 461269357 851948066 845248870 933557946 133087627 654683426 366569004 506208009 287405475 372512946 72510871 635219033 323163534 453552019 217209190 967277388 675850931 737793021 234603028 661181130 175401673 323024019 273644574 304937496 524255913 835177261 335242841 922233791 187260433 910987329 541622243 797474730 628046242 732079190 77490632 146495342 277798416 799514361 106372170 108182010 9585256 918202335 149348623 485649964 849641572 915458270 535342856 782935308 983009923 986155502 147027000 720872564 741214947 777321695 479565854 817304642 99077172 605020678 477235979 602211703 942920400 991272822 60295680 371607628 89688119 675091062 236009360 830979252 446959146 529989473 124620266 767248891 367324404 964290290 350003295 533361789 600039502 726799349 493925192 510959858 633589513 780235403 496836471 613381578 294408398 726541955 237838495 367007662 559556781 601553420 82629372 829165804 582076325 978083237 10437391 872680514 834232216 843692105 379216288 855779116 817694828 923273696 406885286 542529500 5074605 977710427 408516987 515239440 887144693 901608775 560713763 968724787 954237747 995543157 18868875 777900330 195725240 476589134 76569901 898528893 854825858 957060969 519480989 641825682 159766169 527295114 652308480 715587777 783107116 797016569 461849219 818212830 474663875 928489087 417413591 616805119 374165228 438316232 767300429 791780802 354987073 810138160 910072204 942922641 177956176 261889693 509011231 939479657 340403215 486170960 422772145 711830604 837893485 904344199 635680325 772527957 868669646 936241849 798320027 928080309 813798003 891950276 784768480 847309394 782531250 838536334 751000937 933737872 103681623 674862194 12828204 780169333 128768093 580880340 578759253 991536798 214570783 677087268 499083403 748254284 638665965 786596622 825878034 884325733 750185279 802943443 783434608 930984599 358717522 818819569 554833138 626812364 22464318 563652582 79706816 963896186 553326254 832687321 187249850 235430293 969122149 969991594 98314677 275087248 697233828 952565767 106167769 252623694 488758573 612849865 293035742 976326949 538903244 926110174 754214607 776289685 961765644 967913078 389002297 605166454 89460350 692027678 249082886 802683039 895920497 935380050 816073107 996975266 970177904 992682274 194788939 281232137 99941287 422719207 110473237 962493666 576882747 731955309 320888165 736758146 857219915 946169056 937579509 994143355 176298501 797463689 352007121 981310548 487400519 742372465 293304707 842860720 31574692 980620111 204684952 442584175 712865977 729555300 384214511 913210945 270778906 890029713 736321882 783091616 109700371 414273475 100922181 163448943 793470516 947928631 690517201 960096105 332973636 827934896 8007548 951714670 300449929 954162158 422901256 568907476 218120564 842689307 169337233 793883468 456816009 903593353 288285413 847606378 431160242 585192528 621205995 888363441 585630851 704213146 666806573 771047402 640140606 994336281 513993973 647196853 578828994 601515944 914270988 941477026 351503546 741479573 863896670 948813217 799400959 859554366 443731826 916957185 672760810 895552930 327841755 687660691 869292557 914753518 554758566 903691570 358329337 640728858 188109604 558036882 614784006 931214847 466581007 815150658 84553246 334686586 66794655 378406554 110573802 861029980 576951137 610869408 618601895 867198687 251604314 903006075 383397359 423753534 211594415 506747057 26861006 910953713 522096238 756476094 434843613 553408663 526381291 810627282 950433817 997258872 696630737 815231484 460499873 610757851 723673189 981206303 89280787 522663080 408276166 627234592 475094772 848240381 605136860 981498497 51293609 272996386 153217398 953112622 591007585 801600864 740561296 813855469 198059380 731569086 546978629 856865408 573939282 942992704 812843885 996698701 6093571 89820951 941426309 951373197 324823006 523616389 285063992 766808253 541785326 797412326 41961411 915430381 566219058 854686702 691630452 691976951 119066992 649368860 614597924 883689287 996772240 999342687 986038099 987124518 333432246 434040474 756997116 862526241 15472469 32877382 298410929 771176454 109102186 800063760 680002161 800077274 93806329 391300095 621688368 936364844 817348458 824665638 147905214 167707111 433601200 934841647 177471417 727696115 479897187 628399101 350989656 451681406 560008759 652343425 126699096 893513170 283892803 962255595 346554726 418995657 738970240 838017883 717447752 967884552 113111836 807316276 254312859 518785169 261745511 694065148 376887316 395478274 558037778 914097215 829425739 969309455 513505469 578137501 771221297 960690481 440417378 851786522 897206867 921260425 456526360 735742712 558002191 791451842 812628577 883525950 772093312 800857574 61475172 466570789 467251047 688821536 635718187 649792896 901231637 936632412 313100736 558626778 503034549 586528682 885188563 902368388 95030399 762832091 665144785 761825513 348710893 761723753 1127129 816779579 920768127 989412966 769947248 950000651 174778147 309208338 227943882 772390032 148692964 572318835 215309036 496608572 5096239 721733522 307555383 642382296 471747085 777049272 616857104 906748400 47077243 158092329 544353387 682924816 672362038 707056875 728975361 920876253 524079264 960611099 498619721 584362133 191456882 846920202 710221867 825358792 189598502 645955398 47923173 472038238 98247249 327348877 290427561 316315034 285855135 757225460 520819262 541940498 619277343 680366245 325958915 503892890 773388116 828107921 240735006 656230824 369203121 420800027 337212432 977724735 813070805 966164843 227674432 695917727 13335664 493179391 714753674 873160293 597449558 775981421 644426065 879031999 935690235 948316996 942196289 995214469 138188839 778012469 960229713 963560228 593302960 885108294 782478634 865036707 745370959 925284336 172209246 198316369 255300246 631019740 33754886 956104900 49980861 575024465 76936875 192400423 181104688 948739935 301063917 568845511 781699065 982321169 996229022 997122066 359807932 883079801 160790064 867961334 368245165 641304120 610370820 768024849 65239625 660918480 665288867 666784306 953228422 980674700 845068351 918289940 82774578 473675206 755257787 971514448 452221063 821437558 597445682 799368305 672173033 790703661 715323166 968232997 194449514 788923426 597718845 608949411 349100453 398939409 580630584 922232007 86991369 560637962 143276810 726975999 211109934 826460523 196990506 500834155 990863719 999228949 471523114 891545855 321354503 504960902 606730546 896692749 529631032 599379345 873080468 961536676 270073322 425335045 695466689 929668449 267888968 436993179 638016481 649518133 344573161 708659197 720202857 801240427 979156681 988153210 221707532 222929211 9284201 393007937 757512073 758262390 10885192 294259981 291359363 709790211 458013022 495115378 822041512 941729194 607459242 676412883 130906387 509402780 986486687 997416372 980659427 995514272 126733604 483049930 526053978 595037389 722987578 822697243 126374142 257725291 893584356 910890323 455437761 855270034 525694724 682425288 807921323 996662500 91055618 240464017 134390482 426848856 764393468 983849473 158399210 528367687 442291034 523711025 51511565 534633660 520671124 968375791 795927792 922124699 559826888 844368182 805485319 824304696 597373683 890636127 997308729 997925187 74533725 540412345 520761296 674640028 578003157 855848953 839980722 893512129 374122771 390985214 254811023 565873404 161244946 223989833 147043174 731679065 555641054 583821477 946112807 960859198 297590615 392962633 957765499 958198977 994759995 995747567 267577832 335438020 101498793 681198601 535923199 619697322 696119050 952912844 527831826 903378600 655100406 985490093 767842168 962794974 435317774 876427670 729822456 979273611 258410267 782600992 925405173 984457164 203430616 951622302 924612336 963169203 56491145 348729085 508436731 604493084 837507472 907663336 450150725 952286842 711536541 922100131 128501263 501035612 256187644 986419753 168508952 637573899 735114576 814461370 62825606 870408869 133584886 961644624 638233474 784715144 208286310 669329640 413588024 732633845 150260056 548043682 418454489 555952401 429281493 981163876 799678985 967763703 73629940 647097326 157456490 294825542 314958539 370002437 398650760 419775806 286956140 772847376 288281053 796987333 519600117 623081654 366577182 477438323 988733048 994730815 623725434 859826179 378289364 442754350 455082744 638321037 819144330 828723928 84160665 354105589 841243254 993590017 879227517 965500731 749972707 978957914 126658584 271959411 46058024 700813341 131906913 929493938 460954137 644804739 321923893 695960402 670626340 697043605 302182415 959762610 521615211 604362608 853143225 940633539 183446522 529992937 729252743 753731745 537468033 825065317 851897448 946995016 681541521 792048556 468386673 650592499 298902976 444751725 688360441 943448303 544975652 716381492 806044253 841264293 282373672 658468008 978306951 987526022 750599706 985277360 239076293 303117596 831035286 983370416 752321781 940227626 944574338 952655143 890305091 912772322 755386680 935693290 898016595 955328567 543459982 947881832 371691662 702508671 222371556 680634887 241219887 855542508 418002427 535482824 147753632 194282437 51528688 68465393 293410314 394182530 65118497 872182615 690965136 878028837 332650744 832687445 783214444 978588467 330754077 350002092 451286443 491625513 875591541 908412635 230914361 345931799 899997253 967079532 348443206 840218426 363741097 596118801 886885449 929388635 363688012 464179239 837592259 889193872 960514217 998468673 292541389 507708880 534629929 988472980 348333529 788027723 762019561 834819887 567490847 728931229 132354211 551246890 595775050 785180723 164470879 929241226 43980394 985870299 194176948 647791547 24541644 552991016 91369098 977086200 877180323 933370499 541190278 576453706 579392851 677199336 649399738 903713889 660091821 787272692 510025676 599520702 151658582 677503021 767935901 803128972 740026676 840249251 44161713 473384910 589765396 811054421 930975590 944309550 48511249 704355010 860003932 991421279 842841377 844205380 974273154 976104732 763662296 905311919 488702863 700223012 327004177 829239252 124924081 572873573 376569413 490361437 709350284 803051742 742990073 906657015 487846987 501085636 945818784 951963014 863302971 961858722 932409787 948927195 218621917 498117989 487412286 617551605 954172829 991086197 438153363 649647660 485919024 634411080 357767333 959966801 983553604 983984416 237734671 511552648 64394180 518829653 555244340 926593551 647316984 998361496 735863566 960913198 566179134 726245123 344106827 786045472 584118434 954035363 706545563 967896966 475718250 898227432 503201467 638036275 29533548 817954378 736891920 901496855 595997190 726737682 811671957 933594022 149228566 670243896 870192359 973052419 134147734 738113048 728231231 759570712 624453247 683294791 185786942 681952283 944004953 944571537 620538404 867555864 720592650 746047722 518002905 552500797 484520165 743097603 678891638 895332382 795448243 795799351 523685958 912503372 678369744 909058109 646261416 968360921 361290077 788479995 890962531 932965667 435085674 751486538 460508780 645468404 48024659 979539391 960602839 998646773 153121824 228237809 275472147 636673185 971848944 991251099 952020783 961208169 767968851 768621317 989844147 990518490 974561452 998100841 115796635 349456358 356889156 684914816 565210858 875936660 312575710 372133075 325183187 688088061 14860498 693286973 438153902 757856890 354412395 861478884 419691852 970975149 698881727 840907884 227725659 635939294 374378946 823467193 101720394 101974566 678103149 736094046 116336274 346715994 338859127 551502989 148066627 615316264 169503069 591720113 645310768 741457897 206064749 782111657 395410317 842676625 569008491 848465271 401720358 828507739 430798664 496362563 514085 155331664 780800337 797320927 234740159 535845527 766659974 879035114 992466259 996199528 897308752 910518199 82689319 983668308 132361840 848493433 418244531 743119553 342337314 530794562 363707783 482087801 325489102 835640339 665752163 690030925 272096919 867870440 404885044 966067087 786068925 923428261 855814138 943667496 153685642 940910833 196036559 635099148 553657346 615646380 802085356 904950450 270928837 522522694 190256065 876687883 752259051 814267823 357601097 405145203 177476702 263981075 654049999 740239659 480962679 537315934 931583948 949978937 710824553 839202633 127955421 200248869 832905048 928170872 176374248 404381709 278886413 406119128 317558848 531325813 585526186 909757414 932808086 952700947 184722867 931625821 694640610 757267623 791725936 915906860 183642020 698324290 162358330 866143733 298010552 879999028 33196033 406117123 145839171 420190853 47410546 171487770 974946711 997894905 604778210 817450775 808748128 870940888 484907908 520746195 620126475 886814535 554377729 633714705 364675870 930669358 275769154 285303383 120054845 427514224 980672144 986443780 898493748 992854845 439837475 767138220 432710595 580021046 26985677 873032469 119251812 962240658 409086932 565816378 796335517 990295340 723913849 776183898 178697276 753986133 339459464 453687592 591881097 936967464 483315594 721148540 656196634 729152126 316719559 526678754 515763315 863487864 366994346 965397179 901947735 933264907 679097526 746398484 542947087 618557119 34834703 346215353 600594609 871808004 538378652 849299675 808205063 906310504 992020036 995981249 800804988 914711468 695525662 981321827 303194277 787994035 990282784 992478789 877367000 949891986 743511654 848572663 775787381 954638946 66193194 726338761 250118709 976244801 726096211 953548318 420561335 655631965 273612495 846460617 409053714 777714942 610670335 795411724 414384179 607217132 959515022 967889941 265888549 905558464 720854881 791993837 263643794 295619972 870674935 876767110 763784339 856867193 479207733 519513749 34751015 118158951 706103959 913064074 541778221 642589049 162096361 608388284 458532777 633471268 119655484 885423888 987755761 991578944 396260060 967969811 308933989 955790900 535594685 662926692 752212833 878342161 205860630 716234731 802018650 959469634 882522761 905972520 536434676 973278046 783635215 854433080 713397530 821120060 67316413 624648141 214075365 259233621 835867574 840769640 516267370 848472657 200169375 853526675 371165015 573532126 691247090 979274535 408084609 819611037 83654085 91066108 61280252 459005970 469034790 776433812 177587239 959870235 837102735 937194724 50300046 454972314 958939387 988010504 973125848 980951616 614095009 652482975 585118471 765906893 612721259 692436140 640878804 678870047 334832447 817343184 670639535 890453972 158870229 479634194 834329680 919467627 575611284 613493046 956446998 988332167 807733947 891241620 37801041 284846660 862727067 890970240 330546033 612565522 892207456 921656035 889335151 959274855 703445093 789144949 848184708 867559554 291529314 931792573 965462522 968205195 789113533 998127641 406705680 519267094 840335713 860192186 936170020 993187070 185518432 953212476 337759636 379821403 515378707 912925293 524858409 837695513 89924982 415329561 355913531 524012504 108436931 381165831 763265882 989430134 428079613 513835022 782417350 864155345 946050234 968530626 794737056 881189743 804528301 833960752 474970938 770461165 460895110 536129118 616400079 746266602 496013327 804832854 137631014 424419442 161803036 717759460 323210645 483684518 31714721 635999297 32429128 247012455 175448721 688734160 434117867 890255798 72143352 88406190 149614379 440434957 424938284 544463546 326778522 777538600 681544451 893091453 231429916 651080908 958452627 966955172 122890424 362175513 691342986 826569486 290561958 595778228 141940306 964215884 880102041 881614138 473867510 605770934 429572627 936425955 672980118 716008804 300358210 836089072 896571912 928091527 837921844 931725314 307455338 775292954 687444918 716052932 376879436 614667777 280018211 707552589 998460692 999162988 38016261 192916898 863884656 936031311 38705433 45702526 820226836 911064018 828301642 861946234 277205861 438666019 840819421 846164132 941941658 997228324 275816864 527583228 541745197 852413166 264357195 404863353 767807321 972243886 239479739 509751966 63944315 197547854 412994406 918572008 416160511 879180870 70230941 210924365 478979454 916623641 653120907 775362097 603577918 606289109 547784230 716915491 250400793 701350831 424924869 647301000 690828012 779205976 429903831 631914533 384465867 412796012 581799934 886169984 237082633 974356855 18620576 713111741 358215390 720883458 8070753 17807594 843936095 919320578 338575473 631511805 651420688 793392536 174723260 944419873 941281096 958586754 807634791 851267460 338011505 688788722 232172220 767158758 655045087 715091362 729374647 848351033 447581122 612703026 867221718 881991921 435779373 642911439 337965582 515534710 823512205 919171898 979554249 983774845 489855146 544872228 908953126 966202804 429572227 761667806 543490113 575602983 786502773 983389618 299818568 762125051 430571123 963691513 530314300 643204975 520384605 700207587 585323844 628290008 124592547 341883159 89405416 384212229 915924875 955327704 495424483 549434082 706091214 944312877 170388333 891293161 309938322 445043225 538079001 696011451 915465009 928851083 608748261 911930513 919923801 994075496 97129228 966743750 824740939 926570984 580871185 670021059 273005353 329766892 341702980 528607968 981492536 993871923 320561439 410729111 779943869 955777509 995710282 997589999 614538740 804530516 420549909 751075830 83644932 203439428 983847887 991261193 531157846 962373944 184102656 311660824 329499855 935749927 451587686 458791698 839022097 955527850 111408716 278119383 735767977 818331263 172246542 949243794 212091869 583542307 791692255 852393161 67731962 634827891 19931644 465070861 400822517 745178957 355054959 581070291 385199664 711416530 723431596 870996218 546496983 605110267 699101176 839443502 344384356 750952923 891192507 955311405 732199808 880399705 774928416 992694996 64936570 929930821 54332569 461502601 769752353 882831330 407342391 736916981 279854143 680707770 371139211 691208895 106185603 776352132 158630359 861394777 880151529 914407568 964114987 966515115 414809374 725462918 2548138 584335004 176519068 458218319 30986095 666748324 695847207 701514204 282782293 664412836 815003245 880418403 660037093 829594529 818962646 900425637 529869611 738560068 649244786 853056964 629263524 912303763 721992437 966740193 586904742 725033029 106415588 208904918 410464658 700672299 857336451 937722957 425045112 519492284 418738426 608391874 325596163 331808546 522221378 868481431 888360666 890842656 851809772 897840318 446246988 712289557 835110855 862633877 767417756 889125644 859968089 889665689 54316933 340287489 81954624 487958169 181635643 301069202 389981061 427904914 617397264 677940013 463970603 670531934 239453409 305976229 520743945 927090793 862258205 926515969 409219339 639574596 720914201 894350021 541528888 910532364 670486718 915230559 76282314 151967838 117010456 721036131 776560050 960841054 219265310 333099439 694842308 725732606 448778868 811590361 997160148 998558545 740717341 926898313 370438102 984106480 288257595 498073409 932085330 972788597 428796650 945643769 711390910 733596287 115196012 617861154 980147156 985295547 925458824 949404201 3853180 99108653 28294469 317888320 612853683 707245663 66445902 759809454 53946572 308619533 798827632 960038468 785235305 865537578 969364576 989524177 676890848 994462779 147048295 571313269 92252625 291150172 944559587 991705327 723892919 915437473 669221918 917126821 868676314 917017235 835518932 874012960 109852947 224267885 423297946 513255584 803102551 956781884 945211706 952671136 508612914 720284378 450185841 886249129 312933783 924544974 89396329 504289538 211229960 316222308 688766276 951893918 79911820 966873218 972411160 999367179 291328423 860366197 129558606 939950598 104585854 160143511 225243171 761229800 353240039 494513718 5644348 277193823 521173527 698137655 899147568 901174900 697250582 717234100 857499021 906952185 439525821 671901282 689381000 692723904 857006181 863980861 760273822 784672795 306188818 624635418 18388647 373048668 190928372 301232734 63126581 332775661 147996740 241692985 157177307 727790595 518505976 990202727 953906687 954246533 494930601 685189681 300830052 586696547 189810344 324957425 157150825 667631430 27817952 567826792 60217109 281994649 867765544 946896249 923530249 969436791 809286597 866402753 148922327 445606443 461761964 737899396 863509371 957571865 971158338 988550328 745251754 841251081 265011999 839950647 257735569 453898826 789702122 799143249 394291340 504238249 203154376 403461121 311168764 358305801 864628458 870269776 81069878 649900991 622267227 685818267 525332098 956248661 738981191 966604045 771289831 969721854 715662387 925943491 508580927 841170844 391861705 957805325 723617266 775781109 915516403 977666870 139539933 534014697 897778991 964691179 859834190 901324745 675888813 816808072 297760979 535406324 20549176 853418937 709195059 841025388 985258803 993516915 203365993 681384934 48047184 835318578 20013492 506592086 668453345 750561085 857944323 955563127 59565984 330110338 481542923 811611679 797892477 968593755 951667810 959235677 70103093 340047482 210382461 320869967 501431612 621794770 670567445 846378940 362017298 940154875 798395861 977684697 802035321 957573932 95054730 846237032 772107093 873458635 944279550 977833594 477252586 952841361 249794713 580730795 563178774 648321884 552440874 587405998 198458865 337880887 883595391 953503078 474549574 750629192 963919146 970126184 611535055 658679043 296571609 925404989 338531505 616899171 591350840 971112756 804683043 895394566 44467733 594061760 167812003 516730678 64367837 719990590 162899616 202802290 505200120 514715675 726510060 866423717 123059138 329926357 379392029 991386175 862067227 916739235 543710443 792464432 719360676 879330429 362773192 853985899 511241203 682448728 103157276 961964882 812758642 963276044 368259437 811361960 217775728 303818336 8054122 531864253 562152635 964728903 214015489 726410436 422655073 681884768 484414867 679398726 786747387 895701164 893383676 964030274 792380171 954724076 620468471 910628914 266419299 994558313 908212131 942880918 876478967 921934362 995377680 996232154 297916450 441425530 12974328 206038639 927914287 960280291 990504426 994678526 831191186 859719547 965548432 985565080 167395099 667855516 752643697 795732670 911658636 915780581 771992297 909848380 910100957 911776012 769432202 814520114 323290104 971777139 367912453 895897072 835161490 966638211 746656562 926315233 973073205 997634040 49061698 492870434 486295228 583134458 320353117 353375500 482736501 563016409 467904681 807485950 844339800 879446164 949981256 982008137 140757769 980782444 608499222 909599164 627805685 733194354 487491276 518722182 66165186 261884196 697830131 845618698 367906436 454537961 15088483 61222564 625907775 905604430 199663338 894454209 445989958 783296981 448798375 540132076 869575019 936208710 280804536 857324286 720551643 736231770 845623614 996114271 241846586 947696883 101201458 327262423 920124475 937324340 964436555 993625237 264470203 795975725 566489103 711489288 466223660 546350429 828168926 877461754 608110514 616667548 342774815 752115681 116772302 576074167 189253070 430191243 250867419 737429964 900051669 900932947 963534561 982187422 500500395 871444550 988985381 996571986 224574640 347197445 398156746 934674145 349436164 973953659 130935531 691983761 366596622 468015773 557340993 654779743 694531815 797509920 32301349 36437253 476044965 552753326 9797216 386531248 13295408 335577376 408900086 427869909 406202051 411209468 65641475 476132584 290537744 666470609 56927754 523876791 25303751 797670093 468758898 553269364 644973886 656962190 980087640 997132583 204764886 661587737 777588222 900511116 713326906 850234214 424043271 705394363 359867396 538580228 208943729 540109996 665007424 760156002 805863167 861825548 814635331 943355333 477322524 725101744 514308213 992008006 447249311 904099929 686556075 843417079 217230355 323775670 718448963 856188009 62230368 628891256 191291630 720610599 852807739 909235255 388113896 552102204 518515775 739693602 650404331 703062000 905947118 965335169 188734072 485488903 732494425 989133097 333189666 727844800 120820907 702332111 66583838 875790654 10849852 638013086 290026943 729041582 835195396 998286223 248237197 411891515 1602342 569517756 469398670 564174125 207063958 236739274 474702693 903808115 795499354 968431964 681936916 783996238 185343944 965662238 702288759 972546540 874099435 974427785 359746896 692690048 644498117 686830956 38975555 473119934 561977809 697750549 372289685 690239601 415474433 867902951 635950894 937087509 392419049 498092601 56953439 126658946 344762666 494816691 927554877 935771228 865221205 960569509 178372083 921893479 945307863 991598886 864456538 993006584 724344102 967247517 783748551 843111518 377940885 802309754 976659093 987138094 273980249 397362548 458968143 574052089 834593147 967736548 429939200 983123852 693028971 717891157 750863226 898928644 36343946 392689400 926674760 932762006 657636298 856285401 944377265 945787215 78340840 425993284 306884912 793724132 774283792 859371634 497837402 978814165 457113196 619773509 461476263 785577059 351170270 783768852 606222842 928541980 666803187 948179902 410535007 619536768 905501580 961738379 263908163 619031402 916920642 919690898 117263680 275517327 357682689 955803838 864473423 946211101 560483689 621984251 665925582 996553990 252042210 549627915 517766212 584768423 172360005 262513993 958914927 959968924 273514373 497015562 857668912 867181184 395790443 949028953 414719341 795757994 968107671 974558648 387620734 865933436 865749734 957817546 225791454 971391740 934813832 951523042 992298492 998707103 723240422 952863265 948081102 952751156 969355459 976581193 392741156 955734659 378107403 754620217 775473061 959727611 813415367 832624362 230172648 805606000 235742728 825585271 987005198 989670415 88162728 233466373 76782334 128329909 99662358 872071826 302180959 734269808 538605906 597683297 398771241 540352037 547277612 621003826 773794180 775954463 375945220 534316818 563550730 964482884 333163398 944785587 860430137 973422805 879625285 906832753 178641 913569320 681395085 952321020 286718598 306848889 93969187 768441207 11498558 515734361 271391727 729914886 102186786 438706245 487157182 557810404 326398194 462624150 874303137 915572287 544234354 697893841 823990458 867953241 536192145 954920113 754404681 950325617 378971369 819600922 414854222 613809232 926642049 965793191 439312729 924701969 470529278 840224274 831125666 954854801 872371676 934895742 867982472 942007563 939390733 995576951 722940074 959485236 45243161 462116213 365714921 422501979 613505979 744708805 39106819 946842910 483083765 848581806 219148345 905539034 183217110 800885720 303095019 706144014 300158563 795844307 752221154 881813152 906593587 955425587 828158806 868969927 870983582 942775018 390392334 518644865 394092332 498037852 413096490 994445676 16049767 447572328 602268088 821733895 639670849 929858973 212849760 511205022 25551808 310658886 995044407 998740548 709621762 714278435 652937970 692032130 177141999 225722660 983858680 994689133 699726744 834805925 269371672 399301434 830751440 957947361 609274155 613356510 1091139 633347068 104083199 589968166 692005701 749096589 798034596 887543437 313770915 950570243 403229880 456089376 271127859 474133033 618475462 874317703 235617680 549313738 662750520 743283511 541662504 749777356 262444571 310837518 848857271 957099898 166054777 532131224 578693545 854049633 492900881 742551944 22220814 625004170 813968047 830433585 752875164 849968288 454704618 961991818 217961744 679409098 402164664 939720292 173262608 598560902 796662168 988666123 607740762 844667520 188887916 468926820 213412032 376976877 639801923 742576415 36378941 311685216 268472363 824684612 494225461 635762877 245263739 882967454 477159386 776630740 256363116 359473150 347048884 531425322 429074533 821740908 214315475 531958370 112240998 608165628 453811515 738914843 48834524 633743134 859669904 979446993 498523300 858971112 368984380 927462878 26140170 658040639 205311519 254422346 828838054 922814815 828626837 866336319 188521223 265891904 159644478 162461027 859390485 959632287 649053658 845737871 885170802 902378382 632949594 829903982 734592329 897557547 129996503 701398535 655894191 819464682 282191232 839218756 423560302 523238701 904561722 945601826 798087793 910544159 418572683 423026566 866975939 872661209 238804610 983960251 102267395 163002691 36417024 338979696 265727037 960002924 757702588 980345448 787852467 794652191 591339840 718112224 637152077 932082082 552541142 669300073 316870186 408196875 124913771 268304822 218271884 379670115 360553985 858280943 935047349 992792391 632181943 990793947 486680941 653540332 954847508 970470314 652001865 813093163 863144113 942010917 770928246 885289327 803794118 967278183 689280641 689708101 408537447 807768298 171418179 760146801 242622356 564485530 814731105 820208640 725894176 944162321 950627194 988702124 527924204 861644864 927739835 963359722 733332395 736242832 765828761 792170531 616265635 909067654 686604764 783454496 240277582 492994757 498868199 835890855 475616020 518537461 954627818 981943176 916574876 953882272 650784991 688538276 619698186 739580523 308966380 931956262 554384494 666037873 430049290 439561981 142540556 463232702 992012844 996779716 922977051 964440382 726555284 764819043 549610822 977523836 911219849 917520101 157384718 222487614 746493058 747761982 54716274 828020619 46418125 987372818 825289048 862585701 807539960 978232006 159262214 995299832 702429419 790942804 868628629 962674725 695441237 711560038 974690625 989585160 389398607 684486922 342960821 715837004 384780924 876621396 745885624 840447566 575189525 912848705 821445798 907130807 542766141 757568728 506020643 781147264 192630341 779149818 522509432 811943048 418136028 909278425 621689222 826892307 197566409 359824054 617831932 773290315 459045390 494694588 561418304 661175418 191941607 654446602 637923291 966461205 917595694 962514934 237957455 437209823 456108901 838624335 986603654 997573787 478514701 628027621 574949921 696505080 45294584 460029384 811615711 963565363 961393325 978446115 796493735 849504369 309383675 746672804 299345017 648713461 55265920 515352028 867575587 945749910 616778229 701203222 627309149 919000515 484985073 521828435 549801529 712109920 526906551 671370142 938605373 987625032 64239159 685881530 503971094 801137173 558641551 808009400 382737517 951403380 4742162 900869978 816977924 924425460 336030411 349196441 451739731 531092791 443886078 883950038 753347802 862093594 647236864 838044663 210906436 795834954 949451941 959259001 152598452 641759597 79294051 167572142 353952254 744754027 846882915 849154086 161547592 534775314 126627085 148106947 858465151 940176147 86804724 829247130 91571762 506433578 247495235 958375033 908986250 941041083 892653089 925768215 889949302 944645196 339084779 959222002 760695027 794739792 482534941 947741610 760624977 980859668 805135420 827354427 77188660 272466239 62774777 185059359 721434460 893545354 266006972 856041246 581020674 674944684 46594768 763891729 636499862 825696380 504941424 564010388 293259843 644126563 830663503 885259643 861025025 865476421 761535404 936452059 483083571 885913338 89009050 442810602 726804105 943876813 530926700 715171032 817304892 952056254 207078981 837671414 670475866 829615389 616599350 975731653 421147542 541681336 316761782 785123692 932286521 995307599 910046072 942698950 414835929 782700482 354702291 540950535 905895846 969748921 206920412 824281907 457951111 732760867 398066833 502695674 770416075 876164686 236817568 256610683 15965119 128068909 492378743 524149603 101636518 309013876 540164916 853241205 237154472 412859869 508822985 620913157 10782246 183952293 943757421 983110641 738598728 784674677 458547048 908870429 794295252 960737694 771702055 813642882 489319363 876272685 271474841 290857369 454546760 992648312 632926692 691455323 633176987 805470615 450147374 988404942 214320270 315373920 303262200 612002441 746258791 971000988 709788599 780212961 333420525 556930634 637687768 848743019 966954607 983836753 121165601 201601939 858316501 981936573 368466265 834772685 649847312 675859206 66202215 637466638 772648609 880733657 83827658 750336435 795507914 806010996 953048451 991779717 795252842 895315133 920336264 969680675 208977410 260883921 29314195 436361966 118200783 421363894 468379624 605163687 730447848 781375391 914996161 937108505 323587844 869821072 479877847 797242228 143700709 913679553 209856809 414164232 25511746 127849616 739812466 777080963 361983748 918410351 622556109 623385799 201905854 351130842 967132517 994888111 236968535 255765898 799016950 938579396 210186913 298661699 62739543 996899218 935439988 993334812 418468025 965513321 764005585 839513177 244623933 435411727 259371041 929938644 748453115 827850906 49446358 691430329 101269682 951581829 529999539 764385785 598487723 758633216 49139184 818212201 204714359 787890704 371896906 752378196 565264840 925133232 822276016 862760312 855744548 992883290 897405817 903248082 752211965 833148296 991306517 998797048 912615605 966401122 474108295 947176492 773282930 968469876 839133809 966223479 110594654 886218855 870479785 888504654 477181690 992271637 644962239 969629857 432672847 535293265 972097338 993234121 151840501 524447093 714248696 804068250 162639470 268169616 163365041 919255856 398194517 450663395 569630062 666534047 47700349 418816777 106397102 387945299 429499348 492349139 889601796 938276506 430206973 792835578 61918868 732376917 26028489 311461668 205801249 659441324 897714884 913894851 105208338 269318725 50310725 440388472 293370289 340546993 420226697 876625026 438058507 465445419 296695254 587912932 227221426 655628269 904453714 909655213 925665528 951815830 50186178 129575078 201575917 870196728 805688200 922769539 705331571 839575197 269175233 761009118 333135225 547538292 983491396 995904610 936272760 939365062 518345411 878862091 910608936 973144820 776708784 819624343 941850747 968079325 387009976 718580289 176119991 348290908 544733173 584747609 812910201 985885769 293372111 596293061 295736377 700605713 739509184 792412236 178209899 845998478 738254267 881752160 150419242 180409266 477215873 978183128 415413771 970123201 294197881 737394487 990515722 996860051 981094434 995428932 493678745 506669197 634628593 876539288 852087845 983304337 863822557 968142412 887054220 900059254 693931392 857796914 640662876 715283639 557387696 853904468 123463722 905220477 606471178 745520890 545071143 654143375 806243944 921223757 138316977 774995523 22242432 219460875 955353605 984386389 660774220 765411956 297863314 481250236 666265130 908567771 551214391 641956010 111375630 220119318 920864408 935150043 433612971 868110584 938442894 964483422 990974892 991680927 700599779 807643722 852272637 881523789 275889369 518595180 239855801 357593660 633500239 739728245 851500415 890432489 132313888 151549241 181179091 982629684 187213402 382006509 989128788 994939057 187600273 982904058 49127395 985056971 251727929 500868971 111129528 825190125 80694218 389686730 92248577 751936117 727498288 850942868 930398778 937963130 328315398 743946818 900017264 925316258 62826719 903585055 511375120 621137868 130239741 684117899 84813611 693173256 825787099 949175253 452239755 677242770 700326435 739702367 940291359 991573563 893188436 952754485 642001810 902525583 480967453 691047186 796989799 860840643 12240943 470279194 142843759 351135085 32683851 581556476 15866329 909667156 920546590 920997837 339354997 776484606 237352739 564631236 605152017 612216303 229327804 695943909 353869024 703961025 882823990 993389882 577930924 964429041 976148234 986221355 159168940 585265573 103982368 118857515 629827445 976994115 633899440 962185857 656622666 897765799 138488573 819066143 443382703 499020604 41639020 623250164 597953961 654660283 472215429 554233123 165931154 561531961 878948198 893802296 847349990 860937146 795553643 806865656 757931217 878247066 782934105 966747667 818078640 877165392 138718879 862152237 297797211 763360812 352800867 844801727 441125384 463494086 492738185 893873243 529650890 990557015 14577274 643681545 515786113 569375633 204932602 558461052 460734839 981595383 335400124 377359290 977540115 977843936 375447955 792685153 26789575 847284244 716171732 870304228 48442695 844796166 4555699 621945616 49357342 170401204 320335091 505030809 933588730 958841377 50377658 529193631 498075700 861708911 105518074 830335259 478559635 521758819 490005732 956465556 731650847 797800969 551155018 556436220 455788783 769032620 106456673 200227777 562048386 924869164 389332441 634362780 762499246 958714477 477675311 542976733 631098594 672951311 434377565 544759432 844422098 974915699 114052598 416544066 662569093 725310055 493836193 944472070 161455690 593556735 779294312 962710030 817489382 998448196 579278291 714415243 391807649 544630872 695965678 997342163 550571794 801302871 65391519 390461542 112559041 732643148 565476482 841976572 531943804 939651791 536777172 747314274 115676983 491326843 434610075 461252103 153401429 276384768 146263526 272538089 27267003 569074964 549771951 982078239 678497186 861753024 183491652 876744730 489379592 999010869 923812916 982011487 220712664 434383029 989383568 992802756 995036655 995515551 400900618 865460289 485303362 582435152 91719496 881960320 235455715 622952548 93214495 131629222 818474315 930598844 754875455 794548179 203292783 729715066 378362103 785641669 329532472 604824121 15638684 249905556 629069897 965290787 171024724 724718521 774700974 926801105 430430482 981971023 318457809 993052120 211444069 876429631 808511553 920690489 791567988 919463156 469638995 781222442 542478680 748910070 75056938 81233655 668304564 910773895 434396432 945951611 875931779 946666616 499461716 798081249 21534906 102243228 48913967 788413904 355625062 780939994 922925743 954276313 779922908 817810725 204732002 813189980 143667901 876887882 446590638 849474006 721701214 756106395 346591947 925262373 575647755 784830545 313285670 446534411 349944047 536764461 352291004 693001987 327551848 641943746 593122189 706261031 339582674 884505605 456846124 458456811 737730058 807114765 315874485 490305276 140826531 292263011 564298667 740163823 386643802 398887128 176133199 517424039 656664969 706152479 664281690 958794095 392157513 973564277 335472217 726301468 673375345 986655406 903056406 934004887 97335934 191532974 243430846 324275944 778188864 780770802 312694705 463860104 166867300 895005546 534313329 627382069 48728698 549991800 305797510 649115788 763027970 982223814 962228650 963849614 835118390 897812639 887911035 917281815 695278994 882978717 636215075 686474079 243896660 457487123 549869462 683031601 994358438 997195067 185843004 518848236 293497362 973961252 960734175 995827272 346059316 418163481 189608686 193661484 666331117 730637038 367683893 551638119 122550938 184012114 433264909 996889179 604153439 825675529 85854741 263804500 190300358 600571321 903161922 911429919 294211258 918336840 510398004 659186898 646113407 850216814 443358265 756398594 556885987 866786188 608616993 970553096 629275333 664619784 292746767 743396767 681333031 927479727 114126975 284668598 485363449 664652595 34497135 915076324 632786188 648357065 388597004 668336078 377887568 795194565 751111470 796270643 807661181 859949355 38003136 479300370 330194743 454289634 114789338 476306645 587345913 644180479 832805492 990559498 120325193 847518845 20848473 614689537 428382210 481258551 809435186 901296793 687644676 720584087 407180641 862327172 823913437 829589845 369494789 568590159 726439366 744994353 21167273 678731047 123620337 365240964 156864379 762472835 335946491 440677115 600604582 994995453 890595938 909629872 234388777 413372958 490622087 540659794 373636047 483003749 469398855 947468774 268898881 445027433 265128803 621766253 374702656 517353415 930116942 935938380 654467312 737419052 668362520 865726419 524482185 666595476 735201115 974141922 734021051 884437502 502459228 902813177 419851781 433305313 262489642 527405083 431773638 663312836 309299140 417243620 96935810 418856833 627962418 993390431 784808950 925976067 550001054 941489518 151291396 537737475 222100476 380390987 584020468 948492544 788938970 862807900 123581522 885979516 397936181 774056904 426366295 838556336 527923610 541374673 757284367 903980372 185398635 705167222 827665372 928998800 134105551 287350323 888887502 922718058 417451327 834039442 259876176 482440135 86853821 629259527 923126004 968870531 651546388 803291525 215933282 809797227 505755440 578325034 453142666 956599047 268603561 336946206 887428793 895853192 906822991 934155340 577692255 923272967 198703680 981093984 742067590 973456994 7007640 647638040 525373264 990306460 500932060 762430560 132056700 436139449 780772055 790521468 260582798 368169153 269687348 663080348 758502078 950711776 316968585 637543287 620590179 641061759 518314317 668527355 995621726 997466642 793837288 954404599 51816996 439588003 793056250 988755901 376624476 910997146 525623289 825318767 466054443 756211066 817685234 843864622 660691295 860896708 143858233 172021287 573671496 934963006 773227825 898515921 127961529 253606267 508729767 899233393 625277478 951622120 524206152 691669830 993230431 993396858 622998854 625916287 960687036 970118501 295433253 314067388 794139772 804924498 680403708 919013448 862982141 960082801 810136191 973395965 926649106 952165784 448159454 636490565 796480661 954124697 792612535 955857546 222913864 708779001 776418739 852484280 926855106 970260427 120311086 822354473 507722267 898068272 492235843 993910357 243550181 444714478 560138953 695712503 161612074 201952511 387687341 695644400 787467135 982333883 219240819 738008399 579723493 986581888 15681793 75321233 308878518 939418234 383286685 903865665 330200335 530218021 980337658 981579006 318518477 610930749 974345830 981138344 41509055 688116306 491447845 878582942 889974062 943705027 782189167 796064148 315531133 785543594 482148171 505699743 737304742 864969857 382014373 625760794 836015436 939884126 124141540 400153516 665768787 745890187 231967888 365174967 971921854 984377263 64181427 434121971 778133676 929288358 178462871 938582159 917363384 972789956 654390653 821755649 727027398 931185766 174130066 244008341 507331720 787633411 67303666 644898985 995207125 996678696 750225316 815802302 985906323 998718803 322654864 421723549 59132403 133223405 558223708 685513133 366962452 372230838 903761387 946840441 226258149 493433257 997222300 999284544 221568147 937113888 628812095 823782270 883229890 892478783 972426996 974515267 441810562 757467572 464763406 687546426 130835661 324082188 746357274 868628523 647256648 664079177 742520095 955314788 117458043 179706458 20244265 159850094 237156094 830392673 247279520 692293167 135059587 580420870 544620068 609330111 526908023 833029213 406916247 742072111 472899892 795984829 797350357 937729553 223697655 875437397 810075548 824758063 883807382 918447529 530596195 804098889 119207232 567425794 14320205 187666459 342161724 591419944 139768908 592367878 461854142 822199250 806547825 817500941 93205796 773223304 688887666 931998944 736107684 845476987 841375896 924438895 908149998 930355351 709796224 844899034 514782534 739215178 442818917 643089533 552892659 672745238 399304744 756637595 828106029 845237080 446779445 819836351 967449609 982324357 52717784 501511832 565088300 622244688 643272829 859029529 465030450 558725549 270179165 965900239 94041562 692887231 911105114 922341950 497096558 548734516 474510291 912992065 636888638 971600204 950978485 989809488 951214123 989178560 827056533 884754262 899860390 954570262 792866326 796277165 255979499 784189231 266381828 869744285 843122532 864953618 801103943 997707327 121967141 620102167 484395797 754804106 421363388 939890874 643458299 823743947 228822303 654726375 286336146 405733012 146934876 538420126 546366624 737664739 267452642 475756280 189542131 791915761 793260369 967037170 219880917 305348161 146630048 520839707 571886495 870163131 193398852 565091568 664786779 788232902 337998541 711011148 416784361 671487578 664494303 774042703 904693754 915850405 42218414 198520049 114573168 627788704 871501128 897767206 503600897 653645566 118630303 449257671 584435561 818583881 202650439 540988791 862771682 877668368 257434509 287667592 719847475 805761382 779752258 845541995 198752232 334195191 30368006 596100733 727806628 970200057 589137873 866838619 459816429 673539439 825933768 947745175 270690565 897635883 919566780 921434676 368510543 524953792 389426826 492893146 464087414 870932750 940089235 971988718 176455580 400497843 529911647 771759769 578807262 676234806 266240233 334015534 277486984 663029209 24071425 160286476 35655869 86240010 336448551 742357892 689114477 699212486 288921647 807181095 940228709 983625131 656002306 771243784 616146539 819570191 350604688 652880308 570830619 996992996 854465858 866505219 260801385 461965140 870763335 973008547 75514555 338652567 695407610 885081891 767387174 932308608 808780002 894369376 994062890 994735729 224013874 548790676 127226386 441563199 949996098 963272988 124836464 608330805 118184274 252897295 278673970 653202730 501686775 619919490 242530019 647971747 863210147 931540192 50975862 303704646 381858254 486192422 148209285 519621615 18405091 280845703 682611776 724162385 98590149 581285104 368386342 619374596 148296565 165445282 124242719 481591906 441908308 870033103 178810199 619070293 785891027 994281880 935447545 985724001 948665376 984126934 373331485 808578633 643706260 768097469 176896972 783374161 994538701 999143251 736399780 987590481 80642154 940053857 783964451 914924190 893063008 940259970 516097428 526195424 505625622 614594253 237308008 374562793 343656300 367397301 929082847 955766647 575007981 839139663 487203875 698721882 203914702 254539259 7858186 11475974 699328596 823190090 445273591 888894558 17337233 589740080 864083522 873053874 573670207 832912966 73786385 166467545 264907385 777342320 853911355 869982890 291689151 940695475 744168350 994669525 606619582 612221978 562040632 743576500 347137611 591042363 709746311 958650719 766034170 918146860 644558803 938797221 872602836 968511137 291213059 720138697 295552063 944135947 396021281 723557008 140161353 957000345 733017895 985945658 912211197 932098915 917035864 935437868 43463886 65830085 265716592 442036783 379610705 556419055 889151815 989726505 838467412 892067730 519171367 898290847 400288805 756181081 167114419 279956040 774411973 840474753 195972823 618794192 9290420 46608700 133549818 319250133 462826888 619891933 123262573 677216769 725404870 911749837 497621563 645347841 665517178 963318047 10491303 667278552 122991526 255449664 947144851 947285795 637864349 898279149 249690557 952899272 345671196 439197027 297668254 445622860 539611303 702993675 487235962 555583232 292113372 785838540 346088910 906979197 143494485 316601851 110500899 822201285 622369735 646617759 398240314 715724420 381883701 638710767 469073948 830747175 600055047 968811668 91823130 722035354 488109488 773470827 583605035 619028658 111002634 832738650 67260619 808681119 164999316 937362976 821605294 848465673 523648955 984398005 118081369 214580504 52142462 370264888 738823645 794208163 880220176 957090637 36934575 704117769 360222763 816423464 915741347 983318655 36033655 206001185 183267901 266213327 659766070 915874415 430920637 570846774 341678446 659391377 458144957 580872745 179670027 745954478 8312418 727577124 525015475 616066616 667327640 980864266 573565080 669218997 644890561 771645103 824209866 871743785 795886884 953481636 778635011 860012500 534676687 650891009 335499326 639045959 562050745 730707771 848181332 906749355 820991289 843375387 287280869 527015123 504315586 779226192 56245263 702556751 481374447 883957813 238491683 862954231 335958617 892061686 319526676 340528377 321531855 356488351 536213134 628078370 613167641 642421229 700522855 742984288 872112289 946688670 67554916 620751506 870004214 899288189 116940089 828168105 434558124 662325028 887261060 971534567 254669760 410438419 953991518 960452934 819732395 932263092 841974221 979453228 963598034 987595898 359863576 599920814 177013263 275760989 143864033 283111622 390144319 745543520 187722862 661312770 872036066 919464010 651844326 738801186 894358059 917477448 475945210 739562024 375936744 719679156 178476629 868903272 266569151 895018966 526502499 963053961 459374865 590724126 583181516 827397798 776855662 792704752 629985552 980503071 489409928 711189201 692837072 992329323 18125794 900444613 582727823 592067189 15175124 36635072 917557050 966105666 101028342 389028587 317773294 499304264 890088768 920456080 845799024 875046384 4984776 353166626 419145160 883749650 169341116 783222085 351351752 501047971 23835020 988057227 594091879 949640997 140285874 897558235 389688245 789406906 260602682 930550551 751760455 821958695 729207644 858307272 693739986 788555704 915007520 939985997 605845619 853785353 967603192 977018323 418953913 518015200 963628593 994311350 919804475 989627595 587037717 771420650 630284347 942784825 838983893 890991928 742687301 946757330 285889000 995696540 509877504 938744650 755590043 810077682 781834024 977867208 66863742 788849865 656932327 835146611 194046220 950289366 455748786 700148925 796522691 868536017 534360206 773400031 800370014 988982503 195922813 351948670 37655846 77866143 994044167 994123969 636804436 942378967 270205574 944614654 415247534 708086546 971989427 999078572 681207533 889732625 494081889 530607218 384118274 919001149 891641429 932508116 400241319 610015690 106671019 665838111 177488258 232190911 380012538 981286554 55929244 315297093 31940778 484988408 541297402 681638023 434930170 984841440 706559571 764750474 219633286 557421281 717655296 750123924 651360097 795130350 116502145 264276311 936572470 938798032 994106821 998369972 171530533 645037160 50190053 928164149 392154076 906213652 626387298 819484744 153361268 228475435 458141700 777632695 610977098 748680766 73817050 267574492 988208512 992135123 680295594 797841804 668437113 806531707 984399586 994143425 280282480 747944909 696300433 705951045 777766615 818083115 109389745 158342283 434847650 886219657 480040408 575059153 746164594 867875627 676679619 824675023 939069967 952143283 123002075 224243908 25120335 285032729 683008047 933910434 734625649 748065564 646169379 672284338 637024021 859671750 913178786 927024944 654456663 709912019 13944727 911570166 958542030 972566281 969746759 998272372 314759093 872555146 617318949 741698082 225998150 419613049 307458033 866220575 801007554 832948745 192206161 368229223 358685750 983977354 361004363 791421550 2490399 977100060 42789829 606940670 774198713 906066611 345911203 350924046 972821043 985320874 716165553 777529599 917933109 938455416 678054937 731436420 407971772 668272734 306483023 642065059 423343448 942730639 879622700 998723896 343265799 455175351 819063499 971306447 427173145 712213917 772458455 830888645 624353050 764559053 767152323 810602125 914250454 936518220 359822620 991459273 335772565 364874652 72801362 434600479 735904707 878717042 18949128 658421488 301573468 566238389 995534274 998344711 105884864 446949741 360387802 905842324 619039549 663576526 754148826 771001483 500765482 898143584 917197561 966529151 943892594 998858779 528980923 863829533 472295780 786974803 154186875 971626900 972258942 993378634 605033559 623294538 146566016 471390815 804653004 829157455 340837229 918055086 770466955 902917044 307249301 785562388 132758064 367399661 903663715 934379920 261853867 640385171 468199377 969650216 13016738 291529021 557538010 846000998 474226750 561690651 917188863 960445872 369236510 910252405 951694593 980532697 485343356 684174993 449741287 893236630 652900404 685953424 392433703 445187644 512630277 943123659 470792277 689262433 933444102 981502264 29745871 550285039 240714171 759877864 539970139 556615090 38596814 105964407 495861785 822766364 839151910 926164509 158243118 235859344 474869855 957416992 393941369 479262595 876769836 908891048 517569384 691804023 828730701 900033160 465883751 831074409 458306849 998686946 929625925 960942978 62781760 227641585 920567574 972603815 892854514 923302060 677577776 937735988 118994432 654313933 717678944 789691672 532702393 962662349 357477364 944658909 328011042 580686694 75582045 634392605 118384117 143929632 524920325 557417082 436478534 440935957 67909304 118687998 442701640 607290352 23182927 101562609 826187481 907977727 134162319 970170327 780403172 966380509 160427953 942880123 898371776 954114291 75759151 617318933 146236286 222862960 143377872 999010421 443756414 490730073 573067429 890033822 40301724 384351720 17213221 975205525 129208817 364141123 867077251 900179130 697292154 880809724 876663658 910744212 658585765 903400584 69446696 301212956 363203195 496230507 274741955 622952219 109045187 702403737 948995128 977664525 317380356 614345964 447972940 755626559 519158591 740160216 935578980 977080558 684417572 878777082 993250186 993637543 847212600 976398227 366202102 596292439 702639118 997588083 943980461 970437375 767519816 833276863 952034630 963161892 952542103 975051489 252891188 943709894 62195089 73340763 283871576 818464145 229341967 668631411 358251620 723527530 898839617 919045822 968841769 972620720 352665745 866683479 194875783 736528207 116164678 988549863 656587711 917089335 669790248 676146849 534551360 647585402 931032331 995942468 314138507 478413091 423272616 953722289 814043143 831583773 25436529 448929534 823145730 903683140 658462520 868490374 671553815 820889574 964814265 979279467 724979050 816558875 636769599 804060486 213268395 456251492 805148489 893540652 145534843 557412529 782456724 878155605 860527803 948201659 871231900 902618243 23354485 600611386 653622948 856038716 59817805 854665708 606190700 815294451 753764375 963949327 989687996 991092857 578691253 835809945 890127788 922907807 728774210 758810954 409964129 535049675 456064856 952404655 427183514 611634495 634968404 734466672 965375507 993785905 137534523 404001451 510938420 690420945 745205983 881728149 902922084 981964826 331894068 931095154 933685310 983672742 568439326 979054358 675121263 909451407 417580868 834580024 499451686 863165239 781584340 913903421 57822957 349727111 584672267 985125536 887295063 915709926 607311575 991265060 785274336 981333204 494685215 621658109 549064808 705428747 502499065 528926143 752943986 770216071 655351491 838625345 667126611 765384853 369176191 643651341 55455884 235368924 660658983 720792639 715776531 972251581 208864082 486256605 88666305 168135071 569227811 796135297 991756260 991942743 996442293 997367045 198367777 643284009 629461500 952761839 209004066 387767164 798774665 914562811 611314889 913218113 238967511 307919670 597154969 950399377 884547094 998495185 160941812 418672203 338906978 392181307 228306113 881020930 564101233 768218902 364265157 842301174 484381794 601726637 430099135 863394620 662019068 708452552 168051103 747345317 740683127 764340091 885029286 907113075 225913017 645861971 572050551 854855125 876648389 995672443 915152753 920922939 11127493 124993605 581339285 604139185 721434536 789551528 542392995 982335744 85539666 942432548 469018567 909525885 709520346 959087146 22242632 827080329 279992044 584126678 103881299 970434748 527233722 758539418 429224543 687060001 709976853 731100514 292060150 670944159 532104952 926491092 597273371 922182133 678959952 804737346 209512565 915019584 998089738 999378632 521005998 656889444 776142960 961218374 565880919 570965445 876309145 935601161 241723361 539363333 142268147 771713270 704993230 843380794 270360371 965478595 934274329 954776821 443732964 576651476 47324689 961709956 824072718 845721587 647846661 926463356 801266800 998089803 2617530 612292063 624344199 973605117 551437459 732781506 823765144 857055847 676265691 882585550 208943398 606270827 252322404 629300295 477294435 800700056 310990533 438729993 391142215 518796544 919450822 980349229 836659800 882545745 497496488 976425651 869439890 930295263 830537708 949904876 296344750 568615104 823874128 977941265 38289100 254481261 494120912 574519885 693400165 996865316 19875619 563480035 905784099 907042029 279917585 289250367 470735617 712280421 727357404 960872029 359828140 428820167 851907784 942407083 97590150 532671046 452592617 507127513 671115845 900316898 383268067 441264733 89223380 205674403 965514544 996924410 727924813 934802481 180084711 384116091 72939510 635566721 412766764 606878867 291650604 802541150 239107936 277914572 83823603 592996069 41981165 748521871 248751418 631143586 858869544 962274424 239382918 282162341 650118808 719969815 208312504 755241988 784396575 948095717 932048824 979034080 994426616 995048007 696218167 896207356 836381115 919397262 740487143 909628370 134695551 167117287 4670162 834810944 228460735 874684066 899480172 981689963 614323683 704695835 38279605 723372152 660866837 992028155 347154536 694828719 342635995 467184679 430628851 685734185 251636468 294759468 145062714 811768728 141235025 757513278 553468259 808347242 298103072 448519157 521060917 712319572 280506299 796079066 342987391 508774472 163416163 681965559 189148922 575474893 266251612 271308458 387301820 605229489 249889747 909261247 322833548 466367273 231645691 495077912 950232182 987657939 645804445 893524454 841256661 899444561 133214088 892283297 675124515 917237959 508331152 806967268 776693848 949661274 706879799 789204153 534616542 785597468 680227589 753957451 126929453 210775387 827495693 989203928 442992357 687793754 863302736 985320940 430311374 606711863 889343026 969725443 816819481 839600829 655428322 764308259 355065778 990313351 708607636 716930399 751530653 870284769 836145816 839476290 841872360 921228731 724992252 865884282 750824798 985854743 676316134 934772881 52254861 629249711 175615556 309285401 795251297 929484348 943575404 957767996 789969389 952220489 502262755 688001314 146835342 336124094 993353300 997687217 128353586 820488539 248786982 420751615 407833239 959442791 891105158 983938751 341360000 515983363 968680308 974033383 415368867 788253403 597157954 600987776 691016551 770092957 590465585 593569699 681420903 786535807 285561156 875132882 576118235 894854806 436250315 988951211 739629980 934393014 231854230 421782474 458893723 887080839 934877619 995682393 982878587 985036888 474067995 651437958 209632891 465070070 64397127 666526593 617380841 935683195 712770454 719166689 366715412 382786746 552144074 576313177 223896930 761365236 33051602 352258105 459134873 798382527 605263876 765350454 565236628 720179601 589888608 833119161 727303222 879807079 927670572 949280332 13400704 791074067 627166017 634227889 724459047 734030266 498079260 638042186 563880580 905079185 766015145 783200023 637060230 816843041 416166492 438716057 345889268 760397699 155546539 158190892 153251117 592886220 550227731 748498579 541651580 690206711 881171152 996504125 832625197 968117521 238579306 513814624 573773675 868386654 406022545 657274623 416783740 667059090 308105673 727148853 529387723 714766004 64123958 795771916 253983599 833668484 825651390 987182841 474599030 922618637 255292685 459875647 700687968 987269936 371399470 486048241 464461043 888041200 48230857 350896980 537102050 804383647 119686523 675641402 382581780 967463701 634264925 737229049 130143304 328993712 237920414 827612947 252099808 721292583 787617144 823389294 508423315 979952652 998974398 999185685 31834433 526405511 107215595 155303266 351553834 418579979 212081680 299529173 450375340 974411581 63439486 78495652 987675889 992539535 579251540 856980272 926100177 935165170 286698496 658282607 521175993 852475546 870134734 996680146 654419824 685055261 136848623 971837289 600057348 749317710 687285098 707682986 724494604 789451013 241294097 423099309 18369373 541395236 29631997 825226311 152321405 764631127 704974060 800998194 445300499 995061076 69572848 212683318 307133178 323494710 321950408 516912200 147596322 500656364 92192817 545841430 15386235 236813130 110985033 908941261 31384630 889067208 927661110 988928918 342946276 345563866 566353527 609822085 557376850 584701684 787014738 816268143 551131618 564686709 313116927 565674074 243404609 452638706 243088822 696165644 553521678 811261563 827626461 931914517 804529474 869532636 119435237 903768400 592691338 968540038 539585252 613645636 488819780 877025944 587091515 884598005 127615774 769622955 410807216 968680629 880172517 996823648 66969151 943928700 761692518 994923209 643121893 949123353 431818313 442836160 746124557 908840878 460294067 699443510 504236823 662796386 339958168 560743583 564765651 747042540 254872775 613632868 697441459 792347615 790808324 927836500 31566404 903407037 129332053 654151339 537430271 909629696 453466035 913853100 174419370 984202329 877764897 930688701 31988093 927799823 730394371 954828339 639390631 703153178 495880357 985687043 843661875 969619693 211674737 355920987 568254193 811521134 330642102 638192459 770032915 808401573 341170621 857413416 520413619 787613089 204792828 360569026 746331533 997593291 179591394 429909653 701582606 703236288 62299196 367171703 28850370 86637847 985616568 988424631 492464689 591722401 900867546 901440993 907328028 939681323 22126751 953369713 547554893 918227604 517801237 946492554 339661792 693409024 49524158 61728149 747809484 991114447 588741316 673946739 987414005 995417512 347941566 902975471 494794660 531801689 24792377 552424087 356015073 733623592 729393680 814999986 567548764 892019383 417430671 940299723 515881656 734483306 837899910 921048774 471919770 526684139 961033014 967300676 634980466 836459422 193384869 336113292 950274465 995896884 972907634 974842937 664153969 939312205 875287921 905911851 769631473 995748927 717868058 799946902 106671083 122578052 668216815 674672108 396275856 672989786 449193869 996808004 428827308 792915332 235539582 712921751 283805384 288875844 604019404 781370345 700957387 833039944 530472534 827352309 450913191 885113748 542197779 561925525 66650693 547436720 526467131 527839078 790166873 879587100 258582214 767070986 701616807 770829059 17884053 204105554 985712586 987828954 707367723 813144905 572845105 903636125 264564193 676007460 267292163 531836017 509809707 813243226 702518072 718038513 124279896 873748036 444607399 654579828 328222237 408571345 176007854 237639636 892914391 982677763 311600275 450400324 120649847 589013633 615024888 657853832 786165995 944420920 447155825 542435121 343406571 642025006 933792575 994064666 674495657 962730843 456375700 893353568 500366815 790886278 386990318 498981844 713479399 787036262 621140392 848651126 442089674 851953938 145785589 393968791 406964363 415807657 703620468 787034810 223322186 567501020 540676044 670753104 659847420 706704722 136542481 567879081 629187457 636196162 583527242 916074953 697819924 969888936 284299637 944354333 388657657 661705903 603153188 901753285 621715568 965548562 812732033 866134223 685362650 745258295 992116859 993139326 624598874 877216572 934347179 970433208 698391244 974648317 442585927 922299813 729754458 842358382 364922902 700506291 438177804 894907012 518250014 821283909 294738189 824340046 722826171 923106738 8730462 917465734 815417319 956495983 401715933 405243977 862634968 972347510 117521190 420931072 991373424 996301984 164368573 600200599 311409820 599378461 564507393 671708442 456777279 544891863 98488772 633494832 953306028 964934772 926437349 986337191 452370116 546542759 122836132 775631286 606352569 745887037 881266755 934571962 848329958 906725926 804074442 880868583 350600621 622696553 908573504 945622808 360483016 884485030 532523546 904656355 578804105 968247881 545095131 559936034 803128867 840161313 672480862 816931827 154811816 578447171 139379988 176143110 81451391 831400229 685245432 779105230 587802963 880085345 838275045 966062879 595833236 677210077 189948687 254747710 990298045 996358781 844122927 993970968 549422102 738902701 407607929 730309491 330552098 955248572 777455401 953914803 156088407 767305547 26847668 419262491 840010043 995218224 449086409 931049456 57217875 429379484 16563806 383309860 385435412 993723828 366127908 810413797 494407456 722194379 798351204 875842526 612047056 874660545 767897448 894446517 225883581 423028100 363215303 717204177 480075755 622353395 545774861 855938667 192928027 270519018 44074551 146076615 282091590 831856576 961065495 985081262 621049084 911052906 217289234 360429026 176220737 315273907 395523523 468591529 379140550 658356994 478536504 690149172 888741219 890895033 232392791 410018326 716450596 778987131 896516830 902852028 400800180 843511084 755306723 819574799 850342715 896316365 6843269 541031915 246599754 415652384 144281197 261400233 665913501 852909496 387854396 976735642 310000249 580502853 94321090 311343051 340777688 722335175 642463098 928036693 712399244 938504722 765767126 799368870 350978700 379298557 506049900 706675472 284885281 628095167 790663237 872757614 203291418 470532893 729271874 737806110 720117123 845729351 288832880 885073928 821327825 966968185 465692145 866404976 678160367 967444168 13974467 225607332 129100382 536417361 802903703 987254785 695153237 914497089 191219557 923376707 176540291 992946946 981715712 986516992 250413422 448630544 807326101 950301529 697770397 716012647 739492062 907136075 938107201 959982776 812220331 866021988 116645352 567134294 457610977 842096463 748498377 931419282 103324844 771474197 843378818 924246924 465344853 630591198 84542835 963428972 566922645 935097764 920072050 970392846 599480059 898790749 535012744 594838900 318927121 887029810 403506736 848025229 495764108 828407643 587771277 613711392 4180659 436772124 28109772 105107806 763507362 917985115 813396832 842291238 796900592 924137715 189611538 546138950 649618886 748636537 227674476 438953853 336625692 960056241 613051375 706896351 422092880 559309643 795770226 954620440 248445316 255806051 112366145 979184927 795490297 849682818 786014850 887637164 899809809 963435622 176847828 179420177 825499782 832507454 205152774 609406152 267418607 718649828 259992634 401044237 43083831 668100792 678641807 687519677 152454186 888138132 57861426 655198927 440926142 667908064 402605921 631352924 356271616 591522924 848776973 950727270 255985231 399693860 997339100 997616521 837633393 946551537 538691474 561204050 795969762 980145250 415602594 928714470 930715565 967121152 142786704 930239496 898180061 906014840 875874143 995386815 93334148 572667681 366039339 863645606 791188031 935316916 166450986 480466133 860242131 897878946 323344464 557278261 149953251 374957399 422093965 518310758 314822753 502402515 461069660 691082342 538125621 754027767 749264961 772707487 255370412 765040636 16796430 524313193 388889032 725025883 695521292 761491193 258484376 300854947 759880111 789204949 562343712 906340823 467602255 746695005 501555561 947192782 333117389 938210930 790804761 897505435 583383451 621351297 503118653 860034199 542555081 773427059 369848022 460510758 708545406 929400773 445466952 813513224 403175145 527164935 873512521 989867438 631851026 851687076 70035009 624248450 453932083 607019003 732382116 996510389 555628492 624683669 191159425 727337823 859982533 947094222 174159229 716870673 259784050 556402242 954880786 990455578 660903653 856957315 330725821 838918114 985826092 989830894 614308611 908091381 790136183 826506616 12992184 407982472 871595381 884347207 117892053 223348438 638010816 947008837 630487184 669828632 1592983 669032558 446154911 631937893 857688887 946933941 565271608 572246972 56317822 81515307 172434523 818817840 667301111 896812025 269643659 825180492 274363419 825782553 410783928 689862806 889163802 916923557 242225172 871229072 394626630 757037589 403685258 714803836 83770891 617291610 372287628 440224160 263741672 752569341 466718043 516465103 929285021 965338863 813178980 879613309 750219212 810015682 657199132 761915937 846899273 968369004 54207451 327572611 91853621 453210083 480242308 883033137 704576748 800612523 941641013 947496678 627519375 966003375 810897224 941660772 775682329 824488058 773909938 971015994 667397700 745774277 516273976 844982113 591296639 692253835 338845999 929621943 292544788 554320924 842410235 868045983 688999307 904874541 568497604 747598429 589671443 871117758 300300844 807787204 971008087 976066050 186117634 734148859 678185145 711724258 399373966 767947481 278394325 964755282 95436826 703784198 713591410 860229098 365278860 509250488 123126655 865059818 43270230 760646950 875194883 893213233 630683078 935744524 871764639 894536953 617149195 859158546 345074942 819039478 402529933 770103060 25891602 281169843 176645901 921429760 91698611 749541090 448329806 898406268 970828798 971399815 577975013 706527039 408390858 883435521 874761008 998124236 465004444 901504376 53808721 180717181 532809695 809350849 265379534 583861695 61993000 205450164 270429124 548324236 717016442 872173356 359181299 537895173 287743487 517198130 2430955 180726697 602920222 695408357 403851600 955174189 916534409 992927054 878219196 894511204 915225944 978488716 393531662 611453847 163156419 551472341 923894299 974180358 385690462 502738087 565231093 665004977 332715217 390665039 383172620 636761906 131031711 291864542 34282450 461648026 875588320 881446477 887462592 934827912 656497400 773093120 45538355 107250361 845368618 947116556 24371623 317326932 524373337 687491827 45019811 483026671 149292561 475246391 630751758 696541138 332634137 513441278 460486222 772463423 531487500 915306875 148380039 932197927 454024130 930782499 985926058 993567518 923476553 976091197 944278699 974650738 591052241 910688018 276624440 415324172 130707237 404236544 85104494 938183219 575998789 825612181 541216662 600489088 298607954 658619127 440111499 824103513 440654142 629403520 844797032 901459321 597038428 611708915 786282615 823676837 868450832 913429335 910887776 976939622 666048437 851850735 281887018 556266148 205345575 639974753 176689396 312786538 210388016 323683603 533096895 732376239 571235874 871737440 665526436 958511451 763090832 767888268 406951481 721585136 317063539 580724505 150271679 941310362 466191919 589742396 191185030 482805141 736909734 902554361 390394164 653828602 679286577 916365032 719674115 927712552 728140251 971056095 670330151 940065350 578917550 909790443 120526734 324521710 388598678 650837519 268086870 593896816 548728164 979020105 897865941 919742975 555302319 839359366 22686309 621916012 186097075 342191322 21385777 535796203 765347073 946062943 55202781 326180813 883468652 913945699 175584105 879321311 251633884 946283707 535935748 744036460 342356723 624407573 572207648 647037188 687391480 929578291 769387890 911172952 292151452 847221166 94217550 467634613 884870978 906853319 791328221 907380926 615142661 690691015 334803634 586011901 338424541 955398744 965585261 979296050 631919734 827811070 217704210 858558798 835619680 859392813 627523687 904720441 617220263 807530896 264819065 649754635 974002137 991844556 305613483 913285081 579843264 739003117 168248108 299322276 389932131 785319750 610453850 701362686 961132515 971239682 654744744 839411754 994509242 995598786 269319608 727396940 984824907 998203931 750042133 907693368 752658789 795188426 196469142 245157207 31544198 572545065 125563793 696503733 972583357 978739700 149147957 341921203 7492493 810403023 508840041 624113913 457146020 827360509 392059925 862330017 180689839 437764806 684503123 814474705 855917047 885602488 385060158 634556684 141741157 683081003 847229218 938559271 210508830 352908441 79137724 257329591 503335159 815832577 739960654 891158202 186274037 467916390 412275590 511204061 213312006 962264812 24056363 544537637 843566679 919602526 907977500 947878628 769854850 966587365 709969337 937429416 657383549 721610046 368921194 642952969 84406140 833150893 439359584 512730079 592961804 699947039 23190767 962441053 309937087 826640188 872490006 968347133 193661278 785265198 778954357 985701406 441972901 610587332 190001963 737009552 682281801 740259981 497676610 805217462 723994374 820673462 830406795 941531471 500778418 563948562 998862526 999019494 123460184 570145202 577768980 964810838 365510808 602278255 703940018 745514351 339125858 584043649 975151110 988124538 612156812 623898874 62997103 554579983 788786826 972248008 514564415 941819670 917276170 935084477 601231442 934851399 15930307 536806560 336941898 937445485 379188969 982563172 971405651 996927809 28572638 241235868 534949652 797810455 135555423 414242640 690973517 833932274 659445850 967942867 736411062 947247444 757573170 945497950 325856352 931224689 933903871 944458563 641567771 911296831 237173381 267811059 62731811 212592951 374271331 822211136 757613514 872704628 874692454 984781867 101069884 682557210 251539976 409599968 183746504 271005398 634082287 977408201 593941796 815879611 876533776 894376457 557075125 788082323 736140361 892639790 690434117 909614960 17943871 155358001 293917139 701932262 913630936 961076451 762634900 890274550 111111403 689686594 919222359 978884954 902368518 948810469 866163543 993125036 491294410 523398324 287105301 668960503 414710501 847026715 971374568 982293149 92689343 415581448 78715665 806017359 432195272 942699063 484689848 747940945 970795366 996904685 309464316 837023615 635985682 886556739 23182858 132992803 385715872 922017209 272461362 671222435 738981567 747518993 47861738 154859320 754157539 920772867 811770598 910886410 643665851 876674712 601847689 999210057 66485347 491928380 269682880 423379187 235249684 743425829 481194558 678973661 259218823 752332590 826562701 863082463 632249380 862434048 509696791 945221149 957393180 980153821 711079286 895203108 679541109 986990141 89727499 623663170 670748222 703476704 660059077 903333300 601920477 921743408 772936821 997844830 995609025 998338938 276871058 427541005 185072019 434515949 728313859 762057444 967383559 982214084 58173258 189831641 641391948 837338706 133031570 518639503 547231581 995066896 34448533 735348865 870355556 890410646 722082661 827532999 56814154 488143531 301147675 643772721 390541543 605701069 531209416 968001553 395230682 901039403 667382642 845958140 250912673 967399978 415986122 806305222 241151084 996683510 412468204 947298677 848569324 898509790 326824898 976943256 75661925 289935479 273964308 347788698 124633018 392017304 271430060 271624574 375123968 949019216 195168281 904158654 169164094 950629580 414645613 842558067 629033673 689350383 713837182 792871972 395713218 878635119 891828786 931767595 421845300 707100449 258667743 555489233 15483164 614843659 179278526 198843226 209882767 238874244 868855628 924875942 906675996 951247797 290963522 931297704 725660862 752878147 406828326 708811427 647698163 688837478 859249111 971236784 97710202 181623714 802482634 957510920 182924431 946859063 617222428 988154935 11295792 312669305 769344706 898726955 364444578 510842961 209911652 663845246 559569374 790820488 171966736 577370910 106175903 444478999 650633386 732034991 409741929 856963144 860288698 869687220 998185796 998728365 152644949 346550268 935134250 959300264 5593741 190780341 231661989 434948629 862398603 919928262 251016291 625513023 698334746 828391919 123735110 717360851 553164740 574337163 360033161 927458087 902499704 942722073 720908609 899745998 192300463 448325881 875464949 924761017 765479292 846318074 365780799 426589206 541149556 785366310 264000306 652846725 168076415 232298915 621941058 642406916 730659518 997938750 764184865 791882319 138593251 325410315 462711076 606739697 214887550 500489502 357104647 976912924 486691573 791490316 983750045 986370846 703572967 913199254 601094532 801575496 956021457 959714628 771352807 847828273 654054477 923200905 901162985 940286284 193404472 868901584 899635298 995362461 570768420 986469471 970378292 995194910 240994436 454219315 883832799 906771307 926219082 954968682 372567841 917606896 535880605 765897569 438089436 827333777 718937328 735119687 149385872 962565044 323118128 739762131 111967861 847385899 309214459 783486740 381407235 964879815 636550064 642376549 444089332 919443180 408878221 726173380 471354590 826064001 491612734 788817093 980492100 982235104 754080217 796431460 383368898 623820957 779352608 878134490 729943258 812828111 670012453 701339543 248216337 437519776 490876810 673331088 258979292 425840572 912650006 997356442 980982046 986724507 378360596 406669602 530880350 631879246 192488499 895559215 615249398 634330370 392265848 455233223 675428897 931665095 976592331 991902818 343165449 528701991 623131907 705091469 486928749 960591566 268837244 840033163 292864458 313737152 197833348 635103413 986214137 992042723 336944998 906779705 655758242 759978764 1619331 726041718 362243187 938362364 32022951 666599591 237254420 363547745 3267624 550725967 280349792 795933373 850674334 944536170 668090016 843015205 155071217 667973662 447682517 748271856 853348560 941201474 134066114 578259630 435915509 576510883 771934141 810833819 507132732 535512060 284777787 654352879 53956808 179612855 303655790 332719773 615540130 839041190 508353323 809651379 304581868 589165730 679250210 762447900 585911868 963063226 619121712 626600494 712847687 772457160 129140177 907455068 642898910 965093141 157116393 733179434 330260277 367504092 83426456 625570158 15132490 934708139 177439263 573960605 770048420 840150032 396526036 925060073 550145285 716375060 464541820 845297984 905562483 939927544 277125341 402124889 699207177 861089587 623013691 766393379 494733818 909516254 531483577 661955880 46980203 989860666 204624162 520556947 545808826 663461434 978057343 990122238 810676099 924300469 41865119 256859290 913808692 940146100 978811687 991035857 780019959 821426238 279480656 385278156 681377286 754022023 522433826 602480560 113892865 423702733 346803616 682959600 987391456 991373764 111376791 713485044 764778906 974675543 947507903 959799973 136411059 945291820 925363319 968770361 127297716 193008595 137747117 333205570 627591169 979179011 375038224 982991927 82737204 246082099 396958906 531202233 756829695 943779819 490514827 594980301 366734797 765813596 552012945 769305642 442399671 654226472 614847028 902561446 199151621 938944544 630752006 728044152 491071160 766098510 329387423 491095162 335801294 974760467 302685047 312430942 98212524 995869481 770557656 820151763 547179956 725283021 218893840 224290135 900575819 980039033 289146463 352113413 252267770 660664696 38615159 688819244 207644365 913221669 32297758 293713184 588767243 707451723 30486930 39463498 796139503 888048118 720314522 803501715 157846758 597856736 82202708 935044145 804206118 984078451 708256980 794333326 246512400 857452489 240825536 544858674 930768433 946059772 126784895 999307868 44096802 502113510 837347929 966530350 884577308 998051407 915816143 917446653 178267860 414653600 697710628 920194381 654926416 970932950 532256905 697269637 909682574 945997275 636786314 787991736 570335657 861089603 721695562 980212566 577492403 753154602 760424679 812572147 127607829 759631301 643988064 764866392 714420237 923847696 643291950 890774387 335485461 819391377 562515791 718568221 109230670 777144699 411259317 493457670 207560792 964567065 945710973 978443906 865340948 876825719 11796823 413690184 532479157 837789870 302996207 480827228 5287607 106118515 975018138 995328563 3035648 696186971 607008600 772176840 235208132 551824048 288894987 936667266 897764993 939312690 632350117 738909114 869643107 933810942 740870570 780271584 247996156 431811501 696009512 802263386 832408809 839313791 354919309 743961632 724165469 793572366 967820940 987644190 500054350 916997038 834347835 989014128 495182533 701825342 973033134 981435698 547593607 573916429 680591068 968437275 637588798 866360878 57977992 174375633 841010742 853547506 254947625 852504342 82414356 162247555 777422452 791219615 940217195 994310293 69457646 411721452 295549845 459231713 2769374 677799610 345908513 655609893 747768109 854889504 839918289 857542683 128886920 900957116 801918057 835172826 283394979 946197848 227291909 569168971 776811366 904380965 738563305 958391441 302496147 986037772 790218999 953176568 283837712 562708467 262263664 623325539 515931552 580011583 913524302 947279587 432028405 438146821 202545995 559581788 504639688 571855605 824493969 892096302 195251036 357677038 684087128 889364597 790895552 806025629 509006836 833152353 58979495 150068053 315287022 845478414 455893016 729639721 787885618 826349745 39596326 142479860 240436366 861091276 548909784 682110805 510478893 988973929 517332428 993194727 631315387 896867132 763273603 856254137 230809054 812815157 16242940 528509859 898657189 984310163 80976458 217384575 930812543 980595413 863151877 971793532 975968269 982281834 379506543 448278133 57107987 462317628 453405168 463645173 563826525 739393275 119863527 820801223 204089144 265486551 527359670 541546034 532595324 646557815 400647140 414089479 45816613 899210853 598361925 916064450 873737165 914106596 548716201 850119482 914700444 931598088 786951914 962419061 725538005 786955151 97272426 600436009 705365264 872312727 658618285 969289782 81729265 97231529 650181386 738162145 170536750 257579360 874079865 926974132 695415759 947106834 689044451 988013479 353807627 393632191 104279099 712799694 387917341 516964924 457628633 705494287 671415741 932210473 313099260 388617244 170930979 720090429 267673730 988537500 647211772 870017693 283146018 536505912 82617657 571486421 168636011 464726556 718010180 794243199 218560651 618876909 29658292 565387212 989685403 993405019 562291337 690609644 33880424 712682571 442900276 948211018 43237539 52945811 410101338 705468099 293314636 742303812 644519538 929877375 10742896 781632588 659165003 862553136 188579746 560967987 75712417 858264748 789078838 900861743 459510622 663910943 527708940 531461442 784796353 817982045 809709266 940746195 550189322 776144532 803021814 998422259 333074052 545721721 893993480 988236737 251364617 864815399 469201597 848359905 348126674 982338168 725637687 886888882 266435296 753056195 39277238 766671857 534961929 732875806 711431718 842304715 491997531 750718906 216139857 933496061 441223838 965936373 279109336 887086300 522558965 932606255 821787491 979600535 858567414 912944765 282734076 697008349 205746524 947805732 85056010 600996109 564463309 588128649 547646892 883360054 80641726 641245676 280943323 554812601 450935149 555775635 720398604 989417997 257062151 757884405 790028602 794522078 35126695 150408757 18965764 565271547 771429907 817769357 814963306 857665841 548517183 611935390 790953059 791675518 714620132 752561794 991613004 999090522 252496369 496016955 15682438 653077044 176321795 380040024 995030326 995622178 748293244 885291353 831013603 842395631 740575351 970233206 805068678 894564701 741823735 788215159 900346900 983800308 512599353 863790184 293363752 354375915 354862251 538169924 118331087 164333158 699438371 852444489 662248199 667962543 781138614 845815723 98842027 207717222 472916409 724807718 22227181 296360923 679195415 855658032 954391031 984385734 484851386 713147557 761211604 857971688 11373355 83582434 742810546 840328685 219325761 869400056 911089653 986048093 180406735 936195647 320506927 610845893 654307395 698576285 35617214 931307388 81723124 390114524 204466733 225262829 302943859 435268578 840338444 979131988 502998792 842265041 237566131 569230907 299831312 500248822 209599310 940015023 527984147 868825688 549461906 602489010 266434835 930782103 550928286 916562533 70713407 792049554 534512037 708066492 223265646 538198780 700392901 776344744 1244927 419968101 339379511 639733290 62813978 917542402 15936391 887788259 572035894 848580856 616479900 862024707 557273298 627439724 373162697 538511341 96899909 336577202 570338539 911296310 799925001 923785805 392417088 666029155 606456791 669987475 26257986 812140431 163814080 548673667 273565662 300231319 766743731 836033980 424278391 724116187 646605690 782341428 439171744 448406425 183702729 957938685 221503082 709476091 247055138 551169488 227875290 285487695 19725154 554013098 579867642 855026886 772058070 792065457 828669308 864904110 380621686 599388002 135549074 631838029 224184748 279116494 664736354 983717182 130873809 612069936 199292479 353643310 261106703 294274186 269485157 972628564 952234337 986130577 806842506 899058531 998624138 999357054 913235478 980461847 177208366 552271220 570331708 774369671 226726636 963700739 389171818 816293676 270015847 978733331 62950865 353681158 695103939 703094855 657203927 888707286 68058987 862775043 302857839 332420058 255198614 375178115 476117986 947185665 312434417 831366016 742115167 984397488 572065619 580275066 116557910 129872166 572081777 893679100 64827163 489588274 724495433 831461333 662176133 884166695 83135282 894912138 32904066 344415527 313653947 650034516 856053842 984811452 397733785 424431870 214943065 454963447 164640443 607163669 67768095 107925905 604198672 871943652 513783909 719712796 409553566 469397735 597085625 707098358 511340593 657488221 947965554 987714540 649479317 650056106 481683175 692019848 245829560 293167043 384110808 459433228 69591657 124135726 705085772 719264077 570923785 598299833 627260435 760243986 831860624 994791232 703414150 876518276 145136402 805969350 985267276 995869246 81838674 702279464 386874905 465868098 508219181 851505167 441652729 804484785 305291582 874541184 223033093 922470639 74715880 716465682 880122317 904932397 15265650 328267634 501347544 717984517 826201696 839736653 104131537 384579611 420796809 501735031 33732720 647802831 966633968 990234126 706287209 838317694 792106242 851900491 199486753 216588104 304593621 347990808 477871080 841918197 199714922 815951900 901904510 994247015 372468770 626224176 643063758 921209011 738513287 900590166 148203026 294747443 274035259 824791875 525160839 768259790 790782999 967370237 365597190 418365022 156019198 724479967 850878400 955744304 733776643 756657572 173326584 583465893 797631876 915133007 420457118 896322133 879893468 885008598 37138816 61756614 293064850 811196482 668239414 968188839 349389200 469359935 8695409 10336818 639221925 994296893 101752500 111877446 825113053 983873091 439010230 628068756 829404387 867481977 27832805 400440019 320104346 531180982 957898723 973676803 379197096 935173599 388245121 627256836 386475519 775928665 859787791 936453984 977925223 987043131 737950540 918540784 955150122 962824971 411840805 818159374 924540147 947789734 742499729 772681888 606313287 949517008 419733959 938277874 854841134 903063014 813124718 974189532 471951589 538713323 995368726 995703730 23067081 932982860 327953214 942089626 269740729 977969550 550760833 952001285 814330071 816096616 274546614 688606724 132845036 993510555 169574125 365310966 672845756 936087531 722053831 760776730 909632535 978856755 455925788 558976663 588214451 876456884 878221495 965464676 871894762 966613092 633760457 929685244 133386526 750798209 589449363 762426167 97463462 518406587 665657988 673171944 897146549 938843519 652268918 703404889 685655635 695730845 850243016 996191251 773247157 941602249 706973164 757248891 313289367 732235348 319233864 819200233 949832144 976444886 844881367 975769104 420986569 884905006 229405021 946216823 481803752 594796330 594145983 689828201 268061055 411565206 933349592 993009697 136388457 714578264 77934986 445033958 642546281 853778803 809558598 956504145 502854326 624238526 357942238 453405693 471346373 893921254 676857026 819347812 730049292 865246040 771770234 830536665 361888162 592882588 40757178 507599708 870128134 886978025 274715767 986963979 557333707 656136721 867545017 893650690 927661414 969653453 504671811 662005101 223890499 654126550 758171608 896694042 273405279 822349165 801500672 920678333 835167785 996913721 822306609 969824734 368188481 649563281 740902757 928040626 220905429 572340422 807064348 986092720 767705855 827688508 6358296 189842308 982132853 988065046 329950474 652470180 435756730 912126054 385709469 944094431 507329755 718504392 248378160 473855725 376520907 672079156 949572912 996770787 412707848 858229392 311168686 829532620 877828735 952481888 527040130 606926811 409268418 877784256 321180884 387193619 622485080 833166152 545283283 942205390 60558512 229179121 23734319 634194700 408470759 565971645 663366509 977097955 707542797 835726578 173247973 862956035 855232290 926189460 188945983 684720274 410926604 701542300 383163679 791258532 360558237 759679784 24167403 525887328 875944841 880950225 521833743 676399014 379937101 603992082 840973985 963863485 724688614 781255573 30891481 896123642 237683031 771590243 371609003 843528698 518569270 809296557 681044654 905317105 295631057 415007166 386181615 534929096 818153234 967851740 479414697 747740793 687846636 936404076 559797349 606228979 893122152 987053477 894239339 983279099 473862426 574028311 902296907 991421595 57989296 735330374 10341431 237334506 533609511 818302025 206144257 501350034 483435643 877184786 188861523 436102933 623638647 793612523 769037938 853180470 606184565 990602086 934489703 970736098 845313755 845326085 910276625 963362044 428260092 743006314 499870999 881727852 126700649 128974480 107601625 373620537 881321271 986192576 953144933 986709476 892708565 934361190 79353079 594312207 713732991 844952676 413658237 925246173 429810834 688007386 266507419 667716713 703631394 736642640 305251451 737635984 176539684 279802820 785263409 987716049 903630394 997779339 779776350 973667055 512357130 740123277 50808826 518768506 56350845 204489316 510401200 785507677 163051148 409721721 148033953 389219383 858165234 988900331 14037960 829788590 589273883 740468103 425744693 670377162 15993387 76473904 701978102 770948355 989749585 997980940 137012554 547976909 137477165 344531257 234185665 526131483 355560543 413934483 448201456 627756979 808719474 996528122 981941689 989540837 482872808 804530863 437525755 523292450 959324415 999248692 328077164 558842018 411334709 429103357 833140340 986394708 750973626 930857712 830793870 928113888 187848426 951896188 189092617 331498479 51167464 115697748 980361309 984606513 8043945 506623187 566075680 796487414 840092190 842534185 838249877 975784854 931121154 937080849 373363729 398917166 838941451 954470532 366502441 678470935 391584500 754700468 443173252 756667127 25890980 139837223 849342728 859605562 194664201 196645992 726841933 887736148 192479593 505802746 790157996 902207142 291999312 902439450 691588383 723534233 615666402 925611260 975811933 985314057 379895554 952350250 787276761 830135835 945471136 982077046 876721503 976530417 1992358 529181309 621205073 934419589 384986582 470947300 545224292 768652474 638010617 845080081 559419993 629532138 839321951 906120065 877718333 882712084 491601321 817746909 806001273 911051003 851745305 985928103 756486526 814987185 704128056 786186162 447619139 460713569 995275259 997329696 790084093 872475069 63800770 159398382 297515234 903678846 211175710 332095802 867203566 910253978 326016888 894898462 509238675 783026058 522875360 993958748 636609421 797002760 674448347 770316844 775484264 995371076 13431711 226346230 133456445 861069688 16647434 297037108 995903914 998491617 423161683 718754730 235569438 858629614 170653468 414909890 858583628 944795743 727735055 814718557 473094849 742917410 803427577 996187626 462927637 699707296 792665682 848767309 72392794 887759406 530757499 648787043 614046294 811258887 354703724 437848234 279574313 776200575 321118298 739277374 168699091 602318541 914069470 975229416 142122994 787053707 661153579 686172360 739171134 967945119 840033163 905639844 443001326 929267590 825650142 955787207 226371557 403894154 990463879 997739245 509653992 763615206 293215778 664280170 743120231 836369611 589268840 664581894 543465591 962525582 732765461 807934596 638197743 961363926 510852631 938222862 229634076 312585286 403283834 935738863 236547287 906188878 891020951 985148460 768777775 956975569 399359196 476050651 388733222 688569621 630675532 784916172 4726671 848417452 38681058 323269039 799985985 951425787 149303780 924786703 117837384 788289538 247682234 579701270 69906355 394497606 544473381 890246807 156317843 202582150 203568619 388464654 31571060 363651126 288918427 689419549 259495655 525685894 983459272 998894906 755517285 845507705 740075132 808781156 871863534 919360080 903392237 973392894 425310694 686228584 666642191 759424333 295571670 955192624 81190268 515999763 8053977 558847521 727957949 734630736 616558638 869831499 125514431 604148768 634641230 871931601 319796304 841706993 769529783 923867203 401533018 429280376 380474530 417400882 662263847 711750032 693628577 745026938 922216382 955333573 340700297 385986072 49821895 367518166 639237226 762665630 748592847 815919659 581665860 726503727 494942822 584045664 304244049 700242543 204173312 868798180 624211520 812384690 59774808 849635037 905515804 988756240 679556685 706292031 797457009 908933003 717926184 970558974 209137785 263504997 716821271 957583643 343383994 490196177 597548310 601639012 145594073 662837788 20737542 538337341 171596089 746069104 96392399 476970593 232611934 866753216 882213737 939512248 554430448 621614080 957290078 990596027 771650977 985827600 559707473 971821550 756525222 827332901 383953988 848730516 788192294 935438484 817031412 892935860 886743663 994868548 337488656 978255788 776669998 816139146 437349206 645478151 444812755 903795913 199294545 766926240 608792102 755094113 746925637 906059758 694373975 962146648 432995557 849511716 976907462 990485309 142623960 442655737 505690125 694873918 450469586 743260335 720725436 747654718 841313767 844462566 237919856 852421100 984253351 988490982 534147022 702527920 943700394 964207291 907810108 926607354 323164181 436485812 718911891 900525748 140852326 569152556 447611893 580092566 586755476 613644056 150353461 783321661 857503981 869873979 9795665 724362892 887947990 954914632 810534137 834554872 44348761 766062766 319928010 739761869 951003402 966011891 433794537 770681442 756828748 775377755 720650735 769038247 71613205 989928085 153936654 440668219 617671665 713418509 837259546 839749911 480996642 966841070 468385537 866794044 495862613 585220503 160031282 310860538 798467640 910372687 556897558 945871269 601209993 880753417 447465050 887498022 205630148 376149788 812215623 833148475 373449132 525170627 149206238 343624417 116986905 344301085 520783038 580063250 387663503 866284759 958188708 961125949 497551310 549043467 402246803 868185053 21246555 861465480 708194020 984759938 715246379 958755884 230773165 443551402 782666388 782923398 773618560 920241614 712297805 957930125 880394671 939204778 45367015 920746786 39940554 111555769 680777719 714517043 519601366 555643268 486057723 694601775 420444197 877445559 271616509 441259627 259032057 299288289 387926127 730161126 288879528 703740507 808559530 942597862 463072315 740703022 18457392 239953195 841882577 856263715 532482091 810884312 983863145 998231777 24983785 784015615 382009174 921179005 396547050 718408559 312483124 537404980 142414356 593926252 212798786 682104555 894096487 894900955 712381334 949642311 830463633 913351848 694909325 858555440 937724369 994947928 766104350 936677298 713464849 787992091 574147379 877229811 571352354 900652103 531973839 986569492 895472127 906200841 654500370 974692726 717141818 925021324 357247994 358195624 467094128 470987646 920473719 921773448 288993256 497676038 214822739 699972485 671670041 942565028 31714871 118427863 901225575 968522310 514996557 534226715 359448095 380535333 91510098 207362993 864575242 935889023 24482332 844234138 205136825 607774089 991844427 996274159 979713319 989960921 558740546 738713054 867830753 905949654 220799077 666784392 877902607 900034733 527152253 754330170 189088249 262510990 838215778 915840868 732817075 996363033 433901345 973639884 982838646 987218704 336635592 945979259 294514796 778624465 468579495 500483561 968127405 982389187 350473898 660783367 991582431 995555305 274420946 791881266 807575922 843691835 93127891 910846480 231229459 449858855 902353388 968215857 43810728 245057114 452546027 561826997 554543092 812875240 389203524 733702132 539488349 690158474 568667225 942703880 956895197 964685700 702798831 892188212 972904823 977890793 614827083 963467887 164368875 904616864 849993540 965077186 771557896 868890253 507590873 675179898 253038346 778965654 357772176 856507056 913678813 989232345 920813395 955903456 672540274 895955170 285266110 948270965 454646079 960659078 10391506 98019138 134494566 767022649 114489222 665617152 290197548 849073856 389087042 602494416 745953986 878769379 31126740 592225778 553119147 919730020 466210466 728434622 14134259 689486578 865404897 923240123 729337045 734799373 149821572 606698146 439688378 551827232 506616172 831440786 173172178 712411092 221057301 599478271 713745392 960205631 903805738 947605346 694892142 758070417 661665440 857156823 675378976 987272987 387643673 437005013 595830858 641541333 41752897 989713229 338287851 426944032 250921477 311720978 597733846 860479689 54956552 109515368 709488999 875529847 817147532 952319621 662795222 903157650 472279260 607672603 46931650 638770981 129835910 676111421 782157696 870372896 188783210 880052514 158658673 429333035 909450894 956089260 849089253 934795545 62516013 109144827 265717528 310188492 63173864 950105514 301246296 488374334 239946842 640748782 846702702 992157653 120931686 297731631 205166946 767277687 553977800 678853355 401645786 458557588 529485802 772538946 304768579 485065003 564656265 908178228 570296881 582289283 977351850 989088987 253741510 948254282 85134136 703259548 478798692 746958702 632521986 814525296 305370147 749308689 521021614 560365563 400439275 491874841 91333716 732310870 558806623 797350381 82353321 244509440 537727179 611428695 288374147 857349957 916974708 941075501 933716218 998249601 371388999 618157986 415568133 607855973 573213116 855416112 532144131 941286610 850017434 951510014 498924250 638998815 552809733 563152750 513732310 576469018 285579143 740783847 868916401 882386526 190619156 336590225 874748659 888634362 1921448 168005028 246703738 762641064 206708211 888910092 90044074 956375724 39730852 428766691 196951776 375628385 850642547 940977066 831540558 898897539 830388051 969535179 584672869 644188829 363328840 896178230 185537588 830340248 360854222 462954483 960713176 980938673 478418907 593330467 302057568 689781383 789894592 884451071 611317376 858500952 209861753 259037448 58202831 568671033 293705688 761866644 321269195 374986675 205142182 734018991 476955737 900411369 872756179 994419003 120838165 379937931 474813526 699749975 621509001 921166303 388550125 580466736 22649823 520290964 801941977 833162215 447533018 809096525 855014921 906883629 917342671 945776245 714987304 956393699 626035114 695416005 649752605 968636594 37509418 692741154 338669345 528824988 756600699 982443365 559399791 916293890 441157036 729679946 272588508 531413050 149760752 870634159 868297977 997206071 915021157 966913167 811409441 898699199 345557961 766791482 547792067 979178645 966745899 969379921 24962060 453794393 163905045 950143644 196456464 990991284 754696411 973098535 156398954 913513415 959899167 998825751 860784801 957906238 9584991 762760879 988360929 995208172 97611642 727046310 491880308 629855924 38859468 147018052 47226290 407302729 365867187 391236842 253894568 964477617 924600674 948935352 697728907 927665142 3969984 929541060 484652816 658536726 680085823 709054958 788974538 969907739 963176781 974288840 99339340 643781689 563638710 824659530 671367526 919043177 805357605 950630360 160810157 260372400 884928811 938515356 915348294 953300641 308154554 709963556 416229358 831763222 830370231 875467695 29667005 490634029 227293227 887451433 718828287 989144469 848941885 904098377 967694696 998346876 978749071 985490688 651599248 980815229 257952889 853587603 474925769 899835168 831850576 963855862 503625473 908934779 659364326 772667257 445645306 666838052 954744790 983321955 199228721 895776666 891847711 923275122 418742339 447873373 184029577 999328729 142130898 880339011 766785046 935192207 518438537 633838982 519843917 615966049 531370014 768945695 942590473 974195055 295193584 464407857 735982392 881919630 897637394 900334370 785476784 878276453 765050153 821796174 370908902 976789367 40576941 574578431 493315676 982816656 669431531 694203118 187453178 279611268 717070559 889272879 18754228 640173294 654474067 731100044 629793271 830201881 534283258 674203149 63354237 953980040 226557327 950231523 559825030 664247709 769771430 786806020 865164569 917468008 627623344 914077904 966181020 984605443 603707947 608092331 858934939 969935978 676532776 860565446 636877306 936053682 601375777 609666253 39984922 389265561 731612895 769464230 165434163 351874050 573779789 639468754 173540824 352295631 593093174 768713229 22199846 338172121 426148691 897765018 87920974 713027023 626319746 804741385 334807305 574047360 236571826 303802059 630565840 796129337 939900369 953371921 731989691 841881941 299679488 429265423 905227635 945142035 322061760 847973865 680618094 735047661 291638192 837591112 898912793 961260563 629242443 803152164 603540016 986173586 862108780 935403595 549989865 848239157 649281740 812604556 992506823 997451772 996295046 997093271 306744208 359765172 723650665 851729263 27425590 654242446 341456429 878945945 681570879 849643804 74382158 475321293 428126524 819821638 961648015 976097666 738074657 912079485 300228138 384025238 250822950 960588061 275764493 356980529 725251706 764140081 1129941 787367069 720208861 733513968 358438832 984960745 715958339 867661608 122292785 527633992 258683811 715172800 345500653 805169542 111948635 703261562 397113333 447664127 563760241 733335388 526248709 559198194 810700619 886004232 880007898 949083500 400153890 747811476 670746926 751027444 628380091 750719764 412154088 478306231 904504699 995131250 760888555 922012601 793097994 814750549 477553767 516850003 501373818 501604661 973899961 983933211 727094250 884994281 105016396 809274047 54326334 755122752 370543973 707814077 118991849 301702246 890060719 931416391 140693623 483010124 373813604 594613128 15201894 216107097 786119270 859052593 534435358 750633101 838198194 936655515 729511320 825924238 99883221 619674428 773259778 989650753 138609419 236057951 14647557 220037410 974582145 991800299 994222930 994416309 725952773 842303518 189465061 915554942 891699752 893903461 155872906 416067954 840015560 991052385 706197735 804570198 489939083 591060719 364585529 453597368 501374471 726227281 481554910 521758170 564849587 750390309 377480924 926626468 618139501 979255326 192773916 780629642 136791659 347304308 994256463 998082443 933730682 989119084 464602389 851312560 697588793 987888398 689579298 956782618 702334555 856327550 464569447 984798073 582389365 638806206 724399297 755206139 883877050 964723958 91928759 517206732 761833196 983782014 815875064 903515235 648788263 782017471 654475351 807577149 138431341 939911054 654835656 918588563 116392298 626432380 436343226 942301370 135424808 151414990 873993979 897578433 707470053 791968169 679269418 886271589 448969725 587247693 125019491 424684746 820527118 862746971 374270726 728376257 580165007 977455908 622176019 750329905 791988828 903428315 313822380 755270027 904989991 924724305 874998557 917261860 520308643 745354743 178406305 475138040 12279305 273869583 194497421 433301501 701521140 876076248 958924170 963550142 317078729 501825587 684293896 848576416 852969857 898569240 89324744 297914745 848007345 950047687 519622280 619225905 348474321 773469437 875699086 962034010 916753507 980106977 702733527 837629020 451970684 854310956 843810963 948284447 356826672 641990616 128997962 848629289 725362549 885466167 682823985 916295954 209678985 621120514 360498962 828370409 121004042 723775472 732762395 977907236 234731054 698467760 262930391 843344347 27574164 895572156 456016312 759260223 236853685 787114867 747619596 901149482 48540027 109263800 159946976 988160467 841494694 842765843 505425792 625004793 659133183 836606134 858297296 860713835 560065957 719059423 628578435 897556824 311227621 519870199 481373574 850813602 774524028 782760994 595644224 599442095 43732298 822255778 905324557 949184195 833263877 837242427 636466528 804474358 964899651 969704686 443837569 988319706 286558524 455933811 330790195 954603610 468474102 785898344 995601549 995997759 594071164 611230127 495535989 938792351 997585797 998160520 220583626 827330044 878631332 971194125 877448864 949575803 351264138 608452747 173673671 916989596 563985353 567260993 394337850 907505191 990467602 997754980 747329665 865822975 604004868 899017194 151186286 381436219 72519963 230754665 494041147 986459946 312914449 796126195 610651245 789288992 306827397 856980198 63852953 179172012 982471202 986260498 553671892 648833410 618749289 924988911 341910377 342220855 213560618 664522684 919306884 932029822 253290444 392355175 955722356 982560534 615189109 789608390 239146809 575099728 676289081 822100245 418121529 966430724 240781759 941175172 528181507 984936365 852045244 861341579 400524395 772709180 726752061 935172642 552729263 983085689 3852636 961340445 29910268 78101554 916818241 921039692 101161374 254748298 132082989 564634415 353738065 632997649 515295718 868404090 566271333 683173532 369931586 775726739 854062291 896015135 636488802 933782306 536990160 836579920 517512081 985690941 455985559 780790871 655657683 789308276 753074977 892200829 871602076 929397701 790771866 981785319 777176979 952971320 111026685 509015654 722597263 790924544 839811102 845834473 61784961 240429673 5652059 616090856 339329531 435871091 677642546 838298990 123158153 449930277 576030630 641866644 654692475 964408366 635376316 826647890 480777424 677533027 727275815 881032082 167215925 329595064 886054272 934813367 502976189 682566303 928596331 972440094 478797839 762695666 104495021 711659700 112323414 267713526 620108644 856222602 249298684 689186842 477261776 822816348 292589801 841533314 304021459 502228095 525904786 556883573 198512678 700910429 316567243 704271445 826375089 963488407 495052338 815015002 218568891 448576899 143289081 589871523 800816641 841493313 15282660 276049192 98648205 637188783 579733759 731638601 42004084 423791637 182185407 888639062 52181008 245857177 574421275 897164377 467276428 943008577 685532309 914918578 653538073 929083130 6348754 144995687 766668046 982603470 607887608 755707646 96463313 693793755 586670888 587064713 884063708 944746529 93861416 186440528 44680672 849676096 914365215 936905710 482368673 634904445 289755181 870088756 674507078 747609748 80380121 899955352 921194673 926143714 2494646 477530456 842505484 896908811 742035280 772731779 271758035 945001716 630024732 669667521 553055857 739586177 968449969 982406547 314215359 840165019 803460072 990879151 940126853 950829998 307405327 449893489 544783070 869280610 203834197 483756677 676137656 682879013 448661220 659711758 239226674 664281509 990304400 996075560 30617525 989331672 720926264 978313533 518680867 856631415 63027986 866273194 33577869 105479325 819963388 986474528 93257272 529792949 257268263 719131123 223668870 364848724 326415853 447316554 240597576 709599615 456256620 797340125 588936313 804467671 352695926 394992240 431237349 752708332 403329544 960048807 291618473 840922558 129888160 529353716 426223346 632157713 183281220 623411281 253137 243314637 264569206 557606194 353638713 580601269 788315920 962108835 584366085 622185169 692178299 977528685 169868526 768498318 667217741 779452775 593132781 696264998 930112606 960648521 63272180 254342234 671433606 906664946 727661335 728276797 928215115 985275032 901742224 908372675 75232727 543697301 554667513 629379953 576126955 613726583 822439267 861607806 970697899 992848825 33969405 434028242 764244171 885347660 665223316 927521766 542011861 913795240 795309043 863965135 805842240 922480366 607114026 875394907 174608336 804774280 225291215 617850405 170105509 195430129 973705056 997942074 815617547 965044837 325516678 821075048 407750943 629497025 390017826 489754394 22397985 639604572 608059280 780826736 325162534 529093872 104575016 984526487 480915290 503375518 793723803 816544986 191533640 621627603 866778001 960830097 612358563 846732451 573950778 878413998 676294709 984841938 468543309 501039521 203639128 553659866 985337160 999117785 40054473 128268129 226237063 782973689 40251507 730276335 71674526 816157469 715004689 724197753 414522120 469315239 695192073 827819839 533647761 744987346 48359305 106177710 216925340 647988395 997992287 998006588 984842204 996441121 862096476 977333820 859459990 897917866 319075982 807373756 770763716 913056521 425962928 742887211 339343841 437219450 120856634 305153278 608969013 985093888 867366496 955821186 108087706 819381240 875738355 912376131 678105529 900797246 820277555 845057272 20226906 527209780 814283296 946211181 727261635 822228509 540027072 921704597 727844168 942317406 187869013 629328878 564933277 700574666 731023642 856151653 542577003 799495341 949664017 976465464 933906283 947670742 86753067 715191418 526818456 692734933 689800122 730276195 659427237 955512454 732920166 940065533 821860128 896380769 337788995 984344760 952911040 953055025 894719199 910226717 35833373 89090434 41766669 93261308 943141529 979705541 679675295 841653471 615681299 975039858 578139238 778946642 770386032 964859136 990093388 999023649 782834760 873651293 576782734 635094547 839296004 863380915 274414182 703623830 902948657 925120666 224532999 691373985 843335870 882724547 21749029 379790067 4982141 723421136 93224202 829408734 212593855 690513206 990560525 991430810 137448181 454406437 44357743 444146016 735690863 792255161 741206416 770602790 296209768 763389959 899082471 986707338 974381333 980368866 395018661 467048723 414593590 562269475 430511911 731564155 227730749 827464472 145865648 422988634 21305200 974392911 909266187 994891198 655722866 698238899 123816058 458616345 983132592 986372710 523143735 734532980 729274003 758799517 987038115 988181399 968808024 989031684 68763607 777219590 491390723 655432192 93913301 746884570 863204255 920703455 180971618 259106955 728523778 779258488 681241338 745702315 828006640 882480082 62132874 187259011 988171608 991716642 6133644 440278542 5912798 214616383 808963082 958388778 585000539 852328773 432344001 589940321 265728617 743913664 523010814 829879817 936927673 978259118 45974529 792010790 294516289 380225963 920588437 965738742 790702889 887793223 938244180 978583458 321427202 831321394 973477694 993601638 817632553 981283971 838484668 982828638 66639984 179478733 235339373 419100862 485776977 513800186 723953349 862859790 448545020 633416065 632115281 704526727 185462473 831204350 498823386 929513755 851146511 998207275 901542189 991931734 858594005 867395717 677372919 968507616 613663375 635196167 836109400 892860221 88749741 588344790 983988262 986280606 722599643 839127148 521298072 628129715 101558955 186150132 855998552 923288604 692949476 933730933 494262558 598077205 468857237 832252068 288196073 928721289 127031112 599449045 905358978 984438867 426785204 907145098 82894264 247854960 746356340 952424023 823852632 974358273 614143245 971250875 461881080 498261796 840869435 977620911 222867729 370085927 216746976 750326525 686037416 866347859 271294837 775727064 165776677 457039186 962360151 983698710 561866718 987176052 794535930 896798269 312702168 699894251 449093562 685431249 723121598 791459001 324237096 906958579 882108904 952622766 142992570 805670739 537555875 595019505 967278558 986011184 958496718 989001510 651737870 761776750 712670695 882701943 148759233 369810546 263828260 645293796 388303520 896375377 870298428 927690614 286075373 334109765 4582927 379206213 34788300 857209353 592993834 960141090 264595647 316694634 132096102 713933388 203125957 981194633 801242082 952084947 528017610 655671539 382538988 989466417 577178764 676781618 241038549 728529076 851426040 920527370 634124584 938104169 970122747 984609674 961623225 987366725 305739196 972091732 391532386 959678930 21850293 321875977 89027878 948302695 333195719 681272823 96133603 196281168 734771300 921983670 320310016 833088512 353970046 471864796 622040339 748220357 787042655 867571839 74224680 746931280 790286032 864659370 517997752 822035998 794485774 969369537 367433312 555711494 897292720 931723535 527297119 849827477 784482469 857594685 260775894 727395660 768402465 833218604 991008136 997193650 40458278 374151214 58667586 727448086 613854966 670349985 490608270 537508141 915902931 996121323 924273334 931506558 190871299 507361410 700017002 724273987 687765962 867227956 249116074 622062075 707142633 993232940 136560380 980710622 48429111 92286235 309162293 664476926 25140212 58497641 30495273 369515785 448718616 607878250 570494170 816550707 852306205 964976784 303271999 803664141 534656948 636023474 297141729 923125746 124639005 463294706 523562749 560121885 970657944 971879810 868941774 995854500 271305024 649975357 911481704 932797324 99326096 918481631 575490545 844531072 870187785 952428666 748196113 900149723 783911961 826116741 599009786 894581723 171884466 804662002 252265779 359020609 57090375 485730058 872875627 890417979 870095568 934585704 703367334 997658072 956595939 996906950 880206988 910044084 877472990 911925216 251224908 511156979 629173583 971083285 390693521 717744216 963105360 983521770 780292923 835564123 412762849 766592938 358326956 577675977 240694001 618712631 23110199 733464200 546369499 574180504 259146333 927294204 148438762 301671835 468778153 752509446 293697995 933627419 654468303 721727291 661635885 987670291 268747654 979410062 647864460 949321374 264222750 294441187 624578189 763332481 592003037 611861035 772137223 779380881 481606245 662010246 864936635 937062524 302860081 478337849 307287145 676389306 995807716 999174472 68783850 516455846 169624107 175746276 153715951 688728961 176027836 705991269 11183212 181433632 687149212 994745588 610740706 852202521 262702545 430601123 764493559 808963794 473559371 712967693 89491192 193213225 476638085 756951084 530065530 997701690 767937421 926370986 782885465 923417997 936945552 990492344 883062325 999382555 341417783 706019069 667214375 971219638 661706741 913374578 384709140 713511582 724051997 855969296 599758645 981349544 365862940 964130879 43208782 785645489 306050629 503522094 32401259 827473197 223048874 636244425 308531798 921068368 321926155 933626877 518700637 893769188 872657012 884323884 470369909 871840018 521564636 945898340 294601366 387353399 722716283 953645332 112726017 525085509 743772362 775712467 706916550 886663233 164301490 760252331 289992806 862439562 301992004 921959177 581353164 603917122 725603816 847344921 288368543 521255526 599087366 963640942 566770667 632593418 977590392 988571188 730342808 922155200 202671285 934240591 736520222 767344774 207213627 595517242 968269083 968371780 826105305 983152669 649357243 696865782 122722396 896002190 114487876 808120198 100773939 160032516 74776091 281972200 147085725 220964870 717269809 741385541 329137637 732245102 301236780 462149977 661084586 776094201 339748345 451720204 819900329 972059524 142625565 623270130 891460766 965894435 719782536 768515445 602720543 672480837 15592597 371811892 768085763 895515924 455713285 993408228 97930438 276109208 209091389 911041366 831864612 922210796 754426359 825811356 787952104 884159225 241469888 762257182 355146452 453982986 260340560 529814058 266671089 363579354 170772646 684382679 147803459 644126929 928402230 947537989 874503698 983582402 303324733 504947869 54534013 366743195 137310536 251944700 621081425 838058078 381792591 588607848 125064706 163595633 682568017 709910162 804892199 810680048 514740626 684197714 144929463 741285344 30058100 917791332 793112029 965616240 649699999 677400992 286362094 328982022 737181069 816294696 908431497 961796201 77991601 971520958 767563805 909738789 174898884 812245716 725290151 733906144 507334765 838870448 988827096 997461020 55998259 359239500 121996003 564236434 857361900 943251938 384825203 646017914 823521859 933174622 705828228 869446368 635723047 665346947 559290826 866746929 268832400 793170099 687244805 824423149 884239293 949009861 883685799 923461929 698872512 945367477 866529254 911006372 322051399 634465389 427150153 637537134 65642388 507751668 836249057 882007786 193422598 995361490 194823704 614100891 909106545 951693039 732687898 781821406 631960440 874395229 794519247 953951975 20591070 660689912 9797780 422963606 99600160 567557494 295133855 826818378 632515905 890293731 626776690 641922961 239595795 241084295 540043879 737028093 326553710 791884668 703066491 822012900 313878651 755616512 35844351 826258710 242124903 815491434 279109513 931513732 340647281 629386513 666017794 763286303 55987585 235647077 623410996 771975023 3745241 38449152 925199589 947378466 802825512 815431645 31212107 427271137 258867193 706972243 184832893 272921128 26168125 656328545 619847579 985641306 50867567 493734698 18854640 63692698 321023526 569983688 379638883 751489206 952856490 988474228 98507662 828525479 592721908 609213398 598086353 677148229 900981667 988171456 746992882 794660396 166568723 594407918 591353574 717471444 687413518 712550457 796821148 800991385 573482389 650860425 977906108 988112586 791374385 921367263 832930890 898135251 150987400 705807242 339635267 398366750 23782063 796389356 15950119 290818521 348029114 997444800 112693257 457117171 122544322 436080882 647503155 728089264 752035901 771214131 287688594 990593597 282721158 389443992 37605847 302192609 110257807 744457943 704036472 956718208 294713125 792850944 352054487 440359948 127842923 462767867 184279055 208413960 691425243 761260488 565373795 646062410 299578272 454715019 481332796 706859473 391026356 771585068 202705086 919306676 263924587 472022099 380830344 437139658 358750249 460166161 800334797 891469473 567975303 994692199 384274602 609603510 711307403 798209719 803458582 838984477 891295587 897359818 87779337 257836959 271067023 432991873 228145864 921386948 838209439 942998230 8588062 308210031 295916834 870925060 796413552 821209366 987012011 993979755 68442127 481702199 513992210 671066581 294744502 962486059 20823743 387602897 867409647 904824789 332352342 656256141 831334678 959286553 72006865 444625356 366143812 408287412 516407018 852073545 728717346 881207173 287798412 946826986 833837864 986184855 245702417 585436084 292929218 954198762 625103237 688048014 358410754 407744535 118662498 743523235 227423274 888835761 424139231 745722829 291213241 881438319 25510303 217114953 283771605 383990747 778358950 978941624 744903123 979927706 886312310 981169098 159840145 345969432 232143738 582727508 945431696 997015972 701393201 891445133 510935836 657677364 480445130 865750475 589482514 740183986 637521077 891314526 237185749 337713756 446902743 876645779 943242428 952008357 855805949 924725960 923152238 994266337 440069339 513066786 229826114 411630034 174880933 694696429 212725781 462586785 163117075 393956002 697524001 796653191 966261059 966867430 640168752 984227611 743188229 863046110 837259109 846233285 501025304 519643435 102181535 987529285 940862176 997727848 848744305 931898710 528990834 670185892 949717433 981541046 656560643 687344217 979476487 995891015 75868311 586502656 246001404 612683131 984012294 986536917 633255878 689990227 962025191 970443075 545580583 617959536 746697426 998686193 673530707 804440145 743335183 884497851 138277045 662540519 750712541 857926631 378612052 869491786 693552960 934708642 848571873 865353109 445861011 734783929 146855015 789953455 253493034 415708949 364726373 756960340 252763314 933659306 468854634 604206061 782070684 901067772 569679275 913094252 663019425 968523451 947501122 974179750 369986026 399042603 510359294 953847250 611869928 765272056 39463561 441150830 86980140 582184348 244618952 834436968 733525105 751291900 104524 322106156 463546836 949757162 729647143 797738036 202469337 296620415 207178391 865015401 517837576 584522690 223666079 590951910 531698157 687904009 343901548 907141099 161909023 669388191 542634488 584078023 525836393 552245219 102403002 910513791 1677553 136092262 252717091 857329846 839207963 850219595 696313395 930275466 137377306 624137537 931763498 966997967 228214557 498376496 69581182 449026711 11563069 437081808 809287443 825345636 877112059 933051655 723288568 814190525 535693361 568406018 837898452 964566929 85251732 522946021 924408860 990419773 945554598 986294729 458238165 665329967 987811873 994697781 428717861 643147550 610830370 646433046 244151758 866458704 5602030 498366313 949997445 955148439 715466997 926993128 664117793 775700137 606668623 966648811 123110748 609747639 384389361 609420477 631709432 672804636 97379647 592314969 73655871 559991926 145532031 846923730 777024932 812382806 209915529 999080087 252796016 578845934 570454467 573411486 741316066 793186460 755118517 879499983 780275296 852801320 848166235 860790612 282980077 436597948 217382634 631849503 370023055 953577569 877704557 954301314 934416841 979216791 768605256 920160702 50232300 434887361 972969686 980107617 931442438 966054049 118452451 888255302 973578443 987053671 250733945 984554251 643129265 964400204 857082462 868440813 928149721 965536078 647792156 773064115 258095319 577246477 495513150 794937235 463496390 916534829 882687111 912101598 861439567 961791730 272398924 307051655 619392183 691398312 687025704 780303444 944150447 970247856 896920165 943577388 19598789 103348244 515517084 798387312 969859780 970623731 378551612 414032307 976323377 984074721 917561897 939568447 94698181 524190763 706776493 770127104 367002375 607141488 401939350 413513955 309532548 961995738 744329979 851665069 272592705 277319088 279539021 444458524 638844425 951285432 908413226 943107761 514933274 551569671 223203386 756781002 751770975 910102075 771741837 985050625 823168207 985936387 480716645 814369667 681410374 751627520 411662855 966253672 126582320 292755645 130460448 290067976 825168038 891931023 377735533 589551130 723061840 774864278 620167373 873757206 679694266 788514327 159871453 716982470 36220234 150909173 702836791 745862611 17246996 634166296 131074756 317519679 39882047 830248641 579261155 787881410 637985807 843968110 735310479 839325972 62184975 918844190 830716592 834802259 916307261 991086590 516982539 540613218 740632277 922412913 494226018 816523472 258758350 645288138 154856404 632355395 989011950 994154190 521445486 728381201 835532017 839609256 758344082 848054501 269281511 331026888 425247864 518860604 945710636 978490065 376071525 603119108 455330632 986452607 769376182 779435515 329522973 476699734 377222937 972731640 583299565 947290593 465580973 629314818 995584022 995656294 735643040 752007601 469630977 978742130 239268102 504465820 113310710 976922422 968558439 997951523 257233045 558832187 477247099 481349514 773682003 791367060 943398523 996422872 784129046 823065343 962168447 973099145 355956908 709793763 67425496 89921442 498005592 906454973 471657849 818477586 299569071 839565420 557932932 795825958 490629577 714418589 410440711 701510664 33522892 158752550 302402543 891120989 575969480 797158215 231432618 615432216 478579700 861633783 42713568 310830600 534340103 994595466 256001536 826774733 985754657 988568938 288469263 413952899 879950941 989218499 984934551 987491728 778962181 927315334 237019089 370914793 719797206 953405850 408831173 721833133 956672796 963887208 265264237 790484200 169705677 999288504 918553520 985013739 401705529 720284527 799762871 804300020 333893429 579977673 670771035 808830922 610305432 635623308 693534379 770208303 677599367 764146724 493775030 768481331 987030698 998585277 42723338 445970310 355908765 476172288 13786383 444717615 195455379 200955673 2248592 29764210 673089922 675239876 687289439 768051747 194124153 256163960 32068033 919828748 729216714 993380020 162033512 935082688 805519511 984287274 542143975 956180991 800615712 938684124 194210638 291303605 412944003 669216205 671147302 993362456 472586170 672285394 139092790 634283384 688984012 810214522 857906689 892714991 528123408 707238074 465033037 638442509 844916384 879955532 923414214 946978852 25211338 405324861 559149639 940648366 562021667 745766387 142054212 244187658 799485831 926072652 148020417 451706489 969554196 988084256 359665607 434871396 985764919 988332397 304983131 606707278 468627691 549796937 328879302 590297243 136063991 692883502 259521541 550112573 439539907 655811942 261456458 746202735 230380248 266254365 426249087 452996471 106286418 813230379 541632055 776871636 186798488 892953197 864017014 911514001 659386628 901089052 787925462 831292446 602946149 727979558 15388168 25298998 531868034 910172139 226463732 743048938 322343911 747283957 894351974 898230533 694422979 882851897 664935477 938080100 766410240 842967305 470597819 986872855 948364044 981016210 416530691 838735926 598778152 678384620 539288487 942508065 262109899 864692413 798308954 822769779 178028288 807904378 409514004 818810206 380197167 848486705 719464599 776216933 600217879 606016869 61594664 140642838 326030097 508079726 432888824 608191936 642959084 838163968 73880392 660459626 923450063 954720128 684352509 942083891 692441307 836440799 876681542 978404898 746063552 755242998 904497345 932443337 721850544 821265627 988485328 991498340 678173691 836605868 690436377 694366026 644262204 755551900 758282020 985424396 199623669 757075151 423909484 840473475 349118348 624372555 196345610 964817103 365089530 423087938 487659117 495329943 145277721 515627218 889131983 948851226 586572401 680756547 197126108 969337511 688007603 911292763 935471094 958005916 100679233 466601845 479694350 857459861 630161294 945102731 222442318 315772346 43191175 948995597 135908667 678369121 932703342 998237784 591720194 782983710 185323715 361805418 125384721 621440592 33823005 190198410 222053468 813259528 660355156 760230127 709699231 765466773 223465364 402477597 664005419 695479150 594560118 691701540 942798650 976318033 800515051 964769760 970191820 988230990 712303809 751689110 921703179 925936868 660888089 674780442 81220540 724057037 381215082 519042850 362236900 374990510 659455942 947833388 24031649 266804160 42040468 242919278 939006398 978519904 210893547 511996597 14601168 793272378 165747855 662998379 81917343 575015081 624249025 980729161 780667436 801557912 228779072 982647198 135358695 537735710 692801273 931495977 408333870 767137060 916427882 973790861 899017176 979037424 848528978 857503621 242461446 914305560 345729528 891643416 513920366 676584398 19332637 306148489 929690790 985488299 169016009 505018437 494704075 575849787 128520151 310755271 387667470 680120349 663739099 955496591 500322632 827099704 521243669 727308310 283751130 439001983 218243523 475074365 242142792 451384952 339314375 691339921 418476885 611135189 83804654 728731676 95618255 288600694 232570412 244356803 966588064 981562065 211855512 766061869 358767484 791044380 511016612 784709316 3364256 146953274 875481140 895034958 958880675 969320107 902541659 969422482 751055549 994800428 725233137 811504237 687699979 992934914 257630651 837182143 715191322 789355245 757195544 970050113 410985169 897287266 703957673 925613354 372771622 987642138 465348446 795233006 924463107 953538344 925571055 938773989 436259288 742265115 492774628 944751889 890682326 893471479 674347214 820454795 860531464 895406806 93593041 759116274 531819052 779964129 530207231 575310065 535644463 848661520 948727642 977295043 439819586 970190530 881621387 972106115 788709125 945529940 239365598 508828259 337129865 799613430 913619444 996693282 464267201 631723753 488678488 678513446 434278062 971371645 774592971 882182287 574875361 667726700 507593538 900290703 174695763 956295038 419986708 923008645 618951204 984060562 398973919 878357548 95121934 931435536 319819486 984924503 936038846 977753124 934785 616616366 827710588 933729469 847007235 935287251 78618783 798717799 491365994 955825697 47599543 584522020 766771871 790760639 484194497 976502235 446003462 931557254 730866049 876686910 621173506 757869636 215480450 495061151 236588479 491323576 107644744 593149001 773904931 803966796 123806249 594637787 820152264 988050071 849485168 913648108 147467848 666966978 979040575 983838656 552883408 865045184 528558456 808498805 668854046 785147462 473788992 503561608 478962779 942223627 594096401 621975465 674899624 821955198 231055071 925549226 409829760 684813271 125338794 862202617 569690656 933831044 379553283 656149695 373325261 815686459 61761103 297838551 617999438 765237031 523613806 619978339 602136921 810657860 196884187 716129785 371872765 648378849 854425276 888540362 519692840 630241379 441605639 565514958 205440109 868185484 658965825 736102845 429579061 573681941 277693629 365345589 297347692 590473016 224883980 904193765 963734691 998783682 792664289 935008766 833496384 977890735 54773989 353865846 678063787 708364499 121828685 641115640 301943326 889881139 946021281 950525563 356360395 949981755 880483722 911822931 360792640 951374903 188437917 896481840 163496831 350739545 654535448 776150654 745151195 935383379 976422298 979323124 788870372 833106781 454343905 953810484 252740058 322842656 290025495 645983272 242218409 984052413 992235156 995138819 185514190 636391430 352543098 453275970 730902351 853783271 258621513 902645798 174327233 451869880 331061954 477532201 177916275 925790722 736682871 912570121 509682646 806021705 645322659 741889453 932341496 956019985 56096662 426899118 133716995 687688729 881685260 916277808 598101525 989771864 446672101 652658705 980758322 991337298 198159027 811597607 24290908 694373161 709532013 903861640 921203462 954165139 425733298 629022478 907413425 937276528 125662475 706292621 478270807 833250240 660681746 827572583 827469527 903796069 147256275 445226460 405254419 873823959 25742112 534174748 572660095 809895278 285775717 765130509 660423843 827790933 202619601 789274780 592448852 813160443 365909244 440048187 597723903 777781846 573350601 708343744 645193756 762679186 57829554 259921548 355440180 854269673 848598715 890742038 727151417 827385619 94119662 910611672 716866918 786689509 37050750 183475793 596895091 675990540 952841207 990095681 843503182 846784140 342202973 468811617 495323798 628599379 919730142 919981089 838967349 840572626 324220111 647578509 452856009 940156035 611961337 966906465 446015341 448456366 545950383 673089911 833677042 937465288 263708166 456583203 498154896 638622692 151034796 964936250 143749507 856889247 148596263 711280186 216113421 654802812 825978812 924371998 705233740 721548787 497267406 665688651 854864514 861828090 566695424 878072370 472442002 894347554 629298663 810607091 741521536 838567583 869461744 925807904 230759657 692900511 870957462 985322340 991955669 994007748 1968990 558290317 2175258 963741920 817682606 963707697 709349534 864050403 914575101 917855362 141966278 841912481 842576701 943592356 965413441 974795848 800064314 885078893 194885492 877317635 196958887 852779287 457072257 475173364 632458646 738942180 194124689 828786987 364399136 908113502 516434923 540702595 365685367 367831362 26637372 675273162 133794651 327994133 268859528 600358069 55938222 458993614 619257372 843815725 229457699 587351512 44451791 217521441 51832578 578978099 465641277 848494928 231046504 252469969 613979560 647460636 440836195 712595676 555340086 684753468 353811957 663663504 646119673 770159581 900759500 933348477 844019927 943765740 398703226 624373975 659377659 956875214 919245806 990398352 388656418 579550075 254534256 348473557 479986320 925699529 107723196 439111199 893912521 966409293 677724098 994384531 757273869 856885201 333379804 832491324 295206919 719049627 980743018 985046282 508858005 638136083 341501081 573942198 636789 575729478 189268089 250721898 554705401 841972087 745350910 771359131 589508595 860257108 608188880 997313490 788027728 844731189 944989310 964936816 915086864 937135963 415700208 454555721 902413421 988373537 767632296 940665206 682529645 973158159 694043811 812318965 760237157 791995591 143989868 213314038 17767132 75374848 756907033 760915818 399189315 580380896 718169771 772744660 128055188 958513181 431356554 504081070 14295990 739745242 841157633 907477527 391362155 435506881 449518851 607718505 599134599 954565648 306333500 851896056 29659593 861759759 924478792 936021467 871688562 958547586 361856926 870336302 734186600 811864528 210447203 695433308 607221113 788019789 113980572 672112633 507245716 760328416 864556182 867865220 465306821 910721079 551925606 568181058 820840750 913770896 727294914 868992476 812137984 940540133 525808609 792413824 58767180 665407949 204330611 664625638 842793224 931580590 166542032 793593038 155587244 864052765 915013181 948921628 277467105 514467919 136807389 904530918 690652807 925816388 332111400 865259276 361706404 928625443 248550128 264308595 263645272 871765253 388538777 537715635 244507324 880858405 174858036 246643222 190594367 667022924 762613573 975387554 454817445 806724597 5078607 88697136 483070198 771707084 99700351 568221622 549575427 715501575 376535716 537434895 356665828 518658088 385981133 708626123 414879551 620608402 362179021 699049461 703686595 759402061 560206962 708193189 884615995 942395271 189442703 969882715 5974801 153630815 747797368 791695632 821302247 821660812 674883110 868133029 965836659 987517735 487316652 611709566 529104009 881603057 637183930 714529268 449497996 542279325 978806716 983298835 942903893 949040351 753688599 825517416 128864547 838999237 549316730 931777542 248711688 890875080 738217914 937606147 875186097 909737249 628394588 950493772 256542413 653366413 394037245 803229746 945579915 979642468 820360005 895806900 344909919 345154566 611561913 668904913 476310196 699918571 686263387 692338130 227325844 308876838 981494074 997301944 563846628 924515268 664807006 665756451 437740757 658525743 659422672 865869529 549045974 668156576 937816072 971585183 203814957 245007692 893598212 908443911 186506581 475158286 693943204 755145602 878080253 996539751 186328061 832388699 127705446 191136296 637514597 727294125 76277248 923585508 475275139 788806878 840065901 985770507 965880523 988142459 405604887 446067599 454443663 988735003 388417098 912725822 985836769 990272655 403513092 930217407 828612266 891931901 963335560 971451478 777727588 991965545 218165000 773387812 54708326 252957881 317047946 696820263 479997732 756866592 435531140 672341831 774328207 904253305 976675058 987480512 319352745 984701470 63469130 295461672 536728533 903712470 949447160 996280110 285220617 456687140 618081926 689244550 676755321 741020040 695716705 770523246 32064055 198672159 676753228 975794937 101968217 873314118 652400433 794359750 342480643 415315649 159607378 336846630 721789798 813881549 647810841 917243619 913049658 924766770 463312528 680512556 403624462 516601935 582140072 965232160 220176960 320665258 249039912 480318212 651744934 784651076 266434922 970718789 626879524 922381786 726685510 827255023 390761809 956453602 92792333 543683987 173865311 359082140 478711518 669578650 174246763 506020894 943859575 968931378 967066837 968331308 901579333 964242524 982907487 993650034 181377598 561759197 510598698 975313409 789263730 938397859 505069431 529216113 2348413 629961185 311247486 470603328 82328320 672287404 698330875 913033225 256059803 406465538 462731752 523871088 918277562 971887029 851222968 969012344 721315272 833640619 465432927 489542769 46483097 792767400 49093547 626680581 390330507 920350819 990353188 995810564 119625288 832780639 203641567 477399835 137183925 418532144 99544734 544785999 119784119 784503990 621075557 947759870 26573717 220030228 251870231 912117066 162988220 611918687 524046272 984655952 329577934 420924728 789384434 963290833 198124939 337098874 287926165 467138790 455055649 501975320 657658987 984120539 279002580 940105643 832630863 967053664 218651874 917156028 65918504 801313706 429711168 527870861 374881122 963978862 412046451 435782977 189887303 518974708 712338652 721535250 696270476 946972860 1458631 509631465 717856457 781309626 128378741 745158220 256427947 640611047 247220113 731836858 975909510 979750704 825925359 887479115 471039895 838744590 643852544 683434820 233176871 252331773 903473839 997392663 227811187 760434777 908737485 916562837 256320387 584870084 452072519 838572155 485300108 970488523 726090616 968052853 712743946 717048973 643330278 763308168 996730172 999090232 398775343 440050317 480442232 496644681 269288224 998495267 632659763 774917664 874056879 982724869 878684468 898341920 392075615 841639580 303985435 602708966 190304931 403893309 843659789 858193589 515394490 617083059 633703706 664020335 86942063 653111183 409171129 546920572 128680169 663914424 695388209 873695373 251333317 902509469 217506686 770875269 942980411 948814769 866600696 899252164 855992496 967537693 270893960 907902841 796072400 962317450 654033020 869814017 235518430 383993203 400848878 857360961 210906960 688033298 345017662 818944358 577019133 704067511 291552291 726726724 9136318 118122428 338182319 933474397 584831075 822332547 575046888 650863112 238511739 874113947 748824327 824339582 984138412 987174745 314430798 682174787 146548993 703812806 579455570 966115908 923657918 934703351 136051594 518347605 790896393 796317035 107795323 246631863 875401908 913990025 185849204 572917632 518424634 949686180 109974344 344768073 995690823 999093910 868812854 929539424 11099969 513495419 112930412 115094650 294726725 521535249 152575073 494594939 787978281 915365458 909801118 938489250 393941902 450337037 593759463 719864579 117900542 551575878 865264864 910466254 847434329 934854590 209008728 619808556 523282667 629127436 4389568 882907438 359569812 408438679 659247958 927031979 4398372 400759030 412531247 583422919 832177077 991153295 949243169 986072430 331041979 671362436 483076412 884207898 394106198 533330806 268794332 862013472 269577462 504229307 337792973 503000573 569260456 768365551 724384034 807101063 190575964 619898762 277296952 505222477 345028797 831848656 674075470 945086102 918540780 944548115 575853177 824921959 783695721 878638096 310752844 577858824 520253605 530122167 81717640 360004107 944620961 954625888 674327184 776278936 777480615 804152505 85980596 937429727 759304650 846283873 816367948 866986192 801231818 813682137 876978907 990474773 516489799 844950288 239961131 290517940 819461685 921224151 940443615 967878397 134310125 889774750 450970719 492985545 484058250 714955937 404127645 840361927 969072831 973100477 967457145 970537039 452455774 548546791 194139534 522525591 834824736 857032449 501617462 912519989 107247073 488458276 689763411 919204901 531748766 888583876 128081314 435610378 764326985 919810515 299070028 351444187 74900896 497865269 100004541 374321022 519997941 831237854 522604585 658128834 161330959 301491346 658196267 877886750 712126192 961058789 44471124 333429466 72774866 412040076 218879074 637025214 601138287 685185051 396284336 704119986 762663683 820931293 360734518 849703385 559933818 701365228 268566255 749482285 194166056 309666860 326682875 493410499 972488817 991875626 364415545 922141221 889846626 977976549 681571379 695590961 116801058 921555425 472452870 670234670 825576568 982020202 99903933 929828964 953111712 983274235 441156360 668576739 606311631 951478598 768674883 807992752 723563666 726507704 775962265 986128586 511071252 584513900 688213355 688679647 998491768 998760458 189017992 927875776 336821448 767742682 217567177 524047490 392039623 858673080 748418591 865037979 751542216 878818410 566019522 612906070 280524124 685480657 373477464 449399327 120304803 206909300 783113990 870296393 370668173 777703812 832873061 958956657 60712979 609450796 459407153 793977130 451567513 664907534 69753842 702238581 890246425 911454667 689025085 902982959 666867090 886370345 421098623 604445849 930737422 976356817 895871330 908807100 623705363 884009489 314488760 433377881 721938054 974401942 301025236 400536286 992581469 994734458 499474728 610618864 720523099 945579105 633325701 958170252 330926372 994506829 790930539 968629679 140479858 754669259 423498378 914757332 566165961 773610513 813850133 859648718 573619198 782254810 689925888 975049463 146487093 651086392 119401428 783427801 97014884 664049894 321096610 582962700 750926177 878176964 238961696 424124407 48199234 519488322 428971803 969487271 727652655 913860565 783183729 809619557 988841139 997864429 323069404 407192194 252188314 422988322 230146545 680223958 581873626 860945988 507841679 799130229 435432533 563773900 704498953 738619473 819511902 949426752 317999751 538039074 740838735 932279715 356549560 902692426 740168114 953601065 533333431 860642024 381131835 896781587 942700800 972109319 916902393 975480756 684224856 913162358 91613395 317625779 932811231 946146683 160740131 195168922 584838330 764120886 509634131 809416255 188404594 789274421 902059433 943900498 43692187 550415493 774576253 937304693 354176990 555517850 481226034 718661705 470450077 926030295 547298452 650449528 489611197 958074170 852327165 960565119 639621973 761826688 994717481 996363888 535635777 923691305 414081176 512359236 305961366 561945533 425831374 969509938 382980099 685303408 839745318 991510949 541700375 734970977 713445445 873675203 645983822 757371875 937210058 957621361 209517694 905830693 218685760 952278772 97119411 421929856 336671430 675591883 857406089 864514905 271083623 574044420 861521437 893660105 688369298 764443015 881703933 889082070 443280380 720478618 454855982 555326750 276903319 810958694 519110137 782540724 142653972 555966057 821106628 877933185 26819770 545592534 677992182 719232279 707243398 983008870 824108921 848001393 326542149 565003328 72563735 579360308 463204601 861994401 388905946 949487246 980123669 990972205 259290720 790646644 699148841 842859774 971344841 981233606 922629816 930973202 735094997 908257278 922104413 971876066 252639670 352789526 156468288 203599374 471678926 883306954 62951769 119099181 541914067 697547229 640332391 773061291 351513174 901932911 833641930 940471526 581977049 801632004 309453962 552799697 931604941 956014901 607362958 776975952 996866452 998288136 149284254 747187850 96624781 115419819 123979017 996272079 657273764 677932838 824271532 840273749 52273269 693135358 672902283 927499069 916415569 967811721 733704110 829101731 101448873 575004996 850388133 880972904 23439326 859832294 547596409 886232248 245235724 905239253 725508310 990157675 178399527 200211447 649454032 771665063 408248517 854647694 378238634 655628107 901305119 935842631 676112111 831267410 840722384 924226119 569581622 767641331 296856727 610085852 670146775 874951512 401318854 707381126 801051391 979280061 595746141 919488339 976789003 994179989 198974812 439418639 622502595 933800681 472348762 710843457 613136477 953613722 866314704 964771421 174819907 860826727 739940673 938397221 221098784 834111500 787799850 829381941 484944859 866690918 774222347 946171791 177149571 675114159 493666071 680947283 489706156 594682325 320958405 927923882 280786561 982699442 686254195 734999867 772317585 831127893 877077208 958217889 162162316 739154444 236868029 669076707 367896908 964009808 644151105 679647940 391505596 863225742 656080457 879073085 340964600 609069804 306622750 883365710 990378794 991982410 902011169 950737587 131709900 519026107 754248548 839186774 693889951 763562161 937181720 942842957 434783839 980756032 709370961 899312993 375901523 536027546 750242904 940195853 253327610 625846184 110823204 802019735 96404250 665267855 70167685 909432881 300949017 995675740 747259298 835807520 318642919 420353145 332992554 975183094 867989343 941861556 778885211 857811118 875323466 880911891 661718100 923191629 234499381 897029482 933647034 989911838 169206900 505908897 4648114 27765171 136897582 313697897 713367766 908219988 172450272 640600254 75902959 677719199 443852290 644672379 838731173 872424297 302894964 815459784 190455988 728420367 953764747 994935318 43477332 133925236 815987993 864833250 278816685 304285894 996442675 996846497 55042711 78892512 516501013 957944503 471571405 853086395 410144069 455864275 683163986 974024823 853016661 858625556 130944645 296780296 393513724 857300085 325320480 412858351 444654852 612715140 375455333 452597998 149463884 578485878 254200992 870786004 110642402 915169811 665182841 781259461 410181632 801469695 521222841 838993014 763239066 890560114 553540829 663710451 880690150 923032092 360659508 977966018 948324200 958271647 987957086 996995014 684751418 721762064 850076091 879157499 975873959 993368335 107200760 670632596 673351950 957582639 549745386 675426415 67595862 467527394 867449447 986685354 330274602 381269321 544101285 726727949 877495491 878324794 783628494 943865141 981247734 989164911 442448004 951658999 558747691 985106339 501462370 542574719 976780892 978580023 59822524 463062022 581944177 688106010 369799341 808174251 509522061 645984281 468567206 950937091 108400868 611864590 5757939 842890779 754427185 828944099 701904159 950146618 297156081 736952863 690334443 957802465 978891200 993965786 747623151 977815260 732945597 880231845 195459994 673346205 899839041 911457905 271777385 867291893 780330429 963067099 591441170 729995922 588160398 818390267 434648930 727627332 978851268 990357993 465711000 814706203 921014851 969769985 124712757 822697672 743473084 976942557 78342151 901257300 85599445 567864071 837129498 951263773 374815957 835941039 430333510 604893617 742947769 924829381 637647924 880266654 543931755 829366556 941568359 943310262 403954430 824811557 390712826 802906907 750409380 840786157 470735528 969858640 90266079 674616596 516397642 535303597 932673893 961328917 381673445 696883229 367356163 965943263 119817562 620208099 334856823 532272601 576925507 603696831 751199498 809297109 8344387 607437858 774819934 813868690 442785872 682973180 345729748 876323480 253344780 655096070 213525141 963029790 204622436 547162905 975370394 980967091 270092875 975972633 824788426 848016867 817895090 976052591 168085880 736904216 94209835 938484138 22737943 49963600 390416104 750491585 441476825 820379236 641342941 861413116 105351809 505133318 704631670 831133971 732458177 808734844 494269924 971299134 307833370 972480413 542718157 665419633 840888492 902275470 316905773 673882424 497746737 643650695 898948728 947114494 751400883 761768947 555383535 998510804 629241210 752552201 594569787 990025149 283022702 773095288 67746693 710714303 511766124 557427189 729424594 927579694 115739600 677316591 424339109 531274721 847441005 963911669 983932306 997341557 213918524 766294689 111185367 573821158 18595746 793518068 494009056 546265609 436117687 984361564 563365259 832152665 624873602 747781081 543560925 866033015 32508185 104607379 433788216 857046303 664542371 910540004 23738769 618327997 667375048 995159259 583882577 726569955 9465124 350817569 930499045 967203853 359969055 567847715 673692280 771970511 500905230 995517138 28946494 306037583 554895281 803413626 500694526 633676410 719068334 767653250 215047606 360818129 242258538 966013947 940689544 953962532 153661534 191839215 682349355 991751380 305957444 545634962 790921972 938866448 442497756 773134797 397957964 420067746 171928969 383500842 767252038 815440075 271474008 672278960 954328514 981013212 399099689 612347106 720970934 941247244 650632971 800022787 317879579 923362615 51558472 205031074 15543371 128344076 649046893 900498841 135538527 669055513 695394217 747755393 107141361 668365742 493544735 631841167 601367277 801245740 88053149 261147490 41572152 756552847 563020312 699329476 985918718 990728857 822315797 846716470 200913720 601924426 526934264 932655113 49726647 240237916 932608669 950369698 303305435 970040785 345740750 869133382 880928077 959848894 883066017 906223819 232982078 690208185 472595275 987654062 745191443 887510671 764076909 901514316 424429920 510884399 939099484 989354210 116996728 469493541 542042915 724311165 14513581 67078030 400704442 973329955 915419664 921775847 776770225 915747910 429672898 848714335 694848751 767350779 873591852 943443674 434352089 621735919 344712372 602780124 54566254 431903297 667228478 949708444 931824754 993964872 54944050 480497892 992828127 993878574 392889485 509185127 184558223 362437234 214670984 641118457 844904712 982937579 91757409 119284289 87410866 594552584 179335470 764498998 691703143 983506052 590680687 968739095 117866009 307878983 480461606 887247820 821220329 988421030 222200459 577208595 352925065 816757904 270230722 679708820 8721049 21382245 175058326 406258015 566313292 934400921 289899085 459688784 473711518 516519938 671820352 816937240 674927106 733756223 893188398 980855724 758427176 789932750 529876458 719481324 482096011 741292370 675020318 898017455 959858310 986714632 830403945 907619122 529041706 645413486 393219753 981973750 556199592 581128081 774496245 971626242 719504066 976108420 164743199 526845363 849496471 988168608 402696078 959231121 131658165 299736802 735548660 740384475 357582434 669696315 917113451 946446327 188110475 193941364 912350813 933875969 833830387 896366675 553608327 888358380 252754233 378021159 164648745 846478954 849127694 941691893 832073012 992944855 782207633 873539335 943813934 997832058 518438421 595893791 708075376 818073793 566762178 986962259 323075815 611545636 698976074 932822806 161249644 873502196 565237214 989937945 105915454 738391911 500393854 933218094 581335542 613505279 446502333 552899206 728613184 886399363 463949399 465922226 746774469 938583419 797035373 893790089 80874786 894456800 494030721 902233832 907274855 957988232 458495722 508427920 260980451 827912876 274873372 294733247 577160964 878727444 713811337 884668966 492947339 714001858 899282278 911096454 943874447 960494084 772638832 782676575 173879587 725939701 17745519 426658413 688380765 820273305 941459598 992876910 54056162 943439500 264008816 691768508 575912826 747985876 784231082 984917517 360240120 891344217 810970218 842730304 63214408 161309397 103195630 357242364 198292527 491474315 863686219 881288240 608145579 782765891 472483079 743605454 249445736 646709393 703167926 945564143 866260153 907682138 926765187 946402807 304115059 570127256 481771533 723118446 521874768 735624224 647351039 708875944 867767083 968179550 354763332 789896570 787590704 805223723 154801705 547924593 513120529 573414820 234397059 896509448 355658004 364706411 369383460 419368468 402479919 525724258 997107805 998923974 2318751 696555301 904817472 997847821 156922112 470109197 620054189 642493162 862760701 994184783 383872786 515462637 475264244 946337444 271188164 334342392 382035154 643655964 630542518 771496501 132797726 510804400 972265475 982035713 259630516 714551135 577102470 777764297 501401892 955442746 542551449 778116171 563708100 861083720 425275792 802167591 515050541 879095716 870320102 870800265 815107528 861887533 699898395 840100833 961191148 977214514 245329157 991134238 939646086 958853909 250431324 557654092 776153123 830961126 798308006 898076678 244214173 372420101 844715758 853505511 903812591 981391810 68353000 139504503 510185508 525997425 647678250 728454550 529004808 932773982 78403676 695674433 907604232 911626818 27683 820683949 581244540 939254311 163633746 927870308 368109709 918088364 773474261 968824754 289307890 737618516 751608702 959341437 680184574 928158876 902850960 983041328 9510264 868696923 697892840 961835422 877513453 982807898 692994206 736045925 476431165 933970578 213281974 416218936 252859474 604097028 996892543 997318824 405841210 832641121 79568467 153821943 602335626 719410664 139648482 495943789 317102632 991003279 120061427 392036982 401949970 919526519 138967908 276139920 647346886 688899962 662744827 950684146 618621351 706237541 86122587 873310812 539065810 974661878 153810644 875306611 417576894 920664517 957468920 964501092 903786820 927887957 937811313 997110196 841145928 885852474 318742086 683057948 974972278 980532016 360694565 631284983 671889417 749585070 901365497 996459158 618364122 695931765 661440300 827335586 760808940 943842411 945124481 961736031 224098032 661899828 158847081 510342264 868734201 947492222 425721457 770780579 676661269 873845141 472844 146947181 695378598 980859649 448831446 526967287 857937944 963760079 287161733 487083003 567524544 686977718 436431488 713816589 446676265 472533058 579038980 791807715 470841351 698438517 820564665 877514885 232920639 881822110 859930766 934224510 195230675 765984194 230855187 622107789 700690905 834775162 622400932 748873203 257065798 896908761 285442012 592118809 267340049 952954532 777096862 802771594 197354674 478395263 52892439 752553095 86512395 870949882 716706415 887356353 897138852 934190121 173863776 650339198 195243496 738821078 909187325 982283392 102812546 992966069 448265269 627843394 51633055 759341926 459279560 680535312 989026005 993986877 115664185 363836200 77221419 746786421 341606630 657154955 189731712 227857553 941743713 988853216 940154576 954806625 830985913 905573378 154319267 960139591 193703301 276051348 580782955 673500915 165387530 235324271 61415141 147692937 373626302 782340409 833734027 876069316 744369165 746714606 198030124 265497908 60039164 452639950 710457365 870448489 35854971 436443395 62522625 782309847 714568036 933131012 21600446 586526883 819313418 955390268 595234606 758412105 872643245 885644952 164476567 759410742 140837693 925950393 276081658 606163486 763546028 883697890 142542811 561526251 635644105 876746231 334872921 441660184 827108874 924821643 424096059 478328186 565997846 923185741 985874379 987220766 890525266 980152445 407171097 605318479 91214647 188657877 489288385 549709388 71460398 314101129 666922295 875535916 870713608 988342679 479930632 760646144 940449773 955497123 904893539 934858787 571006554 973886762 561111801 651042691 116095565 398443148 80435021 753529828 937990391 963386615 264804577 705120922 176583306 352555375 923090906 963267571 453920427 629309850 27452290 612223111 943156477 985018857 547698935 856262402 970513506 981846474 88510987 486094049 793679051 921260583 486130024 699754804 724372175 968234466 358526230 394314600 792774822 910575422 884642909 923601250 977521494 981385363 254285404 741515152 877625234 947571520 25509407 956325279 872064874 951615938 148247320 397801341 305536701 583942771 326828598 991243587 126497544 576698821 354532719 818732030 360102472 431721186 183060832 393605801 900984423 942326680 413949912 643292834 620946875 990338516 181493614 832992818 738104898 741351448 127161781 258690568 564378622 647009390 683391587 863377160 513285640 995796225 799468531 948626748 71284834 549652534 885483903 991678500 103462679 641373152 921752641 950656587 565140590 687927661 312955865 343825177 190330043 528999181 658412950 724290436 108357465 613236763 897045956 992979088 110931085 759896260 508417979 600331552 109076384 906117474 146414552 661975466 935160542 960493711 168106106 861663419 432821431 586254780 807547153 827974774 386893504 476831056 279282385 902060434 597744041 914070534 510886327 770897788 235482497 559369580 386338028 772879144 548751539 681743860 841962939 918080551 303376115 656217783 881022407 976983944 504416144 947754488 373950528 825659792 907606940 909642434 758848577 838443796 331168740 416893557 122977728 952014179 714499625 961579053 221967597 286898216 158372697 501561049 190885499 840834128 261899924 657440114 918476385 978754001 5354247 82562463 686029999 950072274 125138278 440696184 699958434 824992033 450585392 473169106 197072150 836292302 290315619 621088798 385801674 807043525 247935347 326591362 373382472 400722808 836720209 915886470 64531185 327167554 224381882 803719494 985537949 991125182 822078629 992501052 794055815 881884384 133771687 632843058 455901675 650199368 215910819 669875307 733078621 769604403 906795577 966791385 248413805 750801970 204492170 417961628 260767747 435126343 794276600 906837026 319315627 597119387 398370900 456433977 786060702 859019924 311753992 382123622 588041945 921585478 881461676 945955815 487751369 549061903 503512367 995495257 236864541 850015799 76220274 785827332 474562623 868116654 566754157 670169407 249338329 478191560 93007434 326616911 863706360 949601674 954238357 972758877 519935021 911865638 401163948 421791444 270118228 548490663 657795228 707519186 11359680 448940913 951057315 987331342 788136352 809293574 544545496 583041716 507822037 583682211 15006752 646718119 425616525 642227944 574069677 626280227 776281281 984622468 40525013 177597754 649415277 989471716 499003253 802387041 322966274 728565278 712863339 859158454 620132312 882170698 24779170 223573017 245539673 535924776 845152708 973989082 820332571 977465103 92937291 487744188 296760777 524169823 581506172 588527270 24635763 836343948 917111912 960899517 733631283 945855790 981082972 989643790 913306012 938826454 226354310 696302141 972464604 975884882 300629721 327221430 958432449 978025469 399034176 655580473 95037133 600516316 589232546 707495363 980618329 982103061 507849520 703789265 155022716 638917706 554583828 827333363 775548649 972415303 536849156 891691763 605124089 606725178 310116646 336376776 119958655 380628146 634751435 828555305 98705030 260343194 327525953 876634958 93987833 865792286 530048087 834489568 750774407 952508040 181880561 226447490 793107400 841247327 95318947 697246944 772602053 921333881 931887874 934702394 317595351 627577608 515236198 894693530 471731221 970403112 348673087 386309654 69325228 964109174 615195572 766567150 243424936 711831621 84201103 551935933 698906461 731845390 188444659 272634167 571093129 943213623 276311178 490945653 535768108 546857575 275283952 953657171 96499644 226891006 855315287 966468409 449968205 645737305 706853537 726119202 253292101 463440838 895642993 946056598 460208444 810326690 707788482 969032432 394396696 729973591 230820390 473147353 475208937 905254184 116460144 271326069 64290119 284974768 302388056 632221411 928575301 961993897 738513654 749411413 173728330 468452985 995546433 996611518 457229928 515728675 823063395 980082737 744922853 887301515 774540496 842583931 180594754 617361391 91059577 364943774 538950695 655472287 417473391 909219935 179502112 431543451 929994496 931554082 682900521 731649273 458893427 464343720 300066461 637921690 472644141 549109574 431456061 715701380 547520414 865588327 683835539 862027126 358263698 820827647 852787526 973213846 838128851 843481474 469614175 500695432 709149182 724210535 166772242 408347467 469087690 864750237 98351740 151718462 69993347 261466750 718741622 768837142 534067467 540091154 609470184 801623563 822773772 997742141 758215343 878794459 148856934 461363221 697935544 804797070 414005522 788476075 886840008 963056114 556010672 767184353 694951753 827500168 261704084 517246793 372194448 426422437 618865039 653994550 409496784 926318810 811120095 903400125 186897698 982190131 520471124 687560553 67355992 458148137 152809381 719663691 205107413 516460502 854377184 861085144 650612239 887288474 422885310 634355038 433577676 616768253 985706314 995759576 722105878 734707476 273615872 969320234 470225768 863989303 466992013 876650579 704735366 874621313 423330416 640241732 193353623 844854464 736755809 890361991 86794264 961189440 931437953 987272380 409181863 573675695 852474234 914200356 31439044 980807301 215564201 711993012 807836067 992710589 356359804 623332266 128488011 464206717 617741814 950720539 230131868 311583527 606430692 735981838 265727179 787452299 201944397 502308899 447200869 625571295 213704056 354053490 202695492 794243911 953316340 999269047 324431833 736445173 76354113 341683367 340532800 860483461 50556880 823059828 750601374 846736604 741400511 993401512 319720980 625422569 597173921 606946510 157803566 605323605 454453761 872834311 19820745 81163612 751315410 879359284 166004421 628910792 638155376 958335850 894312713 955419620 749429023 855818676 598030585 960700492 138380269 429836600 46916276 472285825 649109675 850429001 741600697 807299183 500024362 605352623 417041129 574038425 175925189 900278674 574492667 895082654 330296486 360047882 118530657 401336713 694345871 840587029 408487909 539716205 680344559 689327832 732112065 816249481 610061382 648866978 657274363 718252051 392919570 594001520 678571559 830097348 932687658 940826827 44067899 680037169 784330981 933563415 28657687 782475508 874170008 962933419 415428977 508348511 866857574 961394873 161846417 525348690 200510454 452757185 462046426 873665639 176071823 959766826 602262631 660325692 113117258 338105492 34155020 271542183 328882412 483564466 15806264 216942021 519591316 711583877 323881438 429514043 80251711 163263242 577259036 672777318 61670880 580272406 19433010 593711712 233045770 555176486 377739438 522553922 129754830 632043264 765516406 878686779 801789754 914211579 1571510 983906543 680836698 846697992 64695969 359219146 415728657 425717070 363895268 919129524 432507786 619440093 866878954 939662176 764277838 767199778 568545752 708363485 623203853 861683716 999263926 999306989 854303775 917568666 104599487 733658157 516361155 599673665 333640343 812713874 966730820 970558866 177410801 792845566 746087732 839829736 893911326 912430492 627071196 676113770 711550725 841721524 978779709 996593196 929727692 951951970 833717656 905256163 143957529 176174920 261305145 272243540 35850544 962250453 726731548 920076751 541206384 690051940 450315363 806427972 643560786 680246406 701504692 920648693 912909755 984137837 39251256 293242421 221847396 222458300 780444269 841271805 127740875 882558775 442328499 549484563 318562292 438775565 433181115 991420435 39215271 974273052 162371914 933361770 440843507 712682798 498862883 779912613 708019813 803511503 756288543 803612637 944538029 975706728 879335241 938584295 33180332 746578782 937725638 942835771 705141466 715308102 642951412 866485319 951643645 973712803 985779427 991375184 685643647 809972957 63461987 884737203 796494452 913937422 226912501 449107954 722414723 966104318 649911546 902039751 872657141 878557105 9951051 331345647 554384673 945835118 318768733 578714204 439587840 486146604 267229592 885894994 366512237 536205408 72046738 453819359 598682219 855876082 327907150 708282910 142054544 314249666 888473527 956631697 47645047 250842519 702386730 889702180 166755040 447983240 783559393 992551536 75192716 615989593 606901982 920373817 361206307 780214735 745496326 798352194 432331057 984792859 661003625 681704341 478967844 985659348 716365007 902590181 229190595 474923865 781559667 782264243 268007390 585323620 206217174 274082405 437942108 962415140 882505852 899888801 398053075 863411877 813726513 869818542 369675059 399201619 808785679 870161153 722666713 771598115 289238154 469269931 547579632 709520857 614038602 913408184 988810946 988813777 64138411 631501634 165337932 437580257 769193885 814645774 666038925 818816281 516228726 872734950 941071562 969068840 463459989 948666895 315497328 775277093 699072360 837968116 750363606 938856869 909236526 986876756 9696195 169654536 669107390 925063170 198592479 589575506 846327381 911454613 533614558 858102110 686590859 795034820 434268652 906886403 722331037 895275093 282363756 855994225 657560717 997121624 809349860 902630500 671869276 691037888 100644425 640148612 561617395 633121504 319133337 663593346 403037429 461602016 412165332 741173617 796806136 923087782 116371778 788382575 704343639 987097577 687383562 794125132 523111919 552745219 21004754 805081555 95340102 835096868 576331325 987979901 788461723 966157429 240607964 604696674 653956084 837187546 886780638 912391191 842536706 963469594 367006315 667953982 58048191 936874848 407259930 528180965 224861239 874404473 766823483 857679631 832140327 839627908 775130748 775191127 53178054 411248330 15534421 422442667 668995017 793377474 422600536 544852370 70335309 73550398 717006584 719882191 371244308 441922524 630689030 908635582 168810340 244227429 494526927 949301225 555940190 764992578 620201964 862261187 666701811 748248861 893217352 939411969 381289275 836403954 9207093 889719833 399137122 818354906 973490739 986105330 556605259 948334868 239827359 533641747 382375413 392068740 563733941 925248190 35874858 736586819 77175755 717784800 888512331 891945151 788337093 957234634 493664323 900916859 480399080 596805539 127253397 148171984 319888473 514508857 696044787 856728639 771490720 845556864 938618121 978580058 843853087 855360852 906095123 981670088 754600812 819009610 98640244 481300573 267755208 912628198 100710627 980131894 239845761 256221484 729827117 793084989 534939089 561698014 249520785 707824951 455639714 670768215 869152099 955365580 21585023 115230614 194467490 893381470 654806969 834939865 638676317 720228313 665104125 854470320 165655001 415310857 768610949 872861054 495414392 848581348 944568642 993907920 142143105 674734560 723872458 848487092 232701027 910286985 503121604 884680171 245918316 946848033 340411594 369738370 467171878 653994385 987898722 994606878 412523597 819226385 491175478 913820691 608363703 988422698 939903453 994794612 744620588 963878584 837086909 996393133 449799665 885346052 101420944 241735931 368726005 987873907 702641020 979005329 76382794 766655361 417994803 426535555 562513613 960442726 872050078 930096968 247538986 630459943 699679616 844736437 153480672 716717869 615880411 852218559 170000400 341288063 163806450 669254866 615785101 980083273 373271550 880500434 518074975 839519324 633512959 802234613 821546183 876863175 685723714 708558746 717010805 835480976 297908071 404068644 979246448 991884150 99749547 708304473 927101451 943282912 585803713 638598219 872972461 943747422 164711791 253358011 960515590 972519462 520085085 642345400 364541008 874374806 765388618 796075094 481410721 840007664 282958292 318210048 375426250 860036660 996110718 998814565 481932774 617161785 594787004 768211630 925960183 940465717 133320695 900737816 717695512 800679983 155138588 280089607 342799800 612208410 810711086 968462271 66652903 440041730 675178828 866507148 710876630 875413445 89383234 929300983 953622679 985643410 619122977 935312892 941459397 942463832 516359357 961340637 473309270 922875267 91627793 481697894 812978808 986278899 635305304 784177643 806656747 878010633 734020219 792645532 141025253 576534654 43382764 845703902 958616836 989769292 581302211 605722653 763678945 787593934 549288395 997120399 863219718 942205077 420138914 896119283 808667420 916045997 282200370 520264227 619840651 839935679 874457707 963389130 417612169 956644208 876457963 893136463 644449615 923181119 265051787 713501233 820403498 912827628 563431988 929054954 465912985 889847248 410855830 561470854 337619805 453785116 553942458 808155869 716622450 746960483 367680244 491015892 819332787 864698492 845101026 873237184 183271494 235450407 426436403 980012513 319531998 597119299 348578672 580573717 543818938 583144437 321783111 486989530 54128969 860282235 551120504 722991434 331136534 786541091 803472717 881963287 505876145 925126995 230695664 649626330 635909488 954642338 518340469 555187515 209654665 313256809 448852829 943837386 766424296 969368438 269083223 934613230 724784008 767744842 714605956 747842076 350377890 934120828 734621332 906844968 921537458 984993250 216860914 746225794 313670121 704518754 26660880 425741019 2020304 876612344 2791825 5410736 510803854 838516703 986368247 992510710 694573250 826146778 883361919 976722308 536140402 805749126 791253482 853034101 248495068 389373653 952601313 967024740 392863361 667938509 372548899 892964991 368032697 774173493 139867303 184248809 876912470 879390177 370972692 578827867 670378795 936063007 843200834 985381545 543942220 781158862 81804465 685246091 257190634 579223987 875402035 920954222 107029905 191265051 156341990 697634128 28022475 788543376 86436282 726575896 911973700 970941939 920048692 940770164 354821677 779142270 850587764 875507129 171727749 726494571 31001249 315308560 187386300 437701194 29683047 883513949 497758648 993425370 639344898 912118246 802624343 857407600 118854883 719144669 629951808 742669160 569790280 967108047 39133070 238794954 757154305 763447770 288137345 468576704 347946130 963162624 833912905 954278645 340384626 524743079 476402652 536189654 303652512 331579671 633686263 702688659 175675812 862796774 425265683 428202550 774481210 923230995 549497733 626399705 779692886 780994758 608981032 783788272 853796141 884408437 41361919 142560186 278091315 749671331 676732931 695367128 148138753 407399382 480803310 562228122 764444280 935019102 740022967 869141375 568073352 736725531 40779474 857408296 148205583 235456182 872336459 928926178 904535440 950371850 5740467 296205706 783174226 907901970 705254002 720523495 745395836 872237592 578800400 894747445 641299563 858727938 643033191 650387476 709188368 746992096 680762305 787543715 7615540 989819374 975763566 990542035 133368868 344576176 15120821 295655853 300080938 748617931 903332002 913729213 590318118 703649693 261716546 937235184 466195038 563126584 165124989 356664617 105493276 692415240 513619101 854899832 786881146 944979030 855675565 925234121 949433606 950472958 975536105 995779475 665190392 807470985 32677296 404086848 803046441 907559552 379196859 609740745 200185410 289119221 527278279 642266711 196329823 483528531 926859885 973960912 931235023 944494735 603461355 979603314 377643080 523002363 269243914 416177090 165899635 331367784 166509678 792208207 195424824 412686780 992508393 997211209 604434105 621004471 253685963 542687025 986737833 993046116 668468526 966289748 469369568 601037553 803091723 821857947 349061344 646290914 432207881 480421949 184189143 385316008 898439363 906895512 686060462 689720152 313284155 767901569 477199023 907169731 249268476 320849004 958256839 998404442 761640636 813192581 973010500 974764193 16989835 955969884 340003705 753759054 502369584 558321449 969846071 989027819 982562711 992299926 970989529 973450240 199040448 438291248 1886940 130669818 152169216 954449436 292606870 401192666 559387085 743874458 214895903 841981410 686788228 717028212 374889938 482790972 279027238 568993785 245780815 733320651 868212514 925825677 360311005 922713188 226812874 686283766 657955252 832204616 621501339 922303243 861111226 885233029 872696827 948997450 309591242 390127165 262515269 641880469 971484271 981441289 89283820 217162296 499558347 969365217 887055441 906819343 775764794 835573834 621406397 648139403 420002228 806825061 122295342 708500994 905971960 906850497 967256759 985270402 286599557 559342476 613431225 927206151 213698178 832259830 582689617 606307480 570268762 959258283 426722775 637671067 588283362 970945874 974120537 990770410 447857592 478839191 748807034 989851689 955680876 961756126 558249611 848217198 807160458 982943139 335398179 628695638 508319002 895625071 547399776 747736734 240831986 802814754 612929297 712218110 259219528 808526476 401057679 547951805 790584030 855081633 122925399 376881214 287984033 758796086 932000657 962078729 39581351 660476220 77194115 191833376 338276597 948734539 987979328 994644555 139089360 944874086 153017753 167670205 403406557 441959265 650550019 899830000 785772753 894158627 130272288 357130693 430955142 568755715 337565440 527979220 195130366 910812158 292148788 984382603 353219688 537088919 570401428 749700858 507653587 510980502 135862541 862088177 449619788 562386767 829317212 838531898 380073201 490594982 361645091 839913284 81978493 594787044 493727447 623370236 333506694 681376071 672932714 943761175 352857381 915782217 4324188 161687547 859006085 973936818 470120574 951916965 411856868 702467669 900538989 943533743 608966388 973553808 721227410 835974674 231718219 597230747 715707535 845912209 586516445 669574507 294421202 730986526 241419253 459505239 796338222 816912324 266264576 313035398 176076948 332135040 186189892 589623345 239052998 647395356 797384197 931121388 933163606 964075542 180731813 961426347 516228350 846275533 525055670 744462746 542969373 814010141 291246520 316268960 716383634 878325784 433296051 734448701 757259143 975066050 638093010 960127807 402926647 539283108 276676335 762330478 270639287 516491012 408244987 988858346 980175289 992473411 567399076 638536538 134676321 897666921 31553418 366445828 777573471 800864823 659211350 849013636 575897015 627183708 397570686 673546640 112551570 305511935 234904362 667460290 979965073 990882131 258716652 706205626 853777210 970293351 564700160 619405164 286248902 926855274 76462554 666556807 576797713 933931961 980968913 987640141 188500691 644284027 100757047 423419381 233342648 942810843 99312488 317650092 283003691 910821187 122076124 140326953 910085211 953355913 666083136 996028924 545483712 701247165 44762393 869128452 652909913 928795652 9674483 756386174 995694519 996287076 233963588 432280320 525685230 607837375 728709796 772340642 633795435 786232534 722075835 817559567 401329274 603159318 348436827 760393143 911907316 967587035 460294701 824438120 987239284 987590435 647292133 756392628 477293866 698860654 549990117 787381135 348020863 474276629 176671384 309847522 68421415 112924955 448613005 705239273 212271728 424582052 892293801 909020019 859788266 873443400 490722944 845017264 735732494 847781748 874248595 979925477 828552225 934170912 948459496 970460566 455527636 490380609 562144715 667087198 334285587 532093697 328477823 697258154 891907782 983597154 970365633 993569163 462318631 908866090 475378948 724909208 249092500 845277851 979214211 998650409 836799130 854208255 603931739 944157680 433757190 620034799 278668509 418976445 249939221 904782952 331387376 977405383 238801949 389104501 441353696 998776383 32643813 185917648 591087184 917185939 174541647 991315331 152746026 283430827 34796867 454214535 534721338 936201617 364492856 906783658 335413899 786800354 662619540 751842018 699958956 928194950 185879729 567595767 896877896 967559609 731940699 906450396 409542658 699781922 483706778 593419724 576629283 603387720 679440676 749704564 182550489 237661846 590986898 947410408 659644877 727840560 192521243 228786003 155628188 235273435 29583533 156751205 967077247 988241195 633018583 755095742 631563789 757915544 404775478 837496166 613083962 714793696 289816519 546171149 422523760 995479744 79525329 408285514 451793254 620489380 614247067 656607343 40797020 740716155 31439048 39828209 639559099 655604601 490923186 695565416 127261185 941726132 45736926 112051903 20288368 596557546 276384053 394501650 502897265 817752846 667209622 928378025 434015926 970608950 226068653 411513817 392657196 524864631 793455552 879469379 221616301 346840167 371230285 563564297 418363045 738547125 793557876 907120324 612283954 937664014 126845171 943164789 503003856 606875810 839427222 922379226 656667476 797902029 28894119 234068201 578223926 884940391 565358510 881712102 955591761 983733138 845806285 901708949 754477911 816153715 207239074 456019493 893038044 919945115 995301114 999148496 233403181 520912153 190432906 797715425 673602356 977867895 419776572 953295349 332191830 437765708 139296127 677910270 333644472 378998647 456708109 504344153 284775204 467486928 61770699 911889731 785167768 847141374 886482165 969903933 274207583 933923688 157104279 455709570 267841733 284701722 352892551 985520364 503601583 663869190 670323026 799757848 379862694 448411148 742202530 981141580 228444590 465511664 464125617 514566369 441785481 480115320 249274497 551543437 894043671 905596817 226130956 320638755 153592233 231051280 642901504 842003680 92837969 605747525 548189671 951595201 873581944 938282211 652868227 782489122 964704004 979198789 872323420 882349667 637024843 659838341 374407972 761512019 615555700 989592917 798511319 963806373 309391111 944721934 495836803 753752721 84922178 360640192 958457674 970624985 710049534 905852148 886702845 903277260 212789011 759697816 594383887 814511239 868973714 876798102 497507161 542657724 317842348 632148664 417284172 742354577 378180018 407566033 195769789 818871378 716334980 825960063 937263292 984110947 855620976 923830134 758761653 760571577 637098990 965860509 692657028 714849124 879073069 918758667 209453991 799219412 2992686 438267494 381812366 438742163 22633091 912743114 59533108 914848078 185755402 809970611 363367562 631050321 476839973 678149963 985419698 990654185 480642743 870486297 302321034 837325557 692284556 891606143 81773608 564940981 987606880 992736740 238651493 835637024 167694574 231536448 716080803 884630788 209946256 250472888 131548956 542618878 44066627 430856047 209111001 963893921 390978049 939187521 427558830 962205035 738154341 864417593 733614718 916606195 826462304 982195146 157728135 635460489 568561818 607442539 357570125 719573795 679343478 903899380 130336397 499792676 735294868 951573461 226224706 620459867 145310262 631973057 111145479 220670892 965604930 985942554 22264878 352521769 726666011 851961354 563535592 885836199 935055906 971008744 259246886 729584656 335765493 364683350 65161762 568778966 302589695 395624356 829844591 941178280 325535117 646507450 483868576 596678999 803507279 936738142 189184605 972838748 583684823 616409180 324788385 709300682 77968556 462991675 987039277 990384171 107537070 787607042 49215211 853109733 376483728 759913694 844409579 985494762 143520673 223496426 889237220 948854336 990106695 993379179 720343284 779204569 450772757 514983599 313769137 655625885 964943071 998766213 576109989 704936384 788228041 922658003 370717084 755927805 416515085 760280920 116710143 892956984 272466808 894315777 459830172 916769673 268411023 371152572 317583864 446453176 762702333 829207375 543964546 974215033 183278830 945355434 436317867 826293667 358823811 629843672 783721991 905079301 394555623 506257470 941245778 990099635 843846134 872077633 638381538 780252223 124980751 953896629 173483114 829083910 609742134 959015412 920760449 938914518 680646204 739100992 184603051 860799776 608606655 685122181 413433874 611384057 446475589 728874842 713835343 731624397 60812263 742560757 121805311 830813759 388076804 902763843 562108621 810553624 890293727 948613963 580088841 713576654 169496422 298729269 23488465 721025934 937870245 976826355 811994409 897728280 264819758 586803121 376926144 854827807 660482228 941029523 708453835 718359082 199707905 236036794 787895250 970151585 996489810 998155307 565564516 612974648 854057329 986983416 856643932 911404534 208379208 820437920 358270522 450048605 544524796 920959844 628581222 799532399 88903367 695036544 861482651 923989172 268919928 736802319 980427805 997331678 632798589 852813902 464307788 587188585 50069885 805200695 415412812 436093368 780057856 876476919 230683165 584221784 986032553 992705204 270267907 408409133 994066449 994169466 645573527 936704009 500532879 995478875 62371211 919972967 955747712 980233864 800464362 874032999 8840180 485312043 300280949 359229553 973561549 989826031 567784274 924762932 177801915 249762134 871631594 922721020 532934427 824252117 963496610 971506696 84666663 872831409 879129231 922290808 64727893 945874826 566411365 914500771 942389113 991460609 979178506 984519950 613345681 795239091 579204590 589906218 731006384 862895650 876733478 887604998 983893577 995457350 998836666 999182030 689203440 758588012 462303709 883921149 386239550 670528338 490804559 721261040 143033069 901788051 679934839 873319649 639191059 706963742 938104567 950388537 990205990 998091020 165392029 388183227 444893707 882074596 300232955 305817537 135618200 743969241 459466793 925143782 316672367 976964789 770667746 931774217 213548508 534825010 503962209 728064428 951483294 956295989 70390078 859232930 778196766 822716339 577108820 899445345 318903033 677760083 464265180 917293888 536386791 854292323 808630593 927572215 893161375 999169213 544787129 975470306 327832623 498074175 3801879 125892163 701500700 921534713 748727311 814509099 657168872 723053549 339442332 702455629 526025355 577123358 164974576 898609150 562498419 739757139 108619618 825209078 4772990 76805196 933338015 954451475 586840497 808163883 219391959 629057572 35076172 644392959 218457477 953547844 977037322 997185979 659970172 771782805 482608843 706155294 757184006 874312720 901143884 912949686 489218797 805345346 451630623 728779930 28182192 602914378 489329565 882154428 631907661 982875376 964419206 983175482 404128198 636800138 372536634 654924507 906645522 944178075 735700203 961681289 535565237 916638157 31856745 58138828 871159903 900517461 597324516 977072743 73483459 167229415 743414230 904103876 543368027 856241841 196092844 208546923 987269969 991690975 469143440 499855214 297419074 927234425 756493548 904642053 491295579 690234065 302204887 867739134 389944790 943356287 423737582 504987545 741955871 872400413 882037721 968906816 723626074 997119767 886701867 931863941 415933285 485182416 130570825 984073230 125448273 409102375 842872794 950931405 310850373 475370907 224736676 334593518 603792414 729671824 219948717 738977816 912037231 931460011 192513788 546070840 13870332 231144524 95171443 144777818 736139664 927135516 723872371 942765011 257981620 880476064 728201871 826132142 502231959 572636014 577824474 920353532 463164261 533774849 956359388 981453721 226626193 814345853 399596963 959268742 266024273 908174190 490006937 686110652 839574430 941559700 842189573 997861940 188979417 705085564 688198153 798800744 288932632 801111648 751055763 864705182 109373206 653086324 399136386 560377382 871319666 911206470 736016548 777220538 638926029 936958427 565994354 925129284 264252026 989087377 344611382 679529785 63244053 659479827 913546300 967909183 915953301 946526599 468500153 891265271 947868839 950728933 73290641 335828078 787503895 821221085 26906553 173760831 385661246 689611637 861895421 862946435 90285783 176125887 970148219 974605603 697201454 981974108 587763972 848468665 624315851 653948423 164838146 378986547 629236848 637927377 745402975 840835124 882001426 928382646 3708661 848609869 901059571 989904982 890385077 920976503 328667133 745877317 19966230 852971046 693532041 770415337 704647092 862277701 392638318 977908670 948306819 954795084 491179580 978647600 815446411 847401350 789614570 827733850 452546699 619621543 605876628 991686307 642934664 809997473 846532517 868820124 372412400 455990854 441481938 620924687 606377316 809768853 395536556 679832061 965496177 998250932 791512956 954068937 284554076 406256474 652016996 768674028 994443909 998291915 175209278 803415985 655877765 866865536 582345946 692993942 36490155 296084841 994236214 995249804 545864812 962075022 340940307 568915383 597706874 733664769 446558041 695848908 278775618 547970079 416021198 485249031 948820425 982587002 750503074 764915986 373136355 788100596 623794547 704954966 840346241 862958587 749552449 928429631 234876033 860440952 203328386 220844849 982507372 990638852 445938256 772741803 344058253 915091253 421025359 451489085 621899133 627698980 522040117 555127446 852974299 870321077 390090551 784590211 910425456 980737984 483736179 572885482 494901231 753552811 897559988 901666065 397327392 821041884 147148839 314021541 416970121 816212165 773402520 926503751 656615427 832625128 6940708 290602018 465081325 872917657 810400197 906459982 590765367 971666094 186422380 897539983 644004008 876835765 879926567 955629558 140189429 717997744 758234358 804729434 203548552 483271939 25888360 676723997 349089485 752133465 780285806 901474192 432788890 997922879 963530122 963960090 606098016 808107424 602340640 825095005 500610561 969343346 792812078 870738396 666008014 697453279 911316479 997725051 719540362 849089681 876557943 954576541 701550606 733964398 237672053 999095074 316052189 531673914 500733070 669504006 91219479 650362919 987918367 998258000 702933104 897714254 844002743 973183713 556948620 764461048 88305501 219246228 644320656 918958142 446943911 841149440 329160688 835992812 308154662 692813896 319037646 435906833 252091656 654528012 99733862 715474314 332763575 648722070 279542619 752400131 380532870 795009157 864612302 955860795 469798502 582894389 744722633 756603900 174405167 814190375 946293417 968421892 314921114 993528561 515697489 555451210 454737623 503604426 199042649 525747385 542406312 606492838 785533695 955195077 34232429 894586642 800562929 986897971 459537632 975282025 233217989 622020131 116226717 531163619 100386426 615855387 35133033 837698808 441467454 980271581 606935104 669876149 817242890 899971605 166076012 394651048 274744446 869153483 540144590 639230918 425854091 719240198 819925133 828191910 655820788 811052261 689477763 858986177 373598674 850168829 140828587 814995344 706744267 749362089 469666516 886033507 269424968 868628326 147404415 918785831 319971026 761764022 708077542 957060934 298148278 648446965 586674324 869903164 435022662 842564422 610068908 741267589 6350926 340747656 243920127 980964757 772146866 855618644 8075293 452941841 56586631 460232125 224908879 610999102 616151186 770502389 757588785 783970771 467671083 698912335 733491193 878855314 62273318 334336732 915581924 936030055 613066522 834564878 396024952 505164080 15269630 453342320 336942405 603373610 69114602 525568830 297981213 493176058 143247544 253989399 718228228 852954343 804429229 819636915 605421403 944759849 76013758 628113282 459797189 993868869 805679827 913496509 253651810 431073747 62690448 485742260 640689300 832525221 639034793 842295432 24684377 941501987 380239430 621716310 140505150 939358544 664479614 914023667 673215910 836855686 395924153 639935143 586750454 881318085 263095026 514529498 724162469 965019260 772870551 968833570 606467996 982904611 86225342 665392218 583383061 831065236 53688319 375017173 616770383 789661013 577292037 685062485 148391966 483604101 331084218 973897308 968379085 998612053 427719927 797980393 610658229 794338245 713284373 800387107 383640266 692062822 117695949 410533509 558444036 642408576 852982692 865625988 127728068 965318908 768959247 866659004 121998749 273886820 810198023 940562188 501489016 963828994 845626711 911822159 421656123 451865039 751229704 856030623 473137978 759359744 23834991 966446837 469520397 771168915 551743407 637239124 696490686 928973540 214249552 471721985 700861469 937816628 879535354 950235679 543040686 641198116 722805176 846070393 860763729 967482406 847842669 982630892 807555888 839040058 22169041 445200559 222180795 472943506 259713098 344139412 572500608 968766536 245017242 396654416 250701002 580990221 61951192 242481791 95932350 625294383 120164721 638403325 943963202 987893418 735504895 736115842 173973999 930992399 438579721 852198185 39853447 811686739 68947969 284460627 342102756 656256447 492787292 535829191 28676460 934037706 356388290 861607622 943035051 984365881 910026106 911877338 766585093 975749926 194916826 836875609 198264774 199174011 28541809 763040870 401962816 485774877 413875484 703221209 563541787 915734154 701108310 803129583 302611087 767748582 656472138 964536189 706022901 960622757 999280445 999343636 145933914 364709815 69885029 882954333 342883635 482277081 951363170 968133838 286630425 328753479 142365142 627193969 440892996 647046555 504887562 589087801 999200368 999278438 378733162 878197926 653671825 988426841 583519147 802367012 187607864 439213100 576232166 980467912 581549772 840484586 147462568 803974894 24279095 746785442 989461423 989907008 821946518 926768558 691018465 966383341 720055200 899668633 743914269 892280867 285920011 977555262 253864132 606122351 230816698 321771008 889586948 967695205 828630523 922819643 16208740 39115138 326252923 445459866 920133419 955451761 575012065 970174926 788852838 862179711 205744700 414465932 918167993 941330355 271015351 998851068 447187057 807711606 870944603 939085177 706961175 778608697 847417812 969047192 871373181 895825067 638480159 724689705 855989325 978748708 662391889 745724343 376349301 544673413 22812241 876656333 687862569 986106102 429817423 771936626 155403708 443212809 438337448 646738012 677562058 911947670 922022246 936165144 514853275 559813012 685971603 828185320 52682433 465223337 716797320 960364061 821352221 899639900 222790957 967438945 313522036 934952991 849691694 871584869 542517063 822773090 670058641 954470576 220266518 715373125 472644704 787530820 259351016 418960921 162169302 689740051 743058743 782961659 337946008 993503566 543543601 683893699 298578908 430997552 367770821 958557933 530161920 853162630 239928735 618160394 590661255 894705008 808095468 887864191 907821061 948095682 872719349 918178539 586584683 652458726 454503886 982607550 601247088 851463474 438464841 831468260 281241824 394528915 51030879 956368608 583384262 798315038 42219570 220269510 767838049 798821992 510419951 685552321 322228306 608048615 148250929 190868162 594463966 704287980 324928459 868398842 124114309 721478077 679838447 718292020 136619430 330527612 124258455 699582643 696823067 893619016 718145090 830150221 55986662 560563278 993232504 996645028 438487329 600397634 577870490 996056866 689363230 780182136 25285999 292638162 430576087 454403102 80410697 478719279 735626013 833681701 29819486 659843199 204674176 632017414 958668699 968140241 51911068 315148957 769590538 833073177 566990291 701880385 39061787 381610618 207559633 948394253 250894994 991831426 540692840 848978652 536651829 862646384 411215088 803553546 435396342 961189152 85868676 877714718 669940874 767056766 385608316 893164708 272680701 954427388 311663227 629841969 358023376 880033230 65914929 983359008 776665898 813737451 188061592 206889103 69507412 787284487 310196419 707783884 444003311 630091226 772752514 837633853 5932475 622121001 487872264 919468555 57041288 260237796 702313351 777315619 457893488 907219708 422085758 996915546 303771486 887924834 285888647 728819951 76578839 241103515 478519178 797375176 109780747 333677572 851413943 997764305 232282207 470559474 57542004 837063486 793672153 856595296 484043183 747011570 400535084 769896507 112516131 793653221 224827853 542820062 590630602 915386331 817047057 900886114 521850165 882586467 987019149 993664951 205206000 715524536 740278847 918303634 584999431 702564353 893576139 927371509 92867043 461913969 137498626 788844717 443896143 538425331 723253955 792183064 373368955 522701149 590378659 710094235 849579576 927421756 375961743 923398822 902719507 979720152 409667294 463272963 293331117 354131403 622824405 824010013 415657450 967260406 186189836 715700039 900937176 995798631 999140829 999180437 183826169 476185397 780176567 882020100 602036555 772946860 166932948 711234352 904191038 963651465 351103931 639609504 623837262 736263570 83051292 814674313 691324029 781078633 565316787 976689575 19863034 749520523 990677018 995812530 21422615 582031265 422873416 996456723 645365563 798849460 956455206 980644552 695147986 906914535 963443619 968239415 201292075 441180959 584766535 652757994 51985261 659145557 166692783 250404512 736238674 787837196 192869589 501770601 26222750 554613137 120846977 683535223 926755035 931592211 222068615 967916948 791645025 907976363 195466260 887192090 654145795 935840684 858880609 878853852 873747230 925758516 698364479 736182750 926882751 973954716 641652077 728033498 882954636 901783537 173871174 392499252 250421504 263149321 200442904 287702753 243849502 608443305 983874717 989884679 138919367 155461176 823744725 991503880 244560836 735245316 571861435 929366601 900316172 908909631 957942939 989955879 193507331 888751388 730977514 990286756 211689127 793910005 235911424 412270568 346166983 611425691 531957145 643568486 295588993 937027750 244717878 765313032 431673516 629275849 974948705 977400413 146982783 538834228 518037692 770063269 517461964 679122727 725382108 828451779 653712289 865985043 427307890 655526496 745554582 831606890 747694141 906654240 309718284 960255355 751500261 754795667 375687948 486735248 502191527 988564784 224088672 264884499 716408871 799631635 218708509 814617808 562899415 815852367 610958619 825313610 769285933 781368571 146245959 456327633 246425934 418330368 942851036 957581959 974437916 991530486 889743504 924173276 814370224 952670816 53559318 59537095 755173149 935698860 759970632 827230556 560713355 759888590 391292537 556175980 174132636 752030078 311148242 838565549 277862060 599548666 171190915 941745331 98659648 693329181 16978975 837198488 199715332 941742057 774764133 861738202 153262115 929414134 904400716 948879009 894927949 937764290 885956128 898532894 227976219 881231219 297625477 946945097 639528559 890305463 682762059 853151603 474283736 966889517 662754266 991890544 449834816 635898833 489668634 532058727 636621018 743365994 248581619 856526976 224070047 456903747 854183415 926389990 149616933 800583875 387866849 615750096 790402657 837866202 59991852 459854319 195655801 655241897 849829885 895399655 251959050 489709915 408074402 435259169 70232735 271379973 841340044 984065800 37881605 942659649 403217654 588155932 680502083 700154838 634676209 712256231 946387999 992470685 172260061 473503325 159944035 940405477 975477668 982922442 852939976 929954832 836034772 859966352 472196275 818137392 280917928 362327205 674229992 772461578 821639087 988627295 975697764 992336905 957905520 981718662 726130641 848176795 993021267 993290271 358874292 752008143 736785308 893406675 576827400 721698848 365583363 620734427 331637296 784972681 234103099 651118525 892804037 968409531 523575875 912069654 945239606 948691384 55882295 116309835 558534711 763074862 741956619 896926809 360972646 623435784 461067317 652414712 286659382 760237616 688699196 911265751 6270242 730849600 443867560 760165694 2194253 347806634 456172667 884812287 634645000 987631017 403302502 863284091 691863541 989349146 716269023 879416039 487113547 989975719 640039645 684461119 494964986 622329438 539711260 958548996 406173087 768795191 160315927 728509652 426340271 810337592 207410594 733354451 111803769 350403243 694737929 850322500 305151272 897742614 947617168 962029387 107801971 852833456 161835467 410121362 666355710 685300367 204599589 561469856 728122648 825375671 151642904 748475452 893400925 940450450 251120278 918297676 152065626 609138858 709262098 774522223 553055997 826914707 906474538 933220204 837082676 962083068 40592611 458269672 371493146 434923018 670760818 907550762 387999533 670610611 54938725 895109123 641632543 705731182 585063505 853242252 651341758 714323714 837216024 891749511 451681510 888739612 833513221 890977819 592117123 672474864 877180847 996790740 586958980 932715624 352517678 716767778 453807520 792899408 473877770 938334083 883113802 918945127 121288882 561466874 284990290 958987185 410296584 525536424 320453993 748586147 586058930 981172055 940033166 995962183 869248213 886996681 922692800 946622281 595067746 708121331 143598314 651306783 450958643 683054136 809062812 994154203 995974331 998730784 797254853 988713104 917569511 974981837 533184452 564150835 473215370 551718254 366330257 434301777 593717316 625536229 354028281 808934949 835358773 984468416 735681842 983798424 697634205 838116942 35176602 990637240 300170800 858722787 874268499 980410545 931416995 954176203 766560264 946752482 339275611 785950977 231418712 332480646 798278513 962606497 442944815 839250232 829126453 942481332 831582427 896532440 578732126 870985805 293716544 297606246 986095089 995700677 525699277 646467982 691026806 904909630 567568794 806463075 268634218 666059274 63788926 932731861 990785344 994212580 910806816 956226330 390874890 952146458 854794841 911085409 671197575 850292471 139762897 866003472 496152002 666112505 692235707 745985765 329448617 947792927 449716198 508909318 697369908 790958842 151293499 705382358 372283642 834667342 361959419 720993907 405650679 408775638 448796047 801118081 176950045 379905809 656740591 835338403 166305558 464333849 930951336 981946708 393211238 658399461 826548841 956472181 631210976 720938064 505212250 565766923 278961622 936132840 842700765 910907628 906637483 947536143 156795375 331168760 685792210 706391342 903455903 985163155 391902151 752884591 218958432 832083195 668492780 932203676 514330229 564798697 188775113 270799238 543021456 767115965 700306891 891466224 279877054 794182106 695567706 993530464 618043247 708929038 469443552 735337613 680906637 823442286 734132605 895164381 129751375 672577338 362133008 557843680 821304533 947557825 398204597 729991672 637702893 966154430 719675758 838360256 212126352 259872067 766807803 958510044 487394719 929195157 950552055 961999051 126550964 830559793 418738507 687632494 557753829 947167779 746820365 995713002 664992899 688030180 550244866 553633360 604141615 883479221 776127832 802766310 180455890 464184754 382410785 812066238 328924269 434460792 930286430 982423543 751143259 831691130 363643780 571366572 571430386 770547112 226221013 492732067 685008361 906607066 936296737 991043251 788683306 920899108 76768888 493547438 381239486 748349079 68934134 712793472 338416920 542648909 745599721 901356007 494571437 751661995 914753387 997646630 856472333 912955286 72045879 353681157 913946661 960150743 53305469 781148480 737319035 833687149 107507685 526745940 830578030 859283311 154020891 294439522 658108032 761978437 577733899 890836671 664679941 803245604 655090285 874655027 944143106 945759007 984106216 994505339 611462017 871767886 778688751 974422261 338887289 631982680 568722207 711636468 26105284 682381438 138913918 269520608 499651950 846444486 951010378 955784661 401028261 974222660 860138850 899136396 644649105 954675635 759333922 927699330 899388055 938477942 484011764 648395767 203190781 929977755 862721727 892569416 40011767 446595180 835738557 917742599 629738542 940929108 361849283 855408290 746275500 792788586 664723530 738245912 416565554 522141992 443848652 813615443 621997082 827627954 43137623 775010729 397556173 719721210 649964263 707609628 197020073 474452369 215724201 308266154 342899077 575447747 419919506 506883477 523619965 873685935 686618758 828417796 147003506 436554155 816477283 826882931 373653357 454534336 795370961 935652075 858529954 944109665 217568443 269360041 288747772 381822782 363579372 961141373 654153016 718112580 849025195 922576556 111039837 170994605 700235244 783416433 878650982 960838467 945295150 979569400 646522228 856606907 994351045 995030360 763734668 905280205 352454301 506217548 697708583 857834061 283541768 784090618 268275346 398962217 344972374 662160804 715953060 819021773 675007805 978005398 938817193 949876973 417882544 663371808 83662474 715487204 84129139 948235846 946539397 956906496 525199829 838401585 2906788 490102103 175377413 818863736 905430808 917989761 787876843 931847904 112134686 838819322 935918696 954164260 326050271 607831632 564662883 807171591 950640320 954750027 608899384 899359285 532102488 848974215 845721650 922683569 198887603 841846438 75321393 623914871 721012847 844491905 732222736 834050421 145282428 390454195 302078885 413891146 918987245 990314177 546670875 822618130 566837931 682954678 70151006 237480515 758337413 856367436 626661285 935568331 905788770 951386108 278011858 297268663 663372649 857073891 250354277 997349895 441185375 886704545 553936825 749494744 53866635 818830291 624014408 679556228 575212949 586657378 773829647 815726397 404781262 704775036 135739988 175289981 713151769 888135947 64246374 211658427 916705081 980348781 887118736 975645993 185347351 728939518 940663017 970153055 374730944 977150126 277953171 542018341 556824460 676461748 238899115 723916138 800114286 854548135 459726312 895685244 777223259 810853863 976092612 983551465 509587200 610814019 159256969 221657643 16148622 130991328 94908655 125917364 947951735 980281412 337625114 755695426 210743165 472696720 439567519 709324879 386683565 901090229 575923682 723983160 145034876 927862916 263271457 831064624 926426303 995366143 342430306 718626772 59214600 243370989 386863480 696439986 945914567 974334697 11840410 561751576 404829694 748368854 138698368 530068952 352911153 431171509 516090233 667947610 966488151 986322117 182650333 436069052 136481125 626019519 148388110 517004144 70669984 334764743 445169989 808270474 30785142 926333632 551274353 783630026 750604355 819890777 955732707 960640196 396243993 595784142 463606044 830873625 692810908 995793198 841724822 857812858 165473833 588289642 610989190 912155487 330112144 803405993 112840359 634410857 287377381 328376566 34632650 308317130 13209975 420120692 322001177 573184929 369303936 977282671 419412394 946792064 116382902 429863696 401120827 575154887 575945156 853622980 200254039 201479176 300666280 705634356 834123634 853685721 691694206 905072208 755677475 779264851 333825410 564016252 769526058 833589337 137986127 812305917 677941528 851347942 103605751 261900231 121160150 741366194 46089775 87785999 625513108 705055332 696147087 995986492 646894067 708782403 672125455 749168383 158296390 562387924 513023420 598883873 60142317 116132065 510231066 664962975 857433698 911894664 248174916 919370145 246128283 499574771 514205644 562409927 876674134 906291818 837272255 865801350 867455977 975440242 237756823 610443138 870493492 953382458 387059994 503007286 276590798 823430795 646155337 876463621 714707569 979633738 147339927 465860530 76726605 678950047 993582613 996695445 755357717 758421420 121848225 354926552 955601586 974266318 452218287 502710256 471536638 907953594 809878503 947725752 629683363 770937041 184629388 419733651 825729643 975206029 363775376 944018267 119897614 919334642 410587888 880009671 259051784 335525963 153654889 243933430 64841319 278901132 80182530 433009944 326858057 700440308 678930443 853759751 728525773 974927922 154958201 469411812 308171012 717115723 150489381 455838938 312294546 993531918 721369135 848012709 296359465 604546159 542195526 659523296 162927241 981773438 702727332 958320966 544867011 676483417 666999556 823607714 385704242 706659951 29986694 150490036 93995982 902264809 920988494 978093907 516975820 646259879 815000989 900418299 223093101 684920744 439879863 539624108 127264278 138769272 87564917 137817879 122266445 818796769 143811447 523673892 295167152 697628178 154111416 829687616 233423035 942356846 618579126 806572251 680674381 873770596 37971442 140753362 319411546 780849825 421099135 580708328 491214569 571740573 334081931 624135145 253127855 359217946 802832103 804309070 830439913 907811985 649207791 797905332 419485731 450771085 837053856 924930831 961945246 987176847 673211245 895702238 651016422 764973371 540879956 848885840 391684041 913679835 519129133 733630243 105994515 439135153 448513015 763855403 267474054 410018909 965556213 971698056 847680034 986548109 553844363 922853935 92237439 853843431 287881897 390553187 399330550 726497032 623324169 707790871 183800738 920180840 345498509 765874808 414124187 979039394 17172604 42888701 26030786 44973927 419429982 734094457 287324057 956189130 710566203 729015598 636390294 830432949 200831375 533774911 487815467 542128768 953383739 996347489 995782689 999341842 556645688 575351596 180341717 183450361 694464263 886779134 168913660 312233477 518097875 924640251 570322768 649888797 278566669 828888212 690479368 765045154 259785420 599769758 493372288 664261778 202884452 829925679 212719482 937692281 322504078 613248642 891901071 912843418 425760843 478665406 693871597 961781299 447359901 938589217 738276563 775807245 308555057 721309655 986399399 997798667 769599829 823169548 425257789 735139879 850942447 889777375 822457682 912325701 906691563 925146097 596603084 955914345 302991789 969236487 662446675 985015376 382314892 887871542 899018926 961983648 389965815 674773124 879586064 904065159 151163585 678674514 524881454 550500535 248906979 456380532 965899600 982560130 206350248 501435891 672809469 730707321 662938099 783245206 871362539 891047004 169941144 389703164 504779636 959269349 546330184 697926235 361114705 476672183 570526787 851136829 39607942 479539658 796878028 927090488 162613898 737087564 307046834 332553872 118658509 490554764 663570019 950408750 632893305 949121662 967628907 972042331 597211126 961301740 859649010 902887352 286295740 317861060 309608394 895825346 983529075 993373424 129015362 323394466 738800493 877057480 69793894 159692995 43804513 178907131 830411572 933558870 229803541 913756037 699105995 801769145 365328565 546281536 510171438 843749973 570647392 653122536 415082191 455769198 130286951 170866776 236744784 630746499 531806028 795234050 879779598 971065839 217801016 629868311 421257600 686658598 255838075 521363139 117101691 908930617 763660469 913921855 435456681 716947526 654175989 656552372 192904457 491157206 143462726 446369374 941643331 998531975 128753904 146442036 453041628 878746213 617767708 662949822 137778236 875608715 123825520 793386221 859797309 955477609 2677179 72100494 752288412 954826839 179445525 504434799 185893448 212990929 733092484 885594353 64006671 464268714 755793124 999239980 847917474 978706790 727147535 970023850 598146608 643632041 607097254 741954151 803555960 863601975 689741127 905585248 196739060 695475764 406697590 434254894 344520024 977771139 505569868 670696211 760310262 846410844 114373131 538729315 936748912 984269568 894998899 922033433 839174004 936958030 604033439 762263813 431560712 917014802 504976433 852224305 822420204 856049969 648973522 936585890 11564757 241561709 24686629 53136818 131392623 484359108 316764753 807828810 872867688 968793442 896868652 920430657 170287333 645546696 77210948 536448800 508072559 596453734 305326170 626459040 672490547 743170614 508130945 877805089 750472835 887872933 625598113 661803462 463743979 506550509 637056000 933599920 980464389 997588742 824180612 838235959 307253672 716292614 889614775 957416269 864549048 918824272 587926222 608407958 480424405 748298381 137597962 198734370 245412911 582157284 148131514 630033514 42749327 373358758 957099808 996446398 466975684 530364675 936898624 965818836 769832013 784669829 362140902 470765749 825452929 855742594 118259301 253184556 50760115 108242960 84187050 296591375 950812129 972923311 354012859 886069373 782030025 993061438 944116661 961900982 723672699 962600304 312827673 678121411 759167739 998142842 813490891 843743010 8220318 128266791 869698326 944375098 877541490 909417615 806606932 960545236 774519981 899098217 524680026 591777746 133570920 689852274 518450513 631494268 663358037 795727910 657593151 883009443 607721194 948675260 522732639 809916677 56214032 629062257 766367517 968556387 556308330 859376064 882712169 959796807 209952701 608223436 455177 67953885 305660569 768784130 424113425 498562414 675047660 974295185 530735515 947287923 319401019 609789373 696199045 968960025 124558904 643868614 119409213 561769896 879305261 986294411 588920688 608986471 565493100 841963036 987389801 999095023 440659000 949841979 635372102 921925053 619399426 719617322 768162903 908049701 812784924 814402359 366370273 636971274 837176342 964904215 596659151 636727591 227775529 963317063 153074179 328416236 826621213 902988949 70989924 977431268 922497357 991420783 404835491 564342614 97495851 366176754 851315833 937197340 124969948 160263547 221443214 843757778 884044929 984207542 652413397 859212285 316237481 683366690 5809688 651921425 660486080 732631383 274020685 936452943 446926772 541512520 113230347 394213929 689391413 916695736 137761093 529323497 33791690 183485222 640248692 791062028 816090840 824797255 945428658 988586964 92365079 516555989 43187391 803383923 730652392 746339919 263388599 994242439 635358415 908509094 886308823 981304647 231942861 591768770 943868609 960989186 815820436 870375851 358585063 364797758 946939906 956566127 861645200 872840152 248998706 940681339 427230827 616791231 985424901 993652451 482741386 623692553 274833526 436341420 261853284 902415794 714451889 721499866 26319821 443072225 408492498 760237422 929783224 964122310 218084103 243443437 947415993 967935087 592040628 635515276 82486836 208764791 702759295 790732532 417775799 606572869 732990158 761581929 935230241 936734590 558031284 837634098 488526644 821561588 359160072 488580833 32783623 313960321 874301836 960429676 851374479 863236557 232861370 906248464 416041232 589061117 782192232 834842228 967680659 985358810 443516693 903062215 751188118 970802307 642921029 860468545 889261998 896573589 742290000 997381771 436870839 491381571 211319732 383642710 409782004 871917075 186387353 325780399 215481025 249621256 915706609 918664387 300830625 361494155 271926056 758975382 531773697 994854673 22075539 103709866 282961618 314560838 78286042 887398804 19971929 459551627 52712175 694444052 335741559 785901460 474406083 671097748 680766269 815994569 438421248 673613652 399488574 635902897 476278795 798477772 87199240 447825931 157123668 528731409 261887477 824864290 941681375 952729949 231772621 986734511 455167249 870027298 258103622 684459855 843546293 915730803 615569733 992460804 267108883 825924762 865455565 979483664 509434865 752942903 823514182 943116899 351988592 459133423 677244786 698693966 306887402 396362030 197673349 875704376 860498267 904255263 747378634 870084843 895014425 984767977 808059735 984059436 616714562 873049107 942568234 972087437 367184399 578199194 100446491 300897190 828076956 986799315 771830840 941637650 655692142 795022259 374150778 972998657 186253912 956127549 340285796 672977169 521784844 684674897 980350924 990831491 138119127 671801070 842540391 912764166 238424195 351741163 59463738 669876575 15945698 758853142 13541324 745414519 630408185 847122532 565460770 822348524 261724771 925957193 159521107 934274451 825211742 845946941 568073904 719434367 522692024 877092504 173412930 235845479 92901929 770151895 305483708 826874532 518086842 642298211 63379733 160746621 111721850 661692748 458595611 650871376 90164506 614523493 955174635 970877861 391970530 515658168 213421581 926195540 753657591 855456241 655739007 803310018 441249678 875570893 478269304 795892449 415011592 482448881 949505767 962976664 369499486 409618679 330685812 359938538 600465351 864951073 427682315 483703045 733429816 855656279 200214714 934698516 335738642 858451802 910203989 931437224 449859009 670662277 390957525 541840509 442603212 542391185 779046921 981408289 945466571 951437495 96169364 172210945 840977622 867835553 162592175 437646443 701321213 714550603 627670238 687450088 978180789 991245608 607873384 680197596 744874338 985128043 917232904 950050475 759821317 815043890 747640382 837014652 252267457 803075565 295296365 897828761 943495908 961563975 339893949 721177971 285074554 786713652 860441683 969097753 739410116 941823666 69313668 74130672 635918395 934590851 51338026 162047976 683886388 924182661 303952709 358901471 901580042 909322565 239793096 577613172 763957468 994458560 328243959 582807754 803622377 943996504 598193173 876115867 3592483 988903408 977680597 998543471 391298457 718785205 564619476 722904744 295390244 316261305 525549557 909201562 168813611 955467048 939906678 971477785 486018574 851214914 758261079 811165631 23945643 975580808 484118975 787951544 738386288 989165646 371497020 817196407 40918260 225415327 508286436 882768977 694214291 983322812 906027962 949532453 759279193 818065461 102565018 968476631 773605761 928196209 972949507 992304261 758792482 775447644 25429433 437105116 928115741 977118275 949582585 959938287 425804675 668263595 429329240 478027181 742520567 751521148 174906222 390911819 620014526 787184554 938309890 944337771 12527313 353198704 386398744 403407692 802390125 920677359 41455463 518385696 738714813 997663340 581735141 988860362 177235441 842596424 651547050 816533753 477562534 514776241 720153349 775393898 601015826 844484690 53167385 847325253 38438715 168594632 970842768 978497835 555385328 876447666 992459096 992894646 698842202 935452664 583708567 850377107 738685859 917144446 272215532 974866828 211824966 724410176 35229822 738444996 269195485 773160510 403147052 844594724 101681829 711248696 888221231 989441748 110907465 927902901 436481394 870921401 918197223 928429299 983564907 990127281 188544000 943022536 760982779 962055095 439331405 971523086 601112321 697529696 899636282 943815747 13674717 236518229 199331251 817413192 174144936 319211557 232198553 589553119 815579562 886529255 376559899 512797390 233195677 829732946 629671386 672424016 653398088 980785091 839158408 861449333 925604688 973732987 576849114 595590716 70606067 631599068 157068801 380410104 276133262 380783063 852567504 854015048 672061368 827785378 957127184 991003806 65638248 596030402 509888803 995134461 451421251 780586994 361184968 874295966 635197356 916466694 586661017 639885778 663797538 730014545 335991074 387154142 429783614 689431710 823468593 971612730 715823866 785396862 236943843 820729904 480259423 667697819 902892778 932953883 767898252 790695953 177610070 826543263 940812198 974218711 974639722 984681238 602567316 920054009 573751733 608528303 407237548 974689968 569089313 897487161 800546375 820896130 903963549 931470498 900517606 968223917 384552024 452818069 139904071 495412534 706798155 906446839 558048556 579617521 109491142 416645835 330058595 968967842 632700482 846621028 989865539 994742454 995162753 996518344 530594890 530674265 145948438 358165059 106251108 983688830 373289426 645977461 841665327 971161256 458723838 936022192 691922931 720296000 855290451 949280124 676059654 885944976 240132870 884048717 262353160 458864850 403106195 942283560 136787090 696355637 711791479 936319927 302208803 538115031 233300574 922030367 522160538 608850000 387480743 865970489 507320136 550120735 482868397 938549446 482049249 930964701 979935684 996062358 640235810 720591918 759055371 969668143 734564068 765834643 883201718 921489539 260830057 969287535 625564684 830569063 168237724 762273967 321273662 530671310 698168889 977949177 115220250 924646240 522025334 729935437 127465225 225913386 746094759 954076420 621620597 916239879 920046944 959945602 723424201 753256737 522591946 535356282 873485190 976148958 707948689 992181482 169819053 701653804 544843576 549200375 201759824 281678193 726286668 934598910 405562733 928903587 761628364 856418773 737296927 954429580 552900613 967012983 190583108 732713269 353147499 981797846 394817946 943540991 394942729 575613714 641582637 979959428 775315426 845622147 335484774 990769812 462529803 709048329 915758695 989963703 177781184 996360618 87026157 626491696 627703660 779898882 378282562 913378445 886984577 940209224 638360357 906859951 753342522 802693114 595367946 696420520 566766714 771330603 176197945 876261547 291373327 865885814 154850616 196666954 376943179 776299332 31389103 461787107 613735263 855076268 265775009 460188493 190440024 716494812 718078091 818903412 108693019 617570410 238035056 906711920 338233136 938594783 354457426 780932514 561698950 996516927 391902502 475643698 223874910 362732177 48830308 905770258 462390798 682004209 986330917 990133255 680252084 971354237 653679590 778350760 786390688 831653026 526330132 859550437 599637008 679745063 780695718 798612179 934197533 959983633 64211964 830414517 618989378 987395314 278885506 446095291 978160805 985508352 736889523 737886369 906030889 948209607 980355100 991075413 318132049 370847403 274553989 723913310 527908269 674738137 150570733 710122686 613738310 743024385 913581252 952690047 475513589 740277618 828044605 986620264 827440201 831587630 201501634 606288931 213003177 772834869 604760906 900876636 949921828 981922216 497069522 837024741 319036398 586547672 367561569 398010802 63478156 756400253 120119212 737092220 180341732 500153499 539629084 796631749 411456125 990656234 391495494 724646351 487114839 738645829 336743534 898060281 211744645 336085836 546681462 790814362 635851099 959419806 152301629 499446439 488678607 607533784 624303306 807937398 688509866 831899495 962707056 993497196 744572296 785903004 631098246 692143743 337302441 675189669 683645753 873637326 838220313 852063667 829358528 908756195 721135976 946692111 646811466 720180114 14780881 755324686 2002033 726024633 395776438 967252993 469651144 838760988 504461693 769878749 621954221 823261919 871025170 935764405 718909254 750772956 451736567 944875957 259064599 586810153 135653887 853666950 319297553 332003004 402921422 455123348 630260381 892126385 317555251 903402854 989999909 992399128 782103136 927003303 699814863 920917661 985535731 987603459 709252085 902744437 89338617 634679149 830055012 963535992 971380946 971957741 666230989 958210591 380796938 919767482 403641050 822112426 463860713 511360602 783941643 973161092 701462420 902900560 906792496 958214414 144248673 720576706 735596260 930051585 584179426 863481505 521007 216876839 125883004 128972709 276474397 818453446 925843219 931305272 243261015 380286295 314946613 539625593 211484346 785807543 195322654 451921072 743223203 760058834 602270022 846964978 803282363 923970059 989557604 992487207 60527312 547323592 432108663 670973832 454160299 705619844 894065823 897770558 736558817 985470036 537660106 668941413 251373911 817768065 125732175 583133567 782614624 793785006 897547781 973861471 75066981 485324391 253851012 643768585 514694230 737063662 842214741 921367540 567491264 790218375 318976061 745388035 638808214 736679466 427937957 834147860 694503394 832569128 983402700 997971126 663146343 889598210 921298096 954482635 920913168 923360419 475621884 566717751 697533747 994225119 725811108 928255917 246193471 484880961 357790926 384089940 49804403 176119074 160157728 494869896 890856094 946135118 839435283 883492753 527708735 612746661 375000408 425786311 65855116 312991604 113875666 925462145 526453684 691338734 558798278 737997049 853382608 932580164 934974828 968590852 152732929 832879192 359687562 999192028 435986453 638414640 199210433 492563099 952695645 966845264 247553754 547018844 133543905 907641859 497148744 928083242 534230772 727204393 295470087 314351786 751345938 982362370 889451959 953418060 841081938 994549967 994135146 997048470 640374457 757440206 62729723 720398340 496699969 785600916 435281416 651247596 438003051 486199904 213186568 864437106 76946447 733753314 981104868 988545562 845318679 908982644 137574879 516938780 172969688 814033515 947661292 981603955 117000016 313324810 358101325 866614991 761286524 868779829 885625690 927353012 57245514 379304192 218461707 724381559 19249526 811741100 301805734 559552721 578071573 750057706 605100196 650450519 105341714 450742827 957961739 988528523 583019437 656807058 225420235 614790902 931601637 980280466 357662201 926827986 516456168 724034478 247717752 926589445 859313736 997753308 699780220 994542018 475966658 723446288 914241864 971173536 22822688 903160966 833305234 956355302 878837987 962940476 555440663 935828112 507138967 688810909 769355839 885026723 632066010 637671127 160436039 441882538 684904974 888123703 490395230 706230055 213670624 269857163 25528114 322128959 287485949 428139479 561493906 922295833 264781240 343463691 210116637 901699067 504855090 677957174 410811274 422121230 454803094 768853236 97500231 167766629 654626543 981287837 717677720 887592484 549410063 607840442 346327218 523921073 931867793 999363341 368322967 594172801 33559861 432090300 498915160 501372865 122593269 387095856 353687137 411490733 83403251 891671218 416047897 826938762 61433 493330143 127152330 679050851 796928864 932777963 901018244 982828145 871338098 880181871 381709850 924451392 766234659 898380347 586034775 802056915 840303752 980532516 310161410 314801885 722852142 881014841 907679300 919707208 525179908 559991885 824206316 951101313 589132264 601850586 904824142 988611700 980141633 993953809 183685770 981590428 274646664 418154144 283488287 749891736 127017603 287814021 630886815 935868134 113369951 405152163 216234530 718243086 871016677 991081363 183205909 769166019 817733855 841725883 566991091 740364761 193846631 323474064 22300724 477678370 700525482 950712574 166767881 212363772 237071424 683432614 816469850 873703477 690189293 839853795 144699237 607457748 107337547 911607555 352942158 778025862 287862414 768087829 2183794 646295082 748495729 765278497 724658927 941745979 82477525 367909865 809624174 987717468 230644390 650677444 241929192 379207271 393621349 976840065 459388753 668103417 373645925 904286180 938393189 946428943 811997645 834728557 960485560 975035656 898961795 915337692 874750178 961841500 66379169 89347192 49811674 280446705 456727641 801826358 368170719 789566689 190817422 914842892 152197051 654294069 245563647 830838416 393820702 989715683 9479912 662285038 831060305 940094199 236443405 414595627 216208481 996273579 791464513 922204552 353216497 927530033 951927794 972378314 589697219 643173281 594112758 747622796 44678676 552061355 219484301 617965172 695146702 875135419 383653564 959986705 750234921 915057681 35562879 902160629 238205569 776219584 592807403 862117160 405965172 452700282 688699165 970450586 469830988 723028740 452929351 502654556 917456522 994238724 334931627 565132982 446437093 907991138 934374036 961603456 864642016 934388528 927704825 962028224 813119298 953337203 215177690 716793893 789370384 963104942 713939948 950109180 300567437 811246371 786995359 935999991 624273059 949205109 553955938 856839356 52102631 612276529 817970081 849017736 299225556 703866306 571613097 573915836 885386155 960546500 935944917 940871980 558308840 875108508 506916611 523900651 35652726 262396233 897048335 969877917 565375916 717919775 866602876 876049337 724691689 804723966 776757000 835566583 110393223 701658716 243246371 787423681 291834241 772557216 266281481 319172547 138324832 912167430 471067538 537013028 70624807 595677341 961359054 972303364 460142449 830820885 360630158 632717005 944978925 963690190 296905541 714714460 403414221 918434409 699009956 796769451 486396791 586592061 60942234 393468454 462898570 796180734 766200257 862390840 422478710 848111386 2502047 120184681 772124151 853650026 711296232 724209082 515187767 927019845 556817198 820606969 335494490 855587900 926560810 929684508 407643884 905545227 835568550 876332609 365927255 749947444 639148486 862777896 219654956 276652324 161758174 296513125 864805835 883785703 667241291 992867221 551687077 886544214 337467274 574065195 851649243 959817298 561985794 779485386 358574048 674087949 818287220 959302981 38395449 964457754 231577778 530769853 222862115 780143138 640132326 887031561 93933718 873247495 290275561 645782473 973158809 990828295 576111404 627861992 862886336 957938348 884324292 906928394 229036262 643059238 932804396 994479650 353695228 643668649 278138013 934613219 717935848 867071388 538534112 727649170 14156572 965157018 19524113 497937456 760029807 760557469 399008626 713258061 449744495 667528384 814949671 987347566 127172781 414258615 729188076 872901807 662910416 937866125 414358338 570159494 782612896 961171703 884859553 899359021 687002773 750138111 542067363 919238243 747325325 775946447 799299100 902865632 643496651 843090560 632143417 923144530 568446308 746743309 908412207 968424179 23022496 896890389 967351472 986495957 917586360 945346796 309632224 825367179 822222182 912794322 59334381 772775598 748361985 856728817 900748653 973958721 436304278 480251055 902745520 949632349 593374904 889102562 109850116 957201333 538554595 650271976 388962112 515146772 631299835 922426120 299945455 443412527 81520150 905013162 233676495 367246517 578888728 904864047 894399150 904645578 206614216 271428920 397282784 504139654 953416330 966472378 46173756 65028171 21126776 307267564 714137765 884247545 326077156 709312547 776934520 979961296 924331079 943591937 474748504 673595810 149520909 719550789 357117144 545447665 430728768 752556512 654860458 869091285 292187464 860959872 399659104 669527862 270942873 720668930 92677773 805223192 599612883 800208706 804313034 855177827 169056841 452133009 769137234 922851934 833457780 968265224 783825600 979703599 245431434 747853603 738424753 948963745 227283651 536376079 218481571 797849205 430685372 859081512 24489144 969184770 314439118 954447462 690211973 854040273 763005413 905382484 990197151 995015861 927076800 987217550 793334978 883017662 393929538 877627782 152886746 471967815 988180432 998008339 229992526 428854934 559820335 832426838 761202463 860159037 617164289 957018280 63520286 495926965 480862019 808328050 691849092 817002421 807761770 976553880 861724855 900582817 154288335 523702204 14789525 274250696 964602830 985878391 179164667 528480002 843252018 921822791 136979568 158555864 987311842 989165683 550067742 919542549 810275042 813483389 890534535 920116211 405428528 987139830 262697564 927573854 99069751 408515624 551215120 964962808 128263383 603458292 34883109 443088807 46036593 199283054 145188286 343888163 102259821 186990828 314130344 393386546 303439799 827759726 279708015 280209511 170662424 177358839 212919416 548912436 322012504 854084282 12023775 354669761 861691135 877735278 557697787 739422980 640924744 642700418 866880522 952977519 274954066 909607212 775047010 879201081 727279874 772283484 87645946 275051820 608985500 851086040 31906027 385265073 238506881 924547795 73552276 362555168 883482944 987257420 590769195 869998835 425307777 587637325 272173983 849455238 521225085 683851110 943851821 974832177 37307016 642566914 954508359 979236139 476769724 975336972 733752773 958139797 248648917 706767462 863727077 934239914 503580160 813131293 715835275 794937385 365076949 856513262 724691139 978697914 511675796 901683426 868871680 949162935 321999086 858893349 757299682 980449078 144623996 640517839 282464262 969609876 577891098 903362435 836339893 900494472 635912037 649583925 774965538 832761881 73170062 369802060 105337277 886509322 82566549 269465077 156294348 934240460 53025385 230074457 44908212 91041165 200633241 236425315 260129105 722948429 971331673 979021328 899399923 977168674 701986437 858338642 180437820 661557537 753467063 865668028 474391591 522928534 152226889 287169342 982364945 992131089 202019260 460021529 58662894 258575775 654962714 951615893 741536958 959359948 487460020 587782149 763810749 984715738 446427851 832332086 526506751 612031689 104768133 856251417 117829559 321680274 42167973 174742350 212382523 319105175 835777206 964178956 961769892 979562272 733998737 816940199 276029843 936563837 690853104 731607682 591876999 677681063 983722523 997893294 875607777 906393014 606090365 804109276 476573108 964303355 240865353 662568686 581032680 994752605 392341721 786533922 375031945 694943761 631518761 879354519 665062775 804511006 669658114 942828321 422774826 851368806 455073994 952239497 787407378 888232406 321164978 380466025 970321282 998434018 479583306 666058943 970027861 972330483 478184938 961308548 817445239 888992582 321856553 349483184 526058283 607560857 263445182 992902098 827514734 842570824 658408135 665233605 838711352 922284475 214632088 846398515 826154712 836195461 809561265 990977185 744294459 789060161 729499047 897130505 994072690 995889598 901540197 954643882 433391991 916946594 807311378 961561471 699512042 806844694 556705808 694044635 706783491 861665288 516121436 975275489 917498582 957024148 202007758 579052046 882879160 987265733 247135407 898801524 221937908 917181106 899204128 949306843 816224043 864124674 332597193 416612014 435755214 954050979 884584340 954822437 47162361 511185910 651498434 865492325 236693081 290455147 671968044 934289807 694471667 826953858 472164264 529658839 73158900 834597115 813655334 941153434 894524211 964730868 551859599 752099591 273108523 293399238 701731670 733604782 444047676 882522546 890358711 890524529 716411929 946003012 290024076 844695506 18364113 66314813 102777279 995315683 309848309 843385475 365932459 553721893 185434301 573129825 515802429 642329858 685980992 776842032 354283670 614211059 901909850 919331130 547713841 901411069 926469269 969232011 177101857 515903554 232356834 924054874 473923710 720708703 273446308 350937369 390819910 784292255 290795022 971615106 370183224 601415835 413226418 475188200 12234679 84362184 698747129 756052442 393742298 410167514 608158593 719654404 616741522 811932760 630546165 853139795 292651561 532615100 739484354 812872791 458691171 821011828 989266895 997857252 3663115 455391836 138939792 154681313 242387204 449660033 120695708 939278635 600617543 696396723 231302792 459860330 703309291 837760213 806796328 913153747 86998579 997000772 287819869 643228410 867927479 914604703 276410000 458602320 750486212 886326252 155142837 687005134 238604471 842560180 304763524 688122824 260651276 358892304 631507857 978239791 789085680 816945179 128545354 660584034 912649431 922226640 968019257 996303792 907580023 988138034 703042819 970299262 203475707 219555059 978567420 996491077 253320182 445418279 355772182 894429337 486394028 537294988 98759328 179011270 823557777 846205692 355373126 657865638 607688500 764823524 256432262 769296332 221100847 753408631 898677085 920454096 208133957 768741773 855425314 957393507 357786696 508034534 113584893 136208991 252839602 610680084 594164012 723335750 301393387 640273893 807647561 944912681 868166784 978642266 866925208 933376174 257348598 610323367 417188567 945797468 639212772 816161846 311411684 729095790 815548394 861561201 661087370 767089561 313405015 646487285 635102623 963034041 934183356 995922954 445793477 927842899 6429040 768301199 937679546 939492736 100585100 744214638 550203981 761143015 667060438 765088903 465100406 662034623 155194910 753475137 900718638 956479230 97294429 232063472 687854995 769184986 902291072 997146927 250230496 451466454 634231611 929459243 851293857 968180190 349151512 844547490 995445061 996000290 485009003 543818417 520940201 679378103 197773228 391779676 447432293 468965597 793716864 880032907 647540231 741037096 429129693 735481928 327681710 717831903 152080673 746724527 198323369 849365347 895440474 926248109 771671247 795238421 307674664 568413896 178405542 574607782 184294110 843757224 541406089 783580770 337664695 683021030 914452246 939667953 23425276 372055989 386954580 483186613 534876063 571263009 579467803 721138590 178859044 582090283 625399695 733272290 544016316 620161378 279668044 542723214 297223524 608956200 900836092 998191532 752282831 914267976 211109615 947981124 319866083 896927342 457071121 794196182 381411334 628203314 685976096 716665049 587679124 737716484 641254783 787602469 206931606 742352027 193298444 775873583 155435973 279232183 558038289 832229302 498970986 687706028 354575725 768063858 809477112 815393886 570458560 869317748 864295172 912589158 343578341 845259041 123841801 765904982 929211352 933695337 459490981 642256634 152963681 906231873 628898766 750195709 399902140 453485889 541195243 645043970 491660956 829865489 311803253 657884902 147456348 579860903 99127976 547499561 106425790 914877109 942285525 954587881 158679393 817186624 107915106 978591410 398474491 578634795 221537239 687415794 726040826 963447944 494406180 766927099 522656678 972749997 947162577 983080046 624353727 791415621 841768314 972810556 236292832 360454184 625370911 663089484 106244611 570734583 318089001 412317372 407565754 882938362 179691790 413382448 321328972 440357807 981895444 993322143 60965593 766291054 688835658 909445155 998085542 998536449 366099327 986139806 328575200 515510907 775660789 940894697 898136984 995108221 225111171 512886618 113842400 958677440 171955333 311186175 249356680 970375766 252137722 665864098 929696809 934090849 557742471 833181522 781166434 838264664 138167166 790626109 866762153 954598810 901627704 979974369 918122648 985515647 944211962 947109863 516474443 618698203 131431441 317797671 71280487 494442810 394581901 458187382 809269102 950304695 56379655 306517217 393540032 407195096 340812902 381085830 736209199 994021786 6762684 620739976 809371446 974209056 643690327 674910307 798297115 798940461 355595979 580575346 129892628 520203651 444507233 701036087 636816974 960484718 688527008 906364191 106543565 156636160 565518298 941629723 909924204 974598349 837924373 860608857 714330354 810325875 450459014 649891214 586857606 980095077 216654684 416195589 567383531 715900105 847729207 862473959 604454415 978710432 331626281 899677040 568009497 843429331 738778369 773065535 69712007 439295227 483256461 805506544 878892352 932730815 697199297 941327427 716213293 958205057 196641636 533401786 126506464 777725202 171516163 501238604 398793819 784264252 679639272 803340352 46650000 503916859 546438555 562368242 225049377 700321104 320700364 531739677 919171344 927250746 313699962 691155283 839267221 844362272 423306785 883742647 934235254 967424246 829717689 930232028 772277179 923178715 386287662 938207751 354783253 997948659 489489421 573907821 303488055 855934601 288511353 506504268 189990404 339264198 500351492 673457090 949451627 980095895 190147309 549486101 859199839 905876025 476822953 653220258 651502167 751687657 38999803 552560342 100545691 612479924 122569017 350059859 832860391 927601107 610318008 926275359 825023541 825102856 425368610 760466241 656851410 896516672 839963425 975000594 875517540 956315938 128656571 898439183 897333301 905382261 446634708 905022781 588392871 960626606 769729029 865908631 475859170 830774876 949793965 962712423 624963016 630912841 301210683 726103375 512367051 929318691 307039658 488790829 700040574 754731004 968490079 998224853 832727838 971177276 258203850 675632767 109178197 714904534 564269158 704047042 342254556 371408453 390392239 570264501 759675307 783202167 853019850 861584904 808216858 994711905 416806977 844448858 844030455 957121191 5675402 463143007 567736975 602166744 92174845 527834641 434956871 968258362 206455346 266353301 341656055 735498893 80223850 743118219 227933905 457339962 316641625 727753415 241175902 589997189 778172972 969604294 870877632 872540423 976323373 985442595 792630198 895321764 898556957 982229303 573021751 960008670 641132476 733574803 662474097 875666478 294094129 362479972 432730413 571507136 380953049 512582556 681164295 978137016 138089168 303552494 764906690 768252461 556166308 789403345 670940217 744179058 122764701 906238378 185300562 514679003 177104957 896058982 231134526 312903455 615295901 789540451 216465060 975319576 654891403 904130100 412024359 592739827 747161909 987253512 269736984 485736293 229102054 254694851 904321597 919251403 704177927 792978691 77577810 535246948 794582200 914206226 567404710 979592621 444564021 979970823 951184166 997153736 323853436 855677059 399476667 658684709 566897147 677789530 385935435 824429325 87215451 608801637 766033589 998780200 159522168 540879092 193124896 372362130 350933605 829531322 50237194 767403664 192126356 402791771 2989119 500626108 18090736 323900571 257438799 916402637 829637359 919459717 827014878 988080241 732376699 896891856 129608268 767317776 27968785 998300858 931567431 974020512 807492171 872077243 18380769 62352558 122854693 503204492 954103224 962183985 351354951 773817097 91348637 532007505 498447959 872580650 590636848 671619889 393004551 982296720 387277667 607622343 151473707 152390124 493935230 895866807 528815729 808364658 915319294 984675280 561545239 670858202 503672249 561549899 568566173 609738551 384577430 585143697 9247914 130448738 919778218 965787003 385895944 872421569 906537726 994793187 931101124 972697221 876443118 954959433 986414131 994137082 148046743 892494290 118331245 508501890 353642473 927105711 776885384 915562196 698523573 961924328 793201935 892298458 14115741 485430980 630435700 693212867 307331505 804100103 795614359 958434269 564018915 620083223 780753268 998124306 381669439 460956765 578223030 622440734 266633910 702735483 545342487 745575501 199989364 959476496 393868845 428198094 448381232 597678940 786206107 952982803 912030441 944337481 104621657 841248697 981410432 985953102 714333460 854298422 813727622 876107082 97052026 996271221 684411016 940784596 401314744 818353701 121784394 676889963 476070618 763654630 729763200 845304840 27411040 764537430 899939353 994132746 558997262 753034020 274222601 469321119 921664179 964389783 348790766 920394515 480837855 789706648 809410113 998642741 376617569 563393349 416193456 915731011 57764616 604588718 986924367 989576595 653887244 864640458 3011551 189228759 281978470 567964192 557769359 691745273 631538471 731418362 129076622 371780569 427940616 879773051 547230679 883468359 231056485 721242570 272076401 868254134 951341099 957460213 38048829 923040025 301692753 523449906 89059512 865738767 794309865 990827597 704438822 937187066 185674685 266817035 213993978 473184224 867345410 876507464 532925357 747872176 867462069 964554189 975765461 989157810 80238522 918180730 271759384 530784172 459691802 641634314 606660752 616483687 962186186 965075285 118184672 627559515 518307021 739947231 440967982 579281723 744646902 811242487 880969917 937751683 42615195 194529983 998766122 998786406 617884262 733399828 217914470 921847211 188775239 340285330 194576081 443919664 670749909 866796824 209948523 529816943 47234937 286479514 8221770 964853795 668805956 905147980 137083216 554384919 85787074 871327104 39985080 870058150 373405159 696405790 484464805 781608561 876062465 983275757 863819760 956046932 315110709 943692145 370871951 390659858 16175001 461359630 738613717 961972202 928290201 949783642 321113981 874714106 257997978 633905763 915080108 978853879 277388925 687093958 587567331 707781100 685478422 802295489 982695557 993549627 299222923 679791281 393494480 851710982 545620762 990995139 498637211 661913716 214643161 779849474 482330715 515255747 230533006 576937114 616862842 878389087 512071987 933469482 74901740 979166639 522998505 855084674 118466404 597082787 456850390 955420586 31576287 362244352 67521026 955504069 252201425 810933173 674763001 860508345 916844344 940596718 333056073 511928848 58104931 382208597 611702372 944746625 277898999 745735280 555033160 678832533 368417873 801535890 910868442 914739094 822383017 882358685 262661170 942707772 196535796 319787441 215006973 449447338 310471027 336344187 161217579 779352884 130859805 472614128 541013581 570620755 847644872 974171222 921124297 975858404 814387139 845454862 581259416 903794145 346726995 827597558 829812477 874580296 645952987 666619341 336655618 785118571 385564234 928321375 983744691 990542575 68538893 175843401 821538188 981963297 607906309 811576716 849426833 861765984 366616725 907992521 207166844 502669516 509027431 613500724 111520140 164235391 300141505 887209768 240165483 926104111 99963560 549784793 610735996 906291538 539684541 831420343 293663965 446983186 388445430 885109877 415040644 431565453 263682028 482832055 620413095 770011922 544836512 578189114 450820862 725816937 891333913 955965433 382869455 738815194 603317822 889218436 368922595 672431229 162318237 806865096 224813973 438296108 54394154 756905169 440482238 865585077 291080685 545008120 245038482 869683276 942011366 991492107 997277629 998243471 192154184 622577974 144329402 612343059 117409423 912632570 280345985 394920886 3046066 488641785 238744965 923274425 479892237 849535433 745549111 895739124 879619093 970376858 173589231 785014790 443090120 891096574 667942145 725460914 152701141 300630794 970446946 983137194 441724273 743883157 35309567 189321797 17327227 909884357 647021097 689323151 917066118 925018046 575168351 648069900 292596192 312454525 303779592 783539412 345537754 890626983 752586122 759458433 269765323 552307093 562475300 884675782 591426992 956853868 928153111 992024290 760552294 777972042 85338271 350967398 853285195 927578717 471659181 976535905 185060184 941458803 65893969 192583470 253297649 689053153 238769505 993099860 60566377 569616934 709084769 955341500 193918424 378415377 289873754 998161358 707793218 816415372 461376509 975285863 270553518 860711891 724801729 781780032 262110848 411727974 319545922 690215646 437093091 955453087 422034845 888855346 65156383 310289864 709908617 746041072 338671071 537704729 96001642 212437563 723657817 807013683 452957773 585194504 424382723 565897699 298269856 402835937 649903932 818508641 693290188 948364572 38261072 489993603 471258479 528845844 662735474 698155754 127778654 185498183 328073534 378582660 292703850 707012603 743958517 811699387 886330180 979421617 300287134 348340662 831843817 843525896 240036943 730205482 628118549 896649013 44162750 45963761 250235290 623208959 751777514 791461842 97988350 493267806 556099310 686349905 910308813 953355052 360942930 517128138 247332834 743973263 390280065 746313883 357499052 755566199 520713791 966435030 211849528 260049518 11912126 522142152 702070763 850564762 301824113 415716376 652864079 847591382 630292513 871803432 51791159 801822065 951690552 965895633 542273591 699546219 676961310 705808639 606206206 660196227 184018017 556583101 49371064 75622661 526754940 875313374 506916734 976270676 719101967 741774749 157738780 677486093 544173818 649569233 105279403 352152166 578811305 711044538 820792981 890180033 836176032 922113021 423511106 478238886 614688927 736209025 23546168 147418022 52697405 243873660 321608530 957802681 644630779 896239908 206483300 279681791 644514122 780990210 259042805 543385380 907491289 916088738 651440318 668822689 708804195 945970824 992143356 996799698 269761846 533559322 985314173 995658183 721009338 860213173 29754262 289245918 259513634 578554014 495456631 900241028 406821296 900796050 654080898 946549387 58586779 625304734 280350487 943637547 389819932 953390569 527410860 706185997 637033111 949173434 647620186 831468625 451065828 659837000 288448053 575125613 122337356 911856300 435187657 664143826 692078226 940596981 851323126 898197660 412958827 566030838 327772545 641223439 630060274 784001671 867887767 929354201 565153216 610265085 836531697 881539602 572055136 929152834 527925797 953080288 695196478 929475573 893541864 901453109 402167391 543786894 949735953 995840848 264343004 393651016 854463 835084850 77233144 638630857 321830587 693307291 223860967 946709383 657193800 860297439 422551914 692010787 122958173 433718347 252715468 983390210 769304228 776141039 374613518 712122350 460478205 840373285 896733695 937264717 219312898 563623130 165584012 359640621 287040429 601538400 754322454 932793716 752200606 826352612 774841832 891305636 872001497 976047357 395604814 781097741 790838917 973786220 694376181 789759193 174479228 956737002 636125225 980704344 804653968 967022443 9527147 368809018 609706497 843349454 175964777 910702396 837779491 970435009 939606679 978934946 184007278 840829250 390105312 500764515 344005303 409212526 209831639 533657786 636962207 808878068 622982524 696230499 741016825 971896208 157866758 268320385 805494022 949426340 804081012 849521897 41643428 75645767 548642572 966151533 538557901 568539947 896305119 913247094 394185317 752059560 436294057 949464642 113712552 193894451 84120962 730297609 42217117 989513548 39768960 50550078 74941266 837465806 896725855 926349468 46339893 318625292 470401196 756724197 38181356 235420598 476838311 545211309 895276360 953627381 952019683 956349554 957341975 986852562 293511154 533737964 758620647 777639308 504631336 919943595 21901638 293645596 460510514 990884779 19783480 561609923 633824522 781286702 64680407 730437712 97108605 627444147 582805296 816824688 267682884 514880934 380112809 928624995 336203161 443648152 328102547 362904484 272863488 647016921 500559833 818279426 433196265 441770516 307837015 964630169 226188730 240318027 322115148 470572292 737728591 750593018 936259876 964398079 895970096 954758840 416828954 590101884 700789729 961319775 785684481 934975417 374400591 971041987 721260919 773792517 169032666 634406918 900692111 969199722 91366492 755485278 6717348 655877888 382299528 980298787 623733916 834735215 856801403 865457612 887607303 979362470 575397089 676881188 773204128 991939167 35814459 535183087 942194464 977581692 657725923 754622053 470521721 806056994 24705296 183476200 287053016 614635097 411166433 861692174 955530542 981888218 795219107 996758384 446302623 828392617 253306150 705292067 428379247 904839890 123631024 735255840 843455836 968389776 647710628 856304088 119285576 501646756 529385265 887330509 772139059 930491504 869902595 881315923 504735497 675768367 519823835 885533873 562874922 856940494 34642429 70799784 390306744 509283284 217224161 310753069 694297830 751512611 244474243 911902446 453426645 770757909 712192886 735499644 290221026 902850598 192237187 210301820 264484537 749865263 801871186 856647092 885285873 948626441 379954065 893049343 992010199 993924049 512156418 811381407 194124550 886397002 465344399 895733122 867660307 888966328 726213092 976254035 825516720 918356788 202682151 394103623 975112296 992522708 449881623 495708767 804223674 891139276 648477128 835480759 615186145 855230897 956054103 971013517 602820466 827280603 9697760 550268181 70942279 188817770 850620115 967711408 937056922 944009428 411697514 598637193 155157683 519964630 702177254 732495226 990107705 990369188 738012419 897076911 259610955 371731052 450068030 794406181 778439502 871707486 766868389 867420826 748829101 988854915 147921675 816097401 316372055 504095193 356760783 736207813 471662828 787591098 983974747 992189267 783350976 984283709 618209836 960823218 316649909 412434453 373781068 780383840 257245569 850117640 592306329 807279858 231103944 247456854 972626919 978958605 978761227 998723443 645077040 963798662 8711048 34113735 221299749 269941831 540220929 743670708 829271173 892000409 876578028 912879671 845693006 903767187 20808687 737218748 381444062 781400507 37894858 671602251 271915951 703986762 582123889 744968198 480752384 832974483 230168220 552138402 237238881 753087343 534104615 986703557 78493944 336925959 276434361 624147781 239566953 849594591 957865720 971345838 669541130 724290380 149075483 619909182 299302265 306942686 409520938 851412292 778556841 917084752 993838139 996085036 765170342 874657087 340044505 686424325 297071465 721813141 345549413 970994676 28167324 713529107 374907834 996785951 517400705 607306582 833235742 972002480 506251137 980320852 690063607 971173003 910027321 958694055 293024850 627410418 474740622 635341527 390944516 561872011 424180372 647904962 81666954 438584232 407189824 466220551 890125977 999345416 550060301 886652088 396915593 736593765 717368547 814910039 858628967 978462661 267096332 740224040 351349814 390614158 326385916 620536954 869849207 952409023 659145258 977472236 900035614 946793197 613490425 767464433 808140378 902648735 369236074 971716441 859093960 932565160 884580626 918444830 666854358 746931025 501217042 535797039 550565710 731209219 176591398 881236525 978344291 994953149 322626290 672615355 291064915 878792462 544849712 969588146 977874994 980396525 417955260 883619046 94266672 494954202 919349985 989734986 959267327 964838367 328870241 599744900 847590641 982562879 713187331 934447133 888367941 920946897 908942925 991358351 644817891 815521160 449730192 895786758 361989794 566379155 160437604 876945836 721801105 809771422 364055925 424941876 543047665 950015936 887059851 920551247 432369450 860838507 417577030 473622357 158840299 359460858 903355931 921383610 235101005 825645453 948958496 986048641 533982070 662942540 420262569 659317945 831548231 845229256 725389694 739642773 896765789 993233077 795139838 843057080 22005718 985056464 901066803 974997779 558550707 988757677 942763849 974669113 359704569 419595579 948304243 988620500 469424377 603817313 177776700 300340012 450318107 650790749 897214821 951160121 239912471 932779690 523391379 773686402 451774704 787851639 356863533 591148110 458728897 496086403 49390992 868663080 204853536 502944042 284836863 429761273 253868597 990669613 912314425 963355428 346239597 689268320 654116439 771424545 378435368 924452337 237488248 777326859 938824363 963194420 280962687 375319514 311133339 760090566 455411691 527457764 609320390 740748219 91293627 546672935 740614870 961656759 613180272 964648972 513020386 517741327 690039108 741010371 616930469 660494027 983252761 989618704 961402369 983869660 755378938 832485416 924835361 991698203 94109327 248442064 853831613 979915790 196455195 758105739 730456816 884139536 71005133 493938298 596880810 796507368 535769180 724165237 184944908 855181350 985260356 995500647 390188085 912923151 551901482 894473826 385039048 559523822 609208207 636433477 457355843 485245898 972692046 987607828 267812827 883840938 225196193 895962779 568363493 800400335 924687333 973076018 563186161 911836056 681740477 926849986 355102314 424397986 225363620 248672627 924317413 998719875 507017691 973882727 653138594 934593675 720662358 805550055 95574235 377460100 212222928 471636052 470608125 574799968 524352585 673378814 308607810 963614275 904675623 932907014 658633545 900435767 763563100 764446264 439263079 786494771 810437769 824697136 569966678 586791422 828564099 966677666 190376098 796894840 562880798 963207531 754186551 941964385 801437263 977617573 366799117 571447290 530862673 716470597 332675898 444613317 6379727 27999588 716548692 922048867 767193395 785692887 824167914 930318530 998865204 999324364 745749825 955763119 890684122 929762699 244673874 948851123 289981392 762239961 570760607 667802176 938145726 995764147 625701384 922675953 631327937 786848647 800258078 920761760 480549962 996735270 950055294 976134938 6356202 55344655 975955224 989483822 34748312 779537513 576395779 834878623 375805366 545342535 724025779 809298780 32988126 433154662 917252048 999362287 79110060 825695654 571717605 842675551 395941068 478560838 595840188 824332477 206814692 394609541 40587504 732177306 762963154 979386836 786977047 932531292 940569499 995128390 389414890 699826434 976054842 993990842 820629889 922402242 533538373 890055699 983370659 985890092 17363348 390965848 551360196 706015972 328252958 777661895 786008566 887137340 486794039 579653603 880021562 961998184 137623143 360751847 116134964 811272942 616246493 916464707 976854961 987254858 924230896 962605432 293627263 514539161 439407697 619194189 620456808 888989370 277508105 342794944 2347997 861245374 41091950 677027619 559105775 697247684 975042419 983640287 967961391 975638084 96783259 733150476 326142361 907056459 162494844 388023218 888551244 904500967 634893090 917152584 724911731 904246880 279512516 633583051 439950276 443750184 446849242 736211613 884674849 992354631 531074036 885097453 202896102 504761915 54379230 749127115 282426718 894557901 24613447 379589464 120263548 334111727 171022483 884825441 359362718 689796317 156753210 553678993 1675306 926184658 3238508 119862861 205933666 601458505 265553678 816127155 208691161 615888877 853724725 855647831 680324205 733938102 545769804 662249311 668600194 988514057 548473670 732984492 579531653 978668843 107210675 771639212 835287090 904777091 304072075 559827735 929991015 998369050 374149777 549598103 965834586 982317957 884719410 941136003 174940317 610886925 551276233 783214451 516420142 971437519 220328733 287863723 276286258 674911508 874465874 927615399 879520175 917052916 359372774 711613565 303765824 998878788 929338362 949429662 751917096 950680819 777553967 863033104 340795112 623808958 666876699 816436645 278447783 733998124 372770791 749047568 996324616 996532355 572689798 669775340 397969824 680233924 619565373 825820284 20743743 571656351 897418980 963935955 519886593 522247613 379540585 775418479 443752731 847826674 302332224 935139162 14707455 14928507 802907900 843488730 654952180 771980473 436847951 856362297 752251368 812108522 671320676 995929418 329067222 377106591 918904355 935161965 925951738 973173067 693994002 799523973 379503213 720083168 308735282 912460032 327452668 995137595 325376962 938351218 396952700 955108818 963656387 975636520 390229084 757018586 708672934 878943790 180537145 558150742 870697863 901844155 633201937 870663290 701897651 895479943 562942423 875590436 358693131 986260912 221747336 264813237 753792450 831807795 517765612 606989028 456513376 998374576 360469623 669265965 106578597 799531479 708384034 963044421 168008839 521003667 458621950 498434827 537151571 900697316 359558792 748244059 930968776 974602556 867620954 873554904 251437541 822877748 748380604 915034603 908304788 923773092 523706979 685046721 229126525 453809240 891388739 959647616 676820102 975836639 158570188 383656894 252394047 993070707 683892107 929753870 210073656 934126280 477926146 741996932 305083286 992972264 21908112 231519114 395374403 942303088 381075157 949996267 73050524 826033673 205972904 785870337 666882657 944504056 476276592 965229195 882224045 966382402 483181597 704375901 578186044 855892896 556893874 738424919 46063309 293769861 123178504 182879849 36538020 861438372 371261977 674185183 950639364 961497359 802042051 885912216 167624690 614000665 352003135 565248897 248563533 309865301 691196694 696721599 654653972 774410948 602665813 746728848 682292132 960285714 355631778 946290391 564517698 915405745 837253885 972253393 472175438 976500132 475252593 763283239 716324615 748428887 678972990 937951980 183057580 638396515 171776036 289087210 13009129 187316565 317069518 434055586 589520423 594659400 411005023 605057769 287340525 451509234 879444665 966637895 834770356 948264042 982824825 998588215 215055638 573678755 246379395 788745616 110504078 672203195 76421000 204142525 224814841 389866726 889702423 945538704 217170697 228366016 615412531 840969783 893751394 952353794 145496465 645348238 700626895 973737415 78457652 125510676 295677039 915343222 860770986 904894138 939587889 964047435 946161833 981943506 207921372 521662427 4170114 747584176 75658970 627247645 7804229 850641678 675788235 815557252 613311018 917051126 53523470 818835269 530447793 747032603 952406946 984962893 821348274 874202616 681750546 697228147 161832511 317833146 827997725 924818922 546003869 766486756 695797451 862066684 670991213 775613701 709266958 874998428 804644363 857046000 36130656 208357112 399158872 568156029 842871970 891692974 270418147 887829305 714710171 749963970 864284897 954016723 603850650 785744298 492105264 846084731 956358555 964960583 91949389 397806439 889988584 998626653 808005572 987806521 58898512 471161364 681572276 724455157 574861413 603449663 702386545 923709321 375285052 839727514 883983343 936363976 684516368 989799633 177647703 619461440 680081909 847089039 598916170 751787963 254439289 915853041 906797338 934581857 214977332 878491670 526927884 857223008 523707351 696203635 856395281 953547850 184421547 508782154 279145511 973714700 181242293 834180553 106514728 967772229 471201319 704224808 147996787 287456946 44971257 923688855 77020745 193272393 843623957 866709533 687374090 763912976 941799660 985858888 966294032 981476156 811333547 888988200 771005128 963985101 532819377 956704115 497928082 850776595 541930640 678377133 64786010 876733637 109061333 373418568 17674886 669022198 583936431 909020432 648715642 828807448 860098782 956748796 852887523 902241587 94586029 682263491 974738566 990492009 131399868 820026075 317549237 632064332 538042027 802042982 592029169 868513255 870066451 900146987 80399547 627590001 683057112 704701432 910940027 954036376 398100457 822822361 404294979 768162109 83658595 693258506 35598489 547204537 364277667 806435092 219084178 761766907 855639432 859373216 24439066 808096682 780553219 927389863 851972584 947691777 154862056 716882049 147234502 774814350 760818521 906942577 223044927 879695472 577887010 694981399 617493878 653399937 249593422 839886450 403746091 973435758 597255313 634188108 232265790 996838923 356575409 971785021 257395323 522917959 208227783 278053033 600610598 796013261 893874502 934454451 431774111 794887708 480597734 628323782 497610539 950212628 44820518 349045682 537153066 894107529 816599542 846963502 796479310 990895114 62817953 367001414 752835654 866210830 820673939 955695774 955767723 963187913 716441858 771284405 415044411 685398963 774302368 806537547 257564817 596576035 925229089 991153796 100864665 818735649 324136263 920933132 124021302 716302490 46670350 315507573 46850674 654707441 248477994 540373285 947631378 983530133 570634690 644113131 444995013 970602196 204766947 473535687 417158872 488842232 813930542 994511371 815691912 888133828 543008708 906456482 852066402 987109736 409347064 915003593 778197399 960213308 31379632 73646041 208828827 265079215 479249939 809655683 538974500 996567258 295103512 657289379 591757224 736000396 943336149 982514254 721473947 923732988 813271107 990388494 216588508 305218487 406770577 774256264 218299482 547234615 126849325 475251103 545595460 842175117 858026033 892949640 356524440 550047805 434589670 799041618 709672836 755312425 635895407 900871577 731396008 750741543 27752381 879318062 701476419 817573090 368477850 530604607 406016121 960142972 996459805 999355150 824574213 950678325 481105262 974126503 276655813 498182569 275692936 829778475 206018580 373397697 453931100 813105841 882857549 901477195 358921539 636533338 557087285 825674417 526722814 921058223 531685492 701685277 510158462 932335634 203970704 997386132 705591129 748464644 45740832 87751888 364488614 634306650 623561436 704251015 751953131 945150836 274910156 446091689 715868125 727501133 674038861 758237492 428893730 814870742 494682941 855633215 328039359 515991880 597737218 662693069 506567809 833365752 880961013 969259807 132718423 800569186 698855845 856241766 412711210 810583806 345962245 757895037 954596121 983229667 713464638 900698700 748198317 914661202 853816319 927142329 435423910 627140570 830742115 841590965 354815820 680413819 458684070 478033932 16110882 27786927 313979307 566835902 454564107 758327124 507095090 782533778 292014394 456498200 289216669 306916770 274970887 754824713 298338091 963678970 476209624 575973861 746950237 979435574 309891158 829810823 117366579 168308493 976167434 993311649 562413226 856969151 451879216 479383669 647221383 978591630 928042667 930619812 762075480 777888770 965748505 982321207 908986212 968191364 115825008 182684646 570037627 938160907 607904354 840513033 455565967 876594481 632943261 858948678 771930675 958335811 140877049 888078476 771530641 807903752 272204500 892602443 256585598 485362270 910740634 942127535 808195542 973305597 337556577 576763510 305509314 586513255 126228283 752518456 737977753 949752876 719385718 722669822 457206252 898813595 721203482 869342802 833344481 873960255 863914118 971105143 832178584 856266571 497266392 801355208 615011140 690107764 5314401 206864759 684036262 837563088 257533037 645780699 836555079 998495459 435348121 468919425 762329969 912770290 901859372 972659408 483917028 616463343 428875676 984912530 35549661 186467562 394126129 593514788 831279895 974008238 616331406 998254961 798919730 999004514 235954015 956724145 58987559 949965099 104829222 354535152 786394774 920406339 138396563 839757131 419799346 761315305 866950718 942492295 75795810 230151173 84726489 425096965 987376957 994384180 35202023 410695706 950023431 959796962 586045395 796958673 18226648 433977131 572607249 669649680 838025283 972507111 676702008 713681214 829143367 958460218 753139902 757698795 968375348 980317555 862661509 990287401 800419534 966338773 215647517 609848439 658592652 876811225 839709285 848992636 617159339 772192280 652905055 891484336 63713079 521927017 740535733 964719300 820630072 966914964 136341318 404231538 541091172 777973086 96607827 356094961 32189294 928887569 614570740 787196387 701788847 957475701 222951856 571429406 604133392 941788042 819543022 936838182 786875262 836774980 279308020 461148834 60607784 373346204 560873064 830928916 140311029 964253649 616540864 819322855 495509123 624175329 593067574 910627349 505593060 563775886 594601786 990872680 980295635 987177175 94930216 136574569 289726698 293883475 7045141 842818430 149408870 615799732 578959837 624634826 542415504 893838807 324304515 929480912 562965927 835584588 394981433 863262545 118707763 574013797 140140582 390021182 122372997 279669301 520217834 546341196 190122494 970397804 280424801 363657719 734275175 890828764 645066199 717927917 707102409 949373750 964352921 990988176 470315984 878879672 549401642 741397619 24519575 332968509 343367897 554978311 172446049 669462282 148216523 384616177 139272655 280662422 443175276 577754454 588289187 924396643 309410842 627157664 926684512 951047875 531225735 631802457 514227760 865399682 998019472 998871786 533565045 802981907 314907053 779960414 627094230 759692379 832052526 928041804 583020300 958144577 169889498 325616128 931406486 965796412 987349561 996754883 44159843 941354420 481897223 716317453 335133698 728192062 257079780 574721161 765815650 776012941 8526062 865567200 992506410 998396779 827436608 996461587 261918856 506697832 984512406 987007159 834033532 984837659 353740213 600452404 849717455 950307843 788640467 996886908 985093794 989804326 41120012 42897980 789864580 996398939 995186151 998805325 994752472 995665648 144738656 650652466 564595581 573789370 878407397 954155697 923887349 997350083 795827384 837997472 254500397 528561154 888693155 983631004 300026989 952958727 83060728 996457416 990851906 992835526 292613724 952185063 694326418 989532045 70545267 107283788 581709200 928014781 957191961 975728947 992257415 994549478 446660196 607972630 49466968 417322933 396846501 474439992 170745486 388364425 237394045 329037189 835671325 976620336 738984787 851961819 536798449 920762039 260150397 326861485 561530735 596641372 380108818 389269008 263684179 528413435 538010544 624249255 446902229 871769710 197576761 637788941 721353307 862890440 692463172 874376720 515618139 862204984 715524004 760105894 489956690 992084017 569462120 580081364 449151331 637149167 890577982 943847004 746524960 805049033 565610081 833465897 325065985 335661120 991216649 997725427 272528993 280510152 100475564 140899095 667622895 872076140 330356490 857205096 844353933 965235756 123110580 296927916 291251602 391196180 613230637 711073877 802795264 841652649 291119018 954667160 551734791 726911612 485807807 827599179 941110096 971867436 440224524 851631053 475550700 643693967 108600125 773222615 3739983 883320657 117435324 429518368 14889912 880336961 821735324 946452062 363700123 693362489 692946262 698966540 65929769 660573012 507952378 983100724 925864137 969875868 842629783 940601539 946377729 971279292 498214812 877429400 712298692 734363137 762761948 997464111 953448586 959216394 203551098 428844355 571187938 797519845 162086630 192439202 751179858 816893512 898897972 929107301 155540123 244908193 698889720 803189975 227033963 440277393 990907406 991636623 570137119 791134788 542654019 831247953 959536279 990144003 550684355 898998140 315404706 788913436 485372875 490573329 690353962 823868841 499592348 519310561 869007139 979161129 537605723 733555571 428144455 839101924 903495573 928888748 309589526 440500068 890081166 951685948 461320686 475245846 540398677 971947071 621552332 888856541 372195631 663535024 612250212 976970136 394159627 734840939 870093683 995059494 745163336 919063468 360648061 406807086 141468398 438806911 673973453 798713990 157363091 233628136 189930484 517212584 85711048 258910299 816960984 943997565 321668045 524655014 765134829 867225328 901497402 907536893 642502388 735575278 21186712 680759314 702217695 848400725 383433816 837116448 126292930 983864451 289911601 432917808 491926631 964648696 962156013 975171049 185185469 926202231 737220148 794399503 817146135 993454245 517768437 968538376 399052505 499971712 104128483 791126855 519359387 823433908 971934136 988984207 190999594 428262976 621597617 875561254 442575991 872955504 99528239 195251888 735216514 806116208 353217102 680322980 886826401 916012109 952625936 976672499 405315455 855911853 194347086 412130310 133905381 847277830 649683060 756080885 42444686 815498765 390987225 445865153 704750035 986128067 613537728 660297986 744073985 968724130 16843193 325314274 284518705 540190763 59364522 716101768 644153408 717380808 364013649 486003199 524091860 633426414 117508858 723503179 87655607 108099456 157456603 536979107 873883393 934778087 835852164 855601394 351364144 804941179 562261618 971223790 327931830 873208994 748987291 990196919 967629752 981162460 813395218 827678055 320968834 965215171 757723295 771203807 829973931 917031114 793896658 928387020 847938016 988003264 713265789 977585324 953234734 973832427 252353781 271034246 778014156 816779928 146650956 196177135 766237174 935412126 350287826 464937547 58129239 346048450 99649009 723880850 544391013 970227828 353376690 748388751 50668313 691648108 741115567 815377937 452831519 615083855 159213911 644293426 164956350 609307933 919607318 965720650 428519548 663394583 370399958 374788349 663653176 719026565 139747284 491003041 845814255 921000578 114796403 730478765 962219265 979880928 482588748 816005031 159096264 871479738 962213787 982459578 505427132 953968578 384540810 472930097 914109229 914797750 621053113 643284469 508773147 793969805 518597421 617932999 492380703 643282751 124969289 579153881 680822664 772760096 61477626 795850194 637733553 706287227 541840271 789419708 118059278 586759666 238651523 877216150 452575654 715486935 730490526 893502669 577696683 612866145 979722550 985855636 373080614 792147374 434247336 936956388 437707934 530799518 2631960 800233088 675100971 866930037 633786262 905810844 2423788 594751467 495213455 505222142 253812303 312516060 189733376 726982808 548289899 828785194 453410802 834678873 885351162 958658044 10398326 964098317 771123677 990580790 124642997 851087481 439734326 453251787 652443882 782314263 419507391 769187393 826515052 946392577 930846410 971903164 110618895 616019308 587804561 911921396 331033252 732052858 29115150 763151833 364291932 488287123 387029992 393681117 595203867 952950335 941789759 974599147 3832931 562144011 656499447 840856106 321007724 384739470 187306567 567341243 739181483 962347781 834702067 936207110 562573689 681717631 708967866 725503062 951829897 989896219 277710071 654023050 555119666 927340896 34086958 658318105 567380001 931190983 351238927 537878995 671958845 709286950 711709768 863510868 630418525 820097353 478295069 620964204 589288543 735849593 995831408 997946709 626984707 779175339 671814081 796107612 810939106 890447100 944217678 990077723 337942191 590215739 502254231 858261675 809394872 976427757 302494212 508356009 465655663 524851659 106986158 905844390 198028637 898217829 646175722 654832491 721644525 919719688 911995441 917637167 867514373 955704246 719456156 857987207 416017079 813296659 156087119 699910959 173753169 538304803 443120847 853049239 800988279 871815294 284899250 295339809 682615420 922300462 52421646 929158155 536110778 847656328 258325169 631834522 599604281 603166343 846812635 859876873 978166780 998839985 492990588 691527892 660727061 759610628 714649651 842331325 317218093 896905101 855231386 986044825 703174513 750475351 387409444 862586997 303153951 933399019 888428480 953233443 77453990 533082639 271333852 824581630 463845016 805088925 707691198 732605380 876739507 973222669 26990902 150694714 231234860 481368384 636690483 979435787 491578773 982009619 216496660 915544529 627738740 907014821 844310217 922913390 195955632 964094766 400201040 598470261 532075188 900061513 712989578 714419493 275371736 302100326 757450687 760624047 734867735 805756458 599597470 832598135 660843610 983968242 878736590 898314163 964250966 984342022 353683230 801333427 287683934 439306978 748554948 820519242 306249056 740749947 22227596 884064763 637277893 910833813 5459332 87144783 955090816 973691969 488375328 924615566 163292238 409346838 708461247 772278194 562150388 620110214 638601535 856733152 948540189 996903483 602989355 710371145 810130849 842625858 450520935 900305041 822729886 956832622 459073452 717160819 741345672 825017645 284144142 400912995 473178350 669422383 461960431 873105760 675422812 865939711 35070093 470811294 807060567 848264501 404151896 588429256 321797601 685519295 892112092 991126423 56336870 633066125 198685904 903048120 404100210 657995758 947541254 970010496 911097509 930742177 389321942 464936334 814037171 986768881 276850592 594046793 845017363 915850055 187493795 676196467 37834161 270062329 146514862 232986427 495801518 501202400 15165087 137558226 298184154 487827693 260457562 853950020 658005612 979606112 198135871 673526465 122452057 992909475 160443560 607681982 333032652 541456411 21447010 450851203 821175563 867245151 477164880 627458344 915850536 984860414 873588889 888973190 911374531 979858085 449624585 518614994 897046771 965944111 530424223 806813803 628435894 638795610 753748724 866420398 263477999 625038280 349750875 399773373 362360645 555693456 328281600 503540012 135092300 463182942 558451611 826910321 914376077 990039812 46712775 158613594 724390932 868193744 946318137 992765979 352278295 739570860 902012902 948105216 976617134 985193034 183267039 538791432 548056701 972125146 434624051 668661277 24670630 520201139 93794275 963126525 741448346 813240950 464499811 852008935 369809512 431561835 533839058 536171140 459526278 510975503 990610282 997116242 50582112 658929418 917485440 985354532 619212606 624014456 599147419 967189827 891735091 990463949 433115243 709960509 781615276 805441037 493442980 563556596 586955646 978500950 879628247 885159341 310656348 888468214 955949930 972637851 328158779 983584471 908307587 960765772 236233101 514427935 649631799 710012073 550688716 829410320 516517258 689123827 52586207 631348600 372685373 483519478 511865459 536127859 100842549 983975187 337641015 814223353 226189443 271792214 227036388 416492517 320260772 369188127 886456489 957135581 655507498 714356339 492552805 944866853 220880820 387049641 465316351 487957879 784026256 881159192 169429207 578978052 685315055 714580626 57990894 214445769 328676602 662552652 719996983 726107973 221505710 288550145 922121019 966448721 117237705 533195570 743474960 939312970 280114540 361108041 955094740 976539554 721561558 887140736 455137091 825058974 53131725 784925723 625127983 968388588 687237242 873059034 556211111 566262836 974438633 980484285 945784242 996835129 514202391 682715145 335464674 750723300 620467972 886951971 674253279 917315895 218176111 361116265 833910629 938229459 641488785 888787702 68515118 980940244 580010724 882492031 246795491 727440079 641924251 767903824 650371104 735786021 367829823 829672245 434915384 768389393 2584798 578779026 201420399 923689623 899688830 916644621 516351202 803996330 788928900 939961645 763349964 969777580 850582691 931748117 696952955 984893366 953457072 962106183 570973461 937176469 731843021 989041266 666456345 766952442 722324221 955257612 734153514 896389703 257371463 419210420 859046707 942613293 765794672 814768847 237806546 755353477 912568974 942629733 877370710 993181555 689802176 825571004 308383355 728344899 743303811 809327326 423916549 547517070 536161319 736943476 93314689 497564944 748697267 901015870 959975571 984744039 87163066 942624204 944457371 956690212 119160663 610523022 437215431 630347605 567288270 774742841 808205475 918286792 180852500 663030472 462357218 731366987 85254051 773125881 840352051 946254472 517262726 918898488 543194791 605434525 321190739 892427047 2133830 655013199 823573708 978789169 66516589 596902261 75163038 975265908 207252989 749817771 539622563 974320291 801762019 847853867 498561980 811690948 679030138 823589397 363195615 689545992 844756585 922810739 271141071 774450365 531658903 548058247 46733968 336762307 64514552 351015763 358354771 591697435 730724935 833753494 530222411 961319367 383269771 725716395 414828467 753908469 676166544 862511948 801452480 847877056 399596209 740873698 893408632 962509110 179665215 789847966 511488202 785634590 360885628 421778623 903952071 982209208 451576717 724862141 218969854 383752263 617073229 883148913 579832433 999133220 720398943 880309531 999275931 999360451 646889950 697802350 348134301 564764196 106144065 829169361 341673068 505360105 161984047 974437011 595655526 709441576 212010441 335040203 647363172 899084062 669216988 740536940 432259503 652717235 558571877 702784482 391922758 913440558 48115659 945780498 940527650 968712668 69113828 320645415 400529919 590235856 172347809 445138402 194022997 909477950 366728690 917457474 657346914 694698770 725867029 780712643 799183117 976058666 353947953 635537516 446825567 690293895 317527434 641386592 282713578 791976754 161660187 930020657 487952196 728741943 246610736 977786710 756168812 807601966 476924250 908550833 132886147 931421478 626950131 706694394 570028875 839226326 962605972 989500720 685174377 985351101 167826000 493147237 580521590 947112904 961748865 964632933 155606077 753193333 955146349 968532030 683584205 742696953 233494490 313721945 972192752 987118940 771537067 960114518 878471551 920122717 346172491 904660519 426559556 768196361 776728062 951004787 838943123 899661801 350150099 542099648 269254948 815676195 389588177 432867268 831686356 873510843 508024769 739002691 556398558 997619200 617918067 712801289 394975749 440680090 648682252 711817429 232131188 977279003 176470344 446543552 122707597 449468603 678345940 828085801 757537873 957145696 439307675 460806636 641853418 929041145 759182515 998214605 665612919 925013310 882290898 945857259 735305134 973326037 556120399 686260483 426940210 492654798 679959783 902671868 806327452 821052865 979843339 986305245 139640439 162303613 530991552 683169224 193579732 885016903 706344634 871010567 155673074 405280308 170444297 743593539 278053531 837556187 932914823 996098195 534754370 623234735 708976745 874409727 623349840 739463467 296290513 827035402 593423467 609885521 223899403 236232622 398670080 703583307 46122472 120329178 526446970 734313927 530873046 568553314 496344128 708370266 721766626 823323287 227798608 853644128 966474047 997470522 558194958 700852389 205275933 338419479 484800722 971025770 950388582 959899771 607054884 765277629 595963859 606242093 245721309 973136550 255215205 838433180 747819741 861207562 304813303 906360368 473159895 582285598 514755009 970429991 456050936 605766938 962583364 978663852 504331042 948914796 405381712 721436330 803868821 868282765 659147710 942341550 423341110 519872995 482544208 962794245 755191630 910701040 229911745 424403387 901560746 948316525 764463296 938617049 9872019 438350074 488048412 515474958 997680423 999318805 368887449 582992217 966896131 989952929 793593500 896113431 64818993 211863189 110776007 241554755 309931464 685194328 350455652 381456799 885683593 971231310 733895434 773347641 488352417 673530912 574463736 727553396 992831275 998884057 284923733 935624766 901284569 913354618 20923023 896202198 295517194 902434181 714008557 749969141 343198877 805830508 352327014 846719632 975908459 979190036 879586111 975390581 688573071 714144208 39463380 960114728 397102455 563167951 804633095 939781795 521231709 676452256 658078602 985623575 305822861 735603540 629390464 658590127 738236716 771892266 69409517 284227246 373986364 743938450 984256367 984617133 987939684 995836044 658275836 913668846 30481356 65563477 695256231 814560980 899801406 995705958 617376935 924001290 577750448 857431964 305109809 585462067 526902347 740434827 894392267 973302162 842481697 895775924 998853731 998928095 524763657 780313353 950120051 971248712 314039268 901287847 185633404 275072891 519381515 959849095 984504958 988018962 597431890 888364197 621539361 804994399 222204844 392561012 437519098 655566519 647960978 785742109 408920411 859655702 733499544 807463394 723023524 820307786 139746282 447801416 628446153 739631214 961215837 985695493 516779431 758757798 215531596 370769591 547347556 804756340 684536673 732451588 601075178 736800338 133863155 988473864 929234491 961475093 759834954 986071946 514054182 944298565 50981816 550323811 679327384 744472401 738668714 842148284 914257185 919014534 915045953 933478789 111833685 549577944 84709137 871645113 580128166 910442394 123775887 520391131 73836864 246911329 36669473 451918627 202964031 538574242 472799053 714543991 839032695 932594451 785229327 928164426 984163014 990261802 771378381 795437297 459220353 578203364 347130078 564266374 900538747 941907243 488743005 772187076 169005760 707242506 922574849 981785275 299234869 928463165 789471492 940122289 369146341 848491573 250544513 764168982 279664935 499173642 397898423 789076639 610542217 823809671 688329350 856892797 588580147 596994433 835231582 931213501 848683319 930192162 409605667 681369306 171760228 768646519 39824947 154069546 587186336 876436549 328473724 529282719 124679834 685945790 5097518 565173707 194520536 603853399 825674152 854025006 197847910 756758172 428815518 859740670 130036628 469222520 474408742 843835962 923865253 936912692 503707595 968416467 157389728 563659749 688634072 780572926 726837362 894127424 747439906 852192821 39824857 698220376 25320166 685277304 691873819 878192881 993571850 993577099 519588226 526832044 809673433 905360753 523844530 866947509 262565089 756656696 804025311 936292892 445062738 710916758 820679497 998300286 17321704 18257041 966007168 994104412 248064404 723726734 774442429 836602957 636796062 898186074 381945970 558342668 101057450 270082771 960546264 993805272 281178011 628043393 839175795 846634308 852330525 898525776 175892602 878398321 116668377 996632451 615577392 870308200 387749903 831433943 189173698 200963682 92655735 648050955 894256805 993242520 923822812 978882908 214376912 732842664 290322258 514439634 620840728 970978039 936366820 937444018 352566164 789626056 245798560 416220425 708487980 984945255 982888519 996540321 140758717 863997540 432891909 879804603 997452459 997973675 257300352 344039143 842092237 961053553 451387529 696891682 617508302 899859289 617133807 706382453 989250730 999201267 718808377 985174560 6483962 657010044 732517470 969461265 865626337 870145163 294063799 487983619 684527440 846073305 619099198 952643809 781080043 883212686 191750068 995826623 245933924 710724413 284536386 603721223 998579303 998614530 856473796 863320398 870445046 918633921 437386519 986037205 272954231 423551029 35847653 489524101 547604821 863249816 412512204 952659130 244940346 481018342 745116645 887717633 833699916 895050623 136225365 189582496 907064344 971502223 318910854 879345300 110087347 410633467 989445315 992438088 660703963 933811958 196615246 726522724 582909463 701468261 384169302 503004264 617487652 878662839 68622758 969958164 576737689 945518475 848744561 872345467 398795609 839314331 207591432 682448507 103877999 946233535 646968958 996443420 533475105 782636952 955876933 987183670 880333766 998045585 157982505 860916145 845202392 986149769 123035809 757632892 371235901 647539772 579342204 828177617 451105592 946460091 808467311 917137104 246568997 260629448 198808548 289176992 153499573 261113913 269395453 343305957 259584837 819926019 220431351 378487753 616234768 870923413 596260925 764789488 606079240 838561300 399835874 436679628 866040398 901871329 85137126 179905010 1601231 943342773 387356433 844748500 548106251 565348436 39533347 659165582 816018935 954030307 937107142 969363092 647693368 775125349 665386487 853560467 206312244 665643502 524594009 636452666 527007865 906741036 100660797 929576289 289080413 841063127 255521130 257261967 135741076 894794058 27730506 418523605 295351796 969547969 159382634 926443899 613704501 904604810 230684204 651570792 672345356 731916877 986861887 993976594 305621241 415829413 70446523 515146571 863143749 953150929 114726693 326476518 756124355 856045891 677936638 859095877 950869784 964927179 473562511 884661137 83610466 227791526 117079158 582676301 157556373 479889100 385911304 667575065 700880338 862733989 168890453 309697742 380592868 570706190 647652933 872706945 801117611 845875523 801825704 820280197 176307856 972824118 713850578 810464191 746312978 878022737 57614228 681964872 655287988 907174897 145745881 719559687 211203532 931204850 382924006 795718585 168535313 884893547 387049880 481680417 463281114 539078917 226974439 231598388 523672208 699222231 246400155 359579233 38586026 225892445 439395669 778269812 724709791 950370256 86425813 132770531 437260645 483826175 317231804 656939401 720452877 905781269 407626666 691483663 43907680 653693758 57844063 627884458 914168159 969946559 650385625 907585866 729632419 939987247 999036176 999207043 99779402 973943229 553293219 994648150 610790915 864503088 419725925 464620175 982710524 997903924 20122519 150102151 745750073 773948680 67166719 684160703 715893577 824628560 354361610 462677211 957016216 985594402 25044409 468120399 69026513 164868450 439806696 596006269 661141670 818524606 869330054 919171742 129275358 365452879 731488971 963868845 639952177 754099736 132869031 687427009 626476190 905512667 405975411 421465283 236201457 892533165 972264415 979150174 487914666 556283199 799143496 991107733 617524419 870802129 596274473 597364000 141835231 835545288 436899016 464492036 109624132 186848940 813637474 971388274 966641357 968794555 22426136 524645507 167289711 384173969 944842868 955304518 948746744 997021840 175855811 879489645 845123588 999124082 57069712 815797109 442664690 950253913 846349825 914252098 84040080 639193398 829968123 855640339 215403937 900765542 428197239 638680651 64280017 84620525 795977239 909097109 593923879 642105019 669132227 971625037 60595935 454325952 784497240 807200843 497744674 514264198 202590283 372261207 620566420 996243724 217892205 486698864 36806055 331652807 876757958 949360390 413997388 754164459 632926456 917044793 231392330 475109189 718209451 897763390 114033258 986397036 296170318 733210365 168148739 873546617 345295437 519009088 634590109 650731849 432090925 972907658 644766432 853103449 774106982 933155210 951750241 978743751 909320174 918673909 734139690 941252146 25544323 377607215 122807049 475342264 594416212 943247602 972144093 993305115 32297341 704552022 769438397 943164562 636238512 636440314 793653925 895698295 720094838 767841085 979077603 997753938 463136419 862408597 345324886 474368173 58338541 893038580 182203223 380326887 759381376 838251095 286326921 910950868 250800229 726078893 592197900 812716011 50535283 194472560 268154243 272982251 704556280 944609852 646628856 873285549 48694720 766789214 174236171 305652146 822777062 847079088 194120739 739578766 584365148 826689778 530760643 550836636 853647412 921903132 474337223 497894170 292527676 299243400 379328610 866980568 858559331 878964568 653912469 978324706 990955686 997328512 659518745 793710412 119487160 917797218 449282912 511123771 949243202 961855209 41457450 207344568 38689766 926450065 983640421 984138230 52288459 907511038 29394418 368662907 206034373 389172120 497216673 827842973 248922535 337885427 151148153 224105188 186133906 794112979 49358079 842247605 945193280 953329318 598567669 811255600 806833052 973128762 820864650 898227562 433569514 859876374 960958364 978693499 414493075 671289565 267758941 879020879 252889786 644194419 632015429 720320798 773076646 952360973 733598022 833278899 525041872 594091963 696923187 769995648 581859227 850905306 827975684 918231802 89350788 91580680 599993635 792386138 101775269 931789153 585205970 751232730 760264220 852294432 599452941 981554156 116609795 387657957 699160330 991225340 762864879 836597126 175629003 822306517 847831136 870273935 139319731 904354493 622005702 841393564 245271297 716565069 320934568 891130948 134206880 331560682 384191474 528201696 886686301 972310134 754476004 769501541 50015619 198886860 381386900 519321887 542379714 689960053 342942883 470228118 397021771 531300790 732355672 871441046 421998598 919103194 307900308 976852471 344022886 972276710 441389040 706140184 646275766 994842879 859200307 872221670 908186355 985087379 48447591 914970880 424446637 479381014 693903226 902850906 418222755 636595813 745845730 785803602 804938896 879517005 133749193 354329350 743975775 803379374 176941907 719588870 463561507 743466705 379202191 593876523 973298147 980939147 487233570 959843947 342735865 989518114 892995980 929787105 531086665 738214535 295192790 644681557 705171367 759694936 916074769 941164836 597670132 811878829 683076102 735280597 633626593 747522313 883628318 947272617 188998424 828309248 738817520 955752872 871813267 935783808 448446304 763172354 697481323 969419061 102749024 135860946 859882755 907750245 217933996 503071106 700638122 869104925 703720830 915971649 627436192 633882920 2034469 962697208 776588874 897969177 212849549 804489378 389353777 458199306 725009414 979493304 183926396 306266528 435744216 442570827 307149505 590234373 756637731 873573664 862019107 904825448 41423984 221046682 693210262 913221299 178073560 209923306 227487303 722454699 183877950 751514963 143325332 610123884 402217658 913689641 673135327 798620116 176375741 488444719 572375832 766109146 490227234 999338223 622073063 865942938 899086384 937440319 616266410 676296009 442565516 455684406 543937234 600938539 838234548 902766052 226319444 238812153 488876470 618742707 120877506 597340945 60242722 415780297 560720418 818972994 238663429 689583064 156359198 745630103 616472813 993138030 504833943 807544107 153180969 973005255 329624682 331894890 341449814 343038167 450322446 960335909 673270443 673344714 889984665 932546764 673164773 840680630 30653596 195748142 519141940 861687479 165007717 953402227 413377161 445183757 833070710 856033199 397655844 922306482 485350711 914678566 875422103 945449605 31520679 720928184 856438455 896711252 606803347 830575305 670351251 692617192 208296015 634795960 88155895 118799203 946763179 953693028 972708648 983541229 173119102 583658840 141162197 797516243 390726343 802865466 169993228 676290924 314790883 328906846 25024317 578662820 820884454 954154134 311459331 893102310 152546386 807190936 343190339 688510634 9320609 388015218 95885003 586523945 859808659 947150116 535080304 542416479 741383324 920639506 106861636 238193724 730784974 877881423 367161361 639475599 441090390 894832357 320666785 423614396 370585756 391956056 121163724 657958724 366264407 445612475 41260665 281052310 273824509 488192836 81122866 426441331 942049582 995615560 673686461 781719048 451783746 903485035 117347498 186886596 578003460 810283479 973675167 989832720 524277261 959786937 923806241 946373680 836050558 973530278 294678060 524820214 483982233 532531180 155736928 574374291 349807311 351186823 381442808 810219878 557064920 933940253 300163052 736476419 671835072 903251605 271139755 884781050 406622222 827988842 232226176 296110571 954117958 985593610 303270035 509508819 45139420 607419159 364801489 638585969 614482269 904928729 428459989 760057887 393738080 695122232 820472950 936226924 436285931 810733255 249488709 936619666 815236942 832973654 856648126 947154995 246958650 745468982 475451528 991758231 80517011 678362417 659887127 903806991 277609243 668672055 264929546 442558420 828009496 881367019 599908515 717839066 158570943 649601242 89624915 836224294 379831606 391529583 905988322 996970770 554009138 595412433 523842113 874646924 671623649 820427691 114375463 441300191 151797552 703501547 598308124 665683688 878772986 977772800 945951273 981121353 646822229 900442354 227964083 558815062 814878927 879175809 751731415 756963219 852016302 966586553 11138958 933936473 6784308 172214379 833608438 931059295 13561117 491887428 458088487 758173473 593720137 594440316 357132214 798669356 934538097 970152653 770355748 848232532 55039924 807247365 361926975 695459409 851425165 965499776 362573473 472560327 87154873 909994970 497342508 963054538 931194390 952476461 436189829 510955255 323081873 517844638 261181932 775240941 207897919 760604139 457555190 631826552 914265797 990222560 995685449 996340390 115873835 147269944 126409136 153228961 713582908 838843972 414565913 915322892 536262849 588464002 821007631 844519326 790031302 991288947 245707725 569074606 887460688 962553826 858910184 900811925 741501078 853554621 64690333 221341027 834319184 837186088 135060048 506644660 222603322 305059489 112767453 536170797 744994292 938587600 794146405 813443033 514963352 606182874 360350231 490567883 694795748 722027330 16582903 730615978 203998847 376632480 362339911 785438976 313141163 992948789 92113391 807234012 352047781 557111037 783647985 837399955 541056047 563334425 770088202 957589185 301284922 751679363 551544649 945272712 444355577 902792411 336351901 597814922 358151676 442430217 734434826 868659912 442069942 617603651 315550229 415635537 943019081 989176717 393242221 870386996 746234561 798584140 586518188 725106217 246639038 459516240 781679780 792588259 544636746 784601941 476302438 942667102 315426058 969502265 87032228 372669917 269526799 909168158 531751284 628796627 107031398 242418592 286205998 877942429 237127123 656624922 755956507 863640870 739562663 793470122 563757098 978331639 571072037 908333872 647839674 860534521 511022966 948629846 838067537 960896653 665983027 774798751 195106669 415302491 732323313 872365376 570477529 804014299 748857876 792100331 395923611 747695715 141205780 202501791 245592123 536292369 834351695 978386073 567747276 598218873 534317088 941107652 7356432 751249343 616149894 870886663 495709963 908233266 467259532 571701142 41928827 147580180 215643701 219244970 258037350 532564107 541947926 682778022 719269540 820221995 816612905 878256588 436410606 673515450 591043111 983448418 456268610 688016246 613285956 770178282 753033908 805234155 831251109 990746723 983270625 985263714 429101154 836891188 499267780 855423744 667728398 784913779 643185108 995841514 723934099 774401953 590090012 832058588 630911216 852886870 70324357 543886176 348006060 918276254 296796018 339293749 368099598 810283972 243214262 780751579 713731459 825786447 33383919 850195889 101096691 926656706 327599180 849682749 436846991 642340048 454048394 662840125 684950023 878204274 29327693 329702472 464864346 716815806 238424435 699386517 569606672 892664171 920584350 970329408 25927014 639801874 862218 677532870 151961096 402961277 987606831 995119226 63715458 790093507 270938419 316777687 238847036 714222823 443643565 659371514 474699292 595908647 996246934 997888206 814517403 928661831 868871306 899400942 257685571 929314146 802151768 880443869 712267853 844950668 424418246 662119230 225940261 778839707 865597064 973114473 218918759 964801093 994915189 996297216 775939263 808705943 301807253 934265861 148958100 330677319 14357562 733919878 381340902 444903770 725627108 782178085 719234510 953976637 143715448 189825929 42394728 849025170 770915376 954594764 593770224 717609340 13599136 700471344 988870129 991954191 163316946 337930769 764611903 795035362 380595224 934875375 780405401 860877041 245469211 380807501 252029932 578506044 172799819 520679462 142224344 860452726 982741859 990530674 316877355 323240630 155390518 742783525 657777042 797992588 157395345 963336136 374094255 737427087 874083668 890902811 771091829 887372369 184243699 849638454 307712544 624369315 508043838 868404353 720647214 770715255 387169294 764624953 772261108 867345748 137769787 778499115 333655037 340334812 369720866 412819852 696043617 950697519 848481413 878542717 20776124 630959583 411227796 613477155 722276808 989354360 228719615 861589075 415798256 580420765 337135873 822920640 912909783 961504458 696833690 895600723 28633858 656266398 762160588 873941762 369761788 902417770 16395735 920495108 386934783 756632013 457562732 987815140 427917117 869860398 82630981 954721889 556474842 572425797 477085496 594421311 906241329 937874801 753053483 981531051 274172334 343561406 39411521 80247775 91629404 209017591 464626843 628504400 802772445 965707976 800808786 916851074 412223754 954363356 663204239 667475383 707392014 802373015 805771694 928656808 848233660 878902368 198312988 553971766 702724815 876107479 913768633 959496149 861294782 991678399 560396049 995817389 245021591 436930183 920338841 960149032 394815975 838313889 459540188 689230384 642347579 723541396 300747764 429160733 526985957 754267546 382796482 500357248 650466400 836489889 515407771 903082758 966705909 974955399 708690562 710793878 85730392 98778554 775663577 904039133 403817014 901001674 77337798 438664200 508781226 955340960 505980650 763260848 256730842 808217324 114590489 495024389 6964773 850423417 166497179 784249440 24289946 836907618 361165192 420637347 96313024 549387568 106607516 406872293 994674221 997603201 731854980 871224915 936720093 958842763 54653979 87379101 489912316 805255830 117326981 675974657 153259543 928940710 910953797 941490771 614112378 750187701 214100385 315903528 333744844 963899853 55314869 168675175 806558509 867288849 112849251 449878636 494525500 751733600 814691564 931770077 983806984 992057036 127053814 309419360 175020154 773834566 818113390 968542628 539103025 631966784 52020446 515718637 79455777 804217568 560655365 751377427 346086568 473204649 827260900 894147614 793846136 846870463 605598808 864805787 559878747 888492518 569697708 990431117 553405827 983112404 641822389 878290398 983555323 984215690 728545985 933516909 733936042 851567662 739752423 813821192 290965354 391018742 86463799 199452632 977867037 978581019 340018018 715053966 428179870 714951585 148659336 442089246 909744824 911648004 814139007 972149429 402286175 691363716 839997972 915323163 898389602 929766474 627925970 769760201 354328405 875745678 734808512 748580018 268739279 992328761 341897904 676123841 159463979 298302060 489056571 750498510 90513221 694486970 757707327 911832958 148161008 283679734 401179399 728013027 752600922 868120721 68178792 257111565 94188594 95592916 833419311 900650566 343090360 476511265 972722993 986351576 955810124 963679067 277330838 416526676 470778750 889366506 555335083 718199497 661337739 742294239 867816277 923920440 572382834 588910533 362177988 365122385 127273282 186239146 87473993 599454541 890707062 942709671 77805637 686437005 368506885 851857052 55692491 758003496 596060447 821768162 304634979 932849958 993740625 994583563 111925359 597005506 12161552 596036000 691163267 912013563 888200626 905424602 218590828 524704430 63371990 338395022 658277185 837859590 273956032 645546779 966767023 990716603 76627197 936760247 775951080 968116583 475487369 786506082 515130303 567736487 52370587 132516749 443603722 668798476 748337611 784256856 439943713 908291718 808305719 991557808 754493391 829252296 425051533 886063584 303384515 488623765 699609113 748680591 443664673 969487477 665990726 879419126 358690184 580596297 757739250 923396524 882288394 994123281 351284263 450310550 73122700 312348652 921141577 994776598 925759616 942754977 788756326 934239421 69050819 334265877 468760237 714098011 693304508 805958667 299536656 971477521 228400790 992260019 942985052 953915848 890874643 985378655 906482726 922048225 82617826 380780842 953587590 982287035 853070149 942077547 53181205 217139663 843911809 918320704 105210022 535539364 822153537 965004094 66458326 185405204 242759670 438642449 939805594 958244388 732259925 942037496 960161838 993078585 975214068 983514705 212572837 248548890 976313178 996486632 562383467 653356102 100304048 630307672 419891667 697608357 209446006 511651184 697079852 898723589 438391546 968167224 614228378 743011681 243484659 428217133 259396262 836451498 507159368 874499662 936055970 976031025 311083698 570727094 598766528 966151790 102893275 338085259 837525186 862945427 835910368 858966911 413954480 741075669 491024710 806283024 979169760 990461966 620780033 715807815 988096986 993910320 482897169 544363057 133367307 245067427 553579471 752131124 583859983 685756564 214509784 439331332 747375677 855950995 387580803 964297838 840056247 874732265 766355000 800229696 26095990 750461064 155832399 244486826 933352488 937676967 249307777 416114778 612510415 666829421 67625819 683096796 581023842 878198503 121296364 950461499 816919995 818317971 287120014 771769677 442562224 519612224 833234502 985270140 276827732 980990091 630976400 639787005 234689371 552546769 913389932 939766057 651860738 722228383 76171875 870372476 941919546 980238676 851751848 988368715 747718946 971392122 421575404 536806240 292224851 558919014 249951695 779175607 770937307 948648911 555380347 829178170 369222776 531936963 673237117 881995253 312116260 873007201 895848306 958731989 530909358 626408895 959655589 989411660 840247885 890493077 549749267 629514718 235045448 517690738 729975353 756373171 297779551 668759605 75681846 957937339 572477620 616725640 613182682 726210160 94725871 984790459 549326142 721264758 614457382 728647755 712735919 770737404 990202387 995204863 440090762 835680461 763495285 956872740 875547776 972784391 941511464 945928572 317506641 428452529 636177163 803691852 253011722 921144549 818632195 994634627 582722439 790357707 565530742 588832287 16469859 629833644 160500455 800574417 635395388 726692872 529815008 756109274 852705631 860861645 719177771 981781672 131869035 241464080 76565661 523794705 355287975 596030579 784784103 918574104 761453660 947196720 653765404 956525274 400866606 708771375 493156418 521505979 920103645 935638095 729956045 789502240 903435701 962514099 721524304 925077242 381451520 982324335 343877428 963135746 984627556 986100364 477108360 714696885 513801701 526737435 10154988 452963929 824923965 893727952 819538727 915280146 373698528 922558631 624278609 668278960 681249763 878171354 721093829 775058367 790960291 922273345 355270540 607123544 630601666 802995889 8765265 455866659 55310713 836084432 456146687 472578896 613659866 974958005 175537281 578016702 283358353 957369754 623806684 870003983 731648997 967182355 707681161 851995748 708719752 821941435 881586571 914129016 845192486 920944202 9495255 718824745 220590936 828513334 152520207 519680913 449652757 788499345 469567850 815201956 613370690 700971735 584536915 838692348 267195583 952314538 385643039 712989681 739909687 953453810 869963542 943715575 9655169 101343336 162301648 237273295 214472128 724690600 281664973 670512841 61201807 539442206 96902810 869954860 174104151 226490816 968079746 971298278 462534258 495261216 362999298 487818347 45420878 673598410 960694403 973384696 457336276 886973272 675955057 924329965 62994582 679266873 908402090 971826754 429688730 633624204 495987542 913731199 827502628 894987635 694716162 705768266 536085598 649401511 586387684 790313260 823921747 888996711 631069444 852492117 170859516 573247643 443793296 658303546 861903461 883961908 229403198 346217648 579607538 939127120 229962900 589788659 852247893 922079146 215558822 636414527 522708451 967293450 308017626 950067961 385447945 754945356 749117099 873423505 595471009 783038276 15920697 291820122 983124900 990777014 757704108 985693681 567174703 800708870 373261626 525343302 841463075 865830156 361590725 662687260 912157498 972322592 943194813 970459153 897479019 948312966 365030439 912433065 68557250 731943513 902524191 922803753 491228221 514158608 755649327 904035863 962887861 996518658 955555508 965100719 783473446 994600771 248447754 759892248 205237403 540481894 479370281 566273108 681441091 783338609 115783460 991416456 835355950 951172760 18076171 955299099 451244813 566755370 404932164 889854467 464415957 857787587 77337776 763125738 765767078 853280535 577504626 728846827 674167950 745264595 596010888 662070533 822933026 872547799 936832657 961915876 439024838 956141762 225653412 891155274 722274420 899987055 209398574 630073948 920228482 982411693 652804499 996758342 936544200 973332953 611472537 824101522 257339488 410860771 993357279 997007832 515890124 850698860 221040882 657044545 609266815 815548680 797948873 821245831 331928642 537164309 636456998 785106335 106027820 894984410 400384981 832487423 137152162 348079198 908561333 940217208 397275425 667016753 707828055 861443482 90577672 627563003 896659877 969501990 458282984 928862546 383490691 780121456 596924496 700395954 213472846 812138933 640945117 694031184 456196602 600830447 579616954 685043570 588735753 897976614 677847662 978463259 878033444 915093389 133821051 957610387 245362957 795188642 795469834 812349775 361912352 565902420 801880294 942787689 939881075 971487773 442237566 824043380 778221483 933394641 802823032 894703772 227897438 631256922 678581348 933936734 994428907 998489480 935744263 983398856 483768638 636501345 904801328 973048629 634750993 755556275 181798497 565285796 220906003 849138435 301343722 619245358 612682595 884871404 349681526 553735835 549653580 927328733 833308769 989277387 762825656 924693710 41355968 649683356 571521984 954966664 738125702 861927541 980782582 987646365 212528821 650386909 843751420 881969714 614956186 891251544 59513777 274159286 842877531 864678055 948393261 952664712 757806603 982631730 532465155 688743066 617547834 829645779 834658888 936711021 753442666 946372578 118598419 678442554 855942282 862622730 748846655 831698970 916850007 920805177 796758911 843616812 749224134 823515508 286623682 966476074 688091156 694070733 579478777 891271450 237815937 580119619 703767591 972447772 917606491 951184252 383508165 931357114 864443281 878635094 506855251 567669537 574724137 636931280 742945242 847348687 815889577 869802970 253008427 693751210 742942656 784597863 236730295 588018277 727863676 750679755 760462918 893608624 289511835 829518142 186975860 573971853 850729652 983244559 178795319 380655824 168418871 573848234 461887134 655610347 956064658 988348764 557976674 844721145 684750255 900140663 890348868 906260912 263709838 444709644 366353402 473896901 286560760 647875140 280221710 851936753 710992324 716427783 170088994 569989486 754964982 856575873 420647988 848952818 229061813 827002913 791425570 817852997 895281605 997682960 58767440 229188263 65449233 428387605 224126930 811893504 990559019 997955102 572094006 968304297 334176766 929939810 295829277 856467839 821459301 961383336 397718289 575681156 464496987 612678097 591021090 865774975 889904051 970376816 473937295 524546678 8902803 205725363 802325671 833932855 848080978 920883107 506934007 998466987 902802067 929764120 764842074 963089996 100367365 632198434 199757725 877595958 787621376 966960034 549284742 661147618 890521411 959754467 890742291 965359816 764131815 891712418 928835007 959649023 798520311 850005132 974478774 997223046 222947247 480472811 493342518 636999979 365327198 482800375 647924009 753909971 847170301 856068782 668995416 922782258 880446159 943598438 811115300 839954185 463498179 626933352 664068265 888794406 620166377 856217637 696697839 983918278 412820930 987660553 665450899 767808569 749962044 894213492 791252948 963864343 707821933 961765895 95662884 106971700 797144356 877549762 686302238 876197124 76259952 659291323 977105060 989664804 268017390 741675036 758557674 823380264 629455747 783531996 174255879 395350402 183524104 418912611 280580976 992179642 799647466 887336886 981160463 983336469 219883661 824157419 372939857 481607423 11693738 206503765 468092345 877290501 135690382 695654126 150126566 688437672 741440599 854621332 487622059 897216071 527550764 906599100 156583555 643657870 705105503 960945381 671023522 874639412 435433494 721927478 85484539 714229583 645500009 881673877 787487059 798281608 136690754 276706086 774685505 811538602 93532867 570650949 500105879 687744068 275149919 877528628 173350653 223689282 723105785 765113541 536802725 817191230 921393886 952776812 785298759 834838251 545120139 852097029 689046873 968382078 583410294 788319535 136415665 995209294 513691529 653202662 18437987 669983350 79073552 236923441 732343972 791150523 149499494 541725485 595986453 773039787 934989258 952528181 789901890 833115313 622963191 661941686 727474135 787890663 652744215 725840858 36208346 97868028 828304753 936949207 21021230 799807511 80167794 383665568 458842091 560149286 857202415 970368249 474098909 944815231 443165499 987224899 603652538 961801526 369585549 433119256 166609917 312256817 332172708 417335790 710542364 865010298 737047169 794502251 350656070 952019747 692445992 979770741 446788661 453487163 266203465 320577774 593454545 605851289 151386383 896475282 35621281 860955589 848162124 948291033 566506436 600241308 458808225 919331836 641274006 851283784 237002721 387705361 931014052 960759300 707875736 744597653 564574971 814774550 595336626 685372197 404583218 490498425 122316697 306084068 958899986 974923824 48513154 155987291 645897532 758509809 405547925 842686037 935603689 949125764 134825428 972808322 825056451 844999635 561540186 931979057 772294162 950585785 309479020 966135690 701932417 979586770 442720432 573794120 722964082 911927473 394760639 809978971 556982796 800551486 928027767 932046903 705415347 792541635 382745511 849809873 682941879 902084620 134581878 165534765 782972482 925675860 897232998 932505450 737320662 784857722 234631337 804402352 489741185 884407107 629134347 993559517 476431261 927094015 577820676 931476851 880897220 884380877 537948206 609883768 401811795 963632926 947433419 972313722 880693992 881983459 43597346 705217267 247331525 691982848 894197725 988210899 627221351 851950875 918183483 974181465 129956944 700851300 584008886 685280705 296436938 605676041 387584960 492639427 475549876 479742594 608593844 714875674 412316924 581698542 769302738 803583419 821226791 987328894 871702470 902608841 160334979 731072441 354215314 775377939 824679719 980335726 769392004 859667454 23420523 145466671 833494361 859296612 442195392 954185849 160411730 197770283 414070373 910417850 262593974 500041236 716612768 928729698 318953758 765018718 149407319 982101161 311205621 382432588 826508613 827355246 494188428 619572941 975674600 988670631 489224404 692019605 333045159 769200122 496228944 915928776 20826497 118294040 944122245 997065002 926395446 947076665 188948213 584662997 912751945 984528584 174982340 190109701 83087060 912463856 840252877 849515932 291055842 723067152 236525609 369647280 56606014 577372226 239142609 288193930 328486206 974070123 896949696 931395889 17645353 444539605 846402214 946601514 535108503 543258284 283987671 518860331 664163580 970269327 141619899 935191998 854251029 864442650 894960412 941150292 522752768 528829719 803014592 848230966 403831861 969925477 84191431 188409777 392294216 705427897 678868650 939405468 115075668 230347404 691992448 933523377 313423501 465518369 696722302 829409506 831352220 970744329 245212039 854919112 820810166 997306295 686434766 785362285 19350416 826132174 605203891 617459240 873551137 886296452 413821753 901531314 984376698 996289556 738667698 869722117 172421033 412639612 55268992 502946491 350987376 660663331 343135507 728470326 623365126 832972158 772046553 817904705 419307103 842856333 678482875 791432430 87770448 789009179 195754782 448016789 269425895 314014009 88935792 252355188 440283227 839295091 699849639 731177061 975816349 992293514 874208107 988339500 328445375 783972807 995950029 999334154 921121752 964012352 436848273 438455952 382096945 578635258 311554802 455015276 550882045 802783441 114615689 965203653 324232175 420252768 334811813 892535721 172773551 419223671 721191487 820415929 712776092 954519557 624084194 867257669 585631269 997528200 846387819 859125668 447820783 652286219 733782155 989691579 895697112 973695142 991550075 997136837 182324032 735967588 41143122 849068173 938656414 977365315 871541285 954403338 293823253 987837770 191130952 787319652 656271419 971230325 710252939 752495338 941156861 951369333 325618192 640379457 990106896 994733484 279123881 342553064 739791834 821753420 459426816 986633520 208026525 403321635 427139535 777971567 822486615 915407071 243694335 889751824 468038812 932411296 334867500 646768682 603403198 655378602 738669891 825947607 7962159 633870236 971007375 999038497 925195648 947059868 531866359 859200244 273237705 545912348 221733233 912578438 743246679 765147137 32281093 916469869 952205363 961183078 617656372 876811768 845082366 946229086 248327761 985703894 156766562 247656970 384988337 512299476 246236271 864896411 454876099 544446029 962064095 969196475 94255214 798414842 927694239 964312514 873712743 923476714 416929219 498256072 303144608 887712540 347647732 429186035 385738061 708599122 559935478 862830455 366013019 855554677 126143512 954783592 713893197 888034156 832226769 920303315 933309500 994833525 558656970 789538950 306831020 737260078 256347506 770069110 788634530 998806406 877443658 897844109 139847974 315994825 195255103 308339635 187908170 385589524 85415627 346438234 526966095 605160964 576167367 589083135 647894430 876541427 181717773 387878507 21605507 195843749 544909865 892490531 371985768 674307665 382122082 629548046 294171719 709172008 874020487 892637836 478359322 492010168 772816932 918930561 75351687 703889820 796980400 994401035 893191158 922367804 317902846 380227710 514268573 865253076 28868969 905156844 949570011 956469958 591755563 801829828 346423555 494262439 30158215 886942571 511175043 736559428 602446266 979331948 796079410 839253485 333433264 547150550 164996079 613649592 248446392 325206449 591107607 626293161 841898367 967803858 514468133 564123986 234773050 822015444 118157537 778470863 24699359 904323870 218869323 874995340 259631383 446415392 348025468 948600699 272031826 557160954 874543479 878560908 180178593 677492282 733055844 975350589 953270171 974005895 50129019 392499410 265963321 772117090 951888589 973931896 714239222 839251431 873596983 990076957 868022699 978420890 211298995 839621186 990182543 993990561 332156617 598923315 294061803 692334317 57473403 160835600 626648566 896180201 721368767 824781340 41166294 223832012 944623079 947969752 198977821 524958348 160799408 950236764 934977494 967812140 703418962 971068345 577318935 970279863 937473766 975884742 961209496 977368169 408365549 929913398 267590071 512327925 487227648 790817655 581277169 679602330 116198732 680371122 269460776 858599617 247132590 255294354 949187909 964163823 145837314 212502863 460846731 678233546 771309128 861452967 597236867 847197389 652300805 657356768 710573311 867839026 943576254 952409994 320688976 492847145 565343387 988538540 188265894 678354068 123393637 419975387 368238611 511488887 373939594 991983305 694748015 846899781 280438940 695402324 160220481 935351679 16190081 389057382 109962419 927238912 797430820 856917984 669429812 721196517 166698282 711007534 150181293 759102143 695039680 954810541 617419499 657390985 516480014 622419754 192667880 665144313 397417528 473454397 669119498 723721112 634905680 717145501 919441424 980565246 260583350 527127613 749614501 844678714 498120286 911151862 430315407 941469107 455491615 518239098 423209329 625172524 919030489 958468093 35815251 946823270 779139436 844340420 887062239 992813400 475159047 792583184 229550743 352458344 232683359 697480164 290536797 423043995 758990160 819034721 969902634 981985794 723739158 886994520 743191632 879797270 930567813 978472983 898636601 902672467 554476851 988529455 812148055 923181811 763853956 951854046 896374765 912382471 522301643 962639179 130265195 344019650 714362233 870670713 960151515 961545790 504746627 792323490 895887027 920026820 2791372 116697856 859833925 943782096 268171080 351036171 683948070 889634627 901672942 960484400 37717622 399608472 34653903 984319365 934631371 947734009 56655569 324500161 260571180 659669952 990861520 992568362 522739985 558871991 979520461 983604329 858609264 986614195 438405642 692759562 578062983 825767953 204719697 433471328 339112556 982262639 181622808 276452316 116969410 256699278 12656211 94247238 139976901 865205338 663564455 910734141 49764011 333821759 53827205 594353783 417282291 525265486 277230971 282552490 983839059 995063356 173219125 634899765 370506541 743392580 20948618 95896418 642029228 899942923 641652596 742202426 470682267 586932198 791156950 845818848 775499472 903006628 293069581 314862453 738266881 741394160 375312250 476810082 863085826 894086890 151217389 983689456 287478318 584943760 917613538 998773326 132975591 382061852 123029208 588773767 755686445 965533857 439401794 519127549 967401527 988274677 241968652 492200582 768111 857841128 350492103 486445267 179269889 321933066 636291141 743031519 12654901 255463937 67179950 154493023 381409325 979886629 848697367 863786855 501829421 610323095 415387183 621652231 373552254 789556892 998314613 999222944 754399329 788263042 455294395 629057049 815049135 853942780 736959281 820205396 190367741 885385432 741519792 873484322 20850403 937969882 23665452 483393155 245905886 890628121 565820294 574414251 784121556 810181759 276658961 792614177 487168611 940089917 823958498 929183747 546919809 814783531 27103824 413259554 41696235 50066345 764894210 806557745 37268942 965435171 677630420 803254385 292726596 894026766 68162168 714022824 413587200 533213884 492976703 596647667 397144848 833266156 691336705 755532832 34998026 785125181 492818025 698858582 593590545 965116768 448462135 606084264 181532034 280069293 333445811 954029098 519740918 700671188 762453462 814668708 508150316 705688647 697422283 909311666 350135994 649131087 418926125 698468488 760890035 801117402 902502624 911472724 592339307 776111109 518136769 849881844 682000901 697068353 813912338 928901210 656403362 957127020 895856155 962466526 210387931 876573229 396980715 562011127 610722800 872641026 708481558 954435540 915403058 979303147 797712947 868533689 943464706 997952472 354978785 711927971 823599056 980351347 543769728 929789357 676180443 830558286 572347661 689886323 653514180 770418675 740492958 837339483 633161935 814026387 655846500 781502732 473271629 885629116 970268064 982076861 607808011 818646257 390363230 566715800 653650948 943949830 939103281 999193295 610535807 988437387 805575253 947685942 659885192 929654356 263914927 524896921 431688528 663742018 40985480 732026654 65437352 218576241 228380489 697575434 375256054 626924448 577956901 905278456 533179537 655558878 416143418 495601163 797443175 928510216 345422492 657453534 648767258 869503015 965625571 986145433 714584715 891260488 923416882 998848794 421536230 538012261 401990552 445618434 928888493 998621572 149739193 969824182 13670591 681124585 447963452 800982962 795900793 861095561 621222300 656583871 357342556 720756185 914323505 952867975 503823866 928708613 716324300 953662553 758011191 814680585 767979284 793996524 315401134 804556792 585204685 852871332 598725125 892627984 359772896 750097539 371541233 725268368 195371506 590861436 981870482 985882377 520701596 597787120 661143672 685474726 775496088 811090470 273728516 988491316 240317699 547486140 662393412 683902714 184928400 810461447 772531633 783616719 586642161 963291396 534647172 815099330 903666079 915586331 540395488 857801114 640737906 871331947 929368182 976278683 346264796 718583810 848528650 882851703 465071905 998270855 291345648 695486408 850607890 985265654 40062011 318436862 765512189 784612908 410150075 664492391 122927235 270016064 573429895 810964997 232070089 809335376 622387055 981393653 254273038 581139883 354735424 833944481 426194711 675681882 588727242 681925081 412777439 433057617 369266886 872412083 923793974 966217087 570520971 765907099 50182907 405041235 244030663 341440431 371898351 448454125 962530481 991374941 411356495 454779375 337514648 535445084 570321558 851977510 874616516 936032452 946302080 975152914 71570465 723964385 270049605 552104014 23717482 592712171 730106803 869278465 825995513 862296714 38968087 838293045 241324046 570522649 650454081 694438960 661535357 728752013 120863330 739900464 345201238 479645086 87036755 522693849 124401722 163022843 967038567 988186146 783782367 805529565 930121818 971686646 324192706 449112099 78367794 419829794 456541537 670685848 946371252 992229938 47896656 783390224 347357001 358387985 869063986 910437421 278582332 619567531 995367503 995640066 56793463 309124628 706231539 884962644 361208400 598985195 558780307 591320969 424162838 946568036 965741964 997864046 464546825 603674797 949600695 982798045 321597488 594193593 819941382 999291211 465241765 839072444 555234894 629165880 668755608 826610350 417053943 925201706 746804132 976133099 734298704 994327899 397017089 958423414 93438419 813704703 500634941 657059606 941537385 953955065 105716832 853102658 449861621 831074639 378705616 771536271 925178298 938859355 322229769 894233553 424688849 752658579 682220545 684374084 456945302 563887264 747294293 790058035 645513810 656230539 865615193 906969980 51051737 529402101 689193894 729370701 661244803 798118701 442761653 500621085 224273526 616149310 480769363 854882950 231583378 585669598 558635069 750163161 309952817 386418773 414098663 950969868 229134197 695900634 989571849 989935251 919152018 942056744 934119222 970319522 769028369 785685972 38876532 176112438 894328398 900670256 531110644 811604725 65311115 259028726 26448858 399293112 519090941 873580261 382317676 906710426 902691005 957002464 559153617 807727500 372024455 841374154 13334340 115100135 899359783 910707695 75227842 705934864 7228294 188606087 199846236 780764470 396803934 718321138 844020469 851428219 638501681 854313778 151994399 649708679 159655108 620649607 869750853 897791698 259345301 967629103 609517827 922803027 306562707 888436287 512560067 650560635 508760393 523897249 862390389 887605541 40942167 432202832 305585761 415202242 772947540 924741520 250904108 681616096 532531047 795673658 462858849 994386928 950996808 951090947 716432130 934560796 354650249 518317304 221319404 760874270 756355559 911510474 749225932 783916327 632396340 937982642 415938499 885434857 316287324 669136641 964265654 985050886 951638822 963955210 26602217 852155077 19548483 199995199 898516807 984911996 995550970 998284246 934439818 946516604 772447093 775163991 809337562 942632726 611511912 767769783 926964172 996991193 421239617 518966535 499580723 602361786 656854835 771179332 277635474 994829028 523396194 758004579 400075785 704397887 78514583 563556110 516969558 655659071 251111991 790017684 897277846 923974594 784848129 854165370 875643045 994885681 273499178 555752737 398733310 590139893 656098264 922964100 645701975 853842846 650488978 829205931 599644834 698359467 792775697 914347456 430456999 619012929 727774389 921730871 727569539 889794447 71555647 333851482 842104208 904928341 243594409 934766547 353783164 554982269 538827038 687401117 793882908 993429548 672349895 812609052 396572213 586246855 189592561 864118164 830275157 995078728 912041841 951948090 425607913 711938056 291576965 593699646 933605885 944896124 384537824 682420642 275330448 410431174 323619279 426661928 579772563 906695187 52783421 247011744 848769529 929769824 829464902 920580196 876322536 907299933 896926596 899449520 351683483 713613098 961499463 986997104 783939792 852078159 889970379 949217061 321161431 435632434 633063167 976116447 207086161 466553047 417066304 648097189 753473350 948846521 139137416 145373841 353212140 549514332 23459154 793363617 810934800 964963940 253584930 338088587 850421022 932230707 184901213 446980363 714989292 994533039 996900926 999347336 665793188 820312689 986812339 996688219 271499973 342066651 873239701 881074176 191388314 900612731 236345007 805196180 960934132 983435831 477378865 667472831 489409957 827676469 181629633 206725916 232426644 521374956 175929858 351235797 729802266 976377532 641575548 689076061 872396532 986283036 794204782 870764518 486518543 551315478 607153609 673422404 635724012 922511950 564167052 812070187 822473220 854321082 60754179 320592666 45802584 634123154 325472450 513793892 366133125 632133699 478461198 615376779 13750977 385744065 701934002 840977489 255066610 367206969 637998852 732120520 782258321 972095829 378499955 921991231 945282274 986065042 28596126 437603889 79051581 290765296 285282003 903652631 966054988 981148950 575474988 599464240 350406363 614600532 699153082 826730433 236432859 487507096 632183150 649226332 363445829 763059268 472544868 807529800 853306984 937454285 526026953 634533192 817641726 825164862 31702220 760854006 286261708 426747545 290490741 510140492 509976705 934260617 583712000 639692320 554598155 813780769 828341931 971827298 227424477 655662345 675705777 965019648 128743076 967990989 555514774 675192670 902699617 988299930 663175600 846202235 810926176 817547800 626574559 646341807 58281539 827866116 439538485 474999978 277336700 512910564 460299544 526729715 945969495 954940293 950693677 982932381 718620925 914857640 856192880 953455548 367165829 995303363 832422714 971238098 630168705 881527304 60388619 750419467 484727491 553226096 142154635 378349144 77136040 705421042 950731435 982902729 445536216 961177892 257058560 901288848 764508662 897607320 115918502 134622067 933957009 998002123 814964428 829542675 800627253 978976803 589569383 937222473 727222365 867065406 19164505 215245607 398609666 641126213 698260240 745459534 687066644 754334380 394840911 986682379 322677531 441661837 789649214 932796063 435333013 805742037 394285210 455028632 739970244 746813795 77188950 997362871 524839116 534778993 928006870 960765255 233498777 277292729 489965886 616099568 72281309 336656250 183161930 681630688 546654576 547324327 658667813 996252368 431806839 849089823 411891689 515043548 123721840 566344788 987212663 987293123 243253054 880132408 85312345 468538149 96660994 419619168 266709537 736043920 45556235 473688944 990561641 997110875 618820420 935799459 48294302 665048311 880613025 901573048 755763286 826639487 897573827 973009134 925962592 959720753 493180527 632082871 677188954 823094368 613719414 776661314 317085178 837447012 15219949 157305338 707851262 897818224 712000088 732228646 236103223 697424456 342854557 345471572 753608845 761411403 191596541 313896382 436729262 561467103 238556037 434212477 171247163 920701451 913733114 968561358 465681362 720336997 496850844 535735727 929303473 967956152 968184412 983864972 505400820 926624305 402740252 479272123 196944162 852018825 398985852 459500395 713080428 824079906 385919677 762989711 309022625 510495924 672108821 945320612 509682030 906623137 840994395 980344841 687703936 788557861 420665238 846888538 892361468 892786251 223457285 980919191 213864191 864218491 468360872 646327223 851179280 869037686 220236380 435651486 583442751 770354647 585089078 642165181 961887239 962409420 810763713 868860223 865373350 877362393 449591802 778249112 628490416 818166413 685489328 846610843 644529932 876419600 659471752 726011529 218130438 941156427 618654864 650239393 77581362 637997229 754830038 757705108 304233953 748738608 857223502 931189284 507194071 927044604 517922792 777038521 908046198 973305397 241169560 717252176 569042550 730891782 784397111 817419206 628197465 676532146 202604866 700919915 692907534 952731605 600174521 616987748 773701932 988384190 260147029 704496364 959016814 978315539 150147612 276760404 907080876 911752847 728855803 989033523 255102788 414217154 350033934 441139617 597582881 874934212 23638836 128208560 301890236 418682590 769732928 829504846 797665347 833670368 947071945 993523186 902023068 999348393 709291214 767866559 679811783 720727891 329395840 758821987 983249844 998813979 135800548 266902454 603101892 942741651 546892078 645001651 482894734 762755395 607975369 631324063 281814195 386388049 989698656 995695821 410317005 782735955 702737600 991963819 59099790 114312670 805324655 995219311 275307546 451241525 582661609 941239150 840819140 932301464 555994025 790708526 656821284 910842940 305597092 478046824 594442199 668253233 30432541 238595280 733812313 737889430 993636118 996222570 987647339 989754802 161868813 704979563 927361638 969422851 638917127 915719734 318039512 612042039 399652280 675238357 493789520 524866706 484459915 546350725 989554467 995849199 909747642 944198408 269749740 786082396 464325083 700197266 715902073 806323616 265664990 751701565 30594059 475823965 708872383 836474606 229869049 803799431 937088151 961738112 199460879 483609262 439085237 504669527 907839303 963781826 673525627 784876957 986899230 998714941 860598450 936317412 727377074 929363969 740041412 847479166 396022675 818758996 23573923 248229951 437494901 767720597 526203103 621208183 243603838 423045972 589454632 751566216 428240134 468212353 501706192 785363234 594133568 681002133 769045254 800215210 710505357 718788252 550986578 881184822 869345684 963516492 440274827 465785594 141095382 235175757 962563219 979968319 72073746 302812867 591289461 894421341 766225540 973537707 893775562 920289261 768332555 914776118 307698265 998639469 106280719 344593158 636390759 800926079 116578252 951094390 287748595 290744265 672140358 850018259 624076226 726709982 116510519 120468674 45456049 160968905 151756328 215775921 104748733 165908962 790853379 841836303 306165747 314528424 579894086 789574056 899287405 988524880 406199053 725551463 55877469 176448300 343971381 969197996 52517891 887950719 331709980 650542973 210391089 265517309 403878272 727014908 190634106 539261613 626303722 668516001 6095521 575444163 941766046 959614411 142017296 170802805 786618635 831497375 156527399 711570677 568346350 752194612 737254576 810636488 727853725 848910678 505180343 919156119 871884 26649829 923481815 950138707 859068943 871913716 475363904 535019672 588492115 777491429 715213545 754676506 334598156 430422479 934963058 956468623 346440633 410011327 830784423 901073427 454366130 953973662 899571391 934784351 171178670 245393334 80667373 280981611 209040094 461225748 400442752 575127847 799160998 983171753 656018800 961815341 302056651 896223247 121802387 533849807 666519098 780419683 142132652 485514574 184089045 272807162 791284956 836496321 412219267 873847107 693548532 945419247 95440542 628909423 755318391 882213501 40023052 473491012 923426947 941805269 612059721 755766974 111019640 259101868 533527483 770321175 494662661 705878948 422226065 509620834 747219945 949241004 569390784 860115519 166598346 293768215 402882540 721621561 84296649 792980748 536667951 733546560 852829813 940424359 33212244 102800710 857535374 944553494 720819141 992574300 591465308 904792886 324919454 393864960 52583453 697246971 221074215 967149334 202994276 261946277 355532611 385485369 762649954 971815864 111442108 822902941 778240345 845382872 273251324 921244707 819438660 837167935 355265621 588983205 274031127 906709297 766616368 791522879 200582461 998641615 110586378 902176401 83889228 586646843 85333907 561543676 724158385 973064519 75000409 567571980 339241931 782192956 248707502 619633327 455698213 641023208 106310308 383132696 354163654 924293982 652654654 896683482 490300973 781642150 576744582 864586061 26446693 777335092 806177859 990123472 182649420 780825341 833339280 966114649 234532368 860460187 421422347 950210769 374413147 524310393 102511676 336988599 730537086 975372230 19851864 989106187 527724712 537034748 190289021 968995019 220765775 779646443 881109828 993637595 757427811 833241003 583192081 891754028 696374159 828009497 904668334 921900962 775949450 801549438 210083591 375192116 41368795 649913866 473251380 786648441 555986973 631420823 40314336 160125575 791005834 985931680 122521228 278842662 186374113 709891661 739295810 776409099 52280610 620254218 215589616 663349895 599115002 810811730 632878423 720137167 290592382 772842729 211469009 924378715 164550738 908494601 241896776 296086138 989776185 991326448 553529572 827937647 663548650 664889522 673587875 796998227 464018915 646773792 552981520 654868045 963494466 978157130 194186780 304835174 574911498 962978652 607690398 970465986 582169354 738728584 50133753 263646841 432741050 757411445 513118458 730499440 195340930 341088874 806038620 819251626 32338642 52972671 477949141 479366265 473736978 522240000 138333437 336431552 884585179 964464693 531108141 907553002 509640224 884310672 182697197 670112071 609894810 767705274 262947186 859340369 976963451 981762602 94186887 890798561 371070502 857932868 700041178 816411358 116219620 398694729 516676568 744924935 696070946 761629396 800333372 847818345 108051645 671564042 582452001 697091639 154850187 378969816 183742773 238055948 620057739 747546484 379670255 806390229 625817873 737202307 565011291 759891410 462976160 946349871 635842493 874940569 32664783 703594898 126602420 772469684 149257483 559262519 710798203 745180273 621506687 686030276 798954099 846156319 107294542 548360299 963135936 996123002 619197206 645926483 28872079 245975674 199680043 544039210 170077016 849000411 102032572 772847720 838035950 988919861 252109948 991345647 74357490 394095924 101861310 849408534 365736978 521964749 110512831 113361008 721305720 939318401 434954774 876608513 865635314 976858604 365787691 498957117 946788168 998667210 74204416 819489981 713510656 829546932 888933068 923149162 693540725 978004820 188258906 942766669 116014433 448161429 506185740 694775506 253783840 689741913 545204867 762563881 380257415 681434974 694892636 814260584 272841930 458691818 355057761 873659611 602505782 860939691 31288956 65466307 702937803 967928871 148433932 486622365 933294898 982557321 299468244 911164517 565077463 815896981 647340797 863127747 161620848 780188944 758825837 942721975 42687597 169027884 113135174 370548540 663266188 837066369 257401026 435401930 581217422 627338031 769215567 978524554 553510918 767001910 496697340 826486420 586564509 854857851 556193378 658983317 482405227 545773404 244442302 944378467 273959661 714068285 386132796 926675760 485808863 756302798 219328794 628409478 517847290 936650418 20329670 63159829 514020698 807007517 391549129 404012475 911724957 930230872 533582145 632862811 517823324 530931152 68783972 101982962 141044401 263629930 145116764 506672980 14738777 856690419 17448390 909971996 240143596 318365117 767437274 906451253 486539093 581413033 222689690 385377961 813389730 839309660 347149358 362128731 230901819 421519338 15938884 779222516 34350071 765323307 34558435 691962318 723249349 784860237 352767274 635333612 526855678 697579151 8251736 175186896 984509418 999272191 363433601 891296957 601103486 940687760 417435509 523724395 94517966 768124323 833518040 875751517 870708976 887432578 344891075 798325468 989709961 993583130 791409004 981641806 626258543 737205262 847118206 857689754 801750524 847855889 909874103 981491438 233559758 528367767 793428681 837380712 743194087 848242431 94279447 283949439 509918147 626357506 361232743 586390235 228911330 765182751 854467907 875405443 451502630 763336369 940166688 999307501 865195842 914293256 378225576 915927851 603280165 855066423 794329355 890414483 30467929 260032985 143180541 234261711 139619088 641094034 110413129 907599630 373457045 963008227 680150732 868138889 108197464 789609322 116473709 678207037 430107515 831133478 309734910 374468863 204923637 226829629 891052515 968647115 486343054 929079489 287730802 622992313 126555200 208467299 668858288 709569431 327440432 795051283 915490643 942834607 853245748 858267112 366611469 701948420 160296029 239088734 872375834 980086966 143164362 714492393 911420605 931143809 579655720 849591009 787025471 870367114 104347840 952066626 594817774 731573999 283066176 370685710 557087711 830399838 628615945 803175654 562269792 709595723 12080739 883813231 510619916 686183657 521744116 591077892 110508447 580818353 503148794 660540681 187174395 846496054 696719187 817260254 107796957 950630239 609479853 791543915 925815910 977622500 462397496 993257427 955928497 964121311 979659176 985770354 254196394 489090115 910642297 941933189 26058557 320309562 759593639 915303026 889310444 969556325 38309626 803920539 248247252 325947823 968584983 969491630 983845337 995092010 458094814 882536893 855806344 975185557 933728939 978768187 726183535 783858683 925563244 937198682 36408417 293675673 212082948 404007938 449617147 569757755 976517504 980845377 197811333 701959479 414202740 984275482 475075936 576476117 149942188 581686843 786873363 799991122 121858578 488354458 304611303 594006472 550114862 898095313 276612214 538863374 969918440 992281284 271551835 942074414 335401849 685683014 257291717 811703135 437432763 482046879 935180349 972562726 558638403 759448203 754521617 868376519 700717593 751512495 42772005 256180360 148241233 930397841 16073073 325245720 719959746 755881347 210855921 862159214 538966137 953103788 1023489 467602359 783455945 913586016 318766783 651922732 916298360 920835395 2539988 222158697 25288863 178742180 938214900 998892787 781474394 828262893 765129230 876052973 23907944 762049988 667080928 892655508 383141935 810676181 737475582 896852383 425675607 889406143 154172648 548838085 508250107 904339171 944014229 995952167 641076229 755650723 249869680 857344669 620820312 686300176 802720852 994981742 247981860 951600646 339162445 691514574 380756094 526511509 626972360 747952200 204802753 585312183 305729002 781484656 259040309 700138020 731472818 811662674 627450513 653225112 805282937 853935527 326197337 464282713 581835456 953255256 37305306 928941294 298608501 641004730 575916200 663711916 423107979 499291973 44475487 520177812 70601372 270407446 800527845 857583819 497393208 848185172 295934622 508334110 354280975 726760507 291187423 978182393 787009948 813762955 483503981 561833490 304464719 549021963 540293093 986527005 544063666 853576871 979198655 992891496 596377481 618885304 198270701 491874880 884106898 930480430 28048338 881531926 985490405 988037007 882297212 953920177 6600927 565522918 815368248 830189860 927484099 927849287 843568233 873149380 753862526 964982350 858252153 897803391 657964290 931460251 939373340 959555797 14971527 391737088 914293679 959959052 531724975 741224398 721217873 762973477 53662692 642830056 505166126 750913545 188912012 916479559 734061628 821300472 297225924 671465155 338851087 607546236 364346937 646452220 557699841 846119881 264653904 947472957 303815945 602451383 272401683 298920755 148657926 487845671 468857744 729007707 133635495 902023139 909294352 960909933 477425840 644993453 904597844 916197748 965211769 985088982 237091697 906621357 925440348 990171872 101654199 880937092 91067607 174348312 832699699 998949404 569308943 610127043 725915907 850193180 651183405 776150611 703591633 844449308 534559603 950918949 887091971 960137126 178100161 196691092 296501529 742321762 146616521 184964896 397757231 507277706 477086351 980711726 457718232 729701971 148459166 239466090 712981190 882625828 305963461 766892888 224345465 502258951 863944027 894267183 170795852 582491500 444033466 697668830 213652459 323947840 356892130 793007369 76992210 681326876 951970866 955822070 688005450 940288810 429237889 978366072 941756849 969335235 475000732 692639765 779110979 954487261 450208109 513297348 599283143 787098158 234718209 334459765 958295839 982580134 370831326 490002259 68877956 990601605 403416222 904503887 827093339 839908344 179764689 457922707 863317317 897592154 496621811 915881349 108933 314399053 647352183 675416286 962072787 991807389 430137732 551312297 177995872 342070038 548123991 640869500 742674799 815920212 33593357 368329222 417639338 816160098 329665148 979716175 792431307 808102311 515004412 883913801 33347955 161703684 750191041 753481766 435598108 881854508 192463620 734759822 307319794 804138478 16756562 204799591 917859080 921943566 157211532 694808059 710739713 954372255 430301968 670015645 648067898 704464505 986989172 987753634 408211832 623199411 622438426 965775015 175115468 177491901 444024444 990346236 235621151 502529085 391384125 952228457 724075438 940180887 144340093 508006314 194492893 357828231 83465030 983571008 695404341 785098278 37159036 887291565 980265504 998579559 13239043 924515630 173082390 492242870 803694454 954405961 637492852 994890359 934159863 991398586 833510894 962521613 873525530 974512257 560110039 717497602 69633157 990222471 493198686 898770135 753536144 911343259 130772854 276363610 9285879 399188884 716183622 800159455 500043589 826408357 742349929 965310958 109854100 949720724 967984921 981685976 280710730 595639363 914787840 972538674 301639057 656099019 512430231 604167601 691336128 931003781 11839180 495916919 46426778 719520228 988842644 995602155 637434481 810345891 614760332 985780810 653349823 975492906 560730329 606186391 706787724 826713730 746249925 914599187 889218682 993355770 517147678 808608010 839208710 981825727 545495413 939148597 940201854 949072640 391819193 519626734 454301629 938300442 291426356 837149155 433090390 473877706 961199129 987998450 136588774 953009687 380236838 468066093 793731348 813200126 496874522 882196332 860677450 865038159 610697551 804262093 655541604 948109827 241727788 617216307 90149841 723976353 238691025 478777400 727948036 993761276 400138866 557381189 803146772 824153606 164319590 702175564 52437374 911850038 169564334 476415642 247962228 608394425 965294661 973349882 66689722 295953738 842086947 890990447 48217349 768697213 722989780 915536929 69718305 405660336 812890069 850558047 16975217 290420558 765622094 885672251 114519896 508518376 933153040 962197654 93062024 858290143 419671547 419846519 111485384 353304728 488027129 812830111 470551134 570606344 992412429 999264995 670246980 970832890 43074004 443717695 596592347 729054721 997061225 998174365 774201168 842547931 734734639 860853900 865467117 893906208 119552297 439217659 398645194 642284467 674912884 860238919 527854304 707067491 204025308 326556611 172280317 273275020 391039156 464143521 312043547 996315483 166050781 458431088 844732012 934039909 311861329 333612996 649412922 958985095 838873469 889032728 789384760 906406586 437004606 493295564 415333116 879709082 475021984 734070822 201166816 337464920 307517645 574578037 842325389 897437556 272318240 623569816 677501693 778945444 296485980 526163060 23261703 161165730 515790876 812516865 579849995 797500777 43129133 982637724 136240120 580356544 136000004 281443083 283080713 522422867 146177169 317705070 616931561 660277322 280615256 670218091 808979757 924352028 759618406 964776204 612245851 918144145 224989867 829827027 356568587 816642946 275067870 971641464 348530469 642429746 450821198 912000315 751098582 939726721 310735814 419651168 8941146 548959246 254811809 989638985 431121716 507955562 207432179 606375079 196761509 374402493 940800521 965394328 384241528 643285357 7686646 976119557 467465016 820475884 727507089 761282084 800453718 902659976 735405952 956023107 230136086 394323853 697112173 887247177 978809882 990867444 11703818 214500764 392216120 546483098 791930024 869239287 915674360 990607495 971668883 999299860 627625727 856318470 61485978 466738991 186790917 836522282 206216921 936266958 865539766 984476132 343737709 974628777 470772314 958887054 535178570 662464964 752954477 991551956 11528418 63460405 659285608 990550742 948285038 961571491 850194278 876193257 12238825 581163602 786904028 963089329 334825369 918792222 650136351 777266764 518943680 771277821 643286237 951403274 516755115 898462194 137417964 414585486 361687030 810060878 143829230 684226682 857658240 909178143 625344456 808288443 954496603 967517661 306981269 942642908 801487664 805209385 427240613 649157326 594619265 625744337 659153346 795255945 834171482 874765044 252549345 692325989 341075752 950371062 432666400 441334210 956991527 963195603 271579860 676968591 18952502 969752434 402488564 744655291 692600631 774398125 367002836 818445939 276000442 978577729 243288041 450516558 898258336 990788202 119461030 463370500 17709940 668678134 672151242 774715937 325556237 778023480 512007226 613525513 911635837 993451349 764812871 964328579 521694131 718574671 785706707 906316951 152768315 572979628 291733809 367002239 286513804 636127605 720924081 880993399 533100937 655540469 185214548 978193502 561809503 691622885 955332165 956801452 988299736 998548260 88159439 237693245 817774200 934308898 217546719 376446632 211219680 417850076 609028256 993201495 981175653 994774350 616401260 921994977 520112176 687152168 183749355 457045005 74432871 929528961 533720262 793647961 999314494 999349980 845361620 853837684 312598668 509338411 92267167 175725677 508176805 925517581 33113394 402423767 665991649 868496250 334756851 503362955 43634874 652397320 728300899 786143228 466534605 934447194 973998918 996067061 116118030 362101898 425919248 984235855 188726853 211581209 856957468 892092678 163055710 827252190 875015209 951582602 164502065 316914002 861498359 998006017 250415357 375111857 66030144 540600555 599275485 897141543 997026089 998608763 706422716 802388498 78243236 369994143 773740293 896428721 145486866 578863002 930942259 958582007 944565551 956812037 304607185 532541113 752291836 815335382 209002605 791981493 250698375 879087920 681387461 815038809 196934796 993093240 200562093 576899397 404471157 434542211 930075466 967053826 570257733 620981224 152495939 575772983 712330387 999337278 592841344 876504048 29675363 740226561 221526870 937589588 952314912 982406042 475805727 844453734 633814046 829049749 20050584 469796336 212119747 880894050 556533869 624473142 327933285 859075651 895262980 979290185 299096864 917727308 503265566 739750104 636733109 835609594 386945833 910955392 185086265 834279779 336730812 477481900 154305502 401007093 614580996 723624165 812701365 973607027 500796577 519007668 210344689 229432829 380960028 660689034 440116880 970198485 600564574 697890376 587514401 950459751 602777735 684851767 728096240 984748263 139239842 184200734 973979870 993839026 881339884 916951523 894717307 935207379 977242000 986482000 77960358 767883339 538007367 718588627 899369267 937086221 907563577 982118580 268806186 577412243 580127601 924962903 176885181 273440076 315868908 676117015 128518657 273649992 810276214 818154627 389338659 483714138 413705364 738652520 749568196 890432214 66816998 396979101 564245676 910022884 310461780 488260546 503896489 827904327 853487047 949001835 291676994 564683189 299604913 535087614 844345495 913438894 775800397 952034839 620119659 986192346 746321294 981826308 418492146 660687707 308674251 637387019 538750100 812778985 844282040 959337725 759917784 799534441 202440083 543288132 743727763 875550035 215593693 660885897 674631342 846768026 651356395 696083100 827565536 932106359 192998367 773112880 248039233 646593681 392784283 853622261 870419873 883578818 83583630 440710327 106081085 317858731 944754111 962824029 231379306 798583779 165052799 662471010 241226147 444073511 966049713 966578668 251073885 994221239 908064617 959112788 327153117 808552367 588104506 676473777 147985992 414624220 731795751 743914203 387709126 407433037 531373176 825287211 332587985 835035775 12758955 643121254 772468799 965667573 476007475 564253350 118025376 781254963 199758187 301993591 625866843 862238136 232197949 936678479 87462991 228732511 951331193 960535972 457114812 562198075 266653065 318674191 128164992 208567225 75823160 297653258 653064185 697098475 276869005 741500323 215359531 261910432 994872666 998958898 38960094 661771695 65616299 719588316 696307435 852485964 672163284 856970087 78982984 208847739 924593676 972999059 453635815 576172539 27530560 593928346 511306191 597323663 12861796 478991996 412932289 560502590 445410364 467469327 427542628 983871682 102039035 496352071 628035844 838573609 680031033 800698072 548998347 703524588 984257592 986951381 396209858 630424732 281095921 433855485 405466411 983424980 807491304 815145162 703383116 887852931 461410684 517153389 33117490 131765156 722926803 831060640 705243527 839789373 194963031 698674279 802436166 948035327 677078135 775881182 180862729 309702723 777362491 950226650 343775283 613525248 861063287 989327247 38632547 140006882 899589040 911942347 907604367 947609987 306360266 750664454 952172767 981343212 495048265 612109137 223308019 734287464 627044560 916623020 729014013 879251400 236372143 824873512 192812425 445034529 895637318 953939291 602305449 712727699 87897930 89410630 520596894 583838545 251653279 583939915 138985277 180529616 75834384 510171076 912236345 949470345 891819110 929431169 628847842 741639087 41072059 634039322 112608461 966237105 188802659 395508460 540474576 661851534 177005007 933862883 774409427 953462835 102535056 522886879 379473602 954600580 816562629 871658257 876067269 950658384 374505084 506790495 541078699 746048775 71469307 542377146 102814530 471714936 55020510 99390568 310986023 494246860 358373859 992346504 587454783 701502074 573187657 788606787 854857468 967296113 42804792 692196573 930282633 992704342 519912657 646404291 278424429 729899603 410124477 948280970 261451501 673641886 796490994 857955582 270330240 837330117 849727200 973002319 413267461 828156565 139352213 814081634 800640623 812355786 135665329 379794395 55026283 508596466 184633908 818071129 261299962 414785399 353703047 653950851 325063801 617276366 403395637 711415352 588428401 686058787 751907880 943138470 830197870 995724020 624521115 666639534 433081441 579558875 907367434 937727118 780117513 861500066 619338646 925939560 461201697 911932583 2179666 983680567 93990451 176810531 801680213 921693044 473336825 822508319 870141625 933859271 294108159 666677688 115675057 452431289 949951913 967057488 653999459 767877681 769777363 819578801 384647987 581282571 595177614 864740350 879851686 882335158 822881460 855148363 18957673 856018965 229047008 665463735 127909425 593463603 528734916 585938261 24166497 459307060 571274957 826209096 590787083 873221895 661633468 912908653 804755648 895789858 429285479 579093403 431946525 964474225 993405334 994024579 43589980 390585195 458720223 955873752 156568987 546234070 350608297 921926745 9979573 493763912 573084470 672099356 183786947 422731804 62850839 539218811 576173629 769353904 678741253 704550046 749809795 859234515 40711230 423929911 394773103 772871387 610620905 688757004 493223594 625243432 426773410 487291782 518375258 622244361 256798663 729262866 736467937 945279348 1046522 774998866 552633546 750644283 82474606 139492188 705194235 907043146 978533479 981314031 324985893 619377053 425444968 483923373 705776156 769663498 539182322 655849884 784243864 862330841 754650133 778767618 201379378 762980587 211823266 815841210 898900733 916238176 767188586 865126067 862597977 923788108 380436579 566260836 7172702 284791258 877984463 982598493 970592267 972959763 655883520 762629462 382435498 884031029 852406754 987165196 100323585 720990195 551196557 561888546 613937771 785810299 32808402 295752596 639276003 702104926 177579889 643908586 741311953 816038479 221205979 906308880 843621579 945893576 74283165 767431942 166478035 342003921 55095334 406888573 240328512 592149934 9467572 264478447 508874091 539043039 929057192 999208970 157382495 839651779 573849435 602429401 237909772 415399615 518832918 708672879 398826853 819012081 442310487 906052781 998502389 999102173 444432813 884012114 294403137 696433229 251187523 793334148 155466144 333022988 545027061 950544620 28951033 556287061 702378196 927298965 128205543 181436861 381147457 583325732 864322475 959862980 838621207 848014246 178753201 972073417 441948709 800329757 435582856 773810773 612277070 949612825 338326837 679630615 133738109 444188144 277880995 433518356 497704046 995566819 975886538 986763299 495246407 514935782 72779973 981418570 229124335 648787777 366650510 436976758 677978376 698078181 528998426 693522227 718055926 858699649 653077753 864895431 10019054 145501986 405876572 515174393 967479795 973234258 165675652 244337467 937905106 955491462 319690735 924509218 202956619 887112138 525048024 667294140 156700846 288418118 990780747 995683502 467595038 925236255 918599663 950002970 546257296 731920444 584841966 622453075 826831516 925483149 561285078 669957487 397764092 719090301 969916606 979216189 178862374 434211938 102286767 721659604 332643366 973138662 134880040 491174094 735063340 879301210 725668497 832586016 991034263 997618583 497127640 916936497 953380225 999032093 194982189 225436882 387029177 837085081 559289173 646641120 182901025 540819862 330937749 455928280 839845401 894969257 319919084 857443215 201097798 949813360 247773638 654411041 526901328 905290992 605147969 648589461 530747859 785444985 751994379 810809415 967304852 994977116 522722130 968855923 452520431 916735115 698810781 718395377 468176308 751280094 802510052 884855435 60895119 334007481 676224861 878791442 415675627 793300425 801223166 823391366 273680391 420739038 894328945 955843932 5290283 510453518 870227411 880082044 330543485 615093201 247496483 382204328 375481282 473193473 291136050 637522685 636623233 937475790 990200277 996378787 92939859 579754845 720464879 764223143 714886467 724771352 991687165 997917314 568114806 615911573 230228837 416537687 740666733 918718843 954680017 994617423 740562658 831450169 392871300 833056603 246119278 527562806 716251037 841943333 776844736 872179147 865915491 919854232 546319008 772997242 802728325 965028957 545877513 797993363 755941454 856684164 136807252 817045744 896459590 975728157 135066103 976316318 463563830 819931477 114492787 351571407 373758924 375127429 336355502 584895964 824040631 985463858 677217289 892024185 562821168 630497500 308664976 978832705 92875255 879153530 185792274 634103635 770132804 970525588 701110214 851626765 78412074 888229030 923710326 926939920 860577997 907901456 411163629 762885097 874565035 997265517 38874217 327897136 766403598 787682416 869155218 913661775 425427567 646112464 455824961 764495572 940253786 990096114 820909735 868695516 333663411 860599452 65085569 184607855 658671920 879338234 120758984 689008297 283628635 496257801 137907426 776697487 136934109 201505897 938362994 943036940 361360059 366820770 392846713 586163993 192090559 779252094 811643147 940380415 625130009 840952376 15134546 227271029 213987635 539201073 554055249 838835326 350194660 975689893 848439064 969856755 702299448 758182678 676980862 683097433 703099454 721099108 52172737 477155004 875760842 918541361 68085427 507957028 852117388 927901366 31402924 654273302 837594345 937890264 94460237 315087160 463886958 550631288 22200647 331714643 168863582 237553983 256338667 772292012 977605774 998393117 6027236 747168683 400585171 785504143 943935035 969319286 507877821 725167504 486721292 834791247 715085129 747569499 708971278 817141776 395349650 916063465 28476219 286392712 369038725 907457755 362595007 912053669 21630150 645423569 28035254 775284528 494580031 986950214 315653371 945733056 80701897 873986785 952214717 962729476 794852795 806308237 49137760 659885427 352840225 814685566 830301047 997624369 592152339 635419295 271034668 939244762 26467738 40353975 26736962 973073773 553123509 776866579 810959802 989130045 709520420 712661400 623207901 716800396 146700789 648349691 193398042 535532828 985124731 997787581 458777382 606114300 140602926 374301852 106878655 632906110 242859989 777818550 437064731 636971239 359697439 722992588 399390135 963980418 557866369 626153034 334601385 612053820 327596674 477616548 872584301 978172097 663407932 908923286 747292638 757763259 723014466 982815543 164014668 229223221 983046980 983536849 196078432 817073932 639149902 937651795 357731906 975933687 986145883 995482105 979484090 980668581 573331706 879117765 151260056 879886810 816275724 836265720 249867431 534475855 891629180 941999891 430802813 762020261 564541451 807101646 18325108 532407305 987638949 997799961 467422301 488819774 374059409 688400429 697800861 910916418 648351713 746978252 859644186 911621824 646916847 807741399 603449651 662217430 97416089 964211721 249364703 293080244 480592651 888977117 194610849 372667294 828178631 857417034 474079770 491811265 527619847 855300090 634474725 836576926 178776867 425207401 855586626 967240391 603586965 832790852 162786722 824508344 758712730 946543893 123006349 829106313 845555697 846133599 628941824 668739862 492276707 537131480 105605263 507253526 855432280 966753745 859634646 902224390 97393081 956385068 970664673 994896179 262526661 613949777 637559335 830993644 583564899 722249449 511597715 630988906 460121909 687957813 431750945 954711450 380947321 649411413 716732573 970294044 245203596 457137658 602407079 858103152 562370586 608232332 363347858 408890690 353364103 676886896 63933084 396755518 989577102 990627131 645715102 925364021 603367005 901198288 979122687 987804530 430027233 647940947 294327773 737184916 762158507 836910057 339631105 389220734 368964444 712553907 292591379 952307996 706517572 877173563 284981197 773708109 707226275 834962878 923316463 939341406 80229972 444191633 442320036 887764728 627652708 856570429 908943476 944962550 403220514 649283577 365754851 764428782 429364430 451291674 709107569 940861379 777978192 876763056 751531207 837696737 758802560 833021228 471949820 773332342 14389345 340232067 246051217 541611978 852114488 921678277 948409933 980199579 533219481 730816514 102380707 271522050 589151803 654551514 70473526 776723515 291631405 970696383 294543607 780600166 540849782 869664397 768878731 932703142 220758817 567086720 714461837 819224649 467796130 943319958 943306868 953625325 647411360 921562614 48301678 919534694 153412995 652885580 18154820 213772226 589646186 710399128 52675959 423646509 456544648 694955241 833261458 982724685 473230766 506744054 721400644 844346781 100079092 172120102 300069368 354119289 163144663 575484088 840548464 934307631 245824858 378918256 742621976 996096256 474898619 508161958 648240559 819914772 63733076 734018505 348326736 751015498 181296220 906187396 192159269 581928935 263506862 496392257 786837198 962576948 232890522 855871889 997050236 998836059 864897730 988337840 396096516 972666029 750926534 971688902 136833647 397443795 48171199 795638719 394830058 676325259 468317450 844734105 288023047 603123768 75803167 829234865 609992136 715574287 326522775 454731836 717831507 806908929 902690976 935989771 875878776 923865632 873227725 899522743 395394246 707515955 960940560 962680080 858382897 867251910 815935863 826237380 256943268 463847155 840179745 977474366 172607239 982911951 963524383 973979993 219445886 475883640 321604864 985890672 180606776 520869753 498194540 612728925 165925516 476780331 926186376 992107629 637686488 906529415 736771503 807502919 720791057 972058426 563001121 681235595 406437505 471677545 758451687 854917562 255082539 526428545 47016375 744466334 544348816 871605792 493615679 724545872 133399495 779907139 880200687 953393347 336847808 558907947 561187387 944176607 993133537 993660852 766381327 935836261 758176487 895179524 730267497 791835919 995008339 996321181 827478030 987589894 661959334 723860928 706594356 966190937 259750172 856420640 189533101 862235424 810444404 917604833 80478371 405608809 787097866 986126519 186770234 846617535 31306340 809108887 867360061 923613552 772343733 964593017 449970717 919464433 380077765 662172590 97829195 134793527 862132789 907754108 79312166 485934640 660396941 773614559 256243626 257603217 945429632 970482215 326705722 485374807 649507317 653217827 146688883 319696292 702360652 774505206 434288136 991578875 200052897 671153269 894657635 934161428 939160894 955382311 356682366 843547151 186932278 865662035 185296252 679923846 556633210 860306644 578936987 599064710 311147880 423772876 981179293 988033994 58108000 975219574 592702210 703302730 60500823 409255646 874214422 961798229 13751528 473229187 373151410 659086317 38105590 467514461 911006044 942722979 838650217 997293529 533609211 679110774 666524815 822549393 506844015 596102674 907177331 976566083 216861965 680979590 265337737 327795577 101046691 146560746 155818911 566919015 466667957 474195388 125747463 546255907 430189167 534764791 600439276 658556388 521393604 532922676 185534811 639445416 65638440 703024121 648612402 958643045 201602269 497611271 567967672 675988002 122714885 207296351 449530075 542416172 871201061 913598788 359018585 379349305 709852678 801959156 534905453 844862747 978238333 984589542 312057013 666750393 719465484 988581054 808439282 876859219 337559642 743570636 315975872 739396260 257747777 283090101 217790476 672519794 770949361 900563788 221131085 779292172 425490643 810415038 776991668 796934420 637573000 868812586 542171920 829900478 610099773 918144446 828177623 951201612 969457169 977693517 790674630 840018563 677060314 831105294 729303405 920312136 277931986 288474641 948733520 996762327 584892465 943492175 930031251 932644345 344481587 913257408 138681771 189473151 578615992 674520404 687463402 991890984 398862912 741075051 877335629 925861257 987310854 998568319 127557000 131075536 584284829 867128497 472804496 868827539 661203278 921781480 798970511 873036487 758337018 768607538 589732918 910673630 668005061 754975159 557265995 718381862 490728144 708965501 349543412 354933557 925113753 987523784 886380188 969344827 358561968 373165556 859832370 874381038 832447628 903564587 833829576 902811077 733998618 814148769 129127584 318878349 176934341 967828671 345650394 917194006 839962702 860575698 790781614 796968410 112158189 576109644 647305481 650689126 275993483 498059619 518436248 589023472 97342050 285808159 381092018 953881243 49178454 696905011 640052537 811130272 200302069 715524952 70583441 535604722 261102543 538812553 539589910 818138704 923101096 947826652 538671738 865320486 770343355 791935842 235565655 675014419 427657032 894023633 409166230 886747914 637482374 787566702 505460826 796519274 162335327 785886841 304476926 813522970 542731901 911307068 649574371 950180137 246769072 672072518 219252906 268203942 879353433 920427718 120177671 408875470 565768167 676003833 10149737 955949813 456234770 614479133 177550282 734090900 177558027 505534142 916483388 942397181 361017797 842785475 614960380 658092811 882385793 983485696 251294615 746981178 202556078 562331535 527963699 979895799 39604513 876262644 374473043 469582628 862048312 956745089 114830628 493722908 638664552 784867996 597082440 789876644 113263554 533242502 195689832 749503705 75519770 458078874 947014268 953696543 230858531 332389442 5816845 222697661 899224872 926109980 792549017 919006240 59581176 346548895 187505639 594985760 431040208 606941993 256150081 315635965 248716426 491803602 651790568 993887885 545852272 851472463 822708996 961238206 44390948 417034900 641819139 805053824 857373269 913497298 237125582 278639074 701990218 998963009 632899298 880718705 685554857 757797996 910110406 975264320 505936545 540334989 874651871 951880916 367155563 729439206 192845596 438690581 262076940 267707151 696259022 929070664 513217264 981728758 593471524 673475250 875049048 948877136 679488272 921705823 124470435 686262017 878271831 904926665 105030360 485799911 730938182 870831417 587137712 837486332 99450712 114609572 925670959 926422786 730141882 814034806 77754637 593332718 996821482 998425153 939101458 969551028 923708618 953831233 242207156 571212515 309446978 393101221 477640400 692065212 658919094 822235368 584972554 905154608 931455783 994748093 483832904 632108962 772289797 908685814 711726937 810978692 910837955 954320500 793672158 860875736 987034432 994286320 437633061 910677917 657513021 904958244 276611710 729589840 114008594 446252200 118522086 558097772 643638881 753322560 57922917 773269367 417188369 878028475 201794758 850758068 117306307 605056580 933336901 978240604 539435315 751002488 541821893 613681792 51440507 579055569 718415597 915869281 483603055 651683266 471998644 691173131 802084607 949772325 420115463 542808714 423368860 723011909 706663239 936830021 182057270 485348606 310294947 785810117 786935670 938696117 734321864 755875920 670753579 755398726 384604954 679248547 1216393 308831857 366388546 887541236 529432549 785406306 655440568 750315911 577025092 809160916 392816492 780921850 974361374 977101786 905762173 980104899 349194232 742643558 882326851 920978025 484387115 875839245 906982413 996734337 100838194 962625110 551169307 703977801 973232420 973234059 685093379 778885374 281912709 949034851 536705155 951444748 915037258 965061044 701219919 958295054 581218455 797387960 501160488 649719907 263471399 694698119 699164633 709161657 223735610 486990283 689619161 995659334 707314209 724131138 921272422 946757161 798414776 876801127 636390013 666948823 528577457 784715625 642926547 899946970 221856497 779009143 116806479 320924832 706935276 879408970 336827248 423841028 236170825 703442776 944521974 946116937 422004799 891760383 510804340 667070735 138910582 920879768 846160958 912480009 908900502 994467782 160133186 624990271 448244528 760100158 434892629 715619993 610754924 741878012 965031590 968141750 545512896 618848529 258252353 592840142 989260438 989772815 167305542 323637959 129480335 240183297 490949030 582156719 854810738 993167384 326544933 994237591 574344287 992024376 660563503 907119103 547659441 845744831 943456151 998428495 295960598 451412924 832727316 970316424 81185247 618637719 49152893 625066516 613529637 761272384 518482564 725519024 780146275 781602796 211669908 630181672 543335931 963565708 541497327 855629045 549667181 773094923 53335560 734064143 25913289 867088202 97219361 727288014 388351077 461564235 808568053 860880766 458686776 911958453 648243222 788930264 406073548 889933485 112981635 127620802 361129802 915980258 858009657 983482836 233345263 544478243 451153909 786562343 100000781 275834281 453957968 943634689 243901758 687545367 965984147 973868293 339040114 449224547 574497045 782046753 235078544 892599452 175044874 775107653 509388185 643264593 659962590 728520605 411323524 446761781 52018238 612980961 80160002 369725689 245527454 364386245 988899900 995890678 767165870 999371422 803370319 970704768 179844751 211577107 272309478 290395777 203515615 515806974 700261271 754495632 4979651 492828658 490413861 656709447 965169866 982106924 736983437 967388616 103295527 693017529 601263771 973413980 162976527 511652231 638867088 755587196 38812482 102503679 637202635 839894412 692365365 826771378 683139600 911800315 887822886 910660091 775444895 812337886 387020623 922689462 938039264 977885512 630699008 973945240 403941532 842515843 88531344 623231413 11300307 432089150 692033087 862006940 834093254 937888827 165362441 583574048 890379775 911480643 31118292 953860271 196982561 607253362 465477475 638977496 744095543 872600051 341002303 690205789 486675697 811136736 242874519 980530445 946327137 953657340 214189727 483789153 167571016 571968083 986331622 995632391 259434225 828157614 847585799 900876183 513794571 563250398 121994203 827323247 282366149 346895651 91031133 458848866 665048534 890414286 651725315 928950737 361083552 397465568 774721486 870261067 207617634 354093488 157170321 734935811 713877494 790511472 731839074 919478709 65353254 772417537 586645088 858654448 602801104 696198927 239268014 738388913 350657724 411287423 670281969 917847297 853751587 923525928 65948887 328203602 758008691 872869321 247066933 686986406 662105298 825349872 530667034 643317270 626559258 652323017 100303063 876195690 132113122 368910242 245268259 696244642 965476788 975150236 645887488 859686120 229066645 460099551 356283717 504495208 437144464 980415092 681890064 997984157 876114422 980076776 768350990 778870055 933278494 996394784 264399383 859870208 181049867 989591347 525034019 883440932 140903387 658597698 957681719 994018476 171800952 875128699 223594545 272679834 993500411 996588869 503854052 530983907 802444646 831083297 905645095 950301914 253987914 857110781 611059585 991507097 164284066 708938360 222270569 317728316 138197481 164742765 4131953 727425273 154754291 985247905 621424514 975196977 824766974 840399690 40489220 742796877 577382260 784054706 400712543 735507211 433942943 697120154 801778764 829534804 595744007 978640203 765540040 882422442 321030672 549872335 766892141 816232281 61509027 99824170 528356663 634393450 439470519 852355977 409353476 925273357 67773519 627252386 534648942 959039201 988522697 993572586 55340693 819012334 524236846 742379755 68375997 388205994 309773687 979831859 104643033 943972067 753731746 926060404 781538309 841060859 755057205 965669099 902695423 995653826 416673078 544579631 768830618 836039972 163228780 559471297 545427416 729559876 484378950 644960157 797287963 800820537 383676597 974667597 723193015 991269883 680256960 704588841 486611403 630813421 637462398 637738281 999320925 999365594 744024097 797681959 610449007 930741671 524323877 949990076 520452889 717988515 491413259 522179917 242890304 611101881 594222572 608486950 85087193 811308415 950938231 982220474 571114363 736854103 95896983 346453307 947174281 987260551 673436010 786396508 62885744 322879140 652900347 871070880 44556610 500925211 754624441 889321720 420475562 821964395 658950275 937568653 583185741 711493553 125030176 602692985 533077633 836393638 894703982 980719665 83176498 668983541 15572985 389892911 345123992 769624204 565235380 644579389 69788484 225109866 499206665 852984355 403109215 787695309 416243114 991760396 574092566 823810493 744091735 902623843 327708058 931156612 174072949 243753080 249824041 947379605 481527134 877368536 591927526 865826093 149856575 875742694 725765805 926927292 437835236 659499839 576775210 953256646 692980494 836810259 253673001 454513963 173475742 793189240 896271556 975844602 21596408 215612152 386180186 733457594 58959999 612472090 21260571 780250500 300554013 687267877 972216812 975759776 907451944 914836673 151804383 436166547 500770053 645770949 846326632 857355748 810774986 976641977 893590098 955926980 540516246 936360109 223322913 682762867 944682461 987242045 164958244 550980281 519706364 814773496 675638556 701378428 597814614 985346868 410577050 817435917 415937247 597165982 777200123 875932002 566810845 821677651 921287878 939674707 446680354 715751088 904202249 994082903 855271890 928106394 758260455 824149044 712517910 858412483 906752756 922421944 569462265 979640736 697688979 853566155 216433019 518131231 660877436 942935718 145352153 311334885 642569623 912933460 334438271 991873779 223156416 370786618 654546767 667892777 616551334 955933906 887199469 943964849 777183070 920715274 958713127 992119573 999314331 999345844 940486271 985485300 701347337 769148601 966144972 974290333 991856438 992023373 538139884 897120679 687811242 913641456 157867292 238051027 152095108 290149133 320233300 873534015 645673034 908598255 9508374 594340665 360387007 893567382 427055863 644547550 841318699 953350289 395387027 690402748 49327161 138971314 662716450 786213038 670138112 851054378 36331346 479929118 63714224 201628343 156533215 538246023 692422255 976680127 52436693 225428763 859677474 931210251 350469677 496286768 924755566 934860912 365688333 422077262 967576305 983419374 734332824 797922319 874960077 902398418 163049233 585320647 611538858 936160272 459984352 546057267 567701540 881772394 808547460 897962022 572009089 601550789 564372324 967899526 119965513 873703420 630884780 921060249 374530583 896086526 320891579 676993083 238370472 426628993 280548291 802152001 221964364 478293828 170183729 706822836 610037769 735271130 610399821 842740279 691971597 740525070 194415137 956521537 144964488 570470103 899288941 902546427 989509680 997046832 612348490 927582312 616987622 997801125 399803576 827720323 592880889 682125766 980509380 990036695 517966655 553547300 799399930 954312583 402597156 986195418 13828619 215553440 513359559 744609715 105384966 537889806 70257574 333952800 702591713 879944568 724180657 948167457 503991159 511583103 27566261 949703148 316683536 378155832 660516453 813930730 368554513 685671009 761697463 897803422 261849848 958748875 267460105 331641289 964876285 987516262 370280677 724089085 138457710 146651471 845487721 974491897 340635372 911236776 768687233 855838269 178305454 299289629 641643391 991198435 111819765 347887776 228969680 609635509 655332476 999155722 153514511 701276339 37837973 828930366 660690331 752288791 72072823 227149380 162890270 996124331 752804282 927502189 829332537 965265213 243385734 908550875 620529869 903424677 100190983 929021537 646455920 779776038 988699392 991990884 220768984 375087765 397941739 936410029 387192817 710820630 696458350 958093689 457654813 581363131 840389681 985803619 703224590 729960383 153310005 541564457 957094795 961108389 905542017 919721242 278727620 992250367 248396142 908420856 75980730 779059635 908897245 911530013 606255933 958380211 782464258 855369334 52851101 647809448 967585965 988731030 384193841 423659337 188136876 987745783 756990850 780132359 41402626 944923723 548664874 954348597 633367013 738087791 193456453 621381839 35200423 320882011 954701163 970878287 200261339 787840340 189977050 258231778 88571603 890919942 572767335 731361474 544338010 632960165 32055961 908880102 296718053 620964990 707557518 943641697 581732821 717019373 301375280 582066228 15044451 285525402 497828319 936027439 868436868 931036411 75981106 593904220 776566284 947853587 42050287 107262341 923737292 975513609 208599969 773547117 783848181 912154761 786715702 887067129 363496507 479063531 180346462 981267834 674585419 874654399 328612380 338068724 613938177 851781144 368644268 510781299 382605540 580045127 976597478 990689395 838050742 982295652 647638201 939765152 76447573 934478378 708693057 931620213 937092376 938479608 551366618 923782829 241257978 890295234 189008066 377352651 840290817 841325316 479091702 817143402 877011632 994445034 486349176 542290079 77291877 368212535 285423706 358424347 432153232 694943602 78384162 659842262 614269053 837157383 112018825 522307188 515240592 600340605 654343548 699910332 972373374 980580135 273156243 889862775 271693023 541034025 77731598 892491063 117159364 808299398 879922058 933943385 318248829 401563073 767241564 825864711 47569066 484880380 620098165 697241143 940473620 989072423 376056603 894775497 28090013 851817281 324148742 624980722 143062239 165487184 355070466 909327978 791090465 920112998 670074006 823205793 545317100 932400830 161063707 778248291 937972924 979672948 477434554 776345958 752632899 887702771 652007903 956435868 800341134 991937086 262272024 535910109 199805053 440337345 252586762 789575160 253434851 800160493 780276664 885546215 906611485 928801401 397518754 877636161 168238028 438915588 974082016 987835872 431704400 959501927 961381150 970906048 757350652 846072668 836908628 900443033 979147242 982104091 814944333 872591454 887625365 963793640 971556109 992670001 257116955 972414444 157906614 250832761 296009938 805016104 532547101 968457394 571534217 572308922 664602898 879298402 912128525 946713195 477975945 584887455 837415954 976887936 161815129 344310207 356688687 481259887 942421866 960588386 342257144 982996282 831561616 889127188 336251156 458141716 305376054 491681651 645195645 699261037 27597146 296160133 256448280 727328307 712831916 776046864 469908618 634363770 792063727 865363572 254242114 495041995 338143271 750909155 160432650 481041708 546831323 797089632 164445720 648019072 621251275 846754717 810761828 889007124 208290794 234837878 838419847 904790392 327978979 390392509 425040263 819295494 827884628 927706294 879229626 993994987 766151284 848731244 911335359 976911041 517226106 613903950 594317948 924094359 215722688 275561983 383400988 598150065 291393589 923287442 799515844 898450815 269064950 568683763 334988931 823942151 816298263 909121978 853536157 882781897 500538617 631158518 69793493 128297439 981295870 996768340 526994188 771709093 169835700 740351306 926795421 937147794 777530621 790073471 409128270 435524350 818082328 926276145 360372765 523701314 570705671 862562061 886102186 971005788 349809038 842115259 157950180 211925098 997068910 998282573 222028769 290486990 850379854 900543744 862505482 884179424 286853385 444403504 507041862 536602857 224386011 796098254 802437189 875735503 875703445 887782352 495839421 913770765 528669188 668842430 247481830 924335603 832192300 879239205 674152896 751323974 503526954 874348368 338324259 393164148 770240072 866231754 874942935 973731725 222256538 725314250 141363640 885008991 158965408 223512659 282621675 533661745 991140043 994305811 708484269 883635417 866725733 936847644 590878619 806282911 764854307 765770539 648349296 864904081 543408880 846410014 10166873 639376583 582736098 994708727 198003234 983444933 885766819 893082063 150973037 897483001 556409210 618313098 814920287 975226357 322274952 705512913 710209492 830314937 272537906 328986043 165420108 446161229 245313388 773870052 418377280 479643021 926879332 955684882 321899226 983285027 619661868 643925386 509300297 984851381 196863235 890371017 862241933 916095157 169586249 382173067 223761706 911862018 838972429 974115411 641078198 732051812 596124802 601288734 645336576 739687114 382988962 472006718 193955812 362033559 901722786 976048338 94532701 291659768 993848552 998817118 969156914 988100570 819977856 883951194 893916240 958343659 210744978 384412838 54401371 544805500 219005058 727909331 954570844 956092970 924043145 996572642 989689663 998434025 237198828 444162640 336466427 576543047 736238351 854338827 668621234 906554023 340690705 509254763 623228441 964684321 449547502 735422885 32447073 511161894 90783393 100362105 600977452 620184315 502068948 943487222 17761188 830871547 66324510 187121132 459615921 964063249 981994630 984668166 68564098 231991111 327647972 722660950 179886475 532071428 267224634 541911732 226651884 746436306 350779855 371641255 864098411 903464122 995856519 999275240 215516724 985523104 479980326 494105698 521850538 526509104 664364063 689508259 275042877 645137872 950424900 996614307 326522134 517934397 655497993 996573818 329153969 663570486 294175472 494863085 212262415 884042267 192380155 650201338 370470612 748390236 442976086 831769226 411084838 466923953 326751275 470173550 439513948 738212944 864782314 997233420 467964751 637565760 882706142 935264282 350640544 649660481 440659851 596753374 813920838 974374216 995884118 998003129 838302676 876604855 219795190 612261665 824402392 892668094 949138451 982658881 183882407 255320382 20894592 353694384 444101307 630418632 666143674 780290653 808346734 994534649 749724099 943048182 661104777 826212412 81130715 649928734 503669051 707565468 713074783 949615340 515210989 611554647 80848306 552068645 807104191 899335817 974258482 984261591 992784218 999317292 108488783 639916665 37093672 337979957 836572244 974093449 46508672 501138927 989321113 989924325 416470603 563563132 159194449 161962149 856743451 859981651 633517414 963588787 740634242 781703781 474909817 597827372 648817520 988519639 526537015 749296055 432583183 998359082 111468836 315752805 306062158 788125642 297265677 329455762 810131913 923641701 754273107 779206829 114175523 378238558 866755301 950657113 790543393 808325683 495896352 829656998 969081665 981505880 248450302 509866867 113758998 856734885 925562490 959035228 866409972 991282634 713675712 917122955 794266167 827811244 20865793 998858242 26588105 72639912 207827182 892085179 582710721 669887686 163513055 469168189 329479260 441769788 226705636 234487166 587707942 655488558 48628511 276093951 103812556 395500796 588878835 855988195 747679289 870727569 504750385 521421601 205180040 354771130 534120512 715541085 82945952 718336881 980795207 993047217 181256309 834605017 870473103 965373635 242719602 746111384 129584272 131149342 648694047 717749650 887592332 931614686 736117474 884038700 641159445 733254958 707508066 841905675 709837743 761460371 395591206 711939796 420682196 462305590 930525156 940545040 243489556 431223163 724280085 765629914 802849285 814439398 438085014 861223872 599113143 752385330 923964060 990622514 838929719 951598262 872285406 909713027 623294345 917428029 995178593 995421844 259080068 353845828 592366756 743191862 632505257 850859559 954691256 979443598 711139132 847773282 110605129 829305163 717515077 845164988 486341859 744297261 967465860 984461811 75601441 330364153 335151302 689208215 964146893 970743929 162878786 839870825 838155930 970783348 671334202 686580437 170200497 249331909 713314262 967295205 754065422 809848933 722398164 851673703 9902489 541949842 450417753 787222143 688114518 920980880 877587848 993191524 139827792 573413016 959072392 967942287 642679559 892930832 494005463 661045024 949337769 992749407 755809829 974387999 277498245 835262598 894955751 989241360 229491039 973822320 253307232 578252513 806592304 959349290 623377145 994416849 552193747 564405569 884903764 915686275 57769689 677135570 474268101 870781692 404143830 687440279 765628955 941906652 245842611 251414786 442353081 452919109 603978195 673803783 594825394 961578959 794522362 990890111 3116730 743159090 594952380 693201037 576923649 826995933 376022306 758770902 322141507 349717197 637103812 928015455 516380434 589887238 238263436 727902068 774643986 776319712 930905139 955525407 82512863 955361050 273722916 732804607 322687615 734303956 360194848 481565152 534124480 771853587 852448078 899960945 407698586 477923974 599531506 810983490 455055262 915545450 229340873 742219565 33130967 769898784 852794745 882547880 153893912 452237966 243813330 585273415 678148878 875465549 704080915 837795179 1412354 766798201 39008557 826050889 294733825 319259176 876521731 983384734 476806011 875777963 250313339 833487890 600022776 874893562 87149670 532414047 113166213 145204302 246897400 998335408 429422742 519732684 231389790 984735342 367881862 954993211 584508143 620569816 44680420 46983259 159548904 447476307 784781822 884657914 321056098 426265878 282354678 593681931 235793379 831208676 234609840 863512047 677540302 784196272 196322535 295102890 689552931 944118499 576513488 715688793 644219372 958414152 137730012 685236660 912218247 949226226 619207718 650872974 208508635 929221271 727063080 994330441 824620904 971774799 813459134 923535348 391490154 444147824 902522016 957599830 523852691 902235365 314810485 536656058 291033994 997638216 167594770 964433016 973112714 983585200 717509216 758707847 856019240 916871397 737307977 779481469 592775438 827304297 921182714 957760637 594308863 961826709 598476938 657177535 369240354 684307661 462982560 490652530 741025808 964053404 118276059 652909883 362581947 628260876 225311775 660993773 617352835 647204968 805373614 821318717 370498234 748387182 908398085 989875269 703766542 844040202 932114583 990696974 903899043 988474595 112164389 383700247 130374490 538430762 783311059 973127872 494891540 550512337 714361109 809384358 663332387 953781339 556590439 736854852 439142602 638850639 880746124 917864741 767299487 905870498 519986057 704240963 480540933 876344320 159148294 609543494 890143506 942009227 905087965 981579175 591916061 681345514 938619851 964393495 462992306 626293302 686241309 876222096 509217671 533284070 705894261 832155975 9383342 261862895 460711594 803071976 662899395 925019878 549806683 757879258 293392576 345347038 420583188 615228339 831725687 983535901 749021822 982048861 244901304 828535607 943055122 976741857 330798006 901636551 786373177 897038230 917482853 944818800 576310312 784725241 463960647 548570472 855585796 983116606 734534988 809553716 95250983 209888180 486350054 695966589 237518958 242525463 760438311 952892331 567226585 824932793 100276498 141217484 505369050 535549768 886061144 983866921 63357453 508639058 430591569 752272477 456814339 556425983 386452880 525227269 819922867 853533846 414724530 550945246 130570979 869393958 763067122 812791153 120484557 618555925 520347000 689191473 133611026 702357717 199540789 283568401 395402338 694916490 22663059 231816009 31139349 276519250 8641503 927726199 846360793 908377832 22789225 114630911 63107142 849589619 18373692 806654994 973814645 993528525 114062421 278331144 287555685 525635363 360126945 922286735 491997467 669902450 34275905 134571602 416349385 869398185 808579252 920193709 74100737 386751214 161101331 899770576 6818282 337018638 422057542 897096083 237699449 638390323 951431358 965528796 146798771 541691307 134339336 315219820 512331903 987018425 895865507 956121606 120829623 915447373 53146493 686498759 230189322 772212299 977486752 999131307 781690002 991620633 671401703 916081426 591727161 606108921 973836043 975170293 549706829 621181410 720692587 914558404 702530586 941729488 983197336 990675499 929958634 982305340 883212587 993415851 366790215 892990907 766883662 896856107 382333827 562195889 649969616 706309975 204980161 735447740 526528428 920126794 439273508 668154860 145193911 243343451 169465861 563611454 99106673 492328894 563331728 720750781 218565955 897496264 613415495 636772810 287819711 670673427 957877628 969012631 307207620 720757476 784082996 836744809 378544920 723241871 928183364 931269408 934595432 943642130 423925118 522010613 171071098 835731563 157205621 918572944 250280428 523327250 268830297 676303469 45974367 295651048 486251675 754355622 527508016 794439527 55505148 293338881 916924806 948216632 684336986 897567919 876899884 956878575 389997031 893828522 174004406 771197546 721535968 841340458 457649716 912418164 240401900 290938782 692966811 801855977 95760819 347611207 665850377 717467763 160458939 973061566 504183977 670833133 830408583 891575417 589597389 746141528 86266232 93303377 666638375 968074392 646517260 783781128 810037999 820353243 832879210 981204727 918965731 953692342 832478761 901134381 182356041 941875034 117486823 719657940 89516377 616659144 965280765 970248330 465820365 641134132 665355557 802552712 224289088 279527799 394874854 945503926 899894053 936027593 699142537 914720389 517538079 524702870 514848913 622100687 888734079 907295626 88144516 994659480 227529900 258404720 302873673 598268789 520656180 629309302 400978837 992478843 955598019 977720753 708870374 869667445 630531068 977380149 896740633 943941118 879967381 938274879 940729613 985511654 28173259 658432172 594616634 802477910 156217175 682100270 400300666 923381624 219980769 880743004 96882325 903651405 109646265 387240536 529399405 557851962 753520782 817316801 510666692 669483172 565657736 794746319 343295059 635783461 36101408 88339588 819302765 934634344 157919476 802916433 28555179 113828754 508899817 917212760 947331059 987186887 355201450 447693068 528588798 557468609 929963849 950793466 148466607 237079205 629429009 974725337 987671412 994400225 488788515 775842298 950243047 958831559 698665560 907243296 864155897 946011060 472494773 529925305 428547591 542315530 932553633 983597197 82168915 362145738 312456992 506038290 96864796 568516052 144726051 542333312 492079399 600875875 684927899 724745224 459781822 754824442 494225740 661580294 128549012 632951471 126859031 828533037 439489220 708814104 112187875 672484917 556469361 568469074 352584731 430191544 221980559 224717637 612064869 694635055 695288173 716123168 544696466 830391692 778961916 939133819 841473406 847345742 12006828 937366620 723953884 797499656 634925653 715852165 721935324 817526526 697556635 780610520 949115749 980224710 945065123 978887011 400743107 700729704 378722156 986841017 77538368 402993311 936054931 942403561 557274489 725102448 163783672 798203104 492646788 903307200 114005345 771573588 290688 445728048 11928005 618967209 606118090 791618840 933936250 983163755 423906262 576543220 907816675 964725592 362010004 386531898 837049875 857526986 509705271 647348812 121405383 742749345 412141799 792560306 275370365 829624466 656292222 745351093 110761466 163376680 774938605 918132323 681544226 830312684 827421644 918900652 615671734 683912344 968017988 970576790 390537459 490532396 926768263 931072144 355013266 375552339 842273085 928348509 235028427 583484655 643942532 895256550 56315326 698703082 83668656 948697472 369617235 412684942 333821454 745972924 153864117 210015655 817059849 976598075 202382388 927627229 754248348 881464239 175386314 737000030 332625814 823421478 491021269 950307588 97271424 789025353 520043257 841791265 112380515 367656811 293351000 439963636 91727287 774835217 293058313 403295521 356640713 830348695 258634613 381531010 355365412 421897088 292732387 618566100 126603186 773480714 278423227 771703160 731778170 943926173 490276950 810992351 937809345 986345123 41049535 493230896 645635637 660842654 697703960 730631368 773305312 978042793 501657627 634660719 92241364 544708414 852692253 909256441 578589545 678306168 172549900 942667463 630414427 691461736 368939213 381063741 196642084 959276429 396048563 916992421 229365828 261452531 141474325 948049606 241825626 471223863 565749513 928733023 480541128 744509289 345407627 863578315 831230518 911237075 504703863 752107412 983066698 987341390 483946959 691397585 586622499 788080460 451426317 728145916 232716510 816731171 455478475 659688524 65864255 880802072 35186833 648168296 195703695 242603230 274726035 815277688 658873518 967603697 603616560 644032401 219382768 317086933 620595937 945313124 304432467 523561708 928459033 996569658 931696633 970519648 249180983 694128902 359196560 806115333 72181178 579562999 270450859 834361336 237328689 466892830 261565237 888344540 154195777 843727236 966962033 979544810 187983203 833072647 529813050 665734386 360229424 579642135 479816772 733643445 768492324 950775309 500544107 769957796 210542691 655963829 734774980 794027628 854610976 863573237 598354308 887746191 646482292 809337348 169846282 765772923 486909941 577745938 751696189 896106517 522066758 644264035 427840884 442288619 751716069 955050583 220277891 959429925 39382675 469988024 154349973 281300035 442867065 686754308 451293367 532258965 504428296 810464788 192398663 510244993 459539611 744169750 354479043 616169915 335487376 705123456 551104931 638868503 368655311 942840219 532759781 599809809 915748853 949216020 899647768 998638599 73183592 795370022 284323385 597945637 630801492 904450306 751741627 766410561 620273051 900042179 403003484 507329502 470244954 892873291 194495509 537359704 236535770 816570716 548066909 795880814 573660515 946898171 938220852 987789354 130104064 549182131 747843434 972335032 724559158 997127112 302765368 314749315 565313261 766723545 940093213 961697989 453146249 457031940 440312900 509130503 351067148 816525577 645828804 805441433 510838684 862640142 47998363 503724693 947860401 978156634 899158226 933442274 184161658 342790105 303218291 647911883 550550678 995506013 498520445 825060315 328132051 710570399 129375038 869204716 582076986 652314499 445895622 729356635 185634121 274136228 897230617 951337299 195842354 538249272 297199548 700469030 165121095 891323353 278539677 733020978 694336894 763080394 346083953 384104429 955579754 971770984 496527553 653054341 315218610 711112462 316126470 950483177 445564412 721829460 397938175 824829801 116859643 503553590 862177413 937486025 207081062 527607742 372540238 399816848 98618627 840390515 460899563 595978062 371568535 542834460 214375270 810617166 104790988 878386555 733586918 980306012 983747183 994880489 884493349 961893436 191229716 772948531 295475277 999051524 207625925 719440914 316602411 820926925 200379068 958606880 284155663 877697815 33571371 140409811 718322734 727556365 100327367 193479936 861715529 889416516 389436116 835863533 857367768 919601285 997933609 998901497 12666311 558789553 831758828 996930570 22052833 380665088 402368129 565277679 805243288 858946349 430122496 758273055 935435755 974660987 743822465 984841748 278030642 379991209 4984176 99519651 692696672 737236887 97411443 609126232 905658062 957374650 84795683 889839897 514749684 985700121 338449249 659193054 7005248 281395388 491661274 878155113 128536534 275867142 617954644 707434953 722253123 892438748 357784047 402501461 232768473 812130094 102508608 975945610 928486925 928637708 818109803 994182649 550184567 678593468 632149753 930877542 281555028 680850883 451331049 635063989 788498104 993922920 769893070 994815125 467903603 867759460 310674844 412845727 495867157 725594108 606686989 787387637 730613648 782109560 181253289 918517136 567511450 762760998 892486923 917273417 900785480 954694231 811862325 873066677 959573776 965344759 177452080 302442284 142510850 707213743 692167562 912690167 641449093 809865027 367830124 477238402 201598661 794894584 180337788 209962640 626061700 949402417 693078863 917643494 240472303 976367486 331329919 548805152 935579001 936502397 563227206 899317274 985673937 999268135 667817972 965226429 527716488 568725589 776736341 818882280 750441629 877982137 76359869 182464932 721720726 787304734 678980058 712938803 111620789 127749495 368409764 733522848 669659677 831760214 436694845 475481302 443839216 595928943 590446499 928368332 486224224 597524030 854610876 872107301 717514623 815581269 299376500 744549372 114679831 829240809 849898863 998935424 495302743 908283528 84410562 779572192 367556272 538044335 634780168 923776586 333281115 844211398 701210182 799835979 455547634 514684745 917926397 955989774 757976878 819792065 734426429 824352524 316320316 548613816 339609416 563324708 757961694 809903935 345444518 377227835 657891288 837210588 240689299 521524974 852102224 883466582 238997870 790550117 308191901 378105447 261103087 340020873 394501219 678425774 954229799 960837094 220839387 540849483 273261393 628362483 819844685 833630037 43471086 903352820 891159900 956832945 579766087 861970370 89747425 117561861 874924978 968962143 427022040 688771214 401571822 701896121 234128819 449772596 9484787 140978981 279317995 288156405 302883779 773047958 275521883 412004266 298204604 470891412 962149077 979901731 539641692 916787633 631872164 962850945 382312830 705004548 580926925 707798401 156366586 654020169 80751673 468791589 783019337 926758406 786130509 862885110 325254679 669320364 167475591 359872342 170193337 631273357 941440533 963143046 57723781 169176972 23171187 478666699 42404445 527285181 127284261 179576428 134356612 942448179 21025391 232020978 718008722 807030486 442744157 557833425 756999812 932469897 278489401 334916579 760662886 862008444 921745952 981488615 628870438 687442765 757974794 842125496 914663157 942087888 494118706 960792082 270539990 846809415 154442578 766300353 143349212 748034300 143364095 587206913 711092782 815596179 178761633 655728440 187250048 464874119 871777744 921738007 277539188 996658155 715241840 716559957 905686911 942951471 726242373 999174054 531432165 769601528 78132780 598554051 201833312 785614345 120241707 212642392 158708370 398393972 224113029 775127445 866557806 974481229 557430974 894451400 699112597 762090426 485354219 693863707 156175865 850060661 246251560 999293252 937566183 952558971 779917328 968596741 697238095 968975181 694710812 958618293 27180086 713559998 418206024 841060207 733329612 863069993 308804231 311269431 882861295 937729271 110511023 184884262 579147043 770172730 56254999 278416430 281829805 452191736 95496605 317622835 746491533 886095908 206680031 822349641 103622431 701308386 617737696 837863226 785896495 889296913 32534466 513019409 447170995 618710001 355762446 546908588 138157213 261770087 882638628 930501798 998998455 999216704 932187886 936482556 882968446 961288391 744531099 756542031 209003387 727956228 610203251 992088550 808835101 842881671 395958703 517597712 257755433 876834079 281079141 338414292 721231889 824068019 22474833 290925957 491667551 542995358 963180456 998963698 983252974 985773806 758684017 825165836 290310748 933678520 300589148 370356132 525219338 922553937 198536258 220784332 344873233 844222644 18392659 223561457 315993287 796933074 464432927 471731999 689793916 695765426 178899020 503186786 392851989 908490727 807173838 872082419 312367899 588326955 76696964 501945989 443711888 596781221 837260748 860592131 335262174 757209842 586263655 698440701 541631516 691043885 3249787 562590739 854916895 909591720 877399035 966701843 715794051 723642677 5481306 451226080 380283842 675401945 549589294 781373117 106905060 219815199 832091409 887252753 983907221 988424752 335973195 793790413 984012526 993301112 141766989 843396108 664976082 750914660 975840164 992451954 44430647 118326065 557413001 824756633 643358925 688153901 188376266 337960818 63681668 561719040 514685520 796255654 740962476 928074016 463749914 580130302 210997190 618429730 305543194 521161775 950193503 962587527 670821884 976978319 500995574 929393146 116328845 864950486 272938955 395357961 276979997 493641878 414456641 932498804 886432890 973517467 372306881 452695452 926747760 956901246 883850538 949875800 742688285 961054349 183965594 299252964 164686062 803104969 109231946 251812521 240740769 413164247 864873938 876542070 332707681 706834821 375558276 773441965 885894605 897885249 674517080 929989246 355514231 800169970 919473765 970403501 848947445 971474172 779308348 960080437 37106687 565285518 519943457 843048722 527401967 897789289 843810601 895076972 25723574 180393631 442025364 466365115 455046201 914841421 421619959 728028479 218578916 902189353 852819626 982154206 198338000 318206450 472699032 783731808 849624928 854435001 464101857 684459985 626492413 923322235 705907478 815621262 73851346 88355328 48905668 574048920 997552993 998110393 997969697 999109345 34860466 684910026 934386630 973546815 692648792 991326766 813808235 969006342 744057012 860492415 533692133 658013294 744667539 945225300 588044892 847047516 585999010 663369116 84698973 651664951 919754741 958425261 882693995 991820745 484124909 758248577 152295944 589373463 130876758 853998370 496917133 707520218 139566591 598447612 746782396 899517507 203527303 471501879 482310181 659218507 593904342 659628938 782989044 786796780 492076092 497007382 509595828 774636646 563990164 596070798 586184428 913258903 755409270 888837227 106795453 971756843 302409157 488817290 556860221 931182712 332378088 406358985 319710028 496687605 659956811 933321058 336112054 835378818 991465307 993010175 190475562 368586267 122568817 563367866 676430565 738841032 354581450 674998436 847251539 962381078 884636777 913470037 598791963 723993625 695743844 838169301 845620290 910104864 584763792 732515908 786829701 953727099 666941798 976855133 604050346 758441413 208612571 698041843 359762652 563759647 815295818 941971720 641267912 844892458 738470744 881077228 420296460 888966370 410745329 846157668 774547044 881075450 398590126 831107624 788744819 877226968 500321284 886298742 755114427 770652998 605863785 761122751 908947557 924839326 941626992 980250351 718529616 949189355 518739759 950865971 960967034 966298049 956983965 972016664 52371217 427031416 319445208 614763711 652474284 676835964 931086669 947100959 210827419 957955799 373390296 800286097 143368899 873027439 869542801 885360547 434201363 931392460 780411353 882087321 489029408 817309771 898114001 961182483 737151076 960025590 212631361 438402357 819966842 999105212 422413351 981728765 551765447 952531639 135670248 684735768 681117487 774309863 206250591 665686000 579163739 685771654 32961650 802901661 983063760 983616428 912673695 946227095 149266183 989847978 523280987 612546295 109704764 599965020 683591643 902762403 559346272 655965322 157068440 349499437 904651548 969309885 505961804 758485956 653294253 993399280 86466917 232663243 475300814 562846735 624353726 708292664 927380994 945083103 717822371 730554435 389029725 904365263 891449887 932013963 195086149 482248377 55835306 229966126 575578493 974718414 101865046 143825884 69282022 451368049 900101344 910633534 741579542 854009148 753131850 884343998 413441384 935362529 449456083 665206867 88266919 797168536 25215104 930700909 524949289 714833375 132140258 684716685 234385601 347509004 536541114 637186910 397913097 458788999 582665925 856068137 750236521 838845782 886769602 922095966 531466907 722486335 985342227 996189727 539861750 763670850 247586291 333631887 854016801 897385719 845635158 900032932 724065496 754094118 857849416 884477459 71308635 719236853 69934753 686913030 583227775 828055304 926940890 954553397 405601350 442025339 110527100 868913226 170453370 943686962 454958731 807087979 297463558 310636512 250940996 259566683 969023324 978238977 320486638 465246091 625774478 649511254 315578414 482468832 424317228 750165455 603995643 838953222 354224750 908218889 731322146 967080970 304197542 740291825 862911215 990314559 464702524 623599529 436475827 578838511 347018640 725582624 488611148 507115770 239089675 295628271 777100609 975860859 745910299 884727096 319743334 334035712 629326768 911108944 337003798 553642205 253339887 922345520 441478949 629815904 762851353 974059141 543694241 900240407 456221928 543376692 221490019 830083888 481266762 708088000 174868853 391354149 7862863 545188544 693800224 784189941 61018113 881145113 956177527 985880681 746569820 956373114 310627992 796307857 721988406 965295361 129341453 774872174 316496586 830433341 227785426 787613691 539598646 885003412 101474626 342341078 943362484 950918345 145011504 171531929 644169671 750824868 906090787 995453120 945774330 995603026 220254447 967612133 137260644 325783982 384650917 677852148 938295800 955928533 454004382 783506604 615557538 705015831 101469092 780545528 152872710 860088586 276873395 498069760 680855315 871173083 607793383 903253174 518517505 713884110 434296894 710917007 983050530 987788134 569952694 927625982 987707585 996877067 698607570 792171989 963014081 999102746 990437818 996646489 15255657 202310489 550947301 627021822 707561079 975653461 361927229 935649299 38892657 287935081 724049936 938116468 747720800 850743280 326112977 432231482 153314299 643284949 127230200 609145384 204952191 379418986 265946933 855073684 508061667 939197382 217683797 518544734 579452639 959666385 923768414 960868285 355243593 386462291 27593201 312911740 655687816 993922206 196474373 371028387 307112213 474075952 518618971 683773072 114560154 690112994 787636159 984064473 574846321 977511785 794156496 937191878 127710296 629326467 839817094 842304632 627376087 854122673 458618246 954882051 286824613 624014952 577917757 648483631 62853181 876414838 830766879 891496178 995991003 996234938 587359674 758654096 81251267 327017672 41440591 920063731 669260043 719201845 786959986 873559925 223668617 248155843 292687063 717352961 287528827 468661483 307510470 507102808 224074629 253606549 334340371 675971952 908987967 965004923 832677436 884412524 684116547 721269351 60994376 672643367 15619651 732089895 349258709 397764855 920425680 988097124 54391426 766496263 398464898 931002020 962792557 973869427 50392343 456700879 542551895 608163855 675729210 878024896 239989378 398321507 86625381 352229872 204140419 385171220 744299961 952471773 510657422 662914452 511258783 609129585 74677392 295920472 301293809 937753834 929182762 957222274 265736429 889185637 887092063 900902940 371188306 691033940 223298655 874057806 166373311 493322497 804155516 975468322 519912619 793184203 359234490 734837462 273267426 538912072 168208142 889821567 177211937 802612274 67731376 308923663 135205949 715493207 697895832 713611339 782606798 846622855 308058489 652285712 823235029 904144672 975304048 977952381 17480898 149251556 885942828 912884390 335313633 364604028 1517817 917856891 270628236 778605382 889748211 902567588 426713880 975730547 532810183 847565002 986178418 988125996 345812127 693013367 69989127 343778266 214733067 476563541 112024312 301056817 814940445 850104693 675894910 687929767 648563435 680519982 384403972 979403439 723266281 969053552 689574775 972195208 644146981 792582722 697400287 876879586 643148130 896804080 326389055 887578212 332856881 733479763 854807961 869530187 321137995 952250066 604798110 924370714 717598337 809269848 755533753 946217648 997427616 998275854 299741241 588200165 285417074 498171741 607940323 866464823 200538727 963911889 655318121 694162699 941504965 958190254 419380532 709313868 120590124 506758911 656186395 888164144 731975917 995940043 713400048 715731389 356802066 376773991 997560321 998118635 752459245 952295158 596212482 919713487 831724574 990003610 516009270 693671485 520007709 886062282 425800025 896407434 231554785 251178139 982740622 990486006 797988595 865972842 455498676 844549093 768032088 802260377 176817085 756964471 635093769 997782970 486230238 801762698 18105466 412472923 804448063 943564485 805643802 986946690 655870369 993649681 539076960 842579464 812251404 887109295 519159311 855649151 850175652 948745324 829578286 940460010 180720215 224712354 974293041 976926067 981379811 983932563 793964390 926196389 275250733 443823351 251171440 636837150 119942926 982658042 139505578 480418897 326407780 896205150 26122934 726698791 551644813 726793626 411941545 862899694 438898111 905326488 6030234 787935282 461761751 550576017 605260351 795126377 236792302 610220624 631932278 716689230 475941085 806608856 459937695 622292257 769130004 895786650 825258167 842932122 553694571 972634214 495127847 811173617 274637921 382794848 312081689 595803382 269013025 345903943 814628318 947072158 803807677 956508722 469281492 486355798 523894626 985287147 789374455 840933565 509558247 624458362 163102611 946039969 312159054 878238079 795564213 901682927 209704661 882830528 697168759 847897781 350222160 354889811 516399618 592833011 119695520 741011842 616368124 977234258 671215665 775706614 436706174 653163474 205483882 749603987 88707567 358004850 374953747 386238673 233707280 445389730 608714683 968842611 165941165 315378817 140672339 548169920 381379244 737209363 438394232 926869607 768632095 784989291 87934775 131000640 42283002 327122297 585101440 823670154 462464186 673165071 816485985 906366380 942856578 969315550 561506334 728903097 560839209 826420822 641180278 865957741 977526826 995357959 949007329 996527798 374312784 607636538 312127880 566483565 704532202 733698356 262417897 307268638 216708109 265897719 994109498 994435574 474117450 890936889 265050464 829252067 611558696 867495215 710773804 905596081 13869464 913285841 271580644 876720753 349015126 644384457 735297295 762425158 326137460 545287313 241792492 685917371 880597458 976607156 700729232 926754309 164583313 404505737 71213122 954578966 944389709 975128035 737983081 933902578 271886308 785474472 579941872 780795431 325681448 981169945 810522044 981556589 761660205 891677011 119919296 740233859 657949510 838639534 21812961 205357552 759752958 815771160 381836690 636993568 597928085 964397464 721898186 732111351 902547740 998707256 392972669 576974052 465924062 730015074 330687640 800542768 309946995 329165499 469900247 550447950 480401014 694197681 827774955 896339356 19550945 36192653 970199411 989023599 987704188 998951308 573987222 997106373 19691097 875577606 630448105 854227040 35976796 406475076 372419363 665227102 922202142 937821853 217283697 433674017 214126454 569089323 856306884 901391132 442169507 996314423 285171313 720922681 665458481 965876489 499885551 884367666 334607208 980080378 685974642 756436667 467338448 681943568 613142428 851470486 701492922 824158679 551958111 910653910 239582173 501340809 811278575 962583826 113061442 853321173 607680078 927035858 340054280 771738298 694419101 956830735 760490456 907983074 718451191 857978512 304039729 454754455 165547149 447042589 926668006 982040291 637802098 651490836 521300981 884123892 386898345 807110517 359312667 557397790 593552392 983858622 740185369 945971659 844058473 966027365 313274318 597116266 888512348 912719662 608294210 695052430 595014013 598762184 538333198 888944736 948799296 985481657 781069697 913604978 316165691 474478191 260474682 326979481 960798254 960923270 710479201 993313877 171752804 803497920 488114090 967428728 978044257 995833057 371782800 588741963 20868649 460971988 823730878 870682599 490434024 951646689 86290225 157075350 58476950 210636705 319191608 760631022 578788073 943053895 93063993 953686351 563940196 863219895 39625488 74243701 212292560 825366795 190551728 549415383 683486582 775855306 988747485 989814227 622893739 841429243 428665781 745233006 417899820 642277086 874694146 900471025 777618917 919947071 988255846 989760960 58962306 868152613 864055802 900190052 699388312 763294932 766776519 836328569 393555826 651530337 253762332 561018780 796099131 909969152 602531312 808534803 986477352 996096012 172399050 589020445 314836047 946273043 502655961 678597129 842795497 850692328 11408208 282005191 708603062 788033837 583344732 645642797 307524618 450035330 993395528 995209894 699291916 876521193 236651409 659766135 279540983 333044911 148918848 328271458 245907810 902802561 23771505 830051948 375195865 392530201 929463979 954999571 649482529 950072327 438074360 516996435 215637658 997902542 844000006 993699868 855973728 865446845 704116702 728784429 281481157 654811306 953576752 975153741 542052109 601916247 751037386 949110676 991788109 996142740 465196493 822004185 142578185 788056979 315974961 684800871 677695163 961679024 734303762 861189020 966760658 972418610 563134045 803057655 194609391 577939571 323196875 723286933 810082840 851664023 877406963 988443640 742481426 751964314 397760121 998551673 981205406 999125432 242027708 251229506 864815035 896848610 700492874 933378873 898462731 938509723 826284818 929632408 950495958 991369106 288078984 866346411 645669478 973044239 519237387 895829928 847384072 942224605 933034852 940911927 463962076 539388578 166517463 289623596 315085182 927705064 259968310 444698430 958248097 996114218 642103930 829184197 66689287 287438131 60529749 581562246 558328984 625986912 524915859 535684902 305404609 663613276 718004311 788678030 657972950 775988116 56418084 733590612 655002178 948242280 14382147 773774958 144014127 685658232 565475441 736870766 484224755 720882840 708091171 782542061 659048823 779978860 948183726 956106640 573328969 865789209 755312854 938860750 922581742 992730042 261819773 476524496 311606810 850793966 413232565 878211107 686992570 902183828 136123009 843771675 654762757 878771722 661624192 973760133 46189165 903417413 7157655 837018174 480512883 800985872 307500996 882687246 705617647 760205547 315666244 625549564 360919145 471135106 496218072 651957167 160802141 287677804 108710059 992523542 912338652 972448214 323555039 589061412 504831683 597989328 45131314 585154542 559392017 701714230 350898421 377558087 35323909 764847053 356560872 402763714 231592666 885360871 925360429 943750665 381388044 551393274 637386644 663050890 438877960 536641844 188639822 426313694 117832591 867836457 508911644 708454009 516189066 917749301 640040058 822637417 298495294 859453368 906602486 926816021 141705101 709717886 93806430 101640408 779532260 877121530 412034982 665182026 372710968 674006354 846750253 853802839 188544920 993079639 9024117 688361139 306104985 919747583 261000529 902262708 948600596 985133693 401781194 968517595 432196692 738750464 452067073 462809461 296839810 711854771 901300874 961860487 541280783 614925114 206211588 585269980 360116842 492179772 947671694 956268157 389367120 530257173 961584441 977144393 332051821 802060433 631921091 827265520 290372650 507607518 635216023 960252874 915442577 935131491 452734143 459887365 265982703 997577885 579959623 745543885 615405270 811835159 522111511 764909566 545978451 666686415 584203149 914402415 196997437 787561235 248661534 598021510 462960843 712646350 152934116 937669345 548395542 666900315 77328424 94760155 654855388 837514770 833527576 900063280 365580722 509729160 401329930 452541169 434954105 478261504 140847247 564725054 887841559 968460893 652040278 878411592 454297292 965934270 747237936 931421000 789604214 978862851 831200582 879868486 105007219 338628941 612258396 984505375 594042869 656566072 246054567 622848049 153938259 966909324 519418710 985279706 796882533 847011110 105173677 274532373 530327266 909793206 60638684 756269411 952957938 953132356 555596828 792753665 544328365 689818325 968130884 976029867 625655584 664885770 424011278 509828389 991526352 997883602 374541897 403962557 591997672 922092275 655507512 743228798 486334000 509131789 587668285 832487495 708689229 940302149 189820968 426744995 344309387 491240998 343942068 430726071 275210599 457917768 672082747 901479960 309500653 439125383 387223397 950425993 134635427 751563186 821219031 885956147 686710937 751662943 495807008 835089531 84984003 483444518 282415416 478414186 982086639 984446376 518487785 921997330 658367698 767500254 995696452 999054091 30729694 287477199 267593859 328506633 597366313 869557761 669230946 992541985 688337252 842836096 815173729 821978521 625321632 672808013 129619224 435814714 438734106 534549621 153452971 956578617 85348283 763078526 454602574 949763806 354536503 542132582 513228080 586608724 112046228 611898557 435641898 843998152 433923453 870140656 242139058 621925541 695022361 877441776 363197285 602670511 471784053 749740020 31629817 846122464 319045703 463087680 32207221 778333583 393412418 985639998 885143504 900836023 437408944 839050299 627790526 665614913 48719095 740201817 401751599 673907945 809607361 979254353 835901850 943374078 37467375 876090290 850678235 874485182 871908662 977969668 706318190 801649532 137984518 965400213 85237654 813816470 762389086 784661786 280085679 900773243 724702607 901800175 451914789 501481371 498458799 599916652 302603235 896773784 928244213 979874069 575070327 583438682 682788114 850691575 735582523 743249231 687228343 906590107 354964742 910925263 680501646 831420094 310379925 772024888 362272712 591170148 449772086 709209927 309733186 463176212 572968925 837722632 535333713 577770419 883369310 997217586 790173153 801725107 385032392 732986150 136769929 936666054 694649425 968294511 811328539 830822936 535781268 578099514 545353487 849408507 394369065 802043867 482367215 561324535 671360318 713900120 462500847 495875478 819225548 940015752 405926137 735239330 971564836 995730178 312500970 564302633 66333947 201336093 392757695 998153229 588225548 826297088 826614755 990918089 26325987 754064860 490807032 582332500 620004016 796308631 958862265 995071230 974456268 990312155 377325090 578529087 356716866 377195167 711230386 946919113 185583171 526190263 514151136 876609937 14360289 268129195 587340701 861341896 647733443 996512989 936141884 998682635 622608600 828038047 790181738 948823421 394350336 923483414 416081385 488167266 680785427 918569738 875241135 984954078 191964034 264280737 588947894 864903115 164525617 278372398 977704777 991002598 479305739 820876666 40845032 181400973 135112028 211308876 303438571 574535953 723524568 846488815 177139741 852272062 822198304 990675220 451836963 864773615 146319313 944228559 484685185 525633602 683768955 797093130 653528327 906367195 120606954 477541655 478145672 822349890 798158296 926390488 341610477 460807942 628531881 631199864 629973840 885874349 695410938 890772997 256043537 988164186 807072148 886845436 502755291 716643556 710659369 865758409 903167502 983528924 479561994 795265096 553645758 864236513 527454354 606459785 767313141 813990528 968096316 996546768 306570971 869025198 906602557 931810111 110162482 726291463 765360131 900271093 596935144 762825495 339891325 449855962 95383143 232021144 253426074 659941310 395611766 806342606 969554892 969639962 483364399 894151083 454905143 876188415 794520807 929521998 118229205 693342388 978734884 997663721 422586250 447903521 686374272 950956401 900956698 951245248 495154294 716276301 166470578 481106320 202668081 282131557 694079060 788448015 956799095 965541519 812307973 964638943 442569844 713166459 17053714 689186407 53752574 293855005 389423922 693564508 390915154 522972518 870733506 972111576 147392827 684174200 431302506 443384310 706418299 775317856 62434671 144115895 361147652 914662401 206635491 827872892 681431855 913499752 502088706 731482337 872440147 976968418 102487287 662744845 443564890 994681125 408040971 434170914 693047137 804057004 187119804 471299566 701693299 859892656 557188193 805633415 224100082 889984686 165766254 575298265 982818386 994261548 480646468 544892517 251961573 543201502 137651711 436576188 517753425 727345964 407525366 818297317 525038613 740204469 415970154 875599001 251781923 439561031 824986056 921679038 858370522 891907770 12653890 929971515 712882422 899664117 618658928 736165581 942231500 948094440 166716536 220910938 745861822 900764448 537590838 652018310 263436998 377288212 2505427 674014959 977087232 992873077 851944143 874261656 470994961 530316242 961308258 982052977 612906340 810378912 422530811 692627805 496108590 590575638 561102784 781237465 329445288 379318106 955354583 968884575 693892424 871146297 137411463 391298983 487642765 539124509 86780346 277227582 459355096 917757077 453940601 805861277 90797677 344990220 468167566 525306355 3707676 215318531 455653134 733561531 994682976 997570358 404714770 951500991 481842960 944937943 596130930 925621356 206929341 235561064 3102485 652411586 840296243 898021919 934836923 939535691 437457556 701237588 592062089 995358961 307324662 753899471 102176744 817297038 869801849 996149232 835705362 933683836 131512603 296639943 546964415 888669209 819121133 928299819 265702813 744506324 840269827 931957429 439202564 498171002 7188950 90816679 160261639 909492406 966118683 997892905 522610199 864197902 670554038 885302753 381134242 424127217 799736663 978951789 543388414 945889978 863481143 873234089 619183575 908263989 259370052 585008263 357873267 460155801 875898183 885500497 38858579 349432935 879630310 897146477 553317682 816377535 900752781 996212307 543887045 878242237 34899203 626251635 874755139 911934189 387195962 565651636 469215466 825698581 788199717 998416556 396208169 439701864 185946093 666448161 283544242 909846403 273253637 915533257 564180286 914770260 571771253 866437769 111050211 152131705 58706539 537270405 759910707 780971440 388803754 862199549 197774836 294982140 227921636 935922653 457567890 697993602 445250372 498988837 723719325 893789588 414200678 802165822 869732363 908060836 787793849 825345880 130067604 755121953 72619744 339120830 921644379 991819004 650406542 662174042 81461814 454178756 930285760 978797021 299838498 763697071 907590507 945653040 17463342 381651097 528219056 975335833 711259805 789635935 990508683 990740996 934248403 962247637 296265354 490643491 444808907 882756826 644429261 769284198 599131821 961775049 972420201 987018452 384849725 916411151 306291013 561100711 304161659 961229329 526927676 916730924 203782340 669185747 885216188 931855552 586742353 653318970 973251356 992190790 447920170 618253310 635694631 935210750 788545594 816133443 426134448 818483577 383644259 402219816 645621702 989798738 412904619 643338970 431050797 955689925 416462256 622367886 610902624 636543012 671615438 681018133 557276889 771958418 647371339 975983178 240096899 287594759 614023793 781846805 890269047 984736856 76921172 539109395 920342463 957920671 812515903 919633144 592704798 951093245 651544387 688390753 839478876 912390094 886906272 925061250 981889539 999214382 33186759 483169285 453863115 773011525 998212029 998510180 543546316 677988762 36979098 763552432 87513532 826374670 121194917 877183257 98691475 178763429 152487025 547393744 482800795 709328028 723484817 931556763 367866621 438064052 616515703 630587562 124111441 642879054 644277489 810365383 831405377 847234962 201905765 983475863 257461140 584420267 247997134 647607487 310279321 979188421 132186374 350459187 573802614 859950936 566896179 857650086 779588091 837714044 806432974 945936125 972326813 990978204 522149694 823215300 423629487 775236573 478402953 636512367 410369435 836709219 520611949 847424824 906559998 922516231 815949821 817027311 118215030 744696707 474126307 967236155 574803208 776622729 712072194 889996731 289235343 676564416 561891060 941471574 24461402 494040632 904169058 973741538 677568264 938477227 826283085 843850303 460680240 887651159 238190386 957404697 109740878 979051412 909922542 918950445 659472451 957028188 256972820 403542796 745020946 927056339 482261411 661356994 839137985 962677596 470900108 827023960 139771200 242602964 949343930 950656997 943620254 990884650 674622100 727383418 80964857 181692709 425852772 954393616 456764463 593089936 153717733 433090496 953631818 992431320 373928787 853494831 543487694 980156455 532579719 802534050 205898412 294873505 27474269 665083136 228573864 960982810 947712322 984136574 798675622 821504904 267371311 921665955 442818114 931020036 388710688 438760768 680320505 772348554 936312023 970411364 759293063 943518388 305048400 579371788 828912103 987927721 341741735 468397449 809358874 930907829 982396869 988387381 787183390 816410657 826393224 925424774 261825738 772232412 95682135 153647889 646998837 887207745 691474646 886064592 877086138 980692698 615477543 670332020 97397855 153435674 424781683 503236700 896110599 930019891 119395446 941951139 283429327 929279375 441485117 694128055 52922574 583733032 653501284 991284333 710305289 859631491 551114348 955484171 242482291 637531661 529341045 978564210 277387885 283708164 742894479 799117982 87187298 657539019 933744414 998298777 795174696 862987741 93213116 437339945 577134857 863897228 845787114 859562685 343159821 414469082 96400102 359361804 75429875 374033958 309824981 847584458 957664292 978350947 57016081 645365879 300018043 364582060 921284912 973790121 40453518 60928167 757982774 785980317 643628781 787390272 176163690 584708008 108267900 533883102 821890234 878777780 92235858 525834267 403727554 802423945 910234132 966163170 649364193 667560490 524636284 907807839 331834193 661774622 857152970 979509345 353033739 504095574 634322098 781203854 748935230 781855850 478540667 910854748 222478112 744311508 226768260 329769521 274845396 652149567 766873926 851593924 849751234 997874009 309227789 663508335 878457851 959680269 342818687 706832268 85960168 874540642 986961357 996327600 526189032 927208188 503534054 878833763 105075943 185399933 87745764 682948952 917591670 955692202 207951331 347062968 22349582 225353458 34757831 219657235 991422108 995456827 695400295 803608245 662856830 873536390 173322245 761535023 283173742 647218514 980195678 992868600 861595284 916264063 276242349 749681853 301955557 766810800 164435853 216276936 908334059 972566520 629188713 855672484 486421564 841750208 405052940 682218944 71022165 789916393 170404266 937007624 989583687 994481018 772367078 875323326 941400708 953027623 941984714 950461013 393381952 820295515 810225167 995148726 578028881 655720711 881716975 910564102 750114701 812582405 373392938 597884179 169086201 978755489 66298138 390680272 866025078 899513197 81834436 732894326 347855156 404202252 985303677 990991823 898556961 972644299 173792370 523550088 155334802 591897238 595442429 664589320 835978627 941851737 571470928 812958452 974461287 996154268 350734599 437313830 844687793 969732480 572745808 849797688 664325782 922037801 870408096 893212273 605036973 830138493 118178762 758776126 245959350 778934192 450520040 821375581 393070145 841810569 361817389 536546786 834664714 859036003 982379136 997309617 428174062 610028093 623247385 800478109 738951450 940222972 981598549 984573665 871283021 933761694 129120402 315319159 552920718 579969417 778761603 967084786 825112008 876437060 294649295 896342005 921914008 932840255 374218449 648435043 571359238 591987664 425413584 819697708 124950276 837415407 594168348 630908259 66673187 932145198 386922596 493969181 696066330 767000775 201024785 512028978 9958497 745582972 457089508 673404241 277508172 306165511 487790860 757638345 683196005 839016427 182135809 741911290 130926529 368987736 126052155 943130973 664116795 788437044 492076377 556861099 330315687 602633175 50245268 565689988 720649973 912509155 299247593 896869446 322906808 366410265 993460246 999054503 452299076 918737148 516519232 753063046 954722112 974261260 260075035 602766519 581526149 989393805 851500534 915916158 560727575 926612994 802601824 943175255 183422319 766915176 254878094 794096404 755078119 894671870 245106947 697080042 462287884 525295659 544359718 638535115 477758329 738597091 364691487 579346143 362331296 995915708 736185950 844994183 589867465 790611593 805541052 831353452 314157295 622152765 6923845 22985527 135963359 909555760 790031182 900461390 968019909 998550875 453172767 462780847 58012957 942835783 904325175 957402866 521983078 647766691 98232890 116665513 583577069 770094802 433858505 862841523 515488784 957644699 892817496 932897643 175097389 909074147 574288630 990651840 196037370 451775095 985551970 991086083 821722522 959431246 728475086 806373809 933513697 974788658 113352563 148271042 793551552 863182960 631165503 991922731 816421678 880331673 887309923 983751829 13020337 355774961 956236370 997203783 848523199 913685590 805875161 823769257 319418094 640668949 255623800 395811266 767650362 970161951 452792997 873731139 850138176 941892762 659049393 842621986 469206088 668529198 130494650 349194134 676996089 915989340 286452817 623911013 634871633 904903235 499368337 709207624 559011101 815533602 725482003 921249923 639556860 930676402 620451729 796915784 580745930 957628574 335707867 916225756 864832126 912663493 542787983 986747916 358078312 792592815 966378168 967693785 804680093 844196441 152960523 718484711 151251421 974927518 416773841 706410254 879877408 913933827 895311149 909221482 813805336 938626437 257090642 628666449 215641004 455369752 161347435 195927523 333546122 634463273 829013167 847990973 102584420 625027763 33278405 740147026 893183477 933105835 711399040 780316665 699405164 900575258 844212545 892226045 937994719 993615023 572276222 991389906 688148687 819859326 213271244 953920518 913960893 933242403 831732074 944467683 760039812 993551123 635042089 946761264 164404445 389871394 20186432 480560222 820731369 979994927 359872030 368455422 613079387 948675237 650652917 766698140 395725417 697628296 842762427 896423002 428691353 898200581 161008985 983423401 980275884 999333968 873478462 998075999 918809414 966834604 159223888 932270141 274102017 337728913 984554893 991571610 882647847 972178092 993638063 996511994 386712753 794360031 108049676 795274548 309988553 418928721 829406666 990012338 979097965 979791419 508725953 845652680 28081487 488452140 467491287 985755363 650077297 891760203 398279816 686290084 335362273 767364948 391982703 460460182 854925691 975073462 771646396 940944430 392027881 990589589 112517513 113216962 423434568 610613028 744292650 956325886 636875596 805149451 197363501 387980742 427091313 439238412 982376881 991123797 751691165 763328952 30584637 566497767 291588519 825396618 867759146 909176866 738889978 750476123 148019190 805780100 548584491 963742895 980311880 993179452 724551272 925865142 106107118 583928569 333631664 460591913 230784521 509168031 344662339 445645383 377699585 471496914 313374194 354950651 707274638 802333619 96466128 125487943 682288583 936594313 124011276 472538035 922297661 936426924 375969527 756546876 333700668 578645085 731361540 807047186 663228014 705410586 268095451 415194194 697263870 923440043 562654493 795113920 352793894 582696702 664087107 947235146 600658736 747914086 478578138 761146705 688640662 714869796 722843809 770456544 747746837 941172411 408345978 853822537 839276998 906390421 355289083 465728982 947744577 993345760 7998214 933055776 650420206 778725884 362173456 580396955 493966817 497103748 261503686 952127163 856157669 975178162 255712613 722046397 613411472 705618872 639631934 717669058 228180857 937760886 125488781 193652800 788919822 790366230 815764107 858294141 881925424 996467173 127658641 527216396 87344362 199476686 351313222 694196304 16796687 159059936 253601238 490970001 310168804 952461285 647523044 963267260 441442060 488908696 331072714 911569367 563652403 854392637 848344141 866896466 76148908 683025400 84737582 827061162 726919650 868723342 190296669 443545019 406079815 697528971 4682672 499852493 305144363 957985998 222985036 291488552 459685219 752481691 247136043 504946149 56648134 555548367 277692235 787994732 845822238 983383760 476453991 505426343 558733499 635630862 13756821 91552179 881971027 980822446 969511220 991501317 736500183 947918845 579477916 631674765 83702244 176820036 698997552 956272379 919299694 931138959 223782220 303658904 918328194 928239611 659357131 722222140 514514153 912967912 290996344 750545651 217200449 621012475 692185586 987547633 724925402 914958399 193116020 902634662 38473428 759122104 557754613 941710397 834775857 976415904 633437320 785303917 369542586 751301754 947137768 998009051 130135902 595890893 303885363 823489543 75011768 970785148 158154806 275387702 349306145 907717583 832931413 849924463 770955192 876748454 689331040 892607580 227373593 357902285 825042304 874017283 718910977 820199108 281427163 377349897 501091065 715097163 124736345 467973061 167735159 804233489 400468560 916465412 626318254 847202183 913128614 961802026 303302297 749968770 804155882 963612153 410640652 661712309 868701099 930260007 301661235 739708202 783529036 844154192 463797472 587616847 509921407 859513333 946638132 994863074 516693895 715129894 138518656 138915969 538861509 947036917 140176296 540326317 515962126 978668437 296775185 344783735 596810039 965868160 660599057 670779551 909115456 943179384 798819310 840753704 109283826 931957398 626528583 782640773 525998366 593554453 146861280 783566949 638966661 690819174 639160782 723398328 993040690 998103290 488717228 670758261 218365498 698271906 22790355 922735532 659588942 742196822 304887214 309941467 317931149 804333395 119054366 704928484 523353540 840049650 562664847 598995332 489948228 963384208 395645417 631039028 476124582 568499103 241286782 823038357 328972825 992444877 491622302 786010256 306868624 416220657 941331477 988416535 924726973 939295970 371373884 444511592 628389428 844214023 758927562 968788149 329620324 684116729 643592977 923380780 82216315 444839393 508783357 783606867 251309873 329242301 460539068 685983457 950914698 977531560 562076046 744598538 309141145 860310553 707454080 902838926 743715022 938348910 429569281 459949736 699572928 750362980 993505024 994794950 159786493 701704430 555092004 644994440 356228495 816936176 930970658 949806157 424463410 956218757 458995073 543087411 625459148 937267490 929268720 969346002 293490725 528776347 240062224 534840271 199803437 214027114 969125506 998313590 922373131 996646871 18967068 463335591 70321907 730920483 703775120 786805974 40359378 686856259 966626501 979488523 158611725 186072048 721119453 864440238 371812324 950042602 654170990 735856171 282062458 314570378 241593899 955261431 788722789 880204793 404975408 623103475 45839664 665559682 386984827 482007369 862817545 946788727 49197272 224951022 17304931 210073473 131634244 177964725 701601410 795193674 470634938 696922011 839469345 993974858 785417869 998694881 578438697 754928535 902045465 978553688 115230301 990233965 393465840 419690349 322441173 681763465 755858240 988632663 204967292 495007209 444297271 704709893 615027850 882376700 650659809 857040089 530014848 937172796 663784689 919923633 56425889 709305866 86260559 843701264 479299756 563280386 877437865 940007284 363877378 386230490 321227163 886171076 563422255 966255645 242341340 768056020 390582331 796788040 605177968 894380952 480205825 832330954 18395144 519199088 176805306 349169255 169536480 402474727 241949621 428827368 389857379 903648063 990592674 991767109 558347574 701488198 381338591 831713491 96673260 880029935 212649507 650018495 285935299 301188442 414931166 659876607 587737918 660957935 282084775 325291052 257578001 953457083 461576589 721779079 756240474 864123196 46328826 426815289 197730190 249218506 518241320 804203846 166852165 796355261 654822432 955766900 39592838 620102952 864354564 909145507 46720310 760002573 205604976 660973530 627342577 629055216 353854254 921458123 108959954 374294401 847274664 946933691 549089570 803603029 890128001 919801442 58379365 460089543 716904266 956541200 497209937 664010052 969279319 986998760 655413801 658661685 223565051 376951577 482810029 494089946 571058543 655731545 3161067 196451586 643621596 940100971 148816832 494784480 377812596 919658204 510822829 844095689 15322356 374369517 144505179 514982829 948761346 986187017 251881636 822778804 151055758 291930925 560132601 917237283 412610239 452480640 143551778 984377641 530394913 635723023 894841452 930756396 449156713 615908889 123931208 931272253 344030144 509037493 155549626 746130119 184600892 319135104 385178477 572140689 630211937 983859098 235716162 865007555 856595287 960998119 268882096 324924081 983309963 989163989 214149047 273895488 930685384 945225856 992924277 998799136 206762151 869851380 837041541 921710125 108171142 552960435 760333316 935373462 150254059 413921785 434887971 760393834 693647400 897138633 383530293 516062350 206703834 933926329 178878319 641866948 735542466 747994114 494070172 957344619 383112130 409984498 261945787 653174761 922679254 923043203 803482508 987312731 806804264 848789411 851243073 858308221 406210723 541969225 675599651 868312266 132058080 666507197 333466565 478383970 551243806 635628032 289727957 894197092 224971346 259121931 128786899 236290868 171341181 259703133 334915469 579116418 174426347 436566348 645847913 973387668 168545748 893125932 366707959 454822724 963768749 993945544 482170909 778923796 81854637 860747341 564591714 624546699 405924068 847581170 957720985 975618472 819434033 958120815 33247434 558094612 60988317 279085086 554164917 995774101 802469264 858439737 329554910 580545821 255298335 366622410 748282924 847787988 523515596 608574878 128151772 602849351 494019260 630919900 271241942 458736306 281777202 543022252 29029912 946336198 891464770 897854758 384740430 657954631 892682888 956049795 679655537 868368772 359702150 825787901 498319241 620450831 309994458 334817674 391244566 660424275 389702413 442927386 256661213 669301519 442237306 981674445 912704648 930769584 848452335 914826176 13880849 959041413 341467986 826286715 73353749 877845965 473568807 986274327 640967222 889211042 223168832 969188132 454259350 551352614 727677379 852080084 941286922 970754864 174451438 477992554 791795740 827313310 632387848 905860155 663177413 743007278 140958038 731695346 455362852 945973595 681766603 944348019 809016178 896730065 980974664 990810208 525878988 657456544 69342944 882046829 766522306 976198072 836158844 962492889 856857959 868068775 115211492 667272908 734900950 942228115 384191188 578292938 852506145 880362723 194520586 701832352 537702744 962067913 95500949 816888276 15891947 827454050 697682396 892173217 319902545 790006962 507431339 723888851 117063218 408463832 959776560 971375928 953973772 993776312 260022456 947995092 405744353 535935912 898445070 909722501 82048890 392989834 632712568 942654250 17699387 725463779 754800626 867742213 942072181 980587977 86911924 183375766 958692519 981870592 966741759 983603307 120345188 319922834 674864572 853267814 907874506 941544956 278411447 502325731 119150109 318140876 787403278 955471203 364392092 858652073 513051317 760200771 161847599 972722576 869409517 872843094 299939313 786605567 38783071 841274035 352246768 543149190 28461515 701928093 457769450 581877098 86872956 254565035 962366083 975117536 544627914 593242506 852957577 963750308 210595374 485595710 213819622 721289158 17580825 393119063 726123898 821138231 955531005 976506460 918652109 941969984 637993519 689253215 616042971 805488593 778999292 818242479 267747590 339496698 682506883 919400553 89035517 196810400 132171192 377384491 587624335 637087435 680538903 912222371 113630765 939458407 559903363 832065971 771763220 916394862 588235898 815726043 209806986 581434916 117403920 289606882 797953937 867736229 215167487 579961229 751874239 877779599 367535676 929565524 760757981 871702624 931407679 994934580 9900158 332489648 474782340 896054026 56435316 352092952 689084628 983770951 478564247 569499998 390081712 492257495 842116430 943578519 486826491 735479146 939606151 979707077 662305107 762521017 427301650 872471614 813895972 837733259 619964875 974181050 871235580 949637463 270972979 437572948 33422138 402992152 640382341 688410379 200815468 396915621 320595475 496426962 377717903 412487650 528021674 534155397 240594567 826642595 126151403 536817191 118020194 317262231 20727279 512793323 24862586 526370763 960100931 976634578 218656472 790853199 888446477 918003793 76634607 178180972 562974461 612780589 881869852 954154538 55148959 608850733 279756937 878639521 249022794 954171538 791683095 951083567 145666555 194426187 570284352 615646821 929377076 979579420 426259046 773506604 596620769 596627574 474465579 509739204 167976332 614826430 680249775 900052867 37994524 664850995 196976326 201850109 636450441 935465768 710254542 737884942 800421372 968666174 282141893 901112436 323598067 569552383 371540824 668203442 617630021 692515891 394608917 491669817 921340302 983383553 500570812 915821933 951935891 994098886 880033933 965780792 772026283 827532142 561622656 789837313 362370365 695122715 677752638 966295197 498937079 738954511 567794411 674775382 84410609 924508460 766777810 778659572 379913787 787146943 540567558 969912611 535050608 666365358 227842428 768718431 419974262 685590255 827048764 842459918 945695581 970607106 109190456 603898678 117818171 674422587 966377472 989906595 562159336 901307567 598051202 946851004 777037104 968687120 221977583 371739349 999388273 999392615 371232460 511561679 190203913 983220618 726988715 901374600 741827093 928129475 861796081 922003397 390811414 497722417 985372789 992772061 688903089 899943988 638766744 822520939 173628908 387394486 483338454 916300260 257742246 829651650 410227855 550616175 156955545 504390133 888533586 906136465 568436419 718396946 496021888 716618496 966374695 981887047 103318363 820853867 669176866 757029152 724320889 936678760 132704123 742124724 153523973 256393016 71791556 903889204 803477802 929260599 205277403 799490164 27599286 179898064 731501520 950717984 532834710 934837368 59507516 225431373 807301743 898254702 555448283 693114186 830399857 893022008 505509654 832160348 613748281 888127427 852020280 859436090 469038357 994225595 765544118 906016416 552199830 585454259 44149846 937024061 616458933 773071672 337578800 798895766 253270596 386657420 630022888 710278999 283502091 820018476 272957194 437672159 276656403 377522764 132464485 589856789 622110432 666877469 295651994 423626586 961528039 981937204 812778803 933689045 801494479 977997237 483388886 545063056 156905311 852748680 493051837 958183077 491855923 817986594 715025189 855623872 310414778 390833205 311828320 660428643 701340477 769398746 394819393 603055840 438640008 727365691 158641615 324673246 59019151 710527511 806220234 878335055 168214270 722483590 670758590 984262794 480013507 675415637 631198901 970730653 525102572 686567707 382055777 470632106 829693762 918922630 165004562 879466054 957261899 961290177 993637723 995393748 859109740 929068432 65423843 459864113 229168881 801009986 379844402 674932194 363146858 756599994 395838888 681071595 90945053 117577951 556783374 566054120 344693160 357344532 321438553 361270101 482299711 661448029 625428966 974974005 41818071 720911157 247558727 928321699 998023347 998492048 192819902 819860842 280385420 410939142 766547047 921717364 883031758 965756202 830173316 955278429 668684739 972602546 988178374 997306597 845664958 989038278 16602103 921912732 172473194 695609419 273890000 392038680 964524337 985455948 463231423 499823869 849217278 987212863 439487280 580357071 896271212 974434246 296862214 628229198 53790413 708894874 243534790 715402852 252041216 622354398 692424777 976407924 956715265 980830230 246248008 669102232 461056297 994261423 556559777 709745570 478896671 941863434 182632259 337318276 243810434 335373592 200329387 828290366 221504084 461395472 265885795 877159688 43828092 606700302 273238058 819206166 740705007 849763255 849093039 962548658 617273613 717359033 114790643 558329730 118204981 884857301 790853508 851342857 473140842 852036420 816307851 868888429 907091342 978317434 623686634 983516659 593532682 726480659 941082583 985862025 329200135 969271866 381665576 921651891 38206420 283188221 245722410 704316959 382799181 734048121 739729521 776101933 461747386 549093336 497282085 603258473 585063221 866350128 73635040 582160892 119159493 730262497 885677600 894507362 947389275 997907654 833641248 876706003 518938604 821467922 918138035 995766225 738536552 832063782 545871437 680853529 607709601 669018718 576877903 912994283 276589074 853453351 491018606 759186897 89585965 516389603 318864944 357408017 816659158 938449508 886297231 891323764 136924121 228035252 623609567 717226709 144411311 659271495 752693823 851919781 425745469 431302360 91757029 510134919 854255257 972988036 948514480 989530514 137192953 754853856 359723207 833985839 656258960 675445121 28815187 724404853 531531233 915689377 20979527 698495330 57495444 193192545 893708352 924483988 243059594 243963133 355341636 934200356 380044598 801957040 624208891 719822586 91130666 702880332 171537302 795948645 942750986 985719015 84137470 279144281 87803206 89793814 480720095 961350802 400950404 503279928 747390631 853790812 980982238 997780108 126399062 350647862 529445147 991527282 639626344 871757916 611030360 721066423 106924987 410087602 604778823 780188388 597827779 710832251 692053690 871723439 670564953 845129424 835644787 859461661 957688763 965425956 765760421 897028118 859288188 979635182 406013043 798540610 778016997 791867653 683367286 758304482 172123845 511529836 281577431 726149958 32793888 453076782 395909112 439768936 474360385 684793464 538874054 900581263 72790710 984699723 986581824 998415542 213940801 966803314 484733995 766643088 325163983 976329099 303438620 313861418 413014324 553100518 759425161 991988807 311342721 826767520 41473700 862647421 982044948 984800920 768751755 844490311 228299143 914343579 112989204 122568513 283890099 734757174 460448442 772765864 669676930 976541879 533784091 630043517 950631862 961102594 31595843 122592393 877233538 924595714 185912651 190260364 633711603 850170766 281699211 929681745 149830295 931803657 921559955 946887058 899172620 901262521 961346626 964749330 588853908 699640683 193807322 768510392 640512861 823131203 829812904 954371773 308174079 829066422 555599074 707768010 978869968 993769571 945011021 965118533 327849467 861041619 807168662 996891037 764483162 868829885 163265197 755542100 520827813 630274319 36057938 424631887 635307615 719300335 979195306 993207358 110486145 378305209 421935726 583923327 896123821 970969988 769728298 908602744 857010386 930945019 51930893 567952366 648455508 696402220 732833825 795645193 448744749 973134887 90783611 651431806 35526679 608954563 835343232 990262077 896649363 978012586 104017283 819458716 910041410 920078536 127328911 193354954 386527880 726574488 707072234 749116482 888254584 949829010 213568404 950184403 837518649 971044217 762427689 940501275 314698534 546487821 812457693 988718064 789999759 914614737 943855587 964570761 652035501 850606096 522830793 651414122 432107517 540802108 79673611 334907561 831383866 898602982 46408953 440380133 399012398 576669302 65848293 755746099 693916961 842311921 77103677 331574589 676651620 847273416 151231366 464395441 736211413 875752161 588665437 758173808 147277469 525970228 911931936 921491702 569972200 793735283 610340965 692611326 476857343 932179173 387530977 616982612 507142449 898600196 931420082 989729040 62715789 914890835 289881677 727462449 387784017 655851901 891169139 913206405 904846474 962340518 826019317 832752203 605459554 883878924 86637292 582051098 442816554 862662935 686160820 997922784 695201568 794712258 651473588 694053555 99828774 650037616 480848491 715622348 780398994 921527377 132588353 248292050 151317383 783071652 341622946 552955590 657634072 767547525 98224355 439779481 25264728 827222541 174689631 855887365 678470573 784792961 618095033 993439388 322642349 648025852 337771069 647677079 398624771 489478847 144115496 578529432 215065232 301841528 231791794 341616749 831736306 887458934 397099840 522486802 559668924 560983023 754411062 774725478 973359071 977998740 197954826 778202847 709472633 952882430 108296786 744825994 236820816 257050944 696302936 725818856 306557054 657550485 326386034 430345211 608177829 842545457 644844499 681452377 987687759 992561312 630040930 877563030 393077971 564730262 934662383 940684299 225260695 558831899 142356403 707113070 403165130 722479049 640128824 709260135 287462835 405152291 126679533 646430528 126475839 394007723 605087459 687670017 293086518 418231484 15514848 979699157 838503805 840412033 44212586 103147038 778835159 820600863 350489145 709382651 205649103 268504311 281151934 380629068 445869615 722513973 484588096 973963044 552418545 834366238 500349911 796050221 170653074 687392201 661075477 677097188 170398260 280804193 614927679 841219796 426366065 510676573 216483373 695263772 502229991 885938501 748743471 768109389 935722968 939367140 312038196 397904118 106287834 320875877 647367437 732071246 629905115 974523085 839057866 998562722 654483212 685308938 343572562 610661642 555089040 836921618 506901463 986133186 785131252 894998373 987300691 993463348 422078734 621957029 704630849 968398386 157858298 537286247 189101333 948376876 625034795 848383160 920957780 987026053 454507908 612123172 382788394 866333725 12207257 534887228 181396851 932161463 884179592 909226707 799687514 850817454 579145022 743505353 887513253 984284149 82088443 995507852 522300762 669080042 443194558 901851348 318763724 952016031 92322373 620554275 362586850 370246239 945288098 993063454 957230794 975248408 447207605 454623701 514231835 635832283 315512220 735428894 300446320 438252773 421954418 651070557 721170531 834767723 429985595 919357675 925815403 986451829 953430935 966080739 518639508 618919019 736328641 842822784 453609597 941841371 562037368 963047286 473712466 885194546 214252809 724065776 147326634 441922530 318353427 682050035 900901808 905256762 329691771 839818681 399303009 778286611 739768211 854054341 996344930 998771738 917448063 929996723 936775582 961906638 106915905 852346957 465963494 791588694 879884903 887369090 283604058 600574466 627764447 996425177 546465354 612566098 925319448 951350123 920605584 949488405 791455707 863177502 192701203 886162006 25015362 239624952 406027418 968867637 858935080 949635317 215598919 240153175 15867814 909760272 681736410 696287927 792791186 798554524 570616232 590117314 173345336 364899497 306389355 676184178 156382692 625735378 693491168 895598423 93928637 544254655 896494162 923522861 692112178 911215905 816531531 989946813 280052041 706130146 584031226 826760056 490331452 770670093 285489847 364494588 32167177 235367210 222250856 727474566 647239278 767206995 595400095 874185529 909725461 910165901 582360566 997418897 891083532 972199635 783807183 885269977 429930482 908688850 95292510 620965655 333287845 735571906 474213853 515519228 519241434 552470993 645546571 773254305 567031942 593051698 947714980 977524205 515897544 940006506 175689278 669045648 159162473 781239726 789565902 921550378 747065004 848529082 500457804 596713370 167190185 819035011 317849608 820171248 776037963 889699955 596867495 938093876 878909260 925099430 543083538 961370416 483051299 901634970 745366663 994598216 656828910 808941171 954510554 986186239 462446878 765508840 820361245 975578787 553095287 688811433 445930461 620767161 331465556 861626759 432989713 762858835 627884522 712037270 922658388 956605560 818987533 931997108 460449769 549659413 896948548 940251284 372151754 485777319 26075219 119523852 24841652 255620255 835670680 890600952 695545795 993410391 175344896 547306520 784313252 872702179 296390627 617596179 365161260 641096704 347246563 956009235 828351114 847459820 208066929 400771993 437682383 533573705 412051941 983051285 727536643 900284582 559433923 621169545 412913972 487754281 296234519 749620630 930016658 998118700 896022795 907720423 488060584 960826899 17063132 362000067 945853748 968565056 58419290 822141096 231573984 626697569 733690354 757785206 692681697 938570034 582615077 809382463 485342905 765200889 965930956 973820020 554402636 998766190 57121919 88783931 438861384 703396808 63992497 697577973 80967131 667225826 401210511 845002611 579274526 949473506 293011240 370488127 912592208 989860398 780506149 813112783 537185105 849515440 988453360 993765616 78474234 87556791 723077841 988160469 31486690 603711294 997235569 998417569 200723548 461356319 525349632 889588966 677046555 930096317 280048093 765341283 92257768 983574074 75380842 933961110 609035640 629448685 251259793 679529674 805159904 880093252 126853783 445011367 459883545 570517846 1727364 491780431 310127051 932581438 975674433 978133088 619766488 838669055 683494348 919323687 894248896 940021709 417495534 536159295 259760211 416851713 856355405 856670161 656798556 949152280 213539429 554817128 29120516 622715409 44333322 796004510 434204007 791893730 375981402 988925228 922705910 951851551 406413312 555193254 135174387 853621921 285071665 668795043 205335812 668758945 735186132 833364225 888686120 978613159 719253164 840226448 498701120 877850125 629457800 966781083 429216700 885870900 282440177 303252715 464168149 823999088 893487546 969491299 403746735 538894408 943536541 968688139 377794819 721505539 348326267 603122290 719028010 976821530 683157890 816476312 939663053 981301314 462371237 826575385 243768994 970665216 698633168 965626418 80027955 641529604 464351754 585362834 310304479 642524177 682599850 951472180 965242919 977245156 710679688 929034178 86169035 615863342 11172112 320254512 562344195 768341438 140226268 794943393 709163184 863705821 383382108 838484687 103717275 602043520 32691427 720474396 523340235 639163368 193178296 299932017 617153013 629515542 501182190 704630546 31274525 318682282 762456899 884206739 631216183 784625274 99187467 765889500 957984177 983582245 921388362 949793952 952093501 985694750 524315619 812928958 452108776 598158906 128594952 596671537 821169792 894588261 119611654 387611044 712962375 732801739 194353583 547525657 490472213 521074153 906746430 924284721 388747292 697519416 373131057 741455559 929603706 997073881 838828592 989507438 148575133 821389622 809962191 825506038 641780786 834021880 955945272 977694240 985225173 986678771 899122745 985318208 417561474 620477366 223121435 454003188 995739811 996839928 320323987 571789930 968949112 975781778 99789948 246322744 168124842 712907841 204746640 515478415 828998260 946913622 823430216 859521725 901916651 946249532 529646990 700106566 218465878 922807486 743473122 795382773 807518699 978146220 863377560 914788167 168352105 962845690 402918681 608501109 47354045 678998080 25525375 954955110 47461170 403549162 733641148 992861796 564784568 790185142 523086221 726001492 486685506 914456970 861688440 928795108 171645911 783301300 207014977 719308517 784048867 986907235 550687671 689064401 888829323 990095343 105625190 677049217 744429256 959432576 635772068 956612747 531324914 965704225 369330188 571511540 119693954 483011301 171355953 475678326 596918464 911434939 969354926 996294389 194772988 519233778 566966085 803101673 505025214 891600310 343328322 957063777 413416761 472579500 405569060 768552410 817296022 995495529 549642119 637692072 113830848 190187284 191249177 258867491 982827433 994455919 388707608 505928356 81658920 583370997 738055984 885899508 741293152 958194514 667420525 836862788 658704132 795893837 881055547 927735274 291798227 455822660 4488285 534533025 685139077 959989046 502685607 661108388 242386544 790351170 903611708 932154672 647285658 980874684 663137348 708893616 961342391 984714846 218127831 290280905 204291826 611167469 176673137 950482490 452426032 971033979 666232445 788657739 845580351 913787381 544920271 648179797 908936307 987850986 188886713 909918525 579794705 908463648 589264172 693835331 255580780 455311047 380114025 659283456 784713135 934227071 240630126 972520220 679091810 768370525 194528736 688454975 861784062 911645625 941431567 973647128 608003425 733608115 906858775 945538562 233987667 665643002 873910800 967812695 815405357 873263879 183552189 336409876 132546584 518694809 140808097 885285667 757833956 839056412 200108712 773844093 215748125 512457998 679646011 699402918 591483575 810144174 104596133 197063995 102142094 489610108 918065520 951101646 252092743 950681162 672314818 813590117 478445339 590714669 236973371 573810569 893387971 995224202 899785152 957015615 552803835 624206127 997740856 998230164 216084542 693603728 393653910 899590527 787684917 937403733 304122300 623466186 239520325 524493608 518956204 783135262 449626803 701254085 606168876 682274547 101929067 543188146 815222354 872454326 414160676 581714919 708457142 948910152 156746201 556205659 986368763 992018897 704145393 716089461 870189307 964776762 755428817 874990412 26363081 728840771 56654002 709480934 153017363 890432682 108090575 824164956 207604119 711766032 753233889 757765590 843809737 922820649 626382221 709926205 272363424 763630517 548646112 988252560 93145425 851876840 406456510 696280127 599322134 783090521 800581675 810065486 711355532 976394937 161237964 950230688 772898178 995091584 771279385 844447353 173488239 301015801 933661002 976878146 85657906 397151629 663394232 945927373 145047020 290168531 231098398 254520765 661321128 823546564 547491354 854662890 406767263 610525104 789450091 832691831 728363291 874282755 43860153 710062351 897599859 918578924 518712962 742121945 270105485 606891595 473449865 605266728 697195125 783198261 925700559 936779466 375525739 847967374 116706171 200674182 343103544 508612085 281976662 827929109 329920282 674279092 955775150 957676256 992563003 994634147 771762084 843158867 786894675 801066535 428835669 717261963 460788711 950634536 368461296 409195165 575219406 676404473 176574522 779068755 160435399 688110531 414425246 601282519 570225493 637232799 490057199 983376932 180190161 559442604 731291090 832836776 630282430 839194396 701232089 861520030 81750304 109656319 984932457 987449770 102103434 913593228 486813517 550320591 180173413 714066372 141614299 589354288 662562025 747296218 249775917 781632511 28333576 232798189 105177810 491859252 563286901 896325910 822660065 920090075 57991640 227628332 967437199 978521798 403943544 911018828 141010852 577384310 801487075 898351641 496013675 687402704 566007565 617869224 823369779 939866616 692775041 920384280 70985789 290786017 420083601 499395099 843118311 907183069 366079537 910673550 130419454 971133247 804491769 927640910 143341928 860800484 16477068 338682276 240739479 401987189 527858961 801697631 745309616 874785867 599834471 795778785 826573716 910829205 875413253 907106471 264776066 679003378 605454236 812224380 341340632 399401634 35156824 178123209 309128894 637493639 219530475 503494166 995938751 998934404 836332541 871923203 94387669 321424563 208361624 292783940 370099595 840734675 274783714 700901061 66789496 131979959 520754014 872675727 410825940 768621264 178511073 529283619 731576578 752744642 454532030 734417050 376755337 565318603 947127913 978107998 669739462 765290189 526100160 615554570 273026465 904624461 465842041 977179304 475755374 851152145 737735202 814140511 667223621 686064485 803665760 940923728 291922669 828195578 377798524 945351811 312593694 607787802 687541525 826901600 564134265 724657156 695683139 873587205 70102293 417164501 307186564 693694126 384663194 459494094 202611486 468093743 721910679 821946468 327627350 578573124 130307516 197358449 463794453 751755744 523082948 949333282 496518023 753141285 136695037 847459987 685404743 891952234 150881127 479776505 472311195 518391827 19551429 665276524 347443576 842935526 898847723 990258506 448833076 672551180 957295525 967867665 118344719 225388638 615969764 840757780 851950195 886957514 496771040 688105604 368642727 690725592 746973503 956737671 739475383 826253371 489808903 802919124 148144336 700249709 587184353 792535743 40394619 562196167 92603038 683071056 336957810 793010344 943547710 960490057 144997384 571947555 474766673 767518130 364599668 954652349 870196663 994685107 713223176 959892230 493021685 938382008 398222131 651750219 496128949 916209406 250799073 360690570 771341854 961879966 573246094 670216641 841376023 960827052 972502383 972916334 68009840 195070013 740574947 965398346 328310673 783375454 184666133 510681090 483562967 740211668 487486799 621023236 642479319 973576640 661675725 780272952 140439825 765581657 301881930 338361818 9980839 258276532 894711101 983326141 327381501 978370189 244457996 638431104 679090469 754189555 598135679 644250565 4635164 124024832 75020798 894166069 96287424 778921949 979200803 987199891 903396486 925870132 649183717 658829864 555824845 587506278 890903254 944558529 144359875 610342404 295737320 412721152 307843211 328118291 285775033 566431742 955448918 975664159 961856024 979381920 741788353 774759646 660945192 948364195 220441618 265645432 50785836 684935273 776265791 848239758 245260105 760491417 947709406 978294507 762598005 829451410 990390475 994401673 991828238 994567000 407250098 946361166 709298912 738624949 660066481 903665954 479633310 493855510 314423107 956550665 714395431 957333192 107239110 894466976 190477073 277956615 720151025 861883503 758903730 760699776 469670592 650653342 74323242 84779444 746391952 862704991 955539914 983206537 362887524 502047809 786104381 946759007 316317984 504509469 316893834 917492712 152535155 410864622 543828099 946505252 901773781 953098703 309121694 313682530 193414278 250990827 961836573 961938560 42349665 447654455 52439825 262327393 583658969 792143469 35778593 588988176 485805199 574943959 506594678 788552683 499096363 861688218 22132160 75284014 69325686 103753785 937617906 989397280 746380331 920445573 619000991 996164556 282465941 304106406 987396100 988629424 905587700 971772221 115970101 183600539 880794336 928850132 321667808 483795471 562101940 622794606 801258008 967363386 548590923 575937966 98019525 662698721 347772707 723531317 700722066 930705546 135578625 226906071 446120815 487001544 672340374 780308149 19260338 594969899 51729488 359560510 16040080 551114311 43473195 295285558 676055253 874168729 416719986 915102858 840890775 871758574 298546578 734406094 353308564 926958839 967552271 998254460 96486250 821214900 41990431 551532032 976105379 999323740 278232880 937010391 555160566 774337528 151444808 363456737 102274077 849563564 394502957 921513442 104944805 535998116 660903038 816815749 617706845 669003019 724035576 949680484 843083845 908118619 572009478 852486982 54902589 493268127 814458590 900933391 451674864 650327054 978189487 983948187 462986900 682460941 148899572 438987013 994520962 995584125 199610767 404674031 405244299 937563380 184708293 600944899 729531999 928523442 461524794 866182795 658362224 737923536 169244757 649580300 331218967 483262023 513448506 588656738 874132945 896561981 875353889 973018149 206786679 781705358 239290440 290789517 515599004 905678816 494863392 648202899 885382103 904350886 733609516 935559731 219639001 830976546 773818173 884667648 513967483 543665899 620042862 772540763 610105134 709147469 237033668 303594987 342542562 635114169 216236692 680520564 906361512 934928034 17392794 72599851 272308144 887339313 36733415 682727775 862268130 907655163 678138293 817059842 943600264 988154058 103039124 258202624 646284446 832926682 120267755 424322812 565258006 659035763 461441339 698504346 587307902 717401901 536883077 795248940 798212094 921933688 356251293 675424333 345619362 458822043 983060380 992219572 476731998 615010844 102298659 598934012 835311432 959075262 203807232 912074272 899181842 930738562 850353389 927382421 352826979 770798627 694772402 811018281 119699885 163234678 30344207 44608301 127928531 377956038 539482971 801608343 981662367 990471067 355514636 993858034 535946196 728935177 665222759 736202444 393332698 728428105 502898293 634462559 915412907 995475968 2657846 15462049 140979134 361579657 771648441 876481834 129665334 470066434 475887341 653136491 328334156 935533768 173830991 322606533 147933032 704033748 244373573 957430871 853765736 966033828 725874120 784470291 875305974 968211920 89194667 439416293 327502472 916955659 317942375 626751050 503755377 822190259 606531358 979243833 467598274 766468451 76612230 82411852 472350795 565918583 218612934 925697090 121749348 213684551 768496518 953858058 975665628 977914419 603100243 875112903 788236394 808024120 666842709 882952036 317265650 849064187 580390565 854751065 492991917 628782333 60879391 676598116 584521697 883164118 192176477 351375107 554851602 912871713 402224496 585598489 496475155 906056789 850905413 903757249 272561301 375330693 466429706 975474312 619755727 795640387 508997845 978136029 567072429 852385027 743866626 776226522 270948368 948814549 116789776 601249365 767352050 913200214 624136650 973407781 832952775 982661434 224356299 397332586 672677712 790643321 351243737 791982203 824543064 945898884 840876700 890843520 955636569 997221013 148338700 704860906 615831165 877194690 285892247 561922375 654423214 963539655 323327274 489748992 733702432 997397442 980609792 980923248 930031161 977583071 178823334 242508596 789933561 988581728 841344716 896904877 696048204 945043598 847926219 962259799 221574353 433808487 175341643 374646683 376497120 506283955 94705973 131437810 520352223 568803836 169880304 191122944 206590872 981015465 605291499 679510848 373420904 642049505 977313948 982110701 536695710 636024703 705944298 897123091 102705741 595414322 980653157 982720862 988203312 988535923 906190899 974287109 212735129 886906441 792922092 812560317 875443853 928712626 656052626 754016255 986444767 996353586 718263814 933609115 216946474 463583831 676044538 686464396 73164372 336890082 321933214 338035212 108691953 212514382 589854207 730851949 692002599 702877003 585960667 807034834 185879598 605807370 770926329 819333131 562479131 709953839 394777106 632258652 139460177 827473605 102571425 785027625 338455046 617912155 550280044 977599043 457099248 468034729 895438457 915917558 250988790 786197312 708059584 902530238 560682004 709265475 937997394 991417582 669391990 790632253 474743415 679533234 782990428 957347428 556113598 829494795 635658432 661859092 75827839 752547427 420747581 881947319 828227635 945792909 932596960 988013216 460054846 608144297 407417817 654344226 876260900 973611543 419180680 548581507 551708550 612934497 98091305 150271476 84355774 341990086 482539274 979603487 708030985 953828574 451853639 812829026 684687625 984493865 184379807 517889283 917670257 955209072 667592787 915094100 78129744 715880704 248787792 708693748 10411305 926178244 108809130 318304208 615211555 958709241 288458346 555455591 463957753 520788918 438136796 609288498 286564677 781282644 453341658 816421087 922202473 953052614 549445659 598698128 281854789 526722705 377716022 936178393 424904708 525851559 541748487 642793163 691192300 835306337 486640304 625950232 478688800 483211010 702479852 877105145 585590699 696833907 964510095 998391169 259660473 282705258 275914139 381234040 642885712 849701985 405536994 779002159 83043560 284849435 764249113 875386425 239289249 701152143 789623095 933445880 397155504 623103309 248495799 646237471 898777520 938986317 881863061 975413063 401214168 704661137 423070252 519195403 271152559 998815313 5836202 255200223 728917018 918094934 391496488 419277544 271155582 854605769 48024094 669426619 427403945 830214487 394085385 752269322 331939201 541576441 433697790 682687928 923212975 959947664 661829602 752025053 38708829 164888901 319796477 707324790 991327700 997564666 934886888 970605610 52268838 353605143 669422335 874591168 77811641 979054308 921447374 929370737 607976239 933973671 851073766 982212596 250292514 935543696 178499317 236459016 276660210 469631607 755396003 838773273 796237420 964109926 85245499 372088405 462755609 908441230 524261950 834856402 68820163 427471327 141699144 408747500 679056406 683264583 323159688 641694072 94728414 147242470 852377925 902520640 20735319 936706782 293349356 378370028 141493269 203540207 816202541 969422762 456412880 552756047 444820801 496220216 725860199 822545530 226557456 444966421 964762477 988996475 268681882 328203736 122490393 930598173 693637040 874452307 197973895 914686734 346297514 951324770 674606924 793820686 78371027 814139885 737224590 984709552 496417585 612290297 957744680 978347622 841734057 851081369 320525943 967171838 375735332 741819728 449778758 493938673 948779660 974015378 383087430 914149952 248239858 406172405 957000025 968083360 400562990 424033043 490116920 569454875 660826279 819905079 771960028 835458977 296750458 464535529 719942143 793193025 163490945 529439908 646887391 659570909 108977780 738805941 650950435 950184805 954353743 975831947 244138879 316581995 243894229 682899279 25261857 513289511 448416309 704930395 101338981 239992767 919121192 944021448 293567976 715122922 968948573 998471728 824528110 842767227 940814393 946563289 861132530 994856346 795451353 980381573 264900110 766321785 827294536 878857855 764593812 941220721 408798823 836174441 734663819 841123743 457032158 652012441 51694554 271867313 379446375 505986148 166156997 888241829 399494087 818249147 923961186 979681061 909508027 942919541 451630832 790489818 691347519 775489553 434466869 689342167 442944295 937435949 296579566 760142238 84049056 499401585 480275365 721269152 92334188 814205378 614116885 844245370 15020022 48806577 828089079 912764462 377424363 695060725 834249893 911688751 403730161 822433531 179004070 785493642 372738269 629353786 864856940 944060205 193821487 817676874 936739674 941036928 242060935 542872070 621256739 772308200 456371974 881773598 248479569 383921116 9774434 418608491 143236812 351226651 253385284 949772252 217270232 758682372 625383227 943796977 220892601 918895103 564446821 576412864 253502805 930054734 328457947 371405744 467798887 639151406 992447376 994006843 910553456 929640029 562057625 760418091 222458148 249536426 706015894 981838785 318088992 921769069 235817381 522324069 346435156 858161178 981082083 994631193 197588800 260578839 923916094 955851692 658163365 812844492 858425638 897832820 52352667 570945480 623003407 697103679 368353657 851928635 542572807 602381516 748766607 951867427 745999114 802125863 715319385 831303125 2120512 590906549 675438876 884869792 602153128 934358952 413106439 533435724 552738157 906190426 953876524 960138008 808567554 946746033 228752837 856637397 869356407 994531136 227369183 930676273 581552402 969360181 491901502 588527714 995535624 996550662 256916702 625018484 359393696 617712428 637899960 789514274 60052862 143534603 295461687 568223058 632713918 757182326 784159976 820494458 648035525 705458160 376006612 846241621 655394509 839524584 236970507 300713709 294649439 795273525 317203602 913223532 377680143 653520233 141228136 356163723 308390752 313793346 218850152 756065163 687522324 823143278 268672714 651881408 898459485 980591900 397765575 550673277 784025898 802322072 799406259 951769551 322984918 720493946 374432582 401293584 291203096 451110477 678988631 699865173 384189777 417896917 721642282 996152600 585194418 830758084 12948500 563456149 722365823 936528166 778724758 789001537 699700328 815119917 222771524 461261872 432459209 687012722 873907286 940810900 821493125 866715923 401684414 667645177 784697957 802513865 755833044 885887683 16508611 49396122 560126967 901280571 421232205 487885707 281497910 322079904 6310622 801626187 440051838 888505377 360529955 713709190 556681981 707429896 546715459 868158507 465357600 577866181 103137362 414231189 262050198 696745044 453549951 663189127 173851421 908993347 38099976 269409717 647714117 743731026 512263190 871652836 230663371 915902202 593417390 687293161 925958212 958213825 100560798 790753361 684357197 693808268 462639162 496404024 65190640 310264649 636241579 856090403 406569351 524773377 571849584 813285106 2097744 544324795 3303877 800851388 118946607 484593629 537935029 908392040 294480963 486215581 4468985 474959114 957372061 992011607 254471005 283536450 119664628 907593320 203558990 585622329 505655824 992712038 187102556 674663785 37000581 522957891 369547101 686488298 646918243 716551535 711856419 867880560 712971865 907386488 621633488 931877582 234756633 943744465 529232713 718904543 132014497 460996475 626646185 975033715 149285739 185659152 475840416 628741865 339412978 816515609 947126177 996314451 961886584 986186167 257293383 504454860 148659615 709431470 319190988 903760054 987342551 987437956 838348151 895880564 451254915 476428935 603152042 659723906 119255314 466078064 801627783 980807515 962518199 978075543 306194765 322613368 382660260 393905051 68522879 311673787 793235904 980151346 162467711 173223267 935967753 959033211 652678216 979446797 553979013 835180820 513389076 634252587 280937289 710124234 315270505 924998660 866055960 973260986 417769591 716044545 82697758 986423060 170176450 272455513 468678742 708649135 485623754 972955627 873944799 951603904 95550226 956294357 96319422 606979135 161112430 409647148 77339489 86253698 376520399 634603786 387138267 635049831 378290382 533829674 961299449 966790665 353344915 962100058 357855029 758851185 776596489 904414546 44271724 228518609 666440085 922818864 893527817 961630382 316220069 718359188 992894646 994534534 108821005 185901415 124761463 386168959 413994716 629126265 300091131 840595119 512641437 657746201 168581393 375241502 395333597 952794903 183939588 970034718 250802018 395356137 631528393 967603178 664655431 757233480 118678318 957410038 909188930 918654340 895902241 978224469 54281469 616407798 404828189 588311186 942642015 971627434 811687680 951605269 922628315 934120678 615261876 762937222 767462346 977070161 851890980 902008436 662742000 666700780 726744240 885295933 218199714 417271823 891813698 911877787 569877683 902523065 719580042 758857593 912307775 926529601 107995336 951545334 848200751 871625075 747134729 911830087 320008713 932979950 231746143 847240930 944738424 948142378 203675357 436544871 472418171 490407398 30270744 375987137 948419983 987267560 777781071 945852268 641552093 857357081 646916625 718326232 954831600 961739667 843478736 971980935 492715482 545562126 166205629 538377626 451449444 830729949 219045596 547625688 961415588 966171914 469192388 885472576 707255417 926384678 646960237 673389965 131931194 779097529 815744259 977513184 210374086 879478916 687974172 976105204 85255652 875714390 797323262 939298640 597229077 605670378 278061425 342967725 63878244 148188191 654065817 951262787 55160529 265146899 331694842 943495316 522139161 842896901 320556720 529385079 69754469 940484098 819135481 886135392 653365814 919781888 969245858 992920404 594345161 752153255 890811021 991338079 591082037 877417320 666913683 697821359 767657632 969224382 267133323 581829586 978237473 982013944 619535406 735744124 748670917 836278159 395459746 542934019 275485666 903143615 467199919 988328630 4117473 680095936 567338504 676640316 620265853 746392993 486406535 530643721 682029230 730810029 170178906 726046138 169466184 867147110 713623177 885461884 855144997 915701840 729858535 857580464 472289147 893970583 135224420 949466195 308083169 788876346 273755091 715627934 526945783 651142389 914779131 978497741 4640021 183851649 616047931 915006869 510788845 677488346 720420954 807994553 682242462 838366825 901729801 967409584 455804929 806360953 698398892 739594780 887604393 948102798 881400625 975558013 835041320 862851381 829283083 858471787 340661141 710498668 914042857 974106268 327666690 347242084 353857356 716412776 396718367 833989055 399682215 802931660 45718693 489244047 244351537 370686015 66863277 177518981 439914489 943410471 791067545 935541214 257864322 952846606 170158000 398231999 731209902 835477451 826451344 884199537 563764902 623535284 298546609 612755142 449731315 641973845 869112169 932917175 400906403 809263470 977176510 982580611 627611005 663769606 488312065 939358767 378006906 978320714 363936206 472535378 423730700 589316687 67050386 540526977 174371738 844390860 487442825 915844917 256016920 493926113 496182414 616765964 461412319 791719480 765638159 939034635 409383877 771249475 598633531 902460273 153558848 201093138 155015735 928420121 204696499 933030112 277289473 316220595 722207508 804202842 243618583 257427046 815871162 817211499 899299566 951965636 657234101 841354630 131274123 880627567 143892336 413035754 417441551 782339893 263234198 580392647 533494268 586154651 607640909 986887652 968493506 970885481 102113177 935807813 829012820 963632338 426422164 471933803 955796713 998797101 775573943 962492428 374635753 575381739 906089232 987704317 951731392 993307613 7536113 386483011 953112272 996774102 861048969 952203195 908938052 957922691 110380372 929233363 546268689 768949294 577625877 948940275 979209466 994929084 747897481 764931529 615472517 630712062 928516938 960597701 312730755 732939826 807360887 896898514 868614072 958498079 87910305 557103590 280765215 375281542 332192618 391348326 442988390 475468321 21245263 669841748 734827084 842232902 909772913 955229117 456711340 993643465 632029930 761285562 675978647 937325173 795044254 912297333 23532405 590694024 440369250 670441959 979718484 988079867 855913469 885873605 272915973 291913626 632277684 670211339 414902092 435689324 92378808 996576565 795073340 994520595 427081419 601293214 698085873 868413746 304097057 454387532 258740187 286079134 660401488 784113265 883139447 954063576 770646187 995894781 286531497 298159545 739336180 924673499 177397459 481834694 611937380 716042038 117111469 764355181 575383168 618006665 838446800 881751949 732071995 855002772 565663057 681076495 709141067 832521271 930325397 994962071 154293069 754085620 808709084 893253240 547146269 819395556 270921334 384922048 539597604 599996870 282697493 743029976 932182434 972225346 598850503 706477328 953437639 953865432 242607478 433994828 138233409 185260479 498572165 570261843 858021437 984244191 906003658 936154073 49610034 784116113 853492722 972742235 887806608 979785120 347350042 823873334 910051184 914093986 388133065 523476192 236424459 384891396 992783929 996220126 862798040 864886771 119307268 552356565 113384045 891912249 357484704 399628729 181290335 314415676 643654498 653208704 78396881 641724876 468893971 877195072 291855349 711211502 543785013 984271474 543663874 958231119 378209974 772731416 27296852 516010775 379682043 385097459 334661860 693676564 34532278 239400001 843205191 944764607 403049447 742725166 597845899 835686132 256924063 632264007 382986374 844344930 395492443 491538080 821843437 894424963 92035268 800948790 910441982 985475123 963246439 977420265 338677961 900990504 841865816 961085041 624192733 846734257 926920104 990460326 824946729 922714657 434762414 737920380 6400707 237096916 243562720 502038179 544783734 660582409 674373594 811813102 771315513 996058113 210841214 968523686 577231071 777067327 551298614 685458287 416660752 852064513 346736308 808941053 59549150 376065663 13491780 123366916 636689616 729343820 201099814 757263054 278545035 509892801 324657365 889685453 549401540 791539644 801328669 929024440 708096893 884017933 513916296 808012289 280505775 318885896 150216436 712885252 469563879 549601766 814381472 940205993 111602080 820932125 150218917 268738770 344125697 455193789 510841666 901849181 291001181 736238692 581836490 966528699 707189115 730831405 844636018 925092794 358287278 796009768 30246956 556950225 860849973 935621892 737482859 931507204 395143575 605893037 568377474 644224361 875123155 968581492 422638789 529420844 884721230 998003816 88599817 251130546 674717694 723597308 902558142 909555273 883236876 965148757 844100169 932086995 111961514 405451576 458849237 874410134 246683566 625773669 982614043 989640449 482328052 597780872 768134150 975549292 981286535 984407745 132183094 599818766 273010873 632848083 891676324 919771252 838760643 873998554 275462728 711715454 571290700 803376968 935597118 981649427 378509925 998405694 771673080 943192365 551429457 648807089 583880477 701992572 210129191 706815941 26611863 617598941 6824947 424197170 606021280 732655909 340026873 402082418 894139602 939966356 55404937 203112580 533672872 606816116 82333920 623441658 952842276 989960352 614724086 688309872 395106519 585982667 244424598 833429390 804254091 939223253 234154726 967161626 853704244 927236389 364551564 582756354 663754639 953121085 806311947 976737240 410425940 725700085 173503845 663129303 799194730 915254932 888511292 928492219 913429254 982187901 536867048 552124108 824700426 961309290 672291128 752015064 503930064 835959252 657393075 803819056 831110796 968598154 597464617 851069023 848643332 981624959 152862731 833398811 239587370 756356850 456961828 949635430 767518038 885703183 890813768 976927263 995940896 996275008 154362947 467412967 504192011 606219409 950175237 953200618 905569594 987626583 361212507 413427021 395755708 620531042 18200538 827912685 323471850 918601284 578414729 997112656 387334741 387524628 461203580 815904343 228767372 620157933 995754009 999018307 335674633 890138430 953921937 983957776 596902487 845271270 501450882 899049509 988205303 989970114 198495682 762472329 340830966 432535959 781485822 813066725 436965348 616127586 372080264 732208388 316194755 833249140 489717274 900259808 964727444 964938992 658887896 683038430 531818294 575506680 216580976 610446591 896440430 922954482 345076041 527794773 43920431 331375389 704273009 708703984 927818652 951084421 351866827 390598853 718223629 900194729 515839511 538288736 756119608 983628366 526787034 625529406 474153774 896520073 584144117 592220705 366531018 379663354 133780467 771073616 548381917 735212429 922028903 930041513 647649376 847513637 313370070 446424745 179198823 905291830 145470138 821134352 217492573 496571406 720961050 966776691 654494363 820579271 85619475 317001733 37312942 364027436 795261369 952280551 367387046 726391039 499845364 975209624 391186032 907949350 934315527 994312537 740990381 835208438 517444951 564838603 400508310 741573771 585577031 875811156 162864794 575193400 272304850 542025032 640095777 982537887 507709710 867694696 761954646 856931267 544688034 984653497 102502161 590485478 454251379 864779588 260767448 574018314 672986819 847773578 552654655 636640771 42165419 585320510 224578354 864534390 216951459 579889828 167862129 370553590 750264108 757015639 213611357 947988167 301952607 657590422 511546764 817409411 519989531 763120666 672331454 855892694 712386640 924842491 545212001 709655631 53418624 193339586 355654742 442551338 118346796 661896370 195889819 429977624 918695856 983815951 54898331 557279988 596290374 803169344 50208104 438284213 50767874 664503122 863510967 899830515 513364219 734154591 11706211 845896121 909476140 984031433 279351988 533550190 323115765 583597088 323546434 924989040 677826282 686580932 96967842 985273809 795817637 956738800 487759241 691385186 254688131 991182532 339001689 575537781 384120547 442039368 469401474 835339723 939350128 949758005 4332525 530383734 394390386 501477416 634290711 821596349 319964756 429821403 658415963 817514604 188908961 191918647 622250181 801676176 100231203 927834746 309144907 370539227 580567692 865598493 829302875 831436373 35139984 514664201 659259747 988774913 928859372 992080520 188449658 340065286 672797118 872553278 42220742 836672936 936969311 992656323 950080179 982360583 668308593 920269259 408972352 751459875 687599814 714272923 398509529 453825317 31858930 392096722 365407387 761689336 833865883 955995404 887143347 924983232 158742350 824554073 652710642 960712444 144782401 854588301 291994547 752650005 934364155 938795616 592479601 870183222 382158345 558337369 997311002 998717377 640673001 958699099 266887574 478195803 7222619 521270806 146434720 169283107 237588689 839606711 402504116 973073030 544673148 565378749 271892047 287247790 204580381 756972614 985044895 992964878 233569826 463502226 950701719 959561765 585010851 850234157 622415159 881450073 488313025 856318141 497719552 601206113 410965237 795198075 58074683 270713930 181575975 723266734 743416256 747940607 259922736 717307952 441962873 487381079 662248346 742979230 351758669 889501836 503497264 783988216 250661578 256646980 866281252 987926009 198490600 560162838 716515368 864325970 278452182 603688501 678598150 829785415 538590192 922287690 638052462 973840452 407250232 913181012 302874801 506635606 650097304 817958422 404694492 499946178 788195621 858541497 487828671 758928717 367618434 809324309 921330728 974200899 529737165 938310963 981545209 998432090 965916754 990413214 553665213 795718639 159498153 600881402 313875671 796989606 784982643 808375739 430210788 571956151 567833352 826775613 919407118 952113529 360424574 732476057 333303286 679312389 853859772 968112953 266085307 620902079 123025431 164461069 871116918 873991957 695802376 733774003 33765556 177397829 560638664 638637141 749183314 788710829 670888956 874354471 400883327 967917729 876582332 960495312 834496383 900820338 795723463 871770463 669465957 796172325 660536448 978559707 381250304 683867478 141132568 856571830 92906670 749949948 507037562 966371590 87163430 656429287 468362268 499555647 949051226 977404543 759929757 891409514 177960274 786843776 862678208 942621255 982592841 996338142 181939905 916107994 444360449 927851956 480308120 580663685 19468860 853320170 522355822 821931305 48000201 555573771 298742985 789185919 940703813 982345300 525263205 942769422 757381879 936656129 756208023 996932429 836067808 984677416 2769612 357644045 979242022 985461291 280194056 748578953 529893221 675713995 822555094 901377539 296647094 352736092 424479330 436357651 298255095 501033866 28923058 710053707 927165844 996053643 460438838 554718451 128402031 686469013 237871534 462868008 811052924 986067121 127824361 675349994 78610073 600432266 971077460 985787012 12202223 522507876 7446376 140588242 671013694 825855382 35649508 356703168 13833848 381676213 535348167 924064166 260476225 904944168 909899141 990658406 642773714 758781517 766369970 938590160 537338513 682002312 594856467 961808807 599677640 739312394 413309108 938620097 351638137 406694413 318564446 385348017 816881025 926321386 728951319 829804574 550361227 839944829 810614606 927624183 279745858 522836645 209431439 814703324 644520384 892412934 434077895 661979855 870071041 878544052 186004886 872228002 988439269 999386281 690295410 956497680 271269673 417785565 702729080 849247545 55433407 950821129 10404985 151719255 862154737 981472397 619392347 698156355 880010946 922506379 588918038 776121528 884088275 978377451 679514415 926232903 824831815 877241311 419682538 661080175 592275374 925548431 758914265 795258764 98406668 302120569 411654007 912339788 969860817 990882883 969308803 973626631 699721366 977240367 930075099 943803724 604638659 661812713 12967229 202774503 899534751 913997810 355071191 809254617 948549739 952341361 105532539 286277155 609737525 782447041 990637662 992854149 675341979 987722851 822593039 838378142 720000481 822508477 849639238 954104443 908210383 911446745 627519227 766864164 666987338 827195408 746728054 826622415 397355571 790198099 247088842 702156461 663436609 959949539 336156471 685162856 3705399 677254301 973821858 974200934 418101234 658131619 283137291 916071223 700300391 852855772 674968755 752427625 834539925 965641586 126823410 453281194 473745430 949715541 203343336 407964629 652758614 864373221 683071095 725097621 21570299 870421654 549202106 910339247 877986117 915297265 888367457 909206415 930576850 984824366 911759257 920367627 843109660 998151913 616849461 957909721 651396346 903563659 491531824 904352567 627873107 871407152 874833820 931130055 614659306 746169306 100416166 168984043 530683453 874579403 290319929 618008700 118097436 396244768 493327587 770078833 341981072 466356541 917107679 995742903 631043950 817080468 656170892 667377633 519639727 895939744 711290787 795674830 649779343 692828652 162821029 966830007 649541958 962220090 487339162 873377493 663637892 782198018 886253269 979404903 278951807 778254875 857651069 969819133 598344660 904191211 950582296 971071059 994824500 995319840 499299699 699397907 204551744 498175032 223417964 293795233 390525874 566656235 473294551 613470214 601769607 653326874 312993958 433429814 969792264 972576428 703044720 776989313 606423277 700561171 398741680 462896568 797850138 914836299 881283627 922798033 91286343 791223444 993236841 996140262 408195275 664428796 412484710 679503574 957179007 983125506 728652164 836662252 680719486 927192051 283452260 649184116 902163306 928856507 761433772 822204239 811419111 861712597 157430495 855843789 400145530 755039450 135211019 733355398 936560425 987615067 983994136 994822688 158421507 841859677 985579083 995178945 475067642 602613554 845679451 996233332 976344499 987381385 393475660 920950470 741503852 873855757 457604774 630663928 711771464 766711488 858680527 920014983 277770419 407869135 125858619 761593676 18294206 175643776 264166231 489925975 60234398 179320242 266677686 588548309 231280861 897312481 518620546 712101418 222132067 495536042 747988183 974028183 629309769 692650885 761443963 952031952 194340025 443531684 675780476 753772413 622176614 921651370 86406324 634847327 622645915 766587332 9237208 921449609 232743516 327034675 113658721 781291492 888877420 892209059 654789351 855321016 87223296 839327464 376565019 612528582 151080458 204833144 841644873 899204978 155443295 729383233 131368600 812876622 974709368 981098885 940135916 971909147 294379846 564303046 863640725 947452359 563759458 927520862 591279222 720168669 283543509 695966166 122956359 264538181 121793201 463065247 692528467 981518025 775951170 896000133 246478860 442395817 213464574 496222130 521588169 708419214 379112511 854776755 729488321 981672665 514445609 660483076 310835219 368174940 195303337 632436505 887623597 976982027 583767348 889124557 554670082 874253748 33589359 811382251 147684929 425197488 977824570 980325342 851890290 957529477 563458535 791841315 476013487 689530736 912745054 957374579 814724108 978766265 184459712 446720661 609464264 657732751 665277042 885282504 609317111 977538474 784539997 858940376 133070118 791816937 323139647 693641720 16404345 356581887 237709255 818471528 798361518 848630320 126948880 190337748 720689975 860123342 946215523 952280681 493321684 498848822 466001377 713367478 763807569 790044043 145596430 720250582 421596888 914058910 301774380 985517022 955260600 975422683 765806409 922364907 681641340 982495711 811710669 859774771 600629702 954629277 353659375 902950377 70750483 531007027 597018724 728340674 190104092 867606671 265934452 515498500 542622544 898384468 43810145 781146950 996110366 996994655 67980791 820363967 719719847 819075624 203140163 395841392 431810180 905891289 637787011 686427808 510372421 795869216 459762636 615721270 738790612 807750818 896604330 923331597 325635756 361682057 155580598 770941780 255282329 712844479 16527498 587744134 644336397 707063512 206052780 918419787 838314166 849128591 345319994 431841592 455950475 580157606 88659149 757888643 804251809 882530457 82658904 488246775 822326566 866693633 637937576 860797369 780158457 953682096 333661917 714894729 375460893 811298623 594881780 904309490 547177341 815059049 451508402 514020220 933615597 987037555 115025623 747111659 766368955 816916480 534926813 952125666 619684698 815398894 784494309 856220165 416496039 481118278 492284178 829874670 168348020 476381665 595368754 738760208 60444540 150124897 959641048 993798067 85112977 524047227 618417835 924475294 349970399 354795576 749524955 912168407 750783137 974153678 741835581 750592269 368251702 772381101 237067280 581605064 614673443 945404034 20366549 541918317 997519701 997986604 947688180 961194541 279507502 384289192 630948461 705171142 239987410 662532628 595438933 945869480 284975406 769684187 619152581 683487933 498881756 711889958 217947500 986187772 831134319 948033906 283693939 803435480 691429226 779868103 494071123 943300501 832443163 981649540 155985667 932607313 856965133 985501685 123544244 404020461 387457652 898836996 206079211 823042871 281920476 793359141 936741166 962885872 532152087 750011909 873130329 893592815 361804223 489057779 77995537 242516221 323942971 912130287 879822299 928308063 954444257 995662791 922199971 959434904 350435231 860472971 651116381 654947216 998023360 998381473 90872095 699451096 68694057 154191105 711315900 763040580 169127079 263980348 942000739 959650503 84104177 294631981 562013937 993687911 515912484 831715879 310973029 407434679 584995676 617563979 174959050 653011028 876746802 899444995 585695031 872018568 601462578 998920578 51085866 805790999 416387371 777039124 275298900 851216010 438147900 965774487 339334553 656838950 957414532 970410086 212720646 786216778 587930394 972691123 896014384 940610711 483221574 491570853 314756442 810426046 21916105 173978696 544985450 771246744 654136087 735784989 493367592 866162504 782134586 996347306 794184607 939410302 554530281 556855207 378533843 401220045 717531226 856351363 868489976 943772229 312103378 780496397 206787715 238586352 927255426 986651682 969133689 983270563 966443919 971103724 239301693 778018571 171131087 547756366 122040916 351615253 397583646 479616133 945998408 965968779 282811720 906470623 732243213 936394959 53027395 465006867 642251171 737770567 319242246 956329392 420406219 773959439 276764715 580598506 598792948 845808699 627428577 812434997 142842974 270257634 995577266 998504196 676248631 892360613 741837433 874503301 154627071 790766857 721297522 755289627 264770361 551295773 844442022 879091733 160674604 714639219 888879922 991285396 161286672 438192764 331630887 741645774 376667422 590192660 32398818 101441357 212889594 491846374 610964538 739953098 453990542 832154406 481586188 882694584 643756989 989057425 253757885 728075914 575826837 797444499 178808836 988671333 233734464 729928235 620300762 697586393 495028110 684684113 659860468 746982488 417413850 609006275 343721008 810201526 93185142 598191686 170224307 208429400 652527783 796749754 933047699 941861642 549288720 691604841 356803924 625947353 515111389 547724030 122055509 773967462 639560526 894099782 795119296 936501114 734301404 870497353 747983046 881470565 871226722 938751279 979569939 992179430 912404014 993444947 456942419 686868959 463532865 591765059 735560227 779230680 646196914 885251900 704882374 861595670 65170908 573977897 535085686 973579943 425776287 664443622 148940701 360417425 648369384 749827532 391766478 405486037 549518606 571047283 793959468 903476596 271093404 709505559 958429724 973681876 974354586 989677157 412679157 755898264 853917794 874444098 381748751 815400420 29863388 410625229 317644521 476339447 271378584 277294691 946127890 946205055 741512538 997932887 584256619 827896769 839373088 987412974 171051616 911271249 132600177 973814573 860137873 904883127 195744440 603334116 321146837 659900139 822749370 873162826 300346429 710145083 823435054 833774582 660734793 963020423 744610742 961550747 279984908 752707631 440187909 862816894 774560926 793275232 564430255 784788433 851693070 917646447 873655831 943206130 296952215 521167062 795195027 919722876 704732065 777988236 868269255 913587187 875236784 880649799 506701346 828811945 922179496 943757086 572821160 846577872 812406107 894373692 843345023 888232632 694745295 781854963 224205367 696167485 822238713 832789315 410328255 685651278 341605827 534349566 735040923 739253081 99669219 833321828 333729465 735910307 766582308 960283579 451190291 732947302 358177960 541019095 913917412 985030102 984318638 995042163 721308696 826887810 975417984 991666570 912570840 995403183 352938910 632742598 812127963 988128064 154724587 538991865 327559831 443070915 20206383 865992982 253483383 639432351 284719725 577819281 75386266 202101991 161257707 733021393 991183141 998269217 595087703 902761841 251553271 822411556 438224398 838846634 237653976 682858234 893384107 955680650 373454476 855467123 16796423 485985532 815467261 821111973 222963874 711818929 401692802 423182193 679610671 916796443 427392563 544063170 382452422 806409733 397068408 723423650 855105784 877441169 369439523 762494653 718214953 787335453 318523824 715119092 621721259 850236733 261848102 536910189 878740155 993037993 356147646 888259678 367267997 454921664 953918364 966739366 976053861 992348171 686896589 699902774 233977209 310619253 142588696 995790737 353259256 812682854 456340347 626332249 946231378 978517388 688612964 814062857 490942262 562083986 170119910 185151623 425499722 543909159 988410953 992512738 113387965 752546628 740480827 752959416 712548818 805330027 527390133 565702444 704143265 880575540 84109670 104363404 809476614 854375627 579990848 818137821 15171961 447975824 136794090 428599900 660862270 706340157 713027515 981293153 917054602 975672239 620470074 954329123 30188388 409645529 484784756 615298919 746223027 838948321 464528974 491825735 179951284 451993382 796135323 871280929 148051762 629859528 693873665 882759566 751164220 969624477 271822514 804373051 731834785 921285746 616336448 825320711 569802370 957238968 316551283 920026826 2137793 974847348 413662028 862413707 588023577 653147515 607550298 799180292 452903063 571965316 688693878 833992038 375811466 796793108 866893280 931177106 899103358 941935781 385202335 987706775 512230281 939534816 757481567 996443666 645824147 904108899 409517369 552436245 218492395 475308912 223023613 235678934 996356824 997523392 130219938 758443481 789255470 974643311 322023868 857104515 776199580 875712047 692822132 859397333 426041102 485245039 466542811 796624857 411305104 976436717 507963835 527848021 475885897 874607762 624269119 674330720 345256604 675737263 68235926 594082544 974650231 991217206 643489951 643616938 75397262 507709082 62397539 329088516 502882696 529078389 247168046 436924929 734177772 766667780 781573038 901736197 285330231 681471972 840349604 846099072 875028713 956530280 461498569 479099086 18860710 250722751 575114828 847476853 703421378 805686633 360979943 555567564 729094349 827130344 217433936 708187915 678193463 760266415 372796961 894743137 771738456 798654976 124287765 566602796 335940771 719529130 440744712 813704378 261447499 776387669 323645183 628930407 475268955 945084879 804759913 834969525 485161190 914428417 20579242 378846334 344837985 736041007 294137707 773911061 403625859 977819921 651996266 791647869 242678870 989329773 166979249 759352059 992195341 994791667 739837256 866309452 307534158 566491313 979174570 991722715 653304571 727925642 301842672 528581755 609366941 684082456 716051245 961738542 351770578 374203687 97307453 392935272 528826374 703048020 493338720 920707814 756467905 804665164 578826536 831508949 386044491 863461280 441445749 500805288 30409693 752732003 44784906 833344140 65626084 282760333 89657909 405384686 879633927 985008297 288624210 791380068 716546156 804800287 998408060 998619976 990865354 992969870 181503429 640798059 820698256 891170601 344266228 733395256 854663819 975964169 158498836 834949894 952508993 953443112 218738241 517054587 456553834 585395639 727316989 921200545 828393340 944749926 680776185 717066937 217924268 652384674 330777030 841210305 649161445 842623689 945633033 964255782 605330223 755093661 591782460 853355582 401399080 731395015 499899349 590757548 181459789 665438716 688455506 888275879 315269445 770258343 585335579 633027984 897367124 903058293 314401247 840735581 636653921 671441422 30425773 838315705 722295961 895910922 101806709 606642453 569307888 742949483 18626143 801911449 582467313 616692170 793375746 864953340 877324883 920589491 287778440 544603335 998370055 999297971 493277172 716713994 871059283 973448169 648959089 774488943 128605757 691610931 129849757 145848653 871217672 980234488 336188799 671138074 818376202 987254040 8974303 120028126 716819276 729409184 667245789 975520179 183838699 321998979 707722250 899081270 866679748 907419361 631283590 963760858 92087300 366151919 233887989 816728825 307223906 813677794 939506311 990479076 977208506 977891359 623297953 899130482 308820489 425842885 925713765 957675380 692823423 923072603 720082340 816451351 480363701 496859067 722213372 961927802 284974446 422473499 792076752 867679032 807366508 911563661 59136468 810638152 732758480 936231339 836475530 929501258 174769777 963760910 409663962 958669527 654397181 893191764 818559698 927708826 378663561 383355738 555459767 957151754 93564566 466344062 134642157 909680615 261352560 277242445 116742438 785580536 179788886 706813586 740308799 862421199 721481879 726285641 278929511 382705540 747682245 850720749 91895415 111824226 276095856 292655688 232464546 305990186 951095375 986887452 171622257 185914658 575592260 644400105 528724572 920330412 999048946 999355272 824732208 987841461 120435859 716525030 870626254 986193955 782548853 849323921 166218792 406935871 59252113 215938257 662575880 839734334 41972788 411614118 299092182 863896812 673530213 727087873 113463541 510347904 997711971 998045866 407246362 880964230 587027722 853478333 519576006 672624663 608465843 937620073 909388765 916350574 13387307 222478572 969198201 973171700 651036125 960037586 375666400 438434548 903073782 949607094 486756659 883633614 499695570 791465759 906294315 986496972 883592403 932814879 945488052 991533697 754646182 985590786 494145395 596610577 584387611 977861779 814444895 935329654 97770352 704490825 374313859 636111119 992326732 996340557 441250030 576914514 969948788 974071893 726660332 896644967 195859086 205745124 61780755 608470733 799031084 986308149 731219633 818418307 935514875 989085742 586435935 616942818 898746611 955919254 878508357 937855452 826925199 830224242 772600473 918079097 143708274 323507607 175338567 966866048 362987353 854256706 756726998 985511861 504681457 909154967 243358059 638400753 148220245 520121723 350215937 480262538 765646287 838247463 474813638 714297732 155661928 734726513 603817354 866175531 614996754 698610627 908571837 952969791 134445959 906343700 610513871 992088103 926224307 965354473 401722357 808875142 993289294 993870080 984704981 990317565 295438881 496368880 79172448 800451994 953541235 969471675 444171377 725315863 797971844 891510251 32462347 278285171 268512068 989764835 823448498 840894362 755875583 834167066 412484350 767925087 289834773 704338096 433771713 807473529 737991813 809063134 841446886 961416119 901011882 920488990 869136763 934728938 985395090 986775788 689726504 910424427 280345518 579560559 395130375 596937589 197367515 657267920 533278904 855536665 209844163 921357378 180997436 599416020 51480922 599042280 817580143 891788102 652898923 689644365 779059522 795501047 490153651 993085688 947929476 949087390 948484475 993451502 136776981 143953312 84314632 359713518 577343975 786144317 617063890 890066317 869345129 969547432 491866833 827438915 388345373 763591317 769554404 996808558 36668623 935720964 710723686 884062767 819769195 838655819 100123783 493462652 544105658 783445783 882083640 904997941 820026970 833777775 756411264 792467150 770037626 895815925 886276730 922655501 57719289 112836373 928551332 964879626 216579460 770231944 789980645 813853156 265208621 521651928 14529869 191247471 278325574 414997164 479879155 726203430 712800422 854085903 393437972 446244618 424329406 548497058 806383126 939382303 593695632 829147439 216017713 895348256 324207229 463199142 978805572 988024074 979263409 997109487 124786490 339140345 198059231 587326541 799193034 869730911 895290480 944006839 350930701 940147753 736096732 905295494 390652963 543943314 27126016 208081633 930122449 978274358 782186529 941868700 289544943 299663411 134643507 155357991 141715651 304965130 299388531 308398680 364105282 437676237 258337577 275060852 932054180 938347757 918928876 925139587 863404768 975840131 260169791 505215043 30655451 435790537 40133920 334873602 47507123 836018667 377787326 431690450 669104667 699657288 17870568 63179189 280294002 829075574 975488528 994342784 969800772 978166739 536992650 865876558 374457706 969194687 613062406 762891055 354990712 831714325 993284615 995710622 810804249 834258994 474765506 821146743 210639518 975666175 747093710 831521706 621800658 819202059 771647887 933256751 564481775 948458873 12144894 751287454 620193720 816715997 753108015 989997193 260603741 453421747 308292130 811191786 928021559 978300000 707735213 900057914 548437321 952931258 171615530 841761851 695170196 722963675 204877793 490879283 993750798 995506230 220818016 485423538 313528101 612231015 200281762 719187499 661400064 748539270 807478302 896679918 220088110 474675904 36438741 521403805 979618867 980171561 21406404 280863515 611630784 898935420 595773084 936898801 41033211 87790408 275408994 926335720 526201200 952122186 10897638 198027701 54828511 913631685 412661753 812101089 127305776 963445125 962891294 995630448 882270977 934658699 214298399 904851011 670782336 811330624 846749752 855470371 311983677 409607036 102547861 633924786 128425110 933182963 616756655 685344059 955871666 993776565 19456156 526812877 324495535 746008318 808353878 962225862 674986242 960350496 349697999 740481156 329592633 425857156 472157761 597810396 49093420 214134817 281334381 850895038 980872407 984803825 259359788 914853975 354734273 966683287 460501669 625067164 54646403 674428079 108006496 398998657 35947324 608522209 596715198 629340084 229241832 503048292 735485208 837633171 205825203 584239910 203192369 838792659 485526215 702007200 374466917 981510892 519159442 836578765 568845111 797670676 491093860 555983485 177922878 627182814 189900150 462206884 771907718 845214745 897035920 909172728 753782870 850525882 51725212 877742396 235985135 325084867 842770047 929512037 60115655 117250851 562707609 832307479 459845863 628543505 571116352 673648871 844774709 885964088 158791049 670651067 581011258 652822436 547599076 652045223 929920704 931443461 372303930 644373128 620546167 985814006 948164196 969749977 636294330 919694151 442293284 982573050 763430145 894860634 736621291 829253566 278103219 604162393 970614681 999107343 599804043 798049766 727536907 946734841 41579871 763083739 223880304 449538509 599816835 907191250 836224500 968768426 242428328 764818691 482336849 604452646 591177159 592926807 406028846 413283037 767427964 963819197 205980515 686983765 957026325 999292870 417266690 616097409 571589710 881489402 439921625 543693653 271273463 795497991 520493812 919112766 302395833 534598003 819433388 930312845 671401973 972214692 41276461 699243542 257073902 961137181 960610679 987622582 81918963 98670683 317627463 432989628 926873108 937632952 860317789 995125291 698964985 709202784 956620584 989365443 941765128 961515066 220223179 570557285 2636259 465939676 8539896 416318204 22848812 628212525 132031068 811638416 426396113 687452818 905205187 927897309 952717666 997430980 934986186 969285759 290781510 576961114 789092095 926687778 697187073 908675144 889872443 932556676 992758157 993452183 871326712 891311723 907346527 993518315 485393535 881652281 652421797 726532090 164889983 654278778 21457990 577875270 63487747 486465266 573789351 661841329 657293137 766743137 628046399 877375093 897856054 972794810 774353042 841987594 891904758 915856295 388476615 477703154 803885038 990129376 226037269 985532886 35816947 435351988 936804617 983118261 405208546 789789559 323165604 665190797 578223089 761622662 941115602 958731290 769295329 820716682 688121036 730797034 41280869 541662882 57821528 960506902 872750810 939026374 597016862 759690055 825820555 848732138 11293357 47036460 129103107 730295120 27200877 982283127 895418845 955945308 828377161 855514597 782259447 981815448 909334452 930717956 757908354 908879295 102718758 160558053 77233282 77413631 876158586 955928905 31990173 220943363 292751137 593260765 941232696 954614060 724720936 757438795 1285507 807083638 668581108 853462608 954063022 997523099 681038218 989575001 40077953 214336377 931424448 965584967 638493028 840365544 789636651 944812762 921092346 987072503 642398484 657422779 298535963 876728991 273228623 725254238 224202195 833572261 381149560 448403700 84977413 836678963 570813529 772492136 802966166 984419299 828714135 948733446 883427315 925978451 266122595 563456419 447296008 843143431 360365974 999378180 25204866 354468855 782003239 990988081 959327932 979939198 817473105 825858755 382980153 695584804 189816048 996356449 225807988 494123987 94980502 387196580 224339306 226793132 940151220 995533529 750234630 909761440 453549715 670700523 248282244 316092080 367507159 892311926 156810602 960794452 257841755 390927233 114318920 256325475 467037612 521101883 937166295 967770175 545368345 656194907 515521445 955912461 579191902 818529153 916177115 950140272 638443750 844096407 686931917 996389089 26309823 669516666 764949701 893033782 336862330 348660757 147354938 402571848 167006031 678398829 651928774 883270044 836795380 907031477 990170900 994956679 953568191 961826325 621510259 736180190 401036698 736070200 264734995 875076243 278931003 645899245 29804018 485808675 866114394 955323045 15169846 500714918 55340299 249373392 263172559 559180643 135585283 694323223 950190847 966919240 613854821 812480226 221155747 481805528 513002802 567389479 332334063 506556083 687180513 909269918 401962404 439070793 179825087 347448119 190192562 917805939 542613047 869342426 995334935 998012211 163329085 167195459 146769680 624992561 269088258 769047958 615987525 808444531 722103264 927711530 829905257 975051618 923727541 998316399 100324992 617620253 118808149 353961450 574073986 606073300 490082168 791339160 429354044 883122528 239869456 935526403 473833935 524491219 846323847 922506405 207094706 620780445 94880355 102721832 106049175 214079920 478789336 908159686 48725024 613875800 103031638 514790399 962906740 966339014 165977567 458651549 795348009 947202330 483285993 946541197 473443076 506424874 232096260 800662747 920922071 937455859 224168476 806687815 565977375 916187945 577610667 936699639 861082042 976129614 116880391 358418711 844844526 878463935 811978844 823113060 18238556 227605310 516782322 539511273 428674710 583818429 331736982 893754441 150430640 176865746 651193875 818134840 652057217 888704288 203527858 700289120 832644290 907819219 33190179 962008158 900376202 945931461 541588596 606174876 38140184 990109849 658559804 842233051 820883192 935005458 767572575 865701109 826839622 864713673 122136786 856411969 333462390 493847828 930327804 960504792 697030247 905639848 669576727 995863348 367409658 647726912 249134073 869878839 868722386 940001377 8159672 407508376 45235701 129325036 106159937 957598191 405902977 494124103 141967904 440562943 395560530 824816401 869927585 928558920 573976484 831059717 911201662 936469292 329448400 626813416 568232669 949056504 476545590 623065264 919558348 967836350 940631837 957980829 975918944 996809616 860072163 916698263 320455189 591007794 92938207 399438239 932860938 978400943 890595512 894196534 493239910 925078210 835427381 912781167 74247324 101336911 482344025 683329005 225982331 908821542 395328206 793437751 505900492 585955509 641180743 716317095 177430520 918708813 226140582 651932742 559698431 602637058 572836619 814589923 506897674 902655900 150045168 203349013 127900756 603658782 307547673 358055970 321235877 958465405 819089948 875008324 971501073 980791139 123564758 454137301 919387564 951648555 772071578 875857390 132242175 549801092 932895717 941281251 736204555 749166115 550814173 984162043 421309269 855159387 572969372 975679833 695927962 978155258 992942880 994974229 63230311 846768615 777187175 992869627 427562589 986399096 610813173 972913846 31995818 541560929 60421803 663050406 932996161 987179187 896847957 979887673 616632020 848230018 140001596 251558624 651930804 803572992 585433183 800829811 865470058 878638073 254930092 706467743 914090815 927763204 704400446 961578541 546518806 745503892 424124092 848351999 588168275 978490916 459219465 475484703 462288291 940061833 251707802 686659441 797776483 979489901 338038969 591709134 745754531 870756313 235423461 935216652 668096646 790302644 499669240 735544448 57992803 552539470 630210875 982279145 94700363 673199202 312741999 317046626 561085189 630903452 188310513 412217674 327315266 355190267 584901121 694598671 733570423 805848654 995706439 996140916 667629010 704460091 639902163 663876036 831813310 860472409 658253256 860893051 297039109 409827871 353963795 731353781 18164891 748076497 309630651 716454875 344914689 767675998 763815173 985517431 555436869 665199236 210218765 990702359 593378038 948836253 327628616 528214768 257156394 640573004 12220819 915925014 415706884 438288292 887617166 985656282 230744693 363226547 785067004 965277906 584084136 826222685 944201284 993424188 541587272 656930129 662722677 694429537 463803371 727828213 896027185 954279990 957266967 999372119 689829560 822793874 842163949 981018600 209182584 635994426 387222462 740067824 465326928 723415002 787339491 813487856 787206402 898369495 389283756 879465515 845155889 986144488 48792106 438905683 209994751 325473051 663459424 931230594 833722828 955710053 91653437 312035152 871397913 941376560 480876253 658874806 837903852 915754299 433162255 743780291 302177888 826050758 724685202 929193985 425147412 633521825 884878295 949649616 50181483 494735530 816381784 876520165 570145114 617232475 236168925 427809296 955339376 995425432 410277418 812833171 178442412 375560014 900659445 904888185 535150413 734966921 251999176 526243971 225306201 769358067 921340630 960577754 466548273 769629556 632280456 817878279 87260932 947453537 186157099 620845334 832613626 868179140 387286898 979174551 8016591 61309310 229359289 778916474 971792646 979766026 179121377 983640825 644531271 937052623 839880041 971121949 532194630 959609394 436838193 511016271 518944870 791101724 157522468 971017410 55287029 502266860 494405423 933039987 408465335 758200505 122285249 456027103 675311488 800294856 246100800 655892643 499941844 907231257 814643436 938116400 262700778 644424607 677891433 720947332 142602540 275376781 619686414 941116197 700019321 839706882 978140963 980171245 489616428 605464002 488058962 745375467 175822915 896377240 900430299 987432350 226391561 963348835 161000445 464860198 12198476 271464772 433734737 904312918 534672231 663648078 483743493 890131155 728615034 911066630 826293495 985503056 361097191 852902461 65567568 343888265 120289631 794429692 725981747 975682087 228282727 824485304 661597789 980596278 608504080 967971987 247732150 459565811 811305944 904982615 918703565 957121458 649900865 687252819 544497508 693014665 192836702 383610598 376675411 759164065 807329241 813112264 728968219 788550381 712843068 722064563 225213418 619076199 367958995 378182918 805777136 988462524 463853780 602596275 95369139 626814637 669903907 830841491 968473087 998523887 811089673 975042442 724499424 956034029 707324487 877643758 308050624 346154506 79875654 480548799 852209203 871983918 172127431 349904819 496742373 507230645 35279615 238200571 749950492 801157969 794901932 843680272 823770657 869307476 828345954 834249099 523894726 997353494 319059232 471517310 233797448 993269894 922369260 925970673 576222800 979423870 133708370 471535483 19354563 653411606 866044665 929110751 929403553 967684854 982160034 988058907 598508682 678953893 923389089 993418784 863897118 950301808 807557369 872163321 961560694 968135962 655634795 878040024 325194663 326139536 904953658 943245275 785756159 919260844 509479987 683972596 276821338 730802458 822554179 857221167 613561408 664821400 276175012 330689715 651126104 845693753 737448240 743983899 845986296 950898349 532110040 592816857 26048075 54248622 220675370 850055395 135499822 162888624 945533601 977826746 927172810 943605729 524171846 709406580 986165641 990610165 538948049 729830776 480283469 576069569 386284100 724041245 246610383 430125454 263224881 558832847 225791197 896294801 241844625 823083426 649811086 770803002 715050692 843546424 804769355 885652515 203364273 497676060 50717759 510663420 506910727 842570088 387318267 721200852 57210283 558481003 421851339 786531449 444030481 614944578 543296149 992505606 309058401 668233872 496061989 780426537 474605581 780063349 123126955 685895654 221395676 951792233 406024660 793300678 225727013 732010763 692961717 938815914 364324820 536089213 962050779 997403000 515487929 847014777 725330626 733355183 413730307 576851222 568752945 849470206 592490157 753721156 196796292 388019769 214562847 602750523 511294300 878354634 902101923 947098825 128977108 481801571 467045115 628467367 873641046 940550151 16477801 719800978 936943879 938680819 191945413 312665058 263180748 517598284 776335161 939896102 165428072 346065107 639414998 938472674 676634630 756396743 274483150 684985802 868628428 926974799 825282338 857705860 518435956 566218011 147069285 281921843 21741533 374202134 980319900 981530119 443204849 670314502 80341171 925923153 515353631 537064489 541096349 741860379 788819250 951681686 857706027 860166616 872204505 959783641 352907199 725072182 135970297 981220105 857893428 873030411 549758364 568556050 384931117 730590356 493610404 729897057 126924310 372614997 955922281 966371679 663809302 862832394 298700787 739926304 382187175 484493326 233566164 824511616 360803918 458834355 225868253 268217676 347883625 945213438 904889152 940863229 463395025 793147370 997906260 998956937 758314475 778447809 334915225 525473021 183724167 623729877 183005027 993714110 835905335 928698357 279824371 785189497 576132016 612872470 7513442 83274970 570254568 626056907 104410113 182710867 420995980 536746578 504633010 725844039 13038870 158233895 319644222 836987720 694562715 883994383 986678320 989192732 453905920 737749991 730149550 771264288 689821210 750802410 982776587 989112952 654224646 668626282 133119341 515074417 105834504 969713324 468590927 557358373 628153268 666987563 690368164 983064795 300012809 901757579 511794328 822679056 632972014 922238122 225486518 737651877 213863182 562327948 208168965 704802872 866360111 895279181 699489489 963345200 545821608 946075867 841064825 869567816 843250111 903945362 38329047 130014455 874295828 929281117 175971808 498085800 314731596 938667866 504248226 993751319 45513654 995347692 825646624 970003764 734144376 816512389 351180921 689840264 863820721 894943476 134190524 710859265 810168638 963579091 518771656 929015887 742915567 749696797 306332741 603058212 203696740 619780602 208824333 924518705 843032980 985108350 575988569 704705316 390562855 583819268 936540879 950717533 864442871 941102608 99508266 339942203 932217330 947211023 43824029 663576309 117706265 805762722 904278216 919377010 327886499 992560979 170571757 871831046 266728343 293004619 466416401 783732238 278344199 385747405 514035259 665223355 3966798 332236422 131860177 318002642 950925117 965177348 23749848 226268909 921387893 987711138 28936503 879146472 516482107 920880601 31382744 649772418 836950508 923893549 636409543 676148009 89685297 911416776 318178405 498606100 72560218 509494306 77905992 533889768 295311624 758831988 65476424 520165197 462359154 786715486 198296611 575204801 937668953 986965348 124790459 600723713 979910412 991826286 632160494 729495156 978015373 981189649 687204842 762793234 697228022 767656998 351010812 462016748 351731534 816313222 662352062 725354134 422243327 903192941 694203934 933761992 43136697 345309875 902771428 921078875 57496859 582331028 903762198 974230477 226972798 312111230 462711395 869330001 506536259 923467870 527614125 904878876 954165228 995271114 20877976 119885739 54497799 545160807 85829224 969462255 142530008 889703049 740808926 971207531 956175275 975115447 654728653 754710437 748490452 930188179 207860948 432131247 675613534 944302444 386067722 487914770 239754663 587567830 824709058 903511482 432736902 979857454 597877055 778553833 33790102 351271091 865671729 994089691 146924084 569003530 936552884 960008047 50126388 305345492 267831140 770589055 254237739 320817915 57751615 165972357 707140842 854856004 619816087 826930884 670347999 853380966 39239261 503026092 671341372 869986697 707348544 784273657 26694244 818727474 901081612 919052730 103758007 145465238 152909640 702299918 649529456 698101051 763661087 941877373 60435604 239502686 598296103 864494197 651834857 772207573 634374454 643833837 40808961 412453870 65600652 856225117 239648392 683403999 822014085 831845417 686315945 899748585 974458317 975334175 783873857 860453924 808824151 949743240 9905667 898724486 665667123 920321032 350638787 886931263 263370363 678772375 661413330 663904843 295212129 417506476 236313753 732605829 600193675 685643401 509415003 570112620 716339134 939335295 936328089 977467189 838749313 939133885 577626563 938423858 494842109 916533767 340127722 803454348 353877784 579158049 581330930 704054310 636714743 834879842 377138 368133449 104420909 222079261 489375439 512421118 714270017 772196062 341569964 569906819 172297582 873887580 335863325 545349397 585031252 874916006 213865200 548531288 611777504 835589895 733811030 807835187 195341626 953489428 359651212 849788414 271904612 350883995 399047798 685475477 434873996 958389324 315272702 608953611 704407217 872832611 81959614 442949905 993202388 997753279 315529273 584880734 902103822 945726322 422139166 847096014 548534455 887557032 188182777 903975474 764699532 950590887 186389434 278204765 176055037 629999232 720165128 724057512 98804058 194470715 972346071 992412528 829088211 910093586 269649551 478704378 363983593 459679358 431349907 813368330 577006777 926761615 616026217 951510558 624019068 648886073 580720012 954906545 919585208 921614984 58268214 160517777 120637141 921252968 859672527 898155907 348328186 439062114 899747159 946775128 228034902 725701504 95237675 566819468 168143580 480696890 867034225 921692517 874690337 958207768 362714185 477608102 95193282 197608582 12468463 629423856 431543031 974442781 528984822 911645253 366633110 456028549 921709857 946442583 808555906 926955001 467745962 813427316 206118494 540908819 578827327 901163761 949163787 961641513 721515979 941548905 918861178 938458977 35299828 525611013 414851839 888056310 450653844 541952165 315660578 613720916 288034447 715124486 408388661 533058307 678143114 979378025 15676348 579763665 591365263 799970809 236095962 487442952 104297801 230470228 425353210 899538859 197491573 449195647 539034894 826572298 140009631 581665998 161012910 822867258 999138600 999184064 530517640 689107528 312718052 444791758 347180823 714350692 332591342 762166368 719632282 773638524 766391407 948949832 717726014 874515746 7995197 194557923 64737766 134483717 43914089 528240398 57329808 951482512 41336660 976953588 984001335 984714780 549090631 861619555 865321367 952289820 997630520 998967137 628481984 883962824 705200535 884226995 335068301 808474624 14360620 613961857 559991857 816608873 416804356 454173200 352439261 460235476 885492367 975633065 836019395 839498990 888004677 924386190 796076398 844695711 848853817 871017464 896264677 901619086 832174805 910638552 169231181 764558859 674808593 732687680 780609055 944092409 103498227 628506500 495815593 954014891 349728131 698925671 126594743 731202755 137372464 845791789 363542658 682343745 555321236 767955379 960502059 963235661 211307488 406794831 491860234 641027339 739806513 889730773 481464000 825932256 442760082 813124217 333127621 526588865 378229332 400601844 912591520 927308886 312974308 361190295 468407234 586518805 110559312 135838524 789816668 992792049 919571309 950576234 948365082 998303832 430109171 469464499 407554959 742131861 698912679 791831558 787178453 883235240 416833194 713302161 490145163 972822068 97500026 240062441 922861188 967368856 672616098 893296313 772374126 935493046 910758073 956276955 119093459 744101863 469818196 887959223 631835857 736113164 822404763 941628779 872663037 919801691 211540859 303086188 540205693 547967021 614646815 826791611 888452900 915869096 315791220 650644875 72180362 606647035 64406548 519551913 580297327 723305303 313847663 344499592 95460000 990990254 537645226 655294322 31749760 729121245 51918396 895583874 932669979 945152196 359449819 948360393 151337467 967460477 604327023 974161330 649213245 661368077 901941888 994020540 703843018 923783423 938963587 947674884 482083316 697239247 365404812 459630014 523089599 864564979 389442918 748066870 968837906 973587645 763277766 821713302 934342806 975226914 630074286 792068434 254702533 694807515 594726607 824279153 815010054 941663273 167579717 524230923 708858155 747290840 408489681 413436239 709065255 968166141 334151886 416300483 315554681 888735732 144338979 563326831 545644516 975378850 23572579 962480761 451341417 764369743 285207076 700191213 70697687 503910685 667648596 967744452 864370993 918013660 44624398 491379782 310998235 572108754 659845201 794581252 520255387 684502875 1968415 26848431 829839181 837736844 430496325 909898356 516854102 947640752 566697322 734769074 597935610 606438959 506449421 952615723 467002189 994667876 461204130 611730290 635684919 940505908 236138490 531348420 794068996 973875060 542940398 860410398 979635903 982911855 253951526 669974080 381226749 693135208 800253099 914531777 432098819 978563425 72819863 771152585 162786982 781847508 308471589 462974809 488634801 964659238 246216441 435707623 532000305 868573051 401900247 881073920 566007673 908558275 820186238 979881147 768185185 989862174 942696915 982172327 595188538 638224865 407767793 616741621 639933166 656055341 640636160 740848719 381726433 420003712 667222690 901911591 235630698 986325245 799970458 998285961 281049399 956681305 192737852 781032246 563306108 777183719 528489963 813190572 468861345 848934734 765902189 905657943 342937957 389352891 339154962 725783840 740554769 927332527 888295951 903751695 78763308 440909005 353554900 476845774 980002198 980177718 266056833 717295473 393205831 694401832 190738859 879778871 956353888 990698283 672421216 786986181 877070704 932813069 437563599 597024428 515109961 664133125 481650600 996729440 39508516 425569348 233837479 822239902 91284112 762159792 150763106 960500954 335175733 373608788 192248316 334066253 109505123 964191808 493214442 624353861 508193825 756479630 71201749 778535900 471985298 991479093 633006238 918045391 85513454 665282068 280804863 719856738 485164933 791277255 866224064 922989235 180605568 909491411 679021246 859635677 855012496 929317971 856294264 863235197 978539478 996183895 889579959 919256174 485641526 541388031 756314229 811015393 58990719 361772689 442419991 765437269 8652189 40302393 998919543 999118741 968209785 996113748 871055861 911462891 144263736 243806875 316925345 416989891 585584623 640602056 849512372 893480105 683103435 879110967 888211582 930156614 789503278 858626449 555252496 641652968 665337638 851935161 15464186 201227989 233311008 293375702 111775260 895569623 98095101 979537650 403923542 723284542 211212879 452742696 727158611 959837991 378192998 883073673 566166548 569939212 890805740 903941326 693177655 730881703 256565453 906082970 212531869 725062770 250435879 583991326 756605622 956184699 782691888 863530385 774812566 906959577 897360712 974045513 600922108 959692378 439019813 821517676 113544376 655132593 905890215 962038387 945742478 975394507 305380677 649862052 12637942 196298279 703245949 909336407 94787054 804220523 776860614 792928577 687894251 707884499 154112152 567370432 74045148 916484104 465301060 850542824 389451306 484093798 234351475 761287672 743813112 789022171 486853175 581938109 510997178 706546912 407145598 618483529 267510687 733260303 457727116 606438467 655799468 824063463 583933093 743926895 508170586 776373512 341544110 413737376 80631080 659358357 274873825 850558116 527222545 929018330 722211915 878282162 909666629 963402990 15971899 366504320 333953945 494373906 165820414 391324163 784156786 970180646 10901764 973199806 967930469 988293641 436728474 501893663 961685197 992949870 369230031 964583912 386570975 707698363 722920411 826605429 468123576 577787820 810074290 964033245 739648248 854804708 749399944 919576615 502251947 579114415 64203060 73572906 757568306 814130023 232024098 829265609 329486490 587051451 274775332 580907172 454968608 908390677 838573259 965112483 243832498 618590333 736894130 758202824 656657300 672475331 38634315 950476970 536764549 889050963 230347147 709148564 540748973 927980929 228865329 322086565 937663688 982113287 584677867 703258735 556553601 637891106 28367390 682883954 498493034 815742228 543379223 928805699 405550278 459783022 437084884 577947906 503913556 922663676 246597277 544982924 78860777 961911448 932046417 937938095 865552534 994388092 948968184 969612728 853641695 899585384 940640959 982321884 467342327 878332173 872275764 889588345 835750838 942019903 71730922 186328720 317828460 851646570 517951869 669564773 49235905 800396122 757252432 863991047 385928116 475538797 600855441 809828083 291945745 718619890 146882334 783292061 198871630 374208269 847912478 923419328 722782370 905216931 382230497 886719259 314061586 379390885 296922223 930064964 165433611 947091299 532210533 781516201 675159007 697215334 609078358 743135542 99114043 982657027 867012376 978520838 788325135 911468599 575334399 801113442 747159772 922942308 192893869 575322412 368395979 604944231 32867826 159287982 2811153 757791404 341508488 398132339 568566481 697253097 368805108 453210838 626504031 871107204 774733766 903802888 543370500 713991356 165836236 423493367 366641112 915600840 171091069 435850472 651884470 687721004 594547049 989324262 804665107 837759682 702601209 956010218 769952494 854133075 994162903 994542983 407517700 938191241 448211838 845271575 503884688 927491648 469429972 611695980 655427753 808273391 15025429 901273330 5619790 125249944 763981658 809281740 902754137 939230972 446832635 710398626 626773020 770606429 106025962 848410931 57230225 81873248 593582665 859793241 888221051 968672172 675406201 926223948 744909543 976535653 199454307 421435814 632555534 992312411 686750585 865340398 418579363 718720684 90939708 516118135 547188775 719837924 984623118 996260307 33070236 153441384 493727380 605388149 734510281 764379860 852161813 882281812 314214916 912826856 109904160 517224303 368305378 859320441 489035055 923836367 557442294 791097507 289278585 593380331 29864502 426081409 629785230 995146031 869500355 954867736 474833955 576874068 610394023 703360652 743401291 933369824 719210330 760254114 682511084 868454022 511961702 643261420 90212055 848148531 703572698 907476053 898775995 989921605 599484977 655540902 892350046 915063471 928882452 989662926 91738673 341212194 573192832 684159659 359069191 892825456 91711342 177322052 26543504 848222607 881137147 974187874 337663554 873841359 417229335 598910449 656425640 685068674 717827887 867101043 219340457 556909063 882449639 924987391 457540355 538639738 565007317 984375305 832565150 907232649 427731659 459352470 386650040 577253530 321009016 927611183 455310730 904689282 251078277 296238315 250323422 852596692 69761818 256553717 364757986 856358695 535733848 683085661 728283100 851104999 128880533 350179221 595997404 702445964 336171781 871959450 61313502 237247457 599322584 748219180 862373173 966425254 807992574 903402111 783909342 829466130 863582762 984801895 548747076 839300476 587361527 982057838 413490629 511949471 202666382 699140799 134018509 877389340 915020338 933515205 984809790 989646376 338574543 750375580 74535241 935566375 204667142 710725522 399931840 779551362 944076121 973179804 569808068 787273891 156653617 957150339 423950572 484362895 542680460 759343067 524074572 697132430 6756571 531434574 644284368 818420240 423147017 701515967 265434469 322790821 210417760 265769221 235406520 598495768 385045225 620258460 846579750 897789444 696618666 799482961 104583203 862818712 172864370 437980879 449651558 654486148 736143660 967619389 225138778 370753327 144895280 881892973 663996789 967240674 614883382 881101351 411339950 914784972 698762063 987564108 503345889 696534329 272079019 959506783 551939816 593181973 369739600 397996303 889880946 896373770 289365997 933026217 200268920 701420037 440870136 581157365 564967041 621615752 342883784 403437716 468360758 832413995 975384659 980842155 751731625 823518307 134311159 601514364 770167349 911470908 603498106 989451148 739692549 930878594 675335007 827757064 143150995 556808540 646645237 991771510 62667828 764368598 424304647 738350466 489343111 751463705 281868711 364156587 534547404 992067664 2532262 336021789 858189094 936676464 176950941 233877280 395956056 469438117 272253411 357338001 28698194 275333682 276159289 955097109 155900890 904695982 201886305 701640981 93517497 333843989 543818480 804936422 259180199 755363033 421519326 951551397 49036316 347882470 297339347 564831707 936651257 941882094 560617855 825491088 65483850 288098266 960633452 976831910 829847139 924948298 380180424 924756634 212119592 514267673 128864668 187262137 521077317 957213359 457947652 876479383 305151721 424577020 530086040 653751690 705736365 803535401 987839644 997368199 702836285 750625165 483195013 647266900 453174681 900409359 597865576 774964424 75327098 183789857 689770002 715607319 733983096 942657352 156519245 600411179 831518695 976502481 668800713 957082836 372090605 741788303 196797678 214253952 49155670 775212124 934566830 972103080 784088080 825882307 522422421 660502295 856392310 872820428 447861183 914856729 29900954 763153417 194295882 866106106 366025639 472406104 243907591 255101031 978733120 981795856 110987413 307678274 155085718 595449950 259295084 384076039 342325373 531036774 316946892 412441266 628171051 646698839 596086479 699800736 435147186 907250039 350144481 778698660 981201190 982131065 823815962 993301298 693538759 931762512 221629898 980516950 754903186 885829986 865389764 897480990 74814838 110752507 547523941 741128843 792418235 982374563 61468565 619860668 907571670 961103097 970272405 984592692 56225562 285830951 321786477 610792254 678373687 775114159 419689830 734815830 554410127 973315355 750487199 923241817 506706817 522602256 781988914 825387571 984717167 989858891 364898241 574053615 758201445 940194630 762569554 930015075 702053139 795115982 914605611 949296463 26035057 462622849 256464498 557547856 580490152 920245025 742560550 877059889 239235815 630995839 768031791 946806788 739384623 779750468 899685703 925087474 740549972 955931466 749021428 960663274 625803831 758874039 207007810 886166649 269797208 970178713 584751435 889083797 974470721 987145309 59790476 793795963 717729841 910146106 81708390 323762319 581049394 639597434 917547970 972626527 976019980 999242460 562018229 821031535 422125672 776669104 464768615 541765065 711745291 732954252 299477665 702391962 888966902 914675365 126339414 422762251 483907078 541369023 186651112 532422985 241722901 672998504 884086522 953406694 206568345 328383805 673563136 830060060 701885815 738769985 809390079 922086801 992435069 994081833 846774059 910740515 610245161 778144581 111457631 562817945 329805792 797512347 719372115 791234690 202436245 580697942 196703757 675716960 193841411 218002483 110895146 520103337 611731045 886657292 986426085 992212901 920773642 990704718 202690488 400706955 64204388 283900374 944582516 984997605 977430291 989746586 531571273 661214381 658486636 972105319 183703370 698597377 65201200 968922523 933136035 966500684 287472167 588662230 534041830 640855978 169703578 355582781 145231020 258022821 11360655 918454404 717356669 970930396 249536575 811180964 461770924 866558525 737427930 971974119 924536629 949056877 664748852 755072855 938309113 993182762 455320619 615705914 733401221 805274751 330095092 783623573 983834864 991445113 74797228 737803139 249325718 492501950 649013267 875308533 740814860 803224129 138452787 919179078 431973253 734570617 587873874 729049197 267002534 669990629 13706286 207443195 424587984 450679852 519891494 868119821 339167153 538872694 651200982 720993057 400853295 547854643 592198678 851315901 689290188 860691177 397893358 616461189 236346 35844455 308533562 573511330 444350930 490139998 439393754 702252587 262305804 729684001 276694502 542824914 213450790 500110534 736138848 971715869 703207611 927265509 6353798 784474087 638077104 859379771 837158789 926640362 319379669 765018693 202389310 687396832 11409003 315593932 941205784 984577667 767603358 882394087 926160747 955346712 879238556 981303705 915165068 930473179 211014061 811325778 532030281 734688586 568240934 756170033 201845967 675240793 915144959 963621657 400591294 779820749 129468915 908600710 589500859 839734651 160923421 493229033 793003963 810515878 13077209 544420985 506495217 647114216 129542703 147249116 626869297 837888363 109463747 696498172 309592212 694536127 102564831 985902710 653911087 670242926 996617641 997723746 829532504 852236355 192793315 515845543 686023382 905898657 79596452 276319023 359796480 938403542 232364793 814059533 904666818 974796997 404488633 702420849 791010912 948341324 91149389 479486634 521440853 749729101 367903716 783851445 162411574 583934207 891522365 948539005 94258568 960558369 866197414 915180364 516354228 746063842 410828150 868521333 45951361 286493228 785817997 929424085 116911384 598556337 830589810 988160801 946417419 979804805 510339860 997623422 55435873 607283856 285071353 569125571 161419961 240368577 868877148 979020099 777270704 826773256 402828859 985743047 506801524 594247717 278640582 749615689 597464462 828443287 414532537 935792350 55046622 949920516 206986459 465508329 272355059 729864749 24197659 826164230 238308632 663365720 705932299 995518318 815210622 887666225 643733514 692080143 275187451 831609460 475317421 779954874 149516043 745338034 813895418 978121365 417768967 696102994 413554472 484972692 714069151 948775098 165811218 239619202 326278444 965267232 219564011 483807087 591033857 743800532 895420661 990275714 672835896 948939385 76081073 632561860 21622094 980130385 215195542 722338465 949337352 998110767 37238617 993358922 194974163 812766402 736729642 967743369 826492410 973664487 167737040 527207144 346791202 435858314 379054263 934558766 116350931 658891975 780238750 816703822 594378985 656167828 40365757 155478937 567091895 977973803 310520307 765613372 341714540 416694368 99669483 813284147 887870086 934156856 996739794 999071474 233725492 803997153 759174728 936063195 137661518 161596635 498642332 902312849 51782400 543754812 89427192 132080180 374151189 498611269 653239704 741090457 544340406 635975823 395672391 547423196 341138320 833776851 183636878 298066226 377360896 496240540 394025453 976269778 949561247 964506590 108823113 610121584 706953671 756022133 595025496 980145148 379446372 659190005 19086293 630925322 926919776 947305664 895446821 902364845 210521481 738283831 195146513 893849496 591571635 926508808 398286523 515734144 552660224 872405506 779812428 970238011 428205543 939219493 313409718 548240485 962766321 991234472 285392954 890704523 439960252 965880726 512625754 912468682 531859329 988948210 327332900 824504881 70009150 542014306 74094415 464845292 647123363 748561192 780470836 964317908 643379727 795991982 722882127 844695794 544911957 601780529 150834991 279781741 972967795 988808183 867402829 926310431 708690866 886220364 651444881 989053925 715512023 959325327 720363437 840710205 660108408 757737345 696908153 757164439 379089794 424073985 598342318 911872078 870043988 966403433 549317499 618797347 154527217 779847761 852342140 877068279 551486610 913910797 258807766 636736738 392271958 712186193 301401079 389308985 482146808 914642503 728416492 852554692 447229945 805799655 342020557 585199358 835949703 996829735 947413324 994730186 8135473 282724332 317059331 389531829 523802771 987783770 433949670 449283986 386598184 653570358 492878130 818455851 683179502 798790586 250900801 488235700 632978740 913585674 781618996 983353224 872305618 881092662 255331646 623360685 142249161 526052901 732147175 978596178 156211169 491211588 552504132 660128004 258896752 690434584 105986498 823206807 886832214 908150585 414935776 525558406 99357823 163177862 447870890 478033903 791731297 801589970 207167515 814907312 276161981 715080075 562108523 786158701 91072645 470390247 991828161 997091077 476231338 962867585 884173283 986804474 999293285 999349461 689703761 980925824 76179892 440786368 371559972 672249561 903136066 941454591 52782619 883895224 324560132 792737969 751512366 901234052 835902587 970671712 589838897 823631682 640767318 903631040 926917850 941190830 272198546 407989918 836208088 946991057 512492137 721261570 995549981 996779143 554257938 837622458 769288066 847330956 557680926 948975233 552068714 954732758 543209355 641292836 485926690 608907202 399338458 675705357 240160151 804272900 823484679 941243701 896545529 991842344 907398489 934353907 676016082 836291504 932314996 951712941 294974197 320780266 591402902 837818625 307290607 864805829 158906942 734495061 819368104 849447711 248811927 547190532 465577116 474003090 343879552 725580877 423964763 814308540 747736467 935882897 499053187 678145670 328010605 379156641 264470812 357784427 344585307 927316701 947048054 969503829 229951470 381899514 49336941 424934103 27028962 177838197 950989640 959092944 220802844 565014744 887487269 908728380 761448219 842673546 859297832 861587264 889049848 959645178 58894145 552213394 822654447 984415344 247206655 438004495 202290167 585739247 834996235 943133195 636249717 735399273 731538381 824242053 532228045 850886283 412630032 723916354 930971909 945218505 190633620 943712717 289235375 992866159 168703420 264706986 459992985 516398482 710969146 757384840 462834577 832270471 425246847 425993315 168778885 614697740 739845113 856359490 14507440 720789087 766210173 811306600 312305519 354802036 941961481 946029290 471373774 821266914 636447916 669774713 668224476 926153500 128146621 503681525 251028076 883565985 871310687 949495074 690853211 737036572 637293627 738024267 151416301 606092596 973339822 975028462 719918248 724709690 90191742 969076108 301625184 375224095 348978080 529517208 991749076 998049265 514011604 829555161 214789353 986791692 155063777 951593097 594798096 877386747 508346386 795706518 262638341 433325240 714334743 719765680 178906961 684271435 853977446 968299069 899697802 929711574 503291620 914002061 344191242 599037984 190994892 220797512 738895031 917048090 768839324 901083405 638401392 832421405 638228380 917430177 434594646 670761019 817001266 850236866 450851716 569643219 444339745 673620743 576195497 744514666 356628741 614452190 882581322 951770148 197879528 975891420 961998985 965583051 833031119 982256106 783377443 946083776 95111080 529688375 238796921 905522286 526952521 890889158 519732942 940786209 18830231 527006040 580082015 698071526 997116662 998057683 929703089 944921348 967647078 980224712 623364833 997389071 408057681 526615960 715813048 887554248 748844590 964537342 977487329 981985357 122922762 272489572 735756031 972316393 767562864 797500403 179955807 679451909 880761395 995117463 646865884 894488567 696015016 876291133 611091528 752112162 220011185 735266239 47395584 174233825 823587118 997776973 583356924 718832618 102806278 582134036 88004922 730526035 432664844 861489936 99089297 964995936 462274215 821973235 899200438 997504031 548341719 717200525 924071146 969313516 489159165 659779920 362034992 837256193 565435578 655478448 201747954 764800015 381469577 756157595 503178330 776578538 530694186 642622047 656126410 936189221 194457964 978971822 234295901 515093041 666434953 691444637 689412559 951878248 999391725 999391820 93171647 671617340 147865747 854848289 369885229 392787555 495661655 610067482 45438876 183651736 659026924 970702486 60393560 80924907 768462648 819458365 382448342 811175398 887030199 925341912 958948918 996362470 285711983 808060656 609090980 631285687 788915977 808931229 800929186 928294614 397724689 925787625 831529733 941952101 418619905 517255522 17562410 995717264 221450309 641109065 248728863 425710792 281679768 341118904 119344166 348067295 417631911 770500932 474856253 930702735 396513032 881908417 306613738 607853811 84269194 940811631 431298306 887697703 744604349 976471902 146839127 388890374 371462020 548332565 859808996 955626748 459932306 811530652 150387793 737850455 152141702 598675793 347757759 535411742 18188030 40995814 153757705 168515246 57689651 967228126 112252049 511677135 599552633 758323187 886371341 952246824 525925658 802703688 124145354 999269923 613803489 980102280 452785474 953476734 74831348 786949996 517005660 575036866 918716403 956792930 259916280 314426922 953031814 975987286 172529142 713236179 31280824 321127010 744450994 831483968 908634333 968355451 554671439 896660863 371677999 865748037 39948951 842000091 843950392 864461279 396892737 662401258 159533240 358560435 891875712 951799251 821673165 859224304 900667446 940739021 75515908 532180166 99068763 101900870 736768350 755468924 626498399 739036347 365812739 962066224 885055039 941198639 860658940 959459965 203921837 942011998 212894419 579742683 290222157 719840869 89475530 600888241 975089012 995406181 119811243 120397902 825109474 880092516 62262964 158230831 554100833 952892179 882353896 989650523 627095169 765544715 477073612 512964607 336822538 547664212 495443963 602853941 65367060 706251484 181369058 582236342 870038946 995330872 379318801 983893084 945280608 953275777 155567529 846808369 869574440 873588122 501142785 832163827 354506214 381085170 727630627 825359376 474052671 789543369 935010057 978466378 706779123 753859676 112307040 211702828 160760684 906659643 766034233 989635572 413239188 587464016 87216997 237529580 423816548 838836918 848744678 929716053 757595805 834915928 259775292 275535674 319750907 493091506 359176678 987576468 689899464 940334013 499598329 944335285 423120559 822985016 864728213 975152041 550530202 671077010 522466515 690555584 553422477 811987281 277827491 771025222 604094990 630612255 533697395 924618230 745337778 991961121 252438861 885103544 780007582 842918551 463487800 620712333 221755785 527002761 440140665 588286406 977783609 980891541 170611368 212856187 392276197 437251897 416812713 455911915 941908174 980892411 795231229 908386151 471007561 732964805 251229400 574640885 220990890 826384942 613801123 904292208 77341659 858436270 291838110 339722881 915948371 965269700 378458278 872469249 215096351 299370640 811607084 815355878 290960850 306115340 698125986 995226910 40046421 482813580 322086981 824548947 866620972 941721307 595716370 666826350 843849929 900077841 157842190 247064525 278522870 972880937 474315305 634502855 654664846 834523670 208891455 607698882 973166594 990852014 162008007 795523327 94037697 542522885 45420401 287893025 42103354 682283224 426998313 445345595 344888619 850371907 523706133 796433051 439439471 857089997 199725256 872346743 323789604 559260209 74445879 790579808 804347186 879902840 339964215 723572654 214553888 241317513 592203020 951358248 601052747 986722324 763061381 952987058 25581453 499237793 464768371 616674651 269516918 278511021 719104715 916104055 484068783 784172296 731679644 774188663 531390933 535576254 325508858 814088453 711259081 889429664 439291546 770601481 207088854 384238216 268216641 724190763 823258356 958295010 150338971 468645170 742041101 771974736 880045936 913724822 923322167 939294414 93375748 962843669 286200217 555800647 430108283 788207676 469853597 733355365 750307702 938501131 341548658 779699266 910155166 918948863 515933445 735307598 859937835 905554268 498285853 625247252 238866515 704802668 151645721 193620947 428330711 516677587 94799013 877082589 906744041 988943006 684136023 998768552 110440937 607181823 628184176 825215912 516659694 916024226 423649003 448083221 686744085 922951319 317934420 338991132 563561454 786401900 668435669 770731900 724842888 794724556 272313937 873155708 480623420 678560734 302985777 674886681 150184889 521644689 660186165 766185906 477297086 681600830 770103534 915596614 218799717 770169518 458963829 470430432 732717517 859884601 940187676 993905539 770497699 821000002 874061414 974667840 411861264 844039071 322871414 324549161 413981323 429977312 39565404 911542105 778923039 966185731 550663698 821729138 39897 795983066 676525462 710309301 860542188 947266802 809018827 841530012 647625189 701336708 474909482 819834436 238075924 468902877 789277617 894730076 396496640 706675429 587846359 782562632 334552658 445263043 822783396 877427213 34310875 858483466 801885596 827194849 983335936 996811878 820180034 934294976 419145553 498893945 79816972 106293020 649237215 810085570 716559909 754601168 714295066 804986462 159042383 962873621 879372308 940079812 874501594 942336035 491399574 542566775 77485605 382789750 221743518 306857574 690822648 904065660 558743952 931876431 509582846 636368889 451853859 837816687 840638064 857723569 223784013 997738441 939149887 975015485 391868410 949708016 921054168 927333345 780193095 938869182 407268000 734020432 824005011 910147379 512754762 537919198 482285034 959967534 233510089 632238264 966349875 972995946 233429515 267806602 179912139 439956808 706416331 708710290 610365158 948623814 154967841 184516781 788644348 994650320 736134940 832985659 943320898 996410237 235891041 841469642 550133267 613020387 311001214 731579756 111225873 314581092 121659409 612904686 439240574 911717947 900332954 984702100 504421076 644014268 506012495 635672044 409093621 605237811 836033943 913640468 265952427 947565510 602200922 655424081 921027666 994596796 216419471 304025154 266291845 861860143 994704297 995350185 344315237 852028476 644283244 837266752 707954291 864592021 391986773 573258030 709575498 958235864 816958076 827490242 740769884 764279678 229234687 939631360 682393902 757771074 729335896 904834007 41249257 877740419 947894500 969997296 344125621 548972136 795251965 884203326 391934888 889895001 90268268 154485560 18765638 846575142 945921951 983849603 656635064 850045865 190726264 192866220 297066348 904796442 515502089 631717911 442447809 478826086 617610792 765456008 307317302 396901600 467244641 759054819 82704183 586658621 21384595 231295303 733186659 895428166 614626705 815070038 708905514 932360010 646655102 650473991 474229166 585573855 648021970 779182885 64098913 393325444 491781404 996656426 403634041 616709079 774018962 980020863 690310974 839468994 497578331 563629998 37417209 702877263 352914249 396973382 396959016 631245624 939753644 996556259 237482329 834036279 96666982 810308359 550647135 564053165 547678029 872295434 832991218 976920122 639054528 813990098 513623798 844944596 150727659 495616456 806063750 822999553 732722666 890719969 984428621 992621666 108495099 325931905 773815950 784831033 294278107 986640019 699522144 970871409 508855101 848282423 596558163 796237540 756859123 827960234 29833747 654450483 373987530 509790623 15562024 349633013 451013084 586581259 630340328 682085654 37506387 647917165 746656402 895517758 609816341 834224227 515545502 639089242 760159862 886577303 744708910 894234639 919608779 987337407 143677239 477143187 733515240 834272151 824774826 865919940 181324061 469314335 644258201 664556189 896388207 933548029 45639719 132782401 225151436 515482098 121336136 965680196 383220671 727036414 453233325 696092288 703117985 814976942 124477485 137783996 8372800 85406572 764872961 917762893 266028931 533904561 569018369 638034306 446486714 579364947 501555540 938068471 827570165 891838368 766937041 916096077 391234066 891530061 455771990 940623849 867338148 963061806 594517336 692139114 350116446 364268178 424318478 725789527 673643253 978762518 259587144 998346999 131026884 736640875 218628370 884200847 326290488 968825077 616716899 733329992 748645204 947730698 299310143 881897054 718007757 839163577 910718347 990646967 59953270 688670760 131876212 839365762 219446768 480130299 411346595 615640309 271811242 641638002 50903546 248716760 830324193 905391765 616368150 988749519 531552167 788092457 903777763 962662391 527565402 683491391 782781873 943595766 772300528 871483459 277661160 698195636 424463098 487428281 546172224 823123498 443097216 649362079 804894546 878788551 113665473 165994880 713297150 719680872 124397894 819891527 280562266 289829779 60107157 722420730 783629068 818569969 581960972 592951667 981073027 987771924 701609953 780980258 286561774 570046942 160441745 804771324 581554113 810767394 699393191 727725025 852343896 940202987 269244602 361338799 363560220 786735703 979368445 992695610 602077028 737275620 510621751 760410274 266354097 382899532 252539249 329478957 570929293 998981637 25274157 121806560 43064526 540757840 181359155 661986702 637398049 750660551 209088601 437454923 849081491 983059704 403899294 678601746 939277150 998039278 313977428 648612262 783113329 819195517 24875714 696446884 802537644 858772133 704821892 969439524 464444882 749914064 612805585 690014993 599584178 653476921 202614242 687315878 887032775 948890662 197433626 931236608 717356512 936990524 26903562 97195134 303101291 740189441 377190942 954794658 385287130 756272185 807084019 816486416 928744558 994482304 447847433 672669488 760733772 993259708 154706051 880375540 508640207 705984256 823984139 844952232 685148553 882144089 121705826 829594048 232581760 452986201 388710352 479507871 179780547 288396716 520049089 533321324 141484323 210814296 630235304 657457777 51134140 299914289 146741335 167663447 318527893 900027028 119758033 478874987 943780502 963904126 117967617 984121366 439888850 710708875 577765773 579405132 966171616 981046080 90863920 919123790 264904975 629411891 450460177 946421599 605328091 654887278 347445668 351052743 688734645 724747076 417782544 910788570 165519240 619843509 684164030 810561959 186540104 231706907 537131314 697057896 200819310 325287637 616196966 822957512 929551521 999171644 379401210 857275709 48250976 798376755 475005085 591901826 119437055 245798378 385031818 962300034 819935459 829410397 776980908 908187359 457425216 651474526 548644166 843992933 111205969 161861167 798239832 857157299 573285178 630140441 747929274 860647789 524662113 681191219 115788334 267798917 481625939 697647197 725843731 947093377 705283116 897944913 152098480 365551289 29265903 924403958 19219748 421567231 701008230 775189141 599597058 631413438 378828629 735375271 618701977 716907423 284534873 798193020 242448541 388568870 878225678 883391312 260890575 851967612 452521610 472027752 510541196 900364570 980622079 982203854 440405981 878569221 495628437 837444208 495729633 682635517 810104374 942524513 237919230 694493006 35526480 574124750 900471681 932452575 813581065 823184220 70029428 260729144 114961310 581651995 485165930 719644142 367579866 604671207 802787669 859284892 854874367 894174200 876237184 925753150 828342144 950734074 424033598 467587256 810564040 873378550 304124350 734641236 790620099 894231084 973594808 989896428 619741261 661441668 618954656 748131810 218129109 284962741 895173747 988176575 930917137 961603554 618779171 886353297 379654807 707540699 216943255 574499902 542215962 806231871 227719016 539041589 760493829 858220269 90530741 140543629 208837304 932598938 264217897 836112220 927643052 955713529 910965595 924981292 739111489 744304812 202073845 823161484 53909820 607885920 590310070 959425836 881422721 963568837 954507525 977867589 586768455 861968082 694475459 985677666 934774596 969348176 208312369 713826531 217118363 919796727 638809160 739091990 918629072 921618938 969875398 995470325 110250183 877125028 482296285 883366477 515740258 575108993 981869895 991913502 998212040 998949216 998817393 999275990 307651881 433326916 363082465 509095010 112981533 135478931 225093919 835188375 311637840 988753618 245723033 475685569 308754144 551405152 9671748 549303516 23551591 249578416 862473928 912948117 840907529 930008924 632494597 964485956 111559543 766986478 281894265 542937330 207306069 774551087 91033457 586316037 61901417 825811089 717511145 917998754 513954244 808920583 191004821 687898132 122123069 952323065 381630861 707280941 640015866 717952564 985632383 998559110 640146720 875444476 352875154 652243126 395131085 780953537 716723562 936642484 515529444 921623862 53127407 890903957 486473286 488806241 820462818 883540683 688904628 880743958 714811006 987203723 779327430 818241893 372105572 818315826 218215566 468710019 59685829 724400754 95066708 953129889 934652779 986759885 89735983 142456957 125866444 962060448 246489630 691715785 286272224 409245346 452584763 969110278 763152087 889371458 810318429 932383958 202463509 470982109 400348790 815070209 535672935 982309301 78333557 272946891 214602060 318416073 187431903 644647193 790928586 960693759 60572465 134644364 384743113 748166715 501662255 577254870 916530869 987692853 893557969 984091240 586146419 911866509 582966658 692051631 759092846 913004606 323120713 595496754 9620381 557942534 439782979 799684686 172795425 731769671 414968025 932106904 2948240 620192756 187087675 783565505 218131539 223155079 870342370 896670515 781965278 930019581 49910778 620005729 484094682 811531627 638491860 668658777 556187266 995003299 737991968 826867060 841683144 902046934 864587286 897484708 728447998 797544514 877795322 981409821 344717393 613689714 15796116 178140711 848204637 877730069 168996919 992232125 650218175 809065659 530716766 952972421 432483337 598327374 826101373 859918641 585039677 762328838 659864213 989181593 623505503 673752317 43580707 121452936 714543405 807778723 358685988 406343519 626803803 828072206 745821642 825005474 973645710 994889056 556518098 597302041 915947370 932845375 528495239 754003012 267641225 792726191 209889212 577690946 147967173 167387836 654502273 761443478 250130129 661542022 138391318 191571811 390583222 871123910 640010318 902734059 164503041 410500388 347764394 658227041 104727952 711428375 270785833 752497227 218638035 861053755 145808345 945929201 877876026 980369602 779529456 868659427 757521156 880473056 81059019 136120640 710091630 776929109 338429681 525961704 59836535 693370657 986195931 986298011 260830489 579163658 116810661 794415009 481673075 824750970 392846068 523796782 679435713 702810759 760640418 795851575 520214639 982351651 720623673 906341714 435204526 882643902 270938151 619248474 27649115 829734470 428697282 509569196 975589104 990182369 640420685 715718862 661096546 986592106 567547238 746385581 564270850 753588609 421516153 916244124 777102729 822922731 4634870 664548269 914648262 957549045 470999771 985585532 290947986 319456679 562703455 969948419 446887668 968932515 758215242 890558953 445162345 638344927 320971621 856007029 523760960 704989963 617634447 764175697 496664614 672344035 388947072 949722177 407907122 965513304 474321883 714486540 538890129 603256853 978423507 983984995 538076798 745041970 486249758 586457991 248187276 713708627 559147908 878147208 69328370 310566944 606563146 716635667 145231584 562099653 553945547 940470495 555588926 714408552 197318164 559113824 440418661 820976282 809414181 835333601 247896960 776725148 124629841 853382999 56907328 281623048 800799014 835545874 297862217 694067064 385225057 393590799 151958009 411212823 699265492 739240516 956247019 996942282 559792699 644489656 112439100 433407309 512393247 956166476 497480363 787585307 609535310 923197559 672867880 892729924 992519403 994783882 794537234 915774399 327667064 845766795 514733085 753174663 92607418 180349802 759773416 812767723 153158216 655520549 892221217 903921123 877418360 942198223 875723614 964379766 417585445 826314225 643912866 841923607 590219086 679270601 231861948 540009084 232430959 445585462 597832982 734781156 336845469 627226560 273562423 350647618 515827650 591543223 402437123 451534482 109977351 494548022 960345006 980488850 320108197 752612065 515133533 725065816 561315022 714037611 102629843 352214960 776728382 970681671 758005911 975941022 67519364 637107451 850104491 901089371 721352087 874720748 104034951 137454081 421267276 808873687 226700334 492672966 347149065 771175194 95232064 653078074 749096964 916895486 109612473 161291245 551298741 798247741 805506615 822004508 891436622 984040927 525356283 871003384 846086678 887734874 77004401 733458335 541380552 720110659 512979131 866201951 123645720 930535500 547549186 838640338 106940008 459675832 142864748 193016107 45046033 725129140 384388146 699151153 759216628 876924075 238290114 316810986 301481936 336481243 473238358 723383838 84463214 451720368 791147524 858196324 931094909 994386580 315449299 390248722 530084740 971677349 81013423 170374286 569116788 969436658 850473659 986511613 812095032 974200749 119712364 380796656 816736784 852871114 288119154 623777525 890622606 946300658 613788645 748482138 95017081 373784500 784221701 869183728 5254577 930161209 682945059 887813787 108052021 116963586 302124015 469456783 924584496 946897111 2131518 451244315 46504109 511370335 355026435 442576895 930642806 934904184 414106255 466499124 867791183 980515963 247270125 284856109 406869698 709643870 567960052 870775665 379193141 873066118 843116556 971094232 678093956 689899538 8715196 33653274 662197482 815962370 273419099 875991960 428636646 593092213 370420046 816046708 506792708 669477644 290930728 478390240 570575700 608017537 619333090 665403612 67598581 843003026 584071804 643056447 508818850 586276792 60333639 462928966 659219126 853199852 932023151 984340079 796795634 830189503 678659424 925901453 358759323 373830573 726113217 742687933 789095018 972163371 913359756 993444872 637275249 868237637 817795631 950842738 794277308 966372523 24307351 487492438 656194648 889386977 169252274 292375345 441496182 930063824 288812574 605825546 451950232 944288754 405044858 783682938 813193869 831085970 217986688 767108001 248052666 696838638 511652166 948175716 609454117 968776315 343772289 498492745 413582064 739181643 115617651 561031486 818646011 908362631 117824627 922241536 486116436 783133827 238538064 289910793 479261596 535463672 391264777 829077871 734641181 944864708 46440108 879249685 229883587 411513865 377396190 763973262 359513141 502383320 469277148 676336691 801955672 820512109 596945048 952871729 136129500 510298329 231861422 282308464 664164145 676689819 419503974 776002422 915328747 935115908 583544139 950851695 455020202 682382090 509969240 817686454 736056892 938264458 117406944 636990154 770380097 814961873 145004561 401713323 295659260 860800130 201443858 583599722 74483332 575821208 292963910 849187788 3117601 63538702 873351879 942104008 423240357 933222292 797862515 936227584 412675214 722908265 507428524 908826116 876411650 994605052 948714912 976171519 925177354 943090614 362759455 742049193 716421292 982664530 223717857 390103912 781380896 781481599 657903345 820658574 838981370 949664006 973273721 992614656 937470853 960931845 467978096 784632627 337983910 969430396 671648144 907617699 937779067 945765893 821079562 947817459 332925681 936254885 517849408 685134895 273357112 707315144 551317841 834004907 350847037 608383261 271257149 731713913 386695907 842196466 178584245 877832530 601583087 882513357 887227380 989513226 945904895 954790995 852249924 859101608 10344808 701329246 424767229 568585481 291106217 422962493 527511981 953373570 12872865 923314795 124128059 214101075 963073915 975558718 575793833 675402063 404047933 606686567 890131752 985755084 670457667 748994934 647535793 920784945 365467162 681347781 182987616 743629694 568294181 997630054 768202495 948864707 720995646 784861250 43131953 445855739 884942262 890342056 756895313 896121339 868905021 975127647 389565475 865782389 396536386 484224615 299750060 332216134 444078209 757516191 907448288 992509975 358804067 794682946 614730634 642346829 906551117 933469626 794594284 820460064 301109781 580221165 804500657 884714507 414042292 644581316 245155454 580859161 651900786 653360757 810481097 965549088 295839343 649092356 150915772 394415106 735703465 832994977 127389002 848303386 715820385 856652854 942206525 998123628 914391002 972574400 566988162 773572523 376427108 423845063 163256009 694565167 2084295 271796331 298471405 354198629 320429683 777960985 612090662 815271777 357990472 534701936 789391423 920711529 792427820 942000369 905102542 970614400 179119436 758112808 512494999 640723162 445596723 601467231 765806351 888613747 865730870 976573823 165621982 555106784 667630784 823264800 358818393 870648164 972340000 986839619 488054452 778031488 247519305 483339014 376492221 788656390 908178677 993971288 930784412 990726996 756651029 798236197 635692384 869777907 376258083 804331125 366502243 604021939 588744798 884002011 778752996 898735360 241944408 719851560 963204427 970770309 387878934 732187552 697349728 853674599 60748145 862536186 749384833 880643821 842572581 878970166 566533810 766465867 15136399 83947835 981023914 997510996 69034087 934791520 195131466 883095540 807176982 921816804 153659546 948926254 466677060 730125139 904749795 947819901 97554107 481337230 330033972 818371504 87750001 683425775 428525405 804318319 477992832 532215186 481502414 594996424 919063762 982017359 900788149 940496644 310033827 783131921 53131420 360703864 551731885 878117420 908106300 961413020 936173090 944006454 958109346 961089519 473597390 557529109 471360391 617249724 823446553 966581348 455423785 681840415 423057413 732882233 61727898 813230707 410340173 878646905 537507784 794374014 962265227 987451925 316871153 355618741 420440538 526094983 235376813 592730479 368037835 406925942 724083705 736754632 76691850 881847415 572699046 984815871 713076845 970124053 646688504 840632946 900971801 914775508 273760767 880418774 566861827 942665362 183886814 314726292 680214879 693988350 566586496 892995164 859671253 902057934 167138168 696146414 690006661 957879236 230003003 548008532 32050476 430361791 9112946 958974169 246224769 664749346 861522925 876420063 328164758 341362486 489135920 834546839 567725491 998605003 571412839 680648347 507727244 625897546 770550420 989078441 930066907 951747315 131027512 907245784 667692770 720293553 768029491 931239951 321923348 961659231 586819262 620464498 746126585 955652275 504425439 677457961 464423591 473575072 6043210 736471950 660506492 862287701 423123032 601200958 969415597 998308695 173908344 819257914 121430028 283391394 82309351 94807071 645290864 855700529 365010074 932018754 9501115 270627850 27963966 52139180 592966889 865540678 283770762 739239403 740771779 874726886 624148305 905529260 434692725 476611929 3850892 848544843 619552151 711340167 772836978 825640670 276148195 975351767 414676753 957572092 323892027 731470429 219142663 504861580 627040904 688389337 824521410 907730451 945629300 990849146 370723556 824526837 688019879 741715049 871357350 930255054 189077085 705224416 409349254 714801845 608787956 913777642 832813932 924242612 956661756 999293571 691124112 752317590 114104725 468749602 931357132 995372822 706869610 960592900 424612313 684464444 444273905 905935774 594119975 811788441 635914078 808695369 34488315 220912983 330719129 698182616 341945236 550867617 605638472 693115833 788015496 807830894 249911101 426538926 709501252 938103451 464694674 509204158 152970916 679511643 234616099 324822162 827277736 981855348 231609578 450749765 81422909 918012023 992287523 995202250 878079001 965193887 436647383 785395066 12712048 874841328 221343612 492604313 111615058 355779162 501306514 773284890 391382441 535216735 966164528 994534148 167023982 602620698 523026665 741281298 209415548 715728025 363167802 857095804 943304159 944392422 273618474 429557499 514305010 686574654 131500636 605521176 774788677 973369863 956867597 966628810 200515242 977615360 936753519 992321596 907548018 909286289 440408783 696559353 408485949 868166805 665285847 862203771 463606386 931043976 917865440 963024046 103938223 794175050 665069259 867074351 252889995 602712209 584068984 865726263 638705654 972584315 617066566 780929111 675239193 984198439 399993964 743838810 266869601 385246874 805894158 871256197 379196934 583947993 210885272 824657791 572907776 671049300 934380627 946933993 587630274 757042084 905715257 971235482 323439320 386988939 366312731 711022487 370649324 443147214 712693271 759553275 134006842 163624219 27858689 760992829 696553851 721430480 636899367 651162584 768991588 783783756 820494132 958960146 703377409 725671883 25304889 557177586 579233785 697127526 931676114 967986327 947158524 977392791 463511681 810755102 815091050 899466445 430479370 918455628 574482933 966337847 477061460 786347620 938210996 962186552 240261074 830386735 951398399 965549643 580627612 864224293 968997150 970502845 124843350 611920529 555211930 936993120 850728827 915473634 31259584 780528005 718899159 774707136 45294723 496671804 31935987 970461173 811364279 917729108 944753484 958317026 362048271 930724193 608171150 618046060 31002852 150966752 967220333 977101305 6403992 712855174 456261221 862482412 781310266 805594072 786146376 993746186 416807731 730930769 78614546 971634210 118956847 151713926 76987932 452532295 743779191 971293356 216822159 625238631 451677886 902680768 691816697 981621816 794860996 867955895 370808025 831725369 305350035 905899775 557238614 735217090 661030736 971277117 741677045 757449059 422311548 588383150 668044565 674166886 472403361 855740270 714322927 731630264 820202040 905010023 832718128 922759237 33690863 116035457 637617596 847904010 596738412 604103702 159830529 771099906 946702549 999140410 921196351 961893548 58516919 455853832 39547166 684400402 778511684 793723757 598312756 874885970 160773535 238199888 180392553 468795271 258389972 340048768 850980703 871983944 392003251 481868759 521714325 700142487 664393928 896692799 130460455 843373440 590949758 811531034 862774670 947076202 86396971 325780760 19299410 801451575 659674116 739339223 885839042 995358640 520534389 749546770 509819234 841363527 350842426 723793236 939544110 958608977 396571275 726917360 347568369 546590979 618343898 790326563 536147331 553176190 932683749 963968826 561235336 806145359 748940334 969558201 984335086 988026710 806340367 845183799 985906889 994213373 20274198 704094466 733325092 746382424 152766370 390800639 348087956 452371567 795422177 978126904 961755151 978062049 606372426 997991716 124257451 854113913 569239506 997424248 530013347 988421381 899827087 956329524 150341294 974927001 174095409 783756509 169413671 975086087 529191586 883056554 72768325 359520054 122747655 374913416 380503932 554044884 31020593 934235946 583171110 849289089 613202806 699738171 898087728 917581475 573021577 883271874 814534651 999142244 565547170 869377540 188266781 475998683 148282237 377637858 89390018 728994581 690329303 713858716 84651806 772639518 371068797 758543650 753186266 782254599 331160472 919200574 249219735 316252932 232136326 328359405 986736109 987483421 619480269 795202172 645805317 896967827 778419700 973890905 197940894 554776923 60047578 192067028 592420707 638473500 217548256 518805400 69499203 909287266 83600013 675332053 82534109 623100700 220377480 322474612 444543229 596093629 353797112 830969516 742910532 980207320 613288575 823909590 430399146 991984208 306887086 479548903 780592112 991544395 346845402 760301279 338863411 676357150 762425882 769392270 151745794 930530010 870547731 985766369 837435142 870997179 262243883 708431820 228266177 272552436 362970550 891417474 241429749 357975435 861399350 901038302 324422652 932951835 740429240 894073826 788921054 828254630 134260692 203731882 466386649 564798687 507123858 954706634 688184722 903464978 604400645 780597717 662177458 972884817 149532488 500701896 200986632 897131526 276416966 990334859 708510306 893418515 651550864 812156556 282194232 981269104 523172061 891811308 832757359 851656527 209344441 339651961 939778330 968134618 490523437 677671934 954502052 962427656 100817408 250947398 917228936 927991770 927776168 956540765 394135179 412256870 820117058 832001270 179135669 661023733 843548914 973062871 411279230 492704859 628340215 896201811 52929321 91625760 647612995 981013385 51525394 166481253 275585341 596406003 228926065 921412057 198231801 209966394 441234569 992106485 95286279 668908865 144565024 580643727 596758509 994981300 483524754 679042880 386820088 435338452 246937044 780530021 749183348 883302593 662460062 686909064 616269981 623499447 532329296 840272715 259871124 423097348 359574308 606546989 650123481 909404685 375458519 449720292 753148212 864558773 691629654 946654548 44765180 691701358 234382224 321312079 598956581 603629805 777100268 961019351 43945359 400634761 293765300 893524482 573103432 893051661 919282121 979174355 812781181 816199093 435889526 629208256 669853255 974091703 731750284 896229445 762808923 952995242 132820030 306584613 77794549 659075742 123476411 289563395 571646286 996727014 742058624 913779844 73389807 832113250 81762039 682961616 496780524 899677399 299372714 956290024 547003475 755972303 517107974 970209642 648423090 950419422 308201748 557772224 806659730 872678250 613370800 929780682 563282779 677379006 452283420 844668205 456095367 467985175 398042358 829029608 867436892 935294756 344338429 986664527 555115428 907581724 810013605 973955527 807639360 964534828 782667273 959485258 808310398 872541679 126409964 588774804 889611558 892746600 902872453 986648850 300936601 953976494 444191929 610387418 179869537 894289623 458832029 746180358 395285359 404809228 882760090 901376113 679730654 819364868 793013743 940170344 330097843 842530762 523552723 690852438 173810967 485771224 850933000 910590017 847877030 864541146 419185322 784893479 490974211 846628244 216426660 940273250 574356430 579475880 846073132 892712193 210407768 960630410 64975903 124979419 242989070 749174148 223771457 328126728 832094422 865459529 148242779 973139397 988778419 992307499 807600883 911257830 604284090 765560341 79780287 154733157 98369642 517020761 52139659 847000280 755190301 884485913 379144742 882927818 849273198 888669478 827212357 840519901 262128545 475704954 474594287 631229401 388655345 794523111 526492473 832396040 992009578 997818674 460544612 929446482 405903444 955887721 426909660 623036797 74705435 355703585 628939584 716153692 113803130 318203859 931477255 996593992 600068026 847917642 841438970 886541831 463225993 621504563 158456110 497029509 407052195 415579964 32589160 160171270 760530289 988236081 815464051 880871360 409698635 745501895 808809023 915448446 779663017 805929966 382853670 571711374 74344244 531850646 975450719 994975059 269900762 434070537 838889490 927431021 302213543 925999002 968480581 993771070 796286883 866385188 620039143 862591573 924531673 942049680 143608455 639357660 990725861 992392541 73233431 589038104 440675375 743025260 75067725 302592506 703414831 939008223 944262359 984313180 126881308 688698956 409900409 782984752 157564775 743617020 196744691 470513906 451074289 975654365 455297081 817318540 907176182 942063342 359097907 762786809 325266152 924559906 708220539 945264336 12743437 244304006 214215979 792420326 831781248 851871218 783939276 958658758 626462758 754675098 340284800 545375522 198885208 594789340 185228885 190599461 407171630 701110854 963840691 994062017 847442673 929519978 140281199 183478708 372847864 930158766 329896172 618155954 366766591 839519945 366929931 706988254 847832761 980333752 235554601 252887811 245167727 849165401 337019494 764693287 758518968 804362925 399173692 918109543 41229809 232210251 19291554 217583711 614434296 973118574 767244544 971986768 955524468 991945359 953993308 961647604 461399148 861843740 903833957 981948739 249430276 697438552 50115441 383347724 356289738 891646656 965240976 975842668 953274148 994290759 68449533 447461589 824418368 928592981 219431150 884740482 247638856 777798403 905832706 979267382 60486521 396703069 435381285 689124580 296051449 572460366 768462059 803146568 321699609 562958856 753194782 977157095 587856667 788508418 295833415 608559340 619996218 729257671 529236030 838643723 459342521 556556606 323377934 675993876 387096345 898487791 139627020 313747028 165121873 894476929 719349655 928950732 935717255 961700616 136650724 763172880 103882572 806485318 146114729 519343661 228098202 876700338 60924302 581753015 868116215 914510631 862885456 892341390 597280847 929989207 212136732 556999814 567409249 606599981 661167143 863715768 961189385 998128991 802871188 923239528 563969059 905641539 315931859 802928256 601070634 724968206 805699789 974219364 494646710 759697669 602714818 950016823 433198755 745894838 134491719 456297235 741886741 875490252 35954303 377488036 517360371 917908156 916502319 963794654 111806964 240120862 432507841 838112945 874199371 911912429 511317009 899762223 127286929 477575053 401612577 623915554 768624286 967580855 633953421 894996503 601105636 859121149 440510473 557155410 568406576 751094971 328835798 462020754 702186278 842856044 969081921 993085037 917996738 923925822 914008025 992519394 283462572 851547764 54863237 232125302 315192961 630782207 113016686 240177078 821048578 834944660 428576094 543347816 451786000 826788587 371184260 930877490 108472215 397405078 438173506 701692794 46128342 74474028 988434693 998597217 651781961 946082153 634930178 932977697 409777458 783223765 494545430 744993021 744531908 807814150 682743101 965650115 317996316 620144906 538745696 665205972 741399731 822464773 553509071 563918667 371380487 449189883 302292865 601148569 541756863 838754896 584575315 866178005 89996273 658555201 221052295 542825781 604715343 698080815 526158619 858047651 627788187 924805960 142731980 569915530 583491288 985595079 328070506 509589286 800151125 900506387 88758792 253707585 29755309 832485176 267883192 738113565 674758884 777165567 133342779 261493797 605137176 730056739 500957897 655872019 175692526 706455680 16801652 380753830 34721491 535664702 404221758 407477534 226439464 664292109 31265791 754410894 195758444 450901995 926234588 933266690 884105400 901449439 184772173 702883295 980817165 992284787 250823067 719516821 816639928 980151352 945675060 972926891 801257608 947150563 481320280 655462382 223299526 526061969 404006717 434673210 205810098 378466995 393338720 606700305 439601113 686440161 531577517 645593125 840912621 924722735 255811522 668322261 965096592 993875103 992443018 992747403 514262842 788165965 988557618 992691130 74893789 877552204 196977381 746114749 695556690 789904293 261649425 728587056 107897829 949642337 537632018 731330309 510549443 859789049 761599802 955952705 155390029 607159509 292548673 674639656 246981967 575116107 580226548 945626572 83066685 746818740 426791734 699308031 527117131 609308451 828353089 882239881 722343645 766702702 543702541 667163921 431445852 854067369 575145434 750962030 331628489 565779096 251402887 938670324 402682388 610328587 211366941 278352419 246320382 929491931 275679626 613844443 391720617 458761812 493006411 952027362 369901770 771303232 943819789 973364761 146744112 888412606 113832953 871578120 990349429 994767373 526457722 799819316 465192169 538257564 663777943 768312475 656995045 805679736 518014660 735804444 549572580 862762662 264242747 693169018 345651947 566482864 203030833 607139413 389713110 832816230 384198316 771871356 66409776 250944314 28412939 521803835 663905149 846013837 704151037 782871382 279193192 592627798 805801639 994730057 560749692 993339764 420382918 440452035 688045684 908761500 730787924 805565682 909823201 947261845 599354488 931829133 906939079 931967402 904699508 974533322 483437540 981462749 242796800 581681401 472966960 502217088 43797309 102216925 668829500 771093291 428728088 866072049 276176190 630392505 654759657 881674600 115777079 568239066 242669777 517808524 527311720 607855316 262929168 665524135 750766229 761566481 67623459 586829992 115703360 479427076 623117681 958022044 910834554 983674527 641391229 694927800 344214873 770447515 295512197 884916045 693777274 745714619 661774653 680537528 557046794 907556345 873282053 925912977 597294338 775280983 692440839 904044884 213657940 839304271 950664305 956773699 109724563 536535421 332864020 642531173 242212473 701474814 825252764 914012184 397193147 952981858 363843341 832524194 29590313 707345031 888424173 944397412 260950104 509423773 475703138 518361641 496355328 703857985 587879919 617783693 858118082 922152414 302257339 336860756 514701710 911336013 843190887 941440013 183399134 850191396 521705888 931187245 942447257 970371241 154276465 820585528 574389801 960284772 104761007 417660733 635927491 930937203 962354149 983200377 589637467 749225194 530522472 928606026 356112587 387906707 986717928 987498746 807121855 954701601 835804115 888311235 358139359 831385026 305149449 944029311 984817153 992657279 490492696 975373237 639956841 923319888 306061251 990123500 72096320 242934077 310811799 325113684 223340930 656407249 396823485 810642402 166901809 167344707 657915361 982820262 739567439 997928446 820716256 876191804 524411345 668152817 385918030 775152293 58825498 663255802 966679169 975436038 361325403 555784543 997183355 997329559 603841471 953530189 794599672 879740557 916738107 951230642 278163782 508386545 902859096 991959568 834845704 985290651 643567148 735966457 28726353 308203508 696933043 908842375 541677118 766479119 367861231 992815025 142099312 941200796 328210728 646263626 734669175 790672169 518305447 917823467 420395784 794067195 688840023 952315935 121450137 288952788 880344126 990212675 797508807 831691198 368464146 963078113 311065697 445613204 508670837 717602898 302902135 440635121 279419538 345192073 668539739 721902268 166545814 344836077 735894516 973107051 581278980 616077331 984721406 994538706 492705645 938573692 888011585 993715191 867149071 921289445 906650844 907101345 745341304 994961478 109299912 665884727 813346276 947757603 822389058 936740174 910928438 931626332 910695642 944540656 465138460 702174852 496066898 635187237 23658152 168732920 361643512 851703078 670635282 950086177 25774580 615526995 453186006 755545823 720952189 779717259 440084350 910440188 179301460 842495914 161981457 220839907 302659490 322016685 15282374 739558996 204124364 662247207 895289045 997783658 79666630 393528716 853501785 890708083 371513421 661982377 663898751 721033773 367465269 968109809 890916337 983838082 90039157 981117235 103684900 458303874 414468594 682348702 738022234 796198040 27917592 56173553 994472577 994475719 513295412 515389160 651942013 919325716 992611798 998510116 169965718 517301706 727065740 926166500 572341672 919564504 295525351 648224044 810430783 947680265 551309371 940779756 75200896 513408481 709325251 833398831 953919399 997369552 208877658 592021740 162448687 489435022 379949135 628662876 673828734 821248181 966496147 979804970 920463392 972398066 866321480 952493421 146841274 793065154 180530570 981353062 260989915 590427179 986871280 987549269 552842114 576740878 282370363 384515700 784595248 897787284 732277213 953850032 604912634 785933496 922391036 934748492 879314744 913237951 493303672 894948633 838619858 955400592 82042858 272618481 463073701 708935954 147975800 342685031 707599855 799680898 316612411 660226907 744555992 807716168 964442901 976369735 209511952 300072469 46917389 372302591 911860526 985981084 943878830 996398269 659617679 936239160 33213291 375707790 252180817 802420922 581428488 852583223 939690186 995091445 217272803 484442656 477381100 506275353 533301223 809579275 249052995 716117490 369108412 649186986 21592071 94867607 203241978 457196976 240495963 845326686 620958494 861311811 976756363 994357566 400161795 609246914 804545600 821093159 425139405 592194219 188307648 876580851 438616628 756048354 633606483 834386135 561314594 717117071 752262140 963709310 807794169 893517350 917293771 991926437 502760392 900139181 141831999 475123314 834993919 975834510 126014961 813621113 67978081 122767037 307554383 364227577 755001251 823960017 298367288 368289190 421985589 510169817 626529109 679429897 734537712 869483415 748876695 818829653 9965393 856594087 226912465 376842522 990735748 996159781 580568813 872031031 615018758 977419905 601265399 921602927 547204458 845387644 232164749 724805422 625573584 899821725 361733794 787690996 446110885 859628058 440264097 854256191 442228543 828978292 101901458 979402270 698188370 960877994 588563711 617896537 954528902 959920821 964620973 980744121 739119089 907454782 781903287 960222221 570370533 789359268 702090621 879309008 41404001 444457961 624182314 779504569 382951153 882371490 388998718 490831923 591778841 806944701 103842252 366582722 101433728 895153611 82433666 452352170 669006941 679353368 849120641 873025482 410900294 748271937 261018176 437571400 681633727 774732723 105905861 486599941 876014003 913720985 439328450 868810711 911302429 968648087 195751836 230224732 748703432 780622331 930181574 984050469 23074847 912156197 886222161 980132067 509799067 627323797 812176594 907013968 316293957 535778799 94345531 570737456 370340624 939674812 510082031 673351345 340701084 536417744 375446924 961272636 66445780 95593468 90211736 291666428 324028873 485357531 88670778 662341379 664277287 866159989 866479719 887456810 998376325 998790880 764751878 993708071 394353490 531044586 60047724 386210389 466881116 836266652 387538637 686421621 831611517 955123362 846807950 910893982 232047524 908635153 103807683 604362195 715491626 837250869 192837787 966095996 970847801 986964915 634730511 950998533 85474513 383030732 129118619 884529066 226122924 634819608 977416654 985231550 823208749 959399298 398706554 901701557 636289300 735498361 512213700 867279730 563129324 967957907 853199626 880053875 306307071 594815036 681023072 854850158 414764034 642993949 170194083 733792124 896644644 925075160 691585535 899831319 156895305 469528894 241049255 484366292 425523802 892478721 766077934 811428733 679240599 815450804 951047441 993584042 490025977 888354155 886540017 902136349 392251009 919844121 200721651 963347995 379070101 955999207 544307808 936589684 413982673 920125344 45858777 225959298 924430252 964768300 137548515 221687345 122039574 185117256 844345674 950412063 527723195 583950936 51806187 364532256 192071482 458155944 652280098 790626739 943516994 951016207 622592980 643723523 684440103 986456707 741172519 927958562 113242892 636048788 447598236 927762157 987276650 994733312 576479131 815042309 926651867 927912759 920757997 970829536 770140719 830088308 528602083 747685670 865670150 909193079 709095999 741154068 630131610 835943995 887137598 921412500 678581129 765597974 404551023 715420381 416136239 467300246 620694979 671714057 24048223 331207738 716447277 752989286 361505574 682690794 273539949 553682796 571768900 751015725 690125794 896008789 646741423 798546225 688092914 980932213 369330652 794062747 453323665 556582550 562941294 885515265 330830783 334208220 929539840 942739462 597022167 662269022 393571473 952334303 724256285 917916966 508968640 636821492 449046030 880382104 883988665 893323403 171790597 660640277 243173687 254579718 454601860 911605511 884548803 974879601 268947373 617832325 103950882 897938834 325314075 478703229 458049629 778729363 616466304 657078699 548753855 583732077 13769760 341293512 428186382 791900114 335253796 458215690 474851256 984903557 579340513 929113284 905427110 909928972 142497969 753461468 75740943 499017048 403395324 425037907 401323570 591551999 864723908 969136232 148905400 449640524 446988777 800540580 323722729 449807854 286497680 799492647 805660652 991718094 788725615 958937518 193822110 660082327 229238498 669464440 314007248 927099254 197515280 893179711 92736552 872195554 692876961 799622226 220537483 649098926 960420720 969214028 941070542 976621259 313989023 545296636 454492859 783712077 95660772 673192763 668002041 749900206 660354186 718703066 412911487 910220041 884648441 908718021 610125140 697860879 44467735 789958551 904536937 917139643 802173108 989401095 190576315 214069010 579242550 905326055 331933719 393569597 561126749 741758459 509250046 950452467 210727821 535667988 442045630 987152200 996663998 997938453 474166425 869124996 743361572 764894054 152525618 813080672 35313008 760606955 359672945 732788314 438285078 820387631 72000377 828285188 504196003 719230162 185495586 967490816 437140899 576663196 817933071 893454764 132795257 985973056 655684159 850502303 775125293 832239860 713489760 748371984 786412651 844253805 558448072 698375617 887370783 926593752 152744421 314987147 743948748 918376931 928995964 973399783 123742593 615116859 524502448 782686468 295361218 767269017 40513887 295580567 437220799 893782776 989199658 994525880 359988806 454068486 890150059 939012472 665183583 729636411 653641153 672129038 566547279 912041287 957808604 992217840 515565954 873095517 770586098 964588137 411515041 807453237 486665322 865095699 363782405 847584594 910525035 933958813 863200565 935507469 777121387 781324318 901957421 940771249 309857795 911688536 85798957 132795247 783100249 978289553 780278393 816511705 6094034 895349970 331339771 986418849 590981148 800184446 75703980 944498137 236458467 763535065 419794246 860946154 10630836 383522749 834076146 866346913 552306693 965630554 603976989 999172041 225104793 871242830 566919741 614638792 348656479 884593362 716707730 855308451 21961587 696623524 760635526 921179598 813464891 911691358 170205920 657136405 816927865 985121134 54818483 787260021 669278415 717009948 289465889 354835749 832162026 961003470 20071822 310835650 104950587 656078304 348061563 530068961 84888508 258483979 758954261 875775911 958619680 979862098 215675400 494538621 847212595 880377654 970255058 976666257 108758015 444158888 360589761 733682147 186649828 476189461 720983670 811177295 199532542 306963844 249078788 496686184 823580916 997808611 310871206 471582215 193533018 545482924 952576454 987618003 41649685 226730892 241326313 819157466 9970591 431406431 943315830 987776028 27994407 834327380 551152688 636201641 329376533 351166678 131759805 864482413 991867671 995117749 646105344 669139545 943900588 973613834 93569508 284300371 210851117 337590966 962087328 992261484 618414881 941636331 905091178 927326982 383674964 502061668 70263197 501602449 304365365 468621584 834468024 955854380 10137677 753266012 162841374 928368667 473232020 570281431 210608886 736265213 169433389 709733022 946578328 957966919 437341463 895499939 711789336 968886836 685897315 723376992 791370399 892743067 948678747 967017438 118280462 582867825 452461701 849260914 549912388 902127081 348578418 615734670 296084682 731793865 796102468 827384871 917378806 950563732 4507678 859030011 466520930 981560616 877403703 954499037 932943815 939782360 7622253 757585418 881065296 982874685 206598974 685410611 97125867 428109781 652112596 681323359 717603713 900795891 904932079 986621563 135736765 568301646 490443040 623321943 569354215 947815789 884370176 920040808 313949203 518077004 875944427 931149451 20054538 744261535 515771626 599984718 191414895 678395700 535960633 824599863 300085817 384767589 673057431 923865823 298874723 779575317 117381016 824735272 724976353 870201162 536326684 642319329 193791546 394871820 411373922 490029455 275314478 703400185 792578896 881602218 507833077 873103080 29602712 746154329 264953639 337384905 798990127 971171447 5544697 510163924 136309521 137185629 930903695 978320155 9689916 659114673 447357055 797186667 498555345 881407955 59734870 685337460 236050282 240216988 795357778 827644806 215156584 861986593 517381121 700880147 362945534 798598236 76862383 523983807 96641117 548635367 261922467 412887416 538545028 736433662 962956516 973385423 340626672 733905266 485447696 933472195 342829234 516335037 895660339 956385176 817798355 946254310 158982981 399312197 379824465 862112674 953356750 965340031 465059766 716621519 527371785 729503133 716191157 798195091 888107901 988620303 219557121 591060894 545890123 621163142 904841742 935349283 114414957 802523655 361461205 614405681 554452746 836762460 766371202 785188977 297082788 410740449 355599444 419033014 674995707 952270785 942933813 950219463 40103323 258273115 745642515 968327004 943727082 961775460 70649273 866483332 396432018 481542021 864220673 905166301 450124328 967637696 429706194 604212705 314393766 446330250 529022666 614106339 432996574 524477324 923919809 994416775 54391436 849950330 975291052 981006071 963981851 994563025 579063140 867272079 282623150 420771652 463281446 486699608 259840254 888207757 492945026 936444685 92716986 665446824 204605408 754233895 812320071 860775470 864194413 920604867 130287253 963222963 462772492 473004129 143591277 766679703 241559510 642244950 135246943 612327926 220617269 267075103 449020963 794429732 194519567 508072254 164502279 285775089 529123092 952636242 66619843 657664073 526636748 914572211 408361756 583783130 672675349 963927747 87710507 635350653 117146028 931117396 774187870 919057484 882861596 884771706 80024383 802771449 124605811 437813855 352352418 783868966 5605816 844566368 230761139 545823906 511899738 534585134 614339114 681465566 654811181 973950900 747649052 889476933 209418426 803143650 862997882 943836786 272653859 634504876 157786205 215964578 917365566 996745979 853871679 999349068 42149890 691888268 948991808 977871677 238474806 982765369 342420168 521759980 216811196 803510927 992904257 995060689 62324042 512933542 719162310 745069397 327019082 403439041 207034842 679685010 173974442 355625763 996097957 997654975 260939467 933838140 85254103 785307408 701618973 980522218 453393119 770858837 687287891 812617469 104895330 146172212 649882545 653630099 86102859 201607443 202560704 370591394 292868396 561284097 90119538 471911227 168132447 950314509 976814255 987578114 193350895 637444780 777605416 867835206 570105338 647621756 51784603 350925076 373438176 851875317 214450166 702155410 985294379 988082410 933156892 942832515 897136202 994240938 151588366 695752047 700417195 929579754 732205451 930843274 577018545 640201246 961486837 972877006 851332500 876367221 991925947 997591093 341703908 567491847 791757746 990771906 510819199 975819334 404195885 545249363 640276937 959057402 305655956 969152806 384885516 871203043 478380332 653342832 909623074 951156578 218462439 964223962 853973389 894894481 604968121 749203853 815564408 996981199 426400401 759919813 157881262 534552910 468829219 849572198 762026837 960796765 234857232 237963731 451599886 877304133 988297192 990311982 665168264 795146555 874590242 910848976 327141606 613618450 67239549 709125699 594201782 888582401 49149488 245587575 76045795 247286058 253373897 920997114 666877687 775797007 47035051 50374762 386429954 684243487 744438227 769727886 709271056 963588922 759042581 989482045 452069603 487674580 109301945 475214956 388142659 732185691 601418859 945934530 942971057 971573144 868931993 878181266 303679159 407758830 376293107 629873778 256597831 696313754 555572313 675214490 471397233 564321480 298097939 744879053 486886823 750445050 993183418 998720582 990457771 993989358 533838313 595589684 63674007 679132999 486721354 500134172 963008021 965771491 691842763 975334841 410899258 635067254 294481245 953703659 362134078 420883641 543356178 858152439 94877078 806240801 112200914 536421007 77561426 189353955 354433207 794023368 865272753 909370635 417327365 835233727 256788652 454831099 119812187 664477558 332529104 384179274 491915983 682653680 825082631 931446649 854181343 920861655 646902073 753108798 93445843 163062153 266795445 317945306 210206837 908620363 293047820 324600206 355754656 762970143 408964832 690283508 997858719 997959355 263783119 804115481 311950395 961332948 946620280 956246928 226932968 542682010 620647634 725554056 327686686 877690562 850694216 907563980 377647451 454154193 579167918 966263686 377428348 765300375 771654071 813673495 15122627 82331572 165864938 834063411 395683650 712745491 518639510 558114446 930595426 979123785 397541191 573037121 130034210 691703077 318188944 360947221 849242485 887770636 645346184 783480190 377409585 807029959 863957364 913537296 702791 807562444 387061563 682915132 238039000 715789508 37961648 97739226 907063792 971707512 898587337 986161520 655916883 971993931 40219214 475895284 221704836 630764828 699526916 988533661 69233133 441813887 377307205 803412769 980364148 995082913 4476011 447372023 275610127 707859594 612406549 745297727 486990454 655217951 371845479 857869441 312578365 752260214 834041699 905776665 376308362 818853658 313149636 713093606 886563718 924770923 58494961 966147539 908010032 989209096 49589983 344623770 329096279 443451202 758725464 991627390 305633472 919965292 209927488 438324690 140626586 507159545 547860977 592246528 569687339 718463593 428547401 490264244 466584811 835946160 634844359 863317752 85296183 920018026 323414274 821034207 11660445 409630563 378639196 923978015 953223494 993477473 973325356 993253757 20512168 513067411 136791457 949110676 92814021 483066555 931992704 946770346 724591985 936554763 542362434 934098050 966529548 996963318 602866327 660852230 338112976 561810574 84313822 452711311 201372789 520572032 228451156 952499384 665856122 937883660 475277812 673503893 143398047 621455221 224345926 555473417 186629020 636139449 710030481 921916077 90811461 573104504 514366258 969275561 910357908 992239600 442736643 453913730 470251965 964650175 958335487 976912276 40564279 816070804 441887368 718287628 52411978 370205061 779847037 978565342 582350243 904986297 826026463 879199129 324909652 447430485 379840485 867503802 701456875 833866284 76102533 865271735 430855238 496840607 334452211 733487458 519070344 981154808 984328442 995949243 486533857 912150477 405211390 560126244 671460659 768796258 21621725 425507514 643736453 928161323 345484461 653898508 795616513 822932649 454699508 964999366 485405913 756374353 180692610 528678061 513153604 521866029 892192752 897612191 757709680 893166435 507449790 848414227 298711985 834635470 900855939 998662429 488794891 843416818 484410313 540845448 712294464 758750099 60754057 901476953 675258278 707510962 400186727 942222045 408178735 791620863 159986285 751434281 909337289 930403115 808170578 980960455 815479521 827226820 332859744 605459172 45396178 911741680 395183950 789019797 488925970 936332374 11845843 634432236 496329325 542259339 516327288 626346530 504272658 629406675 29563757 67966141 237549916 557178665 648617868 973264369 83628924 795326427 142026880 516486545 805508646 856537052 978350419 987449106 168516805 718239601 514445366 557508415 700809399 883322192 303825094 418096845 834197442 959817174 826473967 971606772 755996148 871206403 259394733 658631662 666552258 920010839 923564346 942938462 311655071 323730617 796496249 922361531 627063702 877955046 818479058 943636769 972154418 992829420 340583823 885629669 841225731 972632240 264521631 594087203 479091986 528578755 771109519 827669259 602118721 808441318 903942521 955195470 38786287 717826867 837534912 846931727 458850038 697993940 726702773 822342412 876134659 992939406 174305385 403275767 387387586 704720152 415188144 978329500 306156878 777063973 623577402 786842195 1873627 192816722 680008071 853278927 682553830 760348027 370224799 642095229 73096853 522720580 699015310 938643462 669332730 934264315 65294989 359715768 169087159 991168250 636934282 935957869 996605770 996692708 985667644 990951831 671777418 878937418 191187004 629001029 683966640 835797798 485730915 524858028 68824157 273374304 440967172 714036348 131844939 796477815 289414539 565988009 46745198 920810311 679305785 935023823 691117779 777647303 230508797 335550296 452518944 990702095 407249867 819137545 915129416 946499127 367378386 538165621 272166186 619907018 274890394 865953741 83197491 152340897 447658574 629079554 512588700 660290265 16835452 374126101 149795441 793667817 692946975 773666249 293954968 950569962 947284484 970245086 309714488 820875546 600428830 870032524 889033872 929769016 427846267 555021448 446540017 745713132 884306542 925283698 77788691 814657504 773377441 972591756 719786099 763641960 393937567 962908309 555209720 558622470 846667212 990018096 672988011 985516813 714988287 759897243 785238446 975823259 889325704 953994774 481763790 908902312 738251671 999279070 497662722 535354528 720877688 941010089 659361428 707085593 409958453 598570348 416601395 897994842 403249684 925922934 6988069 189459028 967601863 994895528 524865618 529406340 834938728 986698334 626737772 987920863 409921989 734676652 18852906 627257421 169595538 563883632 806728899 996638482 109409396 510771245 681331169 909527007 331069503 477787311 126811218 977365245 484551245 909511827 582702257 897735483 13061953 66801719 935683906 979107629 308609921 908078931 384122283 937431502 439764602 665059988 475514174 522512368 416676913 676771950 269471914 320544637 248992901 627909104 761033635 782780722 609865687 618134869 107572787 866333404 71493364 917607653 380974183 695940098 447737229 781434061 330856065 712542991 99035900 789527267 346897317 860538426 750552787 776718178 256323822 692161327 188312057 695097489 824006360 957355782 893399295 994562151 290958523 577274338 607460921 840403851 330106713 890935867 141047500 563562701 256954929 598980959 362684156 968619975 344067844 684447383 792522685 815265377 42626752 647904575 379100793 795400146 638396715 677572122 259880524 639391085 164612319 579508475 448142912 654180043 309816816 365849319 708584851 760082626 624047302 868784772 623148347 918737301 76697619 364969274 346628397 772482018 856257761 861389482 787300884 905201987 495408218 663148171 615013468 652908113 534054737 579745147 853292487 936421559 330323913 620974795 320811616 906511108 480182261 561118273 880622777 906686108 208009339 258914787 970751311 985367072 711748657 860250927 365789235 400223607 783461353 790559465 736910017 909414265 923175743 985153182 841296050 886726997 349893006 653266740 807824027 905458372 204842624 751821176 228088140 361590760 28370049 188559793 358880528 385095795 487472451 820140509 167066150 175323109 614581886 813080585 80271252 779400511 634264504 935376495 746283494 787522130 769479840 925347362 605925536 889198950 28918852 434746223 620755279 622459115 629543411 917410977 569268941 631790801 666145524 715716399 495620319 665733289 99273246 338126471 655140121 834017620 16228168 237324438 335845032 418466469 538978033 555536485 512870233 797403205 692724942 800236308 202635579 491408827 235558690 550677600 991347278 996178677 803104011 875223448 655747903 963648365 996556677 999062592 428171740 987407492 591629991 676586496 414956121 857805761 236041751 602656760 276011704 718362895 220410124 394657772 158179726 338082694 488930970 645420799 183100505 789990650 242557150 612125504 76287366 801995474 532857409 990035460 905941279 959532875 990752470 992668965 243357847 804911099 595321209 743278468 689819773 898729256 737070920 814311758 656412415 901493392 414676189 678399789 502162190 516063776 977872272 984526137 386591200 852952760 162054861 262428903 248614580 726024683 757324347 930876180 624330496 856435275 583413234 985532208 989611831 991954741 987129048 992374920 552981584 647343363 632186306 901665864 944239673 998103253 585427439 674914091 308988622 411353381 528222642 580488657 287533854 860530411 64416408 880150609 516349488 787830939 918534251 918972896 651100423 880534310 789458213 814002483 712690158 965490940 893766405 896375215 966242729 982530588 728047790 750363782 883867227 994469854 601192946 606996074 886188169 973927833 72723081 296417275 277194263 610857831 792736348 917372041 1118282 493704238 461804152 786653838 966123113 986846591 553671264 963976867 13012783 515757032 498664288 801909849 492150348 563550244 531400892 612210746 513454785 638014863 867719036 987121628 369761019 688230415 42289729 575817541 984428287 988729991 786543164 881554069 727481906 998913389 956947770 967905600 978513362 979137043 115172511 525049216 69485220 300614298 12961937 699192394 306221054 526184167 393680668 954905771 493716916 720231712 473802498 838150227 849513848 924817379 231724328 900186558 922151187 957372765 68049801 618117481 929024980 951161834 510909494 806546123 942874199 996867970 47535867 308779238 445708274 786593861 370304609 411207798 957897683 984174310 912649401 996214937 865727098 974471260 675851908 888205206 169640811 921817351 179549293 826370769 509250163 760090859 633580487 688517041 384746718 505759688 194087588 525689036 815766613 846214480 61589913 523585701 76541461 160512298 774512747 823634725 703943836 797343688 703885846 982513147 223699436 484229440 659765165 687526922 207576829 706231757 981198976 984603625 769173887 776337502 467980093 629893206 555000768 941607835 868632315 991384511 781637511 836842593 335804337 745467827 960836874 973831295 412308730 508556436 157797739 745821225 490495164 895572992 977041087 996628547 500249842 900710967 361160858 813304293 37274712 493904603 735651629 753845465 610986912 743220095 244872301 757449546 759935551 860321371 645684890 906075974 71540600 674222666 499544796 881302845 524809858 703626630 226336147 635178561 951939827 965251458 102758688 696293877 455230393 947735679 506689406 813475535 275637186 674418405 473855372 824822318 982252273 984402072 570428234 674471908 73399888 206865770 728221359 943487444 425974652 634650431 988321015 999251948 817631763 917471321 159700689 586025792 589087132 726103999 696222848 772585711 797794701 814929726 263346463 670459339 429564023 528394939 683730346 815251962 956222587 993897883 330657530 434445259 177955187 694806058 791993698 885359693 750112184 876708243 178857887 982308334 978477392 996540046 132076225 790618834 481779679 648327867 996494032 997876847 392359467 564921854 404706188 789369546 746541059 812031425 648814126 736505112 155374508 442188060 972794047 995797153 337877817 974052013 870764636 949250842 34898710 882120972 407136409 439593095 958600744 970791838 225519909 865981101 644568799 727991250 951538060 986225576 306735029 729497584 200484207 781282231 233419993 803100784 882258474 930514899 466837925 864637895 911252025 967810593 833081898 846523098 420989040 571313692 579555166 761492921 365607697 877225658 786083094 789928446 624933203 655173045 192740025 913378033 97732232 303034212 773559936 907061103 4494871 92229119 696190963 968468592 926730773 994316850 977207952 995550692 536329095 841904796 130971623 828582646 898908079 955817959 418285455 498379066 24437022 756412690 939836642 964123592 45773739 226402172 330185683 492281381 851149619 994565977 884900607 955462515 180161129 543763358 484787626 532988524 702815812 784329573 947260687 971957433 717954009 783464453 237571820 909718537 271994282 620946260 98816474 187247554 83268010 519678395 658070576 942752232 416648614 587851983 657734059 946756838 642213140 958293731 940363522 980455517 147221270 721966230 14557831 705208052 498108720 634562561 880787056 971732709 543672530 944808743 953725697 963099201 187587085 363113021 289744116 738346522 399205833 731206225 778415541 867280396 256098819 581881778 460209977 507391971 494065400 849285101 206974384 364989382 998897004 998906412 498172241 949887134 542620785 545374308 870458130 877774954 630671020 667554924 667548206 992412259 101569872 289470808 378874418 976702372 27282252 979065746 206255130 608397161 131230423 275811270 922979133 977205770 148497097 915781600 990976193 996872811 28413965 570725624 548754630 634916889 272364957 345346492 919311838 949918515 953434935 996966155 807137575 969928571 296069000 607585322 868939703 895241221 480271749 492828213 863464497 867433814 488189750 592896558 918160890 996116314 128031802 816671122 154067558 882353510 271159635 579150425 98128140 493677189 315943407 357305983 682420023 871471024 146516434 305670214 207377422 426484323 604761515 698229454 739633796 761276483 589787860 984183186 968304905 987710327 991034814 995894630 434627407 845035492 568588759 909514310 980297965 998606722 576537509 779574204 298328984 687448099 745719926 825595263 520419644 732938978 153722661 820406359 851621068 926133927 777124629 846029228 292097387 903302880 143149924 331224737 290999232 563785419 737414722 884397228 373020013 434365627 7766619 523879213 607966574 759858030 570007620 727189120 173797383 500547827 762799838 856219186 850977099 925898534 808197585 842403184 146422757 945517602 454647252 558104413 23597911 420228783 418602730 985579351 322789459 430855166 987979084 992205655 234041899 852566226 474381372 945485038 676089674 863190568 863494984 938235715 677086918 790064288 18812872 320290067 359168327 419322141 56119749 63055886 186358850 680088184 639673411 827247817 465413719 604092445 233355333 602096838 673163810 936919718 380752183 527208124 328029422 851421097 77735561 618338586 556408474 796151001 47748746 296209246 820558108 921029377 92808841 416783157 971082241 986524794 471026389 747524086 450818900 566610179 423584365 632031006 766185869 947659060 688286814 904917178 829477435 886061254 22320416 659511769 144901335 192928240 299117533 678013588 5586473 197437013 279085031 469002159 61155722 955868444 390332853 466476994 592813654 841604618 685764642 991886228 526900244 852942721 276216555 636530380 324422924 802292083 331639785 559350202 598492670 991615721 820757150 850936869 982650301 992898422 429905856 446436969 340703479 805811342 175426989 328112592 528506690 790292968 565009175 780953812 56638174 546775099 153946835 659708239 449069018 718907000 243219209 628122730 392481035 696841854 50308476 398450741 674005165 773506803 899855201 958178461 348607630 439019024 818141028 911309093 638675698 949090019 987050822 989555256 921558196 997992787 455144988 588563975 275442318 815150652 876532427 953189117 512032118 818155049 392193189 580108140 239890299 303558587 506535686 897594160 461683571 888440381 89539012 461126346 868748176 996154929 172358286 956655467 519185042 837854125 84584168 320026971 850484810 933321928 856481148 926209774 90260900 892007904 924656682 960575687 133062970 165716644 293365972 723474711 870436821 872504069 519147224 939798395 285030113 712730414 966038899 980401958 167647651 835943878 849037843 861168993 498927965 648829399 379610541 560782568 394402444 661232443 237703916 697912857 923946492 972774359 929997753 957928284 711649771 945006625 271460657 936159539 260888615 781027058 425946129 638473002 712507359 759469570 465434859 916177721 876981825 889009437 562993558 617479045 286985704 366984469 933858884 992096955 763933441 828689031 60599002 867402807 2531244 792539847 118494431 966279650 34661013 635302059 560790545 786340974 858062473 998729613 976932096 994573615 373941755 569662272 23961542 477647269 318562029 927691905 791131860 872538537 422686707 844865134 580003326 980526175 305119635 989373041 462491475 638191255 695214459 839837621 872177983 914295682 829213178 837449633 96597468 141494932 120452970 179721445 142449054 743856835 804502967 880815765 774010146 905547692 137802977 271269700 681879972 908659813 39809469 589266115 414827079 766178927 840763772 901435862 436892214 464488985 326205974 479726912 432397614 494489145 725996960 740605433 793161370 967548237 284469690 500981612 80369919 575009456 530654117 662498186 271596465 546489459 378063025 573047564 24175002 52746067 162763053 594524732 799162593 874596696 445952132 666809144 231078500 559869165 80855188 417855061 766795563 899562161 884477102 909020427 899973799 904591645 122733876 260307041 704121154 941857080 467457352 835021875 511466162 751286039 122406575 167058587 326209834 963910448 869546839 941579303 378034735 449106299 101128949 528245513 987541933 998472869 624358142 951616350 540757696 747805083 561646183 775520479 208158687 402446379 258535131 421979132 34203970 785605707 569624498 640095844 246983017 622632841 473776444 751907501 144617265 427540141 935370048 976164358 407222466 790027450 631293980 859167542 156235921 910333092 18671415 257254255 959040256 993535842 296265770 390422797 49486841 217005842 101921835 780903067 604601035 659808639 640185144 691147744 635664569 723053192 838823852 904874742 364188080 929120456 776662361 935367598 193919083 861514216 599936948 717852311 547163681 790763474 193549199 823509597 790913096 922398960 875356754 896050947 183598920 747375317 944135145 964977723 504415300 605448922 949871759 976201835 203835720 644015997 354653012 929603134 577487511 949663691 254594926 760492910 536114267 877495166 397890309 895665284 859953272 895033355 691386907 756730332 717608542 812852640 342487608 958812263 741482722 747193310 514280687 526079767 830312010 948371924 685097334 778195245 473834464 869657897 614960651 707201840 757083176 860055786 96947602 252961630 899975346 991692087 664546855 869584618 776705666 800411255 522543230 640429377 803855953 866990658 611676050 768770602 344889244 760827846 774318358 954743522 646035897 853352205 299941211 493494317 387123198 813437268 900248664 941523219 603046022 858354942 301846088 756658415 781879516 892462877 885174550 953989000 19686125 54137422 287033336 823679669 804524757 964020423 537846625 661450322 705198341 929218552 136457452 326335457 127808235 250179346 441368408 567430355 336895172 486470941 387495888 966170869 980070382 996901090 4167745 110439825 751144962 995450434 899927372 969187371 741278603 895979526 80593107 314004651 590197626 830193442 550157607 755791828 464298292 633808624 812377661 999339106 596931045 933829890 818679890 970005359 123869011 410580805 34390884 355803504 264390548 765593726 886908624 970315615 741970343 771226977 855817199 856166256 881364278 922150936 729995857 755383076 368963285 487230187 511186991 901703235 816712007 930730503 454159462 496307729 221108006 356569550 497951300 623564336 971867020 992270284 855983374 998658082 724081935 922221898 168658160 679038963 978799723 989241436 797913716 925596750 617785826 634021248 112347409 941262856 209986143 310249227 182572938 991740387 873062346 958390985 573479636 827288768 536924475 803974271 870109786 964647283 1086843 341957871 486059665 497794173 316111938 486808930 197753010 259366633 624831695 933401541 23983732 770401062 838951102 997521109 49343186 119316852 535766665 865826912 79000062 727295146 517872646 863561003 798489661 874293523 831449381 931883267 498831517 675222866 841870749 902717935 150878073 740538460 742271885 836160203 573293542 776915563 697699575 963763276 948516710 978187644 304771056 633346491 143224745 449917136 627133358 665884534 764147734 891776820 75270906 233103364 15401946 683146715 125368795 589352288 179276175 938237486 845468920 982278283 818738469 987254072 471392997 874550584 430130221 663076390 183001793 364858604 68574772 297422880 712434999 937060801 13268548 165623287 985103356 994220079 989274650 998437804 421208752 569176666 198835497 227659181 580539705 701400369 640583308 974548371 332421595 569918465 475793574 589464357 537198859 852261695 121890147 453470751 844401809 939673189 417071280 699749813 446901013 887805822 867336191 988352908 377137727 744946262 279496640 702541834 130571242 298233100 328362618 528905414 289774270 751292213 16664905 451263207 442227821 644053229 974479277 985673936 365575387 734823899 625447989 908271283 824272423 906372453 161449175 631065580 327742610 729936096 249985008 526227562 4413005 913449672 362033679 417650231 694053756 993014107 685164109 986106465 379126388 818511737 388773308 817536562 407657026 669144182 50509255 178833940 430723269 921644486 235014678 293724131 296094587 626573823 696982899 975014240 272069822 936083731 985336533 998269381 41741521 533489305 796309575 925441440 154416852 203381458 679947846 710965591 938492899 986409678 262956419 502533778 804567876 805220140 612100125 788476042 587790951 615495312 643726169 679083452 742269194 979942591 319787666 327637661 391281639 637337310 392767829 657431354 473257442 899846613 915951425 978448304 465957561 648473872 569857593 878566449 708979988 794806095 415209044 614924309 217834865 826731877 840085780 868324526 108209987 699908656 917526019 964713718 9277620 514186354 973991069 983843384 60257018 329973977 269542256 770192811 965157055 980119374 425835295 643346127 29747092 402414028 821265966 837763295 291258829 994037615 318198063 382298159 686755047 849445839 363800188 675091706 692380609 966587302 784038964 969159228 958989658 985909304 893106213 909261886 215875374 843281535 335578484 835237450 285731209 446801721 94614034 567803099 953928235 988190917 374807389 817456442 684886856 713158422 618587946 716076040 462266574 888686742 731238256 938253646 673123970 728103437 323547244 387227569 378491915 967760903 650711208 705700704 829864247 841890188 613895249 643812875 761895329 952567871 305211310 482012152 226672925 821434481 241174700 426848936 775487626 911559720 78563945 606068965 200224557 611033783 813575780 827075321 965364616 985129181 32444904 119395659 23549210 86273600 768713081 805997762 859495817 943007907 763166879 780421670 682437609 896274477 876541859 983530911 501282155 851790514 338229044 989127994 76340402 670371336 636210372 694653916 644176724 796183182 765447341 968310377 715385959 860417994 525335176 773345842 194588268 685137289 68280014 487715454 181723495 584120300 281643188 718184390 476005824 537917499 525777204 834065616 734142161 926130865 30230975 61146118 695739869 740846374 489560809 639009541 530841732 562982906 806600032 889802428 965757045 982377750 920004316 954618929 314684644 489738496 770972177 994921532 253461414 745170385 772631678 780011862 757478607 846267535 368743564 394526101 315804332 885650890 590696399 815793086 992121367 999032305 668164559 726467516 317896521 899015998 854133637 931635132 858307425 970761742 144280918 624906057 884118855 976383812 939004846 950703694 898774113 925562437 35801443 671053917 438446140 854192871 276393984 733915069 869438131 925275485 418688395 979286124 156527809 392590585 268252994 312805748 978688582 979532438 211202192 419317605 518437052 722741758 71785982 255734961 478400350 825267936 624420702 881192113 745359089 762032393 686941432 849914625 723863567 928140645 691817913 897308747 631796007 666102034 666035255 709640438 791913059 848517535 889675582 957029209 707657449 767111759 706788914 783198989 40216310 367382237 190490668 791379201 154044388 965928215 703643755 905507347 353867787 463982591 201321267 939990910 633125979 946203406 255963869 741475899 167052331 753703965 349640346 989888385 560641962 633278631 834045032 834776198 604188364 890292109 641419210 669567881 424131561 640167769 886498127 997278508 617942798 685156228 665801162 911424318 686440214 784419383 451704078 996344293 21887215 737588969 953645481 985677520 722899176 828426273 157898592 291904686 11340091 376471930 181282682 388550200 47680824 534950395 65256567 584958101 143672789 528938968 950528685 964552899 948894994 952760414 181220993 924238171 338736077 804126877 423741080 948261367 217918943 251891443 826719743 979287804 245930300 656793430 353418843 750431464 846593469 921217779 127174335 201017093 687002559 932658629 984582409 995539009 618042727 834309345 690498476 935198642 848704682 891562855 639345517 899814071 53079806 73272467 571926417 945370925 539042437 857401370 813599481 911697798 467814170 613143272 816161723 851340545 211777819 233872668 801564779 932420944 136553698 535711767 899739142 940419989 167663414 932603091 502059420 728679282 887044494 921375938 481250574 500060570 484450791 612858739 306591762 571304203 565827138 575083098 641820007 959994512 218205980 585578718 554662907 647768928 951784830 964973313 981029043 984010929 715776325 842469033 246596919 432402376 609115274 844015590 871863277 958357592 837752174 953771042 2827850 225243590 619589820 801397924 697276299 724772071 693777517 770753864 84959675 85121329 739324795 768284308 489836551 985071759 146454810 698287972 294078218 922577706 872940888 897432663 683662030 833802766 647058872 731160232 597376674 719915319 291299753 641147604 47895098 616950388 27854343 633916996 646408630 848946203 468667449 759544202 284914569 298540458 90932834 694806299 289670280 685262469 407367600 449189224 92234600 496686197 349299574 720460340 455052430 763956955 176008685 228744635 90348533 150449958 880563830 976900971 781946993 823293853 968093433 996144361 302370362 917023183 560433999 861113084 564369778 777236782 298040084 529724497 443773880 935566219 707953220 988477250 580304539 832639277 83296190 934511651 829294642 985216132 687103838 755288811 243882544 974902897 915163966 917327157 374520052 429104632 714747048 728271705 456587099 643636806 986534221 998190415 250323156 673128216 769792059 862809491 460591538 558051375 673451181 861253555 995520614 998997192 934697174 990077462 813652942 821761916 848656039 977926133 514506677 595915419 223862620 598942961 477109493 729372040 421461592 424881010 780234088 826685068 852698612 887920571 845287626 864049909 142072602 640116493 740648680 942495575 971782398 981209250 744673862 957380824 413649952 693062337 713460830 732189430 593447507 667338212 517628551 741443609 530560159 698553033 807591346 979175970 240762854 339419748 735195339 993171986 981235071 991887428 133082823 810551657 367028568 542941955 539694595 747942625 518494013 561218704 108295572 207467727 462629580 562728186 143860113 706878480 500872853 973713598 289990038 579279712 549310187 928622054 991668347 995797777 994133110 995432409 812075659 840717370 746786411 974340561 86764310 140666148 45930810 965008289 653246513 995615378 170189558 861545473 671027771 741874237 596184857 971894472 815362161 851242636 604852217 674261802 277690475 396363604 541286729 671504940 159479909 673117610 681721206 977058007 972722183 994914403 638500671 885260967 959043176 992227903 218465695 405082573 600167656 933970781 865953488 977308618 920405519 977485115 283124907 536058378 12296131 798838531 948851380 979247136 332853106 850340977 732560140 806848651 909886419 995476361 529018394 535522480 519333539 823576780 613963635 821985812 127897337 210177718 124072255 206368489 502116479 542805154 108413068 657512323 494928400 912158143 743142065 869145998 696379316 744397858 831015799 864098488 53332669 238486261 103905287 339611001 560960658 976678417 940910117 986139089 662777796 826091847 218309818 656487797 115012187 668976637 127764561 513365493 183764833 555837713 556667812 625853797 279256792 959149587 924080362 966511937 121584070 246055258 880955442 897117475 22124806 559974175 267333836 380943857 224372186 447009874 863719405 929286743 142191704 232311383 924857228 975161199 947170769 966988712 160116356 231986718 389965224 669284680 871877897 963295387 474683352 563011088 258008007 796290445 776648319 777995069 420659907 816576984 639750324 716602767 114649740 503636652 483556467 567283301 299646566 810000297 728411207 957069458 715468389 767117989 702461143 943309423 250097442 290954215 133133234 202497246 934046418 934404077 181221183 599249798 407103010 832440717 323689172 806544123 552803348 904952205 373906852 786729280 767783317 930505767 957948116 969623445 226113390 740722968 475326002 983647849 395620509 902614774 599182608 759528421 210824940 940947478 779089689 849236501 173096656 766941433 143151590 193451817 139842872 707608675 940516313 943964452 429537586 972832438 923256672 963178791 757635386 938166164 602692366 698995427 315499687 876108221 247457375 428138349 238919861 254494362 566446530 909501183 214215004 898746539 434639621 689902411 579887958 829086652 351419592 763117426 933164416 998979636 622293644 659562299 937617298 977858875 291150828 975493119 786525745 951553248 289798474 944150389 510585382 974231175 697312504 759723620 140986826 650016296 690081981 756208421 915596789 929263345 118839225 978026200 453633557 921092143 188024428 779794014 275037980 975835331 371018889 851505550 486097361 706442000 649657515 755800064 448452006 882097722 339426111 417702608 811912791 908938256 962211449 968620572 899796355 925260847 98923856 485496470 214066654 231690587 309216123 340557907 892647593 960866938 967450040 995145581 317212362 884355455 852783217 879920939 205371338 756291935 171751495 539577157 428129533 621741797 338572903 413638978 6526045 849890559 237990642 504021795 711491179 952417790 379136280 989447041 941384346 943798814 131771248 916447291 989767815 990937048 754425289 767917485 847055597 910720954 94277025 330474471 925061952 984615825 742515287 969546509 164907344 485696498 317659673 401270910 597088899 842175573 207198605 612439362 651238675 820275254 162440110 777252514 785698751 874210910 164406709 780539445 372764701 575050822 156587142 446811640 197512220 423633862 619576297 915796688 420376903 566430752 570284178 631854448 852818688 952444917 771104576 854161827 504537613 941445465 668570777 678384691 627445257 825616615 236735783 237023850 100016102 316505880 806382915 932442839 79240389 743958854 533174506 541098932 518716216 875687391 91982104 464577915 479535335 737828388 366742777 403432477 245214059 320432354 462357961 516157280 872681755 941630366 481999797 647451816 218682217 876335004 591798391 745877185 843954068 902621010 344751608 432246502 692046470 890697764 734695286 854210161 228462914 274221522 15039969 542093927 926264617 945083639 290873160 372501761 563288362 860980887 670281817 912036470 562331817 581487267 527762974 552928614 484655962 567495424 839022730 888852258 503978593 524888487 962694246 963609967 687809926 934472683 584819664 666987806 784968539 806851629 50930123 628283048 670531904 756156852 343630129 759612244 902569796 911852724 840478203 874833796 84544069 498164253 516431324 958627769 253710699 826734631 242796188 324335812 775918965 885124220 655579481 916739221 647649205 941106473 993939260 996189651 972012482 973497769 411114451 990859241 713089094 867878843 997644432 999142521 581454689 896038459 299064049 327256580 370432668 437099815 42316305 970049939 776192524 970037035 426126197 694813788 964082256 970434776 117106295 355304656 818269645 843587293 762298573 845143279 537717020 587686923 807449253 902562545 921522048 985687308 519447377 528739274 881406485 908168432 204032061 440492077 309000998 667038809 84510117 453078750 724471783 785533643 145427144 639672582 567670123 971498301 860889729 862560690 575348625 682155720 409582045 710707992 200173147 536953878 1759936 759540066 783982069 890463054 319882248 633559463 946712912 978038281 601059309 714745784 919350807 944705004 279604516 897672578 921977931 949820859 14204110 646167812 432040077 997184626 298618122 716794842 751685867 981428191 583953344 712053685 923005049 939362159 306203983 616983759 891493984 948344526 105877261 801393133 663946973 866565130 659887934 675271839 681496434 734038464 360943332 461055172 368920196 737752562 963577458 978307856 605324283 817250152 776237805 992438423 107428756 349531933 466950325 512636881 803382665 985378839 129642762 739329385 779330269 985538362 5521306 278821834 456568715 745001415 674432378 980249868 703443931 900966867 881137031 954036447 708714137 985253401 21327551 943227818 209681918 340644791 775160597 857579278 734621233 909861179 199264377 535498623 955708996 998643369 852058477 953075852 689290830 787962877 127494961 516696409 769283458 953867208 251225519 445511198 862781364 872006813 212295211 669728614 950450209 958312163 736059539 773682464 898618395 924952197 288308135 559851390 870538868 886637590 358108073 650376222 759296319 971395106 644720706 716830092 142265233 904118105 368396023 414664872 147483739 356243390 158853091 649121816 608244273 755626438 209328434 701248666 264824726 940708684 148225167 304726188 129963889 607734912 484206302 543996458 645049260 821243482 386163638 722142302 92200833 258748105 876056414 927227390 602998485 784695346 318190610 690182065 169495286 522222211 675702794 901949086 16514302 119662577 334512898 517408517 313711462 399481075 41958705 968947350 366461229 596158214 203164172 894264131 339199483 687837600 488626258 611821201 307983246 447222922 907455749 929342281 453288278 481408225 482889653 923531200 695106981 865290413 358762710 974766374 166845103 497163917 632462815 936109974 166393691 660158698 649033042 836241930 999201674 999352377 511988076 759402359 822470836 935288696 51213269 303646858 792014673 794690301 738740516 805031141 990776261 996519952 546950924 786940583 76566524 654580872 938558522 987377078 762174814 974876883 507029113 863957050 948537154 966671739 630528420 899710031 364834336 838110651 338087123 762240439 494066611 730496964 421153909 464024513 490184533 863341627 214606838 992786058 429736172 478631502 139294703 469815415 613688777 799844178 807209746 849491898 571431106 733208524 365788086 941091072 275043219 557230966 373540175 670104369 80176770 890425791 849768032 869439168 354074017 967698545 248916386 760962581 575452423 611302422 151212915 411302617 70353049 84481264 994748006 995879213 651482308 850198196 754408384 864630821 952742250 975194158 138546821 345261407 397888853 584707940 283603209 599801913 575764407 667503891 992993919 994726272 689768961 849732458 603245646 989597297 114649057 401300597 837886272 861187314 106804041 731722495 184443974 332317328 305193323 827754676 290863447 684032418 395265659 693803870 351841932 818254341 115416649 572940441 84526963 991650243 586377641 734604162 361658180 485785851 721846869 820193038 860248648 970166206 614547195 863497429 340594282 740021916 651752108 796607752 754791979 755709009 728062398 918695643 358598457 889193123 713786208 844312854 982011868 990018549 430305829 787924629 595270582 734428354 217349033 731778128 125444395 363732708 123103994 193270032 745538751 778189267 369925055 889027942 261517596 907797696 544921093 862918215 171080678 420690864 58784300 266717788 431715222 600809993 108728033 838208135 407423451 877766312 909025732 923703946 828984040 940148441 449544692 845966305 473433821 621135338 330407465 468007595 190683920 567069297 970161075 976030156 481142427 636028800 383594945 840062055 578378977 995967214 211716968 234578017 776944033 951544341 204134685 615995713 528331830 636070910 303913382 564041400 33137751 532717539 782268322 981169482 639432562 890742927 573342686 656501732 112305819 155499736 803197880 882542576 910750098 992542965 319815432 876042461 41871197 682219174 445755568 553945771 960711419 962564419 924942714 949272000 87379188 988401932 180099694 914858810 769029064 808809700 759523301 767603118 669326458 811703452 699049736 967776008 274307879 695520707 622262215 632532878 928533457 993112219 126370076 147618625 118296941 971027592 216077777 828967805 412543950 840118259 208186905 811126462 848277387 991411286 283680449 407023822 679275040 846273477 131582442 669761572 696353263 912518434 41097555 390739986 727435652 960219547 467154660 710929735 887427975 985993359 348000992 585582757 136551038 593365334 76389529 892263361 226743082 769397150 787686407 801641706 502279671 560605912 856432496 964149774 461498888 774418641 907529796 917399542 973730221 978938361 212597313 371807492 926498337 927956848 119695219 206022718 979331361 997395057 278872884 664728746 540507401 913599703 363050276 713577297 799068252 977617770 511884409 739714049 702277546 798146259 412409965 488786707 180769141 792942162 309471293 394085504 989406610 990995576 407348190 888788910 93757156 728337615 606034651 970152292 113661826 119540684 899292957 915939730 180841298 814377642 959255800 997393195 218915985 873685498 287532545 908920185 449039847 530988625 533211115 873305912 129178014 229785001 217284914 979027743 5883932 619983970 74847497 142340439 212665427 865479332 825246893 826220356 377034117 855498328 515922250 712564896 513343617 914198681 446368892 925609998 600674242 699392714 440236431 813468168 876253248 897202035 241853979 682113878 347880238 488422400 321640487 387604459 864486000 977341764 448038770 795822649 725662362 797135809 941916752 952740777 650608613 684638624 370560081 686482598 92787083 593978656 989504161 990600619 262061947 855613311 199561828 275726144 998460489 999070684 800823896 919389506 995992993 997533195 640496852 936872590 346989082 524542029 71718020 939643486 757983131 938777036 592017763 958888161 141729415 993708702 605353338 997174324 354574569 373208436 261967707 455916275 575299616 735846130 864489813 933342144 106102221 476353748 318087792 533839019 881301648 990351668 956629542 966121465 436764444 471728552 212472300 484547379 419434324 466658318 270774507 539276323 636700743 767998025 769311830 942371886 971124212 995182897 807073331 924427055 206959468 838530206 534726213 833160698 93989189 741925331 754459522 792819984 154195272 933542094 906026222 948590873 347964435 402641120 188451936 269597886 682280219 800426855 826696362 956477057 958979028 984792510 968541072 997425987 326899197 613484019 211110749 704269580 758926994 973448303 453026262 469949956 402091167 814789214 695958056 762629709 634874659 892400643 107594613 779915958 251327882 376995618 342642765 936991694 634162131 787781531 58856915 326298090 938499123 985256180 250261740 840740973 560485818 655387189 948715994 952665240 758217508 761853547 527929450 682556920 121110453 146688803 262939469 625249862 209955074 615594607 884284022 985392108 184730088 299719068 579754479 984037641 529748459 840873568 686677410 872343308 70425790 900011428 958302862 968258424 614996721 651344851 97475652 589049950 847172999 892344678 999160759 999295315 377975012 889959130 9332148 338083344 796745355 988175016 770303079 846247103 677130341 997423487 252555573 823754877 549877915 824399714 669059491 911555704 766321533 948504198 363981582 489806113 219508776 430684735 743626083 955152553 875174312 909015595 648223673 674300130 577479396 979215536 940580832 955428848 376024498 802670650 32265030 746044236 631531488 694072744 841660655 947471833 439203009 911339157 4307044 185008542 436519148 606472766 571622787 762142427 440427241 762070388 789451257 987570310 783515672 834470035 936897690 941670070 704670445 813688235 463301977 686286224 109428077 374939765 239199089 765165550 860734109 876801830 105003636 259753526 433021967 959770008 829004204 895321002 518777928 980638302 739991676 924670539 272869518 350760960 110440301 492414810 785622193 967401651 638130968 678627680 909273958 960065539 860650677 925465224 495458335 814871983 904263565 907895992 994057064 996249908 283889162 949041101 117465510 353458134 897377910 907049738 572502611 854453929 101945127 230896050 777814874 785767952 126127278 784739179 901920136 916319290 156049005 309757272 256707695 354899226 96742792 961630021 986511015 991767056 584039166 848974116 798328689 871766967 562649801 610137028 462738349 703439296 144225042 431271733 845991775 990903413 413526439 468491207 462901325 909456600 432787566 938715202 155893481 874761033 479993601 992657145 779672311 962934312 727776995 947118803 561559446 934658561 509000917 588998026 894329681 953898018 892539069 991348216 667895505 712836504 961633145 994011072 342610206 604599853 981942992 998214406 914249056 950218525 464967906 719065066 923369077 981060781 440685220 462595618 868678433 966367479 659771789 945262316 196869250 425913744 220395395 331236495 932556158 935203276 148999663 202974017 832371544 860551450 773691036 952818794 411622972 685514867 20389118 650341043 673371876 884837540 231239848 658557204 826381781 993919142 249266177 463060881 398296343 690395115 189445140 506906667 946008358 981351953 573945691 574578079 707395101 801022368 482086091 592777882 292498075 978895256 749617867 842151075 438757488 786308087 95636152 995792492 259311190 349760294 215361482 916752335 806250668 809144955 705034930 780499165 755361408 908142994 546931751 821746393 622081063 775111189 385843603 964829890 307026101 425044589 147632502 205416581 287150043 979297881 566504501 913388595 785851039 790167208 31751779 342286004 731217084 972609466 981000425 995345934 66639566 229632668 419460684 504966465 143574857 402147816 249357542 464676141 480430589 903847374 325649263 772659903 622033312 696651567 461044177 800283627 81660173 228802207 107855542 351974205 564983432 787462848 82161921 869277485 840685483 880074147 781005978 826067291 353978919 845666351 429769369 624381201 883991987 942519615 955531791 963830894 955351814 959161559 205664107 702881637 387218832 948273676 926555679 974358881 304955197 847103915 337113477 681158316 473542907 530075535 126286397 585995651 491053564 596972681 541567257 605077303 486364905 985777073 955812725 975300750 480039412 942333396 25086776 754389112 89426156 761641004 121867263 756289021 62979183 294238719 299335421 675833269 543643765 930303870 932012424 997191338 461722704 905014382 293403155 760183127 561321500 740139583 685175501 853010095 729757100 936317688 767331230 878240446 382850102 830073431 127247400 804358879 86707200 892161412 22992301 325361164 671242822 836506801 466580018 891206787 206009630 273869490 204540588 859178619 990613398 997154156 20869214 919970852 48976189 312051230 175629052 921901045 625589314 850391277 133393823 674248620 578588914 806376762 30431253 77497815 638637219 896021616 184898208 233797845 535742578 634807368 875787638 989883165 834151053 884784132 267062114 282414822 88667026 244139947 537112341 945575905 403770599 770329730 323724320 988623685 710177619 877557069 623877151 841962555 152694236 749071016 680539511 997104185 255478656 957231248 610594951 921294097 791725132 990897229 939794754 947199910 856971477 925067705 601896214 948414335 861536970 915880933 207164002 948670476 681163415 699467957 766353803 900171516 349327535 893097097 181067424 944491438 761731181 866744502 942201405 981421298 650210995 930240369 979119328 993661005 265943682 793076559 4387473 279656763 451424341 975834123 665575883 722265454 263812889 585051619 978022225 993506512 479416917 922824894 731722883 995233714 90876356 109061394 435382158 641755205 743679120 984001061 913185305 957348239 526529924 785556518 760278154 937521082 185466078 533092242 525684458 757826103 121645076 583438441 903922050 979948197 77975754 132778426 864354765 922030246 344637573 492590824 35809800 846616754 297672708 409783285 860538936 906100794 356864631 359850031 223679200 838639034 267754031 700503226 687965157 819756000 537245069 935048711 647437446 855386465 224001192 835668154 940503321 975657738 933120097 962999855 532929509 664606554 680102648 717592525 631485315 894994366 908437196 978202449 401106943 807335370 195198332 745399617 69402335 284116952 911260428 989377853 677124692 957960237 672019311 834796885 485040730 804664020 684191282 902063782 961428080 964506734 706185111 830965731 481510955 558648263 267309673 417701588 881329942 979641661 194475204 699601998 574300662 733993360 341780872 802325782 292229166 987631136 479361568 754610121 624155458 851236648 317472706 823642652 418266062 775718484 475020943 477752665 222238471 861327788 291347244 469550999 15324214 357997678 951631834 974506695 563318671 723400475 400699531 457248698 927720715 956109590 528802731 598955818 79616673 965419352 748872216 934938681 696564220 817949401 498118884 535618504 845252705 919450869 51693693 290829362 642226052 969156711 243939159 751119615 246644052 888993328 97750715 651006023 126123329 700776232 546220325 592291548 377372946 681544612 129379223 305867864 593232147 683644892 104874363 327962827 307607292 598656811 810480385 812082887 791651434 957761578 428114447 754603057 926181767 942750809 766423644 855128593 896940794 942735626 420399691 781338941 484333552 822329950 549889642 611297739 583435985 952168297 855841386 930067977 402008240 941796231 342042915 619080041 716070909 822820685 814809136 921500700 322569381 867162067 896489646 983593404 740614215 882063173 407634540 671857037 816040208 912599025 452331225 607603808 690108488 944976495 797866233 981516690 314925932 743360140 509689388 827573332 797598530 960406158 252093807 520729691 542487890 929580505 807625738 986085722 255923006 915192425 547017838 901356853 580850221 960379363 891618119 906121378 45187435 107016353 331127161 782266152 630945781 967880555 613888391 870152949 778633944 947199370 656189743 850565928 434633673 813399834 198367459 386687750 530276261 572978982 508391601 731347750 4756509 171676510 108983892 575747208 49351486 320460282 267803318 464018171 164459461 507673739 714848279 844017719 949652370 963338217 585895710 946835841 702246626 850136954 95738226 107944646 158971984 838948581 648931224 707193974 18505073 65746246 702586412 816566658 197247457 757778752 296750609 988528755 681925157 862358953 659072641 742016593 680298600 829836756 788085596 915456832 29183308 46099520 149865538 419534634 634741770 791667774 570885375 701272781 267466571 831184903 336527141 958365969 154493433 184299984 848390928 954640657 339328459 460429510 548376109 789647341 832772061 991646030 447284866 743667104 934640053 984070080 267221056 291714812 642962077 775536587 34116689 441041021 226822492 543722403 984291655 995436466 725170166 791876603 538676458 617477198 393756290 791793016 562366480 773948752 387638207 440116249 906651554 964163997 266074888 970733163 178124442 548661784 402543435 603627417 376411435 893452844 640753915 874534773 573149129 638786597 925127371 989101408 378617901 710709880 9839097 367417407 310614246 418775052 21031129 275137984 264716622 933368994 158675259 931002630 19378621 600519811 730109702 914467156 315995134 492785556 147965525 168585631 954651174 968235184 993857677 994141431 183910148 904420444 372552326 482298721 723527736 750676836 951991003 975092054 473783700 848747697 553762296 806292688 453448755 876907999 724185377 727701010 242764519 813495390 237060574 343233259 8108130 730878294 928483069 938101124 826702435 965923243 531553229 568931220 203769049 871778330 903009525 912244539 570573255 691362606 666348001 778439780 653068535 986877409 820583295 895361358 415287956 640170976 224025165 250704212 626710636 906121306 23159675 281006344 337812847 599824986 967449759 991479733 218187495 237441856 651611134 734440492 141989439 337479123 823058 633077363 163916305 910573105 809811072 837280585 224074023 969842888 952275577 968963365 997034209 997369801 504942247 691518232 130559607 402904121 514336367 603733666 77813428 117250293 742501588 904094623 360263706 672399232 980707709 992884517 598278996 973626796 276227997 630249911 611732116 861083572 516736558 759711616 400695873 893307309 650159104 764470305 661480265 926250267 161766819 353854544 103784052 340634933 167129048 840662513 713638354 750062280 258585101 766004157 795735573 861855285 146419573 867027537 506292701 543017134 480833605 817391654 450666001 789663524 765855249 974362429 390676818 525898204 27682214 651822908 852835753 982054065 857196444 908487791 166752741 378732268 37865508 941132076 937120710 983521750 736598004 838969257 358076003 841612952 198172308 912091689 934920261 959918900 931473302 955489339 539194972 783624061 541744193 578688358 941862114 987355654 315829701 323549195 944623488 989980045 745493199 829869933 55781862 989251719 234739898 303989331 940433990 949654384 534117019 987388990 335545821 495237421 611564596 640150267 973365742 996813299 387533502 521060380 880163719 967807521 121351396 793161428 512775526 767065687 552534084 579481546 564649292 866633905 493317013 909481293 428469258 841394723 293767872 920821457 155651845 646097238 112072294 789981368 69033116 608436153 897131306 922786440 829078709 843671747 180280966 451097539 31995496 788695812 546077788 950946229 959806371 988031182 520473601 752611244 799605454 911595091 173983832 931608649 593763610 739468750 852138870 852796394 417181744 434517679 955743740 967432717 182823259 596346327 399072920 712082666 54561472 757508625 486254830 770139644 246850867 726304320 720768935 730570069 48953414 433742377 616075234 871543801 995962224 999022231 915038153 973954059 383008125 441013881 425049945 637693425 42517802 728805027 713554183 813861729 175792361 998283989 741297653 797073889 666528952 979081162 845346641 944219680 378410107 567406929 541203914 888186000 46966876 952857751 662506803 958361609 349367879 979066125 557323723 885965658 5660997 179766363 643279692 767372546 138354518 721336606 922286019 922961477 835651352 844388211 365618300 991934351 151531527 190786155 170662434 455359629 820146474 838398839 324643795 364905522 327181424 482267276 771556545 833867799 574426707 903677888 584084497 856894676 798499688 856387521 448518559 977555597 799079460 844720690 796607871 985589177 92001257 271737921 315820810 698409991 251355495 431299923 70615313 534139258 795133785 899951002 193970956 240217171 804807108 995455740 716525700 878107613 511079219 643703205 293380507 694421602 471440557 533803086 256450188 557680550 389741307 790975034 78080607 152827793 483927253 747493145 502368876 807081376 705187054 785091041 869454660 901705597 580342542 886843390 869567734 933589067 685995146 844004699 43217490 489978984 537543495 751008299 77242531 149219941 693675784 701699965 719323416 930317813 182806663 490112713 975756877 990471204 851866671 996494495 256386914 444199675 624667155 954876466 540245020 673914576 375739694 521614582 395601772 862245500 851495562 959011525 101043901 765395956 305705505 868728709 172420408 228894394 271329381 643137199 631898036 763500779 754417181 934114001 226474913 535476104 317135131 594991886 635736924 709469735 548651484 674034425 630170152 931724335 8156483 817624585 769997175 790940818 756996545 828969050 450354051 682208335 448621782 490238950 47691611 810280865 946127144 971500249 910404877 950385315 973392997 978203526 278143174 845582504 603786328 792626475 116910974 359370325 870114866 911590783 692608599 986114663 935671286 966553105 324346365 926181761 748661943 969187107 756856234 777950222 101447384 660615315 71840553 267695680 300260067 519006691 900699884 943627894 290975341 579233950 528875039 550016698 649951669 911758985 941015596 985060020 428295639 579024591 894707643 914058531 26221162 506282179 416113724 420123605 494334316 975853524 171318386 229290528 532673069 646886673 84741840 91197456 111366240 825652722 813669852 852601156 32103737 37890042 82613078 326799312 384598062 611093115 140656461 236139631 158471029 865706284 705625860 829868211 940721939 961055658 407360886 725111593 643167614 981317451 630775490 917381770 45844625 699204913 564655487 573830558 91876887 265546589 616648123 887902834 254460862 710529985 970978830 971014171 782902414 979392580 795868643 948515708 22382495 476631723 983430307 997785551 13243261 240707986 660764856 780816949 923074692 976675415 532821145 636235664 738577033 763641739 64173757 856171321 978159829 990955688 628052858 818160594 184698946 347519977 696848999 836899139 609517733 728961812 801404966 849663187 250561144 370959386 696236160 852202847 308101993 689347684 842709646 872087836 238608834 483730541 95402620 560287321 795171802 987294544 776665847 843690270 620402124 992212048 825353605 906322860 304198749 692681620 29056154 564438992 131214760 231902490 259695891 976057474 852189951 904794290 825426267 973189258 614534544 678268593 593278202 602436946 237527950 736179425 711548457 961597514 181762661 798856871 495095449 894712565 886276533 931558392 198159461 664046918 634158671 892466615 293054609 469148141 416983034 460853179 270238451 353661336 542413060 859304979 565574103 603471795 605163583 804352529 691624206 868139278 833730286 961488355 718478877 925283734 715452723 818206747 4291440 153970860 410018328 787133348 295888193 616671565 416913970 837647080 987531676 990834153 157102638 403478984 946583159 950907450 478761741 773347075 366155588 907654157 714670041 727200889 220272614 435510254 780454460 998724760 966443516 995311354 564536818 885446096 52933242 62486301 547386366 752251200 477433619 773402968 796631760 851175127 487431217 506167549 825098367 962047287 888136671 980705181 583615423 900342555 711605776 768314648 308821521 427534176 312982840 391610031 412466174 542934276 806526423 996371742 532772071 583836912 806267114 890099127 142541453 887650887 231105067 528899103 784552191 838304033 500279773 848988925 146072693 644320611 880460777 945071697 562164397 606990245 329470559 387959521 963168847 971735820 85105429 997889382 140829674 929491483 38192390 879730280 599526828 694225418 258956359 633858457 787853726 937685317 991738517 992179727 578918069 626746959 226835928 802831276 466877672 916019351 553481923 966272193 709014588 814957588 149171732 415450216 595021531 648479865 695037344 754065882 503454262 583492011 392875701 862571801 863770700 949557201 398026438 756023024 886941937 976407542 621307992 917694976 233233805 846419518 593106243 839999295 231797309 334684348 445202139 682295051 671609900 858944178 937421074 989867223 321951267 853769001 818023590 988506653 63240653 423307648 477693545 539440391 895063996 936900595 468684092 585966076 153110240 433934718 898726774 943967420 132171030 410020468 584968167 763007053 98470761 801099718 467120066 524382862 90708888 507498777 210598687 318645244 599894672 703336210 664728431 899450262 975096640 975540618 625883786 765338012 186005861 937736776 579800524 929537057 668879545 767315851 253541600 838145518 454503177 901521819 653721616 890368415 342920520 639422979 79081165 584556831 538294622 919989557 733590978 856270227 33766306 833594469 900697002 900879209 313021987 848727206 588521153 994116523 332766211 533605021 506399542 842552750 280569713 536905218 519265520 903586669 745030147 959469009 879059034 948586303 66464983 632287598 839893638 994786513 877790025 977114518 240388532 610558088 499496281 574099638 925628170 938837431 286962244 297154942 533732491 616339167 818613848 993685983 275036017 450357165 356316658 931992530 566101558 752650322 88343082 353015573 564652965 959269700 200870724 284826016 195986255 749615250 37566463 383886834 718854595 936961914 660815502 829583460 101581987 261958976 120554870 460903894 183907812 886562612 337639920 444923969 583826086 839153254 324576692 801328744 109166506 698021029 917452655 963827360 844167873 966991147 146685616 562649307 637994428 864143822 182686857 299038492 543591160 981960305 267804203 894313455 331742970 653317265 52842164 227730352 450624193 567806013 684591730 879729958 984338637 991925763 699962342 928339281 209294615 473722101 564526727 994490491 1832884 808629081 247956828 260789236 275421150 485649675 358897647 586159777 709322398 814568302 544674975 862449601 311186711 699862068 912321777 936119959 646399554 734438733 81067814 815352063 207777073 658528098 760127758 997492316 126982267 775408034 955143152 963158019 626953987 959365307 299802421 857691066 771207055 773456142 251707623 413588830 873613828 948928109 862014047 922084587 276066838 998393808 206887471 851078278 342782167 369352508 108917104 890813590 456559102 810520843 35037500 837845141 899336622 955731152 310840069 852512003 625008787 859776336 127791984 983195643 355332649 652163820 755717355 871856772 411639196 717714834 109824008 299309615 90791034 593568587 111683174 492505703 865990087 939265585 470294245 966481790 355365367 754557219 160033038 239722128 188862435 385708975 127755073 498829890 220873424 226122631 552356403 834037382 162158569 763920547 879595063 897691259 106188479 816738909 784950237 861303409 550800660 648847223 329817549 857539950 703726233 922844613 250261772 608730638 920534082 949084155 157333899 528542402 620620376 829903928 215617256 817333591 856376509 920141462 303121898 352165536 266972627 524116027 215451238 311637574 679881165 746998930 715680316 960087665 232251475 386522595 6962343 87149926 304604328 414225339 362517559 530614726 308882378 875799988 971300878 990863748 595323599 790181043 183919269 439356374 382628012 456287422 443616930 614476887 22785175 63709242 202254794 472109020 810112229 941021337 461871623 668546226 224910946 424111376 909028251 925158702 393970771 830429188 428588102 899439608 994209727 996402433 246176600 845347362 668902489 847747198 100016168 996466357 711944329 943395277 670430985 760398415 624889955 833056790 698824898 958139836 304677464 968037662 204199459 920132423 942373501 970348190 344568406 734791130 570045575 634786057 621957588 636530101 914252096 928229671 906627985 941802862 970215474 987016707 113710558 543259028 40959918 537120896 631722399 858398608 744697853 868056510 421526637 755820994 426162778 771593955 436122289 835388889 845931623 929367991 191865703 857808539 735799120 891970648 747788670 808614259 353427055 731010580 777371393 889280876 835292296 932612940 469822600 749243348 745315057 964664019 505705236 634329175 789985643 961037825 351251364 744505532 339151540 986544389 521734665 932358191 905286424 948985257 54892875 971228453 49699227 289536670 749300404 873818578 688336827 781189119 757410452 977562303 113698309 691721185 420473354 651616701 806225922 853349909 901140376 985502187 214615083 393745380 892908708 950632892 893903171 925488442 974280261 987739941 182273942 948487520 344400000 792176237 968178661 981413556 940476194 960216592 547378592 817877208 839660434 964951756 681404295 833838689 620896264 788814260 344578403 687793847 438361942 596252877 349378256 622629407 446204710 520167217 577182592 839631516 772196924 835658130 737746483 776747949 723918796 997024842 144808427 270118078 985900089 990562942 159671067 553623466 271195808 898999384 946643853 990630428 403275956 468607111 332211133 484003908 73379930 262775594 378040152 680633038 746874988 750231891 118124162 214414171 605873541 677891544 410221913 956303528 426978447 773569587 60908967 713180011 449675803 465963957 353484978 789152094 901051333 959812600 282480934 589308421 396435611 882723929 677112359 730808290 237389263 677015053 848922281 866367324 556163165 874906052 868209886 966007415 978051161 995516066 702136036 904445609 454478424 847192581 673353986 812935610 612877743 652751047 944639622 971111498 606546601 617401655 265029740 509851181 19577814 969565964 231722627 865000138 239911447 487135428 396184252 734695339 404309456 423746980 980982840 996469210 435961283 758313543 548993097 757743508 111480716 856264089 75672114 988666927 722104715 799048599 6497880 840942374 691448431 759714123 67792955 988331876 795881198 955632405 452058786 874184743 623580030 965465586 269349875 532843873 333282217 859102357 228755014 228802354 369145202 530797912 117954201 809826031 312940472 800071282 481141967 584388254 404087707 674413202 96554315 868613255 948290565 960673400 38432282 111186567 768722772 785733726 533872526 917572933 559326547 870899225 933417740 990767180 740552940 981125109 417005277 795170614 326007437 807197621 420291108 741838101 329363539 585301722 782818482 834661243 906036839 929849011 635744621 886836305 244368028 611372282 549944189 786471401 678504818 783656442 836165143 861131875 993394980 994755435 522709610 596757246 300080706 516073960 539854080 558313767 177741482 429207682 922636814 971919124 765534290 876056577 664270908 947819471 580172794 711771850 963909846 978363991 600555793 808844155 418918164 815874753 156220898 252328845 989899239 994381784 178475298 414786906 368676048 393128248 637625642 826196366 131335372 727820245 408830387 779345141 581846678 602464013 176530276 478632867 767418578 773917448 266501945 293992740 78649805 808670184 200370946 877552123 539790381 761643693 291863837 940940906 306051616 927606772 184652305 205791878 522519271 553014913 745474895 759930498 715268362 757159065 682524393 927729576 290329720 864931991 562648888 935189763 81740328 347088892 728544669 774991169 477378515 596671882 953283913 966549296 82856945 98527702 83225314 627234456 30357878 710535956 307363838 907826749 659798771 767901868 259586015 816928809 593906207 595994878 107020901 376242483 739755637 898976449 486991952 725587878 595755822 884261065 137384344 484468111 874942870 959432000 206689974 266381553 345246419 357424431 51758372 460183831 765322588 977154131 19698679 816524353 859475363 862367599 842742631 849491721 631429275 765448468 481469750 721363277 207129834 702977593 969979673 971611497 379767911 518427705 154513907 823290181 504764316 667953242 345837563 507669499 490431619 958789614 940252257 977210918 433009593 925121825 97086175 465858801 622402251 698638881 646352500 680382689 834753899 969267843 946203441 961473393 277328251 738130198 345863277 647820554 441606229 545109798 642066627 788600817 854104745 959200456 606329499 811715220 29469113 578031688 486536928 994242504 154173358 705607193 587320654 929033549 481399377 985131245 227115829 658804823 916702217 983659261 489298935 592614741 87696944 594382307 624497550 968648814 977833937 996256935 354245607 920912095 524249917 712161779 865862598 969900853 686497232 809320433 419931415 472828511 649235985 858973715 257149404 397057340 557361583 635372221 436217520 570439401 367548623 892781232 839525623 866856255 688135250 948995385 76943637 837717387 925660558 950911149 449466096 726272051 510024672 647843407 614179255 695944612 527769663 965328962 53117321 640746607 358603971 456219018 28970020 59852272 498005280 800951423 756697794 796218280 109912922 746428983 790300661 916878844 496805623 810525977 910355701 913660282 997978340 999254615 106350245 143381044 925543826 953089225 100296824 690230805 196483601 625795202 465988598 563093430 367011374 806003609 677306615 822341168 534757512 610506633 731184089 857398120 187393073 491660098 710730621 960677773 182017469 193690473 988523177 993024459 794721346 930645946 907057866 957496562 417350736 987132887 442543052 503287195 97203146 536026635 258435145 511485148 144384994 146220778 467798503 624166897 962738726 965833772 323221183 981816642 211838807 659051086 707047424 801747261 243463829 247333250 732913817 773177181 582824807 774615707 100271324 185107511 883589 330237665 375836666 449772341 8591668 616586211 144439887 278286858 595915657 691816484 148017041 347065792 381407351 932984580 74055729 520811676 845911137 875235722 771214901 849255521 78521247 757254327 91161744 228376677 771623779 826262718 974814205 976673379 932891579 997967325 869819120 976411419 550155998 627766161 736048567 877827019 562465607 613698163 456398795 653640362 207414274 912120755 395760869 836636581 886144310 973898474 882139131 924485475 366397730 626101799 730685301 872173667 473763994 550525792 218962839 604802620 62898818 72237162 40530969 810789304 974455747 985337092 69022795 548996630 862414181 992444002 734538734 779843645 828818061 950466308 154904121 903489790 155684026 485171180 611455741 692962384 943599631 969569755 32384785 273412411 674698457 943236903 724989946 959558441 583773023 755135977 219165934 412206962 672041006 961211352 388283912 692569425 856235754 949436885 42702242 980484612 121491968 247814402 205582732 850288236 537250915 793806834 420292812 910321598 834833401 931913983 688420790 874571944 561250146 565941964 187242973 891010424 638323667 893594191 984413209 995083814 384213913 826547439 681719586 975370001 50339627 366970837 725393802 819729826 463053839 913518633 656917722 814833454 88422203 357390823 634231292 700744729 135637890 168480225 464426501 946982108 889755692 949488082 598344447 933481141 278607800 438058511 665369851 950655300 699919557 722035458 117704376 500139033 249021293 307998370 567572449 890174673 975588242 994446603 24333900 338273533 602050067 614910604 187575845 549707147 846426704 926074413 229373542 734833641 404622894 731228802 422909642 726207168 975630379 996763271 113879598 458124450 120627620 354585849 940880938 996528906 714290042 714721940 617290274 617705013 601031657 833998916 717165789 805494607 56647584 104151016 362308973 627756257 73234194 630803636 635486478 865667126 757604020 961346620 185193853 582024194 86045703 925542765 242212636 537663299 282898419 775401734 704567087 727494282 148310531 961739977 816452012 951702638 846445188 983118991 211088101 458319066 579860827 679518845 582522927 809062679 919582551 980709925 885263327 964270318 818218485 859268035 163180828 958693965 962631898 989906619 269337668 559464708 809253409 835787618 3053892 624987277 907725193 919196381 572059516 924002636 919852846 937709798 484019757 769149522 262122354 942075763 948868162 995671692 111495134 292070674 93977771 136882805 856518615 861037022 946466262 987076954 150320622 240887462 663287703 961006401 73179149 261947714 176680178 932710531 379369224 885111010 530882956 635292800 407046852 726312583 325091737 738097740 917567517 997762347 441839995 859834780 292913522 711528822 976015064 982728299 976668115 980467359 235353955 299520355 708655677 723500043 569061239 630325672 435084996 904672998 246226503 920847735 505471475 657373789 588891481 627994268 317471110 355120036 185478314 360736927 705709159 995208790 633045959 898823838 741902359 835707474 364290622 504795015 373857970 578007708 769170116 805588127 259895638 881103334 423372191 906214945 145887165 448460397 463781333 811355100 650630169 707566083 528435625 639728976 667619428 999044178 583378154 888402156 774468159 871994002 862065177 881722558 73778660 317889969 41279569 237163786 130162094 649662436 802688436 948061778 762216252 938859473 698265273 835722823 961339358 996926754 922540842 932835424 838237945 951493849 563070614 569576177 312637088 347715972 420158834 572318219 851405639 979276264 391012223 459197602 796432351 918250241 183682650 593460646 27005566 616796795 736525061 837855073 850109311 974944794 723227644 843012512 475746229 627961715 133989469 961701325 443923082 719888806 170724835 491449230 974673325 987369947 462334667 479662542 446448566 617205629 246323084 321366364 718734177 791888396 995298480 998899118 129036435 965339300 195934423 421970428 740536164 772970741 747889660 901811953 247703071 513687907 259437555 677538694 204083615 513487135 832822539 876936559 245164150 351704483 288539568 457445446 993420429 997618178 629602846 667455859 925536106 953497594 975501650 987124847 773646257 940120325 293554386 589023777 168929021 521057339 26760662 867242309 690264096 952169478 251500943 274387660 661237669 908261335 165438306 805739809 804860929 908424207 503049582 995140940 834919010 989142135 256595402 291322671 113089043 983268071 9763061 753491300 59028181 230201174 184637049 272234651 548280532 574014632 139838969 232366190 966451246 990655886 111751269 282135052 350682870 998577009 151386641 985678680 612952899 710504939 352342491 766920388 860098717 920780793 833733650 975184835 486374191 555632363 780105963 799706832 657557129 976742402 805428830 917978715 990026508 991678066 336806806 700447989 890739267 924169457 296978303 994442288 215136343 376098111 572138743 797175758 865563167 924458108 896147170 957702162 457147659 795199396 25195645 495517416 423045520 741950948 758159315 859581445 724070055 924330173 544892943 848748807 93875922 474002009 257038167 542832255 245300154 897545319 9248731 862335059 943479653 998687687 390354905 465326669 434553237 562276673 302954626 787277631 29086210 877922591 744872300 814994102 38122816 412452480 277005573 315353013 647022183 730984819 538479277 553705828 212129961 339259261 348888694 360241485 971509631 973175732 714949131 808609845 879092093 960204110 840259990 958350335 170060492 869248588 241570956 569148424 833187857 997248898 985396404 994665821 484990728 900052893 960699358 966421151 491821292 922403625 129289356 876380828 370386105 683718067 291591842 844995844 493786147 645633059 113495394 187743598 884160184 991675236 405541052 506712811 27938936 502659759 756192372 983355422 659410071 828086588 38444254 796239996 810441230 922724234 822152116 894078878 977565808 980870483 516524755 871914389 490748412 586604054 324509969 888417468 488994189 498800336 737459364 928132014 162831755 755897887 142295959 977801725 595054326 890914793 869086280 949274072 753846429 824423053 905561757 971933721 672371795 947828110 75254771 873774593 105799464 820579036 181853558 685876497 871459488 946268781 711449374 777393117 682314315 940732334 255360242 456263347 54377488 644504696 499265240 867048520 485986384 693509149 687417391 866161292 225503974 929621281 131880631 135719197 424885503 582431614 649222857 787464685 599020048 883428483 274940634 893929383 478768316 546998305 613475904 722559486 117769229 413646513 784344640 929911164 68345081 414504836 652254032 976059247 63615880 991018834 472201827 686631393 243194869 257594688 708350323 889099701 271719579 390490973 807813972 816892911 548797973 733149500 849495018 943976319 430592567 496189054 988304259 994884249 31570765 116590649 404584291 838832781 773251871 837322649 428150641 704746999 823945636 939626979 813062116 830899797 535452222 897112146 311271068 404139999 980319095 990024731 378414682 981075904 176673725 822774390 402177862 921408626 802967308 907313499 134854955 768427372 223835002 681180695 305345176 360516435 78245071 400545932 909942837 926213631 759528067 851493149 141553223 727175214 940262321 989938360 658015205 970335527 965986686 980308868 68460931 399009266 757984493 801146260 176313981 962001449 965683942 990033916 186134249 803020643 612969195 669675972 952502279 964402885 810364154 959517464 266497637 933065831 762026529 820833638 547452307 706770524 822664279 853019578 916452645 949185199 432625704 617785209 268028474 369772434 357817171 987483694 153830605 989364711 353871911 811812914 32516619 573397175 886079747 894826603 67398464 391501261 363369252 819675364 584626321 698896688 830997810 904244214 573914949 602743701 122209506 654566965 117001782 896706681 838547529 940948226 162846262 963183127 360176678 633577134 742591103 961546666 296209235 938891621 136035328 855779269 497075310 990468111 515852698 653697236 607540544 704849327 941593114 996148535 54235829 58484834 966450133 979835277 783725139 874428905 508086029 730052629 577033434 909745710 581696305 802984034 180882732 416295918 494153859 502622364 868478826 937195626 778458571 945849045 627857224 742330727 820851079 923836286 455897270 537351959 297597760 500678723 314503853 942890206 223117242 641067513 737483649 929872802 913125877 961564489 12472026 454707297 503265661 810137481 468494081 677314347 21701970 575400815 718674060 738117801 569991788 935639530 50707936 294680391 609008757 862370198 815290512 892508491 125829749 876634687 702465678 746140893 893816241 910962249 458965633 608120628 269256670 710942290 229434565 536485706 598002980 796254638 813931770 881809061 163115440 395065056 419110778 890851577 32209465 307179494 474064030 835682106 939849335 948466134 172911374 946911762 261961544 754072734 340373582 860166971 434009876 905722967 958595241 972497326 808777512 838404813 240757599 766953841 442638741 464305850 524841897 548015744 773600021 891128837 956950490 984680868 706550067 990374463 313242407 912376906 760407126 817558456 54174022 824997221 388232271 665141389 337318754 338215871 304916738 726811545 236400653 711217641 549137985 953791213 99644659 938283778 250360785 420071643 810256801 910776920 986804177 997791884 651685137 926397912 691036388 734879122 184751918 912244806 76431192 541479615 656198904 667164348 819000208 870585054 861970923 882237285 426933076 470241067 332713085 850039852 606371634 613933506 98093345 146165464 372077295 879131730 360613208 604509207 941379612 990520669 515619968 893079343 497500670 897146848 128593440 427029230 454855226 998654714 119628945 371874802 316631008 828464156 805304495 823659207 522489507 771662798 522915276 954185674 683692658 703381087 263385108 857624096 596252161 798180594 634970143 786557695 51335997 86685074 994781375 995850721 805930466 981945830 594304009 864986785 285564400 504780349 501007995 535724863 126603461 481216508 235187105 480827455 158587051 741281693 324686500 670341247 971748230 989556598 627923269 776316235 529083436 920324046 468064655 868838671 878520803 933871695 150829897 403993936 566403728 929871456 702917762 809091118 398098653 727604390 419512985 750507027 236972918 873008250 566868510 951933989 951616075 960690149 475434060 796255156 321671369 856353998 76049070 979846187 364700503 871328467 170556946 709460450 245209771 286176524 227558749 366947082 791111325 924666258 709201302 860938543 909642767 948216148 375544543 926255641 459146586 522034540 809998897 840827234 916113689 941930294 833198684 937018437 583062654 868657090 693915330 950066664 236186040 642476065 858030126 908437350 631474943 751862596 872828218 940477011 677494572 708957587 805867054 930966672 418297107 428043955 895947141 994370848 42860438 299098136 637099579 659837306 226501601 316228798 767462430 821209142 342336391 977285518 422357343 907283062 448091216 570604431 568528537 975744131 313501362 734415734 528380880 706797315 519380427 781654273 518119317 918598321 760567168 988732088 678949342 702707241 353211789 922928073 731475703 970120826 269954315 626768543 630829333 968516404 485471172 547132953 711431352 853699125 113973316 528687640 660410306 798615583 49768775 424977670 622529025 679160016 253071789 381935194 889897463 975704718 732106498 855307584 155961195 970504587 194111902 558073424 156537759 541472746 493570078 582232489 156203543 439952386 755775253 979117804 353446276 581315149 477535540 545839139 757483398 939149021 611695878 764440570 343610131 908140941 270745588 447696722 148406228 971831290 889324572 923622488 300523454 943416138 979590975 999386477 762823 760341624 319728465 540825327 303445522 832714400 826773268 933758282 756404227 858680252 122552541 130781217 956785760 968230107 906596263 923016991 697430943 961310479 956107620 976144835 678458735 928372925 735287444 803198675 472764461 678774210 28967393 490306903 85354578 117671820 444980220 526262993 788922120 864894084 674672853 818114041 658825504 951506938 819196366 972415652 845518731 927822408 422916815 776032543 739524414 778746085 772195049 854063949 673945230 872231611 827861941 859786541 681236871 749115093 530814872 603276673 65376954 966026172 678303368 835560166 472931692 533233123 742237455 938072504 724656999 733196418 600519955 801782674 518717745 993315607 156350993 490117542 765825578 846603297 256704520 472684968 366497531 863162595 509121950 858431968 295698332 460341989 874372345 887321714 545938720 870110322 240419031 359702263 152837615 744088714 252159138 831667683 345218811 729284665 495447584 911889606 306043600 701083660 848191934 910769937 483525972 507900723 782497873 872383520 961017020 979259972 927550546 946087404 49045925 81825550 364181716 665003353 463060168 565739767 675998380 750828354 164244963 712046402 776556452 837508411 229824451 631572922 289068387 503182909 212447810 913403612 945804725 995019335 395229391 997735137 78780123 118924095 510755241 555776931 4566879 533934895 487128230 808056355 941677613 991067832 567677312 881361036 114273557 496230611 51803203 822580109 874472331 922574603 954966489 984959229 920882200 957600218 782185829 910174884 45043644 788349045 612767212 617667544 119904974 476709843 716196958 900913664 463867800 864392301 753305693 810329826 284953026 574765584 238066579 605643520 790091589 935787238 818457169 962998050 417183525 746754049 427300315 712103008 349751928 704050070 752373498 968742488 948588696 995437274 142959984 211550390 905506247 936082257 646879666 658533205 486792033 580635082 311246858 627180127 877683766 897495026 945096336 951614972 56438212 588613087 215290784 537556150 655708259 673430556 499306834 762100121 323003442 727917748 151806283 479805044 603506141 883852900 960229487 992642508 880794338 986569410 884822826 947496921 933163169 993474743 260975320 353463530 956273794 979288546 674426684 785603012 863671903 872893391 910679260 980536703 566155510 984024506 124898846 942426478 93992043 876328826 299071820 941961307 716958698 948171900 646001604 992173267 620492872 728994722 705575605 829534834 987901464 996052686 986353041 993169065 152301953 241369010 880596199 892614727 407755453 440056260 819232358 846606680 890012588 925279224 963993823 981789934 399699521 679006973 195049040 678875052 889855492 997987515 889502278 980106808 234486299 362202592 770973178 875624360 133946874 144564482 709795657 806534118 549246101 947425373 128405336 496468057 251728657 873838693 632730483 850759581 368349228 942122851 726170020 735327574 277966474 473090816 104659959 714156398 278595475 408167937 593394765 898851803 886807378 972096075 817902938 968168916 747321223 908782665 109573785 723375128 576395836 749795696 642819578 959918240 337079016 794798435 115487658 565726211 443958914 534076806 849071301 898241080 968648603 973602561 61906014 687979430 781227268 899163753 411312301 904769734 267417159 695281690 970530403 973709406 307625791 711506692 182182985 582226088 158030082 245251289 532658218 800384581 765260417 813384719 9513214 771469796 270092978 624034270 729923457 918076884 278938235 378107404 798848089 974170484 459612044 993060321 517082754 930241733 886738016 944559622 772905056 852226616 970977268 974769958 795795093 985193475 154896204 771326453 810922426 890787672 28557958 868579890 795183678 956978133 115624844 506918220 760985578 841133939 683409132 873752951 506478620 548202464 425410533 785078171 711892487 931901500 36751913 426041727 302156624 356226245 12353161 667881487 28349580 730844751 262031403 560508731 976563035 990868961 107455217 916321197 629758382 974722938 15982933 83274647 814758393 839090710 693987944 887259113 22165704 519253730 117085625 409398923 240008869 974545279 350862547 668171352 407349434 840698440 403161314 823533162 278571558 528119117 909516216 993112869 410402240 524387832 943538737 966416543 914967459 926603167 744806496 800444267 495183805 816665401 136020996 352954243 335071671 826987989 14938399 985196373 198876685 342614011 760878545 959170934 162704318 593274888 630397546 888681718 785533148 978045986 958586816 973336576 849316476 995929489 356590911 944137645 233188534 331959250 260233254 440121743 132607956 475737474 112252427 391267830 722259409 952493664 824202805 917158867 969548857 988994368 338255427 992795446 231519902 908601666 808818484 839482259 169427853 286412469 93345565 972790746 910251041 923905281 771889131 968323579 37594802 854730381 655475883 887297404 255189404 944876325 538481358 573818053 387190925 636337038 486918369 772413216 601309706 657952550 897653218 973104523 728585653 741691740 687750783 692297365 587379156 969267241 383501982 495770142 408828983 494226370 720136195 989204352 689833439 958191159 595302356 754651602 32392027 958199446 699024272 933863374 285330046 480190468 846557694 988229713 92429028 95342991 347595183 603192157 387868285 574022904 24551363 592592385 169671700 287332535 693352703 929906884 965984084 974132432 58948397 730295601 631314433 784503299 806685162 828336602 944854065 960327099 75232968 432114878 540149449 909113341 520927973 536952622 571820439 889392893 620432454 752534502 849719214 955034224 372901375 678880205 279733544 931253988 778642347 882234757 959111536 996559692 894776987 961641693 113350834 856404959 45788702 79122197 669244950 690180268 213066447 847837319 870927331 873317817 261165495 489776246 69512342 612476132 170391073 916186328 611433137 641335090 265647818 509857157 893683777 911676665 499597360 740847885 444098362 634359961 702127724 867379132 818595706 926498728 358356140 787909693 391672760 494288673 72230031 564522752 601819116 617433159 625264058 724027849 859482520 989046280 500857724 801755784 921602226 957580410 638367978 981617450 468784588 482709158 589121644 987889532 593475596 842928287 487469644 631711930 29899789 781134659 62714545 195041373 68517642 345358297 33879594 285354595 160502503 940039169 735047 15586801 570911183 737601228 215117488 337002598 863995219 973358474 431314236 477206606 231264155 870857025 742617589 947578928 816194718 836214295 227818320 858044021 176320842 535342548 568996390 947922665 197738047 384498868 455165841 887518939 191397086 325551220 258906248 413858837 979598442 987611529 785368492 993725329 102756117 589120603 700697643 975403991 75533485 179081360 510360316 625830019 551118990 709799108 203111242 267784562 588478648 808060731 474655053 867236416 802861119 949215528 843644244 948671335 545594642 665901592 552869990 956394846 341609051 442563778 649138417 880600933 145838676 241944448 242307025 348396897 845550850 995141940 850646157 880841175 985083093 994531497 796528465 905035690 432078447 704292758 737784170 780736437 896635656 974825224 891862651 941338145 874489969 929912950 283533646 373186178 859012741 959331980 180431879 897771096 462631249 562985736 289132953 745705768 559350522 734833481 63695018 493912541 162817403 892735372 431865872 986376438 870417439 923132468 687067698 941744986 839199946 923100694 555859574 937234594 772258592 908107785 107866261 567805921 468726934 578452433 42326262 933132641 255797081 383671693 305108435 605014559 250970483 883518286 334944051 560541091 496899768 951376857 303095650 773673389 554572856 570336142 188481827 332413453 621607488 775072049 172713657 596723354 346929307 972405324 208510573 962088177 231233024 588560160 554763813 924749138 818879036 893585451 226617816 816568318 513750164 730608314 356428890 778562183 880924933 993301385 225118437 381332444 122013643 425259678 961086033 986088785 848914640 917746965 99337478 190561448 453202032 531216493 869900630 910775799 946258722 991238002 934380465 988976506 153392538 530804424 466263462 522418671 956976318 986159942 445797391 991236916 654174740 892318416 117302994 229319376 195027436 214037650 914837936 940824519 100816538 369804243 320273506 858698331 63538885 888459972 890604826 966428802 845687941 862926717 456721232 825356944 587962265 990609595 722610873 771930997 975652884 991696966 107454524 643081847 838723899 911091472 723040570 872962597 408065499 723852304 519332344 799740276 620956418 973404321 832423797 900983147 176823230 732612386 34800268 671032018 326512613 713635109 656301877 733594449 128495607 471701713 297927235 711132345 994879601 997242143 707800427 775253060 466024809 602901858 604261944 939531737 943642604 960382405 26099124 984236201 168875166 275961183 64553353 917824839 11845877 959883061 190041731 406037448 993978858 997513606 632264189 706420097 745753911 808155701 646509646 661981868 236066968 604108806 696902391 704404594 20689896 980485180 279189096 309801909 292759250 500543730 271808449 367048182 159849698 216848328 303587418 856056407 118380106 547875973 516638167 840234234 394442166 691583856 670392968 804217560 528581781 648956748 922574201 976202639 945367630 967991398 648181667 964820424 159713692 788199421 732914990 814369472 525676427 931370009 448214478 510114950 172749617 778902663 911191395 970969341 414407789 615469134 167647740 588692088 344476918 561499609 567838737 666945356 429234503 753928757 246333871 618572771 938840270 941838482 542301226 684072538 255173658 319355642 657081009 987185987 792217985 992886913 904718100 960137595 513670505 982039733 87557489 786710721 111246640 306248022 198989326 914566520 494916364 854531165 732984457 966942777 998293538 999071941 118822909 855135771 479614060 689318224 282603656 706054994 54122920 297849277 863482061 907143040 634475781 801735287 565930998 888219335 769279893 979800794 901132845 983558698 296948083 450808882 40884510 132345747 950245052 996228194 86369893 278865973 716317534 800008010 349976143 350637708 85805802 963666309 600889022 705466302 738250513 987236959 496775049 970274332 826811598 829355549 966045977 999169723 133559873 443514873 715600353 744216127 900936712 926666420 69064575 810818566 24106476 359914478 23431031 286098960 608361934 733526212 661041296 694962912 105900731 750577693 147446694 820799775 352492330 485711334 908524883 929898402 32886839 219991767 619772542 824234884 847067754 898037035 935103757 954392835 498323055 536773929 170347006 535624874 322694629 802545329 237661277 955665427 853600949 911727065 257541927 541589284 622569843 896583361 354411613 386242186 635032812 931987774 713193154 803231785 724071363 938073570 692789652 979105510 113184810 927324014 275942200 530013379 310154112 697530464 959711371 981998472 459806825 854832883 599669943 764645408 712585210 980373776 915846049 961198880 40205543 930338117 656386990 891431483 371020801 554601148 732026915 834146741 344462600 510261518 116445679 856732351 733492265 781143090 911855667 968401827 171368824 925308196 574862059 687878151 991369012 997110204 341581476 894566063 246162774 905587542 903089530 941252185 636225940 908997097 32866647 129355437 136785325 729651379 718597000 886587808 465935453 511749443 388594988 944492267 581984807 664644704 833704555 930502077 141841191 645044483 522525624 978314421 355769687 699049353 126812560 805461735 539025074 963768733 998453820 998867425 447923737 612465134 329656148 389840526 216530739 706952793 521174460 735264538 796330911 886608760 234503927 934748363 638292532 757398553 899486302 975822729 394800369 611030000 557977728 883217239 890693513 910262291 423378280 846342887 4175504 454512769 694459383 787868263 764090853 849788573 197828454 512895628 215700591 915802009 923904665 984759131 529834264 547786081 420000857 646105691 644196853 784341797 668202030 760484974 400158590 988434273 292265264 396311068 562497220 723777029 62245685 598890522 6526282 486173190 715765588 988996954 848461333 892814383 790173852 895209156 926422327 975214108 961398798 986331846 858767080 860887578 589577832 890299126 299449450 880873682 72266194 98323655 458028868 917295182 454634456 632870481 397025486 735645572 26334701 681463284 991844229 998514924 609432221 637911327 948580507 991630719 86037745 134460049 618788923 835251583 967505635 980993215 196964408 582510016 995066043 996224628 897482487 987954852 952840789 972011526 740110542 768310193 117112273 675331779 996367012 996508334 900271028 906610967 945847435 957606891 469740808 891105013 502267333 992461240 165557805 643449312 22785757 941139882 461455827 580160309 793425731 891808376 261086412 707556139 596775141 825810672 156463207 825491048 838890407 855634289 174949043 712306488 973638189 990867369 799725507 960479985 195481424 349237574 614296257 730103583 267333053 325569490 956223277 983705962 736907243 935498414 745435186 784650356 372906153 508149051 687127010 695881273 378889000 676586077 205485109 745544665 418678643 632331603 670520738 812895415 292695875 998145408 580408943 717899141 250480351 926329428 211628706 824074167 920135366 995162986 317856884 485078179 157152710 844727697 150342994 953034565 301956135 515708434 142327554 957938136 597855787 883685462 739807775 856287368 264103663 888965846 151651812 648625335 136399840 186473246 566820525 978037683 715995180 953444774 505159239 692042979 980311074 982868829 482827392 648630090 719897274 946352809 583015976 876543561 240007862 630999109 652735757 875867772 169547537 359741197 685561518 977073686 494800894 572145908 767997323 883361427 755061988 955848731 609034397 893379749 955819549 978244484 433870366 860583527 14861203 208860310 303146451 830153974 576705358 748984134 238726094 293161311 427836284 973555810 355448788 968341154 877398383 979011376 222623004 453779744 719760673 992847000 955298157 964914878 218535739 262969462 327843855 368983305 499451716 772289761 93902701 235622237 955963525 957713904 504763027 959240679 810810147 954625022 861862352 962474862 570933296 797116098 966290799 981475617 554066356 807413798 581577850 654787344 923395420 989971395 602132805 865088051 164718391 956876578 676170359 976976936 313413906 915895628 560135161 881106898 694757598 818688797 139683932 988557869 683935109 821640825 352038829 403898265 541493343 945053005 880598191 946522624 704815897 904576733 659077072 817771348 264646466 883832663 891525079 974324990 427650815 650580210 621849353 939655392 454584022 733256760 639702362 799097924 853003981 979816770 637062861 705051249 486133847 948396266 723495859 786997415 818581889 966165709 729598403 975422076 687237796 970762115 772676643 952168548 79166514 610532135 753622024 779230959 911512000 986942871 205360203 766143305 741851472 998791800 849529975 966563671 135277847 605943013 402104486 473180639 86235456 819359310 992377673 992752676 321767129 668586516 848063984 924929607 151244670 854355524 865646849 979863876 73364918 228952399 846293060 906878183 942963736 965549924 480245997 866087602 935312085 969979275 659818670 941554846 105164329 294152759 135859856 556450905 187893330 352724409 875878872 917126006 444087073 572859799 63998084 331415080 728867230 840830648 405888414 910810106 830054431 912880246 278124490 933768489 96058921 286487851 693260292 844721193 261027231 515533453 623649425 844831467 641932378 828285724 239085336 392171731 499570156 840135924 309523590 466450568 971010805 986275414 279971620 846652395 662477705 663431541 33070826 384804897 531401683 918854547 515496266 741706679 46714893 168595775 156131482 837094935 992286034 993879549 996319308 999381911 23084950 957576001 825522462 971319556 288598842 904327429 772099732 919638306 126785605 142492698 347075655 455594098 213905411 819773257 92358521 491502011 815261551 913224593 268197014 822881458 811945393 827839045 206877633 895775276 298248196 422212392 840387402 861128418 265755557 891872645 451568516 636749765 494173665 806041170 770897822 858798241 802013310 986147237 539854140 728337333 942219562 963811795 668992357 670310355 473071123 737227183 685959733 984548261 731789805 770939944 658742501 903803735 700122389 716979748 138184312 971226479 606195739 869961971 292423296 942878102 823630864 944110862 545446260 760818865 910372500 927329689 450420256 629742452 139814275 220523093 717795260 801518986 200094358 802632069 76537218 931832937 862284001 969501260 137906066 228113765 530106843 823097913 698594055 879951763 405319666 576404964 236662713 487514394 600827903 779061012 629374169 850362856 635184650 692009218 654005807 810346813 725308118 883388589 220502057 794515392 378469838 546670649 239816640 306935657 792526327 832432954 694079574 707896974 824369064 950862705 721575690 859927172 827163126 855246789 960860462 967350645 958424310 973975819 554728255 589044944 521798112 602951070 379303375 942600210 210933439 391007868 815742992 822895826 700946021 837828751 742641143 906482878 681950707 994379179 128324969 393421685 775145081 887113527 490151385 633733184 61180555 318022526 831316898 923691689 403275289 933566534 66233902 714249639 623331791 655911895 162391397 951274848 700728273 888528467 561735346 562418514 475167149 751739915 239149242 545371699 870942949 950106375 568593172 888480806 708364113 782148262 52757419 451554750 957547423 963335441 342683986 572758998 826138836 951158449 630837636 686157470 142641838 477459797 286898029 459098295 427497619 674547416 340449996 950209740 178206035 729554908 947057478 947379314 377528482 686206594 446768169 666869609 553868526 985389744 17785019 923031383 421742848 937634292 336409341 963460118 795525412 876042649 725528849 872094831 151432363 914718225 638303063 938505286 622596878 624502169 427506554 840543119 175493900 883989571 791876571 824979179 528414828 797739537 622414783 996018326 32233126 585474454 995421402 999339392 611084871 923319171 433581133 915246271 126039060 817623075 642364575 893244472 955907809 974076625 779125291 935187017 720453658 727267046 56989058 391189647 914096549 976375550 379866689 828047166 255170462 722923144 612245772 958679194 704561892 841178928 942112191 956255860 130983274 210737599 10528904 479710943 13597258 213952637 479075258 812125054 242935606 491875667 735933158 932065940 298268608 466828112 176218332 969988784 326606617 991842943 138934202 859333154 628226137 679657039 676695883 871812378 683786762 869526346 284353660 806676000 292842147 573634530 72073284 766937803 360082247 369232149 410352219 788251676 851323813 859418884 343744727 445340305 604527448 828382781 258794142 753483931 529494766 566640910 546682781 572468079 955214353 985044272 680843096 937328016 495171882 543707645 133392809 654790162 241936980 246824512 273087984 927779990 192345086 895614720 764460920 902595530 761537245 840186560 167668197 312750704 715113697 948617104 455624884 486795667 965946833 987232254 945364536 945397577 225085756 884418982 218837633 285685006 849310268 886553595 939470046 961872373 558127184 643388160 393439967 793998122 469445893 960759160 655428837 879385895 912386119 969616102 588347233 864729037 787667852 852779253 193262073 839256984 106062412 178197227 413640913 986026699 980097760 988679177 978893492 991118324 624263903 812455260 473605003 585983439 763005939 824272976 877265877 951809177 689237569 776937356 151837674 238363411 536421104 848679045 345819274 417388251 338445092 555060825 395813177 491012674 681121353 915187199 498016434 901374215 198265702 341357295 139435046 502892756 452020345 724215540 961808505 985492987 595249857 730885882 16984117 775673532 988689329 998967842 96040398 170180994 25164654 430416796 37624944 998241029 128675839 339898880 612824052 738130601 810395862 989455669 730084729 937485622 641405473 862000888 292423522 972420013 35522342 857576398 112125035 195190733 259083026 533967864 816390596 935155731 694688335 991983444 251560509 552252406 489852984 896452760 824881989 974492501 350913805 524291127 23550828 497886286 580201772 653764340 496284921 913462409 646769440 790866152 59463010 933327584 714323991 776512423 73743967 641892068 250881859 713508492 20828919 538532306 737541429 992884169 276047228 804575662 960319720 963168595 381858491 406798134 702613926 718095017 501607974 655386010 290004159 430193441 694211517 697106847 671128632 844852427 949487831 953275054 279301894 294828914 473708878 945756772 710956995 753762222 433701139 444544950 131483407 457439487 337431038 645800526 377117677 965758274 665344345 708096364 27401294 364547343 12645474 833422766 447996161 874794095 195711562 643093181 908528314 985006646 198263850 954786696 103990845 526122961 667863087 765970933 868983792 923309085 492461245 532861175 871642627 883408293 779127460 973922197 135816248 606768238 760550922 919410258 578677361 979366389 683830322 785472807 350235767 938102861 609139172 690573982 858699861 955589296 553422645 979753002 679311619 825431151 628521643 991498642 260537476 316978497 563911810 858639772 823972522 915621237 733114373 880257619 819212662 961195785 358583148 443108050 708539765 913305308 282979781 848008966 686679620 875143291 846529233 926647362 636413161 713671766 691699510 938094556 260467592 936852224 196690905 895266141 847528180 994182836 452513186 840342082 924848551 994622882 554411697 835040432 961646286 985417659 372997007 705913934 561278077 780325051 491899350 875947806 948556784 956273411 385569176 756925968 842998741 935904801 231756113 532067683 438815233 539226610 906003486 994489141 524020640 915358995 895634241 977172552 469616126 498011884 879960941 905404104 185900546 681659706 814951991 973197627 494757970 626723410 252341498 613159594 594370508 803165851 84591997 811649785 253913015 761916039 478996369 705635679 372720484 648348401 18405509 589534246 666753243 833848006 895152311 899152987 400776227 745786612 778956847 993568640 385097893 996794462 280112664 511943652 634389627 662120881 709844784 968011570 467992322 474818686 653396022 673111800 572148417 625042850 253555186 691470151 901829901 955868720 529727925 863993592 418921479 569030410 627997115 666592912 342914606 844806230 27359409 286912359 222033177 374438496 296476207 699889296 184362622 193331069 832954037 856014712 437267743 850152701 682961862 826401675 999118793 999362149 982546832 991373564 920226850 964692229 617531623 937235352 410769949 602228157 398097761 806448096 58835584 511918394 494314774 874266539 906006561 907651236 173343010 184828952 636457335 683666792 644484519 889475490 99179407 541717921 323746505 817039972 557323435 577742348 498463496 546667878 743877648 809102666 584707849 769850799 543719463 864009477 461244280 691211915 974114882 997251899 241501037 652581226 459521513 883861488 392771792 878221217 381444776 427229060 84060809 862435174 32458427 240760355 88607437 744044329 288847758 341615212 766837290 874607888 877644769 912620482 993951434 995145415 437575385 807394925 715874668 749207392 371014550 461268525 489116840 740711888 636531098 824111346 490840578 863172836 947761080 987849815 490307323 600157821 767445286 960683040 286029610 794640987 715379377 911612636 292414374 955403122 390084133 983724572 618732581 705407248 764112520 786692425 26563411 673171988 834809060 976435215 38137839 103224742 401031994 647045371 485243498 511409993 970868347 995855665 648819109 660862427 380502255 635728892 618106444 749066200 84176777 161981368 822396154 911085876 436645883 517193463 609341687 759415358 115951319 149766562 227773139 981204873 195924632 223316702 494945842 643631914 456981249 984182707 31533232 81700008 592770879 747422788 286665055 424319377 126155449 874219672 217221510 702428627 514286761 818380507 941842497 951976076 555981048 755412725 428580594 749657445 296113908 817901681 788394445 788499346 553850317 598595739 675456167 736476562 772637991 979826027 499515697 990283735 915162936 953379440 223948517 757740838 525651795 666132592 141245289 675543420 363424624 524623618 65141493 194424740 317071630 836056381 635674609 877331352 857248172 906713134 877387183 976728662 390326100 694217697 141433534 575760479 565662436 681393769 533378629 729025618 553465671 879977835 783222125 931203954 563711871 619781103 496630280 521767094 761553724 953872743 363377288 450675811 396394999 626228291 94701478 511569199 134269032 762860128 273172796 815463230 512576853 901909957 619262718 960511019 636744060 846603582 998488721 999070169 129437293 868295524 147546426 741808208 920142158 985592196 648701666 671677009 412025248 752564689 956704307 972788599 324903055 687839398 164373388 609027942 900981194 915774189 339876979 570608089 87166428 658486570 495385718 583658524 943637482 977269988 580865504 907442357 223108398 247819730 741514997 901492748 844728205 898550558 783380654 812297649 865966061 993649533 216818634 573401228 860712973 902740081 616596091 787705617 257786069 371089115 449310053 870766245 510927905 582378229 189350158 703005327 18301037 314786311 167029379 591743007 173832453 557289387 397019461 596323381 761453611 814286729 814452443 884167751 674187078 952152629 94566970 390541901 957985716 959133805 285918883 896317392 753382537 772701031 518019546 523979887 824631831 873207230 20945192 594388517 852726638 927139976 30841714 48496078 72502856 711286622 521816854 887257555 123317467 577740617 123342297 929443078 269092601 596169571 271877753 291930846 724561025 877790086 763090853 816082209 370775958 704137804 211320630 457298937 2033435 848809184 77915037 363835558 155085837 414573287 455126988 550164170 258384708 460050117 659575238 844630905 824239203 844177873 974354137 985515976 977547208 992543837 119585155 716869996 646404685 969769453 26957794 913857378 478897685 592903555 47911582 776418930 844860064 870148404 466400368 529414693 793827772 980543075 314901926 859658474 726712816 912134899 611751001 771676962 915373173 917653191 983775764 997495987 150704157 829782340 853287195 979808883 899295508 905058443 523298865 870869030 664638966 974936183 194187565 300558033 699353452 866417170 313272233 995157138 557579964 755476123 347888645 650804621 361334821 630498711 643240287 900600907 491278680 694938349 949796369 968262810 981030349 984064311 210969574 797506258 661064986 701381156 568802128 605822696 10247140 538388213 290066441 549694141 586635320 608833131 142192998 454605239 562763086 791742417 152664643 967742508 120847429 400002631 18541162 674318080 667428155 754554980 356500464 481113951 838131970 984180481 625266602 871977934 982083306 994437680 728911983 817551585 811200306 909412563 435432743 820356264 362117468 830406663 668338403 764116852 390556376 584601158 917641635 940814875 650036629 967945473 501707379 769486133 892988462 935358801 673539204 871246125 987428688 998583517 950310213 982092476 302113607 349796618 475595667 601369197 220948242 993803159 619681635 699334396 238565219 902086900 345008080 457276276 230337880 701887690 168968937 309637227 656032922 656450667 681099045 954248218 99331277 675341275 856417494 954449767 189522683 378840260 69569817 905079229 678982962 989073847 51600973 153968647 700204216 862363923 431132007 509269122 32593602 817563857 337806493 571723091 450688520 902997323 110084664 528872053 105744092 350709682 280816121 884000379 460293139 860646339 443507682 663780411 267861602 878061545 51099901 768056280 937719793 996002661 130057434 752498089 98004858 788298350 418912944 847421713 951789442 989722629 206617985 742329435 756664719 828999647 717349791 784641933 96127812 675866478 231082017 237928523 433921957 753509466 673502735 697633860 734938881 751093937 877092731 903865989 663672654 917016715 272442808 948999116 325151855 862479286 686526296 939638913 419160149 877211539 254006266 458798790 897866880 997498423 762118681 776395361 645368484 693378819 503675542 854789699 263057267 322130642 446364630 726311214 902738467 959057415 122424543 148981995 538004624 587306289 517724830 851083832 660589760 814444150 616805949 657128894 61797339 380491550 576048942 778133161 871769563 917109318 222220067 939179002 888636743 953253842 102752128 946782389 212826611 329124150 674139376 861354234 31342358 591481836 109791001 434037133 319383594 986429515 818535237 930363400 240350962 377968695 711418900 982426301 887902772 932241565 733279322 752727466 839689253 958974433 11909605 362609680 619970019 836394634 626604664 751780223 541226557 760184179 561138642 677197006 392000654 460662571 543476394 597123166 824227654 984388706 569315832 875002446 456140863 671271837 497533767 819203445 402627019 788326802 133993833 502085706 649630705 757655964 343266306 690057746 687072153 995114377 697340974 842193569 144705074 433793382 821642804 998798882 774229041 781104360 241158048 250465601 298178174 405666410 623123708 722808797 537796017 651768720 574137386 599924361 665633214 995255035 787895015 884096902 446064685 912571575 394948124 482404087 448010773 778193017 647239957 783844233 178893508 963873476 502692041 784554413 161116065 202907581 328312378 376763455 467438226 680882963 945248880 949538441 572953076 838553416 351258174 541272449 563924460 770286211 864040321 940790942 485576066 789036822 771986063 789687388 135212514 854466409 565859737 902316030 322447439 991598078 341750993 999047272 18217602 55901275 425672702 626293150 571033695 593901132 824529176 992917384 324095612 975377438 235441411 691000490 662227317 936305083 905805221 970478308 980747056 981789697 392470730 621027076 26637552 689883529 420307144 703309667 905073332 953548439 628655297 671946505 15088305 181652728 274922747 534423048 196943262 315166469 817327260 961024651 479598759 756613478 739472155 909021905 909128912 943959218 202818246 479471308 809284426 924134638 788413487 996972599 602676348 846827368 918732718 973598582 543465764 669119615 218553501 940341626 524548213 990369644 337549795 600776782 402597115 417525862 931729554 982225180 436033755 550931691 179701342 719776357 419529330 823216449 261015807 336858795 480898486 621433518 152752169 982197046 337610541 494928467 997868669 998140014 877323911 934455801 501817975 731346873 698174606 867500317 331102328 477887245 584992021 869718241 337071891 372298742 124881314 463519244 107710476 342305512 66929915 975755927 506511264 914073213 159720579 489638892 556996724 959659063 1009618 920275334 621108915 862439531 274529351 410303170 758359244 915017182 624962614 677350096 951493954 978699058 402193235 805518335 244331692 967750745 606817863 709158682 465775590 852497239 676424916 984168860 378047621 966665515 63319503 898150716 976643728 989608437 501709853 760542177 783265959 982888076 695533210 968607249 597973481 731411306 480685277 519643863 876825153 926920385 809101433 882120134 824549901 894581073 606203697 827548055 360007214 484978347 164819431 867440023 425861318 697278203 55500179 927270863 71612078 215921885 881021430 950514346 161451721 760695942 975526856 988221140 777488076 778976947 589698859 887565142 393813018 867293872 298430988 402855271 420247600 840570991 471211937 841220943 52989057 129696617 854888967 887950135 741044492 882305441 172638913 260565304 135356870 257012733 925373262 984919560 901211953 979089168 370128829 792702536 760718601 991632683 108649045 435275282 36744610 406093067 90978576 612035122 913979687 983902023 24714746 996001466 363523924 415946171 973250775 976877973 462057076 696888597 7180219 93339940 951264093 959172319 989906373 993831686 469454965 614494352 22943737 715704889 934448347 936150271 657840467 813912291 597423527 753553524 507829371 783127748 63448784 441983297 44747675 215126092 423245830 727175281 775678987 989465993 920243988 944776670 398427429 732483778 162940285 925796832 147725931 624272665 67721595 302133387 391666973 604137301 346703220 968178152 935668121 953737802 111574009 792835029 939311394 982160144 762009953 817711627 689768979 866488411 301522912 419247810 301916480 980253423 507794760 846466835 609974660 812978556 643915117 719218213 200949812 448646442 921916638 961668154 798297098 821272011 121118875 562189928 848551261 944902966 673524659 977027080 59707568 492869292 56577046 832822498 861542084 928805031 254161579 533423227 869686264 887708392 735614659 945843873 128383414 808650712 164291973 348177286 106972002 291268658 840758128 986269890 264395337 394938820 913871557 935855730 988583482 998861161 850195018 915304485 586505917 938800514 712923922 918938001 676697301 950439674 799307522 810870929 837052114 957503802 36336888 788241511 352103843 577261469 586543410 992026913 77821115 303094314 229856906 696531995 808667930 944439967 124486972 957285286 515387117 777215332 302686223 780724940 540631526 756414741 481494087 596019743 261105365 824036173 572591551 645770670 29750354 682777470 217451675 804202229 781602193 987533093 634851300 960097112 24176285 614909312 992478998 993182538 321054088 657690711 30464532 846831343 650064262 931998153 801185049 991605278 517165800 617144916 997761110 997801915 327075857 478649857 905937653 930643517 855288187 929448865 474584223 883946959 931801001 942080129 928900929 967510187 325539131 971302227 496279015 764594943 313543396 832620011 656330658 721011229 85914154 519326944 214925135 272274005 560444413 755084816 764491426 890850203 35090972 412944324 125221402 533733897 629613696 969918819 503430266 946516035 907652882 980036776 288681227 585891186 754328348 762765897 443135208 573816287 704708566 779929491 622088986 647300226 567467451 767888204 316761802 394733927 86865388 197566772 752570643 996484641 857629481 968209502 262658283 676364540 186356246 299539268 13560584 219828980 501457914 899786077 574206468 598108053 869660159 972061966 72570173 216182773 318385161 779974327 699547481 808035619 256928259 560135227 815454577 957763168 634983568 792416126 374111529 725607402 448495819 505618302 955467325 996363456 505223421 551344064 892041969 956128050 930035847 999357767 193963538 231250264 418572113 836390892 513413851 525149313 544104128 964163991 970035647 970674413 977231729 981988760 18755261 748052355 423027645 549801903 776098314 974667413 429421813 997554351 737986555 745859927 364194649 918884085 395945940 955474755 876428693 956885995 467940372 730304423 462866411 965132809 587534785 686323911 433943952 578405514 108090001 893613823 334875540 720472551 632796481 679508367 38244952 782471355 125995335 980783466 230225266 986490737 202342920 849444225 653998957 956837367 605488872 736008636 54880422 969247510 15938433 691634030 553476095 565318589 454905268 988159094 546598205 886377427 442916742 964228196 619200292 634151427 407239044 654159525 173484630 603322192 487320478 626262349 839238890 888433375 844538991 866342931 179017383 276554565 615459641 787110035 977922864 997414906 727160585 924293857 818659093 846118529 391054849 926543195 894554425 968851940 340814965 649541562 142424429 672376435 571156483 670613394 832316157 913808771 342654637 876282605 930947537 982733209 70834335 347368779 158033183 353778180 431211787 677590062 863319310 877611877 49609564 697473286 840188978 966517918 484127719 703851604 312928956 856702465 267880472 434403080 656623863 958110025 315626345 783188059 856388091 923127271 498711114 582598265 834904397 877605251 206685447 670181509 887582267 982259304 159684644 934650899 424041596 768305671 834923822 847953653 907683046 998446925 952505767 986716869 317343924 712977015 843688298 938907299 553502540 638502075 467219030 972352212 824960874 856548336 961130027 986573610 694653630 724797209 677155814 885016486 537989363 710472080 361282891 711768280 919678024 940361252 17837046 208965846 276321430 629846137 90463714 757293048 397726898 442065135 857443227 923026094 565502817 973923833 621642686 661778013 504246805 807379100 47872216 255968467 767841432 954442133 323496755 825641139 872338523 971333442 592183339 741095517 45226199 923136438 95974549 165204929 196487800 749006337 443942197 838516374 670618924 797245485 983908169 987704020 216328678 756183472 899760283 974925148 541912155 711274338 564418865 927439412 240606506 850589636 515332931 819574824 475437422 724561188 293167834 750258830 786422285 991456736 230486248 893684648 996189757 999202142 687104565 824561367 800605784 867409553 739821003 779627345 227721132 250903864 144697982 416026923 205659798 943276519 130317435 442829914 955867796 996394647 415370111 536736871 823893295 880221186 658518036 935342223 764192139 887994764 224941312 792081635 764389666 892079385 96472980 302028406 504215139 850635411 246822953 369430730 455304796 855430184 901464265 968438468 278471822 805982142 878462048 996809575 950928631 997289048 894861969 958375739 702646250 879245490 524224637 658795414 462387418 870245041 709141787 721584492 998101478 998308263 427102957 512456361 729826991 829076633 541197988 749201328 168524587 355999985 997202040 998466445 75415289 730745619 295881902 965155612 438329589 832792379 368317575 989319001 397446898 756834482 635212953 953402448 881662284 928686513 174594174 777331336 124748472 752063943 168557757 749619080 610494394 717562448 463146769 595465534 273348510 294514776 432717314 774022531 101209439 641417586 108968373 248936726 649511879 839910359 149960387 895232184 349727734 620112562 769301199 887268170 564985706 698754051 945980017 990602785 431568998 836410599 77729908 569289283 213000766 331705553 164119292 945310083 119673512 656926494 269363458 433749191 916573949 975481540 499964916 728675033 664238300 912073453 627890651 976243124 227869695 695188672 903098512 940923711 129727311 766099417 416311319 801047429 170566538 277087518 433987002 610392424 921198501 973120617 992434391 994180339 387512336 448260840 186499610 438867592 626785082 996985373 639848760 684097692 904860869 955466664 724381934 848525853 923510126 969097571 496710636 546634684 151153946 290954851 809221244 834878906 168925495 347478091 198416773 740306707 672189049 797367508 816823861 997219353 501328650 686483700 976189821 984835967 609083845 611587979 474396445 555497263 157850279 356261068 942362579 991661070 317056930 342731492 452464180 911063802 70501460 525204411 123098409 395720271 831292388 887541926 632966983 731936728 462926933 969501554 829880970 997086479 645841479 930297032 373205283 693691050 884164050 912438653 245245528 857595800 947785004 953866172 138453361 176678137 527357999 593292616 426145817 741426605 791675184 982454363 625567862 642886421 511123334 963005763 649368268 979220215 850095832 975334715 389404980 689120933 911869233 924972650 491943275 620991569 185308406 268631800 152976343 410698571 335575463 683044711 820081454 909694845 705027180 755595888 750915787 958752830 205987416 367547902 806909764 932065236 946785548 986213496 387690016 607180759 838634558 956394707 610695868 836926093 224990674 284578966 953784351 975985529 573776918 652871819 708678934 955323717 833890905 842606446 779831285 978133438 759359803 847488817 887214152 974406955 762810478 845535523 157741311 177184470 617952508 997919207 964558705 980505061 773470021 944492905 272212975 425154366 475948485 936837188 244421188 745565761 156402073 627198856 170826805 374837462 820939178 954229709 821522927 881383255 646463528 796066656 684463949 985707816 483733842 947997041 967197713 978879172 550899981 884980042 619998721 815691929 907388325 949573540 287816134 426551780 966771151 993730003 756799820 860083151 212626270 412037966 518260207 528124725 719440546 773026123 770447479 813913165 72879137 257001016 651454362 700801348 96069615 385658916 395699113 877249303 363898889 620169100 175022994 235745708 589904675 638589343 496027515 822349435 359209680 742495466 340930204 474942449 827384926 957990201 887738267 964060476 413484237 663019483 559273247 759638425 409933800 760144318 204438219 603437698 991590152 992533478 579821999 868952029 739085494 814796045 17735970 954123093 235509926 645924445 803483329 959011713 655109778 690047756 467560367 996639475 759066395 963012388 99559696 117889628 391783928 851340261 108614040 848192959 964398622 997537103 428394877 556634037 476783726 638378854 776497722 780661722 356256884 918507449 363001354 493606623 577003224 880862287 197411939 425322365 950631928 967184757 537795913 863330954 588353148 950830894 410880606 770229881 815057547 974771007 166220491 526893353 204125368 902647390 63404973 983969093 786280516 994075019 688749181 691175592 428512707 509231389 68104982 346332029 190983586 672698518 343588360 977996152 137887208 654290882 531131692 795804647 216813201 321231710 428056424 477697384 471991070 555492153 410893730 869897970 216189982 706929857 59056044 928749942 212970266 658104032 490581097 756125234 574363594 768566764 374351911 754487521 879079069 888362361 349800477 352906091 984336770 992814400 416674790 903968817 558290764 881926774 617551136 768721603 95918103 474691794 152801761 725548996 116969667 446792941 768098003 925934675 558364384 980346826 609392948 647289045 729731938 941712250 130289446 617098005 926329211 946929948 970277541 994269906 226473602 366072879 622909921 810048420 337704445 403474821 317570109 902148742 756755777 843875316 142694515 569734591 854769932 907446818 295385885 495415311 427286451 507143535 748179850 758776412 9331927 707860222 629383266 835602714 919358189 970873941 912860739 968530147 571322126 986303576 31278914 468533089 554627008 848240850 973349840 996631065 63841547 694926311 141518214 607549135 334265032 419781182 69702407 612083905 440878462 894478525 626838973 675319327 80112248 710361207 531419426 723521587 540134876 760110847 594226451 839495596 864712565 881814704 707237984 750833132 979715432 983011615 138538009 314101914 480001419 776396523 105409001 904533621 822553530 906263022 802195439 902413393 318984338 745527437 462167006 664329380 4554686 29092190 133619125 283800339 485870382 862013065 432143252 588371577 560911092 765641455 779560383 864809889 856838130 880276541 830831159 852287773 646677775 740548588 994927441 995950250 82970052 747941484 378151015 813270196 915965927 958304677 472891697 637064788 646946774 977144137 42389742 961582686 713061582 943183966 704463190 930686836 930568039 940420728 944837599 951278275 660023487 824190621 672347056 787694187 617660250 724394086 23527366 740515636 698687047 894750635 577028042 721633519 309459783 557426162 409783570 697234797 89729580 704741797 294727971 994348299 609394936 962612935 799568895 829308179 928378753 953951427 800106215 929586572 382183302 966399193 703838442 918828818 409686817 820600546 148581512 405049034 228127989 536439912 822854563 853177398 221802165 264623493 612466505 862848989 126080155 672067488 941033791 985458261 112793407 309449550 125773122 790716593 838993706 926206766 875461543 897704300 742335897 769820821 515877108 592884444 997771652 998268062 683751671 705768044 180493249 603048781 398972717 984901685 754662520 924394029 285421787 801163446 507141438 695678978 675892783 958477213 988604981 990921738 604308600 991617061 384063828 400090824 784198590 982017635 717992686 907254214 877523842 965737312 7736607 768973814 575806171 858814848 384126225 597612867 910339938 933445379 822813002 987150055 288526543 410174547 812895509 963916538 145089352 557997737 307679328 406323237 920456075 925740404 356740281 730094396 540926154 679032112 818211681 950014930 467627538 482909600 944397667 959540902 121452920 568335164 737590831 923765854 321457024 716209655 462018700 715786881 234680980 549955508 414365975 436524561 474467341 836139546 286686639 375071882 576224698 867655008 955596258 962438545 291523709 736868695 129809484 909110963 133336614 950504660 962080967 980192092 991485165 994510609 748127359 929088325 824742337 987691376 381089839 645634772 76573869 382350705 616044586 877114223 692701680 886500632 164828006 908878090 725253483 769466210 870077051 923388948 967994776 990682521 673449986 827076952 61646288 271555255 500271788 621109994 92214745 441939061 646387131 751369940 363035207 977952093 89670980 183326169 405138526 895768464 950392857 989755845 640471900 656352861 561553679 564156197 911848863 996769625 153656832 457720188 848856296 863735610 419012208 583054499 241429960 614658581 781878920 908552570 553219884 736365610 453892457 913046956 171576292 936375805 71501721 90157155 940992516 955053399 419871763 842811363 42811601 938090897 914878230 945996754 438710202 700384559 272018608 962248485 409291579 745763338 657864597 775289171 529886973 772062092 126691979 431497742 850584487 947233829 236214125 432924482 456555456 990784904 546267899 581786409 135821052 501500613 475676179 735204193 369937136 713464862 823296532 994633692 631894370 894863463 405778086 479379594 366502980 630550000 68513397 605046049 961902207 966914475 434409682 867798288 383399127 656081172 170855556 721031453 576623646 663161015 691641447 939738030 899861527 914909931 700987306 848988735 791272918 939649783 496161371 985502174 204256888 206700885 58203291 445550361 692551328 931945327 422737343 508808330 263021576 689437537 33034917 305823947 324157806 488144388 87599777 361221380 784243471 884850212 453765168 689134566 291758437 942099708 633961238 649122478 849090537 871115140 221572368 889628996 762765783 773838584 121928939 622922150 146584377 751899512 15063699 857424669 47075356 984836141 45564969 682777746 98645366 434004241 901035163 904301349 840765578 863938840 565648855 969570778 234145369 911352946 923353705 953889113 12967546 795488661 45100419 626378043 366593493 741460519 551311449 564350375 596316196 649474041 56429054 326288634 230057286 755595376 212483069 753119395 751533703 915986171 544907383 694825425 921895129 950798438 33198033 389651060 838046891 890003937 439116032 551590199 468761784 973503578 892227745 898951086 881755337 953138283 401457002 856966004 642606304 963402828 314468573 428827845 170019458 686357063 888794787 973744356 837243973 938783953 602029006 632259574 80288473 696256035 217252344 495570687 825914839 954135567 688953500 838646176 101421243 753014032 633871737 985777245 736472040 815629724 251779912 814204763 181455862 895103477 445103807 728558452 196943358 649233008 292718174 411399830 673341603 828238703 59418938 120261027 65476784 422612739 528792271 570349387 547878447 621232283 675250160 929312272 270914786 970509360 958370423 963926162 510661627 696058583 189871064 929125383 450695229 854871878 60105259 859455328 855801952 995563437 253642777 508965830 379869295 401140992 267932382 585530389 368083605 526425193 846997943 902351023 893952656 946002298 715167742 920209160 27951533 806977027 145995902 413286238 231434286 610095531 743792215 890141625 971728863 997475581 805159474 872370584 505920946 677076355 3644531 677260875 421629854 439476351 117887145 845921791 362002302 443422344 177711788 244613084 853154068 938136090 944167384 948345852 672216868 738056160 395145627 523187811 927591740 972606577 435684369 896156325 675693366 764217588 204062927 945760267 228929560 380716198 616004371 862596507 815596208 875241860 760279862 862921743 592459790 923539146 115233472 581969197 711551109 892813216 282279039 876639988 768793897 890289999 81369348 818324957 128599399 562153159 176935555 384724209 438246143 692909506 657171968 773144255 239060495 832218023 805783868 816119279 996401804 998058174 962504659 971038393 156683249 949823512 734113230 858718094 520251609 912187312 846355913 931443728 37133596 236053001 545433088 693669258 765490577 942615203 849832908 917943567 435679103 650846461 852208995 901353885 688679080 752863810 198293798 780455799 154332057 591677306 554743447 679398076 437005166 677413375 677343759 988603961 154343083 612900390 320001803 391779320 799781100 878415787 472681340 497180329 231195693 930401277 566929839 693037466 455536383 938362690 57189439 515264220 955530036 994024606 723477578 974213390 521936554 549436505 549246414 762998383 786985315 880122129 671517862 786845597 247798073 626118308 573107958 845411211 1548322 9589863 974591235 991957432 633748401 985318159 705053464 836029189 781182218 839817912 615089619 764434947 565197138 917945977 79852579 511060603 615848116 867390485 26059245 819204550 422703575 559188545 727570812 853481146 492513075 693764385 620060763 862635340 773834842 882982661 311446708 528167774 799367397 946152905 119697010 948009209 56573625 650664722 900228819 976246763 597627089 712504875 422534987 841479545 813010225 875573064 349225335 465085331 571186986 853548063 65012095 73949333 706579285 736776406 550339229 594418486 320205902 803883304 67441502 837989892 506594686 776065075 253903231 719629300 176989496 567450092 20408019 564269282 102377923 577796879 473037664 617059240 59444390 960527842 109493532 579709030 867999976 898993001 59188024 581128717 266249144 440481820 770345225 984183553 320848778 379100564 96253082 281031880 688950864 965606705 542840388 593412700 347352296 782384605 889093662 943209228 401676987 735769937 868465073 958864394 481301387 980954119 723576607 972588099 368872588 377629434 792895806 992495459 321992394 416670895 619017120 761804194 878473104 936623959 184112748 425047540 136425708 973935187 598330688 926615475 603653847 998180776 433638436 884368402 301032347 478005725 112161601 230063667 566365391 650736143 679150948 964589826 694054850 777759928 883386487 985944484 475315230 564688578 308536014 869611286 103128350 439216494 494107332 939992604 701481223 778289334 638659896 944174485 525841242 730427750 639320134 964001223 429090215 594568672 173446190 639667013 149695732 588621895 764270849 783110652 515047067 923606428 811539703 861326004 343587360 665371958 723792727 889290263 143117855 840307411 582464838 608555888 132804843 812926180 166285195 374976101 232876911 323360922 782917269 845766331 842206933 969252963 696918571 949149196 485989725 632687907 561093325 785275546 193601603 449224341 96283942 863069132 83250231 271339253 446848491 958758617 702619653 771124338 271183651 711105577 940489364 981135182 339706705 945623804 32096490 105927183 751015658 947244303 583014804 609660793 248084559 730265999 522606145 993708790 794323597 919034387 900678206 970596420 846357400 866401931 435477744 636375345 854274205 983547616 546443353 992702326 550048660 927303083 867026726 946248082 257155792 740763240 548233603 626924645 17367469 219548513 190882761 292295931 24960508 287885708 784296626 909023790 695198494 966748762 944257094 960450549 649102403 706358065 372316273 972447877 39912200 97171620 409649660 772574771 100935587 227799673 837160439 997250141 393218886 449956830 7609711 615286979 78366257 446357172 244546049 976191414 405394342 582525680 635211479 770937395 944228363 957864867 585573083 778562863 112203355 289426536 180600601 361225800 250663018 252931848 910904920 949422925 37623697 785439671 644729450 668170769 208237466 760915240 915162902 987307118 482788280 692544373 257829758 534072125 615705847 992488948 85333426 988590594 317646475 411310148 129436311 420235415 324823056 708733774 824114309 911602375 407818008 917691109 223753377 855865723 28263201 731171688 484471612 486287715 85905615 403136867 370478990 454204079 440968317 677189282 124412970 235278921 884815165 961023736 577326033 895499835 525392238 680423888 885465435 978531780 416048477 858653436 72777704 837668798 403022275 559031169 579667827 873288231 932249962 975943997 655290220 810874075 657350196 934347706 417825011 447401567 296395679 647661190 119997772 568419400 405502830 742637349 898434533 992770156 283711193 376913552 527096571 678107946 847247911 927193828 841909615 874785655 789190805 996034977 250316093 823007789 83611760 592654880 174121654 705881688 266739427 537979255 798219993 956332895 580836207 720298393 464253441 701206245 807607582 937641630 113448978 903787613 85029943 328110094 898053579 923295798 526233052 935156305 749245121 936844141 831392736 888315613 668027901 993905361 906523125 951705214 480712472 979350314 178868738 277919251 441651289 751395025 372132149 615229487 321150306 964398469 887490660 909892251 521119520 646725907 187692561 870947996 726035914 991263692 342790933 800112265 497014405 505144117 223213317 550220350 346936755 593485860 109596030 951339053 832074747 910862723 108884790 606762446 514635074 545326798 130830175 967597833 854371710 872835712 978916613 997060431 551704397 556536487 268591128 490517265 748251202 983600236 551744814 935428997 401744784 533435989 714121712 728570805 154264727 745861076 97010981 253209282 702573501 893387808 914524189 948174916 169805942 292230186 727764699 820620789 630336467 709501675 222899735 390825904 840718552 959299432 301649110 519559181 745397222 902066108 286954789 882023166 139220061 467328397 637062915 697551562 553258234 925034388 554134848 903755361 630743724 667778206 351578062 864286749 732137525 795959760 209476096 302358267 779330840 819875148 128927986 562802449 120878888 779062000 753989302 948374193 301674499 845628150 33640166 739020756 77526174 887146884 862235188 867543610 923415804 931277157 832204122 906779237 255478020 701360517 134320063 299433632 563432128 632543210 32822977 262972119 568593909 798195431 165760741 347591037 978858241 989480829 515459529 641646947 737780188 906840360 434335953 523674178 164572765 670113386 691014339 761305029 468661918 469599241 174643125 307332750 444842952 975539744 673868476 974568596 776834568 790958561 486267281 988568861 879910143 928833777 987375757 988948193 18292321 200110989 596489627 597555333 410592518 582885939 656971133 703774209 831135781 833087452 911324198 930085193 41838519 990262729 684484199 933023723 871367147 913781901 913843736 939648939 561129412 896913152 969610162 985722945 623689724 797544274 33528168 605354677 621428639 925474537 580952234 811154271 997705651 998490671 671698202 744701912 178591802 796016964 849690063 927966352 964452432 968911782 284006452 475040672 893873817 970308652 989315348 995815807 453208769 912512622 66873986 770776051 716138743 940113428 517109455 855498544 841366549 935563712 379980127 776179902 791714720 813117689 762810508 983886175 739888069 760761927 67760432 845293875 659231906 895005613 178267332 668678409 638649307 840223162 442773393 943361604 76923037 694044361 154041722 965980988 831713944 955420336 967741244 970458170 417522239 431364324 599170922 827411790 53524498 135477589 67985886 989673748 428397164 927066225 832881891 977987253 575564224 624353418 838369975 854905731 373355158 693139189 700279721 800559685 44229136 291683757 645528056 661703798 218499767 575431181 285730102 656678682 162193325 729275838 475741467 511138960 359567756 505607845 566565408 902273908 57809546 665722894 833589484 873622642 149614046 859176257 147661044 470269358 151105826 450670350 841790994 904229428 149091499 600153764 355948790 663264771 550630465 566671233 857466825 902120066 929285102 944952726 790984588 898696500 462009048 771268019 276555976 589610643 149527928 184034249 858037967 927757440 718542424 929675530 862376441 972452723 435876639 939480831 956722766 986187709 904036091 922075625 975624006 995316367 2037131 439080903 86891973 211664092 232898611 543105425 931499901 968245291 902688990 960480367 627622302 809102371 997902828 998950062 558333493 713639857 666652547 907414910 413261487 829475174 867011318 897582500 56798110 681314605 755281502 794389320 911460893 956396422 416381258 843669495 816013693 986859805 219014746 423806624 111525705 918941706 941192689 967269986 520637124 991250105 537193909 614431283 739823131 979998814 441043674 923410295 211720245 659958341 223562331 874648361 710782521 844133796 218477056 724096724 420603557 537002816 331579577 349431417 791824115 971904601 459579964 887505734 820788587 880482036 148395042 178782671 144598784 769165348 838677208 897581266 632568696 815145652 774415411 799059254 307799750 877662804 78158934 273918751 883215661 956823381 528133821 729933826 245838959 496046840 138598530 626362261 82513028 470044778 945781 998626408 661613324 966489120 843710458 963372087 866037980 942075405 863114107 884365200 497767592 847320321 106782384 590621521 340553964 527406898 687772797 998143509 29644496 945025895 223721477 779795951 138601631 823815932 970288127 976707421 323027155 840869179 140011534 531030923 866769886 936459851 212894094 976909294 598081977 927507984 97340989 207454972 217223380 871099607 197282674 747737213 99719819 579095929 287391393 685121184 594688176 745027189 71961227 503821355 409369621 632241458 355329982 956003767 386855780 760527877 945240811 986142591 612989793 844714271 114967785 899568785 367058282 944523121 428817913 728507112 678388197 797938567 645705884 709556041 781094231 942073219 821941828 955583474 638189861 933484923 224887898 310998523 410597907 767297056 626265346 757771823 429550886 703605179 760757900 977689836 675570915 987563270 750320823 948902744 238851560 709961833 293982145 467203439 122979181 414722684 515695678 712754716 743623416 938103465 938183827 939683629 929316415 947254599 470309216 680045373 399394417 603362612 260758716 503720571 642232576 714093712 558926457 948328349 61856492 298861811 894897527 984508124 262834115 438503822 853704744 863458833 269673357 496622510 83535167 460295387 408597359 952493541 821221259 925600588 220905227 820924276 129710296 861230796 503627150 775563596 381689970 971553590 64261226 341370311 14587701 900717326 63741130 489945740 879045362 894598539 839261073 869826815 754331395 833072687 751276463 940838543 201768817 604166180 354995587 637911992 980332424 988764293 768000746 975403211 476796104 729084762 249572431 579070294 848666276 853381268 880312927 967785485 940590446 961797073 652636295 690554844 53453736 880785465 428539983 724537055 440851031 947552465 108202738 503194398 723871557 909977670 193624324 942871200 809254821 865380942 503038001 891229493 595666878 892308733 732347122 814349052 28199560 278541959 277456578 857438714 407527209 661417385 552878100 805798280 643942218 980564481 187229763 541093182 920398124 948014849 451429765 606019253 421968450 603305885 993535304 995524186 17080360 20157108 47023214 121265181 609896383 638403169 580731102 748504908 590453880 971135281 506951918 927301048 554941822 741289381 384252022 596308449 726178214 905733579 693981739 908885377 539886478 896296538 142468415 254555392 958477669 964828634 696893174 800963652 602677111 772395422 651015736 989528397 780229961 881739694 301196207 446045253 195235647 487905995 11999953 431578235 17346016 634168792 355176079 780578363 491559249 725623320 193709294 837704655 609271487 695212895 369257438 791830609 489743945 677938194 485930149 850515084 88748158 514289818 24124660 551757899 753303993 779796871 154549770 285860269 814901900 984455155 473571915 719026350 544926007 551526204 465737902 489002112 527916357 804270168 766391758 938059132 176587515 523312171 416568351 897974569 445111245 490642179 859411222 967827450 125723893 290702340 988962342 989536839 652163209 982942252 806983675 870661390 280412016 286735983 268397732 547018613 542507918 745373675 64026705 668653438 968808223 974144177 903357976 982750051 66912121 351773558 652116593 883272308 274746571 760665637 73263551 699472496 868528746 892584842 86723865 205676291 781087058 924329804 797906441 819093878 641037082 721289646 89950742 955656476 186675995 634616024 405737550 578686858 988036551 988672493 212960851 288844329 684819070 912972012 322581643 369263566 454281069 723387985 987540284 988920388 323981000 597402943 529925865 652248652 47388921 184942577 913368625 942456515 743850525 801593616 694260060 925416095 195130182 758564068 975523195 985029057 306640787 709625974 458241685 643515638 998450386 998909264 773671458 875104582 276241894 623602876 860052679 995190306 919767063 985376049 319710362 746170568 495886294 739122699 182296083 357139668 50293348 529229186 130109168 286159519 926626390 986017062 50871730 545168161 567583843 972416813 281213247 979430608 738282977 810396306 286701317 684013277 141081724 941847625 706097089 905041198 315990643 762484629 786524757 813701571 636463184 683198693 942945183 971119091 882085039 945697026 544127931 833946536 908636714 995092300 558762873 901784692 486499398 971901475 388170821 898667994 330241178 877442387 995724435 997533358 907787249 979322611 465356123 532080303 301971272 519550971 151703547 446372530 304627373 772816468 984833739 989168267 1797826 138915813 732913229 735965687 594603136 670350568 792524727 961675337 852619435 908794806 332095760 477031416 68335424 736763790 673770020 832907492 862584179 948897149 983613710 985418254 656538761 952112707 433849567 701648356 647668322 962594225 574132096 880268584 871291812 968399944 648034785 737870725 341168693 657525661 51475231 99329239 554887372 667121353 833292682 875637223 863527064 955911101 505161786 771665421 741285478 804453303 888458526 934027531 60474244 571821968 616116626 638354936 353032445 432624367 410547729 876978590 341339639 352406229 757034286 923411389 85582684 146098172 590304898 966237492 879309397 916801617 322467164 932976660 570269074 856548473 880473391 886698536 960528026 963392330 375928501 692935301 70653149 949733925 183409667 321807314 707736427 757928507 347702294 503626561 197038578 410411606 793912680 912212176 834778973 969463513 637623823 895273403 573866783 964884969 30651953 632506589 601083928 605554987 544392386 859271031 847274932 969916806 503337610 754395621 372309338 942701135 614113028 962823038 708211293 721309010 358903405 570001118 628926291 850524508 255476671 611642791 58205469 516668917 524085934 954464742 108226568 373911464 743898733 859346939 261007701 281809253 348581734 772735578 914109637 997011216 874798031 932707844 333024786 732089673 391298472 838220407 6393343 13318375 577855444 689649503 565235617 759911259 158723177 454060997 475897583 658573951 41078273 506289461 162866444 838266071 655708966 672743853 753023493 924004093 733111793 807080622 636489773 882628553 12207985 525793314 968741026 984194077 772597603 890653407 881056547 970522153 211791306 998852789 25430541 320904845 552804854 687541971 188809953 322235834 704368549 992361737 34152714 297894506 346528091 704743695 391589326 849613017 571116298 932200647 305951755 940215101 645559178 696553361 571094759 854726635 669313104 752310932 661914651 897376855 534885250 856899285 834558719 900282685 851685119 906750569 621055991 926404393 7321721 194946168 271595480 884412893 705914779 759646068 401250279 980120600 6280289 107780232 975040873 981382741 882216882 923038166 544988401 915822482 391197611 720852470 259789846 910407919 874725245 916548028 133085101 375135081 846645058 998475108 601458007 815465856 319474411 663011230 558980296 614750633 177139091 913341531 108673302 654836881 480918436 975575156 191003979 632927522 926911218 945654055 546483101 985450190 567011403 675847128 110348683 897252375 166463956 816846611 651668608 874209479 167646924 541541680 420205718 740549552 558530268 795093816 653902963 686057362 420223184 437772265 304973187 501293866 707662856 728210660 267101973 614933332 753281767 826518611 182191857 542607952 661527314 915432417 444118241 939090968 377225865 690086576 520364834 667852009 477611148 923446679 811735918 833956442 258769980 379668968 697448040 766473213 225561507 543825651 754803229 785412152 746633670 965177071 331146330 837390383 774532254 930917176 610889355 946251878 757657713 973001362 574772543 634973193 591226777 952996352 766503324 967306920 709453666 717487612 574443567 846900074 22131772 732494862 189882557 659276883 676143767 847317351 10040807 419652524 356316969 728171566 128820740 917827345 103940583 964900315 583256741 625532980 408583667 657633295 929166686 974957118 799805530 960231897 286230468 789663047 87499728 410734678 612707704 694351885 818915007 884155494 318014066 460696821 898206142 967875222 109195942 636239043 273299111 802908704 121664890 692139307 862123211 898927539 482482501 954590141 937822978 942986146 930517396 960493418 87607942 695883360 771419714 994598297 506407285 926037396 458255386 720430140 562269999 785474604 938701478 999057140 366684610 559480144 876230338 924622730 671785425 853415916 398755290 498302454 936555127 997247561 710700262 886902653 645909608 712820549 670615050 834278776 156014238 834696046 841356333 867542444 915913822 944043527 948624106 980085940 404097564 587872553 83968945 978823120 259413440 970719933 177783489 340147946 805971070 986200544 582871411 953858165 939517451 942008892 111880730 245492716 256664994 433754184 418732092 566747529 550820010 600442563 242698489 768395561 616258692 808626984 327608868 365228776 900615089 951676420 647893353 907638529 471435453 479862300 804501212 972770089 465698024 919971409 834232032 927810752 750507534 774501168 502074850 927208876 25929593 741828589 726715566 756920863 460984570 749381985 221332160 330456557 272903918 901440013 645533246 846623343 918817686 982516419 286137920 515619340 828645022 980072936 506709102 739634829 132879339 811372371 55883525 522386291 234493408 983029129 63678318 864891292 951564812 953236876 654487760 964991341 488333644 616505567 57519299 558884720 45180527 242524557 592887315 953917543 420889005 657651647 318461442 747981862 336203298 904461543 144602223 252614004 344090945 752831948 898509021 974144485 954713170 998391817 935386291 938521947 377496950 884505076 407500435 769254320 56099533 260813469 735719724 960215171 763366845 876690124 142762245 664734350 606481604 970752359 962286191 997523151 404673375 556386566 916537465 976481472 787625154 794791037 35938257 290906076 685540223 931550679 942980461 980012502 428110351 775561245 245675813 767522743 674153849 796319653 580013675 730856939 270105808 659418620 538468253 820908575 883465196 929438738 37655874 167991324 241214361 457536987 192274908 529194442 226296695 607629391 663417004 970146748 980296394 988536346 25417955 338548822 234610833 781570360 66160009 717834176 651205434 706048075 139204297 365697542 277858045 376912676 940547224 965836933 441893105 562894767 115935318 912833204 413520996 546531548 721023406 929830932 808850231 948690138 933574028 967222786 87817095 669018727 928152686 966181303 677150943 971077944 860143241 889051705 114279478 473304397 611983306 839144001 406546209 781918457 665910541 692528288 359820124 699602272 460775194 982321946 895142494 908943123 380111808 997052866 65180787 466870990 110935391 299211738 278644059 676562571 81503353 854289710 217227877 535780566 19758983 549481705 591094672 877175919 953223266 984708284 934832665 944930162 546715734 711315557 371014679 599396449 716291602 790781280 360773415 471363862 695706979 889395298 60944857 170353062 18716733 826661514 648985304 655722240 462210437 872410925 97542163 165179034 474465266 907855716 244544420 652949752 599232053 639303746 650308409 925794914 387913569 684111638 738266825 864553798 293192749 420859199 821421013 975370473 857543317 954961324 994358864 997119794 759164777 789549436 75976794 745140289 140162544 224661861 545219389 797894390 43047083 929843211 692461739 727856329 130720062 157504257 569863487 965486762 147029477 601520766 661565447 763971804 513370682 670221464 777831045 828932788 947628815 974430141 234312674 696256176 262308694 638315625 474335128 941084409 939574750 985799990 301167929 779374708 961089067 988423244 643969393 964687298 884621804 989899845 721079047 939897289 74502439 710182635 869150648 881400506 685776209 842759913 62259371 198860520 241783146 325341885 635989366 638489213 416889670 616259362 131042764 873482412 714664904 843144915 469191359 877261147 13294334 279584751 556272964 649432165 296520514 779609642 558358740 962259433 968350398 987123142 711213475 958089941 704374226 894926257 605154513 763905997 83829493 493705210 65309345 770438146 296898324 298676225 602560064 782604190 508416325 636319531 652119591 984327609 32202828 451711994 202201327 230274127 427945411 711449968 331417017 400510593 220857932 360961223 569055341 728072785 100366940 813687071 574769520 986964464 172481316 293554425 545992808 692445287 66380028 776412381 647728050 988729302 18000591 137183409 610844511 841991537 842251984 895866954 848020603 890577430 642264351 658583400 369104337 701592438 707589090 878709394 654535077 763658180 919555530 924961492 730931883 850591364 642639453 906271761 490293846 517009361 612123302 867789018 716906429 756831098 880115698 975936688 432546318 756672924 362566380 751554257 917786410 994982552 113499490 397729982 32455955 375730208 37768468 521320123 267964816 921722010 992224023 997738091 599350278 666124621 225201214 940604696 489444455 640202942 996102227 996453140 684060810 701264318 484325137 677962597 756742238 936468301 976692346 979631914 220526110 913175358 296561634 393189408 515927300 883355622 75939664 262937299 424373583 601100358 62648662 898983580 167872032 378620236 422330087 732215404 650173210 651798770 6531908 754436664 302979781 457404136 756615497 946560260 402159571 981406649 228258936 461330698 749351282 830074737 703202254 942453461 169700920 790113192 49655681 525847159 910319384 958423032 382057276 577535361 799506225 992493185 106814710 605530110 838579459 925373373 833133648 977210988 316757876 868678086 377587244 789140735 783829905 844359403 624011557 659778264 884628354 972320475 949724406 994361915 655133389 942902720 140674441 615924801 77536511 349686323 645084519 718624447 376468270 836904013 37684742 158681157 934006915 941970817 303587612 745590822 249881481 346262800 609485672 622223662 485199902 966644966 268074391 863039499 162324935 250004371 821560369 899165897 249784749 743481709 304634892 671484842 681578893 835083723 982553228 985638054 340797908 501331845 479670048 821015538 770044975 775109428 918490747 961507183 74903494 562914595 68202107 971025322 860899058 950529169 190442190 452448468 24093969 346266601 653856566 808026339 109649879 736578351 748987103 937366189 260379334 458694905 562119070 644406268 339756194 885946467 39715110 523592700 476992693 734973605 895252979 989452875 326052878 943412040 869972021 971289107 165247313 554618874 141982004 611910532 786690603 972837942 700610061 990372887 54648929 831693785 153144164 760362974 781470280 805907373 8211567 14378790 707389982 721551409 157672917 761028264 953391515 987377017 62726262 317285998 629387372 955999310 873270285 996940210 470141704 900318170 324467577 737776552 893981188 936941043 279580649 280558677 294115195 875127191 901768160 933767135 815168757 993384675 981283917 996585832 66107058 592444638 796018100 837235605 93428408 121940197 773862294 986870406 272351197 552626726 818132671 952151025 525121804 741645164 564629807 737532171 886691 19732370 523934339 833472591 140472622 644019782 928013513 960493046 522476104 772622918 652543241 805510255 677753168 828308908 572729654 925457187 212095253 541359187 143169235 892062650 202886647 679924730 407206960 847351666 131769823 289642451 918423244 974139664 925154990 928392996 791775256 936057248 36716924 714366919 984819702 994335366 212349286 836562458 39525937 152681890 67323835 706299124 271901263 896581362 813394747 907884513 482496832 816404382 591882274 992132976 601234388 998002407 350760805 722633403 520543580 897959559 564507726 690969407 714716961 734860051 712037577 795871603 436843058 903118583 882104272 923774088 301084870 566900096 80197923 608029026 153306187 460331687 873747709 961036406 880539366 908865297 355362321 885868737 69811182 795654776 747909361 878678433 735347745 816984247 763715796 971846023 64612860 961131937 972192807 998323393 296500302 588437476 806325611 868805901 170890840 258168758 590040443 767437572 50053940 612836424 383466888 795969238 193541521 417909128 448964257 896525310 618104818 937848789 531849527 679781417 531823827 659160947 305514653 406230384 725794239 735383107 690567914 944343300 553813067 686278482 247057357 411557341 264571180 760566084 125898584 395186827 27491505 631868717 918276464 994388956 224989084 726325535 784071599 871661095 991206221 996556910 389364528 586824788 714027353 902064230 259787996 519498397 523412319 770118400 611270776 883160690 659259364 879882639 406676001 948111608 783315005 811343155 539191771 656918048 633228429 986719300 60355560 456237690 759957703 800494984 543470354 982000809 6738085 679441372 618978299 940347927 114018038 555914617 73880374 880190534 761845696 869956584 336053915 742714900 892967826 966250464 180535677 231849651 161968524 330797702 10610298 485922986 27749946 570574590 630282620 719103044 814695169 970873864 981735471 997803031 809531848 981974336 784826224 804878770 360141328 637245031 241237218 742017760 164200916 222122483 566629894 951551232 947608527 958577400 687048686 749937466 93286230 473155184 299962379 477925170 281107051 467694828 718537224 889233557 446476711 982980740 702993542 962800527 470724837 767159760 628459367 868810602 794228169 848414200 9644731 459701858 596175562 883753691 605479214 911629391 977551607 984225410 87197104 857615240 498328853 499087116 714498790 744493423 589122696 637534691 597389952 839013527 640402765 661963138 928766959 955882799 637043897 925638788 742947262 944453743 775585875 969615636 356496333 732645204 381097398 514070228 345901364 771766802 177324054 412613843 583142598 955890911 512098551 966953644 337125785 837055375 812412178 905476902 672422231 818687351 393738898 799242036 720013979 845959577 991532838 997184656 126776963 431860647 818450578 966558843 61785558 438755034 174718096 745578114 570235011 645180267 378502602 587740412 78241249 930461553 838128389 867711346 113711411 114639931 30025595 778548983 475682923 761487343 306971005 849497797 346880807 725284060 10172679 123470244 430714867 974013262 856273127 935493097 599737584 674584115 54682470 235947745 69332699 157126308 145848613 750098601 169593769 672787830 58161343 912070534 996137220 997151538 768037359 811662230 169328092 389479028 860184852 992224764 420793044 736044293 795973557 985736393 715289057 987855374 441623102 953702848 342723089 667514157 620724126 830777588 961182597 981750233 29582980 744202809 108920211 278695535 482829912 843424954 758688160 852481215 538084871 806556564 754231685 857375864 983989312 997040684 388806454 444183597 451935677 552008591 577930478 902101271 302240716 611429643 165604876 698805824 72340460 321965357 537862813 641845045 250874021 943842211 692543373 725412391 460753788 961678099 239842425 404042322 364827589 964727336 497065657 682641451 274334079 362867360 53588158 350632485 493242153 977478685 905455840 985690894 308861373 738298960 355827534 576660897 815449286 882757389 720787129 927917381 670943673 980768060 498864674 639462933 56160812 751973925 151014836 329754910 49406157 565249141 935206854 954127884 369465412 826363802 953487609 987971901 881702659 927528464 335604582 827709725 934448671 967759949 50399737 864454817 401460707 680819596 189531187 257061477 980628230 983178875 22876890 83664715 65329892 422087240 54328502 96879042 267199240 581312839 362814960 467166954 206602329 782076097 309023757 679331783 450006176 887826994 788137575 922597898 376127680 446609953 812436381 931284718 146853717 922696184 17338242 984400085 414128838 533742987 267318200 529421245 403454331 716260436 892232066 956274295 226721987 901573208 797403682 878746305 405976180 487110828 578336864 661427359 107453182 845305113 779088163 887787635 495185351 503630417 920924932 981946526 66633935 135140047 914080835 923457033 667888012 841564982 807216074 845207077 488807984 648150627 2095337 413787192 676041177 829666786 48073835 876504489 41805712 250084737 498090319 729273281 873158709 876722546 817671494 890119731 889258750 934395405 707841071 740493626 778149053 963856167 777719048 783854354 811678555 925650013 786780212 911202863 681488530 806832605 573232560 717054588 971318278 982943596 864217225 893988142 981481805 998077647 244865650 567207024 309269322 426071773 756245237 970986966 488915554 698088449 873325155 930015197 465649398 945150557 570387464 906702789 499190964 957585900 580364155 676314253 341653741 464402332 592292944 644740336 96283730 835776456 955315423 989078925 810313965 960964793 562212581 604090558 259020114 459765162 8115483 81947338 718517981 854487135 669939275 753317195 389932567 765342790 623897801 893105406 228970988 541736736 758828460 996159057 984881228 987298587 880170795 980168947 794064296 806589443 781618578 966316870 597381584 897809118 871116794 964217614 36957998 52449917 213742155 682486402 198635373 672839129 912784250 943343354 59375318 430178052 49037099 744551667 103000008 122846392 728052174 935090948 543775154 825806862 754762592 884232795 984038204 987748229 964139251 974394989 263796094 313981703 942032720 998664481 362279288 849022194 324528112 670364734 508070038 889081423 95494051 426710618 469040292 472521488 392862837 541784280 201528692 706348136 200129584 945989641 28156190 689464872 676723550 835483071 850467851 980160694 460031586 788115913 877736498 976363313 691807192 993444074 231180587 536913937 33525366 684070579 252116991 562458315 751103870 940951430 956141858 962039052 414494362 954784394 639244143 654815378 753433624 966831410 306909354 543745345 555708512 817615063 938234723 971071550 303767184 868698727 272411844 691651610 367330876 998760901 497139036 754735068 185056714 754659594 679422985 727649318 831146984 863033939 931906634 950495773 836082373 911310109 79647869 916418072 497694046 556786079 707909131 970457968 369825487 950963322 51130249 697010152 600790940 961697261 743519598 895186056 996757307 999206708 903889423 992310539 589503965 940623483 524896454 685525031 909320190 946121616 912053479 970152344 139454925 496446743 705983179 947944973 271886901 775964973 942173480 960462413 558663306 906731314 701251234 864998408 554899783 788452644 944191623 978654748 276234871 340088922 507729560 801924730 764283783 787313479 865101035 958154920 159740011 988036431 145858838 392304083 872294565 992267089 509713709 930522685 241928897 393266686 527999675 534215917 511562685 830632649 21816710 355745104 608646767 671359448 694188970 776625941 624228775 637411273 870793616 967122753 812846375 817837385 986266142 989382622 68477620 963480481 538360757 952803641 292321628 481780303 689242201 986651928 203385392 764079520 566539214 983127966 185028242 396258076 35227907 270215596 724474361 840304921 924935032 976789067 412219088 489910150 291344378 550750157 558726247 614711650 827707183 890932403 360869180 660685875 439666819 993258845 964429462 968069908 825716194 996088528 102343658 426521455 763282848 813330150 270718622 526374838 219131718 990428398 977956602 989829222 336458510 936453187 172392716 248246625 282258615 360281288 981224276 983869451 361984901 570331398 41094633 505060154 915334000 964284848 845733535 956662379 555545296 751363221 417158180 899158103 605443987 750038985 995958874 996378608 142031189 806026734 77982349 992210770 435245344 458367617 907546939 978509857 8971382 831303280 250743924 337050391 871470463 972665988 739893053 895421460 129127060 675041606 54435074 568779487 157609011 164811372 395691064 717981700 728605225 748843497 704485084 710516174 993015808 999091396 208819976 513572432 860894774 976200001 790041460 985649401 271938998 853060640 175897942 217638831 520454387 687327542 936091028 971544658 881984010 994892536 469692658 594425188 671645383 787719713 102294301 450867270 80120075 582027935 452977018 899797731 535093634 928671467 599182676 635577716 604767285 624533178 986672451 996720704 864978154 979159368 205676234 964268797 586483870 696289164 782390035 828476049 737666645 987881795 382928935 809223719 260727691 808119292 304861671 799001969 368172864 894148837 277942730 312332126 730804616 868780537 34074882 752358770 132981758 296429730 931946043 942076104 362611734 417010383 809856590 833935685 596756111 750438773 949182446 951086494 974347735 984550407 980906049 984557228 651192290 706477915 707734679 990103517 377747458 530782863 312890449 488870235 174883514 209711407 665538618 672780780 323550339 585388923 679224680 866002222 783360379 949563199 801383642 924003391 888706694 963840504 772759284 845492990 265850878 988277497 518757422 602839666 156398684 486958812 249041028 623394945 310726825 663261767 981383385 982888158 784986360 992641963 142394844 316790558 9156707 714140280 100027539 959157618 741233567 742197332 181673530 839557939 622993780 687898285 657937539 722938711 593400853 676648545 106786945 567830506 953491800 985945678 394913595 768111768 278505124 962845333 367330784 759192808 776010030 907339735 719949247 728084223 907313663 916318540 66427251 103953895 436568303 484815846 545253130 605896296 430001334 617948320 67407976 774981497 495185629 799271474 542165427 719745155 547689670 855692143 189661366 382061011 348555268 503212464 522074312 661342849 268270170 290531772 914098337 988709659 633368304 721365402 267833503 487374198 727926412 946644039 257759356 398881080 765615585 991224187 468442067 734972191 716655187 889912072 824617918 963496231 173360410 754995202 323371656 403868968 719029169 866437560 166312761 710914162 379586240 712037451 319534126 786380813 411959793 866573168 187985219 922898396 132848329 638935669 317146433 584795418 494849376 820806876 582765393 583105157 90267296 162038399 331062413 917953529 946791401 963388141 953421650 958575097 85312712 948819888 923149128 992736920 492435971 891530923 203544186 205313555 828905157 857634622 489250780 583782700 507620777 683281011 479685504 634300733 546696678 648966086 234061553 341006225 966787819 983078672 884624221 965171284 177875564 582256156 932595366 997408059 798962514 962423871 191092396 537936406 17261370 190814988 404881940 749958584 588325320 761990241 355242834 944263620 500959069 649419779 494566418 698877467 92219392 635388724 135787065 307393183 23159324 858864888 831958877 982714980 931382865 998841003 528001435 799897399 188143742 836235715 335300799 531520757 258875978 756224947 891535776 982677924 966653396 993384655 649606160 925768067 462844407 536963576 351031361 470364418 962011234 972163736 381433008 590379668 759379991 877532165 545554788 722858103 841661004 945780005 416949139 476059103 329376182 959219045 168711081 884358395 473286044 569323958 381119774 881892288 139567384 174240674 352508787 882304793 113441468 669530060 799558705 836579962 337391651 639592565 433653275 570428886 415370152 621634487 92628281 935318118 277630329 336519040 42028833 584705739 749277384 757383654 877977473 926612325 405150530 797526968 882730265 930874820 396886135 840887799 596251899 789945082 706369111 802235806 798527236 981514020 43701536 741172824 574383119 852496690 564255301 966797847 111806561 774103332 471493901 699791034 978069337 989837972 913419011 938992220 148916239 739814829 808992876 891349264 415306088 925211442 723748246 800119885 606033486 795837955 271931729 480131973 537062240 614184961 933811570 970445643 423316968 829892066 204595012 627887197 9799532 536959776 836894868 892580863 643022886 994041040 135887433 386127867 558559969 936929377 202700981 731509244 588165843 834999380 37428200 233502702 245798447 262898130 329714089 533765809 502027683 588705327 421497900 742194982 949506043 954959832 622738437 877874769 974125880 991674315 819935162 925615406 621398851 780598398 780460808 847658965 263133558 948913513 880586930 978689630 922678956 973559056 504151321 591846754 300823548 324725518 672212182 860864819 590515919 992945052 34002378 766844134 449088889 492175629 877214885 997392506 787308256 879151766 734498407 917569414 258122191 992776703 639332346 963568238 264075978 469347937 654376054 689940912 363365734 949365479 554810461 998612908 625014106 734866443 663489289 784621578 540877953 629887316 324116870 847409613 860807459 925749346 696692479 893345976 592523638 911879042 872629565 892811744 475111358 736251384 66226369 218986360 436527072 606711802 275918697 513712430 711494037 914795840 456593706 819893213 699781255 859467628 123297065 801487373 922062858 998740017 490873353 539797732 708099352 918310087 98328130 972648833 837982158 935817398 15642143 808895659 109289678 203237758 193012041 711661422 274786155 648551521 343167676 829009000 258649030 951321102 247312810 321427509 123350567 929092406 341407632 901464665 589303736 814429088 622726235 910652010 22800854 384398090 758678718 766345452 533960351 544511097 249998091 865771248 189327245 353666704 699465196 827013170 406147060 820169775 814957126 888421799 612679442 917498286 114175719 685166519 887382206 890370421 768991278 977085555 560450504 932622157 964285913 985902557 448987421 689777162 206809094 892805341 756582874 927447625 529901810 854197278 714668264 940208444 352760439 470950709 689910365 880075076 743865535 925307555 416243726 904852882 741965975 960415894 676369601 755681131 50560403 625609794 759949036 764806226 984554763 987825837 39923457 283803068 489817718 868580151 441644312 948816085 734295381 746789241 955960250 964053242 67014163 514089571 740486178 808214843 526332009 983777551 920162780 993922469 916792679 931852504 653315455 719707849 75654467 486732678 35830835 556905327 834124237 891272453 417977471 585231923 799728726 964330965 667007405 977810586 784262282 921766484 733930700 909183544 459756492 518275508 812393740 841412247 215677140 408214310 523509448 652198025 829993379 890342417 273853739 918000750 977442189 993997831 392355353 767972985 406320857 428582249 839575319 944418226 788444885 920130064 608020097 858055773 275936613 871060875 396355577 776884671 133355362 944195885 923325554 955005945 131571952 300776704 188857136 207108386 357516212 872336613 443604135 896282500 743723626 886279546 299768664 434795051 989558714 991275183 562659984 981455190 344354937 602035901 205559819 510993585 564571071 567350657 9953000 443010396 340885048 943086545 132856097 340152171 93828452 852378448 894495519 999233035 959014967 960492098 269589180 497031037 930991229 975358308 761135352 785197919 396849310 485425771 486905779 744667802 823066004 941464466 510281931 899971799 59022423 420099729 641810185 975891014 797190370 829399959 508012245 826827242 410964443 590739599 547573228 835245710 939797641 996000873 626909323 889634187 192474044 932511926 767455250 966306286 758305922 758318937 578671758 664845177 972490265 990789425 412023856 763238697 982817498 996380368 153842121 464579901 830067120 912668981 781817659 977512951 28921739 304465085 358409242 921100034 281059974 610308687 756770567 887509431 25793811 98981800 497177788 950819467 251844343 328271283 327123907 398826048 732648536 732856273 484647150 877303135 726371967 996855000 188652652 536947791 195380908 566889980 359309744 666227791 623103778 801724375 907285576 922790867 252905471 328589822 460227255 511641249 120282731 738144812 925940967 977046941 92841396 103264653 672176266 821999947 384224933 815497965 57930935 177260544 331447228 444649755 4952599 796788440 600985272 746162015 75480438 909335234 83273403 598319544 888091197 909371564 362632055 734755176 147648371 329587389 8352383 11211233 66451435 579248364 422692598 437830063 214666126 229232601 172594616 476963473 472279931 518559812 752286584 951454355 115391401 635902227 326389047 640265169 941347480 960572566 119571635 236686054 566903190 775935668 826605660 958209223 727311220 910532435 278102103 463800777 798365055 919113379 337810442 731690932 400685203 644741231 983253871 992043638 316958219 569434947 542221690 674298824 810739626 822748370 19259753 211627956 538906094 860404182 929360503 962762930 944143798 989402756 145534337 686175881 487157387 691356320 998786596 999374176 167002966 716425558 397979521 642082205 146937174 421509945 766092855 947299037 380624490 783339337 745203886 829313869 461957076 581149717 198993613 985008970 706928534 764484584 371730913 986750357 625824821 768169635 423220597 605834867 198241264 983699760 79735790 929262479 311959457 517712170 215568409 600551447 965159833 972021319 480911754 538268609 172177471 459693753 620324901 846736843 503859965 754713761 916129968 968330135 624799583 829170639 358979232 631313701 432745553 850502347 163740337 192037698 672450050 763717226 11721789 465259073 295323676 719753177 772767296 983979561 691274288 878201906 934044232 951183133 372450299 977895920 974450891 998951327 744765160 981605952 549446535 968591616 907041271 977085367 6084585 457687465 478549432 558176149 239991903 887146350 162100946 716101122 106216961 204046482 57803354 74667806 786115781 805859546 577988729 913143447 944150530 994929015 239927549 271553596 14153489 350144086 394164107 571262413 868416200 932512277 638556449 706197818 976514985 991088360 864161417 988227865 618578756 870428309 683751254 696528689 33089976 985984612 388770496 550305864 448265953 980097569 524392636 988114043 638270482 990605732 699536335 849490811 718093814 751954261 830939358 863732931 708096051 965551068 809635750 838357162 536154946 553564582 639801072 995066685 973658046 976197834 274888583 498167797 169980902 567374585 477165252 941030669 876569974 885958712 180375185 685050138 167878151 937749542 709737903 747328324 125790011 671146337 189202243 421769509 934304179 986353835 737431691 903701974 989868175 992723959 83883209 903577377 180891087 330294316 990075936 998840270 557379089 911904038 636610539 645631404 909974466 979133490 333930359 421196308 545081582 761632091 688971878 757235840 200511994 531295313 69591482 756851787 2183678 320220593 967347862 994221973 237870608 248812357 153545796 810837087 817908542 847669684 851995756 918379824 745433103 857161410 890664676 943234569 845199724 845694954 690260052 756227178 918104600 997078855 103806413 744282528 139215024 469129733 805367103 916825965 855011363 984685980 265965806 955289073 623829181 658356444 572267869 816038974 22392565 475192532 491588256 844765281 72420333 762804915 204694952 506434645 386701551 539365489 782295374 973037644 423366204 461750919 940607635 962776353 218460818 626555363 31882969 56110186 90903260 234541368 786918166 861443013 753420959 965568903 191104848 980307652 879042300 890308999 505123224 921797083 306289915 695652053 992167288 995215479 318888284 777326875 399251515 690523254 141821401 702561006 409996253 889105749 226898655 738447776 425804211 957691426 499489759 683836160 512342450 703764249 879688285 979562083 585125394 922129945 602060607 994762581 418828981 978405922 324952199 644837200 346942456 505233137 761957506 994143075 98954706 595746420 972647981 974669148 456667987 634316588 942894416 972701427 600766137 904089361 81364101 781156318 378476979 757808385 34644529 517585784 613205979 886713851 190420102 482456831 507234665 566855347 966730067 984904655 625443986 776428934 83551848 168905045 900401664 902535742 190476875 994281924 985185024 987406030 155243666 494879314 308751445 512867351 188334546 872181146 398586251 745042794 232116844 858437314 408180784 713985762 943385435 983129104 130503056 719741831 527862536 947959619 172773541 237003816 90057460 580649380 234965646 589686800 851284901 929990904 407715576 776822782 966991090 992373035 938799235 978745315 246910194 628993191 226886816 843839499 822601261 924171083 998471508 999163851 134499393 589479474 845088395 976768146 527074324 823434338 969877535 970530824 952878470 971378360 155752685 821355382 798453130 891020172 886614599 961693748 891656188 932936053 593739935 719324219 510479400 935761248 557177153 866523764 508352849 646313996 54258680 478137321 160582664 706988519 769613027 917349367 849569187 919404181 294629465 672895555 392033905 959584457 76427836 903152229 621884804 841209386 474043684 991751796 254523218 457342350 704361535 974696019 262807912 431615402 764989373 839641273 106244032 570681065 761940778 929125109 491522702 936567267 770642838 920045131 679379921 679815827 314518586 757218066 971495428 999258483 812417367 881617528 465421310 930403477 170652504 954712264 684822762 934240360 383589127 618282716 368894030 545533808 197612367 412631107 441942509 592176928 813909114 839556800 470770694 544089425 600813617 723284121 659998458 670160705 201192441 936030806 255547008 289936133 775672254 961881322 541189656 941511709 586690210 866198805 976585353 984385245 812980210 895768704 350601991 812249585 913095548 934612993 728024187 734588517 431284614 586135800 688285047 748528360 500584229 631358416 645912289 961892492 180422295 239509580 317830889 790400358 115314988 565322284 773956798 991942324 390750536 660831923 374534999 846895040 624688029 838052080 308881171 663667898 405188426 944824074 475520161 980673480 179263309 216430367 221402971 779931253 915478674 943208671 256160627 444824387 734235577 858792351 200662610 925837399 378826857 535383708 765358548 847438001 697133456 867999884 432358360 590231622 93971547 292752615 524631065 612326997 509458265 910585229 536106500 927281323 870055550 953848983 985181453 990691897 133525197 894855110 319899522 786597722 875503216 888479109 713377499 723346536 871029573 906606961 411840081 612916569 677965055 743221803 86029894 466743006 441338020 563588232 360974227 973555435 501445509 586681564 780082163 841423861 578739670 996821372 277560616 647479097 723762085 814268316 588445171 892540346 389591494 740692601 674587031 770474049 648689031 763299537 422012266 739216697 392927763 577532492 628287234 763297420 202062206 887285166 853978702 996270249 847148789 847640514 327638926 406374855 262010143 590555606 79955696 472963994 873505039 982807824 321148884 657042485 25447215 220371217 252658081 911687149 890105554 938276827 966874859 975823762 503935379 744018282 841532823 947067594 653914186 978921306 248640806 314726350 486934289 978237157 797038628 911575694 456405614 982831730 239203584 921597434 768158448 942590521 309762855 769230990 148477283 296814457 141014399 906939513 214226246 595969368 783165130 840253857 144053293 145419142 793573020 976811124 894748265 915726608 833650135 882547523 223072486 684057699 121862312 804697937 325255059 663847684 586371180 632468629 69309692 640709910 296680607 643384144 91822241 853719824 750986429 979987297 190923363 979294122 194011170 353200712 323783617 730715791 421830486 974544523 656435176 885010119 368520898 615973605 104374848 518320632 777993071 830789511 196951700 441314076 516827195 723446778 752617629 989265082 322359844 862892318 132274667 394683739 539311876 959821919 669768629 960991553 940330233 984196250 420696260 547613407 909019194 989253959 964200179 971690397 634313183 878913748 314773855 809514574 231670401 820746062 921086596 993674692 739077055 877982080 999004678 999079404 637808046 817709463 765669597 864336768 771333882 779890493 111442973 843838853 912800843 991988166 224092412 889798696 587115232 607356536 498445930 894233721 209195612 866393025 304967366 874391307 834390385 842107161 598023024 800968447 523410865 781990896 604734938 842557897 837942379 971880630 840196496 913335212 238994786 974270898 388116448 453771576 764039862 983821031 201031418 377777081 601487077 939047352 735729459 762293327 412926314 483434454 66573473 990448674 97112725 295097728 446299723 895539524 623330230 774133148 595475160 914445396 920931646 991354699 56284910 152616108 705573071 752016435 853359543 869283521 252870484 350190390 900207389 965547407 19221660 347817199 763270155 787653162 626231083 751858468 415827454 689353353 819144066 990180177 338291246 543968461 237693977 328549171 132297239 328025778 830249384 998420152 472121760 722852463 374541167 704409202 783463755 830776751 903628440 912469856 667103932 668976908 677496999 858371740 423594974 899765614 645158054 710607120 676169785 706415832 588558108 619360861 391023328 441853454 711442892 898934904 297310259 972251737 80861192 487060112 342995037 433208666 363326375 677983248 643520144 794503946 216458367 781545925 799952129 859232387 280235156 983872138 772506959 832046021 506319881 548224093 116904616 562377174 563034663 624391447 267903158 379429368 350771635 668357720 813609709 870852499 172898141 336961215 657594190 952046068 300099157 791064221 363186545 699558163 335940001 714465130 86399539 726036726 746514736 976408424 579358583 639194806 106958715 210981328 570848731 621497649 334969439 829732512 403609395 422754964 395240445 695210224 687752831 862563806 972673019 992447632 526936410 549515683 237695580 274237159 583935128 647200437 441666209 722267901 622763497 654824971 59407678 663937820 537305521 972298699 843958643 914330251 999198464 999208599 493969575 833959387 119066800 505640945 625541694 757804585 495964322 705186700 361684903 733619695 777191538 806263691 155086720 208662824 498430158 628291834 145576587 887969170 333446519 755906515 658476282 686672769 655965767 770597022 818985853 989928426 332114311 425063562 435003900 871441084 593439862 935841219 483679258 609717243 826298758 956621242 160547180 940446285 286556288 370998768 220054842 498599750 928855673 987388772 581315830 649955090 577517116 748659016 551262502 816553204 165872203 279290025 898150129 980935978 794178884 864570680 626440790 792982734 341994985 774000769 139688885 608763413 252701551 716463402 945879191 968965274 460190129 667622540 259355618 428122414 356192186 921622084 853556359 872761313 757744863 762768390 619840285 973924378 13688088 594085036 535960111 733305128 79201782 264241189 147871646 479262029 967667177 984547585 589804924 949228146 458653639 619221842 894738859 968136799 663016940 897514557 243347732 324594874 858379716 999143436 924792883 932991224 969043887 981978569 748100782 919589325 271862148 889554291 339047092 688156803 811432416 958701110 763580354 886709786 7991554 679894756 544934898 786344987 822223677 933911736 67481817 505113614 838556317 839333936 325474198 636700775 911060748 920629217 923265104 989046648 830408728 965213396 107664033 460657012 4684117 494298271 459034225 935150631 903348890 994648608 704195433 744443651 347502444 758681947 805750145 939271481 294530802 516457795 856305139 889921071 546496874 954118742 89409162 343685052 859476307 953953009 100737858 992546821 79881365 736002380 72113338 86024926 61557795 84781583 533036414 996801224 65936 300043550 448094881 906606751 218163603 919883340 182139338 764981824 803442323 890738623 672708383 775882512 144224017 551128868 221063439 405630618 209030104 478224472 807763001 867442515 806010899 845782800 525559634 877428222 262901031 751972777 364935430 510386337 415533548 789429324 518854182 988149105 759918872 847726453 310879605 358496098 751654566 927599285 70960467 805769719 998600373 999332744 638927284 704342564 171835652 428979685 810388029 962029425 101782226 335501072 889482607 955475325 406335802 677186345 236727269 457178883 423183472 933514862 23791157 607916691 43373008 572422467 14956648 172590828 651711948 657399732 762444581 971421010 454963817 525123048 517333964 575426622 651308589 884064427 984063497 993333285 740969805 805384470 984025769 994636015 930323257 986253648 62301019 127312672 203678650 298399047 164558187 731207228 317238339 701584622 589739560 647986135 336030233 884067164 789103459 962646549 147327762 280623357 388376744 841276511 920677689 950167656 551070130 823217868 820699899 872935375 723509042 900950928 889131239 978967601 441318558 644877211 102924860 868792684 372659578 768742628 978408943 987559441 118578190 366097161 45402230 153963531 560358700 810009735 821556781 908876725 153999822 455988825 832561816 835602875 446741057 782969673 109746928 605215992 718849692 839863726 466998204 574509767 117831372 850739543 598980175 838516275 581555179 878789603 524752605 714986886 491955253 948016795 85653838 156526161 575260452 762203708 893006970 897703893 624089929 705435877 355414957 761524442 251638539 987228227 955406319 955945708 413935911 991573539 628073155 793535755 64869656 940251513 166303017 333290736 11634422 244366936 200497462 708398732 171428193 288899702 923456611 998534939 826354565 916826441 692877245 757451929 205514889 224649223 309422162 686055817 630108868 756702224 786155410 994400930 7716619 177764001 955077151 994062817 746475400 810573817 450645473 754342129 773994337 937993709 757002326 903798104 195478799 228431923 28575458 853978413 479738266 885802686 546378781 998655389 206150989 546473427 458548628 635756651 180472297 351434986 266281593 527247488 431219174 795911840 889923502 995722126 836779109 865970573 926916482 979232738 420302183 907485248 619210947 901324419 582650674 943281565 777834691 860203006 235932576 716841507 952853919 967683935 850744401 875449945 581144837 954090836 262822761 898613892 515271535 756220986 499874920 835258968 79686160 288610144 16738587 162399537 185724034 489285356 216153605 481764353 425993116 938447398 254059339 306526826 640992119 982609998 939821354 977950989 535048901 907199143 346671119 714841057 656431151 877448027 866597799 994374943 917880508 979566141 80582907 483913991 743986864 766450026 121171538 315758428 375750242 850528884 10182565 809766850 569136853 635434077 920855456 993894088 349101709 791608679 544272681 981262533 346524348 718129831 732756509 884466656 694993918 876084086 880624443 942237449 729772858 754157240 590510229 810606009 212778779 720081265 109546951 156263551 292695799 837133297 446320890 612617299 540926580 953729745 361575659 755218170 829665438 974623727 630867217 756409373 739155410 948203818 109078566 790868090 531092377 985677966 176471231 232971455 447863237 683976681 664755326 919045425 859523106 913641818 276041201 790119411 218700414 515319275 506918466 922195688 413090144 993911945 724552414 971739494 699971187 968977833 412176670 927444076 606193606 926736155 767807101 967209615 962551126 997742435 488772070 905661444 39267174 713013492 517145030 575161957 83250434 413000316 196826813 765389305 271398285 526866830 526136564 732658206 603165916 933664413 220295859 931658354 209809293 248840131 934225854 958229842 138931814 271433613 487362063 855902016 44787692 84870782 224105598 413112628 91756346 307086952 89556987 686858977 384073596 719890692 562582085 965569583 218663807 770020706 773713741 813956716 440296663 909115181 754170498 873226393 930882949 998560631 886905263 971672605 15756527 126174551 450889379 795785208 245237583 474954744 277359939 508532031 622317888 630622073 621757613 953075308 173077296 570201411 754073228 920116160 426573884 713917341 81878962 335488813 422071610 507432444 814694699 907500031 552974648 577309197 139932316 764027388 895268860 992182457 411210650 578184671 479598766 690432346 315676225 447045935 536451991 809598478 542852238 563721307 668155763 966808513 51650155 329022795 756179358 943616968 783621073 797570184 232730204 393217978 32404744 487964139 723815447 985206819 869336838 885735051 435761158 455688687 586060685 905098114 592901066 957894536 642670879 689293703 906857225 986801403 185176011 897765599 194966632 377757078 627209315 998554669 952110390 959832615 248890211 974555624 621427308 637464633 160716772 190735143 299758639 480774956 412739808 957848737 219605708 914027535 243054701 531273066 346827035 795848728 115864616 199985130 583523934 639204042 636101915 658715099 578041658 657814814 123519716 268241218 977932320 992251806 981559150 983716037 107187173 325116444 837078725 963662802 980253876 988540031 597661647 798844021 260195093 953325581 245929370 322254668 133658636 326387375 971789386 979238084 488127892 891170324 200177774 517106217 660530170 709407115 607847224 936271963 181429173 964248574 745102982 904062423 738762907 925357921 934156260 943813028 33542904 137494157 730173683 954753146 829225314 876846065 657301015 954976441 343530769 936347087 197722290 859117317 84006135 475666818 945869985 977766592 3368159 344464113 6984656 281280641 816792743 940036956 357442253 362659898 67945719 329664185 444994989 893131560 693244412 777842452 817535227 874433491 672346420 747444113 357803374 728453266 442021132 566790350 192641568 372816710 974849675 998289913 59477043 317766335 764237905 876578160 267904085 811127615 585655490 936545006 767360338 772612973 768060780 964317529 766832862 823595913 56815147 175899216 892406646 942245246 884977339 974632764 714246052 852267661 501013809 735965215 400089520 916231347 562912484 626709621 13127682 488803860 134741828 886476843 331827352 736741004 311667042 516882160 610401740 759999615 395762706 979825995 47952187 990968886 470852636 774713815 459282749 697153118 779663735 858678153 688078601 730377751 555818964 672070962 159222788 703974889 287142755 537990908 564900437 651777245 334058892 950211215 760837423 880262306 491147346 976988430 22101081 186366896 476752927 873611489 437357949 959017822 572224913 655024543 460848250 757970959 105918868 518040517 665563005 720755826 426438120 588831851 548712181 557570735 477374835 723862247 888392763 985735651 912694581 984845784 269591831 327634584 943341199 972031272 458658990 537882945 665756306 813981196 559183264 713848160 208174193 808155404 505450904 995036047 801329359 819020193 27570084 144234075 80098702 765186543 372230046 646145260 351125359 489163880 521889655 895624872 413542391 414435903 532170321 910139137 504046939 614748066 738819018 863527352 711154549 945892396 104979080 840350226 55945207 825227921 238969355 983500220 877664823 990789576 202813204 441065838 963276331 998464371 906823710 918123328 655575017 773374148 795823192 959493080 666536383 743204262 834257975 964749749 223714923 717790559 955475707 956425238 715898902 965628661 61695181 263527614 332229734 651747978 396173293 489868465 459679971 988435608 146183326 740217874 463894158 957703868 361761345 532089672 816452821 822007580 48805827 705936728 932143654 970812418 833673535 930873030 862471836 918315301 842125941 898367880 293756650 413658530 753422432 795133912 6573777 738414845 596671836 974154406 593806948 604103234 962918048 979686649 685740335 729498428 704791471 893810974 431354680 621020033 443341841 610055716 946326607 995322931 235714474 795091073 885065742 928819739 948394315 963090026 370301644 522316015 185660806 927183825 487568367 709400068 899233492 988631018 151664316 782948496 557345732 597571465 125953728 788873012 95418030 329984114 939808228 984403163 382869868 484836625 700928906 917222548 247748296 526016200 342581528 442761581 109673811 124584414 53121092 561475308 845835119 930478313 360870520 836412390 914920825 942378391 916929558 996892509 986695483 994379383 768033196 932832086 483630579 690165421 87967466 208855490 589660916 926781629 286129984 617432874 236930685 418207743 142894111 310037281 669643205 858287505 393338541 925809569 533488005 744633701 874512419 888043561 432397595 840519083 605502319 693779258 989444585 994599852 318392853 754603894 982813656 995458933 987373686 990190250 619667036 876503759 901466018 933598175 621452404 658136718 996688532 998061075 98710341 633060323 51847103 91994453 649052187 865016253 76269334 498562428 252718209 492726902 958949766 968022152 237165691 555776267 481574168 893205058 225816762 806876308 425180367 671385618 333719349 723533488 205975489 301989838 824654016 878783889 740956562 879103096 427650625 709931808 701661448 972010776 281528595 480667790 994828229 997967267 769885123 859193119 68324335 794880218 718912574 938726214 28218809 416209342 613711735 699811278 528875741 790396391 434878032 917828957 152716143 294565005 573248850 794895697 417036920 514893029 423880066 563855205 564704285 812702341 777157922 983714703 391259371 558873972 777851473 937292616 634498014 679457921 134493355 661909829 970577131 984485387 310324762 777422866 655252438 776302460 369341062 507362096 633936397 759589389 439588408 746979137 534824587 980651113 679932888 799878795 755398146 829334156 265962640 487284881 668668979 820978529 584287149 597339722 682923880 976138455 155537886 898679774 676288709 810853314 811874228 976251314 506037168 819594968 514866707 820480416 81944975 199531831 557220611 735222915 128030337 256210399 951296353 985131060 937827726 945115326 390215296 770992817 274607641 536438841 643012618 879793307 928550904 985800289 791113747 862683713 797976499 924966848 135632849 822924030 243084924 902580058 173730478 659501038 880378002 933208426 670479442 945819871 344392720 985173423 537240048 724258902 863285360 995755064 416895258 497298209 674006886 829956277 4929099 604076396 475413485 701653331 253525700 420011306 950736640 998648095 457442447 651335615 790110770 869176037 479733719 859446386 211962535 670020561 986408300 988820058 64926280 700396791 848545835 917625878 416184894 530974107 717092182 717741574 576962784 666874969 604830963 688664034 430278699 999344143 45597272 496007296 694175655 923003451 593729192 762059712 373216469 383659251 396867925 460744437 564834030 907092994 928211459 959891869 689738356 838326673 306230098 327132722 724639519 984745714 532199050 540342207 270095858 823587340 497514744 893161728 156225288 241573521 931114921 978834519 649331276 674504424 340526626 643723671 638166112 781108307 881355534 885132443 4209044 895838993 206301689 771386114 938579868 977429714 443777038 943282276 406177138 836253316 573280011 994810630 748164323 767373518 857416111 878715980 661055941 835323043 578184916 701281617 384015564 416115861 827997376 964602989 490117072 938184192 924207380 940602348 367737888 861658344 354874305 539675698 913283524 946772525 874429832 966741994 918730895 942855971 207588598 897394868 867337126 954485404 314265567 675926296 910206352 941324973 652807451 734605038 907019901 929127665 9104220 468000314 922460136 977586132 727893628 753744550 372487608 415477873 892912081 906415596 896168765 996988864 712369635 896652972 808993651 970520825 386370617 866349627 536794836 884950734 655022935 684570138 385364339 513222332 290318225 845858947 796608873 820032244 882824466 978534696 397572136 417613661 561991318 778631341 320664808 366053045 478766437 528014227 155923481 781453834 911045990 921938170 849438798 966509995 40421726 568199512 844869285 891150311 165692694 307158693 703495685 872376116 651914158 889927847 872699831 954175020 145864775 897298450 70691438 903512617 607716014 654588619 756183980 796489622 970457600 973971200 81487875 940930063 393331727 395976272 211638198 755965976 338136618 903329492 681788347 935613783 159556044 168166425 669868784 954794895 547584607 859207244 74651584 827672192 232538434 742098329 784158204 942418478 860834915 911308840 959884373 964875632 661996562 852844395 944040702 960783447 17254475 248968730 569770897 990783536 336024784 919506466 482089898 855180220 215341362 657156241 212164131 359308718 289481608 558547293 873751725 929610149 558149679 963339372 248784411 309125264 175458937 273298517 577727850 787905855 768675805 815294572 934874696 939977397 243710726 546644686 502189761 556196113 97847915 308862354 588747265 975867020 677737387 986405603 557293213 852669215 632769952 863609792 240527526 692420106 193235259 318059210 243938661 688392301 379560673 535196265 870306990 996172792 759233939 858065489 325404905 419827946 315827939 332890739 891254193 965166457 820710856 916442086 952706656 973601406 298235022 534006733 434751366 571384333 242098777 618655179 946944094 968738028 730327727 740117968 831713785 836780113 334195217 704834056 906404306 914285862 774053794 965758168 547885823 990625231 508289108 882461951 582588127 960434550 270929112 357848759 248812674 902393059 273820644 908207170 834178753 964409197 767441206 912077450 748450865 997726649 572991989 704621114 592882637 754060759 797190414 809369037 902340621 950567003 517803920 800964708 807574240 961761366 166891378 279620584 96232403 923732573 440915288 891844546 378427200 516679647 788533495 989747921 891459946 942136674 987107456 992960349 278413714 491045393 329722194 854342015 44407070 622843056 746747271 929318564 245730439 383442882 352886496 778659674 476616469 719612758 468512081 652335376 588139794 856041877 887682754 988195036 589778416 613970173 757201569 862250929 920516555 937355784 518123758 770528364 254931492 645277814 42241590 508003006 292644002 679975192 725493441 801163966 439408968 490567512 273438329 946680697 129324978 752901573 398274599 630293503 787660381 937630399 420206180 701288179 351266889 910071867 187496070 383029788 645267296 697323376 810988881 878347419 189574466 333006407 105737828 366390120 542560491 969879227 943253801 967948397 433201546 595747313 528010556 813175501 421691746 626011983 575151441 877894698 572888183 751470593 310160915 603020014 924191025 976669827 304950117 950113138 717983850 820203902 37473354 104331522 315542340 826771276 540629645 584129045 310235335 411165427 712294067 858398199 68428108 413285474 106925067 947888620 422563651 663921548 407042092 817896433 95868198 304644971 594306093 996972654 196111393 238027142 581764678 841901279 867693135 891144826 669481941 813505535 811730499 864959616 975081361 996939229 757754970 922627125 315317874 996669619 590774907 947358861 36589223 269338190 416300166 455626216 924128218 963254203 637596593 923442819 36107956 350561672 41803286 599768547 465769186 801329231 741150890 899253119 164633512 319529148 66983014 778205206 683185771 762790271 310404336 686295031 101803913 339118339 837659094 875343832 481934459 912539105 387970464 821091138 399427151 610290343 241304149 814647613 766022724 981468469 939930530 979642736 509721392 565034055 859703565 967143991 696670504 965151516 95936419 713402078 602314935 697655569 605876048 661198547 958307870 982154013 518100998 602553146 583529367 788321425 613027816 627912895 224769669 349768372 240402422 567123190 106583267 832871496 748361407 903605709 119997015 571262712 591901275 922787413 843449042 888073256 942502890 991910586 205506643 498404023 373513605 631375093 170876344 316024846 805569468 951204537 371324830 921042326 22069087 239350990 538571061 969873080 572437630 932001712 434950007 717021213 906272537 926151441 106793176 253004499 430382553 851274445 907507384 937193274 202743605 779205566 95580665 478314695 188091722 675676428 751421645 851949493 435681609 929714468 918100252 973627932 973950061 997435970 314291191 644892605 478532645 876456107 376732396 455214775 327248090 712818195 868409328 931886191 598627429 938152905 954746610 977837669 248249504 892173303 859972788 912264432 721404965 894772567 437083793 583181675 607198105 995423860 822964670 867539579 666233473 887944658 716580732 964537500 170068 569923958 598784942 623690431 509208019 748063111 767582335 810383528 416594455 656477154 780440326 955448831 884292988 913515749 566171786 960333236 175247194 267471951 147603896 226608588 438817437 664945971 801344513 899692832 67450224 738924416 611841630 643215820 352754979 491823566 138549486 454078856 870902279 930197966 440778826 802150373 219611418 350082997 712482575 921306816 896632504 938208754 313117710 384920568 153660046 935033537 93172715 964307807 581549956 746359825 643151896 798329363 179495682 596177068 492407303 705192453 852281846 884167949 732578392 883272760 719692388 758547953 357467626 657731318 899800749 914365074 977785536 993647985 342307708 872189946 621644988 667102939 785794622 870539815 704544959 777787325 736805749 767502625 702595145 915267571 82100824 398860284 15091751 242019536 254066193 407682882 864424265 905621275 97526223 287803400 94374419 602964429 609637096 623891169 655994038 754541769 347118222 754263742 740452790 996261687 728964338 845775668 942402367 990275292 500284838 835395081 276573357 320531542 355095427 497952949 587987807 832216286 654731258 705090637 196580668 960766781 878147419 904030101 544405227 813647390 285968014 449538602 228103273 819181161 461290144 713844981 189930251 886821912 593210028 697851037 253811849 846324064 986164264 996118204 552225399 652611325 927168566 946869692 770578994 878712664 536917163 881068107 494952421 546001652 286217447 731607590 331534236 610715972 576459303 933725285 970204182 983688323 729133221 781126405 81473502 657993122 522194667 848148325 49054677 674670410 139860269 956898343 377649725 768069235 426735490 948044993 331910015 887527147 83699187 998295129 860303877 937578437 715891953 860415155 230419834 785433003 837168674 848997050 395839541 627126414 700820193 988480107 313075709 844349213 172906630 860671864 415631915 540765278 499983516 567227662 768232870 877816375 538858958 881502191 542344005 968117577 343876336 371416377 860981036 968191421 137415002 735009124 874451804 940088046 87406238 573473802 491587260 968660878 812312566 829571815 262995100 547172931 185584970 957554109 792789920 916367944 890445969 893311225 466369441 485730793 836749645 997880040 663471679 706371788 600710431 885281340 923063552 945564571 577311798 591572996 677251050 949422059 122552641 686510932 540558674 613108316 666494806 808176946 293958914 393427700 810415662 833624720 21878455 421238168 796464521 801861077 944784281 990886553 936350265 963149125 593133857 858629598 430434829 768314537 560775460 573106633 949426744 955978327 510740904 956464648 93223171 266489000 627915113 837935251 157474577 743919783 336173563 758615478 303733402 432848997 971734045 998434041 568476482 950488481 802702757 927560134 536615155 776108287 509296853 519123878 952790738 976447000 539232455 904217594 259341419 367637519 141248889 493817316 245712858 501542273 570161864 791548937 553410446 805076662 795876973 848244536 76686611 624010303 647192713 861121448 299232303 704937208 696733263 858904734 988522853 993262104 751892409 968626692 5452768 831665626 379106892 648673390 803176591 828748876 752009803 827656988 198253771 251796481 850975098 899785383 274725050 841117922 517079520 646949888 65819855 226445211 982250999 991497212 458457615 686655159 388583698 428905767 774819746 779447494 86017696 274841692 971595124 984357418 557991306 602853034 29685445 662430066 96576905 736266148 62155446 501733088 284610108 811341839 207886148 808735361 243688443 736576724 876905069 969724820 437890182 857205373 997320660 997960305 226144596 993186822 992420887 993234045 985664305 988580704 717270225 834328611 286470585 683914113 809865214 830199440 579492979 884496067 624933761 734082682 182361661 790846736 353059941 962015103 156694301 974885596 532972379 910914861 825851618 985512906 848939199 912352253 61077414 349977013 664402453 804115674 166440638 337675034 837851491 865597000 699610561 932902191 685680660 994767031 339132671 528606149 644209229 739313281 944946339 995733005 173416974 592407830 675849641 954901528 515619455 721110487 96734155 663963042 225943307 882134618 871119269 922334705 872620483 948258500 206281096 542199102 378024506 591130827 326890445 795927054 748255934 836267270 489583031 921629539 685235740 744503973 166567553 695792522 310204405 376179045 731325125 923288853 808728336 820448805 295038749 941756578 814016487 991826527 845614627 993639734 128248393 972994034 279480532 839530882 428654743 445603714 822054574 837451568 892542044 963040176 986038195 995409328 575448172 888616307 198085395 751939481 934942139 963376408 597834076 616682519 393866349 466086660 784284533 862017812 625074359 696617802 381034966 437572502 891020568 956647371 975939114 983335452 478198724 778643728 922440832 961502371 102411046 116043986 168368083 996541844 208193009 605086509 358881373 863635257 433779521 941919921 616891001 772976477 700722894 845517567 188428699 801579311 678341794 744323859 333808468 448082684 714589784 911278127 356621645 746124567 362405693 529284899 296906442 403593040 468583498 767107517 919509688 933167305 269155083 366435524 562933720 835604145 348455527 505147313 129504006 769664190 582308322 828254487 90523693 217287291 785503812 940592830 167456254 404308545 452018154 687211937 705209861 776851197 236318977 847960574 453407701 997361281 336934366 977271105 876999599 882996533 194629356 959132047 876830266 960282204 907606110 942473964 799034248 919540340 568889582 978723524 437017707 485525147 845403569 964907873 540841092 745965416 878241013 911032798 984753590 987297734 636741037 652197146 893381696 895812622 744773933 855634487 783157088 798810139 422570814 499229486 202405606 377934002 314738553 541396553 31447045 907293969 710483490 968671009 985835041 996111002 280824426 838288300 982167463 992050172 870750899 873928899 659432771 816566880 526225515 811826438 818357401 981303799 460178019 639914581 322477858 739253712 331256425 604557252 414386778 415362607 129284193 848294010 894959546 918075931 60883574 134583981 636243542 700975450 180481174 201575855 661348970 776576663 835057851 989756412 381006075 411112480 299106178 813024095 619685825 840780503 14139208 609841345 83156261 526706640 674953509 844166526 590012911 934144747 888488856 959823849 742361480 863273963 916133135 956856135 772470888 862766236 702965161 788614142 740606529 760922817 127934181 200575890 71861847 481818149 921338365 924765298 765133640 976122522 476649200 955808453 420666002 578563369 430246718 653064329 527943465 681339245 892545767 897183304 679429522 869202453 27351762 337462853 397122185 744279438 815242963 852723516 815162190 951408539 57984474 717520196 338406729 379813466 837149119 936233359 6180778 245560320 171509876 909106653 765123470 942062992 957321918 979354328 744857395 921130244 122388827 589355940 179823615 905672931 276850244 952429619 871964062 993319891 857200249 951139321 85191364 949135172 91936180 337700571 111214427 756871264 487884807 880201773 412432068 992041651 756697816 935110208 607063750 712638690 723677759 838364779 735655184 766626866 71352079 438505091 392240034 842809019 527875320 938547969 703462513 933154808 602279941 923233713 540011302 631906835 13500147 583520238 875087437 885621873 981144268 993818740 309435331 745396059 391578972 868919880 779139640 782126501 483114486 498461823 237382533 695765833 872279824 959937580 846783760 853624956 915152536 922025745 187037817 458528056 256797445 998725240 898667140 999201124 154512153 657453468 298156085 827653380 456600395 631123523 345729794 954458920 559641182 897276789 953177963 959068095 772511480 918007336 587430311 964365796 31141203 989927531 183393489 830251034 530885969 904930924 637571399 769158945 781210387 841643016 372214298 792651781 312423012 581175166 996329190 997505080 786867718 920656134 614811133 840988757 776574982 789751918 410405827 751875926 575567632 911698437 353149821 390480029 747208486 881111494 873110254 996420568 264315433 556063570 544860937 651841024 900974451 956142424 40826605 218246973 618364537 868777873 70925328 878253254 928999605 935585006 254870338 629648394 318842130 874912419 879727208 930921392 655444521 914814055 830641138 891729061 295982070 633224100 274463073 679130631 479576906 621402144 860549044 991454118 931359157 971175022 706766816 771568910 942335638 943769101 754973194 861812618 189876137 609191942 836455586 877154497 919922658 946082615 504283953 765289604 266490476 639668484 361035074 851401690 925810065 990402498 742011990 824177708 638901176 785236430 640797248 657870138 516627115 616469576 224960944 644411116 605675522 720955378 304054414 352255998 380069883 866534224 5099265 979398316 181388304 470751806 684331570 715436938 911087170 913984755 183253105 816936487 586687976 826277719 156692232 785772886 993109838 994857948 629582770 984986715 199433294 925447440 220650477 979320521 509427249 882218395 575629450 739608084 88118595 393613916 546529318 910019558 163325168 601132875 936046857 983752275 895698967 970673583 393539803 878898543 55889692 139492339 413885595 454066651 806197498 924037942 72051276 569215549 41224649 677045261 314998312 872880513 799791426 947497606 316416667 810336936 656329945 965125100 82935353 438607955 884350810 945171837 348940903 598483705 262047279 800037424 83996874 844973774 498402890 558980631 952449122 966528057 785744926 923167886 225150431 724870672 666688702 747363601 814242475 846494448 30775601 603276155 710541595 849312765 356187018 553913452 286779516 541178439 919205211 996594999 350871358 945831215 846791660 953302357 228487057 390781331 295572336 973436326 682249036 980569474 70908898 478331529 770211911 863541965 876449012 990858219 772237364 790019182 45232040 99571273 368266580 828578169 815744525 863677597 174092057 747612615 668281694 812068827 901000134 987606101 868465043 962888733 506328184 731715234 785711043 956408534 516244890 805382812 776599864 788994712 749541974 829079167 639044568 756847206 408216879 533634039 227862369 562931292 8576101 112485743 76509025 984699124 705968915 752489184 953129210 960869662 569187086 747981518 771283456 793074422 478471221 951069653 276029061 830545079 561129520 856882318 798829005 971436263 569881604 882303546 260601226 732432879 727981021 934939552 97800384 735452067 348981197 748764076 884378541 974374072 146730455 335173387 609819284 751082341 540859583 890931875 417664561 482895686 26129833 805201847 826953371 861465934 460651416 978055808 983955259 986624733 851860400 880740624 758800705 998323582 859883329 946740802 6616019 285841719 519450347 553219520 200522437 432540715 626240628 909050345 580266940 758015979 790967463 928239314 133288368 634591614 888306162 900162271 39535785 70811510 859563846 946494163 18073085 90636764 77640718 488205759 964025449 981623459 711760927 773498062 82703983 217167118 935592484 944455051 838191660 933373690 993511851 993780643 51642291 710522882 497269044 711780040 311375291 985278184 8073272 472521823 35391878 510561910 936615146 990026806 279429363 679733070 309161359 961651170 707695951 859596404 381926467 625071394 38931487 392153544 233349339 516173596 970224078 992728885 893253939 948997476 832099355 957160359 541417158 607974082 229697758 692979879 582379601 764769260 494291284 674901084 996942996 997005040 38564510 973341725 690854948 941715781 220562903 804407821 10945427 427256150 894405925 908910379 457386339 993218403 340486826 599673439 417191375 603481873 809588844 841446919 459907290 487564233 113236003 187774761 635630105 742669437 579817328 751516886 630255112 717024091 45734158 174299185 604675012 699291249 427033577 608982149 947142053 951491555 80513434 861337074 552745943 648171829 795486372 965631728 473494643 715370900 187704567 474912090 284946149 858093221 22920074 156266239 838882539 978048242 491435177 669223535 858572649 967179259 728362854 963320617 327285082 344648392 291982151 840710834 928529991 945762522 823836056 962492799 890066379 948286527 638226217 927772767 2543747 819555479 946216729 968970685 897561779 979419216 815593441 966556789 915623714 964728637 331974043 901957030 877286720 912149446 575829932 969030914 419181872 478622008 976726466 996356803 865403036 924258449 354157977 851073875 697597158 952634226 987982128 994853904 41601531 166952069 172883170 658839992 154038582 607861728 715905140 975708339 940162088 969168108 596119696 809157731 110615745 864468354 812133437 877717994 318154596 661040538 611605346 802723492 320797247 438316571 966425480 998781523 518002551 663734015 150367292 827334461 606399805 721246713 610488224 709625753 247137137 645722239 720685166 959999626 165394164 341952764 66647622 200791029 492661424 540157778 319009069 367034579 317255395 907928602 534370402 565994900 50349019 850236664 831584041 900881364 7737126 124706202 692082676 785101064 208294372 851444263 980171235 990397037 332057046 778046663 71640537 312897084 846425774 846964921 20410024 71969447 447499014 481152569 865781367 924524000 324242050 927867681 323247806 449252748 484802549 794204820 731207793 849264153 773912922 986824376 81581424 727206390 831414920 959991968 508994350 593197038 573396239 774300715 512171987 599977914 315372833 543754854 509703273 662194938 412051497 758536702 239093311 994409428 776606118 949144010 497750001 746493300 505955132 791398594 282661443 590157888 928876499 933732393 49704643 53422446 531264573 665935262 662021396 982272762 836229470 839841532 853243254 940412080 541937500 930432039 248129922 891425193 7429700 457208949 588485326 858592258 210692145 879715978 515611637 569260819 781395560 804556540 962363003 974641552 522176161 954204985 591057601 610332661 635465064 925289721 326606311 800224297 467393453 701823990 829854036 936239314 569335373 972714426 557373240 827322003 69562135 95130337 736032570 747487830 958819435 984799601 508343455 707442482 705427275 854910467 330884827 707648951 437332318 440812104 368127959 891149993 484339555 977235299 944911898 996962381 860490761 888283764 636101304 756935262 970168595 992205095 977048571 993068418 853014739 936038251 266824207 927630098 881180169 988534275 459736552 619164514 635009620 729607658 131696074 432324427 591226498 862891414 620895981 983712394 805835837 977581503 354452089 735109773 209761747 305353926 578776312 759526912 178239340 289787300 274923595 760475037 209549017 711465118 431560990 937056176 569506792 681910216 469010396 560090998 905303742 940024051 11020099 567635144 726813095 998791579 288352501 291402503 362265913 962216060 684161294 823505088 378321683 676512324 160358851 404807896 758995583 793363552 412887018 623549033 442093291 447717023 851658232 896606749 55641400 366194528 489558149 878638616 134376890 504854956 464945816 786289309 844777723 964848206 338404103 807506377 403481493 827834006 530704499 547747057 271480302 634253388 188578058 667342925 595472333 692713107 946100019 970066303 878335046 880714435 408103431 734967561 919294013 939265300 630841835 877309180 519573660 567572052 278083297 315143470 825346557 828296429 871241741 998508843 801775864 836485504 805185529 840863185 980884421 985126998 559616319 954041170 149855971 369743532 977680379 991635618 429955930 767789914 455373159 564125913 892936055 989024153 852371512 873983083 667665628 859818646 663104337 720006263 454197916 942336935 817786536 822558599 976753 869996208 918184890 962228356 259953974 683980283 347655561 477925121 650805364 736878713 987308875 998291887 583003919 669268675 199134178 592608739 578369366 874493411 525874556 679550703 48721754 283109665 41423294 687729297 658545193 675948070 775726427 816001227 126456617 978496501 356141047 670876233 823269524 993422381 185603011 755802024 193442411 504509334 595453415 704985650 668275189 735036085 215221274 233764048 762828592 819982344 39368670 830261015 56755320 909747835 348000361 642184512 163510404 698411263 860902930 987969987 489835928 550305027 246050917 900616191 278286783 604266639 656095370 945505376 788931586 924183881 651765323 800120200 807066745 926442679 831793728 893659713 853741347 953927589 720987082 733344906 304089691 580893617 42928651 729730909 739993610 998773667 768229400 853261171 112415519 117109930 474676524 661895140 821127489 937164370 791731230 929457554 915271063 997263405 930646049 979776892 255699815 934362715 232905379 310651061 171767108 850181147 522966043 839825447 718324949 939889502 733360495 865274308 534251147 910405800 781856155 988117340 738713091 908340733 402524571 739109208 516451672 807157230 106789274 907895829 705360731 869619126 876276542 951703092 856050598 986077204 267216315 564858330 399920561 410136044 580441831 686096273 521551780 859900962 409817111 808622385 258242502 925978010 926043248 995031958 891095542 954362046 323928798 621970433 616095989 790752726 357299411 658613157 595103668 742583754 539449713 732252668 562495780 727194443 190575910 867216536 358198604 748796715 713800887 929450368 140596528 696397936 631522132 956711830 372622711 986735887 293104351 701146312 597852857 667348316 96233141 897155912 14129185 105922296 820143764 905885887 752709344 884092313 941334542 978987780 803777042 819194204 647549665 921837882 89758877 593157651 802784039 878660736 21068296 641117693 163248196 568832930 276822705 441381071 872255043 886860163 416932355 418319259 22574191 951418025 960289433 984025414 563123771 680290572 965129827 965260417 313951285 362605516 755360123 826304855 399706676 415722781 923135741 953561591 914073403 963343300 196496811 724245646 14869531 705716496 452562882 941922937 393350227 564872279 245203457 891585519 901222935 988036907 181450828 388868535 405115561 917311083 8623776 141176038 782469247 963863116 267026860 405253833 515133512 921411868 81820832 575740912 345765984 994194146 933151450 958076644 241595005 587124496 150791460 778649052 797522075 810301905 561367556 723164240 112480899 758152152 504699037 840870128 190362188 350423061 222543790 320420338 505676830 872175002 816880678 826946662 482797406 764129317 66488036 916574270 878441813 947104527 771045683 888459338 754066397 845541249 242643512 307883738 670063610 925706083 727784119 935984832 54832604 681486786 823749390 973833952 159113597 828103142 447199757 540835006 751587772 945437266 998060272 998604565 943562907 971438464 695031530 973499690 557317631 637944020 857006857 983551304 764836194 831467422 954558067 998318505 656244780 708971904 368691570 675022434 585918319 924770909 175001039 848694411 730226683 935453500 543002445 843799353 107604165 988712850 212135008 875987857 218677840 966022127 197961178 753328988 491062941 557684684 283798870 423643740 763188027 968206581 79995320 378747707 812436809 927703282 607333618 783949685 412061166 443233758 143185500 936196573 90418557 212665854 588259207 842895653 670498567 721081214 410073386 730653957 995128288 996602535 594605645 696934779 124667466 459612177 964332455 967238799 577806828 689043545 798180833 813751816 109917512 600238739 395070116 495609495 872302360 918429591 295020044 444715329 800392797 913066694 106397797 310029431 437940076 721042976 504723905 511559268 621651173 798211401 189498900 870867955 399927151 528883855 903453159 977128042 142705594 869099232 998095335 998706646 869658975 952159420 141325127 215142066 987319904 991207622 505261487 666183528 465311825 650544779 453505 985278054 839503238 947197549 585933594 830060255 433217038 836654000 50445286 782448244 524541073 961764502 361887337 671910915 874750631 992721649 530265595 753425115 561944604 881994894 322045475 662334957 88732798 144333392 466872408 484760268 893777725 933295012 228595469 858957679 857708772 996449873 73466963 547379373 144126403 664952974 85742225 496387804 793004768 880538554 928785896 954193347 710615033 794105517 480013915 839278978 373432655 702712076 881295948 884070220 161510789 165981834 452351097 963528224 979009067 990612710 610132739 891389898 445328736 470743850 287338987 839516757 292029016 974030457 918493675 928304073 274862815 287539634 74218962 440030395 526578223 719141551 728758912 985047835 389330305 856212830 263063324 734114000 909180027 953429526 144720201 202398582 746030978 855312705 51173253 435508815 540398696 788682431 45552002 97559701 910979206 975601529 19905003 602844463 685086016 781052119 695465314 709804950 264104851 658908460 893286375 991756872 673634036 695889575 353876782 641805330 912590098 969805590 201638444 899906895 715398270 935497823 518204153 752596121 465576584 856378427 781084882 940034824 973443546 994921790 979073832 985255389 76477426 447577938 444706219 765203835 175168584 341746006 183683191 615745443 448404179 800343603 102694021 545852155 500083940 612843000 55146416 710271019 119865870 376583165 690794379 779694539 64281653 736207606 749657658 865367167 826675915 883051306 745438878 880500472 455130793 613475122 512346990 812685203 985598273 992525836 379724415 555819634 427850378 509032880 14027350 317247039 951907537 991686923 834264243 852711760 286031074 462762855 889980628 972499318 82121404 129851841 887086134 997086002 447079875 975723975 343144762 926155770 353257117 527847230 375324495 620395593 680983292 855280074 563242698 699108917 24624553 890360664 489671727 839229969 206187828 282498985 510227457 973737450 230887839 606622703 113784016 251586162 500211054 902930958 505382343 705960104 424920468 749375275 962462829 986905057 498501649 565306303 482094406 516387138 502653048 792269328 423619146 571356848 982818955 989302742 93234858 974023630 948253549 991009355 15780575 852020140 995205151 998534772 677007717 770073208 396526374 416175534 674181548 989923883 142165380 664963949 513696187 961848284 339407859 668816099 878185464 976069900 75421366 711424672 497151302 682199529 55713426 378626086 198268391 439896886 188255199 478137193 751548209 965468788 427585634 830013609 660036730 781455220 615289171 667841102 581439189 877858106 974114211 982981002 256064540 529446652 403972928 498107125 809332774 855995344 103106949 609014946 115231623 853499812 907591796 908591786 303830575 484443660 752629701 767176252 890996916 986421972 395137023 677746805 551082218 995371334 975407852 990354804 772204087 910671030 97423437 550717756 72925782 793275133 444888987 635913140 351573908 449896778 388725641 647748709 74239364 687210299 835836645 945730484 359375351 368349784 455583021 625969622 339285761 834183762 667046758 865995800 768503162 791870650 398740092 869113458 186877449 749839761 851446720 920190159 436919384 962240437 980055081 990566881 580126270 894411384 500160244 564079063 370182915 791711967 356993942 886983306 924241999 980309603 217043434 275235775 787155658 930569363 45817786 957907556 859933049 899297006 430375855 638941852 739575577 755293312 677485547 945325713 496575336 510202228 854986864 991085306 870902097 948246257 345896936 685516119 593187685 858325515 65908305 278412437 783280046 976360711 755612407 919534633 103903411 728909282 304280106 859192171 197572838 466613920 560610215 831652263 905343932 912632181 846178078 952887882 985547646 990581622 126836469 150849371 915829580 975768272 602955241 622642201 161147810 298159448 29316816 598780925 523934380 938919496 216475205 548105306 10856124 870045560 313569099 576588831 505871982 909722836 43599511 89913188 281477221 496571841 389410866 552481154 752376067 845250679 832687645 932296438 48879282 228659845 402486824 450076220 305716025 358126830 541246212 735425550 739736789 951236110 513568162 971301331 188857917 732569216 795661937 867432865 515511049 965895391 867859528 893564787 57490749 886191679 684399137 792728840 247662028 834284034 180515158 420606271 492396558 928030734 725903494 808819440 658208798 682847110 195506667 351725325 179969750 850470753 462145020 624083663 693547495 814154321 668566212 933170023 76682142 786757125 257000373 618626412 696287557 958380079 787468248 864501943 860596660 895795862 107114242 887783845 343952800 658852588 144066800 760935318 203968261 342363837 883114420 951225343 100171734 857841775 584979982 786477704 50960254 311111369 558223516 705495654 495346538 725706870 946500849 957438424 145884050 498176193 797363664 980385015 991316099 995920748 66183194 449371109 635944096 912812923 731110591 741183170 886896703 925408101 118205421 212404244 629386635 854730862 779830828 873317432 202823085 770786196 403629308 441992816 89862852 515298438 911064550 975231286 343181500 389844839 79875365 594307869 794196227 940655457 164964148 847433706 258598621 740035059 646626441 747398545 916750860 921646291 875307085 904043252 423060960 468672272 997846931 998964673 566175311 956471199 303807908 700095441 134978149 929540646 721626395 797049734 609645274 837985796 824443490 864259103 105806478 410085587 981119553 995034039 949602129 982245329 818888267 828760397 641894989 652131182 597751047 657841869 291580657 692565830 132561214 952497862 873564058 902287474 898281438 930713007 494762143 947133703 952103028 996206772 289454374 891413620 826412736 924504153 123824083 997737630 765496077 986557945 294374285 774238485 247721586 855740384 517735782 905821686 862991805 921191021 45727014 888853172 874077759 997277062 123582910 558819190 850239295 858688137 246103834 930314488 186510529 478022079 809765900 868095587 657181952 936959113 160400894 398007630 693434481 896747105 933813023 996227340 889786839 965501605 593235683 885952353 130333368 586985114 620105260 957211480 828781673 903818440 170720944 304140039 420566903 671364865 563739870 723222742 190196697 796356501 9261583 401440291 820592804 973497267 190535209 388898933 741436479 989672305 748412943 890688942 983049166 985134080 757064007 957900260 114307055 946399415 608070155 696900197 330527310 871263121 87286152 671279881 639055817 825316877 734972424 798969649 14313166 116465366 108856813 443541739 568350605 607228585 116168112 597427690 661902543 666601906 66519976 875683789 452904217 978246721 214537429 256642795 336295864 576406256 626739570 800491944 949740442 956708217 953000395 981993944 225210593 914081602 113834652 842520837 61808062 949226442 237302872 760149262 371150283 849287341 217439655 507001445 931211818 938760813 124905569 869484444 976987107 978813893 587973069 966294312 444811969 581774312 100517148 105225615 254606125 861177433 663340249 849737671 793468558 916293141 541827149 912685591 840667319 876536404 516164350 869751692 141937466 175913304 765514746 974016478 250205934 894153733 714104313 772972091 569233474 583803888 38809945 652206341 193765282 863702459 946106531 950458102 940946009 985777475 981462832 989354139 118796251 797962784 252663815 962725836 288589505 808806183 195038769 506970901 948435905 975757888 697513036 836014364 360141368 418095868 927919864 931740270 413523364 457488264 395059893 421675244 567145711 930201718 598152949 813469448 52560670 860694437 361413623 703007388 99910 807854426 733027503 920832570 816811572 962374550 536695628 599567460 611038732 868670370 309523128 450913964 390385393 536322715 733000786 803701556 361173406 975583450 884421182 964170432 632667905 735263636 533919865 914243331 826887519 898171738 628505641 649564437 309880957 519085742 239562825 442937141 328199879 543591336 867574628 884139948 870490674 885653935 632096195 820127556 196674021 934019451 864135265 940949521 920587580 974970993 378723070 583461927 688972143 973605723 777259957 986736704 763219683 938262065 185119475 604615455 788262954 895129796 591143958 971320488 29403707 371611380 842808347 885205150 160681119 439079463 807451188 826640998 273612114 681358425 724791776 895648254 712421786 897687142 971978982 973904735 563030493 805702955 527855439 902051073 127076597 466891676 715564585 754885347 23029765 342104542 258650539 917792478 703175843 916213387 525924897 762555742 350423800 734674210 875170492 892689356 53944216 361067026 963574773 971208121 784556899 958933092 427165593 568928241 932664769 977543353 163457846 879804967 517671427 812285357 334601087 455682205 291701801 764885207 351174221 709691562 203262857 934804916 872918371 993244497 568365756 930860262 137076813 617149787 736762611 759381875 466485658 469439836 408526443 922163111 926679339 977403196 406318998 721070148 837151158 974738720 591073304 668657362 936065617 965470732 154707193 509208701 440224467 817789500 280842893 389347010 674437401 827983135 401903342 746163852 266533728 880735799 667183377 762250260 379628434 462727462 990056130 995583955 542829214 909790281 691696334 715907818 349681622 823741409 115165214 146931162 953590254 956124127 732648869 746569124 678856788 984161296 351797504 940246934 517446700 880049270 652417838 659131458 758943223 834778324 247642938 523270226 427771469 923793578 342700590 943525020 281920519 528534953 460296496 852252107 347428604 551227295 103943477 416040696 258563308 538766011 245247267 837432288 57232905 754602872 972782354 994257880 390585280 897505033 632234849 990548197 433998753 907856570 466240670 652196322 330312748 451615564 744759711 818368448 979284539 993678658 604314789 984927929 503721162 942788895 535474664 853794877 925459976 939642880 663914418 834423477 643636307 818269977 10950766 201449936 341043275 499408509 798299269 989808728 287856200 324486452 363198133 962142524 990366234 994128382 567636649 972848958 747859654 996970759 803332510 820376507 273651297 620736495 570976946 867809849 504370458 951339292 380438324 984605073 527711397 904991300 674062721 959671562 496902832 755745171 419069762 769867743 131812607 902493856 479899966 855507255 418358874 688432823 589139208 975739890 707225807 997764224 336469615 353127190 798539162 974057465 701000037 747624359 215031395 800756484 652440975 949415791 512944517 911052957 838281610 891057740 435037469 626554097 176997817 590985878 515257579 517933086 691599345 810653182 194291183 620899465 977021838 993063071 661069972 765631141 28443842 307668525 709790618 753039251 344976358 452068150 658467887 670784713 31174304 613650187 660522218 855809397 173771216 502150994 280873549 304826680 681903382 964551413 698984456 841404909 963485399 965945281 236056182 871064125 403318313 826051711 460045799 682925886 748064610 812888232 796761754 808791397 587275339 934677069 956710774 974623307 86872778 537898321 204335861 902147224 325665395 525439420 896909280 978081827 115798220 711871384 851314961 855685012 47532353 650998373 765820158 809564939 716483471 802296115 58781675 664725114 542502523 914966365 291977649 989096317 297273377 573896234 524548786 874090629 53532306 318427466 624005981 792289287 661183765 866938047 681284607 732491938 224268538 897888212 943343868 982258502 23710633 744628247 344726732 772628018 842268328 985948595 800315372 854208500 524913157 756216391 75208 481530152 963927221 994385074 650837299 814929177 509500677 634393713 73944931 598361298 336314082 358982118 252304732 684773743 864858933 984347564 192712316 765137808 209370512 795575027 394446760 832352981 450861439 614506022 158640386 625730210 479433490 826598538 385434990 615764256 600728774 609541237 389875901 535231637 177234023 430611297 402595776 504948330 207235631 658379427 631850387 735669633 662798776 830464982 636066202 950745689 688192746 888145055 998103920 999149619 516326907 659127283 201701886 489530225 204310925 974950508 56044045 916068293 444314879 934780645 572148722 716496970 526882129 977428197 930359677 937908062 802094488 909772748 758484897 913402998 793736454 970462026 357312267 945400668 950743375 978859885 533445162 960486513 959661308 990203363 104837166 594713773 854468961 869064844 26216079 305135116 284691471 553391252 869178240 987934724 446131510 598859705 562460083 728808917 788990455 880217385 999063053 999129597 475380664 877456739 826693334 848159707 991087042 992871610 81307056 842147466 850477672 996943879 747526284 757466184 525311447 743450814 693184733 900746715 737697041 773561584 80895868 223392636 454104609 996223660 818180211 937227661 680922110 860302855 928331561 942848923 265023618 706888895 127986500 934162371 867651128 981727763 2108791 323277957 900668141 981235483 224983333 247549002 232414321 940281089 399396765 878553623 520363195 918574968 329187454 510321924 827353455 834533432 613611257 740890600 172342505 178911446 382643381 968432276 157859307 854882138 556674024 700017011 420548784 750869778 64628664 108927975 769593262 863486954 598905156 795998665 443469065 645912851 858619986 888821887 440292114 499592517 3273253 528480126 829583630 830201198 145837950 750152059 388632003 626373989 1855393 17717719 968613179 988795525 874691246 911837564 486154080 646504976 138275242 533834538 28757363 506824890 430290595 890350068 574127158 590926239 10464544 981936173 940008836 975308755 866398715 983019214 512068088 958857380 402740319 446481525 60923336 931037973 208764008 212267393 482418189 773699088 606501836 887671716 389423757 915165586 139248359 987086900 447049208 995747817 682042071 814182092 979036354 992881739 512783568 772066170 898605255 963943338 538984792 958947157 697158363 821871775 611292483 989014049 34327539 155287071 492279974 975266348 8696033 495693383 690221584 930483575 600966803 886389503 336705256 691106676 480275751 669416258 138568416 875967545 660613627 724211382 528999882 905886383 274725648 624073578 775752602 797086309 894647489 945772594 563749395 974945931 978670442 982193463 450755799 549859663 550176993 683078949 649039010 984210257 316223278 952885981 631805623 854972493 838486516 981104308 603399622 968742139 123709373 727132244 179481612 528811952 56431314 341464596 42490435 45986932 188686847 259034951 723589243 808212709 427611515 673107801 511451771 721502971 982721350 989679624 159299546 999079004 973124398 994150169 956840018 998086759 709573496 916676080 104644310 626899439 213830389 691886426 139955928 827722368 876756348 927288609 327078780 793138744 146575460 450180321 918153030 974909358 553363358 890965346 679213116 989645170 791990323 989110850 171610071 465882158 833237807 891034960 943646788 995089581 143317627 617246883 631650717 979010354 568511361 938143712 17483896 782145428 503211011 511162905 382376546 886325004 518407171 767689393 688032327 989211511 934459362 943324780 305335945 371053998 354407625 745805124 632473351 666785568 257983159 553740438 183494797 874185388 717912391 942427680 206978412 890783412 714900062 727180295 163733587 585169475 217220330 555182233 877357137 941102389 353324520 597535023 713017470 877318742 9221712 677213549 998789121 998832406 698857140 721082538 881662592 966305221 754605090 950118595 740180903 767020883 53078595 147989094 604759832 930431477 88515810 842270533 769577450 782117575 613629930 978401799 717796501 797374331 730806400 880724970 515694254 860963946 806262438 990930867 758005895 921676663 60717966 650922486 722727749 777255211 595504788 705204661 982198799 991236204 71867713 631941866 226791422 751053905 187763901 494079143 665507926 731405056 231178650 705403585 195145544 633548250 547572681 841071718 197526953 262326019 629858386 816942756 385644637 961505373 837778862 911534883 583921067 651799684 330261198 757244508 191529773 781393151 88017680 729097237 364396181 919219549 491849917 821872314 450218261 825858419 409788373 607375872 655192427 784613917 312100226 908715214 410307044 596246075 922043301 942341542 336261923 978716498 670980740 872470895 595166167 938580708 279748372 666187960 566357269 651131680 973422358 988555490 155323575 747206590 980443707 983289530 633213967 903101224 186867441 489807154 1193000 231886036 979257011 995921292 745859321 789049213 325199201 738834315 58182595 300289612 271545698 469480792 352268213 521610990 370949297 456201626 572836453 659336233 464702790 636526235 53962963 755324654 960773244 978223362 214501645 286460200 645756715 649018776 869107068 871499197 602127553 784921184 432175863 886213878 282952222 627191377 728772484 866199648 199921789 981673018 775616274 868298294 805227958 988616360 65570437 174544619 50399781 793312389 785167036 827978062 963233411 991608583 56899292 366330898 327287680 816877057 703213934 911027113 431847246 914232696 421978382 626671491 943410151 953320762 964162366 965545213 540057138 811870724 825171754 882780220 608281838 756852048 852401296 972728727 594626243 878912110 626764661 745557231 744162283 753200207 862195705 910862762 444127237 941458719 418479112 833559105 372845446 747195392 559289529 867743506 752078865 761720240 144553609 329782260 412007999 568269791 244583651 468939995 94346541 845780266 453033828 687638750 684671107 807099149 734327160 982672166 555470877 850652938 554936998 593774715 223796354 899092747 922782192 989469384 257064293 761500035 566884701 873400232 796832519 982986108 556255114 634812414 723631647 789626582 46481640 479161758 679275312 995238898 79699693 320506695 443673734 543926197 499374985 591874203 781593376 997824015 13673433 91828504 978000254 993374800 220987379 934016674 375987681 695810941 230375159 477763510 368215221 820509879 599413770 845541296 952694745 984139700 689019357 905849533 974574408 975810270 500757993 979891364 685688646 829070578 468723247 845796416 238013277 666953917 320586006 459647502 578903113 916553888 669884076 690994922 957257179 991814994 971057035 974573510 946361135 997654156 957590953 971875578 141057399 191273056 431992227 771786131 898693734 915266773 566930313 946552787 550531380 901787905 537428692 921618875 3561801 686580855 86402973 983826140 793369226 985739852 552544407 726821608 872632891 874613582 804418856 838028498 162256577 575270135 167906501 314841525 794342187 944076729 31899819 763693530 392529703 614343324 395155185 544023240 484206366 819351773 810692570 854879758 251616071 988602915 236531125 927961281 823776848 853909345 343614048 972664885 469069359 742963938 474712597 843974198 376157824 750458518 160133562 518540104 865638418 869892734 770044307 903542417 429914256 791937914 40369148 801855996 285228305 358779400 687486437 874260740 400090906 986398436 126620744 276108019 51482161 657998733 659857226 668437752 891886237 900664099 809115585 847900061 960204986 976902078 636326118 840189536 222520832 650277605 454192239 651528949 300404349 967859900 812925313 976095072 369857956 830620401 143229567 726078427 513338467 989140647 538107011 637772044 149134075 532511710 138978985 266572718 635666582 991552365 76210870 949169260 262989149 911276267 709069715 802754060 818717421 833460730 253038996 509163474 389697330 399354436 122492341 642653860 778444629 950291479 881709313 992162270 373298163 944681513 784409738 974009252 522097096 604305007 320115551 911403665 506357437 938220159 292046510 539007976 359180485 666408832 139962793 238220652 947133263 952207524 983056428 990479722 802801445 958492629 245530475 359407274 569662666 672938517 12957815 646839601 968704389 977712257 901568589 996476598 147963363 243543192 112671103 461440945 763150413 797872345 497135966 830158170 998607606 999236184 538159335 546358030 450408537 763167915 720511305 757712664 506893498 567409624 347361874 419606223 513191032 631869966 13795726 550480154 505461412 532181020 297260904 830272340 856346503 872563488 988521985 996037531 280084815 563690449 572960694 794419571 438285549 652293573 77103171 841161074 564591696 807141804 867268942 929095268 447707488 984775778 315223087 385835022 784493981 973704489 928241547 984621184 47289574 168147072 792741930 826958434 390046144 787168739 188516539 193800445 92577469 726271580 713446905 806591296 503261238 562041410 474254304 503956661 177191663 717799359 279934984 897734710 86796761 360943990 43557930 662739447 946830290 977998236 344654992 892495078 702788988 880046964 682662307 797798907 506324530 716584421 961135607 973282616 402940295 623110160 622277467 925058133 263751169 319880453 69214077 93227253 402128488 551649790 971819673 977965002 640652719 883613208 829931615 966340655 705678521 834988127 706302121 747119543 794990208 834892798 905201063 949433720 862266015 917183071 522058562 772287100 569229340 794541826 180120372 446344093 176370799 400436386 902777131 936754464 316547541 634051395 629920494 839828707 317420782 329227631 52134812 499025098 387957012 740599296 993947520 997708039 345035494 520631077 239865406 354953066 362617095 723922364 986452058 986777112 416710180 967063044 35559801 403984995 945798597 966111625 299724767 726512832 62938177 144640397 829707776 867905963 111889790 844563163 789709204 800708463 373238615 536993959 980638574 982525916 61863897 961178814 615434527 901564044 587931346 631903395 350736342 950642995 339887117 459926555 342668182 682931948 930669914 969897977 400014752 714722839 712485115 728383096 966772520 998273632 449449985 483215254 391261111 771749003 364859936 767614044 462808152 515443662 546284742 931483304 208151434 414105478 241048010 400095898 112449173 285872260 580514341 893146071 927201904 946245812 455023821 815924435 688778520 744977277 560236086 952402612 870430333 951992737 844728994 956290071 610777295 963917386 322613644 338703786 795947354 832644337 841843885 949041087 92836764 540536642 328095484 696521113 34613995 350723383 554776874 706063441 750183845 893924457 869331631 949277669 470386200 582395705 382007006 784846319 935831430 943982053 951571048 972661631 898256787 967644882 375559017 742686913 607500713 832677289 542209497 658582542 389287862 507356158 935839688 986749880 989326884 998186937 527213077 619895817 631200520 879176732 943534878 950030046 750213301 794256345 918014400 958958720 717873982 970723187 53996318 917206230 747143174 913457163 281815346 728198679 886607739 889722392 892041300 894580903 274621015 523320001 847416236 922190061 880062090 981088879 516398485 830085982 108296844 677325882 882757326 937727978 398079134 872030102 204050444 699942137 873278849 896605999 847509762 951909755 182728504 676438888 448724119 879556387 409192843 712704151 691177022 805476899 390479582 402501449 427853494 619480419 131526920 618932319 993267471 998590826 918198421 945730786 515986440 695313387 343433038 531937390 987251809 993665745 946100256 981874241 448049357 575474415 655946151 723899578 689432106 977123480 647694708 815905670 173556557 799446554 163764976 587705958 937850714 960042564 896634005 909802994 646964119 911581263 740483777 839243840 547895159 721377168 283244929 685846288 590778352 646424037 753695060 829911328 336942572 492720026 529043108 971296022 586504795 992536711 467885805 858393014 584722436 627135042 454695360 957461801 620040722 754638984 222426809 624650243 944436 615084106 416564316 497936834 32610005 518066647 67889339 841626707 977028884 997315051 300325625 348128930 9808029 488703882 158900648 352211958 97517752 748779174 891571188 971555277 927088497 981651000 796825658 994558002 179221618 325138097 314214351 923393016 827780175 865221118 727368365 737799625 48516854 447737988 728645586 897066932 671784139 721610954 84746233 768739807 298063433 412766964 738348639 943938414 507792320 556209092 831155878 840666678 501214601 907511823 408488895 714826938 696033892 880216490 813512472 898126291 586911549 996854677 862359812 994885052 30733145 692725847 914006550 967767965 908340557 989944786 550358730 575036277 705314697 859458050 580670235 660424052 732232973 991834783 343422347 522825193 443017787 667796836 297576964 955498978 73761523 729470925 531325924 997546576 839056838 984106906 557797142 971508228 861847285 983069536 96553459 191424086 125242370 859186827 533115681 952599384 922309026 954578593 754055762 800132547 233341911 659428421 964905960 966821402 170314332 381254998 639380056 826047329 759695819 944578789 763748603 839177672 782527230 857201956 326072212 861974939 883580653 941643625 403271718 439708554 850428757 928282742 743247368 821099842 50996212 448813312 67267295 275097997 950624391 999269878 226257376 832847583 526299029 817079492 546953758 839115242 878841263 932047165 257444465 823586079 282394575 831471486 445882896 995385672 594166673 828463021 721811184 965134213 740063951 916567560 823397280 864666203 632965448 780735107 518317419 781332391 114220543 914595400 788622532 897454065 544916901 900092472 472004118 611904479 829356333 830431546 149725341 341132630 264007067 641974097 471004348 760158541 59860083 874585338 833933585 933889932 804484805 938873529 128796037 557759903 360341422 622399486 90635026 121543877 822205389 847511667 43707783 384878443 122961216 439302034 564239369 650625210 41681503 794801631 156081186 534008101 988715159 995935768 191700610 493747918 844472197 907823556 244143706 841174013 915880074 956333509 235432813 478260438 820385234 920378652 525817566 874421758 426077776 734112309 199852648 351406252 855553936 894694484 643491728 784332426 542519718 944993145 385054987 908903900 792886218 884786963 20969818 576827356 407665315 907240638 840668854 971293497 417035017 922861715 69554353 978334396 407162720 711547157 857063325 880420805 246961827 673927219 850881461 917042016 121185858 418260082 314190324 410672825 330254735 793445454 751276212 992523931 60330105 618186342 534937575 958831911 515190320 998949532 482178552 561044476 971898576 988019161 696496956 918907521 510348471 851054989 639893393 930903181 399623132 758752230 319852412 674797603 90939409 300555961 89266944 299525190 393405760 600709649 732406660 985940439 190834799 818457356 483224091 524652726 929528284 994451852 598630071 763205624 139982048 891381298 225531026 747065592 214264090 712958653 697468206 949446835 851472161 899562560 684868449 697121968 821607090 903221627 18688081 27789640 421872591 533739473 673350026 745147631 813007068 886357955 835290149 948832120 733639996 774055885 207234537 788544598 680091959 895828798 614063585 992705126 209095406 932028420 152799008 332068702 805159384 944615395 530302367 787587778 980297587 991801796 641546203 934079918 61142527 88340934 664835719 879260882 486918885 780704639 260264976 620494620 863267283 886460837 205553561 330320899 50296672 138958489 826522979 875050702 53009756 728627211 708131302 800011292 225128083 894920276 25275609 326522033 91166607 284967196 31394104 185068060 137346904 797078052 973237631 997950344 666570062 766316287 286021837 680454509 112712416 138849727 872087657 956549944 823603288 992242160 474099565 519012361 844289014 991973882 233800064 532562623 891366848 938771848 635366399 726367447 263725140 295329177 862777922 972902552 898178026 990130405 489211865 820245132 653752860 755205125 855482874 969841462 709541903 858917846 526367574 628238886 167666256 313807972 778063779 884029170 992831021 993786175 507396614 638223123 747391579 758842450 467895365 684324167 56678510 704124047 290889600 597598890 166602842 732150138 278812606 531171137 986332089 995388465 303806533 540675279 808757275 816830887 352311501 535583376 51137257 61506436 633704558 761316533 40847392 304274339 578694809 913310925 503680293 707004250 570486182 686451823 94833883 468175516 947392995 989697995 104730646 764429663 620023248 677912321 508499274 994124459 294581265 721181496 219995832 441323122 775759292 912682017 555583073 910803899 600187304 775812878 284688150 369039183 96034833 594390093 330304952 560231611 339292872 358393244 591449915 726784037 428797018 754166697 213583365 431657760 797350674 871433869 110848983 938397237 420287126 684617592 133906774 911669941 281683401 426571889 346011098 935858385 550780319 692961238 723043062 742745971 233130961 717230206 925100920 991709365 201839857 471333739 185245009 393406129 863407375 954405438 100343036 236356806 996855346 998186907 230794384 746710268 472341536 653966970 120997590 812687623 706631076 831413507 461199104 864244282 897444341 986542253 990881524 996249165 683794388 935863506 354308554 809780478 806298265 956614540 489528429 561607219 400909211 790089977 273173524 971105116 691887521 814431880 954016212 978876718 134184703 650111911 218442108 704766269 345599280 596344817 86114152 866993461 302542967 310617837 495606159 616519573 848930523 909599687 194713331 603193428 582956856 974731591 532187226 707611931 691372098 873189484 142605425 693362991 896237274 941655620 677223831 975929015 955984650 993401034 750048599 863795743 754207066 801022626 910652237 988798791 235955156 425409246 2062003 494450317 614628721 661653923 587214038 663344549 954201821 980641085 739586639 842643307 642663758 730836705 626317105 997074579 701084751 822604896 139124813 812457303 445325713 714813723 491107421 781013725 268363898 479567259 635311821 637723787 283467134 972102465 229609545 440716910 548245594 787804908 846687996 876407076 118705814 955130968 565831917 910398224 349064415 793687327 603878370 610729886 626290823 785702838 321086273 966947369 962277870 975720685 312357977 350267999 968860293 992040980 470142602 637644145 116236646 267643010 908512566 997467939 388448375 752964020 36729480 589128430 426573074 972610143 24136150 82924314 584666180 719348383 489685056 887535833 801702821 867047406 340968945 890863587 170588151 763558785 237524732 375778003 311360225 894288719 325824787 918830597 95267100 359473528 721700161 934584727 777849196 933961783 898787266 913044202 671784356 944102064 783369825 948852880 105786643 493580576 879289893 881736394 60400344 92131909 746309520 855753159 549115173 851482572 528374853 824005103 617225926 712031983 317569492 896910449 293556284 613159185 538038307 875114820 287013046 497085195 356122461 605867426 429152197 924490993 524468328 792950539 738610042 949354457 45535055 892720298 295984783 620061649 663262785 907372309 660146364 687394262 444592543 588832229 785898244 987015279 286125645 564748388 573371177 768846625 607354099 830580399 520518310 814298399 711466271 800142693 690068108 903529614 484222435 738496705 526741395 684575402 297827925 853185921 545715056 891472090 251116170 993112478 431322948 739882151 588642215 926363830 948694104 973936622 964578834 993708023 909057963 956216921 665551019 864856724 777263709 972068824 803724117 808435527 157674210 556667033 954332361 978337114 54429081 153485436 172862704 444573922 657576208 980255448 700992355 714290684 216514783 631386327 396756595 590298590 746104106 979820635 238873893 470757577 230482664 769522403 593314535 785258094 369545929 413842670 974822643 979491455 197000035 254565416 16028879 647956713 942440901 976744032 817852835 977761010 728606615 888291197 578146152 645136710 673003740 744129943 60320306 331829058 118116476 350906959 404003091 504850223 371385654 573116151 638658045 758317662 224921071 736422767 212522473 416577757 276525432 309792370 516173301 850828766 164420554 463886807 609348260 854060887 765593207 820876518 65721269 884650727 448000815 695626001 959565393 964008399 2569432 368105369 241642058 688312129 540929944 637386101 672365748 950125734 426975654 434911000 143536719 338763361 341934343 378643269 806985370 957380789 869272507 970932223 935861433 979549906 77956428 419297364 915114844 952278141 115712735 913205170 98806791 355054471 153662304 400905159 990345399 998399677 331429941 547833127 674503481 967103395 324256843 452680540 409862601 851037700 674879479 969771955 538150753 854406044 251780659 786126802 709241619 750173694 855494801 964150826 630526165 956121003 510758144 846512791 669351349 670064847 643666845 972423201 142470327 394141126 101365590 881295888 155392176 912517218 848447577 926421701 89863472 216855016 981548737 995525998 909212934 947684972 377095154 923323265 570729950 864970837 61553101 331392065 859320726 884050311 147865705 490893913 856251690 959769783 608503138 694614590 15310101 697773570 934299543 962978941 381660580 386348152 538559734 868005098 522632000 796844501 682617709 748333543 618100997 845533817 477748196 479457664 299528775 744046649 620323712 871390547 660038380 928210560 142378509 272888028 616940455 938536272 664259824 919919518 687859126 720214254 282244114 906339956 140762075 539594923 991195950 998298967 972290315 993701725 244784571 942644538 471625725 592575857 556424968 861740939 619761026 659169327 800105298 870880181 515687908 645399736 92684243 595723097 187312023 871303431 78324933 989352707 611952815 851745570 114005421 128570833 877277222 905689476 832294402 951860133 68490112 538546534 203650176 806118361 861923483 893523075 943873980 982180161 25914920 474432186 296499009 448321829 729214688 887460302 918744099 946219180 59784155 789111830 442759642 581087919 25966561 484112721 101736311 113736597 116376453 227315442 341149486 703480205 648287897 760183994 602715888 622221904 885955916 960688251 65909430 711397716 94137508 107272751 516913680 767999160 56745025 837438558 188172591 633217517 763372741 912432220 920760958 968966541 315167448 781478368 916366235 992532135 269950575 494196286 973904574 988806011 884813570 924297730 828524952 866225079 7446597 492302160 501748918 698007784 840861220 956520133 598602279 876519086 553989049 904798762 850997392 902395917 68520645 448197488 873956664 883610896 733075445 978434060 487115905 568877948 967177905 977078658 745779247 850987990 39781901 882570291 456537267 676703435 471638174 925150440 606052631 747632565 279315700 487598779 985182264 991781828 725085135 790139901 999143482 999212938 484301681 538640532 428544414 827178508 700940593 717213216 674905548 877728182 333671679 792726075 974031561 999258909 877601283 958911388 277952447 858870013 848741486 985117670 308527329 399255348 477758881 848286528 642289403 815015566 42260447 613544149 780212638 906459366 831677782 895894101 933214450 950236837 327184171 584138817 732798269 989145832 822713872 848153697 417232235 569106997 436896175 929309014 269599841 364439540 679956665 765413672 839561520 997135895 726837425 820713214 505788691 841463470 798438999 827539894 783197353 803802691 426857470 755007038 854212357 976777415 55965705 562133923 295657701 579583478 26112705 36150579 494983540 977997003 267875669 340529072 394733053 806346975 973064978 995357231 281322590 388742298 774496369 921601446 355773835 905364833 60185336 749313411 142292698 805491205 544676420 571125302 944403709 960392216 910049114 947861358 946875601 968937188 93386818 418019471 672154006 815001667 135492778 158873968 385282722 846997496 51506605 153891024 551607 481853022 797830646 869708120 380129148 521408619 314106901 516983150 238504365 490215074 153849110 723719950 667478940 697672617 820129329 884473557 159702660 609068635 386959573 640237303 802660228 875314785 216152963 891528177 910000790 961215703 275105007 465052041 441380156 539060156 565806590 791655161 458282987 759732405 367070017 588832308 86899650 753481787 345557151 788812870 327587931 899451021 631579070 774573126 848247291 933386216 205702992 237586891 769817609 948829211 388575494 471031239 806287693 920222560 323412593 603208991 307313671 512476432 781840204 973247093 279578132 489843887 720197881 795988098 810266722 813256345 131843343 379564309 294836833 318211246 174682212 189457126 163420575 966192812 731440090 742739329 859559856 986819919 583232284 753262819 836773409 874619354 131775289 987800880 811304495 901327345 7154451 132030045 450718976 858830659 371040294 495518649 135233428 325086756 420047500 843103312 719613272 794344558 685122521 810210592 340388714 582026333 213281254 585556965 24812988 568306137 310627365 429136618 652047268 774299338 499214718 609045015 499257128 711934931 572689048 808728555 779385215 885742496 318326601 952297554 168254624 297433141 915174484 943315042 443416707 931355415 335836662 963578547 39899497 352996389 420824348 683190527 500942542 857971510 785945631 796735283 213500287 674712533 159171510 642931224 12074832 829991834 643263037 983658186 826078270 886783049 439945871 608162098 341884091 854660330 718206987 997326881 44966560 93411388 772854173 996709000 770206430 875132348 549789610 791276987 870775071 880852022 365782127 652523011 808847477 933052602 681570362 984276515 903679217 933412583 362294671 617482515 223425014 681874522 250290086 917187577 667916716 928983901 914260964 988637603 843020759 980566694 43637564 442027699 1963045 731724978 568235682 677631785 170768557 681579443 975759712 978563241 88631996 275394328 565999327 861126755 428718737 784928168 257111892 855566920 569514994 904906371 145898883 766424922 183118465 996933004 947859158 990706428 313514181 708349836 861003686 909975826 927575447 982127004 244977737 585149890 292040920 305558962 524265149 633460478 689627035 977563168 627756120 817712599 945808406 956270792 99859447 466324128 700904238 777284159 148308055 812657576 420798726 720231723 568145807 678448250 761151570 883907788 520866097 528097657 337286196 659344860 725973677 933702144 605112647 866495199 331158347 868053899 461543008 906469282 691887867 782204137 847465930 898322246 288566183 704543382 743867567 990903604 499481695 934189052 374257784 388430025 309292732 474254168 725751769 945022059 999212928 999274212 616268592 846028408 39196612 520635290 674468494 882143884 176006560 947755014 951435114 985097444 427051682 479194220 775063275 876851252 71449130 186455775 244658860 423870684 163302908 479637069 397100437 416545484 620365230 854613889 594367047 637643954 636031279 761906339 311798272 699573658 332619132 928749223 2403194 758675127 773154242 777623906 76031194 934760999 281434671 723392862 64685437 986599954 338520874 736803024 563988131 955567808 5910301 885537326 382011066 963195820 718691004 765047888 308456713 356270945 648109486 932113403 426463758 494129070 596158244 958136298 790692381 961699641 995523733 997040284 985952910 987262278 121434190 691948897 268302530 620028298 667474089 891551696 953530817 985170043 884217472 974483713 766061321 991845937 989600134 991917291 633916875 754349990 145708095 314629890 491656416 619723131 351806337 480680476 971296768 982246058 562792051 727666550 921087941 994764477 442102086 471363046 520925906 845486965 811996697 848981177 540554919 737653038 863494112 993652970 95184777 124955281 790765396 821544711 676114337 971921315 24660487 281511001 853596630 934896627 138788962 612207868 115102189 972956590 375402211 554048112 325727567 803041998 307323154 738897381 358435404 396532617 928045986 966823897 242793481 886677329 206728501 942845930 16890992 418305053 381835007 906455405 131878906 937199709 199082743 879859870 179941577 814876377 224935166 625588602 185990271 567669145 781706821 820731291 786763298 972326053 212008959 578675477 778775802 822393989 39635213 220350013 164473392 776367599 802663144 851830315 687406904 695897807 554007541 859016305 461533299 558818673 567406235 938601840 450437906 744257188 423269899 492907369 694699953 985183799 446590460 946361863 969519900 991188032 272205511 577802278 193052927 318990101 801153174 821028873 668303537 899508857 211584417 384811073 586824171 790246327 127026780 661044535 195536883 910629052 474252739 970066968 447263603 656799513 850163374 919814609 52059337 106747218 443853613 889359766 296637637 457440769 157124939 405881215 732413969 898528789 858163590 969617723 301487404 743382019 30387912 864835078 518691265 684739174 348084513 512149356 441471285 958970159 537674419 972585273 679538327 732314940 316858711 869913591 329249411 357812341 557009242 994290204 114261657 677809123 383415511 991893811 93208486 164549395 361973625 501975228 373059749 682821590 874989105 928384187 821592443 852757718 315536216 931220788 463269577 629759779 660570665 920160334 858662295 993726924 555070327 615352380 34123149 309746048 310303177 607829712 753735927 891324416 15443562 523970904 119918080 612283981 737503886 952913453 69010443 975621217 164239846 331408965 861476943 932307321 332750089 426479437 295351218 931196553 391291247 683105938 108997759 253744486 828706068 883642662 271050313 304849703 838102732 987670372 502965575 506817061 563130479 881539848 806443064 828377607 855261022 864358232 613298001 885005522 309710971 324712011 20045103 688655731 908821139 914560522 777158579 861425712 315364764 729923466 720323525 738289894 482125996 700031905 28744569 571596526 297212764 333093061 480360044 679487640 948661416 990184673 443402956 509183223 155896765 167750939 306812433 729011586 92424092 137233517 787509499 790850071 991099629 992619817 614848284 868781285 196206267 255019045 774831233 954680728 749713991 836280588 628615815 890610936 285647424 844666515 637197580 717384550 359382699 456480540 845469239 947913341 261579975 705108337 93790174 155278838 610114929 633985400 769597449 921819746 211986282 251874114 6660595 276085913 401894764 821787565 631222681 654312267 670297568 909733986 30803782 554930630 632185764 679129521 5035518 779159861 549747076 610557422 990346639 995264682 211513847 483701597 886149955 987377547 682973885 743313619 6200018 339021458 641052996 906319354 381255757 448695875 422498140 630984162 507354790 782619863 245581612 866940119 885395467 891181329 88658516 504505808 350623781 406489983 175695249 760976161 225456530 838364129 703893417 726351983 538899543 723181093 224895883 850076099 170677759 787659161 796299561 963941494 372059409 452778888 304193594 599517174 501836005 655640977 67886081 182138033 686936234 747238850 365505124 953295487 65423206 735799159 432340355 976158486 24083746 57896175 475424741 913099348 604087919 990134684 726780451 953202889 622805729 820345384 558725164 986002927 735354737 964065741 995283331 998705441 151577480 344399143 650854818 770726166 878913546 989498831 239290140 612654246 432223038 640184822 39569747 471553168 323134571 920740223 891330240 942422414 534299975 875052243 133385191 200003226 436820935 773111662 839923233 891449973 498682144 764368769 55781220 225297494 924600897 983964136 452653420 931691248 837651121 877128404 140140856 935121429 455086536 988272093 718281106 748295229 690060071 915522327 941664380 988295228 291194909 732542666 304061587 632700950 435878614 770720292 241443602 826422949 655519168 833565475 52460179 125371422 931337078 941121027 665732124 927034628 644883337 955744363 437574591 464985211 293908671 335769118 923830359 968580585 610609376 778922410 342012926 880845419 627624243 707819667 406691788 624461852 378133596 867631045 772810039 783287183 257829485 827092739 168985477 471496842 919653905 975336751 953258544 980813717 998596762 999333758 427166781 696833473 526221780 641809511 444178619 641670543 515260192 518916238 785836304 992395112 827733574 990451429 456726379 895485487 563191043 841842653 768339266 774528565 638201438 867066211 727295044 786817459 527205385 588329007 591419268 873867006 649559020 686695145 571922076 795674693 689312082 779930119 535510261 974883744 650882322 859383353 890967390 913236008 510970553 891154783 194339856 836501483 139914054 801866762 761661024 917873964 925341120 940807734 138322757 434022506 594797529 981713294 184522916 758904322 940109918 971258013 367622153 909588762 976355544 989606321 192083932 329124468 298758483 739412865 442502563 843384808 247116091 679011438 837623381 883049948 435055509 961671927 238673822 797967480 710140382 781205286 730891592 960463008 305048402 675987318 89594257 818927211 221665774 526858667 885150326 964886277 61734614 647732067 267875329 554013698 213648535 732447855 351129599 460998329 216337176 480599959 576465052 911031269 766032828 911872981 891714960 990481278 913591534 927722090 645484872 833181586 836652084 908235343 301252426 947056418 701008872 914016656 442492735 849840264 588810152 920014300 650278159 727913439 830588948 874285102 40493636 947646976 608076722 996912872 171279154 889737062 124476266 936080822 341564682 517395988 592164785 617760306 377637054 676265939 760510099 802830280 466779511 653712196 837677907 850845482 437114572 711217426 113758886 303474387 382777995 837586840 563301086 921242116 866332368 988234193 250411672 760446693 392885730 919315896 6574027 304342313 688190651 709500966 826053377 919800316 823353976 828128459 618305866 944123311 522253051 839461295 882818635 937381486 103503124 150182908 70145400 253457610 99026074 164509034 989486506 996848069 108266876 134991605 722033633 962523890 2619030 655622061 568326317 967644377 973283033 980431059 98925991 497066053 721023344 951088069 635186386 652185269 390275561 940943823 769672328 949312175 943279729 987429641 854267119 910472629 685171609 950466360 318518006 901400081 398935434 697230606 306858152 725636534 118328746 204608526 142811271 502054753 650853062 712632292 476803449 594349019 26487056 755571172 871090491 884071184 154505930 550424661 881358426 919085691 414906567 961203843 330763742 872560902 110522974 697283449 623752091 847467556 969805470 998149267 696615078 989133177 797389180 936695625 433655419 973976114 712707680 780642251 934791453 994871419 356785408 888169788 916494689 916658410 43332107 310845637 317064592 486714871 413723416 888441424 231772671 980059362 562487950 688577802 772392137 835720190 848792430 905600296 524071002 848222921 308793848 389213034 107400020 713254895 372887136 456120748 198167372 341131819 708578866 710246674 345381792 813868242 9681140 812484961 587914450 883981826 337352922 625363613 658126990 937477235 696772595 963627115 767864849 792049024 711344857 912717440 277388046 981088771 703299679 908673385 401442389 422325372 165453447 859802730 899498086 990949401 683407510 760561828 665215103 751887899 793793561 912399720 227225341 824643217 716317165 763857698 319910719 493055498 580820720 947537928 107658109 292152059 987323334 990219544 546485575 848249110 524728864 888604940 235127216 879241524 631687572 647443429 250625628 934366215 307230212 681635215 312095374 409723651 762878411 806615310 184850605 870342789 81872356 215228724 78393645 998695787 717676251 805093540 1162482 677811495 478879030 871409828 800749852 823387420 654789564 764520074 257397042 401745224 230627442 486247674 957191394 993203739 182261925 674783189 652420770 953989876 620344383 871697528 406841896 669573674 189593959 670172889 877184978 918855438 833445829 910595305 427991368 843538169 343012347 944313542 976190359 980983100 835821876 880133197 909581195 913464948 468740113 941094241 646061608 886402908 341513053 637094244 157849849 395144421 695590205 712602697 751893957 833891499 127480452 335520006 768133780 924820422 495318382 744316183 33438072 892929891 404430547 590735310 957184252 978058946 640970917 906149120 538950692 939450067 580516421 761719836 788446901 889692403 791246202 903092921 687726596 803374833 377339011 501641213 54078443 478388224 908323391 949741014 418801406 551463303 191875733 623277854 870857581 954362507 539960898 881683136 335718069 402635850 479012058 497672849 54517568 883403331 551913554 888992479 749127280 929150444 476809507 615614551 780173063 984815902 703949513 773513058 900748306 910301975 376990778 994697147 109422853 661628359 840855437 984186785 988333334 993103202 269313706 747653564 49993859 71458317 595074792 996401399 897565509 940130065 384466892 936687923 875681 142968667 654315330 763279514 748731392 899298128 194259105 803045866 440103996 669579367 28828208 419634349 533371299 743949110 25003367 544763545 22869445 885568903 853528786 868953455 669801384 759252360 570795828 975680105 323061592 454962554 528997765 920845436 948303626 949911884 321050905 904928430 516764279 843434568 951448052 978827882 439561085 834376582 19188736 147706218 944435799 945480946 61997930 207593782 738606199 876193194 556432822 606763135 582330156 943763725 777332286 864147819 615897060 738234190 825158363 960805582 744395026 843821259 442182654 875368149 295271563 408840581 152159453 260688559 87366596 856535589 63091979 486661409 114464357 223416508 750666321 844395623 415539662 836181232 204569881 404932944 872334353 939961496 345167548 565556892 249312920 551600025 555427840 888141539 745708432 860671481 922686286 948678207 154804584 833142612 972274060 997153969 325245556 355582261 80590084 837508944 574865819 904817816 205117657 446840714 202410251 208322871 688869949 858104743 410197955 755460258 709223240 889031474 800127971 922503043 842993329 852711980 793094832 843128258 195168903 970897578 76850159 510864686 682939696 801198206 392524796 871253240 444568263 513930750 869917041 995558031 386468496 869230370 34456849 198801167 628895029 671736008 368704710 734941911 601620907 967930806 354280812 758424333 198340624 816269454 211579374 370369377 214583347 526740400 133298016 960826995 864674415 939107023 278693907 524484613 320279901 426189559 471946321 803210667 355044233 849972340 275146411 769921200 686809595 736323018 718785062 998194274 181047541 494086920 64715023 193911013 186819129 486443412 618695938 959867422 429353203 769008181 866382733 976706765 644751460 780144155 655149206 809695413 397865993 447181735 439881138 517016661 847038621 929684939 666857925 697211591 323969663 878065718 181362097 451401490 430630349 477987795 266692043 439688065 79425216 271859005 991998298 993511511 944316997 977755248 563438290 633017615 197664872 663960840 124008861 576809406 504174241 858127547 300162931 777520854 651562552 976984356 383518394 702535597 126722828 392292571 7020506 824193903 447825215 836327679 777672225 812973063 442166153 628986429 610337413 849299355 437819250 899291214 652421175 713327076 459094107 987860010 476658784 815007997 79977661 609795108 654996875 971142080 651563974 889196795 444973812 732608703 216256012 249227806 722385974 785605527 938028590 940605469 115520553 792266148 517461811 583960458 799323167 831763063 124620384 957188810 261852582 288070387 797458025 899723259 21900471 865617399 261475808 323123713 39648307 391270732 267354831 779272327 278120261 768287368 624081379 745432967 231811017 988040308 821243931 915811682 995089317 999154787 614276486 846687703 111996818 257638589 184550013 275305695 708503713 939142867 168252219 549206879 222754985 350111654 567739266 984751679 734908986 927746616 36418203 45799585 399175184 493143398 467105999 745354308 535158886 779645482 194416728 640317668 141591336 939858834 835677700 885130439 225875212 240017510 863504867 953827584 646468118 749917770 965811930 978849343 167452549 528936568 323048346 528714360 172376308 789057868 594978559 834468860 942322187 996005867 681633984 831093743 599322575 900789134 196571916 490004041 552478458 669641420 760727206 879330210 786068356 988465380 181915768 441699210 438424817 863290286 92643497 679179634 973072077 995366838 520679382 688145203 161046303 203856989 432938849 446471534 492926010 681613113 800008617 935982551 167647253 602782742 637723398 700396227 640849195 919381832 47504628 196402154 355312787 964657059 67499914 466034803 612518997 740031862 319282602 888745015 416525475 545851373 386241483 538585667 401097010 549421950 627237068 910537452 487022282 690669561 440049336 809459471 200598494 447400793 852033394 884234284 805790804 951364622 913671633 981714492 416066496 525360859 879729815 910774083 698158923 910495576 544211320 909631830 248618926 403047804 994138095 994921800 253864808 265761824 981032705 995618769 498844785 618734438 476152810 518402204 439006782 504201375 879147445 980992301 107476876 157387546 563695070 808711983 710059000 782356162 570397508 586936402 663670082 819655056 430169767 595138040 440205718 779813151 222697798 746858536 554673822 658142755 378274659 745851370 862245366 878814087 84602390 326503767 525591230 612515764 826111378 914778786 893032102 974130703 84732719 179028197 823869094 909052497 620875834 766814354 405763544 980309105 443847337 762572484 822721976 963338379 263826886 667618417 560057466 738438628 761834900 900682934 953522688 986593907 803551387 806577512 524605508 800922670 913661914 986227530 726777936 773034316 582771513 713012386 799156101 890205476 721599581 908224478 366297206 915103506 799585264 968087779 948646194 972376747 262999405 986346384 672554840 819724879 553727689 819396732 843442121 875936124 773119856 846088751 948142759 994558274 465253610 479902808 980377610 989610234 391566673 726277285 457694319 664751666 394710994 918405948 366828756 429700229 219219389 620840317 660869980 939150131 980468133 986574108 48500703 946890114 36036236 446876409 64281078 80958357 981318591 994196209 263030227 423648166 711012558 906896431 844532600 849408692 597206192 600125996 740481822 895061443 964978911 985944618 533114211 894913891 218650918 590015012 802637410 812541424 113630757 638140006 311673254 597723110 873198352 920837006 253340410 548217261 671648084 796147268 801904924 805484466 903540363 998306738 455159303 543192009 386953533 950079666 817236768 909820655 44476670 753537268 206868803 909960003 71164635 108267893 863833404 929341673 979317808 979543104 313739201 676085797 805011158 996493561 177286837 316825788 862251694 914924662 901701864 913441021 741892804 856121833 164944015 979690392 437663996 709541772 598547135 670127247 241138217 445116064 364014002 884800701 81489375 209644727 137383441 630548329 515986048 609949751 663215764 741017496 268052204 453202076 59052279 839515593 853471612 928883872 93839013 843685416 794499624 796783827 510170109 719150310 369733119 562959062 138391052 671641328 2963365 543487756 404891401 639019187 202994787 692372623 20957072 953735155 253699594 828965942 41067415 184776558 728498501 822658145 381944035 800792696 992548887 993912995 136890281 680717910 184985573 512176514 3319842 669856605 252309964 865950929 330513443 564543464 859224965 872555226 999329916 999354622 521232306 680677180 228087851 679206824 975426259 994844186 658740271 917805370 475882455 930932070 116920392 867087731 177263190 603577695 763298171 792466139 243405986 586374758 874897335 970763384 149055743 890659426 341197177 582779406 488572585 581381278 255542051 613362658 434081394 557746035 966613673 981575372 517578885 890147409 798353085 854605339 944668886 983646631 365853538 995927724 33322654 298108221 55384499 571805706 474680300 732836799 910307619 977776688 542472302 946223064 799224610 964743179 755011756 793440053 529888458 799077515 256176541 944927373 294627711 717490309 395485382 998761433 403970284 982471417 813151279 884763771 981999080 991872933 541430967 726478832 242457641 524520591 708904033 904127274 451857751 534964725 471157784 716888131 283003091 638280979 685896844 989040559 446294077 845051232 139645316 438313801 513271805 876855981 629541991 671544309 585380276 687898631 212858484 437031192 747390234 949575860 570516911 653029878 113304312 664543426 709383707 926783316 117654023 893408796 509047370 689367235 880802472 947904241 804092383 861518475 993630863 997643458 594547543 687145026 275100971 467368301 279216041 871702071 494682792 664017810 438550626 923134974 194549522 544935406 468011529 550822109 958517578 973964631 272623988 336490314 983839167 984625798 570889577 805114435 275823764 317403767 888998455 984850075 137089662 852748444 429841044 475908348 641001124 750375663 567558075 757938320 970694815 979314486 120529148 448899563 36468825 850318959 859504172 946208332 802904066 889098158 404091139 597698510 103109746 633677123 516618448 986107566 611034602 772604076 716719036 808850706 791487868 824451760 265271999 958832974 124561361 898611451 251452604 506058228 157020906 660862586 223710668 304004305 82995251 539691186 490509033 578729785 994193957 994329921 389944499 920807873 117738541 639526867 745805126 879582624 213752407 633259705 34738813 305268388 27044194 378967706 46454186 690746971 31423302 144296000 346795927 386532144 427812754 717639795 575968563 927201071 51549126 316010973 573606858 595282489 243534274 885767682 736791788 877610283 771826760 995224844 913671344 940994495 359391656 389508775 605452092 699986686 248144223 499630998 865828357 882102925 966508112 977353662 785886824 927405004 138900593 324512806 369948080 657565501 842866856 880345699 379695379 781239468 335956402 622332384 541813853 829665602 594960180 974174167 41440857 426510694 925673225 944572273 572935280 843535783 129674271 750663149 95016722 713451048 691674305 827313018 710411956 722608187 892948379 894503788 535823563 993369397 331372444 830415442 964001867 982050022 200009115 645631744 979705958 988251559 665135597 699564394 686994920 688674878 70273385 971930626 707440056 871131735 288651167 750462716 180457063 487258423 460523795 688527842 607523704 684978186 593173529 643681953 999374795 999383950 380059118 620876017 638215306 910203291 674260332 798673335 31660953 919814201 644229889 671821547 728116391 738413097 126613704 766948314 33148028 289550554 119014010 875506747 482514841 701592143 803949267 911222123 157544606 493645985 376850449 900689122 55816109 622939883 610322649 813572051 503355509 595446225 47973223 888413698 139441489 407781515 108929636 174744300 673198091 962459881 594114467 903351336 841330148 874960733 994698549 998536076 30736821 95630615 868112835 964303410 834958748 973718670 654914381 986458855 587985737 766136708 989941312 993807693 517324941 556274559 253845615 976605220 334566616 702940805 908556016 944181106 551454168 602316549 893748710 996560351 104645633 244003234 443664658 467450705 133361977 387368192 482822910 717298110 163831167 558319313 761470076 985668984 620029536 905778163 759980174 972826956 506145048 577771570 580372351 707855731 547593700 558308881 786361914 861814980 958484657 972388831 787200077 984101377 934711268 966152115 298745031 354668505 799714101 920145768 852751700 956283823 338191168 371307343 571283102 753301481 997854088 998424808 294749510 725104732 604644991 672149126 136861791 415332185 217935315 916245537 502781227 728901230 631175947 773327989 369756289 811890932 761256968 776090705 728685630 910239921 816696803 857158402 555935176 811789714 412212923 508034043 99982766 175022933 804098990 966846891 494717949 954243321 956125170 978019679 215222508 967324426 953063696 956341601 677440349 967409661 518026543 883531692 296826362 326252023 493406939 942429237 315109467 624810535 130012269 479200834 571141695 851430403 347455393 629100331 473563583 524976890 699129740 752032971 70929112 573254196 530615694 890844556 44473751 204809666 726269411 905125526 980482260 995913469 727475909 979180864 57728078 653742460 900629600 975364083 108382858 262540411 565209121 593001537 514037905 592595797 581987593 992605857 984286827 994875725 278298916 725478789 64970507 935731494 389496735 431284141 526413744 707750781 415776231 649935436 480986956 495014553 661678111 764265176 629671941 904511008 302545586 834625647 283937716 847663566 298386733 389309264 703394997 782575553 686478233 748712393 537603323 728638539 494479562 838683994 987439515 987624303 391031958 692513915 449193990 557216280 927402289 950521082 192689303 988702509 480068054 483904784 667430373 843627789 869278969 945082431 345222127 549382609 728775667 807270829 939634139 943058075 65235268 690385323 410318329 991266712 831452887 972644013 817576912 924146136 91965817 134270491 814379844 879634043 221030390 957001385 862461245 884670604 463754623 772194980 704286885 762738226 826462266 956063118 748507063 799496473 390636460 424530856 510407315 864332017 229444418 641642301 993749159 996208482 630148088 675857556 603278649 622859441 329488392 450228824 127030295 224236906 363349416 380826056 327874361 818837237 473631020 686929949 946668202 965918227 485388567 488324769 437629669 859775031 904757659 941364368 550644809 560731473 658605605 751808415 27579455 863672444 265354397 785074011 324483041 646903821 603126183 648677083 685840843 955962576 832937433 932989941 376585042 965712709 679431196 969051763 641800908 968780088 78072107 887347935 91187104 356354872 88371720 602439326 610040636 981346233 197742132 292522616 98717499 671312450 334468525 745399110 616107430 716126350 531758411 673166811 946894040 963925405 362157428 551474352 122553429 275733296 732809657 974463715 985522561 990158657 443253844 881483548 448787592 855190722 578374542 897299577 954844053 981717318 288331100 832272942 46358664 244654612 266062233 394714053 172402557 282828247 848483065 913495148 362181126 454694573 439711812 989727021 243853171 887830386 138861652 405324230 430347872 489440874 74383678 740568920 404597711 845608229 571717313 763979807 72814381 569187359 26647947 848764679 734514047 942008927 227334240 720350719 28543089 146138348 96100186 485162214 665545050 718029827 802576913 862943713 239008352 800606029 374186936 539257183 913389516 938915580 96616709 144906556 115741759 294568430 548636864 682806376 790650274 961431011 287029380 629921549 501236761 854661727 957157369 963936653 317397943 696544555 862977981 974285849 955147311 977804581 844780777 987451894 241753910 993501788 763167136 915178731 9192391 54141296 716795580 924781903 181278043 986927011 59417930 562116458 937400015 950903509 948862166 986886312 832006057 895002373 393390887 824481082 277928418 456162408 476690815 959612218 82516871 854123957 871570278 954898851 920862319 984330421 595396791 905918618 67492824 297172783 539596943 732696695 854340164 898500428 511828984 764567138 436424333 925297209 852904099 892732194 858568269 902775776 465397658 711046469 80782013 618905700 516300461 747662294 62370298 663538924 163008276 553920117 64403235 334830982 536172953 908541819 336505955 980762807 912865743 974595452 779809457 871586039 416499009 695844848 394218975 510503335 468343139 556006026 631893187 928723546 709334430 792248601 711746067 908121271 96979959 513279630 463288576 578316742 949276128 955439629 310680316 773563757 907123200 974771844 51075230 811509905 260421407 970998519 356206281 413515259 739926089 971099100 466746606 670651991 579376266 871567325 474905300 607595710 570300232 880475425 799028170 875261834 140508688 294833786 236746480 722125991 352915482 401268732 212893939 323904085 813227995 855313658 685550393 757077161 21213338 803315465 256494238 428717463 237460336 954424615 177594175 845343354 221070558 771784985 399666757 758089393 162996197 420559984 784180597 850202484 478326248 874334064 901824541 939323750 72052242 98883478 749065903 891190316 27527777 312159886 411420699 897752627 209536695 646473893 387619825 730394962 734060859 916268853 474315014 656534600 158933522 691090446 15890376 648470677 780587356 844752317 249032280 771102664 931603879 986941492 261030504 266601681 550044756 852220137 336770014 591977370 578572081 992301196 411714573 701953622 400244388 870530092 123339957 524775934 200472470 634494869 202040935 255180780 677110345 808756510 869856310 932426521 410978460 424252941 76932310 255114584 723530085 793381565 823343579 937888851 682712149 791652595 199100888 886524233 94437731 179888586 534560470 873331898 902394634 948533160 411974183 907029573 97204368 992306676 443588350 786963971 796607958 976703751 162413893 704274635 533801029 533904466 276918146 500796121 203630872 293811252 591125299 670302753 215090439 374767618 766258944 904772078 99915529 179432897 64079067 434386455 91166312 862586732 182505568 614150077 138478081 291073636 540742099 731535065 385457519 626870375 220812589 933488242 969523906 984727302 955133754 966735712 468944559 554686629 464510851 967718851 387387899 998478099 348989082 662188510 519817378 805533626 589539845 828254642 613865751 966330699 818232867 909154423 325423442 919435710 193999217 446816494 526906841 745099851 657615768 822859671 189965152 656474203 390061023 657908085 370493142 651413009 901718945 912132353 961800115 974239930 655875819 768483554 213562977 627897473 466366592 736272540 315907327 361037786 968847436 986600545 336061401 770265238 999149485 999255843 632558175 702503490 181121074 283069442 826787796 859441853 172393887 918200450 101929830 617359065 351051105 372808776 458238835 839471088 72093004 812697359 377861454 560851589 577144608 680213121 623298985 945637897 513483934 895003306 727795847 759260136 965421899 991145583 810318485 934573912 667959384 866126389 793003126 997591755 957129455 983240282 673403176 939371111 517473969 579597777 338608922 524091427 869864498 954611272 825618100 888321258 882263676 895250966 166827344 870176103 895889631 975180842 328160967 369660603 501324491 736523158 189467152 993978189 694578516 797248047 577581617 931785607 560209922 748626937 844390363 872723103 601574316 890223765 416330373 879540524 810354907 851443734 175337610 554987880 942183597 975607955 63754749 277595433 181515899 462207393 531601952 577911760 158678216 694961094 140551233 671513431 234324582 615301030 491754009 612377441 757350450 782323278 774399915 831210322 62928902 862370319 333444978 668780530 49455100 565766009 821174222 912719825 371298578 549215124 386496133 658578074 900952969 941225453 799094584 955593333 403838262 847706877 324066603 770019612 176375487 381328587 756632612 822968797 143005537 191736692 370394480 985993214 151696818 706797529 469727529 985962713 172122133 191359311 665465962 742638745 730482841 948781369 842949340 876145077 150617925 186992654 61834366 639837733 811726062 844272502 760034850 883213228 60485247 912356987 740381919 902722116 769982215 882464118 295723453 884673463 537539620 778874141 510636303 521498619 782587058 880115234 825188436 951363881 875287997 916064941 815592861 964628910 411429248 702413232 436191681 688959317 971545264 991790630 178971803 185299601 772949143 775876222 333715922 956845924 254098235 337664270 177296843 508420281 366934173 846664217 7341384 666103793 212935843 407492856 163992936 969223676 952543499 992454420 139531911 834045048 263016685 539916982 760809575 921541678 910052007 965723415 635480730 888203642 92591511 536458379 155910686 743067284 407727422 824544426 287704112 952314528 440340424 891007051 224569591 327524340 438850956 600015441 301547146 966162789 561669481 685131851 805028531 807506949 574734580 772345946 193323097 720825553 413943660 527972232 704308178 778210117 392886188 644949816 666646745 879940324 371485598 732652596 37013793 969567568 749296392 985925715 293637022 588727406 643036820 733148824 827612780 841319942 58108205 661622788 690681232 894849766 143927790 398580638 562354641 962959839 191864806 320089966 935077144 963221879 72936713 362790193 653154790 991749603 860865207 879954999 427059213 852493346 977291854 988339974 193266039 821305329 90743754 740011964 707456841 776129861 334009538 948816809 765778392 788405813 202973627 439620259 128867137 500302723 587019118 684580740 482065518 674937540 692097425 873730021 36927222 621787179 614565578 641532162 215426462 613654732 905750732 981205830 792279377 811556829 655005323 697405952 551527054 924563649 594489128 922915677 110730134 426706197 944379761 990438291 224351190 568924372 744268601 806329142 445527484 680533926 59819809 820370521 664931917 707534227 841565603 937568241 881424819 919317168 943848497 954818536 292881382 347787974 228313961 785285789 822628073 917486610 608904319 645496276 795169373 892235663 18423623 875192042 620508817 911980569 210184614 607377699 367705188 891413194 456111692 640043992 797883865 823705738 243873035 546024077 938677176 966665850 298321297 416818486 329268499 622716939 686887455 889635276 214057896 720065159 768750905 809264509 154478181 860954969 386782607 814291614 909490552 916234977 102774656 433440429 918217798 966577474 596864297 841090214 631681491 666701281 413761235 863219500 406007097 804241471 211610347 286858562 53277125 139399872 685065671 862212809 540803328 876235260 98192966 451819618 278340453 354316203 423008564 630958734 708778697 773593847 574964950 881419329 3988093 962628285 538488868 951077046 93764784 744157233 312088677 841337319 190175246 751144739 744982664 945777104 269037328 647193643 354614332 958852499 489358234 994238787 49172429 133370789 456169626 500307572 280915006 900706019 947087859 981412505 88093263 107981691 440467453 474971073 621577022 763318761 193281470 272046838 789664018 815203961 72413688 433125605 756058322 804982034 698909778 974411714 169517370 910880316 36363205 811772110 708382008 995156075 724703325 955412593 656432673 686840996 757569590 873256541 392104327 589369283 496438588 580264038 508657231 580451772 242440003 341881837 893642183 987717613 504295837 659415129 105890882 345604305 245359768 870841277 289198039 805638882 812082431 876062672 1507684 577148520 532570950 589207394 254650977 831684963 955467735 959537784 492910669 521320834 383773719 395525966 117226905 541041816 108497204 259603261 707149140 718568687 45470603 78270105 122015940 335300452 664741935 989423399 968162642 979267267 821086002 881447798 95828986 711554102 966706923 980984360 785039453 920594103 612375613 748446841 83229584 471460397 87084963 579819042 486261479 795143141 572913311 740779015 39245474 211499820 954690828 969995493 728028107 865117338 844552770 869835888 70225385 869081558 54954842 68078862 269540164 557451720 390772045 774000222 685414496 807089942 699486646 824033841 395105037 788527529 274628621 814403333 765291431 813080616 224844365 249475135 124873499 761196532 615549533 694130762 781371125 860186540 725371003 753107492 864059236 900045368 87072833 781361118 373117660 713364577 127746530 360044147 383863624 942180545 913792626 942106838 24170382 907684457 507587894 729997596 138421203 436481650 175867429 313046406 569527608 740008773 689584919 829050994 60732882 343250593 579360033 763319107 354782332 466323315 466556804 908322726 777886885 986234538 88570582 185002328 562694665 726610308 971559031 981962080 438453528 969207096 232748029 484219615 713458899 840803709 462670300 554377039 993043464 998689352 527314240 703742961 613799048 831223409 754604656 893638445 334960568 477309904 643770424 826396822 873441134 897110594 235093210 308349500 264155856 561802372 561287605 931159984 550443358 632625957 481157401 588713924 591217408 907601539 455031520 896528344 758241602 923639541 442880243 752894431 966064516 977950464 158305967 583717344 295743696 424672116 140540384 515955404 511798117 961466012 663050034 715293772 489978197 936699995 159824399 785247556 330550936 542522843 209707784 358129236 305987841 961322433 490673352 810888662 734228818 938333941 290226698 506290626 692605972 696408008 686458500 791578586 221704883 998288396 903409930 964441060 351856651 704932503 571762322 758099667 824140903 912024664 163071968 674415935 217399391 838476964 685551305 721778189 244895955 766985748 359836403 681711359 106983407 884354724 552860065 984014697 558522038 747499815 2926816 73514609 773001346 820398262 896519359 946452804 699684152 816665614 928805379 981024397 896421042 958612655 384336658 460022535 947938179 967231039 705663210 983357219 472054346 839510756 56001684 406359611 264011065 332645622 220877553 540082974 474299833 775674090 635801049 686738280 190132813 790261875 324888403 750311013 981581638 993182508 664759752 781176970 433594511 550546339 289752132 588630140 124620080 960306557 997316514 998918740 129073783 865529169 917302540 917696259 33947815 602560283 129531370 631111814 645150861 719852552 851453664 947943546 892855176 947035917 785227492 849609979 43024411 359831797 153122669 920249220 504797696 853790171 565807131 950752304 495453060 825080029 566925560 995144219 722362843 966217437 848438198 907221576 87288115 393297302 912864104 917382459 959670954 994353260 929878111 982467469 38900662 135914685 865266306 926231332 477461117 841212755 520721936 824055911 781819946 811657254 486976362 605843677 178935827 199930643 551173078 771012338 619388012 755635379 238407322 720868593 136691677 281500492 382610712 502448488 683959198 966921848 440394219 928542779 787433644 789306352 466563451 639172517 380305339 954061272 898972927 922526900 539267608 809804945 105097746 178549397 533429176 701284986 951879687 962675133 505447710 747012967 203355166 615629932 435887567 484495908 388975208 755542725 668135254 761055018 899439175 976831630 417625347 599620617 257655610 667602567 828470343 892170050 917840643 986983413 742373711 938429455 680651903 976867002 535078612 849911004 786653556 982823686 421284346 446717126 538828942 676692004 312828177 804854069 753233907 819980816 681304076 786762765 413080601 663326957 20246420 253588846 22049857 87099861 136304534 498638688 954088601 970175135 320611380 905964107 707512095 908817308 488130137 714826047 211294566 520627983 402732390 583229436 37350920 742117041 108702015 397846875 638738991 842262430 293645748 322708658 278324080 684953038 898941109 964664993 827731673 870612554 325218674 496652092 237412069 447342071 248863146 850060021 501148160 945207074 7928305 302273671 55002053 420455568 362715152 369015589 678660848 713739567 701658984 996037334 116637803 578367056 180487218 686786780 104311969 448219176 401754399 467194553 431488417 947192638 245572136 297980097 758022417 924616802 856761690 913533220 388785652 472733285 502620121 691972669 946386959 950090735 586925519 592262745 190426454 414055132 614717344 772630602 700133234 903701462 45577348 446107788 243476546 960952411 697161762 716051776 937726925 995981857 259675966 297621905 701119220 837256368 57739426 441105368 132867334 462130703 47650921 290974315 710446301 952069271 689759677 945926902 649810517 841774239 60261774 954007039 426817515 598535278 627731335 733152893 568633179 983708191 669529320 819195208 103380264 944044460 440054719 796485155 198987409 550185717 211140946 529307147 404586135 430252893 505905650 541430537 630457209 913792829 864126253 898633584 868305314 964923283 486133139 534009771 844493149 861192089 231147334 649048764 112725502 628630044 131026375 386154732 390273375 626067160 923158870 969342080 590468864 735279018 248207936 318926145 340164924 352934157 22520229 137474442 329304988 859567174 566745845 813925015 731148911 770788023 608625092 978150900 769834460 796335423 801519753 877859585 96275516 889380968 928282495 930775410 126990118 456107141 423676349 731518938 975288154 979748174 752203280 973816441 621810263 786867121 643263219 831608345 285757418 638009346 178318834 385666924 675642896 942638702 765843120 907442644 810356258 889623509 198432556 807662192 480901839 881367731 223733205 960455257 729543329 862919544 5095072 289728069 922757919 979810423 892907548 949506334 406564079 633797809 956118003 984427816 406122682 725983215 472057112 918482748 775383635 778333396 71700255 494786728 855185568 871396609 605265908 959788806 96919528 394037690 726547723 829760802 732449084 855823369 59360911 427019298 512849902 517782342 225969964 610191631 278663207 400227674 538226729 628396347 53554333 383505371 806135045 887175395 988848466 996969909 497153437 778222982 882829932 908959019 905635374 945326779 783448799 950490748 677397338 995485652 489853277 522178861 731917989 811894172 885872547 905524603 58738658 820621022 485191044 799189664 405991913 925560239 418385397 636778311 934607226 957497346 432301959 626051269 830913434 843243451 857296147 871893895 309822411 719670437 513041725 768195292 503372739 593478628 571574703 962916154 285760681 660065178 302465352 567270666 193159756 642867124 650763231 846189343 229723591 702261936 519917412 758913238 859886160 876736508 218517306 455448962 178721767 904408854 855427066 939603996 217153814 353556649 120636990 553870375 568633670 676490930 697745682 800665441 888386366 945404172 53404231 725998745 377743602 912308962 61273106 957436265 958437309 958626694 982639252 995703680 418499613 430548229 816858586 889192474 573119443 807419122 583814118 842058655 64217067 789414026 230216187 764923504 417886496 884336647 450320231 820749026 805710011 988687657 387039000 660509541 857345543 997454589 409795743 813467052 340330949 830740502 707682042 748665328 354645548 545628903 704416041 814930177 764168784 814552189 736121356 926152902 44250423 406745644 316913573 812080773 287849044 686377748 731482403 942588028 278416885 591360461 860818716 887330210 154103372 543379511 739719229 813850393 612610304 800565786 866658690 956778738 211778583 655016223 991691265 998372396 415799896 556077271 541621207 997444535 680635811 992754355 706976243 875874284 452818794 937211802 655992046 974716663 740045559 776529393 198488634 654429427 633102429 970230453 744094920 997814087 868806224 924327626 807718895 871275570 945455543 989240116 336478714 597282830 778752066 871644984 358684260 474020624 64048774 667306641 886840607 923653789 761876340 958291806 47159994 873738905 414584514 468047187 811240094 915699620 986604232 997285083 105079158 355766513 164267039 888545474 762061636 886959076 608352812 749318048 602373478 978669262 738138305 846725963 853890031 933262817 249048372 343860894 782596435 904892160 40011873 334220923 750656567 983406464 992507048 997127201 669821623 929041383 65951405 847041436 680697457 817800395 365703290 550491567 708093878 725855832 807108524 852782362 745456245 890419967 651944827 843312234 518681415 617135014 222807883 616333097 369131947 598638177 870865459 988415425 122549840 149130581 253554554 555989227 697061390 746135506 481563407 943038952 567136682 634180898 154779946 787807640 466259960 686214735 615937931 746846686 467652467 526889972 516735141 551150445 36956528 668440501 49561993 127570563 333487537 666171573 625982244 945987408 274600668 583087134 548438886 835294489 572751676 686438259 713699264 953625554 339197489 968115447 466908524 528457033 911236649 924504141 652063233 776851396 405702495 724416942 450930775 970153571 707148163 794965052 175124460 564215456 311132454 872613736 171901150 746327740 966102394 980948097 425678619 848554132 312006908 866550845 224646297 883039866 80567098 982061198 122572013 601794110 413870706 824007300 415685229 595949231 324777325 496584180 920081829 988013271 794519122 920610145 575957676 988674595 94933247 115089442 111957752 155412951 256219714 967272362 559218786 643581390 311088968 579445996 597042069 803910242 857473512 945680802 134655000 200661846 308225679 692258292 648376059 895781941 184271312 829743850 878437168 919589601 184916744 547520675 772893861 902418152 665462051 813100913 877732206 884332775 153339027 726717853 699366638 729938913 323112969 532516381 422273825 760842325 857077584 985364161 588835717 971115993 648002097 903137676 164863492 886772071 848018879 895330908 558393579 852090270 945865736 966925960 489751440 613153160 260698525 809646595 590552184 904879742 987318299 992548577 887306124 970750802 714229859 927398577 664579455 999052487 750542220 914781238 435632629 982435764 454649455 682843861 469675186 488869644 23993694 791780435 431888649 967988513 25003831 305620371 293631321 589241178 659476911 926932286 595091187 917894762 797609779 948454787 595688123 720591298 730116111 767975365 131000505 770277394 54370641 477221743 995163960 997542694 29265763 196989080 233199810 563226283 252835918 364139066 59636072 278171314 982126165 994770426 235027930 544806109 569945961 722457516 447724447 917635703 314381661 967677556 625239842 697292676 771581077 891443190 195624341 842905002 37203454 611406201 771954248 819672187 990955068 995030865 974806666 985444263 216746338 692073791 65623449 147990919 381101580 968913416 640900890 912181302 677351042 805552559 682387639 794757857 755692007 971494075 706607487 838843422 808125285 809026798 186525346 673195247 403455237 515525972 284759597 416153618 466047472 947493601 146831958 166122404 226093844 237456794 868658105 985424845 479292691 485737083 609804906 971707205 437129514 973236002 221364577 888096709 271241492 694333530 291302656 772590379 943409389 946914864 910134397 928750324 466705728 658674373 983750647 992488869 13865723 175467240 556089764 950353524 20037938 689968935 416832419 421693211 448644196 539989636 132404540 837106677 509399684 964961875 347194753 900628721 886833356 908518592 718716884 823516795 469576150 498375749 591154833 735226130 764913149 847033163 540230209 848440238 384828485 714113648 653476344 761296766 170790582 222310511 138222185 939197000 473348047 874304962 594656679 877900465 199232603 948297053 969964411 990001106 15975827 178784034 180477689 208046860 321026621 366762759 612409700 937361007 783493036 990197839 129856086 794300183 47282328 597744143 686164550 990452996 396740634 582364804 765110083 947104357 168155412 620142534 903860983 943408036 894411584 977257206 643832420 945283861 985084362 992178055 857569238 906584055 10317881 487598468 533808690 583211561 882189813 991381665 186405966 570613368 954651527 989012024 727503180 849939208 645665462 855851449 545300333 974312466 54548961 263623258 99195424 583646628 579743818 969768530 255604543 687961034 604981168 735777019 269024343 529546199 557100018 961415077 728654542 824732427 350851045 602066042 370672444 667601077 515906057 619011407 596169467 707951270 528732654 622049471 174767930 323659147 985534561 991611937 769224601 991823777 826718761 962572478 700851421 839403002 942461564 973332300 683474130 977607576 106623520 574244754 631170267 700649957 145028717 522391302 977725820 993079266 765021145 925668476 448389118 814544522 814108238 846279274 791982055 890192002 370679920 786518233 849096108 899087376 475271752 960950157 932404836 959629365 367818017 416207736 535608699 839978892 714132700 829508770 385411909 499397390 758704317 993431060 629550733 647845060 207394202 416812233 372669544 678740366 767083681 946217838 673534650 839450041 961184044 995795486 384506105 971063158 354111746 598832232 578746419 582224900 437215210 990527695 706340364 815742039 763228577 855616081 212247284 961975678 840769382 982855671 996626627 999204974 796209098 919591323 107603431 925935851 153727252 827186057 419776740 816738789 971073949 977208161 121192469 756390869 578038871 692356895 925112356 928251685 267736355 748887287 326424705 407888238 733929767 930632284 236999804 714508394 457776850 732232193 125187283 874238907 775654968 956847292 499431249 572070274 581558411 605055001 335245270 456454589 833710807 893670391 627999908 882632108 681415779 919683565 351037966 921468827 73488642 513930744 900599533 911638901 775133543 887240222 749997196 967602955 817618792 893110185 209817693 475697447 786222691 898057969 658033555 776568283 12995266 835793445 551317669 607878909 686462878 702313460 595376242 904081712 856591425 877251683 121890101 780097929 75334834 583039124 64849629 428531966 516620628 835048487 997981519 999021915 992681195 997723299 496603230 937387503 244703103 629516227 967875769 985330779 406512352 493011063 527928913 713678871 111135562 565564573 326227094 364839332 941009372 966154835 99597843 308094522 868776598 950976489 261896687 604901761 236440877 835953256 440675270 498163975 11988096 445071072 79975642 256741784 189569826 789143015 521822041 718902143 673967641 977292136 279901614 454600431 381668676 430023895 624925410 846055124 245863582 790994281 19285884 975493590 35765339 620177029 38351958 248955771 255386068 257146268 447357809 944801866 747522676 848110614 826499084 866088861 422044292 556516116 279069178 943559765 580168094 900402705 356485518 440587969 369822930 808048140 977053201 979478377 421928497 525767689 262358684 669126198 327350427 344741708 175675488 670044861 3295201 164421870 560507161 682875416 526338186 881078291 488470760 744475367 280925941 418409236 296722448 356269431 944260428 992379828 474144302 955612518 416447014 463134627 422999589 685015460 380051585 772406339 848636267 991030652 630736086 725673069 998413094 998702699 751078452 939852188 100578954 280150062 526369300 838231674 518739162 564265152 290717940 406685292 843278558 959312206 915494956 929145449 102649848 468152083 519752788 757657332 491161320 652199740 881270764 969684866 697129290 903660187 506416871 807220642 349136488 563617400 969218749 994566313 755606408 814327236 915468108 968601201 874587416 894716006 462954832 600136454 315651016 877176982 225101476 640997913 55433318 224553958 163669159 683553097 437035086 941342577 145064836 761175940 822583993 963935720 31535443 870591954 370418929 435472076 365039336 782776419 145059431 520623445 118814831 161626935 384840314 678599370 899179407 910313458 720356395 777520830 766382872 987593998 390870198 398500646 518897550 771353593 823407091 865918232 305996341 892998852 266744586 439937550 12227776 408475543 69905761 193643408 990506270 995977186 938349804 984268599 896311222 935177676 630997715 754670161 246642645 961956957 544944209 674592195 348986936 850282542 658707438 830155681 660284920 716959746 525937484 671256973 829772100 834967774 843200573 988745922 686119317 709391865 794208705 926610582 718035862 766626259 329157991 856414764 185123605 829193172 585249246 976063415 317781319 687811225 884884677 914275636 968783975 972184884 538894999 563294235 652222452 901157393 918582028 922528993 448193231 863606729 602262750 775283787 840710287 893106910 770952692 861325171 229809543 710128325 351943177 948336155 17391154 932537991 690672798 697123461 671705127 750092843 94717332 653869034 488284142 517216262 186965369 791215192 112308608 501322539 58321715 179590930 564017733 924517899 269546058 933364918 513728062 878355297 825453546 959099504 266474963 860639782 948742542 973787687 807839079 833778204 664579331 795041482 405712506 647072544 231320587 920866392 605684320 739641000 293692680 766100241 959944955 989673302 364021352 568663235 24854822 954144034 408543364 732772880 210899748 501749106 461952140 724693632 710526625 884169046 792723620 928027605 651044329 966797827 941380279 962681051 464014116 572772967 43620308 873296700 638000091 954451902 239849726 753208328 463512632 993141578 322020717 797232267 657086704 823855306 722332279 869916470 891163977 898478329 589265483 728526392 137709175 637266902 601230416 980671092 387220065 603434950 893681262 973984594 900010178 942943846 553456792 961647005 362748311 616874216 438548129 683083214 741925345 867840777 947748586 975486434 103623908 908637721 620129654 812417690 200956598 855423294 928492304 972547738 825353064 952758556 794748775 903525212 541734623 860276616 988081787 989935342 328022624 791149832 646249973 716419891 51230838 322126721 241464147 630091302 824524100 839862754 369708362 920355990 87228726 424240075 781559155 830305023 342441673 517858123 895018103 938925255 528073198 705883524 938255428 943223622 405481345 546247783 237315811 535235559 488703332 653657082 636762682 983634900 768718029 970811134 907944302 944941352 365111853 395416604 17544193 137789519 256825808 666390949 3101240 369802192 200691084 676511463 783506524 972641404 774314476 966239805 258132425 595868715 819057287 901486385 409484605 767158127 924238520 966411847 322095625 603321255 948612670 967194812 169615520 991342368 179397591 266724120 663589258 742179143 133154765 320123219 767904345 959836523 757371089 908046657 398570856 691934953 433801846 576283289 312419194 867249106 928335323 940190300 956372521 960550257 731348537 803426016 774101684 928295918 342181330 870429949 546573699 577088891 286155848 718616585 4282817 540018330 483167443 707681238 994800142 998240480 360784229 635446718 605234661 934511566 229794668 379477996 602927125 960141648 611849275 619427176 790035135 997662072 217054498 587389525 827182921 974807263 635032853 649993090 878776505 917437133 442334240 999241065 883746029 983970259 445172723 615370928 105911803 405539200 487942343 642946656 425732899 475101729 267809709 317000770 241692434 967078772 136788273 352430548 147114444 779687402 133129204 797878743 525692086 794492264 924298358 977065943 983766332 998298214 567627290 862447814 794294751 950565581 100633401 992551934 230663841 318780648 552943308 650593691 751945232 979457453 662556280 998372615 324956299 613569169 339343932 665679544 481826086 607909233 506232246 669320346 820382971 935784812 231314952 460010100 925459340 987083592 325084565 821071205 57034743 730298468 554409128 823232803 743981823 752314145 571866912 935539785 356852364 448748664 118161059 963450335 223607222 732997008 65443231 866811343 937226519 955947749 436163407 916248275 681034063 791037140 178065456 370666155 825573602 943164797 913518015 992293933 10329596 500904730 442572873 590665860 291890553 824858879 437901527 705878595 367772813 444737092 818247203 944320418 344821598 445753464 75954531 839392066 388395058 844617389 414613518 448094377 938111119 956611323 433157686 884521556 575328519 779204893 779329761 868452323 807099656 939553998 168686620 955550383 524398730 930720320 533526916 605985005 969666403 991479504 570017509 975709454 213282991 358234336 531840814 797077914 7367930 908155085 706002167 730584328 539696645 955119190 603496569 995592353 273321613 528782485 60476939 923744726 500222528 608593514 250092346 490616355 571495221 735333227 957266935 987769224 861388085 936685568 467797543 594198725 481523594 672033659 714158286 763181169 192138882 383547220 663274008 772078339 750885276 838811837 783322439 936382264 328325278 629930969 617536648 822700059 85335253 595740779 364197300 811303250 260913832 533613180 497362345 508926027 595126106 668098652 18572118 605148367 612454782 653023019 129769452 623276093 810409390 956973788 934603052 942112124 135466597 612751939 926322962 956749924 716281298 936938786 245803744 936209072 605956597 845376003 728644001 909300369 964497445 971825289 580132984 806069639 84876541 307944890 386231312 452533849 322929433 630350177 996856579 997386980 405656165 584641705 920026150 996607939 354931574 456249161 716558679 786787671 473808529 817856122 24980438 742593039 632593495 880496703 912008677 951776601 174601953 679681562 265586517 553556591 138685300 899643553 542139728 809715755 444852469 542056847 830527456 834964214 971845837 985634526 146157500 380805105 952410944 984793107 154693639 385083156 431649226 576089758 989933359 998621559 661721577 857299774 31133552 960275526 11126063 700109250 394579608 822775657 337261832 397673903 533664455 796249009 89295011 408379522 593765519 897761200 518787340 794232166 833100231 908976059 486045778 547946590 976171679 983626809 749287580 776512412 76266175 746047393 197856217 537610969 586566475 784528432 200672443 524443588 447686958 614827569 295051817 659709875 903931625 941039991 127432041 157998858 354830336 784819079 266110336 384205782 492573779 679669914 568305837 661154797 145988282 935880315 660579126 957804517 916984783 976451384 886062302 947476343 962420419 963791268 641548885 974325535 628482983 824392757 269536721 925605431 608091420 887642242 231196254 377215527 28533406 392054494 62905607 185181885 12534988 779247499 94643549 591658643 761507068 780805455 541018514 982322525 371575957 430503070 68958073 922472646 65918179 839386412 538576414 894105123 710303840 909215111 791150489 952444036 482534480 946741810 670829735 812324724 514621065 739701840 486421749 487455157 334052413 569555952 914867595 957758439 986497559 996783235 299944337 801116082 816504243 899082012 913890077 994206060 964219876 990794411 690051024 747025396 34490481 332722669 529657190 880311381 156709467 396308294 431645702 825012023 677190220 681273998 3572393 626352761 529779279 673959675 265662196 590467417 843479215 859279552 538876301 627090038 745705941 962558935 488022209 829056674 838142637 894601497 979270961 993118985 839245293 867395728 423156778 854274850 93189051 514372445 584500438 953901371 483578143 535005448 62981460 791782789 355845192 833571590 758647941 770324750 461171454 884388270 901495924 928786956 242564867 337971655 952258317 959344936 874059219 990035461 713982144 834854194 134396039 966823427 134856944 289306808 981121828 994243469 369873202 505296216 356210016 997927706 617414773 850207830 337449923 522049344 867534894 985094738 410419267 535570134 51856016 423795693 209793927 400848464 942068131 952994887 428672580 672874162 943111894 955353682 153654742 843343776 368582855 769089332 648921084 877209982 222568748 853825675 772471490 793044492 816957280 955595046 390931745 464031835 239453732 864503390 970019082 976912766 179989454 857193046 951532100 955290971 880901715 909418987 233331507 955309109 933764700 946370677 384584443 410518366 12055678 816876171 854950836 978132779 928606626 972526229 578964885 740015144 783613925 925072768 152151398 302099902 86764603 381595223 55137311 836348753 391676633 818124988 216888709 464194329 820575704 982192450 899344964 960463177 569460664 734590938 782872165 997482923 77724719 822277663 625496495 774773101 750724581 886502422 282135153 441331114 716088850 765771457 649077835 822923008 378230424 400359039 522349932 735586463 360551190 393263124 787966822 994398983 679663458 892600584 566297597 950199324 839272909 893090906 649410026 737022708 898868143 939961520 498869948 512785280 229985615 327493495 552527185 743063943 230092018 268028744 188706315 432273393 649626511 732683504 451366653 510359854 458365399 955433779 553786498 579700033 883103679 918996365 482600725 956061168 389836328 960927298 99788533 675676060 94403335 777113213 647408680 688154273 262521789 402995412 112750551 383683000 190392402 739195731 853780326 858672162 877091351 987248169 721096784 969957212 782806783 805861061 464896038 618916278 483480434 876498077 852371808 901384270 750586785 954261732 296983581 638964368 341544189 949069642 309409465 586265666 657793833 871568446 545251687 662845352 127189281 888467514 678409770 735883277 933208987 996494399 60828509 496078055 842193028 942330072 877427508 960153235 401148480 440705522 510650654 939407626 645436118 843440871 143962581 708378228 805662883 844481710 656078307 980498910 104497811 351176699 685948929 766510776 549486519 939308479 540953106 682509081 389802205 409427847 316356992 930533550 25584920 413136542 182321862 821405136 627942852 874301373 138764497 885316954 141938808 241786129 554298359 884996995 354795684 535609613 151216222 288684445 415564850 692722408 80231670 599312284 505675065 909051979 545709766 941855593 541668562 796119271 32783588 66937173 753837162 887578900 876421623 915320941 370778782 397917141 667238949 993191488 450056502 840061479 567592889 865327841 827077396 905097230 882723067 980901551 254566307 477701104 877581180 988430203 474145287 935606528 690600325 744865398 387752425 960793177 894142857 977187991 175125155 928296368 210039457 518920763 778233291 909774931 623867511 880730667 292551038 792917727 20609028 568377324 945194462 993686927 713917885 765339751 444042787 757148953 26637849 395745853 984381722 992492435 376499172 475854487 437891657 739233542 170930907 964193936 239559034 881046882 332767048 825437650 952523464 980202791 615612446 763358978 956176842 995066999 167604717 186544057 510067401 705942318 525763573 996666817 822557247 916393373 355688358 358623324 131353604 759938624 88888510 324669058 591867020 990875058 425406246 441930963 725335621 856997325 486390806 914134773 82747293 710697251 273140924 708567833 619045289 639436965 21531847 216537428 447758862 795440846 219177035 729879715 448756904 958121379 877896582 913617799 967700878 978710348 291138485 959564781 828679336 888547273 1275186 192644044 374560342 634151326 992192530 996245120 776763685 802978312 907611712 912976139 188070718 296696247 318715160 513851848 88112565 269224863 922248621 957420938 973317532 984110805 177875153 898470854 406174799 433524663 306762719 630677721 579041561 749898785 292594790 338682985 873152877 900297531 820287123 946362742 946455914 992602171 19067475 889630811 223217656 337694402 470858958 971041383 169566181 673474576 109566975 502898231 661609444 741502856 876782592 962398980 944322390 963491989 20994886 673263901 683083359 892994700 827072197 934356733 121189457 688918583 264189862 874803111 985794674 988615760 400872419 435618337 408685096 420130573 195621820 492695999 149821121 837292950 392182262 892531149 540009957 967215860 972984548 975090483 144038378 250460887 662246202 922465540 603846194 626642106 368580255 721879692 726632377 759032885 336606334 857265850 92338768 99093975 598558734 829618612 912235872 936135471 463685466 684958509 30800628 118331188 126396005 916386740 164713769 892127678 989712372 991598620 775183964 870593623 526304914 568659795 28798457 514459734 675097308 954738978 639801300 946126593 481554620 496010126 599982384 693020885 406392044 703471800 904951526 954822918 580696731 764508979 638923722 864906659 82338864 717990987 310643002 975531561 563275774 860646547 246813687 523233364 254977337 400751103 565050006 611811732 500901099 522244777 966888070 987634495 105917757 419717370 375952537 438595199 641521110 993933278 637320845 648824831 488107116 817110470 167019335 857450351 740411646 937190400 514512229 957022468 150153388 155491011 410967825 616065615 476085198 708264316 351666415 544522754 513576064 605419648 119804012 407865937 600482156 953584988 482689109 607397510 760446446 976650311 748185620 912169385 651885784 861195559 536349227 784706346 477606424 670254707 537656643 970127876 369814300 789554306 814690838 968895740 84492536 378487131 971339430 972270539 546998939 746266793 436442976 507939276 532152929 766713255 703989753 982084352 202642920 522334927 13790832 236369382 469655837 993087457 592788138 639381382 623187558 703136172 328500283 922154424 427131612 953400625 740102977 913216830 160067105 211116623 148219019 509962442 388645617 968314024 571175214 641256548 769695368 834850921 412975928 419303506 624243512 705223066 984995579 986319429 980111315 992815670 670146955 915377395 19047564 341660737 933036708 992932860 293283419 974913755 843732716 874184070 608064252 744508563 719805114 827979049 302974426 524670115 731771773 897536705 918956920 956325875 413088448 527587005 50727875 591100767 299543416 331323307 675112448 832889787 50232992 836696980 146089899 579972244 804835669 908891604 538391026 927633780 948097386 998461463 472537342 566740639 241480890 716454430 201170297 446407207 170130202 536363267 170320161 784890553 629477302 679213590 111653228 959766022 23727037 356379663 463767141 715249252 781965171 810985463 173005187 736723854 985836258 998592506 450753879 857247996 266581191 308606399 37847938 880920390 728101171 784174627 112828331 622283544 920494668 922098031 429174961 832006110 361171376 662045143 42583773 223113012 345585582 603404745 724693318 967528919 276926131 839485557 944436142 977223477 718489704 996659795 653955693 742007440 799449806 978681281 543379696 691586772 766017933 886686505 623341400 799907207 307963495 658836452 101065284 810551345 301653937 876527991 404281913 728728211 911490793 934468146 952418855 987231645 17548097 673811988 456182810 937198789 296645807 811200723 352894219 501528439 884126974 890984547 739789555 839998270 106683688 440893520 645888722 676028235 948719466 969297432 262696968 410206746 668651121 733858176 693388304 852263523 986284098 992288710 70447858 460040828 997162131 998766491 889431551 920254689 434250171 943797481 680890133 926023863 934645935 966766356 835214390 949108130 425333878 636001135 637673420 740170785 73626993 776305690 627208131 863527051 911090841 974715336 748677459 753519909 28993255 264330767 908634944 982552726 733530056 858252276 219605453 970329019 519905635 563877064 688510102 904833258 712443735 815499954 714782890 727585170 727561803 766861059 251768322 653571282 18829390 21253282 92615982 476625232 428618806 490464073 337757230 816805032 326812900 688218308 647518880 954773853 978435696 994040598 398773039 926080725 287401318 576988381 43557319 65280493 503639254 858770844 945723609 962971991 182865189 704122873 720705827 882068674 642480858 773679338 178869106 237937874 108397290 338095809 487474112 566880566 365474124 838662975 141334450 290127358 59171313 133635704 430413694 799447255 176838771 700597888 72912978 677321692 460484588 591617641 516852065 810824708 565935142 933325936 776943726 832124322 189522724 621833803 787072837 787192600 364623019 530240705 228667235 499381217 615121013 985097589 894960971 940780461 935035990 980423110 929010397 954661577 73218259 419259183 719292675 724411136 222451595 603775990 165920456 991421623 352552572 846109312 207897400 298333679 18461640 618470612 753037576 830146203 782843249 918208372 48555061 681697555 559107656 833077366 367070654 487222829 424678272 819853433 839086809 863733444 445483225 873776473 921769268 964256480 321381772 610867477 898202409 936167764 507719952 817956098 534258217 881389183 816257267 978663230 136179716 170228741 648994220 802798071 424808234 782046372 71418846 77806207 724177449 733962163 103639473 916599508 772851937 797938462 725767042 975080997 204054547 618391313 502893212 562899104 437433702 447144046 598688755 962845523 369952137 551801494 992075807 997435916 72368322 161076166 10069115 549365123 131147199 561546254 94340795 690453546 527981436 910580403 624321383 963017804 818083741 949040316 775387744 810351794 636875948 889655745 389652686 885771732 365344578 419288507 644216565 862696347 292035352 914554917 908649840 923940141 729008471 824589132 703368767 732988755 580791801 655011390 497737483 733403834 650656257 671782542 344749959 641996516 795186344 863174205 924842935 968540515 804717179 941062328 620874280 673814740 677655364 920130473 640883973 805787903 529863137 625974683 857401870 935117053 70092162 985229553 716251590 762349749 253130701 699106455 181066043 850588586 159087142 562855476 115913444 972676673 53202053 330786652 501002964 715771742 334041338 684849506 848523457 994808052 639778072 878839504 146719713 610575071 2777015 421741808 170703808 885895971 86564172 429866383 984757740 997117726 80468639 487007868 494963386 499200327 452446770 465630221 65321140 570957532 141796501 600712897 172059786 460111224 322969071 787621069 336461525 668453245 956818326 967663833 797056060 944680941 374887223 724549932 778350596 797938277 273260629 766767506 188735428 593890439 150626601 806934115 839141620 941229791 6238258 312298097 265564361 888005692 744981052 994341923 635711805 957507425 828602221 876705473 805861492 859379352 253758397 733216289 166964383 704693726 366325529 691632028 348999945 554398746 631633427 679936563 676832348 893767196 949609199 977831705 384203119 877728753 610478936 905660540 210734764 927887088 888098307 893352139 983570662 997610912 529940409 857452283 791494662 987991099 566332103 979757076 575452940 857709694 973693478 990968935 370396985 919013112 815927412 948202687 727481544 975333752 697042346 753282750 10494203 517049090 793315864 806079112 871714943 904058374 768202466 839510232 784631746 968079492 186380778 835916300 6558376 397382836 655101205 737358424 654980380 706766127 323656597 641871839 497983611 599127479 491670182 900866225 445408234 825169540 211142594 400455877 783055392 982853981 798078265 883647848 183416767 654729136 119891829 532883041 352103083 698604022 300727678 996416772 870687102 947479046 969107387 990565638 42992800 815315879 585490356 665420993 834679402 990496897 738574842 800538195 566984109 719990425 282161073 520166500 24385176 390408176 701066934 808677565 96896625 259298019 17184146 888409739 774869822 860820046 221732519 640708499 126352638 265819832 500277385 539348520 733704236 791771226 476382862 598155620 747914900 941943618 39111652 426201619 660788780 926138325 398440304 476705510 290761230 373760664 324630179 843098540 965440738 979558237 927662511 989552373 300977775 533485342 39439817 271411884 313948556 458242045 930107666 995111687 767071357 917090946 758705835 776559901 507138708 916877701 82719571 329178436 5014371 90739847 391699144 836627436 657681480 726650684 494389359 561852004 351034852 666134882 839084135 917384245 126555895 938201929 518397622 962584024 530326255 557227435 154949863 314665111 746689317 911876953 178953292 671790618 87698301 133412501 446738905 692758188 100355323 111042153 654351582 763531432 504820869 507560394 884588169 897128209 320039094 456072387 279340900 495923864 839395192 928116234 691088693 723935388 122870272 570495667 535464660 905026518 640413316 841790155 889970613 947066354 780259677 946696191 352597864 468262779 56105635 251442848 758719192 834642106 576941771 641984417 851724747 986402159 624183749 752121776 961533291 975567245 777111724 900721679 362390868 674736375 856198235 957925949 965915540 998002754 864318616 914977736 166589403 524360631 799989323 833124273 931542102 950298559 312193807 807245638 382170770 771759594 158305188 233155585 87535118 653742461 39715645 918633225 334652651 364976375 744473461 872769482 474123470 833578087 506519291 801999125 808592670 878719326 407834804 618948840 892199258 988865891 109042573 672406543 117430955 547339253 540969095 850254296 209115768 696255317 957739158 997555009 949018484 987665371 174678040 328346871 307627683 674150578 712556639 901713290 496022185 703798639 767402956 900342724 724857474 966688157 218986314 290868583 857927660 973597309 879951301 920171323 107818865 826557575 6073752 127604542 57994993 898653774 583597255 939992534 82680587 904867069 370689959 997528803 435055490 696315776 830389482 861504306 717943797 753387536 297759603 758928050 770303015 832009612 812895437 869296698 524738100 692779103 211704680 257079170 797371184 849770205 783886880 957630859 575855150 996947489 729224829 736876433 140626624 611367154 84577434 943474992 287279934 593041913 88098718 523330430 644794794 953300446 697206832 706097999 955669382 965564844 457953856 458464482 674156554 980697238 526946274 643657431 539036405 736055928 823702032 835237215 998225041 998681938 262611275 865686291 9149007 475455055 14609039 832769527 423064479 905665878 93809170 292026702 576863792 857457444 551811033 785202975 886113241 914679851 954374100 986658814 331286517 912663658 595630843 762709876 779657324 961719426 28156319 241879696 901429163 923096638 957566424 965728200 53675887 385640592 838293606 915794780 591732541 783544463 946262081 968958239 313631358 629380125 386370255 885215908 239068645 706040166 374970704 949680028 352222836 862969724 861987775 917932414 253648375 842231791 114003765 706522220 870403720 933189067 82576629 727766271 2022455 153015568 945515319 957115399 55295700 587249983 514592639 647680732 372252773 864475975 657249300 834919056 252563076 703655673 335627652 994609825 123818330 775797019 851398345 862634065 915334991 965097599 231066165 333516278 485842631 491637459 196605639 658811973 582905568 611273326 647060044 673530621 749271994 885453986 797793478 937052672 466219930 688828523 133599717 650018408 336778328 939887149 321737113 864860507 160122716 479593683 526406225 915956250 304213467 946203364 890052402 955359347 814153803 840576562 277601237 344641265 850645731 970961395 778914637 963243412 582413242 852134344 17265732 906292246 407559138 479348488 929144417 959132939 409720976 752638145 857096910 975186431 798566005 925576430 881938571 904818747 67264527 587922189 388414269 447577701 922087093 937256462 737376918 815554399 798472306 943048023 697762238 978355517 422567574 836686733 764694922 822715515 568639943 578286563 208081930 531576287 491914283 771796369 694365746 848341032 577368726 817799399 18671183 260388261 315247928 897603230 52552471 585918650 499464981 762016746 430875709 441446987 88143563 844490631 629742394 869812092 542316669 906949790 828746643 840440064 439352931 948190964 932995499 949300551 562686353 880486467 994168466 996888024 758435139 875048455 428957724 862614237 111644586 511645596 786976910 888599092 309112090 371467404 957174425 984887441 317578980 783952518 739314289 776822283 838727493 943388606 388055699 657026015 818445847 929229560 154020890 622626047 374816362 506553682 96859169 663057017 695637935 769913312 255653061 388954733 826914002 854185063 488281109 659879666 687390047 692590758 65718251 719111020 630824181 829028599 536377897 544947944 626724091 650367210 648608112 962135789 315981997 943861740 969639994 979743450 231547908 758579511 603779305 636786440 929673768 971509993 922446971 994477677 212819098 678537875 131452337 606851108 318549127 966356784 866754734 901016941 197419387 806491476 886956842 986522364 598732449 740968182 957404088 995387181 183271106 834779130 300284929 325266868 663377418 826009584 994609858 994733026 905373950 984276271 973993590 992305961 130688485 651125720 34274225 53402043 974823118 987635864 137409698 980576998 963899359 998577908 66337858 724713209 339226944 399197743 20353531 434775760 582649244 778752126 8036407 81529055 880311836 901872649 565503430 857839913 96944400 763664859 243790804 505697569 653668993 688703905 789949274 956941112 243212648 410030909 858290829 898831004 902421957 920593210 497215843 913327247 122725798 708261800 803543820 964507897 136020761 548333243 806190376 955707675 877302255 934572730 897949237 911524339 916174098 988732709 265644595 372930665 73581712 359413977 239344514 288250373 433170847 661245582 749607745 856331282 374659986 717347159 355546067 397339433 872987411 943253006 857190761 924332746 988966776 990909327 192361886 995811576 462064097 687017291 894460643 987046669 17666847 223465416 701869075 781795336 592448155 760016029 72089591 94273574 601441490 649104478 466899268 699749680 563672149 896216269 622398627 766197064 678013957 833872763 653254321 830672426 426157394 829431282 78910481 410176047 984757378 985027770 157061639 345520348 323962481 524224259 830109906 982126814 221479128 710347272 243550906 941324399 594176017 811630636 595303704 831506231 747653549 911020518 204053544 841720821 322599300 366568021 400865005 954178370 427672837 634845405 674507605 781422293 198480355 582383142 487221443 813849972 519181703 594996142 176699925 700528320 289082758 587644920 414354847 850502386 594334198 941075591 574086418 631225150 882355108 963568231 980429995 991854351 956328115 983383846 54558037 698102206 351527979 513726740 112653723 851326960 508123708 932016362 872720474 960424850 18105601 146032310 210975874 321635613 579037704 789845606 28442286 214057556 807698224 923338848 932799041 972139055 607476826 783126243 140710819 213743367 405821458 822155030 108770818 230581118 78242762 786631068 412776721 649884962 734905064 774026308 555822862 965542360 883479422 923014967 74384885 781728253 19444203 85761835 825591222 855318417 854086519 972368417 435641945 609547943 447051785 860826879 566311892 757319845 527445073 587392042 384885895 788133442 738158769 976134633 584928286 885347934 980201593 997853566 854437121 979267110 919571789 936412525 715752365 894797803 324408332 990603179 234807478 570434355 194475382 588905461 800408378 837844907 224101225 441595349 30466703 98317230 367510496 729118958 441468545 601463149 253218728 565089959 572816002 942945635 58195784 783265813 659948845 846847052 504214923 636080931 595161893 717627634 556757421 691966907 607769627 720827615 760799100 783436635 446537692 878230354 145057454 386434640 787457747 993018687 587523364 622579873 959649794 982610990 366669006 711781841 901504955 921670216 19925447 902655703 105079335 161178305 863830273 938050615 710422299 840684528 47113425 970049841 379636504 762959194 406937262 505359483 160499017 464393998 871183009 908457092 459476435 866590159 171053529 651945484 760253170 887657581 220589604 334580347 923652233 939433596 163684454 876961247 625396232 683997498 655586005 997007830 797884401 830458865 253438917 976706962 918816555 933931992 825952877 866176332 207173414 658453592 703740131 808983433 171474897 499239272 12594550 663280370 158582036 967242233 275894932 479587388 399048370 418074104 809845467 867849865 713732142 859582619 571379598 866096454 740679592 971213421 844793455 872278869 250179217 624633042 400905492 680582428 983904293 986672970 165670510 764650724 683061761 973028918 385236909 423932050 306145638 616915851 697314470 725742790 163479688 730878850 961531209 979831108 128252473 220898589 510319323 874854904 448724819 546830274 937830636 966354980 374943349 478663555 466347570 712391963 506817627 643828279 768454524 928651205 661525821 708100613 356231638 622636815 118421763 258907006 947566936 980595678 178982873 465569899 35479161 854610385 949104836 981099376 158751482 261047072 155915193 994682993 767297542 861692562 937839528 971329708 223890980 385366336 569848329 582699332 815939650 829971122 932608437 939145197 689158943 762162148 393770541 760198074 183082286 327457923 594445209 765690644 48767160 527150122 409811564 638381307 30272792 716219114 280652504 827436952 3895189 320725513 295118714 429925259 761305361 921144061 926247498 993424448 415163466 799299987 56869571 753857799 847751522 958123426 544165070 581118928 492120512 954708012 472703219 653323117 259909291 598212719 935351978 963887828 224813259 753121588 360309949 784023125 472823108 756754435 987830359 988110682 362907828 929762140 962945239 971919845 905476766 945125052 368682017 431312230 743354322 941940144 258548865 466259777 433614948 550370565 350564535 859972930 844706304 968112171 717955937 876259680 94115169 709310099 670993359 835121166 68997391 590097177 668097628 832478923 233098920 978351956 67983804 804215419 716859437 983758769 915185050 944400006 882613817 999196476 401196697 464507992 246706840 298914893 278220181 857949790 428766415 562078462 140533683 902870193 956741645 960352641 817861130 960052073 16673015 688210588 371753415 622736864 731139818 842165255 168962175 817893169 105749799 868529625 334503818 931001426 30165301 934347756 968657410 986541898 102069326 485516218 692463804 852545410 874859132 924453117 990209809 994535477 6406694 508161079 377620067 981273954 19524293 968471214 246340376 630531483 164745550 815572761 881776230 997739429 523699009 889794768 790870854 793325030 188837149 706962341 464266687 963344355 287792986 772959412 673519065 785746397 33445683 554376392 681169379 978403912 525997179 909460676 383904060 816068393 868863299 874762229 581128200 854902616 95975442 928846161 337461410 749943970 794754969 999149185 260711794 742309269 137007903 259560288 948052571 985090620 219210628 774748244 993904885 997114405 931159579 972753952 964786663 968028320 158809884 955325051 856206159 956115418 307408868 384714936 287973422 827541369 37603373 315997030 210866665 814751795 227097348 946623931 701494076 767537641 422940297 969067681 168187035 787598274 75347105 321949148 101941573 309416479 690136623 983617040 798865571 822170800 713522986 905110596 809236382 950344858 540067147 563097134 912462089 951966498 430242215 936893296 87159268 408416598 332753771 873372387 723805755 852669957 261286667 875363929 608682803 750922859 836862326 865463772 311732281 416179729 890554104 985567622 48579670 388617965 869651493 989353370 97898160 748704533 338290517 555817052 792303729 924694220 455341215 689982541 438486979 767989030 408173026 806506251 192413463 466951302 595267602 873587104 921111431 967523962 481010901 905912941 31537140 261767135 206809014 518591844 491163188 535158657 777792799 965684454 620097666 961668912 374885438 612814014 219071506 342758738 278974142 603059752 499607236 703045685 323127360 651755069 191556744 866395562 804119887 967530994 856712269 916491305 147179775 767212127 4962649 452584428 162709277 961555256 97740019 540413623 238524560 923737069 449279660 705916402 18970443 58047701 90981061 647765154 801083075 934845388 200994938 519375765 38288696 297676381 280228789 326985556 7006943 761830094 182116867 888906284 244443823 573788176 621328525 908460766 341478594 732825650 387566652 450689018 455482022 511749548 882554319 972987765 949599138 970826681 225362961 806880126 603040850 642779990 574375555 805052563 170276055 213195711 303757806 829283925 6191811 485097796 184466997 190086593 290152459 342950632 758306028 888919774 10647330 41534642 78850472 868240871 27590478 971319589 935459881 995901959 963620595 986090721 81099233 95240241 949567429 978407002 734515413 911608159 646105938 970771360 220718725 372480446 462489254 565943023 287815526 871175492 801011880 861196916 110175640 901299038 150739683 488123789 81854113 921157442 803906727 814990778 57904179 870721454 687319095 760716783 373522113 797110778 138231441 188323572 377871772 413970010 758369576 938127457 240572030 900294450 579698720 904460477 664091224 728086375 63987744 320058272 993768527 996209627 788682368 943002935 80715270 766946691 930278667 994899444 27030763 637668480 823587128 925062457 627192252 944923592 852135530 963529651 159598516 575030213 331121332 423096582 16165197 54917679 282768278 854913822 681306309 949106480 388035048 480528289 337931267 652663132 273509672 857056383 874046441 874757123 893142272 941279162 835695444 836064246 543366338 714529156 529335982 849711532 890920377 896696155 31789639 724717226 11188120 685115026 649778131 836400647 24335579 235189002 664829967 892072558 133036115 740551746 925324526 951768585 81617745 267416142 522988960 551399951 894742243 900911566 219020457 318751282 926695713 974407960 296357718 372415581 52608730 297647559 286194772 529510682 46959100 182398150 157744287 299246500 111931120 964547505 607958660 767235497 874283981 892861294 404059641 868984658 216223376 495154128 576332673 762938506 740081 40368310 750983596 801628667 770427495 859793596 992145076 998459896 139046164 519801138 219700244 942574982 382113156 472145790 981292546 984974766 909242019 965251615 360697431 504013870 887314387 919234957 612428971 666423718 277429170 560948265 994379065 997741881 995176042 995854447 772579845 778173945 361076596 962799958 405353188 880553929 240777031 323463641 943949115 987384874 255104042 725338601 64512627 174786131 560416744 607543988 143654712 204057890 582158783 588890081 565416753 575913736 615384641 802659763 243183642 275624498 112522966 896520456 151989230 797475497 524002747 668134378 698515121 706223834 289731764 942364789 197990686 426071185 36764761 197596366 360119862 814805550 271105921 611436378 357674309 415973015 919683590 986446573 211004150 536459337 410582208 990605300 172276691 959202767 648285525 867693718 478972624 649188849 733002452 962118184 196899455 880648295 813464607 828166312 542841170 904356900 217142994 417812020 651023254 979427791 974610116 987965989 74824277 233993387 218276322 368499887 750043170 867706600 491608769 573307633 452509497 808941829 75439457 324950810 963420602 984252204 319054060 720238329 396188588 701025093 277323146 447665290 624902088 731967920 149354360 943254510 600516569 830258273 702557723 913781747 530480949 614429575 8841856 107029263 403882790 909326617 227082897 737554299 601874921 650494919 525389468 970344009 71131232 273657379 432121556 744295639 511852103 970067234 81309593 726875808 575901078 926442218 484608808 989660087 788613591 982665294 708156539 903224611 893244805 994704041 267906639 388251710 383862434 920527904 53242667 961408653 662160395 946030632 865880974 980774065 335233171 851679747 2322033 198641971 411456341 907551924 966704731 976769434 104407466 570988173 838868315 870279294 402869083 935238059 29533760 464555240 527334855 917948231 629234761 900013141 250911705 443624991 497373705 569956212 559894824 722836480 472299809 554803118 147648432 978631461 734727509 749322131 632003000 792192249 938312807 943442730 885958591 887840177 308279453 641305299 80147991 163636198 431741998 872663055 561354936 569336895 148191096 290464119 459448717 647721051 363596179 766567410 267132694 425272313 99653644 603934388 733399954 927952450 215363131 578564097 727271169 850961651 764114404 996107797 225622167 343644273 681277886 845772087 698233784 904200414 247186806 977531867 400783590 475457938 832404052 889641844 343598740 535482112 543219718 854722359 311016993 800686514 182507797 994061542 13608734 37378377 202473555 672113927 749806247 828862420 311690546 856802390 124156309 295097422 801500675 866310228 561037517 679492300 861754600 892879264 667155128 912081484 641809674 944100844 822801119 988436257 641816902 903842947 905381280 906177428 248174835 677993668 63384049 425506711 324911038 752754983 613160360 930746310 885752131 913880732 23010155 192142998 227734491 892371851 489628605 573443419 74896435 616415142 819934802 826379067 273282477 529488339 747886127 813403049 794633905 874472683 823591544 989526548 212519728 495914930 265628036 427218266 953122255 996620208 120752903 590707309 468981460 652062490 808477299 831788471 255440479 849409079 924085079 982457131 213356823 383102455 909196804 921079437 998728720 999252804 770858149 870059201 99952589 854258954 58052537 975187925 444316017 494139675 156337172 653283205 704729242 760164296 561431419 782028177 29890260 236681857 475298270 849091377 327137529 827502911 153689961 892172320 904643283 930906998 78897349 797486914 809447660 834617526 36547813 801613481 324937719 342786679 744679461 771788019 718214367 980735324 142282994 606390168 95614535 721774686 86622982 272854989 254280574 453085883 673731346 762870387 907483746 937956922 371487071 372672079 858244397 899963721 247385138 726905062 419658223 813555902 183912093 883822908 642434902 669179834 345186638 413710274 656314928 810026617 353184716 365569866 774425563 946207026 180639234 996584903 337494260 765266481 967426010 970868404 151964540 355716308 648634524 721929739 572806052 783118890 84745294 521490288 225876745 253533976 374560774 672266126 667269678 927060603 211118260 372464199 418276567 967762305 831216184 876682988 503935994 762180201 389005731 737948064 10193836 336313648 228325886 490484993 884784007 971057273 294195875 570254576 177044050 551918799 232878861 725619292 574305962 593658371 826132741 856447111 959331211 964437926 802040323 965299111 285262830 745789260 672471975 870244181 190625452 726045803 940937519 994538704 688892569 877717107 163468769 189250566 300579840 868756452 164943049 883079288 93523214 814506769 526472952 912627967 583901449 726379147 921494238 935085695 752268248 924245082 89122160 193012999 315448046 785386302 39124377 211536749 54243900 490257775 200155835 226030565 888990796 967681785 275516939 299869155 534817793 613276273 208660337 632449904 277619353 918093438 268323803 409128028 98725463 666747914 409061320 460217785 17133927 508269104 475093887 541838309 97923472 442871016 880531995 898115746 758579859 809210211 522850058 669169664 792921610 882304873 774771100 880165929 110606586 801880986 917870467 965130474 382214419 579842759 718937867 776408749 327555445 569962042 784871496 859552810 31831129 689341244 912923485 913807417 293985466 627148497 190045094 626627206 798369259 902782839 201241024 963639074 482629299 657079001 360518659 869911795 279838427 554548104 361952248 810975122 63413163 556198582 621402075 839587443 560946526 757077037 263484880 407973350 300298384 823432790 762158667 896586536 819482556 856482475 599888570 821547559 950968836 971907259 883322930 922079195 395841699 791874311 479503215 529700642 310487233 734784171 577197089 918764845 42698721 857521874 741186290 902761351 434368718 882334475 692994901 697581069 839057848 998715290 373917073 961700116 490939511 556957602 474993691 831933007 47176348 173603607 256129989 574838045 618957310 761932331 1664835 412987979 316912968 478321345 120179899 170708773 558626727 703786155 637744081 971008211 88686087 586377186 493781112 652049412 104145349 629987092 320486548 425949858 432423308 994820868 756309034 950422949 408549033 516263893 386782007 700845273 140079724 384969219 433970329 568266922 310913797 705847378 877905804 944272381 778127107 977400616 822400577 876120772 951614617 952219625 558121298 985235552 37821682 744036046 816622566 884032799 162164284 276242190 332905292 627853870 37261474 668006786 220243364 698192604 500734992 992269288 144890967 625670672 846847085 867447990 942501259 969483352 896776315 930369422 695104329 950466986 512200099 594792752 489275612 986573362 917262232 933556535 883772922 995856618 974881508 977544556 856569911 951492128 621903700 795278836 615918868 793068413 484124416 813744253 505188121 685769608 47699159 398088557 182525244 332752035 158089917 905608314 1738274 559554834 380495054 383698466 49324849 515975498 67127486 543862332 223886305 563573637 344838937 984359395 569219789 868888673 208243884 383468507 749572045 935829179 848419052 949064416 387567724 850746752 527239412 546472489 18653644 357999051 507103756 857355182 196873392 478448347 787736151 997674484 198994059 906540756 653764032 721777690 230196812 651177693 190199460 190301494 517942296 986949013 415722705 987552808 356722167 921574683 561498531 959776042 173382967 734735202 519199848 884877619 614433401 989982052 182154619 882184876 3576003 199913022 312141056 893862971 354324270 554277780 799143156 871972511 149957546 450129535 270151592 714514889 896463679 994788665 711543949 857581173 834131916 997471375 432710193 665633348 508493966 524697279 15722448 274238632 244218043 384449177 338778845 800269124 744529281 959857217 373623955 784382360 317289288 927714728 661143225 704655480 542652112 835891808 476774062 802413157 996881614 998236432 510952 892841391 348797362 837795498 690203457 957361420 289302092 335400080 18511613 968407423 320542443 399738856 585864863 754006977 735504605 934666808 866592328 926572276 274120724 429291765 658287732 660481477 863277599 954294590 456430927 655057293 519405808 631589873 455662737 840913804 110702816 432493450 323345729 328642812 525314015 816348729 701306898 915600927 934303767 940914739 838274672 981145463 62477047 538287884 245762603 598835056 329207854 853424103 461350618 698773284 253116022 423080330 197617205 514038676 260268137 811490635 199700442 805050473 325280689 948409853 238510683 808396636 736737017 981652712 577481585 726527575 174956087 355237799 696090404 983425737 553645472 556357999 857776497 942746008 55051038 797171934 826861536 931202348 790307364 813807841 747932854 879165400 61987435 672828686 600564717 799575247 904593293 991005037 698745591 777067623 468031255 930212135 507844414 631941212 438140690 676539091 557448249 901101234 91485791 908105556 629796376 978064131 219246592 365836855 473145709 853133010 201363003 930472500 393085235 854272206 390922396 790137074 280376641 484762987 986059030 998644009 529133346 859853532 745359235 933344350 797433016 879781035 970228674 979203340 38557874 432355901 125096288 797546025 188254799 997841295 398491503 982589488 63690409 350950329 678323912 875137576 675415222 715432630 223744179 989620653 900490534 923873557 350531778 985654785 469213589 623499630 115521369 333605247 845855271 959435535 310197114 675798335 392694940 874149372 941428814 970340729 742303458 845018330 458467700 626651540 434773622 923798713 35383905 121096804 556754429 694654364 721326382 987940741 43105047 707568739 246234571 694594073 571470982 842273912 719220260 720196027 495707759 687411164 664796840 914797560 388874066 491565535 163250898 673384781 773911337 994782656 546599943 696595714 266727717 355832481 376240036 415227020 99371647 848155730 747306218 917007121 453081221 724716540 752236208 856236216 974393775 999276039 180472456 495120798 287273024 725001445 901611869 954146859 143072942 156858839 791925683 949321532 160369993 844149040 411642158 992056845 405066453 568840249 976457439 986133582 569011904 819183574 389802087 597252505 522216827 705441652 965589220 968199431 316119043 627792241 468764269 634447226 571253021 632636760 409829475 877416384 117379398 659785918 811847503 993171000 228707916 872874260 992916610 998803673 353331811 955804883 656011209 801558618 475046778 661034239 169669431 196527012 308566772 572051012 133834337 467860332 584493410 989545072 378601730 515482327 483287393 678676351 628752936 721854436 885599520 933190882 700443839 844821574 317104856 771147229 658566495 689162501 504100686 511146122 858874946 874871804 590007030 618024646 719034521 830407738 904431352 961172757 841473411 842354189 82464508 246938440 383975581 593908596 296981572 787018587 784374498 997369607 612863534 729916503 264527459 711819206 56149100 597431369 391287838 839017997 547454163 876402211 48491850 181574209 391065663 411762549 20117793 384298509 184564109 995855740 273221331 860694111 920748195 986086649 155002679 920099849 307564648 959427018 571922601 659922464 362392259 709014929 326477655 617566271 241910134 670067083 83156389 553541571 213675033 625059807 891598460 993245853 684379256 919597408 805737422 882124721 941979793 946937624 114139999 920574458 485690490 540523354 235026287 643150477 795935242 900047756 854179821 966289074 203086626 213410542 932278512 932616812 2339582 350147430 666703767 931687697 429395295 483393450 114865140 311186840 70848974 866519094 721894340 873738188 389794597 595077677 111699606 572132127 330124548 792995864 228545122 497334397 439834792 665494280 970234126 973050579 227305107 306139213 634593308 768736446 87163523 951059536 920715628 958080518 284995445 867519712 977980002 997271496 754399115 803740731 363283141 847624505 710752637 823806399 896513755 904881284 943857085 943969699 94031629 888333224 976502999 992003019 344176903 612011699 926336609 966109451 104615045 344942421 563497333 646865713 11850172 900794106 831651113 934588506 539600322 808333446 139078297 553674973 201159481 903044976 25831278 818540235 205546228 764870396 318429971 501724802 413718069 816626690 716913631 916739102 528780037 729131082 814826667 824395571 441419443 788534503 250613983 677588828 601497641 826200754 580405175 784673510 814500839 826724054 425035596 819927624 234965849 779488452 307068076 494738563 532136193 919136168 311046364 843507673 933544167 977895297 351306754 688546443 485337816 919794686 186687304 358518927 881758922 961491267 687232072 777158156 440328860 934350700 493282053 549043843 692284277 778368032 169767380 908474965 797593069 994831573 324423844 546324562 776775177 830586642 929005287 931896201 783764041 899207556 303741969 377111802 529501585 693579711 576852573 657857425 979834231 986602711 599926879 876219821 176455575 587053927 450275807 538397899 706355566 843718369 478824649 841064651 660197456 868798652 286280836 929666434 615412618 997444368 166829326 807068650 489796285 903178199 254742628 881539339 294555045 685652784 100673378 554862450 626144657 824829956 86812134 275109750 415650141 479340527 579040632 707865400 441823226 905606690 702891661 773229611 6487962 935892157 435576625 818594075 702013454 789888936 506733980 902607126 984007786 994563131 270870171 923495091 581222794 912011274 284027023 800748855 394809106 711995463 923610063 933468962 160161551 822825702 626697192 873045813 667073665 735859080 605370792 774209926 663798707 692166658 297814627 589315398 362978505 938322564 187982946 493569101 947817102 991851470 824599486 872641496 545864999 975275919 643652973 933416101 674883615 758645951 910556946 980915967 675404543 742175839 691805360 968782983 850927923 934201615 534431040 689995607 444670506 761176044 20478698 916143338 754376300 806453435 223664848 486825234 777786396 942233704 941581914 957758689 175574772 956161425 14668701 989628067 153439860 812494561 972402235 998410961 971686145 981025882 591619133 829988093 580806242 976814274 571345072 893151926 721389427 832248506 381071478 597363296 946300328 948449945 78671577 211994198 896277103 974650260 502442134 601326366 352762497 473868714 949354111 998477649 880917065 918043728 603537631 682396205 316335008 541339128 332012102 872050505 94908574 112272334 987577156 996295195 568009402 759062794 937139854 987715573 297804198 759491740 443890069 683899110 274526242 387557249 335082021 347182107 36664295 162404452 770387438 902918710 529368743 569088445 410716450 570268656 815353317 889808464 41131853 950974584 203662438 264623412 711128447 932104622 468963902 562177303 845811840 967973990 953412683 974111336 607030976 926131240 85122634 422313597 879691806 952821988 645460350 834869142 446461537 916967456 238471658 861256315 360623971 777012848 237589416 875918140 887096821 992267501 876795840 995122008 13053224 957968725 203986599 294996756 481011128 720913163 245665370 911791421 845166444 937129581 659823016 886324380 774114585 859980237 439877372 726207507 37201809 716715321 717456354 786406498 453536198 518756122 514799182 929114568 916726782 943774904 189242098 775773286 541991041 926749233 975363814 989854510 411299180 629463864 554566734 590443367 352894913 787790521 30580431 745582673 697659449 794959992 248277117 795937667 743206790 802999185 153818170 646799922 51890232 669646449 414814921 975184661 961083317 991620420 510058 5393380 501770670 763146879 943924391 969005525 717260405 962616006 673711968 883514209 886550912 949179600 81905207 961801728 459541924 970334888 39232143 359639152 845294984 965234798 847991631 943900884 155899070 251501678 866746756 998749475 12831780 883027884 919153400 950731376 718980676 803669513 129504814 352382177 417416879 835357342 810862094 962868338 718355754 805730777 84534065 655158068 705379371 715159808 96030505 176360551 390158634 559723146 228363913 345094440 869261725 939126751 524132525 962394828 262143582 301774229 391281985 856954284 988579337 991097950 975586385 987238422 478267946 874269690 493274553 927515746 816228838 930250094 427475057 704303658 241735075 823820770 741215134 840279604 275780873 337932395 817594399 847137366 748803086 991706361 466595341 966845232 255091816 700444888 852792008 882166571 931486764 987862077 704587190 799012401 777090052 901713066 406959004 538901301 578851681 775401533 915775162 967413540 687038063 824123613 935012338 957189368 9834352 452874840 921369004 962643945 636044995 958664464 780121348 956684888 913314949 963756142 156955182 519741507 365575936 544087859 238418895 779038396 447201528 898597194 457214348 971967768 144648714 172987906 951732305 964939122 549587940 656086043 522761542 963812557 471366880 626344737 615286395 651260047 300450099 448964983 67224632 417989966 602481315 726839724 548831668 784143940 877490600 997284280 607734632 978033751 946576736 959373315 590824093 692502799 543502671 911197401 583326914 867749390 338428126 413823533 372561595 828667411 558190310 918982414 303167310 726403854 376614890 778496005 295266942 414418792 918152916 975589695 52612146 749617823 717593689 918991991 102909061 526464879 978465030 979607285 767168973 954859361 631654134 879879975 771779509 840373988 631439198 765719033 819012487 964576908 649473664 809586921 706100054 884505299 187731206 233712656 835370275 857101678 144017029 460124803 482159942 509616339 967537626 988970731 648784205 677153898 948321385 981745887 487547389 953508417 282160798 796187715 753113160 988155872 622024785 749477653 577435543 678126485 717128171 968986828 185353916 263251424 545347663 881304542 188269108 712130687 946259090 986320101 691293543 799647912 71071309 396609170 884954454 887097345 172893055 326979631 593820710 923353163 62448535 434215035 299059263 390172790 147468103 307577598 101897930 682535013 430653884 485641290 196867019 938436882 301231421 768493563 16688897 585716537 16326569 181414989 964884590 990366788 534379055 572849833 69355051 268798074 521741071 832367168 769561043 798691805 783935048 974875933 342857365 849010682 942325055 946951866 60306246 577306312 977199414 986604877 909038158 913167551 449789684 856295134 479719714 860102469 842794348 884827580 868117715 876426573 552908342 800045126 292361775 730705653 777675005 804020789 524263532 964332166 486593514 702949018 682730754 909178928 880190590 981083381 939611240 959939800 782584816 869906401 224644675 897696679 435558334 842105119 184886501 347932939 694037224 713331480 389081539 746421507 866899948 996517255 610810910 899886267 313740837 410264837 829498526 856309839 885805927 958903622 213707259 244805212 845013263 961672804 991259332 996710444 127124939 833857213 426850817 633967274 44461353 834033055 116737725 317880164 841219414 906323347 900548008 924505078 715360293 881056276 183324525 626812766 286935493 874199167 609573121 808474314 572720813 630561008 352169272 552356660 729183125 991971959 486771946 776852347 233346793 821185440 21772646 507815522 611324036 889768723 336506380 444774794 221334004 794214285 300917722 467074191 751503527 860469224 179340642 783367860 667203734 920539408 56531566 308838510 756954423 840890128 835156686 883994308 741111775 768417992 544262524 553994207 925105226 960530920 924741319 964822178 994154918 996648932 690560201 945988744 387631069 622464500 452202839 647402245 163589385 174087296 35909720 179579102 293919946 958002706 350832427 571410076 693083346 793905401 643255018 828043881 144119725 651569335 289254265 568484491 385006564 739027221 99209073 213254994 39923234 78946285 318522519 733762237 15560490 789908730 893641018 985899446 583477086 828073662 714961391 775086721 84134343 903515789 796861593 915250483 798373804 844111208 819084539 942886652 19047685 803111849 547815645 961606051 398604927 499708118 966324337 968004412 459847646 957416183 15534304 485549199 545586963 639084549 365143208 542726065 617861599 639709385 602899773 655342697 499013704 967899972 483955626 530665963 637910938 688946364 68189984 119143106 820675926 934415748 221701290 532363001 960852849 967741748 494314152 750729120 891009949 894676238 264202865 698400598 278663657 716363334 596227197 798950157 505111709 612122921 228305090 495692876 396630437 596963402 849130142 918303444 41909714 607761004 483954600 598091870 708211779 807891304 871955217 939048935 352853033 761224137 473292134 530275187 776029770 846195440 425024453 904104336 217827311 222948522 698225721 820940842 318698952 390762222 961863858 984767035 962332700 991827921 967414816 984775357 48872917 495802922 732416973 872692581 353780921 757407554 950343423 978584473 679429963 914796435 147496267 574157712 389597278 760118229 213930364 603380424 784607170 969813335 920252816 937306080 995033063 995523228 840116405 847411306 33561583 100259796 855548279 882476158 345551719 759258365 189683117 635996285 329063839 933646128 649307141 814301347 609968569 902191206 416748449 711664039 726293865 802041065 235407211 529882789 792823565 833755878 41774288 612228227 317858251 607638823 799384486 808963686 566683253 936125516 387797715 610195883 755535748 919419445 103250995 147249273 300258696 750699923 730213505 731584381 552190745 884489210 211712774 416135997 55248347 179811725 830841465 945655854 604309502 760497070 914840711 981991038 672785304 785939953 681504471 784713893 502843346 853521897 829442699 882791349 469418608 682785003 888645849 994001008 592454620 655622175 679966230 912980329 835801871 839265102 70751453 386989113 799197419 882638652 960881062 973073666 431718469 565728081 824015091 912477285 536120034 890377229 905229756 916490054 428111623 987273654 126957348 856767479 686638575 893006837 561835668 860651672 700252018 794580270 19019026 272713994 774135001 824901804 385661214 545417942 69329141 786645086 685573248 762326543 990849598 991466240 763466898 990447730 759697737 764746636 79463304 129663202 999377500 999378219 832087849 844175604 275753201 362364705 964665854 982086917 27221182 465338874 825063864 857269292 69145701 118575115 251404443 401948213 692931678 958388735 988315881 991170448 25838602 952879836 583611420 959462402 161444488 518469388 424103455 970686104 989578109 992343570 584035083 591776369 115997395 385427383 82373898 258822201 92967453 775007933 443617142 565264600 876309008 917749595 623852427 926395865 623092207 666627971 496989604 837214136 987831794 998671352 176759685 843342292 858414627 900617014 925410178 984134362 34143022 131249933 439342370 439674704 319538317 639350410 848738315 970423447 730616555 866062042 14038697 918289221 81552033 308469471 371343107 923333272 319045802 729990561 121853852 899434051 86707278 989574152 630936654 722885080 53486798 489329897 206040745 496962566 260139535 888197441 932421241 974683365 321606446 323468646 657398031 707393391 944041723 975069276 247220750 682343822 566614543 806060069 182249848 346292873 343688669 703278906 334321917 831149881 216308296 955878264 295278699 377175062 785404972 792109159 476956699 615444755 513286486 708580518 958172901 987943947 320392596 604115687 689408791 987054937 245507956 675044463 711659385 806896807 138192470 781810398 667774325 853187124 391327213 537928236 493496233 878638476 476942267 686137838 9529190 402401587 28175839 688875990 254080882 685139507 362831206 666334868 353859494 709439957 402952536 946781324 296895820 501727403 745258494 878950055 879061140 933208637 200102279 416187964 176144582 400252674 245263455 799882314 67385115 503651288 608974417 720463685 497223794 658689721 678937187 840577361 238086807 741275816 70798973 461520055 463556151 940121789 885392329 955938368 416729901 527037764 217619330 445956970 783419072 931575999 802242308 922201685 412552517 461852588 398171651 868682128 94362065 444475725 845143416 876337347 862989891 977733980 874596389 943830064 990714589 992780473 187941702 923630214 902091808 937298333 276183963 817402029 21138514 577471732 238394734 877326072 396469554 864098647 825449169 974374386 679408085 932001957 420943394 598803024 115241231 420540581 741508704 987361337 558264258 710315385 605531633 606251445 406858964 823591264 163007989 655159465 291348239 691695189 800437519 894239991 790400747 978082834 247606774 822649572 644060290 800484551 966504203 989041528 229400154 951967842 812820302 887651733 206621211 621683113 706247796 895048509 864795986 928767184 59089327 845628873 582261585 647026628 301103064 627795318 183197413 957334320 942556690 973292128 939092967 939143254 490361775 569982756 629905697 832554643 535577875 645118178 286037051 371260901 41342030 256287357 762864641 928820152 118723762 189782773 988157052 997540140 823378501 889993971 828175867 972149429 18530487 335902532 181030765 866738653 719171518 747122313 566947911 697209362 410566055 750392130 576229209 755459636 734470563 835737771 703240066 805731788 628656359 775474364 818298476 913516992 821089319 898767143 971833220 978518429 223594012 709604694 909134945 913203107 77812108 743215770 278448874 934929617 755647844 773733640 284123716 622108703 975066853 980366343 514875730 591406096 824426212 842237374 623020061 987094727 795845102 802233052 776096937 781805614 708107030 748872718 425957067 674608345 885222776 967623500 276387674 834512123 388415331 925801387 675861656 717957450 539616260 932983067 384974533 680880488 995271385 997447450 620109753 701826955 961428148 990424754 452112387 613039362 297304535 410315666 616470502 841380953 889215422 907412972 510198020 548719470 83882161 287169540 432142853 881138883 223097613 544122012 801687501 870940543 845981120 893981495 269555717 403171412 936213537 940159340 990286000 997066505 209364818 283991184 749308849 838451487 519331592 963213907 717059759 798393298 672416734 923265222 894319459 911767045 110394131 148627165 436435849 893229849 746822935 961470820 786379462 944701443 912162134 915954622 966172362 997639273 1589596 924741629 630076556 783996474 27572590 375851415 709197674 828014302 965206462 972790222 557552643 635673595 868049135 923121438 209041469 774109684 537697398 895389436 102667531 195084183 850811457 982373728 347456628 958602672 394616520 935465464 351249571 747855180 229695968 322502749 403536408 964374693 326622775 908926288 915558090 927154057 174748908 379672117 862365675 913075001 650491336 931268612 276035931 387924874 782411831 967508889 246096847 440814115 563658505 982688345 231249493 236720180 771636184 811843977 868444785 968111685 235549691 329817069 210893146 646426362 470855933 616870047 188859298 745336688 527586271 615393381 568488317 713632629 505810951 728331668 185001789 556394476 407489602 989518316 770096586 963608434 620085633 706496262 434166358 710193759 186118036 611733548 457461356 845571980 997173624 999171790 455115814 992488403 646410559 688374700 731765598 843870220 908022333 995658301 874593963 896766025 457699984 680986652 634004507 763699391 649918139 801185610 186942648 683138517 996207740 997590046 130323744 960288593 585865490 825533380 485002747 524804680 737434148 955265746 701412566 837004285 170557837 749704755 136931025 709870892 935787873 960606300 176100063 646762577 458271252 678130018 300462231 442010563 512768495 583052541 344825041 938576881 295070245 379835289 917750682 992766204 754297776 886807320 870110941 922538013 581502248 912332862 653149794 951643069 243397510 801450951 71826522 959269402 741429955 986938017 132362576 949356229 727071124 779159769 7735093 716652290 600946491 669794637 418143859 925138833 124425326 142403137 700807282 812104612 39142947 714115206 265498004 621865166 55041763 174993449 802975176 826626248 746610674 769620625 312416566 496800372 440704457 649192737 699456915 831240958 406146710 962333511 764340717 967895494 703707162 805281601 361457586 629374855 363991524 965490799 506892839 738181076 485906704 572213127 741778334 849582924 714380937 958818481 857001602 931923060 180418311 366179926 898033382 948199134 441600444 731990867 591826326 835849540 474272632 556743853 127812759 610385477 804550159 950530717 195357217 233012449 245321654 873904259 149349881 494011960 148458213 799086269 299026794 693901513 184283262 621768483 865378190 989008388 57123490 114635867 45768179 64547944 682258193 803520841 278588460 307121647 156763675 812659308 391932764 512070225 82371234 777900812 948098126 974203102 365366512 565727889 798103989 930177190 797941856 906642377 53448976 631254356 604873685 739870964 239848307 538341669 319527208 324637132 471599291 893917276 815670407 960785972 107921433 974680867 74898201 663065862 774900098 848936851 638803486 742955264 760961049 767022211 736029125 757449738 872583895 949977160 130082633 525113250 659890999 919054060 578641833 596268904 157553288 527513585 770899464 919775773 659784800 985751149 963817799 980832971 84204270 866451925 182429888 491093629 472628001 492017693 830842476 875633124 661615063 870458113 862052456 931563261 144996874 541993621 996941505 998786934 834658122 933085321 677589391 954772491 546178037 710374143 474809781 875702664 915480893 981615517 101942169 141663211 145671287 370085776 701246064 978095600 507725591 975642284 656608069 715472237 293609127 381443475 582689790 886198444 502330124 571404071 564171704 626581126 724341719 733539536 225809212 339663086 551511455 673985043 334651932 993346512 186395431 924761423 134061675 396301686 467329709 628958870 602936103 800414967 795664327 998970567 496844123 719470682 654821918 926581714 691704786 986071847 934262196 960786429 5160088 243877977 2321484 666466911 514136569 858385793 267986445 274531377 751924469 916545948 487746070 765225323 668863869 735763388 501986342 951884796 80577024 540605702 743728927 780154663 852011990 894096561 694802928 759531263 592837526 748072729 293989858 360492739 351239193 644452211 711627696 796338751 478970201 869904187 75979828 783984149 304924751 675244820 545281483 891110506 73648206 846971846 302977180 980718695 752012268 820142042 209148662 886712203 18357182 740997443 681376122 889520053 956951031 979131109 823229052 890466988 507882187 523409745 305827558 419928763 294871623 574186550 674646624 772400690 956381921 969711279 867869659 908856623 155921310 391245011 481604629 643087132 889315551 937340548 484590810 981729591 894141614 996209541 26750831 75186011 245729595 449383080 508362902 819865738 904088694 951726614 302093347 786857231 302467637 689932126 131670679 312388595 586326442 711707812 73305954 159600531 174694861 513067262 456137577 802974419 998380848 999337909 421865019 964678384 216259578 416872352 214062677 497998203 188696073 626881532 491905657 705406180 333889046 929213955 825423401 844348515 384992158 453391784 727160609 794190251 645190267 799007571 769625795 835659972 12107225 30163199 553898162 641319166 337371015 952633094 458264659 621492477 374583348 880981611 395860090 413668885 45261017 309381189 694124566 999090818 745097798 918318693 617869167 929188557 259973264 494534209 882956598 989961655 247202901 313116955 174033506 846246181 792892754 811380647 165557274 232469745 666101359 701129484 686357971 945558639 556107628 864425992 552226703 571554049 205127969 320165755 59111488 862858964 193398337 718398571 72228615 785942766 653842149 977609155 909018318 963215912 824125285 872281617 361232044 513172514 933709135 942104758 175352997 597942442 947762018 954872278 814288927 957003084 805695507 863259216 802106715 958970511 332059496 653793690 492072659 724691535 386367266 773302072 559595597 847077524 550722744 902976231 746140365 986320764 212619390 284266488 450440070 608033310 583152010 971237376 362553895 925781893 657360845 779925203 42141834 110384505 361531333 716304430 966588624 988879405 155143885 625143712 818423694 913064415 407211019 748997029 967433914 989244614 139876716 611123192 386220544 453126076 858454221 969704802 434392079 711067913 63616828 766485591 133971530 913291998 652402019 928054369 100465779 483092461 523206319 826278873 461613981 972059694 738872944 777881444 512214436 715487435 533257090 810288932 570194815 972507998 532953220 793357852 985866707 996221508 276124412 351632165 674652052 850555553 963739013 967807635 764714008 911077453 710572292 751939858 195294250 632459632 709684924 947791842 429319958 975631408 246037189 426488657 73993306 317166809 952250866 982706737 239547314 446238077 842551672 894435814 86468617 331488032 911255159 942270649 206976211 784165455 597266432 908228227 405308807 675275082 660086061 725550929 227517920 352000738 967784223 979216549 795011558 993309563 740231783 893866811 188168869 362728658 357984729 693533868 355497445 838288801 135269482 883297261 47278557 745394328 82452774 727873298 693387413 888451457 450890705 508345002 558907956 670451215 355846928 575023555 42702104 852962791 539869251 884650634 738971724 899958424 54867326 884766412 95872939 865080355 990034044 993800513 275188172 843657356 633281513 785185180 764651027 850732797 857118502 934082889 571188521 814477336 733047934 778305943 619417119 835922612 807578463 969512396 732667935 860208250 436523339 461560183 367086837 978482365 364975052 910676693 465353084 848987038 798507064 886951487 896851069 938447125 607951018 659877166 694504965 819709296 617444629 637720474 203961293 963840419 367371786 651492191 518665841 736703415 387538898 475659087 782987227 850995438 486313967 503709841 290689965 859612310 628503343 803444453 207094205 449120959 224667749 771426896 188933557 503288196 773179632 852844344 388955057 885894200 943852357 965605264 306422643 350364585 924666597 961947817 241193565 455276502 589407215 817075840 541967232 564096330 27827434 581559692 394393466 451440407 491907403 942955277 818505938 852586679 751555135 756975150 612369314 633735675 199850325 580134911 988398973 998583219 994418368 998503595 754559315 801375668 377028460 733875161 547459299 801601248 663900224 752338400 514757184 925133345 923061073 999130909 841988758 951577097 173974572 369670100 570881162 935381839 487442263 817626287 319549124 826831507 307711967 955199276 86339143 242344567 987072757 990900194 959984455 961029178 463489737 940329094 754637314 816907868 542052129 638279071 400891134 411101162 184062541 365418768 211901141 796781291 902835712 958829185 205506467 351174166 215216192 585131925 590042133 861555424 346127248 786484672 843658646 982318193 836564636 890478214 792180551 905996085 792180595 878178446 512951115 847188120 736702667 956134299 1232299 154469922 355251434 412964605 13186293 942101697 563907659 864318866 622586209 759968083 872381541 914375450 459802916 997390213 812293243 990460405 513096695 641946448 420720741 487785405 263740292 440990324 203659227 580317020 236426608 377090497 507945143 592112078 426521127 585801220 966953254 991178195 741461059 933500415 877804001 922046404 88402924 447362278 670337361 774578906 766038849 861904284 54599160 805946134 806764771 890831533 29433594 224966180 392467688 786954494 887720700 996636021 758624418 885927258 663473685 946901184 73124641 962649745 83855725 257798930 146962604 551142294 207496392 779973527 560495496 724514266 49391566 291662496 698199197 877936577 44708393 106024588 402805384 425644094 393643260 613625466 665214015 915501619 185301342 591755790 475227503 509209209 784322779 857506975 174536680 454965221 748490462 794838453 721714845 781320101 259563102 665686445 435273978 966693874 752536586 910420658 902571277 950697165 573566339 605216978 361557587 889112549 385130964 728825427 190210246 257892478 318578214 901283694 353705165 948022530 941653009 956101919 458132772 970953314 935910699 938378014 515502342 733380327 739476367 868312434 398931071 697170933 8160357 72081753 439549617 459682116 985795317 998491651 319153348 952965874 679525431 803372983 149631980 600081702 21046305 730024797 491202101 932080202 478455046 659255877 905220964 971370388 23613002 188566209 382444203 846671754 227349948 712490552 509985497 569348365 949316673 950246748 784454514 853279009 93970186 157635090 177469500 348809697 435913727 653669735 622984790 888548227 315945590 801794460 584218062 948471458 716789427 781137186 662199729 934223592 636954 653019379 852563257 934913132 163454751 959439827 358709466 634065355 587800064 919687500 61654827 985605686 197743151 399741458 645211828 862589966 495138501 906498839 637536680 906352509 978487420 986992346 591722002 954910509 620757712 789934141 12494185 375681549 520756206 983770472 786310870 968135539 327374157 783027809 609520996 969613920 823585382 824761737 47217677 930423539 82370119 542783941 381691371 778577306 884018296 957244656 3975831 852217959 768821472 894061897 29180931 315965088 722526461 950095822 128436629 625332771 403887789 897629848 332677961 434513431 874177267 957379051 333903727 793247657 279437137 864154643 165742443 475193436 951415824 972181838 443177122 456612363 868566367 901583849 97630549 804947545 515227901 688462467 614772274 896435071 930796502 981539167 26830766 897351299 33042035 722887229 891667477 903051263 777712284 848564756 445740199 605805410 605712367 817919744 96947443 181944947 188081194 260864473 503823567 613013565 161359218 392336268 214758165 739994459 951835824 968437169 729823992 804801430 707401161 950154610 349305966 963943776 573659700 888103905 515856163 984471390 401433263 778480048 357125739 375049748 474492261 529702215 932123235 959082661 827850758 954840617 553612006 730333910 756430920 827945466 603699988 610190641 659437017 668930087 821591763 843713088 708390741 827299490 54150508 872817342 219206494 769378767 814600590 945641187 291524773 437120282 616710287 697182345 453625193 479724799 506787383 592495331 496648919 715246248 672856208 771644393 452340828 568237643 784336445 972047063 217946603 680900905 773446086 774464014 455879530 926225421 542154556 622531788 667172842 720495734 676041865 950801868 365146049 894937827 480624084 689417376 322657047 617449562 376796928 746704435 738317597 757603592 196946536 229197327 14973180 744395873 425743602 451665070 912321360 955839850 837001794 917705029 903893525 960572287 597867743 626299112 176597469 407663040 670330888 773725977 834333374 976593924 310342129 466542311 510910490 771409621 110176718 406928935 296381517 852454430 405170456 550549482 323960858 343399396 393948516 947177820 73660942 556090154 695861858 704544705 696146933 857153087 599345840 860632590 648306640 937126833 805409233 915566323 637432777 840786192 75570493 402195458 427727053 706778297 310263299 568407297 204022890 846659012 675167708 723263185 600864367 974138753 790980421 923920310 478785025 498372399 555521947 853952613 170710604 536529590 91840248 430361738 786382772 900190001 627577130 770401780 518761350 750590354 920182517 937495807 846988436 911320342 305096431 432291794 652103114 819029695 655585781 840642343 300248989 697871218 881071598 906290264 638677602 676331918 670465447 856109184 888502287 977016171 512410355 648438785 685292826 744920285 392730610 925022495 364008369 583721754 314400973 933780195 352751912 539975430 952332769 981212477 253127227 472593098 258949278 567715786 464729262 659067571 118802372 280222061 10563152 411865715 351709906 659515714 676454445 833961694 515073815 813012639 156970259 664307168 126520686 180181242 611202638 696379329 617186413 959537223 243811034 333472498 211846961 779330047 523046213 736925418 687502041 873098233 561606299 593434610 361686588 779428409 540108388 760868163 507056931 635134570 752907767 841825890 819710392 820928012 286434053 773456744 679808894 848098008 395349946 842050332 649516948 719555675 713242672 799885829 236707040 634770052 27537923 739324744 827528052 944685561 92019437 806037906 6889340 453028157 72687981 762627376 687966692 819476146 850659067 862560578 939045160 946982530 46001819 499453809 983159164 997840318 899992534 910632346 331340763 534521998 804228532 828140952 371776965 875503734 542075470 741088292 820441148 840233407 873437092 879634421 236453611 742692773 558270152 850342385 583859726 636176104 689935926 703838844 977562696 980100515 25556695 187845070 665894908 768766184 851749308 989772842 906350571 911647817 336992727 978558389 393546466 418351914 107947312 610651177 361002381 753351561 891991233 957862911 284196214 328449587 88033537 471541853 865746449 875668589 485961545 724648747 885559548 973817579 509623231 672762771 61365501 640762789 118792140 950045725 490962174 643199288 212098134 582605254 859564982 919028309 92092959 295923998 108089507 419719651 518716075 525453161 127629981 729546195 225960193 349658239 931990598 933907751 636862840 877835143 401931949 508557599 487437041 750535535 789704120 967667646 881221472 949817986 218406709 537428882 110834837 208404687 678987110 914243022 627103456 890567698 533855731 648298651 555631447 946590914 5122137 529058323 289681970 895256136 478597359 487736996 833181005 912669456 377562499 711943553 343884603 789715416 278490887 962945446 770097529 770112611 709598415 957059639 241682565 754543808 404840088 509974386 859950174 991382268 952620124 968731810 847995759 881745751 928141889 945184051 52182162 359126356 842813644 869481820 240589715 668850764 885652361 983850665 416132330 728996670 711714567 721425222 951857149 980340562 265102177 742277104 103545867 938678373 925990754 985173432 582620528 649991725 28132725 357658011 118172841 855902400 816779779 847578236 325293423 516645804 378104984 964459707 808790465 811576436 460677535 861463203 765678483 995022155 60754825 477092260 148079835 924480831 752092381 889049084 251594795 512400638 231644143 840708586 183394171 441702573 517994573 954780738 742037677 870562528 736208076 810435171 498025797 599479575 274838718 815425558 446848606 525633214 449039456 973752141 532793868 681758079 396129804 405989209 556912460 958841133 900045034 991655732 132109698 411635582 364059617 963655153 124365283 737864627 290824479 813817527 105789959 796388806 311461687 985489013 13746695 710640437 865582331 868382116 288992366 484760430 730518225 745891342 40517777 662771887 366079094 732989805 119658710 989450273 149997589 207973910 466146628 599944116 13500698 195871227 244049765 479321858 288891646 841556969 673343045 774707466 489849950 949388629 398704430 675587873 513810501 743472734 462789447 916026625 140667625 785249876 36833872 316942681 969453914 977935576 937211255 995703784 358271890 567221048 198923457 237079116 882723925 990523855 972671108 995239837 385102432 471550963 135109754 918495094 245673940 874768086 925271758 945658926 218085057 596524060 456624509 789248302 951233155 952818115 138856112 581380905 199926913 469829680 156389073 681185658 865746151 868448084 184955313 334245517 442800496 812060328 310074540 400757870 29924075 932447761 430218016 717712213 545429442 819082762 398274674 404780031 86876994 452438396 21142936 681061203 14399607 253399351 938084252 982594445 537882738 732948657 648472480 930577108 877073097 953509513 349275226 799188432 891442050 952633091 383629079 666630602 554361802 740510766 102058055 557261539 330820266 380777434 974656875 985268585 132103236 363789293 539082160 792778574 358496403 586976183 106723600 300217165 578710596 585017461 580435833 630924434 148160087 369497755 557243215 902509579 490330664 958441243 620890399 940332273 168814397 642033635 246357908 358370026 540946017 979008334 849816230 969486216 689684716 968581430 683357225 876917452 594433703 677284967 231968468 590664752 734667145 745376999 192075575 913525945 315100854 372222092 641852313 851968996 747205402 863306472 802836446 863036227 254856692 276890995 302291655 538178648 208584629 331774423 436483504 524803209 628805688 632676166 553866414 646301617 957480774 968379972 194667890 418934996 394548100 646672172 614485639 987306392 563469238 899241714 499950651 500692583 984791424 993454709 219479490 460858438 522817918 742889326 379750550 954818376 306615041 847294351 840985944 988278428 247091512 719166839 449782260 555368713 932973441 991283125 532945624 574217411 354639482 889667437 569579075 801976769 551738120 695303941 74909783 823926319 108856168 626331087 171758630 307252536 274536613 662168963 554343136 792443316 930191005 952668351 408154062 418411638 825356462 862418760 572678946 690654880 478499482 887986764 985561448 997172447 157735341 792143391 63281703 221438513 683245080 896924153 518643233 810470632 54194651 693620063 868797164 876541530 492422302 806830873 440637587 451705186 20472005 588018094 37919754 859972763 228312104 576737346 552385526 635389105 979514110 990670967 547115749 567500364 308579813 393703196 976286165 997918712 986243024 987436401 627242425 988083828 642919632 971769402 315819967 978318896 878558014 922779201 779201106 991619282 655592545 715480904 832730207 896538687 312891472 721017147 612370460 631056389 680989496 986531046 732500676 962233618 233342223 365650567 113956667 534877032 806020857 891858365 717248680 814345152 134307602 217969712 670936692 886771845 448138724 859359818 380584352 944816906 311102147 907464753 182042833 392880820 750447603 918582557 6795903 606344764 92823870 186006503 554214208 576902439 715004330 967080961 143213641 644637995 289407615 664530880 28751512 765597579 116237109 940443882 246064748 264634864 432557825 851026951 687673887 997852130 318186865 466527040 679471759 802695833 233440473 715500173 271972705 802477468 573720820 961479851 901398002 907490877 89048119 183386688 581076044 602829205 803458428 915773236 881080526 935863982 614843585 832346545 981898853 998597783 587288720 839263344 165670493 863036178 895741802 949002204 768854155 990525514 624131634 938837630 5131442 812063534 153727826 225225463 673657154 958792285 85791366 140811310 72929933 430356528 609446911 703522981 771727601 866727014 275325083 680126462 833031185 956838551 941965810 959557012 608377318 667344925 702333971 976173831 726067866 733747621 697036872 782954459 229766993 930477947 568874380 914734581 746375439 948995587 277199040 781219344 704891506 773599687 146822025 991176706 555520965 849966862 654908395 929688203 217195772 253579683 355808579 914312785 824683539 830528623 166149627 296895061 985190429 990711353 728345306 910406882 666847766 679605033 373542885 889258006 706071112 907416422 568078933 832732358 418688842 753062508 83715561 434514190 810084817 911738752 528495696 679273741 476717296 920710649 24100384 67187140 940212838 954423417 192193389 541777570 535131295 946179203 701709984 802306667 593988202 768812444 148400425 698428107 749590107 858749272 995474915 999130132 613769685 802273125 267047520 610460009 95836304 611458486 486140608 921319479 481743979 625780835 848622216 955672664 199778368 543152473 450101783 477442077 747027953 800835002 746326096 937951004 100776752 925849291 829201541 934745097 562515616 730328585 51635940 137375316 479084623 861062388 685343380 908864960 698392271 790197924 353181381 776843002 804227500 955518402 770486283 848879783 818189699 828882887 642058825 907326410 39418083 312037092 120162310 417584090 552681272 773286880 718901645 908331118 673645055 823652924 492689452 558984680 259614683 966163126 459735223 569011487 129951518 949953553 585568097 670207993 724063654 934759297 78701942 856323024 755191280 772908530 205149504 648661283 84926463 988321666 472607265 701418974 323608418 936428620 737311137 751097765 569618869 800919334 544877511 948038012 493121711 949439758 660380345 864169627 998451565 998730036 7451256 735431602 80047519 813717569 121407767 806352074 831233640 921789986 629771143 813153240 77043499 728805594 104596351 401986171 406294958 506983554 697266902 830231992 25033498 949154062 838736656 909212886 320085507 786320641 977659566 982289791 50568250 718537452 351312399 710976003 525740561 666607057 692332538 816269491 453330629 855341347 619449916 992968706 338034359 880889633 95589291 206244722 913042494 996768778 203368264 282958426 400819936 607640703 287260336 533590280 372591956 861482024 678035680 709093602 382163442 578017616 359029376 627884222 346841729 994818477 412871140 507122807 676499334 815965200 701780072 982293004 7665219 661185434 551032247 974697971 688401979 998866000 375277209 426863278 527832003 655807508 832042780 851222303 965157517 970215684 395527239 404985156 882318552 983207238 276398608 281901540 915872264 917618071 408653883 918150716 131393414 346958057 614068711 643587944 962463764 987423392 500463498 764601312 515162989 629803600 422898990 932849695 56603908 259003911 588051850 685148643 805451903 963630006 35747149 762628006 487477027 569318678 750910255 866547779 639197400 714054723 953016734 982320820 521450132 608449557 438145935 852157478 245544705 366259757 924689204 996882240 369567663 820966690 356207478 658072968 975625539 996281820 967784009 970879428 969354874 978641737 51350997 297975541 256528256 455328108 31788714 99465068 81924096 723718928 796107149 978263239 379063558 862984402 382508656 999009590 146274174 674722276 465044679 618294946 346029596 685415426 690212120 994574458 287655264 474267260 101632186 853617276 93628213 778632882 675092819 858123510 839237420 867426027 643520135 864224516 520412452 950230883 69664069 445633878 796369322 887296840 861643670 975562578 372161677 461110361 865876697 869643098 408627092 836974339 669073270 794061763 858510115 972013363 483088590 925226956 342764394 359786832 19789006 729597301 957710242 984161543 748231104 904749657 863700714 969306915 671186471 699795052 872742075 888469920 223951554 482942076 807619477 929554893 598971130 786683455 629030567 665247070 962817787 993415339 993739159 999350910 344488772 388821529 441453695 639262394 699085254 978763799 708859446 904322498 880784682 957837689 873692740 938747785 229504961 651189090 369503114 796395931 959972958 966693860 221673215 784304588 32422527 244318011 614948482 618737104 935097371 944746188 132604445 169699495 39368661 622913787 318647532 696423800 414476178 758518001 134684835 713211893 540143210 741124116 609021772 935471507 139705605 911567973 591151376 954338154 730154052 834733289 668912440 903606949 859119270 959835896 381007670 791698382 360076929 792172017 532458889 608908541 318251765 725659901 862627702 957345680 661540015 856832760 694161323 940231058 718903984 786548053 976440563 983149516 298773000 787164769 208704752 731754509 742171602 957916093 266429299 589699568 689201770 700348105 13654216 802370036 641497852 650023468 588782172 642792085 433163237 473164745 407445962 452187244 810724800 886292591 54479067 703255031 68235212 660218467 78420781 942539121 469234853 693924547 488605713 625326172 319744583 779172562 847271068 927592480 375247591 903059891 197482782 954260422 855280847 906364052 323442341 341195774 407291620 648927340 447564953 594481631 304636627 310507331 196515988 630307645 198050110 677961337 96694694 753256310 526275798 678795337 845437708 973527168 657883459 828404608 987002373 988762766 246778747 674414278 28155133 337092116 783800235 925665503 754639542 927781529 788240524 821495954 301989053 846243107 725230860 896263402 674736314 716258577 598378865 859265173 884412955 904528150 368136939 514984098 177011580 444508123 531486816 539256457 86064927 792331264 267164224 820302841 990953158 999036251 750404956 873060121 757460679 785836686 824349894 827732180 726730842 739064847 818896176 881575901 211100087 667701536 161573872 369269412 328697895 360938969 131567159 890079641 692776559 913063711 556503140 867443906 522499420 939097476 515774814 834037515 287368839 362850301 672709068 712376048 987749012 991830637 633816309 737187632 608625902 946257920 505969825 602556033 498490739 936008838 113806480 307020042 129518743 292278114 576623265 874454818 534594382 856331031 6975814 596931729 280659945 905040976 886794536 978815776 212724044 717362995 529679028 724079305 967232710 981962608 645785827 982239157 417116496 541326958 841304064 999292018 214748040 254290247 270042302 511829845 655941795 878456469 901305401 923252758 114845870 729440302 814715003 873432732 835829053 915420350 804809100 873582239 39290080 290839232 7668123 705452034 57640099 136464900 514508107 555807901 743740681 901337173 280319431 350964205 68380704 549328706 461430687 575537087 824213330 888551860 628129134 869306782 994138222 997796521 289989778 491054961 403399922 723533828 371584893 805710165 809727047 859322075 493100475 768287834 73373427 959256580 714857184 821608197 437024378 781110324 828212925 991917913 149408613 166047725 3726495 484965301 483455833 843219289 291201577 935651511 261976692 423638980 770658936 935285374 255275557 968766103 830960522 956162594 30559478 254288468 450838122 490531091 330690564 573543488 566757468 674629294 95946809 511250139 940760304 958509858 824376895 831980127 551248907 662306773 813710249 856010646 759405251 924772336 337781371 939008914 733920693 950710276 387589652 886769200 382889318 445950695 860418887 900381653 889699972 998521363 921934110 937070043 199015463 714521546 730183036 890908382 270231769 968916092 411443775 796594845 733148103 967754829 854808899 913818608 284140059 297379568 664320552 995621001 413764211 802423507 955677785 996051253 93757119 395022403 935439700 952476721 688653409 908457374 59815497 449531546 885481609 951467355 923070384 992955673 244653423 278014868 244549530 244589287 123551462 514971177 245784916 705907832 728679436 746063808 503527039 545556862 929792971 994954578 976857960 988490415 874517339 984768056 589005576 771067994 194563858 308395727 698835699 850087676 655264839 819068078 503952140 639784028 832950298 931172571 131140147 380923181 839889145 899912342 987979008 990108314 977340690 977523372 160938000 943501575 456531707 584893598 991706697 996379217 121827788 889446343 722938806 941390776 398735990 417602469 543305152 989153732 647909958 703478257 979450513 998655057 784890727 827728656 312792131 689323585 886420409 939473185 43864208 157761217 399985481 495681950 952356302 991360740 576780821 799307486 581099369 799018506 245601198 872775883 879209895 909914590 54070578 475972413 67678205 909967524 137949088 888339387 859928246 990966338 661104946 845956179 352212096 667872938 622985397 911611055 851846038 967401127 729237354 953679096 328526852 693098371 246600395 933184630 955600218 993960209 829739192 867175246 914336998 919778842 178300147 613109165 514801481 828766687 423234760 757557267 322431714 537174883 75433756 617121936 377226495 734900647 486126654 811751554 429789952 971826145 491841124 945135638 230661300 400210413 252693612 901153573 69145319 254873606 126243058 878314217 642582807 947385679 226554411 399211681 417697229 873244920 350817358 360867620 180669576 542963260 866450416 898176267 729911953 934094002 706062927 800329588 104019535 775146568 192713701 464879852 949149652 995289218 284039399 774152368 258005269 831977091 845459236 946434479 152246479 579134348 284874816 875233892 140368947 720664180 912858802 961335312 147110625 391399951 592053637 808782333 366226385 443430997 980548177 987981826 17142401 553180469 240721292 569410414 899388666 924083234 725907012 989233829 693550044 853811906 870392030 933198307 241691554 710026519 284987921 534445390 180609870 645779717 312228270 945523487 820955171 968307096 499679573 621219348 497739391 651883437 750190162 768282537 812879347 939239037 701420319 730968188 232499380 546084004 85584986 301408758 215646103 398120285 963382646 998110492 78728328 474703378 875334818 986251093 820400492 897792200 568964280 635875919 173726439 199884497 653208092 839252509 874277244 890914857 697425405 969942773 494440207 731277725 521734644 907732221 221240459 711031101 104745932 726783496 714508359 902883552 402660332 871122261 516377226 727555078 659719315 732022461 161588722 789400007 169009272 759056991 366503180 931707215 978856200 980588544 425720283 503340484 441221338 841428750 38325837 682101048 538704629 602498540 854883251 878426959 660086145 908539246 790266646 992706109 97019586 699277270 745576826 752688450 628424182 908264895 866280524 870488486 486813803 652136839 247107465 459919768 840390361 853251276 185314401 930008665 767420148 784807120 102837270 332480194 981478195 995029081 947859145 972518315 185220936 751406251 458009802 831219780 937058343 948449619 22417381 363982777 743259576 894807398 732777740 768219062 828342243 912346574 980263474 998037117 869467069 892250999 589861709 616081768 163969380 617905828 908213452 989042285 319684798 719166719 510937904 645578816 995153498 997432954 738909965 879485974 95825834 799350182 696137722 861659287 241896953 254325430 467891504 896331344 288350279 496317747 859275832 941347668 369382050 587081123 840409825 892323683 983823415 990003153 833274231 893737089 892378459 974612931 894967711 919774601 386529131 806972156 533921432 728761969 6328908 906327033 285585353 406809938 573152383 922290663 684611515 823455539 575506228 762954226 544317706 560320300 892600944 938631638 390415005 928497554 726945677 883257235 372394642 689149446 318827937 748528460 55203470 997920376 313743210 511964077 920531195 999159387 936928010 982144750 652399579 976497436 66494024 935538823 992380371 997117000 363790589 865650331 652979792 945653458 552098679 827772931 722190949 896284435 88483679 98774300 993889555 997470316 627318226 926637495 397510314 903227623 143580790 837721337 891771918 927236343 328273138 894444910 981927368 989276542 229982530 416992279 18713017 586348814 342677493 418477131 840834639 854023544 526115403 604405039 644513355 662780345 630883094 643754176 382579554 865851408 528771797 896362786 989596786 991587191 925379141 974838649 978063857 993834451 325450330 822316654 904431752 988229792 89279882 419678101 279744381 565270211 33792318 489561783 163378911 449710710 168355015 542079443 921641845 933407245 166781418 415529492 279974821 290512752 606916556 794442593 683674900 762955002 377832403 670134739 909619037 978701582 544587136 769942383 720899852 891563213 815856462 868208278 680576295 819568689 741883811 979809934 207492089 524053347 726417657 768712397 553557249 986311040 341953466 370759780 508107465 744500177 974327410 988189122 492291186 788909252 549872247 862721913 615117567 969336973 397349825 773537584 175309641 952142329 91619113 899855820 19807405 662713655 600909366 810463539 438514980 543806691 472206291 839258115 714082394 956869368 584721635 991566009 868228674 907287834 185854609 384570027 630976092 883965042 190097416 939232141 766802578 911294092 524360704 981722405 198271439 959995202 216242439 608545035 947502355 974803240 137566295 454747592 119165839 207446010 571979398 917166850 389024152 865974350 637014886 900999389 175455817 573849600 155447240 680066316 736167470 956735833 722720601 843790540 461444797 613390580 950761059 992973940 410142464 989233110 437488482 781328132 148368773 745215614 639057574 941462498 700908066 964618636 850644134 992877729 644232122 910610334 957720659 995366175 564667938 636781299 954135849 958626840 574522766 793999909 856896221 863960114 408325792 505436150 406460506 929355944 997878886 999094522 390879492 943840501 330763 68322336 158510531 591034318 185393471 336709279 550047185 574923256 796126702 854519368 57772709 904920926 42389578 746860956 453024502 944468113 487527580 719277950 285922932 777873169 802727398 836024337 23229670 703460717 286096900 553734498 103206700 745929601 548871374 666353568 87802569 241676753 103155449 683367955 23899047 493599758 120965557 137653342 51074858 87560340 458029976 655050798 43890536 616403430 693498398 942839314 965810046 976661618 97083239 206786874 289441960 715939881 962880993 967645372 329365422 369898956 844114858 992104864 581467923 583156405 377867365 823567494 325249312 884658163 355806227 676312442 894581696 936222998 870289733 903812468 904953512 993570571 397448767 976513305 620035023 761097866 86639975 289599173 538176892 582551889 950618852 978615141 770837747 998902599 668440491 948109559 555225837 917059775 100956087 505818726 120434655 193363401 704088873 748662363 530003510 885915133 254970929 589655422 757928453 797803158 869383932 896209218 317623315 745316362 272542464 453293284 819122743 919305784 993461993 998358306 361561468 814611851 324868869 741917976 845355589 880839746 303526173 885285951 7711068 902094116 806746910 887511888 908420898 953237347 50440350 63265317 201556063 865888706 977384331 992392415 678238237 763126102 669597919 955661380 649311262 878097743 855308378 998910393 952933520 998166240 616513198 756633115 327208369 776672945 502290584 843781248 527380473 972107382 403214601 463460410 632611449 720115024 401527379 970708364 777428333 836019523 330162153 337578260 616356431 664290954 654600617 929617862 157271716 711489910 918817067 925585739 210062481 999148884 884554775 962066269 285739301 756023170 634193756 927797006 350616001 417599089 146449772 407825522 478135780 938021391 267329314 909392990 274997066 444235400 342986398 908803789 715160962 861824223 160516680 935628282 658990647 703932048 520533451 522672975 224360881 683484089 478215503 940983268 470551608 808204122 807734767 834137413 810391511 885486998 355978777 449620892 800725809 836887015 984518170 989362020 256602199 708662891 143504058 703776909 193955422 779606991 593254624 855754329 572516545 814376303 544372019 736504883 782788897 800893629 343668114 368639717 939482586 979985945 916796060 958585604 794505842 879608074 492023395 989530201 594386170 692571067 734070080 880076823 966760897 994175722 310268379 410926935 350401682 463312501 294418719 371763447 833802593 906291850 258181691 495168325 932050853 991780846 357496682 916548698 347656777 648262052 652659949 713071484 392438264 409630026 281760167 316949708 859496457 875187041 900489650 931605895 958980344 982687875 192042567 906411427 616613226 692285282 775729409 801338093 439352532 810037596 490913743 598801988 600470861 777693657 952710137 982293182 796102209 813386105 719671569 937300124 696433385 939800368 682541678 819920422 701057847 716610051 735507368 873135275 688750883 908691027 12170847 697656533 652019653 745715297 899491426 954120949 2369047 161663899 46128193 395400057 235780039 722344887 507518559 698936615 68988766 211423932 685873596 687746291 869216911 942526239 734098426 770495439 62543432 533459748 54458572 728806608 253580116 870714465 667412375 737520504 730267206 845040772 847278549 903771649 240471913 719139583 395415683 749917326 36724433 236767121 139044902 830212959 761047198 879832074 53988700 753627327 385498709 632980582 601836128 719587562 919405048 988560188 934901709 958966046 116830623 253803621 841704663 919547058 592495520 682407556 510916849 948151301 666104430 837290370 5746867 168470449 73122765 463399962 348371773 770756871 582388092 744098848 921313806 962070733 987204581 989092270 745420133 814299268 627491369 898947884 357431868 810340641 874429349 997645787 224979054 945363290 963388415 994198296 839574856 903195171 582168220 813154508 347130657 710932694 255309540 294740607 752624707 758305949 722257064 725140475 175067551 989707725 598901027 662068857 742479712 858568249 627061217 819822247 691024090 999314466 302053308 374923177 186084516 375691983 144396819 430659936 155566914 173933612 458623395 706110226 115958472 758944626 105067607 978657131 236571563 833881585 163606585 855861018 305278750 328940066 378621871 427366153 148369665 876166598 69812260 898813846 893430629 903997527 401209286 480231124 803439977 879003948 273923203 614236799 6755077 936073631 420785952 707445626 957132141 964343710 561768779 695648899 733416955 908921033 131080341 829215953 66592201 138424631 509257314 628329237 826880716 931484397 668623284 853229830 576161708 630134540 434528486 579511527 122727105 489774035 825032438 948400961 744503909 751977269 70309637 585524724 520497175 631574047 660523603 929014224 557627210 808343657 115062948 785051277 233748516 394900959 78211269 434917060 258473935 481484520 467889687 698390816 312244829 695788038 404462273 668997932 684854416 715803381 784791108 863319024 585769040 826522295 99303543 627747037 794327958 971522587 314122191 373553371 773354822 876786610 76152349 200378568 66272787 401477401 856858223 903688088 892118365 922341126 70060532 896926563 275081915 939306894 32180479 716937091 498788094 586267642 240422897 631546502 690560080 868697136 406126596 780825548 940397137 968506555 626221227 907931735 96337765 253607866 499459491 616121463 311944448 924599824 133854689 325858871 539111028 837004645 132934004 430902711 700315848 911368228 513677450 711406945 889194983 981351913 290856471 966023783 941334409 993599083 245928058 641711751 183411554 680621792 149288425 610970038 770222165 791311862 153558413 226788161 913459487 974997368 345338594 793207303 632738677 938470032 660664697 820027780 561046219 930780559 341038178 633541381 180784854 235508709 213843752 707829750 939095304 998936242 914692186 925876130 89902607 479474238 626635547 632869029 715697187 793372971 877912142 911080515 74634545 990381305 588820998 627704909 493021167 650167184 501883948 721694910 65531792 243601351 81164844 663718396 244950110 480065495 935588184 974766683 379098764 442715199 954853577 971981098 220753274 853607654 861095857 951083720 318605961 411666294 372748828 907612184 964588946 982635071 969547278 997627465 375214970 856499005 380411788 620988473 706166450 710661090 35674803 101349031 578622336 985076414 560114706 650682546 92227115 807399805 820862965 876869824 442832156 897550111 279660212 988731971 52234281 723858925 276783055 956216279 416313388 483051094 37135059 281909643 664855250 747022838 72857211 257652995 962707158 970087574 394095162 407637047 255207591 483385841 219748826 383928366 231284711 894502635 331228596 995910179 617182831 966843076 56910198 800607055 228418430 616164601 397232584 799617495 337255193 650893636 89889010 242445148 926858781 989627457 467008935 837637623 863192326 976241148 186698288 473690925 150834502 741787238 115826459 503899869 964351639 976049888 637274295 929665922 819178584 861376328 58905003 977462277 652007590 833826432 372470358 489946897 198760572 521060691 411075517 808631425 253090344 799483091 603251488 966671755 669107811 792908190 253737475 280147753 73870470 281412300 711882272 769271551 737639596 857730831 297902469 671884399 629883239 691004563 710395670 977142197 216030935 736656889 939996456 957143530 646624800 749161809 382330593 973994282 431356098 644679758 825498283 843409296 255729691 359744850 652972473 699138293 764244170 873920627 322048270 924493073 90566750 199187587 647060287 816891167 257266576 514799810 339240648 742787040 940380189 985149842 748390580 991039815 308730275 604473661 295814406 855530506 100517618 281904278 431047212 953754817 695401179 868779093 396191589 669955119 394065241 484650249 693033324 786716260 968347206 976540895 162701476 343011918 981620177 996754490 128011207 248217606 716314737 981873700 811253771 815619182 220215011 481825530 850753030 917771172 272805513 885213722 689386263 757470563 748000537 783109146 199657974 517284827 413521722 782402793 878651457 944201356 290569876 715445072 624403591 625519978 162993387 817920962 932601187 983661763 787989878 810432127 751046007 816693171 597498622 860012567 396798376 414014726 735228700 780807277 70218550 384386697 823572973 913670897 506885466 682071708 982668948 997911982 688568243 847136809 180513850 214645989 105595765 484582903 687886126 889263372 475284052 494400529 817357944 830411564 496623282 619545023 292426333 701714831 496780385 846566388 68093661 616013137 911205368 968450217 644116762 750667565 168057015 539630556 601599591 630512827 680571895 844918043 625018885 758015377 693470201 838283251 523417780 812632169 47054769 92078184 828772450 829478567 140312041 692646370 408033656 837754018 462943201 694863220 923083726 991925931 344907872 425234400 876971540 949266417 373558142 937181399 533139300 928145694 132377583 895961545 18821908 180327171 629850371 742260827 845880177 874778712 280154703 933624784 408621238 764808140 279067074 746250212 750459729 985526189 36309351 470505509 100949160 711905960 937430573 952000243 300524871 921155876 165613916 929028066 441821675 883287404 372462958 569244928 646243521 717104035 56507448 94999189 312536804 798753632 117510155 245773224 440838520 652741256 761567472 954848849 945167234 966576391 156938605 699484900 739711935 916544462 707232070 874453683 710851006 931667252 296743460 370558582 395490241 799232724 221674251 665514831 42480296 970982613 655492082 958587310 109837719 852409807 397300235 684107809 639887004 752666005 863841191 901281976 912526051 987088213 803050465 942349068 825493406 935460420 664251251 772475544 429981945 983844807 434397564 495472725 842021186 938772811 148097490 277392496 371139950 377592326 20454738 361208783 165989672 299669826 280039690 642131334 915983111 984621318 409410397 781956704 949441194 955818035 709558898 994538551 992380667 998919072 833146479 962958295 694691393 954312751 981573613 994018868 926649282 952592489 294690703 837807090 441475547 727104405 595258162 960678991 628155207 707623991 517323965 875846283 858030141 916583072 97251851 359003814 908459070 954073507 446149495 896689997 337665613 365581528 31523619 238269959 553368179 762185023 260104009 697689459 306257384 742773386 523242104 574597295 129476219 757106483 739079587 938798992 457511753 606394588 312841444 513708402 660879168 784579493 366425090 853249736 940041914 943657294 670381333 921639621 192141981 606697027 836614032 843440668 381398590 500536667 955007864 955392124 549891283 926655764 490019640 867098841 409349055 535678702 69549806 453068367 504476727 535893078 598098426 624387020 952145638 962995995 644324946 772625218 645013668 969134763 613866992 823581429 74774372 446120078 894114299 928323308 717160030 991072168 152686197 362233992 699041469 848053082 490749543 879465077 957385438 978097499 973334698 984628658 736076130 935379273 374851859 617915309 216822000 253395798 391168830 610092553 595881874 785308999 691019965 980404024 217872062 257471542 339335541 575234469 478348177 510462864 458206966 650547282 71364146 113251182 496597345 615317952 834021464 834276735 358511915 527690877 609415920 791738697 958049783 990498648 89781584 436254685 19939355 281120206 735406431 904403468 533753841 800758303 917701726 966201725 489657174 518863684 352654651 988507921 681213226 856603592 238827370 458616301 40021617 151944116 88803696 392963525 675192542 903390813 718530059 961288879 972871726 988182503 236594555 298423379 273776602 320692536 162428714 541694295 430267246 617861618 38012000 855064936 482810992 886060342 177633918 682992087 787707710 982954689 925892872 972494046 100834037 634265109 189069084 659722993 138438525 404599351 612919096 907387882 656269359 983598713 250848300 676950408 866537005 886356471 807536853 939448596 58304605 663919987 929939124 931160868 925398704 973393366 813365341 831029683 417394928 995586252 837045232 911732704 712668487 876101938 453049882 693877525 71630675 673858308 68808324 284613469 41415070 878885767 907135193 995515233 477886443 863655342 335540185 440911611 375660535 495284066 140361883 179924147 328364034 659631086 806459847 819050694 954471383 970637527 157026895 922848055 309607765 650805688 907805683 942317774 874515653 911019189 196478739 748609137 790756798 955142033 501384922 522742390 880402879 906871812 811415319 832103089 711645277 770202821 253316877 929184973 406806273 430945709 350283844 598091814 371323597 854167519 9354472 155056668 484792453 693322620 948800561 968048079 375255780 489474488 259054942 829047896 141304141 584032535 226660086 509825759 973995144 977714079 463852618 730571858 623955193 839767456 205148937 678336092 527277921 685971253 280680695 897465512 388065876 588008202 63896964 855102476 337470903 669298802 935034190 979476180 38892193 921864305 554288743 706616931 143947065 983603607 172950058 720978644 440753032 476174035 867242506 910442150 824140623 939120649 681711117 975893172 351816265 848588240 654840618 799110490 498914279 941059299 533969647 940735949 970533948 976015928 355255787 850726238 190052827 352563924 143312156 957723824 772439535 928023498 356294083 357928153 455028653 824718852 233937450 237710144 527143834 616499464 178709881 247841246 856351212 908109500 736869332 948223374 546612577 882087806 496075715 853389438 447527814 767650784 939080587 962816775 939717675 947025211 913389131 982523019 39247184 563349569 142486370 749506089 213597605 771216622 413291430 698459442 577095490 855725316 635676765 893795342 358119599 877667113 28186931 526375455 485939494 631842646 892237428 992183873 870343365 992263968 88274561 203944640 917383128 975798358 280143035 759765284 48154125 548326262 535893275 732033733 960187408 984961471 467969768 792371150 355451122 746087794 74289800 650718810 210760692 330214488 941575325 972269268 266669674 434316824 576334863 866632049 920554924 968681621 3231313 444053407 148778812 919154529 834176652 976926213 4135832 191392016 290166101 442376506 723757260 939154678 612290032 848404101 942670707 989566576 465201889 685334794 338075947 526963193 344544720 909158916 114651058 646578982 729685274 884381176 504739260 872438428 525036360 925219977 111736772 571100975 747321455 897267226 57697 594456840 691409276 708562497 795478452 818560429 851790999 862209292 106193728 872058184 262314695 985096595 365187980 727923658 745718142 813155947 594119768 969213324 4239884 902512172 708402879 755539278 156788828 216438239 152472580 467858012 743676562 877268280 100965926 995778887 843488381 871142462 220759032 787383111 763953238 767519388 336688795 716376495 909331241 934800725 706230011 781758361 770218910 830597693 720495614 740193138 856017903 984539999 443418958 619746732 464680063 638724705 89068596 575596184 23937645 636717407 255060583 399049674 2438608 215895202 613539236 965578099 728364101 843169273 920359555 938745258 889601060 942517631 663049820 808206198 470461927 903789902 233394284 291663599 771744265 811661736 197201138 687594927 822706577 847616217 945277913 969575066 521621433 623480142 277159778 300642601 49742251 658192982 662503105 942918450 275723058 725639385 623440716 889203929 502942070 543972438 495601438 500536343 187439220 604964705 739395918 929533012 70355578 363881444 268608837 984759848 89489260 420879621 651122196 732330820 310976698 877512201 977829802 998823561 847156301 866990525 986271345 994242417 603304322 615856979 63792278 120226840 74603004 193472003 684818507 896191440 385917532 824901496 760286445 802458764 854944029 974537018 210377196 534878852 652687669 892650274 408021114 806147380 130498338 774424160 902526612 985114735 274312964 278757330 724774336 894145936 107443942 441475021 623839281 706090848 869461245 954725017 438324178 644220027 773083929 798989410 294747851 709616923 367595528 543459832 117537356 811789086 400006373 972979308 418735312 990565689 806897448 837518175 876038939 986689062 23135546 554547154 265332070 851573034 756059915 836827517 810420540 964482702 238203330 957111307 637360050 934091355 451502945 797366841 797125763 859951749 503981402 873518180 214238213 601066147 243761132 954954544 955077968 977191722 978930116 990129874 282367042 508698316 404051158 467375558 143547825 455916320 694196857 987912102 653964411 795244766 136159668 244853165 194383562 544142019 537011781 558464771 841864656 951815580 36587942 842938118 514516354 622169093 651374292 798390752 284212634 688873335 545133619 808497640 228869422 955377920 807306717 972532097 298677144 519879983 835266107 923921006 605638485 656695581 39818877 673394261 988686021 992485929 949396727 953648461 203520731 451990523 488313074 682348280 457882314 663803368 110598247 526698046 567335748 807378927 156267594 321068526 61351319 858957450 221287142 599129013 261057546 615953739 865324965 949757814 278691630 838547495 387379948 945129530 478811531 880983368 482968261 865605469 380120335 569799072 729669305 916254054 109306113 490519569 831595903 849731250 563215421 736684330 754441528 909066625 490787032 655325390 122736318 909607607 256494977 771691635 517997219 562511047 418633109 454666957 910338091 981443379 463856230 727774299 845401877 952948573 919192816 939128280 580136665 925356769 901764025 940744088 456387958 844123300 270259151 373706003 980807785 987473981 168066945 908073489 430430748 607536557 56708851 748695056 875735697 993997572 672602074 957933658 395997195 582310552 398027603 686549634 773399643 824764208 545945591 853927792 751723749 933276013 375671771 740673944 602265229 937214672 925121200 953158998 457945845 684381219 235445125 567602628 363984565 905488670 591066191 676728268 389568242 473915700 907433183 931106352 942703413 969421901 707132752 749908053 99303217 992427501 139347587 554934920 752383273 934980156 302108070 681420460 321320451 401428281 220911591 264140645 556980050 605211838 341862187 639359716 573854664 670563784 73494427 555793993 943114493 959888484 171551095 265230510 482874536 984210083 566356101 810897548 79260183 915136477 852065828 963170709 192583472 300846719 63618365 181660416 484493559 661615255 778166169 881302572 129219237 350778128 739828564 994674699 653458394 849404185 478325696 623926736 754819494 759387553 883364526 917481458 512619507 694074538 933680608 990970902 40957675 190640865 982808372 988290161 982703263 986324490 699541974 753878485 347316423 815729224 677867491 997684211 228586843 651506292 837790597 867004428 924291326 977441170 772928060 888049691 227401413 290418838 452690832 846490662 617258136 898411261 996593454 999349215 394574157 524724678 583171551 879227464 914528689 972406150 748924023 877752900 206347459 215360345 348364538 894794868 197949584 696495558 180036728 668151957 777971027 863010756 447367562 935879062 884270814 930667456 735425077 925941722 65365388 619070858 117788678 576583016 993950852 998043161 594062601 935923341 232784090 732797838 905216881 915695300 593388880 659036566 430342979 961798146 977081989 991511918 926091213 983462803 588496348 723745184 712185279 773608446 98579521 937082501 955349284 972291705 381490597 898459785 468681133 690255275 364166803 932239858 941850063 978839973 968293471 979573176 74386311 559587284 302714928 560827217 524147152 862165865 56560684 449649976 613846967 660975314 385604834 642727114 207732745 816309150 725261868 992708050 959046911 963537574 406964309 725998113 210904414 636135726 830502543 968906826 159713786 163682494 880885449 981746701 143051961 635813376 732748145 809641440 113022228 696402813 291587054 490231152 992933999 998923036 174028533 869035789 156699772 686767457 778351617 895760771 634193340 873643043 951256943 985561851 550185737 872871071 697795613 924883534 269385838 819324329 49492112 51069457 90186727 839790181 894541164 995495966 682757914 732213965 906624268 911287203 927591414 934280775 560415511 644437288 930782140 941461135 295001841 686906245 277910765 874577522 70942477 318166568 208320441 991595222 542237839 549028158 391995571 458361985 82624707 912271755 332562968 503376750 605074317 789317085 801261026 960595993 214708021 592017965 59485058 833013338 810342003 856970576 655210834 661074068 557796186 706483661 317514967 329749481 680090255 941769596 954246056 955152676 985703815 995904102 670117520 966962006 604898817 998550473 926750117 971271341 237666791 641988008 530413578 627541329 678033932 824012165 869370066 924465955 798291674 900295469 719807301 851744687 290046840 832614834 85132540 913965500 667271319 932517257 11576979 108577617 908337619 934314292 40695871 904910430 232235412 508706966 756042080 990838280 522928605 977028848 190319223 981373461 104824712 823100476 15223146 39595997 112121834 340634753 98851826 831735053 535868720 835557133 461720547 491331382 775642025 797818305 500366656 937058929 97798355 822683157 807596638 939207460 248941842 991490595 358215736 505193695 148300396 206831526 383190117 901920727 374465566 594236447 301370546 436292248 181513525 936998484 142952595 485970289 611412729 908677116 65949903 552018338 668325803 696945861 831807998 931749438 250280973 411070365 748340097 818202394 229121421 923328120 580807941 741821576 707057073 769347755 341900355 546337848 887274910 999303347 72702261 567364397 927717783 985857035 915483032 996282990 403038691 820690828 241233355 872134407 853268707 866932517 768071423 979250926 824298472 910623150 204472752 378501853 369117937 420466540 576506850 649335923 180121888 615995253 903642041 918250942 945532496 960640482 753658483 958503956 820676576 905363519 672588449 773618551 12430635 231838794 273160779 574282367 511263305 539336394 724171633 860046003 576403755 580791913 686204171 797343562 296749587 734308912 611921032 822332995 690956892 786727858 497546349 513500148 30316797 422439626 537318224 718549925 640167643 963755875 243112600 771380058 81504030 224583613 591330855 895556274 288783055 518295087 204947452 722777392 974325738 977864842 474868051 730820286 358340601 966012881 104844322 613518879 333828515 717707699 611901538 977859499 743035656 854298759 390523740 626812785 629785455 833473268 926993669 939084826 740143572 964012383 713667609 928080942 851474956 939227239 211560072 434849141 702443156 953826016 902798898 926922864 720822848 987352343 461640016 625730522 522830005 680757096 492826623 950613179 882079183 966468732 180763940 922987817 265821018 423628868 200201853 202812018 937310132 984869848 456006906 640095673 822143188 926637145 656152066 699587155 604881566 964781665 41400661 327804868 986722161 987971914 182664783 545448779 154789739 296473690 447438658 491599414 712068627 968926035 11836907 211111684 962195893 999327446 925414971 987870255 601430692 800828198 592371339 623126865 552247188 814354061 774588215 868304554 999365032 999390001 315691458 800997183 456085081 618623573 434883574 896494955 543371252 665730488 381487320 910358331 741785152 770015931 309434657 605299165 411344884 461231792 300228508 910608037 148951981 924961313 771152957 811313244 130588932 677274005 524545275 681808261 97229349 372990855 113749539 403710258 247783379 979388568 511537466 993808460 785516062 850896755 736538638 953393515 965115696 977260944 449165748 516381670 151583091 303820012 237948933 946755185 175691150 320546433 232309618 336206061 727849461 870220509 809180590 862844197 748417798 884875821 166878095 796663507 588607267 639196206 712548634 825135132 558021240 657157586 544368364 709266064 723584004 799157428 322123976 577388675 131738604 394357807 482241752 677114021 378480076 510259335 511209804 813445027 42332544 408544036 354879708 475075406 26504903 757060153 712259600 924261724 268300436 473196921 749491217 957499995 957667995 994145303 281405019 401265608 102690963 983063344 480270708 849271141 176361353 759803829 766021306 946321339 664586457 829413519 786591879 982972097 883847531 887273766 187260783 263824996 480268749 936351887 209211171 412244749 17250385 467839492 810445918 907121335 721160241 750124951 194287347 573037455 376193112 872157458 800311328 833253795 788016540 838404094 506465593 581098765 763424612 958672088 656070938 844228297 150054895 233763096 840891419 866355609 200667837 227048221 274811311 937291825 448852995 700126218 12668888 292273035 590687523 671532733 904281212 949320740 630172875 960566570 354682990 554039982 243344723 674234973 764695528 828403683 664290642 761510290 434181998 931247859 556844661 945397451 984701036 985935727 450830904 763893381 87206049 198210181 604438428 975230857 117696902 564815479 116181234 696000865 139528286 255414829 653729565 793991928 925484656 975506477 297704464 725938962 818008783 854229430 334489901 615785729 694254495 885618075 866514421 984184527 185782882 869114623 696739297 771100363 250514617 320922586 787682855 852228669 730464622 922304914 619541097 953378977 2666183 102094727 380279766 509954365 46560390 247402025 30526191 368301549 96191572 844898533 267856039 347238675 410133974 948676115 512034320 768655276 811572554 953730894 15488724 782353931 326506903 907656663 186693625 766156438 331881100 625929002 584438418 996127151 647828237 899615593 892652403 983579782 980542052 986781262 175819073 281414299 388132772 765158482 845629253 872087941 60256194 883356626 914477715 923803901 769314399 990968542 139516588 651516037 33722582 107087340 794141816 907443203 503417453 719144406 809485101 832907259 109654524 246579326 800376402 805091355 857388235 940665922 779743155 791222459 707911992 734479683 543173759 774420666 596623965 828977904 608028409 662418577 514778876 711609056 555137773 602283657 321108801 613871206 701261617 754073270 64601898 285635683 797279159 943691749 640193630 848996582 550330311 621018947 405714039 837818498 960256879 999107266 475827187 698721469 112165207 673987245 427433340 730749779 152896804 709865524 809931361 881453084 669200266 959145045 299329247 892623831 996926738 997380932 573262175 576316805 779874816 911790069 294997636 808428617 990853208 995400297 283693029 416026480 33038250 142328399 346377023 625730032 54019821 642149560 600894681 743045750 655044725 901901181 512555484 696843938 509714611 733667056 308896172 342672420 757533992 961827449 210156229 365515618 62010236 728581224 771946459 872408896 419680975 915869102 643246999 652335304 884409648 905888341 444144587 875891215 724166651 747420628 98116046 743320506 904409389 925015402 791014267 876667074 81422984 82729813 693978462 748484249 458754409 599648570 100408454 995360459 523732748 742443933 640733948 646983995 678684735 897298152 512987207 987674405 515879558 730536148 525533885 672644033 586140537 668927849 449801862 633998626 527206835 793187979 314596947 403624909 429850392 636776671 757815218 816246566 411118637 813065480 26413159 851042102 138627188 483660230 369981110 925924862 468775161 908575247 485135364 554120522 480636628 649129006 168857587 450467429 9282088 825670738 217801871 368877502 166101731 357746272 217770915 318403795 806423265 934456286 344693607 873137855 997633695 998133090 54959770 876853605 516462023 763742442 46223597 254225928 610940350 929706400 151779238 874618793 408904172 666684592 250523494 411060031 488637725 872323123 425443896 478570478 935675760 978957975 113392810 914541748 440515894 647911211 342704256 351978385 378427243 765976644 281708395 555493887 605418524 855894486 684148727 837529074 115901626 751282438 428099891 692534695 138116099 191076209 733640303 841360385 257892633 712789959 692017264 798127784 207952984 686811356 233734542 883155628 32645041 116002102 836255893 863234100 231725011 803547942 555019927 607154540 485152114 590678074 754136237 863197170 438653338 487152285 54719010 866621669 515821626 888004966 190277190 783538702 984121620 986269528 339456541 432088453 479247099 784831832 356769169 378227511 130045905 880669623 821795363 942930777 172169138 475799829 153340863 982026728 181476016 432887726 819871282 980997826 867805277 971544462 918388056 970925764 357553416 939732481 726440427 875036066 330757676 649668434 275271900 541946063 441232465 919756820 993036493 995551119 365951331 760517173 864088623 951809408 652947788 836225293 817913152 848489235 86857817 935933052 774268735 856600418 442487699 979269687 544951531 812045291 74247647 669204836 102653615 405396219 440941147 849264723 473825092 693179080 660534221 896432165 672777100 893783703 56189214 596852481 87512287 532389758 869846486 942940919 964217843 992126169 64849731 981846046 683317626 977137309 534498135 709000936 417892398 752112966 410795850 871800702 9706501 269011445 970588921 974789540 132160177 180722933 66374865 945904546 530946304 927857192 48982247 114650691 680799023 876124679 803863230 988961612 831901817 837027897 532052294 804990756 257325543 378245160 45644385 910329939 412131391 859002826 168331781 631389290 602032612 883890712 221473672 260191594 185165373 452551739 202623763 599217359 520989318 975976643 157776658 161839248 45067944 578389583 562056175 672472720 441456343 891249800 136942508 798178541 58466247 900288200 397928413 865342210 148099427 360095005 515922439 829915159 146026206 896838384 493917065 671599676 766135184 816231773 170780286 803055615 893409651 974161204 744230675 888066509 490120028 693394994 322653941 639480602 279118037 541034081 553163035 635251418 546516970 835106015 975517383 981660916 951027857 985185735 987708501 990392079 654747865 901121709 15029509 735388065 412352960 739294864 888101331 902365364 150649094 889530555 969020711 973000884 158443868 325368027 830010800 881732144 492402059 674805118 899302935 910000492 306138540 751743087 936152673 948220372 189789385 610206256 455358966 983670241 18191840 182792719 631458135 653872439 889342232 993218425 239428323 537887964 916607939 996599683 4061239 667293139 677345666 701576475 968078996 989784619 743978999 859093691 265004361 917872497 487371518 632809270 73287086 659786097 653536125 963035484 466105832 851246331 881691652 986018393 318138613 405716468 728771808 977386225 944750295 975602828 733304490 829252939 122564322 648355105 777471835 811886619 341415549 846514873 524916334 804885865 665750519 702182612 445354931 729593633 633809220 701284167 309649142 525833775 419608797 629553106 754967436 940340183 471247272 686062079 969832558 984797341 361994533 937467745 721580620 904720893 576356323 920801659 607428047 870477798 163926096 247907614 655552525 744752868 587714505 691660268 980985917 995617112 988247387 998792603 382251374 852860103 11824003 727205525 926791747 930514308 952502968 994527717 91242363 135476853 376302531 778849245 825054649 830378740 238112434 612514102 952391292 987855925 416905455 638242907 882711921 949513383 58986053 178259705 28361588 387664298 11312354 366320503 817824807 825726156 664571737 755141418 490314994 580109688 293359094 908767110 859708543 997160881 807640360 911389815 306654449 657509884 526955520 690802748 777157547 880971072 247736917 707606137 932390504 961158161 729656749 797638286 824340598 935920357 908824156 919720471 663827805 664336928 851389184 971636252 570330905 964360084 477849992 652414168 993121096 996477030 643011553 778068461 630343204 718751765 546018537 954990638 395506100 961565892 512465586 615609023 13090721 534884483 493141899 701757014 513688968 733513310 954088885 971328664 311827050 688916845 199368692 960645251 930715466 973115247 224376531 251802301 905363703 952680052 528991245 987728280 349100700 447346611 152991554 438936739 602285627 618827138 976006659 982406674 283490845 667091143 488807153 730802393 29475931 240089410 600861275 775176781 384176067 793476721 69259798 428977134 482806935 557860904 778435410 867560539 658145150 870096714 837064616 867064386 116705644 484993532 735702952 858395469 164246314 890427738 907014314 954547248 885386248 893767420 135097296 261117186 552136724 615625022 281952954 623448456 377221460 660396536 843220109 982153150 132662385 567039064 317815218 945279393 864843747 928366156 665793507 740640944 711176652 808121907 446798850 496960195 164068019 949881043 222730414 469275687 640792979 751661211 826274364 990251583 82885188 236549457 168948921 763149853 24150246 665827705 924612870 941276431 90118128 104351736 92052415 619082617 717222334 743246523 238007412 617587948 564902564 659180309 353561124 718545384 864351718 993563641 608958006 714968984 836521086 927037572 473105506 589955711 411640816 640990828 35688463 264897974 43191084 326471098 753431928 852528866 235429160 786406350 651265832 839242601 983067331 983095399 390914608 584393667 952244463 956521667 830656159 949188502 763809914 766444499 151526564 830705261 450614951 687155750 637334853 678885326 627526345 690668839 889510351 980117882 775898616 795529059 628278760 749452799 372467628 381755028 111825603 952876659 682400242 896884583 917600605 931157650 584294687 835993560 150513095 918483390 237946537 592555174 54749096 563267333 395071287 445447224 240855161 986265384 450733914 879924943 241249012 477316570 247319263 992999166 25166667 822756186 703253312 874388834 768977159 975629485 799172955 856054798 488806064 833734207 1188559 502664982 268339279 299366195 251053156 680289964 879752010 995358215 313089619 946762215 253347146 272337856 288441356 393164341 452722826 546820211 229043788 998615565 324252883 497513262 771792011 903558985 468782226 907886287 870769935 994106807 79979486 827236128 456367263 501565495 917553672 935485902 17350339 63304632 326015236 728069173 55687129 796190458 486547123 830745914 459493628 917622632 248477588 923049589 711450345 773421916 29552697 921098635 277927336 794513745 502759627 545509420 327197793 906910168 29292381 834450546 373303205 683599034 225553970 327520634 10117173 699759425 922233063 971798307 201255915 550071801 155195691 876888449 274490331 482045210 412023194 663583201 245298735 643294393 373985446 445201075 813921613 854600358 596893497 734785908 250351681 449591493 172537485 283830478 366427889 398127618 733561482 923612517 488612475 883605023 656703600 738024101 419928843 675856272 989958753 996082948 637633248 852429377 411167994 456996802 538422807 910427775 899933810 917024570 841106462 930661070 926689669 994296531 286597458 438058975 847649958 881483771 802696255 888933774 288302177 833988334 864909732 978026778 503222931 651895817 21208246 931249557 522876414 669756024 9029923 737975917 836312457 978132304 471997631 880731664 173922908 446618533 748838937 823304049 355647317 602386110 584223514 823759842 364645690 496363462 236610182 886308912 692617887 994526316 186959223 979493381 485136295 785064247 344333711 426469616 782332140 872654433 210627440 241337844 964358245 966033095 32611517 172566689 190348277 741418514 314263734 543632709 190587658 868945297 529993432 920321702 104597979 445245790 648940119 837056858 893018944 989168276 326127412 774946599 990337309 990349919 565951699 933404328 870264884 939384872 704269114 709049947 659882335 882272677 918336665 939372835 167449438 264388432 476059877 704633010 988775301 998400507 920453165 927467338 864128451 891310089 650112560 972368251 938187872 942245442 370958592 705498811 453408986 802043377 673199657 809285819 327874337 600941900 749133909 826563475 933538659 947123353 66359763 733947287 347394784 935345667 92531681 399486383 756013313 861580657 83664956 832930908 786703785 956854407 595790152 963778375 908925212 921693757 263149580 945893324 456204280 899954904 262125014 404066375 893870871 914122523 347084066 936499809 336902936 463548665 15939655 233779155 625158196 888885796 65113893 528554747 631735544 993532493 915812165 969602502 957550414 989611792 364341554 814336593 684924129 760903386 413753205 868911687 348311245 976443291 588884146 830730900 714324768 809666182 681753573 873300893 869324907 961431093 789629114 916925547 100920486 391774786 185290908 235679166 452380165 825423517 494388762 673399845 87129608 844672160 423644556 678790915 510082986 903236873 952007454 993030951 89877206 877031137 660242918 665901791 526381266 530965568 636717252 917920468 350713030 802823620 43251025 731272680 558457947 612826816 92158454 577513821 580555995 941495036 621593921 671239420 673554197 713284725 417138600 781509409 738327839 749774705 502124650 504637404 533038613 837006347 573228399 713523340 474679684 983791494 926400595 933649273 234251489 547064478 739254813 779455426 870035831 943920308 625339116 821280205 146089803 627324049 333821062 964874956 637969934 687857951 485593830 888623060 189626461 725411093 444510957 523165158 561610343 879405263 172284312 410977288 446729839 761329173 378825528 417619639 485402764 566646533 881547772 890623179 892478591 983410618 423370287 633266097 381829369 956134564 218165268 887058812 249752071 551569949 139738137 316995351 797367892 880868645 676062306 701122372 522624155 874145072 529351346 926794175 938626387 980759324 504288053 768392936 895226855 987019078 40521233 192972959 787480939 942772309 407101076 850040020 40931281 986615902 132090653 162785228 159019589 291963016 18566644 994770057 139861630 982994809 768112948 938717535 242867080 287044653 595671551 818389115 699240112 966429634 279881528 990359943 522127788 598261555 648524974 940168434 360728888 954703180 353907952 521797333 306564253 813581048 449928955 984572442 372388772 819383726 750229653 802598733 889565570 941438653 131739816 687133812 511971383 587287839 193476715 392284263 960331444 984149505 542335572 562288688 859576298 965384730 862659493 995316489 965975736 974535402 674303468 961755727 603004704 964610457 380887358 577632068 167579507 621635989 460203369 792581124 364107593 535974511 796938217 883167438 225650201 559713087 840097770 895516284 295094051 883657563 706272027 780490598 637170301 944775359 987695534 998754751 465926804 711205283 506309191 603451140 864328517 981277098 413654874 487669842 616391169 620944251 512566582 575222675 194072286 784061863 347149807 439757981 430617705 535558540 193187871 737195755 500084540 573326284 322559399 714054137 292480896 531074517 565531638 623414368 995647133 996826151 85452703 843225391 686704588 804146632 590424094 681290135 103415460 621492681 883254785 920088495 814060235 949155543 167462512 601878465 522581239 956466056 461475880 650757152 176638772 289327499 976033143 981731621 931072757 998446312 951847650 996482173 542019944 859997588 59950639 699301279 584336635 622951035 942697647 984778513 618351140 680855484 31566073 71424610 257386628 923033171 970908354 981443484 941522501 945327729 355399478 538691575 486587917 881163267 942277748 992357701 342321168 675034105 981728516 987017868 346662524 398845025 715391516 742456203 747459269 963037189 915855592 920756934 964197340 985743954 542438271 934073655 415627116 879016297 553259952 736488448 209308366 928423978 337514881 479248272 894315086 934243901 319593775 357516244 328066677 678852321 268302978 804978891 334957776 763930573 485789729 879954859 662238851 679585864 485635346 718286866 286667282 465688703 610966412 939794566 334787258 451602845 196556903 887594119 383681317 452353019 264571075 993307610 207531272 497892635 613046412 904927379 313017040 890637446 574070456 967628328 589926049 990252587 490076707 552801504 244903554 562759263 91055291 633655012 863695161 982429788 273438449 884431906 423577709 964977750 111250735 627133151 250020499 373429148 204025950 620803100 77915577 785234131 207883143 507087594 318760076 436946000 129179099 368557287 457757842 461239792 747061555 834301000 281430908 393447770 283212628 835509915 20518899 331213203 599461647 778980030 239593041 718060825 933040505 950387687 15710881 759687294 806521949 970859387 987993608 991158786 316607566 693521508 37941737 478978734 603401557 749504394 771772193 989848205 760035089 944949003 329176711 985349153 280721278 698039543 812536870 934789958 871981772 874111796 638251042 647776445 846542825 901340028 200916833 898015813 139226002 563782934 657412197 733268491 804480428 982422355 349478322 867616106 371529792 595019249 314614434 558696068 106521735 310899590 702054033 742607113 721306519 768734141 914793909 978849772 181326887 838936512 725026738 804275749 989411618 993032176 400392242 443846053 158124693 928518333 282539135 820249986 950413223 971821463 965688967 984622275 150470742 204737424 394616164 775931160 721576362 817441084 907526577 985461639 823017743 842331611 260114447 285054380 593016468 814650574 363509796 441212492 796015491 816568558 615783444 731044705 582850679 764368555 485107141 797818798 595402210 939440083 366629153 843553931 593223159 715856922 138467626 687589179 95865483 406677456 918242418 947168612 864863808 901106662 535063695 714288063 541646774 759823903 116416613 833795667 217145577 869411465 844057130 950735073 858771980 955972172 115903994 296636528 361437098 960820385 40868321 245326244 444766058 580777687 357710734 965560315 290478347 384971336 656960473 999042839 966364663 987605580 168424738 861982539 237530135 665098263 792071862 834361956 673024632 741166470 602679640 655467314 326057380 425131898 884845068 941763827 367803561 678439355 285047802 500969808 624579997 976868551 272645902 460793891 232564130 929116564 166592928 609549421 909705560 963468428 773554219 825344875 466727235 939788812 608648260 617677185 424198592 790981376 673731440 901723940 923553583 985867780 402708624 839752794 637899643 823056042 498755990 681222357 935220803 940371802 993370145 999110189 377639641 385160892 203032696 441762271 690010076 901189916 305528287 570767379 887146738 887315084 820045949 983612316 613730871 912902156 472913162 761754563 850933931 955480075 926947328 996016709 404474107 908995223 496814932 615016034 243328629 774681007 528072763 559933148 156163361 947395860 807650809 813386268 77426687 816199452 745784988 894656323 648533346 717810848 173336524 441801614 911515425 991765360 688054920 985848215 445826557 692642508 24929125 810511302 784863434 955758059 109335528 759940134 111613424 935382940 287186364 474039354 924441899 984186146 178244418 999261965 323734929 541408830 320261574 377063027 589302263 764059787 43814247 423838339 612828030 665280745 359457941 862405524 636410147 658692669 24446779 485086928 755079662 997102699 611342482 932164588 963033077 998620399 306473969 474312995 924515137 995372817 675221630 782660849 588476135 983964914 733697458 907604913 29135876 931612353 163632245 986739027 808542422 819022120 545110579 710925630 465818222 536428445 484837495 896878687 840493985 893737166 181411419 744245321 334149294 935446869 811903415 897246455 179091719 521393778 87600091 727062417 296134469 922384324 285224990 369565714 303986370 823600487 905464269 974729248 161048093 871629272 265081095 374359386 480242404 509762206 312505818 636365221 499270961 587056100 914309154 985389823 775596220 882071221 963243766 990341822 863448956 881522079 648141770 939823201 280307889 933797255 489973327 709573890 943245089 990781264 596232922 765740838 696316027 862668098 578682582 886715214 988377409 997380260 897062453 946929859 64210895 547355561 357340905 381749934 33967866 55803043 668875337 888401843 487592729 616686578 751801989 983492277 670605657 854883523 665089401 725508961 317853506 548799295 58423284 694327027 673296234 725634405 38075600 859824990 281492080 758116145 368368414 981489444 381439428 723377198 836793061 867502805 1726401 149390145 478370390 952226693 296900714 989383960 69930227 291692575 652708327 840388376 778863127 841608182 173015020 669485898 101838318 917258680 866862216 901053739 467454308 902153741 939851942 961034539 87591298 909049808 899825102 908160490 952047537 997668203 573465992 818441071 833103836 899917439 790969230 799320991 382122748 838558377 991447341 992342709 39229740 729782736 107457060 821862165 783325561 795593044 57593695 820169168 237746007 460282195 842795141 864432429 474461414 750693754 567056554 694476352 711522377 735555127 566296920 620408226 92404646 175832813 952459888 957180014 941234794 981534318 749084732 879367780 920762349 995869177 34581817 618616724 219529656 948153096 415216069 554196716 538643286 558694145 94440171 848915342 885420986 991211809 26538906 379792555 984152551 985321097 170517943 934582662 3631644 313793642 351022591 526757193 57721328 562370949 79293601 281021206 945315226 992324332 731209538 902292908 725634017 949068526 751087462 939875565 967993250 990368595 593575107 916613241 777864387 924200778 897530819 923543047 688359712 823777475 172628361 891756139 163062096 528725006 90966000 644321173 140095990 654360766 346685135 971008755 913623683 962029591 844177460 985830874 813808840 995476829 897808759 954443505 353247951 694896091 439786456 571137256 229543701 566778384 822395521 879386229 48918173 984850889 278657279 473403549 690460281 780916509 406649221 552948899 360976702 595521459 66576514 134823491 877241498 953295724 112152021 234417394 368637779 556549417 478553681 825315842 105995183 111153541 11645090 639567244 50681034 564342634 391716143 600207442 76527748 78643975 830516444 869735482 872157102 905434561 729013322 810473015 936394864 991019187 521257715 992528853 628118678 647061520 774387730 883637722 844715418 906114614 180911471 754492799 199614767 666482302 617601721 793557037 650484009 928687469 599412370 639410361 855202448 918960212 447746251 468653625 780910384 923831346 912910112 991584890 227065097 256186920 268406186 795370921 281384891 770873638 55596818 538256337 188802305 515265929 156788096 168912839 343352720 937933060 163015682 919488886 585053902 949733793 723654845 803585280 469765525 977424463 900839240 983181653 681084016 795029616 282934088 781536511 38344840 495328941 125844881 897574754 138151760 576876755 58849643 836860639 835073337 963771944 605062369 989110804 674189374 917151360 296462576 514972158 954945360 965770118 414655679 864600486 871146393 884750199 350906639 719913061 274923148 855187186 253587904 558040958 351413283 602640185 276481530 838540217 942504545 952736426 148634419 829216824 525170875 702599055 873508412 884281472 718099182 912132898 91808500 403353362 225831674 510387059 581173077 759836845 57025481 343419585 352501802 865686036 324791712 416552722 917711080 985352338 846809205 940101175 337474136 763210645 903679666 990947300 598244903 868626086 884743304 911452941 612609757 700958018 6840907 204352532 693817295 727908203 819363730 906338568 170222687 396683974 224013157 330189562 156818937 723638661 185346394 645214462 69392414 773011148 652756277 979438610 348976050 671966735 996797558 998972980 198674286 840224666 922111080 961076330 102672508 996948426 955950472 966231834 947077187 979708032 761481730 945537358 542024645 803944346 532323378 533826758 935345881 939339412 900479947 924906698 249611234 954370272 724562103 752062272 813428516 965665794 852349811 982343741 849841816 910778672 370313579 584485075 395075950 932496967 817524748 955464651 523451726 710676471 876102509 979163158 3798188 187290815 583773033 684223149 470138175 776057451 93177156 832451133 801004423 850383526 906855353 951774515 484001998 876314007 118456187 526399730 989620492 992704248 232707605 605390526 414650658 548643997 231158180 885039243 788933296 815320623 751935302 816015126 895480476 986251371 933876972 992985569 602201978 942811904 17869757 772773306 410508482 893790529 289353361 558914378 630961633 924791906 98040675 352221388 962087133 971005374 407010403 501621690 893151496 966348606 902933542 918194731 922500956 955229111 625248170 810731406 583982422 654270199 127404489 430041711 561190772 608734947 938328322 969735818 552755329 972295477 258064825 416932861 195267346 243137394 628690620 832395313 360400241 424839992 162607249 271199066 635384894 997911026 124306337 306709656 563745059 879393526 63529584 933528098 8595821 149124507 26416434 234479034 746633544 770186575 813368951 958531266 639970294 966065857 763010533 960952250 208388566 539899826 70248078 903170118 142542900 774828288 801792382 966545743 300257387 989897576 806418933 896250310 864783586 959475723 193880501 345263392 623942707 783875010 651828494 890611997 238340024 914138880 965878553 987333965 70651078 480844292 742525055 830560838 155927283 879588176 249504355 986025087 985539563 996027203 177465596 869472478 144885499 758281690 978322684 989549530 638854417 963676381 863139091 954155141 324350102 949637828 586551148 708088502 158796338 214043991 514740645 546267308 847078042 899050171 403939347 771644576 320247059 790217917 917289601 979686256 493394741 932193525 382529800 768143271 502220552 858407425 391434294 728003954 731431585 762849795 44719794 952363702 261341326 872786382 395518497 925963352 310568319 935072488 885920770 926357022 810935666 983667749 396174695 612906994 461893403 646954225 150841526 561329848 206558956 677758830 537446865 925734481 906115354 924004225 143080172 955690364 123728286 979780149 833539538 918245014 737146367 769057958 815607475 982346774 515082977 867986661 390235234 613851443 551007461 878132449 516538136 934113665 939007358 947759735 385269223 957376153 955828411 992607719 159395171 611568868 745590420 846457618 138526221 781328818 202718476 547770032 716961763 816899603 932773196 969095675 669103000 971552336 133595004 202370331 665223019 909113812 741874478 830095874 827716642 909603810 665943868 691121973 476307734 572208891 85767578 604178385 502683913 519632498 305200740 934859326 832454912 989110744 146821357 673369633 776307975 815271633 720546626 904592139 739992691 821193100 333160723 902810293 443562569 728319684 124920852 563297793 644440175 805172154 841018321 988323208 618691767 781881971 494221842 700454253 424171242 762097720 84932543 509632734 524445263 853489793 403388823 569977440 676097096 917829109 416519131 651123925 527691902 758647724 65311537 992129936 907514347 976172019 865587883 940123340 520725280 705725350 223444145 288223924 497515592 570257129 194678733 803203675 542534280 861095185 60689091 736397083 625050860 738650377 96741447 134001020 318772983 335435283 428315532 639255818 407427293 691726195 785408651 976402119 428779171 512044653 155152521 994619220 2030932 669144673 36927006 925250705 977574726 991747318 387898887 414163259 182964456 917952806 180201285 864483647 124725158 154272171 3982663 422045648 935120146 997617514 894104158 979196363 527690794 671947290 741989819 829690691 258186443 989126726 689205895 945085703 109189473 637581545 842836334 898453630 487728394 857497595 599754797 631446061 526801924 655522715 169864044 418245613 237269927 929170746 175322691 689015764 83838761 398027007 229545899 390055417 227568609 574309435 204194837 588509961 309833042 574892146 187151613 492287402 273788371 969278794 77198988 519214137 504575625 845541488 416528190 534072166 521396975 789192102 669146221 988964480 174066115 740247227 796799381 964631346 979639307 992001159 931933721 968294419 824119893 971997849 285350779 848719706 868750613 910344006 544853073 558210628 466881825 737647229 257095075 964863717 934577433 960581670 704420864 894554491 168256087 830681826 128043643 409688835 571849654 837101483 458599706 943326147 835160602 898804798 867947637 952360211 423792330 908593875 70219314 936305244 442168198 591588182 329234154 813403672 944981557 987243640 611614550 836465656 376866644 811063713 261174298 949489168 637787106 730390630 397763117 946743556 890514938 979815747 912158992 926881828 836123287 875762156 660492519 847756625 81436332 460339222 240884005 863544963 927150442 967554770 70629734 126855620 336513838 694439908 762777622 970602742 16422353 213444902 976572379 988723453 243917905 999348190 500272996 577166055 802290752 897813978 845789992 990446359 316923204 622679390 161885411 711396116 704399858 776469614 193965625 523931220 483842610 681565390 212372120 271239960 659701389 735355450 376209923 386253422 521759733 734511827 2084655 956158279 525117650 787587594 524882570 938668105 1675296 60062342 969186704 982697508 754466679 913697613 879499996 961132899 565449272 581628148 656397179 813998677 193747576 411865592 754943741 893083105 59205736 239148196 62566213 841180009 233565078 278449776 705873451 882248579 4063601 836740277 156425538 952191098 237090299 340590619 318418940 353837671 730449821 984565839 157070221 951019278 912291080 921756360 470640845 968695940 499315716 976710787 990124018 997265388 506702708 813623751 770752876 902244433 949344907 961465020 120187375 823399431 55898876 70150273 663773453 757456046 364883409 776104871 378282323 431094066 331420292 617388042 346122162 729687856 772038049 899382124 319536325 592380013 741458532 850437871 494192502 597473361 12398410 388413919 701411909 824468545 41315501 526548811 274182170 743940150 29500777 43066757 298139507 492638057 75082201 208234153 183669239 851748520 906386380 906999353 786438381 929225576 845500113 889968296 864622050 931829098 505348695 699938722 991648006 995333992 346580164 406343392 810860653 839153947 222491733 257485338 736610389 877490936 483515062 892019998 964647090 984090312 149321111 160396407 43252711 917927212 407763436 844244085 149417563 429034337 985081916 993418303 851989057 937714087 682639350 959923053 645366945 885924973 880269137 916628581 572144573 901472734 482519135 645116298 879660851 952746356 687746365 757118928 610418298 706183189 537533605 831461962 239491428 833564050 456715284 975137895 239119119 322479969 872092196 972375621 884937019 918558486 769368157 918352573 272502542 499488693 124176878 177009221 378237395 628957321 261407202 685245028 257642513 941832690 498034595 853066098 627975881 909091732 716872665 778187023 276167205 902064678 895865245 971101678 862301125 884103577 768855716 957778361 136849457 799102297 938395528 939215786 666933494 823394080 538700855 750583657 557227313 707478857 393847379 780196865 796973413 913534682 801968475 995264086 25868158 567611598 474135168 748857706 72581664 529476822 71442423 711515242 378592628 441938335 99867377 106115066 695817896 932804760 30847983 899340514 561942604 993994728 54897057 506699954 715031413 948375872 282744504 619746319 152404998 435494837 675861460 872384253 661975772 671593052 323522315 878406529 770955111 790634383 624062558 675782262 881379994 923919489 185244188 203813230 218328570 716689418 253101898 527647869 331129624 590421801 755063115 969136508 719554497 846069221 765795005 971823967 599185952 987081596 8406485 873862827 509045848 843321705 273469607 946022030 704646933 838778278 853162990 925357794 170425965 246349468 16839316 794623436 602557773 892910637 665460834 713579578 904798118 987473271 857309828 900405474 774590722 917104891 655139190 668184637 344881319 574877305 282648894 531785775 961286020 999190378 731791979 911195426 269841901 360129737 221699719 848190045 353340565 892453778 753511977 854203586 109077926 989204814 351143747 871206780 546940682 838540138 39644922 235614272 146252701 674005420 312475438 843490360 637304854 983308889 237112036 376011034 48412777 318617086 18213536 226083136 114386876 467627872 501103623 573366843 54750883 361722051 57775184 325589017 48614674 958304775 21063997 540787452 751807844 755277259 810071264 968003068 835464314 891309104 383918194 923058338 397704751 484690494 777585931 874003872 951648231 955908451 642425227 974028821 584045651 663658828 11185381 432085985 292543192 977773394 299732718 755090413 246905126 802810209 209164977 569243043 209269254 407216655 46544099 848704063 357178164 971388137 389475917 562357513 245990532 992693599 26263028 949903147 299936709 438277738 640874760 977413904 898892825 952101533 402060535 587702896 645225926 988915798 217472320 369752061 201265480 761470283 303647042 718524611 913614388 932464489 413870165 713433807 430879181 901029560 804182529 975679273 896092063 896914359 680448569 717763662 282290378 503008583 828296548 869998680 856452942 876551121 911295896 935128242 940227822 946877815 210844368 980464070 114544239 969627524 274806723 460578890 829239780 965694180 578566682 904470762 614308785 643656579 207102673 822689368 176432463 672831312 835451435 992637471 851637828 984671165 705475075 866407916 474344463 870099256 248918099 276535957 440480588 995397418 936523335 957143465 673746022 692729879 194361132 621540858 193561538 245819626 595733333 689138325 151121507 415589703 718783490 839721261 821257271 913939376 579660296 848351808 328940213 551620404 842667625 881067077 36662104 108643736 423484931 810313380 719366889 873875973 891399813 922073173 84335427 958627786 179682889 921789830 610547062 738291893 253677075 650814603 526384031 705791749 990007580 992847364 580334636 833687707 132022437 465246178 977254380 996786162 97608242 205814130 604052725 664925941 243287474 935892377 820148467 860492447 621530422 742165673 126203904 218133421 191290105 917751435 460011769 771208746 806803023 981773500 294823669 473927518 380327615 903968273 541789387 584162556 160065463 482518676 919549589 987234185 803315357 969831744 953431500 955204901 635310148 701576032 392315031 465176860 480639703 555341550 964816082 974045930 586079334 924964992 550284997 935872607 844113662 964458277 159906990 944417172 687752412 711156831 479508684 988603730 448604044 853020046 265893881 400479725 868980443 949780450 454802878 744404207 426838348 534865849 788934551 927859825 417898638 588365550 987275632 995718905 822562438 942106204 917306771 923257904 573956646 800379296 475416277 479202479 118566340 997170210 431887292 778789735 490315166 585618778 150365914 625055840 238080683 380682227 686292378 806787356 392158596 976693714 748430113 940144576 523850160 747733993 785047647 852231076 418277501 611015597 524427144 874578293 697033090 826818220 863811107 892338903 124095081 288645397 866201604 993748680 688535033 692924837 754425803 963202340 265481611 324348477 712338848 964802635 105273244 962382347 122794568 495622993 735172512 846702017 22607728 675254778 972018544 977679073 428182361 472343905 679798710 821487200 453135875 648662214 917074992 954390160 381223105 421244390 831393629 831603532 232682643 813336518 618906828 811800967 687313478 742682816 533612082 542229310 998944159 999091876 311542053 544224143 649484075 950582794 382494473 910856475 138668087 849667635 726099947 781110198 931773005 978369389 458972982 831046065 692458276 933370358 458722954 962721483 777880936 907760566 138473442 739511959 634257644 655637889 312434171 578806414 532044769 917875920 858850364 981608696 120464862 249136702 602862026 818357581 720950259 762639108 829560293 969529493 404945695 434791588 766862442 782858970 235939643 696936742 850519134 886578891 784889137 930348208 76901757 305305428 220654757 707967786 641421617 692738021 946312278 974327826 831446518 923789721 425095583 630434306 781224423 817078749 408769799 415537252 599336906 977664142 308997330 892190831 372611626 593067410 479908391 754754609 767093908 920879086 344590295 620774777 427813695 700126206 440410732 628687324 889185568 949976879 144771844 925668989 251033612 778663190 830588732 997434593 606086443 818778136 794693726 898846031 236242270 244667586 169264009 463457740 434640278 637298327 460791875 990250831 670700535 805596974 449958031 804062874 692898040 968811252 599115326 943809369 869802385 925561149 464223782 889341915 865779073 926850619 739527929 983278230 681999979 750427951 74683674 356340444 745556550 863390756 508276854 755964453 67835799 643056948 446439906 726141771 706135190 918476937 899941523 904598410 13962402 713489655 509865609 670558628 859690596 904925007 407355250 460324859 612388799 752764308 145474656 436501450 194359533 508566302 998742330 998966302 98043263 844427900 529212529 767686510 515019247 948493204 695590699 708121116 603079769 873816447 363199915 855187704 799603575 948159003 282493824 954938103 278036958 602629641 414096099 680320425 831554864 995275476 719656765 795336883 43355193 585004703 485480383 881986799 771261498 894397057 399707687 906406463 347953456 776251737 877513997 911910411 962882735 974925094 311571433 417508835 52439451 238569175 173922357 828313343 781764335 831974616 143863445 856166698 691178652 980295723 703793805 992141796 402971480 917432165 164579798 968152917 620359 376036762 305046765 738292217 48547711 814072123 534474786 688216908 684676021 864456559 225910630 896971602 450827766 713662616 271770300 904386468 68980338 266664986 707631714 904182160 161015740 917697601 258000017 949373278 621231291 912081162 142113249 432876237 889685545 974788304 716722237 976909774 798758260 964157895 574897667 675448918 626909526 987170249 471560641 747467749 319868735 813759756 491617179 500755097 520307319 716412132 858153056 886236416 685501651 689154327 660528202 661985690 854845655 981424906 374867439 636817482 268370361 692801634 634423657 937750015 156270929 434688248 610233894 814706312 784151345 830202866 575843543 723012149 268171900 613466591 407924035 478281988 525788198 977869992 404697837 424623050 537227652 819883418 335602777 593792895 317957998 991956990 64926228 734063387 934885994 954737084 133577852 701309877 814234012 927337358 730347871 851071863 406664597 626616805 641477639 892285042 489752871 688129879 33095125 136448731 456604919 771704022 390412309 745696601 117168847 236146375 878072832 987949191 861193453 897543086 874128367 941827519 751770143 763029519 174695781 453422873 933802731 963807333 885049002 952033764 319561297 775883397 193573002 315787810 497410396 772081850 659901270 789025089 296005398 569841716 736628781 976276699 203152747 818897510 326089966 687688422 832195632 928654851 698557761 918393185 189313435 973806711 684870344 854979796 24164600 434322053 452154983 969722385 646503564 758707462 914236541 931844021 186938609 375441610 567268969 976590109 364396364 870281453 313273713 482838570 383786463 434881010 139608169 671865726 569721311 819989274 68293510 417486115 190945739 617799910 204766797 477051458 447825902 946027344 187083773 243514962 339981421 803858237 708965885 719262397 279903394 767844398 427051314 525686130 599076922 875493150 11415271 631164726 816450359 916886253 541173158 794875373 497740535 524665842 227871914 878537854 547654041 661854778 761983176 967103485 294071095 759745444 178988096 578621810 14119233 555301382 179982191 451156830 498870990 972364985 842042568 969988504 419348442 571876092 207280088 622148233 137738517 475312506 807405783 817950358 533630890 849694065 63296015 233884971 815590664 881380931 900027717 986534249 596081084 956477977 307330980 973759428 804733356 817674573 807402878 888530311 49997056 108257860 255559082 801445470 959890547 980936689 447598479 511039672 374287221 436647218 237322796 779483417 281419861 846724461 712293501 827375883 415013142 500055109 717502062 995917338 147813156 468396437 167249781 306122940 56530378 161921730 230487027 461465167 628895812 633929438 575540000 832881325 989023874 996981736 503140887 749029528 789199629 905573386 103310224 670541274 161951613 954747882 520490403 815434976 786682440 914979170 34371982 645238547 636965246 734504821 172019293 698199140 771519913 878311620 26867910 723590344 794761451 810029468 28015430 107886638 711925007 970001801 727103763 875322751 377255860 916365373 56540420 967938055 124546614 334651456 348223916 723565255 67189674 850830112 296716256 860199157 566798932 601233774 74009387 500837974 949026636 951237502 763748393 893912389 434382242 995065389 350753242 886334778 730660126 736777115 567433407 938050015 631673346 759446428 822501832 932419580 289243626 429875368 975407910 994049952 181601556 998421036 635349642 814890695 822896669 883771553 946856027 998295336 909412784 996689075 381060189 695377911 240937404 934523872 658668835 724951396 740207453 756892066 53032211 995574365 784486828 935339116 545484048 987902638 868266150 881204041 570543823 911396855 528693453 687925907 34025624 238140169 304727132 610018544 397301266 926856287 261697784 892573019 614447416 832371914 36119088 423678465 122915038 270872764 647766078 771593682 535808797 859783658 730413482 917322691 130250491 411482535 989510242 994854333 587683397 717945979 280645248 782206548 680243365 780747873 29200363 617344964 651814739 989322376 835677937 901575622 138842689 488670380 929820508 953291401 932271871 938143664 94180264 661975791 671815297 892899277 557092813 612517837 200486329 633181212 828338052 935030493 680553484 703141928 461629610 923340932 887233095 999174123 26715671 849478282 123956625 311429851 662387865 782758876 630670338 656891466 815033102 840335882 398346287 535603189 534890167 641904672 19745600 654947686 908888756 935348609 653800672 966880520 391894758 813008349 741462685 815014262 147959520 488056073 654082258 721953943 901950032 912281780 387351295 527027474 396332017 523237400 176949145 992639962 731428603 870778404 478423906 682421287 666877454 883637707 283975505 510092569 568901830 708919040 765681995 804683166 815240559 987428741 535310845 943554510 208397528 330995738 59258786 912836595 286857761 497492216 604042439 879057477 683298665 915542050 567385340 581329438 185008003 970056661 261841396 405708372 8357261 599960362 216352219 698460433 442995564 723461502 397754062 582319465 258320476 931557807 820430206 971585271 185648092 802271447 202343405 967953856 648642396 916925741 641600330 839845866 926622147 986490254 947163910 981309932 163603136 333605336 877096599 893008102 315889443 597360938 188549698 895283053 885976955 895461717 867378490 977088269 269338628 501865397 526468039 836377903 156803015 420158561 995361303 997140305 799855759 992793850 416269905 730929191 364082806 419526631 364902975 733270905 217428282 584960682 150902556 428649590 574606401 893862057 778609311 792063108 771881757 848718201 996828998 997947643 857789620 966296744 463473928 968455406 334635594 367456853 877647679 888179590 357186197 463023117 885025009 950795711 42054651 808065704 893557716 919888081 684331988 882572753 841731953 865380406 723990595 767527478 576737656 761585835 333650071 440895606 14525330 743627656 479211121 968685703 412988 602691794 484979180 647858852 422192125 737440229 818827521 914766141 265908966 856843074 939560393 958726319 291625792 637679925 551738835 981312942 106621050 184610902 297790193 945241004 173560178 269921268 322184849 488964926 543001376 895759101 177769719 362816596 237319870 334398871 159038465 672489519 182470587 572471773 860591329 913820774 114487566 598751687 924083265 938099574 746332529 889695297 983833163 995267382 820196989 897434604 794206011 930933588 366559660 725243921 841918610 983432492 844715509 917822544 227940951 271432290 700364139 725578915 629212848 691907520 696070049 849492766 125220585 772546516 996891077 998070102 480361837 795529191 859787185 897004391 888787450 940700636 219811718 264443209 618305050 856574242 826572593 875295141 573224231 584598653 427998544 997443177 798994660 805644450 213866354 349819141 578667982 917539195 430315455 910792805 873750814 886947285 486447071 569206596 585598138 734403299 637160846 904822821 529412413 856703751 851680979 992554079 362888624 975564963 431649377 910186969 17004262 986698907 667993212 870955177 320883103 693190099 455347489 477861837 824564694 951822357 5291683 149556820 155029151 846262036 179652384 631662169 911847609 994546082 239758235 570704321 748930433 770576250 163827655 618509567 984585101 985674446 260059319 625499270 837345894 874125859 663874702 948895213 745070277 857737747 546126149 583247630 985105648 990781995 958424724 994739907 99620519 341952933 722807982 899578339 76881400 536512270 514892823 758576318 517475800 580625354 957050331 995131787 773014325 842188897 173851598 696379168 808639563 978043684 651870269 769304809 800549403 982677290 862815893 870487633 71457759 303466191 189203701 410232925 724032748 825150675 56625796 116572478 992016236 993997671 878998498 915823313 47203244 304103660 301670397 930974691 109084412 596399557 276388291 675378733 792107077 942112123 203791713 923374938 430606519 886039494 537880868 785092226 266457350 427405278 288458063 421189510 130198331 955688323 428424022 629489106 549362017 633222659 144134420 646931236 996042083 997984353 598796502 805713350 436674690 625462440 349256367 400535389 740310324 980786567 915971098 956393420 229199473 884958625 232230056 383990130 59405887 732313528 62589677 309041012 268651694 708110879 474896460 587677139 19097066 901521533 937833567 965554217 383287147 648502954 421896259 487993006 184109741 781205353 470191641 716668633 798839497 876831086 756056452 818248584 984900620 995468261 192025944 582563993 238975123 815227534 34293860 453242757 340896586 731367660 403544840 511182376 90180236 111481679 927043379 986964449 399816806 698918873 536420641 959690140 653902259 689805395 455292296 658681160 347519687 878451309 418592458 682160443 762948664 952073347 459214500 811897583 256670080 423952647 425626903 747512968 208703614 969084992 752175968 889191440 859620522 920737115 197234531 558422107 464486687 960543553 533552658 804786021 592062279 931990150 346002486 868117436 285944688 489964852 802716141 983964973 73571363 804403750 489776404 863447619 942546547 980667718 767494388 863834141 195064732 265461685 40449913 859714961 484152248 921150705 827562105 874747443 37960813 191190684 936264455 998369385 598558605 679127903 581006868 698827809 100053195 150307679 202351842 971229677 245543146 335314500 356721840 473004695 889956848 975825667 20702989 610970933 86206176 655348900 645595893 923424711 252808392 469874528 838548197 935708189 377847774 382553651 670198814 777437612 857215465 921230089 742541322 786015240 770071269 898953100 910282542 983764122 552669658 695301953 435508630 989711145 308513754 806554316 420776743 627049890 139110564 689724473 883923289 887933343 484478435 729967506 187527160 524554037 438348626 502319720 40854350 526479073 947349161 953784310 746736595 787166741 42056568 801572601 114894963 445586498 560345789 763101309 475214170 483538747 577937942 651541321 393557550 488208577 823339600 996540504 352524920 721053723 37839125 856821478 183744348 848565058 299813861 781174466 924502512 926677403 716402885 790294030 940240378 941992941 840463306 904137384 114625981 258784811 395582003 427416444 905895291 968772909 581504737 783119920 646104159 818979051 954826910 990397779 369171805 491963314 782792799 918364460 263972418 350682655 710599165 915612409 988069762 998147254 726200095 779469069 597676250 885246942 953716878 986854413 917895950 961429089 201139870 965541286 44108332 214692586 47659784 888445327 855472663 924948856 558706131 839960709 426476528 728632336 177089519 317079081 430663767 494883922 959607574 971720548 670235980 724623050 378481141 844138936 386287857 989647352 575876516 687702807 261129804 793232933 724104130 942115790 750959845 755465860 74452442 219429433 916127798 947090631 47081691 58510090 653949100 974434461 85070308 862402645 327613517 605639350 157137660 204477149 607382005 814861180 625675924 772221380 957346734 991827885 947422276 961355930 362070741 682136046 202309018 704927868 343206508 442704165 926668452 944688834 142243846 577563646 517068179 943988348 400321890 911843515 918900314 933531658 659770957 707482244 494012745 501403506 616419498 637825406 340629441 749295408 63438078 296984459 234554732 343229206 786805866 896807072 555422098 594764454 454463893 705910606 420430752 755031350 24587457 35620188 776189032 899075703 720505637 784955306 813704763 989783655 321698964 537629612 268580074 596049098 411395576 890257339 413682171 817212063 546445205 920438851 235981417 882407454 85345409 930813803 197481624 623473717 843496301 861628483 92763664 871983152 270724587 814556161 673458276 750438774 972207352 991476304 348234514 620799522 217340625 623419395 868772610 968495765 23402156 811095242 296376763 926509728 512935603 748676656 257985191 852787092 644504347 834591373 281324735 931910516 806242734 839935585 111953121 715017104 497676171 498499006 180854761 198710411 535665246 748860264 901212966 964404542 8355924 753793373 480646146 487415468 641690695 842571172 749581352 988674838 974781467 980358750 203291809 819642645 639892981 971310468 79387254 88420288 148246710 888309435 952356777 990530403 876554769 892021260 303896897 837099541 546805625 906370068 795401256 911213286 872773805 933449620 87040215 767078070 691162244 855146097 740788686 841400383 860801997 913131736 234578890 461570705 980022739 982974300 151382671 428505286 297693662 536533886 104844500 320027270 42958804 426620437 422102095 618771445 655350760 704556350 306706505 702102269 640848153 891900027 509271401 532222790 725019169 825007426 68002606 907510334 182614715 304841680 704028060 973052967 156343517 385392407 728156801 976094723 218282170 658277675 431497042 743493134 729534084 789797468 552044133 988319429 901671515 970188993 266114125 747956373 483114448 771150810 693022413 892188016 658447976 693822227 567690362 827823335 222374083 348202536 953276155 973976870 176935463 785427386 813926739 870164642 48997905 681631599 45502955 269853688 513159083 846651631 812291693 864895525 860019816 958683931 242012701 420761091 971153893 971842326 973364287 976444022 196471197 237412381 728801636 846903487 27589936 399226808 558956119 586671791 19096916 940441184 926162411 960731433 140038268 182166260 193584332 843423440 325084894 695412723 93598597 211699527 981458885 998149777 188728610 755910244 672668502 901838293 442832624 815894816 509452110 677748559 807218101 915403128 868196214 868428248 562276213 817022769 578108618 751454973 485368659 915973463 956823679 966471191 307760459 831820301 90288945 774915090 597022422 815479307 325321060 804683541 220442105 240104950 91242348 276262474 716575663 815161550 689875157 722373392 70842998 427794782 972593460 992722212 714316880 909972250 624501921 887089239 864669502 959698860 631184603 734766503 68010788 95001980 955956425 961908489 964302851 982771899 96036582 454318812 777485642 825113379 238749988 627567213 454987326 471331611 110433681 767426617 528888438 607298489 16626133 493505181 350330518 725162475 351358727 872774948 310485213 497489918 685732696 915292495 580615688 669981539 423477178 868504586 957269663 982968026 509642560 666883245 243969387 377212162 658280646 795822567 974836873 982341100 605110873 692751078 51368854 240097692 126261731 460058514 246487509 819842933 420523105 586647256 924593877 942184205 167569771 828585871 353176406 414854589 628441585 773371330 919826064 926706073 779880978 959532897 77761108 561967021 126146829 932265726 233222261 693069238 619013819 702493283 69005227 74097838 836780844 905244217 127842626 980693556 425013811 790321236 63974975 145140322 486267227 847870204 869537545 964640834 158473064 702570517 258191286 647963888 462270468 614607870 474189795 601986940 207210488 345360468 156957049 611127227 135910619 854730633 593812790 989733161 922539998 938718857 847926137 970457454 326382893 399195452 799788018 929390379 851871330 996120485 602982873 835038024 240326056 392395437 509048002 716825127 305456956 505242338 970391056 994717179 926511428 992616399 681435954 774778414 983835920 991523976 407533430 460454452 888992631 989920101 81204157 567369028 241645934 853174342 604571851 853645249 564496095 623900634 102906812 228460624 859370936 885346157 373336357 909927002 255101900 545814216 558971047 630241196 218307298 631918729 412131445 507178628 453461458 571501754 679591722 820254543 657570667 877671652 687540220 747567368 667036333 798405245 177820983 532013122 304781963 535833813 660500880 777201433 203219157 394520221 380053454 925807429 746268021 835154079 941342014 988058983 468371857 536419611 824694554 937315205 520655337 782064462 213603753 847889364 454638524 795631293 819229563 938651167 877158455 926733968 279764683 411893074 468407015 491639223 904114249 936660327 502311284 702339858 90379250 116743846 65705746 418954180 92309633 995645293 388257753 777562951 247750537 794600742 517545377 652584660 843106815 871867093 48616142 198598467 286735574 724674320 658035355 956649838 726122256 928805400 290962264 906641199 936965042 990842585 138736271 396953667 708645644 986383782 163788734 558164428 878641353 996013441 95384495 184467949 472102715 628655703 383250076 566012235 278647327 994537893 903138366 926381780 451128478 482803266 674087434 912991524 763857805 826498238 879600465 890864926 766897894 830469830 174342145 716602158 452813982 687125323 836596552 889338471 208741056 512655720 682696514 710206110 345266455 744858674 327912115 726129255 577064648 850145226 429696764 908319613 171042886 741453087 270939903 987772900 567846189 784918931 961479308 986515893 946962131 996954714 298666755 337154194 795280964 975739681 916042025 971752386 540269091 875923299 466534556 690498463 956819863 993824832 740507370 892271183 435440864 601659452 797697643 994838201 815154081 834588934 846152150 978689178 291991739 969744802 325206138 358139049 115035087 887636517 120355816 235657085 920457850 943640945 685236563 757919646 216206166 851663322 634704094 924336710 949206235 959589409 558456960 839191072 674517346 966528093 110166639 710548604 60158471 634780412 959214314 978512178 420035363 436905655 61467982 675601184 388451979 604744648 615328541 848583844 233564805 911866154 330168658 467668188 628160146 988254545 470070613 705058459 53841979 328965615 660356417 755653256 657817711 966809412 327137423 435727334 450837890 639818025 709338684 824376730 556188685 878749092 21882023 705189520 509499497 816454803 555908596 898199070 157036120 177566591 352695946 635993897 629078474 642789726 487503912 748761005 817707485 903777516 320456315 848807277 45279532 96377399 245949433 552548532 944916691 962922548 698794679 786258501 485909471 926465528 696092686 943428629 886965473 919947191 713661272 996093914 159023632 641447222 645760055 993117105 88983292 652111621 591380021 663410294 847263887 952322966 712067686 887181352 680031698 993097300 628759184 771862839 520293448 772123418 862470836 986550080 899112977 953779842 193693539 496343158 555190938 573186824 43250459 985457804 818208296 967593760 839043160 883043474 914011374 951117870 797245 698078653 125541880 549266817 267018763 368443124 55993575 290234806 192415735 650191732 394512961 885207936 262749148 675528680 682964822 684286314 23490627 171621208 729905218 786590644 251305781 550993789 146506747 695094106 554227687 916914393 336003233 875801647 52323425 849175033 431709528 495730704 781757788 988292648 690531539 920432597 944975983 953356253 203375882 687127087 489763846 588455741 24992750 300620055 96584379 978491067 113307808 294735792 564888858 701834644 123435299 336685809 545139230 615891193 642257352 853241527 580811425 800817045 504033260 998103660 388411796 727755680 788689338 906994845 394443448 430300617 183039061 472486658 365953660 937633163 241933233 446775470 398731280 887116437 577793947 828022110 245212401 697508618 448420188 951774666 433139307 810768099 112404630 761647806 517736675 902642469 841098676 889783203 821561740 847369254 838965570 861483792 602807702 715439460 399584750 924749262 977470686 981064042 145388266 892011406 814487852 873729989 950103045 962091250 237104099 559746128 332596228 646379267 931038407 944564082 295269391 882114075 600610925 920931028 893811213 946420150 955514929 990208584 318710300 440468625 197690055 399615093 320661302 459608621 409319160 824997764 982512060 983364424 771046603 855489710 309098672 529481630 49078417 299227777 860412995 931206420 780387073 953825682 187493981 410447050 707177469 729161889 128278489 875989795 144180324 871960609 382209235 828894211 678224966 788831442 356646256 558019569 412668312 625297710 84526165 433454695 599382531 710585235 593024702 955608441 957387157 977032932 261540919 628291587 81605398 485963186 488442725 509783583 952184611 956886690 279022855 748786919 785159043 918803780 173370733 377088459 764191820 962156801 399167352 476973601 113492506 544132713 289315860 665074226 65272197 333607042 840301297 996427286 208145685 736270039 19905964 332087674 42345253 553515736 66186074 878354507 965649637 981078877 777635041 916126837 172217357 371389223 957531818 980750972 264403073 941122104 775798783 884465654 711086664 778281690 401311113 432020218 876667514 939353344 980897585 983901910 17080953 361095325 481327386 794153899 790665105 810074623 128697212 746394301 830498485 987077122 419230261 595465411 664012310 816294489 114812801 143562093 851120162 936074292 846473604 959984763 989756346 995013950 141343027 760336033 676089210 705372503 111800092 857856970 395292873 985108196 262459273 643327843 387272281 582353269 851157947 939106754 337049544 561945339 625106287 738837952 486618203 705233938 555864974 744484440 898657967 901044472 279491243 617511900 443758143 766192311 629035235 825230785 167462760 878737748 484872585 559376244 281314745 615548357 932029387 990852384 913070776 972762939 267354141 884227782 14807876 497099052 763604807 781009810 857157797 977970644 540798648 775310674 2497120 37645639 864564881 928745562 815675848 940984833 272604374 671518276 211172655 710973479 788055945 940864328 185304711 256885900 774211552 818820299 842123467 936597534 829319191 968030651 473618157 935951423 853285635 907876271 53701118 172014609 683307363 988783470 399221312 567444789 973141097 983121590 232989056 436384823 510399529 933839062 984888692 985831850 676162594 902453986 605262738 760827609 531678473 565393828 648152555 843352559 389984394 948504979 391662139 796465567 448054185 538623855 729747776 772997389 198442293 387397869 451350413 463899723 54781931 599436869 726927745 971550037 83637485 597372517 399951250 489992949 425913569 936343759 487829241 693995873 665561383 677471794 46844482 122186054 382509288 918098511 865732621 966415515 385939268 442995634 222712201 723307168 698616806 923272171 231928970 319086158 596803828 852477456 270264161 811166301 677584728 827688169 744601156 788209039 513074639 656874986 910048364 956845335 630205496 735072769 868902713 874368597 568644706 688489740 43337274 807580169 472600412 835160036 231601485 916883736 986216714 996522653 242409013 242830877 97353021 394553185 441533559 617742665 831178007 950689957 79886448 393133566 497994143 498314570 522918285 541766356 237267784 544613587 796899013 908315142 6432677 841109333 215302103 869379639 232977027 732593732 81089856 593608950 675195980 759365896 599890041 928915399 786916475 822818932 533320773 581751636 927409651 947077192 904342909 913685218 684579823 735962125 812204211 937251902 208564147 775602159 752557195 801094755 575413988 746214065 992016020 992258996 929363763 975124000 118612603 201961391 137205986 426264696 77019759 706292562 853313437 931034284 499548057 745892745 971030882 998787506 65790522 550540008 376200484 701142736 289051760 791669094 166387038 851796460 391754759 766483955 921705560 961855628 887469324 937031527 887712281 921515951 384382521 544111100 972687800 980725403 752598231 889402108 972448288 986845250 887554424 949420338 134942378 861546428 74410170 444317133 985477927 999173097 661395241 849000445 485218566 867649868 715836108 943415632 916975265 955072628 696126546 972558193 725833357 855319405 49646828 934802514 25740153 302781013 307580274 707634011 349308827 709177509 283591127 431956823 846926316 920102252 749595368 851080691 604601458 661695060 581655778 945101183 928271290 931449555 85254115 278785555 584319735 652425816 560065935 671047028 281825353 701139909 365836201 512045555 904866928 916884329 928298131 985646706 636084928 643064838 89080127 119792573 691994686 770341732 124918332 842762223 591275488 654339188 246153638 984015200 802992876 895836482 864012432 871989296 649711774 998179020 174238639 892058655 356804547 935295499 446164712 763292858 436703545 437762234 157154807 468540858 743749988 749500253 461857781 786792024 881311692 971082676 314878193 418725555 905607234 965128468 29024749 783540079 390930646 704338078 856351276 972607523 547321702 552789271 228661383 664833821 964946052 965721417 711632677 963742422 529632334 561733461 677192664 764959064 77897713 260575590 844952662 969813308 76011326 159243713 936239583 988742666 185254818 414788006 499479624 996328404 305992716 571947380 92726158 497915103 414600109 774719825 825071500 882175809 709047774 923139124 83115596 792170077 971183130 974652538 983754159 991053703 682562512 907785335 443098849 472093001 873913969 948918302 134882274 666173680 910101324 922097740 868483771 894510647 465657118 896071132 221999391 408230794 915230632 985244472 319141749 804021021 905831785 915134238 848959667 976573703 353225200 988815690 367992350 552754787 560963774 930594924 372801665 909696564 475888993 530165769 769861160 774132718 779612261 845212699 538960396 940689961 659429170 797915273 714106033 885856792 943618910 954551638 848419551 933959755 675399535 908411744 911297497 963045844 331134822 935609567 525175319 740698720 411932396 936300680 919035191 940312724 946856300 970737079 545533701 849448321 8513216 799118108 668574687 981520492 849990074 887207251 387488482 578550613 485761745 764337513 572090403 717707030 348343627 766026628 109739274 990521086 320285117 666986786 716838084 839976593 337220927 963193220 567402917 823223782 291680824 324271942 454530486 582030032 761170537 807239295 227694921 957861461 914849232 974408897 428169817 509985619 73862816 896651963 463655844 885889636 823082336 913188949 778753885 906116815 154858021 566758184 427658186 655836607 646822107 649228437 139688685 506257915 772475787 783231352 911597797 930688670 11353388 359442815 458289766 560854795 809191974 971124354 93263693 96042980 256864626 490179782 308274278 498322197 64076538 440268938 697670252 852953286 502722585 643702797 836909949 968606883 19233692 543934361 127316 547737934 282122617 619217321 844992491 950760929 655854459 900581455 272063182 673386056 528912223 794332436 607423565 780405500 445516236 783890082 12652137 957909955 815320200 983659582 532148671 574231803 957674050 997183952 753512579 816294063 284668676 538573933 725886338 869566144 463832040 783806783 805159395 926825282 991271050 995804694 131812190 426122277 962805001 990159845 758189127 804179856 919689156 943625249 639979126 906859973 971819766 984151036 911243409 931362939 636436594 786465933 321119474 961732038 997595066 998903287 420264703 451203049 481624106 674398632 60735212 646072921 422818123 965345452 95501504 789663593 246808128 648580580 135250492 439752828 787422255 842162020 426403973 612851923 560314031 921930069 300964460 686665574 349150430 576488885 661046923 893929462 90439220 819846432 756760554 948139213 267821742 535070446 312622073 940096683 393575354 640866914 533226996 838208524 266961064 735548186 288079865 289623430 745587454 815444350 669406384 925662190 294019291 587321872 100848559 954489061 628917847 698219322 769590194 971576357 697535063 814224936 499463557 600194170 710678267 856937030 557985274 771241966 664485656 689134734 786260301 986986058 560152526 717080950 734165287 735259276 802976873 949486280 384045099 887765649 222127317 813434206 981171128 988446827 639017056 777693767 273631853 355439600 985615170 997501753 970698552 986554451 246853274 629007523 814206924 891483840 189682220 592166320 343990091 345056962 164851574 517752130 844447026 985180510 52827000 466871842 596770111 896667731 888106219 947935960 653054146 861219688 889656764 939673465 986616984 997455643 484265465 504465329 695093277 726809178 542789546 599967933 585934744 622419894 236036529 959342937 518305897 557414527 403843536 869707239 49864113 911230304 50520216 977135453 198583508 458679091 354908138 366746194 594036385 836215304 684179871 870718686 623251662 852719432 737825068 761179961 501898125 900529846 199280450 665395166 602241293 801344386 775408456 849331401 604170989 732040477 256620100 572781048 794522354 873305858 28401033 470096558 454877919 995784072 345136317 766134683 434054771 447190468 916023729 919461970 365606799 543279406 419347565 895811695 920472169 964587710 793307861 985766513 858828001 872031793 512744287 656554284 157628628 354102548 480876373 894623966 43643112 948474782 303819151 550607755 300030396 900574348 927712651 967226501 913200757 915573210 149160754 235160317 957819201 963517437 784675868 858956918 621574726 872986433 518967590 575701928 261184740 957474421 132361390 301776584 252956170 801002591 779800518 787707296 410143064 616269213 359820196 630117428 710398336 853047180 645191038 675616800 640575662 862750273 162096146 729847305 525539839 981509832 604739580 726013792 710482460 716041969 125097577 635243783 854350130 984080765 792645270 947471745 448250498 538619249 437520562 509466095 755278998 828849404 177256202 256981908 719834381 798392963 507931416 770906835 665423019 939179824 849494456 885698103 135441303 831021282 252829394 571935146 838089377 850918896 249433578 929262245 208403549 639958743 308404287 472968399 578275688 706103681 38218368 930170025 992418230 994759743 454835424 710972106 652638456 973077332 103074400 237849503 66665153 685141836 731703708 761949128 31262594 576120467 247470710 947822043 648273367 870165859 271482240 493901372 105519340 250475316 303694893 898738239 616704116 739570650 136919176 235045896 222259131 940632741 816720156 866789379 542283379 563413745 362405777 986561185 423243433 985577036 187163565 811275709 965440260 992620581 989513409 990584515 120323876 796152177 137977004 988231138 136338005 689185731 112381407 669744428 680367596 704718466 73401914 835458180 37467888 718345977 104210046 801791105 974586488 998619802 391512435 639049994 946405422 962573577 660215441 845594445 641510791 864601243 247270439 939960488 39206020 681890257 960871328 983787551 112231490 883092037 839405328 907092186 608642299 664740836 670769360 688684496 573879769 792932574 437525250 478690925 60909707 648028890 87680153 795815161 387530670 744319083 745894221 797132695 282368585 972364430 68674147 127242782 403500817 961240477 428433405 825527837 785919152 900446653 353627681 836449140 280496278 925324096 976900927 996395699 317638232 444690631 179093966 787392211 507165639 618586114 804264087 931007046 281759331 470833212 224643551 611346213 889107238 909484179 891724044 921321903 434624116 512377612 23620701 120024087 485790512 920325119 198443196 384330941 930071258 958764831 639722123 940029078 18478191 674841760 34686503 92917538 759831586 926218175 129111932 939868376 861440895 960041527 243732299 256341711 327309033 554554536 506070458 944080534 666565936 761093060 105352354 969898205 769761170 934552053 861664897 912100074 885188607 973439038 852686004 890498588 568091216 936050531 260131856 501134650 753354369 914953739 450883517 967702237 100278195 541887446 264062967 354588036 478474726 584374919 439549981 808716675 263233739 518052511 732393272 795307862 457912762 825237240 874792861 978721888 513308201 988023435 583679441 831247402 921222001 971569500 594054203 878354033 614219847 820424446 140583118 377319173 838400339 905103826 739249238 872909037 410539527 989818338 865981997 999346454 646721167 841563589 854712773 888284931 465108804 522141534 48192931 601148932 819768324 856565673 821861550 908050371 117096642 837518976 16168581 768686763 224519396 936866014 559203491 687463306 600110874 741728521 158836095 406939889 460027070 837664256 844705860 860766845 468640086 522704911 776018294 933298503 419529017 713292194 84593815 867612021 293188599 612747651 419266574 630099910 239807128 967174578 698319764 850793155 409017479 734412023 72602571 259539566 136205059 760568107 430571868 789575760 28233802 692248215 540312870 611378401 685254611 961848566 596827418 787841307 539891534 816333341 102256246 686196626 898429781 939506018 685598373 706031509 284635844 688487896 554038235 582279355 207833351 253842515 321508949 970229721 943701450 966144309 268922591 827384493 143942378 809242057 813667614 832331495 278404238 575848498 344523864 769368874 511112161 791414416 859957764 881740171 132945526 516044874 921164564 988857977 259338307 477006348 766586194 855758410 115372177 202953154 947659565 992921862 882892043 886123472 497180812 547011379 498310051 602312923 493491123 864074545 817506205 824880920 627199573 958124869 306855592 499626689 700638347 760246953 924794667 936670644 59155921 993607276 66283167 783004406 368060937 836923878 512379859 654527804 946175467 962755010 484332228 846278208 827465820 828838469 824598162 994718856 483163447 616384306 774417485 849882376 725882872 973604350 164477854 694534629 421585122 460702245 851188671 874083576 500311504 694798721 762088843 844089805 366806853 980132758 307676043 768392645 645211571 734073639 609093933 625721047 510539229 861723184 499025110 645846254 343525887 664263672 356507535 597190032 567361609 971538944 617538532 650997919 153218318 653050430 298047819 733550893 75665393 980189944 48096862 79737574 945164137 963230502 806325187 900638948 936275819 974931453 248967582 357602504 844579605 872866104 678719685 917224647 176623850 901279182 173860547 591891076 429549444 657409506 359061982 605004171 700881717 898984684 955691453 993708324 693688165 777867626 17432062 922829270 817610257 897336863 487385087 867030345 817553119 837721431 746974443 954839418 444815176 983567225 831182328 903850156 126220988 165251746 494180130 924803787 456528254 619124458 910904366 954423513 580263530 840654722 567307454 883798021 442209747 479619887 411229064 938428243 340756709 972314358 457191575 885798201 489134810 774132066 336860468 834444224 562405066 838398899 192198175 991436869 284131729 309907127 337570480 959919229 628132059 720869049 703494978 762164142 604971941 837171189 814428214 855176653 89423758 684734085 160923033 491986275 397673968 798437468 504900284 674352681 852797116 879021039 676670155 933389592 686760280 828531016 788543774 890623591 320751432 496084720 671477322 972147084 545707559 709295987 969855659 991487283 798966047 920574830 221532406 338699853 988216927 991272243 81266319 201719592 912314574 917785542 159403394 559532681 901098606 968986375 902152278 917305906 94444392 672936175 709316882 757470386 165286721 629796571 845882413 862013242 68716548 694295750 251266269 331318773 4011537 148678223 667702901 960893045 686180972 921314406 439401957 445423088 57695076 888403134 158300768 695030172 626831952 912416390 343642029 683076738 678322861 983156883 640328779 875718658 328534331 720344619 789862381 961080644 773688549 795303195 996848541 998736315 266031641 410331428 317169217 967772664 129634416 220745802 201650936 266217597 111141749 703203801 669896635 718695030 76054601 851287724 779953490 935107508 246761686 741336856 569105680 767396936 372831901 459024305 736504281 921424331 941366330 964729346 35700450 190422826 369391221 698821374 18887337 581680519 990435995 994191810 848239895 946858110 645619041 894577243 883850250 914759213 918368358 946989880 911362127 922153488 596182399 643702034 995806507 999063562 679916010 811988407 442536000 725478032 496238596 599734694 315108031 901165220 559220880 870665170 706974426 922096307 960095711 964349567 595319468 680388470 89850893 305070554 869871857 994162132 763346391 904559105 498380152 703391655 890048457 966790032 832545080 931495573 703296659 704074198 352535799 620476456 182234313 534168565 112523023 375521359 675895792 990194261 306008654 868309387 617654694 831144399 288252412 853766471 447210860 820951441 24804975 570588353 215879040 964557460 125127000 226345050 912540559 975364745 666217484 679817529 52230830 407535284 647956010 981538770 207605317 240250487 361697232 835856602 465137907 796112876 538171880 887604140 363317774 924273486 399817075 604676786 541853983 858218638 168190204 395662182 959874876 989990951 765883113 892351796 670176406 834244040 875767091 968513861 253452756 280760528 538776004 963919297 766870395 982515822 615480593 757867815 353319007 877035222 710354048 863897686 174451395 549805211 714185735 840812859 313891589 808055969 750206554 869006229 902532193 961739321 161817601 527864047 82505107 388512249 580487883 867069227 801125416 818729518 272990235 765637559 521220643 837221979 976607249 998725833 9934340 501049169 721621393 851464348 736126928 830622370 806747396 845889734 519146828 767160092 775774483 887327991 708463902 835829002 312178429 636920986 896694136 937941674 518742288 838703792 26183587 852864814 943925102 958707803 87438051 551740280 290440195 719988442 691639679 913465213 217887847 328838129 959227193 998593448 846736026 888257031 598581039 638515833 175094293 781327008 861939186 947121093 692073701 889152742 927170148 940809376 484088791 835108893 822280378 886406544 522502990 996619702 263430627 993515093 857681526 890599471 334461123 824753324 554963798 601470397 625492046 702275704 837520684 937164895 11364342 118144658 617433274 837123343 270873839 458366563 520900178 759689055 31356491 179721001 589147574 719115310 656852322 719621027 15213465 112745114 886062855 912494338 476145974 644898586 837287869 930269306 896650368 986650724 492439205 732793436 437908783 451511074 740427206 966120792 697294461 767910494 403825957 928174766 705698219 826804548 173649959 511975094 932159595 937909601 283305036 864936724 419178893 862512982 305288959 528027083 605961767 799268022 954973073 985583087 192717008 315969826 739460730 996536941 132858181 340853888 184475897 370205134 889517594 990102423 660638986 927383369 410106109 649317860 641736833 824632149 824749826 909659906 841987374 911934928 228906038 950163487 400203088 762795487 189505463 513430062 29637759 54083340 742924060 769656201 376545213 896650273 774052357 930649594 57369437 992290805 643152069 887894024 993875941 996633318 520786120 928659046 564558265 847691757 345187349 795715992 972147401 982925225 371888607 547962340 593355756 611768459 368127960 481437713 755474979 858831628 192427571 339386563 184156629 832969195 645489192 893222111 473307726 854655966 657286592 690214692 986376980 995720180 961851054 972450690 672247147 798106296 892395272 912282846 233611774 548727255 763596260 817921044 328802850 429059176 994663620 996867779 454377127 935210830 63445558 506194299 18046128 781993461 311653804 690881060 246588086 763484078 928976725 972158782 564713946 634073634 816576407 898557036 168583746 174527470 317682030 594144208 119964989 229687347 639813821 651422192 227330614 841529802 911978145 984646694 963117585 984160889 465290507 969146102 527463665 939684078 843925228 921192615 776687963 777385873 464596707 685787591 691287641 765712639 49342116 123830056 134458609 326921966 554257638 795994905 129582606 729254972 24189593 398160854 504115324 983141318 751292345 906936858 343883374 618074541 282838000 689006708 214149043 371450465 5776328 772060325 211946472 849658704 868429956 982625189 476133675 634961412 391582048 641720364 505433564 522398477 362832530 743083642 431673255 845732762 947982231 978624622 317952933 658939527 379869144 650470401 620569068 623701845 81695924 624661355 457058353 918698129 337271649 959871066 588841808 750431330 750371564 982727600 561427344 582107271 621834097 944949759 525699925 733058205 83899549 84240199 898468056 914314903 911728013 932432261 448756736 896575854 409967955 596893272 142484392 987594225 934593210 954228064 212546004 632992711 677406699 880282865 552852774 688588182 31925489 378506679 507328761 806961101 511867036 981083611 608795444 630072431 788080578 984442084 519674317 797190510 409810892 694776834 186583856 560672169 563279835 675525784 613663853 853375973 73136874 753572965 164089722 607834288 831426075 834477202 387175560 610937068 132588622 345479915 632005960 690199779 450293718 903028751 143173829 723828708 464011823 668538979 559304725 953692325 547722910 558747570 803134574 936702107 703084200 821643299 327533008 873670167 564681779 986575976 546652282 867312256 926067976 995075836 761975001 794828732 667510745 822345873 594725333 729544820 848118360 988972541 432941940 613564321 159306307 696980472 414091624 527356254 536413121 870006264 508538101 584352493 720500500 766230764 571772867 639501765 74936729 241134978 579605938 832707884 21887969 994584567 232256758 403584577 272615629 581584774 394315963 513055820 505836031 678826427 187450634 195546677 760360296 817197904 617295714 846742834 597461465 609169495 622036916 705372528 978829374 997870035 834139377 960963501 682540379 952997741 359385072 997051312 151410615 881041436 523186516 824943325 54756668 930505232 130188581 297186250 590150882 610149108 879627035 973696276 929492160 980440481 495243385 993123523 780378839 978072722 624202743 656766911 977087311 989123977 496340942 891549207 867815536 868433275 257328176 747049053 503118163 924252073 179503501 746708737 976455060 981876028 843022258 967249388 319660163 478229858 810773463 993195592 513627656 656037321 937776404 951135559 563900726 673234401 875697499 908016132 713494931 729063701 632339246 790419949 705482691 849642494 506376877 872580879 143492646 648210675 228681302 904515810 99406188 402617327 998578239 999286664 886335987 921680019 158806627 675827392 187250263 454131686 357985910 677942413 780765485 831630888 826338361 829942447 890125225 965429787 890777242 966402816 193026664 707621632 308527251 567583137 664890281 903705542 255130163 648923730 505660463 983302702 776216868 940410052 130468642 355350904 862762687 957820643 814189212 950689863 349437484 809895756 518312772 739232884 239122530 393209093 690746063 866938019 103267231 530783739 875048253 875315404 749451099 990084859 357637840 708849585 36835165 649643701 734932802 841988567 888740577 924689999 216638070 258504825 89113188 352024940 137213030 535243841 774760382 942378936 789548759 879235635 926866173 969578729 224929856 920373049 504253828 517894945 873098782 991589401 959771130 994881894 290725990 342064888 667791236 886918696 831667902 884997185 102606565 846428230 529802013 717805157 856771076 956855987 849054765 986765604 498811720 652660081 505641104 635417724 362120706 465173819 861348594 983345550 431744284 816486275 567847840 931920178 98718787 378310674 265203074 755509260 991214421 996656976 443619318 691705903 449519256 582414944 663610171 898881622 747771309 914065794 71024902 653980407 369650451 589227531 808049909 858001363 186958522 865145802 586362290 748369298 368875662 969493667 483490923 723235261 794954427 960379510 991526332 998552695 955744878 978270450 622018840 964638272 992282325 997001990 121483017 490714771 419572996 550244178 664493220 841470479 415595446 453073302 811063266 990944453 783867311 838478017 696863311 763062334 613097149 914577473 571060144 899754678 749492083 936281343 994261148 997610695 208304986 416766403 54255671 794844906 624176045 759038493 344973414 422870093 877182263 916492780 935482516 955650765 413168976 531826376 927400800 933686185 862151945 886265160 39765147 783201964 251423690 518658706 942098808 960969747 790844802 916856078 368142481 821490348 673510532 712462249 662336234 821522275 740919815 981361366 378055163 622083166 796106851 859829204 870574896 990375983 431618266 984702788 167080134 971520733 169649911 750275697 201095239 282796191 541762366 823766894 440695235 927718750 138151298 890862587 720371432 746955951 514915611 995472049 665453403 700194051 138264577 597505742 847815206 923001835 335349704 698235031 61304036 479505325 164557137 788020436 842662035 858796492 623001710 679959222 61514739 704849551 653832652 857435934 975445000 996514092 739527153 903332424 141578899 876204509 862931365 982601150 474975659 493557267 314215775 804980974 779103236 867028794 135982391 603644398 230107360 921924333 820675398 971036916 380639990 885757701 607494012 679013791 571503073 725256564 789753219 957890960 434241043 808434323 35554591 882140767 162096369 933812884 341270533 363992438 489009389 780633654 352104423 723288335 99395170 685836606 822527818 952702100 953249838 982449068 947772327 991589154 110795793 665676825 672007605 888193653 254675632 616778397 253627576 265486331 299115225 753936460 40448576 831543975 744125023 914070701 238926375 868697012 391616223 794568554 549601601 951816526 530477597 774080439 127455806 340367614 547726922 577868900 578529332 744094292 613182763 852835083 392066974 734080030 584922693 891190611 474669817 604043023 872891091 961733856 796308973 798491072 783615391 853216886 778508419 904245300 437577445 573849350 466188337 579545351 890772385 938052973 375609822 877640886 538736322 594884777 118320663 588097838 411442732 860997359 757163778 828049183 694310639 863346755 492236039 676612880 905044979 917996165 950279886 975981898 135400632 867704509 550017694 861138111 597714557 702217916 812775325 909101359 370614235 478302087 836598245 964111130 446255385 648198087 154581106 956618620 779485211 876399628 301937200 980913743 908813470 911044547 693122205 773284613 117423185 933636876 186327293 387551897 517184276 646912558 874981721 954915518 303888336 614623080 753398060 867551811 300632093 343398589 557378557 980347796 201361682 926318551 814497527 885448023 382925014 799301021 480051755 910338980 702656962 922548263 980174572 986932886 698649500 820144624 555176997 941794648 652293858 734058957 527856531 911861630 762295292 868451478 502683082 844949504 51757383 781346499 907115947 931533696 134583845 691210704 108607204 360847376 395784526 856984920 507890319 973999255 723642354 960449466 936790835 955447266 548140449 646540437 30691399 529086870 446159097 739835834 623412790 750281224 451991522 455815989 390400647 855888914 29043775 554850831 648329627 799878923 605017273 672501594 536065530 967316313 699579547 741394685 960606300 968572349 924986099 984666475 569540713 722158441 606661231 714863006 711180150 802731254 369084503 376712399 933950218 974942745 266084882 820483816 750355209 906112857 23378771 532684580 559538822 563832036 748463479 861693373 703138133 977451174 709297392 734696811 900598926 946808734 703781444 732284587 2639547 770316082 685253853 830771966 965440896 983421786 931958067 952050573 844089337 934237838 602703896 939523354 935985511 960965882 379450974 640692127 605730054 869079391 836050458 891145122 145484271 341936280 42741527 849683860 892058056 932888595 379553943 465003870 4688214 172800960 154421311 874844789 508634165 872500705 38506580 189856964 826707171 892384229 463523383 668914037 107502014 485709197 959625828 987232427 191719289 652735582 200100564 793370881 276044452 346609918 107897029 418208222 695185704 850522398 54147153 760664036 715371086 990031630 57777858 548389997 38997566 885951418 797083920 941781987 296301029 653621290 264889355 310475528 298548616 880095495 201374346 956830567 975679975 994623535 787696898 843547485 814878884 988564939 210094174 424704483 98956728 741162251 843787526 953541113 656788346 705575955 43415638 827249437 306820985 439672477 900912762 975236612 656690592 710622443 500158650 905328313 807850403 816747480 136985110 914476069 904773275 927812694 726572862 952995817 749169546 950174735 576316676 962030800 765566812 889193060 790511051 818671833 864224723 900368686 562369418 738084338 577824070 807896763 548624230 776576871 821156797 948221749 578737680 684834908 101140177 862877671 421760251 677841786 973530274 993576433 52135499 72227254 855891127 970128882 456488618 514996816 795729305 951304343 484776385 522448078 85522569 518863999 889349468 908898345 312185015 588737559 209208771 840577670 812221689 906506953 3747491 984115138 234776239 432842047 115769238 301698070 572466675 802811907 135695318 841619808 194140077 642541116 815850226 993828187 71244390 451507164 601400532 902347971 852466565 978094236 390671460 678166132 759890857 823529963 536158776 674896514 405584135 454090771 871098616 964648947 874222014 899748258 64813394 83597141 573001984 968869689 185290124 623356010 698744525 972367121 652891938 781280950 969031569 994834139 591624806 650059602 749759496 798688699 703553927 882652002 270885866 880318816 970278926 989540937 648967194 719294930 963990904 996048417 485920148 847886355 773562998 864199032 533958241 879758050 342413424 714534232 286373678 658281406 139335804 811522941 733148818 863472565 966832452 998735212 822258033 956992143 870792735 911910000 627880208 896880729 601782955 718639559 566671012 965282462 583243866 714554786 274188316 595848704 176556163 925046755 564744596 619069493 430600474 906292671 180088772 305169009 830989675 908299877 513430559 915676711 891043960 939180601 318743200 598045950 924306758 929652172 148296855 786977959 972735132 998491550 705171745 869415917 482127071 571939221 656966722 928308069 235671168 955645296 558056848 670752652 335274206 393025442 259294872 461384527 727073766 755574551 609519204 711996910 442288160 834330630 415676505 803702054 186938014 495173583 825630338 858912657 853957306 858538453 361758610 721109923 133917993 731184812 140111406 740497535 975045931 983361438 297054040 884442032 722881627 924777554 928453859 946314078 782914961 972143929 274302397 814616038 400920117 855633924 669024610 703998173 919654187 923106372 160480845 523108757 310167584 448173700 309885732 948951549 188018954 473889296 566064638 740589718 158268043 623878100 912987937 991522008 749620393 900856200 648484258 700471917 647633524 972166929 280274127 585249201 921460188 969287465 185778636 271941483 290118951 303921682 687827419 759478766 381925116 730141280 176535483 571933363 62719005 75504806 308326504 621118775 205581188 300573661 619000091 902217263 929068442 980729382 986614408 988454053 401656169 571305127 886724328 892586447 353833782 742373701 715894055 899884945 242167519 245181799 925066877 959153156 918806389 996634562 218357248 273440537 487777156 505093688 254081224 651728277 22586255 642851960 413562385 719954443 322398319 934593032 602042751 665669684 630845014 867915520 753546100 947341372 507931764 716830148 137530693 610384743 798596502 972307099 525586973 674017316 907130510 940176574 675301269 810417573 874584861 886607555 367539617 398478581 683120860 913355994 747107441 915458966 886049559 988073853 928241675 933755992 794950049 909638091 795134671 973347614 887985680 931776108 710802566 850208983 775332570 968706667 253899183 660663802 415288697 813985734 521132328 629953748 686511212 733406538 217557581 421561848 580285468 705676974 239703733 303077719 473274581 850586864 961497481 999131747 659839252 997876916 730166691 921190801 462821541 541994694 531881040 706969472 579246839 954125728 377627959 829924173 828002023 984433522 129173254 178022635 158443012 404230116 67711361 487363305 519579502 739821108 520001147 577208919 689332425 799923761 843196451 889450385 84643482 387951617 510808079 860980512 955117339 987428131 86505671 512212976 705476475 892935398 331106325 987043418 250688137 529994359 489491282 573015595 294863440 675833347 914549531 997351632 425159430 634407847 32188472 253025637 894858393 920799953 733000365 992219396 593373942 871976993 705617944 760061616 482936515 712619437 928846541 986928801 897615651 985920068 274945566 567957440 594629884 633323359 349070204 864277348 839079490 986566414 285633733 330998126 863292159 872011605 275601049 708235269 239768351 344944378 310082941 950966170 740698393 908668152 396539226 850886342 114018528 174365687 509966097 906904509 473748841 601396475 909157556 981775212 633246895 674321356 873573141 946571816 614299916 933566842 413817466 691139357 803070546 809184307 903218590 922610679 777433643 873377558 544124616 790711910 963932976 994860940 952787642 958780807 986308510 996401265 281350113 485877291 122663946 840334829 601479446 836252838 379807833 953908833 186653760 331220803 925367231 951489821 569551786 882378388 433651840 569128674 681032695 996505297 849551236 868259627 520885691 749801390 107365825 305094615 505610867 546950909 724149139 892064796 622972570 903664757 186252168 249177503 490456180 493191030 98370377 814804449 184066284 608325987 109439925 388339033 287154514 439055893 977387116 978379548 158288157 766603982 138335012 872007899 921468138 956692994 78074389 531465657 739400534 792854973 638372979 816532737 661053106 812763547 946903769 952377940 755124055 846886404 239488799 694959909 402885352 439316123 711565520 965470906 43924890 188750585 550258334 653718080 119165883 539810292 233456904 912028017 457917698 464672867 54612261 118921676 429154421 747385873 719339461 854275832 105600588 782003620 320455156 893536193 180722300 596341301 915184936 975280051 284524463 700857917 43368522 584321761 402751046 525961388 605239798 792170074 1488299 715036652 926056599 926941471 997377790 997757999 25038736 769008462 566817327 850638314 458089807 626045808 414908816 694172515 499050755 659020364 871892994 974395978 800704235 819854602 301770859 970299527 65200837 839581869 998173087 999297415 662506616 777326258 376229379 488726405 218709031 715758177 309094798 925361296 12202930 623942422 946452438 958777737 774520995 795089738 515689025 873486116 484604787 554070369 705862114 880007851 225973229 871810134 214553098 684679912 86629818 624381945 29794872 484211681 695191499 826983834 337279199 946040375 427634038 839211908 43770323 398906442 869748941 914423120 219783805 616291627 433765713 698669021 306415365 557380152 912686621 995485599 535283599 568638333 668643942 806542215 684172750 801526955 577004620 605283745 379017185 969101950 383266796 877997543 600305769 761626826 387112605 879437021 799624887 913405934 276145547 280064966 947599717 989822912 162117028 540159251 827706883 883336265 657930820 820052729 248340569 491549030 191494883 585649013 90280858 646198510 213363756 401178006 907703068 990078024 895508449 959762069 143239974 982737928 552391553 788450865 279331581 411254849 19688210 831739633 58932907 933240092 37312229 342555492 28117855 332863512 116551840 499884676 15427450 409160548 709537701 883491655 930350646 930928763 160045222 164129922 822279470 952018781 88817042 982297003 853442426 905633098 416939821 725356271 699469644 932400728 874814636 907458316 396102424 449852639 362592298 946620112 488162276 778153282 657667439 915036265 461161681 933675880 209429529 970390074 617966145 618324603 716640280 720696387 480409491 516255684 151966109 777967110 405118530 704431199 164804582 627010799 286331547 470999731 727484763 942180931 779684416 978112496 244902531 322995798 43998891 64295015 958085051 986890259 187681826 262139571 972433717 977870802 598058914 881624611 656637712 873061325 97388895 776055899 521985146 974106315 376239954 898055165 327411484 510347987 827635158 946967149 989897877 994917360 364511520 780719250 747970938 970942388 652580079 708816833 224345138 599566701 899200633 948376742 953865032 953907006 98742523 202365178 9177096 900528907 345983899 529325998 811095130 886479241 819673823 932468045 769014669 933252031 893373281 898614195 247707617 930439983 575515262 809185240 442887846 661000299 753415323 858082598 176011047 315521070 813287328 972652838 327909479 869102384 69339563 672255653 217464788 402124583 678111733 769384050 812415627 928342712 198631442 274685573 539203571 591798237 103890519 388513770 534242542 992155997 565930934 892081989 636621446 754570181 818449912 967866919 836960252 940224118 380052351 954923745 422722197 467096566 261678298 610928907 860403425 908583877 259420918 738726649 77468868 239981722 553210057 840065910 558800818 817060030 897214407 906715427 974218806 981752935 657583452 858918623 482429455 500439564 983203701 994933837 865725641 941912995 906575494 944717302 730421984 975496466 672599176 885399305 71995221 623600348 773284167 994619531 757630903 769095143 843286702 926320890 838495087 846417855 973036888 981354073 948438378 961459624 511438577 690382262 950249785 983607636 165774260 820950603 222759228 789258570 311114906 711153142 335637744 877382717 69361082 978721294 711333020 885305936 755286834 950293561 967371448 972287610 587896026 695426980 974003874 985554112 174339254 227360410 219729763 298889421 108992452 682399302 694783823 878553324 174509778 813800579 818171356 858675655 656609545 687602231 344896315 798009028 525689317 637351246 444645859 677983464 624451190 883763471 334681714 915793525 330489844 730375838 848901288 867954707 856982157 891723455 638407796 811146658 29133900 473637918 67431028 975541756 20006658 534535709 177936596 882752596 25349077 674461375 255122635 753419946 91388160 115089517 630718749 810768922 341124455 417472484 182123791 462943778 239177268 936950717 993605635 994518352 760761942 836616243 187573741 506609529 278605204 804405129 198603216 777899435 744250152 796260367 319656050 410462651 598116382 623636126 698450433 760854445 523272886 723669971 402932350 705247926 772081840 892682571 560122628 627724859 470732528 513189421 733009732 789749601 433693578 602362338 801892715 981621067 453011289 976153597 635154067 830352494 855933029 960325651 809028318 847364068 554038502 782043097 266251474 362516485 707220689 992506193 159220150 813438742 699449205 841101573 456350364 534285552 817630923 831755052 584961995 839175183 454888859 842689333 686527065 818118217 97847634 406282574 581369468 627284678 34932759 84373258 35723290 65337268 810327074 982897411 179853514 650289492 562391455 746036009 504193931 858460246 866883107 898748328 881882036 912746639 226063930 568345821 636152329 709059330 410375027 445143073 568521998 934604849 55793128 368231539 904140043 998335545 711642239 840890302 456024490 475423717 618011583 865988185 924824579 940075385 973835787 979905130 326846821 629408360 452097516 931208170 84170136 708316435 152333401 400437593 590166630 811766111 893220814 904823833 45849964 624079102 276976422 804945381 1577728 992823620 101687411 796620886 222001989 226172519 248496068 696953719 94976429 213427986 125539898 745758225 117521626 652819566 49672485 995958905 456950705 706922419 87048191 454806470 237234956 558987051 141780204 847204965 53698790 132470908 261031484 898738082 560819968 785715998 636144462 879819974 689546355 940679322 169925969 659999078 468104882 479128171 708590040 993515628 644619375 925123841 961206602 969954853 958905588 996918408 302916897 496734801 498564833 748747711 669811939 752901007 67528005 378761477 136376730 644494646 118953455 617831110 765864063 769050581 145953766 953583473 840408042 886178046 629714620 775238249 292921817 454180399 745448489 979122902 625021272 916556781 919639395 965325083 567955928 940611284 395049231 778614549 384294797 562331202 967883519 985927082 469446212 543573721 919010286 981474439 325225741 957105274 141397335 385380653 51836922 694684231 285737540 862786174 931008246 945070767 125696045 851817987 356772275 901339260 954890422 994113682 796777796 890302020 178605308 441833006 401790750 968904878 927552309 943384241 441135973 934026138 65052027 694255434 736977824 863898654 368299826 376894236 774258440 959256767 527408935 924707653 946380988 956135426 341218190 362508164 281856826 588870444 843820503 983783491 658690533 807540094 995946271 996133965 49368642 359853867 695489015 727886956 511277734 945007087 35879585 236281621 592860306 699553430 162571102 403806750 843652648 936772188 213471108 491892654 833477319 909707283 145827336 576424967 614894617 910113091 918343453 975402176 56137789 218883807 140988473 238631782 894555454 941031141 305740703 814266900 806689951 973100038 353382197 922954591 365146078 552978055 763981222 977288781 693048459 894857886 879937066 996653075 489285210 981975202 305180956 379248592 237762318 494955892 740135599 748776126 46108678 439553864 986955397 996222273 871560180 977431277 782998335 934717941 281560914 821667448 739640918 830727296 811617360 992427237 692994058 727166995 685817490 868271180 636940772 677433732 288498659 652257734 498333388 757229201 411858578 737505679 510068009 775295575 956133801 993020540 760279242 836563759 872339928 896466508 676109470 869964790 53682421 286042611 374231664 386441927 673003472 724199205 206583036 824066071 320921625 941179827 631814881 694771129 886961149 970805507 877119821 878890933 947744393 990227141 194660353 754858101 423467914 475252870 290397569 543091977 592253385 682920032 656743610 750561243 188048464 750982423 890686559 939779002 538975242 813659764 294085520 411754943 849712232 882910074 904594598 911021844 334795366 527407724 263299364 904835174 85338791 643463053 533834225 602359177 849000417 974877226 757781383 837855626 865827770 990943806 357003892 686203315 474548519 906403448 93205710 468816328 935657547 972406679 350864163 568554919 134191952 941040133 388677101 934438112 338289800 623843500 294795342 859373504 357894066 928090290 660140632 834636320 215780720 308024371 672188104 985109984 347685478 888240766 792466493 933700729 889733565 961648109 316055897 550984376 654840339 927211984 226434160 542276168 875734866 977298568 467240135 975812102 163309064 840108997 839327808 993223428 186784369 626010238 782678965 966175097 666322251 804283863 108861475 498263802 88521384 261308064 295553453 924256065 99431405 740190679 371352338 604046749 924970221 933036506 995692988 997488456 859346427 961164712 960620834 978406011 78949685 537860068 169120092 789640763 427654965 863784229 853718795 962578437 804149951 847373120 789508429 976671244 674180854 862740624 533756008 637132665 865949063 917397655 994136306 997859374 491807359 839008306 522850044 903790683 283462609 966776946 9369578 170571059 882862539 929876273 76519867 457933102 437819408 525499751 740309563 980236620 517885594 539864085 409655308 659001503 280283728 878266572 633850892 772832390 911311850 996590466 462727428 909605197 534837226 837882920 812859899 982450008 586621472 956361573 177741402 560431364 572603540 577496419 931993880 994507187 479357264 883813370 1403487 974811190 852394951 879430453 762823009 831296885 493579147 861856957 401265556 779685599 717792323 849415625 812093110 991685767 129212110 428434607 207152634 348420857 813999441 890193349 678436008 838226048 159079633 508356079 763893811 921463314 362111057 533450441 262393487 820312728 137285922 729113602 225481424 757013272 6649926 191566347 712341502 767998825 255979672 597135026 522248381 668072232 805975899 957370491 324072239 401070150 933860938 980117736 485704683 900664436 933613983 966600691 792140053 897253282 984220798 984338999 412859025 491221579 513493784 531562503 26860549 33128409 343731873 509822194 410906316 537393517 571071234 606489188 87797490 177380435 673344643 802989082 624793912 950991114 130015319 765158488 133433710 922392377 520274016 959331305 724181177 917170898 765441981 874759539 693833794 834779970 325403712 763694356 705901999 874216370 897848504 932935340 940912512 965284580 854076904 902980286 666241551 704727216 76160304 929397052 292891875 498556862 328702946 483651907 392152060 410544799 835812828 988775479 544666257 635632229 221729421 933737562 224521351 806693481 502338958 868863798 701326958 947885231 764202094 804531044 986965490 991692722 503806947 946527894 962077825 991402267 970569571 978338588 41040094 648953018 697447570 901344371 736808195 938145238 736047178 918122854 148295544 470902053 560373651 895594759 95423634 232976275 661199181 855652081 68254213 598181209 794187015 835569753 164021170 544048154 691882105 818194622 686295537 690026238 269175708 511539170 834413502 838253358 475359273 906819738 69398463 381168106 426806194 837832878 643174655 883697669 290229628 589727581 759675649 781844316 998064804 999264248 349806261 673209231 165168467 527856903 821480999 906492304 952689701 990368920 600322659 943596012 692573209 909606307 285527422 331109908 613967062 762289461 25196334 654440932 915420618 994054531 673956137 779341004 314489612 926219497 646873225 872680343 774505217 997091997 656591405 774709079 476943339 933359219 617451682 850473654 88709515 916478755 454132291 616421659 194235877 722187439 973377675 985337614 151167728 700103561 738471856 748091469 479513498 910424991 415459949 509503513 194615021 357648998 985012750 993028906 672567737 915749279 450280312 930992167 961601435 965339279 744500749 751229802 844717587 960402092 787778050 909798328 544787070 972802880 407118347 832629005 876555006 954749772 843281172 973221822 382113848 382463526 409954259 708353800 13924917 379479022 488513365 855332077 48255459 147533582 545316632 565097483 55599210 690833088 638730419 869199731 914663614 976431149 441220091 771907166 691794707 711610063 862566684 881356367 766467438 988830099 942966542 959136975 643282115 886933841 904402123 982017584 401257348 962163729 150353331 464551263 844795279 928772993 262247708 766343546 737673286 747064344 646030888 726934604 992887598 994687016 998494195 998624583 779333960 898553352 88884036 563256145 416421609 439387189 10313295 885964993 133291522 990910241 51690169 498863614 709562086 853872460 666952159 944760305 236711511 243584408 593023952 738818483 542319245 926618268 200725385 435407482 831340121 963152409 360522900 819198865 878413144 967532773 836755249 868037975 345736740 647450425 902782916 914328662 502963092 753411537 798505736 909169562 175910572 986727132 55176816 673321305 859679324 924606536 629303071 927995615 658545228 767123491 399412429 885616639 765474739 905673390 465164304 581870954 104963955 453500393 68752650 643632200 992844040 997874021 511365705 520106677 810728096 964302468 632165142 788764834 280810275 556362097 675667298 844941876 765770704 921722424 423265876 752803256 348165199 930886782 210479381 975227587 421363901 661483846 472147916 637366800 608748740 813938528 790351772 955014953 732553699 931131215 257096456 795636020 827058466 966555079 640311253 969346100 534166764 608247199 649283327 960330481 64768089 348355034 855598302 922522364 593063866 984550175 224627788 831174189 323728244 624113342 264893713 855318661 553552079 875049465 168329754 331103857 41949746 903958474 725115352 780308319 949200281 952356903 18972941 59343299 473075076 544630448 329393306 561658113 236669725 389871482 516675890 694720916 230604996 749423260 620171405 918691172 547330375 771397200 891451537 988212849 873449709 976998676 137058018 787353016 252822462 328882489 583454207 622996756 979544275 980607277 552772363 819763836 786193713 939781217 743945643 886867644 312207933 801295035 920861418 978524968 247792910 329246159 955766367 993102926 477394768 969153369 369071849 509878913 845035156 953052214 38080530 346606124 354402947 427211200 283773202 526971762 90369086 295621685 9526250 378568885 966198461 966500749 998459001 998802480 981542619 985834488 541461270 703720209 261560946 944316730 100865028 287431015 943888678 991388347 941493306 986126292 510127001 703525457 150453701 777289085 770783310 902778017 639260892 912449078 971657230 973825237 638027091 877641223 774579342 811589357 113703068 806501905 179548474 307959539 564992620 791063782 219495558 818600132 438720280 779735781 456746455 832929283 707839832 905358593 185176951 791136423 292505897 600963977 753334367 916261004 131355126 337031861 454090194 915050887 627272476 941791641 307956382 502793530 683188894 760308307 576462313 910891916 428793322 856363202 468149076 970477757 212636325 384871908 646025174 932565696 745700242 779950974 74215461 318898115 288936637 898203557 546088146 999044518 779080852 821478888 148057982 156386076 433479473 538863524 737603819 761831907 747678926 852612092 555256992 868424760 18904071 396010071 1247291 957772660 818573517 984455594 485627900 991188468 102642964 525248017 919846694 973859143 129632298 606608778 191165110 720290527 10826741 730510003 359689405 393117534 220406627 280138841 782455544 812163902 779763057 894606478 975232450 984938621 797667551 828900968 188849040 927016870 956981149 992562551 813333808 850818153 932277298 952281190 479217598 859930763 360770940 468634843 64706484 274932561 911931381 983925320 847013099 937183444 814043658 996103144 24764990 384628865 950984490 970381049 685009107 751516969 55756563 93573001 844514952 911624815 367712544 600246696 443747484 719350607 891853298 903332645 904812128 976548472 437048444 726062325 941173009 949531049 648455406 730377743 614154307 632831540 201992442 442924132 524674191 576104777 624320773 948976889 353649960 793004655 603529153 720785485 508354537 577133990 808846726 827690931 219729169 797566072 614940756 757879528 485500329 855264998 447417468 747618275 990001932 992718539 446829782 766003818 701066262 913964656 604298083 998319152 658594883 959300573 327351095 859733723 608064594 894136788 408288851 555865770 935335593 950582747 278973905 583295039 131390316 844341354 165168217 876071565 541960761 952113799 101584585 138839069 114780415 476622651 974155126 989087517 238098872 637321105 480580156 675730358 628035028 882183423 266097921 902564205 301476566 949449283 728604276 874222392 481257234 867390736 500248425 575360467 183792293 916268509 379325919 532861947 882865588 990697912 304310843 616891192 451194453 810560681 147291528 829819344 798469858 870303785 48519569 624784966 404978516 453347299 969307664 980555491 968490640 996188451 690176111 771655798 840172075 910575917 916030488 932725638 256960583 806106706 375436170 848508251 576777496 632889799 15512377 163821294 923251125 988947318 215043200 890226693 880010216 957178552 498172791 686306429 857096941 858102211 487936140 889319334 881496774 905108618 187429573 676212238 680601906 786263665 942310430 960231193 185618112 606207750 454044379 931269665 386373977 418438420 479708168 650137106 67023014 99225323 951468417 996073175 203004717 563610192 883984750 964746164 521725192 984907093 353006713 938204078 27603655 810718652 470548184 772119105 696532794 698884577 790329213 881278009 654333167 854802896 116978404 949774616 984470642 988494900 467094435 911917216 107524414 195962962 924670275 970599374 340920092 440442892 735833878 990527723 695494089 798631808 431838501 502032340 644563200 883036359 75316477 301444916 632313538 840075893 911792348 991104615 623735379 778766012 36043749 898428632 788091867 963119912 933445215 945280641 537521074 549840385 418579273 666019334 850443197 905817686 961660502 990258104 58761438 437593821 738890797 834361225 157805187 436182083 588469948 937642539 313650770 966258181 230210370 923949666 57740041 522845131 782078450 862193315 190969830 667971008 504775833 507619383 116943351 411714562 48162017 394621412 110110959 889739381 373299427 617718216 901034787 925034200 167437006 572260662 593140559 781754011 742990786 901227023 650920131 850370418 190780906 856050822 246848985 283034150 675982159 904493450 985367022 998620384 315463809 767309971 659607518 985145448 68281409 883424481 289045474 941404862 724820098 957662035 197559458 333614290 158779074 394852374 395046136 829648421 596047164 946852878 879295657 950529848 87370935 648866828 100963670 339988852 229394219 726534004 474631551 498647564 535558621 562463878 488954249 577513739 569912659 842762922 50549668 280780758 376809882 876455868 868352438 907403380 422021890 919845647 212306221 298609820 61165682 129067944 336956680 504718564 398923189 961163817 4357600 35721408 590637323 629365015 697312784 783926305 331542493 384909867 372459359 485467172 528854491 577729159 515302212 608011541 233230919 711468190 325562438 433447972 75781676 264585725 4073583 730030853 968482239 998460343 542212969 691807700 926881295 987981496 870174934 957200917 594827679 954503738 391942914 565605373 742173333 757602851 969984705 971092054 78549261 997183336 914809475 991614639 944193928 949106076 874369444 963147645 328879435 813449327 913110932 991637631 865262459 869793524 305306159 859478331 948188677 982791224 22275855 255367408 399801834 576685965 550697167 993028645 537281505 961331676 85536039 698984760 128633471 580676786 350971751 983169278 410903582 889259207 658872216 848653639 960935272 980619918 96859281 277717099 328819560 918543143 84589050 700151534 67628818 212692919 184023132 378747382 476689150 806184221 817373137 935161787 81449282 985335728 560184305 594731304 594322758 867805051 236699674 674800933 860462735 976847461 512337622 795905526 932276253 962933752 811706520 901209490 421097199 853554039 893213367 934220401 753880250 885883792 246061597 717050447 982133120 998855989 649104374 929235004 686558042 900898465 45931821 986378064 555475192 984421713 861059626 967718599 573219841 686199801 372612781 623729616 96762998 699159736 495798112 756518741 277538154 519432437 577948640 659251130 926294262 951412943 989413432 990971515 861481014 910114994 222610002 312948777 945164930 970872229 866201185 960923872 589088385 627965055 262992256 513505153 544413666 612992638 929988403 955190327 545065083 754455219 994163972 996737804 263702360 985178061 679224802 985028096 923627034 938531712 20134170 115705418 884666768 928070811 597079724 609209925 623297114 781727519 229563006 991157231 566229606 944063196 280937787 480942653 673465524 683424115 500120147 994884543 462665530 843702724 235924906 879191907 349476647 903897809 154742984 525580489 292966999 676737963 680118252 707361359 967698745 975702071 579741664 890435628 203819833 512707194 583208719 834164134 491222180 760767773 138954491 766846276 373693469 978199618 609030041 755555243 805678378 927290650 975007545 985777482 507999126 943107963 733018906 927921132 96351244 247643436 946552976 957885341 149014098 275650687 918385223 952396555 790727345 916075216 612745274 818260035 927967875 975178643 563280463 739629335 523998360 622670600 137107009 214035037 979381233 984471466 88922252 734101199 399144942 948863082 365446464 413039542 600991964 792151334 705512083 739931513 980633242 994762518 21796151 484462896 191581537 325821919 140705834 454596641 603477226 890443548 458487990 632883232 778845696 917808528 716393093 800419342 478937582 583495720 392938300 769901758 311336501 842141198 706296457 871946982 708477442 827133648 870871039 903124044 48968445 617737753 431561465 521075846 894838772 904941560 427997198 890091195 650755310 667121458 157589980 927020277 216554899 868483169 936778039 949495172 839833196 876006596 184047569 687049785 452083454 668473401 904887094 908863062 483311394 696034193 321106738 878862585 671958315 910558104 572057583 926112529 958193929 997220614 591546155 641980961 366300532 725068627 37191279 440899737 342757962 830657162 381819127 780119514 183844456 649317226 9074076 278380160 163289484 645329938 214129574 496274364 385021289 791418156 22993021 802419076 750308744 844586974 801440746 966655715 19243779 952167615 414425320 768138464 665443448 766268286 52829658 682457836 680215511 887199267 51491819 255437449 270904450 992328523 36809075 249563078 225227133 514781567 858212856 981259796 8929219 257683377 968285992 994569429 823448809 867345516 327209711 668444829 576696753 984619295 721991417 785523725 87584447 232209515 35632364 584341525 1504007 878613186 339832513 924061348 364205247 707996209 216568231 518060467 477322655 689787867 763367428 973536355 200581535 805984956 357734153 859397226 329758722 507808596 828747960 980344048 746515442 932691838 145003319 455747484 313396292 543660389 652320134 896574620 131901047 221630886 564643411 701341854 449734679 917609984 821577152 856926383 904079740 998854482 904750838 905353414 463439588 609454048 926830620 974170599 603938955 735076236 963683545 965191796 358487246 569565165 292701653 525402424 541121134 820911945 966444724 988509217 335941444 542174675 374665677 626763509 329327657 961814271 590464252 949625502 562139634 669239828 916471525 954949300 357326942 600491588 132775594 588466814 869297982 909889353 825335097 860074528 386986464 409582161 562249033 957321442 9168147 638334522 829340962 966809920 818370099 962061785 343868423 634187140 413448384 782926442 505142382 596945375 967078574 972086553 73301080 680015771 444850137 907501809 778158386 916802112 7212774 873639959 33769391 881455051 12756126 279822141 205125745 372374602 148670123 588264314 753470777 799026044 213203447 573153817 333252145 363634741 495377758 893377427 338421711 658195355 95550099 343382407 460944042 697941412 193943269 979841414 392441867 553046770 6421408 826401940 954339855 992823793 837843157 906397573 241608088 782052299 951342805 984783505 700506398 802654695 294697048 393972641 697002324 964137909 437325922 926511193 547007544 568339673 531860417 784994233 332676264 669951179 419970587 706556743 150982607 408841071 262496932 800327008 580399153 996791012 34630230 872997487 901576338 998237685 486912537 989766169 83460700 219916870 624819778 795026906 965770209 982618179 522004114 906660512 352129417 512356347 190507417 836024959 705555672 829081129 203575820 901226885 24384276 624598579 915922975 944485274 927920117 947821027 740814576 789023402 651964669 910031838 736807019 977598840 984353365 996899017 748974558 992409839 262754985 443680434 912205528 957770445 385501630 574627504 517319940 523226058 943908100 963374655 397755964 480594064 366803840 877671418 600305212 811277804 798216386 972517232 118869905 347429592 269175876 708054143 499857172 993057967 993527806 993584509 438803387 514991684 1910022 780274970 14901440 694097098 801619220 974595659 744287924 997489535 458811307 546886995 926551623 948238926 723939086 855424378 449419612 760817850 4781492 336453247 85235505 939995223 45480332 614227498 429823997 435291802 645295920 821961341 811080222 999051345 172730374 802105008 596080901 686481107 766013351 831967708 647966900 872864308 285041655 982794783 651362004 905148235 871693038 943027886 801412177 870921834 551098087 914555822 308729349 759996796 86329223 531686340 353492358 549113894 755567520 884291345 574046961 921390127 46929781 318578231 140830514 474591122 282535467 384287319 832522732 862381577 901580276 945836140 891955580 932706383 511664266 919742587 825652676 953290506 47591804 636462251 190680826 737619257 869811295 946883663 718607242 904419631 923165235 979613688 240209354 842653862 655216479 751227061 338725827 603576910 634372304 993817164 252385023 681058984 924524263 980725730 882807785 903756241 310808098 412556518 68351501 892741473 524351840 595701348 555045076 989786377 689753764 874051162 763971701 835682562 19584987 451451081 374170188 574348096 188954268 825295263 813343218 926558338 565909547 838727243 508163615 722992881 390946353 506183515 305538762 823917898 93524759 878718547 412999818 915004199 819703261 911736949 476811975 484329088 141373863 480822908 638898915 731250443 481274597 625497800 321966949 462000916 477101192 662387992 895019460 976471536 664392756 748571953 437323052 670941197 311241222 669688280 130978452 438491965 539023515 664162632 339233940 367464373 269607189 688844982 435104065 495003326 407949361 910318852 374438329 429215336 292076984 956940207 350478811 805913356 458385022 577963454 797584764 867043428 316380971 919093020 503291009 774231276 458940889 828965295 792536374 824091382 929539507 958367042 312975747 433522158 194044704 342170315 510351580 879709416 227120128 722990772 856572532 935594953 921159508 926807701 268087085 355715295 609047046 878121321 736460523 927194611 290005455 635829989 32458081 828340838 286948085 671066884 252792150 842117615 857390710 956519278 801231879 986821884 294693593 495192247 475545272 937831719 732941575 971480171 939604104 978912521 894564505 961157957 448297384 967503628 372956743 713507346 813644896 941614466 943329424 943955148 707249972 802089531 349753695 798043135 276369104 764064394 481543812 646884858 207970483 834149167 473390739 819419190 205209766 742452526 29960759 406470307 343627206 539373066 625462167 918331089 347172452 418749457 142462598 156926310 682858379 788908959 495617446 544074173 264184156 897631262 65763696 240839018 157892343 677614707 84437997 795367355 617802129 706261226 859340966 938044474 754411757 897117753 619229083 942310081 5617280 963270975 670323325 687736854 900638249 971729440 894572715 941153769 42491773 715415871 396655404 666927951 93524230 349699298 156048583 971739020 599593114 987295772 276654974 739795912 850224280 864518792 646877928 949713821 289976612 944926163 837817272 888061558 371009943 521847035 516766458 533661355 498122193 632325986 162324013 669057322 800641703 830607273 63100452 582118097 171067343 516533660 608840494 641836512 673716285 680667164 371522386 701986093 420996603 645971787 871977898 934663446 361066882 446708564 928362118 986580760 275963816 871244058 948173631 997494343 211088164 305781806 977723382 990978794 405922072 692879207 273333802 634305822 937448043 958287867 992931911 995864138 53707981 422873313 631781071 771745957 889921635 891845983 456330466 656837300 835570367 864011247 803491037 854112791 383975466 745277598 858932366 955322341 467048338 843181396 371980958 421118916 183256711 276440939 281592732 402898692 367608503 865115048 1713394 45664900 467751493 801036498 626678623 766921545 284364642 889231469 757375603 970136017 55970349 634797263 201603476 330969851 187637921 822150311 491321385 690203959 66570609 415774502 495986075 912445312 706793964 813704688 296629199 366664492 386494119 640956263 115048411 827691979 800415437 860164733 87344024 464443722 337348754 733734899 812124597 996712051 110493517 996547638 181606364 192241608 927205715 975988504 483234378 693680112 852727986 916104134 208180984 824846376 620498978 647472154 48169034 207688083 674019616 984996401 634945840 822705254 71220774 973865006 288683234 576838396 496956765 528855189 452643392 465450868 611016880 839815023 113578872 817352612 427366287 858725329 986370968 989156806 849731697 988663511 96252208 935206801 615274267 682917930 817596762 975900627 180328906 237178102 661984560 687520591 591217973 894664728 853280543 901619076 12894568 817551248 148171515 325844286 358815852 608088667 894046284 939591761 154753814 664622377 778429400 845056384 414683951 440180604 587861400 990876684 303276133 848044343 743122330 813896666 992839895 993813057 887093419 903016032 371787653 737868325 60972506 796356052 447466656 805450017 93621802 185430669 525520891 822083733 583366352 885261051 684925898 946866528 43784079 635925191 216262096 412497228 704467185 998335815 231012788 352791038 135540507 335000494 602174118 689520193 45359860 652813426 323133187 755809782 697164339 762547476 726017543 790413605 693174294 766353729 764678936 911746330 170916654 282441712 582930267 847606596 3560402 429807655 428547301 508864608 862595197 902337461 943018234 958638253 917274405 919904218 883115531 938112420 423301458 805397215 263022942 977295632 129646903 659627239 52203466 291237696 572784914 688854517 144873051 537411606 163905513 367835172 282676665 890499422 200228675 768710028 85077475 527569693 287570531 810584017 882165222 980310817 139797502 286884757 550283957 593506981 691263670 984298622 199509437 293983616 534159557 653417752 588377690 624983732 154307529 412960768 902603236 962529260 553300987 631815941 631544753 825860707 118494883 482218690 515831339 700537338 239119720 806676939 218361289 840774109 14980682 686557570 98291004 290500592 372685648 705673214 504725727 960638167 835191005 954366886 374481213 600522530 400533470 594352576 597788280 861842089 659049063 795066707 51757204 342515553 274436004 456704598 160405899 189796727 242332277 701732288 204457152 767699852 849600430 980774018 326356698 829191916 302095405 329725065 710512029 981840242 512675053 718800741 322619545 566966749 421596846 803776682 667735311 873743011 227789900 631762499 960794074 980171598 441723559 488951490 102970695 428531378 600713281 855142819 838143686 842386804 365746082 579810115 976660019 996427937 577215305 968444426 739367389 761982407 702166147 762637638 289615674 917004507 644645617 648214642 340875450 473466082 89088091 610157401 514872807 857770611 328258323 890429775 715126050 787124705 832530415 901181730 843923429 890819253 391509641 961465336 131349217 903865488 148055966 492399429 268851143 920602317 693312874 935136066 401152711 879099319 292234859 739095131 920351067 993911154 167169913 569945430 617372718 692648366 91776178 542351186 409811938 721224434 464240124 707711669 924386562 959980979 344191737 673874338 23405025 422272056 456471302 482412626 632111562 738294129 477776257 844822470 309307600 673314492 816781359 971461549 461694354 473945716 360741461 577123619 133806022 422765023 324294684 770865937 708965067 731555611 984626126 989795459 837618121 946115634 495403055 809305592 726901328 893846795 330719269 674511536 536188845 881907520 691786016 784034431 388800608 976023044 729666573 997753101 853200371 947324464 523329561 894392780 55575491 371355455 382544105 848261302 255785820 331308814 342135058 440512278 799629356 922522330 865392525 918631449 20035563 837679046 806966774 877673008 836430308 849056542 211414530 658780481 111189938 626238891 211944670 764123896 304958176 659605796 731876503 760094918 245332394 632492778 596317917 953863076 9768896 646293115 842036613 948448264 915007614 992703705 294150364 427908465 121882905 584567568 751427633 953461985 432117048 631384290 562299312 770672428 952354601 956220818 448361564 545621100 901316434 952270787 299302320 598498562 125717861 500492110 466314622 889299306 668421632 770857797 388587597 789322840 155147966 963101615 41312482 322492717 219505910 538260254 181467071 709536628 832779150 963462824 26102117 104684261 272211488 810681524 951219385 979235733 261547464 329228431 561137833 931841769 885022611 969803695 936397183 998151770 960127569 998025850 315324337 837832582 497531575 608726572 328289469 675481716 313700067 433466300 552891980 586384890 402048892 803925232 13297400 470301711 261690493 361953635 439511324 792346756 588642049 618669594 119330507 221051010 327281478 432208217 548991311 868415867 136742474 609595884 996898988 997244834 230802399 335170245 809135265 814808489 166584413 571074436 741427577 814939373 739154042 854800138 746686137 871089620 589464714 618785839 871945598 979892363 173717580 245461228 761274193 792148095 988691533 993696665 631209194 679994586 197068024 880098682 865257136 994239774 157308824 564075722 303853322 819281029 399413728 926110684 684013010 956932174 609098548 834686199 105845684 289333765 136553175 558469980 143633154 154450659 82856586 265879842 786931981 881776846 770611145 903100015 638850161 981866138 532293703 953079237 444140200 795732835 773715629 896718298 681367632 912793888 756957988 812593295 175981703 303077705 24870811 808444216 917486557 947943581 431751378 737194128 803663054 852641037 764549132 939038528 486410250 670300015 23613191 208532952 574946588 857171682 224410091 401510212 739518860 769302693 805489256 893031570 493437315 952998388 330753019 484109508 853670325 961536921 569393321 736072997 89755203 237583771 263954565 656608271 447249445 859722562 815784361 969107913 382075966 809748562 491997668 921390259 579145623 902271142 759099327 996727839 673543375 744059886 623973875 914023218 767428806 884301503 188812321 663012255 181211618 381282789 972843992 993091177 710539529 813660733 172863041 704906688 751929666 833723419 795147891 891117077 812408945 839215464 176371866 834214785 679284588 711195096 902173746 948878183 190120034 812421621 423001008 726933216 468000302 968020763 931975687 948570578 416967822 996537450 754966257 776539584 707165516 923287578 201300731 687973821 827016756 903123960 767527639 806218502 876022926 912785714 365985479 564412032 610883696 930172560 325625749 897549243 870322569 888883872 170120947 818974572 823666155 954902236 827720561 889380834 62422274 519934959 317228201 474358592 33163856 273936045 305258810 701100555 559451361 892886637 23878052 538034969 736700006 984080877 794393786 938402969 594193612 664603432 927370147 933167060 865407181 908895699 252616385 344320678 995908489 996225533 958547460 962413176 998024278 999054723 993455772 997364753 519620542 649819556 930755002 948998323 5514807 536233029 677940967 896567110 159555428 507154700 643417958 884534814 617861907 752648280 69620473 434256598 192526862 221225184 475761136 616622672 825749355 928023740 915047237 936271393 893903540 918760830 501241986 686646855 316152178 700419629 46026505 64542612 228800620 947563359 327691735 933857905 420031194 586979106 191827551 392862334 832182914 881627263 637604618 656728522 578312262 713478716 690772770 957509167 951272207 997340397 763198344 909143700 707648756 818056891 427909337 634484430 944693836 988590829 351116105 462432424 438935838 470552032 805225811 873643160 335764890 696148561 38168508 76355797 38910541 726836060 914625824 976605146 860909873 926977103 613583917 810344487 789936103 910973425 358300429 902324165 889316107 979320202 752687508 871350851 847868169 908428483 220147503 255258889 239299607 307539575 764484044 906550937 717896370 984452469 798018146 945478931 430524986 643854877 389119724 989614651 733913854 916863346 898300760 901144842 603169888 636468336 625882488 739175788 799021889 957071925 659302490 858514643 517705269 812446079 390992242 743228399 888747939 917551242 593578968 615176878 152976727 829189578 869027888 951897417 220020938 927678370 540074313 936814837 961750745 967648360 437320477 623983206 518587355 677540720 543145155 700404333 56312775 663995210 931896708 987216075 354299218 811448477 600953862 953602363 383990885 616158792 107094595 931517114 854911326 916158720 297675274 467562288 71020488 266894623 190063483 919466363 306422368 503162612 202842302 875477670 355163770 832343699 801819726 874323239 736583544 778213846 891465524 947086221 411912310 736263908 194116793 682199359 582855843 797655118 889314807 976127776 628721024 676266812 380662486 421486548 174860752 446326717 911322826 948114744 83637179 412633894 156732233 510359243 311713746 594456558 285457927 988002647 101465988 604573522 35168039 558088145 358491156 808926031 501531918 505520836 290374961 923679855 353580827 622846711 256273860 470359672 747063615 902720362 755474970 868062797 90403495 305679251 807779514 886669587 461337299 778771523 169073303 507974447 46342754 987485921 883462261 997836967 46959240 197278844 173814848 919294169 265310067 277098553 731429313 839211422 666557503 940682752 979366097 992988820 572411026 727637334 564538485 898326152 142667286 474960144 886470175 898361112 527792538 574698674 252749541 274466107 982273178 989719438 888021287 908692137 957070331 967666535 851834200 900425251 826819908 927282929 807075336 890502311 273315927 428415827 14030452 797268849 347683883 368340844 903540413 934401577 807876768 846532533 755381287 881336435 3722209 273809549 107369114 394864109 879043305 950610256 964029129 980327322 411260060 659100034 707246081 988821754 713759430 778908751 490007658 550486520 690638305 843802810 36344663 793324576 199013471 789879730 63236816 269834455 162860893 742980690 415483363 953480314 124281831 227132377 699238219 896285282 812426769 943460407 726602252 990153845 822918799 954853020 815498535 982125157 243145752 895936263 167626694 430885908 685061303 857877087 353454237 382433957 602615088 741259264 795196928 906458450 918808040 951994462 501871558 733467854 205568589 738339164 850654031 959461268 854798651 902983852 639771480 692563113 622344257 823344503 53298547 121602132 450523362 566555550 332657683 781626417 524046033 796756047 351371106 655209114 2585707 95804819 907826638 934311289 276755263 462082039 286131163 601727957 869898744 955246753 455611602 851836383 288816523 441463741 277319285 592791356 179342235 240103040 996971724 997952893 634746906 984067989 79048844 572433152 944779873 998428504 541847614 788888876 345050024 808499191 250134603 618726145 753413706 960896711 146253153 932903078 386270064 508675739 633145676 914758623 616254830 910563293 126337282 585633577 331808646 944788495 452811344 911138294 632375832 714070734 337261152 549498378 981555998 984100866 495111467 690877846 886546701 982097699 213137210 776646376 792659122 825303755 599901516 675133180 324317513 895606608 625862796 856194099 356214239 951890511 655375953 681374104 689618754 881413430 303913424 435839759 611967395 884697435 126815242 989450304 614006622 640533137 866434990 984366290 604149275 948888633 417564875 912058912 673680924 883723433 922721823 951119595 950671926 967111811 891988273 896989473 256130655 935169162 913056815 933709979 882266612 974741487 831370046 948498535 81233199 800026343 504125411 710768950 310762165 943228667 643982892 802671183 338580629 881173789 838173139 854076737 365360874 573692844 365121190 417099255 277821463 709604267 421270773 675203503 667125843 685291324 325054200 938053861 594669142 870931794 313880292 716673468 560074479 976067518 142210603 775304513 59252394 327140289 146988118 700718621 823378264 863782555 194757014 959334547 354585723 489264651 72975802 462032590 292604024 702537944 916453692 930462164 702972701 877251599 16057500 986027905 48868695 104039003 322255236 764533613 425648884 917520820 440638672 558576536 920885888 935873601 326377972 526087098 8594815 252439756 77502259 167264302 265462412 872189739 719709571 800888629 696681902 934097170 698139968 810661320 81931481 725188490 838600954 875025961 272491185 812749622 319871073 554850656 501333446 805395915 811649774 957652957 676969699 961679177 613037724 856520246 860933030 981150894 207528789 896676418 864842669 886920871 757301459 820079685 23312669 579935816 650081583 764833238 669172587 988028351 704659824 726065317 122271199 676865457 607712591 631061935 727934631 807067492 698957266 968377556 186013605 773204874 241214750 503585066 179342357 309456722 768496016 906902769 351809084 498188851 41892936 788855597 245334045 471438450 620974631 850115862 423906240 468978022 342895553 431351720 939417943 995215294 336214406 906573713 167267502 169538272 941388366 976406765 11151942 104286576 32262823 765303841 727569944 990485532 444990448 820426947 762421498 999009171 893059731 997312083 554763499 599677797 603016281 785071338 459904874 743054425 118061369 874284662 712222154 991315073 290445977 474164619 318106159 552022148 879607737 918770442 216144321 784381183 473228456 750845910 868201361 998656424 831242762 887739670 786133131 789439456 795884189 833225227 438404660 479417837 936203652 947934532 249004527 940933451 203504946 309059474 415236367 810337726 755317450 778066136 150019917 309131920 746250354 874955134 214613963 265983745 542438331 595844343 939047639 968724789 574913122 980338975 765875539 897869488 391266362 667215403 356016070 648624303 302014012 736389533 790610173 871768877 823040904 859147161 51372893 223543869 458625665 529325197 45119083 176007486 73385867 129685195 875539551 947973058 782323391 842353470 243272712 630624958 133374136 425324148 302192652 929273013 323831092 785727436 186740330 934336646 363873809 580090690 486988024 583768322 485275149 604581355 980943009 990939248 568434394 881993870 5720095 67088924 568463076 849572446 894265626 979676188 11476255 279598342 334556691 690993213 996292002 997774873 518763612 543119016 416837747 909375453 311436411 823690786 521536336 791405422 618727215 630604146 880664477 950275096 30001409 414610339 141257581 369971495 663338681 827888220 144737663 742729862 50449538 190110473 63712489 757902510 277407790 606398933 60052402 383688921 978444795 980455873 723686823 884173821 845464602 915086896 225514038 696280577 521919099 874276424 754859847 806367365 359837826 585487720 906848563 907102615 405487971 944795790 656991854 979975569 308335210 541192380 561708051 787306448 767751985 985863090 173180769 642622550 93552700 929166576 735840390 801450399 472957544 568208643 827646409 975216789 155615835 747958645 245396063 346386602 219114937 476280657 371451115 823673239 454652691 884027590 586625114 695423338 824693550 909384033 973461391 983502674 990322859 992325830 85072813 268313308 833266199 871543760 631637339 907797937 37936817 790780911 565357062 695049504 609394134 852760099 471070651 917287183 513096372 583131451 981658308 983619139 953604057 971236752 554661100 940817473 88616828 120487378 247674664 348504848 170369689 725823359 436764060 575490955 303284673 894153579 275959282 391311098 672757941 761221844 360279042 673637869 600866577 659236628 565918294 950154204 855828550 869791445 699691600 920346280 900308435 989081309 459022883 688342950 964831784 991301383 950344411 957039357 761719980 986237083 53383471 963275760 830310899 911274742 284958060 695175716 807317150 948166064 842764098 927029922 878050148 986423897 127228207 222606571 571265314 704500744 590405681 850463600 906864907 980350987 592792129 759705203 955634676 961157057 375746277 405154506 131790332 520272009 872297791 887009591 948108695 994597873 691235323 808083826 886219680 985753726 97240546 804459538 637919110 783435857 948563943 977282147 39553607 41435164 108692604 359384327 714475493 987913455 868213756 917088868 510928218 647347346 105136067 869371419 339687775 397747209 309168108 356310803 438706049 833287132 273452082 755824556 250485660 627865519 398250552 789295087 719298981 757997750 337343815 814685379 533298200 936839989 323833576 912194086 486373630 722737745 340301632 926779797 676337655 881183511 375391348 869527437 345774998 652770376 788638432 942046573 820780554 945625496 246239338 247269718 905740831 983182187 763404148 927210810 898052251 950496758 55205595 266860639 170521702 929105962 864323630 945540454 159740906 843254067 972971405 975416482 32613525 849078907 498330647 637343672 241657785 497863809 951143341 960004637 831834018 950678697 424521205 519451487 441361876 854952367 838872237 993775574 39894287 263643918 532306636 608641578 975933816 992090082 472174470 972553516 753726911 929199772 396071344 668093341 566784720 887037164 330726225 944196465 597101628 697026201 105586320 163719326 530977115 972749299 561356590 729065913 786727661 840381441 426619992 443618918 39542032 221918115 350368225 679003334 36309795 122079135 344481652 664572352 724082264 749703540 224973097 513064080 698751028 931700877 504651076 608367339 472316296 631685079 118573933 260462378 147744691 491090143 974407403 975643153 607451254 613913955 704184562 925774581 508192073 735796997 858761211 877375874 392867790 584893428 465911691 915816043 305909198 774536382 384885225 531908992 741744706 756102929 94303053 519769245 606084010 725038824 931026659 964897551 321144750 526579291 125076 473582113 788691019 861490248 968208864 985169916 687786958 906377056 777635222 831605779 128212965 947680290 410483606 563899949 799755935 909218325 527538124 588637903 483805865 657803094 465658175 975822513 601134405 988597896 262303465 984938199 915334079 946811776 917887374 937525628 553127643 608892724 613664535 710068341 912293562 968963710 723971378 983633790 747327403 772901063 671660445 791324897 3681147 91914993 623069767 704403156 581346888 798782046 274341951 402241829 281502396 627204350 221728474 548502048 160132776 550168874 139474601 746422162 731958745 832674786 505279442 789555897 352175533 528280734 350724212 890098053 929416563 991494268 505579611 887240718 493287874 554325532 201301009 768141432 375907736 494155093 290558767 708700761 708179732 873973532 524700375 786045216 258495714 359779136 781201346 988976036 558358712 599724228 401054553 932571312 522721767 730504821 635152046 817980225 316883768 872276323 336867631 881782047 806032529 937505224 936573113 967484415 128260405 487817606 662043021 984556176 323638348 603108373 736851986 803146360 347267361 649317810 755588356 855128503 153940522 158763685 399883059 491699757 67760470 210508821 692091608 768714755 244455593 578628385 183139754 655067454 430345248 517779782 83376413 241761706 719336154 979536501 787984025 837122419 194751888 684999642 54348383 826831447 778360911 918602858 169569818 810214161 662840231 732611193 286109757 781018500 464299222 571188857 557133482 773648789 779622771 913825227 996068424 996414875 635261840 685354561 761453852 850725703 356763573 566805434 837710168 961047370 797886191 836886397 489878243 639997388 240705505 875785139 451963555 463253073 640748366 946710661 915018291 941753538 468554632 883846466 776192686 871802171 352192492 522080992 479989480 595257374 860192283 948280267 376076278 662936207 232221387 366913669 526188548 945216267 30083727 87023104 275771254 394859590 345444085 628859410 749677042 818765782 651535118 663078304 75772761 795370561 282058929 738957450 735499541 988769548 830892954 845047173 730838474 922890124 27561154 184618030 6130731 917536565 431720386 442767233 493097876 609643170 640145385 875578727 663849238 785717420 841871692 938959005 122235193 706504635 168195568 411344615 652114072 711582049 660610490 992694420 487699263 487731776 579106338 957889542 124782881 783620730 845422383 853730243 831858066 865804300 442650577 640087886 328335183 499646780 594141723 601945743 487716595 639199790 161086607 739047974 497972589 553957482 422039298 919064339 227948969 494603440 207599722 722145567 248089961 842300895 64554180 722694185 866239552 988369791 863931649 984691172 182648373 395111582 662899945 692162320 533075043 873667130 493810717 632580451 442840457 983387985 878655829 988921668 829871179 842965279 770454706 898496177 261846167 942833872 562217542 892286430 454406430 851008199 184266404 256487091 393096233 417185642 461793067 848151122 639791754 940956697 906464179 942517319 195614936 277475068 68761266 501662448 410943399 978960309 96820432 567937890 451362216 864817414 747749345 858797433 429323662 497743686 47528708 303352705 346778547 756818126 629906619 878373468 935159849 969798856 991245833 993574167 656558627 922659489 470620599 662138021 29947842 902192150 162388091 600005976 524012565 770215128 80186777 560335271 484335812 773677192 322272495 401641704 456541693 510915502 466267929 975047050 716833507 995090548 338672776 903506372 213154961 543304282 867246850 934158148 708173037 874230389 615034413 860958370 593597942 880970523 395530725 440772937 748766218 782544872 20635881 548512981 598040538 816659365 277341914 709382120 388079735 403561894 42129884 232099337 131209279 623443648 691246533 725214174 236750741 545078522 865940518 936282050 863364754 872785633 705666838 768112510 410638900 640742793 8220891 977409118 288304680 941922309 431388844 486033696 603494620 810036889 229094491 506347661 534015988 550994866 154497811 231683639 687121613 809850694 806779761 981400212 371017506 434974353 90861915 592630238 330392334 740651644 387886507 733595602 679562857 731346554 332842734 501683444 502421935 743750423 15943635 300385719 496051438 752775919 476315247 824985018 637546298 812333284 689827017 906020575 426360444 727299381 391090580 845203730 730245350 982748586 263458669 757149173 3148823 482628385 167384455 426924467 800883032 877052408 426343403 639881334 571566487 616538196 134506565 212739256 776245338 975390061 963399523 969938625 598571643 764340792 838405176 897941814 212602442 365188108 907508567 947756252 580883348 664281715 909243644 985615360 121525498 290002004 591790041 807928881 438598709 981646192 660843834 967840751 350780971 942513287 240247869 713828759 609141375 667335257 784504656 950502266 329259234 397655207 321621303 606939536 766803993 886497454 294716672 643307489 841084566 899966755 463045603 850333819 434920891 977390025 122431926 864658510 514643294 581512836 401594134 972640498 753043396 905489141 444668564 646696888 440000003 686551698 646254293 698210018 86049362 122805467 191090350 724470430 603978809 767861820 890747402 920206348 533896924 970103809 898400719 898902150 278498084 999028852 898987445 980346333 127098920 617860839 216360850 761725222 166818561 269153467 7170395 612757663 857571502 937038224 164288486 859776356 284081988 326436119 136347290 278521706 620894514 756938694 632619729 709513353 563266652 695010101 922975127 991687483 778087928 808270074 14065705 916296306 234107099 623370323 567874830 706666918 342125158 853216550 486084485 820502184 705430259 794157849 61256696 924086365 737902716 778847055 506278370 768835650 127535420 940938037 477154466 743493609 967619477 997838824 70089924 715229581 495893381 779144586 224443013 569673799 340184672 895370456 606540728 654516424 217516898 924419918 734466109 951872972 864251675 876634834 585350745 949685186 651320853 971878818 45725121 583047898 776549298 907196727 26389429 401861093 768627665 888031120 672812648 915429133 589888478 845355927 484906992 655892994 288496345 873895907 758267822 838963067 147567513 526098141 922982706 940371530 362723236 784949659 600305416 791640085 305525913 746066796 580817589 813686799 510575332 671869378 172612945 837244322 366847421 925024530 434596733 972257146 496491290 573051227 57193728 852276731 99500630 530585241 725903091 928716830 470635103 740814372 858160771 988118418 205413082 838956877 667342114 890860476 995740029 997164918 194644814 517690565 179027583 707155563 837543105 980582977 235750952 748734958 967093070 993524116 297321121 512789881 52339060 337956791 267843388 449947660 90096472 484691977 846104062 872815355 311841041 489604575 853135925 871142639 422392184 612261409 278176352 714235049 244259804 398149312 435192788 530989899 660920575 717309169 589586357 708540324 831505628 846477028 771408695 783343884 473589072 518029168 753534040 957262142 582005619 881266958 186810826 699635503 301281594 387836499 751942707 813289058 677678789 950791790 553191643 900719765 944676010 965023005 747428873 836198014 343052097 567083591 933023881 934569965 318868659 786858068 138048861 602136084 209535911 519586468 174363152 329994406 476501333 693692598 655352552 724388165 483105841 543020811 622110890 980995139 821482431 971953520 42295168 573506836 10520263 579588850 108009167 111365466 766686857 924005641 152421448 402744662 237426629 746085222 870075632 904749406 385548443 709224994 258079468 434909716 393278998 875575472 546416373 570696944 13118837 582536439 418460754 998110947 591101921 762716171 987639561 990005897 207055424 658634961 699417677 895464159 440736879 442959537 342915303 880428151 226243562 679473511 840920330 983678821 593492486 917586132 117401415 712155076 719318276 778188547 121303028 192873999 839533832 942399331 357816574 576062377 273854544 322357982 135729324 277933546 298518164 360646342 960785454 991264257 619542576 681788050 423835751 997806363 565264577 723683225 861163792 962337555 92577921 839444957 268569527 426554320 62992936 701804644 174190271 341672844 789268298 972571130 429172064 465502797 752704758 870951695 946644435 971998791 342419866 955928961 704194207 753192516 143130921 784168483 343044109 761414303 630822543 868016368 130888307 405014368 366865057 964257434 574735111 632152533 668852856 793951297 816740980 939223627 70122977 245935197 960023125 998241589 412890505 876901704 798732082 824203605 208966683 479523155 804489081 972074908 625856803 952808890 668546968 830252560 120093882 362399794 821525956 912353654 803303148 879280022 177434025 483065000 30804067 210554400 640128266 655732809 103013417 927650969 536222458 587487647 224188620 231536907 64079935 878075478 433281160 829543540 514009238 999206181 638112595 893496808 937290463 958955885 548351646 744776014 210114198 233539003 453267247 845561715 921185681 946613992 836371513 841952642 71249766 874632137 406580622 559731625 372817982 905207314 209491282 554276418 732839174 850168781 657358423 677313214 154835929 892999757 725209821 909841587 747459146 890147314 682060081 816664203 498077197 698682907 628168238 661052947 175361772 800216448 615342898 652767645 266247717 992941386 94480791 239789271 267643972 274141851 439526415 554173830 725649780 930881280 978509247 996097671 911434023 913236692 660783238 747070495 270130556 648545709 139029084 767551039 796835688 887571763 172147937 883022611 758803035 817707724 339109621 939452964 168671041 776388390 173513051 510325216 301910395 722310457 924423129 973875057 488339937 543174769 656406766 773955384 372712804 822492816 317460899 864997160 480765068 681935660 245012021 457586629 94386384 894136519 582567011 629627544 533000172 661438087 112560512 492073803 84865214 216320339 514437247 594299970 423674476 728431331 586300612 591985178 657059505 746118537 173633662 570863726 376511872 429824169 937184848 950817007 52665171 101557852 676700495 764133974 440731688 923268543 46353406 192019730 289505773 746135222 164662282 915103204 416260632 547457595 271767203 473520061 395511368 747313319 465746050 965350329 275081829 963488354 173616888 618247149 95349622 712595719 515548457 911877961 528218538 679306883 989980615 998046634 147328953 541795210 158747301 960839498 916627189 963224956 647452981 901163913 86509721 338882682 949019461 973634973 565545689 889651893 851984761 946936782 455826273 677989652 792382748 796936824 683218297 706821594 568483205 939616229 363811255 575855319 44345592 448853439 507578836 764181398 709138143 900495628 703559683 750748136 819962009 948521080 469330506 523504155 505327448 614668549 312453232 411068694 280276863 736666193 963293225 982409323 721518119 768518052 232710710 950881136 485760329 634913674 648014807 709565681 69173690 988036188 50987093 430929699 527047668 552113267 764126306 918341794 576326979 889368535 240814777 689718233 949332597 997482724 419415972 641649277 117747988 205859223 242457011 877489163 274521758 832299391 720063765 813511202 638906163 811462375 638324615 844417703 132957038 155766511 457459304 704777573 807058300 828378182 596126733 841390122 675603977 712301535 383951500 731373675 632885763 797794291 170131051 718133356 816098913 970787133 157083666 290168487 853320828 882478850 139078056 589907683 68870853 808398309 320316530 745666031 335614642 768416442 880329528 992567662 381247013 572265518 894003829 918520207 917939006 923948540 51504021 211852615 1174376 913384898 528497534 879549022 116220933 415065393 845902738 898307863 486831498 726887503 54178101 620474090 798470909 920622026 190227132 808423892 594110767 739962398 60435194 660080886 266051831 859647034 19690979 442191105 458129899 955198446 1316221 746289750 770065155 845200035 554451397 707351197 474086156 545925957 993712001 998861263 674658800 915235606 13362816 390363677 975772016 989087130 580517039 709336002 493036875 958076494 64162341 789474226 976509893 985524361 407404943 849250897 622486471 984750712 888776803 973550666 712832570 750689664 715094109 856364283 148684801 860444959 180994399 368407919 264576460 962518536 132672766 606906365 927960073 971396790 21846073 40899184 302268283 911173367 704799085 834123511 730987376 835245791 124733946 124736448 870015320 985761135 478592580 676889649 814697866 875996170 717814019 985454452 710005244 981744178 378443645 885245179 237204315 636651664 187248751 220703523 169871560 171148050 710199243 930171915 556352511 962618518 18690966 473828646 50432359 915079710 720892854 730084614 413112396 461361334 33544337 284121246 730202536 889085977 353234715 667252418 919140750 971234311 321298044 811259492 767281203 769947697 964392646 976904444 11112726 189620532 361064802 901427570 283690427 905157237 238876453 493932112 477914267 513281355 596708938 903103280 670592489 772124149 284573221 683765286 598246694 839809902 636558695 794917793 779623755 898178415 34296357 503487255 477613616 711021512 823614229 918695182 669179695 877183602 898664870 992027248 413070200 699114036 361906258 425606695 766420007 847145311 156372890 991088160 473421834 753169819 710246949 827319610 981737262 988940523 104980665 590662576 151421795 580334013 156405952 764566656 997757874 998305557 926452387 968203358 472639462 897893599 590124856 791729125 653479331 981056471 236792255 679401217 767680146 954807187 878905608 937934038 604509528 870259480 68199395 833029683 351747738 729804910 225055115 941013585 368507265 890329649 185872545 947086795 847159016 877745261 749312789 760801941 842618592 932206148 740953199 786961077 899432898 909626774 8310162 724221387 549107928 868832028 913456908 969292007 771837658 867376209 53271809 354865171 907523908 993253744 680808234 721824237 503444883 613004801 137392675 943126654 377247076 676876152 752075548 979090157 45924370 83381763 484749712 493805760 87118391 867190115 431189148 512498913 567008453 960307302 423502220 681481618 199624641 720817043 574072468 926592787 356116308 641210092 788388747 927060008 40359600 999306039 175557205 926669748 322293719 527437674 141841781 418553000 922479949 954399901 366912802 497181757 761106152 953348902 639966951 980959129 131322456 788761791 627602389 910895497 531531055 870664178 91103246 144495282 599725635 656973695 511517421 690555949 594766660 690635548 300118489 345890793 819699798 919390981 438838757 876049826 453215038 937004307 525658294 755262644 713701153 834882462 311711654 699641570 684518526 925809764 901055318 922473407 276660343 644672211 428406746 851270542 199636728 608858370 587861454 899697430 35706301 825129178 663598202 795365099 777195987 803392192 443913586 969318538 145015046 454431596 544981742 602954694 742765679 886064980 306965478 433844246 577574922 661280734 781973715 812446423 951582922 960023427 51317589 362392031 11578322 992923065 93574114 755829126 206124306 327242077 797198790 842073206 981429767 987255846 934415443 981520801 783341952 798691640 635279071 964341931 269445329 999198867 471869836 811179222 47869921 494326931 729757367 774094768 560797759 972344048 882365861 990130184 697228715 738470274 358536148 894840730 723750884 753157657 62674566 434450506 334293529 979322893 422173530 728129310 393168944 881039434 233927039 383120522 121828334 243007101 182654330 986629085 496903393 592965700 436840059 845810960 689135958 972331946 935982085 986657095 176062382 822791446 397093046 449548487 376816697 549107529 155136650 251098505 734361633 837059603 209711315 785488821 978486931 993935552 475418507 986692558 808739549 957436008 222199378 604680992 144882860 458847318 487363231 538187702 989494422 991243299 786694439 812035318 32914055 904223503 894665357 960513374 545918008 872221819 101317738 279892610 106828321 504318762 21860455 859272902 386619004 902781811 890768669 986390875 143777546 558100013 46709746 123026441 829821757 954375505 863007294 919834698 631812789 949060624 439866773 723522312 183665769 593160508 83833395 239267554 521127193 576115325 992986828 997757590 654506603 715300565 465656043 709735457 238973265 254781092 438323514 901337013 409965751 515172814 971246586 992708747 488254090 575624912 360682028 474995436 929350711 957949545 445931547 861958107 205907768 334105823 755170448 842642859 274070570 588493560 127645211 706370062 255860960 991602296 530114646 769280303 714817766 833856271 949495584 971469835 933938373 940391676 7257168 685324299 718970568 771135828 359603274 433924425 276623481 716144040 491443719 630455012 476205312 656738634 210353948 220131324 397819576 494846183 468866080 481231410 527982210 798866376 912574828 948853661 955052080 992215948 520367200 664823906 145981435 644016667 287136379 828704585 895052054 931151475 997816573 998660269 928295451 968140088 823544306 934428810 792132481 860533937 571937265 848213848 918722469 970058609 804129793 903448770 323509263 837705917 678131145 929355054 200995322 996363687 15337738 518027118 566281924 758982042 117958957 286658528 300040447 786124959 518233677 853703813 968828480 977921092 240985946 454008651 989335892 989623428 361766540 609522260 742488615 743975872 774347813 803026796 769846236 878676389 151075068 483921235 452969179 795730793 924315700 953266445 345974590 829503551 852747612 909483908 536249354 789018225 384304909 890093371 724544358 882310801 92713831 877618085 831545599 963411179 394828179 930647478 483044246 492276575 321769184 668376660 525202630 772147256 942536741 952174853 789215589 968896606 556045917 959456299 788937136 962980438 892671072 909339193 168925820 362431224 564739036 892503098 950649618 973736969 246201900 632885713 341866805 832158711 527118318 994156224 104341421 813691659 876852425 922023929 171547266 879006827 946510040 996767989 358199008 597581596 607446729 671495939 241010215 568545492 512774654 853456871 100020259 617056215 748723565 871284755 984846414 990661103 966002490 979607709 41817674 190473282 858468609 908808272 635741131 773856988 802544972 924089528 691030536 790134878 291327 346771350 795869312 922906501 763810323 894758812 462509159 673191026 507353008 602418424 661154040 812244287 75817089 120755529 155082694 292232407 199326125 602186883 453098600 604979778 874144041 942057184 978677321 982147300 94223273 718913904 80274124 245935565 536010847 916968362 72448077 86627222 201783155 405807152 918829372 999066116 570260778 834193219 187374430 830101013 85333358 323947623 457394007 997942017 628973823 931477884 736161378 818440344 556031840 975397149 673374716 874042304 847373860 995345576 64574233 958953119 711530367 959605174 441415782 493263884 62121763 982233948 419290047 747149555 890901665 967482286 542497143 591045339 112749517 238518320 202257345 426405921 25685768 868615049 849421528 992677032 755417104 795351105 81594024 141225742 813118327 834570142 275405540 757319071 642433799 963214772 433732277 896648517 757685688 904249178 718908230 901747212 259672725 564893070 406222272 418344029 847521685 930802681 863900137 909931992 990025157 992225423 358801664 370604099 303950897 938702088 549948057 960894857 133373055 562579137 440059472 969383775 370016639 489271395 580775728 953676933 576097282 929658412 113326395 759967380 175214357 721659879 535256033 903056510 285447337 689051769 385744613 861275414 871361328 948155295 343031709 519721832 295697026 660388240 276628137 279316187 620049952 869348063 206879238 770888020 1956785 469221911 351876428 977806769 458561127 927007042 737181134 754671835 256308976 278404122 60684952 381015298 378533843 785039386 885187715 932559938 884643975 990362159 666503888 919939367 867645037 949975946 912172475 991332427 694078686 935841292 466941061 697423989 974458869 995688642 89773246 730396281 243180889 410966229 72640816 173881881 993190406 996234392 498825141 891552014 673874915 851171929 869149328 921622594 686284091 839710035 219992230 818689638 62744463 100212306 247558206 640059278 935617720 961038328 85378792 890861958 812293569 983081714 507975032 565043055 188060507 573618429 635942253 824617875 922331765 934154031 524768020 701941283 958553816 991963531 283467574 385752912 870054626 971993523 231275131 259797393 70149165 599404125 860815084 964869740 270796731 861338887 62570884 943187100 991729769 996822645 785120839 907981883 328060059 566716424 700543212 834298142 735330772 774580274 953469175 957440381 966469790 980957876 451280226 511680225 518664905 754497645 44605742 201492888 601757601 983318546 137681126 551724780 157668541 295602979 449224786 766467543 936026832 942521446 492474043 660890044 140273956 568289769 599274467 697963690 917661293 941266882 191268628 631661268 885641980 976701374 790527955 969875455 845356986 971669629 263432071 530875462 69841985 466394278 72870800 196448291 129778477 560831335 787847795 798640613 596228872 783003201 618403305 934274447 795337322 920689511 976700437 991383351 951184187 966519373 691800181 821065380 976549570 993600486 625384476 997733774 167683621 237929303 319884430 855416019 918892802 982179754 709898607 936487963 349303009 692641603 528855016 952165132 945930775 995490361 531049430 866025020 700068128 836933289 711300526 832689111 992082250 996414759 462189574 482117012 497758972 669636073 751967402 996996610 551089786 747031223 313533825 538438344 655883566 800144008 626134401 728218882 11411448 776176703 904215791 916246430 420985036 451199621 365299300 981450243 239970915 460562256 437415342 556896573 289300007 814902350 935170962 970240538 276518605 502516098 242540703 924643028 703671187 899814419 237967784 616508856 523672891 930788479 794553697 886249017 597242078 665793114 266472992 416042958 41395659 626159294 651321840 810786978 340424012 547900850 297261875 394957248 825970625 855235641 435674469 574556411 617034561 860510310 927601186 928693404 662201546 849663770 675861740 680672209 481714661 850313521 468359877 553967740 111474854 858609854 892258869 985597020 752109072 865905067 150066172 230388608 121613826 915568773 871950431 947950637 387630250 946877637 951781782 998971258 982429914 988183129 353590463 622183456 588459927 883323099 500505143 644342960 665611885 776884093 909932159 985048832 223560898 643862977 181985948 339956090 794438940 945311777 657373138 787574783 662588771 872228171 498574985 927657702 410519576 816004623 116635449 358494681 419380641 775511549 77763825 297391817 736375835 822152926 835342477 992225180 112571601 680666886 424002580 817916776 211791058 460684295 330629227 792974987 272926959 971460797 379444166 614216636 515326039 603941967 533273584 563473703 86172355 308483523 656188338 940918686 757514059 772097855 78932808 456849083 582844659 873280495 606816296 745736565 964427845 995986308 603721970 621957992 755424588 828137338 111091713 136471596 406635164 527659353 686236169 751278589 55518616 935585205 87810477 266858639 23052394 408097777 173589533 295452217 348836786 359404429 170083493 828094052 639937957 808837615 1453960 20309754 850967730 903252157 543242171 573932008 91033630 114881746 7921687 619016284 66031616 158283033 706835307 928621344 219408006 836888569 832187596 864516054 783375983 801048580 300573052 797894009 209578609 639763555 705246458 822075338 662850330 956427262 911364842 976770862 318325160 373648719 920854976 924935672 591631213 677650378 186703434 453500036 334910321 849430901 901202639 972206649 246053518 468463686 957049048 960044519 714060972 849438735 668440992 808865154 157150635 437328896 712808884 942628473 336951915 668248855 746818810 919748509 671914600 903705190 18968448 441500721 584116154 779202374 646596833 983018543 429993579 462163532 705566094 885078203 580765039 758663311 90360123 610861278 351610387 848303464 184412575 199616330 961174827 964927527 170647169 273371670 960544732 974459004 623965921 639729251 433113211 770786324 563029643 812383928 58392430 546579734 495495762 694678866 148876938 339676757 518473885 831403618 184988981 206123880 546373048 632573010 734510863 972202477 341008605 759026082 176775814 345183278 232693896 598911327 90623276 165004919 318880917 890364142 384960684 452080995 821630004 891319645 684527430 872496999 112415563 472814579 758472484 991336801 596566930 977543998 670542031 728269286 943938448 988688274 634471332 992496923 205475992 241346235 477008574 677196674 585494159 640711438 629216835 821394830 19117828 185250000 475119062 988685033 497791102 870937409 245504413 770415468 59509870 223513893 565401244 628483672 409313825 733702295 37493766 198409510 761437808 975506471 513112042 646089150 592800949 819125803 421476362 694686305 897582457 990874315 855592487 866714541 340748901 584483862 855824208 920930400 513175231 791023220 101190088 139753812 254139187 846143627 432886328 843645875 877606886 902098260 35060704 931032166 981183794 983807517 320469943 527331452 48005200 506205236 377908578 712942608 137085279 396663898 516959340 627125900 317248697 973747036 235384110 910567709 556497437 714885696 782379481 938408248 967777503 996520193 867640487 957642848 18898045 942903888 629653153 862304427 685349512 935492781 617236805 827805231 924676564 977540722 648519912 832828667 402541626 626948101 665703185 922850880 132004351 834827448 665429716 706193389 982616113 997361167 597275352 988423668 859667053 972898300 604659046 772286905 452721835 663236537 77537569 963727811 145865170 223994917 34294425 96756430 121952298 282895027 467557204 914348795 637025375 754707149 464709966 581755487 121424636 892012217 76353037 954591614 815561267 879659361 826575958 894672769 18685841 631443300 459354542 915181946 145350982 611923908 68449989 305110670 471749665 601258440 840000801 843578867 666023440 737625763 193319553 596902701 876923469 944918325 587335239 898273164 477918020 512116133 100330443 733538050 243899552 871696284 772907117 981620225 720256643 976076321 537725966 666211043 984699305 988538238 634745466 643999535 236294592 801350054 195294507 862289206 767462743 774559948 818512629 822630025 583485565 677496529 455063979 459746184 835554302 874195012 208012308 710241287 921450701 962963061 175035998 241957299 228495302 714259207 465473476 835201707 153839070 223000330 657413703 912178355 610964620 947582528 92163446 531807549 579322495 916074594 11924727 170407505 820741046 870635155 598573498 810991499 713492825 729226615 56947483 860193533 282995610 776395395 440646571 847999260 35496740 158241211 559158754 909229480 133693351 209843230 601650226 990189658 699436765 894452460 388433613 857260890 410340711 775475818 303774350 489852674 309499208 312032333 81795555 199450708 549071302 614481059 747978828 947069296 563274842 770184723 412832683 893282511 519457937 544647887 127535891 912992268 407610430 670766980 530113496 884154823 571070947 895044307 250598170 743369496 94612978 820855256 451964121 507792451 82673654 535059098 411245718 581595652 371879 93262347 119256185 799173034 617348306 983492674 132436379 832622078 853974438 953065327 178017114 260650936 916679074 953472022 586689337 842475421 673381824 966457997 640009815 875418826 484723546 912353270 810955220 869566885 170225407 368650790 483237556 966777762 114605637 982337000 723036945 859398073 616297320 922454421 248699820 924802256 101408223 222318347 521773496 966676592 364851242 613527466 790329986 834735410 858385552 924693120 295170733 628087648 98875317 139447112 888175927 945384971 800486329 889204739 270508263 749735594 836368917 854624681 696418565 978104920 957290842 982961087 604296295 970946438 580635293 940430942 759231056 768807900 801592651 922779076 101724760 736123565 336804811 939545835 378516292 861362340 708203528 793225318 885335447 921781741 204704456 396078096 105427584 274436885 682218910 799096237 153769115 329506466 100474816 568616539 709982095 791336360 447873288 714570010 459838016 611379952 725325939 761377829 416829176 441155560 252176043 450524007 348396404 721067796 544451561 996438500 395117286 669614715 449798135 895286429 655889695 941677580 13699945 494076140 9630111 198453140 82245736 659354077 312909699 933236358 930099683 974851496 409669499 651612271 773843470 800173104 922596812 954655660 532857639 543549752 766913789 807211164 807908275 864641699 851785774 972248479 282806440 934947550 334562741 977423611 335883144 705805516 249456463 804670261 380657161 474155725 134404342 721256783 703299319 830482654 388572997 935915458 712373354 980279974 271544669 617026728 744925233 926110633 22495906 404530457 159486538 226620615 707356565 742556684 169233584 525055272 476590308 803358905 426432754 995676351 90204084 558283937 213389446 703638263 156815791 750597222 665729190 724229324 979385209 989172693 134147502 704879070 991389340 992430407 623026992 723715984 595739064 800138203 723037235 950924049 126528296 194245140 997437945 999365290 687864797 843709754 78532397 849239222 559496208 850106191 641728374 769054140 400581861 594491919 508109271 656708557 987761410 993960614 498701872 560831619 126854168 767338535 793748080 866780466 55200047 99583617 427110592 706245799 174049722 436099046 109979222 557527326 913354601 978276127 149373577 908309752 4361090 575958438 151093186 487019455 816740717 838029884 40554850 386677978 578892726 695819936 513234818 798762165 312795567 804343821 286961584 673954498 915511508 990471048 866932228 882256876 783962498 946490540 143045536 607763227 322751626 492331532 161294722 730947047 782369511 858082225 378685735 987046092 825680324 919338360 287097504 595846029 622053550 671597317 332401225 995165746 879705310 970606778 916152409 953875115 426399737 913168124 842800332 987993511 489115878 906959090 984759330 991725329 553441356 912604271 612215902 672598195 458184707 486997846 271221651 398538160 237293593 568107657 514648932 570464568 448820647 770079650 298536246 502521671 630209023 959986589 21500135 965805376 923517570 989540022 377949022 553425029 888440210 940090536 58341245 615727749 838531813 931141204 814531892 893491178 479609097 764341364 477891041 631088318 246093355 819625603 150874538 156201026 354937053 365387981 129353100 713602681 714614759 856354070 441154559 978840592 848642912 982410877 370565379 718770239 172308603 578931745 362755847 440674274 950659113 955404202 634071366 635073860 165953025 607545676 676991442 832099800 560799024 693485333 409492089 909526944 2762906 140685190 845609059 858631547 376362770 550337155 137697364 963534501 127741869 548291506 484231652 686608495 399291479 691207349 470219794 562028109 232468430 512743247 749317708 978194540 305375480 746582223 322030751 833417215 705401009 850349406 466608285 934272288 321607069 356520076 246155369 705075209 13264033 982687698 625413615 711016306 982970532 987745887 676874215 787085088 467392297 836753323 281005803 359255196 640929154 987502843 593545732 965805750 245727911 670460973 51552838 277638052 387888290 589522537 182339268 666303080 371932165 983009148 728029592 962960504 719508494 868503986 426814035 763872253 38846166 213126632 263226679 969741525 548767263 934680147 547335081 683130654 840181143 967761786 116089929 514644201 581316241 725938792 723945869 955865576 507369717 894601602 176411917 544448721 898790752 923938352 632042916 885986881 559567617 922791252 764866018 799518882 829347751 832495106 820470262 957670505 6560790 653645506 545925675 564094392 487071264 492434218 47595000 508127932 641174549 710022817 301560908 950279675 265672782 755277274 465788911 626778677 159117389 246105418 238852904 463839164 140315425 505937096 712032375 831423440 609503252 780543889 323999622 533673222 907857552 992877266 140989853 715034738 201469379 807877481 532701502 656142491 694623919 948546454 117078672 922348707 655501168 918511009 813115897 932928911 56162171 573817956 749557588 985204150 853759556 915991133 732857766 734997171 913882726 932629837 496207877 797040238 557145403 618785253 941439147 952787932 590683934 745786146 184029135 788261438 647693868 948690201 441152434 460666597 947956967 966095326 419391660 640866226 27032713 609696517 134887722 855736541 365937304 604146455 786377816 909054037 639062738 744334478 374841195 594693700 399966260 487794484 622158003 981092570 651034899 849825761 436340152 544094859 979214101 990681397 427727676 529342015 907452088 923881226 290532059 712921448 423474890 503172121 770628496 858878503 161867965 298554153 34008849 484322240 389104655 699341614 759416718 829515083 822074293 904340349 22136249 359997699 463635356 615089455 973343531 989548646 807934969 838895405 531360196 892941571 623542058 843871978 119337958 572139355 950849825 955847133 29852883 632584847 222325998 742634106 981150992 985778547 51241805 963231585 200112902 430610136 648772000 764505090 695451982 722889150 545542319 606143295 266089474 698085155 991723203 998967725 443627763 773298517 149715314 898672352 203066874 632609800 295466745 893457098 532813802 869989395 373697941 854205689 150788763 434014943 200115390 912641860 706929342 935633101 758802041 779291747 244011786 583676312 316583598 494871825 442208177 998677617 623021770 635354638 378665201 921952535 121642822 750910597 465541382 807130261 560186546 947035823 168914865 653662541 466470553 664569048 213400459 243899327 819606237 932899053 481650197 609582959 950822049 981482825 386540627 439094588 612796209 697322804 444611749 900699928 229089972 497164000 146064779 889840313 732848665 760835205 711811565 745796935 165116631 532312141 536755316 563325714 701802282 806737986 53441119 403516289 982900252 987853524 13036831 306007624 81662524 120143453 22474431 713246848 391304888 482017949 806711044 956188824 669017177 780015622 214021636 232905468 314214243 818890911 335399609 346216194 200811970 802699739 186502424 335903297 3254049 510396747 690263421 698217589 756605763 769652252 76121832 175221474 180943505 732776096 310196124 724626177 223478947 848757048 614088731 975953249 902615610 944223815 943351829 978087193 982012979 998678206 297747839 500729365 940752637 992151379 642989075 991663581 75830037 101386345 487974852 640122292 533252052 875233335 76078839 446899974 358738396 641141087 903748603 996524639 812921297 929287185 271122453 426922166 542790259 572157495 338162581 658293515 902091686 940221330 663340667 702491932 79682708 318944033 998723321 999226220 707674494 774013994 472159114 951039023 312737748 478641687 94155809 624714339 425668725 874452687 928137884 990370083 780017792 788407829 225138582 560857533 393524522 718001381 584493274 794081628 837278542 903454427 367120350 704197380 636771832 867449993 673054619 698518474 636429125 652067701 298082769 608374438 765017992 979620452 387884763 856846935 450202478 976873219 547108119 938261736 865635041 948771381 976749026 988493823 719232002 980919450 132033787 899188931 362065236 742377404 125432242 341616835 161198883 826583074 398411153 596334365 311370338 959814695 144441241 416008857 350097584 957989506 119164056 778677832 594123762 597290078 158305326 959244970 546996730 962887157 11432850 816636487 670853726 813182363 360782919 615991314 860331904 896307340 482587939 729648421 594533357 777362655 453148817 666791155 492223028 597116002 477423477 502028601 843386277 864364269 722042329 885464816 676905519 930037562 135684961 674301102 896022068 983743330 525554625 788142651 849773694 855019351 596562434 794108008 268044604 606163112 953131624 971340971 765939894 997794914 263603679 817594475 370335726 415506257 161563326 640244289 99015024 661386724 700055583 978249959 803167119 828706063 162312741 999349664 786657714 915592864 208157736 704417042 133759001 705968720 343428054 691114960 583717481 878804218 484728672 532675896 833330451 976955991 413238245 982977575 841186939 867743435 76000780 316061923 807771427 985847633 909011766 916998085 492568804 957607901 401403076 696620184 383928261 434938766 681817585 837847544 378000343 425307153 894079276 917334081 745844154 867192157 848011440 903686482 301094610 916014062 68392181 498051410 946252601 969698263 94646858 323501889 841185985 900000152 335531076 933521804 785717961 877680563 444093698 837855456 488367361 717787412 304580918 613435092 188320415 874978095 710456006 845516198 395103091 959086410 780973381 793736814 717279774 750914116 156068082 403754308 80057666 154772950 251465765 687215105 110538094 499748003 511909452 647272039 106906906 548075265 562419642 970928366 927069071 959856098 869198885 952307343 244785121 683252767 66238984 390207206 358244169 810533711 217940762 352724301 15942695 418846072 346119068 973553800 542173056 637345393 190077463 390217952 114627009 988972216 312663775 959240264 656433092 844834668 902700274 974725765 991068769 995773930 205076519 976536777 974248574 981566531 50459569 680509708 4468246 682321439 628838207 898360985 159511743 791528760 725822722 766033375 269249783 640137764 681779547 918328725 313277456 542751384 3281386 497287798 596096957 780005562 8531398 487635277 217126830 919379501 113824645 139270899 294688192 298180138 209932344 224994749 421016175 708077992 645035333 779701390 170988885 474820730 213267652 869899913 407270492 828189225 111778757 646357028 460680663 595180662 556672265 749721058 758870795 871364115 438245791 987794823 232436525 786335959 771082325 771414142 595431245 926882419 276203587 647107790 256248832 721645871 780343383 928531820 351571409 822399595 838767102 955244409 110189120 303341102 292212193 942475825 360010176 538616262 483875883 972980030 110309631 897905215 74703552 283991156 44109491 641457837 94165353 801977939 968969031 980233249 884575128 899373265 484323236 820182264 552996288 612219573 804660197 974672130 508025254 654511927 206746848 365225319 15487731 669376716 327624799 486114161 696331222 929460244 798683099 852857040 599295553 770369331 221326870 724479984 3029621 303607919 635681204 973510876 5383806 710411091 404600624 421455675 343142576 962972143 696677127 706148433 376974644 889421391 666127553 680367161 997469633 998891683 996795965 997403112 773960721 843590638 465742215 539017994 710019631 720909959 245834194 914949014 80733117 242446270 470422234 653410070 687824990 855673554 57484854 547486595 857421082 956492936 110640259 902291259 673567826 696405020 629414241 890103482 640081406 978691175 388043002 828432745 525930152 945137989 206078210 387287094 34099457 693103422 995769537 999105311 779641258 818562484 766977138 854565724 113866541 398607338 30065026 325808107 339931586 963702566 255290102 364008249 3564254 171334564 263443539 647364448 415163890 419950986 345814328 984706679 261435440 714120815 576718824 740684727 452350061 788392475 288382903 550165196 94594041 810606775 580747252 590578728 323437267 418315379 992619819 998915064 490054644 877304068 195967526 505999945 182695713 214764048 16810526 970564127 560575405 858935315 60373909 834485063 964215057 985794130 570570477 828943364 312775908 915284274 817803632 999192467 532045196 739707632 367029854 730941549 743402289 849537022 396368807 762415193 444668063 923250943 609654488 622836342 832479609 912717911 441966533 891460428 385221521 498948630 642973406 980127683 139946232 255169136 709767133 787850524 170750759 225858421 961458570 977657744 965717809 986814199 752744043 779484389 276886166 997064681 825285248 985244746 14974917 212206756 116658244 442526298 333748558 362406660 936299877 975144256 334635166 996971915 890603456 904678173 157050031 404596795 653345811 710599800 254950115 472087965 300395927 316784811 86128065 668090400 171090303 729244008 815229532 922934426 523905867 550601822 379318690 890020560 631672373 746050254 771702193 861135231 131962945 332643440 395825813 778797409 319901545 782788799 417745735 579363192 44476460 714928009 35242316 933241934 158970887 428744039 36305096 995237763 430390615 839890322 532760831 602430369 550577644 578546171 820007869 899376806 269032423 559452137 657581426 798761655 219085220 848796838 356073862 419975986 269277533 340656286 586694120 884578476 418790906 442510131 715035700 931016233 68082246 88952475 900566426 917098988 7000430 119131421 71431176 283671911 98870740 446387878 477378505 795870286 688577859 983172377 332887389 833220695 845491874 984030247 535642872 731740084 338728085 490008378 941058833 942692299 183949700 450719543 344345359 650318358 723289413 987939635 172085824 609819513 511885244 750447791 830795246 959547662 371853406 632540913 456790485 957458346 860383452 979315948 764201287 821966808 324237479 501676687 76978235 994063939 294187965 716045250 742679288 880278024 419674665 710358402 201058457 400213884 618951854 773505436 445121447 660038037 75873406 745030089 635888722 904872830 617366358 718741343 137060820 815291158 806283716 842156729 51332299 911314631 330284471 393338594 862684207 961644359 249710039 686334678 628993674 852403728 919426434 953397435 230563169 582470686 223578641 607693732 504048087 702907230 470197490 553448351 744584948 928115271 913754957 978737728 560904695 866797141 930570998 993058360 60827553 563034479 820918537 906667027 313604703 505745478 136286198 983496811 314911390 943912726 815120568 918975199 874896472 928158124 619183167 814399236 362020275 457381605 393598587 874510115 230219053 636536952 8649673 299550821 39889072 803124939 113529595 330412013 120052295 760315586 270768051 295309175 309284767 554425015 402330566 828291526 820929551 910974849 485636440 866441941 411640452 425337832 318247336 846859682 852146835 931132539 577505896 980826154 893816555 955453821 80555398 746720255 489524328 721644692 656254721 725965840 666703414 685923181 998674595 998804147 675609287 892681111 367947987 506995007 17115573 345948781 591259771 657915581 943848794 953480441 499081592 719098020 738174199 990724087 883946315 889969299 488810712 727486716 479995489 732154897 552052779 741999052 169438627 905901037 886247816 937282908 208316124 962410393 138914677 322467384 183734999 681020359 793310372 948266305 892708056 951036587 60301710 968924473 272517843 343184359 844077731 847070754 890870069 975070435 670319984 741152098 831232979 993401781 581028277 798159254 764792946 981243142 83829737 804801241 170908779 320030045 674443566 896736552 536177919 778995568 162344917 398209735 578087059 651739437 768393768 798126322 345634164 783501972 690758019 824356669 181207523 471299915 929647066 955451892 868290086 911252770 918861358 945053596 546387550 770277604 924493070 954604311 21497071 79412932 628571039 891402117 191910443 215283905 409870757 671922692 845941752 938355579 775604121 795763103 967499484 987708237 626425186 812083899 19000106 602848441 686880215 872830724 341160437 685542630 75283226 655616046 592335577 698590401 892778353 968106442 41727261 177818999 390329946 838659635 985075111 986794032 616487028 669590870 680157578 812792867 671403205 717374048 476349761 603762273 323402771 802747181 685344192 698627962 867264908 905682209 747072673 771733206 362422324 831969976 13833920 981883099 374055724 713767412 478152751 772247636 959618119 961392207 503295744 869159995 749383316 964404615 941658740 989868924 100900934 595252863 296065249 379930631 82786748 466063688 227689452 275906336 111952501 906956015 275554576 788466249 507454845 822102056 350512541 433272414 967320118 967974185 20963216 371220777 368326156 469566691 899656660 905644116 250223296 527036113 434391451 797402066 614822813 834501084 992072094 996958506 400437930 427785836 548922360 585456157 369959111 435172580 680283090 860981841 716823678 926580435 808222757 810268268 733901529 818490987 443704853 842990516 723880174 864587488 100946530 455429772 61578683 521948195 60208354 718956016 939056725 986944989 153378398 839362450 735747817 860455117 976755884 997716430 854349894 870260858 824087530 976771770 95731666 356883137 169711554 724436656 360157537 832642018 357344905 693078634 619595501 630414752 509798044 698660139 881534792 907797861 469258126 957922157 114877789 213087201 621410362 647810828 959426869 993023377 237885125 420010228 925687202 993500380 674813975 810897541 432069702 867645153 909603218 924445403 960062887 970591029 739595243 933739535 186428356 187463424 647283244 996725535 818314188 848626968 854827256 965268562 27776528 739931129 127194595 913676241 483133691 851757263 623126045 773555504 471019656 619069855 66543724 345015671 707179179 903712732 494960740 579826335 411470451 587231604 239295403 292297724 932633172 962892630 935505919 937234806 884152693 968423592 818122536 932502666 127225723 314141832 890921855 984056398 341428175 481414026 915890890 959213331 936368612 972794302 265749152 592178440 44472273 864088570 911348350 965773138 905046629 956219162 360447598 375382058 565825497 710508111 470168459 645774801 304125068 656000148 644212400 666019928 531023487 929251842 472769472 895604052 878809601 938088853 247696550 680446043 188013107 735071620 88466073 991950553 523966084 819447246 756741282 996679458 841944702 967915172 914062322 966796004 141796440 249575055 885268810 995585559 715543553 719077547 107445971 431998546 939840271 997319297 694134513 732954329 510575711 749953198 419776938 578852537 904994573 965474739 928375423 981387420 823129497 940843787 656859648 869471585 713849991 952674267 411081101 458792165 526122757 906880032 509053074 669346432 949369631 993991389 418763898 456327680 679047385 787589695 31072699 853634838 790544046 988577128 946277678 960445472 916847747 936935592 222984882 463153140 571668694 940752832 388221217 861033504 717443209 926557397 245375508 698122286 581912526 614339999 71685452 935240345 151888501 686855614 914831515 969213666 500349104 868463023 981921941 985116032 906324790 963884968 993372869 998993553 846624985 910766916 680944730 817186876 779823884 894827895 132182168 340152093 95699028 153945932 232317051 477519930 259595806 951358704 71277282 329534072 425467186 664934734 667098774 727653713 708876750 943808607 978660045 995464815 67057439 288527007 590549536 629118964 571829811 964229986 872636148 951096795 605496169 753031727 4324312 661206170 497842170 945672615 706871636 913159732 873086995 963008053 893157077 967323200 711619322 820668937 119125520 827474821 992371834 992403473 474409613 978458377 738069887 743279255 833765380 885826691 700258721 704782644 816404063 887030292 376043120 884309769 503178916 883657575 832316227 996817008 788145311 853690826 89803785 738145523 852146168 855726656 165701379 485187909 718317841 792800499 839777842 847909773 785686953 839326526 791998274 966428328 727301758 859796893 895630246 933162344 402686608 511745076 991694306 992188044 680289159 771404060 921633507 921901127 123113872 710531656 826391544 894177461 690279073 729215350 827257939 855451364 72847597 521364036 541526895 870169543 630244640 641720368 801030819 863146147 708780262 836233488 253647919 901504735 808289497 822320573 198777445 290414712 925043970 988392398 16029689 343047577 654202729 832318082 574238309 705538901 36376316 732189456 93318749 407849157 931929304 959038196 806371154 937861924 696245809 891796954 90711136 630261699 209872828 489760738 469960511 984272173 373770894 485352329 766208934 785412186 333302012 517488240 866096036 981414830 7229871 249778374 296501189 426232688 404178706 954636547 422040648 838336356 887156374 894072845 924307449 978381054 256334915 640647893 392492666 969154561 170982588 711067583 327283573 810239004 111855125 904916473 950378155 986673422 802988007 878585835 414701541 848814350 867533740 932999562 122611186 205014782 443608501 691600357 939550765 990751047 432500677 727147943 678178480 841044005 405846368 422132697 727557472 824338946 650274411 696151293 909461393 988105113 872310984 912579617 701499023 793398224 607813798 624846796 159897720 601966268 609228705 867195318 460433814 720949718 525290413 740360019 889055435 950028003 912695197 979323833 862462151 961035019 25344796 884380072 628977005 858215730 948416022 996921775 742179306 959339655 815454642 958233219 914407374 942741099 271452887 587406064 843957741 892805056 234990598 887613580 964326670 994182546 374667691 724310374 687019041 923781981 182486738 592494134 4531964 607353960 62397719 263898304 789101695 794612713 738260027 969630142 244749419 865593143 758642109 810421476 777716675 832217441 505925236 786122876 585230315 888141330 457845640 736805846 960700205 970951189 121013522 718968707 197716062 311694904 275861777 652259768 768850536 829153568 149816464 442656422 703469212 781144990 954001509 993126047 439942295 894892952 856258180 915087435 221169314 750127825 605113872 719972092 138901689 802616872 707367264 764353447 988877861 995967934 283171552 509713384 33676820 536904722 241663409 273231223 241115340 678340453 792315130 826465235 650204064 729677217 580165365 848020311 413358813 613663954 887155052 984852481 89824826 437337287 400998009 597476020 586986404 844041504 647704765 749705135 306226106 922703236 176870432 238944231 18381985 170927307 607305270 881069252 918022748 954398159 919444722 989464521 513265930 542280129 782572954 890330305 890957493 977991909 165547432 880400099 769046573 891037558 507347783 736607611 846437733 928502732 127475087 540652767 156747147 379767835 882266227 886511400 859730335 960502598 591926179 934696036 99997335 423708878 874982668 915434252 287836767 485310330 801565101 924617821 756124886 824920534 349131802 892923180 282955301 518376500 725555124 759705324 895258619 966875339 648024843 832689850 286493930 819466641 375707436 742140843 393450200 955146443 252040372 887483947 982863996 986989235 680286142 712976633 227229911 343032676 144718673 611312964 737010207 944875414 671424644 860050804 83281636 210099405 718021619 889760826 262556636 841861000 486640499 520062191 498275923 910472351 590908104 956032967 828382960 985564743 550707882 990714506 204093833 866568448 82037327 378766432 81893075 740226071 413222060 715476433 127346984 341847013 134235135 763222953 288699129 708098878 485881415 615545723 414251163 508563008 685436447 856395197 91928106 930708404 626943162 735025593 206304381 427286303 175580808 370397436 844399190 999336147 223274226 659265803 738555592 869848100 289207422 620248908 493005249 978195777 538989244 959274670 284447166 527972558 100789639 325011540 966775898 983757679 325589633 341232596 349326542 390925786 63828007 371157679 893645143 904654434 394695954 718291309 659797067 914812401 735575549 793200972 883971859 944528652 756087627 778199311 744201069 924469703 866153528 890694911 375556208 597841132 735640678 975658194 146598884 290002374 18658971 470309696 897494714 909162460 672200855 893484183 953968543 983946032 934535301 962926480 2629420 439322971 538387430 937471599 800080086 824593683 701489199 756076985 708785378 749083753 433996044 463157673 135175973 796011723 128397065 570836464 738378693 774307798 314146284 350557379 101267019 882804917 36279279 657950297 811604817 929960162 213275920 472011520 209706571 422251762 310826014 561299458 203966323 714613029 210917077 646457336 404000370 935420747 137302371 646659073 704632184 717276721 433968707 643487060 232558054 346698216 941686863 960907146 606654978 770359286 858288919 980056682 331047679 430179524 794037794 972395553 802208408 906035814 652269035 902124819 603532506 660251464 895018861 996986331 176687358 634718144 126196255 354463911 863698334 891001556 618913001 910100659 282595069 751855456 299549878 333991354 826699824 834585529 133317305 669229519 1209805 280830279 684153668 932963861 774499646 875109208 293718869 606904302 701630742 996678567 794747815 974547344 998333350 998433310 606050619 616060109 217556174 593286821 846153635 914953445 907754408 938687476 905173125 998366352 551747755 609994201 680203101 736681390 948094070 980955835 796650934 990847873 731298880 796116812 964870038 988366591 102503615 898131911 458963503 518645408 572218472 973048925 551138223 998090199 217830195 657700131 106884448 880027165 576068085 926814065 684778049 832715233 728233852 968663175 679756709 898531472 729450966 945474966 438840701 698013974 737017466 965873408 976725232 989284426 687072596 956582077 579575886 881289936 335063819 826221619 277641877 583226248 850134093 943089618 230181573 615394182 689350704 860176766 996129857 999244005 381562414 596950070 82067624 165219737 545746429 793916976 336499170 850993396 523624528 884096492 851785928 985734679 952092522 953832967 44131707 287381620 819268129 991071361 165620562 230843765 576939214 956470191 442372166 695560127 773156689 954006596 213240226 241257852 451567252 834671948 955803862 984532092 133938086 868146880 133058241 292823716 489641686 586715415 960362635 994183943 652156289 948613961 583852079 903589360 511085902 736572459 370238911 437626552 785318852 868697613 455862107 981730448 302053744 659759920 748558819 833468101 81853706 778252799 373278596 819953446 382635636 948372461 639986585 987471360 400324546 411054535 985085263 995143635 257687495 834015880 880210025 943137347 884461132 956635913 595129922 662520489 303357322 970057571 860599246 948403387 872768313 953929549 765391224 803523994 855625610 862188732 380242757 892423818 111303717 373362789 311608051 628333714 510884146 779176216 857913137 865608006 944049099 987646675 644504497 801875891 474434668 698115672 781390030 853020091 666419503 860129537 277680350 524621915 801708500 875402386 814564373 953047942 318747792 564689737 21179038 441178905 79449061 183046675 950618987 999206302 660577193 888664499 218034151 345278075 18244893 796056216 416293512 550449709 425483641 960653272 626860686 996770011 608841448 692778273 32971792 887052650 775733514 984168703 559313840 783538986 949227279 964257701 928278721 979655730 821844513 919929834 540704112 760852083 758787794 827949199 479198417 749847102 266066528 775930377 553339749 935382018 922319716 932572267 124226316 420556712 595921640 859484983 761544197 971254408 832439493 864136533 313031661 542474766 6969323 602435247 138722938 743095301 965151730 977278343 855422883 943197848 580291984 953479134 546082641 876800305 652218286 972402783 399279090 658844925 658467392 709384838 883483581 939218716 142304821 808631062 685107399 939495839 481837460 664026410 791975486 882187657 996630651 999253332 584081975 744908199 906109883 967082565 535065783 891512359 515346693 557020857 617299637 811952809 170829890 939793929 627505452 877153463 488493024 572536307 783359427 912621639 642974771 673828008 86689109 637740747 376475104 971499039 765268629 895824399 361340847 824567245 756159068 824137828 248751539 854587901 39797649 932370279 546709972 898011427 939191345 980743670 67132665 74040380 704344842 804101423 394855023 835110886 8901854 262703731 487874137 627072446 266315944 397129596 2449117 966062066 302577565 433283864 866353301 987337613 445828141 845493536 927420357 956549019 944126093 975302253 544160609 815951322 520089922 730286652 686248704 726830520 520250817 574984791 148521004 949566328 747258757 812533992 109265420 335484489 364105336 527485079 85762699 429845068 162498028 880604055 690720425 735798946 663709101 982325686 974822449 991648726 953752465 984400834 507085653 993879146 807465500 978184630 476339418 713413234 479340152 707860930 268426935 468110555 611922491 684872891 478186542 770057040 891918300 946187868 424843786 877438454 808437666 845968864 543817445 941002420 68235658 554520082 638920647 717466136 342584091 991267494 908177413 996575433 69760604 461991059 885591082 956899682 86000315 405561102 227723120 477389916 999250953 999376678 462933967 496982851 601283363 845833844 96039399 251232988 110357041 470878951 177396172 582613340 191510056 338133300 741474208 900066078 768504609 769819052 40295903 94014059 81467823 808922076 268162731 879210328 605367326 708044099 154226216 917538394 945734424 988822825 390312964 480647024 318505782 431613394 432278397 929826601 815386801 904225693 332230846 739276741 263934405 962607345 812792309 841317116 424781805 495873613 757050999 790059596 457982583 568979941 246634345 492192286 641698332 833100636 543101876 577007807 13507133 199358888 382783311 980741648 226038049 738987689 452180615 809504739 671859986 754422367 315107138 315281100 204776807 298642320 859870444 974137085 902340504 993389174 209203280 976917045 131703216 533904900 731875709 973741340 413767859 897539199 136785172 625665116 544567939 994907015 945922590 949586909 617513415 637321821 388770867 537664282 699710806 801346419 528607261 676958469 285916736 600579019 340278472 665886785 834173182 840874776 443350451 832881695 646970928 994677561 104630137 187399165 883908406 897113774 219344185 396619257 579328567 614077540 404784533 458375138 685849896 948113373 61447714 444289826 619684535 724501881 760290436 761942128 274478453 671309061 725858161 809209373 559989949 791025031 229573431 802268765 432160796 799949075 816625754 869557024 563940223 593932687 847147356 892220296 746133548 921152593 507844960 775193791 341318130 360244086 231777973 992629597 645841272 821864219 364294237 871018374 52814550 615316449 643418475 753528122 292218431 355779680 308716361 869859874 998094958 999042380 249113618 581092689 802351691 821554701 397170004 646123943 186796610 478014059 366581246 433654189 988064571 988069078 896310796 901848767 94496103 882580547 891038008 989594470 442899439 691596288 198818105 719863906 496809672 751827946 188932192 595692670 860565110 880928689 563494953 569489088 128268972 364476882 874853756 990122980 889445788 925367408 553868264 925057056 592240581 745503064 990638890 991025986 475757387 493132386 5256334 928732920 535337363 852749453 267182076 458283642 921513399 924393725 939246477 953042089 116098527 752735686 986864914 995718278 95265991 970353988 370049800 575502236 330541353 360213128 37828487 475492873 105323420 279090982 996220397 998776710 451458974 725622173 793128557 829906786 520495539 836820726 583045096 960831218 319181949 785570208 257635744 385236333 711634155 961045348 661386089 913794458 39352460 254836910 939751944 978702754 765576095 831735709 306814669 906566565 901874321 940853986 965457116 986924838 611077706 669347585 574236794 766900826 945551673 972759532 681704669 763097089 88440939 815209367 54999337 442530500 359417905 942329001 870345292 980595058 947535409 985594526 930006253 983152521 273612102 697494230 786383585 803343492 927032609 947509561 213050925 937176289 330284262 436454814 380052268 876359434 547033582 882219233 388149570 640147600 534641555 612879894 702805047 899919636 688619485 737276722 236391430 260672465 833156312 956274535 994301378 997827661 233717004 707576825 590992318 592612712 110728054 879816294 323526142 460382677 224304976 610947966 163337338 468524470 240369614 699494804 304338938 710552586 466136278 975912645 365161581 896887711 591145403 824670356 407491194 955747535 737199610 896986268 801070836 933910468 283767087 408178435 471653549 542023978 314555749 877090919 578568989 810157311 527880788 766467230 482016925 749862176 398181341 719201407 552576641 584908220 393944555 682768094 87412125 964839422 583974514 961194763 790405132 954234364 422122704 590710345 874384967 883609250 106479990 476241227 608915357 683203141 567678816 862498009 531926075 928050449 372144055 892625468 106691242 895379485 661168397 770460095 884086355 931077176 902973019 967299426 237964922 895261764 923055269 949869502 360388917 612528268 589943786 785028996 51283309 657594053 831423305 943948027 688464510 840966593 843501494 968817041 822302180 965965440 941819488 966997891 137790390 581573615 262172032 998320662 463278766 998508805 533191773 583639615 304694546 974596223 416049861 603194544 150008166 185998526 317849008 335229838 479930123 810262803 522770749 901503092 295987625 918654395 236841856 459285627 230626100 944754360 854599388 866183223 939982087 970487319 720631376 896137973 626611144 870346237 837452649 848032069 172283395 970088460 470982933 749829873 349197662 669900981 874838117 941587905 90821840 983862207 570513359 948931578 166900858 368503195 128286458 922429701 839268929 879424722 851784226 895485390 478469669 571738368 199543674 475525579 485231649 920084615 588829828 615700220 96572318 483456541 646233652 706961727 691816981 914483163 893416421 921346501 529364209 945775955 275716325 393972607 205422451 499436746 880050813 903726751 859186211 940154564 851804052 932621720 139092763 546443801 565066793 874049843 389812110 993408771 304438024 651953697 447303354 844345662 504469877 900738842 115909339 496606862 68207293 307711033 715689095 788103483 428799651 666997041 200690982 736797543 162807073 302413030 341846165 352315348 891206780 950585367 675311174 782471241 656203499 906028883 484051960 681241511 10227226 56481608 44146428 873853304 849274197 940551972 969752558 984575068 678603625 974594335 449684404 708831658 763566912 849998890 41464185 94007258 405707802 792872667 117311624 590040588 557356287 820657076 894060067 994085286 385638280 631834941 466300670 948137572 612909791 849026160 889831956 907586894 587870190 685446880 983301978 986635751 487414072 605314827 336568930 405354505 517020489 973305167 415353352 893299099 503790919 827575530 764340949 839399451 494670329 789005309 45995861 930659396 838282764 903110234 940714752 953852714 866918428 872057479 619457582 824862513 167071169 881560214 103694021 586606556 113311027 383745213 459602135 730963862 421517750 892460068 676535912 729820212 644162319 746314743 431175069 523572431 687900831 974296748 779523716 969075042 218065948 746000231 177700551 331938093 530556345 683859251 868823622 974196901 278040669 818394096 356295650 771639898 259522958 842440591 482118446 752863022 398961233 810603106 242131758 818294224 563465809 746851760 378503192 472026961 859911543 986946433 136637250 177949896 858025751 906904297 98550302 498519136 62899831 713813487 311331287 662862188 888533087 968251827 860567143 928399902 373620622 676923572 445360682 726545038 835119002 942196613 17886941 741949860 429730751 557422244 538131078 901817842 976322316 988226384 45635858 660792399 706733531 726357873 469062460 961217413 316598790 635150452 939012905 951049045 192219949 501998999 388940255 560454261 855275614 903701157 992495832 998388985 266275151 730181727 540229659 808584257 309213846 987392977 569089706 951954938 818908373 867875407 801859414 826756883 937595655 964978318 316506295 558834965 994611463 998591452 559167726 807497859 975765154 995333810 243226184 775164570 628884523 952846021 397578822 842307178 994482497 998079661 166642439 776737959 332664214 633292783 86040371 769278529 206687718 253830463 984721403 988195107 503427821 928102429 17932102 748805752 662313275 828156275 256514121 577508444 117786466 512397292 901319464 931430992 216313610 885839482 663052084 819043891 891025009 981296159 593721843 758724730 652215694 746590494 78599253 871909358 358610406 946803033 453905935 486287988 61262224 94271657 336615888 392794281 628093899 681932104 817536857 882991994 945699693 993741148 678270302 949556504 764655334 985738169 824046301 978927430 144992698 964387548 318009008 962338636 372142420 606564855 704368519 990141820 935352168 941330414 472051112 476508763 636871187 837696854 333118258 912745418 188818934 884606588 13920548 327379698 182750196 543753759 497589030 978765229 395631815 839817075 408792411 612418610 711356111 813662866 878208561 956413997 48808753 383343329 519319119 821656558 583956566 676492460 902018793 958282363 817908768 993131657 866047235 904045813 722770040 861383084 510127072 759647033 751033947 963774604 762056286 869254612 282983492 812393933 762477073 861474504 852346963 854142921 383387712 522126569 837420494 989384677 160033796 693798112 508066701 617667662 347936931 844138195 418097896 495234904 848144487 927195253 602948878 901246262 388018783 548606137 646566845 934747520 23054820 915243358 686003141 881074447 826901952 871271802 145013191 982986687 641450398 680036617 451312143 523616856 47906410 206976287 492294232 530936843 806410307 934454946 554057768 707188720 194362685 411376549 33758423 75499568 79761053 830228159 799059088 956404829 404040834 706223129 788128253 828483817 752274582 896936690 757223058 895916932 740209574 801468590 460378731 461148776 481826369 660718026 721709779 975076444 724551608 767933155 474733478 826605775 459531029 533899950 425155239 438196437 833507488 909516270 12420262 359799319 292973658 828116840 515528177 959536681 674757178 872723820 314139205 355670772 353137649 809061338 430079865 695101450 156173347 639178125 364339994 908835052 156264890 771163373 408122262 512599765 750597926 808389673 899075776 951204978 25382752 577598852 168271130 952929419 381213810 788854681 905623159 939074825 89313093 744333256 915204723 926196800 52944661 253838575 125817473 904870241 612287426 941448059 459288175 489132524 275349318 749200822 749521960 937810648 20861484 608573649 694565141 834876020 991498300 991931985 268365975 700760618 5784907 453622104 912788717 979581481 639331196 704591203 552932000 913521608 735194828 796572634 742474274 851303070 721862568 876320367 540922829 553034516 291743703 963810066 898326848 916583245 657574452 672435949 812570007 839987198 997081498 998451063 717988818 883236116 556673191 942936048 461093950 764788507 78949570 430070492 18291959 140486597 778637967 806833172 1208774 139534848 902991544 906714956 827865477 912395296 966579414 992069142 460745869 836251975 65720422 547468407 500310585 887158771 670308624 822503786 838148575 947513061 445788868 934092648 437311678 983681934 318701547 394319663 774419834 778848975 512879927 717990095 65359036 938558775 688302991 972789556 634031303 878323330 843003597 946015504 814844221 858168027 939508656 992697915 875453264 933460025 875262382 934397951 677339129 853128784 143123205 464351876 858005728 890872711 966588467 974402949 184591145 829980822 83527180 863690413 272371104 996773238 724676589 814885554 741834780 879323600 200328267 372376780 160130848 880122361 265973265 889955230 67438190 545485074 829367933 923020897 473353061 663250317 252464879 263238912 650499676 826728188 553316135 811059233 567291452 925892355 9191484 66968156 369774884 703881890 623407654 883910668 434997779 729764394 741295126 979851544 341818665 531945928 265254750 710593632 713603382 785241779 200891829 751217729 315794031 581748010 708825068 812679242 103248379 889242639 444151382 482581802 759118595 995120586 880832319 989005774 426063440 441916837 295025149 573075789 66061083 466225512 235417650 411843793 710487226 952269118 364606433 997999752 328671451 770154144 944673389 968919100 815448230 998390000 165018558 794756270 364083929 463306270 383869366 950890742 480228646 567508993 288201797 789699550 639983275 689825078 877231576 941145895 54149756 619410266 313532667 900487160 936614806 995166449 496058246 843532984 187459123 285674980 510926277 866294508 81154998 169062464 940756963 962553087 298545252 331566196 107674858 750630239 122378298 536529467 255186830 762833741 161134002 731757711 395557266 769672032 931311362 981741811 814597933 841968176 660897778 965719060 584063070 607516419 618453201 946343604 984366013 998750733 980596197 990727378 307612515 485475479 872576053 898869689 971904815 979756420 175756601 678562065 945671467 987678052 615738958 972824951 98265859 822190212 404847446 874738693 834346591 936633014 457157213 734174923 234453335 854426215 484512587 497913008 906520206 914987099 460534176 993852052 385279501 697671529 160168143 354213766 325721063 824800268 644008291 781969044 831659172 935228677 167387058 781133916 227711087 878802653 6833831 804913728 311522258 690255416 633153599 977551932 959037747 961991510 752553571 753090391 84412932 965169658 433612647 577907106 153681667 817381915 954749613 971777486 431866779 868131091 154117673 912803554 74958632 365633427 993160562 999034010 521601475 957518380 412659072 890571070 198111216 413863472 193203436 254084722 546341132 868716658 219823397 371079309 3973151 904781625 917387905 973213526 362240578 512008768 150059609 902257399 945598803 978842178 294616334 957844803 374188737 843885148 871572417 938860201 804001230 822791485 896834657 981793312 499826329 631381276 186538783 555929947 908805848 953562884 717863387 760212948 665500009 722508177 614187024 676895817 829626153 942602410 524336042 866574996 681330946 840411462 81542145 194409669 435993088 522207240 873524938 938129123 68297205 390854910 216151832 994003259 73763226 383052323 798494448 949252684 41885095 651473933 781768332 867273195 213353003 990453434 276681669 482554503 724157134 772661347 347291033 543324276 516908332 715420700 62918705 673255222 466184163 573103955 562069075 691469794 46272128 765371708 791512395 971434417 874081435 933524433 259765375 940872326 228789363 515553321 123045277 615261124 916919642 996931165 528722196 532346687 235493754 535699905 127492805 395167217 818896180 862734383 546188835 836879311 353066818 575951018 361694845 827584210 399264684 750348695 724516058 759885541 205519374 960772354 509691532 656836293 610299281 985147737 375373490 571110803 166744378 498957783 54654252 888618134 644351639 876837674 781109575 870639423 472796813 538457156 908310664 983064566 144735193 620343591 433494841 711624008 407420527 512074161 423278506 501915184 143740507 860856635 236004550 657979776 61130110 170050468 338894766 973943733 650008231 826439238 575881757 809052944 362576159 868755149 794427195 898221143 516095337 706803051 89829281 728981243 608780917 808978638 935846649 962914738 207087504 324001420 557490154 599819260 851474744 908781176 195254270 328365484 630089625 672954147 374935696 982530895 566574084 769253528 932145407 966148787 672298446 872942234 564640659 629002244 781441283 820769569 445488234 448366788 326609161 455783152 203602372 848135141 283939824 440737909 54315011 393067460 292983052 340174357 251237783 805038036 503099464 903544071 10725269 799121232 910954009 933885083 338666381 686696922 48903877 700751726 539030620 669951267 54737166 422834782 736982720 764497106 749128446 829962254 135943944 309019806 102581435 712766455 356784408 788520051 328771456 555869213 526296729 683018165 727001923 984608328 713232332 784866469 283554902 596508689 660773095 771386939 352460296 481249667 953774836 963727829 817705150 935576149 538108943 675614755 933671080 938101542 265434719 533891612 38891775 556413045 487058266 826800913 272853053 674198098 213751867 473935291 431878486 986446958 6185530 30333422 386726803 533052274 120620653 324717393 328116262 817666246 940124195 976778899 773535024 776608821 462869803 920331071 896148470 932120891 724056 586659890 289111256 447573490 723410034 919731194 640147693 761708838 231406151 973101093 91989835 714128532 369466718 653757409 622772368 945216316 979805771 980913654 327086677 515045770 472765590 994696252 2065119 502839256 947266485 971916751 832102457 984133473 528307235 753233962 574578890 728943542 647940238 737888089 327247123 714619135 742945191 773931241 724294790 944859593 799356148 953625264 761512027 872319745 246445448 323314437 27929552 358107281 131373977 283417419 503438639 605667950 625453187 690842594 628249101 747679935 595486563 983114252 446384396 598125086 318038524 469138609 793573418 877263228 601747236 778913719 483840170 884250982 291572829 618781515 19388104 584825370 165216013 320085850 924615562 936578482 194004379 205199522 751849998 948199211 785229407 870658516 340445722 880429936 891562066 986641171 298062663 385347199 570395313 805082574 38424771 194372441 510317572 923104498 821131578 937973290 476605778 495032426 528742636 539040255 526034306 741236965 126334714 570968858 979602981 997909721 550379326 843615913 541940263 625454877 489406807 636777678 228470657 593938753 676709967 946412416 635220249 890760232 62380267 522440708 523059121 973672129 942631557 993199409 957560445 984753205 129609333 870226049 14624110 367544975 65666391 998028062 711445638 922211527 456054507 502116856 944891206 966210361 503956060 943584480 518809933 735931266 544917957 804214116 190605964 823581827 687866929 849473443 266342639 984207593 940896653 989036128 648350203 918646015 437626679 644570397 766562693 915173241 407295424 420154673 300014318 441077079 591816054 655251509 862213091 878734519 619292130 848493574 606387612 987378315 824408972 845574458 422760102 543555472 567729377 906374075 490145981 924663450 290230493 558887014 53105718 612539720 247320484 671151268 976258235 990967660 871208924 969863552 61211672 242865166 707443348 908035465 546406957 653346211 996197674 997382117 471472797 756087846 14592163 501724331 171476691 261943059 166799881 975226670 55979812 584563652 323833009 492817941 957355689 992296767 799163943 826576027 898757740 937243819 537683223 809376972 210670000 506133418 88360782 650535110 645027592 667800698 205564164 964070382 133424578 962462803 384240597 667555575 30681358 471491328 735616666 926303474 546381489 912953617 924148689 971421105 854169756 909235357 124696900 426647433 504141091 727299919 329009784 395802218 70690122 829857305 658620736 877928757 18305119 528779283 755932617 985489810 177121819 253126679 711270173 712625352 86792431 209173314 7784753 78383882 931191544 979442423 587001973 935311662 489150998 971862603 93151232 770740914 939432458 944170152 158649365 462554652 934513278 964536828 245688179 900727558 475403104 925085284 250418678 629360397 679416783 782079337 910261135 949360141 573164352 601086034 527613539 946501305 675218473 852498073 252490491 956752297 549657052 652612098 764215662 994331896 271465011 414438902 818293531 929050696 199684580 672816866 530051424 531917157 300660293 610300945 317406285 363815535 155721656 374015446 599035857 950883731 63370815 537475851 60521708 443545180 150121210 177958932 241343782 312519333 392018706 822330367 384801054 963903476 844625085 991207410 70715011 844698005 392856009 517554262 352896347 487638277 721052787 850278578 637834882 797856942 857119865 871837448 648210708 841128224 81640907 492718712 65425268 248279742 770901569 949337221 47247841 129252778 157294195 664081713 574906297 726744955 726717215 981073029 764779759 938105337 427184126 720093588 700674999 726738202 866427910 891147543 284884972 752621828 103601297 319962840 441210893 909279391 367280712 378313221 894153075 912932082 972111969 992709830 355335328 439639157 33284838 47002697 399714909 439792309 127810543 802203503 343245344 738398839 491328899 772906586 602672558 859636967 217331001 529202110 133872490 816349839 557102843 914360570 965822044 995212245 523359412 868225033 582643551 757324856 427820448 499063695 115785213 630763635 780159577 877960636 149651527 312699848 870407071 946625574 339973220 465423004 791142536 882697551 740106033 841387016 509237486 627775959 76647532 510682020 580573240 728296649 62197855 136276579 133789167 725111453 424538940 806866369 631418254 671228908 878949027 987652497 158624271 212847747 75296093 699806274 345124918 408018388 421499704 820710370 304545013 652761049 156721526 435023790 499510882 741895014 680023380 811234461 119047109 538977726 995546225 997058967 77524363 797312898 168991529 238181817 649089242 703406977 425308647 440953852 618867637 680425735 77125212 719163996 981859205 996470562 857600769 862545976 653584393 829138166 300425419 721103630 850014633 927474570 543191130 996108682 221415851 708481069 974746333 997892025 234403264 699570248 629878874 744169913 257719965 985118429 364807688 863176392 132189854 596422708 426193228 966789478 247715452 368414320 716028656 904007077 144499734 350302921 119347284 496634334 215304167 835878499 98227047 401607361 461057240 666132800 967299314 989777343 108941010 982028564 576393403 905780520 194246937 369801914 436034157 902200425 532683819 920051208 233258442 869645397 507693338 868688281 727369412 806344395 78093059 183031506 764683609 974319611 415159088 525652622 486318612 623703175 915127281 959948600 260412489 516771577 287050217 688376183 427782393 791304659 499561684 754593652 187658458 575023316 141839824 694309767 459570656 958636352 576014900 902387580 939405779 949683197 181207544 889144322 484859097 854758829 59571123 832985493 884033759 920825858 198091372 906347522 166106611 422837852 913443675 953630776 324646632 383115675 333489778 756475964 248155258 674753298 325783903 951349771 59448810 858685203 214679409 799667902 10529860 265094543 467937937 676187985 120228543 703592391 501710713 771257403 484778456 787721133 807704268 968568839 378695778 901905635 713049420 976125315 521727343 544393983 374608615 739825670 99290471 716150993 281349022 684662103 329505000 903740895 629353404 815863471 708163861 989772951 60456576 870435389 908576899 993879087 406005362 909070857 162188062 710062036 119560089 449066418 790960031 832394550 371925574 972250056 123395299 338361822 848321568 864145104 598803321 643540037 570028270 706843001 297122708 541184918 517645031 711432918 124693315 170465305 14909458 520467066 752904993 863692828 741789487 782797312 602977680 939048156 453232552 472730443 591421438 855995680 867147745 955398431 159816682 728605243 40172390 595682955 426364606 809150016 879867043 880946743 574264817 937034658 788315435 933467441 720252249 952295576 833552229 936969233 681995142 729115357 712542175 727488062 241403353 346961703 769890669 828414642 55219738 508412041 10397431 96932559 235811462 666361665 324914617 733413509 845840271 969256302 693031845 867136164 577749754 886069793 537906150 574346114 971225361 989391188 954989876 986794727 700724035 736881904 782765907 961520221 867729425 904026511 695684049 713168765 751630576 806567332 193402246 887919346 527269466 779849205 698281676 987655453 185450607 637853582 915600302 935798695 27118201 779195606 476628959 738348878 296782773 549221895 18634741 164633156 367632076 958555294 726682124 866979096 533465704 848560497 562777558 722124573 682763109 750268089 202938207 765184305 875521610 939022015 578575992 758965126 816660692 947683604 412636300 607626431 352649127 456015101 797526823 910199720 124871153 807974482 116626165 385609627 940468166 996859493 15252407 269709144 80465049 358050497 174232148 444510368 359416726 887089472 864287018 945192364 160834748 450945147 382020451 773982791 64611710 467041753 650765652 785109439 297213089 312058325 978458544 981937573 886176427 991489698 180833478 905963953 736885498 983450431 618780771 974187557 231267511 711774704 306067487 560992952 823264 502869267 54929074 922622757 512053429 617526877 48681113 709205280 514343210 899152870 214289570 595813723 75072306 132166453 951287444 976061410 683153544 982720063 680920125 732566632 890070591 919575050 338897124 994602501 703774866 795696244 294713598 646338736 42898566 518061620 185489960 618699983 128185119 442682326 776311546 903574371 130494075 779454481 836261736 896525076 657236310 817191487 513663129 892614822 278436415 773512955 906361894 942677006 344507779 740400513 112127368 356963984 844061823 898636165 123297141 905349991 887739370 964556781 216456644 778505301 77826543 851409996 45886071 924243506 446888637 852717854 239745302 911653131 957911748 994234987 401690832 991561475 374518497 459602830 369066574 990536838 984835511 994202395 960032025 978451936 359569600 453982638 471201278 547633923 728729703 879531367 972606396 996744605 123523774 521107856 400475543 759000226 18216608 911011778 802086947 982236800 709530747 984071668 78025202 380438982 278658721 305096848 526654843 768385532 27539073 530315143 630537867 819099063 711810523 828892568 108261618 750558691 439622393 670623780 61776133 668703352 30905295 379442586 219893305 845833176 303910988 942905824 504262913 605728675 720184176 886486019 794819624 809093294 628213562 955639004 480610174 973960473 164364605 704178804 422855046 877797722 193084453 442388428 332169199 759372514 576612857 581160983 237980564 407692063 964612255 977923112 275969514 403500870 973443206 993617618 546190957 839620863 737881474 994311897 160653909 676781057 13619738 770638786 998642990 999066049 658788964 922205744 214605616 972954156 424453324 673322156 43283848 544216923 124066824 804947572 740734485 922385368 698383926 898132984 809580728 834545323 797767986 841591914 322086627 845239424 213039439 640288479 948725307 996999181 758262682 891588245 426433929 986161219 138066055 609410233 834967871 974906373 453163257 671370824 372748281 976428145 504503833 731777111 756404410 808250314 687656582 762084246 218247679 334919857 688315513 928922332 538677826 541211021 817035701 852636999 473448578 694379534 190991540 381489354 622857625 876441315 657882131 797063672 74014303 391576901 895942230 994295971 143873638 436485975 525398638 765302981 9642675 816541374 642532142 770614106 707251081 960525249 361526811 714141329 370907229 597740382 528615383 701302886 193288557 587439895 429889371 984744148 655055259 935462525 100069448 142638009 306124804 801199059 927210968 938430045 135666045 145343293 167356129 924648917 18680600 859455518 887025807 888703587 768675382 968556703 772593654 829232864 135565563 647669111 947711502 978272567 399061920 461462995 686853966 867078024 591168038 671264501 836247349 916405909 169475931 758700627 72261611 919491457 645485758 794209374 57795475 731194374 948166714 984151372 112709819 125417948 129374126 809960116 540275984 850361433 843503332 955424579 669601074 925584460 185746747 837499710 303253359 769552653 21934438 557104198 926823303 999003895 130447102 525464983 578801149 645374680 203565619 688081031 159124528 643801522 432104230 705674473 697723861 856979237 263252670 560259289 844872464 950794456 527792001 707122480 887694566 950999885 920028793 996502342 340468745 552848032 567100815 953206760 913326936 943074790 599082560 654638284 722023567 818399845 817360207 834482021 234546629 618524162 587169138 946634198 424749225 647257085 943552446 953523199 3483516 438384797 667238410 802712880 576375538 677127386 129460004 182098940 474217611 833044089 989655520 993419466 621674766 945668795 665603866 839628569 496831456 896028642 985746743 995716184 163439360 622280979 948389827 977766723 228515375 780579178 987070108 994420287 387223497 578600327 245600898 769550594 609331061 813698220 92616384 976596292 795560637 906709038 17860412 91406523 257851303 665955661 708461123 802285410 470358304 549812103 578979411 614136542 843086314 861352938 140000408 410311211 957022447 973874597 501016594 525511459 300965505 759416100 691915279 820136708 51978150 920965971 306507322 990012787 195352337 686770115 390976096 895931553 695342133 986602002 419330896 896950569 789796991 955396830 607483050 759255287 925790329 938914229 414988819 846492786 608409041 832989408 147523733 505559316 686326242 758844577 916495398 932569527 370086897 850131577 550833557 769994643 878544012 921407252 518227319 967142929 523276119 605141401 969498870 972810921 738139133 746772601 881410403 960152583 158324988 380663227 201184385 457191521 739213680 771800207 378165234 620985595 118188834 630270888 615046047 835262483 260264892 889710621 193954781 739588740 201520941 616853755 627605812 832545816 218571117 478773738 313437993 952904504 341422765 952756588 876792669 962816214 203433555 978974378 71314426 79048335 652741298 995035790 890635850 948906432 866034119 932993467 60214755 248370645 116363912 143894373 324121421 417520921 246762288 443423273 129983121 241397246 347915168 792046185 884458020 917522065 841067558 913048294 609742734 798603470 417747825 593476674 404769452 870988320 478925283 687189460 173068613 893354708 565304825 720049648 818252683 839913827 913634768 936778516 466079241 764276273 401483656 947174541 965149904 966825156 426931407 475394579 683020919 849519099 727207078 735838033 426198404 709751125 31445512 755645491 453262910 454748111 139469767 719195357 72552731 316708854 487032572 891065884 307623933 863080482 518262667 750944554 530630764 991989450 421445981 641394436 760984379 979551463 853679351 984552718 631035924 706997528 428455628 480147168 392435238 597791106 456935731 699385614 302860280 780563382 810584531 932120450 93153631 914005658 144163017 719179919 548157064 784038307 778745067 983689429 696207577 895292037 563964617 830696650 9357717 263046725 677599300 816293150 479247377 954909767 365627143 926191778 204318042 420038209 188395765 434800490 223667810 823762195 212860453 261283422 462676644 858586612 280040060 643338162 179232260 427043631 463523708 576673116 470801846 933700733 44743245 489396208 120865059 455270764 556486000 916799233 215750196 754265530 279778871 521856084 212920465 772410870 773744589 831208600 434456966 878656137 617164696 784923772 436424634 945173902 989065772 990835022 188595889 496423553 929671503 969627062 807046768 895087724 28119302 623298958 890846644 922417786 225020594 989827033 876728646 964321966 665957659 818682017 552379340 838974009 317962453 899796020 243115974 289580687 337876994 810241090 120341527 909700451 317684188 843749521 39574016 706021352 838357266 944512293 445878103 890337799 881096282 900946620 871062059 996183814 991201736 995734015 623925095 787943961 585680676 750439701 293517335 840082089 638430063 679303897 878043426 978616078 709651619 801962836 775749653 780729262 962350144 975076746 286342695 900378902 518657003 701949788 138059501 919472081 19468379 183057426 439440226 923646088 88479345 455321162 362117139 913381526 344395284 877323314 599283746 858230242 921967764 977794530 298317802 774709120 275852475 621896708 701680836 782509001 145635657 706681758 164144827 944635880 338990181 848707373 872546314 931293364 775760530 872522790 332498368 897345516 435625020 711789240 710598214 972484910 240277443 476655556 433017523 683646581 329486597 827219696 137374912 672269556 27345797 845111731 518343350 626647769 812280771 935086080 757995572 808211701 606252028 792072863 781039249 985418152 390096511 659733105 202997610 538105925 542808615 600847242 62894271 258023733 512639002 522492593 770812457 985071605 156536917 236002547 682066745 839848963 506334698 630919988 211207509 972856818 679865052 886407889 672181084 699365603 308111306 867638730 126232900 412615277 658459682 785351219 293230767 761660250 194711570 610167894 471763861 817263377 39207630 646143861 886569524 946733060 132823729 705843138 61423763 335181850 570629265 785559549 206920885 509505999 469152284 761224364 185722581 230640271 25274024 766088589 278907819 938937127 986781581 997842884 985227115 990815463 362059178 492486265 492334120 901420439 685496556 691405915 310229434 760925268 602296214 701515429 3280579 425560098 824909042 828114878 70620178 116912854 263170942 697181736 195536021 877675203 169802877 790850433 96943491 478767586 474009350 527166653 335721275 748957861 764817468 902968428 61126783 831151941 276158223 485771916 89140496 240318896 296626233 427361509 204000999 836342082 125369139 354722715 233406965 521421183 354536836 972239839 751438689 902900192 551012804 839211659 425102686 793344783 991722831 994694312 298521019 313610502 373774469 378521625 225743604 498306062 125131944 335383853 267440827 285717757 246432856 785566224 979545939 983983082 42307962 497151068 495221130 761938349 287942661 332914597 753188888 867131361 328619602 762318193 557390893 792653299 995906339 997626374 381775779 601666348 355337354 907167422 493519545 895893998 988422454 994042784 77270900 777133589 567176432 645022152 224175574 675596575 977191263 995094445 56851247 742380328 407001894 811631707 211662023 379758240 445870022 757790653 190496781 722945564 192223500 372186201 241117530 318920972 233387923 539089740 725506100 785551130 416571960 800207180 125675757 268681322 587476759 990768828 270675062 403038542 746578226 834613914 927297817 986530587 240901593 321460767 266328308 347453881 121153478 240028687 452169887 453216986 427954162 654259486 572588577 858130029 983764160 995976873 82158303 886982439 638152839 645234563 679794051 980381040 79323312 590862348 123274918 295584266 203972342 289920904 243061547 295824567 770966601 922844506 505533313 984022075 603312589 972070133 845297583 914602800 459033808 544540377 594910837 982916504 153507946 178752595 16619942 906200790 358824155 942529596 151129244 925578015 85124467 677666143 950683436 977461186 634230018 740546077 258936079 630781163 159975544 889356761 719049506 903793166 67032527 745516400 621422320 863783828 890037565 908000902 817242471 962566523 580153399 711149018 784819478 865013307 500667865 532488840 338249643 790009556 498669388 545124383 57401067 530038653 33407443 841299016 924857968 985135391 592598793 724735712 309173805 518451719 707277747 925147111 755298505 820406266 566594409 806449577 80010491 606101827 67806360 91333667 5954021 542820397 391598040 758335138 534273878 925427007 133890336 934514460 508420537 593944094 970931986 988477892 68888624 274027891 49902807 592918322 238747713 241704589 51487822 82922718 471386945 523157087 369362262 591843769 950967288 976485164 748553790 757558740 280611695 780418671 360382881 395736873 709806321 931827050 724864698 935952860 453195472 624746168 73307966 741868007 616608053 698724555 885221762 976786984 587015096 676232395 19026508 844766692 944493729 977951671 314975783 871222118 567848212 797654218 889612339 972538355 682786369 956854988 875914725 877803107 554019353 630540101 419746493 801380515 883367086 963536199 498059602 510620589 974558982 985614423 401688683 759048394 488887073 861931192 368473780 630314210 494288068 516111937 811545701 985309787 990536109 995940440 316516476 731014313 65888640 587508133 446713918 651699744 998561029 999125957 228336320 774245416 270322553 312379880 675072279 754931294 808294801 894789098 165951021 476027856 978412667 997540709 69553183 931933683 218199606 499544380 400715594 759041253 357960232 822863702 598964417 973385062 159256380 832781637 993435044 996287385 161370757 484731443 308453935 853156634 997597314 998869858 264215539 967800240 163282217 660815158 208835199 339254617 162854087 437169030 45779033 998879322 945244085 968829888 788514389 860939453 260837225 522828238 386717913 798881371 469327480 635922940 748709169 752579585 590507457 927836635 759119210 872854557 706859439 728065832 848681457 862647686 529982105 889087436 70355115 636817978 812587674 882506934 568582003 833250552 765744487 826800098 149203949 195730175 852298017 937839510 125950121 296813316 969549550 974917356 146583128 733765689 350017741 451406513 413415412 852442675 984826230 997563830 343414314 626756268 604145614 996441135 501184901 813515899 64175382 188921331 790450072 798065098 813923775 827402058 977579864 986649049 235663948 862604686 470354223 662262378 779749546 954233139 622732339 868059880 885284884 932474210 885111557 963357081 683557131 779910588 866597383 978270657 327398878 584415405 559022093 635808094 665806665 690639408 185219301 642892408 444316173 964250853 107267503 945092272 522501476 640809189 472530259 664165105 247136494 987902248 891828229 921824718 751498152 988639483 918940229 922728126 716294395 861721870 629803310 855564698 148482771 198144506 375576412 586093084 576720305 748434522 115804199 880569035 39377231 505424434 251511852 607497266 159761701 506746297 643874556 933506343 500755833 632002449 700675909 996793186 571759907 829933773 129633047 678584543 759148614 963998496 578933004 797460403 511430241 717681159 891163570 991062067 530227752 602895858 669106592 868669413 625874342 782340726 427899619 756945850 285693004 327073647 621705097 654693260 578434063 645052449 70572116 200128109 75522656 302681117 955454180 975421723 676748801 883271732 806127178 998117996 290321309 960259507 771734821 879044890 846447767 888973628 913681352 951494652 817475984 827562675 543355255 752485900 621512940 924359626 583250836 916538726 798716921 978459830 923999858 933050312 756551017 778236150 712723192 908373480 790913356 982452599 821462186 923928634 374071428 547298648 479089085 990611613 825131751 917000867 451580491 979856910 813979828 956625845 512266032 832535753 7791714 562423235 554486523 896329267 226568408 353134152 540356618 541101284 466520097 733604676 593657410 878813968 247605453 963523353 239109846 742441710 76624207 435488435 864504650 877866144 784425217 840321559 764661898 807826190 349320380 617159300 198363132 517913461 318828790 418689494 743736903 969343694 449849162 680257547 441237220 719714534 153532491 416164588 796100608 808838913 132588359 993423140 629160425 887368871 398196439 433366961 536300650 819810467 637005972 945198028 543784071 835876279 996548361 998309285 284360899 729021534 904371985 906483623 471905911 686578809 945122494 993333232 473557084 774131371 907119232 949654543 537331574 557834158 491981430 937442833 524251011 910739519 173828505 870180695 300404288 498261687 516308690 534175464 210683018 263283060 853861015 882257785 741510039 753775579 456026914 498230292 731847445 760773567 925997938 990315020 967614318 990685375 762699926 958016527 678090345 899823249 837461112 931506434 962863012 985140569 486241151 559805578 858721522 916763880 148574392 778244399 764846157 936404290 686882921 776997515 455416619 579139846 102142190 297537796 244751856 565688945 438261498 510649233 541321557 715516834 848236857 998098732 365603414 384428419 234470505 909357677 784700092 864434972 595627714 819623334 534478454 705022933 794668790 872605764 165018221 503690533 998285365 998982821 672531944 803368821 800373846 845938946 460797656 546485937 172674131 865425332 510649998 813408163 663845876 981602730 234396325 902101329 427058646 983236003 336999880 975314264 156064998 319181346 42264993 110919924 539112234 938186382 864724663 916533641 334764154 394492391 313882830 490857719 464061880 737987489 772450232 908973055 151814544 451877629 206770291 451416954 949586075 994707247 730381581 850224308 273102743 845971262 82829699 309171376 681190366 847775711 93574012 395180661 296651093 984717457 75756895 846822187 536810136 631347312 181116352 812337324 701926605 736716132 259753358 844334320 878304717 895746932 445222417 739082826 437010053 466512803 979022175 988985923 211223 479569042 607593969 854217189 214679466 414603569 736406956 914086347 903933513 906914717 781279386 847217683 84128048 417346835 447424823 660260372 519221722 910548797 815367458 841404382 681976307 906050946 198909246 878108421 663843027 846605949 976243485 985805936 810071294 884188317 86190421 652143862 355797821 741988168 874605744 987133848 568892894 653385162 168016867 766412140 839964128 942254449 901614930 992238035 273263027 336572064 954979534 965935526 184159230 391294351 149537742 542134039 850487398 906303507 273989947 734481550 59720426 670350548 920312883 930057663 72999719 389531789 786960895 893941593 452438816 749018756 568534255 724936227 175966083 683322419 267348547 972346280 757616726 957607712 405680023 651510889 502049303 511350399 267849402 274431079 233145879 713926485 778077273 847795250 357340138 809532022 16280735 908802226 228352188 569214033 410654411 640197712 904109694 976414179 769049046 846621163 861023656 861382316 173704014 457345946 649153265 868262466 471705183 594788177 403742181 810948372 697609107 927446908 675642569 939809864 860953065 980695330 625217986 868147975 665932260 705404795 563061557 721933161 310477529 317250797 310867883 988142589 851964636 886311514 527508851 874590684 877581629 885753879 575321911 976283723 234606007 239180610 367794562 374330481 584886199 900615036 407967684 547622775 132245019 773886261 164349288 418180318 284672167 860146594 250032424 463821283 6295688 576504640 382880160 736596648 972642806 999148172 672912397 964458544 305621721 418454335 23548779 602971542 864904139 891275528 732945832 943159883 656942175 956961587 466258238 485956142 790851773 850433846 700823700 913022593 865548574 897227352 466984418 559003388 597064735 832719971 557719293 880821412 809535496 898916123 980416138 994473941 110085796 517421705 753655317 814080489 343126936 614451179 636503492 730638265 378435712 766579364 538561146 571087107 189206489 246466141 949826002 970201920 854937577 905209549 979177583 992622722 852553942 965470612 373466106 996098242 884699562 983017492 189560372 191611721 140980411 435670562 158926105 353354439 88960906 543073603 339189413 482093652 284306615 659258426 799781717 824003574 319165369 470002550 758602635 793136376 24457617 491269901 798897091 834179360 498386540 780928398 962233654 970292941 102680147 152468943 346516149 752590318 13561524 879208217 896612760 899902634 970064691 972372732 313976264 333219733 453228968 944259263 500955609 962536577 601010935 934857263 399132856 813010093 146618055 299432867 335243770 726631951 972511769 977292044 851871076 854887619 287650341 385098733 468350201 564696623 377252551 414686634 231224038 705926195 528415408 929365872 745424065 844328352 57782961 865317984 907914858 983844848 376735231 693710454 6065445 204877388 780608975 848177346 185991437 731154902 398721131 969707443 767144191 958458166 925857605 942818423 256502116 642255496 855453439 971203872 42583944 231942846 298092902 328576065 857536311 945951092 438016627 750928455 452010004 592767937 112440880 326593340 921504423 980896245 671120518 748860245 341206196 538242060 308842288 591909126 821064868 842290790 85315049 947911323 739575488 984565081 285198132 813161035 865897894 930283461 589602689 795370026 205579079 541317924 793000272 990513161 79697791 976356828 742231061 782837708 703387551 790898878 560288122 683183625 894787757 951277154 14190659 843508583 565262702 761452776 967142232 998036801 346519071 885874504 15607661 58253280 83742526 384494652 415737739 611920798 840726658 971362017 208184450 364910350 915454251 995115796 489498421 648988833 710980996 720208330 605381881 976689417 229424648 675497086 322871334 995144047 31736910 903024165 698407500 885752319 39421679 754018744 988184760 990434759 117161556 190746094 742289370 844351645 18718214 667365950 713174955 971545454 163864158 860731202 368734498 798633641 834579825 975841518 72597460 553313005 592104925 917903405 15133378 190879962 265007663 761680631 161314630 429756253 580720155 687105781 775813817 857426211 819190969 995260513 483971328 626062133 987588458 993738734 623183357 735942447 637789873 876142055 525695552 770455767 881462906 911416177 775019624 828315479 856285326 858157565 107953901 554564026 358403196 465687146 410281769 560347005 111136851 203960850 401400242 579705827 281407249 733555981 437343655 919496898 676737345 936309194 734997325 758276640 313993497 991329234 430224888 436973289 777256347 794791314 711600724 812605494 358555433 511230846 138062714 422349457 155912923 620255748 771562466 859309045 458287075 962948028 722695159 733100451 732172855 761668983 80382050 517918602 966421920 972031966 480839642 599278991 174736788 748129617 361504086 793995756 482581352 899268486 722992142 924344017 542897548 647460469 122269842 612328120 995476008 998632168 118165421 691981984 512523622 755161521 930759009 952424408 434882115 871453279 311143864 839527299 460127330 928930280 505198959 658690373 730904920 874789579 50836754 63130935 344558484 776504525 71365142 328487910 488250276 592838651 878140505 884301073 711006283 913460961 315539968 718672742 916715959 957223270 645029051 974426598 309883944 980567277 436494430 517004161 761110481 877961065 13486833 887292696 335433061 480633757 443684827 477397898 66503076 795850812 966848743 996300113 671828713 679999239 223863297 759693631 699150051 878094337 419428329 755576738 225629688 471058667 859792634 961448053 868755063 967322686 360937620 628053726 504773251 576405822 526560337 833781563 320824553 989206666 747502883 907979860 471713026 894245384 354844255 846786499 217895785 751774971 97657383 110854799 787198118 996093802 744740466 804542324 878645415 903025711 207606096 683058486 228100452 983284521 146688031 965361413 343420551 597368342 357638576 556729650 255097792 940757228 898690844 990608240 800057352 923452811 247314401 257234933 727719718 733847788 992206587 994103589 852881580 885384931 725834171 815484423 59762983 247524472 19813284 589836531 809857134 869711858 45091083 544464922 347928951 961120271 779337735 814282361 133976357 619835247 660908509 679669245 192466336 905094088 137135009 747117948 963675506 969874988 526144985 886869929 175696669 571290054 145156184 691954397 274374808 612288242 245765078 880922692 485177523 679900332 812551048 972342190 51632659 241806188 613772904 971563490 258832070 578882673 499913598 583334604 233200169 618734972 375345734 574719292 729993183 969657731 988641621 996068265 569034305 612766315 58665912 371183002 275979658 413552561 412718866 677337632 410667624 716062665 536673779 936977488 167205150 205369673 488071972 509080078 554666894 697501401 709687518 770789249 147342463 427916154 758381699 837507204 168111155 458763955 244104064 759785262 624652410 887445982 846255638 877514673 644277974 694687641 920031940 954793221 653678539 821583947 236982925 535995402 370088345 531477568 708611093 942031471 248432367 544179911 26943372 950020641 557816488 562233276 356740527 517772955 653640431 782239593 992142764 993367176 306065958 429135172 654197260 744145108 628801660 655292090 351116983 398718441 68527679 899862562 519160119 639608881 139284318 936562271 397044102 867107036 974072316 988385362 901119154 907353301 342549536 984662064 389350288 881485076 647811183 908998470 73840499 780709827 577244046 587947154 3047729 522795477 567303529 834695004 592714390 771061831 689307203 712508037 680461198 945015390 816609643 818053864 561729582 857344099 818844611 939815773 401243532 710724249 649340077 809062826 196377907 291692735 562250743 759799632 482469064 815102323 373114084 454238915 686004567 776420498 858475089 965323885 108699053 539883128 242363554 540889233 402047877 994233467 121779067 699232467 315441637 402898094 216698734 261152430 185099161 793865605 758249120 814527810 129139806 871845235 468998202 846802479 642711177 923177846 10808876 835823232 302872654 465102285 577547252 770567791 103812215 969542712 448463349 829421358 425735544 450640867 64962518 396633230 917835923 957957718 826815760 984900672 510960992 527343082 208534420 769048512 686356126 782883243 873207069 905691193 857765288 901575921 379897531 980333292 940023034 990406722 699215541 867941458 617263323 743698918 697854911 812191107 988839804 992319518 394997873 774994356 931503367 983632140 901567738 969969638 745656582 845475724 85530532 851560297 14882942 913290488 887536372 960137609 76979745 821530392 956633431 997251952 716054574 943116855 390628079 623636624 823064068 866389867 331455303 584836718 162289894 241406108 17981299 338093745 705920810 851146763 407311277 434488628 728510368 857696397 950222438 970428482 865221186 985011766 899342621 936473962 859377970 936780482 976671895 983482116 293631283 658399110 694617462 762080143 496172699 622766768 249339785 780794001 490404407 901928551 921993623 962507096 45165708 272966054 3151044 379409600 34616498 171702910 718793108 762912011 157700139 621245645 301764079 573256358 714807111 945913779 645242781 814957848 527957178 598819621 551305365 803115898 691136217 750135082 370152768 573804559 66401670 920014747 528160622 799052575 888367734 969048148 443318756 762300572 685236278 875869285 116169984 379699267 840586552 942895248 419308912 907074051 93822438 252437547 688524992 764990490 540614459 654821945 686835864 904549469 513673942 542382810 883444689 994351975 966587976 977454081 653483915 961434363 86787124 446024492 165856354 739753396 732481295 885410550 930922394 935645776 676519315 816426844 305388375 741841149 568857875 732626186 79015515 229247635 139785072 251963156 205126573 943804616 54501846 230773468 701701901 806937586 629717005 763225388 492369460 997485344 990837949 993002862 85014400 903692636 273841111 493840987 275910676 508731165 556085712 978721506 764301584 775701739 147591292 326045813 738648745 759093809 820925858 858980554 409021254 905008088 653522903 911945786 562741233 665568279 382911954 590150706 443290911 989871683 431611790 939817001 762218877 975866244 219993351 538539893 900861883 942743044 632046631 965858505 108091322 221960962 428798077 489860184 853847568 981414333 537768254 560107944 56936137 606413010 782404762 802157764 769413203 805266445 384815392 817797908 42477813 728266732 5662665 626290393 479050333 481258762 921519159 961212870 349879871 800628867 260989442 426719656 278104288 359866382 998434144 999362637 63995822 671067106 117115661 594741013 896292982 923788564 633866941 664628645 144968064 550522699 883196336 893334146 715672734 782050661 695383697 957305071 430035858 492171122 739185850 811771655 126780199 280924729 730720899 984405336 894514268 937182726 184686325 199137320 157301206 404776894 614327540 911345613 937434371 992408629 755154757 859390206 444932853 841601680 910296909 919182474 176908208 979311052 327158039 682880942 270500534 423321466 715252145 855984794 358432787 583242386 991195143 992048310 632261977 734288507 539927218 990346108 282748762 552996739 827465090 995852398 244804133 959815308 355002530 963939906 956345645 986285824 914362664 928714048 312815569 678907878 442724458 450081290 16843730 347442147 332331452 595138129 232551255 500451105 677004890 700386054 728786171 932246806 963310900 995968831 926398693 969329603 274821902 504417534 508712215 605588792 135678313 477329898 197232574 394190812 936590618 997350238 875827036 942523886 36478634 483024121 670372683 935778175 235676103 930616031 676911927 708771446 530394162 736521259 822727626 859205200 527184561 762847846 839185939 863503708 147020789 909895927 794587737 879853388 177626078 883055155 351531285 467647641 43597393 295708647 78183053 995687412 649688909 943191749 759510395 842416816 730711694 833210733 888683200 996544978 676352405 776290500 742521698 887035650 451426373 626643398 655792220 920822643 483512070 698784429 287129729 586468675 453853509 488615433 391006539 895047830 180917774 887389314 328366059 955132081 495885927 866096659 474377327 862203310 507573190 674033175 658484500 856852057 452698467 720979235 753549336 763320068 854294133 992461852 843086657 947821272 804865424 900095245 735513808 861749980 204545284 456542100 467220204 492962834 727434294 733894324 677244938 729312807 401709286 915855962 571755006 582996738 9472566 614641413 425616959 842357274 989230564 998915433 303117491 668487609 210403197 331201305 901483045 910062695 956957545 988146456 908795945 954641990 669359424 855797279 317778798 613956295 696984137 780156936 316984918 478482745 18338273 959241380 108872484 575496737 251060877 307064319 302729604 683443982 832661943 997777541 505787019 566622068 349115893 865571411 709932686 900967275 495231145 528093435 699106792 988673873 509828335 885499489 539982578 775671395 109453052 731191115 696620001 724033761 488719476 569423059 566281439 845796826 905439911 981496985 100242272 524710956 68225500 494448145 314384354 323140926 43047643 475734981 15549597 838770625 695678228 914207238 149762513 189442793 966813095 968118945 979431603 989509084 1201759 392846785 277420687 953327251 514599601 964127511 637867706 648693957 419616415 845876873 711926723 811529132 511099136 745055717 276652776 921271352 625730975 795787881 289465233 420133214 732359884 775243665 966518199 975490084 510823818 949418877 507092755 601301197 734094805 822622345 990826602 991536725 577696574 702236407 310330532 356135558 390685838 907345433 112951673 789991472 620292186 797177334 606106652 822534528 887958283 964690632 715003728 903714363 866488589 892666907 145676243 448422912 475512755 868447544 377761480 824163929 587282838 804633433 722006542 805197873 281937659 443711746 754576063 975085527 566716778 861498945 250588891 936302908 740072426 847301896 318688456 805101611 844817711 951462651 408463623 854575405 249790363 882797771 78712779 95602239 604937609 792631993 472658566 841763698 208727798 840472285 642617936 645500007 465863105 939728225 454322770 551253273 702039896 864969840 645433365 700563316 235466888 882200638 826542900 893723272 765433884 855682968 868482822 879435233 817277484 965184742 913579740 995337645 889251392 996679770 444779975 862781755 363631150 833425469 852935499 893178877 960652117 967637534 379845417 877884099 805786202 897533255 372528564 581432936 461177816 887308439 292214430 655695167 604132423 628865260 335531093 358409750 129486412 917242042 658959158 936928719 321446442 783077739 250424406 324786923 922573732 973466218 389015779 807009820 520689343 540758907 256216797 446139573 367521609 624520779 997338171 997777958 33986549 527252092 110109625 669019004 594798463 680508325 775569294 969052479 692466169 710003834 295614521 320986218 259806283 361580106 198508162 869223895 765766815 979564175 719091579 774257464 697416274 805682443 614451323 869582121 443036763 775841453 440441278 544847736 675438978 680491485 607873557 992178861 323547742 752557133 785004118 962108332 499353545 708587009 204793105 428421604 344750408 361547738 636316015 963196179 143378314 655345777 89391504 205253738 752679834 966181744 475020153 572044883 514969967 674453723 968053082 976677737 295479067 977635896 100346116 852061004 401173489 584676911 764084691 937029527 217404608 836509733 740664840 876494738 26181106 439648833 946316886 987794050 819123180 898236514 774392870 934835948 538302518 838523460 966451099 996833553 311764521 862353811 267101516 918838977 54010598 860668332 68759149 659481840 802639903 854207125 48791742 856552838 254842644 569279551 554585292 592725969 890241116 940577198 37889082 142241379 612693445 746013140 234453530 700224904 752414017 962967363 15323688 556391008 261406054 392196776 654440102 751678734 197949163 297368703 296145865 633704359 853497156 942955923 871609731 895171670 267712964 915139838 593593375 838064287 187166955 832882216 280221386 312991515 557343313 574732002 330072259 629117850 45741979 810914149 525139827 973157451 292819925 728599658 857270387 871711260 60773456 903549349 866822564 911306194 667240249 751895913 13748535 475055481 198633486 889065895 683750737 921050518 371649475 635291603 604459614 941910625 985014188 992520385 919720847 951856421 557484775 829577377 374594518 880609278 231559345 364396588 669132012 820147334 888719134 923961194 980171037 986950403 921206867 961867460 739240839 817896683 44924390 674324886 804650522 849873655 73517282 592546979 355090664 405200492 135166692 144994421 145001899 162351142 302314213 838465749 7649475 336164008 366068524 813862637 427689746 817052113 459497809 504718258 898783359 982271980 293113615 681846267 236232331 504976621 676053072 744454536 286306983 827205532 638503422 831697928 822160646 931984992 482177980 857176763 405236864 987113150 524336399 904697931 118238195 357826878 996459006 999112811 188174493 555105498 884497961 885981191 904983234 980046284 54060994 986038235 680012016 883788690 695862499 906198979 806749223 857069819 664101078 673277159 976966924 979103760 701614472 848514101 287930779 299714921 755681795 915734622 450152408 552337576 774050516 822351191 492282777 763646399 935324761 964107768 579767505 774999263 407932522 446373568 69168122 955935221 282164040 308303673 765465985 880992795 260292914 387974161 112863492 492234492 456053349 566197808 845206040 907292724 116630267 858776324 26649423 356381699 879763041 888347731 710800763 764894448 513164995 666237045 323250413 836696044 884942565 956393694 394113558 768229689 415827742 680614480 43042208 66770602 646845439 796893615 18484349 772506530 703250464 976422595 633662885 735785797 427890537 552403848 440809410 763728471 589088082 975418447 478708745 832819679 731883635 850727815 376517059 463381124 262833973 878110214 818056025 827064811 213736017 506699958 618363004 922721981 249566726 766562563 334193286 614900327 570669475 856506557 800156993 864110473 89678551 673690337 28538493 112593007 354246565 782174851 600862858 907091246 703331851 912249360 99291745 135239049 495347965 916597515 990229626 990915972 483177313 754677385 994849515 997875483 833475574 941978193 748023191 982433648 519372426 565445376 847658353 961236375 388622741 659438324 412047675 591142644 914557194 992254475 695290829 878657186 496435301 991981224 882191966 959888976 554979416 907743575 962465993 973059726 90345829 743138602 460724386 839531935 326287970 785081445 742784800 911467167 307923028 514898860 941790341 991700454 334025333 961378031 83113371 967086650 415355205 694236806 616335402 878020666 596797206 811718717 694287412 871363764 233341713 851996360 274823522 555596535 785065897 787527765 870980600 917547742 475789818 923055212 490785106 813005163 47283447 700034000 739673191 776968258 540803857 765098963 760340599 985663968 54109206 168823721 813678108 998800980 483788009 951778901 777765774 889557113 533371634 915250734 460779379 579929714 372751257 562404348 56739679 147621953 194372971 791358683 488657264 832062328 404185090 683777610 618259240 992342525 374744628 966041159 856352205 877479066 455834630 519765521 971279798 984848466 712402565 777376084 587333436 624615292 319113408 447388804 874158740 994702641 976778540 980619846 509790268 765874296 616946400 767182791 624126733 686839122 270258220 640559759 585046077 936842936 924081028 950941312 430815632 965018857 39148778 574219556 868624835 939296554 923703459 938013258 246398921 406504157 240747619 424440749 413691364 837093584 401495888 759360304 551872491 973746037 350757611 955402963 981993826 986618704 618704397 869300904 116962234 458771481 978055698 980789713 163301133 305661043 98774308 245702622 463224140 848259286 24184773 792761505 284921630 772499843 509048973 906680197 489633566 899956735 761584041 934116671 58716406 744193815 959344830 961415095 668812839 983227294 882535619 924876857 1384149 118415937 916409580 965593896 336064456 495744323 805345721 866650589 482368628 844364968 825920114 869112364 775321948 804770628 741536670 900064544 416077640 901133380 172882597 491054724 227485235 267191863 256459012 719622223 328843085 869932692 788666745 939328751 656504187 667740608 695419446 875494406 309051064 989384504 868248452 937651523 911581864 929156592 476944808 888126423 904417631 909704448 125930055 976209904 745724946 847425019 529223086 639654541 779534058 951245267 33812896 419005497 641742554 828510593 709638312 841170722 919520697 940262889 946909703 952422040 738041004 855426001 962510949 997746763 972370854 988312662 279967459 790790597 158012398 811113506 663095067 899982083 731047854 879317207 852168077 870829147 665228583 794715671 176669155 477527012 502974121 733074841 562940872 744520092 208606415 744625233 701622296 900533480 26260718 304702194 442067509 448720813 158725746 847159826 162697247 450154557 176232968 952337311 394917977 412506301 910689614 937452605 354485551 914869101 244134330 969080254 249989405 307636701 188221569 780914935 652237228 783389699 373916886 608653029 227412858 643251802 882354753 893880742 598396775 933040992 763393998 869128147 719436836 782515379 421000667 520371227 629766636 758615661 373165636 619721054 357032255 628935620 603305288 819473408 100364949 909531570 76512662 728091718 112241663 605564784 192492095 250377274 838399864 950412102 413398576 889112596 869144474 977572480 96800588 512497789 946764230 962052267 922846007 991310741 605475199 913333175 371496637 798654840 421669807 574052131 498541776 765522134 214163386 472764365 144141557 523437681 350390024 551900371 569900873 689719845 35422700 965623271 592290144 765367927 894434038 969359480 854455184 905200559 183860697 788839725 405727230 681230749 277726435 687361498 66203098 125375471 411535020 585604391 205859695 367553100 646942355 962576871 45080306 211065591 897002669 967971778 154405007 233827745 421381424 489038893 520190951 863591421 529202594 866079801 67244372 929335393 606395055 918469596 897119700 912781593 585104654 862314295 38688464 505370305 947110224 980693781 864926934 923204603 732274319 898002319 893530983 960348243 263394793 416571659 96320823 524063550 769902485 816804935 407702649 625484065 693547533 737492451 326009962 680686220 712335215 955292695 671686796 907383822 8063267 758300136 450283432 747465971 643106243 870502592 382446681 652158804 306295753 529029244 761045787 797452876 276938887 348443376 850906515 996205727 472779257 766483809 792845516 905677127 616325702 694526527 158511120 193377973 240887790 606076979 487065756 796631531 258698984 499719304 432479402 811252206 127312956 853156607 965324151 969044950 776402418 891816319 73886602 735400914 413237970 769265431 50248781 73472268 609429968 924203442 115534331 668454691 754870892 979425191 552179242 865861362 779583721 895012753 402659828 559343844 848174466 850583085 982328864 994560294 211469721 351063951 832715165 965126399 423435168 684384651 684125590 774786698 365330297 392127924 701755022 745186862 901564329 922508534 146157437 899809368 762914362 781079290 662798264 866146098 701674320 886711010 240482554 994077509 548893005 815364961 262491776 535971100 933797805 985974373 47311156 179097130 477770625 783756663 992594064 995374863 186639699 593635043 651061184 756008037 853054475 909659088 104424908 553619300 871216044 907241571 928273820 930235842 985894159 996122639 75527929 994406966 904105992 940683947 399909563 863609169 77449982 182364454 612220558 943854765 85020831 987080863 445437446 935935388 476682766 808169152 38336478 705942274 256612902 288061549 636568437 644618459 365252130 458455164 402210597 746957746 440142441 637912189 223133026 716884781 65250281 490176529 143986748 930743043 165983744 456000429 787622850 947232623 96533149 199180038 761035823 950243363 442284741 757146548 339757152 516925545 516553148 899688439 671103207 802394587 828833 241707793 72162518 871095567 580534728 660895594 238986797 946856162 602613257 935906977 9427359 517860367 588780107 596697873 244264824 599432046 925413555 957985724 52815102 892040437 681019111 952900609 824879510 902172743 138483830 441278519 575754617 616046255 534616659 898864495 623483619 926105590 600697939 621145865 200559679 634400271 365362529 700954791 470875539 724119029 493143590 627678351 610537620 705497330 398833207 399924394 803571517 879982765 166650389 817357574 480444712 574656446 23779662 366440267 777079513 891605953 979081735 983410649 795505338 998940732 464727215 969557259 536699711 568640608 428513208 509689586 598066951 710652214 571183587 847582281 759525433 854843811 351872897 394670120 284933291 763682079 48958317 656760666 922527310 940655300 489600969 548639615 511270973 574792822 399279492 677127662 858494472 905074270 153933833 263690724 106628298 512294617 139151239 516961934 434155098 604045132 878074110 998985545 632623135 676231703 474677683 849141258 166359569 339414649 93273420 735997763 142023293 957306971 938235195 967129496 392247605 450604031 616246312 818606306 410508771 687549536 623196264 832348150 338604375 918702022 868539487 993705928 188170011 604699333 455400881 526251448 1697299 716239541 986761480 994345729 35290518 136488812 452149557 847433114 8662790 194651956 755499284 956385168 769232632 790359407 163165223 641766328 39142091 554532291 290101209 943192160 176398266 479848022 405108457 806131152 49282917 267257034 973726641 994478235 840763354 912070525 482251064 757841168 738060270 939660568 189641003 688335830 875160456 897720047 93860625 323592465 562887525 983906639 780518725 976292179 800772612 875829865 529854587 837618195 379603078 405095398 718781440 770129431 132226390 342666177 221580074 559523852 970922415 977180571 407965278 784316203 453559735 623458421 857565208 917084853 134072180 799071565 891909873 903440337 214908140 982267197 366595095 406942172 380827293 710834446 773247944 830285870 373248048 399339844 336324962 932135362 783493553 932160807 88792083 655275512 361655607 693679986 977009161 989316341 546709546 944912862 330028983 876563006 929860781 931818601 524926399 951631781 828070019 888062853 755027981 787603166 315235310 966094958 598522914 705368407 356719935 578956718 721318595 972215078 578008722 716340718 94581594 954612401 444623713 737689087 976652408 985737388 828692741 864704139 541899699 807621165 554547248 599533588 589044624 763428306 954965266 961162940 131807031 628248423 500189578 633671976 168354098 572820683 226498937 870794004 524205759 647307122 244681892 358343114 644055367 923708838 505335684 590034045 768103628 855919572 888341187 980082456 435932522 752163485 490809480 794802050 371816594 683904059 718863199 883965506 321337647 636884352 476559708 641997117 279837879 450226805 685884459 775811262 624067973 667592367 129013459 414806366 609821432 831480447 146881228 483277392 148306424 341752006 975267436 993750465 9573332 977864154 679224505 958531065 926294844 961423536 571575178 610972592 748111311 896899360 533829683 907765987 517428530 872485416 502658289 796294693 460130322 742889395 453061042 752479302 126759681 995297961 639392702 840312924 367713710 482700124 741921773 792571891 45370268 760563130 442351099 991997389 587143154 710214589 586367638 643859634 327636793 547110420 773971884 784074175 530758343 901161933 554582320 562384964 616073904 695780057 102954255 612568694 41792169 52683712 858639723 966999724 792259466 890613390 918568367 957874940 913005537 920539799 561004438 893224986 786956085 950546945 384465554 574321609 871738678 914610565 562419103 732985588 10320130 280451137 766439975 822818783 727118294 778340471 714801653 963671702 203256151 367983640 893216626 943908679 724067223 909085011 165257841 610316457 145174857 647423439 223397625 959261414 75131674 796303924 244430788 413757568 206307673 574918318 809717654 959588206 504074920 956945732 100252448 426315910 963680030 992640519 811044262 877531276 332004203 435925712 779309973 979467135 344558888 421749816 305138924 824947299 1014602 762975264 319689194 375107843 957694947 978830558 74892368 529440385 115956443 215791993 941904865 978277105 999315107 999331439 424746001 792693030 492083361 616596368 485144333 658527979 283592082 957644344 694796276 950490348 419800603 782638912 435715723 836748004 175863227 861954492 373236517 679537219 345546829 590522071 477019321 703033736 943364169 948751854 543001391 811728435 281759842 705501540 548116643 622678229 495943682 957146388 699742051 949333156 818589493 912058738 458432739 710186797 831134041 900652358 812848267 872110422 804004888 822525215 736631770 967673844 871239127 903995275 259987288 492588771 594110344 756589232 136927474 314698473 945987098 967043659 537819930 970666242 981569413 988606521 187543262 270933191 633868036 687742099 764011547 975682553 741336492 979558108 112344273 771980407 990905751 991250130 377557807 691726241 249069058 553254901 103776902 661614505 797338263 983724927 449311030 616152227 46133672 294858197 794811065 819237578 567096780 942910434 228269203 747905367 319322828 658871625 994062385 998189522 233269108 508832957 944547286 985861440 634342313 900883007 918076737 922717513 786143536 836665965 168733477 364574853 184983091 812413417 221392405 355190285 941093353 948711713 270130901 591954557 808579974 980170950 308196069 845698519 466670408 664993953 366694546 919707590 14623110 559579956 142441015 511570130 643613952 910399466 944315684 959625751 293510846 655296236 475866746 989121031 463277116 984108591 476133882 756080782 937941505 943027171 411124924 903591518 759156294 841695378 591423997 816153979 336335989 516711649 765848930 932393916 312982386 758605587 874888701 899887237 492138488 649857877 795317323 848940884 531525145 669572812 420205552 707286679 132587548 911282429 764814528 945003657 785603588 856594069 209897921 588865516 404859722 827018095 130618509 535772777 590452068 729003633 674423887 836255744 837281969 944169118 471124378 903288055 694788410 708830887 470267624 697750580 316702996 823541431 403599223 562277160 166354032 887498698 552700126 734550111 783051568 834359348 962711940 983401676 526916039 686255795 396743403 511088255 406301816 777850910 443283562 482606500 613204046 838707590 94644626 546349736 860859471 970559339 407152471 421648889 531892527 891846866 592008367 929749058 402934513 790206348 312130204 434307794 15651197 347607763 749806444 949538198 840387550 870229227 524864698 947323102 380148552 529524901 783537982 933796416 432119547 631484766 447724618 525383679 349589268 739439510 820018000 847928492 66969184 107103410 568363299 671184574 808150403 993670194 571404547 984188007 511976167 619678099 815575920 993317905 220114193 673233303 479332192 501663879 176088241 340437409 306798574 511380454 349587709 971182651 109404223 746934636 236814105 712916526 347485526 521366284 569921471 763501388 42596163 245909316 281523174 621392467 695068016 808701675 12889350 442882207 924665000 925709885 76926357 109929512 473220183 598151852 733955397 960511205 934997437 988515827 611200383 783042720 845875683 871407936 326170923 720485758 623316001 623851907 886223759 928268099 394698568 496866808 873837645 965256656 572880607 963593544 750261198 768934105 893125520 905594293 349606184 752239679 995738080 998192591 747933615 854457518 414115113 591884369 479583870 904948464 887148264 949912880 112850114 417865392 519508760 759662937 728283509 755476702 663902036 974570179 962447613 981118941 791843040 991431044 899795217 955118152 431634290 855101624 466658622 490918432 791755215 825737089 137364932 630413540 500767220 507807422 523374356 986818152 798802396 976397554 12831809 757056531 607876810 645026606 899611662 979931257 73037113 690268716 428388731 935659543 432330444 865677211 763547284 799783293 679090626 813234214 91791758 864952164 629191197 868582081 823771442 975691814 16025884 246226583 934914004 983280310 851754986 860513006 497824837 536822530 305633981 904850493 122793639 716571785 374011971 668479091 796838946 949336609 879459724 958106545 102766280 885181183 731701793 766738872 149296755 808008069 391255422 963395886 935391826 997585253 275495893 304136441 97995170 998680062 116289804 963156550 433652901 691820812 513864494 753173585 814729494 915161357 309740764 653350326 8371333 646609141 722093120 779612598 636595778 944796329 225784918 921815516 40677210 588691865 880951702 981069758 475850143 897463986 171967922 233496968 849079137 917687088 213815710 996678626 96207308 419568683 852934818 867623070 630093579 986560187 659824830 869438166 437491543 799270982 83287774 364918085 666473546 839944132 690567414 690882371 412063256 616378102 684880564 790279559 178819817 369736874 266296388 591332985 130814497 880437477 786596708 959788180 649536927 979659534 762785416 781702977 865920737 951397006 607111185 841785622 747079398 847263574 970699880 972538487 517033505 750260655 568840363 929766358 340521498 400552464 852410418 865775901 243926031 840710594 851484799 939786363 251819933 907382289 775593623 862521812 190727750 776933669 138010835 470798702 924063815 980800870 836957049 890757657 741950978 998355111 304899293 839450600 595070405 988028370 359690075 473136643 496720180 501769437 779318201 780284539 46996445 305870888 377250192 828776274 382525260 626097101 357117223 562452712 347379121 528285727 554644312 819526245 405070449 724814854 110214951 424120720 803146841 902751437 990133906 997923627 429132429 837037532 258503339 580663351 260965976 981328564 232287490 382962282 731656782 962237513 678658194 761901945 742988233 781098873 478795652 809922706 758819578 893640004 698949514 816801574 188620554 961545792 464936795 971534912 549656127 971581969 332214925 883534504 88520613 428018543 449314296 708031911 296318814 462983254 755653100 944457374 417672751 660639686 610768326 734213269 556084965 883500633 528968349 822132877 542523663 569027337 209753772 713184070 470516270 601865204 63113446 316561144 361295044 901785911 15193625 149655215 232258450 291283126 214413537 456489914 700770058 801389408 455938266 851637769 531419506 973329713 918292546 926196602 12517165 693818441 508901094 715151379 680354085 745878840 5094537 243690342 961158668 990040497 852524006 940648726 679371613 902435327 651615912 889652386 826495743 846467215 282378299 586174514 779267310 922656891 679515874 787453060 736639143 962672804 600736023 801538257 105005896 934951633 589470596 609915985 211809181 892124460 917503080 978867902 592873193 985288099 334983050 493947005 61443064 691034188 482164894 867821376 180634866 717082310 289356875 986028258 806987239 815188972 638919755 760895473 257812488 459279209 162445438 622898630 969467943 988827275 898281107 918848365 60628016 603374108 77735367 987290641 736497687 944109028 254875246 480808793 341276710 594773918 703841557 988096355 278720726 787282678 596979212 624622355 565591877 692591159 63375910 336565248 896819451 913324427 170777911 197561840 414124663 829140396 410148205 678983422 618901898 796271680 248301039 973017280 914705645 951916737 256874088 617236984 768834957 859996715 535806332 774053158 674415970 760726565 302798835 725193853 922455353 964754310 302849358 594944792 790520992 850395774 758298830 920586742 689359034 694295575 234493042 666987411 641037218 675622132 137901303 379822930 570071525 840637593 221332282 935737543 263784198 780352267 441681969 949394957 760028253 794867319 289316007 367653230 58276411 796331651 241065652 793667283 51350738 900415427 736548380 860718961 696301584 744168802 791798709 803176741 185390744 902634720 39054332 142918798 91174364 199283594 504887051 532981691 593235544 763306008 143339920 419280871 234677819 307705345 102101420 234273816 675685458 795028820 867897841 900568291 540134803 586862713 123553357 444347542 841596333 955431569 280515805 602501694 613175479 761805625 405474792 805076503 658724937 827957956 952453430 998834840 633744706 762182734 959252515 985608552 62625957 78672009 312643747 939157201 112627213 773936455 542656527 612761828 481654910 624836847 698001828 709435169 774916649 800277276 651716226 952490544 662205734 860333873 309096236 991464377 642033590 889916570 563564256 581966870 363914176 713011764 692409472 789907974 309444639 861902232 501412233 696956031 402204077 726065190 280930587 736172794 780736808 922185040 89858476 788367023 993356743 999201380 244367423 604559536 812040182 938247808 672301449 715143111 424275900 630398080 333670105 367356701 854342683 915216835 985932474 987520747 580047411 783544999 284658537 893709548 501866342 528332970 514730239 961164451 902590443 943554527 803380839 881452170 915097409 976977318 778081897 899892889 369764710 986293557 64097548 423746807 252475171 405760628 95373964 925280943 571962872 956671971 191021231 935753644 161521754 464252139 377672386 493392849 707362829 847498154 541352027 653364761 305259572 373148690 860074373 939624879 275295749 279628213 118948220 571770928 635835501 930797645 269268161 832672216 896168198 908698975 290562682 774756574 22060965 148551124 568222749 590987898 790740345 855215474 735057279 747644438 902284043 999317571 916110513 934180319 351324405 749453560 671227238 762142705 81895902 122925381 8784705 801962332 830823525 901048829 914706317 924934627 429076479 780615800 821623505 985340519 132603919 663509786 367277530 610538992 69842279 506754261 59368865 168625378 514918339 549381979 105823576 329038361 102792620 367846383 45985488 303745819 398613279 729349839 609854836 742840893 960511709 973228496 562210011 601112702 599908476 816940483 417028029 824104611 869756715 960754180 864256937 930451133 54967857 688355907 475293167 778777803 139118337 700664346 965121618 992505420 636705864 857750655 519076522 979686097 404735864 644474625 670225318 803521788 496909396 885030580 99533625 599827875 473649129 481473538 919049565 949166427 861547493 980441146 702651480 917606032 347445288 915362509 696337777 850245627 252466676 523458718 907833063 922473549 535845834 613106295 756360869 857468384 67135331 366893610 835751074 991306076 442039665 659752581 997187405 997509222 707782699 792750624 822027496 958405531 93930878 701931251 904287656 929952967 946764285 989581338 829075762 858388372 721501325 752027621 903726674 909532481 382695350 429792052 413399238 965794579 197343824 845425958 915875408 945082405 502164911 514012707 736331699 859116163 984491748 996384185 271832443 683630301 638616286 795462171 512035056 568893393 831727535 879578162 402446596 785002661 200456190 935192552 152762853 940651196 323668489 630594140 935927314 998184741 304906188 756625967 567017305 653733726 653476600 885167692 160418316 791331282 177236466 283126365 454777702 721174650 772323932 878775817 547891025 671725833 60511685 515328497 279425014 665111423 981244974 994227187 803459201 828594820 65738194 879254408 130027011 499256963 944216986 996223143 843287571 893270257 361528547 582062158 92200366 953704166 74775931 855601864 706018311 983466382 76122617 625735233 16580269 773523417 925440559 970491395 926903680 952842747 692971264 783262909 847795352 859892854 868215395 989112397 227379699 779636429 106490032 972060645 925967700 955611891 964022030 967224710 207557187 953698017 160862177 187073727 727194787 728407877 791518876 958072067 325688100 871083058 380385855 606543629 915727227 921913680 58775075 676214582 685215833 988614668 932155618 974670265 788143835 988878014 108881414 336012622 395591004 731397485 100360505 702696924 792185275 948024208 156444255 296283613 185917354 692588404 422162894 575599897 839807014 933329997 436470982 917339296 287004592 942236758 83425045 869594792 640524864 673238483 541023720 853265429 790749153 914731139 9010874 396873438 805974688 950948797 159814507 561386976 451744818 670815766 212369572 828451527 842545804 928461738 365690881 646656749 635454507 965954109 15880585 508145381 951283935 990400611 779865763 994255544 339322388 378213804 813362459 887424186 354382606 615043547 961126571 962822139 742313363 905394843 181664515 955214581 647244574 903905152 738888461 897943640 461455435 683599086 52550111 207756200 36427757 732887296 950145502 967081574 367706279 954579348 816956511 836669945 278381538 511594146 441730941 993635036 984266129 997109210 612874159 866884823 243392473 286465373 277481199 431805571 503783245 828249942 181156084 757003330 50115277 423131738 243111137 842520065 377717518 552451399 621369293 815321456 784911640 871902062 805731113 945375231 328745802 471667956 806375438 843991456 35030392 881074022 867422114 981439162 189522495 746934067 257978211 288900413 836049910 881537846 601546269 619527424 156695970 597611869 851810680 918726919 15257018 763069843 69900747 519044344 858968779 945922923 498723783 675075582 687395995 790851995 708591356 818015084 869152130 905841490 720011002 915759890 856105468 915807769 904799765 988820696 120169742 196138605 378940448 946679025 517500573 774831423 895756143 971621040 844363448 963547066 902669115 947037172 795902750 895369637 165398834 552174903 558769831 641902591 957672574 971644947 705733845 825006964 150377941 252309330 216753557 258163029 720507573 903897565 896021759 962609402 31736724 442889935 983378257 986766965 672720970 957856029 732508440 771554592 442509423 812027690 277485073 459883582 330357915 876692329 603282126 705005195 118141361 700098038 20821006 342770444 776511758 977957216 322209761 601661427 317433700 711047160 281900089 654084361 666277480 689353640 24387090 968981176 817538386 909382602 184487108 914397287 59972016 345245583 687362873 827011611 180192092 832346066 222263348 570175455 215344681 459733433 48423360 812270589 532770369 964771079 99679825 882965220 757013042 827962595 13963950 915272775 87095684 312920633 868489444 875093345 181179058 303251570 849284504 872965413 425475402 740606572 37390614 293940611 721934129 985459842 130458127 138241977 374463090 568223651 425632477 717576207 16970221 698765206 782964840 891371981 513971247 951245685 401415939 795892535 837525045 877175068 864009495 979044084 735178336 900923455 592332066 968240869 891359508 962340287 203526410 935449098 451733408 979785163 470730410 884913988 810226372 850143718 149303956 360398523 306581214 643901342 975106573 981038613 671753014 793490563 383352575 553441397 869001666 963809102 260506901 374017574 518220632 671853923 211514082 221792390 322578747 805074785 113224929 512852018 21525111 546808884 224066716 749012577 894555856 943004203 847274507 955271079 991243397 995746676 378599203 385352179 788504626 932260774 363241507 744193500 675682361 800912342 851298545 956658224 658285020 776241590 228352035 510588044 320595992 540678188 365137774 878075011 325304320 524523263 756536435 850867036 981971938 987727697 624173238 809838919 34825673 177255750 224409997 441363849 710343407 714249346 525182566 593859041 174625249 327904328 626005612 980469124 276426256 994345371 317820138 978396245 356420193 896288860 225160122 886111082 59820014 538196606 431719889 674671593 253033851 418155738 448290981 714349390 293147252 731469213 873259430 987008500 484562043 887179247 902170627 935684198 740095468 853191214 484625379 686157584 651498136 792321073 537433987 798266507 483783359 748561254 820936212 833789818 439428420 672423014 45092985 177104503 979552105 980912791 107753606 166082312 418995566 950473350 761597591 802419213 234783214 250179733 477463876 661962312 802222888 984651979 236329163 414221546 104387459 689549142 521723734 859891052 61232865 651833707 749103765 770586000 297709877 984923573 620144042 725702751 968932107 995353202 963823604 984058924 780720746 846327326 670595673 759480524 103694640 953655779 852665375 914515410 891308011 985864007 777447511 918316699 764548649 894626250 362609595 686445316 392873605 920271533 944244302 971852009 314384176 948845729 918663539 987451388 780561865 948512577 738649137 865253185 921348339 970327506 581311327 961268893 841336215 870207552 123788008 980482287 120073369 315678414 335066597 344987198 552061941 746178460 62402636 748844587 744124238 766543525 244986659 532469676 92513641 414841496 387612514 989259917 922972198 980264832 618061628 693569255 402283015 500374173 876475008 890569048 850969076 972351724 536777347 926941011 898322871 941988653 163101216 713440609 991758385 991884188 697224533 950065469 696294843 885409167 804969888 976342836 170662344 389649049 519959766 721992916 535299397 864991692 463324346 534517801 752304043 956991916 237221073 365586704 821471743 943061683 392992067 860644432 476196861 984116578 414745855 469166730 400284896 645285756 827033636 951047752 397173625 440586153 540854707 776305621 276757281 881209934 85435774 564997208 701904754 749700723 654474016 919122208 843760602 855586819 778148058 941590773 299601972 830439314 812736744 960735446 799540481 909705907 107707601 566069219 955736133 987734150 897666968 979285975 979013642 992269603 874128715 875761797 793454701 892426106 89354974 339104541 891072381 978193542 379659488 857390677 608652266 675370477 608318902 608569402 863917899 983571911 866746717 943626022 634845861 941184204 488436883 905142193 321196650 992561829 936182473 997529868 646925483 892857889 885178849 973869725 178112798 742775461 646282266 726498453 113865133 713743677 157005086 461374501 495718998 549815468 621647622 789534818 889867124 904273383 969369587 997714396 393281806 767798194 150698086 929675528 610525575 906716276 924970949 942694408 961495115 971348898 360498819 385309620 858233553 948978248 189886931 502968999 306219892 973219006 859833214 875293663 644571301 920929560 97690025 690621080 533800889 563882242 458150587 604689902 867581941 915999777 336567694 565671674 906313674 962360241 28919605 675651875 282237696 646228901 543055182 740168892 736022800 887221400 274977093 298604884 942686506 945500335 623668091 966538932 898883604 965044204 62662033 213572055 286689417 605127492 185682767 740104205 153604595 988533902 626835279 995317216 259896595 516815123 376339201 843676615 558645058 767752025 371183617 587725175 773144734 786182070 566908088 921585171 299534189 564750412 314508240 870862273 75920074 849655641 282974326 481935482 847443244 967332554 537246373 650953385 105515215 883720083 671532262 927963891 231798370 947363978 17257890 879834260 320212754 946493203 883687882 964352702 703352593 851530851 863828588 972124254 286875352 994762528 194485332 364396263 448670604 587591689 615703106 955563187 146951063 328504109 577903831 922225984 773507401 876413631 862555117 917496029 203635600 879847804 495272946 552688916 925982259 931864184 203316322 344692271 871209013 877760152 184369985 404925907 610853893 845548149 797212622 957391384 83430723 342591981 484212842 909092162 413428800 949052549 884089617 959909385 504696068 618087893 929252082 967226760 22806810 257800408 159419626 576873419 441438012 958924511 940485317 947454044 189267740 497585207 580330841 971997298 44535080 130324250 832619831 882178617 391520796 486615820 720874763 940553379 866219679 966961841 12623381 546392675 343061401 599541848 706230042 797302195 269373176 553705433 997967441 999041076 93198555 150610004 239891402 653574133 613806258 924668421 214454120 864996952 950468363 976311331 14402456 498583378 226006602 922311332 308592781 523310287 416324252 710039754 249045882 641497116 893546037 897090220 674237866 774045634 422805524 458051286 881092802 944184372 28868016 372445291 608990326 721682025 139497116 737212411 210835352 305417346 72640713 475241522 212320029 381812779 668815804 890489811 721144031 910587314 681870423 863456687 197968465 840216479 326205800 492828117 897527966 945045194 221658017 618463116 232019998 891249783 67836558 141927172 611462184 697996636 315469797 583991043 159293579 687707234 40741434 177983826 548471558 973204821 289633942 938842778 502528383 837934215 683653783 708413311 261075966 917853566 602476647 786906539 823099950 843000289 620541360 645811463 494956746 975238758 658430814 846284923 438969684 975126431 15780931 128795945 209663595 566368415 471095601 522039820 675996805 774859997 355942663 637463628 809148444 916229902 316765706 718267947 301361022 768006089 675946520 893031358 640998681 875525297 878260962 884179394 218641998 487426195 957541050 972370295 244998893 935956098 28908508 933777922 510320010 843064839 873258539 969641995 218554034 850644629 117765000 159381929 194955735 426086436 166231886 814755924 128627963 559033110 877002453 980320029 783256046 846695367 1812336 188194711 536534096 945871261 440695833 788551702 119353584 638449228 988049889 990868380 881253350 922491745 719888938 924287176 792073780 947122182 646902697 945547131 459514051 569919849 789434321 937801220 24383745 857135759 719087774 821191635 463800749 761331621 563686854 721953747 44680800 126964452 96115338 881779456 68095524 651084168 76160387 499586165 807036778 883430880 851970441 905873159 283791624 524148190 276282796 805612624 290736853 766042101 44795532 53531381 514125322 546074686 226955831 369608029 973261526 983834731 126899029 733060380 140498160 345101432 236444575 423920383 458917613 831444324 14495307 509141124 785869104 807210212 724209732 810064644 553681140 912823369 986734635 988511489 991135417 994160541 567006634 733698238 251923446 725036171 275603838 859102564 217231033 648928871 615150235 783175500 699598479 792354703 490890038 548751971 699956213 936691683 687926609 729990933 445616308 562233780 699720826 882572941 406786977 613334040 483461566 702860602 617609562 933717056 812771824 885627848 458430959 678493129 937307659 972563823 748727738 772217639 354682677 923076302 549685920 685175673 887317288 931665046 525219693 605544305 292613995 820200262 651165152 682896898 718456820 841279180 488680075 498743503 956558070 970475207 979492501 992770651 531237915 861414680 70394191 721488224 663972181 710265906 940790921 968242667 584569119 772491726 412149687 932153579 396987299 482031338 292105396 835545986 623814148 839497122 878460417 951276944 463511405 637488193 68912290 830912068 423008842 806417569 779919276 843341899 651009689 860583517 87498062 606981451 641254246 785556636 64813729 493897340 367135515 904452613 41004968 723360889 199644134 943969553 223270944 705451948 510644633 724549431 1209461 326386335 738027968 927493006 764567623 924180946 150592604 998732018 81310636 680418454 926604825 991725929 692976089 744769574 890016228 941632090 340594746 694532559 189347827 958700809 856947441 883278658 599453945 717224391 995279951 997883848 764919806 977259159 456193183 819240255 217247028 269718202 955995443 994887042 826176961 920251301 966956197 973196729 111350463 265451356 461768384 975756583 973565178 976370711 9649705 64636563 158152864 905199755 989948437 995392043 275787258 735236313 213522792 663494006 680253062 720976711 69669337 213494202 310416458 547182459 34725947 795078050 368583103 946207365 303485938 940855169 513951895 599115798 614557163 711341828 931136556 939608053 796256239 969070904 570755889 909856549 297992134 700397479 471170156 669730525 422726100 867383583 484172574 981942656 328405521 981779916 33151007 480834748 101554105 125621918 42267281 568378594 495283180 533746922 190335764 384649429 434301690 665445029 132205327 548119177 865885198 992459217 858750191 882741573 991813504 992910179 835776680 857112354 867687264 883347270 659563027 745174499 241151968 803269275 770386679 793377688 876693637 910510069 499086729 930606042 727954739 906206290 969761739 984054723 606633473 934356349 436005692 562357543 844284854 916217065 287277312 542315029 446121281 602074120 455137069 833898852 956751745 958016990 330853817 833999852 713617219 866168848 195187208 451171669 383697661 841271194 887165864 989830586 633522122 764901527 740684191 975345237 86202532 440796533 175609 625081970 845082789 925284377 26334336 702376915 448025179 615127350 735906949 914560325 796416547 996900796 482313624 660143947 992744967 994968494 980425730 981410003 633448164 709349232 757100716 912687717 391024759 396438548 604964309 897549962 282370591 629485418 660291171 814033405 65245179 236893944 300192672 419413123 87572105 575676761 507141017 726799379 863063921 921365646 534239710 940742320 276067893 559550684 838819906 994759298 967822593 999148793 683574593 720753147 630782481 846281430 483334230 494482035 65957793 126211815 182186090 609357156 228737862 538603420 508209757 866511087 493958016 908025574 679108138 958542535 103568840 859652938 634089082 785313248 390952317 504231459 178476925 189266691 775143176 988801236 295797266 298813008 392501160 903354413 683372511 823201702 479418437 892921955 107554845 136419549 289059811 456514501 513688028 548480379 320026624 598686309 332893814 537529720 136134124 738186981 276198992 397638818 798550242 806200656 459136960 948758880 704505607 817571668 36486193 730084254 53071363 791802685 518204101 709160268 698138369 975046592 703963409 891351968 128841905 839560175 880164408 983073397 4016790 863567863 79119910 958190844 852217850 914443947 174805154 323702870 18087047 491018749 218063806 780725310 242372672 277660106 912199146 983313116 988839485 995415469 473907591 891525337 689132829 916588771 23060734 715690882 280372225 849937205 600389322 891463544 423745738 964285706 290781683 700711303 647946448 760502466 631983868 678931221 213540403 944035509 672476117 924117497 339632219 692196107 871321985 877246992 273111979 918534479 943832494 956173659 813451521 964157933 695004951 921425374 382966223 623926179 598234426 692624709 772722539 997304974 652990035 907219233 240751436 262319031 633921691 930962066 558112733 811343020 994587477 998992656 81043989 607759444 78624532 742830145 110101347 953595981 112220859 739013170 664831844 882755161 402486201 493692928 892419705 953751818 717923003 937943596 965002321 980023925 510675708 570023361 693061403 900650537 624976666 762776224 124504447 479073006 537270531 988234415 575150576 834551160 669049020 720879593 358208441 972242053 413341707 880364333 254539660 309611594 951876221 976200124 593830066 609895905 638395221 762842776 635116310 809225155 775813510 854233851 911370317 953077149 793594963 808298574 235054480 844655264 653126600 891154029 205424243 748670230 185685051 704610269 180061267 314672965 880246146 921530192 197099520 714018996 693161411 924068935 202164357 817737976 33209554 118182096 608016158 970517043 794513357 976924011 21840335 389597345 674612084 863176078 967490395 980797273 709670492 820578094 924667704 949752964 109580496 865815546 964378756 973277093 706392815 863111139 104437706 613131266 697181147 829993543 717843352 825859420 862398863 971963221 87469365 614934532 996381071 997247365 585583887 648929770 25944519 328650852 875609958 927467159 866434045 951483693 226236289 848750212 299821850 568714207 952924126 980072535 704601773 752058317 380393526 781730150 949811998 998136991 678397053 804081074 64497777 155596429 521833374 878000273 18223013 546280800 95950990 833829717 618924672 782528874 149073442 214404523 356222026 655935424 375309255 515025757 765386813 984645697 618124624 924363099 728475967 747843210 577864261 675062099 180732217 508855316 735354028 972824794 836509341 977880413 108429349 462593022 233701837 732856619 638028528 909402027 944908129 979248258 177765818 260487183 528578187 943596449 1418142 29563053 636128931 893004304 534942256 798397059 310356712 609249628 165557690 498543317 782912933 841000357 538158942 705225960 594678330 721289068 401968203 963118383 922105028 929371679 329584728 502918112 546063913 565845455 24762503 573587414 420524073 538937168 46650563 704183378 889014878 892645397 722385399 825347844 390167744 491104224 331205527 923983089 376255516 377147484 788288315 951273295 54534647 904414731 604493043 796685278 603202301 673937737 397530761 868328919 501331400 598938968 82264367 479106703 903009055 940875219 856321342 953352799 957839282 958795305 881108031 922759781 264713924 375294692 730002449 786310347 434237933 743478222 88846397 255557927 349723738 535425007 888899226 973324358 984723872 993543582 181324849 459110207 629998384 637983824 425319870 973349485 511677195 670597733 41928224 524955330 590687048 874804066 374880699 676613414 272660515 545389614 221806168 449789691 90107235 654491675 713533401 847936149 909498069 942606464 256992849 469976230 17670584 942114199 800851742 906675912 693075741 829435792 123582070 471103694 997676499 998130194 762637552 913298087 823634759 999084166 461831038 919618399 80475686 908959663 536184154 667257122 203479095 735306467 791060299 882096535 119477900 656427328 451509685 699613074 787605380 917216574 586003499 958391854 817047748 928798436 176754047 323985271 272052368 496946953 447368200 748932653 25015586 730273270 744482393 789998897 918721659 952943716 301217474 452773693 861375293 983799818 141510716 977222986 311951935 962392342 781401318 997605502 562949629 917393305 619565101 731823884 530660360 967596855 837820510 910694268 502245129 977890821 140506053 633107027 23008068 921658273 694647047 795463082 549842156 973581835 440982224 981889061 713468758 968350957 102960318 604243583 939104610 943464658 409471050 922574651 342069636 806358007 843153631 922874461 571255307 882952444 660160244 946110935 109838569 983261893 606420442 697258316 125103078 239803382 860257202 894056940 701671563 711977916 827757481 905811553 691019163 848819066 938120740 963800779 515512364 703755321 664635409 704088287 445711187 623211518 93756814 238403193 600467793 647201315 949382371 989134326 558507573 824999618 923288454 968886311 931158711 944553269 716546563 724120071 713855197 930906814 94965478 891574954 684931924 847391567 923823359 967166177 879166341 980111404 459009279 643374648 881679210 998172893 91848018 391032937 761962040 843412088 79454080 163364310 930447673 987828214 216352975 360973786 412684560 579495671 927499262 972111617 486672348 580344990 468809194 675681482 685889221 980574664 57953047 994043666 262943300 963242380 777795073 876350346 662685485 805662144 616696643 960244690 302195878 631128531 736847077 951926050 600761993 725536007 490104551 550058976 556171687 762584736 938253846 987992256 306790300 830754081 688851039 816233748 316771005 938893619 700027160 921674237 319590460 857428862 736851814 850509638 318642681 559053093 428255179 745376449 142658929 657655178 474331233 536241162 588795841 882463653 915679548 927463693 575893895 635983500 892203853 982225136 292384908 933911407 251585996 768566187 297424509 964229210 254098507 689402872 412563867 431634445 96244073 691361656 506080945 918928994 95093417 368427044 204860723 408780178 508938430 580457924 822636595 926278006 926010180 964558868 499873952 740075472 916680275 940794418 14345869 25027014 962614002 963588804 223286020 949054938 113881750 594700015 102881474 258548374 310471323 984160375 220326104 660680881 117007836 681261702 668478896 686036997 805270786 856326919 236277528 770455702 178114053 757610184 925208821 991999385 929655921 957469254 543629392 788796726 916407687 947361659 180581940 540470761 514638329 959652769 289015933 596189114 440563629 480178785 413070708 677304778 896972669 951695065 997501503 998013094 850819962 977524615 138363545 786484799 715561972 997740500 110812645 925718753 724714519 957985548 628456965 723008731 354228719 646119429 268869903 827976857 118769456 352317762 840284838 853083516 269802410 808380248 202668244 274863336 281387430 838636183 139311862 676078029 574990028 661061186 711849214 821758821 127292354 838216018 612508846 659468485 412659643 762153873 967547961 988757447 869987647 925210536 863912996 988709595 249553115 890621063 781521558 827306452 543114764 877668355 830270571 966787376 371910345 603744353 327653113 634396978 138963312 781270598 147165036 964246168 602224562 879480806 787925201 848025695 220547321 992080765 758721884 899211425 188872626 593773762 164932499 359870904 783554818 797191142 189380323 878221202 258655114 879364690 315038922 961946615 812320970 968671735 727977479 969436446 211536097 361793652 33407973 412389623 987586766 992465849 820459105 890976568 275387024 364491610 139281243 870660000 877189000 979592664 713520707 920620675 268817160 568780356 46505300 116438860 326646975 939825197 649958787 666005060 838697310 855613480 609342424 868625277 270731252 353080940 536906114 556607388 382753906 946918155 46831472 161243381 331614553 355185662 454100174 983788956 719291680 837134177 34629840 85819282 204839869 680784394 372571007 746805940 163375853 816660806 94506846 404303119 678624654 897191810 529946939 927151689 35775822 470713521 458062974 892423450 335237734 679388038 974047191 985348356 99460839 771572321 582532224 833130873 225408615 944132883 412158941 721863947 826409699 839576730 362574873 917992494 714342752 943370604 731193439 899620796 511750331 938218779 794790177 930385499 121051611 181486020 306620218 433690556 813111811 926330291 982941337 988852162 686468733 692348711 655647582 942554138 259171613 616187945 325784601 434679914 67846434 321154459 870039354 914631752 9938906 757164140 897071958 948814386 627290604 729913829 856750355 949947973 441440526 468143950 427876514 528186034 545827106 680571855 559848627 703267969 888618177 925536049 256979047 858846094 969488922 975201993 969980269 998211731 848034095 923323666 940259987 993350328 256439832 844014676 602748985 614634103 319415219 663891854 27258450 956012467 833078738 834785751 525881769 809696287 834291822 939914901 213384776 983143998 175675080 955434796 973842725 991392201 637862211 924851965 463885834 590466956 310378496 915292065 438638316 481494138 55207551 891235896 19418305 802761252 395898011 750882203 923901814 964659759 690874269 747529438 117562916 722242743 374376543 451865062 208828619 877241264 95107279 404798728 772395971 786770990 765024375 827282605 14971590 427981197 811870799 846279330 536347372 556406825 345994145 819047682 668025368 845690311 501800115 541021533 294252537 813091376 801022479 846007351 422048859 716897910 317847879 469732551 506007359 744681961 279075343 886725606 154193965 790585483 640668394 652949445 132628257 583294205 595249628 691657721 339629832 362276520 123061551 192160523 788479590 792439839 579555692 960848404 349129273 991977326 571650634 787370177 172755260 910473416 684931422 772932406 468806191 740378729 438474567 502367023 760386862 946155057 366901778 732100970 268316297 538016890 136802112 811620484 931499568 955739037 977023262 978281338 656626173 982317192 728962580 787862805 867777625 998961297 749480525 867052309 846602938 871033863 917981013 940182698 239540350 941090199 408704724 455937508 395268418 426604904 500204443 614678914 983519530 988422106 159710404 778097787 528459962 678886848 804255426 838901948 48428053 305432103 505211521 552239589 663382890 779283446 459844623 532112181 86911214 566623847 694211071 846842026 779678057 956032727 586891871 759604808 78664917 495319055 372779033 864400874 867335978 919970215 1482431 501294104 485921968 782582656 243123713 535293179 945228679 990956068 355894865 584371020 10788220 944640772 501467305 724363256 967346187 981675249 390489484 396760668 20066413 531098403 983029638 989840970 452627099 850462247 902096828 930129603 649693133 922110694 146441421 757167420 5268764 818039900 979306576 987927311 112265698 426563565 932341075 952492543 322926691 325957123 806724661 880629478 312304849 460431956 173212561 881943017 399952791 975319096 765761874 902248086 945541788 986910158 241734223 790990357 998149721 998771968 817272027 934981235 712685289 753068392 54809371 314703639 419156733 733363287 712474079 855282046 64650030 962758692 920622652 986323432 464257967 556218992 427098095 798671243 372334935 517772032 170384993 630869647 153793687 837179882 208520222 847674577 374262260 678751133 988385651 992442789 823978375 976132713 886683455 959005485 917710325 968451507 478710609 516407048 271633575 990369901 965616491 992530001 444570280 839764291 632485784 901090039 687999101 928260783 301510128 693317475 200233235 283419662 703644442 812906750 349404273 683959680 783683213 968898848 901207341 913648904 921206966 956546350 359947159 767856330 539924703 716238603 40875166 159318709 124740208 589763500 491423697 839814922 901441635 979515725 427331450 894427493 803099209 913937506 675503643 919716719 106105575 498178917 914135388 973671340 423889274 763317517 478378930 980125204 737757645 957780581 995206086 996523033 87022539 234226166 727975318 824491171 421525469 489505499 163989660 990724538 241819603 411126016 390448942 548224106 736070705 988954939 942917485 949579590 216748599 513784151 532259229 593415808 239960766 958731286 193378681 611299825 335149595 629656143 787471155 861510227 268560510 302644661 862086426 933842852 922159566 945780472 370198302 692148863 952578764 962321233 9364572 41368908 308854725 599568423 870823587 945103072 287136087 410374792 803642474 964029550 691043343 895107478 228025595 619278006 61378815 654246564 13890978 960065644 906953214 934824054 10524042 746022282 597287051 791981974 562666280 588599992 337173118 454788724 444913417 957433963 474335767 750625859 161502683 816296462 925234440 956847598 789822201 934850185 761433247 826065349 81286921 587631806 384246170 973160603 628352497 733339515 373981088 713203948 755544169 874555651 339645227 811546742 602121082 772067847 430411392 659769118 860437714 965095177 463831235 606333935 485860350 791607559 208989325 668253989 359990963 994518859 314882282 325437385 480874828 782763261 650227300 836083565 340932878 993422639 230363361 971439020 244687738 882497847 320771103 875938158 896491886 913643461 768817097 788827949 156933834 353846274 996773139 997350124 52871894 199720506 373271644 642377342 74267792 561722504 28925850 663253554 153258704 719611209 747430730 958280594 845135883 907725520 606846612 937334616 874876687 898975344 588252838 914476254 701315534 771156218 8648065 873049487 193833250 299839810 871970213 935864267 82563130 483454621 809584883 817721399 978132330 985280404 248385132 540960728 288697887 371510684 303199079 896597184 279556956 445512380 764665257 834338047 589665017 869441298 320134750 958279213 320421004 614515649 570603057 898479714 708150731 799225609 416603777 889072243 187260708 193541946 631558402 672825595 436208768 609216389 686655231 812958193 373458878 459996005 101750131 594269415 491379459 552723162 268426322 379487380 968829422 997152147 315131312 561128903 127855200 445647943 808737598 825705242 713138857 919124851 115432264 863173352 831792555 946925206 959811864 979797531 312091199 927869152 960389617 962050286 41875609 993745436 437012600 649577860 708490793 841119149 944860680 991378119 200773594 749546108 490137078 973343107 286252537 445325612 504997706 535610003 4956469 643702952 661890519 875795958 624432127 812741195 231908428 238729699 296629077 938905612 239841725 344064194 555969204 843850192 198871822 770402438 618012852 756764333 856481921 991348749 689006572 721926949 159596122 496671349 68610784 507755034 828923505 831552685 530838 630566164 357394281 711147093 900194907 933374845 754644009 965066445 413500108 446314276 582260509 692284674 525516562 637166439 587465787 752905193 223841176 924994513 384089293 883144266 875067475 936211310 72452239 569046160 610159420 868880242 545650480 643532151 45630461 285379997 536059972 581371704 678366298 912965868 130774533 486752095 471796988 982366666 994944928 997941337 433464649 718056296 853629904 975680281 932836735 993936380 182661827 550536647 571236785 672240317 402490640 433897269 62455849 706519347 908112482 932745573 671709532 773946986 735405635 865947546 864382646 974155917 257442993 403157440 460753276 844493771 154952200 825211775 311379920 522838064 944652583 953325382 876576493 996492575 924761900 982808144 813346762 881508971 186989379 199742334 219363701 891748702 926416071 965743851 342791586 987084207 301129447 392073113 704852300 750210243 169392802 731201686 863730115 955716232 20020161 816525486 339964616 798639197 466265406 741998032 467515226 792718095 87336995 400651349 381980530 440882894 726718676 898304396 282330764 745814166 119047744 333430560 788951038 836747377 720642691 762087960 608302748 609048398 36292698 479967981 669517844 697831627 757277959 774666370 559713370 942862650 497805451 657511005 147009299 382220815 787739588 994535168 108457646 574764603 461405122 885740034 690524581 922451030 17816472 844329176 849906374 857497220 294355502 719954756 475310382 781106661 635992025 803020636 82388908 103285343 655519586 739673294 842086249 998463445 486757764 940779473 437608057 664199603 677324287 802263309 932705989 938592221 386021580 847575058 248167233 302259831 791637956 984117249 159542159 503034932 24366907 488218509 752104577 944155049 104002001 319626525 860637920 959481150 258346256 696977356 738941158 907749328 657419529 963104070 214158205 503350339 98086830 148388045 485526004 970542032 819516432 954278689 850983741 913433599 539089005 658388922 632879102 845042317 555533089 641363406 577874451 611329008 783177391 880830046 962542736 976157677 294086906 529769971 900589623 946817825 189349128 778454070 402430176 442931934 240580297 342598914 743238226 957985573 68941587 367205973 8168547 543590649 955073690 966688114 579966228 888182479 522205803 926761357 721681974 850020832 392561662 852816303 580929861 873936573 254908353 887879759 791838911 827453356 70346939 721666797 877227703 952944360 301176198 476844646 18974331 534326639 499942053 723810945 426420721 621691560 815137164 821901463 714264974 944516963 661658639 735469358 961578305 986361472 872643524 898347065 555295560 621994960 371147038 805969583 213676943 620099041 625955007 717132119 125941595 141130383 904345611 980458558 780445716 994662643 497145892 806511445 399877218 794207542 913777163 930359145 752314786 877378576 214699684 491441586 673955931 765894124 774690515 803538258 59781496 198127155 84112904 339526439 761509058 932115437 628416255 913389398 50940915 136876519 586646211 942353121 115981442 906412260 361415017 442389935 547850161 618874839 585607540 748712689 411077468 661724107 99689501 816456594 287909724 331683347 706284083 882258458 870842042 899491496 786121697 972324651 301188634 573388630 332167050 699204307 120092351 650977892 148227780 179172185 242690674 450115304 461126354 521731463 222407036 967128615 304095837 869247748 54920013 59682019 510807065 629009500 794065024 824922554 83543230 140783360 502878509 865168930 905258146 998840206 240470344 660907815 15438315 272009992 948666553 961009601 138794205 188192507 99544265 944297440 463551615 499980961 246359924 978069490 764372437 823334452 810196117 849161024 326825694 627928686 966942737 984560790 73625218 350246869 122009332 984139144 249336239 912357994 445778517 925065608 120879418 815624219 234057948 742916192 881112874 979524867 51642396 704387799 285317406 323597768 12718093 986668718 278242227 661076164 579143550 900365242 797129508 895156290 824595571 948129160 252756326 534272116 673204970 768232072 838283935 866963709 944460210 953065442 650074002 733566693 838777822 908505725 526128217 575527961 323422238 721863555 990915732 993406428 921751772 988755818 142114850 870878141 101647827 945277360 768474473 932653655 583131867 941468338 980509808 998883067 423085048 658549448 316473957 860526275 878861089 937443972 822640603 826587227 668468351 959630436 849642400 983219804 766862110 784936302 867511350 995156149 800351861 878027108 755368376 800125752 279164425 558849941 545011282 758220011 526172255 665140241 628884260 727573203 227529801 587048073 169725963 357172750 345725248 971529024 910764093 931769966 798835503 949968504 955109821 978442187 372085810 874051887 372770794 740414656 535778329 830474462 144103737 389702190 485413365 718883581 540564580 571254593 518646164 906000838 971805251 992867977 86517569 639990127 264630219 886390293 666962009 951203373 771068839 922187180 845826716 941883724 306232722 317464617 431577458 929604361 989951960 993544796 723574374 899926856 80472300 677005507 721855342 967087814 353597503 899383976 717042529 918325689 42657615 172969762 620189895 887478432 83939101 537319758 463013630 954360925 208384405 389803290 141640853 500322260 927894296 977978418 208539781 333241452 178346283 994338339 631384681 726947695 214846670 596436321 701607221 805508749 910940785 923313374 584442194 641593068 603225525 719569644 486931587 876114532 468855371 935849048 380696051 857858634 125621029 749775871 490392244 508845499 156908145 639844622 988668981 993866646 996181579 996575952 523522283 846010410 621447153 671972839 109541394 431040858 534474539 660896868 871309934 991856427 739591149 998329386 6036451 417105481 80103771 889687999 592994456 598728193 679853027 779967059 921807079 998808301 278028283 654756404 663048175 703128610 720677529 900497260 125917379 808104790 19435541 108738751 318276177 634883055 858292419 978272651 420078992 593496179 288242670 569579365 763962297 813421489 3941992 349280998 6580250 345516380 862180256 980684713 414669040 470907402 648403518 881956538 58410375 699717110 584286685 636396479 714738261 956254788 231416890 689827928 535524636 873002299 450657186 828624714 179760399 602334196 584338479 967844350 910325574 956501513 571462299 737788355 485239975 914728838 716823341 909359879 412583061 812554292 857783045 885861178 484742467 709064420 39164137 436666244 35632391 311520696 514976476 916662893 296568214 431740431 191279931 977672062 385279400 687380676 32334997 74683497 762247168 893750894 981434358 991914327 100810484 266394893 271518695 690910674 435968648 518547351 82747045 222852105 293903922 672369874 308831720 402309360 825098356 912907225 786531384 840520031 771992981 993004960 745285318 954958731 597084470 678791240 852357999 873150579 804137461 845295478 140125602 349008622 681507114 759812692 969867140 981952243 984900454 996602160 443897452 894579763 920388047 970263000 206957269 471003695 23670750 435324310 312071136 443135677 137558186 395895409 787921120 874080538 737974125 940763795 377335925 683360515 796069703 973957707 645933097 860464236 877752596 881762364 270810090 364218298 946396934 977553198 82800089 710976977 812434015 990148944 115023878 573190535 625125762 863068548 79128069 423658624 682451423 766542930 64251075 440323643 9384544 79720361 382410912 602566643 401588082 821412360 990112460 996844124 435947426 781211873 453465166 551429679 817389690 859009770 376819484 670810394 722598401 733380136 314481880 540178242 165897088 892475282 239976935 577878413 433707236 525772605 295659593 315442182 6849587 167826510 248581195 896852824 654293545 890982058 286996243 597455477 50787132 660366880 400113861 718393864 451723823 986106197 810728448 929595946 588317127 642379492 195596232 361129945 750652705 780206880 252845989 709416911 897922701 951398117 632726293 727999299 436591392 462627992 319243148 898851777 984546371 991577534 61008481 851952755 583601099 678141673 437196396 949922384 667712270 690297092 52433180 939170520 750909556 908967770 167893249 518811198 542256165 546248095 724478595 742164015 232984152 457621613 928102801 995002766 264110402 324612511 774141603 982143427 394835682 793323756 780707790 810637643 577517606 979652958 104022612 245890063 836633204 988934324 662417414 935873979 531665109 765195262 322631794 939955131 322052504 323990985 16352570 347453549 305107555 811604430 672523345 928990040 338794744 681043234 254216806 310556829 993969643 994312679 981820424 998515153 771713130 944963899 636053883 957223086 516353387 972643707 915974205 975588503 935681888 943999266 449559528 514530622 811072669 959311632 377099442 421866188 604653642 638287653 199123775 434885008 443423099 724968994 624952258 685180392 26165269 335905120 802432004 889995097 495140330 613737861 245702294 718934092 397490950 688707690 62932642 358309685 722536484 888790259 631342909 934870700 753411171 763807023 594109580 855455216 680117541 845753560 507150774 668246836 307352185 661136639 752996511 989271754 124678151 657663667 558954960 751563021 298560900 448616373 376094129 907339832 694297330 937074815 862086420 930137237 748335733 898547954 93567843 642934083 2842914 613905753 651713739 791105396 93745950 149327489 4202285 317602615 675483944 718449388 162293278 848543897 944513102 973634806 271983741 708065191 1001450 106726882 766453336 971535428 342712642 692958648 744700346 974351084 48311555 535401520 561708825 679041111 5056446 675849828 186749700 584067122 250094699 889363286 480012085 958357332 559333198 606015512 719012701 734000823 643360651 705399266 538335610 815429734 837894337 881943736 970671702 986506041 844526069 889609546 948868382 975760477 836533777 981964427 726331732 865002765 850024090 929681958 578247567 841592491 506658863 711730616 898914100 968463826 241469405 768880037 900455338 991072410 641685052 660502718 750104384 944328108 4042306 152381167 361732368 757998947 942694153 972944226 500470106 561074845 349597852 829637883 487805486 802704998 803290261 913181090 622176368 644049636 169050846 258345799 648495928 749678393 498934494 697573702 40721674 922558567 94581124 456680086 874381150 952445873 398126791 752377873 590960323 717806030 659129513 801150724 52509519 932416638 205839798 683923875 823138203 952028982 31716057 753687659 258542839 761385184 332374987 705073475 44227732 599223263 9970327 908630084 119914138 629383164 975890021 997724699 939567678 985863656 572428142 699855449 941331775 981304131 236676682 780407717 91027838 692726556 855593099 970629236 996753030 996761703 759642782 769904931 298930297 830528055 700061709 911216442 586106701 885504809 425154066 969590724 476856673 700416430 831951863 975413267 412352670 479907862 729087929 862377310 459115362 837386035 45450682 440376801 637316309 682065731 837532571 983022198 774755243 934202586 295517086 856988319 938070304 949729387 3994055 883953904 130268725 354830594 897290600 927759631 897310498 966201687 384377919 663662732 224762892 826600241 284191429 449233671 526305900 826136097 269594826 672028714 250959872 375133113 732770326 801454636 623319448 746753397 790229888 933033611 608994294 611415486 647876157 924816131 342838566 785474600 330386229 407645684 10575969 679134643 34789158 457682658 800889904 942405038 845118221 880990286 602337673 965807655 527521936 944585748 919125252 979494666 620881858 830720975 34572728 326073798 278288457 290243885 799471993 837241432 294546206 553232457 476993491 717080935 347725420 837986723 495396662 556462810 449036143 744048335 155527453 869978343 905288485 970879367 994975046 996612161 716994811 787338891 414628678 897260660 911346044 986171338 81489907 101344921 961061278 988401639 13573620 962348570 503171476 529021159 938304389 977752106 739060791 994317626 402420137 410213625 833456281 896725915 544801681 926344718 34217761 871969649 475702351 601068216 502281763 821520061 929301726 946802797 862881809 890368215 23112304 194157029 679331950 888902751 187502198 555998049 532046183 886913605 52342293 823699540 620280035 866144734 144924889 754200771 637085336 707184958 198186307 868748476 394766058 505617966 206724785 444103610 821994358 920417999 60693529 611792563 399699595 455021946 721910730 960182550 543056348 726140198 972633250 988614352 344790321 729960521 995482782 996922780 860802294 870464431 922375403 950599254 968995696 996329052 533761911 967143579 741020860 964233761 344847595 978465896 551918912 765362069 525110898 758275698 469830449 702137343 969002703 975851261 562907705 851402580 133623640 631656568 308543614 705244650 133908548 641493564 382988927 668251868 803593571 989288766 837067021 942949490 847135406 871343998 364003444 927161960 538027853 760052988 915606784 945792382 701522326 920746184 804996870 931530188 287659366 435402725 337824659 833720688 290941711 605124796 241495912 377061024 866542717 994817885 749025419 763449220 881713658 973763228 486772864 930495892 511571241 942636953 957972015 997926824 813239472 963962971 953465649 954844384 412178358 723006115 139234947 228449038 86208433 297387731 286354497 499572936 243649717 336165566 523075350 767051691 274334762 407700769 712038040 773244915 615956745 695089435 691831918 818463237 753654647 981871549 174545915 264922493 297765715 572189534 238296642 297357383 523464349 903744299 511302969 672030124 779102562 852976364 972096671 983671133 814686377 986989756 534144515 604041955 571475845 644163692 669730486 711362224 736028404 780097571 839685882 909280711 243399252 945452729 41754377 863746335 951497234 978762966 93272588 527373592 536203683 588851834 227153301 524192062 841809777 842580975 36076133 775339736 396455287 965161551 826873993 983511580 454500150 649751237 734032554 929564207 379532636 746134994 799573033 973285964 839968265 994737449 539496081 632814346 782932149 846357302 559034039 738770590 851227661 955047114 832695814 863871828 832225927 967842259 630146115 837239895 11589460 336211018 552724840 727851695 58248063 272541771 584982980 978963349 843522115 995302695 692383644 963213105 182924130 777814852 222169513 446738976 286519584 519000950 783908373 891958371 420918995 538936676 386276488 533171744 133315138 780695862 774558076 937037682 377168962 824614372 565703459 858787617 19275442 782924196 582503145 796968302 844334283 951035405 755454113 853615839 612394921 880643951 883368448 946812881 565633850 820671439 360028629 612031236 500418609 694638920 368655091 975893673 153919389 609681765 265318444 835271781 123861739 367357612 537949090 547076478 781668438 966732004 804785003 830618196 216317875 826156512 828595629 857328800 201799245 868481172 332456806 499076632 56042926 500063200 811301827 959347711 243486087 767975834 391328994 870939023 309275033 647657884 707166338 940954132 504894643 867359367 159209287 260636026 948417631 990856310 529893258 992343738 224734101 794132654 747069529 952219457 614511584 732737308 477164243 726935784 881745596 927891662 473046688 985478754 386397993 882292977 74682650 618058682 101058214 466748433 611980239 971467611 311296810 962289760 286551895 419720424 762472627 799266737 731705115 778843346 88724422 682067180 694337692 754139543 82214237 962684607 36544296 98167523 2198816 577922372 394807096 450080411 997380709 999024498 526780556 593107518 461022065 972480303 559061436 720543551 892554973 909012568 377287897 722121425 349764899 352120169 483443096 628321625 81734189 670034865 585037724 625960922 40182716 222118098 267692783 901112142 378326270 505542663 97574749 213046975 332675356 928863668 304476724 564520920 402814647 580093730 570628915 791106855 237638328 969755473 708049326 800376042 938836818 999021153 189287437 201764001 975873164 985722198 597200419 913923958 788637235 936384281 977965626 998941970 30556666 727923007 309562175 534520458 185819145 261444385 539296965 954508034 176467470 298130939 129740369 440778097 646272280 876236013 207587577 296732610 177207212 581775831 99888562 672093859 478670950 619414444 16630448 596398121 350128082 396446772 480212373 805147821 474770522 489563550 176718984 814070465 500033313 867877082 522159380 615912501 637894831 756580371 352840611 503783628 564011316 593978299 981975531 984735726 79403770 84999504 719092539 860529601 580440889 800122720 385984591 387027353 61814084 250098932 371081678 819591827 73525636 511747454 740802982 851240356 562986091 844652313 693933584 933545984 407042058 680503808 480833923 914582628 582204060 721904382 739536381 792258952 38281941 346791253 150528782 685032650 851775712 896023277 855433918 873728695 867498288 869262920 806073998 897890277 141922969 147278716 875567478 919663475 504967718 888254748 486974575 512491381 264816760 753582148 15430119 943702319 20466966 189061997 586545651 898853707 732641736 987433561 371368252 979584664 777930173 802856582 992818502 996820973 788001909 945256665 380026186 632328912 219998996 225862142 23159048 861980763 894056809 944484945 316089335 683527792 132890426 749237279 901577259 949487135 133377690 951543886 504894928 823560884 364621553 921091441 941998466 992281905 672950573 974132116 770702317 935611716 322482245 999017236 58173549 112326743 665203642 811168869 458936201 773060367 359423572 505917899 230862949 315600454 211783198 687476119 198862758 483441770 410099557 669119433 20767691 523815491 802555316 955598169 511756165 916866284 457566358 485853080 403994895 584589212 484208945 859045921 998559632 998885323 955248935 968441903 975247409 987061074 609568094 851827363 332743005 390131309 523589747 980491004 407797868 457477548 644527691 829419092 726487082 747747301 36612848 148325087 190451971 314405730 126614932 660296099 677884058 902668385 361176807 765434974 546813072 669293775 541509759 676620303 990127852 996093160 618209017 637853434 623245908 832553695 221949423 775669134 801139697 900044832 875182213 970589177 27347446 489626954 808867917 912341022 892808823 996799168 76414729 795402836 299853191 951485898 175209954 671658083 379616034 572401382 109052508 375243587 412678413 572880640 92270457 334049502 561657741 852726327 300064978 435990054 581355090 825442175 258418884 744753071 210211648 879840135 509335804 554435274 417086186 552447583 211642587 741322618 432918225 809715423 307249831 331341457 15933775 435542059 775536669 953886790 68328950 340349285 277096365 313217199 453150125 669741877 59850220 783289431 861893847 934022344 266007965 871521062 33066196 460444175 163008677 375837732 496227295 583795062 256288817 276765165 847722789 868855995 491227220 937903240 92062653 672676929 925328430 926744224 146692081 286999457 490784318 959800541 825162906 857295701 684519725 828975311 347213541 516985801 967407794 998083775 874101804 909840736 154492855 517506086 431439731 599268741 70205606 621188116 46363237 273819260 255635373 814843371 940215523 988393783 843575638 932271245 387333990 928346384 265286740 890109420 576454067 594623096 578413230 865533508 727631629 899521376 595464237 643311449 795268037 961764682 884805632 980413797 255419302 792205843 424614877 733428971 127924958 208149773 635673634 792670801 466055535 798390925 566509175 781508061 905264684 908103029 70771440 431484825 876110789 915893805 7862123 589309368 662802606 817401754 16822695 21701987 53695265 436131460 568451095 910870587 458845912 674215796 691530431 724722328 388992114 893345468 682421958 756705349 781232296 813645576 856168914 952442337 472030416 868602719 791523598 924802097 402623469 746453307 980851335 992411671 750650346 913582262 467969017 680005546 93926498 130726276 539214856 866582325 974888105 992665092 350985150 806262075 367780859 958545252 849497288 932660788 430628406 467628701 170271119 663262505 209849399 891971039 960571507 963301575 758423416 833763792 368601607 690695354 438041436 994197590 571100534 984407018 119871613 305597932 145968430 237186942 316978529 850488964 759561935 827021458 435272414 873049773 438462700 713656813 231807984 509422305 25121088 557347199 786272932 838387188 429460483 807448597 248071182 865116112 12953661 368432141 920058905 978606235 354231691 516494333 753347580 771021876 342908714 891355226 104897665 946415412 888962579 971407785 672816522 837274094 857461377 962044312 600134074 668659721 22932917 737627284 610780776 763067565 475684156 924444013 474357472 875818274 309292386 955479160 558562088 979671295 173835625 774068722 151535849 442301452 656743589 815664976 959066966 971032106 193810143 570122500 815100271 981927199 664528465 824831414 759293291 817712781 379149965 983305539 455883187 844031794 832478570 875169964 529107738 665488890 984573883 986134016 417307925 596697233 712184612 903805663 614364873 852190633 551095333 887010294 418684444 452770028 577122964 635831379 482689860 861723212 780043099 935476909 783462762 920373596 106468254 298579014 5620953 774399005 907376546 981167711 104513429 397652523 148453678 638373005 592927471 634925036 927524747 969533425 521394366 722212298 710299082 738446347 523084653 611912779 359477479 987057269 709769514 959935831 731268190 783992481 454396587 951645823 452461696 679880908 611101770 694173031 422692777 648628698 784968757 872701254 183407252 279556049 170543095 428199421 124521807 322075439 981256102 984366151 266179193 278988143 407040343 670316063 140730161 491121727 779509569 934047335 670578691 797631459 764290460 765151988 384467282 761446839 342217322 753671380 308416935 753964839 789913285 875762299 383588050 658467584 846145632 976558309 165645876 381884016 839123681 845175513 351246851 612935381 953246448 981474874 911868197 978024344 75635824 354190427 573569484 623439812 694931472 898616040 998847198 998978465 904621473 915521835 639316314 667228968 601508869 705731533 453647136 552191108 416210662 504283859 395701723 978221001 279587887 988243619 87249311 940172690 190826341 793050709 151650221 211949563 966751544 972407938 285144089 569651537 650195795 909758320 593536592 684504942 689162011 812040656 399012026 793700567 197152093 290004897 682237708 814009428 134149717 747682365 293822021 998973881 310352192 509681848 957544241 970235865 598034478 785396315 242384658 304619386 818593420 890105884 215705006 246025990 583836684 862587164 787182370 829772768 650602518 819913138 236800375 928299715 508803814 885168594 384566655 534997385 424539152 612928851 150161383 456370664 759792447 953309159 917152363 974271879 154395586 780537652 551685386 765361375 810270341 846553427 527835223 769717257 603811066 753506834 908422234 955202701 925608713 991076292 285958699 640086906 630340218 658698397 211533045 234907633 520284737 765197523 383952796 475657135 918379749 999154829 568355574 618648973 797049374 826813893 318814499 813247800 127223295 846822851 548298154 612236985 998127528 998915558 30053843 231959504 521325724 937802295 805381787 918549579 661966495 949270847 434997650 877496915 927956531 942975850 374036009 952616312 521947565 936355866 496125897 863776948 56944500 520738666 389153816 422591131 260154256 531091680 325711028 352167276 349694363 622471174 313530129 347754367 376414729 562079392 333002634 944894102 67922354 613048429 432538013 769863130 431115437 674156796 166168577 555343786 17497982 787297522 92934652 919344697 866351975 915106663 555533081 609496963 51447096 889593351 876895076 908867285 158368657 362877631 845690269 857087005 415554507 832550614 802656297 996850633 992249650 997698889 301556576 445262754 916825024 984224561 655549487 908078792 374733400 796376943 19985726 511768338 780595110 889483452 175394670 574454887 869853809 946316565 387996847 473973239 256980410 803302234 304053827 307677703 984412019 984988851 921723151 977981437 459536896 727278017 772716123 953892614 333936048 574365092 674774354 937836445 556081702 915766512 722872126 737176218 751863794 969354988 338916303 489821216 368517280 497778581 326977291 442692357 357686750 474990553 31554459 891399991 378375101 748716370 390439048 525930192 69459176 306192429 110142882 945597283 269047742 427184272 730156970 819315168 282525920 405235618 885135168 907718806 536122175 675234308 500320560 514435273 345755012 966078494 687956174 930944841 774826226 867261603 678551005 941164142 785211685 990123072 894068769 976919902 424668686 705160177 231634801 996316528 265475855 945209865 705813569 961094666 613831805 854008884 440503417 701456044 128709086 540817433 357600636 685281532 978300572 993677810 17267822 367624565 6361201 222760488 647668989 955419516 553462333 753402989 617435879 918280443 793216226 818292815 766657913 949328135 11901066 401969081 311184265 363023092 888194058 995517595 741308799 998920649 483921475 728789228 838563993 978565101 63170917 356929344 657250488 825917432 154280374 606668812 786438551 859544861 394031843 509274584 396964905 492483860 15275542 558705424 975974799 994497591 79725494 652722922 641415826 816572008 488330545 901841819 757432748 888982161 99580040 297096208 312514252 541465452 101183448 530005423 152418428 662358580 134497056 148774561 712970024 938703459 877343975 969100259 33618640 99786381 478427499 874882677 814051592 965134027 533018381 610664629 114019593 350362202 739712614 987077952 743045040 943305451 465396477 814061646 393929802 625722923 369012542 443561944 257877788 488725747 321422084 754912293 309639057 431556379 837406639 993454053 425082994 754847848 519758147 634592089 966756239 980234528 888393284 917249366 330600889 873965226 523293446 600454537 256931988 870377663 835720983 858418081 545784938 911922946 793607747 851418634 747249945 825884134 165181695 187365223 48566738 86898482 808898443 998355339 359243195 429045131 468799421 889142024 627751681 843073107 462477160 575925952 459086029 590093592 414116106 572537115 322124167 412236402 229969255 421686301 364319881 659175619 958551437 984513829 175926800 345861736 881387554 952739053 411793344 605953463 610048828 917902926 622748229 806413244 89849447 109784433 366362015 642197448 27567092 220728071 703837502 917303377 65195759 388974074 822886944 937817418 81892844 967589368 898048712 928275886 553334734 878171503 926154903 939704680 28204548 362989396 377639387 401625676 999042024 999335716 983983364 990646798 244583858 758704453 867293503 916858698 197842013 490464971 830287303 895497621 189640850 919637475 86446685 823053254 155427802 389706098 39723087 641604690 185141671 561089611 698758435 852848031 833456397 873994994 511084575 765228707 503845755 649424459 880546383 936938536 956373940 977819137 185165056 207250913 386568831 517765215 511666551 711512698 897891025 987471943 75503294 953424740 366805292 441561373 522520409 636819574 792678274 980670299 332995532 855906459 316002328 886116037 618244461 789032586 806950997 994050717 354699063 596825201 682214949 947348983 628180459 698185332 244555922 948363434 354645125 908362796 419037152 839069212 867105795 994206574 560252355 684759992 345318492 550103596 446260318 886741212 403568705 713799330 758426570 823488138 469054219 623470042 537295605 960640690 850647925 920280620 872728028 921848016 635049460 890108456 921430885 928594969 332094946 563834747 880946752 966644652 296623900 665772910 270933530 791912131 265339261 919872983 514321689 664965852 581798728 792442997 673358352 804671023 330446073 781279317 85228472 842927343 414363608 553331610 388471303 500296338 524037375 664294242 486062548 545551655 223246923 689899824 953269273 954713980 343692133 944885621 326080500 335382477 655938425 900693475 423065854 590751424 345908139 544518322 451907081 613019107 800215540 883370751 351287008 807450876 106444437 404661648 184884378 605038331 514780800 891346558 857145655 872156312 720153187 816738941 651409726 799905256 635049019 721315141 758268660 860974700 772750478 851102954 160073726 809807540 819239405 864582692 109627795 348100157 892168819 943914788 443923351 595953203 248467702 655225770 817727404 885130664 77746061 542433563 340318247 490374023 507006500 550580153 607135826 653782208 592007983 720142917 136167155 185328337 618045371 821275730 354169278 954885871 686704886 931005382 75213147 734409884 410412599 467780983 778593129 866596717 715961145 790929026 222481491 566293705 95254938 264245776 500712418 757135685 176424988 964670818 264590030 810310606 272825686 386562352 593323901 650651229 824295810 843043617 592582043 958473125 463338387 553328486 545832238 821870867 550290738 671067272 688913703 770479615 311770187 399122301 340398220 446225066 699344629 993532878 785138349 820870492 82245531 689568812 336628479 971933757 803870329 960029450 56714007 868313026 879950738 892964353 653631705 893177211 704273383 991796118 398847324 790858396 848355984 865362683 390288796 465655253 932897308 992193267 604418353 964091195 364400229 596566826 831039877 945871387 732627569 753431629 950184539 977701807 535854009 804268768 997708028 998491738 839631303 846619444 524770114 747483280 370237935 981288391 907049050 925879934 534505638 618459336 326572461 636064081 176878042 258823374 355660744 493467963 801866596 960069533 530808540 743259357 901756952 997089546 800828663 879065996 864221052 899763646 225865720 901069639 931692132 987256815 74104961 673734316 642291647 776713346 165884281 296128808 105307592 918226543 165986322 659001466 853303103 864507793 82167839 864883565 969284736 994686909 12854191 825814735 96293943 829652200 338254712 557134257 158430031 462321992 925790519 927135108 21594182 353687573 510311248 778667652 195380532 844782593 59151761 479450214 933598456 951707718 832663665 929656990 164782607 760254399 764451477 780097100 358336916 483059127 226403256 636541127 240324792 316360656 819316241 973042917 597594633 646977501 34592797 256724346 806334130 860427212 741918894 784920893 169620378 810724753 450695543 848952539 837329269 978915919 299588491 710470244 737345035 757318773 535947348 925933860 650784778 696695940 540676937 985641794 680841748 890025749 855529864 869754868 100781463 906308149 587768883 782917214 907088909 969489598 82865474 260766881 716380152 879326524 367389842 665821196 435213656 660401427 407532394 799965720 98572342 701249159 80352185 553552607 667643206 938292802 961095167 992075460 751994009 917541581 728022356 963388679 8849150 321886058 402924258 685317194 396802449 771298315 461475591 814590350 182750213 864216437 91671172 891972704 374076830 681708256 268133691 851279359 902623594 919949076 534676983 543049320 68670037 685328241 682044175 719182629 134516401 439084660 254750626 733853364 855475013 877626739 343249604 405749146 504838993 681923380 305354356 890014034 243684610 380903732 139101391 368695180 190674935 368860488 928911178 994116158 431293173 889367132 785546148 787892679 828242725 935294895 315022889 425615767 329258602 363013236 39221904 949849098 907970512 990851725 482100141 804453202 355102834 717032431 466265512 935026753 635752037 738961937 544290617 817965898 145817058 180726299 736825137 775870257 487807102 840612690 504260668 700756477 654716973 855991844 561341927 758258884 26129639 552394593 945409332 969311496 447781231 499894543 808565795 966724121 82919017 157469082 226305 119433634 130980168 481155284 534637064 677641887 285628969 489054906 907757092 942391025 486354887 859623672 168330624 650301036 335399254 429238855 690089043 755503613 993327392 998731804 896151972 987613458 434723815 626774738 392403948 913889847 614640213 711004739 697871979 738383220 182303098 987083014 13729591 767505065 973847196 987975550 192055820 504684484 536074006 840300220 762376155 944015866 627075337 998516396 7322895 339328212 878978468 988371933 891650511 895315196 789048452 977844484 973540232 996419313 128113085 610942959 892253596 986098959 3840091 108753987 399911865 466896788 244609290 410039404 787569952 909854647 96634453 570589784 305180448 790794052 349326933 983830566 399772141 846550234 617762347 827795837 987284750 995283304 14869933 901704393 458017917 681302438 215113954 982240913 295080449 406449068 218937867 378608879 950611457 988923304 897987957 937321727 163869784 457480638 935982875 948544315 887328664 982209021 130502830 173786414 729271143 857871358 439016000 754259894 716991115 893168768 867714094 876815017 546092821 659246599 44975144 730048493 799643900 953972711 682061339 912301319 292493264 513049745 689989576 942212650 232210374 848779624 634460978 997468817 76181268 449734784 541431946 731138238 143705409 715269233 32975335 306037061 525295252 942861875 20028449 140479339 890679020 902858898 165911662 545819935 60849795 482926236 498738445 668347280 261704660 871824420 90391084 921522401 687423595 807995532 574586433 902205477 170794604 663530310 791407654 882612620 103714003 213031208 488859762 985731660 27323389 564706243 612831714 842269046 306685445 615387175 690849898 862332798 413144739 652849346 631893822 645430382 599396369 744065971 208315789 656989760 490953364 690290879 51882292 332300208 363622961 623114476 861817973 869477279 401067539 957960647 710903535 965271828 536387419 559188836 851558872 947546541 675605509 748828520 878840154 930979821 461207951 700109221 650540538 883103677 516534782 677648601 153758844 367152585 313881430 883392226 392237351 486190077 454704317 581908489 603443102 709804955 79751298 131608067 882412002 909736851 684891068 716139975 256850881 670475748 698936465 960573477 53459474 552283921 230619467 627765933 879888551 938068986 391538711 577312333 309171614 703934920 308131139 690901700 384626896 724064027 428090026 655404494 432936904 619470237 710604309 943375487 766495333 906073798 633518081 877469084 634807225 864479982 682583182 756266140 863766712 993962876 637991701 832838314 182699361 343950676 704070923 707882026 886232000 953021159 339776212 423431329 227483387 587093498 73048803 705769951 248491343 644656253 835238107 872601874 250873958 324901402 589192477 704591927 550230752 797542187 380539240 497525207 824860906 839312984 79509196 861812058 318641937 896006383 117621440 323125213 546146413 683578070 919258343 958133016 212385272 899424911 31680676 585926641 373793983 509876920 199259770 835656823 47255100 221352500 954570698 973334386 901573131 983612661 549854869 924951237 835358992 858324580 891373016 942275615 792568943 831621049 45628582 558247307 826416297 826444709 970877400 986195847 677652875 871171241 517468115 992349431 310060501 570868123 333236854 955904586 342806055 437584642 735579873 811539348 702673095 855892926 944371544 960367797 893592662 904333930 144371631 236901608 716305719 971422982 897563397 987003781 514212960 963253852 66613340 931886362 515032053 810634081 883713368 932623348 653244296 787898120 716122082 725042691 520458115 903818464 324360589 343918514 352245568 721523400 353964666 501121500 165264639 897864590 456564269 949936426 19145549 436505150 721845748 894853442 521583452 962130536 382823029 388197773 97051897 330643827 35907022 939528712 209395227 312951851 936057745 984900997 247298155 621507966 683495860 984748556 464067471 802970880 138429891 915896289 155620775 649046237 307748229 369031243 172155447 781005840 455820494 982893526 166546937 545444415 2921662 239213462 132783502 250206437 982456815 988934674 379520154 858437671 102350416 454624059 931216579 965351146 563687542 723667687 640984720 920477684 284167640 493841949 993389364 995948271 241785006 599721784 45507214 82597363 884407231 978015631 583158699 744227798 113948118 143283763 916500373 944978696 55566163 871229543 22065513 675871347 289709928 335252455 818068274 983431644 976624538 996350925 259668283 387339514 523087802 976386402 747915896 897968408 511158836 672717839 935206444 980240286 166170806 788480040 847875887 936555115 645787446 949487257 702816050 912001868 935681795 992831970 159269772 880149790 326706180 550055424 84771793 107635124 866155437 872575539 304065846 615041632 313040162 705233438 618372584 868885272 375754035 746228212 192548821 510594062 723681640 758747063 4429962 270585221 257343928 820395482 395786662 692098990 807366117 823020162 780684418 916813126 525387571 565835095 607980962 611510510 780329709 962338455 188275560 633319636 728641352 887144301 637766970 793707078 969534699 994306909 64175395 978839691 473187194 968903255 874566369 969742747 639432224 848589831 214057783 497526782 716695796 895946624 929381438 947521017 926705035 995234520 269811394 494574486 397881313 414824266 509262865 864404143 117733330 189789559 429103546 983987311 733290149 785708456 364752577 644183987 310342064 560745345 314453208 322453833 595416740 746819588 756566987 927839883 358437326 506699705 439890075 488958665 67418029 120343296 416496572 484862617 97112039 399649958 31777529 432825201 614730166 861030264 839759215 943546843 332543371 743422950 141365734 156602029 490737419 808138880 752518079 814227198 41620808 350222942 639866522 664618034 351939248 572243230 75519986 208495416 994376462 997216703 12267508 495631451 785179563 821281924 759847269 820264149 501235203 956563103 380738116 404381543 308210264 324822749 195413148 738552959 659598299 674837829 761616536 814476138 80136578 198780416 924374970 926441352 604993228 769635970 194148935 960027589 12636276 388873392 189173317 691024043 529570081 893499061 700028434 738846583 558900590 784549112 432060352 716763845 689456601 765907030 978501607 984353158 933439598 943137649 836746567 922638251 669677464 923870222 641508445 837658619 429535623 572986350 902765534 943333178 522721609 680014893 924108203 990940123 878933766 980985375 362511091 890860551 694377912 830488520 867481781 992699079 468405689 669543718 796557029 985895521 610206711 919358042 857492022 969062628 594403631 754941749 323238900 398618259 568394551 903102983 629515001 660097826 841145838 853628037 757174674 888547574 42794991 140101256 748501497 848017695 118225756 251015653 321715443 632154769 108993011 905328425 894457950 963093968 842379862 951854519 724652112 895501069 281535931 810516299 801554389 932255913 887881694 936060563 875720264 950675337 678316083 725395083 27439713 586294459 870281440 889277824 782207135 894715604 860548599 925708326 275200266 498905148 417977374 636138348 893956481 930229161 432112379 977112315 99140005 246532204 897345419 910248571 440752520 837081141 637477199 677902071 189306776 354661802 295971562 872537144 49566043 747421615 871896557 956367064 486556899 617650425 475560215 579891551 259630968 377820007 174067892 635098053 711809247 768473832 791070201 868039948 101172745 385028553 875792504 971201708 529717005 623978054 238075390 984771032 702299261 815272299 935027823 957509952 923083187 941603541 962782068 995771417 274496657 996745990 845362975 868923888 391845582 992743979 125333813 453297944 265324629 288097895 567944875 694948548 484397412 982086833 489979293 948371321 606694758 688773820 670610253 964698067 610148049 790540051 797032137 871585098 830246254 968208207 488533913 707395393 307987192 634499004 932055694 964820334 95983380 602029147 191338732 589464474 53322641 173183586 826885412 990882636 104824242 165860920 399996952 582296195 845468142 889210921 679835804 768997456 518676522 672371466 402214042 433617703 760131342 969086402 267287203 707641197 792064405 931732682 232344828 697478573 143541018 931158680 320964687 675230288 117897865 724630400 967325148 980775564 58820201 691490445 82221547 342910144 250627369 715247867 308510862 751426084 229494259 851083699 337953651 888036858 68408326 77273700 767517034 796523258 159256467 643641858 232679237 535497035 18643002 845601633 657167419 926027335 462800877 816761163 608647132 954469662 138000416 192151657 655589991 755647242 142581702 447662476 964040104 978953725 722811785 947510256 139205829 167754945 448211701 503973272 332260587 371463291 192874025 364356569 514966348 772350409 643556558 962134547 947530470 978259039 894698752 999152883 280535370 984260510 126407726 152990784 488580171 593041361 682546882 758039721 455690841 559246077 197601200 920370317 691887319 998833366 767960613 954756009 224953671 753146020 469716805 610848641 141658609 277692900 283513926 551641194 277754550 819249083 519591581 681013046 658303015 843353432 167427375 800034982 724055551 804799050 51144176 905829722 659690855 917606474 789802170 859395144 949750374 990999723 637116021 960723245 576857429 649658932 833547545 988714734 777589450 914582054 613152996 809892929 302177845 922744815 535671855 605090895 73195991 122008333 450104215 883495831 283134152 524269863 871914529 994170925 984164413 989056599 70508607 616663710 625000780 661944758 940723631 985241663 38824934 746034627 765145365 973245811 176823729 934724942 34879447 322493949 151699199 758770624 570304179 878411188 283868027 336627493 793866979 794251765 318089761 897064693 683551322 767547041 770227619 885660869 100371922 302497999 326643341 584611518 276048564 524693227 980324183 981108955 77120801 404635509 142932095 652886081 839416505 950992307 391057633 806323856 192555428 729242313 723711772 746573676 200661201 690142347 732701524 884489666 314372085 404909413 589290341 720757950 604970479 859894687 114839628 847872151 943268676 997089098 73218417 948988486 790267696 953324160 315713518 937177933 887459070 981934644 85651073 623487600 497191753 912759233 707707869 727579667 629277975 803092612 408678033 652299373 668555217 835901921 884316086 914002460 279529259 680534153 862606574 927364294 495200421 632105705 478459827 892230341 925646980 946329784 481175922 544895011 682708729 971999256 547021157 727448870 699005790 839997192 425254975 673243575 38943079 792646975 487946417 835981978 685258911 906335517 138172536 876261067 615653229 652641651 841462734 962340040 617907519 727446491 827019606 872165022 714489006 900564810 725744170 850435924 654885152 809882224 481906376 911631720 412393364 988143483 575709797 844371315 233280602 673196159 349221356 746075712 745796964 991812599 50390343 637974624 491019768 627269285 938138434 983602943 838253168 995675634 443733921 638511954 51572700 275588539 175383547 865762598 601062985 663283988 68519467 412056099 722194579 874520653 395553446 823077391 689387313 821839679 789266580 915461872 111754837 855883141 301141239 682675932 507632403 520873238 730649250 821954917 959397809 965904248 248142466 848948222 612969563 875332323 600027812 909359991 141723287 166276357 331585861 737258611 271077220 397513749 609600748 652702489 773255983 776521618 828421940 948388421 741497008 805924095 341414777 379403099 845069884 937193671 951026119 977432862 252856780 357421391 858336026 928580902 488721715 739372261 339771748 983878057 548733576 642044490 622339984 657729240 928570531 977167215 121089566 471310995 395139433 601407873 106518743 716274491 388823522 938607646 211413268 321277152 589586245 722524415 650790988 740460676 839879267 874352810 12541678 714445352 409770455 990020942 476479896 997451528 699834814 758108325 563065252 929964838 832868260 873937515 90692927 583328341 575002723 612788161 868840092 953457928 57601383 619418847 933610425 934780968 158260168 192893598 819051848 877943019 390289827 840774538 360766241 800770437 28399486 340392995 390210033 758548615 325797512 379487582 653228652 994869182 224138712 464558507 586530630 716847190 184521042 575794309 647147340 824825283 23629511 481387959 74311031 369337630 338699313 367376442 150479735 624113642 711256898 925995872 609754452 802451767 761464694 870048689 995078540 998366551 842237294 974474819 712642555 855327342 419277197 582435227 882841261 920944339 119613759 128812520 889187685 959526447 271900462 733927808 83600918 153172457 491076861 648905380 109827006 280701679 299309961 961219886 355416970 837804919 147663118 794645572 187974584 219732922 681533708 745187255 93935453 316935771 169219193 928952024 861417505 877744762 610733137 759701856 779609038 871308772 815234844 950876424 620703215 716892801 874086578 974181695 23083579 705256431 76108081 899290889 39349979 645250406 884440047 961082994 289797637 291229156 836711775 924079375 116105908 320914793 850904516 992918606 109029753 973664218 998594507 998624007 304393829 429692091 523824604 935893353 982099906 982677872 974059771 976916686 742666649 920269056 893173776 957784815 299090107 487393545 369655777 544703284 363825714 943935386 638081816 648534121 997869958 998487750 125738758 283439491 693843527 811108896 310239818 477553909 463679813 879172794 499793142 984826812 908153201 976148587 904486015 910368335 506894883 578525110 131428328 423209262 154378885 194445864 356514885 739179023 867133780 949752964 792158021 996840256 493019568 984872783 239628638 786110102 168546801 326300254 816806914 993220439 51243722 274349924 782740446 786281480 919104235 961160247 297585968 787765088 109429787 567031941 100295928 241680860 575350081 677591604 195099316 617960193 725482868 983158507 496245510 583038013 441376400 645982989 442968968 534320004 849045002 917263899 608594563 671559349 481574996 932510876 961330729 974782472 996121616 997004801 534913231 973461550 166069599 429481964 8342224 853480947 670820403 830789367 598138464 621160236 890371064 965913774 220085917 531093905 553478480 769091191 173453197 491697625 526079328 953358074 220742669 448225026 86257361 244637145 367783357 897583659 162023518 650486255 637334862 858954536 530740614 746920636 961450648 972981224 778268059 924371338 699540596 850711183 718160652 888073313 162304633 825222802 373221632 874128174 209484711 873411571 469682122 976033293 564271847 970377750 218554020 726435311 907586096 960992458 466824492 697477682 637511929 944010882 312787940 748431545 690010180 764857536 892990362 924541608 321047199 393435956 565753889 869488450 520651048 730569041 219122110 818627157 145198440 998482052 297485281 573221444 815655703 899013927 736284430 994314269 302192058 924686974 568785478 769442264 546520596 825550246 407332172 918735165 593191454 982534869 496517192 573947667 631060079 807469298 384505006 875064211 62476679 300332686 707392674 988451364 221896367 636328216 79052920 780587328 928796177 942828138 220086106 760129050 974272456 979630313 318827513 457533618 32750207 959378013 369384613 523237522 932133269 946852007 516545442 929695036 87394458 814865680 17165970 77021716 701710415 730390117 683821435 887475552 478259019 756719466 124234084 420395448 444155561 943758408 461403361 812939590 422843288 907663635 69627513 197573501 64597239 266778081 800505404 807653310 989199620 995891579 307945148 366331473 915065751 938087373 401834285 661982417 114675593 255464685 665403556 742511108 520255024 606879688 435068046 779432667 555486080 943488265 414317725 857391702 941278331 990147111 221649071 784802467 799225744 941589328 189291806 900935952 533054179 595851349 361961275 957251584 70293579 295983145 29158813 516473562 146543939 893086741 434315513 668503080 537561700 736942322 747575144 851086147 144520636 285281366 269955438 917830845 990917430 993988370 899358123 963487594 81604300 253802934 814836190 873820801 232566951 753253668 71777602 940213556 531123297 754647065 159535740 948396121 615933828 823838401 292380153 463493722 584394262 843811904 422191170 445506276 300256140 824947740 935827317 959462421 867287420 926272304 775074763 805060157 235973398 405372180 164609089 777823475 882189962 923187298 552841384 943971085 231175088 866859072 545856739 898562106 938343852 981241669 346572882 409909662 431233268 952909890 387404707 838675936 818874492 905543471 334437982 356508742 437732914 644932547 317026829 782069745 728619722 927314146 552695781 837305229 430872118 824719612 113636944 409606450 902446316 924768006 923118187 940076251 86599040 321872278 443425885 975588769 300803241 416743647 276331121 435031745 484164337 922988559 654988252 669313051 596405289 667781914 518311915 920327009 25199976 749857202 345741196 986590731 396669687 985140040 883778739 914123278 920745710 930739865 315267180 943646338 813960270 834239468 851961181 880636630 440433774 773243612 737899399 890972989 907193766 946680075 451364222 755525549 739624224 770535262 264065740 590965990 269603048 673220884 92087712 313846262 655881453 941530934 345581829 499337775 654140995 870784460 978237411 995875870 366321207 588486818 468940688 547626753 425855426 697612868 578888113 881505710 630441000 878924834 952695644 964130751 247967531 583887323 235950710 872730697 525694197 911188134 973843448 987515915 299693038 771920933 401474261 905440759 763760578 829420965 490780226 815642002 371669470 610019724 809462776 955508848 19527786 755500870 483144841 855370750 857368643 926274811 638109732 713361668 563249463 841248809 818044313 941872703 727789098 936220742 104377195 357441368 813343766 867821827 314776459 457587413 146861608 767227446 66711529 174183219 334226998 703370637 914725871 942684978 355373189 406016863 460932535 518243488 18906595 506829242 803268923 889123124 533009092 686013405 317583481 540307216 230987039 407141552 42886997 705290691 621304823 921381595 485154390 676429010 982853130 983028727 54618192 793373183 878491191 965278164 418824500 923814904 348346003 501323627 267492180 454097697 652868177 878016317 916478867 935936827 72623656 734353943 744302450 804442256 510730872 959945762 977744043 996765788 311151845 978591220 66386361 786884096 876898323 898583345 206898796 356465351 806057757 915974953 903170739 964207544 233294902 298254671 561617761 656132658 51130451 166921151 999054518 999103649 918756617 955590195 220359089 248753501 420629878 787309702 744220468 746684130 384282595 685044909 381091902 934909091 532057341 830711004 175337320 843854233 914771201 930863544 780533899 979885621 627424736 850715795 982216762 988539612 13550451 958812179 758980293 903036907 359418371 602788990 445667519 880788068 175488323 582606655 208784954 531688899 826679509 854759966 585594578 948497583 298494799 687746493 3408459 843726642 708165017 973834948 146075014 475374876 470541896 872487572 938328419 953794777 494507642 729647981 953749494 969334024 162409022 638683013 508228276 900583522 382126845 703113141 522819821 721150387 817308606 824288696 408860044 741703376 789273672 925395533 103485895 962159976 424281220 959931202 74345875 271857395 548352715 712538592 739394048 774828299 150285635 446356853 309153126 658528520 694552163 972874251 857151538 998919144 40339439 322955182 648080357 762852701 745700370 835177022 708849880 713993545 487303777 706872636 870749931 904964898 99971621 381708473 587797842 932318228 823741185 901957987 417005606 678332055 888044619 974809041 888835422 933943709 431606171 948739609 810222580 840384463 53484748 171024839 543741869 877541291 247110546 982674765 861463336 893535893 467812072 557750335 110108341 741614836 313291870 778417484 52436686 609110350 565256467 698330122 703921550 778137928 695145269 749921380 549845656 935748605 162149060 660606102 168288121 467292092 3654132 251041021 868821959 876943965 662420818 825004079 194425524 361062193 639388520 903014955 781883790 971191815 293591253 879547813 113650761 591239288 530255465 978606361 868851371 970497757 347129023 434957362 612876835 658154428 943416885 974944346 431660256 788844120 569091698 796253064 608671655 774188612 449736517 845009919 11584414 46087074 350358999 600325892 642466231 783529673 960832706 974486031 134254948 330506902 869599342 964990338 604442871 756760494 138111268 792429848 801251347 886447595 766418532 942016754 936343361 940706694 58769545 656606889 617118730 766484590 238485753 311671668 548315714 779214352 581415105 697046044 687313867 836888293 247439112 288268864 699734771 947930406 420712572 561245428 486051004 672874917 208239351 462904573 519192212 969765369 644852422 696818299 757543888 816323157 608361174 752371057 267795451 397893630 532912781 855778604 964784526 990742200 345574946 582849082 392665704 656471846 631184019 916773996 751897263 967266429 173524833 253160833 736458358 879560940 857057813 890912816 875396265 940639981 288276481 735232865 193844625 349189435 700550111 840500811 864768272 881655371 83349956 138509207 909490932 946581501 366494239 793628002 39727968 530223647 57787334 720169202 933142319 988819621 653672276 889332734 290570713 557275751 527277943 966847620 376240970 381682803 459803327 473106583 860564724 860836475 614090196 747500864 115634095 427342491 3423832 422637883 598192695 640947110 700508100 719722134 585813156 688635776 731215725 819627669 229478611 376015534 197133451 542084228 476731045 687533771 333609991 575188174 437468161 662405676 151766416 715443037 812479513 998394267 466340716 578017485 634068531 671840870 237342270 920310906 853580786 892174551 155402127 195628988 171944135 259810331 877428698 974430826 725972411 916533690 657411023 773218687 826958474 834035826 207619684 835702842 10757365 506094737 271478992 741371245 392626648 693740481 178583895 282199548 9698110 478340767 490300160 962353046 488042260 897847360 124902770 254312337 767871324 787912028 632973144 941987410 32576155 349119653 37589572 269012697 785389818 955227532 28030863 697498056 766307342 919119222 230307289 449381833 526183840 775332880 171649495 990850775 407745388 832587221 193469431 713515598 644052533 957680723 783083026 927903496 563152796 591285574 608776229 849436132 676862881 932420800 587985437 927585689 616024477 760809474 147057859 362293779 278470838 366088110 165891694 649889578 821731712 830045259 730367024 756633126 565180930 971125278 158932962 678286500 975754742 990136261 181049414 232353763 920016914 947516086 555925495 907088020 186129945 783201993 888371844 980025015 792024561 938320033 639561105 959344338 473251735 784494065 778871848 943238345 324617900 700331529 175702796 324326549 317860152 957208179 448507340 531204838 421903485 740317357 169040694 920586582 686227787 997278360 512631833 637164298 465396112 520634503 278502243 538947532 399546693 872734792 866052957 882706369 343054360 393609673 627500896 986730567 719297863 963410761 519202277 907687672 765020492 993405743 60181117 125541387 77316412 639881125 893128256 944650042 305702031 845999725 837887095 922988813 891893898 974931013 826114475 892069622 541091947 892892565 623231738 856316973 524819725 762370263 164677046 682332375 765832159 856080132 978025349 987964360 501554518 993464207 188578572 953193823 839742679 899774778 799418155 920205706 128657776 920890382 824764461 994702871 837361869 999003071 88920990 271813460 110279055 371050162 288999648 842424327 529406003 785857611 20170933 719180937 93677571 354073177 367696529 810091641 595833583 823085725 669641535 737232353 602404640 807558461 347903723 668355516 325803161 613224546 473724806 507103642 7113151 109860944 346729627 886225626 785489729 810106019 812303700 812329551 330369103 573791712 190647760 271805039 51983827 938416807 206916571 840528834 288353199 524989301 285869002 416329917 812502802 925829172 725090586 753761643 442755906 915308526 774722447 989786844 221477249 519913293 235109835 649007144 30434110 419841213 557785750 932418241 106912674 436669948 674855385 930428529 433944953 592718965 18085089 783868231 18682427 746368398 769881772 924659524 425602285 563826141 329801273 918038478 398437986 602198848 927149722 968423178 713688059 866160562 761576836 874542715 874667605 881718789 114276530 772377127 519672500 681062032 414156931 619433991 717367944 968233153 77600874 171400271 501414071 611507118 869062679 920488305 39786519 654162899 702051115 801262323 306540297 697925393 585882025 748728155 312791276 897123938 733515974 758883807 676899519 716581622 658720338 886548257 309901582 576620424 416126377 608027918 366587706 932507415 376108365 541612964 867652098 883100053 600645849 904786974 262825650 539582211 991897150 998707619 145193845 857572484 447431336 711479354 499624866 739322229 521688504 941125581 473795365 497357747 125621250 942669333 372906816 540340339 90672339 964281508 272525022 389316500 808105335 965107057 967769602 981440514 67250512 755018046 766117297 783742606 384035733 782658096 503696071 914663259 388582728 750374765 614567070 637897573 472269553 592073825 258495973 637664923 920571840 959142501 725144788 968175638 466152687 543922160 359964462 669482473 530913018 767707533 240171148 446247852 946260337 966602700 987639217 993337053 395031352 603933951 108495974 645077312 592009837 944841426 715302665 797036473 253203406 813704893 559967016 710587365 842072516 909737704 561849627 613031696 806839351 852717373 291399159 626855441 802420810 934069832 923133232 927285004 905234773 955836054 82079234 295220066 940309561 973241671 10059614 339483948 623312922 788053449 483478946 572234685 293203855 373486457 617555869 980533985 423772691 433966798 514100508 896336453 426550190 846538034 879463517 984475892 979421556 979860599 642085046 924933772 670083024 994135967 821753735 932494877 513328483 872750126 87033930 524840447 325813654 659883920 213895354 337931622 479033905 900545529 530084727 943283516 409238036 815996434 432595739 644849216 401208851 572576347 551040331 735147524 482755698 652825265 619929376 731747795 484858600 971084737 339988960 363547468 748836156 902427896 945641690 954823698 926652706 956827515 253927956 966898839 345700465 433379172 198230206 594188489 273421931 871606921 667409914 866318704 409668526 491816750 684754523 853749693 980074522 983107882 48397052 467154755 209760977 299843225 541151217 940748419 227287803 628437119 813950038 977487508 181385670 286809837 399209829 762712630 517283200 995067289 83133115 458350933 487246858 850134305 31282865 866360043 848508464 892116816 287986828 609233383 712976243 780495892 928828171 941367544 992819709 994888742 285697246 720518061 543460374 771384314 179488687 243401398 3588261 713251008 671004096 914137418 69528290 790936501 967032532 976855980 848315023 890792989 987186694 992574243 149564626 253224309 294010181 745274751 309618507 377866889 129311682 950991568 860787125 973227924 919161770 987377668 936684636 973290055 382545878 527645296 404010797 422105543 681147766 871276432 979046265 997133357 819908391 954182965 624628994 834831356 514467238 958508146 921933944 927275505 38779649 732669356 376080619 649358768 705512897 728913981 506528419 608635651 723272928 975420671 801465488 997558107 848449914 984634929 585710803 819655370 714714100 806430983 672300697 903841338 199462540 795843072 256814105 431025834 441237431 614682591 624459973 807492796 936299598 966519661 877709292 886350087 161282944 922672417 970158303 973341302 796691359 953437990 987644532 988531316 910916952 919283956 607360438 844441202 671298267 744910294 427079855 849621218 701502929 931154786 385434031 610337118 106437272 149631862 512523383 940924931 902971944 971039727 75444536 415614648 631130396 840578346 898581757 972444040 831211846 885112605 312258075 704665642 57269525 102770474 476452984 909679290 599352912 824132079 236309936 972398066 178184219 530673977 945100748 997506170 16974089 834877996 891813399 924285740 470094973 645788080 483048659 844757311 70417539 746137204 944382867 984988319 365837325 740286878 821812348 858751032 78636940 508818550 277284070 942647479 532247555 630882134 689237095 810497529 160835760 624873249 657546529 669825418 182405681 418879989 588543143 715468182 882292320 985488983 142873475 214965410 333189319 666546948 809150792 883952521 611944906 924268724 314759584 954532008 903103217 942514364 414336032 926713538 262120796 272668138 132818859 269483757 174558199 211374952 572589734 825660064 756903032 955132582 847243536 888464953 370551877 474415838 132151249 379589588 651622231 981154924 898526542 960717879 128500609 842485100 470606340 873976306 764511203 826243872 655304054 788214894 121442509 477493691 272725673 762520012 700610189 991173494 920909681 961373197 697461476 843208282 38817433 931371677 229656486 884194373 929695000 980032280 724402804 769730161 16885924 875968066 301395161 445702396 86148935 973481368 655868837 948024697 852503976 909785308 637889610 658932147 107020764 985721226 229752130 865630491 788759579 899474697 756948634 903465850 743501307 937685721 847508798 947305931 552848243 936424788 306398455 640243375 758721725 764249248 576423939 837977594 597550088 931853377 874295626 934852892 292370017 410944245 469725489 854929375 8753109 416767024 672385424 845715413 14421795 862500001 564594829 771614085 778989104 839672096 526228176 594535091 686264672 893354416 962495251 984624322 927730248 974798506 2553124 6952016 32703328 79531870 737215187 879240474 696173085 737798160 533542669 722048799 227755975 605234966 620949051 991037038 195017674 782960144 684233697 851793327 682973488 893850995 332131806 369760409 979459921 996214602 929825142 946830411 162407394 516636484 420488404 863855914 582230511 606368675 337071752 779218770 142850251 928603065 434457990 923136423 379859367 592729809 527671160 980916347 651963026 957464908 379473726 700733678 597854479 965465450 183033874 777958828 830803153 855781285 888903589 911245985 621122995 907043589 216129970 950109575 696758361 769875103 868414240 943339714 379280139 844110573 553639551 671856767 385303355 437330563 935217646 935855277 823318187 862497784 955268462 994947172 568183364 735921348 855465456 993661335 8422614 780076992 769978565 997571750 105144158 131913959 216496264 835429456 135540534 219710165 506983575 701411355 24681029 826381574 732390902 857162358 478137769 673781978 978423460 984047835 210779121 248224323 677928143 747663995 269858512 798097606 463061822 773724608 442121356 633889097 959555826 994525292 782923827 806871994 254466086 833863869 278379616 791099816 450902603 687125636 897493762 935534504 538124631 944679835 354068190 902169599 284387743 936014721 560461593 993246167 253474188 744720495 935558282 984660402 520383186 838963562 52355449 988122839 841622034 877973208 367183292 660274990 343697028 666012616 334770161 856782412 113123793 838252108 387732187 623768485 948046662 983021815 43196399 566927799 616890373 943700993 961603810 991377216 119032806 198821144 880718388 897083084 567138467 950386746 567874154 835555559 265260716 623258154 955102852 973493715 193269043 623884844 321493328 332565381 991085088 995922081 643277412 711283790 425660100 747608290 797537053 912997936 657161399 909778438 168945224 336930035 84572257 411107339 31870636 87923746 451041072 798164479 342898330 723860684 284502999 880460931 878879195 975652460 635933895 719380985 221809284 396688620 208281234 743474749 535651872 653786328 933340040 957501930 850198234 977693084 78359107 696679388 243041432 818470530 523498140 891368820 926663246 984263586 103690608 718176270 220076325 293441004 767930175 879207856 969582563 970330188 201720812 625880335 244518577 925823758 714306239 954409328 379119831 684366511 143443247 532454139 526293276 974606946 113760676 201913469 261801191 567299608 562991931 661815111 821539176 889454896 676175713 924248443 873865180 895625044 331527626 515649921 204227757 809511421 872891265 942725861 84406431 666078503 756414908 884859400 327995077 838460792 260655346 297117804 56447910 166218526 993109482 996850077 574494200 894279917 956678335 974111197 988338842 990802862 819693633 841526848 579549543 902612733 553648271 895449199 795485646 961084067 296052826 432555228 32533165 898773333 939170481 982882850 609586300 809527718 912387939 928399679 319592821 581304509 970987930 981191797 547781187 728989539 524169183 770477490 670724290 976035197 7799390 873712721 994517214 999119800 747178714 824456476 260423100 685782587 428211876 561951567 976411184 977997539 408531372 785948573 536306332 666282909 375357407 881762588 696499463 868661044 351014288 798457576 164226930 293503351 848530323 877718617 919588134 968250312 907117271 963518034 736905850 965331460 320334124 790040063 174493238 768591791 542978596 668475157 777769480 779412725 107596151 454267424 429230570 903907396 588749869 977093160 594935558 868251243 901993305 908822889 184932027 703605942 267648345 628484717 858119674 999167528 286164903 527590957 225117378 322325014 420992067 883027737 248238978 717921374 415677204 745880525 900087394 902870875 764171430 771168477 228817803 366991651 323348720 422123341 981921847 987892582 342327937 712767474 264911870 982318798 62784582 913886232 728414286 873979843 943288506 955200923 333022424 460302708 581990460 911512315 957790542 963473447 489065934 876325511 219838672 340546050 994079926 995917460 804876536 947821058 545912166 788453511 383971435 664540227 163859281 460645175 71104566 341674688 314050855 406319921 160484379 784985560 189687839 917454480 416865116 544852539 43527608 356642368 459421285 502880815 20509478 108519926 648333152 689980353 368189302 616330474 346421353 609738670 306716751 532175690 604919128 937697160 340392368 420191335 769246455 970823897 149463430 204017907 81017709 300100758 886904731 937809568 461170906 528336907 407592846 905558412 537805485 788339851 559294153 946292015 671706791 724597475 416012126 949506417 292561311 538387592 12422867 971833716 64294060 455320271 392005239 527362705 757288920 898987193 463531964 702701537 91406136 413223249 693164698 845816017 958584460 967673348 489016013 636442976 429553260 511624648 509499377 850903407 641190001 924972621 531203174 954734780 951514762 965017880 390277049 601568789 993717485 997702814 212822127 277308402 431264791 600086965 542945772 879219253 404065682 967968604 658983921 920601212 596003045 884366256 898839986 902199339 187050574 911669006 335004499 498911221 792984479 806849343 275603975 361822941 736889585 864191737 27025296 868864170 146338366 842887037 255043150 813284728 889058902 955759237 585580151 845318920 376985036 728087479 55446933 832243906 113201903 327517130 229651910 929571005 813783457 918250860 25147734 276173151 574774305 856090769 673374015 961667063 42485713 749895181 867110759 910474180 581626240 957783911 198276667 725085737 665760890 987852068 799885956 996016758 47794955 132492135 608580508 741126176 486794680 607221049 272635848 638657748 722353177 839798476 681355399 881327836 76014058 339030905 179189960 585789402 527186858 733403349 655693381 978858157 558011623 775146345 882733554 948454734 21271330 626174969 970736721 991374490 285014515 636820610 276216476 973567973 816766250 910866020 937904417 982724055 576072628 713649559 771750547 852846127 41199956 902150336 656310340 853459496 847948743 990481983 371188852 382047463 173083290 432613128 246946978 838457185 349119291 734196221 516187051 536117490 306996560 794326313 983044272 986650578 166029782 651763472 119757160 642095484 562867151 694225017 755859768 929070718 607683150 968211109 783894418 941653118 477143259 963102930 219041329 913205286 624822888 725711059 628962708 640766429 443569251 945696903 836174092 875037348 97176176 761618330 682815009 903328160 624059782 998779386 224034129 442250148 920162782 998573748 559263448 706284047 234724986 560542667 611834313 966167907 462796198 775045238 654947753 703514813 467331532 913096739 484214014 782852751 571636028 803287828 882087981 885645037 807224837 932483788 667521062 870334267 337570570 752915629 700863675 935812089 147197737 348229692 560123657 847206963 840113623 973729130 498242726 749858202 883360394 949549677 543573066 556927247 576208040 672385325 693757371 801368920 787290787 924987930 969477342 973634058 849570015 976555704 753195198 933504115 748344372 979200740 63573327 91648267 867979509 915136902 693055948 897394080 678746876 905564616 508087580 730379059 489493459 557802793 398941382 953951017 429715432 469884362 18099951 107125745 358297692 469111859 679271721 974338507 931457571 954738383 728718260 790678664 598323830 849280790 961176343 994962854 271047325 432453225 310483592 792005346 926676477 968858381 114183992 358355966 251153145 738116897 58466774 262235362 191148814 708467591 26314672 169120918 445609906 526419807 677689979 837064654 698796683 764649425 240930071 444625938 510666473 757723740 117526140 631576966 518820805 704582567 196219034 840252509 201033469 996286633 619167404 905815959 249212998 919509237 19822753 292009633 514616566 586637309 532888828 984757023 52059460 293328782 235231165 647684707 193270053 839181637 890561606 910408513 890436231 897343092 621898774 934451416 55675858 941892519 723621819 981616892 471825173 922635932 892109910 916962537 310269234 339572417 751761780 948323474 401271607 694888063 184278455 231382950 729935695 829462537 858752683 908632102 177600273 405906500 370946674 998459160 938070981 973856473 432267891 939792601 76410657 579362769 691110813 796708607 4289324 820944647 870157871 898469870 952625276 972826563 545550076 867171991 84941546 906887207 351097416 500439539 478203367 542926607 970024717 975451635 15395968 369062711 34810638 803577201 441662074 451908159 201227897 799554890 659526512 794440052 718603087 954774797 192561334 348678770 787346297 979608384 369436727 389560502 544929817 920149633 686564501 792205009 777067841 978553720 11739864 927841393 620640305 928715442 327926642 839653027 725859040 853771361 693111823 926454155 926478323 983342405 258038722 752418062 704857884 927655091 800963911 857778407 724284983 889601860 139472413 631017680 212469567 809594884 432050435 615021835 854566114 855307385 617297923 955665619 909555997 929591859 383325042 569324839 809913093 949512565 353998185 673260689 476784364 757375660 446164398 843066453 863371982 895935179 817491397 861683248 761899775 840231217 895921320 957452904 788890405 977625696 655517941 817137188 317169531 352358835 964803881 971264811 913456722 937535834 829851437 926321594 10422270 833945780 151238081 603945083 774180730 987941671 937233171 961049493 156505126 328941743 366930582 954211302 195377400 845713683 981459409 996433609 190317578 819909275 157563425 354262597 266195536 882452330 12114777 724347372 710733833 980363615 60505161 61454943 7657577 388229496 931798932 960730215 104710305 173802043 386925434 743405837 955570330 998581839 252703889 318557355 25196671 198506809 851127810 851927655 608410278 729164398 353567892 636345334 536051280 666447833 184404959 961466099 164110204 602855627 7003133 239855404 9553150 470226938 401142189 421108576 469950069 703675012 233760461 618188896 528601946 770172954 175716351 633685501 941865962 973075744 486187875 634274558 492443337 590523268 960631556 970635372 613093308 800795586 894337148 926896279 605370074 922613910 823172853 905304129 938887235 939814265 986030696 992214410 428501620 449477331 37164818 772941827 970722128 995717271 805255424 939267835 722073998 818386846 216585206 692056323 338783645 669231660 528163424 548424724 215267239 972368060 518368259 940444993 365916331 554363736 327329728 347074306 525888861 786413863 811899802 988075291 868052742 881977992 908803668 914963650 306637482 680871458 529077397 644494090 824975129 964790037 713991048 826546980 694451500 884289359 883084768 915897833 14546753 864072283 4025602 21693184 247494840 618173681 519389533 647457156 438547336 974068209 712191931 988929300 525630573 924672776 474266498 939918604 433204706 503468904 534860283 653027489 150945207 248165979 400284947 404430048 14063218 327968482 930902537 986574631 665184152 928150881 40283439 130142157 909968780 936534115 245952172 605126405 37983978 524339613 115735058 914596151 824325693 928830365 570989178 792793598 953516135 980030192 428557252 489650418 447780014 995318507 955525396 999382825 523813074 705586663 982285206 990848896 428024765 801610000 440250246 850326130 655186183 987362714 320104340 527784808 726041817 889497665 58798257 871373466 621463307 865820166 447942693 628466139 283971964 345495229 264297766 583948643 846217378 859644908 386899270 429577346 122413261 211394656 916062829 969543044 497567127 871597229 363397402 912082046 554433448 565830313 996873107 997741281 710237946 771822453 924501106 943250402 493909709 855395891 507885970 679000192 787528195 794026465 949238889 952945435 372628700 995645962 319169401 663385252 854150376 910022761 765586830 903206677 751220563 799017293 557727572 682467807 147697799 643017438 22663449 129204378 351280139 895276106 932858810 973348937 940016133 957783734 727563195 925375558 634606364 842546917 130949665 576658557 860248722 863347797 108139741 490469999 495919911 498821801 270205717 640277501 678377792 905015367 185401458 195366895 655910481 801944223 934825526 935295426 518947479 774571952 41587832 936185569 258210996 973329386 809800183 846648266 261223601 781746087 604930588 692783732 426550094 471796816 429901579 830694231 127232979 293261940 75848936 225113051 733815339 740009220 606656558 691846613 722941743 806053214 908656312 928386008 163784534 936042116 558250070 653097306 684060200 765453446 81519456 772425301 348474517 547464469 757133569 969261472 595573223 637531255 141734369 582662859 637128429 678788150 658841044 682719746 39615425 837806834 184493580 292517879 238950052 523846287 942715599 996342861 447333834 634467991 350371262 644868759 544208150 656351805 684224557 964085399 742416447 879720500 959853182 993894136 238384644 514278606 950106881 966922728 128388469 319959648 294574351 950635638 866768219 886518276 970275612 974546774 964924344 994265474 80882710 174687197 488571248 810156270 929795277 958380959 157076036 798666773 990312518 992672238 664676395 940557315 24210529 971999877 282389741 953430638 317978233 671436388 756334796 897917095 493653694 859888131 989741318 995469496 304219429 481148118 619875989 747992765 15677597 766762338 301765107 421092500 769738387 920826720 477782737 617820300 805052287 979153715 337776179 827557643 863811136 904609317 190075716 256322124 981745763 999256138 508302292 673896770 362760633 474077552 748618919 964795133 895208450 904119581 812044113 934172151 448223586 895888466 394870355 893608868 533407430 763728277 539050972 713801802 81777569 937975888 244384427 754373197 22979509 417695252 193277480 355421555 290114800 982805921 281136887 805408495 98797004 766359530 717249805 998244139 279202755 358891764 488425166 529301860 604495760 850224793 620859527 889624879 328908641 859160653 278582777 313751537 113464219 986451712 192157414 946038625 569592377 642797166 227716379 575363654 37529586 786230010 97906330 176535646 601169320 820585840 399474779 704944420 967799548 979241832 480614126 962292075 796205708 814889524 795264527 979365563 865281212 950606095 415189156 659347126 229375635 422547775 725629699 797036553 967723228 975386762 871802660 978387090 369859689 813137397 537425404 645732597 26811918 706069738 820833469 931512586 518067941 570431135 250360451 536619078 555076251 688599783 688984698 968510833 914312332 935392789 318245816 443231323 132480329 505884919 793168785 968735328 513162599 785209874 150099382 675907094 619325058 650143058 227962431 730207669 95930123 589635600 228253881 271133889 828139846 895363262 270852078 292635605 96501095 889322670 581506610 992648486 499964868 863715028 718137802 798396415 834455172 891971216 921931300 975117140 316107236 978824474 171738217 817647237 872590278 999135547 985681498 995612562 134326917 233529161 967256999 981337136 99278339 356678513 177768582 619021249 566508093 634542520 478244750 740478838 123098966 597602000 91996208 314162795 935065175 946548921 775145578 838469895 986627683 994035001 850273093 961189951 352587805 753430428 451418165 972030332 260980332 985560397 687544525 961615644 430245299 888998569 207190438 248678652 769424217 910185502 289150142 975555130 566003293 683463465 606383085 813537490 381275937 607142800 789809432 964326093 840718351 861947745 802896380 823641746 765876475 976682177 38270387 153448047 566230880 625296830 864130528 947133633 852025113 924416968 245372863 370512112 622150631 658552425 244400930 285079943 266892743 323888564 626444245 955170856 597822412 624695816 229370786 555856506 183243353 912315029 591812544 761439802 323380365 326519655 25977124 94651697 902506710 918682369 473629675 899989835 907283931 993440224 22728637 803824121 464690669 846654959 487903544 972116292 313453778 844438910 378240049 970546611 725412219 930979405 517752081 870017926 323713110 970870529 605097114 709280269 501624586 552132163 444284975 996885981 574807172 744695353 101471532 331716604 103853252 626489471 544604880 754501134 973507233 991721888 76404390 582024897 626435807 709532564 553779395 686396701 770476225 933387731 537510572 833225414 137101910 857132475 212115101 692725705 42769549 423719407 818130915 921052759 456098710 522052847 577250201 975193724 399735126 807338866 813521222 878676304 77213601 769048842 12000640 430902701 916067676 922652231 521469034 727082993 268901109 495066426 259195365 883106135 6457682 778641608 167068974 492006398 279407194 369191407 423394937 701343143 184829043 529667388 319587829 829730341 869947226 913477292 117942894 457801008 706153267 710419966 815162035 989920053 194961520 695584288 45101456 59598927 502429805 751179007 425634986 724111956 665428407 774543393 387093891 719553987 555954531 953640406 207842724 884466567 870755225 987246818 613064318 698299531 263294869 373888070 250281105 541483478 310807997 695401876 531543151 828729353 380959614 756488232 761121881 985092619 731288272 752260145 196279634 207650147 922035921 982859549 439674493 589793431 507692334 690580241 76230833 705289481 736271742 894905685 139229155 683406411 111974206 318001698 991458592 995409548 900493923 956934707 316995328 819682412 136193036 203215970 842213682 918576162 274259156 911783111 845444457 910886319 248774945 715893449 397115743 986263203 108155125 876515519 158015016 522739394 610706141 619391781 882094881 923612300 920624116 940595199 731705027 866284662 250823036 697384645 235534739 250852019 889490601 898377339 547505695 668508853 993914211 995016880 988594250 997023938 153740363 219880861 79081558 485183709 274816720 536179780 193709420 650511948 689320600 769456442 737674958 851026578 380428977 886668422 435187481 919617380 972766312 992494906 294241981 707318420 787252130 932677321 535509343 695440546 988811919 989818051 513642856 654814925 967004631 971184365 51838621 381797398 256302808 756352965 990135865 998850574 538183667 544279272 767789651 886629907 376688990 727178318 232468663 723409667 565160364 854522741 529852985 995326307 351816873 839206386 102104831 726911150 391210920 673950393 324752993 632905718 63084747 661315258 240137961 285607309 882453032 913330383 461462723 639114357 694553543 779080237 162208467 690469508 998815714 999173594 394631467 852228478 777014095 893069212 260234462 427731829 984927330 995905819 160884602 260279512 466103939 716276925 34419467 618639593 523822348 700842386 448654163 522651006 220808890 839910317 793916436 807407448 870206132 942043631 176949333 664499879 172213698 319293362 494755079 570237642 839533598 968408295 951130836 987053326 291649231 409771833 143821150 767814617 516131559 801952915 773244929 956350526 345345985 800150754 743920241 846473404 221674714 611599502 414393289 613009591 111741731 741394682 744572525 932652653 136108773 797154051 82716539 186645791 441341417 536636951 666407883 856472481 944236069 990488276 191403867 989955990 74416857 703001087 328314306 863388613 441241233 835553067 497661798 745555441 272998127 448598547 280358323 964592927 205166448 246099375 159032766 975340951 512264484 551619779 417831645 468745233 916361553 924754606 767885582 818158706 301104010 991332334 838773163 957638438 695548176 931625879 496022768 611274944 725413958 870822967 157934191 880460024 741583587 966341398 421156144 854425913 348136005 567263897 784987275 982233848 109700771 280563308 119527527 132923526 461423157 688356528 852477737 971251184 426651322 595211034 229552023 854032705 167835550 838268969 596041503 867704310 959542411 982919929 482740028 988518647 358629115 575291191 441536047 913101124 615546719 713320980 538027376 979072072 205870866 494085365 64007101 639511967 178136402 301025668 273161320 661261694 711503796 986190532 410698929 919140393 433729320 480202233 440489743 852590916 786793882 921490249 523051554 808227105 195549641 565247457 448879113 902048060 127986659 439371259 998213998 998381647 207687821 886409524 187654247 610182760 624073399 954390125 877641496 930649998 404158627 719786936 19307457 775840539 453890411 956447191 609360478 972364232 198638675 725351892 921607569 972302504 195319378 972908340 866933453 976263433 988344146 997981658 246651630 488158470 162989789 439972823 646902764 686334484 33162403 389714229 433772976 855574374 664165815 928175539 362547876 664463153 777366311 842380689 376950956 694346471 821554067 939922682 662807737 676859309 70551807 436438366 340954453 995985165 597759312 996748648 630888483 939089617 899729215 928853784 903014029 975727995 446993610 835607880 581386172 609552797 923433168 950059481 608718426 933886957 779460185 900156098 421019106 667686555 586676630 711298768 861575771 973468910 776226693 807491671 535613864 786924143 815119547 879330472 187456428 236289785 213488713 223318951 766119110 789080345 648328252 899154061 691910325 985764228 534235385 583356813 73876765 282721973 933604381 977082107 938143761 955520182 422362148 978300542 275883778 813591550 891787111 997486129 813780343 877978017 6345396 329419699 83497783 393572037 522562369 860837517 946540021 956081062 491405792 944147989 16606195 273710066 952715494 962325831 957358199 966554889 137343299 658344852 60139272 120124037 29580224 844137865 319116107 968530070 183919540 820608825 611152230 855141258 617446306 774291068 804769916 880986274 359417264 363808695 267882723 354039945 689203693 765167937 362848574 486237714 294014627 902512668 865231271 978107692 782751346 836857907 196634984 936416409 88922997 261653091 449279205 649613120 649091148 974857595 718877161 850025975 595990249 840175274 852999227 984274874 814173397 814876745 459863639 855329434 412825049 588496863 965962486 987682909 10756379 13646761 377525549 972079364 859007683 944126467 261453428 844246094 521865243 744120822 732917659 904260726 950299613 980755703 690391966 826172600 706863988 820466838 758755652 810773043 946132524 989106274 388413501 896611753 944850098 985641411 364602077 578206683 374774017 859014486 976279795 976796256 316908118 826733340 581152177 742102444 222675466 858894133 943905058 952422653 931458715 945105725 782263107 820337031 446510200 850402494 142967076 463241100 142085593 903941742 341877764 831419766 359459385 794946963 998944287 999145974 43290941 827092865 98095470 819194455 50022158 750610691 64980171 912376461 414594755 503938757 397566488 683550404 429174198 869150809 761751659 937271643 316779648 971821077 466502466 630451913 513645854 967338492 84224259 799606155 810741080 968139785 11942591 759115230 680986347 971592347 244982165 653860085 621727606 937665915 59657577 618002093 30525623 561172902 945081851 996708218 747692930 821867018 60168996 978994983 737249802 741617861 752697500 760370444 364283617 621719674 667916790 857475758 865164776 876122973 862006490 936552856 937196116 991788969 710260177 953784533 44548807 92083299 618873818 924959346 602112997 751029455 786108547 921806972 745122926 844199103 494112756 787782330 323713675 447365374 278796599 910288954 477544387 634689067 732088100 747157851 801049523 849335654 998544402 999185237 276190968 417616292 560718197 574130482 774535741 980871067 316767652 715165624 798163098 934876198 923790401 961849955 812085233 942894120 100204575 402957224 694251300 961197021 257245629 487588012 3512453 683253386 896028994 978558020 331808017 570055749 544469235 710809672 977934348 997306675 545800960 773707237 407695673 421717592 327221157 395753516 527774355 800775203 45573256 485164432 725300600 742106683 964294172 986577955 717875449 830056649 380713345 963656084 91825501 133163585 254512443 775370061 439998942 878032103 669932617 917478978 759693195 776044179 285200889 906292534 382600172 531363582 999073 708038905 519802163 662670183 786074405 938895333 104888162 522034758 500728249 889504974 766814365 882023669 980909294 987966113 646438642 745878330 427508072 484206362 338219193 835979523 980515548 993037414 159915103 287944907 459725248 528217323 953514234 970848342 791033154 985752808 476778038 780587187 522535646 650321252 972060102 981088110 545756862 668573281 297566007 594025835 972414244 989217525 762095430 767768159 916681209 929104588 348880907 417152525 584447629 677979616 495677689 907456250 573819367 700714942 326227351 516833587 50179001 204938768 577172743 810933309 85056758 903930399 264314467 719606655 606501820 707123540 791912419 915545893 705626489 733274785 291120503 971306324 268839427 478911259 935322297 995072007 463993670 625159793 277724360 345591440 162822401 853586426 811484489 942291480 9549879 587509465 424865593 860938415 87644320 341017177 725401356 810803061 837877609 847241689 567739066 751454714 400351493 514742850 412156153 748078019 12011648 620893639 765813164 915465117 227255443 799982374 254869256 973584909 445118498 995962713 501474430 838791100 609096292 828814324 614089984 622051593 870744618 880469292 562954384 803829250 537354260 979792553 953565828 987557915 359840568 614034915 715180611 929251153 46702926 276104114 1364112 62936490 148985597 723364411 76370485 403480782 970377352 972445565 689622575 975585658 703211433 857514247 311647667 998132312 954264650 958569679 758230813 927864668 399817039 916827486 590144269 707884013 500780106 601345572 832454551 951805920 241141756 935233301 152194380 297535753 237803475 437026041 184279120 455558741 563871116 607333520 732687647 979473335 809655185 831757511 501001578 810641360 699714577 741376224 355771219 406164702 75625431 831906929 581932233 857772132 995527309 998078142 553648576 930272692 544450965 899409867 831270382 963949332 247960389 765230692 881620555 964608420 237129572 843595755 254533309 633331627 975413633 986724839 820286387 946293099 409268884 555845828 325420321 777507290 433551386 987573936 328995221 848640601 957561700 978498156 86236205 263973950 598948407 755091698 481028829 709923487 424691419 647779866 577561029 751011809 34954802 275193099 959313109 962768393 714369958 761937441 532023319 703643903 791326757 902913134 502682916 602589998 407777310 706325889 209165918 727215822 481556805 543321585 818950543 862942648 245121932 319909744 811383718 847831815 829191511 927755606 395866651 996650852 440233342 755424408 353441206 807734637 747917871 906877922 883393633 939290003 382394414 598682124 902587462 981496832 478702373 923342703 857739387 890526262 712122644 824056046 836087821 958916814 240189313 783117157 484052074 682208808 811040445 990092305 629445467 913773322 485331270 993574135 835605774 950928508 795958685 993243209 674973367 991779381 410810185 935686079 565468835 728314860 581943799 840103829 133028273 510108650 520678806 903069734 674348097 820286355 172828547 642280054 362106418 919312716 995422754 998924000 929349506 979706854 909987457 962623860 963582570 966031748 854729128 894559217 477807461 778972290 924622710 953900828 467929653 748525700 750934580 802631103 813945491 909882718 958938456 980031829 226763172 379999717 578284516 984611061 775473592 972243762 973731352 980874071 395022456 625399316 58219182 760040562 508349008 524931960 231734660 727682590 366563653 616928768 656009556 766973371 361641264 768562175 321090796 443017771 165399251 397855325 724727013 879425643 901929362 940324382 351201623 603309545 446759167 908667605 433640986 584375257 464541460 707632037 557440262 602304246 763793673 775167626 478766600 640957940 874136134 984713349 38136474 910790224 413153130 996304621 739251725 776519489 161884047 184592807 875218007 896318030 312282155 453324787 92007442 767977242 656651244 686956222 958466494 977682028 102349852 678820565 434128154 588292454 777891239 901225341 617718925 785681778 685076747 931778073 351258645 857174630 320298063 577126752 691038160 961592889 803716012 891551449 480898759 689045684 581022664 593644208 933750281 991816181 601536871 840800231 880943820 966909545 637443374 678317848 761251811 952342264 149394256 469100370 935619762 988878476 241823224 903318709 277098444 461420964 289306028 313864662 597389116 983635425 163892575 936012490 725150893 955666245 693891145 860114810 737369654 980480837 52552519 698824756 441320627 661183256 380449950 975020995 203652700 403752447 69655357 321139418 505157960 650173132 584440671 708455810 656010540 810060622 84241389 146210565 972539351 977836236 596491458 850038699 543312606 885273567 81232175 277643497 641384445 712036486 1404868 347499325 293290756 378049080 230763000 577725445 887197164 909769079 263953393 929522089 271854753 859321167 618083143 642179464 433206863 541041334 962220876 972386547 52104882 945441486 153652343 877165141 286400287 646341892 629317443 662347087 104963528 744199216 110414932 696321755 114727599 793462023 226270828 610743699 238185492 967812135 299660347 444503705 504030084 808186783 370605761 772306587 134637082 812213854 958570405 977460771 429419208 747780323 587082449 888883222 687998643 959762316 709745508 873653631 898472816 941365831 598401051 922335472 22663537 883498011 572560776 809178109 734592839 769362752 764652357 993929398 124736836 532673465 570040061 627185664 169053233 385421805 131619444 743100838 770908999 808359326 63924382 369071762 820429348 996433333 231399842 366336507 844864513 873306185 702138597 823121911 203228697 266361347 161425904 697865304 336303513 629880759 124404648 845360198 174483249 505045496 973998377 985031047 229457886 635398776 665144169 747694037 877477388 994180776 358744946 808936383 391492042 654234205 286715116 321814378 249480779 878478453 314849873 552294383 865246697 987804430 990397179 997484864 990120484 993881398 741468748 823217513 185506423 959214090 780785468 789066169 713904554 996118867 705705338 995082190 275549882 974511454 819731295 866843933 115885582 796728307 944304263 992775171 839292126 932128970 192637901 998347656 104075018 838089166 140156724 431119624 133511480 837851928 56589871 309168866 583134475 882365020 812659261 895341889 281743998 688574194 38862681 942342734 318261237 638546823 695698798 894975500 927559805 974016777 807400382 960865838 932436732 972179992 392169671 537821841 365917075 652291724 241206319 772411821 482230774 654701375 612850380 957327044 144011002 389521485 693841541 955534004 434748777 771068761 850405478 878219501 63258610 547911569 410254004 880272910 39945368 367175039 97731003 546572771 405800288 914218972 807125047 826794323 603239981 769721462 937486270 980665804 993411233 998032216 432977912 872586492 362035600 392002321 434316278 569429336 322024100 997630322 64677024 146670784 144845225 873125129 162295117 674707918 195515062 884684734 244387726 813043194 610528412 988495471 970312354 977762481 34846859 629232246 534648755 980493815 962105023 962892500 242695562 441826461 883175715 970736077 428568087 861282017 152673327 821905147 231666241 716068727 517733339 758533386 817376943 849428938 183913814 291258167 770687073 913759374 662075689 745299708 32429355 643622309 744745010 834016303 856413775 966153827 322562718 946825143 520338360 767979000 524754827 867098844 209331023 441202781 776046161 929351500 205988153 302002357 614973945 920788087 775869602 809156965 880171775 963336022 826104556 918397288 335587249 562263753 567604561 696512068 900112569 982697598 575477411 928833937 554037744 827845768 124100443 322060351 571453464 990299888 341720149 695116981 445603599 881014558 22861731 48475064 461721577 545713559 431413728 624233508 710330800 963613770 303206848 797837376 610922619 611295791 399053077 583027182 103409164 113398026 159459584 518874799 155954270 372572288 332827983 576106319 991498959 991935576 79167255 867334173 387654369 793895963 930886786 990739137 590286769 642555417 611473352 981839031 215371050 812889895 291243226 674014065 931127080 990237417 799764823 809287449 621916501 928505731 536929704 791307386 124460531 281426081 897112886 944419696 917920439 923345725 16056876 741454141 271099718 614015732 642089707 796509709 335837985 834702434 531731592 743574628 645059445 791636527 13192198 906218775 743290486 778671023 697824489 703184791 417543272 475737436 15289874 364133534 638831043 649752345 935742925 956214987 10071317 218303483 355669282 938722678 725759543 875356544 394897767 471404170 502958355 637047648 199949887 792131832 715267151 819890032 697109031 861824897 519172624 886579823 434443021 714949104 161978836 270811576 416216626 972200358 158241545 337322498 906423894 983641092 165527815 365152995 536106093 770845421 182981341 289771468 130515468 728280410 364071268 550931665 590382543 846332074 968235075 993758295 747216312 816095774 419836240 548145180 397862818 458472054 136736709 837673189 731140616 944155276 477445408 812702404 900287093 985667141 753028665 843797490 156764657 591602893 643544336 804031461 540884795 868111306 20030304 301438490 568931439 774609828 18915133 253632200 74006751 511067160 663308000 718725752 115920271 188879074 496175356 991566585 693511311 922237756 619879815 957598064 414617265 592461876 957385536 986059024 234314764 368265077 40438604 840612945 542487427 732504880 420697152 595189357 709096370 752047789 921538123 942836849 110301774 252011959 622317160 735583248 371227928 510573545 66740996 653496005 874909293 907597381 988712956 992344078 251890823 728339400 746309992 949399588 195092194 287367538 274767411 314593936 306430538 489211359 260392477 602259923 747176356 765970535 834894317 836925985 725187479 883091415 107026877 920433159 590802679 682762606 961243905 975984719 786441805 837288823 148287127 286863927 234010440 721919010 90506162 292806508 438434343 803640637 496158822 602145770 487303274 686887969 465429814 689535943 422101663 747227255 267546531 637841576 419737706 691244690 868355574 929359480 6975501 748720141 468061488 481645973 797105831 934344482 216925671 700708081 40906795 600602301 28412218 166983418 995327379 997942796 998098073 998427757 317880088 479183413 821864360 893902838 153619254 535546040 295794909 362265960 377030856 672439145 466886700 564973354 318951578 846520724 12133446 959697813 857170569 962229540 154717809 207762776 480686977 564464153 498136687 579323575 891464940 980864418 77591108 404672997 385550463 517772647 618873766 964964445 266016119 461003433 510998560 742024997 492006230 536837739 642656146 701946743 899397897 909556995 900139751 905037835 223789878 398333079 204998433 879003992 972612674 990651252 880271152 986920677 139572344 809078562 457603795 530204890 923317464 974894167 84690590 755673097 403740503 663529880 519436160 654077304 384562454 819958536 807456351 981891820 76107821 166670013 145417139 568137838 728534119 897824136 470394929 579684736 11141203 595904527 264138787 711703002 135549873 459283946 713178483 766340641 544215532 584593472 119700332 408616439 37978402 415565772 487854474 982781532 321416579 597662655 810165489 905952226 281224914 559240581 677238076 789890780 247579198 504942301 122481535 230143301 136770747 966991412 897535269 956548628 320287847 984390612 163019729 742442588 743131383 776539888 832610188 837151452 218255581 974352894 943656165 987009208 962789293 986867375 379729349 906661643 409296145 703497621 248873562 589678963 735069892 764015047 812181595 828790377 935040639 977499911 695584150 721440084 917294346 937981665 407966663 644400746 901697221 971254564 979257585 996216585 441805701 801532395 282455451 727349947 493866519 529461085 135233375 593194481 50032849 169354334 357834435 713714528 339476470 786496227 419185844 701974392 312767310 939830069 7391743 374692225 988397471 997376271 150503953 964336231 90620997 381135821 630958939 835962080 54959942 304580427 985527420 994750715 881269687 984774663 164579159 688086298 679735308 831030595 559439448 674935311 31166435 100278238 349127392 731055290 829366110 915176372 100978836 827634898 955037462 981489808 660791012 942651415 999317905 999333233 514264699 661263778 943006564 958932652 165203649 540180712 244273851 943073791 250637408 340837503 217559208 635437645 328602142 439892623 431504064 774178434 688651136 886495124 73081263 794240184 78731363 661137797 937186567 980719567 796136298 861709711 906764243 977939764 312529284 494591505 487360619 606224677 478413533 554260355 661260364 969787115 269756224 352030495 940583814 956012754 716406347 864114006 473394574 772304706 354080354 676488127 466733195 866516878 866114049 969290792 512067105 946784703 170239157 339908898 767660663 774304220 325993595 885154700 673823297 816961050 3128062 454700106 392994718 511828078 322844964 389707903 802818710 804733695 481754230 931429217 768429739 880913313 643753623 652585055 104962672 143359171 426745096 428163847 330657934 350126164 650603282 887237608 156026654 682427990 945049430 971483722 152026380 339724855 340683842 410412371 373845124 931183480 930193029 951845910 12016565 540728995 64718657 784636802 978066238 996654250 397156995 987807853 833287783 920823250 747059895 891598804 162046182 637693195 828813302 986014408 786090580 891932067 668311946 954203284 495983045 610553971 510671331 802002003 638675678 983676467 526538511 643902291 601296585 830788375 75355594 404185814 103051177 404517277 38334916 72572790 609206736 969189862 517793678 854720738 749116365 958991082 49309571 659511204 590869280 730646361 751836644 891083290 480494638 761979669 766944913 838550332 4532489 962280334 745295819 813462018 257977447 589842917 860940496 940492715 31445160 190777850 809731199 910989933 668936074 964760382 516196068 516586652 692728655 857486741 400289347 679387693 665885049 712449029 181724601 481403925 372355298 590070302 743764280 916549878 781245768 946387527 782662042 811127401 316841148 950041541 906300215 929336111 741667894 778148310 264729034 530241456 998918278 999001988 640625565 795067380 280290077 544428334 949123889 984589587 436633374 625923889 561979120 713301707 338776481 594730446 103506345 784090423 414044156 808040228 666771223 743981708 787956897 850760790 954928569 982456662 950380876 973878767 49970429 726656648 855810163 965520871 916380069 988182661 684753477 998348080 101851544 156394722 617799934 930934643 937680998 964382649 854180095 988012683 370724211 924871820 521224184 678733516 311670736 748529527 40560238 908471571 247443288 717630398 804061523 877221523 427314090 822093417 233260173 334023906 879199803 999204363 638697124 668178484 598272841 623624178 618795893 784622637 342165364 345850021 685742176 751329583 95687049 958562711 741395968 887005171 389206820 750541676 64712529 881706434 19300488 434476453 674826717 980641687 605366416 626249136 368717962 766581025 225446898 943863038 148335657 470327194 41019985 809497390 316428277 866298415 144019520 781861691 401511057 673659296 728957285 850168613 676799995 831065103 776643622 947117649 45487536 505957845 606968630 925320868 472248523 527140896 98828535 693752838 845069591 925774299 328149354 461693279 487607860 988769049 877002188 918783340 90061473 786785711 555997437 980694442 528665922 841732158 964668196 989374578 601768670 648892835 379593935 750008237 322471976 334115454 622988538 925335664 768713661 778666592 429743178 824022365 267779724 938536689 439101692 584013332 52417188 76554596 803279704 960063217 122513615 831150353 171235319 501461963 286670587 576925021 799163167 977577890 146860690 346377309 222129082 942392755 996647272 998821855 923513722 958481012 588921349 634533297 555394968 578846913 914699903 986510399 592566778 887210681 342771894 911775054 140727745 262248211 604205187 629006419 582077782 854507496 80411482 716268109 92882571 510976139 551466127 825684969 81983931 898058404 108202005 548185212 758687987 895268201 109173247 557284957 814813395 887505615 457877604 885032181 13683917 867400776 236513031 854030367 135679945 507390666 458693487 953332792 752738237 944451174 284017650 521513242 804238255 816311530 66175495 610172782 171279416 846449750 938926950 954926510 481078561 809476957 629911019 673808794 153663678 219465803 340630044 491374955 955841712 979670443 782792352 991924926 778358794 885456567 825961508 847905080 210601765 897461422 382425846 432790402 13007291 139521226 872226713 989604608 112260157 618288185 617240763 908802150 988299453 990789649 18619624 321777596 876938878 971420304 179537844 361626831 962669937 989034456 633464943 955263937 689005699 867516981 727593963 927042795 302157901 752434772 670686552 928508848 253520452 631262240 798625741 913731342 612916739 729776870 584808849 924451201 799149306 817587339 289946902 699254805 240417026 578005199 613430780 720559639 826856795 939271540 130539835 441834528 384426164 765897837 316045191 978692723 977903789 989857942 124864248 406080215 53237178 651503814 724453655 921922500 900937349 986192445 761830710 862208432 265281043 601159090 119315531 970874080 379346557 787175787 9966893 366368323 866178665 923282132 444405715 617281271 154441585 480038275 997781693 997824999 159122598 223253913 891502989 906515315 392396893 714118946 977363195 981880565 266641671 531024230 817304576 845212687 874183152 924519231 492581889 755500683 76703701 477692378 971156694 975180250 615725825 753621363 811395685 976270884 138930492 796329916 264155490 698675596 506606712 929283588 878294104 886127765 285486811 592214737 931112193 992084551 70260290 778845804 87795280 445325577 147999431 649012486 903946983 941739285 343028601 948182954 858319616 925794005 863981192 982290690 298558852 826844788 805379988 955532913 678695811 976251831 504894858 570340065 629847050 829030178 968469735 970510772 909930620 996117187 457052469 870724337 114739627 566175566 377309200 871994001 611888803 767669024 286527794 297848747 223867188 856569296 45786028 861867088 390447554 639649773 162411601 970527663 40619964 230164297 503768268 657798524 291069528 895046588 975997889 990640611 899930704 907485067 295298918 753804810 961332060 962455295 736949574 830986567 740676050 779795479 218749228 625849711 351639256 522565867 533967000 863217268 819043671 913420757 767347987 880273158 31807402 273819664 122395292 909879841 297399744 704928770 6131032 996111843 811982053 893099022 59223674 927958773 933364058 957342080 429493986 889223608 778471527 873262897 315419637 843441644 760080111 836740697 295332091 396872104 578942628 835809074 979166999 981078214 954835926 976276703 780280115 847180538 331950621 541763471 896454630 985269188 752186833 989206236 862604758 971765244 154111258 751281015 934554554 942637413 792163123 895985533 576240460 789904727 913956968 940779832 178641660 865570106 970990054 992344195 544305453 990876010 605047128 879122461 292274457 662572571 928298820 987751224 97189523 633727595 721047913 982516039 168602444 694357608 960700629 969609605 461279944 920747746 88390470 89138498 165798790 860848694 487719201 804573496 532278123 704179940 30072752 105522364 965495342 986266107 214065385 443532821 544100159 775874004 590145933 635833083 935359611 962970732 585594637 855543179 89927740 963326123 174845487 923803991 216139796 382363104 473678698 635962787 939989615 940530108 476610686 946082696 586842711 642990615 131769372 694364404 439649617 994754052 68552189 451865479 27638614 700136261 863498774 938503482 671570268 977568523 22807430 479577704 429270367 539261578 979572971 983875423 209741897 989704813 691332565 855491620 994197919 994414035 773706054 996838982 384754416 714753473 588783020 968370397 929482406 971518968 76958683 704603515 204284096 453838533 373122324 769325533 403516782 429687228 194047872 848437808 39131876 992878053 441873833 713350375 47283440 340453103 597046401 760005412 531631593 880024599 339952520 976537234 152359919 343993990 123243576 234695762 404493525 715978549 692629023 904565192 65197038 239847011 695681989 747054918 529831343 905149139 870483768 883547880 800477121 855635179 507479993 665965572 772470722 860633924 25111796 238889018 457956187 913878621 943675999 978116417 375189826 557520073 201308328 873338347 423434948 636620093 461175870 577541064 584972075 605238788 245478989 971356469 592822852 762814141 409804478 861185501 149198185 440258221 182169063 699340805 256688793 569959953 407372989 821171029 478061390 688077088 47231110 491347585 142552845 831659684 840837393 973441638 500791737 842932536 626721081 696411342 362426961 565597396 958047525 962320982 149385841 496874366 40907993 945418496 981998814 993245970 443837376 594603205 187610436 529540149 87100306 785530636 214856825 985847093 498866213 904302305 825607416 929623428 395963750 671935937 599877055 996798496 232742953 763315322 529267848 690226885 322947140 875713373 592119941 893144187 16349613 466641526 486123412 818842623 160453947 555064390 86617195 219565996 371393853 587472431 352349075 846810143 961040798 972700218 335115002 572568494 569538145 693568918 668204501 940654048 446155034 886856008 453760369 558605942 648648828 801893955 547382931 884132151 679745449 738045601 23828591 587690597 990939486 995234934 453094619 948105985 926290450 964579921 731880268 951343282 524910952 989741000 644698575 939629738 779131294 803310672 253944309 753928276 88657349 955535579 544479529 954563602 921602306 963336861 19748030 341224323 938124259 973201966 550668488 877381976 439227221 887136039 764703873 851092662 191997951 947451102 53114470 618971678 715312671 778436028 806544146 920963153 469613935 561403612 136826025 402069741 628061580 933153288 242527922 711241991 560142022 755719571 717745069 832792756 793863010 875017220 499093491 911072599 129510799 678767489 746382446 898307799 630944395 657598706 47306582 530980807 804586352 853483438 541339734 873728780 539706746 952190818 862834591 901286455 138293335 780152383 753910045 872807547 363327642 378714469 381837276 577210101 68260581 435675315 64723 715432871 193174718 374585291 145336720 784286760 983915712 986100992 170299192 251895870 933871870 981827169 351975357 768799210 958696601 992161153 599238654 860662205 820635761 933416577 236627918 244631632 518819011 894527355 616973881 904942138 764084639 801335244 648113779 733774826 525550359 693544250 29157887 469549223 502811402 981153665 868459193 972908827 27905243 129801744 749867239 880460360 913537797 973868165 172735332 686040807 307027876 540741545 719620296 839286694 568446953 694221756 477278730 775176815 697457160 952783315 941843901 947874059 367923960 456623446 101455560 957493375 669688005 857156427 625943616 846873610 490452239 854318372 45924289 715567995 254361770 467667537 27376095 883257246 774228388 862405222 107844035 413101209 354469871 426493911 403160258 413348869 953814377 989704499 368714975 790336493 286006299 916030644 176256184 663950278 477778377 852495808 298561899 518411460 51793218 680421837 648803254 947811898 610200355 684812455 894527201 902737071 401641361 403761409 719855990 893820243 289954375 436283802 76852539 680816887 240512250 759955797 886938059 966106926 434974547 780811603 611982428 934597345 407365227 966203202 111702899 500502335 749132075 825031977 431720541 926530483 168960308 254243027 322167879 358212800 657751159 749324563 455707110 821473944 892664616 984864754 397268525 421934579 389022001 856108797 121799860 319447723 882873187 988395049 723937297 980454794 550215384 879602268 51909951 726692177 17453095 654078555 144443880 579076163 642329033 652265210 621331524 648350957 219225939 961376238 520365617 721407578 331165715 973411133 441647688 864405371 573843291 688905277 75681691 480999912 446812489 620167607 169843479 568053280 986070836 989796594 896650493 944892389 860643466 863613242 344105016 855154164 659420568 946082792 889519636 933776811 58373148 311611757 565505460 573669619 129653716 968321112 396564023 490574249 974489046 987935572 618907596 874575213 202640680 636502078 92235771 891773641 174323057 508420089 937909860 971224137 434019394 985487925 211970736 570173116 539101380 584382076 5339812 295302910 42733818 46472338 709956687 888546281 726175643 791088549 269788299 503472851 510215656 739610548 716351189 893139426 896120802 917386885 507783353 694643340 708733710 795908200 639660550 839027700 736383697 972904550 58039814 631311198 420129404 618181483 151338696 924948866 867537199 952388004 444167394 756936490 911171132 992964655 633476540 667059282 547538844 974777075 762436977 813419152 81130699 477022081 921062363 925843363 395031788 874006030 504618062 745103102 67361390 766492918 771837047 792657875 8981090 35405607 755937107 908590339 684323618 845158920 646667615 982951522 631746994 866417727 384629299 753271899 590286026 844724012 789909055 975184211 377995729 691598002 84230250 621577256 792063692 970433990 916882002 923309604 165638180 335798149 280490548 640135165 206045293 988912834 657448717 861945194 922449100 983252028 579060153 696242486 74412300 887441089 834816150 894582955 408278887 760093359 325531257 953021970 558347373 610217016 397771353 426900292 996620543 999368119 359007572 524530095 965836352 979721843 635659297 731117771 264721305 887302423 959221296 981502931 825886214 922867916 527714665 807133264 726510821 797844054 954112999 978035219 202106639 326003559 905728465 964150330 538826372 792824103 486338988 725436148 751622526 959993700 448250328 650231151 140674871 269831465 205756479 547248167 388150512 970748086 973486487 992270589 367987119 385503165 862345511 942119693 361852844 711435825 741998982 757602167 957587744 982946772 271569090 983703892 899528365 943447777 107244159 495052591 949153117 956951949 693779458 873041928 548050130 791171737 625133637 938000991 646208646 972055985 695245223 723292218 356182116 894797109 455185878 546518667 450519260 650159672 846248515 986697640 309864874 492565410 427669625 820397245 71857319 139279648 566683171 740951215 989831553 995893882 377625352 808451010 828797966 940374445 387549600 727483542 695233018 737333606 344140641 913814557 951165822 967707172 422340796 573037055 741118717 838271495 22302724 865748322 619213044 967910573 377603285 589477879 373233344 967749828 920996685 932059886 562642091 608204903 359582343 649593229 644019077 927639420 508949788 624577174 329002538 822445681 407357587 547286294 290772543 416655154 199510789 298222992 9630515 867334855 288982916 851370747 614623665 681600824 646159118 929404304 540345471 693046078 499913185 943105265 34619863 142270518 583580327 828795603 588850591 864369402 771116482 934152883 899716669 951743008 343055783 678330715 827368904 991224731 974979282 988021111 401165416 628215665 750410238 835799778 707446601 944817926 394738805 783627998 631828463 905688170 346585565 508283244 29277434 404151322 181586726 587667004 370565642 906822456 488335889 933569649 279227501 992750869 978827763 992736991 893130202 992474594 427640503 912467793 600335080 637531111 954069286 975499908 80826773 108867538 463323703 811795253 433519602 443458109 303377432 468921459 664616568 696453173 504412841 641773821 760845199 816299930 943922133 996967860 355193775 866055521 989248303 998500909 118095928 810955907 152174049 756277869 759362316 971278928 948917075 977114388 182549436 201182275 124919738 881257956 94443606 948965856 278991404 446660181 50464770 419905699 525131953 726959321 444291491 966520892 510449887 615935085 760789038 835832895 496343272 604874483 233956630 662512250 740740615 844299171 591040720 959860651 717913539 921405593 50992782 820344968 895678365 985031813 644011051 885440847 617579726 925738065 115753538 622038273 539418355 561074250 548334584 608878896 719604000 725785915 575660870 649288741 337000362 832216346 257406194 585179349 31455784 177803498 591916570 835833911 817545753 932294431 684916172 934852906 426903394 969735196 359546965 680847604 643655341 763212340 913552894 990604515 740163740 831129854 931409799 934782728 522054472 861326657 625805955 786266681 758515099 786305805 914101954 928725115 584156891 973258506 814695611 836598137 960546149 978957496 995340019 996712540 94708689 418369425 869680255 901922538 341585596 674555920 191018255 424895546 613426837 837503428 758766005 947793469 124375 711513099 783047828 785540086 223315812 849305656 306512413 993602257 239264716 425301277 670215237 918734946 886634857 903784974 582923671 999204164 980204901 985310742 662096034 860351261 243680644 937512822 943067512 973578141 634537822 649882025 782070884 976691687 661737182 871408003 267334288 750910867 978808024 982343214 118819836 132239804 285604944 754795739 742996933 752266779 362547293 965763938 500377763 761368396 285119548 903954207 497770797 902786472 523955041 929012979 690251701 918509193 819255923 941620933 26744277 727017713 136248413 995396757 201466466 215380590 102595288 513562193 368599307 761490850 9796452 916056712 638602528 983535123 343652671 568774430 324387879 966864351 931848218 997620356 14980135 638879207 511920754 840223969 992899798 997961077 655892128 882420271 441002944 573533297 702127818 798059918 173004485 255763318 941886349 979486188 344160588 737921540 512970784 905115718 924334576 955830992 317993463 322078446 593819177 918381517 378254913 546931305 758204122 831347119 772381960 820929503 704101144 883254442 581155681 985055337 531571763 793738882 590961657 782707342 870589824 974577339 298664718 639033381 136951085 433828576 66508061 97098093 71758851 130583560 355378875 569408704 890980446 909593734 872559900 968134182 744518163 967889997 894941326 961041080 444338081 612958412 153250064 200358155 921020816 921514856 367216794 769616829 224315351 583883457 546540871 663559470 164466711 269107940 74646975 445011059 816266038 877755380 384003910 640948812 630150984 747565078 47297834 219800270 962220221 967539537 281956903 820545815 265895857 294207513 27436643 754589780 554727484 678012097 514711306 840836434 217057690 716506570 514979793 956225608 877066278 929349031 181207351 840434288 817876458 925858259 354957133 913795598 373490112 881363318 55509995 760611645 801570426 920207919 961800641 969753115 654655557 836223216 254985244 516850566 17416200 179584022 726639598 972655878 962866494 966339820 612925459 673230423 125363844 946948970 71926067 203764289 417824588 736225927 322866509 340036252 102219578 689716236 585942511 630215650 743974092 798986651 486917681 961236716 8594410 974548050 19578478 781595100 561183479 917959429 684904016 818103096 292966811 340503101 568419437 841576746 790250462 978268922 829607965 898856153 659638518 691814964 635073177 841249830 788742311 971806341 221302179 661353441 63881416 565147402 306338910 691488777 544674858 820857237 893220840 978089059 529350136 601840857 326378454 857781651 658778637 891156187 247792777 679715789 647732601 675462409 761008396 838072892 607870267 912942084 108268769 807000247 405002580 923132145 450328123 855071921 848896879 932600487 661416582 780550298 422928362 969816342 363752539 825867784 910778066 960850649 792327075 842200362 728573608 907275499 962545456 997937970 281810381 850198356 319564871 950017383 957591340 979209293 216513463 376258535 628821045 773678126 618336568 728400796 92525268 437343185 946072162 996733230 289460448 577267099 255321385 580349999 109380387 771286652 472192723 748403771 847409619 933639883 38044253 91560020 173790799 968272892 503186985 767117464 534872758 600778353 55643844 561395764 215613916 746386775 45082068 896831051 78337313 108667281 446608021 758552617 424435827 770840758 963542691 989134519 447257690 930706615 229259324 815056465 506006782 700420240 766490329 848012065 10037840 175328746 792083747 855055693 341258108 694934805 158845364 173374960 985250773 997255439 165180384 627120734 316735564 868356858 472106376 644978920 211994228 393732422 267576175 693493001 427880968 944398122 418301735 809017828 594008010 657815139 625102707 699727341 945960020 948278545 971821007 994875365 26413417 343654978 425185559 882496833 480850959 983311766 447645774 809493509 966204254 994346487 76496023 390159889 989763894 992119958 581574359 790913681 476503270 821580470 882431852 882438691 836394943 868900051 82340172 649043634 540973661 625268754 700590718 796007421 295445763 718134385 674277149 780039058 57862444 247394922 609158801 801037789 151652258 596353681 492403010 545945348 296035929 996875251 38274648 68208771 399823896 731516342 900314452 970462854 737165554 738612781 495598757 987276192 633171261 878853227 394356133 779464387 125833332 813162893 45181580 516305869 35320051 615918128 168138220 553749283 601862130 766811496 115213128 228881682 394628706 816380523 236668695 251227972 87619678 757427426 54692014 141521287 790788636 865561647 235028617 533549144 474771149 475645423 937284970 958010349 683696624 861354921 1399619 353236328 522857816 571124753 541686959 842249765 214606804 919114012 529486365 802857870 487794730 912692024 743693515 876603320 269487255 900606870 688925291 921969559 402848988 940614399 85653685 700717251 570150578 990448096 38166365 167907629 54407249 537450305 681195454 889130551 395652060 411440277 62084234 644206598 599161099 995206497 717695735 974231452 60066135 542825672 395593166 537395390 570247201 745068500 20714792 997300585 984724459 986745198 104317878 584018576 957584024 983190481 199048213 713691267 440583872 685757098 416688396 689068669 324242077 778754984 358241194 454829303 226421681 932428068 513017537 645592981 50464378 514701539 685387657 763109553 51518170 181578606 728646435 973028284 279595085 734071110 528139437 969272422 765392859 779961767 25291316 374449030 993614496 994691949 820652130 906827477 555427351 916959416 29111181 483869620 549129592 931296235 75286767 985059302 657299567 667437977 35933171 960710467 772345513 836436167 265154377 372357912 782341079 783830769 286852999 908180790 463107398 701608243 501379814 686106713 217053918 851460430 284860264 557881763 138243953 345274896 627020080 722165968 283504670 420177508 9760178 90061582 651054370 974686430 873784130 947281098 774983471 998310120 88189538 898020606 30017727 403282540 763311677 794094792 314085174 606624479 730604012 849152464 330422355 430449819 107388118 860930020 542151188 889040875 637635720 894357386 418244927 659746141 837375464 888161865 636026107 991555282 460584329 715516602 24827965 25306389 203368690 407834065 456870526 720370723 577194458 608393869 973807602 976777841 123801955 693103533 686221380 743311391 332281448 475736897 981961175 995970921 682929377 690624591 123672074 640058770 35767980 736025864 864948843 959614315 456001080 621610625 344080391 887133319 17455718 995335044 519795238 963229734 422290285 969718761 648496848 716091523 925063184 937121223 320023619 393822164 870740484 891762065 723661021 791319572 891679653 927971082 242794259 861136404 625358944 697405221 602018064 815028460 145148887 827959746 576070036 692459995 177040719 697198499 347541137 455558787 628892831 777234774 284347455 412345051 272944919 380711590 443273444 715897942 938115472 963650039 788991548 878539546 293150831 648741577 475672398 923026985 278610943 512841303 940888319 948525245 172001607 245855178 100259372 680129555 422933934 854370105 35930039 497752052 156740400 333264929 757439233 992815335 385861730 705212314 9319411 932890827 247185501 654242911 464439644 527568079 15641132 983425330 210703412 336124000 902919994 949097824 690186430 823183516 567596804 860602321 43146988 739487127 432424939 632807950 401705888 884997200 768094140 804296781 342133716 393135771 199219607 961999254 130381013 932889187 86469611 729662057 515987309 631948482 554928524 898476775 699246991 726760777 770251221 927377808 946731475 958117607 824318296 846364139 718628053 794960907 65588390 300496555 845660316 860379596 779812190 921032075 350041764 867113696 887822499 964646670 683441260 718145756 490912632 892619954 942605467 966797581 238408041 251603219 197050072 524872891 437938036 886028033 335161780 366284225 976585694 997307627 645055662 695358079 671242909 818359682 854075313 932447278 744930456 793044129 739492689 931701155 960023961 972212040 587740889 805750966 53277955 899124075 697604310 886654657 257004317 727577862 64330161 642120272 78003266 513650722 850160802 987966047 476805939 839343968 657618855 752518413 541413853 722210054 420636884 722587600 944110100 976226221 621785900 933648111 623515998 792781059 310123273 570747599 83150781 196883448 279262541 387494613 843611113 913187358 123550291 950087881 953832201 965466100 38559269 604413253 937464924 973347094 295324862 993879590 205751058 867288336 71879727 805784751 965406958 994010468 333954979 829931003 204959207 772603067 399899814 579586458 320549119 849100254 202344712 278805484 618099607 623933074 284658414 695648525 980770035 988681416 148032127 987926971 745517625 989291137 35456368 308455175 326032778 781891500 950403642 995031142 308308046 984998918 754105751 767238289 549022518 725023202 62289880 351210352 396698558 612603605 271553949 641455483 870089231 921899586 20183218 95362452 918692807 962490504 93875064 720266034 228832466 795268248 277232004 286805114 504383839 752952619 276283565 756636455 571129908 686217509 789662347 893452298 626302010 738019980 630770458 821483187 725779241 822000473 758281442 834744505 440328387 519847844 563302789 817115257 725207565 904457912 258520124 811243401 202326338 741322442 61944624 93508547 303192306 900151286 562572817 854935579 341711976 407127561 957991976 960356406 124725151 434789308 961664462 964173034 341486840 912216751 351615329 448226795 650256848 864575932 227133978 438102251 348061169 990584126 514234668 613131516 688959812 858710889 424954580 901380252 887710060 997584140 790960298 824630884 706487980 761964046 331668411 706423865 226389223 250271599 615871394 832198726 69588007 215171589 368785314 546642436 963823589 975793779 350063330 384076212 754466853 942387936 967136587 980203394 969531714 980450078 319575245 705981662 406827577 999345724 977225052 999060330 33382773 745828001 673025823 948316854 164212816 536918172 591258110 978065190 276359684 562020674 684508034 871690719 611879039 628928413 506560861 762043700 493495046 629275775 616150484 947118634 65131882 273634779 251342319 824850330 298530465 953584848 373982790 634704741 628931225 811839000 28364315 183488642 485312558 498816165 278126306 899426407 875528875 962648167 88091391 717483697 111031406 249210920 646149498 776752453 729209497 935376225 225336524 700689012 645110244 727614789 130511175 767296234 924608601 984388852 221217776 808320848 526283747 806277688 525688899 782216063 959258662 995114947 880952635 960024730 845652638 960146067 654347336 801808858 493181479 910121453 664407066 862853542 920909910 933134659 734739519 802719389 711424554 991971366 403874222 918362908 272994055 362735124 184781941 947498588 785268108 833537959 546225887 912893384 69875601 462859891 332749101 500724622 299475594 920382780 295544241 583875106 213813943 229364538 268741078 534866890 94688745 287168386 527521603 643507114 495198882 651902092 244063862 901068030 455408781 554104346 551508292 674081979 726388281 937937120 631433116 859509476 14872304 542275389 791013026 923317330 926308496 951940362 669157810 707914423 917930227 955686838 246915848 604798814 745882574 931687462 149196353 162094899 609440720 679585067 748428550 921530516 515019525 720063856 735146556 871733309 327466647 625745173 371681800 672104822 193248825 462754350 269830627 585225645 133868514 621068963 75512257 969815215 32149948 811729681 739850799 880121046 295004313 548749758 459600690 719300337 84577301 376847743 122273562 315607406 59226616 538032162 713814498 843714427 894962368 949987712 869517441 899342039 304763871 353862427 792218607 990970215 193016435 398226165 787844469 977160566 476257112 855182112 804379189 825323080 359494750 535227096 449716456 849693132 423725846 802752862 511847903 545957388 380842684 706428247 53352684 160919973 882348322 929347974 273063324 345412197 421025396 589105137 616779485 665929587 709614778 953555278 24273931 722002930 370277543 978014543 201760094 534300550 106140520 691939656 677038382 737741079 568855548 777686829 702859922 947141325 453760249 665466139 544604961 683988960 733800139 976707092 615068802 724585488 273264244 861102715 290584184 583251585 657693327 771992720 583762104 718478946 611595337 677160546 253603936 329226279 859219815 975247173 419106123 761160882 418412210 463576807 415820476 896825952 589066094 683592708 859055615 973307650 427049889 898340253 872275130 922133400 713462368 911588072 830124628 978342056 37324537 555846446 841961400 958168944 827851233 943697742 377340118 844647226 232974270 758341987 657259113 820176532 520691302 561111457 410639348 612754900 900695195 934814594 425447940 799728298 184969354 503816094 78164133 274641286 482765638 577576018 694594494 941055147 30991338 408223096 668111842 839903428 984041484 998946321 346034147 386227586 556265734 681158944 864998900 972679461 371794860 574348443 297330478 452609611 660910752 825025893 740153988 958341908 510117841 849400046 906707078 971932860 485257103 602256185 635417815 871154721 87561272 302007541 600717907 812284713 66335964 947499780 164674329 901714845 666668133 866030227 450985985 759882034 104905954 204310085 631018893 734992749 424494528 490083693 568465218 986500519 14674055 630024231 68908515 716856102 816484128 877143985 762123102 994983552 996615108 996668762 28830167 153521224 997165444 997659317 420893172 605812561 577358863 597435777 806299575 965805442 519104938 827673000 581771263 728812190 171445557 306985658 698264514 860902610 698422856 843894148 446436362 932118122 268754532 998071518 100956291 729039601 913638898 951829481 977832194 987168799 828098586 915893198 857886594 998837890 59391394 622490667 682977729 835107483 169738842 673860249 326907541 878155342 201141487 482345895 367502098 600968131 843453143 959069605 810952066 875007427 239855654 808323208 74548969 639476706 392607802 930997217 963414412 977226131 149448431 615637665 53216664 275405970 508759182 692876388 238316114 261436238 669081618 851906492 878385264 987781281 169636570 592338116 834766287 906505214 263353735 388039900 986188885 996514586 236469679 433957367 912703700 933001066 111361166 461153615 626247281 977265789 866648301 958225769 156144495 687572144 695829766 733036647 485252195 694258790 406599056 505057560 720196506 853354577 843895893 990548730 170778048 736158423 343024370 929584287 747790872 801935689 218451246 230948059 134672090 951060415 358761775 465162059 602892739 805286613 817123110 906687375 717900314 763450839 933261121 961535856 413170110 739958824 111897559 597737014 523975526 801297179 217807542 434079867 759304632 882622547 346169433 612935716 732592227 988979700 970840617 985584046 635666141 653649862 720512879 733607788 429492127 809287516 174362778 582523676 933002471 983602015 680915094 816402747 285824618 840327747 500182208 536248385 154861315 344733292 428392353 675600316 564719498 821747876 801107590 958993015 155350738 572898340 522448669 629279160 427584283 709526593 238944382 429586158 243033765 955667039 333761622 970563805 680273722 986120882 276340982 456474304 723049137 908050357 972860826 998076220 655341729 679215995 723207989 847036080 173177872 234256439 800322970 929765829 798542436 995485631 373919930 426047540 18386597 725071951 499468556 777345067 254747509 528335562 728455245 869474247 406067264 829062308 367214489 828317754 121442440 698446776 213887572 481676949 706657935 885690202 610101009 836718533 975344295 978148915 547698352 664037371 307648834 448151921 253219939 629169975 10279354 681113367 601881264 973883919 801875200 894253771 660067206 700091597 728299569 815735320 636482391 851131586 930155735 959192517 626651381 979251054 14014562 527164011 502773395 855977428 550203250 719840150 522804982 963168531 41993793 844368067 527568447 685085585 615966672 768100059 818155505 882806458 15083604 744416033 308356 848506310 702288302 924855542 528931684 835300235 725451588 726392769 389200456 481102485 50281082 176870410 374697841 682245444 891824737 896962694 706705261 733690033 858769380 918769954 249812680 258026500 431473259 680285464 804225154 986615383 37707294 979533134 663893329 681548796 46177206 596563452 562703845 764163113 28167735 860196476 26749652 792141996 950966334 980282290 218286028 733838820 6572889 339369144 725060102 963428541 108577037 344048095 93442550 847173362 580875392 988309034 195251316 260672042 755228055 893625881 539177836 886025136 966375650 996712606 620355582 852327687 143722463 515150475 423548018 603383652 834796934 951901506 766441219 998241419 323832613 494375359 273569610 534946038 518905578 919607677 161681160 910515908 665422801 932586965 515427130 854630500 290269192 309149994 608812645 855818817 166478296 421633201 234940752 997832870 862556665 873210533 473675698 717028513 285768841 923265147 93222290 127610764 931828454 995290961 1375351 913375613 67518392 530295307 798107888 850193926 383117800 816860819 372616845 542042046 652446364 881453669 702899172 918838507 581395564 583576129 707999287 922653591 416390685 702888726 359740882 421651446 95878998 621757486 504722984 676939649 868515697 957577854 420726897 579945762 68604613 110797667 393249306 755625390 756539941 796757763 940508890 964023193 53585026 579859161 182062853 631817190 102029860 557308018 278041269 325191819 538074925 697488672 564372309 750195182 984488756 989255406 29271134 903275992 856369342 870223933 632806112 792360188 675630497 900852533 287901895 702900984 171321834 172857280 734574952 775281984 776770282 911966948 416459944 667333081 689105675 871218430 543573078 733432618 979339663 994641197 691225827 774223564 332318373 392305421 367884664 606618326 301349467 684251462 593960364 701122848 237571008 878581393 119184907 166060116 548674489 736928324 462246859 783602216 15021018 308295317 705083286 725713183 284174427 707133533 567178851 710691204 66629726 396990185 551546342 933530344 64968355 172924359 515143381 762182584 172790827 285137919 650652100 944518411 593411089 766037111 903297697 929468853 622003271 664657557 305699056 909791182 337165746 734519545 15225372 56079617 961226682 991878281 107961947 232440946 158737050 747280007 553367850 791959760 590509405 671080766 973584187 991601774 201488846 717610510 258120789 894723629 204088676 489125271 490311486 621546008 777244961 986360902 32183851 929605801 927007384 985750539 752924826 811051771 689309379 694839342 381345993 446311740 909186570 993090458 811056179 921370397 40586562 328105028 649876228 959005182 940439326 989225974 249418794 331877259 595284874 863773158 394034450 514361868 115469149 633824537 377868925 563888983 868758375 982649425 248818983 866624208 988367205 993405022 225587285 407345898 931546994 933643488 484419407 614011761 829432191 941458966 412171170 812155081 910363939 998224515 22540742 870083858 71089076 964502120 170777267 645090677 805648197 994471072 889505641 928474042 719519599 823994770 535903324 958859632 741603323 918046873 546829847 564832470 335574992 434846089 674670052 870333460 847643099 868008643 76862544 783884539 976813340 977755170 613822985 991308352 857912330 893372577 73911486 493600198 391026317 668932320 928259056 973666847 656785813 848761283 48866252 257659231 22235331 372285772 104064282 212499760 952412352 973546307 627886714 661700908 64003206 915298831 350858543 388925451 953871080 974642839 781297673 784684634 62281055 81131525 198521709 963225276 792533062 880963810 334397342 843630071 974864664 980582577 177187078 523404119 684216036 814568821 920555786 923155312 151319443 604671005 515304466 627319078 533057993 592848275 90199270 555366462 616673016 824359215 547995470 580334257 330014394 556169322 524408605 869065395 275707684 918603156 779609718 851762895 876982178 956648975 892078363 956386395 738795614 874225630 886284213 923225646 853694060 936874644 743669516 921292465 171738972 587916219 229180968 404217455 446086031 637818551 441549409 634582954 758808779 939453409 729075628 746568189 441549635 646197637 105860673 523799375 427216477 458853382 13697063 103254929 470098126 495458883 751747658 855756909 419689085 636553442 117851640 307082212 166123257 476026837 851338716 902449544 296266791 709694314 313498139 402032755 250678851 896387023 419542305 985978554 166892870 219915223 405553525 885220792 422813081 731023437 391810506 583335347 618264231 867989362 351161106 427952563 137622916 222066209 338805271 844810288 989759963 997233847 644012716 711827888 14626491 498389336 996989456 998069374 622110588 713595366 320455535 858969226 95320961 868197469 164452223 760496644 259166090 929552314 851836550 887188836 350329217 647032801 345519448 531570864 487508965 789615718 321257220 495199284 849344860 981941126 756720077 958884698 267334574 697264639 168570411 660949332 867171493 991201615 78648288 749690420 561738944 908083558 822497633 884203979 897327490 917896285 536558417 787366829 471051634 935656695 51776510 810385088 11051965 639574951 863398566 874982814 739823644 748992865 672434253 955286427 764293543 995003892 675108227 806412251 595592127 607356928 75805899 96977233 696495476 859655006 92321057 368350710 40141802 786869852 697091600 866064633 471222408 828277883 942383300 997125473 625226942 865599001 348593983 359287869 954549597 986153337 317913264 894545235 764854664 874166275 539552627 572908505 711886206 985677905 797235058 809992594 447578842 914235284 185761735 933086150 402720157 622688626 727918082 843555351 410710485 644295839 87394200 731538890 981020256 982538366 871120295 942222657 246687195 396024761 625870261 877062809 43795902 873768687 176770413 727037193 439027869 479372470 697552836 718434725 540607212 680093189 427136512 969879710 60593888 516389659 90430865 605921303 774953564 963411990 651403792 964233960 481162197 528001270 215370697 785988416 758772959 783952501 895584407 973881075 139122829 616623005 317263081 467474109 585975539 983967788 964958822 987957264 526562204 830359403 383968767 667032867 451694615 613214320 794161318 816268361 312090001 389826061 891370222 928952041 275930034 840959321 368394895 678915188 136764677 433645801 424386038 655929249 920962137 933021144 663164464 976407339 116612078 893948609 822126777 834423059 501699066 788023932 100965799 137192172 380753144 456730531 888757850 915595782 497602046 559510580 980749202 989881729 707699044 730696333 537288066 588537014 965856308 977216987 540132800 880374106 970655972 996058821 362939108 778531463 325125173 925255651 573671030 974504082 918716637 992848354 761695063 875755053 323188179 536815691 521689408 524834848 628558053 713472664 842243807 940615260 989807180 991913511 306161346 920240912 690132082 727972420 218403480 356826419 383115452 418063536 996150140 997550106 542905455 603028016 678078852 701592538 102389149 131764394 510290217 746236176 183114651 569010244 563665557 923843282 707636631 827363501 405040913 552008601 97903139 804187166 137717897 922319107 659661944 939081605 340245090 971935796 696893632 843625560 863002266 972908122 595229470 946972417 945121185 977508965 70964268 179556766 602806906 996233045 265052443 746722946 371881909 575652199 830273322 867796200 877367829 877786954 616316525 849939772 651397115 699932011 436769396 943686673 127965311 909495791 525384174 626542062 52251529 173497584 438731900 453395051 726422359 975377010 951510183 976158425 643367818 689091100 138014481 395931306 644189297 761143421 371200845 409289522 261156943 479495774 301272274 957133490 613773152 931583345 921480284 975522035 642391727 931563519 148338525 674286127 354589466 630370299 269098950 383400959 304622426 606675773 242383206 727121447 711091646 895636582 752080444 885734362 535030356 891608141 177349454 852710953 562369523 656603142 254914734 593460499 867205869 923569809 358633189 514795590 581034091 899014104 17869187 215026786 473512982 557204773 593689276 792839622 404248931 464604443 164014130 191126680 302034583 303311743 498255863 672312932 392936139 885461563 857095057 967933582 157548582 608408179 250624460 571747329 241269793 457348617 714449726 984808589 299024619 651128680 541047401 795791252 674002791 739730331 449264838 452095339 806194963 859332547 339425825 445395117 124933230 227593067 280674546 940136753 229076566 950092487 8002561 125210909 854854516 980480889 466409391 671453414 461300168 873778116 389745253 424700857 441503238 517972750 632039085 898505234 700706787 712028396 753128239 820948891 969226299 970407245 602852469 713022571 704305254 751879294 599212702 956826638 680748457 750818928 227515562 646871030 202997770 866602704 264106954 336097329 817324355 973593575 417599032 730103474 868237411 938567510 178057497 617844569 975039915 998195247 623635144 727833182 120813852 334706094 543334936 908488733 236455542 863245024 849549030 957484434 540389712 571551071 853095776 995138082 95165677 265103592 863543305 879249977 870929641 976206907 357522291 932640715 756430378 799178603 648219370 696993150 90318851 887307004 7530002 284605530 305931413 554698406 142918326 950634296 267298200 982589053 850323043 945370850 596621978 863752924 281486553 980484053 76627017 661042073 25664405 707439980 179247672 581565378 505880521 858632332 564827974 861780023 282077991 613384084 513099794 938379921 899683395 999381130 944022617 960413508 526369899 950645962 375740200 665527260 706878781 979280852 336440113 636525894 426771048 577586143 231279525 267892209 903672632 915374723 243330292 808850999 153501049 390848274 232773043 527922512 587977369 969073096 803118568 923283556 72694868 99876043 528758727 849950909 217121127 645286251 282119162 570994947 753891599 815492336 628713557 859250325 35445446 80266376 50311399 151383758 123014169 269674408 578284795 584505693 324822719 538131495 778475402 844166392 764363323 974618938 940658955 951205572 725998561 779985246 47749105 68952138 333839901 644229832 536876458 548437248 533446673 885610271 640136494 741795912 229080119 615549323 206390761 243811965 29383524 347429944 757421031 762315331 47475895 532479015 298095006 802932556 785265716 907668432 601944075 863999799 40715831 897679366 436899717 745361497 338707058 435880243 790683443 968302549 956707360 961448889 788047622 888446587 576236926 794163346 767091154 828673200 279397450 478210321 222824337 410537804 881414532 930508216 165803168 876910316 581562830 687281453 67226745 933284010 892672427 899177069 852137147 956761442 194208988 244630569 322756499 627438217 571364943 932382203 456886544 728420243 959137959 973439106 830191900 840235270 582808562 807106994 426655120 792634893 83273831 492529225 230499566 236263234 906662730 981017429 582635800 889732065 744907676 784158395 101330129 152918145 941212851 954604805 793125459 809232667 56207415 618632538 293988393 771832721 272843123 665283448 819658198 897347088 372072790 474319948 547557016 555626434 216833760 483332588 287190789 913670115 523386164 699328051 90761505 128376027 674042958 703654646 250048245 691802411 557740724 881119358 6352322 211361493 889215761 952062012 423456083 884052500 422208896 486483999 298350074 331563606 199466100 591555455 824682067 862062368 412136612 995984420 427834120 960547780 574519525 745860694 698632196 868728871 853819103 887754121 844109261 987286724 550469527 949161694 844379931 965435750 155098002 903093880 493686856 572668419 864719847 983754638 55426611 741066985 591999675 763623752 765424616 793022835 282678408 456398526 998163494 998763859 618210197 758736110 933240393 960151378 481535944 622454510 521601628 955495050 592837813 765143722 550950860 561365406 274805355 323688531 889984875 977035866 623250006 792207216 44281096 253153087 807634103 853384115 588187699 617751694 280815721 647579242 59363243 636142813 931507841 969882413 684892989 942067577 768728924 934231718 435390463 473930724 650548279 758684584 574128807 984172018 312961090 992245768 456897346 774789680 482582075 716312366 619420515 896408463 142683269 763819494 147428751 174750399 149529127 224127019 497306453 827654329 462908158 772196049 796255831 980463278 696657918 859985220 162962113 623659835 651417757 802302337 377885434 989371654 269229600 414507430 92823558 290548281 622958199 851752137 320119781 531394429 482744288 903174780 805801889 933770919 624038787 747847844 733816455 842930079 917612458 957704597 261532509 454433747 753907009 802598416 290655986 583648727 373096617 701135437 723600993 964334189 353178468 872552908 125627198 664952652 639193564 831987901 399657767 596742618 762206393 867204130 402196416 477296938 172244604 823708320 15944340 314627963 7437085 603606760 228808025 992439517 330441370 508194632 853742942 860666740 747235941 878688662 274893914 810575377 841394891 863683263 993705316 997377515 345017969 616679105 487347519 777043102 610201565 776796621 688739756 841159490 179792175 776970628 4849976 411840245 397896388 924038688 908959491 968833807 928875338 937072600 302766100 617369311 316938311 650057786 333901808 769269124 939672725 980852763 846363499 874689968 784661452 801618849 830698169 951377064 297480425 659180455 387207476 710693645 655846354 818852079 900393745 902919452 269699990 403737919 539816731 609524297 184245828 847876156 561083311 884678646 544547971 905995050 187224749 261463751 836540100 861455828 442274682 459754304 601450743 905025047 814069382 963010435 359778770 852693329 306233733 701602221 909284775 941727662 573293030 821047690 172308300 305192478 303283728 902434332 946133525 952131999 345042797 602563854 817101706 903779505 947787945 962371650 448004496 551701038 65219233 191918977 542960807 984731105 973843323 995514077 830314199 854811794 647138982 721658272 163227341 171653774 829535193 953478091 349871822 885866232 166624637 906507485 493718588 752619766 567326934 917538891 457440756 778703798 622585847 979541456 431507619 550749943 53789478 423034330 53969359 382429206 269002014 573855788 151916646 685439138 983854488 994729743 149663556 195485057 64763958 280219781 577045927 793509548 561170869 624209656 477753950 628897549 405159821 616481536 66777272 144734355 764644690 923015907 616923515 671628014 734506206 845693220 596448806 915251077 209407315 383147331 977838886 980036465 627613229 702084524 505626328 579623516 823098939 935008039 193656375 679342566 769423913 821336307 652015583 825175558 572563404 668014725 892523572 997855454 335742020 877363495 37393126 127095770 119264839 906100107 573097946 662648602 326401418 880462832 553625246 958820247 863294262 973064201 55232981 57079247 685547650 996762835 893504127 898137295 673268461 840477460 767234979 907204650 785498162 867423561 718002513 839193352 377627131 876093041 945746123 960269754 194951112 536684812 201938700 513988040 550871041 807966887 93476090 625790834 59203749 100004560 110449130 449595528 975836503 977446317 440326171 742474958 258896691 439744201 506026007 712317085 559506344 799897695 666726485 815429085 447094609 759690992 170153223 332487932 662002709 723591135 941762422 992680851 650947621 891833052 482364650 616573407 766874233 818968089 994131695 996894296 753201141 768443402 805922348 811653139 277232443 305053157 622528474 775597718 163622313 906312315 6849326 496922501 805683512 847063659 614875313 934362356 604418357 787861372 194601264 795068523 535385307 567192351 560630900 922388997 737810083 750264108 713514894 937565752 923213925 947920341 201353633 471189771 667082236 686457883 473760152 555434300 845873151 864779847 430246989 689319476 267220126 931899014 830759311 876631880 555331640 908322021 195437529 396604373 669393947 825957935 892660457 896518742 177082428 710050040 249928257 556197765 816498114 859344310 91498496 446375083 327119505 551230814 811323976 997188479 619942827 914565097 19714357 890475130 949731193 956962135 576943124 674147181 506263047 879785074 730107689 765391068 371996453 797430612 348061500 391964599 651911731 873805456 528161134 707911566 549522351 724976348 217689464 299074915 430370062 727972343 205606419 370300548 377070170 613722962 689337911 846494765 371348516 482724244 67223691 579979164 119625496 593240504 502426816 608667643 961371874 966299901 424748114 655035907 78343716 245039609 88359107 271142104 33478142 878981042 233011748 509498291 280472626 315892871 17851822 603293756 766377583 892122558 123546311 342332544 7176492 359844234 643732353 818236508 776231074 967848474 159859747 329440495 2180838 918943612 108539700 537235030 230886050 751296960 819751866 885663404 562488786 701846331 30293863 625009741 154987254 538360542 202873203 301228244 620064218 719672164 66900541 846090817 390471054 746435664 140680994 882875254 832494183 837454357 960543802 985994686 257480486 372456166 546134427 557049294 41697847 601057667 94249532 543187364 86035882 216170867 551370910 704113270 423466902 432873676 2181208 988384094 423337454 831457359 884182637 926024477 166352030 336395124 280044999 607045303 841440052 956169171 80964216 596350691 204217697 281822455 467047184 814729690 98788488 688408604 959969029 980097724 184140838 481337551 56852609 188659328 492837896 627745051 609680285 612418197 925717506 983876794 311108379 639723637 879452486 937262741 816083141 865466300 80487059 816899501 342872487 512706141 738602652 951570752 617892736 971453876 585942431 654450743 111033638 979943859 763258039 795411400 182496656 925903629 369216925 450546766 989326607 993826880 102363424 624150349 761452480 914124584 915309923 945619792 916786969 936759597 656810177 711687838 46999208 594987147 276191512 519623214 414811674 966506320 722783021 864166845 502703891 663050302 387616324 767502355 879318861 995913223 895532175 975344718 374452927 783823370 15705431 707559724 721384919 831417349 257569207 893035977 231276861 712866767 739129347 827006098 63552668 82407349 903052199 997283105 860571439 929675586 16351516 678036734 763986335 955776008 852419199 986306768 324303801 436446803 779447936 934643209 947449911 992515731 77167211 792164501 708289999 718323228 100959283 737293716 394826872 657135727 585180097 838751291 217494958 437808073 876783153 979604604 796247840 874585655 637352883 810413467 420284470 533132859 37330154 630460993 638851969 885796081 708849382 923539338 189384096 333605184 60701563 567001720 630535713 647606408 181837152 474959655 30464365 601800826 351384219 978611204 210500948 244535639 870609741 939811183 62423280 686269735 595269440 739369695 972300356 988458203 828901276 961883959 284614592 789078571 657012114 894322564 281893705 788033815 134609872 215727083 92727817 629810462 825425045 842449360 288100645 597805086 687692378 926436681 459220174 548945752 43636655 152344810 110369920 552619982 424213507 458528222 773198318 858116136 559855879 908543682 42182605 390078800 859859493 942138135 153936813 797482794 24437496 553688797 433883185 830323350 452230336 801222687 921755592 983598482 70508979 285530539 565130998 637479291 607879747 650856145 423811600 880187375 222232252 771157393 974620238 997751979 753523552 783521456 434912844 977401856 149333251 200926022 292144124 961018699 857484919 943506042 520798969 866296604 432522437 883609814 475803612 968948633 310880378 519452231 267452979 864629141 806037578 996417874 303982462 916796704 951069977 982969431 608950240 632948935 517269245 738279738 525823629 877906184 826330745 958483502 442492423 691903816 566655465 814546137 35882061 694920496 247732482 310317665 910845042 991201635 261710321 585122617 670346006 695626903 289158660 595094750 96357216 762428432 52265629 654978859 381485251 666325999 746845504 746899922 828077780 948375919 512142116 667451150 956362359 963462706 330870809 727001377 423582548 700866727 496840988 818369263 475644005 804028980 643346025 859958893 412094888 562284602 130353473 191304415 740891851 961786984 265581548 598046377 327643565 759291858 109357312 768223752 298390962 692237126 867629038 972960126 60900276 876888718 821221842 874405734 417812419 822373531 847361273 925292614 61759135 927112865 665640341 772739471 442068055 983326592 142182737 191723060 660486351 673950546 43638898 142111190 218654719 629212383 725456015 955784130 638457693 894198913 279477507 446742393 980333197 993611041 684775236 938527324 596762002 826604918 590977948 808800163 251591162 898138622 221954952 651353282 704476811 749219369 769578561 942951391 41136619 76053236 453068397 477538237 606277042 896808913 729479371 881158441 590517399 695041465 323161764 378727403 3478334 774073669 71745753 731302539 468573941 592598962 606585244 829871200 454681626 464127470 841576427 879792458 702687076 977498831 335453163 338133199 84202453 748062914 147770084 579428378 462377229 567084850 92560718 525051637 999387819 999392143 309683755 809508663 153873407 844908256 82155644 724784593 980359134 993762046 654915906 915982714 310519620 937430402 201636412 690661965 139599536 541908094 740083114 909431413 232130942 609971354 751617695 763031987 822600362 946371373 779273719 839126232 81053303 457421458 231608204 243509661 179935858 640437891 194364065 727358068 926380103 931041887 713642297 861878242 633479743 655353470 140003910 396682855 108458322 642732511 69781818 278651911 413469287 455239586 268473960 723218579 991451085 994554149 321051518 867243089 134004338 911961193 941182979 990672575 610885904 829490712 544861431 990487870 965937973 988638305 253373780 569857092 967260789 982172276 572958177 628504572 731824212 757581437 492915176 695443385 14837781 667476810 137308842 936240126 201220309 957529759 30977614 340724399 566336280 775851998 400158937 782388328 921958545 947774046 153227902 520186468 346112450 626915164 495412779 665829756 711832093 932127617 102891442 445540532 623574764 766301076 165544778 421188556 444288839 521143852 786856363 955577349 576282382 702188790 960908519 985681675 699734815 938606184 882608465 988585597 15390330 907141010 476888202 894017715 293333045 959380299 264196300 996627627 732566470 846462404 680144367 961297804 97354458 316735535 637869565 797074166 818952201 844083699 971955674 990771955 886935710 966330459 777728206 917641653 238513906 334316283 792447726 809874699 924505435 983884100 539759051 940835461 461748077 535447974 23677899 183369031 197374133 921261719 989320751 992786542 192827387 517061669 382360726 859179003 707102183 805739158 589683824 967402669 533881218 917527111 474729832 564722640 571962608 759402480 686369733 757054052 430120038 708850982 378566759 600588588 828778599 961164074 816289250 872138295 729354987 885738272 11376947 837328009 176974932 219394237 491330814 497275458 869775332 891853202 233936464 599057214 855447731 911467159 781383772 879600665 334999795 909310197 556880783 881322254 382069505 870677063 562333880 837447057 931959311 933259655 916136882 942270720 580725618 929934827 453926007 680005565 99897050 660583937 647455135 870964582 307467326 671594601 544308034 777395145 445451852 638294873 969026422 987408080 497985453 894366120 199106531 886265677 260532720 384625850 136881227 810079899 475544130 859165057 900872214 938067351 575895489 922862270 686744992 957365657 383227261 847234260 405154507 769099135 707757965 727676237 664802315 737093572 813464088 892698440 341977987 691459138 941721926 971411498 341738301 953571388 640544268 861739840 328722889 371008598 872704312 986272601 214043558 269203303 67446970 638557973 846373131 885363235 293919837 399438677 798969493 802742829 559982102 855082157 224890326 449510169 46807495 935396495 672728272 870032731 215849804 391907152 402294339 870363985 190369497 798006797 723191616 898875633 290635461 408602232 682784292 935822130 883761920 997636633 661530791 853774663 33530958 376392173 482362305 615760445 292979702 650066523 840309775 963374268 952628922 971047967 763527779 933228573 46688946 622711726 242862934 357592762 349349201 582323267 137426786 313307575 195922002 542841626 908811250 928519553 66785753 711451686 353606367 548418585 900601909 969343712 301088178 700403232 90948678 331469826 864617653 924750713 669426385 693843335 327358774 414356200 139683674 526056088 167046990 450563835 360148289 558501827 130182763 795079650 176279283 528371565 383014645 618753646 535184194 952393455 533366458 747655185 848543880 849360765 820463807 885046025 229842095 646384757 240994233 606521734 503219005 613820010 346614842 526775086 315182910 784675569 271218315 385942353 897240462 995072658 278240066 855167953 370067127 947776833 646075390 907872124 856200895 858469916 933403286 953867756 10176108 755099833 886514715 990863807 665579198 872384271 513432791 994218532 641077899 682645133 520166195 956086972 565351556 722736412 189758944 233677806 518795856 729922183 427518064 878165957 220224258 889824131 337742369 764175342 559044597 831338964 676517460 976255941 198677185 978676909 870583363 974391766 414298831 628240348 285993366 307886361 17047568 175325921 43459749 760897193 297203637 842409222 656116926 927644077 193515641 956206884 286894816 986810894 267276223 639603694 834853400 878529276 78739874 988149559 145341663 546338584 830292505 867244001 355305794 451385719 547274662 927485127 559983699 573903331 129393876 530821108 792723778 995583009 432348867 883759894 944674926 994697855 965326206 982396025 195754663 288999260 45553465 86801456 228993541 684270579 505649275 848534212 316545404 996333178 493595923 735639246 427908748 533300866 670328777 880849243 541120301 972688374 933971384 990161025 632400607 732667123 516483952 824970153 181170860 506371724 449873482 935901758 352794034 611534815 244232515 245576581 184574320 732130050 346707086 628974381 174751065 473090083 182753609 479424025 178844306 205844806 729282274 858299369 218097635 273251347 46512022 76290602 311054941 518842282 51376174 603517087 282408749 297582985 600760171 715041009 834358220 860759378 109880837 699810828 431034738 925234206 753584517 951477686 659422311 971558782 274464663 690422404 37590201 962925414 866515845 873299992 984619057 986771867 125064895 372326411 906904613 990037052 126091838 873230695 627186980 968812002 654196563 947757708 819598899 860806050 424687114 988181178 208876179 233598394 841040235 850917949 363091764 849175722 116044667 932378601 423022094 662816957 71860388 661336783 928192326 998739057 384411412 748226640 229456365 883526494 96177966 784478247 136061521 601056890 873390263 993713519 429831129 993412371 335369428 598971543 867950422 999140852 577564615 917262644 677062529 903951228 953103062 989639849 970413711 983200747 307950239 580582377 423931921 761393637 88899511 518172794 153380662 766907258 181264957 977031242 219654665 714040816 112584455 218134586 878810584 964281420 168904735 568431712 527096288 737859164 659968523 715422350 237221621 771240751 698689410 984574950 503467598 704357645 833307309 889893143 606649920 696028321 200839717 266704844 990431331 998712805 60793200 742224039 190596279 233634969 242991168 681012979 575435041 854104830 710025700 737439451 951462881 982716317 254819993 264086382 938741711 995734880 231775582 231869475 499776777 628695293 669774582 975448225 371846293 700185900 686782464 842803463 429252003 806187583 281945776 881187370 567159000 574664100 874885060 932675751 880513680 952904067 960715052 970541871 614914474 960511862 153086019 976518895 857528392 904851709 406721760 667603666 210331235 569376061 443586148 695278350 867326434 873988093 146454970 260145815 316898098 941585363 180510323 706889470 816913854 897963115 681408835 752098966 521353659 762138016 575920745 962166103 341207789 467558430 432593592 700689443 117851337 628078163 59444636 224924215 761978603 959917549 779359324 816127737 352183322 624949434 647258292 899187775 458833126 577394430 316139303 403387238 951319772 984880829 228536256 703077584 26113198 658883167 701196630 964147971 186357206 837528461 487282801 575260431 757537629 771174032 308666197 853042526 501900895 616016596 170399828 760500049 39354501 661246576 139883433 451155622 778505490 892373755 846149199 871939462 622728135 823984240 328228431 384557985 131068183 226551772 956319826 958126001 604979634 755714928 252321026 717272693 916844313 962160408 532458870 620038986 988952631 990702678 234066043 827663151 740212677 786325678 888161105 951252871 491974212 958533126 542576302 957444971 56348591 814693217 607675116 846805156 392872840 411687153 749894342 836485717 850912476 896179934 310941764 773137997 217480013 731106733 158938982 818580140 763762111 970413638 759064038 904360209 481110280 775713558 108889335 703472159 200673912 936473209 847033899 977542101 227237852 790795578 139265434 444359938 631382616 734439203 736443068 756654640 843755222 916500115 768865396 979540698 687276828 826569219 375600130 998429357 970914516 981758356 338675909 377720984 939067050 944005606 187279393 410748731 241346684 314737316 368914043 537906093 459613362 602191310 18891915 607882922 395569231 835723702 611271144 776353747 111497695 786724485 30837670 750277297 661888761 947216132 442751678 650423785 697707550 709621816 154216426 705003488 56195327 887657162 55920935 825979109 289105124 746706649 993881815 997891846 975358212 984209681 648451775 767464561 825562588 826621111 524997440 743560276 516409635 543481112 635822185 840850240 280473500 676472203 222105200 995991357 157984225 374993159 6880572 43016824 25146264 137614388 152482805 359584915 235059733 932222042 915083867 922471518 642443570 732208244 315932450 335076534 951615633 973513268 790870250 990125523 401845238 714445779 761224644 871260311 199960887 930189037 164848229 352089453 644377425 957965300 647741213 980918360 50727160 77206394 368780648 672299844 162564641 867458687 720028204 817391613 27538410 197520516 800173051 911663006 488449949 855446332 300111494 935392631 5920314 799640254 548485360 866096028 164300854 689026109 301277665 984450424 494550447 861431182 519176835 656816652 812832495 891162437 62205634 905299820 897816497 931180912 908223475 913376750 946349297 962387409 246951707 250221111 929355388 969179255 904958072 971012035 725174544 789419881 65722758 486494788 329628542 422552559 859332224 906906903 979133217 993327688 833404951 971997842 157728113 384613271 360811797 923620971 224925596 320134987 148513250 663841477 16940603 516267890 89895458 671427391 765088758 774226005 222817879 927108878 877298393 936087729 8711792 61935876 672612941 728701586 938676117 984040568 280567000 916248068 619281430 682598797 710904536 850313444 383434510 907433991 498275923 633339618 423890024 705064077 211266739 318520273 776603949 950877761 217373582 767675491 679449470 917916021 45283193 63234142 18983325 454002652 834046186 875971079 516063882 801962966 361777739 560873628 985447781 997900143 931177372 976068712 508856890 684016328 20098122 665345632 387792856 766984631 66943670 654064932 485639212 773784267 950096335 984233877 27793242 589958348 10571648 715972711 611258851 951169293 667489496 822867447 973614277 995598432 643481830 808949451 926472827 996892221 123442970 651951072 107283058 343775061 261979523 958391891 970276064 994468092 485553634 669787795 597256943 638900426 943202495 979559863 931451361 933742010 291229223 653948313 242086417 557560639 942773847 955385839 164440081 440701740 798274536 981571308 404470364 466185865 395860355 644973539 488348942 521391833 464245161 520754938 586469648 630728897 141940407 249962550 944374299 987883396 360623100 467549416 98569184 912109752 425629035 648119895 955092864 972192974 236779666 683681206 570080825 687119419 201220762 697379824 274986284 832854817 324228013 360576447 984353901 992044872 501543413 784092520 200320055 314142602 809612981 952395792 528614271 907217942 202214705 436423704 102694640 694641325 182162916 881451231 739216448 986096416 281305913 327183532 784230093 926294832 397857711 777305370 70132071 400837301 791040354 867576318 655268411 857377080 743222535 990093388 640535039 845759453 543257392 548508873 536192540 899954531 714604140 931098855 362476214 980989694 387147531 537675164 951831813 978241343 495294984 738335070 139261677 190769570 635448816 698431775 985668641 990013311 870110562 882204570 893913556 904187761 609173703 976017561 185599824 701769024 291976763 790195538 15903024 322839523 725404661 734142557 432260667 909448029 670537718 821283659 685779967 876800137 357744883 366485155 340286437 735268856 598234797 719207598 736157703 818642975 69165851 348931700 785731796 854490036 142486733 361747930 422282471 646779742 156620268 453830527 778187546 784198148 730513362 836511873 897691488 930304114 679213214 875420694 706183671 884929371 486383984 519622911 90362871 315181901 179753474 586550484 793149666 815333547 502039831 911343663 122746482 309799051 493833133 766338560 587806762 600700458 114895785 659411121 826021662 902941034 82090224 209445201 822448491 885910988 273087749 417571651 280468050 559402421 874210857 934902297 780422999 821648077 158729622 650121546 673086528 696191323 847145076 988369758 155358107 647634525 165867917 358076733 457287279 861041345 218289608 898682489 7020635 148554305 479120024 840149527 426110272 699010853 443552599 823130004 660907923 973529692 555231043 820751844 379941056 866386987 262063852 622715473 429225175 878175024 237545526 328749273 965076581 998495557 953074238 997357856 83376678 869386876 619410938 933952799 847870215 877050745 304622213 383248053 295885375 894395754 229576586 347610382 671075939 756120294 754143800 785415709 504123642 926024836 275195003 483648707 530445061 619092547 788762444 892472690 13223887 437302685 575766527 605935552 55625417 523655129 346378840 971244172 163015121 979806421 501476418 973853967 47141224 644564352 381248051 602098668 917154065 980606858 795204953 948588728 408495383 671643857 589882247 855597853 775320203 968642431 77234614 88567231 764874947 817485904 16444597 230918823 820150552 988842009 974694198 985017071 334080922 657526387 412948575 671513211 596711506 838167013 377149045 405456111 43728435 373282956 118072611 383408593 335091278 991663371 637062165 706794940 449663259 503628281 473301487 740459037 875929248 886984854 667231703 946877137 103927688 869557780 930886462 944494402 912479841 913083209 762103988 788299367 126581773 373842457 491311345 970267998 110833744 600312308 727472119 841594966 299820929 831673140 149498930 631859926 113368108 114995194 989359442 999263403 144263499 545445041 685031526 891674155 421029351 449009710 778813798 802881494 434567487 904542185 288916372 820802201 631370038 633380279 490763218 820885367 58730955 632181500 148149834 176229838 495519608 889014156 283280662 800921041 847606923 951862949 672050870 694661004 134129229 224532798 241047850 279046941 118437239 588584121 746378246 894637343 734491343 867222587 228580671 507152727 670606441 732956900 126515022 303857064 35569570 347400425 505307362 506540311 351790421 502491419 366271071 775601913 739706485 775247067 777147395 868556411 568809372 643593188 263662309 285840798 106572098 428527500 499729498 711035936 165850682 563611868 733277448 796695837 268571157 607256378 244754538 979454800 990909496 993499258 47898208 877320453 136781326 974818507 941490991 944722241 852789548 959122958 315404948 778883512 31506215 664749067 234446887 580939592 340844697 527068184 54806517 874972966 2805243 754803215 581940319 820670526 117474100 241293956 827702052 830724062 797838025 915970969 787043847 852722072 599571714 814019994 522809388 668376549 973254904 989416639 682067249 843135575 984526099 997947446 396293042 990383783 86234943 438189458 216499698 816915033 294648852 731574101 22979170 616703163 871884323 881313197 967688338 998051465 251627831 630756248 243596998 664714193 213408098 903173988 364825914 626426204 592291181 614584622 63595789 414003784 782301167 916767255 242251475 566907211 528991508 746676074 480565693 635885988 817441293 864338163 398036411 997644238 634444639 903685020 407953757 757839128 759885972 834101150 395225673 922840891 970562601 987118306 120747402 471181019 42758659 889466840 756104719 865340967 293999118 704432423 198190078 217607979 153632370 811053961 981443222 990658587 114066153 194178044 478346956 842373400 797013503 951838440 895902883 956909346 983597263 995720636 820748938 852993593 714996516 981297270 28801339 732011599 610790207 728594101 462770035 468915691 27095917 338685653 895844581 948154856 327895147 960577877 590619983 992958385 161592141 791164147 15545212 322818698 600424336 922043761 133107455 178535231 874380821 968208767 103685654 524023482 815226539 973748347 585985215 901236999 435383184 983464327 253710299 512272895 643097842 943869149 91274460 963391969 16501901 595937435 240623776 374031732 996593443 998147491 798718600 874354205 410274750 534442778 349082427 805214882 131330241 833688842 844632064 892092226 663747827 721058960 441324901 843133589 182706372 868889204 557594196 904397772 335023489 669646318 421875800 431651370 213275775 550236879 477846109 687772498 589728368 960728755 216405472 282369533 310632216 664444739 148440854 543965364 334189096 531066628 808729702 884137032 449344602 892862184 425952598 913354176 567874652 734703597 16572605 293765938 508783199 875513505 727270202 977131042 132279008 216700331 267693164 668491564 12715479 507539612 641224385 744839693 489516945 815994704 65345992 221201141 888326399 898264915 786934983 819825782 272840465 931967794 247405904 472745990 49948947 456209830 493827690 798045017 971275464 994800076 931291218 994313598 923112570 958115849 585232184 754978020 807020205 940253354 122423833 460964612 815943003 882555572 572861037 899151939 172213864 962998283 216823832 265717058 846620432 997913354 363329857 903584747 628955832 651102785 963201824 965147529 523572570 679017104 970916725 988050283 469422751 574857975 819438418 978320937 158595859 350886039 48767946 336328674 957734575 957958009 62554021 260229971 538044068 733959139 347652418 850171963 30395108 507968856 150388664 469408561 785982653 803542297 188309191 757600897 24464126 688911049 725422278 939013838 579396885 810318766 925910059 934225821 197672674 692650175 397679882 425302534 182539784 649080866 226600412 259174492 873681098 953023063 950201063 973576230 765793062 805819016 173921730 618805618 340688329 481725035 848806673 862814896 926134330 984308786 411997309 633477798 670678009 997980759 447069359 664939401 923834242 957677731 822557153 945553330 863506616 914229758 754040324 831076246 538579902 703044169 311964965 575352016 20588710 324552914 731678835 959785918 239872884 923262660 428308150 719262474 434817587 732672174 110196135 549294531 425338493 516679402 784693572 954027778 410717698 512492312 399273502 895718577 576555817 868319403 202840205 792072673 74280929 371472490 592156579 617024768 310091231 335762150 329859379 507534014 702209095 866346724 944157197 960594954 6480113 661156948 735573254 934922128 438748383 971195762 914879373 966998195 54670455 152461043 301541333 871061860 771646889 942052848 785415832 996182492 197148583 822767731 367420022 668705611 456043043 692740408 192063494 422213671 346235019 592746339 252830598 960975511 352160539 758958316 790229721 836297515 264543630 900806649 348905067 969762380 147415254 635735186 21608215 344536966 307267965 717735590 892077402 945625457 244949695 537842960 73026168 975467706 610004448 731696897 189312955 243425204 719732166 972333588 882156495 966085021 636271626 896533086 974364961 985511107 813023814 986076357 287296327 973417320 722605536 936660081 232132948 431743385 59435233 561207374 95374548 979760773 740889321 960459954 471381386 603285142 822276390 944407328 821078124 916044995 679688267 883820519 865808136 901763150 973376072 986217216 230461806 539920003 612322337 725505353 649380027 716414644 856681130 948315664 619452888 853340269 621768282 822795115 991981321 997956502 400116460 469874742 256568455 271159081 680163627 994776838 517531212 564202239 300867972 962084118 254927260 296361540 144563583 952472533 602532649 825999280 3052695 568765480 277849123 675210684 609871657 758148412 144266809 965871263 625588770 963856669 727257258 870093256 259023494 949834005 83044672 856323651 722828797 931820070 537203096 643481802 993196946 999304171 819179701 978710489 739422849 802643388 358145197 423156031 436708970 950431148 978586134 992211427 942680359 971048292 337981518 512860587 600139545 675865073 841581020 934328791 276051624 948198651 5050173 638469871 114520399 382146481 74218722 481374593 142198107 751789763 62033055 395188053 923884579 930088359 224880630 909953866 488128031 707825858 595444401 670197315 176328702 572880006 158473242 675125526 871989155 976718726 79904908 665044642 98002883 379872142 507826718 910108980 394251646 751334922 60916198 312376406 741176127 958327721 989478528 989902696 589619929 788699445 671766064 908760602 207748945 617383845 685020453 958560620 881102066 995539793 393631481 887522783 845748719 934524848 934704322 967316872 731898447 762880360 477322758 879868381 951320384 985427319 205221247 712096815 989574773 998652008 8016267 888109350 825155488 961133732 390353182 609505839 194709345 761871717 635972265 938474831 868805535 874537617 736493575 941176729 864067147 947488763 701378667 865164637 273682654 983569906 601971274 688941878 797314601 956816328 268009227 513259123 766567673 882849957 751404264 788905747 730760292 940977145 475923007 484164441 86349666 111502852 55063990 533656377 71663274 619192451 680307161 892852599 218581138 690265964 395353247 972713212 570804 331447811 359313908 434999149 758205160 829381661 392089704 691296349 397151235 535498900 148621719 196749551 677272142 724052082 392991964 445585593 565070819 571747894 40262309 965036695 457413975 944593243 561106016 983316647 170955687 847702791 306077459 556603385 735080374 826537562 549288196 840276444 46217156 733924232 151385039 865381785 968788259 993581635 344506412 963530456 588843250 816128915 433387936 910193272 183979289 888163489 300976454 518985907 955204754 988021006 428111263 900498775 521893223 584837528 682086060 805028847 809740337 939864188 701216951 841934400 322955346 768713384 814947853 929179718 818174494 941650677 531809053 672566950 755000870 961279454 662197023 791833853 171194802 642407057 330159578 574038099 637090840 713341230 604864571 845590887 161507076 705639599 212670034 563963164 535488805 732733933 279188197 786823285 831493463 987000464 541833581 768528916 188874270 453322594 41165418 288442300 167614794 537392763 805908318 902873865 810104326 866526388 947295100 989958817 169963791 697020906 404250594 642532909 14740653 678694408 310154460 559525298 839926978 919435070 870536998 897527169 491056657 498929059 461603918 778910980 426484358 465297420 403904685 867566240 396314215 663056477 720124489 805238419 282337339 831810874 610996695 924069979 346108347 592969926 425564673 565626968 50295743 611981908 288342882 906199763 140208245 461425062 709412263 778503066 392107700 636988358 252427779 706373440 446655958 672432659 819687310 940557004 398032852 898087735 62518050 514911765 615334149 651170507 204337332 696927087 98570349 524814610 459926696 862793571 897000351 994312296 972537503 977525328 47811075 92077786 150346355 206853087 804766245 980851895 625557683 720395752 817137484 839723556 178812323 364434085 764929695 946380688 353460113 547396171 144120208 183653061 677444459 916885645 167768148 461185839 84879367 536699386 562056852 698971285 971770808 999161884 228146779 526380422 560211018 937475971 300627116 356575144 135324528 386216503 185476651 503493392 485301081 635477226 102115086 357934345 557767589 715124998 910731246 922225195 335099429 442376701 647019474 697976860 956717146 998149695 271262801 470858671 487593027 696283226 735043748 837794837 855238415 861860465 523040418 697799161 12676383 347174642 653852721 745872944 12448547 831551023 947183169 991818127 547210505 588142364 910388146 947483873 934569848 960644278 319975773 842608063 683654396 750789298 285414614 939276599 767851910 828181184 866923325 990865576 670196356 993896788 596856942 701275024 402904330 430191071 289918336 812855546 353103619 503656971 716463608 964168279 56648754 998713293 242677335 386190588 965912652 975674983 825691674 964207333 289799734 870918924 919465543 962432523 122660873 977936879 869355571 884559305 499501298 992895040 670377968 848776309 469005024 628056987 400781725 919210714 962057153 963195274 715449291 724441664 728073830 798364593 581054680 807277718 640999618 916084584 319984120 596001723 712808487 903146163 283796791 495468061 938372853 987980770 116277479 970618306 141156991 874682125 460523502 496861877 160273912 897549552 754342330 983864633 232654790 747872793 910702167 965712546 826280423 877926567 266825565 438559055 997484881 998253195 215267402 935436339 649385418 846028347 727591671 950312153 971715408 980978606 978175334 991338606 199447272 598402710 655454605 886584685 108013620 352066269 384408282 403358065 892407241 906606182 408028168 876304236 946054529 971444418 332809412 388534278 342433933 890926989 517553791 641652346 518167612 551045818 564986508 875312171 495970253 538377338 51302075 888073640 616573457 636451470 362108040 569461813 99324280 408217937 163715556 510736671 39726223 398984255 131798313 422988853 122357417 163945346 496203200 505747325 79256077 245647207 451166619 783407905 637379441 663888121 558172212 702872336 110078044 872917504 930032326 968863655 777048463 887510973 971088371 994085628 262107318 583180824 969478061 981332454 299257380 976458698 137651268 806483224 230064994 803119129 426300682 890408363 402213995 900621508 721447535 969776113 18825578 697462234 15559878 511103596 365400987 488493334 669907883 700730823 935769946 986546001 387060465 844170805 399573018 665061987 767796563 815057993 453560139 464227481 524879786 633274878 238908670 241907890 747280838 821726237 909541211 992053434 968168008 975862924 740289158 987333120 563717770 805930853 18497411 118394216 403876883 830407140 32375360 483885290 230626 458839566 772798447 889818618 791660627 821491177 652827834 713844397 875213324 882517178 933331308 950509111 150299188 887394933 521929613 531887972 597188713 796819566 3805365 187428856 2131261 86831922 332479312 532978358 152420400 333766248 9580790 894859454 242526010 783678704 514616310 894605041 320971196 666794832 714626108 907471904 386264645 672000517 319952132 845306004 352289793 906952351 465963528 555131392 53495066 163495707 995301878 997034848 610974426 736269434 171931313 917803078 377443401 975425323 333025827 521208445 209781421 291447069 175928385 239660036 559387374 674637290 971338823 975660307 485667148 736979769 73001339 282093424 842202973 968477472 186832130 487022046 743040032 820342318 156630756 672997807 565780998 956722112 336800946 578275001 807347995 816554810 53772450 306165549 743249640 899211249 805550002 833511058 169282062 590998778 729375605 840988697 39284603 897499984 490262441 617041244 320826410 776245800 18653250 349132187 25937713 385768192 324899203 471253956 322063640 821642580 240571923 630091288 207385124 987822961 585264625 783815208 4383935 881457112 403944116 599566133 669548402 963446345 546934965 894018320 952724196 984988655 816013731 906479606 118756796 441329134 303355557 573273541 19558139 797762181 144763683 962910557 1923617 512830606 115820710 991992707 52815960 556995714 10538782 722157558 249296832 403333887 25861674 939748202 964323341 989212807 784806626 918366300 128622986 957213130 898784963 996983329 406521072 430951819 170560857 945900672 548527212 812056579 129398392 326979595 619927977 997811334 854825846 890300819 331865160 620291401 494243955 754723618 65106102 767568873 365377112 801054693 140669752 848138774 911146865 990654810 912141092 947724044 872551910 923909805 253722312 822004733 267847895 834631139 862852223 921718284 24680675 141612871 347434760 644622463 221713472 571753854 534743535 822526174 545478932 601614068 908618750 931122773 311128844 519850126 103136890 697196978 932676768 952613994 907217653 945031814 402959532 659393808 555435605 822165377 687324749 756982138 255536365 730478100 931652190 954443741 184987116 434235802 418800078 454725257 13267839 586966675 184165551 575085186 168214748 728716208 956816382 993398486 559876201 883832877 767234015 778988112 85994109 651028052 79450992 430879506 564121676 603563124 317548250 821583962 459063189 920789930 273819116 796845126 219300169 395577566 359773145 637657339 710950974 766932295 394721862 686952605 220897266 349767367 460214785 506505516 925516626 954840662 994265151 995458912 663973534 772076659 858201616 902413624 400868697 408263139 513267130 809344370 967929469 992696106 778617200 889689245 371360848 914577197 768100845 844977841 75143995 997959317 684796012 981111941 304545570 899372593 795104333 897917965 554800940 689224830 937148403 958287093 321793280 616321415 413795983 458777749 931969519 937432906 906048793 949218899 425063807 726247058 267056880 496700533 374507594 449576776 466632177 766130422 621891405 916310141 732801980 960331293 129323080 531382176 313846074 409273028 235151757 269769574 894507451 931907055 927783699 978550295 313784111 504515292 766710180 892535116 901508558 908028301 651784770 913132394 646587288 916684599 726358116 837116347 263065935 709475891 465098522 822135465 78739349 978297642 821385908 938676707 768260279 929705740 220437299 784136855 737631479 809804393 711137902 917805360 847242849 956157750 915051651 993540770 714118564 939037604 292694571 700599285 771101120 846538288 396670869 616348946 746147244 926900071 912494633 946622821 234167863 367431654 989225224 995082602 232799207 610214930 715148492 775495134 394799335 415230265 693616679 891896075 681143213 753622147 305968937 786642933 116136056 661833132 477756345 482018356 71777914 591533141 740794138 764250021 235971880 830495825 650771493 832281253 5311389 631070571 505575445 972524377 668880652 674008909 258856545 929782432 521311273 553377523 806058701 819003340 340402842 369536652 119801530 831938298 419943868 646386078 282113561 843500451 346646316 378821742 169946406 234034250 52883034 735125663 12781648 478970233 511573305 620561988 89945368 490248131 51915715 283573628 20223367 732811817 1415794 803499549 116321331 653753451 743986860 947086329 823440265 824990183 212754207 756084399 700119126 830966842 625975197 910285371 932627479 988624675 9699308 971927288 198360475 503645825 705812707 907054782 152486727 687212975 723003932 748947243 27967866 891741767 190684536 494937082 212481203 905190672 248115840 884688856 234515376 751513996 610593023 820747416 777274177 950242694 399629641 574190176 285006919 800931279 717333017 819202928 168743676 701982083 594025342 775414211 819665677 980597967 34355246 683252664 532091887 690242281 908047264 927550768 442032879 927912344 128296101 411025208 877540292 929019884 812866434 867301696 706209187 956466955 429157645 440373170 329401195 459141957 954802566 960649211 283942952 531729466 98056490 290002260 587008024 771455896 291435629 707558692 549961469 898414458 678941813 873934402 557947003 659149803 663858968 754175315 411731686 886849246 560366134 955033293 860448169 864715637 556223502 599165381 296814684 353078145 146082443 993224606 363588605 891152294 14451410 377741080 132081664 250125911 273162922 705586774 987345208 993431859 945583815 956536543 572929498 719057085 246052641 989816005 543516795 863817923 220604734 273614296 454174918 850488302 621180745 945699798 50557000 780101406 474690590 511854402 766593898 874348146 682391266 817784183 476117267 769776078 268499555 297575683 508015123 714019525 143949845 869844317 692106125 781501953 790855649 864963079 28934472 553639675 440370486 865291419 201853388 651114028 889640276 920880521 588470990 804305894 663821842 688861521 421879161 910433972 864917673 903771914 554553797 983870724 521363907 620630217 645157312 815170211 554652632 703114570 421324935 584734203 49949507 98634337 809887568 886132525 417394740 641956500 142804925 448424908 859105601 974822247 252324346 754205307 785009663 977926885 96771435 149521404 455066210 516998316 428183705 738970309 953725097 967578250 811340704 818133114 183380887 750744511 285589801 568242948 12075864 29444122 269701281 502450526 94521927 728726310 847204792 847960503 559262752 961464609 959796298 988510951 691060478 764402435 777648630 859574537 590086267 958179151 393659779 753369096 300543839 990812035 77914796 802140668 368578445 514048423 466342396 903498872 647952907 758192847 660380445 806588442 611419562 723191174 450303658 585224177 381283610 813896352 645184194 911436277 140230953 502561854 254690787 328813326 804101923 851689467 131493882 814822360 655750701 972150229 487666141 946564877 603961395 735527281 109372062 573100322 938276462 939429502 649149758 670566813 956022885 964729651 824138209 922304878 813367981 886602571 527869648 919732387 452921709 969952302 926827590 976790357 207539950 978180046 237191476 776653660 970475806 978848877 821019973 824622035 264493039 907857312 35939954 515570935 204142869 767907859 175326953 728527504 96673666 476109325 195885211 555805713 402931924 679927851 226713078 480225118 995986407 998207458 852757339 901722590 213928699 361925138 919397339 986906716 646251647 761205333 814594929 994453361 285211279 979976713 719774883 838470665 570913821 661421527 829920102 921360653 260441865 580071037 224147021 383715513 850213667 936167394 582669663 733344701 367555031 494334808 312714392 434970888 413638547 598775212 840262498 900603778 427094336 542259209 68191173 478924611 239392490 288380372 269760032 780725356 675314536 758154302 411181153 837937445 491613710 782825608 502745231 928874440 975361523 989458446 287818288 623565357 922268901 948785381 803389957 855346638 665645914 763642491 554153720 642061847 259125775 588207039 478806149 816148347 882591351 916038914 176826713 181663568 901847317 984153322 749705883 806912184 978737467 986430274 149066771 393393598 567204341 611768952 673953156 883404729 287093038 315989167 186480076 990264665 861843132 895920848 889426596 922501516 869787152 911471177 547836120 995256419 347248585 786402255 865279593 889473480 565769720 932376375 287378346 738778814 914953401 964962544 443863288 908388524 886414549 942652204 896117119 953484545 580470010 777331105 308955866 725214014 485811002 636799771 149032221 444720555 425352932 534898816 676293550 706457456 827853084 900270729 754911309 990606119 843600904 921560772 928312202 969473408 602065334 701723654 135962425 862017122 752071343 936447889 438347938 856871569 603367598 674453373 745418785 876737339 417066725 449131728 283673494 968949659 301704300 638035287 836440998 939963670 853236242 915203597 222428161 896329926 61375313 663299733 362290114 549018992 619826230 986087619 362869501 647780712 860521955 920244517 729584958 878992128 676819140 860230911 124123439 431672426 185497668 475674193 216270694 938371736 180746274 682725027 713248133 830760139 577505960 975661893 782039668 786042239 9335616 44367187 201800840 905001119 749891777 899150051 689617750 830712994 183074497 888188292 711694459 782896937 962878094 981886424 67905840 116210850 668748836 910790168 826590220 933033394 527716297 894716210 712504646 727537236 705001063 743782986 74907450 237591370 981739240 982093933 946548268 955892667 824277960 998167014 911238654 958469652 470630336 479688699 696815817 721154382 301591592 443268365 650259845 819445956 767659837 789143252 753666282 803782493 917739137 925535201 655337604 970386091 558033024 928051574 289780220 365961326 278004165 391467533 924165137 961349719 486050625 923973812 145659074 242762625 5892214 405270885 981727608 998448695 380469165 516896115 2446793 931795370 913328644 940775104 780937643 922537634 990011269 997576979 925891068 930708168 443918285 941261569 570456620 674656255 509075884 973090385 331646610 852205355 459362902 933145999 384594222 614105808 58784086 757155340 789330243 924346942 763175417 850361075 483566793 578838322 910149468 924563631 394950593 616921969 985517625 993352600 813976439 816571869 196815348 488097477 858077297 933096057 553501299 631244916 267732534 968437210 278252927 673573483 760394877 841901301 836820753 849484053 32694412 510066210 400161233 539847587 366429912 492571720 815524902 816875566 117475810 782019347 377432020 829267430 970944644 998264609 520493933 742260776 506194787 856875483 463587023 730006219 306523521 413589095 11473825 567183847 336782115 434027985 303035117 627492406 736086724 980264678 500742441 667911728 272040897 578656955 365086526 755068229 11970262 550756690 200936653 651420373 906713887 963021204 249970286 403205269 879087478 910303745 70952338 76852652 957828906 991049223 481147587 589888853 904438722 931773950 760931001 784636111 531930497 545184203 208946936 692024589 188087138 521050702 777721396 922175977 681845567 691578762 623186687 685101364 631848322 925917643 914505253 922337170 9043559 910273191 579173868 623138233 900029037 919821767 916918057 922989399 917689812 975454319 25161501 130687295 996704683 997420044 486404355 965648470 513998320 606536452 85561801 796171993 945109020 957338167 57092287 909636991 759655659 768718154 98645513 959191825 18564060 629452292 313929602 607482784 901611687 972965677 222804435 588033355 103611393 440351635 185446402 550278979 645381204 877927094 857228117 859630579 415266741 942299116 560891805 782740448 632143425 778036663 704126708 920810082 624855972 871096316 152610978 747774760 985770803 992263758 953050716 990077099 703395050 790708847 957635943 978221976 624010157 683278124 312852495 997501430 782834796 787490896 822145385 826751496 274501562 628667141 878856310 984169695 636135992 811267000 808833652 907722306 28268504 421721744 745318430 899452915 766253821 978220310 414424534 984545224 195004728 832020676 736913639 869020691 687434930 812036811 694907744 787380605 13495020 342279423 381822063 669070124 313437550 376670798 460073795 664101632 824379898 879741188 172719485 794141849 518762013 681782762 628478122 652332756 808269778 942363235 879099688 983057026 333670227 553460188 557171089 790324656 210637317 395490943 876066339 946635462 460665948 801733349 768259254 909758843 930129417 990909194 85702543 840558070 975717417 975822731 422587518 803001949 16147362 498580474 975303339 995102701 950825189 984934960 333795667 527910032 77480381 172269817 81383140 462879061 637957317 887318945 788520780 866143699 199399322 397175012 194085043 552935731 757323405 992713979 261217517 577596015 795904146 965302318 662750003 906149494 339074260 752763832 98266214 929411068 140369837 640309495 768347207 964977423 340168002 948837175 501249222 734897314 3940803 899197048 946709786 954201371 744792143 924687009 502681046 550133605 936877857 986392072 562381897 980702626 856350519 928880250 720755308 944252030 531120988 582034054 424361865 511097953 126226230 362904537 883672181 959864701 906445660 967272948 656600569 850329303 833309852 935270927 723705556 962112844 617856729 892425966 357160268 577270772 653632053 995375273 658575635 995351722 247866414 787813490 165442230 327353260 331736908 737596705 394245779 656304830 476968848 597717404 530041151 586796217 289539517 991098556 301284776 568755651 308739760 390399387 153259188 816148987 529208530 563541175 236941931 378618206 69988461 731530288 563484954 727029993 276870560 820563453 342981737 835944511 552896633 592825565 261625206 849526419 185856908 619865074 651144613 855708508 10900807 248792636 901840294 981396297 368002594 824608164 631958985 747566047 373850758 850897639 482685645 788982269 954457926 989905361 368706468 874933345 781670077 954870425 984171935 998145114 543990633 608047087 181258977 683274592 154253411 943766271 500718470 767199760 843936531 963596468 958528032 983026445 538573269 920853928 912003399 983539673 639342245 863250853 987940840 998363119 365486689 421472639 971523090 993351952 236476735 904436883 386365413 779278309 54179457 910514994 605021260 896740337 407872895 926294282 541359401 712848250 746650358 864444742 674187502 740566558 772884972 847695411 197605557 804650630 493725211 945614131 428647322 737493119 525694755 600650169 507684595 635321824 645899323 672127952 570203407 946043723 963850169 968505549 144261645 221849441 640713902 658937980 572204258 935338094 135416426 155561221 551593570 684318317 820982821 833381935 904521365 969365943 66308841 615567573 486219505 598505024 615248267 671461013 857319251 976381726 203090887 247961607 750068950 756184308 164264356 677452883 384379787 601623376 161219297 791149430 614212591 891503296 760666129 797547465 681990193 970721454 126512192 558285174 168084935 276318971 4035512 709399331 647667816 967027825 214115078 773719470 756467355 868555873 800120402 943720948 666199668 687713447 909868376 991054592 129234845 565818174 993515019 993697603 956891788 981426555 41278632 791349444 843314995 862965958 147632751 657589687 286419573 381806122 615684135 975062561 795530121 839985289 278243990 964214268 433228497 918712846 839347326 845613405 211063665 601518212 166918694 512861898 345015471 565140023 551499716 706911105 362230651 772120060 3287261 54719433 736338915 833178343 99963094 771271669 827498010 989756516 753772596 988594092 225875947 389685645 577079902 941417737 414159267 912132904 745766920 847526145 876697390 981528399 449808358 798594236 629461851 639930262 250472725 608874359 253121086 936325827 270511719 371500592 324605162 911099212 951862928 971448858 203330741 266595730 984496825 987455508 916459373 943270188 273654171 278374430 717144035 754944401 547610280 749173008 768915872 789227512 792504671 830603283 608809065 715310009 81708881 216494926 98351425 353409414 434947892 627176977 13791005 261932694 29347183 424354259 145560805 669019742 107466433 766861783 171689009 700764847 661323197 674141962 497044265 702325704 896302161 947815894 891192319 974865711 300312436 367123992 325892497 838793670 442797078 937692625 666104327 904709622 188872004 977640880 840945787 999014756 649370410 914328105 250329592 377221402 691864766 774611356 110922685 259184982 576254253 796747429 416856506 808886306 854033327 995058261 100024484 601473958 853169021 865225131 99500421 206021922 570960739 833600475 403283144 612621451 688898077 769430823 38798230 681829088 180815596 211673756 265820922 877816490 580076302 898639023 35260885 299069162 347850048 901594262 75014793 639252907 373367227 854572963 647192544 692700808 418928401 807610812 482835694 796129618 813648204 974959060 788429247 874334790 587855605 686280598 310034336 884725975 17637592 573679243 399517953 965665991 589551350 793303480 556031371 573681045 518982608 524142105 649722860 990917440 314150652 588706618 532756098 947166144 922604983 968317012 229817115 925461780 664035544 850087846 480224356 802482212 885610043 942593684 924836457 984548757 410430262 787091390 815329652 856783595 356184811 965556557 252209252 418934638 529325550 663357842 501246059 871926546 542208116 835980366 495390292 718542006 263303810 320955969 592270966 997002267 893519108 988137890 450058825 485626312 585886532 643133689 369634347 710332992 550571730 776652381 532153409 679570869 563876042 802753901 412397200 451558007 692809647 926806844 600100219 602818005 345372118 754880009 89235629 496640634 104440283 141436065 798272054 962736468 613319163 730246289 913086082 938326208 623078040 632487983 337625743 697657923 818808445 844529042 910352974 967715281 744218678 863725419 479882293 947931680 438812594 926135753 929397693 939994908 109572325 845712586 446536303 668852380 499572817 797558542 448701832 685819285 233573275 497826399 590457226 901784559 797457209 840264092 600119660 951844124 90988969 564396177 665875034 983269360 897019918 936511352 583366345 612313731 889492908 952870762 720244595 971221479 137453636 562844285 822666202 925717709 242682125 995935615 498994918 835912610 601936176 682541235 57815359 501667268 376705407 606322920 246177377 821523504 872926421 910944069 213762627 739766180 893454273 970882827 123418722 506274070 995918508 997269306 738006673 987736862 332907101 484846516 578908488 847905275 162252905 639357013 595619529 941523231 305127134 862920858 688382175 877069134 506503713 838762322 168274805 477318992 580246631 656751500 946315620 963031212 870536136 915627443 754376082 951908486 431805850 801592754 619651315 696012848 97779599 536366894 58233821 162573573 358484264 732346402 440888899 451232285 618844234 992138152 980427018 988032323 638765666 673590459 915207449 997094533 118926591 599916590 717733467 965525991 143395692 864242140 158142547 981395646 948076242 997232056 575355171 889854069 91606011 766100222 606874775 815200553 923724571 960264966 96541865 953619122 955862929 966907796 488920138 740060343 304709692 992909406 293111916 895624508 753921296 850605777 913026477 957088101 135956553 754552075 929279990 930000909 14254620 957147418 559715245 718700874 20966425 876740167 79039747 520282917 318524208 484225808 148222148 438168548 622315003 663063923 893081217 930847621 466344058 558377964 388073641 809031871 140868341 707182977 688760893 705637563 589719813 895200084 289297660 665015008 333786264 566164405 556903272 942753256 540210000 622600760 688349262 890856926 33664866 354841393 481430120 802005346 730842997 756544487 162048098 274145053 658675540 716341816 929330239 951174286 301528778 795427222 385560619 816481425 196161740 970040619 600312608 713331211 53325184 572347578 524361438 548207176 153535644 273802060 983444835 990026007 641484150 758778080 730738300 826667443 684042215 746162399 244088406 932010092 439358067 867894372 857283829 900765985 808841320 913392443 193979949 560770170 708694652 719204856 232338981 494041420 425277252 494907108 253070562 462576583 919261979 937452873 643739521 994242249 393893178 506214320 327257458 511676169 293408379 547537195 979047783 979336904 539517918 791103494 393929788 907674248 779803195 859930336 79177908 136692973 988819619 990310028 948491030 971967068 344918738 505052108 573608543 870513746 260187853 792910770 152204197 398739085 608792982 850970847 622311203 886181187 92894351 426931901 273568489 506375691 708347507 724646518 724444199 927013105 602543605 909254617 806935045 953120924 988169225 996135586 199907291 439454492 28143764 839157932 965517789 990309018 616999363 639740997 160306461 578852345 654072109 779308186 882441305 883532642 181458521 737492027 432294029 663519731 486523694 684891371 551134205 729410427 686660703 946006792 898550379 979428419 572484594 697762080 170320055 200321389 754249871 986832607 917418961 947377767 473260877 532551173 815950664 977995378 206569543 369598142 742958310 987299622 8346517 241648005 754714310 782941342 326412988 337254902 513615632 767596656 937735464 960642460 381151361 553034768 820832668 932658386 715044753 880576816 204783076 264079412 996931548 998698694 667183262 782023038 27601094 271146481 208282540 318874882 868023856 904980917 273447341 908219633 745994373 934737105 626705341 676362813 296477423 826989749 591648347 874862467 853230466 977859141 323354185 992910700 692805695 909688491 172415612 357166549 899024355 936739454 492486357 603260898 505829921 877942785 430717906 604237581 633599981 813151293 737574667 757896711 369770199 688175989 857523998 926365097 27709150 796623770 295717221 926128849 785986061 813233149 875333579 939735545 705520445 947710000 523560407 833883931 335067040 889927225 520932205 651814789 714653276 809004522 487732933 607108128 909422357 958297661 495251912 620620603 203442507 702619794 546010659 771240361 448514921 582397895 291582233 900963709 214736202 597885004 758548010 950134629 639526783 836970038 61703922 507147349 76175025 277337703 683183179 853298874 520828952 678204678 792212584 891461117 687532027 736163827 28142550 96988586 425812572 610024296 258240879 452510788 795197207 965907721 784187295 789129384 198429028 442089942 807179930 821724822 128181114 300017288 389550470 788542870 590141050 970660557 597769858 723691650 900741763 921352399 290171066 636294645 4157764 971881563 65821117 850495718 645298826 694895381 777155139 829238493 536566586 622535384 129495108 444212686 138330067 291604437 520612107 998094894 508976156 869646630 807576605 936782527 979866230 993779384 804785504 963876623 158444311 636425043 483492185 531814935 629366655 706312266 715343069 948833811 478614866 776052197 632318779 921274692 545092362 959137542 447585475 652406800 809645187 940648582 31623955 179530021 975947162 976657039 498055905 775572590 863808083 975869587 665109025 683947565 351782860 667582175 770477 712460998 2443929 269475466 729073777 899045710 903246045 978303402 114164042 743064803 205824412 478623162 455470238 526325990 606816390 937280006 9968931 521989274 247770641 637404805 300290523 682100046 814078568 820167202 291940052 953953169 969013367 992208757 930080713 978249691 285934993 472405310 611149714 787377131 314771571 872841791 556248359 797803336 648337634 947942274 891189047 935192727 840430937 873139244 889512172 948880834 351422138 487870620 307639695 577111599 123243348 678519567 424839538 723092089 294133529 610565586 244247078 494039954 930189134 957366043 258072599 716396595 687481988 972312732 434773985 683696764 624575369 687209182 695497506 908249739 578491822 799710616 532004871 655855304 851763768 923308451 752923406 865926691 544428663 848344774 72760183 898249458 300804672 846461766 536568611 810505336 43348462 670982601 290611110 915556271 912164271 990589292 587470294 665267392 708304082 916297148 500834673 677830396 256964348 476576279 440753668 451936872 397479794 885336169 98854162 764843763 14994309 820285827 313192483 527582064 118439702 249335475 836120583 938960948 396956965 813022874 192691108 509164301 301743325 480241064 666939762 773343090 821552683 849000232 240496642 997596095 243204578 850652155 137829035 349953625 242139674 455602677 189650480 781974809 115573229 442076277 70429408 269871559 911727184 995221415 532429918 855679066 115315063 670655612 218505723 397720434 480714633 491232059 305955916 919319896 705015903 868349153 39745982 981299281 938974365 959021317 659280716 796164865 290330683 598204289 699870022 906835232 106936010 708801945 821781517 852078341 567668583 805788176 853813060 865878736 155820038 466716750 346117213 693480294 405644348 480236617 49211210 914845540 962109428 977101835 324162570 375382570 960934729 970455637 569319614 982838619 341833176 631872952 355799084 827040208 302691319 837037675 204448379 901051924 355289278 834758778 442881587 459507898 127725842 628964242 385841635 901264472 526425347 592382001 923431863 942584294 373400285 664808636 890602289 932567932 415871760 671309588 26200835 147194303 829441269 975896616 754014487 992338176 319520461 373595202 36319648 149730001 25472441 813986304 398663700 677072218 342808466 384047391 476012544 652748394 761444375 970687439 433289762 840831927 158947352 602114287 665274149 714438571 394129724 693337623 39676280 660187589 874547936 875229598 25997842 120059241 914731873 920056021 640516710 771876072 258509607 605863386 543954683 976947070 434331373 839806766 281866529 677332440 354453683 524269706 811934075 825255175 30272428 790713466 235664575 311460502 269206908 612627174 18102500 401903575 827810339 879316402 206862117 866137973 844281947 885053938 112798256 720582232 993594677 994123482 373430816 726080336 455620375 491701531 696809292 870708978 92389559 746219468 668693244 713978652 64822513 845938758 469033523 799917742 467152652 587501901 676030576 678584986 190684355 746176296 739429790 967475007 827982349 972480836 696654765 962785014 726778137 818551940 834309359 983183105 975230104 992598490 131457350 890666803 781540942 883198692 124298904 763349688 828366704 957044932 30764586 778296735 359878231 523307807 900327574 976524771 1876950 3655617 506985302 858112463 108923341 357523492 351137114 410937438 212159230 969801629 832157494 884105140 898836293 993043219 642603572 864090108 882486148 965772889 526242012 568103844 36391163 676433696 979673348 979842261 23153919 693214303 128690599 571406081 2835195 963098813 662656298 676312810 735290866 959674827 618180315 700731574 266837842 322062951 146749131 949942724 475581579 847080886 362731507 845756409 541280616 762973473 589591426 728530930 793392231 875327230 38567881 932189349 813185734 971732480 635544305 640096346 164644773 293256294 892440522 971472674 864169825 927172558 501308297 819699165 710071624 867072463 386896081 526978726 830489505 931199389 907156216 996565396 694093004 927271213 140337982 560314653 298948581 450575985 700875410 850279935 580774745 970439145 546719705 667962123 26239732 250378563 923084719 960304604 865647407 927619522 133344900 361623233 189854094 383904381 111482304 404905682 161668973 556366562 118318853 851634770 365789560 483923819 981396838 996680332 894609484 936108611 826244615 956496300 749775353 777485334 591085563 812687521 593411097 994085859 596929789 734530438 121902618 209377994 517604684 650942668 980546166 994138996 197875671 683508828 27499324 708632530 111480279 415747843 12847102 410383724 793449117 990747047 288536405 566983713 98402458 771507512 549066735 900549047 84561253 251824767 883520601 985353017 985314958 991202121 5517417 90437855 334320121 974497065 427380953 842340585 475243710 679228303 461409558 827827770 395944211 713979501 556688819 997111233 512755375 991748991 406220063 879036904 504994585 858136259 679020038 813789882 874003024 924153472 378684364 964318768 187149501 643266196 520470127 559591618 963497821 975435744 758591897 875524843 344787453 665043962 994979251 999236761 101994144 292684585 960087665 968071800 172639684 279352253 951641715 991976390 385671889 652183102 331711482 555038558 347676699 696577799 15726759 967749506 463777507 885135157 708494852 811305281 262530821 995294303 181014383 867929636 963224136 988735788 692248063 761122104 51622769 384514559 677607798 805890004 331232195 596945882 52110439 612898758 875913289 894487055 311359353 551862213 267640313 572635984 131798142 767899703 615437782 854832939 915683759 975869087 910741823 979092613 5534261 886306944 486869302 942367786 867262067 900536584 43654832 990744388 4689542 428802597 172831889 480967994 962018938 964195065 751996729 753298557 62471553 93026080 266702105 826406868 44043109 57621466 278189479 941894644 146750722 437466985 600770583 680860206 807917040 851899463 474795917 947069125 537776716 874310145 294434360 943523399 258955162 407795472 124970446 518880463 53236994 958378054 69248098 798808386 680075308 852056270 924256204 936483899 384825328 412448797 435832750 464560559 997238599 997300811 815007956 994418020 946184235 961218337 172753745 902382797 809031333 821825001 621965089 625900319 529506571 810654091 426816889 435334741 140486614 482831863 822999236 833970553 593302592 940167386 374683825 496912599 570658846 991411244 841033079 866369932 258440885 329422590 386572639 730548897 320483358 881133336 212869378 950720471 867678174 995914131 735898100 855978215 944521205 962802482 791009550 974689042 839775061 936212259 133696698 200693916 672258940 868883944 275243527 680135899 173298539 458057879 742641951 803078906 871371814 920772514 208938593 849168213 616516345 820992929 189253255 415717310 23793018 53550986 189000550 304609929 246535534 413030734 697414026 796386817 286646531 795960992 748091130 886867781 593106753 788560477 425845119 530259523 921723016 946409476 981690476 994711517 871628453 996773675 345391332 768525692 184809857 430110793 524282755 531418116 421846501 758089408 348812510 478951321 488016027 658838822 421229416 634670725 450085811 942211638 738866275 784165666 417088317 939074467 493617880 617596353 58524698 322620360 838853995 969499368 176961380 961422146 172516962 894727356 159162812 653733538 594817850 624359482 350776212 835450675 292297063 643308532 981259200 988241720 855407140 888846262 645426185 850758810 912063364 955466528 383670870 968185938 450131357 855092347 886700258 887002587 486495430 745130104 843159953 970839185 306553935 599985346 47547097 682628985 736368577 858844238 322751617 566007162 607251098 827630434 915936463 983856534 326484684 672485046 371398320 529341256 992830652 999242748 851052654 930976725 629074244 852015686 563676575 658879222 881779239 971927122 531820253 768629021 19577121 672269777 103958529 822229808 47681710 551535298 439434718 889713247 712327394 735282178 494027936 864153070 662640819 864440777 274095079 717769577 590634351 788093261 962102170 962215900 876100665 897012229 783540250 958196810 335239047 521072976 325427875 955423958 669307551 727122705 126538157 968844338 439993547 848731659 953635024 981269091 468357278 850976677 812636666 937233982 480617773 674999342 687949936 931833842 837166066 984585502 417633497 459143391 203848411 408461257 830464369 962621509 781016052 793113871 843271870 934947822 924145251 966457140 904212608 920407480 188619861 192035036 166964040 461042549 839598562 893290020 605981842 606074244 821747957 992731899 884789521 929013408 956586578 968398557 144079155 975383845 312948856 764833318 725647698 872887247 798386329 902751402 857006755 952097348 645360295 712850926 285926690 674065756 451362176 461773595 914156166 997751420 276478392 768824886 458953157 842965807 331299110 363545061 444434066 884800264 257864415 468687469 171016404 338915659 571825981 687104469 446615471 970991118 31004869 769864341 152700196 879945898 134886245 888291832 5474293 507074973 976635224 987022732 834237045 866853238 749204361 962796236 951672807 985160692 961534524 970920685 623239396 642458579 976050186 986410244 336794703 402789158 744068345 988206866 832486874 863553249 659179834 748217294 639996387 731087475 633457054 782895211 831360424 961820821 144426276 446492756 813461063 841692913 291250559 841386903 462831181 903360145 944630005 972953914 15063669 495893840 571351716 596589416 122249160 988950221 499866164 979299816 237631545 271295830 683920042 737282016 267446561 597393962 162819772 256637263 642746104 835413488 688715765 697318044 86236806 949121568 101860997 186711284 252281240 536507476 674319971 723948880 83011999 313324576 107552854 226720889 981858367 987288027 157471003 545199306 926011639 985459441 77123215 988073495 144290429 448739681 246531762 455880147 83042722 433788402 298872906 667079427 893631626 940600945 842174451 988271494 343655614 942600257 46365795 88109070 3136867 718726514 465349010 563888802 877394 831204441 207528559 360890084 288451012 375890772 300724220 408692530 354379048 775562441 182624698 949524630 74015522 172832681 836881644 871790876 586220964 666627396 121625012 624219857 871979683 945102667 767822432 857068165 161572414 750486155 461382086 630166934 638505025 660590455 135089809 948712767 563988808 887948139 25295737 372147507 435258809 465936148 939250239 972199707 307564866 512949641 324717332 456164582 500025873 521388577 1408349 841985427 51667068 467303272 874340693 977939900 506720717 698994323 302712219 891106377 841771510 873192299 237013241 467077406 655152687 731109177 980791145 991413676 475041755 899301483 357208905 832676612 715893251 874993256 21282573 592533741 618614664 675823707 948390115 976603050 196811488 813230791 703016245 997484584 234238558 657864077 608446458 799429622 322342127 384072871 323313604 632394938 220795044 355904876 530009962 673239085 202793250 760327052 384592825 593053563 170096117 483001423 5198915 901324070 219948440 384614894 315904153 463055600 816222890 841239928 402286658 450298501 176494003 976611323 442089897 514254672 16900987 729302280 392091275 730289799 585320865 618743495 358167773 796496742 515549809 602469395 982454719 984290040 293577642 687061592 525671929 702886122 784901991 915984130 63024926 141403652 600337846 746545125 470630152 936984686 56970493 349148055 631651927 684990180 184630535 382416803 763291156 885975304 26476657 315411083 201448660 207022258 662528537 934114505 457023553 519680885 194869694 242194924 71357286 317013459 655572462 927996687 478832726 707952988 565128877 906650521 853233696 937413336 347108130 672085315 962764878 974498919 346611305 670637904 934018021 982088209 166614477 536463211 811692034 889895785 521188406 806296645 591964204 923390964 10869345 710069583 581567743 779626385 684009902 905051758 372242505 743951442 49806188 814668994 931542306 954607423 557140726 752811249 904018732 908484870 651700388 731004759 574669159 704937031 212119601 922159654 291045 170763174 643304538 979734336 152461584 270118074 93721847 840452310 863725006 919076912 513738537 733371283 863487871 871576036 568159402 730969600 995220647 997826080 771894731 910718941 582651765 977792355 107891187 483928063 134399136 372480887 34361523 284008605 363929266 503981676 461052104 576479709 988538050 998710581 875117203 990920499 514451391 609806150 816117521 952675654 209076326 363980565 214638562 911294162 3670270 596648573 172534095 753106744 518978919 577704277 983130693 983260337 975655541 979652423 576267411 901526278 811853493 993587844 968472041 980035254 195440599 637214407 973400877 976551903 587393406 675896087 791973011 808785495 790642455 817048177 117707616 930539679 759853503 926667418 33322516 579022041 1721055 499108523 494417006 801342138 854570968 921352449 884170693 915800791 162909379 894642895 134588560 609258723 111695464 174783989 857709820 938128215 209676478 742102109 581945585 737167703 694823465 937161334 570932998 845469484 497304761 782885456 135776995 632106713 934789626 942952897 514053191 991546502 571825333 985548306 845185274 863905763 222151763 478571847 814754318 963918225 750890226 753177062 459369310 652154302 203921847 551917183 446416295 803740881 142604443 257311423 506333670 666486280 211558716 844788949 684751618 911586339 627821378 646790192 686261688 914359386 922319915 996239311 800136514 821792206 472177639 524217229 767043674 787680733 694240490 907791195 384471507 926649403 222221381 735423049 654236014 839775805 494003008 850068212 898249514 919599012 5705230 408656757 305560945 632232693 542102753 589480091 16229725 48537873 319811329 515019663 748933536 926187073 678580010 797128537 652323323 720995715 353332386 648343230 182077273 678509403 327524899 509746758 225197524 909121812 463325542 966198449 195717980 651283255 328843579 430595780 906463940 986654208 549561359 954307093 464332179 562312878 249568499 300842199 633071078 988546437 323862024 752460980 398910049 607340081 749830361 964387511 852278028 924528981 880257896 956663693 808182760 940622610 31547832 690210241 789642724 814414037 513834831 853499633 951618499 982545859 666276855 776585152 70967421 543286035 928763286 951097245 69076151 187612096 384540567 401428818 355716073 951361396 206200767 743221112 559640215 665691777 605494167 795119176 581004517 985456268 778530132 798175162 757337641 899862310 207516124 271592173 1140935 791209260 711889522 844829962 910336082 917432790 942164348 977678343 672361827 694922092 995230369 995944659 983431604 983779389 407119095 827552384 490719803 769190547 27521445 275638151 517589944 958802490 480191353 569050302 820628699 909395647 988956070 993736113 798051975 799684793 782484941 817180728 737957711 957506103 227153973 484650390 117766842 127435518 346905185 546223367 41291579 372881192 631488116 942434009 333803226 932551171 856055288 891157088 943196652 951301210 694530164 961128036 959889872 969944453 882830244 983902791 416248289 782854294 826658064 912382649 213432123 316435600 812937686 903270568 109550767 424445593 473068281 651202021 114569903 808946941 4857151 844390519 132509503 387895800 35707918 336786240 128584661 767925516 892162848 966030026 921679342 923767322 621516089 901983242 393410801 546080986 681381018 928415470 349514648 860891282 853766700 941478594 375027259 749202653 408092094 976370573 735684708 963480781 768386259 839830013 316582789 502738995 417650073 432886819 410021409 740301742 708864397 850415228 998846982 999382807 806910291 903424333 534364821 872866003 14876322 806825125 482410725 533549292 201965943 971114020 17638905 500781642 118134243 154918201 449548158 793358949 599562313 709534344 257791270 789816140 765698219 779352165 783633546 876720446 66095718 547992375 498218661 661763394 599411980 977545691 574110514 930676878 339701008 363843992 252721694 719320874 988842536 995605389 693396370 872117526 298143249 894561474 718661924 733978877 124949304 492002361 999193850 999317043 248302556 967139334 434642459 966143849 170780832 796882469 302791949 950720429 74484142 998035682 544736201 651105759 534236519 881933869 694521666 721527677 688198212 787584839 127808675 637324114 216072499 587882791 642964350 945189884 789785786 833322141 636630343 692629214 826171335 929699132 162185740 570766911 587504653 717703994 972903323 993888360 534741800 924182620 817939692 973775673 112209530 309646347 602866092 810025716 809932399 906261821 12718595 498557130 686612549 842093364 591606650 657463458 869121989 940070531 716100612 793391960 741635561 773318796 265995793 313239241 285624396 984391127 567846367 619559580 184203938 432985722 397346152 605978945 295231279 909443571 779190728 853853497 457903413 822615702 361830156 395868712 654228906 856082341 836802786 880056271 17635486 793555151 896064306 900354468 342070647 800876957 898475800 923845873 859601773 985770364 626573921 745388004 906083977 981993928 771640561 838319768 972926765 993131712 502174116 597610819 541472280 897709710 74623998 351954063 844541488 891902645 93129659 784285346 922907603 951732676 157431545 197428964 142049913 254738835 606706864 850171535 417888312 507349738 562225989 667143143 654042599 719334517 685825728 905462702 927960497 963488634 547740100 987517399 696596207 900153273 894535867 934809270 787248072 948321070 37290513 879948975 33000970 544697752 495151479 773681418 947256614 968363091 328948147 412285841 952323722 972980392 126570425 940824449 666598559 669394667 450107160 795567862 248458356 445979375 504864694 608724122 324374438 878938908 778958006 936218967 219775747 724400346 940412811 943688013 948640170 998171103 922726423 989282055 496452587 515782340 57145437 513547154 610872356 926796986 496249172 838404783 997836395 999317799 972910549 991175859 295041218 409544094 404782868 604386524 916864016 939323058 650779339 664684723 352148546 750107853 948437760 979815102 248664843 524676707 218586699 256541118 171955324 420957092 676900207 771275525 146561575 669004256 852553019 879246145 967329785 974074684 211335933 297952959 593394871 905924316 655408630 793747025 839730959 893817155 450928927 500752439 513601853 671406215 435786968 942088958 511314918 622993756 8824436 900355442 789731159 977210466 836370374 971697957 291567129 918263129 326504663 907530656 644317235 931876512 370799510 829983547 416593254 891682388 987667028 990748462 620613813 805694375 776296886 855003268 93024974 745320973 551759194 669280910 314793324 332877372 255023230 321624744 810081174 929731366 585240362 964618866 451244389 779300919 563850180 754403540 422049854 652859936 448620759 682325667 151320252 423441187 460314924 570699726 787452836 851228822 553033267 663210754 616739623 667854566 944307995 982227706 909907554 957378461 595205394 720470273 168267900 709625246 943074879 955005843 65544599 281839045 233140717 360854888 20383382 974622173 354800532 396183269 214032110 839989827 162168205 513183683 787974194 803654679 18785366 229464344 471955538 846492300 456529046 831021758 970900632 977489788 341343530 449414393 273985312 312755358 431614213 824995167 716719729 911978379 430913114 465548323 582498493 809826467 172178425 584501870 513680866 793322188 144731397 307471931 775182566 797989835 228018770 733367966 788884587 876452202 342656916 770007990 789575527 994833582 607765988 775389477 861591134 958733034 96756466 820082801 655320091 959469259 629048511 821411633 217895713 668805175 409358537 618009528 593519729 631268757 576512835 750891078 473854814 520955785 681649523 734805372 893832565 919492816 186283016 244463760 592434663 803824332 779393183 839003012 168962812 314061358 548437571 983935209 311499370 868495205 396989231 785631751 391388189 927411873 115302613 915609997 24316610 410134725 257369019 932135510 730814644 870929906 178138372 629904085 464277264 694782567 784628949 867543847 999221299 999312542 78225208 761482082 594114973 803735756 173026550 191730796 101385914 787665076 620873381 839507464 899743834 922987570 573849670 623375286 296628507 405271714 671576836 678963854 936161467 967742393 671445437 756753389 105549515 759659074 361339635 673127368 772685624 776021282 600603767 913621903 520310582 763947560 592734447 846612414 21994349 424437423 835350631 865218545 531313389 958023413 629196154 745525493 569977551 935210257 610168125 740994303 323018148 688875067 608551640 743257845 821302873 832106658 741519247 939902463 160267031 900000861 369166765 864688995 563545851 629606010 580606793 972863695 769272184 958525448 215392355 652057718 396260454 552502458 196475775 502264427 973930571 976917928 254894666 846008520 270414842 331573240 133510317 669753552 778001836 896266506 710273984 846577763 354220072 817731326 54232026 378778355 715607507 784028841 688678230 971930685 886567002 939297549 217821595 799133512 100714832 554226802 375428184 917108764 8143683 224031052 688833911 950079302 970752469 975091898 840063031 881324985 489996116 635850181 142630868 263919590 365552920 963831211 50544072 447667133 947565161 983055884 804840970 840649291 817730146 875120435 597135123 702232677 450494060 503278510 214878864 222124120 758318333 836094633 467109265 719579321 950381012 974701200 614985637 928445816 591961247 861149375 688223382 918737847 684120209 758198410 338059517 612883050 456968750 916995936 829816280 901565379 397011022 724329034 661759124 814471796 528296829 575057483 755382198 949215968 907426153 982230344 882049311 895649221 389095042 718775984 369971403 700021763 328286936 937884895 445504568 834136883 396533939 566094352 321459923 560748530 824676916 824976647 913435386 936065929 499762825 806875520 737996102 883753250 604877713 692890678 974320802 977289088 855702273 944944303 980477079 981178786 622418450 652424273 722083154 907819686 97593157 151864055 5276703 301702114 25972064 717596725 978531396 992642249 354443163 684227153 248190440 572073499 40697863 140502225 507483083 983988847 686017267 990258147 789546194 825513135 216605227 673076347 972368141 999007394 117931243 241705579 95845401 715471978 476828322 577539487 822767529 962044065 509610761 964655478 681957879 730173645 551549799 575060058 966241551 985483313 79332276 685240658 855557508 917462574 334378845 475835703 4298758 325001871 409179298 508702504 363543557 875166868 602693181 635816822 655568906 729059591 109168437 618023842 502288866 798399409 76375797 676674803 262819039 634162445 810294093 882914522 275025850 689161228 771463950 935821824 272762024 575403360 52405438 734434970 261816001 387868627 923772399 944837983 442301970 841371684 381721109 669825459 862466718 900482220 489401997 820738613 766889678 933588939 399992485 409883141 3180424 207619824 891741546 931447909 101939098 228099539 574927152 638131078 455663576 789066427 37537958 42928422 235034464 391143846 159380347 176024961 845484793 989209285 433789330 996413848 673819974 724390570 74675296 605145801 711046645 782689506 992228842 994894457 540263471 558419556 773968539 948482552 415482491 595858716 710635361 952968296 854384526 904771181 833798912 873278667 579989761 762310270 965068262 991874169 320327156 822421004 540664875 874108117 366162495 424323079 677001580 813879433 828867792 911381927 106645692 960724376 103800362 582124410 659045568 944348081 629123340 926714386 990337123 992580846 455326533 606389575 86057107 134522044 345036605 732203474 358274847 802564314 606758754 994555118 675739474 789759052 112800484 557928987 81807685 371658865 554573465 981578758 722764353 975543182 439694537 826039416 676075500 973331747 861443949 930712839 430803130 582891813 157379958 619805557 736576745 984547229 4404193 376287158 81772346 860881395 430070600 941590746 84109545 647483452 610592787 613701990 546126505 754328349 483916879 884960804 87787020 997699754 304153784 629966865 747320401 985860521 405498669 907611174 696127165 887203445 768489149 790852379 972502415 996306000 985147482 990854285 240695937 243575253 427069016 980561177 437573404 886735246 548882893 597590986 158882200 678436339 289913434 812046192 27483202 752232502 953649231 995796026 626686782 756979556 808204361 852703974 401586407 902794919 394237387 943386151 913398839 982526451 548151851 610921237 991739631 995756588 910008938 983687791 412173874 871102337 853141853 888629341 490415756 771595755 779216270 888871298 917630079 987547883 431106559 663113276 957697121 958885841 17577924 412993556 659434610 857472083 987910264 998057842 705919136 755424686 467410401 921284745 109953522 896256181 915462846 987144108 274532749 479814887 877597902 954490931 344718840 389695643 330018114 852144432 949796668 962389380 419880974 952838302 619970259 803989935 310112313 360049965 906432533 938174711 333492158 726080864 681508688 970993923 857438181 893019096 402611903 501518246 476059754 924605568 242971518 916339233 516676303 939420892 790788144 820425570 388253260 925489443 293689513 294347489 564832354 740453569 560928245 702207134 596146914 817080682 220823523 425595556 438949012 446546000 657091080 869914168 605145807 857580878 732083917 873597970 815637496 960251717 272266555 939903939 811901117 934051346 831212201 984817443 610786073 714609115 611542725 859787713 849534504 858671874 833130457 867970724 279322467 973961694 249791160 465259257 160278167 335774160 870287220 893232301 293775231 296544212 569594687 864456584 586770732 786155218 645734658 936100927 560618560 955950413 466901856 507829396 219495328 840439785 756241704 773604765 863510202 889747537 239911870 385724686 468996815 794298700 572907891 833222852 773638057 865467033 833395831 857263837 528884061 608210532 742245241 909045309 816175451 905123210 206727846 230027628 2176643 896377418 989075856 995052921 39315439 633334687 693540054 708086206 820621883 915491954 917137123 966329477 893946236 980721874 711414573 821890508 60221486 836660633 303856614 673089853 19104747 873077126 635072266 938289031 406925275 643312945 539006513 778014502 842182504 878538244 106226965 862260784 211471821 352642929 31349142 986458435 571913268 591363467 90647289 875324293 515304379 724575143 19253829 421423164 319206757 979836528 656926076 986792037 914411273 992548725 809399316 999292376 145606939 742637684 23886806 667278290 644605561 910079938 367828547 972376810 632741292 788512161 421845040 731118492 740254317 888226593 857172897 916618695 410978927 414274162 478548595 669789675 627925567 737004904 749949691 894480803 999087838 999215705 596559555 882366440 763003013 862800870 976418977 989379373 655338506 818511566 742660195 777919610 340269520 496528191 518424546 620697029 606873601 733740808 993785403 998054496 606225437 984827276 944689807 974588583 68436633 626103713 802567484 964048657 215394243 241954822 228041146 298623363 953569829 982905492 24675386 781404442 37913748 129992710 948193646 963241622 185822550 866110978 308848070 833127022 957247532 973286594 969340368 991334573 979698527 980664164 804962311 990282222 355032794 850273687 247673156 954940753 209492183 405534412 287278612 937375339 351082104 694339375 794563562 918366170 47703201 997020089 646265498 796663143 540362274 882466227 331314300 583353106 605982538 913438380 491710803 523322890 745610405 863319695 42195229 810808222 992463530 998974893 604905318 657045428 939652776 954507619 744262508 837320817 542570416 917282769 633701824 865208338 573844268 722488546 393079493 475608483 893837411 993137735 696757188 735586982 692671422 977452597 794459801 934479973 351102951 432008796 183504978 275518589 545579671 597362035 282236049 944617632 206516571 220260372 708419907 804370778 853499644 957714801 851321549 851407319 235008083 828376989 567800509 955945598 906447800 962963898 120909436 533400071 493132798 761845012 346987143 626295777 125631762 724496607 350078056 876305388 665760583 684486597 675584970 787255337 803407635 841459594 176046617 621524705 771348838 990498384 607943494 688729671 558537910 701433227 185872619 723380119 786487023 860656986 397063193 455440508 360729875 967435266 892532779 976443966 518743061 572651459 861126603 909057073 929169909 988986574 939511123 948686698 757003164 914050704 622573977 985713777 418836181 824588411 945831275 957005236 825948354 934370079 486447770 992369141 111671053 521168238 40627147 460642107 848250782 862498220 560985170 937310872 330380652 781478117 704211668 808181637 658833935 665836723 942934980 979872145 992389219 998060365 579850879 687746200 773437427 799542173 837686970 889922434 908993443 947367777 593887294 876914501 888510818 985595722 812544192 918876018 563854142 636858753 112190212 984236943 863471354 954264098 599859515 665770606 9529111 658622094 383748814 621898182 162707588 625637573 387125991 470022766 922767718 935529897 245230061 469433576 50305643 943161900 994687690 999161176 579794519 907463498 887574072 948159927 376432772 569777527 88127976 706074181 852593056 958098410 41038963 845150670 435703799 828446017 325077452 853050959 907232001 917433899 502192674 589387317 622973061 777734542 831294021 881973406 169980402 822718305 335706415 421429172 754961958 814359353 879228398 892899634 233784986 734559132 245736804 979823484 372334100 515306733 756787338 907119465 920635325 984399421 675605909 830052902 74687919 782434018 789779540 838552874 675794430 878078518 945819329 972618594 975420045 981577926 377651784 978905419 236273752 892293521 168895029 339447884 192715129 339014249 986341087 993485942 205550754 218687871 910959388 989975316 675883909 679483821 472220399 612225860 315588308 665267772 731849548 868101738 387329629 800639259 602729473 757373845 980743765 995957809 886901787 974107612 244297579 943190525 847255654 889299562 220141298 361423691 285865415 340515200 696526793 911121360 808187696 963607701 135329600 785111728 623441998 647007498 866975662 915789672 459260896 521195027 6510257 161486199 351582953 900357711 485146184 771299280 377634872 567763488 185541713 815489877 189710326 253280225 464563099 825665240 34425675 715558188 956430289 962413369 85571543 639327047 572339825 868967719 58939937 573424776 748211476 841394070 913637529 919563812 932910301 959858226 545155258 853396142 217930329 564177964 35908292 260638556 197828011 369943419 160737191 247624334 506086960 632635580 689423104 897549437 424601171 753510576 63622202 439067210 909265038 982941914 536061014 847716391 602128017 621748352 179511371 182850204 897863062 909201465 463456831 988196419 59765879 650083801 540026548 931539419 726293701 994782065 899073284 991640819 122284103 424108392 45029043 57051837 705485428 804853891 846061401 949162682 414049695 866647654 378206767 520971255 394519123 478778889 582225149 959970988 593929182 948432170 993963106 999342498 271065042 663342734 850904621 878572910 665960898 891422075 949466382 967326673 130200161 571217897 407326173 505135857 235290124 954826728 479574544 809298018 831680172 992061448 188351766 586628014 735182633 977142097 93724819 316244621 93508065 530478820 415012471 530074349 894174974 974086502 285129338 432239789 799478010 890123662 292196621 817250395 298850275 586762818 566984213 893793733 638999029 775033532 244735217 381388344 315313731 512821712 361924194 882256985 384582474 951774543 607787463 738797598 714826937 885781509 45890658 330288360 385419919 497289828 66689998 669198006 751401277 950833514 305855520 995497836 72029985 580882302 181159918 778970079 45297835 621760394 210619718 253131221 947389990 994328809 248500702 799454051 927684099 974788807 205189564 774422976 741109253 878958773 550126502 798226157 514716421 803994220 913976988 951609877 83908624 428717942 867346782 896957099 529564905 592861335 314856659 384227836 436412739 917831431 287584556 800053433 297163392 678849031 901846153 995299764 461399492 559156496 339307288 446521997 781130527 910667915 963685565 982299267 284415291 691591749 747616539 850912528 187501320 948999832 75869352 129580524 579647253 825099752 133660118 428733581 219350231 442942109 538400483 995416934 477722161 499571949 687278260 730312639 420246260 929846086 441601656 949170138 162456138 286145748 241523964 586060424 173869471 533305143 631994127 689717050 291437599 349038226 6969427 126969174 803456858 944032257 847413003 930526628 820728675 977592155 981011163 983437030 556635976 610266551 58379909 434170721 98363539 532058139 279928138 897671355 619319902 900886699 608986840 776412231 622620576 835942425 658891480 905423152 533465186 576495703 950193698 971604416 337379194 593158801 660468284 671956611 145424062 387944608 508577606 733981235 3026633 495345244 897919508 992278248 454041948 688863548 589813705 672682760 606944055 808894688 681505664 856168071 476715240 697382042 147370464 371832739 53657252 224736917 211462542 815936370 491275440 611587841 571495546 951735250 16557006 713862213 470573653 532060678 855226931 885653619 6313924 879180804 844448385 867378724 818157124 857452709 907584601 967266017 866997994 869994271 373615808 567738004 389987721 891393681 380723059 545255364 746226421 837917870 627791163 839568795 71532503 409931501 366325324 622100192 880739523 946872293 816052393 936163867 646273436 698430939 588460481 993383102 401114239 419786392 269330102 746521367 932461785 980511991 885084999 886080353 226158168 813763404 171136228 938592873 769250462 895802510 853198585 992539720 613506493 625203888 305915741 952731040 642888458 704467357 137203220 772416266 27883979 206568120 824070179 939561059 28028440 547321822 823528925 933032369 990634121 991325288 877015235 913426508 105861793 111930911 797705561 917014182 409803464 472773358 660426829 920863301 977587357 986642002 531817770 672390946 679992481 958239228 750212776 757827332 154308263 880754320 333468333 984417315 272408192 971149740 982148386 990296507 150354150 678574185 500793012 693216533 506037027 879101297 559684364 892484018 562677571 638310386 422991928 453451372 976402195 981911532 289165111 473170324 349903513 948990332 424163816 514297736 779712181 997137866 924909803 960453193 449352937 992992769 710603840 726445210 108259067 927826722 641413261 806370069 163857738 483450602 636227835 793933214 995145223 997449398 635555204 878448593 253529911 455745666 866669579 890659824 373658797 687500772 522683079 758040762 653583272 689661389 476908685 739720338 327317476 628833144 485337400 736784469 946564397 961968082 125146691 713183748 251419033 780740188 739597578 950781818 196582006 865227457 434610120 583423152 144119076 567785671 427632991 584287088 630692117 978653543 434797941 772432108 781927203 864789713 404632981 473654014 935258668 961934985 517305175 801817045 557717665 858910669 701645921 750749690 514522475 671652105 335183954 856137560 442440106 618242122 235413909 440842309 281929547 768666259 315625537 508320244 355319910 617970352 998116621 999302557 142317170 320982178 50176630 800502363 731233178 875223303 741582248 790874868 760982474 865062766 47202207 616893873 556022710 664095854 871557355 944979410 341457756 430899317 5818799 632421458 6471757 251159186 280437236 735652362 976269020 977565189 663450723 685834260 869758407 984247791 524080981 697790175 934683928 998565437 962705626 966711567 128946957 608910080 310737354 822607283 308340430 718835946 443253741 463383362 802442704 892946250 638151218 975015643 365338423 925375662 306896576 662518766 997726832 998411916 386987821 618915213 462255987 790562856 853593445 956838906 846963168 892727736 981368795 993913785 508278133 875870120 918264386 949158530 511187948 808655407 575130773 930936198 57993587 730297481 73344387 896733473 905558722 915863791 849860701 911567364 657005771 688645277 816068398 970700349 365004859 491296389 415713084 548544904 33103485 475660088 749213037 902903385 318532694 574737608 255553131 266405053 575574851 631830961 662228080 975792306 718268114 936882012 989217010 991876548 749063887 753692906 197507902 743846336 285650530 763099277 498873863 816327312 337264013 638584838 584225775 725401231 87121624 720198311 419121645 960954441 967445873 991835376 412455827 908628850 969785986 981088403 727883244 822296303 235222374 906409959 879977712 918527772 536748922 595373651 91526405 249433176 365330104 498092093 589069108 931254142 896589927 943710349 485143383 605149727 271407100 779770789 938822107 949476427 310718158 947282681 960314169 992999052 901857389 907933467 650484290 943555110 6777401 67106335 30003735 597302025 384314900 750387156 368137214 893253261 400909858 628129830 737627246 924649345 310760351 958193462 196557022 592050138 139011498 805215404 413965337 646396174 133214021 805965077 306220111 461770035 69620408 377128370 694367447 702594613 708319391 901249349 68587878 285353287 757589779 904043903 23680986 46781622 659761016 694590695 570863348 698646388 125342516 375885455 598065110 976472435 431523331 568362270 948895519 990490737 293064146 520966011 897896960 962063442 87559616 315297042 664297156 820472545 929160582 976458129 574169263 650831286 730824168 792039277 870459127 939289629 128772731 524041865 648005843 722392600 462777499 869001957 392224607 786425484 314189549 386483681 614651288 652584240 933810316 937544985 336247804 390378326 795305578 937601813 970655294 983864514 391973268 550764573 178858853 936453639 247923013 794706007 829835387 996429809 994862022 998881312 340183550 859956869 193786668 291125286 780268898 924644759 763931951 872431625 520582506 657079665 286027493 982534777 342676396 813777774 610530830 611725998 875392641 965583525 817483176 915628657 424764900 958020314 318356523 858890741 504342134 944170518 51113463 541782779 26725039 736764375 343876175 698173639 74601450 614777365 436574941 689852516 169698448 919054983 585420785 716848663 155365853 733258728 995945561 996293316 388948723 474468640 850681138 880427956 288981331 375114518 928074007 987231748 538934518 911107460 963684737 969168110 877518169 921180828 87250418 984415021 635100099 748385634 564782956 614489537 224638555 702843304 476133421 666308988 903792944 921333646 791709159 860571322 862833828 916074848 161462989 797727307 77092595 447786218 910013389 968113202 357401793 960862799 76034388 359124863 69030566 816406309 874547280 992504466 800059162 989929113 526114844 582829078 942208777 942956799 711924513 921038207 545604647 750277512 494256118 992671770 176528183 721369144 825712177 990243711 751054890 855590214 818756053 882205609 934924939 983697162 118838232 563954999 627247238 690449525 233409102 385291588 990300019 994064756 937238262 995673952 574729212 798521512 706911170 917964993 75414034 273635262 421546934 511061970 986217226 995452731 943131824 976456544 29886386 396529803 681070043 913900761 390202095 451089995 247904606 671876136 452232281 882727234 716475372 799293789 232801008 274290011 631889529 788634080 848039859 959875493 911048726 937047390 700912693 930983170 533945994 642769096 320906207 605927877 632401160 873778176 972889706 999046027 431727384 886851678 45727335 587729676 820200183 830173079 743402496 889328956 1898098 333432925 948789758 967632097 262004817 755541606 149939777 928369446 535164890 599043368 23744709 206817989 972385811 993739626 522323405 866591133 544368160 744805937 721261712 855325032 762247571 954897060 977059448 998799155 438571249 725989000 986709141 990444253 74793539 106149514 396226277 540072883 963950510 998938199 238107873 619295212 662355483 921226283 31006358 508227788 471306768 946213190 953413215 970842521 252669315 335619526 745847296 962722075 925876211 969247499 342025131 368324577 892815764 945356428 867828736 892304814 824113483 903578567 791407686 834866530 958405324 972832054 506670601 887882122 42940811 613005671 397039395 729862860 531672113 580119602 814003349 826075885 607556949 873665809 419316744 530121495 528710608 592964768 985633759 994259413 301577616 311240935 760593209 846823522 594118893 939229534 3864692 602576445 242659200 894307062 963920787 993138963 140537399 691711117 287993089 718361152 720391163 821017326 255568327 641196164 609678085 861530270 812517455 953684471 110497908 955151173 4085276 139608746 170539007 915177327 809302388 968544957 900188598 956607560 738492504 998915963 361341428 435742005 269071041 609043007 654209018 876047713 771581717 936486953 207402585 428079328 280333711 636156345 243055834 437807794 469081476 746551065 65199160 968276173 367108859 448721404 200499302 347862742 559017448 718938872 668088593 804299935 174206289 734969173 15414400 193078154 201426589 421312837 837561135 973039199 528276294 791558772 990777348 993509759 263223992 293755466 42618370 873991305 716658514 848091284 249373246 393841553 667554682 971948770 139169545 305407570 903229650 931581724 21442457 270852400 281403904 544914437 434130693 958582385 605480050 845997668 870124944 912598219 526819054 946807679 281521707 390450134 219241638 671574941 988638229 989695918 585734791 813344376 844559161 854697679 12186282 153758472 622833134 931028711 578250451 650931029 963920607 976405136 400539793 817405124 353631789 611107096 929459418 990084065 713741966 802889647 558345481 671269893 961235792 997430894 393436600 502268110 58726723 302329287 56013571 536890051 748894826 804686523 630662554 818912505 713756827 864460312 923920032 960509025 897872531 967780767 501325537 989969005 679589508 723525966 109837383 550958972 328930940 661986712 924266706 980242692 751526255 772240123 571964483 774913249 651307196 997228450 754532399 950019136 972549 351084012 52453019 199766926 654477215 788166438 884799453 920647646 439882565 623038019 820862875 837628992 723969444 795119634 465297671 693247149 629870847 735753856 311865192 774850443 451244348 769566584 419714406 964242145 235048692 382100384 746083362 801850163 648710746 867267273 670185247 970231475 925913928 975058819 650500460 837877352 529163849 991665184 167035962 317678444 459964105 470131991 895236410 939383892 119330941 378477195 749167446 822075453 751544044 781984290 966336860 974975335 375469913 980468789 942480228 996927903 207570860 538195402 972434044 986279306 703764157 758760129 945536699 972846858 780485549 956060369 69420483 285269946 435677837 711633197 863069563 873864772 235484012 873262498 370634996 588028872 101173970 841807395 763056486 923674622 51194527 292410869 891948135 969466463 350355600 404338592 128750245 141307127 898587872 998627927 209204286 765876128 777993743 913666360 639975297 780748690 222697216 799923634 965553580 998714821 947538030 989911862 560466786 587137782 934187128 964667684 696013575 929715245 713259736 846830169 3507267 639565067 198657771 952722829 884886510 899159188 304277729 304614298 553212012 617616619 495279064 633985884 468161161 537190606 98046083 815140783 686604762 746153607 456647526 856133460 291168481 768632199 133926415 837920911 95295111 237180522 84411448 688104091 880649848 914682455 851229663 994746988 664332600 753474866 179066662 363301563 111867653 758180812 372389628 682351077 730208816 978010857 600605199 796423689 890354778 908135474 251398351 666514555 363259102 650757198 184242532 434196243 720707685 899898953 724021969 808221870 512113317 666008368 690285609 731761723 983144522 985146524 164226921 629206884 439817478 829610238 88964154 781024590 892709717 941312384 595761013 863649651 705935681 828504904 577365468 902284129 774134048 858743022 413305241 917126093 329301214 914059829 837357620 911742388 392789610 456565254 772401840 955788166 989629994 995371341 23827314 761584938 778505543 985789414 691088853 891012293 353459685 473744744 465371037 922053410 411929703 702006676 348549215 455152061 629670834 721751129 931486461 998062043 903964002 927911088 485931033 844950659 980804867 987100345 335504180 979874602 35383741 328496040 321633794 491841717 875578092 890469966 546185296 789958867 130227895 894777354 196954116 354388715 343720460 609805686 949453451 998471347 9222774 208098698 849639175 867051939 42269467 491522745 715012073 838992764 426572311 486124677 901405704 959918792 350083484 413102182 137044806 697987415 220074591 634874342 506980115 844162305 418404095 449428440 143891002 418849373 360645739 645144932 788742894 858064035 405201242 904732582 68405754 551889514 436965801 566870157 765768373 924035800 54996123 331132666 584655179 780222549 278295918 975100415 962593408 965379550 430993190 871271210 975233922 980549543 422266271 473597729 369614639 497642444 378383553 684543695 745588385 747630733 503366698 524766637 796127342 854928509 571651861 847552998 909595740 923626880 680037075 842925933 483902985 932582113 718664071 841774433 430015479 565689162 462674526 660044688 638388457 976557191 375507599 839534104 780743394 941515290 725681138 819805507 457010043 774847439 189058131 563292460 832045175 923294068 231865051 777875188 938522132 974436306 676653090 972333585 193769030 661532116 853539745 991839604 641626826 971294129 240468166 318149868 385847183 831814361 768799168 931781607 694542830 726706546 634609090 822452890 749071841 853287527 843191080 989405913 16369157 481187592 631706687 771336202 313405525 843554392 989723315 992555783 611246576 665109227 799160453 875524388 372620338 461661595 70778913 925440432 995921055 998633965 960173127 962533395 833160081 862572379 821064514 880776196 269976781 838361383 955883048 962679494 986042996 997397763 912712753 941000467 262489298 591226335 937935620 949976667 980153794 982904882 589005284 969000216 454926331 836692660 874111227 953156785 846616350 852024600 811276082 959159155 311659288 453573692 636340821 645787751 779652008 890860436 181044445 494978129 577972460 664442821 426882047 563458282 441910725 914507609 485521142 768823209 515416936 915927547 217312577 845997650 168390963 535164051 904199325 999359995 484305775 873672350 558292427 795211708 339395658 591658138 441596423 951139732 357103420 910923509 19770368 52493380 318325414 783899491 750633695 956794492 22934444 523458553 254349819 743614587 284903729 362847799 751080746 754306552 197467016 701763506 824524211 830358795 817230149 868466215 50427133 228671193 357815066 475089113 468696889 942551640 164423506 526213035 857887645 978711252 700724547 814609602 455941826 611138617 351053178 578308862 812747633 905371630 866156020 898852483 3376481 119384394 903437736 982336796 491746148 740411798 446763632 838922468 568927136 807091645 549158310 618920651 599360071 973346331 940334422 975687751 288106711 683681438 185213730 625220896 590202927 835356185 460754524 919503492 67220731 540987937 683717263 815770369 678737429 977003876 118322598 848738607 66841285 551502912 348109310 996459175 554872345 974886644 897892658 991251369 868882366 931953984 366384722 803137837 500689688 808381883 173558954 321195333 668091393 697480391 734144802 751206598 434475523 969969086 900005408 915515215 253727450 299022056 80227554 931710958 161313382 859658945 947275568 995604832 497402145 662562115 631568743 681423840 788220471 908480599 932171418 987876988 763248460 865378630 997406222 998578056 93106751 771889291 480323864 911877243 779812826 939167783 295206966 548297539 107872374 963257741 352511359 651205070 513883415 587307140 358450225 416597992 226064338 584696611 1742137 450704275 192306343 549102619 272909517 326842689 912379349 952614610 613865332 691074918 608441901 896880518 480936062 652617737 698206632 763625619 336296664 594447935 716200708 738106385 111903244 785517617 616853206 843486907 569877956 572125130 841973699 971630570 954755119 969929890 556862418 755901148 786211059 868346021 323929686 617422143 315932699 477427566 459265354 782354984 809733861 953164735 270239079 847798306 867827491 968737249 97644058 956125122 324243320 936731339 214481483 639178938 943708824 977951982 181419668 306946528 967446768 992300412 277281765 505485010 139612394 358072607 309505961 476797350 778336044 926079290 271677834 347865143 340853640 613273756 586641168 760355243 753067652 782170198 714175056 819069682 594758858 656021250 902746848 906508636 866064820 910617037 322017458 873740104 28355235 319778823 802778145 887740553 67237806 115434354 247872371 405956419 245478776 721651364 600336490 867399231 548027239 925663305 690991449 705366242 9115441 873754424 416725085 530950797 790468012 804699213 10694671 650715057 968762228 988142686 866200873 915543773 768003999 808686058 664948040 833388428 23505913 761001405 773393900 804204366 437182313 573733778 559916675 670884383 12466846 709949880 490549581 537099007 366656715 897577990 806331770 858504634 746444020 999113872 870162097 889454227 44398217 321231740 662112434 818196719 331601789 419201390 169355766 516095109 264896974 720289442 659935841 860948066 389752699 888210502 128426898 994231837 644534465 755780090 760300265 924711040 692638965 831365366 485859977 604107806 668578616 708255882 274103645 444057620 952410560 976730172 194098459 796818386 863311875 892046137 449933855 983025126 423686983 598511547 69356968 981783235 673065466 683775286 982138881 984426722 673738423 832049895 403303799 857267281 501062580 767217374 697327277 952370002 839830686 878915925 1579292 326689479 614012314 711131717 894039408 926238245 650118573 986121780 478629369 585146245 919118951 942922859 736184374 787770452 751745631 839083844 16120394 685369116 156956432 507295394 499402660 552736775 48266340 845574949 653020868 777150772 865884119 933518008 128359004 620722974 115139531 857049998 438893156 667355525 216326888 231081459 977716185 982198954 395307358 865632438 306513478 585382285 850300968 879649568 686100328 816551690 821438271 980039192 333543482 915990125 748734804 872140452 839252822 977356079 991647092 998912586 347848523 507974829 705915612 913683632 416869460 936785152 425057863 743125897 709857351 937583093 392618569 676499266 644008049 937799155 868819758 907204607 798037904 821362204 756230333 967677904 967251024 995655607 184075988 886691366 157202605 805890512 634459412 855801473 118088747 728197732 634234393 730341900 421999076 646540211 260243544 994110630 128540926 498227810 56438854 742623835 360085753 730814474 438321205 931080772 561695246 754919078 689833079 915096248 450387377 499066250 989741440 993401494 84675996 629686466 416368479 688064678 532446074 931103246 155066204 224924629 751932238 824612251 595037398 980947991 654126389 712045696 210802227 892771226 957067816 987016726 242432708 706490054 203195745 753936214 811797702 976633613 152825790 422301913 172978575 487486848 825410566 957658213 31057524 833897250 564224987 729514188 26103399 330846280 58967789 543803588 10017249 770893723 942858249 950490691 368619035 888240701 829397056 883480134 83369245 321605325 997473079 997517500 905921180 911968771 947576103 984582376 96321507 638524325 229327274 719640734 247632622 270828048 892806006 899761502 527206186 623310206 724616061 829148186 210442694 593617682 86358171 502781865 803707053 975655877 86286199 397105753 314779924 758237933 36922507 193899182 230750705 781901627 78506094 902710602 496648432 817326444 411994304 924715626 840274641 865587796 230677747 265751417 950028053 993715796 530138994 652202242 29558062 178171948 600499594 677591451 867425016 977193087 25251033 841979878 583107650 656828173 582009810 599251168 92614176 96652944 248006485 295354208 656520303 886155785 356079618 840666017 53647004 471570652 501678150 574351065 664161096 775169416 361255929 753394913 199949684 750542153 512294082 766699436 935002883 989689147 845585257 903997832 648069183 978471314 105478856 375025527 230052678 705933224 585772211 941642318 349775024 970057382 520595412 717888718 346349342 669595877 713740279 783493676 101705931 573047915 641086238 950321366 859499194 938426507 767239154 802453293 313462027 395735830 997401542 999244192 263757930 941780355 994418268 995715420 935553778 990670931 428946105 493930804 699214963 733034672 36120927 876940735 180573411 490962503 478875925 851931793 815423566 985423441 678868951 860900163 589170328 618228845 342638961 423554840 41770168 247756928 867131030 878686539 493534863 874636733 124553452 923857692 730593987 816643889 282638959 776215545 953203020 982383876 494044600 522781898 638399431 668332395 418760622 703491223 982382446 999038944 339738094 549670787 374842629 467952431 309004688 708926839 554506263 712436829 36124815 97959501 474652867 854803411 186320209 280648557 568802365 986290193 116190722 951304340 608352070 915967198 531169205 669025796 773528192 798636152 171955652 955534186 980563411 998700230 902349640 982896861 568801620 639789878 808054098 831167586 195452647 603218749 568471856 648914241 845250102 887509546 466172143 589842050 681451945 887512743 849197061 972477172 169365626 996203441 201082220 602140339 720564487 882480511 311767800 772909715 815528100 878421474 878726680 897659950 856313128 962246623 256001748 706711859 487621280 498567996 500863092 857304775 666893007 922119804 152047323 383389524 928632752 938601928 39853419 109267356 646789587 864920679 881690006 974033056 353879989 836114453 235526090 868108482 295836013 349597716 859657692 904152598 451514760 941403128 373935246 379736861 359289755 381741366 482887725 991487157 183880942 422690162 820258568 944587689 531595703 532174891 30904619 647517441 920795720 928993892 488034741 535247714 434592337 623434137 945333480 978467544 893292662 972235669 550442605 569057374 785696367 946739664 401445296 686315298 228967451 372018210 1295870 755467889 754515826 755319753 601091223 935046614 948084434 989036971 538963785 768270990 187637577 616074645 866888762 907502833 528105795 562365073 92355979 972476060 57498698 649454075 937054339 970675839 773160747 868697562 499868495 912489416 357730678 395316968 486629686 604536306 479775280 816302112 96974034 756952589 100520323 743296450 642815914 818622000 73746195 997226852 112635118 928837987 424399252 756604235 111156995 976594113 554315211 585985000 311193017 775947133 497156313 708310144 616790011 914405685 647290236 799644162 888587140 926998433 479424090 558097898 547168951 672091292 612108418 918259952 516830182 614160971 136138277 815625125 597849181 738984769 114692589 761281889 445212840 805055025 830270883 962269935 761934702 767911366 413462802 454990573 294200561 702539906 385148501 652673446 936310149 977655892 225876769 360620640 987813077 997857336 522290849 584158686 210334262 814447754 474603220 942025241 690359615 782386291 742805422 805862978 528382076 952995253 632582583 961630866 157763271 497686053 932760654 977552945 867015861 958914606 41081853 977639932 636606451 716246774 97348584 938217999 178479556 191990749 271809727 818638885 775891939 864079689 913167897 929637407 963435758 998764501 960739867 994017344 637196933 687403110 539875111 777048709 151731015 203460332 190809105 377876765 569936747 938151848 286273399 521453758 32989546 904157664 904049469 960753860 826960255 900301334 238228146 414469524 403519115 914741779 529759289 900477358 13062756 606511198 809940358 890258388 218245583 413270222 311954102 546435260 687189579 916851616 744529588 968437991 485190249 913458882 217501486 834935634 794626261 847727008 200685065 229727599 801194979 808413601 584135390 803783941 552543308 555549091 379175751 998015715 476145997 881127632 393727808 718004918 964454499 983439521 46714225 903227253 877809127 903023277 102259549 506062373 600959690 895670850 587481858 690212465 552038334 681383884 767555729 807290493 401245852 679415385 841335166 961634015 951120836 959299607 831291679 846733700 512603700 985419067 558860310 736581580 685724944 915604756 307838885 572774852 466052443 913547597 124340018 859630907 4520240 731406806 58741173 906384328 544070971 847348653 362133081 992810121 213810075 355937117 182930847 490236817 245522463 811216938 18275737 900967414 625973770 641209909 926333370 991357198 659186772 826270007 29401044 374385960 389415434 606246098 865308407 870081728 307479198 443707445 669319869 973552904 478316771 602428836 44456112 357011542 996364477 999176364 725934111 898508291 88257761 303525926 793742539 932850711 536989997 828457433 264839018 979168815 24340264 544061508 602572958 919347493 221196945 928102994 679733055 704335374 258621544 968238798 789640834 929000979 2812348 955600296 567964584 682504130 470229183 783398018 512316748 720071869 706693427 729528968 937094308 986630436 800590859 981127657 702200674 951286763 476896158 852249323 231977567 621154972 215421213 900052656 354551548 832296788 714387282 722442010 625377937 880856188 115852194 436165485 85159950 338541457 512594179 917886201 332306037 488030163 904775919 943633673 995563646 995902974 210321368 672637341 660612087 833345860 591143294 640448819 427943279 778050158 267572492 539700459 394202025 427679465 378965708 465672555 551729717 712544070 322873035 355103470 799577114 942334040 562227825 739656167 603424814 787965512 767631233 988721088 107047721 459832097 371743657 997712636 81777673 429527688 474209674 629438237 419369851 629530466 228964536 338374822 431272719 666459495 36426997 979271092 666689507 958180266 191844963 965790939 135646771 535855705 328086286 861678815 312076024 470116999 356849100 714277977 780592341 809982724 423446535 520929227 874387822 885021725 566367069 710260055 683872354 719597863 230427176 694811192 598284697 729191362 777664748 922923873 200483951 696964219 262853994 674617247 645783314 979434182 638414462 932087750 61342200 832940344 252730165 825246828 441335098 892777855 181074792 555906326 776981986 824112602 817519960 977523898 246745028 676217806 763168799 773877999 821539183 980060052 884631783 927752758 677626676 969152067 791863956 888592434 868142397 926746173 777943617 889442058 150600935 201155166 953609881 979121690 532940583 689212755 662397049 898646139 475901836 974975021 160558229 908647234 833212437 935366578 97036441 970917121 120586589 813485270 652065236 837136966 607858956 862997408 479677655 773218023 448888347 744688096 414880408 498660231 242656597 665992785 734904128 796704718 644570013 873117229 626990089 986707612 468183585 931525060 58164404 787202515 5960623 395745276 274566440 911146727 615455349 951939794 66057062 304599181 464812021 575836528 102153123 595609299 978900923 998565511 481961785 877399071 791259834 979374972 296716770 877836803 558365313 898577116 204052937 715334837 866568879 920205335 58000642 815058902 394439832 592813065 555693239 591875745 269495930 321980434 296453026 804466149 465290122 627876502 557896475 925520003 620970156 826405538 974904002 985687218 159148613 571549310 473474725 592559616 598731072 648574285 573448430 759226233 394384954 850852723 327164986 499920160 915807421 927366067 773258979 904010699 903266553 980698978 70848875 515628199 99900327 266125079 403125131 525127775 383389175 563539790 142889535 361113249 566572151 599355766 939959205 995790032 611514369 661403469 567803368 887522485 410675601 970614842 498400707 913068999 759161719 906227699 29430383 482123966 997526464 999152894 387747969 697321694 529015956 706459541 351099706 943014119 849472174 938173445 531009788 678470367 848764041 905675509 463199915 675868192 475561639 661150731 244378620 853526373 781973528 919683526 854875722 905075543 465439512 765269903 3090541 93884699 240927772 379435910 528669642 958259198 968761249 975876819 91772386 626657115 168670880 897308313 575778695 994255225 803788042 944932492 389157441 672549707 341039146 406319834 357650337 414528887 509780534 919408546 995265353 998369023 368046853 790974988 158134987 866569341 125142463 687859992 309918228 369822003 636372914 907089747 862557765 923613044 352039149 797235603 173466223 747209017 666903975 798820997 102310725 724925217 608699390 874481583 35879846 43624789 940909520 970895108 470775278 532339989 322197768 749384287 418675426 504963849 812462159 979288588 73814515 919583018 724512658 971594929 268003020 693178350 586668986 963054401 317928488 510903755 470576069 597401680 507541449 970715199 902982731 977669843 77724159 768407298 590099198 700763178 176675339 284948985 430099545 657119701 301242604 473267184 143255292 287004455 185723027 957199035 725944606 772709957 332016915 995414288 286977363 795429003 3023758 252961139 65267524 379593785 292682328 572930166 603996334 765735052 645553105 683121109 733446771 859894617 56963870 165454919 183707621 714667059 280987935 810228411 224766873 605346120 294719566 649738691 848338390 909623575 55859993 600216085 104755752 173796940 220389196 237520718 410989733 801010623 174435024 204551747 793883933 980463791 411638511 954302666 394910807 421774394 415334752 796763615 375603872 693382576 65714055 385026063 716076337 913373815 20047585 967069985 824831640 835538164 949739499 961311742 897307278 920919070 428818727 617665797 915988600 990085612 809229285 824028654 478279112 564447296 930770721 953857466 479170661 743917027 572811525 817155461 393864130 837603474 659863836 950213615 135366730 724263507 22315993 923111491 704176182 823208091 699603806 750068093 632774258 755614086 665687384 929652594 585724201 907563963 717213315 782242974 937875964 960656906 845818241 935563498 905459817 914412750 759851396 965345443 996745923 997290449 88613761 528868341 234626317 644626766 234238952 409207363 852601589 857916189 731407111 757236261 575763016 789192023 353840358 640376518 141637519 646153395 497013691 567804231 806865726 954909807 570345480 998878352 868499801 973691900 829657089 834944939 521464400 834760821 706219113 893994989 676989673 971432626 577272174 890163104 492733844 873166116 741726773 981169509 913780535 998187383 979109518 986876933 572238349 579053137 878518015 883406458 5340093 674774859 973612976 994824740 604901805 954200793 588866438 896085455 992838224 999371372 529722921 581859880 736259480 797321302 1362832 807633892 606397897 879088397 59727882 459754639 403666170 804835680 887072736 960575563 381294599 787661477 48020970 400456138 407141161 845904241 459631608 768164272 36687026 954684917 10852524 987815412 748837818 905218316 40407889 966318699 11317283 755220374 542323575 821499908 604636865 996283488 645273183 868831833 798471784 844284695 611987683 726544920 352991004 801814647 592032675 835280163 434874166 758338085 928501048 957925044 192096400 579668098 989648017 997782028 218539791 482668842 525400645 797359900 759454270 928264696 403507633 594445005 862825002 968463313 726601578 821818159 681064482 987807046 660469742 796946358 221738057 883489458 729173404 973428218 936846114 950861288 665349014 928960865 914346890 959049207 817113696 937650695 757651453 978529202 814361213 902226230 256702973 794431733 478271761 767328547 99633737 555921423 279157512 907084758 769714886 860482423 853461790 908191104 959775356 972616265 125877541 897000311 234731861 911613806 753577812 820081412 597067150 614704959 536145000 897134268 545180428 777435679 670947370 973165101 607104700 993035412 408022819 491010586 721130444 797686402 382818079 693916673 848493359 855385030 863662223 888603561 165472600 925686949 784471146 930009973 807627786 996471896 741747280 900673581 9655677 777680929 251982357 597972165 661726621 859195581 993179809 996356152 412840354 795999642 59868846 863855351 864135063 972733188 232448239 566465294 439082080 868785056 891765505 965179305 653760963 681581911 798709753 819020422 630791522 875371560 583237606 748954119 86455789 205020688 922949344 929067507 213028506 836588766 808608311 900710514 339531188 422606483 71463463 736386392 992147909 996535406 404506438 629030136 575352762 858620487 541259196 744604563 446902230 502658785 26391866 581387184 406057033 850093974 60095931 899781012 20710581 455189602 312229136 474336744 745501145 797317026 275477264 733949833 186129155 608242842 911872782 951586156 294222767 576119951 71793954 855047434 697361621 956716335 602553904 776565914 412324050 500033004 642076365 982450653 326290403 588228717 906076993 910350018 155844902 550322955 920112446 979285945 923194154 961112660 618661163 938231711 39373399 714387089 999030307 999172556 11480168 495143280 179515298 697864377 385083790 981616170 649610542 672134388 200065144 234059004 635831865 641730028 674010992 990777002 148073784 249123133 680481728 716489318 887116674 893182902 341987961 482091487 187750946 907897647 888984024 960742372 442514793 877685571 849863241 867655357 792944021 878075917 42665162 929584478 98019796 322796740 886477595 954973196 125540486 925145870 506424455 724027747 926374713 938199374 815652225 859296459 937802831 979076222 854865395 875440988 842156858 911708711 298718615 592149954 799300637 871068019 7829663 666181187 636020815 663960594 802325694 997449144 564853939 855748042 610789195 983351249 690576280 962043322 639380731 993799828 28687744 858521299 834179209 908015697 817656321 871370772 523351077 731452516 298382000 876433633 329103087 375844547 643159064 888957649 787825093 982224286 760281002 829910939 818191515 973432206 16192814 236344741 670268162 910430996 679563033 951030829 94494136 543333176 490208038 933470821 783846211 857093178 799803083 825819279 125669572 170105986 292938149 599215719 987321319 988972194 187439505 388873643 779337374 936127230 253703313 749925068 59315492 603096157 787458621 907115890 90033624 306636206 258437716 272812488 76675047 709377055 789367164 796312154 230941432 948447241 947809655 982257271 614313695 792775476 470653019 634977368 652721702 712902712 207706196 901239102 175164025 654419315 455440788 793599799 181378527 647331317 327989770 987936765 89572702 361286207 872313648 943620980 559918626 784659595 283839812 809917077 683947493 940860875 657130721 664248018 496498957 634524425 960768541 986934085 743484420 975241281 112940480 344720074 625700482 798529997 372831033 851975421 913957668 974263827 883947813 957117637 901455482 922901456 879738847 928090855 184223170 748225747 942747404 955737820 732363058 777800563 534012381 622301970 217549722 315812674 624320993 718641256 973884138 990453711 893183513 974021044 671295933 979148832 725642247 998771114 972089935 977163001 513957723 954281432 145818715 346868160 257711512 782181411 780211140 943153827 248100620 662409539 198433097 836740129 217360470 358204868 713706950 765908223 973389257 983645742 556245051 762376330 388480576 527121976 812289984 966989045 717250691 862845669 635766754 825913021 660512702 780569609 218038314 990044420 750823413 959018483 155558338 591269961 20405371 141595673 988089603 997083366 969492220 988872951 238143151 690517559 333102557 505410200 863534625 951508558 918108175 953971187 967915929 990628549 630000764 767572546 926604145 968882958 342052337 822524254 175941072 930755619 45211845 340431992 85872052 637581615 482513642 750277426 254123812 738011123 506666672 981087943 823962689 871656078 347449000 683632424 317327028 926938708 80123984 927908840 175633316 275339987 987194341 989360371 975999858 996889705 109253184 678619291 434981422 928294359 700587988 747487676 638574814 729888690 313714047 398231951 964880464 971533882 797672660 998925447 203676438 667876782 222471110 973727529 826357879 962805541 846542463 857458097 77701896 792772926 156849967 804868273 382262336 562267375 994544022 998398765 307931112 380050031 223154365 509049715 70483704 782200805 466768894 681573519 237848040 713746672 993501298 996761265 332519547 798688098 493456594 945505288 921360137 953192903 706943193 989448358 120435533 683315640 450245042 917985994 431855634 536182488 723019463 931268699 941131747 979570916 405488859 482199333 439488684 499947327 207579394 421431137 268071127 445068256 293185859 701514133 138539667 788802773 209832461 390071867 106307006 358174681 414559544 963799525 259262367 530630520 587200123 895996592 101544282 391509531 626745343 926180780 806025084 883990294 136018324 852704015 802214026 988682853 206854135 866412343 909109134 967242238 667265576 813049044 990236305 998852861 894988391 927413011 705741287 977440223 93662360 724939465 643090408 867278914 742884492 764978748 950476398 971398067 279400921 459356543 238005161 484845013 411836197 583711839 118244462 237640141 905876796 906467258 639906761 727227365 772353004 968394386 190960679 833073937 672626007 762874189 827611164 985389791 498990068 509793059 498661045 843474112 386573294 751291635 611196525 709494582 132831106 527420581 690309595 829836610 753579235 804493893 45302531 913339328 735622993 809213580 774030536 997273654 119110708 967962599 825985694 896240243 720898100 885306415 726454688 929987605 137704300 308615660 481480024 891926531 366380792 592044260 118177626 623648622 765536725 809390858 76602388 895825505 178791127 965856931 30362866 143776167 955929599 982877794 181192901 848609714 474360601 692666371 531076695 936517466 37623995 79717018 664111504 992449000 433098406 758646332 575776557 784361728 802031341 849037072 577941838 729396234 395540036 840994430 643441886 881861469 154200791 300776865 921336240 932543133 455787367 899861843 402175496 508287654 642621783 741126897 711392788 876367667 798286509 949549584 265095558 763658724 550118555 640437448 913890415 960627839 202154380 455257985 941867613 987672138 70736341 816043156 366849331 868371310 59968779 284199761 794408031 957359817 778492126 866836310 918356339 974086863 585810940 958431565 208640768 247708914 340207125 513559258 80468125 391902788 164774777 965217532 114725329 746312838 504631807 975011066 835667390 881010878 725593809 927719651 887147386 981994159 845640620 994773062 692015927 952594884 802370571 898948712 488511381 552878946 936598237 987535902 738694815 769242441 251248357 384195698 984143755 998961559 703654542 736970531 418062482 602445666 630270821 864813535 555643059 889280830 794677870 932971178 102877334 637267278 421438451 779323210 15726860 198911208 146005223 156444837 20868776 496983871 591382098 987216123 179684566 448297720 207730709 407424011 831145503 929836077 909715558 932594367 309206161 516085160 55686637 975514536 624941626 865326661 412852966 849367845 152272563 279136758 475561474 863024020 8694914 257866647 176626157 568443340 405145795 797051451 845245871 912112512 860155489 930877820 646931963 822161545 428678677 594222614 398050883 718321477 295494578 417709346 814811973 865772473 87067397 766553855 380343224 744389920 543322381 706806144 453349610 544311017 466334284 483178838 41950673 781621923 445266819 790250397 183574933 186636163 837879461 903068595 840124498 987429598 398368029 634100908 933867811 975897559 1981609 60083251 579127172 888151679 105672722 393923888 105702763 862221028 412916246 924578991 56790409 121543898 229324748 513098468 683651941 746596112 887383645 909158948 909599052 934325606 914282563 992337242 54384648 561831672 704256191 841176742 288476335 470549962 313598884 562593967 114542570 969693944 543501305 981441214 40365922 342077149 453733871 718150882 956292821 968878318 251415535 760338194 810481762 876078965 805856503 865270786 381935396 696122890 910365783 953449772 756811032 867649696 136436925 832306196 739297629 786843625 445444338 921954875 203261198 307979830 995213743 995359076 20879093 544661011 290760758 494749545 914983433 967889461 23384800 489632266 630069954 786562130 86851521 778730183 249169030 386356066 877295022 919393956 527470959 673395790 159240551 345289008 311476017 592237520 379150384 623799223 841744084 985845367 246506916 385324452 72862105 103596913 26210485 238103947 568506732 631818655 15557519 839855092 89234857 256767638 649976823 875948619 499347451 607522140 689285227 897832982 496050681 815908129 884600267 889841084 140349158 192430564 987823876 991263859 35959823 662974520 101483003 459806210 256453616 896100470 766536387 771548083 208670455 732411371 463026874 718373966 495614568 890748339 347000141 973543946 963096179 977861300 782467654 997572134 513637501 524477567 239335482 527064819 971001845 990346076 599781612 763156675 863773476 923694713 745945147 843973658 917352213 996674842 199738427 941361117 871208245 911795704 797181937 996722634 388144958 738653895 461617772 617824758 425584727 667295439 204807423 258569036 737842585 792111318 764326713 980119763 343034122 604315044 471523355 842185225 120735982 664167382 843892616 870070391 166308451 774117083 129266098 344134543 648979148 756291540 865171157 920354954 748632388 863663772 189115818 642487440 198261484 284927761 681283855 920381190 623668692 764524709 439477119 469697810 249700677 832221149 67956290 459435251 806568130 834908145 411787817 990580187 749432439 983794096 798542601 869191424 243380840 282176714 147386815 269905223 23223518 155832005 92738069 962795343 22333555 395633448 244147508 935284444 696047063 946799540 29209966 967866600 791441066 910129403 499643706 582878785 367344687 880524649 292115990 411205505 406501582 676528454 717480657 846261635 261614895 343666239 127586398 933467513 130122673 577244072 255752058 337021703 24934678 77966448 486352289 805462145 723686387 791843709 894575250 954642488 66200457 529434257 437305504 518463562 899625090 992390590 276054010 792657074 489964744 958468976 918871675 967908297 519325076 800682272 561294700 845725586 628385900 886005513 935435613 954990804 5256230 946774308 646684431 933047750 462772005 510750774 137462045 980325328 506676479 734549672 183913028 413026432 843758335 939332701 661049061 739794004 776885994 865554081 374459023 399689351 489567448 843727121 104601914 401670246 334795136 773560250 673673733 686811248 400652992 647314097 460051622 722577255 162306859 858449977 996310334 998647310 962864250 993224411 723086830 816217719 469933868 889199895 965144139 988773302 256606421 817088770 680120600 838886739 471045569 504624768 708164080 732749708 727558974 886612094 667075551 795919378 921618491 966077022 687182538 971093230 255135473 318876293 305531717 936051984 672489924 949480543 950743455 952682061 185604803 757517178 462161611 916415918 563943967 644347855 526387046 676229964 514657510 520719377 894684088 948107815 642263340 781989626 508476781 934559652 77578834 721420914 671949687 744435400 219197017 810508229 424919369 743875228 927053620 991718483 844472008 886618650 428841224 653743441 27129139 85059048 286504743 510040534 311520547 577949840 120118116 451185200 272600813 717569144 173678230 749649173 379888582 602497680 480225499 844786187 579209549 855634629 786021199 896268820 669667888 901262146 797678624 846081877 461387958 772319711 545436558 940660918 682834825 711112989 298711914 376708969 890017615 911649912 467797876 674920740 922838071 954514387 240459412 436579409 323783000 956956422 332624999 979544767 244450668 342709038 457953602 707137157 676451891 836733431 652304622 715122225 610306330 971772897 263252799 656080861 580215437 988677226 645898558 956147709 348461883 666186561 644818806 849024490 220158823 794172997 158109521 481203676 494841108 897993119 890304127 945167851 994173507 999183671 537994242 691305595 70953221 336447446 151219014 565254550 29405039 179850263 387297456 906335577 869550915 872045843 181832140 789332200 5173405 673173209 611701747 813936272 331160149 501610654 530203778 957408105 393695280 417756953 809527854 910789833 380191914 515683125 159285817 385804579 31882676 899830119 478790394 951845807 458107363 518367555 318788331 459432367 552585214 750354611 238322166 558224856 768402783 856349237 935261767 994857910 925720437 992222481 425497644 757999385 312922172 557997929 127022988 500764183 95414414 341042393 572942992 594407854 311874051 570974128 677103161 806977353 181991910 500886569 347027782 914707616 600818098 863069752 874983731 996568913 338855191 781256227 918855481 935502221 49783488 635539492 569090819 949409525 804113363 915493967 153321069 905017614 892993683 915473479 863117184 871453744 621197608 722604433 762890418 950636033 471923137 484155375 903060047 982964997 783119097 941167950 12279264 427974387 600836875 728759411 585448892 853224624 876563432 910143477 151472324 720075129 431107810 770681005 172470669 547682696 167094134 935206635 530172170 871713954 265832458 300455221 605838522 863618055 924730999 982546944 457657825 834230971 331185135 774477832 894498621 990245479 884443144 993353149 985810999 991237623 673704209 697456394 837323482 867080054 197631343 936714426 599605792 697726005 578835001 873137673 492259281 492588099 695598638 868134462 971754570 989283616 252904627 610125563 995748613 997286666 745253968 844927037 251035305 783488966 983891365 991289031 531340158 834290514 259430372 536719061 817494003 862129190 18229200 682451398 55377980 337701429 141825677 412433712 299896683 593277739 753024486 788155308 945390207 955322498 641425226 973254790 453702695 797328457 131003852 880555089 454779389 841678956 979855196 990664715 681551256 963046850 245060687 327364659 137001506 170666396 129240254 399007302 741697772 797709564 972565236 991047943 228642179 750142128 638738530 909674477 894389055 949893626 149823776 467254023 702488124 908599788 402035577 921026883 786975525 898756291 623962485 818438408 818502916 852876681 772053322 784483751 886981397 902264533 851764475 891814765 264167914 530413703 951890150 968273473 494705222 777124309 91883592 558924018 112976189 186229116 963782008 978702236 91707027 243295512 238465579 353940919 982121498 985957557 817875787 955649511 63158725 293388779 559046857 743081085 118504188 230083805 131268284 304722328 902814599 921569862 960169387 961919637 247056005 591865453 262996849 914461150 581688447 841006398 547369016 729677065 383185873 713029552 201001622 361121843 223211798 504565280 972154879 975790013 862524969 983557551 109231935 183320254 558634263 651828796 633946397 808306580 983013847 984609105 276081331 803596197 355071270 544055863 394054584 458933053 128079198 699980848 371674882 620608432 466264105 647316572 428100741 786431084 248153612 354102332 316928029 416699247 447749081 843040970 969816578 978003607 523344088 560378453 320772459 606889655 17644396 725813586 627746781 679907287 887816573 995424888 434100696 582415454 850559663 887947362 583169163 732226761 926256288 982669909 627356619 906771483 767525266 850832166 676292391 950678365 338204124 388595560 788676462 949211033 806308944 858074152 916621929 971009908 507261292 832032132 241241304 872326655 741992002 758441288 179184865 880655983 565995704 683507984 425925683 597090299 350730236 693870888 9523164 603807355 757604969 947486939 595989601 677557487 73074221 473443629 406856505 470012909 758967427 904965623 838067645 851561225 351367602 633505703 767237231 908184751 402189721 636810148 194128479 430103800 255387244 593764965 789401277 800266996 558983294 625387568 252137166 715475356 776696714 827371227 188174663 726884796 921333166 986247090 460786498 759897026 207391220 948542363 485485355 644714810 590016995 877097989 681386907 901700985 724889467 903001963 892789512 897196299 172592702 414449911 169273608 741798081 549446415 598155656 295337867 642399175 757773529 871392337 140216336 576389677 327269630 856578309 109116692 593142266 984713003 988566819 145065189 344254397 460373263 667217319 202711999 450943002 483998498 614958270 244699068 649805070 118954034 250924685 402392462 642203360 212734947 724104039 633670904 931280199 514988059 622554058 146087647 710935503 821293394 898457111 120679168 662718523 189954152 225909609 136551236 996130732 908955924 949961265 490606309 932762379 800777662 815990317 796960145 867093261 191476867 882366263 872729776 918993423 34818123 242835821 404844799 407086169 118272415 198691793 974777975 979083982 260255024 661826367 549818453 571884312 408063393 915159808 179758727 755304180 502852618 706451707 964910398 986565030 470929818 856798675 560218467 722368944 117592175 224478719 855256030 915585049 651956543 843652964 807055725 924975429 316204555 707441282 632893382 779083025 489302035 793140260 110195178 623328005 473061257 563725926 595079914 986671425 475740471 940349381 996169103 997613429 677888522 783739757 267314759 663276223 446956833 756617070 10236553 169717657 81409919 603366229 612835059 721061234 808762599 860106323 142694190 261101929 2338151 375090021 298176668 429927960 507033260 630696537 225724803 340158594 788690544 999129737 320086900 659851664 135300865 525075008 58262302 247884226 934989758 971759505 230871070 651672778 110948815 728223892 643624961 890589206 44347015 598729969 466215987 763265108 715264672 769923093 726017492 761845401 860126653 860373072 607503841 784668082 396997480 576662917 218308698 722164157 708698252 952981882 379228573 571440714 592311072 911048491 465932209 543895017 608373918 678899741 121299784 138940972 88246094 756154322 836983868 910006311 879799810 951411262 845365288 890053740 919554603 927627233 305944415 694498061 929588133 967005669 635875655 682739549 885320206 967130868 363886250 984281108 738636158 840976282 190208294 473794920 43891665 79923194 149267909 624925600 667859753 847839631 301695674 782919076 590580260 976173127 396095734 877573098 418021158 660739895 569651894 867598362 233362035 338322695 373278646 989710952 101313835 246691138 326072306 444304809 109314101 115908031 245991814 408284578 548172324 993189434 216954601 436936871 391550264 742009690 964536191 989469395 632719862 959021395 787520269 837531292 753990980 793611927 670889996 883806476 866781289 973186360 246215281 850522650 282833123 840042778 798073094 899223210 962051487 988842905 524974656 934952461 110590302 641248668 79574536 319694937 368628227 906202874 387784631 586035133 695310508 825618100 278677310 507831246 460466711 948242598 754837759 925849671 550677573 618398721 220790412 239973362 670047591 754274714 707769189 863441605 573291071 609854029 433790945 736377520 888071391 894360818 555791264 791772627 828955414 946342210 35349877 917626483 35506650 417942223 136976368 690279888 247676367 322307475 295574799 333541804 467527049 664316907 73122488 929400758 541787081 796479569 375314163 656971631 973485086 986326701 477335319 578151370 213936596 672353665 195957909 652814559 264960060 725745771 364480658 781428406 264232895 608555383 588099425 980416722 682968311 872388510 269268977 435409436 131462410 442853821 193248504 262466345 486943787 866541004 102393296 320682062 987736949 990345958 465450039 715589782 922810044 967571744 676634053 939095475 460144138 516978295 620778455 831361022 890335471 935078386 312651453 623477432 936338811 940087226 85648420 697187544 217296321 808531531 874181555 932490602 345702735 734639425 604749572 708230022 231193050 503355254 987919267 988920325 715221715 877692454 427229111 461891105 254243274 286335918 828770232 901898599 785939000 931198792 125999834 302651386 159046480 433246841 609738394 941872270 66619439 430366270 395418752 970001556 183180846 237139879 595640827 796779724 898040138 905160148 116536741 327015475 27065878 811626967 103889093 741626841 309737699 863873922 406778097 485739867 143077623 172831384 795851062 945285469 472941390 485121405 273028684 483623685 370335963 601692770 219518957 663321175 654671648 678489019 202489562 811606603 775326892 938566783 53680734 858346877 719738349 808141717 249433240 671404431 371598913 422042403 566981199 947415061 434165574 914504196 379903012 831354575 957833400 968089175 515614996 812574119 34087799 352332060 897376063 926396797 406097272 595488081 110833626 732248160 895374488 909866482 87205563 635691442 961243509 967296658 658984136 989821399 918491709 931700317 563692454 620887257 35965091 708783156 243309832 265888514 517997747 927990529 849505299 914664990 305009532 699247149 506090180 939167969 376253968 821584913 915049193 918994677 258152468 317259096 561291187 765365513 645496940 787131789 377685645 909426850 38930886 369231047 166029767 735201496 98879602 338105391 283021642 970197636 195098650 905900859 176597714 462598388 330915211 534499821 486430398 604875510 238317284 436860963 734775758 795985635 542674792 695672840 607350429 967733037 262174665 831585027 844792056 847289632 47147717 374769932 189521743 669348345 269384212 975452006 121896722 251271812 564503492 760669944 777597257 798247859 782154738 971202838 56766368 485989863 666162049 937462178 817280333 980347880 661418843 907682063 973826346 977011997 420715998 619428192 891912852 935484420 414631439 877450173 143969396 871530265 404453294 600702787 924569564 964461535 93833009 494040309 260130834 810705802 106453190 116254522 366960199 638439909 840505790 898286752 153743753 942360351 264316847 908294145 795223578 989735883 148843194 859942562 853309309 977710854 208030762 697801212 802629859 814563950 794228669 981794190 106606973 658783732 921537273 969187219 439473585 457754453 831944780 972579448 5159135 784872171 326909807 614461014 357085126 926535637 886973836 970092899 935014059 955479041 998396875 999177322 902298193 909941301 713134115 971845551 884561804 949915360 244263058 247543626 351517452 762063899 145052277 893955087 524836957 961604119 864897664 866667606 126800033 144048033 478597460 938773198 466679202 861786751 637604957 744366674 600642240 801906400 272004917 963818330 49840478 761733468 9431508 622873136 654775240 875172578 941012374 994720841 49458994 907813936 731723008 955880107 887478910 888112996 14137595 749612004 709597362 958475624 705617647 721576530 955552827 983263032 853194728 876395750 280092211 615478234 417679837 673526862 626151936 861908637 371733584 866261844 744212892 956436595 589647528 869685574 459271027 481955721 709123974 869978959 533446631 909492860 746639237 993558767 636162042 728218286 329842498 875121541 201791851 525649817 193905855 261984378 5201953 320984299 158340846 362804707 262348687 492860759 961822804 985874532 929956047 984875939 406483637 908667497 700944259 851210107 747501341 818206468 932572846 953868885 346050961 515865844 310656665 828780505 146041510 786947821 325584821 444931271 273382160 978870858 406846323 736931337 322254478 771033167 579539522 828386275 589145773 810914778 137517218 590405371 694674997 947017291 368202313 965675189 786996904 877153215 705150965 966965351 819579005 961656033 719340412 933195500 187503497 700693677 893213918 948603061 66566018 322310016 873430915 916526506 966130587 980721591 137738594 365227539 81830102 552510972 195679149 758882064 621150339 637701876 831559580 880847074 697829864 915971172 167908442 345380474 422487970 754499631 858261003 878384619 330377568 790019083 44886870 630522991 340802402 533797223 352263636 606594676 462757636 866812293 217853709 871704841 415150413 653761744 988845875 988862930 27404802 646055022 240026348 720329912 488257747 587634099 6179206 65856493 437057588 868358562 552784310 803122403 193040893 682250086 696450609 748095104 538728653 647387233 417344190 566940091 154526607 763575985 364956993 757430748 229444514 898689708 453125000 666362225 730522266 992478878 822653083 860793459 982590230 987524745 495420589 536977089 946888835 973415717 617139908 780401317 75661098 380878463 735550232 962698286 160804956 379194128 478696667 516856253 509725786 704567765 311630290 950134982 395778204 488347039 211878160 381154576 39886405 195824348 453097524 958201180 846041033 855511417 418483218 669112853 308376333 736691611 196158436 853346643 618054488 737044893 975353066 987672913 455625209 935624686 423439516 488797043 654735668 758096111 607596943 653560141 565519488 840544103 561033261 820289838 807406799 832443890 937722750 943075868 381676738 940693635 833787435 866520860 560140264 677527265 227868865 658896374 330801163 707125064 886910206 911754876 621159280 865397801 843745972 947444588 883906876 931440625 683897292 791545399 870973970 923656736 138013596 762148888 679466711 687044290 678234042 731233901 81506381 871808631 656671883 874795074 324852753 633227324 578775247 629211468 246507279 757430546 933595559 943642842 485040641 610704512 3577968 354353163 512359448 581912440 737200859 818798659 643427526 769108011 618799419 631173991 598840274 734445805 757106890 869854625 521538317 697460439 466547893 479084803 252953368 883226774 833589477 923662225 712636728 782353545 833151122 908003714 25022317 408886233 829233296 877304671 932154485 984167337 280904147 850328682 495776108 784499765 976672283 990388994 944220058 975453939 86951018 256445812 629204445 761619206 275683178 336261934 475774683 687311799 673433358 878134957 456933809 625067161 290192131 784222359 258502855 759465030 226778970 974694409 200355064 353069232 497516768 908397982 98141525 180753830 365440450 739129721 200448933 200460575 522307503 720897715 492539045 646431533 691251855 760102136 874521404 941195931 611887177 946939542 184046349 899611361 877650857 938153974 915791307 971190230 57122355 476184055 770077170 929882808 480402817 796560571 746965244 922274516 219901999 972141702 479522646 877351796 106410155 407635440 957648585 985471978 702261477 753729811 624224881 941945280 524571492 967191421 746805823 757286560 973593876 974995685 941408039 998295956 389629616 660539740 710589319 719906340 319386475 819089293 270722821 961454453 653548814 664600118 190912686 748103157 580168253 622744016 131573400 920974278 413020240 590109401 80615866 756527400 77620697 967123599 570951253 826332761 356103184 446414566 273768594 492091377 302520154 631786982 273147549 277987336 287384506 800062836 751586412 957371828 79383150 715041060 124001071 216275181 567481314 972591381 370645208 686101445 711385575 856126854 258386895 520358622 840377699 988642536 19993006 641266408 165453922 195424517 40732834 111930311 909847448 982204538 825841546 846006486 854182507 884868881 906378131 909098794 235748016 796243845 155535567 222108012 859804469 903733317 776391780 778615457 331561137 708206963 384581187 629587994 314898302 511199516 969153634 969326750 235241506 919016105 822003485 876785363 961294738 962886636 227089179 606847876 5527261 153144646 997776811 998992429 671998970 769813938 159846477 231301304 556133713 649084388 903653484 983808617 232888605 488571028 153508110 436619258 500941627 715103435 372288824 940599253 137411619 938497223 672681692 806014713 586847288 744030188 258182324 876767402 466977186 521508459 339500569 372560079 719943850 876668469 935238291 999177361 587505515 925577803 111594854 365290056 125268729 765307173 899164868 907956446 738422400 886911668 128178746 889610465 801074492 962150861 813807619 890568269 576474749 583121440 544983113 600083575 106366286 931250342 950398538 970180253 787202217 860235570 300476807 706849793 305326338 956331326 847760767 883066657 257850920 588005696 388900652 394847296 858829557 987318154 787696275 919765467 432860992 607497131 973632563 996922006 783007263 927762129 499345645 673258811 837915073 947625695 617915597 984594573 732863641 737031415 106441932 138458714 52919411 316164806 722674460 906538342 981126957 993767963 882980045 943215782 901989190 914254936 656567693 985927589 835531332 936337953 347447248 501734412 568117902 605134346 513538399 522094320 787478302 932954365 225768214 993136747 239819027 733826380 505023258 515416249 647673574 725767017 928253801 932684689 965914229 991944640 767609408 951508263 80735021 301435624 421505954 466727012 964240527 990665792 211642957 834204227 135783663 323268148 446435587 737915981 612834934 842177378 219998516 222505477 621590246 659954893 291472839 339557199 732249412 991082415 227732935 770203768 697799767 820255369 859001357 975978346 913393267 914573973 484345883 613563137 614639575 990834992 96499112 307034148 252620728 358671762 635393483 645757573 572384690 782223872 1315133 116224156 400821331 632772005 455116862 725252112 355037021 457395398 409473253 787559989 117666576 826790911 892165816 992420905 634094002 691643360 892984903 955619443 960987596 964887827 300754407 583810225 239643084 365088032 126329634 766521979 51171179 676026769 356252474 467864744 944116153 974837284 640628487 858764394 816508132 905765755 221903342 649742633 438913926 765296408 360068461 414265856 109231126 262588048 395406372 560065618 13275372 669352944 153941367 566102396 363325196 809236373 635705662 724847531 709087079 946642116 84924687 511806031 648418272 661673059 826402768 919574190 155414009 410974897 657843687 939292510 650016670 677748522 332454753 801503145 260248802 967107573 65750038 766790671 674727101 813216256 845032011 866746022 347261055 479719138 369443572 695872998 443070280 649964191 338638948 874812244 490677479 595114785 123736531 792439016 430665691 655211345 578033283 686663553 627400796 730056654 49135434 327475052 666668710 837615083 977657474 993571147 453561569 738613336 627641207 772435115 196712296 970584308 567938266 801615106 974481206 978819564 555663977 974564258 693499320 731210124 756244344 910973771 4217565 278919122 430854218 804587673 828973897 902954379 735405726 833106341 969108109 972818201 103349022 322467076 943178327 950942752 489303962 962084101 564179138 649265612 167232170 262254018 5390996 257466282 991828440 993674962 338778039 374561268 145366182 271624586 882723066 990964014 233355090 894298323 526874947 643866517 89541504 581030148 582485513 794769574 478438087 801771828 47462744 103681482 399854988 650395074 176040969 473093170 473938765 814965051 367536626 429963645 282342225 660569726 235424503 532557649 894810666 929270260 896369085 920378301 707943073 971227420 779009225 818253988 181940331 942374754 794116364 970464975 348321543 609003936 261956389 539595367 860636167 945480221 621587834 777698283 921535664 947891425 769916211 935588900 107647563 480801144 311332861 884993260 517635863 522929824 145893978 977297376 836326981 917380652 730841321 893353928 865477110 893219137 835029491 984527430 161332186 373954911 451300751 468988614 608299078 609564749 749699484 862431982 8632071 747622387 244747014 352956705 276613358 672510328 504859121 934510216 286301271 869239197 207755701 619208375 775820044 954736807 317071808 381634025 300281414 965865605 503778035 842213998 301042418 433176025 629929517 773015830 374098883 972228645 335758005 453128709 672056711 749895553 828386635 964696172 946248187 987967471 789795984 846326286 141172001 292455088 547162435 811240274 789959462 994322585 103735859 987249716 201211391 632453944 347271820 893551854 879546720 896796679 812555677 981404061 643530874 834987423 869450910 973023631 264378160 782931258 26700067 338537807 648294725 693169220 948027127 989368303 611108259 709315582 209227053 803463436 23922505 378008844 528893947 735429504 818266365 980590932 254705160 485102335 23412262 510073039 291364867 626499626 622911328 767171043 67673514 458644779 474005889 776067974 866418580 950957824 561054901 763781359 841072688 956748200 186124520 583305972 797772951 879914881 671367585 935046774 679943216 971977141 88854490 339891731 843920079 864771507 569393075 585097686 441802891 768355785 474840642 540611094 562190345 726843394 462353445 682809460 759392976 810663392 206537676 929115388 394337277 404302958 234067273 844229282 913966719 957512279 102258703 968412163 452297960 905257272 64897495 225146396 822126132 886405384 23507474 752334458 392164772 707648513 131590457 788506047 162442269 304073219 954369026 981938125 659776574 769591747 662811278 755566629 935794445 960502111 364401405 611018024 643204960 811738690 968471943 983132744 309460800 380326898 37748126 276134528 240840764 936727922 593421320 749927465 139533945 987373137 400199197 615739153 359155725 554998424 874566232 917579924 327211769 889120692 935121077 949381632 685737848 752850367 917008584 954226912 26000529 844598354 982964497 984212636 362049200 412193156 492448834 563021601 168447031 871388540 984106937 989640287 694214787 795459091 385500452 644345821 214495511 344084472 238338851 817506565 480736664 717540598 225101672 836211819 312386241 735745947 255918643 646498589 679027440 736370553 357041412 680127259 423511338 820789036 66666649 276015484 820623603 924338337 224629859 840805105 334652485 715261222 916974605 938997832 919142356 973938564 930975284 974081506 197195793 618371203 696268419 786791273 466983355 520084282 650610428 842945172 59233842 822533880 529067170 858879544 873808051 976545129 670078746 900117631 699206911 728982307 270383574 779838885 624102687 968606196 964329708 966567983 927466410 974221641 606209906 870905774 823971295 993383147 665567400 754804335 169613158 684569643 843157874 893318059 900307690 935745198 534381773 757695091 4363157 227942045 361366624 925596522 138290531 849803462 905040931 978271583 248151990 495421305 634938396 664238813 222027463 683443820 285904221 635232826 294537323 761296264 11870631 410750271 293622090 855871325 32022186 63578396 48499173 95919276 509056856 684905291 910875890 921911318 286676409 788218804 297059802 881025411 400501236 826169290 495468236 792282126 472469363 545678580 970828520 974599406 566585219 831601449 501710730 879157417 803956923 850594723 567862967 973762546 878921083 968809689 544134436 648899724 395401197 936178741 485595183 547166399 595800874 780444997 210886850 225468371 367581181 936510282 782489800 959140676 72009653 600524638 293263237 300106064 326443506 797277869 423530935 630521514 817423762 958025294 208723900 912552469 500258739 866611076 762511802 972417513 948590367 958634885 927128235 943949929 849570722 857748967 964027577 988095366 315835745 754959104 38334012 644823659 885258615 929932981 547198132 616446237 793590022 914103811 220531671 783117381 408960951 824706918 331214657 799666563 470656134 821320976 263656796 520013278 997728639 998406006 868141215 936846340 745806354 792090475 91182998 272453125 314315294 898562069 651719507 843347487 200413540 973432281 219398110 836550219 486782179 702724876 892188072 959235824 106464720 422090413 436740937 497104784 167216711 669395613 374648709 676411673 324878765 329575963 410866153 463173754 28914572 914429437 106593954 464989137 615958488 635195474 947772677 951336429 814989522 993599215 907847897 987863146 673573598 740126253 355368719 524317475 950095357 978418248 938685202 998077815 194391558 622934053 633173493 827046396 69872888 948739534 163845955 926610117 765949312 886104978 70494561 841837266 471420360 789833778 774712483 839870086 130054554 164779138 707940650 764688069 305759207 472514089 332064383 423465553 898548489 927423057 953683505 964520117 206034885 292759030 600858437 953017603 460244224 534444907 879010669 923766949 503596593 824365447 217112214 249440855 24538005 614698775 257676621 783127426 975456894 984972466 82650961 799507051 547436111 548004112 26894882 849238782 601749692 680696597 554748975 806417675 295963279 732933620 986164242 987928544 356416698 594702584 65258405 584611511 601574549 790814446 101471157 511317271 468464083 486585303 61956594 702528163 935928162 937093212 866896928 880222863 774724053 948074479 576995339 836243232 243897720 676350623 885590633 887223718 361798598 508760127 473384349 773043072 131629200 358039604 683426763 802301699 931905839 972033574 968672316 983876549 392947745 635537033 929324597 992583043 949837207 986205596 874544913 913866205 311543809 489175245 928962527 950506045 464068281 786899634 902344929 988934117 113836927 171276686 463657162 723791527 142054795 745280262 186320368 312577556 580393087 955339218 768009796 866243763 359426746 829573036 905084629 961202684 793666839 841249065 580262245 905681860 85808648 429024829 25978973 344369050 468837753 781652922 982163504 983028609 306210027 736566542 518990142 992634540 825044546 890652599 55467793 926282878 648174365 829457532 39121474 749130795 910056774 916604475 649823192 899623602 529510158 757677702 482921396 988792885 158077643 554554856 187053803 289402592 183573897 295605432 574259732 863642234 670961578 690364286 141061059 506647834 855135048 901870988 598371542 883921792 50155195 477957919 632641975 772584131 139432320 193917739 895402385 946700873 984471073 997637502 588040065 940508512 413922383 453960198 314431596 883494148 365635270 738499933 801101204 844003407 913468111 914084812 711448451 893682977 556837078 778325413 986104884 990419222 19337909 524773498 347542944 608030428 370604967 950104977 710584768 844035452 328034700 934391153 191005567 201888565 749336463 836532178 581140110 681262804 254175874 971605850 560008861 980772187 64028099 168663583 535661829 729612286 706318572 867937425 649225153 985586711 872805137 883151210 491009517 828063079 599137111 647501641 241570194 775902362 599735262 931677182 880212584 975522066 315437032 594704152 214970381 642339277 708660824 741750334 149631412 514889249 454053575 553949704 169397899 354788179 919387250 960678362 382467428 984774020 136917343 733442058 727214339 760564657 258091348 551651231 298549179 332506643 201939173 890277638 19790407 48163096 33144693 993648295 95882439 298187218 983517450 999214909 499592949 793236378 370125054 808341504 774043856 911829812 287100764 587656772 313337670 481046296 612220772 764751498 607677588 960598172 131631197 267808623 441031921 693291481 426489468 750887727 357671371 588095256 369897785 871060025 750959248 955951464 19723687 401750705 217515821 976289656 502461493 605898458 778304826 788474323 563806894 900681403 644309122 921735849 282885684 918072921 474010196 947626813 776795378 866729152 401638877 704336297 334976450 646063975 998723858 999191891 654579743 985748058 969704638 991884340 641143054 996145495 940614305 973933107 395117866 411681209 475323700 639234764 944338149 967599814 875889507 977178456 629925185 643230360 706125858 815041359 911959131 938107522 333655799 881775712 752159492 776455624 285927492 458460724 275574406 327160211 42120074 783752625 32942692 640443783 677994281 926224397 326195818 493821332 317910482 758938915 30041300 666681264 706150031 952392174 125757291 292685690 365646407 558550588 270087235 579979076 797275754 836557934 610490778 745907705 567557818 858816081 693846570 807202027 768151999 972351353 209605057 852990592 794557616 996207849 657060938 834067314 898686107 925732116 561493677 938316208 968029956 987542882 971822777 977339210 366965389 761610084 492822244 991542610 713937338 821577668 903722235 991268057 680532545 999188947 208674409 374839302 748814636 865048025 98531756 278409500 724227404 855747009 834213447 963711596 489547354 816441744 265341912 946563447 537313934 691158327 423458469 967387165 268078298 660399866 198949488 219051515 643543300 706391804 679888185 759856445 578975789 883721544 348988904 894404670 576718617 754860080 485278744 530330163 790228793 919754962 97428264 466497965 681115342 937018891 269346237 577839070 540107503 799718449 84591959 649171258 894515484 911607260 938234821 971696075 156997029 340758778 339377704 600594329 992085041 994719601 748482548 942764436 169687626 455619871 892271703 894514150 156672244 403198603 524596396 567188554 537702208 807163911 559672710 910276498 519743953 881918987 155063370 406384568 626427728 838852578 297455879 657218648 727802934 971068281 824091313 832516034 412731302 622751228 753673525 948759214 831825481 926269820 843527756 958365156 866633215 868554762 322431607 492827799 13186337 824783046 530542607 994162825 859058166 918965410 240981732 995337415 649471824 928725153 290730131 995444010 263180497 699442064 362332768 628662522 729422200 769574719 817185807 993952256 433424159 645487873 519263219 733896338 121317358 385593013 317406040 606425220 65974524 689067703 289527847 934464281 703611227 884723086 284573784 787958654 259743127 508162543 792548545 928853018 206647504 493852028 747026269 865570683 533514395 623155495 734345596 978875177 605016394 670925331 765800720 931063657 791911304 810026641 360146232 698791291 391375577 501227501 393609224 997433328 244905838 415174617 997765472 998174644 423238175 899726399 595684407 899330411 807865773 937807790 514478606 805695418 128206575 167795765 23525976 892591755 316558929 781910924 997102825 998999454 177030483 409409974 312074452 709176853 823341888 962944446 172597054 223074277 68030973 252200325 519132740 962717901 873694386 910527905 979593921 991800385 919980484 995225916 867784296 902041491 527900742 974455908 677344622 823507721 85185103 994813586 355446649 402867550 519569628 806861328 724980522 752251249 181612182 732025862 610834657 624219469 935097822 938653527 530194119 961487359 832903317 903193851 397944213 744230752 647406388 878207884 579413564 899679473 876075056 882666835 13210255 895157290 514762735 535340055 209862690 507291288 767179172 817786301 438232153 688318414 145030501 787222891 722538801 754611739 636801896 900568840 289670030 614125566 353876291 783120963 398084573 646780856 768857308 917159833 276883800 761556043 167760636 366920038 489647077 936949303 322238650 437950060 857330609 978301478 866115444 960720584 61454509 244828867 819208656 939966511 303298757 325830742 59954763 302982951 13579596 784151790 192399290 737044366 887927493 994638326 429201704 440438455 939503498 954014457 205653084 218283482 38885180 157026295 804225369 812173195 152407951 348814637 847160823 959295430 514427837 768149262 832414932 994548997 252339471 549762702 453527815 569649655 567088242 705617037 116277015 311051941 32485117 95187808 530935307 686189073 840071303 903349676 326670575 837057728 940381302 965934922 183286359 919476339 759951446 809072361 501225735 570218347 116481882 975691673 99983395 455340421 312509707 939155382 423997889 750569977 842017033 861033307 134770430 142465452 954722929 960752526 415869506 947775965 262277199 389019775 973006142 998395408 531943450 933312038 720139294 837325474 623546433 948959404 356094294 389520995 269282326 340378314 901692565 906983337 541165996 706621883 439218558 912790190 737537003 775358550 961985511 971533473 930828643 985230014 480882748 657525102 96968823 375471496 64126597 903267873 518434047 584888906 184666973 507809449 980156452 982219704 270022621 480446472 250805599 356851887 54332256 71801343 866711032 930887930 333928682 746199477 585851015 683982811 430332821 578779255 243694243 352904011 262431858 852476710 613584772 946835965 978760412 991278556 614254638 738184589 60953366 772146351 932453577 992171722 748986327 770815098 100514176 148935351 755586370 922436132 178285469 730243830 110204771 154242845 775179953 957410219 559314485 621611913 960971385 990645134 678338534 870352611 321622017 556346090 370759767 937675546 716888896 781149609 254594855 447463533 304830820 534828355 264333730 909209264 106030214 308387649 196562178 502281285 58086774 688975361 240410159 661321769 816857662 839873419 740833207 861733296 910647110 913242924 121590420 518508888 43624061 633856666 168620458 340332543 797670629 855037740 96931240 721623365 371263977 982712057 352778432 784469908 919182306 962053227 460006574 944498838 575253595 631408656 721967304 768079359 255106924 917280335 438927062 811172525 843560365 887560873 859793536 927531241 637614571 869110907 840245405 879629441 514702985 621210920 165451462 937404468 929106004 954458508 148593939 919134982 5328401 682312475 578674721 823532118 602779850 999188639 341531394 507858694 876426543 945432905 33833571 441904433 115149894 233178884 881648643 934934807 433125630 790530890 454316733 924472680 705427393 971042660 205071964 629151993 35249829 799301489 720178550 728490141 416362465 562506650 894253378 944664297 572391085 814270452 858434915 867828252 581847572 670123524 298886394 649677399 600797302 929399714 24462656 578140484 379880482 579600735 400198564 504602898 236612677 855487464 725768240 758745336 902801911 952868374 205527295 360420551 675165999 716049672 841210193 996995180 304575534 903359125 918225321 998319543 998021452 999331241 891335829 895896092 696414180 902009487 130847660 784843716 52069422 979365433 619785043 983185848 390068312 609484589 125053795 708927103 893917540 948101001 65310449 366197174 878873782 998326653 208856339 643934255 116500075 807329756 22739550 586507433 125074339 960542076 119878388 417280882 550791658 706747843 408371071 465535917 304377720 522769931 872404978 992210513 760852539 849488890 239673872 542395923 591610971 904834932 972647421 984296956 673591960 924102306 993539870 994836985 332785925 482498177 899481949 952449575 154129185 583859137 125639822 824478716 266940456 802036005 305743658 796066599 426824459 570301469 771166738 865847471 137921264 586514400 706155517 762228988 598375111 950390528 379471970 563562841 181749147 329821314 592463036 623667148 922031344 927309497 441608704 815079429 317010333 543932609 633255487 843813327 789135302 820626887 657128620 806816559 195523625 897897770 553461749 879284236 244631956 362568953 70277124 308778115 512042615 853947593 84417011 579136576 443502187 642280200 630131688 662324517 103354092 969642114 28901269 783120179 570275786 740664977 51947542 546574762 582240504 895287304 601080054 608331242 949230128 965644489 153907972 243134997 738469090 801734906 83182532 976963043 113826689 673697877 839258954 889756373 274402266 531977807 908279299 938839897 483594964 951494745 132867841 144501288 85554473 247550905 4539091 263950434 403450613 584642181 12278808 489830962 508797778 676020982 112888478 989634358 164280221 211396658 83067236 693460087 704251255 880509711 139255083 382048371 909653973 946620678 768942825 870985866 118723358 992008957 981242532 996328625 992587821 993300987 119881116 386452871 561169806 994862664 300915964 830415049 20208528 483287888 781251834 862085835 579129676 655443810 492686886 547859338 18788262 473013810 774028084 775446695 707832930 720856009 848420829 874804435 489053559 602633021 836595633 860834362 410675435 846166166 311677950 654115022 608701538 989216822 167223840 806296366 127718083 385279915 869641671 950805647 976286674 984440759 652296210 836979925 712437851 722510756 935914596 978690266 791391880 934470655 505929898 591717865 901342073 912196196 195200413 536520678 335059420 608344736 496500110 644772863 314006059 685161871 460985301 757179241 543889210 653653963 112768870 526995625 914090862 928826818 859353551 866518184 296199199 817339581 674031429 949068167 235271375 756541900 974158672 979481849 202482701 562411774 666885081 690794966 783613245 818322091 837889937 945090517 999055192 999382705 475556337 561280349 684399296 937506971 732576122 944891461 240533752 399733115 6508604 467658132 568104699 854661841 494648267 539975412 291757894 536668363 844140885 852487936 113869127 519988199 763893048 947827297 555818007 947142412 44188648 140611324 735526847 736879678 88836743 480777920 480857222 894548755 246494119 247374243 530089700 671031302 704408852 743229498 840548091 929011467 121074426 994120812 370857327 657891243 780686690 946892995 78983869 545691534 130392849 300318702 187577443 397637975 391019240 963197271 387389651 480397084 660024537 938412016 149174994 978503172 389381211 603446916 773600161 841178143 676247567 877075257 648928550 688810149 978329342 980382921 422835411 726464764 201817582 530304027 744689496 881041230 171506133 602211197 963090805 990492185 941321323 998802896 294712575 680765257 767868532 927833193 863001521 942141078 389862013 392153348 430091884 622575620 349630182 451816658 174957313 669493682 537393732 849242695 769278928 942816118 846790905 984046048 127972732 303184262 279752573 315883162 700233279 840414211 920744130 994243003 836075653 836442910 191729873 193114503 538797806 624493273 834706021 876652410 423606873 562034036 842373574 854730286 577446284 789813742 976806570 981451777 281826802 431012476 422252016 488493975 585200870 699423500 774319769 974365687 883779003 921880625 891730623 915236680 262070382 505457156 925635492 958047581 442758810 489491071 465492921 564115001 302373453 656368400 688257773 701912674 965420359 992195365 926246321 998612579 900107834 997472530 31010457 984480285 43270016 251398020 249039109 750663260 628845541 731106218 193821410 541783453 52636579 880836021 125060924 658840837 542830845 699120247 378970133 720741745 712141761 957190812 278426324 826641926 178054042 390871553 858027537 969886480 364376462 407455780 845516728 914738771 6167546 288736694 576688248 897396056 967738811 986405741 974478602 977956257 541118181 561313462 815646702 987611685 26544519 190237944 795193526 994467209 937951380 974774495 551371370 627966937 465729525 909340527 552032092 668231122 441441314 475261167 536577345 792675140 734003627 790841902 405411541 865713599 66364317 424861497 889735028 952263664 742898265 822985100 677462860 937041290 233386131 528559097 187222153 222468159 499987685 945922321 302311848 495641840 574544183 577777853 850536636 913862219 1505971 66178241 360945421 958068924 858736869 878238291 43268640 353241733 901069357 983957775 851647247 994795426 523277126 755511792 892907904 949026656 690571216 839822523 492096341 576437752 833474263 895878705 53071250 482047003 892995921 920509579 937843575 940172869 546652186 768741146 56813000 339134331 415675981 527392037 340388577 987586523 920493882 970734760 592042647 744029588 931512035 992764846 855417739 915058653 537634320 601901890 109184871 884841281 24720113 897483908 820900136 987937442 783181749 998460160 711351729 983373444 658088890 702531013 340124603 500545423 436000670 487079710 122180405 778175614 492360830 618512004 28183377 43758326 250773461 445798493 580507481 694841703 275195693 485448614 929477998 930245118 746571459 773733378 33477849 42236704 304857272 387166826 153256290 537817683 534513840 786998542 310123504 577261769 705575295 744994413 79548814 616874650 269732314 567254753 162588588 215527576 841723144 964802137 128489625 154540241 114171058 911341294 78487281 455749061 129182202 944870000 17371130 370805320 643754916 900861543 735638543 841753581 687824874 717694264 359552341 586844360 877766244 914263299 163265690 276693390 694960275 810655670 743590225 883987292 637245572 859657607 794764114 851554173 338165437 987715818 217933101 908102819 804316496 929473368 740489564 795516860 217502518 997027912 188943394 656027388 186786472 725608057 47980703 668585121 595188577 677308710 277941644 551510176 603400062 772925888 649476715 909037788 209223677 403749047 252449165 429037492 561646795 722005247 886541817 952092455 260051277 365652271 67555754 281836855 69720075 911788602 789361722 957451160 730677790 820402840 57101929 835730877 510661828 555060686 988318860 997188941 51821479 121390908 410092053 982292645 30492530 143520743 788543383 941579472 161399219 321856088 108597618 692594797 105353758 755192327 27602324 143445706 978014144 989393561 928533825 971481380 179052167 378195209 216109217 669205278 89893904 326329393 188578298 998945623 521832767 970464542 527795456 660002743 682233056 801408187 980770771 984640276 349437609 376610822 979485191 997535073 597753236 896133025 291487217 577320814 509315423 605612023 453150844 878760236 170545759 399833256 931638446 970812645 730402246 774375066 311121225 932267216 390471426 609567275 425930173 633355941 220388192 569061953 760590354 943595856 409992745 574629457 587334266 721206465 684406681 858141723 634662237 985727681 548925972 906021546 887624391 935105264 250044164 602007253 905300711 990580081 990994583 992342550 744709969 888510191 49127015 409852786 954250654 964363327 929337258 977156787 391411394 824095481 417225480 892597367 983463992 987603049 720202194 890895814 75660846 803539515 212464882 729180535 716988035 950996925 783271776 847970322 141331558 818546914 911610266 911713639 633717079 660076416 358740403 730962855 257520398 402806804 965478462 988328432 795461399 844372927 772354708 900004020 413618667 972684675 179817475 229173920 79867237 970674361 369784115 751401722 828558579 940660185 528788596 728539861 640926803 980557155 432662367 683740769 831651138 890215039 847112625 908925559 5599228 846843899 493322530 916400077 72639317 669961544 403151150 797667225 741502163 856643803 53075225 275364884 683770323 761694093 266706827 384443989 537395310 739271360 479833517 938101368 43137413 118883602 17628143 91238154 729223703 743830506 42147711 666202106 91914829 684377709 937310622 992271017 568611842 941599162 865860263 930877145 467381213 880661344 585378279 957440798 59241772 372775595 619033953 922037929 782576314 854993943 949349424 963680215 391974778 866602000 747876271 894012557 703521327 744839756 950544840 971717339 871719283 889645092 988126042 999167150 19791791 600212151 484884736 935940372 324931138 634911634 420123759 912252447 152697400 977174459 117185144 875461522 668779027 770344860 576477233 999280813 241925937 841952423 888005737 932314788 396664412 736991055 734301158 910522843 768433325 788664152 838835661 851970495 578655382 764566757 741784509 893258154 291204975 697841275 563062871 641226053 495746844 608903988 977413866 979487672 727139912 747298203 744846417 784523742 509098414 585526234 860099493 927856178 678870997 836783887 701354159 984627772 241852045 512874057 967628075 991632767 705215165 933384691 172916285 245782658 681613674 686192981 937026835 956299222 878815490 927810984 149443031 616537817 548340873 991453025 939571318 975380378 51129776 727225322 338048584 841833917 441996800 480443540 93979226 598839953 363896668 822561461 717861213 865567212 373881128 565922289 469991633 813070723 881388193 987074357 312609879 647183365 283434053 795246289 303864932 723839720 154821526 645838721 49822467 631155241 429357152 836894850 641706074 851700962 513203926 847781500 822240242 942602762 573285081 696868518 558948222 991386622 13908974 163779561 297138773 364296137 692956980 819312522 793051210 891464936 958105963 981453881 727068752 888100816 495049265 912848883 314974857 588355038 513437768 890767816 866901725 910399671 79393315 291730340 915807675 920686067 298780826 361534373 90194028 507043773 613268730 717829823 537413475 911414881 112852352 731587378 646630016 770017020 313176873 578292795 843446787 850371511 960603705 997770882 519623841 957913778 10751966 981141257 710410290 765630972 761726897 941108190 107969597 933899203 716244245 909996842 470759824 955920198 65663294 295088315 193248216 447864312 815391282 830288025 4700789 574120775 219623002 953678816 217742912 665530790 209449445 764497756 162265472 663061993 569581062 651232296 801176308 985796259 944540237 995097219 87178638 669606079 828621026 869358919 703385612 760905227 404219315 448037247 351136652 656946026 72532086 540304255 940070169 961406001 895248713 947617708 188422464 352250949 867455859 973675474 482659395 935610238 116841699 982409521 482194910 736972334 600599524 724568174 443930622 554730829 137978896 962302991 22963208 64044202 10256828 641104574 838806010 994678108 794743224 810952433 591129041 746350824 523340020 651637069 256595068 427287434 128916543 741793016 353841927 486056028 272674039 574473728 346278811 648288924 862626378 891008879 306539270 508785782 733873872 890133508 921828141 975958517 83859966 905337881 824345197 895908199 175535106 906789944 381856384 759382612 687189265 961099823 790550307 943157364 383902364 432703861 724713006 726790738 703627094 981563031 733076917 955603304 279219009 714570014 968217044 990954382 249218508 361620430 487802954 694808718 413459859 494913037 982265232 989399358 832480741 855062824 117650128 739525829 878330248 989189662 109136162 709578987 880925905 902055437 512316174 942182319 307825688 512552340 5262239 799877941 328310572 900010697 715393793 941737956 741863305 877717910 233487162 944050583 562103051 857281507 142227223 495832380 976940236 998429317 903183603 910282480 801731912 804052211 84244319 518160673 743449894 839326959 958929255 989750383 398050963 992255018 994423681 994483956 975570346 993623104 541258896 842218384 858180383 964235934 935896945 942866017 340980452 812422790 584878065 755125390 564861417 800282502 68998108 854206608 390969833 597656820 203473326 211388209 844681431 964846827 168297714 339209520 43638630 414742617 108895705 600324077 373724311 612897167 253483243 513713403 720547432 950938084 710081185 821266965 22077747 578982048 951009606 960142025 351400124 507613649 364912928 367824583 786140721 922168234 978082718 988976001 398814546 559338764 650973654 789774715 164411091 361304948 759674295 885276278 623581860 785504304 781327231 862931274 429174817 436757562 487260112 909368026 411582021 516732234 659891204 691867753 792934696 941523038 850103910 855416092 631809725 741111495 177922212 718472277 214886556 644711834 799754869 824192019 557850975 709126840 593337127 970716261 309948206 553610099 954559794 990461624 753498142 780886198 519782022 767525005 429709381 540450428 118251544 426880889 116661474 431944708 302258572 808230892 263571758 470077071 119522480 472661478 761227199 958081747 486160457 658904801 759268768 897813720 723512080 769045191 540765204 880510822 880146008 988170486 831216632 902541478 200296031 960053871 421865722 995497277 912682794 964727475 679000684 708187744 720209064 849571346 154362561 467064026 691117580 893164427 844068768 948811490 679260388 893968197 97942271 381674480 788264705 914342776 67187806 651809144 986626145 999132266 471586913 771416522 721947580 899866216 959789559 992540401 764854781 906366593 879774299 974435727 225993241 779172215 832755619 916792378 70790196 799925377 775365642 844273720 484943570 510619250 731001529 933435123 465770708 875880778 670479915 934711746 857673799 880602120 978881645 985815594 296232873 896300554 833201667 883214415 952329936 964993801 411354595 470191305 795634331 819964518 270289295 448173740 882806444 935281094 753336745 759469697 509301096 789156657 355675403 893988303 239047209 446546833 527916132 629522597 676741326 881695472 848506431 954972762 938491727 939009771 799039170 848001178 951248759 990773561 471720867 737325797 792457765 981875749 622093841 678142712 207105929 940790860 722859653 933717799 275396312 585377858 291661505 680903746 165721235 203210348 16440546 129458515 469540308 915152268 687619496 700025037 916632731 972312748 563689257 716245783 578511448 653826960 109606092 162755105 934031729 944378166 145880846 934383175 924705335 944335324 292308339 314795740 342841486 584459091 899755617 937325165 411009676 834407155 782863274 874702049 551518020 563597451 132263514 475813346 305425605 687122190 688631417 775981436 854621922 936669555 911894603 976237293 496966088 987548241 239657745 609533850 914422546 998211607 690542051 752942320 182380981 555132156 316133422 796204287 239264162 727538711 385572690 616326405 123421719 886996733 109959115 483141019 603065532 791441363 364417699 501305676 599029473 971811839 74959666 987856724 777114174 850364863 410687648 792230156 728206236 915082687 667445457 938603850 189865559 965118515 585427127 961165507 931722796 972392706 408023355 482820143 764700028 811989804 616094746 768356755 425886649 828688633 97731298 543732043 118526700 125560322 868003626 977977289 824443991 928281905 494187744 707756643 89593675 517066542 955330440 997183559 884111747 987410292 685262546 904840586 836381908 905289350 491141993 521821484 7535879 949898954 335168119 482011297 700280711 894337122 983523986 988107324 313599691 854536083 125164968 553049370 912067295 974839237 33947776 818232792 942709094 988052336 830440126 870846518 555495622 759808003 167161438 605858476 427972608 745771888 439532553 738004652 726448507 918016339 81856732 891931644 992691294 993628606 892547827 932403196 869824767 869987093 107221462 333448960 155812490 235497704 332564342 960813206 97752424 451383454 267251851 886171284 617212709 711222516 129754657 458951430 117379507 766816151 130453958 812594803 315082711 900132980 454897359 514390950 288388316 655699089 104952786 236963773 998216372 999006117 183019804 862064577 268775638 291235791 711959823 830081551 782238841 813285433 181683629 679457637 269976596 537870550 438343658 470368725 979690388 986783500 333822553 886489983 365824396 865547828 983492306 989126974 699930028 786965194 735152896 857481087 644741473 979177149 453148309 877116587 277739840 369071206 165598942 359599433 762012390 910179232 454610349 502885815 99195351 192095429 893577507 927652678 214628959 980554050 195692065 384981419 377365643 659866317 997940160 999290020 902387640 975146477 609805266 731498867 222416243 290266302 879862913 956356891 815019572 913261283 201564084 373354440 503266751 947061352 603940164 879050771 173921052 441757499 234854881 667302699 464352420 592220420 645412162 862498268 654273193 924351325 300941194 394326895 99338546 460900283 279685620 448180653 182411295 296746518 301404894 837529168 988455754 992557488 641728666 686324459 646784806 663569364 182914083 696092428 776557560 944761867 695632665 943811239 150868605 412004947 423203876 705441749 337353790 986845528 458244687 679080764 837512737 912091167 207942205 531202577 860511109 903706043 141813981 625126943 298951841 616560296 461080538 891678533 128216392 416363970 335408890 524586615 175451381 965758794 358190 402609370 69763595 985866679 400199419 527703065 163150792 981528224 431571688 552318760 447778095 930645821 654877423 957996777 472231682 638586278 838505797 847598496 486335719 656746441 362854450 945764336 294920703 605354530 920890149 961561490 762054685 891406257 907697528 987836613 161783781 752441632 337505017 420502426 795905172 949423243 935983004 973033203 363336159 844702887 649452313 744418936 628221117 791962375 661420653 742686485 548000299 989145880 461634460 518768206 231008754 957627677 750473633 773086825 271054350 518164710 444292405 880165664 216361012 543039218 700846179 934529845 161925627 281790723 529759007 549743238 996877045 998105840 846260757 968339451 374314907 621836041 13760868 912616958 939651561 972554162 306488353 603599617 859530162 942538441 680475199 918116972 544178705 554568093 853371966 869947968 967729686 994690883 157261983 331945821 566055969 867308640 980630083 981202679 635218678 959102663 990904448 993011953 990435007 990729202 221797796 858865183 604965842 886475741 455099909 710631670 33718565 993541505 781865947 993095501 630604343 763611001 555211572 962637062 972286689 978746390 141102527 800744999 992455680 998971413 923979542 931192617 267064472 658717039 756268235 816701277 630634862 894839994 500124737 687714916 136285078 168264819 621276979 736488769 363180488 396864967 657433180 961391120 187964830 490950677 184343495 255547629 232256791 350022433 746891448 857591153 445453277 873755028 969774326 972895512 852833186 889420403 185389817 533200501 838014294 992944479 262432208 325586248 946380902 957365335 381923711 520860002 507360902 735919576 844071113 854770179 717712549 989108383 915445232 949480425 569562681 600159830 395531185 809017172 584036074 986911322 7582762 756202626 325783208 668181857 853242266 923528099 845926761 949167216 766821410 863624182 747141975 801807002 492485342 686009042 952888619 968941530 237279682 395206242 425238370 634613444 82714398 590844872 93265748 227061217 989447642 996972644 586397785 927564985 970026218 995991623 740917457 888534693 733080071 996627588 300538268 805663972 808043831 816778168 326446196 382447069 845460057 867631646 342391949 577982863 583082401 699443159 840255213 975548553 1416337 911576662 115294680 944780073 249242080 355321546 52295128 795572073 820725892 832640929 188499786 717157079 114314926 695651290 386265081 806603365 189600061 239200211 15097221 278144962 781375943 898114265 671131081 913252677 97245218 694910390 691980749 724228555 681607303 735041256 690295918 916521722 307403890 947587948 521346277 965767548 835345661 961995227 181037049 403139716 503241562 619924053 287237297 964585382 605610568 952096448 640930244 662401095 79947885 867340079 541389562 577438971 530521150 796598201 159813270 480752204 69823006 210838378 477549016 632878690 890772639 967762538 899038240 967173030 66092785 919951128 138597404 715196582 986009119 994961280 198787111 737718296 853750332 868877562 45937086 877219466 461221 277359157 526234810 875425366 195041594 620459006 435429985 544026361 593285389 691200486 178377821 613044933 481648419 822570957 768513461 835821902 933022995 951237947 226824357 710376671 955410155 980384489 430590622 864600409 625922603 648744559 111878736 466867239 43277314 640108988 206873866 836418573 338405550 723731377 799006623 854859533 954873232 985148912 735298322 792292733 351115589 922862990 707984008 817778367 808882645 868118194 135670709 277304446 492550947 496865496 207702903 525505393 915231863 928480639 721910137 809084749 40471412 716559484 399568026 451762465 869651275 881796589 326416513 330724988 426243863 677631060 995857994 997002304 876669843 922027767 675235756 841354357 370445334 499784702 792845987 860570086 878135173 991043084 484325881 649262269 285555039 606326715 810147684 820698115 99739510 122246925 426474354 630661847 489982139 908157678 775933611 910937418 841160507 986466835 487841009 854837644 523291285 845581467 682578205 908995575 412899220 532242631 481049776 957028419 583945561 627198357 77523508 530983647 261540902 735004821 1920728 229976890 153552082 553148108 471709418 476381176 392511169 840156618 103718937 113943773 433915192 690344065 732789504 831659820 846149906 986367162 914264378 985409189 817252790 998976452 266596872 762227398 599471815 867124499 22457485 101092943 944961805 997407889 85832857 884721223 917854071 935599462 34973520 178338479 910155440 927402611 824896426 830547844 875525167 909480932 600260514 726215045 398608975 922691481 913352809 948057092 753621262 847779434 697424395 873068336 229138470 547392833 859583666 873341835 562560660 633645600 986251005 995859268 453849140 665109724 208925216 882177394 132607313 913935141 768670494 912335732 317833845 816483855 470222219 859947685 466335233 742253930 815830987 882075766 322580775 957043490 958442917 976060971 104471274 297383320 420137833 907224354 564361025 989899979 6146366 450440080 379185656 639147019 665669253 666957034 183771395 633143349 187559249 324500677 800514588 884526926 521373201 781678190 10415221 931668328 837160720 939469288 49383126 545110378 418267609 804852496 845555352 881236062 451638482 533944940 886792581 960873946 859979868 987634628 72735044 676564748 214337181 823837009 743702039 936588239 818693426 953181330 471635202 885740600 196029338 272765496 642236033 653617091 207993649 945513029 187967788 556914997 867095233 893532318 760092917 770229682 299986678 449622853 463139091 978579355 119470477 931084544 235008799 423841497 459183483 546987838 272594381 325239662 174835122 578957408 129839592 674795006 645003678 895405503 362418235 483172780 616870085 961051047 279761072 725094885 128303716 432253250 12573840 148873807 442417412 805481036 209048214 641569798 31608663 152526937 391888463 773924282 500125320 584997645 454173542 709649894 407287570 577082824 867361493 928747019 317987291 610686585 606166641 689205483 139522814 441511985 643078123 751667089 298538534 951285030 99058712 815301277 495458669 601490656 762483671 818229984 586191701 841424869 605789605 930935770 216329377 570111103 274940718 631402092 39128171 677424484 402456476 531569081 311100884 936514246 326428730 816041929 952273192 987802985 103318218 387813992 451986881 607475019 513287242 794563377 382566301 566441380 795018773 849785514 871037870 913443046 246359927 532931063 261972964 884909059 393020433 703954544 613131092 721429282 683672726 698215884 699428217 966429281 502285485 722198332 458318338 504893076 969609046 992699347 253192767 807833998 823727832 954974960 262013717 321835225 517840020 597827058 653286970 827366048 251142667 887165782 542640660 582668289 806955563 901776033 345640468 915649126 470730353 836531565 594460251 600364616 899713050 910905558 910545898 998354330 255698761 785132830 385390122 797864542 714235520 962759263 338064395 761967892 918844193 989032926 282689510 822296621 548833795 995283230 222917104 914289660 954160809 965292152 236424724 419025251 470286328 527490306 297478125 844422646 20492975 107204534 948260613 949696277 175213778 406540854 363241005 779547794 190290252 261495673 898399406 902157781 207174951 921485183 854016066 993220273 82702365 252167318 389888066 969177139 28701549 118025437 264860110 731003475 859836317 911916016 898410982 939870884 195182488 573895030 177362619 783996696 935491667 975746621 675691624 794918885 942762994 948618738 906516719 975418369 217332936 690844149 638364711 865407555 437228965 719159215 890464767 898569232 611718739 744724688 437994032 959440443 813845902 902341989 204401224 500357671 199095935 666857594 864900163 956117515 429139899 565719295 925622570 941189294 324705089 821018546 275961658 458182836 613778382 825456893 612552732 965387229 536450190 874639591 338842124 582041445 311648050 755403055 768341979 942988231 719700459 997004991 904275060 959563933 227933025 672392009 999279214 999389061 641521961 676422174 247570893 405833360 132132641 533974508 897492031 917951030 41265642 289556111 267270341 872237342 69428078 955899451 580886373 714469934 626824419 872396188 494840392 644309023 743722861 803750127 416939576 510302621 131571269 708757744 247586300 382511052 47333547 612135646 866876066 928829027 148817580 502040496 203474346 244269272 51387648 757720541 386954585 610997688 490121294 697177055 559255229 821280273 806602930 939529427 880384859 925341721 703432133 885927770 899844744 985390795 895802438 976198777 203050751 640868082 426132256 973338280 445195084 485625199 981430925 997447558 202896734 414722458 464252392 984972884 660465259 786549975 71364971 495686000 131484428 504781498 895453548 910476615 262709909 620097029 581764126 999335532 936674002 937997937 157788120 662567541 739484718 815788411 321302550 775532724 519339859 606024804 987742973 995285694 559018557 909790000 799436851 864257276 32153574 396854251 664500883 817254946 191536475 363548353 960794062 971539713 372641771 389733673 339974595 583956232 606893186 763271426 346384751 589481701 647088028 718421695 433627983 680324359 519087779 747666024 211024163 313572957 775151000 987535588 29582970 162765088 866979967 917929225 933512150 984658119 385342432 452091108 700894603 769606439 491665801 918310890 731564521 940380031 978880966 990821646 607817528 918318176 306412004 918306830 733629407 832117348 221317129 408929014 471575005 842303868 714090869 972885056 81939802 441901081 428489227 805919632 349606147 576630596 950746295 988246410 797181805 951003405 610874708 995278581 105452857 667381310 9879716 914006285 970205643 991637881 968530313 989291303 404471552 724886713 981238563 986965822 936511331 945094737 781262326 814204171 347222332 386616054 548754613 759114644 568748885 674372245 802329798 878385706 958262318 998831124 453250736 597511945 400749400 735306503 417134191 766496200 810535100 910042420 429761257 647519617 534297368 680721377 437514513 635527470 572864959 773427814 925599547 958744867 121621117 349942769 143704149 651323083 328442154 519934748 473685626 795551503 147090303 612303160 975435118 992278840 534012442 981811506 675588978 828025794 749878130 962225943 134166539 179134546 966279147 990277140 689890579 827171679 778944657 798258426 982676797 996803434 59462013 514160812 708796137 900055283 398931849 507678451 311747905 803586188 556982948 733390806 99050630 373178251 827884202 897378181 548578651 961145598 146461443 492867558 701924444 800922141 41716708 960918544 362400739 988540833 678122510 843513040 963004918 979073434 693617675 962878489 634200044 966815840 741942533 950238037 405793517 929492334 608609242 767520581 70365402 446276167 692598821 758241850 469138085 877855023 387646318 656031837 470976397 735671425 634668618 792984834 836737894 867640818 558504062 842433280 183102262 230334813 225072230 819445608 1669069 926727529 382782088 544356671 237798367 760924992 679026236 958339912 486596088 952270245 837682312 937417247 801568427 930847395 498148816 854317779 659845534 664827469 441796327 813628312 865473236 899507866 686402226 719759452 190801899 774717713 491065834 899743456 734502746 950978237 131647978 505581326 828484148 931830752 242070840 959919024 331206554 419266941 401124878 944854766 234820263 715565812 325748684 374892607 986780164 987238137 21878132 587206812 388517338 817227203 736721599 969217901 184840356 490017518 753641802 797050301 824171729 942370660 68090325 679237357 364738080 560883842 955225994 961109423 497409957 763651988 231445377 313898864 735610652 858343446 615895029 929220626 815294662 884306618 427950306 689004572 205645227 404490491 30264952 825251722 340736328 989533290 143704068 997750956 85573344 603074708 191761406 492101563 957642687 964262520 166731347 930928838 655461296 920870348 506196797 929683221 101368547 748259012 908718985 989872883 835940912 963866587 96523764 551728386 480788957 648735740 735729946 910454077 455860447 621457962 771923745 902369351 783001935 942514227 439438736 822291253 171172824 718041532 851908572 878176438 215709339 828492676 771073865 860131618 957092284 978043594 260651464 629533397 632671944 810475654 344483407 902543687 213871625 382228033 649943006 845165620 28444738 353845372 971802324 985230965 291839905 433432067 415933857 684933328 418386015 587051547 512275171 721867786 777063327 985136009 332502587 790161009 335091613 868841185 996589565 999375351 360273152 611545716 203422523 414924061 767500635 774382493 897866344 949448586 408583560 751559086 561852942 846618392 689081364 770951005 445812882 506925252 737914818 920753972 565248094 755756248 710269142 902569346 688011916 809158007 654314342 996787825 433698612 616063325 431054958 588061131 148314391 473457634 77752530 251398671 204350727 937526281 21455468 400869506 426879613 741719524 443495158 595051446 528816139 631400677 393516207 491000157 591851239 639476875 47820116 136641540 608910980 893550445 803253074 973945828 571980175 587815098 677287015 869283276 984306561 985066957 163649476 391815177 257233189 621779542 33976995 746910642 751758686 896479352 285896809 355758775 172175632 536980913 509949302 566312942 425323549 765025644 52025086 381772387 321710275 719745234 214728208 973917358 510719376 933993737 791788795 802963735 162114588 203754298 165905790 199578842 322548274 950276630 915347332 963748011 837195336 941039717 699487673 978571961 731416079 898935914 675628119 921706699 124094192 332271949 504364665 676789639 870563599 959155388 519843907 960952188 306787273 476830730 802132736 874494809 238478438 333064077 614195724 991991760 259953911 359887497 747564076 778512085 40873898 44873443 726229274 922091010 131615740 398075628 822413730 875262009 163307108 317564307 5014813 928855675 464712988 725894133 77262998 565485808 523455638 918892513 305207416 700366505 944888223 959589076 599874665 702068169 273218756 574436267 458343096 993192922 291378120 671470013 598667270 806767020 367488008 906706118 552365475 708665383 413011033 912656665 453478519 480532589 850400034 961191439 889318052 911341105 997020511 997841642 178877286 395123880 282888316 602380670 544787527 912054392 271794196 622178452 937650143 992622263 876610986 970938896 228657795 894357668 487747481 916941146 442284719 891551487 903369580 927372476 206349788 476749571 198041854 834675886 462411873 480234320 825188610 946692920 488155413 743645631 954479296 970105677 630402900 903799904 827127948 986376398 822451311 925749058 996192748 997634265 134245431 399708935 296168110 932950421 523272382 691814411 273066651 923044248 360275009 441597208 541502731 673745547 318864325 418249946 188372594 667811554 377960318 969738007 99626759 640053769 268221481 322954588 560856702 894217330 867951832 905748916 572189562 615820087 247600747 399434678 359498761 681674377 176412764 895657286 647837540 758210526 618363585 974648307 139060489 768279549 312884210 542159619 854409862 931038681 840582841 999268974 535766982 773043098 106725724 672699213 652420561 888268627 352723540 791610023 706425110 881088991 617600177 760889529 278313264 609134542 629024933 739670322 854370200 939241045 426712730 498471510 858071096 977374404 547230629 733220353 474986457 893140915 750181428 980855325 912553980 930301478 164377451 862859748 208396983 591371109 573848289 949462571 740179808 921216786 692817882 694226957 319643039 685150025 546716744 839126348 224073912 747654164 104589186 368385318 275924036 379268459 734072403 818293017 491117537 529859381 721809007 851864719 824820465 980181600 114365611 879595603 455528261 815422999 807463909 885832520 658798909 838411242 335715974 376461400 545805570 953144263 850882885 916074614 5598834 260464637 377895425 504586287 237506432 548557144 385057100 887518159 469561117 560254909 853272931 978635661 97001154 856911264 755229134 795127906 33742115 469377107 410380940 418596854 48885631 902301297 346730850 690712736 392666082 962764416 935263650 952174887 350752624 396339628 888859338 972244465 114063467 910582514 914123299 925005040 734704741 916533193 559892439 785771553 979679485 989132225 172917755 902300495 20983025 904055804 67676279 266963907 967576713 977846986 866337821 875155059 571342147 932072699 965919692 991174026 125574621 361357138 195279698 497553874 618457800 774795707 934906828 980429179 775528585 855202804 235948570 616441007 914147846 981555684 976256804 994404973 429695575 446193374 128004895 235526852 739757957 816610365 487438778 963050593 355253922 636474214 793871094 850351150 973279809 991121037 611136467 681490412 359945475 852700141 21648256 474695110 198146792 388949195 970172647 972475310 349029148 741627313 123566031 410768316 754438602 852888653 662388356 766046044 941085390 998968320 198424602 394744470 469563254 723810391 919556587 984005193 784376149 794659157 793473923 856439767 149260540 494416141 738190793 792033092 160307941 985426225 237243296 667547634 728097925 964820769 513481883 714873256 346513539 675506831 197711088 589875119 434954139 481193015 331397563 922918614 161448520 728886207 488111541 800312262 478463928 841764744 64031304 392396085 545269536 556840694 351290461 932119278 395505818 690356546 7372844 910591203 823278908 850545737 763958044 803279749 960237762 974297303 820552801 873754215 396093806 732170303 668311963 938500113 878166474 965100174 817403541 861434671 298158460 406347691 873526742 960469733 400045274 451331058 411044224 557486830 735674427 855397673 606721992 961045846 602037153 876133476 43576604 162433310 102523108 130109006 968278744 992657443 296702187 749749899 640445808 714538715 831748960 969356866 666812043 963648992 351976459 975211315 713610442 743784324 524395734 899000841 148320559 282055514 203117944 421995530 442340883 470622135 247491017 789476461 163807508 907381517 365871832 849485714 395948356 493347885 216174007 791326314 269021411 411568616 836343905 966461553 908575503 996834008 395268276 574627331 501270874 742944715 10854962 843092530 251390728 597403123 800438905 998211580 11603138 689342626 725185490 810231043 386604471 876961724 942656548 947708749 432051752 548016273 546159281 782227520 158199491 327943329 177126954 234440614 275901881 612801463 286273062 669207427 270789192 409767066 103505490 769896609 194680672 389511624 51484943 378154044 351470926 940507663 1171101 383582653 656662385 943340467 639500705 919359964 50506783 209980226 342393236 572989901 608670706 709014024 68572819 467948219 426858853 510374723 568639428 864065512 570798198 939102826 324756101 918103595 676017352 708949655 508096543 851791971 359892636 985271714 84761438 429663489 788121232 816856521 253324893 543456926 693232636 967837236 986455211 994145943 817145179 859586525 248915775 622155479 540570837 809190865 564073151 739697109 155373288 211007477 436436585 914432034 29958919 813729997 811548165 818109634 782714172 808165832 429651561 676316878 403505090 539668068 405505350 566700167 837496384 892630753 993884197 994840759 895869640 969876123 280891504 591470626 29281197 366246252 600959221 627438617 852355676 877042216 561516259 644758786 607613983 871730557 380745351 815321621 167229851 299865207 990902204 995113433 319718431 927412864 369052702 751802077 101434398 230371119 9048132 270414749 338795522 891929672 449856892 490903722 737526522 816656664 718712539 962907468 781982636 852405094 865039266 959879972 886280572 969406147 501999857 768716582 295865506 999075943 655675401 797110948 547165503 746530097 274433606 374038348 744683857 985972573 903283453 923181393 618000730 770690958 436797623 773177573 143543032 593265008 586096356 753229962 191196542 867012264 233938667 328059994 745789069 746582071 536426269 990103573 597387608 604642709 696552795 956467834 989255940 990262037 119959259 228717290 516219126 762502532 470504482 657804382 332215331 613778352 754148490 900702130 313567338 758244485 609938992 702266303 627429831 667596664 925692643 977853628 262233417 918683855 140052186 446466065 815364296 893566221 364802452 989053037 41617183 634081734 170138261 568881837 518917710 662869661 918266396 923355254 952994770 981978402 756543100 868062203 860165047 892669731 62501662 299282599 880629826 891966029 768633893 926329252 806982506 887096385 538033854 597407692 918213413 928759913 400149257 477173109 381466670 603643636 27370504 138441661 210741744 402355186 319253090 554884447 135396835 496728405 64745303 624679631 92918644 918081579 657397991 957407922 455325581 492761007 699756559 923176161 933402059 971740687 903922799 954786623 585590308 718025579 648809835 826188470 638572331 904688103 834545738 874342140 287620932 295356081 633542794 701315804 223379000 732511715 334441221 670789938 931090119 932266013 381599894 980310528 49636289 418807753 256046208 436028731 897497737 979574053 678027364 856129316 94162220 228388953 633421334 906005013 771677158 900421175 546657475 779797481 45646188 604276366 325442394 614808335 395642554 995131610 473093862 828130608 822995664 837824557 143824035 621675526 998766172 999113879 388277756 717476143 698958766 867037738 999376741 999386581 609946389 886723806 32768214 109783989 108446546 290683880 346151830 860442742 732012517 971616537 649554340 891579134 347019626 930914959 506717479 825517743 419895047 940305618 477314505 478997983 650691283 721346007 447396107 791709479 197582086 248204629 999112936 999158088 479165950 640593245 61577896 266703543 423631245 926445455 45392288 820574378 730143861 929226659 97375778 844312341 173264411 955605156 998003353 999124837 952647918 965924160 533149814 710580301 908649034 909046163 963112256 968318199 554392264 593398268 404731421 788239036 858140826 972262790 723785439 869941674 401607003 997181017 323871585 535324989 446405172 893765494 883321587 926244097 729773415 941794907 796935693 955011534 492749034 979160757 185620720 262796177 846601686 930278696 718300842 720738878 570001951 609649888 583226562 765525223 541385377 850441384 939889353 991966247 766674705 934404201 482168830 878499081 295177182 883612476 689844392 720722198 376844044 885116082 451978466 514872805 567556377 757789001 773297588 879249750 553469106 751386264 32259678 491088776 324863990 888720337 759521654 893934927 253254299 891070958 837298535 943844726 647802689 706462332 994660617 997688043 349648363 831282180 4775031 232410634 572014056 950237044 12070871 319296623 488041475 903868437 853591396 862447112 916477136 985606019 435523554 722192769 990424272 994994916 138584221 902043735 475757681 941450569 742947135 748332365 374722523 686696855 801636171 804962535 237847686 784856508 503593641 656896041 927678278 939534808 175639287 768981506 641725751 789624467 131927432 166273950 630017771 974757510 882713658 918960472 746120346 906379309 988988597 991808652 41763802 240226898 751823370 877258266 304858240 319075446 414428537 931826475 344918152 964004261 131006065 235507862 933069544 960951575 186132046 517024207 102202448 207891161 215042083 564063493 822327284 950587310 84865512 588115971 675557667 796054505 566696420 714533744 852358506 949413527 772006673 896854509 698398288 778085013 968502905 989606498 939596580 963898924 439804929 970642084 737425650 766630281 304792528 660882803 541429610 872137358 590897066 945997654 963174020 999222415 586426970 625298769 46743276 925267646 517839516 901465674 895468192 995301901 599849467 822281236 311139396 554022290 544664522 761392835 44009012 60100043 839207245 876285282 680038406 824186892 657497127 796546756 835278713 886104876 245629038 884861934 333952221 516233166 974644650 995009537 417852578 613045966 923775048 968728520 218094783 856184792 950421835 967638115 294754503 876015680 345763347 511500756 373930021 703311723 381069791 891579629 991140270 994068378 257080827 649403484 521461507 804328313 948008693 962035204 506075248 633755883 80743901 302732837 430778787 735976872 124647945 973119419 413098919 781588396 532689368 662938104 936265391 967170892 578817273 955562268 352184488 572506832 244845881 691797037 712038048 908173167 342525075 667319584 258017425 375697726 742624544 842757058 233267859 438668416 717852378 982732661 949098013 980347307 123646664 414287055 346851992 730856403 113636068 308881044 578481423 668663923 563811358 976774805 745930856 908215641 80871307 106176317 525405984 828206116 126858928 880586083 11585983 176115417 751594528 931191616 897304205 971342182 589040752 773689659 828704021 995724392 122669570 175556494 250665420 725882127 30503614 140146105 733812498 978453671 28409906 160601150 391570586 559484797 242933645 902716527 381225975 578820881 810605372 829171213 383781178 765142871 772534024 802234974 315007980 781841322 935464498 984871187 698611679 992187336 533485446 572944714 453684661 508065595 725233575 914571824 63641321 737878861 913906403 930557964 880524961 953917585 93930005 633847485 608671515 728059616 594045083 676718375 596889884 956159018 511929668 757467126 460842702 911864860 654698047 851061033 627404492 702487221 912774153 923395101 943448486 952018266 499211420 575476958 415609874 966915643 567996880 596796456 209954765 741646487 219890968 962631807 847249245 968944610 625823242 726549147 99615046 386976652 102887549 333665792 871285111 957857263 359272199 784148654 425423618 795647621 54857087 345328314 854989637 980932418 794098704 829907523 736509821 754062218 743532938 843950938 557607797 696584399 967345402 992758994 580530753 725612697 281143044 807223721 729383925 785009883 346443432 769669194 22868042 916028816 382419478 801275367 385987341 636060694 565627684 669579762 503809206 984754469 152353202 838884964 317559045 379389868 653001399 785262191 915488376 954298248 926071971 983039411 228941990 885915234 17390832 710349718 797380647 834377595 989559797 995918219 634984990 782231849 95074625 480911602 424129740 687097913 711394971 976000784 393903304 938924878 707658970 739262824 534043965 737036070 162857065 285711755 625879254 697456149 966061068 999189246 973281233 997060612 403034495 926230190 718909008 984861331 440428137 867550968 694158700 797944544 444993890 501714729 129527161 954371785 757056981 899891425 622966182 974774618 89057956 898918034 270263013 715467118 21968802 635069446 799223036 811788910 881155447 902813816 9133805 62644275 155166294 617511897 413067973 416451383 271796186 934124926 121220683 622889253 756212742 967727031 393631700 786061029 281943678 384051136 974516078 982161389 124345024 875748178 736588682 740475837 153447395 832513659 26535319 682175207 768971714 853199533 749546607 880868504 365243938 412945759 863915038 884384176 438425894 806365859 288296349 453400646 338045239 412408680 265681289 774034400 151512442 511320460 623145430 925655041 839544177 884486000 722404877 908019348 22069513 863730995 939914834 981848470 814499851 914064863 679468348 898487891 709857990 870982097 587287822 896644086 11039024 767215632 259998851 558591518 996630786 999243536 198339377 666595454 175614560 946910907 530973112 836268548 573086854 801451990 950529704 961993434 107194687 722585776 830475610 879195944 264099669 640258947 598495025 980665000 691173108 927845258 385320623 475261789 579550345 931194749 287209794 408327040 958075620 969256907 117863052 314326844 427077116 533457899 16561322 105687943 16428431 95109169 579024199 795845983 545946365 612726666 670287728 911009569 921567084 956436771 363621116 376161492 214406644 305422033 446613274 503139683 922937898 924936385 399405463 417009311 392774561 827036254 490204411 907729865 254892163 419000874 41647477 772929712 295144229 731670608 428266067 476159553 863973166 980364780 713121340 781538829 885429664 943998218 310432691 485641130 39787743 827615458 492483360 535366681 15858862 651647611 655897400 880711035 971518038 987766060 8506897 777072314 989474903 991531380 270780414 359678256 66048364 129642088 21925025 468564300 232640883 570838961 458192767 842182426 998513014 998704676 27845446 660510141 319233463 492439581 346496135 565011641 211343265 441812253 731874951 761705175 93570778 909755838 178382111 516720684 271857604 298966231 675031740 980490578 433572361 715430328 276176007 420355628 620146841 946023961 528727950 676958190 701260605 855758555 28658792 399213469 432992716 595668390 425081148 926295361 816157537 839566884 181635371 913917319 877565991 965768284 46475626 957029249 345324369 383180157 488645209 996430075 381978132 660507159 78417651 810983720 343467996 924470482 571668958 939998724 642630024 771561238 680781505 736718309 520690040 575320630 465925144 689774102 315079236 348315908 580995987 601704284 870625710 919798159 82297501 217948637 271636319 831689760 676291275 739238558 731451090 751166743 545421469 602528902 977003833 997635072 62648436 896091008 660841351 714325443 342640463 803061898 859568880 864768455 334759204 463084813 847463038 893144654 789932582 842472277 871997547 895277315 491603015 644190616 251919071 293721890 564134396 737169610 455902075 891076139 524707872 922611756 776262873 965713484 980911907 991035018 330602773 594751606 158689789 693253188 567941957 630434089 202196114 657116726 235647744 251251159 922454431 932903817 943622960 955551369 436444612 920604818 417700370 616751993 885584926 994467848 54602440 905437115 40568281 143975734 752333643 756992745 392855036 688267382 451775954 796655509 200009435 712536968 582592038 695291159 168765162 617885816 59575128 632963384 591269792 830542079 865107231 971084885 61524304 623437711 710203615 983233636 186752941 523867028 484080136 529446120 533665657 811955151 816022456 995111377 10212767 296502910 700430473 817196220 450433836 600092661 994392227 998735257 624398768 945201286 670163766 780128210 714740468 833575177 301621755 579379327 516102862 864404704 972060693 976794626 236025840 248041380 44400954 56844392 481788828 978627303 733520367 917279469 50225268 354954366 749515770 935198937 482787473 787792848 207528898 393577025 835074335 997055373 309077397 469895724 965082764 969754451 769903716 992165215 384116777 758849348 611217176 988018731 426693683 480481844 432314117 457308598 451022647 946623603 245680804 937561908 337389773 967177730 928095337 963744977 79992368 678233767 939379888 965195070 882538732 991637311 510558781 561845293 975645761 995740103 602917518 773425273 309957278 451957496 294214731 383817324 944313228 968520892 399409086 884561244 528609857 541748989 700802465 965943608 363424567 524740593 909345435 994137166 146961588 458698915 165919539 317491181 527113739 619487431 155255270 571313776 229307071 295361898 690182885 816182560 216567837 507249942 714600619 858602090 813476885 910453498 362344192 634587649 439856518 653833588 657080607 967207456 902748512 976657035 800750221 930710196 97041431 474813733 432278192 652452143 627897071 702652489 228340799 498924972 358174570 863454521 878177993 941452084 913652418 978664650 637098953 693950559 223178407 373304986 147878923 175671767 316387264 447993713 276510654 637065919 493326198 669879539 673398519 680601362 613266028 941335468 982080287 990225413 677374752 879831204 827775277 877981070 812818062 924604498 549725401 598703454 668079922 918906614 887180864 888032675 720544455 825806149 50546346 459768063 492818677 657649314 698267624 951228955 741321166 947779113 161069859 734201733 691648493 925313986 520217662 616266721 445396263 786526731 654077359 898952376 482611481 773422644 19037437 420143942 914349634 920465271 969404587 981989668 781379797 811494207 485305569 623421575 913335015 988408984 847835773 974266149 774993742 889824406 733619814 797700031 63789117 475161363 36490634 76099461 497284611 891698922 548582409 845749007 708189199 819653185 846762472 870118613 146300732 943798744 190045989 659905305 641603770 769601080 745394789 930700240 86880309 421733459 146694453 529268435 525870159 856791736 691087157 932718919 387601328 624411862 897594722 973660826 915494671 972503273 147267277 994486886 832659667 980867920 261511215 934367944 280659513 573879129 145426452 767279360 546538514 873968338 78484715 159500182 896611399 921937295 993415688 998984357 593250045 909091154 446839454 751303560 280519363 762346706 627697191 820790614 806385119 913936621 287703512 437113591 76339221 475464476 247012394 248963403 21761758 310137966 105627838 887285171 563648421 892698272 641306238 790978171 868405446 872553033 781058516 923316918 584000997 792919339 238858553 912605480 355971486 469885808 610147955 848695213 730578490 860803343 579932079 846776281 277557088 582067516 14011628 243789207 743702644 923160068 245024323 514723207 582112323 797866049 517872915 947083714 232211935 824067485 328600415 698731066 573706401 589226201 20259670 102803431 992403375 996856228 30717571 915011037 507803997 580517976 732823898 859366070 124561078 405941671 147046649 886597313 917965968 972040897 182011259 623672626 390102421 921696220 371065623 597950118 646046893 683723319 154306159 528814401 547293875 907321257 107264309 193680680 390932603 499658884 430690411 664956691 99348345 711222262 676223210 733563642 510930806 667537319 159670255 450117772 841486992 949738704 964952971 978154378 61589304 302102798 333890868 754004223 518381300 891254398 668019227 916567509 414729351 935523861 137998219 325999019 703271429 738991268 758018042 774510992 627551009 887121678 770265196 974846184 362736013 753911650 739230921 949197186 483904269 560637323 725767012 763774755 128648219 806431446 154690734 650429728 327362678 838385040 636621435 666386179 978518689 991984851 907816026 932663054 312959088 617788420 696666204 911703540 641438158 943222933 429055743 433409940 886966525 920091235 819750607 853235826 615046804 683290822 300701997 368364806 744730291 853337615 443780791 861046937 654225665 879990904 967285182 997356367 432869784 705058873 415133763 668683324 699812318 947969915 198094715 854941951 226464174 323106759 131777669 867211868 195119615 999138135 202377854 467488836 844355809 886970982 845642597 895282958 323885743 802094164 674270555 752283212 981288715 990162605 122727112 325157721 949460917 995624729 328509854 470145274 634630826 706254066 541812305 666722361 25181951 513566023 15893579 89697843 284902522 559612605 317647755 566103281 309798272 554431205 537250766 990991343 542212582 781373101 842376136 928959670 585459019 851096833 570019638 655426559 259854158 943151615 765077805 906074135 466760613 517078897 55129568 893034924 184674561 297121189 400413386 802564796 277034720 410063900 664923141 777794192 352620308 588903438 411147740 679390122 24915593 112278100 520250691 752979212 207096637 580874486 535067162 719408855 272899165 528269871 94434863 774428598 76063937 779104295 491881334 953754506 286226779 437235843 836504760 925641029 327351396 383750252 187757281 737769648 877091566 996423920 686794498 828253781 339688346 506873993 850502247 998041575 577390087 593011031 398570611 947396722 592712206 912825623 871192112 923955582 428522047 719655115 851100700 865233668 112722909 876224388 304796289 422624757 949382885 956285407 783934115 947445617 954023785 987853847 53770900 741619064 446788540 635602334 450602925 694274618 260929456 292451685 543615108 722299545 171515157 300948522 207324160 959476739 238195600 292850365 954274845 986654388 183438946 960689550 970559221 994193556 648867215 726624955 83704566 257860713 257419902 552436292 716617396 833079628 991066867 993608194 426097907 697759112 721179792 757782669 392758200 886220965 738590223 905546398 460426892 711883013 183185215 871848375 985054028 986133174 919795866 976860660 60519037 405764786 507987518 781828139 185708611 552536031 698769610 966073604 179883984 964978737 317382196 871685750 427615467 597708256 601005716 796578012 478824669 613754460 478702278 872168475 509994359 670549743 453299606 537098272 833503904 906920766 321564919 699358677 256864828 388744896 870955025 962782294 937795682 970709262 689058086 994886686 332690683 681326514 603190263 645219556 856728783 978398528 56765024 576156206 925417643 937014805 423252290 674108935 582520216 912454868 102384010 571573753 670496812 747399772 690197363 719467392 2403915 431091456 842432469 931382081 303730642 898018369 778557546 831754258 113910643 724237007 812494376 979696468 440993917 856745410 263835432 416768056 366964741 475276422 233835184 862358774 13424752 301222428 948513624 958187301 89395954 818153464 901321885 963741818 256521221 702308075 998306221 998593431 628905305 917488040 171149517 952793421 612102478 863898495 340526797 462508171 894687733 998479369 86776683 177546596 429566484 449304450 241885722 366312780 180585764 573484424 767696678 795201814 44511493 117493548 241291942 482685625 795939352 959394919 509956319 641404748 474736089 630934377 71931954 714911944 925559653 930241707 519255649 995775383 456135141 528375924 625448600 660969128 669601395 835858617 852930291 894906575 960564026 975900512 217711924 329713761 262445494 833346540 340030728 703501322 721198777 755465310 522077598 851936439 187322098 813378360 844704397 995790041 369383407 469232927 230555197 872575982 92319506 179826337 173475720 431378019 596901918 916641162 441934310 673595953 151037309 565681672 170784883 608406763 746512372 852947370 969400844 992706507 343943152 870064258 732342971 905722217 259674397 391641159 544361393 971786668 628804315 911070706 139130606 757011510 113707061 449032023 377735641 843837492 479902541 611856447 217723600 255423104 381303153 542467716 754799281 865583501 523595965 629082414 566878193 636087634 203772962 915857050 352795780 688557760 629295486 802955647 155494806 614786681 994287381 999380766 738310356 815189789 422439278 584549576 730330003 833766670 208126624 667758344 900955525 927257485 435438678 799295604 415557480 470048983 573091313 867010900 544720641 770174941 63276070 562932387 252172280 914754829 355084289 590178459 681445472 759858687 957809808 969593642 712461142 948207725 60597828 749870818 858884477 954536738 433959573 685692017 443153783 837791617 9478664 712611121 579643078 894140375 942782828 987893821 833168600 926608536 937942884 977288014 845463052 890396684 63325142 114515235 113186132 161330681 854352091 964398593 608663265 778529110 333589202 901047711 139179049 896662441 890594386 954684897 148053329 293304039 195798505 977326978 654688917 671971628 113969616 846603763 132177458 607508543 58458787 134708111 986602341 993080741 176416246 205535676 817180021 973449773 90022230 853393958 548275934 888048545 989892408 998869625 145318363 720339882 866580326 953594024 434894943 966462895 22204641 723472259 560232179 945395930 880203710 901902388 354144296 584171079 693236133 808830652 190258194 600632616 255153935 969143099 28538919 567866336 425341028 469719044 924181096 995631438 306984679 877444348 393487925 897215987 750822718 933211212 316914045 427673788 278848178 752142985 661157455 700136742 970414007 983175605 798851274 857421929 343193926 936271955 980099270 992574572 979406173 991524217 952533786 966126852 845721891 882743411 400255248 876207201 570508596 781513016 228991966 931558808 746399078 815601555 457825907 878817458 20244375 129186526 800589156 982824280 21044683 522710078 683481815 875719641 369330680 833056372 1037905 337572342 56845156 333375293 953174454 994116954 153393198 420708120 870433069 921201726 373290319 793113812 626498349 966889484 557120031 576433396 313705207 998722886 385991709 631593942 143642881 282906282 473520756 873649944 324990183 437255398 206033020 286655948 691286878 764353320 32022375 888078392 311747987 935267530 175336993 219068699 935297210 940943714 20867387 807707722 679880179 967758635 248625046 808292301 462579064 691892086 196079426 747384843 905962589 928253116 515796820 934237691 831405199 962844597 149692555 247557111 204230960 379625498 533888414 718538354 612616543 704321736 248571385 279169638 50197781 379927720 669503095 977145177 406367632 818858199 408560505 743122263 135393675 331951917 875762749 939833155 941576270 982205916 343286646 972487797 502134857 847794745 39876133 424915873 187194271 596577621 181686919 328697954 188090126 750516749 27147527 532164083 946748330 964330979 9809360 817239410 104249144 443448220 305655160 359237905 269568184 902511947 701796118 857568259 306427472 797147523 857301680 954298325 581373661 752716185 972739957 997376452 444366832 484111870 562213263 921560394 547163958 760332997 396256906 624434625 975168945 992781336 1502136 858170461 253849947 560814271 167310556 700722400 221948035 816244050 306799083 939062455 408198271 612301812 668395493 738457702 622532655 642237291 772590830 798844386 653233805 791370939 868081908 960288387 145534556 190947265 288178104 471655057 205170977 743442108 818305505 916909141 934551023 981911367 518359717 709676342 353554308 546340294 683780791 709408614 672965998 733206746 295142054 373578933 841816601 880213788 542197379 689776597 228258419 970953389 929886110 973765036 252504860 590332541 476487836 985184562 545750205 907895902 701671601 995164286 240122904 272845917 689772687 808394021 9945137 240184329 956829659 992651015 266840929 515936322 239615990 584065207 423530798 902425131 968917722 978270938 167855551 603628673 212566056 883065121 345738685 777827562 594795798 803918450 68848280 180049007 456341232 972136209 652119220 854068991 495756542 669366570 669185443 698847415 707590259 896115181 559845628 581728579 104398601 499845400 625079093 689125388 585202181 847604255 834335355 883920915 847921109 871443642 188529083 314189128 421924335 448265848 443270891 629285159 794819090 811098987 514722445 863500340 308790448 964907076 742760932 994011823 7972860 830174629 178463610 363150959 84540718 172327300 473554928 550527702 32070069 432156430 710731363 741993387 371040630 645071620 261971358 403313257 228599944 264240966 772663786 890775730 102586638 959020966 593468674 631114016 744083373 755214938 257082679 456488847 834500732 868164308 243314583 715582950 253651661 951461086 486703395 916792213 910219837 980760988 409153310 430717777 240242133 548880205 865660904 916807445 672634345 909967646 269901053 857476022 915155537 939574306 309126695 755351202 105116404 475344463 776469851 998964146 309666965 861000154 783166582 783176107 688056281 699431682 682725069 928113885 563535333 588249186 564086048 698521818 176784062 905848621 676192069 705884654 504245329 780317801 642632219 677212337 485632597 602754854 815699533 846102419 858071385 998201223 698552656 804638279 442229540 830406586 668102912 698564302 902695353 959741156 268696911 888457981 23441369 854021990 530575717 853442739 535595171 687183890 152101753 466386997 371813108 651487264 841789730 894784853 865295770 979789265 455890960 480605122 377701756 636166782 480334795 483930071 204216967 704640348 676208864 967492164 874217207 933909643 889369829 939182972 508874476 874040248 53317857 566891518 445927862 859126843 432381004 864911355 507900692 558981716 615475315 695576862 698755929 911795983 432940754 930994864 598919290 978433914 581065634 713804215 144938471 183161337 777639614 970417802 858531156 984443387 555405065 766315124 49078875 147156441 955678389 955908405 971294893 997671378 693872312 772273026 101054528 338919673 635927697 747670413 269144106 492075228 761686955 929691134 173156447 753259184 651565412 764074350 433341657 744139014 11787578 307145807 384965913 601431029 775752480 850546930 716897841 731093478 938028158 962244531 219865986 265267344 956341722 991399297 611564391 757195843 678701225 965981727 985530617 997292449 396183113 482940402 756016250 998674260 819520026 887267787 36467985 678555598 679885779 798605411 163616003 449598181 470900146 562340013 875779680 991152416 400057077 995258811 423097439 888570498 981968196 987087614 207790526 248293888 147661659 796307895 150235829 650707593 939250664 946994601 601829770 658320290 111601149 814198197 994798715 998649944 874077987 939612931 441947767 893571292 109670481 291406630 790551675 898804598 28252217 662347998 802764685 989447415 944064751 965677804 357351095 827991566 124376004 593868090 371865063 889996578 631419311 638923379 937828891 940694647 412018631 998646199 229302688 901311921 989140673 994820219 314764231 731214954 374653409 547602021 92333669 902136305 603944743 784304569 921869092 962035355 519240810 808668447 495785586 687029304 293248237 995614007 669511263 779194761 670932997 962711231 372176146 401136182 111640350 304381297 416245760 628327474 246340265 404538704 680239927 709990837 821049430 828347855 53591798 664896356 598326358 941868061 577541945 689172595 774293001 796170717 519708812 908356730 610351071 914762088 225878252 680503104 156673329 286753508 575559830 921319655 806325949 974844880 233653070 408551447 948106507 954234313 500698097 527053607 503529403 636987867 754603580 880254570 125088337 487325485 19530421 326456549 681514577 862389010 921426409 922041221 838360036 960967055 752983115 924103714 65053153 575095692 105059939 823711659 735680316 903595092 946597781 980626643 685845112 893649015 138130048 250306394 279305250 977729750 794394062 943150004 959031386 963454511 653008638 844470148 157127948 836554734 845546878 957636740 330066028 402091902 627134332 683810994 951407201 971840931 446176196 719755756 19604671 287326034 279636000 809417483 946056936 973080286 817212636 977643890 890824713 932239180 195365046 751320176 75040071 811922109 838019378 994527275 354498163 474314849 365241682 739257523 760085501 992558993 368833167 943050242 526678153 746232448 715274463 768498249 562760837 813103427 105143380 147334325 391427457 821876170 600651945 774707132 554451765 816028397 949887642 979860615 8866980 393939615 235837445 713318571 16929493 410639440 669077109 925212454 921333498 929927300 998998575 999240109 216705425 369295917 407736674 466273031 772909097 817637353 465384017 703976687 446777188 527168601 204039168 254860724 79397118 894794822 561335105 888741586 295309428 960031139 119910410 698617517 862325992 915684196 96650758 139283575 321865415 883840608 168550969 792271867 124533332 927751043 936485087 938744200 684419468 861377387 366669625 450930285 847902106 984270567 835569284 844507677 775658358 858633274 101720068 409645038 975676170 990384985 149948218 888562348 679938645 793178683 753348811 864640140 153857455 185022522 992414338 992523698 179428482 480495898 528347001 660654068 1703148 312174877 512188489 602446120 962344606 965916779 88584452 113449346 779771304 911582975 988787150 992371278 153185800 785329136 533305742 753471431 783881988 818891329 335841215 675298792 365727678 454361752 217698407 297007527 357910030 410331626 106636610 789596418 358828124 948042522 222214146 630887744 510326967 941594781 586701886 984183491 9996888 791244832 845462884 847999408 537483206 869250213 586318174 784660501 233432621 367027793 28373614 101781839 388692045 564756847 70245618 295369216 966157346 967852068 871610377 908177184 994941571 995482314 248602251 393431911 815931593 974959011 77561779 976548793 8333837 833455945 632588620 852756693 606781958 642370558 699686969 842279176 766218183 817558865 637412034 808798735 50004998 829581338 346069302 758136983 540631172 634880155 59869422 957169277 625725813 688885512 557428287 710851423 31381335 565911447 706929025 760982612 566741601 790039538 977346320 989328505 355734453 790115336 950969209 957854285 200816734 346367032 923187319 955847477 409521463 893705336 930644025 993045009 138991537 386449720 448677094 689204967 23870869 412105765 776947360 807906099 464920065 899129862 589489336 856211330 4705460 477512426 558771798 990854928 739452312 834085290 19043494 993792099 562468457 613593562 789290415 902653687 16633818 785754293 657203469 726946614 361892680 742892144 235347097 768656740 277558934 808679975 379931241 584398961 945084259 996105205 522088520 877865003 474256927 520690290 537925123 615877562 922170438 959673260 928070498 934997302 157804276 633660597 176774375 394131350 125798557 883819097 105234226 613102697 249432828 942873077 363814636 718292855 727272599 913205561 800621215 822842791 694842883 851416158 699450124 700786495 506833981 658526973 590382120 870382774 133365814 161425733 6612708 301352976 309460351 926818126 269093177 356192291 879118542 968437755 184196766 767826758 172961430 869360486 344218274 383235059 667507346 703786872 950605898 967920097 571425265 940862623 730789072 942960733 897630151 947520717 909209709 991415004 891272706 899830321 119752620 649551663 736549342 920431803 766516593 783165766 917841487 932582938 173642311 342344436 631215940 777276506 433639740 837820338 78936090 427150331 31460430 921398536 246495603 788614230 854536725 894219724 304030988 601455921 205125177 528614249 610908069 948616751 373472247 512040943 528586483 622426669 226465062 921914246 147858661 686081777 151144535 543321038 222974661 447849187 861398407 903051497 199452686 448300482 365642026 944150200 922609629 957768825 986996178 990175570 880266292 945417292 600633020 873196506 239183219 357574123 451879682 763821888 636179116 663874236 188183710 901000064 800022727 969337593 19098858 297681533 197644208 617124705 959614099 986128209 533018123 977669144 31853722 298579998 392139834 767827451 433420158 871100615 926787080 980584250 788871090 840015571 19315750 165090474 563964766 944037359 504548388 924763552 521903919 823565221 867565586 928775611 710591489 816597106 192965657 589421582 68401127 519444367 46898260 938419815 56941114 318128738 276085666 284122320 526919414 714946902 905914790 915486628 536222664 785093638 250461716 535552996 171392280 989636904 989195037 993658927 992722857 996259110 322046104 885028012 918397886 937398616 96077096 971714118 898853490 968095135 265600213 518771854 204886644 348786580 186486555 542620967 962608554 973161927 234149736 275894293 584615849 658132702 441748624 886750456 692688488 848146479 673939088 920271344 728222156 909528965 498510197 884026786 780646153 946902484 629638572 820845543 646047916 763916640 104657058 276096012 37701535 400400674 340259710 627447530 180142223 601028075 497693482 751543837 169075560 366994886 515596506 709093270 565659951 622449547 493685375 783782441 417864304 901807785 772837359 903822733 481759546 614454309 847763671 948377335 951390340 964825962 782881729 997499343 755266913 805174688 23346626 33508715 271347725 753271699 22299056 372513903 720348806 823198060 305701189 970734247 42707656 574466691 605800772 630219520 547067795 547124242 85871951 644302081 137900892 703932164 643263693 817901804 242580092 321370314 77844743 564388904 963546049 986559549 527849494 598864302 677756451 706591967 883665651 883935681 103478359 738299958 253559392 639716137 158400107 648584730 810487602 921733221 459412104 854980120 558511949 944192526 226392377 888623729 234331948 932462161 431955588 979635732 156695661 780486042 403101861 497336830 102044483 888197241 577978445 836112352 285444693 876739968 634309444 685877208 142973759 781035748 403771265 732671639 894386265 911014735 391332996 798809865 14064144 983845855 11498380 482604001 1375687 821050708 680187092 967450191 279191031 905159002 596935325 851822584 736063427 868443115 199654451 907998289 590453788 964874357 705855238 871926901 246362806 923735023 263545753 572163184 611827494 749567319 635356875 693893272 901965934 992255488 253653788 328702841 332818403 753815608 543536378 686290697 104724795 527629452 222313400 653526681 969376741 998358644 976495887 981745329 639744603 896650461 346684121 415074976 550919035 664923301 146299548 612701404 208946516 802750372 683409902 893688990 77843494 292181633 517139595 643405599 844164706 881764881 135648456 772111922 421823656 500167082 301317820 583339692 682815359 850944511 801686231 943311535 973635349 980866927 4026601 330874425 634742998 718751614 557523673 582628770 276531040 758983069 792682140 862946337 426873620 648047929 704421252 740252184 533099353 754321663 721111016 802144891 946198633 975300550 193655793 842412292 477975728 624542835 41844010 126129524 407720638 526012446 584774925 624874999 75957439 931553928 224466729 966554269 444707216 754519497 749422474 995415524 911995704 987757999 237395107 638571760 305245809 310524795 86838271 250493634 161385964 540114068 247798404 491826359 867612298 992874758 452649287 496734452 416567854 739537881 175612743 692338199 691166495 714262666 962592207 999249298 2191558 235795972 870804872 890767010 986177943 998966646 703645608 964447610 391841388 762071269 114986073 334888120 926347270 934163853 660685201 870434943 301974208 983115947 229806819 274541584 162915229 374529797 510876663 714738650 802542433 833862003 115669948 773144516 94133142 366883643 268598349 459185094 812270607 900144945 683326267 844347657 972198515 976507447 726400052 768528557 545601474 686454276 793696700 806149187 321196933 357095038 848798460 952112644 899374621 947068022 803812837 964116222 110808541 662391609 734098398 982094281 732146190 783012194 229080499 902553212 216833365 885001631 296289268 320144902 16005952 606469499 569347552 939032169 569608517 940680229 234222190 506889017 552875292 736570680 854726344 879300824 734560257 771217139 367299996 905012539 602318405 801619012 965055362 986617881 93466045 113642830 652835985 704696981 902548779 979265312 855761867 920750047 76078724 977386838 193369931 206568103 902330020 912932391 458315209 792671250 242933152 610001969 433529499 563423876 528690856 739056698 642499317 674336585 505903792 958046930 428637424 700629978 569363464 865711299 840157889 920611623 131046191 921737785 108200214 245338269 528655523 532276289 692609031 963544905 846325801 981301575 968502117 982155151 645698047 927916970 823514921 972014919 921251899 973009559 395975173 508667435 193928970 267292068 325519569 781016927 739345064 815580816 869159171 910855873 428169462 523932263 657258207 772382839 691802654 851761137 23135443 600212980 866086044 962701796 934128420 942625118 678977686 890505466 263634775 830189901 991865513 995272319 622415693 839881768 308426337 593584946 612730976 869928561 467729098 735282821 226110371 555599613 385299638 628558638 165755146 400646483 567298583 962797958 815449094 850143693 988209267 989728032 854219085 995262826 956579354 963721282 543577191 918007429 906846360 963879534 497371155 797358179 870465300 969428601 470688130 884907243 500817119 987958149 629333111 873340904 197347569 831897854 637428549 673615034 671925670 731804854 854559632 917256313 758042862 950937757 925079223 934686689 534128913 769630555 676017206 880552330 963860852 974193349 170258347 353162663 475909591 637781230 340682306 781352632 822106337 899973579 270297750 798900811 46991899 959596527 67301137 802836489 554570261 855102440 319470408 831179262 456009749 764570449 169193575 744075037 690893957 969132103 928513079 953127259 803538956 979354609 507005764 949530079 488807747 580872307 913285389 931527382 964929344 985495651 288293323 538181474 399144067 983624736 525051375 658394685 784251317 925936371 159737194 342166890 598934242 767424578 736026980 798146959 647417043 668673670 789700516 833656199 139830036 938536068 107349657 476637078 880636698 958060328 913351768 994975495 518844628 738420137 283479691 486246154 591558770 660005913 588318495 588632973 928517092 933887697 257181237 718071046 942121262 995975840 191434723 391378381 885116571 986378733 772415404 779954525 660477471 835534033 617092134 925148985 456311265 587983616 930355437 944156210 386699996 873113731 911793950 933349449 573564817 831875500 859444450 934594883 55313291 656808257 172134057 731518154 964397299 972129241 529010320 765167979 779459675 924728108 724852713 804930300 560866525 779218817 990779357 998494528 163550394 908537905 829300311 918226390 686213120 838730418 183829778 988054974 938284963 943538925 304945390 977946031 688455405 900562682 238761475 629429359 741505189 912899591 319392603 862576306 191832420 729411269 75014504 302407414 539423772 750480757 710702189 827655800 365252165 698613582 99118343 687010782 749093999 823416098 521028725 659324399 884896374 930702935 657027482 992492163 545952381 603426807 291677542 850786560 742013925 876127028 850134326 938087792 954588919 978435622 487266435 817084249 687203409 838874000 937157885 980950759 119022827 719211509 485629017 893850212 96665987 807333592 969206885 991324083 526962954 569764459 571900529 688549324 6144733 329368577 352140646 703655167 621378235 987804628 289294739 705652870 754965883 903554810 344740672 633250902 305183900 526962714 533809325 584324090 430460536 515255805 350899378 491466815 969312506 992190344 462187903 576628143 227865981 801960365 784987740 925176996 531248630 734885881 885776716 988322560 386986429 524424441 974288091 988921423 124433915 413767146 172571094 347115224 44953807 412583642 698078027 926163384 882131852 998410930 123398695 421388181 809725893 957859584 855492705 918937314 576986560 962332791 95108796 692355321 236836924 292020624 938419322 988193760 174876624 589257992 268679435 514399147 689758355 846821900 430452631 451918669 907887630 924706395 206196437 378627048 841907485 844954278 474078885 904337230 421110665 880638455 440912802 905629415 75459653 893421321 91754240 717762828 248772741 292749515 866628662 945319086 755667926 957387237 11278940 722817476 962234435 991422530 412864576 642117748 531568145 546958681 784008958 922378679 292311832 780442250 396101641 795023927 725020762 846992224 214312134 378129437 403174930 789342699 288609818 800803763 841648495 867321823 63209540 295665658 703879166 929486123 837119891 897093294 730028890 766059576 628604935 641183748 41158221 429494078 658402059 918239889 964046308 981989958 995523368 999293593 209396778 452713408 413134979 945879829 6690516 149014322 146471191 434016153 51084546 698528087 557488315 610826927 685929934 952044671 506302520 993580867 596216217 852490249 41427639 117113095 478050471 593375472 912923477 955020848 522357758 565938015 60271685 551050365 422272932 506767910 347890625 835878159 1458153 869842752 757742026 795966112 638901544 708071905 859933327 985631281 547593227 899876899 280815297 764901714 445423532 582341173 195414611 600751927 355801646 932553992 231368962 695172600 639267624 702456502 10962994 248061467 521155410 523054660 21907854 288857317 407992721 662464713 343482782 608477000 695832409 896520395 306668632 440054061 333432231 940866434 36728761 520748456 166705232 593840591 708136346 903292845 28488467 261009059 289069722 967966084 161712415 471971768 407616501 665507236 324294847 938515496 879615654 920637590 876539609 942179842 190985002 295095742 880617784 980221198 880004798 927192638 31164875 173934879 62646396 992323779 625198263 775358232 377320084 744075963 888429985 926527439 409420403 990972549 658130773 894921690 748294183 936017913 14030439 785862055 36292868 620181100 617583145 707246908 313912884 926726091 91871398 561553303 934559937 971252278 329410678 949053475 344435053 400177968 499305272 691086432 76786399 781734263 970187951 985483175 290245282 417688809 580053997 816164482 228836153 423192449 802423600 932640605 430512654 823666464 122907384 675001895 487608283 744447787 121188629 809226824 960603522 990557208 954843389 966684759 702721894 815222424 464388685 644418264 54171229 645701632 687225712 894594494 510013475 751315431 719288721 824246975 242739676 321797515 763441686 787508912 115133262 539173495 833068086 967768320 508976742 842087088 801977666 875422356 726843148 742076613 236500203 250035481 651310201 655844906 91790874 902815636 326891886 724247299 325322286 797365652 654280391 725198311 350575810 848756507 432834586 770521164 539627664 662495464 222207817 339981526 657910140 993332641 55423898 249265429 489021229 965351323 944831239 992967669 809049266 996693950 149639892 677041906 19922268 821298013 800078269 863418720 303093142 416109804 956164079 991127896 858746615 867508226 788206004 870714150 944340788 990338745 264271742 856450167 690186971 968278226 470284953 641824388 769377798 807119315 104528773 277009478 212086578 759014140 740446064 806423163 892725245 899326874 949642004 998061036 606228510 874091264 737234043 953590571 955989767 987726648 139879648 670849346 70332238 513905955 168767865 308826472 395018235 638843663 818908575 962930312 755103072 918315644 882391631 912830691 575716012 598662935 404657204 856783146 169726202 485646467 662420952 816039846 207813039 573469244 253163663 796272083 293518462 766285592 204495407 261249310 438382443 909528442 952618190 952998515 557659654 688308709 369020413 973699966 602754404 985471443 749974666 914855232 584525089 632308918 948220447 991496687 312862222 341930249 166054531 465598076 906000313 908509691 319414065 863673233 546859874 663054180 799444075 881731634 266229289 503973606 478551617 494037430 665995266 868889585 987165637 991866408 578890975 670595419 902034775 932032252 159686094 404897044 70979445 529431402 805536143 950391300 933983544 968418254 718346097 935861129 798421448 927905940 542483725 980536562 584526808 615232988 754510264 755524057 303035454 916645165 978013292 980657344 950936727 981917123 411520000 864394881 227711523 491556561 115964546 901269633 702767754 962205675 85822170 101370062 40599753 237214554 295768788 584990331 698128745 929735353 373598904 800958490 33612489 881012838 708971203 885118186 226818203 282960887 23845264 349533447 651695856 890580297 282745292 833297171 367693279 394435191 687524427 868958765 336788654 935755079 40516665 538804990 178728017 492531682 531126282 912874433 94202163 176783210 397818966 790324535 376190681 448257674 605196631 819389953 571840267 973829497 420871337 972978057 358223528 973412748 799886336 905448630 139037501 890346998 990455241 999219205 460844141 806933659 366809488 744230546 47422099 116653944 587982186 613640394 517006613 540573810 371904516 833383735 872219838 886176857 426790064 922018355 484160894 657980973 960161026 989367268 776236438 890483203 229786824 958578920 417144248 912468968 502173930 546986625 406268387 722440236 902436823 943697708 975766483 997994071 555367303 997901999 912149444 918085072 907874296 952589285 515101756 578382570 669372512 902717076 10305841 962740492 756539322 984372827 770304378 873603983 526729895 530306864 890760408 899182680 64734353 637715296 455693276 733633647 354690270 710086283 775300643 902557667 854081313 864093804 858068683 892741361 603206346 675055185 910850872 954465315 311735452 392540244 622503959 662344298 413817996 495067248 353602751 469686128 983492070 995873919 439551202 617299714 812878253 925544358 80455853 764492860 528596934 890593924 375738518 493256647 329360650 729339784 356365654 943746373 279495726 706961701 531640383 583779852 500971400 968618006 532214780 666183758 272036596 650729322 551097614 889166136 111228553 419523448 734004599 841609528 606233122 673019798 765486304 993855147 985750611 995496720 388990519 900382004 891072392 972314026 893389462 940766206 767934181 774018995 403262477 427167398 75725141 561695718 592848264 846372104 771994471 772646718 858633413 907872138 174730199 213907743 87909315 905019070 83384076 178292131 453716511 505852828 749182391 980117488 702548768 809115974 423580606 483163376 637693554 933747918 968657874 995133582 177126192 210911044 259156171 402834460 767306898 809512641 960617102 987836507 276463450 775200019 553847836 945828531 807320730 850024546 572277000 634123859 267195443 576276505 660658575 917351992 13833615 718491283 431276066 555563093 429504565 904801289 47562815 917853952 716813888 870114329 531717147 578036411 645171783 836979190 871125540 922512691 605608952 792185436 565143495 860215820 532634731 870027162 148600454 993142191 470917770 833912481 370300162 719830900 487367214 649273705 559152550 674548874 507488070 588051932 241653522 966817884 983596265 992868730 701714479 728783555 757669665 951453317 504745420 849791752 205419503 441574232 102872634 893334372 292645835 650250584 286978150 625506839 895461860 957519405 844210966 845738380 201615500 902751974 761547760 898910541 47680843 868985190 102937803 988060115 840533977 857911219 119141510 952140245 662170860 943071075 275870422 842235701 483674803 517993814 593618524 713606433 423022013 868724614 271912595 678026564 895871147 949828089 216819041 521214836 171848616 532331141 250851494 274208759 661341709 697126986 605114327 935239560 321325919 548994371 601249518 950204607 506299228 901844840 822729734 987546498 531537845 764790037 127742743 888649783 915293725 927628595 888059983 941363626 451922566 668894347 342754520 396067223 598177999 882428068 681704759 688164873 789538232 865448859 665974442 825320379 823451193 834073776 288435192 854534786 984113008 987903950 605065337 973996632 768066458 794912436 932567013 951749519 388856048 416278543 486529947 558475526 467554943 897289933 445145452 983683259 149966521 854965388 734032857 749191238 702028313 730087088 206188430 214032637 10285796 941577480 386628832 986095742 837314690 961852424 642571177 776356271 255979709 828694859 431635677 785859381 349858885 465748868 545751927 624722928 52374676 93873278 868307981 891148525 331594299 798457266 529336061 923070264 480887704 626094818 59899844 755594859 746471300 787833415 43592256 428080354 624631314 973648599 188750579 345698142 304866657 384947992 133327680 672112449 611691283 817017222 351403145 898820882 339132684 464620393 598005757 764215430 252011212 393437087 321597856 771136004 768603377 878617791 118982304 230092069 960202921 975092341 829584834 993238504 365011669 377876640 984396607 997747570 679982600 993635302 878536050 908656956 229982467 489088168 143503551 761358348 138962554 949358485 660776573 841891933 566506158 823968713 841325402 992172187 82945157 163591103 356988067 448511613 518764134 702324898 790497387 935887612 342880637 902077360 467770053 509876133 283578535 767190352 916465331 919107997 903184050 980724402 360816398 765316291 253218407 399149406 178161659 738976537 668409053 782861210 630099706 689449094 654762207 798803024 145658590 435239621 279890625 589288690 41401077 973906285 597860054 816064580 941647440 990071036 155850740 214553189 202685858 746844540 885895986 989349754 525889816 912403409 225805185 310126345 286475609 819154376 106909323 900544765 559897958 759574608 251753375 718176473 119796201 483619108 263379820 516872719 928687156 990197899 441348444 512288958 737352997 969611253 422282829 624876198 562406278 776454233 720777310 854659528 278614796 432014243 148230007 581421539 873134001 956480495 586862119 655494911 423152856 443310095 19717439 224713068 565602064 875955720 516887630 976888782 776641314 851102895 424923175 830171457 276606957 638669030 60580270 386353785 350874464 649944080 240913851 685861229 803221650 844722944 155324159 238185346 925753068 977109873 658095079 973353146 596643656 627819099 514663460 833023510 27591030 237184039 586462477 855913073 460387461 779229181 813389156 947368647 123002231 865579951 616429384 616884398 49498590 829328474 62658841 388744633 324176997 816632089 753419708 938756933 451737335 554245420 837149692 911144169 936150803 990174326 317331702 513144612 335592045 481907541 432622023 859937345 281406137 532148066 300043786 950196687 311134771 537513514 878223589 986038555 200798437 785125655 168868138 668258082 262586953 875116700 20372243 171631606 135474842 268977987 992490605 993834087 302580093 306811433 301115410 576140737 24676819 709125148 708092152 850329973 344438020 806167195 38802273 194633474 753149794 937307889 700052534 705346998 291830886 923436546 418916736 800973513 927725911 959749128 568755603 972389268 947668151 970054948 715868364 941332394 515588824 533022148 704318734 866740343 246965965 970605695 426284916 563254046 752995543 959409146 12919191 128014542 444097923 695663397 19442445 170443897 446703737 727293781 392927774 696538748 317323152 476417746 647427602 971619204 922254343 943048347 575158437 884038046 15001418 191667654 729501598 826459155 977112632 992547021 926887095 971918546 373530136 775433481 247118552 691038813 545350410 648531101 192021176 231165130 908821070 917405499 267495973 953946343 969188464 991105339 427555041 944287122 533253176 906419521 459703171 721551887 550670344 758751040 629756835 954230196 348552667 418232344 378530476 580792807 404380515 651669657 653059618 971993090 733291842 918123628 453793970 643778192 233234095 751513681 361990455 601851505 556489990 857658869 758196441 953027218 441322805 544492581 54554804 535038868 389759440 446288618 234697170 282213115 234594171 285614969 124770322 807959520 885395987 893742506 492083708 591900865 792599116 902298060 649726042 746658712 822202317 902849028 220072015 456207293 437020085 838047747 581650430 925837661 443949853 806132570 631490544 947137389 637705627 984105110 305931749 659407385 596909572 693292131 638861750 783783318 975502476 977947400 373020133 911014991 928020567 961637961 472889708 473286554 195490378 589533042 589661368 617990280 952015348 960594852 916251652 959082197 514586521 590421747 784020161 885216558 855273405 976602467 262724600 676881980 596495192 696978509 61147947 99406326 642979907 809875458 62490467 504220312 51360546 279163512 404864489 668312947 929199709 930143918 824512836 870406734 192568459 985839640 904511970 976600553 812907963 822751525 18318613 253082918 65072539 459804401 267792773 927727836 538871297 837639211 297034762 438734257 596057751 764131552 652662341 741603346 473843423 567758905 126755585 937774424 22474892 313897546 261417840 497120844 623006741 833489310 559471257 830111557 3878625 394068920 537773704 928013552 444480782 822818926 269576158 852072489 3891718 809338120 567370722 810612649 479386364 743826752 832003213 949003982 525332513 531312682 26307155 358363651 248373815 724113961 171333880 237418562 446796432 826102638 157187949 656056488 885136526 980730007 841427295 874841634 444539164 644225923 9267491 598899762 938496502 955269190 432415975 669805825 838954766 878622720 33402007 215244737 573523987 753156464 263556362 495691049 28755214 183935006 242966100 827757922 35878583 844712822 64334425 155246340 599128575 842605990 762960810 783516807 120928669 478725620 737903203 764284116 231908254 270518318 40043683 863356713 438998984 859780537 614745564 914717383 893653161 990598797 517643582 793924000 147552291 307882512 604195226 943384316 230433835 879943187 766377086 766398471 145667069 887359273 934654997 970962924 886923935 912182115 83190116 438187787 166310621 369221819 611742079 662995760 268728502 798921359 179691347 632263614 700874615 865981846 196799381 869667883 812134352 863917559 525745795 624916778 366962739 589185069 286749365 682322571 454924352 568036027 827805012 881621838 885370369 975164720 214238803 531675416 132014659 395613804 251218848 801156592 322855944 983791746 333455023 907489695 488284211 851468003 103179043 627288444 732808217 734465035 826849960 946185866 697007108 732296092 717317871 758546258 514003409 978054090 452027565 516302039 388034563 535036735 154203761 727830664 472195138 883526445 725687819 952452526 797242275 901712711 945023178 988148800 971181667 997198379 103421327 875679602 240728101 407265272 761307050 958866402 70919359 474911622 694319149 947746477 950617983 973931531 245436164 288610666 467680706 551015765 509855439 747171616 680377433 882780668 84022502 912755054 827978235 978687892 914352498 959287368 613499911 787296030 584984211 776703532 156388423 699460973 731514766 813141921 397905742 925454671 15123933 141378627 577092419 932504838 248178605 462089055 733415490 849237147 95283569 545141146 185841814 761206575 837543799 868912601 74938066 655404651 95542722 978341426 946430510 974623209 327730527 331388967 637060313 746802913 666716659 675579029 567671151 827515209 930577905 972463771 530991414 638175395 164237598 853689556 51787516 475502941 519211412 964914057 306599600 438362070 557674765 980254157 115143433 147981494 994208300 994712720 232144035 354440282 845645958 996755698 116222087 814246234 954513188 967197146 41378381 765637494 725763829 825280155 492252402 627875206 410850396 580804601 294978848 709395325 772459474 787534366 239936710 490971665 480730424 496898710 605675396 999085685 737472480 777972699 338899293 703127586 77261782 552933297 581640012 932706862 222029918 811751050 328237436 537930544 672620266 813721570 480485622 875617182 955262930 966566198 401355333 609379935 564231277 980040924 127831518 925701143 618222934 645894355 133133996 947882580 145999872 581801129 284337173 607543058 902216665 964596816 761919590 847313956 523098839 866748521 435409150 938226147 608234601 802055468 13554793 943260199 777384522 872632537 650381673 678833747 861590212 972349462 518624376 706897084 4644236 454355313 797827939 988733999 720645001 920195552 471871298 545997559 626755831 992790065 772520943 827588725 22148600 458291814 454920726 459942728 315211695 519110595 791053739 946920340 780237472 876069796 345155222 350981756 785624405 916337297 417049861 831800318 746640841 911272404 648463381 989160956 109304417 124910819 167107627 877552105 31331989 364172580 290383437 712424480 54323722 584926286 511626659 603908557 512186670 965032591 811740175 921453765 871578852 956933202 934977134 984100904 377612335 665664292 509920889 900312077 476750769 496340396 861657670 911542281 36195439 898784320 709034660 823344245 639385118 974751411 530719966 754876746 383161775 577452103 787697336 822975722 1446141 723383345 20516036 49382888 353085207 463215182 171347461 303703593 556216088 710588366 677846234 708655879 672867309 818202306 4148381 248684574 636306382 733700541 503541428 845348629 100092059 742849227 944687867 977560589 420327515 505003451 256093165 315292368 194922860 884421442 885859838 996825391 6599060 569923948 419051783 530636651 895212369 913990538 767551099 827308967 495439398 870249609 775230212 864965069 244193725 358109644 489953356 695156627 55349354 155468988 270833854 404103509 253934420 470294229 542142348 752590412 888314175 903309964 716665280 935879735 394263664 519048689 120239562 870707588 573252380 704845660 24029935 301877991 214348769 461979378 728257608 856057471 331167060 819635369 908816829 932040175 115343272 270224262 492055525 511834078 313760000 430262404 251729653 771512095 994203636 994416135 399713552 723175271 225915500 929570312 131053844 293709048 27905402 323523063 420671276 482788462 118605019 766391318 390459436 873527852 51928741 289071023 578423501 710601535 355560392 588799793 171564529 613385921 10160895 943615286 898102380 975190765 725938088 791897991 320844096 571466589 140190914 901099451 478782311 589193217 401197150 554894676 602335120 981651519 200579044 973608047 384572960 836592595 62729742 93929780 909716861 927024157 713904015 933871855 838976063 926953370 886739789 945757248 268924017 386481434 230292175 372607548 837371056 897323998 997330531 998373346 562072913 713122649 174514826 253098973 382760504 559149707 243620805 994051843 409860294 877558595 19575186 41721519 426576702 578546319 241137322 676535120 391205124 407196696 332008905 516270879 969993261 983920462 885791609 948416815 934428176 989208967 451915448 806654504 42869793 103630473 535689771 677153701 286937037 826369547 74372444 354052389 101846525 372428413 799300050 843514281 140278731 161649790 210077124 831324922 341897306 630635240 576320281 593392510 26852454 540467080 753980485 870009633 136256326 325708648 847398324 869127547 10620569 922026509 149724136 956915550 537623006 958251045 625664609 937818336 16910896 392653941 142923745 664648204 86521791 367850077 270656649 832911269 1629030 61089009 342116653 575695742 295275276 553141200 635295379 886795117 848897126 878037516 431517110 986542801 229505244 943114166 830768856 899273471 31963056 791413816 215210983 259415706 647457032 792159715 804124318 969731646 117444522 225209877 453008322 967161708 812363455 955484634 174847503 533693452 661988144 746674135 489519295 553199510 400314848 678085629 949757681 964470225 656380509 788729456 518106137 822939710 7342585 686776599 670612853 862695459 616210883 839260775 895023845 971864243 82425702 494153151 346016815 738237822 498223138 755438364 184067890 762920283 31687831 51561223 430403357 491044810 497780905 622530965 169710742 188716554 156378353 258355922 911152125 966222349 51537223 67697269 752317545 975067808 582219852 802666093 983980972 998744203 380575327 503478388 660064750 906335309 274653359 874442578 416613709 746454256 136288694 838447276 617480417 675796083 410536801 537950764 824329822 860438210 679546850 963827258 151481710 886801950 451722628 609343381 968180717 983810860 549941861 816594645 595877205 853069478 312390520 685400142 511663460 881741582 955043832 978956123 275764194 678703752 849870065 956328962 945593585 997311436 793722563 929017936 501485299 910328647 694298979 843073258 702491429 745302538 448138947 801032006 845784523 970286508 641183802 977883368 630366578 909688318 246737365 423478305 261560039 270275257 756111219 870134003 519996530 908522157 747743077 925894031 663550536 718652199 541552142 908888657 385373203 766297175 424099227 483552629 304925307 662792306 308088967 517675649 87380918 832101973 315986351 774268980 740619919 928183600 772696549 817153761 922407383 963534611 376995764 844218217 423771764 711362244 502789210 727236434 204335221 713326938 559035800 909637571 913034452 956328837 641668278 868506567 710725726 858288812 443425666 570243528 784728774 800015812 35529977 391448696 136748683 338776883 962205894 972928287 610650507 674271365 897670523 940746094 766386802 952953935 708289168 837230751 266756459 533976854 883966773 948558762 862850253 949246817 399531108 424908677 345767437 887812220 455208089 569594988 556261379 962930117 766581944 795809032 902757180 924447500 781092205 894171542 598641259 784337100 588835493 930996172 173455270 520481984 118615061 878696566 233263081 397854318 962319212 978659492 881835258 893985028 10758913 686300394 560859117 825591865 378983014 480766104 227722069 822461061 167551160 645724457 369688039 384412435 838571492 967758920 849639946 902178427 542861779 778305270 84214334 242805550 152183913 265271787 221738731 268966759 821579821 886937861 624387246 650097516 91269731 339254866 484571343 667554219 697076438 847574684 140692683 571741091 425202150 618376545 728069975 861296076 885359859 999242194 85118943 770777539 464161506 796586146 684422531 829110446 367662729 507364561 105833538 118401211 544522564 648338257 969259068 998178877 806294061 986079760 11357828 214010914 70439637 532258242 910804921 973334041 399260602 442191765 561473580 888330797 90424772 855497178 321412029 889503958 789735416 791234935 823551084 886779531 144354383 294632737 757943629 993724878 126990058 615714863 64586034 321123555 39350874 73051544 707139286 909298922 847821672 967090944 782241163 864067914 19408558 520221562 607771964 930665511 978616954 984170200 730572453 915962505 745309195 951570546 343919518 571196436 913386137 924423078 599126925 634477082 845674001 953016258 822351786 986004360 603401812 817600092 68900424 557491159 427218919 815619818 367043987 967783481 466828608 938854581 497652790 930134608 763964696 992444043 379697373 551906585 196971569 633420253 795997865 965382938 693906213 961359189 108441873 493164289 841409026 854931929 562271748 600297221 762946292 989707471 181128038 310876410 572995381 970246299 109168420 278365050 597598611 950888173 621351326 954337845 570911166 740138576 365074840 941125506 897581105 975504243 255603448 315735617 907602944 993344951 389366924 817980179 469753179 782145255 516329378 640379834 378125385 966096426 56758588 377748159 125299449 475375712 933794098 986985801 630528321 801780237 676296934 681680361 40159702 152055061 777553140 980163420 628732600 831158975 179546476 329258064 583544657 826105191 19893324 850208953 921599349 988919049 981668310 988369714 653359507 799252127 943300608 967604284 359259842 514866283 886836509 904546523 742405136 774136944 428118603 513128851 389399486 579210395 455239904 880862045 414631301 527492092 697294322 709176847 224354151 867576596 415108878 924081414 581269417 989369435 940908038 958213170 970299732 985890928 624373098 681077109 990515326 992735415 570358716 900513832 298373988 794179220 860509370 998148879 507088636 622194417 61577713 704886908 665663710 898705381 837691080 879572205 881077090 927528441 137892160 151187520 879923752 972890869 115065145 428689860 352732977 800789435 597354182 713851111 545047773 569878658 204524265 537600306 607535986 737747659 267473059 777629552 732829514 782863686 569123523 945981387 273057433 534596158 179163611 206452305 588734467 944286529 126743168 185355647 490852400 759443433 839677919 988332114 34897201 241475408 297061014 787911177 26927732 739488380 346197180 973228681 991112604 996443853 742327327 983471411 331261064 636396637 216445135 256923787 986645607 991067209 879970260 912967394 959415947 997730507 981329748 988054803 506463760 743542858 912365026 920364120 511420436 931592080 410439798 640781912 138048452 734936476 228039303 620314084 644772052 695780824 938031097 956804167 283970999 663223333 942660318 974614228 320875505 681889120 507063480 631816420 694409124 924978125 610701911 770582770 779316904 953875692 264796370 770014399 307285024 532295036 983926973 996812060 429469180 930095778 790874364 843914737 781066182 939966802 346424663 895109795 50366663 344673042 526347383 951360864 717175187 740628022 164846478 481785573 105732008 404812130 501109708 622670352 397150740 840352600 16875986 764834948 338142162 752533690 915680064 939813481 367683326 410893835 279818641 901113887 653747352 710579042 774882830 905563512 935824182 978355682 792013555 998164800 309303186 611721663 5548973 463708259 621410438 877204998 210197691 653070254 861714616 988916362 345215304 961723632 821298734 975051015 134893220 828827385 447244741 620749074 570308633 901959727 664963457 950086524 318997768 653114016 633184108 839445850 535811895 777586396 294152238 362947774 541349386 745791866 1854736 715403603 930345795 963288221 116373811 499719271 912313315 957642509 368639880 860808890 158784398 581320157 95091152 694731163 797220443 918170913 14145662 654160912 437224107 792220205 683624870 944703618 853854981 895210728 881256793 907271300 370884873 530409793 685190564 719808822 167126107 212475652 914514287 996460727 975205710 995871395 449327533 658536395 803135552 990035915 777834512 856911640 730978427 845977681 706009669 971158008 315666473 970489089 591610856 650379723 811172702 845382086 679501479 702454033 615492352 916943662 921974068 971131614 407254801 984242998 391657138 453966516 843675155 851522879 77997973 346359159 332832668 795194370 392423503 441146102 845906593 963004256 418429587 836431452 218459219 348071646 222242650 624978302 401733888 931634572 577867298 615678629 556437335 901040029 673785269 742933613 939500065 968542006 835407898 994244702 81661599 508328055 535855231 542577893 933442818 985333167 350994563 982580820 400016990 720971073 428209526 900420018 69666687 889708792 585885233 872360206 229549990 511639466 767923192 939525967 438196213 911079185 776857791 911756745 478324819 643771119 740778295 900020758 629999634 837312887 581316190 669171558 963753180 993965269 171138440 550783517 719029373 794760169 719881163 798598295 655870584 718486405 822853555 832518370 916875714 971341192 725495666 726353373 821464410 927945300 119494619 613121859 712853895 730415656 656084194 955162296 426196815 609060122 923240639 988508028 728166600 786964380 959589684 992041709 736680617 926836623 847341914 936312675 564223959 620632810 894166974 906093919 769120453 810957687 948864336 969082973 496175908 757274203 544944818 834267177 246531864 411660882 166873165 757751991 281052411 415468719 491897855 761632755 819685130 915351791 103966720 876893302 463445909 950001392 679903923 694925770 511582641 804587404 569302895 703224751 930183705 934054565 319950233 350354182 307420904 966061061 64215412 626423497 429787721 938472836 496995330 907160326 117754284 218589260 435287193 562829848 149617553 995006673 75108332 205021642 783245544 841010773 248384097 548041126 89611289 672257478 317498018 862830173 521200838 584566221 886356994 976888964 613004121 896792925 79555318 606953961 174107307 519914113 261056357 614966181 288762739 942685883 664213379 914607264 745636488 889442214 405341936 635154819 115804285 407359196 541407811 736276007 987667331 990038805 99782563 437511202 772294112 976383171 312727562 385189568 783002878 854526361 550267894 974205494 88414981 175286928 54548793 921471371 18730275 469093520 131296924 513622608 819548198 964788750 951855120 963911734 553068057 566446112 170288057 783980714 937179747 982558883 545871070 676058153 726963729 974782506 639044964 844126668 183174964 737613990 659418509 867572369 345273670 902370464 630184141 957440776 906915287 908263241 957547655 993111480 777425015 925379925 89886274 777449127 696611989 776997060 442389091 953951458 270506044 537250684 913878860 930669854 311418688 710457224 857212166 899968185 859766231 941616022 663911800 697749551 917972221 922332931 257818620 450578897 223501468 493060999 233044388 786462011 525773471 571539226 581667171 805768671 559881033 766133292 814156436 876396056 410320537 646075377 686627777 698843683 395238807 484259564 11978487 541726870 966908329 971185135 805564471 896634891 916106296 975035232 499495864 742616831 693799241 954517911 998365939 998979189 675508916 794131480 170789892 837937218 995798282 995899115 11055502 815592369 869781392 990847000 747235985 973669865 16899048 911736853 638195363 855546390 789461552 839122342 816617645 950581386 917018081 978431007 12204916 189537969 59758505 359753372 922742043 954840853 505130601 579237322 51058602 749002260 608332893 695146734 680471035 867437911 263973908 522248988 735227009 912392433 713755549 953183930 173079670 654312916 466537516 674040800 382628388 495393726 737441661 937078575 487122770 937514635 576393871 662459884 554374169 561948208 686570866 981336186 578323991 757027624 165615336 591134823 754652182 909636622 695597923 970608128 66909975 548556929 737670904 911738139 996858550 997847146 565205447 957197917 550843778 756913470 78592433 212366531 637685794 877922824 130042973 461066839 370992191 546408950 481615020 603218001 494391571 637826122 804577858 808048671 491131319 595286282 425324668 832281473 770217908 834378660 295983252 374308127 842042707 920242183 929136847 996669169 590485994 886092152 496010770 894211408 529244184 777365717 481094316 846707464 313956421 329037636 319319870 642792124 337729194 720212549 170471276 243658095 978855216 984512040 343545064 605467875 461468053 937442105 746881145 942997980 73760625 834628506 697717293 763121790 966370248 998100046 31538637 894028916 442095857 971037082 608609762 967262403 925455753 969601028 576310335 751009216 572794498 994643638 367870978 501343773 139537194 244200267 32336427 245127160 208249794 693024953 246900662 342466204 381839538 900235007 439206488 847989386 184747710 639290662 756435454 976838053 925426429 963959403 368891043 552202585 590923896 829549249 355943893 810692583 717673471 976050672 118194127 600431521 160202246 887927092 524793456 695792113 99820741 528895953 376131114 652905940 540198433 854263007 395856204 811413849 233343869 468991636 938850347 954603851 901153613 961830610 704448793 844908057 411988594 771484811 254278424 387529413 481953386 518931265 980201070 992479570 681462360 875381609 473252152 892451545 750587491 805907358 65587860 171342041 917938963 990843992 703600380 807220724 521519151 839163541 603188895 950782601 987682322 999135208 236528185 903040958 752610508 948616689 167097161 265833345 941422201 979760715 444279949 528913437 282080362 472626964 646503032 715999723 264283968 796958513 127287434 355098799 516776590 803975746 864961802 876019160 523107724 822286399 450542804 807109277 500594889 530438967 642877637 886066547 837649268 906895935 767972484 979532047 212633080 441447234 527727082 674042608 483010285 825860850 523641257 982900706 119072142 132125431 521835050 524764712 909388913 933144223 947680519 967473875 544274748 726185215 436324350 893667979 641743036 846730941 826386929 844162248 733353071 757698758 922659345 937261004 29356038 256224755 963310945 974836571 874242324 934400711 987176086 991400353 139107131 602544438 393892194 950814295 92749077 247923595 996473400 997095845 612759703 620353278 405792263 728943868 84712017 188049335 474046489 772974931 370790604 520317985 973526703 978984683 648542641 884017797 429021975 655908514 201589105 764874451 326497211 575073408 709169325 937031499 530408170 871314678 879544750 901810455 776267853 985210372 310716540 517524083 398353528 406538643 388622509 653017743 86853886 165079910 227944840 708565981 152221802 408077886 125811395 304194534 163447585 596542637 553676567 759139723 969916392 995364624 864728737 963740312 668873526 825514465 985370489 993518334 583290308 600852519 488238824 686416548 966118924 969070506 638349736 849611027 258333481 273233918 119812510 809594274 320075860 966773636 186212307 833050463 819432397 945984044 110303265 323898839 336080901 817702107 502520012 970044021 844304927 876632790 190953075 301742124 310897363 635763047 693139134 981369501 859644278 949317783 933854525 966085344 746054426 932354119 778346491 867481052 49069303 227646665 968367106 977642306 735039882 759125019 248888575 765723894 626240782 763953970 670001254 670298192 626276114 654772308 311300858 958025840 8417352 635130716 804766229 940242513 220814923 943934137 333566236 497026411 627643908 874917251 624539632 868238677 702951696 707586824 668445700 933989487 96897892 685087140 517696172 542911532 312053928 597955082 567192585 616367937 889070450 940786334 315525744 491146388 572050616 832265979 254683902 880429293 950016687 992584898 448910444 881809573 614583098 733011890 952852708 983211900 784225685 813228478 894868549 986679507 916996432 954906961 172327947 677222664 252090196 515138336 395273635 788393527 812501539 873960784 960126970 973183963 22643522 151743574 578621097 805424032 573255083 910508414 544122492 841648409 177565118 642621715 79927382 365223503 260737973 455552245 314757561 894022301 844641994 849989191 432056824 885638735 701624956 837719880 937806127 948750119 704464588 883838137 816300483 853734447 731620375 847919785 22053180 296731190 296767850 484054197 437298806 895253036 451481037 865863230 878763263 883136770 893776828 899609835 651971950 688921204 343096617 657718423 223098681 995290189 215431672 625003060 688348773 840176443 25063171 128506902 490562724 706564783 547687351 716619391 614375238 756711239 411002510 926927269 178160482 658982852 111923244 186619818 269386259 590298151 705846727 932108897 51445413 750710174 333258389 366089970 361425910 501836442 806669223 871649262 202324508 231673637 855512528 909633435 129867221 284364699 597135659 787486889 228910095 877939331 74381783 776841985 53770520 219871852 601119304 887739784 252687356 468942908 568802249 740272833 194258715 211869745 839190344 872498263 534825609 546019820 165457656 855637994 621432593 792672650 859112114 885442265 280161321 800883266 154996976 348309148 855776967 939029689 861768564 864660686 66835392 349419556 62195488 204314235 352908923 615915205 860666842 960858939 768013708 967616695 520367570 922588454 732245086 798637475 547687959 783718574 834549667 979225661 935573596 993090644 143905633 435995892 452906226 679247754 669435732 878880156 729779890 875183775 421172318 824522620 381773383 461306156 27220199 911920489 742692744 862893252 74704603 468469417 877895949 946651610 906800296 933252397 747670254 810159144 805400393 872740447 385790095 598850672 622385780 740544812 427264406 586365554 917030430 991927878 199716424 343413129 818445819 826338187 728728403 836830878 298728266 903437032 447171901 556935422 557827999 995568554 669880869 950136932 414982508 842976504 409140234 772205257 60893621 937400562 30871682 678253870 130936235 883012134 208170470 965021192 102598079 655131525 50071637 523950814 317867240 781790678 115782360 688195005 529714907 926123271 200677216 488399200 745836230 755098001 993842344 996680581 764542885 925077432 274515224 366730516 996107062 997447261 795894605 947530539 951232495 975175621 528410279 725470852 128953076 899195848 637075192 752776367 76529084 148928261 461348870 750581850 925237794 982548743 354669265 901573288 139506160 236888850 135760820 824312742 950338200 978903862 283587772 985162844 830357193 968985552 595950233 874595365 785903558 956258867 426307095 633371651 483579247 521028453 808383265 963532444 499894720 959593383 591790377 902947424 826892741 864580946 214498269 716355436 393356384 874517363 770308897 988598831 154528068 709106016 868835798 877513608 927422405 927468742 389967183 857232788 578477016 900287258 876542703 966467146 841706560 995032332 771070864 986349195 248465638 555682985 471601659 980556656 24308557 827030890 317040470 824206805 480952281 591833084 782550854 918566487 361682841 770249199 569728949 759415654 198108364 314021491 428700282 508741215 115416692 504530853 945271344 994954471 131654047 196470835 126386900 222950481 983729100 995025946 361368640 407508126 900199603 957589280 807367302 937491303 870009459 995864171 77256971 986099221 175993978 562327880 699753481 706280236 532140990 715626359 267546726 283317854 684789483 870410125 239963769 678564304 335991895 794486790 779051810 850568022 9562468 215738139 204996323 283175727 791494748 880443327 398921782 910551365 565128319 950651748 141462299 447365216 56277421 855487257 238995730 693174890 813545446 992815412 853536645 888878138 124324833 513389318 561438153 946949818 143921250 359827109 816940381 921205609 371899406 771070386 54504130 285041127 946340284 996687999 731193170 861261084 450710553 738717154 777370270 873669530 772691195 870967200 165351454 874340871 658843774 867555880 788267586 964843404 994529990 995444444 63022545 896442749 959100591 961621729 339908859 530740135 487867322 904995699 540450048 698361052 881865984 901177768 328864994 920670016 830717293 846756552 399837731 815108063 32004472 759980574 451033731 752159965 718715811 893168475 428507513 586475135 835444672 988874970 362296330 736194780 316052389 794849722 355511755 440875389 177408872 207420502 61806277 305806113 420826337 769910147 40154324 495336733 918564341 973917379 294971934 554890644 793950232 800038575 493902626 881027478 125942956 926287245 65210664 826885271 801117091 842667211 260131216 696541244 375398409 419276504 61589410 175701601 189219915 926586877 512597736 738210028 325345058 705291932 381827228 766613120 185254644 427836156 982086329 990403918 694253410 917884445 131551970 942732759 728568123 772821308 779435128 856822485 455282323 513001937 12044278 240978517 688095843 866358353 17196883 384905160 740895900 917817625 628670256 706767733 346621649 963472295 481379614 713809562 976920245 989432374 948653525 958266935 320671062 967932337 938198033 965193823 834055176 899152042 890414977 976205394 901309528 966099564 131018930 622139764 363827393 399835985 904770860 953197102 271018415 772009963 323540857 389996310 199216642 261456934 606174752 709486997 348529033 963948258 303708750 597980887 494855433 529911664 646016963 862932998 559311041 822361256 178062931 427720190 41235239 126715399 409920738 623113344 197268097 481976861 216923019 249350123 590650994 823819380 812397687 981034377 599927587 994893312 607600807 920618736 381849262 763590419 902117359 975103001 710545431 915473364 70054987 877475048 60403928 127613233 403609884 758261734 76143915 824947120 600213687 852895232 640607183 961961099 768523303 815221827 737248280 940999085 162002348 290872018 593896984 615157953 315736560 804519494 36279160 700646487 574689980 672994682 257598183 991592222 646731616 923391683 769908137 928541910 377660977 924452780 140698989 934888178 345986694 581961650 11371272 294459103 651780222 922347524 773951846 844756235 858081760 874933544 621784168 967823705 297938234 482376946 538002024 907950974 533990028 954296770 733624458 975843671 533417631 611399375 283015401 303012167 260198611 374219106 956906656 985205902 981870765 986830648 563189078 793894672 617108330 990836438 603950666 893640211 740428662 759715619 801991913 830867230 851298826 992801595 409954023 978780268 247129606 624872148 411501993 436817538 780001578 818823055 278698624 431237225 837057417 848680803 861763830 893704189 603115201 946841088 898508646 999179261 75514090 783730436 436283712 860133659 863379259 993157340 380813278 907755624 21453692 507170122 208159954 889131239 92205911 476679555 463438168 906652563 87830900 715710133 55077887 356132199 954186870 988214360 756376715 824773232 574418130 980950646 14874964 168577015 442238286 462329230 68909852 228908307 373262550 410385984 765987545 771330368 357904491 366258778 345761796 427804867 460528412 912627532 580781752 955638806 606642424 914857664 487788899 505816206 953016654 997407585 887999393 946898617 624760526 638306051 762202722 774686646 807713536 906658012 444845819 806863458 144594801 432521945 870198605 877096816 792576780 923672663 596600507 658298698 162418602 355706653 80923092 142576759 417810448 562344039 147080914 671911274 587698689 961093989 398659549 542758563 464593611 714080382 233874485 771155433 145381237 648325247 636021969 894871717 97394814 405354094 644870524 829959879 737931004 743224640 774830585 814906636 199744753 384156037 240928796 262650991 865614198 896823487 601810413 856047294 543413053 805836766 537345948 630801245 380457557 666764155 4573532 735207877 353209343 368556715 297225171 312086998 137631268 311360789 831619189 872021639 537619683 905842753 622776367 939797341 539756583 789037547 485392276 617563337 337645275 546190332 257913608 361364068 366595208 846149637 796321493 988087578 657226899 822046215 312664938 682793120 362628048 417661005 234593102 875194794 753501435 966139479 158032624 242935169 813209694 985865378 106230121 906862486 141188666 901441272 542706280 719010160 432299430 484547236 167557270 951688483 495111755 552509282 646334704 864534872 349324983 758568182 229582287 520616784 931678304 982042991 287848209 319525927 332063120 542950318 383916875 951272575 847469632 968620948 344605477 952401235 758184483 786542214 527538461 654438086 255291864 941762243 761806762 807567768 367758066 728309708 409470535 835541423 939309174 947436503 417035100 555622729 591314482 917791783 331327832 359642997 289215109 838880158 878908468 948194165 647963717 870814536 136184141 660989575 221490950 888608479 522064228 643315075 662752942 924267910 604268480 981706745 526072057 908750294 520006187 945445366 24849226 761581770 607200421 621602560 819142503 863684437 548769869 722262933 147285570 417595148 211921705 276777752 925682287 993291705 387801045 844891709 727303744 831577655 119890292 862373696 339962047 724164262 750684303 886586720 101859142 373297160 996499540 996873245 233068560 544622868 237058601 922692260 893745972 926919128 329974430 556063070 123597819 313394185 619100012 680760865 698772141 720369427 881778277 927078952 517340641 589993909 627622401 700315608 952369806 983823295 48591480 427950054 291760832 883668172 805851346 894066321 591721871 787034538 856360116 960288449 720101016 735921400 855501318 875211391 293882962 947769168 588287877 834250409 796749467 934835188 80516896 104599477 48229184 621782854 439939532 956479593 843264020 879660978 182923443 214723727 506161439 798140409 187034942 528233311 225513624 464066454 711730430 802269344 747680629 792855994 101429878 207383886 881838573 983079514 588007437 609163050 640366927 733888211 331728281 742060230 945178444 966839766 187885045 833187517 533844037 613809867 157929707 733890123 281412351 719496623 498903813 564023421 545910526 933474978 529843723 961595903 517214154 679844637 503832662 656409210 512024108 821819415 496845789 570525957 616031597 871937645 139239664 219363981 732558886 865243871 717638970 958638645 980124658 987965948 263542650 439316520 624046472 671696119 35090599 349081337 870104048 887543949 384776540 717196073 71341638 293030215 508947778 843806054 613506641 695020261 79221778 317006351 456430161 645783328 883332270 983787745 174396228 695338499 92137800 611181772 271089119 339305493 189450778 396794165 616486775 671862421 936262657 963051475 148927038 715899252 516715554 581348783 182018801 848535855 545587978 763900703 861724941 864693653 708468955 784910585 792581210 902842712 941007556 971769784 17348600 42044407 407082550 598847127 782720034 976221854 79926341 185013537 103279798 222881650 664632639 956614718 637885298 733512274 388380182 972763023 813256943 941771758 37883172 744819806 588945875 670715440 521953321 842927410 946351953 977831081 817094112 867662428 170462453 982549320 140451517 734694789 394137240 877317607 214901328 906022223 198013851 825581868 336105401 804865059 733513397 814693550 756208490 795982401 886104494 891683872 772686573 866141107 516260722 912164003 983422572 999158171 495248038 978308749 336217236 986243243 470716593 675435946 518956434 838044574 450594250 638168308 356400854 625112268 541080564 907665121 494748284 999261514 348440205 835277851 968857166 972350699 265056470 388756149 198084734 487426906 223396174 996679322 895252698 950560910 456122261 657296611 907104579 969352586 20112099 780122907 89334229 488357920 402027428 501178337 73058011 747374377 184434753 672006984 522458117 697804434 920998886 937210437 248934521 913132608 279939041 510549009 252043093 510277764 185998348 597300518 97717441 367779681 284435472 650775492 389605128 754932471 372809282 872041614 514191313 683625362 146881699 411554222 241749212 446591431 178723899 199002163 928711481 931351201 800478710 938853746 238769723 985410281 141582333 181657115 94777088 828428699 715939468 982671966 390114523 900071291 867602529 869809406 865123221 970887511 89877150 430263480 572130522 745757565 746773910 920995630 614979440 657174819 59492009 580647565 760222584 836401256 276431146 910710146 101804831 410610861 818601616 896707907 292323047 719054353 226328757 968333804 473560228 562538187 465986793 489080694 723046475 932803322 161476533 798729466 270278413 710409679 480551739 542963389 85202866 127594198 926870160 929381816 546583986 589935271 111085641 463407151 651025460 815184673 142483118 533165679 178104444 481649469 493238177 989821375 509754457 928382501 62136550 741603694 848438244 857853579 811980631 878678442 493744513 603853720 250934092 828032516 320981922 959098195 586342723 589333486 211997517 244796468 639542963 652410342 760030581 931237759 929837984 939293774 656454673 791418792 329931192 932593692 233154631 809605432 948396810 981420726 563421867 901656685 397089415 460815354 840967982 986245034 797248634 989011633 620561072 920946491 74917788 228454728 241681061 529126078 174363106 855750613 638417798 805470331 884888274 992876885 976742398 981704205 952950535 970360413 931750274 950009884 312475304 542835825 469868381 881075427 847509818 890311187 152949535 806888166 31158439 868188142 225341901 687298318 382864770 725162405 900568166 950799571 156207832 960927931 630159475 837297783 166586049 600240670 204826300 635023654 384215519 694361716 697661923 788678641 717093750 967135474 170042385 857365215 823068412 991545619 71381219 647783705 335238525 382450458 647043598 780394682 545418390 812590492 367642919 810285004 213148713 878558314 537655309 553360908 362585557 452723928 907316389 978597078 965875181 975211772 45130751 947516484 754112900 814213286 647177094 919502796 867552119 911898067 425674354 989755822 386328049 452268497 634406394 701553823 616096770 988234586 917481509 926806648 237464346 832134590 594836534 646437086 367823144 561209958 983487421 996440595 636017346 696794546 343737038 394430994 775542280 849168327 859657754 884739481 111659016 317479461 962176116 967356247 29496442 363780468 117671186 984041957 187043746 468744859 969935807 998335130 647651162 913281153 681319565 762451618 173139169 559574546 404194744 787666330 109489234 562146629 336874683 597296825 785487047 847696902 555408022 849369812 62572371 794842505 575797838 965136706 85162193 637303573 232574839 273402841 153844444 374795257 920890133 987740341 911047613 996858384 557310065 834699179 429326480 559354271 448245552 616839640 82847916 184814951 275975968 392719863 650379457 810741501 65788614 416951922 924765864 976950083 877383089 952793266 250085074 318161024 201998218 267163941 273197862 389116356 683876745 877851331 61516431 930259549 459535144 741584500 512484340 597998396 560388307 826708018 988485668 996080050 929979223 971929232 8413169 810110468 218391340 321504134 383861837 633218931 51949654 369090463 538060015 729419916 737768180 819256842 658637167 822540020 487550337 916837578 172853076 399719197 611708875 924215429 546770177 876351563 384663690 411869871 435876492 785195383 915048009 940840324 717111304 996542798 442457008 827278183 998415882 998750932 365535581 546162127 438769862 890456356 831819937 873490979 79519804 277399841 124662338 327099680 255898695 283161775 992318958 999185890 75902973 875726350 811779983 978211850 940849451 994118243 325665703 387282747 245916557 833510742 464194160 705609092 792176816 822630242 687789861 709018644 342189 401672811 419489518 601674906 393776216 822494184 378079168 880793158 685368418 740613683 612462879 943343946 530354981 763992280 755658973 893622574 625344097 735011154 194726873 450849876 380788616 513211067 786430908 817285345 577524663 977020738 980892799 985486206 220402269 354176085 832038024 923797321 994634481 995819499 343829092 759708869 657820473 956200321 71428712 472861507 273548555 925720657 247803379 942045634 142290740 471788358 559672741 872537292 813978632 828052391 8651166 848427838 229520141 428810767 837778281 956082371 479536553 878403741 367547162 493228924 450015227 734390742 579955412 859076316 210182841 321391220 652328441 682954949 714715838 885259200 937923692 943462277 180186809 906381328 396662092 860061637 39860274 348578520 454073926 495673664 880048338 957477547 368370408 525997097 442622195 919469166 388542794 453320362 814962307 904542878 243482101 880384216 278659467 565117413 664848387 936467625 423155572 448455359 660534249 898081573 872459117 999154680 292286038 769688310 878593053 981461543 342662143 610451444 322428153 755557020 847094522 947156256 344034933 414825783 115455944 611842854 17019726 687461970 205846855 555607006 218641191 855840243 407212034 416994987 426146654 619337861 896224432 988236852 432376944 570200531 960087915 990762551 970713811 982707908 512566477 908474034 526939309 843027224 992243780 994197070 102115984 243375432 553327055 661400417 115936748 556555434 288708703 362205407 170611726 222640265 466961672 723747834 354843233 822255153 416286497 768425411 325937194 895446907 91057927 317447719 228699373 908984143 84551282 365640984 813574180 943325772 958328235 992484097 90684202 704430716 94966398 221225365 177944215 405711510 735023018 869053152 49681678 135628162 603533829 713532778 541191170 919573305 847400427 889268666 398653613 992006572 39131504 901581020 751564934 975426138 192332718 226159691 400053391 641187066 681476286 754695702 649724017 709631553 346779178 444903433 777564055 872088993 732187911 805437226 218037505 318878024 504146969 604036230 949115340 983014749 393316592 744806615 912479982 950978285 888405267 938642618 227032255 304079492 421436040 933164510 581552689 600569470 423293802 990496511 838913428 935375406 423019003 998076423 70092679 769551975 452125433 910021610 279786669 498924816 546102701 929865036 558974297 802217389 876173032 878794227 715052387 872613145 680107400 907256275 245093361 860300644 204931526 594917112 830699585 905604395 7857325 509809283 804324615 923557510 660915869 924757364 729805991 893163182 656961892 672181921 310809298 866539731 637095306 703178787 605396578 893170116 143776369 448939457 867895323 966370354 142191787 979059448 132167192 633545309 813005020 952093800 433138681 650524149 112553386 598512019 953918986 997889551 243722472 969625614 150089193 480722061 164625869 818383810 148951108 549304704 205495462 494267269 702668536 793902399 100529966 391279284 15799415 258535422 580186763 626564163 980216176 989094762 788527003 896436002 904713954 966807338 496842951 906792727 82707384 642588258 831275392 957109614 520525924 866147344 763773628 939542401 481257669 971256565 499378543 696671463 533917037 667792509 903325574 961580516 617834045 839229802 377324646 562600136 531121281 787949015 56963948 524976891 366311933 534176483 992061458 995328606 488095810 660234472 107402028 457724944 853038324 992191286 162719112 987292760 215064302 376098926 536401711 928987512 489768904 549361185 927036239 957336992 523018709 956835130 696981853 720587440 931601735 997594240 38298044 639609756 153875861 771508506 328851137 363177716 501381096 584222045 463056636 970986180 360565789 761454437 50584626 940411230 590957544 690593960 511764040 936617287 785960387 919090793 737839493 858071797 840293669 914949284 734169045 872747832 934016186 967999815 166690009 495713592 373610778 633764536 805309134 995095692 927398174 951576904 76002253 481226638 547150324 972852506 816991060 954620588 615599426 968544854 963222723 984691170 41227970 216663250 343044327 769755594 248501974 743320790 961533565 987482594 439558151 989219542 620564677 908226652 291973670 342372119 558833633 564407314 331469975 850220083 782305264 919909078 738455311 878207504 251943010 589983225 276181820 424191955 890642285 936778281 865890763 879685326 806229612 970514866 266351845 634923305 797378064 803174132 193544798 512012029 713382628 970105530 156825284 268170125 341919329 424871151 106953709 328312064 955299288 970680582 918098523 949453769 664567578 983979346 561623464 591517744 684521890 843670495 108196651 776196670 418873041 681931052 645037517 911678921 392642836 514262884 572361410 782389336 671517564 785436713 239102519 875931188 5415794 17298312 317239971 444889169 589339488 865091992 816857191 841698936 293765064 617303671 551358014 619240315 194612896 401257637 61094878 818259260 580012971 644684850 247229525 599948462 218610650 620530823 495170230 549386825 131425227 806510069 436652992 688905395 877025215 927138296 470408512 595858394 541381289 749893143 856897648 936579440 972311165 986968982 630427898 660827283 998029344 998371936 292061726 930921690 478525281 618560912 108228988 703045821 779006813 795306138 538303370 830256375 945674160 970747009 268623075 962299734 270803306 759866498 242694640 791258395 641824115 845722622 810256127 956422954 867882259 963314576 684613127 863288610 322178222 514876200 861144575 972073905 250456670 666189523 774251729 893158182 779264307 843536733 687441606 713649044 58279048 455093571 727657978 868942670 576923926 757284781 894685107 984775715 949381052 985878454 470533224 959277346 357462385 722627773 60148739 157423749 894516595 948611826 932685425 933225874 881885393 916476899 818795195 984380222 268747465 961230192 605300269 871561056 71559338 992542823 583784159 760877689 236357520 388656225 422424936 637589659 637330163 761244897 520700254 687222866 723936588 938644431 208232898 614270947 805744954 828115269 286438231 959042980 286421631 362321796 118239041 135150751 740860538 797811420 900335534 972523456 793288648 976307180 851511383 941969551 263377079 370345485 22543175 955461364 181029524 412811472 656474061 823447667 87975923 445642605 372449473 908325731 339748660 981520418 172662521 748995362 992756960 996056877 281380546 847385734 702023432 742568817 345490088 641324031 260903460 423190448 981853826 982201870 93800585 846348537 293528921 676117098 122555115 194927201 396291257 827745993 749651917 806149507 442738864 732897415 772679624 953299627 282900678 557512194 451732941 679432393 986366813 999150719 655976364 871007415 871611067 995997216 133648579 440895714 782982613 814790762 322801651 560262945 470388290 476662073 901917914 925202541 814425733 921049768 701108582 996667631 758403292 981780500 512464006 595523151 91284192 130850682 884229180 958960989 401673304 938574178 610999886 651456970 56307172 356767677 216770813 289500546 166322751 261163980 133574660 692607629 567345204 596035479 586798015 781889427 148154069 256292459 799503994 952736786 208011947 852351865 219674737 230185192 327576286 698039994 724275294 778528711 262347632 791979174 88060090 332629032 777652361 865961964 235154741 610204637 481660484 541626296 39720661 644189003 145463793 354606762 97550627 685691143 714485570 955063015 351181302 603778225 398847571 889750200 97024857 803777545 68587903 303649774 939040583 976120032 283181018 795231465 250779200 630460960 371181966 434113667 480204088 593325102 290070668 347182347 523998895 954702055 225745748 307834426 248916616 877878444 829150915 849288269 655545529 708775268 770022153 882800304 814305630 904893344 108562865 733318949 899322912 954436159 752450112 830707082 864223420 936598830 634755917 956677944 60359622 415278985 900174479 900216489 830807221 881418515 993354275 994409430 523725091 896573061 887396718 948568277 727078799 762387171 617532437 676138321 343802318 383212533 885891275 941688400 842369918 968108650 69508175 826713749 905678688 965418877 268541281 742314242 99940867 882326422 963308971 987562235 248311525 679360697 934707416 989271438 394356704 827447711 233109371 393470823 886178362 964324274 129639372 553281603 547208392 808548226 749387625 973551167 844237888 850731074 965204968 976343789 637871559 871940749 419520688 607442086 120766334 950091943 914431441 958633068 662381260 836671986 816655279 954692380 139911057 465664858 54090762 623151174 281829801 912834600 731791935 993361039 87182611 774757469 687235824 701725724 493564122 744426517 833382119 898342135 122847584 898913778 636136485 876988982 596711291 977478840 491460066 607406207 711249374 877010657 733778838 917566357 668415312 875161509 332568178 421415264 672360286 698192583 871006377 875386848 543832722 560032243 513085729 783263502 199157957 385793169 23794658 595986427 946838341 982783272 590597273 990585328 574249249 868278895 630012378 656426131 428775261 989310974 372962705 404009217 809387561 826210769 158033593 543119035 236412048 567132959 804695797 860806360 567464338 716789513 899022735 913993879 513297414 885077115 186190645 579517851 208488113 366421110 921031006 990839224 4769093 515443520 607593126 927030547 74927564 203190872 396032237 766816749 481654943 548897310 175901489 200263836 989242412 993185699 731747857 965811449 202689498 362170864 82566485 348725005 542248986 549424689 850077256 960127323 592111197 999377096 534352858 956125815 698443730 704371434 179906056 306694474 492561610 786094803 881234524 882074782 695811987 890865755 788351589 917755472 572549346 717807864 436863713 672410247 488449697 871033090 875390191 964232563 145871564 707680902 412942806 717673653 521391762 795783596 23858680 636250384 612150130 790457211 238106898 565330271 536585433 847201276 118555184 242441983 195716254 654771623 722016438 948399338 35612099 254551559 411798090 693096874 377811127 541302895 439699133 603876484 385694390 450742774 230246820 838465658 231301662 574203682 73082460 205401306 96870556 957309418 113158869 125991130 868427755 946857172 577849834 707375902 370232053 375347237 796906753 861524709 665456462 866218429 104388065 987491353 69749372 941378326 91066687 839375879 292014912 812991248 260034134 764913711 335879489 763424457 995122441 996275595 315943556 961332602 105840020 580933702 87446946 87464427 15652013 104146760 663822240 884633692 846024540 954275017 964256589 977666989 565465024 592193494 504814047 537009554 441644186 936790357 700991468 856024299 321309076 500003769 973923687 983541622 687055128 781536414 301529388 725730203 998917328 999094021 876620179 887919636 33224094 451860485 320059623 804027484 775827296 783549332 438875941 597849396 90252867 870402305 368118249 505814711 967589903 974652878 763908798 835639992 858511088 961507301 596112884 777884713 532337368 869285592 250635550 443208874 23362910 275449576 165290621 254274755 626617898 800988904 930092929 941528103 926409905 972484053 924040650 995262084 318124563 588072169 235493094 987227016 693373988 756881646 942936868 984372569 447691117 728885910 285545350 859303435 906514553 997470245 637015039 722290238 949243208 949548931 601966833 814892753 472304566 887229936 365488990 864996193 994492128 996364580 139722843 364860108 757421113 796027224 665209328 695326147 766060359 994252580 204071968 600354212 469022389 950731606 327416745 369135772 530340624 892865769 790223023 920744101 41107092 610913915 728383378 997413736 484782295 726467983 282512161 286243382 735513707 972941747 652190569 843024718 894618316 953399799 857841987 897346352 568733974 995876690 345320749 930869202 873297721 969254662 755120415 949129841 647069376 842862088 429039571 882946342 616399035 880426757 399170425 772115144 209861216 895336195 326652302 942814764 717475163 912922787 283509415 451193396 218849639 489789974 34815285 532783515 462611580 908298240 362911929 885303083 441908581 855174926 665858329 748290269 689856268 885572917 801134008 931418638 1732460 855898792 147865391 723594000 717373424 722073745 663965311 772686041 570186199 901349158 351428475 586471225 669373969 804434660 797453645 876007222 952785063 965713870 125120392 769181388 900301871 931267234 717654048 903958575 426702234 942291686 25344783 915988933 986579228 996178821 368002336 540380223 517337336 882772142 861592141 885407149 295232234 879812747 826425322 900541927 205691913 955774887 700959173 980660502 364264788 407955640 469606100 833620484 686791073 835069587 227597626 814608896 501071049 755433493 928666558 993239094 859944375 950346149 836099133 926246800 71375676 873892593 145281441 343654592 920527264 979664363 904358708 943876626 743681523 799703092 596261112 974226479 375408512 553846092 405075451 906827768 637183388 747229453 784713841 950935886 612648421 943505270 144508101 525331216 236973491 817747128 515868832 953232001 609977829 937900984 865875180 960013963 385912284 412039418 468342107 526829775 227893386 944322266 940324121 973276456 912040594 934318983 347006059 352744644 303230434 964775993 881652595 980405755 388714750 738151460 994445374 997038762 754406518 755619165 279139576 433990656 374516524 712326871 269605649 639614157 707259102 950492452 291322070 542892135 292825325 706037477 146603013 768135911 805980315 932251876 597475872 630847580 426436547 892808418 569050040 752363040 770950631 847285739 156663510 642582953 362193931 661680039 300606048 761829217 394927850 795486639 650046816 926056784 622527810 758353751 669303444 703934200 871930812 945658368 506585837 550619303 103667727 542424571 874206486 926232074 789287982 935957198 678186723 791777780 981586046 985778678 701117219 766225267 373400416 593545545 479552435 774029079 80758180 653407303 527658390 560651494 855390194 979558956 161944435 761372013 457985763 859874323 968254375 993198063 481615810 878709464 20705213 228159843 183393642 613091493 903829587 972048789 269821624 536537638 514878947 567665061 8236217 756333030 733180087 816208016 278501937 442805544 790888996 930165423 393745695 782307490 915740020 920053804 570892686 590240968 620692955 744754425 827906801 920370211 923887041 930475942 927632646 985945728 433760642 536471115 119846871 473159878 454731981 541637108 666411005 741373887 45585273 181925863 342042129 598946810 993734715 993996874 679726419 984801259 94156034 796904655 924363195 994130603 812764145 832185913 103149669 334261509 689359413 753913149 250084951 840426255 921625042 974982866 469170826 506405374 792090173 887700901 682470732 829870163 305858091 711979718 99138635 877399527 677908776 991502761 49850965 690972123 603798629 624468011 413067704 800314410 661831597 902804232 577048779 590133849 344281013 942303357 654579439 873623207 857564160 992426275 778083265 823758559 723746835 969543788 157597005 386911555 69166026 212255732 609581932 681590980 438976949 554562947 981976835 992575660 745703411 966291849 44768130 590471832 602640236 986230348 20274755 220088204 265722188 919053800 11093502 519363354 427597222 989824273 295015034 491419614 955615392 973894608 678539464 802292412 337700772 935620260 730042542 932761220 407620887 709394880 556802886 739208062 614302540 682226232 416455377 652331055 416540129 801035969 817915730 978079799 545932928 807671184 438757919 594557137 116566644 175919142 627497653 839668756 219011347 481692326 678007925 752834099 959174572 973657119 513356357 719866383 142419105 289528197 442283426 830884825 54204745 562258546 284466852 341102579 936409082 969505382 616818138 968589850 383851531 567883115 928057504 948281338 575729666 968432616 768145253 903782264 847179098 914903438 623928808 957271676 894654673 929440518 322038340 574267279 813707798 906509666 585066855 754891581 858255349 916303559 21524072 297136191 948706564 958525656 641575800 768953875 13498814 191937455 270278263 397305813 46600276 326211071 762667251 950005905 514987518 989829682 300266197 738906867 958156796 979378328 865986764 935736725 106935391 150557497 386851918 479803560 932526668 936284706 777596836 962614564 15783254 242470393 727426192 932066719 118537555 173229846 172980825 871421978 973528920 995838060 849886443 936808920 441799784 493389499 353062613 725779622 260728267 308997490 3149084 210668168 300833654 774224833 704737439 880364309 922512594 961201431 170837522 190969312 9856572 608307812 762824535 888772376 410655366 446827666 808245405 956225932 606414924 765838257 114521018 565133954 615035226 979131940 522917064 615493814 785893067 855242408 744479714 959413147 977418832 977666775 10556112 954851258 909257135 957819642 689103578 989880296 805455682 930657781 284663209 735986570 644834271 954769160 460902993 586986007 53373230 448650221 448043189 512133620 210619629 484901377 186186018 466436230 225200552 466768256 854593119 999378067 648621377 880026164 434945793 988364651 313280417 701945308 876727883 886717915 135380673 954638069 718868839 808158457 393721175 687800347 628791811 848582719 246369716 393823961 148570532 216416571 398038386 545464968 598704697 692237492 752433428 975715054 976231981 987362579 716951159 795811900 805370032 819449153 198686795 639583518 918712974 997455625 199744711 833711617 271387944 652216688 983260167 992895570 623024660 789249269 944484620 964470267 974869968 995859555 749254235 822043762 775634684 852508850 519588509 583726946 406809505 513381204 774204440 954020737 51414671 334508002 351996671 458349323 813118624 891279236 125551552 464926314 901455165 980267436 374075826 603467799 227581732 741315294 649086931 825815667 335392549 487113313 357047448 469858442 205647940 868769936 152126416 626442287 649967925 658773306 455204810 497948014 387518041 457075142 542713812 549918897 644062310 857469560 909555440 947037587 497614471 513302637 379289023 556304705 397952834 439119070 651669632 726960537 525035356 972873591 707891812 762065518 970112599 984509918 930594202 962508907 905502319 985926880 982488731 994220543 98615488 943640968 948477343 951446959 457241898 532001023 363687096 464031827 458808793 794620825 953448836 968610109 464458273 869108058 449174017 527952277 636616805 954726062 854124668 865756364 156391174 534901626 340977213 753744235 6453823 535170614 880224993 972575031 396954467 875941968 128963208 465502840 558232783 799929169 447590224 478875839 538771190 891313138 725489046 939200822 265691265 659294161 701389720 737776902 627343212 837193596 531054807 584029135 149814100 635956657 610102208 908491600 863020954 969701696 60539662 77883955 460847042 959274534 370330432 624315530 40799382 887211919 67648433 352476831 571169694 978849946 262447949 789379828 822176765 998041724 75872478 446156614 721904109 731091070 606933765 625707561 633061748 918643240 543255583 608116440 755617013 970310070 513940714 546875801 386579148 424831106 731098590 914922736 43947895 882194006 732124587 771266247 592157907 644555943 637673647 755472975 348961656 987152445 236925556 356487107 922360601 952593471 334260207 620584039 365285923 508370113 642004260 946802407 330043876 714537528 208793674 395907426 283067560 973817244 358241353 703160247 785101010 841103110 662387084 936504418 655260082 700279963 267008227 664896271 482091440 895747070 887440211 947450187 765919294 799660040 982643901 985478406 889999467 936633681 115512288 703025732 815640210 924007190 399477230 682313294 348645981 600318015 787707777 925756927 553329015 717542078 102909607 757938121 82217600 435882563 316406790 973993643 864133568 883412319 72240978 662670354 742789652 802989883 280618286 665122430 309638645 392357332 211530393 796177328 835360537 897924165 647916462 925740155 529647080 532068400 950952222 957455192 379687777 706135121 148482999 695257605 342780873 989644366 759425723 947223135 991518220 993160782 140859322 348260292 293681841 315823450 354831264 580136071 890710765 938286028 301714501 434630286 309096978 560801063 353802470 840168503 504471762 525092053 627925370 723503130 323269980 835928143 206568367 917616743 61680351 443736313 939265135 952943582 338418285 577732134 364057688 571460889 500750541 661068896 243907954 475353142 195192391 802374297 149075355 614595227 411236656 850510818 385122621 434030850 411828897 592489050 902008716 916678239 149989368 689787935 275874598 900160313 687695643 949871645 978116298 987717146 744441221 818149692 691546562 921122951 619537476 878893078 822568340 947232310 467460696 535951313 497605960 864201339 92733709 856982558 955761460 983877397 197540551 805758067 635465336 635533929 873149331 889354121 825840889 996416127 966670960 972318487 959650123 969410852 783726409 961781457 757604034 989470287 409590777 446039206 424372277 507432841 641323699 672669832 476944183 997067597 821970385 864221749 436487923 701164587 20309622 906775724 990641407 997297890 44024782 652738879 350574003 730535799 107843146 542803045 43482702 44286847 824134793 865674392 423355605 932685613 59871000 909463713 922697185 991492975 660711942 909837273 704008476 935093051 20501595 150302277 854176884 933449898 505993613 830088729 965592354 966391058 545489248 729939843 868532616 920622687 796733466 884813981 279491443 601573650 553436072 896435815 525443806 820085594 896423553 913489945 85761699 837209231 211151304 782569738 638358991 960538650 801515833 950539290 763329604 768986921 125965451 885075101 455643002 740701244 133336779 725240462 926510821 928693164 572462627 617958152 756184387 858568301 503730486 606341054 420116735 852509224 252465880 783252248 292800008 991874192 61403177 693386184 40520777 197934123 125798866 883538423 644050631 831618169 154404170 538987820 184078254 634646598 550691742 650880622 53402656 617523584 371796410 962186350 89078227 917460156 998458098 999261022 634725590 835690141 342518281 614067375 734099623 858627127 266230915 979286877 205643831 581960962 619881310 703427146 886387111 930105361 298362236 991805011 673830829 903764838 857249495 987897243 41297524 445703195 405033779 966262126 413851524 539914441 229596109 242278823 646157754 937431189 446206042 799666550 725531252 857740525 700162097 990381739 733148119 775153383 17404188 648394180 251226091 564013954 941098771 944057617 775682410 988287731 280449991 969363984 509287419 850936240 138894527 813717459 387318921 619016629 654365509 986011576 86325519 620348875 54492326 589521435 360463922 386486783 795503779 797204304 142193398 769679084 844000420 861205589 418922908 856254846 129898254 745809262 426703168 945155465 978902041 984866049 203342804 407208321 270255247 675127796 968502341 990542082 288914645 854200145 89815466 619530255 864188361 964627927 23205639 898300038 798235286 954261591 349147439 990223159 138931245 198299771 560441865 921679168 852090327 889221760 922876809 989715960 968160136 993987986 23057181 261913880 945880646 960459642 823948631 957376638 949016863 965377194 736986082 815800574 791524701 992611534 591170598 653030979 864984613 920264503 65583243 937899289 225813957 673435549 934937109 981495835 172165284 800312652 849147456 899382755 162711051 372598951 16447101 694427104 865326774 923815872 492270861 867205303 516661371 818662781 251494068 634760884 688202938 843172510 708366271 765314604 754119266 785917512 319743213 779053134 423844612 825166842 258369776 914468210 41088057 992042739 819920342 977686959 855372029 913979090 266057333 688231617 818017530 845523679 382627664 458209660 205185368 238037050 537898846 782701264 46277582 352990894 382541727 798712533 550546356 731813495 764842289 926802396 880415355 922266902 747222031 876828744 283739386 442342711 756746726 888903539 555598265 640062357 597114316 771614956 396067109 737340340 808228948 986563440 147192197 840676927 474751840 550410173 795151703 929976049 811469661 958305349 235507049 574246008 723206098 922346904 934188014 938535943 83973939 275731275 202569042 453068463 97971047 581011313 37803107 861245242 454105182 835412771 425924942 565089834 919521542 943625986 207938977 451541284 971230304 974447943 726161591 989513604 642650615 861260415 79129288 156116936 127209946 704168426 248783126 423328801 203230658 391585767 286278035 849280350 925000755 930679886 502758891 655204633 638019328 819641416 131289479 845402769 95860863 988370852 846932995 929838736 911236172 952920484 340828463 534197071 357785974 453785504 577074067 936266868 826057076 874009412 767571455 824261596 367126480 727163856 123313978 755564290 534108028 614817122 259903924 908113703 363132742 900696764 182404754 593411642 826613191 977938387 29716100 194605396 100578168 775468544 292945895 834882276 41444132 547450798 485298494 565804847 808805750 972185986 927233944 986826397 757033487 876435244 869191793 913911977 700053337 943127781 515857047 976897303 333132592 628830480 906167265 935371434 144635801 231221862 890213304 992127999 320126469 500066258 387918172 647686954 97229676 413004472 537505562 800805966 535750689 745549435 883277851 919387873 803544588 967758173 822542849 892905909 880025814 926886828 678288296 913278548 439127140 554166997 902429378 968377176 525316520 851675960 34299689 616848402 890124378 949542721 582177747 996165343 170589195 367625826 36690077 768804616 165776448 806216315 568855078 680680399 796141950 998847703 541906524 910377159 754646789 923764451 18250693 995778872 449089789 930221203 95796174 456269415 761721072 904496203 920366816 972209856 873208879 911806324 362425597 902726242 6548971 890434906 260040162 851800281 70550540 203361111 202664072 746418143 713071808 957975362 396843884 412906415 860459846 983035122 208472873 352900460 386421509 670351790 676590206 921185718 63996302 75666087 151415939 531303025 375512831 916331839 793035059 948409781 609139859 921774865 417062354 827102817 399520551 509359959 533065862 668252078 51696646 623640524 500226691 777997268 8373779 187299109 377133304 636305447 104689094 852454928 615848508 937419762 980905300 985139453 110526146 624592807 283395981 813115533 911530817 922047573 254382133 589724954 563760198 585833590 335880889 910035115 704495221 761873014 946758588 975780277 614775291 876430163 828802184 998776537 220558327 765126727 220343629 488467448 6505234 633871977 813607080 916606555 892317103 929460828 742980462 933171936 858744565 959323294 134374551 136988102 718613387 834010832 883916963 954711008 95735249 874481750 821887009 951950140 924780030 976906127 893965771 942675802 834673441 917365557 434520704 743379495 242095030 337238725 992933123 994693446 83557310 138367742 490649272 510739225 78125222 378508715 233490843 407797394 262588249 646296691 99414551 440808063 40123190 740739180 639262633 945635869 3105413 431452737 632309617 869458749 958516344 970881490 240415467 348157307 205349467 577402981 43050421 79187348 210442746 777420216 207052366 884376962 486749975 807711685 169266610 679427726 426254560 713061260 336731590 624740815 119578263 867878181 760599295 938365292 19833981 81250001 367184721 470775812 300840146 352043185 457559453 601798734 269655230 445239201 505801160 761680110 707698105 884379522 635208676 921660390 692042278 896126951 14281361 281845315 138917560 413019075 246198845 825683942 163681969 518583994 343663225 421772697 200038052 397438467 242758107 504875635 687001769 695991354 927489539 950708630 615037783 639416830 97240589 865262458 646496673 891427486 423722473 466679098 112242387 239469554 445409889 715288169 866268347 922725918 503555049 732035200 777978975 970233711 381279274 446811847 940664822 957656889 74299690 215426046 632390471 882883632 836725850 903858001 389731541 796031894 181025651 199614528 95606910 286588992 807250810 826828093 837457126 893409500 617756607 898811924 331197719 404224452 159903419 381513761 713798553 906275786 94721383 567238331 674325694 884887184 71025834 952893076 724402467 959098127 412831930 496023421 976104014 990122327 824230456 848468149 718191644 813051901 347564178 818201279 784104594 849123070 511919115 734049025 5443413 802745047 77200627 972525722 704727649 897286734 8020885 367031286 347393664 953034774 575930219 840070448 828079315 910131100 536390072 685730553 768327243 877320689 303451969 669771185 727950283 929492657 671479203 850680263 40045915 193328283 181536848 281376453 991270217 994237975 251348584 656677473 674316580 964652669 43871911 780997049 395227329 779968184 752416695 891698115 881341600 884508752 700986685 825944132 212203039 536308300 526016114 796545579 302578397 411698471 979065574 982231751 6943649 989286166 805113876 931740429 16011639 302251326 313955608 640275283 489597039 774155092 524916987 737398143 981675968 989714686 560027759 870175051 992293910 997846407 303917358 993885831 483491743 969253256 16200007 478133966 391547849 533523418 716828841 878640845 441802000 714394330 683367499 976207196 435913954 656759421 8874170 163032265 153781489 589933990 768859304 875234957 891357920 925600569 719038785 869312933 965122098 975002792 530481291 984960953 849878285 942697338 968954116 984050915 865529419 948437138 463198202 845101977 981166947 995209226 495264302 547337221 104581018 420016739 851663289 856366954 114329711 212541382 647696427 945363806 633334762 794129982 606459972 970608084 827069159 968536173 190532498 347524923 261160457 664212678 677271352 732245114 963306993 987301216 186019762 822176241 197689173 795860637 369637539 396960983 859361480 950945574 146438092 746532403 184448459 687081590 751144450 918972649 692423425 712572311 60619003 284204663 816747483 830364251 37310262 405794344 450429320 988996228 118282061 861519422 264600564 818499449 214839563 281897771 297608691 858373648 542109993 910727964 286966618 854680305 943294578 972596059 916041052 947472295 429977957 938161583 212596111 849114618 732393881 784488177 723094382 733316060 23821796 664515627 460320307 729625481 711360016 865328085 59796050 888573224 78899039 213885779 937211372 982477381 190588924 874546499 65547409 932818309 190638012 609135021 969951272 996306317 133446776 507133060 478087301 485954541 173523956 183062020 922236813 968730798 171318859 505677863 544019065 822953460 487996354 549824099 987929525 996745001 840916565 892904925 570005037 935046208 239605702 904492033 106306334 887250392 933322656 945125898 577444013 671985885 244155135 309571184 765890567 998727537 562547958 826078298 384381365 701393504 333253401 438009704 763027670 891861381 485973137 973853922 906839613 948209498 682438748 901250320 606952265 840985248 839885500 983171343 389007633 525994539 735558425 949453794 655954171 733781978 788683833 879284916 242224108 904677621 987191426 991379526 632970439 809618139 616930582 719874752 941335172 981491575 254455107 362826885 486229337 679942528 954415338 979689277 298195240 650231293 877366021 909236620 671109114 787188486 867898608 957749569 831925916 873205599 482863770 973428701 62068080 530608525 339352411 801237329 743688413 926534923 486316347 770925751 653730814 933549661 717844024 941605259 578038350 763884509 287670868 903905026 669318173 960507293 188575652 656738208 467310054 859568096 949808669 996068322 234237159 673337555 589689929 965915382 136661663 299738999 72882814 447985694 540075583 881465031 452182676 878688324 889392342 905114951 232090196 737969717 268992132 320195579 209455965 996801792 218304597 226120801 451889564 715110410 822215778 898892179 808155684 808338629 714387738 775380776 492893238 729371290 655656151 911537708 852470833 940071283 696825141 923015963 927726071 960576298 284446987 984691114 407057564 434105107 633058045 838993243 267275436 712763714 992731657 993529973 391416196 581597630 592426876 933056611 890372187 961485015 887692708 889675809 379774322 641346361 698217737 806028594 392720274 497922416 487447851 720101359 44305630 228754597 814253054 872965095 771259768 824760423 313614266 538921255 987751751 996310032 115763305 398246413 613126627 910767940 929214839 967920817 130287331 508749960 395255777 949300847 448278299 605711068 340420926 901500434 907732097 949187104 660006360 818420163 184016671 783185398 731239436 821840242 283627856 595158414 745500640 901960499 878365366 889888656 959222453 997375549 756852832 975665363 20678276 353764050 546933978 654348710 16122435 889400515 83959939 702743316 550131074 827104681 946179172 954811769 232340701 689688759 651221899 836052461 172755282 974546465 660911317 839961812 188601318 676975855 929653029 961019943 1297932 673165640 402554981 902930943 339357282 934796420 704255869 972328467 960660617 963696765 715580343 934032905 984159916 996580226 466256456 711266704 39587709 878730043 468344462 885642190 509317844 883950499 197662053 602667045 40560 932144374 880270864 895267872 445917783 830512731 610566005 654425634 730138824 748909056 105733682 980839998 15189250 635127310 545910717 878810704 653707915 931945479 307252141 859512734 277221222 602724439 367934080 387340146 858806798 948628842 699350110 985147427 218748512 987675599 204602860 300856406 278364943 672956065 392759536 956886540 369135765 545878277 19923639 450592692 596918612 965978369 315982817 316198405 504731770 677825761 536117733 880501488 461334238 870299418 974038895 998783625 154602088 914596987 893980054 959462640 912741293 926005632 507131809 793109522 377120940 912799867 549407418 675781630 368960251 660750245 656267646 833931578 893426630 976868164 467809180 866144291 506007988 927745101 148867592 376326839 976742101 990317725 550434877 605285223 722125023 751845058 490651177 620189813 195725695 642506273 803013406 983741634 621822172 669438359 789448168 965990138 366853868 899659963 867591814 888949259 86570867 971011967 757795735 970969424 266690522 504528369 129946941 545885717 662928607 776444198 554146755 617424098 196067232 805082583 509709880 671171644 435690048 810274552 16943852 454386020 87223675 941003320 658346018 755509396 359095972 980883590 318353477 334495848 759646697 929694796 394665836 673381335 457552816 722816218 921571359 968864402 703369015 844471350 72662351 345565804 272135153 395467783 702913407 805469876 111091614 780534583 925918997 928604757 137633964 733317238 118376621 267181118 476733256 720260400 130831306 339369932 234063912 880191925 835076784 838312547 472611152 988398216 311048299 320692956 817955305 887010606 51885242 836931090 818652708 974050001 515849769 568761923 559103310 681182545 514546479 766736270 330102183 642742540 305837267 359967367 117330684 315202488 980199400 982300497 313316468 998759106 769057491 892761692 246809147 634072733 751921486 918088521 236423553 470931276 91631273 319974598 558298888 697091845 275334634 826612889 905768313 977509951 455110598 671948097 772368183 811868547 68475389 666674070 40458431 648318890 527854764 692108813 485318315 820167809 880159802 934361845 487892033 581280583 433173755 952259639 774876096 974873573 596172778 605156337 335313934 531139186 551557604 833188874 750078094 830275958 213750450 384641142 866331942 944287130 199298437 886037044 855245120 885788355 853343295 860069070 771498391 995161612 353767384 487264712 753732943 964541172 130606708 854930225 383004892 556286664 5202423 715619846 453568868 605849051 150630985 199255145 559950937 854303238 629723316 890870256 95299365 322500719 197653200 679897429 592222406 691489906 816893349 940306873 258951600 351745232 966825540 979990016 490159126 668237574 795945597 968223869 217305107 912906093 374390346 390446049 283903243 933395857 219790804 997753435 76427785 602892285 497679151 816252476 209381717 385651780 811876599 889215323 80195350 794748572 72326183 253399341 746657472 988707409 728188445 901878252 499515323 535957927 890731334 891787116 467789963 824536162 600577776 763215512 71278126 767748027 625422487 639283241 885647095 960689512 487601459 790729881 186725962 842508602 560997993 615872296 484386477 729394195 518437872 965651286 393102982 735760124 316317048 613254909 248526349 932393068 20930371 623170809 781214696 989229225 868701515 945715066 615118214 629183348 901835719 953087462 672908387 742397804 342653283 362774588 846703353 960018017 916273348 930865257 368052746 517186748 463632787 927280270 589673311 674127017 520991091 928276394 702242959 909158744 209393107 895758200 533154247 974145670 556186271 740253034 467669280 782399762 325247417 786242843 931916627 980226637 626785819 706898162 579357215 990037337 592841748 979340534 132405014 153452804 748361149 926478216 481496018 873322266 118478440 695842647 135208461 418948361 219854015 324253997 635409832 996599143 971173084 971480594 867395693 991821556 881193055 921653058 872950266 908234667 135936384 977048443 42288551 608957102 592054925 592232370 80220966 932965255 212459355 358710788 815249341 915931119 533733664 998261535 869766235 870296261 636084356 965104513 623497634 999020749 485090339 679002927 117795795 311970155 935471082 990735927 803406792 987013286 602263699 973555238 440902691 557060748 108094358 338130295 165492955 562842902 882328071 914745766 451213324 851596809 299867801 804289187 993410933 999096589 385965051 568380413 609885022 874535551 242101644 303202814 295717549 799150388 731963268 827379940 642980592 958208252 564861763 819420932 387348236 475078636 495115309 864337124 535885936 807999194 507124920 694193532 635847588 889290213 754625820 929513791 626169462 845870379 981083923 987887880 336851495 617767220 10500166 192636959 894162875 916674487 914679095 936988609 717383071 840689465 946791247 994956074 551138891 876103405 116991221 445214314 379623185 451014838 736437874 926525460 670681216 883997264 657053514 865643889 483016572 971981106 173291472 901340547 987437399 991891444 179828331 892066136 522620176 556555456 16821818 532341799 166047678 636411351 985392276 997896115 294848456 993167888 104090915 223441077 615963271 671179461 370501450 545037271 747585305 838156379 394431337 713454272 407768016 570198269 268201522 675901120 487678368 871247034 147810409 727835879 391860767 990072544 903679232 965013789 563115194 919453818 806702315 896941984 904506157 972946773 208616838 894908979 496841673 995252760 378745929 563861765 966267235 978802792 786369596 806477602 334076429 477810566 16635287 201699462 333119080 640947610 363485952 663352457 655325198 926375507 510984828 916132518 57430643 267426334 163508508 486579728 45527671 359781656 655923643 820829131 636331736 936103009 713317222 749957051 705841513 931761001 922719723 968839799 713435234 764793986 750611419 961535659 876835826 952627269 348507319 388851559 476232935 990406696 629858044 919266886 563799183 985266093 381989027 881477829 162411841 961847230 285188192 880426980 239941505 259694662 637055490 750827220 229743406 328290781 370062450 678435527 2720490 337855991 934463036 984784008 253562079 831595115 520817155 912507756 297981121 825306666 644718501 803890838 872211483 944331051 184270801 844606546 817624804 904123392 198725318 886973034 294296200 677114745 748152875 755641768 920887881 938495308 685846202 707681962 354333115 684686051 624441864 932131496 451625066 952687949 849899397 922467643 890989236 894336628 996667302 998215491 135751575 458142342 520993663 939792245 967455773 973920335 661609580 763994507 962030476 981441540 633961798 722638801 558620022 582036579 409635165 428196409 142206356 209892711 896889860 928153681 262213740 527891854 82730222 953484958 423074562 496426631 113251534 436011591 745632678 760943027 114044594 217735972 328762695 384170823 275409166 989994227 122631977 262413864 619886687 829403209 122848877 551123207 832983766 869793825 135589050 199496882 394307907 914983502 222932348 673828301 860306712 925215425 545463484 633694744 32046411 449921919 119294732 815682235 326444403 895982995 933474815 945679667 363005368 936627538 963210261 988119623 319435343 811618839 143493248 281759948 636020452 944016265 919588309 935620883 526403053 641561299 339593419 515187025 794609011 916849536 32324240 591544625 185725387 698891567 768727389 807068965 694773984 871710525 22365936 509479920 136771196 187860020 516390110 745654494 586450030 759937543 764477771 842945107 601661255 827126975 431733798 872247195 968325700 995725913 300225776 937931305 317743379 942646334 878349646 938005417 41964160 238415244 493737770 736795670 824693689 880338205 736467026 937463309 384576073 437043231 333962763 734609532 850750983 958281246 996389669 997570876 922393232 965083284 917320721 946212164 92591357 562424082 978299513 991713369 415776416 692773336 843751090 963571053 532071723 742539974 644921275 916621010 628055550 823484159 561003850 643022677 15365596 352309788 164329516 434935665 882069251 939258087 947790606 958862411 810383734 905786127 677018597 865558260 3014411 132687320 868513436 910842046 47908242 632190838 300907146 803433785 428673280 937142054 418959578 804058612 393176062 453591223 685640344 865025063 609176566 984002624 738400981 783923331 49995090 461492806 881729592 926460889 380260539 866562908 690432777 827696801 998856285 999125745 289642820 671286327 135736021 623784980 177944876 882673515 149702242 377748251 289465028 529937006 490120915 713178492 792558669 892893575 130070926 397679912 947120745 996362881 930155234 958188106 600484126 628398235 899199436 988663549 266215645 597043248 643793358 728953913 664791915 848869036 127887879 354937005 282498645 430287389 576109013 901036260 599293729 977807488 306822445 603823142 535138173 760834658 182435049 546769338 656355407 878112001 455190951 697488233 468690521 494526483 680323793 829783495 544627141 939237490 553698702 900416233 6204109 448052943 540001950 745809553 541338592 608861820 357663684 564558627 257347935 581579116 364684655 431460360 284315695 888489685 657011831 665444148 934862059 996119008 582004750 922464477 782464452 898384398 467125670 918833054 259883424 837912263 299851316 693748200 65967270 792029804 458449097 869536452 514470233 878218863 345055249 445672871 28553042 302001130 831925036 951159668 728210698 791166764 837585642 903575726 13238481 264267005 457871353 501473853 48680656 992661890 754251787 970574881 546975231 979227441 442947604 818042297 715736412 786823514 438445933 796184336 600973661 652704096 383386679 982960149 873153381 918339556 516484287 889705291 244065209 375269481 766172850 900187439 153575456 563291796 827785700 948092186 638427927 891965873 628970971 819148053 332079133 817580268 34290919 571211936 622749380 869593605 244403471 841383787 245766724 868811012 106677963 871672880 87927925 332177131 410001986 581759510 361880502 458825825 940398864 973161422 808486290 846669069 873551996 991873167 354590269 476739245 722955932 891582569 956500310 964366072 363522969 871120701 943800741 977121292 28137221 148569320 565535603 719050358 983497896 991275683 983871651 987073396 940202642 986334320 202751070 966972903 187814530 524854302 998947165 999006423 88577605 786321739 379202958 889311325 421071752 954696053 978391522 987491377 875549798 926032947 932299273 984082916 346476073 824782151 754746460 769136598 121373029 339643684 666810729 931522513 663319688 698850699 379887099 989562953 59752882 515152514 749994145 864640505 657377050 671113305 557870336 649149299 684735763 944230276 473847864 647907126 69035226 455929490 438795593 476865043 739067591 824679790 654989394 753107622 886061714 963554332 337642666 691168503 707328304 901794603 459266765 823775979 389516927 920257715 649434263 875634609 757994644 774309744 801833641 853902767 946629821 970200533 165981024 514551577 788520983 847920160 620081981 771882666 657776705 697290037 669576956 784361638 955468314 956576715 55110552 457909529 964398736 979008863 148174981 881034602 606401129 712102528 902493509 922300852 353158827 806671292 591841221 749352384 217786388 654648634 265942840 494198971 899715528 933886569 610919441 715286441 289327068 409628826 174308155 983542700 668782692 825983718 632005452 780832037 535376740 888680794 841598030 992409110 881126751 930176987 938305975 978113794 621916772 908295421 489021015 859661415 221932866 450361960 678328681 870966568 64229738 789502005 383563322 995214444 819735939 987403954 848180278 899425352 621288504 710046014 63257385 439639446 917575050 940563563 458096719 648433925 543535440 761477497 515567205 920358918 266150482 689582766 539191743 907297789 353374193 925128912 28342455 715534702 508229094 748255300 901952951 938507214 39501982 127620428 605572740 805750555 910417533 962933346 855787783 963806118 614594124 717243338 848677589 947927252 446990248 827322148 728338348 980150510 293221840 323298769 207449442 230740579 370897976 572149189 342172282 688699241 294998845 615205256 463762436 818895645 687773123 763186867 745800544 800731205 506503835 630857708 500696287 958743311 903602953 916493706 28060133 725495098 170030267 461771239 242991604 837610085 236606337 399913061 584455234 896171964 514277913 628974296 200251829 940886050 530500778 552908054 348739547 385987020 559644396 638678834 817496353 862557264 679478611 688091993 91445493 975134398 631520514 984803131 321798992 870462383 921053171 939925851 579998153 851052202 595127475 635657820 475821483 485368106 73238579 389855310 131771569 753446242 931157304 947056679 776906336 804085466 13792272 285638991 180433709 851584291 189392439 674019465 56159764 572935925 288977689 865200577 186114001 718623741 915794458 998786705 288997319 359537965 826120023 853784901 507066772 597257744 837568452 902556735 97465757 647505684 202818770 261368173 91720051 530148929 839146302 931927139 899850971 911111037 315239875 845398373 911347205 958964808 889657300 955947914 612142360 840953711 674681680 944193468 218954359 974582539 871924446 948291291 143189616 799535887 916379373 940625187 860054418 860821001 905869763 976579632 297319732 780258592 246576869 307474036 515656333 605482473 988977829 996732637 104038841 754791710 67863961 614804151 962913349 994240128 464171147 871036266 810821152 894314594 307982328 789221676 307959497 357398253 631512776 664714070 382454496 851504650 603271991 932652099 955271122 972787156 169483611 327412978 623993470 819533877 255115055 875790576 263111370 882680357 184017717 357597762 447327388 958504039 124508598 171485757 330655708 732874406 106494618 167494099 586430012 794183606 157638870 230368072 17973437 676229258 174298669 751654657 198992419 402059482 108825835 621364498 857425085 927130976 703288404 933712561 173281002 664268518 345024239 957987942 790845940 865490800 921622004 971586039 76966367 145115209 979470694 980284484 46109993 923266329 382713287 891935659 100077399 976210058 389675635 493021440 460633341 885053533 963541416 976966217 381207035 503402955 295571952 530683425 824338879 931569438 294930196 639864218 480388791 920104567 103039137 584800703 339726313 519978547 710454154 949026598 805060313 938306044 768920483 923576246 108128914 564920696 460725630 582250759 411062764 699990807 958236248 995098192 473115391 702154645 700191586 883464170 832180191 898927626 301597297 824918794 758339500 812046631 27769976 911650968 339047132 888193747 107263595 363656400 683010388 875216058 308078358 566774993 960883184 963517789 805523191 951993917 997886711 999337768 41295528 241432780 506243640 576814964 62770139 788025138 66481818 109515580 555149008 581048599 291223203 575805113 611984471 878627749 923289923 936882479 969579261 979340530 520554454 554149810 188764251 188947763 634468705 896306229 659181766 813055258 514744489 841934094 948642335 973637273 441358909 595613462 983093255 987607447 550564637 585474820 580087729 737641305 630468607 680498878 772533177 793125804 462016236 668923976 110458055 619654520 971822962 996181750 102032113 215860332 635108243 806733617 345622203 818932563 139707398 354860905 28705594 416304838 602145443 630798358 851974614 872611151 79332910 523910214 496320638 850685048 450218282 857333946 473635995 744039742 767307001 777257621 956025358 968475881 222567580 303973553 890389790 906081160 465015343 854121728 533137944 648917207 899262198 920202362 771848413 830434692 455944217 666528549 531508634 764465648 274492075 566111718 757971448 785167599 694940887 705678850 979022424 979881877 687176392 840081438 458181469 582931574 380384694 440022128 290906606 978245120 485755754 682469560 480584318 602278390 464077045 560889662 853845439 861653675 886597702 967378512 961105880 972109660 955962662 968203323 316263354 959326956 158773858 721489466 645622416 859401685 890864875 919871645 94382274 821575552 480495156 845588648 157408406 549810834 469940114 604764190 399567338 608622996 911568198 968584346 847289180 887435718 212428581 991903349 501286685 732615851 824504344 917422089 684902716 965591568 784604338 806715632 362629634 476463529 718380402 957318006 990892779 993092079 655443827 932661373 198343355 724937277 741395135 905966606 607355139 957942495 612157028 973797560 86281106 316395735 971154960 990172353 849266227 897591923 733784184 883561135 554410267 572492113 79874693 273064931 781825655 863579823 363002208 971160063 169563750 549141772 462197659 541963631 913274165 990618140 910650051 948993688 681640178 725239765 359334663 957227517 882385823 970568804 897796200 994398808 193400939 530169960 246366910 719873096 162140483 773749525 565784735 819060468 471780762 693519155 468105276 987711866 452121175 723317118 481445000 531286129 244846353 529214410 59808945 158451112 705783689 822971585 273085964 546798091 778671781 859887609 282176454 536274678 406130394 973977827 911524198 919732778 556802331 759081770 684542558 940336721 515411933 634732499 190177827 218425443 444620615 766750451 639295054 724831747 174048020 758972093 523686139 881104274 118958942 954097980 4247386 382644392 674656994 867589967 856914943 983336681 175189258 658318370 399204590 457128558 996191622 997067414 21425901 179610322 362575172 820469204 157299816 809458310 645149271 876317740 517069564 927844977 893681848 962975935 102874727 729117486 484475909 628090082 160533881 897050344 473885225 876522363 115941697 843827186 150379895 213428760 693537414 986832095 123625396 939983229 776357887 897291073 486848 799282287 836761563 918393708 788597369 791211358 634481022 964286650 287051292 404386666 860996108 917652401 127950017 510581929 960596492 977034504 876387986 987869477 168903342 253134763 401310890 550353405 236583173 755479287 319772096 915680141 194458764 645935919 197707150 608691046 900734966 961304279 875932494 944793274 147159613 425706293 101479326 244159407 645094165 999295134 647268367 940543896 6695227 827568233 564618883 710410945 694019656 964596985 893569118 911202965 405457666 843499469 92760921 226459711 969810598 974906333 452938797 808844106 607218232 636577014 726589079 891766304 420282368 892512130 19009568 963876460 372151956 976809050 605235782 654286602 186348440 973741966 816510005 966570926 630166821 785459671 545439402 661534962 436129614 851813303 870562272 958281896 690652756 781004222 858794747 942780869 190726078 417653195 805297722 825160513 302255961 886568392 262990885 722888552 438888117 855069757 785969865 930562251 629619881 962933546 641434159 918434153 485960968 940718796 323069893 719467181 447821273 802717979 74218656 721035305 50306163 919121163 129917380 861861628 932545193 933471340 184027000 375590414 229259269 409110069 427785983 805781222 215716367 731127909 282898767 973606487 417582941 751551099 173609845 467181603 29170132 894648438 613642657 844584333 241833886 519556562 320675582 329476089 409659600 904549643 652321312 687717519 828037351 997896854 126670603 487748664 539135171 985459181 588183607 643257881 140170472 959078556 597836063 601209753 629736529 754788296 768558583 985078861 94300634 261931854 65629943 682797946 293453173 546478696 718847595 727132377 404702172 621972794 373090757 591748572 475215241 559058627 718508108 762343981 17330501 177726195 897459742 962418844 371313340 886154322 269619892 463325907 754716826 884946286 703203424 891349669 200720487 286084087 315631854 704461392 769776698 826523991 198440546 853907449 395531872 755453982 720727275 825647312 223730042 414956222 977622253 995256691 854721838 984350769 44947838 296055683 773762989 850035166 3715512 7045515 651770704 753590800 720340163 780242785 796548098 835721566 338089971 910537610 865984653 919705287 28577160 169402961 362047854 579405140 774206730 776424181 171345923 411958837 717263642 730089950 719848441 761554395 994438801 995819624 329791021 687459765 829925323 971740179 952770425 994807620 708414290 848210070 497199071 956756744 962256794 989956814 128693625 741054013 171971909 986126605 631096176 854335713 709495989 933344694 944892362 959838788 803907194 864596493 194193350 846020758 545740684 766894084 727161705 800105227 886269904 892477043 673314187 718890540 758779146 816430481 657767258 880162870 12003898 723422808 546709342 633388613 670467675 706319978 651412246 729000614 630449107 905513982 745196745 828499418 69637219 665476268 133769832 867124351 216800257 800645655 121457130 938809044 281534676 514698841 747552786 761194520 179501828 891369814 707594459 761085734 717956234 903026905 219683100 639624650 593927776 761401613 325680248 792341561 89273986 307161614 317877017 400158577 166859761 340333941 288716209 492608300 237082609 506908186 673932973 706828868 519659814 601774256 959480338 996291661 814005546 823084851 808004901 981067602 84453357 615124899 592114681 905160157 947326373 967495331 607791244 831567193 882893280 884346638 586114777 647163159 808426821 881264602 551715122 715949614 676606041 985915449 228335087 727299570 773154481 972176525 501078056 904717809 374617255 633724129 681770949 814837149 151690706 771774123 554438332 848029325 342908428 496542001 803246401 911869080 871250995 922552980 11740966 184934044 644185761 820476293 876466215 881262113 980221076 984690147 360268767 473651272 342743354 382495332 478381656 980333710 873640630 995499537 474398922 888684463 664484116 720447437 901863768 905823875 958772870 998093061 344732425 890443785 757547548 827721174 470123331 614260622 486840563 489293349 240473298 909458002 704905783 956943894 934748280 953553070 193733247 515057012 76446629 594945956 591801763 660257135 350835354 770621136 694318575 706850387 705069032 921348723 801398767 989072165 586494806 894544777 282890287 498687876 316724859 340266764 687494762 954475567 98178505 764547652 847857761 913927152 645687300 703199113 179043462 477359615 917866943 961624524 758902517 865171111 940237739 968302655 941895856 977220034 321018016 550499211 785976620 922683717 365648948 615877559 622829220 931463611 316905294 623987767 649778943 753005620 7407794 505273977 709924862 791680384 525511241 771955710 623392242 936995398 838614864 946643382 912495696 991660756 218995680 683168033 886477141 987126395 182982314 315919813 517532122 675355538 918716506 973714336 558152411 981584643 8542978 97363352 426072317 721760903 142564088 153799395 376197732 464993365 116396054 744443626 33811366 246943104 116670435 938700343 663808336 782881200 43849372 298777979 109360542 688375555 490633370 836489962 249398377 784236924 508705870 987701776 237912447 883552454 724019774 752517342 289403136 825859753 33257481 94128240 163755252 704680052 921815692 994793183 129876204 864838147 671889253 753947101 900678124 945051038 283241017 986796105 747206329 901945830 692913477 952294229 778217668 877924205 81310232 356399856 489476797 524501643 190831341 970581422 893108082 897782023 932396790 944104060 860207116 994677422 36053700 277576728 704658401 764163491 811208005 878092222 470244746 849718157 639512355 731951105 998311935 998898224 323829368 509191732 413405178 988338143 295979218 600371713 864603886 926591280 294007996 462789645 869999179 893483650 209245872 530224334 161081317 563300007 961420249 980580493 323513378 911180577 139064872 511761772 709834613 814811810 447605480 966303493 106674061 591911253 962629518 982263594 551845312 992987198 116510664 576707361 947366718 954728545 87318914 190824277 653051578 967163935 635371269 862632840 606599771 691068623 868577486 956952907 10540853 881395300 98021404 244812899 667106549 918285898 279998041 867273669 661210092 868773096 21972082 342907096 514738973 638404032 542779223 606340987 119252241 218621581 69131681 916919986 377501410 523735745 498888797 610704516 95307672 219340238 623731207 952965092 769910324 797320556 811523012 843836051 799926112 973742814 559455848 782581346 351691256 972977082 867807075 914731791 21342203 795278856 517127731 959697684 428451485 576268106 467448972 926521457 57625940 438133205 167626982 950082591 9607926 691334568 20055413 217251489 645875109 994682643 266227771 904524312 87733898 528804068 968346498 978183226 62042402 570883441 352034383 875744354 575790244 650614005 403479148 417610634 538250605 812700379 941227727 976347135 52549046 202731159 39789965 207456895 716776303 988867878 862876518 892050392 66333652 414852746 228029396 417089880 309325736 760716710 458464946 515529503 591887877 607669011 864402817 995208407 834127178 863909943 858855090 918082695 753176997 930661759 891067798 973321092 695171801 917031202 484796027 922160929 930071409 996868669 465722492 501579913 231399990 756449495 196829284 370244037 38018006 259780861 639612159 984706128 943967838 951114775 694163148 742970162 711859257 844641954 831880582 966905357 495914298 809800969 425520639 750322727 496000394 790411701 146007711 512170062 543291828 772192775 321747270 777165969 412200280 852089175 909665419 910320706 888352405 982555583 825281318 959708031 805791381 852095249 537612395 825409014 278584336 764605645 921457166 951731527 683366479 829794837 303160470 562457739 442542598 567947242 575523376 791373989 280654413 671050214 555180917 681932174 980008471 987158610 171981184 539973964 391169424 437423856 629427275 834896732 671832907 843879429 305446388 356439805 181777553 817321846 180109218 889062679 453985350 890562553 593063063 719957470 829938482 923922979 257355320 612218925 970721895 985852440 181106466 954366344 135692207 626488624 914191398 949129904 983372409 987959990 488840306 870846365 936309215 953659862 307038248 321507579 128739119 711365169 94435790 852554530 555977420 853653763 166785444 643480010 526973246 981675549 679714172 993607365 703674029 841923571 175570943 273743045 476275782 663950604 494883698 627808904 496889225 936924707 760967671 952140385 559413762 876644734 38020413 212557892 598091647 672756530 475661481 846620819 968394748 986439707 165327518 177103535 751325934 783580100 73372316 727547276 581436689 952570562 869734982 897402529 720812748 761843850 826130926 942943672 199658596 937954956 746014940 938586821 357935399 540457235 846011323 945869561 122795127 653907425 619225646 694680418 74266086 157082504 1830955 61535225 426091180 538537943 843817251 922067248 32712462 876454610 570729701 947587711 577047085 584629559 323667677 382234323 352158134 706243164 111003174 760803585 595216641 742366581 48945618 137930872 838745073 949477908 681402129 909650565 933792734 983726761 314169972 464405619 457425752 974365786 581667590 985676587 766167747 966914434 38233742 76286659 28718348 678084031 651822672 823780603 930219231 974873303 342202933 529237909 628402624 968358443 614842169 702026003 639478434 880282789 579751732 943418866 44118664 396602473 17806679 191636225 685662502 896680757 557905714 874397735 898297897 953817495 755304323 781448423 910541962 918226293 117607988 313908223 466232374 989255598 345593755 543542062 373078155 530849807 111792958 850023289 818639611 874052690 155988411 615899741 247841876 343324165 760102631 995936374 406315804 790113278 391108393 707637217 957496303 966297980 245688980 711964450 843948556 878656655 541153804 968027142 454972037 593783480 863308847 957767763 117961112 695224685 435157381 522755761 724498853 919928864 750572535 950838020 843918611 881480386 896055266 916672491 99448175 850027789 261763603 980708520 871001804 984535672 883300554 991905445 39252851 267599912 203162185 215877023 930337148 970857870 148376904 883739730 577513159 821789111 821860677 981303319 340698034 849182870 775494985 977685167 160363108 422289054 340391240 643638168 802058353 809505788 817457276 859816733 443883648 495550547 625529395 691075721 496733172 906875624 362443911 929466447 571983480 708721704 295694989 527349586 469717576 621042768 557250306 891253672 654190126 990368907 262166410 444310894 824416103 995993433 614732538 936136996 925852524 993208441 922123957 986204873 6122796 394203131 688224127 757878278 154601240 382463363 327554196 949188740 520595289 773520865 468813356 701056123 558882448 901314325 786373326 842625248 663499619 678696928 393169326 799954639 598852266 671473020 646900097 694178892 240863011 258485748 628247939 805347367 394871971 869530572 740936732 884343482 204685728 917104571 272001144 524919690 398706395 645224224 761032597 957393926 781262399 896748982 458880387 899291724 438874596 591555758 666219271 717310866 255908677 668613084 643954031 794363776 628627868 802731969 632739376 694154178 951436768 961527439 344834429 978878258 22947385 213564357 751901839 793185269 477854325 881065154 623040428 909572129 219587166 357781308 84167155 376244745 153837476 274928708 598760532 626278494 850137349 932300764 134507383 370362443 734867489 838340871 265791953 667941375 686372978 729986190 173646555 410280993 829293428 863141491 290354298 321048021 332250886 631967492 498227282 513597155 862126034 863262937 678029857 709517630 141668705 573992016 204160130 276430801 236241244 336698198 597321660 844148884 362937622 791335014 838786848 956250187 948518685 967837271 253005757 495341943 359653558 746573263 949937274 998824233 282579836 604946036 666537898 818030287 131616898 684953096 842676510 999070026 484110995 574093510 116739235 963875617 979552171 994763368 642147063 689910936 891855138 941012777 402716803 807246520 530376173 650422668 400006888 507939026 547045598 821753055 188782986 693362911 861810689 881663017 487726510 952678514 849471041 866353735 283618325 356616611 136821085 251586628 885510389 930484851 445086250 874950214 260105587 889608700 135595796 186917838 964848882 965113305 235116162 802329587 787525991 915606224 486952126 719232094 54996729 455074796 1431027 322968327 296095030 827735733 262887733 645709338 212352427 557591886 502938914 973964295 694372021 849990060 114908419 590870101 25161043 185499212 282745189 427534485 7186090 10490255 468330099 873039571 538907121 681923245 899571595 960557289 237373942 499692373 658440981 924658110 575485798 975787016 821285458 878501319 341997163 762957700 153894032 726382597 904616757 933046568 604442679 780583938 411169598 631058482 102218088 237074815 129020379 580577432 831921471 956113999 925328162 980418397 353946927 896105852 244649914 731971325 647521952 744018750 683937252 783477479 351207774 761616679 508913880 609892702 107932402 467479790 332915993 858017785 405200846 833595240 237510319 618122551 288038319 415007193 526191219 691729662 384908485 953739283 592869403 880662376 39107300 126408134 441715950 857176489 68600198 513785125 291623477 877718794 273272206 423333069 975817567 994686963 764284712 771708685 653342850 715478175 681250413 831849393 107169596 142442042 838168493 900116223 226302075 486053070 164369836 374235107 257026324 839793853 811962563 885481053 644571293 699048075 312286005 987820189 821119914 958892166 100417844 720481491 724528127 982573248 398913631 962661487 497192964 831238658 142599471 782917944 359086931 850422241 653081260 970879138 310353257 980262725 334314062 722481924 343875279 702072955 539435106 576588592 378988299 520634539 809464405 812238269 966818148 989580500 141265305 667056972 114036892 569574901 69115651 642819333 869615907 956072996 635196056 855361413 273130459 408410822 775088638 856622568 150215573 290709546 323357368 886902602 429944145 585982883 507597067 940187028 227170857 620462915 90185678 192220038 681865392 708800880 436807102 819477314 43285180 176082342 356494271 509913963 293184711 839928873 484847065 906721601 655959989 914836948 586058627 745272010 728347376 753913305 53353600 886204806 594874096 978551842 898688801 950315281 256910137 388814307 753507452 967137344 451566242 658415177 454362978 917502798 696185035 740564825 92200207 106173941 707676002 921893687 826732424 833066596 703580338 878406870 388704118 520671416 376188766 970567245 196354024 562239206 883143823 916838947 620376631 764683477 913247281 974347317 888326 429187461 724103121 848820588 25989843 789607761 445367317 460205323 985225918 985495939 894004380 918878438 188828665 379096406 486741291 889183006 628038500 763759817 840830627 910730435 732067634 953805734 360494285 646691527 932867381 933972103 628404911 824650321 601660350 829072085 503863754 928667424 531515235 964498032 77451259 649460379 683118401 855462169 531848214 955251556 18977115 879522757 28910534 349426929 504087368 802053202 53382205 155301962 258592586 387749049 239043848 322713312 284990870 758225629 576928025 879972279 52740059 351658590 998128406 998985116 190729230 922174064 360666914 864334277 520633920 761042537 352572084 778882411 10483193 774037344 158897614 185218499 482057727 680455539 962167690 987232068 329288338 954461493 376595665 649884693 169085846 653661030 261893047 859987789 220448505 854067798 782567225 859177478 346521631 988060607 152155822 943537550 24339527 218037249 657271564 888438417 328900674 342194667 561832377 564942794 667360409 876456813 241785357 528718779 628627073 969875778 256752272 700738564 263271544 655735451 768476815 928967933 21171938 900390406 419784713 822877937 896892076 965184523 195347941 310558553 611067695 959456246 279311487 347916632 346163972 674511533 378364698 927848735 98174793 623644130 713698865 898802212 136433640 303400457 513728851 849023262 896678020 916553610 267740136 811313306 29880407 464409452 800082903 944272170 872175363 964599292 538104243 581833679 510767806 615803361 335363715 990842454 724255236 908672859 275344693 829181766 162542057 660763628 176950862 385945217 323023937 463075485 925031326 928129324 868307859 983391201 458523178 990102943 722553888 795074986 191829225 371040568 347340736 646211729 51604959 741378870 422423709 819871243 862405439 953109959 422451251 906417395 107951567 340224102 435653645 636112126 630007155 641133506 116131760 977837073 23062291 242866460 664879335 890994697 917556040 958836402 349647542 985301004 49693279 558842698 614670000 725160960 447640276 749702427 511908164 760838198 99602095 308378725 252128800 614723133 380141764 919714448 996073934 997888551 992189235 992417242 958653763 994493794 270690630 459564678 536191274 769465935 673720019 781768774 490806168 585492454 718496341 783761833 106342035 949677853 556830564 984310391 233308635 383296163 677263301 781991035 64261823 654658377 342984575 551943306 729479732 780028848 959525011 962299234 320925289 399146171 526799045 685430502 452278815 720741127 411593138 590984373 710010972 710338232 839659551 958949190 200830022 675487807 820891537 990785166 279656405 483643230 101936427 129356819 25190141 946457757 229551254 324293292 51637129 959099386 216527905 757261380 63893190 465530849 644540638 747175001 81930190 393033753 439502917 827615587 278987599 506505558 6398026 515640856 109182533 567367822 281872030 919322119 210953355 426484301 768638364 914820303 335061971 676726158 364283601 591594288 712664434 739911280 567577546 568209647 965652093 970039442 348774772 535654668 607007917 889401183 351181008 569064128 805097859 972371819 191720891 668231911 137349560 799147138 173643795 320157274 16984179 937782423 154160985 263655252 752737525 800186088 405023785 654971302 122559524 761065882 523739737 638761166 588899668 726420460 672619184 680992836 152450135 774367525 222647148 954855755 2566040 264692701 450336852 470346110 428886722 847891950 246379497 648323390 676016878 865767462 396500426 830030811 499189815 568719451 378454445 646103639 970350311 998451512 633689738 935862232 45847185 834943057 73162100 77346528 239945744 989226549 943290313 946333492 170551634 805732925 926797586 970130485 421422727 591952787 695828251 968167974 480217988 916099700 536670485 624369709 751267311 961656674 983752187 995747425 419147051 506755033 426597041 927287148 942010823 955973436 207428215 232786408 63270895 824860631 245280426 466647295 955841274 957238408 569475959 904017752 243250798 650720319 921889241 938761086 79354483 128237717 839742134 872737555 899934990 986097380 523425468 981539432 166349611 349060117 766412100 891646220 609614724 809391002 718169258 980912836 449187678 910058736 615998469 731957617 322838111 633224462 536294814 635412348 62886947 306451439 192324045 574133444 358145832 639236236 214744182 739043558 270801666 358943902 585574074 695815422 279789559 886618011 839549589 970144850 841569311 943541092 660458592 728971745 259977505 540862160 710322174 742292999 807510742 949060714 537286782 888175456 482114732 737390952 759150893 770161860 797693310 820811232 437595058 907400277 374453036 415502951 357616524 770885168 327437250 501588589 401367909 789198764 555386845 698909900 688729854 906431246 650345997 820345070 3301721 484897057 854193511 937295323 900917585 921200798 108970932 479116357 806169985 950318526 733458427 896434327 93710038 742776824 342784726 600230490 985181684 986261313 337610938 700192044 683334034 930088039 450424246 845029395 154458555 906168664 574261617 692498638 838842926 983508445 524955979 957466004 115115653 922205064 656883639 933126345 133892980 998067154 874408259 888189976 336224705 585080865 941398456 945525237 586042450 668738054 502522740 894634724 475429696 620675590 978411567 980052161 81743911 869223954 129704903 641904518 678608612 821983726 350765064 581038076 808989627 842144452 827294339 845294208 157382550 331955850 414214254 982863268 547416731 850352458 966820234 984014646 301410761 796787420 771144255 841308792 883668745 885772994 733579896 837915240 706723296 847758215 174672606 824982450 196097811 754998568 673296025 918279784 133340899 304917088 598772908 817816214 751023405 910601266 551117801 618821287 412305061 473875768 583475045 632418936 581706158 888815459 928255587 945175248 621592718 925785787 469321840 984520141 414651813 678605563 464671138 954081297 682158636 848746234 258413525 484908871 59266445 86115883 918054894 973505477 105905218 279769334 503849000 872940655 419630738 714965724 530357160 780210463 476654187 654074771 462068501 750762431 23983754 922063205 160851589 369312283 551258367 933238369 240081074 985620220 32808906 276691916 250645241 418110572 868291784 910337371 981243535 992831878 363199846 507098992 803405258 908883280 732690547 947230137 425146701 798519250 829457128 863998794 284537384 307721712 300945641 365881978 455549006 463610723 44305566 807152304 359326827 924799308 569356482 861241109 27723927 943354369 204665579 379605484 541901314 555948533 881427163 928815302 24073068 368144128 913699113 938967889 357603517 939835236 502542813 719663255 476751110 912767333 836181703 917904158 51233769 793616883 566025108 873303310 540235316 720605982 802446467 984684084 897241986 917172127 492058023 622102175 190935509 779862656 84478741 388146052 576578829 979059053 978211457 984576541 743299770 912692632 551511864 895044362 959497973 993061811 575632762 964741867 479255350 956283583 802638458 896235579 6159145 834057930 353299517 819030257 87208291 696595084 516987706 788967874 93671126 105260551 454633414 784936060 181103086 932296110 575146243 579335517 24256363 683779457 944150552 967690677 701812152 718135026 244904318 728667036 697590859 904437028 228009063 747756211 694298231 869439849 214027892 854394022 686291927 958070652 650498763 966688199 515684898 859421175 941475404 999028768 57360569 609947275 577136405 718842854 430724684 642935625 279037186 932133842 159057129 510595257 599975366 733620283 959419197 974090152 27335074 230241803 398960350 880731257 375767654 654687284 110074188 645774995 347139517 822646231 16957210 877571121 868330875 946774079 653902693 785560908 189917301 742983690 818047219 901764194 189431135 684563618 173430973 893928786 380114088 748355098 489423978 757194215 406297779 982290934 403765787 879291889 274983902 730859445 6565797 682079434 983723572 996238075 681350914 850028589 552307312 597685005 924141656 980472773 356081525 657468689 649344499 805839702 906675569 919301106 355671293 387083085 906177274 986200239 974716251 989898538 318929038 980458187 608194219 708446424 636678726 735820983 879105523 907539327 915938209 936343738 902872129 998497061 187729783 769928506 223310769 811134607 594948315 758461258 406721775 881396098 3303609 637079362 692085395 708132517 42750067 352207896 573894609 653298744 127240765 459308395 459641200 816648308 276754363 824858018 624705247 956665782 655029169 816236808 839171370 926268121 184638838 553750400 295106636 638239936 65444417 385232434 670648638 982701959 480816244 792499894 302440932 315237603 825909884 931571475 154601668 547418396 612589267 674055745 954639517 969840239 360336564 613490942 118976747 703197771 664812285 836864390 847120673 848117069 641865199 693321619 514225822 794501706 830270625 926576750 521317412 665707456 539718627 811364288 371841509 978154103 436837526 646073516 316757878 925912726 279094238 391292053 278089460 718695319 699146580 901405061 418100481 848866641 397278309 944617137 195321382 734434976 412970118 784578200 458012666 543254591 797677322 923381318 377153748 716970199 675370918 886637543 368587026 459125880 972047668 982652867 714597025 955914166 349876991 369936649 471088955 894287525 834361384 906202116 840104065 930562475 274860372 601859794 897301638 914055698 599035094 981538844 534491834 598899103 897271943 898876559 435014517 494417413 549647905 963371313 734902812 736650347 506058959 929335507 679992573 830351649 453852681 543908523 670762519 990321789 106129701 968894092 940315085 956327322 57711198 412315359 14482558 487301276 337287328 535333182 284306159 500853073 856441032 884394079 563969090 765945886 724975147 828250613 40649251 275498075 302098920 993832359 290870743 526981880 22679992 555163826 561199512 861135093 942418002 951976354 806017776 807915859 689742547 784143229 6240468 324125897 100479863 124906474 455128899 526814257 245766550 822700223 29127121 676467558 981282473 983153206 940260738 992939909 493280891 908273346 313933789 476007790 610471984 855949488 515965471 866266659 860697527 876343207 241330862 576755184 57112605 908306191 433287864 750440714 595406576 656453631 272498958 891153681 724498625 904339191 939113788 998320788 596929617 846650086 463699957 964848665 736527124 761334234 333768663 991042206 153009132 286847250 376592344 632836894 953081057 964063799 104330881 948947712 680247114 862780657 412773669 626955266 102272846 993757139 81325125 962213308 475245171 749255068 164865849 929408220 242955674 436341328 90857340 291425933 893321254 942215800 859161759 880997882 109101495 865329549 687404542 753079333 40001116 843524752 28699302 449100394 388455737 961768084 317290170 727083585 291493336 512308663 168772118 531639840 220507841 800137367 821848178 928813589 788973029 916201581 527242782 910022276 381907738 650214310 495021538 521938928 356277515 629767297 719665741 805694811 507632547 840679185 437515744 443550481 582471237 729926448 916044376 986155513 381786511 651567402 398214246 914318417 628882191 940011059 845741978 881884098 95140045 712794874 678917151 950838504 895135639 974648388 172137548 312557403 281447770 523583675 240907700 790666152 93011033 950959481 502014018 868424774 40594204 70190839 694577026 976634021 680995169 997441354 91140688 821769650 806133741 897024147 20274758 509648068 16916423 471342252 102862068 734073256 100740654 424297070 491192290 774970726 269286555 571266702 112119386 299096534 834022134 877468048 918245184 991071377 753167418 759373931 658618610 935149824 679912508 693378073 889799606 926453611 268215312 909488375 180553902 964420007 91728940 123271921 441842535 585460098 238931240 742852411 129731581 858196946 926583089 997703913 766765873 896370368 269105921 524019940 247110930 382735459 813279731 853950275 43891448 509003029 764671613 983786471 396532691 929590232 747309991 862142221 340938968 951203271 943313593 989460290 671799969 710341898 998587344 999349234 294880969 462117917 5491344 224425899 932664830 963498209 299787665 766333359 91582462 384185216 907358411 914464674 408651514 757655434 220397901 229731356 658514093 827114409 734337277 792648750 927232131 940824159 714631426 751498784 605263815 811656027 705596729 806673383 82438219 804709097 791637282 905801601 187158863 876091448 364887701 845457340 234867960 744287042 802949704 815546168 279144538 876663331 78971060 358879778 513792154 573928061 766078823 995080435 234454791 679860097 724989627 779151821 524074364 839092500 810704472 872421070 516602580 526027941 445517994 689244711 207316676 818394494 415046811 884687495 835069907 929331538 757870764 821081161 218579174 319283666 471211569 973509092 705302689 731814644 581085502 714098019 255316687 603379208 785905739 904181579 754302016 935063399 409421281 567026413 902628895 926192386 218128543 423521945 399710282 923924805 931056868 989907671 66302130 200224922 273099271 363953428 771246496 948515451 606841227 780814221 567878217 805614533 975175426 979627540 702047490 735227113 900947736 972933496 257028403 568194112 487285856 598715980 948466982 971295330 498684658 993332218 918320958 985079172 225097200 737252409 675163620 900067406 110932122 684097116 789838643 807294713 115914339 993515234 449614988 938364101 647426813 923580041 181938647 760244265 501198452 529331381 81082920 846591353 119525120 914700770 434085241 801968598 98079091 826870510 825236978 981274501 807468484 987327453 851186915 987286796 88818603 116451226 689595706 981226960 10242752 324561360 772222052 911059538 469843370 689156768 523593562 926168603 446453914 994152585 950860893 975374398 232535181 849916954 158353399 312378025 565884294 858172321 338824821 703568101 71784651 261460647 917559591 961158281 488047932 643517694 18253979 948104950 619164219 760706146 825380651 991621629 299603294 819252535 174516830 324732292 92691272 380562219 319515421 542583956 403057293 718091419 436358593 682094287 730963931 931442112 141655124 567985979 642777990 973536951 795786354 925913767 118729189 541060620 591079446 791157790 196626964 913802274 554353 129400222 935605205 953111573 520051893 667319128 78487171 899523308 662627457 847975961 22284267 116998482 331428243 547457697 826177291 935770392 792204299 967346161 871842352 878990317 66530548 499737904 285313425 819773531 993224648 996870335 800566603 873418732 14835616 369126346 497536716 976206649 203447742 604453893 370059431 611114497 75278903 377021607 255537757 547498511 334594599 629034102 103953293 223589526 363977091 988572471 229346298 300082578 571645663 593390631 566406623 881089374 469581587 608758665 746150423 902453817 365508956 749582954 677159883 986109082 678770935 892122957 333775453 753823454 283138274 696204034 587089525 807966646 118144388 387551198 305177365 815101510 78763439 173666156 98240831 850805321 227034627 904399574 382656973 633633399 110472174 155881527 633134794 983226427 711535615 716335342 466505975 552182905 215590233 367039964 903265615 980501842 335734481 375774316 667660597 908856728 474084681 565575111 827860303 971247968 704641305 878683421 935396136 944366675 914525455 936033807 402883767 747698011 672162044 695278271 905874310 936128036 960158644 968394641 340144088 818574490 85615601 408819570 515492723 673170210 652998848 722322105 697039035 881109324 592923879 647354938 351902843 904007492 611586319 792379496 751324886 793287856 626466744 766380011 16384209 573403395 961958377 962176767 547416974 730594630 557958122 595438384 644045465 674470678 853903504 926751213 284423585 634938021 767328524 892209555 813211852 831546725 494848573 852700120 365574384 376023154 614904526 782703822 845615741 978613804 737451135 839694821 930071329 974860463 623878701 860244788 852129645 917589522 102290262 589205599 958758705 988278872 579681303 671335550 214559101 628702063 837646932 998003774 471880650 896168396 524602716 857594753 45905796 387746672 83662757 942814832 278448409 980422211 260644105 583999063 246606635 316839796 459135495 977324850 565290459 628187614 943948906 951625128 818743046 866188196 95991840 830379823 803239022 966111746 551844086 555661114 954274407 970207748 297011912 515743033 493863626 703699454 107168801 715166405 517021110 775773670 877837992 953703709 818723406 935389203 998420220 999366837 530552349 831857112 765867753 980731557 18077193 418007222 130880023 867018922 409295754 429528611 128656103 798611902 514067947 758607474 409957191 708599579 29398456 239414587 6701428 997507292 361081129 799061653 786599791 861893700 604447473 986842550 908736605 923513052 357794979 383397148 376956930 874480960 304011809 694158238 869539814 885455973 984331849 990309128 510156577 800628685 569405618 665618351 307455120 794578892 326266367 835305857 450931234 662646160 342506246 911026310 903510597 909810442 339703784 609750549 938907596 991707988 72527834 600561025 767128117 830244264 238505862 253658340 776060984 822440035 517157692 553077682 927705885 944382832 242856633 442781604 894603748 919299947 928185152 992716462 894212679 945641561 511802710 792687323 47998172 108256361 730519559 823820600 317495221 608283024 882377154 989649891 592246021 670828192 593726657 796242572 648733738 964319428 555651169 750386047 305270534 946682405 677867 287476880 266586033 860620766 619198550 886129326 598281587 901449545 843084143 965096637 45629008 821722852 277801621 468994580 296857119 375012154 823376420 946729447 648179079 727429597 224738415 503346747 786961810 951599299 126689130 339144811 323899560 663138803 523702266 708165499 984450312 998698640 382824632 406932580 291746116 723566045 282490882 409788391 986965580 988455576 371830698 441555497 91757731 724623355 256044863 771442149 876291168 989642059 200885871 518997800 482273581 614610021 892685837 921900458 111961763 797306344 854946790 986515462 599904837 667874582 214958238 829401577 157027434 617250227 797924564 901274376 14839434 192238643 355995752 700091423 100124672 422426013 432190327 608961763 74527091 135785434 669565791 845603184 34607226 843087887 818318988 950660260 7291553 322699243 481182268 904613053 672519430 801465385 454208251 790208744 17022164 837468816 961443620 967785347 804761772 816462463 390809467 721651376 905390809 914314730 126137587 909468912 211509858 788958601 194013692 722741304 595962221 873710035 724099364 818785723 796723774 864258717 172862617 585354822 462406838 505578680 662390837 726799077 158543697 368076513 855179817 904339168 225041366 927743668 780644126 889987609 991468016 998134923 431932647 952271127 470936440 539798937 793984153 831922912 188353024 906562733 747404042 840567341 658854504 849234617 603434819 713526550 278090599 506674846 98933034 920732466 589200630 697051821 222222370 269384949 103277319 957935410 931122199 952877720 914943271 980430696 790731749 933058280 790002042 810313898 163549674 280237239 112185147 547394233 578813187 694811249 977143878 996159778 965688599 974572547 853448155 905048104 674198844 900252838 188432720 724321052 451694727 612269592 61633059 249871428 102966193 576079705 191786487 248292804 672257516 883899040 477940572 601074120 605688239 984020521 132538946 414533959 565637493 670111774 193163910 863419934 750308760 975630929 305533890 307366659 731540143 966141097 62032341 603716627 663599399 933727911 145667022 353270737 12193145 674185945 924256815 970854869 912027642 937932274 226744690 898195428 894454819 991694099 970013746 977069513 6844426 353957656 666827586 892943618 725722561 831406662 170947018 232181923 748244667 990755903 599955131 971706281 291599132 540947906 69166751 601632413 413276069 455167270 182144558 196395481 544934164 985253973 355146932 424197354 527561389 779635979 225354862 639738592 964813667 974196551 637070797 762288003 898104913 907934272 314212484 438762643 978868951 996165039 502199228 684193467 392181408 486539987 247585289 823734928 560616068 865291455 467439384 758219418 550906271 890001677 241617665 284544339 996025311 997204625 596370836 798848647 839658464 976325416 764606470 849354547 572098693 859259076 915246317 928614665 192621538 338281712 390791924 836285801 710416972 831017018 266654552 630605512 296181107 798308928 227112942 524454314 995472502 999382394 164028407 892297725 823860843 921128106 623805121 661291206 965745069 968968020 470357534 855148997 683117750 818829148 282066262 314726613 659075906 954133904 788023423 910477073 406548036 961864308 727982204 763808244 532177637 960965144 730326725 993530562 240143115 441604827 792639705 947782967 928267424 985068811 120648800 150372887 536838677 899983275 244943668 331749186 614383108 707916672 777507216 950458842 967037164 993678503 737079250 925969751 435936124 927465766 3681655 254164056 854053992 909076237 528282327 937049920 168901803 316043988 666423877 992458484 971046906 977528579 844033368 845187160 517599873 845206523 934102664 944007553 995838092 998656660 598417270 877094783 649304012 664503901 830646366 998342408 425443554 670262805 984010827 984126146 277169544 571337938 282041245 801300104 428023743 823581596 838524175 889271956 810397599 931322151 920840223 995132561 350177859 639599206 385915256 671327506 285934118 908611034 294995815 411562942 547774853 835460456 808714105 873680561 654776365 831068207 968193138 986996666 833018972 892319945 717836369 726576183 708355911 923738953 523638758 848059628 330947356 890111264 141264584 307665607 721399400 967235802 599275067 753867711 898720303 986133686 596751043 811167184 699293385 958589081 241378067 596976044 895897542 911262019 648270092 751768613 118417813 831439201 943923514 954903319 514560022 882094957 48910278 663474421 388932630 828651278 638028067 952417898 587318480 626525151 639966207 916981846 74031114 903435550 151854609 719512296 983685728 991970321 389688891 990898893 547114317 640647439 832018765 882753209 324137109 469531884 892343686 976254378 567291515 993307321 580118762 705949823 880045054 990844110 481912587 502727135 948441427 981303750 361066316 913508115 433295485 518580672 877372287 941145492 330195319 857088406 486897385 870550499 560374436 744690303 338198246 724151624 269090857 270812057 545012611 705439552 752050186 888006280 297923879 594786213 884860290 922322090 890199636 986506704 405369275 878135896 70767025 840668366 382999042 817916992 508138053 656974684 354154195 772697937 803391291 951811419 238706836 561678405 192488116 574062713 963100396 985903854 457476941 978361950 650143472 868056421 392553028 541272448 454274159 958311310 471269226 521840412 176485150 529941356 200488350 689623414 783861496 947758311 409984502 599857865 31206467 408106567 785079345 913803519 792949851 813695341 777755793 948811287 334819310 424616211 502935809 721983501 719346293 908941610 675163899 748405081 259955773 973861996 205824593 427007544 329984814 762154833 842315897 865354783 304989430 867514373 231745808 397228293 338231604 988222019 454858267 811883190 856791251 919352578 203043029 496908334 501698361 659275501 236149898 714520298 126305710 527792824 929735897 977939689 640967997 851223170 674412777 690265993 302305357 793588600 335337714 351277364 431460317 521965165 999274591 999344734 375966702 556855137 286075476 956529137 124112644 536908345 990365664 991126617 646175716 956318038 814583292 886426405 855177991 984968510 161208492 591848878 801862663 947942093 759715162 970428228 985784369 989099752 732595839 848551097 764981749 856668666 935567042 944055328 123429018 834418903 745409551 970119829 971501522 991020073 998849353 998930280 949450086 977633114 302440391 652526544 956981067 966819447 876201964 897751216 998542988 998625736 420024641 857203549 142299025 994517829 63731973 589427617 329138598 933812582 118666919 998796896 697252506 981662097 596526877 871300297 983466505 993457753 214974801 548916186 780988879 954764010 377784031 394001389 762858807 921318975 73516638 257990188 409157157 941893752 532385063 607909248 835390789 993276694 86236490 883018576 440440949 569160980 582918301 814354509 729996186 814813542 514123336 577216132 778876570 919579601 223240917 716899521 372624140 720705535 754423421 931930025 167270924 249254077 989150694 997304398 621859671 726906211 890793152 946785786 739476882 866771329 679238265 790676326 836114957 852030305 820384249 947853362 722671929 858365664 239323756 671534639 994215732 997721385 533508361 848395354 836817813 850972926 733260570 769079194 540422495 843724641 213854517 219421865 186230963 314285417 180464953 742866982 122098352 153543420 934963533 966676254 440773709 454350422 648550647 989164685 1645802 171037140 153547512 164454953 879756661 990076011 407802243 899124073 200045916 858799232 858310034 904073597 861579149 990822392 269048239 437926299 372764751 758009591 142985308 148889889 60456300 718119424 339389438 477771537 14090085 727692228 573930399 849146040 153951931 854175195 88378567 482998523 291713715 671542551 535029506 915869111 629617266 785439911 659483527 978775277 196743401 844845869 136475945 296192320 82412804 525715540 834551720 919151456 436310231 864009591 168413272 970622957 2666496 561233431 752040788 797715597 778182906 952178658 652397169 976975332 205121186 676803477 115395249 391513615 997032184 998744086 12848144 436525614 212332321 734766714 489933177 961489115 476199680 690194039 159045780 483292549 165885403 464543942 788977231 863654946 407731994 724841820 832468640 946691461 420806121 638488336 118586273 985254328 120395941 660187328 478146860 968081102 1963437 438495789 364274369 618783928 701404947 908970185 24890629 598778870 334218866 598791594 304363701 491811888 485743465 541466637 391078984 425044773 354024093 876274901 4112958 454048193 129412790 548942456 874884801 890228906 445406443 725039351 188584084 685553301 633793441 776894296 807298154 904327822 821949990 897468858 521363352 676634651 674243632 883076555 310989361 765839306 69537074 803810782 545536994 649249053 754310986 874246945 900753162 928527702 935614240 962177203 795217934 813569714 526659469 613196301 824557589 842762569 413044783 460408102 149814626 919390115 883725236 962983667 867490097 888176841 662152624 753730102 848912606 891098644 315340073 734101931 740893333 900990622 536279202 792284622 870228296 963493096 802564076 875167025 191775210 191856468 175266061 590520859 632928562 838811904 993079481 993084483 949710958 975178172 582645021 633409879 720323825 837362262 386618465 681213900 534278120 960295430 636168515 637008310 621545408 910658045 148849563 235441250 166868493 365067069 276851141 761954601 590253065 658396851 939233704 997160548 590378763 858932929 14557838 212084824 889954684 966965852 17183708 743051086 920594304 992264678 975351037 982372554 41876478 782528944 517943972 733733454 121401135 424751868 965170917 996828243 641027494 712608535 581731311 827789366 603402257 877376433 707544285 951310129 629613927 740346979 557843913 788514141 282785985 611326649 823961867 867794774 329188096 929369676 765306551 991063664 193705412 507016373 161342675 747888851 83293194 87117894 731571466 826445993 366231704 419135339 130273431 498428045 48641305 401964729 170221051 455495605 748636728 828096151 600959158 919471863 482122274 889735476 561775566 822686423 259647725 950523685 851641030 934280649 313633203 741533050 850233506 954525284 683634998 891162677 300794824 922514025 567433416 947696873 77506899 101957489 37625845 721063181 646396001 856752820 309517184 871338777 80227210 569171144 67760470 175736762 228555553 618002161 484005095 759457771 895208661 972658336 47789210 345793767 216908560 852217232 536597991 684470962 453961247 767771982 157595290 618294471 876690255 983038689 438120584 821669154 551222574 682151634 516010367 844818372 478668536 729092044 322682317 333691414 789887450 851426902 973293736 988853641 869960550 891897498 36229889 331807507 971453020 995115276 378465719 883101291 897952584 905570397 318592159 503294636 910273163 979544464 580453851 583981126 198491009 365142520 806136780 920259714 396395759 663113971 94134646 733015312 105959936 153208989 868236204 870513991 65117542 441078697 582388915 772303082 257735401 439865670 780303864 782480037 911357805 936014438 6666763 605141401 983439483 985787894 654249938 956025525 366975804 849793886 39899556 487579578 660394475 854330091 313289932 733856589 427717137 758651320 830042770 867218649 173686758 278882901 8509122 399101382 750767092 974008269 283444209 583645251 327898307 858981790 361701083 903457471 946719362 965735649 15565790 41125833 186541043 887638904 343880030 866601271 32383839 232195354 288469209 883065052 237173617 357768032 269822771 909708184 610645652 993956758 909520327 930396546 755452639 781566233 971137611 994178463 303164418 460452625 234821951 658489045 994506358 994529540 719714708 846013624 576595112 842359415 662766594 990085844 161465661 366896342 398121584 714665405 306292844 904453000 76859056 292329313 565115335 707919274 797968001 941857295 896971414 922148518 243900468 293934346 222150832 915247649 64174008 417051318 438140103 721748299 161995565 765178002 69497870 379995924 244651446 914490941 309107333 566258343 373044114 802452349 698843369 879908584 752407905 902814356 642595394 778963257 38492558 783438726 428107638 662014317 10865655 250727818 144350013 481794826 238878590 571997072 533650387 553660608 652055991 818678339 370185911 785470774 546503851 579238948 159238921 450344807 789704582 876841462 322213606 879817249 646996429 794082006 70310640 233140400 146032520 957328422 985371294 997347328 842908781 861731052 364373518 784034824 789805468 913671495 833319810 969047595 898063045 976471986 791643183 974237874 497882282 745554887 924856320 962887717 338286688 576872060 937685201 951958465 145752667 633180250 307310334 530073484 827646321 866081164 53168600 981143254 682062498 852435554 410366939 584879128 372263550 828924207 115322555 582627373 811032636 834382062 692815812 801848420 78611539 680687106 763141762 850634789 551768077 827619627 209121225 829174049 498381105 713107417 420769902 424412306 697060343 832905248 358366007 902934513 431956813 635326861 447134624 502778675 107941290 826462101 222187863 413435693 75174584 290387448 831512107 938299548 947602533 953027621 53199516 908628208 951463385 973766868 76179313 168406438 289854170 812386598 363838476 927490595 43243849 192264647 286704427 383050153 808441263 943099516 591223033 733569835 549585467 933390550 714624578 960117526 550699361 676139454 780625651 824882538 785866325 988007316 934395873 985297836 756152724 852526754 143768 452173187 95569840 318740099 846041413 936589723 121918897 543461665 821417126 955396431 257949113 694630946 92665665 600777039 971680166 974334142 444229655 682126700 493450753 977009029 319415891 777616703 916985853 957992342 780649918 997952326 951724860 968993693 380541097 513571698 606872902 773194793 21887787 608287024 22718827 855432485 494319850 706463164 550441348 571078853 325909173 361085576 97019445 679508561 199934600 609238505 41477657 69535874 889575951 922672765 238675277 547008898 623597908 954545105 473506802 581613510 906810042 922527225 528452850 647202716 659854639 671260498 89767304 331152748 138760529 896803579 126658779 227779909 995511193 998925133 783614926 819200281 869445771 975058823 87459125 925207766 458102127 760808067 994376427 998284437 231006042 567885454 531307488 599384644 216729199 686834143 821328109 908505682 516831870 556948670 482701378 585717203 375190998 731781415 519246294 880137657 127009620 391419810 710448007 994234186 383263054 656241917 486614465 524928893 288241634 515140688 427997035 872028720 113704311 928579738 756026707 823837640 276472312 376360645 524934089 813119866 213359537 218115614 735326797 882729724 818753795 879232671 330286456 660216824 277318913 813493205 558703475 875715956 102499547 309774279 147586997 532744191 359889785 604811633 892403196 913260285 437096789 841199148 76220585 792537098 757856568 806770712 555382416 905896082 616358505 751124020 680375489 934956651 434552923 852896832 505181853 536700858 46985045 153318570 844071158 877193038 206641120 440791205 182357354 926375754 908355820 955615054 905279381 984695486 134742672 936428889 386820967 698963779 960059377 964894114 239829987 729141958 943420266 959843361 933741610 986611272 158752714 277956607 489378265 637469786 732443157 991735306 711074851 906231440 700747321 815855981 271671644 896758455 976105792 980649702 369484627 773233556 784162828 862231744 99069853 276122172 464998776 691836645 192066658 645230411 669742296 754370948 894214152 934698363 830942872 880100718 703243285 797814351 338140335 444277472 813854156 921269596 121176274 940159407 257898730 379255071 111798887 951843803 980192967 984255013 359599463 986942247 381210748 421774695 506632996 683028505 12199698 404025446 678585011 856864582 174562261 803814330 164243016 563126215 594154047 683576072 843785112 939369929 62262266 712397151 118025019 963435506 489323594 864556468 751397401 910530821 409231897 596201621 99491149 750152059 239759295 666259869 434188735 904065898 481885095 955399752 131461944 434448927 946714817 957614044 317164559 697527377 237670312 257168273 883299999 917174250 247952697 295448979 457913054 615756617 225797755 680027081 718473841 992087009 246374867 663198903 803234645 844066045 535667465 963539352 16479953 455656423 428688494 653169430 736502901 978892143 552401994 992741405 650977515 728098637 968921361 993702073 280432778 286929487 407110045 410613471 104804029 136444001 263419860 409549487 742610842 978575533 589315552 974439937 299188201 615236803 848404803 883964526 593548053 732505395 768543701 798929654 210702622 989141439 977640651 988763443 144618400 446966714 381458993 443721180 812878113 941021840 487862784 602765371 581344645 618850690 412903715 437505760 849195038 851360668 856459094 859730992 32496811 623460664 413451762 960418643 900036672 996616083 855756956 910345742 409793169 618756754 813273199 895136545 409899816 454909701 681510159 715607604 953913771 981548416 186494931 305015842 136324377 626898877 310876032 420102215 46991773 701166925 2312851 207618641 404975596 788612801 890558598 918702269 270411161 865281514 912912325 985787399 232897213 805495344 707027969 767928470 578714931 789484688 684919303 775120301 933526504 942300007 296019240 685188124 113541878 215038608 927304079 938582223 493045431 563919715 133916605 655332112 305677208 862835173 214334528 408231318 919964393 987511541 445514263 887731957 966553262 993768580 980482542 996844359 969680439 993572553 953389958 983530572 590049597 672045961 487171122 773937392 504354688 576228621 694296747 976666806 710613800 849931243 684053509 966151004 867140066 905820665 155669566 513979126 670227065 779112406 203946086 598397724 788807505 966017079 692403464 855816406 956307623 988712214 187871970 464257727 631749130 881003500 726802639 743908773 88784878 958760268 245426853 963075366 312451459 723090816 882577841 910041336 651334656 838141480 10145627 595802645 92330230 834065789 835095511 909999213 338451591 624881564 962887075 988467458 26575911 434032014 432798648 684800307 640918844 647919993 613152247 927796813 495071784 615310206 412356134 980340669 320168903 909595254 945360340 950456258 706529119 996862720 868268063 967804374 717070088 973310028 621810693 935738045 72704925 742439040 209760544 801708741 855522371 937591834 404426482 537634528 931327680 940168648 665789519 882770041 14048953 237288134 401749696 617870415 785213242 973596384 446877450 854779042 179051654 903073836 89424000 852956514 43416417 226491873 822508253 853981426 378594425 501276363 344738328 950821785 763858363 895982408 373790221 697467532 705010154 955880449 460216231 782615762 340706602 464379003 618456109 699549322 731924074 793483378 588950502 854639266 826106993 931501119 984799261 986550336 810274241 962900018 993054945 997448648 261451963 962014437 226046210 397400236 137916218 776547620 317948613 554366709 570915673 891210489 819347481 930533493 167406236 343289613 638253287 840479344 817110210 934844416 582980909 712306297 895804432 907531650 866507833 953321260 940790353 998923616 998330076 999284942 712132840 734639504 664950567 901799891 437395484 813164639 521190468 804992639 629910837 785789418 272571540 687487704 286639802 722114782 380441749 756842314 516441308 676139060 342892214 617246561 318229926 921694796 458478497 873565438 60661602 549442910 157758736 926749789 315331672 835926534 458742062 865655891 916320185 999290280 831033219 885046554 47353078 589924536 641543048 700176237 786229812 853748435 798016999 863626098 115203001 302069236 324990784 813733990 231919242 859994270 424077450 563903965 720184090 846839932 326311369 930288153 1695488 573593625 698730354 969405484 460025352 515377740 630102751 789650511 852462544 990511495 195944007 253111490 362298321 825386075 975486841 989124127 699725972 825990787 602655781 940434026 719192631 995926074 939887612 966440582 706211710 840213333 738610297 773335671 426304675 608463213 904399247 908231383 663005882 893916639 345768210 598457345 193412841 857043942 140846032 655828146 27329346 594727655 990222100 998936148 445535128 568158277 491441341 497618804 474763711 917595417 840768761 919869565 500779750 548113401 415845903 705665574 989412718 998162521 468099469 500527851 756593156 891038536 646854154 660885561 694317974 946204469 90646466 516835150 810089944 892356510 532016707 809735949 992557865 993847825 192751732 346879952 526932442 934677296 984007898 992584283 373306052 902675765 294705720 832253875 922601594 949794647 432010176 854074654 590033048 927882044 23411633 459838313 35619683 462927054 626730318 889437100 815631844 985607358 772364192 962873962 504757769 695556667 490947081 776315926 356475386 845464509 74679 498548256 351232688 772726102 596789098 852114497 715465739 909186045 390707127 421846990 262740471 725795780 163052170 725178910 555003904 598662227 10126908 912222916 735321751 992607828 239115726 258579227 212726472 337864308 531586788 725587765 966362527 974822587 203583783 320601118 872669080 929531840 27446438 294503138 790765579 856647745 792438812 847313590 474286238 736088857 397891786 911429571 413458985 706825147 320345161 719708077 474954336 529026062 820870250 933616623 149019291 357278027 468025782 654323047 786146912 941319246 410116559 855527516 392378959 819638042 8181175 804995717 607595376 992121459 784461713 836774604 192010768 693696412 467736026 624216395 42866004 203994736 506957462 742162822 794429335 815777396 413083668 532161485 17469269 935781404 80755890 412666740 72905022 467200655 869189633 905559185 382943638 883434247 572316070 804241204 709696149 723451336 303212741 527988178 13010360 484176825 783989784 806488690 338292325 676132491 503572401 632415305 745343779 747262655 253851736 525775739 135172910 989542687 359282953 420746058 310024411 666706328 35515471 289136373 238160860 942659000 303106614 340256292 131857934 196077820 626098908 802034487 701127204 706987836 258880475 659172289 192276387 294504326 76945437 929642429 972537135 991406836 103068625 622180672 974644365 980189288 829478829 976495527 191752281 198407476 314635967 396832247 503005311 690262180 217346177 950899795 549911279 650312028 961426324 977731986 675288830 936081625 593616741 875372944 588810801 733508060 203473109 579283957 575690053 790329733 327723195 834759789 478557766 951711533 818397297 891849401 45222974 130202320 163040321 308584699 321465645 499497605 326497381 845770027 449914226 590522747 180271155 461759417 710795926 711061628 952932355 988987935 174875648 471176986 642746782 809578588 224363949 325846192 768233631 781904863 444370377 519564116 45692461 494045077 64451702 568723321 877458589 939342151 929071787 930563482 423765022 589999243 641957993 757387310 741477539 953852358 781505239 957629543 303161484 398651895 340505016 652377376 847918814 961923829 883267543 897958114 442419080 939455829 369143288 898815616 740154828 853856349 933008482 975930710 780397366 781158245 627700671 889259194 957219367 972961230 781354742 891938133 89410917 543498014 909245797 976397759 527615411 719492627 400479919 499384311 924095618 964416525 372526179 986591767 920530842 991821183 164331290 667349069 967507364 968571497 997227270 997314403 121098171 275972171 974609043 978481021 858767229 917243054 758693866 864514843 421013443 788062602 135560685 693547643 132789890 969231565 403404460 470929472 765000850 955522544 337948022 952755609 316186545 327401356 164445689 918132861 465297737 983406210 705095735 915625046 131203419 381482741 756656926 919448296 840010992 957461711 616565160 790759646 699266481 758617764 944739701 965874590 184099024 472196591 121402123 514535602 580023240 723707200 697407429 882048562 944426745 997115534 850694786 863169711 680761600 939982767 248907596 439840306 476702445 886289948 514202094 822536605 85684586 361640105 843337751 924011208 730405085 749871925 842742464 966602889 27011753 326995356 517785259 839842292 288413711 971984332 871247235 939826597 126373204 272282283 299880049 917355587 198511416 510008321 813551180 830702554 301206646 767532890 437064814 614701220 306446583 655099143 669415365 805241329 362557100 897897005 819361891 903515257 646508279 950745206 657696767 866129419 87307501 370617886 86093565 398592094 491240047 699592416 79841603 344731090 271948303 732889218 520681829 603845317 997740977 999345473 119053189 960516014 112779597 378141223 771390747 782382932 388977748 510290505 273130786 703700095 804501361 885903284 728017426 747963444 727669047 955212126 889151560 993990473 991588496 995857059 849671878 942745839 622267406 709987446 136973342 407155209 192676393 921037162 371647876 399131163 986537968 997261120 637957120 701775685 517974530 754674656 411476665 514659275 249492868 555049704 714066991 986352342 697333254 964106020 232181878 455169781 207728165 288432136 772094974 802865695 197825355 762860910 150600687 469438476 72899315 514230020 692372614 803537659 347076740 763251706 145610999 422118268 808454326 862637256 68649774 764077199 55319893 514999602 915117241 950713759 116660100 450644757 478565706 931037232 224351941 345155991 754667626 987618874 685589248 933782372 52658649 264143400 329771488 515987858 195491637 899075783 712203431 800422710 301866667 915376946 212577484 291114897 966861285 994704238 974344293 991829727 333077968 994129625 334246378 757917978 615147838 626127705 43353123 494050549 271941550 892168628 987532719 998007293 285262825 436619286 104203137 627613510 605309665 964612890 806327504 954926038 461318605 464669839 736863517 876945869 21878341 282934022 222608801 719637359 715766116 957733071 866911081 978953338 450602117 824988673 428037871 450188056 566122027 713983436 480252051 838730275 222491202 414083391 497134407 536244104 113126576 847832013 956173668 990052491 246551675 335022334 312959215 574744078 720306095 905077937 645732338 930811701 509969896 581425436 695995317 937075391 744729501 852080581 812244843 985366139 247000149 733837813 455296027 538100380 430757363 859425694 587851569 898275999 223180960 435818715 247930035 693580669 774951722 923158042 767570483 899962602 664929847 930259446 398896557 785716272 569966817 584633281 952151086 962784524 872796037 971434473 999276528 999349506 892490705 983140087 98480479 683841340 429281266 808072343 954708467 998973303 944616342 971802775 596200538 973019619 855886578 984732397 661993933 751206706 327155504 574501462 113662859 694653898 341413225 342766703 851995172 947933008 46087248 362994273 853144324 938629710 538357830 852486713 423621965 876675335 849952068 902266661 777973690 791605094 663306479 913712046 245520046 248042103 494916808 694365092 808433149 857540002 108461923 969860710 643139317 976204766 36378764 881687096 76109137 339311253 732620095 840701145 914569599 931021621 899491379 999092006 693632827 841099510 156722893 343097895 130774358 839165529 268696461 664753195 317931988 549813042 972899338 977078518 31166170 311740810 695232827 857840427 832827688 947736324 499332763 827552394 191538022 846208443 675022272 896401799 216360344 981404362 940103511 987981267 787412506 811296453 568086290 958622277 684319162 776367761 997341264 999258674 467157554 789748783 474046643 612785945 440661677 611837448 904804432 924452833 668357708 928997452 729754493 743048072 321896583 648678830 530391428 970668410 603848581 920433466 423139990 498646507 29081514 745497808 111837773 959053918 223069851 344610285 869385392 979077969 809088980 833532645 371398455 637645882 648920099 829333744 261794015 729240611 878442943 906432314 928201562 938159333 794205356 822358821 95366220 263573255 280342586 924937142 7774645 12184731 334860157 462216616 546014200 844174201 811067159 996364875 119993936 965195594 392791901 686569444 310592632 479895604 958561085 961103538 377375987 823775717 461993791 693669993 541462776 791849608 49122385 275036059 501065429 908814357 82960879 279754067 947867944 953697710 380514713 437647919 351185545 530311040 408760320 770554128 301662350 438401470 93134251 304340202 961627286 989101107 505531847 757823465 92964079 394414562 990692895 993463023 718628382 989250949 243459531 441647253 448433601 796992341 702168135 828108526 777887546 938120931 218826050 976769504 686069535 840950956 151119590 248564579 145855473 716144097 119186406 152289802 706868051 773906993 776186106 863766942 878419853 980600418 736956365 895298224 688408292 764775908 380199607 904584320 457527918 928598275 930289981 985422149 941851119 984250140 562417721 651597987 449518941 895758432 664716404 692640148 96127893 663260277 989663884 992230555 183289965 434731155 281751780 914647452 506506115 901420704 868388010 926279046 44875795 622757693 67471623 408010061 383664220 978814880 654337549 989410081 351590808 850158588 794939366 922388026 377500005 502327122 75577485 428936788 479727909 765786461 606452036 857660696 624549828 749765309 787622388 795576144 69277907 444693431 961175813 988455419 808514483 854033318 448284090 965039804 184867080 444660475 794080429 794889874 89948407 646143270 677072691 972072006 110605000 694897631 506031594 960263083 642915521 686726199 700023403 830274038 469758828 761380458 160821387 817428841 384545406 624539131 766353709 784237110 70230434 260670654 543610847 643090962 455110945 749030358 779104847 855659027 455461966 652472639 974209953 974971152 317786638 358380290 647375184 920743279 150766616 738051431 617739730 862487509 745148087 973307180 423269325 852384645 837208298 900108975 855663303 936980667 193043442 612294833 923318734 949555622 52020134 329228850 786930304 799435751 386020935 838746725 52164233 951638175 653266347 824251906 985947802 992258769 303916363 919957305 335914468 439474970 175432449 589848758 326023028 616509826 895370447 907821371 721543068 802669640 612182406 924112579 849797197 932826423 683347817 911469465 969973292 991240938 918728891 954031771 626053642 939753617 41226871 256811691 509692520 843927493 221660151 665531834 158844314 357935237 602837417 791075047 566587235 594088847 149531793 256823094 575008877 909268487 253410538 931720215 325127671 495909885 520841311 969099301 504337491 798393304 561679668 674454928 772278730 839822719 825699929 912861105 735955477 896868674 607959914 634597731 908112477 983948519 561910945 794758965 633494267 684700846 114831988 544391219 551807902 990605405 111641877 868822325 148738815 320741006 519767822 913875177 385626950 836115490 200382954 738698043 863777006 939441668 124490028 176669048 591555041 950449625 518360705 946491714 616912427 943105331 940433913 962224143 683741310 840913174 73255021 918208095 591845695 823915814 688917600 694189643 417813382 773660249 363888419 874555404 658081150 816494794 843897642 873566898 825859762 962968145 6666224 365833285 787084184 871536680 373320209 736528866 191788640 880316239 219271057 320224499 253169827 666338289 518202473 604117288 136457908 247774977 777933081 808301640 167862794 979232625 724535934 864077855 520793489 610364932 791879355 986193724 783873983 977779820 548721472 830086005 8834533 887594728 339759536 454251752 996778046 997393460 49054748 56663955 440182708 719347039 178352449 272806026 776178581 901112066 925782689 997887276 587430734 641827703 286344351 503325209 398823560 414509746 715469867 742406050 371697711 373950076 21836139 358279274 339321170 845279401 784183976 938468302 952205391 980226643 379801892 768917163 862011912 932339227 305020269 445697427 563582908 654445749 868744368 975678967 543462423 957596009 580866622 742540526 120963927 273377273 582590 201977706 778023640 781890579 521212354 672745326 364784117 603885289 643265679 839500777 142101983 711808002 297950651 603916887 580869200 653310214 412636452 796363036 430568680 665794335 137391361 767669034 281385904 985338367 982458794 982537299 803861368 820004123 781222371 857552943 881793952 934742799 454731126 871904831 900185748 967601982 297055426 589784237 859411225 905881142 575153309 609170577 288698961 858844000 220282043 880459078 786565517 971357570 444108274 965686919 426159157 960451554 254856588 676038523 296792659 340287793 235802624 610169125 551184636 874215804 335055401 708686288 833875716 889036538 993229793 994545164 885913748 988404786 518920996 734435428 373502339 969709842 456099617 680216481 590141926 735183895 278581723 681951782 118229371 219154209 159859432 468730121 16057625 231549475 574345548 795670229 85419745 291397247 227795458 990926967 849653078 975222323 1961087 839281987 787983226 982687229 727699717 756939166 923577795 971213181 800108187 944838286 399833084 402009197 815742268 861396763 529411761 944110563 492790302 800291819 696693931 892335546 156137437 856881666 851248811 999207081 756467064 805033279 379419261 736821712 198457214 661722330 639814661 683325359 280584429 324851066 28519755 323845780 477215147 803701781 65199336 108154402 139249221 761404708 906628596 996406741 527288735 664874528 817129059 924939638 157808014 246506364 288625872 478707378 905804313 961659357 499569418 775759737 316846399 497251442 369814325 549620181 354935399 571103628 123442391 382114862 758847137 902951287 281399387 692409496 395167733 507893001 332107065 687724015 582770835 674614436 942172114 975160685 272171595 675583548 422542390 651631776 697557046 776040398 264852616 322665711 138538055 352113830 776016205 958983294 518342528 627719208 398846610 524097193 125930351 149178564 397482207 656897128 973420995 977148075 340598831 400249568 427160255 913167552 211430575 707594931 219737982 368321949 690342824 809968916 816042526 969408466 845702593 892805107 985884682 990196786 101630275 418261669 543847393 957157368 432576796 714981026 371629985 669382981 781586177 802025044 966993182 976686563 865745442 870713817 634555513 673332096 441051455 452593535 348828578 695457257 371311144 421744726 186303980 844459799 870340411 959378497 531423693 706817118 28369695 578049013 65520750 523402355 314746385 337271131 416229820 514095446 502811236 683913320 750283727 802435662 57087393 666871763 704922325 809637869 167649491 555078999 452335308 488340649 931950910 977885800 612259338 927224676 704660439 870450986 226857814 928934283 988636024 993245240 34255526 314707279 922367142 952064893 740531212 959208551 1700306 279033566 181798750 823935898 702915412 959272719 871926700 969175510 323443572 403193713 420641939 753121184 107121461 784007375 348825057 609680934 571198691 818230511 609665051 958722943 958923837 980964324 495220618 880251620 682469080 708799251 217686645 568840594 668990554 842232835 157926977 956412607 623907295 871598590 618414265 794639430 921137149 985158005 550088130 630559788 140998766 979764944 696308225 767439074 327792466 563719309 474588595 915883289 426336434 447044639 187781099 360966813 324862544 471996708 39913578 389907096 413834274 933606622 825067788 851299900 820680204 839225372 524680671 771078488 266317741 683713249 181404411 699057522 905053674 981575987 512383511 937670177 167800521 396156980 951292206 998981328 587049662 967769513 263076498 501518327 658791460 934633454 986271578 986544246 455020813 789597015 435703461 511126532 407539033 800351777 104296934 572949623 729345087 916539298 826762290 915263233 721565785 913000423 729513350 905587562 352848642 414286662 437237812 769529237 486403117 554442486 969233640 982473653 581434368 982333471 951491546 966846314 374997770 428243490 619331248 971340690 807431602 932185402 220424283 607144999 207596353 398288965 673721961 768802877 640723384 678024744 628692064 891572125 593565251 968713450 750260549 782097876 746732990 758746889 244173762 615031426 229514060 766561298 737406452 973669763 148298430 527057807 486990837 839262725 23093580 987048495 793483055 802409873 678490875 754449077 150472833 516600805 850748913 962617834 537022599 643675797 5276990 331374907 56542806 869399882 230014854 851065907 619137574 991671761 47061647 707215252 204301888 868254805 914093779 943718975 819057307 889783262 412044705 701309015 629968273 890445612 963668635 989150000 623771885 700475199 404397730 790417883 287979933 369282576 162893768 531484113 652461153 901245259 994572959 999111382 678936536 966430209 870052394 982379057 29611685 62638685 384882867 762352298 279948343 609432514 545526872 570671091 193064646 773290790 225052144 312417736 29708480 708332857 632788862 779931669 134005004 681731798 211388515 433052085 151955242 238636077 218479135 309249180 33645069 219835165 223761938 854615835 893053609 955836062 434373012 973464438 609861213 673639652 850056688 861938597 749734182 915921095 307625898 503782466 290104671 849678993 266602450 453072354 98564515 756033989 738128092 868309973 31640801 414287026 222164580 940420073 946832100 984512143 340979853 876724613 59780948 480589661 627738867 819215008 243378730 815990905 961306385 969429097 901810893 981293066 901691733 916960973 19691961 528961013 703837309 989109427 714302756 980322234 883324175 978946569 432467402 773674829 329642664 445840482 741216674 864205695 735714486 943506463 990091992 996311888 980698110 987126853 903095858 945668099 345914786 685591117 520105592 779775159 339686481 464026671 239201288 305926320 769992698 911874415 850522243 963280048 620499769 843832615 792435102 998571617 542796142 577004413 41402869 160361556 491074422 716499364 994191373 997250451 781112905 881763799 717859960 875839411 939143232 973800844 534046025 545636632 602892676 797855421 831200991 978707409 862440600 935557842 725405791 980308733 197295557 910403023 321507727 408299405 24637617 558191741 255954215 521367440 730851043 904419217 907225836 970868286 773718950 859916734 407315937 581885315 540305515 879265028 550958621 891898621 670033702 998204964 600158989 860950167 87760589 706203577 530102597 874929659 450678457 675411598 809484890 816199449 880854619 910042051 701721251 718293569 540728702 636306458 454649398 694845558 306344890 495433983 199279868 961547709 521798716 805786645 369595417 920319853 677873925 785089945 234980252 928467448 159087984 814603276 725780572 845646083 336889157 387467117 691937264 914443714 839320311 859043731 335248769 570276854 898776960 963663249 546385278 786635857 457425541 627899799 58042451 903776528 800258159 861246273 501957974 763751649 67096788 613431525 411553301 422595390 229589829 970725919 731908425 748434865 210548169 579969973 419850501 600915347 146823001 713166973 869080713 970404507 648230993 889956583 528950811 955993489 316642296 688178343 213598466 662109630 842645699 993047967 76528819 924887569 586987566 808673010 158543077 945552667 315744869 909359926 76910482 177148828 935572435 963060262 879217667 898957619 278811906 718198909 329692600 564224691 558816843 881942899 945271101 975616313 88441330 307106496 219989070 854821818 401911976 968185116 797809808 823755132 291282206 784127038 274655965 532256367 861102710 983542059 593626477 871816670 33936461 420937947 947394337 967310707 409864490 809368331 245151834 863489870 30250534 679538736 294003507 935753560 173215876 359568290 794313131 970509903 273718736 735567107 234861173 425370337 378444512 496359214 495619196 920877896 857036419 957049485 369591142 855722762 625959325 651293635 990273932 991640237 158066717 220440310 641838710 965971949 886978364 957662120 68168346 864595121 652478734 971693951 840826672 977193918 989520257 995302699 334515785 339047215 453480492 656457145 68296318 890947743 916162608 959295112 725872559 846944581 417904476 714851568 542038735 809475096 628630220 977318911 300243823 475967767 59282385 941439484 969131023 974911624 599534078 762602169 210909861 586947327 451972328 604366562 611565676 937905529 430634264 887933896 169228046 474509128 779672421 971003366 403514220 421791617 765451426 956291828 766757093 993607209 640911818 682812373 415365550 875041870 792691311 912898704 644859033 686515840 94799336 187747123 640265829 830971677 102225812 374964158 99848416 562037470 34349281 406084566 454769310 595366860 898489530 908117257 436437449 820866025 497467541 670781546 472017008 990382593 898534635 917065337 274061540 818578655 665885821 916435432 719316533 993599348 11706816 916576628 433545808 474210845 348529569 475154204 626192157 871660930 491755916 756975728 162714614 651604829 664928572 908787286 293238518 687740133 85473923 334714041 229969281 910651485 360234277 515097470 156068982 377244681 941593127 946795414 458888860 694332614 912019189 935890630 163366524 713311603 924934397 955705196 742384411 930357702 528841693 689344937 982803949 990118890 149584312 969232324 859221115 903064703 362460157 781448096 203569117 649719885 946308054 988416888 615051818 864975515 212889174 852416994 285443013 562065624 321243487 420123426 252664753 567319337 264570592 460657846 841091935 865922145 436115237 874301428 200747155 799194911 280305662 909379183 336382735 377537055 765669745 947339994 576421439 715470934 825851341 888789489 91585877 607797290 124472783 890020649 463019667 810622254 735000482 763579317 942068228 981554510 270400375 313996174 528691741 895826853 931192529 990117994 115432547 617037830 97378155 102117893 721354219 945128168 396055740 437032482 627779731 973049591 669588550 776940662 631306312 897451907 842385138 855033287 273192793 428890141 314556816 547621280 182244869 856150871 32405799 909193413 48171387 160593547 945347222 989500690 642566478 769664043 674308365 751623549 70505246 696348404 469361460 602411921 126180711 562829854 95594658 439304540 849576199 994503222 624144365 796422252 194716367 756226183 740063121 958604739 942872027 989453289 305140951 429393487 662239990 789534047 706127704 740916433 537998807 914797952 422417325 694983476 799643915 828043050 320938610 903867772 308107266 938025229 690424650 733919547 180512109 698766817 970151930 991089727 893563353 967006475 852943028 982061621 555726439 935436449 344440130 855866414 840484050 903019856 227893042 397736577 199607643 500297618 529943039 728515783 33220300 792374911 376509550 710386423 426864044 708977095 682466465 732059202 564790754 831364094 580430254 661550779 684402319 699755687 699366136 896670782 916609938 987622026 49428837 425574022 618955069 748740368 731701123 854323069 314148894 317935347 530011389 793940494 686516471 707616044 572015518 769568020 593996013 649532636 775322144 819194528 820955394 992394967 41551586 880784856 681956823 998065596 552566192 810747901 851739636 971102791 32137032 710939307 102607375 193964263 222854184 936534311 176063438 588967723 942821732 967787860 487228452 747548023 575548962 813003445 958169652 977464722 752393836 855534930 761380407 897519358 645583228 835346639 932190361 950465507 838867727 850265640 447112842 701320638 220548049 679268388 2230823 819757724 93956681 949279318 738448652 797286376 474907293 851636456 50184905 305807033 657374183 705308190 483964993 534736501 703741473 768000848 461415139 937130869 439790377 540639993 596355692 885411677 476101392 619722133 734332996 922160197 122151856 600013429 801409487 971464670 459392004 523037826 773635697 880277110 171814031 246860305 225946596 662310646 23268151 74717183 37646892 392382432 607660688 792572827 501700086 703177919 729291613 963516594 379237994 783881987 456655121 512844937 348529798 616358390 3002492 271968771 764528947 914227857 786780038 856086342 869760295 968902944 986071818 997977794 750356468 795248405 281588937 461959628 677348416 992820602 200091361 800943243 295508590 611724247 592034852 983432497 83195990 939906089 268729691 416394858 309617911 540069686 195542659 509255837 29605767 708997026 352613986 620662736 843511484 913593818 626594930 812354320 329376476 495902199 675008606 893437163 527851188 711925184 847831782 852560540 559539661 972512832 886399765 977547892 869386076 992786353 464669495 771746469 431990412 490274579 477333600 751094262 584570608 783112754 356936952 494378651 386127476 535033644 113372718 821390543 506625513 895645746 297212328 533883821 11967580 262013059 77378863 993412039 118696569 715791969 937939379 958197815 526280229 784275943 486726711 656396968 558403368 925600418 280496581 789146837 422763219 861820489 119324991 714944236 46831717 568913692 388521906 440987141 369836081 821081729 50502106 709434067 248983540 365610270 327055245 970495159 118097324 928119676 355029344 861909127 13098214 308558994 571632687 758552383 654519207 981652639 826723202 839363202 466462088 979817615 322562236 487154199 859075719 923777478 706583297 759910108 533420456 625784203 515351255 841238125 293854373 596577429 660758317 805062296 278113535 892795945 132748336 909811386 514510776 733087315 493961685 681922359 278696227 970466243 936941831 979902303 620055505 753714352 967021774 975949162 366650094 858502796 204906148 803128780 933799508 955381972 952380005 956161376 512530537 766803625 183009144 194071292 541956871 652697553 990759349 998264180 561282480 682393392 233027859 992718227 979965090 984891234 284371706 536254971 706119204 962241794 824453069 963104306 439273700 554172759 278063287 855700840 63495999 335884970 90539307 356996841 804755810 813541390 325735218 862976900 862473913 930326153 878368387 930964364 683048342 946858089 404352773 423448949 449362745 976613635 434411060 535948122 912602642 919846506 29105439 752903508 604019603 737521985 376306344 741789403 406914327 651005890 982486248 985793973 869681186 937880376 379210751 953988874 279160970 933397326 58600077 592098498 847615942 968191605 712999926 923948682 523747525 738369948 458117777 871252688 483724103 917255480 196082326 430404731 594719476 759179181 493754115 587795328 231830552 717847944 650303970 966312297 398911452 599037786 924270270 927458144 40305788 804433811 843997753 934615142 871383351 986351103 217270702 893864799 220490879 900551140 930485032 955787492 853722297 889386652 759586657 941927599 844660396 940194017 194580590 728012704 44487542 558341862 123940843 800789533 671243310 871118467 475532836 905779824 3758202 833510695 870000832 942472326 674043336 766020079 715012062 991475032 972236414 992323286 788116106 808814124 235110888 662169863 665886495 915347235 570577858 934927318 270601716 524132146 450582509 921322016 272506926 970606475 292645835 583906406 174841256 750774738 458851066 902540452 829907820 888999744 539943017 774033503 282126439 997876973 171796525 845276977 74340228 698031285 47301948 684669112 267154639 769214339 649254208 670732012 577047623 745788371 561737664 643073086 942032414 966617395 761520811 830257626 252964024 896719081 22487126 629378481 665215818 840383656 580972889 760524370 410665016 654468006 494017997 630712476 354433386 960651498 248007925 733325914 54227539 71527977 144534550 949387222 242478393 930452199 63217181 785620269 641723797 899611085 867211946 879771370 69503717 95851689 306423953 811700722 273372436 287458516 550013646 553512684 34474600 650855660 284543825 969139993 233325984 990368919 139720371 228111854 54026719 366728180 819323621 834035776 796865133 893686529 817367701 907336724 383976524 892874043 293636117 717430727 9183882 536489708 121526858 672309450 345690219 479826807 747951075 836947138 595911115 698465054 585455077 987750872 943363235 991439463 944227389 962580021 998487094 998857009 711667138 987838911 804377616 847986969 481731784 488367978 977022059 993626898 799535130 870564180 991090393 991713131 766582652 937418362 552585097 926707040 996518165 998586641 770907998 816277838 94241063 910861900 239360846 827606356 535233185 547382583 94963339 630714161 948674827 973699724 234633690 878708775 970756524 979233190 826484582 878479220 22629808 203215483 969730383 985872584 621036119 886612751 968199134 998109682 297001704 979952093 544124317 589926247 761050105 986181100 291007935 468869225 636829919 899105285 411838375 444636718 412129348 779759429 586302067 609419143 903440156 924766129 581105210 799139312 264520658 402543179 243309380 849717174 742012595 987633363 448700574 995133760 544346085 707526399 734573382 778852699 23647169 924497064 83031049 380354646 695910885 921202546 825826019 868820324 559203797 646003044 915895079 989621741 617441575 904436274 873009508 891709018 384269219 682771836 650302066 792185419 539167415 728271367 158564217 717440274 497909982 912952171 278811084 825387290 760840165 990061605 43227979 165873880 795585605 825659163 537779686 942672367 632915045 953336865 896144548 958256481 411175292 438925151 461712082 948049300 544036936 719143994 286622061 772523632 670453846 945576839 829496062 993183831 740107788 764934038 491417642 714190708 791664035 942920680 268763151 503401246 25431832 593281506 171759350 933137298 969202279 974020952 944235849 966901012 431085094 888530821 899866749 959006673 886746120 955392892 521113739 932121007 832710782 942627742 431910290 635113717 323458072 997976134 497559503 716302085 277433483 383067651 57003678 718302021 25132933 439283501 931065394 973392700 819617454 973627093 911981178 915715378 345111995 537709260 144916124 707038711 994060136 996959499 121997715 886517272 774465053 908194976 784308590 849610516 594035999 833811623 671603157 994042580 615351776 825837143 599120579 753899481 865664902 987589341 998440539 998711943 978365858 995103283 379888837 959584643 224761900 858959929 277344700 321504802 179962335 895495006 870084852 971550766 808577278 871407814 775416804 858655622 795254932 982601321 579225797 727167224 942854915 975558715 42822991 981962247 923193908 928818021 234192423 355724077 607598559 622903350 468623586 691059878 28841528 879360688 955844681 976598366 43523848 352020071 278761643 979506835 950065739 954162943 89378439 955635780 893278983 939468726 464472799 712371649 595905839 908888745 597076245 619772363 946571534 965464135 654650125 735917235 85919143 451672039 495237995 834705541 600853853 986716120 34890757 48547515 699120387 783026201 383561024 456894994 195558395 816501355 747214108 965717115 657154642 806126611 594957936 717101291 93373706 882784196 443150596 960309476 944433144 970110491 673723451 759792447 637994974 725874063 652643996 935232984 986719746 990043349 302265864 968698423 766700993 884387411 294983225 771138072 499156145 838855903 618667769 655026358 371975575 756828096 728805714 979860657 476822612 829200717 787422023 802686923 238378405 898029343 690263823 828453771 59309349 161127935 28927812 722347569 584505397 872841889 614897035 907241837 48402926 669191746 624892598 866810445 430140363 951028131 76903048 589831776 647782187 980176388 184387403 949304637 526126148 621481335 695567895 830362779 679614095 996512972 701149765 707326959 942973783 994768720 653081606 689628604 306696990 599103852 841034390 845776043 876354686 933106652 49660982 470384272 983104084 983790603 660245567 812072144 443595556 600545976 354433291 406754324 446527936 652142479 880048544 977540563 736186303 757482196 693730536 700844304 281035622 329973998 76736211 972726510 714493837 977603626 769807481 794432298 886539748 933229614 987279934 992176380 857649881 916115192 836554174 923567729 6402124 22667022 389012989 583291677 614199924 729057530 455818125 945408627 551735419 617922096 578200012 910437685 709016127 752421406 826868984 963543576 139929538 186967997 778772736 958477595 699227140 731560457 712830617 972204467 297474943 433506429 249043369 660400321 878499291 890971051 872377126 893150639 96908732 232791444 536764479 569982381 808217438 896111508 706815430 716602876 371873941 487428215 844669032 869699734 197464742 656756715 877166328 969160651 811001935 991869670 21015914 601656092 699004039 757532114 912072382 996901152 829900675 978767673 351542406 938512291 850522871 937845257 848141225 917761019 811008825 916625349 855298216 887004965 988672729 996201894 521468466 891608631 840331827 911077271 927483990 976373760 188415066 944171832 202344358 496106175 763276722 848828747 824455260 954068356 618011424 778358769 322649945 730841330 646247795 800068041 542302014 836508621 40548 870852142 353813165 870468071 120789542 815084083 827094656 830129987 659676085 902782217 392807488 593885426 124021076 483685876 689318337 767433483 350782524 622431507 3707908 107157975 594883374 744772223 813894177 894818536 398458699 891572843 12344785 129821386 575898056 695070300 449105915 891287946 736874341 978306745 401867569 851297115 725517353 755783606 861971348 958674177 745015445 868433550 632458166 946784281 86645053 762223851 233985926 430407032 67252902 469109455 763611073 999178182 446853807 509267586 608991497 777433267 388954135 765861804 123933542 231087520 305514631 808267548 627865264 975601449 977682083 997791032 39167254 384921064 129832551 303810332 453457713 898379710 850341162 947610179 212682219 663374689 379208185 486656797 431186599 821960039 275417295 715653040 695445292 855022173 437783256 612221113 698636315 942728424 76550694 391966085 682628277 796982696 693458425 964940428 427835975 829959505 46946092 294973991 497381986 767825383 409230816 427478394 899671932 958396956 632561891 735635749 63631409 452156559 253732904 534336208 117642864 397458987 930039293 976082820 21795834 238381000 483078491 988860581 150439015 871363007 383622953 915993961 146661675 187250166 243068377 714605589 912735658 992028997 126298369 307683184 17018247 286629841 78933427 141520208 655470271 767005169 361616812 796719719 92599807 277804046 489734573 998794153 865219559 882942536 79576578 831598861 365313039 896553757 820777172 931013869 983273164 987484463 456494411 557247326 290877204 414219695 250569215 367167656 798407301 892792620 615895651 985051215 467262482 563866772 802602364 967824091 50514253 290460084 314856595 869238773 793710375 954801344 706301327 959926784 459841560 463343567 952975032 953075822 565358031 619471841 483509180 854162022 884280828 932074626 195165676 667392273 463063878 696506176 568102932 799539747 459208436 791818211 324430349 956255962 404426570 914466958 356818146 626598105 202615140 483338521 93952517 849493368 918434229 938082084 307609896 896749451 405676474 692211576 42085644 432337307 140924010 271437792 604097007 755024660 456206924 986771416 502973720 899265670 998539138 998819550 601152878 631223571 975501436 982579793 854744367 854867507 260308412 535936074 843157214 851027860 571943410 608870159 632800507 811098048 652498256 668168769 4880945 608184529 422729580 608633836 887378180 921212837 813980605 965498716 194851553 265054406 200861777 760094747 180511962 557651286 611507364 808717259 378386278 432221234 148040540 469174800 749370550 786118913 780758648 942296486 832003844 881627477 805355245 956955481 372238339 506225876 859352442 920757662 455829598 538912118 844578103 893998648 60128737 922496496 365077309 902709444 358093362 740135598 346198080 367554225 404564489 906704449 864241389 893973976 606995601 972838799 198780671 711330679 519093020 850657628 209017175 576599201 501394431 725024597 616509508 696226713 674388830 720046891 556742575 681286783 285722406 963525356 117056236 333242166 388914836 877421265 307537438 934473518 539658181 627110466 485503901 510640815 857409900 963933706 515115121 546117527 712810806 740200010 317457683 536693434 140830282 882493914 367016650 579569709 596158231 980446620 689147319 931082297 632908444 820603899 306238262 628712461 536265038 883047820 37817248 717055239 857170942 921814099 724381792 757830024 121247237 882885776 786947561 804736868 114027436 352887361 848462046 931495870 694603194 786076728 918319805 957639151 100024564 771424359 906824024 997974153 646236923 994748552 149778549 909908607 551731565 745459018 356578837 362715140 64634674 210350012 581216153 995601712 732028807 876350152 620798614 751645980 859117109 865915568 376129403 537613138 768166983 945615363 32380281 640714326 593215107 626562157 721851162 919084104 996258334 996852510 820848309 899670975 9662918 542505941 894935773 976637464 957396255 962617179 312365494 404183859 729850060 792510938 302189806 459789831 424515039 580302046 910210053 979219750 141298307 761708206 153627163 708880975 635746590 988784350 40466309 701838781 166420595 561465956 610289817 948942095 126397437 170343694 885587726 958574074 767570232 842015732 466528714 948040344 389093639 575666340 229616719 727820150 968771500 987890901 351119287 602176995 216106 676301774 209394289 743480267 435175255 577733484 730257412 890729529 309593243 439270011 160438715 802715292 886106676 990271477 447956582 862602420 323694899 905868550 523231746 673005343 846628724 861471268 922600954 924789577 499739996 639664438 9899702 770343228 522007577 614441589 662715499 923571864 267264225 660790019 878791582 979756328 715509896 865029653 108592551 327501649 96287111 411769246 405551071 770982016 966189769 975240634 578207599 782002505 870343140 997665423 568719953 954085817 994949245 997080631 529518554 723884909 973543990 973874890 817257905 882580217 222548603 345552921 507568155 684337155 704498405 974852925 591760297 767407491 305148694 670243418 836404500 839473763 663462246 980579239 159287350 564289316 74068900 503729314 683159568 811810029 378938508 993214388 252068949 304845429 456799809 826400313 736265121 912396843 899384410 908822918 614273899 949941103 953359196 989098999 837288413 986147649 165683446 833247206 139644180 870762960 465420950 913736918 376803434 945447327 640233442 835753165 246739149 811908830 173630179 648742095 837129174 881086899 18267974 216996371 982801348 991930967 5897587 87189270 688780504 808093885 636321341 679937994 733687689 780996372 541392036 605599373 418539266 875157972 536612367 939993591 772891759 947342876 225756617 412738319 411485187 712412112 863184517 872106203 991317581 992097529 658346739 982128409 926372353 933666096 164535759 549781174 448815790 685573996 897968701 924929409 784664914 833318827 957587004 990392629 391658885 943547070 77370862 349821441 524430828 769389596 396018569 398688921 111049821 981831741 496550388 680672139 99881325 889092536 670686017 992065675 226413128 679039007 194626959 775398690 762797999 790388851 714138252 772050610 764965099 835219224 684973444 978725815 756043880 779800737 857783632 865721528 958402278 994219474 96460699 684993697 878435909 892560934 533889913 962528343 569267876 624651778 806795356 970778968 605820154 717285926 960619190 995274930 74345620 733961904 750456665 791780673 255614681 827242681 925228164 964322465 235832386 744606593 151094947 811690092 286646433 879562342 81852282 135490466 784144651 932659478 10702786 46590883 761156470 827375583 920996549 929189516 711722308 879125622 963059171 986919584 587891760 606479144 747713900 752892722 17564139 615067601 6104301 176260964 890075013 980688755 9423779 974625667 549218739 921566212 721832218 822935343 949760334 972143771 377807778 660050221 813635657 884705493 424899455 464201118 462963230 737253833 946410853 959408318 799962479 872122416 775402176 876194862 560969982 697768702 353025040 971102069 111554759 737492555 307578604 989455952 997927988 999351076 359624937 658605493 179522629 638220770 321543914 955949685 913243264 934602922 162244186 643389123 12335846 932329310 146215715 180817069 391770757 671610483 887652785 926670032 703868049 953340705 967999124 996860011 776797259 887696926 755189297 795822067 202065306 800235018 914008758 917618739 91899067 662761240 379896887 611704284 933429216 947448539 451378919 670453618 574886638 633895016 369710894 762573768 928084969 953376290 295340596 982206573 757004948 853245945 974027409 987815708 316793247 986308878 611813614 632563378 827524720 969838290 108423692 862761316 140990437 685315505 650098130 776159897 434330848 962941211 282304787 553359549 605024730 692747969 330955194 672522700 935816005 967197794 512199754 691846243 835375476 896358597 271575118 777878431 680970574 869843566 302736638 474279629 638342308 690638141 7189633 37565720 145829477 438093726 244608168 651419978 240645632 394933837 939830195 981772361 267086005 674781295 652584266 958649498 643059761 663598303 336647643 672463668 855651006 909551453 25166466 636049464 272352854 524580626 912982395 939089824 678720472 912297901 322328439 435698191 589982643 934219188 228183953 269251741 674454980 751398528 281782014 504930602 314609660 830997464 620619474 947129252 69628436 84701605 175267525 934156460 504196909 772838195 783722252 860468529 669815545 831752231 510284259 884606854 603051279 969871775 421896790 872168369 891954772 904678416 123026869 134246026 376329129 476378939 644887833 941612889 70208829 935328943 92209014 819988359 219804472 488342302 274816564 689819022 767893943 823100193 179502893 290510673 951702249 984913535 18347550 291412047 724629142 898956291 523818750 700389262 266108597 583035310 574955540 932854818 851307233 956548907 376739066 491669110 407121439 633496572 429680454 491003468 511807882 570131442 268248943 800493817 298295078 689494751 103896769 696246155 610492527 889017150 661990342 900910017 100294804 376463702 758576546 976628456 722342810 913271222 540287676 628738148 100944841 295534420 956153855 972170781 834947826 844350116 322327807 794537479 469829861 578433383 483470687 674876138 552673309 697146163 206642049 364163556 626999218 772563958 535305903 669762664 102113502 488439543 470538263 558905691 177254389 368044485 955596267 966229313 469295274 564143320 384050392 677850321 873890887 940258628 905837143 962210764 97136426 931004488 596772930 822761516 331187138 640664267 479212320 902910304 722587433 884258521 401944776 773346311 123977346 233891567 371527516 629815465 220953087 628970867 385165282 872467775 117797415 489752467 652018424 982293104 326939719 765785017 839473383 967562314 86229766 268579577 718810472 844009094 791746314 877664334 301962042 358711795 860295147 883966549 441614611 559836238 657100535 720608147 739122649 833414617 225460870 940856562 718581236 775504888 628170762 957029748 105820672 313822943 704444946 891732527 866179517 996708902 155739788 662609528 460660062 761667740 154914769 931710273 372441443 390001321 877682683 890481335 647755866 694903601 78131173 370107774 151452109 238003222 176788008 971714969 613783187 829626576 171701576 209153990 506023067 828711868 143282783 720800699 177109022 458530242 952011928 970511770 900855528 912663688 98119783 434400880 951561088 997276272 442909311 487266040 848304244 902837699 215588003 463511080 631490339 739805981 721626647 937063549 272180581 984724671 911774504 931521303 793004684 829936672 554082947 577571050 75095188 773590898 4940840 338256121 341861291 790364675 840039232 869905777 721726883 906393586 322596030 351348496 58573208 549454497 428072135 818521524 858229471 985634441 897159018 903616900 566311378 785544592 871705304 968287811 497586310 983695634 486006212 664970286 246915734 269817886 323044990 802398811 190091674 430706542 455130408 665655222 620029905 766808582 221711089 423160502 799619004 837788815 956974481 972046818 972618273 996218871 918341153 962495314 710519861 903830919 678903554 931798583 451199059 976835255 276810320 500381633 751037272 955662193 579921174 680817792 858079257 906750141 362312516 589224616 610569750 878304184 634082828 836222668 107930409 972837361 347763801 538314028 203692389 870127254 858853862 990625160 750782800 974589359 393842441 443358526 606610688 754447414 659800577 850941237 94228474 188006650 836931907 839346537 670209234 968892942 694701238 908105012 571271615 828266679 833971102 944200872 787799933 925467605 778814007 824233635 122339111 228325737 521120555 736542495 364709854 629307525 898511868 995404132 421755938 514033441 433466125 988682459 519575485 901382917 797803601 884941838 312399744 706590961 237511487 990218260 87700575 266740633 431507576 979295068 770442392 877722050 797050748 977452456 986095525 997020431 452899703 633637589 752988211 784102541 187652286 972641012 330943508 519786052 754670218 931846716 405470382 834039980 452215394 498005675 397756665 955267500 624285331 657139548 192105523 639978383 373950734 980723750 209891490 570117793 589074762 950345333 917161590 984977894 212331532 219076381 687527611 779026690 923006965 935190852 101503783 153472204 734413189 768254059 544214362 889519753 410544573 766261630 817588555 981478222 786902442 994809344 51835553 730496015 197153455 930393217 509503384 510355525 388332110 391218092 505532879 595458141 31392947 134259979 391911517 887474584 359556833 447431833 670188396 740431198 149667698 876389654 699687337 983186889 738835934 949230488 350138812 922518408 753432624 919794710 859821955 958469076 912744406 922970767 918214262 988765011 103517267 973256447 228763275 309874484 793439724 880883447 400733159 663400503 936211593 967517237 616606273 766464429 470721450 706145025 872028337 989867732 258751321 687846396 255782968 803299106 414989805 557496184 376060056 485351622 715536738 758163650 747212173 993617169 383430123 536919888 469466790 923675411 121175441 894199172 245837538 284772289 582604097 746009677 777778707 908375327 148425730 754731321 735848599 818906045 103204055 727988237 676602368 972346459 7375174 697520980 492061527 881389204 92126167 460980786 200577332 204783518 116132365 407199082 997106507 997153466 555226956 992965863 884563354 949260256 4500301 740183733 981988736 983556853 405308230 761080172 376524159 900669955 659117823 895814218 962444269 988814009 555052731 855293498 562768591 696102009 50441608 396423532 881340291 967439296 577054047 898601724 564729917 588356034 556976197 959793908 177093972 895737592 814715640 844426150 905468370 983724350 813640140 984941420 490882930 844740782 608723377 770338721 837677236 938277665 334413989 885455302 708345723 926011468 964617211 986512728 634789739 909792032 247587267 571591986 805804027 812649049 362561608 932743280 605494095 950428887 667575603 868902103 75113287 162908993 599888196 954722584 833018051 849315658 172554391 764431124 977309769 994872002 929688559 955726396 51020693 392114937 663244879 871405470 394234129 776701425 194014702 988800377 92762138 441437619 367658109 868234430 30874725 263080660 712230625 906859440 524678311 561344804 633496897 858713620 693831648 746855903 683361390 950898497 827339272 899930158 601359628 658852950 871671640 872225329 79061291 291082172 321216380 519129782 477461854 735193204 760670980 950360328 93594875 624382623 218567288 665547691 417063626 509292992 957003649 969452913 536134666 685413046 180654666 443093216 274941915 619761791 129471734 232718910 598800929 774497541 451183314 640948724 871535399 874870053 216644982 720375563 796137108 947223874 986011388 998923681 400328570 992143505 726353538 920509432 464151289 928407820 550843069 568533444 110076538 146614799 821464872 913925991 433900548 514926195 363682386 618678702 931790266 995370406 984256860 993745124 819423476 885509762 390508393 611792780 20013297 373836636 754340530 951379743 575848552 962024192 600154460 881538968 350923433 612712145 113977826 730571775 454050802 581853285 538239359 734636849 56433253 550183600 69635908 687284137 762035266 767232956 935794557 958958892 384409168 839424777 951309406 976444987 395601474 908467231 24433171 77386872 59283322 692683561 657387885 996045767 118574878 528517554 479098448 507696802 706349497 836929974 212164973 291109076 343101698 853312812 534548242 693600280 388456732 928049132 296171113 423352537 774250497 894431413 86739371 963244966 941116866 958058794 910593367 925903003 480468005 993664548 52067236 252287193 814559396 968283375 836603855 933831991 336267056 443588358 209513621 457849218 933193191 985045354 857766042 918186809 968283391 987084312 210871900 901317180 30954720 796115548 847779745 972071871 87671388 835399095 55767077 594315196 773460375 925551153 67511369 884593492 229712424 300222324 507991816 846787998 964723916 998390977 903657685 934425432 129631155 773184735 757790783 800266156 861799323 877925069 206166285 821391581 438319173 591634565 563689255 832056151 52289135 309584848 60048810 911181027 990084574 997462383 588027903 767105125 444739504 472886216 594461895 976862222 271230309 503018014 302427139 908915212 700888596 761654790 825488081 927115665 256663126 856026435 361290360 999202234 22124036 59750742 632606562 837655968 529807317 576779519 576937721 876722684 626190125 992758953 801017767 843267811 143095112 426523491 799423969 948204846 99181227 242695987 464459218 995634740 285063816 628314478 15565847 660979072 721120383 867769573 737237374 879145802 113259775 252611015 501816785 941287105 335474368 490423672 401509659 707063596 556308974 926620455 430275615 815093705 887255608 922609707 422184554 788342856 410056099 526120559 213483228 998636054 535747489 795641351 870692417 916365218 704378493 878059031 301273122 371097133 785481811 850259424 268150214 872944948 283013614 889024260 752940917 885756044 351780914 545163506 87083319 390760847 501361875 652712142 869946346 933893276 394342608 649419873 268401520 330628076 26340517 474704767 756097688 803408745 179815737 953170295 272706435 339897606 384615807 904182873 558165471 829208973 576458833 789351532 46770642 330419033 646578758 924761659 158171480 299781461 134216459 952995968 492586903 718795252 916496247 997334213 85548937 989758710 538131026 759475360 205944396 879641463 47420891 157222264 758926856 859979308 826447503 955142345 694828897 924392878 797260128 829014784 683127715 721603437 548480975 715487585 508816165 653899714 106456007 309775292 756661259 994540916 825033964 907886389 739738828 827475509 352909820 981558620 214040342 554327253 579218168 780484117 599249001 647188216 269790544 841782754 735416539 893809086 374192725 532538106 946544910 956342159 454638568 463923725 10339799 565597524 113640838 614052117 701552990 886716692 547415039 879559788 546564696 740593532 688223792 828700829 930366538 980991225 794848995 984503792 332024146 962563938 276395220 339330769 608018439 784634371 630973983 634664134 457256929 774524270 401531248 490694814 734666143 948208154 638404614 946617862 699007467 996692391 59861170 316318938 159225701 966881796 652985843 659177108 576753377 909108267 410210112 645051676 807612469 940382212 215802908 315418403 140830682 744108227 821299648 898628664 677233003 942889548 254476219 383251501 228009996 526514759 784076675 988004435 464550451 576588683 971000849 982836664 815184392 905653538 739658881 982376934 914608429 971203118 593475303 614841093 131756743 795150745 446810201 461909090 997319913 997981631 985338632 985890682 742317025 817262785 554248144 592636471 418361231 976870073 671503709 952633699 42122450 219228597 967675921 970396707 493152538 918258985 507579001 991764158 535465393 948897139 1401891 418447750 215625580 535627072 388471232 654961598 916956429 947984430 464784744 773909970 331975930 766276022 475266047 593061686 199425466 213699769 103897419 408450422 748996498 977669217 376760841 387179113 77193255 812169891 447182002 834598943 364480906 986370503 144393522 189348725 962037205 995654635 592719559 724284002 230237437 701064787 249222743 322881161 886247503 940211307 340328118 837090459 771895266 813038151 102948140 726521979 847339921 961653553 278484927 797394961 740207916 914350362 579036804 761900651 938855741 973365757 251187279 324434354 486563257 631325584 457822736 564166451 655485427 722347892 941098130 973792148 107736831 846933687 107822912 904099014 937598433 946510162 46451255 132904760 437739033 788848558 370338797 940092408 535747342 565217381 430845286 486396371 59680910 564230306 660645381 897731051 236864722 279112628 924114853 928156016 462016407 652645383 37293790 292082036 862142477 874690721 397591572 881885520 394445735 927698815 717131825 753991804 189594077 482770263 237323939 640675100 861529230 991412785 443901312 568579470 282920584 710356606 545955782 741505725 72636030 686394659 414611015 962257070 576939014 905407655 895624314 910208917 827221168 934436450 594890203 953064542 179196641 675242767 618567372 928501259 20674317 80272793 755623853 946916172 896569861 932208995 147590839 303637717 844861342 955881945 947145817 984492748 471243929 771175476 565660098 632697335 442867819 828712102 198330770 465194783 489151561 620558468 647406758 753006959 704436102 906677555 740511184 928208516 325903439 737948993 491720934 760498290 32282444 790956518 297340253 896360496 119024207 232203073 650228585 796988889 83525954 771855211 67016499 387230284 156151650 353793850 58127150 468755649 217918309 515519871 958094518 965579751 600462960 763030974 142458670 492535199 731862178 826971317 432968141 539100304 152625842 319229811 280499717 335890009 736974038 979954862 736915703 768592092 555988791 880901685 288557742 583728930 186533128 944546315 657337779 973020222 378327714 711278713 232464571 853501001 538739719 704421833 497193476 965464499 288451436 817512555 582482082 722423546 787432003 898587606 31581846 127864302 4960456 530647687 254230650 285058355 478542087 709059386 216881329 713406571 235588264 414714989 183893805 747771877 808503195 997543960 156432725 172474389 177482925 904591707 664576228 748653935 644201486 912068808 918159509 977929519 328386868 555922243 967567692 996998869 947561532 980148188 599121909 790491300 97439460 822522820 249887628 304755054 165953402 332487340 261571270 706830457 658197398 983174552 408531035 956907952 573558234 923848690 617403464 769353909 255767277 878789286 620324053 647557489 629109467 996758398 701435684 825153809 824959485 954755892 95948065 754726587 527356398 942242214 15127021 132755181 426609212 807685405 567452658 908795808 776804353 849896970 654814554 674841472 36030496 129369025 814904949 847973248 200595942 661533112 339419278 734021407 137730293 736387729 436036995 745060547 926946148 983407258 181152695 232482534 96671963 601136027 567417035 925109027 352892740 472267848 554538027 911996916 962658010 988718864 828492337 910562641 563207627 879942468 330327433 503691119 623242181 741923884 963524497 990172656 627329451 915827441 877216914 961404714 817504817 881364734 682401738 837443321 201785480 348253560 360619806 566475541 689512983 929700757 97773866 305746805 472446968 720032159 64593299 256697556 554621970 710932818 323455394 433294929 700082745 807321799 903518296 935713089 853204613 860347876 934945427 959062528 179695154 697736541 469429573 490745191 651920485 721010786 281542463 698659870 126650373 828223471 823336431 929921117 763182107 965473488 486261032 516527886 662261221 822387589 443213741 659642426 680685271 934950642 984002514 989432056 884439452 969699289 740998442 889025389 436885915 725740880 914698808 930343081 450375426 758171153 616952407 962154834 634648219 925842386 902174569 948235266 57660281 192624992 223345544 673966635 367277264 751997809 747285106 980406106 605703665 642012459 118136661 541624962 103652573 147996669 753195542 754540734 115699538 649750754 659994139 857650852 887463716 897673009 596832090 781854939 200966222 648013375 803131021 886607974 798544000 810132382 310285914 538449735 341953276 927936683 364438644 763456337 67942138 341764560 820274123 920523000 15752760 272117095 744749048 988267022 277531862 602383934 380326655 972185262 603089949 891222979 782993053 882418859 607793228 901399327 62991554 207909082 467613412 536260721 870948790 997541830 951424313 985595134 961475834 994348686 40152703 434629548 407590662 976064996 659833406 675104055 695328897 980348480 533011559 635378624 350917176 684436499 433393727 831854932 664816930 916983510 651937017 849660006 540599966 559611443 158107645 880641558 662107137 981997360 146010400 947636157 221997800 507231365 627995219 695336061 309879828 631908268 984653661 986388365 508035019 710111775 909818803 952592195 642240199 868472955 362074940 786215240 299377294 969858234 778492197 791589286 499224848 881372432 104899649 747084947 528968827 705562088 95954772 637002042 135251908 965144451 53015028 396556027 124936894 923473203 733123469 962186610 323678784 680821531 390456036 625143096 899498584 981520102 851176590 961946889 920133825 974811188 879754917 922228507 203897092 971419916 994001529 994712170 356856011 971903157 776413188 890726147 699456316 919748594 507715579 734135731 751671092 959072640 365510441 858785828 735278493 743818815 212973737 656869450 928296698 958291912 15671138 360112484 465293306 767324840 17761164 449331821 287386841 480827460 900122440 930600004 420329499 493737924 64440017 488008554 609613077 788239349 241557833 983648045 806401160 905017815 2565111 954287774 339912763 354764424 496451957 798310174 262451467 967770554 155428134 870279634 43091378 376938001 870430665 899833411 123367941 798990412 200056993 695432476 489077017 975318764 66115027 748012499 959774181 962847985 117926517 535277152 870175517 982821429 561140450 669402631 798005700 887282741 182303309 684014203 3996657 349474967 785712496 840195758 820145670 993998875 774789514 928423377 714856555 850240581 620799210 784562462 427153849 893521106 497757655 563028124 187864051 443487398 367602412 535326675 265155125 565111275 423598430 652635969 371003315 588965415 390782351 417277452 179418353 359035437 389124631 594467857 641947655 961365145 960535371 965912204 757189801 820046659 743382410 800645411 322001484 846491320 302365018 505750465 1447323 303204565 346955887 755767166 824267565 951198429 952486601 981721559 541048203 590611503 925840303 929227193 202876602 886072013 861081202 945786887 345298810 760141628 835926882 848439223 299202960 453361578 787060662 892977621 359671735 385207762 14725223 915767348 903230467 923591070 617282810 931359379 371509118 595028154 37033544 607229283 718470412 938567736 991086931 998515889 807114455 888775898 33209401 110878881 427436286 701221469 729680367 891067069 484170332 888723945 211571903 934666989 25117668 905548690 722582305 971790073 693542307 929480935 702653997 987427099 731038515 976023954 483671549 869043085 562268012 879671188 414980705 593177759 478430613 818439345 22007930 392936400 141698084 792098955 110609867 372216448 862227664 891401956 279921663 420326211 785852829 850167634 170517661 480306762 365804882 823208413 32002566 153022277 580034104 983793081 185405293 507876012 212302859 790397153 612028273 790377651 247349207 439577142 114865053 630068167 184307034 718506358 481250493 572667326 947941732 967436817 164751438 993234030 121365185 322506840 803177576 992899157 8658348 535620766 677139778 982169406 114755048 387256548 449630055 466371305 687412524 773559486 126563737 184110231 512350660 711963006 640402485 947556525 302938291 581349810 183842753 506820106 785543756 989605068 218028126 829581821 470087146 574691459 662921271 764258962 931773691 975056919 968933353 978600839 828175593 975530675 859615783 901123004 117627250 189713052 717262586 771886400 214305398 383299422 805355382 939421484 732816374 984591369 881457720 925299467 570118966 938549497 63983844 385524991 487919186 751589624 9282271 608845776 661657394 862495990 564844912 882605960 972328206 998268693 870399890 930618383 705881383 723556042 9345121 929022286 687853559 816726714 838464610 932795490 352836143 443072232 233445091 374888611 70104575 160100636 312902958 549420488 836172511 964383284 483464318 732550017 430834691 603216830 615680046 955230003 288943727 871376667 483691791 719383229 184992979 983672501 658035466 871597187 100658012 497573398 660121308 702253677 141913312 937464840 851980249 868716915 807793277 890208954 114425388 495888555 148149192 579977559 100018454 361422134 874692959 995434562 91567729 692246915 632631087 863319591 25698660 97196731 473792313 811963944 770001845 976242013 978935705 994789056 315502480 874546094 578438034 925149242 814352650 962682028 847761727 981517508 86991235 931450300 562381403 844303097 29628079 112049212 399179771 723135157 836530855 859239468 223075646 406913814 745240021 817961249 971951333 978235230 106358833 641885943 814791003 873129129 859978154 955189866 42602025 669277399 793983901 836777728 945855626 997110920 483440325 568145530 453152399 518833381 417388348 599602513 198644508 596007097 147923782 568120976 783124810 850202473 714022087 745798073 332654632 944204046 840071056 936095550 107677408 398190253 109478058 409653148 399530363 751488208 239355980 404871341 990214971 990790674 304918055 462228753 398382798 571188198 237820417 386480923 670070625 773993471 662635114 932711072 521825577 893879162 388096374 536251817 193942495 933264559 744250025 772948816 718148086 794216060 242738918 947599832 794375654 845541877 123227241 162361194 443392850 484723276 830391099 884874312 681388771 711422327 820656648 996715379 767341388 940780104 879240909 939301340 822728168 862334413 593828557 895079165 2148832 616800073 727787842 778550295 326819354 348006380 356242979 455663500 691984792 954758202 782265510 916020985 404381621 555885005 957667211 967924004 148504438 709166051 180114016 397385442 505249515 921996742 234959371 488420491 172562275 522058315 482644638 594191353 125493743 171323825 207910009 814522800 799851845 972322674 674677522 758132274 302843121 543625827 450437443 877593105 709242961 945367894 977657546 979923481 570468082 753059862 500092915 846074425 452200968 701747285 968369957 978568265 22661956 590996725 875414994 896558817 910022700 980188742 559893676 814112239 500303126 563451717 96796929 813411063 658749750 666023904 578744356 682912110 532598787 939665743 161706865 720367563 230407895 564660617 757973321 765592386 994616245 997167587 415125832 907841238 206211824 239808533 86223411 431112293 415965091 555049646 90665551 735006886 186361956 448913437 894162379 941136786 391971562 597615198 490069222 990774372 935465671 987384098 291442684 944194189 336678060 442788501 763507941 765668897 741911095 945960095 827452363 925428802 460577218 991184500 427136854 623424129 388379671 453009133 195794940 809328258 816253777 993211957 581892634 642532418 454609829 679272083 981061588 985892106 994199159 997686336 709091300 867241151 596323311 772630130 976551861 990846787 180048875 893314660 8057609 396922919 360204702 641339324 176654926 386627600 72590689 129670746 540678553 714630808 454064037 764312476 398522434 765819334 5311890 79493587 330118226 546021221 982802431 989913801 480818055 637216709 232626259 514829686 535968136 752153096 267232588 650016216 258729421 854910728 259661556 909872587 126350367 149671242 604594559 903998357 792285839 928216108 556170265 600328901 346021888 568661371 359433095 754894316 318611639 822632404 399457403 806082378 854484531 948257417 260131545 346956594 823648949 938766117 207709061 373203498 454334459 529529446 969614054 993296799 629639399 692553228 706109704 778794997 425035863 683433513 175284189 805004000 263185959 962871276 536609494 852736344 196938378 784340131 189167836 971797774 174427682 307031886 649124411 755814520 650410179 812402687 966142719 993538230 738055224 845377050 671067490 679323703 300080168 490199778 180791623 419838924 142304689 690740307 754369989 795095354 387537623 654100400 498127414 680970855 863151072 937330110 115406666 200191266 270028886 425032814 770557251 973306168 218319009 805990086 144167888 784524112 974981254 981167760 913767899 969530142 546873870 671902309 553224408 744068495 744225883 841748935 165554726 722185811 439508180 480852007 977236123 996383415 189300650 543433050 905780837 980780395 855086687 932336964 502803676 566120160 194684546 722434268 27134079 844338620 179395324 343478012 551484131 974450500 112285264 922259708 207085948 888377216 936776552 966203962 782541670 957368984 785791199 995513408 589068871 803579244 682228395 987825533 487058510 951636817 883633586 997744196 112561059 599738745 980478996 990309876 806330858 943219493 373674825 410175819 408495608 752896079 979559012 999088022 705710327 857439828 770423551 895821855 697553711 737307131 721800557 905515520 606873134 705116782 39769242 249043231 369732336 647830741 3977843 167365002 20603975 699016405 992993913 994112609 281517097 980045380 318866872 962729788 859901002 944235777 28393273 909946740 355790956 825980703 243031257 530860587 846925403 910581188 136005683 707187398 163334266 711359112 771648490 958255593 799863171 879226110 389884092 405088313 136603163 530090164 887119978 989414362 231221581 530613484 155091430 850950601 53852510 424219359 515740800 583392026 121450743 926183142 536496650 595646814 539562769 728762495 256797776 611985967 72254416 722307711 141909046 873781496 298149416 518715065 69962926 474845101 738498661 913907496 880250428 910794451 804200421 900318368 318558523 765162414 276756870 437660649 3319216 435229245 966642975 970758828 483793377 930677712 307644942 778087747 786395523 787379039 831434762 947715837 16909684 237849035 566349389 801560839 681237887 847442081 213034347 401461302 703402893 900266087 243398429 468063107 957601850 966426869 109197951 586010441 759774076 788557907 225988578 407486566 861301122 950600299 853273827 905261344 672502972 818982358 25930839 424844231 801597525 845919471 541549302 925979397 654098145 823546855 409009233 991513919 190553903 801966616 273678915 596486052 932134429 962622667 741620584 968812807 2237475 792057555 201145312 983659746 19715958 793721840 97499948 495839398 827518714 925632386 403554411 856738899 46111961 751229629 275693992 716159231 980794407 988069788 167573869 443018219 804805518 981240843 338089732 403156719 887433862 892493438 978827558 989236868 449916694 480067148 826490996 885397683 506372657 911085722 827283213 902812029 247043242 968382530 264969779 715756871 712616437 730107621 879948730 942184099 17935506 672234874 246029100 369923095 958101973 978876981 303124468 640569827 342320905 351362845 505669644 942977547 632401477 795806506 541560543 738087636 2263764 907682095 972097979 988143246 103901154 807992766 583545595 688027502 453573776 938193884 602960509 812497976 425609928 725165540 734644858 878486900 834410076 848341043 913999367 925507301 268217175 420517641 122123287 222543368 123482191 647691776 211347995 688331335 988572122 995564097 293489055 420576074 571330658 996591118 802689129 847403271 22015513 454955653 714655375 905427550 444029793 792582084 404595011 946587495 383526304 817931034 918935295 931068326 403823442 737320294 717222410 889664419 385768434 962874803 473663791 754360966 311862701 967137036 917591360 938673137 45430200 619250461 608877422 671664607 603959805 661199022 70090728 582837357 434767176 486194482 725843419 808159456 738662927 918953187 6283904 723603119 839112670 864597565 237916113 248586999 220075453 459473420 605909890 805282669 344590172 591200175 667315602 892109440 657436242 723245014 154148256 501787694 997479728 999382313 817754874 838570452 946703631 994506579 961669426 993932491 32000131 852345732 234218483 976621363 873844608 935800067 782106397 998852967 881738641 984888877 787862922 834186636 812812448 910760035 192812230 461600813 654766601 994929294 956779536 977591616 902240042 940554363 858622693 904778386 551148738 933224998 992810401 999370561 934934267 974148429 497081629 896286056 124802998 937579455 761897144 796366547 925023211 949009490 397460459 698076562 395101747 592512528 137261781 642812597 19648984 20053365 841656791 960525503 359843912 989566135 225702624 616841028 692673161 859176053 839170723 852387158 508019003 637658085 36071237 107410290 315291669 684876543 59296362 816830569 18966644 112906011 166943117 856705579 392774308 683276580 636050624 965442639 550172023 921534685 993693819 997867229 282762280 854269443 553659982 628803007 892906441 894729212 235627947 429557064 670918687 727174810 423921603 447274179 354117489 772241567 53630413 457186096 382256457 384998791 201308999 639826824 466078125 831322300 627799907 796076655 54801255 505936211 132209940 637923190 470717464 937718481 161367190 622934130 838165927 990810482 798043417 966188473 391242924 992842188 835171363 920423485 941139417 989931964 717839031 887870413 981972997 997971782 464868858 740204734 263629777 710445144 542600131 593720839 203971944 446333010 266394642 290014981 610020 722380799 154932917 158247122 491785467 721839168 294252382 639597642 65562604 187794595 627835016 993809714 366959479 488951951 38723676 420406327 901895496 986581666 762255946 963097825 976009761 983741049 189330937 695597625 689828998 744724199 518723986 944022493 605750082 878589479 53575956 193003698 151460475 478882437 137710109 253141059 982480113 993888531 743174497 797771527 898789474 928972945 18923028 898643324 778219339 907366308 979072866 983624279 150196688 442400131 34045539 507515492 928446247 958983268 405462617 583629881 6361531 996612125 356313196 543333286 844422734 884755572 35687060 585045046 957514554 985973030 130765992 758853241 54497690 977127759 831833354 973887308 626703345 688308174 994434355 995947986 317806545 860029424 61085369 954265105 535093602 647747355 719615509 839790382 210400654 895357470 946836049 972302943 803048255 946014418 406252516 415941864 500811030 533082555 622242851 880650997 693328067 878753860 897224675 912278489 161119932 342837111 798631768 991006346 95868799 950068900 424105048 650089476 284863859 947975894 310567500 387830402 137491096 208391262 458265528 610499395 532024491 605395254 473230123 955612010 287429097 367825390 825030510 922615783 455176128 661628987 945447207 954788631 380933228 824462095 577485076 578212967 384796330 596625048 231733032 743584125 760966948 876796469 954477410 973265700 562026395 655311471 463210981 578534039 412112567 795202269 718242085 935733964 137944967 508917600 838774014 876504220 564677066 678003655 17060607 408349513 522628861 934264343 122971873 715319082 692615383 916555875 381059426 868969910 766739798 860462698 699994814 964312059 841397303 965753372 25917161 163015641 400026449 722865432 570669469 993455323 628601965 733842235 293204223 722455313 599290842 748614473 548124795 548357067 305989766 791710017 565974326 639494012 153386965 424296673 427654098 500810472 91937504 836354294 33755313 237526963 509979971 897832757 176309276 902057429 174970899 751318625 502112017 854824086 404179686 865364788 103591108 721037063 465636910 728453300 79312264 656274631 950665166 985033684 322518739 942370783 94635489 220605809 474675306 594715102 868329226 874221907 360523754 613707236 587624080 902495507 998958350 999081123 291327334 944607002 780560378 852912362 912081528 987935052 74538027 641843882 885811260 966634485 221770879 399609842 803792374 960689788 132691715 386096524 134187985 483132729 239590253 821696497 856768430 962584291 89459757 151590622 131535946 967969809 486868829 836827461 684813526 830672873 289279456 906231079 511556757 532572461 101090836 985180662 207692987 326806269 481515227 585540741 720592543 863429999 338275785 374443978 936036257 988681012 466898864 946839594 787903584 838525576 323050945 411659317 935535975 958423176 721135903 978037172 425587313 517220326 603820727 898870869 126863133 843747276 480279941 595119414 439932160 467746740 895864205 997575206 629806966 683101110 617656266 648454689 185484089 872014417 487581142 993423873 9673633 939640423 235954020 466970788 430538400 468003903 440136756 443465568 776180402 852113560 141259140 451378090 937104665 958259372 384056616 650194161 607347336 808905054 512155295 948349204 558585503 907768001 784480056 962779965 441124499 884034031 619004806 626402016 556965488 608476922 994247026 995491415 523568618 727327368 265725873 541706693 288697762 319372535 201910964 322415383 551950719 861241932 527276080 696421367 297454129 655706705 972203053 981792330 854886654 963650132 158014078 165623719 896464295 973921739 558830495 951423254 236307100 752267124 79804418 845334150 489931977 675078711 149600979 603437646 987438724 988182880 369343989 553719499 987961835 991948980 563067773 938864671 295569810 982879843 700953085 835514713 656227196 957383234 21150630 214633661 265413054 515839453 463516566 887253679 280336984 891534451 841089533 874864280 775366412 987659071 496811553 992956475 191311265 281823867 651712390 760000171 156668139 680494733 551161048 808636251 802520505 989712566 942994622 983824532 28900034 433989873 633153963 800343592 729488457 902996283 451971940 460379382 404267443 776479105 616688315 804200944 347849347 476962473 885858755 964408803 527138612 575833444 179865404 676788456 615798588 655285681 617945715 894470856 672515217 745782147 408477605 593410222 847241068 896343733 181307688 329223570 560752677 651360948 512606603 620412702 604517933 662611895 781408811 902986878 415046572 992070460 575344616 941662503 218815800 830704957 65626863 659914350 927129005 928162641 852498962 938368825 416802797 543669763 365225267 704349568 152414221 569452140 150801864 247118556 690230994 693977990 57314309 77940719 881221275 990959091 840977849 973878482 887608543 993286312 88932799 213608784 949163415 969557019 764853969 958984008 928162029 997183454 980078590 997700489 69908925 904874097 398491006 981010185 857895734 905522773 160204326 885998022 764224987 951740071 58139161 152208036 144762690 968340057 752183616 839145798 385999953 401609172 595289755 944740357 156242161 741160306 413372557 581331453 508784144 722110955 930632947 962513378 94104782 943733360 412263481 496571747 420462885 711459556 922359332 973155897 943956073 970041174 172402579 556870095 974777448 983539760 773867212 840280499 492689488 722589255 470080625 692704789 478789822 915767779 221103179 409443203 103370064 973324829 707027011 808992771 514854335 614278747 119767837 845576659 346822550 851173835 704838865 729215411 93840875 434315486 122573239 612609826 123023257 162102822 853300372 888016683 865686857 926939316 903508594 964921821 97004716 780080463 271228197 440321583 765677499 812940896 500497208 816723398 450183731 957515968 103960455 669064908 231923206 734379403 807461899 874077948 931780115 943580161 707380892 873857517 501121554 543898033 107772413 854887964 396714580 923650574 503745779 814488279 13295041 440557395 92304180 316276935 558951713 860166982 861417381 889394402 518859324 867946909 543067223 603422733 518811306 622961540 290743460 664924190 931122188 948237971 760156590 860289539 123673468 626407031 52028177 380863202 337852507 889991218 931699637 976413451 275560541 417808940 428083647 918377957 14226435 966047354 131219756 569260657 455276485 724540940 68596321 729404317 773928121 936314200 753036111 831797070 977924244 986257657 17090999 673114351 333372145 609847471 928452877 957849182 678326473 962996301 591300682 730829811 332641894 877026485 825362873 884429863 771137472 854415797 72020416 949517502 98581307 903787391 968999254 986655962 936349966 954774879 117807777 812769351 12696493 192380120 987007508 988975446 530838977 735469288 653966713 756126675 183810412 806172864 812548392 864874396 910398872 932718019 861251946 971701452 490663813 592845256 982428718 993432807 678332296 908781368 735453400 839725170 314956246 741990303 505711949 977873287 619339941 978705673 158113209 802473149 355034584 789669186 162811219 297121894 430537285 718629499 670130440 873481544 719905651 751791712 915447654 970896657 113930894 430008011 365129535 647364554 53625767 642266783 164594220 292334046 164252477 912125294 63013579 696282815 326831088 432742953 585375136 738049907 109462005 196113279 841437599 961762812 253316488 869970298 873286415 897642799 342388003 521196370 740526920 954706370 497624801 816064011 606821158 701491479 175490580 524216598 964650351 986618210 265409921 587528679 962760412 993163578 282707866 597062168 501774794 681529765 678533741 982430223 961362909 982141464 848375735 902243019 953976547 985763135 625672989 679082666 81690371 494472825 956598347 965725435 118367322 585963931 669256355 675475586 852151058 864479137 945026695 960624245 25960997 107990102 563884098 991326315 415945958 688596398 486976058 718193716 564312664 617068092 533986267 714950206 907764885 929183441 896121777 984431911 618036639 771666150 480749785 892954966 893527270 985524198 922420485 984470775 396972517 443750116 377738275 459052618 463956017 950545969 975494111 988822747 12538780 435863611 998358440 999029634 204512363 685336272 741527825 757087334 935865619 958490928 66500082 344879651 226741325 718251488 702854064 904423332 448413717 690283312 48090154 213627203 181854345 379728712 205238366 404863244 725030709 759063600 729438959 769374422 64280644 844446766 206983498 364692312 472583509 661304594 818291929 868121378 129856832 566252876 11472827 294081633 665992096 851733556 414367040 646824481 789271975 835410191 216766181 991385287 153116244 213403828 478355898 497958719 522495754 924269883 681403816 838581003 636631847 761583787 45615553 926108644 272652177 815583280 984510581 986133273 513996874 918185638 280758400 513085887 319268798 355369743 936212710 983310891 899049241 923277783 102858959 156873915 845821302 909243573 976603465 982349121 873607958 982228072 430791089 698066584 178974534 462691124 959500162 970663388 562633434 762382838 700318184 828681725 767297286 926081298 194408167 970014185 256574776 467422231 749643571 983040661 634675330 655159181 897421757 977244115 747966588 895378328 659220832 765890615 929918046 950011178 856755473 904428215 861358263 989047651 904717744 925900041 114751917 942332699 595831830 902779967 237245035 683101448 431549241 568848723 881601917 931997637 822351599 927337741 571830897 716135159 910395560 929720786 184608195 563052492 643591105 831232950 194486034 622829855 751230611 889315542 427816535 845575693 32445817 427961638 381860703 860410923 323183161 632504561 570789063 871297539 123498101 706244316 991924630 993876856 821979002 929365432 527000858 993230808 118442971 609043794 358836322 632947789 22287916 233456199 867325425 941433572 534537821 541902533 477712122 710513620 446772417 756045502 252049062 840288709 358569049 534566755 697748613 798927696 598403530 721366436 986512509 991065456 843735131 913441133 995487013 997577193 866184835 911407570 680978199 802336600 312116405 357005944 576365579 691393460 875080227 997123993 978005807 983304949 845631908 918934802 52844305 174044236 1752013 873455628 667980993 860257353 480029250 831870307 363061640 387936761 491292637 549858413 55514199 141438248 594993933 740653868 844308086 997063161 216943988 768793739 266017891 310002764 478681243 850712930 634166223 905281636 413072837 973874079 835805290 947451449 753846002 935652404 455621633 737508091 202965297 849279664 358611012 868943838 857681860 896507353 325536931 606379035 633901034 984880684 807273200 971923745 73702565 767653221 47836738 270071675 735072391 887643705 185103392 447941126 801994748 968412165 15766479 822334058 435100583 996678437 742500783 902299104 752455111 983587845 254800805 732502147 222954419 987599698 463869255 552487142 315632532 690005275 95080436 109282146 473929646 734807275 178914892 195641756 954160156 978772947 645137071 834117637 589708836 599514328 343437989 492965734 320407390 790630019 709388100 895425473 144102881 345377195 582453851 704993893 47130176 979461910 417043540 775341959 422212875 770347657 153062725 197675880 174361774 941394955 27902763 510772606 550982598 901578446 481485396 998066341 391468314 824852902 645126913 730423732 264646924 487783715 142695873 402805531 410321461 918692262 875015192 988662654 976105640 997618941 269168027 861686540 589911398 940536990 448964144 923954605 164996978 691803044 367015848 401790086 415035562 695627162 729601692 908092419 746674164 897993323 312563610 430246081 473394684 831672426 155483425 530430244 906262381 919927577 319298355 495987718 574911608 587594833 189152667 622568531 115515177 817621002 30661029 378605092 958030955 982368472 33322283 195554721 243110973 546338745 458303204 963214122 365479800 690413549 12064190 395543429 921394333 959597419 567953728 592266976 1419644 22476467 637720754 969826291 383451515 569607317 933113895 967202401 866325120 928488532 213394075 930486389 522234722 593698928 458602279 497431115 698823231 831161036 139142837 484608713 67069558 117330727 671487119 691538179 700405096 783267690 523802115 910868334 200474940 372559887 18388846 997509847 800052590 911542334 876003741 927732780 233745841 302953334 81957541 218591196 496827663 696733946 440622145 504104421 859932127 982852471 851311806 990096981 308801710 372768861 123253923 744375929 3524070 967423388 210797835 978274430 874714162 972739148 623239333 771686348 537907403 915371149 259092195 950747754 136822483 520225488 963558814 972582883 473924880 821831334 557722993 855549034 150415800 579313016 734775709 857661594 98480326 456686850 32410893 806523328 634209915 725389215 273575425 855353867 197769807 425910984 706929543 953323408 640164893 827818219 852557479 968683480 951118453 979245636 947896849 962255415 818818248 885397881 957866375 995421419 101148406 313573697 729947241 921809543 473475593 841533869 446827354 624061599 97706974 354654257 784065361 947628360 542087889 652860198 923105242 927209334 503237567 684664432 808992540 851422760 14978443 784796875 343711324 726387042 163035758 725769313 226884968 267795247 312633037 656599475 469784298 921547596 654529993 847892179 882613768 949451210 282689283 789412790 567728430 882272692 254354858 876641312 58850004 378795700 662624381 797888241 111102977 266128363 22429165 887148360 55771598 597661921 661407316 697285462 185772875 820411625 242937374 792375196 492599907 575421942 997517302 997789755 545212229 597226683 596519757 937957584 940810857 979251225 717719988 784256025 527627477 884551210 988350219 997876822 952650842 954138128 959634028 961985312 771979307 897996186 368236990 918433642 25903348 781396710 666270843 713116894 684000930 934534168 843630218 990008122 263835710 808375055 627743788 796503615 853390158 981441255 652761236 900626073 396744096 531354029 199269517 731859971 646893863 679264395 230108938 933558915 285872776 790570420 301847615 433965451 644120861 936987361 310260837 948166505 90507712 368984816 734458719 835557766 209397682 628071197 72454496 515575493 937786820 965379654 703041522 900742860 701975347 932607752 412183556 884172429 615962051 901110994 332565804 824889248 319249161 628437766 642086961 771658929 308970426 538361033 773887443 855796817 293744249 632199803 640537412 771143025 662831147 833759608 808870568 866199454 479727747 868368557 351060989 483669467 346684943 686217263 710677821 809784794 964718825 978376322 357000330 901642545 832452253 959240549 44587876 532854788 701755419 750878207 933541019 978200623 946940122 988792884 999315408 999377805 221545621 358327204 674116297 717325597 615515511 739047655 294746650 448473254 348524331 602176894 746203637 819888864 3450206 762429569 21298827 721471541 789866191 869322235 70576526 880473192 190765160 391012819 868208976 930493394 732868698 846189321 821972720 835010622 625447078 702485831 922138805 947299855 348430048 634794850 266957656 443615710 850485173 946054214 131286963 633948647 6252467 104823283 259217622 571288322 67336565 348336884 685326236 960992596 616437034 687658919 214005111 845718231 343124813 492538462 29098528 813482046 309736188 953076946 901876450 985033513 728903549 822969125 746607844 903060289 678012727 882629073 280434703 425745046 848339497 865839856 59435645 220844592 919095378 933047344 512886407 736354574 916686431 949042548 694071793 766115809 529675395 599493094 110319829 256427639 582562043 954168841 206300783 307273746 78825887 148372635 161045369 621436086 70925031 710348725 635044782 866937745 826882607 876022478 381156204 574412253 777749404 977848619 661258878 718083534 718183673 743670247 85568718 956640065 256916266 552219409 669048375 948911112 243191881 714453870 835919766 869424537 756575931 774368022 550337974 934935952 103066391 955234589 393850891 626913703 55621037 69895309 853209864 882195511 140380939 521380809 587039290 826437554 67141961 731896955 477778562 559040857 401485337 430203833 210278671 460052212 286228281 764047276 748829828 913971473 675538277 822757183 556083156 762169524 947293157 952582902 28707828 877073635 279185739 622027018 535204291 763218040 230939600 436944866 247221656 607728711 665278593 704365081 44109243 954703005 745718975 774696891 248495531 979818514 308913332 959809154 450206366 533452465 29134341 657841895 85213137 169082448 748645819 934182501 803509355 926787530 693824978 783428306 650420309 729867818 453709980 728872371 424493129 599221314 990562267 995199746 65256745 851496575 851731940 993042746 615435062 963493393 666905391 988595380 370895621 648816444 945784487 994907814 643224823 926637546 211137150 727662494 27291172 896373532 628210945 764152356 773280700 818695012 950731377 967420823 336160412 882089644 102669870 534693338 708300825 971423254 62833617 951741509 819182832 906770599 443099274 968368094 451718206 691782550 77315108 612897781 944499419 981933045 882353080 929719975 361597818 671310482 417864514 800822450 691936621 868541766 976776463 987956133 605245903 678772116 744291854 844455779 39064348 784707978 504816312 542291547 676632471 824697278 666266940 714601604 422059055 831463930 902156674 921377856 691223622 844333245 111172562 600501191 873668386 981143405 309136347 988967315 73184478 981120527 687038960 744970863 625867816 939359900 560846607 791184368 261594582 372355740 545480319 648512481 487870740 989179836 778328745 836551957 773729514 892461438 521030274 528345650 708784144 926211606 349500036 900647997 896669833 979694698 51475088 685966992 691134651 910681512 68093362 206459545 937970305 993848341 533804740 640944533 84062263 950321357 50830760 237726456 591830277 880253639 97223686 173441008 675602861 846141092 52766471 865100391 205565462 979732605 834096156 935952738 225012483 650386797 601696839 958361679 393934394 648841707 72046365 808746155 33374026 684587943 867057260 990894988 659045712 988513616 868738256 888540584 670668748 783527043 830299403 889288611 491615285 850195932 228612783 928348136 352104009 378856439 480399045 963917595 740913321 968315075 724403454 845565620 22500898 103366486 49992579 509546254 645544651 648005861 90195923 605927138 855573376 911232792 724122758 870567832 582687405 771411145 770609263 994187384 885278794 987004318 905574491 993819998 807324439 914648404 68217317 146528003 31020286 237855235 288898081 938626810 371699487 575076494 684731497 973649777 841109934 994943226 251383300 887408856 210511111 863590523 779036040 952464145 313190286 493427384 229794688 410690256 71444500 944173969 109962010 435958809 440342681 778446359 458119630 849081581 103005994 476991888 747255402 817296155 771372620 935154425 426955987 902646571 448144510 721516037 710416861 922447866 500074062 819478900 137107799 392863186 368844146 591700144 868975514 926469854 309630216 567870114 405959438 438681109 489138871 964975353 198566903 814991402 566364200 739436077 877189101 945067696 72937598 426102468 420262397 759177612 101185021 569455307 98417652 596612309 320860669 604041382 782299875 946308763 520425178 557211835 133138254 670759059 33667102 790619018 444462072 452447076 477787533 753786564 533459731 838292995 791013012 919963774 534998445 898457186 884952060 988619774 835540990 860335202 362850697 868980876 29377759 943565477 31688624 798599735 674250259 835118980 686477900 712328984 467205683 677221920 306186003 387465471 273329230 897158094 311922699 668104838 53660316 643081394 534166826 876118005 657589570 837649867 70603633 857946546 867272096 925259049 612419797 925949895 751854886 980085967 827326257 938063444 437560575 848069843 985462247 986925383 482215088 899431685 490523292 800833833 814114247 987666765 111542440 205440946 920328484 981831334 852992576 896314543 82966911 256640624 408183895 652192960 187731997 710829870 125850140 352097439 669803897 733714158 204102584 993952413 168073926 606200130 875010778 930802510 660379577 875597446 706926935 990539176 543358886 691173954 266559820 328312218 305092450 507697737 986361218 991477086 735234211 964853636 227419658 308413565 313413203 415957446 963231962 979904632 718550223 791477554 898223329 984944381 906079551 935877910 170845837 316128861 388262849 616718475 984225794 993648753 191929448 972851150 315235613 354440843 148496691 372146538 45874621 150642040 834848634 945719170 485108622 610376365 877634381 882228868 132575107 801930708 875995250 991191592 489559242 734550243 81666367 704995165 410738469 822392922 867008700 874820633 387476511 438852921 801516097 886181086 406536507 884661744 604248882 669562145 644957751 925293356 475856122 569449845 76901507 925854438 898904697 969418255 377163426 629032772 988622748 997851438 175113236 787730242 234836166 812975862 429767062 451834442 783284456 833324169 883370058 927655085 213000277 399169938 977391733 988526659 600143158 628994548 186052522 800873532 779377184 924890659 514043205 990178974 246397234 354709169 166342360 450860809 357787928 502012814 268092295 448806301 650469608 915778460 782036727 789115864 331870958 478753592 342740917 644095500 481918394 753884897 709130225 954594196 586069819 873888940 803870282 944051608 545833762 819874667 945197666 946226219 531289731 838023208 376882575 396354638 666285705 758348116 538706852 776572772 222414686 837748661 803697844 874916809 534711513 987795121 814308739 997401999 440747097 612869125 952553938 972667832 166781994 418820361 529423697 944736540 101313671 867211292 34151114 271161821 942436501 959550616 419816490 668008584 508568630 850508966 361902026 470296259 651316630 982102244 83128563 132266917 119894490 915361717 764989167 809444857 344710833 954699769 94146503 204038344 238071861 593498847 354487825 492441993 477974692 964034823 669483302 952781914 819185638 926339116 646116489 648688503 781511738 964995577 255122637 973515282 336556069 986588290 92214518 761544285 359814680 881599976 240188283 641146945 302864 811805796 456342256 778002285 877261067 952406283 632632446 714302900 122739739 376494306 400776391 498590476 712579811 981778160 129761430 790422278 959472871 962169056 639502284 683889252 740544292 956278042 376792001 547116423 648546289 985043787 533524162 935408926 753352403 923565305 430519310 568443831 987781530 994144660 425940446 563095425 831513693 919193037 764249318 805328506 721730967 811949859 495146727 566492066 892605821 956693986 982309727 995053808 635814092 748769881 290864503 758747912 59837246 894694959 392941127 467072268 382543530 602112493 256688977 982127548 235685672 828158498 334350410 964740333 908585011 945194849 712419416 729358504 5270366 531397581 497728555 535947502 300118284 651629317 495900263 569852642 882470677 900418834 553474083 926829355 796980881 936221569 440315637 636649255 680413768 948535777 515003168 581695560 144201569 590601119 467490768 981088910 977427048 979943406 269318219 966156978 616519140 811131282 279208948 378103847 823094004 982243983 240796877 882444347 478408721 974678625 933764229 971524172 594387698 896837470 930964494 937126012 804917129 849810788 471721689 835039872 164195230 676725306 708297345 914422360 403761629 602136374 42998090 598492765 301565582 769585096 288175707 767502772 774200962 950265290 984736859 994061442 136586127 777459398 386621016 491959660 84179106 111995147 492403702 708034516 679365814 940455954 741254020 826781960 951399499 960207683 530114791 648666634 259917473 412445089 460941899 493044472 827477107 990283885 221924420 696255332 95272682 823103965 47008857 307418465 873718651 887937442 439669521 854109129 241969091 339704058 177456203 364012057 577109132 805783296 2238714 656254759 957949568 994053862 335826696 396732387 297463181 731887590 393987370 523286690 884789170 952428083 868382886 873798388 939327875 980801647 280858994 757231880 965217031 976803452 195203323 541885460 713636166 804845338 380566980 676097587 60049767 223066491 998889578 999275783 992976883 997845246 246666712 880282163 231143187 701370000 590984620 727417600 794041459 950769127 800029224 885974233 950136570 988850487 246927543 530112803 521792068 857778752 166171026 965441922 124885188 412394703 93607002 736051777 666954578 878615613 630900875 659953126 621975851 693449197 856981244 973749388 504255457 625579988 925490333 947405591 452183395 530041205 449538102 955829104 155036718 681960634 492688399 707151372 961394762 977903989 954419713 977723439 526733237 888743148 444791044 992737030 427935907 775316694 143067779 200446351 412649644 812022211 376321592 953032354 498040874 780418646 580440403 623589057 118412405 845674542 493250155 810249722 756026954 795744809 201110379 898136809 907886093 963856381 819347422 955541730 896038691 937642648 206967478 358952281 317231562 984242113 204186067 300475081 351275264 802590065 508687798 795040395 15023394 394992770 932023966 983500728 176391647 214925093 83106563 619353632 904427321 924052921 475611727 904769077 135031026 241780156 399281290 537594317 534597448 908357044 659277971 912371602 238239806 910566083 941853427 944669334 809658908 840057478 343644315 985557107 352405772 879640246 641057410 861965840 798820048 942583044 77995084 785986709 262689524 684377258 540434160 974764125 455962373 776817135 468853297 936219519 982970717 993010616 460200772 838217863 83543435 193590531 49264899 198978722 189050976 714258178 271640448 546563342 927361526 952989694 960258003 976198638 737039877 944128037 8494271 712564263 862554060 931988284 811126099 812393635 956967866 991545443 412501805 511538338 404659063 768632337 375602522 592351139 144390830 982788352 245115702 659365213 930410668 934976562 63398372 352134235 957754035 994400306 132711521 976831198 907683243 958788846 665980348 730293020 933266787 965699163 620611282 863798314 18916662 481238443 784313434 820989938 530147220 697750827 274812272 298841893 762020698 948336670 192613371 300954640 91340604 723086920 462913503 699829705 47054630 55929372 757501769 978095473 28144056 936015254 965112401 968395937 169519624 720399249 325486141 757819140 515418871 808087118 807828148 859077212 429070320 531386663 688355366 917180365 156444329 855047147 528592324 681278524 613356753 686231712 805429338 993814968 961827902 974984717 105886707 925870401 563257143 972545455 836258735 991779154 178183847 552641398 635413071 972062588 835422684 987371519 634184488 757034298 259616042 884000940 123100887 354760331 315030921 527405803 198714591 910909429 303224263 613318697 94272926 570179900 631259280 849883028 977232725 989740674 82097135 125348187 661400955 713982244 984420581 993790876 296355789 359249763 21546664 154618612 980668614 984027576 88528129 148361748 901342654 955614379 56627200 772511183 506724394 676553229 807184141 918717545 140047726 949244042 784555559 860990364 565638899 756415370 177099720 341359488 900526412 998841651 222873860 469581123 515651882 914834915 472394659 539981148 997681138 999024036 816485855 816605509 670554234 931199816 38131767 190738507 751428071 933757388 853102460 931800114 926995319 953713489 751257868 757058085 368478553 957045635 228444266 598507713 654430270 977942084 447384156 740543216 482642648 868378854 428654275 595583068 454794590 994528242 180747121 580286459 352241831 992167532 86316087 680940902 144537353 753589377 424305764 920360294 881467677 965053282 244272320 315093942 852316461 920674115 545277008 686573701 686913685 818018460 268336417 301108032 665298907 740954795 256592593 954479941 820220178 947598383 522534225 897839304 272199128 881058155 655911702 767730825 686211630 928506684 464950893 740600716 353949812 604665709 649220761 829452253 844390763 996021674 762558139 872006825 815813981 846529119 799113937 852754795 986855027 997340775 846506673 876387356 813442865 906939537 134263237 259254587 616770810 835077773 977798759 989426773 26101369 601510701 864135619 865081849 245162244 864638980 360157547 884575782 405287653 681725125 876854814 971623236 151615032 452459655 928043043 967950450 661818392 912089409 392618062 418930793 284014128 729625194 463616011 850903267 289573937 370740709 665534172 971794014 4800167 653799180 915892336 922078786 318510012 617191459 578017266 747796844 748801070 928528034 468050845 980256092 180853710 193686306 483557102 876054946 177898813 587403875 474531789 900729554 762509215 832472437 444884942 876424129 46193759 339977205 339639714 619470148 989399461 992044513 979262567 990289147 420531782 424448057 938220600 940026020 584251022 587084499 449580045 751599973 487130919 988176899 368738290 419405228 971445570 975354161 295723597 844117236 149063609 808665955 7642637 54030755 348128633 971333302 267791812 888889712 732511772 846779923 250689546 665092255 213034997 931158867 813535355 849466575 522254321 605364365 480139884 825754068 362868917 434477635 184246303 344565237 303977275 384850739 615299552 806787582 553146029 795493488 884668992 977490916 256537627 592861193 227303674 458971827 810734582 995009152 393930495 936961540 33466735 68511481 508641709 905093451 938761432 967247211 444077454 604131535 490086615 835958617 609156878 677903578 175304105 297765653 802713257 922928604 271227553 787779441 599159859 673154975 291756509 833928023 23051745 766311808 653423116 967041436 811654446 949859637 203184159 685300809 506706934 872431044 361795409 737827151 979953013 981976977 753918742 771026229 532090091 710624465 367921614 710291964 949240024 970169361 685708307 906655318 242584967 759848554 888231452 957021346 84062736 158291282 690835465 726458249 777162926 793107204 296727443 500326396 893491487 931754249 156532343 721940881 951204949 995827647 468731853 741322626 422354851 738341282 72265959 91274223 918487514 933802634 706740594 802294085 211165462 519741331 284701765 570686336 931748464 954278730 88140105 116632404 704203277 822736814 570509251 599482612 394759320 425591193 189064791 461706422 944707973 980454655 951487536 953722233 417662637 807940365 739538797 811384592 516754117 733151055 834047836 924984748 916198244 932733885 58418543 599433884 421986889 648662622 601481000 733294254 638696326 917967045 868344035 953288757 995042080 996643990 130972589 152505025 106767826 198627102 449265018 697520746 564262946 848066252 274190257 387039075 645004216 829667596 566985011 595073908 592689930 858403647 479829649 719334958 548233979 571088199 925191580 959358855 764121538 782003048 653388070 960035154 228691817 334585850 486364639 591011023 638342411 961265698 92360986 413535797 155194984 594720552 867972944 941494571 468796725 472720348 155886862 770801136 301912723 810129387 826280350 924080595 217341489 296925584 110372330 505240330 15946645 638129037 775284678 894633789 832020025 920603726 864134438 865019433 508874040 815754708 534088824 971009715 218292620 632090876 769576034 791279864 920458426 945933509 57707387 288866897 878988007 947946173 578340659 903078158 145389030 344938374 773208414 878274651 798774675 858490361 27171159 180274801 437928125 713229114 96472636 453129848 99211485 831998858 782955829 785803874 422828135 952415685 560923765 645195263 113223707 852300975 687300157 748639403 339128032 390883761 926357603 935655515 88710632 983191614 926354167 959344178 273840308 281545075 667452209 735708712 226713780 331245172 712799289 824736760 624881506 812933583 666760778 701482855 590855133 854779528 179116565 457582941 609896986 843725672 717696842 787025454 774743246 861820697 112701144 716853381 784260439 851489260 777908987 896286669 278593214 865319815 20399808 847418076 424190808 908795907 981635193 994078640 530557733 604483651 60911391 375597551 612256279 909241734 540340141 720155984 112556236 271513702 411504365 775582355 996790488 999183361 140994585 902448814 292834150 304630903 315980251 686539605 512589397 571163509 794236744 817339249 626347562 992423705 480824874 575043398 115634549 633378527 112216182 652019969 182392451 902031658 652806804 715814950 179552669 332029050 421440660 678311732 441611607 751515036 744377970 775023353 724830801 875277068 613152438 730491025 953886885 989418260 100464805 692982907 417998133 561240499 836498778 960523705 22689073 940139956 702871823 915534021 792045545 911168061 684610537 869997434 851607405 940043616 776881596 954606326 806979972 952793284 615923441 839229952 579913071 774228577 798857018 811887411 531439378 801739710 326453123 660209759 796452824 957153450 93082891 989686555 916405447 954722252 12560370 789070303 819796536 986007250 129586073 924223763 677688175 710708461 391249195 499734747 173008882 210300186 24273710 795722468 882367653 895625799 547058800 730750519 864065627 982346492 496870437 496912783 420556175 622996171 123677127 729379251 921599883 941201364 122685833 540504134 191048813 407239164 845218110 877978044 135747346 371496660 245788854 439646973 799486212 816722664 400184660 651805509 339663496 711459640 770280928 794101087 588354011 940355516 585644258 758782201 327829394 437816185 771055392 816583613 669699743 978537123 900774857 980682113 794047042 833641650 495190957 762992859 243290061 437428038 802431474 986363684 474669406 502977880 166671330 421332816 1723480 630838223 582755489 883373744 520853688 684272766 126080893 682713067 226747281 995887421 464958809 675469593 640878493 799655677 579668355 643892080 559471833 870367934 990598957 997197482 709811568 777284739 148921102 831496745 804108573 989804558 644073517 902350315 503531678 949489787 610147879 872553500 797904729 917959753 709034917 774529220 149797478 239433607 417141875 736395067 992054664 999173766 625017856 856144869 750080254 815759855 389922497 817283107 311846251 786762785 457719709 585380682 865102857 984273096 285357463 704316288 877637451 997391018 413915680 782188629 30944902 832226410 863848254 920878826 269103769 479974052 196594317 333871064 858352733 943460181 463019001 697868485 462651171 654940453 24005279 512933315 767563007 906660421 131118808 490600623 9337221 131135720 50484875 837455462 241887231 521136200 637170051 913202950 575846314 637978239 788616538 981298908 223076639 966012191 435518484 636994680 486735855 562857867 439619457 674489081 155812402 822226898 223047374 814114401 138715254 995249079 981983003 982798642 244089345 982951751 312582451 533159551 96775319 472791579 834376780 966376935 663732124 840093594 981445758 985186278 406569174 584458220 124337635 976159530 902720999 913898765 327194300 622920685 791631430 880352201 230290209 842201684 755968814 847843377 328629303 923773394 802133616 903170936 751017282 784347938 744684240 994542415 634265594 651170692 495352977 500472318 32822283 377932166 535815627 817776208 70853768 589482102 384041596 560581933 422833615 518212844 591908351 940687102 910727105 969936111 67450789 724846890 192329302 273616955 270283180 405178155 75367805 871251265 253479046 627837793 650601120 757191157 748327230 853171338 7365637 18695301 201247067 398202632 883028767 889051361 246353262 685191459 939266455 978375055 789418440 791715756 711265886 851850566 6961043 574979196 41567918 770134486 610503963 876083571 626812479 946806241 780617881 938930031 671775556 873407855 38115575 326317673 47454717 457318329 457030463 946865491 413925932 910918449 477105946 859295307 137497215 393821263 976910304 983196449 831618586 872812139 946926843 997715921 390262510 904889901 214366696 489805764 807750939 921505285 275203299 559406985 926595416 937383440 369078286 587992280 231274418 747019217 524535229 557495890 807439544 952393671 27910144 839632515 177511531 966565048 805331133 934766342 282441252 347233395 544379707 753899192 745601602 747313594 633769966 988213468 213645681 610262966 28016680 229763781 135521622 429383557 96409492 936777405 782496806 940345460 916292250 943746505 582783317 994151086 465048455 501571236 407075256 524018914 182853870 506180844 891304062 946293017 802377094 960690439 282130681 909964926 828338054 830459695 377397043 921309492 825333469 883465627 255207638 965071028 190814738 250008248 164959587 299382352 951375109 989831791 420504011 615724209 120898614 610297242 878144995 988487236 718563737 803769690 38774597 732894504 682502045 792224865 540519005 546645795 777971050 854456545 84227485 776230035 69748819 853650231 270308661 918005287 655969985 889521802 461682855 792117227 227680720 593031277 801987592 848963101 71131081 331749615 237790066 402078083 885814976 890603222 106525807 938883091 445793053 484362332 48010640 879751970 62083309 233366597 805979474 825715547 864130806 903507790 412833403 730735212 607513473 867846736 460068895 952678960 287757003 755787626 641690450 983554113 789943158 799195529 747213855 850455201 115794199 994982832 517886610 857178861 745581591 931033076 637779251 720024672 118659348 561650185 508511332 796819199 304581904 490668987 288126877 439240260 939963926 978478128 463912863 638385803 2152571 817441431 160693176 573518781 529564899 751633168 955982007 966134961 342260701 742421073 846862764 959962599 76363205 805617770 924521359 931266898 963254210 986613942 664903786 951733489 10833311 792788315 651129155 914231203 827816583 953264695 485747674 781593538 357767259 851148481 773857163 874186611 235032530 803166079 305340235 334133105 828662181 970380150 998728420 999023105 867644249 912454334 629852334 847125408 194906362 621961485 674964598 815601282 535275189 840360315 613805278 707524017 955854316 993291532 622374652 767139951 848765542 981507347 179724680 744865735 563957679 930939045 871302905 964617054 451200315 485438966 396544435 538030465 229937755 595419108 943161154 987571688 710503413 755783435 648734259 862012987 87288926 137088657 863125338 866162059 93339460 574337616 966384015 977476395 93926972 524118409 826023985 989443455 429030781 467665856 137755047 509599741 398613915 907786068 379545387 929344172 355833214 389837269 481033429 713220411 149710026 898588398 824294693 958170589 260135774 772924488 597627029 886019374 27102726 726183269 464294666 917181466 404670409 884700433 462621573 825911561 553673298 707929750 915223562 950888262 567022731 654066823 158720616 737544003 186573022 685561222 732046185 876006993 787618727 840476736 349212027 736650396 598073218 890099911 254222668 579574083 123753755 385256774 701731526 884393318 980986264 992356005 762917128 878380894 664791580 970440402 54134604 383878616 634103200 814052814 646100732 926815336 229280097 300520946 770748922 829057743 199189414 360575493 967485200 978103424 690069259 819005913 430997610 440665533 623760837 928078137 976882109 993070499 332588149 560489252 93452975 186884437 757107972 758663185 205445947 385824945 150627223 461311114 454241687 632192058 566026700 658356389 750025716 892992404 14012859 69881071 604086480 858195643 744296657 908176519 655482590 803211079 635567201 789875689 450744166 878155380 975842468 977885882 984333278 985987388 516196802 983344559 553034089 620445938 664735285 704169749 206868705 832334340 191122878 717093067 877448773 888992407 560266284 919753739 5051968 830233970 741812091 941896883 33803741 481302067 588097079 938568726 95866779 969054685 405065927 466318076 195650284 348617274 214385715 816039274 639204533 834421047 413683603 963205126 646565326 894183154 314845857 874944341 149184338 470537822 654310743 758656241 974205920 983948918 256956255 396235611 611348415 646429911 498068490 934925375 618827277 859326455 813860574 896977665 491811143 958324724 738887041 915547322 476525984 873029673 709967554 754877982 850482828 963557378 446228415 806384672 986592014 988417201 400516587 754121255 814237020 936603355 732801325 881821253 297926949 641734804 503586038 928245563 52565627 750183732 365194250 620806794 510111636 619513098 749254649 871155618 678970761 797331295 69813330 715940620 823085259 837646735 33008260 796309939 722865224 746192149 177427666 781915790 54147778 425603954 372155817 374084126 653966817 880219590 920737215 986770468 942696181 943030023 202045098 673877715 461617264 813930615 458720754 703636440 175137506 401330917 223174162 917869470 573823732 795419407 884258426 975737041 181955547 557623882 55877300 477241723 909415471 961464782 842269441 893759100 988272560 992813171 623434387 771187632 552654355 638967138 254693098 723270537 811520153 929924782 959474297 989797927 251259430 320280638 784619355 940370133 779164134 815559001 594354832 844105233 594354989 777608085 504472369 548050780 653533588 887229032 516852321 839224440 922895627 933593967 55276001 529910742 643438286 960917675 662877972 782716249 354338269 746959539 135992642 191300975 53585883 403635406 723180094 875540683 45437347 505980976 483769093 707905992 851377724 888151333 592055891 779384834 228574054 855737407 256976783 861013720 350587681 667771801 128963978 419857104 794771929 827450557 440115662 620135173 107320017 306798094 17607844 540468635 330434361 523592184 268534670 514994197 142561113 160842386 432197023 572120563 966608868 980667019 335638134 416071933 650223536 866970022 457939497 476668646 881168349 930716931 560299363 893827183 719256111 850151270 798890651 845160270 17186469 275803365 146709278 866741478 257210118 852090564 172164819 661637778 238988394 928486184 922102023 964955549 303570105 575696952 468118327 899128466 505046712 780878865 778823290 901766400 289229890 998382930 160955639 360350832 427208255 593888373 295721959 739649426 220750286 321285439 38213235 231972049 706078995 811730704 942070195 962753321 99257029 503788843 161997408 569169672 909871480 964081284 543434012 859926655 814718752 904006215 727600335 804274606 9537525 679345567 649343660 968946369 783484835 802473214 138737981 734489574 938467135 957870331 63201736 123374307 657044421 805197174 220980906 803318410 717543292 745576243 365700519 879301105 2081523 959973157 76217349 738176937 577032463 612815148 254495673 562060429 432678015 650643112 476308527 984474996 444511715 874029238 120602472 173554233 42892931 378174718 471709314 944311496 126867929 363153454 818074950 984779576 240794825 980464736 997295629 999241745 462225608 894140787 940879547 951006567 50675514 702078660 320685339 712379182 83567257 155814282 433267271 843687374 21100007 832950193 820670487 844041318 811217142 901852457 79097855 333275748 861608365 973240390 284216557 696009214 313993643 805332589 453940772 799723962 592621818 913926128 997820873 998794235 214462436 441994235 701679870 733629431 852419586 972244035 825490881 889097534 319804780 907693237 57499360 417270684 166700682 344585059 525148833 705520263 247985554 269715250 898434765 912376236 264765438 730105759 157908180 757358878 75793632 634968770 673345483 982080868 999077911 999094212 812089286 959378238 764583998 791839533 22661311 440391605 121045422 513269523 872704619 935770280 521394843 777900130 602235302 976239968 890527169 938259523 975712668 997409186 581656955 909808579 586001207 793395444 227561205 671803455 984020629 996462725 51764863 56783865 271326482 536024174 499423007 857320980 123461415 390882492 907718465 994666986 554613488 795185839 508311465 722900021 562059931 735056043 849086449 993149440 492875939 878778550 542437290 634321120 672421480 782184031 638268134 867549928 235450049 883818104 620454757 939948341 576578516 581064563 648640353 922849827 378273932 774443769 766343974 820088058 653938906 672169936 319006911 697305245 345625547 421554451 911668206 960365160 987369456 993265371 156050579 341828927 84866144 731378323 485989904 653715514 280931246 362963166 157823944 959525932 904415194 996682241 681596223 864419749 326173306 976182313 168410926 981721794 996392665 996852165 826853186 998553582 467500103 604542213 189998876 343349790 708603728 833676241 139217625 194035674 598192668 656353007 340382292 510267201 61805748 941551798 156269489 394294027 283517874 701712292 647457164 684673587 982282180 985388733 516179281 716850038 483135200 848820563 799260080 984549901 577175797 641489083 683731225 885094452 738192444 914624087 528438719 670542745 16307859 610412220 597171691 782899551 462382045 621317269 710148727 906647373 527097025 877353567 928777828 936519951 784363485 950607844 106201723 377640367 153027438 953208927 292172091 480130940 344542458 661745526 113725168 236241119 649612011 944080801 38269811 467558246 644462482 651130315 781978983 977237312 534738340 808755110 811438668 996421970 345015737 799918269 35216730 520762216 647889779 982307763 270114038 850925657 948019750 989315934 840078806 949525643 401618487 459619441 141474265 173349180 682861739 710317918 786801534 832640331 245769057 767074459 913855030 989662301 375055760 552034492 587176255 621274468 797077653 971582777 963431896 994252231 302202722 795316167 621520874 832579876 577533254 579513792 833038113 933550596 298011578 533266132 439611332 830212090 847751280 928158340 448185251 686686189 155005185 448550458 644647710 793152786 972746492 987446856 324292467 775392536 508219272 541462835 386802710 780433314 789759634 955898439 474504933 886131230 960955900 998128590 315799720 719285195 759160067 853820894 506724875 709095129 820292234 863511907 592870971 656930136 549565057 733139133 463837988 795673717 547049565 810459641 971354531 977722964 943908692 954127089 32869879 618205071 933212578 942872708 640306483 708709525 944784426 955928922 288667208 313983222 728219256 750753847 373487775 452370014 307833241 456421716 33164445 392625251 620135841 730618047 382199291 615460841 343834576 938228631 65228394 435367742 972877167 993238486 362648191 661628381 328877308 930600932 883219244 981041191 736567626 945457950 467702980 655773392 14141365 605481973 557997276 860630795 74813105 275117432 423739275 876123894 907187978 975102195 811118057 938162860 945538267 950692078 718844726 740440642 902122786 928772121 412795020 558840435 872775910 915756660 283466935 295185386 47041413 830930209 745140593 901789035 553323065 755179452 832949933 861494156 611554592 983594899 834358173 929494222 843711005 895144927 195692472 535865882 703916599 707717802 851549050 887095413 229088598 495090274 95912591 898249370 577015494 820010207 531107238 552396140 144629270 545717308 963568782 970610590 136847322 204364967 267197474 316695031 858395177 908525846 8293656 300693952 419375451 918557964 590123591 976392013 310068279 564972057 137372856 379057363 638055232 950405052 10601225 716876017 666053226 952085028 854583997 950938663 103196038 475906707 866390077 929824610 79321446 79532894 414142456 868217478 892949649 910081949 514472929 732220963 748185092 827184221 562611474 638171971 907959441 917644279 216078527 404433523 545630198 701160532 358294508 648091758 669551124 882272713 741307230 975279387 928326940 949885914 323794498 957764702 11342669 773383240 470044139 562477753 676091862 938020709 611475285 663935992 198958589 949946836 45633686 864750598 940436926 946492534 81838545 303576118 750680291 822820898 592940498 594201462 828001738 923196468 346966000 542908285 429853328 945243734 260949102 442688438 632084800 663256457 297889541 811067506 180699742 687215020 485296536 632406116 130094792 711481652 952202682 956439596 229859443 752427336 152678543 207139226 25159723 641536202 353203758 705314483 861741782 920867094 863681819 936823043 159418889 416516520 165876962 365866146 143344832 854978738 744734412 855065082 154681920 574229563 52986541 724123858 229946543 988911646 49140710 145185319 64156013 411189828 436541102 812387630 164341710 322740602 34745531 725796743 973423772 997218358 754913452 898921750 538388254 922676576 709455879 876830532 538575305 734932960 24901888 902671725 2077967 875358062 948238528 951547410 512580720 589048780 328015361 336149741 393690946 426312659 180592631 436295417 507235371 974690931 441141896 646788779 788622579 941548307 975399782 996902591 216447841 761596670 664761893 807650966 34897638 197461989 595797737 633462841 957960305 969736529 607155744 771774545 632038186 702515465 303187947 567554826 632209340 763502816 594416776 831871103 903535969 908551006 547677197 637370711 897744135 987264159 372117557 421353526 680905104 870297547 606656862 864997089 371329733 563437758 979176217 988183499 248576600 470497741 642718218 723469653 109097664 154499411 48383122 531521885 919197847 947028240 532000062 867875073 773595330 835580297 735598714 907314971 130866350 149772360 183956756 216034405 912054306 921657742 518950123 931073799 601172652 669924848 376611487 691288617 693478840 843880871 844982543 922630897 480963321 720145944 809167424 936902366 585165679 888680053 464606629 620721654 566824802 775202502 466709624 929990949 170559883 468634318 272685230 739468061 335094884 685103926 43091131 373115449 326961934 342941581 341392627 793798596 64963531 562913957 878401314 974030986 342806543 907361037 945059954 969434789 112357590 569078217 886961673 913293464 298571720 541334051 249547354 986663254 192392043 900769387 743528663 993771634 823561838 835965977 510351193 536160968 360228608 363825692 415843123 489588069 319219135 529054786 354099891 610883559 809031860 894369259 815335622 833646548 932411715 949017232 612336492 944418385 205920079 413517278 57282745 454868005 172088265 650996016 961360714 966971846 992094571 998407742 829555992 987149926 799093539 894833721 607578919 913274026 742703605 747386418 429478656 663183302 577011626 644827452 717716877 770120911 908221495 946582266 737377069 800963213 121533587 431336631 42474844 908869403 153498695 326148538 651669795 681996581 675318039 820366781 389000492 703175035 541565026 963462177 577388566 965887190 418227091 467241551 489949177 633051394 742814074 941082578 925915180 935301429 472441184 794081506 70437618 398044505 917145572 991338700 179235809 392564333 340094101 990544871 897481554 907587592 694529443 880020326 307691032 603653791 277960971 527874151 230271128 248412306 437153490 513636435 73897097 617682916 408942081 594561386 624077437 683127252 545789269 873146543 416185454 868114392 533691209 542479667 976148506 979182178 877425430 956978657 623872021 839033710 883925725 922097998 830712753 973575168 854922582 873689184 624232389 825166630 205178668 933175376 294410512 644984567 220822057 678449275 866589434 982700806 904597218 950261922 495169323 601694626 179956064 676292274 923574660 930424312 776396343 845428304 385778782 814600716 521098128 925473868 530867674 546519941 117110967 424375895 420233678 435810634 900397708 985387355 15317598 792173853 282789067 544692031 332559696 960254572 274485983 856368212 67937439 96573431 626506371 912662229 120477718 156136672 2503536 269792226 754464559 828158449 121149812 356936831 218987839 280660319 94303319 745925782 183824954 552213721 953338776 959443788 357188907 897283731 665876769 722007580 31627471 598136465 106940047 314342527 238535543 290029674 178065659 551263242 13698754 946568278 717402734 985767996 474577533 691173150 995107672 998031610 25261552 426630345 340241405 977643982 605073838 827431063 157966948 650364827 245124196 664811911 674112657 839165544 338916182 545227563 985034047 985847988 193680744 551312211 602961582 895955097 335114464 444927164 175980223 281586779 701113924 834126011 275204955 317458837 114299600 757546416 766926980 800479957 731378294 869880860 407409083 987789672 175315586 774768320 188452360 642454497 707286819 796048232 973357514 982933157 886091864 907697353 181973026 690090219 738500462 892473903 23533833 513990673 922529633 994165927 720797190 792008008 792548735 858634081 745643609 769948515 476827373 876728839 68177764 86861154 74207274 298808050 747110213 799474718 27948446 604147469 338795452 619047913 424012636 996755656 555482210 774696821 474744805 845064261 185832172 918485222 563902675 796996115 683833111 707504482 355815322 781530859 24388290 452308711 634946704 887459760 56494558 761425188 845986702 964020761 340502040 718615569 161657229 994859865 583136191 856957755 891625768 986088207 959319739 963020054 196987621 504158304 304789044 600468597 482219694 711441134 99031846 536130269 343741828 399599435 979223017 990684677 48294434 312727191 785248721 990493588 789919209 958224504 800135825 889665073 116040274 733113013 11899798 349788177 498962657 813179047 237316552 679992561 905790916 963364947 642647941 982539464 465593295 498902372 524043456 798332678 999312265 999355194 437416165 843533310 248441034 778558625 574023090 977928036 606661400 973325613 681839726 790437192 549105237 924413126 605391641 905035755 440507270 843478742 960464928 961348910 3095144 63686094 93571756 884517059 205564925 220137361 205528540 498494017 505883845 888904721 233295768 980771108 751866831 956252669 345459544 530252076 347438620 617035957 926097830 935192497 895860073 914151513 821892776 892267179 336667273 915685109 672661776 714536170 5608585 108218383 231531789 466844735 940384537 984577469 141826037 664529438 300066901 433139415 97331495 402354145 938247908 995972612 467246203 514223791 493817030 681562678 100336462 592814979 507940595 532617096 227832684 555381175 829483392 897647611 516244482 670990450 869318061 937549900 712960311 958309284 599617563 609544112 614167828 642767163 690075387 873427951 790856309 968906564 801837787 925002481 14634974 399222693 620232732 849473570 981921088 995227835 989825471 989898741 478620756 796078816 975776878 985493962 488055084 952306957 94679460 928241769 519269948 799466946 223099076 251417224 656285973 740864949 956965677 995466549 33301893 405390573 185258255 416170467 777599311 932709924 70163286 937833479 172666184 798126688 433691935 924364213 761870088 830883382 849658568 906641655 843087763 911722056 252648575 889262941 665852721 994481382 308661900 603829289 376517756 951624218 363746962 874738236 372612475 583324415 123054849 653895582 261321669 825114917 115372751 694598133 727872871 751955767 366828018 924866808 488779116 975678371 590682205 740183274 497639798 710383334 900462546 980053304 929231958 993871812 431796482 879767285 188379460 671459896 582492539 895014273 25116797 419489280 539725671 832375024 128889679 818871210 260918115 737765039 904839555 972321819 32191068 924600404 227357726 310267037 937820337 993994499 865490183 954390545 693068951 847021207 522490439 846505202 691868865 727869791 700610954 869170815 426188898 454316978 868464567 960244418 793828903 976934308 689952112 765646215 499461274 591222547 566982527 615906809 336234305 748186842 986167794 987351247 259337193 720718468 30061273 956152670 73950193 544079782 29735923 865087582 30617447 587025391 589013586 913531454 806791776 817412148 628824074 961667259 286855237 570826676 518731832 582898170 208683961 908889733 248713 16093430 859191017 944346747 627987638 978427282 578877349 842721334 756455564 969006894 525392336 689656534 512494707 733886395 352561246 514739480 735305731 781933732 38208074 146535115 942966762 998588556 448470066 643789211 296803513 647170597 346876635 905138167 593389485 834258225 830091785 857100574 164973616 334756131 556715411 754095499 450892143 754630513 55764039 702745491 678293428 952790437 550229459 584319471 945394224 995996335 620415540 807882649 223581986 930096103 636764731 751275660 220332734 454069188 760118585 821241329 955091397 961680708 270787321 965796347 337306004 788567961 290260585 815330046 750434117 813904487 868392963 941517824 260596540 467194514 546878431 632527837 21783263 172322771 145355269 838237546 31717201 450004950 377210835 380234586 782596330 783501860 877578866 971321985 501152632 862327028 991522185 994299092 989673442 989819779 672150713 952748492 815402425 940288640 92516979 658105434 532578725 762144682 539239957 632315855 162877602 590423566 655296467 985388058 59644910 748692841 871210306 989453694 586630035 650825420 958958579 979110037 172166198 984904995 52406453 738595496 167557656 263341633 776596800 908490991 59664932 148418019 955452901 982161374 389995716 870519365 498222511 703963610 383116531 402037857 81695985 204620019 375931845 769758164 994313122 997236410 795172479 920572750 721485391 794364339 849834581 933839489 227218406 792863806 384585463 455909730 213269714 849289216 707906694 844132064 255620167 716580866 476867470 996749920 996175338 998829049 803604150 942503285 911830090 919296720 57001172 623083938 433435619 640753771 295013476 472954533 5473443 808046536 345385164 715275539 121131160 232700962 937118152 944108277 631798152 744751360 193933626 291603856 238622969 425784381 757358532 817915999 46973385 500244439 594446799 666938958 209674732 227182565 8495665 420060040 455959181 539673664 607008625 970960459 181837487 336975179 610352541 643629723 599214030 654920443 867981393 914114061 853445303 956193824 943464918 961602851 159604248 507350715 875798772 932227745 169098032 814790146 582518067 966643807 467935118 550523425 750253099 890487357 487578418 863134978 245738912 331285240 902656911 912412861 899754366 984524307 213122271 573228527 483154805 612498199 269426619 682540751 270986903 899596949 488509871 554114424 231399579 395946483 807705308 851497154 745250464 997185082 197838642 780631432 507196703 955501764 715951294 908298687 595615708 660382839 18490553 589461738 571684410 672514833 705822417 981396259 267946089 492576077 592458870 997048295 123856854 432113290 992986428 995443945 15859182 537125814 148366783 442545241 13017342 950429889 976312234 982704093 462273010 931498019 647484647 901458056 554414422 762878884 409930049 781996673 419569200 761610063 458359668 653737365 380290081 911327044 268983129 763757760 9665229 33161110 455886110 600345375 356274389 773135605 468707151 802314012 772598284 776831627 15365055 629906485 352890464 468923950 487563353 912661543 127020199 762180234 273549650 750323078 517851155 636125215 382212680 389530323 322406800 935459616 109786806 693117111 6828189 392144129 245443367 920639174 190036031 242211122 736031424 840952601 438929441 630692029 811941955 884300590 92979524 691998663 749193113 811888630 745078463 800387625 10626109 484495380 630407082 957967813 165980242 439206081 716432276 975091236 4070369 789909968 568541274 864241097 765197097 904573249 926500546 984900710 301450872 365849018 887486496 991480965 626225814 816643408 927362326 970661504 598651825 709696790 697875098 790277400 764869329 997990472 289119651 292986636 488695585 647184435 660148034 921129245 822314433 977470507 280234602 324756091 256231229 548734913 656664214 776885396 944792974 983010355 85345266 259199569 993427375 995526934 170092782 756063581 873529558 947854031 689785777 844606763 538647095 750877951 255185408 505444285 800811823 987125868 349192517 491063050 590369989 768158804 57426358 427374235 4602848 367327619 620794826 701327091 823109941 893199196 548879536 965106435 85331830 964379466 391443051 638617760 85487016 963701117 849230810 942336793 454292090 483868597 102348220 901213979 89237240 212203401 480532949 869843165 468630440 525059804 171303764 898599777 228538524 758290559 59324369 287634836 903797321 989259628 358773667 730237698 542506922 909807292 236065451 855648300 874366673 961911485 845289908 896506943 908984506 940101810 314692040 516069740 514185409 589630921 611612259 997412631 642059038 676953765 747593492 957821423 602544594 963071358 800061574 908656945 905853688 922850208 67645441 184652989 93912185 305637882 319951436 860155157 197334764 810646327 977172067 984035078 605421230 953039817 515998957 659781343 171272560 229157683 803473233 898924268 848037842 979202074 518880113 840644547 196409459 199503361 529290757 744644204 135688009 157397853 624505275 694485628 978087444 991143762 688818682 982711778 387212489 988594142 927891327 935056201 956838245 997449286 914623072 966171993 198534767 878687821 550866177 820091246 260563752 737822007 326034008 909585928 219636812 862555263 282488661 704433827 976312076 976334487 170145909 483002629 255883625 484379858 927243215 949643182 320628847 942501864 887495485 971566923 590408255 618197097 789144189 921341487 269395331 599314752 587307765 612616549 524011911 908204650 616764886 783869439 957207558 996649794 209389078 736390353 56825750 917708870 70079776 689626211 75825729 841443997 76839685 957196324 150906007 565036317 851816752 853896794 681731190 716527697 147565902 400303997 703118830 843992322 941241734 992763355 122266304 263126136 828881947 905497976 423836742 914473891 278851401 337090232 965255034 994087711 119149508 760499545 1386507 874429970 28902565 696219751 458190631 464787624 929502573 982261105 942077249 962945698 583824995 897725722 987222334 995374062 517125921 921573271 654614232 802624103 415393183 465628201 945605046 973110894 975086129 986241567 42679337 190959359 767851856 791858503 473683125 511180437 424573293 532862372 337436662 620603163 857901446 902485773 822137965 889194580 639985357 724958333 773357502 947793437 796840108 904160550 106188453 442800197 493644694 874472620 215618853 628455098 213997723 331677848 141796182 188909109 67846557 798028893 163408274 325407976 62568235 484866822 85282144 433862743 709270781 954154741 82811783 447283831 707698194 797305778 23513263 246035845 238618105 955531507 694904411 972750867 372656687 756732364 715978078 902629702 53902079 328640448 580374723 779650253 499657001 532910098 193629290 759031188 26789321 416729618 138091643 415452345 399771975 428582538 103140613 297890407 876951247 988832804 882284557 984093654 10593846 228207512 63358577 841943481 497709735 744344266 122096787 889719318 284773545 977494418 975464928 994882665 907240086 938932742 244965638 846780653 237226679 302077394 522791515 909663681 907431666 972831339 588416648 719438412 850172457 940453109 458093632 821437188 763689980 992982843 229499400 315660349 375898133 748736976 972690075 974251000 864383881 888619089 626881 226717810 478750803 808490627 699050840 876903347 976116891 999280922 674396778 943289878 354071710 801147796 730215286 834843194 554600938 750279967 649078260 923480898 610723940 976162204 63535522 533577304 392014746 790750348 220263028 912409708 42080178 460170673 859739005 978398925 773338732 936272015 807934867 895450532 624218973 687533271 25216854 581161337 726827020 792059007 650828432 923697486 59436698 443630992 756201475 839656503 417454700 798591979 817530324 966860618 513718822 675315886 293124538 602613376 79280912 979688245 646123567 713125256 533177422 735112613 496652246 535922061 424330902 842521977 507702811 543359436 216654778 997316325 533217329 865394313 551519069 558109971 433887574 912103030 899726377 966475070 322531321 972861671 993209214 996700400 722874885 727334137 282867143 861583240 205743024 570041131 159373697 478644195 141867121 660800270 148121737 595162179 279770620 899304225 516086778 875880920 729779980 866654260 321030158 387939491 516354952 608886017 96568366 761225801 435433113 726885682 398810146 493138655 917991013 936964916 563354234 683527546 353080551 959042145 933919978 950173722 821776375 888225214 899074860 915102159 526544201 542766235 304326358 944922368 600641232 985057894 730651223 767289846 408679214 640692625 913113894 938330085 291029452 513808957 672926710 960150966 527454988 916734815 235440880 247618315 436323915 840723093 733376729 952384176 124552758 527856951 685958483 812289431 358317289 832816663 895330122 939271463 856505315 893805100 466793525 477410245 242942844 558500019 656828305 813400536 970027596 987397566 552425120 587033223 203946334 933536092 395901771 499545708 493744149 627244759 300613248 964178558 674441560 702634367 660348230 995670009 215599607 488028845 944369468 958452169 517725284 869314563 444381521 696314641 740508219 989502440 699407295 948649366 509936276 596386313 492662041 984260808 330420737 834985388 65408174 234321559 515448091 939604556 992616705 997812562 616908644 991482331 648719194 695809370 331508795 732250688 617695143 716695922 178743570 665159520 742913863 802041434 859743807 948140230 579355154 637818105 959756856 984206558 35818243 130299471 546921822 801473473 436177443 752197168 868207531 960150874 873774456 888622304 664262095 685843217 79529643 926329188 35418005 297227275 776548047 817644844 352796934 821966501 714088715 859576161 178486748 918358315 16094149 243366684 707977014 808694391 428794554 675850903 898402542 908061717 192673507 219942971 304983318 474398267 815507932 903495758 570533735 906028387 228931227 360544720 475823146 850527694 999030645 999073526 103454888 767988523 879604653 904892556 557853835 924859195 307532739 461531257 906646677 955312834 271051460 408964216 539238023 862304412 459167151 902574642 980279449 998319901 75580498 611308091 933967229 934687097 296691362 726686970 370343071 589495830 930797777 981255295 91142914 146618056 882066701 900250574 476105953 678675700 755434341 943708945 610644815 818173623 879351636 894920374 371490171 534327453 260255220 679879488 956042489 996270589 381141775 637084592 581290364 848043920 326224429 594730274 974793418 976032005 235435060 753424839 634939124 678524717 560020444 622430923 50470454 172189695 54310555 258389938 899644219 943293428 359702406 747516640 899265708 906353146 321129728 321614441 985645998 985682269 540551863 810670863 323452953 863298571 780547743 864264377 939511817 982664047 487280933 743038812 599526801 936898019 956779380 973030261 699457478 932655749 39073125 968183193 442811848 780901768 351645615 556851886 641531854 957642985 328396614 975980302 456808263 875254000 60148830 554465751 951096486 975193602 902218985 919068502 12916656 896678550 583341562 808087908 389397035 753878124 925280467 985171742 641874032 819506012 682169329 874195130 637498380 792835309 628570580 937898512 405160238 578311608 72775054 104435525 411578193 691801638 673433529 867069686 54606045 75604902 701028813 959949396 314694449 490837888 271729109 776245275 486753414 710432216 627098084 874394258 169489197 341430074 486328930 919554396 830656614 883113912 945551498 972995364 679385035 925414541 825105499 858475538 838272377 856669805 848602904 880138214 333953311 853708203 137627579 703061281 673026486 722782710 806399885 828260503 185860503 712175644 403111985 614648280 999050113 999289980 838665341 937497676 686209668 991514707 771949802 902241327 765919107 817020693 187142115 491765455 821191085 873790511 198900266 867205461 302524531 539580663 494591880 548035962 168746937 982550349 270443960 949973475 306344763 353500898 781089600 791192697 932743562 984670532 164027900 794490394 727370054 745977851 475778895 659594890 289486993 724971743 382100612 454306568 185571911 285242323 603266795 679456530 38851393 150706814 379975911 864390731 542753564 738512724 701718977 868131190 905663053 945076194 907907120 978523728 706114854 842108850 364841568 997661521 90304185 960990528 755196579 893659115 86569963 946727394 872723416 995030009 428506668 530994116 191900145 718356008 985933949 986320264 457969240 495852250 309728656 741916356 342678796 737450573 114957360 842988251 75203405 921835072 635340825 813985447 523355760 679098740 304461717 655249294 936589292 980747803 389765183 923699315 770070477 990700731 88096484 909248997 44057823 507151828 364198005 606808302 90231862 730178513 677318305 685416753 146659638 161874333 543349271 666867613 741215773 928336594 172527548 551970994 139342374 236384007 973839639 984279000 159729332 848570299 716543751 740391952 129759126 576593089 834201411 895551261 417315353 798757120 25703310 472418592 548885809 807973838 222587686 793096430 73863369 838639529 200066433 619089943 244270959 625003510 227613339 871154707 174484317 997540573 745410371 867834575 393889938 752289870 405631937 594140458 63802431 969808666 403429007 880881841 70703939 354621911 554931666 665506122 240291763 911192692 38023043 774691911 282288632 549774420 831243117 985434325 895269176 942587670 914136757 931735416 12779322 944338819 126298725 263802502 166002568 616931775 703549873 738153322 971218154 988097485 451775331 882479268 386617573 970894429 640190257 746431458 562908541 791553060 68204112 220315109 731579313 921137992 111763812 238276159 815295368 967373711 700559033 984364935 670965954 758679059 381518989 442109188 813285709 819173197 832547921 948745760 903788546 957303009 874883128 881156143 281459150 481051054 187021175 863223567 364786893 634397286 127329300 770997255 148375647 690682012 164677965 397939795 18401047 238789103 904167986 995541396 353958274 751047965 789901054 814953565 947083195 990181726 825193520 936060978 539683481 880231804 416475101 486372161 879626771 943265745 395039009 829817545 125458483 804810068 944624275 952839752 922839931 950579690 554333962 583756460 862423776 955626826 82217055 491449371 520462698 893894100 188460889 705334096 974527841 991455594 81422185 415369208 381872941 919036954 714970715 745362423 419114256 680239589 690723761 845936086 134171428 945897721 313643477 415582216 115201826 221800321 37309342 545245357 297261943 306207943 27635318 698891739 218949705 682256110 286141624 389822529 687593709 975564560 866902866 978276464 626878822 752835798 700495956 860485999 661841741 792386445 35629863 401269386 350827820 921373153 54979650 401387449 989350855 994044856 219303465 520630086 148617937 956147674 239652905 699910312 95005410 692809477 232847489 307189092 398020757 472577928 150122936 320535687 408312793 755160465 314091232 617456881 385689796 965401514 72185822 947327250 180967278 562782497 353697256 876639634 482737073 501130480 625213212 644902547 457878223 880197095 56993178 908678976 856126593 980532506 997695092 999116764 845670292 875996600 937844124 954731735 366718897 986273338 140953307 545545993 471695216 699920764 990518443 998217757 998904120 999186493 876629245 889302819 744641781 765908818 585363622 686594724 731063031 735044641 996335498 999146535 519476930 830371975 224774894 868903487 273530115 378034480 99642212 420118024 878617813 926572369 894878881 911638164 266009539 670863753 37054383 995760964 275743920 530951237 863257405 897604902 642076299 657939243 451791115 976963330 667685687 788757105 342103992 704282395 356781346 634656600 688857049 750735057 322403270 414769146 946187212 948165578 450632188 618611535 67934135 145597576 761545539 992856227 646156510 944912185 95185546 865589395 909317577 964880559 467360477 483558468 324595148 955640097 579918115 897266222 490697189 927710837 715656439 972366824 873972177 920563132 276856817 484194361 734544399 854838841 663552582 939370474 616158775 947181562 453848995 904704424 160534277 515372727 438530070 889219310 637520323 652793888 333934976 803745611 381418684 480428295 245125327 464477945 588420989 874119072 320009613 324227556 604249056 689205449 411050262 627715198 352663126 456939521 515115986 985904270 601261933 694358713 486915283 949258253 76835901 168597068 580585873 779620872 348575555 795457730 796666552 951926033 820294133 940083203 929239188 957899652 251954823 781607476 563962843 810240945 389268367 710911363 631908298 949021355 881954705 965484668 846439388 912540607 589139898 840722435 70596527 561852579 179519472 459553784 970168664 982928793 743266738 906858068 479514571 565873714 616539328 701105117 383977515 584986188 466829426 958644799 418851127 713784338 969280035 980536379 441631474 737461852 413591587 637139578 755172153 824326313 606748319 704039018 626812127 883208386 315835468 514759802 18639388 146062807 614596189 831533708 105358177 894713862 483046692 488741935 917449527 918725069 41471803 846346221 121450847 527243487 246055292 549425399 117792234 547020879 141243330 969754215 644622227 651321881 622738834 705221421 891865810 944678396 461263964 500925163 618165741 819286198 984117305 988495498 248407452 302503829 658842118 760816714 843068136 955270964 471907164 659029110 425206200 514141330 421915619 862309549 743861226 963110657 651085225 730368655 541032717 924141748 789618131 912143282 474036857 475202342 617460514 967380243 923058997 972455530 953515190 979922176 21660327 215748389 317821238 953115214 419624179 819259132 874228539 927723931 145082917 346169439 949551330 958665727 332318304 575825396 638619992 833685616 771437741 980533198 596410675 734191908 307029895 995948517 893350064 903320679 81783304 442253242 774697428 867990068 586622234 883839377 293802684 745186543 611648076 992696020 48292941 375112091 846497474 952075947 756963186 864552579 718326917 940777222 270314152 377667363 165992243 653506140 384949560 747381342 875927017 958829027 861932859 974693284 800353472 922511820 764302738 780389269 561178133 751871489 226808080 229118934 63329309 381392709 316502550 858524423 368074955 372002503 718127168 880054332 90298533 246282143 527199239 606356831 645346269 661685136 818423924 825013511 159125142 468967196 585029534 938814777 288145964 833413531 823866861 935940029 667458885 907698143 973014727 998526174 511629701 713970909 831673908 995872688 424669581 982760737 367070926 682216277 700399372 866473555 428895550 584469650 361648007 788459279 632861776 692262235 742236471 819735287 952683467 999211167 895626882 909350388 435565238 893944253 817120510 818702558 480780543 626110940 171524591 480059955 263018163 479248149 585859271 743611770 2534722 119454752 24075934 499802631 159670727 339194225 243770163 868410955 750059927 996779234 70116440 129901241 908670428 995511715 813704804 895372422 779757536 920871007 738928156 903319594 415254274 929782046 182348629 947872398 814930789 949449426 430173007 535037246 804361070 917273517 197987017 919724607 416354321 804484201 936092771 974006075 472102642 543600336 743764780 879318996 54441562 543476669 12052707 14655317 509768867 710475802 393819534 750743737 898026726 976020353 665410330 710627131 139178775 964260206 811327775 979991373 626902771 902228646 649260780 941304424 599804282 914297724 333194946 998811657 533311520 952263091 604890756 682638783 179441229 945202280 740346504 752034236 133956537 446578037 115309331 577089443 940417237 987471267 761579535 810141344 327131826 919462149 24205713 564164253 414996055 903925636 486983707 920880488 125941026 765554319 244364189 633060298 186724549 428245348 639288219 807407718 752234585 764096814 94463528 332921560 79510855 227674801 802264224 901533385 898890897 941531988 11419771 539161302 807850480 860345385 978372501 980088149 255415006 471971979 357817601 493769681 800345719 925059857 523046854 535796020 155959098 892137916 468136361 842682097 418893250 987034879 726329729 990548046 723351472 762781784 119253287 637195852 603103644 807485058 741406627 993511287 627891030 986617408 256580576 790854878 182697141 360831058 798716641 958067762 777482652 858443031 386072479 813238902 229039926 784360778 328770162 742803859 955803158 998826464 310202866 419041843 149292728 623258784 673889470 866229162 370416797 980192377 93955170 849274418 493522591 577759744 475817224 477576662 552992756 628071834 298587126 990628824 375933211 464618336 360447120 916800257 425290654 883226607 995835161 998307437 316041443 635183011 293107154 307813528 494952437 720003503 370595862 824784464 154533977 599342989 67253680 675505071 975004658 981941645 790793740 954297237 917337378 992621382 809264918 996535643 897773337 992842613 488776959 904246919 298360913 635348123 440781781 852562239 182710968 225841139 330482915 598394686 728171662 922331756 717752717 829784256 448732565 538282710 886491284 953951895 431608994 693249715 840234029 846958114 405719778 823388341 923625008 998265958 688880002 839475276 268207951 670884625 332398188 528353353 829001419 871588973 231489066 485326605 783104994 907221161 149546260 235067215 435605688 930179824 615171223 732989894 447051003 797322295 505045196 676966972 814309077 857218697 787952055 820405457 899332163 906082224 127407802 616821763 225650952 345101670 805285271 867694034 781964823 849222147 56890808 827973937 830664395 941833694 457962151 612311463 550110635 928533747 451872027 526399795 981627251 996722470 710615713 966335613 354404824 785886355 355089631 439099787 72995664 888041141 14530769 923140528 552073764 911918216 275320885 605264121 447770024 679170645 884939522 897756226 234338965 558144545 458454206 939575307 893706567 939981518 983562579 988841080 839575850 847648475 460680210 605352520 988695598 994817332 243319014 598751599 435916823 661571235 353840145 639205496 546760792 943404313 505740466 678940953 559103708 825601320 928480260 941115210 617567514 698306207 406182151 680681406 29155385 230381238 948958455 968690147 871724600 888023951 604378393 879787407 816173374 954050499 136656769 691096178 238049566 742988002 45860497 437752014 613109616 878346017 252768410 349429740 682569774 799919992 594482250 672089384 980350264 990451647 437350184 577043795 663463826 817188380 577035211 893689618 733155815 845213451 600180824 686483304 387335382 840255391 984029443 993683677 762212138 772151935 134660852 363234446 719266428 821799237 197347865 853242907 830470186 954362031 992719006 993634647 72407981 82900997 531136834 940110208 221654620 252983841 415609093 670977201 94182360 333123474 642757885 799458064 677817783 932452056 904983014 925069982 271636628 292763707 214232907 963520871 73167454 816204818 40513233 567233191 594488499 650528697 944898870 980843878 514964348 921335994 700950554 752044350 184599902 793181491 703488380 962475899 595092111 619699830 443393679 648775863 766785906 799406192 818584449 913040977 833893743 930930047 983705189 996309006 367862057 768123630 763886232 764333230 782172889 967279812 706596867 950862974 37825116 91380871 426034003 626288002 582586925 774902311 900548927 928983511 464957738 935458763 682943205 739349921 831027358 886762260 231865187 617580358 869055044 939303784 722687862 996615624 885243329 895330878 433421093 447752183 486348551 568597987 265001692 561599853 591753531 941571599 434903220 612657008 382260457 702234227 434071356 469362894 391075996 611822016 119719286 493501971 524448878 890913680 824186907 987161059 623817813 756842302 750257505 939039371 447018569 465459594 499826928 856756989 318685757 983692564 419442545 883754847 896949590 917921458 141146170 920852500 279472434 875996096 700588064 862199181 623078852 692069238 234860119 302163348 607017006 957428475 265887323 346671076 169172394 803271010 796681650 923167854 238904187 793769888 62761443 566303599 979216650 995502652 431151101 668418313 269013834 759024925 207162770 992499557 900148230 941614103 565490080 950532425 840148832 976031742 946618663 990512465 530637552 882858263 510003474 984407131 770353729 953765217 376144775 737456623 788506463 900583778 762993052 800321708 2262412 842587378 307429343 441235630 287993214 482813899 275367117 351933559 730103087 784299274 19388477 213197953 655310845 896821719 368272491 935927292 784657506 960709639 597902816 725971649 631579349 698618016 867475251 878276495 144110055 873429820 998057196 998883041 317425558 817525630 129027495 920819211 132481774 589776183 993170376 994987652 22859776 218721608 557206461 749666145 651543677 766345254 962682517 989731692 575515644 851843743 213827374 436832612 331801085 982031834 706169737 960895394 247223653 274637728 685823439 902597625 883733597 887832468 417527330 735297536 530751816 671479157 685814808 692541199 502955133 863784860 464721099 885209178 110122481 944909921 712786194 914281102 908979752 947491551 316482008 900679474 664783490 916612947 805773073 991216967 815208562 919672440 343960386 917595943 749231459 761838875 519782344 528101295 210524862 977722242 949973497 963071403 620076777 695416453 478671009 648287991 615568732 662591369 543676598 761487587 103179348 725349324 481247173 753359797 690132950 887406492 488198798 705428256 212398279 740643183 347435647 809793858 647267614 939539847 200014988 513157250 655583927 920036414 744226827 828837299 966323462 998355792 527988421 698752269 830354181 862231723 89025951 524442621 323974541 863752301 830902450 872117228 420894866 446827088 519206209 711235680 641203818 823921498 470464302 870894765 512932096 899941102 268914425 288016432 86371811 660018140 62233088 157329275 163294911 334653494 180410933 857288347 749224231 938048827 618170290 847913697 384271617 796606126 78907778 629425597 205303762 321568757 872172784 959137941 696083565 901649585 220062627 440422957 666624917 766971357 251262210 713815604 2559924 931828615 375815454 934690213 299825125 630977963 784332954 845799330 226139327 621494053 301946853 996864861 761341199 875499961 824349102 958595982 657228808 858384832 966373150 979563724 464189226 782035454 271097504 744952728 417092968 754049642 731396293 953078023 907332474 984828863 118760918 579958908 709746581 928129739 108187745 927096205 736410520 903152137 124899135 698700305 494963269 786294064 650089839 819550788 36611101 705619352 285456093 980270408 242721845 748036598 993149454 998417081 770150931 841710627 947968391 953345372 162487305 194743176 700068063 751797105 853353960 913482305 302357565 980790733 533630142 978874541 333933148 814902655 471860178 555364111 639432583 927303238 50374354 401001037 196867009 259991800 128353308 334091318 567216017 642752375 734374234 932912578 382975791 867056599 228215384 873958784 597294611 631017206 453757681 457655345 425234317 578950687 127245289 734800189 938219940 968063729 65866678 744151138 240045584 432065573 137344027 294287344 394708201 861933873 420586633 529927737 882187923 950029786 467812152 921556263 714742773 738429130 35955586 760591624 841947181 883934324 322441205 486740023 873573073 884406880 217167582 370445557 613884183 737378569 28880788 572061649 409548443 471403335 505199862 693652517 927090616 965683882 902501917 936023733 609279663 726821658 636271859 713410279 585966694 680929062 941938051 958871717 890601091 912239025 884054298 899751831 30702340 593597224 65572259 412208298 264208229 360312959 659430307 763425152 482873057 534697940 472961977 771657887 830525678 938314610 220696577 933318624 777949080 797086625 666583608 908549918 241424259 611481600 244720242 493384568 665939014 867608484 797657831 963730670 665495172 766837675 864540110 977889205 486289380 819788715 478923872 939343208 631024101 949595621 429946779 703893766 922242843 966994731 389368250 670739996 657347194 716106209 794605417 853488404 389112658 899599508 555718850 583774890 937119387 949775370 971993556 988509701 575463585 828867208 899883438 927541362 54566429 752156901 347820697 625598445 188895554 821547181 249578265 608529723 906966007 980609363 812164553 908907022 386089772 628047019 967405731 973251063 208453590 477286907 583017805 980852616 294630322 818437147 576297948 976935035 70238004 874628217 234544183 488244904 712865312 746514365 187315339 540177763 592502158 637423558 854256945 892337323 26231722 63322281 946172212 948121472 761820930 774800211 328194167 774144622 358843577 720494212 754910435 844024542 271514474 994906838 236350209 254288833 707497340 755424097 687973708 833761152 190541493 219322617 688588089 766427425 638825521 711086499 449607325 621117092 417613585 552796382 225687394 989827936 195306408 460176569 108515790 841825178 995372302 996805773 476345945 624643018 352723935 487148176 337910269 647656319 652788135 953150079 971002248 977268228 224427438 926785055 332597436 618726290 734559684 946638265 444676108 796160048 395967864 755074923 294965573 379645287 214970100 233840657 318850257 869783722 62465816 858099850 538126098 724534503 422779211 682089124 46006352 750772137 387619389 395328680 366497010 605349786 720390742 724060332 146691910 763746802 96301005 374095142 913433707 970330349 60158763 962650415 92266827 399390933 378227208 739592372 292985220 722020266 42557719 489812863 344384560 777893166 184812229 189751790 642663316 653364884 592832519 806719340 488066882 872593762 393448130 959834271 225295553 827166309 727877555 812313267 794480589 926605077 486789077 871150120 603955466 867436468 200771347 807663815 234387559 510575601 860064884 907355033 498952840 629114388 466342806 984189366 352402553 961561363 632413341 846399420 378981295 812273101 337618073 559034820 323968573 340825539 718515751 936639534 375403288 572883108 923066396 940445141 420401418 661608168 970948125 985346880 303446184 727331748 558773136 926445165 652237854 756979328 985776694 989385893 296190918 864839412 903927333 956348992 218618319 282295232 100197370 671209549 746667184 852062008 970532522 984205687 431512834 869447184 765892862 983433573 944033807 985157469 813424162 846941937 966139965 985392121 504592480 534033265 179532606 678464905 968561796 985152949 945030808 960052505 616471594 709326903 252973980 714231836 922114160 942872195 560822227 802406299 88641666 423461060 388037572 837232280 146955331 244020049 651780779 853237425 41988024 613215058 27783222 396116410 353741207 426507232 543099911 685449510 251467648 610286883 812910608 932409588 413057018 642895548 830943566 953235590 613249755 939600779 77362285 391432139 364039170 978710904 13282867 267662068 500198672 682759343 673550269 788750501 433628669 937246224 920304992 960124328 850813498 868400155 743672393 966831240 770669488 945283309 463790445 766594568 784005898 882024471 15573351 344551314 904168089 926431690 814553791 842933640 751964791 941392561 541546368 564243039 205088449 475584251 391829360 665511109 188780726 234305650 15824228 839486384 772713658 787517151 302117300 658985690 678951167 886675194 20646552 733690813 241017094 646508643 763917806 927392927 936097219 998527946 788585347 975744972 616940853 627998636 739909551 996879404 615667474 912756583 48832902 237860083 978243417 980502967 332973382 810443098 641340400 667911546 420998222 461739657 399832974 409631666 256247244 435405960 397611420 505585147 719350141 796891293 774774907 825458175 896645222 972865379 925909358 981605727 169043220 540492515 868968162 915311766 788620656 906330930 11644098 150532108 214011477 250078088 666257097 891147375 220678557 461329794 914362461 975278305 183731778 898449517 301220224 945419433 60601408 597263532 444598170 996440163 625593954 931560844 227262377 929946044 308741034 741261601 282255483 283968476 895652261 978048429 169906211 356585646 110825363 701169545 381351672 450277329 478839157 564642430 716074214 958027518 895349191 929416979 612762851 666141781 213266118 712605749 333067749 983340489 976398805 990503105 643436927 701918493 366083563 696273615 413931386 431062211 12042610 207728969 682842161 881613352 117641948 601332459 298716937 945036003 390268182 799013538 65644237 811504658 335183687 996937295 731277051 742041316 812935666 988658572 233394348 396625090 648625536 925330250 907567755 938962380 97859532 755571302 653845532 717535365 700510196 707273246 457058431 963775314 875548520 935540696 721518729 992101098 528915788 603724911 81384643 735614475 159847942 530375044 217290755 258225960 347994912 725915159 734589605 911741227 971286464 972045545 910207779 929390737 882596606 968472361 54999643 70505962 652627652 709934963 242983842 713872073 672546104 914707482 569064055 806524281 904009423 955508202 354736903 499937079 456854686 460163989 952230991 980600535 782297098 834644376 672022309 919204645 874314697 932882893 612305088 710581261 317212891 734186369 694232017 937549954 181400116 839204099 108125147 930619816 477064956 644707839 494784756 988167625 472263590 476367367 691777538 916339847 495296127 734319788 972632729 989991620 557989261 790920618 406372167 848020123 38184165 241434992 610149200 741843238 772897660 857531623 283790232 372151626 367632125 774930044 373584014 443916878 639252798 769685725 514586109 964576194 152047417 559413569 438660214 880773487 927266381 983633130 747437061 747812546 631063501 834929814 933101418 963927724 409673473 710331652 181859098 273164203 230337189 872189082 737660549 935848858 533283753 835134684 993089870 996314043 667114727 797025788 19436988 669451309 595195858 885778729 102545961 898056329 125196427 661312268 754999420 977197062 648332627 897266332 720818423 761745936 298867397 568677105 294391780 416636619 486858182 536226793 424915074 798337977 27724645 253428440 576096967 697431630 356313473 744264337 957139300 967172568 323640445 835365315 71275750 991468374 32986727 279817271 607596930 853639379 145944476 779245394 97248443 260527526 144842982 434168111 138890214 624459452 796616835 836182086 908928560 950499328 585391308 838705277 90850472 510947207 410484490 496445242 518474377 577482841 170725523 497595470 786378981 984887360 534855710 895621964 269673945 366156616 110776502 785829950 651651869 882949280 339222444 493892017 609764779 861055714 157618774 415447053 667041312 805536862 938062769 948439186 942830886 957112939 412075918 900418904 272258112 358562341 663725431 929212708 98635395 879238687 273743463 611103208 684692543 936593947 898198005 956304990 368402321 421302085 373339410 677280637 738479435 856057474 628231694 943144533 949945409 949979121 489063094 509196223 403903532 715558125 658009008 949185453 890023925 910374781 866912073 954604080 459198609 474089370 177503379 362525309 455444572 564934694 306714808 443436956 708266339 839721790 242047325 528981585 735934543 928114210 666741156 763401910 505665210 872727704 14566470 141452818 905559495 958168268 315309495 839159356 880361506 880365871 374269497 904771976 870773171 904063335 494543835 687848917 533891681 806279128 174776993 909263594 445852086 969357577 345341498 789215778 976649708 993709601 665045628 853805967 936793125 938432774 402740612 850408112 103883797 226789469 494466926 556922252 618562879 922656491 960658177 985848148 415065417 721569682 427497403 516667064 521826919 609849401 72798528 486587783 937001021 988395380 663795386 680888880 572257827 878155346 610412721 782777605 834275450 869886403 757852775 956936061 287408877 352236301 340559781 724457821 612643743 735451729 407008266 747647960 359518181 841663490 759091063 964440672 906882771 949563094 995237196 998716067 417200390 700160674 558001968 783632161 812076777 848455684 782204164 873095231 31961559 579745538 121330816 666907979 363372997 842940690 765461593 865129661 582069454 974156331 625954488 802924726 924677384 950498679 970175071 983102544 315057272 617192462 182199298 349068822 24252942 623914917 439987127 504398808 880587847 960619069 970487417 997416826 936150193 961776871 864028961 964540015 877923546 908307109 802710414 866162578 563923383 743318992 590324455 742638925 184156493 743607946 521624806 720330452 104769011 157551860 607319383 742108313 136347681 575943147 318353836 960971851 593722439 980194903 790068936 855806738 135023160 555703479 346477262 804411798 620604862 835736578 237430998 759804782 814020275 928632384 376057197 577928613 325986562 792977077 356705154 644418639 941391004 997236958 478224839 658619486 82993004 398496729 989856862 997769032 260102276 612247844 445150086 947506689 139855288 720609194 493562730 861736562 917584525 988187765 849574673 930650007 231500072 740416744 262930430 348482044 211164120 405311858 832199515 903091222 480228334 965508164 656345337 843464737 94828715 545017603 396249291 520378404 663357659 767661557 336198755 850570411 907382813 970434992 888270861 995581907 808708734 936423172 671209242 974349689 311060225 492385677 902579724 947520041 292374358 915995682 660119783 866113730 430852354 873999656 331895226 813974171 120824438 840249277 239216187 769686513 972008503 980147392 37507779 126060410 907703145 964837103 724778314 761422397 524776643 775842491 610684372 686652353 811910408 994968097 348073297 672762122 100230756 968786241 848722737 946032270 375296872 965568778 723754022 806752240 934125989 936260702 366621504 846901745 276556289 361149118 67443740 903907010 724136208 844528290 991309092 995316716 692466689 748563835 668838500 897032096 24352830 454734869 494786658 775822471 96671017 549551599 233019666 998185789 47111983 329005714 890952730 961504638 403432643 834449271 62931576 764564686 496279088 560396832 682706168 922818239 828991726 848485310 72899791 343910313 926685873 939226311 240463914 774313580 633891254 874191375 373930966 800286130 208502787 882047262 69500386 542975344 68453959 675189191 160608494 933149957 566592704 940590123 20475428 952041738 108446330 739350891 458867182 533326649 33396331 857895632 148541949 792609720 240741429 853149047 345397177 844885097 593868432 925801332 939849341 968358171 971499788 974934723 804688737 883447049 364761234 689763305 700817479 945710866 299713438 891977672 912957121 984192900 512670771 684825938 547723405 737686609 305438522 951832206 889682800 990417717 158641719 844119005 82145249 827944656 925506516 954620263 566524881 972470585 201764914 238363245 528220357 723926521 693388742 919421539 732666148 912392983 746262235 771545186 58716877 703939631 428386328 582223201 742981302 828084234 275221860 543740726 814746982 936860296 596284733 834240554 986502861 998869987 378543778 409684395 117505405 915396376 964874811 998472009 436009559 951231233 924432254 954799487 286006525 618872868 930962329 936805027 510100445 841100267 515512211 835707997 374045926 885449990 311949213 356330004 582279001 943987986 325386721 769345488 745907678 847819039 109391556 615699553 742246611 880789735 566983869 896151108 861947628 922503751 989959567 995824075 525679088 678364858 953408312 980536210 601504169 966451757 665928827 941519388 129609281 206259518 581951885 607954137 509706957 595996844 615821771 747277325 262405849 738689292 991885644 992212665 15185671 186499797 87280781 633638319 65070236 976288450 237701490 510410057 327188805 948242247 80460286 868361423 575328708 620176305 718217174 734938679 906643860 922321471 531874796 714185751 853752281 884699639 655417041 972132429 500669638 676581635 951460893 969531125 207982774 929183524 655664877 799340709 110815360 932904824 71234577 797127766 592138434 745479952 675765884 759526285 363365576 946595073 47536639 294998915 715370045 864978496 111706704 660587535 336597333 377990211 314216197 558212413 917816621 959909165 502304017 790856781 111815074 439285366 503441109 625142364 626037057 632940131 995815997 997602862 983124650 985030959 280681130 898765735 510117769 591709054 51276747 604354447 642534610 683366337 842975809 950827341 238837654 345990030 454947952 608879245 967113263 995339402 238210362 702733664 671048299 693504040 966273597 970678802 833341487 914100085 663420263 747929467 220074203 282190054 586312914 980730375 723023946 811428887 24102191 55170195 835213092 999239135 106504370 185646786 671998257 846289791 833520248 841384644 9463876 566128614 68782455 945094984 268835139 619028949 288851275 930586987 819393016 870064697 918150645 925049482 839774071 944432557 4305766 854913028 291318207 885397802 843455513 856103569 375903296 682343119 370312090 385136637 609718665 994926961 284088919 360644581 175710927 601717829 782202932 802520610 131665918 357074539 309135353 410720919 415137909 488484471 383041307 746111458 119067692 773515681 395764420 813698018 517580460 528267966 88404438 184285515 597145318 665698756 95093184 169111673 285315654 750509082 434228109 587208383 880523431 943641144 301854352 918162119 993038538 996266690 245898844 515692196 462738020 752560679 386027136 654405100 21526176 686132916 71472243 986164454 765884375 787546023 784502819 922952842 478590349 788762824 384695714 788330544 499216722 504068283 255045755 653580194 637329087 743401018 498666480 637848575 258350171 568344898 469127497 623216718 106740450 182670213 61395296 668617100 256276947 474130704 461218099 545203664 905237995 914004597 875075482 947549032 64298919 241007131 251447799 385518679 548936208 982310464 990035315 994421424 815174049 817522947 654541276 914874544 516919254 619026991 725882478 789858961 421396338 970368184 609013889 629643037 400820019 608542219 635089303 823597404 742142587 896751969 946431022 998358076 636596265 844020405 722847881 991989314 506349226 940751680 666024933 889113028 816970203 935764862 488435410 905461689 527587713 868689633 710642690 748081719 194708818 280890316 108061067 542405844 290771260 909293840 765114611 879073300 20168927 539344481 133595474 619474848 253781036 330946989 280751593 604005214 57210675 662708730 293774399 456671147 494401220 600362395 765203622 827163331 753250871 845365750 440195415 599807049 170152219 585676057 21512492 649649869 294077881 646656830 766122297 870614326 307326609 570445368 380838265 620186389 776127953 910490205 569962113 887607099 124439327 140386926 866502472 979595971 448760759 968116975 350285481 744691513 660990017 869095270 64715736 941279025 345283204 916259085 335330717 511729699 11103362 100815120 663629525 841953508 666515352 826666622 62570443 557805973 110360315 573149675 847328166 921169551 485514715 542401608 529310570 715975891 791754519 914157250 534864503 672127554 709594289 964902935 942544839 979718728 751614573 949686556 245779584 817504719 580333512 902691643 911513274 932561061 628405461 860566209 767474282 951738774 983762882 998690723 824076198 874525702 95252846 950100786 191263242 399487339 257475023 556707204 152389966 231719447 550547451 738178915 385455217 604330257 197478376 733662017 639466861 732548520 756002821 810492250 966859119 997738567 725696253 893900069 834864164 941265840 565072410 679100657 58710360 926927962 884477324 990780588 755139427 808782761 680480884 949055699 220174384 798196484 150396963 925152153 540114659 722627439 635161828 958336680 62915140 820235604 681936061 960188452 631131462 986634494 920842478 953789478 728035353 890534727 503243072 933580764 783781567 840072691 87492844 911735034 592073147 745952225 974876643 990241732 766805898 867214427 21329592 941189112 127401443 305060231 607920843 785882661 868557326 869392466 308762726 753595467 358278635 364639380 404268863 561475013 89413444 495206764 100002931 934003126 947879932 986486757 845204575 903900054 275974688 517575497 763775589 779268652 773744377 903173245 867408415 925961380 69418554 781979017 367303566 646521078 895190991 921259529 461317740 815396215 927658145 970728626 878022047 922057059 252157265 606825683 421534143 726902553 129291488 312684081 693129366 923068278 923328697 969878447 32488857 812200635 474959737 897047194 133527740 211493756 188041415 495143449 590256626 967801682 481545561 609341920 4164496 946532650 189413337 944407992 382618673 388589221 294961791 804918334 684728421 897847035 893797665 968863459 95648739 547262529 227419159 703254457 840265462 974388610 604582328 634714774 660494504 765328375 868077204 998871591 468113286 657289791 704336495 731745637 463635136 576783630 716746486 914149123 484768551 839761199 20476606 333988131 268847688 816482498 923434477 967692117 889409188 933983645 231065214 415935453 463161916 513133598 800658574 866041737 902262410 994096740 523945236 761979699 992524401 993554501 68215986 288833064 782297222 918893167 534580644 562344234 439858489 557870718 425179638 664966024 454503953 893989793 303823369 329989397 639082918 727939448 241294241 723255069 85985068 263503283 1543819 465663113 103007509 352761006 990006547 991801350 33075003 272107809 574500078 658191725 430403972 613878055 382873992 462010589 886088590 977535391 325918221 824692873 167419218 950639568 68617543 268441946 36970847 871892716 929890034 975525512 899800182 910807303 522310492 796067229 515064764 842528725 894103510 948166437 525082407 548081906 158971455 445333694 553195834 933308804 558427365 816368540 334682830 982448955 434319886 544179930 3122368 588414424 696083121 714126340 292415555 607262334 112523966 799425014 184123561 580299564 304502208 400758299 948850732 985610908 836151641 976832395 41195431 789245104 99783392 793110932 961877909 987761012 915195272 977116699 842118495 885252906 538787952 953571954 937869199 991596425 18967493 786746279 790133576 972872273 764381836 782095903 825430024 861850319 391763346 926428678 417235835 908574750 62371075 295082654 894231121 998250610 232547150 827036414 521469461 884576549 16545312 236819725 292676564 696771016 446295231 903269868 271203718 846920256 108569781 186727158 775330308 970517673 886251977 938867797 594455605 676205910 841535159 870895604 649833342 725380051 467443598 935069822 144230356 673090283 761824574 919272885 105442873 216856053 703154118 983163351 180303173 526194171 326543268 575073775 256306401 360912949 384917602 841459775 101450448 366448743 626667477 837824144 446562430 500435028 793174739 821429854 418944874 759800237 966673871 994462374 787313120 793126088 911067135 952017617 630585739 719736480 368196831 756269620 6376367 555373469 63085914 463810860 775173418 917648579 686376637 963771292 401121404 862414854 211140491 484089635 146491921 719157605 773963332 858752593 219845590 718215083 343403767 892784941 995644847 998759989 928379204 973545181 59965028 891939402 491015232 645211853 109185755 335977779 655361314 686405733 679343888 746649874 938595431 954239611 827332233 985795701 442663522 764328429 185379909 689425124 910189305 912528575 348181125 575325007 178494144 968837267 511800772 746994359 214671809 326724297 290688705 414261481 669684097 800486299 977190998 980307019 112684237 952961421 66037233 887162285 915916167 961157040 866838697 970786466 943408576 964283221 840121246 955413936 97491562 143003919 22055800 128231327 538553201 751936560 537060646 965338103 908182187 993831032 534699817 787360070 386782725 895260574 966629286 989036476 921784958 954275335 284676120 619485560 256362932 441687121 216297636 879984630 108251885 452298230 405699054 775459499 825791932 871300335 910430234 918217802 615277505 754396620 940021539 946217816 345991883 745360000 834463050 951042766 62178820 579881655 402418537 879733644 412795934 967930492 865002180 893732318 737115016 786226483 242243331 347397364 13220893 726134815 484503794 625166780 135482608 677026093 898811032 902000359 550232159 753746019 994418724 995621439 597904775 734601772 673250834 821377847 588080409 942134431 125699439 450449545 603979559 649574789 352897829 604916884 134740849 554760950 444766008 868888022 979174907 998190310 920807166 988463096 523081351 845585289 403664382 599460153 936400764 943336843 508201381 679120917 320386236 681743887 571107258 947138838 140696215 845105502 750199723 769304070 860478987 961655064 824941678 975198802 699990624 877566726 951067031 971506105 911243061 964187020 505842285 553402815 515696008 892862047 931639374 987522436 8793419 831290443 661448770 685512897 762263902 784500596 340303204 862549992 961428677 968519231 410749028 531400037 607200445 872896683 49900429 661506860 836173708 977444869 626379060 676701806 665784768 754052464 851279384 965447230 154521374 236703071 153875181 552596795 108955860 254773170 696474797 936176750 493881673 976187085 257964991 429154752 607756173 624128066 866015707 947266410 318964546 546925264 457590855 654164569 804999600 957592188 352444507 452736674 427475265 441119078 914465612 986621308 415380203 528666655 903663557 935178419 144270575 239707904 236765942 375001390 77721640 101105990 473718704 851719185 391715396 815507445 502177255 837136814 696699837 846276588 315000086 450672692 463913615 488133891 147040040 876584008 865954906 989631614 214684149 468121828 301355851 689767831 208912384 403220120 976458884 977341512 156820695 870552771 389061141 790503830 974332033 998379909 766642464 883049337 152452615 270329307 520571549 577442784 713656176 816573081 897441515 920681724 519390945 728383979 831016504 912704716 556647267 753459837 234552938 418206255 424917885 828103808 896150229 951694686 283613315 636559233 873830973 964854159 116036177 889065085 937663923 941316444 59312871 691738077 538343 759692931 593470062 777218667 477229075 560816101 399324838 720342951 175906813 282593501 300643869 797673565 702967661 809110464 564991131 764452773 689976391 800491303 158316895 677396848 189266440 538582292 808414160 979799375 522710671 538663925 291294087 484310549 14253522 714883087 367117120 495622862 219280006 958613141 371130552 653001576 674494334 871450552 787198754 884084117 514239124 593028551 706642110 870400216 459517518 735607242 263336996 688958704 982371503 984143201 986946966 999229819 980798804 985929009 625935610 837790863 174885929 718221542 685201254 690051907 44676169 446001292 766569288 956564939 906160056 925559154 837959683 852360810 136398751 153407962 847710774 973144476 661559970 946574663 447753753 555338857 265918722 875633851 518044451 771100780 193640576 406845791 417411125 448039749 437685325 901013754 601512030 671826084 173820 428370796 768822729 822418100 528083426 883033621 638601898 646153865 193991356 665675545 502215512 979435766 293086967 677727706 326443651 905297689 956635467 999355627 475568375 620888954 950103157 980492880 484065261 996243076 351715542 895116550 498620956 734946453 406682364 830850427 606526891 879435603 415818516 423905860 894923159 991733680 505963511 795804789 100376065 265717867 907526106 961434493 900579677 939248959 123088382 737112611 832035337 950329518 949927175 969888624 68606061 867495483 724073539 978530176 31405211 99290060 44878915 402652698 278910813 888671690 674648454 963394818 627808935 783524131 904657641 973646720 68544581 512826193 623367646 924150718 488739761 788783462 138609321 380825915 744363187 757628297 990964817 991168820 418581313 678332392 123227542 225835367 100958248 638223268 271198136 922714967 421560871 782372379 997605271 998379266 719992096 848909320 573045387 925520859 920780924 932165764 960385132 983393048 8257728 786515763 970383866 977282350 475142360 954485864 44861371 532798450 429960449 993485871 713281538 834709743 235793971 345453646 266551750 977938635 880232431 935718756 871532214 911012800 132509967 152446886 311339486 964537593 607777067 930214070 133309123 335508282 527742061 698480160 231770425 637104912 470305269 624716680 755136162 809026655 598219125 778498365 413276772 996938456 245150986 886102878 430545780 677862645 10669563 355868741 36280705 832422674 644853504 799405899 735381383 811163333 199842228 240077690 767089522 774464747 495553043 642833921 974475346 989183360 703078545 996859771 38415741 796075150 754965622 984815027 167885873 822278355 823431666 932186966 968800332 976959665 597637800 887767211 56586614 702816715 447748503 642882258 358199243 744652726 128533947 455703750 311061473 602695798 98636331 407343599 228934118 923456509 693667313 877602298 786206508 802398910 696660000 745577863 86374806 707644942 580765593 924914494 636889653 811245994 50439052 124746453 332441459 634771159 118470560 891500776 494677362 737002247 358012442 598154173 718435540 988508636 915486665 991529291 210720526 628884504 507959794 824762296 87807423 499143161 532845710 814854401 353378747 483689651 170803342 883780460 664457986 933161642 646801199 839214054 987567113 996889789 593729050 647248376 934284250 980569154 709970942 758736677 676030194 861901291 668744844 995050002 915748382 984872893 656711321 770339650 646486883 850451178 519905840 560031233 35390190 238998840 742533950 992294714 417026802 765085639 316364498 868370455 505900608 795770398 98721205 399293153 748717565 839603608 971725338 993745752 732313945 965586090 461064361 472504822 850513644 906970475 836880988 848194484 681888257 741235745 462534897 672677825 106142029 203653872 132020831 394614413 657462707 790517474 19215290 226600680 431398665 588484818 368116203 815953237 207243649 379513031 649345667 650634540 414644838 483164018 700176554 892334910 87729701 332858045 85978461 504989304 264142439 668526657 191293672 734622077 933713889 943504126 275392260 711528062 230455947 828247152 855916557 940012429 963055198 996479934 380614755 474146743 366729324 371133671 744049791 784178673 668303214 723206816 712815131 784075184 630283023 934124300 672675263 986708562 830558665 988174021 762494303 803260048 148549260 772259958 982328475 989360671 680031972 752693554 820583586 868441933 864201539 934648722 212196737 620707683 796434370 966539907 392507897 663481297 3419521 998619445 909493526 927870651 117881200 638256478 107366998 944026273 785883078 964609124 903137054 939575104 874638191 904379294 610729100 614766486 353970947 834045990 83009833 301826828 694948663 708288777 170471353 602776601 832799450 941827501 533679786 661923346 607313356 615148243 535710697 823609984 691803963 890607841 881442041 921469577 237829006 289010995 449570049 937355305 603017033 756701633 203942763 340008880 156793412 792910090 5093049 750148415 299328241 380960306 773724400 835566660 251969535 853529541 621531935 988256100 855502047 938203485 109364368 819544092 643310366 839299422 976945819 980189392 819990896 949462809 342332825 931684857 798416128 914860177 438058266 481109621 189878415 593556610 212722703 236094062 147139783 757255103 201273167 947322510 889977141 986620073 390218655 396758433 179072600 700183143 411921701 859844568 106085847 740214236 60453064 768246816 136778775 498232301 227149744 439914534 101763192 882931006 812473962 977510843 763058443 952520919 582444673 583318124 892733566 937920972 701494133 910250237 769653673 997449036 370756557 631873182 168542022 412836998 902570743 907698003 294770108 708886658 59850682 463011113 946938229 971512929 910505206 981472976 925340273 938913685 988512698 989677791 649563726 991898645 897223052 934187336 124310656 645352789 616765858 927459305 492959012 744107231 341960674 527786514 57523702 898052915 156057635 233876933 353642541 362462838 464808095 922681847 735394516 836446973 520366262 553633729 213862210 579832249 58036815 267108801 376756461 955067108 877177053 991451098 402527173 712949545 788277224 889107864 270942860 311581312 875593849 886052091 357921489 710334923 617945331 908514872 606643598 779899735 448924288 522677984 382878370 733904205 987354774 987638148 361986931 680218145 668809796 883250177 457585542 950369621 337328415 656373418 623754740 792977274 902003069 902134433 819700608 994255702 64918157 220957689 665659732 793073460 50168638 556743091 618275752 774195724 856817112 922422654 481002221 971612340 990945849 992937104 105236375 611165241 448851213 575952523 160137995 297114419 373974039 656396163 899772383 970633939 689060527 901109310 196211822 761605947 619728099 742698795 270610556 870119423 97438429 385000509 982505553 989490306 79573500 352732549 760921379 823082939 538518812 762381186 173169608 491731049 879099657 924269519 677097092 978053174 324803488 450648131 322077042 565012849 421414297 604152554 538560247 800871559 576138609 877052731 244571809 469630665 398978035 748892147 27974675 659740954 251395771 638142739 433770135 962603378 651908853 981690637 651130269 978929599 903148618 950538005 101308935 333417265 908617418 944958044 727347325 965026549 468155391 512931077 540902567 541807120 71885228 836606843 896441595 937979339 930430257 936508072 497022138 531005359 841849476 893191241 63281023 395737681 16536575 159116715 809662907 834582499 80328849 160836897 382188323 509692359 112358630 657588612 80408518 809839522 151678926 855549904 934429066 947232573 343832923 839124886 238443514 990193686 307068805 314683312 616048770 874433445 203995948 309731068 515054125 753937435 536998716 898013211 45763762 254862423 76873253 490456045 297908413 685373328 213540592 424428870 204903190 647849537 186267340 731554172 983926547 997539600 46080583 519094018 330185820 828057253 567651847 846965637 632000569 927392489 590060711 802662669 187103917 629601368 333874699 938374627 436527333 933221544 44193451 794629922 369184914 800714383 930973306 968713987 417743880 774576683 673081501 698622366 493051158 793797160 97732398 633856732 530541141 996046349 565928658 881503028 224679013 645068881 252226641 356451068 6568161 386410592 906132044 915388776 333114239 431787822 264147143 708553991 936615663 972198892 860352743 922628679 97181882 227018219 540296709 823291443 678595346 992513624 761005532 773733563 822518486 930234133 481583138 877597945 733058607 974515503 467044991 507930770 632633528 871134713 235709263 545015190 152631591 687032660 521685957 746328876 523627680 592206491 542297391 600631965 111849908 995183545 21181427 718860598 477690813 717711654 69207428 639764945 92950177 488386919 674330562 689043760 924706166 930227924 768186549 847745767 929632779 965342092 117020946 525958860 828339599 870486515 723007590 842178604 888137038 936418552 757345982 976853044 51301444 707506447 21031309 134832681 602810154 935779063 3783298 779686334 735108872 753805499 54262794 607606818 863009197 887642769 755200998 942555423 106708837 673037786 425869020 665453989 968463827 985842025 962006108 992580135 504681827 612500181 650214805 904015604 958981292 980874618 367712768 927323125 430044914 704080360 518834966 576510124 945502656 981216583 672393765 713577953 993517937 997584438 319601935 637130678 933047109 940421953 708421858 781157288 791681031 818700713 156430712 691082325 555589436 917640534 821106052 896886037 426439716 449846956 147355068 791078530 24050646 237032556 201798440 466864814 757279392 985068517 310990058 601715392 878632467 982800841 862161661 916118527 67088690 946594561 427302006 890137446 788963283 920897901 792417101 901434094 867434211 871092801 679580681 739484776 904592673 976194052 869808334 974542848 571368832 768415042 139578399 176874961 602416284 670044908 615313210 753371847 839771575 877717516 310938169 319628481 510675189 596661591 619539035 701249968 484395221 805862595 836237962 930324974 155958850 801177240 86235233 825862955 838287647 849111036 938131008 958190120 469336621 729035300 753610648 767553924 709941873 863135335 870706534 918014613 14191035 871901153 165219902 270927764 541281392 747378155 625477938 706493516 591600121 660997569 195158370 640640358 858715638 911050253 185781020 189000873 600077760 656421000 551039423 737581680 452559395 900223072 159696533 812578869 215703951 951766926 613592542 679942529 333002821 495972536 944276618 991210647 798292502 966255131 688620995 957512431 635920334 655279175 262336846 614774845 539811948 650602132 251544979 583622539 263614171 577620921 408337614 678407646 405055892 784771886 603891334 728195639 911145956 923523477 114362840 195766937 662902421 736845511 757767616 813310032 651665127 836507230 301003269 760365667 565298889 827909209 318493575 820630674 515849255 793715500 167268497 664620192 525914031 610857195 667689491 828174976 47398632 128336293 590228259 979801817 548936634 706545336 559091645 964115659 899242969 902148108 126418775 507296392 956419781 968088289 467680537 606310475 374038755 647588701 540372798 541499087 223775310 544927787 516389388 681920667 28607344 842307125 147611413 678457670 679768974 880736623 688518624 873516596 803222700 821099072 7148967 406633168 801022031 966512367 109295443 448725745 295163819 854752185 231360405 402174595 90056928 110801107 853754256 964036668 436386084 824027336 991955451 992879374 977331625 979513112 625949103 839185713 594791324 964198919 141054830 589864835 830217419 891154028 171738174 470886444 898910661 966341929 731344411 887231231 676448057 746107660 587364630 732513129 2763213 761428721 243359100 566161684 320619311 390324994 406998151 435575860 136530688 612411062 689533883 851478042 515017886 817519639 333515477 837081062 414826605 443427366 275034970 897375533 509683747 713392170 941591882 969577764 459101212 978922521 41095009 188636167 857541500 954571762 538242346 682770586 743167289 779677035 992232331 998594493 925528067 937913089 73069048 101456128 112791573 425813335 14252849 166156305 530391451 870285047 422144154 991852907 427534071 806595190 246281162 930095863 459857152 990272128 477946501 878405796 175408772 176196330 276549077 747321142 525091089 977363865 398015295 733539922 307276789 732489786 248579038 689542408 917746295 963219929 675968171 816645976 183490756 721763865 312468916 727653756 585473199 643137613 12657663 943448818 575180 906133350 920936893 958029323 713219470 985295342 775440186 971151307 23438740 373613459 489291343 993026770 120327008 381849906 773812457 854569600 565728217 833644717 602849036 998819892 179184939 463149963 214831843 354514467 60479058 840893763 384483209 618678931 723271070 958750005 263601764 729494573 759637871 796538898 882165415 883001192 943060492 979883975 64523344 123651648 971425472 980979384 686622143 955428619 405494176 492002107 299766414 967100372 977550657 987705664 978904642 995247853 128354235 860332542 402259978 925288414 781069145 834734451 162250253 275450609 610561342 734927926 1712497 526265996 628018721 917273975 540991533 547678253 67611984 75484681 207306818 814541063 785092511 898554476 750068147 838152470 774388769 785195203 141711013 512856004 610613128 730677229 744805470 836005218 136850285 763080011 314199454 907955954 100461433 905994831 993795511 996269535 436499065 960924077 45733931 113349491 421590318 707403810 750830336 776379595 296038405 783951600 247877947 276735893 730008302 880714003 361209808 771221510 193162882 345436477 395038966 672998436 94636940 673500268 558453979 689906309 795906811 814051787 88367404 554757184 417575434 953288379 596494106 601398823 374404207 965075869 189817627 333937508 48028446 791373695 511101654 988133850 474947100 793520449 245866688 250945161 558696447 953958939 867616576 959547609 783391518 883933094 728964340 880183301 396238528 420298638 341125942 396149806 948849438 958786287 500509196 856614186 612412341 949693898 316585268 874406311 789290380 960571204 653241979 964161452 735065366 934215982 379348311 843745298 891854689 980166108 135239840 465386144 814143308 999143033 21149144 268909443 109669322 788965517 882871005 888782591 375741782 977263888 763488922 861260907 231408823 625503079 928866865 959002884 508280942 670055027 443839969 645461479 857918953 965056815 545222745 555746458 337077512 871917955 979717125 998256712 918097020 920288766 646996580 900772341 681586403 750183086 613091098 953892969 990916504 993384316 548639749 922852477 558080592 782339245 551010169 795624899 25392735 899922593 707698676 735700785 844372253 901729813 701814910 714296202 369529117 624195753 501968649 983493421 151850657 777448055 676228150 751339213 906451175 909494355 170226548 382630281 459053989 620322826 897344529 987934651 534170383 610501707 987572251 997256086 357590301 432205387 598015878 896011158 840389121 909426445 38168997 473818964 388363456 897677767 662462236 788564258 968488956 975893552 507836954 983628921 494572133 784273990 383646383 618952253 997939257 999087665 457591777 668923136 751183601 978613633 872079792 966121799 722090707 771300413 182997145 224465429 164280136 884119766 239656152 367105720 871949702 945007517 747597064 762973628 894660585 953405053 535327513 763987619 724466724 737817413 443213342 596027168 936834520 943682044 861046640 891307230 614238376 920486540 775647024 785965706 903098723 941437054 457681082 687710045 690883577 787128412 862093111 877713639 11618342 128541978 389103717 710900568 82971147 786622988 600563186 947043297 96581663 372078904 910030869 923684487 309122068 397915872 98464579 709902805 965653468 966712540 477513202 870402582 384652415 871651853 836715758 916610713 287165057 745111608 869999036 899839780 333304951 355995813 610520286 748991547 613552278 956274754 527143678 935690054 906239942 993758108 720806594 928312997 279163577 750914545 545963632 688097325 994514828 996476853 732357583 892343906 478060553 961001114 824796005 835475993 405264092 772321214 120143137 716743816 804196659 950352473 166870805 319148638 481914567 605540008 253710481 847932662 2200531 271582782 711228519 861306994 431820140 508548616 48332657 617722971 799716944 947836649 760117796 764344946 248322317 423052379 201031861 469282477 741905908 976504096 903580663 910375959 792802093 831664031 182831532 950303228 204841041 782600429 990668113 992005705 366287622 531700746 731900521 920534366 173600423 702425522 560696091 728013921 411733991 886903436 679572142 835272513 811994110 906920711 241307190 647273947 6288098 439990021 218262210 492163717 62598897 448720684 449158925 809294263 394480924 879731793 761091775 950015278 537421138 882108391 410451696 728209230 207547910 209590839 833560106 890571182 309786288 315660035 800285749 974377985 383967014 669389962 403508715 932553843 693998944 821756677 460137731 558216771 35695696 837750703 727136358 779194056 101047794 468494719 838644815 841095068 57869398 235802292 185790915 372274427 29430410 828032427 416274926 480586513 312230081 448353170 327512988 729630090 655945108 705988629 185622244 437415721 463558858 707123470 783680385 847580616 760764544 775289284 419023089 538590800 110940166 697347885 257793525 857808922 716280788 718494118 682219776 754523249 933777250 975680240 128972296 929839326 635058413 788241459 446070407 907230889 103052539 503987870 84947194 632762853 313358647 566446081 285920580 494804878 266692459 683452558 226053762 374857212 719310134 753170375 391587098 742522755 629194296 801342848 394430887 421646551 526816208 809947061 307697637 795448673 439843135 532161363 592381689 809601949 735386541 780073864 62824565 559082805 454905812 828687852 881060517 990616913 80958898 692571657 348802267 889906751 918071201 957336882 633564877 641831428 584846705 651234682 650294679 835156809 785016066 914704998 419948496 645022689 186350172 720618906 550850854 970599156 648818517 829473663 707803560 757525617 401886177 871159899 266506938 728041225 89927069 230360439 487027482 753608480 207439067 964006358 823193657 944353470 835697563 843505421 733481013 807421339 763428425 786338007 868140189 910794759 286712582 386136246 593957054 885817199 419661330 482330221 13712074 255204903 278758313 678006247 689203380 746300035 164543517 566054487 34267664 937368887 762346300 948817428 759764936 813435536 379782252 983165555 358740271 610476258 94732403 802555498 16491738 818029304 597485916 720456311 980103314 996865906 136557966 311372728 511871965 657878020 13040709 671954762 728054334 809211392 631689541 747742801 182506216 581246089 594290209 953239570 528334992 763732860 231450936 969869279 378398106 947250474 677096158 691487633 600558550 651864737 421297685 571632879 310222995 732726168 73693006 85090954 686283139 916515107 727921443 866065646 808370649 821158477 827110448 964475126 949963588 996061448 373242177 666201302 387785229 655550250 700281437 724425651 478500182 553258411 981962193 998163978 628652794 639827783 360831686 973626941 548593314 813450919 336296459 366096903 709598269 821737978 956591838 966159037 962085104 999281704 194762024 584285244 6916632 582626889 601908263 896797354 179839274 654301221 947156547 995034896 203529186 852957960 695116631 706481352 325872049 680733826 898929461 935132024 84190220 448646224 397688910 552105699 110862257 826179139 481196278 776051792 981355027 986750656 748616637 754220867 148447554 218124447 981150278 981189055 208849088 795455800 623117249 828069534 713285095 713880205 369345373 597223348 883523084 980534120 994982331 999270609 161799386 598689790 988032681 995229748 684794999 946487841 206520675 242285072 675224990 735544133 512587604 970408090 420392610 855476974 872343540 928862175 154233224 807508631 903168094 930953757 805326479 884753924 505611912 621349569 659323270 934044437 73714888 438853908 681636032 847328507 692869675 693779965 647226504 910924231 249691063 272962994 444192531 620088840 38639999 263584268 39615928 600691244 18906229 363199759 89412963 679542168 851974918 962429508 780250296 935670761 898950089 997089969 620173671 936934236 252747645 819756530 190263606 432144503 666961359 879172767 828928124 881840886 535657871 695671343 86450317 578682655 788553294 809854118 167678205 889398461 182230554 185523418 493391701 573984507 991222346 994023514 393621706 540411174 779829507 997576607 513380193 817027881 912551275 998888373 296750431 991780678 491647195 759006658 791360167 987648631 987607949 991122423 853466095 985088116 362166192 488143824 252222020 667448483 868519765 974439833 834717050 980079526 272368903 711052208 63510742 671402794 165066296 610314050 887294758 907591522 392449539 401406741 204497540 994215620 992904301 994803224 726964995 937150572 343530817 695106844 729695134 855588885 449385505 945334786 810160827 942990016 415952182 620487027 21243343 582301054 784928390 883440498 502456491 714394725 390415326 603989637 34402420 110214771 521534288 633205769 633264796 965944917 554136563 657875652 129123987 773344103 197196003 332185000 846541156 853715962 335113216 724564291 695135969 894125889 956468639 960784978 100187060 937478096 847557564 891966166 590671666 656023698 729796720 866620715 188871261 876434505 522109640 652188706 454213692 557075353 3419657 419691538 357630604 545353750 576658513 854971844 756586995 766049215 529779342 991913163 240857657 732591643 346040918 608585025 987914517 993757053 888404152 969423657 514933603 636563825 352552443 571159362 857382857 993475350 13851669 57365469 224233661 381578015 212809717 996356568 279075764 411847263 516731489 629517438 880596997 912477348 393019200 583583141 307338704 995343175 915218809 966853521 779383244 806276799 642736754 898693096 162356738 234272735 524916053 911428664 309221204 677281294 955832802 960178270 387884546 804157791 140378077 867152774 341738772 897566228 325243909 855166492 440082772 870823957 748460438 890545702 568283374 703660699 838620594 878908924 14464576 80549233 377402140 611705080 232516797 277468997 601102383 936297139 856472560 958154642 213470996 575758217 906381982 944872610 616870180 930563130 538697080 897164196 66130552 796728850 343131096 563980051 982179571 992753541 49295420 242859087 54352937 55194005 376111663 393666114 550098784 561110345 483715036 980198836 559211161 622664741 762910332 861571946 666245247 976634482 910369256 989723570 374887901 465792258 433885323 813804787 820874287 825236241 866445199 990103139 359031481 675798104 906861004 939810404 825561559 913152418 760210841 878682665 765894949 859800393 716145049 776237331 203348515 859953762 585980273 981891026 554337208 613573745 386677863 471528973 766762769 884688005 329970391 345744730 759999900 932069601 478164930 835617746 409046328 688894057 385510528 750306494 275342791 522111887 501214605 685729668 452882657 661519114 527893670 959562517 523045018 822974679 787117397 933102602 199197450 991317949 869725527 981042496 922190408 969380718 744640714 761703803 24309502 745656898 19513205 293367721 574685638 821074118 193078848 367597523 650243872 908084438 319544127 649292285 970035719 986011810 213198253 341616292 472557952 488727148 542089084 648694147 699410314 761420681 854623675 974405570 415184468 537764782 183696560 535536803 732259839 804507738 357627012 753263837 162888480 768426632 126592875 724650230 673064856 950839438 867799862 943427786 649352823 713863995 275886767 630887017 21847348 658825276 633201224 798069346 223502235 640549135 174187704 471426316 724288700 955825247 120200253 550861432 791102607 881075373 37803199 653062438 307372537 322914635 8030176 861692081 836561680 877356390 824105018 831715674 662239954 700833145 400070255 896664759 672707035 926397551 494402474 735919275 865096414 913102891 291285244 991808506 551256009 709912373 503198668 743851823 420732503 838455773 697946635 734552503 111060620 576147942 643731237 715136779 170185218 334320483 829358189 857640672 619002344 979683820 504780934 864626974 672251985 819747785 41638152 450840199 501727491 548771517 743725690 814001376 223998135 540895345 655440058 680233283 751765162 916360375 959124912 981434782 926526633 990775533 763005655 904876455 33270506 209770181 533301065 746880757 970658844 990095333 990682619 995681642 871498627 976877187 861892330 984908760 374827863 886595730 221731135 997807212 915998272 990078415 436621512 867022215 876134495 916796274 706714549 724440024 135903896 786295485 93192063 471882744 506597166 732969009 932090946 933902148 761025149 862662251 524508228 850277696 174313625 376717997 439493369 590447131 847953529 902399733 467914807 595043773 192199685 700878141 226365307 294455637 974737081 997569070 984136190 988472435 763874654 953491737 845953856 904545110 299736151 819513178 451183983 684065434 327696098 903901884 769265044 824459698 335127913 374775289 424584390 801769564 249114229 295916103 83159138 377153819 571239737 642986592 640242017 804045111 769439010 932395938 778526838 932331295 195450268 256935671 647605312 934331048 53661047 539608090 244573452 754692646 306152124 570235440 659270151 804016166 188904415 443448437 951144077 972029157 260570799 779259049 771019143 969345742 79648417 736212794 61818201 168121341 15931560 767147908 478855496 689346461 928002341 966818134 999383921 999386821 3581175 347839437 411263311 808392720 546263558 895026994 284397605 682751921 222423660 487513143 219170776 287936830 202698649 753963212 278179244 498208106 623549077 782464256 851263139 853450229 713899126 745493370 433069835 703512762 632839115 644667435 342686311 804187969 933651638 956930100 538272713 678548940 262358694 980989513 147601911 740440086 835587089 884142287 377795418 868730761 256123034 578458293 269698485 814198668 953669082 983831508 811079655 985185017 824719418 957667639 245586355 647655993 526213029 883141768 147969243 667590955 774611544 882939225 32351575 616914345 891383157 968486047 462676157 649634708 116248305 978863940 150830886 890825430 164016898 352176015 228961264 722470880 202745244 853869921 159388406 699427385 259301771 604025200 654867582 862278316 420306639 909780934 284664373 673107169 928415169 983351047 631163582 657732866 576548395 878086120 858113259 973294751 306632158 655933474 631091102 856551530 433201707 651433544 577642854 714362002 978048557 984116738 47263642 782280945 633305633 854290388 750664726 827214743 574978610 875800126 401949003 716134989 826496088 930047900 522837355 982119542 736194199 748568976 113574407 897751146 143202213 751696220 570429002 671970429 638036352 798789973 970561099 987572936 280945204 319385050 34626099 456765447 851934975 988938782 575485249 937995873 349228262 769000626 103368705 531348338 615988249 653083054 186359184 448573992 365264280 744451952 505836741 964807692 768495588 884602486 850724756 891099677 737219296 767144978 284153941 713224874 435932026 569034996 55108507 119817902 430741571 633100050 262304499 462884791 342886188 596520436 514426940 655463175 894589349 961591337 573091554 947358652 607915088 746153949 409956808 774397681 539614774 924522491 210611997 464570407 247921691 598172815 612290932 839614473 801202255 936597893 609169172 754229878 552474642 970819608 580635804 951195502 618405158 744902888 925186834 954137787 935646488 971937755 191741123 690441763 243782247 313921576 396846485 589609727 471198810 637021989 104969329 432280037 38486698 813074516 523760541 584237019 806606409 825645080 927289474 979117217 45812125 903155554 615845732 718667720 434019920 668399342 234866800 475363893 151054675 363457254 183866637 959961167 997908283 998415006 163265356 904073854 172025980 483995194 212921037 644809111 771675534 928616329 621189764 770025722 592139618 618593337 215504472 516052932 728925550 965702669 258456232 879136239 69644155 453544121 360021824 753420580 453834361 612219818 876771220 894132390 945671633 978510828 662542524 841137554 768037471 965954014 140407564 600689909 585903349 746513017 728297333 811507096 944545885 983441456 447318584 562761332 333073559 692003497 950378964 955706200 269249443 321114469 798767605 960461182 706747086 855389173 394281478 954900316 308864444 386516064 72871595 553097595 795932483 936206106 252275194 490092357 422715883 936529799 502148220 618480809 582070878 921679754 210768554 435548435 612053171 720704335 408225192 581401123 158092312 689492231 105213072 168991199 441561172 540853806 665806427 752721319 485014711 765436325 670659941 826827164 780814599 932648658 167498488 418459835 422117971 972879979 614114890 674096501 496321153 881900445 775536049 958622870 90838388 602136448 595803963 908415466 761260910 884492856 966637913 968553935 234535175 364772516 935620533 950654048 444103905 693536673 636890185 869696525 359776255 827245781 612171451 921871181 832541136 904327587 542303557 903501947 320167673 670057546 108596958 898153721 841014187 981491939 339866362 821999997 652652541 669596687 236358445 255998826 740925290 749227276 506405675 815470395 291761876 396172629 358979844 973575175 865522214 944950133 31132847 764159673 20016660 830431130 580445577 803494942 245950969 878506652 364857316 615883938 36436055 842095759 36398721 131993646 462184204 849254814 855562371 914892940 887775078 936758142 574241209 743402943 141472879 155653653 193400096 370710525 394451324 636955186 392127095 536817510 85159462 798553431 29665340 761304861 140968294 162705998 647862338 809126598 170332918 721450905 580098559 705473277 447839134 467099875 836264385 882176717 110765661 466664056 775428797 954116212 683744255 848397306 313721392 346346011 465992629 846412667 701495272 939727285 411247796 943942145 253796268 532429015 712594949 804630443 198668031 894676893 532515498 858687357 864429803 962141218 568386998 843713986 721567114 851786260 926613309 958169325 59344323 626774434 7888602 977075964 301031893 357543433 596218856 890852068 537966273 842924698 242679874 431312696 676052048 820306865 328941856 971171973 376652952 601992606 768422897 990610871 389030841 976495097 287003886 854792329 387035955 838646514 136054257 747209332 971909511 981851958 149369754 690722021 433165265 492032364 657314739 673843934 415833055 756852772 234651731 962207975 323532168 996360377 523580573 924615049 859446277 995769679 412272424 810327319 42296074 153255398 332916376 459267157 608199626 884633668 211214030 240668351 679289942 748617149 544216390 646677954 510677165 725025130 486165909 915828109 957882133 979953893 338090488 783783924 722026821 861299886 936897443 976379287 614511005 891759024 378808834 390247881 162829952 425277663 830727467 868631981 8461797 565727158 39234714 227000601 283835878 963684401 710409369 832158009 848410016 918451195 306616960 661802624 550149003 792148694 436267172 761639485 304112438 411374146 43874972 609325261 887523306 936151981 17395869 977652670 801313311 834881963 524734610 671079683 802417664 912095396 736093783 871429212 459490051 865740279 365578957 414202797 698591060 997508646 282717466 858371376 736525082 870612929 870736231 998206199 617685078 782412092 321993008 987864823 234377553 935695548 646966920 977461112 438414955 926255819 492765313 899214576 567497891 668878443 253830056 443093842 755107687 972467386 289047663 365254433 616593490 633482529 838474405 907473117 309306848 578286085 120344586 870185279 430028067 750178071 901391447 984078282 627856523 854949968 365008454 692646300 927522838 972686681 453696825 855207465 535714924 808672148 403830607 776134299 514673004 555695714 499209417 642104235 590358193 814071648 822689080 873775885 126770798 389561995 730147446 968175959 855274089 899383669 8342105 296719876 285953159 960894329 816868095 921935682 55652949 582980836 456608529 740113730 645346912 828070716 233922750 273661005 88416166 115450688 849441899 946842660 844651496 929730033 60309875 910524872 131045154 758450324 16888342 898387062 518100544 955995403 703746656 935824147 816031159 967618905 1367167 892225092 381780498 912688509 548822025 838026474 465344155 757482085 317318679 921148192 171544298 288510186 636545943 917060835 279152224 753010326 656827996 959811386 576545131 646996289 862891443 925329237 128032804 301170780 65687540 191167779 869743969 962323873 268628042 745097913 350855175 935960098 513054646 854352191 392482936 774004862 463162835 621909393 7968601 389644500 462402647 833968034 483267916 617377333 787552227 964515809 518607236 809500868 118889403 889745562 465441521 807063396 135444079 418601126 440499404 826246675 442372805 884466211 455455053 833573517 570338009 666074821 108047449 458356702 199645390 854553051 522194780 991294394 884364375 932586781 986568366 995781535 661812420 790869282 277858145 710657537 445952224 964630839 176535045 942058296 562688270 885229383 582369426 900372455 383848647 682487668 779184701 825118211 570326954 623985103 166735670 871887111 507701943 873689412 520617668 963402507 506223970 520401009 195776864 942776290 967660435 989788269 812125923 995011824 918566409 993347350 263505405 952738018 944055101 990991772 965616953 971344966 159804553 595257491 591159743 714607241 390357962 568843179 159286826 492631989 71995291 116573269 591897803 968450182 201773736 410288077 516038581 851911744 206503677 917295586 350393018 686976444 497017296 805222919 878957845 886864244 165660440 782229996 648627028 712258712 414039993 616065795 615391193 925557860 825266960 944947169 725587124 821836397 216950498 987396503 124992375 736095780 344306307 881150191 467695170 686891965 725314183 775935264 1046453 4581407 337982668 690669862 307051306 958921210 566391839 819644326 505742654 666225416 417633010 462585818 874461157 992624180 998530028 998845417 789410760 941743568 64340641 304561931 130810935 573461095 361339668 702417605 934791695 997652197 99733336 942777717 219152759 994397130 915663497 929460576 735289920 907333811 894230483 994381628 245342744 900381673 178843487 629048665 584373147 877501052 932240416 951287958 186126967 235482678 595207605 867154581 657304154 854675438 719344315 761239323 640371316 938879337 503913384 820875207 914306277 962065691 575639792 635272447 807945202 876038157 961574468 999181600 544604888 797731691 262406303 835248519 926155760 948667912 598691508 699778688 441204914 571885726 351253179 764751056 419073352 890545088 499163175 843762669 568714258 721959391 564485664 991171940 615952438 796417582 387646738 917983844 485861211 947272800 684859686 960139090 21039856 863791771 43705587 113137795 79286658 657787628 572303279 943827444 979249442 992913950 368599868 622976771 468452950 800040516 372748692 563828358 392605840 592844107 896650512 933721205 632754853 894390336 112142168 846280910 281400196 295198262 401625097 873972928 573069971 689054241 658289189 976270900 201487231 936465765 886667079 901634194 720807731 989751303 361811787 876016107 824466103 854450785 33084924 965256654 297685414 484540207 504481046 593382823 191219894 558215318 527088363 731414350 79819817 544053324 139988084 716662444 980905393 998938346 777630267 826369758 936022444 981608775 231432601 751840534 772534530 837421700 450720577 744561638 881863005 943664608 372812023 785431360 881121659 977522386 123959759 211481758 453458641 820620627 451193206 642573425 557464598 614909028 173900047 313913845 804095743 927757338 34242629 939543373 651120902 761385391 490513940 577132116 841855935 872370547 169898767 472148099 536842676 773929650 291228639 490857403 379500160 441469941 789661772 814511787 823113138 890339858 46351395 977909822 857732778 973341441 3714058 253192060 5034866 626055741 478952279 486794627 250529526 286048025 234399803 297174377 281411946 449946703 947356617 980846157 222702129 452792006 983258536 999128142 73097997 502191612 117543426 947476263 876147445 922244861 195144980 812591508 559842207 590073038 467694102 747385254 863931100 949094775 933700441 966606656 179882055 802585910 364522854 736438165 28164193 991009151 861405741 890702373 140778589 596644377 231210158 394083590 5150922 180953000 764164531 857258012 695312169 995429818 536525369 843718056 977453480 984022903 635270515 986660929 335387440 696310073 139529427 523313212 807732713 852158703 160137350 484513274 830954247 880153803 533464314 687582694 207216637 612908773 390417744 537486276 116060474 450793895 272084202 806011602 318787603 933050586 665849577 869691907 939682696 946400096 695795883 816740894 966529903 992339998 530378554 863449935 172974625 985872494 898114897 995274661 967602208 969087029 42557658 983539864 342827639 405938420 594124615 812619368 688297347 752703732 217126087 936313455 930147341 980468911 523712872 947270768 531418810 728273477 175616778 631578531 821452648 899743988 524828689 589190100 746181918 965757802 700195434 935411012 401076435 604468672 536808978 989880132 486126049 971041008 879164968 975960519 505944586 851450282 597456550 641913537 227689399 635092205 820169294 922112865 447195228 661920554 303284011 394671245 324607175 467757618 930733109 946826459 689184426 877214588 134752878 626054509 838823610 908542298 379650265 834070564 362515150 779155289 367311496 374625834 775176646 778461022 539272213 635639398 277304921 299629996 783990713 897855883 468267602 813997356 875848808 941329726 310900529 596467950 977335590 986854677 417143829 898827195 833918024 850701320 966921558 979028926 575253207 664384895 477869421 940299179 929823735 947182000 602167115 812512571 789725062 810196154 552900767 810121530 272058240 414522890 969718641 979896458 599428765 675884795 437693197 548993481 354705561 396606514 770666657 958065108 145618898 637545885 699661472 850805661 408873726 488896625 698755877 975874600 521024643 877566514 798444360 872546002 431742049 450029198 174910058 512240461 805193296 890052495 938409517 983225995 151419834 424507347 539703549 702225410 2942892 328015867 522857536 820758986 459475634 736356311 332413465 393260605 612050568 875547065 279292054 839328689 639896201 760316237 714537906 803508913 878844866 986597686 565989550 855889283 197253510 283811177 446133411 807497410 992431467 998162624 846851740 860272904 53619532 775289021 150131390 426167043 179678011 335185160 506158534 559659991 987532106 991562642 7833938 451712792 253269933 451790839 962065251 998045424 665241824 757857596 672023373 901247918 843804886 916958989 449738165 474939161 774748084 937379705 416595056 746758281 604687922 829612930 85139069 120913622 566895196 691118285 79163563 383356944 582844546 944633428 60325064 309796439 825751259 919091084 839354241 977845331 856498211 969899802 580216078 617760056 174612103 430830245 433724050 550912424 17828299 445134840 911768896 987298686 51232075 775744905 235884767 807976202 790302618 875329114 254322978 530289592 380270236 619533557 67667688 602508217 19723894 322173599 57156168 847544225 595652917 842059875 959596864 967253341 250601086 704588311 116803139 476254826 674083470 705292212 678429115 710925430 507540384 748957829 342151909 608745563 938398480 991190178 228970303 929001060 655205943 907000473 673022785 933875521 891756666 902833231 56726821 794894477 200848755 835348284 175651155 510082364 821222323 923561358 367774340 717404251 662166037 914260860 606324909 725923986 124336521 809389010 886739393 989296018 86027769 99139132 407654677 760226563 740012118 972608527 492235432 585474139 271784797 349113378 449518545 617523641 960752560 962080800 794743894 799854771 380552833 916849495 777852428 817253096 406984788 763158503 363823664 881781904 909933643 994444013 319140510 329700388 721104110 728780572 893065825 947600413 393072268 437929440 759084005 876660145 324727671 508256041 590256026 846282056 414089182 930546287 180824482 919946117 25566169 853614959 616161086 947164235 871195799 964804225 600467344 662604984 538542312 546208425 767307246 878639988 80212587 881839511 494368458 616170533 734776010 769110817 502530010 710111368 743213419 800593987 118782647 600355513 707437899 938853725 22238480 134801076 423890596 643650969 684601407 951417100 954505936 988688894 529918747 601044220 846333969 899276333 396809764 794706763 577080397 871449326 78487441 693407258 750741918 911787871 20825651 47619109 680826994 853824020 748633962 783150829 702627003 935618648 21558869 523456282 651870110 961346102 680796607 819840890 464832195 820857454 430223606 537056663 252949291 689879970 633460232 688515674 2505237 817227973 806680569 854634036 726830204 731653265 273145553 931083957 531698789 593419225 817325445 918343616 554520870 821397268 185244840 332216766 873181730 875805612 76819335 102924774 166376648 232286769 494019242 894069023 27747614 581203433 801897360 946475345 850419411 930382929 895666407 919242758 720273944 983435580 357305686 765457188 950697469 956820765 324480990 398227669 321720784 846121638 586843941 991373708 774578625 904591335 860316831 916774739 662382603 753599120 197733764 745224256 958126496 985889145 575304604 808251673 363940906 909527832 873842095 925719095 860405825 953092923 642954550 821648720 260064079 456574699 108537427 705522735 609726246 664214558 737182926 856377829 616536638 974026398 752550997 861973018 432816752 765183388 819652618 850780116 72391669 277749206 348392317 686191667 443637557 786904233 103125363 513368227 873216459 997821786 566473358 969452403 544820138 709600181 268288816 421387884 921020678 985206540 638873743 739587281 666566830 743654943 119822022 386919530 139187469 953826248 884597608 958817805 711668930 977816851 677713676 894530648 151455480 556235846 537381575 540471572 135766050 177169346 309886925 550020405 549097033 573400481 114202939 480591565 617784741 818648879 586388949 847202371 948478438 978023361 913484774 964727867 221886701 300561763 226092324 333659098 985522307 989348123 641430207 697743886 727070243 743666123 274399415 446020655 270832609 772074137 241856805 991988119 103632797 134422628 389017768 464503937 552570698 615177207 67064397 636944499 506703495 711159623 809303391 995150213 790706599 867452135 955220449 963154450 32280351 112722235 756603176 973018381 755418873 955051066 777788377 890300767 126045225 363080471 268308158 393200055 350150041 439839551 667357837 855590980 979957275 991725117 531081673 938784361 358540267 912623499 760180282 782232590 598945108 913125453 826121956 974877052 819069797 992684132 950276243 967537375 539693999 781917070 437516993 891622722 553056581 684478064 446342509 804340470 853982919 887172220 116300311 488288815 694266989 834779638 704211631 732594980 604615566 872179868 985208713 995025343 163313823 964747616 477367620 663750368 978016495 983132239 97705298 467779867 686403752 975783931 228124832 791819346 89682508 131385255 291422253 297520869 710654172 914125466 260924652 650055409 269368398 862258351 465242807 865022523 305528369 864674126 142107442 509385349 406307685 567494291 492496094 942659582 152186221 345960728 24108076 698089110 200411512 323315709 810718548 916990106 105944966 318402464 791879475 985496596 262131110 364480521 880281829 927219382 677042053 938321546 277176413 839244832 410678855 765425127 186456626 710159094 508634063 552906572 501061753 703680078 708194642 731878436 476020023 786132245 749913317 751618474 239221962 370658499 332117356 724934017 716089621 814124384 464412108 614749347 159832171 994200863 293468896 530057691 776126695 880537673 427574743 755523697 919547956 941072761 444419623 828192354 576274105 804969418 512893915 690762800 282263369 808908894 820383726 978583800 724565089 850467020 255783249 848996488 901887223 918137395 291586302 756491784 289818052 688894165 7890066 730655697 595081188 661781541 857061951 881124189 605630712 997882292 543517786 559353424 981378191 990897358 139269915 191669940 731416311 838543407 889807367 985757842 914806545 919606387 135542377 259896605 725697676 931111162 10454878 280374532 827474876 935898853 837829572 969312323 185886429 433123815 685002250 977247491 299884670 327856365 716559325 849933213 344780764 596998148 368313936 808273395 828541970 950809007 153635740 931243358 101551027 327014383 43552336 128860638 831612024 877736308 328059748 906992447 44458971 76642844 762041832 938899793 42185090 768717644 629111838 935370926 561803512 961687678 483846332 730954443 446595771 454281210 781079260 908801385 174429999 433122557 545776326 657245728 453497287 600825447 232118157 238246188 960335072 967379748 570717825 774747992 676650417 835945103 957516835 967677656 588826573 897262379 605556774 786571707 93927850 604598278 203497745 370837435 448876895 583954763 35909217 974190722 930332670 997594793 980469401 996779639 132081818 384425515 204783623 671154259 873140188 882969728 369033620 941939355 385605071 548819265 221100881 936347445 939281358 948032581 864045762 952292149 689080244 691673526 510522085 599089325 773099344 957451988 851825864 866667260 974168289 986607697 303966521 388143356 121940006 546387598 58297196 218868959 92987446 478520258 481036507 771878175 740620033 745330571 10290585 178038748 690511578 976823136 737083143 861950408 561995119 729047120 94151628 186225981 309288206 624815675 241620340 902753859 569422288 820211213 319017350 974362216 46689330 112328580 414298093 502357506 112223252 966685095 655562202 726670180 342603171 373296107 836265971 909734063 990422003 995618913 822320471 849830067 265680853 628203289 167452436 924630033 680184965 787335335 205781948 822639508 317418788 368244672 541538760 852323294 724886606 945812510 51861069 486683953 304540359 692746840 776641432 982597974 654113061 866149431 763157159 883877205 666003886 962984356 468891933 622135651 337055785 743196164 45692249 127417899 130479959 772013494 386037387 955573875 851740394 911799194 973612747 983990867 387710248 953552598 73183292 887544265 736495976 981093069 400147494 874801436 290744941 912890226 434519134 597902202 163696799 350093903 434202201 551929000 467717068 794683155 679345786 830779206 653571508 653692090 534832993 878717374 997042459 997403236 690254914 942815689 173179313 790441851 628713216 641314496 525088396 994894614 119178848 900770763 542688455 806649411 260903671 480741352 908099971 945970446 958258354 990400770 405250004 470666581 350698317 768517970 649809747 666002479 889095774 982083048 136344459 573884231 969927977 975487796 739908753 772028549 440097105 798775484 930098990 966561392 277420258 993361240 490653025 901262678 937634677 989992012 561635294 885064043 609642502 848382143 658341644 868422399 756237329 902708460 146814225 501107821 69910378 713449410 75587014 767893377 429574929 810082898 530948892 677955544 484069308 850597246 320379053 755790498 924906296 968180252 30383939 661951809 954023708 969074919 144487031 586945210 87798850 826845802 2695377 566353723 99491376 150265517 177302703 983463056 984913448 995469186 408021268 689284973 753334516 954267641 222197118 348962092 230923407 535100862 996502280 997619900 331798576 590901354 363084529 793130094 461985167 994819850 878188400 960057030 505640367 988831880 307446385 763612726 556443974 918543521 399590953 684273281 878209308 965833162 820301570 997953354 601684853 615456736 722854839 801175087 376108089 494196979 851179111 918431283 939164043 958814077 936946942 971070370 900382308 987649984 135579668 566841318 584699041 636841306 886796332 951699876 902924760 991727522 326259701 850288822 437428003 912263872 840549540 900008789 480109794 486287479 564893675 856302573 10449198 68361230 997801950 998191475 747550409 982865446 818791132 922539973 946994636 979947654 327845539 635923996 992222990 999269214 564325637 693026758 3381229 211874161 894056376 917910685 760333494 943971494 607010748 697875900 182289979 552022048 680275895 858864885 164617571 386565055 474251015 725521622 349906782 881501642 867765978 882272149 792697688 886966591 781696744 784048868 425425837 449522465 599623175 816023416 195874712 952675401 359730607 607317811 852883082 894913981 382044206 601707767 530328250 973686876 129467755 659750161 654162386 757348591 711159635 990440283 816945841 933954974 997043270 998696401 11348724 274268881 513315756 721243549 194784927 871586153 26233440 425566512 486890474 706234697 838493202 974329171 146262564 747401723 664931681 871766766 126056626 736324108 792077383 847082531 512436166 798142095 171518474 651134996 990456899 990619832 706841338 774893772 219484554 314565902 669421253 779947040 997515446 997980896 747693523 826648770 720816736 964947366 219136929 697706344 607985653 658426640 801061491 936380827 1294953 548332945 32567593 148948054 373082436 501108602 856724545 975537126 62829049 657457133 686074829 792282187 398816198 525491569 151604921 508819455 409964447 539263961 989855341 992716400 760348153 856086513 550503329 637157468 297261703 307435967 762959509 926268579 440846258 953033006 719908504 895284469 268009910 583187568 580731156 862352600 108025607 757494767 812695041 926592652 323725226 508880708 359897401 903245464 926373038 962846919 640751055 773742726 159714752 345458855 147101040 571400813 121333455 645732784 232906367 289424423 251547292 449043642 187384737 736721396 465913122 901407480 168651510 519627043 243573082 326709999 705579766 978604264 756432199 947054940 426442640 576059358 816730969 986996869 816818699 914580220 910982407 965690375 542728892 740012455 311795758 376335380 473324713 972621505 850261034 922633798 291761701 636914218 886259988 942570908 962967467 994205435 99808165 668151187 127920652 176798411 141688995 870133266 364272681 563904743 285289610 537156858 93745504 158879871 852019128 869055351 288914334 542717794 295220705 468149013 966871968 990989487 357197774 493324479 397648165 857031247 780402280 825242890 50734978 972289447 81513521 325305969 221617693 575049382 702612270 711605258 159441872 889128143 42588940 975962771 266429467 604244864 842209839 915099258 694888591 898623925 421436705 676351828 528477113 663620683 687301634 935218800 122979830 805577672 249096491 587199484 301985878 342393948 855285791 889805612 51258799 269327086 488643757 772713503 35977849 927211456 223513467 551849364 608409218 657211478 288981893 821473052 897045379 995344693 717287886 950380580 245695656 493386632 97184890 113697213 446630584 568683445 492187223 938002177 481006033 732510851 78814347 430960204 638064775 797479481 102668336 223986156 780148663 805097281 926156639 984432944 595527301 709677141 909242028 963647265 82839519 713233548 733182714 956322980 22457803 494087486 157422468 943037144 117527519 976292110 116498239 914795712 457764838 597479601 149375706 801625906 815639263 884234164 346710480 593190326 190496185 296081000 122642607 292418691 973018863 987518785 411644764 826294796 914576385 962818980 367068923 508998807 402086103 897449287 707739762 871414234 655992107 992152568 455210677 537176033 739757049 826037467 963907489 998554318 623738836 700634247 681898851 921829010 259992405 573322639 317472096 893453541 446532086 469578152 423001757 683857415 835789255 991961052 843021834 851782203 496393166 925418860 763152343 821799487 843020748 949929964 769723065 806429626 858027593 940349453 615669569 780035991 23442653 276254750 31524925 315085994 729653278 820441560 820859154 985289533 156000927 242546949 604485433 878413760 282565626 377955835 442416597 558576893 214250902 346339730 799717692 853278303 245995989 427115176 637303940 674913215 125992080 488421231 884725757 992998882 883578002 937490932 873143492 976964640 811979944 961149295 715557748 716587506 584618472 595680057 425294550 816091559 325753532 634492634 830467271 867249438 637501475 701274356 363805831 388178304 378096180 416492245 332197370 557643099 852111191 975212943 756331714 760075895 515737248 713777203 465233421 964213841 43499904 446679620 57145845 415463044 268324007 992017379 607947067 758185357 95401815 136608527 563935963 872144428 118320898 274993274 511731574 762472706 954846698 958207242 370183667 636333943 376675506 774401931 871073642 932087267 82412432 111249711 7361068 755195172 886952200 929831447 877995336 970255596 934870203 944531630 891849123 956424663 557943582 644046424 659754318 686906280 647778351 793021584 867729223 882721344 863554493 876737149 984675843 987049114 602988923 644771500 201394373 409081679 116757250 128360959 721522658 948061357 630908003 676416544 187475757 519089873 916309002 968379594 715973701 916877984 656894519 872220175 617140556 639821482 694245656 830960011 702507877 710179696 703032976 993334996 413628371 827902599 409349568 868591573 848429702 926795213 88302863 992302839 469087891 997765026 418492373 573612237 560337827 644764300 18566955 696843233 992669684 995324863 965121620 989696750 927552010 990162053 274498358 376510653 768280452 889594271 488327360 904058552 342343827 928695262 974716187 991919683 484558135 514822463 820316127 963810109 23450363 232957205 448185399 577247456 753986231 991183722 46011342 776430375 551298842 644586337 458643131 978669473 933724061 964032586 875923276 978109163 393428562 867980713 512606236 592326624 337284327 621621232 255782640 436039818 190699920 739437229 720161825 836510537 240006114 845466608 407031097 436532639 418234202 760381406 642160372 669903570 341840430 476852383 286244419 775394072 755252369 868704420 278838258 291990978 280857950 891831201 896387897 965757458 231665373 767039883 129624782 702635308 153868739 359216409 380576462 448585491 377293227 790403171 445395573 450194107 361024012 826985763 820978741 902651570 571355877 616565444 372934632 520912056 788450834 918205958 567992608 574831381 288041518 778698532 517267891 730645557 775258925 983027201 933211572 963063136 110672645 124809433 364603516 756978143 79079099 849113021 736221436 974876743 767437008 809002036 573882051 988241078 956573339 966499409 324496865 435553195 413867587 558563250 620888819 888830159 692069427 902699809 121533819 946391923 536143948 646186422 23426990 969588564 58701053 324677894 200360545 983244706 82273858 189280781 938647476 994646925 593715713 735141391 372514064 478265852 210221326 682649283 781091630 806394172 688972044 885981039 158855701 344321256 645985265 850120766 738007089 992314301 597419819 861741163 17522785 23962616 122279415 713385793 274082436 515331559 45877663 485517904 644429217 797021892 686248736 984788872 641535088 944581543 625106026 913585989 494343072 998877275 417205924 776379511 961324099 964186916 529449480 876045250 664919889 715646448 887106586 991284542 301554382 570835318 110102358 637577482 651802137 823795409 388185339 996796527 193385254 575353444 285013700 950274883 386137223 618429088 391119129 487701834 296212068 910977658 409501855 447326862 63065854 651860658 264718073 726010341 560268000 662924251 385846921 406810781 581613552 584918957 247717664 998372433 722704244 989067408 864293212 997193538 154504034 218467912 831543548 845948430 530220509 686488663 661999394 841532767 397848049 460764389 349447745 669676548 65130417 318274929 857185414 878214690 336106640 340724810 214699024 962206410 277119209 991432214 902667461 975171154 434495805 981278193 849577066 861056325 694235599 708940284 305227641 759945156 434882445 917466678 316350101 864231954 601058511 854892403 540581160 971172273 534149748 912730354 502671922 758586029 898828584 923475074 386614854 450683519 279116625 440718173 269115941 973267661 346394919 961099177 67360943 841153014 27085329 437438072 574137576 870323896 741314142 907587123 405280940 498744644 867218622 930233460 966112066 984763985 628524013 814805689 107065185 387460273 952080282 995482197 171067630 221309611 590440277 706097154 188230055 290458214 116374552 266140899 632048691 854719060 256206707 281043343 143793445 246481432 162273262 814877444 577808302 813270806 969774759 976416639 202219501 980186476 540666610 882283811 605762368 994203119 456370772 886334282 921445434 941667435 741328530 832840197 694680141 932672399 464559081 522709576 756876877 918637640 49170733 617845758 185262931 842065475 199520087 675442597 114692348 442446059 306754381 895696707 892696475 962549349 404129464 602188369 891529830 920613106 351429443 567232855 393336774 538399911 928555963 952157755 142180414 852529804 765355881 897363012 48779471 358098637 348372352 614093492 104822595 205509920 898836565 953026060 925667888 936479437 382824348 709663169 703092690 726260580 151973006 544749277 580032637 696672869 779904876 854091631 661296651 982015814 303441734 345240553 197099088 280118137 171212087 595092395 682426127 824030296 458219541 555238669 284515185 476797510 785536539 927767841 746207614 886622254 281563571 536992210 763383436 996858941 52841815 465323639 469486433 932065492 750436972 792154401 891241305 910690043 425005598 765874953 861417419 960323406 915361153 952679446 308974622 393906759 461883397 919907801 102327954 972375038 529275107 662941702 873952728 962576000 424458555 636909981 224682548 438520707 538776358 951338974 860371792 869376617 457840519 683977541 903651362 905312345 765723828 883040370 418551375 489356089 702745238 725004979 532541575 733774811 514747566 565307770 639010653 654219992 713469274 918301853 171222170 859343826 829516611 971380030 232791714 500010876 877523323 925038590 99533726 351944396 15740052 270135822 67431835 255475238 497074707 625092691 537213656 940988168 645002616 960444315 268488750 567781384 527074267 970005177 15627338 769532296 641750727 684145341 870022108 940217552 950976224 977634473 114467367 154087024 978821450 979477000 426857323 886955489 872796655 921920387 916544587 992106772 627160124 992227207 106256689 322443201 830470860 978756551 743156029 802116683 573760695 741009088 289648580 618064210 529898072 922075333 307085869 630088917 262090988 480486994 569264476 948570724 730694377 792687863 538860148 975576726 706465314 974150059 522763196 770527164 999219763 999264285 907144858 961546392 919074023 994689824 957857714 967390000 320143790 609987250 289159330 866399878 125053445 306457644 27269839 98331902 694412834 955673333 381972498 748198677 2309894 699844652 565808832 834563181 239754284 860717863 901673376 955871592 238301939 435112772 967033241 967770365 231776706 935607667 381993661 429102614 607603559 850736160 196733179 540862740 179824295 730348681 897206540 950514484 222954306 389491784 118875302 168702947 601924688 851557184 877937012 935220400 985490012 989986582 380319630 719915167 343743866 653145366 131510145 364707613 16251110 830602113 108925084 558254850 159397366 542409928 475556837 497887635 335872675 971687517 456629848 808460857 213251089 228214992 933595611 934232490 38162873 197890726 221656201 402762662 558225431 813385743 727259019 770147321 18812562 889956035 94100038 240806055 393325638 600249156 585586923 736902202 610545531 797352304 48744976 736663617 370266276 815937968 187341620 567480125 24196460 416417473 918204357 950815398 454412810 932345040 723215602 892073953 883924273 920172326 431255367 703266252 779288656 828005449 173822574 485899267 131673526 545000633 374171488 954249118 989675897 998485962 442973030 639252747 149224709 903288589 350337295 594986256 268595356 611008802 6082025 986694932 692301070 934513182 161910059 607283159 330341571 579598446 783955723 838442569 236457045 319217887 347221547 643283308 155782489 392926897 177385928 296498533 234063605 375836051 267365543 737108082 832106787 861440875 529551973 649684720 561575719 653582587 497762855 645334497 331239096 978466702 207332672 252921945 915506156 935599878 796334988 843387796 173025343 368865948 189845471 558558982 523721286 599152106 703937410 785083477 186001075 405103229 247382708 717923880 541819411 786689909 488988326 702594412 592099348 810544484 207615563 374247809 131233024 504323618 739359324 954518922 713991522 992576451 561873862 704338066 280565031 618360258 602867804 791982717 411911712 985734870 128601365 461516096 665800414 916963863 441351419 479596722 255299788 577182013 878009249 982948452 304951918 493731665 641584895 713592115 334483479 958199702 545710061 639274334 207413047 959374111 905660306 988662306 916671606 954492760 25775933 514294568 529179338 583925360 863752178 996067754 962527346 970061378 865518991 971173809 623769519 994260919 139437601 675619792 696623314 893910812 584294524 912117160 891578086 935003822 769445481 807967719 212591376 945947358 902368769 991259271 626720049 993289736 107182065 627717094 500180302 956857574 493687573 718814623 634730917 683559091 942913283 989441373 70268643 517284282 597863646 895357422 767131329 988621094 599709680 777991676 582480545 857249355 993945156 996577445 903680124 904659428 166868430 869426998 920118699 932756741 993645067 997901525 938350382 978991375 343593361 722197352 757198850 934147645 796288787 893731349 749588362 781813100 712795750 900799574 951863366 957380931 580858514 838658497 754859350 921537494 599207642 813569309 443603931 866906726 885102009 919964735 776922313 821495248 920360593 931067365 628303704 722726347 245745912 636190923 619819828 807516262 581229232 601829017 905885483 983058507 546397687 812618000 380891619 687079255 350451368 580241723 267582880 592012394 340879809 891942987 568967548 852604030 667851222 857728345 801001364 979300352 896880067 951621740 735201213 852529496 605402545 915336239 970464904 989482392 597890132 978876145 723789367 762810472 400613421 770389963 430250203 462762504 707974052 926138756 62682305 151153810 640406616 728873990 375303654 606680960 287886802 969217991 603581712 658758840 248937614 846845391 468986121 660651733 622190950 787641426 454909315 924923573 626502308 770758383 616217772 658832266 29379747 185789013 469105083 503936948 936589501 989685829 946427457 994590215 377938063 498472305 166943109 709803672 465763825 930813104 547574761 557788579 921185237 993241583 219405990 684623379 890416295 913724117 80719277 373252766 499445838 677881618 883515124 928304789 647437807 798543305 258305647 812124316 288552829 642114133 628447505 794537808 197472387 680523890 936373564 976048945 26105826 171424488 454449259 860417323 452366456 635514204 36752612 439296821 641681083 878608980 898536473 900833087 38481001 581575126 275838662 996088830 153986280 643333665 656725096 796004369 819484909 948197640 752552531 842270742 9628634 808408535 342895432 420846891 923418087 975066478 843096748 882216139 589027165 925384926 899355030 938191561 230249678 402872919 806343048 974147040 112446903 480810347 994396755 995033487 733436289 982619736 590608388 792745268 106657070 349129256 557241945 649570823 153849205 608636923 151452888 728441867 241661021 640032010 951576876 989389698 805421389 901649837 761808968 769146712 119415186 522809266 693185029 972541246 837344082 979921061 131811439 325900000 693644839 790316147 31538457 685113134 283165771 418786151 41090569 277574231 374640644 653554694 88311036 426849290 709005678 832607849 731587731 903418107 980271341 994370241 523484924 792340028 881099485 967665968 225142072 497482336 19714954 974730085 193718677 212927543 731090793 817251263 179777206 969748691 278286984 757777093 232311321 293521954 916180582 964136299 268778992 841257532 845175688 940286424 897137392 904920932 822012003 902709103 327408687 786914612 538588254 716654226 344247415 818875346 16560462 304643035 80022840 475622044 817509086 851417369 253160866 491820666 845595736 884059507 337495819 918572961 860935401 918528009 887885251 925180665 19924602 955881787 407348272 435933681 881992337 918486472 588555228 865500947 22043878 268578889 745647547 993573761 126298982 958397567 400205557 846249654 51417730 442436492 168966244 174740689 444024271 571661052 1104956 796179872 798080301 923151784 869531577 922072831 86116254 311028558 566667810 860749642 353353508 609426845 481794322 703639949 140031064 334579107 111231480 301432449 820610830 974492609 82812834 604110111 698120285 814970138 20641423 934949275 768412337 926383713 557634211 889712099 431770587 868331182 360585496 530146890 369037414 777095980 870525237 931592111 714751549 815416499 789981394 900704910 355785467 703341642 756926366 922323084 431450569 899627621 583446802 876735646 378062874 850424689 550365984 966836486 11506029 273371844 559172862 602570452 101854058 889104934 591180485 993687973 699109644 975480911 977058243 979489753 485947571 553065307 401006599 538234934 725649663 791375266 565018679 770935176 360914909 496130227 520497692 975334491 252866058 819063865 435713041 439526005 348671185 477730825 359480135 552774941 490177299 737256122 819942251 850493716 46936572 222822366 853380170 901604263 139204885 344466806 836456664 943965258 238017454 486936100 667310317 708014807 984148152 985718972 867049466 874096556 228165461 709233185 517060026 689303305 532542546 734557920 703420028 905559907 944822250 949493329 381413876 773135673 571830730 581294813 517353580 946485868 930021400 972532418 308769143 737471924 551992137 986216886 904606376 964120084 322083531 592245402 758649039 817288406 393550238 517274889 202742333 918135245 64883098 544459987 884732576 905993503 30628844 553723886 966892374 990775312 29678237 921954745 84720671 919192813 117467380 992361385 683197695 734316200 17158671 443871015 814445999 872124105 866535642 988219006 310372384 946372646 44318456 270732702 683325163 927700825 964258605 994345652 575285606 756904512 162961483 850272908 574503652 729825881 773342535 923559997 117102744 220288035 181070542 752924297 552279199 870264082 680941284 906141280 811323379 812336584 326268292 790344831 264557515 976256996 517053533 574368544 17917604 604102949 492279272 580224917 617473853 773228935 197851226 263636321 326677499 926134049 948128043 950062405 929313739 969045527 415443014 586268865 41379887 90310569 467866140 777895008 83751749 356892337 613547815 888285760 869828748 934614649 498318252 828851514 886720446 937639438 30766127 935225719 476037920 796755823 664192115 918748060 668168528 912636453 764703071 977058627 772970690 858584758 935834655 938150413 376901652 446068445 418115264 589737662 702977043 903311470 429620354 958731099 228449772 510414695 427525016 517524619 174309845 453194505 775964107 820298784 144663988 649479983 532350501 934571237 444445228 974832916 326154149 709252030 814335780 973735952 45133150 500621297 257593457 991096179 61098251 252929747 934714233 992915632 945457121 957366907 477957187 600275965 627258812 763357126 172933927 205614229 187572851 204664045 594579674 716168439 960232300 992610176 920052938 957699324 230446423 827598250 538023894 639785339 563356584 916075293 265456467 849893383 66288006 360928031 748652089 952730845 304308243 924816214 236252146 490544720 219031603 558230377 246211830 390914488 483067510 509777489 313176 592418106 28086577 905570955 655743191 725158817 347200562 686637253 17096242 162645712 567567561 980434142 977811660 988991059 178054331 239781087 488943517 647680570 95591155 795321423 908692603 938481694 58205058 320277698 578661599 620154228 665732160 676185081 756810917 766815463 163654138 755665361 464571653 991687719 636317093 682666158 974712051 978846670 388454013 509023093 228331194 628520313 864579862 929700363 395017146 948314161 652608873 916878569 151594904 156118442 800912812 923039934 453851144 631319963 696624771 846180359 156480912 870913228 785746467 901116324 862004883 911603974 393772562 752155467 890052727 899399905 936419667 991584639 748159409 783554638 679800870 725702839 17633623 330254063 822561895 905442390 900538440 973011470 935129248 971605063 17495139 163335301 777587988 979112056 787226568 957348522 616697372 697333549 873891510 960285961 352144054 378228885 503924185 663710600 49519420 897331386 726001126 759632108 450477438 598629173 936664365 954955822 767823565 906179837 892500946 906650045 763012221 859395552 131552191 941734273 962747163 972485927 978262547 978728798 207290321 795108214 396958972 526051591 120315743 410972690 294161300 715324944 983749996 994545417 90490 196929787 522977257 836076649 140172723 961664976 817678127 895867123 121061881 912246621 33776285 93761910 269557292 811187602 400690236 481006533 320736987 405528276 318927684 949497535 584342338 984251377 996999632 998624004 881168227 919415142 623848515 796252977 900753976 939334123 801126089 872675837 427533860 586535861 509998725 774762448 160383673 728526154 461589496 607584542 818437926 975511891 268043566 600411740 268750039 312762265 707122292 833058910 883392054 921862755 106385349 130234940 282354806 858632476 409858082 877368539 209520667 281770295 147723720 873523907 593680748 929459297 759958750 940681376 806952269 899802592 216148362 861684620 371807378 512102249 485226173 832608471 514130798 784744947 66972047 782947644 637282936 990420367 312697488 585735649 723841473 815703429 263475242 783403270 139665702 198641598 48777944 462491089 604935081 831040120 756346179 960624393 281486549 983990630 669630526 940821592 968043673 970424298 744123598 775022086 597989485 969858992 286660185 887454423 850372145 919081112 499066046 859413482 580723287 634774749 860760831 887518835 507867913 933596848 342685677 667030343 610082844 995209474 170642726 741365973 284022403 519565957 734849969 988879565 670807462 813040810 661392507 757755707 687067676 968366629 774968225 916185358 315013886 493597393 28978671 243570086 753516590 908957335 133346288 678099301 14225579 817621014 868388435 958704116 477598889 986702034 373523445 860981382 352176742 897757033 248880385 811572249 288461686 905139389 204495117 411056382 728327779 861645348 645138029 856603058 886340963 964239989 189218794 824154227 211016460 951789991 469223670 813796238 729456602 989311866 511610646 977344826 305727237 705421551 549582181 812817923 121428168 970913246 803599487 963199701 367885333 987347172 125110923 954656231 613764230 680276345 676054164 861506638 854914314 894985696 463192120 732221038 816004310 895100057 94832555 536298563 592726824 955197148 484089796 583518659 704776677 922857449 708758177 989955228 535195234 905614928 682782226 695468860 863761054 988195568 275859591 549446428 620696598 820289720 183674490 614037492 182413575 775469305 75605041 518777682 391970944 466743842 85455061 984689547 545256232 828768396 457460243 855974414 201888461 567990481 45048548 556821034 718335628 959621528 920690072 947185019 483363410 886265444 849363301 950385332 212984478 243767365 244410364 915763560 240000030 915109849 304023786 838889638 589778970 967748078 302884201 470483279 415324167 701266076 146537219 565127989 862626587 871909743 46003954 677551047 366627495 749309837 412825259 583081818 913839815 945744710 702797146 923197536 338740011 907589290 103502360 530745386 159783813 817857528 831866793 835711710 438113944 649146466 750164648 917143368 187481954 310863727 147782361 975127091 407434885 557903007 353262235 652977718 64657463 785725080 20782986 894283053 38137848 778678147 506878292 544799212 762375946 826134124 97930660 213050061 295900933 840140829 113791555 219224421 13404793 623022960 964337604 988494252 574050148 736102727 647084903 647357479 253240940 682698318 132569690 997149555 295644244 660266936 875269528 968224833 594792468 960622103 656102924 927312415 353106334 781046192 678233769 900245935 142138042 522508526 355301359 829158933 764275086 889985370 960290864 962237667 422380646 680267219 699653863 917736212 792730182 937988174 388900578 535564337 877714458 921662273 550811263 979381208 300331875 324845318 874326951 879191447 758805955 921508744 502290649 627526955 638446564 723412671 315376398 694046491 737543718 763881802 220834493 427782012 76985290 178339028 710658490 842846927 816876088 900234289 291605929 638597984 941855593 963543835 231335242 576782654 760380196 793784459 551181419 611953322 667967622 736595070 4690641 750253968 137013030 977244867 1128731 73265123 114832058 415071778 463961958 520304224 914820683 940648250 812806316 917680942 609027445 844173676 764811910 878511692 276498775 616471260 803313839 943082054 533853713 850180367 74341236 571883794 557595562 668993032 181467142 213261351 942072435 974181942 829949125 966063113 193514955 486170837 154375058 883572667 69730225 665983411 277689601 738127077 698975546 821521227 543751000 924528369 199813987 725423406 791688141 901553618 168307250 232770997 870853639 897897498 49675558 561595547 849060881 967734337 136172839 286026403 918227311 954877687 832621990 873382497 360962172 718897201 844425638 993984072 239547607 934735749 238930447 801128237 844267543 996778655 401338747 782957153 849600808 977113768 164517415 643779887 350113424 593328353 442018728 878009180 390804668 613758733 989391756 994517766 117384555 564839481 837122336 882985615 407187604 472605454 940242383 961015851 298430617 893625229 505940119 824882391 246283152 671280092 877863574 942577538 710097185 797014053 901966347 935337382 375979847 557785017 455487249 490871349 808162351 839953555 245993798 738913343 12457921 742450117 249960380 922236199 364334863 817025970 609640490 722836356 827624866 945783163 64813063 336225305 552420545 785356608 826822145 907178750 124464255 620914047 438207574 994359155 18870195 986779246 183063660 768826588 380833235 424542015 461984932 924447606 471584344 866092936 639661250 762867181 584763326 635615596 414359821 548589965 842725690 910884065 580554217 951069405 97693730 605469628 250822484 290350396 461692978 996954561 788444114 947977853 14572256 800380053 919294362 941209319 183157994 897562498 115565922 550081785 486495150 973260164 578209951 964947145 780903134 925577317 147938539 710198468 283879631 565694667 777498618 942052161 146746171 916536977 923925618 953036112 942628330 944823682 248052377 902037875 911950138 968300815 307189515 424592482 837359910 895838318 3742302 396411473 80353326 772410383 6761433 762799267 617726243 817770612 954791931 963134988 523176549 960111630 686208407 880295046 653735731 665006540 15797869 898637290 241859892 921154718 166677449 806826497 48863555 565288569 175189807 687358777 75681056 835486039 563020050 600863739 216221368 684289794 770109553 884014467 66188134 941201996 684622782 853402992 215490107 974968291 438069276 963246635 321494280 594716637 907315402 929604137 783163052 969361029 205646566 573490947 335240951 481236982 446943985 599510375 485006481 490102241 8687006 112528560 875380753 909736822 757525164 795731310 262546295 972606917 920279925 953647897 495380292 688443179 54934739 541143942 437332019 521010645 814393436 826490654 424662846 494105603 744210929 835272418 215280604 968565010 929034476 946637035 951666761 995054498 877461796 892163005 422592015 647779251 332355068 702585517 511752750 542639801 625896335 677027122 754983241 791102933 416145513 451021326 976038302 990348092 55777332 938018030 47375207 743615098 541869670 893458877 796231197 898819455 760157953 886046459 795201423 939112204 26399674 766296350 323293145 855354605 117629048 127960204 494245995 786544491 199926836 648437626 460934558 488851025 151069856 156200391 692018123 889907803 413868447 460431444 919572561 949554709 709510730 895450068 267358370 466577721 549262350 994914004 580001002 726463180 35037050 718615614 897685023 915351168 586140480 968628278 137565108 601241710 886117727 927734537 749856423 907013341 973029050 979039315 25880094 302908196 155184078 560535981 738989423 971551599 67622291 873612371 550441734 826037637 431729200 857234412 582876915 691473889 834359265 967543774 927360556 966441316 876273844 884788894 105750298 936252378 964062596 966226487 173849559 407746152 440072407 642362110 991528887 993018808 873316979 996633704 492217228 739640988 856991804 882442987 214764088 327238544 652717928 781387481 490838307 720110535 272881514 933714075 418629903 748567788 452856496 777113815 211377819 378669105 977676940 994264235 129860782 608646013 242730491 936299074 784389245 811800200 688944631 895346520 531819157 596682007 883298822 955177696 511232233 729546708 124717242 710887996 972388971 993365093 294453878 834458429 923712883 989325114 814571204 892522237 314647806 534924886 363679307 647326906 121698018 262216012 99020800 966045305 315609720 586849109 650194491 896084111 384853441 778505308 922670784 959409213 743435281 821739591 646666145 713769697 302390377 541995006 861765099 928923181 30409182 606457320 808587088 861643676 419896207 686749127 259136206 741703931 679889041 973596127 782500803 849220239 143994219 351357598 698653816 908951563 155565563 779852292 931099951 984057304 758212233 892726456 579551480 581990718 21102765 670748853 794579499 842956249 141190598 446718899 60086081 769174385 587011605 911149696 412920479 607358958 741886371 974265538 716978367 888209132 843903776 997106386 769528985 841317935 213117617 404770251 464310878 600477803 946606554 966367096 71393480 342039107 979838329 989903404 395931228 492217078 994828733 997773759 370186728 656903432 205430015 504831575 376410376 760236737 236969347 584032353 291377684 527984239 260062885 968832843 884838745 901436898 661167864 691161460 916886036 983196135 1597941 52098796 670770898 936875005 9783253 804194698 172548183 958114218 270278413 850160037 600192637 889676278 736236596 927843503 702421168 907796187 998915398 998919277 897077457 969460331 423380044 515912292 86043196 387970873 373475592 524642214 86847816 275184370 169375123 478452386 387700484 803150359 992078727 993389833 43252891 670302783 842338811 966521694 648771155 736771122 394373234 480719029 956270822 994592413 387907317 903867530 367310926 789913883 271860710 634640438 341795487 366496979 791037891 946229144 626869609 799111400 927317561 998160579 993139681 994190330 618429137 974826481 88170473 917183844 412842337 771077354 244289367 858307650 930405253 977925903 746103959 923828651 781929537 918668799 719927096 786554288 889579892 890493680 365072116 642092774 144807675 796872531 328077488 353805182 646009790 662008125 985763675 999302236 302493132 874028636 687359734 700438797 514528377 947761854 69174660 597541512 415655055 533729578 106475969 273359397 733122041 960012384 993915693 994191760 491308369 540114917 196493770 832427082 75882609 131586325 49069331 615378573 829940115 916715170 706682701 930580228 791252516 903230817 871827016 925245275 144570028 958431907 498632721 636561444 345462523 899977684 597806428 718870517 796249956 909754766 464056901 638006543 482965466 771868039 329589119 858069271 43127319 238030314 399898512 970760291 839762655 923401723 732988470 899777159 859512513 918881782 528164212 663295003 795184780 949355117 199525822 461202465 371277315 995456287 83646102 448608036 871553942 905930590 682929441 950374570 206682606 859833009 447787591 861900039 125190649 827933075 815236213 843888221 724265243 886216419 239372008 438968866 69066057 609126770 581355533 679910777 806936496 958030107 385434710 672154102 638330081 804772089 893119120 949983465 485906198 525632772 706964146 890300787 879699548 963211408 647085080 749943476 302426906 629608421 376758565 807505958 583499986 600201891 115712418 973693018 811869041 836789203 821295035 933725273 254637391 749077194 983792982 991714586 169843024 437922386 314078890 830339293 784454408 868006857 768362029 950393843 825416418 856113292 658120463 975566172 40800625 687920820 275205635 773676513 610444630 968621009 305477779 413716502 544520670 970556842 475594177 658848247 494288052 747255606 635958742 670367966 917752289 971140083 103854561 908586823 755724856 944632998 700110900 812093940 338790251 705565629 272401025 691426300 518904779 718891560 870304477 914568134 620707319 648940567 41588154 126486897 400368730 827149976 123715118 480976315 332112306 381007204 305524827 650511574 3384938 505579970 520321759 604153354 58677148 123905285 474524072 793803978 426666137 914230685 858846495 976118761 162216585 704264524 27103209 776125220 221275150 671919801 172069264 283073308 859966644 889389142 703245905 985666205 996487115 996850997 259015978 482227127 418876356 995489848 368137073 846519968 223173894 376200043 718001696 839856952 609014557 933880342 117810283 274069246 948556653 950613174 283358720 511949760 856976426 966398998 5322189 143544206 908006677 918898219 188989633 743896334 140095640 308451991 32995122 546929452 366679443 876578379 75088315 860729154 463549577 720386585 170337175 685223636 758515573 940793529 179377280 492535359 54237839 278126422 346942259 686784535 60065880 141604452 178440624 807691392 125390078 334047239 480373713 533745361 196219799 888632212 607786295 679155477 976985650 981162937 453131718 648126008 605906413 797439193 969298530 977042503 241273091 433420584 883810122 991678322 138035982 981258930 180730799 908627601 669105273 887169625 736403265 783317589 60551777 567892623 822556792 944678676 129241265 761737398 759260195 936015711 562754820 582446188 69932304 648260801 564684624 924536394 119809089 966616727 889923758 894838188 880809719 915308389 268394313 685662535 686213851 859974367 889296697 905378620 820546042 873422679 404791587 660482422 754403271 878648326 355368747 706870657 60251867 524932834 23712970 232245207 336018403 913173338 689910737 848306969 326839224 599454322 616106256 850712607 723727659 833684227 255097601 278135370 563081594 858876558 68544935 132733947 85770073 237689772 372695400 827608094 320091210 459074342 553621874 978119521 170527416 764338155 43152535 547429488 738059288 939010748 151012152 409978100 480673803 553458275 443258724 700333188 883999154 898510109 186484437 421259811 92683276 787561357 822913408 921683409 509505741 973637262 600978544 651355710 337949525 530586803 285282809 402222399 924852328 982731375 549199524 883444237 894530957 947019206 659888548 735112730 519219678 795292443 535304019 863529628 525012909 863758759 220824485 643102311 273166962 452059507 452032921 721668988 610129777 983225591 590187418 767337921 826586734 991219186 135886145 978201251 561499375 771676635 574886977 659304531 182228516 291516797 746728080 806686696 231405229 994741904 289815745 785536198 760478015 915469212 119262927 528096836 495835323 910233088 759727710 912058583 633815346 830636418 842031302 917738891 225992511 434256053 881198380 943877677 654867306 775118234 768909950 915228627 824901210 864861416 684601170 756729915 544155991 885018082 579333496 813337402 684923926 716905795 543779760 757708425 426104182 496728434 596811983 945098713 231103057 322257730 483271437 912052671 607861932 980202563 796634080 952337142 769816530 927582080 841229384 873119269 543026725 723778757 449214566 631445403 223653559 364047702 673234398 684261324 123014482 894300361 730203172 917890056 936696874 979159035 61627371 987538591 671279177 763503432 662778439 790392558 383371732 893773491 97793586 939081718 579792333 782999012 486232649 987776759 740601830 763653837 457102898 915706741 947925662 983474123 848059965 873315333 772588284 778979087 200926986 219591739 525637215 529942365 218054811 886508434 578482933 768512083 83513358 232787796 516533272 794637334 24815575 117067703 493787669 619295719 307945050 639882163 941796116 951893994 124490324 940678232 785162037 975449381 642469341 698100464 757246963 872655087 801118877 829644418 693193587 835167656 72881482 319136565 398753556 675951794 223902525 576009338 300712400 690175323 462748955 814081076 671970493 874810417 279135539 969253996 851868498 940238528 840104988 959805508 570959876 954117263 119464894 801527671 903910391 940885939 823112953 867852439 149528880 795392535 270937800 499880508 948026356 951353530 927577880 951663140 482880425 941259401 730677537 910471591 210606587 597767220 846585292 907477531 668881545 751724792 361328592 937827673 639923624 767857745 660219186 961992639 826240832 968089616 206211089 402526658 211564838 560683823 949106141 982391505 611641652 894215254 181132759 786821043 985911919 993645141 202385736 681808410 4467655 423713313 769233968 769503955 131411088 338275787 162975326 867316389 762347977 881234362 451810966 484008104 638643533 669970559 787036279 965563148 602177107 708441208 133850839 855304377 206839244 262666711 882263170 943957077 979284964 998176947 1956340 414920237 7620771 887326318 903925442 916172099 789279062 944923406 310352728 958771947 169873324 478439960 837732277 950541501 780142649 957189190 417337876 571985346 401756976 524274755 70197351 207101951 721796092 976608412 169572423 823300745 141020731 842103830 887222121 893246884 704468900 836187189 176541958 434307002 45111299 54536977 432522544 897704226 620113786 763945449 115434354 326447898 439060139 487379625 700684749 978658077 977196781 994116337 412013544 829656660 799052665 852333637 372526963 865285891 682237777 855407910 713998155 915823539 249692605 791162500 816649939 869747410 644298375 645476105 844108753 889385020 41595862 215127031 792969809 833752218 486808412 870752644 169439369 774515141 85014975 576177231 350353435 707303829 201248467 487228307 219337972 824315378 766004032 807585548 152692091 820171848 970809871 983243136 950763720 951480255 852830666 970620509 306111586 616720840 222871823 427002592 182931374 604175719 270523506 270947606 17908320 826608658 512561989 599716574 439635366 576331521 545667196 576063767 171412840 430303768 677191465 692011763 888287751 998755483 873779250 972271108 707690249 983597678 441159004 686501708 411824903 978094458 823836139 959659398 823201827 952642769 818991446 994468318 408749107 457561969 295881839 357890470 771449908 974025839 533180698 740296053 892837189 969358391 32674723 713345942 824870925 979294208 850200034 868310233 764846831 874701923 549565542 664812086 636870403 957129560 789407638 994106082 783517539 786194547 220530740 938332436 176545153 498411844 194451954 874734322 92859815 874893475 726690048 731550943 907371339 911038625 228654875 962271227 174318102 836187219 851244572 883477516 828466986 975412784 401301321 793332882 37036162 553917338 10765718 879997970 690434397 994842880 144366909 495473150 882646737 897409084 232618046 702059281 911534583 974712138 271230222 546790261 322390784 813915017 757606834 942060290 284155296 921731519 584439486 861621454 128496504 705304220 282128232 548277675 348600810 985475522 584583530 932247133 882990769 925003396 933619689 936702639 249882348 568543987 128013612 875417110 319726537 713970861 962827977 967204013 658229470 707535188 481189158 638809895 573628567 947091387 610127304 619741502 795202043 915567854 157535722 374187442 860390560 928461293 216874397 690502202 211669736 480474173 260192346 269857173 851190616 880277727 129523970 593756653 705611840 808498515 592600956 803313945 608876519 787146991 886101416 973892495 675757638 990550879 344244637 941921424 872426415 976686460 323508320 945706799 821885169 930221836 677769770 946365210 283947834 940037830 200513702 263314615 425706560 963572834 402158491 580742102 370935013 689571369 51182465 67259172 329388997 824132865 766810498 902616236 26884096 735727535 748956139 948845891 671166928 760869128 154379435 365571122 338690533 880273075 315428488 867408922 922891879 942364181 301966216 407167705 788213178 937033990 795705993 801057083 280295990 942632020 909768010 935756302 676041182 924691897 90795230 805556326 898621514 931605430 625537010 640386573 836378707 856375766 197932001 249154065 812692063 985624267 704916929 866978119 865617830 924174184 124473525 140722603 409981069 962001649 686645170 741422228 633869956 929121125 406341684 966866945 425242214 591057291 668024448 932534404 832747249 986074511 443850240 952799958 251945308 445524847 998427470 998479239 841948880 903154499 509325837 525885382 299817466 412858365 556629241 598660395 444224885 678777288 967754002 989036003 199686008 404977508 767825110 895243173 492721445 813900430 225351385 404068197 598337073 818656532 330308361 813132698 412445440 761221609 678743154 793858232 957108831 963801054 444759058 705215405 350794602 523510857 976301122 978677267 805386774 913473792 518354353 766098382 674130085 959530484 655025207 710058844 213073138 852032784 501950603 791511766 876353703 974934032 829438455 839387150 722172810 940533524 352643733 668991473 325226772 961385366 895442364 926811396 33153360 207731859 53037496 803737454 831496394 848869451 974207040 981315188 817717762 851524595 376324782 689134699 91444180 324384331 493446695 832471526 924654439 992107959 359262138 982220135 673735161 996726888 511166373 529830767 611766806 765194802 699639743 941834061 450973254 990579545 296713553 765752724 731837521 925601687 433383587 625325095 429469268 866185862 997837686 999094033 749858070 785829886 201768372 498944905 437161265 484584587 669925570 766864993 284567507 819102176 262353408 716493984 739135879 828006003 788026152 853491763 870634653 984449338 481903226 795465203 808194878 829003263 443796074 983438821 820618295 876705024 556549424 919929010 910406180 952824702 356199938 750518092 374593374 973009226 455302697 806835670 746522530 869808248 544869836 720289157 548030533 580324463 694916758 965831973 967641168 968600184 193949631 568686355 455447353 731617928 565141817 736132275 391463500 741655258 553238761 846039637 590902879 809474198 336500933 407449650 493561614 947744605 950169797 960280865 244752196 767089529 425654151 882782425 48194552 690075424 247243113 264830809 920870982 979752441 133169484 328883588 949597261 980004504 353805822 815309407 439595759 995340226 147118461 768670940 841942598 959598099 914386628 974159055 460552380 820749408 121953866 409875243 544517613 720889773 331750559 973100742 217222361 346532825 917813491 952462090 135969176 182086281 189158077 975751412 378204597 959120081 277609805 371075031 380071018 720936801 147011370 907541240 600931044 862386407 134800539 911167455 607176565 950577177 131553082 425617120 51150946 743271157 398060889 772800133 763149156 828050596 972173055 984904039 632583105 723267596 5067588 432951157 676042629 919204910 613865061 762486692 591708195 682451161 433521440 744276174 710420622 763834942 927811208 975347782 817110501 864975711 872664644 909159925 795129786 843422828 452740709 630471621 991089149 997702938 415236983 925304103 293292735 492138503 492093770 852018422 84252686 774462744 401035323 709215048 436798630 747118398 816532636 820958956 469096412 794666797 240778303 923136235 146804269 738994150 506226204 949139805 449975775 960134786 781024752 817972261 874457390 979285725 819206973 842996240 533566042 690578530 759916468 836805056 353147053 473088599 361448568 613067593 640969429 895909946 588747345 857595668 935135685 984125585 565971106 689462837 320193634 434262704 405798142 777479596 111801411 525798947 402345892 621944138 850954390 930702778 243261034 842133263 415979442 789121890 324103185 425995382 34963207 440329370 632121554 750417580 361615239 414693425 4049566 547675612 799476315 930726085 635246371 884722526 501228416 766200875 525109527 804864411 59454703 67997085 835226272 946558518 818050740 830307240 956576423 977692320 42423045 443336445 263475010 518544079 185661225 995679754 485203520 716233598 595649687 749286438 342543090 545684241 169858587 744298733 957625437 972108785 934578652 967920907 153661007 575006507 728647914 868117652 411537012 811742054 551420327 659699897 300079133 858115993 330688027 467237202 911000890 970556142 724802942 801047381 104563569 873841297 870994571 928966217 921656202 933209737 705474426 887961697 927653540 928056386 359825470 751188617 891948289 986144630 379497689 703126935 863119774 915774792 439860711 730826384 726677657 976993140 221877975 932301213 910869359 961874777 41188690 583683893 139250062 842342415 672422146 952483332 701000204 750563549 430204526 716702082 128830477 494765790 699452904 766688681 460477918 702363722 498488135 993978656 49690516 99071465 797439180 924067563 38624234 791938851 499114739 645193061 661737560 787970010 932023354 957869625 846864597 961617593 449310099 955722475 963597786 985516598 15179481 820321233 485200438 648122247 632171151 853524893 716195173 936266616 260200288 658985044 722351244 807716891 120262218 359706687 751961599 787570842 795507861 913528970 277864064 714233927 550689525 568406893 863425328 864701356 783139543 990782632 563656074 613958158 191090066 956158424 722889041 820408143 353584531 406028762 714202297 790590501 674715004 920128969 952656134 996901055 173699966 278089141 727613067 972668979 751855773 913025791 553994729 572176640 644633500 848583243 392696647 674281881 213346163 367656490 213348310 845434052 243997256 283084889 218405902 794096297 433194606 664515573 311253050 348454931 584476902 968585857 400632823 656098917 220628869 239483051 854103103 907394339 662207074 843169897 191594315 832129076 418917371 651494469 629536930 705304975 213948055 409875732 904803116 948261671 559614154 775461818 657460700 775060281 557020548 967457244 18764051 197512916 927174929 932024613 470291363 964168731 79064669 826017208 627876915 832247901 317719583 923705898 806235553 997719028 832909179 949635465 124081653 605985587 222855861 314292130 721080477 896533563 19135350 640236588 561068550 841026787 692422868 997462441 421963734 948149104 150270212 602824940 952809814 977380736 747207275 847761924 817736216 869189871 466470724 864117113 797571377 995962630 331533521 885030058 303060077 540844531 699315869 839155611 849610076 878676571 421869533 723623572 349347989 721974867 845290498 981995086 54472138 360340238 936044855 969396709 778303359 781332178 1684556 422971717 691446291 939627974 315242862 835408690 178686866 255452767 781158936 819213315 421680231 579665573 243288774 857926317 855016644 987862753 567702016 818074832 716942012 962298755 841770777 950543307 798841856 875839019 498352780 708908357 358720111 717323215 157508556 412247192 611884833 710295405 558257666 940868960 515468203 517631378 817794964 956341634 394265872 888336569 268949481 278625032 452046359 959837502 306311915 970556345 968941579 993472208 604257953 692313963 391734779 899072652 811442693 872961812 964626496 971970509 273827356 977093574 992817139 994122617 214008118 477128548 542403170 661297930 673622542 985872130 108874735 747664726 1533806 852976905 16358800 492957657 927828159 981690155 448389001 495553181 954147702 974427437 505272425 552668886 859249614 864613828 642906431 880335775 869263547 947272318 725139807 761160436 867351654 881255178 111244297 863071542 729627419 989149443 288286567 984665013 762031338 858033481 509967349 560695886 937289425 955593477 728297533 802410694 59677929 140764188 429165549 513695657 433684222 548768399 521241300 541518735 535636599 770928782 859882157 997955735 753457867 945310035 166948842 603411898 377575712 776836124 209171585 234391433 97303962 879630342 260292687 382574065 515583872 834173392 456584314 618394595 916634991 982557590 319020330 450931726 410310336 509697299 4317500 750805976 189810317 198197347 947073190 998977409 436200876 749759632 203654911 286642303 867155359 936240059 467858264 758319986 400221661 647672015 732087590 751767449 255163287 356317144 159827035 495116196 141531364 682907038 544888198 627294408 603575392 672466344 561523461 625144821 76642724 760554012 808465490 953295261 202549158 315736745 374155630 632008086 620524411 646098794 247262470 517376453 124503991 410027677 422153769 675057038 88647154 662888210 987694385 991456652 951637699 952066610 943811420 945792331 578628006 931385510 573823649 892871182 102374768 679971445 475606242 590354773 938824292 979724761 905970953 964353807 630247164 926864814 406750701 821636952 432686602 654773370 510895615 550213935 732207571 895998047 518537016 932742022 116808674 972661094 551516963 916887487 734625388 972376721 649764825 886271840 164387194 405200317 33441160 824412640 365563580 438663449 456726885 689579966 107881326 424385385 656987089 657086518 445604429 499143859 231907574 892723043 232345935 688559280 676316111 889947463 886934112 986192783 690839318 968551368 968815804 991618534 491945692 847203311 878530300 911651467 386212665 893844708 14512137 390504533 865276898 925348735 9362404 599824016 291260731 643784382 596924192 657733164 257601988 635363757 888016567 893434326 286535206 479378448 407654394 624940595 218511931 834648546 272632720 511800618 193528232 401007837 146312649 905640826 309534777 446229436 830530349 860479326 194857426 387221829 738009877 744089164 825245558 872177237 284813228 620520991 293863353 962387154 182580319 538030339 147959562 650863532 196393500 724541326 560454080 941916729 298173109 448123524 383933419 995876268 440209234 859525559 949942143 992888951 119345875 737468993 699539941 941839853 729291753 893205438 934408948 959674611 660170183 824028875 289098749 691249672 188535087 655858158 632934669 942924610 802990236 926021484 536631441 650911662 465107326 848874887 235461640 651108720 346760416 728215756 436870267 981050713 682318625 955136137 223159126 332128805 636999391 748409665 163274133 758257522 191580118 598354188 468475079 626246878 915605297 921060763 358614816 558022121 106599031 736532493 412311396 805752365 295016475 321718731 445526893 785777160 42401735 207233601 590224752 977654073 576838115 672521756 139173946 727042868 848422329 892402975 892368211 961800863 433105300 739902003 163036664 984750294 359421971 471239492 497624586 766704572 155533168 184694346 272254538 695961716 994183441 998244267 693185911 890534670 385755377 994965334 84156626 645176694 585810653 649790260 245198152 980756638 622174944 687967228 869596657 914228224 184675326 515136401 571366746 831342896 856339541 931871880 851615511 995002463 459871633 584676815 350622541 431150580 286405954 653939321 491885663 842821719 216310590 418924086 917774085 937292069 491280677 894337737 136320969 862104383 428574965 928309563 550311239 841978732 202088477 590830127 201388354 969330125 222636182 480174283 591677073 972538239 921047265 965560272 559312123 593755089 170073920 667469679 345224425 723487929 943374565 952755304 178861112 534719219 755175760 797661262 666387043 787598311 202989766 701632112 563362035 862336182 204421731 277207105 861799604 916653712 758113755 848057395 893246122 992670928 127943916 517060222 678974487 769977448 567411864 894533925 433394015 665239050 634943252 860874300 107196520 429034545 605922813 813447437 755807208 953849331 414145476 473411974 813862695 874092940 51811607 604249945 610090423 888772714 465524309 536343696 613054970 907826514 466006017 925498709 979054423 993199829 494947390 823538391 739141908 907284030 478272515 562639072 695398308 946497177 552090985 923960968 126397407 854479400 118438090 561099186 478097031 514956904 546987404 558911450 451276761 932134223 676896280 828176456 804695606 936505270 456782019 776162225 746369492 867576716 486967816 758499586 833123718 897809774 391215439 587729992 135549491 693700732 642017604 778079397 140933326 279305305 168288731 318209729 539266325 679429249 854601072 897373321 379120630 397153140 145279305 346955854 609364859 945832949 678692501 914222750 86290114 569892943 739225498 963471547 730808143 817859796 190099982 867709198 914298716 977369359 570875930 892916634 477773433 866542428 541714645 981240422 303320071 448766640 989681241 997074943 349408255 492059955 997204166 998270809 659277251 834004073 642647614 960451093 743000564 845862338 651150242 972958341 825171302 980298958 691942054 710060809 244785630 418496101 490578606 777139993 857442357 881456781 820325195 937970614 856146635 995981548 921015185 956414186 60127427 788804455 778263652 950663922 790256363 946659063 835793185 998076491 342953041 678385904 708674252 734469069 756902704 882723706 351066307 374217674 766590539 898517845 135793671 549669187 913548786 959225056 322397189 360828025 86931080 997821954 619954970 737783917 650008602 844183853 643471051 848565406 855440247 875173007 457981446 461418865 204547861 650264201 373600628 515269129 707449406 854894974 768933001 866097637 437837446 691671963 969083803 973445748 705148801 836944108 637145706 689638134 166512513 552078195 523960802 589500313 101121331 525832674 584314395 701290993 932452843 992576877 711247371 918145196 523158481 699106163 366885819 778725176 528087509 628465829 932211335 971637052 759052724 805712698 204173070 282048492 624714119 711962798 253461946 356724204 132975684 942891775 317764564 470790416 903958710 970175713 973818615 979749006 620132666 801714774 374741320 862776457 870623619 913120028 656229625 691490509 583695152 620268236 364888591 711599599 770766183 841815914 798056033 906814954 769932453 865031021 213838691 927241223 580882536 811006393 76459540 498579220 709168356 760463557 362709381 548831752 853112379 930807767 789791777 990581705 106046382 898268834 261304638 288975159 615451891 925493650 879375910 998568418 692936135 945521156 303465651 841322803 601631818 738659547 449340123 574111352 901826862 914563663 112048272 869310613 58698672 780037306 314102290 540860391 159104426 421746846 843191278 872138022 654031015 998990427 530853042 994416284 936145106 955642633 524880057 930756753 201404343 632171555 519756870 925489228 670184379 789447629 455891778 648458083 13675847 499410132 476331391 769006003 410338401 760635559 660185077 862697576 828835770 876161371 306826696 962070562 633479554 652943739 118764011 122295228 805973402 897709411 482589917 897596407 320897992 855318152 466727877 731263482 769192230 934703265 641786609 971841101 609800190 693950730 973127904 986445405 42752976 73111534 54195110 587527427 395785897 977605303 231182539 706878619 833603871 934458810 461837386 608427736 361073462 891689190 499150201 986124923 293591921 566238448 255125903 941709716 924423095 971899163 126003404 681918835 394886 175089087 826561817 899051002 634002018 635071595 602970449 676784882 34323154 246470486 697552292 849134469 489048986 826578967 713548248 915839812 544544759 749891558 839413520 918014052 312589686 438210181 543474065 782408135 315801725 411364879 334383859 405963750 149844927 271812229 228052166 477087637 369113388 468785298 791973814 951330007 710189952 799353660 55477609 956842229 255194691 591927622 842749025 954354311 972608362 990676060 815757713 968281067 443317351 972813959 136921460 670147066 871824637 896314457 987432962 998579940 581385250 860072848 425107180 973877738 962554212 973801917 623248843 654567211 103057223 250281880 23818883 415598320 483407413 490226995 101382562 667933662 527946253 968463274 194367167 407861624 775689969 837550585 427262143 712297416 766151227 780226155 885740210 887893938 241601078 409865947 39751082 708827542 283473087 430407566 102587291 287734985 361214893 362136964 753988339 879076970 56213035 181406812 607580440 684626179 751948986 925610551 485095330 897895841 812705738 853911380 878887556 986383055 978569792 979752648 228797543 884761412 782336478 793703027 825603827 940759443 238020821 974309149 251690993 401386494 451328843 969893175 208800393 783925248 272228589 502125760 204331322 762283882 737739282 755908579 923392126 991819000 487787112 849381861 607816293 723601280 215116713 237277683 402005485 888911771 453225790 945915230 126172628 463527622 152952151 278732884 194574176 447238324 532970440 533676144 493502208 930888001 345641878 779285142 682118389 975541809 19073541 928810422 824982605 866917542 141223023 338371009 678397250 948640498 308494919 369414370 424242613 838667126 619361622 867076573 154633297 246846651 69361835 143172024 851809638 977290319 807310920 916828928 921916168 924212802 723670193 843518165 655336184 768526036 274956038 413379961 495340723 725903678 719417279 965900875 264319471 914204317 789828766 887325940 148814302 304260875 934956267 993104539 589000076 841025053 324866768 683404423 639872098 861322613 535528425 566540459 383710056 688837415 235889505 728178903 591294494 981859370 430597390 482219346 460420729 935530548 973174403 979859236 455900843 985674877 401370618 469861736 414021107 997595635 318218428 669597884 887432063 973056860 928357641 934812473 414129968 852743253 774605821 949917010 496702436 690547948 653791642 992995649 104407548 552821352 308796613 637454965 238885113 856843538 554388479 910531823 424102865 440708855 463279355 528170202 656157083 992334239 159158464 622759236 477330531 797437945 348025436 969507448 44833024 108463778 533179831 687107993 284717068 723040732 890311715 971537783 626524028 958002622 237568112 968084849 980448420 993693617 580938956 790808306 401188056 404236311 625141343 773654182 154029180 908563967 416169172 666583952 232485487 467093869 165034082 694476694 335593977 847644526 780545288 883185442 313149045 470415022 885700844 907506079 977791156 986741823 561815003 918943891 920816684 939983513 905053165 973276091 80421291 431060950 992124476 992780268 943157955 986367791 253034967 652357869 799437029 835686921 662233000 726333771 750878591 964913236 897531733 902918957 53530382 971619014 898229428 937172364 608061747 931539867 775366418 813181459 900009115 994039110 440122319 627982301 12564131 88651083 509398814 838497649 753537327 799827653 882032595 990502887 628754099 951867283 869324816 922515617 992060422 994075218 26356194 631759615 594094170 701648329 964923962 980049904 43696131 131438805 791356065 951855156 891271934 921906057 504640752 816738128 377728307 523313548 866422114 904822231 749076272 864740127 896328395 962898274 144208207 320824876 63693114 986849425 639694532 758787430 879378910 957304780 153688778 690507617 97675229 814460327 472946235 701920119 988463442 992029017 270183203 359593294 673106977 912227172 820595888 928557050 566175760 572629866 737136087 862030132 529358613 602524144 146000463 283031179 360778567 430090622 446220051 971543030 286825685 523701872 318208650 490743503 366826320 856848652 774162485 985093681 751459816 973872348 47745298 129864493 758078766 973960705 137772399 716409740 525786490 931965846 878233219 930596763 368031633 924046078 217366317 944032265 654600762 930858722 234344865 438787263 343531458 932256603 19464998 503971570 469578091 542878882 355427286 955664312 246505354 591544587 658556189 991952109 756438032 812491455 401080022 562647172 183239687 981631285 370803165 826050295 77603307 951755362 814863887 914524014 364183917 578451338 292463339 377158466 352882710 871094374 997787364 998217416 564769545 868787726 791376088 793768694 988446357 994367728 318239554 742425990 639396299 677569435 381883394 518601586 13331870 570445476 744580347 904397357 767337392 886805229 417459302 791369456 366842440 734801100 475401155 774715259 498535139 511082694 419675354 886725447 92037575 692521187 127051629 598140831 142603911 200227391 746205905 903948937 357617631 585661441 391896623 398209963 76717453 763791577 561505313 729172091 458997884 826663879 854103510 945544775 855998447 922476205 632903942 740582584 168912755 430966341 156134067 315449859 269417675 922474901 466341487 531283465 974096356 992151380 167728156 669859073 480814579 780663570 494699572 544641790 504708771 621559194 782666272 812796977 154490978 226813317 832639566 913706703 953043155 979360191 650889440 683907227 873133411 946855761 809634323 845710506 283988089 800822613 195229300 743958355 72742865 448727360 801483372 835289948 734050666 741864878 685580948 724317855 796737451 924292609 280697707 729115273 740319168 820084995 245626427 368691784 413010333 626631820 145966526 433937778 673357767 962752605 989300794 996742643 283149503 964112427 225427509 809916290 215729556 227789821 136761568 582951864 167116199 178057441 473571943 854961045 91273683 686931875 392358957 682620234 281334741 743412900 234956813 997376875 363246304 651106171 16858753 833956584 648152636 996013181 154238756 284135631 62074372 813251466 849435243 942988192 872702607 977072602 495732538 495809344 250866435 278583091 487694209 535228170 790480120 999189951 128806178 211403929 20824709 839470449 707449948 797780011 578250130 711666521 719731097 824421122 622002427 694971241 459450034 477479234 572271956 933774814 15268266 505669022 758877347 855189379 276693601 735316307 163728143 796840399 163264555 375357526 293363483 852739046 486730710 767746049 50708782 99325024 188616368 336938927 905379572 905634091 526642059 727847253 2952296 222849596 356087105 724763190 883944298 913695265 331968392 541406086 330155772 746045541 983631816 987444666 672888994 928389520 539612948 788299304 645178002 810174173 694912859 722251429 180774176 974113482 280829072 488275405 973036530 999209584 687342171 719486609 365245704 988708002 934613269 943806577 801120795 986483763 634545830 958566082 537220413 633222089 4723834 242898144 544291872 970178733 372781326 872609423 410606360 991882915 150512906 425672646 458148368 526428807 639025837 748112800 138481787 790813868 725705257 889710350 864434849 983970735 992443712 996381363 439085000 743352474 600040854 855135480 155426014 498595365 497660616 562930011 447681577 479701127 657032900 863323929 112060201 734312123 947346336 989400882 180944639 627035150 794054484 895169535 821864127 932189411 749834840 883551426 174918764 486726730 703360429 833152475 76158193 781907828 435540678 668006227 655423815 735176491 289185018 377744017 132038148 599447071 775498505 798515625 3111154 234312245 364661000 884771086 508684924 790644023 330870989 976118149 854659656 998933221 549814886 591056406 610321162 691398460 90938768 792933691 473676229 840561192 477373278 928927334 861871315 922248832 433721195 496326737 228658231 782649466 974155907 994176082 655516314 873697778 480558355 583980034 675025973 817516454 66380486 376780925 540651425 672781673 139382983 838844048 342124568 781684268 62653158 361738576 948293329 992192073 173962341 621648964 912477757 997901888 849599400 857494788 68515870 881719493 796052099 839179238 478924084 495239235 245286458 268078583 428501571 690282489 66337360 450773575 203698993 981698705 535823489 711900511 135031972 915020828 18729724 213863951 915555418 958333172 442272422 866053657 540991082 607709076 168462466 984991587 293366997 357915631 745935338 830045734 432729983 494322508 176745496 830244176 599398802 920060755 400470819 803444260 901116815 909218213 289294166 373818285 737854524 851978909 381245827 917995684 479390110 837752211 943449226 959427419 590364896 605872525 479894183 977820873 178211101 641430654 14092025 260783622 465299573 834535119 609408137 904632155 703477077 727889141 139618585 377944632 80560471 297688163 621153837 780505970 934769484 993608308 449906416 803568876 456865420 847946654 684647701 754781071 704822440 973922602 386779631 571051664 995065578 996835762 552275288 563463616 950538938 998602858 854550085 991915535 740485996 754600694 942602280 962394842 170944279 703540296 111996917 512930025 29665388 250984212 334101797 933719307 941499439 951994029 161141031 392538710 101011185 512370048 650685162 805834671 313702260 937718011 779815675 809340331 718951448 870858681 226143876 458701640 895202101 901874935 950577437 999227472 407598092 553084185 568972583 760076524 896780756 991547018 262513889 374854287 334684148 944589334 596833284 967734051 602667514 679452792 678217621 903163960 697729358 979722138 488898581 944912357 106732112 402334880 621701435 644033552 957248709 960981433 84126149 105658728 767995111 850683751 345468256 862375698 663120298 881684902 452518533 495478326 927461127 963007113 286564470 520554425 527326930 753306367 359664740 711294620 89309239 467236584 360814346 536047962 498739591 950888352 827021030 935619684 443471600 937274280 840144609 843029440 832362005 968932328 27570765 542891475 596197270 655343079 769400531 994549651 554904558 787585819 904124938 992643409 451135459 859614696 243332267 369746158 352344187 558351871 557940340 645175801 893075590 946529787 428747113 986078162 851639352 993103476 759978172 838491178 248064947 969420101 593085191 951309834 827271873 903042539 460969265 674565247 407263109 684512626 824291260 834629871 727858250 852921884 90192220 833878967 114433998 750541543 682498806 935584356 499883702 729618005 852629735 953572845 754456402 843249955 528541308 865824143 707141428 828336388 994322780 994755062 414276877 997509634 828182218 937612419 935561969 958060464 601491522 609140691 536702126 764079357 639806677 987929169 191263779 396085045 433879899 949714209 617464625 899040620 125782235 490861137 458959540 853476023 733643411 822858718 618980550 623647372 25583636 177846048 796673715 870937638 122792197 149484058 671625226 767715773 797901847 992811456 107929675 904574010 14076833 309828384 536129736 792540466 812266302 969421549 992277545 994137279 699367510 903209146 414687927 959448337 560759703 669578387 625608994 742644466 71926496 534870336 732769442 862937112 15485477 504854913 257799808 395461333 125811763 487581950 413648687 898182512 433520685 602813707 726279428 917554009 493356604 533778477 202725518 754587437 250573440 790457542 480200688 879333137 787501435 854305161 507557929 972658924 608252120 781740111 234096787 335574490 526207873 760103971 327580236 491702648 765070367 982364144 350887994 473849441 783336506 911075072 183281195 619405694 802719663 921289229 508310680 996201398 602713832 683972165 368724338 524701919 612467586 916262086 703632899 917744150 894668588 907596177 981995662 997414717 340935651 917363872 793414860 847538401 110122722 873427916 683036922 826315007 149729250 190151174 697902033 953454594 380717867 649200295 437305459 961615614 379609351 674754300 166453999 652970082 709995333 835832913 812544294 814948210 504042131 533912795 482352307 659152582 97778526 919211353 25435192 491222810 630352578 748093931 108061191 842202945 606157995 873672902 887130146 944726414 551805497 864594364 705849232 799783834 353787292 480335581 681630521 996535923 786119828 967093114 173637028 408104114 930905906 937899037 826136475 991039214 476478875 581013359 804758679 964161949 749755917 759703302 579066101 774013544 732235118 966415636 259396055 343829322 746042425 962917017 504902843 719056229 95578780 303088747 313391572 561493734 674846835 774773060 605771398 686852873 745816924 911871135 619180897 794951125 248878669 881003988 18578846 843766828 694001995 962556685 793873866 844831168 715767447 983840581 891350837 943325932 544587753 973341567 200614131 286778526 10569137 529823733 305284894 818459277 31211800 820735543 210348607 492348937 10576501 220388750 749959435 897120626 843677941 944503726 465043848 594274648 131890629 501884823 831943566 842183852 104662774 197947025 959610571 965610203 113860970 228122280 575162540 989944006 742733232 907524611 259826197 974528663 643505233 782453261 304164942 735942657 965872477 981984217 275713137 766720717 852735952 883325607 112271006 763966284 308032714 988347821 38199616 545560281 116893496 854241838 195279030 672389752 325375971 982331480 493406293 711449555 370146814 399519028 50816753 510988857 66805598 277059054 766415158 982418487 749086605 907225717 823630366 904588403 295035846 497526915 510847030 968558594 494429572 997777514 815809714 880088692 806014008 834739744 470073133 617738629 995376414 995447267 946172633 946447196 850717178 897115565 80596450 741155051 547587278 933071454 351646508 423970405 451681700 968288096 558033558 757077536 783018814 828737181 971647401 983755327 345108345 814363446 981079377 995086859 731150219 905539402 654237178 974671527 713412396 748421904 582576586 785511085 29698387 136048285 337116045 621506387 367224144 703193334 663479761 859289434 904518694 949374169 809206513 928711026 949354521 961773140 164752370 377155509 474099877 931850854 675687697 902445979 264678604 292234004 740185561 771286127 754253804 992305269 533493209 703859782 891511226 954518550 641949103 705865051 299998252 391790494 865409166 899585919 294229050 855288546 562644360 865110819 207175639 595085439 74532662 338734770 30781272 434704716 110449189 428303979 86086568 477290493 361661408 807900661 290069389 920946048 790301078 868175833 734556368 886275124 183397585 740518204 500507631 950063639 907527597 996187543 420898760 681534267 708390629 880254927 810194153 957289359 702160360 715755296 790116665 841341975 891404721 977910649 168524974 763837888 855332890 947078660 349208538 713224244 524363961 926771365 155798820 888206268 834770608 999299512 835393430 925332715 520986572 583873164 434694491 527074456 896213804 945879848 847048270 950958423 12173564 779718062 165421724 545212151 102357451 561929851 272221139 484949787 296923509 583677178 893720204 911093257 861173381 887281969 240617213 611789372 489870411 722510987 128553597 581188749 817114011 976452208 920694151 928464981 384891965 970997361 496831459 763037511 756320596 925976476 751288255 754383545 337126039 402245867 8560072 385864734 64644599 243634652 276862217 944382447 100945187 322541734 376936082 419473281 262061614 733053665 906622172 937958619 435601995 632220260 275685867 843706520 43201603 534328241 623464481 824182264 724847654 908727887 820213995 983965103 30218857 237113138 817412286 917107448 654695971 764833367 317086565 356416784 287057858 739916030 294497438 617891444 537531245 623429514 424642151 557935605 381962069 897570027 238860698 578051886 426583035 895351924 839699799 849716342 761069526 874923747 621616918 832809523 171962228 455154087 493846357 907909894 599818881 987391394 721927157 919885829 899207637 923487247 541518392 787554373 981992220 988254350 746968256 831809677 180611060 643937769 811898886 926514648 523678504 561521666 41741163 820500255 822125748 923297399 754293225 796140783 925451579 993043837 301917442 461507876 726072840 998739868 471400914 582548046 268210193 571097124 559266469 715234106 460664881 892013926 723877456 729158951 183935396 824741092 795823467 971109274 927990574 986198280 712377847 982781291 141483002 722230626 919164378 942291942 744015322 903105066 953631672 982923119 659806163 766601430 141476712 639287891 331041053 938018100 829795674 893917220 598886519 966422561 151724417 355488458 183541431 889984487 60810246 794132475 137065023 142745954 766689952 830940890 88959199 94806830 488505429 545454134 171244006 779934210 215902540 860412198 49169917 429963674 606616651 743415814 627843872 662690799 39127467 823988305 811408409 830433887 781166122 963573527 363991971 370541518 142718894 482228444 423174176 737471505 909041598 985187348 11985679 852268055 746349467 910293498 179435152 314920196 16175903 762778789 651902982 742576993 122073197 853916186 720069579 957563634 892761193 980797115 902315900 937435432 171537254 276557705 363567617 892347721 524287998 551539683 186106418 724433995 791818511 948015891 289037098 636364786 677321726 703028015 821657260 937332374 80726173 640786355 514986398 551558065 525769850 815238535 371224014 978415118 885562854 938761412 626256573 650585351 688990537 839151897 303255436 776063463 329384604 736811156 386643697 704009430 714129948 808609802 115932069 736277421 728757229 949710449 643554781 888517096 711259180 729784242 897203357 913017941 944362453 985764675 871443191 925156858 177435581 287090830 464083968 644539022 999340267 999386112 115578434 235076854 308300305 806572616 965912400 984821780 61031136 415443636 605903573 831121913 648524027 716359660 249072187 619155481 401485311 583057802 477058059 912920664 39473678 884686691 439640929 797914916 382641770 870585300 322301045 782845691 171280323 594073848 669704242 976467840 289266343 691658349 63622864 831375603 496411188 834142199 504481383 679377704 974983573 986687329 942490336 973061795 66045119 674218519 749677574 774083448 91582711 907071992 803192419 806311612 775684 265017522 678514923 924608297 415372219 504401282 793204612 997874249 243654087 289577323 787874498 855515401 18077990 666433046 443945219 942630216 518206576 957886351 873612011 896496286 877499850 895021714 220885221 290784252 610285346 876920377 924990770 976313212 743835118 966936681 126118211 135524451 559570450 793762315 66495355 352988267 110197488 436840247 444363360 996291326 829325472 857603403 184735656 341584459 547031830 567039276 103205341 342738691 262253983 852963570 498213753 656849325 694865011 702199774 157647479 415880322 455474422 754137527 52816103 814803835 278085193 532366470 769767272 828744574 783873204 799080057 522094027 773054057 495950349 658081230 199557454 376502250 213554969 618483479 191424643 821247621 837377078 901207916 943226725 968227909 836751447 890775436 42661035 361206939 171326721 633466330 712231038 986825777 395848352 996860945 10198370 936149198 445424792 994107150 714624 925082332 672385590 902430380 211632651 604812785 952479200 973979398 43837841 722652449 642896593 934148600 697789911 882696957 884574444 926739849 432572244 920463432 470567468 475341718 996438481 998273124 469607997 482118490 840260871 966441028 352800141 741405070 717589004 952187718 790509428 972679282 676507121 920555961 248866032 509208255 326678487 979918201 808954581 989870661 25798264 65789531 562230972 707929033 997911150 998706092 51296994 768925500 718473809 975997074 631453687 832772388 848764143 897430260 958589622 999197157 317733212 575119831 240182977 695306440 562544336 976754458 582804606 886720015 197294962 557816619 633020671 637718787 689654748 883927958 785853307 960295316 187958736 443381169 613135795 782383656 21984689 103314193 90256183 639655750 534007436 876910193 680938043 936838036 895932235 902162631 484393071 560866146 273805402 464671920 344759198 886237459 586298502 820112951 145301936 302416168 741473402 745150423 421404017 944899336 749879461 789517807 531483474 920174571 817968619 971115876 359045431 495389038 251148412 685080314 148770793 277552070 119074056 991050863 156013971 931899344 722269973 961766818 246654982 747099519 481743645 979841967 169843666 681300560 189361018 890166711 170989090 190010088 258036513 305560449 742056265 948865034 479080812 534356508 823682272 901331803 125286753 608042927 573053520 900095255 924785572 988607537 867511738 960949520 71691949 744524916 449849759 647058634 928508880 970018060 394212612 854850015 280276085 431334934 674521842 697271297 741633583 863779941 679774639 986407163 702446810 967397759 361048505 775396445 286594890 863588752 698049565 796255890 843060543 969258280 146273823 289288958 880700805 931997850 371916790 544802872 492528438 925707749 870038659 883153930 809020035 898883085 38199259 255710646 394970670 677730041 254300919 618770211 13837739 386934611 374862674 395910736 622688006 683966199 50264718 855475156 225923600 392010049 638294405 840583790 548677958 613978980 430600234 879072438 574171963 749835186 655904241 686152387 807617931 830762997 130150796 819765092 791261873 877040064 56806254 140196622 657291750 804803001 546174075 757893360 158591388 468478982 56357738 252798021 868963927 907883849 45992691 536038660 863025490 910931765 501348852 819612882 451735406 553521196 167443976 472979605 146763865 213966709 988259736 999250058 118715151 292409271 201223494 362868397 687503 378122929 558841089 841739691 621762036 738729574 55278771 793407440 597619402 952111249 144495700 470820227 298971424 436541243 220359203 960633722 699706927 819036026 595814358 758618329 906495244 954019200 701979037 926836036 529560101 784464045 457507634 531381281 387320415 571660282 163806299 890325557 841774676 939832117 201566498 903258643 617324830 834796463 65020529 369842976 944858746 975455790 807774460 899970151 975577662 976694782 825935009 972087769 789314594 888327008 682076656 739691636 192112207 696698103 446768354 594128705 264629289 986782876 698441257 768554727 443399913 472545317 639043750 862237880 646056215 841617716 766704536 967362462 185211844 659620993 748728945 874989537 517217405 890991772 603489994 910125751 278110778 521824489 306393127 315589019 387165290 731686204 198506728 443541922 883363064 972555540 900576176 945125245 260768512 764784914 45840440 246220662 601057941 624856288 651564979 702656901 739112811 970620838 745845607 857962034 593472676 841468971 654833270 901162770 49265038 481258117 285873415 419562015 778549759 781868360 553862354 591890501 744589987 907995563 594105430 800401770 356654901 811804240 551123789 837761646 938868530 938888263 188945158 771211449 584757503 907979997 230112175 955241346 575460759 750217190 951157455 990689438 74934793 694068159 457522222 980827104 956763923 985988690 303198967 474167658 65976829 899962901 966685473 998987205 363186150 841028922 830716708 878768589 94290314 573590295 269118850 659971217 488761573 662157670 559918542 840861156 184327790 683124932 294005101 770122906 115591381 324355769 106833947 177810274 486890343 906307171 95395285 815696748 86819216 793611127 641974658 888948846 979561585 987499587 400683485 461345010 646614880 669134352 235682164 286694953 279349546 783325925 10326795 761823662 8902945 80282394 909623213 945458119 390703877 784416290 205634279 377760005 452793884 633687217 514477628 857994054 348581272 650318331 634174897 668254273 676977404 920237095 254496431 554328720 324198627 729077114 817999458 922296566 603954917 609225806 407474429 840508716 608843876 660412204 841525460 855844109 395032806 777863705 798979378 935569298 525310702 544323145 752395230 931875837 706284008 826585324 155721543 581318480 109561052 766883227 178799612 609061784 552791890 816491559 659549407 876253747 684603578 888701315 929374528 998784355 933290983 955030388 38257468 590854869 596802657 601794385 7650037 747151849 525708112 983966729 905662431 970800355 877569517 936613208 706311937 945140166 608597204 655846684 428448271 649430572 602482866 957929192 741303392 817496448 750227023 836831722 750713458 945402730 30227087 900115051 149946741 875252921 220255532 227450503 971161102 985234910 466089717 984907599 575834090 833346171 536785655 541562521 433943286 815117754 462323373 956788681 163174820 796183671 897575963 916951241 538686300 919665360 957080349 977702207 577962708 893507107 912156077 985315061 153438639 647012601 430909357 873597979 460935960 791325092 911274184 991314028 440043260 537353741 745825601 752368456 116750548 874050041 732960360 938111181 956304019 961964865 379844878 756607204 355548979 762531733 324291023 972684778 98824126 721284307 922970344 993469419 445176830 595192285 362540460 973112025 77587354 432937088 959130969 993874491 11848236 695355056 347116393 366363795 122588070 830369834 990609227 998945354 700000751 738478628 789527144 913647493 178153917 587494005 205006630 609873338 440151859 799836269 517197971 699004803 930314060 946862867 378328371 693978267 873971365 916510159 510000457 555108392 864539803 900244395 102920014 266363305 556604627 624637277 68446980 356562446 153488738 969156510 252324868 457150439 722050867 749665275 923147369 938427120 439556536 872865840 736923393 891218726 95152807 618605508 63784275 97747603 616055323 820281199 604041078 728526965 615086114 696274180 660619550 871118566 438215633 806913349 528487476 890729216 859960023 942263483 69999398 785229529 842191122 959083140 299580486 634790882 391400284 895215644 196155835 300642762 647524255 735230443 174012662 816017098 661711961 790821980 983527116 984624360 137566928 957853134 796006275 876428297 591785944 651856655 536835681 967316871 909182073 966032537 659015063 851712478 702596637 732188650 615839786 858301920 584237496 824863283 717212507 889408154 948715916 969840474 906278878 941341487 296847058 784830589 527351168 929632616 9556164 881941267 799182026 944667762 996986823 998194275 479084816 729983801 479240475 613760905 962382979 986951119 582723847 778475884 795057077 905642359 754607162 776156729 425010237 494866975 840416437 880504703 756697723 833320713 329859006 448614781 937008176 970017328 619268062 816757054 497802623 647244035 294268338 959049104 145130406 730107427 108249687 896506165 791163689 829698145 273474798 855071110 966450121 982942016 834735113 954253805 318391595 409623564 495853554 691313584 774008567 869849424 108942197 851307912 141108523 278106497 344478523 519394605 986242210 990940981 284964893 473570061 812947575 886723548 522036260 903282750 234577676 527513660 622388941 671473661 744106762 926072446 684035689 909858259 302960270 943274132 530624351 861900843 181754483 768153356 89727710 485854387 277050269 656882958 883538869 889882040 988083434 989154883 793855363 821569340 525374501 963604822 28480717 212278347 624333569 855325768 841950877 896562466 198478218 713931524 720357890 791638154 333984252 726561762 84198654 565616166 706141567 745817681 600495244 944941008 350437984 678720456 941685989 966194868 730961605 842265898 547628084 704259375 545093429 959132598 435075682 984557641 982463268 988323895 410720267 902025925 237128345 331713171 418391089 531148908 448699807 957127490 92859681 894734584 405776334 559971113 397038338 967772841 949669424 993536989 203465351 558387731 142725752 809638629 61999601 871291553 603669847 714256036 720244229 820649891 433578530 664052460 329246992 733481071 39220974 754447099 675675071 816940230 936611780 983280075 718621224 780675724 54645511 752999481 856916154 883053178 491728076 605054961 967375929 992292519 802568523 889113434 683975413 818049313 733939441 895759457 33715753 350461716 75515423 918817925 50380814 644996858 928748193 994560240 285437758 599323018 559455374 702517744 6186961 858587540 258757637 477437053 690110350 908104957 964056080 981053577 778888658 828400126 824878620 873438014 800863519 891049874 519849799 639580535 619705192 689874685 12445870 894457430 936130793 984344992 15950117 861332575 112198475 878069103 236796348 630861141 383864643 678872541 608895906 757454560 358335841 829970043 121870922 157013628 527778730 746909592 236201219 771046337 229561112 287376409 203234482 973678872 677777402 898319110 980416538 996211114 908865851 953383085 523880404 770135424 169003931 553861079 854646438 925819836 745763473 896898362 435275224 710767672 971554382 998772796 954855657 986943504 667501034 751155561 172958292 449140591 671473675 678146604 61088967 658332831 791204311 856938862 941669708 998377296 753883782 792889023 232662921 667673874 571236533 841993903 289246223 883937476 167532890 973136836 588553160 661185839 744927493 965551139 330203472 598330350 776036367 895227317 707204876 847972418 388197598 633080629 623276070 916652969 574524378 690794288 784923737 970969275 582865219 978174258 151186294 505882848 420467225 494919083 898746862 991084522 599338786 805601436 372224917 699152414 525081661 528008029 872469069 994432998 87319025 925025411 824406988 851703230 282302638 960624307 166251683 835933413 987226584 996005339 459033768 703798840 485514501 853281075 9262532 978533768 570171105 579916636 325646116 655092224 140828295 525490916 47899009 846750653 697393499 906598273 648835019 672530190 914463353 980001584 956071590 991370001 115260762 247039484 617159473 781344926 866139672 870247821 394712365 499045627 737193255 779207437 330815040 941596244 558323004 717412510 244429502 304332589 847124184 902302251 566875991 806285383 441143469 944478990 224182933 719422582 389549076 555136174 852719713 985190428 357035692 611192991 360540291 387919602 745133741 796984936 255274377 975411878 139291326 658923335 123785264 714487633 421759602 598730946 580097463 690590974 974957549 989728487 276487661 368439018 147610021 287084014 190196426 767806048 976127030 996849528 935755428 959603540 745352428 830362265 290204356 927655714 536932540 736369196 360678953 673796458 171585440 219877796 657133637 856041972 101019445 513828186 512994074 882389135 602643393 633216743 838899111 997701290 757910622 820526338 471599548 867706988 835048771 961570114 562109885 949178820 751104749 851273203 510555780 545735748 471747726 496535899 150643783 589125161 734394224 849065174 710174781 941657782 117257511 884431879 541594108 739247729 57342308 237400072 590548426 594977038 810261799 997169609 571344531 673782576 770833020 894561895 993510519 999279319 166231141 638866108 136049730 795078721 294609829 698879773 193206528 287501882 249946617 261012116 166002015 855562097 723362865 930811618 456695654 541060547 326307542 979578309 855091669 864086130 480994403 545079864 144198946 909465781 237437005 790994138 708360312 739467301 323599137 505149038 722657864 928346849 384248033 818180499 32760441 845742268 63305754 229966051 455167656 717223878 40496024 156851668 850404636 939228186 999370200 999372502 425623107 603503149 676974040 768450533 994525734 997141189 80299009 386258267 948596680 988645247 91312762 568097616 894628448 945537817 460717115 627439951 449260343 623049930 200584240 447085253 511567749 735550651 385055146 910207413 882094811 994177452 99438613 257662940 866599185 958477616 556547526 641144906 492111276 512824547 384261170 501118253 770662923 864237731 254440915 680732513 128703694 283738298 916021452 975834620 46345207 779929485 507327078 677299913 172976172 484423518 312868369 882737875 399517000 569044629 278954109 913845597 878963920 968241845 840013380 998482600 902848622 906308322 714313297 906692994 270304572 804594836 989775906 992311193 671811432 773801643 426538623 711113736 590466712 654323447 929419514 977040487 200014226 877768435 390904515 404418302 360639214 609677459 539180388 572436033 939628403 989247506 603334320 626503813 664988528 675956349 316261944 960666768 203999317 792692527 629516215 680097086 13599456 775875412 379749854 851206047 645503904 849385239 198189282 845119181 971511709 986877689 623863601 842626797 38847978 233924690 135532251 418990803 792109424 919265772 650853187 774562190 537968576 598858017 994490481 994922810 246027309 371169880 852675959 866706205 224600875 890545817 234263696 300799344 786546291 859238700 572013869 929619583 859508513 969607744 739867965 855781647 107919029 357987268 849159834 915449460 246985181 530286970 477056423 617279684 429748704 582062248 673229625 855206760 479671305 872167413 442109961 746432971 552593372 668192446 553937975 880707616 685084360 839851181 192979210 707732444 870456372 988459339 313584414 810027577 687378192 958678067 761726385 975804674 750403488 819686041 151261465 828798562 705837945 819578814 991299871 995633414 164296429 549498450 27147113 512593176 192839367 764597353 518889513 600021469 43781402 479857669 815473027 904747742 958721131 976099091 798697789 830105096 553063202 655839189 512487158 657578569 66790870 102216256 6974760 184414292 862423720 902669099 177009308 896561447 718343117 938462588 318851911 643159746 347527182 478038277 992664976 996902615 626707894 903681919 929082767 955449405 31622411 784481123 411825775 649663476 163965068 877724841 438826552 582406308 148022660 865291697 869839442 889021191 664527895 665173290 868303574 876837229 160888898 375048075 298981136 828330711 209394876 996170884 726605500 974126842 270161299 649740230 339760843 476841509 213748337 402128091 825717116 848064015 132729378 315839743 931583257 974959359 518919237 891955231 172601500 223568753 580389388 603940062 762278681 917433767 586809289 800857306 70395535 269755321 903845004 922078403 493113183 496200301 217927778 947459141 421472765 603277117 205854282 583853284 513470194 799912296 465670783 822354667 652035057 660736591 348382434 549543011 616224312 839546457 909207565 979934753 747803160 957428701 80071785 228464484 588606320 811682662 97139823 382707324 439671457 618378109 171655590 233087231 471780688 896601400 170476339 348440156 328696069 934026460 586207489 758825212 871776151 995653142 204770097 471358448 172177811 409267981 714177625 718548984 728756431 972962527 513118158 722774036 173109545 420203606 501654394 574946952 975436619 975912273 845752708 947219342 893241863 968886816 758176264 991753980 908174263 993158459 517217081 581852980 481415982 529482669 692621176 827902748 399942345 850949624 986534894 988720386 764239680 780574112 686469452 939794306 399842548 965109234 135525651 343311098 912872504 943868681 126953532 532833699 613418560 988642573 217842642 574635541 455088874 591848888 171477048 957139702 183581235 356562107 105169494 287310942 415417305 534742900 301558374 527363009 22361532 955498124 815753259 916709324 720918141 748053245 875136402 967749066 139639638 302416969 7426754 259315095 788817902 838053226 614456938 781983889 50534439 408694914 237764927 288047677 193267624 753503895 599736347 906707507 957529669 962743289 780177446 895027731 147717873 802658565 579326320 585464031 587411351 742857763 448026344 837544673 555215892 924524539 824753250 991893007 812791375 936601561 989469392 994019001 443595960 862269081 37552248 166277470 818299965 896367282 303099504 678849691 648647471 822912040 322263180 616942710 556434976 816732444 432045000 765991983 646100381 930525627 988249091 988758080 128706415 168318262 604146308 920874298 300285578 339176500 101268387 961433028 956258648 990217867 889740371 924322663 258101679 300528935 938547616 960161448 624630412 749088647 607380196 619071962 982200721 996170010 212224786 819563528 167857792 913000282 104514244 642284567 572253601 940408254 781509881 988677259 525036991 747445935 169113441 389295401 556977066 763704943 695780213 926730358 202005546 847178629 912687210 978959480 917290098 921546144 25238797 477507842 411222157 557553707 570200307 668611913 603695154 628428495 60055866 510055027 424284919 915495524 52829574 151162268 3611682 104185527 183991969 979555152 316218591 909412591 74702188 636421897 245343237 376103536 839826107 876530402 299696363 809031163 490925309 843966063 46630778 720513030 965577641 970202658 86456703 144035834 137606525 868224065 374849451 597775478 210200931 636234524 100894765 704931039 231344989 800492135 573337224 727015750 57230889 484306784 47360799 708898134 752861056 799125389 998987170 999381206 69245210 110107194 184703970 597848625 295019594 364914844 106590674 460891660 614143324 839036358 125634386 601166949 680147372 794107166 622852050 745355777 593387690 745941954 879011269 973012239 421147426 493365561 676105928 921778805 234611275 550943905 954147484 973888138 904848065 962905172 159218956 562986195 608605419 735202454 539855110 667744591 828933035 860182627 968895424 986535566 140698879 750286915 463675975 903728227 35359666 117016110 308174497 362930131 559345334 954151446 13770843 612168785 348677470 606957772 235500388 553729745 814764852 888410185 654513238 931371193 698979298 699613376 539886630 751603398 468676295 982058540 984768231 997975981 153855773 473354048 289685398 690059640 840041667 850885268 93126613 750303224 188405016 472933973 466007053 900935970 709128515 817274180 831580279 881202708 212100764 881726416 359813725 599989214 872741350 873009644 679900790 889017424 486823807 616018817 645615977 750077703 31814672 590146860 864094 908738815 533824602 982745636 488823674 561540367 87514118 90064372 113678420 312610165 603333895 891084634 161253211 283386180 422222593 705443592 687264605 782328690 431468693 546073005 357870523 779266586 707451113 974929027 102856005 475563931 783521426 791287521 233368223 454004736 656928882 689431678 337255532 917076570 850487481 856603360 397233778 834376540 105520801 711653192 873653055 958558715 201924695 444658677 856413360 975983067 85276059 891881892 666135671 913539287 843189431 926366300 873435241 899276968 278698898 622326012 955063778 960889104 722213262 880199905 135903396 991301335 258057067 312811439 310632284 429053237 412122717 914943148 439652350 916307698 359766081 603946675 110211729 892956572 969161322 996436123 2416402 745107574 659293923 948795214 147495511 834790601 120561870 233699003 615083228 851173235 810618005 938856463 946073238 960308753 283843388 844028313 925741093 995642914 59104117 638990784 161141641 327065434 793652777 986873945 830618852 866054111 639768291 699502100 665517955 877414294 867537134 900821895 394169421 751719708 403179439 637951592 60183468 402688302 576748590 990287651 831652254 927816083 706515420 730773734 950175434 989298417 263601449 553925514 441563884 761553658 145742477 924002700 916575240 975947614 91365144 636665518 993439539 993595032 518161160 589552212 46423550 416438625 729992679 842022215 726364714 760289956 310795273 747074480 692531552 807762938 391960047 608299649 990091587 995534842 227561214 305900879 708053191 994411286 933509916 960524804 796884135 976193479 271202071 625895289 627097502 945022804 319508322 841659561 207467866 234300895 914746927 942460489 835449064 988781035 66497506 749692597 381492432 462914206 38169476 723071257 772181170 842609869 326285510 751775841 618718376 877363869 849747286 926220214 20927194 533996755 756051626 962107022 766379547 857456371 539269712 591132546 423563093 772556522 658035651 919333504 955595033 959375033 72524561 455459345 5331119 456816426 55739455 811863342 606136175 819253551 438227572 936353346 601911393 747612217 997386997 999097506 88326742 972017438 560256343 800640063 271287546 873504319 427165569 576639540 912617909 932517363 50353902 916095830 585160179 778675690 279554001 999360488 359726900 613572261 841219671 990521285 682629552 990525685 25733152 549004659 838796871 849237887 580834306 858291770 743455039 814760118 396692873 795253377 188194921 679249708 445454065 752212400 181937500 347637065 241665009 554776915 203105448 923878249 825847533 957148877 955971875 984837123 951343689 979982792 390457475 638002207 376768242 728668633 38658436 393754385 959650670 974381589 525783559 556666547 399986772 785700650 920548213 931852932 308568983 964919180 175302488 925131404 34975921 131741438 629120964 851178800 231212970 736555886 874418925 923405949 448048006 668536835 815405241 963066988 53874974 994345058 891417857 983666034 135557653 834834613 386487908 946746967 870442005 944803543 333124209 972042725 628610633 875854009 209417338 560215892 605920512 922183535 11930653 870625032 170349358 560984052 318014618 485298052 961870232 979160249 439527151 780043493 667952005 954853391 522766811 800262306 850242426 991890403 251862229 629858920 868792289 909743537 792437390 849224465 839744496 949603411 819718484 979883156 881427233 951900966 2283991 46294326 529126013 767088720 575523979 627543732 625925248 689300482 703891651 909056828 447483257 584514985 706204525 750922801 287182836 678128930 925234885 969936134 869093655 956924341 11624716 58912057 595035993 984726943 825112093 899462897 342279724 726059977 207252565 798116346 288406431 297849378 292370793 513581962 575030065 942818268 817619167 988677531 504709837 921702445 429299351 477088167 246325520 597721551 702074777 916568831 121502550 228445720 146413214 247971708 692120435 894193128 198968168 270355187 528677531 672809294 786313936 979798523 559087000 794740503 149744081 295179613 102522436 779954443 835265530 980187653 368201933 513618183 210148423 801916817 577774299 988180042 233268277 658927229 860837064 987729638 524724451 933288545 615713313 962239106 555106581 734952481 311437677 856717776 126356384 781794961 693424588 913723227 430313803 697804555 570628067 846889374 175278194 841190285 447170592 531107559 298322548 326533600 669964839 994033283 309268423 852990616 812092256 961521584 10139006 581964628 215284068 423431084 619828152 851419118 319282857 416766946 623847240 789142015 16982063 465218717 831170263 942966318 626946163 990660006 991072065 997440037 386520864 540871159 271280921 625700681 523903851 569429351 425722841 661299304 305011014 458849261 680674763 689417223 827832844 829543706 283079039 399126082 69986745 480819585 212471047 954109898 623667066 863611160 543995981 576903349 800443976 865032429 937224309 945171872 790703509 866647612 802193853 893489141 886947485 936311627 286162190 997691154 923516313 925790896 150286796 505678461 701255428 864211261 217011757 574099717 747429779 756884761 810398537 833379611 585016822 858575888 658431147 758708367 264756541 531481138 914882126 998785117 953753564 971577275 519029706 957216919 410637129 603807937 622309605 987615365 902225944 990976648 610568750 822643843 961378711 988893273 848314743 952867531 721453504 845790996 861682415 991184321 177983749 740808635 672606388 993900010 750766105 877777043 600353197 951569176 598155634 870956913 558488370 579213103 363401841 382427207 58051943 567333684 218479180 990957340 854026570 919242243 441202784 956789984 198328952 904629447 512529581 657272439 770110566 860713964 386936626 718664597 34281055 919946409 364470755 806634020 833579657 866409034 768152831 915203369 217170255 736785854 307745190 687199936 871272385 990439450 204636692 630881571 65027645 813507844 887013068 893551492 613734410 798213677 547144228 661639180 730439047 852732264 257667499 399145775 956824906 988897711 778175478 792640359 881580893 947083084 819617356 951207022 364365033 725479762 637838445 883392129 738096145 947600469 57703713 267369498 76739150 309239486 517487903 545246797 767653512 851157596 44591462 413972482 751051689 843464403 97395716 236942998 253163869 552138487 5516571 825120552 584505804 613611337 463810432 741978937 209469206 434604701 533081298 826684387 228878602 802952192 79530788 864741242 493150711 739777817 289987076 470558460 229599665 778080746 678629365 996294473 508563608 785169640 680369496 762463905 391179338 442266936 766660959 793608840 826746178 871366472 647224668 954000214 883431 713584932 372992689 540753407 508243958 938584612 346031279 430991033 495977524 710482196 318881134 526480786 460299834 839949584 493997664 679450388 916284507 959661818 9362227 107148666 62758383 582206820 895834135 916946392 475103472 761708379 117383737 158597501 158794907 366257494 588901766 787342063 558713053 834658153 98459163 132116048 677253850 752517677 981260723 986183195 617765691 819372414 379008981 882649879 360515512 468903099 564274598 752401137 423901694 917565872 72164688 759213647 351160912 963771783 425173763 451359522 442621754 971995085 806874441 836714703 579043147 972123510 100166607 554708259 516135055 517107969 398503750 573738495 714684987 958675984 906975878 932817240 15025755 849285936 245721565 380581459 763073211 887123101 104779134 706501663 789174826 843363440 176673366 798125652 465565291 538602716 531603237 667714784 74045121 966370345 200646374 814909129 274501139 914502465 66465312 976511057 405343892 701245004 120962167 598422708 496898482 890453452 973718780 976970290 591797054 894578308 554400231 809564660 846798925 932942990 615508999 990473330 536917584 851401173 555128500 896096408 481103563 972292402 583868685 753766681 713076409 749532141 82643936 736833519 556811392 695615782 158627096 989222259 357599547 853574403 683635606 808156613 75017470 467566572 355260811 456123766 331585717 457734777 835544824 943369737 286102986 873282332 938063803 990527527 851598478 891106194 393998314 934838146 80581727 428754444 457726657 902153255 419531338 986187126 743877536 859943640 127617410 439274879 696514694 817522512 849738766 990348017 896874713 897772362 725314043 797280372 858792019 887836577 205325193 323113018 896128303 930408839 306772065 785144317 876270163 965542690 54188735 308013408 876957975 903757322 874224461 885384527 580863267 774324511 159194352 538721053 544771603 806709963 557990496 790532631 115362612 769161261 621856724 622990990 400288327 889878143 44947123 777421977 192552003 628741123 322520778 982642958 919959178 925452847 647337104 858441948 100373011 633074526 701973509 854753028 982368951 996658657 29388215 691603405 888654730 986613143 119216595 720932689 256651461 924389651 763768411 895287292 522091504 876734717 389804385 661936154 179342253 849649437 133514363 229505611 626919450 896097129 355983534 844055805 109319370 921012631 185319257 452065181 10572617 375631295 626955388 957000065 899002137 990205210 9009899 223409080 726632348 793578854 521974703 696755954 796628187 842004754 432338864 930753022 347993290 468193804 545746593 595971586 658419799 698246574 606681328 918239357 984495418 995468388 438708950 797954840 976128957 988960208 369462316 604987105 948770949 961688865 27036340 628633868 971764032 991686446 27099277 608450099 323474588 722359993 370564816 987103964 478061075 985787156 137427927 280885985 310544640 585927632 317160341 377365784 795844504 847204119 672966136 847361042 691179801 720542691 285961749 689415869 646006701 846623880 328288227 763521503 535049297 717390104 959948748 979631467 446655253 490600019 789812738 826068591 254964856 948031967 264964473 594176528 584219645 956122563 874268370 934125718 184885695 686312438 391686307 744751263 323620403 942554086 652528912 848446018 500492411 895454763 912562993 930802737 346558538 481074741 659914201 830483487 252946217 596495294 521443124 722607171 648798435 704890813 263608102 619489911 304136912 942607233 716341242 837952380 534015934 827195929 576100864 796663473 433314000 917053015 334982892 516747963 553047737 579480855 270939274 591092122 22606137 727641491 18182065 737098086 565395134 985148447 146128810 750221006 433117895 656228325 735538002 754455770 152240520 819094684 501760930 711747991 933255930 960076275 942001094 969644301 34857472 913216429 337609451 582756530 293678517 536020137 378282138 756367332 44954030 129840751 956429840 970313290 148022251 868310342 955473604 980647798 556514497 646746653 773287430 854097606 877657660 967069211 605784273 655436353 909528410 926335031 156561494 502872501 73182683 146648173 210958540 662724310 147132166 589646737 964334053 986663696 128704813 383636774 151330787 815233687 2248857 406168102 427375931 632377614 582560014 823007724 116704556 487526273 209522067 915299454 653593738 780389359 900944512 903832508 972991693 993747338 837694208 915537296 264894784 542765224 640675121 794826244 815646685 882998269 353611768 446362039 418736319 911834031 726970911 962491735 503641959 959753252 215758124 993932047 854580626 957906338 965032373 981130601 399418045 603105076 364899715 517418112 295745850 353647326 687374125 947857927 97338294 364426422 294067895 490208251 906059890 920844425 945413643 987496986 727244314 958759520 584781615 643742042 36926620 701712461 866011578 909510437 66754507 962342111 720278833 922862982 211079791 377417136 149343860 525358352 460712458 834193493 713901252 974106686 129543172 919304734 796442577 856416096 360141450 694528370 270974600 365958438 390088130 589336438 931616078 990415345 627681544 810977046 902940212 932655952 182162982 259397995 768935345 889265108 557269675 629978943 825820835 890683670 700479701 965944805 117426900 516052918 995341072 995747094 189357945 718676655 7375413 775582135 509271646 580850667 27831726 452394738 486495492 931928622 622193732 641891376 429301413 700841310 431605658 628857191 792751193 810233287 916473156 939266792 262827206 921685234 853893539 997958820 554705258 948479017 828656139 925994429 39874039 765544733 798549547 985416071 757268431 884327878 305938618 977357788 39988964 689258202 159931918 447643461 632879073 686635129 847202930 897554375 288063524 904010987 876366849 961124553 397641931 662523985 705535983 715908973 476187066 871806819 36801909 574937545 995710764 995807452 131137219 682154329 336604908 581529818 411580435 432054476 743189702 790670139 141356004 360601305 624895149 815692420 758345474 797929907 127031257 760239008 746013939 873713126 354027027 978205163 621607258 991190264 438555979 875768639 294197184 691409796 932131923 997827874 155399573 673548931 260571560 445136549 941305885 950871555 785777022 938550929 869620959 906576982 235085233 512099287 848769677 897784749 830429171 990662595 261189203 869255184 775320567 989745372 415000453 851911014 130098040 312811980 630800059 910814188 777315951 799335361 981735120 981952114 184286948 593818524 830945470 990470160 498412543 915113064 485293186 629571343 149353484 701229315 835193154 841221663 385222826 755864741 809790691 923675209 485105656 814892277 643706905 705374758 910561324 988072549 769286210 978938906 867643605 998393269 878868820 971789851 125490611 532607122 504967024 746871305 274855857 782730922 556930601 629822634 382177872 427371524 162023816 299576987 299429827 634648103 938466904 994142217 965933905 975500044 768980002 852507973 273020919 574492829 372883780 404436888 758438355 845401304 180921914 831426306 858355949 892757639 133238285 307595230 748756213 845109821 911981002 952944807 555975972 813002029 493375500 857322194 709066473 730956900 36430615 186129066 643773447 723095115 821245707 834399341 921293082 974668651 363464110 769817475 915059510 916450806 814723142 889492963 526754164 913369980 630630281 811392155 875166741 976424288 876040840 915792233 256236413 892547904 249049975 338070682 388127282 665303806 750808212 984836093 406883869 750435245 800153400 802382255 280805406 785386369 546783540 735870729 674074738 942735146 671740626 969077379 825252185 994201776 927898112 982866586 101270908 894306693 864127398 980817884 670748957 745431766 165387719 534075414 294418990 663808177 263042361 315114881 32729950 472758072 560049221 942226534 898006069 941777531 175155897 997350561 416890702 738301139 603091842 824205239 924722636 951364938 65832704 284380864 953710170 989547992 159034450 914279730 372171142 524943410 216906871 799527702 259583017 825486563 272224329 432918670 727837869 803688980 150869102 609936266 574675070 993988455 846143951 876620676 704905854 718198813 862625107 931331803 711218879 765208976 642228026 804853143 781787279 934754118 223890500 839809026 229174250 764568213 101078893 529563770 537556905 648209171 845589894 960629322 574032597 614322272 148821853 465889126 271822293 476951791 49447892 916133710 573695275 660070329 408338068 636367563 852946919 950330785 81885888 322124342 283714933 631475749 60992907 422778407 664463921 687736060 138637631 526592083 347775706 910550667 690615435 925411376 255225623 259542603 961479407 966936998 318459428 484011646 458962472 662143725 635072986 966247800 757870429 847514682 114351647 245186355 368171165 569340029 701168976 970111162 225609814 623225168 58694859 776449291 380854816 712732940 343140805 841731819 904358753 968684529 322006367 875207248 393501333 401557195 876293831 877921755 683303944 943431226 488046513 952885689 705547391 818816666 51341622 440618166 175103578 660627548 855183011 857837381 791322582 927061824 694288771 698256417 183706468 729399073 22966773 897068369 170985989 797367364 899497265 999383258 419523784 967048638 558276813 879104294 350751773 974210716 400514836 408018548 689423930 804787130 550592404 760442664 64558899 429316230 611791263 874198707 968882867 998994814 899722665 928410274 935880745 970142859 295611458 850254366 559902880 908517679 672745484 998041536 949275135 952603462 867418437 919794834 845475419 949421908 224503935 773826662 662375666 936448989 243480621 743409593 939669217 983255279 912201910 933121247 115627771 871892432 338031584 695792348 953367863 977245290 931871087 941441651 975878584 983321161 270190235 899759880 895423492 959531188 652341007 946809549 585524645 908731343 182111909 183419798 363978554 884905711 480683924 814923354 567863834 913660646 296246186 766097737 850568767 861860566 908923998 947412269 6416077 225975610 631104223 737947492 855315278 946177723 531009095 879320126 851843664 936252440 20177725 538020144 744789708 999132887 958305167 975377966 130032231 588959668 209504618 227499188 288329608 910916997 270786108 435389388 405286851 964455862 792100225 900267117 383966921 971422099 356891656 846019402 197031286 528650141 814531474 948412382 454026861 643819408 432906367 507301286 621945384 839500800 158820057 574363349 309339867 769608975 749809239 836432552 918296382 970637797 285528497 706517649 157781372 603880184 816642639 903895441 887868796 923040237 641487643 919333277 851525201 924448295 426502852 645409120 239725130 623643361 584265464 618880953 335658507 377325582 417716152 835710559 414983669 982428282 49347782 278511423 104555910 868934215 853242226 867490679 120168267 189073094 807928121 911411667 979025171 987309003 829981749 832873864 915798280 969256040 752961115 923896563 177762586 802448586 641268211 663297953 186699784 549003934 580573236 760894475 846595271 957889155 268442940 895028836 98074175 915846658 431074675 779176467 402546098 720277609 200343728 835965923 259427230 528278828 761979800 802232510 239544482 924800964 71792512 381297793 787797424 895615291 769476781 798696598 923567160 932484579 773025639 877626252 678517175 751971522 846530694 944419644 940037159 997935715 685442613 886464163 194543704 500982912 211098103 314291762 183648406 878287076 685871442 891729700 958085692 968830273 477885132 843103580 565092011 990919167 175607356 434019172 218302549 732265126 700144006 740017163 990335277 990596208 783308738 987484706 698122014 785183605 107104221 985663691 402289771 773669110 33073593 118927500 861586543 883707146 550911717 847802245 366502645 835405257 268676039 526455432 719104207 804125079 163053645 464530320 582379349 885768070 748790052 879198198 253144448 838273979 296484204 308754985 155187019 596939264 236364117 853011461 607846866 788742186 841621754 921031301 711183612 867571992 318586527 583510304 755039476 758755835 681959426 896592600 669449483 802370512 605167934 805794683 192701210 965411210 892400801 976327755 299454223 915638373 952334071 985451927 275086667 418017678 400851009 493517213 755622665 880456538 485181719 860301794 785910003 822836739 431732354 791697256 756964626 818616479 884819612 978829806 491681298 916429222 659904996 825199234 163162916 304139024 635304141 804691006 888847160 983429573 32336738 139130768 525846043 773392534 103164436 761033613 599341903 688490059 941747845 947502538 995590740 996019528 215535440 373820307 482489716 711764659 398842171 742586906 789818502 961832023 604655117 716848772 903423943 952910888 599702816 863127363 494827065 935422900 325374999 715989991 695362570 871067556 430530082 540286070 389670469 656087075 961320861 968751335 147261003 411675527 783000402 905057313 2757464 995339822 500792722 985902862 936359847 945049434 303578893 377084949 628051725 873997241 736065956 752252111 58514273 646288878 294518239 943694167 816404407 987065609 863601417 885078036 712870839 867978427 905185794 919561479 203850928 708990395 510334890 965516096 929020392 977337803 425506803 527290543 864371271 945496976 707008097 926225096 592440545 758278248 865030799 962509803 53207429 502087857 279534600 395188255 105042773 400305405 402901397 697381027 687195301 720596779 164186237 432014457 199110798 343938087 53690769 598679917 436411326 973054469 541659240 861584703 664169425 793619192 973585349 974357449 941751618 970215110 643235650 839622499 554259718 751655344 162715177 918714043 248973742 666444232 197223483 467761514 331814770 512838765 898711572 985916817 685516572 965092982 290297276 982223671 655360686 955731457 799322410 901017972 143080900 869911816 912146365 932709289 229165713 960721693 502048917 684650147 94880877 980613793 878171336 997854509 558371295 752660122 736568649 956263037 304425050 482708790 978208369 990824889 643465821 710508262 362704296 568567762 350008866 459927164 91860002 876378636 591981502 932633395 61657277 602587325 810735003 851926086 183753015 238494215 237719875 280036891 932537379 965401651 483915075 959453916 232225781 414249140 346116521 709659588 384742431 951930194 152372281 220242457 977392923 991614168 647152285 981736907 86465555 482693094 35431512 778584882 836818305 918785352 616321275 811694703 147370934 746747757 926549603 999232227 342492325 768567018 900953759 910858424 669833674 814418652 260341585 763605228 715048316 728732045 908815898 989659728 966531165 994931396 738181189 798322983 454315039 930098577 778143605 955462140 9420207 683895405 651024750 779083790 407937428 573236451 43952649 899127408 461685919 586793281 812337716 998476635 134000361 286778608 571239341 617503842 126940552 860917377 855375341 981427391 146760993 507537090 682320394 985314766 867776387 966671284 518544071 617528391 552766628 857357452 271629113 433461284 877214042 984745572 72898024 677376034 406336259 527959392 502415606 953191020 255607117 703780266 571378503 965716544 961189744 978821069 334389936 540445834 166942051 556399491 370708809 670708635 73894943 165366713 493506372 898771640 356471799 469963519 334116856 729650333 380389123 837260146 53393493 73571262 169406148 246794998 833015683 883347449 696844092 706347717 227238495 826651519 695698783 897863725 580092179 926954082 707337573 724738906 409078277 956531415 540812113 634651704 252152236 446835592 230809358 802195761 243743139 662416632 289665706 373275084 553647593 766377832 421953464 613502263 473557613 804079485 19966744 110375711 504874835 946318433 199689561 885425298 903956746 984293258 627942441 794120111 13018769 883913971 321637963 668531681 867179633 959982722 214899539 951982074 241430134 928198715 714705424 998271068 894378910 946636672 501260792 655080279 19976371 981571535 495615758 841595417 105766543 554582570 563027144 916458879 420579404 933295283 467559850 970606499 271773397 829189787 62270021 208344134 741063101 917324655 85998678 378586434 448632820 684020726 746907423 806915681 23432111 616908670 192085200 451714512 467288382 932498693 23848951 229412654 607521452 702016789 388873562 791806042 331155490 508243128 502667054 677100901 216761336 439037115 765852948 952678288 855764179 920198717 241477128 388075990 491872590 780849212 428135251 762165906 154278027 968008595 416691302 619557902 302824006 437260447 301551169 320904616 409389758 603949452 967420364 984640355 505429701 722658224 886485575 959393355 979049261 997283344 524420843 950893201 233522976 399135883 189122113 447879901 712681912 762283959 686023395 706864928 385691742 607841482 783833152 869765004 186349518 698099427 209282272 791360104 956389828 975195122 483352023 747756583 73466857 320337144 245599778 423629252 70389157 467436378 930314042 953002185 970850764 985777788 145275563 891957170 878067246 914416830 173525205 360243537 747076322 779761807 711555075 872257199 775526913 834613025 538358944 612015982 8620838 714585190 176380332 928893001 484975602 906715806 146871964 336778145 109912408 896085516 115160067 550778131 503667738 968635879 632998305 937794243 444379921 889996328 277829766 335052054 975473791 984344516 358701732 976256433 865070202 997718520 984370284 997909685 387149186 989841130 170822435 327701389 725745091 763726214 965340215 968031792 981774725 992341660 668535389 753349679 390588309 993579627 33218209 520800751 904947097 972609119 899955933 956859425 794305480 942510148 297697504 877882561 710606846 995042965 317028291 995329838 464058025 474798349 855624546 941405156 206083695 945061787 107932873 441266128 930827519 969597409 481629258 972174195 63008137 914987594 573285531 748849940 92613405 581886970 660618218 993696167 484678685 982510806 191956403 575678578 346805909 739376370 114587522 525357410 905536777 968309615 477060094 932450611 99466271 771244603 616726782 880676056 942548311 993127229 736291291 933813554 585702297 744928499 416744833 895859973 246601458 596803721 454358074 460964105 127356708 947489782 970433735 984844064 553289558 860445333 801071055 995952992 516242358 689795260 73153706 370621718 589116592 772556334 439014132 657538870 453689598 507930641 854931735 897566766 962498267 973396627 316394320 556968390 918697727 973142136 55914402 908914601 186546764 290634613 393086707 509887101 685041285 895023563 377345212 819794684 122845303 808204142 661816713 830848936 537232422 540131723 822159519 825270782 744100534 847473655 6378319 759367780 69349726 426209470 899489831 985229448 483727117 960873649 196825816 877229811 418644345 546582838 535175277 794879739 243396273 916925746 907332298 986603188 580156807 845312719 745408085 823723162 111008418 553184659 758001327 822389647 184863869 828904894 480337457 668009543 922656117 997181911 765290457 819771998 501606754 823236021 747943016 749014778 648426305 742386033 353690304 823795837 929223248 996287432 214657362 340681321 119909083 241355684 251106051 794427217 755403671 929340982 555683317 782142035 118164418 738297458 663322855 701032018 931981521 959653865 419272184 692895307 632905851 704775834 669094705 745759817 998642894 998916387 729495969 972016989 914695228 973666504 732276382 807364035 913727355 970305770 236783047 449027745 593611660 683006059 996915234 997151575 700730993 885493501 815156544 911961855 330636350 495236003 412859046 987719942 755594876 947773308 930836299 980831601 250554963 254137501 485889843 535452825 377315548 760269513 361978077 794860280 605356738 946506706 80382894 756172410 664190292 845215643 738801656 856002806 424148882 720748165 449685049 741768892 520816372 595496856 764569178 774310462 477538835 506664082 309145054 886069026 258170849 404793556 290065513 974723197 658242415 989477711 604134115 606566966 311751681 706769179 626708541 665359972 403401694 930074576 489445675 727027870 5842591 86683319 443222771 477789969 373703763 407125450 19572121 389230133 477922935 864153242 23007402 588216939 283682944 845635514 544170195 720555929 664224965 959281851 359087948 720723823 144603492 837529766 269185959 488259091 288845191 705240053 661080793 685145341 706824112 827346269 512679343 822561918 532894474 799151785 471635293 685882859 406706582 837054320 65590240 124874998 865541929 873983636 784577355 884174372 716662448 738547935 198918520 820234805 915635341 977839339 292570443 420635054 239834533 551701422 801554720 834614836 817499871 967191252 762399081 946826087 742247041 837764593 125635990 317188431 946908162 975457984 380476689 900993172 585681369 657113766 774437271 958021252 875900424 941919272 496983727 934740945 15589908 189962016 762542241 813540027 29340458 390358648 475736733 663303415 500865044 812062510 55564052 990059564 233247221 467707706 872259314 922000408 708927364 926582450 574981559 702803417 432818805 794612169 532663001 633840483 767445115 904129641 177637269 706036628 11433470 482940413 867560003 920322498 917360674 960434731 667672454 979417720 522720399 864170854 273167183 991404375 495030270 748624775 964709540 965495662 652050338 847713496 259464914 301003274 156764990 765545622 599935846 883065015 86511731 562178908 497835392 861698734 749849847 831240534 987270890 994418744 806133760 894804820 238225149 259072489 434631547 548945212 366232138 409869357 745064550 820097413 261410318 976480423 964138739 997529282 4708518 951979466 775263788 890165146 688037901 990427404 999194946 999259321 29595820 786822307 8765904 80612951 180247463 261492144 47300059 506916442 9834211 245323901 722721706 984104123 938214285 964518878 71045104 253269166 280951806 568528225 203840575 278191243 724230502 776364309 487966029 688859939 742218909 997908644 80386678 651298071 193039253 828574568 370462852 618897484 143648863 717218459 643311072 790590163 602685967 637082489 350020815 711667129 954768582 992131618 156458510 216650239 67178444 234051725 766960222 953812666 154576576 616213399 243580073 419767552 212765788 520117876 534471485 536336331 235788525 441343244 450217814 777910715 92902490 276291493 714509124 734261103 291225381 778875240 698013829 882730160 504424411 830988041 736619370 792036961 530333807 532008062 499935807 875620321 917987327 928353574 963902454 972746780 402205842 906195224 201755518 766131937 772125818 982247511 518505364 592228116 995305746 996564613 205260838 260291442 102006309 847345875 380606154 990370798 179877352 529044825 274351043 558675798 47871146 105873840 793160614 875951686 722038257 977477927 657668015 678825306 701568518 752424987 909039869 938265985 605820048 833982233 59360439 561223796 695823929 883351052 196097190 825208938 901062624 989028875 748517642 901168164 653077554 878561541 487538554 925152570 355737386 616763205 922190696 935048163 44526003 311483035 311258834 710674172 538843226 747210103 173041527 977153835 800547477 867068825 40417850 674764581 236990928 475967359 968076606 993766361 168837965 659165753 221606393 299430963 181219601 435256676 704629245 811574303 769539973 942157386 432599845 883583741 689455771 786194024 973216947 986666750 746268699 971119288 241122964 286293255 488657842 821974671 431738718 715671668 561937840 858303185 674342841 918613402 85143077 447469517 249199444 355521987 121548240 967502430 436596628 952580648 156449641 400314995 524450994 940658633 636689567 973896110 418654544 679371581 144957511 566039020 568096880 586335468 517792095 559472141 688422209 692451980 835630261 898617916 349067432 933870918 4132003 989020702 615962569 911316038 278362845 954266932 265461338 460807749 953557863 955450925 771641609 915904886 742026115 745050096 71624317 678924440 290703815 462656162 506457560 811260281 991616539 997214365 75338521 253430165 120850957 321187162 320342767 583438825 227779305 299584718 961206489 991553157 575027378 615199458 338660271 521724988 809841468 887632463 272289323 849256841 861656070 978368903 105868740 517854773 869128670 892031124 869709428 986265956 131916305 813321462 17950198 76670626 727317578 850161088 467933575 928899308 331107382 562946752 455712124 702821794 331406760 609675016 800745942 827274504 166401725 291601500 189155368 739582556 823896343 865866639 835324783 986686592 473305640 921470750 831280211 847795333 138517350 386025656 830217657 928252378 229832326 915272577 247236731 745756494 152000065 834678683 625236484 907997393 625199438 736541032 2713257 965422260 174938423 268698026 444663892 653367022 217589719 995650261 974936180 978799779 639250205 965477391 317136559 692233196 676773491 690118473 577551569 597124425 11774415 942151568 896225732 905916764 308765821 787054245 961012573 964594368 986560022 993552878 39671729 312228792 253986464 944384412 171189707 604001028 250171130 352377494 244309462 413617907 57218267 103444035 695187164 866373514 467826323 837209061 868802784 876250855 275923474 817322207 156502897 843146986 282437919 923159039 431682101 988712963 752355208 913878663 179539146 698005477 65424341 89098844 925826101 929209713 97356398 808495401 405935085 678184354 446918067 807618702 849363647 867510421 828764279 936444261 875074094 891166571 952070739 990686901 588981262 988101057 508992138 693414964 258582977 580317980 232508545 302416958 453776903 961349888 102482905 757486770 747127753 858327841 666722675 791528621 301694328 723336934 503402974 648816797 619531565 698642523 876679111 928252282 69873128 860629309 349777785 894186226 249759580 711777486 211530556 985979971 777903268 816247528 390556821 772767618 689513492 758473948 129086863 687598993 6883948 395654691 228162279 544360372 755311899 909051833 349470130 612625169 874661451 890531424 692758070 768962741 309345891 945117719 413288669 876156970 571809423 575944350 71244682 625932470 281286083 492949656 112671506 508221458 193844 364788063 96255604 337857883 48753714 561554324 94225443 993593287 196586215 671265537 672880934 688468831 659379051 686362532 45359469 378788957 294727398 698984003 989249373 990485419 761493102 852454626 201938637 579590601 512602461 646199196 255175165 589288982 44591772 981344517 554539067 667869591 560580861 811132433 147540091 705058748 804824424 941168668 144541957 752799756 625513631 897261406 848171102 954010762 267409776 548065488 646217087 649020404 748684317 838301940 123129801 243877136 14911334 89743207 349796376 840523192 403201644 798958882 55307645 588347276 749540825 779947471 188694502 554450796 516700372 584895204 959806211 977132059 382959247 755636061 184459292 464118389 82706526 187344937 621210199 872924176 586261232 609627372 296539725 973254423 892374217 966397671 562582452 909357382 730634903 828815917 7327779 472585074 641836023 805622107 405815631 852427339 570035998 691288352 396722231 607156395 948481 644991012 235197758 505446816 327524843 381842382 238508501 395311502 507411803 708912271 39904236 62427580 444066879 861258454 50686979 992147864 314892201 519180414 500651556 653991848 833464230 886233711 877650186 958084186 126394154 351122189 674848671 989576351 214071783 311120278 116451657 461479161 807269465 970443586 645380141 671318740 420900682 745169465 11427534 445245184 62992015 815030525 1228165 771733543 740862808 920985443 629221530 993135544 169017525 973822713 425172584 773479585 443874143 788599190 870793671 956177527 228918685 726544421 485032932 919952741 97245975 537665564 278208679 910967273 807158735 996341934 883879150 937797786 534044407 973522129 544718821 789642502 903879370 968188132 163133744 615191904 673258838 924957204 256115572 552562650 823321494 918438495 618525811 817246901 614113981 960951676 412635940 869972112 540916415 605355460 82898837 96897748 278657952 518123999 107280579 872517098 136926482 146832929 637543962 671596645 606666442 886189473 140942396 448964255 627553944 930058565 57554265 650851684 605710571 640089960 519352662 901559249 327367073 899295216 383103378 818317485 824097953 984906025 756727120 812362595 589522671 873311983 170524055 357403964 789300170 893129206 878462367 969299225 291207410 499232157 35190056 338924865 267257484 501463579 729998732 775884011 190257584 760621025 725010855 788825354 538179768 981927038 840633389 972528364 537931556 852589136 613208428 660637482 170689900 843840353 589427018 636202012 547406585 920791424 406324797 645143910 976556436 984757683 294943558 405240355 353124604 813529240 824364688 936376868 200817195 836371094 372026399 875456831 235955351 979978946 152613737 665085187 212535393 656639061 806070157 814747579 904181154 957909613 675512831 930547637 498562129 597490299 182316166 626792123 867322316 893407394 593624721 670346696 113745430 747288234 553275208 739176672 55043405 400142196 785051822 804895263 175919870 565877510 638223281 816304861 993165037 996948092 267777778 834540129 206169084 247453351 162726890 657535925 61974127 713952583 420984608 645536185 341812027 652807691 257618123 593559847 553465996 834336913 608755662 648686099 137363266 985255853 805269468 881488744 605213137 781790821 141775533 900971813 99485797 999350809 502169615 600473734 804261624 843915364 345967014 987025361 422879309 956683154 780365808 846323977 70756137 548607313 920879985 953586970 741880400 792386133 195932672 716179349 941275112 990027281 166210179 460377302 810817558 814717272 273116665 293957786 411783196 657126038 380157880 417237083 312284266 835917347 342104777 671702020 798422836 882386594 581904150 794981221 745026399 974399993 510112433 693569130 935856237 957251498 612500167 945082809 148168777 477971302 987356627 990619003 101847880 591819519 782375857 979339423 265956849 521202407 331238096 457263256 248646733 998246739 596557251 676674510 751626744 781300881 724189362 921544109 817217515 969753751 443181515 767541081 331445004 815675622 410743822 840684091 322788477 538874690 564692002 697605060 751607945 802075307 286714821 712774780 835285007 994082797 127166591 178580191 815120962 863096093 662664758 815294914 970878393 978305850 44101921 886090317 757099785 946952755 977994112 995676972 203677108 667522540 174104933 599965810 699574466 765846019 892789151 913155599 595981853 600101534 53292537 151954963 887573566 962768259 20514715 800720906 329601504 755048850 19306230 416974140 766612149 821130440 438689325 718311388 337059005 968249245 338780974 342244427 119585541 959288222 946209627 995833712 439519227 511977145 378143392 604236829 285910240 554240225 538808168 544237105 458158448 752200379 1634230 413596828 987691090 992695813 682834209 929392501 991858558 998901210 70791122 530184304 298184740 768034665 863089161 930107338 194485124 367920054 992765043 993338212 515345415 934548403 488712040 534406078 135270749 309262808 81037358 204016931 225773116 451658513 850367603 893025802 899725142 908901668 916322003 916803238 687507472 984905416 880980982 981226881 679063120 948245165 332704714 856883537 960702715 980936229 670283228 762652433 326938299 950779924 985757115 986286485 314160961 441704187 174379531 365455593 710252421 838633399 780502318 942957382 992841436 997976894 113428598 726412659 269177663 640933292 457998298 465065481 489198028 727734441 670235518 971029941 662513740 737181053 398592234 801636913 421075902 992746970 460114555 709763167 2978719 883863877 122655887 662850012 573144094 656023973 740464072 963391602 144773406 666471935 712851075 901776765 784156918 908467380 872883482 963812498 703002637 772496274 573979311 927764417 749635277 969694347 180944640 291815400 682442227 930768984 870312088 925927382 298626280 549185237 487086926 695253371 355416616 703781611 485483479 648118093 670594760 892357193 715437803 966746849 421419792 580252895 574769099 603696800 293373019 579171385 669600826 931628440 831227125 930136957 617858219 650168756 233293258 491642503 942368248 975310727 180115915 397562833 71098798 966550219 271016304 356889324 288467513 746189324 535835030 548673757 654704767 668986670 620949193 766177124 258229070 379131424 606553657 793736456 935219908 994063666 728117592 776006159 90539547 676522959 929892021 976105105 604337317 628082454 328046613 890763783 428872923 869859764 407797849 587014111 202069889 468675398 82197627 638381924 758632561 853316718 701974491 839435397 61624435 582843776 976731919 977021033 809249861 972576704 548682900 729814123 433308621 584578313 534712430 802446354 178449592 653604098 496444748 772627384 269249163 687785372 140605730 983987538 265704923 326908077 965845315 969656830 854500859 888920158 565426597 782090289 718300513 741632555 106980065 561236003 406971190 933086288 811292944 963907482 665939409 976043381 92259573 472252460 755083319 913930434 291703094 306488483 17024370 776622065 425254246 538634053 266762760 853498046 454688611 471180217 52737193 462851759 471774676 682732770 717626169 865439573 6539785 845519123 336067137 838134248 491746357 965852105 619559848 985594654 268705118 587100393 345420304 940254098 392464933 443330589 120795847 916328599 74662314 712385864 689481042 965999365 524696079 826646301 469967459 766895107 904376717 981389884 72846061 245303428 525080900 656727075 798327558 879468096 738205481 891155652 303565146 604429682 201661675 524713170 186106331 702119575 586624099 672334072 669689269 796792421 927417272 994174238 820557516 918396943 554978056 632561373 782670581 907772607 63804889 931187510 244740525 425144476 417067540 536393144 933664011 981873173 429301641 450562639 890028012 985665215 150902116 416186612 55869349 303444155 636133083 976432516 190606540 483419768 129048971 419879160 915747198 927759306 99150593 246481866 8206458 900039878 333016567 817739493 532467917 790925579 830519787 881608356 260690045 314000865 420369063 559098163 305227061 912524200 383635195 513690065 323554473 737323910 797495542 848368377 942351578 986375790 798261951 881408336 3792349 135517992 689404339 776508230 368863032 844122853 679940001 913782076 576236891 624181672 98983526 279998984 17418219 607569302 713821216 770307695 138201756 743034005 261624725 780934781 267289125 564475796 734770435 909227229 333273936 599858844 943674904 986387853 224019846 805913975 234633604 256189031 520040214 978927454 49737246 278038155 263540684 677909899 520277271 895660968 572971891 715201161 770584563 973937003 789929510 828443332 297508607 912167721 301348363 380996126 45041758 56835425 483664169 525983966 913460095 919435849 241844782 738659757 404383179 683386510 406468732 500845114 426827423 785689716 972000168 978614526 92025530 464907423 118782438 725253986 444371478 487901476 117295037 340089691 298245856 634845043 201009881 425023881 536766490 738164672 356065203 748558472 756847843 963247755 665670578 703010773 527610113 662451467 774544931 976932842 155917002 558038713 716672046 735451100 667788317 715734011 515178151 619153224 295034001 631780944 886771522 910400393 622957893 820916581 726577913 799596264 29267379 968927769 652700225 728137963 428535132 692160065 110609086 518347737 170701432 352531722 894623623 933904824 712735503 912447974 99335662 524998413 4243387 73908067 574950178 807745893 195006662 195678558 328908047 694637411 28753324 952789291 167835749 959736661 592038719 825869938 224171427 681214082 678831590 975945167 584976064 835380259 235082622 484864504 756526989 976177133 483004439 885430652 972941123 977691102 470872247 568029957 377527773 787432320 760244594 951135787 49945012 340218823 752520739 996171973 654011894 693234167 265298888 606112772 132832206 151129400 28080779 426811033 741010817 885137055 369254494 451919850 990674922 991567744 768999892 831320190 533867922 650422714 822971519 993031870 789385383 811747916 860363133 938704787 413671940 917064556 879744383 928272001 11152778 474220506 90660523 583721232 235744915 336461335 774504720 900302135 910882619 991377321 393556903 489437727 818903384 896144699 250370608 300554337 326869321 894372230 207337800 737960042 781801881 806241824 248661299 353953332 404483129 808827957 765343836 956760884 898095950 985429722 904952408 993233172 42559619 357484727 489262821 692177232 190378396 787875480 801173703 908056598 628828758 709857461 700910635 915265177 671692440 917309300 27218478 620941088 236523053 789886904 442582790 906201794 117258422 383131755 252370283 796389126 944685911 998224590 504018579 910653711 646423400 724042440 922254462 979095571 129613761 779921630 120160672 617248959 821514079 942321007 530217702 675804771 675052600 822703792 156896256 795529080 798046236 943258721 777762632 977893227 440558000 963070998 735060366 832185847 528679532 939222446 678437500 789568344 806620419 969848594 624815398 788960696 246488420 584413989 546889273 663912961 895129053 910255158 292051128 375665719 456892572 482805526 304827955 448727637 422136132 644388997 581231542 689299519 616868522 746481316 203191437 349475819 113551317 578111053 343414503 759253279 777430098 885150505 455626448 579326762 970874337 987235512 31975533 751808642 629975678 883032362 911210959 962809014 598181713 773739653 463770232 931648880 997160242 998854773 763976565 814817337 74325874 454098236 471759640 675339069 518722587 578841004 743849858 846821182 453999041 753293034 506755754 682343688 28215552 385495750 171518844 211794302 592607838 779417154 655628027 760949716 16733073 578191636 851319620 872753425 893042192 911326420 36174955 649328670 152246736 561628346 265924216 649014815 442884756 507606943 13706277 413783332 831055665 954347662 291730519 891839563 189785170 634683759 371750302 860050402 297733724 868129239 229805324 714777132 607405552 939896698 426570200 733406389 969138375 996463923 153152734 552791138 719151884 747390720 400680659 520699263 750055949 818830072 488936803 573595771 148726507 370055186 519619416 807154923 793141644 971094549 258638770 288913325 753986951 816430544 352942930 377347693 553084122 556993857 245457419 613362519 561717674 957364226 247716389 372375476 569812802 666357712 995372300 995732153 398365514 636701508 201781605 704545698 632847305 951502843 292102056 962731854 725263097 881554004 828616120 829463532 919665607 922147840 567245273 749559696 103441915 461467240 217805097 706146034 373696736 405280307 709093285 799231220 607272860 973922740 983615886 996672557 109375987 371262661 980068736 989077153 702411276 843673936 893232620 926123649 404017872 695871816 695512333 760552014 367071466 586221955 75702630 168377680 200285700 244244456 97356580 810965320 818805161 897644862 527572722 993662341 659579301 692352223 105818554 261207444 927322884 958695834 30817657 607472052 999265618 999392415 210096220 538754790 165883222 570932591 334463243 630572896 963084478 963654049 792741020 840344869 419208083 520333475 878154352 990085877 936249441 938516905 461103130 985112195 56721582 639272541 679756485 900699121 664128269 931395287 340703652 411112327 258404829 312191624 984596649 996588073 445119883 934810879 532768466 783869504 690211439 713235414 660823971 831031827 618270620 933493725 168081363 636282414 423345118 679202569 178469470 365820812 521937355 904471224 190626097 193323219 760393551 866131206 19955890 654266636 944981314 948478357 394593061 457058806 386890147 807203536 408544357 820805305 59673289 757940494 767194083 868480221 952126029 974343876 45559265 112724070 661394507 752581210 792473469 817347623 677523948 710545509 537801440 668784871 874806049 967097172 184286784 364064827 74902838 405023398 707704295 733058447 144704805 519269989 637894254 919639044 371746229 895169181 281197180 925923503 120190680 826514201 811860806 850749594 894375016 961083193 783259507 898167765 809034398 959207048 691979433 760223585 175396987 777310463 447703124 760070480 110610799 675238995 732570622 881020856 690790100 838429799 523250320 645853700 891089240 901306983 560390928 600137540 619762287 732662909 137517078 443683314 331019311 445388172 636885219 672656080 553644230 675400097 670384550 967877264 451633779 598377501 880729167 947808970 299861717 808398812 664848298 869640042 333397070 373868590 252912734 492270292 339947428 737218480 134886550 407941398 902962446 942003928 203581209 967307802 997506723 999071607 715679620 977135963 710159757 950136037 877069089 962216640 693038791 741445916 714670242 788432187 237842509 898241922 624401733 704382321 153253099 887033024 976004104 986322499 259703889 378746120 770192800 957252220 123824097 250181438 779738654 975408754 20150888 865700347 947171408 961053668 154681187 530496363 557051169 763327101 371839751 779672334 740064838 919903756 746106928 938147843 202176508 874160664 839844050 937001656 602582929 684462070 475801556 715438144 738444316 881164534 442842043 934223481 885690695 993434777 72918915 542093977 577060255 916377161 66996827 261457751 773003517 972665510 516755206 842633244 172099104 893951984 576086780 733236878 409108949 542417765 836264009 958246898 317118553 613496709 4298343 776215317 592368756 726498857 265049210 885665732 673500396 921931719 35922129 130421872 658421158 880720496 90738615 995273418 293232262 531328092 199661225 439224799 232689288 330040199 451672709 717107293 602996748 844870643 897394357 983273034 544507693 615004963 339835702 884548823 413370778 617015352 125371633 872556410 738401107 979006420 662560242 836336843 78256546 684441698 665768175 716837232 699516994 701981618 845665593 944817883 556675312 736663049 676128955 946116852 837548908 925433181 724350859 908252600 151901039 709283948 596222127 713441446 360908327 621158860 255868900 913349927 342600738 609520341 861373567 937284283 670408570 952520998 958980930 985320970 537386673 681868281 630977534 782996636 477115479 900376691 149436828 340578720 719604058 985697234 275367352 892287898 465827208 719952358 433032767 595624852 727855604 789381229 417884709 698909599 499191276 814637926 184416147 929972681 110495865 209833828 815014486 910923450 580332636 817067884 246167704 310214269 274705893 285473212 780461159 914154014 220180829 786339272 925811173 937918324 894619730 951589395 534869425 874457949 80695666 89900254 899375449 965983872 449717898 704777511 823815356 936621810 890786115 961699925 126932587 671729773 182138372 243734912 239728317 948355207 937383986 951782010 960883774 984002075 898150461 907643254 461714379 585674098 20730509 542466792 227059382 286164647 672590033 789254200 142727527 698912832 185416586 347655944 238837223 278041115 554746175 647202856 248579277 834783661 896103285 995390088 254049001 531351237 347137084 548995200 762946571 876980326 491957696 974623469 642645788 876730779 641336415 922716287 428143655 838945282 209021610 456821172 970970941 972119103 119354702 172835441 834813570 901729017 666014210 892873151 336287913 565552731 160518812 342580251 439301064 923415241 288822261 365540658 576527642 881467827 732613699 851447623 401422275 685090176 708003829 916370413 637214141 739483197 338662271 740626383 106728411 757148301 5683576 60782825 579971924 751261526 590505115 966481436 360819337 469201475 717013581 779758046 985820448 994008749 974885790 976311790 633910263 745383913 554908973 743571869 112954872 847668626 635340818 792287439 539289601 929032108 87130004 750993263 654149149 725766193 685330560 809801377 982517340 991613042 250279044 522997932 553792503 881583298 227134548 756543542 728545270 990242206 268590005 546617662 285130741 619162867 227800092 541896285 670586168 693551398 711560978 881992383 63561461 633395216 3232868 765486707 30294139 974581632 905839759 991982728 223781389 452515737 122898967 423768089 426834289 832256437 964366011 971585550 138129600 902511090 690174423 984953012 864209208 946356841 391712220 860387310 983552693 999216323 341582546 489209660 323732543 795690482 693625697 727180328 13143381 490725133 933614352 993289643 685563906 701489251 130759766 218951109 537566532 758931381 980251821 987323615 249197979 349529337 74541548 436920297 889763010 891609516 391685571 988126146 464106326 899701173 495864281 587048548 440601664 674122555 896420945 908430029 872940043 894407479 342413947 522453336 63373949 930784480 241813962 436284188 134123133 394188430 295986351 467688925 747848628 758493197 516417242 626783439 7067260 493565255 692168612 697803729 952262930 987432161 259242096 979762142 900887397 974287458 367431774 717238017 37647062 537817093 889747041 918447803 93802811 433617165 98273022 295002423 706522317 974489527 405884178 970017693 341172565 738631407 7944624 845583943 950743983 968997593 897512410 944986640 673219200 991062825 607671345 611037602 551223163 893379019 850985550 953944326 120476005 814607247 448526061 699777447 611178267 853253470 663734669 745826044 45245820 46335909 309025505 721986616 639281419 972237398 121927247 166891927 818693929 919909046 281962153 378368489 617880946 751764649 660219492 888850019 32098327 289305800 785696999 866836112 961861951 972134306 649026270 872855911 882643571 935474482 461712967 716174121 791478025 940112016 847989763 901509950 370085918 627598814 716882496 953238123 406460567 594097400 809785348 952833022 592594130 861268942 590815335 862902984 631138685 921082432 318811989 820126832 624664915 839965410 950974840 985048951 695383801 714059748 370344190 785557188 648771974 745087735 383093635 543176055 861234449 906915628 964636526 977119921 989464892 989557451 433551126 601967722 48046275 113962134 388793953 463596908 659766009 686263431 859424430 987128181 701385306 977260483 886533022 916953117 826033962 856483014 622183426 805148796 578660131 619827562 234327663 926204382 5377915 427084158 659269197 864874954 355119453 996652121 885405711 954634048 935107632 984516202 929161156 948205433 856639676 954256556 756378313 758850593 386628153 428183978 683211178 748636472 249957627 507140013 329350799 738282235 418209907 797740242 226216570 231743898 70920167 450464324 304494438 606632367 210263207 540022405 173851646 596308615 875727202 966101367 901094072 996797052 749134017 875461679 734498547 851759416 328732241 644249059 566337093 681128543 64186364 295194275 139848771 479809211 204171175 647093533 401988316 595449144 288784395 333708178 847921134 897956683 39282703 78486767 110156018 627533986 471518596 876320450 387701038 579002894 887418005 967375182 733311771 936983454 766900524 814413149 184415898 748405500 768229794 945362782 633174725 909589019 357357186 569778187 272984278 580078365 516520870 704356192 286737437 839440280 864954808 977285765 452738299 716917305 158511237 380201509 514623495 914355879 593952603 917367359 822634723 961600710 799561454 863140811 877375970 947992783 51869455 599148152 335103931 485917856 484478845 919098758 408732747 609280688 698869621 779706230 858641585 889541088 487118103 927739955 726289056 922312736 691341993 729983267 841029325 923614310 89718247 234030045 851936701 908138285 633105934 955122764 920290915 964748307 113515890 578029199 758642668 911285318 375590348 971601825 783046477 803469194 57825233 566706777 187544699 676215210 994933717 997536092 459478814 661274661 586686816 913727181 712099207 820452341 485109848 599628861 570645264 643515316 749774908 945018860 863405015 907525656 70349835 412690565 512865706 701821040 145496124 911262510 420381732 976690132 590948508 925139204 80331406 802513891 952872441 964517024 199330939 650937850 559142605 766516762 532927999 669244206 761040237 849360922 962977486 990121931 352416635 364352531 492268479 501223905 125780773 396836779 524171423 841084535 936288326 962025060 894681985 925782831 537873937 818620535 360769750 981023308 122826783 394669987 135983460 195432749 443081739 939551516 774556426 906306077 829866169 884421214 922708117 929910237 483773639 714699408 931037016 991163929 581812207 621488182 810284326 829803703 179903396 893540788 870669499 963521673 391051953 728163265 653749672 707547840 471351224 849563090 487595302 760687973 161399595 608476176 593283174 732226743 99361455 530210248 903285514 954423354 674744043 821103597 801351616 890969952 737837126 764591690 835806185 902574202 756337539 873270330 994262053 997968784 744469367 778123060 616169316 913032327 94440016 243391867 511502098 845101234 26052074 804487062 980541904 998233862 670442952 808032719 912886776 986957112 387743729 748342700 301281522 673362526 833111363 852581755 825398993 831299262 342101635 783183126 483918457 997636831 185494612 490892665 817914772 886974122 549136963 607301520 223786951 256460272 224435516 865718669 778747139 907772135 987863323 989925059 918033585 955084966 973976328 984553846 694681945 945404057 308799299 587992901 415322653 935412454 529840924 658741264 360567117 608436292 410594013 913065155 11896099 105176485 243449799 721126891 669225519 740306805 322347737 983126907 663961795 874356308 961003702 971893085 302302157 984280238 809984410 990365632 836387216 992901141 703023965 909951507 812016546 862207437 638887468 745331212 373860891 569055826 406053398 533663061 808377894 966704671 609454662 649251545 286424614 615357916 403658386 796037472 521913734 560758711 397074059 547538949 504295643 571320745 788348267 948469485 158360965 960329450 213569668 589821613 148753373 167082899 94640418 523107844 225930667 357319934 841250856 871450100 91558937 334490388 93831360 591656228 689885097 978157186 304873276 671556451 149614596 584824642 42008532 432424268 613531531 990088552 818030650 827986167 865472848 995702072 374936601 587845878 384436058 809174964 925951442 973967900 160542962 345159874 328801667 343151793 170633594 336383145 530850693 656245038 909518580 972355002 954676320 966138797 880076363 886335852 17288509 414221549 760420897 862879948 307312092 733830845 826065904 876964467 531407967 951895724 270516028 674861871 345921611 979274569 52210663 883302847 879188935 926217010 302378794 763210157 308674436 328732442 116764186 628995458 479238419 632405622 206359431 766589315 974689352 989032119 815146761 831952831 971327883 999178060 119561326 563556880 420258697 595806497 61045649 120273351 812922205 943247498 239134830 772708326 465154471 814003620 977644816 988579770 877139769 959492101 675932848 681415866 610931643 846821521 280990560 869592578 193100359 990399909 463981873 602591744 967381632 995431431 590636094 794658372 21498566 265138284 269608421 741606409 307159712 852025887 513021802 897063759 911204147 942671451 918992901 949813501 358181944 918791149 826727438 837788410 775843854 785335469 975224405 984027992 194853652 652603142 845602347 861627076 562345782 791491136 151788 255155243 648908821 763803177 929995086 964267422 268706980 574860974 339369346 591077122 653779826 961069034 821992099 857128101 739155376 849943544 508639903 746025294 221621943 435006124 870573281 936843235 807313506 807871873 450335563 574510397 551007666 931558465 801128558 944717179 368168503 538585556 378327838 715170369 386946279 767122947 323216909 986793036 300698243 885999945 486899735 980011658 316452484 925456058 478610965 888191340 164932532 898258775 352984571 815814407 280457024 640211544 955951252 989241207 353343944 822506107 24402761 130800447 951577528 962619064 413623076 850539606 361278557 796018341 689572891 737029370 199345956 297194917 284628330 727203125 142876627 392215596 314022329 441572677 892977529 898437456 835333575 852781554 258206053 920575652 5013603 312092588 653572622 695565990 461516278 504614626 455273912 791398102 588496510 862036528 403750659 480511775 348973168 814540429 11718298 264179528 679827012 813471953 762486474 774192215 974395724 992357612 968707151 986101024 56086094 891298661 942351910 994243556 775081927 856245627 549365239 590662620 128852416 258818402 556499766 918501836 119199506 979322967 399308505 984264199 245394006 395946394 617396264 938160412 475472700 862916626 642110923 910524858 463807863 991849291 446865058 597628278 811857279 814135149 854379185 910056705 778185350 983205185 840946382 996803117 548079053 651847330 182246970 305315890 543400065 992432940 115330730 148498602 579077469 832390215 300531936 408324528 362075816 584577731 372231975 405291467 303316308 558362581 119592695 380819607 345357852 648972303 675147378 681924865 838108626 873753001 303101856 653302859 393106451 939486712 941806208 991666154 757411401 976981805 649608748 810214351 292914524 408718300 218600848 254591112 656175138 735505005 40427205 779661542 903390436 978050422 237558866 347186437 166254476 964768986 110150924 646963659 410629762 416231350 356564472 544383504 164924945 725578108 368171442 645924559 300959554 933684815 420804345 617012664 884495215 920434154 728438948 758300482 131850818 584884220 926538490 968251830 848779490 855237489 654248064 978081774 501078218 883495918 543672268 548608297 751460770 926591292 261078811 966040463 607730924 742874089 210073829 594894806 887313507 942857349 120518515 343935040 768635395 800940644 556194081 612811226 453089160 610072309 332470467 884249457 582132186 624048767 620903846 698926495 863078136 962047298 124962793 554376456 70902510 735581290 758396401 920883258 733913926 915574121 848425591 898394513 869062658 970661120 203486428 671670996 299277380 742485816 57012458 105351185 462717151 864806037 128713609 277733994 226038645 550288184 76344170 78077939 689195247 745300849 103539481 568634953 611192371 648176511 25345131 618163481 665031688 669169654 732381136 863453284 282899845 699772545 386429006 612166722 735131364 869395524 490814231 691667945 159895916 190988199 431735037 945766051 103504688 668869746 211751900 680484555 888146119 996893770 925655042 928978903 524518752 822034270 945421716 989338899 524682431 977271468 879852306 917509621 745787320 930709248 68317975 592526901 761541701 774654498 581850874 709614307 12185729 436157822 795463862 955612184 452978943 565341530 996035645 996197079 56992494 491752600 118845594 201534905 679582250 710548852 876247771 921035619 307301893 425675912 212236748 852648077 968789256 977796158 232493243 924470348 96887468 596957056 744255377 854617560 344467710 932952057 951800131 983392692 973606343 981327026 183177698 268976112 994494986 996236044 605955267 708105631 827611852 972800892 425725250 849051483 571674106 905513339 865804122 997605793 368255000 885641717 814468211 873020474 596421658 631475540 657922755 815994422 209621504 868102911 81004998 907092939 451122170 659276367 505764603 844178115 534750276 694637761 997665524 998957548 113675552 457847720 483199931 700767005 802484428 940473282 860002324 979506599 580881936 851056306 859206207 996280534 705413517 712106071 169357316 681237886 409890152 719893654 68859755 806057928 604502549 879584895 895120430 934247006 791695644 877239268 508578997 572532470 926851383 960204828 714099044 936752198 548462439 953711492 669430659 916570278 585003788 682929217 173647435 605798677 224963784 623356398 218513699 294952291 980272279 981360323 431605112 812424319 40783958 287474833 28774102 338541935 647777279 730176151 754393669 858404881 896230668 996965205 556864272 919996121 445088555 697843919 314144206 925251264 957762845 998313172 693831917 889406275 305366350 666920661 166066372 676874771 927420580 991410837 941840706 961044629 617358676 851605091 258521005 824074407 606400365 665760631 381078306 908650653 741604227 894715596 364525932 609017702 626918360 920389114 769649620 954146206 542554177 872142494 881773520 980797461 186217163 294458469 899425984 936890004 937373531 940996342 494734323 539208605 501601560 941066452 719649224 974372859 297124943 584216302 197507814 332985862 915628501 915790175 456981423 952151387 82537420 448724390 453171209 640293665 338020927 875080841 988362216 993180468 136324906 221282955 393458413 711108404 156482322 246601583 57600749 678291007 26878429 649831436 813714636 908876424 54400499 456587879 700258431 809169469 928425888 949097183 273222537 336251001 798145121 922861726 694812177 950180064 5619279 697747029 154696644 872253020 137870215 876333402 965200275 966476872 574374341 804838487 526261148 603358409 700062316 849073790 935145192 968166936 185915168 972522457 944201210 966692224 622957582 794852975 195442648 703008985 838083631 995642171 457710595 653519307 289873377 323005789 105712615 720119212 625069143 987551885 743562771 766037592 256338203 589876636 806187820 990262681 793832980 900512644 325655542 535184224 191649661 288083555 33827102 482592583 177132559 533512740 345803281 947022305 410537130 982919147 302418803 907821013 826529161 862593364 991013510 998981669 301358581 812670562 197937278 270502799 880091008 893925037 425763370 910136915 713626985 994185125 970308683 985318393 453653258 676845138 165236585 476369049 206171550 285703138 50650864 140385252 869418496 998037642 423181581 938709055 313914252 699297124 712312478 939634710 886199206 986799034 5580006 460548068 531790679 709030294 365304442 799021379 459642169 478281913 37499282 690805089 82864676 171795740 209283940 602389262 283511007 746613715 167816774 813785508 461618803 565179190 606394904 712228553 973156821 994961260 172653493 945208780 97639970 547967005 147115492 180154587 59187241 550710901 477213184 738408209 265614769 625251874 5349945 502833530 804673193 819188744 151247503 561580095 858819535 998405768 933577072 948242253 247599686 882538841 92182847 508755688 890279365 891722531 823930302 959371696 887176097 938222828 770100589 886379010 736388963 897833802 834800000 932809956 60746853 708973307 678502214 688330907 525617036 853790530 362294421 970807514 101037356 267916430 452692756 682195614 3819616 295785462 718021468 785996157 846101518 848849169 828820861 934224920 838818538 890862146 27067668 212857501 994831013 995507224 633077586 704897003 820676446 823798484 31516166 186514428 651598115 799494913 887800325 924634693 82493966 139574093 375131798 440101683 788038060 942203486 63937763 639523102 742351358 902037140 209734147 394764172 443969567 536513131 628272735 716692137 522831778 672511159 814111497 896074018 515340426 973418744 574935908 966664394 745493156 970379304 195894883 575846252 631895809 668218307 607208169 844235497 657102877 671734835 32188548 847024772 991719410 995582818 418422235 839152893 652502393 824278093 565069108 833134237 472065763 589197685 218927729 971887005 62667310 310645190 351102785 568685026 518481855 716872217 675006216 804434047 475964670 559969462 860632808 946247590 941235726 964814449 918591746 942943871 293163882 543879292 835903649 998720505 543904029 919132721 783213642 818810288 904573706 911259720 509991143 843098784 720958633 950702065 22229481 642477153 135138372 507913459 12708567 796252474 226001849 297949612 885735110 936680511 712987594 970521332 836728451 937988937 345388003 411008039 174973597 407568350 85102573 477277318 340427629 535895669 397936796 558167175 335400450 786157684 7720026 59331373 485897993 721310449 305147984 702219653 768305379 854395631 387097817 808142255 607468401 735389347 431471696 790285631 144423648 527828852 490688942 876081821 313534221 793536681 985736015 988670623 868612152 923142134 873265041 978469496 753626073 869199646 592383417 904409633 412181135 486234715 855443718 996740452 665739607 877614308 661461810 697761433 981558973 982647795 663173346 667752839 879094364 909721210 725746083 909894557 238080705 630608720 655087789 911649611 816682173 915211987 439160225 983144645 669899862 780862879 331116884 643932476 514073901 713000103 843996631 927797203 64087411 574652640 663333835 744297563 791740928 954761729 652130691 748911009 576835890 811409846 537428405 577345916 938767243 966903165 701411514 946715312 495343613 970228785 648338690 733611091 856830434 963544718 502385539 768620949 930002141 940906787 190623795 388164639 996864865 996901815 865851613 950242595 72243228 408974931 267527418 906144302 469455466 682108456 446476455 525637151 848264470 941601134 972363576 986342031 801295781 840840865 375720375 547525018 788816156 853105428 693384725 891854062 506922751 793992165 472990602 732392752 154437870 488738022 748414472 880807908 663616739 994229934 371950840 478394659 561473753 902004246 337485737 817808632 606536376 981273893 941303018 999370213 630158501 633187858 804580865 939723298 691283806 845922234 463153942 805032478 701460580 962897235 498033961 538760883 180039035 318321315 186864641 449396664 880384862 945705099 201010515 217993046 710959813 969832036 517383433 686399987 901967712 980652863 306519035 902724559 215872588 891705166 57097794 519983876 225650132 391139200 989584832 998907075 781648265 856347926 184407596 867594183 840516212 963937326 978698189 984240030 330390611 623116687 954915554 997562969 962812343 963684839 947504472 991080802 560412204 583132353 353211321 693438053 572140902 927419220 995042734 996036253 370113479 550366849 438281820 456216902 206956104 656728931 933112350 976571530 904039016 945688724 481381867 621722700 31841902 621153471 171933429 885001851 290454316 707384941 886577503 932378762 226999671 767527720 580023969 617269292 619182875 633545582 508328214 668379474 554539562 640675754 757679443 942005773 368349581 757121721 844370878 862016984 4632992 210383158 455346535 513278885 46394780 93391756 56733253 345980112 983860256 986467542 471850452 869721173 784822429 892310238 758045560 761128034 844555434 868477170 136461374 597159967 238906016 277154627 352415841 408028792 181881345 197976877 334617858 656785763 415804897 984195325 971111806 988655764 512736012 572614451 258916891 985941727 402816970 428719315 445951646 654961937 617515557 945096776 639744325 800603284 336084538 974342433 240516148 897746425 224460662 574434530 769820013 956229595 716045752 791570239 10379528 889728470 686810110 941480248 340909171 838327007 620104417 827938676 848755479 860758304 975588022 982438782 717593633 796006126 859755293 897965770 599380749 799277025 110236513 425520206 42240 446004292 630020258 714712454 981944763 998478015 574029317 754652459 5097854 915417321 128404217 586850571 24675936 480516439 462486071 746753318 345050554 869947273 990974452 997021773 736855986 951728202 973817632 982756223 920144288 939781856 508489102 684890773 588590638 878851055 915574045 988235217 300100311 592186004 310632719 599615984 601190880 752532036 737503915 847806924 276173429 369293372 65138646 417218364 86390486 616169661 670323921 794515339 437177642 628209928 139511265 708459554 428089859 988830334 253101106 502663741 790426946 915958779 204373746 494493664 290443309 324017854 816501229 862013695 672222647 761060676 230457333 918249122 800448973 984712231 522574014 550144735 508244082 888181125 489407874 866696082 929750896 996710213 501329761 822110199 80787148 803947297 921207956 923503178 962332316 976739278 375459475 777054445 454112583 517181018 597000650 939664121 859783231 909492509 387498138 464393594 447556389 676857447 532506522 956407824 286056346 603164344 710970571 883620632 584824469 796383307 860634722 973303619 577786277 662590622 693965029 801532121 555532864 686999339 631079940 870654299 626539031 945350777 496666806 682835002 632118436 809905794 373350610 768967752 550284396 923339431 557800974 967871424 285545835 877920109 836767650 986013768 612970476 923625630 930061795 963252431 472500283 504362972 634345050 794292323 68815870 380260070 478565977 553434187 982875017 990511706 179263297 387791073 514169063 880858220 319050232 850908955 267546160 619284494 475262638 948190644 348764876 918352165 661843596 704416926 831884599 871584388 575095706 671397560 348446426 375335576 26668927 295406326 40189917 603984558 987355550 996057456 636263174 698224304 614020273 687960325 78219254 206581033 214827053 719659095 529245511 966982597 840119561 875739929 675218196 805756296 440990200 921233506 11860496 461680710 238253809 308377398 340722852 358024259 959364502 996685670 306952568 704418086 764137299 996323205 3078102 258406469 281628864 557317025 277069661 596070034 83709694 849177597 678639291 997368798 467785971 603331464 937977127 967264592 803082497 954357706 917303267 935404867 969446048 989196882 892459232 983326964 537414627 996059365 959704023 964464306 671159600 687343357 142845122 574676366 840152773 963405155 511242737 633015523 133414666 950532699 100014788 442569916 753460168 778534078 24298270 367319523 396813537 995096178 429114415 551941936 341170283 964219234 491900677 691189969 22310930 93759703 250620629 956085042 178511777 845681521 673316454 734377564 347068238 448321081 524963036 758265363 922352702 958089374 100268579 570239190 707464510 745349161 160493073 469271048 822485777 903531587 119533547 925755816 614903278 767911522 510879777 952598797 265914730 702730173 224411495 676878772 781682255 836108049 416424480 809657571 166270853 526689698 695476336 820830951 252428951 815022296 216948058 652421760 166096801 758781533 316349885 576325381 494052822 787182241 230878420 823523157 405075456 541042772 40219026 896374519 281672031 710774319 950279587 997888526 241814635 952424782 620075043 736802199 862309557 884306439 266146226 938166760 599305152 847072288 717613814 800876448 472395546 661129454 670679798 684186784 646292992 661743163 678412440 950853443 569815157 692765510 530477825 615045575 168875357 409321445 251786476 511808253 465275252 477543480 382000986 575100549 788883615 824250962 722310123 734708627 850491964 865304548 472676608 799130161 947882737 999148221 864851839 972060941 637633605 998511857 38100980 911117628 579216338 847688687 313415484 391136068 337086707 939359709 938829512 965490490 255245158 643418696 908477226 955070687 59698373 915878249 631120621 972503490 46438641 616419900 869350120 925534923 257810585 643489412 149691586 301017246 288936963 589990427 625947669 926951566 729823637 849750043 568804678 602029340 97478373 551808995 708807804 721065816 545115885 719530071 848783021 890984415 625483976 854855185 879699688 908283255 220832749 499098625 405777545 715566821 854398980 910124188 904290647 979864571 145782906 523826008 20693842 689695675 299935883 781472863 649829168 809844719 781503137 910853115 84171639 723791816 415795788 507621926 235599335 940514802 118251453 528258211 44367601 293776112 696745935 919843934 5099928 950331993 606398256 757269694 3748244 524761650 348244809 730012215 84798840 883309165 458997983 725264701 665700983 738656337 544962571 786396403 739481419 920963158 852686471 868631960 61508498 873558336 348163435 992459299 376604078 604123550 496942872 970686370 22249874 611549823 310730056 755061369 460972343 592415614 671939843 715675909 34976724 906762288 513401381 683716294 64483042 729318609 130802867 297674354 256589013 974571900 675728797 836328912 62550241 180956650 258819778 567236829 389689359 922969279 608825810 684665583 9159045 87118237 577210318 779186969 561701324 840993077 388953168 671303428 666908638 929665493 910090394 969259993 636640847 732687365 631547254 778662831 832589479 986168822 929196297 940105267 653399285 931488617 915361551 948038632 283658400 561937697 54441769 952090497 148792341 150956555 933197698 940622588 708519173 990920312 771906129 782612074 841955006 864729893 123158825 432168963 831273712 846004554 614300225 628104033 718461350 806535545 513355112 782463920 355306474 776726224 716982490 813069402 654168982 674337456 76667316 460007451 96593731 297698380 540793494 863633047 243598281 541399445 844652157 969221017 347949171 529576089 250867114 452597489 110322378 288636264 512266961 876302134 994379057 995925512 699695099 974024129 162913739 199996734 768764511 809438088 320550502 778463553 720406088 787158627 26238916 609834841 709524906 817492713 305466079 753212498 500404281 737109974 750520205 771437730 661440592 938296426 784649054 978325388 701391677 921545757 37367595 836136666 212818020 873575621 564571547 652565594 750646927 923804925 78925282 234253056 391591154 683178136 592036447 724503509 919352974 972470488 389420953 505520392 762373629 948073671 600422465 998348465 204953673 673711894 365381698 790514882 783201965 963144131 147863158 896624404 170912747 784781035 721495032 795303535 804797729 868724427 543864573 661874956 795274465 963571182 337712930 985624059 300617729 354967615 624622331 678978013 23818508 599213991 162112114 904774298 515894560 802817169 236978724 358018838 859398067 893882661 859461778 979465378 630969049 802194795 85435527 148220736 582935882 858003363 883846235 907853004 885045947 899764816 260819679 681896161 83340392 842080931 460631346 887663829 371542270 768607528 239415087 574212925 880658141 916912904 280446877 713396074 530582110 651371642 256056066 555030556 63417652 68496947 835010561 842411917 453126373 990723983 927313035 957205315 654392982 765462593 473123558 538965632 979042936 999166959 151517293 929563710 382177273 660146020 870958952 973734497 868546379 947731408 276727668 852445674 9883716 13209988 792318559 973185409 611829884 623733536 624970019 683507785 508466235 916972707 263434883 927946904 236493854 290052230 728554732 989856488 652577086 842589795 621961419 990318019 8966913 653023532 882363764 971673513 194196176 706084729 584507679 902807069 98178479 855185917 863256861 998711621 592411541 951358075 77149192 321075235 363059473 755889168 407574340 728032946 257181594 544607092 543410158 701347347 934392323 993563512 337860526 620246793 35963925 931176623 220191477 969420375 386069402 809022641 29349577 272995237 609156234 635448352 378490020 909616279 997872095 998791397 61547181 342859487 36276057 128933199 102535330 954709261 72911131 134143432 692152893 774282060 696075265 952688971 373280175 609855609 366042658 800528837 146156063 818298251 143768976 564621434 844368958 859812165 955910540 964534592 838567589 946756250 704515121 730681385 129595748 585212884 233740177 888151143 677246760 833734573 16782193 642138571 524256404 988132363 87469421 173317395 479452567 760957809 986540974 990329919 923395488 974064305 307435605 894443569 241175508 758583679 622876019 941511408 753989701 844079121 368263054 895102334 952293197 992239402 647448281 850535338 952720481 967047387 990527822 992714435 102564365 133661265 898349139 912320032 598212474 671566612 387689923 423214018 628656242 678430949 5104161 441816261 363492236 431064310 375565547 612887582 176395833 958988803 293502600 586504058 112973295 115134716 838989670 864298533 834974552 949819317 872017827 943518143 52976542 906675456 675864142 700963722 859725962 966761006 751460758 947533891 622638958 705503405 55830860 898640118 921774183 962998291 732685991 748518212 609755110 852031208 724059374 963194048 862421509 955534330 801313083 961632191 613282831 715726139 188793659 883301141 531581990 565986243 796917389 947770846 735213030 767394566 888164534 942928992 200304239 870419599 366124615 436805003 174731791 582526610 192878542 289637117 855554896 925532271 868371696 903133545 998637987 998699142 913215174 918512477 63394541 130480931 339404881 477544596 778219203 873998665 106725529 332917294 427980547 724028801 661977828 930566602 587136528 718339290 369851186 473195373 429749671 883194581 725352143 964291072 831371471 843559280 262480700 833029437 555200133 931408788 863278656 868741602 55287441 876489533 812575622 969417192 168716249 799204978 978852635 985629476 553849184 755083638 797965157 974450343 849981899 894436753 216523645 712627651 122807026 523173854 620287122 904479988 676247408 969247167 237646262 555374496 860870271 967454840 989209737 991584114 820211236 968327717 397330781 525286174 809382589 902728089 101732429 722859085 272396963 393163331 561373115 899590064 489705850 536945485 352924295 813533958 396332067 673513423 694795756 765228448 58017042 487263768 631249975 939925747 162564313 898695037 658148917 986207728 306730003 313625410 100016705 114509374 245871020 479937882 479942454 805746865 113785721 549550455 663053209 875631905 872704468 945776479 767861496 917718664 866020176 991199614 530441025 899704675 236605074 704833606 160809879 816970577 387770721 645534873 791829654 929755018 650187419 685671364 151725396 509626611 599399981 700978847 756386172 794775292 874036682 918838448 777121042 855742799 978227649 985537662 734466724 791322980 425668895 697957574 520051692 766257887 527919804 727069221 58522728 450630397 340091445 962530576 683777406 864033971 987162121 991284249 826254184 910614963 348277894 641413545 815544349 876589470 182836461 962452061 425537652 976202048 340846296 795411664 689023339 748163767 150248100 887059751 720228370 736283797 562523850 571173402 174532634 187187906 495147230 714140977 328414376 561006664 50368115 988542080 242084287 376509525 337340404 884875260 769247652 794955655 621791031 934032998 435490685 455484485 261733892 348935524 341369520 892552141 241974167 802929203 804152155 834235040 582914548 842348759 531589489 543588628 422571712 474213835 947610161 978890530 657934305 660691953 272311297 687210985 943828762 970649009 47305722 950279005 550444118 570605010 637654268 701723128 961306162 997856437 179908868 620172938 999033177 999197705 3304415 515694080 692911677 743453823 739220235 843568657 368129693 679517781 549783179 851238012 16010988 774362154 593802258 653121662 794034285 901056139 36557373 348007738 228139342 750747963 575264526 690486178 587217366 712664831 401083898 938100739 624913739 703341941 319538427 520648257 783600230 893058379 398497306 437635625 983216617 983270983 76390407 479352839 388804480 529745353 765968824 938111898 910237008 973023717 128750167 833937412 880426734 890094241 873417147 983347958 181329550 477859104 958926196 978579710 681177239 855174353 77565693 556018027 241781427 563988284 231902275 285884907 878383944 879316492 796253301 832721612 717599199 827417076 205671273 224119419 691689396 715158060 466570360 851587462 381080335 922780623 39898358 109704757 488966750 975389148 48727864 493061354 238867333 246970562 564678887 888116893 478009128 526705334 4402299 773743244 764705613 948310208 256762115 702584401 859174152 995629846 292752527 710757069 35756693 162807630 11392499 565305739 155144212 443277645 320247068 752028843 307179271 816389848 886243246 990496969 84979035 312049735 234470686 950938904 658478313 730810832 761989423 901035229 212908060 274857783 902609899 908043944 32394015 87271627 160122351 645063207 344792559 921386669 218203075 583239026 292513179 336042448 171016534 847441315 119010591 813768332 707143761 967943652 320923591 966021110 681827634 898122191 73436991 161690728 316133954 942563429 10911903 176915194 863448213 891673160 410464932 973092045 34799439 417565109 339537458 756370981 745003474 815669402 451839137 462992324 803273275 860435661 980994215 995758152 441711042 449416695 565943813 586968063 554178424 618596222 204581553 682290034 157089224 566668712 500770726 814236761 28510746 865160440 624440433 746747574 778330836 978036395 653997885 740997319 814565763 823322680 845291791 916880577 583692075 988776363 690486879 971882649 287459752 444360289 527099483 576249540 984040389 996497948 675539123 711725713 299901860 314104982 834064752 944984423 408589956 523994601 735753230 901135167 103179725 554199074 275285917 904902408 720981104 983998498 481123052 915274610 951137462 989503656 800789555 967617906 978760562 982328436 864802517 868102419 466489273 492283981 875924904 900396806 133497190 829107330 785785868 920443942 767889346 876859104 690231779 816885018 989243592 992756629 780036805 792014608 121741559 195011775 131862420 738662056 313383261 700021121 364079542 839024507 553358666 818512486 739100193 970065049 5383100 10696326 361075402 871895601 273397880 535370593 524552861 952518588 965033398 990687354 915367545 923216070 947649100 957991394 74257086 450788244 189608080 883622478 537394366 962022971 895404534 964011727 566817404 979079596 387516361 883367976 39533112 713627315 326515690 721839302 380816746 703753588 973945007 977196159 886201710 934388769 913016102 926949344 4502913 991129125 511303534 826515226 805758468 879727016 346558960 560125137 726759579 985535510 657416460 844252779 904029003 937390264 100390998 276048632 231612639 832246035 990492156 990912600 379090984 981307498 352475690 681296050 41878472 985828159 491764770 541251384 511024592 966156377 269354068 770689550 552545738 722392505 659187660 845159822 825748879 969199481 389416741 632011515 187294863 432683532 685799620 774350447 597111181 858814963 661955356 941842338 557090581 956114713 853040789 860065170 885397085 924681010 436944357 544104492 928754372 950022824 842973010 846756780 529607301 941112914 165509746 858485495 589037141 654924506 664949789 795274864 382227606 588993913 672129446 900317392 620121685 686562521 542123089 769828083 980531054 989066486 26348564 473123948 362385392 428806784 979708522 991604800 524220486 734862344 281947789 305233643 997995287 999096011 969991717 981661211 174831945 363521342 428108117 878987938 169678436 174752354 679258986 752285764 816628040 914274255 28521530 571928343 596251812 813831604 623908868 837478062 973508412 991438110 518007722 653843677 983721049 997396611 118353647 826672493 492734637 931083216 474573512 790493919 733456872 834816755 969218527 983742835 626833220 713675428 814467501 989822085 899340779 983222512 331235813 793809430 879356294 883123718 997206715 998470352 924243583 987415151 243351101 628926497 332021260 754422304 380657145 487633557 64856971 615599648 194826486 723204608 261011993 861486746 428806498 777061284 535712743 824448096 773607984 996426486 723366448 847145052 736775760 890554061 630941120 953026347 889343913 912996437 33593725 216291515 852429956 880137792 51181988 108015262 393655010 529334434 597440358 967818520 207868981 873867674 517128603 930736017 435043052 453218590 240907402 801288552 125204569 825217303 335553296 336329987 384797581 677808662 375351680 949146540 471105003 720370186 81584786 218247908 560028258 726165997 878265993 915955915 444166213 520282376 206812486 728014942 959572300 996789653 614409181 827277492 700469075 770370930 158701844 541089250 302285324 989582506 731837023 821014528 191482331 732692207 198294427 574845077 937815417 985433290 439668605 475265915 338754126 976330578 280637436 502958086 379717971 654631355 559488869 912951603 340228228 622466546 117017647 558402838 598092039 906988193 6138162 607968378 287861070 805998060 839302794 973795608 866066626 979884002 80619434 538383998 329063705 407643143 57243128 616856388 844128275 994292472 483529548 593880721 820671472 929103809 651558349 997370039 58387641 897459039 880688259 959532137 627656073 924153885 573408473 691998682 911644456 951818351 461523718 668971898 193573826 659041797 309302609 314643228 306884113 747518699 148128076 486297055 334244282 419191937 771741781 938903148 916070674 998267837 50365905 533732716 413202617 634003246 915199960 941730374 373568577 845289074 827236012 871037037 732459391 959004703 506263603 522889743 982570124 990388537 487980792 987292687 772207201 788687991 554190405 741624248 35493854 856309039 596964607 707241833 656759303 716664590 176083038 936823298 249463199 759839190 981100725 984116644 433434115 722252950 539618878 697784853 146566908 394010392 589291997 905029590 500145960 844741741 687005085 739499131 222080150 381504135 933728539 962235110 943112785 984385882 109902932 946321287 378571158 841196044 901267859 906206788 2576818 399999150 568217884 596823868 359229856 679932274 583571806 589762417 745373327 930554738 507732999 744786576 758391642 883883953 605373393 716112744 826018738 906715064 198673052 568653066 171900585 940438302 147544351 295728170 44194245 601787106 307462761 842998065 985247169 994107151 386399176 421824528 828331281 986722602 68992298 943849664 709777729 926856605 364330155 382773182 164112262 737669463 886388129 992740267 187276826 814496794 335563023 766956681 414918288 955291469 641977030 687999520 111007570 686191347 57636367 359503231 269628789 308052325 954558469 997850014 133969157 189340564 147620110 927713875 935242097 936772475 897886288 985780738 535343666 909932133 200390100 856987757 382601965 715188865 644654163 813474088 557070200 784571802 504436278 545254634 812386410 997647770 114016196 302130096 704205926 766831093 995251592 996550462 304268483 501831903 749999586 911260479 231957077 812172500 282538585 490715486 700065197 704854698 2340356 833229464 577882667 800763304 249968244 470967105 910464432 975351184 425236845 477612177 231114937 257923363 611368944 636673147 484713894 621091538 870367068 964929187 927967432 993902706 285210780 591206129 771268692 844072376 503433850 856855256 839250797 914388387 333395646 679125989 62770375 240757235 723489444 724885104 969128941 989577363 295775636 629816250 923012072 927967645 844566580 875696858 191402033 657494515 208981183 748038007 126676778 181765312 973860108 978162510 731726911 911539641 582560286 676331374 392000848 642593521 752352589 784027456 949425386 962804260 915863758 971598031 698101665 953598760 641455095 996266859 555205532 781233644 454647865 565615004 65244907 863230776 354135378 763398544 947855017 998448982 326632211 898515062 595461097 837946310 45875610 326983644 480302033 903288279 671814927 697953383 212730475 508051866 819753820 851457180 864893610 917018136 639027478 800627816 700847248 934184193 847892392 860870027 597542089 884367431 954995575 956163613 321128835 374867986 295230462 900750683 572679150 826958493 725533180 729228299 38770478 777159260 127617045 683949165 679583319 995952481 72829165 921389664 300674483 602662888 647429891 822656489 991457595 994222007 539288106 638665577 709171178 942406799 143999252 620637948 771509387 828956269 405711856 738175618 161987183 846818455 955446153 972480771 878222319 953669174 838735291 984901587 101209807 701279837 502036484 868622499 687381077 952749205 995192823 995304154 647917765 743787653 260241773 336340168 231014896 610624914 481278537 577748415 84868836 395106452 232644758 701244407 113436177 395395799 495114873 910377543 649783972 926749717 138532815 715724743 719000955 793024048 606485159 910696205 55597732 452569729 649474967 858134101 733781820 753262685 288076384 625084615 606995926 756191871 863186063 990859721 99020696 556231377 725017786 996677971 323554078 869887055 377219332 439220523 771229205 810172500 541199905 841517465 47683539 739124523 409792738 677148992 843436942 868256634 322466507 470127871 960774646 980538867 797728690 868511624 246519433 826457408 148084948 541532801 660587377 947870851 208227375 886335091 941367201 987104462 97178815 509945801 754840101 949171534 107219142 297360422 535610033 630293610 36317323 527732510 638681914 950267592 308021926 636004237 324493316 850895348 594870584 933681825 672620352 917335123 737106581 952156737 824395910 912678029 811336205 883833496 83603332 101798284 228370837 505765977 749290872 928921142 986861778 991530500 220764857 919529391 978317648 998721318 256751810 520355250 631025210 767684321 512108509 539055841 263963036 513493369 161860289 709577176 969542426 981602772 220825013 764940053 453092917 463624011 710501758 810438519 958768185 989470874 830620136 928112467 737373646 967925910 588081642 691432429 106190858 650704877 390853246 655115548 106846921 885036222 13280262 317438226 397315106 613409663 325525797 705545181 264910752 356439243 763933677 980995860 87221787 604049754 784292873 938594879 926557802 987586637 87495161 125409965 249736075 329185697 433376868 937637685 942747585 974657348 984667903 988211993 995829071 998226168 285011557 495848737 135975197 600858381 631826938 920516141 110759956 992133809 536723873 689129384 750907860 811662154 230620572 534328469 684874878 942724761 806689075 920837289 525446317 595694469 885471507 998159411 255113349 553993297 73904712 432684700 861210087 949707678 502938313 519100433 668689114 679093846 828232318 882316447 462239403 630000109 753752384 935490793 210308275 582499775 17253210 870139258 613750766 688778284 642604451 830346869 806644781 898736710 907083173 961399222 390912595 681114035 272155692 788006060 45553210 614729443 790088118 958623213 917378141 959668075 949813496 979706441 74493701 535183817 589076924 714536524 434759546 728192832 50012987 700914165 674386537 711061514 617836060 887007383 219963133 828581833 653979601 893641621 450022670 724990156 539553766 923588753 193856485 272731792 329869569 754863848 296882606 418312636 791486305 792771450 72872854 924899541 262746817 324796392 93088169 890046773 845232057 866596682 205134573 487644231 958717443 961520574 61360333 656469000 299739016 327182455 530267910 542559668 931038164 966813093 681895157 829377525 466840740 712744884 937585829 954370781 484199075 870011255 167914911 429654883 939579247 939782929 237840003 398537844 396993375 744113485 952265300 991917234 766985030 781698255 846674199 873965810 721359580 987395121 811979158 834208435 835766241 836599416 202312097 425798157 221289427 630912548 518167534 760825497 66631178 567192762 514303799 928595346 937742161 967691676 696304193 774553180 479956658 963236599 193529866 666071966 172009577 770777495 908639523 945018524 937183218 989852122 354067755 730116284 673843214 829099285 361631241 418962227 819719015 915351713 237609780 393049453 441898785 857154612 748195092 935182630 502916543 687424866 27202640 549307994 475833493 870655319 854108175 858236691 822211536 917014007 263883591 622799244 68616700 143627533 504059122 621649883 371696676 586637530 922285451 958363673 636138414 731313911 691461094 732218554 842508410 861252338 179678506 377172265 229530496 401705158 848170832 977457409 786088474 923424463 373138801 860039910 852429752 905440159 163057745 226317997 706727194 915303446 347505535 820523823 712457798 783068729 978325526 987109400 595647375 830255757 440150945 591623665 531024509 917611563 981044795 998580130 842744429 858194513 825335913 954088884 103474262 478730801 696490100 997080214 592408936 953127932 91836303 897250472 473995440 621703082 720265690 774289954 691680458 743582692 822173693 888133846 869773620 976120663 554919329 804594117 844990755 996486042 947291 219882201 400643498 859706726 116422448 176252226 29218973 680079276 947465827 958045698 568792399 593385997 464982349 731291074 683015736 851983860 841658504 931141389 552338801 707086516 657419328 884116941 293065309 820381560 446291280 682938534 421416916 910389104 272123421 355249461 271846073 555499708 153713629 897425899 264875087 936228072 747213543 783535586 298020508 639822997 608133490 699522262 956271304 969959923 934987644 960091748 626350878 915876331 930991662 938171461 349797456 636907941 278065796 735953174 25878202 645820002 343883084 446095524 87867668 594412426 91091166 359424088 943982870 948024423 84764480 658897191 772574789 925000232 528953700 718838735 98847787 495696512 735965570 923938573 775253586 799947985 189597671 326823626 523633603 829682264 926515446 972584280 895929365 977782364 21261846 484186416 372812594 626093731 599292683 748266463 285554877 530745481 823459632 975632243 538750396 686596863 271602057 788256895 371626556 859919047 338561825 991756035 873114342 977383790 338418090 417787233 219113583 378380364 936095412 977556951 883870379 884723809 459710471 805053606 937764494 983267701 811545849 957479763 762827340 816767508 94634518 895519042 753220268 958279199 245374727 275939560 979797475 991790404 75911710 826296754 143676770 652844992 334660078 796340579 827768358 838886967 378549902 513245309 433850716 543208404 846465043 985654568 558287051 954430330 434828107 601117311 894954444 920068964 982582347 994670014 334452242 922237577 756050210 838283707 981730438 996261990 264939132 861806621 901192970 991375075 42458598 671280923 279822132 801173810 752075774 801687060 666651568 957709480 618374031 953313831 831053736 915482039 58503818 204730637 421031951 707950061 287166046 422950299 380609212 632155352 564555723 829005996 993058746 998640039 51174769 957569941 213928027 962336867 305694677 954358374 657737178 901546036 171642169 854785567 945461022 973219449 202435137 287761050 533915396 664365938 712125002 911717563 896732497 898081179 66271847 935114092 945023965 960147931 402412921 971775444 848234435 987296022 386973639 953986661 488579843 916183028 184702566 971660293 225979644 613634521 997255560 998341814 22347434 801922870 105358182 603537001 227380162 630063851 823575959 868861960 303315422 610838260 108961764 678712581 772293743 959429267 116442069 975750671 573710546 852781112 196853150 557361121 42798810 838760186 930872390 953589148 119711549 153488451 534642839 665329564 942349779 972736050 657834583 672704699 225695017 512214854 845817871 915803871 578558174 901047585 385683597 439141664 975793112 976078377 343207596 762290884 280238498 769502706 231700940 657745628 531418126 866448768 292021045 900671164 389591781 976400337 107586464 893320145 754966233 822470259 555016696 667943893 975826105 984778474 671553075 677704019 572726263 583543220 453481920 749652088 260039780 699651030 465247523 689309355 324542553 827593309 568159843 592464089 96715669 643053114 344515709 992910056 333126574 597108139 932963513 953062826 374775825 899553810 823649461 853655563 46216935 69157566 836629131 882930391 948518059 957977819 481410457 717852034 356191984 638298341 590996480 709115804 778644156 814138919 363813724 688732674 112038465 981465637 666451423 918339151 212393075 440092738 439996646 538035092 336213288 859493203 560364212 954417125 637051469 972133572 807796839 901538129 944757059 978243519 558295764 940131309 248858572 989900970 164130395 659565022 914392180 960363076 613248901 916957188 871812041 881413387 735028286 965109096 249532919 279149572 580897064 995191641 867397034 963619937 616617663 682845935 619371924 826102621 937490980 975435615 856903144 967466113 257727599 452623294 972160078 978777064 633425910 849046070 268241398 272254200 434135683 910548297 951077240 991393672 345195337 388633445 493690792 596765410 606267839 812077516 675869057 831582082 175524940 607755371 712725291 860950423 32328046 158737571 81388293 97451765 482947444 896994209 739444432 817261881 534040865 817459477 877446868 969883244 355771151 964020138 89461803 304059364 337965109 878905707 906722834 958413376 518720685 647234651 21419023 808408487 223656539 677777583 968226721 994642420 63207793 222502701 95553403 503923529 430745545 944580119 120086752 400449837 927599937 934799614 78604796 977960910 308703512 462857595 598357199 816806203 899725242 976246001 812170045 824433677 379908365 657683138 429881142 533595552 339301801 658654910 963501920 999277289 891650721 953431973 705106928 898842953 460567866 908321475 21487420 241652419 180114908 968146864 357728061 369413729 861453564 996832958 34260306 530506189 626597872 875089783 895857440 944321330 902879512 946251842 379534976 985860073 182826828 197379152 668064533 711884682 999300341 999308845 909416205 926351936 454477965 698749686 962368541 963986041 886016010 947321571 885860344 890335951 210713753 572188729 848321399 870206912 795174034 847915600 349851984 823484604 880825074 936671423 835459583 931290216 759033337 880009059 134300034 870599168 165845407 974287449 565592478 917678369 896726462 928297592 363724145 809381176 930300787 931542667 16181841 667297419 699837333 885805995 718975719 781456547 930301832 936631197 197612521 255249061 851858926 947219367 796147348 947985072 972979405 974198960 243770548 830500805 54301125 325870749 394192559 650538061 900285787 998705004 316802972 858095030 846060964 965615067 494544410 732385268 441162227 912432831 516745387 779393913 621933184 715089133 495924345 810735476 757258877 982532140 362415760 365115985 740524299 932426406 517907059 923141183 301311027 997122312 416575311 738862052 64026719 558372186 441769807 568262974 596770468 957886249 510497805 554557900 843275101 966262684 594130005 674633773 489028043 532224386 821240315 901963252 917289267 926424116 700201774 972761936 832568824 884510028 100470929 241030603 25122870 131802382 641177055 967374488 363202139 381638968 727627910 925903210 672243777 884422590 531029864 694490606 863091430 963122292 187434583 521033969 954350403 958353722 330138712 823435742 916334215 968448463 909013753 963003942 807184253 811784475 709080258 745852430 613867045 720074250 336257680 905976742 196691207 352139745 574043890 631597369 26375877 75204793 581414415 814554766 482968526 570187222 903266869 985421598 661202339 826405518 85830288 979477108 765290337 874392310 257221503 601356965 815223047 926628448 114900239 976554690 251312389 397904438 438102975 527275046 649291107 851241813 253807948 962345991 106653374 504831895 668400158 834734644 398050563 534974906 558305544 687631415 828191300 994904529 769301342 852375914 445203836 479550841 80651863 749385502 79309325 917256338 882938621 917343046 921083530 928985733 203934545 779618374 380460633 533321205 432050043 481021008 136541221 253893618 840773266 913158035 804980501 884319310 299396493 522939478 115736268 401352477 597707643 904874767 821850175 964572233 45179633 540447464 264379130 441787246 506916295 829820910 713297731 734500542 435351629 591906805 62911605 68249225 268274279 681309339 960006651 993831896 624990187 784614134 501091729 777526378 464007784 685870916 310514453 479344455 797320890 972477683 413730602 474192404 655853369 810393391 811045090 941333024 853318381 919562021 676456525 985959524 834553089 935661291 349734685 407672649 840986366 990726434 194134753 823117619 212487128 629896340 214729782 362137478 335481283 532360357 65413796 239474777 690046574 895967447 421949422 727127633 749132116 851137163 987506632 989909013 876089726 932004323 625322783 820776286 145463433 703679541 140529953 292735775 845653214 956018875 480674848 555017697 735552030 935842069 549758720 904224595 620651220 949908457 836319761 873623976 545235935 794329912 871894329 888411184 889938882 909515409 304552095 385390603 52406199 923760909 397044253 739023801 502253011 672573888 735537884 907580211 182552306 290245129 503550620 740344587 326091333 683955770 891180395 908101177 769760410 834832913 132574092 622873598 302717449 312565245 48984980 203433114 232842323 498537797 276647341 277699789 187563684 783972126 296744987 485851882 883542300 909534129 440693058 976407027 793270528 942237435 533772564 612933702 81870390 134761987 103031331 440553417 787158765 988303366 247938799 436580805 169424468 858122026 748980099 770461712 773013850 979134559 510916807 578285841 572385320 945117384 521572576 784315708 324385104 874169646 145910941 442306560 754862755 779322704 420178833 422761049 683961949 948502005 354804306 361376702 362892756 528861322 811287563 903300999 907644402 908543753 913776079 975018282 214090157 709577127 888550984 925903108 335489460 731238820 6749180 242559482 810673622 919234302 270832743 705889003 585528260 887083184 185160023 977860384 946075323 948723762 256710023 927830534 262335735 996903897 648937657 987240823 320126586 839956682 51439510 611056025 670125869 839843181 161443410 306370258 525949116 986429578 2380547 994879315 613754815 980104911 664555828 795007287 765840954 799713953 92421915 371381373 370180038 878069266 161497060 874246728 999043215 999304896 604173562 957755687 559068508 583978113 20707797 994633250 342452223 499052370 581421630 679080680 896693601 902017566 487655280 493558993 126760108 602126489 73681496 793520858 477706380 992603564 723825983 803382903 497289082 599939254 770332446 831429798 57966836 960641787 745307097 859091645 928403639 963526803 910748936 942870767 665817864 792258126 890169351 946087710 255704381 497316458 177186743 415054336 94161636 974288808 12412167 22370359 603759764 700011752 246232963 331616770 317651476 385752846 676557388 932079517 658810223 793998583 963951042 975760462 831464953 954956865 822522834 989024813 325727085 795946464 429236427 522250799 523871276 570361054 78831110 340055017 218831116 946130036 774621693 859596878 631453720 744845896 203202706 425564183 674466691 957053476 774042404 960988537 707252177 976365042 144552358 346668982 564913052 911115266 458076105 581814580 546138283 884682737 268502540 980043941 801463617 937528554 255427893 287359192 897004047 961818278 189896592 331141342 237638352 271538525 171705856 588048342 768877339 890561856 612324160 707423620 684187946 767926347 326957241 954765089 801990306 978204340 615506615 961094504 130749351 458094659 800751662 888482185 843253264 856284841 336493284 694182647 818390577 972680735 373765868 858556743 20348575 980287862 290735818 456724508 364077389 577755295 927686635 970940425 505335347 891496034 980602273 990372454 328410069 910357848 118545208 848470665 553837791 597314629 917300520 989432377 497408945 878790127 151837013 939130215 368705854 554902419 131953401 145356362 109072049 587915432 368303112 740782967 838853183 970717809 140679948 361772939 438226294 473454024 222932396 804779941 904495341 982946751 203476761 833115083 896578263 946073792 645057326 973114199 24925356 749888667 529277844 628122007 487804533 784996515 644739224 976358777 146833207 749305480 473753985 876837197 303006423 655024186 672567682 744688265 81430162 480362298 878250199 908780096 92734125 555625226 733569083 875180462 155361614 246240791 492925587 613820446 255429641 912371656 860114808 931555090 878076906 976008864 582565998 849514675 905246083 951754750 754845518 946419163 642623650 642801458 272978096 833555691 459365081 863653921 799171396 807164401 567411245 796502901 270603917 546576696 622062611 766529375 782336413 957926198 31660648 219231860 860545211 908995408 457607386 747654707 352370507 490682823 264201161 697892528 324215704 432837962 209395756 876992567 74907253 163904290 15806046 777749417 763725722 821425326 888993302 974264832 716336218 934070885 754791973 953767825 722484982 969866953 327516083 702344001 840130218 937704676 601141290 981515898 557767939 704800372 858711545 929629436 36595034 458274639 422598927 429686421 58589583 911485377 731241635 749385228 939106374 945967690 17226730 939439920 366862206 826857288 386954988 649411957 932250528 944627764 708690011 754549117 612824666 936684615 496941349 524546100 747068132 868949620 650839706 995420105 959490182 990903741 70359801 610075414 80627240 593269327 251669445 844893455 185134094 676505196 550935856 829499763 995799479 999100811 261863951 472368787 787480911 884487241 618904054 942766378 495136179 620381532 428659011 495923300 561376661 611078938 159106161 766463216 280677582 779790740 411392336 552415500 858691026 981874965 330180170 722519630 36006156 700125324 36270030 207233850 439743284 976306718 833141709 906899642 513063560 741603742 26224114 965231742 190307421 193524048 400713348 524473357 232750329 535463057 284333331 565958006 316329306 474171834 819076270 910429926 87457297 367965651 392637323 978182391 603843485 636922602 804182275 831888888 399050111 764515352 415282057 822483886 129994087 161823477 887911952 941191839 390299537 828544198 764899727 943410009 59680082 656078391 866219646 962103997 940237042 942756239 404222537 445253490 293800007 374297969 581585647 862060087 776323934 844877904 590774799 637649362 964369858 976202226 349867157 590671444 391087637 619999332 738452623 942403433 793507271 887727744 988552868 994241226 453914147 467991082 512135515 661664092 20718554 54069184 420941463 828181272 580080240 870234648 307432104 411886136 817731030 885201290 307379137 385189065 87802139 255718520 41629255 199603263 286800338 807635513 375132847 629044635 750902485 773668479 564200677 821647170 997763187 997774228 574970277 689699104 358214152 519996840 26198938 447978417 834770792 960964420 287271897 587630413 917787028 991938574 957640327 976035830 318001208 410260060 491212420 662029082 287065303 801355974 845954496 978587719 196390723 961313513 452467718 780496271 446268931 843870890 636375949 967455034 153863767 802781217 93857639 423956712 266533558 603403618 548935983 749444059 952733510 978705884 534722117 957271239 622918612 687743625 835857359 919332480 409465541 995461698 772959738 814677743 758382700 940887976 564278994 761072826 400759575 449214443 72622120 272769074 358843526 745774688 377345253 807784924 663694179 848179521 861266355 903280008 586296073 864276162 585574069 821922961 856317321 860089912 568656838 947745888 869085451 903022535 56251971 396559744 408652103 766803943 68936818 472695205 965960833 990096405 870906506 976847907 753680285 973794588 943732785 969924001 395386778 488209031 595941748 717008204 198704727 557924279 605868576 759419526 208821766 945975594 758808517 975599213 750871481 983663403 490347274 521148501 285749487 340484613 367099245 712371239 868583046 936619766 592190779 890367454 853905414 935507480 228713483 783167169 195489936 983314804 222969130 751010481 485653908 651103191 553724584 598526056 799045836 940841397 889777243 982470774 28134715 538667853 660083135 811541421 544242356 613094255 288081640 750568640 491559781 800623748 204769149 293666596 789638555 829995351 278624242 893941375 618728643 807204802 71301443 782581960 335994986 705744597 771137646 900957718 631940875 967978352 3728295 645183179 864370293 900895353 203734681 987172966 7941033 189128331 201642637 315705959 76712240 102499048 112606597 487827545 22089330 133590898 731789491 888024236 684743671 990294666 822541126 933742795 195714678 914337973 471076548 823131583 298892469 952223821 263935465 803416944 454677853 905461657 26711196 476936072 488734106 930474340 698062378 984144314 5880555 711004320 79752861 237999556 14097111 865655229 238017211 452953629 673485671 793427552 987155643 995946776 605786357 959949220 958108673 989876777 465360983 858004574 901717686 926901112 302547788 777073469 172827719 614934082 104702807 411645512 62553678 546536183 805854814 818633658 978461037 982738982 883980754 893434909 644603175 782560360 557470736 680672439 129266502 619708953 118472160 707257224 775099352 994010568 230548429 628250548 744381769 785586777 915256527 930694149 378654705 607900418 21556328 523576536 631086452 885802924 394691310 816281515 385503003 558194494 308930962 643893538 421687115 518934580 711068167 778303993 574265010 732446646 84514051 184474249 578671556 644178747 552627950 609056145 246670552 553694268 224672677 354969392 152255332 275645916 271377303 361117949 237631506 749564504 396723322 785396426 185605295 467546652 804890929 946536845 355648247 556288229 216027767 447015870 796676834 802066686 296211178 871106646 39784212 296265175 857243553 877766587 657158021 800415815 584392906 931847280 106262033 959840248 783729749 788316147 367592719 750305270 421821284 666353745 571602673 836277615 452685838 666081707 774261011 890343922 152936518 955776176 450922458 993903971 705808754 819390349 561202929 596655637 685231923 951497069 46625857 512223156 386256668 852140837 233129828 415367701 220588945 759822514 621320955 955774509 122112729 787243820 852631263 990260940 700475364 793139991 259572923 782422925 509542629 776145944 115721570 938384984 431154700 595569471 321462870 649733215 68314390 75724532 705135052 997036023 489623451 750554584 736740152 877512476 863684082 873012032 189125255 278745336 608336460 970626702 767725596 828904421 993104377 997196739 387827565 614226031 491630086 567780246 874793656 930942419 12589950 169613502 24261756 552351744 935367328 990748750 743517891 884419411 263009628 920516289 702801940 810862162 45458225 781595383 26414517 710230752 651328880 727479526 835925097 866292363 905418253 957299375 963090526 989257929 721553798 923662221 160007594 916390461 955551729 978466725 600010165 621561838 334562379 719446247 579857064 665002336 47058633 540202337 420737583 732230926 28628453 612560871 855095457 883765715 910861952 928336871 535406564 887663432 687093352 828652601 157820247 242495134 143784877 763450059 437758436 934757322 257640421 288655524 671368030 724128513 409998192 794013786 371898682 483596401 902238568 935758263 385676891 668811503 857025928 896592891 557238576 758802677 189956648 313443095 517519016 982074798 846994019 876946190 39748607 60486010 119962164 129712079 91575216 896181060 700267891 761945145 391201336 417657131 352835867 975620966 593086233 844728307 413253424 848753604 893391117 969976581 515988668 708950810 975347395 980648599 320227036 613962553 129140520 792436415 197114760 605445793 819604982 900518271 607021686 944288099 561065374 961738667 752652339 826035980 497633056 810881364 228047241 466417716 39066405 866231226 77322919 254110758 383155151 972179704 806562860 808596175 362070582 405835067 701645545 810825316 551008122 981107473 803357797 811104610 148572391 785564301 550786065 869675677 368574294 877560637 191471511 226812676 513497906 697453010 222989135 513480561 180471080 280584483 146869142 508310680 585046763 899992816 472927098 777045731 285680632 582738331 117258760 546025740 732682167 779046653 109692802 673532066 678570148 904622673 320761176 988989263 508651118 985732782 590101968 716084036 861381351 917653548 349112747 925014902 903891997 916166838 918139082 983439284 273891780 403594595 808616386 898111014 29202380 582167245 458787388 841127305 557465602 585000440 534503721 605856885 806569108 880467594 493258361 771686161 480899061 636786597 959216424 995297668 289239887 628009187 531103107 917546343 793232593 846128826 385542574 820074201 698296333 986005045 429400071 695769071 792608306 805066891 85474192 292498024 731630389 871895809 79507750 315632952 663375915 895262002 167015486 447589528 325524816 941758542 179466300 754222687 918866672 937164734 464247334 946036354 117099391 709657423 754713436 909345857 340148576 700254541 507147788 943380316 505332570 698467090 491094290 826079244 789721738 899333586 779605748 920092611 742470714 812721617 260763605 431438947 453121030 516082099 189538787 925115312 675605413 888644853 828515924 846340723 494435345 756056105 303285142 890926304 49928018 137694935 505993375 756971509 402886166 711937225 210006752 756178704 733645923 978056312 644329908 700731032 722458005 772018283 108550673 888952963 258360094 353143270 610539695 785107214 50030360 361811484 718680793 830609569 116128872 810759551 597945254 863785117 961088216 975905769 850696454 951438725 107263185 374336620 684214154 884218532 803643652 824556052 364259034 939871011 432357490 808778182 421171761 813297624 138096238 227454631 221708925 286750692 354541080 859805502 655415030 911944508 102305446 688255233 57477163 771406924 336313592 612250311 953431602 995003040 831992353 969663925 484193881 701582645 788093419 959374486 17518599 947690448 353533429 394432225 661030748 952061759 47909824 695876336 830566082 994566047 876280712 918537062 616540690 985043460 503829299 967027028 951569282 956473762 18851422 410032241 60616289 981383226 235969510 794799450 820660428 867475009 796091041 885423377 646111910 819068100 61094188 149814507 235313434 443998229 31942245 842824912 557106978 895935819 292785135 538000437 967762538 975798289 66015015 83421703 20792006 308396119 705801967 720292719 260110775 975558134 577204405 687956805 860441946 947072396 515876304 550861704 726499514 745669213 24087971 780261632 26973406 161672609 608539114 740567915 974732966 981353666 889318032 918791767 376805636 979317327 498812679 779710034 580391200 651626054 768870028 877842385 366880062 506587884 443592505 880565072 22177898 756475027 959198721 968200669 49092843 589185468 884360318 886337026 516243605 752987224 690642935 989796466 156234638 968439108 930785969 981345081 355468905 728018367 892563090 901550626 381501283 970502556 549763407 992313138 373142546 845564900 541335868 546655307 549776837 804045499 168148979 814803102 869722893 954910347 332379706 470211717 622771347 899623851 932831822 995083410 980139518 993332555 636184225 693434567 487875510 936783609 645664553 962151222 218242773 791102402 109790386 874205133 668853547 791736803 105260476 149670581 38619698 702667122 290703709 672562520 267400801 672060789 91949501 144336666 230288523 640096505 865823155 950433381 225082832 265886188 6903554 98498254 491251085 921510944 580990435 587345884 858749529 927759937 865021126 966494211 887588363 936002637 603579269 990967697 308530589 811773343 426191999 848273535 702189346 888567207 700576529 817139824 357247679 365621279 889237326 945776816 131454687 927765792 677017598 979018015 456590866 764832667 586741784 958771657 504956300 996999054 174419929 729833273 987613763 992412391 897920160 958582262 8870940 10585406 440809781 997598423 2677196 502538744 856759369 916608697 204410545 783205622 622035086 831572829 550313636 839084130 963561024 995078396 391417147 433653722 536894977 665176350 167054018 438883054 423303421 616125130 283064396 333073988 293598115 925956640 255032624 268816462 810861743 957363988 253727838 342999291 927924629 986745502 724834212 952823810 971272075 999126783 935053176 972899406 714922799 899453527 869501355 892375003 546879602 953048252 91310919 317858504 388996419 935995193 938677390 992801669 452254260 486209191 384117625 536455282 145451613 401940459 610227150 881880522 850550808 906414702 343799059 352521325 44197499 443138351 165808545 215618655 52851499 688058751 726822187 901392269 525169875 806612325 724017210 753046492 507295007 747891764 91502587 927147650 498555471 573456210 835673092 841372656 527236546 872113572 344444948 929040897 33633340 562994905 890429077 906245462 435100485 740647950 532884114 881066810 194505779 833677039 531987272 846792900 978619033 992752438 35638314 822853937 583353727 705200519 869960199 909593250 912341911 984098792 22652605 806812182 592633055 906464536 938012802 950697079 198465998 313335103 908228483 919974287 388406347 614119439 741908465 743658411 999238357 999389323 237133956 581727942 726632717 834522538 506443883 733919784 776646162 904885530 73182922 807850278 493813843 718103627 371939313 441191755 409332810 410446077 216097923 259149442 368218881 699344408 378598828 937056121 913999454 964640231 616081592 785722844 522001048 983499355 387491000 642926887 231693985 929129120 290526779 524781046 455925989 504965271 617694303 853495353 995223685 995493545 167094685 768930321 284245116 705201867 291566772 605587348 872812383 915004092 15891277 403411586 259424674 642127767 863049785 923662305 148554309 992422105 347124613 693589031 667962876 730954463 702235451 733828244 231806352 293109844 112093646 574911546 96706700 378607030 228117321 232538308 828421595 916680780 256706221 977295236 345600078 755695212 953556467 961815291 328128115 867734011 753117083 760933076 687197239 960634302 222650122 671753479 944760400 975797446 150012307 900231212 187403402 311861564 359995372 884013894 523749223 778073169 678808024 861404300 325999235 616371011 801641308 942128222 402091358 486488538 434145443 908105253 360524269 529347522 974375557 985146840 57140218 555581882 77702360 760742223 519535949 663513853 296863407 352313978 927039721 945057098 261566553 962472672 291106102 755140089 251419681 625532432 27854927 280520057 576247231 609065073 642022711 978519023 849897841 954971441 346468111 759972940 659192309 986833173 866178067 912385951 714723953 828644377 430708150 830643644 596917776 991147708 666815305 858513617 182530215 657693245 454698371 552394733 575325665 826647465 923241028 957752878 807227464 976787981 216783609 972311250 810511380 982854680 405350505 820035006 396570801 808600105 352050020 673623868 635716025 798994742 623359887 971151593 223243522 717585931 525179691 540114659 767732096 972773719 100691788 331649388 740123605 857419071 336640673 979488556 353329922 917278102 407777989 477761397 949541840 961384496 46638301 668386835 897745561 954134627 154956681 913529606 531453697 903518740 109954913 110787544 57210067 781565824 576541792 603866331 155153366 403720487 646654936 848449932 957287861 967389554 51162156 370764787 791495162 957131850 534101367 923333842 59037949 630249846 755143393 774545292 687803150 816916907 726018910 806456127 291735847 414096426 560844389 948631636 753934267 899255562 904223138 960577407 934949842 975999087 228674038 712579710 683849100 703292239 54919905 184070205 860797236 942930884 167315741 327676574 38958824 646391874 457812777 551854639 415917969 467003914 519825464 923766667 802942326 826982927 77943706 983812508 10598492 164332828 813160802 841764930 582678107 680021479 581656015 730872410 937910669 962889973 312817120 336801470 976349856 988402868 794838082 828217214 761860364 882083160 626962581 875415810 783612035 944260397 576248575 954466751 661772572 874394169 763609904 874897306 247000706 408572235 305183404 594781129 623783974 717725474 900070518 919445690 314403149 612780569 940293021 978302315 315734902 607481407 664843902 738281953 154021961 344904616 227181872 488645418 625971215 903846252 146957937 212744657 32158881 218863820 236458835 704135719 527099428 702200048 376368154 418506074 435762546 444869549 352246342 638001799 461628144 637466479 218434986 686982338 889226781 947554707 488722931 946793523 586465933 731300137 208999327 786940748 864491714 946912254 616420446 747850856 60469440 110898383 226883482 705342978 803028895 831392365 5190066 789680398 603131718 887894275 333501602 742549101 806744702 867242351 91693949 543276971 198108100 759781539 106007578 675939224 664797326 905694693 343674329 807761645 957002328 989424298 44706688 105637253 986470293 992778885 51808035 87672681 552241794 708019399 380761930 914651116 953613314 990044757 643711927 754334271 817085267 987353910 55976328 845235420 675420543 680970054 499618220 734729731 990806872 991287645 311634592 696424581 855671929 862883581 389952539 984968570 339737786 742251853 156641603 892537745 244840777 712195504 908429458 947500854 219909421 285725507 458556836 974752115 92244169 193968496 290523395 501505638 78666149 735344222 620359157 863270275 196393246 898635448 459674358 937581006 52345267 461244509 789096486 945386600 153321389 875079289 533414841 948452924 615108635 649613418 569666457 918062128 991018880 991950278 396982829 794040365 372570938 839278965 390238928 594076833 501506464 690232636 862066017 869611006 28605896 817214099 492635790 991365686 300821337 310204583 496030492 625212382 99430707 141751807 913408191 914604928 531094108 986332636 294661908 622594686 399283664 779674342 93577352 457126185 672562955 921651436 874359978 885888894 916631872 935849868 82073315 133815847 605201126 740937127 432543574 734409689 750392840 882806140 494267116 868980075 911417474 954647790 524687259 942102927 151901411 968868169 106982865 944395324 549373171 656510124 538897568 544501149 740680311 854133598 930484900 963277432 743940224 786468203 405124510 519415812 816077674 970907293 180643435 271018592 679020547 917538402 974400897 974564904 367913425 520133142 765707881 840545953 147378656 893973284 454476804 681568333 345270486 381313255 138637957 315589653 627532444 750770889 965769391 980788489 703415495 971147984 245012556 821377252 972567471 991782234 513393483 887767957 71666763 547188657 692214625 773828568 747534240 955710769 272546657 332013333 874273919 969196311 488802190 576578194 40631848 851676436 333256103 563088467 592963780 784714960 932095258 999125354 335746699 425878096 390433591 746759771 425653768 466669348 779185810 963935242 674050336 737694886 272391465 752620274 273398733 604004647 411946973 481800933 902687907 975132185 512431733 970862795 305584653 613266482 685121931 996784989 334934305 455381365 768276880 836007478 305584522 525464611 757785727 885434430 466015631 926582770 375213883 567014136 449096350 604071853 202535899 833827766 487468527 756458548 900175136 929248072 187976766 719204975 891145217 994488883 389806207 584023504 429491097 920616667 367645171 439406689 23935091 324849285 567665484 837688664 300619285 407193982 664858892 807783911 778788065 981923786 26980661 895828108 777610266 964726723 539415221 997504755 157021180 214331781 367839778 561991218 162788316 407482376 295986599 345789280 566782944 597933081 720137227 929033383 53600032 494043065 141363680 557571907 571948963 616005706 930073419 988512176 188154987 597073655 75234268 930186515 86055964 960105135 737597018 829332485 813562912 814845821 444247831 526289081 764186083 809781607 211788573 609478420 412522092 875681566 916607029 956109417 532366495 876123965 172605147 730809620 181020120 293672830 797518591 926045918 32963628 924151817 420433594 885773780 649976169 915486396 367740688 900083059 914885089 942226257 261648274 823385725 72358697 411578447 811065680 824888517 214859087 340902802 420948828 691405029 769699415 840574170 877004543 957300219 630009911 993531513 79504270 278794270 186307508 951457621 72074237 840615587 969033446 995425805 790616944 914502464 116095193 567447651 33652494 41007406 64735861 716904955 667144891 819982458 623249589 716839553 640691295 869768868 574653151 937177131 338631862 973649905 199136030 731238459 732124029 938412090 638386015 879805228 487001650 497485532 976650643 988429907 870663099 877991327 126031019 238281975 806955423 903051054 264791126 940168416 931221998 948299075 418148576 646326553 465356396 809066847 512392469 798706398 779188462 940953374 699659603 790037959 114725503 798230425 361110962 910728407 211227705 585097557 577665920 619635731 866745394 990217142 812866177 954301559 941588738 992145765 162800417 642609825 575392719 877269076 379206441 700492957 432251577 726352354 122253940 213625591 639190186 720150905 810011117 867179751 783215957 961454003 876603105 944055173 522839830 638639037 901397955 913012810 662041096 963065906 819391044 932279126 434054457 993551318 507333730 724143096 323835830 650418942 367025058 752859761 83752183 769894067 89382841 411663845 120982871 993492007 102378703 621401613 83642535 919408675 126092568 583791735 787150599 950768843 723268191 882410510 423934839 944630348 670758823 869205935 860863351 980357828 246628700 648688693 601220924 947318505 332179425 703509751 168363505 981418653 516218908 656406379 874523632 888677119 802234593 989930576 162350749 708552311 647923712 867451096 115588489 562766176 239472813 489903902 583667434 659122540 392176586 557546746 511180156 971582497 124927004 736683727 23907660 169451276 623165532 684639463 817783422 941325865 872359876 906222339 823417995 998743107 864191326 914090725 253691673 738499927 765839756 768191080 330853756 977476436 443539481 512982696 323135277 758877096 608912522 772841645 660567820 807403139 470202546 636653700 268828300 332627112 354696827 702176661 163465229 163752708 571862995 908224677 42679142 916203909 867353397 948479053 169298665 181338116 367476744 513215707 238924111 432463764 534332416 887195274 173102545 450363577 70688506 884799040 951116345 959168618 255989374 479137050 575270353 942899654 400267582 774366690 652119160 653940867 302590054 518447209 198401196 693803612 286475703 573609780 983559179 988856248 251320154 721644811 630511753 636140206 282866809 949227689 659922406 756821307 926341130 963596026 894194696 963562407 670656121 886556556 679564343 921377106 502264441 799873804 62291808 615487729 262050229 566418785 659964107 921392682 991177880 995163945 299434735 823426166 532254821 686210124 408617777 978982685 210455328 822348281 316187973 440464857 22950184 574006481 359904626 424115831 464013026 670315613 416707857 556983923 765871354 768667178 142229035 464892023 965633661 968973581 625228283 983571049 597502173 851998980 117719413 514095042 120323108 705293048 396667930 950972138 749226220 850551837 80636283 986937994 239004226 609969630 919892611 950452324 924201518 967908461 51466412 637064408 708859611 903921599 453737926 813496615 283326687 584967336 163787905 190622902 978328654 997549099 629477371 879666574 811452035 880739775 233952639 528898676 170891087 497424326 409795393 939082363 954436068 955489341 816833668 819529862 77728180 315516758 539165515 917517623 508979577 714581192 254992786 606625801 365605821 884367465 768832568 909815930 699277919 950747568 961354963 975407487 649263752 963324572 564553652 787344657 720348341 819550266 919122772 948807000 819833781 890846927 132434455 350217293 688550020 749366843 296013440 661876794 562617391 635098767 521064949 646612723 685406836 970858375 40812255 304102153 110223248 653043325 850474237 951100654 955913918 973504563 480279507 777952114 840081120 916937602 765982133 968620468 530149096 736783227 250689395 358368415 322220637 672049449 11464485 30122266 829337349 962356680 157074720 501384119 26252553 308301013 617242731 831756498 53186053 336055192 697916663 920660550 949246988 981084896 108799853 389353125 99956645 514605424 933510631 957741842 826452826 841481886 326844776 592556844 266029131 942294461 437588271 913778575 208178310 680486931 909776829 983757007 571285263 753053661 772320007 856112832 616993882 853731447 990279359 999137433 656849393 698854915 672105417 789112216 476024386 667219591 364624682 594125394 644865801 743127347 628982675 965802187 334540106 914116249 338404140 369222770 2577705 644867853 265340170 625028918 157413662 208756136 86110971 894010709 743875822 788703898 569904183 819562540 883447077 902083889 159428647 955899762 28645420 501412604 89337749 303859591 101718245 740546764 251667333 321738603 25113104 271297300 952463815 973239816 681304260 716256644 110653889 345211668 5156733 122798547 11958661 552477224 134123369 465847960 205183495 559793785 230602418 621369849 196603937 605144192 869078515 942850975 912240788 944616236 744652728 883456076 593478515 684977488 520573781 870318656 594253585 601761373 237220437 656866809 284991961 435607764 436544167 924138475 329031214 437392097 3140941 541508442 19701717 614986918 960760091 966608878 255886886 497270372 525353373 690322367 985243260 990239684 334524297 833110938 729670678 891917987 311693797 324130367 918776535 984744838 419355584 594059821 42529821 656909338 655564254 746014217 820726792 917103595 487817217 652215905 618081695 920119124 56221520 942192204 874221434 986285075 425056092 936550556 949261864 959002092 532128989 667445280 537367228 846486405 731554124 954384889 17988604 460907816 484557251 868904757 152832350 196669161 293526627 489362546 549916652 686738339 978446569 979658387 605580226 626775173 609373609 910409459 326855223 817312423 787093103 980136556 979990866 997387545 830697640 915866306 994217459 995516822 377472053 865476909 306968616 729238080 405456433 599932322 177256999 768587975 305916761 338629020 574490860 766582722 750917703 817782068 192382655 826914241 461764398 818342011 536318482 935949323 735502484 746635286 388304951 679561412 72293935 587161659 868936909 957043545 710554693 930529315 935048666 982365883 505342603 897398590 381859860 712303560 15900989 128908663 56448063 199505425 963014300 963947017 410905536 609391265 741614214 898379108 649545155 815355148 315954826 988703681 146996447 619182358 620968987 885772108 892348767 898217445 662357819 673861377 513396180 913589202 602619223 969474268 302707763 850859015 254894969 816383898 999052049 999152488 808292828 823508125 849919613 921487435 374445266 479617656 5323193 405556528 241296255 398855594 86666015 179701332 67874418 665520260 892478534 896599957 214641124 369876157 477897366 724544895 795075525 828920225 835334841 881430101 570295022 923129868 529705620 819036393 143169699 991551381 766378267 973581931 106576741 560638255 49955044 451731207 16744121 334099496 842502752 924057607 478134541 569917494 330784087 407000295 474323382 852539033 454677299 525133478 690884260 928171771 20975555 103619802 605201327 616358094 101616332 464220783 932926313 995445580 371894723 857778197 458834723 941642537 341226072 675395203 187549186 464617232 767536637 787241211 6326153 812919890 237269286 980933276 20360791 915838213 486604344 617608711 284655427 915565277 25792799 533344607 871119529 881100126 635567845 812418235 736054505 779226980 579157396 615527316 500347353 725935487 88118807 525094002 615119963 955324082 996304630 996991095 570264478 699797504 148997094 634284470 778699044 781108750 715538524 887617476 243462480 920848438 423668915 431480009 524560409 765354226 905646398 935030470 779074682 823805900 811298596 827386586 230566213 706903079 361621605 568229205 841888684 968375195 354567084 361390643 681367089 949451832 279082542 780354833 43417531 635903426 405428 143694387 240575225 712688768 391220564 554918335 830101296 838271988 674348486 822836426 419356947 732409125 468082875 601272685 844146445 943623292 924229977 953440304 61546830 849276707 554576248 719301411 38728460 851930149 421077045 829148268 753548240 841630148 351023687 720499858 352850091 494482528 550231299 877483847 226831509 735975196 945098100 982742037 184510186 759934739 710081472 845755296 319845443 684724850 690619136 768974643 423684975 573482339 511271543 523097689 742963931 817914947 740486970 767630204 513662799 941537957 1870111 163351407 709903540 759646077 621062159 815757237 236315894 797766844 789165154 860504263 35277589 68474260 301280496 688250707 969132483 982350674 665632380 904765724 18164048 376909680 176682471 772960673 518856076 930670767 131085339 603983417 176179021 418511350 505067570 752039293 251341992 575442620 467431136 670365765 394091346 705882438 180979032 898423974 162679603 810179027 631096561 776099581 505099855 694088437 465441323 641559055 748867783 885871790 744580280 945166551 92377989 917191736 96944345 408883694 646031674 916372084 703446106 903146514 482331625 704612503 669141590 678415183 588107242 658672521 482325205 997237431 175292198 917950347 745037294 966563464 276694909 837465373 796046844 805985316 78423225 489531500 131791561 271150960 871194363 945465269 438600493 654393227 428067097 775740424 151739615 841945503 921196470 937760066 421395928 643874937 769124177 834860741 858923584 881659160 194379423 452546936 531224710 588847957 106865263 519911680 629696329 740700601 301034657 512853740 899377905 988108941 77744544 562500709 215007778 547082105 959397531 962386657 742039717 920997957 474007349 611767663 444659415 812536587 404567971 576807933 716908793 837272522 705237100 950389323 206409006 626677431 238343550 746065051 846818418 959014664 796245617 865467878 511720588 965527583 303306813 335226439 670689769 957861239 374665010 436407653 369713768 833194871 89554325 607020049 814511987 907490175 763045975 880814473 901234630 919552693 303040909 682954148 44323099 825721135 905451116 987124913 231923615 293616446 565644487 649990037 933457238 967484438 191176487 577871137 802398833 868145220 508096863 524913411 871864067 958839527 584396003 623292112 57487014 919493988 714698648 759572295 312731958 484547998 619721999 689962198 780440715 818617625 583022829 796335891 218107111 623268328 207852983 894439381 363033182 826101913 340761057 352611625 523151550 673978486 876203481 966059267 761148378 939484745 921871784 931840713 460302502 691937091 574922143 782884940 67285865 436890476 562648861 738605590 404758852 702282378 174643388 325509738 170044341 584213965 621252636 964777164 33729926 384820326 422448630 959319446 258198132 971320779 160634965 682041104 257520520 894083070 463577567 487366967 357232154 646320477 769311784 861592349 357693573 596810625 994000620 995827750 405528557 815327363 691167226 976105241 388769148 612586253 531681771 846619015 449906782 997958764 44995138 828186937 846660182 849300495 807176141 832989720 835511328 892550408 383367156 531749023 360608002 548025472 452668674 860019015 34490443 170779995 765582182 842488694 70529694 536067355 856583791 904354786 982921072 986604200 813214768 905963129 42900411 125978279 880160627 927282847 243347659 774921483 371829878 581169545 300500261 658726763 791961335 918692920 546583601 573796391 356880841 550229993 145948337 569005350 320675213 354966910 38298744 957566735 118986846 153886009 765428058 938614328 181902870 513932931 7167692 789758052 690362444 807679482 784567663 869537802 596947039 813962141 464403582 997759522 977245029 978786162 58538236 167458314 781189916 877585712 215305553 948439272 962445178 997555163 502680662 948813779 832632213 904194730 815379854 923307019 928361819 964214923 350797835 841162358 278348754 505501432 567543342 624144198 13721858 716763745 527485461 753049239 282595943 464344756 124102883 385705375 199046207 859737324 647228488 658596330 159668336 436012841 160306103 709333932 981814736 988051001 639018459 763708544 725038930 974750740 798279118 837692748 211307450 423081970 606914001 786336942 592278423 907493426 951644497 970360683 748389652 806207958 88195010 369537759 114349635 787367831 717340781 976910880 449511901 926080573 770850089 928209991 136189441 284673680 930025645 936877685 545224331 712978239 611024168 869194521 677611307 883702687 61505585 258262136 752980119 945672638 203426798 873465312 625133703 633724365 419317143 697231377 223129408 789196256 767429279 952162244 970815810 982261548 694912628 777942016 63515429 338247871 214423732 476339293 806753353 810862787 998262478 998473572 25627731 75493275 107180728 316776086 672445029 797162806 243854457 936016306 165304069 218749667 540829390 846844901 205319360 292939833 96280471 604809994 960516343 960799740 291775261 537260645 245237057 260502211 70055042 884473596 867790430 993054300 427249554 888695096 543468477 770926281 220836570 361729990 42713936 726040983 575327260 945166666 363915315 762030493 773953715 936742250 869762174 989692778 928046536 942325588 570584676 777351909 201028768 556880912 129815092 380002088 524201689 543521753 354223367 673873139 722012180 816458175 335614603 543897806 363586607 880151594 198404889 977588795 297537446 706996361 90956735 723523000 625867776 840433874 439376858 924902199 482108119 919161584 969412484 977483973 954643597 968757737 22119091 572258437 875034724 883219751 219193067 693680286 304804688 844821052 16171886 718627097 601159286 861409434 720619539 793543538 639614975 841879879 815616702 992841483 31609512 231871244 96111026 238299131 820252347 845618941 772115431 937345643 756074482 854605775 156108144 458681437 521067358 652977632 894647437 955137512 819444617 954954544 818198298 900521500 388220215 561590797 81538819 279157242 31609372 542458973 272284231 475740922 714129362 873673669 942823985 991151673 133481511 333613589 722476006 778346987 843204648 950164600 43655787 165827400 64496649 72705522 431003050 680072086 225780843 681224953 942064488 967601060 223979200 963816009 197562690 935110695 336476319 375171545 337567014 933771546 846377576 943435257 80543629 627600475 848980870 890259584 549327011 991409370 154579110 721272831 495760836 928344070 562080295 717291799 72173606 401479023 309919425 631296517 112373360 606371188 196776498 600295797 553399566 841681673 569112522 851669064 197907502 820318950 198037548 886081335 740636212 925484311 483305814 935749192 980499336 985241140 218192062 637879098 509792391 599545238 698736851 864232801 858490905 858617288 545047207 573730647 524996867 610839425 381840245 625319664 35705667 458988150 744753237 947730955 436688812 810923963 738687122 878975424 324473334 340740984 415904431 715712903 604683967 683554597 49003009 74166749 106050068 775554819 251141970 928638152 157152470 593070045 329671253 397906022 343210935 422878063 690924143 785048009 252594505 894390349 73332580 541369337 871739565 972284066 202973844 917697860 919627961 955027215 585127615 663652475 909830783 979177623 100699896 809330762 444746944 988250186 12299368 859438907 532692471 705013503 13384422 534720241 763217465 995567911 245296555 504639979 826037300 853416642 283815573 451387855 852671694 912713570 218913194 675058924 909819805 992338479 431601041 848532435 216166998 691974793 309854826 559456406 796201571 988902811 352704665 598659465 799334799 898997944 693327817 891490313 747517322 860023645 299092333 875339984 239702495 347520339 855161492 891237165 579842037 582501629 783110938 984942651 115569795 419480086 454980371 752057588 107484015 296763015 779928198 808905544 585763096 834523667 714625244 878594499 465199438 728685345 474992639 505802004 661046239 737526296 705543491 888003940 555833809 915538262 408035534 716757009 252098673 868899144 88645883 472515453 243019316 454793521 705404074 760410836 275668933 901915523 511890903 974082533 361877709 460473938 70325307 592390680 354962953 722828402 88020271 716686740 671103465 725062294 5265073 230150315 296967986 702206767 537597061 586360632 379743754 858722548 522670939 603458666 177412759 272392755 953074909 989890297 741307276 769309139 321936682 575956149 638469119 744506754 732947831 924908068 261571389 535293971 789121634 829676511 557318903 866243285 121142385 830955621 412758458 722573200 140038255 303201903 543209483 915686343 260169888 274025987 144722624 607087016 671134277 685918296 454270981 721409344 291008882 300632719 456789283 738423732 172849411 471224986 95861537 715741535 371681031 921907642 863938610 894608287 286783388 311246447 31847286 559169234 134097759 553321330 262599003 384854978 610126233 824498025 681454053 961162997 751105285 822361239 753915039 961375223 777812013 862275081 572747460 653795128 49972976 570860960 29893415 212739458 972331951 998966769 528133372 694807876 110002709 217861181 418122986 440778871 523404418 580135916 968571448 985582542 276470058 463925926 205282280 289431599 649264840 954563459 52622366 354110180 378993499 732724558 586889374 740634308 749789997 848115320 197853503 879801715 989332396 992700281 397352076 622545891 508041775 721734189 675170659 731334460 124362505 462300204 4717215 181776400 492106941 807468878 134720480 601956632 358976704 391543104 759273995 912092610 458126226 864203487 256417120 580096002 115233641 405265836 538095358 780407851 796309534 970604734 677536620 888810520 807455138 981425231 639204615 966555080 471110255 958512625 634725788 863078283 240335226 931370917 632567796 902690245 506782061 712340058 965462586 983166561 130256296 490653889 785034065 789800331 918397054 946343300 755284298 761036335 967566095 990279118 193345766 632889916 907062754 971905534 314880594 800643072 806439794 807195992 701179784 898871067 163030310 361979500 785238970 805326269 10791446 652689286 424917876 979529359 826747265 836771179 904630927 912940303 641134037 903683021 439308539 854439207 19277428 483080654 940936754 979124929 840400066 897587939 723599654 723780190 230199169 419980142 587245843 641968055 102591927 342754218 423330866 922507777 40803003 169801691 48253703 171438377 805824886 894529685 742454670 755143044 809666132 861076431 410902211 727755653 266880482 797139844 890537100 954144492 439626498 928878612 472279824 891272741 204723180 371661561 300775889 997707929 288203126 819389147 923798537 979183194 879273539 902804560 106518367 858136791 951481083 974771043 159094647 961968048 268339196 896466836 817498706 992020786 606585379 655138860 465069989 501967121 440911865 871804641 726335175 892113758 748017274 822768908 569551110 854118062 213414739 228383364 102335103 375809598 140891987 659080416 689971605 851589849 359781550 435142658 748724374 951225895 399292100 536009341 810878026 912458315 904463065 971142369 864027614 969849623 323697903 840571985 263739897 840710241 125009532 708933991 966051560 987884688 409479831 571775689 630423531 954904717 383377636 826041928 126506815 471201760 24772877 461713291 953995878 987415985 820288815 950986399 278762830 322877442 720760435 812805984 377352107 733176724 580023196 957147705 572118780 719717043 89580368 777593303 115635881 395939806 242981088 472996650 605308711 660295528 805024787 960375037 274097535 985033944 62610791 756682838 239458467 396605711 720914747 912856936 588863228 974603167 291897103 889444750 513215217 579233199 531241023 956795483 134555130 491428986 633923752 992738109 712751519 778416243 95273049 631517159 460713064 466573477 446614725 722351655 244518162 957713276 400917477 477586818 818629400 939658248 507254949 561837707 536452874 719633683 32993857 718278555 32637305 493454680 698079883 726884571 403165503 845973005 418762791 631752256 874658321 983641528 976371 696424689 892687485 967882436 140843977 377074710 166501680 430076040 200471224 655315314 103804118 509638250 792098415 841241196 251068105 367568570 225235037 285410143 726291716 895715905 867142994 882289806 41966857 567955280 778838036 811927185 294070166 421227669 792227395 816254275 669418078 684592812 180334955 383289253 491624839 710633416 395807362 965676838 594373313 998993889 69528072 172975106 346687549 917842257 830750239 864434079 600710934 772907447 389103774 743147414 924902874 945329806 968238153 979462558 895843497 989186176 532547382 972097629 151704102 988906127 212906987 517572152 226613361 866306164 669623563 821155993 849666965 988629656 82550834 900399800 741721927 855943864 727065966 985696298 103674622 188271880 381741584 531827654 279903581 582549369 628487539 854907153 582316471 994852676 649655734 899140760 836492223 987308525 384115495 794088498 610214799 890634440 218228301 503862823 10781406 398419999 550035645 622833273 770353696 928546575 83875454 783421381 138865093 484274625 635637655 850362049 178437998 432790940 917421446 968600664 41760136 125865191 808298249 987522488 411508723 443419644 519836205 710991673 526527202 964518207 281066831 761958360 315640491 830182652 45218918 494998616 145256466 930713179 309549924 344211955 56346207 579658259 203405456 896425031 319834182 354992153 618137477 882593850 6241024 537690116 345050474 793022769 877524538 914223756 684448993 916448329 825713313 900133938 591074694 807908122 996939391 997639398 264759656 954084245 597185659 778744668 249240885 381365535 317239560 868906664 138925085 554247900 607602760 639114602 30456424 553115144 984745528 996721453 848133961 978905521 177607641 244431211 829173678 961082000 553080244 643349046 200314350 311801697 947872238 995022574 494447841 957544044 704722765 820545730 795439948 931264554 930405892 932063635 3317136 610285083 17128967 703723078 268027656 306030477 740098873 978709382 151802191 497035974 391687016 821436211 660787960 743217411 558708234 902435998 717328984 742846504 891827876 956907465 73223088 199388974 690619764 827445061 199705900 506182505 256014817 488770298 778739128 799882188 452022951 625573753 589961085 876288491 557017721 977566173 247970175 972830389 901419485 990591414 192526359 596838326 445331137 460550382 231442316 998283667 154811516 657183060 393078966 974789440 943815555 988369675 880609283 920605538 548294398 927726544 591019369 833322254 761495214 902467977 164655656 729268297 142091090 295453362 488367279 673668351 736727177 807901650 73952318 699281006 15753546 412864907 827947018 925102254 693621083 934075876 186779484 494871048 806980010 998342353 133125944 229801222 500900683 508193636 615764107 894853912 679896013 962400911 528935258 889113577 257917104 322167978 759481195 882217131 998171404 998870718 46064158 466949678 800959346 961199060 115033204 704340240 599085208 825085439 658699186 685564215 662715424 940050049 862545789 973126379 794555815 830878245 938339140 982222279 893912511 929654997 610642355 964310548 825671021 966588263 797905687 948528234 110523118 386582418 495340148 558470261 806037544 887657510 913944282 954780423 630464657 718412686 74252117 475785742 859102569 917695563 115221316 716004474 424142716 989131632 322623415 723576944 630206108 903903247 480897637 671393465 797643547 912956715 819694095 861792360 362851761 443288146 444396749 763246352 747845989 999284731 584474540 902874951 611973056 623489798 176898655 318425483 93506650 617378646 570723619 588890887 598655413 690210482 82317619 433527266 883196679 958674899 265815572 825381642 861843167 942286200 681646033 781252706 925320049 951523709 230895138 231348940 413817371 554069157 955860099 964989710 959629389 981810804 652257016 825141415 724839122 837175914 167729470 235037135 419268346 830627377 259824235 987587736 998426528 998668319 73840631 853266113 442219491 792440727 366740476 682415513 64274207 959185997 70241370 801050828 774906740 969944906 900652506 975558489 460862975 762680440 104513512 772340497 917304946 919223691 806984037 843774215 453384759 772819920 176394545 397164494 511756759 632295929 200544535 891545376 152808922 706275513 110742511 267671594 535671607 958151637 623607264 949050038 514687931 913577666 490851211 969945702 756761010 809205765 921677076 953489329 113358787 767377967 874061037 907924378 86849364 291733225 794420946 868702014 198825544 813530506 520708449 749293755 459540549 911154181 677972059 897743809 507960035 569779522 862259262 875337646 398921551 622028982 449570269 569736274 454133407 633063489 307921302 400794251 828372736 972128549 360329455 561987360 713466886 765950775 968017477 983062264 914991662 941765603 729787343 893280027 433013764 493812961 4434074 798219956 259755940 790251725 481772140 652597530 841603723 933500134 289730057 678635841 864839875 886430011 209885275 791556701 51134294 569438847 673623099 902243773 560296657 861202963 649711621 938310740 66485535 753984496 180898169 687661961 182199218 579445971 575652907 837901398 221067986 367582096 765824131 907942581 550088245 855732976 652843187 842967599 926915639 935287259 943903958 997314376 121973093 644323550 448698999 920136260 231108457 823707048 175348641 682168170 872213924 968636614 919450356 936610731 525470654 692042496 550564338 748373745 301926877 694268212 632165311 769691438 314845462 855578009 170813875 737157929 771456787 974436055 182400121 355612603 734332946 870744708 84833475 526830918 425542612 491269675 722495149 815482548 535842056 953892039 930383250 980414677 479737975 748208920 344362899 538555804 906079903 986893685 815957882 998040367 113644375 563569092 848124241 984198937 510006525 870571438 610094933 997374146 225613159 854791597 787707146 943378267 993082047 993398554 371862530 427656437 508009903 513216425 680501717 761085517 994530640 998827092 327604346 677212534 791536141 865357155 227465997 627156921 470939436 948523730 180248493 508081415 755073866 972929646 303989251 409588406 348100759 890183273 793048752 884313594 271040215 895981919 690406268 780581639 392650159 985371640 829711281 939286436 523826505 664535365 228366899 359048850 988434774 994259585 712463075 763034726 831398508 975548455 580555769 720412302 200809978 630322960 149684475 921889907 874556816 979831265 864041634 900420597 243995516 519070023 615825631 778548014 751777902 807154294 324793891 987730434 8109819 876949010 340966421 842164670 146968968 465004662 796388227 974995585 575223880 694978986 266807441 479341219 480888241 744547093 199138572 804032016 108728015 886737428 954251207 980634111 892464873 938864370 664689559 764191239 519298592 678519349 95649377 335987493 318583422 569694158 176273756 540220903 805465563 920851073 791356788 824323342 757840320 989017340 187640207 824031904 666724652 833885931 564080134 610485755 620328951 700289799 888218123 895794386 398185184 575283396 397866311 415781332 884386372 886925956 91010396 459557009 840484482 925030399 182989919 409797508 998081580 998230726 850823380 967989952 609676257 828829336 132899279 336294789 718215856 959756828 60604582 212095955 102240007 785540036 995094644 996933533 679789558 689233706 951470471 981303961 945897217 990443581 382246203 523167220 455561207 865952780 666818902 963011622 198423015 305414918 557283057 931468658 537944007 709996191 728713027 892457049 527694287 625389907 593832845 818034283 872063964 875191028 888799157 909527712 26692049 674292460 439184118 815951859 777572878 884564018 874731351 967716124 775235697 870108644 158383982 735949239 750790806 820315138 298508320 806165949 90873331 105631309 638696227 820189820 519045350 567167338 227297384 374853269 893003712 994952959 925187896 959031618 361953455 976013475 762124341 825453970 815667896 931794064 229737177 869436012 988047833 993833370 355727353 876892234 537768627 845261332 476653458 594961991 425416402 487834148 313836304 519908113 774249510 922084584 887684258 970089487 379377829 511259225 200292419 454767447 944614386 961650367 460676938 610900647 490145881 666571693 866019535 988400030 565979179 989667887 769476082 855889846 617633058 842412955 695066656 984415387 139227186 319831271 811516532 966474189 35268368 534002662 92156860 318413671 996569254 997509501 474414623 805760946 403129433 821293447 137371751 672857469 294093735 445694378 769052970 958586951 567447313 651285796 569060381 888993273 818310229 974472828 683185336 940190531 569380880 960930616 431592551 894774773 897599997 926462934 441990772 525529436 606169227 650092413 110466489 987994771 455411773 820024356 549437688 676063592 851389317 941770597 510092335 580302013 657387619 698624009 521034034 577117069 620376086 885358845 743218096 810297175 5037134 667837586 242967176 614844582 991357886 996699848 873452463 974300720 610421979 704274333 302842572 735854123 809255751 910262280 933794503 982214225 900290861 903061410 728435839 872909792 524835112 708906546 522805577 777724899 314851055 782285631 732640945 735479255 115315942 704671770 149867415 717414178 625025233 985136453 17648826 440901261 152397428 828646981 66376000 722477542 395000276 717725695 929902999 951691279 806673984 979370477 404467583 858343337 682957345 767710547 712287745 931885919 712601036 793744631 428568272 800940780 555245958 751176060 484871995 712433991 643679575 652577764 156363283 626359886 613321751 955419384 4073450 26754632 903425407 930003860 574986588 880673284 54393247 216463583 625000862 768519564 352729591 697429237 301902889 306709029 946022499 969255084 312568415 933394916 155975013 326853926 527633032 792139608 16615377 722476423 457419038 964848571 571880834 942307631 788368286 799052512 585990573 968446456 885405098 926830533 480229286 907593954 74873074 883382831 427115092 887366429 460411424 598536663 85405830 793454336 813973895 837184440 382474600 931658048 658422899 902105517 550295831 619728487 319717873 686178068 436228723 934083500 82025252 143256561 592984195 873410022 616591068 873927571 525660903 533389862 980030314 989410110 889769124 994565178 84196217 788830665 633000550 643442009 586711157 992187848 70788925 875940363 53397948 938547612 990795780 996602381 944983543 959136895 684015891 975855748 131157124 591866423 747627480 956270164 392423835 624521843 105783046 985299754 661424437 854896660 135183577 932703242 599233491 781677579 279976174 863392348 495685382 855211423 927351599 976915175 644438225 673258047 716736577 852534978 121858067 598143365 21129414 983922034 412748395 572956548 826714744 884479666 848019639 874237468 244038684 978878199 656346413 998435708 216790938 277529746 974283906 979977256 754100397 781602219 335207530 776700403 3651198 668928868 147815556 205677461 2222727 198305654 334625821 899992369 60154824 456442476 468790294 919566105 751858058 974644991 169218644 618439175 842385166 984129798 955711531 972502808 316397926 960872712 34147760 851882241 785876167 958013315 110732987 128583778 879874237 885329863 23718109 248106104 200037182 345488335 538357189 876168464 837278458 992205245 446610129 601150931 718070623 926782438 107293743 647792627 799342796 909185029 76203015 77356462 285109382 719876234 936880872 940872292 250127368 963435977 493837687 610110241 525744962 599802051 96792030 167820413 486074790 751065992 775493723 879847172 71394680 821219154 611069868 986587472 922771997 967853397 807523381 994594155 8870329 935098122 657565747 968859509 309066463 656703119 470308504 953122903 489790663 490628207 658179227 822618234 240405971 417695664 775239071 886418559 248913705 844694533 68067627 626256408 957764666 998251394 806489583 813054129 525571645 816357049 172945391 930626492 511218736 992434665 845629343 975438129 191176367 945036694 301877401 667808190 652721154 861195337 167254513 445715914 541360077 624737255 603274021 791475590 320867204 422749632 572206833 754009124 459302409 666091386 398267828 439645930 421087156 814225112 320093626 740475690 508096375 928653864 132266139 176734999 890187270 915231538 64124859 177602067 541333503 967984998 388271315 590179415 577400125 872094562 998253868 998631662 906836825 996578102 984356087 995267503 141368094 687188677 550246895 646271123 574663987 771398449 937988797 952318519 174794958 244040885 515880019 924976679 493979711 942123484 93158345 381892359 174062064 496685087 572960124 818975811 501940413 630911866 506657512 970530022 621264869 781860407 280892786 436483972 921218578 997950176 576803812 638489046 319052998 667312031 910673430 951247146 170932035 763669118 822050007 838946444 529166283 734720669 961802028 971946490 516657833 779751299 41831968 426509105 390786008 528763516 375392448 382947191 374844857 998885030 703727213 803163892 86046203 119406572 469200890 470867704 904765611 978321214 13832952 946926848 203713943 311410089 585727521 685787486 993628353 996142380 623055031 692027828 479211312 583523120 129245763 852421354 561818910 889727438 581373057 688481870 967908439 993167701 922080586 930433515 633231269 701273432 478715296 760021477 435724656 741762104 624556343 713821363 40010820 372218938 790910533 945789978 307712457 504133309 842037081 940614133 224075887 572531096 579165697 767762815 425362722 554253865 885593344 979571712 791297962 823026680 857661341 906043743 335641359 960021831 267607028 964347779 874895102 997330144 669793111 779931823 806279418 921339990 448436012 685101404 803525546 881447503 139325156 724925999 844137794 958805572 245777196 735134252 662366347 735375756 26225889 640872991 659678281 710389112 717681339 939069223 658153029 740792227 673701206 794193811 872867942 920069126 589995939 802298059 764211590 934076478 28527877 972281470 145130889 451916454 788969657 986715537 718279812 838876311 246374232 896079242 741519775 911339243 632579168 889058891 690422096 784553423 308663280 898199337 964974207 976172203 917014839 985197001 151388336 917814862 216247026 450179341 590658332 913835594 771859502 936500297 313452215 587799941 185930334 554597486 763706940 838352535 420133188 621476640 532066441 663793190 849222466 853266739 383353465 624350121 382284109 421096615 625310211 976739635 202405215 884211569 470668969 575621477 45615181 648193831 996179670 998692036 882392854 883627895 941711697 977823179 167207316 742296803 417973363 471723597 855819032 928706746 853837167 956579367 863991253 938692038 354726433 648810294 512892211 514930648 197314466 480717696 734010152 886567757 711418734 983945967 319644218 566475209 994523085 998918338 351838134 504531345 846548144 945111809 243521830 984046249 267935104 753622480 387691046 825825952 334092900 745814807 429931065 747692157 773117022 919558048 65105936 626356204 807459882 911459675 94466625 566817140 626287976 942606492 128327232 254991086 995965953 996760692 987131048 991761812 522073664 592867471 987756030 988969516 591037179 631666329 77211061 352194645 952212228 981409981 1788713 275081337 984403970 997261547 194310925 485777425 696512115 711532173 878060001 947219349 309732092 994451146 522779235 555795164 880886877 956408799 109004117 394266895 293445211 326900333 801307846 953942228 887652960 965880392 671831090 811521292 464112560 486015298 1883431 350653755 7729600 30275374 243984036 962832921 90186349 487853130 249356051 589805699 57787931 470447074 477928340 885851724 887657848 975731598 728173588 808103310 474467664 840144984 106493616 326399128 601606693 712604715 479650517 937155752 536889186 685318228 174688703 396950211 736155839 838450719 728018655 923243160 517110735 797202216 821530310 929128824 394384189 671146358 228985434 822110386 535530666 982416848 873755697 972934889 631025889 911369697 926709871 938685729 639393778 974933070 362835589 456629602 890185554 985014980 333462364 680797899 298316108 917199753 65578628 120388019 81805306 801904773 523552790 630512025 514611423 825644356 971116468 986525987 768554970 809686679 845024790 989881220 477289536 555966224 860262744 905423778 450446385 949610765 183723203 833341474 413225204 961900513 288027975 934191256 522875308 851488751 117952262 929287073 672249875 863665902 493348889 997541733 579004581 957066186 723124168 783377190 223197698 644376287 747665101 796871233 325239352 725885705 298071748 347348130 411540624 945947991 377928686 747490590 744941513 978440713 853478490 987992169 932843346 976929368 318737864 410971693 697294835 964047555 815726350 905287799 393613201 860789760 679080696 830621206 47425193 817866017 832472990 834252595 600402421 987691793 505011640 814455624 521773469 663743302 803807291 939261887 924920989 937697261 995493623 996775929 745525921 787823669 676514694 931940633 778469357 975961672 929340736 934812021 485223044 863343160 182167119 560424176 205818114 893893926 615513642 853111168 531514922 648642930 741265748 864887104 789819699 972784628 511726250 886379532 649972661 848865709 939205102 966770251 907426035 946071040 562830664 799713070 349914919 915377898 280545349 360031889 801490678 815891433 376177428 981554716 871130095 953574231 49254450 203271158 866183974 905133554 421230358 889727641 640706800 741996010 464845716 497163272 197652678 762982076 460229352 766850143 90238971 632038340 395835757 889624143 389645550 483418264 107604116 764968980 334661328 950124355 22609947 713723248 135662704 622797376 323119334 998363468 262498757 991106428 515327678 834306914 619348754 890537773 493527656 663341101 399475816 412310594 687837182 812939771 687027778 761600437 588727006 727419910 263061941 348312006 339102512 538871417 316388033 954450186 306607983 601011497 288842140 541854195 806230548 817800828 988777061 997614736 842899131 927106422 747187409 908620632 773414771 906498253 364796471 979705865 719531458 872794196 467695519 688423360 395394765 609106581 489463972 926058646 933478049 987712838 679918843 730085641 929177766 963917733 700042710 973757456 97713884 581994306 160101527 934399623 757587017 765193517 166403689 340012731 564465827 943847667 749352234 982213584 144935016 379704305 486237346 687269960 687736423 731371551 501154118 716944086 470603342 686314056 401908296 609889457 453399565 548010169 176467286 210756711 92296641 257458472 409671849 765104692 301176045 764600832 390914859 670085754 885962884 976198404 28985151 282732798 804779485 886483213 988753815 994138332 309622400 467700425 875103208 996976238 709004477 905633222 805295190 902831422 628993134 807709256 67877091 297198615 743485035 753702623 970468044 976408704 399411226 716030964 852241436 883106106 709643012 774396308 957068640 980207035 994573720 994739749 270520626 880725516 512196870 602389180 247886190 346079422 527237726 674305049 327759800 427913917 723529660 870039705 918952012 989366273 307590849 375218450 838861634 852190095 731957616 807228217 916410558 926625732 96970158 719286971 941911746 985095656 503163364 958266025 762368323 780112755 781602662 834942572 237614793 982178863 84769753 714195436 128039497 410225257 15198822 621443161 36631790 448425272 593791807 706291420 437517178 811882543 114855562 151673148 631486792 685100527 441616700 524750253 801750559 890436252 615176011 912025247 870379524 897194020 352818753 899126358 169734888 829660027 602570346 603733178 936845465 979472534 133390339 803025004 912771142 949179658 798928018 987016646 646859326 982520588 400312273 542838390 983027981 992869834 782584781 904462541 275857011 769252371 314687656 530446849 464258703 595738008 498220181 775057702 826735547 881818941 821901428 931605130 397379930 530616237 506594783 550024397 470447764 540083101 96142009 307946547 668031166 777572393 904916724 976900838 93443051 285675009 998407693 999235212 163281074 535347444 303709810 661333203 798466976 935712632 927689595 978356330 918298096 992809393 846566996 888805044 244848351 895675917 100753992 410959723 72196080 380738812 207771514 958571429 367014905 921503022 256414034 971727793 635504032 692418613 123042175 126653516 488846402 528532145 230187868 324528002 711950948 883027605 14481907 370380839 607082621 952100157 688156768 820731884 746922281 758386576 336481196 437605523 641750619 837817300 527131095 834031614 591042308 946098285 339789588 882680312 485095763 887656193 396752813 600709930 817827014 884976482 820037332 830814750 16361223 879866562 882535465 981074658 637340570 787767019 673613856 784352698 408117385 708730208 743010715 866473119 584917133 666253753 841732005 900933642 138204281 796433888 981638319 995470485 998167142 998349406 37076837 797578818 946029087 952681386 362275723 753047857 474896775 975656214 913390308 996989261 265836252 820431288 197216440 292739542 422757642 757320576 303561430 388182320 987094895 989958565 690765639 766183400 260694401 675815616 244327728 523080624 499864237 854013263 463846783 829619137 687889529 968463525 400887630 593391578 255713979 951400599 942974375 944223350 104414536 727538160 201161850 485645223 76425089 709377516 333106479 782819648 481955077 857348937 368824703 874308612 458507471 740447160 453256438 702212591 746793964 933892536 694981405 914859164 318128258 856446675 376887441 714738282 278513694 856532238 507135987 995612872 800035904 891330449 87873803 397800407 937130476 982011230 62678116 583593921 172617306 476004131 413737302 911866256 206330858 285866029 581009277 938335747 895720313 970766976 682262176 708714901 7868729 56871248 441579964 651131257 147902820 287821690 612474007 886859164 846840072 855346296 758043283 970028364 250753434 954338891 309052010 454012377 74661668 571239433 545045103 915047497 129220248 139062503 143194822 660165523 460743340 979569764 314502427 633564016 288191178 524713848 361647611 778922495 222410144 982940455 27127436 132372003 705407868 855353597 858831972 924416363 851092786 950770668 317829329 427525990 621768702 995172270 638038442 852212409 951057722 958519062 302866159 773925364 608782309 814473459 860259914 874923762 140752992 253406114 654771911 884189827 519870614 580163872 167973670 187664882 65682760 535041445 648935794 758127422 220841167 622814095 230958301 581443831 787727995 995319837 429193995 500496876 738294957 888894451 800646634 904533108 608141051 643936154 874097428 923560104 59235177 642915951 297953595 657135258 334041446 750005256 698705142 839195745 982667045 991960818 882880357 930968045 147063717 985398887 375935734 976404339 346023913 861259211 10019090 888676754 597791240 733468181 43362528 869714348 871218763 968609801 973559462 983604700 963285553 980985457 665768239 730866198 980632577 996026090 323425076 443537333 957076119 972867478 108718913 543054722 43294191 864925434 643508077 906332091 877867594 889369971 539509303 658436573 825654170 865418447 303226255 924775702 955847347 988077692 532589561 784514251 141597725 453088446 835929374 976133091 611749294 884261809 904101415 947252371 62027053 142550592 389385715 801701762 23942548 151299366 970311189 995727226 65420888 813251774 522143697 992225000 278493271 677421867 7868071 884711273 11564387 440155258 48709714 785381101 593685012 789525865 147105043 273402515 417258330 871082844 861942054 952873404 244386727 973103634 205115963 795819009 503971694 774362570 611691895 852621613 283273994 827823335 701616893 767783481 875086449 917362761 708537711 983496874 398288535 913176735 102748725 352131183 305603640 356272398 743494043 804304054 403427858 592280489 881963363 987368844 328923032 474924706 388454953 975889657 205155836 604662177 119297329 663739867 213123775 320848934 908147734 911631693 782605580 801014527 837863799 942898072 945495110 961435987 91291389 803437509 962224987 970171919 306802196 564370736 220164363 417687389 624101429 789003940 666290467 876469876 351678817 857934609 990924845 993220734 80102006 582810725 722111217 947253853 190252304 648163787 802532590 986315419 106554215 680400093 504992783 627123974 237610794 280052633 9429546 284540313 716779468 821428730 866858872 877943624 789326178 991292863 62394339 899538281 361318133 522588950 27278856 238122656 574310403 681943013 804048924 968353928 340537010 928597937 463601769 576930083 542549724 582752783 102175813 635485115 635981869 659406143 994560643 997765810 857279611 925394345 753147797 988658059 559445631 713918431 830443783 928913603 546498409 608432471 624016557 748693022 44808050 892599226 422944106 544786520 109556250 133595886 351099805 468960036 455374178 575641383 524749006 566575341 889130363 915509152 22986175 539231568 531179942 725082828 69827926 404715284 905601388 951327377 422375118 517159677 593359560 705101248 510169724 775160230 477856983 587504844 124166347 700399599 934612296 989476148 465708948 642797437 16926653 899519094 910482947 916406652 913973144 923372827 981989554 993860284 406774501 942254905 713136628 788523105 791978657 999364160 182938385 913582835 138205524 754747065 13484586 345050271 681473756 998894951 823159076 843057897 309395614 953378248 690123313 697237004 974311739 975775296 290491101 970529758 261142134 502837473 508856719 606610223 7378783 305219239 385152127 636561002 785724579 837554250 100306670 453058313 156736911 987410898 545868836 575444720 765716691 910070200 180307225 486174137 840342107 927952878 773016024 919429539 25070527 697053993 928444457 964565213 919097163 988956041 841823286 921381628 79534554 332481536 90579204 928093284 437729618 760915686 968186895 973837769 932774814 996813096 634197597 790509700 12851396 966264133 158851987 889236254 600198374 904026104 978402166 995028899 166461981 801612595 209687896 555667387 89504390 160032886 495502967 559342680 761531216 880972448 192840140 788976338 723222405 809618111 450420151 967392072 958535975 990771773 922601092 964892751 851296421 920899535 684233353 886189103 241886395 464854401 305761243 868609731 622112396 643371755 365344363 707459205 273408606 284857795 980679717 991521611 872131877 930740530 663439536 974766191 782578324 878420420 317818162 936605294 180863353 383588136 862565832 914930705 974942401 977458852 543986984 635385326 909939187 985936685 408255889 832381255 651406594 998420643 151161445 996154265 48878392 326271276 989564330 991323859 526760765 529553135 143134479 756848012 36291213 545196331 273249677 960681640 67265912 284994760 179837207 198732886 682538144 827701073 985922619 987937311 231146517 329144992 648675693 931049712 113120702 972650683 989654267 992547311 856194678 900196262 218739638 311161977 631548267 652477356 235025070 277271374 491283316 859344772 469887085 588696890 363356520 537776649 787017688 958331768 941781981 970387533 908290408 928269718 750475502 841557718 609315171 857123497 30870006 697009405 323053 666176053 155607618 955287873 770064174 848817672 631136317 633855546 759431189 934462301 45142787 540064210 133970007 953083109 653480156 922440874 421735031 826174197 56957248 937317878 127913801 196688161 372690876 911514520 103735212 361629454 721240316 848030060 598088398 844850363 782542256 915513415 3555262 598923587 576870593 675921642 217138189 467258861 987116457 987644919 247735554 721969979 902788323 977079138 975461774 989928855 705203941 956178875 398184696 736368247 515015647 710987596 168486661 354394550 541801437 659998832 624474439 751685324 188900057 476464166 126388711 705348631 713954047 750442523 641345500 923277115 450919193 688851063 877716391 936524793 971937207 986010846 703146121 741514160 236499808 528734388 954494178 991449478 801498640 888472081 600490673 892772981 677840725 760465521 544116377 930975037 171352383 536187207 12818644 392156930 875490529 912229548 677094710 751726392 528167299 608852539 65144041 453149548 840051461 905447101 968515714 987710928 37746285 438860266 49652800 623456068 797945972 798443564 731648262 855925808 23823507 908522586 888343836 925182975 396246892 719243230 843646972 910089166 1383609 806539252 700660219 791409219 47582568 627433183 600704193 887697711 172399557 669257665 535517151 717608022 539103374 581471676 893930411 907793382 541787937 635362419 218339172 709922648 569726056 616755422 372337323 608344735 226146539 838477095 638824786 954034260 439462201 890643145 471241308 600525491 878516455 975551995 230342212 778103603 453884645 540482902 350678193 525939430 394464001 859093534 920130241 982347208 388527533 736166446 94513467 782972709 974479755 979918477 410959004 867443825 275361648 410837631 139679702 515871069 183586889 876049633 911897226 944007738 832806979 984439114 129678406 709528119 546050434 708415703 129077963 236421967 790575261 837363094 235853354 397433358 422772887 834318783 179654328 978515669 626967881 743991048 515041100 690497382 3913933 339248383 567345300 966724386 93340109 136370928 641573199 746608455 928255134 932571427 228289157 828231982 814362722 960964082 376725600 796937960 33166273 657866488 696555713 932832816 747167280 973129438 74723970 289978213 251255885 319280456 618150033 803761736 925614815 928749555 241163599 984338782 745974628 894867148 872431332 889800339 186897430 274894409 201249279 228876346 224921990 406716069 533917060 849140633 946525367 963387477 725949710 989733802 306029839 313825158 195259317 861133244 756823452 961421776 975248529 997499603 534366087 574158078 533744582 807517571 346120566 888200526 691477680 873970480 914588539 926936910 29048209 663202537 151781397 730275005 384238361 861554417 806828351 961426984 787753402 899419451 665080340 769179192 837090554 916474140 366713648 710961891 803410004 817937878 779543501 804524706 352975892 835372182 194965120 365605085 869920439 973480287 879284636 960792513 706065880 770009036 905882190 990627040 374213363 649355181 993724279 995334648 15150693 610967874 616234440 784164536 258551418 703189609 153850153 862668901 218961820 998843963 938952072 969733653 998265236 998273834 175337463 796802098 584479365 780064523 80205993 997695680 524079599 608391277 723195570 781115107 525351616 854974402 330005456 636593160 265125520 372706172 947902757 952594838 385250940 604343249 631692705 726684835 39904416 328548455 709682506 994401117 81435589 395315050 354475037 712054292 308700556 529525177 275236983 934683935 724737329 737879260 307559092 402455963 584994355 587800476 556247524 582802004 764540632 867916748 445432618 579115689 118264695 262791726 501787892 964815312 421357064 722928732 339454818 369183249 901299421 934321270 958765552 990275566 733919727 814676112 896844842 939795574 305523590 891226671 539951877 930769003 616690265 739089167 984311948 987883230 817717366 824497137 345985242 381899551 497946066 561252041 808900331 821456724 608087420 944595363 181200934 427961102 514908415 959413167 901042759 929721330 239740354 905777681 207160368 357014260 165785810 490593271 30252099 567240169 903485165 996720364 487209497 707857940 498733061 734791423 118296462 269278038 191783061 764724022 6833951 583475409 758219454 766940128 1520633 433622970 13466927 750762965 864723432 883668285 521454967 927605383 831261692 943460460 632694140 730122354 520200829 699618079 698567360 804792489 803954619 997845084 203319554 864008846 275440758 820375834 269674829 742411511 874414508 984270234 109471774 361131176 588063617 889752203 731594666 791618751 559611899 609736485 391347849 806143259 982290444 982569703 37232079 83140138 311969334 641877844 477533133 614046441 249871242 939206753 377287965 811288778 281279394 449313921 811422126 927042599 255187729 403216417 146988729 399266678 413529282 457639119 204583558 593116698 394312367 804071417 487847358 909271299 864758437 993029257 981655628 985591367 97391223 385126297 697161768 741933215 87890011 259159888 393411083 860284980 935811497 946173821 49102640 173702025 676600028 959559851 523658740 615110572 840947217 880321986 578991049 961729268 552902471 961212338 87487407 475770419 130735683 801792659 522533794 711437770 445329411 628516700 103448999 120844028 524573153 921448781 249357955 443642170 437387201 658993495 97786241 250723090 530222957 614135455 770963400 962492273 526848528 969989173 974614462 979846336 355014363 737017187 885662437 948865413 430031367 610237886 757743122 944369984 683104369 700069088 47841210 333020846 36824416 544385089 25397470 135038933 502839852 678589183 746967789 971294931 625534473 769984425 227416511 407861027 95624023 425924532 78351788 971072888 932010787 958861867 587402201 593420474 658184904 763048541 325434238 858171551 916404093 951896136 577778752 769857603 281059414 560085633 767800984 905340251 906947488 985137279 400303362 413985891 52914029 710978768 474314781 637804255 268721130 314964613 4776235 249865195 301073220 670286392 629763865 755679586 217241202 916786673 457636404 875284901 794162344 976937373 936655887 982957809 559752701 794867987 128061331 753337665 196188493 946905745 125850142 371122918 235238432 384814927 929253318 929957685 115339074 456512886 40019601 786494179 655166841 804343787 836999011 995788942 266325271 393240122 778393262 849151455 46441781 816544494 860973674 978404180 495174301 889134294 151370079 313515885 291304758 461778111 491728378 998979115 623166541 800566472 364410833 592089718 512054736 714980600 785227396 886980266 873585934 901483043 206396114 913167305 60617149 379967615 218795928 245993984 621263697 726375952 867884771 952079447 991729059 997045308 509066431 763815526 573455144 961449084 570275822 696785194 701369924 815365885 402315226 974532111 178002932 364678547 189203567 970800548 676522685 858990051 751149842 991018937 317233080 961726042 519484403 872958016 396040621 635846360 321065167 526112588 647133943 666045190 982511357 998023032 722399915 881888493 979397867 990412866 607892120 894790592 355461889 724006262 736920581 987612565 565049116 944219157 676923406 677664885 75273273 415767428 111279601 508991760 958674102 974404671 656524089 669036443 950294715 972933158 485642619 531841410 465923617 549261183 98706462 721715221 90107205 630769591 611193969 969332185 951755368 990096708 316416994 657682385 884216038 948046673 245954775 656592096 933295310 953872066 62244801 798590241 974887329 984051065 450757525 489392039 302761144 486057366 742286177 801517476 955449370 967600073 803464785 910422584 901572897 964438114 248965837 783611559 475196078 547656511 917934902 983355451 322694688 335644116 697056927 894070924 332109234 369565479 452784099 556622193 247558836 266816943 412076433 434228358 919828146 930888824 579418747 581557978 959072893 965400382 876355651 915386889 886524116 983219907 373732695 433209532 241750661 904045202 728564771 775319397 625939600 818434837 336899496 750864749 558909460 729865562 386680502 474958716 4821506 529047328 733715369 946625936 531849129 839674924 572706161 593258381 41986012 691981397 89617776 446857090 639637364 969398249 227177785 250213327 931392413 934675707 946858123 966082494 173289462 615433646 880711137 958383960 147155553 632525562 999015485 999325306 19825381 171464118 387032000 576599155 667898082 960190634 106246958 998607972 921742807 987159398 278511967 538813170 675458163 677663725 386587925 444987029 882526702 917910626 636150449 646373039 569809123 888810061 571158370 902482981 924348015 933132340 6942537 357852291 964486569 979601372 207567816 598839552 950897810 983643841 691346773 943394975 521598735 789392454 359027685 586496162 208482828 892695883 267219123 577356143 761859927 825740328 863069105 994952472 423723356 517166185 293772803 344606874 123402256 773309649 430617085 708507323 553067514 728908986 672021476 894029853 465148848 989457122 134615256 908007268 679815969 702576740 826194992 898437227 233328007 425207846 620545999 954636385 872689051 906182491 596016195 632634997 681183912 730477718 394663209 974749574 332781229 911398714 284410333 421540980 308521802 472455718 438304300 901269825 858204773 939487078 550955776 709868006 162448782 700535748 749801167 909073560 900799755 909637146 32502697 107745628 389426324 390326001 547648156 784336488 357290676 940111276 407658133 574913820 364893585 883557238 934445937 965280708 578902447 829038006 829362934 915991495 513638672 830839322 992653801 996984801 347788011 555313572 462823878 830850886 412824742 925160109 400923852 962997984 43423545 309171720 729250004 822701337 577445269 627832540 794534603 872612441 976472037 978121041 225770685 446548544 354923464 659031019 201150046 937278893 686912275 827507865 277552673 583478754 287381758 826340583 118827946 611305484 118184672 553559443 772202466 851496673 426870761 995235695 148183753 166246013 296412606 717320357 620435628 977984574 692258843 757545782 632473807 972064116 756889807 889457738 597019134 893183258 719545006 938811763 219434641 849968434 734261703 788496618 350047774 865918730 778292598 807872802 502728704 519926018 250566720 972642498 76144568 204181221 182076091 546303849 848862161 877575494 694046016 751196591 599407257 745206826 752424325 837042827 609177446 634647138 675901549 737247633 476312642 504333500 18633895 790146222 324607974 446730228 755947726 835646730 566917817 897697918 487495592 566478595 24038621 569856142 265560264 567208119 275948746 971405886 574457176 709491917 455829266 846079545 40440837 672339817 817521731 939205720 732035368 938638180 648702427 969717495 193906254 838092546 154728894 867604901 545225399 821007532 438137572 640007339 148717331 201702487 825961071 928983137 151919225 319171588 43081937 548158405 620369591 894901390 764873278 856470034 951251107 998941051 636419615 759394002 566995542 749593563 903419721 926737939 819150594 887084054 223856833 947095711 408218516 655544547 163933290 273463947 413049354 582176002 171725176 923111439 235372153 617884919 234853569 646021093 486338221 541164386 152571818 823523194 351923220 754018395 900073340 986762374 473298783 880704384 509395292 753227654 129189128 494911912 171576216 936747857 552293862 647831977 241555880 344640004 52706036 209482081 626172605 953469116 771577641 918510512 923505734 956462161 127074352 421197023 960070533 963619614 172560111 828489762 725817241 923350720 864110252 902961046 645764363 874565555 29765548 554504173 66982166 375668329 184653037 671181040 450023514 631803237 339365477 386213404 13327597 231666370 820506209 892894908 796712263 852893831 423504110 510958425 398627990 905797429 395527607 442916633 928392766 981386586 715726615 990432381 465226428 524848924 893284745 966955394 448878493 931028338 851721383 875179034 442470033 451521409 312478002 918342209 502462461 942780369 961394480 997678740 761380092 940739305 347990425 571130029 208906776 996777085 894653753 960796285 586907341 924842488 437753755 866617957 196911612 401654219 248100431 438154118 960101095 982932472 156120918 254861041 213065064 793261803 847782764 968043459 537668667 880768137 445148476 788578027 921354567 936443924 276340552 682837785 397996273 491779581 284908442 596716729 856251229 957980618 162244764 570089328 180516957 606519007 740268364 794912218 863768788 946766613 562643253 630571384 116785459 508152160 703489796 986915562 749892532 775344061 665850853 694928807 954737666 991291532 18421730 355271064 960259257 973241339 720579406 847294299 96375068 507925622 861400673 967570239 266417594 845430430 583925386 904587466 148462546 662382693 468641777 991231731 773092479 833254508 353215198 645474913 783110470 905518194 252960494 567296479 850672699 944817742 69382015 198699813 277014681 778895381 830064169 923332177 148801867 641472618 623680783 987363939 382085940 820167806 392351554 605468555 678908163 814013639 96683837 467018391 609581776 785001170 763216555 834337243 646219000 893318229 849694578 859528068 938141151 954076530 200860847 448671587 206909066 485549825 666472291 939893517 366038347 825889234 674553153 915397513 350375368 503832232 985885821 991919012 502233140 767529833 53557498 544968541 314960705 573928745 800943667 823463836 997182705 999112171 108698052 250948358 956825642 992895102 341169558 806404391 889379608 970632805 849950470 864189224 865527917 972283535 448008009 900037661 642095405 644950266 949820923 980862466 797011492 961253455 42562874 727615043 676485859 719286563 313340911 667129411 424038510 703043473 176992261 742738826 985905036 997867628 411098109 770228995 381917483 739664430 437577549 652725219 289359783 946678159 230521959 907294678 139470825 709006609 105284601 778409076 246094178 327300421 633849221 778868765 146053250 604714605 233134642 242714319 609052547 978082057 757540740 821081382 268166316 301868495 551478999 961413403 546816584 993938606 578081711 691465704 349803856 672154129 496014321 638633385 231402580 938778719 694992215 832670432 781241123 794343931 703812771 923021060 251198672 422574958 30018408 524993269 289851987 341514237 623497391 644019039 98123333 148974302 183338365 592126890 889296715 890212547 26537039 596623864 378850173 738345357 690592001 935726479 895133821 934439642 15500784 287914078 632273179 754199956 885125521 905551685 479711272 618225373 811330698 998951470 635061954 879236501 649120805 807134482 421167954 577085498 553150967 614758939 523131212 864561070 784464879 898270887 49801298 507842917 765371270 856289112 112672347 424856781 146639762 625243139 807273535 934635256 884117629 978975295 428651849 933326119 698706327 779406259 549275538 903070904 767743935 986143273 614478312 693164889 820612469 903248761 403422723 796212064 753159199 863268244 596105029 731285665 868491658 928199831 871962225 935273450 206948013 901828435 596936139 769170908 235176297 312331498 813243520 863294207 93134571 949697854 817385827 858912322 348186642 971873240 31194803 75435227 302916874 436529742 230074723 803594361 797205594 963712341 850667901 985049058 477095879 497645089 713176368 902518247 177463379 869986196 215917366 989981282 418335870 976079943 299888365 429475790 273533524 889073765 464093867 587876555 729590867 812435777 882585997 921097044 560603226 570777193 736712040 943388081 452644751 840204147 131726194 240893843 291648090 584460222 619525714 996088475 274722903 570171357 164023215 561621649 727269102 826590873 223442703 773989786 992797400 993662140 993426180 997705210 146767081 972052580 107055300 779875612 557609819 976123675 229894845 622672931 838002209 945280062 878681689 886447903 16266938 293691400 848391950 951159824 439491720 907912285 629609428 896292575 506454601 723864181 553506605 875144842 148802366 748669133 753531992 917002328 848807894 998197987 549645650 696652298 445480865 760787445 597039168 850975128 861064806 877361698 601648103 788755549 933544382 960211770 811872180 868703089 683223381 752118183 981290503 997358921 573418442 762615812 507054461 543972185 69514853 248784643 967161950 990934386 245760545 758172926 572627317 979999101 173368414 213507409 881887594 922021052 142124328 292302890 51892078 546941368 546702942 867042684 94921845 947701518 516736406 826437417 669942569 786069907 265450016 350863121 327238434 689266282 767109925 782647124 451348701 562912443 943849370 994326448 210837194 546815035 955828511 956946057 670059187 955944729 943276663 946589674 31230118 512048469 94283957 652656977 710167354 967143574 454346686 670058992 890547925 998573688 971888432 973092375 61262027 461798140 191803161 287216877 214395112 525512532 393871402 931164169 980131433 997709279 187442596 363071880 460417075 570746067 290509182 964985570 670450310 928459170 179190518 548372622 523309163 755828123 483443618 990330001 551492668 624968084 2172527 596900167 801833892 842247851 1273370 179770431 141171531 382101802 250213945 276686834 158521243 728950205 841142130 861547183 802406380 996787157 632656853 977492575 626501268 713131593 431120709 828932606 610003471 754621399 473861176 930074860 949320800 954966292 575536080 840348321 946112315 991102801 916311197 935749361 242515117 272289318 966901629 972253509 509444067 927195874 694910697 765554763 821866927 831611743 452273649 514851476 575235321 627494699 186704042 347668423 708043461 908663052 836148500 978363555 118553166 848086635 398616500 544124328 517093234 948149315 546639866 862031848 955128965 976559661 213209936 905502054 316602135 734243264 476899003 814544209 576090062 774851225 225029464 712123044 260835865 471152199 574577355 922916129 208097744 331353891 311372847 728083473 656876582 888462542 259812302 789100667 6654112 687692678 994584704 998282399 311196907 380278813 53950003 519856938 636403730 679164845 81244139 125043688 856395161 921408313 693786418 852756987 670756408 700070343 13634232 800355427 580190469 627596929 849579925 998174582 551023760 900808815 261582432 305880419 909102826 966640812 885752354 936624764 459506820 794739986 980048299 994042344 870494647 953976404 255280670 346640823 853040385 981819115 633063522 744531411 615706345 661343685 622708142 768009978 665142763 671440285 480727492 702445248 962222266 966796512 785157371 929252506 611862179 968999243 939452297 989906166 485206658 734578300 145967107 439487889 12362359 345379630 848432816 969241573 273719877 940500700 193643343 797107678 8349008 729055734 905307570 976084380 132573179 482912413 256816478 278824665 315474805 504356689 358003240 690702491 824508914 848603208 591474213 756480370 311434596 918670542 623308959 769663891 469807671 507821617 679799191 764358079 494509216 640137376 993915923 996744834 248474530 770565367 495219395 611019926 848915244 987032929 394164522 735172016 91309572 417243546 602005319 639055476 679277388 923482244 94866330 712701485 893305724 967933081 704220092 767725745 730535907 812569959 951803153 962456066 696131605 996236721 224962614 439696365 959991153 970110585 227225437 504427169 129890541 202015766 123564298 288903533 287530732 993733707 260105011 920618146 310173989 387675194 834885560 880918665 762684488 807485699 120305739 837640417 986780166 993728130 738736893 878285647 100445489 429291065 48087690 437114600 134430631 364218491 746521546 888856594 220789005 373646715 120105627 242661531 70858867 362230472 36963760 182133293 336922844 503936892 779908817 961672219 940039509 971003222 158566808 258024527 622001320 679323559 682771588 952601465 563389684 976071748 339442971 895500630 460214721 811893637 958596175 992852086 550295948 905143719 384165063 436787127 414774593 638101793 707683671 816379807 600805702 690063782 394244835 973978003 677143877 749327782 435026566 935170506 100325406 410005331 181833705 867898300 259883993 954281740 292981639 743977059 313074802 522127553 75295819 145286887 178905103 647915620 232191218 835385446 244524643 511069473 769641181 879622509 290345205 321340570 383698849 729313632 247581628 458516693 754806206 975346053 583382856 985727743 842960770 993888615 587628755 791927507 962436988 983671290 622244270 763387708 748372591 753815172 317799741 809504055 370200326 621350875 777948174 869948210 309486191 523428561 654624391 759466299 134962374 328661170 915755260 932440196 160732541 849313784 654053849 815579925 416406499 678969667 339809945 696222126 769995392 898018384 279199434 646907536 933298319 952234344 140795986 320606520 494155527 878227617 548729144 758627781 113299549 854288884 749944653 962199490 944598133 983355380 467566892 617614902 407910672 806591976 511119298 678036241 233416644 993140138 646895420 708955702 980492309 993314117 115411278 490733404 35152856 503594948 961286063 987988689 520354377 833077484 380153689 774809449 647505210 890942969 242654350 511783631 856618488 964497501 558605671 836963045 920058457 986158335 25073515 76006173 803464044 984298119 614921938 942527160 76509436 218640750 690604590 845733320 895168560 912006041 878525555 981992653 487713781 930688124 981099507 981816909 613359884 768047463 30689110 826474680 847583558 894170419 442943556 798764505 736606871 940366440 72945503 775571326 535805625 980968155 98118744 466871412 395802054 777298233 20706258 70161869 157664620 679780977 933412036 971475967 453057858 768630411 103052787 988316928 38102265 289412307 933768476 961256709 271063100 577354540 971778452 986209182 183915503 908333426 36419840 566811351 136310865 479959984 141536106 507411180 184706088 909612714 933183611 973229645 923475539 938837545 127246662 332478564 201175238 310986466 114226610 469388884 772909606 975606176 226073231 577873429 456727335 897649036 948704383 995247669 335640085 895521122 569743278 676307888 762250288 925580096 300603707 701718280 568448644 585770262 547670838 604304758 248219964 432444728 400041272 934178177 968914689 990742181 709098745 987998252 599680515 648119797 367899106 545513964 468831173 785058014 251751717 332327589 981756879 991507337 779300335 954695237 696664750 834950539 921686547 990718242 433671362 752603136 332747213 345230581 789408078 965875284 488120244 774176956 265289532 447661721 537939650 740550928 296269709 787565688 321014182 643914607 105182126 959051622 320539155 556185202 912636246 966523231 260955003 648665642 971982176 976945537 467685151 813517657 315275951 837262535 524550424 583721543 1226899 555264643 863888281 924372245 746498432 824650220 362550307 400168340 991521791 996582832 981749272 986408035 170908064 348131918 207680012 505843623 302172859 527258417 498437411 787570445 644914203 907463459 352824611 586894757 775497286 949479583 239453790 774633663 218860306 466097565 687427400 995221371 434068256 454557948 347885369 874866444 945530607 979376439 766049518 832164489 102635814 979287021 300274765 548691059 979578135 989568524 2577639 149567182 241144924 753923001 752056825 811357345 640892174 900192359 58103706 146149072 746732433 866738923 730131315 883256164 19188294 282558244 340294003 482456030 477180714 742889351 633620987 998272489 838026899 844801544 704548739 885914894 508648785 941160345 606264644 672803430 467992918 874498716 988791450 993892650 754831770 772770492 828673091 919094953 70129295 469650505 626066654 950140521 188661726 220756599 786438451 898368321 364870644 862190939 85080736 868551881 378939613 617283869 962899958 976645819 111074123 832499295 317167099 567799714 154242757 941497989 220744246 829379947 534677105 641161323 880694676 908011359 896605614 944331766 815637395 928158303 569349406 617315917 993061408 993580572 914548447 969341646 826560245 956937238 465274617 522893359 504448317 930102474 286872338 991236219 143125652 841717080 752113579 841163069 611228718 880363171 986559722 991162349 350212901 799195044 381019650 631466113 400877041 617140793 673489522 954264043 784882401 886841714 356578284 498380332 304974948 851761552 976041931 992079851 169643818 871003628 292894864 825014522 650053113 818400982 242850559 547733782 615488677 734160676 454778821 927815297 383822012 990739904 472977469 986131620 102493034 670233307 306724975 896013067 986938180 988225748 338489437 463221885 702676332 818897814 943184217 978725996 970684249 995397595 225751950 226891597 514911138 628932451 681771606 813660417 229916807 637741337 813247277 854983777 593130912 624882272 301583283 636974723 725075328 867380314 623714694 729246220 917732660 973960216 609506291 938573383 740782363 785302755 308408082 553797542 240662652 520770429 328311539 423747249 654779787 809124256 288358462 940138981 270893390 840885279 669568144 876732749 277899630 860963520 936750355 986477378 50274987 727248928 388595261 486972429 437262252 692854046 637149821 856992359 845637434 944812175 882284484 960454868 339791020 994420776 734607351 905172151 790493446 798397210 134841509 481834810 470025704 474701515 312125325 753538127 751251211 969554700 941051850 979613419 484444051 600274763 449214213 827661507 26852542 390909402 329965310 780802850 247027757 993743451 299158453 460085305 743819381 924490069 437609842 830244782 795629165 893465486 417877434 805922862 511184321 848266432 893218005 974580999 901267070 990421531 691272085 818824322 584515654 965715574 863069368 968744693 601279904 714691678 70128750 611265296 331551425 811108821 859446848 873774402 854667058 913070233 440652652 672277299 607965216 778748937 975092049 994094517 605807803 927682427 236049213 681878620 311545055 955550140 556608497 798439251 311046848 464823043 584951834 639332867 610980147 983105671 867362707 906720056 445110242 646057581 520263691 924910796 937297639 974524547 140027283 842846914 830957306 857507363 107096096 408961416 477739020 750445591 582298613 840752551 960419967 972126989 320753604 517852173 284967737 337518794 79979609 812841344 208208891 998565616 19352011 231318134 430279974 500347547 958170050 997929896 963882644 967955092 81484693 81662222 133702406 854430997 197923302 605382245 260198509 576455383 230048312 428407164 469854088 920743749 891430307 975359392 235258736 637817212 317202032 873327518 571029177 965690693 312346555 667711083 866306208 874913133 969788027 998022336 394901281 723404304 978836037 998209728 509886052 938229865 68200042 226341846 61443569 573791327 574370231 659470890 323017934 455374615 8772997 578687848 955956597 974221096 604673805 685792588 720719086 754722946 939771824 942722628 746886092 944285225 304988702 615350701 555539360 854271896 293416219 467337908 796401924 936221043 639722308 930368297 418842803 660804964 722238557 728601906 283080666 563567570 958951543 988425672 88490722 609280362 680924530 967985724 503390054 932004772 74279739 585438105 275003776 741674396 213331886 224597191 111542207 686061038 473701452 880234859 202256558 448384786 586279593 886197939 146894961 644363902 591006081 875428662 27954119 981558243 173873686 522264513 17450694 798346864 442635125 474810577 842521856 992542926 514158074 663216121 399195952 982553302 818054410 889672847 31631599 962688146 822344944 889754432 115067323 278613897 502880879 697952895 362870931 813337589 2163779 478934303 492223519 674919256 104113104 318905892 859651677 861684894 927596588 965622975 704034177 775076516 766703710 876026299 840867942 894587738 781583077 788080716 997065641 999259826 935138335 959964241 137624248 606740301 648883208 910789567 239892270 289554116 310694108 843601009 516282442 603812869 167336059 295501781 979248003 998968792 857540997 920286472 191090952 881546775 798303413 848616124 371284280 583846193 496635633 865322247 447325456 465004718 440474847 565289700 420306387 814349655 102846964 335282794 606567858 677875381 576105234 805810242 890765999 978354768 282831822 911223665 50039487 774268584 900323861 901092178 42051198 801522753 921105807 988943533 675648288 765800067 188703854 493071638 293654436 512802815 851901756 873710183 225045861 639813732 668719332 890903348 593902680 935999961 827753344 898146269 613009556 865919516 280226552 511582876 678877584 808939880 908772746 922691331 750567261 977960888 189132945 967235207 269737764 459797959 836963581 896623837 301613917 945038562 43608160 98543932 343781923 348962056 873757573 899418360 596801714 787185899 342312253 748082842 460588474 835366250 883836701 892891363 547337920 739653887 707189370 854721978 764769940 980466231 749467470 880684430 919872863 963175549 80793398 659005130 491023808 519151575 130390427 420201681 392980925 756685754 949600270 978752067 455077838 918848341 821997921 928243529 973313693 985732654 142526164 741255093 987028782 989795039 444897829 580452452 320252991 401205958 285406037 417365465 657405479 808109508 705877203 776189185 940758631 945494039 583011455 747663649 236836114 972618966 360442693 417935009 284842880 604901497 931369008 950987865 802302118 975604948 821784266 944120233 819004485 905199372 646571733 890665971 20576370 419691155 694810551 952212492 13903418 305474284 937478251 993037342 77367389 936347539 389075038 846982666 614684590 759225162 51653022 807725648 383273989 883216987 99607148 676399816 652734612 921137012 504888294 509236257 579754666 947929795 336020174 864958309 309937695 320968783 196216464 925598672 896477954 988526637 937756728 945917207 888719383 982913275 870474806 888634558 484167171 827506369 277833707 801507450 969319602 970024598 878944238 911188381 681123816 714674389 820049360 900555803 413167852 594023944 675998140 866473018 83544917 776115420 926643483 953441833 186393768 199102415 895800607 945025937 796914661 973778264 183483209 462485010 313796463 761101008 263576380 696477931 365156115 579600619 929586091 993053791 785943939 832619760 640800257 987343468 983316966 985203810 694326473 903434096 950273878 955272824 92042718 956088424 805726177 855740152 930107216 975570212 101975268 275574980 232291250 778465794 491477009 660178571 488126557 491686540 718239200 992696414 654607600 757044169 306016221 730572669 306903546 597572997 535401624 673631261 27171754 810165944 877877850 984728007 696775601 720397833 932465152 970419036 99180296 929007542 714364694 852307511 384401756 830788760 405140015 872194930 220327702 259558083 535031243 726848205 574322826 671938055 308735394 678118541 910750225 926077472 2489453 309959541 71662495 789500371 845512844 977873077 703241346 806428800 11407341 608395428 333353727 531705546 445318424 681586573 63502814 551025010 634374676 935546544 584148429 907550806 39602880 209111780 664068725 767912062 136781923 580620925 834907264 844970309 558611484 862658116 957921519 974992438 130092170 985261332 124457265 727731167 96287455 512886567 809935367 971161465 160426848 806766575 863045511 992271746 193840697 454577005 51781251 552127316 324556248 802594133 504559043 714100764 891294587 915974780 269662354 854177746 83755796 128907540 182088821 313514154 900282952 924277479 230466621 751570445 246848521 461388054 190456696 897652792 462268590 871138898 15096409 668728772 939925311 973049751 225985378 696944458 875233718 934868429 847301995 868423533 385331278 546794115 140902098 884696562 983355840 995507947 420919640 805397845 328229172 824643653 323472164 738406649 743678684 972443996 411668061 448655307 33891765 896883938 545165252 907857906 536999543 600506341 696986104 698477461 429384123 887015873 711379783 774720127 320763960 520330866 327759567 784031060 717792851 846722716 675502539 845973040 841816033 986815757 477166827 898932277 448331590 686320966 736807671 879512345 440686499 890129950 705462664 759068449 399718053 522473183 843620992 911172920 89800294 496750428 964859306 971746509 181276918 549091558 755030652 831075133 14248813 848918210 760175566 978234331 5518252 395511743 626796033 743749618 675629817 680883629 387046588 650617536 726328164 995966086 43971522 838891673 848372668 976093441 289495118 622458633 295812460 962907069 787525193 997078596 69159598 949346930 684397280 893335090 714854267 793335820 200317901 558908278 310562603 590937858 354093778 390710303 382524048 570854854 699314741 857911847 644445071 957329400 449450766 518574454 19896531 68549464 896536230 946923830 149993705 158173589 568259270 921026212 258906144 590885952 386489122 759222984 753033683 901339609 510498325 810198964 799409462 804914438 912860084 956449815 401488592 667843293 536035793 797583383 114650774 719343629 247083719 782836221 37532369 970845866 619304248 766186047 991060171 998170492 346221303 514729099 451526316 963907771 680722192 935132447 693466010 695692691 927344838 934079453 799254332 865732233 513317453 704840510 26566195 441413103 50585886 352247670 565654163 910513347 126817295 987567151 586074448 708725425 731714874 961434131 770355973 881696406 996911164 998536414 242682957 995111998 648925610 754293978 299363240 894676943 969066553 994378670 63780903 845314008 44372722 814932076 276789048 409368054 448636498 556604093 988295401 994550380 747937530 877728029 55141502 687658949 388287646 786452016 155893677 689291709 135217958 162679440 583350922 872765494 66897299 109587313 523584692 942209264 936751748 984676578 430018585 506927710 72545733 537089311 688574981 970563112 108227635 620827299 499603116 702760475 182900209 557558068 581983284 950224277 809046386 896181226 29769757 763629224 164262962 308416611 259842207 875304892 522668565 780202343 4847020 957160732 410135489 850944307 967838696 974486473 615340177 909395760 959186560 966864492 818328265 862103896 279755897 857526337 28679573 997482907 273176136 855561079 384656145 895984154 566640652 631330925 450021877 736791658 703276990 854810430 340428373 689480959 151796641 172359246 233777552 890384510 629429241 698135013 665934838 713034110 430873204 981540295 859553526 905758585 695302419 981786773 888080233 993407368 980736042 986071045 924192623 996422821 933356804 965682865 594696420 652542046 218344909 716968904 141219187 642124092 870244333 909917483 580328808 981067884 298813281 703116748 170055059 370197250 233138732 288729496 621867633 699036432 372461622 374340794 567332973 757167400 145529532 576264832 199929361 535281531 856152320 881207556 411917294 594727910 216533768 397133199 731425202 953965346 499693702 815134833 618218163 700305862 400290765 875393086 30033218 449607434 445318602 567287967 125627857 128217812 395000828 642448291 456480735 948308265 218887498 769689638 154038747 569897861 560819236 909432030 802353263 937919842 74371574 546555083 255115724 594437618 834367150 878731937 874734155 889738600 599382912 872860088 291580074 818937511 216723112 228386495 219759354 779593586 923982945 998298228 481877113 663529358 792187569 859722308 848311014 931864591 687407893 765266863 223003187 701543424 704750055 736388006 170837458 760714872 344867520 469478677 756551210 799409391 610911142 960343575 483148703 996686774 182046887 611829957 721054617 795186500 2566017 402763617 936308960 982252016 479916734 724844617 827997530 990993591 321861777 509187656 423907048 530494881 677322898 764226100 351129374 372805117 252923385 667103342 463940800 612934420 721615919 914257436 81125606 846376401 107634101 250094778 894698495 930378815 739089831 969813419 133372448 657553475 541783183 904845185 267597969 573629950 811142849 910836314 716502242 972571120 296845127 883004838 128014197 832269328 700487928 777965328 301865298 934031239 584708390 812014712 334664693 378054299 674836669 916658916 822696710 926782223 666839937 683933546 644452667 900866719 608496893 871342859 936814244 997677545 66470414 794001368 986411494 999217356 876811134 978598011 776412451 848616398 219130959 312640859 514324842 815829166 20054305 745996527 391527907 762114381 956128082 996724020 960325392 964572385 288082757 761696298 803225601 965882519 507854108 650997322 657949220 960689661 580195404 977648312 580543632 891519294 612995491 761967826 889545684 899225849 591371279 913936761 966287953 980797374 437214451 903088040 212336836 969024375 396018220 765723910 896905695 945611746 239163996 333073827 748653680 840620602 869504369 874973470 670200550 827945446 898125928 928011839 270032819 641285239 46892150 280543128 794770280 969686692 277266352 996276515 528520759 854033033 402826492 925619305 955000625 964026603 596163447 877926336 610459464 656325663 221285202 452150145 57096907 794618299 855591904 981864116 810127346 825394287 808719268 839608446 139596872 678923044 261716797 341710280 872394266 982866108 557532435 996558634 797656676 967949053 480078657 865972085 143461248 350031298 868516323 914845682 802041309 819540322 728160348 752989264 583987692 754148054 372621048 528620901 485989058 607797878 538152620 745319380 524613499 616816502 377462320 911287234 692214385 814835056 219586837 845959169 578147348 653708018 959721797 979319579 284495338 557489506 774014222 845589553 301327069 979597050 120007077 490440004 399726369 724152635 442906850 470043397 241621661 807510210 807240541 943860081 61626921 415340020 522984717 693435162 815725773 887205372 537393709 668052382 398946616 478738859 274461128 804625463 795271035 821857303 884818476 900917494 834149236 840758069 693562669 698631282 166161686 803007689 925890858 932303186 89192753 598439334 52534717 492144408 650072357 905444025 367410668 967774156 44156847 116222387 639245269 760579777 153665380 294979455 810010521 957217796 428708454 684307136 382581658 830756728 306130906 965978473 677017552 787255612 710359524 895485137 218458084 386194356 766531043 951940993 205656675 401842265 226103229 794833403 218824952 688782009 156177446 550151781 298866454 325765041 440674388 953789722 655906029 740286979 267786103 409334710 967169421 968414948 972426613 981874243 726948402 807880882 373185539 711527046 124425389 199392158 98564342 342203759 375827295 977051262 900773369 900837865 608983360 744217214 938127768 948538402 118690145 615799461 329975843 944883414 672978775 875103841 757602779 778780793 195700913 260279568 774957568 912932609 452458530 620602608 877758211 918180359 594585534 795934429 990595880 992353118 697663417 840125939 133926037 149870328 334423636 368386690 345169284 631033591 584947620 736217824 653096239 842837288 874000781 974318007 825575634 829894536 629949357 903824372 158555919 461618758 168300213 608273397 245939738 468590454 19473226 481376039 121908267 649473844 836281491 984545474 509836320 597266326 281623163 388032198 928785751 973470763 491676688 751706486 309973515 648167887 3216338 14544999 54245654 968545266 265391258 794247800 897026873 953062741 780389246 847898637 719833348 778117367 996069096 999051290 660246583 841914302 496884814 643143081 404067185 782864418 188445341 659320535 8016217 867360644 713473257 837518289 879730730 922789753 559125624 996781680 71826933 511244184 217171811 967163477 626725063 852908061 331321550 427728730 705712586 833254544 370740149 580041390 914106476 944268011 738551527 986151180 463522491 590855377 677906043 835909133 64229380 708771902 503561746 656360875 800580333 987895614 317898825 869103471 254786760 322536825 174626402 358549207 903683991 972933553 929221879 967950540 812995019 975282386 385087897 842993661 442964569 515678554 194980854 757493243 715659324 991194713 653447794 796153106 486659967 876251504 863465004 864317069 701105155 925162002 706991147 917472453 869782998 939095264 267480230 891094538 668895462 777100298 169134599 893520302 531967742 744167194 307604124 819985369 481069679 857526361 734759153 752243661 68832587 353307468 968701413 995922843 620464598 979321832 860192213 965749788 483727386 732487186 451102705 610662565 790851306 887911439 172837489 234639322 142782309 422664970 119329912 715134530 745469253 799030150 864448662 998623352 539403102 982532719 186800647 902149556 350383210 503074505 852874301 920549034 572928887 937078817 486272986 959257234 639902344 783642919 762625441 806530285 593612364 904268342 335971706 401831656 331934660 579339898 150973478 988861267 774817174 820857787 276607478 855116621 710946077 836070315 194559670 524225320 939087343 978841425 986766144 993114964 14425056 166912266 314298791 982194371 712510291 741778883 223433766 580419311 226461868 709716366 739860839 916252938 949520768 998231211 303437632 958926822 448005560 527689586 829115811 980033404 24752851 966124102 473273052 497901281 25590077 197849241 603615896 871588666 108501024 766430671 365615860 638367934 25378338 599342386 277254159 718088175 729252606 908550732 517006158 667179705 100353441 509763307 510597773 982341959 112547059 540119348 807872659 981787416 307994263 628970141 744144466 790948239 558515879 981907907 237266649 276402549 54944824 352874663 876150918 994965916 987714996 998854471 636887512 647483105 593011275 768133379 287797326 879399495 953820466 981535637 698670831 855677126 103729061 513479598 95335007 320700406 36704474 944640651 395901701 612046552 765338592 985454799 437656966 763969589 559684032 923188689 355854181 461213805 729623435 900193865 275580518 642033234 780110393 933036737 668461931 911618051 560717987 751595113 487467290 879425133 77000517 668774911 968012446 982780993 754246490 980560311 681806775 805840726 74147224 389432977 655867495 976081526 341004842 616325398 679266176 910382094 293722509 856778611 881674089 895706460 676728455 741051818 481474489 827742213 434948494 736276648 853034127 874249082 332909940 697537582 770047316 837694673 371330797 876543400 22882117 809132870 760584613 815256152 148586492 537895870 261331288 539092294 575824282 712631249 43546866 671837627 552070429 943034806 909476568 980650948 2785743 136479775 749834981 928965054 539205897 794048103 444080105 744377317 844060978 920866999 191821465 540202121 985368000 993100507 164362648 210821800 167763686 433627136 875822838 895634113 412311471 803506378 332751165 496700945 934539547 986943993 781606468 927084434 119357942 914645827 686291108 693569864 964300478 974361588 854023206 872971378 719193474 967716567 91022739 323147526 855203761 941248289 290292694 712441457 401781820 412745382 576404445 658579525 453570343 773648342 506384551 898685975 559390773 776452527 899330811 977415196 587925802 591855818 619372839 943491728 196342509 875115761 198154822 441233034 718221352 903333972 835880573 967713440 175167913 237937511 319298528 775412057 362683269 634637927 368835616 829296891 406843982 832043578 3788455 927489720 680956074 714240758 235543913 272709665 883206806 883480856 295826831 666742100 367056556 824129675 646664096 660291417 479619431 669280807 501576002 946811806 252439233 507711930 989498277 997750935 241810566 721125362 479535407 638547228 975122704 982029817 212708985 919532168 494143087 596531215 273749187 912187586 799173575 981594884 872595854 965527193 146486147 836072381 896301444 910123121 406973961 602191608 699855049 964150309 418311377 737263858 199387129 764610448 275826843 310823977 957640584 981470422 160105048 851045253 626130033 745615765 418795435 493778902 243359003 870630802 784562155 881392490 210052270 568207413 2433808 243724935 781383878 974456678 982340378 985537150 970626222 995569902 453766164 527409863 261548161 662037009 696700862 960422034 151800508 811481990 45209582 898224311 111389508 522576045 280275789 695519314 520371227 827362891 551010511 686823772 238192471 749800719 528005520 879785492 862132511 873915371 959178168 973494651 327632850 509062154 416805191 942229230 196648273 656321935 537100242 627511452 445163174 767821202 466996892 599705069 265693444 911656059 216196283 728121712 230192582 434304901 138232712 254436173 743778247 822333874 245100688 926900205 438984641 978064579 768253451 807013128 528950092 984820034 883311660 969434727 98609159 748789605 835997554 920559330 448306565 868881521 34757252 611527742 814570591 946867731 91983422 673921295 539652271 623005088 835584119 994392675 718109063 818136452 415965451 840120512 468972463 967755195 462972084 818986848 129419677 446917310 332495587 598078515 236593713 382579597 302164644 608196750 321029165 382019108 235906732 291582252 555258247 614237131 60564942 383570126 209926596 994504069 636952312 952522757 71121938 690777620 500828718 692989542 530875107 998662993 428515944 461788244 425878455 968560502 102146284 958083754 531671636 848696874 543560721 628710242 628788739 868790659 992101418 992155680 377790661 636718474 22600912 748694015 931584805 988793658 154283997 471313454 219630979 799973531 851449279 935914223 875840165 902806937 927286902 994421824 989435212 991736013 470971888 698564111 743688409 778268356 803549425 836185689 563150009 784229157 575181222 722391299 957707733 989983004 745561593 831033798 477388032 751913622 502318498 514947476 865968241 988988894 49547990 296777884 497900630 560230871 551466017 803852225 288308763 939346907 771923424 772546685 769317420 914770704 320968534 810739757 240995992 483783434 709900821 940701462 607892851 709959704 496422280 698419150 554728310 746670526 1060293 190066197 999061953 999240548 110257938 907771587 988743916 993766695 571288056 853507050 177554337 907048013 332917804 866226883 424932925 879460531 152128697 485483217 796668728 988044084 574140432 798688861 463401311 875043706 585521150 891381635 631562202 689588177 337408591 779562732 846830801 947288005 102487994 207110308 531283024 760844648 891770048 934623997 225537425 299489338 354138216 779522019 378580863 649948612 7011289 491570510 141905680 734542419 515194007 958385300 92974376 530967622 694374037 978115194 662018946 719108720 252403983 418130640 89611541 702105084 673630153 861670461 880007480 956000222 493717148 873152981 219638692 533335177 386240103 446739595 671792116 808901815 132597631 140785102 940021847 948382363 493648799 633951808 548529223 674324453 559339922 862754826 819356735 821588151 258950815 656516636 330632300 624418982 500895267 774703312 768161638 882266851 686085499 714399631 590966402 893647628 264127392 818365643 943589738 986320313 866128846 913601862 342326264 832741814 280090890 706110204 827228609 871032841 665587264 878865355 624823390 926299364 614358611 671638259 487972045 732856986 851009086 875017821 103421534 622629543 94504914 253467929 83317977 868112729 218638486 963405159 514741217 724461417 15239991 763384904 388954245 961360161 373019771 641933203 243211990 889861790 296623408 402701541 514106778 704834335 735883505 846184983 481406426 757880160 710910956 939157255 678610909 960217246 6622888 652416021 19726473 855003470 509143402 970436017 184657220 317332517 225052123 563614677 524312037 642918220 472773191 753002970 196653015 467002834 730685448 787651892 737721647 938084297 925023277 925872229 621651227 802948390 844693833 947159896 776087990 944657879 680943957 921259730 904449 842815351 853391598 937749134 22654047 879301468 755527560 771546961 620859062 779596944 350033872 420559299 146969751 982454501 399440618 645349266 713435061 846638287 133663466 485087803 36797137 312828770 415033847 572739360 330318823 422675428 201252272 247327976 652377472 665854073 454014277 807515813 591431973 765166058 147051538 239736323 178164773 537484977 423675176 888032564 271020516 582301475 921680328 955893059 369264644 466743773 806925840 899300012 314033257 410077547 268627746 549829586 907644224 990926281 411921687 784956386 431159554 512338556 777532503 834516272 598431462 657465464 391760838 462344207 713195475 971353741 109150862 392292076 767502172 851601225 920167400 944173997 780663889 832735604 106609491 275931618 490677635 684280911 803142762 975737277 276715369 511106710 405363033 871447861 59909984 865909066 389312407 547474556 858468222 865834412 487402140 628222743 302821715 440818498 741059077 992402066 752309344 756716750 695915248 786849377 832014509 919375870 505190869 668542117 880820558 996618030 573159267 603909153 673356649 847065558 8656507 557065451 20590033 344626846 383611232 488921891 679050187 987109651 127459355 934181435 280170304 852479435 269103713 764650053 940098115 977011329 202359323 644584600 28648036 244387543 619451119 956093074 134590162 702727487 805923553 856842090 369923351 860308188 839258422 850729874 46990014 400602057 655395017 983942854 459666427 696062603 124794052 600017407 688594381 784903809 348564135 596600448 435663020 966052928 278347988 486303241 304041324 636217226 313776825 767904236 617253916 854276366 372513707 971159015 240033166 312485563 678566997 795556262 453978082 801522874 401799729 670335565 883803543 967637679 925717165 996278473 512698095 857948265 911285096 936816043 118785822 298337732 829746909 977310945 551200404 737993043 469716500 475139356 828503270 849642175 902909231 988347824 630607365 765394381 662748154 941053240 88715966 134190082 331391202 803018357 230442805 450676115 311659856 614741911 797280811 825602237 677648307 696976504 247893618 566562630 359878783 639027914 757806977 893156979 135478856 461209883 550896605 928335705 184567992 670006719 657183535 874554028 785227719 996170767 378039164 484347047 590672314 704670439 418295503 983419821 44274607 457995612 290334962 423903033 373735356 412177182 313788682 394994133 565517741 809620358 578629298 856074768 845690739 873356985 233395852 669012401 139673176 899798690 917994638 953356953 390919609 756015203 585046121 639994575 689432046 961220610 432877808 830612040 64145413 951183227 15613201 881838348 729393434 952009781 120442668 964243125 788629434 979030759 833753516 879007008 846639009 963329688 246071222 848065037 592535031 792510780 594746567 992377046 46617071 705328046 131875208 195188545 240667287 533170871 880886681 914824887 740595805 995729701 476314479 994466628 191756168 657041128 977730864 980858735 935285482 962043927 698243897 997945249 814175859 833704561 493499960 682983105 260689318 576687959 554368964 915662093 63074406 143399953 402010476 594883556 398612632 985837221 86643893 539498363 982023987 995532453 510229143 679149256 201672827 634638025 136577727 961837399 279556237 952483819 522842151 822072863 657651876 937304704 917891842 969009381 216955481 718092193 822917134 911073705 135799826 862187702 952277396 979580836 110658803 201652961 45878959 212179630 631612139 885990936 268978857 761974548 62413322 226342122 750474833 893323325 807918937 848029259 997682486 998341166 722174572 915804407 329715670 853190332 99628627 997696257 43506643 227965536 520951346 523830330 240195175 753888087 441686773 862225814 965570943 967722598 478155131 825529578 641156768 691812920 875097996 889473598 208501012 600495582 917325705 934258370 325517972 422375520 666109120 939055621 44892518 235867048 360514987 419559097 342140706 686720323 941297175 976004284 59467922 416413120 144081426 691920606 797424863 846766866 485464606 670655912 689169604 976067639 258145029 469192715 450113800 478958073 732419611 958936716 789578778 852328978 282587294 861825501 418069099 720578984 378801333 497434050 119922990 491411994 144457245 232897215 504480815 735249386 616282170 728479307 347506276 792568549 259921837 270222877 342278714 970522403 639974548 749676692 192756016 275363791 998542511 998609559 622259195 810786682 991872476 991892311 792438334 830818333 613153611 662968263 139913899 948866361 719507898 826521198 986556087 997771030 773612301 878108920 709250520 983405299 908004645 962581975 868044420 973447346 5824692 682132094 304952342 351006941 348786365 850502934 509100922 672949308 819611009 918427594 224834180 745448620 149926122 788470297 720786227 740671101 658017901 981126155 538050560 584506780 860511258 945350592 81743117 593829500 460400559 689154294 179709441 760234265 720456436 825981755 75143790 195537262 692061987 969363662 111173491 847457834 766508084 773218308 883186810 961358165 199529362 636998239 714075332 895627709 47186726 142005221 995628020 997183744 514391475 590084839 181245136 682059059 907805368 968868443 829971266 852398396 776165006 975636741 251671083 936039307 626188586 884164924 24806798 763443814 71224718 780624660 513834827 932584506 101692973 250419211 849688524 919929108 453241538 763318209 357430357 727940453 249937850 971565602 869438136 943962856 81935540 294358418 312564225 352772372 317256154 367625026 91887953 354328404 682077847 892793867 540255019 792346206 580991161 689295337 191476261 846827111 37990153 490637691 344652262 772439466 242629703 815030644 26285088 788877986 537676881 942115753 917578154 978614465 464292236 900362358 355314275 938469249 205569775 563187412 824732813 980386684 730672998 951201661 635170378 845848537 838638289 900075576 577454224 622259464 846887005 981845099 919475597 941462746 323603791 453564355 872145947 878747930 778044911 901842335 47659604 555033218 554288596 632898770 464659647 668052387 742662677 885861176 775947576 885854581 113103198 682919706 442733920 853178388 199215894 691004662 811468264 890044948 203738385 955891344 180959346 287148733 618141356 934954239 831457630 880349378 50361712 287116396 512968960 771214842 65470747 961430540 183332384 440578014 536583309 576670113 923932133 996171762 981508061 983107881 783072916 858363028 874877644 880993037 829936072 943885729 895085088 940395202 679769829 868345593 636565371 698551420 319480142 590970141 746999120 831765237 763027575 916084570 604503966 936695549 726773786 815106873 383059461 831277930 661055940 810435666 349378574 486942706 929723818 935221398 51988472 741212295 760887620 805226782 267897467 569159065 151266736 629005190 815880330 938354313 245951870 827051351 597778342 782506171 90904347 154832220 817334894 905313796 602810983 863560653 242040801 744706576 638196218 806114752 522178194 530155897 818139734 837906793 753609023 913598743 442754027 890420404 634714652 733395837 45209619 969438250 540753064 562346122 353828029 592844018 586097602 600266416 14532095 981265198 569507612 671775696 910328106 983923063 77934852 960581397 682633949 887761545 155176975 455231548 638428404 976977956 502257216 704550864 610853225 693703280 680933764 797332116 548003094 741266836 433566135 802547368 222374117 699129859 24211062 359200423 600045592 731565456 336267365 631872769 929205420 943037670 603830299 722604161 683103734 789880807 357560380 406977540 331845181 790181963 932638954 941032866 544236931 669227412 191841670 877867969 824118218 827963385 828438224 902604833 186107479 377595461 564006648 684472717 881513154 913186581 609357308 721120450 504798451 919808901 987244077 998399117 304797529 797289068 252097097 439230655 435700503 664865599 755290954 982599320 426840392 554245219 30285456 188165528 763971436 804323669 789386346 918194502 757734486 933779260 654740692 781322773 9958800 713198263 874420290 989824504 288894831 732137409 196273794 821620585 316517223 643121475 449162787 512134092 347111846 495991019 56704112 426681481 726878768 840653333 858006337 916873329 555494270 971835059 815236570 886091652 644742211 843429261 26570189 573802559 455921489 829164455 49929140 878791541 829747126 882106593 40892277 454398410 232413857 351977877 775333560 881875734 870944192 984847967 670191107 722291821 788599519 849217145 544710068 754767582 452931372 676798021 666156682 726985980 300627541 445846320 986523179 990398839 930603300 954633381 602925716 718302275 593332468 612611392 79751674 695794147 367556825 567843997 341044393 434971591 502044443 723754707 225576850 316005132 245845514 630818059 204968676 755515322 214925034 937188324 976200679 983124459 879667342 920034854 379145112 409803830 889212779 922407979 110754222 873877071 584630457 649908902 369936972 974872142 679073644 748414531 365580970 946685317 904217077 984929698 627183977 942115750 593657732 848607848 331506121 723948930 693090307 791797637 134756029 756199610 732800677 805468580 967436354 980651083 404936340 831175585 880665219 921867992 69429799 826033354 851414209 984749165 761619892 947249074 356041483 593650369 829255610 846079877 957749668 962779146 331853726 985056996 587870101 820559420 131933852 184084304 713475678 838943671 9092637 581122968 469289308 809152678 728369926 913507456 441569903 451913622 609821930 793739702 205611930 636660438 208446469 640559614 545767134 906391610 670344391 789661969 491410056 771403109 440234327 705119537 130163286 566348321 771339837 981425971 284507370 900066868 536304073 914390771 284841983 313243834 117586094 700718444 602516341 602877156 443823035 841554956 322699979 657887182 111081833 408258927 882340965 930500572 91183687 205533603 146936739 398290936 869991057 955206319 119080142 262616261 855285343 990153314 434393388 578511971 50756261 576029795 529129525 797528231 619708547 988487790 317032353 538768882 330407422 905834259 479488111 646153751 77184085 563896024 440252806 503063255 905366853 969067703 777572604 888717444 700765215 815213387 955553396 975037813 719179230 846030251 414478909 849903364 926957611 946417910 17145234 295625785 797344611 875557146 238608923 793775769 123223335 860141774 393380165 774128645 968349448 969923359 719093384 891817257 195927839 682769418 580545039 994106865 420299987 492593792 524462692 622964365 360787103 560587710 106566816 272377233 566563855 928650163 894521988 941195297 139234255 773889670 518617315 832275243 651122560 829333932 799032996 979178963 545011279 599348537 239054274 567546787 481076573 994332517 824351328 894361880 126105571 378758181 120265926 968402912 276464865 994667506 614279773 924434186 248666700 259917669 383207575 815573063 858811833 888148166 660537571 794988940 406648131 902675469 489551722 816339594 572628085 695964729 974715619 987717586 105187830 460378015 380219013 619869807 802035038 887620905 615789651 931202380 438097676 639159253 407890124 954379565 918650025 971243009 647216195 675401724 521895476 579328847 885066912 907849294 960950971 972667662 65738202 683539462 562443923 993841128 717924113 861921480 760074141 932401790 75547165 565429932 878991008 935063621 996446713 996947002 514020222 937822673 732303555 844512457 715431120 746766161 229135067 586227727 206879084 921076989 257636242 457224089 113704598 966094330 698299037 812358761 867413454 985693839 510926045 802634831 246288819 445947155 890087711 906773428 356381106 502375760 435765199 591075922 9758838 861968045 690625220 745528326 897872605 981830696 911466733 976514871 688470010 897411723 710874024 760555176 513954447 682039241 644939126 775216935 690850297 799631628 23315285 103837659 315492235 827432075 153501700 613916416 320104324 954786341 101855989 494388023 172992208 988620955 581352656 810612893 446180796 995920306 310028969 481532471 372518089 679484576 234336280 388961878 188354673 571191879 328038774 817972100 620604491 822356660 313235478 958376742 306897644 856757362 37941350 898225273 694585192 783031554 913191553 974074385 436329121 871635154 14377102 521407717 766675156 947559213 752732368 968428662 663153574 807974437 117887449 731477178 252294282 650444498 869752489 910209712 618189440 905559269 873438268 890665983 391797403 958800879 778239327 984959681 235602199 559533200 718783312 949377547 874632617 949102327 513304787 938670719 439992657 596167846 979654448 989244647 643060465 890046090 537501117 541488044 49820646 693249158 240830372 305929880 623393142 682123504 988736637 988935508 803544739 971662080 142489530 352135543 956081121 969598980 26170933 90033050 955720013 967681458 769899720 805844347 888743074 980319248 394880639 946704651 669882282 791791837 764729308 835936433 634265333 967756561 314461698 677644419 434213192 608541247 543722817 924772546 61663075 361938906 129304876 414591950 94941235 500457329 146659306 956378124 290202699 419841764 415881149 525120825 522203233 995750151 910416491 919169743 233805829 416674015 946449306 960729945 7360753 568063969 612892330 780643499 886104666 916624523 846080504 998761342 6458981 873620242 160061884 328797546 190329385 398921168 755936710 797982187 486266907 832295958 437876987 456151026 977176209 983079177 554212032 580809898 912149511 949533959 850832218 987994791 471921527 566686828 568561680 879294827 1858202 345067071 72898150 656415217 88072322 264397836 454428921 752654215 968441556 971976983 64324009 91133100 370515420 744006454 502785607 899105408 411516112 528372931 159340269 192358451 7902008 948927360 819703359 976353585 854154568 942908259 83677187 808768295 492503752 501975477 485460786 553841383 487198194 836926724 694083148 968129612 690327369 955591894 20121166 963236678 795472832 954212300 470461528 845707249 822772238 921842885 776931610 890124849 187438741 561043716 257738396 485518918 737736735 894475432 778021311 948664908 758136383 769717741 530151051 648636006 629840020 842044714 373309379 375008078 622361607 742359569 613011261 937897154 35642614 247075248 664226834 780084532 188750120 257966337 776799841 928756752 110876660 683289318 790068411 807658926 672415108 692809570 233330215 365081571 7663180 576486752 588122256 954390539 977973310 989345139 453239876 684822173 83752582 166364759 985748025 997248524 834904251 890497438 947261922 983700298 861916372 952528322 575956374 848805780 977274660 992550098 706872338 916355954 703175308 706936123 594430622 891119073 368763196 689578064 123803740 830377220 639793178 982250997 955433036 975821906 141267139 552588465 958912622 989316032 898198977 964231282 232868773 683212632 135318036 141635814 888222725 903153159 288323796 546388229 754555691 986035133 31894973 180788930 698131768 748877360 802704062 885948122 686153320 725303911 63180206 219682148 472350128 586605411 98852735 538466969 196543486 945454558 113735135 603329689 517615537 762746233 43066890 562361132 75529924 786536013 32318611 940010045 917509055 956235802 572349253 698139433 894331700 912687042 761483050 922708123 979642074 982849606 277893081 377107783 450332886 616143860 397718585 524209305 297569611 673051312 541806367 577199265 426809451 999169424 217604577 468508284 520478161 521462580 745464703 751264240 520087110 755148212 348299787 648640411 536690090 802289439 566561251 734230949 848975706 996630185 190060693 321548661 361258403 725598807 554740402 763164473 335699030 343124201 775655073 963417905 855597197 912899085 190688234 912681654 83016623 793392429 750685143 962871846 889898939 971717293 615105932 785132032 846110581 929488289 280458229 445648286 864323487 904962254 532790628 933258961 551613675 710426337 694324303 716651746 200808237 823991262 393475272 556476655 245493352 753751542 317387603 742749020 602126054 789632262 855017801 954320446 940237265 987129815 689405663 766781545 68277607 942262327 743987315 895847920 82553766 802860584 593338126 671372594 179991096 690919118 630856427 729469679 996880412 997004199 834576050 868467362 664640562 881909761 618630949 715828008 755085872 880442253 296281484 392846909 366615298 385994433 464127138 957732284 781279257 929690906 360291080 774460174 949569770 966905301 360021162 632792630 265474221 710197800 79159321 119979271 705844012 988247494 780382847 931407442 54928005 227109663 328894263 611550873 261179483 733744518 316037361 806824877 909987257 937741654 952471078 995603177 419330357 932297516 166880089 648161743 259472671 786932105 457614009 697181654 437362045 666353616 154863475 912306029 647911809 750695592 599998922 643546691 826589476 840745523 837092059 873942124 769461558 927593977 654052662 740304648 710833830 821283879 858671067 938833432 913459700 952739655 134008896 383414457 358657602 856186529 301766167 443335342 647136393 654580481 570691576 795790048 378609594 926427890 961564118 966377822 887007353 997284677 858377867 910509999 131849672 292670943 723952144 971725621 856117864 953957151 961504614 969298702 167794249 688769542 986605985 996732271 491192513 858193626 326979302 334961346 652163848 793089056 481016327 907591126 687671954 817256857 973689750 994356128 342768176 479835339 920998119 996079310 547164448 640063846 927338207 954240194 927863445 944196258 900179811 906233763 639551199 905711320 161720474 928557008 279033146 696652580 806902888 990706371 420539550 909759134 555629522 776426478 797291683 822233882 180919618 697011957 272356399 520691789 124323901 255505309 635881959 881081678 748157476 882379057 97820084 704823694 119169317 262858046 38380118 396217234 168458451 422799978 584056912 957682022 590008275 767189080 206618409 405916440 315711405 661457338 125551151 863400739 122648213 595239023 473169507 730716632 506361983 593031441 635840269 944374711 113121719 282875778 48891778 408609871 959397361 996807548 135553493 693380952 846832250 868682357 846710130 945801079 753628889 942159927 966059204 997657246 453538325 463732054 42337811 498212925 473204462 753692298 89344936 575846211 421385136 863474326 384787109 778397112 735732017 827818307 320652898 562573977 258266326 730586995 347831121 811100557 271344392 388710692 673988354 686952907 236135813 404636169 498990232 826811064 532937653 608736135 292995240 405763983 388849991 585868599 344568464 427916830 470527002 929546185 945393548 984648590 466816953 994621017 176136562 694081025 966292571 995080915 371446624 784392954 328531955 556482681 134800850 475513488 585144125 622665943 382981607 444120047 711072448 945888650 199276351 573505688 264200841 304426176 24773954 635855002 344675671 462453839 427299010 668890574 812668003 867634909 857879428 860033103 277288260 870068126 634972315 928126568 313122906 741891834 922662776 966325855 908370147 958546477 912072075 926330307 830093265 910598154 788087237 881053255 119692768 667475633 714450027 881460505 660002958 801655736 57164079 315429578 55861994 103495988 746734930 894501560 710863380 968399300 318165236 616236520 27415159 716611316 450672036 998150285 206112134 759170929 942363540 988327771 336727065 773130237 189317626 247134870 807379910 984928216 362629014 971312846 147937901 818590912 348749168 468806517 395185531 571962210 849933951 947217057 823875502 996236885 525910197 616439135 848561305 938860075 694423937 715325745 457044642 934132239 431242620 866277320 345107649 807233347 2648950 239125143 54888872 92984797 574772035 668710796 1384126 805645536 104535809 720143038 71696467 857818620 466164137 498216231 571524051 705904525 242234515 376074281 918877202 973742449 379535432 934862993 633300354 717292194 926954995 946190184 799185351 998068787 657902885 792580009 414455946 620546085 226603842 716165866 389303153 952005073 492671477 791245676 322700114 444521908 665700976 694983223 393546143 637018474 527673052 902593557 709246085 728530364 920890451 974218029 590580377 799750733 892267684 964974424 27562850 888930758 133165571 537461180 290853583 602355315 218074737 498565045 717236045 717785490 33310282 893731727 796655276 977396942 410413438 766399216 184006999 625214559 431832021 666294317 2807248 481915493 905731459 970887516 944258031 987551411 187977041 578527560 692891967 875224633 6936791 799033486 353192859 771422486 586008004 672832420 93642889 356691599 520039837 554025351 297263778 455045919 896409255 980544918 191910481 372121901 888546979 934853379 678542676 758453493 430627340 811028689 26545634 123790657 29381660 300676687 616764117 696864221 651751091 983412245 145822725 426575023 582620110 590734006 804890680 866067972 934785817 949520650 416841874 627368023 988852594 990744422 92848578 150403781 979086601 985040343 32877761 60833516 824188953 985166656 375049585 812652026 886302581 921785206 410917384 482989727 553832260 612605532 852431161 863358675 855649610 968584805 256861118 956924445 868560682 880741709 608593542 834919717 335239637 568185570 917263680 926499976 211517489 784570425 684697372 993916086 618282404 645984930 48118915 384371057 15952373 686503036 641601293 944931840 700229089 810527962 638888940 706475777 391091881 594119621 846398500 939428707 767609193 921395793 682656478 759725436 798379870 965042099 76824083 910453803 291861279 786875985 647191272 859630522 301738540 668192367 830960376 935054433 34441068 785762757 381351399 621689143 298841030 733109158 349230194 695971022 112373838 688808253 960625548 975724085 965694066 973451160 43740155 536533369 819745129 946447638 953227017 970995641 163616430 744885066 908136510 947039192 398929139 578944503 547230645 841712971 487652276 688740923 721965533 924989681 661642429 827525510 379671877 964569940 808099974 984875085 584119454 890327250 760711610 933773201 873712020 969356163 701527719 961775362 838835899 856006134 944411979 971845607 574035609 867195866 262894025 650927428 784142943 973923842 286305723 608252330 3584343 717595769 375946673 819791028 224174181 349664238 33780699 320704192 816141066 829063680 465966942 681671228 316550347 391285225 737363206 802258859 359299908 896740623 872715299 915210410 486032838 613616747 961713177 972197590 17262231 156419390 600229170 730422965 780141880 950945013 749979919 812946295 801656013 914266874 964160885 973412626 761045707 836266653 577692493 891950997 250194206 483007543 88279478 221766206 699216919 810856463 944936043 986914960 53487307 961721159 615647160 910225780 887891440 971412413 117737232 532037248 108472410 139725754 165377941 879901431 61931032 843986430 663035046 830864755 321057951 615491942 471583886 697448447 482448533 714482077 388724975 779632750 432215312 759673004 808637518 892319530 339110115 928678723 305558984 553454732 515959195 604169860 571486659 578240504 250993015 904459365 780344368 836873070 990160403 990547129 195758018 797273780 388145090 626695472 420149910 820829150 671009889 693141260 8517984 517132633 570624512 906233416 260992632 313714128 524803749 832462472 224739444 692042705 427926761 671647869 300646236 447044854 399881196 998637249 299223404 572599006 233486730 410742294 733244549 747560024 189222435 521098904 239232244 249023777 849128123 877011599 11417808 162372993 528658994 651590256 447980599 732229355 720762596 995310447 674591496 853090039 990677822 991900388 871212412 914368356 968226601 968361302 972988206 989881906 868593877 905415941 717934732 889384473 834809160 837305492 789596850 906847979 305994482 395364273 346809072 775840379 617411262 963222517 860217886 946211111 69295067 651692297 922266899 940426125 878520798 905311158 581224811 990571131 643749968 934289721 851255718 886351684 504602452 825896741 294144699 635760171 532289537 542840748 565612800 615892493 830866436 861921635 775341302 960934198 143248720 936767092 41654754 57816775 868320694 915365281 379061581 733619042 539989978 972028140 271317669 825571234 447576786 945539103 743310310 906262566 207178794 367645273 557451607 668196428 54108996 787221532 948809692 980217472 991908774 994103844 637198585 822798481 882494928 908543635 389693460 567189042 353938446 902203485 275634397 672395858 635070204 734906314 32640635 212027600 765234831 918993368 524047424 777221940 76916872 366387907 235244593 315587517 859386279 907998798 211749532 777459158 501401679 777100954 269133594 687961800 840964752 881906088 836724887 883434197 700522994 964608494 468236257 904887277 401130145 698538646 337694128 659852426 205075195 389531913 401493429 637175899 30789014 637007334 522195253 711402831 660337079 962532557 482662341 628437641 801484827 891938461 615153476 628743361 442168263 540727689 345197237 943921596 230913597 806399013 547656999 793691148 226400406 660095560 889243392 903489554 313650206 665707782 410175747 657325855 855330405 880562636 227953896 551253567 546978343 600541991 11641778 856842187 100131293 515778419 768791635 977771081 207012697 765467459 557089059 827588990 181566994 402220813 952355479 991260443 120313557 142200351 386232840 445140580 888991766 933531406 294672161 735327365 627517134 703736912 188878615 299762685 382167184 587333842 994169877 998348009 198752168 219870028 490361468 659704951 896455708 982032267 453836984 979554109 855479075 979386919 861375866 965383351 495700136 880690589 298606818 972514960 215553588 542378661 763361615 833583406 20544060 64561729 839408054 925023689 208571026 307274585 236519961 755667512 317397655 560581261 755955939 948939418 813230640 858924558 167382555 698592291 647296726 987593358 178386803 225559585 586062228 738146262 530188075 737787522 523793047 862030847 775129179 967487331 391127254 658281660 230205114 932957434 387905632 907660591 379209155 383178712 402373508 812141747 542099418 674336296 869879875 882866098 153225561 844075157 994360200 998991062 128126825 566625237 98670227 793348880 88117297 131183944 872656108 882764434 295161884 335057410 143141676 917036448 1118402 136827865 269328632 572013728 827754997 876163374 886414134 907168650 275787484 362707927 249429731 844223232 105365174 424360842 694204220 738080960 911659561 977790283 143038967 890092410 619996941 954053479 461559701 905411181 740901289 872360100 85208890 220782136 426377996 692268025 792516726 851830045 407689833 524703787 204739102 730295774 219688548 372616989 676531353 719063335 635604727 894191092 219427150 851998173 251672052 285271908 698320081 991128265 808709502 985788310 646478005 823326242 621428462 979266787 953664666 973480834 545828367 571017024 225208842 531074652 814135707 884249067 962711301 970287790 202651684 518345761 539779691 797155253 112428686 637962264 575943902 686954229 762306090 960788103 535819969 783994491 553037146 660083943 440159264 979061915 709892937 989423362 301983101 872717869 641647564 655375785 470979069 884638958 184460906 468839595 413702419 517471154 175710251 665812763 739204901 763778015 990149835 996706348 469833493 943418494 832976059 967566974 752568325 803188603 847377813 870586422 492995464 580390141 74895955 891918608 602840524 986629819 851151756 947239334 176120309 430033448 700725825 779417174 990773741 993846838 865173683 880711441 881490018 991342461 7582296 970359915 987173141 994205076 288589619 350100704 231671075 903712276 18900598 884448854 542239340 773682549 821953400 946613553 92529212 947135641 789403780 815904238 190639174 906449091 111270560 113811096 381921206 469317387 452398286 919602782 804750215 985322274 344047483 618557576 907966508 908505936 127452707 532689836 337105745 387346714 684484419 961782652 657446911 866281043 157043026 733378462 568186929 635310571 269954198 606630636 664518685 847322946 97819165 891902759 477376383 727235761 749765453 808797090 797038525 948765088 205319321 487622216 494974779 805753048 548214204 772486786 440788052 578814044 192791023 296142402 620741834 843280169 440065340 950322130 820192787 876852836 749874956 881461259 352804956 841765067 46979591 168152031 109306987 264809606 532996068 594653382 382837391 772113537 134153907 200699981 492793147 714534308 624669487 825464105 582834174 975497587 383657036 429116934 387722058 941486479 377865319 867522264 439918161 704780765 331010440 643607037 149256166 402179861 740565749 771175133 9948797 820971375 202323836 598360262 230553607 586634211 43379202 774650085 813213414 927052404 784323198 796765844 937190988 992590394 546093971 704992307 960034947 962948311 40182093 187109211 953820284 993824035 442111533 852106625 124537478 861880718 34743240 586361044 176968984 311492437 275126015 485173905 206863603 540276232 714531273 961980627 925190388 964379371 341654023 357968697 592235295 694562333 652321408 849183012 642105086 861539118 250104647 476007551 641361066 727636157 566557624 722319530 876141568 982287806 798955745 930779638 857623563 880619674 920439421 997426692 957921796 976431503 575959624 807404540 259521753 316991572 561492288 653175316 901292426 912190095 820657736 999195881 66932757 853527939 293972641 723107443 178632100 823387913 587828452 950856951 914660705 924691618 978069397 986326040 385821662 572185604 377374023 647142768 480614050 946751542 818659766 899955517 986559976 992481241 777598045 925747317 779734377 988926798 570116959 579908457 827213396 865938295 524633926 828719004 562897363 719057319 167800853 554502518 20027124 489380286 175501222 561675357 13368579 846400248 64139836 482773518 225338919 563429814 204646811 379123008 653776043 699405077 351317541 394709685 948890377 990593188 267496383 683996219 736884720 887756004 469177571 617324407 318419527 957673009 309818440 348163522 911238121 926157205 907881852 981710124 327419843 578569177 93783897 542224166 855294884 877538885 79475277 515540385 323141785 833960876 42083947 637864164 979776378 999341402 679221982 876226042 787583218 818365458 243694522 501803219 772403710 933502252 851336144 955263820 935275865 979232075 314898622 597942072 549660009 938305069 632095973 950867368 173103764 405234740 614999061 807391931 870042873 964325354 16549670 136157909 61331755 240639565 202909313 572775551 132902788 168521233 585848343 597869896 529611508 827158156 124644889 567487560 725952226 936315299 20461037 254863996 619345606 676280082 972149616 983614552 130202419 612718900 736948344 964524325 10516844 388619406 976225199 984471112 962965194 979118962 104891785 121049474 888447774 990495009 168808204 232915631 108775397 849288679 60525274 136517438 643224585 987088079 608829307 723556895 521562565 625060452 840474852 915934457 125436751 471476769 77528843 969070222 783493763 859404647 118857213 461087893 655129101 665806969 507677512 613582822 708462594 730320250 427370335 611326998 831575658 859446219 60103738 173956421 831098872 935886709 346378068 805537205 5645911 182429778 817756283 919621981 67251141 205492462 893993338 925184698 135611431 479009687 725135478 859239166 13702892 89417806 504955259 722652842 165836588 353038578 939160492 950269834 493414795 780399610 870624845 923563544 558057812 976399726 801062519 970861921 626366427 634082455 184054720 772746180 754861826 783518760 257602385 702385000 260129752 379645432 709498680 741360263 133373965 933630063 376294804 472035162 37555195 695161299 851122168 912816500 363454217 625260975 955435330 985464260 266637230 801063487 908755536 970800963 659094937 665028344 766935945 856305006 529331208 721959181 41743515 510676995 176600537 709799143 857517911 941708645 795492694 848442448 291181690 690525014 620711311 933550681 64185013 927263538 17367741 369654277 793951650 875153848 766519196 832299487 144651059 149475260 585329625 929649409 814462674 980949074 198250184 774062030 61669999 444893179 787852848 876020282 352371124 928858554 694294050 917832645 750822142 844757918 231546513 783456633 419110816 711288258 921398503 957977725 192181647 194468126 360860565 583515158 485482698 941507682 429146971 611826283 355414912 804506597 782394958 887896160 767011948 818662370 263151782 336773032 299155605 683638404 93463981 617935216 618617373 680144478 526389628 945703274 224654767 840508698 907401672 929522727 634952111 983511803 240107285 986998507 277604225 403628150 777350848 874970160 63177282 251481055 840467172 922748723 679158661 901646546 42098392 459752092 19091742 24829169 741020684 937152491 610084172 692121801 964474535 984831150 837781405 842895968 115576694 634327704 569515769 876597657 336453231 877485315 453304265 961051521 399714198 826863561 453366481 751850133 726545534 802096687 947882743 973093033 154862935 687880179 101835207 216240628 857410513 864754320 970855476 994666357 309060038 417752606 172852827 260470085 15989552 564411398 164533774 186753333 608638593 862055880 297746452 701423826 313265499 622551461 665566916 806784733 596653183 935031452 645230114 791825098 424156862 656353603 335212285 445592243 62587223 494727747 524286030 988923077 954990054 964541685 340283262 484366727 277715504 895585185 940780017 960021662 431680051 641957146 269227149 694181762 425278533 770569170 811205484 947607854 852759635 960693379 520950459 775266918 291855977 855891875 163669853 984989845 366218697 804673817 39703064 907816148 565485902 813799451 922804143 941557091 526772923 771333478 326279933 710518079 649927636 910971813 635822355 879250403 8116984 579034202 739321918 975468690 737457479 978320717 857952552 915195696 114346175 678668364 847396198 910785718 912949250 913325461 295379814 484825154 277751897 668221655 863561158 922029867 34958973 953198750 483613811 835378134 558956477 837092735 829494475 917871335 679973385 847725069 517939079 533710020 960486798 988359800 302488552 511038895 837765530 860964077 697921622 745550182 257528176 877986971 406529344 624086267 499771040 918487133 852140358 876397516 4571184 724743864 81418794 283567844 436659981 619860590 414472910 468515030 648565439 839856727 750503646 882283012 976810494 987939484 573585968 860799260 100419253 683789411 459135471 701994458 186930574 195223903 215575438 279920299 977895353 985643996 214435649 307745061 202319505 843426678 661031120 683329557 668864555 826970978 369050543 709640142 339063147 654792325 978317588 997013133 623948917 715737381 617147636 893552668 688899411 849914339 187242866 521234102 641193800 938668758 321140228 780311828 507597346 767507404 345460161 711302040 758137080 925537196 214391482 665952856 87276647 857583178 857978723 932501457 563254728 569931496 954539553 964293563 319107227 951057529 69309086 725353466 589107461 661290964 500913324 762891645 745138357 992236726 372251708 530962324 925995500 969442181 650228338 931290153 976954473 992247128 532400526 890642148 81167038 673403273 415079297 420760904 548703005 745741720 667923706 850041104 73118573 596332874 985295690 991119503 155884976 769081793 547080705 804208670 830443892 933728528 317182497 505864311 510628988 903716372 612420961 878553650 363554822 526234606 803762802 886122528 615698259 878671089 323523367 407648033 578699211 828797056 874334492 983764759 673907409 908001399 884485761 927531908 370494486 803192578 74901618 514574189 835477296 863950433 994045693 995827420 310900688 800854519 866585521 982104205 549826698 812257084 931728043 965627748 943443038 946187976 421500116 831522432 845789849 901083200 351601099 702774941 645773092 997094916 576529687 663198339 394471051 797769945 178869171 862942471 607682000 774029818 669830193 782990797 162824566 444472141 793244169 997737624 392278832 470121032 501376563 900979417 242011216 986419154 587766347 862676157 640486908 919995810 946453614 975957160 815642528 824060051 140181430 545225657 669929121 676048598 317373423 488268725 600215955 969540976 340143390 912453581 882036942 953532309 186315250 279615425 453721047 835433052 773363478 863214394 878878403 931551530 362152124 742265791 718270503 811012618 480672563 928172420 439193206 711678961 83940713 580279815 182439137 186092423 792083890 999295517 435566114 449370110 46297743 740329748 31896088 243382684 262882422 889638473 586657051 860625705 709708913 829344081 640317813 712955023 563259922 744716142 378019272 764371372 295038114 670776111 468151687 892966975 272492469 488761280 315253463 821642219 952654085 994711410 65149209 876521834 773194990 924544228 771985965 947424491 606052020 787337070 521124572 986855945 733644456 748476491 281010586 359495842 790701638 930352994 102230381 943073051 18076786 224234083 500668848 948863015 142046313 594997532 677053622 822029109 759276773 934423232 755569733 926367262 905106270 959530595 197812997 523246653 536692343 939492091 832429964 906466537 401987756 802549515 78372391 641755173 293044381 483697605 51152963 350884431 567520859 851581688 665339161 715787232 13494981 693398406 22285389 935577714 48223557 92284242 189690864 525640404 591204574 632634060 329619963 903030667 597681309 751023672 99198593 352827068 374445217 724441120 917751884 939248293 531635490 658848956 530128532 605457737 921325546 945433419 500358853 690990471 267435699 289703989 222012157 914971249 835320256 923133783 443840330 733226843 648672490 965526008 645348964 660208439 623488758 753448759 538988398 845358948 831650785 871095425 405922244 464883615 8303865 852959309 928077813 941670973 399125339 562144266 587182576 979378658 412362533 465092905 276130519 832741051 594303309 637042362 991537728 994223345 917937402 994424286 515105305 935706935 765092739 816555918 684120475 871701694 957747057 983993489 69093324 667708936 218950055 439270008 277742108 869033937 661893363 844549151 509886664 856091150 383285784 945975374 460794333 621403080 452678169 634414223 739136226 974249027 408362730 514461775 866569782 930058521 613385812 936504134 479574180 603386263 534375485 792685404 323516605 488891555 944578023 998411097 705949649 876414403 526639496 732096249 398007066 888908452 154054623 943323255 380494499 844721680 565604764 904233289 627298507 976385412 987778011 995352486 76152567 432631448 242034419 623792125 550236704 874225380 612458847 843642536 702168368 981735459 630136516 788167330 867246027 916553660 224033636 653480357 136029568 682579552 145624111 907418523 168908392 897370367 263300036 906573878 372401215 958289042 764771311 882787545 942362904 952243243 748631827 996012446 109630227 137817973 111895846 135615652 193747917 602299127 215267015 463028734 941572328 963888455 512477755 553783657 20329995 187574395 245008397 466771692 595069162 819225838 878001006 994969797 946235045 986055578 102157000 535127251 628308945 797465701 767146014 897489028 40676097 741264733 69735671 832859654 561332102 996238312 297505608 323896950 752049803 962135510 964224431 994307750 827686230 898667025 495883426 763167271 746825416 982585316 165207929 426747093 307460322 879647601 366460506 372850629 80915644 352098862 955658604 986695890 683334451 938697220 710949201 751829553 909059177 948990582 187380882 454442334 492228259 961526333 975386171 997233397 102148348 208262009 968698982 988029862 680200471 859379733 101454702 451412062 965841819 987985525 334603948 355906955 468429478 808980865 392963935 990347196 531360363 861871572 691521161 778496668 994790605 998239756 894272046 960448236 614954906 937767314 115738225 783347215 63766878 717639256 686595215 707498090 9084300 620805059 723609714 950636234 49155515 271111255 518991809 840849366 407280381 922371737 883263635 965638208 1074498 771711205 280910506 916360599 554900851 992375392 822738575 995404548 970265631 996241153 393108043 785877746 83344242 394069896 978539883 998095289 421114016 465596911 179889750 988902323 311677244 706904692 114532436 615069199 526208746 765651439 474827020 637265758 414827052 796730268 129937297 729120682 818876266 855499646 259580459 775088528 895223980 932734296 390568785 423293863 233149860 265709163 376519263 770469648 953050390 973322990 73601506 910776063 587168989 799434992 922388042 965982181 126675943 812554286 614063637 630518975 184878440 306006550 102181699 260793353 331751601 714401239 272569825 291625267 722848002 766840528 326261814 379267012 611948115 858067780 947997150 982872038 452691309 589045446 40606680 142901087 845548080 859623066 663182178 816787632 413282677 478868562 41777815 838796394 419244286 907717853 43303636 297925024 939967202 991689505 460366341 668618644 650581491 893113947 203690666 729550977 995476090 999081371 105605352 586674886 447932568 955207267 596619700 694372925 190032944 969779683 765294341 798187002 409446325 786567831 1242637 872334185 534487332 666640488 12776775 99122832 797207911 958799126 53603216 724705398 905642993 935096805 888904071 938565349 642958267 788858360 35593608 150890443 711572675 899185460 9569296 445743365 432871683 543685682 233589100 252685696 204230131 731824920 601116127 868746265 679230628 928062702 140901451 884548003 21174411 396441821 892084244 978216818 989174794 999374710 616308685 884748613 323913492 379379251 137176632 411782528 432889563 970024666 66309143 794293074 828200685 945324993 524774012 657962810 411434156 590559711 510361023 662193085 489906866 891610623 324964075 406268846 610314264 720058927 61043387 84995675 860125619 993919435 303430730 969596229 694424135 994777347 808830404 951489813 281302007 584267118 596707193 876318848 740274362 952296408 852071676 920779137 973057539 993008704 941473439 955767964 733143281 785306199 734378739 762258165 494150830 734577698 393538976 967656109 843168836 967452273 950228354 968488972 222663399 860947549 844448780 944406074 246970271 374016566 505835766 953983882 986812875 991421377 64202254 951282241 248271713 806667526 74361622 354743035 637871 785320207 119151725 277832388 777519458 950790184 25581820 940828421 190935263 454432432 781009274 910777996 512905048 799018077 481002273 951945473 175969321 440011618 869927630 940341419 548441969 947266977 67224606 491612326 425294611 610117171 506834109 624507562 960093459 998845793 402719966 703082514 644463569 659682746 453268316 737823634 984769910 991084684 207923134 596000663 270273890 781095652 911408879 913539624 995211450 997836896 868382403 939658949 442901393 593585035 111085403 720353583 672575828 745482744 901838834 951078031 23492538 272576463 94072623 819419088 175157041 433656928 705536389 903842470 789451769 992225845 762048565 968053793 442218046 561529542 361682191 693427927 222840816 886293744 953088005 994832192 18858776 937085159 133581974 197145659 177188821 605417371 818698738 866981461 233975593 450483326 513966474 554036000 189896379 359466859 131422951 992454775 698375425 885538418 204019417 504019818 185336477 782948906 860438354 979556655 979091068 982441864 600481399 874330721 757053601 916726481 46368048 227846624 759515585 949319722 358123809 385931208 740294863 814245773 163363107 653986333 595678738 681179534 645893078 975792153 208635813 514333135 735918790 888794566 918124993 998952656 954364281 957929132 310303248 547902772 714623092 744714036 784249031 981657671 6160648 132950100 529529106 675033176 442372904 553079844 858589583 991840220 98753479 820526191 241500421 953291850 698908916 815003565 201426848 323328724 180453775 218901153 691924602 913141176 765828546 826907370 621872556 672602395 905369761 929632851 543848458 827473825 61604683 990706160 973468859 976060733 503571550 915403979 945520676 991381954 853870329 929540156 389677647 842018743 986314311 986514899 335540100 681922364 263490684 641794269 956325326 996110261 233810937 634018388 926002593 984456439 115834264 467635906 978625847 993274911 146759107 235815125 251733135 814549087 481420700 676471769 687919020 765861728 435456931 599499223 623871718 835408821 819611567 863430756 327701522 421736802 803483549 898400830 137026485 279113561 24192017 940549486 983670947 988082009 992294302 993644943 381777999 419647614 130495188 707957758 276919635 978891158 669337597 672595104 131633198 525454437 530708443 754107889 319203177 752874719 959607880 968936862 262881465 986730383 773219179 824099942 928336153 942794787 484236650 512634745 228569583 615281613 841726562 861132298 371600507 531274298 717922605 761836638 426761369 473421293 489097874 594529978 399248341 834441083 537565918 887078694 616050440 836012612 458809899 632071609 170094757 228317242 348438603 946252567 467561890 947223874 801665220 892716199 919491102 978532063 323206121 972308018 841889100 856499510 624872045 785236118 651359459 897138182 332328838 766583923 165432623 214864814 870115726 878597888 69721510 907988570 403257704 817118353 69205583 179092106 612952117 744304869 407754644 528500651 825870792 839584588 424413791 534655418 458404179 785074273 758648370 976967743 888561475 938275256 59159768 983812964 630571895 735542540 168207116 387783399 476634579 488976057 244475524 387044956 401818773 893529123 904344734 905637102 235756437 542754522 273857335 377029977 783659877 836045397 985169757 993709865 252400291 760946164 441721770 778255403 388953046 613187465 721408723 923123721 48313880 61380818 523596655 658328640 684130789 742803633 77583193 840094487 941104690 957317295 251195944 307253183 555257076 863404186 378453305 711021214 918101105 996077763 730972213 830114328 525424406 642206984 158052860 400742631 347261669 479196324 256802916 770822030 797992666 852645840 769325577 869644539 551390810 663569523 163932243 762577700 95919067 733414987 379604695 744074701 453627790 884138217 722597431 750327806 943715592 960680399 797465997 961408459 381635144 457545186 266002633 501354031 703750371 780097806 752764877 895590251 35105433 739378506 185226587 838539845 998938422 999063337 936700339 979414498 646254940 852792920 181537580 855125513 514408642 641663413 334991195 796606727 438354563 917878963 531179418 638131277 496031694 850475757 454412621 689614901 672109468 799123183 707077791 926179100 861275638 974808362 964745387 993250546 154003894 957044025 546486573 938099255 732910591 750275153 258818123 852667551 922577375 933360086 831192868 893763002 741355033 806542292 647873933 774114098 135137683 181974973 920389186 927261032 788893144 859114685 756205299 795715289 23138097 36993336 584056867 748056829 232526095 340264007 944113574 948504794 567240642 845285344 458757176 675927278 708174146 878412451 963354380 988260235 496082742 515083147 831809903 989632796 674444366 790693399 634772347 874513896 811063327 942268234 547436413 649160533 411892221 487576931 541311853 984128028 717093032 956294369 349282530 872368604 618987846 976111091 490059471 685952745 700493911 980774392 736284105 908726188 180024354 280090943 554967913 601276882 162940232 181897767 283781296 835810977 656035573 909174844 74530454 623983016 294295897 721089575 232165703 354776745 699780649 743156261 671568983 915454982 208691998 792636513 274807804 930259807 328964231 682240653 749133085 765856550 491828835 983826488 905304953 955334314 794235758 890361065 342048956 557237019 716975270 772888513 729719646 814110307 217104346 727391023 882064358 988925961 485072362 686560835 307156979 395453513 314798022 894083885 406453158 830065924 386784170 441333389 629844574 802388732 485217443 656531703 260280196 422611449 408808495 752673218 284279535 473347086 645399463 908404576 555924769 570602694 178578972 633586733 130457997 461863621 607653138 733374775 354587116 395538466 372055913 643688676 136289650 669562563 39477457 935676611 706375082 895718709 215574132 923106441 430141022 483614778 489087279 730295075 810293116 866211724 306775289 805300491 167662312 641388348 932475665 964983912 337864897 872398489 1020642 190175222 285621105 712031328 268368759 735570458 217326638 442286610 914431553 965561691 646759071 704430200 801283709 918509717 455233069 744608380 470758647 623064847 935569704 995054504 607126907 823477529 170223870 521070700 131820603 928894879 518620544 951278910 513230028 818877072 606524037 847633058 582101960 886621128 299272428 552052577 551385424 787836770 441912267 933998747 159960201 325267779 470055413 583194848 451499792 717746066 650433963 906462983 983944725 984710123 253456935 825390147 214085658 749931181 975844832 991417608 91960065 113482491 363980338 449930206 795646249 986282464 46013911 80861718 689597931 803842401 948720068 956092219 771545607 999265802 121866975 833108812 330946092 388439835 960228726 996574763 444491762 482642379 171046211 884186444 977547968 985854298 578824597 810675250 246028250 931558643 226901555 808090934 436537607 661709843 347538431 658360433 578884889 581641374 636040896 949908501 321896423 990274684 859620449 930169326 429826893 928265734 536532475 726922124 233741906 910168636 7229834 630985656 953851959 997874766 440315117 768390439 111190086 549092840 285752916 482495641 900864227 954044679 191325150 555650078 651381551 841835556 888858540 972297443 684081553 912186726 549434298 751435311 309172487 652232894 987013383 992339132 852132658 995845225 320809494 687925844 344026482 663262444 737704410 911072575 572111136 852432390 786090861 966090788 826559319 994212087 681502547 841399219 204026449 591962409 851816626 929639497 588015021 736685037 166873137 786131861 597133075 643118629 822267498 903695328 645302353 730748137 704874671 836166522 679061111 855582639 797932401 858292036 801850428 877404529 708196413 992257029 655229072 707462137 720080592 720239586 208411141 263853281 521338897 630588134 187317554 404905207 718883754 734870314 201826471 801288238 340805081 933745259 679697717 834405477 462010042 961697089 717058524 808424504 280242875 430716693 546895477 749604011 707379327 981073505 176931344 259648396 276543307 955277211 491259658 566275821 422109299 678502234 227536090 996781762 174108577 661061969 837995192 992887032 546657831 792682680 254714732 673204014 852787787 947520978 383565144 808952511 529811418 922665810 174185558 651969750 24716741 820365153 775046645 796983056 222189214 785245766 177441798 288212821 296031746 692326166 972484621 994600506 192827639 238649062 245252386 810708402 16791954 237035199 211291343 803262207 855458293 903953583 189395274 899649171 755264122 988085731 74786438 263166504 371103682 724936577 865311668 894525887 173046137 695407021 859149519 872701251 337744166 672013967 806011327 914493428 937976004 989822672 597554363 981606421 929185434 972611179 252111270 502121760 213227897 583055209 966025651 978159945 554239524 616661162 604878843 671421792 909950260 961841783 725534804 914800073 310354220 732283090 902965918 946169457 977179556 983189483 925513909 969021995 116605162 334973900 749208206 857594616 869872623 886815402 697684760 719632229 410659966 934823703 330574938 998166675 615536100 813619796 524793932 959551982 954170017 991623144 740371656 898327302 940512266 990399732 844973088 923390612 256125604 837012417 903306801 977274296 352604410 808790820 588876241 673084411 952456597 977540224 572131730 821707307 744385856 838476288 669635360 849235093 601079041 992023118 308859237 320779696 370812227 638624859 5421802 661061971 269574545 394174812 906853629 912382307 964249797 966597733 619782092 791691281 714079737 751295762 902771947 978979939 612238467 707949818 869305796 925076006 647321343 991298863 773175346 921687085 322261729 472886056 34151546 534155001 763901694 954375935 454967567 625520884 686477596 753563368 585470392 778768777 116401896 943999132 687964803 774945304 460147401 503475004 505302157 781991356 882712262 895873364 858919016 966101317 447797984 664464157 530881676 598393903 321540947 497532029 908087341 972494314 735137628 788476379 246887475 336146862 105970959 461513598 873886101 928449999 339950626 500680406 749742513 971304032 306811746 860600393 292629211 842372140 452870980 935863257 47788482 387263029 566580210 901991334 397866067 444759905 421071860 970894851 618846426 963607133 833913069 994204894 887771459 964871223 24196021 505204685 434812098 854575971 832537239 863091232 703704151 873856784 342254962 344568917 723786397 920379986 368611631 946672900 546356398 581593242 116454693 380544092 817830454 820785349 712294998 731834458 532460066 662982279 415014275 675693617 9977575 773446406 95585087 816229924 817134622 915221447 791456858 896132756 14028648 572165846 283698908 884420708 104740031 889618779 969686974 970753172 361994694 966704918 660760269 965918871 726111977 946149107 872918895 944097871 795986622 819445242 3583531 97657847 373027587 417439959 952647644 964484521 239148394 374616363 298346209 779820278 119802863 736726900 174582008 203515778 90626272 726783153 507180090 989442718 141126880 779198072 594178429 997888539 5724248 755168464 146550178 965365215 316073792 404404550 940110790 959204161 636484248 903182821 450698295 462281552 740439034 885946230 785788963 904298423 85057356 144636370 189511612 398649970 831362946 989116537 209257622 254422102 926739919 938310221 879145292 920900067 34149908 197716816 3704283 574849784 507887671 868114598 951915663 982519474 172265273 709967998 264784805 628543507 317997227 597363162 573999463 795082149 167558690 583630767 213345603 426399151 500228123 611897308 487703036 716591864 591254943 729108283 110485471 555748134 107773750 177447889 589064526 834817435 151331134 456001781 494997781 634671687 702165361 737650567 794034260 961536017 873054076 965997988 51638457 796476321 76983876 945534531 855724967 908737748 945738963 996521258 753905873 872798656 845840662 883486233 237935971 246435052 882837552 990519841 673271746 949189163 487142866 877772352 956604821 978837792 886300361 905796501 797125396 825942638 120611291 692954777 425540269 973380803 92072568 392467851 990547573 997281456 77640932 743787193 820190335 990608320 236978844 263973998 220415073 722255800 449792094 515468912 905968339 947268029 711234336 919719770 827181291 884833354 345450129 462953907 155021201 394238968 45953622 780222821 197305883 352446527 731141145 954400606 811126315 837137506 378608687 768159424 258513115 745315765 31891301 928459444 67852546 585008389 780698599 853309888 889149509 993750161 264022347 730881755 150465630 396937361 353536400 827271785 520836792 669075106 959603688 983025092 193748627 440749744 324803224 847977367 529485940 969622835 429173086 901866527 809589677 957935515 476286741 581621507 110133130 209115280 559800228 910270104 135674495 620275053 428976089 736053181 874330211 984956514 404887864 915892354 733794247 989202392 41346579 512008876 681143857 976344852 891136103 898420480 627531966 795321886 240755895 333143405 181607345 363630540 384852703 959181795 569797169 674781287 188102383 993431101 869348093 900247710 824325041 868684822 397926810 827871843 754565199 944922340 631942852 933480662 79733771 423922092 971878038 992337725 947750092 949334471 955051027 981214344 864944562 988121973 691918400 857848177 966829911 972050385 117887240 397328507 831624266 975751091 500637648 671636183 39315876 987747017 55133165 55909804 53661836 76226883 330852832 792722288 239331128 593529726 564829685 791878961 808743414 943714960 95625284 267125762 249910952 332254073 245132132 394227894 880255192 974475041 885746177 908675099 210116268 779291783 49501711 683613080 841606868 929383011 946840028 986896141 83250728 968183653 931042637 942552613 199120160 787981248 32345698 419621222 751295106 957713519 356835982 645919329 177717017 202900864 550124665 980108712 225674673 296292579 536742701 845455467 179405988 721367797 592319486 776076159 1864890 438941938 713949683 896663229 543610770 859036848 775555991 944367680 131898478 703659638 356322615 921750781 216309508 559185113 859418772 886816872 793407025 902745184 870371903 944131360 271301215 769077349 440527281 996182527 454573909 934544381 972718696 975447230 863970478 941043709 978920727 990757434 322737312 838230955 431144890 526205870 293920610 543192092 862096924 904744587 402468608 752582995 98241866 557329434 498392243 584306811 533357610 934578629 839305806 959743617 351312474 913310512 621481263 928781119 636492304 742887776 23078670 534224378 5272595 528363415 913758149 973860368 739422552 848868473 169967698 727458873 225988868 868979804 583151595 588118608 19804976 993779117 435799099 830082032 628117728 775585369 33639039 464977818 983174853 988396290 877231520 934897618 612675091 814829518 544166368 556886192 571376148 683909653 704425420 858137182 757105181 798521677 115346557 528937827 625422687 770942482 602481530 685431825 306539471 687895175 953697901 962737111 478775208 487688720 641729392 803941690 53244785 692452273 478122603 649132454 24212043 975953267 507966489 508558056 386291966 799271358 493892022 738982135 155329820 372388286 887191321 987374300 617500348 940917966 834812006 943897279 253080841 446868640 118954209 916294213 691514394 869881722 809046262 831040118 753064493 933918382 302887888 672537887 24622389 991647912 869569105 998162935 701448476 844942456 590001726 933180876 986215238 995571950 132021508 167910723 23746588 863718516 57121128 101963191 645918101 735163955 54750011 456686597 191241189 713591568 589029966 664347765 127349576 233074725 787151870 836301843 119905035 183641042 33393499 493745813 562084168 702739453 362923695 907810058 250549807 417937417 623798230 864280656 513671137 821646799 49045314 251864581 914362680 996932607 801094676 914198569 186643947 970213749 949603126 980834194 445110920 750064409 648007343 984831438 742296890 933486362 758075889 800048292 635075733 728693245 694407085 710526078 730464923 752184673 609356802 696088383 229024847 658785957 774855744 809466147 823795336 859463029 389590067 638803467 831222029 885191549 182816896 785251136 933409719 986210886 168676310 860789258 536548307 918541909 673725182 978439789 158550656 168652043 447855796 565007789 358437111 998545822 426074559 442287021 686775066 734894780 871578787 874060948 751881806 809037387 665300899 776964400 355003641 534875114 916129986 981574835 153088193 470559432 595215711 839693296 119914089 246815996 189376663 227766105 471564535 656963671 689061824 847923356 479087469 543636267 689228773 872995608 792928361 918820721 865316995 925152828 878030412 894192148 648615042 925989990 17251678 155501048 352077919 964349742 237095505 634178741 220311117 848564417 285167120 290414323 530628947 555661332 273806190 907757234 816837869 819234768 583989370 879480539 293800108 469091532 239921619 915621828 744481640 901870134 950822678 955452760 41416939 592613003 483064440 493849188 498426560 669339051 215287782 492235073 393264943 633713733 388183826 953702176 469118162 982608373 639951155 881113549 565066693 951722297 139218828 222614405 642404624 655137633 504032559 675815414 832614335 906483901 203849917 693969393 501081534 763146689 347135394 831249487 62008671 441164402 433782358 644263163 511132440 938539827 663447257 972135218 385693089 396442345 352625717 577443562 507380291 551405183 96222674 533447165 492196152 521547362 218194873 683477126 886185802 943323148 475948128 920220956 10951129 416783415 186897555 412322643 219068489 315564223 891756231 915926497 988016275 990784872 375814184 520416870 399503221 737403328 668095863 691729351 936959352 957732139 421237442 509917861 481911535 755529046 30310668 65130099 884063280 957392057 887961548 986933897 101991704 335000427 381589371 612837605 633411063 907580580 548607560 804978951 792739771 840597485 42992936 404660820 384974224 712878609 916425045 980811160 772455658 829341211 724357532 965992171 404337550 444089053 594478553 830389513 474205267 574475992 940882901 989808039 773152807 821706320 288477406 424422696 311990520 907270837 309388910 733681704 435709885 557958356 3152666 81560082 632551671 868070378 198617032 515333008 128216395 624972587 813049562 885324700 969009386 973289254 545365474 566572529 15923333 276609392 278318487 426696064 187657284 741992693 61551488 406346050 761010583 946573718 943700421 974826883 860594936 908862131 197676229 390143354 392150990 488808376 998093632 998992232 373397412 721119606 956242870 992928726 376621878 526292438 134446631 948947934 148404014 657879037 506082723 614100689 704912411 716421638 94140719 207234958 483893158 693338790 664305566 821481742 986891827 991832723 315011526 984508444 401136916 562949732 565729742 608453170 310138903 612734514 759127968 916178579 254454851 845582304 809256538 944329662 831048773 959443473 578192553 912264116 848992922 965511226 320546045 515462765 732011278 778590121 12070714 414245580 944539861 978168237 185799477 304582216 893963979 963097535 656011524 774778488 680962176 837015155 297892792 983635526 896783285 954749494 409068218 431692661 698387153 732889413 464978835 733357191 248440087 476860844 7423799 139563373 591803923 648502887 105302361 898354260 199965881 644970965 150826742 934613322 845002525 914434413 883605059 886777081 891347453 971733041 396383648 445619227 772543734 789532140 883254541 981433438 619510011 818293890 205667372 720311970 903409263 984647732 273700330 367517062 184950071 736096209 334902957 582373211 412178856 487687923 625693239 669089207 315079717 557942043 31795987 972262059 822054770 844876166 520247628 817684176 487232425 782062657 514571639 813173842 679869837 773388009 775527599 814878493 967633371 969359055 734688339 756137346 434191120 925899703 365736802 588294182 736401260 849396989 516285958 640112873 480632476 894321610 402790462 412239024 596424606 786514752 593642970 886533793 274811310 982541831 782646514 944031212 762519302 829388140 380618083 829720329 666681861 881725173 191568848 971853309 192341600 315329960 222369701 485034183 273239191 594325126 578770257 646467448 988128038 991060384 564388246 772995775 420013527 617688468 497700309 659052401 518122579 893233048 799030163 837532437 858837168 877525550 490172716 566710350 968989698 974168741 354949856 636383642 952439020 976630838 703168549 721828943 794506812 845041682 404242436 719437850 156254252 451764783 891756045 939240334 123207264 527887229 74077999 953813036 45398839 709953081 751788701 895243727 454922247 601074007 633156695 749767808 409821216 756958757 264193548 477893210 171699698 633216275 497894756 702874806 390740822 710467148 159135664 874830839 511717408 803344353 434791024 564970252 342189676 993513304 75823800 446777174 425934451 491944693 274799721 742521262 20665385 232236675 452395542 470867811 952503868 981368124 442569459 969972382 55027619 567337528 171242892 384128232 152534321 465662246 611717568 836493436 266626645 895818320 342814472 893258317 587251889 789832281 119597441 261554560 155952717 426867388 723334307 979744102 560602278 710406676 416655932 890982278 243981026 784091353 320410484 513311436 214980330 982842977 719288953 957431637 674159046 958666260 448846753 672288209 66188442 290113706 206258923 291601888 286844928 377746804 470899029 506239117 209809159 290216596 337313482 838636003 255071547 808475789 473011837 593588242 608106382 796043667 60035502 798846227 749614115 766200268 50942824 907632166 322828851 329664602 881316175 933434687 801268694 972291277 726967093 964061112 924185714 985268538 485815473 755199180 613945874 871916556 730742004 906585205 634053509 817164952 889341733 983753660 266449251 981234733 203960824 224982598 391597059 427746623 855615140 879872318 701045617 857898724 665984721 745197902 333490399 514644900 971015337 985774836 437687903 706426637 801165119 843344551 277043219 871851935 135213342 957721087 664728124 852933591 576427671 758551403 821902007 885113258 602171449 654365341 602247734 644659935 406698982 701533172 86627105 415062469 779986429 964690907 428477370 531478818 962559570 974531229 229337584 673642564 131700202 753846473 626108629 992524700 951686355 963204961 577177332 877945468 871300013 938272959 88518715 984540015 587575736 880038507 72861606 705815600 272261290 866761859 172782072 226781558 598427170 730320069 949155045 998270026 529115328 950897869 207491313 322780927 445340584 531163759 185458680 618379678 569424388 680271476 688474674 879278855 974875560 997435568 702274547 937201478 726162639 863200817 618604365 800812764 90440154 613021716 881612915 949204761 322431999 559582584 21344827 400878920 650184621 927706139 402060171 773141181 206421470 224470442 688777161 850632400 980346047 989078581 347087310 902611410 280734635 494166317 307765880 465605644 280784261 981330599 502249477 824812114 689242485 702631711 443926615 706771829 185608781 865630897 691764664 898544033 200941662 509445797 270576635 785123678 597007417 858604703 328803128 935384563 792015042 904171310 140601922 872542927 105122452 534020922 779008650 827144468 847878446 944491055 51127148 387295459 139469558 458780478 592496847 814573075 153392550 470342487 156008372 496308611 811547603 874064993 608510862 949808820 187458259 246189922 741477879 996788921 357396514 493257418 2270013 384425916 294609791 597851270 156150257 180324334 44276711 924018778 813681645 826162487 940750340 958328512 155019835 451292564 689779912 939443479 660600063 888298512 780857113 879328388 203196332 959326899 256329133 608155987 375709270 674376704 80357936 716838109 3115375 289867663 172449658 679438543 726996452 868726574 62139021 67463533 507216157 626563483 465709399 953170051 705261176 801480699 110372578 634744413 700188969 831901678 917103454 949816625 432057509 475833197 458122096 896149287 613722384 939677698 484117324 508386457 106739724 204597392 644844931 820095559 376659133 562335211 764437735 933202573 361002163 926820297 216353575 300680659 110903328 395773027 54596739 723262189 830434076 950979599 213822151 341574113 288544392 787205831 243055709 432279304 758602155 809205394 414010375 618979719 368870746 743280365 386103263 460217702 402099370 493634943 651640656 754609195 967232285 973192835 414462207 542169840 298503865 808876239 675249972 831480822 636208917 893971184 512482070 984738882 504481137 901444448 992550009 998930692 873627026 983809875 43339542 914297708 180174892 427856465 25166527 47462521 354406871 889632068 818082186 915522825 986411246 997834229 636178622 782179441 334422517 646540621 296485461 583594266 727296193 904841168 82362302 364004611 244398123 524669458 244585939 764301750 356552887 569401433 44909323 682207579 651247905 988363749 318795547 343127720 202786984 252874710 342292288 521857939 111105974 137498307 311660585 705702970 114630308 844004085 837982635 872591237 805704856 981658300 374728599 890588999 517991329 874062215 184538865 270587848 728397226 817752510 528909893 559411992 187906484 278292468 603208986 721535764 310764582 683404657 465154535 719479239 63051294 279539374 84778283 592278204 858880277 997277192 124924691 321655723 783306337 899224421 346722680 914950479 215647397 415272895 579374306 768585955 979684980 990000379 162480104 882895633 884021826 884180356 508279952 798698505 671390377 944498462 340912156 867653473 302621935 537167777 438461911 647513807 895475426 987999248 7198092 440430420 315063738 992054993 109635825 629218748 456228967 585745741 306154971 642285210 797879345 864220859 935032042 990512819 983427567 997771277 108867027 732352583 980696730 982828628 340327446 900115791 625011719 702322139 790786951 943547966 526287238 572340803 630695603 974352694 103667130 178375652 738150322 788151072 788972698 873255475 997231987 997259556 233854564 660503913 302947264 730581176 418034147 689899155 376627721 770931015 892108484 916324474 141980459 669876209 302171153 429120559 659173021 967723066 391828361 508478383 40772224 514267537 596989079 697319437 374488192 479766930 616399749 699681151 134114327 338539709 406687784 666420089 483722006 579636541 985045867 997181855 812747034 823861686 239494959 461419329 383676381 513776339 135027833 165915248 367592586 920071888 50799537 137688057 201171530 245144518 277090639 491211088 992478810 995902540 764370968 904490576 307950605 855746558 192480320 415311131 368810917 612641781 504590057 725757484 621256348 718142111 178794077 330305569 817666926 951929850 305340055 327325221 20938187 661313960 32600846 668621548 625185974 998304870 818753511 862806080 552609134 731736129 129833337 161171064 597420803 957091263 450470395 493712485 464459967 499831238 723601833 779944041 139163801 197081336 122047461 876648100 949996933 960900926 811043747 818393027 518385435 566431529 241362052 733729940 181076576 953728393 314250909 413303848 403744050 992275762 133680980 614908311 273793360 324428743 75186563 89430973 475216592 610971267 759492324 834934952 213540795 296845193 122025458 205156273 15141056 74795438 932631988 937747185 701125209 825789419 950623430 982929737 834188562 934524165 441856614 965815509 942043744 961745388 955062628 995340706 227538990 914378331 271570955 867962179 802021999 993298546 242897558 699869725 879565355 964171768 99829819 857015276 894551276 996991709 904936284 915991893 614213654 908406013 147857255 177406351 431338309 783244417 245322664 633377295 210811847 349699015 837389426 984155581 498123535 541106494 726828554 818635075 308990302 802423321 85299684 401423336 378997693 768826724 519396746 537694534 714748309 981634915 256371414 319764053 45528275 295065809 345812827 777938976 281368634 828386236 15046171 173374607 387150968 734103538 479237241 530630700 126773201 351444128 513761493 751964332 590556862 722892434 829183728 965686920 679338531 754600611 52534770 399336947 40062977 972747059 438049379 785544654 102236104 859400361 552175036 856801824 450026283 607229048 243824544 771495780 315171043 663487435 297929484 649738503 91794833 360761862 559174004 865006404 923754753 947873966 327495088 832238126 529225265 783147958 542820304 574510165 660681564 896685294 560361193 671113521 301854056 631831206 650319593 974793109 473667808 967016302 989731813 995657687 949631160 972288841 376739607 900346703 727080228 928198290 563854661 570665517 2004028 168625406 133327757 917852526 487476387 577725366 717031428 975469347 621699549 641899682 277533133 834787445 771311233 980945182 710076973 901293516 548365572 651229532 879081481 989252572 803063649 951369326 837581100 931057481 363533874 727353729 272143559 923376235 242391504 315298694 54362724 413959412 787434717 957623304 525596655 743229535 10650148 328039502 390143728 620397664 244833703 486878531 592743232 622418175 500741051 517240298 350974904 446579225 688979737 811865376 516907519 799575137 598719691 644147137 393757316 710204756 564897811 636179536 969398430 997557357 204591790 319911113 808757136 819070283 528976778 741435298 47749758 932983830 770074673 822800734 984551898 997312171 520497036 815669362 830165543 844698706 457551198 663322887 528093218 779199195 237669232 986795241 706647542 996380678 823122644 867836331 167969572 697099218 770167406 803894230 660243892 870750908 582050509 733449405 367813300 730505382 203778953 310617860 79339779 813811214 738412420 963110347 293310222 410827997 123376938 319135796 510370715 933727014 954649108 987558560 963058801 974372023 421197755 544275373 222879480 404042724 132574535 923303236 687242094 790644195 976320727 987482998 674752680 893336779 829914367 870992476 715448395 971994985 551304547 635900821 5063268 556324421 267255943 520883307 572059982 947790836 19433232 757229314 105496846 396500383 52914962 418209847 344613739 628372451 963627530 998626600 130977494 156606126 958277813 963617055 112730557 857194258 21876530 691526435 289277220 573234074 162795298 949998483 194807688 531998538 373597613 469835636 613340013 630773557 265474240 801038876 351495153 789861020 238989868 703390124 59420015 625751576 251914630 935395875 642841693 723510302 671229738 912828815 3015083 911719180 263461728 944244215 626680641 860560780 111101247 708584678 26120168 724644325 23004840 761408520 451684339 663338570 561501227 611243860 840355447 859861133 652073019 864626073 62647184 375360414 580375508 858310478 303764703 533144015 258786765 526118711 513044016 808931077 816726794 922826883 75612896 150582116 59783630 509543562 692756366 929143021 961613489 999173038 550917327 674120341 620450236 923299519 943658625 985214600 381277423 409760276 728151352 987873984 270067569 798657435 4120616 967676710 542754128 689189225 27279717 709627063 724390882 742696045 319851443 637384692 784862383 884648939 388378741 673837370 952620637 980191671 919771966 970520383 309493313 502385962 676972013 725238317 108751385 168144365 931372521 992085787 503109323 827878275 400615360 937159479 826277715 964051503 715526033 840620356 996242755 998910604 426770507 561800157 632397025 832656936 91107931 199369706 153692741 755596207 550710498 945670577 632657806 923431446 150908235 312821484 993553737 998922450 867367725 934081546 144867749 343804953 426102906 943727559 528593370 883907659 765689332 799704398 669071462 678563267 375181529 786245946 587379879 803083454 576975025 883374201 938110796 949906502 311363346 586132644 883296808 996904450 971901998 990828681 624753217 702128285 549480477 588846356 713317087 780765666 636305380 737538426 214984303 445625691 604125103 997076656 987937204 994739572 915050350 948486257 804070865 961097128 235584988 345775118 383913625 819991077 344003403 792491456 889735957 947318910 117531178 160437637 467948661 825526380 654033784 973947926 993173172 993389921 847172839 858175542 160761491 722452074 298846720 957480768 59480699 318653740 798403940 991241873 542959247 752050350 702080204 925487890 959112011 973140065 150865090 811921052 591739155 639668427 899103741 930030369 821121713 913969128 596891997 727574682 143301984 221885726 298849361 860740697 143405433 393715496 479378703 642827951 51303670 318501020 124059821 170903569 699769217 916500307 317025157 758256050 676362452 785509301 329668395 726102258 59411281 676791925 917289917 977824868 723155511 937121693 556542806 807844005 839485253 883865185 899319036 907365389 602603006 726844914 842216467 862002294 884248769 922321332 937222519 965157119 637708194 684214788 172315067 223866811 369036810 976145153 593353517 786380947 947661277 979312283 473715811 629602891 44365405 926219527 692033301 828087854 4810984 905085046 8955700 545817326 265892608 340947430 661000496 783000058 248572715 539763440 637527929 730362058 700094366 775251731 6173247 716579858 119988316 507670212 452993835 552714992 576520149 998789060 617897907 995196078 348830190 878213590 113912044 392494905 436296195 649173482 856480799 997706857 886853945 977654453 401622996 956733438 630666193 937484958 859397803 971501581 359545812 609429943 339333318 401909381 481340492 867769905 465190883 949657277 176819684 265618425 786313610 960875330 65781564 680235087 157226632 749649525 275677612 624529032 380489895 825086544 735124183 944967438 634882791 679152957 632805266 638981002 146862940 619079422 355092305 447503203 955249226 982386803 899987427 907481059 90579188 684306333 167404474 298709953 21624250 445667764 113768090 499198266 950216080 997469267 274590444 568028455 592702446 700228602 670344905 700951246 358641153 653589241 580831982 738887007 105139949 189318979 861262114 999074174 329771540 971078489 221704058 396868303 530958267 886400541 471577515 889810951 13182478 370087258 679287997 686900852 618755752 752935036 634528330 933263764 811324410 840728797 293433643 780409389 748750391 989860881 293247581 636781446 626821968 754223122 115485026 429873990 440321025 485286397 379013281 409143079 534449584 657164007 953520152 984465967 721062570 919477590 943194926 975113870 528887342 926980065 590740005 718029647 742690032 896401495 93915223 609208029 193242372 729477512 303905109 774696011 265341354 777467331 134057498 596648192 948361545 969352540 106656794 773251288 349421392 419261836 297685990 572999730 476939204 868416608 881562151 911355283 755011446 921824876 276948709 477948074 844995128 849747940 376413866 571355078 465861596 700392216 787985728 940921110 299429820 674879692 320723735 943809184 536338064 772587609 618704997 909891044 326184232 341177336 476030709 637609901 6611530 65650501 980779942 990926620 346829917 530463042 618158712 648678098 453114149 599339120 226970658 705450005 63282575 95023371 273517199 500284629 674883788 813258875 91748799 702648996 422341644 952496190 530613890 701656797 935951266 946867221 803306936 962017415 864047106 901715313 987591909 991691728 923087585 970968537 416857473 708983197 486876739 778544865 683683693 774755451 720303454 890912178 941989885 960857079 837439005 913514020 679931175 712041169 327928920 548003381 215299717 481393238 316502688 817367709 275470160 376942927 253181532 970473318 318065562 340172326 341919028 528053872 480908790 985862138 175686847 293443647 318671118 810866283 857070670 971122608 444057616 871575042 632109732 731535655 173861193 523851558 419272335 651840047 379863140 775362417 749972609 882799369 676452405 971410407 291527223 880608831 611553525 767354731 250387372 670754609 255753637 931465689 23370894 326283412 532147586 618820083 157301311 488248737 480788594 619187985 328638305 972552642 958679117 962229111 430200738 794559703 7828350 462702178 541319012 763532384 827498506 871357821 341324372 811729668 571073135 957752403 34686706 721702926 978025090 981536175 698255275 891744841 368139513 631120582 560985710 578892827 705160552 968599862 235669863 715708567 392999142 402379048 902572451 953872548 447194149 520351328 150209270 183406650 15623885 48148164 630318994 632909485 627150574 714037632 895842405 973320173 100706868 845580200 264027247 656728325 249958328 964598080 915550314 949186913 634476328 851718293 259546278 551915390 88274800 101192422 150211614 370694690 931065599 934043276 292547884 351867667 727067530 821484147 378191226 640876534 982052361 983952946 44859287 622778454 291344052 603454103 624388981 856423130 708884967 996167721 792445975 855647435 64897903 437370546 943826221 974150027 4360230 442303884 381893267 978630487 298046350 892667700 454471533 956918019 512215668 624156645 632854252 820023963 433797536 886822891 861980772 986165222 209956916 815073815 188429447 926432962 796593693 969479452 331902736 687950295 686754696 905595357 910565366 922681884 88195287 556555764 606934064 726587500 234075224 261751371 822400317 852073724 826792261 936072986 631557192 888101733 237197394 633145863 888071587 918200054 336028550 824680225 659721529 919563560 594925639 809639724 975552947 998673871 147815492 867891924 145561097 565416175 643771123 851023900 512949127 743943729 378058009 887239439 886915670 995071244 835963063 908809183 193803538 825291876 850233189 985993884 653376304 847634180 679025475 966608068 915307222 919347044 235755753 504614910 267428958 991376264 41865105 431522343 852162088 916102020 528776927 922500669 899769717 965435870 838212964 887608122 357225846 803210213 793173624 813942923 314293403 406481308 138336936 759741409 397432056 585433990 357775917 983043335 485488952 799232115 760145313 821222085 91426804 951549237 967726696 989279950 346719306 712706484 981516148 998202491 756083411 977650904 612657641 861039093 88228025 397100253 489340225 712146236 379519214 756894880 626619326 740895561 981333084 983017825 135533473 996899401 842680841 850319647 489800785 802412490 761603384 788747711 205157117 712451771 795348778 853549301 981428567 999383194 83864580 513509493 413716598 467340478 267955031 328858227 878338034 946659763 375644612 537170029 843506157 845352653 393281203 849098482 750647836 876768569 458582854 598525601 128316788 142800332 918101954 996715306 374458029 848725645 536332381 655066300 613535161 767910203 265543008 910491357 915836214 970705591 151841185 456175949 740033063 940112928 404371668 951381293 737050754 945137665 766744619 995237884 703691073 820009287 310617618 969804217 364945988 644968769 646864158 704380731 155455873 463849744 230552117 850745160 808355495 833979977 299143945 421523195 580879640 985406909 942255490 945661580 814577492 890262257 175048623 219185315 835966885 843454248 502901153 716056899 662543914 976169295 342896087 710061037 846253455 986417899 425435834 456358642 265928914 526169844 161420607 943775194 213639208 933171403 974777711 985917035 576013737 722635233 142146282 463275519 37286208 84004802 589610914 756137952 974092311 988470054 762827435 923174088 531092265 690061430 448468113 930186315 758361460 762997183 22411576 653888112 649478226 963540170 672295600 735572834 985935319 992977075 682955107 817012326 883138700 912643409 853875141 885448747 879648733 949445559 774432492 918919425 927153534 954850163 702193516 828983071 982846947 990359157 755438606 950046057 703951021 741537887 293700085 874691805 227796025 333816597 499570793 722203160 546487540 804602897 632073754 637124094 927274228 981090456 197496401 780777615 471463264 904539902 63985697 227624383 768009971 897883194 481636668 815017311 712054456 898671230 670087722 909214957 673097419 842666845 869827144 976315073 519747946 772798565 656295672 735356611 468344891 721039400 862011214 999378684 591588491 801023655 355810104 872090121 648318427 798758067 769852427 830368241 872477967 975151372 719440875 847019638 815658012 877577675 759910804 898654654 233128123 646204060 153330129 626029493 566004024 972153558 699997650 809827447 234048820 806648636 430394466 650800012 419445341 682622113 933428575 976603077 449053623 455288347 862105807 866766105 745400181 865305296 887769631 888758413 241033882 920613461 276387190 642994559 231672936 259774698 464449992 469263474 267020849 719277803 197819128 300328748 893335311 922940453 645610814 797450804 737695435 967581055 378398045 609746616 630172462 834306957 293143864 913439195 630759577 902714691 495345871 500407113 941550972 978392403 211138205 374171574 184352530 541392518 3131962 548352917 96698926 381549536 490463277 987972191 348763036 656140471 839175879 890283241 422925038 579833487 483096296 828430131 52672781 560635082 734749363 977800292 418703639 604802752 677552823 775245754 644705466 717547152 567702245 601405480 691907926 714543180 776729935 816801215 399809989 494966885 646509736 726174924 200896225 416466125 451620731 947711379 753825602 792502836 744994881 803162912 195024088 799061708 241888671 687630843 33680363 440999142 188697050 247424179 452813959 604846013 478204422 547986121 540390391 967744766 213932960 519238686 322224659 721172261 752749926 782108088 572724255 738178071 219042202 942672543 929135129 955745212 682409665 769894213 12164605 318119593 427442518 696054108 873585324 893594814 564107404 922014730 746593588 782566913 782151046 961385245 369919007 951866985 486827028 940017704 869391708 930188176 250552235 496645485 856864135 982486579 855679505 956723979 460363806 623597731 197984539 444627265 538323590 616815089 867680462 932389422 126457757 234476669 47694633 677483955 83626025 814432982 147027455 802584744 730523743 790464248 324935402 978908823 910765727 980881724 8637178 523619479 335821522 477456326 405615099 627780735 821893716 931219617 981758343 991200750 607842421 843817148 802343818 966439752 595159076 722734956 559495757 703958964 190023110 326421592 88828485 249632510 171348005 461150707 497725663 503557470 186922674 608721108 456586830 492788867 674400443 869654583 580713015 818926297 823236221 851368008 747180305 989584035 432467613 489757106 537037817 915113056 750992680 961770435 388186941 453059041 378288385 463876762 167137520 492127834 397910370 508258820 739714964 833711693 164494174 540219726 307774806 689330807 266344471 794088145 21752288 831333639 326727088 608987884 746978739 823063203 962269465 983722612 802803914 963451899 170598463 329905646 51675225 820408879 614531812 779489357 558086313 859694575 96389619 873038454 164073140 352209846 84239282 911127144 117519170 165571245 931288900 934018130 900686986 936841335 787356499 973982564 434774730 795834719 500509591 749283880 878407202 879200268 958467295 982846358 747022883 766989296 199255865 305438383 486372818 923833935 609238913 861293380 393519399 765179853 112347505 254757479 984649275 999101637 112840470 375632262 170798740 883834104 302973670 431328332 651166316 966222104 901386135 964030241 965936543 982338319 780198584 961740435 438421347 589097653 112383753 920252480 28290613 352108803 231998033 397280080 740580420 756023728 668954126 741854827 829998965 995294632 623331152 625345679 586986945 922956836 985313073 990451449 987023095 989526862 18826814 798147465 34489474 726433095 729242136 859194072 728329412 954061274 908263402 966644118 973267278 993506285 139905483 935778499 60361715 592247632 177881247 376816543 422916102 498513063 107505974 402015679 982924933 985999741 445202597 989840482 102987424 748627515 288791644 757202589 268678404 580947796 143614314 791479288 549140024 723524489 85642164 895642039 355079602 490910397 464902223 524115578 897785728 902927459 964145856 969863410 702281854 786802692 935880941 971775594 261897145 603939587 614409112 754501897 224210762 410955068 559395743 612050645 807943917 870461012 173407090 653175301 84149694 430037119 459291208 567958451 425634575 659296768 498920151 554015836 534686240 759349037 530759466 813377429 697065283 802582831 53582120 833768596 682380680 710841113 739440515 879971874 329977347 332365670 552767552 626986937 453892305 804583788 931920489 980559067 223713932 371595417 511582298 619900457 297934568 740439238 710146884 818189125 215975218 326903247 60360959 615336780 371687994 977504583 322983755 789729421 77412070 673364095 92585012 122578061 803967937 933920290 234341596 454900903 305149405 482086811 623143780 732666273 61051655 928714494 996420722 997057008 612500777 737869841 118688932 203618919 658850458 847063769 123412736 348624482 325272601 587663344 446369865 914290414 382101133 834368116 70773369 581833831 380050530 464518528 208063378 626780583 376360607 815415470 149827848 180184582 747938417 891096142 410587902 448035059 670518787 817147740 775315520 871794008 347434652 728818300 329169747 335783035 231233009 414544105 176891077 623013179 396717454 446521269 79628928 589564426 990506147 996040657 693717021 884737666 161408833 503339276 911507820 915871268 311835152 647403269 378317316 775699633 750521571 791675691 154160801 915115583 397335886 536985402 656620671 866954310 628875812 839294543 926015231 991304756 608578034 665870465 905353115 981259614 761778675 876262661 837663772 886545946 61488220 604388693 110524065 777444437 246632342 680313984 830510977 931192999 450320443 591243002 59271475 405431590 151558364 703345952 393746036 939016004 418279584 994829530 812205214 954759664 613774005 960476612 565375529 859825195 133081855 473858435 965049192 996349048 388634207 766229782 974096171 989762942 7877413 556503042 587610810 735804320 193018753 766506220 768298223 983066980 824480017 868110450 172184877 282276586 517525671 818992083 184403397 494926042 203474348 455498957 594043633 714990218 270545318 838575908 328808804 804307623 506609092 884824155 648863173 659170256 888386876 943736856 870817776 991826355 281344591 391747273 29407774 776456144 977600911 990992271 788941026 867578206 192716557 918706955 982964957 990774137 871505794 950229332 349505319 979121098 438618061 688696305 374652939 683734464 236238220 580143438 378333087 889872454 871685617 968065556 974357469 993181327 901069574 983931400 514497296 612822430 362682066 438526437 933790191 968185842 709368278 909451782 690056404 846339698 11499546 630115507 303112626 736609891 229452804 390734814 114608273 190826505 617641902 714971974 629121068 735346957 194794291 633069519 274563813 408641789 999042793 999103617 517399948 862889922 65769953 991759181 59896375 343651835 765229592 776753280 127071760 487911098 713549537 893184893 254108407 663038454 488639662 888383114 224616590 585836567 12369909 676293346 109233212 734271061 149250575 692794099 570441226 972034786 469274290 944018942 125035212 853356840 798981037 936616940 937678738 984783064 429615831 847633039 731884601 819522620 548624234 888160533 974715499 989775115 740014449 792008926 589548407 884303464 858474957 952183152 218337540 884473856 548338217 812131300 131325930 926876283 745413465 867768713 174616193 915430608 400598600 406349356 19000423 624611251 855485057 958050168 416418331 621829229 18956279 984409820 938905470 958726964 811426464 827019938 910869639 990891284 539897083 913296312 635487051 646812736 611992032 882870273 652617363 740900418 442200379 519595205 819425708 873868996 740908146 895179365 770079362 803838304 465655526 773012114 14883290 353474965 327755701 900880703 670700134 993535689 538037534 572007264 706576359 785719541 647643884 947592808 11592663 531551301 536193487 669277050 166119801 191001476 751289766 968761801 264848547 503676424 956925354 990331582 477786828 756745643 480077413 567240225 329280494 417459848 428498725 712229652 961357169 975691918 154696504 638382184 466187258 496833773 358927458 486411615 111584866 735579553 781064911 949447546 312347494 660173932 773131541 973166490 186224881 985416358 502511645 955800386 639217797 737906209 448754265 794654546 666565880 774536460 461101328 778546218 462886308 857589702 43115456 609327596 924739654 966405725 642167507 814791095 924583879 952353470 921465896 942416765 58901830 500552369 281636348 851851941 160068529 893974512 141221968 352896452 253830913 740021466 54799804 455160687 673522868 875211488 347153150 847893838 271410285 661609162 529516402 843420500 361464371 868232729 677248658 750888964 34672732 302272224 432341524 773589208 465972934 611382230 722794956 853508476 276320198 390932358 752482448 824763191 703609897 935530357 72029941 384161947 636012364 964665398 236100 32865248 264368291 814289934 120870311 868254413 857987676 873802970 560513602 582147124 841764593 967560933 561216192 643020170 44927909 193369528 292437427 763462626 333349907 535893764 294632034 919282680 243686681 303408301 693846003 791118474 411283289 637984284 469338624 828265842 242483785 428177658 840290916 882607427 360565842 371638990 85412760 952616120 581422182 758657896 549180316 862599715 585209113 851935576 140487252 599038403 178207726 568262752 133176034 180501371 268975044 664050202 618125805 810229797 962070970 991089510 543006515 965014721 560268203 698423470 347424428 728750513 3470935 896134903 35885421 867090897 452551839 921307879 432118306 667271573 279982745 392539240 161976111 260704868 381947448 438386615 528471039 919718974 186285358 742898843 182855342 782095814 17271733 819913896 751510347 866021290 298822093 889437759 445520028 655789013 715851131 859589631 494340927 918869629 579208019 776047149 214144271 603998896 414592968 796412356 316987926 788557608 907801656 926968486 451016277 967773119 630308202 997453447 981787171 992404210 532446332 804628301 172697837 399914257 946933847 953199907 388610371 660955995 676243357 816587128 669650352 743554383 187816658 426891997 583761105 962290804 465391129 818213999 556612522 743687752 786576229 857966520 318934343 528701942 262666921 264811475 915990397 920876977 754128367 943459400 941919847 981179103 771136796 940946887 881239263 882486590 516037201 882535834 617497728 659452725 493027708 841967824 824630143 938593918 549156650 846098731 458189608 645139905 635972793 942911039 816102010 941864487 344730895 584759654 839798421 841830928 24006436 563004063 962832302 998872141 948355735 959009062 136200068 532008537 459444652 538516112 112549899 423285384 82616836 99837060 68955406 546356896 391497871 468176657 476428211 824487452 151050241 594071372 426641470 948346400 484693884 678391205 503883038 508744878 190031652 840825585 282081431 674006572 19843694 637502936 440205200 848347220 130905049 648244290 264579556 393350284 128615741 234802378 15037819 935293711 656064088 813193373 864435863 914658417 233953438 293706282 422781681 432320522 45250965 729940059 335418889 430892205 902400613 941065671 165727944 605969458 205956170 620466045 938728026 996594949 611813976 841664300 532547409 621675162 416809138 837515658 131794267 147396087 98079060 706868330 502441914 972635662 523987810 704132360 243338551 342014859 149341660 472853538 821173270 989816154 523942117 673022027 541360771 905340959 747966309 912713361 525568977 797207756 646959526 797596201 47293211 195758431 15734712 356155740 144321746 850869779 503603230 900892047 176950625 790668480 181974992 468517174 672524208 949412602 389657714 786621860 63447529 915483591 678307994 837230044 427384424 814811846 207375834 995445677 173988241 501281907 95123652 226106397 418441139 492794190 486520126 582141533 432107321 848828799 148842095 401931932 80595172 625422987 12685331 874779337 632130715 951804049 580778111 669627855 412372967 599453005 958747510 991189274 552642656 617185575 289743800 466937158 615018262 698989423 574144840 585496627 915143509 943394097 102055445 906641738 728632045 850431857 990067536 995756062 728590833 801385269 933633095 938761827 285973669 528100619 468727562 878080714 636765620 971263380 363947834 522159483 508772926 884745995 151008705 955131680 479371608 639054480 21332949 81922876 169818137 697028240 17983719 340569882 186920842 436172930 351075300 481462344 584276951 908673719 516187097 709958083 253787002 868036390 639021685 818027388 181230315 460714222 817874892 827166585 17226470 568233763 149693797 968922143 403177110 805784272 31903492 221476896 712109433 952674458 7628989 548438273 202399425 266209196 35461493 585432246 671357642 767445753 546399303 609676596 504435354 924909611 233549287 822390498 436620692 672031808 439309960 509401407 667268229 745384204 731003242 741767157 284114882 377525960 155735359 306583145 71507983 172196695 656724638 882271069 649624891 696325113 586144632 862449508 121152445 130781945 599659300 873246356 260450719 704116890 968233740 985522662 667056546 989526113 251739026 935252223 795445317 910170276 807742940 858340300 70386084 524233227 375922666 640016868 494194369 535218174 343717269 943913675 249418362 974951729 382893815 558294638 455015325 693606458 973536850 982142322 423430231 823392156 195557523 713226071 468260997 589419764 597380994 734004301 429419984 439074106 840022878 875931790 310989949 496832576 244261173 568193679 583073155 702459897 224600581 683948559 240176919 518526436 271840913 278959318 691981996 738444573 171122827 432054443 829480079 961625697 129020842 578084246 896399523 990366224 614556056 807790865 767204584 981794395 903068414 958233974 944586357 974711858 51081419 354659134 188609320 665299373 542045661 821315845 142461840 595629917 11164006 910336030 77635191 603922614 141578478 975037048 562450658 929151307 685464678 773958517 563591931 593531204 237905471 801569573 492504438 677594363 796896789 812628049 636662829 675358939 515646951 560700101 130599217 438859243 20699570 482406899 300482551 504773966 462080734 944285726 832966687 841925066 822697780 956700861 258931367 589685331 842698187 916501905 339577861 751042115 184644176 933824793 9680528 904438128 99836833 825367461 222992570 501235640 966486832 968671741 163983816 296827185 787671743 801038837 480367912 570091431 553443473 613938028 332894393 917532804 712110668 768653431 393545150 476002151 792527315 897656106 529572390 855226117 734786952 960467613 922948682 956357859 448871870 689217032 267013110 996468036 484944944 494063811 906842594 919907522 808480848 956828473 446616094 763325482 340821081 708140848 502549283 769741049 57725002 94190039 339092371 737393501 17699943 491957853 624436061 986245745 431400098 691814460 559379837 582537099 459669767 640694253 813837758 884848190 273590108 380985044 884992403 897881491 767297115 841362074 395229064 537787627 884183924 893305733 701574737 710696099 414066468 542581017 39928609 297687054 155957617 357097066 104792988 347682013 616944566 771354001 494166782 868178481 930948844 998439195 376724112 994596771 925425307 954359192 191544492 628612969 611314210 907868959 386278462 409286848 409417109 906758023 94042050 875672745 837744804 929123334 335232301 768263543 546598576 593485661 504615435 828615615 389407598 647731647 848355512 857349678 81741360 710413548 55093968 858085189 495163008 979850379 176179317 246035111 601685143 770018165 43974444 786287756 654237777 763112716 523505734 985691957 140553962 759538299 816249580 902306465 950632391 992636140 440751900 983600235 272355546 341645076 431969970 455958867 593277709 915685243 204541910 888018426 886917800 981794215 635364276 781557464 722031496 737445870 784073802 802424624 124932697 413039594 913078256 971255851 938773122 969410507 526839629 573900658 191037323 512394359 542801493 686252605 315211774 460218646 472293708 488398462 714302875 881432224 552382114 714560648 844563766 904791459 204818941 292447604 510491705 613364993 167436436 906653947 816934547 944816851 804317204 839333949 717361633 972901986 41775388 763196819 906449707 921823548 116668217 725621978 365768071 800731190 650519352 994301716 164506943 272922870 755057989 789978784 294073284 956243981 916230997 979887003 716755958 950083815 897016324 940712715 592645795 835365666 673966370 903545539 74940270 728768295 625298084 640746102 32472317 980261881 252489186 930176256 910897829 941179402 992362801 997216661 926258308 932795280 249246870 363637795 119545683 935114214 216166202 299350941 437110114 726618213 14769050 200641883 891896124 957114239 101715837 116668751 800757336 862910613 520898 798948283 672017059 764052718 275272136 934063423 916176202 984519733 728073864 749588971 131990245 792800994 125688843 384082766 98631235 578221028 18661224 709320687 405699164 580082969 105954649 500395979 102539190 655691724 188524036 310498419 126339231 154114822 344201303 562185146 385801987 537938643 542478569 542636037 520526939 647241006 318625762 457329810 363625575 510448911 696816033 728418153 114914342 305315211 327690841 870833143 453445513 963748551 484579715 854585454 747046150 863620535 221728600 757139592 123485474 557128331 124083870 862964823 909006564 989425021 185765672 454787410 333192064 862200994 856151845 966529083 983555466 996985864 125424971 249621241 811930669 925142623 850272727 937905287 297393905 421587107 888515220 989707043 684484651 847831337 346396646 449526291 863380467 967615597 363288674 741650834 187515413 187735247 889522753 977919155 184258511 195421792 46205201 413252888 700746017 876902216 542768383 670334317 405400993 775662370 87283026 230313374 164514213 988142980 92046498 782478881 318589052 722532970 656873367 897878583 631614675 893138439 935415755 993345818 741740886 823941069 312952935 649932571 975387278 987818716 698399618 700209258 164075146 755678646 709595610 975523741 267235320 630702668 431917177 763477997 841987996 993473690 908796809 959689898 620835374 888927259 715597990 913354955 154639358 519732897 478990177 936501001 324147189 759302780 86459686 529052390 316936982 378132737 652036655 906981099 619236461 855678858 644546625 751612381 661779380 965896156 30800821 598055258 467519474 589853127 920176468 954770185 523877028 972876492 64532465 943144079 331564771 536727168 549287817 853899659 197907361 671615122 651440768 766713880 155460082 607234075 509157677 569275966 637500307 748933582 307738036 373272674 517159744 613663572 683448745 745593153 251785 686169564 674203521 847090620 663060122 924878743 266467424 519967122 311799009 938869836 92648045 275127936 234786988 981954054 778371923 857871461 716917408 897663076 328768244 835958687 532944021 931241471 239804929 491089203 591179045 797202281 191377336 927063701 185152929 675777875 604018771 622477642 674498287 928193073 177341876 419507415 756037144 884062767 306022677 692645076 186653529 471989068 697324012 951467261 232558517 687993400 801144173 988829329 339626622 891007803 497649589 615595824 518179039 969937127 311187945 677282902 884714442 901169586 245466190 270842768 154166927 686893500 912488339 998964786 171355175 807723729 727463627 974891289 311534524 745087838 615313737 723122511 208916884 619926148 440220464 852706455 621222358 654422233 365630256 772947094 952949100 975743406 372436033 956602752 650348850 652321281 820976602 870354986 943501756 944671534 283919465 863597394 927120334 984305999 785642006 946664869 966587943 979959816 532363673 559089660 814392650 847287942 508951531 578738197 93901455 128574215 414078576 801107715 798109214 834163362 611146300 721136650 519304834 688515976 339680045 542795255 603737516 897667343 496443193 818257747 483059402 566553799 425309660 573238313 991956327 993479269 171646349 376587632 445809823 589635005 267570360 470266014 906416646 926945069 366316651 944540958 187258031 914293754 217121595 441344314 104886283 580294889 330626060 770487951 569756455 859164221 612169449 882181186 89743798 672102219 510449791 768756539 851282926 993067993 467266097 697309689 462935709 830131810 337950010 780521471 801441509 809440964 900368143 919601148 981325924 986715345 861477583 933398031 895234956 942874283 377030476 556400130 324693420 529873029 395073760 538197085 2473906 270132344 354414831 995100941 111184374 310782677 679870496 869736926 222735740 753983591 158234983 841578310 917134953 954039078 907824112 963439220 863335310 874466441 567619428 871417508 785864700 954740002 38844312 699254028 260594888 289099566 875406507 957792318 839939573 844443056 610203577 902042174 77461318 144817027 985016414 997419536 711659488 906548461 376729295 601691604 191769328 929445628 189153458 443873604 241851491 881961844 121442634 659930249 920916444 989627753 372517756 947150282 665673825 851983705 967697310 995256797 344831770 531579518 113391146 784333861 461773332 975074149 107261585 649885722 407484519 855774338 438280420 517766840 215415587 423556925 296930462 975717049 9737938 897365436 270782185 732529987 219401308 705777924 957217030 981779272 355422726 437290410 955513197 980243264 836055334 910575231 607766453 754555796 202121530 912967980 716563148 955776806 637690846 742278189 860178165 977623381 760549767 997947823 100228291 261664031 138912711 403545124 473013402 768234936 469475550 935810228 691084142 790305766 133833362 650666395 347766673 853911010 885610596 937623182 375219475 554784645 222900128 429212202 16454569 507058598 158127898 406690763 695178275 783026118 49540585 753445448 629763351 846990199 357728637 981235008 854290326 875426569 903758677 985286778 56049687 837734895 414120026 994149761 416432005 421006918 52757336 120576528 221520013 753079786 231842596 305359869 969724970 977546272 63347472 764477320 948766447 991560353 706003270 719598836 871302672 928170344 685416912 776112706 957173798 966351589 806489790 840581713 863781201 893070612 336018896 903394999 704103004 711969470 159270758 177603898 636882511 810589499 951102168 969007602 77197287 783523913 852797540 921098153 120009086 681726619 933367817 958556493 933158546 959233702 643349817 876069009 832076748 892137925 69937580 598007622 51416838 702511105 796493788 908418570 779097422 997467235 973356939 975106327 953216366 981961905 68505292 757563797 791422545 800409091 462871286 915481242 724081898 787417501 229121481 764757313 879252864 887302431 478914860 941420119 80089000 759315889 558330636 978931674 139515585 719299671 376437688 826074135 627906153 980327553 201227131 690960419 74176850 808015590 409624851 450700451 527091339 536002800 173579117 656621373 808656742 991298064 189950936 581796639 480172125 940570484 7986291 351359751 470405749 839774206 348802150 398690255 103603917 808011142 434056014 741128435 658126736 714050338 553941140 679499359 819593668 939906353 357946568 969001124 238194157 680223488 922156862 951632147 81328259 398410411 309636191 888316913 573958584 869930821 894152773 957606522 286290597 314831099 441205860 694870820 391760267 716756339 445403681 630435379 941352999 976863170 149800178 423962248 52314181 406272330 841390059 885818182 385654374 971590927 147193315 587460854 437362363 804062738 184172429 777775928 363642007 475074827 811767342 967442636 376331641 538699608 906773648 939793519 226622746 980162177 840834414 992199769 740023181 855540174 839282664 955301568 764360590 995345279 79040107 341855601 901217645 915803605 348595610 451712462 658064583 734055879 903107854 968916496 991179970 999157682 783744181 839017692 490462826 865429214 954116249 991412905 204546515 227524987 901576760 960906188 517950152 980257085 407784201 532446499 329711099 966676882 759342006 794231239 793395727 801703470 301262862 423425046 149171090 880241778 603967118 918066832 548848689 700003186 842090021 922341724 877521250 990200465 856522452 866698597 135635467 443976476 654158553 772116048 81641770 474626663 150909201 944799702 839705351 889581434 457752836 919733854 904758912 944559365 640018972 975229481 673488075 833674973 621243549 850931482 107762134 865489220 812996097 852715384 570044182 733233196 292295066 897504931 683830912 934263056 986551961 988858808 271187912 555211106 233337982 372601064 877246725 917648073 340736048 362284945 13129511 98420471 602285263 765124936 128239275 246570870 687214781 889586551 667579669 911663571 690975692 905122541 784836072 877314485 811061718 990207595 160175723 697488552 929650949 996946374 598088574 883062462 662801277 790360328 489961068 960240782 723667919 942954164 205388219 787814867 469947330 509627289 957431466 993538112 923096880 975034000 714057271 978769749 144401340 692015039 577910580 648248987 256108146 830749682 847577126 857932636 518991149 834569867 370151951 381592636 289695968 846042372 946737401 980496856 919223671 966591125 12297858 260922457 228633800 579008416 984108060 996218603 880572354 895248183 753378715 774365847 939302133 956454848 2631008 537326705 806117671 902741947 658909650 735570369 6397826 750749995 741728885 769443662 552904894 850068490 815557548 898986904 145452897 398076329 368768150 777894577 327666973 416372752 22433769 489550545 30176226 560967424 542967450 809736324 812190383 960725228 558620850 979434772 950242972 975954778 721788898 782217331 943741998 949472252 345438765 570482724 1786354 973982092 730293763 978962888 283918298 934677539 847160583 946477365 581749289 612356503 425767818 927483506 449948352 727988615 699095459 716294566 60366189 632021167 118720035 685857345 495706065 900694713 645478116 879970353 568888240 690882246 593718921 993741896 340043323 777779959 832056742 839169374 880709923 978837126 370369761 771417574 31648145 350551329 577710429 633470658 856545126 924541835 742125853 829879139 405827098 701389064 863988639 900869416 64957388 569144513 313159818 779231619 858364797 956377755 981033358 998203311 330386347 881161641 867643821 931462080 227274965 884152012 490829991 879214082 462280024 836405629 224946592 261956363 390991899 891005752 830704029 831986558 971715438 977605555 947096987 950281566 67032888 805744987 417315156 950810489 595194336 714619923 768895872 870432343 957753108 975785001 774509787 784123789 661177109 882877925 48509926 156262698 755342288 991698202 505391506 683791640 395576421 837616838 997294690 999298499 568108065 819338937 832644395 879667590 895942010 999172834 52364254 620770586 755265643 849102627 553766207 787255455 151850036 168586735 858456088 924118286 892584178 959900907 443349396 492273027 476580630 742222871 784355999 866704758 595275983 702361773 588744611 858787243 698908110 822944720 492136940 559505161 922523616 957033525 850152613 884459642 945728156 991604079 178947061 514744625 715879875 829978791 511456719 726369951 346930763 760600684 529610821 858461796 62808593 713546350 392449461 470322140 364840494 477778480 847443700 867651516 825979652 939463556 678227225 678606440 24689871 864794777 560574019 597165467 997560202 998550609 466124604 604952936 465444816 594008175 612611368 815599123 576863909 688359455 818981989 991297514 669717768 889515132 494371717 771417601 992449771 996692331 765357977 950878931 326944528 416331032 772124809 900562205 100300485 872366624 905053279 921062589 956506425 994982192 75502563 334451547 204380924 452379004 696621754 893278233 518067925 733406842 277562086 913027807 531859291 663129641 585571969 915603945 211920253 887428772 921822526 933315084 124495761 414918138 411423411 702585114 229208310 245237393 333443503 700719525 62800248 707465735 523586673 979462258 313951465 875649743 280743807 405098900 81331842 906571013 438017063 522603764 598156563 811959646 323428291 383395406 983756094 984194505 191128315 837085643 796330517 927604585 101057883 213633258 33791341 531012389 299631885 946487124 223926575 654253121 374426515 490955011 649300393 770912157 567290235 902252691 680599568 907750373 409440830 895990050 977840845 996359325 250969283 369989393 259404694 847081684 878936365 961028210 61837813 678543469 371205011 420617359 778450442 970041003 465037087 686938083 469832099 781013084 443656418 731397013 692869071 713991502 202525170 539142171 864715037 949959496 194118664 709889002 781846096 982731253 675440475 812758044 529934932 889735057 438803874 447450296 233899279 887830691 938759817 955718526 819335255 913261121 202815217 575983443 324346921 721596338 209838696 717870805 177627656 312899509 518602636 945928615 479367408 823326799 94925321 829996865 96012877 681301565 449099269 598697375 106279321 550939331 159037605 407266604 655784314 667505235 872487815 955017039 433740397 704327968 125471350 192447068 440054468 931082447 626533759 936191821 790633628 810998908 388474385 864831848 85511400 618204561 108225365 123439491 512499022 762078040 142653267 655716650 293211407 296926332 731127667 932799101 929109302 977542070 654496545 943538352 343524537 388556855 166243653 660260967 963877078 979039536 848541272 919768204 658750785 709600386 329691978 397167564 791697606 985475245 315473717 955543353 661728935 989891705 526359367 798475699 512363483 847053134 795526531 842096503 279343158 963729898 271806026 408047096 899430394 995241681 188571429 783695982 961743900 998804100 723078253 882851010 89578745 857777131 680963312 836499297 979217574 989061036 256966353 510337735 264139910 555599111 584138408 693468485 242594690 327530407 890554832 915643821 154257081 266108288 151019654 444468056 975484603 980773475 975502620 992642924 876968084 915992026 716912031 923713767 161484679 870142284 942025836 997960235 902498638 944140716 756616150 800117758 348543481 708030703 806697719 903889324 344599121 629117404 527614462 702255743 623863246 936092692 21221659 336818445 327812321 464680237 246889568 666031017 635083634 959632790 232460773 661490891 710667636 767540932 901692205 972387448 918311065 931847097 315090173 472858830 473538036 640410524 204222765 842064932 180233713 517889454 84115137 535367326 2939126 407079124 749247958 909638929 150313815 299633908 601819503 681305983 471394847 696155744 240701475 589326291 811065833 993362721 44320020 322951734 873415958 986063076 451112370 976357849 983134680 986780961 888062380 985449945 925305319 945183052 155076016 417108043 618618858 624274369 273463386 587470855 212772144 896705376 653421176 771355015 720392955 821665162 382091845 741404083 371690419 577302239 356024609 780172028 241479273 695734004 642415867 713151406 391040873 945098864 780400857 879667362 589368451 615508829 890940443 932843780 909186807 910355521 523816991 756588705 847613395 886898267 611663062 863189972 599189686 695788542 866088521 898236830 192268250 447129234 522909095 894529219 952996482 971829384 730342442 937337551 809669857 897540261 949249209 976967957 485090659 997296747 547722266 821391213 396725625 414234774 974952805 978540182 979028603 998058141 233009754 670276245 497144079 893870682 230560634 662952994 55272730 60597827 707953513 897062900 778683426 985870974 969515005 985567445 438290753 875663041 341027755 887166400 571309876 898464924 920320881 930638803 166924026 329881395 381868158 408894089 559007595 864368811 262845096 467900995 392965305 654209683 229841553 645375126 908505026 950851804 391569991 682960182 415841735 928581821 883203286 983147060 816979957 855732475 441540538 727051566 155657250 617528786 101631631 416017250 104802701 543846729 507487515 640858610 342963628 385640242 827230989 907999115 579255062 782000830 464558296 601301296 716847780 920558642 40528344 972709618 285227343 568875864 210494062 533915430 870927173 969151411 641970323 750055935 917589791 955215286 111639340 610654249 350628547 727011252 52528780 391274356 719274385 893297795 553773660 818027296 282766864 913983508 450414369 664382435 420170880 905642406 20297870 835757321 200444774 204718750 931987891 995109505 997503319 998092496 252417516 585570413 306516404 327424943 862474263 932293531 457183949 842544556 870149660 981934695 280021436 715889921 403322332 920743783 716306870 821769108 76311533 384833859 873570691 878149832 959140281 993316027 255587367 755283533 217695594 711247538 803592758 856443860 639107291 651913869 271555474 431816111 665654625 980879839 155900860 669546984 91020489 391153147 765162666 864017436 314748874 783462801 705970106 961615288 22037841 906093073 351504609 993327791 116809265 508672182 151297725 728968055 109888734 260199885 271619105 984111420 74190776 353406932 91178657 605882294 382618731 445938194 136750663 748471505 827061175 830961304 410084388 863817571 860849035 933714217 989555930 998563979 593126606 683950439 151834464 165264066 12946304 778530592 258298561 977574784 801576111 873253987 881120656 943006163 524989644 963226142 905379840 939015169 489617490 655841774 882273552 953103779 133492145 459227732 476810384 478533906 555111199 680958752 445168832 799934231 284057735 629967230 168714022 930316290 88633684 579378524 565614602 604199463 232447738 369985635 796968139 975255023 343034894 802117760 367119383 919167017 945814490 956764537 113458412 423520670 301478472 600246243 933665806 967915311 289300304 760667191 814814169 823028469 838664278 882046557 769494124 798310861 505246166 627586724 273739649 300466781 725942900 850910016 590590786 712514747 148758639 660133911 374464416 903901727 525704277 905495546 993965428 995961293 542382631 917377100 42161817 583235655 16892237 58964597 890931987 968122795 221955483 519475565 312455883 405535164 32485893 104772467 619587532 813905698 610128434 790437869 861601475 993326070 351907373 742420677 29180007 606656647 695225084 840175164 383540512 770026326 687246125 995704517 937910953 950763704 534961744 605899964 169420261 897082826 781661427 814139100 437086926 767439688 179545808 401854742 988697500 998162771 206027944 435591186 629094624 929325209 316998511 756028594 687492394 952500710 445298791 524612313 321040307 330772157 113947455 640496733 55744525 465775282 236756519 315173691 340592183 487416229 159588825 948701723 623962802 751584722 824270683 965957068 917810679 924275724 658491782 922095653 520761751 524270456 404510850 845732541 260903197 474200186 252633739 798634621 418141463 853197434 247370998 390235986 984973517 985567006 974545354 979837150 208204727 873391628 165905654 989477884 787020430 843097464 579510145 717547469 966322992 979060226 340788668 888701837 824079618 930495229 770541288 827883409 813031671 968877793 282836170 786170246 987988836 994006570 501691784 626792185 157538014 179923613 841314890 967023921 647958981 985094150 175796312 635001674 800140942 956414261 249215392 927450649 359766308 602774130 896195607 977415455 540017258 646477917 856379651 905583247 184900049 721209666 459168146 691670397 930344560 930651731 83838385 962960672 422780065 601220731 622332059 905191005 291480750 562432691 246971398 357152835 489176943 985599248 695002135 797287984 223196833 673769012 575340890 724378592 253263238 440650705 74080615 701556787 504999064 738395895 88171394 407406390 997691256 999115432 366895642 413125939 343381813 366746909 716057711 857601847 509199951 907389967 272695907 731370695 341273332 577129357 684973163 961109146 248587996 323874940 825326079 875088920 946649131 995161294 291712894 791097920 263335342 760934024 486195827 945203418 208453847 520657257 728300562 920627172 788451821 869411936 74662463 799229917 729499889 779103572 684371543 739671224 790688413 862044546 383049017 956893694 806802202 902244008 422359940 704822608 503777879 546104962 912412635 943176288 284696855 972116180 127750395 977604725 19348014 955787586 218416407 894363515 626372760 906297558 450457682 716917481 894200905 976658227 987813924 991851036 471511742 476859291 582855530 978429695 553317039 901660343 391726747 680084779 968368498 985999397 881194804 950557723 702353571 751250875 138106903 885455929 333735941 687381352 513279563 714635616 930932950 944477751 349356414 795570629 959434175 976047248 931001067 967476581 740894786 906091349 570162416 609679612 85994195 386634024 251447528 543325881 629142129 777353301 880596903 977837179 955602431 993772375 169907648 321382827 710848672 760546887 403366810 985957700 167766119 345840840 786895198 915805834 882252170 906702203 430819696 757451845 394971617 681141594 92993422 483931471 960734065 999021870 542314746 900077277 199814604 779637333 176950036 709720314 680574384 796113024 470703834 776295405 400192066 942989534 942489829 946514795 110086318 547951053 389489110 616710766 693443582 809246664 351468827 852019796 117803573 191450689 274554442 712466496 145549038 333514967 952896954 976221802 877499525 901075639 514363923 768898844 561020582 802124279 357924026 638138738 219495691 937512346 243426947 721564692 181226023 292046875 227294379 309313199 420596076 713952095 673591348 761286897 285454617 668527211 786604803 955334037 416066199 994629063 379452682 946780306 743537976 841302002 116278200 442369245 917525220 948921810 893717221 905088618 369133315 941406966 103251714 642877863 14445013 110465395 750996984 863686588 309665041 986256452 453454262 749840667 661113347 908781103 590913726 858386503 478687011 745046878 598744103 786380415 504075947 698634840 818987098 899371326 907427982 964413221 837353826 976079961 887257720 944245275 202297030 383532148 853221362 919713201 487931417 609610215 712985622 794084739 80117170 640470901 604517859 969183944 638148530 902970901 689927703 884932466 783185156 988485887 353256375 431951279 114922671 252595921 470272071 544310270 538401025 770251159 717109843 992959385 446677019 951636952 750167783 968605075 971066986 977402306 596657827 971155620 362113706 950426149 180534329 784793759 986748521 995134221 324272689 970753168 24414168 300083556 919100594 989647465 919289577 979267602 585720240 930841709 862667530 974607309 708180127 926432035 330713255 641877333 483529042 485861441 786401164 883598079 537559393 562267413 131380738 921146889 733417641 741111783 142892747 304163339 671297238 972576303 433499874 749681747 343647180 427444675 645314009 957827420 791663900 943083375 535216318 977741696 862933694 926818812 685023355 797377772 86660178 803470237 719347167 951260699 354099897 809895776 347328052 678975568 60492196 78271761 180376189 873723136 116887976 627630405 688295110 711113793 887393015 912076587 142928056 398962034 441883865 597499098 994866373 996221723 709946649 949277438 983252028 986317128 301836452 488851675 677624812 839898762 215463121 745877165 164280096 867019598 246666706 617429537 593796867 675264293 911367763 912575517 989400665 990023467 886528561 976412623 724084884 938805078 446363253 812729376 336210440 765818076 633661212 711721993 268477405 860591546 273236802 587481189 74336377 433379305 982574786 986643998 620651660 840017342 959538624 972705110 653198171 732862663 506144550 640338491 860835541 977076751 267260073 984594201 980245264 996885570 500319950 946968861 26978806 881881166 901323141 912549845 498406668 950046663 304596367 473304275 622401135 711943688 90467950 421893601 723108345 988773289 42272612 548689974 26473339 805378859 132922459 630732711 897376831 904016522 728549707 913536539 875017227 934098882 949236200 998595334 953781984 967190232 659534416 983714244 925132504 958780206 644894712 724791607 751708087 991644823 552679544 614890291 894833715 963714566 988715934 995454314 996135719 998512741 848959333 974312635 227494575 446333252 572631656 807464814 791493530 926607247 372574607 880844617 24149385 683704432 455581861 663080126 93095890 358583857 436912330 909965256 806218876 890305421 204321164 821551623 111202774 644578501 157013968 609989276 385651743 415701680 479919756 713957417 161950294 958555469 10192509 941052071 194320077 287391187 150982360 796682096 962932768 973755628 409955443 588488972 518502400 879996810 756353543 763172327 150430127 547235736 145347593 755406395 979954281 980814600 876758841 992142226 668485502 812504078 751022268 830306579 433637081 777838245 315050038 440918299 444311983 849530272 669999689 704930137 782010915 814342761 877418516 899690607 87127128 855131863 547026702 919191612 690852959 897883452 202498623 423687492 508053394 873064173 655342053 991033686 638903934 661226469 406108121 584508534 431130208 645486021 239858137 621920403 848180688 913144091 580628383 680465754 180386048 641333921 894418222 926735381 283552156 283920192 740898254 983341112 596101126 616247201 25638039 869358981 973451091 982015294 541836449 728491105 762825956 979604944 202645171 851451751 166129100 755200679 405396916 675179299 244074233 903365830 375119148 900727144 993599361 998345840 109736539 867380342 805475179 836221899 964004794 995308521 670589484 677911814 246732668 642901943 679227863 892344479 970788344 990532126 293115941 475025844 735625863 828914982 397340032 971246612 11799149 369900197 633204309 695865897 811952754 993973964 308063949 442869803 431311206 582025804 590932268 945876085 251501683 472868601 937115209 939671303 352960995 449158375 382631345 485487741 237336563 685410529 262828394 354865298 10206013 712855301 957631933 957933678 813007871 926812328 813755585 880056440 309281408 878837134 796750275 811326106 651417363 855985894 576431566 933338722 916987775 933373870 208536679 632501703 923292984 928242078 139909311 671205223 759566265 795075108 491117386 787349722 756563975 759069710 213914013 258283841 726661600 896571639 874087574 895561344 279963090 401338751 900328470 943280123 670602954 803789432 596923302 876490914 730019652 885015767 475062834 850299662 342645534 674140959 723363662 858976817 665629888 793886276 425286383 433310115 933884107 996565863 922510989 936939885 113082810 439523019 817736465 899091024 592411711 746045742 661916602 795786620 187138342 204370190 500014429 535165707 41692038 380478622 728327540 846623516 296333546 867973630 627227716 899498935 398507972 440467711 835707966 850002373 124095217 359130179 536495180 965932132 401660350 868878511 457432792 880308443 100143340 444106022 274217798 870770126 884575606 950023939 271779345 762360466 689926135 974009018 376994635 940735337 401741460 675410302 543441359 793301934 134215203 917853925 297441052 543962866 778274408 788264662 148462108 635857295 180825450 552355112 223789018 332855737 673075370 998760976 409668836 530772358 547689335 722218673 824478042 891269559 396763344 836899290 335218648 556424562 268904282 544694652 573661919 850868532 428819418 764565700 521225490 809355820 654233829 721157349 216621900 359615578 165181828 843866976 883546072 953243369 49161255 804787851 803853587 936734624 127917332 841908467 188171582 523424783 378481419 697924659 893663657 998658948 955751981 966397479 747094296 777454009 911968854 975726554 756591431 829776431 271364614 544526782 915041680 922394737 369129258 797052267 206379767 877310476 294796249 858243979 862526368 867890369 221645891 417780270 962868031 993542243 575761084 597470478 663925497 796045450 953637074 965817644 720215916 731796433 142743151 438269361 426965609 515038045 909463270 954044779 462460714 577406428 703775371 859599069 399838796 423959121 751997690 753321435 600203074 779286402 914741059 938350455 429712795 882596397 808072251 883712932 972106096 986041335 576297063 982634965 974899329 981146396 128345822 398480055 687445861 773250164 789298686 937623663 712876316 986284020 964455261 978187644 650314654 952518121 745988382 762594079 331683093 498458726 542376819 783144705 120847163 174357462 951051197 951631374 345202366 387630944 197130413 301336648 538744394 843629544 603500834 607439201 35799494 974457818 347983308 753467176 288688927 885723100 609434914 861362307 726228348 886335172 197718613 652248117 531611088 685527381 207849761 925056462 829938825 921523714 505647315 554415315 419914274 948364922 997579133 997880371 556173328 794578148 861053696 912682623 925677183 953213598 826505730 894785393 506902626 640998106 34749971 131986278 949273751 991491655 271988059 472745451 603849890 802730611 522242141 791637185 25275295 788848122 384792163 720580623 872191327 887691276 535701834 626083529 138802971 323677276 257979632 630417874 540885804 918088272 67476433 427076179 91104499 289304184 959593207 989904486 337084159 862260295 617452236 877666639 310184883 978409035 58331715 343587053 752352601 844753045 812489034 833874273 647079561 937785723 948938731 993827707 425171880 680094222 139244403 619104438 760865504 840232942 364623939 700936081 654868507 719316866 347037788 675616916 359162416 977695132 903296664 986563311 862815581 888425457 206479895 345986446 183751899 688743386 979482944 986055631 889674305 908997593 636064915 971694412 445618682 861248654 955145733 989411889 139106855 379091819 617125038 954560350 222657690 986430791 110611310 542882783 230195450 564717830 669028551 997430720 30756562 340369215 802315556 959852848 571963611 791753930 962936122 976734386 502491686 623447760 788693940 932392248 927378672 931569105 107482529 814922944 435644857 768311490 351328453 982478781 581309893 845588920 551275242 814581316 594922636 741598107 18302342 799556206 887174252 986868760 231517537 899952927 93783455 319411194 709832043 876099005 996078366 997893105 759514271 944447767 464006596 944453237 342677700 372900883 3368116 239251999 724684577 734438464 200573555 718758049 869044677 962613994 445059803 678538486 569528127 706313291 46093484 141236543 951889657 988347885 564294816 591977015 58344079 854722624 118430044 936166745 33374966 207123827 792473392 939875326 580006547 634304723 119170680 589462699 110059399 487928507 468025862 573476637 793570916 977137493 728270314 977326338 637382238 754720682 428809618 500733303 990644464 994428924 293637467 322151719 608750319 758094432 460993247 525170686 706900079 789373788 212520417 944701519 369403873 400986538 610807958 744872983 805835948 917647973 223556185 697047351 231057447 664609618 525406002 692529851 294299271 440181370 939733617 970720911 702119677 891879168 841148648 896990825 233814266 520567683 869280936 919032835 557505057 895149711 704391028 954855999 753325226 784235990 568438031 810803976 189348928 399401416 197684822 986713001 447023782 852369019 799336006 920338696 983009550 990843563 636302351 840451495 565223737 885255127 171071309 918898491 331932559 432045860 974832137 993936210 429078606 536260259 108768887 709082812 375682051 755189145 427623432 777669535 220439953 573336478 580097357 823681243 113520083 782679229 455211379 934896452 918834097 994821194 571047096 895074669 492710066 865617189 473215099 757296851 984541790 993723621 759283088 943845352 204114394 897299809 172284499 454522281 921379645 967522278 960317086 986889480 308925771 795142610 693375459 813737343 692365075 693479687 164376305 533523384 208351792 345929798 762248083 795478011 361029864 657935547 591093848 953577213 886362460 993374976 554045650 616991709 882035954 996123216 916400633 962301488 404359012 458850862 622736664 913325476 679029086 744695815 53739755 526770949 753969640 831690386 975252106 995016982 327926932 394483442 444059984 643509890 559549005 585214303 51030911 506315436 485992441 831423244 988045617 997218916 117674946 225920836 887189263 904034995 377518961 632634513 58399555 591107706 394433563 745992959 12446164 762968481 362016346 689269174 981581391 992167989 333857774 643946786 114179436 842797268 990489470 993277138 414216149 862669417 779978555 919039422 488697383 816893789 72939445 823226418 4805137 683285728 492146831 919613102 294887596 555227779 361485653 806693235 248441785 558993837 619907855 992036450 601559346 667243478 160733603 241132781 548269837 619277742 691798608 871184521 930763816 985968367 299396816 623679096 944157450 984238926 225362183 918196156 54972812 917231166 862522462 921642814 801227029 885075692 72555066 87910164 645616451 665248290 174891576 682810953 318275213 697977194 572123011 988805356 678084430 771313979 932535185 977459721 186216022 771258303 914380182 964379532 523102659 877579759 304105941 955532675 35361457 597502725 398884981 681800416 366119527 674758288 691538878 950618784 615866897 726113632 831262411 868190318 995810914 999317216 838210944 869782753 245573367 990389283 215955677 929828000 640367617 738375246 347210320 578984198 21564352 557954674 206087000 472769746 218659129 576700385 287624587 438226192 808641442 819860268 466083556 579577774 896419973 941534373 284284565 961080438 180391440 894424704 65937930 661507403 578773445 889278729 639988274 863685953 108287330 528126512 364172811 682836557 754799325 778849231 10318159 836567066 101902584 232123715 249187794 487225705 176252377 682876250 445379440 897410199 945798968 959340232 605677724 788116492 832307150 984094857 816976927 922750873 477817627 510344006 152714297 894643085 68956879 573592074 231736438 563798181 299361511 962308422 46784624 210398579 551265021 652575438 40153351 312483214 494194044 589371979 286845027 646335256 662976662 736791559 159251685 726144198 785558488 794062203 210138763 754613017 462519911 528904814 752409683 859532601 704919276 743857065 369749491 981124397 458204425 984475793 888730358 925907217 240710994 553222892 692202210 910404195 493911579 574661152 119280919 430954202 678453315 683571237 153155819 237004068 117217832 133910942 729888753 779724724 365959495 467214889 276820919 615836628 732369423 797489484 73019303 839292093 467065090 774899076 771094598 992562420 541839821 785614712 804653573 905301839 860050896 889556448 294961404 373148395 746829370 994592129 757035178 828589162 159971656 193717062 530216298 888487457 333726964 901959165 148629871 995859307 508168428 729842967 506097074 683722378 93889616 355677067 685689688 769664384 75659893 809612163 166990844 918742953 709917262 906865044 47211274 137359700 559483811 611157779 935841616 994609329 17156329 559045599 123360650 849241309 636365368 652536888 851674502 930226807 767076887 988304924 877811976 995434289 349588964 801018990 803686038 930928227 572715360 947964881 807093357 979388044 202099517 750265112 892815038 937306814 765892403 988762181 546367437 831085718 727863794 810836637 868047861 949699976 306364783 603102943 966881877 975006869 187217111 693962294 479650661 826232131 289802115 429683743 676471518 872354133 690751812 733995951 901180134 953052803 163866083 568021629 370617748 980370473 313596106 857721114 159871987 961611810 904517477 906009787 381222136 784459512 465267457 565230586 140169920 770725026 915312867 961454372 771573840 884037218 225620983 616943036 206560269 851036331 553460979 979203826 854214017 946904970 683749870 783781777 681927661 860486737 433008773 662573575 915435412 942667885 919207510 950433617 92429013 855077831 885936183 944439981 573608011 818968568 17027665 649225834 239007181 806103714 428581198 466158427 320000460 465851090 503570026 980513405 960822374 973034051 41817056 912544334 475414958 833050893 232012203 811629932 166184015 582268641 710413729 863236369 344351260 933739717 978649629 999281161 102582925 772650899 146758184 474325027 981480156 990145130 715721110 827867422 432872749 697696863 241711835 589276180 22343903 988939902 140993996 600264323 536874129 749516454 691326308 957582916 93762125 217802072 223287383 642544614 339524906 736806523 129439972 772037562 305037631 649580562 98094583 144859433 296674367 427478112 454041542 494611476 259113112 855422486 625775856 881511000 716610533 827591969 761487516 805029491 395161184 752342435 36705346 619986422 954336991 968723615 699740387 719597643 689647898 777698528 585699261 610385637 60266397 81342824 159202098 441355796 875462241 996960664 692425787 894845563 648297709 703433476 276953465 825036409 894863676 965091385 43366584 875982737 706863664 818553729 599193716 603565407 837385728 906868570 823903562 941750863 899486225 913089896 761565103 825244404 896306581 930084094 610233349 866137687 749923521 847586670 752709243 963959122 12331688 41984815 22526150 81738670 842143067 846499571 533449284 811746944 872665429 911843709 258880249 347606581 840706576 956410689 541852533 938983049 458546832 679047109 156411896 392105125 197121964 531385773 30478103 228752777 285578720 322486062 781348527 824103940 624565771 964302269 440978876 917440610 620508873 863197145 806314467 835074307 663572334 722707375 451073447 756214837 759291727 820470862 433315348 903290427 843300088 987566931 76693246 144709331 263373806 680450372 135281005 839326733 557422831 818491606 834956686 876659364 829030758 943487119 84241517 953689290 930303001 958929701 972997246 973705137 162089072 506548050 723162116 853580726 138310032 721856998 966986551 995372272 976502930 998241076 679360437 846192393 705383905 902882218 653913967 831728566 625820950 725597579 615226704 969976631 529012878 936502712 318864577 767555655 659912961 731451908 766978280 801987867 447735338 598941026 177045322 678983211 402486036 481369598 599980972 977493465 884461663 925409556 64016348 404829440 524751934 672415454 770947022 773385343 245038892 923337069 805781186 934919000 681343635 934259018 153834911 612932321 230788346 969609382 406770448 779921120 881301092 991977373 460081452 675571327 735789566 782129479 621937170 757378550 800049349 824787840 517993170 864844187 706962751 839445157 391326334 495283401 378226221 920074895 818168984 883489425 465428075 931403613 725064449 886012631 832462657 994545389 1377972 759853658 241967380 599669181 912632855 956468232 988379284 999313295 983534929 993575422 756203696 950227617 875636286 902232900 642766983 936699421 848174360 909420661 804656617 809592663 514248403 570696112 222588054 955376543 48255672 383933240 753425090 874079528 9730236 876331982 196630239 752912805 47357582 123310389 326513076 655835415 845961539 998199306 460676557 621501578 399435576 515642505 775632873 961675948 253763052 648201937 701970929 780350187 792169113 817217840 740656724 880468121 772316727 880352222 55195771 151721377 986280741 997247327 196026174 601013942 648912093 916240122 332376378 608074483 913593853 992318862 821303411 955679918 229056227 488823240 609169646 918122170 601076066 933097940 776082728 934781089 841167303 918744489 297477709 403258447 784608216 863365586 174128569 986707533 170214106 779873813 359972798 666065499 680742808 897499409 51539563 495038987 373753684 897471495 356816200 480426040 905192602 921879142 878513400 937746258 344810798 862978489 151303313 635555019 825327632 995660941 276224229 849159694 712904949 973247637 3805789 426944141 6698714 998599487 653850213 969418404 285511542 308471416 190287215 389099296 610880098 788242909 226505182 459152831 233384008 341474681 894085572 979592294 712008987 964282845 667170845 688289952 956811643 978002936 209824581 231378093 6156455 307379541 355287996 642521877 570815880 732464878 277430827 709466599 292063769 873703502 96429192 555113860 103177828 953549283 166125091 372137565 627995454 692584482 230434822 910059913 197455596 316514245 855471109 916885608 697662333 898456241 144696207 283125304 709567609 955670536 567792045 817593493 906789623 961254673 42342779 548868805 698387094 749884484 851339597 926581394 72787501 821763265 861587838 906893620 848761585 860583935 531705939 925612430 637434613 675091411 142754478 444302949 180516814 887605168 908407657 928907328 730830158 884778693 461506733 690545043 374275481 957927160 776393331 838912138 708906651 848584210 431508053 671017101 827792007 893508590 864479334 976658680 652318634 817020343 959532206 991607769 953461653 990328550 78244401 492392362 212286577 313742684 100851954 779978324 809142054 979705450 807767092 812388620 652439117 956210790 526152719 856183178 6670661 255434102 888347298 973163523 187703964 476565365 184443111 930613106 961847533 967088491 595547221 620410889 745834766 883499685 252255710 557281234 954574983 963096647 369794879 642518023 412351718 697848361 190815714 936400443 715337891 935901638 255708576 862857727 954199998 993664456 698033134 817721436 834131271 992796741 306963344 918890036 493563490 645053409 696335004 818191794 64982531 228030839 259143186 381007803 482386212 700901976 408822145 987621907 154454198 526374512 500021970 789446906 524173147 736654845 483343067 743563514 602352035 788763061 91632215 712714858 327168640 382789310 359953917 547164045 526624331 724705547 329721806 736621701 995873520 996631310 993261435 995243485 59638575 65312341 122144229 464419094 933098517 980057500 63442983 376109411 161357158 398758799 377248571 535703651 686906184 962570252 392632037 854218214 299252743 951519411 770133516 978554007 842232555 968568521 808685562 921991419 353945176 608276443 951751790 989757138 147588207 499043588 582229094 846489547 557946383 919566255 36196103 617356546 857749931 926637511 89572410 678482577 842776301 870720678 288725637 508212007 822530321 911459930 875871946 921956181 778514060 820959100 934249840 994224187 381089807 429404616 409042584 586514202 38122436 481025676 57044618 329881178 387171569 558342088 118446067 412583322 655389590 800725009 113648821 848427999 411677421 739576814 306534264 710164154 269951448 813133909 136481889 907263559 881638024 915948615 499140382 764145912 767999473 903819634 706174801 834622518 584429042 599289613 655138163 951558461 606311562 739760233 263526880 889243415 830722802 912191076 651547968 714101505 292203312 373875768 894432597 927571940 280043890 403808063 823674987 960147580 658499358 744193830 671663078 678037406 566724875 973789328 662460874 984331568 424419199 544464222 213533836 490749496 209684262 699935902 647793322 909886439 666411832 867789121 371781998 959393861 675460631 775599780 192737848 635890545 29893069 620784413 887342956 927126700 509560122 591921689 826767847 887462030 122242748 303655868 203860076 808904735 466510351 936227311 463205289 743624325 557198980 741629303 409655852 753369872 490214763 954928027 975423641 980654610 516171372 646460267 586530892 647999646 952628857 986226951 369909030 536009381 395648113 411876340 561529077 666956518 416363315 762955634 171510900 349581692 985491982 996398192 293728146 991272764 68672436 381750224 445752720 505471347 174065186 175422532 214843013 783912933 706859746 977713656 81131790 373988655 155320688 506792093 65550309 91035874 428717314 931088053 232681647 236304766 870505199 907262028 87015850 364699648 942111527 960054059 799637628 967908996 238366186 742899936 859337588 974516165 494077442 502118901 637094568 671627198 602509927 880348784 800856564 946170184 592322933 680460076 704881284 740333131 315893603 524586765 145798884 965565829 147693653 692110066 182317332 372150116 910441330 930448353 385591467 998345206 825989293 930679896 596098451 611550497 20579304 891989200 579646840 850933394 884743887 885684162 382404503 665593822 610673889 898743949 59683338 569772148 31339516 622004754 685682448 883029414 932520409 963057109 924937201 948507096 566728079 579238944 252137600 402964339 844926062 903971073 152420772 399344167 965087241 997558926 710183320 871370008 209871721 271393979 429006876 694568384 741022465 926882391 210424448 365441034 697563104 900087163 886589788 894256328 200859700 923004167 345759790 996156308 338135356 375191859 871103613 946165740 903495592 959345084 761168156 994385993 520598930 789875307 379955289 864425884 819079101 915788387 612602892 834067886 743958458 761269215 20921822 607473823 27195934 300211594 705044459 901348232 239028463 498180347 228562557 776874924 42195237 244157705 990107522 997282211 127662037 587132563 210543674 547501836 710290191 741151497 675319655 962584532 739272963 826271033 669877817 873327654 523179975 783153302 883584366 890418959 170878084 214836098 450560917 484085114 188821576 759240456 103622179 371754060 761983132 942073948 518504505 678840538 610566661 709438574 810362184 834792040 551061558 903371019 796428916 851518946 895383176 932046065 139359068 151271178 146049063 410011066 815405899 907999193 315380837 765514838 580898269 856298799 149013767 527722796 688552364 855850503 773482416 829180310 964572718 989658224 331099629 387428270 769611481 993188381 310411491 663296543 98476618 511594693 435484851 876052834 627793257 695482701 361266219 615161318 389283661 552230934 377361213 746347538 552073923 868740058 134712409 685209354 128701584 802093127 274477834 497588396 537453502 774810159 898716385 992343649 837162747 882667737 683721429 694928529 624832755 658918507 626490031 803506091 986314665 994184896 851317083 955411839 325042501 743966933 548168081 794520839 444158059 813000593 70964950 386446185 909733582 968938730 740975350 832518862 482820257 772557897 379813434 962014601 439654495 940853948 102116203 681399178 556628968 789573770 405840763 497871302 755958171 944335176 417975570 776943228 70924067 510292791 181145803 519085982 987927555 992807856 4345796 445794007 182173079 227880072 501898147 927861609 726826349 751761387 527303133 751418099 866773272 940287688 199595053 587311397 561238995 957564152 388004191 989834344 46274729 633769109 219967388 603399172 46115918 767627941 251965425 775271243 837918844 990877833 320084748 475886713 732803864 879433540 236336761 266690880 344162622 835701867 655013403 717517826 905873009 997073304 249380835 581491428 108501593 913580818 534257754 704905025 681098713 923749386 748660334 827899490 603479361 631025878 153367625 850467903 84431583 671211883 34168838 637737007 933692366 963244053 891825750 900280008 57684121 808980665 827342027 975619306 641719874 912170317 567208781 733900399 765541824 923895840 882012200 965476559 103067916 531452711 481737238 535922488 175219240 674418074 562069919 878817331 562963046 969748097 244598783 389139109 80545511 240609787 931245685 982777301 550025467 878647411 730219256 774158605 172281849 963868927 952871038 994629928 173997040 742068175 966778608 989307337 133535471 225763405 822491296 931115996 314789440 692825180 774875628 959900721 593898007 724633390 594588940 668605062 481456047 735244442 327212204 408411906 779610901 995776248 854357378 993682198 602977706 843392072 280294002 621467941 340560839 598590315 385024493 786706548 3973558 303678498 874948851 875418335 682708741 938030156 261777909 368495225 447239605 640499299 447020301 483849834 915392883 919758900 668089930 971705418 889707430 925786670 269746045 971559112 718712386 877041018 91300518 952463057 644214351 735652450 26404955 305539788 547773749 881777462 883885010 965674288 18526949 502745262 748748537 901217591 873117114 983704994 305376890 736772887 707822170 787801269 36549314 879136356 579877840 993094471 983344844 987247236 476675228 636998756 96367806 394566949 750586035 955115564 211580602 404343348 617629206 617942886 133594122 398624263 748078654 776775587 918422570 950543793 288615126 543856118 371164785 943755134 620138182 921296280 213007621 284145950 253168110 569215125 864737832 959117580 434109641 581618792 750799989 887505447 919693019 955584804 86923347 572209472 301365746 795770684 974438154 989488238 819352864 822966603 346478233 368496926 516380922 862478123 974625152 996150546 493395348 983767160 685010146 856802001 302872484 486738668 644322146 802474653 725836601 967355815 102392922 604753452 405800297 508022509 475853865 888445304 706969381 865728700 557462991 618746292 54077074 119240707 176118258 188239558 126255748 459529141 27330468 829446864 136351019 768803801 131003679 823590692 47496510 147707942 363185020 643625085 726134559 867234813 78436262 430818008 621017802 725447083 455557610 459305756 129942704 500984669 824547442 862222395 414402616 910515022 84842928 338261093 87188333 301137815 357600757 879369020 333589366 693553147 748578117 986267505 795232049 896988741 742578632 974357903 141530938 984016582 557798235 977828082 444293133 825228764 750859801 868716078 981801610 990936314 137403415 344273501 159183515 176574367 280245765 629613357 737808246 747380690 750037569 803737168 749231591 838633137 975951111 984165620 346499315 727896406 418652725 696617630 898309396 933134449 982653076 984149155 337878421 549157785 717614154 761661163 463337531 480636249 455101361 559156629 77590043 968763610 270628009 787360772 826780032 997119930 85433715 730269165 8697920 994386258 975315107 981285543 560749476 950095755 820444844 914486823 188416823 701538694 294113482 735223145 918933565 948977013 678193007 840228958 551966274 792791871 871178660 887993212 919433963 990229947 265849638 760049202 201259637 907501455 934494637 978099256 717939364 894465630 874628501 941285345 121847119 973185137 9042382 872019423 91565650 837780912 782028570 846121926 357397298 360351100 489709184 923690752 993188903 995309686 720677981 865749265 505183886 696528076 225021559 688927817 340509222 788640442 295524965 926684047 768538403 842323574 380494874 672258340 410939937 758500888 364561538 861991776 204160794 354627781 334268948 648514121 316288654 495804583 794953588 958546467 422721477 459173400 556754835 666219581 710000369 726916654 243360985 266332436 789719723 990670654 289087249 713500789 661977363 733884865 598933860 770596014 151738707 603223630 435626818 760002386 961866932 963686367 465260579 700160177 989181197 993299782 635934651 732080822 699625610 833992513 664116288 793681513 515721158 754687928 57112937 872231780 595336221 743081155 56793843 736610942 638784420 902870786 409953418 484208109 266309453 489169875 74405650 755402281 708368358 800752708 171520098 920625491 647438389 762369076 52497944 909905929 1497076 213868046 381812609 969074013 74082203 704745156 235404041 776110466 424726584 907693960 820232695 977948028 376041852 629547573 617998047 957471609 176232887 234217699 749534341 869987096 948564300 954483797 663147293 696711348 779195327 801901820 889657796 955266023 406161394 765113799 202562975 850730424 166940280 597195128 854226407 882688024 473564589 550860043 864457046 928979681 861917667 972658248 122618447 196638932 693664205 797773275 28268176 844873593 232664250 804589369 319832123 646256890 750598626 767492465 595117298 784184453 230260574 282673152 132407645 894651581 504621385 646643600 985285997 986877282 715796560 874561960 415155021 757865664 222943988 290269638 655944456 718221871 791711162 793913232 523568842 851740852 43321200 692163165 972765568 986539315 701509130 730518707 520824408 997917193 103562598 866262560 781385830 931061884 835434540 996793211 909273861 916836311 787825602 936716150 855991233 941271364 602503703 979615105 646002568 915699038 135841071 832261627 250471358 283376849 867951352 881254170 806365535 913840722 51083544 457454680 715485922 932900703 569481012 641793546 228508348 810720978 737592111 776218640 120652693 256929281 105400184 908244966 829019111 920007187 214702195 652408404 688955542 972634800 349251224 359934143 411788796 942931532 265514261 515164111 364588899 772584936 667100410 696420723 199874059 243086278 965898312 995065239 971369339 986674715 643910311 983734315 966413182 972853342 460318887 537088681 167676215 989559288 125181295 312344931 30261257 694916150 447031565 922229862 692631108 703292946 347648416 920049101 528310656 597914283 566075401 729888902 563094692 781120034 345382642 966042286 711349447 863895111 899146531 973163705 615745608 952231027 57218763 922605873 562668882 610432999 898316530 910537811 39224158 232184720 621969684 986033249 116296752 208129537 865597201 898747727 549412887 673819059 184424751 851308185 21064871 772484415 261305590 756800493 586913476 866132028 388296263 541958460 834152117 838962150 44551026 442719758 445635423 446027597 442747487 617300333 867612023 901523380 279893382 446006075 368104748 667349663 698973972 965145608 839000558 963106172 977981188 985293501 463249193 839519776 475997988 729647727 87448665 216477758 589654070 643738554 675843440 871148962 878781407 905188413 586690123 859881193 912106666 925232602 721111446 804812264 187380613 316847783 751580985 942676925 848290644 963690781 626682896 971320419 607515140 882241824 800297933 858213664 404224821 768273870 284329673 813191656 287008171 942729696 905369463 977771478 750545990 785524468 744356692 888159678 172304246 738894464 612696589 983281876 400930496 768377088 375762656 402448462 98838619 397030991 536646376 631861321 194464915 724477643 340741092 492183323 103879658 110484164 183876407 212103136 174601448 915741603 975704283 982395283 171094313 471904745 390385691 826992737 378185703 487955289 429930733 680077678 697332394 990407656 363129876 571554466 710782965 913499651 761473107 790068482 727083526 890834765 421812450 943508631 661291339 899003593 751876 413787232 68837264 819323208 55026499 298784795 231990399 948322669 505027646 509517846 610017223 703619981 821368944 881021626 792380910 990372844 763611882 986544388 845978420 956472795 821643507 850641448 451228127 740794316 830333858 984470686 611885252 852400959 888576992 940461323 979480516 999074708 456640603 943613578 656676513 979310364 794232556 823091656 505192872 928002560 240233904 916841363 881748963 937803769 223849570 735251464 107612652 196007050 641929880 766699766 639614673 909728608 651108653 992754205 942217653 977976627 250589062 630457130 394435081 595740291 711791294 876135839 576343213 589667947 751148935 858298369 595096740 706613814 262893605 445202114 577304628 665393367 923661413 928567460 48878064 413695761 127858772 832437202 98370782 139123938 284655548 726860320 682731612 772933306 225370110 238311969 6427833 403545082 189156026 340265140 743081 229778834 701572661 772089047 545680659 613500955 511381898 723702160 713895459 848048383 128334415 318843179 626603515 767946062 899953156 917661850 45809614 960828378 319488924 378300791 721004661 974552360 931869694 985345954 180529021 644599542 794145300 870242992 739204424 781792975 603564553 751506378 517024546 756517001 687923809 911338410 298730842 356297130 538083527 638788812 842274813 919924811 454348555 609426390 56381238 401320231 8993240 359659246 359059667 476459066 786489557 831050462 644935873 646722820 474338071 935407509 419709766 863641764 628974616 909454972 238474863 554989172 971483926 989419059 85669568 660288697 424921869 473864588 757799364 983333730 268772249 311219570 642215788 735597769 606404643 965967102 609698968 731712995 577875156 911977611 230176676 408134840 540485068 553019208 389773795 527289674 322213105 679713841 25954589 897086070 659371960 707324838 82992084 147993965 398531209 448197078 434237682 709642024 180063476 233137277 497739631 601908691 955259269 980376036 518066721 853786666 801257523 842370351 454472966 600773808 232421661 970506946 440935120 571890270 117823992 553101285 487770702 827922479 590331148 681523944 885117677 955554525 667485884 745178571 144069449 602929558 626768460 721117283 353438866 758821036 570636910 783665321 151003813 791919212 138882736 537843737 431397941 954593301 771788624 943293214 196110 72377467 566441119 761847635 708357611 816074275 766120730 949879185 525994349 952446240 830545319 888547226 494545631 503602218 778152013 846216930 26249912 88448013 432578558 985498423 557044954 563135680 218381017 544534028 59894015 578208993 89402316 743482494 635745103 805049922 703701093 801235403 731910891 843634097 476352781 934991831 838285940 865368675 25679615 250797805 389402505 849167605 943526835 968033507 403407718 570672910 174346492 616388198 648526318 694008956 918892591 960452926 88619508 261606103 971818123 994185349 356301229 988216316 731908798 849572210 81901489 120555870 180306894 790201895 140434517 648321382 658094448 858190782 394539360 708681410 377662757 459023309 436762812 684424229 142816195 561329034 648288655 962472428 710582707 806489204 126422546 273989604 821289273 883975840 904669221 973455042 240520062 245621449 139264113 800938216 99645786 657173088 575201235 783739055 350991326 937147943 845881365 980780679 308622815 725805322 580246611 928992318 282714463 633337450 863165474 900925845 297221947 634594941 358706354 368645936 614072606 897657597 665510685 969417329 480142505 611509523 581456116 897900532 829137545 859405274 61373288 106998074 3347134 197939684 827463274 920103485 521657937 777226080 464154592 981797833 803624231 911878999 996317163 997749271 444463052 952174604 941334054 951766353 171323247 272914125 177387177 635513390 92319759 946003418 162710191 911506772 354575896 662936982 628371488 804263846 176851950 599721691 175938497 708553677 163327896 320764973 952983829 954778504 493794280 894118764 215818187 251122687 394757529 944769447 63298643 376513767 49683025 841696569 595701608 808804739 535503098 873393080 522624720 949417027 438050411 758809318 143732481 319289382 575843529 973585902 759288597 841858547 185971450 694845017 549092103 632209392 643453306 711656309 178601406 927967689 2695601 293234815 269823943 292197362 29950606 616755418 872120567 971491760 692285845 968554771 91802781 862430982 341892424 814703928 462952345 906324191 617026381 729389443 324353080 493988019 792216332 940827748 974166644 984489817 733327568 750814413 399141512 577726146 25355335 843870270 657677157 908051549 1593005 781993667 94868451 307232959 656113183 937727992 788309983 867010310 154460093 218477769 197239434 877624263 419357316 428724797 798379143 970849579 526985705 953136612 611605445 804382878 894814078 938230945 35669512 831265846 887379050 972023295 241066419 557122778 989007248 998705562 326594943 953913829 959862147 960267577 370212285 712313331 855394413 948615032 468335427 937136671 883366392 960308973 986907786 991584065 234791085 916883957 487300941 742976913 76450426 551714087 994160553 994359794 183680956 496279689 631261201 970874801 154864532 213100837 9325720 462866060 630552861 746151090 739004357 952902938 3357501 304669763 225953534 809505044 431896965 865258876 832163261 899788354 104309234 677691641 595173284 999312624 474208117 946554409 266820690 629066889 880818386 891357194 67337385 264778032 581886639 936254827 518906645 601333900 324202649 682951026 315919810 561645474 513122657 927057606 741235788 804492476 476032932 790245509 310987084 917805247 882264840 939033178 448683352 573389836 97365461 787949398 667669275 982435043 990866319 996428080 308674952 693577353 199561023 811206184 136981070 784575737 687857948 740337614 111525466 838628093 866249797 887052550 124358554 441543494 842687892 936693763 805403390 853029571 418710507 490374157 741155740 939359963 718168330 977674542 79283050 590544645 300015882 643092492 166242110 612026483 778993532 913521160 379240276 571477598 47505331 883444545 778052253 859370964 361134801 404472927 494601223 952398528 803274002 943118003 703301786 870216867 278846040 698567960 996983372 997649579 598748565 947865357 588169523 988989876 468395929 765503172 41428970 371240149 317822175 433936672 329001684 421715137 359246520 380171026 573427611 853066673 982827770 986321222 640508255 718758559 451931857 748848892 958420998 992586530 408882496 808924669 367102143 894857392 855655447 914985848 74694764 494282105 835539002 919046017 43314847 919973378 998224613 998411482 220838669 593544969 552159695 605272042 188522289 752102468 785852349 813369046 847586905 941289216 59695815 710831859 234621567 797384535 267250537 910713564 730904623 908371918 531809769 884607133 793696401 803578292 442917316 534550988 31558268 222341275 463371821 696814217 648938616 942218630 91843908 892758598 660749004 802389848 785001611 858489441 818079084 849418145 10121545 796357756 702183479 772011386 73090215 106078968 248634470 650860747 963787210 974286799 214753273 588390850 746806308 963287960 807095657 877248237 413366089 854013238 578728711 649885253 122238293 752607830 373431949 536231624 732302874 961538676 576881840 699537210 196764715 903209546 771067194 878775573 618097613 793738969 987254776 997641263 840485046 955471181 684074438 951168327 542289923 898934667 689915868 794674034 228265093 688641302 816864902 888331025 935051796 955269502 123313163 796025947 763236474 847133415 700346204 943790012 599557941 944983269 788229999 900690706 413907891 710089428 399778623 522453266 196935639 229558425 837058167 933607979 737365736 948500505 221427891 852918597 32530040 332220159 930047001 971533684 177302254 744264020 340816002 737076842 583151996 842287422 239837732 436472448 556043364 580715056 893445629 899130517 195768209 908843967 474509551 920213944 766373936 903132292 161824325 255706551 817980783 902969859 51999511 695949341 415339041 702024502 972833777 983166668 920342298 973351216 331996293 460392930 322388512 359550211 695194219 924465927 762558818 825469779 928391853 942761234 876162362 951685221 997956737 998332388 143768630 167515410 887516529 949918352 322645198 803789588 972976966 980095390 513172248 553775530 923497715 975613574 884524039 930697873 581683484 782194535 702797423 773500430 404126146 550113213 383268888 827205863 551817414 842554274 126592510 586386982 767150495 880527228 543689769 820205044 189205660 315950693 709288954 815804340 327011637 626848227 878544346 909460137 325387315 986862815 245531935 496576896 236364609 457705137 714803265 722318389 37959784 635357512 835499 52080559 790528490 879320184 828842289 939158809 706818708 956152245 48938078 776099481 604115003 799314883 781725206 826021534 335578007 798239183 695627814 871193755 29728774 324744028 136102455 788518327 314006569 989570861 210937372 329191835 171902759 963645709 125331748 724349469 302410758 710856536 286980980 337220772 910774416 968817544 483468262 848498520 638238555 704018895 298988134 545601274 411410621 635586288 338898003 955876982 23024367 992763648 232902441 273325792 287004215 530590840 223447422 506658966 450888663 543082996 494974371 623928776 33377653 714976032 161512522 849497048 404538698 426461599 896468516 907618725 209008998 232025343 243144324 782976240 412034733 619349424 864626189 944652851 217458321 374044399 995874536 998222024 988101032 997741812 245809538 621964195 55588579 760841179 911442443 936711459 975550887 993945120 299883303 350353266 300360205 388214251 266556400 447520750 315679652 501066284 817819200 899510579 682029500 852429277 216729509 692835112 2642587 862294252 132619034 160167676 493083762 918158643 487140079 972400817 106955454 972437799 322682118 827570907 537917445 898510203 625274334 661444898 153656794 299317816 15787271 696877856 990406507 998590376 920836480 991196757 789926593 796724316 931338390 973254898 525672433 837282800 203488502 979761208 436740266 859130761 893467240 895012951 957903240 979743414 248754711 382551270 499816171 893628736 987815686 992503925 395527835 777694896 285414132 579541988 242949638 474186488 652480314 696544584 202064561 901414505 978474936 995239941 957845445 964524313 491061404 836119289 368629361 778527508 521049504 680463654 967662547 967938459 254397284 834452328 140561798 755979541 59972211 412845370 662255054 705388724 561225153 695820691 66024079 441190772 301680887 405849716 191663416 816845504 7478798 728411358 290268582 417311141 793293545 830254769 43966398 286461042 477213559 892170845 465080527 816021739 399123648 731380958 693414472 850989834 601940078 786153310 606281339 762356285 993565118 996933161 840679519 958673687 744871309 900164822 809268429 947823248 527709672 541264779 852099270 961640052 37662960 245188878 778715786 829460258 656381434 716775138 721130999 755336967 556449036 992826841 246886758 911718729 231659592 713038686 486244506 832561602 195596158 750971823 784944701 799839252 835573208 957388929 643743007 791011749 288310119 837933322 272861512 547903631 965285764 972443005 257740731 708330117 293249481 735309520 779776997 895369201 574177810 893620994 380956602 442243649 522790264 796286186 77903296 255639676 263393559 345339696 566950795 763582118 845177783 854669225 409390794 912559870 478715068 755523369 41553362 718088083 51354522 377818644 863825236 907050938 468557143 796882363 523841187 846459796 946439472 970177015 669468740 795792309 713051559 807122409 549953578 573131504 176556408 465063639 779277564 876268818 184449260 656127097 262714032 775542085 840115629 965949229 254225093 987403593 883120643 975457534 603435035 774256197 730912823 820067183 337648450 491954275 787279134 848057239 80823341 158598908 45882524 162856485 717383645 981074375 322405294 740559011 399921585 717364745 685583823 991511431 173160211 281881160 35947656 868055421 8958922 423216569 283674573 430317759 469875502 785305320 102940887 945904324 298200126 477981963 820814503 933485798 335527050 832095328 993028989 994395552 425645759 597734093 899386055 978995532 519656246 865003854 871638085 876833588 785990653 853699033 911002918 939986551 483168420 914508492 955931187 964616148 979282466 989951576 295979287 832317064 5447957 261435620 956759270 986738545 578552290 877087921 634380948 793486143 505272484 571041779 352136961 589589640 549577638 819149151 952629666 958939893 893209999 980962110 636732081 736232634 212326214 281980757 701211519 716674317 132412227 873555875 590783645 721274400 156377002 542620155 545453937 684132643 58107016 724489843 75644776 875669595 933722390 961643344 419505149 512100824 604898232 702802689 626402314 863069908 523920514 569161251 63806906 386757165 516901492 525283944 455695537 694520631 140363718 543221658 963558657 996633900 566167545 717490159 894454025 910607103 164174153 795909660 474887384 821638873 464693108 978764783 497162851 515992769 567452402 906770570 29605079 873515960 972392611 977902476 521991961 644056888 32101464 951825675 288057030 326797369 706912946 762806714 125453509 373510599 257027422 441062505 429255352 956650270 109703375 133661112 79148436 411902786 386355967 519622403 551211730 858822734 714871300 747459413 478668832 571112290 361917893 816525911 487984371 915788967 354462761 509183446 177313639 231248286 808238692 901408932 761267385 880147138 366906895 700360473 985221073 987390743 589304081 636435356 518529239 649645271 124785908 461960198 384166993 861793114 873130324 947023026 332514903 555797664 939813229 995379354 696915254 889960261 369597562 561141364 725869297 761980686 689580449 721827069 744355561 981819840 674370405 820303249 581688402 587614323 615699056 756448717 992476190 993678318 887575159 893875917 707459413 937005415 354476048 933102233 815672462 957186672 656101165 757346188 912801626 943275651 506674294 805780380 952332347 967870745 114947867 231944420 762507300 992704131 458383359 943054222 109014041 506156189 914610172 960218294 763174443 915278940 599415613 919520506 485491200 857139404 362102109 526496143 548945621 704708590 507396291 988530869 36769799 900193590 881243781 881782604 842194738 956606306 324616155 410133080 283023485 845947739 988326295 993199659 210334365 294382417 259091646 516339824 587719739 720596209 148349592 331266574 680446714 875505320 762165401 891188929 103596472 226078165 36268352 435418971 44983414 456378440 675129758 731131142 685818857 717297299 602668253 779477265 230273880 706406019 16487116 920184251 389381314 405496785 708154874 799646611 716863784 863774309 366302211 997387469 417315909 602699758 376208235 475176805 275753307 730158912 261954557 707904214 564524355 940237152 712447539 924084020 131451726 604456292 348653967 377475357 605962830 875953958 572511695 774068823 729485003 928338263 958389431 969717513 635651877 675468152 790017927 888930510 465875029 812834819 390876386 818816010 274620578 370048146 807266369 809419904 454562699 646022390 239779880 906969863 272171604 277930924 167875713 693544518 502315709 688401566 547214475 820545018 730089128 915468826 750175765 838220516 725722093 834425458 890652714 980338123 850439361 893777935 686711093 729752007 463868490 835681028 396140712 826871850 657677737 895335542 696426057 861230011 630583297 806191423 632859208 913839137 128837130 208385157 310122890 700408925 89104645 927515306 728555665 787422038 194816702 721490954 918858741 992788447 899910500 977362580 17866802 564345772 642901143 897129737 834488210 845130199 968244434 974801006 55847188 703626878 297744370 420393393 597874627 859274617 338623987 909440960 149133528 327514975 826580940 963511169 470180106 620053558 194411842 372463825 79748091 750832332 409838967 589728020 104372266 123657609 553610449 970291570 265818395 489574426 674446329 858117581 531319205 944919216 406944564 967671868 100085604 123161255 385279349 629913434 930815927 966683476 41088105 853772497 31948422 47797905 853658173 896130573 297240319 391331225 448539506 857323942 175595632 288399989 759900117 859944848 940433494 997012344 667097603 772765571 184754843 624216209 276502554 534377263 306646966 755215170 490391496 701876916 5049659 24072287 182034643 916683620 712363018 792286575 325657551 331691033 284588898 650257222 87478593 812508860 296435142 673932765 507918258 560593302 270876089 275205685 262713546 794896686 946564073 965171510 887062208 978844674 909291748 951910421 37192407 715268162 993898778 995723469 169271233 944515819 671242211 713335001 540262595 811976274 651072030 940882698 69695712 182843206 421270315 594990073 542073409 793885465 630231200 896201207 476485873 858515255 842390912 907298086 99861768 290501926 455758785 660430522 592564683 693539932 537840647 903993578 99905300 753155522 823922766 994685797 317297653 686524309 764688521 939394700 174454383 760007808 255819350 646779509 527350635 740911557 888774136 953568223 685194925 986133979 361960612 828912822 760601711 922083876 621532677 652082978 137110548 687562452 811167567 851394276 899688535 903306280 351557905 398212655 874200744 951411479 858491112 862287788 760605934 989595402 305110072 698020156 539505944 580482944 389869319 520730760 267981624 912499792 320077478 906252979 40710246 185292369 844626244 941954774 181836569 604817846 667922230 949065808 210468346 831013585 799659069 941899162 561087497 908608451 541936753 570019158 325950899 336597438 598395179 963632512 524073370 646022484 317183589 951903352 63542405 522233900 796653084 941718468 238366009 863923773 157781245 937800811 320597810 473244843 8926438 115981614 22566597 761317226 198429675 579423995 241563244 626294126 818668857 938601962 13943470 980869354 464305297 824731799 638897581 974386568 428126438 674360867 164630446 532273896 511010436 623686329 211033451 890695005 930124623 967227752 702205985 724702369 996865744 997454199 733948080 771940360 405620770 750205065 708614781 886196799 853317590 909924121 963276584 996296025 51301048 598999031 740773531 771275742 43116028 205660271 603365592 760833867 766518788 930416512 954504295 994663143 351617596 489841471 996716099 997055809 140268758 768675907 900868383 924840109 954718007 988064671 849632731 935445363 934613229 939224770 143636714 859813610 633937867 692310941 537821023 873474439 468318965 637011243 334132187 723539109 17625201 849973901 984353168 984929311 89195084 865838740 966783279 977226703 261329184 553835727 640665230 979588690 836887304 961856572 845716349 900798696 834302069 913399471 627793956 894757647 603189149 644872096 110756060 809655358 460389809 489246916 82223211 516551033 160472204 758443506 72261630 222815946 242614531 389952319 127349039 868762135 654567486 908263433 185240305 509208359 905960280 950015623 911790800 943389678 908952030 962064468 961672776 977221076 936191332 954682192 385893373 778543451 440232057 858722773 204998261 421620260 193951353 213221953 439148431 751808684 910235754 948201542 386664897 692223568 39695292 972200522 75555065 433780549 123528292 193916334 455943438 642195244 863881453 940974170 582533988 667205234 98499745 617593939 56900944 975785159 702111884 888713628 505116132 793098078 397251869 781980149 676330404 895081001 709290248 733074569 863249860 873564416 88782114 229780307 269261165 710690990 675038613 774774926 354794073 462037813 70953329 980829077 634416503 675341169 20754988 410614591 72713385 811203285 935047301 959887101 285060099 335147713 778243304 967646838 22570225 198754741 342219402 938924295 909104757 978159608 592604109 705088323 955367586 978216384 677916713 791366268 843308548 969095948 740514052 841064223 763431522 955977846 100337998 112740146 657215072 886083809 683366389 875201648 125336313 593884969 685225425 693709990 694493240 953026231 636520879 795617753 148328030 764754372 954105925 989559336 777374234 981418811 103455734 148866435 229298652 637834922 260784126 932339999 245895585 265125685 534798032 584810077 709381778 778357359 602541533 874907873 679369254 955857678 558435474 846010663 786688002 837683752 171657516 271465296 861453026 922062176 159525727 382747899 830774994 994660479 416000391 512097399 30837225 700877993 49642941 705784329 96043813 156554482 849519676 978666603 376672778 851613643 571104782 840318020 612445824 795086997 946210876 975216670 94582359 580930086 832870433 942342269 912119739 973973900 505693042 731000269 2814917 915173567 323690653 330382981 246891928 985851434 798237243 949257494 723408383 791553658 215610991 419262513 165247093 776152785 128408741 805487821 232311739 430380773 457069792 586986408 547188688 983127285 174994842 922765875 783359288 910193671 974699065 986588088 597129342 953115331 575510634 966439237 97753008 565626189 374696867 820681863 377691991 508122280 43150718 723291039 305399757 342654678 864259661 936773677 766562782 959465430 80271201 249914220 162335001 924662563 590209496 661417883 642835731 780440642 776125157 945128823 993538316 996789946 118953434 403325010 954635741 998695345 73607815 598103397 533549971 656769030 945836708 966560374 143710436 804614752 872228489 959891612 864459841 972097725 978667582 983947356 150564236 578896476 367562795 967884781 775932015 788075261 781033765 859944651 720460380 951265003 79382615 100769811 715253308 935467575 894746174 895844949 521701004 974279644 745167664 891379178 663315949 994431949 61807947 976413926 626699691 666271812 651866118 918052100 801917981 829634422 992993373 993752057 885583694 916888793 252078339 384770907 923959137 959535828 24293384 406873632 666305855 862195082 180543202 987136510 334609595 522741453 494651643 517117637 54912097 550198788 974880747 993501746 74969593 219883358 897210392 934275577 929955257 956425937 569314998 578732097 314494300 694455851 717013211 803676239 15028541 233389224 261136436 311596564 950477369 976962852 867756017 957384998 956807426 992016758 994620283 995802286 320302333 403928358 653441094 697718920 339776429 435679937 353894002 551798469 157131529 296060210 308801848 519002835 32069012 416589448 673483282 972205790 143106875 369566351 612383039 714618895 51045687 233385138 888465179 907177656 271422220 579355192 215431239 838479099 461015775 493875183 4216641 252731794 138827471 941813389 187080469 692682361 562212047 814012256 65238867 761098913 480282793 754039201 628356406 805904303 998098804 998589027 279834352 564537660 15302801 830686019 491817885 584617051 310461440 510037049 688043814 906966526 854591499 894519244 940017714 942964392 370883402 506057899 8937652 143170096 161432773 383612154 569751377 765046165 935245183 973379973 733191255 904722252 857103609 980386775 798014183 964476181 626987118 793077355 11626740 652170539 250829744 873139379 776766555 878833808 624671753 703683580 77682314 758306478 658332660 972890163 324856763 855008726 602171391 652305346 197424420 829168641 737608186 824161264 179122732 296538085 809386961 992961249 288221997 958107859 614424447 970949211 354333719 763242167 437705734 450026034 523839835 916864606 85510079 778546838 5395840 543406863 349375546 420268592 515010582 834887111 576932895 921992902 839323422 857041103 29333765 264071622 977640748 999274733 892346296 910420986 903561797 987593727 970370220 975673352 203157749 663104192 271965654 293459788 741619813 816514231 658001013 704432914 356944388 539469162 538153930 813256721 988012513 994041876 995630871 996829676 383489318 594500090 554776768 986391554 335180758 808893792 914404034 980614268 487817069 727101408 538439813 638113454 788917731 848749496 793103525 921935472 944349534 955381931 886508426 994665542 301725002 774558942 715181931 783304241 533293677 658487440 903148069 981452232 457806606 485194670 509494026 701178418 526591495 609917379 422006339 923001541 299500057 891705531 551578151 966237075 288508363 399592325 341034501 619615925 694639448 908694727 605062405 941168554 775195125 919575123 786957025 855214158 353321620 952151357 745225686 770083756 315928038 385021035 602262061 914033050 162565576 501934983 675321854 810140722 23563262 529693214 441179952 818146051 445048090 619284363 121236799 737379701 763420736 967870575 352386530 947915521 211820100 684436155 464243471 973276956 134842134 727487575 511446793 760968849 630777707 907834344 749517363 983489094 526806870 633194993 206311613 628717960 768336836 877800742 745481584 897593519 597188972 849614512 367886634 618588611 692997205 777901255 969105540 985229618 784608404 942564641 745595191 795926061 827777048 895491777 441028796 458263587 736194071 865626173 150086431 520753277 221626272 857205745 885422919 953798905 815656640 959195670 829966284 963883761 328823478 595574019 157387665 939449369 503223012 839324215 164895758 165138722 96722841 343811613 246369187 697944961 340722627 365664043 851042323 922417768 699717723 847934138 608338788 775382983 92028442 991980338 585627854 839587614 881918671 929167887 176815555 826766485 985699524 997106096 669056931 737826939 929382835 943758775 96831691 620399672 174245453 295181600 39222235 875205947 590581565 631485245 542183154 921907626 677090183 847433951 498945843 633239149 327949037 988591882 838380304 994402597 40148848 907191863 634299431 726956972 327212132 585182443 489451578 850484409 36514501 691873963 999187737 999280521 811399033 949871910 927428839 946437675 989155477 992341984 218366518 986808489 700269775 810009655 47327846 680616805 810416529 994622186 364186029 807448831 733291823 745338476 864660787 967746736 721857686 953662284 952529 937457382 438043088 612719199 359703440 441178352 907915463 984933420 561935531 584510495 784492727 987609455 244362902 769868617 416857667 980803218 162026185 540105319 25048253 778062107 333666533 617967247 223694039 633829624 185918689 340503838 903843158 967341714 3212991 948834975 87613939 123331548 560739337 950984311 120588454 361622947 243108033 511591856 194473063 935679822 351596080 556104704 788164076 986861771 871166712 899992178 237201254 925364894 997174178 998677028 917298499 981019773 165072827 237645951 643723473 857214646 777875992 859341156 84525960 861005792 211618247 938602710 680793678 685780144 877517965 904198612 162520838 728836991 426143785 495064997 950297012 950652290 553445159 687223457 466222253 564672210 884842866 928059038 617925856 824517511 862669509 935043282 807562752 922049485 997823983 997984816 224586031 345186222 302455712 961992496 558967646 664630966 911312349 977527874 252451389 795477561 790485669 988812883 199865803 610211866 49448879 328466146 492017225 987742012 354148124 579374767 628659384 957920781 746475237 852212145 622013053 858326828 9326324 888068648 195709029 816116951 819537744 990816978 369566202 564346958 624079004 740205878 801351116 994415928 51033083 389467008 627902753 670269972 488149736 891188780 612677245 984152358 613022690 723413831 269765219 367671221 408368048 648197944 71848836 565562445 648114466 849464517 878758039 922648127 296058105 859109768 174658385 935910215 521848261 673211697 120364973 185063976 765317855 827780452 388189320 817480237 687386999 990829403 147111836 681792481 824657912 972696683 264146474 467727190 116024775 405496022 258654505 930397273 203452889 377464491 464393405 906540760 866701980 976778102 892409695 932265556 930388767 960246379 79315579 129651904 129363468 724454737 255853406 452932091 573582930 771912173 835131675 921988492 726364265 793026714 157190310 374060323 270019076 713861060 142558840 392512522 339035411 999097579 385362245 956420700 49000406 930953152 657793358 768624864 902862049 987232781 101185643 310921668 135135046 801630720 853350277 974279957 676572548 786166749 536895724 701474799 131426184 955661680 619756931 693302231 565168773 675634506 325724665 730388343 593698768 658326028 25239710 245623104 127101113 683810884 648095281 882152295 77861246 511862115 277900797 385116419 652018478 665841622 367037102 658329884 895078573 968834305 234032141 956867247 588854245 933611437 892401971 927373630 742742597 786058270 752147686 915756747 584687878 835717280 345073638 761936730 294855391 539979400 690911400 847970209 156834757 354580462 601520738 638852150 900617813 943430846 406451473 784097129 205446364 657917822 946685191 981766802 646236394 811641128 151256558 223852619 330121075 836923102 140010010 755617159 1134434 681867318 616717257 769465175 872017520 990652823 270145520 656177132 224388803 482178882 364911341 594065075 396705559 753970786 296347754 416645036 194223753 970702317 939658294 944395658 610986228 725693843 471381350 974666042 212483700 330380309 169769917 380322071 143506126 406451795 393586981 457668601 591552697 775465692 720152810 862812511 978566308 990927303 749254704 919181336 934486193 952534047 532189840 987026061 845161344 930839943 868903562 927161861 651310412 769802830 622056490 876034525 298471383 401666119 698798657 927661506 533704805 712249714 863225034 931749489 89636516 287033886 64393239 955036244 769526762 906089561 851852533 980183332 840582935 908147149 569993599 665140972 94303054 986516368 245641670 539066190 75130916 180663082 498665688 841984704 143274823 407017557 561666026 634654752 244595970 688355711 54223361 304749147 61509681 65574648 163887000 238745666 844108463 889139016 76227064 251903065 70140158 850764370 168026027 242464714 419615147 490894874 997201260 997500937 247677187 336462212 414927927 463018352 686141410 714051791 839936654 971916019 381154218 586384949 854831017 949884309 795688665 912738820 101908196 929683334 456834184 841698801 616903999 851979619 504521527 841826171 644527968 914719521 698926780 962882353 288564306 593089396 794666003 818458626 949090835 995013168 352749556 378780538 115605512 165289185 945198110 966224813 825886403 983097720 921690952 957341022 394430750 705421911 962813066 994489793 188435584 744747029 353665182 423881332 26062042 891506706 680283128 965437092 967216476 990227441 895195157 945306405 64640891 842912565 990001293 992196255 511120347 571127138 868724435 916002513 445106030 861095346 132645725 443028438 291393491 592558329 974413156 976638479 715051294 749660978 928984494 943446945 346394532 543478462 838244956 982351803 833923805 961810816 422548724 980654715 296144458 891197606 973854760 981747171 104833085 603509446 898974574 949604523 537969418 635629687 375018763 545814781 495239173 512081699 826871950 974990656 690163298 938406856 348488132 403304789 884792931 965428621 603310635 899933225 687447285 789611151 668558948 704701690 604740900 630190570 217598956 276288136 11836814 475020985 716486680 889378255 941463304 997042686 534978931 598713788 109441662 907729143 65261345 384734410 410978778 969582365 535723729 627008962 697294506 935705968 76196025 950133937 726338925 935564667 98685718 858626808 193024890 388780491 733268716 743464500 571422041 658921750 42470859 187743444 525063140 868206914 387613260 930229249 784217121 905553181 641553672 811242736 140736582 300764513 520508876 675095546 816245957 864288459 832078637 932386587 227343385 707595387 591527799 718767229 256105943 323852912 753666399 799535361 292203041 799015866 520553324 771681828 546587587 933757036 33240877 518121282 444913690 914350734 656841215 694275686 329872401 731518720 688118156 847699468 809717988 814766846 688731770 795962733 194485117 517933136 861134411 997452809 125482842 179600530 272151014 356938268 666039996 706444289 508650887 509005092 148140746 382068487 695887919 939919061 159920061 675162177 691384046 874224122 52830959 937696321 525171875 869756088 915796912 934822088 862535381 875720880 421015613 835910466 753872218 910196747 149244927 881787470 457202950 520912508 52066599 738348170 486201064 648398780 745396873 831612384 607853367 612672532 73656672 85295759 491338138 648627908 455680923 928505667 809138297 893365949 50985243 166792971 598806830 684679783 909586569 919448777 846218360 875395998 419514514 745840045 472330847 724876937 205831909 225752388 587888781 595455350 414316263 496805328 847052193 988843059 301888510 333708351 417574828 430122126 358803058 452650067 940714991 945601731 321721534 457343982 842059880 940529922 127414224 228025394 766397590 950289610 735669330 965492194 759821716 800295390 764439215 877126574 138281564 902724590 732965852 943326413 697132738 924404684 967867620 974025327 141820615 591904018 612622126 809803253 764777835 967349092 557669262 894212954 805545966 927192255 453323671 534241727 119214154 752774478 778618710 790865042 172100603 739426446 406239999 475378235 224274111 573691388 464486843 900305065 552989591 893222788 788492510 848537224 422402145 532349208 496974263 708040512 705935553 964580028 41560529 161814140 193310256 304516078 338852843 989882024 442198333 563415863 93311439 615650875 579273142 746411154 88863912 346572670 836778141 993430441 834328928 912634219 904513259 954765734 176441092 729558364 403136595 984236106 542852587 594982726 20359607 208452501 599284036 741559813 351900919 899778342 244412062 314396576 542984749 976851502 560283934 701662668 986582823 993488515 854097158 967850937 389887596 901753601 79126746 500442476 50796088 721134377 994946803 996034177 922041275 961580815 158994198 588526196 465670706 984381460 359421722 684158013 835843200 885587437 485517355 883507717 587097277 732034885 929481488 971601506 200117338 204343598 358062688 794016547 786460507 861409886 609224329 783182271 139700686 991678901 243634442 695249643 913011336 991386836 526635352 989732993 619258414 807489398 455207243 971062423 370060264 582228448 398411352 625229987 669271356 834631336 792228932 974530781 874455781 904576538 175007698 856229122 658250756 664628128 715349374 875867976 741553811 815088761 258227739 515486429 180204576 878630359 661481879 865938402 663674704 879096111 94467350 765745170 414517756 596576081 896669692 964799187 853676933 938826899 387280814 525283163 163507062 219426334 860195844 877194505 402221325 620440520 70774896 404898678 757509612 798056120 886636548 928698115 831769935 932799014 967964996 986326154 528965580 773323840 541551876 658904695 512905329 650182568 541786709 768316012 254962739 597392887 695991096 732470967 597738421 965891776 560027365 851114492 129281909 641316314 39908516 674874351 434825007 725527894 83281406 530412204 506068999 979634729 340900429 901369752 9761998 683234942 376593215 582747025 573228954 810664829 559479550 571121206 689326029 749599958 670086576 907290293 89809059 725594676 980466959 986525585 707820796 981475211 167767209 745403889 106984250 132217091 315961732 321236465 591561445 885840069 990139607 991819182 469420881 566434264 866596751 966885322 329725165 758256961 893471635 989880352 687129013 732116893 828262306 915978160 524309980 952207056 705765284 719464439 229659952 383650979 950948086 976027844 963546673 978463500 111836487 871010216 793613542 810279221 703625846 893864750 881198247 980002299 478531777 943651490 617461030 831840393 846224904 859102005 268360113 583130667 750022981 979957868 564948802 924336186 440855264 481827495 863745962 975137158 782723672 783562847 719417960 991190449 958596045 984493916 497737922 687756512 748921511 820035557 278101034 887084625 786222953 821188519 400118170 781100124 485212953 821826467 559241501 941737825 824977983 913557645 443004051 886308888 322063310 866076170 444101495 990835504 968690878 986633985 845063053 909017908 463056219 874786885 504347017 905433687 628714294 738036832 223172433 854637632 566566818 748183486 542007205 818169763 1817887 182512634 716254339 831768474 540992497 807906784 667380126 728843600 330513218 769665585 263786351 390244807 872951239 958311597 680291676 768350852 119484362 606909414 723514709 756455570 966272556 976151393 765346193 813358701 216661855 370802299 898049750 948559417 733983027 878457501 35788886 313535922 824699497 857555491 77603054 162659147 49468975 696980886 679899079 800528780 317650724 546330626 543115032 598967090 884110994 943467858 449024992 510789165 580730268 949072607 103362559 244070946 864260330 881322761 546540256 569157161 690375883 972946975 162372733 867972451 941578242 971058186 873302332 893056083 530495001 544351246 733364311 756408733 581080722 712207813 482048775 996202070 570947865 916919702 781113916 948032071 956120446 956492050 831388646 897037835 334995359 455856794 414169673 496064442 564428975 983807482 399041057 519816692 462600828 737650948 822317536 946268006 516449290 661684055 5875298 120974734 273310467 870877855 480155877 724138683 498054255 910635525 31318503 446011783 3795400 759837227 90651449 949032678 408788152 754126637 128598176 755690160 879259183 973743447 106947188 742684938 209843223 535967909 183703721 481874932 271257477 386824056 500087479 675024207 416357912 425954796 781310873 983096845 259047003 838472729 106013334 496326581 89370876 506928215 235453120 916827332 287973509 692446220 145152304 201508431 982375597 990480699 478577816 812624464 201007428 505412520 285171470 816064404 670403311 912350191 678252308 869934705 976466343 987657628 183390874 745781980 737353750 923044815 209303914 774422040 131259791 413791792 546973512 923218543 340596734 687543325 265744308 420597580 149010173 716515740 622216503 628174307 762550750 828416589 605389992 663578274 882780155 967612268 194999887 954741172 433226024 663086589 400253562 936378796 38285375 820120010 555757065 740346295 546322276 944234290 236372698 616422163 255500342 336199022 200195329 748958799 257616929 655896066 422585834 716123638 38638420 205553449 27067324 395444905 627566122 671568749 20537539 560088256 889864059 961134566 870199197 953220215 897244702 957603181 327128303 356194377 738570625 964089345 66859448 519175667 985119400 990455872 383795591 546554340 314137132 685106130 510992868 656987584 563830606 773278326 217077231 873500196 614586868 713394969 21724214 651012814 548807577 687363170 363921530 925928773 729001550 846245557 312228158 711302563 479506484 722546085 188370452 506378559 777961022 957726310 283751368 650221845 68763070 460270423 343933915 538776768 70683044 586200068 720242087 951296355 27151705 471062459 713826 635124828 767968731 913133359 865175506 927065105 663564131 919786263 96394629 207731602 991121737 996482460 480344182 688618872 388214306 880214583 319822415 558839330 304091278 973211695 173214541 282829757 507747498 857404613 157837506 511498918 995108119 995564580 219615680 361638920 250221894 378635287 472588004 567184029 694705789 949735365 393672558 542130066 196433933 954206571 727422990 843973215 516342264 673792602 725254896 827840057 901377771 916823808 811698229 976265472 752400262 897583327 460255750 492441971 821216385 989252006 35373570 575393414 575830048 771242846 128783805 517562892 955984412 970204366 637511543 660796573 679437658 893797782 426701812 539466746 380549552 775057125 90945231 812038354 644756771 782032681 821613684 833700971 342768385 476955947 692006620 992941536 300619106 766175217 113126288 183495316 282481378 399900475 787409040 991224122 552780329 774032856 805311894 854601101 35023904 343543367 923123532 970715733 681490696 966149016 55552162 141297239 206169799 339923957 442816366 453602308 736026314 828759047 529756895 716037705 627627020 697099393 249503065 815404931 261382185 603954783 754611505 892751466 295042148 965547601 552039459 981869606 733415130 898204122 565063707 652071513 584810100 756161917 15309761 582533966 667624478 945290202 322544146 527949704 875740865 980732610 113232352 937001794 734017720 919834345 817375221 850856840 305832527 798563667 2409993 20904789 347149572 982631691 380731696 631678263 230509601 281020411 864544074 895698727 129214921 852592412 125181589 496640456 612937434 963556885 987186903 996711640 984694755 997571605 945498396 952460111 644661835 738856361 970299820 987278306 515612955 792457901 25132633 355483583 608699955 735183345 684901796 926111898 984243009 990699697 238591007 583393497 794573806 901410045 758319912 933197444 596467677 928140665 324935722 636120429 428028471 966576730 832765114 881688965 86969990 506384654 244331087 750521030 683372362 849660002 338828962 541236533 309814633 544192539 984179568 995016021 123693976 727503173 222848535 644628427 75392571 863328881 444614785 818452294 256950409 383909237 253481725 617782683 966304885 983166742 421818768 651628044 408418024 595558047 857716569 885025627 764077022 903596322 23446304 783270604 510807173 754806109 178981094 855887280 434389689 572058500 51829452 161121205 774527650 958248793 127057566 998367236 260336725 373315145 52957463 597615723 714664061 944888129 243628136 860084119 714786782 766397733 190034307 975392974 132529545 210412842 454569089 751443667 300737635 910460790 528074749 694973840 628553315 800735398 58161720 639154061 108146944 843539507 785446833 889460554 761083712 916965694 917338083 943543909 269788688 848362537 292444765 961327664 338809935 647526487 710776436 800757370 613926330 714502295 876243465 909160855 116063944 519558349 31113559 747840161 887111419 960467999 342999087 476783709 94509102 573828723 115603119 146968889 314223828 922465513 73517524 751298542 831205883 895532903 463668231 952357335 147449388 691792422 542568902 772878525 745373737 814714442 283111068 398859093 284853798 704333690 918406563 948873850 422637453 888806996 138322820 672184152 466874270 793574183 356567879 818214284 605860140 828266214 542800560 567344164 639947803 949534719 352916555 396995924 152893033 197084103 721774008 828090845 208339948 346137098 259034354 673630546 812243712 953306718 592441259 780329626 208236586 660221397 375222406 529809687 74222036 867155747 990341090 990643288 102308596 500995402 773998434 865405691 825138192 893887553 377864331 805340368 136105482 351049459 481496130 641652942 702663733 738705046 536863435 607678167 417066230 697688365 325328448 957970653 804237410 938341154 823135689 828944037 108984169 961980268 31641185 749407104 248989589 824465422 789794030 835284813 665260988 777371627 381090841 495724461 795397117 900567739 48615258 920765118 237874661 756124941 901800097 953413662 341195019 438029994 43708227 341765477 473445342 785949372 857903160 957734274 181570520 350062411 27891642 99031844 732141421 944393624 993560450 996150190 732501264 871826395 523752609 740424290 406423443 714138540 843549947 943536377 131780246 177638082 161807565 754980996 562088201 639173679 383072531 819227828 787730144 817162046 730297855 843090242 953730484 972697078 216120718 663345576 152058480 472826378 825840977 902582292 331559810 624008132 872342872 967372186 668241973 675286866 847151434 868573205 619738224 640765525 960621630 992697672 462116120 591913656 971246305 972516349 906329384 921866349 338182107 368585520 259487361 568268629 816372013 923125106 125487768 155402906 327443285 939573140 812715831 923945056 714584134 826215511 414632771 996310493 82409084 706068284 268828703 564392161 767732342 943622565 556658011 639869360 48033101 993517066 566765662 973900372 427066927 777316695 483073064 575333893 696413822 841076425 861219093 886743119 597582334 921630854 817829617 888564653 197426141 950703428 656964285 739174470 728856845 792799958 972399310 981754436 809000671 957923484 873580968 903088514 253105542 437800267 650004267 667309201 247397801 685255552 699916121 824451439 207254134 920982901 979803048 996546083 568941458 911845423 581676280 650051061 391232469 871383647 703965506 779598855 771692632 880879058 818407454 839479150 19227512 758559073 377882679 880773235 461727798 986103135 379306330 483564166 628662754 992602586 49994352 241523455 138291836 679861528 565607616 665507734 449713354 594562826 995010538 998702020 321760584 877270482 770955388 925468278 488636777 779418539 820922435 964777490 396204310 612425850 804816905 933345418 772487818 975748388 583669874 738215907 931682848 965118581 665801049 707086890 482188722 695715705 930417142 951564815 321069321 366349503 199452183 754626477 384348702 461402337 170385948 853591622 562264575 670752515 226920532 959442462 940853755 955094824 881367710 946445732 460617289 564182611 73381472 325088074 434452035 466449767 457653749 815559927 708094691 987576735 253908383 421492876 770772526 866516674 565584422 880639925 985008701 997468883 995865754 996205643 417685626 717156199 24786589 587425248 285508587 719307476 827951947 897083215 707775593 717232379 846542222 900537751 337841858 384157608 450423375 677846230 250704136 308005161 854413999 915375571 251104002 620478222 254375907 806217416 443355018 738909865 516398798 829708190 229103079 363065279 433456832 806441521 136967350 858928867 374917051 951082327 97377344 160722854 674347286 805440803 428411149 530273238 954903655 988558463 245787328 706111844 786301167 962507661 382957923 936847504 457496558 951569416 215157875 517120267 320768147 515976088 410821788 693746117 280547045 634924027 920897897 938859773 458769274 654256979 581925873 868026530 536939939 726207110 561101474 730169999 855467883 909804231 784147478 938196545 652417701 881858234 53109808 403722151 202018016 421522450 112351278 224833055 205859110 326038205 932580288 933839800 567665637 587301726 466832639 754950320 994145522 994814569 103500379 767779846 299865556 928272846 489060095 804070562 950836932 999340035 433096616 682576712 273005053 417712780 339405985 690971302 151559408 437052696 81830165 819736495 710581382 752882043 397511897 960963036 356877702 440901152 870629387 887884849 439008901 732931785 125843727 635156714 225696557 547804527 868941325 922279994 219044800 822983503 125805141 500442078 240653979 551120334 669129140 969025012 498410979 535612769 629703005 725210726 70827069 313984422 443146335 844262368 38510852 571152922 804358517 970068657 444592482 452063796 532739405 954327496 543976155 766769380 134901449 957429279 620390876 898877276 455546420 751577314 13012975 188920607 642765717 789971073 422616719 769582161 316889468 764074018 279034680 529296591 402942414 652951175 209102214 229133337 533411503 653728810 623402471 676182280 880773902 970892477 249466728 321987023 679508683 893837368 541686466 951055523 31580827 280764407 425965635 533912894 495303130 701149901 191409458 972785587 373825754 970192902 497759635 505219696 364673268 922134609 697149479 974791967 864699906 868700229 762263754 976463057 148079702 640925176 368709645 823378471 160964703 564483508 952777474 964754585 841073251 943862848 391626154 688626743 116476774 909512407 998260388 998981059 521328694 567844990 315724166 755113450 723904769 908717994 87148584 422080134 135326711 311814438 562261705 680829697 10771387 400895229 444687292 649285366 372618066 739830252 600728047 613315089 135046578 791744449 430807797 488526582 765480983 993551327 30410258 752785353 166579968 307528152 917527350 977817959 136322364 750029485 180108 48181178 842279451 957451225 406134246 522895582 852176766 947022739 800101967 980315131 954944899 984709926 207808896 332038365 5583412 117656876 496549384 605688069 126031398 407928235 804247226 894762850 453338965 700999468 665150126 987498422 106147598 859748621 274736056 962135343 369395498 392352856 851962244 916107497 803016172 960584323 825998753 945711810 466627736 819335501 996405346 996588549 261574947 449637525 945969178 971628147 976504220 987136315 519985799 685548651 420857767 563772180 422249111 670496072 288416502 445272067 236969686 664823118 19063173 456474344 296233048 468748277 550549751 886284054 104676048 514300655 96825215 994703510 606566067 878480104 364397791 814356735 120964145 358680866 936636496 998266350 977949602 998395165 129218430 571345865 634976045 641634492 532067425 654664045 24557463 321427545 644275531 931113160 532727503 714286017 212454440 882824298 835717846 935420857 927249470 980843531 354623963 856315861 657951227 774954399 733277671 810591993 457717115 525392970 940316780 982750968 385432400 809242437 397239158 586851148 460033305 602115006 905493643 951792080 736511759 928943214 791531585 883719597 149973124 869699582 831032466 833929959 684451898 868401062 251525584 812821738 77308141 520261009 308487568 392926987 436939577 836060234 296409968 333459540 656361089 830896009 529896941 883191132 676112151 697357805 659497921 795627543 721724841 966144821 649489982 885100094 246714960 297667097 890422842 964758841 648827330 797252749 589874357 691590457 767751033 911553624 427202794 605307993 969021549 971973668 503734275 611552641 414226709 448556844 680795953 881008225 792536567 968310879 771784140 901354430 709121512 761796029 877867261 987437398 750262761 795878224 33637601 156746013 210972056 351198264 383157834 623438973 873917040 964371502 929955793 944733082 115215348 487853159 746988981 825927231 767419713 968744787 352969717 391248013 329498487 828856674 458484802 994825654 781657244 835626830 86344588 711432623 298996127 637817855 200022297 353187231 690346815 934563478 310126495 514087527 188105838 220333282 305626992 817174272 501897602 966363142 243665004 875104756 860677258 939031242 767959697 878382471 794629614 829283012 574420844 729447499 289377913 378715425 364262256 946855367 234022010 650877717 898905519 931546918 661505133 838313887 181918555 979493503 354025407 550491261 212920792 517174558 671196678 907691252 557037788 756149810 128784031 900020505 699354387 796424169 226046675 396537338 376925990 806655853 520615333 703926840 877302456 994155116 694961102 968897810 540347682 610844973 631402821 790281085 446697068 939856354 592607045 671665967 9260858 199565564 477028991 677202699 164545639 319741102 154853450 383541453 716361992 870822933 761705240 910564656 716775787 874082613 691018715 747339855 883644237 901850356 499720860 929649023 398597495 645153263 504697574 812211574 774953509 831152666 126898504 657547065 460713896 570255489 98515227 109517456 352297939 381195400 47787413 463596003 19195943 69085352 12520887 155493844 152459641 967673619 701785056 764554304 701238677 795267897 494011958 837638885 582086016 877039519 409281968 849227898 163188736 430676404 602202056 606039659 541115769 569774833 276087119 407068744 248531390 414664132 712616857 969368600 897200007 906470502 628662998 655875721 284603305 334255450 342594016 667053502 145602643 608269173 191912241 965655519 647086337 797499664 707325277 734378951 180983115 575042650 751009929 769721229 276901168 945405202 712627097 976056265 541815958 864958752 94501413 310029038 459097113 681434129 433523629 654850316 873361188 904466196 547737128 694814993 223641014 598785055 935594760 979690419 949286229 984117078 813663857 918924002 140907608 214747284 995986093 997343629 904124107 979421272 53465107 566170709 511916373 764482185 169874017 496740401 288017975 792139867 141826225 378628805 737958223 813977117 563466264 863975311 269401212 304594968 955330607 955489556 44087028 908573209 201315903 439542423 444507294 775020479 378807299 916578053 777276666 918376252 166519975 213139688 828270960 876462247 641265717 823292906 383884049 505946068 692154331 961455194 553108226 649755064 160038610 660107908 859978587 916266781 903632954 908396053 420254703 855198662 280627022 725524877 974461374 988889436 851387607 937392064 746152709 851235898 361543698 941406413 187490937 807457200 613600190 730219726 333445552 661303833 654310803 936367061 220807759 736511949 741722518 801187537 216387621 581699685 413178468 707818058 878823806 903159173 722333915 946245985 335223168 916448937 555677159 584371756 46458597 536109770 113820882 924846467 938899825 958779180 351818355 618491533 916939618 978996431 97021751 281313509 920133369 972735740 434169561 639906433 920378703 962906606 738328847 976067049 29423431 948233240 774792445 984668814 687912871 950101681 541671069 593901837 837577231 866568217 877406478 969670051 422384637 517387186 381253670 817539919 437697224 873732829 805749089 904300383 995551269 998353071 599999447 914920787 702671492 858604133 464374424 501162334 297043275 578768398 429740739 518009814 214503053 723047605 618038245 861823499 702687967 717390777 658347001 727957332 404497429 427195980 112297474 332315034 431017588 506575439 706678653 987368884 337417020 795914461 537235972 908721437 86519744 686906485 73539098 626938418 987404465 988323612 645920463 966600893 366547167 977461329 761055004 924293657 471520214 564911697 86054326 154570189 309364166 763553681 382912387 890816645 676684800 713446466 744811876 887711416 508909995 592490032 936950048 945569440 741329838 952098014 518890591 740497809 156310223 944694199 717753140 757176009 93839120 687748748 392861952 671918965 754478718 922444015 222512559 622739018 954847954 957118650 26820159 837624810 4058677 121445126 351980963 367534183 910573339 917768701 137956915 674458276 138343546 295451262 961848779 995417519 151127991 998095405 757082598 900358010 608439389 883024169 46467472 49613473 847698631 945746828 938848933 945180798 357367569 632954769 777874793 808955492 548456802 730949721 629641721 958109474 607556608 734683483 170383732 978799377 672111674 699228033 162460108 258230745 715658513 742800355 141555380 725784925 423244499 479297855 340437122 626458943 729135891 985929613 556487 424039963 986010920 991017208 507324477 607335161 803820255 904459521 887275444 963265084 739315123 908646776 775672005 849630967 494831641 815359371 894842697 918274495 135692511 680786385 191247246 291729343 183056442 559496071 645603374 677593195 161369605 632082342 459261430 611338766 908053351 929587606 386612685 398124315 853554648 927977316 608129650 989823544 843495664 871085082 927678530 940664032 357294971 679153370 850333786 909461577 278863036 303329504 892691769 996810546 501169814 793000232 359717236 578054830 70879795 858286248 316237029 815425804 589986945 772720347 663211659 886711150 926594340 926608096 427977578 933468607 93572402 453937614 497591432 696982282 487635570 978640699 688917826 896955180 297732398 521140854 566585952 753173129 5192222 106572834 234687669 330716792 538392049 572749893 900443127 914508491 214875637 757594281 393496501 635740981 988887034 996045602 499352030 572436828 197061559 853262752 305882811 650302968 682866058 958361958 267881046 450482488 718392238 955575874 567647842 798419064 806362477 890867021 248757768 325014999 403167681 909296625 440098185 744187524 405671913 624566686 216756862 508131139 355188229 680798880 94499205 699782811 5986114 599853263 301588091 484114559 146297019 844466043 417379345 569509221 665793876 723782229 417537246 430272954 428546993 951177069 726894778 789427747 971739734 981032944 848679262 895568246 179713481 951193276 959330465 965858742 625024226 690846170 23042104 810585224 294702250 845609360 711558788 899717302 479407083 655997072 150792899 208857881 856896548 929674411 969142638 976931048 595195485 879567231 954323412 997453844 769033851 904259637 820442026 951922640 555472572 983351092 546381746 563270270 111398310 226741423 402263439 994781793 913030567 992297585 102471396 927661578 27127636 420527137 809428050 951577881 738404172 940900900 262236281 349512542 363086123 522546140 436725407 859812847 8191807 690555769 707211777 889712272 461316531 525355356 148363333 922170834 247781834 658147239 499899781 823192662 829567925 857497824 723502546 803913305 709860204 862579680 919951059 985250871 148522243 646732413 73934058 302713524 962676563 963844092 861458021 928707607 160146837 956350317 959859138 962021667 874270733 907247303 865204863 920166874 281540190 400274416 745802931 924957178 657512572 685138198 990798987 999059722 121752531 576868367 616541356 792463523 151095132 836599183 300450590 431392662 933433361 949676550 585694038 892659864 662585570 749770220 156416081 776014532 464122366 633732445 277386840 839158590 678389067 899313943 560718308 567218692 217207672 484263056 438544961 775140469 475709 150208753 67701246 287026677 966120033 972171922 852253017 974103179 141035367 477164072 914006293 928123320 769331617 970412234 612783152 662289528 775668868 824012543 398782930 640133796 314858996 547805230 225229568 275825864 755340445 781774418 792510176 940800095 240279438 973468583 682705622 930135417 516380889 802127550 540875163 808241538 136369668 938339644 365406396 788113915 445530129 743153904 805794262 994538667 315121019 352332756 508167418 901240990 552468292 663247794 860935562 998391838 35244339 978810070 221318911 477338663 489595148 553024876 253919481 410403769 690472237 831436967 322586635 492851183 416751702 504721387 754273173 898585803 353515392 912671761 159863142 848538447 828461202 865871121 933232816 956048451 353638709 727349489 953272625 965510160 183372557 326485368 494557512 681526728 703369581 893653222 380376908 979074814 98232257 580528442 993071864 999314661 357599873 539145756 975028278 988614092 338051129 708847503 421632023 429242438 147536121 281394174 478928869 729014547 692968623 939290499 883196617 887772801 6168777 125729106 462131402 981125793 369415874 757431457 458204595 761152001 945619800 951195838 586330225 987795991 498944603 575214375 188479757 621545252 164246763 330447175 336767856 564136891 581741141 925398275 300649693 664219063 748301791 792832721 992343600 994000834 800761029 830648742 90875340 273755260 738602979 874554644 492533831 747514328 782041953 885576392 154921006 350304505 1312838 962666626 989688435 994836732 734428412 844250887 884173069 975517281 663884253 696926924 424751844 904393639 15063145 513068498 831897383 979931832 689718707 745262200 952945980 980397375 165340922 972661076 703198028 910634504 880755496 894988522 117439155 977383420 708389689 970762175 483781069 833892901 537812896 872030122 214438439 925172839 987403152 997801738 544649164 604893216 390819787 466736177 397138762 927659129 147514774 597103858 621693559 949964288 110168197 302819422 904850735 939281484 996667928 997214952 279788618 568505961 417154243 971495460 202701035 853574765 459928286 729500977 460251056 667008676 689642674 771691115 310421685 568631405 784587151 792174544 831953658 933330858 434845302 595122302 521844234 850550514 513930814 935635824 103627033 341366491 259297915 940378848 160749181 859991042 652201637 728347530 96967194 777063305 896492272 934942460 883182555 903446928 788633607 930754323 77774557 252686146 755673830 987146186 215927939 491878663 283002545 381072154 435760631 763784580 584795646 720526172 259628148 538122063 447645505 868043531 534088754 619754352 834066520 921091239 289131889 548185526 54552181 618595734 415895283 804923830 305209343 932366811 103723458 887189277 337459630 451363116 6097611 935808150 455358048 659843759 193813387 303410092 264088990 725446568 517869484 608096370 2499696 833421975 192317366 743502970 20761600 681406773 723993734 802695986 291758493 959724962 942560771 990134898 803326915 886523298 280745519 590666659 295518095 817995064 644135885 891466811 168297767 291027479 717169729 718665024 323158042 996120359 636695532 763969747 200555577 482257086 40227711 178236656 561638617 758071428 343570874 934088916 917482418 978298575 634209963 991047268 338304412 832620180 589566002 650649769 496993585 919378061 652736219 914900286 951631856 977882652 2092193 258150428 759818881 839693520 321665933 938447170 561756719 566497588 833685383 919391682 365661675 698894671 658132401 942834933 615951856 770322973 106981993 986607960 19278919 654056356 583115572 980486654 397487919 900585656 495227094 922317277 712647029 727410104 267963326 844860690 622306503 628696584 832378315 955802435 311447391 890993177 558710415 693379066 219035941 976381803 910139560 945598243 355699286 529802624 976016550 992121061 160904358 757819601 41990956 982396311 724295038 772720019 785188153 881530503 936385924 961169517 217566032 913968305 693377130 856828145 335992079 832568375 199436843 329228045 562402224 898614876 478910503 523824390 162994297 815814942 681817131 686978901 718827582 822358374 791659361 988061952 253619513 390093629 364149644 493004720 22610999 929119636 598417577 819696647 125571193 860044234 824775321 837254724 498979305 852177117 827741539 984514059 660272515 688770816 203908044 843969402 587516408 885131742 265711093 457372892 750158212 799379665 772818898 848746128 774114349 931643531 698649227 910585090 224949832 929818437 663816282 766692430 287416565 833380902 957076735 970072564 794994541 859426970 590988838 819634203 851885778 862726514 901405878 925252008 48584028 544408166 199728391 459603355 385512922 486140628 941434519 984776649 202316676 308911163 82285821 665487939 867644745 910906708 630697454 807603358 636340620 974817643 796892000 810263010 598488089 820820119 312462157 433348739 317927513 932602339 556104611 642459146 753769613 762963172 343213827 503430745 490077541 875794326 592689316 618857473 515242427 545914816 803524837 851670527 147159168 260775745 472330669 662505802 29357530 127265527 665497781 953804670 846855122 882526852 286064110 793488930 457328232 849920094 168785230 614532587 983362556 998835666 619379331 636663679 793323080 807469154 102217492 433229943 267300270 455754448 855088916 884079397 943022034 988878797 279078831 887495925 180703609 691587596 758509398 955975422 155442503 202155461 462911532 925098376 481453088 706204873 602095037 795291214 404586244 930280520 473453299 879096131 357112868 420402053 56760597 612754743 157463695 294288083 971408307 983329874 969130802 975267224 90416911 500807598 995260335 998008328 732142798 937119005 24073620 444544926 246798523 699400216 322331365 691259572 647816364 946138831 76478343 647570187 963218137 977364362 7691447 135339016 938364952 981676560 581539840 929574942 430096012 782057596 282582674 735810189 326829749 865442111 591568010 787487149 660458007 714703520 605395978 687509460 743301372 928007309 789102312 946920484 47587826 414565968 780712137 908415425 414607165 779840406 164750528 666685445 430767292 686318007 774401664 955491975 21085826 994815809 672404094 824695987 343695228 578185526 888482450 895466668 838440546 976925119 280853781 988698298 463146315 844647669 382382843 525695700 478208349 515308749 1691765 128863779 718818302 866766019 794362906 991504009 46879541 721957519 558670836 763038610 677633872 983121807 309431842 454847203 847969507 905499018 948357105 994680219 737837224 897078056 634473202 746041756 301812823 437035586 372780800 890696013 508106926 731571779 176064865 600167162 749063907 897338829 760071533 972863446 474989300 481279436 390338867 828975875 385370833 850342741 983985975 988604612 16012502 102106242 262258532 988265490 633677076 951390993 919261401 994377155 255210294 562128980 333251583 362329116 450504780 739318490 894130728 934347530 231807360 903290721 988545665 991939188 280934679 478768856 729611864 850022572 768768754 818766325 190992169 560997159 682528581 846806765 677897644 791103340 911254954 918700604 65587407 323532327 811498334 933649563 860363247 872218459 871731988 898425065 982287857 983831766 73056164 393294703 816197075 952278574 122645734 490045898 345060177 676980540 497757143 860302723 38472265 272915891 696126229 762703837 266043779 346990789 911877755 940349180 545339481 953703902 869221540 874548096 214260842 227377414 13165781 403850515 118102427 929655990 785049999 972795751 952032435 965269031 679835782 861111045 636381296 861874439 557254769 742209987 586559746 912154444 341989249 944237567 865972636 987836242 710632507 933532489 806548519 916006152 389463480 709897097 446500312 951227111 148484712 269188694 84726069 194551898 31487109 143598189 952687920 978908968 204163340 308768654 778972864 883453986 152117774 434072065 903213086 916348199 715595738 824154252 597763631 929593575 703991952 793416384 745712365 923098526 982169314 984494790 470267119 986872070 371946913 996876096 913440345 984981638 489555276 646262405 70416986 797784413 331731177 392013720 230596866 531738091 619689349 716490648 397018090 493559193 846751430 945278046 623797314 772345425 142037979 826080284 68676913 305367459 866647640 885462224 918265316 950147582 820212773 972956366 809332518 867706921 510393451 946266134 750977399 958644675 503662759 823222713 635862905 795157764 723889308 825123766 277066738 689204913 647415564 982550639 605617226 664936385 836896290 849912029 416742266 575230619 522367909 756737017 20010188 971478950 541391569 735940267 811787168 908982161 807049244 835648984 444674735 601023577 96923399 227836210 485787432 935878895 839898010 853644106 413133393 743145334 687336920 815963117 6587106 541133107 908649161 993201365 149872382 997326188 279650130 917342154 288558882 322651518 37597220 478251334 682976633 839313130 514748641 559713895 796093473 846455338 83426108 717273554 41239047 822190371 138502119 210622326 568926477 914697076 753056222 760387834 409866774 820235577 812115385 854743641 899282190 924696683 217456731 599993698 278436923 378528413 500353793 904937915 494814895 500455584 229958718 534286769 411490010 505408539 48688435 660556987 476484115 546796629 111962805 342824448 84751 113793129 267465952 665481227 613598828 906685893 589612495 918586176 982326976 985669181 395005350 533167750 628864606 663453855 677328086 927395251 449721346 907823433 483512522 607342486 656369724 877533209 980632410 983842147 408641869 638951876 526304156 536997725 407178701 577403204 101163202 988868148 618649638 618651523 912006618 913517306 637500762 921298498 42761270 123521262 983269002 988404215 115157305 270728961 145346791 404346296 996702058 998023287 270677140 403781026 583383746 711227336 962056669 973673933 934706546 973031463 762428754 896416759 675117015 968147147 786472001 998586629 76153786 538220968 33485874 136642597 14952765 35287154 159876397 598857623 450038795 983789180 799078552 871349647 212817169 266215941 832376725 834227667 947939847 995749873 989015175 998478762 412905797 996392624 9363925 672108237 728681047 850172509 804859858 960172742 268273108 367610786 33226917 303630851 560896584 818137876 717672959 737313976 257206124 699129709 782102292 965800820 754040983 850708238 238861126 978826257 163627035 552565726 150235573 234980605 312397638 733600085 194584568 317386755 838629048 901032823 400027645 899203974 99788846 605925431 814768981 850848574 883595419 906372644 172558724 509880239 921466390 958219349 594027490 873512643 432213403 708009706 467269855 948294065 924998065 980242786 623028471 860198298 374141571 869660713 29311582 69857075 943818306 997947124 139282967 942006621 952522170 962248885 227250593 735369780 626295313 729270018 624302259 833067020 247213544 688171868 284570949 618750795 404327810 490887395 55302924 915160973 322712010 917994499 936805628 960731796 814972566 925820869 843828276 889207708 777677595 919820541 862878815 958349311 997874137 998851957 69258695 692258644 129223865 837951910 124073991 930811332 611791273 919506613 514294079 554971595 59527876 949797026 768342287 933958423 853990378 944795873 376421330 456952443 994796300 996808401 775429462 962582154 691963165 920286644 319644439 842932031 668733922 750078703 736712391 741288737 355766975 865179231 5451830 967082396 71290845 422692718 322992161 412236730 207118397 219512396 416252292 491049040 141804868 187004870 573187376 689804998 199948139 844466047 620239657 801618517 601098231 796056054 792364274 963963217 415086535 520699023 837010190 904718062 711835402 958006340 867806245 940941223 973186299 981479438 866803780 992186022 816668097 920973190 266410080 873378919 494137949 792978649 89334966 102205138 422159035 996857813 577176966 833452615 758371956 875750575 642659423 931604087 464037659 834284460 51200110 226643513 815376108 860027667 160238934 654086001 140717750 576501809 511865602 613936409 269280237 855602403 727497570 978781527 769077936 841029412 749103791 974063202 443988225 811236418 787036406 840608700 14166600 627348731 135114433 679795406 916046854 952866041 723785914 938282447 237962970 704998056 438734846 681997764 697669408 991502181 282743030 979106849 225279355 872223596 489242973 667849220 558822767 582760529 290943238 653014416 311256479 368275465 387453202 960592196 342243693 728534467 296108764 311893402 493242992 585396711 844747476 916438973 281552968 494962187 886881623 950911916 425105936 746891566 13016544 292944627 946053582 953587466 620290251 764800139 867113652 898475411 212016402 440369251 487960253 957140418 934876439 981719033 572746036 976006648 570942213 704619663 330365458 452748274 225012237 402627953 375786916 930107769 309219893 937869383 966751241 973469557 955476877 996762430 642842024 851112355 690549360 856193781 924892662 991267518 3343498 956677468 401990499 922920748 686310902 897313905 406292140 679094002 850998036 852907369 948130098 978937518 901621095 964606553 512376895 552947919 753465242 954690117 858985486 945310507 216196963 952905952 753789068 757441268 286831829 630487978 888207743 967335947 76598992 732761577 37518758 826409265 905666936 963992328 803737686 824584965 991563240 993228927 9211974 945092100 631214616 781841757 107941813 656703156 852646530 868269812 664761457 823488235 49791984 439586474 248746227 724474258 558138087 925383842 696159378 853935944 104071505 592784445 966759809 971017749 573347037 821192215 878676834 951506765 725303666 827746143 419579617 607780249 53347818 633960936 802828877 957702302 427039753 857062147 275777505 331084362 423666743 586334522 637841217 773549964 560960050 780318334 569810822 701630198 140117337 383038899 995526483 996425059 113779724 615690978 123810611 240244438 956199052 972054762 829148059 903162534 173159591 348020986 519093648 623355041 720401420 926050267 544001855 679229551 110589281 489726899 591713720 631789443 671799385 739510813 452007428 818763514 476554638 844671877 144448766 212355642 751554563 889006604 57530855 163144936 194896774 436497241 993992923 995431086 284868489 545865940 56747611 592517035 226810478 940825871 931475068 951263915 233457811 461217180 342859949 807457279 687817578 935465791 712681904 940256518 224463554 362143018 337570738 481131944 307181449 919108571 267359809 634107580 754333210 821935268 494014927 918186534 262690072 303737594 531266136 730777583 26648735 468353905 742949153 747205550 906433976 945952969 420974704 704081308 913782091 967656512 519130904 533750206 883573607 957759976 3704984 383970531 487409550 725952965 866248932 907705586 180034339 605524740 541688193 652376446 613673709 758091440 804808844 859150379 342515818 845482158 941286141 949232630 699378098 934728826 55696415 563940146 501285673 747998489 931544358 966924758 824860173 905862049 983666184 987318645 396430860 444865106 565019565 745575303 963188238 966091344 812226359 903661633 481799609 674294480 400927915 793099840 980535831 990750785 74317345 598927775 897693410 979511828 584862185 801533770 946453459 961956280 67260394 920712962 210168024 850539283 40205859 227889784 566591135 746156243 976348682 977456167 65133193 601133477 769920095 847863459 672829976 701509203 46148581 911145335 532940047 858324424 545925071 922271980 541831315 921554910 672381791 890524744 721717857 835006849 251748479 437575366 675992030 832350859 845524814 895368484 56915462 322685063 816661660 819921728 22985317 922322842 106744091 439317788 224991740 451109010 90605196 792083367 768752867 908508074 483441685 978921161 405171732 692824693 846418807 904035603 916888316 936028382 173159125 696799267 225582274 797002873 719007483 743930453 705421993 883077550 20686729 988322514 295787858 764926659 783341848 873790043 72867102 410338259 479143203 901579812 342665892 668693655 793493614 866491065 385518299 448463980 598260232 687118397 412650165 879617876 799028535 906371629 74358438 658011441 605676747 962769740 689788480 988357918 568582538 631146832 734067387 904736925 567773555 644790355 153316853 626655637 280158302 478610828 594445135 856409173 826606056 862833621 980143148 990367128 75005819 991341003 229868355 539268749 634856363 880239118 715148005 935600003 487148981 826113723 658329446 675020632 501443167 698711844 684726843 766085270 582246361 608282819 963259989 994856803 161231438 509254055 242410002 886682289 503258225 812375161 917410493 917918830 185274645 574581436 775353647 900052522 837793233 980722527 359947368 379216506 502337645 529493516 85198161 740202633 450596418 516641384 834494348 902709926 212094920 501236432 378205306 539219469 616546263 921938874 902582484 923247226 893290046 979861808 16667449 922344983 49006355 899378815 847281222 894020327 425307853 594299352 952682169 979897245 762480203 995745919 954170364 984559418 671003616 959023295 654616243 699207612 339623893 940296305 896959601 903638584 797288966 977432719 990296300 997340017 442323447 697718001 94342146 376226449 576451170 777631701 286708954 548581930 785875545 966043964 748145462 986078413 317626843 652902166 75051865 212539696 748517133 761236029 705551204 837165735 998542773 998655165 331554050 397271200 349601897 510862495 435020213 498996954 367653215 868817529 484580125 965971060 898362335 902187294 220523985 248045675 861181949 901319184 947304484 975949141 574903184 725709746 290567225 400300912 217067339 255217254 370124159 934828367 880408192 995588378 120451922 822735998 167181898 439198370 759067882 783406099 651029589 821811046 337924057 994898565 507172524 956184319 445198294 909453480 176526077 680059039 322475288 915971019 620757781 898127188 171793771 962037162 318772137 667919666 679068296 935319664 883082728 890401322 109333276 897252322 311229575 706983882 465874380 522353375 641749130 984809677 97294750 819585039 465257714 663018497 3672553 17647453 923206208 998259010 473453483 915629708 788650047 991065180 775888832 983320033 785593508 882980254 665767989 959991232 619909529 828883730 381577600 874449866 684098966 694183424 717244033 728503632 185857011 437095520 216913527 306781824 167358776 418834147 627930699 797653984 760059532 810400951 698084069 830910759 791308756 940430610 546361527 907602210 33946749 140457489 168243696 277644031 31416756 690552595 659406066 913423353 582766818 847305466 680772242 690785965 141728802 748833314 104948479 776457598 335531077 627229834 497487188 874453300 750193112 879898989 372165800 657928299 620477788 680159048 157049513 632684538 147074090 967247687 275633075 795087559 237332340 622600462 332790644 889641073 984051141 994323923 537690540 542820388 701605326 757375891 908793778 949023214 712859318 817214673 730025020 893864464 84271806 356488521 606815765 647537568 951214030 983140103 606248628 985450930 249814405 584928860 114047291 515258616 288588551 960815282 802371383 887170231 548701482 742932695 464273912 512638109 638461453 720356389 930569956 976820831 597704002 737743198 576990384 760385886 315692120 518569992 926596899 972453610 760403387 857246077 742333209 839299406 5537090 364309366 174015895 510118856 279308167 919136176 816464735 927445799 500659078 738777922 602435273 953445357 960812456 995251455 402890784 959014794 849106659 943514799 911894528 982302502 629469790 713524620 118110598 458311450 627116859 796506739 630310378 818091192 129773946 885223928 294899027 483506206 334238278 611065512 306188876 586385360 843601980 902529182 672402066 917097217 39891951 796640133 657747461 803507910 492673495 990320372 610073322 634676444 480709430 777295546 934683669 978422265 980920604 985702581 322527502 488377190 830611557 878567530 115793115 948416085 208928808 913696364 101466626 665943752 930952136 975877008 623907704 644760412 972890524 998730442 792644858 871609374 574212610 796955810 417251293 453183080 675547862 767538486 197202461 606797194 779210715 977045475 910140508 975156065 816282095 872509032 257774673 589035359 152233907 686387516 390502336 985239456 20302506 53321458 272941192 304432007 955747541 987584133 175225094 231762223 120388851 726240482 416835548 721988772 220907118 746292073 531565367 601280356 506011204 928457183 477490441 607131295 627539410 866464528 739329886 935398497 895500565 975707475 465321512 940686121 393291910 957804495 747437816 864150967 9556830 93047311 332718430 581235002 379722892 807087197 461156598 564431977 751437508 802865232 838807987 911157872 281761790 926150623 847303004 867146606 938255153 994543543 814677836 909068374 2264034 870329881 111547254 928161122 947272817 947755959 704132469 981654414 64282023 101396197 34088152 728039089 865287883 923207762 118080849 545749308 354138634 860286481 61647197 270741599 731797637 924399737 425195583 559183569 977572319 993295097 205841538 842715010 155631826 745042878 154591810 460429157 52006955 880743184 461988641 702122546 393731874 427696946 42245703 945662000 459247620 902669637 769155670 975281557 238838943 488310589 640908489 745203436 887403515 984256639 629433592 756518156 561549541 585125646 484545918 550373205 138295358 501040355 657299601 816542708 340988874 851926486 460037866 762213872 544245011 608665206 802178238 917044991 526805302 714926432 786969463 962152690 910606340 930486665 297245938 300637322 381467440 438482327 108735854 511732132 306010739 933657153 257574467 852462987 923663787 932311369 494409230 909527465 90401513 425204880 487402648 521666866 829611781 956889021 108784199 270916636 486281801 727770425 785473469 874453300 684968616 841711408 734583997 815753303 456959923 675712481 606107145 982485792 333325200 422598772 989998015 995116789 536608081 640094322 477168731 980202538 392500384 788262523 358346630 889410025 577491058 946381820 370508836 786901310 756162357 931588503 673988786 754011875 776908246 907093223 67938329 178182786 515616274 875231495 610608778 629561843 271140479 585578435 31449803 243811114 931336370 948022979 402704449 909406448 742194346 798772425 572528495 941965844 547667769 578466495 752049405 788244765 809716651 887638380 504003912 551972795 855454695 903707672 19687074 819418767 753816387 905629602 439799791 846589402 717046641 771578435 833985446 884846408 449192727 687677422 319349533 413158235 903195779 970119439 277901323 402686348 69235878 320278936 516247112 836285340 76017814 461720411 870837189 970907161 702514771 936867584 441199807 638905858 491714365 530332670 145794896 695541548 162217663 789419656 694586845 725950179 308056041 740497435 441102213 808779123 543379123 928605356 724645009 996319019 478401299 911291172 303549810 386864810 551549037 875365425 319236204 586045826 217921635 645465381 473343576 505667176 307916383 561552225 201984000 946241757 30533975 460010081 931071640 991959010 99114675 830712352 457016493 904278173 146309133 339309094 813846644 853004326 57081429 455982490 243339006 720566852 216803349 338911591 15219388 211659722 765536005 853809352 801718474 959231145 698818916 949597674 941172172 993428246 439256826 833787853 992236578 993041568 623750459 639775759 450847618 711894805 203351906 387523637 349964081 520973035 980859855 991825049 917106421 998625512 50969429 684020909 338328012 712395006 633082656 642665209 564273153 595586502 167631673 405830155 887748536 921667237 386238134 972519006 789279582 895787094 362730135 991023724 385037009 922703509 374513349 763872297 152558800 468568028 193142544 362029389 829409058 944150615 686074843 875223494 735459937 901130919 173530073 507615940 258932865 305116431 608479050 760615574 113753042 976372682 908533027 916964053 991408747 996002909 73457405 95822990 744464942 946425837 880240716 963195119 703988469 864908280 364782751 753593046 107198060 477568936 957144158 963390221 971462270 986294912 649711997 957696698 923933085 931118015 703678802 776940096 612007691 650775974 62030926 721143738 420394420 777469161 903310515 916451902 558626066 787177663 486188600 704193867 645713447 720971678 350402448 754431978 881948570 983086258 55536645 455006985 262472249 656074626 24591158 645166646 220187187 522224314 766107281 995368897 644629036 899492821 416427389 435938020 554077029 972228148 672098093 815809202 475819644 505397991 941251427 964806138 953477654 994595712 684490668 758258554 173012194 644362227 614455679 688350977 130769386 711463897 793044408 967153583 934175011 956001799 134328643 285684712 199204729 606779885 778969678 787096933 900727481 957354480 532264552 832089223 350987855 967811940 274168020 510061257 42237145 211652472 339743554 949557477 495471559 895142618 830004786 994938597 284258467 394915277 635464347 723012209 690820112 824228162 871372746 892732506 351919840 470396725 315618324 947457397 860700932 952237393 777521452 825332516 27163293 917958217 255562089 669095075 781234869 781787529 556636011 808779017 694835169 823523664 36454059 703096174 286696730 781983561 858542788 960579005 131274347 613444701 449285873 743711532 137843203 741504164 104143063 918233802 698804097 993350777 694383734 948000925 991157587 998375190 995130319 997329680 730388005 751352456 619460755 775878129 650204372 716253723 586917664 608296233 880694908 892851721 896872198 953868990 802576102 993110391 865613399 917405190 716237868 841544121 443098005 452767120 803413576 915822010 864552564 894309556 710737436 950285834 600408865 712217899 789855268 925394554 616233363 991533306 812794387 859988674 303757380 866480919 407750365 994403528 243134450 861277240 411236389 678062280 637018478 673879937 983926692 983953659 661239322 797557685 627035831 757823185 129743576 916354549 660859257 806812250 931423218 984620444 255301071 750353105 283541613 318025196 454711492 666512184 590981428 602177618 386811457 716030213 263417187 269932763 983303448 990088032 656764015 917220067 978868659 989491154 288954570 716641788 890158396 993010446 774927430 947649695 361995647 819669494 367952927 683952520 652379240 878353161 761630707 895266885 426220974 904425235 737973547 991442023 456179783 640696839 130865460 807320076 55047755 518255038 213671367 624958538 467135049 846126445 123438114 779467649 756346130 861435437 629278351 641996600 217807883 426594287 957864214 998966311 293492299 839415341 636512481 686568536 731764876 743745644 964873842 988273151 57014415 733811034 994985680 998666015 90074699 513295759 164757186 640980621 810476057 995944922 374646364 662737004 677039192 858601411 40790956 825580232 188376121 242778251 940010864 941380191 506797174 995886659 599224304 762190073 350785020 848741587 964623742 990667884 189075488 473224732 656126074 977789652 830970826 933035486 38864080 732496380 654531998 954957674 890356670 985918767 21777207 356498941 373357154 865992171 361770443 604298322 949527688 989906433 491426661 510581629 205151364 387630162 780184630 789738086 179465247 617606626 747390917 815623296 808702329 978639227 134592077 678141171 149945670 153152645 46822632 882322935 558403188 631078183 430134580 855303946 424906556 698592235 991766987 997468481 751414163 837439829 315992827 554918621 202165573 844123405 949807673 965732227 594973183 827512899 137976625 549714030 681443115 952570504 818808197 838534836 225400639 671080157 783111666 879768706 624910749 873377055 953685996 961819340 74955888 333283690 905399694 980496892 514541724 855180196 176539115 727970680 186325188 782412525 248936939 706492829 265583787 326502658 741664597 895374979 518168115 670098663 361293121 907967617 329841163 899127324 563911223 983890273 832435282 875677281 205601549 260471601 501829673 756489434 602134270 700438453 471166804 714312734 49892042 970567647 97703804 271846804 238923352 384166121 558934821 952131272 88767664 688250044 556155077 909131284 964160807 968101948 422537780 677234353 876464409 911051915 910083286 987570098 396235915 401815152 36193109 478331420 273284627 702551038 641906559 694410745 496516758 718708152 354114595 460919662 277641555 313762011 911262299 981533490 537833600 894949123 344281007 813535263 678192846 689866987 194617076 642674875 981464610 992443524 754955335 935100390 308236581 450628939 679711912 988880337 287575328 561686805 231018293 483401625 573012298 803424190 557976661 881767687 248067878 296648074 99179400 685924491 885429544 932532956 136670238 893181038 156840991 170005188 413596996 874029516 99365528 136837046 915796117 967401421 973415751 985996825 525106987 735014166 372859453 879071178 893806837 919889434 937993012 953457394 848693491 850193758 871732284 931702555 204413056 881677909 550058856 718949826 887566853 983440234 241310787 367040129 516674859 701446761 684085110 962774067 633413935 937843232 526434953 992751488 404879828 925864787 67560174 317710967 388018781 780939185 18109576 132272237 535096323 950065311 475313001 658735876 309333250 657450594 186310220 415209189 17428097 505320694 309283096 809032970 192449248 803170170 666186657 700196134 639461352 970668454 195507544 647785206 717400765 967079388 15241995 819602500 950942933 980725627 558696595 780093823 44157045 623588214 80204996 539856658 621551262 819332742 618876677 804705399 860271825 922416149 907729193 934361706 957241780 985803054 351961865 411211298 906800166 931632594 833219869 838307443 657533511 951962686 702246660 922808317 581038314 934992798 359970971 443909674 531888305 712710581 72783294 595800038 445399738 998125764 854804588 977722596 821961998 876128205 141029926 967298547 259463782 512390338 845437381 951950025 324621601 548428206 471985958 982524943 416669007 634632844 719935862 912708571 106883977 819922009 270257088 303319880 941094368 964759252 280311517 550265764 415361150 532666184 504183479 520027901 78755503 562020305 345629512 868423062 419503384 456052104 425764372 846343015 291831911 328798391 408470847 611913752 644794342 674408331 516394678 622386288 790818000 948522236 586717976 597226671 955129903 962368812 32609824 400600750 512069859 824356632 289567946 631715761 985383581 998359952 16239977 490492591 527713887 951807914 90491995 303326292 728473485 769855228 98349985 736904448 625147177 762967150 612709774 814484117 436893871 800949430 704429270 847180314 69826095 109931785 464238225 968087571 702022330 837843589 987134815 996118444 991673332 991721368 239561041 292348116 766216687 893831795 518242930 968450274 325258620 456359932 915625515 981478968 385180059 585680984 189520186 768391497 87253628 416812438 808575525 995999207 381291754 469804851 792077111 887454544 610798394 617675935 766461608 916086933 219949494 396658359 249932195 977325537 898384139 913620768 565061358 691144263 374486680 902838387 962316492 997458010 46916023 91756633 94495591 636401186 995961788 996490954 216165405 253174967 747074215 992235142 770847467 835534846 377418995 935926215 753475505 897224236 872566991 957614031 208042153 309726229 843160896 870333382 30504441 787572357 306614390 652615916 766670022 893483233 12951727 527978030 647226158 763512570 426122448 839799416 342640429 839426550 977149750 990419353 863890041 900003648 549101083 794372548 846843551 898295634 564642527 692807460 517280776 740217033 194388863 915985926 69551599 733479441 810053318 882100639 958180667 987813101 935177380 969450423 967487752 992809519 257961244 483485675 977347649 983253462 341549608 753797779 874506149 964991704 79511032 746796214 410851168 801977034 439002497 565656872 418099258 848822849 76954905 789495539 843504174 904232052 378688453 687865637 103924199 361050524 137250687 992356102 243640756 944348463 394934076 936677330 662445111 886604785 500366949 753146262 611152435 919839192 761317262 938700181 919343319 924427129 287328798 294196728 523853299 632006246 793684809 979276061 331059949 642827364 824444549 873918751 888852733 892307675 518582573 758025008 562098501 760446757 174497645 953267178 407257385 498278505 809662330 974577055 371379529 994277342 552789248 650499101 737793858 762931894 248915162 318416902 54933671 72238186 388824449 875004104 81947947 550393457 678275497 728424620 278792925 666727424 90648538 187364301 996717237 998969929 607295643 676027132 391130022 694843101 677755539 897220610 529063252 785881362 403977158 956411810 989603628 997322031 825784953 857766713 200790660 685564677 279567049 940056207 26292134 183110543 652883589 957342912 411627998 856012384 690370180 862909696 872262535 884783324 283343821 586633145 247147520 485137644 703660775 905615454 864533920 918773201 235301489 946687153 667095888 821198231 186889847 495156801 177659772 310432263 169899532 728057676 91531218 686121174 236407453 732234369 680290782 752391684 960552632 996803625 830489410 871207855 469924485 937631681 974431769 989790417 25085933 306213864 256708664 630298947 837176258 876361982 681971020 944946901 334958830 655180234 588734352 699423629 202788930 703492723 816022086 958017141 746644316 909406432 672449753 863691329 988759197 996163995 434678545 886018376 950238182 983177554 688648059 727401132 128229222 351385239 836900652 937054150 339211401 417038824 743796904 756350169 586861269 821328115 334952784 613250035 294250377 959521968 3900143 494701258 453534159 923711634 162738537 671234736 795312076 857499461 217187355 987558542 637694142 736087421 301076062 499413788 511245008 852132659 597496412 928349692 508758037 526587152 610188203 707651771 230711746 438072308 407773496 416769915 566493711 907522273 243853032 551137901 400368432 860491067 186069995 924831203 208786653 503941950 976056605 981929423 834494373 980320197 685327639 871406153 290442370 572862880 384919700 624062426 646917218 920268419 402325702 807178428 38111422 809936947 951575699 978854022 749662953 818024034 75681754 969205311 347173138 458037635 176665232 914463956 388382143 782633923 728898159 919974148 706229455 828229533 541449558 738400084 835616170 984349537 860037938 990149848 98394949 887090535 217026863 815754053 569728333 810412695 382453578 439567602 968007525 981218109 137224808 611953845 665092146 730218273 196346657 820408738 34908368 482459979 175397425 715590526 685603594 928364471 784804003 835259769 926195897 961246921 28257718 718308138 431838274 646165188 202475905 647254829 391749180 526668036 718049358 833363657 449067895 721982042 903363750 934328392 439559091 500030406 884252669 967751474 169579888 639128502 470608448 485070406 662803587 856029435 862598123 954110938 198845454 389004033 533326625 638879537 650991397 668239972 588771118 762666018 905884842 943264180 438946386 721631768 970239523 974338805 551636185 871620823 448625613 698937703 169309312 750028693 723035842 749296202 719268638 817494177 178892736 585925700 458220753 984700482 327377187 459069975 298440889 576244912 533963248 641558765 531598491 641652934 163306164 655108715 895011331 998695970 764692425 981786721 138469412 818823902 780521099 906699045 341712663 529584154 891576044 979699217 138769127 687313514 752165972 781500606 700190773 804105269 140949368 622026216 69341093 616032204 702687640 930456906 366824881 398963480 261186455 756849058 303294354 417018367 642315425 702904989 118094893 579802808 627282489 898140517 846993273 860104259 577541673 899484974 317198154 794016370 458083964 900353785 521514979 657889662 81317885 948064479 720072901 829112276 430784868 536079882 337740155 409663953 335746363 601841351 916479196 933796666 917185415 930650907 485106056 991087257 415503833 483698379 750130678 907649280 198954166 232513538 520647977 903121977 420531847 861876717 963782061 975733669 516703058 711088022 402769697 803048705 555485707 728266670 887542772 916125035 286314963 429184947 150399629 695521097 324345959 628512388 473366715 976815449 475819111 782010312 684408047 877513470 733995272 993267024 571899902 720630543 603382363 913683224 268052569 572397534 723554284 961829939 103733788 210224148 225276702 711192620 940686179 993886531 586495124 705883878 376664590 519575767 420191851 956438423 485508573 823804148 297447827 972601347 11346416 62528276 306673064 590425348 764651788 954876555 864212075 979724469 354242558 723214219 780678231 903186641 215514135 367831044 988316242 994108288 569232939 613660611 614360879 966331567 163049132 332391281 957259892 972192303 64511405 244659200 816722115 953223227 132481379 824487137 898375375 953412640 54880993 735439504 747621456 867156220 269437418 533241637 884814360 915464080 842758887 898212093 883586660 984144642 532696323 973940912 174702935 789382641 811640859 972425440 615366315 816908644 764047095 854111285 294970438 935861362 887007042 962416244 154518325 949742635 546485826 790547186 654860270 840465716 787725273 959086862 192540317 754663310 296659085 658113514 99635860 225558739 596884161 881291461 853497996 997553172 791988002 968400621 859958967 891576405 567801254 660973666 566477577 998224579 114867947 482709713 308836053 362183462 480793445 643988172 889998642 905064495 286245684 919410930 220389475 996710070 499623010 548199639 66553008 764587224 61012873 328605953 9395746 932492520 948478825 980460304 708019774 869855691 742166719 846795643 540498661 716402301 268720287 635990300 487510771 748924178 680707721 940747100 713439776 955278878 132775374 674546664 253529567 615541980 556133667 989695039 558170417 694009351 143988591 624460820 409258030 699182812 869725588 994776061 535705857 763324432 795735142 956355335 975088271 995131802 892399086 910428778 82959895 517844368 498373957 898826815 933891104 942101477 385109203 739442082 460129906 802054381 281506390 684474532 136447112 318510489 841407288 876661945 341562073 520940212 559453734 621291494 466632547 784500232 92697856 500883993 995112816 996771280 162457147 448179772 716604332 883568071 314566721 824509647 398986179 525840453 358959985 857839656 608637704 759628189 853259577 888059178 848431028 942455545 794456294 964463359 44839611 78018117 486659844 618003949 345091402 450372436 142648272 760950422 468102601 634252914 180728832 995471746 935162217 957570114 682239641 918201494 750151210 769397144 754438920 968391679 384686577 500044399 211610790 555602274 833132890 845571587 825778253 894875814 518331694 757004476 713952611 864802822 314851967 315373984 672497085 859348028 529815432 815834889 938118068 968136812 824484523 883095712 660936634 721951834 649128456 861701568 360525727 499967109 89068352 298181979 372727539 971442682 520175912 756315020 795385731 890423190 793046420 894662342 141210566 672192108 49669669 543407706 470491915 484641921 85908426 386876210 362958812 698025137 797459155 894661348 402937815 431897717 291238135 627664896 419858258 696211981 574573017 617212412 924649216 932906012 632229023 774700697 984045128 995390692 232611082 499035481 155630494 870865848 272602465 736410044 639845056 848165253 383491985 397017565 46460332 309746089 351735293 383085299 82044683 335402388 347285142 576722935 219621369 298526078 990171347 990894916 21336413 173728939 228407211 727885130 568596715 996715847 921352145 921438555 476285124 789482134 440149327 610526933 761547345 832451638 112844319 287683988 750233198 961285317 982721470 983955173 608087402 813961797 821808229 955937427 380782916 537833768 623262032 950925346 569410542 640841151 125453458 734626307 406035246 726436244 669376151 747614607 383704376 768225928 747969877 775817348 790687639 975655056 965851413 974171809 746238100 912669425 600128126 972917009 357690968 543369716 1749652 174638308 584597611 972684327 229298973 913600277 836011104 961432363 66571399 390398965 60790314 442701610 490596136 609093664 58199911 388406486 55055879 630620523 281706012 699343786 532946062 545562342 707240950 714805690 125478590 202864939 522624694 694348099 905269414 959881753 314877253 524850275 798819220 802230377 863108533 985874394 598054018 634361707 290497757 675630702 696786015 841277629 689703874 920712628 409485977 444982737 830011395 852981349 87868052 389039054 144679102 375280100 953159956 960160923 514635900 770705576 70488813 678880920 844729566 897019146 640092405 643665189 462290695 863473983 401530863 825723180 435320457 847100149 825774328 889439379 918772013 984575822 845795447 953769535 446727353 940503071 154450139 502913642 569314492 904514368 972691172 985682024 814729339 863018660 14963934 807007549 379257576 832948338 441653782 656086176 258337381 567968976 158729031 816743767 733920628 926350008 157037546 844967976 341383940 912908880 6834475 579767284 187847990 927949044 213113990 726960635 621069434 974513611 66581200 163187979 872508412 924548444 563914916 618025355 694434840 696577173 626086825 692528304 92304698 547737163 978272040 986706330 712689936 868077814 417771907 718620356 436526394 919986745 482428409 956715340 840543185 853972167 873747705 893698987 381874857 401537632 292864962 576811895 120331042 551525353 358316603 936260094 106173565 465740967 954933299 955917696 655492251 835768803 268661966 920638905 636947929 670452905 316741722 873957338 514479348 619178629 284160829 567821160 816315015 885838409 274091268 647620991 977734944 981637699 610128107 617746449 773104530 851273014 160472222 281870947 945062660 947679510 251791688 697879370 375454926 755058717 682441810 979366716 14334160 738543861 389509786 428317612 360091797 402009512 104926701 120856098 400611845 756950133 644071396 907712991 147650971 862926710 915941453 985461119 201787450 586778325 511811917 535895861 100150696 543938804 587619715 972369917 908444044 915264300 115880042 628148294 86857449 681155622 241938234 829492288 751757537 774848448 530940947 813057946 542078344 903042168 487702943 516591061 194050096 545807777 22174313 142314690 563365220 827872711 767721161 865520468 676242372 818329310 112596591 731057394 292372059 806501690 527593571 818678649 200187092 644428583 114810660 959266525 931858691 942835059 302973039 322412721 685863991 837401337 222668013 508628100 695775914 935182368 767243319 998387503 997934212 998915553 551297349 608431700 94135498 808227675 963242541 985430415 925503523 940330526 166104286 916698891 674796466 929222535 517225166 536795799 437599178 843515868 138286547 607960920 825400878 973079910 850169899 868909699 26266614 306230340 902605762 986835222 869773193 941929230 799316362 976273942 821212015 962408779 788005937 883697075 481725381 765893001 251787695 677123559 804543247 818180528 266162035 806201098 202529877 322043119 786766577 997570661 547679225 775524748 600842595 654842738 604640841 674834129 580809553 825746330 621419490 666146527 521506140 744896915 57707125 668075346 463346995 722556291 156867522 452274390 220512382 697169237 714175629 809185209 12179405 784964525 458498967 939645046 575627226 668108444 15315400 543567900 511303850 674204901 937231247 954605330 725966185 731901078 49577304 337187525 281017996 423351610 286453621 535354707 582497393 964285576 790522818 933863397 322808087 715104274 898610569 995395298 847337849 910282333 195131119 478462880 104709568 806430092 9980476 140339101 137138392 406673373 726059936 774571186 296864690 401536200 477833007 629315629 432669844 573870583 58495867 948195406 728702506 799394782 227704945 998909205 348847364 642626892 486815814 581644411 405198840 480230761 641920961 792895008 378980463 909274157 968308437 984913965 577081207 802742002 868413937 891150645 342638124 779124088 294271316 974399309 232235133 474675568 563272928 781595398 858778481 950490571 127933041 616477349 973556115 975203754 847644963 902277877 364324532 936510765 133806888 903924086 711059055 783958093 393865449 709388639 617868462 760451535 875737504 908430339 268378887 283395224 279012112 279276235 541566048 787469803 964994591 982104741 516690579 813508230 365405269 597482908 458705423 489471821 346275907 679785722 217677360 227815573 59968465 871528999 390010491 678209647 444784123 928776576 607770435 762681446 481958936 797544964 674361815 697490317 870292513 872564389 454429700 734724727 5525015 780422637 624014453 630955387 870876506 881702302 399955903 814110437 512643346 770331784 977654376 996071871 328272626 460985433 76490465 867228299 693371215 778015648 677030000 938999548 682075973 802692241 494164137 600120720 181533019 583076247 901977817 923000240 782081115 810277365 759619361 775179996 674382070 781207354 44022672 962497765 931951632 951934065 833550420 931401763 762515443 890903770 185868018 255616281 704940590 942298688 472188537 536914017 235799636 865711737 226276345 444135051 888593682 901957218 258340927 902899713 69083090 822134961 879634723 988578955 399553623 814578303 299735602 475347041 94717608 772654005 187046122 885059090 203807063 501036103 985511291 994815708 428037397 849968651 303389049 558298339 515814396 847232896 853511501 942135830 237356282 372839706 176611464 832916123 747125918 884431444 93177269 340681161 894071264 997974702 622405181 658359312 949446815 989507338 904259712 939030845 284177505 855358012 993698222 997346325 268800207 900569470 442537040 931590733 502446944 678373500 888837223 977265559 963466078 972710172 298332018 402884219 531974159 973227523 796684541 920826295 245722843 698190437 458521132 634408321 136129666 214085977 312094932 523008985 761574481 775460161 198504870 252594387 719377457 849828307 542472401 662649434 842943352 976818525 228980296 624722822 998232033 998967168 799392807 893468330 123746320 556542072 834635565 967428888 103297618 732924022 174922618 902796543 175156649 776939471 124022110 543042867 905423448 987118222 324959657 681960176 125267119 571936858 446155603 917194528 909750527 914459890 77821685 493398414 415918130 459425852 52696262 929033261 986317561 991601273 655497427 714376076 918529794 918891926 936209898 943510570 616897183 963624237 210239281 565700891 221538171 360776939 897607391 947583633 435095462 696777075 468831805 480097805 737971263 814368815 552093595 635432357 592544748 599728071 858746205 921347336 878092107 920069951 60937182 944756893 25517968 250004184 912987633 945805226 168847688 702666658 553538722 967627009 544110118 566794730 715468188 842991764 790848853 834347893 717349237 837962524 449098837 476021322 448838409 923375108 523866294 668427412 443691417 696116322 101850902 588243692 50227908 765834101 703684720 858547294 422818046 524464616 440433587 576414079 315269471 758615336 548504099 619230061 433710250 825445301 308076076 909665756 795367102 942949367 923633672 941875637 286634654 873768802 2301411 645006791 429794224 896812369 206255142 575454761 627142843 864115382 606635573 928726459 753727349 809703599 106420521 888666036 338656626 942220854 520265622 935861847 828628629 983629728 825360340 857532589 786224820 865352444 977452023 989288235 848177425 908121221 950179625 980757278 238457672 754458309 783004034 998645301 180009476 317410962 33399494 955216561 922570183 959678727 960307860 992602503 148510753 922649842 23992117 317833424 199120739 404635853 388203934 540093015 428333797 463472372 997761255 998356711 776243441 800116098 823919057 886069988 526079415 537794888 220667282 481001532 106014797 260349053 816430800 894456348 757436100 819306197 342168277 537103148 430807149 945809564 127776558 476845983 449046832 968925749 438952632 763566754 311876556 712077835 105896560 834530402 142099996 300220863 727857650 991443802 109096110 990876449 29377159 418552097 829509038 917567241 893284214 916130854 346693353 579617180 845102709 989981783 85155972 566139292 841097315 932018025 401960380 944106357 736294200 814365925 110036063 762459505 21267913 294333848 955111622 979094962 323671933 681973422 586570078 979517671 295488814 713885880 557883475 952713416 965073418 990967486 530523981 830153915 107044189 918081718 665572094 828639676 974125854 977789443 539006251 718881243 750071634 860738601 219296021 544295025 857848036 947183779 599363329 768968226 315575303 732571102 690923015 919909647 36833296 812193814 621961677 844871703 613559581 743067796 395488346 839904512 851554953 965795724 76144142 783407811 363990728 932325554 967909850 994347371 82621606 982595561 626452887 672225597 322644463 391040601 690917081 912778487 964100081 990543843 681056053 712311614 946660542 962940051 909413247 933111556 778612887 849331057 689158417 883696998 629152040 855269676 132943849 960066425 406231540 873267689 310242487 987128210 325836533 587215871 689690248 764573240 525332198 579096473 707927981 867280784 385364478 699584711 737374573 893293334 132674463 179481605 545906534 946010419 350839429 614283939 9405375 319061182 76249886 861814401 167636435 181332667 501057900 570841381 569262877 953636690 986324582 993280796 549838940 630167028 865631230 929545762 35251567 888465096 235242386 878006330 663733676 786871823 876672950 936596651 542357150 785129571 786477032 884101177 725787941 949634589 95403186 730549003 482893897 763434819 665471838 980211272 836609006 874672817 455670931 827227282 617406074 850813560 161151205 447185667 990152353 991536050 131152363 866946961 99579881 314343799 57038342 787647502 147141160 369790703 903308532 968287000 853965968 885931389 998263358 999308713 538372676 825657993 779903975 940834683 720980749 829518691 820004561 844585366 766438738 816910902 107813679 494538372 683294233 840365028 421455632 717484271 856305510 952411912 343354092 686563977 491061415 635758294 44292173 601867503 628937693 882911501 28556913 513400601 26318045 536526285 619728836 801570239 13911938 949129475 440599943 770737897 987673989 992426062 712256486 944904169 507424556 911727555 188832974 380695399 429691517 933590821 179581336 448077248 479436556 556366682 77955462 687229364 392194331 515349553 838236119 899532026 925405338 973345409 444110821 908182044 256278850 309310507 930005057 990133267 68158686 674217372 592409189 703539477 142246146 446403676 475373194 812198535 122440515 343054106 226933184 850410523 779839544 891914913 965950593 995940160 330852831 959273303 193798775 610211174 504913678 880806353 493788064 935274896 557503943 657190944 190986335 985456024 832612363 854896206 492308502 554000489 966674198 967299199 15280334 25419930 786193085 926955647 538466576 883725370 601322094 806389431 193604327 267907364 573413225 998843431 563002887 682837811 817258888 931802175 911602571 986377382 671616653 687627712 511695482 708103471 603143877 657230938 618539226 832577549 878057664 982224746 961528047 994887574 542959542 851605582 548193895 671526262 561876986 874753295 583937223 595701483 809304081 930306214 44433528 838776113 387360753 873853065 121950192 266959436 971716287 975351819 816570101 890794415 720536913 932458748 352717906 913844590 839475039 880978932 540055787 676207018 891840129 915157170 672953700 892981215 83147759 540675277 261574357 602479065 983859228 996893910 254323752 659223682 13145811 855854471 702897399 998692322 936672154 998596071 302858038 552969809 350415960 869332717 255830564 334312352 283653225 393784632 977836005 978518416 151040048 564160555 13035977 901337436 333786745 645198746 884386347 913009402 145248712 499250866 763349044 869305375 729468771 753848916 218120941 354433694 488880235 703079077 818118398 842115137 840308107 900551292 257629555 956962793 316018806 751784068 812542326 941708208 679637293 948806964 877695901 883202310 668058897 919564910 511248784 680134885 990906981 998700262 606008140 703632173 17902585 82600730 832070902 842221220 850409656 913026433 479802523 772509866 536699199 681130423 72667460 548282505 148142656 731823902 284683747 820045986 349949860 366921102 181849880 716252771 287770368 665935601 766737047 886599556 507806105 692310754 744631578 954386346 610743288 671529922 287357192 886362725 415304778 653485212 202218281 637828115 613550743 687165890 594015071 598404483 114926348 174714895 379834759 806612514 512534010 849914577 530974993 853704506 519846818 794369707 334253970 484905626 698131657 789185706 711315427 752307796 547551695 612347373 491080594 494026815 875539974 947481382 148049800 537804984 108878042 565521097 552117586 914725874 205544104 572485776 462613130 899564005 168375268 916139496 444673111 965464775 467001913 796751876 550271756 667846059 582466792 993493335 919205233 929053658 208752870 430858719 533403896 826445308 260993557 428299410 825893959 984341912 766084289 800186389 460887282 670984603 549789279 604651009 488732230 723137294 896881519 945723858 309749532 696745308 141472261 168459490 909189173 936498757 659613418 766698064 212224416 811987096 4769152 188655065 601456871 765247780 863791131 944909687 259605645 376416896 71714336 384340866 131694415 798283722 244105361 593722048 921806961 946392543 535499222 565422899 354512129 443502886 24977422 744948666 665780242 668086225 928220239 952571230 895841153 913493289 434424509 812085544 772188338 838820128 542656207 543695231 340420170 726390318 403003686 604159862 510762084 516739888 503768519 541296842 438555109 514079899 25849743 589904501 361242371 456324680 651607928 734833014 498049910 748007381 123077292 161348010 659574101 800841658 675221749 940059902 580777832 686858346 303274866 822538794 258620388 518174211 459167511 920369713 838077018 933059874 314283217 622001843 264974081 846941910 70028744 317858994 738801109 865669603 485102366 508819121 298859634 590618625 409317045 649705566 798844754 836552911 805649315 974924566 663802052 741096219 252923440 297351865 53331464 267435828 354417331 967595273 931949830 979520879 405182171 811299976 115879481 661795885 863000104 958799795 991692451 993608911 874792569 958631515 61592473 534798891 190560592 531304076 767938470 869703141 775912107 983882729 221116986 387994016 989704886 990988102 768076440 962328235 454147225 966445851 587121903 797882714 943356024 960508903 748329303 983347888 959600792 975523943 82938999 355454954 355757414 846467804 974658459 984133218 286342775 905298173 187377194 956286475 81493084 653734745 106612895 310631322 399963480 746128731 637225748 872606970 994616834 996165660 36311717 420385658 112771557 275338387 84415872 124961588 343623657 565424781 295357730 426235815 19800139 514109853 954345359 987313071 299570467 416639002 690880585 970091960 722758760 775644452 88635322 575626929 240564212 464211008 851637284 942648848 607502109 791346944 151476834 620423611 343460091 450945722 888952005 967366804 937513688 994204082 593067331 924040642 210492507 894745270 955957391 971819295 100495332 574837563 676623211 991396533 112356703 289974456 107490785 874125324 123904104 851860884 103724092 335851464 613984314 624961482 171593371 325039747 658408872 897200993 926971991 972300158 519110124 668637216 329551341 376452763 436172464 822251272 67712727 643468624 384019051 871701175 885778588 934699701 973742340 979894608 570498488 598870578 582113094 884012988 233857064 876168877 509004920 954725792 819704641 924422848 646567653 908990520 216824669 410041477 904086690 935627125 962464403 986071404 96094278 155415402 10450666 442785151 186899308 391384588 305191441 944927026 834257695 851293190 716233665 786270383 509817828 759451833 475679124 908802850 490574450 648149071 360425830 595570593 33680207 930339348 419663601 774628233 64231930 264913922 986625729 998850465 96394604 282282984 420194632 466551573 886768584 897613167 985346251 997265786 953683222 977346704 533402639 710513532 285874465 941168318 441995250 865681392 240872715 244275959 482639405 506861026 473877203 849885029 827547612 936681614 489985028 690914505 290843034 882172023 137723014 608185776 499467216 934548987 333365367 810046402 666903351 832682980 336185785 501634430 253343753 693364611 54640993 185112966 495382816 682189746 594307709 631760693 44777430 305404692 984719538 985161977 162796626 756772972 602119009 724091131 797269878 904763343 780692425 882965578 241851016 618400171 588307645 824065086 896819397 949867960 76371792 612075910 849254958 956085426 951702451 958896908 708012860 819229002 576134067 845420841 678304477 727696219 772842611 968329253 799186711 918308869 203011370 511317474 610865199 861253122 297621220 837505200 966502314 979669980 108422967 282341903 800592292 916277979 677805361 905217556 323920436 551664763 440558668 994508253 554281864 904447274 967786345 994215945 792798460 890489738 799296183 804343578 482898643 891539895 975013977 993211080 809583112 841779198 616386057 971954557 599544211 713197611 462670821 738236010 788103759 799923686 148768759 675795730 116400634 815962705 699077273 896838348 884543444 912147997 675407321 899392310 168909906 515452914 440215010 677777248 155195266 276493813 735505561 939263769 800705870 962212003 919115800 995687290 771740216 822883632 510195730 664277980 210784552 211311174 893332438 946072170 18588352 479121541 408304145 557407863 989745737 992533139 43194892 98437388 401500284 775211627 781484112 909965900 236342561 996714236 953076148 964110388 243058690 928141527 415511937 529846712 703708155 840494483 95705267 245421909 441224751 991815575 983701727 990871562 56429635 412569362 271123101 844919115 252989918 721979172 262903739 634353298 691893902 914721897 887951974 958878360 576888962 723280341 989067767 994961923 143593434 771812960 147609205 579478051 871235088 990916952 605115400 969118676 401342425 750567691 161805161 864691784 106710632 330608261 238978112 598566350 724897683 883039000 559290292 850964909 85296442 830645971 937031312 977072848 23006336 754495489 397040882 739423195 292463474 357982707 273747759 406623102 166363290 631159613 353401618 959739289 128668691 171670490 570368364 686392120 811633767 927314973 480978260 898539192 858176997 968840496 135592787 796324066 287729320 641416587 118043886 451767195 336075272 376391123 498214376 966855592 850135146 947493866 267463143 492406951 689778760 710095657 554642148 702075068 249704301 983334945 957128110 960223377 606889601 843297484 432109055 436976654 514517103 735303735 611093238 792483973 554998255 862898102 395966734 680777952 677012432 762799932 616931903 729980403 338413558 799086030 626623468 982200589 278850725 305917249 169095372 603720248 862863590 947112716 356182546 595496233 498454108 683141312 191986751 858534080 924920695 948763978 711566498 937920097 920119730 950320990 975699606 987416340 410364331 917837335 1262394 866144510 618795983 652183480 25677354 991582876 325320230 976339848 143534047 732969068 686835197 850373426 323882316 962618353 605401917 911834788 706955665 875495660 897880685 915696396 267380322 296191986 231221721 593866966 937632301 948136684 644562888 826742681 940260112 968735126 548477741 798479427 118776615 775867307 448623368 925097274 674219238 985286798 89915874 923395261 449772695 877344364 515592239 714330926 618999790 846882397 698655063 927556715 983068585 986134004 164088710 983587103 294507293 792951486 797659519 854932088 320683374 950809278 860269847 940749350 537916082 976875743 127885695 177108634 788817926 805737902 324665125 627395897 479383095 820907429 153658497 639256022 73538667 523598666 699432161 808707350 272053557 941323747 770607219 836618748 9784869 317906244 411037401 849721744 688656295 727465039 832424191 898919862 276895676 849785992 330227683 615447233 257629902 571230487 828179023 899506588 764886688 853556388 656247532 807573951 685018366 910313949 279853475 811371955 832611459 895689461 150035207 290804367 192813941 332145766 37104600 164156528 687391608 866628374 410837176 998091368 427498335 596847857 860144282 953092514 721393324 864742173 974486288 995200409 114975318 951329306 733523104 846154749 62571056 674529577 848634818 999390078 753819992 787847670 295815699 432961605 922761038 938512958 674852519 912015137 646855241 981752481 691707762 777766710 965105481 995766803 81484300 903560847 653115052 847312140 530881783 889891366 309720662 704412495 597207122 676386293 306084868 537141233 232587231 622776851 755933076 908196049 540164189 805434346 993161328 998959926 54118920 219629898 425219233 528886620 592080096 706039254 311116375 947758676 52230708 927481977 191067629 720761305 636663189 717432922 758965594 771804170 504788231 508965009 172036489 357931851 60156517 967736245 149794860 444882451 737324336 991699641 727175807 821140854 66625164 853598130 62127855 328226652 13245764 211783071 897542973 997471372 623305625 671719713 148494094 704187652 698076921 997184139 339326139 995375766 639484762 707896081 90555537 578240121 572832833 944025838 447467314 974963833 779794010 999267394 273109426 334730984 980431908 993910202 609665843 735996092 57052111 342553826 874266346 960519504 963725148 983146879 417097001 553391440 65829682 327107944 99044379 456043609 942456749 991814341 190292782 364872865 114423328 705856857 401386730 637840933 569002007 643126377 472526951 782487542 821141623 987175988 639135932 670608527 448587477 537261247 754644435 976793299 513944710 994767828 524378165 804712635 641229774 821813543 325898710 830773945 875327619 949535897 52473449 156865682 615514252 734017356 595616969 764836167 247032413 489666133 375028 3197209 902504955 927814546 962737362 962770145 597578500 923227968 96202430 753689470 540784309 592373335 218236418 760751297 792238007 925424442 103980780 221139607 319158996 855773286 127958348 140541039 758726814 832904941 276803353 763067477 159771589 570326791 509881460 518702315 541796276 942578941 686486026 901346662 737839728 904918118 152848147 508417523 884852881 982142828 667357871 970021210 635550127 899614237 348548083 825208795 942165341 986654667 888350134 958507183 952903811 983406198 498902746 522188067 369963090 744924903 669604255 718750931 337463211 377921517 133597769 529842585 822442804 980274782 286314573 623110834 100294335 139910706 477140845 706702396 52457146 440477292 733882854 936430466 923458355 968023216 620171804 788639392 797515852 927411111 577499863 746750108 307585080 781416077 72958959 303928850 37120863 620283293 957868653 992300912 873387537 983638004 835757051 863810091 168274194 639404649 227292451 650011216 755192917 927948617 566492946 748532681 503621550 693061591 58371840 268409228 416987779 723901740 712243913 759834284 907262023 978375217 501864703 881807541 953597880 973113142 709988557 986266998 957445935 979120487 797751670 856651669 26415702 97779063 85230220 117981349 51260258 900100706 410861586 745000914 296149317 825601713 811220208 924362085 627240499 998198530 204864049 588317549 879828061 924184268 671625022 886507882 957254217 963965876 971994551 977597706 568113931 764302643 399217484 402864692 589902099 980012751 698277536 763884504 986339798 994481689 758976282 791275367 25482443 210390046 368147258 882837918 496542946 720299234 501831530 523267992 904302070 947830873 526950913 564777743 873295203 954428682 180217462 392767197 619704923 853087602 447085526 912943586 442448527 905450195 929231034 945880826 158428161 711494917 384665456 461813275 898500538 967079929 563403117 729852813 739484151 895032497 153918766 998752415 888460267 946788149 83373304 521421230 259292398 568102585 451454067 600078176 229901379 449179339 559920368 938628436 678605722 803580609 1642077 573100141 602252735 708640447 704707818 788399382 277110789 497669882 867792985 994056898 179115663 284703685 324923514 805468781 870974595 954761348 462507199 579657481 152791703 781207936 41373736 364144919 137525336 410899768 525631739 908092693 606378552 849152329 432202522 860805473 664672821 690484058 35164581 57963605 783007630 889042487 981154167 988118775 751444530 856252411 210837411 312170399 267499332 823747444 642380320 840179722 821331396 864217855 75120854 473684011 778133517 809338544 470915273 822813880 173980918 988163034 194553877 949007725 581713461 701669641 853090228 911878608 550856139 632439427 643601016 894226959 896186881 912916469 36948518 963755129 509244160 679610162 173022824 365573780 777017447 797164209 288351053 847039262 442609673 941684826 400733631 900395559 344268529 883442946 640408390 984114688 154881313 179768133 382646218 707582961 1732287 253729370 4193513 256298274 740175371 800982816 585865948 896438650 804082856 853782296 658677789 683819162 129240798 791309270 557820368 697577831 737362716 972298707 181650174 541554203 980849967 985985507 508068814 858273448 591865249 873680975 568673600 736842280 973863566 974071179 513144147 597223011 506247797 749152895 661964827 970082996 55049881 528070382 396977078 866303417 183906321 693558381 397696802 946204109 922097199 981852198 607713710 883216702 956318148 967388093 307730785 570010056 239715442 814706828 431825454 950512608 104339854 106463359 823344859 860167607 651723392 997370007 275405079 401520547 196293111 867294644 403646599 672391589 82560240 675689546 759028376 829338301 710831424 878864017 388237019 438676647 992649514 994578497 384524339 756254456 671358981 899221514 629641340 650208523 502614010 719041279 504030595 513333155 488184182 786018517 952870747 992078487 583748610 931280422 569555701 859916900 974730786 978987216 695220736 734967846 327832224 589093596 555040720 656783376 702957118 927685964 351471057 636690310 196464595 898240776 350681748 720961474 496125280 818260057 495331656 742770769 848512215 986679137 184192858 263530205 232635113 624484905 911466042 992712472 682047385 983494512 574087098 629004320 127643778 327872543 946660158 955310482 422894197 691037962 352595724 902676139 181302540 975416071 573643842 705141653 448220781 715047941 736129608 806506647 164251181 657839727 95434155 734821137 740261353 985110826 543497251 618481893 715786910 933728903 865723183 960840746 435333236 541397610 667450083 955849716 555731569 571350985 516776106 838388002 621782486 717046120 81256793 540057715 470742092 789453317 431726766 703082344 128943705 617492967 692539116 772079008 654705539 723054331 682810435 790938849 400793422 811283667 33617457 673434346 401552995 959819901 724702648 857318761 638985334 842791976 640361427 895585280 360222350 639232329 98392902 346235716 617180637 890567219 922897155 946352487 81139823 629956080 224501492 950556497 975997195 980880274 791567941 982814875 212119858 820675634 573507672 918288067 34148123 510750498 169573081 766116085 142641265 662316417 314946669 541077440 957772929 983940091 855445125 976491630 62729115 847922664 520953005 929340603 386548839 793464218 968917888 983319106 743488146 850998058 843996603 915046766 192953341 822848195 124545298 400325811 757486173 885410727 551710727 670513188 24105724 759919201 201590983 365889224 165447309 707557804 868603332 968966198 185429218 890294449 780866649 995183776 536973168 603532189 310063182 438539696 99928305 925509038 887959829 891670200 211362033 644541048 140879182 234395087 177695829 263298551 579750366 782312356 167895973 632972651 979626413 982235573 951734204 958487267 653354091 696111236 665488417 703959855 962194126 983279455 536834658 856847989 432882202 686208124 641038871 917826980 415808139 674319746 168408485 881524806 810695723 941203526 414468958 782873845 434346723 475394911 974763045 993749948 674601050 894813550 803440760 945648766 875489041 943509153 533530860 899929304 28066926 149108596 215098931 482281876 866587099 969018482 763340983 943465862 35372824 470633320 536876758 984592994 157909531 950124136 240288694 649779553 37234857 641776922 991323341 998429756 428274304 462547362 717625521 837872685 596626678 656071158 541950438 727108061 515588754 751203658 592047193 973117504 132804878 766584208 988154628 994999002 532048612 999205741 235694386 712679315 990386624 992077432 804909240 883157418 218045921 608672757 698793045 846470767 897713684 941202292 850303259 861140536 209805515 386950310 574561252 969512820 567550275 657255855 491880243 938656852 687232641 938744955 213465997 253182998 38325966 703223966 485458318 971566771 970901780 974217831 861814671 937027184 969230508 986158935 159750328 935665118 505173240 563685042 453219553 527922034 28942107 51356077 564097033 701664360 258530195 320743287 586189008 982741959 472110535 539848917 161838253 468215063 870944856 873633144 507184638 832676839 190492493 973147984 999195694 999240423 235758349 990508718 80499271 461583087 50335760 804345638 723622482 740314194 528246707 826015670 782257530 877301101 65478244 803327976 545699754 618269373 883186670 993319064 244994459 470089486 714649948 867936658 995974501 996988770 710485223 952972218 184541567 968885253 202396791 503693233 137242605 789488936 428942147 907603371 873468637 883445936 940241324 951413941 635831912 894197325 105683177 543004647 454457320 894177261 665553348 847802855 939354283 985527901 626664933 638380143 520376111 692083871 452426730 923762635 861475936 914130941 82386196 914152789 350627093 521497292 275209007 605778151 660319803 957528556 878461636 920797695 782828255 888112292 889067594 976672386 254470123 542351371 947350546 997002121 986153499 988431699 595657531 897774240 934084406 954988006 463629819 485421770 194781171 565421782 761730558 997771226 625348380 711034745 260925165 809008866 371163875 982148514 319765898 903225488 365549959 507639152 766487197 863227609 800474308 827835862 21205130 649358454 536565407 665860558 549757258 966056354 403481413 664678284 333829520 634378380 597464461 772335188 24357256 905029100 993399941 995159122 739204588 774146321 122716104 698262709 284265271 506033604 708128635 778224773 104138620 293445328 842722516 858561189 65416100 544461363 118164349 687330139 125967576 920974267 550820453 612279261 294524136 399817828 787943765 905683944 839236406 948560623 206293175 307357909 886901537 989974127 598265661 658142786 430424133 751006122 357966193 873856765 468210405 625738425 92562635 870690505 387523366 817467117 291027938 794445490 858368755 900954793 975725595 999116075 252034432 961002740 840663448 909782112 686216859 829671676 291104674 957443524 832801744 844882542 237626332 897629064 734781510 890509942 967611440 976797451 834157680 925966500 224664688 875590752 169231483 909387737 632949229 979336246 547566512 599329389 699489193 989696948 97550592 614527285 411444890 538476226 864857164 951751834 15185746 601432981 430540577 433212181 201724772 490178941 735812749 799566753 530721149 632957123 584388153 961855805 777242994 867138645 436802301 820560726 565222117 816700790 831896631 976393165 843032591 993251247 91141936 525575902 32672873 377120917 389044442 444872254 557189430 848531101 897211354 909085015 577397778 695572018 231963321 578597509 343232191 444979849 464394608 540378635 360722018 593185888 695524639 932465058 961075479 992014109 252852238 604375615 759606303 931276431 25415117 724994949 6887662 255674592 904294481 956902568 941186760 977082216 24855602 708381872 839338617 903213206 770311218 780973157 42901178 141472573 911645325 928689640 22429976 379818331 95326195 889135616 933891018 990944947 789285108 833110806 339768215 915726764 916788601 934876487 34711302 662708517 258099154 409176390 414395715 978228000 962122031 998251788 632869527 848494344 553555712 619115981 765545308 807749839 38576830 932650792 371667211 960810852 355313966 905374604 222022293 902451581 636810671 819019020 573889949 579349147 844973431 907719632 692903387 723133798 625096222 784934874 310821827 998953479 110244380 691341753 647764667 893032655 986298388 990335550 753761955 948110498 962011161 968049289 398681491 503965621 526805635 774189617 602877470 975904035 640112553 901803188 268951178 591487342 22589027 275158584 245180013 532377617 812064274 973949722 191593316 328941822 135048652 412185729 817274692 973977822 162144693 535892905 950836037 968988841 78376704 824732530 598598778 984831586 196062398 686166607 599785838 691650175 980484172 999251316 804197144 897179671 456675561 890163973 211326177 252105490 185670530 580760298 200089083 333344287 889252177 981529127 332965903 564641627 434400682 992442943 854687868 991213798 48198174 457298806 949887868 952222464 79775432 658702411 612211909 844273936 285221362 860538765 960582855 973926656 228464047 735885182 462581247 926210881 189570280 574304845 164323125 415622342 437561414 976481570 84100595 87470727 498679822 829166735 721990410 828794724 9472774 383492687 666520832 786404421 388046526 907184669 82284046 470034161 445562521 601019185 429695863 615783975 422997951 727899506 657568082 723450084 263843905 726459048 110650134 587352662 964205359 972811929 168766162 550509685 734077954 960177204 326363184 945093901 274083276 830272209 221016441 644893970 445015943 521799341 240454952 776721026 76487999 872073847 700022294 765617433 70439324 229268144 552538702 819748314 400334340 604923275 599945611 633038888 154085197 283041110 23634395 830661741 535916267 702561149 157840901 620958334 927572654 951136645 875450949 936410792 46505689 501139972 507302693 794765609 743449964 810392436 963157343 973228471 934340472 987648116 508667564 718236940 459865426 493492383 789546330 871150455 535862537 805312262 50756079 435226398 490142301 783975186 42061633 462378425 134388197 735950837 759097885 978033906 864030202 938446250 996535481 997839081 722524345 782418286 881316759 950699237 840923403 845348159 256611568 938093647 205486754 771128205 699730611 819989454 885109198 931149808 790984114 890769488 328458721 486706683 362465252 827807738 520783540 904783862 390088681 945289736 244052251 724846200 638724335 911847754 696190174 913711629 475189120 842794826 179761058 410867663 994384318 997245944 808209180 832172965 289332194 723243004 529319361 569772585 536473151 887263411 409600406 748992584 554259932 838289518 714047242 772301952 69847527 858091320 83417480 641637925 912440726 971673241 183076198 636959843 328072600 858916858 441849041 662672691 654229869 837247567 596908294 772826596 549938800 776918840 140780850 903815781 694247961 989894468 307836073 922195035 441960781 681488165 179421395 734089087 566832917 894696446 296416759 762800966 5441732 587234294 443737758 870077884 159933047 911546541 370862836 843169521 297685134 633986234 365217503 745129155 640190145 735543140 135209920 304731873 837091070 978262618 790119445 803008631 220150271 948509680 801191658 816505645 322054020 410427662 120406886 743889858 417938998 795390916 997079626 998218065 17384969 349380251 66396867 442919274 583412005 925127172 554685877 889985460 156899875 548249198 691241545 976698316 805338489 868441165 282051098 547946000 254813130 642962848 654116008 827892323 632484647 724344551 29868295 43672220 8162969 423307136 123643996 904949763 467584343 507082692 140070783 620332445 904515663 928696726 61523277 634559917 507902788 587424126 825318176 935677922 634779774 742848572 792145105 885422091 81200361 103217516 855162273 991464891 645738768 881488301 840677723 862373203 784904324 803665983 505834866 788285915 469845620 713704381 956167655 975129506 341520334 707604710 124966255 374624430 795752373 906844696 790206860 931524703 676443901 790470729 930657312 939253626 234167629 681700788 821353859 823010562 178544928 914500880 898395522 901686586 926194092 934791462 268505528 433388392 562071001 971317579 358450992 367434619 237153910 704702390 562033458 609700834 921652602 981380962 138507000 673352832 990576189 996928528 185097673 465006689 161292245 184240584 395409277 658142681 586558949 885769021 902276953 989619403 481599968 715228515 441725292 846792578 276823476 360260620 850092457 925100555 826417023 851062492 121166084 248398702 460555439 775583782 860228850 964751558 976112463 986466759 881070339 903374669 402337073 526492324 377799166 857865317 79040830 703063502 682050889 796299002 210211900 396586287 366888058 390608584 3103012 973819166 552736039 581431564 512864264 747593283 645991324 896309281 679560999 969562779 5675983 233157870 405569538 654483714 417264320 998541216 734378109 939271267 113828040 245232430 271685810 536161464 328337965 972770648 217504040 414228070 81219681 848490641 41131631 850472901 43000498 76971044 207567950 569429809 832191875 848049448 351356499 757783100 103100673 265514356 869301412 972182030 634316880 948531887 376079654 566866961 535827497 768996454 218257811 535706537 732567380 849398663 727397724 731616364 897911692 986835303 865236897 933168699 691868764 858419942 117571603 713630374 687527338 743794054 913738586 989603853 767215915 949800008 792765482 838132784 755900047 854180855 23974156 91127334 74419511 97727162 483538738 982067415 537383850 965953415 734021776 737129765 782142870 867865684 61997672 359175242 204047047 642621493 507399336 791633920 707382156 912578586 491401051 881669625 697318839 879414552 126845167 435688160 357350372 830474524 518566739 817189491 346632213 577918452 535384313 676584133 249039139 484536307 558088648 891078792 563774367 864077750 562795872 940913361 556752789 878259760 849943061 997349199 201267713 899458317 775665328 894163764 199185882 671438187 701262765 801337434 34331841 746199043 655422289 942778484 40692304 913251354 122097870 323672826 116061822 771024318 90643265 892370066 886058287 952243719 815154396 884892620 857738824 966895838 581096016 782444978 187438277 656395263 370363948 390940920 830141898 904885895 504033779 595770642 920043422 964504200 590816119 649563003 496853685 981386931 222467587 726230302 435110403 736588012 597337198 667074737 98811553 695501582 441278747 578182183 718219760 894199568 795195163 966542872 707709157 739553784 309593842 759274961 956617406 959960008 69039864 414037248 581648689 674918054 730502926 894188248 641090474 993319498 913602774 939060410 118515865 819137038 923666160 972202350 690669161 717506755 115035030 732287251 642283820 713544710 924308592 981742573 351346158 805660742 105414704 663088247 130948965 473335226 185010571 746860435 393947965 511655612 582040927 761254537 360262753 707116409 753339114 785806208 483613769 623431380 956097686 987581280 371564673 643132262 848759178 893408689 607361369 806495124 772097507 832933328 35143851 941216668 474339426 599412867 682881255 935791449 754781630 817048627 996114779 998586040 887997727 916552588 756938959 789775684 951198787 966319838 34529104 656771654 901498031 971928545 464178752 610582901 332152440 905145634 206809612 971441496 11860238 847664813 138577413 697971340 946176898 981530207 256423567 618446662 479944839 765367893 977500799 985413771 829645124 930414305 641920803 895237310 205912879 219752705 531859524 560456129 900752058 910377942 898862662 958388233 703538833 973664074 158504168 631605712 507403672 533051524 962957250 997165088 405939359 853435431 546508209 944107816 920369570 933423806 14642922 499451434 598725297 773837167 830724515 949675917 993845712 995112827 27414673 937239373 173498244 605495136 220913490 452451633 993407690 998253606 337948966 518592680 564482144 828357730 543907764 586667841 183184233 324703635 964270334 995510583 574952882 794959143 139039249 595790455 485777835 613463181 626886399 847119000 911004790 984060969 143542092 620402327 749074647 802009949 93656623 187752561 70935671 841642547 760372684 809421019 589814514 765486000 827717656 909463139 209062026 307591935 978054380 984748085 426937698 541794742 844642988 904451448 382577073 839131912 579750338 673454721 361304322 869076414 708531041 732874905 792903456 939457902 161036785 508158076 184706948 946969237 910394162 946030686 602481143 960919657 565116580 929109365 240765496 496343849 176494482 347017749 407972814 482966217 865694420 933295229 416851332 755858145 967297998 991348191 733348190 834471067 401859608 634093011 814404848 884841578 337311487 739550087 819664269 861318465 54562466 833362851 769154218 941420175 612051558 988152849 749519588 768995596 960957140 970422672 615134044 626218674 549416238 773805882 734731275 752061434 740300698 795482784 601734244 665793156 971678478 997816743 558376278 904625705 516697779 905575354 582956662 903702198 424804294 775609820 759318481 954724005 972925331 996319886 841830577 983039536 756581999 892134103 467431605 586333282 404176432 872923405 171451511 975264916 743430307 878537524 548976856 903549075 468262122 746319072 396559224 724706109 643462317 786712795 579146865 835751853 743844639 868926974 779527198 991518843 913107261 995734165 226128441 936031129 176437784 529011471 522054639 879092816 561339175 740851586 450570026 900814842 679181761 923690106 446714939 525398355 978093989 990983387 149807920 232903704 153891866 573731067 358359938 871519782 186563766 548215215 638919950 837564391 643486300 960578433 954138971 991458805 669220724 955922031 384152924 755532983 538439121 613498560 237050220 482028181 67380328 635932285 420909543 441573690 341434732 446328788 364278504 892118656 74623344 645551008 604757270 608895481 842890632 948709365 565306922 869812268 645068675 746832210 292064220 825424410 910206356 911275133 491269352 654238660 79720215 875496104 584978003 904358595 351432374 509968483 997040691 997539436 823064618 926524356 378265539 410864650 697533547 965651642 695477271 751732963 108773034 913052769 531700334 611709478 590598061 808564977 642125895 865124812 927967940 947882225 440266027 971103900 468988258 867940631 635093608 734079442 208800468 257231918 818629188 974227474 696680135 915705208 407195410 860221646 484877495 959597593 228801026 807695905 857376702 860483218 888589487 988504601 303918710 647336387 480815969 733882123 436848268 454743705 832551500 891046772 522794455 572224005 743414308 948915741 565362573 706455605 449727560 662462602 896290357 962851537 536898516 797705298 18520396 625829613 616656771 740375879 918900127 971535623 545742481 824613493 573978209 974611162 136840172 470294692 217066944 558436835 512447847 632428516 897223969 917127846 920173974 965893092 127304357 740127714 641521160 768984630 685039188 826745792 436677633 783332721 535224535 619037564 663985908 775964797 608829202 830054580 833331489 970108297 283937462 293204276 54182272 417306819 179842338 763795177 911739035 928508754 119077970 682886525 839860973 842706173 103839393 727241831 854651148 872910647 300348722 366988348 25484365 60644414 760683521 921572530 780670764 893920100 75174727 493350968 355295341 473491301 92734938 701370229 984952350 998193373 978898590 997860539 562027231 607176507 575509997 607948183 260603977 898061929 982969180 998850087 153606733 597358163 771420092 917603420 340906580 935630259 366897028 538950309 100915850 868639095 934587444 991627382 346004756 824827775 199621084 582878036 657851429 758289411 968031024 993239209 411048548 585124213 394348960 975454546 498339778 854986689 305749065 539104889 954832416 955910601 175811521 973067824 467448814 895225900 209631973 601183264 278501259 430031810 392893419 541792604 855774960 908742841 399135613 716549606 723123703 930517858 59420638 736151038 821036356 956196452 901569919 920323346 576537996 937064576 584610480 940351816 233123029 286957291 654915677 882254942 810167558 944831087 484652672 796074436 632336020 801746704 18448789 285011628 671892400 958655862 275141891 491161460 388346452 446992909 937509447 961992517 816448683 856964999 91621080 460282969 285301576 693056902 859086498 901441234 90705986 827264795 588802046 876421355 241932118 818453917 412186014 512048513 326606737 641268801 645807959 909197179 812426719 812726481 844537361 940141378 259951411 262370210 21650126 28450510 160880022 391446875 368966616 771769314 414976401 790876827 730498543 916823099 565055008 697615433 874307058 879532929 506756481 864826434 823166896 891553839 440825664 887216241 644611199 922714497 463420019 989016429 998791077 998863091 505737013 542253258 643737143 665581533 608730895 737456489 187430576 448161782 412506441 527087860 374001702 846876049 651298603 799276484 618377746 885092158 155391484 532933627 55080401 395017289 474079501 568984337 789455717 845687926 514077014 892981058 612532062 976024044 571589916 753272632 602102941 918559226 174850430 278112349 954976909 995164466 543384809 661424685 558668453 800297265 937789826 965940401 451609628 499510806 392825459 737654952 230325880 669048317 82968101 269169581 210337051 872896895 175144647 508725303 569307529 577859569 767994635 828379075 654978010 925340183 114027040 401929393 304462164 346394966 328853760 880116564 52849685 86853894 928768120 974545808 711310664 994394114 701261282 824226240 858034690 858480285 269598712 477551582 203961132 797919396 482737016 924838765 749532320 838813428 484815573 631047460 129933641 572213297 744642163 988200236 610677412 713203799 871111137 992260987 353154613 359884296 226461724 664958750 384741561 794767789 453089907 984837121 301518428 789455273 781116541 845507909 303415234 340919309 703023801 837543355 854734535 974549448 584150448 602047802 893996006 933681643 840047474 986163067 741210753 812393042 767972956 959157646 574583777 827248075 289113223 595615500 681052320 754403788 647485097 694285108 453219748 481954582 679757544 977401405 183191536 806924430 605027077 922712770 748497084 772999322 559573278 930004581 308594327 734968516 146157317 300897581 79895570 400815977 641550754 698959777 878892835 947954261 585803932 892807153 111579634 631067882 50439534 816244100 219521791 583445289 191698265 811585342 418144830 459386826 660125545 805947446 878405462 904199692 289796653 672338071 298039914 834601834 96992413 727466377 551518568 766663850 764905742 857370808 983267471 994932579 635159702 809994516 625077555 800925228 925365880 988016737 8573575 617390263 71872637 509084508 938950576 985002266 413007733 867566438 481915994 955660229 950652118 968585301 494422930 690492955 944551327 944676222 837617528 865999674 227209898 496306313 357646748 366591175 341336478 446116429 940328703 978252627 726087599 947280958 516262155 908367243 379028733 922749967 557429326 599265466 229154601 690960228 93747559 683727943 776812359 898733603 141632147 457019033 459615336 653001774 923582635 988122350 253318983 541809949 169069199 478171413 969016857 987927541 915666893 991596494 74136820 944616601 220811838 789997295 200781513 939691104 190107566 524390347 373093121 801200594 805058001 814122272 422763557 879418280 121365858 332400443 73058608 115761343 442226505 993981361 150477035 353219709 531023833 733150006 762060720 811895618 503325771 893629803 548370052 991784664 858238412 921442009 25074713 29772721 940314156 945121293 79903854 927168736 799612898 837732738 786135893 790385588 143954948 731688960 607252506 819866609 206992180 583741282 491251642 881827622 504545640 865209435 199900580 842077979 785260806 911443980 590835117 834150632 592288642 765355513 36677113 689355459 643935975 828254022 81969438 569425771 456044031 925403018 19185642 681989127 617264313 986473544 7132402 855598067 681787429 997063075 886070855 978197253 560195939 671189210 900878969 956900483 659835900 870540663 751049691 974527739 915095637 944537787 399931008 682882751 715674976 979749634 385978210 760939354 812375728 897237513 523855263 605641223 98809340 244544861 292253324 340390371 968481535 972975963 826675921 869276720 494585702 592066598 944425098 980280640 634730037 950217678 468069133 572737828 713547702 947716421 858874443 948757122 217434125 277530669 425147238 456793206 403107546 928924015 209891311 278323181 2008202 792509846 470063206 894833057 871601960 998332984 262826931 269725921 709395927 788396846 864701434 880908998 677112940 832747890 409322922 842062003 687503484 792728072 830806348 952994562 468910473 880766243 416321399 556758608 652118070 938944170 204653546 771164309 619924856 840232197 948608306 990434404 417424701 449284635 367816679 963428752 178797812 395261488 57778385 685048369 289103360 927980963 754571668 988967677 775420239 951251813 83075083 635823803 847170572 989609606 216436342 599315774 361009748 918239705 76498759 988662504 251908950 361286708 942078589 948197333 266278570 531260389 649212600 945008030 216420976 682165665 31062643 367208054 4612763 370826080 110070044 502389769 37069032 601901222 481307383 792492838 823100710 957870005 460263349 691764145 296569168 538886777 658653215 675705157 13848024 691421115 254827993 446606545 731428314 745331922 953165305 997211686 464941173 577982996 980518117 980601887 308677888 613264569 976210726 992764889 114065368 919468776 158028400 350662796 432928800 917509574 150847934 444993180 891091627 896952695 54650608 200432910 222699284 544057731 563413629 996837629 582813380 654958349 583642104 831736154 278332778 927113866 916626483 988188887 819404762 991805165 963988478 990439080 706058120 777401933 286603765 413251842 619536013 747552769 615348324 731782436 727303825 811321097 183038451 782441962 759598756 911553659 610325055 936894642 144834640 350357004 965535180 996548853 614784412 651935455 614580715 982584812 87045688 396663236 720981933 742219296 64297569 932286420 932110051 933897690 918243123 962972784 844785924 881230204 192543281 504079537 622264984 666266014 814044128 852137235 680666910 967573889 541955757 823765156 152070869 978811085 917233915 924141298 411792235 691312523 528674923 677636797 91557660 168814646 807404903 847618012 126400016 131222582 418968080 667568442 361473887 537087447 12706055 391343591 343523045 377307694 325276005 916414356 615665465 738183121 403078225 878072262 868382928 966006244 520732530 584728161 796021333 796879859 223049741 526247713 781925250 947245195 316228667 544139245 883774818 895082563 586667857 848109607 548596989 806130287 237646935 360666957 13965897 912895869 350252374 364828757 890008213 969912977 864018255 907595665 783833757 883907459 344601980 550268049 712207185 942017896 904115232 913876101 877423549 944759934 664129775 804086582 877224412 949936256 670543224 680855609 338565181 395772735 160880533 212698669 485247963 580586597 60485245 320016359 356586654 540437055 435392854 768414862 927394843 945866986 751637813 954508706 517803720 960273923 868573400 939907072 894341753 930790908 868758545 896616897 711945576 718698397 1536838 352586456 840798680 859270680 55673576 689383143 758364460 973672337 33634191 58788832 622892832 836602331 604410127 781449025 729900920 804077142 364452332 775841048 830096871 873365873 763352577 808234378 759285153 851684972 608212085 926658528 254425069 586276985 871387062 962253659 921999518 997011983 190203278 787840486 330073849 847533719 587903757 685616252 317051148 337570029 53752920 659659480 199805537 295613486 405809010 654076879 248631748 592104264 115684056 817611483 290642803 446739743 743476319 807459912 788411753 843498180 726581511 898394411 885092123 910048247 38159383 672637934 574352019 758519543 655837609 797834300 728716516 908586481 551474898 748763625 937235600 995883822 261445645 845298225 877209410 890553778 441926625 590402349 64743894 138209259 796226569 868934802 152074229 154397462 433120780 748692682 190173631 615703391 156108401 538940038 886122106 907791933 775983390 833644885 69749033 74166949 690773514 829285261 686428392 879649684 378950167 867421342 481180651 745562666 494009627 979716796 772477057 802460849 586098832 913932095 560838479 560845720 321999082 347168935 411015665 463285973 930385469 952737261 30528788 592658561 869026180 979476774 496101627 568308914 782397452 786963698 122387329 318638016 929128564 996632521 506343055 930027815 234483919 245758430 961816629 994143547 863617660 892388768 497669666 675949888 512745113 658123890 652531602 668024830 22625431 193816039 902967538 904745436 179365117 764181490 236832612 317939431 229470595 559586624 83377891 924537314 536281711 814740619 289853343 623686431 248579862 360759663 27634853 841883544 425110847 631917360 939159749 988534262 825583232 880284730 162261022 336848557 372495296 395028967 342169334 487458179 831518808 862865536 589476702 654092740 529836581 602850393 224488459 399907267 690340546 773375873 674497435 778965863 523785374 589133798 341667717 624577126 775702287 945140761 988422266 997278612 206408201 524358373 469337129 569276138 248220905 845977471 236717952 955696350 887132312 958855671 416695060 792798685 929978948 973850794 666120350 791132662 523861889 768131236 257119371 802149124 737921580 884320648 45239762 594386969 268378943 370718852 438193235 918604160 51919668 829921162 94742903 670285379 519852486 937230895 329583486 858670722 761579828 880209052 200129501 641500891 717299001 979610209 145778079 819808273 305074445 895941379 854275070 988739486 833985653 961475101 295089130 974923064 615345146 986815032 590778177 728539821 74496391 653871914 303637280 408958347 437600309 960009548 169660317 575356018 412508972 493314071 652830141 888043098 749490014 915811576 274980864 328610254 999296619 999298409 238197885 597181589 739411073 830363025 32514640 180218623 232897631 735807294 810872496 889621421 538041235 723760250 222613475 962868167 314996179 453863507 665371837 891075776 510717435 900335731 284092848 891633315 389010262 615136992 477180317 727555523 662151615 815145302 154115697 359014201 148212708 958566204 945968091 996544558 648140308 875966623 197240381 502849016 782405625 907518582 760560845 952532417 485042100 750360481 238381438 448199832 927052812 936355277 361686962 823263633 40505376 214166167 44015858 289981385 257864097 956177841 992411846 997859777 839102840 943235948 288565494 532591906 499521681 504362849 126878079 360844741 824982821 950592147 157662823 502461788 317699631 660788368 199196079 530484358 297506188 686132728 356067267 689779501 87870071 339721364 699021547 948511430 354739383 557473357 205085542 532645839 180882739 730941111 599959194 630781344 294951784 377069047 665256792 947272437 310169049 436655452 820575133 933629991 944264523 963659884 850790205 911572894 888388719 995863593 841103817 876560751 250933943 514083500 314066770 797543860 101734804 974380239 433220237 787357159 325861749 860920846 624921975 791599057 109891675 758824321 915564702 941494872 415096084 610222244 672306296 808941968 226561125 530366099 456051376 721201023 943664228 972880851 278771038 581939929 449852567 659306297 589456556 705524065 810644242 949014702 831646061 902680198 696998569 924434195 494595857 534467212 746034177 991168554 534100854 811520626 298222695 885733997 863283315 910470480 385696047 455470377 3099514 900707431 8435332 802420806 511907551 897312954 276277241 785545193 867080151 936482651 691017059 967032374 723208657 958776332 736607998 785677825 982356089 985676262 565493908 811874568 698482383 816738330 211577798 488137299 584043136 807536534 690761068 767485566 515476417 573912943 323140839 428609469 898832651 972232169 503273351 925901455 838572996 896390329 405945330 640065512 116976677 186368011 259998668 901435665 220227773 729738451 555128429 564765353 249744048 803486879 221163484 260641508 425879686 634865832 227402703 452700517 365446834 851262414 515185139 544699222 282779560 495824817 255798019 807635727 729472415 803727205 720969325 937970576 526665520 809987449 697189357 836724833 814129730 993263093 583402907 853654412 624129243 936889955 929664663 946505107 22037155 297333991 95188289 152906212 313533157 876839480 270446940 429306617 174498395 309580319 667772443 870819172 810368790 982295154 637242253 989423039 97474339 614580903 937528200 958839601 886939930 953605889 382439532 646295950 258382521 981385835 30519848 559983365 61472292 246253841 912021825 982414165 894927086 987307401 159210217 318534766 304879458 433187687 468091003 674383432 646307773 778207098 476577858 812302089 985826390 995136800 428041039 695570832 267581088 910861352 410487092 517129238 770881533 810294250 663360843 894087660 679662980 762470568 152541491 896438477 432426970 760224710 622950210 826105384 863806051 914277468 96167693 316417990 826642891 931232030 36006968 525149165 463886403 732504932 187203256 786475294 863324078 923039140 324064878 854269233 359476511 545477081 111043969 630931518 429141914 646889608 959100556 988606805 285196850 925597443 607536075 771822887 264516094 542479942 44960588 970082925 966034734 971268989 456405579 845265029 302796256 464864782 559443008 931456462 844860090 930059540 122294289 717569807 529688570 581111007 609272923 763158806 394691197 471201415 203501325 300544538 742383113 944422206 155584378 698133417 153498721 885797969 242267161 255886253 812419320 824164888 45489683 143227126 812913397 967058254 934066742 948128457 504383779 915610730 351629321 686104169 720977158 757797850 443716528 830384285 829476532 836077834 910759687 953931606 196750923 988381773 463853964 796101642 388415651 831607454 321876959 793671353 84545208 629461919 5672969 600005585 902875962 940210873 704449091 872674389 583328567 956757013 111882254 316803390 237785463 390631976 461753386 518802835 524452721 719736613 910947857 957075482 844490686 909979502 323091537 966391982 656808693 723559656 829152381 883797260 648208413 654548833 300702053 891903517 80552019 810527880 70449486 629313131 329122024 604267616 931657611 970848770 820031140 899189971 386015481 721654731 584233776 811283128 332397020 943953194 546007604 925318493 615209394 695672921 218385408 912957594 327568853 347870522 534568913 697399869 744497467 949788895 65588124 177424104 505401844 506110738 943614754 949367470 2206270 145332155 310258971 694981589 264151167 918807582 472492380 610875950 303342632 710581167 830028141 994610568 827308248 987101996 627087408 851621845 270690487 598250157 394431664 541211240 529291607 594141604 595369901 993016754 739248046 872153028 998678226 999253355 153735606 848398190 150196310 765568818 877958873 887474657 313140710 650808865 668377113 979626009 531053910 896443691 299221853 752822371 360781767 461316882 229909406 703076070 836849212 934755138 26388105 720044606 304875664 342617100 232873128 934142124 277902451 485411084 729364099 871972703 504928019 911917931 775775494 886167266 672635219 788910638 986813035 989525427 307261700 495402266 344912878 681420338 766159809 846600429 832989944 849024789 578644239 802981938 944576269 994643045 32217047 715676361 976690362 979798731 637284354 707460432 532623682 638978121 918161429 985528672 622008966 920813346 636720302 652406456 296716752 707663665 436383199 903988041 975742179 977878528 47679237 900487970 822468089 984024782 755761143 981813535 543531462 667774255 500728298 542461412 759664233 968430692 811984194 978459622 639066489 685234435 204191585 538381053 504468387 702498177 637043327 963593403 161871645 365955502 566017128 738764246 748914089 799984357 6509305 270130800 269504755 816078883 338789287 703494010 448489669 470907106 740929564 850502242 586657488 962858410 195002333 786016844 921667396 974166071 278074047 797351975 447846286 794734696 199622286 228472160 453876137 964953260 222729071 608369590 462603314 597099857 387485386 988164633 49207484 801648489 935987413 991627236 495649104 819952446 890120387 942358794 299552275 453205251 190635250 377865653 284619463 535485143 654937361 868852515 396330764 813040877 327262344 396162758 832010089 974808037 394778254 667863730 467471169 766567457 402929273 982781211 281959670 598725324 634733466 679579918 996136346 997771159 109002954 588332772 811351140 885562089 32916804 135113099 373714963 822643149 296992270 811880057 730925277 734206964 734295113 839035110 710321781 993869819 998192314 998406037 610467804 730805572 47194721 420198725 971656335 975254083 88057719 934996692 625150693 849149862 903753082 927631083 780307908 903124572 177210629 860816386 4599427 791136923 759516777 783848211 663446557 708811339 548793524 806960555 257574094 579564041 800611091 955648345 318605602 600321108 846583616 853483262 586356283 702586470 100159283 682142097 706004706 996849420 634089947 666132699 863330824 902060302 209657301 992434109 504071563 950804498 912968973 994994973 410958122 878638449 743115153 988915751 120528720 738861123 362349264 392489337 626825321 950725739 692267069 809922789 91162891 175241539 110064433 675623293 634733689 789632099 99588959 264601145 249361426 647123782 53658133 816469268 390398553 520154157 202232185 561069815 358530508 959829185 745078099 817425674 554850807 663996139 869325314 875394529 539541138 797631621 455776352 504919654 395152906 497193248 580420540 780619359 62600326 221194349 82456182 120119398 35813161 646333721 904804547 987618923 653101487 831019204 189082794 726900044 593789940 941805779 904590274 936083160 2037568 580849021 30933792 570616075 511203639 572849327 738094613 773240726 243292162 746104012 952143407 980212203 78006875 466506848 660790072 661538295 141111499 514301184 89339219 966633878 256354002 552730450 15711345 458569862 859746125 967031442 377653316 511993602 275705677 393401975 782722457 989057330 687782663 940229356 458941444 844677916 461723597 691020842 329633404 570431618 281852891 461275105 361571629 979570672 160560259 743464881 811866765 883558714 495346475 951154544 704953332 991037108 340963626 709995967 639907817 700676334 107130629 830932422 42799653 280725094 993450889 996934430 946439264 971315113 262570429 674191178 299625928 911537610 26798846 235443284 699480735 910692581 423676504 970598505 31049685 626353316 303984319 333495483 827227943 985707840 169400410 483844052 634289702 964693733 139407646 286912821 257291794 824705405 950640686 966589084 249960379 670453698 872661665 946427680 17438535 992138088 689665403 914303854 651330727 776470981 396732484 968063090 409562676 740005533 8181848 559383633 737766798 944610473 980884602 983995354 190406281 622697083 438677929 561194751 472338930 651250680 922087732 986621078 124408167 991278164 44005274 265498303 205887234 779521233 993583019 997445486 209917382 665342795 94738691 236281566 656287966 820121246 313286937 990816570 194896937 640419507 431478385 900789041 820172802 842117703 965803862 972880805 631317257 823275257 683272608 842655524 876595550 930231240 25973310 305062108 790789884 927552412 887692447 945271980 360481899 671180630 248773848 395332368 584040664 942635649 79061066 191976277 241816838 242699909 593661117 843687266 136344470 559736539 524128113 685620084 716216547 834235745 524819134 867959387 401473001 683368882 251465200 629046540 109262781 541936190 244577912 939113317 771225210 923197679 831597833 906301926 357954597 520839911 341259787 619929961 245919298 517695344 895371452 929032248 58418493 371189287 974148946 976663359 57269127 557845166 955532707 960757712 480887706 646473060 104592321 189049352 155747840 981945036 185265538 573250116 598542320 843385161 275603303 696383793 370883960 794632883 553029672 642011499 931307370 984511534 237452646 753944155 688361883 911919307 581840255 585340875 437790830 879655111 393605081 932713375 768980823 968721607 229439303 446655773 960902447 961110929 128247557 888124014 960243110 981288771 166455548 318726612 726447101 944252144 881843251 932787060 634219324 872825882 296925795 820647420 554747484 874065271 108913680 198074904 753314474 823078010 161368433 847762475 9577943 633516039 586496377 798415325 299683802 517644027 595498957 661756412 439322585 698570324 262690163 796668253 747142526 890055830 945315583 961655881 666935939 706600432 539603242 608004821 883815024 887060332 175538181 255728429 518314823 669637436 330061604 696652681 887297202 960151975 631998728 752964789 721518928 763465099 357446855 936259344 45946032 521413412 117395854 995575965 870946758 893008469 533811067 814891779 428205471 442857578 119487674 476332385 610339228 970496431 150166984 305480793 271177216 476377086 401392 452543689 405373666 442271205 670701912 948829407 577235487 636812103 426434031 978721390 732151586 754076275 269671532 346607695 249083235 889698265 473275429 820660647 952096550 981146609 199362830 265296129 449684515 472512244 367734167 795865538 771909034 928252153 423750863 877614676 386266965 921661244 636787422 657841147 146448184 536008970 135949985 200184179 522978978 777878500 478950288 715742683 845799700 942508804 695799431 850540167 778227690 919593180 561326111 656753064 957139045 996280095 434779751 892228791 646849266 854504265 916284640 954511665 936319422 972887598 459980702 663358902 201324988 536924692 341846416 738018839 612115548 877886193 959193161 993369743 358832922 366994454 262583429 752571222 368666145 979343953 932985145 977733882 683617117 949746060 398442260 921346449 753413796 949558949 150955729 686178436 318750647 919603173 925371981 929021597 589216499 873266458 734195392 763938767 463209826 977368940 644918418 986173290 763257048 882337022 586733825 873777309 195796717 856945312 126748531 933539686 14205858 553375480 624597894 774305849 491036248 567387054 195347247 352901321 373542954 735293485 684639940 879597153 924017297 926113403 937760491 997363421 319985829 395827133 194432750 531086719 836927754 926103566 426389502 953799002 20718551 896299554 176690437 811122048 484434949 576395018 464206443 812868859 716427963 739636070 821621352 957092957 324662143 954562746 131823584 720819064 561298644 616802686 516454113 856240872 628378353 941631143 798017657 925721569 935341733 942352219 196236163 880785748 350012209 772816586 475577716 795945163 763523392 772054530 148785832 449225505 534981479 819542739 996027707 997533032 443325129 862853859 723514282 752790325 360420538 791896755 350475029 968084624 333531864 382975840 65194771 769522519 840449098 856119529 449947279 567692170 821005346 938381162 21805561 278195074 467105913 605018019 587207904 808999575 175944025 400514884 595445336 918473976 718090232 822174013 833271139 896076020 238969300 585633045 422449559 524186154 269227749 439295832 251864365 652580874 292067257 370248318 785960188 966683402 171015224 445283175 726822390 857840188 786071940 920197252 546149433 790078192 285691433 363366560 121230637 981357914 537721288 624497518 719326219 749987810 302372646 511993380 242580392 353955789 719396858 842365606 227657703 344814523 115444331 885563022 115243108 847771635 219075630 651640391 969880856 983508604 357232277 987085801 914651262 951002098 751236479 945229578 541100692 591320845 219228910 756034577 428647600 609276867 178091108 948645963 915934727 932938076 320660213 408573685 678493946 934375150 977325718 997478312 565268627 912783489 579567826 734580001 914803689 937103133 777851339 845561365 94728361 761573758 989370362 993957329 215880784 694580409 945396080 990069230 596314197 741753003 104803460 211115291 156125439 443398113 136484947 865742394 558285834 896315588 74028105 605250979 161451288 399696335 825006400 976823130 44132220 611358719 102809915 738482183 321234318 590365310 187715969 428301813 759222282 991325098 389323808 647853633 905581398 925010980 154281220 521783917 450803085 487859806 72984394 263696356 789059945 881056294 599303091 661739053 704398641 920031587 775624856 950244926 126992943 793829543 813430020 864494793 49520628 129312250 435712781 808835698 978121189 986744295 366556 25357256 57400264 867194923 283244361 412594009 975709214 988761983 462742031 703032127 455788289 726484736 585251431 830164002 482329597 603027432 15468169 34054097 406980133 872000396 12764524 723853451 959200252 969907702 443762463 598866899 865449342 971002273 612850506 761581838 235321471 413258004 441848563 969957472 990900583 998245811 599706768 701431007 10926573 467099742 831773720 939630116 783331716 901122610 599841405 822821291 363145613 655480611 391629566 589914336 644014637 795978715 168112541 837569345 139200742 489770149 247909415 473929741 183602530 736355301 407211107 456345399 833965070 896800378 317469518 506703200 77564749 638829255 364132861 712874267 338650673 825451399 610973534 712420519 835812267 951429140 149719873 495059934 123232684 150658574 101052513 444057924 944113379 960370422 757673982 782202950 80062155 649747304 258231993 455531885 274865983 958351020 163158845 561506956 811684266 994462200 599235723 765861171 744709317 932560549 720450814 722387455 906405742 926405437 35337145 822925884 352217640 878814991 76039444 157695651 877538064 998748464 242888553 662235718 617931467 942724318 601089219 928048508 431159495 946740521 559654365 965288627 840436987 932600817 710089786 780824593 46387922 865374066 3670897 149295443 231882669 867500769 749705818 887650859 148284151 380252764 228349745 549839118 82468304 200403748 323077560 770278536 332707842 617455915 171983043 619449152 672243105 973181669 855778708 988333713 371229590 949853027 534439845 949176083 66248832 409109924 402478007 417167738 137227275 185913383 719188334 793376146 649926527 790288307 312606688 647125813 86576855 902458773 987559165 991512963 891866264 910063818 126042427 798890386 544342543 793084723 722690504 772496136 822478410 982916845 495708373 903490226 198154324 335665266 172535852 711121033 31170606 550547116 362915922 529571603 900590890 983702537 644030167 852134195 453345236 495797573 400397783 450007107 161815976 928535931 797457086 956571293 585586257 923568018 647231322 862035625 907774341 907862021 13930061 631878171 788328201 869266651 243529250 518032544 906575339 960175320 15213705 869774027 788203588 837489121 437308623 526033227 340727751 385717916 866641694 942991178 314326549 340751950 211208081 336589840 969165772 971874018 351897382 787843515 688666693 758404122 729252559 755043186 181795740 523277826 755506339 835924458 632760139 805754924 205470304 431090909 639889828 802477313 485283797 688881268 990410733 998805503 189257129 421830672 798660033 903289828 74318652 947794398 453392530 824685202 829686246 996567501 832913001 963202080 874538888 930754903 849974960 905902352 907771246 984668752 870533254 882541982 399480692 905460952 401583887 722012684 125932859 610740333 353164103 699149549 898766222 938287056 271596904 445222178 888093047 938905754 591876497 674872072 842269228 965211401 23994058 990422863 979118568 990218131 651263807 919857602 974660874 978474727 285494010 527665897 416178802 767177603 992029239 996527171 197249848 379325471 823549842 906082821 866412444 916155270 844709700 913523205 747037929 791504329 722790712 980003650 522764582 947623065 977787185 989449404 80666168 231292114 114805183 901436979 721302496 992965720 421008831 542131802 69424143 356335035 960778711 987248437 305383016 931440260 138676526 488478858 910922854 927715617 9076319 835517059 2727356 836268690 159762839 758675430 69438987 496778954 856731499 978199875 467775313 546692140 634676383 746783319 743478604 988111714 888623195 894641583 756602342 899606798 441807722 699218609 651256891 845331932 651127179 654323686 927789014 992592983 482270920 983905728 692036980 862435145 100796324 899464634 792193845 895811746 176368221 484493746 744899727 817676742 521843522 716640910 258958637 587254010 888214032 900738899 944819489 998893214 166463505 632309461 341323585 582344114 683499430 846006120 447537293 614385369 460835855 554574663 375015004 993808471 473542447 889359988 580095487 717375666 503125945 935080746 537065840 839152988 649367213 675870547 54891976 852823123 46910890 213939446 120205152 393846169 254351154 295167476 414446912 904312955 788269336 923813649 510722879 666404774 247618263 251403762 339727749 848543448 327017286 657162998 465134585 911418502 740780554 770509156 466196932 470155233 756983692 772877142 731457256 941915515 768108378 978804624 836732464 916595660 276093606 754341475 121816379 895604035 654549052 940581488 378635692 691148712 41645611 75568880 224450888 718819635 495397241 878854058 49205558 971044533 998888149 998929686 323265651 653316302 356403438 550756098 848527942 996315873 380047748 943124252 385132890 606508010 168426079 893656344 838352214 883902584 855792429 863234761 685682838 918192472 60921557 693188529 412414487 891062993 718842279 862098023 533198391 564345724 336062549 912874262 664611630 946575359 199197627 209212899 232400444 537577012 658497008 943668201 284805626 879375250 233020287 799254739 568919846 876338491 747919805 843696840 203929082 433801384 673266473 722123742 800951254 892031740 274154921 688479206 546057985 688312219 480204053 941239628 175403020 455976753 157268417 873000474 154483776 374389346 231957630 720377456 813101681 850563552 672419473 704253471 616494476 624653357 148995988 525214018 127084414 820841548 39941087 577139090 641873639 911718322 153344668 871895443 691070080 806992742 745414764 822151850 338126617 844384938 15182805 60488500 669100385 681042856 810513930 816114550 903975748 954274530 326842610 991600855 829251107 912658179 548117972 656509274 197429702 890207030 912494373 919749811 897021953 989563542 422820711 873265311 780606147 825674756 136820908 552511531 505642345 568967529 689479988 769351110 366688116 788748930 355133115 779591255 106112685 415914106 557420572 564674355 903623359 995878634 244506958 390971456 985169523 987569059 321527630 406498583 300329898 618488071 787663781 884928804 712237001 834896851 95801415 839799254 570162268 845913934 504890968 628402941 640529663 764187651 887158740 965730342 951480967 966077851 262572673 588919860 277433250 766466432 364028540 500718759 461041655 608298726 911591054 975362217 744498730 869751558 627506393 939064669 100181921 719525167 289336727 360384721 50162418 545504230 297750304 381704395 446002676 477014639 675815364 816298931 549835965 912767514 367249935 632029613 963496661 973307890 963996611 983855761 997407893 998688379 953711296 991313855 806020401 987591642 654136688 993587865 430310722 675884607 364229591 634803196 281745728 662534765 469649207 818199888 998100948 998601642 375141147 735577523 6133148 119830750 839044500 890616411 394549398 646694541 655554549 849261443 157251489 609111597 577429603 733397247 424301986 973691040 288095491 562993594 637227292 697572349 186507511 317331632 884457438 887275054 90215007 659018310 6061182 854154412 912133063 991195162 495870836 528131168 73181453 77831881 916409569 917553652 398968662 564187068 525241697 699314842 6391318 238130068 49521466 810074780 823447826 950729968 221169029 733114082 690782445 854095791 579193151 942696976 143054351 242179811 556890327 744502929 447949507 971334013 989305606 992217707 702227243 875161345 185361321 924097604 724627902 768820637 93039812 839464969 416401211 444287031 158604918 485616963 713681211 957254652 995917697 997594569 720051491 943239616 873348658 991310619 25630639 132956222 484979631 943795634 41651984 377772591 896979978 993797788 778218225 874962838 812041282 891240600 669005379 900854490 564746078 680177165 245210220 863955056 949947704 969766955 275721262 313494445 70752792 117902986 655224587 794649311 882773 961523320 679838978 732546054 854361923 876213764 245854804 588270502 279169184 314756091 295845626 462612231 216370983 493462460 444588639 521809645 424778206 804245417 758138261 975164018 489128356 838947169 286887017 557752848 41948611 513183207 679975710 733942157 946698792 968596801 46558817 559051246 260755443 314143543 667866471 860165529 11736533 721583623 845088410 895252814 807104499 883506863 949713644 993729310 48667301 166606540 701279654 818963804 342012829 871571930 738693803 784861651 349571374 748714807 617483271 699333102 622189013 970145528 329153817 855049538 493287939 541452162 307894028 949066705 634799360 887348464 596076736 773942058 407541647 847699136 300144360 539423240 193906875 504337460 186083718 261709897 259305495 670071935 666020785 967656082 910862243 942736691 663622029 701577098 198133622 753223764 741785543 847509963 282504416 602249345 99932426 670089408 951891654 978771417 976770982 983027359 477259219 834135990 282883290 746089446 82339673 320099658 655731 262092520 6705046 331466238 59318601 130691310 240028581 580068406 81684203 790078558 744032384 846794202 758299868 848877494 682631918 719819651 804238171 899267562 317701858 979833283 709268039 723330737 513575236 991601011 68666290 340920761 456591606 589230232 370571794 865016148 466571456 934614511 141405305 954409438 850420776 876849665 47275604 923679063 864238698 964419866 635808973 832447922 384854428 841914261 120292656 368524388 842444414 966129852 450197275 964882370 520938490 922847927 68308048 962087029 222324853 817048653 565193614 742466095 749130711 814568171 328605752 432162663 67367202 562296583 556438108 638458832 79581816 351453605 586879574 726624502 607488896 678005748 875840497 931723452 927794405 954623333 455204582 478943877 690060599 765779135 647780493 801776014 490531565 643710250 847630015 883249044 719268943 798345775 805531505 899004309 147205962 797046773 499059968 736353618 289649288 862615384 907576002 991430210 532780410 645069048 206161647 541347980 264280937 487781238 572862687 891094357 410821276 588613585 769071013 908224542 995739456 998587243 563508733 788341061 421226360 554800559 14526404 934292371 837139630 872182292 432124522 526434289 143759614 971017730 304748197 474721946 411486187 530470473 917153750 983731857 24764648 946407087 610713333 945680117 634781871 814566929 532366642 579446722 439522613 860337433 622278558 623206973 260291339 924901980 111424052 158793645 105870786 833811601 23874392 250763661 496185275 541396766 323942343 471238701 931790703 934353431 222732582 913642660 860242939 935110831 293304377 669199912 237655645 632377225 622749369 697221205 688563724 875321081 974649924 975865016 341795890 638616805 849181824 996270242 856705024 986985866 771719223 776653530 331098143 559760194 445374528 820864084 876014579 986438180 164901896 297538670 954419075 982007724 167648053 936278360 419449101 587252145 175998222 423965882 982005016 990593025 838262971 998413307 456192297 844928813 149114604 307192849 968541850 996499053 406271387 865272760 664886606 685964896 507212548 800941526 537321295 654044232 967897688 970795096 33237100 739311411 114268804 785091482 556610992 570514878 353297848 510858053 941623660 987721429 111614281 467149885 967322086 992047867 439554035 637428266 599527667 981755640 582040032 653125826 862729651 955590711 527950474 755981232 360146230 900072845 615640611 646815771 931044915 980381792 218789818 402830075 695860119 833251348 871173893 932976064 450467602 806901232 572440743 812558963 794667675 949249132 613027659 697135406 313324516 527786002 511763683 572425914 57764908 929561772 513757234 912683543 270547988 311022406 37551564 655825428 410836483 455312918 290045349 506936755 769077112 892963578 309088439 377732731 644434426 979477966 414816517 851724177 42836410 683568624 178449396 318085782 663193456 869710168 472571715 710374024 538625638 662423182 419987418 916389810 934796903 993407572 183382021 965019913 677880157 796856627 815707864 948336972 819977758 872751467 219532488 415647225 921777164 931926199 308216547 939927049 343543511 693612033 324389785 850620721 908379945 978219130 703337245 987454136 664437395 818548996 280586384 352229205 877096164 945600267 553240407 969255520 41460396 834857160 539418492 564867615 214584547 801256602 715076497 915860062 656290902 897605913 379246951 459895296 804656498 867730623 766369638 942430848 155587564 272941354 386153831 576085776 787965393 967233138 524218359 642873534 90313349 603038790 891662761 904241588 785609060 886816283 59519353 96975606 130378459 950345235 69958204 982140443 74264509 375226989 2542376 547128852 84695237 650515291 947537818 985603219 688441337 928510214 788889660 885215906 235391656 858864726 438394056 524738234 476509761 517780803 845147349 943091111 356039593 526380097 62773306 907415719 732553286 863840714 917869057 991950335 329349952 509741288 189032652 215291722 461453078 630273942 383139117 799449234 968347944 992762293 586785290 982524236 6537269 827788466 979008468 980766182 820472343 832309079 132895892 239081034 775094361 936936998 85516835 142493189 650131229 907005245 686150848 806714620 324039227 963456434 976587629 996253289 301606688 539816933 855540028 856274479 810313941 945247110 234381220 386831648 265885299 278725743 292517683 442218929 604162731 630784077 504536341 607884505 930203263 976258966 363334101 468817198 376474577 475303059 846296446 891016503 755020075 812901778 979557353 993369780 94171326 375175317 749664606 947916089 938489646 941574928 684398438 754292511 262861097 647047624 42821519 285251756 707817693 760264650 355586372 595356964 822102099 856610756 416457373 737235526 444490779 745685027 722474951 795223923 656376395 946402253 389315741 955919333 281964011 889653000 259512795 947014938 412403291 771324880 245843060 785394080 641305381 648486676 654654272 817980788 510546734 594597012 299678354 811536601 110718948 924899373 749795696 786387869 192770591 258464745 660937696 914452739 746621054 926309429 843810296 929462912 656289952 667867180 854762372 867705269 966960602 987860984 398365466 696461191 989389607 990769626 838050325 858806407 157709214 216082593 992739887 998661212 956452155 980075263 921739465 938452323 132658025 933561913 739867167 996560374 319063895 842558484 2891403 988714539 899745360 993779786 556152785 735280246 878873723 970307490 992357880 998239955 616781404 838968210 945437137 973283175 63331202 710997591 55273975 743214175 976322775 981071957 572197936 847919397 845947845 915139149 746438686 775775627 294625968 482907138 319998598 380587600 768194251 799976462 272420512 366955678 546401532 802374490 463630196 655476859 655034170 887575832 872761378 966177443 607255384 945725330 844333840 859598685 596099855 717275424 386684172 585465006 437015557 632700891 522541262 787018919 795819956 946032558 440688576 546564444 866346463 931662056 859997542 992892502 297248200 751365529 574614379 745763810 495488077 648355134 672840118 917374076 51346297 338869347 881577992 896342576 420980752 807199236 479292125 710825499 497164026 893437370 834784213 971272348 921701338 925754842 954295383 996626577 20640818 596099542 552910393 679561673 148576204 683466584 837646645 912980751 749027315 934306178 612466984 874468172 999304605 999387968 307513891 317736343 100513042 881248676 315818346 926412697 620504594 841046320 624825148 761982889 790004335 894037616 895282522 963939654 918698554 954487713 882292910 945394358 555221438 911915590 114972138 976644729 735061186 866792388 17001191 859254750 198770905 810588170 392665345 409705181 143711476 989185726 890339568 921799413 668302607 971296922 329944457 445619810 10489491 795553545 196453490 809045394 163813650 928558276 736256496 882013825 559765928 728967207 532964574 786387857 16975059 657180036 61970381 75510779 165461325 560942561 384790690 944600252 919202286 926322369 597792121 678510284 8659278 796566563 358445077 372559439 252751279 842802480 275928327 707690351 464176718 928774943 739279031 877434417 180585252 487842094 428087479 917472704 765711452 939470213 817741780 916398714 25816467 520253933 902710350 963703142 354674557 874478610 242918763 818990288 293189156 699841084 193185174 564584753 451925680 476035437 410058705 899469183 363021753 948944320 63683881 710795979 147051914 635050420 873699422 888889766 100696406 406956189 895528650 936862459 502848960 775699111 714763855 716034685 697945507 704388348 4125759 850389051 33281814 961022843 627282 170694906 452355619 888840742 793950744 850175717 651763407 673432649 71240307 286401908 760589461 815110336 13065270 319428553 351695130 542103505 291770137 300004207 339407545 618908059 47042838 790068521 764382298 964980422 213977261 504328748 272504288 836505045 4101401 498362542 393514950 898660645 10032866 358192640 871531186 994886708 788868384 998967312 377854707 844054795 604326292 658223821 355190106 999214689 222213764 558478796 85179391 224398493 233721277 746065027 748021412 948395639 252108721 276771084 226572639 309266741 599736136 869749655 73279868 747416631 618890260 680331256 651050282 890278192 590096764 750502770 446726224 459292018 181139775 805056772 512471340 693196764 510510149 927908494 111222784 802691667 219396871 940845079 767080845 798742664 327288783 472117127 938239827 960327690 437937079 633207402 822541678 892997632 361822090 464062054 441896860 746431211 957087390 988128727 493399863 648631586 281693200 866491521 691528965 721981362 261073524 374248303 373185856 664534508 87634566 131559056 53675410 200388139 123313672 335820738 862259218 870010260 81891603 763202744 356395178 681387629 400139243 673235068 561535164 958893257 941380975 945981852 21067146 417273344 816683989 862959503 932823159 963662301 168844141 659928665 133360850 287035580 138945263 457721792 880763022 947264288 56271983 589380090 207941324 979906709 767707091 867400516 400966656 565861403 557402093 946151382 739753793 877894632 673333706 999181376 389430455 529384353 54117953 754743636 304126753 828932388 970827484 992246142 968142156 996181073 765319406 979917101 19804798 414595279 856454686 894154903 422213638 925414552 454783249 815689498 190622543 832202533 396448116 542157707 48643767 186709239 242337073 420391480 35688805 46057708 755480802 888167607 893297222 893465872 675354508 962953638 361194681 870284071 144755257 360461295 140542741 785036636 605411910 629635494 352250898 565694007 644782369 772189860 996242332 998561362 356700761 725543284 57210623 675806224 978147158 982199900 254981635 925816417 748598858 891634082 380622600 638461349 937944097 939178752 490336541 685189293 76838047 818225618 584323336 691047819 283317867 471259141 320070098 417126483 87523441 298141088 538174493 756096935 52091867 831946107 31624502 783332561 90329478 352382499 356415961 611784717 970794701 984599473 99522616 541386967 482174089 796916953 52390360 351381277 400568064 892362196 291532176 429012257 510327394 522449901 494431221 597878273 595630649 823665302 685753030 911241868 993083881 995487927 221165897 257426603 960900373 978991112 184684350 206641868 433015333 691456871 634165095 656585442 946187431 957862965 294345301 302568382 268030983 863950797 945976380 989578781 871871852 927542213 250217922 301999957 316403306 962956941 377122062 496224936 915151856 950942109 712969384 713401689 858758662 916047601 575911943 914527755 456455991 461330475 903297604 939670487 546325745 761611915 27231517 457389253 460771735 546412841 785546712 991100669 342300484 443487964 305297119 779642645 263994742 506341844 432865796 835369175 967781272 998349238 99967781 678791100 550512083 684427275 414381493 812575346 753726376 757840150 676815410 983179543 329496932 619118969 256594796 871452085 283777121 673251845 297406624 728323219 806645218 902090724 354560074 466647211 516429291 846277694 672149862 862479132 590162584 896289950 251696043 353431823 373818311 842625724 320118199 503574172 998057901 998574553 158724476 257831747 914952638 984356248 667603223 938766224 69456422 168553788 408757083 945610145 183030302 743488760 683557170 969603993 974972949 987309033 603346249 664867132 951975278 975870885 599623784 866218265 957798743 959076088 897212516 975972129 188898626 409395285 733517289 850542411 383548392 492054296 880346655 960905055 401284481 846030764 489286962 833069169 329865163 367816208 555607389 854574608 965291001 984448751 918168216 992213959 814301454 828836499 557388318 804778879 165087097 859146186 606455110 847789842 911227658 957551977 261539530 666013272 974301904 978502624 818761961 923904758 495382930 693373461 843727782 934888118 360277594 577053773 25024116 275792483 425677324 737158890 924681255 988675349 653963487 951294338 708139505 927303191 682460150 719870906 15518645 27858246 852447021 948986161 638905092 892016398 732846127 808116218 399862400 470820936 170806354 719891086 932708390 996492864 484512133 815257329 726694724 916132813 616216242 915746759 621171644 787883215 227722031 314551807 785488942 811547500 508017382 530731339 430685895 546075994 335336369 719777847 608067304 961573704 666348941 851742463 962904993 979858871 338371606 624693878 883614916 915614419 374194423 509669734 57378469 134967815 615357282 686352468 343014546 830395797 730785417 937177778 648265081 680876301 383854956 767707022 848447366 976008361 473873537 507511591 710581627 941881803 443161937 728191717 750401476 842660208 616633350 704532175 31821555 922963216 502374032 530163308 863708272 995431498 964179984 989414407 347562458 443527047 501759536 530241158 936012241 983758906 637856254 678870152 8474824 282369215 286345230 966131378 108665103 911371101 581948484 765690789 258468974 852282970 563416924 953443982 482165077 911503162 351734765 553847615 405685648 994967831 209610163 221466231 808902766 995097984 558591177 607929260 183314950 560222551 517674212 778300295 827784288 931097565 946576864 989100492 456874840 554393117 987526936 998542178 171866990 744146522 619351454 938172439 834481753 873664910 289791738 534834278 363595279 838625340 547288192 837263068 772564103 881987229 302963664 507101495 983153277 991069013 941409200 956701727 972368048 991678126 828544307 921421008 85669175 223769933 39178165 541893711 371437162 798181012 862998827 904375507 525493210 527625177 10102002 708021054 922216520 925767864 935595723 954573876 205487516 555574274 209408109 608597555 120661067 334652904 769877087 816281465 207874083 469856899 33304619 940634073 725938028 836676500 880099614 951317244 752641797 872495592 241373371 246631131 245694369 314502801 268643621 932591627 482265539 549825198 17135758 963250693 633192812 866508422 928475471 937403080 580723545 752501880 214471051 408514290 771611676 966984808 618938215 634377466 420050672 597688098 692560249 993789557 802029677 877774915 394184620 508525566 81545150 898384838 626869270 981577771 105127877 801724848 56657655 553716326 508632856 677283284 253997100 788666235 805282947 895980901 60942076 895069591 229219997 890234753 382754441 411313917 950355693 995271388 476667854 735043096 998403936 999355107 77091179 169208328 903485919 995907678 903824871 925924381 518457893 672603976 651077299 749111823 756689681 894303469 160806970 687556778 605755689 756917752 805892354 911515743 51242683 927408362 786369638 995162915 972192684 984712756 311798412 561393282 399589580 556153087 945205935 992042936 412301250 782682373 379398911 881265311 30871534 659322756 567150359 993538190 411987225 776577892 819808054 969907112 204876089 801918337 731137874 848048019 193027604 599819728 421762908 449770749 698023177 845368147 846913900 983785855 903673438 994505614 801695719 995780500 154298362 945931934 270641454 784934605 575395830 657853067 256666107 643392915 702299213 837558770 799554368 880304769 309788364 656568710 313497153 399155979 912338611 918053720 985461409 994473683 605897444 880844588 537465627 832239537 77157603 359331079 710090341 875563356 737793676 790166166 482847282 928264472 535195122 821630890 815142857 840101582 809015508 816711046 900026025 986034849 308100047 545404376 807450974 979089277 655465432 888670706 793853969 843035624 604250817 813292335 287327646 920328302 518396120 826505338 723073601 857217822 903737193 925073463 655077784 899050458 205394847 535898009 232488131 360610649 996775817 998839594 310566044 943026319 94676383 543615093 397742261 788301992 761001151 819743433 920086202 979952591 714029458 745643420 354961172 454681163 739466086 901132018 618362272 942861119 886258278 906689468 712565753 846846298 494490038 795954919 804278535 810594079 984479000 984709639 522491635 923884822 264630397 362312235 629287176 818536360 465920175 886065321 445954258 848364737 893664936 911205314 87423972 111470568 876680159 986192358 765119123 906107284 557423025 623770821 2812697 988220983 770411693 804119893 367935329 503202626 935165894 951693644 363956974 711366438 201905449 494696113 543527901 647040981 584852879 854636132 570195137 742262778 799546310 805948399 670001265 771109620 707356454 941172603 924371229 949509946 468499352 841917206 560553262 770664721 715783849 859437123 363926639 621265285 883346113 981744317 690874927 995908964 183523936 543873410 702828205 933446173 295517022 901952288 972712895 978348354 830354064 832976476 470602586 660711264 759118454 931456809 31350951 524281459 888509963 921087399 446776954 649974108 196111349 998207618 213235680 955918439 813416314 818672567 203831820 840172996 310402659 557882616 744601223 885874548 274958818 587662576 470905889 828539109 637706225 856960204 210055989 943888656 963688468 997045091 993583384 995899375 765381262 938873906 255425638 495310322 618393826 849445043 406629191 836664221 439381363 824352831 610850650 916152809 699587819 975839763 977203218 991337913 387007211 466641298 627504918 938003705 722755281 945227254 625180298 662911489 678699104 795558133 872942698 979644701 574380552 742358288 841421064 977074434 932090231 941204947 557019851 802881674 290270041 564973978 332681916 611883311 571312793 886955689 335591649 903445309 398963171 722117424 322212392 353106859 248500954 556588574 178758651 263522788 164103678 511640108 820033567 860535055 706909343 971786555 517947450 904466606 313829476 597725631 358002470 603507192 10232455 688256411 751048791 892426887 96341347 840669496 856396881 968132423 67492866 295777857 880158881 926848989 733373676 789145045 115722690 851617342 581097912 652302989 348016984 556938264 135228830 963410004 814053372 840811546 838058817 839378457 421281453 710114077 575408007 755087562 19682131 741718763 382012565 919450911 584557487 847121268 5331872 460226730 997952740 998988070 755749541 835209130 110667562 978072004 530249294 730432915 495559740 797147542 935208941 969237094 141723615 888388037 668946203 761224212 816818427 825700432 977901286 995473432 460720119 467591967 47521290 182517649 890040549 968259712 557133172 762162109 916007162 923208242 397847150 967207654 557422125 599526855 529800184 762748630 386651061 754791809 33890638 290346845 832680772 892395747 655849003 828979668 169091143 989217408 404940357 625835933 512258573 971059064 608333547 637283342 797875314 919519514 101111587 530631367 854482133 897163783 570453143 648596379 349218053 827054414 564732911 927028054 692572990 996582043 503320154 858099197 552681373 924625607 612648791 758496738 930129595 997769436 447597009 907963282 859519758 874947825 326988153 611889053 489028889 975066781 382617792 980785168 894623377 913620117 988947426 996015929 11206282 766854992 93911752 619022905 884966321 915920444 573494816 787476081 948408831 998800039 397052582 724454629 50303194 339305706 28828337 202965743 446969668 729635449 683437597 848743991 176284066 504336241 853403357 902629810 137468163 393616057 184351284 241007793 604131435 977106687 274249010 649983201 607316900 855055770 133126550 538995720 952398926 998848578 239666141 890543234 643996735 737487591 324239501 838636464 23907932 872282145 234265801 433364683 147551176 706947113 684050549 746077536 349835388 982779871 498759387 535309635 839229898 974059578 938909070 941923589 905745297 985714173 304080564 761033425 343618993 870726098 253283297 840016567 467077019 516541059 559895559 984833583 717323739 966463498 804596528 839344191 14069985 439713969 396093894 944803571 148507585 860506989 636456838 836991449 341172212 718574979 744708753 989649686 524020290 867476783 888695584 950424401 20406275 978866913 135563348 689147005 457314171 751752789 684165244 961897482 930838458 992198653 606676071 961556882 699954816 762719439 38779175 346642961 505965109 627798507 104477379 411922123 183998059 994845151 745268004 819719689 53206507 745461097 371350942 570775064 995188191 998519067 203232534 521842818 746620649 848348747 356758265 931281303 109941664 496525202 247164940 513987642 98627109 895453259 546647446 994793152 767986828 816132882 131432216 173064100 492399881 728690556 672649158 992556637 840118494 966715203 620233021 891479307 109447850 624814108 159742626 856164677 274394021 423895055 791313470 931236653 30632211 287863950 595465007 797247294 795055626 927018569 363838927 501278909 34138686 48499885 531597141 857209416 158103343 319331043 623652456 925455937 672345079 727945621 364030559 987035373 358461555 936467586 302187324 630028589 643600097 764093497 20183454 359160078 291935848 688851344 90706462 703251933 129986360 398192376 298593731 994796654 728875616 895945475 427774768 489045074 684363240 736610700 573077833 594167115 465583861 892332351 28018987 125437497 998683573 999142856 585119357 606125851 507980060 547708577 847075896 920386983 462080414 934692769 369562071 779437295 753118441 918977142 137529499 866037225 942922995 954306539 41134354 397822450 128498635 882726689 866692578 915472562 981810052 987515739 509645437 954805701 38914995 54320759 114918137 529698568 707580252 990347520 141958257 363624274 353954031 696117313 252656973 467545799 545708116 578544861 674445156 976790379 570452006 656352019 833612492 877402430 756978352 789381358 584716229 996186357 807776 642497323 702512023 922806818 29714236 877975297 852565752 978806703 686349610 911922293 183584761 795873254 703349750 756280239 959957276 991008007 360181474 828881700 526063266 844410005 604451424 625020986 11324249 677565512 505842128 722802224 723806862 969674642 76771109 164694628 201309799 890958548 804912088 854977187 886714923 965016933 978167653 999047760 35865703 342497024 880944858 888457779 826479222 922639036 885905488 956526429 251148924 549806467 499572821 901835732 340156173 913790625 977272407 977302502 172309763 608548349 519980592 902613293 846897801 942702263 895852719 913055216 267016588 752333492 307715188 656488137 410525171 775872838 919132770 973112743 254629626 288839120 53477722 484092608 983136023 993878450 337992533 584049810 437620018 720633941 200389560 808081946 978147565 978769239 983123578 992133792 725402394 861954640 610173135 874751964 293677836 394196537 732647757 745877935 190273229 879834672 770831188 847754054 505474177 869253434 549242507 717105799 967196309 971207633 496402287 849787907 991189261 993521939 635131500 663501048 555565992 815714355 824114938 872198604 20085143 138965808 982947004 987832518 862824342 959422441 962715025 963239357 975995275 993482133 162296083 840932526 519935453 563301833 860606758 951303894 310672508 611297709 691999760 770172285 207750568 625464605 263850457 517444910 434700801 936265575 781295018 952172662 139315470 581626157 425871201 893320237 136633884 884704220 162939080 978706700 517594882 771163505 112390749 754049925 374071158 391565713 98978410 801944759 758781330 860495929 865538292 910491091 386246881 427059243 346400298 703050293 812016525 867064896 96608780 614014488 495205092 550536924 832215063 883145401 729245265 903465370 657909789 703485872 478588854 700444345 529434475 579569425 138258854 214042271 437126419 710019370 639504450 761244148 105836364 871149322 761614080 852810685 552923205 961882447 274660759 330346054 467153539 500659311 905496352 996530622 112169697 932217392 900136129 953684024 269701236 387541533 893259687 957753544 595436381 808253163 157325739 534075414 19527328 985643477 244993867 495188357 387477495 613356958 651807906 856607315 582902681 845779099 241603386 299923995 365419440 706346899 815727158 954682169 223486970 415117404 336578023 650617095 73268627 471430289 227832566 850307826 699900556 796778835 807273588 813261346 644941743 795943094 142611097 539655175 89851018 556367799 268329623 468986686 361462766 688870823 361760812 806672186 570904681 759286129 619723786 816264912 825513716 857391520 517293693 722269799 718002876 883805495 298135244 669063834 736036220 991347349 971179570 995032334 617725736 836102156 613432994 816370249 24566453 495673186 326161482 907852339 456876978 572332939 935363206 972744846 716029435 819039798 878143541 996074182 351558656 760799892 335387560 943928388 286270678 711924300 540471834 557459182 951850640 955867487 399104052 460566675 571254207 932869626 43895217 743070436 122226135 359921956 27657879 523659485 196201926 884345195 514835644 924992817 66953078 732928835 113658194 561915303 122206286 323674241 499941880 820441951 256032471 750191842 58929523 173325448 432570867 968828603 192949515 309816316 190811817 745434139 420976316 633897164 265432505 296826114 169355847 443950749 846377650 914173144 736628282 943801409 823339217 942866618 168380156 865962948 522367385 820835970 905623475 906816533 747770154 931129080 544363842 998758432 344343452 856940551 630080444 886453061 923787841 939803127 204369924 923818498 113274127 330665838 503944660 858865025 807434900 991934098 926358190 967493059 445261834 849797818 685665899 978983270 522473895 590902638 33790926 576578041 626501001 877993045 5264903 292244300 770417413 878356460 815214391 893895451 331881388 695767672 480254423 590719293 443553568 567714058 175344205 484655782 286441350 828679343 198246073 793834705 759101820 941572735 403154169 931911529 919294511 949641940 144077583 321590963 256210120 740419924 721230857 777847938 593799840 672865019 147625738 709035492 455596470 577680965 444806457 985740071 620642795 951103043 838148946 970170758 501040750 535646091 542035905 637107941 52080810 243590975 920274253 946444187 602278108 627093889 523106953 605775161 849616775 923718507 247413484 832799705 747591042 781338557 987661612 990477360 842506536 892190093 451261156 467459360 907667415 971457485 925907777 971444098 806374682 856787343 1329546 957995975 508878111 578689690 29149163 355942343 362678774 842178036 755817291 883104343 584604734 966475391 318109634 424339784 206834784 589644253 529815012 603573509 485168615 940890384 164891102 896893576 228435159 874092133 191926088 286767009 18484622 255566378 534528743 727184124 965911206 980672019 427965813 744182198 436558465 518551970 814512773 918231511 717993378 779986285 764860117 789354530 981746786 985869245 500977079 832808859 823866709 976804369 262198490 408812273 612378728 621421732 227841362 290926793 776931569 939363785 55288516 739264780 675671966 979824029 698243709 875147613 888885924 949905885 81311013 256346124 450264391 744778126 904739714 967994558 255839920 797836700 8658969 851132378 236821924 591889531 204413872 388613106 59537051 94528160 785459575 833170522 551360634 754799753 648944059 994806600 317632704 950023934 614382119 620801931 933328137 969557785 205338916 429178268 980972026 996394637 658065079 899582520 441877238 861155603 804395459 836245222 436199923 649925288 551422281 807943075 85790365 972644607 580537112 952186230 745991598 760123215 482866902 636144174 522123497 789119166 767044374 931205702 746298419 821825452 262369275 528607550 18963577 247914604 63378921 345528975 272789152 717467887 724096506 735732624 565194881 808459257 717648220 751217829 207085065 377123674 81509298 457189423 821712179 914204032 741127420 763281368 599175576 823329058 884764260 974171059 977045550 995283301 699420143 743081072 480752372 986569800 614745387 752428305 933825097 992247007 336262696 965088235 874990493 936257775 905829725 949741109 994015777 998759528 317426969 451205851 200641065 933190832 868950970 930152471 395219349 617335029 427937504 740355619 571894959 607845443 489603841 879488952 189051866 660919552 950199205 994774483 992099539 996392568 56983544 837977651 610101315 845796879 866086438 946570396 270867465 785663347 785982199 918057528 257981155 787087711 570913471 766666086 624910587 657504084 336585291 632955116 225219306 619426409 248293506 911157669 888088406 976822605 25996545 921958839 471086050 670205390 953099736 975460027 661576168 786941466 919129255 991794384 184236784 915330385 993241257 994703623 526753677 755394359 814010433 824098073 975204908 978325170 672428793 805124299 547042133 767223424 165669220 831306099 762253348 819790186 895179268 895260487 959561292 981752677 838498291 852534126 434955521 645961879 839163693 856088649 669996714 679763348 205388052 467688038 700048223 920151390 194774248 883762471 794618888 852164573 765541315 781670944 309140196 973526065 374983647 589600820 461130105 762096117 466760117 963326654 540701942 825827204 265597588 786390199 412760998 812996563 923281532 969085975 812928580 938102260 731435239 917922311 167198901 640096858 404718723 974421619 737934926 988599093 149423162 163537355 735156515 804624385 981619091 991882632 136900819 811532159 824887452 954932636 92188598 378840341 475977852 761029164 250686955 945362899 460035538 571840135 352245363 609546911 405983999 949586942 156760264 744739453 803695963 914760213 150386983 331899311 368157027 750319777 265113028 967173044 147707576 635614287 992456024 999109416 255330796 506946691 15917987 24407441 475014883 781902707 383344969 956484983 732928557 967365523 703047628 928121491 973606213 997771919 190996582 556695307 689630034 934185145 434943480 688384671 881816529 964667024 118981240 140834675 40148391 689179287 552167050 627679688 444542068 477088984 23028682 843412974 893656197 943473168 990601179 995212039 233701233 887144008 551757567 862754397 224912870 348523677 437939884 445583136 293458179 844165706 637960809 909859496 988230248 996611330 921661779 978026962 778675961 788530179 90157 377325109 166310466 614354233 120899594 956737398 683207700 934775481 326321580 907209687 654787449 837855412 152793378 597390691 437077672 735128037 657858610 907438218 513659593 863664528 844392582 939144625 299924083 361972970 362305115 395883299 836675433 972081991 327393636 357328689 607215082 912603417 7194570 500076270 670270495 699825188 744787960 902635857 270421691 862605529 202003816 727768031 438668370 610075003 706394743 915262519 104332341 726784191 946646542 999165622 49410715 905909631 909394296 952892096 835216336 982777402 825586704 923596720 964102524 982097021 344082519 875806709 268689354 373819872 95029554 201572602 410235307 421329187 649071931 812619500 272308136 782292422 414964839 835865965 51293260 855969209 508588661 593060432 919390755 949228861 873552420 911099767 162300800 724732033 832787609 868470624 848674665 964327707 748227424 936943010 965932356 970554172 964478371 976871092 970595817 990700543 297061951 585363350 336681825 749832340 941170180 994262877 4953252 392648982 785030667 945737282 507639174 582196024 885176200 926241634 86818750 938465084 496165343 586978724 176500746 888331838 29475480 984794512 196140955 270511728 318790473 378374794 599705515 631285622 161414598 266733188 952515473 994566496 793617067 942611988 593082317 772058964 66114992 109291100 499583223 574644549 49786875 689194612 596789946 665561170 363264778 915657962 203296782 712757148 592695686 614470975 80730150 603807361 665418891 984862382 507137237 773117598 967945641 972396518 687084960 842320520 817913651 957602080 106910808 670754161 293103035 437252904 127330888 701167605 570092427 713776612 75319582 208391175 781734151 979527489 197192336 422721512 507982906 791355510 660526836 963115450 49214538 725788187 722624497 903247288 779985362 892929530 310116181 843336782 202686959 935185175 531746081 929333959 678547605 704572588 751953473 887627156 409221564 857398613 130900938 953701234 178534687 389250007 382467491 692876023 45878546 194008726 443876480 892125438 985091796 995901781 557898918 942176639 703622930 964070491 601317947 696601453 212759998 606671782 379292778 613844273 79432239 618327476 489912024 829813171 669120017 882674567 624015222 948952656 979919700 997503681 512827816 576331357 597025479 759710346 720040052 763387245 53626169 492913388 281848457 421943610 52076748 381828081 258997698 916279645 13097200 70187679 565500626 712149779 560993777 654610094 189041151 268424890 93201661 221934837 114587967 183841351 733105269 996500966 975193221 978705326 486510497 821537733 940435254 957533971 29558768 604732032 249010499 370963847 542798738 759348290 666408984 985765434 152202929 413467087 953907071 973821956 223806114 986712255 167973 16868819 352824843 602079464 31832214 985354114 464928434 605234351 207386968 753592641 499412661 947256754 487733388 679993873 910966671 964604265 536214109 731701581 71042315 600628985 563098570 585807087 692622729 805758366 808982163 907072473 75872462 633157767 505757453 749448810 885898996 939480384 399962611 986228798 296707638 894916662 584754916 592444437 63031733 248748546 977897910 988118533 918335547 933002764 779986506 831226849 567975588 761696642 567466829 680865750 33227536 941109027 479677538 899214074 895757424 993477292 916681 721591705 924697408 944929005 67189497 796903653 187704222 637619727 985848205 995508166 784516522 977461814 810043023 985480910 952961420 975400704 322867220 737366508 887733868 939544801 562549338 777805481 829491873 893294661 676912518 894654442 798731193 826519146 982025669 985721315 760952107 843618726 561049336 847524246 611959604 780463409 470472610 752851972 998305222 999041407 802633094 957208075 67978868 835494457 463648294 504894105 164546205 981940648 578134480 902303654 275640334 703666033 923507028 925991948 12640156 108400046 202420587 429068232 232499876 926085882 979924740 988500539 69259093 444162375 485785093 707173542 904108512 931045055 671680964 964064393 522873997 757393017 320952284 406714549 38573853 110888271 644262616 888211534 666174385 899642131 658353709 788783961 623317472 672874519 569625241 769878133 824665044 996259648 937727681 973689624 399241402 423156288 480639868 629324632 748293148 801002663 395424337 613410910 748479289 775500371 705345510 825298131 856234665 968331232 713385524 807622943 209727330 962858582 793033246 904629596 342473588 489614143 300527457 304017049 57770446 803904825 352614393 565139295 831913764 854243155 526686588 730176460 565261786 663141428 988078978 999070433 900130983 958030161 393989411 858277319 485488005 827140762 997787403 998917546 694709012 794797205 135026132 694064125 197270559 467462464 926053776 933166590 904043463 946713739 584355037 971391853 98959247 270302140 12203389 263358895 727516083 971710932 506878312 723504541 916990603 977367234 143014868 400030971 490886009 742116084 66164275 569116383 137432946 765315423 846086564 971349412 575693753 729000460 451778153 732637896 579103543 869215927 168401899 374598835 721070412 901020440 794521221 815798098 925217345 962176697 219493313 618077776 33446378 570831301 511173760 670412271 40511710 161410190 60659699 259948681 517109847 760986181 100840739 118943685 87492833 730249815 172407192 491531144 745908986 893878924 356736212 377086402 396733694 888241906 459244805 922472564 859139917 914102242 184504474 842771313 329179043 349325769 651003774 664851803 734685044 782971043 724277798 879051281 971820624 990569664 706359635 799559438 405273230 914672004 844239913 978501371 347264270 988289787 840745076 902948191 640114342 990517555 672102391 983831372 124421196 502318407 742020614 780750253 797892730 930909375 336192750 827144741 212928482 814263789 782310142 894423245 944357557 978675608 890690561 950516755 259384182 611964934 649883479 969862954 689052984 910289918 309868161 527460851 647932675 966462605 450322366 573684271 424491896 932069452 114293723 510152965 613216223 740602607 282129611 593109936 853054230 860993711 996961005 998180772 93623072 212123459 11142293 697610914 486208411 902373096 811136504 915580328 393378012 398395762 578007144 974696958 324953927 692618980 242778777 536344342 746083104 781326534 104102675 276682487 731085422 782477749 501409372 846540350 316167940 988156080 991506584 997353053 962610400 997917551 890200540 989456227 370105824 481170335 348697985 427953540 892330889 937939722 693231979 913539108 566596454 969977807 897485868 920099515 782411948 914310520 87429020 936289306 182131051 237328936 6961806 55133112 640131319 919371533 545838434 722984194 690595849 736767814 199798841 332541384 852185739 976027753 240013982 575679501 838837681 974352835 693893723 968038660 404674220 582211116 755787217 798957143 16282851 380234560 364533176 950107626 752818372 915581359 996503459 997145863 669478688 707976468 995067429 997584961 966889047 978196328 203285874 803359374 236947894 410287101 464469906 786245853 870799626 886158615 730811656 922231244 556640612 912252776 846484014 926224634 229523675 563292837 795333232 831003498 989989703 996211451 793735153 927199847 756972324 852331714 140299504 321397828 610646105 803232082 522379410 888498702 866843384 893021674 207229996 965532073 299818265 861990460 289836572 744867853 560131427 927361300 819958760 951668025 189700416 604780906 62160341 738528264 336549833 604543394 822554601 918073119 512280039 543048805 772632593 860027118 920612701 946572152 633459039 922405578 948247537 991951229 809581325 846753446 372082733 703266177 406389944 457145014 251108325 496527955 1014141 180513831 157987834 380482129 291342631 725658011 916437447 921939726 924645086 998269392 218831718 278676289 159659528 216460096 621589800 659756969 141873666 245782433 142558589 442382663 321767259 663180633 641490234 812143412 155106271 276558953 448220947 680925095 380707279 784752426 998874372 999138774 189397117 971799106 580916161 652574559 38506425 798384047 802018773 959779650 192449115 746138076 900089809 977748770 379886931 903934543 316027552 775446536 493863214 783432899 749537313 961849240 615457898 827823559 783004276 830520967 526225888 605094946 571865887 588578776 18895149 231668243 882285722 920625300 46507514 346747066 457569357 511588741 360422797 973936901 513121715 532559913 229485240 996583291 232153473 400621052 577445472 820730839 428293200 616649530 857626744 858255685 733121622 894641702 390724234 450445058 464560690 745989175 808599142 940944128 797226798 887560208 182039546 429446377 875727599 877231067 725414447 974922813 807970353 904886012 103447148 922062850 898683431 976021465 606704158 618517837 413681580 872110236 581250935 904711595 787740329 935052502 922869100 945777792 888083166 910613819 126956718 985545463 17671945 296518688 712916958 887539871 104849639 415150177 451590551 812198448 507245429 897947921 419899261 745061414 508911378 931268770 347247747 417019540 677786820 850878530 985487224 989991563 208674455 830651112 869706174 975832404 614137090 838819067 959113948 974722015 635268197 943714589 111425799 346327592 817017101 851020909 431344114 470305878 460397377 746853042 718512693 874039399 603440433 662111107 88277160 139500229 74429169 685874989 42801519 65598931 112792616 847642179 28130142 366256107 430692956 689674372 251251070 579060469 658912753 832339166 825550987 924638605 16977981 425944839 142659435 494686582 851265293 991423570 311233689 702310415 801504066 806151924 696507064 711451264 858856489 873408288 961769696 991917904 829920980 897180059 461972243 656829977 312342214 896578490 559516596 657981360 929291639 958410748 588437953 658755083 993209744 998188646 370046707 543318292 957963057 970180153 737108142 781649937 627812352 986198801 482000759 725945933 440776214 977350315 460773164 965084262 870791497 949561801 327406474 612665182 192285843 310696792 42698818 872304654 871885408 950261284 562929556 631147899 899191280 996616237 247939547 886607086 979321834 982424409 885402543 922209645 603565027 974173434 824972146 854147545 597141068 802603703 435263915 823924971 913674790 989242156 83939680 978507012 730768837 951497475 15610113 79441302 972948343 991028495 103611079 274206606 898334253 988515973 195200992 386968650 425630693 718087172 814423831 835641699 706427367 857834920 27295964 691707716 456579830 777414007 78231587 148644678 626863021 692953490 634161459 749256340 904345434 917657148 974814891 998356414 235110264 361661845 671750289 909117505 211432811 753846201 429098792 795552307 648230872 843192185 271456418 406342298 471561529 839191755 22211342 439417749 166566416 438843190 281282692 634795756 674592263 968239056 888328778 975894807 437823865 835484940 808849797 824270507 616125522 890541233 265358594 904493454 56587166 722849480 290636061 723814962 938671337 997249440 372115542 803691660 375720039 870141049 725590276 818609856 647026591 773721276 29472898 935828689 91528202 194657650 38778452 50533794 548999708 788452578 748319562 959856469 813933856 932666708 122152765 574357610 366065263 893628828 747216005 820120196 993089276 997864607 453560157 765363269 904331892 906823182 145803425 535571776 162798135 608349661 243950808 874966769 959187196 984865761 674152962 706285592 63968985 702580718 394798636 825214461 583451079 761533646 204554160 428490335 844203770 854851057 143503740 340275445 670312182 721840320 399858620 925985199 76111433 973468153 424119046 689592391 710592677 976413382 319711011 413488864 21611948 489661386 289349639 704081574 23687425 898074040 42586431 702243348 435872975 810836965 513414703 831656156 155046857 918196980 19391168 591166657 138797959 702941172 574057682 857774808 802552595 840768722 651761559 902378063 814412113 979460021 171335261 563690778 754018215 909975532 7871579 646770431 370839265 944002408 876343443 884845216 368383049 440241855 999063044 999079781 546039694 743868632 96057073 696015924 689377690 847833105 524477749 535664447 815195130 959521164 755677804 789288283 491521874 558772725 392100237 484860567 751076683 970766695 607365337 614997653 385016389 969230397 169244417 483838184 974044505 974245925 427778943 533688956 750326267 824579231 796463591 924206790 796002527 881549580 671690662 839762623 27548782 700098175 213645354 978279138 941480611 989878630 739116624 913919488 173310867 833064992 61447116 673878681 724332508 773383854 184924856 524005410 497866108 702234545 965697198 967860040 309290889 969095699 154906033 541111991 215974395 733092154 225382708 945005716 872547821 950793397 706495270 933939492 99216387 869405117 21516191 722993633 249650283 734074039 899728198 984392771 626877867 675597018 537634992 589652984 634975615 934747417 103079112 512262579 396039833 748152313 774603452 868952032 789300211 967874236 616929875 736395111 101163843 489710404 958133736 992893653 662833108 762712551 451376269 773231914 870567381 965618126 485707694 518482807 78870669 227802002 76651143 538984279 228049720 730847702 920687080 924935569 671178013 866621692 644653905 929560783 579884761 801935690 626919881 674179992 250041743 532653900 678183274 891857641 501990773 619081578 168790467 440704556 757170276 861920630 535919416 757258352 9345791 719029098 874028725 924585480 406464074 733964100 760733605 991188493 515234646 924115897 720209679 750241600 167882058 573897525 654376283 821727270 576675111 604629503 965524491 975181840 109789333 820665961 656931653 939125274 301453450 651040833 731986845 959791640 750695967 882530462 156272578 658546638 354885797 720986584 576116808 680606952 707820113 989866545 391540621 671056487 909942463 916705164 861745416 897340792 506318653 539093493 211992076 236449404 473881174 551539824 732174537 844433854 604979482 751664275 367129361 663192830 466553338 975533073 200344853 850923198 734797340 873627295 776579775 825005926 162998905 245697397 22836433 673156794 117945347 792336115 462040400 727247833 914359194 956736175 994996006 995800485 324168010 719804162 299085332 431027605 473480732 937065622 790599314 883431284 11659171 543539620 279461794 866298896 621664830 660476624 268618250 888648792 723491307 755907367 761608928 813139449 434175917 919108997 467782010 991153227 250076587 665530252 346436197 734137546 406993212 736543220 361816959 905900628 740244565 823171371 280039648 380786893 94091816 423665673 385644678 592301212 376214222 668719238 264428238 470540003 869673482 909223164 218117900 835967730 949254812 996322540 856444414 876990835 551213063 886233060 198422812 208116455 7930567 22647589 604726204 830531120 688501767 916059186 580586489 998726247 790561799 859327529 597850579 740738445 135632064 539873335 12641080 341886363 235938892 474838628 469994091 916175096 661760688 980263935 347481561 967707103 176233214 928856599 829030686 985217987 722398211 780524361 891024290 947607281 159277748 362085544 635247134 797456483 156488249 915817251 717217830 850561597 556296445 886362039 390142691 910360006 556116705 870947091 329270932 612227674 426189579 782893071 662302007 918441548 671818297 730525378 737716072 739967430 825179922 934341268 458675762 944351913 797167375 828404673 620041270 886953907 938596258 949193411 969582649 979484505 119382426 777103775 832124172 995147972 532337380 869800532 964741155 985433905 964271106 992529526 92173200 833597766 743749680 972909568 21594054 385427730 581400895 691789651 714777686 788215722 856860107 984680328 677175000 874700358 997691375 998816637 552423698 614034929 264787424 895785098 473811281 495685594 299103560 610286619 91123096 148389406 924274856 931918668 866876742 899862264 220339086 229997785 230317187 271075683 121005246 165163004 79087689 141654951 472577146 890576259 708772522 809408644 199022597 470986487 841296791 843066387 219978911 428992495 960809229 982586424 270042104 648941512 410811549 762823136 319953973 506058638 227232547 641943398 60870706 355931694 917984610 921610599 231247682 346541700 833988887 936635275 309600041 604036141 515061700 963841982 168434868 578101423 25400234 895457976 266917360 507904940 728765834 824655988 351588550 567992869 371036233 829513086 574772197 587720529 262275314 264616211 296824770 920714579 933336061 981599276 491021469 792852484 402529513 614661563 80487206 782019387 912141458 956120032 729459154 851974188 443734690 995431226 454284248 601731222 27721402 383739822 708713152 730475723 311225616 576021394 48728459 745180185 987745594 988780724 193166795 645848066 604665419 815644714 289891062 439466568 44627862 431104789 429247850 548825299 184398542 920844728 647738364 678006839 951251830 995598493 98499417 839884253 907269256 976565163 318525720 559782399 150330035 197058218 553523615 988749893 107144716 955260678 727452016 772421891 966401008 989484545 102812077 498864227 859187613 997882704 7065305 686176902 326948669 426451585 764394601 854992261 456059526 562594699 829269023 885347919 120151801 379564400 14265002 711460865 763105890 807063880 847660741 899423739 384114597 773455728 186564474 449891912 224237599 249077713 300144464 953642247 445094416 807567310 977681167 986739395 218296226 705107099 639040672 871466892 287950809 485060058 331980903 871208287 529654904 937587501 734252734 808792844 173675779 855232451 776820102 825064543 315266919 645997396 19181959 951504134 501276414 529531521 487337530 739812721 694604385 951746792 179424146 252492074 124839054 380210347 451189896 666832368 84325259 352533352 660047307 856496838 622359479 675987106 968049052 995837601 652634812 990248122 143207166 646253361 406889594 868515853 281087883 744529847 143167229 706632600 775742270 788861579 500850662 712253759 263132885 362473795 76510258 633057244 681958962 988597364 561865772 803585917 507594887 620368961 793575424 992569554 384876179 504498939 46907290 926567121 62493122 247139621 600237933 811079759 263510265 720313770 888016980 962803666 79685404 311756248 265161721 944649144 365827934 941167886 442510167 839664424 341145521 915963682 176842506 376992406 725349152 824080379 212275535 354006299 934718697 936799203 303032818 487551102 409904026 895653654 962980561 964799925 932647008 998109431 324652654 468423803 789005921 883766473 962865087 988177098 616164804 987482427 432814078 674914630 188483748 240605333 103345766 699306889 643180065 978568559 159262205 179329758 973663453 979725464 791687646 900027961 583942479 996412627 715891112 886278547 462108253 810944127 849968549 905589143 647904855 894626701 296519763 415877925 494457493 678573338 753035917 807521060 835138179 852765597 733211278 868926757 85766514 923588931 49726384 112923735 581095612 914525432 335399858 641776829 628519053 830339066 704045345 773314296 697312516 706346141 157257894 923716461 176717419 785242207 203032643 965791631 708535954 991938343 594722412 790521257 516926504 988653919 90497766 161833170 895713499 957257238 231334656 862320105 257967653 659073033 508951541 612044181 323534954 392217343 540726155 657578408 59553262 937039241 859388861 910897657 978458880 996356735 555543988 981217022 787233122 803845701 575255833 604994434 732362399 740185576 675603262 758228412 82645504 154108728 711933926 873619411 987940122 992008037 805548365 869195231 160625253 206237939 929365513 988491575 862861633 979022658 804393113 820115281 424395072 443896450 781205210 909838885 416707666 829924234 744008592 835547425 461308189 541209393 488309255 601578218 651550385 992361974 158852066 623589263 727032918 811359786 58557777 249226012 294991254 319019577 189707342 482138344 542668717 554619998 186778692 929795512 921893880 979073027 601091309 696943390 696743457 777173015 37198877 591386351 105641760 535161655 157572127 288528191 416889030 755959050 800753037 966928871 971369950 992918219 648629016 901410432 992888068 998566202 561904798 881410333 125767312 993916554 302414029 457627796 466787502 597646325 33290709 520873206 92325594 760114864 818116904 831292397 852899050 979633076 25332484 291444102 710741722 913996960 563761080 819711224 895489205 957280321 516045786 836317202 160457672 866687985 992664234 994462259 704604907 788356844 849338483 968216385 251885459 284170671 73097052 442171237 399504590 540980171 605084246 742269935 104523578 854941889 464579909 919654595 557259639 601362412 390534473 647940232 971301427 972750855 94692592 518866054 638499299 671673111 584552475 936890386 944050120 974487613 8664918 794260101 661662957 938782566 834607009 839425210 312826916 357532802 292319414 601242950 992082072 999315997 667721202 996107545 883066814 970239449 633588217 962670850 572944403 890391278 217459962 407030765 813826641 856427138 434912706 494345592 722800557 874440843 474747090 971285353 590543688 632477205 937536799 961273898 476523750 586858073 440596761 803468470 653033703 671551221 956462662 970344968 584020902 888042200 592284101 941843034 361389487 896259703 436140472 841283623 547514686 566350962 415934429 447179284 191797731 567137976 280146141 839980640 159378027 935254910 237418605 778916213 657667394 852358017 410052283 554839980 609012600 832702372 392105862 513551222 965777799 971228066 240143991 965005576 5110753 942306580 818429595 872632480 452981838 784454223 790826301 880164741 538360603 636209254 347073343 888771428 611165505 726697017 124287923 146540435 801469968 976713901 746121258 911061229 649899967 997789938 806558364 835318872 572383204 704267064 932116828 961162564 627271173 922369298 931188315 983114302 947102125 953787059 298488298 394424185 317786577 900523073 180328427 969793992 276886260 834857417 731547448 830424583 581670823 609489866 218194532 645423619 132090487 783553627 687695748 789377132 619155691 871908903 288594201 908035409 391769937 525726658 145629034 540128426 676319507 688112895 801833461 880684346 463629026 822377907 930361777 964718577 732278587 929897396 141531740 677097225 876680057 951802791 612728501 621220574 808073548 867304116 225406045 590838951 657895202 747219845 858395637 957728725 142492567 342560445 903919745 993313427 72888984 995242738 950027974 951134097 716936210 973648952 208307435 990557864 506672235 825550931 573108519 598878794 340233135 379746723 606987 519351945 435873936 615034904 179733561 494293545 425950291 612753974 409010214 862739399 823876476 837359304 960072959 967600898 48982366 137925155 519458561 966969320 580608284 656712018 949272246 974938156 320588655 453528160 419485805 746064435 503632600 736995411 423705252 562485254 24287701 685155773 255363309 474489607 292400927 872113348 527683229 969725787 181948648 743745185 1034483 743476108 46311964 144576637 201686282 715212830 647117259 699399474 902699800 955230890 330564774 654478561 464675684 921068683 234412792 939791228 293878828 420930818 969566212 998000790 612457434 766390131 919297175 961826086 95791760 872975409 34108360 527401539 191254305 877880455 863996672 997617145 121771091 951739595 97062613 951347389 708114443 843550935 398007984 720523121 567159691 743355258 509800330 578904890 331090215 979249350 219443748 920457993 783677029 822545457 603138139 734698115 22802960 826351696 711083892 899108422 730817288 740984816 633320777 923012894 656235092 907691641 175471167 734000191 596363539 982678070 67589675 963336709 176765639 576503506 225189632 915926148 514463054 568320474 961825594 988985085 468871760 906930201 928176941 936926320 603178039 856346968 159349976 233758394 913709364 988367431 575333050 813555765 220662644 910187380 544386802 716160612 47281650 559882048 67317488 224402830 79930373 683505143 615110905 774250283 488933576 953717961 242998110 466805944 965827279 967251176 871859777 947829973 512661720 983567208 863221187 911627804 826500203 878226336 588565726 788357088 720179373 926013082 161741886 547647165 111450706 525541195 882350286 909901347 915101304 967083947 42333955 742909574 528410783 929425089 207276223 909264571 316827611 832050825 724832671 735423459 384906202 625467896 41803373 566911223 458802537 794060867 142172328 744785465 966928091 996227132 815963645 868904964 394267830 519430626 645977241 941908473 344395715 552026142 341730790 793932583 298523339 863415958 707635419 821968899 109421819 626085270 399871295 985296993 874084785 912487862 511394214 608139829 469542144 899861996 936351446 938068662 970399077 984900039 140516501 236494819 632519521 782267229 186676027 859005488 510191819 768994612 998236368 999088281 184862848 979642288 774750721 819469990 231598617 753740391 920898144 936044466 995102477 996260207 138620277 141287882 870422773 901865352 565693320 619407344 797607351 875818071 166724082 306576602 705536911 942645388 115504685 737695147 503486383 712442190 547891446 739814073 188491559 697749562 36034722 157968510 973085293 987322988 200445764 850644698 513573681 757475487 832350096 889968688 939749777 947226320 321326585 596722975 204033216 756186800 76346342 341695041 317121451 575527676 23456153 268322073 537896637 542508240 406909088 410558280 186937084 345172751 763012448 766030953 895979249 952262410 20511504 122682656 295382213 967116974 307092623 429929650 198197613 283913634 888502063 916830478 767852571 809379598 436292026 477262452 797779515 850638277 529798086 704790749 33586139 755039064 931960923 940745828 901475277 912206643 319751534 818357941 371723747 852825885 779461341 809818063 14119313 347965459 139341944 609654673 966041705 996625181 945355837 969883339 668943943 753551609 716387229 943457881 411534361 701391804 102800910 697294932 380564819 579049547 62892317 273996650 562402334 994862039 692425989 700613961 804659233 837827526 710214211 715017551 782759276 984219753 887884070 957823524 165714531 611659402 683305842 932138114 538051365 569941315 372321754 582797830 814870318 852402260 1092242 515066162 781783729 998769345 488793487 638897393 705648007 874367939 354937339 515114404 382844059 510837267 637243612 923734416 186005737 598739680 231818413 702807778 734459055 921266881 547414863 592706270 58868519 68387934 807904614 990157567 780568005 863667850 584783064 608079884 497938039 956580472 567883456 611673210 603705508 642165790 74468940 198152840 701077819 810399650 480721682 693311239 798804979 802991324 995668988 998781220 255708625 810251491 703545324 785296782 32654697 439669123 561765704 578209156 806647287 828662423 421165074 890239388 72957496 498478541 359449080 501282886 783186547 799310193 645490333 916594678 113145439 738313401 877165236 996281661 495603501 828004949 859176881 977346200 300474162 642735541 423795137 676207990 339362321 405225911 300941775 505054960 253267920 934832730 306562726 921163054 239755489 915430105 329689254 375262357 275178357 802277909 243674409 681965226 428761824 878745629 597069959 951976253 425464774 487377765 113265393 462325382 12504952 912557538 670654447 917007034 324205387 430208623 41505433 671437033 850032216 922128843 786394131 848874871 824048102 964989056 543780207 988105626 291784834 441706463 418029594 579977522 931338847 964930734 87534195 612097317 159752741 473095034 615771967 727824842 906939170 984792807 377714888 626102745 702446197 931407184 359574663 844364260 47852754 709992484 859621436 865682491 176752021 722270009 208986325 716678906 787650019 883272724 985530896 990202230 240438318 877594313 35219319 835521229 381444823 681443246 927964926 967830206 384397353 529852811 424984330 600156242 511689034 523359566 519372675 942019911 925964977 941645423 3214879 506128084 879495866 889159776 797354358 881327544 220336555 942764163 331106830 740245472 14782672 997097825 397475467 830476536 426857828 823085853 970708516 976270706 814194206 960137856 36647365 811097737 448381771 780059158 262025415 717018433 236737861 578135775 747590907 748695479 500311430 667983772 555162342 838109712 612369605 752420481 409611480 922355013 200170206 727094901 365895944 982715856 823797158 830306656 99246391 796368349 813735746 905213950 641324643 987650405 339585735 484057603 879765674 897197335 333696545 557841648 930029773 939589942 931873879 993243026 428309648 817501703 23628247 840670716 980063750 986883592 503398286 599461634 680922522 821717398 37534102 796960192 468076849 624446927 846886106 890953431 35569786 177419087 485087803 709914343 580153393 608208742 466460311 552223602 966029222 988819590 669090415 858407486 603947328 634649395 728859087 865551093 354533171 559076752 816608546 918549181 813043946 839623238 406362672 424410714 707794049 709499984 580637661 916246604 292919306 802322687 736410153 792953490 961335538 997853637 502306296 978928138 140466429 141498706 849501539 869813547 34698389 975340339 892855287 975247262 842941821 934569221 307276538 431432226 926912088 987957778 571908178 814561613 606414374 670573470 775131143 900798926 537050833 869991614 28944625 960856145 387696376 621103620 533529209 942643321 4605199 607232401 629688757 837238230 58557300 997138616 893177117 973290096 365863269 445505361 988275058 990261876 822402199 953184615 851057380 972404869 535766308 940373056 505109857 711313539 669785305 919110351 964111146 990664680 347103262 525861608 833490709 985366549 42910175 961400211 764742406 772258119 46328647 772013192 955487321 999127414 128286556 403282231 358311237 651866137 982823116 994839779 956511107 990497326 314675469 662529147 684178766 909546087 897091013 931493463 516676351 800326959 546028386 853660506 102303146 872459652 331394060 774362213 309167600 917394181 260465657 976544227 502239581 928138082 387575984 966231448 420848358 892535629 799273488 841641504 291072370 691837645 138914904 389396936 246555507 850286250 4553180 884834446 243797910 703489240 257214021 651066526 920539736 930679507 682376995 972777205 21057968 662641812 23408416 89600347 102010409 205367205 643179067 918950840 385654013 585020475 693621709 849769040 1853363 969475541 768571965 963330354 4339360 520159145 291348968 659393578 880900666 912867480 33364554 505071781 969685193 998419103 826241662 948407929 341939106 558674499 415578990 657886040 105414331 410744649 39462806 866434611 317987920 752134300 788178810 962854659 521946168 690074090 419524335 956396811 262716636 796610330 859421845 981270246 408452629 947444555 631513455 710623656 200417965 454414471 965263578 988867834 242074379 626503410 789638405 854251362 275459848 896617807 372571408 905751164 933328458 987765564 703470711 764418090 255610581 460073499 329690909 433342966 805340382 951360116 452477713 762189821 188150371 312331828 758459858 871030161 394536088 599977121 18383709 240931323 603346122 711071463 460435248 774639900 539276807 838940002 344448000 727544509 404216841 659751693 385394 235469073 678836675 882705289 657783295 761890323 356790912 701593504 965664974 989982445 709620508 927872973 176489015 230825414 61789481 83986073 943539031 976764986 895598352 929147125 972655060 996707972 362324988 635676268 564328806 617066767 135556412 200356426 291669692 959528692 902809361 967927126 529605419 545869343 738764368 870126697 248784102 646213762 673857798 942320346 58611079 907088613 271279722 947179957 157894581 561073096 268047257 731616878 576060393 576865498 39479404 556102663 239366170 265954819 441242792 829683960 463674711 492720708 459257443 618779768 166104709 533061593 127239927 931577340 735256383 918737268 787214569 959612010 915638201 951857811 122248412 130102969 310528196 817277197 143308085 714661983 899438696 928872188 202643457 941287151 8115849 395603710 463466246 565879159 421943907 933937751 332800595 748123829 713064806 844165298 184395884 518078534 130289426 361963758 745229147 844825391 681853772 737235515 871364740 956003996 145899330 218547095 193650662 536806316 61611671 301614288 946082496 958309098 422510937 857891760 710120683 857073750 85688406 459265667 159654110 900747975 348355269 471381268 703315981 901597355 432315190 947963405 722219898 826588535 419097035 582121016 319127449 449526076 11896764 896826086 280989116 500067400 576809629 929432409 859488397 975682506 166575083 171055562 766727985 840423845 719494553 783704103 163390683 297869614 464793345 783695060 282024647 800955775 699460624 905216934 506874183 650761936 979050996 994396309 567739216 939138253 407594870 742239187 329882671 665378431 829283189 861854349 174389819 313040707 921254725 923601809 109492996 616971935 740527409 855738875 53181789 882676979 287706149 709764665 587049854 925748400 908517062 916478073 535810754 570238222 569884912 642551795 587811078 798435875 420324446 589994917 209519018 700093951 205401562 460215999 704599491 799351148 902750055 974821839 251293878 761470225 490766897 584987202 260544503 920879238 230023145 341654762 282899518 757329559 450954481 522748052 376866194 719428681 606844612 952444631 888178880 996775705 591666574 618352667 155283132 884348209 528930518 917283063 639320083 798481033 580989231 934723672 793206003 985671200 304443575 930500518 603666795 892005496 848495386 863260080 327963989 870794144 567566292 810578776 367052184 908574376 910451701 948864568 294075771 447562898 92740433 193449327 661501652 689670040 625388980 709196952 236915877 909190606 27321116 854194042 862513304 932040559 46715558 608366296 395998187 557470979 252044539 824043318 511081087 603668394 97065273 97258814 49827047 883868820 991099203 995095555 578909959 927722049 57547348 854664114 686410791 985970041 85945858 236218096 743473341 750767683 651856979 983313632 798937984 895726236 643791572 743097614 701530586 708152636 562091233 770784826 977070695 994006325 828311041 867156042 151379292 172764596 531087739 885335087 988285238 991729955 81095670 610188325 435802653 675608559 829651503 879181710 907740992 945699946 454042510 572426928 737248719 892238042 614268968 850767186 483170763 492376232 993684932 997282413 303119499 705325647 934181565 943490160 721608040 985514231 433900311 662772709 706636835 764814722 733890387 802306193 173440638 851018818 526825196 933234313 21915808 841917068 584680622 941816450 723737316 839833912 3224103 989518221 453502846 741872050 589988267 849257347 846920128 854149904 424940908 677844055 434276711 889303958 273928589 651058565 820475114 938186255 740675724 921367966 383002903 807754215 454816612 902302961 194330082 580779858 722200859 919798418 611274257 842220195 454857448 982006866 475033213 690064509 819192218 886960430 298169605 992614429 524571916 944021629 114868651 306624200 893698049 967968722 253442980 328594740 775412892 928628258 317424581 656050543 910978880 921587998 81072994 736838360 888161762 976959634 551998092 695794027 188466201 401720478 360517928 372478990 894398826 961952288 614600912 843903904 407976133 667508216 266687504 803771999 521612174 927947013 360867811 468681186 723043719 909188358 842892182 875613307 935307371 983548561 355612375 571044468 983462716 987920262 141858152 291068337 277004097 314440493 409111377 897196992 871145331 903083188 843057782 888899013 455472116 964488896 469489838 505770212 185629615 354196953 222285518 399971590 653715358 776645004 554521352 947115877 155624118 642223397 774708074 781109793 659223394 841111497 494785577 625157893 745476849 810438042 256873895 823259167 642994667 757824675 217343410 896771830 174404622 636938400 939342541 959614246 849602855 855122086 241920188 472611082 78107316 796358128 524789335 742217905 127215660 837762562 282164402 406003910 589131341 685436249 307501790 800674192 536560659 710714191 416876528 830698902 787799912 949599113 241381876 931174568 301413912 830194858 311848158 816928662 808419139 961097075 634102063 849391834 455346169 595502392 325173460 847804875 708712917 802075463 142303722 893799487 216516138 254921951 318458395 808855023 822796920 847306386 807951344 943001126 987708759 992124312 164134285 440720066 785935422 854527279 556301260 983611695 138743836 845698323 485275925 618283810 272198367 297918918 657614548 871308119 750957380 866815486 359256736 411852374 300077163 704911392 774058715 865432887 374861870 577964920 981856079 999109724 345985364 984530273 794435082 832344942 936432912 951919097 859557219 936948148 443987804 939233338 134118399 223435435 215684243 322087808 845189853 855769668 513912368 958557209 487497486 578036294 265644265 834610206 956077661 991858362 235213255 566654533 343765489 531538787 100527617 699853568 511701255 761114073 500071899 549057023 797932125 883531410 311223510 717154731 867875559 945356527 885307435 899608450 966424607 998535209 15761799 818206191 528420675 826647884 472220807 819986120 824368140 832947373 457753758 850222827 395482205 945703177 815129600 958592426 44046332 672554867 453426162 657656268 977946874 997392711 441674227 861763881 822186803 862863436 444350285 626109753 379539683 865818207 258919824 450486023 263180959 698259186 200548546 758351386 306119785 475710419 588072033 891699806 536993280 755609455 21860197 316844552 671488616 773188902 911089100 965863826 196816084 198835166 417347659 871656235 180745814 740151286 112998417 304937910 113606816 632870690 517253818 667485642 96822464 743623225 225304587 336327819 905368249 931653447 120003802 321789334 164594929 690502602 968276288 992097480 803056353 933488845 699991715 954113969 275710593 872036566 276576641 528722402 532956030 929238600 805952094 885853381 553737245 571751617 128820533 949898280 643393126 664488690 341947424 614307604 954320522 968661437 750136390 853129463 426741968 507214438 69633401 859467943 585079037 818311078 110092578 655908729 677616768 693084550 526845446 915975663 28909828 175173768 711896277 856311380 905310113 920699826 67318779 466201701 16993644 652393924 758403501 877556051 275247550 306955333 14492793 532693068 654285702 681406822 839380190 983115625 955265462 968090945 826035838 997851403 8161932 232404524 117435419 727382230 563372847 632798288 305173605 541747315 405528517 804404838 141793239 646514963 419226762 867176413 363112861 819277243 791041184 919586407 682408711 861932327 700671328 810397043 567662342 854928588 575832133 738822853 285024452 512230902 328211632 851230026 638678679 970473106 889485912 901087919 900915086 940734339 781541210 824804922 402104683 415791212 610491922 935761114 136530164 495213505 813521527 974847757 558829720 706210850 167833066 777398079 205576273 826378433 232918034 690079751 554697185 978474844 951501077 988355429 656624139 682683897 80191787 455294551 287464902 770822173 980336453 989162608 495438126 574639925 311796622 918030016 458191103 794787699 252072073 772863326 821661233 892097722 791889299 885050460 199656338 434498867 130752794 845440967 360952531 427489644 184313539 796128967 524084702 799279083 259508478 600687775 346344466 958397157 348050026 837495720 543501923 886131514 770974740 999345961 408019704 511790034 328966137 380602738 737703391 825099065 905569494 975662851 911956976 994170880 428278041 673059270 920957901 973529833 186739970 855791351 394581586 816396239 836903224 929855361 86490402 735960298 348811009 569999718 889263500 891849835 594394484 701946565 490314612 962983997 659703695 770562849 294252933 578151832 40958129 116670810 274937539 918705925 477160358 617865381 253753473 471955434 103876256 451471088 653101910 672089982 987295820 994432810 418978035 578158766 730081679 874744770 442791851 732991392 955775931 960319946 146589321 907284586 572622195 901510308 560005732 784974117 144761030 256242614 420701586 813523492 547192125 662473212 221104337 553724330 796748856 993888132 779474664 784181055 945787476 974162375 53499445 313652649 444346828 704303044 6801726 668898708 633962014 640458196 135695457 621442374 369095002 524994961 938687600 995772782 284913584 895157828 310583687 370648815 721272511 806635743 450444530 481844201 125962244 922224675 222750483 823754105 310972198 460213360 6574846 593593076 281332609 481859630 723860285 745652073 30995700 485637859 575509341 798104983 29225936 139706429 257679787 634184433 993825064 994093364 136846112 698187611 344452622 621568905 272919889 386184353 389281438 750110135 608020222 973257476 194535446 600556234 347241071 534119157 699714665 756379916 45159829 923748957 122356546 629324516 945710367 980404318 256922123 848262658 949329534 968797956 973334035 998322665 325945477 352576692 566634910 606534979 407449407 815759543 954577941 970491641 369369075 811097118 584181460 796634828 434101767 792482363 835098836 964171983 85668450 358978179 433608167 578676173 624127815 684868882 32090307 560218090 26295714 889344853 571752622 701839365 540302864 959947900 424059654 713285695 586860411 701916368 867960389 922023031 368328856 887520770 833901149 917754128 426640556 683555843 694612408 864360906 343620707 383116127 416761830 810557066 256716873 792883421 235603208 797223536 200205289 270470213 218110956 808128230 848323933 913322474 868710432 951588006 91836507 309807103 450773412 757755777 88625948 949242095 676913257 748309304 818090281 843574293 735607678 876773017 652356835 907931611 707658588 808461066 671621734 944442829 626330593 632563736 716171620 724256116 744893087 937325796 647303292 825479039 666011022 853273754 774757397 774998254 95401582 834091089 769510287 970179085 336028428 777293461 626075196 842576428 993832166 996748639 67270745 419819278 272166088 977247625 756720813 856312353 456305669 971332958 608831188 987609457 785196866 843283502 171169225 561390589 964778885 979300059 725456690 992722242 432954953 773879665 67917237 759107629 799551626 921481193 761289359 900465318 647411453 792142184 992611288 994758236 907848747 957177501 612024306 789210836 542214098 739823769 963245828 993236728 581236943 791164958 113952332 283820948 915238187 985558690 348685776 704584413 607445785 958772844 356565673 746215883 377070408 393315785 878991593 922554892 748798628 935691340 279673157 646444195 400932854 686373307 37921662 195644402 142972067 451800835 956177600 964072504 808256703 923761731 939266204 977227778 563736918 744971130 553522253 827436725 837389598 937239240 6465554 350888010 4123323 279950465 727521235 993959930 537134680 548713127 632724823 868253853 349498449 992981675 899723752 944626388 372346121 900717165 621680955 958699404 724201759 811493213 486958492 592242106 145277607 761451137 395551717 996255005 217928725 931496004 286439743 638099904 550401335 738439021 841769451 886472061 426743789 984271099 580836450 816676553 962174416 975265781 988848735 991874053 524064992 793441602 38856840 614902044 564500032 924174210 892914589 936142892 801536829 821034502 320023679 901630239 797623066 846454767 208530728 412279700 17512256 809848693 641624088 779271375 89371768 228814725 226041131 691110938 405131020 565710977 949070715 962667167 461520474 850418822 79126668 714017697 412768456 919151394 508306324 532926117 558428786 951207311 744466942 912514527 552339131 900173655 387551119 541412722 227006455 785880279 627374088 648206035 104781873 295796891 240019942 447087467 353705840 454933764 796456654 987316740 290948250 504893958 155930187 689480071 203877040 650284886 251158828 362687772 650065386 784398832 5010568 91749482 865609476 965514070 757061699 935180108 774488290 775598326 324842042 980361388 493147602 781029703 471629983 863029585 890906432 905688145 972480068 994021278 686668672 786245820 895741647 988515311 494643412 615238335 970807093 973995553 33676600 451385429 894468456 980134656 251943148 473870462 179684241 184155445 671628451 769303812 748169080 998938460 957298662 996692306 506482933 526310018 276125931 889516347 883154187 939272902 486464989 835205725 423186121 558187013 838345504 850210875 873394116 968128854 938606257 979688951 482002739 749993427 276125970 330839612 449308510 524618945 837832484 910548509 621439572 896474131 830910891 847590532 249892640 636966122 420742376 735461229 169407311 789492500 328830144 480981451 960280141 970420045 908472948 916750236 804268679 945096952 842159522 974264832 613641245 815723211 517617353 730043451 248734184 333949845 825311629 973115965 480507980 760302171 341858655 725222127 540701736 578732009 249396881 665383314 253320963 378332013 632023422 920603335 443294324 963065145 937304063 980851086 6485445 801783567 452767462 590183953 78324754 796243959 522872412 841722852 84076097 185918942 579460963 774501322 470059851 634175614 965519827 996510023 952741745 971653062 471110993 849585711 113343750 374495331 171753630 739559489 403003107 965070289 774640980 787304538 46930502 206541498 241817458 960769572 154408656 532049581 944058776 963270649 10270202 494963056 416932225 436582386 893644993 972188009 585947507 865596749 713683263 826801221 110516160 528102089 673459203 864132050 864847789 899551302 16721449 907211622 77810855 247113612 318706364 609360098 946353391 991427503 896356223 938085168 614773923 699577901 356117901 559848913 933718692 960932921 863244129 972510705 766295981 908483136 310180409 729648013 238341644 719746154 456764217 776416435 494372617 549698307 876452034 945583855 159266276 560136189 274611377 277339919 32539098 666579466 520878200 798521464 10866316 813442036 605242481 641259132 672307140 980354701 409317991 779019053 768914244 963275476 358207252 812327098 363535852 713925510 516109266 788296219 399112949 869182021 937978628 979596369 842357422 884641428 349426202 916117556 140595800 930032570 671316263 694462942 948611677 967700297 709482323 892696632 6889390 184297889 58663961 664851100 282167420 889007107 346082503 890289101 993431416 995098017 730112720 787857023 372267593 763895448 676118148 932785767 1451476 294004296 316296607 395298514 118399438 792444666 478093611 483523777 106380302 875043637 110545176 297926144 238363952 704694113 202459544 872532117 711906708 905194833 32728902 88816148 436468502 514993096 502740323 570082410 870883220 937841592 250211014 447142317 171436557 814102791 657969063 987508838 75691250 199811348 422040824 882892048 944641903 996708910 107129001 798262190 501055750 577891845 362846829 631049245 591439597 812611349 224765591 885009617 241847573 499912065 760877394 868208928 548237543 582926777 631202127 738633481 629409381 865109800 112991620 755213888 920402834 986100334 391665347 812649866 115188062 340724109 580660864 683486492 488305671 645275695 933110731 987079805 623389663 651872357 561256707 816519035 380495501 919465059 975936695 990746584 428691553 535122997 64022483 65796196 547652973 767706955 698535307 847898075 820056327 917453633 415335294 428295091 441884787 681975269 20332445 927855568 965594573 975988783 366169609 991803751 332551594 479371071 572989526 631868622 988889297 995624908 807852285 810045025 31731371 120801395 788587868 996001413 532851040 890593833 452087874 614470183 529341532 901805755 361864372 831877496 207375646 564385680 560365324 825555667 978205670 982059750 458392573 647953244 184890689 354360559 914345511 922528699 868710571 953165834 298561919 840202209 975206853 979766749 961125123 977850822 935016888 972072857 821140471 832820695 783793119 966889779 896695345 911759532 388580768 725475974 918690164 975371834 97439641 433119889 76274152 424746411 278627832 412632468 316188279 356207575 251005387 266757430 794211262 856618573 232853527 971712429 794686269 908767359 391499820 887949324 502951930 969217600 771501096 787716655 694428427 861578400 142200147 287814946 50548954 161879312 15769029 366881471 784354211 788047096 244452239 272224716 418917935 494441679 313409022 487193356 233495180 479995280 263781707 741685302 624881548 932877119 134273794 507201353 911618316 912447740 407722900 557292681 107393302 746171998 558629687 804539436 312723445 346595950 534387774 805487284 741561381 788806526 241162197 244022678 286596127 841402206 535636617 740951571 2719044 97648373 745217085 750837353 600102029 604624657 121502785 370259877 497918129 938862200 474683765 813200413 648608639 866230572 662691676 979831991 264478326 619799424 175738887 305792219 445963364 740697477 269722887 282942047 582203331 982382826 960232506 992642387 154004538 235736901 27141815 280117040 391959525 581174557 268937072 584413315 819006235 824111139 180314692 211063407 501172956 895754540 331185143 621255633 159872923 410632032 691610947 900943002 776286169 997967827 238074587 845943191 324070725 507344156 672171362 918471966 961625310 987415114 839243101 904415971 52966678 431160521 84394626 219739117 864644304 922676820 644400286 973369935 907452619 992550945 186976014 398722060 377559196 823976102 942587923 971980137 376275593 546617737 85003551 198269455 86517550 476585019 349407286 748614021 288950143 627733849 799197817 930927744 799768394 914525393 637738019 760552051 1658797 228642772 537065560 682222549 444082137 897925572 409356391 864827076 997842170 998525543 367398516 521522202 317424228 694407390 187330408 507943315 209362221 547667119 777668579 849707833 417305499 593062981 907024729 925305669 589424091 948644816 385548625 488387255 295889545 463740548 517097126 687107150 811954667 959004544 22478721 201606634 736356611 886239292 126686761 588984258 44807265 965485227 612713771 933541384 331130791 497710778 325414131 372652544 4462757 320293900 470869914 984702188 872759876 924876689 303490573 985646190 504232063 705589768 121832030 560932451 315372219 931190308 37765427 394009636 114670387 478386601 988204021 996281329 797335895 967779512 837533299 842327307 147569518 296470114 130098267 849151884 770316628 787613432 983790294 996540360 946785204 955398574 16809342 832405185 745303279 829902611 87073840 285823308 629847054 742238956 760003765 856829932 727823711 978519470 736824351 781833632 35368784 158991211 940082115 988308141 585738971 953358976 221756725 468279356 641998779 820944109 370122746 729641361 329533518 453405945 378952144 387092703 197584629 853069519 473835909 703307684 855957229 910126380 884043269 999292430 335611443 786448838 448032255 911039521 409193814 650951888 889096649 983387036 295978305 391072391 959635014 964759863 438863284 599937195 693305644 834822639 319649157 721408629 219993828 814160024 661785426 951815197 62664079 718743998 563481959 687546266 873850095 981813499 210025696 512861064 630538139 938913329 921517331 929150243 934939241 955744615 653942873 994606149 899662917 984473027 108442085 249464515 826133445 983952639 918624188 952094528 101339498 106593657 436481624 564069081 9966968 518288432 46634760 205833370 280464928 887290541 602469952 672795140 812775192 962442926 347887756 780355325 821874058 901874423 394211491 494649288 196753704 601676294 471292866 509680609 888435997 903581844 978924909 982792334 525016448 685604193 894323040 992967794 88244308 671599486 902747946 957025654 863289154 935575100 87201682 265568555 541289517 594774676 137747416 272244493 859816581 919988810 174908156 610896765 254981301 341095859 377299717 543581853 265075553 555608932 653222348 994363788 796805766 933160934 286264384 445790459 361129758 872399720 721836923 813815579 167584218 944819159 472794220 571501535 431510679 460386531 810259173 930762470 122341779 879059665 10824248 784950068 199488907 908285373 227933952 375246522 400256795 974803437 174771190 902296521 547598506 597771406 11130425 32713898 408565498 932897369 253791878 593369279 567773585 934140296 662806618 709489610 781786027 807572362 19153774 796686109 703314222 758869713 67772667 701466170 153183286 758868324 624923132 883167742 813344482 977960098 402518105 721694790 278880747 393863278 839577785 942904303 862639354 888462638 468538493 494274931 554317755 661903639 100810480 527879291 178842993 345057344 768191937 968748505 465071216 581982552 30234696 998512474 627660751 903646414 631259862 880448416 388506847 975892242 182068045 875617975 705396506 785221437 350855846 640117655 160135460 664612758 741956290 966762638 825785113 912319452 778211536 812540159 312400914 924651141 764030821 895305971 872120940 948431936 74663637 826446908 719581118 814100979 659714533 979198117 272612352 429932784 74481387 459802032 952871013 982676418 70924454 487672420 849171052 982662988 216092280 893344097 733319588 945548885 125620688 209482273 768756105 807244600 572003827 924303460 647491309 743324995 266519953 752282690 885542206 895643610 129497518 179127697 124394828 868638304 49697320 123151498 221084367 415905515 628864788 697936817 790184795 801276313 453434703 574127243 597998977 677151823 984243363 991989941 515006470 992893893 691680157 820838232 296191974 960038192 565017200 661219961 231523557 298099197 498565576 562966170 109610057 511729032 478688201 662051845 466327904 601134890 350152472 953065180 940841657 977806143 739541496 832893695 376987289 654567814 845622013 891086357 880313237 969738115 949317527 958935592 87354022 986316638 563692245 613861183 61470886 621130009 231840559 875530721 925026570 946688261 214989233 605318021 687810298 689829266 908643340 987580311 635558992 973238853 264098313 776266393 697893054 908910009 690282838 872476734 669978854 714986038 700119441 753670058 796944145 932305867 31487644 911669454 950115205 968757001 412693156 906190760 180470070 860200312 181192199 192883288 70490082 870687990 571715407 804081385 478537904 930177517 366280863 531962397 688656286 971070257 317125577 904532917 229522700 804443714 75006076 891379335 970891221 982281280 165703908 687764924 574600914 650064593 570889392 771670982 309762262 469754471 998776559 999003772 471885473 952669337 409466630 592535714 292573459 563059543 919390443 998343023 568693077 609197609 554161784 563317562 455104755 649576511 322877657 512576619 664337162 872345888 888280179 922751299 979731711 988942823 157548170 413576340 954350295 974770958 571902433 746304955 143741199 191682007 101141906 149529323 147765492 906633120 171690679 507029763 438830560 911909849 911146999 953568033 481128215 818226190 991123186 998176020 69635424 968802671 129555812 239582297 367617626 961520502 397585848 529340137 958022913 986163524 510365386 974857174 340015412 483800951 566245011 888692249 617371765 647212497 103496789 141229478 240198056 299167441 296057150 636829278 867107142 879132208 198662023 475454322 962112134 964495382 150759049 614942624 104082723 933096770 866466441 868583099 209027967 250997526 356576735 714651655 24575436 759501153 442661170 802240446 741014536 960273462 57416654 278621986 771455884 941448623 680654385 864387456 9339480 891919353 833790704 884977426 385522602 511597169 483554492 978543667 559222522 926568001 519606351 798710617 284482945 307897138 424721995 978897046 593333902 652737402 906786640 942130321 444947368 614423198 438807657 696542993 568532632 757017340 200627694 381165251 790749966 833417774 924925322 952679533 655826332 737147939 510262885 931647985 444638400 814981227 381590983 414855486 823473518 839607615 53840137 558961648 588397165 853895997 975815428 994879650 587380325 598478997 169890358 889370189 28875110 850795804 247221161 755353931 815536380 984777227 631889402 688114244 83375188 135899469 971600348 983160483 210930897 670194040 666074956 732520660 165347045 581894624 235590414 564825442 868765941 944355786 102663313 436273722 325223053 493111535 1099931 293441200 47271410 248885835 95897797 360251464 533967032 913561220 473736062 945695971 260374035 312478428 86719907 863465650 936119065 942030140 144077745 531794436 904406967 911726306 81220143 284804373 530857899 722247777 34094254 751552203 464570290 897090052 751650371 974127706 874960256 984779400 180301976 803504582 52584137 901892208 804138016 987146688 19152350 271241624 35006399 921006275 840767784 950272857 665478341 964563032 993854818 994583782 31938032 721391646 905562096 961936388 511208579 883720443 897409128 995313797 220722 511587706 946743881 956256139 9503795 190442573 261005865 325716384 68061825 144938210 253354305 953918128 52362290 402084736 133176150 312023414 127566580 961176177 99916147 258216595 892632308 949511664 418680102 604044182 789820310 795307090 6632003 311576446 618634599 920717005 312955076 847729809 638624269 692563517 623428727 819909867 102762492 718865179 415084664 779540262 154813060 458168999 711842572 908395796 408919505 610417489 781205211 836504694 318842311 740307087 235812629 853124967 996422819 997384572 459540366 883031362 854366948 979393556 51347715 70245376 598397888 621427666 194722776 891746162 738896382 979778612 549694190 596868848 944281890 984071313 564872508 956746066 907801813 954213736 801970888 815515238 938981334 980589624 384339370 801090126 825656246 843518549 386362998 706606379 523357004 668518121 978880526 980230530 96555360 442165275 857653159 892632426 593185446 792390936 298536001 955588025 734007285 990344912 616797985 805088838 10233880 292187212 608962081 613261030 755847617 900016396 272703398 324645720 371877428 909141024 749878283 918984265 292704552 913830787 155519292 504029379 189883967 421122245 521495405 864023205 643570957 860468064 900010536 935398084 823477449 877798530 158146875 923406358 245563897 396262942 536426894 841928856 421995953 953746252 383036124 470876505 938621402 996021954 541741663 860445463 49305777 213514019 540311518 729249395 54449203 423800510 712106737 969367116 174419450 175167135 959066418 974157678 389019506 395248287 72205488 344491348 865992853 954738718 251007823 350871692 318464146 871791299 814720748 884408039 491737410 755351434 424074649 761643811 622732325 918673489 235164079 996879838 875276566 949923530 241265970 501976391 395721593 510969661 598504686 839662825 975345850 986766237 654305989 762951907 486616860 919843539 115420233 143588032 433040456 680215948 262522813 939211440 214845561 235393122 972611649 986837544 165795800 231153284 101635873 285516568 534948736 683957850 315513272 868663100 992388372 992995693 701651188 987006419 829684476 973594405 815657368 912992023 349091147 847825409 855603626 974789545 312336586 661893595 112874005 657667724 902804032 905528486 11437430 180378673 570048172 960518013 6403636 167453186 62508491 382536851 221948851 538696059 548771095 895982498 408839310 617800099 367670427 903672433 705341748 805892823 165475182 634345699 558180883 832350609 196641766 732710904 942550034 950609587 657188388 936321898 102104611 440468114 667067427 892809911 348437355 919418157 955258195 967803360 238981956 776468766 198872530 324399926 585696894 987542040 333534098 816409821 424019169 635274213 862088358 984205253 823250045 984668896 889530201 927963308 881233515 950376450 501204177 667057567 131821241 923424186 757095713 881411144 212345965 707247422 915613926 976116326 305388561 345737499 800258042 996117201 123929470 486235585 899226392 949468433 64189586 681141863 66237488 962890553 198414510 441209838 297476794 761275709 782952334 792284419 923698818 980848525 490191911 568136428 679465324 973883666 906378378 914651411 205397728 269263435 494670959 834961297 451382914 684338412 904584723 943458715 110151112 968458263 244275948 971560369 688491173 725613118 635544080 916042109 855513738 964412536 50942650 736884048 966873388 998658979 690270146 868706840 371796795 570095451 812454593 867594460 769911726 787945601 12858515 445959261 211200 483614518 812844896 868918073 151049409 972801803 175425739 226915010 676711704 735989987 219647825 668364349 950953821 968778514 960873194 992444918 692708840 711231635 964391544 978803054 687980584 777810645 532648836 983733866 601624969 779332606 187333649 366769738 825663399 958925574 57411120 961850980 233026843 313906370 497582997 594303778 84635078 328795453 711715774 915609824 542462905 552721911 375308059 768905151 679627409 689971340 727362652 868887468 879130134 879272529 106574582 845277983 658013097 988600004 863596487 934353405 639109340 686010997 290184196 560098606 430918522 992880434 477806748 689136772 775628612 928742920 955790420 977050161 795019633 798555313 37410817 64246315 221206758 260361569 10665685 276683930 881120883 930018212 128160219 998237073 432181742 934700876 881758119 972807291 598919603 728138524 953553907 977597674 931753414 987306816 568709578 932115577 335733655 692530295 954664123 982128086 803713102 984240303 536418855 762357739 40570588 476733633 717303541 794104704 966000198 976961213 712915131 920249755 586877939 873782368 827237101 879748171 458789924 976112146 668108260 731875447 764201286 982666121 383921303 520279397 378062734 498373795 93836273 536247593 59883494 838116629 413522259 673016311 932817065 967198657 593767871 969232231 479884288 735957671 634863228 725677403 257511946 854306202 133521942 203468980 215242308 437593065 936661357 940083169 719496707 784541941 383595955 573762143 332553537 807700851 111307123 592931307 601605879 985143991 392455797 901360520 976679846 985865348 732335383 860016030 195270456 518065011 518723566 988139589 784417332 991161795 437819535 787264763 730750664 798987100 583031799 586044319 111939782 536502839 651566736 941631752 552798476 554358502 227089679 449613023 28469667 140847337 278179667 877164048 990257982 993793381 692155562 996325158 908251290 990066391 355423826 511849873 965513989 975256164 910538275 968344310 693322109 815996691 407273266 494977554 270565319 921698355 723122614 802373061 983887102 993097749 992517505 993196650 342129949 572299158 667603290 683940967 878333384 930033344 180009114 606064133 814879956 911030628 511518895 611070090 291212197 810467379 203609987 991037146 44744979 391759870 279649752 426690741 977184612 996796813 448940427 566563696 211512444 262860749 188389202 969163707 907481818 950058902 654820406 688017551 728681668 916635559 767635303 991187920 263949752 423351683 19096860 194753632 521203029 994089064 454142055 842278211 977970269 981949644 381174933 399996584 694446554 788773563 505989887 809035393 620164487 673806903 974322963 990730280 452085834 704378824 194239081 343783091 789041311 809164114 393422198 922285983 737636668 916494674 558112498 822689144 782515179 987714897 881456556 957706714 669415401 867932754 323587188 550288486 133133677 335737610 275466554 668956593 110378921 606993790 15967301 363258159 688589453 886223146 733157688 836438436 518653305 953122470 396063337 750372072 692143480 802394865 743303110 939350946 722771265 844558202 165688831 355186057 205060808 263706198 437302335 554877377 350228802 567293333 437158983 765509713 7541728 259084378 167248745 205903294 246482340 764292446 420074304 588344968 452016238 558847725 672821825 708956627 898994259 907465909 100103512 301681766 455096728 698312895 275905811 634716751 51264859 460250544 329264607 927981402 495223573 750863638 761399886 771724129 540597428 833190234 70905026 521125355 753933170 968459873 603977278 774522464 549130607 771954842 234065868 468868964 206059438 702799729 273894523 429780760 591334136 788012407 652689036 780318923 262316130 376077060 755082890 842350680 424829048 558976818 61515687 223971676 702914727 946057410 402809585 794860218 44721491 580729391 21700912 741326914 638338978 727771403 395369026 921135971 885806772 975040642 611523125 683526183 199831710 525078796 421759239 885080457 782589681 872302975 737181246 791988671 854434853 913462282 400497204 572815616 807436209 888470751 332797654 962195942 651338403 990809668 17654522 267161863 947956381 959643938 180192101 517486061 256945980 680953462 766573735 949130132 339165083 409591100 754086058 868685370 571290182 576075330 332801677 879620501 579353236 615542137 305841055 411293752 912449687 939899525 763670381 953781981 715703635 987336782 576195467 791211578 624006047 964217279 454654159 777323896 122406828 188980374 124582213 723489591 39864461 533057253 938245466 956702026 368451705 704699462 406222275 943202402 106517498 357676114 588262923 589589326 159209589 416418183 501176943 798438697 280860785 408477751 492648516 972144805 666540261 815959769 753262828 804087301 587889992 991084266 160805855 534874293 276436052 748440727 6492940 922181676 499830924 950313354 478532797 611665958 793843150 995596725 25952324 209756505 32991980 42859604 744561314 784148860 395069626 626522113 751173737 867037078 194483420 936439975 669488641 841604377 617976676 818377646 363282498 613339677 795115186 860602794 909926699 989969096 917173481 978514174 755845319 916655883 920072512 946465478 608292803 916561353 961982341 984271500 676049768 681824521 323853699 567261194 119532423 941096938 732098772 892582849 199538450 809381824 546589038 858581798 15246654 735992592 955811644 970822929 785791591 971801191 377416861 844611713 943898157 988368881 752252401 831511237 120869406 411201264 524573398 741177091 785545857 837737949 307910872 917100907 315729558 374997375 929123162 981609613 770778646 923223549 38850772 315196243 303820853 442235220 510840171 713623660 950022189 966062531 363959290 877238370 890801035 972602598 318279744 435313710 555074831 666107249 476863642 724696626 876368597 962313796 200550996 999171287 723006475 754533891 845400318 992993427 509049258 854264449 335916962 520985044 126710901 973777835 576979948 995278587 98985243 863747192 971482810 974001334 659855535 986633673 487005313 843685487 713887361 841477448 53647455 196696167 346197783 642197283 334659283 945526503 29754135 610281449 689453115 904613958 176948034 804475197 529005079 969935755 760968233 811623372 641657665 892067979 533061664 629725714 595217116 605628189 493351595 694463911 199386038 702604707 622300332 628727774 252029604 970595858 985055886 993012128 535811687 536498132 515758994 679086417 424596569 860801241 946248049 946387338 10598201 992980329 636508042 843610882 45456065 325165959 482510136 728219007 170930780 708816699 763022977 871334720 956879689 991290667 735925211 837248084 840612851 947477096 198173374 708293519 879643233 970866936 101713378 488077213 650942631 946770563 401473402 519767226 689962365 965998236 923363072 951361389 109233054 942335821 568724123 820691788 203888396 653315039 501489190 944468019 413262245 969138140 423198047 731530059 694120283 956427598 645523938 856158269 932896896 963044536 818492934 946246217 219686429 941604801 556411786 796972166 315896457 421417078 777583525 832221287 562532949 991373015 228941514 931544583 141335590 579658691 424308523 943163334 388101104 600556334 660521873 719354426 554504830 813063433 53873112 454455944 867914392 967142032 649857720 698260531 792321232 879517404 346996615 931831906 952594730 989095693 574648578 841948149 826498979 966886662 941990119 989640684 903749063 949440032 359009033 766507663 716907765 951561374 690183129 729880377 608674270 783102854 218602825 826185723 327959822 927168807 453550526 608234052 534268959 562536283 174888253 931961153 42947912 625392655 95380490 935542552 533357558 779269213 186234476 410175275 884180179 976225982 964839496 973219851 385006394 423831543 683166213 986369628 361060195 802281010 190666495 295198905 217809220 689660764 89354550 264995416 841615858 969638856 70479558 305516710 531331647 667936148 750574664 894365698 105163572 553689725 262825037 725014173 375047905 835254006 114062995 320383218 182542647 935886886 312320053 921296937 646421296 748945475 458044837 884177982 629095981 742719828 78559548 801072992 488094806 765401824 220276561 362542329 714352129 906250887 664954406 943292749 970004567 995618990 226393312 992431129 77238579 447589387 83005192 134077007 441062328 457488171 565328020 987059185 270552601 637249868 689943358 996958821 61112220 739243075 614461609 672170446 356118912 756842533 867253033 902460224 970206478 984586255 467458791 989756818 64335023 111050969 527786107 643636635 451314839 832932768 501922815 790966027 136896686 823491511 332849153 676108800 193921134 377244539 884269192 912976940 403913880 835433853 916644282 943550947 115174867 996099620 257126213 727065958 926232948 989132531 92751382 561317409 402129243 505371497 914045632 988121065 630787756 641729498 586264464 858955359 580617845 966917012 828545079 872953295 207994415 300520561 575220441 994795890 456018941 489207475 550728044 580398009 376012176 933186751 533561631 808669616 814867765 827248257 231470521 285943511 602520484 816142710 63108383 574382968 372713320 815720206 732738948 920330628 645797051 877747548 81772114 613892432 684132445 689243891 358405642 749877045 803099487 968756336 149663955 648434274 193741758 374748811 990718442 998469392 563472058 903895829 623784325 759904090 356756952 694527372 586673200 648402894 717335485 825306032 913373127 968705194 722564620 749709468 141144732 240645067 37543072 76047106 273623649 969042552 269438305 529344005 652057310 920781230 727658089 861879273 653591159 751323416 926288947 927829661 627098904 665805803 458411657 982743413 547519720 851963002 652188518 997653749 302485451 952820810 923405532 935639743 43689048 896941543 260089960 772195297 920001551 979829462 604667073 610048677 772298732 836496425 947036030 954931223 427458604 573690201 800664147 908430054 982088727 994643002 148711195 324066957 775434962 934645877 701969746 824294467 580949564 966129192 207974862 973820194 524132750 543575053 150725448 203425314 926258777 987998283 534304003 813608879 215681781 322753215 365752519 436741680 57750372 843004350 47660853 740447680 940813367 965973973 654840895 986608721 362953043 952785792 777394052 979475022 957209222 997654547 766012083 937633465 367839962 439933706 170862850 623403673 112382648 831618879 704062764 863894592 552779571 749641517 76652355 466975485 635131080 894421761 369109062 430486581 713453874 801257067 456770194 670449482 967972038 972260740 454928905 916755330 723396430 746506952 679623888 743073031 122403724 539860686 161213673 837417946 561130279 917497891 285957103 339565863 97812129 810313145 204650411 534448690 834495332 928265929 602286842 739985242 53866718 877359607 409798016 920217396 133908542 845151387 431310985 857799445 187950811 420589825 277798308 905360192 432707570 656738165 595567711 787337145 483360837 512263816 553169875 908199790 848674557 934603810 428723489 790187117 45274774 944350598 294609519 808783198 389564993 434950695 815049401 925741319 798273653 869122581 263072065 881621910 845644647 857843145 570824447 795830073 137268136 291489079 910235960 938353662 901278662 985007819 136952399 548013622 380191946 986797109 951907310 976490770 582006626 710174839 831426966 926397361 498355929 956567365 458477012 668784680 844860746 845903637 38628276 538588294 422641253 738049061 177064329 625268641 156863324 327827580 895916185 944483777 818410827 903496305 554777523 700013687 206065647 459553312 750034427 818666414 787975482 863173236 623167956 679467935 39854763 387607147 339569192 490466971 815710374 892336428 218653069 564110473 10248135 905939379 604796317 673843168 591648904 934248172 846603962 902673123 948579225 965878698 317173362 741702377 527172421 957470765 658369377 735144084 738775638 882388259 146469623 648656264 691990068 781540699 444532643 678816392 375507710 909478992 614792050 884203309 640159100 822246766 78335626 945216390 982108222 982121087 238657658 968857985 621391908 846077511 49286328 428140188 997526760 998005944 777821061 795916081 993197302 994452342 910549508 989126542 20646465 585724483 579321975 583447684 125744727 564866687 345519969 374702595 824204024 985731147 460928560 869715208 216332412 463397869 860420205 885370265 88563301 673596426 697310570 954979054 96712100 573750179 559989472 566490364 15188761 994435974 314719959 735306618 913940817 966214985 287108423 680016220 982607776 994427180 461866377 540707618 191558383 605940666 775526912 823895427 979412469 980502405 377879514 609788713 944630110 979499054 608792688 677473854 73953042 520053835 25143049 637313583 70213636 102399604 99952655 172622941 998903259 998939030 306914483 634867320 408796228 584306857 495408248 767984914 181150677 216851913 10115313 398305010 120669780 356651654 259300117 903984654 879736011 950859144 878181759 938822124 668461011 977710437 923922581 954279304 265515050 682560961 80680262 891992724 403132918 995558271 576002774 626832304 939279100 958534186 724105425 761179159 546865817 958992521 797192944 956087402 951806931 963130218 970786942 980605152 573477628 708523923 856367018 883581025 570381169 757815582 723584961 954542717 150357597 436182337 351649164 611017757 132570378 305464135 794694725 942978745 78074932 936843255 666404371 787669924 742445541 871870911 369449289 991243072 348177483 501055394 370996871 463867473 901818791 971872152 158379847 422054184 948348121 989734224 475155106 844045542 872103654 902383584 933851294 990267259 396061221 513054171 917811826 930487270 579579248 691000098 283744965 443489101 926073326 971064198 659463698 833196203 597489062 620529105 346194217 785058622 764305937 896464218 789282423 792321257 585859814 607669625 841475059 890452592 736646027 812545842 391533690 504660969 289911837 540652199 602877457 966493916 861851009 953639047 133739341 819728269 354656285 809628541 52172467 639223544 373171461 874845371 686827236 996840765 185699135 536468366 333611205 826780764 723726257 899519565 201618377 741780657 844289607 963368805 141437667 994764443 412951615 621440456 117980203 503015107 398030742 626687472 991591048 997882787 838641875 903290818 464663109 770116275 912585339 982951606 957996311 967087070 178126507 705836752 619756942 865200801 466553918 474802719 87792713 468216488 649815043 886538738 127571056 320217211 110366214 965448526 96374961 753436632 340346264 806473092 583242772 994237033 807498318 906906458 336150302 347632504 145592528 224853733 926868232 979154596 382047378 466350765 228992323 685969526 463729053 940114841 623528754 649017455 518354820 961596463 33924421 655669939 111291213 433632625 606400937 885925116 815469333 883259505 542518993 762184197 366721101 496719486 904705034 980670717 575426379 805057937 261501855 732071091 895868892 995459963 376560925 834080962 78869827 256527167 812977767 956390298 29872641 724836412 914186808 993684718 511258573 539949769 348267038 509618990 750218568 809558654 126231689 813025158 855102528 933323449 463454967 631230843 618097827 764505405 219641003 928706891 717024841 915498838 614124180 892961150 883279686 957962010 946655660 978817511 669057622 967062770 743727436 877399677 249203105 982550432 98218831 407616069 561602566 876599035 75764624 390789489 987680905 988084417 219289661 351368337 944665667 967746792 859676887 983000545 378894859 857022710 786173989 998033047 283312913 336166702 332071088 566244884 575242585 763595606 584414623 981285698 211346908 566206171 622127251 950662761 751260580 804947360 769478188 932787575 982257329 998635543 168854160 282735042 359809151 725900719 754728745 866818836 360992650 979884278 240755387 841151141 247200226 544160221 980140745 993766954 607652252 977916582 381043165 963360168 374388396 758180449 774955412 782818492 97088830 268523805 935795377 977738159 974844038 990115308 569098781 788443039 127499029 800501033 551178033 782185633 436765107 458107676 854174733 857169796 988734658 997923416 929928241 970443725 250296658 580466369 878945108 948958773 187935812 257816024 426418358 827739054 349947363 572384186 270042663 596618790 415852785 962323429 557532291 610053192 119474667 833190103 614359373 795196034 845346838 994995779 897383834 908798812 107132665 404067454 154609999 516734141 698351264 971986771 604879115 950321275 24044602 118856406 697145684 966768973 307860773 874969824 453515276 659499226 633103913 727652141 184371240 249240551 372438468 685355346 376213735 668358260 593855035 861884226 196023202 607732461 224009525 440278479 300402948 455251554 637956454 927479729 929021492 957600466 315039381 566377680 592854717 716832071 750903557 931949310 906586431 952205306 971670776 975970694 230164873 990521034 791198419 935929318 909796976 940150842 229982399 363790362 221990 4395436 105093405 540844316 909539404 992982626 923861942 957503847 679807923 821286228 947447548 976096904 246394191 269340088 168349365 884844116 835173865 851202617 344132109 839607247 484724786 628007524 306857704 535855607 542700593 774225026 121278291 795006559 783186135 996308678 946846720 957436761 689643532 714882048 773023767 843544440 428654952 468448418 616689439 645036553 341985836 542865019 689067436 758034814 520925464 658008857 477395317 744701581 626749698 963713642 476316797 886069743 698967237 805751157 619886460 968771189 991268726 996890504 29500147 134789581 92882343 462177186 186043537 932596897 575831224 594318833 865886308 975570465 587958713 781727815 369025248 536903754 687654685 782372378 289476152 696632530 202111805 998273578 511145205 997266143 51501428 779258349 229249034 969290895 908216625 913767770 420549031 438159920 206641185 716010280 833761253 912394954 673608561 852651073 558751076 993633851 609554680 795461559 974961494 996072716 692222840 802811195 739852674 996932520 892139842 946937454 458339374 607233875 900101109 923849177 860702866 969631658 983110130 992967851 842426692 998950122 950364601 960640517 477043622 639452307 842320856 964853524 21166197 679594387 694182838 840059613 917406337 922550501 417887414 724316788 647487323 903684107 768380580 985112188 847324591 948785169 47786906 203135316 572697199 974403506 711631819 905321297 71213057 876452516 123693027 354521442 864854490 889005179 491531228 757723815 439120534 651149776 632844141 811141062 318912189 330299536 624573214 873954502 749999733 864402295 212264129 722571794 806436127 991148646 879231944 994328510 81107432 932427860 687741088 928496335 41780615 911998937 55149384 950028132 634437951 987699790 832521292 952036502 378366656 752992230 589255293 807616627 816851285 989637342 793621247 954524109 446807146 816298684 307317243 964207887 644613573 909022909 118192871 694897271 693862593 860447276 382081730 519218596 75389300 421925058 57481921 964038982 615187791 671833398 696021291 945596688 877772176 943157482 964297626 971429368 257352741 987991653 560353354 794892760 124193151 548715957 181657082 555043510 7387896 546730020 369976885 430245469 640508290 696718538 243703947 657377057 71972218 563279427 758703420 971224517 594165850 973327916 649995342 807398060 917751981 964408832 23266207 692422672 285993538 794138020 349498142 919189056 103576433 156700128 313061718 934344686 470933878 583827039 520937816 992384791 52327487 821206638 579427685 930485627 237604970 797747478 585428351 977065546 456456885 521905296 766695138 887746940 153397431 638645852 101071169 805881568 665432857 744414741 825592342 831155758 870638684 965404116 481051837 700881018 316617674 427663470 98314478 170535463 390240111 642550123 473070619 912941904 833969867 860815636 426034979 921992034 211454784 542379083 69192954 147145888 377003489 737268953 334213615 757135349 474027051 684602514 262922082 821079167 97235631 129925614 401204968 702203055 789622242 806619603 332440248 899160558 588459071 844468013 397295382 665851362 469477808 624612670 746101785 852973713 51029965 109773545 855171281 872804075 283877537 414016007 768633904 881627306 430571772 547907901 480224109 713731477 452955475 480549712 716961263 987640069 540308980 707538871 849389604 870853051 288022640 912175237 920757817 992313992 937655907 952081029 423234118 920888589 466153598 875228446 802314426 983372950 228648088 683423423 142556109 188910726 978821652 997996660 260374821 916719990 774986727 911814291 830251933 845474410 88475460 599482271 492356772 665317220 617226256 842822939 483923535 563273853 12688861 657556099 959780278 964880499 542607942 584269304 424642356 636847339 933574751 957914440 848859805 878688289 125815372 375225096 470717076 812066450 762096546 887508831 271330150 360223166 115740101 141039487 594771633 746942953 620363798 804362094 137063361 474763694 749597235 937281261 747250203 789707188 829634293 976195050 934872650 972998262 845307157 882061840 582460425 911323160 426922312 692113990 185423007 313293906 782426493 903984862 256414697 721386621 188288487 277683723 700145978 761258271 62269700 629054560 353394829 932316692 480040837 694800830 26105635 819452596 847474973 940500703 225619867 943402979 348071117 773464475 217398868 249634018 462588511 527586923 431258141 700478628 654740121 665543205 995088784 995935740 771887488 896161498 375587138 510768526 364226221 782141425 375897983 779171767 638412495 719008126 3414468 760755627 773965422 847982817 733166943 759548537 476370450 919104210 751789017 853129315 745142824 767687952 514205691 914617167 474852734 900572021 54136772 896482209 721228007 863870407 69390502 965574837 634771002 754081007 691533104 756973811 849142011 962684314 739933462 956285448 397125769 640494440 599615683 697829934 10670515 821681876 360449121 419056519 973692460 974402630 278018897 526145362 549742134 653614895 997497771 998182960 981833054 984389115 479850751 674883461 630161440 751114811 353874839 688045810 278449377 940971860 515468236 669657463 417216134 476225571 885538776 961706898 726540868 986162168 468358005 697961664 625180342 659338635 409184698 746290318 435281581 527671319 584848209 772100343 847306734 897496790 48578130 799372024 953452084 990918380 164404295 351938154 267340668 763171194 380254561 549095430 88919696 406461399 661539619 710013335 124397987 518874879 844978026 973674595 596805621 668267929 186596181 545353767 226765729 526286099 609527518 844994963 433848306 887109460 820877561 909267219 625405644 716424877 872987531 897194330 706351096 934418372 386201717 621102373 76514321 493629599 872510548 920557872 978680049 986641961 581078919 803511291 12821346 698217525 39597087 434477848 783335934 943021167 509984114 684033558 391250842 647910323 147558569 810199661 363834527 539030306 714698403 775869654 651956161 926220640 733802484 758302129 236582290 341329824 821056190 962605090 196181537 371469121 142968397 723698370 101948568 286556692 136022265 893888781 524357959 738294626 437725484 794154192 35461657 600483898 941529504 978406317 942298631 977782144 656947512 879800685 580832110 956590255 865846198 989545647 413474933 892841502 701746162 965569931 719628187 834958694 699316093 837378765 732935965 859052594 614140430 688165127 939461359 962646217 389349537 517950744 254497908 842402217 460050455 708382078 973599853 990909692 317891344 350606555 183420176 632401341 515369632 628479789 843756993 981473499 212714257 367758518 198324346 599098251 194525619 951788581 634118502 717109424 638090040 980264099 151711200 484393689 286293059 616328075 834391689 965212604 709040516 805302813 25774355 106197843 87965802 662873078 262516827 421431075 558916135 716929739 14396758 842052920 227586976 228815892 963366821 988753513 798003353 926316311 561015868 928595096 698582354 770178034 519369611 642217796 15411914 988419730 34746806 385425370 541041084 947694656 200658503 952774405 942246892 951181869 406689866 462397163 68415507 663086680 274152324 289619488 515115010 969962929 366352492 792173579 192837005 667674812 341290767 341768685 757240196 869080694 839290986 996853832 27048407 246968397 976108166 990427018 722925843 787759215 983549160 983646668 977596565 984183577 506714117 542281412 850586616 865176310 828896024 941088212 509074597 675190127 488514165 832165006 485083104 613907558 416264022 971464621 198910231 241911561 851352329 896256300 665503024 734452100 884918901 904749240 429802122 710007154 666804862 812878030 308280770 526840672 624482743 740842719 387573088 400196779 725955637 867963326 357670849 503578213 378147795 529738965 275871810 331828699 300659793 843273365 677514478 798685173 214788831 271636099 518439497 986974389 690162797 930074080 310671620 782614993 252514121 300940016 183901385 863529868 282393728 456249219 874111481 971377930 322973037 453464412 221136606 530478526 681275891 889541621 885241147 948912926 480973545 998317863 674780577 831950364 362863852 626985694 177000434 481682935 567011106 759092340 411391437 702783228 719665556 903993971 744694248 820688994 640651733 702601193 545577010 923333329 360960656 580543639 233316309 873434042 700418754 974939163 11542917 797078623 327396859 634251074 552441420 683124314 908932957 953095666 431907793 540260144 31497102 724962305 716387107 758877878 119333627 349714627 544947848 659879200 794141898 978695022 288287888 839583060 601239078 626224284 697439950 782729424 526896752 917971946 613532265 775824706 950839255 953327215 682615627 982004309 500842662 619834735 909915673 997838536 31511854 335363883 667368298 717672298 861603284 995057140 896115379 902366129 797184880 833631581 681075116 865493907 286661098 686510987 257978764 282698001 691269855 733873651 7448486 674060794 922442172 963378495 262823036 945079404 385064887 558219348 916272639 975020471 406437463 412574979 248269236 563161144 339092791 588816336 854567996 871845273 939885251 960608318 261151760 858793851 995951339 998564672 359127128 662232902 625383927 748415837 375195193 390996082 206440943 613855111 624511927 803315520 777028657 931542029 492221345 889578977 251549946 897779164 195320352 669370557 524541347 562927386 586115752 600214686 822384490 987868747 336241101 748708692 53839539 662985014 350570811 621559314 238326297 650401209 694200655 917437367 606972034 880362351 16576219 574171243 133947587 466867337 659749734 806196267 216806368 737132527 681627630 848711433 254664211 416026055 755766220 912527179 739254556 770791868 514909870 950059274 582944314 909042104 840694166 999043685 871682526 931667651 947151330 983621876 275566101 368175440 781979286 858162811 180462103 429092788 234635784 260795663 470656441 508450357 436453829 445704602 470416577 682107161 49251949 498250167 470578342 596711318 329762075 520454575 412466932 677601331 862697163 920863228 514311201 542126132 521578402 954179873 864539226 986985978 106398673 518953241 914341005 982275965 738797527 793619448 396854697 602007152 917757668 959508567 730733815 884337199 828938536 982861955 357055778 480950961 567525411 904413406 142515752 749294225 529815768 990276250 626432397 705891823 953587247 978479676 287940078 803868512 738340038 990665978 118115422 315943897 834054785 884904454 769969254 871745608 873095879 985961526 271530642 746068682 505974554 554189724 504251564 811631543 25060866 467684494 521171913 659344067 696903427 925270651 72858522 612306695 694308931 898582615 663909957 793412818 953564774 996432554 887458305 905034706 861277770 862420751 859250420 887326552 570379788 634958523 342261694 934698655 892116832 974457273 158829387 507585189 840959519 948530103 439276109 711696705 624666535 666344466 736731620 804144443 728806666 951064545 47603205 393497777 746827972 854935062 982004666 984264602 146175597 786648453 419389381 604578912 994068125 998554376 781452873 970026091 482186302 916373258 965478283 981444318 716402573 870633132 278927416 861327222 251624201 383473633 709248716 895645291 973869755 975126613 710435181 862431176 713653495 925455736 613006756 860840219 138593813 739691774 839105040 868046458 762426221 853163659 312077705 409689122 768370621 794817682 356344455 602323735 873429420 968365152 655972682 909506887 43513292 246922912 735596760 993088939 795578579 870070536 649514425 836171785 700061168 855507973 709698593 960191695 955147362 986980694 763246626 913035424 752127595 910463429 83329840 757176593 231966472 735605363 549559210 562668475 638146741 781610434 594492299 637616930 842750552 947397097 802165567 898824737 924233711 924929805 358786233 505231831 689819340 929325347 637269719 804834856 422421735 912401004 396333330 408368261 14256254 866059891 520506513 750766567 758145446 916935897 678034170 770879581 167482200 614979771 909177972 993084541 27516668 40187741 703653374 736337642 391778470 692356372 559803766 854133287 153645504 807977298 695873457 969057047 631151552 965331831 777833908 882764938 141549841 345574022 655200437 775353813 223462244 967316129 639244552 827666288 923637097 958340770 740865889 897412381 414713203 683518480 321544831 518901201 256282905 650866873 633872841 730830970 465056626 509496475 740108451 913347365 20588880 313874243 753560060 924854675 985183738 994639143 706334089 879130836 723191438 724196749 223131231 268951814 331216498 432694790 342038300 863887296 912802548 997289114 160341883 273173017 484372686 682662540 145885103 364874960 93609106 955747747 317181298 386370453 624151831 958835930 373424210 521503996 195604072 256834281 102161416 962701734 604069723 640357636 752802622 824299888 567680621 648859122 43865362 743811179 258878898 746631958 847304323 930923675 972027596 999344440 276048999 897687179 525334620 849563528 446106066 741835483 823704275 924176308 215407106 687730127 767268113 851331742 384412191 612304361 209597008 771301577 918234391 973500818 491931039 731691527 455548376 706300674 540674469 946783736 92673732 696730467 380405869 582906601 280478563 763422801 619960442 808124695 175695483 477550242 940875302 996585347 123903102 204923313 956045489 981086413 623961824 908836338 876089487 908149720 44073194 729408920 364418007 799471671 569828365 736301164 502801784 524829357 360070537 544649942 481623727 769838152 456882375 767265274 331442465 639982927 474862807 906943355 611941119 889369038 568505094 872990127 534648136 756696278 157599366 389716160 244165313 857248379 547672535 575994702 910540625 968680357 677695313 691856675 109850032 737831700 564036643 578802911 498086173 812678909 179610287 345391967 545795061 764290317 109195411 120168063 632421573 844962228 717449906 960226860 213921259 851503062 311978350 914795554 176862402 985540283 26322517 183476168 911537560 949058021 752171790 950196688 516845579 988086575 47790285 459696722 779181305 843161108 713623407 733723536 306576460 670268861 654304689 975854543 379796705 914337206 61461292 865745353 337446873 396968276 154180390 692466244 499933202 522349245 318841891 920790902 148174295 224780500 57564476 156238991 236156245 330695257 764115373 980116323 709811269 825869155 231103323 876661559 304206430 899751030 94307259 423505150 40785504 469021305 709341866 852558404 327758276 464584475 737133905 852201381 130156005 513700007 399562193 633562654 512206752 830117336 36524279 690974132 571455329 920885885 799046723 935610503 558019453 770261268 296313415 886490139 401889198 433067286 393266935 760640592 759431482 762214991 313327400 406240824 260468175 466612894 4251134 234534667 196193906 550288744 686415882 912669719 525062664 671857257 202196933 926992391 767669968 908514837 212742149 260409682 316148887 824353792 490184053 785991766 626492005 830013084 341799294 718363295 865848708 993855938 383149632 858419210 74766446 322735677 890293371 895368866 936137776 964155133 259924199 603550987 768300535 829578117 46072893 203782579 160721847 400513661 101009930 988046004 704804142 756125186 600695297 882394636 284580046 681207204 331229174 928430095 21821304 864943633 144626513 229203507 474152834 923119357 263024808 402140615 274524101 939331619 935699506 998516313 180407943 839127020 883550661 979371428 333180071 820892738 675806918 718191687 938200320 960658641 485251676 822277498 365430813 826274536 373957195 617668348 887486454 988159955 268669434 853090060 899562053 940401754 863339566 921203799 148456168 897284727 736389342 967355476 754690082 873715730 918245568 945558094 788645117 831098402 114136186 570972877 594033150 932740393 321170518 417262282 584458135 867574791 386292907 673352790 82381259 677012702 479138239 811594542 233903715 945938639 853323596 898047511 38527394 362707739 842127269 935469126 956408478 996246342 762426765 846073421 413452935 966539734 426402709 645542180 901306912 959350330 14645493 587443839 143578980 300673460 466231118 733902904 436389779 846243298 141910392 358916147 229945119 604826440 725805621 934068191 608716862 656100929 144546600 252477778 500440030 509606767 114900089 497988658 716782871 858992388 833071769 989768397 799884277 929242666 481238184 835131511 115088295 380398451 229055634 481485882 531520406 535316813 4095829 885912133 727563925 893918298 786595741 949547390 818106691 844211022 663683586 664167951 726847700 900522535 816649747 888978675 157259001 275309314 933591136 963469678 247000921 715480417 543311591 820269759 449316696 799523457 317744491 819927585 717248613 843694378 784150694 870778069 76647864 421877822 499185076 921621045 575448013 936561220 153103353 319287093 698105587 971864784 857769311 870211284 409699154 531034247 198008283 561869033 423597960 934077959 107150080 799935295 674331992 841949154 760459015 856254856 62712184 873484956 569357038 756055408 882976564 986613441 275531623 797755679 597502224 900180602 322807153 950872036 566454563 884061136 857953637 933310253 843411628 914263144 87404433 832251872 571407918 580122436 946616270 983935213 49409334 720501167 575421272 676065337 593452802 951445378 517432691 728614355 311664823 399315044 446352485 705758816 873340047 994767366 947632823 976468079 500395823 938735629 464094620 875789774 86999613 351422304 370139263 922258161 915041224 951594343 342592949 510923769 351380285 768650189 446267648 556942979 557071741 900779697 263499385 269094195 472695792 805607297 662213767 908993010 546694843 810037303 922712906 930343377 436934904 616458662 259632333 836408022 552151702 821225071 15233859 728993370 122901895 169941651 414778238 564960924 131569175 873880173 377100495 604029748 776088906 819836769 986199911 993980947 759407060 841415311 394732217 486932658 533936779 558948822 638140765 797687010 810630003 976413081 288746941 725904832 107410709 723015982 374741197 819115316 983085414 990664608 93746219 462128997 667987259 727957965 264360902 440715669 984222589 987384213 200374985 821324469 74039445 322373717 609112992 986057533 747404971 984501281 59134886 559302428 539384973 864709359 485127136 938138930 851032861 991356028 614811923 620733873 998426967 998947886 13164099 547949812 358077698 463413843 276942632 529908085 146186212 925844540 931286182 998935014 441625974 901760623 961316765 974369390 696079056 955457015 858176130 873262063 523492583 943227058 457033110 559030300 46147536 637958836 784814033 904629555 672845303 857761803 994219231 999323398 406663691 408271738 438330946 663701799 495413055 791830201 478298380 977323769 892225025 927045506 380474138 562116811 664577753 859153822 608773604 767663211 509892557 658094725 896363221 899528940 374598668 553037421 117864333 399336012 301218016 774238226 411954732 415361831 203489491 355881155 374299296 812026849 210213944 521435441 568087488 833976009 399176423 509124734 98782877 537451790 621684930 776929195 150779249 987847704 375656030 443868076 372282080 889246338 679827929 937832344 46764533 105083788 358302331 416678560 947788583 995659675 948869009 987060729 33091517 913591077 603664408 657756661 667055300 853581095 757952807 812942841 411073331 671170282 674080901 741259326 959412644 977974985 854767022 871596327 441232073 922140670 48170376 125287943 917187203 931377182 56407180 126267578 70836794 749641406 741954005 820010897 225647170 572368080 884342742 911947255 82679949 292855463 923302150 929184111 968719820 994402618 540553114 904378698 655770084 804982344 747488576 992891615 675559643 904311414 756296197 774645436 823882113 979744273 938943116 997871745 451134747 564008534 749924444 944297650 796354144 957358104 877093991 913449837 663779739 899453507 997131275 998466010 624671840 841112707 496208434 894410485 793385375 906655661 389066294 412605635 617867184 676617741 87370568 751596083 205745531 297566199 917817150 951137982 832118348 994934634 419655056 899232810 118775570 193620016 472578744 891365276 376473471 783173872 625315838 696177505 952185723 981501681 613708560 666425663 955793204 997613115 23736835 485987577 797918151 800541880 803090145 972355251 152909617 641179573 477765488 994063732 584054934 740731603 891755582 998397852 966227256 966459493 626953071 957567751 567349750 917094092 297182335 888809656 745853721 759827169 518771300 736206910 999154709 999205585 629489960 817611459 541576563 883797306 391947014 565507125 97646687 886760350 467216722 953357943 8419108 363862127 538725353 792019412 572681201 835848293 264067271 466757567 190238762 566288445 679823937 952478644 549257058 928412201 972946273 987064158 531749711 907472940 782472645 878041957 703197204 853003269 828757095 830444376 344303064 459988016 314982893 543297886 892094850 925656510 432044386 866590666 576206891 670659100 521483214 824632229 999110784 999327944 251950800 671002408 34840162 851558138 769136023 925223941 633555275 647879685 360857190 384282153 290130854 900657568 600813939 718674360 275854778 782652828 432447435 771063025 179177222 727392102 520518387 705804069 838266467 987909265 412394501 794000406 946354175 964581634 114596070 543413599 195016624 213239738 968005982 996350217 80893248 775773052 66117138 366353104 865226205 997482972 597447260 925273090 930870110 933150543 652643920 902651955 206778222 946626148 963593609 987551248 439807893 634109711 345477548 968535354 296665419 695786758 965627817 984095779 143882035 428253698 471184356 736749178 624838898 717819309 483043882 658371442 627689226 733758205 973382996 988185382 802124097 853308759 577633748 866952470 268636954 434489000 844249719 888115099 68602806 437053856 992911551 998066488 995091893 996549832 837746871 927126761 456436747 496245496 125203841 416489694 876487407 896412338 850112179 986511444 567915614 991243218 977981276 980090388 443851168 727385578 184385687 392560971 834196996 926518313 205446300 248020095 772743095 908122023 554153914 809454473 628780921 629373456 293261367 490415718 316114794 375437619 237820416 983024194 971977497 984604529 731794692 962315861 842396277 997097278 916015327 968651664 645736781 841973570 52530449 343599996 123591405 733605511 838678982 886476483 137848673 443717002 713639915 982407928 182545966 688063342 168040272 606260822 717706903 810351647 820493694 918328962 679539587 765898905 344282056 358726750 874994763 880600270 340634200 685537849 383154686 859684510 48400112 300956899 609127465 810919517 730568429 773313861 37529200 499767053 640421714 941738876 581247171 585484788 517031985 766829055 352186611 947812199 641696725 646114579 568339880 909208462 527633135 777137129 755768340 905393990 522683493 584068250 617105880 688974007 300503785 332198672 678706536 959599283 908575644 927132439 870134385 893093504 287228858 930187500 644167896 807939278 541520305 985246887 309296222 403952658 291816753 552597787 76207881 537145049 557000910 625225500 878121754 899387360 347238854 767132862 640213242 944676999 650864943 728013388 854406856 874429014 14632421 623682318 799783683 808249019 668194701 843497584 280245778 943585139 853424248 907769113 200701824 447409523 437894772 714087841 921549168 948802617 852420546 899938119 367773737 498038629 753579645 769563325 573773778 858394709 396628383 770312737 95824484 172250243 374362383 998991593 552511115 985191806 972326602 986579671 373205077 738978192 165712761 464710320 41783660 444978200 903982301 956886683 35355337 249869079 944323676 951418615 6821950 100756520 682686558 893060250 280318533 671453930 623118772 739561930 272437091 460436927 925229120 984868673 887768696 959660018 191477374 567430122 103764101 371533261 327364689 701000095 429367733 643574566 653197623 763668752 490101710 753239991 354337884 917295499 211028248 864688811 282000437 459867262 733317919 783351648 612760022 773282138 976783278 998692284 879545678 932317507 165737177 739530864 152098761 194698074 836675276 845735990 478551598 676933139 865184900 949504389 834796242 974549734 80219203 319580476 362029723 911393384 468304932 515462760 784280234 930590240 417197189 420139025 409065026 744080612 273500554 961847705 672900538 887092562 675082027 801163572 694543069 817160517 168561951 361197533 24090439 57896737 575718486 903078959 970784748 984928006 679224445 889690647 668742188 953525105 88754804 913637556 564053371 695699490 800588870 878748817 638133180 913115566 388468373 639380227 168664204 911796094 161035260 184382111 461900091 878260348 452951414 454132899 366415362 435191866 390883244 652220486 124226194 919249849 105442224 231853168 614880193 673940657 928637588 948472525 9700177 973841716 507545961 714980106 33123626 571065338 226028728 997263996 39147194 922012043 727569094 844858014 595133539 639427909 501973744 672268843 483072984 687844782 68792574 351853535 793227191 863334689 126275730 938302022 617063183 676750982 612376489 808874818 475229465 872554568 872368109 944649326 236809413 503673443 473071664 497537222 943975381 987324233 109162150 514157849 108634135 680586588 872142724 883229193 104673259 129700281 623386063 789048403 508678676 786376391 768053955 854535810 800552566 941844123 454919420 780507713 641304076 930627283 865168497 959300339 902314148 917210955 253932168 442986891 340736346 848684221 643353548 798661475 117856953 278683796 580069201 658678426 39728053 314457262 903374671 908877756 6151965 422914722 187617395 600038579 350671636 829422523 275887279 372300809 555469909 849644071 598314080 878139072 77961191 916588987 720606530 997646033 366684280 750315457 545068974 571626346 20999495 178190685 47949690 468352541 29666616 985039905 882291213 959093231 360459074 814840654 820044658 990619043 830718583 912799968 463724030 786306535 986882350 999226108 50272087 408473978 56773472 786049353 712668840 977238975 499035881 897202716 774060813 779288528 561738978 794957048 733109487 803583741 234137090 955997145 341854046 483919938 864409881 955602971 413507735 926286348 819515227 970809282 592154468 722251480 13773183 580923800 38966315 335093442 517143399 938258314 759696668 849358013 553652580 998515505 948372026 973369994 294057126 342700672 594496977 870989879 790654878 822651105 498320286 979962964 794743997 877438849 567508000 765548189 792878553 814738738 680713286 737478471 372917404 539240608 311749507 636600074 307925308 640041774 628246176 802023473 842602621 911886811 782855832 795980758 129874247 925017021 825213575 964394804 332676127 782776014 626150042 962483854 65610199 655226971 7476977 625585029 607837929 711662567 632987598 954392709 700444009 935249637 70395551 104104187 390671453 411982294 625470706 862822614 883495834 904931519 673067063 906978993 439920152 501626924 493751597 855591048 247767714 812350912 218539277 782165263 156463842 835324925 122992768 530622294 515230386 798875878 51056248 133421211 159754297 664358754 586224207 623914200 514108396 592478367 944661279 970373937 703077435 727729578 967643912 988112423 316038521 369249708 215668423 565436779 347415069 891874202 74871084 718922973 52695213 981925916 84176837 745156043 587933660 594005158 752442512 755100803 867190180 902237856 423915524 486285996 182554926 370514034 772373628 857978756 569370275 780866573 802207693 895756314 733131824 854302448 488302398 848029909 281846206 672082340 972882754 989529429 678887762 880361944 457087607 491540152 446690943 898670557 732583969 945125850 12602880 927967875 236681979 813865521 684329094 697124268 768082123 892604205 274043424 858999609 11479301 771633316 999274108 999315144 290676042 873189299 818016259 905179486 313820750 733653788 446563351 591523581 519853515 962175469 152485209 797176181 173988673 175548963 758012259 906650536 538480549 597307101 575371686 797254977 58438424 323577424 5601495 929614060 437314148 508711616 38514920 66396258 912074859 978189811 534197139 667905508 238151639 802364738 403473077 825665710 208484641 446392582 112991736 548195135 681807665 890038001 573694708 954929200 173925419 568044403 112366653 519789803 449820854 471718522 640978993 767229938 696973031 976226437 263351592 276951247 583941734 655775547 945860345 959085493 17809017 532279190 842335869 947317969 380940656 950241034 479771167 774160889 560899056 644434788 131399536 558372424 224433176 294874731 146064192 565916344 131793311 957541023 212841626 642067982 44967351 486050046 475057756 716848315 926252640 951231489 207667744 651361248 691609172 713257458 880769069 962603685 793056136 794025715 370526881 836981625 587058706 958224433 178740699 902976228 523554036 750248681 438284700 624278668 893969057 938022192 587869265 857927018 671708796 695244251 475251032 719571149 93568179 354143423 893311088 985252844 806465962 958376589 669935884 779598738 800114113 817579316 754612710 948948994 801277138 803303100 115616419 636548384 766287759 809718926 251122313 835358163 488152177 683406936 179705228 487924641 381639672 514740852 354206952 555417690 70251177 681384512 811898454 924615887 961407830 966418385 666500400 994293107 291020495 987797493 176898161 546641180 327791935 909712864 408549844 489184202 585567518 716903042 18555806 392250595 485714225 980523400 37639632 250526326 3216287 547905221 891544637 909038225 442648194 872615749 95829927 298344186 513122427 681354140 377161790 787201889 968305562 997246614 765502479 927738935 763899120 890107667 534942626 960882875 710872391 913604741 416677557 455503831 252424221 698112011 438883161 455824258 321067560 974059418 742750332 950297922 477113298 556344546 245369737 926820674 190815835 989127368 841898708 920032673 453857402 787484045 521906954 602208379 392993815 866466852 545655979 783284061 541580524 879684561 50468331 552090879 48639324 411986412 590794393 894781630 965340818 969923465 531981692 707763406 903854129 993314524 715960198 726471959 997624987 998975675 640192922 911578191 371893422 958594157 561263255 970715731 961296476 967685307 193794044 843053734 672137442 936419043 582003747 913727922 889512694 892609547 620968370 954807051 938450719 941632827 302920500 673980712 689012715 816577394 607524027 834431154 905234113 980464791 430686460 590654581 453421919 670243263 923386611 972152779 853839325 938247794 309939250 502672472 603147803 796044032 198448946 633617017 273583037 581803495 155274869 639342993 561325425 796266241 797362853 966964337 701949597 947484477 60014486 576944848 984597963 991222367 612978233 677351803 885077129 936883913 720457163 862095908 506252407 686938474 8405817 608213792 168626361 897121897 623505103 766076564 235736004 345222021 226760869 534459691 584445494 645275773 134842661 432784519 195220996 361142902 657273244 906358538 505999978 814061727 458031016 500115309 248898288 456344503 117301510 377660082 151657962 757292694 909561436 965867222 428076662 555170856 915616388 929995470 464282846 779279091 594257905 641434310 732980679 931287015 238708090 457092865 515671458 839294211 532113866 846343410 148614362 824059371 647032101 787288563 219095304 637407180 225510882 917676802 470047305 831258981 832339546 845021076 265274631 898974838 346590588 696213638 709308293 781247148 123925410 885088483 557816145 588874198 576057130 988028327 852478889 954788490 18472820 951506221 581158121 844121239 352545630 956496829 407142922 573687243 80377281 966734856 366092459 937699105 502457528 751827783 734354158 780511833 355553266 719098754 655868087 730657980 479281666 910801843 673821578 678951071 978017520 987648209 315891348 843952239 221100329 747015972 82816357 971136823 87984387 450612796 648494346 961552443 658722339 943336367 453550935 786159714 392264816 912003357 623224193 866041881 12784988 783030244 256700547 943073413 442024394 887542685 125887694 157529800 735386875 752823348 895230938 955034153 659857468 877992445 655966554 963365853 330008122 855724322 465299111 603831047 490449345 531404901 532249962 805899883 306649595 977719032 750319611 856038945 714057527 803306416 336593323 696014788 524744757 780511557 426324207 549746014 55511918 184362073 252046321 274762772 820299745 824789639 114918835 707954540 631217488 914994103 581902504 873357602 120808842 279190191 440486910 609091187 596556141 761961653 556303232 866297366 39175205 307317277 939802082 985938011 745215669 747001579 328330578 821211182 154881458 624884311 575043844 890570459 152602488 619788321 805718735 941517056 39603047 627993900 281126126 593150757 869207028 957363966 210060802 990334908 28580470 820911245 752350723 877276550 924045047 927216986 503075931 852197687 771634864 803996806 825542335 977294688 221663823 772722836 814343084 999042943 206408679 340128111 457944751 978901901 523509908 953490496 772927904 834030268 40563984 287929282 834788418 987580950 698708084 976537427 666727607 782213503 471301467 706315551 210966426 228065503 910229080 927250797 738872431 836030788 488880513 548473583 294495793 815165905 14496323 466316378 774766217 905567862 434801520 597716179 462539144 707158226 472363588 881078775 709296867 961015300 810325655 852945389 435538862 818253058 616666042 907373664 314478700 528411529 862014330 918895677 540025151 579557452 728452971 898596415 500163301 713016880 346141673 423350990 926055014 942676035 314989520 836484598 680616303 945834242 531192666 925684771 174521071 990120730 376639782 444332792 657168874 765460714 224495065 291323516 227352864 436419006 44534744 859762307 521988590 899758127 603826624 932462046 672992813 692417514 267112252 562279528 713365325 785191199 378698729 407172791 170769224 515760762 569101760 805332808 602840816 787921835 921276173 928834401 679696327 728108047 625762068 879805979 471699206 637796134 359374293 767172592 792460664 981596083 606120100 970971487 968287640 971585858 911431577 954370279 984625642 996055991 796620591 976535225 863982091 907632532 969588191 974189877 59065533 835918708 96202927 632201750 190918609 309242610 927370203 955610825 761402917 993267592 680533413 931733220 312609737 464756199 105022705 809273996 962635368 975781542 647811406 782169717 424771229 564418236 184332441 943661276 66956845 257111907 308780436 341181891 82896199 240192018 784280684 893807188 995657438 997030948 481713161 939510936 273026083 408285193 526845889 881305918 126780305 242275289 391953518 652234617 763873457 768848749 800469743 872671776 140223721 598639909 63023358 463071063 652700603 825356509 382372967 969186005 840613040 934351020 222392584 242130826 71726358 89595857 907286242 931112022 137961995 245306998 68386708 837928249 887333590 993987802 930650081 936840589 478841090 814208278 884990792 890494836 4479343 28672318 338986343 429491805 233109295 696016130 124068599 741509271 998428744 998613387 330356591 812523974 645696328 938445937 903685349 948258641 578559859 868688470 918432262 937902617 823034621 842820352 385238267 566914543 345417389 878429777 233552234 646433185 432799584 538991959 433225409 595890488 956930052 982253773 341290880 413348931 172132431 944870335 441480845 810543013 373873121 628363595 720552845 996258172 428477986 491091645 675815843 829884155 178892650 937075895 140468447 699939175 376770790 528679605 91071490 716731533 30950134 823210151 606161898 834848780 597487908 729037897 396587639 878229185 350983276 946930132 404731752 965906055 571901353 820155343 514762602 868127849 321796384 637601844 480210513 996358123 852546778 891528326 208629733 653390424 252841302 604818918 385235076 643822834 296156598 430049950 45130433 367622903 363091988 760483888 347552021 938515360 574074809 868434855 514350321 782001607 973214289 997403480 563794894 615884357 314905288 777839209 231568889 400617608 824031049 846077648 806362952 921548131 207617367 391840900 445820661 924363904 83357806 484930640 38384921 783595154 485110978 811534474 97627754 546179095 366860072 845793212 5832112 803890679 423501813 439372615 980960544 985174133 601046187 742484583 588073927 994782701 961150595 969878406 677994622 743267653 522258303 969377824 885844343 971909647 531651065 850539663 763779197 885995102 102749419 558545644 921698281 983849501 316487168 729959806 339536938 667742364 663043380 935264998 199523415 394592058 358450331 511292890 137773838 631088729 783515240 916559318 535932821 561657666 61688682 727156919 889331538 927642593 169749566 463945065 565647112 610518104 976362442 997193616 852780477 928629086 519119874 666395713 25705976 570826978 277362182 683860972 671263420 751803127 711854243 847902371 592200796 639962586 126990754 762323740 613709928 728180534 460334834 779753558 411070530 605851996 311426533 509356951 674059451 974637429 530135519 597718246 152927927 380704486 664631966 926071154 57592114 784757240 446537156 717894475 995690301 996180613 256428702 971053459 894555720 897428512 877893485 979077800 82239565 456971068 842127104 900929976 487990162 707439538 466299412 944319037 157262103 773017720 300862529 596579005 25048763 149181972 284275052 774473640 174201308 801177480 389402391 423606830 626413064 997736947 150622791 173000544 534832913 903394532 99410534 804703003 361859402 450743347 933373863 934126815 488074192 961460728 841165748 885948366 819951286 838413063 994160161 994490873 430085881 910480224 746171157 789926473 83348059 533935702 197804885 435092176 675049721 814125657 412462849 922712647 562273909 651469776 804996716 882594395 23561351 71929386 207493663 252459907 986918555 999087596 919060377 965138463 595808395 861967299 998269361 999066852 170349470 776249149 797385635 867031093 418365139 703406682 652508217 764003472 619980500 806480701 69933267 383122823 686031418 716335713 220045266 328499675 215686197 309754156 386009508 500284055 920320362 987465320 721378740 815932864 611451928 945415745 199086948 815680324 376182755 884698510 89034814 852722007 901987790 940608027 912512237 946873051 581975597 795028305 307071971 795111728 22367592 333990141 178680039 629881718 25103585 475225566 743906933 953335686 874193527 918882989 607578466 769508471 294098266 708640416 674174961 915620659 780543280 906556348 411744295 752527737 2136066 649239143 968508905 974706778 203621148 496957944 185237833 491024183 368310919 781695296 740121056 828842172 134558668 690075162 265096921 652049411 439382564 908799517 595527644 681549354 397334005 560518008 429173523 841177915 383597243 386446042 872091566 963122603 902136705 916207777 92035787 787845249 418404987 882657079 302668938 972364742 75053780 313114088 920469787 948159677 737624886 760735436 590648989 780251228 930622154 951973827 912645861 935440315 466895546 953700933 954319768 957866404 418521827 739607827 490376956 815817911 994777389 998799260 11264541 49625775 792733481 874878581 291071766 958377813 126159387 583847609 586538284 714703424 106014169 963779230 728801935 954351318 993103441 995910062 894225906 920262707 929134983 938347831 86838579 964715369 715099115 962586719 602406002 859730444 193613553 749715021 397034573 548860433 946369125 986114752 681541574 842898948 118249740 897623110 765984402 954426611 596671397 941764143 369005665 608998217 771148033 972251547 667404572 789279517 739143809 789454463 425328551 855618185 21408091 749115370 740649806 992876647 241237413 948174669 301564719 857403293 158389598 922315547 60947244 886777912 670294582 838034236 748759759 906595914 243160637 536201882 449986863 465326157 11014176 605366940 285906462 951022144 122555120 314879201 841689698 891798275 669691883 733895262 49101525 428517371 951228176 990773326 235570775 855193581 695052543 984251599 724866160 740285455 726808725 855741675 92304257 95420944 711797644 830835615 786513200 880340899 625528851 665048433 754919512 830233861 224257258 504486816 440970339 897247252 203127664 610582354 617277500 956450489 562709878 646695789 186434863 388973852 403189047 787299230 701714986 911749312 191974806 392523131 712583140 733025829 540356096 777673804 175886221 851901482 508614548 512688040 783012256 969462159 28058997 720111969 107344367 582204415 330076072 335496150 594198001 899286927 574765488 588131059 410990259 685529320 428866214 521067869 655768406 948626189 319607205 785485004 224612917 381337329 448415399 519907706 701290502 775666059 426692152 919717532 881776484 987490336 52663477 367056180 800999877 959352544 156515216 550433780 759373536 985231112 190356349 609401404 62741734 619135547 484124595 645691550 187399966 658089239 648360121 814614350 936083613 951809625 401042594 910236726 274314576 680263280 996403410 998144931 990364405 998304768 295877337 914881574 62022793 230319555 856189709 934502992 7416581 856802483 878533784 933342795 547755889 802127558 833358242 905583226 272062999 380982757 922956126 943436320 749323501 970919773 355575575 355694681 59103555 502598366 87807334 923851374 20736372 708267552 448622542 911053522 17835805 177745957 705697982 737240145 620825151 968191485 807631900 976190274 92169291 173178126 391381913 419623079 2168608 622031792 339744992 403190702 990064470 998081178 832414597 881555012 948272820 989107200 825264919 916421237 90250573 238073432 572651086 714424873 798543583 841357590 115136209 902199310 932041577 949249972 589076220 647749784 176658684 258960491 131378646 216039129 767709410 866985128 7956967 341760224 996036616 997689961 739193472 967111660 194448823 326827673 856888058 891377266 774206625 834356822 849517332 910230030 86935028 140115990 162333464 860234012 527770054 611690738 450564782 873504232 157420680 666402089 216517017 866230261 486664633 961852835 710013107 871236820 458296533 930737502 400974317 655307498 588179907 804935433 868895888 980194879 724602988 869918285 911761346 950179776 411452711 874718012 921857795 972451442 523104941 741209884 496255884 497835413 775217710 778321047 786213664 941159018 567633073 628156617 65694162 108865087 258884992 761300675 657391483 863820935 792464705 935138224 838278343 927326675 846364509 912266477 686969886 765789053 73306320 315288419 518086320 606377251 839219284 923628615 622704188 725712321 805528933 899731386 167805234 641292179 671170187 962493511 414805307 672389719 811197231 833804946 292368811 643794653 525307147 657155891 486842574 685952694 381115743 674807919 810834967 974648821 76713759 292467221 147934293 732401939 383042383 740421585 250918116 759638038 948203219 961879608 297854995 710646196 3841775 243397476 425926862 786721326 847272537 959967889 712201437 770969536 865048084 981791289 129517297 253577143 704216261 816977828 932517884 935327503 651342934 838427059 6986423 552769672 425323332 852239451 360141472 529066921 198427865 968592597 144861000 364296398 457583780 794961032 520656577 707396972 87142327 427170588 3000481 521319396 541534709 827878224 157071515 927755536 382713994 961416646 768619168 865881263 570312800 910452934 797591779 864133552 55000056 265629913 121490125 314779368 687129279 979195483 330911460 620880038 740390819 912811178 905263082 985361672 336945265 735737950 220156369 944610948 736008605 886922203 1217286 31716763 546973034 987599007 618863431 740034786 411338962 934932613 218802966 966177435 343152828 659541534 315837955 389621187 835255376 886789819 156488395 906451623 377491595 580651358 748673582 820647201 219910157 855325893 534322966 870510220 487333724 824243726 499029902 900718205 183881758 590906593 26977119 374529406 298839132 762813963 919946255 989555247 234619691 338371045 475914077 514152783 179440396 349173063 347896291 463832456 75644073 916090723 992896040 992938369 990318215 991055908 258578164 324429292 774861672 870673293 909727904 986542173 318875008 881797317 574372492 938303491 559490594 690481406 877923233 920186575 344822637 624788540 482906858 679697838 935031377 997962254 899917933 917434454 918501219 970663323 951543853 987591100 976358407 991752833 923038078 974281686 927107782 949797709 346283758 436547536 750016272 798707416 968079744 980090541 212511032 926668760 468706585 797079514 134803991 535069977 428484273 983010430 234093423 373378091 434640865 678364742 557110629 644478207 917525356 992472463 136102106 394330226 483515922 541203254 816929546 965814094 192508669 752239323 498411968 622162691 778569848 915809630 557535459 773732657 311990772 920257224 16049654 704360454 618523543 847810104 595970514 667854600 105461669 691438420 567702345 868668267 488317851 825774148 121165408 938771449 220679806 630263159 952186680 985031146 841355530 991235287 718670020 871572067 580629709 981202957 367712709 443397046 35838348 311163112 579291453 673514698 821489575 909150461 581270235 647421112 544049240 756782153 750712734 783828709 395044659 661651153 439899991 706549670 549277351 900631267 166931237 190877315 991203763 999108477 410449738 745938170 890907541 956256363 896040884 916423780 799906132 985040163 397131368 510788220 697640707 714208533 341495539 893128095 928946038 981103522 677760198 928244364 872721103 973314518 63696964 182933913 560312368 615067346 580097841 978991274 506293845 680603352 380798235 572860319 50161138 733894861 10250987 349238788 588328289 991894022 579935247 698283477 951545073 995772550 33212796 405306941 462034817 855101106 930078294 989665236 250648474 364522599 657386817 992036125 582963709 732170871 960038805 995380101 228463187 559000229 502870653 931382940 854269094 998951902 438325030 894080537 846740491 894949684 55293262 823628756 16915216 919759810 844153174 888522623 225994297 591931252 362906004 730260351 456338856 937475003 698197942 705518991 517172249 986223493 758881918 847000202 998979889 999085519 902635290 959866852 94115899 785604841 143651436 443801155 886066419 909921677 443098999 774516644 713301141 742874441 527709583 691745919 340109149 548025202 166234558 189239016 511478045 690594157 222765765 271699178 503862443 675280934 386790636 939474839 357129910 598082602 915481326 925169547 494500788 871839521 925465973 959254784 108930795 200195582 993850710 998409867 569915034 718889528 459241797 794922326 606513014 653541213 647815933 679479175 87256845 743093029 103144298 315602627 904040349 995269161 374266476 468572154 839256180 994763209 523355798 867581172 4175555 576446783 635536517 782267253 333321631 346299922 294435232 899449633 396259390 740846604 872354646 975166275 214745050 781457141 672261421 946602773 280891574 400484524 419652416 654517350 477629068 962390062 952316233 953450602 463181286 515625541 141185520 963865981 496760946 612418850 871851474 976855329 380397059 950149539 850938358 889840613 324882207 998402951 840393988 900393533 269930581 564489999 496263293 978465116 853959281 869981757 927650665 974035990 358815412 621455046 82371542 224495929 352703347 652041539 663609654 739216661 629661453 697511703 908455438 995690095 883925986 990284268 447427285 901372799 213297368 761203492 546452395 998642691 685030567 848715079 252404034 604851845 57305260 447496229 563811544 628651846 3394420 269152049 171007858 566878671 572675832 741136084 560762986 960118397 56258278 480024481 469747731 975680239 493075649 598091647 725780733 732576321 767700861 851213161 359388659 901612886 80590225 109364425 522940406 972592118 976769021 985127722 745282257 921657868 725979128 947145139 918957228 979084857 105864290 377300883 276075741 926528347 425852384 547485599 502892320 725886316 175081466 346807299 829520859 891438234 577577897 778284382 16809508 174954353 601225372 902929598 196583216 355494464 981551433 990768290 682551726 794744882 301478731 403146408 904213457 971132655 719663659 823611220 527552617 901889937 505676550 874896195 136884405 984558539 913102175 969862569 903751338 954703255 479722071 709670592 259370915 634188670 920645045 925590729 553155003 796611231 412889241 584306925 497453436 833601184 654795193 698351471 895078458 962151161 16629208 272151203 618628813 847620162 801068427 857200814 740771218 766009969 925635166 939249791 995574599 996560888 716161610 799782030 674379281 697834427 228187943 414112578 673008295 923977879 43259048 731450058 280737373 671988430 738284256 830207224 125449029 879867049 289227885 397044966 11097238 593672972 441978634 505243815 103339629 660640800 603621480 709265101 484473482 658266088 94856688 224962554 979934908 981993578 477685373 632312719 786124149 907264834 77336048 821056234 689583936 911911343 373834536 562430409 847790693 851545420 555343577 929030422 691298910 750450823 228688459 809689358 223264713 367284318 844956852 986167574 116072774 290084203 883893865 936768235 169223476 869634838 540935433 923646996 691765170 837779137 780462983 895397221 236427265 720161482 325064667 976997489 527933272 547116699 395346754 593574603 331204671 497591755 333447661 753744734 588332693 933922413 293907253 810516624 981703303 993524216 350276248 822762137 288832146 831942034 65957733 308418299 129032892 328179134 371762104 771653315 977145627 990765414 648672578 737489644 789400581 939184867 371497588 468484549 746007959 826252176 941092219 967692447 722047534 731625561 808614552 811730383 898753256 992346578 994113116 996665792 248241270 990380003 787441410 969214402 781390090 815281896 113150237 876816673 770516257 962175494 830915951 917999434 357773201 658238808 483128209 522743296 792603152 963362800 747203561 950122965 113166318 717883852 208528744 605708539 447443527 479326116 986702369 987072896 825743405 864359522 360618270 944628693 638984643 750545855 894727102 926489043 84570021 894981621 44405880 86713413 731929782 995012732 840996770 848194144 732756459 829705268 896153177 965813972 95759643 715517513 376237235 973975504 684546565 905019645 503912676 992149754 198301581 788280005 901046691 925641866 959174259 980802738 998278537 998793102 96477638 191016703 962295812 970166737 82362961 326385596 493815343 866503511 823298182 987725334 769993530 848549485 107914623 504915869 147741286 680611154 155865540 333573012 87226231 847610612 148398914 693275249 813208320 894325878 246523996 849637990 553498366 735272364 50150448 504691317 995350855 998986516 708923923 737468319 709179986 855497023 331817829 412542521 599023443 694515279 329138503 865190662 587104713 683813375 412900009 450724763 529224601 880923661 201687825 895288139 478829165 713105534 885463585 890116599 985880252 996276157 337409399 892352977 984089 507819865 931077245 943668870 478780361 498458257 727697178 944763736 534898319 730544219 306319979 426718906 990512370 991529053 581966491 765111887 87663196 670033157 263962271 796412385 112506792 567320704 234455978 581262730 466441492 674339702 310355521 490232159 719233038 994565579 340556135 484353627 777936174 810810421 963366752 975562489 131559108 138377313 869167791 935985192 182710066 719391230 365445464 912372537 613830775 729443855 691723961 772516519 339017430 937443987 171369563 301445821 52748768 890353255 962783121 993311956 53933214 600702980 901332057 946093303 700985753 798108408 130161417 746088662 949043927 993581679 731976045 737841665 784772697 833995961 644120585 790091514 266189047 832403458 10855511 158493252 991761743 994364591 346326975 794188472 333181143 524224704 971268406 981881803 453240619 536304176 199020870 499009897 300017915 354372832 569764034 761859812 293367906 370948064 4380815 843958012 201705564 903172026 789871178 820143880 532476775 669959788 397124235 592221465 464245189 865397436 423754645 867515241 796755201 987492691 593385303 746700538 965362703 971274343 418058762 974236046 576082637 678686199 188033241 585425285 302448450 883407150 542226596 573323430 773424289 879415999 962143310 994736637 329145196 547327969 669573916 866134620 859101202 882625778 170529590 405493222 96032945 516603155 381743396 952808904 689680077 713484259 355300345 792513492 36710688 957574944 727708797 844071561 158137054 898572227 359296423 605542212 895527981 913711049 433389267 765241041 721669147 785979576 859607813 940671282 142251451 443526232 255195213 729917347 921309743 986205755 305399115 787610957 353936443 528147938 318402871 710445634 247513871 783094797 82280440 738171221 321784922 767921013 842639463 890310799 739556591 742154593 178143677 404950818 131222589 149439955 947279239 966271115 143091037 315280946 737621449 740487464 292584969 985877937 64184235 366267627 118361441 254066276 341349950 918267950 535653378 738186063 205648798 282624176 896216740 933041515 23721857 591582631 992745758 996517170 89832365 482279589 76684440 996175641 646141176 704515447 239732218 702911144 350932037 870585117 336366596 368782204 28894960 83760915 197594257 761733412 902324707 978597503 958794538 983715057 98183875 481522728 222659606 706814233 324593219 806448517 826856193 918500866 236513562 467310337 269301858 924851756 358889359 782457540 772346758 803678966 917929415 993307079 363136520 755131484 172948218 860300263 464171858 525932349 425568517 574386387 280602398 833673210 158902852 281579823 766200302 952043659 207901900 322510606 814097706 916969308 814753712 971901927 873918616 900678812 804276803 960226173 172302678 980590597 448612659 929633142 661662946 730440265 967800343 970905128 401504638 482521325 575717594 770967130 383957167 578791658 966751156 988420414 813371944 995393974 539373898 781768625 933283400 952117308 10443458 287484667 726339252 797272069 391706629 560101337 821996999 828700738 918961616 996853013 294229746 316210358 869260633 871903147 560962711 756385441 254870696 371870673 711774870 879195611 576210535 981805129 687147658 730267378 728311735 728846986 588911407 620541352 674629403 980061621 150692936 436744219 222592966 987828829 450204301 451535298 940138736 969368118 115498918 144813041 273930607 632281688 963287251 986020238 807951305 927254301 894504216 919958678 899953192 947108613 550583634 741074015 806322439 859688113 899362137 987905393 594283712 810708081 677483142 902437658 479646134 659515793 223663542 658163164 768316395 963950716 286805992 336111053 552500400 801917649 379277525 561931847 235205762 971732995 735487490 927184795 309595635 723758317 683284434 927651369 637574607 844917775 143381971 985401487 104994184 154885153 533953162 733205643 359048230 686823255 452759575 532682710 158403392 720556263 599743446 729697688 120644849 847293937 99561879 352378353 843251606 905734690 673785695 970190371 986867503 990832817 369054175 945391270 241002940 923153250 859246571 985189880 984738009 993375978 905181383 974974044 504412345 956272656 394975837 492713558 156923058 307732212 488270582 697129749 99926596 381655161 762483343 995684250 661438486 829909039 135415190 451521770 593477492 981574411 475240996 993722653 101686339 919589857 386325354 630088827 563163451 795306055 445252525 705195397 918054120 953638497 369670143 419416700 862807497 973416602 944270964 950355367 406886566 758444030 340146791 554302926 736425605 980493137 39578935 223182308 171143185 348537266 84199692 786766677 675152567 699272468 863369321 922273208 561009906 955006164 903467373 931797296 708442270 890874563 174179140 977952539 917301918 919039202 81129012 584990045 239968598 991466824 394426438 598278732 607542746 918131354 306599272 324329673 51843585 561201513 906611532 961679029 636840444 855650772 748500644 857488011 302679390 975360830 40649759 183923910 133364844 511956894 921500077 955481500 554283104 760774953 22429774 587163918 280986905 373937987 710386707 752283286 408042851 535623643 509974984 833281606 339225759 908929185 172315966 440112926 178725437 711890083 551142040 818350482 314355366 577421486 498843606 833702539 371864892 697306284 147760311 902542630 237146268 715600393 347965848 682952818 148094159 671262124 270519768 986135563 21404891 795014617 225626770 311906172 488908108 693483550 183801996 521455261 764134368 862438939 118460394 959249785 671482434 716361926 799805086 842918384 684801955 719716200 216524394 472808673 590393987 699956495 588988030 593379852 954763227 996977654 17305222 531849318 996658570 997725143 369373408 695936007 961845910 992341491 79242165 870500796 940905505 949779828 938728472 988395866 187513610 820642713 221766335 558661424 761465594 965768462 579558212 742953925 221895828 711871561 53821827 964527878 198474354 893414589 849721201 868146281 378114836 994879907 38080210 283010881 55166559 797654665 889241010 911731565 297100060 351368974 604513803 706532274 625302789 908319753 164864205 243013293 784157381 879583562 808728893 880230187 893930001 941564293 830908520 963103149 291169138 331809827 871832973 910155222 754750757 987910338 564991140 570919162 437917499 471000793 513082730 593838726 350279910 967796810 44803469 726687904 762156573 939432327 392618341 789382415 426506569 993059753 384670129 947759738 938648 551947171 64480148 957948443 984603989 996604157 311700244 517895057 667441003 792316936 780163236 884634017 501300288 530570537 720395733 861299144 987717179 998127400 95510781 151314717 785074694 920489103 103405052 802960309 861383192 936049554 543233370 711983773 159002240 480171360 337911649 816960346 289885096 860463309 678405428 944895681 26399928 911799047 558234362 816017001 675512831 796642093 230136778 578740701 83492050 684894192 267168117 550495640 40091694 955994240 788262712 802006929 68106455 287596440 743411374 885843234 55009863 333550671 750706612 938349651 745190122 768046103 281814998 483928422 396323419 755519888 6718248 45405963 824992282 833077217 497667347 659160488 880915653 895225779 361958893 632632084 352792434 931444463 144494264 976643950 16697858 316158101 69480757 243463162 205453852 884619563 541868997 835656203 584393604 869097181 73687157 286961976 69212688 511665495 9790256 674503674 175047623 721200762 680232997 929754842 905179370 994913673 327327451 817672188 108533199 728890344 104697415 899290835 759073678 811094301 486788754 510364316 211772278 467797795 618534943 998735012 732233281 754120153 824584226 886882643 278682752 990088059 568272069 980991122 113717152 650355618 661666405 941562735 824367107 961218104 130394645 314910295 804522235 937789585 346016372 544385371 398279867 762904289 424417757 734642579 784821078 814278033 2485280 438636028 611419183 870690276 135229244 228562447 719480704 840663753 340679219 950450996 342243086 831808756 551494375 632676034 484512148 810246968 828448222 982248554 162740530 552843351 424930994 599130094 141208064 366747284 706017169 919332699 754615246 809631284 58640967 401435809 931209408 988367027 716660368 778295082 844683942 996985542 887818302 915965571 752963275 834975349 227500117 321115897 551572317 928082787 122485430 413015225 48140557 879238077 926425077 983368857 332677619 396201328 419766416 969188211 825053683 832847594 381554872 427621430 522540978 679487856 354225163 842030188 703386461 715290276 245088746 403680054 113041224 760622119 179522844 804354379 194913169 470771323 859671954 980926579 191991062 947049850 757645748 797525684 481209212 604362262 444995787 945243302 965854972 970771353 185097274 289719546 117641049 804876560 705779300 905421486 320216258 541630709 726102394 961933049 291904731 484582661 729497516 949402943 342290370 673687579 437083974 479849568 298554325 907807597 313535821 596918552 225486313 290856732 916105104 980471610 377604056 389433905 729321012 890530094 833779412 912427535 865175511 913709148 765000862 980686633 946713919 986502194 175696852 328880210 426658486 673623748 220753045 603533395 111066762 786611533 864421881 941614489 662337985 953020146 252210546 334318434 463213030 862366367 97923870 891843705 103225182 392741773 709940081 936670930 819724728 853956010 794806198 897137094 204585968 279331257 18223162 264478842 71545840 677495009 456320007 626367715 627626337 904720782 178221588 450873276 936099999 953564308 653542737 967941867 917920546 985379010 638981169 967775895 326616439 895439774 520847380 558299669 166831092 530892632 293375301 691607659 753823381 935543197 537455355 813547568 35397285 997285453 966115861 971944659 932146426 972067584 801386440 865639833 516491436 930438100 230215521 520635416 330456793 380871198 959162567 987300509 566187823 953415024 3515724 282058119 740885633 966372010 414777915 664563213 661643132 740619406 108376066 818337238 958885516 960613640 749318468 836171496 213575437 686587628 990338143 990656972 536284667 829041082 320757832 620903003 865830706 934123759 54016795 68844667 341737666 843889202 601542826 735108926 623156047 824707997 175182593 890503523 960896739 975290064 293491593 812973170 124760975 334118883 89374304 901683377 60422937 906771295 842598010 851962139 488633070 918236622 388346053 494461385 209462091 775075436 90350785 228183010 505599599 505672861 741834937 810551009 470537550 554522019 278462503 783223341 144192739 708867512 350738253 816840723 111341776 189185340 404900194 756370556 133739033 388537702 106264552 534363634 274836810 685603787 643821923 716759290 18849817 688778786 686607835 754519847 639018109 995978220 847795505 968684528 377001378 764855423 918666057 978078037 782771407 868695066 120930368 527525126 542547087 908596949 348571468 580270851 174431001 263081888 448185881 876727882 381745469 775741015 759596257 817576948 77100424 96482201 377763 565639992 43065568 630587236 281835302 720238476 814480249 820086626 80532461 126806356 662083098 926740270 671409237 948141095 970650776 975619980 805181940 869189330 55787672 215361258 975803531 991443770 914112016 993818946 756033530 758466535 858875508 961985453 57101474 399439477 210477062 458514279 259111300 644832320 704509469 826170188 537431722 597045340 873976495 967010954 629499211 669693058 597233456 817024404 432132196 588542164 695706762 774353208 37999362 907926086 98352997 864972915 987418055 992927783 34337667 479798758 988644989 998857717 954257685 961553442 538122163 729519273 198884868 233032975 839612465 921244378 219596913 577111032 145937124 570169924 155031381 705104192 944837192 969356247 121028965 738119691 449107357 806313808 635835087 751586902 435115969 497612287 587911024 926765544 457069293 889307991 579827350 880587043 834868008 993323023 204738872 263300334 761036016 838500455 348738281 580676088 805363230 924150549 960905951 979252256 595509283 636184678 561161734 859813781 67820538 637574707 470562482 708287855 915828791 969175353 935036551 953677144 440382793 877703102 8724685 544404892 11662351 902052598 803212704 878809542 580805921 896358082 698188748 966218230 996562365 998222953 702464575 722345824 50491992 907336036 728767934 791719886 369054835 694246239 825442829 885856443 657998808 803928478 687131682 873228597 974549803 981121222 816036431 831343197 37047015 239080601 62316022 143358896 153302767 512359119 385467370 434763012 78515056 445432620 98465878 946794818 547645689 704178843 219367010 326774324 804897399 812416334 136957548 398377450 977234862 993629942 624855585 649653113 419479654 569667554 957101375 978022210 887869919 990362111 430305142 466835973 196014555 779680829 893895921 905123459 672156870 805690021 742784220 988926130 524468474 842989773 174548026 419560212 370664144 772568808 868216891 985893645 62140650 956929436 889901489 990166441 120302364 548649089 767076207 930635547 665549148 721680251 86811670 330651573 198412204 742566776 471223701 523511481 125454797 940209811 331214353 837284704 339586973 891563177 808643385 893197980 145537143 598642700 857984354 870253798 402403906 561147631 486043932 738142623 279189398 657470732 809043201 997303173 605219669 951862839 293396590 857442220 48040586 101792599 860061361 875057173 850277653 978324663 283852054 992403643 311159374 336459348 15148036 445854007 911721103 972658452 823015324 874031199 614687841 964712449 842496597 910979283 385006793 600228226 796399694 876359718 897538160 919522249 919474673 987130517 822942985 961088813 224835205 939168771 163023650 767881692 464587143 825371372 298000355 425021392 82378492 409751244 38549592 107604879 148980179 395767987 491797717 877443262 144985936 682325376 982043520 989448097 809218262 961427586 188086554 544601296 848118636 901887030 998802924 999226835 522380774 601589319 243196278 716762136 53893610 55316029 551781848 582762668 293350062 809516623 244319843 591675553 613154759 800484788 628549062 831665226 332826159 688228064 975862522 976692502 325137435 699606298 496108180 960476272 825922515 895782149 80481935 758955291 468817190 647863296 125204075 404018439 51264062 782140382 820934833 889205172 595404651 617667805 868859493 877406948 733096881 852392529 457440086 492694111 966182601 986738329 428869263 457044550 213889466 926860935 592289028 803061308 879349642 972035103 302289101 535964446 417740637 805818298 429842195 668166915 348457628 977719211 648058679 988477134 542232108 544030616 938657996 962687366 749017797 917105319 911291494 924793803 285736762 911892574 143886330 449731514 680223560 756435215 648169913 711064021 450536622 752928287 567559509 756770821 310095417 571035609 47913415 489119191 322216203 763262890 57425937 253879660 925228581 931736987 547555774 783050299 503537108 991382594 619974644 892726208 356404112 470962300 465161487 472701198 654317736 899279199 698808806 719252761 194205737 280309743 119972428 153466014 842101346 994554829 692775885 721250206 945858963 948208707 922635224 983283205 508903740 792200841 10888555 58393194 835012126 965314467 272835579 451521669 254570356 443576356 393443457 628163668 735422784 848732804 824589905 936120038 195159798 217889531 590724756 742234853 975221631 979283469 836072241 888868115 296911536 996765296 916357805 954704989 736578187 905909770 170012970 210569163 508399086 618340849 623051118 752657282 987260421 990104948 647201885 725625006 92639727 992798163 359439869 557223865 481349290 722377493 429865084 740843938 186518130 774027620 894037373 901821019 880220376 896574427 897432803 908521783 175038126 988525244 598838064 729513417 773717944 906094329 395375652 575631912 960877211 971474694 971031267 998424020 686720150 997989217 346958094 831989660 95552426 217465533 24846142 905064444 501338593 551522481 339771634 653357343 824893471 997859646 551739332 912694424 318606008 527473112 184125251 629908819 213328524 799431162 434203751 871207329 865284367 948852146 140172604 389687497 614038252 823832238 652032581 872833953 485966934 986570903 207022403 301241430 822660128 834667230 12351251 321201334 564898629 851243029 204814110 768444554 348192354 622962331 116125618 384797762 986287550 990527314 496647995 498175678 957636941 977859993 284870993 686739896 419180182 801231564 346765255 536854945 183985057 821469524 622957919 760278567 4292344 320694105 294643001 635891909 178596925 746929586 134759221 483903760 379540122 506721040 815519016 848329698 458084312 589707158 948587701 982357087 129012823 917420963 973692840 984667198 988204142 998920901 328403695 683969928 856071894 919654841 635025480 969634613 832748999 838781633 784862355 914871264 394735858 900504406 127372503 434463440 287144191 536855944 438474340 690436787 426312204 732196891 869839458 956015947 245462451 971858872 858194042 916214588 24646089 88930099 363757308 943303489 498403423 893037923 477402184 973721022 599924644 832690251 753186122 831717132 998836806 998866409 942435584 959898925 94010909 679381810 190919143 919329463 652187621 834555170 46708851 104583564 326558901 656285779 531925582 813985132 553577844 740194292 732444589 733884440 703370935 872294457 298786273 820975629 720507753 897300645 500970541 798000262 795244408 940524542 718259235 946621289 618748201 785139220 805499079 941939833 371968017 603857240 383225130 570418374 923160690 939184368 520907306 968936034 940567796 958231657 196852467 651181940 26392919 504073548 74999120 316528366 518004093 682839170 703316224 759779909 833326080 995741727 662514416 774732005 307345890 383955401 813989836 882734948 347437560 619380227 791228989 857639590 42274790 884807405 11789495 19014787 669367535 698888537 867196952 980336826 816606313 871542627 235815983 282449088 62134065 122768615 92766812 280566587 882904989 987485321 697759869 976875551 603990613 911832195 600042413 651304758 321634531 883829312 186519704 534098120 248838102 445120946 956679383 970966278 753678179 991027826 676120973 818143072 769263600 995652556 798354367 838235500 884157400 910983514 234154411 598390377 310162715 437428553 750127472 976942591 231254793 535583890 473738420 761680304 737925691 819298565 78066098 142217045 761728287 953074417 802716203 928285627 926710632 978171389 332305009 555389091 662635427 901668218 120999690 147300875 899057369 995609371 129181376 130388850 865339251 884862040 627091961 951537478 838485519 968388743 976960548 983108683 733525501 757584762 313261490 404036821 961836502 963021946 6765406 107009534 275285042 389069046 149864965 321252947 555815290 670506093 114748639 300402476 862557309 969933418 760216134 907799353 489340415 617224558 640308826 649128114 776267346 794393195 252569903 703455074 260183998 933122104 215993746 326969503 236423635 963748061 903542136 996606096 177972451 375501342 409423468 527167360 831089106 839951618 433935547 559566056 193857374 449810032 762622069 875493500 456683235 564709073 413444019 546935925 754418993 962419229 161126365 617640877 634141348 808475513 526028403 650791416 8543019 511236450 882048728 968946017 989520665 994219241 410794517 725821801 650284685 996095858 184945104 683758297 973788710 983289613 709164802 799775939 6206337 709180624 646000698 777034131 746342140 774764604 466986092 986224722 328521711 698048043 4753743 309820425 916766107 951656715 443092219 720485496 35313289 894648748 74975905 353698051 336385666 651606110 718550097 871083595 700291145 874803524 879976434 960461250 86070142 750106554 638744847 686932291 160534094 504115661 350812545 873640757 544252830 716928511 488211006 901070504 576353528 639764647 714267899 997900901 86351258 765187206 674595415 998908899 596659165 778884756 783148994 851886719 222763283 405281328 573270344 946157408 295667178 549741599 471102153 753509520 661591643 796676011 707034300 905151595 682524640 983637424 580624826 973701646 872020595 972072716 157492019 348523780 457696848 973866152 526033756 632782392 401248185 743672154 647508723 707452691 346909958 700659331 505146844 882781212 484592993 712063632 314570133 974756160 43989808 852707529 65788409 395229636 587055130 666941713 760308085 917142205 859830492 989913303 852984446 994937802 704368559 902913750 64692808 109810119 38441291 316787774 258575177 751858874 191304180 792498174 731675250 934048845 710383727 913037900 568186824 711784367 488793852 970362756 20796663 295057704 501907407 664047038 814696830 838610121 304099291 469563173 63095293 168107406 958317637 999223360 324975147 373798939 199419134 341725803 650121518 736520022 410521070 926885183 848627044 884439013 866567795 869355177 322491668 333202364 460109781 864402392 110100623 711703363 64893434 169304147 463479740 573331527 180440613 932154391 991370162 996535615 518758675 619261564 281997167 368008918 294579177 983429227 869035768 997219329 464749828 610681115 33610752 459034887 72231706 574432419 51560161 240000033 977404740 998172009 102436572 773225866 778229936 945026921 485508172 852323761 416145966 469216281 50229259 315424080 308671381 991067790 525231832 942515997 216759447 686174694 444359277 475224740 673698159 789482854 509208103 582024394 825612236 933836904 998733357 998911500 631828771 824568316 937991742 984637821 620483332 997755358 507670503 526941597 46483019 912972206 362313636 434595390 616589171 809250658 116585255 998800113 899077414 957080187 186015962 355149026 746586630 843954401 71481841 621881071 406489656 941859218 924070858 980641949 478598888 505661810 792356291 833561821 513540104 817842252 542781031 672530230 119596365 303805577 78860080 723482260 433478356 657696666 232636561 990023784 620856655 945342936 711611487 824023780 466035924 514583707 287955061 593929036 38131374 472935369 130705278 785389474 281431560 387947379 499515940 669793740 394727802 652396722 412856467 933182425 764384224 838787544 234914381 495050676 373417381 496871948 177231908 689500852 145359414 195722904 637155159 700395957 676057365 987702534 49422830 734744136 318689983 601970680 797066576 995814880 718045242 855593379 108712610 758546642 569026806 700349791 28936027 404044786 736724245 996890591 689121544 707713152 308702498 604824663 998096706 998756537 396821731 469920831 548381833 572808187 980838982 997058735 188899381 418339218 158464860 593762916 158713193 625867052 219021082 304272913 761700600 928668378 198851134 414423781 107904957 961046687 14282543 795968209 423662480 787085809 825388651 936354406 310015866 456764464 298668108 381744735 399715501 883485369 222363764 222897767 441764059 795029985 2211326 215688263 635762118 657357301 319774059 478564713 880964832 992264651 190259819 742801819 138904914 755394556 911338222 993804370 501607356 968198042 537364819 767682520 497886643 636426070 694117864 857390088 573094701 624828834 972798148 992638559 415954737 926750182 182967863 610972776 801720643 911313032 172238873 554145816 574421018 999077580 819381380 884904339 183553161 377379801 447340802 813531487 593562342 626097597 408798476 818451987 630273920 723455005 1734560 297954799 878395518 926325067 835801566 962802720 484106624 552394636 903445780 910067242 463018897 635958844 349570353 505033948 99574108 913053541 185963533 279863078 996582184 998292683 651708041 906499767 836928925 868630033 435394827 890523966 498720032 886995527 470721881 567608967 676878629 899252440 684343738 833030003 537255524 907534349 522424121 980700194 55505177 195507194 786375747 802058058 612558201 748825414 101525162 290159785 900542936 991811210 149947423 246188043 668422515 849635700 391807373 791802643 8752139 167550233 414664454 461669783 755714766 927118164 246859574 275636442 144403262 946776752 864218391 976008984 203817631 237510516 245725981 842321279 901805687 956907897 54186404 284912977 161093198 328236656 38455975 342805177 955126262 999337819 849361397 923946229 197967561 724179687 135237351 578753988 779264467 918147836 900073829 916111883 70002456 600853655 586790499 670033307 184984541 615424484 54146691 984104147 31766302 804497138 82722140 343885440 464918257 814786978 691365064 727357086 664102905 717608470 284000540 400940726 573941567 827090616 181490842 948783443 238999548 938409003 587758292 679566913 473225438 939770974 781755405 983966047 838612155 996164744 998447064 998706039 315039452 886959111 390346098 718279782 783505624 986836604 958776059 970159837 641106313 727585569 801362148 860905685 954689145 970258754 802507812 956488653 287750651 627276349 971006414 995432264 703528914 976398331 206094888 319689159 381186638 937197556 942852381 979029540 813359749 835883764 460072309 750758804 447617522 609133701 646180789 916616303 991709677 996303276 308812462 863235902 803522928 888865180 544478982 644352869 864217739 898776118 589596884 673211048 767971963 862674263 523730474 697582404 203709994 826346276 759703176 862605689 389756784 612038468 819115003 905473011 194118917 848151198 63209178 75705767 602662224 975150661 765552569 901107691 994871080 998865623 910431463 931441805 730367183 979785442 580775531 853379652 153941967 419695739 521460651 575754001 943470785 984505137 122810805 407540311 154613812 911001319 53927200 483709271 406768972 424575448 123607727 852884661 727457876 851168798 25181619 695037888 967154178 969896636 589228187 619101128 498227546 614467079 547430207 715665006 249380856 686101051 498136524 588293056 45729012 545768612 626833037 940578502 694924042 766733989 359196501 574249095 651874559 899007661 156398462 858526853 816196060 822759230 254265976 482902154 74861773 236682398 414892535 599069052 36541573 585975404 573659107 714494944 213226988 870553043 23681140 892842484 653486313 731302283 802533613 975996655 173259482 249821066 816600567 935333273 553869265 865776822 362024918 862794369 267532363 848231244 569661566 975027870 873131148 954835989 657133503 701090911 489274566 838307845 712063659 768815809 354178034 576401853 760421514 880905301 509484862 526881627 163539957 467039397 272546922 667832299 534669872 629624277 847378892 928257942 49863696 807261660 987318343 989920101 450861111 858813770 809175547 898382430 374390465 424165810 238444683 621921613 419184468 912948846 730953193 917436244 314520995 629898407 911022729 982765096 933434318 989327608 950435163 970677034 799112808 883728345 845564027 891198689 907230678 956162402 936681339 942258408 839714256 983621774 323144793 405378264 270991076 768123726 118739927 665962566 547987692 780883359 335581322 922074733 277406534 527667536 265870214 635839512 378275977 898770898 94172579 545815977 664246102 677408969 153011291 246047122 414419864 639985454 102795986 195553846 998701536 999019586 524332152 680645858 694542425 977735953 524444350 829017267 994019001 998996866 225082081 512558161 817790068 896787758 136570968 459161038 367254619 461158096 266224619 484574057 11677632 356111347 904157775 994726402 998735500 999204792 902504175 957377342 804624651 819665775 640784460 744320279 739634293 989883041 612475832 642070358 233109984 447201306 958657547 992819955 782247349 958080783 351419864 919232036 656388973 919096061 854444825 889881384 23706015 294200037 196238928 392352930 819032787 846245633 335639276 617618628 423759591 718296273 128734168 753556932 637770523 813729031 399548563 840069180 659774152 722419660 597579472 598774409 640235240 752415930 72964679 227357173 451454071 481866598 299691861 841438993 16820693 608973135 794684954 829164325 343489345 891718476 489473852 708334559 48593564 681177718 271606436 857333072 127259247 621804036 511961843 886010818 51448848 362889423 412531836 618972696 641979030 699591062 600966365 612711350 378037856 829902383 360360313 638913836 460592810 845008179 181952132 200550251 329380651 701871743 282137388 852975144 1192213 646116217 289620518 922390934 174441108 772232089 813285023 816786617 469374790 964914693 221216430 917027554 897990634 956455434 628029155 925091733 913893197 957104336 167800620 856226152 109494459 529291661 454498246 931162003 258309980 423717820 386995466 541857886 90571852 655830615 800791124 946795843 200789180 697607311 126217013 722013782 234213148 598287836 596416867 992190065 889803883 950427479 424101466 904783466 185676130 864869507 846157158 863726188 222117199 944917338 797224207 943727282 996435542 998840543 480677445 574478889 40574016 242508012 355572607 816085748 490002295 886616479 227430503 347831169 271018117 305455871 730986149 766815511 496237031 715358040 707315580 787912070 630337175 767098633 319485925 333314591 276266599 557081022 558020447 586114105 534844536 894528820 833894554 928039898 489216665 495767992 500582620 545257196 773026622 836771708 417805081 985083784 212208648 931702308 954306196 983827136 243763010 980408230 800801148 998921939 864030889 923068112 595747728 627576548 491472935 762739840 963597716 984110336 316465384 443084650 504158360 783419720 158718545 162416029 477608068 688191743 345724585 462171637 945255166 946621471 648952929 881454859 540284849 950737928 183720466 802353097 152199935 918809381 168435959 712683105 255828755 712985368 217956163 762107775 240949105 719070416 278962486 421203755 959557048 989559084 928249111 959497749 60937838 689543643 613204709 770404505 677946137 964506191 680543320 689477908 955957132 977426853 923692313 987275930 380182008 434509152 491532663 577998929 390641692 720749195 773323411 809202254 114907911 230903830 679995829 981944145 224239491 998055971 672787362 719292805 764038252 854321135 646768610 666499140 401709010 416390821 322686164 470984598 157911863 538612807 769222376 961109010 788031634 948633114 632898824 682405471 712129162 985010870 137196107 426300200 702097917 887996183 93858135 281232242 151907206 487101164 950849890 965599466 619870101 901206052 771148333 851269667 624912465 648252932 856857876 970227583 73444219 908461650 886366661 941388926 97257496 448198457 842354191 850426659 648603541 814909681 61435762 226988084 185617618 699231842 50466784 790458478 331177787 545050991 283773126 936440715 964254762 974118451 432458641 447902451 839859728 860824338 721049149 822600407 355930131 641522113 41279391 683622388 617246223 797106540 501952944 839499782 5718695 537855361 153147132 690803475 45782501 252508369 852669463 956562245 578629032 877346808 884879715 944996830 445664008 900356051 8984049 689436492 314383529 547708567 265050719 508458309 897292497 898956065 562644691 723051608 177429243 464664478 952849690 979835390 898014152 981331424 959116632 987681676 942007268 967014120 320679989 899134073 259848091 922074145 337563379 637303356 447718196 902932763 997426733 997987889 435183791 542576858 373382899 502981677 656060664 715517316 289849214 819629109 363997241 555256108 692676501 994473874 547490932 619463588 896652373 998633677 23268488 758797988 831626101 973250914 140148357 508844930 842159979 912183680 463959248 492892230 756510077 947282243 470835950 562582717 941967993 982497118 370982751 892068998 378028032 588029838 232686289 975624024 930427059 998087898 803661449 896428232 903578903 960192969 467979488 853037806 329558460 928527234 536228401 958016707 838061426 947090034 51778798 239959271 85594863 940419802 395838189 448536184 44647499 535224767 776143755 960773308 461328748 798836834 210794863 822820340 894114261 980496659 253529351 396091969 206946528 945291365 784267366 808305185 614440796 988145557 1029362 413765442 741215416 854317515 103836686 610861700 848748366 947006596 734080985 819413052 582262936 935117939 904761519 994931779 411732999 668125796 808756603 893259425 31630646 886302447 124338451 218577121 667469819 748669236 115156375 650134113 974191365 977190290 874748206 973389846 44125809 804177288 635650587 740406987 415033259 429717534 513333992 551063711 512811274 682089481 473151865 498617572 983628990 984557662 425666312 796817884 297449655 637049357 625471372 747903284 204669310 251353639 937392799 985136573 94480081 455942444 69524342 487349172 860969207 920605117 346320828 594502095 270806370 570379953 253339551 995892137 907550341 918851312 941577048 949840512 171496833 375595315 133627579 301073658 523140827 848218584 920083951 962038073 302513162 896131294 551269513 657552723 74635435 76374117 947923008 952080597 173735189 807793584 971494785 988101658 203499711 493971951 942577205 943765813 754497628 922496544 287069208 493449776 694065148 766614090 803362626 921864748 497301539 874764111 743904109 844948814 597651051 993679780 163326980 454398354 647609878 983833633 369862009 754005496 322079073 782796788 609938915 941295185 592019633 872843734 816299508 942231493 27621586 458269288 5104181 181812472 25242941 583240903 822516004 962417508 653266731 725875603 547490727 692732845 455595854 600223418 557760230 685305215 24271326 610675671 341271594 465392526 642755755 935440919 262832917 996112568 67166137 366010683 538287241 653671647 664072130 768924383 436966859 467327848 526916728 902653385 101153199 105952790 664590 775177811 427594952 659579104 997640169 999098840 98375867 138970572 623845166 944870032 659091117 948541093 827698732 904083658 991828971 991875133 45437344 990163944 884844560 986816167 395910534 480712601 313721806 976855523 470887415 674192298 331616561 896814569 732087571 737045261 949142681 965629800 426647074 841044588 109486839 986463197 64578390 195974276 128793809 395207554 390648652 454455461 845544745 995448442 992889220 993643700 463090215 900714433 21958942 859865659 49048231 582999467 109086283 879864598 143405317 498859047 858059794 984362023 93401134 631033815 860699113 917690778 143200984 208028583 922761957 929316793 266285293 765119515 966536964 980170875 69034767 890392467 746136891 801448840 564583647 921976526 223973473 415757269 341212293 439529648 940711019 991145059 142500671 527965643 332722582 812820724 583112973 875815229 275629689 988289444 4143821 384942906 815362664 908474137 345958681 472645272 496693794 700660055 124719683 761020773 441770411 579466519 426464360 595431362 92611614 898241694 42942185 155610995 113005606 900663096 419820805 715718491 981879041 982483578 507728042 584420523 695724336 888300302 282007172 703629505 551735608 810929258 694902377 751236046 765856125 997809343 722415329 982779327 809117251 896957611 710256885 920718255 340320028 685034918 646277437 806510356 431685495 990790203 63522800 288528530 950786106 983137619 155507020 589035750 964481408 978513883 227910672 625827379 371327819 967414918 47135255 70886591 33183480 166283644 428438100 705927299 728619191 805729763 405640917 503496750 125276223 637661200 919625614 958283973 283727405 902091076 201100044 443835584 704380946 958384937 977447958 979407257 398416588 399402633 868111634 989311244 366786860 467391676 796849823 818499897 758094258 779246056 896634081 987819020 376674546 744711195 923466665 987137115 818850219 984627575 151969964 384442949 436429754 712344623 188404889 869217972 188228018 995506492 113278451 783421283 58717973 549939596 550436318 739985247 963217275 981375552 402276784 724128779 146370937 283905209 658655967 902940713 158803176 836248102 188941208 650804833 93141930 474080393 567955450 969697953 803213630 859532492 964093887 968611775 350769692 958186115 637260680 923560736 202109453 554231012 214529242 348266074 560908635 759437526 143879438 856691800 591851231 607693292 80937782 230381606 700378434 829324604 833442278 930952326 65529732 718432446 568852301 954613083 190881574 543057048 724757167 965829315 759459745 864551050 410635003 610203937 852578728 904511444 660552121 737158161 518082922 798379096 54448478 392093308 593404147 828910665 239033778 872760564 588607485 802625526 146300231 209064247 892645752 954771863 911736367 932419494 736807473 751488247 755113180 776624728 273902343 808134446 423657065 586985752 58462850 214365752 991171118 991966772 580601168 611551274 407810101 415914424 247106665 726393143 58742191 324756409 667545962 938544829 688064442 834208802 297854582 890490487 853320114 920479351 751579250 923369712 11219371 277276074 751226895 916765579 21857998 548585494 904690093 925177436 53776927 816633873 319607440 615059406 133401037 387141465 781499626 861622484 80154621 555622839 402135584 915903158 304521977 753795746 54148240 337740052 615119848 789697346 692973422 967296677 23408111 520004796 797981961 932676243 18984243 965909946 803344528 870461276 799520143 962766036 527413158 918957539 430205937 904141053 969609962 994509983 531873825 988219427 793340502 855978058 321879379 389713413 736974525 850789862 473728618 605332551 590362723 844136654 251316872 280538079 861866610 876781703 861725855 975922751 297572917 469034380 267535990 664335944 199642606 861750290 600017805 675268487 981204533 993300680 422532834 720993309 158274860 266009042 887688701 976392897 674246797 918761203 718826946 974630530 126108406 716179286 115485011 343940993 702786017 813359243 698010884 777055596 202929387 845989208 15719007 862196205 810325070 845119896 546105443 879026660 636245780 758195049 20322253 892604923 736144169 915032842 642466598 671381437 403520526 474011493 347677081 835619884 327550535 439803694 134049629 422462819 805074470 945121721 642532188 846679647 387709673 428404881 814695400 839255612 930448194 935551289 873620739 928217949 95671344 780953214 418219509 601253019 398985666 806160240 681619067 853650351 286794238 398814668 359793542 985113841 845703180 850833922 858138283 884071614 828279489 981839135 693596038 855089119 403078611 535431229 257307114 627269744 293684344 335173042 882674609 970269931 849303321 986761490 378977462 853713537 778622701 896238047 639364467 831023942 756236430 854081635 675371773 994033635 894762210 981645990 451140279 505682909 748858653 998450133 895154419 996139057 11740849 814327165 76496617 751762183 82852936 216063292 358586053 488921917 199072740 752674325 967603758 978611594 135378131 430161593 276621749 545473149 928834379 994460406 180662530 287957829 610526300 860996643 316951604 633653554 185822679 204311972 841670127 982908005 283235200 642189697 219818271 239416289 917957055 986433991 385725447 638410082 511752173 620646220 680145444 855681981 223753867 871465541 215681664 583140459 205045854 648111663 481844908 732754557 911654210 962312628 537103578 809937725 707755325 833007625 289230690 744190541 494820013 830383885 278713383 631431864 77571238 588424083 318981077 540030172 204500057 295759270 542010470 793865201 213421121 878865529 334461520 338126784 750196772 847303399 167783695 650622054 842710916 922721970 441259129 962869194 126406338 231089727 825769074 829322228 977852021 987430172 504256992 661278513 934137345 976309271 168005939 447054738 409911149 447008517 229453680 777056369 644921336 950080450 229158783 955850906 601762089 665043606 257818308 321924553 577198444 670691372 784626655 867216897 923155050 992941457 929389936 940325545 742535575 955575201 163330668 919774679 492031466 569217074 25003176 942477822 373481154 391855132 210277190 519154308 330951091 366974287 436050448 983659981 980010461 986384867 63473924 769227512 86015018 786678907 28988345 827324777 143637316 936175864 211506882 787221708 650674417 687367109 423808643 758616943 354050994 864274494 600667695 717133585 117260023 829521557 920766065 986104540 144516288 469749871 317139036 580924234 366583909 552015574 861735048 953960143 357974754 368959459 243794520 961492924 83418365 518818549 340775986 630729984 447610358 756562869 312965457 316229987 160843297 870582675 473388234 521955965 498714303 716361715 852364815 930236380 766333352 866483011 225099109 421925661 787253296 829571627 818326017 970373821 34598386 110309055 785109331 910579046 648266603 652609375 618386507 710867357 656186774 863016147 209723928 210047215 217415873 341934776 10503807 859964709 470029104 772138110 124198685 769043774 167880556 522195119 799322477 947699992 424573532 703832753 383192313 406745759 41473654 130237722 866133124 959376652 851584243 853091685 107580963 408899943 798469663 842547648 301509397 930644118 103719465 155275578 459920333 689780362 920159696 948217540 807061149 992641902 769240906 932526585 589222513 897617105 720915427 945063990 762840993 953065482 392313043 669355899 34514558 510733676 776227604 789187027 147332097 153543278 166813808 197607951 948059322 985977385 969622184 977247828 463481761 557018658 990440940 991716302 715528888 863296798 252086042 626483125 869197616 929483532 94113878 261287909 393035662 964694160 307078338 606302563 130220708 710977769 441747628 952703403 44947124 779693370 902915048 975493758 52905246 522755413 396051531 874542188 969537273 989358418 875687913 926981307 891300813 922089168 761935282 959112855 404637612 911858979 928935045 952220959 785399054 908296226 669854484 959969224 301917615 887075126 696849843 912770756 693717333 735393270 810536179 977789870 912150748 923459250 959942426 981614660 155889735 215145197 185422578 408653541 522646784 608890642 50725874 303259543 868450779 975960588 804559966 940207584 202042900 220508155 924398638 939043298 616710841 646744871 117949854 288695006 589278166 875305144 243030935 255935287 668332459 688688952 268702201 908420128 260868114 445567478 777977551 953723773 320610991 998595369 23594417 815058527 594529035 996505305 658866424 748977272 53344518 160265091 294597332 302030125 399654036 470104420 266548888 738707661 811831563 986408831 574611507 788107484 204385936 630846195 724581837 886755679 16693218 113539486 827561998 926089229 458669240 949851378 165151631 905619401 22505785 345948436 806909438 851413823 224244213 256497389 787378424 904286142 208062440 498555384 351000999 495011993 623972601 914206040 435661635 629658205 896194259 960038630 70340243 123683419 279291434 281055004 965843512 981780007 251074568 271567200 591144633 806333727 842521817 969333628 953399856 996403589 912484876 953168773 76495018 840124228 797436283 924025783 73662911 772954093 760847103 884995701 276627862 680006229 535732362 866565233 897200122 999033774 719144637 902966929 574520036 883499737 294392003 534094092 85599135 659591861 736726552 877619022 332975306 906117051 852241900 853136144 239160894 374211779 284895447 670723304 581515396 926814580 766943098 983518329 849228121 862214035 977853424 994225035 217332522 738088646 433039930 512036267 749136933 749313789 871068583 958692478 645849527 943290555 981981827 994851271 867479976 917220301 517339727 734103553 854526915 933170491 96146132 841024191 687170195 917196126 151395060 312627018 306069663 353434905 647313495 924501756 758198306 780371705 603819793 929747338 245004540 461729221 786660685 836737801 963788056 980388215 526084367 811422474 916203146 976841869 202223392 454710680 939319370 962144837 780135380 924990803 950776169 995924394 118753332 289277929 128939011 879603737 317746472 549530759 910636690 962142452 330297043 652828013 193612715 640659847 440736102 987315502 155807163 422849939 905746298 936478998 871619922 919708203 945769612 993039792 358591330 852628445 280230870 469426166 628436369 819190825 302989758 788533412 597513099 656738088 917300662 985157016 949082422 987382449 856175111 939470775 940858374 985796105 919339185 996163896 710262452 928034101 771604066 895799748 114205800 310641119 127786633 308892696 470494896 866955902 843885691 978077555 380419477 562931321 337652376 381691324 949958536 979588770 249433025 454326727 637308453 789026810 968115993 989481732 90711151 408358565 145125087 322511159 481917319 574963694 49133338 516638412 910495303 939670012 422376029 743715125 993957635 998644882 312023851 668535568 577417456 580282194 304798458 500635906 263315447 562853201 318209575 737821653 631170363 680029195 321404871 559290354 933501511 967780094 185540261 939920362 400174088 795066112 466719369 909872826 275279154 528126256 867937352 906472296 702082920 990530528 935357205 967239212 187444104 235566507 363376952 682177247 494934177 770040705 578572433 714722026 93116549 694792613 984950226 986460070 407880526 994700655 370322283 472194274 623881013 933805715 701165639 808474396 591461455 629038685 634340542 808873410 891566044 997517041 872583947 965481100 826671292 917832685 336520586 703052138 219951556 345807987 972433113 979807221 309234113 707082426 519995890 573158017 812031460 920748902 881203602 963055985 702420211 743128264 40915268 501910287 858423155 957436731 735944936 793833797 660849418 784688284 181548194 462829456 218886887 264143807 487281734 496101595 85034077 158523872 653621921 752063227 499820875 693542203 814051704 951768324 688470147 940558982 150020563 474718616 438110133 977010828 536788 696784616 341158136 971302308 923645362 987641013 239780756 534135121 528520248 607028035 657948962 722474391 774654258 841736528 541303496 992646795 926696377 990617624 230931397 534428189 992289050 994532853 244118129 648928842 552923625 648107367 420412355 523472360 866979772 904036470 32333624 318287137 376756789 910159325 982497041 998937472 650515624 880949876 248742476 455363018 284665182 388318917 89098654 713067420 361882352 974138369 85806165 295874217 461871470 502706593 639095737 640895390 121482080 801381564 170673471 985583728 38129157 922055169 687256628 930342824 729521672 897809961 543940860 852032321 563896233 667982621 854978659 972919442 437900053 834844718 199193087 529576576 414050772 480961309 193396574 850767537 131509676 349179893 298850832 676704137 534700053 900525008 298692163 945316773 266881186 508968069 872920314 998740922 896150641 898738666 72115320 856464168 155291208 412763999 617008799 684138792 91111391 218853537 201819384 765134982 176324839 776569301 185543212 692275323 55600384 731711337 85893672 536231641 637851410 726643394 29810253 307531972 962259457 998403167 609889915 699696768 743471291 947612482 202080964 545206045 872465793 990737734 763648710 807123012 294304479 453788562 137167513 773981831 706723857 978761112 132846055 712254360 512793409 747256639 582238412 596135145 151414111 318776726 765186159 968261366 510303135 652967794 818507498 911146573 627554932 972388932 131793450 205485575 37641694 919750665 882963023 983870711 990267258 992347074 618673002 800205918 915777217 978098200 204601801 555699580 42129151 625407105 93336802 333698525 33459601 282913919 423044728 796082323 793921638 808738588 81822687 824803677 402643956 410772550 795509134 994930304 365306698 853151557 183934686 360412619 838983545 951544128 863194942 943979595 822520811 937609545 236923812 585956152 532009995 849316704 436829689 901401855 595648064 770415975 664047270 666915601 3787680 380198953 317621260 743888807 850938281 989162064 179761051 180024613 349821991 468300191 296087143 723772131 91631587 755769348 594004103 618157483 947961805 992754777 116876308 218371457 706346510 912770785 781201137 852609038 162635844 275741713 691520034 820714625 450483373 509231589 942401476 955290873 748226948 866462164 827007207 870474347 876060508 891252323 683863414 936024289 271861538 326738646 535627176 706966439 56319417 911222968 74068167 105378507 289960577 953453732 359143842 366287076 499567760 776808028 401275579 589393396 913807682 935607075 892249 729776064 657654291 953300761 142573370 825601455 103296968 372270621 217436936 907545195 162765062 353490609 829739081 886442316 492139431 968677847 95987107 974838963 31098779 963471143 517567096 718676840 35468645 696464389 516706603 874736805 898837090 954726483 561007795 908705172 981347276 993381462 397799207 732321173 740519218 800394604 950513465 960289720 195083590 608836448 185977481 779134309 814851037 938313687 728853898 953035359 719829753 957264538 931680021 981623719 584389127 809738208 138366281 834944712 701120140 724985524 904545945 987755568 599851660 856005721 840078522 913914018 804843969 918450070 794602535 946559562 281870825 311945799 113860722 398189452 955363496 957430691 618842750 738792817 656095864 859890943 240514438 888143199 222444258 500118540 439770681 760513128 302086720 645500913 468330567 922668194 903967618 964672894 470273498 850362772 166664262 433960636 504461638 792874466 987144165 996994491 923579420 995774820 315206923 585662302 603822981 918401993 994374985 997798447 758407322 837012885 861747660 992635233 826251750 896115885 280235142 337306293 510122435 885150986 717082945 975946621 227451402 229597641 283755287 935752636 815120326 847427111 285256317 979418825 263998356 834565885 666353979 833945582 47760455 87206919 474346793 869116877 673043863 896979656 989185003 989881675 443083692 480448254 639199716 716564052 608289236 753388131 595568466 597914431 485923929 719923620 344287148 632382929 914204757 915985095 438645092 685601658 74425344 875462565 405217755 824443282 601689147 674034388 385917432 984507845 444686966 685982787 569716714 615826698 645894277 719099592 451887398 588707805 61007507 108106180 602550438 701376255 77914743 283125267 434578248 735123831 65287759 946140209 328290966 980729836 359173306 662157607 193112349 505612595 151746733 295275793 511097436 843709463 883413367 917919656 143669469 633838997 501726433 920741091 285080310 464118303 789439499 807844591 588539024 743022299 390050317 973287344 675104700 863394588 792706869 901774464 50522749 921054836 231426528 249776759 1208209 990379979 674542883 964701588 25520014 294548702 964088810 996900425 433786567 855828518 557100528 563263066 831226151 946167853 778232813 857201240 507522839 789412849 501776176 867943950 328597271 772305567 101401752 637146967 857287916 872493655 392727232 972805843 888594306 936063960 501515910 768706910 692931881 799683724 32872371 303712481 114302876 734331380 87827877 818774701 253436017 810658231 932529425 949760462 156699573 320203150 72142779 824481194 282824739 413358495 377975679 599623725 113728315 467130742 13364325 135835488 249417020 304360166 612308871 795362097 709255668 869724462 681368437 867925026 435616447 470349936 373438545 413962298 896055881 907126166 397456460 955878656 984889000 985573964 935715781 976539050 410222156 867414135 458081312 522246272 816312002 990349089 453652758 643568264 795060485 797544652 60341704 344844144 735339407 808343348 921733110 957848352 360043413 402862618 870773821 977535913 561141593 592403596 258235599 264612629 956625067 966274028 999001220 999268027 124095254 941611902 145877648 977644678 961649365 981218587 158479077 428577386 779988380 930666314 664108261 786877639 448061426 757405465 817982569 899963240 491899419 723341390 640125825 933530907 183366657 585557495 908285976 921423095 804721649 982471683 87031329 405064221 790794325 937412480 104174964 746672364 669109796 679365041 722676906 823978570 270113062 884432658 165852269 476062388 567773433 694430265 214719279 525380531 921371907 997594252 671218431 986995823 986446349 993170548 474772180 988003830 818366264 845725195 6907722 506434499 176483817 634337725 459797868 788621400 556770606 716534557 836056875 991086269 531345787 741801675 780534349 977839029 471714212 909424998 373716171 596894720 179146736 988684572 283195383 345725684 830204803 971369215 409761655 591355962 198001774 896708131 707208568 978246462 495133043 533334265 600377665 722374651 796651984 844667057 993768547 998593883 241996974 923022540 468521610 934746019 409985558 673099184 59270303 971575163 471441196 826231014 175774603 835114961 655820262 801904344 719669038 965270778 880571555 963958882 481548434 928336281 421973002 937646468 744093863 954279081 59683192 277075922 443884454 591537760 357951154 881129281 254325626 295709366 420474977 541818190 4342654 268292821 769569492 961489524 359585279 838782786 101082076 924865863 32416008 852041532 587549831 627689610 686558424 775837017 893003864 975967750 137550473 582872630 427499725 788993128 411739215 793550930 875432253 882128998 504617538 870682917 283430478 477042337 82450303 118088889 472845044 952844687 770924527 825820634 439224506 654042208 440772613 653978170 516470278 590427644 803058972 949174006 205359022 548455661 537481619 677523341 659648688 924405154 534418198 814996793 963163936 973546160 734027967 788386728 304240854 706406305 311024488 532097035 606242355 648466661 27297079 45434751 597644577 626186720 677732842 979861114 758817878 772007091 890570973 894569213 9367627 189426391 780579138 798179018 13874057 495147905 977632468 987020960 674240049 980427156 305042985 582836789 753326639 929309706 983398171 992717006 447461976 469377786 631635210 806187817 95922154 867569253 576824260 899014425 223765636 597268496 815607178 901721826 598220076 846078028 623912348 929245420 114942839 395585865 297133735 600907998 699283770 971379286 948271687 996593070 164073795 680114770 72037189 972989250 351527442 604729223 259395166 690662130 395598308 642360951 382055223 874707774 73516971 620218025 472570842 559189240 743320326 846135268 298352099 331088488 799960903 888255959 567515089 853359595 993362060 995221612 81403133 458906903 537025690 713399867 20404817 94218281 668107010 920271845 1787671 58016658 982113530 991437960 992112306 996837116 929896181 939189023 142546853 799945207 82718052 633385364 761959248 805441086 600984241 729634608 953943147 988840898 98571902 408695133 556525862 590626857 415208182 851727587 642807112 983480950 960997007 968996436 985640200 995990288 530027045 908665693 776725266 904026097 333474965 398679122 478934414 740468368 776394712 965629262 848510982 866082186 257119348 454113270 830254832 952233287 247151716 954850514 512490896 986848402 315314506 865072694 848750093 940852841 135644692 340390605 786534189 890419244 676878841 698416556 778245994 919172689 124431090 897549336 378463681 713181984 416538936 501910240 638034782 686654449 183909245 853709481 148683363 436058381 441784460 464751232 57522587 512597110 849704349 875674627 964729164 986665613 263844194 954831568 844124655 899669458 810090653 888389259 227469706 565917615 10653798 509845882 876137688 956797438 235222997 285561870 393248962 573996628 857008939 944094926 460371035 626323636 442261171 875275687 37286620 67447790 5322088 969779096 503336534 839555739 39652408 827909024 547601935 998535041 622103904 925152530 420046365 844968727 154992955 382530177 408388113 493042081 663400912 885966434 575795748 926891872 212199179 650701336 140660762 302828638 812652506 823853052 587065417 596883660 966360301 985626639 947604039 997929973 224250853 395176878 482921799 501963832 857036484 917275764 753010058 811686463 838469902 943144001 557366090 858175831 898896358 915386616 968772102 984382583 744067527 857417852 865376598 953965630 923335507 940820087 327311706 347212440 864194740 937878267 326321929 328287369 502217282 856818129 678750211 722356111 529624503 725936999 748698096 998028575 59986563 820896740 444840830 475484752 691960682 794784446 146549298 205363257 933000620 975313709 188456014 742580258 74077751 353457794 671158759 696194985 885262479 967425745 413616399 742654136 752752601 800049896 358788453 559603344 925212808 983821844 249225093 551638343 554450288 726671171 704783092 862462887 870988139 968063794 150665770 602805663 456093330 595816063 349825840 715197337 96917449 791589715 428328010 562176994 220297605 910276310 764512733 941454902 644969378 930509308 162153524 627947895 997545483 998339316 738068617 777029618 22092688 463450599 242563148 488330321 986738103 999231023 604721825 906772059 768566074 932727226 559961965 653459533 318365819 912253750 926782959 940205672 29958623 71145816 832550865 895684351 663418099 862611301 147088106 596974609 508080492 720748234 226910679 817044364 616204557 671882914 239862214 389250042 976590275 989565741 473332793 478968835 210084558 851902966 49181850 756979233 102189578 690153195 203437776 212141547 144475846 782998856 645277909 953217565 193267165 465556010 693833512 812781147 654941147 763888082 919144601 975016849 563698055 933696751 77114507 235830307 323615437 837050032 619592955 701660035 276598540 512267477 391983138 638532865 946596221 979432548 951147935 987920703 249900193 297922009 753940580 849586641 1539693 925257242 297144406 760573075 104094027 882290876 507627250 586132619 208799516 305456025 675491823 847490204 208464553 243110371 157639737 818267357 759731722 943604390 27067898 599337570 834743231 974064963 947062900 963798603 433454062 689700118 262218380 505759838 409570174 448049263 486285544 572772114 469426217 798047902 770117270 771851033 975251 734527884 764630319 866145163 118180570 347652050 578928578 732452423 456503206 665793650 56113164 882019783 350011799 538244889 825953587 877342709 943490363 974635993 985756946 990826222 244574982 484482654 8561675 717210651 828790822 871719123 512117170 561996406 709433623 947925617 639890871 965846422 693591666 982339986 841246957 967247060 228181409 455967712 326612337 702589917 187725837 933542815 175869063 624055041 378890568 495920656 39643234 832456373 962358423 994687140 197649611 728535144 283226451 308708939 148917284 821717808 77136227 634885897 43429502 356265443 432105215 991413941 274089348 442306442 224689172 401607332 548827751 591945255 38970679 724512337 692746534 697813743 916509145 930396999 207568089 957194604 768451505 884951353 224155092 315418780 38195449 858348527 764355027 890422499 429757367 515199911 649593098 930874395 37404133 390312718 55766312 767161492 903015094 958151323 733496374 871142588 855517416 887604704 420973558 486008823 290711524 650658219 438502966 442225667 703294963 972855264 324980532 944493340 456055347 461778231 676481673 846347511 78365122 707435915 651765164 689484038 608410621 652694718 689202046 730052672 327379360 646706647 89106831 247705839 661888168 875606765 933749992 993091147 990660281 995180350 19657702 462258488 368660187 430881368 134992196 712288791 853603605 924070353 991155705 992281024 848695713 916934313 869726759 995727818 327922597 981851364 941475267 949828146 402898879 603271101 975261251 989146260 872791794 916113405 155682138 368053602 207485682 607850711 280785446 682295583 174661736 584144497 36510559 666343702 135749171 807100031 559711761 935583336 317626276 909111346 983921354 989545649 453734558 537331687 891435665 899346242 834786585 985540462 394757369 669692893 244438745 559125342 741249687 861879312 566645594 659044735 238434806 653698082 242016844 258881523 545132782 785418523 36437776 417287357 174133236 969299257 952502928 977924099 867258482 953274025 259106950 791296687 26858135 201928035 859124161 901628238 621225990 936040570 111841925 869612051 98942530 404758367 202363995 586382027 442189536 661039602 536264107 908061550 949657603 982744823 745550800 905706464 659198318 955053457 104340612 902815179 570961621 750105402 210402093 423766258 47896739 825556866 750511706 939314141 289049942 911302316 350556686 352212924 875588666 892718485 543589997 877349662 139727322 328174027 93842717 245378009 767345073 860760066 611564785 968985805 97984015 919765032 260552674 601687702 787286466 808969005 469585913 967592497 179894010 460732152 511628330 652053875 921635634 948725475 171349639 914356236 690184477 761183551 965771082 966057358 146368684 867426155 894873137 993366353 557159430 576147885 622903939 673202942 988780452 992866480 535113456 622830621 673602616 733612663 548110944 627166590 925946199 989437388 362033764 420249221 147431552 544919138 316190704 584353430 301182618 722255095 223792162 652664849 893073658 981009354 803222455 991294653 337304209 814182491 560642343 709062937 600870300 888996051 519661011 593471209 955130965 985141359 709100858 935276348 702434799 980258195 887474248 997610968 305202003 467854702 888903616 997497084 905289660 979964821 905888712 931707267 20664903 647301396 579134551 741311496 877123626 967673173 413464637 452897794 71826918 612533146 535047279 858669182 978083300 982875540 285710719 974879098 594744914 918543119 368127589 540001342 912440553 924688733 939322797 956852363 559130772 988995449 550866022 850706306 555023716 563890960 778337944 865543935 228044945 618119746 778664956 850021341 184244492 331539921 83338539 434093871 770513558 821378842 228531813 487948944 344341899 833789820 459127542 747462780 236031522 782952108 401465973 466143150 843202203 914278766 684481692 784412169 524093471 596779513 492551144 855585822 442784014 839058585 704204877 866008787 725846020 838499234 12669788 801308891 994681107 995263748 623321716 975236718 381088420 858011328 433960236 910164008 443264541 485234563 610611729 701585085 452436987 550630042 341920940 451224664 211319410 703300235 476265144 928360499 588386560 624156445 216981427 891724732 449576031 861675028 144529974 197060394 974773041 983964059 187900123 269807028 819729100 989677267 11011497 829043689 773087964 998396912 565990321 608382152 239385235 502231122 912165985 967886462 623655003 875945797 369116451 925367499 629334196 927322203 67377973 205243298 660002402 960867084 95617116 486303295 942142360 950122560 88781742 706490602 652610101 811484865 728438241 998297496 33649776 555420296 635507980 949780058 605518229 683017883 301624559 782898124 641125516 919234275 106652316 868575669 459451182 964506684 295823397 334354922 821840001 884503498 99723176 531809924 347597207 376945309 642930139 842297351 936508606 943313906 11028472 640592198 205750720 837220004 591396888 607667139 297110324 558232237 163868844 233459017 439243376 622596021 625038214 688007545 474641317 958004590 188841463 896300650 270202376 597313090 981879534 995697695 368472683 468425672 391194943 605045094 178782089 752659894 845621837 920023936 595986050 771757684 819262770 968004695 880666794 945217638 977120099 983139779 380405787 449016598 443004285 752524272 345118155 827052444 416832080 537970534 519117200 666240259 111643435 852169724 54390237 107003843 614918812 730330544 42989158 866987232 657605826 860050935 771590039 999007966 531621913 904231323 401776386 774541423 487086308 637756714 401007861 879326685 562085081 577514713 44763785 990519213 538041669 774620912 816878246 929052676 247097016 271483836 902455137 938540021 713330366 912955781 914045383 967794426 528301932 609826565 242447900 269066562 728094414 800902813 715117304 981175009 47394315 342066953 993178931 994218292 475656558 805082457 345577801 792880896 876465495 895323788 254954474 699514538 466282252 948825647 631052088 967348539 878071800 993465686 100414101 315381211 681740929 818440985 48121836 190998042 732528299 944159752 761938465 938190555 938731419 942871648 321919296 440776766 581118577 918541249 411688117 548036989 538443685 646795126 470210706 510067929 233608087 764157127 380403887 765653842 793581844 950545574 718868937 790813514 262920520 523938720 539439090 688054105 550540478 972676128 469303324 837303713 397922889 696121100 785980034 863039791 459916682 727372526 102713698 239515710 58155400 802040455 560490211 684505979 311284199 961907351 628379404 798077218 874658303 965004806 764271890 886573424 120516426 310780741 478646952 737474457 776775570 781113427 633633182 954379643 26183821 431565278 437647080 848568003 478151647 742671614 158537585 701798735 655817829 942597804 420595702 487863238 919903220 982675040 333937760 695224943 188244357 624136839 39585074 226531171 247627293 440069627 667622363 988650108 33941450 545425193 588814197 777065893 567986455 688303132 992918434 994871849 886170491 953341107 848429782 956672067 485353532 738904712 597928437 964893074 846030086 896571691 258809351 729458453 631490236 984103157 926559625 954732848 331721986 570472710 653756293 667755661 393242723 882847253 730680546 950728321 563416091 776520520 369279516 726778834 241451370 418777170 197660954 572163314 888842194 952256410 924567242 942017418 922451369 969730242 119481017 633540330 273138233 931597640 265729810 932654990 182938135 539002807 826202599 998731174 347821215 468936789 772830736 835841451 814826411 815269103 523150362 576324388 267922220 558219427 622100503 989934452 387359481 716189732 504756012 909571076 765675314 826119987 606198084 677593730 907208577 963639368 795917509 800808449 196181096 878277281 753946689 890666827 358630534 870307439 858972528 893971557 252008375 810668062 86574277 357867030 290852032 995324648 143074134 715522430 617795867 848714524 129397523 388327667 347385149 834938978 432915835 632387694 601572636 970351854 44659463 651135694 626046709 972239370 539591935 560588164 827473018 981678167 857443075 965652672 657681834 955086218 564342328 771488537 482988937 876865406 477371461 721437373 731032212 811640731 372371513 953817105 543600720 914460948 175374385 752837549 905397931 971800690 642957511 698178265 842994123 907525243 167504542 880212563 239294220 581967309 778623029 779873729 336070619 909560606 735991924 829254884 36142349 840318338 127934706 347181983 849991012 976208714 703261461 930145845 628052834 657410280 392010202 523644076 523206860 556380555 582674433 688079959 259159166 832922970 611556357 990183475 618858073 672708820 986156251 998305215 445265915 714697181 72074122 357527742 906587121 942588443 148736085 425645182 972827663 984625380 347986406 756066519 262736051 775145523 941453973 994823474 24012507 535746765 178526809 527651370 628090910 986713140 325432543 546155461 860302219 898688323 861984653 873946232 424573617 972684702 389027834 601422280 799717611 854366194 2804819 72818853 142850159 461464819 92772568 682086103 412387288 744374246 723156333 821032394 129877945 231067953 148195967 385885397 872208232 994986759 357648021 403700310 5851180 21694814 176785946 400037285 884640262 927361796 281473677 916122114 217689042 283506801 699754750 727350845 194386383 391041592 993854272 995590745 813312705 839584008 239908589 691794495 603163438 797627387 102834964 715783138 466641152 474409440 70630206 736361820 901075696 956087530 317983872 915059721 454979390 623239469 116763302 979838304 926596036 928572751 531770105 688550621 127433415 163385201 542097441 600823271 215352338 958545814 508419780 651953603 413356133 652658059 844210185 939234580 496411107 769974335 842427954 935875151 397148994 572155404 79118528 903547566 415132073 618903507 646602071 926743658 98507006 849392933 691999039 935945645 605947889 991559463 260286591 587881828 882155964 955319575 412042634 468804414 724918855 952258277 544843368 639303343 897309656 908136395 205742012 593387950 393371896 881876697 257313709 343879451 532909653 845071533 125412571 795792520 961094808 963909599 475374321 777173733 312068814 577369487 556912843 735140206 854404633 934673061 850980931 916108571 173958339 615800147 602348447 977607159 568062720 875156983 702592484 862251230 439709206 577141977 318739004 877615899 902539846 969835696 939891347 973152934 922123174 926383160 874485137 962139867 335798781 473493546 332397885 729256646 119267476 630539680 718406785 979567620 231943943 737030571 972030948 980906568 764015785 976550326 150361921 721427672 873927570 981283202 425227003 667381730 363526188 810087916 792919624 831227791 128131002 514721868 990089237 991808750 650923224 685449476 887233958 936697585 378911385 617290405 754869306 893113005 600033648 917671104 294121953 594001598 265027535 403025177 172846213 514554723 869415510 920992495 321926322 622382718 367363205 466121187 337199560 528817547 141940731 313030011 162054026 420689079 105620098 329506797 316233313 577297290 578304444 645643080 726076436 836432641 903527574 968732225 937578806 991133696 26312929 221483129 610573673 616219994 959725564 977947668 385047839 916412861 871249453 940822060 225147552 419347195 729077072 887676750 395373259 941526977 584589074 820133582 549905711 568097082 131706462 674288171 371793831 959015699 504648455 844941266 182988518 892640109 468375860 481906630 338775598 907268657 506257358 715966285 983328834 985834903 710587894 738131476 625941228 844349084 654869818 802567899 779306006 834719068 271935808 310367660 624370454 665672556 615932568 742061617 778880161 873971690 287919649 469958021 162234316 806771911 24710980 487315804 635036960 666053723 187682655 706232427 77061736 300381043 936825503 982470564 485306441 512973531 866434266 992256598 689257535 889407802 366839310 948724507 949763013 956288702 766915393 799674977 435285349 747356443 453602550 678258052 585253190 885372841 311863499 814117030 163285924 946670945 786962024 921257377 527706629 793435124 744456671 973428309 924103297 997393849 203866775 864349963 199856890 476813849 412584134 718535062 91170019 324345748 458628082 849326845 898258700 904769984 95632296 278217998 928987970 963280988 438505524 950187734 15429263 337916813 322487127 925861900 293812139 868018511 514096654 803102361 439593517 988566486 438389347 818358570 136664618 481398647 381773450 610917745 719423485 894805139 241570069 248545343 270951077 912409592 484001992 535514206 989336609 995703656 76666350 480186658 185463719 747756842 552832028 980117554 664366406 812960551 830302009 998158887 841263066 905037368 699250571 828318691 96370063 747417800 866547876 962974620 868499235 871270510 128288577 780885513 627762262 787104896 753590812 940776191 519152696 724313815 100705461 548364966 356690080 639302994 783376750 974632173 816127069 945074096 514515730 961756938 936334924 969428353 53311893 776626802 418993942 862845759 652899081 798099075 315295541 744533123 429549946 831730321 969816952 985888033 641925437 798314532 738904262 889206063 518607482 743122768 615208839 673344861 348530155 963622913 204645479 320826753 51384459 125330126 2644992 293617567 556671491 584452307 543185414 560873917 173413139 495917037 175588719 175819163 198318384 400349493 619759681 680312751 158528652 227172273 904748794 987700485 663706490 751553152 145055178 243874171 537616385 727701381 909343679 941532827 499080896 677203303 62219453 846291906 992147960 997178397 575917486 789895410 13137318 714377373 981759874 995541551 224904940 313831461 528408760 571472416 386273899 813851074 301020503 991297523 180810133 950935678 507415854 621148493 498222916 757097698 743417880 894227620 786341548 987202481 143790674 704787932 248347936 700837422 277593912 561369783 747507421 818058662 332685394 818079259 874335148 939492441 91570040 139501116 553262006 808984560 842020933 936063527 658925336 672737049 656030695 949239571 278083060 392521390 854353215 990476428 465314425 649150794 379145403 795593461 408383431 522410695 487995027 845088327 171201393 181725889 360017827 724917854 455257029 710883512 199475473 485091868 866132326 893599770 59104916 883105101 427492396 818524395 415176380 429969027 161321906 605116890 224678581 464364164 740820010 900077652 600681556 754573320 342396419 689485910 219914282 484909000 356887868 790084788 391733102 749481530 898138505 953107551 172669075 299205459 498883192 542088846 617080933 877910120 905032532 940211376 713615808 923520638 157642923 886575811 810028226 902999825 925436911 954735017 145909594 525936003 695963914 923657406 438944500 933888389 881478047 892661208 459570892 976082926 278414595 503111007 70631709 927692461 323538711 480790929 11372979 103232155 485579561 660730139 850008809 933519836 993341662 993807813 647646127 738654866 238826335 883218305 171001964 764460776 857229339 970064354 612100671 773597610 377294528 378729600 662098301 738987621 778642066 805727515 827289274 954413451 349007539 528729180 925253541 989939775 648452694 953990470 648379079 873221927 897516806 997962274 59594222 250356260 197853153 438417812 181636470 433026447 226679446 768591276 625641605 847732044 850241385 972026809 783642393 895145146 267263964 457765871 937152336 963223221 378518685 532081863 731627098 851583321 946121356 948254677 265627940 873481596 295471798 901138877 929372997 946805580 399321204 734044971 910069253 923651980 794687133 993178287 846457478 940268013 277095469 495845219 646005403 911945988 953971960 995456181 703746922 934952974 179174959 563733559 214275281 645702193 988024182 991332041 843377207 853120277 336345190 789120484 645562827 843474459 442660431 830104399 710234882 767834718 449684966 450850682 147396194 846515950 245205613 454835060 551345570 767621938 754376210 930002207 958004737 960252582 811301633 951371223 525463053 813249104 355801837 459180102 59630051 670750793 55588828 419990364 655611293 764538166 537949312 591262839 717417793 980036669 702681057 815950022 995762381 998057416 127903950 522541133 385239545 838041101 770977257 839976893 957548697 979934010 931315682 957953560 326914604 701801089 821212152 947878019 300601246 573929393 679089828 850433155 424646760 902642958 583325214 616403451 871420200 905187433 723272999 995670045 325399029 383274768 600237930 638623110 94319881 875609635 701436487 770824350 983864163 983948225 690636118 817040936 82034787 855736345 21995142 25186258 741245958 936927402 167884614 446539765 97620634 184068007 644501679 903044042 66456120 945847603 333136101 442533239 583572709 659061456 254608324 891636315 180156049 362200769 468021808 639566097 553589484 963614882 981747781 990681270 261116240 263059184 48985521 247030503 439019189 789102773 505471111 628058100 985989664 987580237 237583606 612007876 845656231 877782281 834374814 991663142 486207578 500843704 171320909 457582493 311321856 857066029 220204366 290249070 127726710 335041529 763554227 809640524 128720784 283327747 299799354 352491439 808509539 944926421 782046573 870053580 13865319 800827108 153934328 392531419 42849795 456923089 602969558 916627765 434484382 529799398 772318888 926600005 859757879 900635498 398005433 602002715 632452768 867282710 10227374 539064525 460615808 668062005 593354465 727437867 856785045 953446662 231043378 644042584 912576957 916371089 461863828 585758711 877037110 955075731 746189041 959663956 162349608 261991077 846667810 857078112 836284914 953096427 994458481 997185659 991913205 997041267 984482536 997285734 294210697 812517519 701732875 881431737 835873489 882887513 792208312 918426627 759357113 861074370 453899660 500286399 527735409 833675069 650401451 656863281 600319485 868825123 4554152 41069639 610454379 881827852 401130339 528430547 242301722 524095733 425278 314977169 292903547 705044688 477934526 925574497 125692900 818993052 518766760 859953390 181582057 566951178 939539153 953526926 836627857 967446785 309977495 722104011 457651655 464722829 379392798 454575504 414336227 494712117 310877102 905608632 442649869 882952537 417788863 610697698 281426805 398887717 385815663 682128167 225064522 613104802 836102635 889119863 808591443 917012745 931409905 943906933 723281936 854587945 457917120 547997438 446863766 858743091 656766295 934547693 37262257 269194462 591088005 674940833 395410868 651470620 255218080 266915485 439669987 826382707 410429385 621206672 600242848 825605894 223583446 705273881 684013046 996551133 175438267 690108924 904867793 997223717 965909293 992204710 168245927 599638939 241696907 638040392 240291751 596361807 937684963 994250377 348041916 420460560 466267819 770646498 122607916 865833020 420465968 843544127 41392018 680547690 128058185 976615565 105839068 392066673 845691806 904820080 489901383 846590976 784950233 836460354 846314134 925531511 194885913 785567280 567935950 976298466 536529317 590152113 393917422 984992141 377168719 851428845 287702199 516967216 915420814 928561463 997093721 997987052 517365791 583025120 322437663 329977722 439148915 890711054 845959593 978744278 351745948 884268385 817175763 975379794 372973049 614932399 512956853 857281982 666873769 802250653 779546832 874092404 143185208 192787379 631585410 745510899 217182051 423013658 833905886 956770250 256031017 445667340 475693851 831123219 211979486 451441229 120250910 782605408 949706672 960344079 576864595 705696399 286876594 903791620 795662371 860115690 333183566 333453631 666847291 991606224 654181332 870175802 90959183 125332491 288338724 867770166 839381022 884339774 923410837 961536609 709458388 994211236 330693182 866743688 186582958 528543075 310180410 534689144 661989254 959865701 650707965 845129246 331806481 792794537 493100293 779655676 295306309 557379700 68419344 430398152 555185481 979017324 798402890 876889034 367269684 415233499 830062338 881196573 374139017 582012535 497222288 524312911 412847063 534961171 834665931 840800562 451710075 828149991 988914413 995970507 160943555 562323460 662143848 740422631 179302699 965254756 258500981 949451059 370964802 871567997 527197987 891669252 835947479 915388571 718767843 991893672 797633085 878044999 311489389 482573011 621925752 895623601 281091905 623602174 483732502 600995647 397310071 475510030 531100606 636463547 475605945 642440264 694205244 733976791 713132091 775375476 698719948 769297839 844426009 995435156 798729011 950976917 257172129 985831402 863249456 920824177 992336459 992935333 514898115 917626689 506976143 993988651 388057564 543503008 610297643 870280518 696609060 835181912 668920709 696632558 39701928 824736611 380356778 853312140 132816757 964849743 610630510 904211359 606493120 849480223 383396367 530886190 427631329 801343269 588659443 686337610 233970123 420961096 974943140 982797390 441179215 884050375 110027659 348593556 767154524 770675574 338108236 432666419 568842911 969042862 361514656 710944673 114015479 908202407 252343076 981354864 823449885 953100955 591397862 688810548 251232321 284289309 865910536 980000785 435938125 504367616 312647238 821747312 84813464 725654333 589078980 979687464 945981575 966662944 76758144 225040445 150474979 842606805 328748402 628301239 968811449 985374884 974799086 979929753 188121856 309411956 220022738 650226609 845355683 924268493 943001480 979684269 916512529 927427524 525851027 755185488 989297037 992438690 154908665 865278823 593198921 897577774 579512385 707238746 812072482 989577580 891486953 926198333 977973721 989760400 507497694 808247243 898987231 949495127 854578988 901239843 1214631 473789412 397637432 844002110 383019580 726092258 659378804 698953249 668799200 937699801 274891433 783665971 252322119 704336145 337419253 351095168 269856035 301330429 775524706 793668096 241389428 580039406 114333584 311880211 461285598 770734901 581824253 727871357 915498933 974384789 692391262 810621244 511358914 677904233 880150967 965187151 935194163 971521773 646286251 942301927 940424317 944135508 677198789 721646610 585335088 928626813 319420652 721567820 802859934 916710244 318764335 458953686 753123296 785487607 553861716 947723124 216027365 438149838 891922668 906430703 149976469 611198865 462151169 874022816 322522640 604710996 25426769 939186073 296987584 837732674 308619907 365605571 745688890 988971983 862296173 965772879 830149207 948725969 979896223 982701998 991245011 995607580 304168233 954175995 166725140 868463854 502845970 551148519 916950143 940552761 368155121 901367159 712867948 938369376 694325554 776881340 699367336 926140689 401490736 446022024 424925861 705671438 527054944 607701629 371630737 530893560 323913742 554215990 615379017 868786356 43732453 743580103 376185050 587962011 537888973 624990289 474460962 877124285 360788243 554638367 243898435 385079285 164445520 387095018 655861605 938945152 459491153 463811381 687914531 812493247 967775522 975411746 400967127 416717341 994166380 995967946 303865113 790068371 34779471 365853984 361320406 569197425 678060949 930721792 484542953 818067733 929241736 959404580 234499185 673092499 842709686 889119348 600125226 938210613 872521791 945567047 559858011 722194552 154599901 986288753 752117790 991355740 22073921 537329553 639227662 958251894 215701146 505222119 527310946 572342046 123338408 438183377 738120573 905445247 431187133 933253230 399908609 489848657 252190238 370696848 511583066 939972888 721352663 826176179 800127137 907064990 429131967 899830592 518818274 865775573 327876880 408020128 208776755 779837583 555252613 881397321 454915325 612744871 409225014 738241128 213100013 518809460 572947578 883480709 847182712 977717054 349742808 533189878 746792854 791407718 997891881 998707051 927361686 933411798 680961329 705941977 949613207 982665435 137027676 470466350 901511998 938670865 837496262 886443088 833865698 917298340 556504471 963501848 452751551 898170959 829921601 952051145 677899054 744327725 617936689 809942837 27906081 975837959 351072390 694346134 36681906 414931975 430625793 633135633 305294258 514313425 367734610 707761797 283600266 937006744 722189020 760753980 320290065 392334602 343816548 623624453 456534839 819526464 141215368 204722389 36266976 191222484 965358399 985069503 13534793 359693496 991472723 999017338 287598904 524475413 655559502 998347979 260347322 626332604 742974875 882060821 594235016 597721967 297690428 558940034 264405560 415952672 825558062 975505729 841126743 857659792 795293724 814057293 669008535 991315630 188444162 508625788 45370504 479565846 857431640 986328690 885093138 906872475 364111238 571983008 783897909 859793804 760333543 915073734 299498078 872366986 579604029 962731269 567031277 832723213 937215936 966482865 115090707 702608162 800983779 905391871 817058155 914334615 947524553 958799882 245428 790636253 551650460 935675459 472710832 886000123 389622412 702520147 988318208 998942222 192457519 670167036 810771168 844471559 648200634 940697685 770557667 861962490 495714023 761343983 636722371 871189202 683651260 903839392 140577227 470228382 673448706 739744689 963219088 987965099 267715935 643655775 826245333 937360090 672935184 824994997 584031924 905344073 164988614 956150384 403629340 431499851 556078525 705933661 682011923 880173116 870771759 931445485 640627914 643887113 543653293 639794352 481466826 523025951 523056824 974985862 826772405 856178034 464233554 887606463 178187506 213619218 594528579 808701260 421776255 473042765 127929209 266131474 625903623 829128100 242029797 743570579 733033083 800221709 297319324 696965751 591584060 665858015 554700316 582832633 8241178 515922009 261860370 924809359 904267 98178828 89385704 332242715 812040494 979778694 914026278 974344570 333918360 590793862 705353151 729862953 938995260 965804048 779006935 780809542 932087584 939763254 520452794 701820313 785733558 889459625 673293367 970933406 459528678 748063482 874283267 885866386 216101668 977342771 957568812 997593046 663732525 799881445 329724835 722125617 995323749 995430668 296662419 750915365 625911227 765030296 602448407 777314011 895116632 951236670 205586823 942698840 403094986 578910484 94948106 196600774 212838300 565569515 915095283 955063687 827760138 938442796 321580052 377797315 354601141 398352785 576189387 948211336 543829993 957054203 375924356 537638514 395230930 981786188 409724902 911774329 935515646 966649778 212389212 302358253 551367971 915268263 163012654 496122551 231121140 933782446 785914306 974236444 172458987 719790342 841100376 966295074 790289115 874269691 11064615 819408305 802767130 848053855 742448942 979558957 722645288 831062259 488066510 941263471 285975917 675367953 371049495 422347613 370236059 711956556 707553058 920227376 339231981 594761687 390215894 520420690 966513057 979808173 564297386 679305255 420373928 897333841 562003431 810418196 454152306 552496041 930009631 971026162 483686895 963830697 731553140 860823889 399185687 879594181 484540979 920326693 802518427 877724219 465217283 482109087 288993543 447878437 920235595 938361495 393807135 952890742 880730675 981569931 345905515 433331224 595516950 970929309 558043273 873060489 640142701 767924770 800983572 870527704 785219563 987169791 40544437 891861317 374381661 685260931 608840982 674711839 71135661 270892893 213828477 899713557 158182412 343192207 719137320 736359336 676046996 946716129 671624335 861780920 650652598 680468663 654319823 665698923 138856765 233000479 390781894 582255452 180358990 734993261 817696517 820124284 726103560 834784883 971265064 996721962 206088735 968084654 452680951 723684495 875845369 896959219 850052087 896904416 701739481 854443929 509172803 689814983 913531130 975668245 752993380 994369038 286827608 604137437 559808479 904543943 117397440 785051085 289692261 749125893 950243490 962667538 339033441 353128179 643847933 863559218 544630482 650107857 523823700 795687185 739765005 801504386 930348583 967871572 163859715 937783914 385861293 786830906 281222865 336623045 95924186 650993371 449800272 667466465 162103338 742005935 172660545 519691139 901882395 971140258 730518644 810395661 909756445 955075865 311905563 696437555 526326391 702502149 930068621 961792759 652503147 955405120 192580333 570529715 960580303 988672878 702042836 786310087 819538316 900509094 500899669 547555077 998112116 998669308 345200991 542516503 733968497 761510481 837509818 891198529 819770205 883845632 239115000 438468520 495011536 497036683 771410219 909817871 136329939 471026842 766615198 775503042 369423205 681854672 957167730 983717547 207013460 854817633 752491639 895999607 9182209 595608677 78204972 406656399 307293613 377846965 328191442 962168447 918776128 925269091 6460696 960740666 517508003 780241745 708391729 973828876 712563395 780832823 933308578 961346458 266332967 352615226 443934017 674176135 541749527 648411924 954132261 986050652 697235969 711007568 650963385 889691482 865899123 978176522 652549453 906881074 181141559 735253614 349549865 639940540 831666856 952003302 657410723 846880779 5388378 45002724 176682302 631381057 123240099 171273796 87612384 326121285 53915506 665860833 236844046 276130781 406287158 957676775 113852473 855671838 861547152 985431966 392981359 826117316 111852627 691438154 34323693 147755045 303552599 808295431 849171533 861732673 819769724 861482895 878514551 931745440 614595209 807081764 144843035 640482250 315186795 801811059 370497969 877823665 106044688 760112014 100110626 648957665 788477352 816345321 940430397 998459578 667762512 903978774 772213709 950800825 895836616 902857866 508143901 722837807 69331380 824078396 155714190 709556053 98770540 967338436 652848728 661531019 958185055 989993042 498791054 744100242 995217545 996489070 743125263 903376840 765973548 908566973 685422406 903894240 936102250 947760061 863449748 940633292 866354230 950244063 615313603 982553492 128174620 502521218 567659542 604316885 712412389 806293239 460090594 835292683 781040896 850960126 680290143 852280354 290561552 455922589 125269098 258140503 280174150 533289733 265422677 338178513 297271326 848755340 373270295 687196906 742564668 816681461 811298015 817384436 689855923 889451229 338257319 956554572 901091997 934546290 713294050 950494406 310133899 692403041 753908427 947084359 494606177 505270127 670015192 933240783 801467675 935968300 3058404 74974490 816205910 993529748 992545271 994269626 888177173 994376715 888157921 896545652 374699074 730854526 585979846 886305969 228497320 991599247 442684942 873485567 416538215 576948237 205469851 334072516 107861403 867336642 950748546 958919989 979151434 993662164 407535878 435505785 55422007 957593112 255074952 546474985 851115423 891744783 100988032 860097123 538238405 738135015 875545382 904800715 662831779 745947507 743110508 901996640 27247260 885107268 908999564 922174074 981400680 994746172 354232606 544866564 839465492 852207153 398768706 913968290 762313811 818099296 101582226 995607351 523724028 942401133 209906473 952688989 482312094 860217598 863264381 978661838 949824725 970595110 880042704 963909211 257877672 820404173 41768589 580537472 132791995 974872553 691077450 919816082 633425095 703196194 346311546 876596705 182727652 674750559 585112745 586521177 432686648 662402797 500714969 767539487 526639933 663862164 292940722 873929409 233544582 476499844 193250269 611211755 369461459 901489259 782342050 996012701 584933122 921678186 979777141 996548160 163454553 473846188 790397445 791308089 215863628 600502696 400634415 515314626 361732394 694249820 384145042 926633123 149795182 867525226 975158127 993500395 900474579 990924489 628809181 933309125 582217075 715614730 226508153 994117166 614327180 975940155 817607556 844989332 623297375 636952600 531758432 748052684 300877278 546659018 58051940 708075101 124771705 865239620 284568575 422774864 827378515 907196928 446652562 960875653 381219314 681822233 629083839 676934538 407549607 718051742 455868875 847530207 674883024 923040649 930377 146169024 500797222 760443121 228883366 519969949 753698964 901732170 96512499 349152146 203260594 474939853 227004192 969248949 352175164 540162376 37780488 686015620 373341747 643759666 413098853 576997971 528302689 664809843 870431276 970719579 990062482 995420808 908693434 977185320 828473337 957410388 151310108 657449806 46787549 158290626 658260503 705417470 55682970 538133347 158998142 212134159 866253794 950998106 780790885 807715603 628430400 874150298 512453879 636760743 470488808 779351669 856866159 951096579 398782089 570019919 20399189 233615810 354101115 959321002 285693943 909888063 817910147 943241689 335447577 971385010 151218697 492494554 621630463 686610854 694673834 829410696 83439825 175790334 715008496 733336063 332910644 590773272 856797436 960563456 708454229 823012719 292344664 427765244 512294895 525714133 148263560 895269980 137702608 678112139 536119245 647910537 756798590 886993797 241042762 935251945 489585745 757644824 134072915 480331462 976921394 986604869 998031241 998769466 664503048 836349978 129843755 784003604 904577700 961851558 510751328 961613329 930158386 965600272 864477072 995608947 811392973 919592810 221651231 517120782 817462157 958826538 632311064 747779262 412844471 418920202 410577209 726935413 209640097 800169373 952285420 982793988 878735577 931682343 932573768 968583396 58093141 751230230 183153169 734166013 738535500 871017349 380158038 495358708 849771899 899277758 827989363 969458979 130749987 937387310 230711738 673820895 951870548 968157618 949603123 997454060 505210548 659680183 592501664 951540175 819397050 952043830 381603970 612411472 293135474 558383930 382308424 894032092 634211792 680411026 509183730 855366044 929012907 951098179 926585832 979312193 227615875 952811691 475881248 733997606 970601378 974179815 315607652 911566073 638806836 761321575 482031938 490250483 812800035 935924631 407960350 457265235 837135544 933172393 160167154 473055411 135967936 673588344 474392287 506921896 658214296 783527758 300594782 791729793 636960863 652921952 714822821 820673117 681897556 717283819 689693716 952547947 112138149 643943150 41043143 538922804 535477234 590743503 645469535 882986528 124179287 622294810 656013399 896016374 221225922 754056003 481738533 668409104 820254187 947117077 12084426 589723145 986222904 997746259 225572706 492303142 596013453 867099635 489908170 633929602 701865331 826549006 752667912 802346895 239541295 470069653 935024263 953445576 381697281 982910037 783664714 849216732 20479233 955896184 998602016 998776436 635270981 969613965 683211349 971235876 492862664 808716095 479237459 646944474 194700503 302167541 750309762 993959232 765518194 780615137 833267193 840769776 667875146 842622173 321657982 936057412 340082316 974018998 881769855 914487784 938602556 964957509 569671235 785757720 543595638 727073219 209620402 548776008 100420587 762800120 266876781 762706237 256936057 649040125 742468455 829101040 680998485 941089070 162096954 950778723 411805602 793057430 206505491 735600701 580791465 986960967 439569112 877015753 439442252 469059563 142822108 292223689 990336553 995689810 179346100 449569035 279320670 626962657 950366051 986042215 122883787 170513509 34516561 550573618 520042836 781810204 404330874 940322054 623138010 844558305 362292355 660503631 183335488 460046347 21444683 290302747 396392136 991036430 216074214 477953351 429859780 642782119 386906362 830497738 110376620 125722060 786576098 954752030 262251398 717413819 889586191 897413700 156869317 969765159 851212155 975399457 722965421 754055343 251032261 348169424 850897513 869271975 218289456 262765979 279348848 286656861 665424190 902055259 869685724 975337296 50559230 964254304 804536563 941072477 636745992 965649006 625159559 820326542 975442095 981954490 582276024 712590691 562992308 968385957 283591433 707657296 751572505 829249536 650555148 859491290 674370141 948154190 187565230 430589234 566525290 927094767 621960588 754619151 994011093 997714677 755509601 797547434 847775993 948506528 948323920 950133872 924018205 929946242 64987917 526349507 973160245 978135704 584855535 778050922 176738900 603007258 910036623 993002035 637885395 810660388 630870900 888106277 156574730 441331264 333076910 369470288 887579126 973237507 78580035 660019090 138874933 718792279 516326057 707862097 347430619 513644934 354636906 549201255 927435131 977489476 483815724 698633017 838255031 957126928 288276760 409384118 856813772 965216147 981454639 993037009 1581089 7841386 283473567 884169869 529445373 795086063 903934574 940050614 155639476 791774262 920814453 955599260 916345560 931931290 116329872 258474638 241816158 725848479 638232335 874607295 43063423 613777704 796635381 837839164 1572841 632021637 898452596 918620415 848906736 917801447 676518555 952780640 627922812 780559591 891262356 987701415 766298997 921886231 25579213 129017077 132448742 691461632 392630099 456157980 742220531 921094778 150690609 609918800 267036015 791426997 884256049 892856978 44806624 206907391 699243853 988571115 907186526 991512158 467710630 843679814 336051574 816330159 613210779 777940973 223518680 709888424 255758913 702379368 827344371 975718856 898056601 963504707 821410731 854222408 91108023 678090720 723270802 779056933 253231198 851723755 447210291 649424504 253953904 381741558 280657341 870009173 84029361 522893866 348251455 570458113 201650729 744107043 254912811 559189843 958720905 970092904 9740400 944467748 505854224 567252661 811795230 851465540 431817658 842482377 896198806 971701775 104203559 830052928 748182245 945645194 33944626 279950815 226617572 694443860 907448310 933937278 324407673 422736462 833356431 870593676 481688983 970712845 625368667 641764073 973689910 981378424 634841013 912824759 883839473 976250040 543716092 703906128 644320222 711928569 814459712 859077892 621742291 919542109 920213982 967921989 968947944 980127646 533979619 860162957 360886451 484764381 204361097 545566523 431222783 881880859 336330734 619696315 884251134 902568810 192967217 917333707 487065178 856549458 874070304 896818680 540947921 635421599 881885895 944307596 201221766 488913336 632721362 983912432 260740285 897772578 772370791 853776112 564542035 583533740 517576309 853642414 168383522 907345556 466233026 559201187 846119227 850775939 656445784 891929468 359577860 469669818 738164256 958959785 731014516 775758805 842417366 864940315 86402039 638102542 14273582 592639446 53747815 863301565 217929525 398681960 62662905 863694487 843000340 941261244 190072131 741744684 489824026 818151822 942282750 954399968 596224202 909354621 911543468 973097762 65399049 966923082 350603504 573671676 277403322 996076469 682386515 854249976 65240579 106381844 309385182 348946449 449315592 450858953 114700868 915724772 570498115 788129652 588608589 891164615 262653860 978424896 412714188 480706247 18580552 199948746 256480733 272045138 398166696 568195371 270170731 787909438 355989364 371878189 351845428 493994247 608186458 795788408 347904812 421271171 960007546 971088402 916013656 992190185 518474133 565916525 462122389 777448264 546004554 796840868 932802973 957870853 266909777 868174771 902618779 938553569 748537702 895408271 400479395 856655756 757539113 965692809 531122800 752216029 737593889 826849486 77660149 691797186 611935922 774116621 773797478 978241963 569763425 635346538 945150100 966650782 40965255 379197667 622769670 627321535 234117108 596980585 948452426 988685627 882847375 912825985 818376474 980578911 888734536 942989255 986816161 998907887 77988542 469712506 940914362 981556356 313056450 726815392 535935868 867749447 973928315 988435491 947649621 983422488 719666483 721505890 40403868 761847899 202855975 884195471 218264568 993255667 543430160 598848300 814188460 834474365 599024896 908555688 167503393 425007076 203033416 779106364 537866764 892616740 924722794 928542727 682307920 973511345 282993551 464754023 931134869 945134605 977389394 980347642 877391798 917382992 280430204 842345481 662893776 745288711 990491640 994969761 360383874 369511487 462690651 640279991 57007733 990677843 217896012 394970827 340310889 890593599 776800961 912478251 102454633 907043783 436630962 474180624 786264357 847408488 253465926 493553410 335877381 755635037 871985556 950887322 185388301 247409582 831283653 978845264 27493579 689177299 813950815 952065461 864184990 969014583 842549641 988470699 717131382 742985280 31086398 546535446 998859919 999230309 592212941 953250923 827416921 884098322 788724458 806308760 727587841 840067505 856709471 907366363 138547696 834084658 241170062 293885741 317897646 987088272 343662754 764129579 167253837 333812336 812036752 834077829 333655368 969128225 7777378 253344212 23516341 836419233 113088858 185367437 357306789 916191724 932873990 991320646 676737741 864728708 356700167 597170376 374596377 984076221 491663757 992442997 417837568 517079545 598458730 634218856 564474223 699582625 467726661 590313800 432346583 863482934 306780761 547637190 178516331 781353957 474457354 808579364 946423344 967763515 651909830 946308903 599005511 698541851 499971640 987636041 396743776 430513264 688454086 881847702 889568254 951800975 138196808 287261552 520909524 605265917 202640318 570673453 770300040 864313947 661060711 900046006 477773539 807736771 858637769 964782515 243392243 767258314 186258186 704851942 497258962 625012401 407846212 787651020 317551230 503173142 324384645 569582405 701594312 791882760 939431568 974638557 892242115 992125050 102428625 569857546 291939894 356105191 216883669 748695628 567507003 982983122 436446782 534978786 525935464 557209625 12427256 929076345 728427412 792173197 597826982 896162064 482130423 773696826 503309176 519777005 438288136 900662526 632581431 892274540 797376352 903191056 139066336 565839673 315301008 793205108 600064512 842010735 14992282 216311296 181884371 214404985 936816725 956558040 645778563 981272526 708205257 979731181 971495911 982233805 38993385 194196540 348206141 868839296 763031184 831770757 55740896 949214749 367283579 490991723 487569232 774722238 449906628 856998185 359250978 969926062 18855297 82479426 961835024 974324393 708860596 963949700 298967400 963879437 382785477 618326276 554950390 644567274 866570166 935295406 845959462 934511652 100231386 196440296 371666512 702988857 640682141 952305377 530931259 933444000 802197125 906357298 263186364 701969268 329230961 555939194 358096721 511605724 762832263 988073911 744064529 809094427 966849490 978354184 514366711 683279466 571107585 936925408 950708690 963239554 501178692 730271587 715001285 900955913 414373505 739093108 166507367 706849785 392057174 476705706 857580010 990492918 384154196 918634936 928485490 940190042 101590903 902824474 668441801 893885236 454450038 558567828 357873712 489075195 781669444 997069744 580255568 994327579 7398085 507043743 111481611 592111045 35766630 855599987 4255674 524532314 632007292 847126710 584422348 979918634 717240847 859563183 777387965 919890552 473220890 501074888 52641117 408037048 229278015 427452174 57545751 710664371 375057418 631828391 838174541 843156903 410210363 738373804 306727901 379910753 583735375 658083720 668573294 691372497 513286665 779421138 668956805 899277674 584735513 624260130 941653586 978172162 360582092 845374647 332547776 821007922 517846149 536865993 558218244 558583858 336465469 887212824 423449417 641140693 224440696 609768463 604139671 611876810 312435569 724611233 537675946 994442677 764792549 797290183 964445084 982869317 821921739 845589395 901527202 962394443 38492577 788211884 235652749 653311002 697131130 917034755 133031036 785342018 742210673 918532165 818758174 926458542 76877483 650087176 887294314 976727352 720510346 938757968 889056323 953857980 327476052 696795709 592138648 918967713 160654923 267733526 53043033 658376349 540786985 742157633 232419220 634905720 818846339 912012724 733753996 826426169 115975837 894178346 948335410 976001413 940165579 963538480 938347597 944681916 599913785 640973956 929638019 940028638 834380050 946171789 22454411 504401511 413793328 915797428 693116076 851070778 459723015 816331714 528936034 739110182 745987408 873614346 451180807 976561889 172141524 295737855 986617163 995351633 144722896 349806280 168231155 307670689 927534083 987912942 116916498 451819027 66671747 176022748 237897013 656263662 775760053 850917726 571976013 777945798 337074275 478664046 877082322 912350746 9841313 60495564 45135762 376290948 361821260 634898246 714271591 802054048 965666782 975794221 408254012 853033130 114905588 742679882 60848321 308864180 284969479 369999785 18619998 973892022 836456979 870471573 439774530 735904137 170347009 292578904 607578206 994984938 302594613 464667988 158621476 388155862 856468352 975247435 749518242 781672097 791143231 886136584 814141875 963918598 389941643 678120532 917248900 958887325 493001831 948135883 775855575 883796802 102498172 397553771 736644402 754335697 187713942 830774482 282755835 295227595 820636590 983119708 583600292 676962259 834433297 884065038 343553013 564068048 898538893 917378600 102929700 109907977 559958503 640877084 25791256 817062191 771777721 859188441 846699172 900987627 59841324 487370855 175749307 567397657 217188995 254135436 418998058 702825216 405685146 455047953 98028193 512928808 283646930 536356168 873854715 962404792 814106235 920119202 641206324 876186229 627546077 895346517 877439740 900308997 973471883 991254453 230574203 599669232 190231084 712110418 410578628 417513523 604270440 618012283 609303538 937947228 697977525 726287634 582220521 929722279 465332384 488823891 893769271 899076508 345684226 605837517 693761044 974600060 245763878 373396310 282434885 827101654 741827920 983261283 543259211 778732546 320554809 628131040 41386814 921869552 437109635 717919146 71427911 791877060 790583344 952608562 396535797 869109475 211470010 360795933 731010405 920158512 911775450 959892357 404683386 492578221 924586402 990304774 623593476 844284474 401647665 467383213 608889325 816198923 465071098 877225477 975908279 991427337 470366994 561841957 475263531 924335127 67497465 706650187 685663229 693934155 232423502 414456225 727116642 849950928 487433203 857173569 97434398 857815293 12122712 553338704 539512351 691516005 265375488 855447219 994320965 998046075 317475115 987456621 641988023 854117456 269393206 787707597 59781023 229646473 701185004 798409596 557888358 685273646 322019523 425316252 30955702 896602969 140975560 558379335 77010874 965179532 611127928 627688924 280794814 499325784 193102898 739448068 603085093 874273009 893404044 915901566 394293974 468916078 781375300 832196396 838573742 844598610 732030136 856567867 279367304 585786865 263171229 919924023 908499751 932520564 516815514 528070204 163081832 443476763 724019118 735522242 517422991 760046161 896693347 923171421 625085298 780021630 865541040 884124700 490492741 841313321 905810993 991998133 216997851 875124883 819820870 975687723 938830243 967094273 866191447 873789812 529737607 941696617 908248965 913860731 600919319 708314962 854605624 970295014 546946866 804541790 223960663 375936397 467767097 969385652 401853417 646788057 422840191 843464943 827489032 841042753 502525116 640083005 734920408 816790897 30663899 728006680 360408379 935144304 29659426 612601521 461071134 723592032 175062549 754308994 977872795 998754079 964698599 980311737 593634230 960031445 902007624 950174323 337793315 957972615 758783445 985964707 777131935 984177297 570487414 985247840 233969862 459410511 172943424 504356475 647355552 878412905 399555025 708967218 316823144 784838857 475635358 582654428 816882369 962497104 593081832 941026284 669427592 762923789 332740848 333778353 562578181 613895141 752720343 818623246 651329809 811829052 274737710 897658651 619722612 866960673 804387322 873679920 972209263 993126691 101175982 279624205 88080597 179837887 331684820 633039420 64566891 570199451 652855242 838709400 740578342 892076439 2177445 205402703 905521171 963050035 571576692 934803665 516015042 649358600 138026140 696620915 569986721 692168253 352020936 626003146 301335180 953709242 299723617 617993697 63331278 749073815 942166567 981683668 667855297 889478244 319637941 704785280 510101328 622754938 248842557 576193368 457113336 935224771 943889003 973274988 437560793 453565523 199705268 479922065 94846551 457501479 643045731 876253039 869680352 969048614 212595636 680350315 875651919 956579893 992496007 998936186 762562305 867917049 436621403 715755488 239778480 923628457 167752624 167955996 249367304 664379333 896955609 966243907 913622521 932181591 440595801 630377785 937258755 981923243 213242389 905677666 656492836 661482986 592840656 904588734 405366091 653628910 887923800 912001948 447583367 566711862 228434324 550779658 898904969 933166322 595403236 905340103 91512805 783477949 925401761 935669338 303407307 911908847 968361696 976772475 304587596 422682206 317942080 340031760 916232207 970925678 156623516 679628000 817575393 941598512 664075490 872702385 961835436 975664998 831547949 920373528 35601535 782658659 928122695 932898514 257915519 313553727 133238594 390729913 970905436 993143226 134835319 288392135 313594931 743577467 984928211 996017545 241327541 551476857 192446958 688436036 311817042 797842714 649475328 724781925 851468975 855151255 609761582 800835006 776213841 982013605 922953824 960074720 342939933 483153690 761743450 793010284 414761633 573803653 943192353 958644584 121171633 157097795 900966874 974211724 910829490 915887886 435423095 705948302 370473251 554498837 307834637 717482404 911095129 978949671 340722269 957553910 268263287 298126492 163634953 752133388 338418196 995975691 274804096 774693262 758630577 905270330 131103469 141952353 458200669 681843095 724632756 869408720 881864796 965468926 719133062 816290373 818136222 916713738 795915732 892468370 814305929 933022806 149340635 638009240 458648177 912669550 569333971 929217500 450822169 473074499 558743885 807467636 647207996 730320677 168346209 757936219 574611446 722698431 464196702 817795433 855608220 952625197 401123766 986210232 557702097 888701506 725479470 928875176 236113873 474248887 921598315 962433786 197718896 390589883 879171470 885073960 525650422 799907205 198150687 402672793 647808660 684211935 440603448 672542531 801215 649785739 756311534 866747835 860646493 900217390 424704865 869664719 330104660 429834334 563974552 932744163 52929674 693927766 223936461 904632084 427162017 835704548 229560144 591230774 878480764 910658391 306834029 958205447 81254245 458153849 804363592 942712735 632816394 686939541 777078974 947027450 912417329 995320487 287200578 572098472 803226302 914722436 138667108 196448484 851796206 969969635 865075827 890140773 451765342 520289203 14945290 624619544 682730216 870938884 413087585 735901178 386092064 909252318 795513749 974989711 960238311 977995271 462149686 659603586 847347296 913554128 813253966 863313207 179095894 423513914 758954040 992283436 722372940 838788134 644273950 897899113 868213310 945854670 893998499 921278424 616273211 622425175 569779800 995565162 242490646 646278629 612896227 713445972 788466386 790536788 318981368 535862382 737064705 790508215 898643289 949412862 21506211 938186934 970569069 979487629 577383428 830872217 630248111 945550124 204320601 446472841 926943644 987868555 662278637 915246439 488112546 553216165 253158121 868729591 561010623 878743078 193104066 208142052 662280210 921161273 823320610 976651414 787697998 945877897 883138287 921713020 13699060 245521533 43129226 922589946 5872275 48529083 614992358 644031655 878861025 963015384 152986496 467490684 620741548 929206738 722847646 937845120 359449609 454486368 580594706 789605554 731194911 846345241 51312104 888889684 827459009 857109270 728749071 841844406 457504633 934243355 832925430 989044218 376649899 773274105 692745952 868048882 912571664 967330875 730908752 907416616 461150998 649163156 423601127 628394247 446831067 660138118 468266133 728321368 647671796 788786764 20552061 854498325 35752711 888080412 52141791 987248181 683917384 867080749 134909329 938177180 857315228 989410091 939702536 953625874 386181184 849036790 463646880 655276926 958151304 987789355 738321924 853493702 831187360 958187222 467733246 561577802 167996506 743396881 582597868 623395438 347453733 703830746 87113634 276636357 991510072 995667694 13288579 769308079 755855962 980643017 426584097 689805352 33902805 340613476 145590416 855411154 792740224 906262606 292977940 787737745 456656975 564088756 541270076 716569276 106216258 717344571 749279451 863632973 541964083 815014041 588183959 973940264 842490638 991840889 467437279 795805757 769848489 869937207 669570282 929129333 605217068 791184291 709670434 810157884 559678982 915914691 215770002 248648088 894934339 942910191 901920068 903583112 884771314 991816481 123927769 524924842 502312346 558955352 392797217 907372896 327900692 765589061 957888525 977442461 812262064 866539979 294034067 360869065 593738808 750049498 165917839 793614654 493000382 545050761 460255947 643864355 381647725 838498112 336260697 560627270 800835224 931355232 546109379 559675183 281608156 500063219 353497867 899110277 915656142 935494059 664051677 731456976 328056113 775087787 491405938 548419403 717868859 761684455 201542032 660185721 230448085 837358575 4261126 865535216 633175544 785612059 762251401 790513159 857522924 878466837 282176586 962441658 572965345 576595535 971040523 998430173 704461483 872487648 451851590 597608018 855920969 993160617 278641780 857505266 786281102 952225724 244224905 797778204 609629117 671057866 591867257 792302662 480246025 891883410 996141095 998572051 100769757 590754750 693863291 742084900 153721294 446145481 845298162 887452577 162253736 655514382 218645602 939294509 950466325 973675181 741157329 961300848 6496608 995154410 961527313 969765463 480914600 541617481 695521155 889504039 333913655 901928848 815739988 824593698 471740337 523714212 395979416 797648811 434445179 776823506 483768659 771706536 892159229 922773227 389657354 877508805 562069071 708135641 929048434 952328011 335777578 921173567 3153625 635719030 353699202 923438730 500228066 967064245 874716889 979844438 427219875 751104475 591685744 813248991 135101199 576049448 478403443 905544572 355443835 709778286 420812008 911637139 842741903 913951365 75805931 160049066 805921054 867791358 810260596 986183746 768186289 855114732 599786660 870296658 840699587 895322769 170026685 466281324 473781646 898588377 353505816 375505887 204034343 252430406 117748051 781197299 979453203 990774963 65138918 875903118 1030555 984359098 960339522 968780805 887750616 983857252 637860379 945188954 386989951 617855534 271993959 596433689 623173904 742463842 929221746 968631102 358995780 915027646 441925103 995079086 695704506 834736450 889059230 939629236 247014733 867843791 272897686 938377111 450469826 588706550 461413740 720900534 180198544 682958943 375105352 870783443 330133018 578220433 536442310 932970985 713667698 734195550 279539847 958683445 208629934 940415060 652164027 995736850 195096624 647558932 19696369 435763472 582498924 758523846 963878607 994419921 947121080 979536174 352221071 379159139 76756472 524274157 375934381 559637850 742021039 843100514 485184952 572301138 362759765 745889084 484671192 600544745 467722678 498251513 411871078 494226835 859494255 986455999 829090790 890664549 354226541 860609141 589669086 785497317 359809363 697781004 97491606 968898984 254954611 883759874 97507730 436897572 486873163 666127419 71337319 580505886 382705575 555852207 67033909 721890379 336460758 339402044 490776350 509639367 385474349 930878949 140585745 695912716 613704834 929174967 409001169 647213647 904518049 988909332 144657383 892109406 593872339 980634014 600068230 840683130 57524097 635540994 232159885 435187629 749444940 838867488 386397662 779089364 284500579 874849815 901083075 919429863 79500768 571368013 274150639 675435143 700781636 805664437 223349443 515439254 141108382 380665058 590993444 764392820 850185175 937565374 899940162 952184385 162414171 649690212 119225171 383304743 277154500 959880098 795308649 877559361 585787985 707697687 261431728 948157936 922122203 944452320 226902825 478292511 184961902 326462598 422185979 613713365 561629071 876946089 719803348 977512616 226293291 922987734 793990695 851067178 100956723 132904360 911368586 979973557 489913756 699743214 412106445 621523500 901754763 928611842 176824276 579205484 308452215 462478939 566236682 745109421 998012577 998171682 835237914 982697673 173826760 468575681 638602623 843354564 255989227 880283023 948054448 949432546 518716103 548049756 971979748 993351333 85661759 940382218 227491766 692537197 598268756 793145801 20349135 625453665 385896339 780196930 983750545 991161380 920511228 994538482 525993151 916922262 571546573 947793648 421327050 498976593 730332733 985372523 5022390 983932532 425997932 502937645 412245806 737555451 178859531 887273606 420943967 581159276 519456789 832212899 128295363 576294822 16003402 726197927 393084422 973400608 503572242 767753816 52600930 152458136 646747082 666136976 192417108 601022554 995583070 997782572 833352955 909140046 867982020 971694098 364692382 379875140 882182756 927102751 23316393 710320609 491499736 516124475 389321663 912163336 787280530 992854889 715896352 850173226 55259266 843694433 140980077 772952950 181878688 289916094 47374558 749217811 672171389 924977105 608130511 841169801 334225334 901786217 216037114 458055734 530466807 649805426 555058425 818571863 61088773 720867931 917186274 951757448 939580540 943475130 208465682 655447814 4104594 279192743 508500816 595179858 224442419 233583615 157912120 984744367 161738326 865744421 941561573 975379709 805077521 932372987 217925653 927649098 595435185 820414415 111403743 208973990 172657220 640196552 741574445 924988956 102380682 606841389 987379303 992132936 726500078 727324871 210661493 444411637 780513743 839846526 969218100 969925921 380887106 817812178 632119439 851228080 491559662 561317431 852905745 855242081 127402802 453825389 100882469 457294435 593519704 963111499 332335743 357353489 398667118 493100664 125755630 222902340 630667313 796451964 408217603 997080662 317702065 729190677 180205936 708646318 649699881 874520310 211374061 401731101 71406275 716414571 780738506 796562198 829832035 986558313 548194389 985872139 259679078 622525058 920005087 969743913 334002397 849611223 948643450 982365329 193983671 382066010 5747089 576512769 787025084 813481818 831494428 928224045 495321567 833146576 239430431 585539038 232953550 494027319 193680390 402718192 229813385 355802848 88476620 174120077 477102306 676034887 175524423 318057833 759018433 913051882 837748659 968713611 900902063 969067082 144214643 804001808 515079353 794504588 440798174 961128172 199577158 376613591 413905288 703216959 725882056 805565182 587954297 814876084 744771934 835824753 247366843 913596788 322816054 591237113 155800771 966691049 83790119 303802858 667731475 899475938 985538976 989963825 888304613 899923059 186501570 843752848 479552333 627747705 79886 70561519 987560755 990024310 269574592 687105156 523810890 927890739 75444456 162802799 189333298 613449718 118446154 702462851 760965469 812819699 221489539 839479834 418585014 678178648 393053200 395772650 692587226 974773524 667036662 795831544 987221197 990141026 546549775 888114881 691013355 825194095 274569674 444120731 303807455 486581523 927835951 999025482 185459612 662312355 248137430 588903643 419688766 843432500 915874544 964181921 85129489 262812329 101154472 675002063 871250490 943924282 814498833 963174644 320803956 566180548 808572309 819994382 724792670 998314204 33030712 790095232 899164150 980703037 902729179 976603617 895266946 933258242 941423779 963262393 254553729 335229317 370778733 449712100 108264736 412701420 825609378 963937142 241257882 917879168 683171428 902634934 69714248 636276866 315678017 607549936 338195234 548679783 533114897 966398720 631941856 913227766 765023928 857536465 247166770 738484044 306735585 957875406 70112728 808745420 658150550 979235633 959087382 992862009 203501611 679073415 987547492 988570231 195721514 864533876 770173481 915518974 165592629 667830072 931357242 938077965 524127556 930293319 954506556 988749462 508592227 669411127 700930796 846597229 171774222 887216625 721274066 991181898 503864973 740929906 945805165 983647215 391676778 573106257 801990317 979894014 940583103 949089687 187366461 278641780 364345810 949656795 529978066 722627921 983610823 993702796 254189739 456359429 535994973 846169030 155171435 753646490 629981902 661514053 678406632 918311014 833364768 969122864 61159568 427122159 705186867 714264403 756691637 910908538 187636772 399864923 315672008 881770844 198365728 279568146 492196825 684816792 987088691 996182832 938379818 952793039 822322747 977493556 179493541 211121713 943526908 977226353 261004651 552696935 604680750 725215962 597694422 888508040 481962531 572230022 880907959 993083608 108043873 599344313 442764765 713155121 251479567 265129108 673383248 707999083 758322600 854659057 44299299 958077691 457242353 479703587 164773777 443102694 657527796 886504475 325539501 612294386 18424363 809083581 377717151 698378226 384228472 814571411 239343923 692746982 758675697 780752478 122613938 825114105 778152224 852263091 54747710 97195507 99535609 364870233 775589821 933339913 101657671 586634288 340906254 698601567 866647849 961301321 880516014 968919023 596843634 702455484 345880776 919923679 166159278 496640326 304805418 517517284 613287202 918200469 683203883 746353682 134672567 627239981 909729003 967031931 515707105 561082331 35796962 693134193 805490929 841825802 556642554 645899318 346159327 831605837 703060104 723029708 158437853 384689300 223689907 343451464 835843290 866532403 280159323 563037823 318600129 664543017 645878124 952702787 648625774 888411151 296352832 653589524 175948358 285693352 839702973 979925072 172268908 962826399 6015461 42565965 391771795 768099984 494585756 551180610 32516699 842333448 376208548 542044184 419578886 759104266 223425994 976123800 574635393 749257889 849157703 868136598 981978349 985541261 189234295 405493737 817621613 979142522 943176094 997593575 165318233 747500142 883465777 960330539 485837516 577319530 633623563 968844574 975633542 988464512 26273739 871099387 467007538 767965345 535841815 585899810 33069870 520403108 906465289 952866734 121894417 482305897 432658020 794588825 610453772 802908268 438612043 569183700 629853471 749591253 271974683 643989465 5282923 236343396 250655752 636941511 815289059 956283152 655239918 810044149 199426001 596618723 307289772 648497256 350779723 587776469 960536143 987638230 303798588 756466060 477546367 907122024 426981313 716348301 436202442 806025039 439187724 766094785 7397945 39099503 23919778 853180123 776102263 798278759 305753009 529622715 776223684 839636914 467475527 778590910 255715288 770038803 448076782 844238698 369296508 913523601 523410896 950002785 111813863 636706395 669144766 715750012 630849057 805902281 540873155 938966739 536373655 908836881 384800199 841577469 479906826 858862834 424000693 795744743 697314058 928754782 341482817 351013376 693884021 857161044 690275164 955550734 227496743 819471807 668815547 737962136 753903674 984534174 825421859 856342454 811348109 942551278 10539559 335856049 542326441 606772372 527548804 598457879 328346475 798402852 639532046 894004296 172793002 357292344 818577148 967967668 954189301 954489258 58607414 228976842 999282709 999389613 832190892 850892887 469228378 857571372 886609603 926915348 134419890 593807588 247913103 548528212 382131285 934559097 752271627 928531381 27849661 857423492 181990548 590567212 738032093 917897913 417776472 972327958 237572900 866989854 430382567 768553206 366601743 577132489 398160550 687237581 903847132 915752104 969197069 996925426 286266144 436905183 932863431 960819871 157141990 355770457 96505125 996195288 30525884 981073688 235188922 571774172 509093646 913120314 155057770 916810251 964523577 997169327 832251111 874689245 459108479 969732639 404213636 577457862 975798187 995366362 861659413 904969696 885517838 911043853 549302167 607246503 67078106 105632109 986486351 998442294 935240369 989039904 830202752 911787354 388923507 480540349 186754686 364319784 435503378 896484011 532595314 764801132 970959345 972738529 643886563 992403480 18723958 581084695 946511779 986042292 334690225 368632165 109407515 748869286 573882115 659960145 401264079 446656317 813659876 875659084 590332756 734605822 246591630 755283331 239434161 859008045 420385804 636960337 271376351 935037826 224617047 711814413 58129415 994126736 613171349 954334057 936311664 969200285 467301068 678699074 40547354 178444188 813546883 903678611 561022240 688191837 218648974 875089472 250037781 776618946 472668837 502604053 540276268 931365586 317085751 552774005 290371937 804922391 454607907 572798894 892881640 959124370 934706649 997753582 93395982 405020905 389945479 878104731 479163675 584523533 750855712 931698966 37786789 413423762 710645385 743463186 607699872 812210345 420527268 528251261 797913739 971339383 84450824 192126851 908463307 967523698 767446781 895414053 701864352 942750622 215095482 973704796 341018771 765881604 52755165 281983910 249767776 940645496 448787508 469263734 848664900 964611313 269461472 328807629 906121752 977916288 834088202 871391790 511983748 523173944 12325069 880156272 905633645 957066375 454355323 733986580 511542427 622004700 193648832 594118534 939472295 943284498 233230065 312057053 245105176 561011763 102941177 805563561 158573380 271004283 118673318 424827181 829507453 902302823 180467695 635814538 197956292 474539397 928339444 956418229 899270988 907068792 562336956 667844629 7156521 981479052 424615471 734666175 34679970 174318170 217358702 338677406 605858446 976315246 580620336 924003816 757081852 898977753 243505198 403680093 837260599 934424475 222182075 533188600 315781038 594713729 106570851 789676627 436963771 729602189 901289415 977825867 275423322 916558263 301624647 360690065 868459276 909228188 238743999 622719741 882360442 968613403 220845820 512882124 205502715 861464831 651736959 946061976 65121192 82675305 392988343 988871055 934372004 951234686 810180619 982923788 352414318 639666668 503999292 940402264 137403644 987962889 311727614 731398543 548878151 707008182 211730404 751326228 305933890 854854415 225016513 614819567 494818196 627480836 637827224 821163685 219532731 650521837 153058390 807729865 443731077 659649279 360101996 492699127 495200904 629093092 567824194 606492156 703406090 857808118 806928329 838104436 357940452 484099867 553049777 634472617 371176247 822002417 328407096 857473410 375629094 706458866 144985271 482638947 85064594 141893037 567161766 873145078 545041660 655127975 200552243 816734148 761357259 893240361 614448156 997341646 202306702 650323289 926207876 964609691 629507028 811321410 297401378 606441943 48255163 500817647 767736273 985951169 485895591 639663483 253458149 340913733 841240015 889190451 875093941 904219294 582627688 972121656 906873948 917803827 134767770 170115246 832885702 978390316 352438753 779228699 887130381 951564501 952490436 963099951 439058207 919579618 877615116 886837126 755311721 849829319 511291302 767896395 153698330 195638071 302105769 400120643 428761760 802593926 629148170 958269749 462461336 698909328 613980728 738656705 997718828 999029718 298817834 862710772 601819220 933098872 437429674 583659156 910632688 943808688 992480469 996041619 106191493 529618461 129670801 274835944 409519649 671086034 656307274 785422886 859220390 995354478 464684921 508219031 403725785 863001062 142209246 709112172 972399890 982930568 109252945 152831901 611171223 694511892 69610757 386828918 878438634 904322642 177179433 902556941 848087863 933893906 168803519 799220831 86839165 338981044 341477156 932581565 220642523 866207464 139881830 743723729 568027528 791323252 500124425 663513343 776486581 902767271 464423118 556405966 238552227 932533282 814412890 838419600 455525554 939864697 238211695 628845937 391400454 433735902 802933418 827582495 997578496 999193910 118941274 481543299 498299306 868497778 496773911 917263461 974735838 981702192 589517118 901490639 391726092 869144527 762211704 913994294 441807414 868369496 148187901 811687418 730456913 856589639 863390803 996594923 732829648 952412648 417594301 909265857 438862474 640021884 869079752 979592656 296355121 408513844 936492009 949204496 464757054 615175749 625614291 667395163 661391684 810044995 848191583 862574616 481650220 878760213 233523228 299604840 731596241 893058521 82315225 782133066 850969394 919333946 15357763 343750417 812439893 984391073 592927690 924655749 269510505 948452625 104447236 985830922 713318086 926382522 667433585 987310706 712834694 773563699 852858002 912309121 763097001 848862104 517303920 609968972 155660241 709730589 869538577 939735053 762394495 879704995 395381822 709776601 417723727 572949929 372560992 696525590 300040962 315068997 657859891 868395251 283217295 923996730 527568096 888629422 444762326 734110858 174327695 546474292 640026444 939827787 899440445 963099900 604007759 657454674 278376716 346581050 456940248 787915964 200775847 717069624 33009516 452278295 916341302 958688885 140361985 429447495 553277930 698737464 806874609 844520637 578081687 596031786 280360532 948938000 842789114 844834967 273105694 514432901 468837966 748590472 746809392 837204393 859095585 876876000 897838726 951768514 884517917 985180264 652690227 687427626 451273908 621138524 546710374 641201619 815966935 824902801 870981172 928700473 462347932 709391267 834617123 871138415 728180284 951567543 985067342 997859503 600105858 750945731 524338128 849563322 170106694 262352960 29484280 355801357 166052904 572734845 834244442 891228835 610546882 861085526 455659692 749812379 452686733 594402317 512403217 825165110 568559879 635020429 990096220 991222075 251787078 505941804 445746637 688416149 805808692 899332643 104202358 739514121 307994188 620819629 294257546 553507766 401455299 696442708 254463104 535357577 240802402 436231507 126559571 215076351 101404287 479525968 836224850 885119124 466117993 919899679 338858518 836916768 595796899 827536552 461930788 571503578 263915979 697484645 702447132 918364391 893252156 908358494 347556131 737005585 321043427 395726279 131636122 856224801 968467710 993095066 283164086 484600246 456263835 926515976 918309104 971889666 761052884 858908433 533284551 820977105 672473938 752176771 305439997 531502346 172033818 241036908 479919722 660711037 800731644 801280031 137755338 180568176 877468812 995469978 728179640 855950781 138468854 867840995 552349983 935311915 369566943 537849417 807521417 947702136 51102817 459480845 774928390 838300326 810300347 830648766 462534131 556327314 198209706 483175378 169664687 633725710 385578520 577473361 380837481 981817673 813789910 852900349 973147041 993425152 697374443 729209855 654549528 780288239 799347558 971134199 649464670 732902459 60720141 955512470 842558189 943800154 203961206 598482266 279857611 295120974 867878328 919058515 654706366 957770194 42556118 379733198 67834572 196086581 388972887 542132581 3377617 739656218 240946740 640121334 262683566 460586812 198322802 729385119 321447513 586499093 518199053 532582685 218248517 775993001 48570260 618490220 154751282 581128186 574474434 635685805 375325196 850560281 766762507 835403530 678021957 771211996 499593928 539599989 399850523 532800834 830378336 830764242 556246491 938001708 541973469 678292194 108838766 364793427 960132500 971572598 268783061 365044406 526855629 678618656 614928237 816958207 695418316 755197678 585244549 735376480 750065223 761277611 263162946 944953795 213808900 870921096 568110096 647235271 429222594 964523536 251577506 407287152 461476715 520309399 3013819 630326623 337666438 827284015 346593840 854501159 283858636 952507847 795728354 843377625 815931620 862393702 39617942 52964643 141814231 492458330 137139085 488336766 475954895 604363976 979333696 986968453 383954611 822294454 701049882 785640794 865069335 936483355 787297272 795421468 293954185 917842493 17368116 674109352 22542979 230079624 502716953 622919471 222290725 414854001 699459864 988534773 505695869 610597691 579460626 983620838 659628978 698744814 15868978 765692311 517894740 574542396 206535655 727675773 982575821 997435221 121114254 747944536 368219700 455514033 377989943 502722735 453982426 485866422 960047945 994341840 812816600 920134722 808429261 848687236 316054052 417441756 470406030 916817224 629205269 717327390 515881913 880973409 676959480 783349128 66303295 816800066 197227303 495385896 178445262 523340758 18244540 136965108 74330146 958397572 929536488 941382916 555194921 733497304 535598050 921769725 851354442 861947562 166165632 417870696 354691342 696243222 754789348 948260446 365125454 387125144 326026194 955472609 911794365 990744294 687224024 794618223 209924640 350395765 745634407 828486158 341195213 778361784 522507867 845146994 48209499 637459806 122648447 835104784 211414414 613599983 740026101 883363734 587827526 718795095 426654191 894378865 714611402 817010767 277621281 542305455 541277818 952121187 502733214 699144726 495617739 865130850 509829408 952448995 265986729 716390013 242069112 990809642 509605254 979338104 547522232 882729180 426092929 785527639 457398474 514230608 427399427 828129077 740746191 847367412 391469365 923879855 590915868 910353720 246364547 585992519 836703316 997471403 491217441 994365579 363776963 374415920 680544552 734491782 274655733 698800616 206418405 410597939 872727698 889323548 232233351 496913640 490415562 848438887 697542926 752596288 296047492 630690025 20685031 766306813 314318858 838595476 81097207 558734543 443244039 857683188 417165010 448372504 204383128 315419479 696010103 826592500 656583954 991737181 833235347 976542639 694179786 957181771 360256825 923699261 391704606 455409993 616616935 785860539 904762076 956986630 328628790 875871122 715615266 981850379 311359594 663100812 751869353 966864105 801434072 966812162 829832062 860470863 84560983 448963686 392107470 877279029 164147837 616710154 884000147 897922606 114901311 718916429 127962573 677381005 420117802 907736225 400082461 705243414 720757933 896199211 599682910 667150285 679072923 747947081 183135040 557610747 617143804 811119425 877811688 935438329 484003936 633791172 844928934 934332166 589021695 708301927 92585045 510364804 70863892 233030551 16048709 809020695 38568373 717041933 426376251 482157506 945783917 963699780 209866209 403978308 614887380 777387102 75120592 471523358 180977075 758556875 990614850 995585142 111416382 146411013 56478415 954166127 186161953 784107559 342181825 732606908 685734425 723729300 54740895 962376919 236705849 754289438 515580009 528367725 851978648 898730577 544949327 600427891 44550476 256950448 374660452 546248707 567027043 695568735 480783980 884135502 86158057 475263683 863028885 919057579 251080459 586230171 209799339 785631473 618763144 894557031 16820818 330491357 376364400 540818322 753637626 921321876 512537851 915494063 316526364 694829415 25282149 888595092 825809892 871725429 724581494 787955857 789983878 820226749 402858420 929563525 662448406 780131481 360419475 576095587 480560074 937734934 732511529 990777398 355442851 475890645 39272487 473511959 264064544 443043837 731783424 732526541 173614793 240233177 794829020 945844588 312448896 395360668 695065028 839635444 524311400 533426336 291771218 883170483 116118361 573001469 60331663 484747481 574037810 642775007 428975432 901140166 258002423 771781136 768218378 908744343 599564963 931985373 367447782 839262913 123783171 865833221 403274919 483375914 374301332 966636824 617618 84378028 445569797 697278390 845084105 929947101 694775317 999328365 250398584 745710111 186608639 818717853 576955875 624603641 465983515 494968873 643722429 882204939 669608039 980246307 779550527 840792280 803186459 941789745 438966515 499572316 275682845 810841734 848490412 929433842 546187504 634542606 531716189 837307098 607724114 880093606 935336737 949926626 247867765 339519570 999284638 999357022 732871703 872569162 532537281 685864645 545954868 799962606 308058902 916151739 177231539 379360453 468241876 902873560 275455926 975696745 800341593 952945213 239052977 836847392 338097154 908351068 745094010 878802276 665039957 838273506 235348944 747788308 859011893 861335251 813382840 886138070 883371286 895498374 900916209 957892443 656637007 824179543 903584583 905861338 726278672 908489133 381441229 815554873 235812339 751375792 147324717 408051034 172283383 675197524 204584339 253988940 577659474 660841275 101848366 312274476 353848232 859529207 824196264 952131461 21653159 675164431 472937586 982573067 378546959 820786446 977313526 977972662 673627091 720635864 138510817 675266903 880992883 945770810 776108040 827855994 410900004 956311407 710431125 727237801 850810716 945087572 734397861 858905349 9063083 858543212 491443432 807985643 414361306 423180116 30244327 397975452 135944170 232039552 558078444 770308055 569960698 625548457 52305407 206365613 414340835 680046601 696831515 842430149 919804937 957159437 347094186 785419094 522669925 788812640 606215649 699896170 941323071 957531012 442639681 991982348 61432100 855151133 894878181 973886688 500108665 781753582 360326428 920200477 488135503 774467121 45235687 867133102 102024747 957497690 108991998 354708237 927616130 940451806 140958863 947747772 649089214 834949526 586330747 920500969 776696782 790641995 540449592 820553457 94513439 903866303 529114867 583434185 832232552 908328728 744531566 949985814 370393702 512289012 882781931 886152139 731919297 851582739 690106356 884311026 609779038 981268289 47690411 907337624 193348556 543767296 324662852 880389513 731149527 837381401 41377991 258931287 763788422 842355715 247698868 798073351 138655658 923889993 208695608 341435812 651282689 942240199 733952849 862179858 775494808 973348706 884300682 964582922 174615536 469099902 839380527 962153232 807326902 993791537 430158126 515841512 800091825 832325611 705977691 829621415 325633515 641219035 34156743 302134664 211007478 769596580 530433036 744417270 899374457 943790505 652809840 795019602 372667913 390927980 347755908 938097380 487360574 926694301 161736022 182546764 431428833 493795077 672997312 988535480 335407000 906185136 21431687 382616651 942319483 952152737 687149809 920110725 190685255 499740876 878432377 972610309 747420978 859226728 387801187 879959064 40660280 530289082 835064341 990169423 131425244 641770954 487944025 636381531 390856805 796578279 959681056 974544559 138669279 433111803 626854743 911989808 248525490 791407325 190689635 883706184 718141125 727214268 214311769 819517467 701974671 761769282 983225928 994680234 411313861 954286297 58723918 928062621 974487764 974777020 417868937 496569796 53018889 199189819 883553443 999121687 682685167 905329040 984127659 989454068 144578731 928901892 463742893 724232132 797322289 850136144 362160950 892314764 849831015 955597608 731320217 749997799 600600429 885966854 114274761 559062398 299967595 961385275 174379047 769874997 64861181 693873933 547736811 939191880 112598444 875771561 175567282 986919066 681566196 932915452 637634093 764216058 826693086 935020320 314933255 634829996 313937552 762621369 820496174 840128552 513384190 907703726 681393375 816968597 810669569 853448715 575629644 646109863 524483520 580841806 460729336 735040199 514404643 824457863 437105700 801781010 53571062 418051508 400289489 449279473 301438684 720510983 179265716 217087697 100209611 525974104 299234164 306100312 158522360 795943597 9148372 355425635 419489092 538958579 363625499 407326684 826286040 837892759 170616604 857261054 519572413 602471832 892493135 974856975 462793166 953910307 453477622 730046234 915205685 933843224 649345034 928098190 948573856 984096084 597828227 687303470 250688292 640935037 445168077 984277999 664172696 908632131 173477787 887884448 517122762 801294084 281883372 463792053 441600833 672263227 981470952 991723685 922906212 939404983 672415578 842439004 198925483 475206349 441864817 619866923 910874230 978636327 708544158 772434173 847293209 879653112 164406233 954168715 631958565 938001559 884906972 896832972 790372140 887275037 379545371 783249675 360036380 941046389 863150928 912254236 712831263 842625930 738171998 962741251 244941331 310690840 595916981 661077234 239318611 444530427 718152788 831889488 976566609 989672230 183875433 292947030 104115414 768006333 169536990 711638849 443481417 861490798 814319069 927944557 284365445 335717678 436754374 919295945 240891039 601116707 646550291 786003131 121339590 322202449 717458887 937119753 426242438 881057217 735747523 962870546 745828172 939426019 19652362 26719044 358846113 552810477 22067226 77421871 733900206 745230584 419351172 608842674 752464503 852660897 634248620 761686278 885914364 917555331 267493435 936045335 803946431 990927486 592774155 918615766 21417511 195721524 791160942 798524843 14483458 901648106 760123962 785909836 753389687 785763886 29650145 880490020 98597387 405798842 793560248 849360755 433605471 626444097 830149651 884117329 287059078 564032643 638809399 659155703 932294310 947672858 428366871 877743410 203907986 761293264 871972089 912817485 418157143 983703631 929668506 957802280 585791480 656873644 21444824 730154453 509979334 597129250 117792315 172641916 992494970 995131228 943301779 967000921 775598932 832407140 802686731 831029532 684410954 803313129 755426926 884743455 179353163 369187245 32286792 760282513 270960982 671760176 396774581 414256996 211994665 975936007 782451654 968911047 100342495 384374831 429454062 807096445 51369178 497700271 597779084 684098520 744677078 839674227 168180278 378833847 630231317 713502410 287296448 701363109 647766066 666229890 817537021 919855789 889484220 992001777 633030194 646199387 757161958 923976463 33064436 589891839 753154629 907038876 660205265 768908623 248019541 718354065 104903686 226103593 151776221 698717836 139811959 165236479 126743857 286395184 89662410 244108620 437924692 966399222 837411493 991949506 82291819 959243759 729147805 791098410 315105318 978432433 323245823 412476655 178086749 488615420 81869084 273111656 364217263 982968805 890668120 934057323 282968433 992948027 261583649 944141075 495249287 871929352 824146702 885913565 291192442 848083061 475562533 895291654 347968239 808424987 435412720 871591860 487489145 586089942 539604824 903715300 313091674 503673499 182514754 338361601 814159970 923123691 730733058 763276095 638792017 790840868 403780128 893490884 658499669 959744871 638551162 979280619 212764275 372104671 952481340 954433453 964920319 966945871 426965035 586133843 592374980 966219498 723401730 759096593 472889742 797299861 592642408 880605221 475153962 601731741 683644302 926429189 237188565 304623426 506223998 814122348 678207895 838309628 805490826 826679869 547670698 604115152 349843867 925172281 602060325 710068479 432058148 611815421 458710419 601031922 473595334 985945174 362640069 707662841 799147899 800349177 961914828 968650781 751364903 831221029 392667802 864277474 36464885 267911832 162200914 539048577 344815005 423142869 522294531 632789252 277250933 593857519 5846173 716065375 493109507 740486647 159457083 428378891 18789221 570382205 215813348 314663503 407094622 502926012 742358911 794714162 71627478 97875926 353430021 865566648 62606977 389565152 504473789 839041846 608505732 722677839 629582197 659667879 337487462 813982876 60024416 107395660 635502722 976988173 864231052 946482238 945832625 988762948 315362674 927673228 237064542 398610831 556601870 776170902 367011097 807773319 650893445 714276584 530332185 745296583 472276630 955530942 679822167 826824473 73544132 170382723 579708526 661212920 826684204 875819031 628878598 836957964 136065610 687514270 181092026 908662538 229050128 998766178 797961886 852344353 927833722 977351420 227923634 578138620 62835594 242453902 541447836 610959178 846013591 877118575 393535594 478143287 523521026 943070893 28511100 33794608 697594295 715446286 505963469 532028633 284425271 371330410 879086338 958712759 905354963 908469021 731442604 909843238 879471885 993049227 996346716 996554426 591445551 860940687 355927850 984890210 93869585 317898701 821466360 911252283 723098979 835356571 864228017 977196483 221508231 329197927 908551999 962567047 698535979 992778126 802180140 950434784 442854618 705502991 392449691 490247558 518563728 690721932 776325999 961463694 655101556 901189388 885643182 886839863 678025657 771061199 918990859 988438242 305710689 699412999 471287258 963392162 249351270 449796764 528178070 768416500 904425873 907937114 578689473 703004069 781033021 812611321 984803596 993454889 611590336 635842779 23922265 421283281 26656298 363796096 212646138 800772302 248131433 582280381 932908949 971330438 416601728 886905256 837531191 953078527 217559817 422783043 884882941 940353405 445598568 730217484 287018920 588067711 53716592 762530175 263455355 964644735 900017313 954172719 169182472 586456488 349020012 981733966 157118673 667146481 730367853 856959102 541038266 853735301 339419606 383084071 463664399 545428806 788650956 915256599 279935177 665796434 860732342 938192868 218673502 960116294 85548068 241243883 215342987 917993244 157784617 286000378 732604397 997289507 634952988 985187774 881609008 986896270 361248554 706504210 676126585 866204672 124686109 906061561 521709631 995546786 172544051 233471223 959138955 982735517 13383674 679417968 718633553 951262089 877335577 887785436 623816764 958582698 316622816 344578810 404123205 982352531 572883637 693048888 153952395 257916984 566856715 600217327 287950646 738494373 66888496 715988673 693966106 709587601 766035280 928794987 964872594 977117685 382343190 389210507 289943610 811419787 413914606 693947524 22440342 753954701 856035967 943165390 322815137 495211409 8608290 646222838 674096405 778350805 544369483 591289634 816387205 830595114 790813143 911800429 878790673 880444762 993654809 998129190 564041235 585230941 933559311 943410324 738097668 824647136 695424066 965163973 507128141 616230107 596195220 834444900 967582611 969378655 334957936 390184647 737595386 850583346 236746956 680216058 563474279 885860608 465459104 978314073 519364153 606201191 679454039 933949257 52170594 270665957 795560694 846630531 171474844 319182215 639537495 911335166 356904533 596830197 696081470 706291620 682031419 882310808 546407845 666205759 884158796 970827105 97143807 595729149 167548211 554076815 744938488 801637536 952466980 997998884 386142721 995282562 731997713 837576166 128220182 746666943 820304790 868296101 780096941 917605860 746424079 932059374 339528656 766688449 801075081 973531838 670248286 767277888 805163844 856438554 479094438 778197556 548414594 642943735 650494118 677158201 576927355 648247558 647456863 723803690 109303104 821621477 810586721 941607315 103429842 463433280 554815741 554855777 982233598 990910637 765718404 858355871 294563692 530778743 710218292 718790907 233634303 742586462 744829775 808415219 601357244 934229870 96992114 185660371 24901373 814960289 431035872 921012806 739912288 803452802 50905668 620630030 663085998 740969764 998810227 999363236 370407327 660154152 662264078 764367997 352495582 887361863 813819597 972603624 242420526 445024246 299497118 605542881 520639376 524345131 612587535 680833241 240081155 564601449 302433659 453650236 254245498 968217834 769105651 977135259 632961981 698820554 384966861 507554984 569102567 576152335 663911047 909453528 943968830 957151612 657638633 886298936 225010908 256695590 790430725 881705225 978047441 982821913 503597302 618957099 1111420 768414408 586221010 947535394 500348241 675922374 705165300 961162065 595699438 865056444 466844333 841608410 445750070 669956557 580150952 975448631 324916674 335454506 156265814 958064673 31218966 725763568 416374945 811628707 691840950 913241936 190464268 532577911 875960710 883265961 273810006 913012743 315468090 907679674 937857848 939418561 996078794 997558021 767695282 908828866 199174359 801691268 603516454 672013690 229266902 691334781 821243831 891726149 801586744 881012975 732761857 733228431 705612026 950478115 63535203 793621593 611777127 990614487 702353100 983777168 912329297 948036604 908925079 979124511 331546792 629684607 334222712 691021142 290688846 364955669 729668968 933016231 37215313 769140092 705887761 994481551 735512972 785233628 446750977 602986416 250530214 611711483 799962728 979039447 934534970 974853129 51422503 346230192 507880695 633135568 744569510 797345977 558769204 993349666 231560705 674377181 104065420 301538551 628643369 723163582 930579106 983714687 793152937 875336432 592920322 849655371 289515424 296746945 516602627 652607080 114024874 675982535 276585369 277433733 837523126 986292762 899625296 907945468 785917614 846202529 180210226 768796007 377080869 731495541 763469198 804373036 83353346 736958510 126546777 587957880 837685247 903098316 182363630 770957746 178872237 869134030 767764357 768715378 505524307 994037637 66233201 578674814 967972806 995374989 897394713 936275002 476402844 896359622 973716141 976490676 968190286 987031345 933084843 967692921 936856870 987612187 77534371 566980957 679888174 958564371 505758196 516108028 65255798 905659882 690457459 944890738 963375545 974874001 351588152 812928951 476449985 514722208 504968606 829203513 733685551 844604500 67034158 529193789 648740119 925527376 692011256 788030137 968876414 981012224 532701818 545244092 900414359 962034383 934720085 944938647 110070276 597832979 342423877 536245765 357660659 781821494 824613043 944674148 130653685 212487131 511397150 992919864 391713689 790525350 920859757 964545901 890337876 934988219 656474183 670609539 126185511 409973327 306377720 827065506 918751776 921037607 880022043 918115147 893677832 909106355 49424032 571103277 583629310 776797549 119743539 162834678 681471342 855769890 303900969 575533677 767695492 812202985 178978774 217753424 87351522 731993747 708155430 766066015 387777873 757798968 202634016 624730572 499929249 510814879 604362618 951711650 771549825 898708684 514978937 703745786 786538415 969036680 197341122 852261451 130212087 366803585 273867143 646525705 246059843 635528800 338406594 455397239 662820858 673252668 957031004 991522696 145579484 627593745 882651145 948921967 123722786 735710144 164448863 741499000 747297884 857372217 614506491 630797538 62643873 261501005 720033211 775617748 544005269 953145589 554297791 789300083 941648359 996629842 65011737 775194960 297780086 876368510 566723908 852166358 209299811 692477563 7894657 196872568 19225824 653282489 303542235 429546643 937424405 971579906 947525254 970629970 277008771 574135857 501552333 840702128 780666809 843550589 684547023 877800879 321410940 417093803 122433562 656657621 333745070 395730130 301061765 669540295 198755377 989624242 571714400 634756959 734050300 974126972 173282327 916348263 158632738 545389628 945689125 992464724 602124997 648394999 52696330 124869406 603550348 678313259 873236446 892089553 896536569 903263144 469614400 524511233 251373146 526170155 378193344 598937196 921819510 959733605 515362283 988321089 151893068 625738725 741566176 823510133 849173072 988832949 740534850 804418863 158614667 240141766 694192986 993731342 302092799 855011506 597835036 602582625 489971180 574867433 793150586 923681847 785923590 966102750 9524701 823918198 589945873 599325716 900524011 991488051 6497264 215909623 11713253 617381529 409069024 621006731 215316333 400138642 83594572 991407537 777256462 896453461 310155219 865763351 356390024 616238492 186141622 704736963 525017900 537907349 110416842 682818981 926753917 946769283 591125564 956441163 486030306 940005990 868080655 916698448 470144830 873844682 372998938 610325516 509734293 888639688 638118233 880613716 835439303 993456139 989400267 993716369 475822462 538436605 961202717 994104941 221031060 931938259 838773024 945553172 333930293 738478178 966453586 997446380 983601151 987267394 284813201 965480330 84374689 893017831 504185247 764327735 835120697 869738246 634008442 771076324 270935346 279354585 499594860 665205704 981219183 990919756 847691997 897653560 836213791 966601579 617056499 854481403 1351338 287953720 742483948 867913859 559802377 747540758 143791298 870412203 110211601 626868770 863106510 946310697 487515340 591382429 24347617 864630588 634103057 864265171 980162967 985101573 302742117 373704700 58198508 665662610 421331181 674294315 901141576 951839543 897598876 948061025 823956957 863447999 571959860 841064246 740813468 985858865 807814673 814949228 247913875 318152108 98609044 478374292 714351355 814448551 223343495 827112990 359805761 821035588 363263924 493167917 945161699 945666511 503076935 938568473 496249825 947772948 784313327 813517704 995165881 996910293 923111373 996978130 140307257 340121322 503416746 625048153 738662985 974361394 600968770 801166262 751892026 828755825 594895068 888961677 752920905 851534949 219001911 506124901 597128274 830279598 383997769 938604696 935411377 940963747 515678149 903681198 507238152 530982471 302792037 541307264 266201038 801722133 224233744 818549700 820988029 854135129 518245570 989712546 256436314 573586092 874077297 992234054 41727762 912797108 298665355 481582888 946963194 994966821 148553121 786688153 772907023 963512587 396251804 799667365 979572182 995872691 74643817 868965730 699174552 968590902 769957137 794157945 496088583 787832978 603284394 920223945 849932176 911757552 400115665 795196612 648126819 740988097 834745508 955535155 983585163 985264535 5605259 299633530 626756390 638201815 60865313 629152162 370569055 423050062 878544375 898104558 944760926 975376895 512388730 873510218 760666295 870704098 477273013 836204187 374154376 938603003 183780377 798726505 998263310 998668388 104335944 465681687 142748691 206020119 532350635 932306822 938853975 971537702 205242097 793131460 969129283 995098781 503317089 922528661 486112234 738716099 701748056 859918709 129877289 587758450 503606394 706546505 147029612 851859039 758446111 785584926 461966627 718332793 146754244 866547653 86964042 465049515 66510978 604325697 943223515 990189314 744148783 841091283 779724267 968102178 702843264 811181713 531179669 648049436 441535543 987356414 235535055 770672046 201178024 871990438 196061424 760001830 903510347 961925179 213121049 944607767 827654259 831284114 835437348 966994538 508891967 961373826 382704866 978959620 872257666 927519670 811993801 866296122 926165739 933709151 669052448 840275439 77578390 908631469 271517242 576665538 720810721 778652615 28158765 867059058 573961073 809795704 75040070 282387463 834985541 866574786 477134482 662356564 217314253 768299918 244405120 986505116 24765710 738208285 954279887 989547298 148704383 602449489 47015229 854814825 924779280 986079469 183107339 225940877 646310817 806711489 706438149 897643995 630255106 898830252 226678818 330910904 506014660 580488801 996549807 997327528 451779134 955846009 777694271 978460765 742587778 991785257 718254478 833859349 426799221 640489678 347687744 546939507 147219205 931458715 192145720 793405738 324399265 901929503 940742456 959124591 632276576 774163149 291693191 833970563 547965542 628059658 692837805 906434121 385092354 733281222 275886576 627450424 718085711 984338609 952288571 964242346 549047664 822182519 800471463 952571045 193234973 757663584 371841636 876778434 768404104 942305885 822596858 890625747 389936431 832771851 430111861 495299441 796984284 942639586 433727066 520979589 444373517 779773232 609688327 981387741 202570060 593118007 56136353 495637622 306314146 806490429 77871962 328766702 189963673 389422793 805523238 951172949 335041098 619131678 801025141 904698260 874981104 973750158 984538335 987408249 325844947 730970636 64883620 432913374 760278220 912947150 188662723 290459781 787964932 973351775 728181213 757365082 33596780 563504435 373589875 787290787 213042279 232513810 858417160 960856619 858174314 976090415 898701318 967752728 813886370 996547183 741682260 803490958 493061741 617057956 833467632 965047074 739872164 740201782 135353882 976513952 84821691 604963578 904194790 917031671 765965453 798204928 765819555 942760507 448356474 459778788 636224447 696546404 877394575 907525247 464350708 726809922 993465916 997036262 702869132 904833003 698728147 805763986 60435411 358129246 12841646 215049792 414154052 684419067 982484489 992154968 879917777 986345086 617180713 915927246 744056002 861999271 974752568 976472339 65298242 133426435 704969662 723879583 556785764 795360574 58308546 396393625 552005128 740617395 508062264 791531744 436518585 839815005 486882924 917090087 199142762 726298366 111082346 824317809 787762186 846965591 568655604 575752627 168668159 864673399 65799245 200065563 543263365 964587635 415745133 704071571 730571777 951662914 494200572 637854341 660740411 792843395 679568923 942192908 859054555 915874894 18041538 268899304 199684736 983308299 280987609 309815183 578445825 687124845 687581940 736319848 245301359 594968328 206692739 943282702 2665820 712771843 904679533 906997470 874252338 907796414 34746900 144907737 259496558 580587614 819115465 955178123 386396203 461571086 242929998 982403923 878879430 902537892 142573817 223583029 662828329 666235259 406617613 670821723 254910224 268658321 584278283 947113875 717935792 913198276 421354288 748234618 655675346 689343340 478310616 482221473 89579252 275824674 498759493 623130783 451995910 706768120 545471156 639391142 401190643 860244588 375263531 978682106 675299472 964291896 409688588 528762679 970726410 987328235 166184704 561955980 663987279 782570662 81004350 641136082 652800152 905149259 438982960 607335692 235410785 236463499 822910072 867492104 421454342 898363648 594123624 883676330 552249767 628721141 759600 425746105 33164463 669841612 61818809 631449404 489448852 690478971 477886289 600931037 972512438 999105811 910013946 940464044 331667586 593226624 711491283 935300228 131017180 849663311 298623255 983340231 813557313 835102667 911390816 916150119 216537655 358203601 925565085 988294544 443850597 634410106 300933349 836091290 614473934 900766413 525142403 868851783 266629585 842661332 513319694 654580013 645704843 661979613 673439288 809575913 520117136 789715541 722703293 762966171 98638383 845575371 5067453 646630534 812666347 919697867 600868083 986410186 586891103 883196405 543927146 962590379 870574040 871053680 574152479 603036357 592861633 895881590 727044011 992936183 487829804 529611085 754435879 962786367 913521382 974353869 309192574 950982705 73973359 620640283 712465974 736881101 436762941 709586789 914573265 926785650 174045788 411378377 591148742 689195519 912365733 924109000 687458378 857480604 907276088 972734157 108846084 267222965 408443728 785384828 576131708 841440990 640613003 785291210 211666916 836369970 929023727 934046636 900792912 920811298 273751587 491342450 149269444 596915154 431737369 785951160 323927733 537628493 748828545 818964057 668103932 851185652 339232474 471421108 671474956 740179216 879518786 990504254 341242589 650200647 179729690 465083676 958099777 980571252 851821929 934416109 987679361 998162579 159382081 829855156 185664270 659969165 55463229 870705585 870238071 989590486 100577341 532881141 409567164 425234368 337177606 918602387 285472087 378137920 912955532 972747991 889012020 935338077 574404733 586950322 417581086 958574327 862067432 975591864 277454234 473783236 357787499 970312312 565003125 708225178 667785930 860784618 344798049 816579356 89674334 275944760 866823196 931246560 948010752 992563778 533354057 861047592 31073042 455955257 421575002 635557861 518007299 569737729 602382826 649339573 540605628 859495502 353654521 950606621 614359265 847181167 510338051 845542455 587962618 901379847 584317214 824150670 128255239 674750192 805536401 956149670 848540856 960352310 712097975 950475224 769425167 818593810 406020591 942262815 885231638 968552571 574996750 983761629 817718975 885437268 471986340 695014449 902389076 942414263 196781851 756060167 830860814 859400618 873023702 916803655 141239076 806244222 819032001 974970907 689277453 724325303 302975739 708673001 28581518 420050104 958577268 963310842 218851743 298089561 100498757 368347311 503300519 629634634 441459068 540055975 974485867 997386368 339221610 855194048 545535379 870344936 949412570 968292680 88055684 606339539 754632917 886494856 4713485 90464417 307731015 980811791 806063644 832579070 710367711 763709413 842695023 969991832 776649271 974191031 298202063 643790719 124041473 694013478 982676204 987415018 879794983 960410626 462409767 583775364 118133534 584011317 398339660 686799849 991008605 994428993 511885301 568244825 238490316 512887557 590334609 944652113 141632938 454585068 881220992 969675515 193314379 824364138 703440696 747794405 561802836 658916787 808169080 943685491 481973166 766208660 45591948 313665496 664472929 805989926 256656136 959207813 887974014 971331673 80257878 761629789 934040020 962781384 159327254 266126249 765879142 939147560 133766251 220127325 189859 376175209 125296012 223059983 577745690 679472444 118882643 371453997 121285140 507917970 793875018 829557314 378416304 863793841 732047377 816345506 690389835 972861627 702663924 870307614 405996425 734619026 953821980 988269298 820067264 924318187 11129210 908155394 13431765 872328185 503457215 784130920 391868698 461057071 282344987 667949658 72116856 182228892 724350737 986484163 175701699 450065267 59879883 632262400 341852589 752581247 156394455 191945630 558277596 951356781 583142529 764445529 343378497 584486124 119665570 546188473 406512297 739722226 372072940 954561241 407039545 500535748 449998339 557533430 545860625 785003592 898979869 913156491 368934291 488400113 722967131 754300501 877459123 996394760 851047081 963483881 308982419 915408005 768359454 861618541 459177055 803949617 615483223 975182032 694976133 978102471 439206320 619362323 495971896 616837724 931094508 958682533 98896211 794429674 753167231 805971726 877293363 878843119 590671818 665785344 838624109 927885584 534461550 711484765 629592913 707018970 307529522 853084408 403983881 668459479 827556002 918742207 827282947 908968121 401260647 447954139 427790140 571926047 37452284 777844766 453002706 951833261 799626617 854102733 55254722 857476219 245954459 809565610 620200394 910365622 519087538 601679055 70087889 579666774 22583204 693518007 396701905 893439204 783807942 957832816 695333197 966781981 465212103 725523952 918695922 927882836 450477381 999005575 625798558 878355081 754391364 909202360 527243189 768024229 518959488 908407230 833224361 930108294 969084769 985766273 81598091 635693242 524963798 644667476 654293976 762483049 8499282 346177979 154309927 435337670 190555940 286867276 648252729 974377533 648186790 922257513 552532890 564450090 298328721 516070677 980261629 994460235 178208673 521279117 464163751 632622838 161397723 681312957 470447490 858127789 638544756 754467611 503785506 767927413 682140843 750480671 721196740 902481398 351619229 819757536 249761651 555785693 530284475 734091243 476327414 488679832 236654287 382843613 981882864 993711379 509063379 549706023 464703000 943762536 891615435 995358602 569685021 828735835 49397052 502619279 504610508 631662143 871082177 988665033 594145530 924956178 94954926 771501434 57968115 153577375 733274138 907476877 965364452 986575286 111388925 654350692 969827984 992813737 836661469 853907900 412554574 976191579 897067139 918198124 861634212 926390945 879355821 964069731 836334766 970013504 453821017 555644039 783766011 978082805 885578465 994207253 719435499 961119596 696787572 956436351 882583640 899508449 751433744 844278310 406420745 570981098 952859861 955728618 842592816 875100735 134600529 898004246 556511435 679078465 559866412 607022858 315130173 868371236 143619713 533107431 599006402 781680851 127147847 896023649 448431006 547043104 662407123 911147021 957524189 992698692 917413963 983503663 745853668 770476287 313687338 670198301 205940563 947428523 483565503 803039016 63232516 780694271 759328165 781326298 417890430 961410783 957682264 964757288 834404976 940951033 545250703 705011112 513743602 759768731 166955560 688689696 55684058 717544342 468157884 873680503 223086213 547370696 69308297 251625427 556136214 671109481 507775698 865503245 289911187 334287636 121446690 563135696 271789442 842104882 466971438 515502851 983953903 989200774 591414232 703629402 339833920 683805090 161838996 738191432 588639012 728083061 55281055 600092000 249369029 626881061 660256079 830693574 859400624 961495626 134048678 841088935 647214321 758869188 750613847 806830062 519486976 854355480 735735799 792374359 139755406 766935356 313480802 816706190 315513338 571274052 580952893 648298385 729803205 810394181 890206731 957928029 207765930 989817195 931555069 952087613 534304001 997035372 632008829 778077214 697675433 950869362 559849332 768154169 174717199 665962869 32154413 430947636 947037711 981878494 922418982 985866140 955129752 956219480 247996152 967401123 390582543 447526116 36967597 846466637 490315090 637065809 689915083 753100497 577871166 789908601 879728971 946026608 192720750 593457081 138304146 957306898 517014993 958478448 923863846 963972322 148056875 287082190 711630091 821553313 715089766 814796865 68069944 203359992 318915766 857644450 432464922 820962149 33323921 207433083 734954224 900703615 46045458 804933150 123166971 576463952 891201167 940453995 273096264 607778371 589575506 723795505 336705314 340862535 305754204 944678657 367548592 508148878 621994680 893099473 902505741 961959516 1873990 692693380 548246651 975022618 452447575 505052464 450624856 995412104 860003636 956779017 556893913 610901249 889554755 979760304 732286428 912999990 936295523 960483512 901762384 934700647 439341326 479255421 432890062 509206827 788353850 982547682 613519993 775005707 678409446 733431834 251617018 503622981 591208095 981365131 34263740 67096197 511925701 605178384 655882879 936405993 276652260 695918140 307466025 540186730 544320845 592168379 569193066 817309806 729182668 861696136 965721376 975656503 477393810 948300100 117060157 765289583 255607691 827527561 267049886 385432131 607556745 990299040 970928257 982931692 80373697 404266403 488978431 946625502 425747828 761278953 556046796 992065435 651272 464598303 20762845 468791688 510673566 618005217 824742319 917387203 484995963 597308428 692650773 897134660 272154150 635196836 174789894 495794619 410690197 931485547 257142305 697125802 319273378 967511349 747611996 750032669 647395342 929640628 330380981 721844373 941232774 973496848 641175782 966023041 135529293 429808576 433216184 624345715 265597144 449915121 529750696 960672576 427101259 703348899 875422395 915994822 178241078 686342484 687654320 831084502 892263780 912740827 2734277 484821445 157058046 395016834 260199881 625588254 713251293 885296906 950818114 956685300 445996478 467278108 836187238 878273674 415375799 744792806 382145420 973673023 702808154 872174128 626676519 733692103 392553569 722711786 664066579 790688392 845975523 977641525 955761536 994823694 692884475 793081295 240369750 366897262 114855960 997848924 140903606 681622190 674622039 817469457 913847070 917478320 945500051 956283385 394117805 710859362 828935975 995020680 484131729 648210101 618951788 639576920 268836454 752037068 511507055 804319180 38720913 435709432 116148290 238933857 50788570 349084856 172290946 940451449 410780941 849760670 563415124 923386724 476315150 800497732 170992983 748144293 306303609 811726093 910646477 946345688 642110086 660170336 536974075 679145864 310370076 889894354 203299648 966780302 90922753 268743789 557751491 891428881 865722436 881690450 85395263 897745525 643805370 763114463 968287646 975372520 227485983 538189876 509826871 735546010 56564860 932350276 665904884 691138306 781941452 890378441 123960690 438280129 445065435 880872138 915364379 922687059 785023614 831972315 512797657 719895461 50718872 676747714 288309034 931852213 332013783 509155411 415640639 459836178 832594994 912056630 968842808 974141330 64682353 323650428 439945074 542451492 197184706 578824598 672908945 699720991 441896734 648820706 9144089 466519526 526104330 657336426 790431544 945788789 442446618 539702812 370289851 689094859 907238839 969534438 853235987 965321187 462189676 821794002 620184407 639857707 178410886 267676377 309767574 326255614 220675202 250779531 724633592 919954283 829006496 985305212 904208593 946585243 379353367 537485524 246312515 825556002 620076144 666535866 435369840 547863369 46360464 134915298 507028818 843938063 858302872 909220386 458253340 984260046 497652956 522805927 309194081 899256526 594273615 801081501 259289743 720650375 838590612 919871572 973388238 987811971 873563418 903380801 358763474 505591255 8642281 423017458 561648739 966606040 533970851 898904340 123622278 945028883 175153285 311279987 182742154 221620754 374075554 474731321 71119640 519275341 761385376 918036611 260801103 693855366 807569229 954534859 376442919 502197500 434190787 603424418 908435131 975455852 457973749 531856200 294472741 397778359 980137605 989936535 912279251 991105563 898375968 945323121 35111025 36199764 564049537 787891671 915986390 997217205 667418522 966229316 916751969 925397093 848630586 990474368 866055698 916609050 227914821 951774427 922946196 930572736 991021114 998020568 591628610 976726548 973782714 982436176 126498956 573016410 420641931 947245076 960953132 990108435 295184344 577300402 613969018 853657034 156897777 339265164 912703492 926525066 438748921 993455706 728695160 872234974 554460185 706398984 172632114 872772832 714188372 800486431 896002121 918285878 246878633 994590965 134310863 918188520 803502370 930990747 292116066 516351118 30698047 373635779 854956581 920901758 921904907 989233708 834550528 961675003 283324866 709083212 86594344 571928811 177837225 264047956 271064088 976507325 778832726 841035719 484844051 727835444 404357994 755549761 756439899 997894803 103523837 375836073 424967239 482217893 842772790 946650816 443634746 490557333 950551499 978394174 300220161 415892812 733974758 926244109 710191643 917670900 437196267 639084173 422840000 617506464 423309629 717337186 115688508 633850329 42666215 73999702 695835739 744757136 971263684 972930759 993942291 996426258 265324302 414770175 818669888 976338319 780944654 880371600 379671805 622829011 958208948 961450140 151055322 517155762 234969613 951340289 417218342 809788939 529406847 982306080 424321927 659222824 914237632 977891798 586047680 711779693 224088559 685788765 651498604 915366827 78396615 403288543 979324332 992069922 309696919 786242255 45708064 61086406 699810264 962828307 132262948 916822914 633741005 684663975 172504157 326222718 536392944 684449048 628366917 754956955 242156143 363373390 812269873 924140046 261728427 540533356 858429422 957918734 496917204 613226119 899284774 979820240 856272190 932502371 734575015 843022745 795059102 897352709 515688681 885102000 211551617 469580527 556731484 798494051 431491335 563461810 660652758 913556031 901143066 906556272 66233814 815444577 436227849 929802752 20210395 258104149 974714598 992359851 586007561 835977765 778056912 920144394 919613274 936993124 360865706 525540311 877973713 977779136 949332005 975886952 853904390 937181134 809238519 941858291 801152896 893987532 644790895 886135983 365585484 466318788 107729778 728567222 549259464 904591472 345358581 804207043 947394095 989010063 825445168 915694715 11208013 294586359 597041054 704420969 626198468 697974923 740461441 779956302 762598781 876828676 358713892 832822194 425242873 453076262 571201378 895209819 446252791 891348658 42819425 728418686 525902890 847861413 932576300 947278707 384955245 944496530 518800959 916145424 325925582 519410569 786515420 849812136 581061155 681760371 543268155 815467252 215948140 748937064 735724689 917964380 448950526 867644046 576156364 709658109 658973366 673285032 156108918 699004913 53342038 503410680 234470657 938388035 420362792 703283346 812096612 852038994 756574921 866117040 601784429 627007574 761088970 957385063 779297640 876723870 194463373 703822256 198120788 945839316 525734760 729959819 142624211 642189406 626742093 775517543 576245777 922426651 965740309 968001744 559708663 875989654 372903767 628967568 930347192 958705458 721265024 988717402 422523715 663586318 170823501 923009752 765301185 984882541 96208334 295907598 272092050 784859961 323200292 411538967 351956703 734215726 17351718 339388970 902383159 965308334 970804922 993839648 954623367 987981032 868922109 880386748 797808621 928816978 501879641 559150087 155054444 922078014 527690464 737872816 644027223 934467864 853831735 869008326 46538710 478554026 222439628 977735258 274539705 338879915 66314048 341489643 136718928 260363334 853191635 871325796 210117501 385668826 453527549 722037806 505813948 817464881 738584686 995769786 190528679 766012702 455732140 575965002 815605152 817321818 168604240 738783721 315376519 804070087 215174608 373614337 970909946 977568907 615410557 874964185 466703662 930220921 814405935 850807929 39274438 509494689 839505601 956547606 680782242 794933057 42656143 745261006 117635926 184398442 677983991 689601525 269041304 569425057 565312439 613241782 76574020 119156705 774836062 993834919 893569177 928050363 396674116 970497819 716749518 726053249 115306314 932622563 551877351 660388044 599247557 883428521 804699371 967866109 949524228 984426483 236386213 681847239 704095558 734063517 795725027 896034454 552245551 692955996 5897768 940560744 769236931 861201783 859010692 942705630 32033839 162894213 90298372 715661219 317647873 396824327 938529493 973373924 75663541 842355421 601013495 762126688 499285197 614565164 206700938 504828915 311189726 367344597 864901247 939064425 684207133 748812547 556288806 823056312 715117642 823963831 956969920 987313154 489320407 539571000 208879778 796731414 109991123 745098944 677717055 996357196 735259674 775121886 6538175 753717195 795374177 841617979 929077624 942213491 806146180 806867652 420472448 717845548 154116905 427891649 241148210 355840411 817609576 980113243 437232491 492385317 392972906 802709381 943081562 948999671 669015574 782723504 813125057 847385852 528123542 572076561 631696662 910295177 337600602 378170620 292771675 973373684 939380113 998987183 345658432 374140291 852722422 995489211 419048719 971732388 47981654 889715133 664808720 843406812 665563512 989363124 663540903 807421660 957774801 966108413 433968743 654660865 414932333 686105026 944122383 948524094 37057618 434309427 827141153 926324760 310301010 647714265 711095488 880350260 194999733 886206099 932706216 964368357 606915289 912959048 829177201 859097770 264548860 926130258 321967026 884556080 717704482 894772658 921400117 931372462 887600034 984737079 725261142 913452221 219802548 410530252 73687002 928122584 61814340 808623849 491565811 802528251 990487927 998514111 251476385 764354528 772706333 937253103 925189194 967895638 930198706 953845720 29817547 291271246 972986003 978952060 904203533 913916848 432928972 731158509 658321125 717759165 65666527 375183889 394248907 704791899 902728258 995387209 647372951 977995326 259963147 476098205 748356900 923626817 742724817 763665281 426681801 659364400 650608200 837534970 430801642 853923197 321231021 721352784 500907049 827374968 380930420 426547636 872161522 969139490 100866133 271622625 893691832 905937844 895965236 986803953 71443476 795769813 252107945 528058939 116563519 574967423 114491295 354040202 298779510 305516729 914152072 953337915 547699795 642392734 289673248 481541241 819704305 874141401 750745089 850572731 302384332 570395965 560317456 647492017 161547801 784785833 914271660 994546535 901444486 935535718 243722932 905902310 756162567 828126937 216844867 362720153 509339861 821950168 987319549 987800540 639690407 859833140 212519985 218150887 561726695 587526761 176302588 692009220 766143177 930735319 773268679 854148674 363533645 422308350 443328536 550692425 412244988 497627599 760451014 932053903 159229032 934022507 366598878 402405166 395841865 416134711 520892410 871324124 829024897 840528574 33127595 41656749 822752165 837685813 815094290 973312496 326358909 997292525 707666650 960409890 110868727 721725351 977658102 987996879 747049828 810158282 706918564 740261157 191392134 224755697 90005922 505600942 791906069 905717710 738147024 886724167 306133622 981409685 574964097 702590387 118118325 782919089 119634245 523455143 827728146 867287289 921612812 932621375 739521044 971830278 159468801 383232808 832716162 931945289 468906579 971493522 435775084 445194220 404715421 873187519 401269202 787686152 783274647 950976466 223414244 608456331 543584029 766456503 285909660 775815863 639696493 947148868 369890581 705548963 977480463 994573833 411304158 721337975 372319401 454360152 612073595 711230009 522555545 903743772 266393779 838268527 973392540 982281367 239433875 862517010 896605814 946352505 97505726 323600692 295659612 405026023 848927176 930929920 179955710 401995470 184145749 230192860 167609156 239856120 615492651 779453238 561611242 679193521 65603711 824281160 348970271 692409304 358670485 441150766 36537586 162894706 101524130 303368093 594703285 603923033 216801877 403009591 137848201 311676281 215703591 819688068 323191274 908248310 321762939 956715666 310397357 335042140 535496956 995756030 204542126 793926810 404946818 464358968 587903429 751631912 182833013 350032480 739588987 795308415 284051108 595490478 522979666 892342843 55684011 917930938 262816417 583183381 542401178 959437400 593299546 781144190 532465777 663835696 808465725 834991593 392650139 416292901 936331579 989221511 462752407 973962653 986324332 993985150 56201656 811221388 789949 597519923 386026297 942107637 663534808 673792972 833265992 838193901 88485762 755897738 482429413 589777199 52263555 861861160 312064577 329048490 624692509 824237360 251564294 621497079 416284968 773066609 906708127 952030084 770260214 833789346 640991570 962107332 26973705 57299166 479759957 810398496 295905938 417772306 615326362 747084926 177742551 905353693 823681391 837067330 284601573 807309322 431708237 462559277 109930564 185209324 43947270 778698404 423221702 948809583 636580729 744933305 860403645 987656593 658356167 750046518 587955713 784444715 530820856 904614877 24486928 826761185 376293139 889857723 263808301 433094382 815090857 912577715 55007481 777800031 389173338 870628590 182768792 348771335 274119690 527137164 722395978 851975754 692840007 743224814 161400354 512578543 63502042 760596429 401155237 909306785 61143079 384715267 674193599 730041224 637369908 768231987 184987343 509732822 652319032 653075654 776639746 779723174 666019578 689103076 478611249 648456806 38427888 780048329 294845138 591196001 159039548 713424714 879616768 969192037 557248921 824059059 800540569 952055357 924500863 931279595 385258907 878203959 2383672 771623875 319795637 548302442 310514646 345235421 407883351 716864482 717354642 861583410 689718178 787842973 727404196 777280851 488716935 974738203 725618854 956047400 879844413 908040947 363091494 688571977 516612593 538766067 118925252 590406552 356512490 890497972 626467044 817163094 467668656 955094662 341559776 761591593 442998026 697327970 649748792 719822229 810827143 885651250 395360576 641821202 693360177 723680827 673703583 927962887 988304185 999181446 899323480 946294913 444259170 483479217 771416278 892155129 469638857 929274717 276402989 364134620 839305535 900746259 748477283 773767910 300832396 553947064 426876479 891281729 373585665 508884341 256391004 393650023 468919098 674904037 407429287 982336502 127864734 579165855 364609286 647259856 932523736 967217256 711251469 983515934 396948694 469189556 652738183 907814539 703474498 899940176 576867682 858097094 754527217 848261326 743266787 819856405 319460315 628141669 479385758 533452942 593820814 881573485 769381845 942332461 410794327 503328671 144822457 871255352 67641029 902750726 705064919 733730869 965438810 979745896 381587609 938314729 506517278 751218343 199928490 772272804 827109016 956307899 853829001 920498380 256424108 780257274 427636243 655886582 881784798 987729039 230506220 714074959 772751624 905667249 61547031 612603351 688072499 876921030 724386727 911611752 257353209 632033880 726163208 747651352 761519334 900976688 439071641 568333010 658326894 924474272 270791778 703707332 714382884 828258168 643391179 966703133 173003122 371563595 521252357 647293072 681486233 682326042 844269363 976679488 254998575 753896690 838790321 891865714 219477487 423272746 89154809 606938373 160037854 208249691 108172516 287364852 989092927 997934521 753073911 869563453 742926475 791887575 7514062 73703518 128050715 332436572 110603757 145837018 971984767 994521593 510892627 865629123 624251762 646724006 463633956 544278095 387995245 772388997 188129462 735458753 251641357 419280249 859346066 994192117 976522728 982789484 509265803 769110054 591327468 740028752 600275427 642996419 208013100 310545635 389768322 414735149 735792105 903314304 806033784 925972040 528086860 625584624 684604543 899934001 438562545 793513477 796124634 993656972 756034792 969178514 91078089 743307604 269011837 491469294 750723207 935732879 889691742 928175385 890047410 969777931 918486080 924934797 839087091 968354503 975320118 978781337 534299853 942195595 293443388 986313362 58760217 178878814 100664448 694444590 850243878 908702214 913196672 938936820 572256318 784070381 776840576 938000987 66893925 412144491 976211315 977493037 798393742 930651595 705332659 880401502 902084128 941317525 82920676 199362200 734167475 795202237 37299075 114220630 770091039 921217166 639211083 835815027 256865462 760300716 219527851 626755733 7665862 969978555 332576347 745582563 837958253 877792280 117342309 872234479 69229303 857598976 802964325 826815929 359004939 779321657 273606604 453037143 374786924 674797114 335273605 823014703 154357940 256246720 92579085 805185646 540714197 693030926 615857218 622246378 882303242 939833541 223906745 954710239 866909333 965891399 311540435 352314691 76259188 444439904 636178018 885640288 156495641 657085301 80445671 174605667 548752531 954944917 743404579 948146389 696133886 863048673 146363562 414972334 817778466 979265451 167589737 478687046 620114407 884777124 798078886 897981467 492525427 758978644 305065579 873073386 527961917 622743526 66131190 826994199 12676008 266310440 704993271 768284348 378272416 744525808 20515637 751455379 183468900 767550122 5413339 937074156 923346488 975788721 510602011 921602422 135352802 829238180 258984140 667191049 615572265 990277338 628848334 916250238 241539295 540151565 747644559 827879483 753491608 918109645 348605967 904547494 391611240 512597422 395613991 642670144 494241100 527906338 589556766 696191584 347852746 641619251 489260248 539423857 92172098 853126155 294684300 593230824 657605847 880471125 235278705 701766129 329005946 593314580 98884309 404651884 247970246 882943155 228444395 465742185 703740693 980685755 762158338 914597435 557764562 976907032 375661832 490941096 251769781 756728626 321152400 346957433 816757669 893483252 755074224 793382194 568508180 756685205 284411590 499196800 335073010 605256251 145140807 148633385 501346442 812933185 223998156 540710803 691192720 852057412 95127923 634773207 300993169 892087886 916780558 944497454 531247352 825312770 801759144 954730627 814554228 852763231 536237967 955651597 114698086 410245115 756401270 928038406 696086510 971116860 991131603 995470703 753479271 806606150 38088333 103590165 812625231 942713160 132850469 894920021 871548803 932573349 344155417 500685474 576885557 880445763 235892629 720294057 468215226 656225793 397137647 832679033 469324145 932565365 100322003 597667531 808666565 907461330 128567027 516308782 319852573 388905472 29787790 75325826 332913037 785533949 681961587 690125665 98661992 198419385 265829952 473592808 496321585 918848517 849933488 914722012 228467577 721891577 213865684 586433033 259301201 599058634 262276082 377079631 854935936 864564675 279199429 782887929 871986198 921759418 9555232 953535045 546714810 676254982 374226646 705581167 939494343 968373610 221066349 632131308 223790735 572015151 897200947 903534903 816797033 963477742 439857412 931244262 42856743 219187321 3131787 768771742 416779570 807960105 54464010 411264986 192165695 262047886 128388366 461335957 492496475 751076651 99141152 838079205 619558201 672730928 700171790 874486643 763038803 862882952 32704453 326636221 590457402 630007677 950604784 973804610 69102845 883434083 897593329 994940272 605540639 632615957 649526376 771492700 78820419 508909631 699053309 902690375 658817891 683345022 131965046 268843328 182277733 457882990 672797963 870779473 142935737 216564921 103195448 245296735 327991105 688303230 31738123 878801654 364558764 618237696 405276187 608294749 350450415 454611582 619583364 686753918 713661529 860221204 939301807 990505986 655548490 733987423 53503297 802904373 12885301 222070285 774524818 851899096 368177317 782321324 889244440 910159983 249990566 735714227 584566179 910996210 913717575 996081844 828665019 910386880 149977140 154366879 949880642 962959291 711438902 720754672 118157694 503730476 860476622 872704912 223831742 401058758 922431495 950245740 473739447 503726678 216816356 253592032 498546811 598337313 185541225 970011355 406688592 626416581 628557221 712392950 418049073 498503833 514111544 612806248 87065266 104771739 623675373 657067168 950484211 991842041 996827041 998997401 902892420 915291990 954081056 976571519 490378722 833127354 175278786 510084014 555672301 828316133 274041312 948618023 449696790 765031506 453079905 920616780 594686051 911495517 413947116 570186812 830409829 836016865 552163639 706539138 718243093 986509895 534989680 845706253 472228413 830634750 258025569 599637642 954435370 979591245 790436416 827083707 103200666 150426459 880201466 905502602 115731520 520034995 497836882 629082117 327377847 538498433 764437382 832687650 941492435 953682803 812743441 946430402 658100056 971845102 796699309 829269338 359349575 724731552 803992140 814018339 531783129 552782514 899662773 933933503 81619786 466490139 27475568 182781761 471392422 810490797 832365746 856002430 558217147 615366807 700892973 967588170 951482730 999035481 846654571 998602955 498014447 921018047 138795618 603644015 436203615 617086583 356898270 848290130 307468490 351697287 437789440 645113698 545226152 565143612 193310085 670267467 49659618 718289162 771305682 846249974 408684394 834440572 717167195 939152179 945505490 948570491 249741716 865302919 614356933 627443885 636697874 903156133 593498493 730155632 712737988 847934415 610808740 906167338 970984993 985159797 978964253 982415844 351867849 566883001 737752671 957945010 946681744 966296073 265877797 867685232 942943265 993992731 786888951 858183562 339363142 450667511 463273352 580105331 487259151 968214756 152896098 716473572 87631137 957426965 782105823 938539431 911534906 952216943 418309122 964593445 145193841 639235867 687812420 942289397 878461882 954648113 676287379 836967588 263786613 985269177 475507853 917862330 46636949 247086973 578630725 956300840 553308760 754331149 330622222 393830812 76750412 726184241 583435344 805158528 135493107 609834586 198021913 465793637 830347702 837510209 630052148 968806003 598748021 766954699 288842097 569171593 812810584 995627833 809041751 938499485 729974491 879251810 910667320 955169913 983372875 997877337 5465207 220310811 162044955 962071472 416428127 747750973 144155133 330826513 83295491 767076234 934546141 979832316 586095153 589728545 81981413 521660380 629254083 805592995 667804232 823476223 636136277 902500482 778988568 986477202 456051424 471131040 31163882 53137037 215252829 415303547 828104591 883103520 556431808 612777865 351038445 869832031 799299813 889945172 545813150 796241194 200244287 844353232 496845737 915556940 195895500 515694044 217935669 393796208 78814989 452627732 315969797 679087340 723026803 723285577 913616769 933301302 88960275 906716736 3257833 623236814 77510530 155743448 550967809 684983582 611780285 645872312 462640031 501273715 359460121 613891389 186865816 798951587 838578312 987174380 223300926 292084715 270226124 568449348 764661520 804425818 430484716 774178409 379471509 636347093 168210040 888154163 840984639 965003742 360537458 646337730 785682631 872003183 539153586 907940113 96198952 135705528 678575236 855466326 510996494 740332351 187275796 577084690 792917505 861819217 733858664 876470400 280761769 944444875 469427986 700270634 726022359 848076112 873968120 982069491 201567990 913447575 269667539 390303765 639144389 789935120 353490712 819742360 499588278 642631793 120142532 330874265 861364661 973392996 711387865 982937748 603686791 649508578 189973835 205743171 136302479 467840415 747108294 941354304 573605405 997794842 300287602 464651090 593280976 850753833 496672166 938072222 161787837 624342387 627060599 978248972 489838257 719121735 429217067 899375579 464796912 832006658 418065371 539330012 776025748 876073723 103915219 738963235 916699204 993502395 671236961 963079354 451172096 745625141 86163930 991388091 570548145 698680752 323207215 748568956 909074080 942758865 914898661 917953731 807006348 859116689 183169838 827098784 24916776 899624468 335978906 941852525 505268123 731899215 961274136 998942428 352395490 824645262 148725752 909293844 912692811 948093896 580526540 780930945 177897118 667703365 378258672 849095327 766787492 768728842 624537558 703641339 301909993 815772778 84800357 346403595 58458018 65903963 81545780 694204634 459026496 747939834 254808671 796362544 409616093 461776554 468680751 587120221 171499706 775555602 980873312 991842198 706956579 854069473 336041144 465229792 17474502 438942141 726014771 774399460 748872589 876815469 658337252 897188561 186910159 395155772 514267721 730278451 377499602 942133470 513451615 675920864 337352573 988870971 581160478 807225309 378876941 607193650 133651466 471023505 848295789 909054041 919935265 921004972 142429394 699131772 784204943 795906626 265394907 735803647 108535069 389364135 662047702 833605747 248633567 286821954 44700425 338860799 944870354 955741208 841302818 920904565 175114266 901775710 172935825 280476164 919308433 983270002 429909416 930507385 547565261 859971420 951405574 997700753 192443582 383514593 45584718 483975949 165447521 781924996 344243385 381544743 345313556 514406060 786183227 956758287 740398890 762218947 276373171 391849515 933666458 951869079 906997205 939799196 410640807 864488337 826222963 855783520 201613196 525761951 698986587 710004618 207679510 837601345 310214390 686886691 479080414 678501340 789491023 968854202 985219025 994819610 860658805 916153596 301845541 414060996 852872729 912971195 45379837 66224549 756819653 998419407 71957255 301755231 353818603 762445590 747408740 899751944 804872265 884532092 781079125 849395800 3572626 401965480 80157863 905660464 164825719 648303029 194303285 632269188 145869933 546171336 373117442 537623465 418088425 558486191 987644588 996908498 599750921 829786070 353497631 484627118 270691161 386881246 383932576 886166742 940628676 975155029 668500410 711149598 272167377 812807492 100408004 360599976 137037813 341782013 851350888 859489461 63803673 280995636 758690288 776777982 63293195 647343421 621968720 794833262 246661117 615867132 210580995 577077683 923404581 986980711 147789129 585994091 544125799 955058484 724036730 852974272 170489478 372721899 184825217 508276053 561906891 932686131 920387687 983251807 32074086 690514709 369643070 968678282 375668530 667571450 517674473 952014776 752199085 906073457 97813583 654146679 689485941 893781497 748663324 923132026 516395171 951356749 852195474 938629650 258194772 673829550 31527244 571046675 696590497 879172909 237683626 815032670 958166306 974830808 619639693 812008906 61326010 815037231 425859830 916373723 366899420 878207247 900603811 989993809 833270033 893817681 46566230 396984943 709790961 846603558 271994669 681895596 461652035 467046250 633012106 797543883 759456949 883778919 751245056 830796664 234886113 428386897 321144073 433854460 428642580 536120389 721244675 900440505 389741638 513479413 531640638 703393430 537967470 697407481 805638335 809534425 73394590 589969993 840172870 875720715 223952053 238800810 949292655 958696184 680568583 867739044 53786577 374776793 893793834 990643877 253969051 801200389 351247493 842658623 324736641 850492509 632854533 656143100 618054687 932921809 455425938 558219375 559529277 801470478 971716829 977191999 757072937 887479915 968140645 978392172 683369596 845008201 206347290 398693762 183712583 332051162 808996444 873633218 890013912 968760122 300408797 825932407 290501644 772924873 252021501 597992104 977605940 978171047 583223251 787630607 82702402 156495171 24843841 616376148 504583094 869518819 747321268 869987557 443392039 713181316 262673005 459472462 466991108 878806293 337991421 508762902 742047233 871276512 977628783 994247794 583768531 988655408 923474006 925517764 476729807 798245299 648840907 687172591 198634082 411898894 166956611 422837732 960974336 980416893 781246952 831493892 30683162 87433443 127131979 583137226 272560782 316917522 874695029 880181017 56502072 200268620 816350940 930763528 352881336 898980334 83303111 350122151 566224443 985620902 803428851 862283993 865526551 883746488 600076634 837858656 70823728 610573638 485144230 928191505 870841943 941447308 683517252 890269469 424628836 766944832 153624191 897426682 14369638 958752410 910028889 986365570 185895991 249794593 464134222 665732795 653983500 958809471 211278868 655372019 563190800 926540579 887227145 893045549 160801471 325919682 666221074 950809830 127500971 242851756 36933378 392626681 662127390 950462608 107059802 865202246 438776741 800285873 495624254 737246677 243389158 575467488 166029688 755485085 342515313 447701586 215208635 340793419 267281390 281035819 99320153 152489994 57593506 792131264 450442737 482652658 881655415 962282746 705724773 885625874 410222569 860326476 470797992 865634411 971933085 987766285 218426789 534390782 759198528 851481361 807474802 980756794 636772905 780293338 952834096 976604726 630475278 641030113 923981451 979344330 841172317 996234347 754263006 990316492 408429858 705685561 925034210 998846448 517061298 772243104 865928373 972126302 385506799 502588150 202852713 947758778 330440702 505648777 122046773 772691390 818488017 913220632 864242468 963681924 73831620 505295401 710239068 884808268 724573227 815246058 397016077 475436192 56133566 104171254 552329807 586334679 125561702 680577303 215443493 851303803 490781182 679975347 281569565 592853444 846059949 904318752 320762158 347092641 548999549 984984762 720228630 786722113 492091404 502242893 939013357 972816654 568034734 765691738 942388762 956908092 809884805 978448737 288340692 421877373 19051584 978464429 569920704 720574905 838383581 987392130 806948600 849856493 654999815 913431367 608118040 701165735 343880617 420640159 594619944 874759113 970666580 975007444 225487997 477057388 902881675 999125748 204582524 567648513 264476075 433835545 56989691 693355536 695690367 763657495 580295345 694441202 522283369 958588385 872581456 980339863 495236550 551036818 541997360 740476594 489044257 970018292 698711076 747769506 763580589 776876632 138797109 969421187 91948475 111923374 563033439 922381440 357587870 680278072 112694891 950551459 373173172 737602846 77583999 416661234 238019614 725654104 228723579 565298984 78556481 667920533 241931552 963214618 178071737 188895961 868437110 943536964 462020677 872942581 786905508 848054998 602835932 686976032 752677736 885003571 944864013 974358569 995484817 997737675 944578904 955987320 380551234 805869487 793627766 840039374 811393569 896857947 847263684 913042705 979933288 980143613 86666946 357952904 802189240 979034040 911345218 944826519 855764729 869650823 489966173 831580992 218702885 700177561 211140807 633181586 223562133 686788801 861806732 952119464 916335876 933551664 247516022 817170628 994765601 995060847 386463230 395612170 149857124 599487897 576403795 733154034 342452902 738672142 867101449 886375324 478587295 903968704 506424640 709377543 307626522 409380646 321295017 720259052 507589980 568901558 922631598 935981494 530085943 932458280 785774266 862106845 305971011 613303871 991038021 992300484 762101862 832718079 214289227 861986069 481975397 506589174 837893748 946790884 913205463 922818717 280430486 371359184 247905989 840486776 9059468 799955895 27393065 202812838 736464296 812551939 818646783 915234878 341534549 957638428 912064830 954849321 53215052 910400253 558406719 636130617 370111351 531229912 553019632 818670410 403247027 895226616 86171970 475737138 914795202 974575120 630924229 873634391 952396357 961752671 802304552 902458687 960074933 982841678 992209513 999033133 85951448 777083057 779750767 864694792 16493583 354485076 126235715 607023044 89962041 985550430 156137289 985736395 721336913 970532482 651842927 912103178 19257359 378393152 821719363 856628369 429226404 752457872 186466313 215365811 777901645 982211248 498093813 962994009 706786516 940197064 462538144 625274361 928601249 942997890 699258537 944045731 643208824 949255453 925070505 952564084 497204049 982927400 46057932 173384858 416454800 739694744 10644664 610937345 69830270 159542717 460804467 717540142 490633138 722296700 846686709 988497717 829297939 862080193 183892933 496854258 346988983 385702990 439424874 646352985 540602971 724756411 28932025 534582995 844601185 979563870 963588717 983730050 626786076 922760729 596288845 599589456 218446677 394124827 964163507 991947925 345494693 461555574 933347070 964358776 22098480 964993116 621677070 781037428 933042138 962376457 592266670 798251672 81551186 638322395 398688208 778105640 838171109 983276437 624070378 766943696 348634189 765073867 778792864 901286050 554910266 778747168 454663148 968960955 624531843 662194741 134092132 519779868 113869732 808874467 594506430 665428765 711274055 982750894 154494416 768841274 591314991 955472750 73740286 500337265 455659539 873358315 335386664 353254135 608053254 998998202 233775814 800465773 97399373 270937638 290980499 926405870 733043075 870267042 18040804 431289053 490868719 785522322 168166630 959776947 981330138 993562376 20231861 95811978 215540439 839113274 796163931 945555033 457553717 462491583 984089971 991939610 893741480 949498523 150530953 653115664 959610099 979571299 49893807 164645454 264205133 404478366 733083261 783873320 697206664 778950414 658639559 794307584 423045052 986837742 647359848 743496328 209293429 880065545 227614788 499223154 648530374 714967751 985679224 990027144 373518068 935331802 958501806 984210706 28518440 679259456 946717293 969129276 398542320 414144931 902503364 919803297 622694583 822352575 588486969 930300818 865161233 969796196 222599761 778272513 238704065 722888426 100194859 513345481 644265789 918810042 52804852 892771558 648221032 705273331 982595714 995312420 541731327 632339603 565229320 572856752 640314045 793362329 722844704 764023900 874098611 903326600 244229130 763472321 908917910 932856022 636107109 795105205 62365723 490452175 721238436 872401027 369002287 535662359 595980898 650420102 996431831 999332203 619730328 957948096 94870053 764008231 403955706 726518912 618550094 954846978 534119763 897970038 903586881 917256240 678513477 743723000 864667816 929681351 799324644 908861151 436008349 913092232 979415593 990714833 938684995 974746792 467750722 827746079 83068067 598889884 840249310 939593088 296294348 518919004 204518054 786706834 578443273 675360877 336471920 448392180 654309278 887662599 789870722 857993909 86945183 861371759 742357218 795157117 279516673 474674751 30789769 485888656 990564181 995033062 538383681 985312437 844571547 870612743 910424654 972618330 101603076 758100964 339344520 723125216 890681040 998837824 216923609 254160270 302655167 712905522 149056099 377015325 674843481 762237942 816425833 866874633 113034230 412651870 633539673 741917510 438555764 456196406 866387924 912466290 757398425 912016743 974381804 995050501 788416221 802933236 913480512 923275433 426859675 775488797 623608551 874879862 157049433 909203632 388254440 577805215 86823003 832340429 86402778 135703424 615575168 856065839 651616857 831034672 910520500 975848238 490532210 729147610 969024003 981527198 355749997 654307005 302299060 578389499 102008483 207028225 517710649 919108028 380919311 975668962 356861934 421992625 762476797 903196826 769809451 861955218 348994975 572796783 198416875 494164649 996675147 997045920 315174906 710670737 878505371 908391526 227014546 639169311 573698458 820890929 119171262 646445749 857725514 911374147 221092091 300136747 778033741 823990813 474275058 937455891 38465357 459187798 642879166 732765933 399674173 813809665 765593331 895125798 846356182 874478287 396991415 879125795 997963678 998442747 369327232 535877787 722340434 883319086 693938017 896451340 843215943 876415445 284481106 958750975 842658238 893471789 196158519 935551798 563973454 951486319 894591981 982439498 331726040 389822867 971304015 986997236 774146319 854344291 936136616 979904076 123730797 155757131 535161270 546165570 723237696 756136942 833955068 884855631 58541403 697580789 687346968 714987704 646267362 919396495 5469781 410291095 284076843 836647973 417069552 786081958 282722425 380886894 55058188 522380781 943492377 993801011 828469462 869139937 551898519 827525659 563197950 796660603 470364090 482927538 370661109 444807995 456437883 610166477 871658341 902030111 507636440 987164109 829162419 933720634 485760842 911832499 714986461 875234526 506880936 990927674 802327708 835154301 28404675 658326283 777126513 833740532 486072038 706409065 337892192 642654548 611155552 632192075 577000998 933936723 640651752 920026401 640358192 907723062 778818620 960296925 475656377 780382642 1399586 721080098 166477478 390374887 238413249 878487981 398424244 565845819 524532848 801335563 723822677 769556219 954707370 993887304 842535720 996755799 984404344 998047099 711204730 923158198 173850188 874704520 705111067 956866634 704507281 722407514 131592211 958388098 537663634 734118541 574718921 868436292 856502573 892945042 610035096 749581958 386356005 522279147 882482448 963128382 865683975 989881480 259220157 850723745 627011820 856091871 669647883 732050400 105732168 398987916 343036833 773591200 358007694 676805860 749329335 811429292 798599503 989310429 960123231 989188736 986933703 996268440 322266245 593131475 82210771 807318186 884037418 983308763 405159618 530841767 789039228 886873815 120395402 386657107 557865061 569916678 827774984 936042103 680998130 825726656 50152945 627782142 356034445 772737672 467163869 803656214 181104285 823080474 440498099 713594470 928516978 988585773 69030134 762644611 5082264 947961446 942379764 991573812 498970601 902318499 584196468 791973287 904995768 993953375 655844940 699277612 346739766 590127065 802827325 916799382 838598216 901804702 780668573 820412767 31143748 557034533 437386823 862374665 768288210 780355711 960316542 987986322 654806827 734955770 97706698 548173269 331706284 527146937 303140631 912151856 519385565 676128775 181064491 754350995 290139257 851008780 785839588 864961449 231573817 974070678 153551304 511123877 666516977 989383789 558310785 936143944 912294214 968766975 51781707 475177463 675709789 912795715 235775558 830042591 88901384 634687189 595062871 691521217 316987606 687173848 650027170 958895316 633155611 791345703 128980038 579108101 736400425 776032724 59575460 670192717 899799409 903049768 580205026 659247976 100311373 962500679 496085019 698236571 434407673 589616250 61821614 481028307 888298148 951944364 362778037 732023789 952286068 983522084 17455584 458771771 230938394 976848732 842499826 918280857 110851642 900232637 130182275 644503722 26295822 160544998 553835863 622140985 232770275 776834187 607129431 981549740 870150907 887017788 771284538 823050658 562097425 694108602 653357507 759526996 114916426 932757893 376839013 420781512 118351743 982129498 418963913 969829115 799690578 938292689 496612814 739081210 288097152 712424417 63232131 247531784 571249931 956949559 611024635 858990257 545381668 990052683 679913436 694564021 925055441 974502021 556885907 941964152 79455764 776548767 482234870 858444739 81637474 456834983 343709108 513201503 511193659 988139612 542543564 863341701 88335455 884226892 244942978 344868451 829739845 926101768 529007508 662441961 235755153 689054640 171263817 540288864 434003725 669627966 167271033 974164683 159408862 713236527 784003042 831890457 777574066 793931597 419098441 987318643 722591600 862171599 53963756 193488595 982542592 994037130 781917527 846157966 899418700 958576824 162051720 331331677 921842494 979871824 621414589 641960547 82989920 180675805 258196766 442177810 995797847 997206625 785919256 919256860 714941248 986342611 910332046 943143334 876442591 930531587 542707548 696292156 371183246 873317405 30773044 154715921 947888488 964666572 233645786 255713052 150112635 796386685 90979126 835452573 554387846 961933259 481296748 639550790 594812755 967717001 52555931 647746053 649830666 722879248 606243436 860236307 819063692 928191102 281167004 858547858 711262622 864023949 241088501 897742860 694447104 925215680 791219546 941941473 929927462 942768473 444673907 659740191 413740054 913969663 269220093 541517159 678244820 874622951 682407930 912041404 246301287 655620764 988373064 991692696 759972361 804872741 801321454 928844863 443944653 480567551 23869722 580065570 32691407 264097625 883277009 958727587 413204890 812646246 706934459 985465493 338860374 792525156 739882119 757664144 535230307 630916317 442354076 741443026 159642829 227730098 314652469 724871433 480612161 727850700 72178861 431821764 563617292 989140882 567253104 688871764 674394315 686021214 816766299 975414579 911883174 918352097 971345421 974586568 462995736 491192262 806048786 853860214 624282669 687236743 987296082 991582180 555052871 901227690 226753510 616131902 832395623 950172111 720060407 908892179 41222750 886049677 946080046 956381799 509402335 606003848 713318876 902351734 493013054 797085012 118861995 157884649 68802203 673141580 486506667 964574148 552330092 753896451 322114438 830413749 62415482 991317261 452939459 464995116 423288135 647416467 684896552 895474110 931821290 954039448 758791733 825219601 472244343 757138214 669994633 866125974 812481587 926554661 900110983 910393711 720537702 794505051 77039046 375562506 47654586 138202930 907041851 946772048 995299441 998782040 885988170 899955722 808535372 928550305 521085089 664639938 968121668 981464280 315247388 614574592 831945735 880153979 938334811 981507138 461088977 738216764 123277825 139735631 744164023 754570532 506721161 512494619 750634279 988264729 56939105 67666410 570912154 772701051 588294128 909607940 627898161 640049105 366917686 556428391 954435251 978720846 900373360 977920093 202745240 757583594 807377375 868181992 60002016 107740075 481699221 620483537 859106657 970047087 235449353 467734085 627613224 797039697 524808005 534162055 165945167 221875743 493680916 939837818 237322012 967029801 842289730 959164310 914678438 975518915 228134898 261304996 859796037 951288244 680405502 901513410 123018779 996810339 955073523 998162298 437477685 801777198 138869936 326021736 816092821 866517007 479462609 669800395 612845307 729672707 628064260 780490874 239937262 968485498 88606923 603917395 5902596 7284255 80227716 114022869 2711631 166976614 766828008 954750938 970436229 996320421 180848725 353825878 824631074 881753190 821423568 949891064 579159780 931280824 100344607 536574960 616107123 782071289 369810044 465386797 438867656 810173317 997746508 997943873 90626676 692182241 727570291 982216327 626541362 768299435 485918906 859278570 549997024 700286768 633384795 673583743 375958731 667233431 366877407 851187142 591123387 785257908 315627102 462601981 686281391 729554056 418522337 608028193 50746859 252042635 785148247 900648629 494716436 653025631 645246185 704422655 671405853 915832077 440398959 878272060 923080594 960237513 764340935 769986939 665941264 845513629 925495 557141505 649817493 987266236 500320376 992076204 900813813 931768519 333546020 979148927 484717495 852403990 905991798 906992515 484619010 861955605 635000229 695763800 572972894 762376207 334561896 854128741 610475097 965586910 43798437 950550348 885290936 936140598 557692828 754607154 786392938 848230569 454842742 866584131 60708210 756181873 322387185 518481863 593280400 864767364 642312335 914087091 858356459 880066617 246195612 986130103 229302817 713390785 943348470 960078605 450190166 478481710 729649106 729908460 704969867 708192319 923904730 974955073 879771283 896154128 707053595 833241921 537731171 586960198 435436418 699533196 748935731 996805971 877899908 941211719 50212131 386476926 690847379 913213303 625175848 758775421 793208801 917858487 761427145 830988263 480610764 954604991 153969694 835532369 849749380 933901496 815610089 877898636 924773731 989959708 247217835 896051078 94246231 167096653 888850618 940507706 920896680 975418954 932262257 937415325 25203358 257690469 684619394 982527168 840345897 933300170 431178510 997271236 605384412 750253851 439064742 493917414 110816128 509111114 63552188 625313871 79723825 452194283 834238811 884149833 859345587 913242650 679013187 891377616 874673106 970532865 528280805 566446276 391751574 957883215 974006545 981297408 13741615 616828603 252060233 607212488 302256918 514197019 453617655 510881663 561660251 903722298 764979333 787380360 675852803 975988818 115625619 128756225 38177663 651581538 692557918 732222435 149896358 963208225 857114071 990997986 473206468 534118995 98835529 603992485 777464431 987495625 40222281 463204773 653412365 987927162 208881051 221845320 322183857 647189765 467300689 795344286 195408719 330656418 287150006 895330689 255351094 452449554 323252656 426057920 503990626 832049248 449416276 964159966 153220200 702171470 799669673 941736407 735399552 827599857 445176423 471339870 836588096 872721698 737614224 782973869 551992775 736686310 108526532 501530224 856768010 912788059 314282587 909202434 926008249 945882130 756931464 947355351 923791949 985183286 385765534 860106034 489329943 547895816 293741005 994962831 845859021 917260281 388229814 616126678 478535703 848295854 764470318 880320686 756821085 840241057 306186852 650454239 586901740 690971305 865462270 867228557 352232185 617640682 640092495 930936450 543267055 597963819 673127837 926581665 615090904 931612972 259629213 333983856 421051928 814475357 581113254 633464628 171722072 412308328 29397149 358771694 752635599 948438126 947817821 948358047 231617748 557021767 323287855 345888385 985386687 990700823 136454327 532628955 702038299 986275098 371919726 642955647 47615487 251023440 299445683 851435389 346789876 908965972 911923144 937168670 700163969 959900412 299857257 626774254 169626865 540181297 512983642 748392659 455283604 944185746 71454634 716625970 584506551 923126407 263790255 286273700 515325442 965769083 574931255 811778634 90516246 252474276 64948483 826866662 155327101 368997348 608145928 809856215 661793700 987594902 361158333 633140322 649330108 966877941 786302489 888615749 543164954 829151051 92284109 276272108 806882262 914390470 459832430 467389913 520319544 521757982 651641009 998354487 126331522 875493224 966888445 990034367 988019356 999242441 777309865 957445974 652157139 962378190 704624259 911471224 984879445 995440209 96519243 913405286 96060110 905866652 327928290 570759239 397811514 598835200 993358176 994642642 412604173 972950421 919640140 978624707 253661950 553277425 742368128 754256488 405847210 484416677 239504385 246381539 571381460 896307950 107689327 539884552 450200729 719018869 248331930 845157306 8590457 518353099 383284231 917156601 664654066 737573217 780059909 973863460 634473459 906163885 846940090 958817706 996237376 997736852 169131508 983904530 312083647 392819170 482565581 739666844 728988223 935058666 113648618 336080508 62389119 905991525 707407459 996774039 199853895 532325684 374729962 903162502 51494595 254306014 711053457 775138051 903297491 954544794 992195938 993787534 616241035 830123281 882954733 894412687 944746785 973076048 790095973 844603321 444412799 539850119 910590015 996846912 127598622 612594487 366514030 928063829 659754425 851891692 587812325 824401106 827512712 968681626 290957916 805266700 16002409 521586106 454284487 982124478 66374398 549575415 624913886 814645986 902125726 903526608 590994257 774858459 8744012 402622633 469110178 712431924 757387766 793640549 719276124 814779814 573401232 952697942 785638091 912644406 136264869 360595493 595385666 801440504 935740652 978360285 44564971 614346201 694699473 805006950 149503499 876328616 974641142 975924345 346195545 435398129 809826720 812412385 461525955 722270091 910226228 989011641 644776554 909117513 507391656 772382637 756151685 895228098 674244286 684001609 956231442 993572848 555284387 807380722 74637760 767518846 766466184 800566706 4613695 985754567 594581520 918863741 631014417 855335196 857442260 861321077 705169373 895869986 33167865 279465453 708166974 831825017 533869421 830054328 969803676 974896646 756046628 919028301 292754850 786137485 979160617 996581266 225801196 568798113 217063529 793921095 835085926 950049658 670457509 956394309 99720928 305690187 515677542 642294155 608719129 810827716 936001376 939060176 690613725 921639549 137152875 289996663 431454448 809883000 374402667 883905401 713723088 854378067 318675700 602773888 273768958 619267097 614164950 874235333 300141742 918279364 141217449 414968014 363869989 984676542 863528522 898016667 731303625 800641396 325737629 455373623 34122698 889763203 910132066 961487123 194279749 489742728 77239635 615935422 866096850 978372346 256525254 424362837 172019431 683365816 525057787 879620484 204767481 751006271 95667194 763659467 3725917 734429955 81729801 104526345 592813369 629893284 97989549 461901142 245128071 951241008 156799692 321253665 990009341 999188987 596341181 889543739 802482247 818621123 367404641 953463993 34282125 46511659 960411870 990970127 845699668 901555352 359965540 982309244 585279388 917559464 639526776 713900591 409865581 786831282 916786766 930852864 192531809 949156136 241208634 842476375 264221481 869804775 116113259 227263817 194620254 492237739 967586399 967905279 430517736 457701468 796444443 911781945 719061637 987886276 713932589 860354133 68850057 271303728 481749297 712885061 613568537 705222414 999276010 999338630 264604242 974372480 692950968 938640089 259137620 582501342 904468150 952789546 946303777 985239915 501351145 687018602 964200285 984904485 109363953 609856190 818318024 961942236 750290408 824621387 607414130 717281203 694765666 768037810 722257389 866499478 581742274 841614270 483645937 971059407 984942745 996331131 455217545 557682370 586207312 835802971 43699156 948182393 37563319 615441620 806586563 829249918 853036373 990763784 987923647 988635003 823941774 983963109 231918828 792196848 463744054 925931052 571237266 836903010 666086307 780926913 730237132 804548865 202375386 396049069 688582406 790794305 497092930 562263104 112443969 169732044 611084993 833095928 970675184 989744489 908037747 945966051 519930375 836811742 571821484 771256121 999245553 999293963 863109873 915084053 142643267 317153315 13693393 117216665 564347465 695100873 835372743 928443760 950507 390606137 440583716 671916444 132122740 315324303 5456485 900332743 281799116 357301183 152130824 360292294 979530168 985197156 214856583 577816007 538149664 970481058 753735278 797625208 311378858 568443913 225712310 890878037 454671468 648996125 40438543 491525186 145798039 461799967 565223309 597757144 340274819 371650673 984067316 984525570 750320109 890075837 649067402 687630519 46386782 436341972 290105096 928576493 190370023 610628729 414800702 469485885 488247157 868445771 893624311 922183013 645717129 768944870 477469655 609223830 327597599 371994412 94321410 410305603 416577543 876713825 770866858 785854997 993047776 995788146 872088730 958228852 632466476 641259242 890935037 974318854 575126026 620184092 254641594 856240232 879959114 997384459 390523495 930734559 247017691 276363324 576290556 783758769 901176896 978464105 836598278 918819169 33821541 256283710 69868409 917036457 983276457 987597890 344589869 776428167 829923389 937840884 384618888 924863002 889846677 978723170 494609132 688090963 652743434 915032523 873844708 905247024 126925196 685110160 914933203 996449639 957990606 991678334 510697906 603448128 438838729 800520240 81859074 558453186 687120119 690692095 742670696 941302557 858458181 897086835 579208843 915361700 941437410 962952990 742069571 862557643 169732796 942488745 585501606 867214895 82106354 242881432 310402920 799876715 369270841 728234140 717909113 796031326 518514813 889978076 740057068 919718057 405664056 955702703 130472021 785848396 73631588 509736870 255979834 711825393 858368936 912790403 365004212 846936869 651345629 983166931 805706817 838548326 612492192 972478797 323642289 610818743 632418754 718061289 703138239 716485005 863007656 987020357 303396314 660382530 917270481 998969715 128363571 959188074 456868237 626873832 851020911 940846984 625753761 808973217 940302875 989537099 122004924 544549576 848746593 946623695 240970644 753798110 156566944 623561669 723970740 886923330 968209807 984235103 67586189 879819532 426520352 728117090 173399553 307630163 843868868 944247364 92440490 315508553 641372266 850648360 209195255 498093689 832616631 922077138 754261884 918080749 611047067 981312707 61398360 443481322 231347292 637668957 438281479 864843392 698127531 812205622 123234655 450710156 991558235 995652639 497696533 603873072 205275929 971313419 543296442 796230933 229044732 968550391 948817095 982190375 282870044 519894076 450077115 883704080 155289872 528364148 551108559 841845163 990746103 994340475 241808310 255832457 666286718 672187230 774191329 917804959 267181255 644579663 995301405 996568616 974619669 985666882 327384902 969258188 405477717 621371786 188996411 972284161 831233460 949280338 10979175 994282145 695924386 710896636 355521727 987550639 934089412 935579586 275185475 561336402 633670188 997902430 936298019 972109722 382405076 615649352 175652946 270261219 839858212 933304647 575060603 836115723 250870755 825107355 702369095 874667154 307614963 573083108 342222209 646009656 442964918 712016227 320558292 823234209 193631274 757477000 60600984 726832229 156990927 237795677 35227106 377682785 717456593 982421734 957030474 982154106 607683784 652624063 494296766 640388051 634247491 785381537 30595246 605642892 903947887 973757489 329304403 917270968 2846062 129336362 970235489 999274333 766431003 970064592 936145388 969505174 133599925 189078337 795319591 933275110 759709049 950662638 535661449 889461524 750934187 832093714 610905231 815249609 203610026 898743512 127519898 831821010 422455752 844372510 745561449 892343416 815381734 835941501 617399967 784427183 492552823 738443004 803375712 932664635 640484806 696055348 254860500 369378368 157188073 928879602 437912420 980949542 666441878 792174775 723661864 789642891 322333772 828461785 660908993 900425996 142631037 296619556 464999365 579985807 117229612 270857960 163883293 306566968 99442026 383918364 347876177 958418439 73141649 781884042 749740753 902146232 924328585 930066896 756858716 818287880 833411302 876743080 63045633 323957659 934138936 982274430 585199158 725056028 55000437 751702952 533238228 716640750 752583236 866128298 1306032 782632185 245956733 949755844 133503821 566201921 93804850 488425817 636826824 853376135 256066593 573461893 684324059 935810572 879750128 985907076 449184042 932731752 746364181 824404061 6775411 251378763 501508843 624554925 941161749 950847025 250936911 888799034 805076275 977701097 660989265 723299463 879860231 961936328 130568667 615890110 934350196 993771635 864325259 915325659 769481384 990057679 742946781 837507365 440869218 904051598 661256153 900377114 519505815 778364324 217241778 456239049 417294106 980154171 569991339 733304742 705364533 996264854 451061831 628843621 448852897 486670460 915111991 930282991 934079040 979838590 632574087 692493667 937585463 985156023 945755695 961200468 519275904 603285820 715546554 930252457 166146900 316382474 47485430 958242922 318445472 428877610 250800195 256967153 226864927 533566033 44052542 919059691 440592824 940644085 751981167 926179404 94405808 580642990 795620913 844363231 514787920 791625589 881617681 887266524 803833946 944284050 352561062 671510753 368626405 822993396 506526418 603221781 669763603 734293482 687583404 859954083 234647316 654722425 406276454 557717916 34893079 180937575 518009095 922655027 144802092 988513230 785473038 925016017 894996208 930109644 796410821 818607016 757744868 939030894 598045228 977043987 401472446 423526666 843382667 946331210 271116476 566467920 562931512 827479588 260061041 616197141 66018971 663976015 433469281 967667904 743267777 768387615 162614436 703573132 373548711 519511862 5930888 338310549 324921899 427188778 434627263 511645894 503283372 779396899 410975762 684832680 910542202 917960058 382751474 714868142 57971909 604343159 673045146 857941195 864246119 889115832 81748340 842230288 255328747 648204220 214715679 841799949 885535155 979528315 309660924 480335457 431933192 899456753 699689946 787702063 982459977 991712116 348700161 595503925 119319461 803689774 431308669 517782928 532840057 657498942 444794262 761736312 314448490 563474301 831358190 880422955 341336695 815111941 397775430 792976571 426380629 868834824 98253588 719244470 851009979 877403650 93224743 940594395 419598564 977578981 103385954 584388331 747143601 818912736 789600951 851733097 133391338 204362162 640300600 804055476 567769778 917269164 106935397 796255836 836642092 889082505 612341753 900358866 912701589 985197596 7747835 194760022 371361250 699146324 590079421 936076706 132569671 392404936 340428843 602801932 477425149 549742955 707851960 908836702 331198286 693076622 253115646 751087848 601385370 730456730 45964052 63661605 880833573 968234448 468909447 568142811 464992684 937229587 907885135 923598460 85386001 275366236 83781071 325605272 321746077 708306747 251176094 455369394 312750301 425902782 330337070 572499601 799487684 835560423 635793447 924497945 389579573 845252288 264264560 407595504 790356910 911237732 158278249 924200001 613412810 889754448 451769383 616834496 850280342 877245138 632795242 951700940 560128506 982778985 540589123 840149874 843945819 935899288 340802016 811587446 655249133 747674215 241203711 835483055 420949719 911239842 209964932 453952985 778127097 781884605 460861180 519172832 661372140 687277000 477482862 956002927 20556077 626262084 929352213 962239290 684942661 918354101 912973754 997870390 869714098 964166855 272997128 942112011 424751642 973100368 58150798 865751073 141231058 186614773 582341156 897202791 475365400 877054241 663515279 977040272 406668063 495562469 892211671 997051497 997396421 998512712 56260812 464071775 873830366 986138937 885345006 905012922 588964734 913955076 540465368 930671071 20334054 233287692 742608622 896734790 720274251 748968629 575300614 762810931 639308508 763554782 641386498 671720036 249530206 608002240 211902198 481003950 123751070 425843290 473623642 900953596 116563086 265222244 751259723 807875086 594758296 847435425 209384331 257747774 477113171 845094556 69820828 785550342 472837401 825537169 180803280 425020768 369896475 937482530 989523156 995906169 935018344 955606355 511931965 819621102 957510343 978394132 89642683 233259096 615682966 918982146 867615464 892605811 135449393 505512693 433460688 746193633 965345557 983704381 341100552 733262180 190838067 830299603 779969153 801528712 782037883 985370679 401109153 797831351 895301490 938699300 813134825 873585765 930072935 931807791 578556708 628594416 557433559 613654281 601457822 618391481 110810701 424737321 790509302 864265778 130658090 842494329 80238497 749575268 582440752 823489026 839195386 902601475 590506906 633667843 185619308 996332846 122499397 883635710 421516249 463562620 52422739 773681200 700157943 859746992 525721113 659337938 769236335 913935707 502684351 593874722 718674330 861986095 642170286 979966697 496251985 907311145 572962979 946673957 345320541 692424432 967638016 987399210 198854247 517333687 894043933 941606536 887122793 908463496 139488032 165615418 87956872 867876319 428985865 877721768 52939343 945074984 360714358 624268882 145474369 410208326 322168791 363577979 424455050 763423657 494644144 785765375 20811333 110893005 744445404 891686920 997589837 997760096 12746115 985675972 998755799 998930589 823687840 914801669 559431495 917361465 703360842 924361401 617286966 691427454 506647284 641206831 689619222 990547553 424942256 460239332 735899248 856582628 604962269 881497994 614829490 754055891 616310750 674580353 182739693 996779585 391571548 595205668 977152388 995874384 795190443 972785010 479720441 882370132 640603419 793895010 907993165 952042884 533373349 553472444 941016991 993622558 671200579 674235926 444604040 758795340 62169051 325744836 87286353 358287626 342205899 347229387 322785182 719216051 594943738 821267828 341143872 512208567 399329897 746424195 99900312 921282405 967214077 978032454 102415019 589003706 743682149 757241739 561565258 757162134 105898957 676479185 554943945 784193642 328330996 671114336 19978475 199855018 753522302 806879749 637988295 666965214 861688792 913366817 769844773 843511815 662062936 662571924 521095693 719916087 339124561 700909778 417323946 598883863 494097942 505628180 958220953 972972411 730359665 806877786 96853257 868303496 711082883 940644598 323369471 890422066 752891401 917691790 575266798 872052939 226134442 384134728 490087790 675014854 252254605 869381427 83077568 470474641 365709990 704016759 955271095 974793270 395498532 613593201 522906741 589912772 742519025 870419382 103908684 908521342 366829182 792034301 125313096 783517704 245896607 755857804 732455802 862996868 743621445 893430511 298140507 570854526 864148246 959109966 422727249 688356030 554246874 777578442 444574978 739361610 663438028 740609566 437000039 771467105 567285980 958600764 495523971 593843554 832693753 965463261 473736822 826087212 842916845 958499407 20179003 425837035 132212158 176034652 440367469 826085888 294300084 564439785 544940008 843584987 691986728 863167903 12546359 947946636 206536612 406978483 938319965 939618144 156364706 356278348 509658819 970930031 588333915 657800966 286593333 417727551 168530679 482641598 408424052 661057045 190324459 644376088 839771104 956309186 921520023 997680475 99384957 129887203 889580635 937609691 880799569 950927411 363003691 667652729 266748587 900925328 500417817 589933599 239674947 939087745 821293837 845246118 839428870 945719156 889874723 926307847 483612598 902997287 497978723 581541195 383455376 417370127 599788592 714754735 365283365 789024132 730238852 759364596 729502844 975964555 257885527 797745507 46616991 306485148 135521447 447057010 758240900 999014754 679726195 708091448 135469244 797486873 488092636 907764195 855524808 888543354 548591211 890956388 108910200 828721984 714779279 799465306 486340759 983106640 253825697 343445215 87412307 410730624 168985532 476767844 696857213 855783419 766263919 885266063 893489046 953611455 502975589 668315058 65825565 402361897 215816608 872384340 723737516 749853006 230182948 819216182 122814815 403562536 963543516 997543627 933866705 948397749 487998381 904230076 721776905 837496749 497007642 756629422 302985786 896029863 535418466 868469432 693914560 723340277 133736476 994577463 35220318 947464335 522554386 625232400 138860381 482947170 647638778 763411575 974300557 997504463 801207602 927163017 259927157 803345347 275253232 753891033 567520111 965756250 113221501 904786169 255894757 476717458 168893291 723438126 745766938 911783802 220645858 983563514 302586113 771687358 397820267 876858954 755612912 774389379 875514880 907332502 228171862 811327459 535811309 638450862 624974451 981157702 633826328 923223185 846438104 903212106 981091944 995984236 972304212 994061408 636071441 703220544 333857686 866264136 293288361 708238870 467066512 985091436 295480281 433569196 514283754 922695086 412994259 906658939 56350721 303660586 480632418 754618435 914387608 923096146 946907380 953322702 288855700 947311782 43704760 349831172 38254413 394672970 951455424 966999866 791699875 805758196 426601654 702135258 660050064 907259264 138671408 929349959 800300378 819289552 944885725 994810192 186141922 530413222 32037852 210729734 636715339 815434441 371056174 946481114 788186070 985106404 827981157 946603282 323210241 326350804 781893268 786458437 803112308 946344907 795365740 867068224 731786158 948912578 567451221 954059426 830978735 940290977 917556509 937105036 528952521 725892552 983170303 994491676 623872286 778577928 970099509 980017393 802355741 835082599 882577023 984385571 40506419 905251718 221492830 895575823 782670675 791467687 278853271 825677791 280659602 657200031 213623616 951834663 307027880 651973898 588117253 732435483 255259404 603058324 126329508 219666371 475220225 960288890 88444612 341736439 564179531 613472582 436499596 786869563 592670260 669676600 359359510 786261490 4308026 221224620 747528089 839164026 969604202 981391044 521010807 633136206 210498282 663431935 955901962 999212218 960380313 981978909 807149724 819135368 481525712 759202386 56853140 870084734 586338638 973930851 352470467 982949294 405803375 462093696 139043555 411332615 531405611 884743259 3704946 61110788 766544495 811438624 449728703 798376961 227664711 584342454 400534969 839046622 38985181 384978548 128160858 566761358 945449476 966382481 635738819 871573746 10117287 62892057 470245992 684432925 138021756 200119506 601416976 632448853 180427973 312132476 979731339 992568410 634100724 987203370 966940392 981444941 454221109 606863647 285627814 443759459 908900905 963561813 410675886 832661734 99563832 556777527 79063954 781469083 829932599 996435291 370402350 970809487 731347845 878229769 284867406 545309377 977456568 981687606 88162512 154476332 113836624 697422441 395403755 987060386 195829060 616213140 576841694 627206011 617726379 972512316 239800659 559972449 515332846 664341760 583292445 940838114 614261550 964801666 839868487 990260219 373995279 568954142 748024119 817677219 103005366 978522288 230420447 517724203 753390595 964158231 690829934 769302332 202735577 329589655 596867356 612257566 295794874 385746046 847404847 874060988 171444372 793923872 234609700 639383279 791098723 923391785 761852833 847912965 207830884 824211760 124156707 314120637 420624548 782514613 99888177 210118380 355451494 707658994 569163193 758579852 55041357 710456437 222986215 653680982 171002982 954450211 570180889 606745562 73294816 638893506 590624582 613861987 764869524 889509086 560979699 653485019 742799350 797076314 441183769 782892363 819828153 908054891 601947375 853817745 91812250 637480570 339284979 421587432 79218158 106757783 348452834 745792739 588479104 722663666 570772946 860378278 142129300 255011684 730815011 943005387 410775986 836658144 446619314 569900362 609143175 798099573 960646432 970789331 818566527 844235326 28096408 62538759 12624266 667037215 71252467 941156649 182245066 492989518 116662229 825143037 48465129 276335756 607557040 867844921 358165426 862507002 527379867 945129894 623017670 901564856 939946443 977500822 733921090 981129360 999050147 999238242 807837738 889181545 78444007 285991106 814856101 974741881 732715702 763733662 995531012 995894414 590031802 701366025 4704547 668618864 728988915 903274196 953414115 991656522 167075870 483838672 605267818 853877529 487474443 985260290 385971932 427552592 198645672 947821240 545597827 946327202 395306584 652362882 854531027 950331340 188613842 803749090 641950408 757959424 4260607 431296869 631524172 930082653 680353725 986119331 434475631 589922954 666280813 952382473 634809327 933983996 787306505 898791299 503393913 780425803 842361375 985785102 150439190 302731548 260835349 861058112 483393771 635245532 622447676 668571741 323203101 555805791 277773965 505194715 196967673 562475289 733459187 980274209 865772894 931740968 72207059 942585750 216557835 599700252 89869261 181641230 712991324 740712908 960683024 964094155 322769105 962123774 52275392 309807515 875626730 919318104 702985471 866859259 13802942 451056552 631503947 911127623 691564408 828431405 383059502 828359355 79786895 386971929 879230598 902153944 134427645 303889701 899934024 968092737 846593174 910373756 611143802 770596886 439321993 777918726 135456271 693404450 328877991 457278774 257925968 477522834 241297444 587130007 367746601 492952722 98410348 623241984 857159387 892387060 642598125 910105777 872838200 984234802 990528951 999043317 92261976 143010750 143544084 208488388 179895783 686017677 387769273 806358748 248457528 379227380 719910099 801435821 718160499 760071505 878319447 984754295 558008009 749903437 689399205 846163117 151952135 796515545 139426104 598216911 964731860 997293714 12738467 892790614 532285266 726799017 651358792 906833554 987969695 991046211 915543625 961070349 438880071 902110905 905506438 956018663 550572113 792555438 682086469 875028781 761936468 922058228 455261099 484996059 177349815 967631384 835270802 891140055 203200999 828593003 402096383 651673836 497683145 902736834 691533504 846445853 31272195 64430784 897860013 994808421 39284869 871399431 801189601 936968194 59144210 899871614 563611264 645972462 89257537 399773396 240613063 432305769 394471129 465142943 630219789 680824640 425964009 472771502 788636862 949627235 296697651 351458556 374019925 581994631 746446602 922282439 114578386 264788342 298948182 752975951 322279226 616553341 585012783 804914727 120454737 924035940 51260792 952411016 31052825 576641399 353036122 444498374 692802357 864459089 493840403 968886740 749270118 771463288 697713057 936491189 942676728 952487619 602759704 773702661 887567997 990839256 905490720 971521777 298465016 606826877 546396863 589882852 758941527 883837231 106392508 943194180 134704204 669905974 462035327 894656219 284701073 310007507 585095078 928221297 452690384 700746759 637431070 663239878 782217094 998613595 524019559 570881150 537244344 563937021 908248771 932750659 831193189 849136223 975293107 984045111 209118887 302296267 759671618 887581685 252008317 285486962 476305716 606103826 710786375 997498531 814995385 884280100 434019636 789395045 399365094 849459222 274212616 851407066 581773549 892492539 928312085 942240349 65970354 895767682 80575644 702500887 367067031 564208127 658307114 737985572 694777706 923426020 122253564 605654039 975210263 992348224 601708087 670229285 299440854 488073142 967544092 981375417 603246973 869175677 716906422 773263495 231431699 402204160 832565416 852914426 249753800 944176234 135408359 186543290 448745739 825614890 758327949 835288763 860945786 880586912 862234792 943753464 464959439 742504779 55614475 802343486 990553763 994580476 523681113 911336364 680646358 884192435 132154404 466169142 983559537 989507960 851420407 944777451 561442537 707083002 657127971 920202478 48871648 379711284 309682268 610142383 840201249 928944924 261399125 301652733 95598071 366106998 363679065 829296948 916457230 989384268 790601388 960389122 832807979 833746699 397070319 461419013 554473475 843021394 647390055 895489688 12166936 985486071 740563073 784593581 217043801 983957561 861771393 866279703 39007199 518801493 642383762 850249268 18456978 299570716 962439918 990460538 900655082 922911406 989440779 992511628 26670457 319749922 943245315 977430267 958195017 980864416 265508479 781625762 729317638 958583102 59149035 490945091 71803608 856992950 244042169 470398413 199760553 933519030 583500381 774887564 941787931 965953943 73201885 198877210 867454887 977893529 926284532 955670620 39150756 257824687 436559723 981754909 77263191 960451723 527818690 697906681 192362840 911216939 494988243 859437993 165105210 518407564 294083580 496640183 332024813 851649783 7770368 851235288 95317439 297749654 547698939 732613323 344652410 584918215 364845215 367516000 741232488 998546913 201582935 303481166 504970219 605798061 665838885 967940122 147801799 513840129 563156019 776799511 22220717 674051264 9930233 932863401 652867389 746721088 652946348 780196520 404511002 411884034 839167569 921018379 748959123 822916791 431586117 694011137 690649245 753850845 930587831 997531655 219982032 306892204 863971685 922901698 631962570 945569786 419145126 769017131 331507480 978808412 764434264 906713702 676025205 774968976 681862940 821214088 786656758 941780136 179554029 269339604 652234983 997236131 482463152 797900931 28420090 574787603 979363644 979980717 896087052 965333663 31242698 255567261 545347601 554423046 482992560 595239720 590615897 818362182 846332061 985173835 108925870 395127893 370574285 787949751 641162312 927001517 945002394 986640915 618544707 957540759 8795535 968714278 269050340 870302487 827957466 835729907 244181554 937726698 379749201 623487170 274318727 587275237 383775542 863018610 302375104 317752434 829968833 942826902 470385114 858744217 722985873 995591799 136275345 602901508 478654891 944783252 267659003 939028367 670294918 905388679 61468695 961882256 485152487 590275996 873187382 925170857 657141604 873225044 318944478 901043191 655206377 676854105 777004009 906616294 311438073 538621095 370729989 461308756 861653241 903876669 282973472 574973040 573148953 881817866 812804486 880790790 60757379 805273578 724206340 976621503 96664598 235483230 800116076 993762726 682245219 897629008 419309489 727018176 809739075 872779015 30115635 63598643 844776500 906959023 309579759 550900700 407536667 910918371 253910798 292587131 997764625 997999904 811643876 837854316 505957555 725472276 808006826 938271331 566627167 654226827 409587727 695804098 569273394 998236888 297514973 578265595 690326817 879792799 763900618 780214813 251251182 530179647 477744748 903674886 509063257 520366720 857095669 922983870 877483571 942500380 857042942 914553920 951622263 964996682 325724432 783141179 786722127 859931507 829703301 906856162 473436955 670183697 637135486 665078332 255224386 518443154 625993488 810148681 87598106 170641583 888231963 930134436 750718704 969412474 183404031 254860145 815748077 832919518 762823969 864714759 213326895 552441148 196725702 315429012 515763841 522221202 450734342 564336558 718512522 977359702 740038551 869873000 301216834 659533564 582792513 976171275 228719288 674176727 919420699 936274432 717001151 852692786 314064757 661462899 488550938 508875261 812892171 922963710 789121177 803904323 592217802 793678385 193727197 293961601 43679825 726640393 821794958 839660830 902938223 984808803 58471285 627223224 243811545 555533024 341634773 605529676 339029128 558554812 205913253 975788974 51965705 819436455 472059320 778451725 419023847 931610453 935835170 989554108 296495653 824009957 348496292 457192304 969266317 989831827 165083436 641947971 795438323 967750423 713730886 990415922 920660433 992305140 33454014 703803254 878455204 934292883 491578161 763634390 326154201 647932486 437485491 918527675 582738996 986804842 23061264 915801007 697567705 705272803 638602764 815255321 664494561 898912657 732679805 754048708 536696377 996630600 765726445 902380095 262314382 916164167 865023778 934404959 39457534 707702879 40490147 409054402 746809986 801477951 174506593 625779916 899613942 971278046 230607499 375838658 451090163 998292754 393458097 465148457 105808944 618017075 230329157 349627311 278787836 279911767 851830696 922799591 955498235 983584378 968822968 998244217 994169763 997254250 934150794 968111083 877745278 985886925 287176513 424311710 520038767 979812011 248387890 982014831 481412034 657188475 793892172 816010266 988389962 998782351 745550572 855341399 506246452 964077142 993788250 994201693 84997881 724345187 994882978 997887112 180928365 663898901 903566253 928206041 984890637 992259654 228557337 852219918 440867868 959956078 66800013 523695815 457505392 835087608 491245697 847314520 17428957 901998055 8762244 675249380 680428133 972801159 715744592 937967825 560991286 619969081 131898464 917130624 553590913 982962439 912552815 955724521 535314092 554202701 482280060 645902892 924864917 957400330 231556289 275873553 562292046 887808185 646838109 870521420 345413649 967557187 286097995 521551638 539717426 998887843 861808275 943599436 502130522 873322801 138022144 911500419 740598278 794849241 939580000 950867450 414557224 612148103 518820823 669355148 406885479 912877873 859504979 912619147 693795805 826645805 769177319 834707006 775467700 949521825 722913113 744322084 491961410 556846600 636511885 901422022 388354235 718512292 601923842 851805045 676687056 692108236 710528749 825466175 809921740 920360528 732452569 996989540 411555934 643796595 581320504 791085993 245970497 608552423 458112751 983027023 396901181 470977923 162917922 692908310 962485049 965545651 632136727 989812289 122095230 213628489 949138763 971052685 436654601 623241024 409255045 634950079 920835095 994538428 547215645 589995432 426789542 982160216 436003846 702217027 807077883 828856570 631573231 866392700 486310840 505423363 57771920 589212738 227356937 702725649 519050672 972020056 226062783 251836768 524902415 717606199 265583803 375475649 329250413 908757853 371966815 664068138 160096857 231882800 818335285 840356823 651095297 681392814 217119401 219946449 407364275 635047448 850813510 904517231 827074824 989556559 366413970 838090781 11971516 464354342 861777382 870245117 913178859 923784653 874409653 998365651 924049386 958625942 934132950 948250214 375132276 824161512 137091754 836033050 256771139 482639071 250600485 460885259 110859764 627742565 42163780 347606488 214438001 321038833 603510366 762711518 740427276 902242817 852326154 959334841 977105747 988854971 537753247 846812607 206766862 879077833 664260327 689047983 806556860 820323372 146884066 709365345 783781503 974636374 68894098 657443019 590545734 727936068 550828275 641250197 732711342 926953806 656187824 748194026 645430095 699592162 130562112 417789985 763864619 997010319 825741105 855961567 172900607 367308185 308196120 891993189 890140671 965857820 162398313 439807986 264351591 410522269 369585834 795892427 745338623 895968739 228681906 785853435 756338171 847561266 853331214 951610543 457602027 866892603 169339002 174209204 162884388 679745426 117590692 676808933 817393448 844461315 878030057 976906145 56817734 833398427 356983663 711164422 853765815 855728877 718497456 961288500 948110587 959845194 337413427 711334353 746147889 780380410 236882685 622599664 510097562 586313873 744897509 754298660 909689494 936927474 748880673 942004363 253014887 284123516 184498469 571917668 423154240 485814952 922073352 955405145 585926254 985266138 197783914 979155378 131397257 668875346 501180860 790834793 271863081 377390765 624006828 892361812 954502287 959337664 395138269 428086280 948282242 973232566 181808373 494053169 872405827 903882202 855158602 988188365 638548556 903544872 467631381 544140040 7682321 458492893 23773195 421825760 25482912 686126607 57037510 934002338 183517147 525870990 768551322 824302823 338217571 678386196 302971886 905212458 158906726 600976265 231822570 540155043 511376229 660492139 644187757 890649498 107867985 409612913 93561066 609238507 662397260 795738279 906301583 932062152 979704025 996848026 283024071 923634260 308209486 929889543 260277497 526439659 410748735 737324266 53600043 544669501 925655454 971778510 576602835 619869784 126348431 427196628 359084488 785629948 761362614 803450114 290473180 975608598 803603794 981536740 437277839 744660659 677585928 886078793 252411512 271330398 293167364 949183819 982454881 987966927 513855928 697391624 978900486 998560073 785304214 939326008 321364680 579698105 918737151 937023879 627244476 893617830 246248109 502295632 651950563 670582151 338308729 708139520 19455745 846323878 929848315 990967447 257674482 503657931 207653783 929173482 662363244 949535287 694255627 781655683 887443007 891407128 227097623 466629150 572196560 747536585 358244002 746775685 891405079 902341002 80052943 221683382 143257180 177687448 716867858 970108182 582173306 897968858 317168677 643023453 508201170 608006000 337153191 914982082 164955404 994281958 155737834 983189034 471415976 659269866 219409807 978451268 173613444 944862206 258196920 887749424 783788265 944107148 532832951 983836618 359530459 963097486 960729476 987243579 953810251 984057255 891790917 956485602 809865344 886334571 28410381 397663698 933389687 955041461 377500325 803194260 471202005 737846461 160135653 756318433 205099092 415277420 919432452 985295252 243437820 673601856 391792176 993858700 313821927 417866291 904065391 938703367 520036028 553624242 885442222 973735186 101227420 253254740 947461924 990899526 45605390 63525235 395257571 642524805 501345373 914996834 706603640 831472483 408095059 607097960 114336445 438022741 924703011 936024425 743256293 752517992 944763283 971284746 330434772 451397852 342022325 364481721 430356850 760986830 935023553 987626264 275535892 434157355 427682470 719818888 25879662 641647172 523618782 741398514 183623453 371701717 366990650 603660639 511608834 622747414 131946879 362367536 588870869 750804075 76873008 530684772 822584778 907692852 171304121 988271545 276522517 534980390 847701790 992482181 118368957 593231855 726096320 906837989 472538680 624396127 808018920 951737143 345774684 418826077 157665262 775174193 587212510 706891376 319508552 664070823 556323773 738240878 407105 689265030 615493943 745599862 55122940 547593518 202135949 228048077 374742523 714985184 588417704 722053148 60284148 533132221 76055837 183015888 41270188 421209813 620881386 732191005 572448939 630895332 641545289 956900428 577953304 760465534 222326116 775035675 58175024 255464123 608183474 965095114 97835390 585233014 141437544 249737564 177708684 952154501 767643265 843138034 891923418 899488858 948504176 995571718 462466046 884820546 45313655 837210172 506791615 838636211 990638940 990640476 620260503 754109855 499671851 724931834 796653129 884239755 165469757 688083179 766613682 927595814 545134081 769351471 329552074 410592353 193077261 288482934 642741889 977309869 437868883 921915831 521969072 858637537 938383047 981544587 760956486 902060880 455937962 549785422 462657361 868904134 889487029 962875749 706595365 995647155 301766490 527082939 292714594 809240115 729889776 935988984 68378661 942401273 932085091 942652994 686891476 864992886 718738370 890478557 846687875 892709812 942272512 949270156 70130470 523176645 490480389 919660168 813513949 867466130 855470847 909851694 698743559 838079347 503042601 655683422 261961000 454710342 242946853 300816223 971181524 971376387 185235580 746990832 258220768 523588978 938906736 972820336 529538181 743663967 153580411 425235191 700641425 755768002 596049159 600774347 31177020 919348178 921649752 965341499 519427182 765060961 689140843 973259292 311170904 360786108 34841621 50753529 212402781 297849711 653050765 753640855 10158245 417860898 316231510 658403837 85414320 196050666 813773750 977924511 607722697 718699085 871033912 928927463 115744077 428101602 18928260 622926905 490064342 504933413 750233745 766249032 163627729 598423100 574878684 708135278 648866371 837087172 243124701 684313135 635453942 932910088 285032445 484584065 341323542 427581977 339946477 353772605 724368513 797397258 764719237 919000707 996278522 996650297 25571570 909390441 478807774 815400786 801378562 918792324 566400858 705582488 291733252 365753697 443061021 753880544 895309369 919937684 343281006 845765456 746189228 891785198 93499269 373946114 175264643 785592612 625551620 853366050 575522655 951423011 351862574 553999183 585054608 729243529 348855780 583731671 670583173 972113928 900697119 908459232 973622247 978024111 809918182 997704540 764094943 764755123 53757114 458717764 942671191 955663775 140959685 943998185 924195601 980583386 56353140 344732416 786859581 862565255 27454141 829867226 827677237 864417066 519626767 869435893 345846330 657392437 373481334 667319707 886701257 971485501 686396822 737239570 180569292 547976720 633065126 783788146 55471786 843974345 341423065 407505440 675463482 820768887 659487466 784040333 452284356 727275897 860922344 912512426 465118421 850464311 244626982 880511269 956289175 983182401 235682794 937711103 512907600 835612175 654033867 718774010 165436355 807758995 816840476 853935770 442279192 748210661 943757144 954807065 561955125 920437826 921639733 923841665 686345536 777459822 175547369 458962365 288787353 922957539 569806593 814444222 843726492 989424150 504099447 762748948 152783767 593008864 14590492 572156662 917437267 997818266 803781584 886309183 965485775 968535367 73334930 238498116 975875919 985461662 108335556 887182420 733301932 890030098 894638257 926130266 824564534 874841693 678405100 925454475 622400422 884458280 187908500 434492099 138510885 654387068 8405804 99486417 469989113 807583051 954393733 969438192 772467077 922282980 153036376 494228601 909011306 940966796 901363203 991100443 162571740 987090382 603667626 976223766 508664736 791381060 197791122 416619593 212985099 929021074 143844121 548130879 403587608 687320097 927307997 984110582 132389767 639373396 907405487 992354213 514726098 824729837 101253310 171695405 357429895 485429311 408484398 859640573 226020854 477245101 135021641 591459306 950555138 964512718 152967029 744619319 567067595 744713847 474384062 775628224 964019459 977476617 548082388 850631229 432190377 812647673 956796684 984691634 198875172 589994510 697818256 728766283 186147617 723746671 491927413 546312648 680198608 684336127 265625878 833597466 861308780 903738528 43989245 270610306 396837036 801876707 220255897 998690433 352473148 741604912 403322431 442743089 587473450 797722009 831978857 921057320 743795288 985478780 363330655 891040828 244700416 375517530 593386624 871477957 540947220 655721162 691243902 698738097 796309082 946870756 883967439 907246262 950949575 970622450 981398672 993073615 617986378 885478170 597090211 694243920 91834543 208880029 795125732 991500053 258725231 518866810 909787547 947145275 986510584 989293976 720945639 948709903 453658565 711963249 887589880 954503943 846939226 945404197 151866547 846494199 869582282 936720686 437144953 841354966 652096018 660450077 144689283 710656126 285011569 438214565 992875647 997181586 775278307 991920966 156650333 938442404 846889748 889314888 386856726 397591406 720888797 751492505 334173025 423446718 114650454 209048645 348500670 417761866 899475665 974913227 96432809 950957421 450892283 871000407 981937015 993313072 918149026 947897903 506429301 932634436 696105738 929755381 942334661 956640193 28069425 671799779 670937731 746347797 214781382 438905477 956635045 963410894 808231839 847961986 456939104 986869853 71878054 88986677 229310135 947038528 462668397 729773558 547435540 600197204 335308090 436804034 896723286 919717217 678780534 895822997 72546280 942967261 655534036 733850966 712365314 963130294 119768390 191093703 667303481 907588738 724468192 980357647 751283129 864460722 245097830 693292402 385799630 682304767 562484809 749051585 374714604 614114607 683743722 794862999 67796850 703856594 161837219 338906070 648434349 729922737 299983233 372506195 32158970 474306925 917071584 992811704 312155949 897404196 21886572 348459011 78181609 640824600 358633122 789868666 923610275 977025971 917125570 952806335 22411881 998553783 867114899 898360293 3508091 942831400 179995141 182527707 777860815 872218069 250977613 493987296 219227330 963605537 414348006 771849916 91764375 122275369 270245554 697533636 835544401 886384302 283096078 993146826 722418433 808235070 843167313 923682021 589014822 652170370 899501632 939098274 473997639 929380375 339239791 445962474 593068801 651446456 662775141 760735713 314859294 575585892 795305747 853178181 458912439 525813113 676411440 746697343 189857004 362294372 775768710 940970531 412021206 492314909 671259297 748258785 844964406 936865272 939412657 982317256 275404079 830513873 119268584 263628052 118962782 761732854 258880711 290317317 170036080 257212905 663988996 840720826 597548526 925386718 958766986 965510835 754875038 757679559 224031337 788069735 440697285 658282238 636680071 799354299 503181352 615606801 730836702 814580117 8972423 520372627 815221090 882228599 44976409 381346374 284333275 320824016 358629149 449715521 892860010 923033878 100379361 187401529 72405547 567979301 62580025 917845795 373564393 713611251 970301941 997582857 563027595 930002146 416832977 987610807 801801511 893720764 286069412 889088820 554555686 872724314 680031361 875759444 954627577 963563340 503909878 769460515 677029477 734802452 369418680 514619873 84392583 346586857 506428277 628411234 611492197 961546384 800985982 910636344 539138549 693969235 210416350 931219191 690823380 835315313 564831443 975921081 926890837 993926763 463414060 777072038 515932925 624524149 663066974 875640626 285547108 746593068 548671912 566203615 608120175 671508654 673354244 713613184 96245340 473101649 736356279 934413840 529102823 990621915 776493618 851912157 186686543 210159245 198422334 993484168 364471615 932436977 780791142 838798784 676770205 794407552 108819857 532098649 873200314 987953780 367153523 454442990 608279865 692027897 706060882 775730462 746608405 795883079 501759327 775228437 896146300 957212740 200733835 807637928 131197680 858393897 920877005 937540786 233857325 265754655 925170056 991095256 524442864 861541395 903791442 972086410 253841781 917770220 154409315 600348260 610197021 931581574 549667212 628368202 19232354 102638799 202217224 408620858 811969625 969615048 839473474 931772509 268286803 635921002 456697785 507660999 972288657 990307908 162041712 644877192 53960521 814381964 421007248 794934968 129098008 863512502 656529099 903536085 349027392 808924663 495984164 983644209 303184126 697862383 148877672 872006595 963979574 985469179 358826316 959123707 270504936 930651547 742624611 759145453 135185357 835236510 105686854 927751065 286124005 664795705 281071664 286771692 116400286 442352941 608472698 706093389 895764945 984258419 63738927 559861419 259684471 914086156 305266522 461330912 764056634 899861287 576126313 742317679 707170986 792117507 686620120 858888199 124858249 148643536 737906532 849770107 800529366 932211144 354474174 690006996 271540253 649903125 487846534 731698189 824439217 922938733 33314086 71821713 994455984 997618131 673415506 923538708 415095500 906643241 140222377 604515498 595089969 966072714 326991690 363260810 830842029 889985587 313399797 862495535 314536884 736790310 456697870 820651302 466553509 837515373 738109879 934214044 140030621 825293969 270465519 829501359 408262675 865287801 692423090 700650517 685605313 741922371 641318879 824696916 387780746 576069090 693964949 846733023 547677864 700738060 237881825 651979560 805852283 842413227 967716030 992406155 561793065 731543938 504792032 558324511 788517575 871188379 275170426 416379015 156633786 853286991 55362748 989946310 964880331 986708594 592546125 694192958 188192406 242821189 17568644 342940059 223745950 415961713 449159371 900501086 985579880 992559400 211080604 752450324 322714116 354071383 34205543 971078311 61845910 564725291 194465682 616834616 238291115 863900821 144971125 218023344 447736526 984317980 304446636 357430298 254744568 698014173 583140062 819580775 567930651 813665310 229130903 787307390 415812560 755140699 765313482 765359726 6233917 748783386 427136214 951530134 24736602 822585752 776692121 947860064 961773582 990139997 412468351 910071321 801639287 955617314 54216045 502665737 536772944 657301340 380104792 708641471 114163883 805699561 496134385 882860327 131929106 626172250 442874907 479550851 229568148 659311394 462200032 510203121 978734744 992101789 790435982 888925122 484924657 927084671 559217515 631488642 97358217 994498611 949016673 987699328 504272447 725574435 159632651 864511860 976176066 983178774 866042775 941239292 358714205 875324784 5654272 367720392 997330863 998897181 526139290 932754276 729819199 739121473 419752492 657753440 67170657 798352071 207312490 872424146 766752315 855016082 622010142 714461688 548772543 561912700 52022180 829637552 399945461 856615622 788529651 863944138 732085220 993687477 509770871 602851387 870379902 937939205 844160704 900652492 186116491 867730471 443889780 665854191 908692488 910907492 117433603 892011808 28982205 351555889 814860375 912824302 528672923 632177416 739213550 899040181 115245878 905846771 370444847 626113143 367407908 728498242 657413400 862041516 258832444 920989780 414345644 928974548 873445865 991502260 475441243 843835685 526432153 533516062 255250237 383239155 125005621 192722253 597409596 960579263 161871844 803274137 846210743 979388638 216315747 726124569 877309810 976108046 775199347 989176073 718030104 877053338 785801385 915175632 63555599 858275911 833812420 882304214 209006896 652686525 589443788 620571578 200893882 700616754 501055613 862561969 977145080 998505551 280775253 574163198 336306622 775762884 85865754 917501835 876606379 910461945 599472381 821921861 492734834 954887654 186405742 196051393 806200483 973665736 311395458 492610899 662980721 810677973 4764482 490052191 319172734 590033068 823751214 925394559 102214970 836121528 503634812 892999115 90260294 259957780 538284345 902700338 45524467 497313773 119829610 585948096 512905419 529690516 901521491 940845150 516527010 659606172 677350425 868704428 843128083 887426015 100724887 481382610 923659145 982379779 620711099 899512990 281167896 883661999 85784302 95638423 254934612 944146188 312936497 902084801 220479967 296926520 619074592 972157810 257248381 304102896 443488448 730656793 844988837 886996775 994216299 997530330 542971497 724274138 350016339 351863922 276809350 724695817 939908137 960222748 389498504 513487053 522366219 904143720 837577490 947986959 101914473 740679741 554482580 795601919 297907920 722042674 88964206 126454674 584298044 987223203 731007339 757274051 505591895 571976623 935742369 981137383 360465846 900742955 348160631 972482041 902250800 913300546 430971139 731225901 934271259 994852306 778637226 989945433 626139168 886334802 300742843 330420758 429616914 763385784 658108587 763982673 313832547 858070961 259652104 499726763 86626765 625150808 260180035 420920183 544100898 745236010 175186697 500892126 682403795 860075978 896132159 897866763 978339883 985663399 98164035 686371317 741426399 969669604 924868688 935799253 119022972 251492561 432123106 904029189 616776142 845394498 870555298 995602036 817533324 868206095 388728995 978407276 529184805 813100269 672732840 679890992 500430056 531190395 350928284 422449333 581669548 673553751 740032774 847895214 537661822 738643760 333924270 775533310 833732896 922635578 257491621 480371186 204248897 977505815 306933306 648947505 934434873 936826540 957352159 971638147 110160691 175536584 767379491 888086261 784226849 819983368 698606230 805391821 79553568 623124982 475586653 814282692 599457058 814692392 807641671 829967254 780357622 996402943 802127193 804948526 790157942 975439445 642914104 789684207 657441134 793516857 875728633 975976112 581423414 590163546 627642676 973628202 966015803 986431404 727523 874610011 149110715 756702702 986785723 998662166 599984051 837187611 23434569 87448568 434214688 793878449 317550578 539219940 197666060 346016039 830786058 899779781 872818868 884704546 368671110 724511297 970517607 991064606 913904755 991533060 993087933 997946747 458298260 545410764 399958848 705889991 257768663 907800826 187090383 614783347 869290018 979785328 294260436 668863401 683664899 701200822 489636468 682754675 486053528 922964407 487936982 488363465 926566321 975418580 67687914 225171122 81208203 384780451 306884077 395126056 234460191 460184959 146300024 728165182 559279075 738925148 470432927 806074626 983700422 983842593 408955002 584511996 840244226 884315745 431945155 586227073 237605304 736822586 942950051 943645353 156413946 584735552 98719142 593752390 471671893 716426941 838056456 998604695 8699510 929869983 126736463 141912835 759458975 860605219 684692278 999036637 989161464 993933354 580719736 916151320 990353769 994116742 724901505 953155028 177399077 734205981 797016980 853189860 117586302 248139695 761612870 869070546 832936416 860281563 711225654 998004799 980309752 991404354 710043142 758266103 285299393 679733830 296252543 532267502 421896843 963728706 628012275 813236900 636337615 675116037 465888898 897732711 150509728 333849473 990564485 999163149 453998943 591632469 290600790 381041358 831295852 893430814 923106476 959257732 142502641 852064389 848147736 995662745 313094819 384487273 954280164 959271299 528333409 967730008 996492462 999312418 188659719 535178636 534832245 940987987 629541955 885922526 77055648 431725201 717227595 974162498 321038028 784981437 597807850 762242787 452440209 901503599 1209847 678636729 590816337 891669150 191458867 758089596 889887325 958271592 286432987 514258512 234061332 682028643 250087882 923034136 973146367 980070391 805290617 871438592 878190770 922606485 569369823 601762064 785343717 886121962 916166141 996246002 822164145 938470294 894167435 919766752 221705575 825090001 596247355 835393259 731256974 983827638 399312149 846880444 16321926 585175466 24691938 505659849 819704882 985468307 767815953 925660650 331239577 847027768 585850078 769026224 805393759 971436117 260638661 683134185 165437883 600209385 953593231 957359345 993178300 996139193 253037092 524160679 862735225 954055867 463984659 532824885 247948518 925742666 594784220 635024137 973587914 984326163 951288896 965060031 928694009 938783699 355524072 413353212 74925413 137003584 736556295 952134365 169880335 653226940 537532443 769495635 502897500 909648656 207830017 629388245 502208941 725044953 543388158 740350458 777367941 796851101 139792461 182301018 483290859 722709909 214487177 304972837 801785696 920300436 462543779 597813555 141935709 163404884 695446772 781867526 900087092 914496323 890630658 977578336 914244116 995635112 502353083 678735076 219641339 416233756 402642154 631578111 488027641 922474378 443664351 898817793 903634958 943205173 427457784 733309219 275290457 714954743 216390351 938173889 862226913 942554944 484903785 581797842 717043041 964094843 332284494 452269298 146691426 563951099 971423644 980340782 386461140 539242714 121746623 367502314 350025808 408202040 712532586 841963733 810185178 995152009 493933757 499215387 818858923 886027567 826342354 997929355 97502219 871029886 180179180 481117741 87106688 130018113 852154655 964351319 634507638 967831533 310026968 756556627 965356054 977325580 803958029 965871627 270551698 803330613 975561292 991491834 944761637 966735113 906308261 938347940 326336913 441242837 27345585 247699629 815733103 949969506 114681046 410179728 223658707 926453950 156370376 422093940 803395912 954671748 711737092 995976625 868545917 931777816 267837389 288383837 156373704 238503888 824351535 929897426 689684310 741778740 606316426 989403485 858214495 903843569 828871898 960612761 120559898 689631581 286210070 642764114 720120666 767780296 846844040 902535171 475825617 723703506 42080064 824628697 280186498 472253971 39150919 173538656 42140997 153065787 980108045 995651284 87847861 308308248 980958392 985043505 102235553 446222396 764833377 882435312 563799306 770979840 74618525 812878541 670834758 975018661 928507818 957936914 450018169 911007282 69882054 281188390 765589386 939910639 726811205 802036288 258589843 743948527 346168626 737802144 745279423 863937204 257983673 396391559 546428635 565741104 219902812 966296631 133125038 829570246 137081546 513105254 923378445 932171707 195645218 808805390 603077331 961570730 776217821 920282985 287694287 520348684 63215003 758995995 252792514 780254718 922815682 987569403 478528015 790428294 535707072 797796843 935630980 977685656 720947812 728352743 289663251 752760084 12367296 934920505 641830333 814343166 832496679 990188469 697854585 918407034 218687469 422030279 774124680 878544040 119216881 998973078 615463684 722773394 29138676 104186914 725864235 986314206 443733605 584066919 863909444 955572813 976565717 988348484 693850949 824950493 860529653 964487242 283975011 321422571 255986384 551091423 367695751 787709825 42118599 856312066 386220032 408547620 166057419 223415835 769278573 974057580 722658080 921774447 420601370 935802740 386032522 981809577 653365885 704287770 336600805 940103257 9454032 218684116 681527765 989559604 24299670 436195070 341260638 376219498 994022325 996265096 376699679 660900022 180593631 544371286 115484636 211227378 938732276 994472064 385675702 387135624 45387288 655137194 168428163 865283505 979110985 981099956 747022935 934531944 264171455 469845210 348149054 836133064 177474888 263412582 528032785 902514735 651404869 889023708 841822087 969711723 25886813 695305239 157083640 692041703 855461665 988287387 117199600 137638184 818286922 968920418 96730226 466460492 916763770 971542799 781506516 962001917 990122631 996807365 735927947 831048884 575541944 693906415 422324765 519358056 560328483 885682059 527228557 556454264 319758041 942949402 801009801 994914622 899754081 981665577 155110653 362737307 997356346 999239193 211327071 587258826 739878619 903390247 886404637 961548797 889365421 915747293 409077050 522986204 18576834 38644260 845366124 902624921 98647701 697609821 501776672 628523157 31454783 370713060 772817107 995285473 231457691 479852508 986424165 992585612 395016276 988077622 542679551 676538710 7179291 259424620 409634641 993708087 127218178 848925826 490257414 731325076 87253375 956147741 210567207 420960977 188844856 879418892 488974457 973729236 552032418 854542707 911977042 984118729 300591357 652631571 326382414 898377224 993240854 999163255 918080899 970410145 878079782 994053206 18107996 227884992 501017188 989761890 680743597 867024488 521254602 734378192 679291964 864950311 630412840 704507113 421148438 777517573 623492140 781786869 239674113 605719650 931463909 982103935 772666459 909223922 398079419 933635694 6758184 133359343 523100039 612677495 507747120 876429525 500143441 823350541 852034185 959284870 853719091 912967495 361931461 725664614 194785296 459759154 605711458 752433764 502446002 987158797 290491800 438823968 847516269 860529458 653817628 695747262 392549934 581114966 843984451 903102462 858035369 895375534 994794185 996890080 610548162 994222207 422340588 819342269 340602471 668230992 718934126 808775814 951097128 951367494 935006592 977017829 596125903 897268781 619730000 913944095 375772032 504831122 669700552 979436280 113119413 445443117 18197086 810051725 920474690 934295081 381932280 671440721 404472299 516622374 219373998 251006883 235614621 376902993 416125481 494164161 758750283 991094751 191881122 536810044 276106702 519376862 999241516 999267191 791230059 846805867 837071475 904706562 684139378 811804159 502996646 782702386 126921026 406876126 261916679 906948268 533397127 885045144 702347598 898289034 547576580 796909370 103474751 630595874 464262672 991408468 500837598 681249320 352815272 955847493 646878899 694806915 902962255 918040275 282714472 384690021 483819536 789917536 158262805 846982194 750054332 926796871 901397243 911256851 668400888 944677527 281256386 373000934 99702967 488167270 597930614 913349435 980482817 982986545 327437143 357094325 667598927 813959449 277395777 300687455 598924134 758192609 736992756 928730831 268148480 369292706 970887528 990190321 423020748 802543526 147793488 614232797 438728738 521540830 424592303 880959980 983160523 997638336 243634699 327337042 894553401 950938205 743469990 939215688 752089380 993321320 579802815 807798803 869366062 998478323 368502290 646068663 880650637 883994531 953409429 979992036 202447514 474521280 612893121 737040564 614798665 908985993 110997006 554554369 846144002 850614653 151326564 902576277 181867534 815631321 368706614 461034536 882877491 934123934 686619375 791360370 837366725 940714519 826069026 901860228 272757336 632235794 554359254 987883327 809997441 812988660 205866991 269143755 229210154 406461780 756662716 812625717 931625499 993832451 542073534 768218226 72732488 707238922 382193902 972828052 129788751 130995115 832399452 940176049 983343133 983820083 208538776 392829084 598646294 839917137 907040985 935705742 538719016 871601667 418387810 493735095 915454103 987481734 82305503 268211009 583958148 607610320 239314826 769798893 690735640 992799155 61039845 629816619 119924207 565223055 458440757 710255844 412818990 968207825 807459551 888188221 274217746 432229756 115742844 411796262 137470726 958680268 565785260 882892939 677278345 731003798 531878519 831980634 256437371 582871673 857486436 942070655 329174602 342795427 745738582 779043653 578889281 924671481 261639676 494016405 898340114 972707695 722215954 763015935 53236804 86675255 534251932 710047090 7287530 193912376 694404671 857411635 533756953 839714229 304238236 812017783 378377135 676123148 500360952 988895881 69599702 728196066 650935672 677371618 413395402 765414929 162773310 302574943 170377805 289465922 686392269 733270643 845557374 933190895 555663385 827105592 357683794 853617857 986529262 996766736 256234417 928054384 995116445 995868611 643981993 851763309 479192124 556555294 259890774 827919526 338373956 351581225 54248910 88163090 181223260 977576104 89756937 157745959 751675504 888986498 460916603 677834427 216542938 485486735 852261380 857172835 74437793 807552518 172746240 657954237 735716535 942563369 675762977 717717884 916770618 972834562 334067447 519880348 741526551 790355500 710022346 981795458 985367225 991659522 449614272 467675702 698944169 820179991 496896163 807717870 584023752 798372574 146344035 227674871 784125509 848103789 442204890 550209171 588277239 982942849 971552966 975959395 903485780 995228502 806879676 845061719 854491463 910592577 348619351 934127387 987373592 987839395 421180346 817903607 596491937 771252030 198992058 363619440 938679386 988968145 667279720 722896148 281408333 572088441 697005518 876886867 42124598 221621375 5134570 579385986 133367493 173725353 520326466 875796990 216314939 446372030 81489107 450150226 774255338 928473694 445952048 865365621 782188905 810654686 72136010 748188862 186305582 262131354 843288850 910518399 445365934 668356755 454621516 998320936 796813074 998899748 24121270 125606574 715857942 793943413 803193885 833694311 557046993 786535214 491866425 696415110 649830859 951349612 934131222 966409807 276471590 431356922 62455381 647489669 689780417 712406941 362834438 454822715 785967927 829581674 981433614 987592271 246296589 366393467 78829418 706697021 38710959 151297792 194558216 810525220 746836251 824717417 332021241 992521331 169656295 688960817 964800210 964909798 522713416 966287896 173539793 444092701 896390807 898963528 641028430 738693485 438659765 965025847 149800535 628741206 713204606 874032650 269194157 897032479 700185854 713295011 501002169 692588939 955338728 998973958 63191879 982085374 614682051 760110698 53010231 304109712 692105343 693882243 752676377 943390319 303850872 401809203 29337750 908676597 115123067 204517478 667391504 954728107 624938021 821013666 662365515 792174768 746495775 797709233 485810619 568557662 579503633 777087146 755692579 829226025 334600986 477174899 864153819 909680755 392311407 412969741 955347740 963534750 975069411 992384103 421194311 672078558 800129708 894982474 686122082 758499213 18784740 401217144 904034596 922936527 770389536 801650093 122043450 290339028 596233784 750635242 434116061 779980638 100889122 809051104 552400073 814996531 289156732 767899938 982906606 991380804 109910969 809522799 99845844 901367814 349024175 789849720 529263707 848674889 66173488 129280744 173097430 215999748 420162756 767888368 622237054 857918101 482181132 599196417 325276422 538894113 907037456 955646451 334794453 698146524 271873604 822852340 323780100 488345986 104358589 977198686 797975646 907117034 457789871 805089560 918723363 997572073 461170478 986493957 109732436 658695624 102109682 163368821 74771488 404469011 590449971 921124959 599572497 933200855 408307119 410330026 114028742 601128555 428265528 980418541 383541828 434429186 564988721 805123947 318048768 565262735 848870423 871301287 225222052 828093824 757884570 848939897 698806687 842232588 843479981 908271498 504169608 912514868 871561687 910974461 70208445 209150998 280208835 816095899 603740169 779398366 501827388 565056266 997173832 999310641 57083999 980342925 857106496 927429896 213403233 395947085 715465676 985299554 309195117 424651299 535635707 592989199 5679962 363803624 874371320 914200251 795016131 849407710 730868347 853003956 575528691 618777298 931332115 985166325 619735190 952872654 901410065 991129621 691145369 891334435 418987002 470992744 81044621 764936834 654276663 904561750 996996952 999297696 105198522 401646896 395260874 409611503 912410144 948300507 240072506 943581959 543888408 667392007 695401562 720359827 669567721 831595185 234903033 376194509 952320946 992210141 460250254 517966533 451076325 982145257 604980337 943692090 977109294 982465920 707305055 789104202 737382149 948148085 273351235 681000757 629873163 756769582 890074222 968342688 394362946 656811311 623684260 753530864 299690059 630652756 871730832 973742826 666858379 920729355 970155133 974595372 863968711 905057434 722019017 777523069 331923888 425914888 682179089 861749879 187536832 724012256 918976302 946960243 695747621 904675146 606707136 634010638 894109253 954263129 168948391 419820542 241939021 869148095 21326051 769263542 61642798 541215000 642217042 920577394 866617368 907341308 332159233 959059778 781004432 981512820 654053496 887143436 825692929 892098300 70443665 862022005 182192004 941929960 657456288 778110258 455867165 511001270 502527338 777329285 653055257 680776999 460361437 753122853 148838694 929781797 723461732 859307769 538104360 804470364 821118084 958701003 241426135 473474904 381353477 586689185 671115471 964886991 530712953 748990473 939707091 980447924 444906738 765179126 430264069 968953195 632844899 850065686 384379555 597981808 424702385 684401940 570740739 895962749 532791889 604520125 356265054 774670958 237173872 401570395 860810681 917042145 412854557 689015098 51323961 225318194 772842042 997511430 725469411 997472894 973854715 975761595 40595542 588389047 133347089 899224694 172602128 350619247 116920002 665000596 458923861 568356214 399804013 426896713 203392202 373937562 497237694 590896306 180500403 734869745 399707451 706121257 300676797 406471406 684307880 986073919 11360695 872375441 633260104 779473243 213159071 291358972 266483767 478291687 396708580 645456166 377796329 809379372 84301922 201812595 281370908 569889017 721310396 784027409 532229406 865550606 158588609 269339300 66616234 208598025 466518432 750705348 759657743 858733501 84331276 127780177 227218368 796571711 163072418 983227823 650540771 794925018 647846959 685720265 286753220 377049936 551145970 644181224 695586329 827237447 603365852 672693196 541746794 884306385 335010291 556484539 571086638 879313155 593568376 625942805 131014232 358540138 629782951 635041806 536032809 662620237 324388622 381113334 320568331 325382244 651217898 899788634 291966451 903019808 778193809 897439985 883894378 886907429 368566612 573282885 784059096 891377154 151039828 364099732 657131901 979050276 152610410 334953164 330033468 607842599 707472838 909697575 12054102 697826032 526854538 790489004 871178658 938465472 781758106 976517630 384043913 516928883 114164491 706256502 378566542 875175296 465271216 771712639 925585813 933144276 441215444 844041834 693482907 990928927 649278027 706576100 836597770 983595515 223310014 437721813 875698675 948137091 332860226 615355636 157928687 282298991 94730607 237809314 228173515 497936907 609755159 908792224 630450376 743880241 108546690 645511728 834334648 862473644 587750782 806504122 916180779 979508174 756432644 884361287 750554878 807733411 489406758 718299002 150097844 964029712 175106734 194544149 631109475 864480672 877762739 932491720 587860251 639683703 150094124 287386567 989290453 995546857 130926773 224980098 545799670 819401820 891908947 988766756 335808110 916482289 379652300 957152107 753166764 850741365 260830831 969822980 321976659 582399009 816979264 929028498 801500825 950653050 60716882 139251084 793292656 989448232 516833548 969199259 704575364 995825625 121149771 489383414 47077139 585420196 450013804 768554073 763074725 827595802 627230077 747054122 718150189 787950356 370563107 737563778 325023113 708197629 821394230 835813077 161263724 318593990 218680300 484112814 239103214 682599002 533352273 961258514 768158244 790658243 692143055 925998575 131354122 878955299 511584471 831203862 321567310 746310944 517104134 549117194 638085364 931892253 13965348 308166914 917020193 955984896 366075535 431877546 100823025 796701714 112166047 547455314 884206885 915922932 555789729 917060800 807121875 837125503 200532072 357247113 702360378 965257342 569035868 786574899 769619459 929612983 77444833 877377056 491872889 515176645 182045050 279384763 330128269 391182619 138165112 954150184 881308571 991127537 54192102 738781325 422818860 984328735 697510244 828208444 433473566 990062517 910075475 999297427 546876161 790588839 818766759 869934860 822330017 976732432 962369691 980538642 882044882 996301293 741930307 839490860 597346277 609601964 553600491 846682862 563063337 711405941 722458739 867526425 704742734 833963767 282728972 488197681 37735790 78450438 535426772 911419658 109500283 476314481 56051590 874512523 866798435 978275402 336001433 537165695 344834746 991284394 65810475 839073609 625259203 971979523 590231757 708392094 32655819 843123734 30419932 845072691 15782830 612870990 232807787 460673640 791723508 927552468 123167780 777272952 30884494 738434177 913560123 950866072 611855718 797725089 677517563 856939071 357834125 419343931 475544520 524835602 276207867 519835505 653990085 850634241 69854921 439770846 171585781 425196747 475662036 762080791 536116044 628909284 668170063 810171715 849896340 887763894 563558380 588905647 148174613 356645498 510534999 741686061 912658245 970531840 358013758 798184444 594014166 981616081 93933208 583321629 85936827 327337072 659910311 819430599 750549916 973445656 329983644 870000079 26370544 724058435 591248597 718884970 968885486 991158218 632531766 986359853 847345474 914789142 918402710 953382191 408512067 757279781 616063023 934431786 161879263 449833467 993584047 999378076 349021566 958790203 45587601 676693772 656468814 855452993 166333591 569954841 221234031 403319760 895118477 953629005 695805822 890147311 508889486 744796429 315359407 654264583 992787512 993057532 780017028 962291570 522173934 751376069 431010734 955718872 364586609 735039406 305244253 365788310 964895699 982236878 740925098 909953676 905493272 933889442 919435855 981331140 955729572 979779409 125878679 205511186 426889272 448681798 805453625 862265242 451540620 597694268 603384727 891530624 38414656 784322601 106688631 652282384 347704778 973838155 366443609 732939524 413037579 755634189 26874329 882357183 791946637 954218666 786816960 921207243 827896264 998623757 176863246 643168989 413511539 901815962 538831189 698651626 363144592 543889463 574088228 701199145 423606308 725931239 842205484 900845272 437642041 560618849 310030793 464928665 121098480 343221468 395671907 834195734 950068905 985885757 337377754 842097622 345313717 358382257 487275502 502610723 181621604 909419116 841693825 910376899 519355671 799654191 459080299 705982003 995306976 996902301 505882602 723053241 54308174 986556012 215669691 428334658 861643479 885158771 472485096 847896903 911631480 932126666 687910855 779334610 747030189 938214183 375729287 401334648 721548990 739076217 741509535 754937639 508862856 568183112 227616050 674071715 615560699 833626245 420275847 929518259 616093127 954645809 274088827 803770778 946731973 950085847 510972991 723677328 405091938 806465850 71875137 666948561 760942679 903257704 460342484 928211269 709044714 857011133 493970835 621452662 90000621 927842822 816562125 994949458 645969682 812850786 833863993 947276530 65609886 204018763 655054429 890547684 547928846 994629312 59578240 253537299 194277306 970637114 289517373 954590999 711057641 915095440 636050201 937834725 15067369 954734118 725049934 948953214 107106102 627426438 131119303 211826870 307251682 574653971 177314510 396569079 602053970 910993816 526297814 634129307 696210154 814337955 612151776 858383149 871688515 900621571 707584064 987299857 635298987 842677664 23483962 688203469 723440537 778004838 359876382 753621007 688476349 749509737 622958327 942530322 799456610 975264261 208777417 542576363 332866257 688799148 660350696 910323685 187462846 260868502 647511333 899192476 246891534 727469438 766826928 894883203 244307838 823009972 403654989 937540527 118831030 126314924 920136271 982938310 970593153 990196145 738923831 875565364 155401898 212975742 843960282 944463902 807768151 984356456 403008355 582956744 812650887 969728491 736163219 795138128 838519215 998132435 449912129 897742884 452145599 799856522 430970514 604671889 567630890 960639950 458373538 913678841 355442829 506550690 617410187 861696465 608446025 612966986 485630408 704501041 599938076 659453030 377384101 731222986 799389347 941423168 641699756 708917550 915250663 964331953 901803978 925345347 702852172 824114977 971831477 977468978 915207394 973327948 758580351 850705858 679649259 738766808 272269430 639168168 4922754 990483834 800197806 834881276 570769029 801527043 255561357 450220725 76890213 442548231 35601842 736656359 709405284 835283473 795446659 938839647 861013564 907487870 847355630 858386141 813143531 943403492 329988248 596760185 713126586 915248468 604455835 852304780 179933495 509805360 717707904 857122399 78751692 298587858 827119974 937612739 823230963 860929818 691987958 752033023 662978901 992250494 971957239 972691755 345608364 434960907 7799970 520506051 27886200 402666753 610329768 950424328 561924603 991060286 861283284 878526633 369963263 990064389 644562903 923522994 20520907 832532140 543124016 941416010 227220648 503217358 400878525 595974678 279791399 528863042 977978479 982194857 242782531 249975595 438436753 789933998 755353860 934953661 952241904 977715120 285231902 563120121 836538330 932293407 158356476 236808036 201823403 398221354 27356149 834209021 186020838 528649086 636103217 997000613 974420409 989101682 274250412 503316168 160553948 463870948 234664197 515343177 363285458 637876842 886301535 899065616 352518636 949347860 5194913 200823949 190691468 943985634 459467406 970364260 491505538 677340753 423744506 778256855 719333744 991371133 502292358 980388187 247084499 594121711 523324471 719195147 394812099 610645189 697485470 737718376 395332649 867874023 494362590 650488107 794321096 982636644 522870858 886659760 997797382 998731227 91525785 699672285 544589490 857499916 259899013 991629849 34161015 67094429 442423268 783204830 540988997 553723762 464552011 553169269 910166843 946015097 948175419 987895812 102223734 615190010 399014910 433189559 667638610 802870242 895068913 916521779 630304889 993865986 528366800 925950539 640738894 749410029 68226575 840499901 83343678 209350565 120027171 742375319 134849781 474406340 82557571 414428473 640678244 961320701 465477148 544727663 484379587 734041443 504564427 936917417 593245851 644230074 679014973 752901902 608576405 707461376 129476032 224443281 448205032 611845806 167061601 379800374 207062649 350766567 169027223 923801965 125227661 719111489 975568357 979014522 878954906 935927273 296206797 530504042 781722700 993748211 188180867 944803903 573633783 836009801 21895421 419306708 884939810 909851122 579957121 915849879 4036575 103270167 973748267 984712162 944016762 975291720 336395768 551452448 399657312 552650617 341328941 647980490 720950225 812491017 291537421 972676887 916999119 939700177 664323092 794901102 6936105 131891435 80088985 574300669 562607667 723617564 638359888 721173892 309262556 923436859 181615562 728926968 790789516 817595567 179718038 947020117 294409045 331000231 855781597 923125326 780205181 944250390 56811682 869938436 98032065 903453029 412848773 964619246 89290621 184458409 864772527 889560304 830170859 989913044 273971599 477549742 75919714 169822018 554843502 791302895 769723950 872811537 121820716 404226494 913121889 941682986 141305765 457053607 14668794 346513190 697076672 804049248 11302740 44349298 527182655 576097630 245564318 803732171 246762690 800863255 630733492 886172409 533362314 654341401 86501248 646253491 622976835 822367440 453635438 590105035 275759456 414877617 642915444 698117615 864293903 897166002 18283740 761901474 383974957 481438746 714498456 805980443 726248562 949088160 357554421 798299889 200196623 469392798 578206320 990592372 8692319 566433000 998523277 999355701 492004739 996454726 297904665 345138493 693966454 992156629 629104235 805932168 483347669 995770530 996488562 996553431 936629009 948082112 339464220 483902495 618881692 665235730 128230700 555140369 923319898 963446443 582781293 996661287 245385613 789614445 590094103 902770234 662908481 686622947 255186951 398487187 428704380 718450558 303722610 786259417 79814103 533095143 387352113 559268000 576002777 611843483 114354596 690534894 180906164 826271284 425046288 497910442 93907565 675140152 327358266 916690960 685678416 835153820 73515250 727571139 688716174 937830394 442606857 874323704 900073241 981298764 505576690 734059264 65440558 200009236 643294726 966598439 114831483 608806647 374356454 436132894 138103098 562566194 142947598 490064195 182551930 392638254 192859890 213602075 631340528 679060233 691569076 718282138 74171038 594906507 101631814 932994296 684302487 717221980 55951489 238485195 871774926 961116105 535723118 556281965 586255813 854765263 408816186 463259208 472408315 864413997 707549928 904496742 270276652 662628627 272143816 620950871 665273053 878375313 185615212 311597754 885630492 897461473 185737455 271277640 303477066 700631873 751087208 980748977 992230164 996097668 551457559 600890281 666822775 956883017 274921022 800194396 784991424 920221561 806665980 916088528 647604153 991512087 97789395 98791798 521413612 685711195 369119633 468331748 361938639 957912294 319744771 482324085 631642147 861671802 190276305 658821560 800229661 908069421 172110242 287888050 443406567 737080750 918612027 963129182 192753153 685693178 488874290 665460206 475242402 888147379 448437615 953211500 413768154 895533342 473156106 984559912 286212813 700935748 219460397 628051496 606113802 764013406 38641208 819205635 672373940 721997112 253326013 595774294 527481928 613417195 180128277 370846425 634237178 687617881 480267842 712439637 182523458 632511270 75585739 716005441 552006609 899574173 521135272 817738223 433497140 489079108 199440843 498750420 276826877 845449986 977663530 997047673 970197544 989195254 246890048 251620314 562788109 790716757 303124032 958609355 635501467 870419475 798607464 870033560 850832333 882761602 990695386 992132905 671522162 924146038 623874575 756611635 786945626 960859910 607633148 631843161 165781642 172383622 182242735 199920942 119480653 962867841 273303101 916885586 477779244 808088429 885493513 963995634 893941024 958193378 531122508 751055841 451374966 535034323 509216075 516504299 217783015 802099273 534416781 794640976 85924568 315654343 494507443 501849538 523653871 571695558 279422451 712587767 356412526 620442308 203140466 423518242 71071811 436688196 736421384 961692842 100602948 661616495 734231501 846475552 614643714 966500469 734610731 761742791 837202622 996028699 898771055 994589544 715850925 762552972 584518399 609895476 816810819 874081203 207022037 845776920 561065262 574626333 591602103 907132225 338908966 794503208 943010910 959663454 930596502 949730633 98802227 345036690 58329668 401154685 748512092 940751616 864305768 949106489 875937824 930522735 20071361 178619219 543341326 804166173 145696553 375384358 309680572 704561340 818774340 823040571 342919195 880698342 926986793 998946843 133253855 674010900 676142465 786415039 588622383 745658811 494773298 699467674 232539597 282701815 164045996 752420653 744610985 918383940 463692350 686315755 206956115 773938256 90387628 911477626 832694180 893633309 460081254 719057383 617132941 890933217 598633808 801703109 633758091 678797084 226767676 382975362 888803953 924462707 64117111 798061849 27635738 465414130 965489685 984694871 105984768 673234289 743057416 754687750 516313782 859628510 846785341 987016175 252645003 730873365 583479769 772448468 659903125 753472033 326829585 971865731 55616193 721233769 299184000 505913333 97268520 164409728 73394597 539299847 219189525 440867359 441582384 722966688 81097053 185923449 608992496 650037066 266130229 855137900 652024546 683690046 451712096 996768318 783879440 942538159 914644395 926874302 19434420 503155819 656566819 740522340 705362484 891042438 913997352 997726277 717175410 735769364 859038924 974574895 966201501 966902153 288864736 780485605 188903739 418289742 135442043 959285939 844022429 859975123 602091699 605425820 613126294 795489720 178340483 300877618 43224262 618755488 488365348 555275641 775089545 882516118 342066566 410451125 40280036 800186488 386526787 525126327 773464656 852125594 701726995 712749825 227865096 342554158 314940596 332812696 763509567 863259331 119225105 370991825 295451530 893304462 432033232 477063152 98158110 379481101 601742696 979060318 6502832 763968176 414290418 658938644 387327497 986823138 922212506 945456387 958106207 971300955 351280935 497171715 713219256 810037609 536607945 755458903 543020022 816053361 542680172 956191299 713059407 746489168 999014945 999031508 128899835 774819550 794016063 858713631 537815240 969945697 675326269 802896581 246322814 510703432 971679059 973357180 718342917 994181434 515664104 646742703 502025053 769916285 576771741 702046158 530738555 712830318 888827946 998151045 80215969 209413249 776393885 874405898 303976393 381511066 134499075 255086796 641755656 825631273 723833859 889971797 658294797 876788890 64993907 641891465 529211654 927729980 136892869 557930750 816004795 859332745 283081153 530209204 587029795 757768699 257033002 921187240 598117499 831538432 323527104 607948502 392325310 979038811 578039204 628285447 985322129 985557751 57093751 183424271 816305248 866432848 923668019 983548216 345719212 485039744 442318411 545670564 603260745 794751761 436945581 701589847 11352391 503544678 939822030 982854566 95217000 124624078 873339496 976446878 571434559 616470677 984453952 994209198 30661397 191180050 986083228 986569011 832561560 970618781 13349561 997967829 495882892 570678607 923120112 983283328 176045602 856501299 724906050 985116658 643409859 866446626 141785365 915966545 920580289 963518459 170690336 486405658 944886093 990931470 399549100 704071994 375923971 767819412 157302956 534455504 235678005 953634422 641845886 876124237 623328574 792817987 378179577 531764311 813040408 908782013 328910720 671155815 628148269 862597457 93625002 476258781 376407890 397163444 944648046 964457433 537650789 851103966 536674855 687312945 794886453 830887425 881386502 985286118 528240766 634616155 17170995 650913281 443750652 513427893 363390126 404027328 900915998 947753621 102726133 782857234 80277485 118497138 40481975 217225881 990727169 992151437 158483802 744457492 401960528 742648501 761543802 783410640 316816044 871607789 814785823 976704693 218457138 381588055 186788058 994899164 320342370 772329313 615794566 678730279 729859118 858914368 566192831 982839157 882535933 956216882 738789092 866089338 739861862 866272702 503404318 606376542 574659915 969059184 111434112 229108700 954183185 973067866 138566205 413005040 23490391 833655330 749026743 905971138 445393407 446013606 642553407 882361876 912029387 980527040 908284782 971458248 361216738 948778475 201206103 911389796 213864818 971868136 44509086 679670107 807851868 962616072 200547675 212635713 583123217 852982127 236233708 310733020 420412560 891158530 655010395 702773474 797970819 844086479 320369110 595992304 214819769 438824937 127553270 990834782 326679494 623001893 77394244 537548491 249675278 288223156 788808083 898326623 202403164 754062107 255395675 873282428 793316897 923454679 82965193 207337649 138336126 529230186 998801226 998893809 197986250 627623465 576411560 915016318 346216257 847056830 128025998 270710135 476970817 950389964 403129449 761006520 310947060 357285857 808026205 959421107 254897166 702375265 968159012 998741054 79286889 415696199 781161862 961697888 23001199 556205375 278148716 479030732 9881981 652222994 148823519 591194645 537967585 695843703 401454081 836950759 634246781 950684558 627693827 885393336 961172152 989511273 194880751 588709379 793648512 918906715 977091881 994559610 853772445 968666534 761608375 831485966 441470318 563244144 310755442 443168681 142830454 396376670 282654749 848982836 8055693 51405852 330928505 965746688 918405554 985837288 604831152 845501815 414147895 903804394 936120821 939130078 405212037 460391036 519567354 820307749 708255148 749850560 649168105 950256714 604715490 946219328 977750027 991968225 596051132 693464186 652228492 689307352 293536036 451827694 679345141 924755900 134092541 236698116 302630835 637981083 734427751 768421538 135088859 821354666 492464130 698615095 368458774 782837378 42435675 596597725 237197225 665383974 383677939 504185563 489911901 811241939 640855577 859239941 716871980 963329483 968571574 978072541 854167912 871044840 101044535 400339573 986525626 995514632 205394169 568015423 189411605 467855363 385358820 430623748 123672726 951763925 995452965 997714866 8788679 511342077 116732217 696861879 694786493 769597837 845034613 853151833 573143121 845709245 118236368 713181220 917133177 917540562 793824838 904251750 475458935 549332210 709543084 972892403 629483422 890314603 917553275 935713721 319607381 549505994 385924761 993241978 640626979 894526947 24388165 178261114 231842727 862859940 89857237 178164937 336678467 442462965 289712785 540483463 439709859 990789888 336820637 579670554 47596859 495048826 767683283 797447534 514269933 594988422 514953398 932241583 548845105 706939563 841677131 925544366 717548202 995856057 867487908 983415217 841287898 852033764 494829626 694715273 541469469 578030280 798925818 807670045 892448920 986241568 891002104 997351514 879215887 933033663 568300399 740263522 806877731 815024565 47923938 613513375 793221672 821774640 372731561 849524500 548517451 646030797 168112311 415439521 514985097 607420627 984587704 996205060 946298208 991130299 190766224 622621948 545354965 937360954 65501683 475075161 561487165 677110189 953358905 970389470 369390243 688770352 115634337 789147446 262559467 945059948 181450426 219845582 318278543 863865453 653933065 991339425 740990915 958049630 688905330 900394649 662464872 839154457 878607852 950093780 970095115 974998130 597617036 772305846 294325029 618986398 72716569 903788559 327331660 947150069 693176642 808849190 74851536 90386214 138033735 305749928 364523172 368212722 720616975 968838733 687491749 982512023 125836870 334783357 67315218 914599100 125745807 962151032 34031280 273337586 569123866 694450294 81592502 716107976 468379 246280502 688943993 808957502 712799884 732545638 384310491 702297506 998681214 998822655 937715616 991832680 984430213 994441363 638549543 969272176 839536926 884229964 523377647 984127038 533196459 713163151 863129819 923353113 316726642 947310587 600288805 790971704 74070567 843292404 370727322 668341471 566132008 707190560 448160962 903182384 112791682 745013128 997716646 998919801 368977225 535868472 408692542 696492161 563446933 695279031 994026563 997353172 303742953 950961393 54463941 358896211 167637266 366190726 587307903 684798966 343838151 780430448 947246184 996562871 739964335 947507755 869573855 895966501 821263811 973501315 81587095 797421086 847067184 876119433 324294130 972366866 344961456 957669134 772363607 972537693 106651370 977197218 141839083 933560425 376796466 889871823 721003856 882045086 876271179 937220468 959264932 974153305 82045462 276399194 7837781 532061503 795309521 846452307 499957189 921189799 142576504 348228075 581220132 730231230 813601767 883421735 940913584 946355720 581497345 813938728 922264677 986583077 224597381 466210308 171637801 350337844 293789277 798906888 20109118 178490442 222766503 690417361 304505556 636760517 982335744 987655886 556199868 945215348 389782447 515881569 851083267 926782061 814835239 870195865 436184849 891236018 110901 105596030 640303223 959050819 442597679 585366024 384770526 761710417 781237572 805044624 54614369 194086204 518568653 700266384 97072985 926028471 84337564 142312011 332623575 890297406 503502435 916723094 549709821 956228707 603623057 913236644 621828192 949517284 907589533 949547568 52722154 353674501 658862832 726237770 579454371 677715096 317142386 645470309 507359897 912314447 377448922 728781922 150219334 587574091 8676872 157051230 781152566 965254650 410252022 738153823 875040497 911959125 420979651 696022010 939267231 940738995 281973448 568661807 817811853 849189638 669543977 913068042 545942901 687034966 994741666 995990300 295252956 386081284 740290999 974232368 152791650 991692605 608445738 754043517 147479633 259204366 112616166 799526886 228603514 735350509 217698749 358092631 458836217 707988122 13674702 546842661 561360704 740250756 979740556 997093138 164387276 950655824 636824310 920190207 923189532 970238260 781305259 844892296 399643899 635814645 706090282 732069811 934502767 941238391 421254500 590842954 890210573 903726449 942058848 969593381 777327065 807139753 214808931 271694865 2587185 111962470 161366398 856155531 869015969 886018178 753695351 834140822 676753411 937514167 596489486 625362125 492762767 860868486 846447116 855486722 698367146 728938857 780705888 781582697 307400186 901253781 100785572 148670879 803548718 922523368 524152072 537305567 905519551 960402174 827013027 985262874 96288098 933723215 293063122 349851920 610398022 837554028 582950955 755599798 455630275 466081810 729980670 814991967 903784554 907665138 489463617 850749823 885428567 952507625 28850071 836723887 331659530 350340870 694938303 917413636 19024698 728548466 56905853 787810434 611035717 943554006 847732959 973886230 434324379 501613815 487889277 558828999 854109344 981954043 145581762 333071095 954825422 996440734 444867826 813918419 850869948 863553415 175839474 376323637 276734383 557084731 728098447 933043266 754969920 891635963 411899084 842950255 769918898 916877910 82151556 920068156 610251232 866564784 887668962 986945277 363980331 461558656 282077330 533318068 174886580 202253549 319492488 437269481 19442084 257805405 378083461 871024099 896394017 965349806 143238523 992085746 836060574 870208590 483199801 857867712 138229850 300772579 465233958 634928951 251313148 301999230 532230714 548437225 469648159 897568281 497241878 705158200 299156638 839140836 237064706 608577632 727253537 800028863 866320813 912230398 566228249 804935999 522117974 606471939 400532269 622931373 302300759 805253396 380329635 798003845 68523921 120598989 422903642 480565556 119411118 512818912 442794386 774247177 661283310 985542788 122309983 550343625 506424158 648250466 769431197 841861978 451327015 763248534 677658154 781132124 633841860 863522118 264991639 701941715 876599530 899455091 588600326 589168063 49873951 182814734 874081459 900995264 991302393 996239779 127367842 485524352 25626960 368901849 415024070 479325198 366092249 411339160 29182129 682860351 176596020 670695579 271140975 792176045 450106251 571954934 103752167 278280029 269171326 389712956 199759791 439829824 427347788 498566558 908228364 957286112 500774452 799582666 509364391 700898141 335258252 603721426 509889984 760388726 269320093 890470957 169810941 759043050 16680744 664523160 18376022 607423435 895694802 991798728 114516198 801870084 181850345 833918407 88031979 573809588 947530925 985079683 230267905 367875371 500699165 944636761 19104796 706663436 458903171 503276252 714487101 735346342 501000642 788331152 493992733 539898876 742005870 956593511 284147249 837172333 161696888 720826285 333426816 761857823 823664824 929289755 198451771 692810749 551102391 982682131 790305849 841875177 654401108 760259316 925113848 934969192 99396438 960083823 698028709 795373028 18076092 399990125 833370244 847783797 479173628 920792147 34250142 893911137 634466952 813331794 336640905 693589875 844357840 984117368 234866568 842126323 969078848 972334718 391248412 927052773 454280500 532869874 280817524 771471732 863520466 871501311 923732331 960739816 844212272 963292984 321855642 488648893 884217169 923618548 15759139 342975256 235442958 297812030 708414422 836731737 868211007 903041598 573206910 917006367 253339336 389091730 24015740 588013093 884852898 982527473 150040904 477748292 707105061 773267459 627751185 950392280 688997340 826078048 662735620 694107933 374303694 919488411 625007846 843516064 128111809 207913527 564460324 677436343 887645977 894019234 56426184 765004137 76556405 439229415 18275225 937423105 52518080 62183931 32651536 93434259 143160327 789627335 164854743 766784882 177256205 952502758 915093955 973474796 135760904 761029443 327330617 764181342 472193192 991174098 523903790 964704327 13751840 564652400 319116361 428042336 715792078 725601951 507145037 786024629 969020380 973928628 201052578 641057101 911008904 959025929 299494748 467459814 287174621 672613711 506968408 899834703 8118833 130890156 46180620 649473061 752772221 944752298 767221873 792400335 192655952 707176800 68815953 545634662 818068491 980337358 612955791 657761305 687897929 690899733 986957812 997775080 772896861 966851302 177660596 640925430 732870286 958155032 441858024 838082250 375555763 517222492 470352627 786990409 246960998 946119274 21164265 692556852 887021186 993798110 951415323 959594820 503285684 933593638 734565515 781062463 764333918 787442107 759761511 823658439 314764215 586359786 190149460 846662370 656456472 968665322 242350237 844001650 364313281 589105851 750750639 905093853 156588802 347945126 525989625 921226425 976298974 981778333 538423180 554170575 56660805 890507168 808155423 887039592 738156836 881259296 308100652 614865437 322753224 477789642 458645275 870860713 169002503 602091335 273378709 605362800 116079461 838792128 741341898 873805125 743762031 882073747 600880942 979893565 973183366 992060371 678948799 903358302 862977368 960638268 774261962 884450922 514540024 852889231 980246323 984995003 149463938 309136774 772823619 871373420 839740400 869068779 749018738 989860266 116039939 406810877 140598978 420531802 785459915 990447695 765148444 915303285 712245211 887534215 946287143 962776741 420030737 826250329 419664636 966420886 773672099 868584055 759602147 816133228 872819096 986892109 476038846 857613888 327089932 822868431 660120388 808352638 93692242 756292367 221180608 840372349 347586569 722334592 205848210 491539678 572202287 870846665 965009632 981473631 76342717 641948779 513853278 748104455 53592543 379220428 168479601 252706159 859973106 870573870 739492315 743332052 42103308 245010528 58414775 735313414 581341017 953599919 232102030 586579438 209834855 378144907 747556701 986799452 841907091 967766620 760508920 809347629 733043697 996303758 606188311 822900583 124055875 377038478 279835128 780045533 838599507 953454907 75105362 100132559 747151934 833158223 309474318 876790522 356072312 418479153 458752775 598400857 162187943 731416284 671538691 731756690 866288609 890237231 712921699 774137088 287945164 366162748 73408665 172592530 232704801 779366813 529790099 809777915 332020346 619680350 928117780 956334278 225752088 952920741 804630842 989375703 755865885 881827753 635520136 984920598 224553361 531467763 551934322 621830275 886209329 928782373 374720911 514080253 134056699 673300613 29972637 427019931 498043127 548856564 625159963 966964819 452808171 769186792 461158378 994153610 286494926 936686354 470368633 639248524 605739637 670630437 530835912 795902935 516739471 994252128 847783011 928952483 638350093 792410379 985040993 989275091 318649558 853480084 426317660 623427115 949930616 985535960 749812587 927768921 197188866 364191148 41849113 613596965 690177124 882845718 421330632 733775634 81302760 304622374 336131148 403201976 254578995 701711242 497035266 963557534 439732990 949314945 845685571 949184097 551615602 926218352 917272634 955086907 577940020 953194644 39382328 951582342 825611228 885904659 621464178 777235943 766821831 963203602 913598395 985443221 880560504 929150038 644313911 957320462 924917707 929833432 952648436 969861821 75127896 668306425 502157361 643024302 130756587 980698389 449521255 839653370 885062066 982537170 109465513 266470093 816713186 964482143 684346863 709341763 33248020 514192189 570682917 679514806 797705657 829426016 352576582 815694732 684906970 685524925 496176021 643529186 966694584 986645291 904799204 939800785 752447150 849360451 218125548 890700059 945949621 964708001 971879451 993395485 525637775 680616919 685018539 874244187 116753994 772950678 420389060 694054902 700564724 896477410 575978209 774384760 547960435 775425987 794049571 996728187 342583270 401686097 956626319 989009482 111377772 564014062 37899238 339554473 529945572 742153436 311296108 565584443 758005518 900685095 129762343 382841781 743611014 986091241 298177783 378564407 977143146 984567669 864961235 992846547 951530747 962441416 188439851 280964495 686488544 712802176 765438365 937140742 892582224 983624680 555736569 822652213 880694413 961733444 248121574 801132717 612092332 771238755 460004480 940124783 631022147 777288417 526963381 635626042 284733065 617977589 27064297 984865864 304599153 557467262 803474351 989859946 769126620 891373001 750427234 819010293 687317428 866328123 933599759 943183808 234489977 965873563 434580871 500460853 309643656 623876108 95477176 238314657 1832378 839028665 657880966 823383549 233407361 364472788 969972807 989457712 961238335 967179819 684050335 703729780 521220027 604528168 273647058 739845822 369473873 923511320 674049342 906475108 299000009 801015700 434660277 593307930 618046975 905484965 285074374 346760177 236185537 296495986 106329020 528521039 490703791 881410674 913092082 996820068 987035118 989541445 161423301 697179817 17021390 214640963 373364399 805562983 481657226 749726339 728114173 808878498 67709433 226282431 518286642 758139960 559485277 851446447 565758958 896210999 71194297 603185658 174511325 576642842 211554218 770647413 650921396 906322246 958037458 976159324 661161213 934946543 584414919 714157409 15632886 29539100 148695841 421023006 296260886 370247545 989649541 993017606 859956862 958960307 989616865 992365313 878767311 997533310 595173879 953696610 458804564 949718558 753712844 874577147 966490553 968042660 748064512 861421384 505684815 690667759 12666738 669002180 2556681 879531685 569427453 989311926 763300708 990740858 894067099 900483062 792267951 843134725 144811697 375377862 737203326 949378879 425925992 479226976 180686377 569686836 620320648 648171616 89647158 975067470 29428587 846749622 774895125 779428380 591168371 876588827 971585041 978347241 541989724 630545179 568577640 803116297 617391523 876577380 612515840 640988158 298707260 621711192 705772758 983082662 568936569 862162494 792339370 964835345 819429416 821388992 540740423 792200531 264007553 923437328 649167911 793105550 520032087 627200834 57487651 111374110 974462158 976871065 273412002 684367416 709794022 842224008 480200820 845655195 946769256 957621049 870831222 989600546 455071830 782520323 524374421 741078764 143657584 458006808 233163421 877134206 809692422 903096752 947120994 973523038 526865355 786247739 889890927 917132786 188637852 679910098 759397475 991204413 415567172 447727472 890462682 948961058 541885582 902322995 870612034 899687965 331947606 567093244 939574320 988126910 306597714 412719989 30031552 662538377 950186297 985534901 578381278 691166626 736394546 955929455 404320591 418461619 487882262 634673145 399087022 427046335 412732754 509883027 166634250 564636420 902444385 948790034 66208971 967773994 356733096 740469040 890231736 969136345 399448387 634407422 352374671 690040699 555582704 939719147 148601997 316131488 832536294 892126338 121521332 212854431 831853612 907879476 403690909 723434793 66421593 620198804 587848452 681614845 728589274 740372232 46899200 390567606 225945344 310463096 827377825 860011331 567310685 678626887 54725547 115002261 16320224 635378153 316017123 878311761 47345372 611484664 28872082 332387290 415356924 712095683 492651708 700013620 831441488 916054426 682283684 997409027 646443393 960570094 621061861 885885391 779476142 966339221 186838592 380571913 206549127 975537914 671206048 931946132 9172912 572872886 88888407 722657360 123648463 444710523 420923347 671337896 713533358 890175334 156571760 333695673 89830022 693946229 706584712 901264430 10537469 577832495 110348922 913387939 578679041 824168574 763537886 926972510 706790279 961650772 916873956 975881280 650389110 900866611 719724125 853480493 188587210 880511332 93927635 665303775 365461580 427255313 709922105 835812814 867419932 973579136 463670247 912767512 953157196 965260474 255727993 377312526 952000517 989901676 180286700 296168873 308503234 920125710 833509747 963371562 871078729 990085779 551797081 898241564 704238976 932397946 657349326 926020632 608134330 990972596 910087810 994448492 508414979 933201987 866903948 914247445 752792876 946124755 930267338 944773634 480623357 537249790 928676203 977196883 327568627 967081419 973503606 992897598 141184020 920255702 808270869 865708614 389405901 769149917 288275312 882594358 280739358 660541273 456129933 741785997 735467760 942284104 884680889 971213393 676183137 819998956 842796271 920079649 923780688 965171723 391736484 974353779 543093471 635228761 207999520 689807696 409861370 657774550 125969459 802562623 865343722 933568975 903751024 908932811 940227373 963254964 782778117 887082959 334544710 811458933 570935025 576614142 681596540 877431262 667074378 774432903 739035796 985018372 53198430 849323057 797160808 951198503 479543753 614441629 172521234 951909426 759786740 994411801 980985862 982910743 78512919 512049060 853427274 920656873 704396213 998072827 679853120 764943734 442308366 935460163 482611309 614354106 610444817 701283934 119920710 581553971 677309746 779923160 202669862 925462057 670595181 875868239 501373824 894700364 750181613 884814206 998946954 998951447 675722565 921974400 650869211 660950882 229344859 935714704 271259210 335507974 192412471 853427683 97338638 470938866 412683766 906447117 664620592 982128787 271048553 624317238 266599701 646512718 749622384 934379980 644334546 828999175 709912266 839926544 103356668 920732353 522133535 777311234 864491712 931002760 425283621 927250350 798867019 835286656 759415819 899721277 300653934 463912213 516990350 926234891 928140083 985601226 94952439 430132675 488876874 685561672 389639689 459248014 611738484 749156864 301247343 448640837 449180108 449637149 201160857 493534569 841328908 995863476 856260225 887753108 348102709 772036215 481503453 947127198 710463798 713892995 939451676 996571100 292614559 877100991 141006536 815875529 534346907 639341108 948795044 992370539 977923706 986862348 808080164 810781063 578554660 665091386 793104942 885790837 817678481 943650464 815879285 874209373 193380028 397150520 972587704 984900340 323399200 617271258 439344755 709929423 904614179 928904599 679418220 784846569 162133195 702902465 26902263 142783632 382226285 980092832 916355622 973765961 670104323 678204599 10255345 233915619 280576372 677515874 957907154 958932320 378678977 908176718 412422455 466591736 785123699 869606521 192813635 820187988 458178400 588541765 993639240 994444576 628139271 845073989 959091747 966492958 214548995 451036236 813198867 819370304 351165380 941733813 968548276 984004624 624663521 640997434 224425667 491870384 204535644 736593571 462453559 733460353 67014378 68343794 32216647 222594131 724499870 838486121 945558235 984881770 799361134 989592400 881891 785963341 750828269 786867824 156445217 761561393 407901374 789237191 684239242 951894330 250383356 580248832 844798242 947130823 26818264 409210858 547881813 635842841 796655481 864877588 710840808 898008937 822031278 883337310 257864621 507784686 613282719 937004234 244298312 814565190 716890379 732037763 726089785 903545168 624410001 641718683 313019507 845296052 362809553 794577587 380142121 678634963 496840149 677548809 21804466 417310067 458637924 872393567 517871069 792014610 691679928 771318619 230119365 343621474 7694952 765114969 960050809 972889679 95265394 305227844 238287687 766979462 875681002 934468395 12279614 377272408 917456856 997864430 403379156 771278112 495799053 798897534 712092964 799795503 576493588 661563191 430729584 463211237 367364725 720085892 322648593 597469510 247678730 376168025 927641615 945231402 148484089 935273294 380066356 847772540 473753790 771860263 695088039 848254752 904552238 934725570 524203469 785060094 276401657 888802335 354083030 658519610 485200969 903599495 950460909 959190804 162220815 866905342 396598182 600933907 159554934 701229587 724690879 832351808 423698216 875417850 335996750 684045831 79543170 904005524 677749934 724126946 943161818 957902822 464372447 876383571 739511987 758802094 224693229 795745934 178418019 991734285 36651645 723726448 95210723 250912396 497340712 557617345 478765209 532910102 68108297 855474269 651706562 940855308 719517065 993079006 688824889 829823294 159395638 798085350 898186996 915668396 344573159 518755364 908233617 992826418 463096991 924825067 191604427 339581262 546451132 740008398 462359017 717718591 14053828 189130064 865063049 974476331 549786503 675929400 894506570 935884220 182335037 789423198 376354448 664535644 198056144 859616995 535138557 595275733 768160675 836543007 409535254 678460768 787230036 831466937 538723786 597183113 634555596 666238668 487641494 690631341 794663745 948385008 561187045 841834345 390694037 410882920 253968375 716622661 404712098 700740902 361229086 534423726 533575065 978399485 322785276 820836212 301414921 933837385 517667654 766430111 938656929 989868048 699705926 869024844 227756953 445212720 453527027 743731777 907568706 966355264 93202062 338310717 21379322 804647072 822509084 881316253 257409354 494400980 728169104 826283761 517083271 764926529 749185253 961499339 383015972 899601662 29966273 195054680 60820352 791147679 736027551 912524951 828191587 883752297 327243577 824122065 680112668 989332095 430330389 700589141 624572994 886085856 562494664 786220148 999272009 999307396 421331895 964138716 205307144 222836337 364213016 382922489 387841655 514027417 153312298 502049039 99243562 830088500 481140397 964046741 54514826 510456542 919374337 937150631 867896970 982891768 532231526 605422875 778935733 933232567 471554883 478242099 508276009 701996724 223577409 638876957 540517806 672223533 269677568 795064715 757258767 881503146 74582686 156026290 479360698 720729541 146528720 669579409 831216477 941134554 159584946 860195123 107660703 172206938 199883055 367416302 228673460 933320687 365887407 598698123 762402895 804841887 950361141 976826927 85076634 918349920 53576197 829143118 50663765 424651462 848518220 971808385 137724770 227711246 351469898 473933762 573651421 622299478 191772791 233642571 388796647 708217372 509663503 962300729 910835742 923124539 3805746 109695536 298567083 795529361 240219748 996366363 273413686 920236034 539303723 574028006 634517627 831502117 380061654 757682270 424130223 588337697 706416325 975848671 557363985 854321704 820849787 933825104 26850486 115970252 201064522 254706181 130935186 184051052 924955015 945000082 1772703 608052921 311774639 872251864 325040951 885135647 17295476 346979707 863436578 943184470 278820446 475308512 29930642 483435333 484079040 521341871 67524485 286797636 279176816 766210118 522975612 711378222 22639280 734923245 909472879 995666545 20743663 987662828 888079085 911629571 197546059 671806430 554539028 797811699 568171751 707406184 303151956 530294874 799972556 893360287 996868343 998358399 851547912 968759488 103575397 749528537 781929593 821459181 477751230 785483760 934290092 969859221 757866456 819840520 11720710 700456502 614907909 952949291 542322770 894306323 718238696 788215029 447276107 698350990 96011183 838237591 157964605 967763974 90346840 465379500 674667345 884166670 680279435 841841077 777485713 914268025 911898964 941447064 111716721 779247395 371417691 513889058 689993448 706009310 249697118 991974055 524399753 946649407 417991468 885363909 831479524 974697516 915449643 972184372 219694636 600056039 163452363 871348826 393997838 432933733 210948399 524593387 185366647 372151935 625611408 916945445 260110236 676585620 127638233 335394099 936719492 967296634 368808924 385476939 666372172 818134848 244918637 879722883 762159806 768383568 113926291 334503939 631409245 866594072 532748923 914983432 689006649 901246157 696703707 924760096 580182267 859632292 746538562 757084215 504368517 833774346 435467854 723769748 498709645 545562706 96742464 516982294 752242939 959220566 291445453 541089935 96749806 900920975 494266193 912909709 347700621 723857882 393880643 448318285 433660480 586648838 547285762 581314126 897680677 951736998 406376360 666783064 499319444 599285384 675989908 945412936 642571391 960189582 365758972 946286001 474965550 478773406 975463735 982523871 120016097 896524350 447781172 706387193 257340289 919116161 646010746 949598575 489387628 953734041 913407550 972948392 336113158 456006272 665125930 740651277 487636333 689743171 156214295 514777596 380586203 860814330 765223941 832951650 67460435 951132733 866093008 934805880 156723789 310546629 236679138 311209540 208069313 717960122 560939793 979543139 279829690 444224718 643725464 748735463 92145097 103450139 174699631 747331849 660764495 788851648 849874720 932900220 622962214 958761570 798424435 857795876 600139299 799666390 290315220 479539497 699181350 807686283 870185606 918170456 944796159 960090594 844454208 907109252 492935553 948077262 747716587 913395569 350515215 589866586 721671721 861721095 586058371 641163319 988375892 988759999 100479072 569409622 201232709 373731224 722572188 964788486 260219839 916705845 415451221 493720241 895750555 930345648 676604506 816028873 957750529 983432838 433850947 694263804 126651553 922174039 306947060 568928264 769233706 898533066 384809827 752901179 695135494 725915859 789413049 960191581 845909633 968623688 180712891 411575417 660407474 704589790 841415623 942483233 496168751 510548642 146125066 223397928 531590237 610406200 348921604 377749281 581605106 709414181 529741749 774668030 828217881 971743722 483226855 494009449 247277088 774170946 820433645 840627549 385308570 927811049 524969938 771889505 444389844 475605230 677829895 896268991 870357613 888998632 100408850 450679842 451539392 904405216 713551696 820320535 278175629 761168480 758449970 837380411 397338874 452544664 161490025 376627193 939404872 983392775 539596246 808321768 705973684 917662792 832963646 879480786 827946921 868784853 952801598 981833723 48016287 56659551 97577830 716191759 507249281 748342427 44615805 982349921 977304063 992337982 595561210 611803777 886872434 943433150 91308028 247352135 106171083 545800367 712084014 935856506 57124069 839754530 514667007 614403537 365954850 839597715 351670661 539432715 138531184 257404076 503273626 835939986 126269812 324914894 162649959 457709523 953849557 988825032 480439947 631607721 565591074 743923363 234689815 737655221 463037094 777953071 242870287 903596417 947052119 954003087 891996575 908727483 417063454 831585421 829310912 952358006 725737430 760712249 70836709 251228507 367836335 418050682 589268514 600801410 243756129 672565928 663517034 759711866 602582498 616500973 363729561 557162786 300556459 817694298 967325030 970558121 919906365 978792444 221513237 377504361 538522379 976276302 833630001 922193719 190018515 197993438 347555214 669735634 310078922 756745336 640194650 772770159 775305878 823469831 164346193 248840832 360882188 428247429 368091367 418603135 865732904 993361853 196601081 793610299 939031046 976319926 329083533 528406029 295886364 609939492 573452023 842814691 288820699 817341534 615194923 964397274 778233803 955418653 93872487 153593907 473952619 605635973 997172223 998079667 64236849 435039744 931171898 997777214 171394554 609552952 578468505 702096651 850573477 854499871 837393969 962586290 93747958 994208877 890765870 947353725 348183314 522107368 94385672 574471785 141196903 929627496 866007810 930443005 453337201 816637487 763846261 771034708 80873353 647010695 721666734 791052511 195075250 906172541 847326810 980322081 182042108 795929296 294618631 388077848 55693972 567620641 439594504 886190979 948401579 955757167 226120570 299662247 138881195 367869921 475126342 547261419 329931872 803031378 256805881 944937477 988273202 998139071 736306800 769200800 650599517 670696323 188216884 729651578 234902073 525996744 268260947 320626012 975215990 983602454 949548551 968498187 224895798 998580589 151711173 240766923 945475886 946982351 876008007 924173345 685321372 904771571 919975432 961701722 7118354 41209246 175682294 703954623 497217755 524216457 910736655 928993747 810035820 943413199 413013436 446201099 932416161 969441093 494592250 804038569 888931373 933757363 737069902 952081590 376248770 418325157 129867956 178513872 121824528 235304811 906103706 934385057 385848075 882367715 500824867 574972239 405953471 619585337 900695105 963534805 664508658 935112108 551048950 993109156 292360579 306045506 845087518 859082510 28769176 906020946 699105341 805142076 440006295 492589808 679219594 805725984 474456212 882818114 451199971 511079844 275277419 344060408 355938352 701017304 432540809 798171221 530683222 595028783 212143790 212923232 9891660 33829465 53441966 162139591 709310819 733018188 882581881 929831010 115281324 743848836 845308821 868080438 426583721 454921434 351934716 726986084 346688840 974163214 573528845 992725668 592397305 902112136 948827821 953236699 605006360 836549088 871881436 956550910 391695362 395512232 541518541 952528386 46874095 347814198 776559500 821425479 285963845 677958846 948776343 980557348 776130492 900211298 771620086 958202694 879630723 949639703 456033387 676231996 719735969 747520026 28095903 169078939 402963909 425003137 524292913 541533541 339399525 677692120 871612546 934563742 405963048 915753844 351186523 600518699 779587069 834959906 343838996 562200724 141377853 843946813 38772370 800112395 785380271 791295498 502617414 872538808 152834604 478352530 110635191 863682121 653290452 732025500 653051417 895727615 357212215 426449365 742986890 918365312 675880941 890736611 519473010 931033662 474867469 567415856 666795767 752662552 670104986 837432256 928200724 991480777 880817581 883409019 846140223 961700106 68002735 961149555 739947624 861957355 750963010 966993621 123954449 884098899 143119031 281717305 520469795 768686709 547074966 648148424 667233100 856229349 841083765 931556834 827541920 853091178 843028287 944893934 388004414 417873491 819626611 943524257 113227513 808220285 452969261 859470035 505969180 969469154 642802609 798206392 239665412 329786037 232165445 607187326 917554636 944551636 346965384 481796997 83050373 593986241 815127596 851115896 774283934 886901188 863642208 982445228 224975991 241071222 991199301 992101038 374108799 508692081 154930565 568521061 604115761 920429551 321897029 363214873 50934152 945621599 733505469 779902478 738274778 972950634 179017984 779062919 496847213 801719383 302420897 663286208 611800465 704344452 816710014 978048050 721039627 973445734 847898471 880553961 196928947 486483843 59394886 625677149 106365660 796978357 476868598 622700231 20538438 189414509 598024015 824878930 540695004 921978988 534775901 800721433 204635005 924076408 824422418 850628914 673076891 881100989 979278612 997777828 81303223 762828744 248385108 868361515 591731908 767897515 460721416 996824867 502879881 885710907 897699823 912007548 218150841 509177616 878387842 923338513 534981515 973749980 952635309 988146353 394957432 592822546 526424898 723866052 767054315 783391221 473495953 528822713 701882105 823550046 514124262 867228893 397251045 727253621 339105755 535679796 666234428 687494289 127272651 359000969 305111887 736133057 201287075 766170029 792629430 887174959 640353173 887939589 340740513 798132034 49653832 439442472 484905911 980658022 402984275 605638130 173644787 774613845 709055279 889336844 538473016 598766352 48371086 355246534 659098666 682365456 771639201 994712944 193530457 854498073 921563616 993069446 427636534 773817030 960373352 986725854 622022445 911710757 812720585 838160488 244625638 711092167 168434995 615506939 695883906 947171661 37716947 906627499 866369112 952465491 197344521 784161164 470290493 516657556 810193948 829228025 325052790 703889434 699126688 763427840 843075489 991851195 742042918 888903746 860784656 939542013 914254367 961457708 878528640 999142729 758640331 897882316 571112376 945520480 351716834 434977383 795636297 933516584 537601082 880274607 676436212 743397272 364415188 688398985 466575502 891215671 315285937 574444668 886438402 902595203 271178116 927524837 831001419 897637131 451974137 681054218 854408324 864215159 754572337 864005133 140745226 896704077 130326678 658227713 733494409 957797391 670943836 903682371 583220107 673716973 495516791 743879097 851135679 914169673 139451746 750447595 111521074 970383961 328530366 733441491 727987647 998306275 481613332 957647603 202029632 934927561 289160166 443485687 849819662 986363373 283293599 924809741 288927549 678039502 954710981 958654210 16775177 101850612 596294259 984684304 886188232 996743145 795332380 801255557 816157533 889889883 498790439 749768379 813673474 922405344 899580008 933395984 956884086 998509266 634984316 660396081 338269627 899822429 118160656 476855972 135090448 404129719 878554964 968600662 163601031 444260960 258798362 673985026 353305921 430259414 628846956 712538065 961901197 974369421 165371806 919832065 71666360 267172538 93673738 727649411 409631627 831055954 30756472 433532111 131293574 257813528 316769632 587855868 619553361 771078170 503882475 610834380 161514927 481359668 767210595 916506695 368458067 940514980 303496801 400184772 942187660 982764801 99189710 351970243 238059358 884123959 320541880 538253602 97167766 645637096 837405440 990295371 705541171 765385012 848829093 926852491 995080908 996812121 564894477 889943001 239309520 482314085 154162748 448323005 815599380 992774079 219330268 898914598 248113455 813889309 168016745 489106358 405474192 547298213 79782089 929608627 53829013 277231887 335760784 461244226 752680456 796910672 615738180 965520632 976651054 993041907 559252846 798080201 552421940 864076793 530374369 807609289 905751656 963634426 185607832 229977380 477358484 882018866 931598971 947676703 776571330 823513065 338954748 518137519 439457943 753710364 233333227 680524666 436170366 684045111 654809310 830160690 150685904 560296690 218895464 949017758 34088561 174626024 980410258 996717623 663700433 924440622 838474837 928356330 105317955 513334808 947778781 948414107 800426769 849903948 344957032 809824136 990434776 994020380 890545397 919730652 100880604 735591622 287174238 590893402 550667165 659674184 36626082 631596692 729925451 901472531 278984992 478043363 290972043 461276926 156013910 659062621 514525956 858785419 656921570 733758880 656359318 797645049 6553615 744115084 274725079 279349255 450877941 635048252 91912941 827264818 443385943 884571968 557911608 900080810 624643634 978763317 77994380 177128531 565206194 782101073 114655843 559590084 360321075 398520762 76423539 901691816 369788446 429101952 890193192 997143196 309861883 419799196 272249700 403893989 91283214 223386427 921392260 941972815 547204059 703007562 613176300 941796195 553139921 609530860 919258101 944324008 190262024 556356112 140842037 232091721 75872212 961005256 394266707 940524687 898697536 995646799 960998942 991227065 38208051 945263101 666249385 795162528 270155483 817433675 529050229 965322695 349710281 711969288 802450841 972313184 236636019 883326569 387200166 531738436 947035073 974939106 180701773 197647528 552784843 731264031 779310993 969146310 535568251 610703099 322343478 674161297 390512093 679039382 91298145 736787156 288054185 336431289 673974001 998309034 272682592 612209619 723529001 985938773 796027545 862153476 793497842 958946873 947235795 949098134 67980247 674992816 548236947 689821462 211078285 674088423 610120444 877087864 998579412 998658827 94280526 544376392 285887276 856946237 517851496 834680703 269269795 571843562 168771604 557941161 762366749 927884557 162957656 652372342 393850858 910069323 918228627 964166341 484448426 767626338 593064828 797750092 910799914 964257751 602039067 607455188 206569915 440860548 329655577 852079831 785740152 984560985 732978521 762291028 165680819 708548977 268385574 612078222 980510423 988295069 780838343 968176449 223567801 381007015 179366560 364805897 42776742 262463558 477310963 604119248 200339938 359894994 610918250 981340153 506690779 908316845 874698267 994428616 123103852 942741422 145455806 953539917 963552264 991287285 661532126 751964336 431885650 694958365 75354053 665609457 246398272 876482012 644873056 852224312 573170597 607761928 396046768 435927533 113311482 969544820 555469519 742732715 702458401 744379863 989549316 992905032 575735533 699242141 682173199 733549540 857191482 949186599 674235980 964647096 815288454 879219833 454754146 481706507 194461825 843566615 352610442 433785936 955326561 999215560 486739339 772678852 863450575 897242557 1377866 728219683 720930343 727326833 242873556 964260976 333494833 440053028 686253834 899140264 769962746 874574261 474809321 535042540 208609776 886381919 498466276 822774857 513431229 657585870 863092271 900561107 314027784 803536435 84864608 815136633 470513247 959012336 84505555 449438384 908952351 991550891 396558393 656812148 532590718 721948761 51228519 461416233 400332127 771372768 819449364 968617578 215604629 534173818 701771160 764169331 675383788 743002379 80283327 209435225 408371818 740196129 329300240 812524835 169255292 837490898 713282679 987447677 474014615 692604651 454212615 830992126 648038018 776869549 297956525 904774183 86505697 991623436 845373033 898142444 533077989 792292085 990959251 998528981 348718468 820125567 684779524 764538554 260487117 830994201 836557906 899378692 402684896 646960781 450159992 639968071 961318248 968273274 287924927 619746230 537697949 921797695 734206391 970059662 766709482 942660994 959661927 973135664 201505095 514226035 647375274 756822437 667768335 918742216 522997174 779670111 973987308 981521376 550482491 800340468 550236853 895678974 122045519 407843719 388821775 695485843 362016563 481316103 694223935 849529640 553169387 782179046 206636130 887658674 140653681 322535672 255716452 278712715 173176986 208122430 82203574 129156854 897881492 908441808 894785784 912719931 75910488 667453163 852633858 972698233 305354711 872106523 477164417 540747937 735675656 813736933 566474466 997110766 751088682 983831368 637810767 801551313 393908755 841376691 699083724 723689834 608870580 908517662 751200810 797436472 443696585 629980627 812148677 842345161 828390968 845488151 695673257 790480463 258782914 863498644 190029893 402337455 190965231 582414836 112787465 426930978 509375068 569918611 450276227 916825221 364048561 737022814 730007004 979561927 915763963 956460328 353941061 991860150 746261821 975098537 554221950 560077966 332123209 726538763 257115200 522540187 978839617 996415997 597103509 684646422 335382937 407863713 106869537 955976558 258508221 741414350 571587863 807584777 583227764 774919946 493567345 965962193 691794261 750547771 414798607 625364119 107833454 789441164 602422168 968908057 808608776 955588104 250915001 262206078 44408961 506777966 181297970 570093786 208264433 717803021 445077601 825709863 795356928 935239335 53747142 688900815 574882811 826642163 645065286 885010283 719023680 738304409 566044590 994065112 869150477 942606302 265681612 717023072 498478840 597688053 518977571 870252250 658161173 771881444 213709726 587775704 225628573 420479548 35202646 58308147 785728906 964302210 731709606 911055763 819201546 988966884 560182616 701701402 466213796 869863048 522976457 864686449 169796920 208758728 254600575 729450770 366956229 634339112 766310908 896860238 416466203 789085544 812692238 850139998 644562761 799556481 634133892 707861004 832965783 897974420 780653782 958695245 653174474 904270193 547689855 941282991 968521684 978345626 783189056 983495797 988340329 997625667 686370854 901696716 795044669 831738756 613859396 772139091 878366297 918059116 239328400 865737420 316382114 509785103 977711117 979151631 958651050 998451122 868885463 930784566 140208636 898860877 722566296 870791647 595366952 922941734 178258231 544206885 641041819 764751197 134962843 290193101 672904036 721826779 995456729 996668160 824827244 907254130 158050609 946935098 492253822 842951310 339916349 402305730 332880067 613668687 348077784 577298280 649675063 907208366 779767960 875769656 743119910 892724603 191725689 478123614 797025401 818917052 877778255 948908134 386192823 439667900 516855898 609440015 58628999 624360983 485719303 995372601 129993222 672044147 810785348 921050376 133208511 381812939 438544750 774349310 740615268 744534798 813968407 814007869 273710324 856800153 361904843 827199558 53676538 552177970 15621217 641567060 298608917 432456851 412084402 949344225 948281996 979208083 152829645 377795329 159016645 207457648 779559335 997731357 167632761 668978873 922366528 989633164 343999960 504497905 770330361 841216237 687187344 793965324 388386583 538963130 30970542 59934328 497434364 962122046 462691521 599343058 53513826 347825896 114155436 251374902 226593104 852272069 692003500 889980740 276803146 949788890 594654228 768476995 732947315 917006596 335200848 965654330 557145567 650311970 96007517 516846811 636111366 908996744 734666190 824483926 344919548 465034656 696666193 728246147 136900464 300810069 821601048 826240443 29594671 99598616 280604051 338951259 393196492 871527397 264104514 692569604 116915546 438861501 367841631 926102243 313399368 867235434 997291278 997310167 719035273 766503627 319346840 637162632 571622365 615087709 186799784 616989054 960440785 979680321 968244736 980246954 126307813 939834866 500842972 639891525 763441094 904232851 157949139 994330327 734759051 855021562 747256672 888793701 529143705 901467060 121423355 366757131 136342112 490071317 479510191 697758884 17644931 964053795 171299659 672234388 999299925 999373320 950438028 952305985 342621464 647974002 871929457 992229258 299958960 668835672 810736110 874385254 782748561 922833434 717631516 747262053 520996639 897276397 538724494 992056838 430985245 953087111 867705104 870642338 282550537 835389355 834634429 937576453 669055630 955621556 310531156 398203364 802904552 877990099 935792790 989236036 25200106 397134761 843717149 951295789 97333145 538964885 897774752 927049295 298708834 610561167 575428399 850676362 747896103 816665346 415563075 505315637 631610425 817555301 718658415 788268213 129064988 364475304 394472966 455972265 148720908 165633932 973241009 979732629 675535023 705657119 771776832 885686293 333221151 512197119 813928286 953951207 289215336 385219066 560414567 933805046 767160659 820121116 217369501 898706745 357665650 663248071 16080452 802030366 713393988 771696331 812760397 909532174 232709587 996656258 483231861 757805487 632226958 735246906 915570497 918009391 600726178 783798503 917805285 920674493 715124654 741707616 947361106 955714632 637033352 756770290 984774664 998023960 660119760 753691459 192674518 563394625 174235582 301955435 254917611 938232874 420988259 616402630 928696964 961303287 390129855 660006430 583830044 961746842 702607798 836773452 585332857 754847290 689129343 911412523 15343097 42201236 467910131 649068793 757875469 856904000 704855497 821427308 855738029 889664595 856950755 962810271 845279508 953094368 11619541 380803327 923829543 924810223 720451981 896528344 601657782 961942403 715050665 736756800 495932726 524574667 214689991 852477556 268290978 960480386 466743543 973786656 440718525 963756241 419588158 454530298 151178421 284138598 319513075 625104776 778847709 990732642 303504898 713760434 878920177 953063201 475722945 515027220 770801738 918334778 81029866 206227963 961998947 995674474 632204826 941816349 861548595 924775583 420146982 683862658 934039135 992673902 194798847 435263954 774443312 790008230 457043230 686184977 778665711 836674907 430340845 479510027 465540964 830509492 783888412 851756716 618355989 863727436 806022248 847676575 218379319 260022935 728469554 776180734 814917793 868298994 477770128 480865458 44457390 694833024 221287216 381011236 495198512 905918432 231480034 756496321 950844623 988067020 361936350 368192897 756205501 836661926 973710143 973897221 457713486 952620037 773626686 965119366 156789601 180013893 309695171 944385327 688351346 828623528 435997604 724692873 55568231 805228211 507962914 573183064 316026995 346174817 840601629 921251190 483102328 501964723 12380514 25189851 108855772 994060590 702180076 777878712 808722318 878579414 782324598 987683967 230150787 946847366 655592235 880414715 229798687 258367331 370065882 648783835 665343467 974825034 397022512 964955998 660400891 925233088 33787703 772620502 836361056 888414214 908052611 928822280 953785236 996156632 213972912 485954649 565341401 629611512 127457761 556717169 49056993 117217872 900842444 951169355 371898958 405724379 844298063 949080843 291898297 618322593 967358859 999134622 318662969 845323144 459798334 676402547 330965841 524217826 179681626 492718667 983125942 998119752 733379744 881091886 253565580 849797074 753748426 918670846 666792503 840005474 796402671 842378008 501183255 787615861 444997560 467570641 242246517 826569016 510905761 722287487 919248708 993061091 825251359 934101215 195287552 651564921 779780697 976886929 445881658 911546628 692539368 695111389 843872891 966672390 698880177 964276295 317514263 407356238 628496216 695028886 742235587 965814827 456702619 948944924 28050309 718382835 508854888 908968047 443406609 635326601 926165232 931477602 168210090 600073868 80427883 724695339 361663826 918867248 929992305 936141335 176380371 978095440 127247357 342484770 116354845 956256534 651919497 945833382 266672580 673736127 22849942 811519104 665652970 682813747 682996036 726379906 982126092 986075237 715423981 881998949 289654189 356251462 498859569 667930054 446693716 717667764 521024906 670648992 770438462 810095232 807045446 857855180 498027124 589957393 701339495 974725067 412952076 649332736 703274653 778051783 931020788 963479545 763387775 807195049 414180207 635526003 587116291 792351044 50893534 172701881 19752733 993799617 642996407 883485382 448097628 664088636 886636780 990472436 682786471 948412125 411037731 767326179 394643700 432943090 882123408 884714781 248067021 528895084 105246159 812121659 508116447 638604646 872286389 888485012 546947460 661102924 706053764 782941101 452789794 595964003 49559455 972936431 200982516 921746653 613493151 704609227 317148407 962643627 366149697 807468095 418631214 679010725 241259028 370475875 321835459 913728605 311708337 677618975 731512179 832046408 312920171 530134365 259351710 447611028 191949195 623680991 898769108 985400743 340054884 428519724 900383798 980123362 4557707 328385257 408850220 800169004 540335655 585369706 538866912 733725771 626853986 832629020 180775707 378399425 403652984 715857835 256508824 500553433 514837515 785330910 275899290 568440721 282302780 804138818 910395963 993776488 420219776 446787013 693089718 820110695 782437152 838615276 108214630 506184563 83337167 180847874 137304680 272735492 614737206 886074120 185996331 925279740 270573875 614715501 56502858 804775094 948321799 989802513 218722508 407923405 420998036 886234538 247825175 510713273 90126702 202689639 207872651 840063848 232226685 826424700 413948775 613928837 380933770 861482873 755667338 874256292 517471430 651015648 101477825 192223830 281390374 753133584 871484002 912749898 499232305 988903337 282067881 360237422 17771698 974671721 209173855 996024023 71782827 218670723 615065876 923242118 931587908 980461802 158114323 626289499 368982946 821688790 409147673 786179713 33074949 677224110 853818825 932789325 406658899 804394207 379347960 394705279 212188520 703087526 75821080 261709761 11739926 368353439 365735981 497008500 103213717 385112145 853329841 886230301 856832313 962731989 452820520 792769673 836757144 883134519 253291894 581391016 132313744 769004263 240541845 444237546 584115841 819371035 806268931 851192126 435946499 669987293 220914329 433538643 609160260 616998733 737372008 950637633 817746445 925472681 726714918 961193648 668002427 718610675 319322864 911164661 383995879 893921528 413479934 454206616 813925856 854947233 887280825 897509011 977483746 984052442 686018462 727324631 196353273 955297453 955102682 975863811 805606588 908405771 815907897 938482812 492169965 633040295 397870597 588289824 80981025 445798234 447636282 467438052 451052178 919876365 654703724 743177091 105019761 770393682 631326868 984572692 762415239 876045556 597218469 996169913 388931873 752398024 482193586 972328506 974921854 978205846 696889906 827422880 995884424 996879397 908943770 994443572 750623404 915148052 429790703 899651236 893173553 977339788 184080633 306440784 55094963 184569563 733866453 908674126 524794417 630475912 770111082 781972342 497143305 663723094 151249891 241904830 195330874 231670908 851721383 899258381 276346733 555339603 556988047 752524581 420049229 815827285 369340093 605269169 522884688 886886253 826515868 994568656 965294869 990865366 143947208 803865982 436631667 949312135 850107965 937363484 55792407 782311806 233254847 425662005 310047516 521167415 213913440 481111004 126014805 446994037 961256641 977338042 812400643 876959167 371657097 718532764 90801644 628158085 963734875 993106380 916628024 918997891 52881531 770668508 7858247 755421996 931945359 991723307 497337117 815441432 311165608 657571503 77948647 347335390 611566596 863204092 299391031 477509126 424998780 838456854 757754403 857157614 910850738 972859936 108039738 130268222 35649021 680667450 160524752 695510771 410218432 470832731 461959612 515332115 920777666 995316938 522257269 929784230 759303042 957501136 658063063 744417771 651378224 871005568 960787663 990150980 790445896 827408492 674754982 792838021 688332088 981241068 760674556 947062180 234492523 694467448 413916068 493764435 437022650 687223171 852323892 997551864 193610322 665502897 439644580 901166053 322782369 407110433 6105966 400925921 83981736 600659681 624620020 898657572 792572509 997661839 956718801 985704006 329295585 801881596 638551775 861697283 842960879 922747510 310203623 706362105 989809984 991210724 318500407 398043543 79328855 939792941 589777644 773586772 219896726 818087713 603799776 817625355 56137994 668060705 700530584 816733151 398839648 803279714 232698576 744552810 984179998 992589861 70724236 310896448 802824460 829044627 615580347 839111045 337291232 368151092 283051031 940522076 997966219 998586432 54230187 882640538 848238580 932653175 904287670 914513289 561866287 605975300 150012025 537833382 987540495 995192401 884517444 889500058 500174814 786503523 42283761 621217541 691765026 979387436 79174128 822742406 834145007 864349089 745665915 972790976 960334388 968019457 18753374 555994421 643457748 844901013 662237361 871683740 899392916 955905308 782002999 950064679 776958086 786953498 491977263 836670832 820994025 963376966 882499751 924054623 213981854 264341741 708076312 943079188 231586077 469330292 405123308 886787183 722287139 747442580 571625751 937433592 901057577 983799819 458356622 896572318 21860263 885784524 277190996 373875937 657825127 911818121 609999745 679870669 470068815 911646639 316865578 803958217 441559848 824013663 857285821 870138376 903114114 907717915 892302790 956989025 408182772 924498776 944576576 979048020 936799232 977862351 407876811 900985748 937762662 975608369 977083024 979486864 94066280 165462504 19744810 571577925 862877694 973797484 178555327 697818228 641668504 770781383 542746615 920256161 66464353 75320244 646368160 999297013 659076249 944125770 757254855 879564792 268888324 919074183 3789961 757322649 336582251 891617983 889506637 985590913 328499105 479248468 381733726 993122624 327475667 500331954 598319222 809005116 905014116 971381552 262239861 432421167 16259304 962942422 573268713 873256523 312394444 975193361 286960952 391896060 614643283 899529077 838361605 865341396 15829640 144388677 753354421 825302914 561894291 966081929 142977219 564849673 250918760 910319250 705537382 896171979 848364450 924549259 141398413 269549828 458235457 908075549 318362019 459236441 697929248 985575176 49654607 473733527 70947279 704596746 797770032 896161434 114456850 980080158 108157285 270926131 763105014 874132248 550284405 717447500 100424411 173563156 332012471 898553439 575132632 949433326 772112987 850656248 441590449 585599173 437478582 935416145 169842480 667361029 907064109 965106829 463320423 882715381 704165278 882098888 289453577 640527842 839720296 977497192 390905999 520822110 649534902 858282704 211992046 885107739 258172846 509226461 61905779 210906527 112459318 416591944 99894913 527127082 367594732 818067368 102576078 275497755 475115131 670784683 962423577 962860835 191940699 423209377 316152565 914571244 823562978 842145343 413110184 544192065 701811275 746933666 982514647 991936000 259275571 787607376 313149609 753396548 712818104 765653079 40504360 904178082 358384899 874038236 845515649 994227264 160536840 384581906 369422705 802024472 422577043 989221588 267068405 690698464 626425050 722482921 287892012 528612615 125562477 139897431 438713175 449089266 445833862 958775941 561336992 789067270 579164536 728904517 83884001 951686012 754718299 850632508 764430304 943254898 700014236 953412525 252379102 691314713 184393726 893442053 760673470 903792650 26990090 184685316 798750023 837742706 66481006 922049864 103023890 223526994 109378025 913559159 332984740 345508030 606152149 848081341 124769001 694384669 571361924 765636334 858234050 893415386 115485357 909692012 414553408 876108282 589784508 662248839 797995472 853581577 119206754 657684038 240573791 355355192 170140141 303313937 93140636 773284586 795341190 863047260 792168281 835262897 218880937 272356142 941042429 953729536 275247890 803188621 899752941 968912485 493417181 887074202 927020140 986558411 589234644 684111376 374785327 622617157 35161533 620313316 70587168 246393948 832917728 995444539 281071564 355701225 24845900 840642135 887828351 986327240 790721475 867149244 647993043 912772997 237659852 597608710 462009135 714503865 568355282 581884007 47613408 656753524 687285506 970346452 142506841 806332082 246236190 891468853 408658617 760091222 316168618 560841155 58939682 508265305 938685370 960447738 897689747 919496328 626886501 996566638 844436467 931878832 625743663 899322718 994237001 996636701 206994961 775194890 1755681 114982245 201946614 594385602 834700179 923373566 545159568 853787277 234883576 328876801 210446622 456782676 860568908 988808309 659567021 814396612 54748209 665130683 806649515 818260740 836491452 905155340 14656337 226902341 341788372 619304314 834369137 982843473 370360224 560938549 365230401 604633301 346015894 375185074 13019363 604989179 906513360 907548248 990437278 992706060 941455362 963159045 431033460 974391792 766001770 881151888 272723289 599404003 38529490 166814925 524729479 563523004 929654248 978094240 780394470 802248320 628378824 987701722 856056397 857908439 55158537 312510270 985885050 990821237 50754973 99885550 348092024 470185260 749694450 818388726 882143967 916554293 363682778 705293420 966761958 969913511 968404057 990287167 938633862 963295813 780956087 895196480 998763374 999239188 341252404 989405988 842834679 863837464 664773101 825940969 901326173 996502599 750112657 991368464 469448399 768841643 17024842 437698458 738330259 984618422 563072949 759311307 19325627 773048121 426568613 982597038 393911530 701371985 369684523 523628942 528365847 769704387 554641473 669059209 257735922 781051436 203679841 600917377 203318796 495207353 889789302 919544120 741555758 857147682 328161040 871923647 541757916 878580911 882559853 929935016 772905056 966582181 772780783 791782030 947715872 961470993 226699839 685431840 935930082 940144522 789025477 812353365 908540231 943942983 456628969 477997664 14952318 466868695 655123242 958543518 313447062 625983868 906674290 954425941 990382062 993157326 1158546 948308818 895339417 913156220 852527297 988377030 225790731 985918864 343004054 735997308 169102649 698859604 626154549 906325016 121631881 826052285 590709006 836429540 392324663 622478706 524635721 859535378 365921930 511003941 429085909 847220669 109975525 444410650 635845384 963649636 664747698 949567985 960426461 983533122 344273080 735158767 296051439 725728154 635018712 888342763 48786003 64450495 448758048 604421471 755292821 932902984 369547142 945630139 210012092 404658950 210673576 670530803 283766197 474343880 781029139 972644174 770729648 998906263 690077046 964880571 437648499 966455375 465887746 843961951 892235088 976930529 447135033 899623258 657464963 742324331 984553548 985162813 647483740 897150772 17404307 62335026 33452080 571791629 588176850 801080431 693117567 845673633 691263108 995092916 921424762 950965137 196853922 465973841 921078797 941265395 705798010 907883404 129487092 183674736 322013380 972093593 956651244 987952696 507614089 681657758 858405879 870210307 630506230 945338572 22764557 163163732 813628137 858437092 535571901 698946063 736310536 749007126 868930265 886284800 52928252 328903569 837145977 983709843 672984245 962423887 891491476 905393507 843295298 954463511 716702085 792101319 901013695 984428232 597134891 752082399 684559616 870048365 356040750 901760013 232158343 240032618 653780703 954847249 690324091 887106981 592527985 671139186 34595623 85836588 269293506 972050290 591576263 821502717 953950993 968056240 728723013 996431265 400821178 991007738 744931850 810598770 5062338 560555727 321688626 907820535 571873345 726888925 26445047 864817734 237419396 977071060 815476916 906961225 621859768 802603037 817053908 849099271 713995286 831051758 333038120 343069297 611002706 940534558 323579581 531145633 607773786 715632283 958462122 964299038 824887358 893040123 294952568 625291359 712661735 951496970 289036650 924603591 838345518 951482237 199960699 663709536 236842294 980807738 369097570 809689977 998541683 999100904 769964971 958963307 29028738 743665161 347137446 601675933 558743012 949721770 110777269 466864912 681602255 956993012 932466429 951493620 708609998 840912794 334445060 951732448 738737533 857178062 265394207 754619205 689548279 751326396 272436987 486678922 348425106 742127433 920048121 956922658 274873393 660566660 625615976 713501899 225184787 506254522 761259087 885581075 38833761 536796954 410011616 881217187 296908144 423508929 474734850 576965441 424828240 663883143 980431190 981069341 807231310 831366606 359259652 679636737 280661594 843021965 626565042 743573403 700762515 873555532 495190278 743768209 607386102 989207477 616219449 979692266 760030645 760597642 131130642 538608627 652144261 931591372 960029289 971704545 953745991 954897701 43636778 248928583 867026186 937542759 754225475 930410397 799507923 965153446 772721850 797116780 291466366 593537556 883700131 994199693 674217473 917197149 816458937 820166970 384809907 802529737 883175479 957658801 215558975 384778448 48603422 79436162 158622536 939672830 459620108 627498413 859882496 923621271 139461886 272670350 800591753 832821310 309808216 567589355 866772475 927222473 902072191 979317622 525742744 640157560 661956201 889970881 411310449 578729370 203860747 347507900 715881409 800979920 270315110 616857188 837652885 905997033 152429690 985180591 783026798 914304045 89612619 677847852 323066057 362093763 327112337 928589487 203370959 366908869 640276111 675416498 648580735 892752356 129976033 464272265 42832209 660922808 732831503 970696635 620820167 803113859 93553538 393639588 224269178 416337590 493626204 616330147 629147231 893904149 178117845 223763408 393642390 603170410 627586462 695654568 90712787 471303098 180414539 847577676 884650052 889345819 855519489 916110469 321154827 415938344 782020217 940971549 2576412 46199740 263339222 652491584 685859748 877283161 464203382 865497564 329259989 978429014 109637277 846106508 244030373 538701422 710314180 909631681 951586029 979246684 423872163 962289115 118473853 367413525 594394250 866136549 573141547 881214612 194386162 523386743 718133604 736805405 963222330 964137685 534597986 612203624 496609558 550296437 174060943 840153671 775976345 796524800 519032458 583988713 215682013 631975964 434406383 504916492 78246998 861954938 566120835 972316129 297131669 618852802 874045929 966727100 370977917 915014190 538151544 587396363 502561175 577238710 832113611 833661829 548400471 675203036 891109039 908764935 436890288 775660213 375824151 724751849 158146514 749425073 766169662 848887384 595857549 821556522 731115074 834177722 284465966 504087328 523810887 955011664 775194741 825176716 987448173 994899521 455873692 863487658 900471696 923571950 881151767 883404787 34608127 600800774 386931091 912731690 752057970 997666902 780969143 800563189 415873908 904548089 947126479 970665333 405136261 872177323 705405936 866765354 736209676 810727672 2818957 566372590 10674456 830384993 618282771 627630034 355659280 513478735 578109486 860849873 862202889 882968453 156355766 654277211 176199332 197172152 140508140 914473038 19729748 849730688 292780288 901753511 191927953 791572014 655780036 979560596 524779950 550801877 899506615 996491511 976274615 978686576 797564914 820231159 591027543 634251706 691734643 915874477 729624860 853710193 382270736 859242752 792526774 895813627 365052930 735898260 490079404 610323191 487436150 827729044 566701010 824773533 841873539 863545779 510568059 837391630 272726992 624691296 914611933 932785047 609180957 893834985 598633252 885710366 194789417 696870437 92459594 800809008 109915473 767977003 922925694 971814289 274699300 874007258 548496639 705556726 100204966 932548046 166998511 575413310 713958124 811325887 752158206 898704915 754872512 876494939 211039121 684232017 691815378 810170933 802456575 955781640 905435030 942589039 16298835 456197185 200480275 401523064 179819653 636064715 139922136 414456107 749035065 799888278 360877982 420885077 853858356 970331511 667191626 916211720 341141179 588280321 308447814 417895451 174799799 936664953 299856612 702700690 134218046 454960065 314534223 337777503 567932127 951787347 859534459 866353753 82890943 670675659 315974767 604839818 443824278 632134914 101036363 391857904 459315692 841425452 854844311 933168979 770354813 896724491 694628653 735083035 197671370 627271246 428467094 552465421 232712899 497073743 556613068 865955714 163056657 412674451 812421537 888162364 827019841 858936943 980086417 987440729 761972522 837372055 354870050 824739717 913350710 988593682 683923814 852288068 580100468 848355469 421002499 828120406 500946969 828122517 929492522 981046641 200579047 754947325 783364837 928214231 316403608 444281738 92296889 374776769 434570544 788690620 733668628 956516457 350428037 423079996 578336556 741167758 758793598 947001968 767710635 815248918 140141960 447516088 583554512 707144291 370686314 424568817 432996715 835488024 115664220 789411789 248987590 929526927 391332408 574708099 853380779 958237307 520295920 543700535 682162942 889100031 59869789 948281292 996898850 997059434 575187998 930960974 731009425 818891988 521667739 967624544 168192085 735366375 868615250 883482385 754378764 769969810 210213694 585618805 365085202 872822486 824459537 964812189 205689950 749225427 566801651 725490383 544539377 837010830 106288411 402061567 364192997 713043877 147310493 440406006 683031052 787376907 364013823 399863811 323883183 944409951 415416121 771327064 422531376 542857404 749976136 925919862 628763509 767991601 599433100 915291833 665131627 854444999 88640136 693044909 186169423 574875316 930177801 974572511 767381938 992190567 240040336 797777185 278773613 891603250 31449664 795568906 545216592 904199975 795910731 821133516 822079593 975967508 523312935 783456223 964197113 973438689 150025147 685370298 197786719 590426962 468582613 803797844 991526826 996102386 801932580 829605179 338324669 568582521 421776209 847503296 763286530 992388019 648214370 887298558 526648104 891369077 557792754 751610030 399458171 972755705 537661946 701571523 616944907 910534300 979573397 996700553 540681361 773587394 179126770 370898371 949132257 999223923 52066583 569859515 783787647 907133469 634414350 985908517 336943477 601143561 98019424 887466765 819139359 915730133 252123518 314250079 680040808 963922279 189433621 666679190 444730412 574811443 22785442 528397354 86779661 163627271 928091191 970728350 691850354 767021340 198570857 267235014 524957294 813506809 20210188 386986838 638483967 694274816 259383116 327954328 667271845 859929352 341493189 427090956 729783558 824797725 181481396 821585223 666216596 747535253 848335315 899990494 746525816 879812386 359136118 733330254 259168592 839671906 470187528 690331046 531981641 767914179 982855342 986270452 481742242 961494668 133379451 211041183 252678452 522002054 516182877 883750417 756619316 859679760 430241485 546490530 948414114 971869612 686035871 929257402 665021844 783361238 117507847 915281815 876345148 934625021 696948828 727665993 706849144 744712644 885102630 914084687 660717426 734521389 439541444 855392485 907351719 994561371 640452444 953822211 346844423 814152327 505617727 933480625 387908323 993034497 848628928 915936629 335957284 939053317 217462728 723779268 382517626 559222785 539186395 972904227 75437855 713930433 393114594 895323313 572858916 650373260 177112971 247328768 833112735 907941051 380386790 656031926 938414642 983563489 42210797 126988468 819571825 866986275 944456469 972289766 14284584 485198732 629021643 780658499 689718520 710828540 610467520 815664143 700412509 865808849 855888983 985184954 310744974 950332118 871887271 894579938 83081443 604225180 736884107 849529397 597112320 602565036 129614874 287579594 413297376 996127662 850973673 941147389 255803869 656588670 264449712 495576890 703501278 927584167 288174518 707073567 487528092 548615319 759622598 780107773 636253284 757573658 750071499 955268623 802582538 968077611 596316670 607755098 870506202 999076955 272643653 961637015 523235502 662613289 388220096 959777783 546963130 714147106 91332051 803642976 269274788 703056342 624062188 844787393 999018171 999110150 588799937 940060345 133622380 921602671 311655721 977652094 222325157 708211944 134912159 462527122 150143675 491942439 506169062 663474216 464063188 997570376 483593462 718256323 812985217 939425686 891640194 926409867 986675430 996231841 156155050 215763121 893495794 948851244 679330453 924880209 618006839 687381831 880900023 980629379 704044635 737113997 857749013 954344429 845850127 873204763 745835930 850015490 749134681 986253214 893186726 967810579 738356949 843364348 266134856 270887482 367214296 636230701 750478147 796733713 376521773 459834571 590987127 697692801 147594399 545425550 594236805 895485209 145468281 438137916 191599968 613165553 824886086 841048044 879148431 940036944 283799351 694642468 723438929 947704760 666558741 735228378 906107962 931224810 466082005 714507711 674844589 889439962 181222497 632251588 324550426 947736388 183337743 775231570 477254446 689474670 745401098 791329598 116527375 211775891 443966413 653223745 630501883 928231414 80434725 701092292 183384348 666082574 607511423 898533520 315559400 843008015 912695470 995781157 360328515 945386001 889066874 947526970 908432255 972128340 827540227 923419156 695537428 697300146 960353481 976010168 596759207 827842755 45089568 957743577 572353219 701147964 42100138 94233244 620291456 672568929 161744113 779145815 115576359 382809462 606637904 645366114 566575538 885249703 675832096 870316384 487150462 658890221 365750474 786867211 306111317 827080892 325556691 902912071 342310970 888818682 833511458 993330091 409032809 564333304 190721650 814546986 605336208 677370827 560954725 966166171 83160430 641798410 992283091 997178006 798253468 803843577 351506123 702308731 114406486 986719980 974408510 996051662 780138316 992222126 141606571 234406165 699127198 795478573 17714017 194305032 715820971 807014926 406679663 912915785 150468625 388713551 324722942 325472140 565511331 614572921 174157333 672324266 3079479 439664548 339003746 963458723 709092210 978462374 971399971 973023335 652864040 894435029 2972623 997584135 578520401 739103338 991092348 997520540 169109286 811067545 54182432 453400987 353120806 659183990 492471345 556964030 737050773 903743724 985422945 989527470 538201486 758601308 702742676 785470242 948401534 954976580 850272959 891482269 450684813 632934055 756283472 771110087 815829810 908175744 272302926 546357200 702190324 811067480 884446506 944823057 350091236 948022478 426324296 889707901 573503630 591645195 160783257 398730737 952089784 992084345 800690981 857581014 458273641 526179362 712846113 998098786 189530920 600656025 417313269 969861692 548812552 637418955 654581898 793446329 208379954 322111051 61596274 801835590 410417771 623304472 953728552 969781092 536572257 679332316 621645472 690091060 905978352 958466023 69400035 78991137 481166887 595366300 187046315 856770784 345481668 791990863 413917894 966248366 72050422 546618689 42413147 140547308 445195991 933397183 588573217 837386627 93150732 647571077 58200647 612843315 631387168 899995705 480390777 675899028 498678149 514372530 181614277 778903636 74458225 864589175 176684147 508872688 87374379 577342114 28975823 280423521 62689563 895606161 118617750 812001202 987821635 998126831 289666648 941795466 554163356 876408255 634870529 671687473 316362893 919739905 588596721 607966765 341240885 661668754 161905831 167973165 943298508 952511872 153428998 180674677 740987064 897669820 698201304 708815409 815361995 953902296 456990231 764287833 649343386 991752240 540696911 738441240 522903147 854809983 145534413 674209902 301338463 833487194 807320561 813048916 696246065 931065526 28360805 935780077 654932118 966230770 211344222 753466440 421826455 490831815 411890202 556497938 258541063 525510700 284716741 421450615 478420127 919485557 536573540 832699909 861486719 997801872 563245637 664807308 373019824 969190654 6006850 655833935 231662922 743438942 519115714 589754185 76770582 453190044 151841882 933539099 599204482 968210968 111338814 847415584 477048737 606116622 391468422 717735512 542916013 888070226 14967181 144461445 174320991 803341945 169939428 662225732 176160671 436932183 499313263 575630161 397768177 623885877 440635779 775162443 389064664 467097046 914719001 936251431 143393868 411000411 368814588 864407192 822011155 965590163 328414918 445336114 95508729 626394179 58432397 422588290 30862740 37479613 3578390 341760028 564968900 702781041 64939339 893580931 392062550 515015071 611042503 617266449 7242860 342305240 824538377 933156328 358391871 481239892 306570933 381119610 57385346 671863043 600643490 708011592 306659681 759361014 64208427 237089505 314552025 363098132 408774323 912779487 250884558 492344398 845841466 854060079 672160694 753007122 680339138 783971587 558296096 928263883 258476655 950852782 613495996 634647004 89300336 411439595 646304404 926785222 931622163 990863883 418448010 504249501 463254673 654123556 380035781 889838407 60533386 908588336 507196389 537288256 861022991 968508099 512897111 973657042 82304764 955998468 91849608 370661886 593176975 910857318 824614081 998194455 925488225 955411601 360035673 582457551 831064826 850168021 956249008 966519084 640894273 795245800 330016079 453367800 778867622 960185504 928855356 965989092 997536927 998986753 665087731 984133648 353415497 801522097 732604714 989470217 28522448 496656594 650703894 824236670 756575622 962039996 359480051 921171974 301312442 723811439 679938516 848211077 534180637 785233577 4993601 539509082 945115109 996457924 680714864 753315413 482337771 802636769 432342409 927961703 418799718 774842276 292768976 899600308 643058327 662500045 886634316 952127086 358520211 826333919 662784223 984725205 918985558 953059169 150857987 343778615 109969944 679136204 772178534 845563895 584909647 835544364 735723328 873812314 375199299 387284426 764162529 948967038 265825722 604054849 470719027 941458363 859571505 991037749 480190157 964203366 764403299 961971974 689462764 907287182 820200654 998649858 900613723 933089600 492009817 887282071 481565435 887671822 201916238 952372115 670153676 955297085 64253525 316219326 688202578 705964990 620405236 632148796 234522995 349086497 57060942 733596139 732024176 802028851 358516468 406906050 893381452 970143655 48682158 174023164 463003759 798932957 200930808 454772330 48201977 603792731 786834193 986455475 968510879 997214019 90109715 156982056 331283564 429199359 968716468 991504898 955955690 960968884 493931507 800189909 257167816 465427515 606899554 780614807 409622349 526036922 455038629 745931038 634922426 905613532 813421420 947055514 954595188 988252862 988448033 998716976 793176443 901131060 726062165 972589181 671976206 979276983 401595793 435417207 813340895 822398165 957719996 979789454 220081144 586456182 104812651 262803351 122805253 872509639 959216906 970027410 602681746 991836647 543000143 940170131 154895673 552188354 235868567 448834814 796334313 919665998 98068612 711911777 658847304 771464057 295414871 562650498 158449103 388260821 884465652 965504784 310031487 626968113 265495779 845041576 316479183 418932324 699751577 734449069 622430877 773111962 13544257 403383032 200845902 555257438 601288194 923892931 378498296 542271930 27245005 27520849 34127107 47817426 52153292 112735412 693978257 740559153 896034996 919104999 716191356 995637873 533726606 830442870 137306713 537173918 445583974 923529703 504887077 595808088 617297362 706725786 306180282 786495637 506701185 930050483 605215456 654682877 297462922 982506608 206397574 477366389 681815891 694201819 37831112 520832748 97829555 851207484 354172863 555818721 190269321 290753745 591733738 963017429 823208468 873675944 140437197 910484370 711641764 981836190 13442768 976229130 730724233 840377914 920774895 994068601 368977627 944142295 691480030 850999163 643663368 827573573 154668562 601911839 46662828 56320499 453572865 472675043 450653894 485557352 812157835 932932548 906195241 981278257 903662070 985404996 155262135 744862277 335706993 871945353 87822187 226948018 853145121 982669095 734798658 987500654 875417008 878032160 168162431 906550675 402141077 808183297 639559134 739850755 454168800 536965509 255211918 334564910 25263306 847356012 842765476 852346164 371398007 561963996 22908896 151498474 96097847 850944031 141453695 272419131 34484792 938745206 69793195 960941731 289187385 674039522 918238458 923642844 849481081 850327944 726436025 836287821 663351378 796104033 702908753 908292980 53479096 559904264 644004234 818609311 147310427 766987695 49325132 285382187 928569572 975402533 471251360 520466832 319147250 716349383 434583163 902923946 198829188 293373191 922333322 967395178 162161865 857297964 673128838 707423363 402088624 530556825 209929055 837713219 914869794 978901509 160295459 525192239 734776741 960307481 23145695 859993346 539273624 686316132 395811809 782832535 967950018 987554300 627664804 752184124 941720551 974812120 316792447 432998815 628210536 898651692 492640004 931230128 961155248 985271312 425823824 507100393 813961987 858636260 526822739 617055665 467830211 647791771 960911484 990276217 70292884 75511731 560181947 755389416 911082452 977330233 616491868 712288745 569794931 771384799 869022783 993333533 657718423 919126739 450527165 588589235 843428202 954895627 379132365 967547098 766268317 952424067 505933683 616968305 841385460 845968918 213253385 294135740 962020316 968079527 86128269 423363681 84224009 518458675 830897844 849282903 648954346 710776392 67158916 82355262 957401276 967347401 649196157 682436979 775500581 978840527 305871714 804333328 759287633 827055754 106002399 598460964 269944626 381572464 183987738 452189730 33887368 926032948 598459367 921025164 576974926 678495499 894882396 971428288 365609261 771993638 987825616 995688763 106809049 715564110 858695004 985213335 124980601 293535747 245508984 650294079 933729066 954789949 97120465 302246700 12329297 580451526 854532378 899148628 659021025 867871068 299827651 938253751 734228048 755712962 355502060 936642878 950930789 993191193 838004528 841016001 310200486 389202124 81434757 766263290 713110839 938048132 910820689 988952260 291252728 499277146 664358125 788658059 847001462 926432420 954072007 956277056 578138470 935725783 901552703 972374839 262407410 614090925 32567662 418071330 722550920 988224932 223759105 573606471 197408248 418158376 736331364 751995806 319906055 630193244 211741219 319909145 530477644 593475712 448760333 984403008 659069849 980112576 201076217 353332922 255131614 801718851 178303914 552676347 944092709 973451711 412644450 863177232 69008923 824240952 406404818 419208277 733889274 781826098 337343897 946594801 782482205 907508378 644394740 840335083 189195579 197752102 74870326 115350588 374644835 812601409 258957161 280676775 189814890 213455993 334037292 737332576 705301677 865251934 163243675 365771286 264585086 795195499 523550837 716697125 38915176 590141949 836330445 994225829 79618750 403527930 720996584 892688758 696278656 871711311 43899941 705612639 763877805 988268438 501176506 910338788 67665027 399651310 643028345 992260695 800869923 886677854 274289208 314425516 362436775 696884727 637005961 815942750 919910341 948644880 77648420 325698544 730487420 911797761 164601136 678344775 95988063 312129309 944484731 976365047 40159186 815026042 3873920 813766180 656746141 686980902 773094860 922099273 988800479 990911488 53219563 461837546 778226281 932854954 964460951 996456447 59700895 452553807 917133611 926228494 109535689 197030568 561823819 688049800 650940167 884872860 417470215 742117211 589513509 985206186 4972419 506125878 633749548 783005811 57170487 110256553 295820894 922494264 188853230 277830615 931439322 948277573 804689684 844539165 609534006 925361358 198504746 778788766 919327319 995964953 16030177 997709098 409018837 499446454 542272234 623678914 31237995 187788282 792475976 985234703 298960893 566084124 834797881 914798820 898059884 994918964 844038296 901262527 526727050 687830104 3610433 561538917 117336623 845060745 416273142 988318541 31774384 158062716 838426832 991766886 509103389 737785693 674830197 889860570 454501721 552276859 752431405 989366661 178362778 430881611 319975935 582828825 835512817 837311445 461087343 914084506 49488497 202099000 688763044 925686277 669130956 713390382 476940675 816096771 91795195 721337431 103651054 272674468 37915168 67843934 526288661 951828911 596156 887095872 731445380 836830919 715569518 993880658 226460473 796366260 187861749 388840101 50086313 904813932 856197147 944346770 682899929 889629832 255004858 948066191 67400951 113507259 972896966 982769393 70037096 728027636 269038157 590554163 772714394 969837510 927592646 940223642 651054809 741979847 823737710 827706602 913830243 918979605 769570628 951186932 289336859 331361189 355461913 464450509 332662913 853786691 777691592 983744848 965631574 982020391 661854550 723736007 712562948 935803497 114945001 926474907 703529203 973247326 85227478 739205935 515346201 662213007 91966466 608177671 163230389 730140481 603094599 852618873 177830239 716993503 867423211 900476320 617392610 915066705 170762874 258930285 366982467 819993944 772645130 986923343 822409331 843825092 318378984 996367962 517327275 532317360 338156863 394383591 553206427 896048304 328123777 870680211 290388727 986548927 107365942 553088204 291431894 993699797 987774384 991360158 605489704 996045343 496526933 699981912 163803707 617393464 535183385 564809767 520251973 864161571 284056003 856915707 357907940 633813651 868675002 903085375 854994256 892152187 290450917 834442421 230814749 422789488 259409846 970270104 519845196 908174576 932359706 936579892 41084743 337620096 354855297 769779680 312629501 961572037 119750554 121675226 316306249 786579352 389015376 692028497 753928679 996119355 296944693 911320533 738933853 800541607 590218179 602531483 717392811 913381079 679074176 848634924 259611227 378566486 145113959 843818232 267914575 303225032 248660310 285385882 541710843 830491392 979122007 989372635 712365298 887279591 435996288 615117232 496179729 836329795 782203607 841333199 684230125 843075434 863705464 904714147 500785453 783160489 450464606 787674570 96888278 268693811 422616951 757739678 41558770 977980668 70903219 470438583 421468628 425507488 964189929 972223718 232093316 815823662 806841096 860953036 592084359 648226643 718474465 778644557 12816054 195858420 207550389 920680222 253169102 758158751 873608113 953748316 549614835 967166210 117585932 590044389 147363625 162659546 469918144 706636605 847749337 940771868 8150845 532583924 486677823 922307211 111539202 486407275 462132296 691922966 273008951 532385031 522414844 653248224 514580952 591447281 841694989 904632923 643714851 719653324 568262452 839108242 816864815 965165545 681646478 996458846 24787008 260569393 175054047 855616401 935602601 960643254 780236424 783393797 254177468 404261415 328929485 402210413 915064563 965421779 427009723 676382895 95580194 982170426 690825827 935404583 386911384 718540834 820292980 946261874 339774633 832528965 86070950 407728539 714522256 985739694 463399781 853722462 968040344 970540133 150049285 721066575 105208430 463941767 747863238 891742343 977544548 989957912 732326133 821135418 149738879 778175690 934437580 939136177 286786961 400390967 401422715 518485347 826960666 957627136 107468711 253884139 977192503 986922430 264151235 358356316 560415313 916630515 996020917 997330954 317406130 458596081 439952684 882252243 827317759 998958871 118778570 719424643 716166205 881399300 602921156 993910024 118526793 124007441 436358911 466371416 873719356 995469859 247389670 982050521 415665921 607617907 106284719 500437933 148169885 881941382 906195460 960584717 423992713 506675944 692687257 983162719 799657048 840494468 151234231 877806493 806265812 854067397 417014029 562088615 251457856 331295528 76850513 930591375 838200252 865133326 776509246 987598746 923017683 924375480 138553352 829934493 784804017 937725793 945633716 983274634 827457271 963217319 794339663 874607247 13447934 838936453 960965326 979317322 368775203 899215021 949376305 990900940 538829421 688116182 177673665 941816479 976100419 986693154 49592203 608989479 563235246 978242392 165300560 447974401 760736278 903975721 38783366 641666302 974684748 983890904 318501758 661824248 15051065 634243612 251620893 902091726 599728150 932181446 22243918 24153091 798599298 829484564 974198343 988129943 328945483 342565543 831110851 866854204 67393486 980641394 926356601 930098663 803810196 927089612 812558244 972036994 916690521 967601588 579447332 881016241 931646735 991640449 882761855 931460890 457499031 637734021 365063863 420670620 997602626 999068405 840365003 971241508 59167607 812115202 871855994 930029878 668240289 800645802 243715192 595336381 518259329 823672360 537951346 937621185 380998979 786121183 781451974 897716469 693843580 952918951 543608581 774289520 603023081 890954704 562209310 634044379 558110991 853899243 796273718 797474580 12148471 660572483 704905801 841836712 350191037 931961503 615139084 946820731 629688969 671792730 546649047 564240082 970888465 976393996 254017531 950181457 195884673 705039279 806610241 857242836 836501898 985023346 946847213 956298627 769133542 899846219 52329308 133793790 287612844 845873687 387444873 575341426 51887484 462003131 976881023 983561761 512871146 709532906 332706981 782299715 177835907 412574058 312572104 940965708 474303524 887018332 145603273 818086093 914572685 939437704 471926148 790640322 800381433 875931060 61287260 824150622 73613797 796633736 571365503 893152966 701744283 770423861 552740378 881787553 138997276 818376272 554390468 961511047 393836345 414226591 285579092 616956324 402704388 984583486 58575369 891747066 40435858 469430795 417706361 512677421 495565011 740598181 516426622 661193676 371970462 473065532 163324368 276259962 804212079 927194346 662295218 882013553 368022483 909120233 135605525 302324487 247155171 564781848 121614417 439768355 83305093 286861632 160769501 617876667 346920225 560699063 191821007 230035620 998929968 999126580 988501449 989463194 770435939 796725934 348331683 542037171 867549589 949813089 226839761 375356998 223170400 530992469 504808198 956333234 23651786 35221139 546747851 814920706 396883723 527314313 507951080 583748717 109367148 450505980 303099643 414950810 280885517 533203347 628216623 698185176 940086021 947951034 162647497 718258575 982063604 987546461 292893634 483684351 796066437 982461032 841530080 911354389 998625447 998754158 405264228 709470863 473512354 906100128 420072060 468641893 771609666 825523702 445985502 642533397 271614953 539447992 216128268 402480854 88040177 106475136 930801086 952201945 31327831 80072174 726814102 824568042 738815596 901968376 743849575 975798384 359449548 510605068 843348934 999374955 27180600 518349817 528554637 826656275 270751386 327396085 125847117 611326740 590072510 751160076 3705729 400825148 476755384 846541074 850411903 971777529 995664718 998689686 5756748 474113229 170084404 726824232 412298918 805938370 662965477 958987891 334302010 364813154 809350786 892072990 425022937 651122259 227026712 602928435 204774465 267731116 880215480 938273089 34818352 964564378 359041541 404751689 488341109 884049407 874726175 943294294 356030136 472630470 958836776 983083523 520546687 925284266 723662985 906080066 432111523 534394233 856439306 861244908 347284626 954700545 340380237 900665544 113717142 883632768 128303005 553693983 944352009 988434772 301463071 778026104 611679845 767614262 741969279 888262537 729577120 991895869 70876891 837857806 883221022 916362604 83329903 880977453 85197025 886480971 614262612 994798612 807242257 927631640 994092491 998921784 594776106 975923104 969123294 980497162 364498582 494902661 896285934 911766981 310325606 693883854 600224133 893854569 789611575 904310905 287985215 553052736 804100764 887727513 398271524 839209837 579876179 617987419 955151780 964300572 685384723 814190825 126701350 657318086 663961930 915759503 169263786 372271720 771418397 909313863 637948377 982646330 924286083 979318535 979170934 981867728 220714296 489457025 961765047 975441036 127261930 683629895 67847512 711937028 78276714 487917832 19154843 325659061 537944259 925819679 184336622 331636666 132080710 656139648 472655371 642556827 712924832 735677659 375519317 473675279 154607358 894647129 545081911 915854436 525058404 720843099 120358468 759698536 186958168 844396844 456373606 501666774 388973518 813410263 792765184 985151026 226874425 960311579 852723038 915460051 851910696 966353789 36027890 365159557 500403684 663300456 790237581 846029152 478823062 776430699 781842776 790783964 626414219 816984493 450847700 549279490 91771389 249895857 91318080 976346528 178186244 988253042 560026593 897544043 611083956 785617045 145982108 485304246 642735970 997382151 551825527 797970795 810921221 902765709 751080984 930170280 941773283 952594230 752444108 906539710 395109975 793731502 534448244 715745673 226390244 460982916 105191195 764388248 853421690 881785416 557867550 842155763 10574180 16907442 879687871 982226723 854455033 872494547 302420643 424985444 363052254 748333824 501168295 883222374 773543225 915758500 560100153 678514804 251710721 530409561 547152868 651910598 886811533 888064980 458777369 783806461 132175169 657601936 388337790 683787901 14796769 417974291 928009948 997222737 638397819 852346480 191709671 687310616 537602231 759737969 521223131 574694511 834401469 977770776 352420348 413608779 778296820 816342783 73089574 950079670 720850121 859374432 150342783 741722989 467154502 761480959 450343743 822471609 851091317 887305039 869549805 984690531 933462918 954485400 446794276 520321047 1029913 984349919 783014298 803921596 937593226 997560374 287332517 850891444 534672823 708473823 648810867 869692481 630783996 804199279 158035964 442852426 671349321 733854248 218095426 876763621 816532066 950451085 328036330 498948128 183921813 273529193 808865896 816638101 959216395 986528669 569730881 959799743 588351237 936405731 398023820 990512523 457083409 625567755 922901579 996550020 900047150 963047997 506426463 757456341 13546272 240732179 571556230 666276406 58831492 507714939 258132288 989959307 38239003 990289174 368293525 800706058 413831982 687764286 918237991 951268273 819509868 878403963 322585098 793642349 938075338 984074795 213846388 371517440 844497681 911184818 378645099 817869712 273922901 963194154 351089922 459326537 630851914 950011028 489530949 524651600 715390199 798371162 992440501 995499913 18273585 167405573 319057665 434972651 870208010 890006603 593199572 812009938 740974458 773732129 2790032 688037974 731773636 756802022 583716929 713181805 455848291 542636573 496506485 795900459 372404004 586721688 358178874 719887676 566242498 690224084 154336085 679898223 425091415 544650773 963320201 965136114 4122624 827903335 693836136 970740836 856706401 886321945 341623281 348867964 410168367 497267645 713933003 829273611 915100085 931016445 264669863 860725678 683600419 904225908 369395233 483750123 296702468 814582614 79887657 609173060 290463568 426507316 635132755 903762185 531908679 763623525 757194447 809674462 477829196 861808447 970254561 979239754 272535083 593606058 445265688 905859275 66642216 321525436 166440831 257280403 353157935 717717523 613606936 764798612 163565962 221087221 38232711 466508554 165304341 333535996 474826410 489226367 598240530 961018758 788143216 882713871 507513516 933971141 527491455 598162986 140850299 265998811 284601448 648803538 491285230 592070995 993596194 996344153 317981048 478861328 824749650 898301779 526799422 921658122 283123303 676188850 107846753 392970307 198763491 848446777 694880465 706177007 27767797 741196680 391170306 601122433 268537034 354475949 609416615 834543426 996822990 998678174 296352947 330169475 695961762 954486757 186376408 315058888 250751693 626360820 813295907 934970726 795778633 945381272 621965453 761384164 96433497 658330226 194170860 901606266 12853315 44654845 965229743 981522523 536358171 830430530 370574532 402157201 174692859 636592938 18908160 935609574 874753647 908652373 917452558 920981619 276375582 539547393 86789589 835307591 301277088 656010439 225753319 439315930 285846691 316615316 63192441 991490194 155781799 935362412 328290221 534168834 564668495 986324840 62673413 871056959 196154481 924861232 379507088 397220199 487295971 872203151 402716271 587170393 214121040 704685559 855252555 899002051 783521113 932586636 450321725 555762436 780549395 849238064 894383201 909691740 786798429 966184460 520983440 886341003 431605130 897786117 987119627 988629308 675279055 860315539 450351957 512427090 996924710 997069365 288983837 972962186 527000880 711821731 605403292 836750825 125368159 620836255 649071845 892944228 935609039 985140992 742640271 947326743 603102071 810199332 120366721 271441311 828165887 924236718 20676425 702916388 322463137 823753189 364473428 671288437 465153045 742972562 370861587 583575577 684029148 764007939 177336226 285788855 659589991 715087718 258586018 675747231 10343417 592033061 564042560 859676258 226482865 881661773 79046206 86450341 414119254 684073372 608150916 900659232 119661549 280233183 326724889 986871243 328582897 873692951 505754279 520741057 900363573 920305715 480186769 860837440 99931937 445417361 747007997 836411617 943169257 975017561 21108306 449710589 536135868 914312392 919133384 978327463 835036541 854853888 697661819 953728940 742073391 971832580 669649671 823558550 480941378 797858913 836774475 868327954 304338450 372079915 533430690 722508163 550974494 758844146 594914180 914412689 263186902 813406316 9459860 431487521 164291479 718695540 639403051 949071958 25985326 120394295 747487838 943016755 959804799 966335686 332396918 791834459 113990204 780698354 717147373 856293095 879358540 926201632 728163961 821973141 284348585 997719467 441334911 457512544 568120490 800588852 914654555 966621730 901872431 972400489 434782862 675029489 998399721 999335318 83309419 548440439 723425730 839602429 926448361 974328006 113378427 677290378 700423421 871482038 199797922 502648550 669663623 821322402 855126471 870669892 207837216 814536822 693937433 841489098 996565437 998380982 928329512 932989727 139199980 991405063 75633592 544834669 447275097 574161448 629226205 978760629 797824365 962991729 132545032 962272450 493506064 505725419 563839995 706023495 811415862 897871573 433339479 932056950 493024428 603561611 265808458 443415657 125530505 928079746 268618837 596135277 650778340 881639659 953927729 961302451 771995037 894679015 797508720 825345960 529956263 771274374 94066363 961094507 797960279 878924583 868398687 988575449 694680084 717782012 306672708 819909126 786381364 874770136 594520017 924435266 874920450 928205593 436354111 452506792 184101087 688925213 711988713 907548168 649543120 808526567 749397201 904209002 329508051 424751495 181211653 874331154 880432816 946186788 697866423 712640602 811646307 948310717 339150486 596172432 883734552 928448306 276101849 902866245 542051095 652959333 174167189 774006331 529945310 931793314 465385210 579928202 560127574 716429928 480290051 927049853 645069733 788328955 658345909 797384034 145488105 450449902 692353079 721796316 17635653 271288129 396603538 694758215 254241642 345685919 608440076 848075251 198067270 751763402 902491772 948584202 459327255 932440817 611149667 701681028 491375580 619297779 761827771 953136683 767647098 896608752 563695977 963095587 568947384 573303396 354114948 798394711 90604978 898541034 658848078 841549923 756896505 974050783 520433138 732433717 458791525 725169653 823473612 909886162 599506312 993069655 337335557 873085981 934166179 950569656 684068590 692174652 154656250 421569584 831233492 873158525 808722027 960424602 758734020 764408519 582073612 676873898 872598436 935452267 292523203 472705899 578827457 833481620 220575096 816104459 817005180 926191120 790894637 903987831 35900379 835599354 155527418 609309566 215056803 374540357 749153040 788850046 924624753 944391705 447215848 794984518 568158718 645495468 414295496 529780025 29418492 708720980 247994359 619835187 579740017 759686334 337462261 533101276 552243696 958842433 765321827 803385932 368335800 607028072 456735186 476547391 486058840 816831442 921082890 938268652 569683948 898784960 634347359 689286436 332975432 629147093 865659786 992445217 433913164 445562205 285096230 299363339 961766154 964718689 862625847 989347369 620410425 624213928 22452553 446168311 904301986 996926538 529595652 957960734 335406227 760105353 256397186 592054076 675607722 907568103 838872261 914176792 363053998 577909693 620927896 716526792 204794048 505544920 631372792 675399869 466399451 858974008 942582667 960570500 424390214 957710419 734815627 869276637 896178650 956102912 312946100 806761974 314361876 521228932 778498122 830173751 371637019 490068264 644575850 817381309 513061576 559180496 300047839 906659128 403790922 488960864 595801651 645107071 18613991 659169159 99728356 165971129 332975051 928750891 737750189 881532763 12658680 50818623 499734696 502888423 384453970 645973845 798465582 982518546 148555685 175108341 960318330 991667416 534314864 619340575 784445554 788858289 21745677 570444315 117362571 448872828 809377151 965984225 414078488 895553444 800715374 918712600 480684950 814705281 908611936 997505972 10451827 657002729 120343654 932304617 516306968 762204939 348546744 765647227 392329237 421757300 543010663 627458895 810666537 904155870 364976377 991829247 205720551 906581143 156238088 968820369 257428668 645566156 238261622 449784394 448576504 914723002 232070014 644225131 647511294 681030641 359884567 614065539 366447962 846923166 38015022 403577580 775390735 782861778 362560378 472288743 293060097 648602297 626636847 682147122 828516955 934299650 787131205 989342421 10098975 699316042 169392444 643825477 151973725 568224929 699708996 929079036 730385648 897145148 803074911 844441765 548307957 793870023 237290040 761826477 266759374 645750294 787203905 895935705 884228147 913262712 307082649 308679844 808823582 847269650 736573891 892646526 137704321 346082333 934100981 970511222 526655952 863332954 206364883 401466184 170890815 524865418 396247932 678763313 186338313 355435914 6600279 855268321 484212913 594066132 601913099 994900524 300478358 641708919 398858617 952556382 333138255 790664373 501076629 637530422 938020420 941392264 407624611 518725202 698391880 947556339 428445029 439944449 413008217 420820674 37598969 752917680 922760798 959248887 205904015 819895003 406012124 997167786 445848594 882226882 445122395 559207877 923729498 943128506 606841768 953556616 790138671 873815178 963810617 973209549 890053055 984270789 114586144 431101193 73078212 658742038 179300614 829472175 420357596 601123982 204039550 517276384 154726967 856922469 181272614 394897374 980831675 985937760 269810973 393149510 817708851 984169463 974656999 979233549 574635088 855044971 753616711 992050588 79573326 237190520 461987221 890610432 145288060 467696632 689751612 940641178 157898916 994691214 421168556 879493888 261014813 342681029 246670731 333282445 939836098 994507235 148144276 977442221 702405410 918217021 556640675 895779827 466472782 687696766 569278455 808928610 347516480 969393499 56765828 87770493 680186901 967130695 194478182 420123033 696704691 866653942 868727804 939834037 918750479 996461213 370125913 721947512 363357461 970484489 966746767 991756173 701713544 859422471 287494007 720525694 334643398 764864226 974392005 989717284 606363938 643025806 674737922 906587535 672510316 821454148 357808061 895340819 969736791 975102336 164985573 366477863 954960458 979077738 449076740 930041865 967181983 984197002 282032910 309591453 834029877 853662868 894090118 961722590 658787677 918491351 439051481 525331196 44224088 460551981 201741656 626327040 16869553 544082595 330746208 613127199 455247656 498687696 396242816 483628220 417014243 653412247 623834686 859459465 855954202 923961990 58349745 800908134 802532875 878616254 957175453 993102216 224051303 850476308 916660186 941196159 482995818 735319315 972272404 977680777 278236323 581665845 868740535 917628400 966836741 982914261 638754662 976900376 361328186 735204768 895060350 932953686 165559548 965710821 62375100 738839685 773858859 812591722 556747805 749212844 280467860 763511783 164787817 422712067 84079300 492451025 245136310 599513009 814097833 987804939 371855993 550421521 998292668 999148452 285678240 698667643 73856069 313014653 254955104 961549958 412187164 724646319 150785086 897658998 820564964 901176360 8930058 862830560 682575145 829499269 437355032 472162431 542674699 676300183 593240304 965220069 938588828 965926620 122496762 134891069 449427431 662787396 245457779 930407565 587183336 811612491 734441171 960498393 36006440 834431965 543570209 567726698 891581562 902468621 459665522 972622605 635609457 670215047 389410737 751574320 172158838 740707506 893371568 949023245 755035778 822936126 976115706 990487602 492622036 840069327 141740111 809048183 366584206 865956910 381344396 801433172 650898068 901671351 747450054 842270313 191323262 397284082 212777333 687672066 529564751 922299559 945183188 975330521 622256954 974712883 934922968 940442794 879524937 934064414 582215915 946001338 449607584 602667834 383272773 506609621 81295421 194121089 17801408 672692450 769008402 989642014 808861274 907151128 726970619 967041942 982157857 986372873 888787890 935765482 32039259 506147664 338689891 762484575 561400199 884819053 332576813 706443723 505185223 713183401 210407708 482804196 855563356 955960457 400823602 965603812 166568751 179257536 652879648 747440171 440199314 793542649 389527409 556564339 392678068 666565701 282110148 804956418 43251776 459938046 868914345 913644297 482322079 531020200 33332747 570307837 779634338 959005324 484301815 641881741 282480738 733620203 174193041 778721023 974799814 991261915 565579674 599181200 371030404 836518933 577918761 991069339 131093910 334348970 160974570 411384235 804426829 909941268 836663568 858863129 805739876 916575981 786033380 799620921 847978359 874976497 964400743 980898022 260801910 990151953 289823445 931918800 912048464 939651627 760508842 773845460 926815606 968929880 650539786 795248024 309529992 390360593 402032692 784731678 138963809 549988605 710885063 932000308 477351152 993442314 712608721 833464099 405421078 494682480 389878650 591051855 953972046 975209965 375963914 731603647 950021006 973712859 975170232 996923901 752168917 881755520 284291914 442616130 318560886 465652763 300236723 634492089 849499 434138937 223029456 673677292 440894451 703985110 417660941 949656627 734088937 857461212 802281139 899870456 839055109 910218565 76496320 129768249 46178474 782339640 980409842 988169518 721084403 774464328 73470027 660419532 629658261 677823290 834130362 943498050 354734211 830039894 645310456 769519412 426352991 833652918 109466211 182558319 643292135 892031713 926562350 990054929 936755322 967562250 216579696 420521906 180164923 404518345 779705546 953549874 401020175 805582945 110211160 544973851 845276801 874355872 855059874 898887633 827396146 982382415 758424847 996466830 951033990 986674756 120782546 503596705 887161632 910410144 628456066 774371721 396469775 447987612 784786097 964823994 5542880 842886076 217843456 929004631 359039444 441484993 898382062 967674458 828497186 990181330 189834289 997225336 775855463 829047518 835636703 866563412 714344722 926290584 671950842 823005416 87492262 447742028 538781303 717171073 367793882 945141834 343994330 649976488 726533162 786652886 626104755 631845324 950811102 977662379 355375821 763111678 437121593 768378215 865246582 955074267 701075355 905045370 870839582 928193506 948018616 974363166 720185770 741551837 611166633 830366942 189423064 660862096 728615409 931711931 821616644 919541706 12018201 850934164 614939068 673071191 740179767 746133204 985628571 987812800 768278372 988747090 411967422 787265351 799803244 832400476 311484541 578399436 16876337 948360972 627157087 751232985 157937501 579933121 565321587 914242238 169094471 590328549 218287166 444100305 886130176 990064692 714534582 811234745 872637313 930699270 112524999 339589501 666482199 758187590 448011677 626080517 225133611 496994039 500925524 649708297 31134781 612240775 296805575 340498433 953679374 959314163 790370777 877356697 827559874 975447489 126481246 325297549 989273361 990787788 126629608 860081095 913856321 949947037 93657273 693506786 56974147 984751626 619498378 871908555 711819525 913693970 468641064 860955263 416455393 426718964 886542127 965094267 12795032 277755292 19150670 969025408 381118187 800362180 19506269 925051919 503370907 992099794 526440009 672842768 614494274 616874703 561452265 988884043 251907980 852345727 173425610 372159817 980259487 997490310 536491809 740794210 437378073 925097505 509586046 661345831 357124784 791150609 636045927 944205872 382237216 782752917 950114999 972239957 478497360 966521928 572208979 742838246 635718237 682637776 16536714 962410675 337604658 489436578 158935405 484456349 464078135 539446627 704667498 778750654 95484081 673396922 206659592 220624096 837970003 854445229 551799717 709251293 517152133 996671791 928516568 929997522 94275661 636242620 473399283 871112558 35066636 818820468 781888601 980137858 654120289 986887461 773947009 853326836 521947288 704958869 783272338 923963426 934436716 947694787 253986122 343134684 778279925 954073539 201507645 479526066 413101583 428377566 256494156 819972266 130074429 374418713 928886444 932363399 697515559 748471665 950612024 987303327 244663213 544492846 105725791 528449104 668952578 959678710 340843410 927536808 235903288 504186039 114546585 179630518 403052228 487775733 972643835 993346279 307437263 737639775 431343179 825622556 742617057 761082044 419184215 693403000 459473571 803832422 358211180 572901671 752073141 926188244 428182758 704462710 27647895 578941213 531881230 817536435 842763074 943204605 243806908 737688472 142562943 518464306 861925777 931853286 116640094 309475622 408321451 989973536 821101387 875151091 143711386 539287578 790519952 815992873 62320035 662657896 262124065 388367200 549277925 695332647 699384785 945129119 709135324 834807968 738318605 983313580 413836109 933483024 357458418 984684151 518365342 762432693 196150689 459216373 971954934 993981494 301418206 310276561 89162100 624757365 273239976 797226885 924618117 927163304 849640141 964087731 785930212 865946939 201582389 665533201 766224344 934779420 874096597 901712115 370658656 765243003 496408761 782312718 97107334 517497255 12960000 758458557 253679308 557655424 766549860 959489487 846168634 989435794 155908477 463033936 596733049 780481280 492404889 621666975 77489125 617877506 259972811 590206767 916897654 986692941 283075435 520581197 804382622 923561086 981817204 990029985 921788687 924211098 595102381 701328069 993304561 997061680 888911514 917367129 310788160 955225476 253138912 886451859 460616101 902885906 478750227 694105484 599036222 887692501 728984557 756828228 998606875 998648788 6618200 252296124 782225645 891918366 918931468 995314118 69276685 363982462 843570760 985758879 974442359 979594981 209026680 351647744 884024234 895243668 242316411 254888072 152136626 255539054 143708351 824926387 943343694 982654140 397716766 531667840 59136404 344437841 379539988 436068623 702406286 873758258 100809778 955137646 714843593 743139390 776655878 941310603 861230272 965946552 496450889 632847613 677656649 971346147 28321774 324562771 675605708 770466139 259851771 641601870 980714269 996741589 279600678 733493103 566154823 676643287 566670699 786013645 357903497 720033966 746220032 977586212 291841091 440286091 634951067 761653308 235703754 886131583 796313761 846341104 402872682 871516830 533397953 723853696 535910844 609166818 437063197 456801978 249959514 758289816 477579295 878350932 118276553 814466928 286405804 450808273 799808508 970993674 671587329 896058193 570240500 601191666 567686899 888891280 362603756 626113333 625983846 852884225 513102124 950817808 707689038 797255132 524082265 978878821 885140833 966926396 893943421 989749303 801322015 967680100 626099856 829401018 385280965 922334487 730034691 907193485 210952963 245823947 254067332 989808619 677572014 904783834 80093632 327087756 147084683 315363212 573861709 685513922 409621679 491966234 709234060 992335260 951095108 991401890 218472314 319447099 42978355 966000113 45477672 169545007 272571820 509978380 627837461 883228209 843347792 898050624 659108336 970408372 40262623 967270114 284908994 788677990 604401309 664284851 875979231 885786963 560165379 938619354 208906510 825612792 256011229 598609658 211826286 555748098 948223632 953536202 300226538 567757846 443732803 773098174 604303086 819525545 420013002 997427938 282209994 922632119 308668279 611507619 2510780 966789172 666991914 705189147 357827986 797415370 123544412 786866557 889399429 889481240 451465034 515004342 474756429 643923398 689198340 929152337 161001002 922344162 268083090 551282902 229416942 531570686 261303109 632334448 663555584 710793378 408294480 780090128 451808810 782253820 735977117 835867775 524832571 706813026 280119971 953278939 589970495 663985408 961648197 998776727 339406782 575152429 950639141 961430996 575792491 761992257 165481730 453172805 160513878 755699777 314501356 478978485 942353068 998337849 963939980 983912084 794355261 968846688 631637718 805870415 551572508 618788562 223912534 612265336 552289656 634570728 683951383 933542606 833789362 966496964 333859036 623095041 133884760 477116570 748926446 908263256 914313195 958145628 503277758 861392112 595098847 674574531 938044135 975245180 568768140 831205680 889193688 980448600 935447157 992904859 790581650 836657192 335667017 580913158 718180121 774800786 748891155 808343541 943616524 954800474 121748898 245575516 375486429 664898139 4810036 597789380 219248583 985098907 304533024 844628079 518975100 661919793 880225973 956891808 169191181 581829096 681813047 842382377 977208065 993278947 14763519 648694622 126142747 819134438 475068549 496240212 795831768 975330885 132508246 225765777 636883623 659012108 388502109 864421057 807297217 912985532 774901543 906223438 516915450 829070530 357794773 496416390 769791121 982533560 487357171 645758279 416484908 454495599 54688028 94655505 162735382 246484854 201993432 634944872 661997353 686573652 208062176 873764124 359202815 475171275 383215617 801756885 395995035 569578986 136252062 442660665 385273019 872371241 153687033 594197231 596240319 969477882 162018240 946783975 993735354 996491129 212814888 870294241 582602211 872273602 297697418 815851228 190867401 586709521 840569360 956851977 867457396 903342257 33518678 867785058 299151561 376864800 828726144 976132178 21278193 610107499 440447585 492025634 810110373 842220697 275861370 910923256 112242826 882209004 364206656 673579240 119133708 812001535 384125415 469685335 824996825 933989427 339368113 708718736 342422172 373125273 436371647 481474990 429974844 724110690 731174216 731586107 681583420 716704891 901016811 907747098 684785578 686696244 47472698 698330517 122670810 143523391 741664446 837892315 613335693 752799425 335154002 637733279 695832598 972282023 258868724 774210960 892092928 981949336 511797915 866998544 782661645 816389017 454363894 766676817 813261873 831109714 800553661 874289250 708771583 957479816 882604395 954285361 375212746 604543761 364439461 711855207 60142953 515236419 701305865 963101594 742388345 909212428 958461098 997548644 705129919 997689005 619884264 805261494 826857031 899881923 710414933 722644174 223080828 494919191 559925154 767171886 671614686 918313590 526063266 568888765 427594572 757709899 702583502 891458490 597079127 890044786 346410882 391759530 915412434 985156021 458358992 782089222 602108564 607059931 147230999 416583168 875145141 890518655 571353237 881324252 333369913 927653179 61986174 966047897 693401324 864918284 46341775 977613795 629000421 682870349 439008151 928761612 104463989 352761008 618422381 981677473 930521373 984367842 379085611 947493594 6769252 885800614 361747556 542828646 605577874 966233056 36716633 830506283 395007891 406953909 936807842 960699295 161201650 708954913 464410828 559548849 613509086 959375379 359128424 410273013 477580220 739604505 319303685 506315907 759468793 849780044 653982748 994569406 801679611 965744630 307209094 758379434 915136616 990273463 910111192 968122119 249920240 786455998 220445918 753449502 175025886 445559919 462908312 568207737 935596951 938178623 156800438 355983611 815839015 974499079 597505460 865644705 885172980 947703284 849548458 870288807 390941053 966373416 48031744 323128271 116055936 169448705 186151999 213871313 51782618 954020844 516254390 878603892 924302359 976433201 595563717 958224539 745397579 799563859 523637073 696677468 361900242 462299310 954273952 962865036 266458147 586760104 873858115 902372882 123230252 390669726 533199734 541388808 3216161 102192331 148822844 153757258 932404949 945575828 27855526 522825010 803628389 971242140 121775993 361676365 370114262 992145004 499503685 922662544 160616153 918450286 200972688 908448699 20223477 554463112 172727845 364874156 872844962 879294000 962990099 983739762 538596926 738460061 143780488 171598907 870862457 876933313 240303632 891634529 355732383 838884599 918080411 999091113 469790687 899463093 205289513 849071325 783973045 954028968 984072556 998147432 376581696 825589957 17904560 363689087 694336433 831004923 175211305 213446395 874196405 907209878 838795595 954515116 450316381 530401016 154988099 232908479 182957900 463568284 128682537 472397513 731365532 909091509 328881470 533642580 596793979 767942114 39660959 513531637 376650391 980612201 814241859 858364614 537485473 586750994 764805932 963435951 440688381 808789345 775085481 825141562 768543327 930396865 416162087 988970010 171559005 455388581 534830568 735078526 980805473 989322230 764386781 827547641 665468573 790645361 498219730 845766341 433965526 960854114 533029705 797098918 33520031 875583715 758578142 981272280 587290331 827814673 632205997 742959292 291301223 807613552 975425575 984593359 194711080 239622587 410509581 869472436 272141418 352813195 278395060 778258271 975014844 987479785 359368126 671269963 840845764 942304483 44207536 816794884 317431142 601269393 553100465 676094494 587326173 626748788 623703065 903667012 842803742 866876986 148317522 434563270 700248514 725261019 795104725 904761624 691729309 851389272 228242123 850753084 424441232 456810853 298937262 651512317 189416470 947509440 97164888 474922660 370631528 520709937 554440982 965327882 364298375 945653701 494804990 715116187 927354881 931183793 7452614 814777861 847433898 901352756 307090203 751482863 945884911 946820718 166993303 774745011 908666135 995735992 192951239 828856341 926054773 930381525 404173709 690371502 23603564 67486187 269031527 682463817 360451934 635189705 401919222 709893113 32961531 111386882 107650241 821537074 362746021 916087986 251343516 390764927 798126219 968200992 953886911 969062932 554572273 744574190 84220248 343435957 738723600 933480317 812952054 899183006 82195265 514694460 885613516 945105836 339932590 348002435 744895688 796074114 723620824 896227008 548091626 589379232 451261998 995904179 622138536 962293343 360306615 987899714 656651777 753874469 912569240 932963442 722677592 932249667 638897861 715595143 231164217 834046952 818923855 881154177 784988963 855615133 987664439 997419608 414045857 650042850 548076450 602643637 844938374 915559257 156298609 281730823 453150084 517159487 240950710 409190088 889320378 950885186 957037867 971816135 722204686 785852814 842961680 907695884 405535017 754995700 626217296 638211254 147770630 930279913 299146821 533687462 670940664 748772382 579946538 632208176 874967143 926463602 895559027 929027776 110056862 206826547 956747801 992989728 217300962 836342667 904617232 918591990 774688640 891541684 736348065 916082340 762412571 978868228 681405258 704317803 32481703 765261119 305403384 472393313 890687414 993054149 548512807 957780696 913543710 958014568 609616120 670434114 570527868 964235329 214345059 999364459 863772877 971965269 349596160 870816681 557706370 735520342 995631871 995930178 87060002 141040229 676135060 788532985 70569222 440948344 420777691 514435563 943800627 958567752 237545776 455946611 816912404 950796887 517021285 622755708 730373222 805864721 918313639 925761792 509017406 850495784 539575238 872801909 903435530 940632680 97860272 380956649 886704308 975569989 288683481 329352460 915750265 983046061 671585836 861978515 149010026 314163783 607910029 722702374 516597951 625969464 767594844 818147671 537251562 550588065 274872701 391400473 957498907 987995821 786818147 922837313 326352713 450980121 588952343 802645029 457180255 860685676 192074251 603643429 370458196 821718053 3975736 181342967 375956946 847441255 752701586 812083947 605011350 850350900 885351823 902805329 603649482 878043565 555528290 558650627 601143956 934321935 541218040 599902106 483405603 489332894 755715761 765215338 876399926 989754713 265440465 752178589 408586500 792444654 717955128 815977312 701339468 987116284 369225964 789424868 969249117 972858819 14433485 587092560 173505240 825370323 800366793 941401659 519971996 745151265 303021802 550428324 108416694 806497272 855949093 865241481 289089519 483506387 119189930 349747925 891456037 894694613 890091452 940067740 300496682 387473045 444553154 619135300 111183259 630369788 630595880 866811555 310286761 981218055 416926778 897919022 961958128 997329873 390584343 609455511 141335143 649211997 726799240 818540909 185057027 287832706 955678350 977678793 698415744 760840764 445651606 920169825 976640596 983820929 233134031 367388528 577339004 821581599 522982593 875901295 15611304 745920132 488648149 711626589 804184846 863244403 982308103 994856883 889405567 913778521 56261269 274243894 75072745 766053615 20432953 269174057 578445057 624870360 429355908 817062694 129973693 516868533 253574885 935242110 960040604 966966820 283524803 327354926 506704984 904853318 911170560 972977851 616525855 963166375 341297474 884356441 931557402 988546480 599099096 612965205 620452709 678054786 550927055 873865900 612852140 954149519 775349232 800430053 786774671 914741869 153679620 655535159 220489451 719669011 519816867 820634890 868244893 914212579 706485784 801452893 17547010 418917449 549721551 870985432 666870259 733213835 933082016 997319682 56515587 772910616 913738697 948972633 797005 886692832 10577220 502054742 209354186 580038259 845866971 987545980 625209955 715271668 412118589 519725146 129109754 422918591 468409753 923224170 365431504 611057948 727234410 780807266 960578746 965249996 345177968 484315097 760696654 793814508 651825609 673054774 378911448 615298485 43644203 757388991 148967945 295245710 342975801 637259809 465684563 484704747 571688097 749101469 637051953 803792967 620394611 674882680 48748268 154074826 569826965 605125585 688946822 938650000 741204687 891894035 618226022 990275744 579786214 799643807 690958259 966013945 582109760 949778933 848734971 918564396 892283178 977659496 988415997 998536824 44589331 289163342 221641437 548495574 297472346 355641339 560244415 601509161 140710316 260108295 226752786 843344086 659029665 931477045 129440143 952330419 19716725 723177185 349226951 574847436 534951818 935667651 962273468 990862619 265050268 664527609 822219667 970009563 847924026 862742364 65589136 909914166 22123466 608482440 676775120 710896885 274764916 338223263 264042123 318820533 645681739 895239809 957641335 975529049 501695241 566332478 632762133 893397781 624388769 675366638 167595491 778017217 232132924 542846494 252478098 640789282 496337174 873430154 69633221 765661126 540134180 819500455 190296265 450550100 359158211 996071605 653861109 866193365 231586792 564082002 374647945 980263477 908349906 995875408 898555683 998037443 216933390 447438194 877129066 999283155 868147785 904267047 21021797 550920729 297338434 865759399 349081498 896617828 296866642 588782308 444653596 490734358 111749329 885144209 756313549 984771208 160567743 617719716 463601531 713607284 368439627 819715673 587140837 677025453 131876007 727145140 332222067 505586237 979545526 995480456 848576602 910810254 784549344 803698102 959113772 978246403 995975217 998488038 258595658 899220592 479458791 742548045 111886970 555411973 321825678 966753820 896143287 978742408 30052820 424409156 872546500 906102606 363444813 811488361 921780527 924141545 388287752 657428119 17172807 415909406 238180892 639424471 906126372 991283847 671278109 859696478 178543422 951512471 261088723 636898971 139389751 286085844 583969197 599967773 270343824 403657641 23471661 413313510 6013180 261516345 710751064 911765891 663799483 726460091 227347819 624081168 578577396 866046905 440373812 726942598 783107975 987333146 942269850 983241679 536517688 656137321 92561650 744008930 874970885 955391928 543457804 983721672 438414923 877166221 792041255 864680505 251347476 885727187 894796494 956279422 426444876 994064963 205266536 565458477 36889903 222590070 174485907 760192192 762028799 997511756 113705947 332461766 383577212 386933288 864525676 945723384 501273815 610447460 922130213 967964242 859254389 985516700 64351131 449992309 356413235 731710914 719149631 822222699 893519586 971245422 90025074 576913479 956254963 971497054 970708093 977677111 328151862 635156755 662887144 968660009 690042928 955370660 690060933 993110731 906433784 910024873 310992941 420078518 105833677 503596894 696005000 833202108 623647201 704372108 498727533 530192209 245373469 549596197 856999650 885504362 741370915 799323958 994915255 995727453 507882214 772533346 867991181 953518545 684789433 895813526 49465946 652558424 348323220 412402185 869789049 929095218 759728064 883867879 702985179 809420026 633514803 942490251 616915672 978864593 809070455 814553680 17995274 992991672 351106255 661136619 149130960 307726179 528495932 577779881 476423231 599972300 853945505 890622375 944905070 964920246 548417845 851151210 716467916 890670419 848249350 972063415 867095219 879491976 373908097 780609878 398147898 399366815 448378212 495825251 738467998 926998942 669184630 736371517 968858581 988865089 507971763 791580383 335379425 710560127 562280884 715672511 148834924 403182785 446385753 669885548 375178083 415875381 125758896 536008972 277875465 387879405 416704266 863731547 921861613 938953844 956983116 987568446 73604711 230909574 901462766 967464482 201803252 748880254 814604569 886002830 363217794 810418017 507445423 935990215 396953248 447764401 815827518 864958092 272663714 500427030 614304149 858839361 647011615 653693309 58582779 532707890 604665504 830563811 141999368 483818978 445900365 598606652 760420849 998377522 154774849 715524166 584422800 950950110 865292690 998194321 478227598 661011340 220056493 989431795 83182181 211586456 61763916 522480888 615693474 826180112 95330518 118478506 728824744 933115423 793106541 980330812 605239486 868317692 591324202 846136652 816572775 993576109 758459985 818240133 826907358 897816658 835543769 879233194 108706254 418105956 17864802 718067962 813958447 850443987 632690723 865480798 300658083 314596035 871411361 982560520 786215755 948076102 145238486 917082095 126333327 189333781 32216804 318422357 751981273 795613358 922062640 933163218 119606706 213601034 304113119 550173704 478141001 986615230 589945902 678516530 666457426 949774192 385950903 499748879 494582873 592453269 497491397 529374305 625707346 930480673 637784264 696081665 54988946 462597289 939807760 960286014 252376785 958886784 395129720 618321707 496732690 914126401 111103012 394882777 794548559 867715582 369713886 845783577 897900292 970287666 39678660 379087721 169977140 978750345 61233850 502954554 79448891 221780147 11325049 514076276 386987618 721840449 730651541 978426887 431324493 734518960 701920694 772227675 305668641 484947092 709913407 913534005 124978269 495824718 204225525 207538852 490653304 722264456 660669105 746325570 914085561 937510835 28898261 826293892 909678903 993439710 707449119 841471882 978801306 991268325 607708488 729161150 393110933 620866319 224235737 685064998 23966756 478953369 815418134 835583214 713003434 892380129 148285263 505205719 503202681 931816224 966142036 986774152 534602352 650632378 25157001 26398926 634819642 643878425 948019808 966443952 987682244 987994808 589194338 603012670 527128090 590441296 918556815 953802322 238712362 552170934 790395324 844351731 92552649 522764048 462921244 487475928 173680507 428366154 529392775 840468240 420500519 453540900 473602170 925169468 311887126 533863851 749513093 805794760 414257329 955393875 209926980 742065802 954520131 965577114 374610615 875849376 178690491 468990485 460191927 689212062 65843260 395340610 365116421 633434879 862738906 866593428 945296131 995658064 401470230 653072249 852930538 980424572 900807198 902747570 977156862 996490482 507264259 860141547 415004133 541831038 262974537 485229325 298644075 954976021 191341280 779931383 723598585 874774937 539418760 701182502 819770934 921427377 995487884 997195172 490742522 972678102 346475873 973242083 91603178 971882244 107272695 522761828 853963564 981406443 485300950 751826306 87772999 676743239 504039013 581441650 881708569 948091984 709221452 777159556 940165503 951385496 441363979 810574563 643940613 728692215 975863045 992638439 608592584 876689761 980439235 992780143 542563170 747040075 802068032 859059081 693320204 770448447 642275172 799107950 681730653 907679150 913142239 970296405 455153705 599072221 841754820 939770922 978014546 986894177 505580001 835705192 318744480 907618477 253237294 326370445 429558893 879351014 153952144 752895069 927884493 937268760 262786642 979647647 903118947 908993427 546168272 595915238 618587774 670092001 883019065 903333949 781115942 871479995 374017986 992720826 264643200 493850748 166903274 867386515 519826435 647735497 633464593 798831848 979880281 982290078 169496434 866880166 824952915 854471368 815515621 893270013 801217078 876479589 944902944 985141550 70687936 906037326 16670599 362093146 998247032 999380082 165576244 633858626 708018416 709606070 352911463 942301081 347629293 455989225 139204175 920594441 42416971 705381320 550242868 874973661 487911013 998705276 843689939 976003843 445337536 731980185 354154911 674077131 110337245 353626372 306333230 370875591 231643655 907185052 740001993 839072063 881969669 995283452 63707146 314944780 82391404 783036801 280901725 565035239 647448834 820706352 309440445 423663387 178318982 766964982 447049362 895728669 570413757 827589465 323821452 589906246 607740673 848288064 348008407 454958568 653809445 672153763 121751229 781214436 619473985 649089148 913110140 917455060 575595012 984301348 259145519 685993071 866246185 915306444 808862371 887147173 833410346 954448842 3464324 123291658 409865014 726398546 540862529 749535501 661551126 916809110 317329889 742790507 835636475 928619267 480671779 751141666 642855667 878666839 217103618 386682793 468285238 692893181 356672576 758955932 412079340 752651322 141615000 696154249 515246253 984995722 542945859 793086780 344057063 900096929 91280474 766079073 488300475 599694442 601079010 630891685 569574099 596543335 408487814 682312580 389135927 492871976 912409378 943556073 749313638 980891760 738326043 957252891 707004036 740859670 668532638 743946600 251524930 299913659 646814415 926234934 785791485 812292823 627444204 997578988 691685932 872455776 252316819 795527883 699168156 712367226 267879476 305905615 929839645 938693624 422545243 497627743 865936186 942820255 711248240 801645471 878049698 880815588 869358983 951506501 583571611 955160766 861509836 984714147 562228799 564482528 908293614 918005188 279799238 457409362 479036695 809192170 650173745 902913601 730149768 797100565 66182487 120611382 986735004 988655574 409275094 545061834 942645091 943985662 572133921 995234204 951679129 999186231 241715438 895998706 782518336 798998327 414533452 691765241 488877517 922105253 757129039 836596860 236851667 735511488 635162995 680478201 84568969 929027566 861925017 891408995 290370510 922718328 170901320 893706570 55476711 443866474 174099594 313139679 737511872 997303862 307692946 442437042 652176185 923813228 466255952 835085494 781611111 941931574 61151627 975126866 218702696 579620890 591553140 596270513 800648183 987341722 234011206 309639160 477034436 803473755 58436619 832585375 678342748 787210507 959141116 996674554 740846805 957256295 350587142 949151499 388748141 454218832 831988179 905966485 628634003 805936620 197881726 768638594 680235828 896664010 204524049 278324114 87438121 941609026 340379610 783831219 735414821 863546565 632862580 684613310 864707382 892374374 128568841 550341185 803315269 981897017 695821405 699368760 333952562 988950360 797701277 996517528 754235362 865083431 863698059 925654354 751346297 802663107 60504593 952083839 544892848 875010454 651358216 710745238 738762240 990750014 146015658 577964978 555774547 804283134 552152258 574904499 204307249 872757449 119365807 650443151 663263130 738709555 615903873 891545522 776097140 994300746 147286173 622581064 576533396 608073807 735439844 790272780 55377626 212165320 653998557 940153827 57522968 346125472 932787784 943552918 33501749 401324460 374333089 494732104 440333500 619228412 468066764 642446883 511114901 545555799 850796430 850797582 538154469 831534430 172554271 633486955 723336975 738285381 999246194 999252036 961327366 974390314 185808637 969772084 399455369 946803340 555415030 597749761 604071785 694240515 948196441 990015179 848639204 855993773 599421594 757174284 54991973 555617484 97837215 860183688 688045903 893264065 733829531 743973561 836061013 878692360 709166644 808350240 574794274 735979369 902313170 959621347 900004007 970500315 222448351 300801420 828705246 859496719 712492959 890451137 949839888 965104332 820009675 869934242 22191964 124588945 481422032 769809937 41533721 97761400 764555064 984474912 702878319 927595856 255663861 698042000 79547415 711149884 180496120 392081982 279183441 387432159 938608144 939760043 212304332 982971388 21206706 111867059 113578183 406346377 535425314 932843859 896643882 978884230 969545206 977472760 773176155 977414435 917216384 952509639 506497991 811725740 268215870 570267017 484435296 826179725 472873334 540049498 224685011 838258269 862664325 869909241 959423920 980008160 5594432 269042656 213343705 853336350 595167621 712215968 668917164 711339986 195165190 756062790 338642174 839806670 2223894 905808536 952240304 988153121 962963607 975592125 812332212 981371135 607515788 633893466 269927327 757967424 540780750 683456340 841827944 942462198 746550192 928502574 346577439 369062618 335318338 951126505 273660838 814083760 316727865 570118049 923175611 992422965 368984278 637708016 567162692 607822041 443742336 527988220 107824788 369658979 435280153 649149420 308357524 651529615 585585823 824520022 69314653 651296708 479072333 507159542 902399346 963417738 502699212 570597588 65059489 497877426 450379441 886991079 235594411 329662200 844773813 866607928 339609633 853943311 517544992 733781679 13238654 335462527 617694524 803453632 136012396 333043359 143507277 213084643 629335263 701658946 456437010 769166252 668191143 684525097 803918400 813259723 856119408 976703652 591528041 972518775 25151837 177351475 19906373 484388555 454099097 905174274 543725186 570235380 878020175 977596582 262032017 368952203 987642987 997686796 200561677 275784341 677418495 954082194 598665801 801042777 335531849 558734147 560209226 724003172 564589598 739000116 622971913 718090936 383579209 978112734 17942060 77442699 169297382 879259732 75100137 633451369 818883703 872404865 560644628 748025570 390000658 678111967 325582379 762635897 789043018 969119429 434117969 495460846 855311630 947589223 971204335 993571378 598004708 972589657 767456377 895517276 90514654 924423158 21006122 351440617 332407002 759856527 447517736 657440303 749600436 907638284 49321607 820154106 809794953 985486492 749735692 832172280 938539626 946481378 936240102 972471560 559364253 806888496 331318842 569651714 610769377 894845149 657517725 745131057 631706281 793447891 819965075 865417163 207873010 965128076 99248998 767617326 77973911 466129689 91662309 381816676 193221871 503380464 533271835 909650343 270756470 965780821 551610151 561009733 738685204 893992589 990153572 992205021 568200223 960786250 815319820 949178962 13007748 845595574 911825847 993447945 592453600 759128738 13477187 970600583 304575686 686456050 367017310 509477212 935767697 980240644 363819352 834746995 695992355 862800174 577601792 623891081 262523314 474411540 924447349 983809835 909823160 964347001 308474476 618235725 63785278 141404936 303522715 925828236 685917051 698111236 178166384 554707181 515793904 893439392 628780100 848089485 313811871 709162172 654704414 769306383 19391802 566153671 309704913 470392071 176306306 427642089 865537575 866320291 373295586 387978496 421931762 800549908 752784371 887773081 583221479 764090213 529445802 941673933 995320511 996424706 40165299 977951287 598197378 921379199 969221510 980317570 898866239 955671748 92328675 351580913 696812861 838226940 548376952 887520228 544000858 719903876 846660779 855473730 598333795 767028338 701591384 979738939 525063846 635191066 589006407 921324443 196336977 975738712 829124542 872376025 195956738 401831390 952037065 953003786 674944842 702026427 104792369 509824553 298937468 747864429 642179892 684161651 198125730 689032315 917759 811046017 172670684 939734012 17765270 808041026 512697788 931522623 496055734 621260934 416613439 930874861 38613111 94729506 476101822 928967635 964279770 986298735 549776099 885848728 469801107 980735183 948115169 985739438 678866293 848585574 491173023 837734769 25385574 360351944 772392984 872951126 415982105 862321930 408107196 796682998 947477361 985690779 294054197 751444141 872243870 892812171 758163739 925020233 771765980 928212682 857342985 975966838 554741585 660742819 268098319 511063259 345872587 768818094 970462561 987492537 256218230 772619226 682039740 695099516 125322147 681133395 516019710 694938901 805345018 896617134 632399145 988560904 3300757 109359835 441486946 723621917 318299346 388354067 747822896 846620144 124870995 345354311 520700171 833720697 848613824 849845154 11258888 338800130 112900444 539484272 368241593 667706141 555988873 716509844 289633416 725957578 896887390 954262106 673031420 888213466 700049880 975671050 293759021 602743829 903840338 911341839 123640597 973354018 598347523 912112309 581457087 857113936 56694200 903398966 358926546 796189581 177555607 828916831 763224439 774441999 144660104 747526009 934592860 972371785 628872849 822396426 115803665 449192129 60417063 870763898 787521789 957416599 29386867 966390863 790152945 977252551 71561951 735513182 250934533 746751916 790248385 906074809 804169169 940406303 884791240 902974800 871358046 961135356 494454837 768943717 536141580 889907362 673917949 804767370 128283187 207701929 168145069 292724216 445537383 897073776 227813267 550945750 559489302 837324892 516044812 858700605 204533368 570137995 253428340 985038584 945405759 976796625 32166437 145601820 184840129 754864033 886998299 948459149 629943144 866686764 44734470 551476177 199689988 400050485 398957051 953884108 842611705 957957989 847931179 982850205 560600440 803709543 20501947 456090249 963456486 993588818 794903133 942255731 557068630 614804823 394982693 499611142 917192873 983410164 229276611 996383846 84126394 376967112 627299111 665333035 509583617 546342877 671536916 729129814 201366293 482708425 630108731 771945400 278111629 733553755 535803253 537186434 135462648 155042619 998561043 998745042 652362957 789185686 408914657 472422022 183444911 720747466 573306697 894022589 96095809 194071061 901763793 989488026 720647999 988556485 345274340 619786505 795873919 900948275 662015093 758527991 47292168 434585918 199209907 259643187 140590945 458617820 635919166 651990441 869392502 939081023 577009979 699873701 194051447 657490282 152096048 934822224 40916946 889554627 616572504 653656901 565004504 918529653 213188481 584299022 42812552 671549798 34219565 895956467 646848604 995663850 817766768 836416612 820548829 908067202 368148234 860673432 899883985 915165921 175349344 995287801 851074348 955450562 575083225 708417834 272393106 416991922 140773869 492813593 414351887 788790280 895204430 973478657 903038792 925353431 549578320 969986402 660362484 844524265 843288681 869115976 695977290 738904612 900157596 987280686 855299333 914624834 501699240 518491665 760446961 979218363 855769096 890225784 914957468 966740673 319370921 678265620 26346919 377852811 361469850 890014595 950299139 985816592 951592255 962793915 479996896 843972124 22263317 506230135 754267060 934275269 866862474 886397955 99051726 849674225 512852697 946539548 898520883 914667744 243333341 509852898 231794380 740286817 146185008 669330083 278762934 836239709 50818222 755712005 579919234 805001165 976256279 992188901 375864386 981811925 906024061 986076664 829359898 985992973 588096039 743317124 950444732 974917897 966300186 971242572 558955932 669545762 770410954 845704067 553040929 925534351 349386896 433739945 273365071 920853539 164788557 339364925 329819639 680757095 489849548 570173074 225608885 292848162 557122597 860743855 42786523 632222046 215607212 305530233 253313564 352642443 178743782 845150211 631374338 968915201 691052932 975180094 408181631 530789752 376235565 819958485 136994992 761787418 281500740 850756635 680766784 689457643 222476314 668067819 975865627 984768412 205576702 434394549 921003969 988513801 935429475 988060235 955303193 989786983 861290060 867051685 321384384 669536299 377555554 999099991 152935325 512787275 511252782 626045320 924992806 957224923 600398851 986585014 593667961 906056456 779724657 980688006 133971849 207381458 989114354 991875911 39391446 858204376 301879528 459615241 831717948 876125770 944090028 970064366 58194262 279303002 436017211 857883180 864287499 959835277 639249233 780033447 944691020 998973275 425405198 954409939 741179323 887490948 992699146 993091137 709914770 819339294 654463144 828347112 670167507 769898485 722080708 902417887 476115575 566795525 411051763 437433804 394478391 744874528 202606928 309992878 202457305 247127867 862213032 877808442 290243679 683410762 215678894 497488782 518228686 674961066 886347719 996467399 629678683 917115391 615569389 977501983 472476503 865228915 187839226 690817882 431054432 715651314 975547452 976873276 699882100 985471791 532637829 805216768 532415263 898841805 380686477 701967991 461404381 470843356 638072546 915084079 77080836 773149056 716858719 899684788 786265772 870814134 140311596 260636448 947366911 975991093 901987823 973662608 93107173 875209463 620822574 716301044 637127116 878423234 17291839 882733531 512828524 828234117 940809894 979547851 868231569 977191355 492886492 510082881 881858414 964606445 26696326 122181640 99571771 842770016 735302766 937354191 748373252 807408146 95414113 720245556 944511069 963601345 332147108 552177871 201293120 945216878 888655158 959011719 840885786 988356569 358544645 887333485 425402474 479749548 834359908 928787557 215010182 882322199 806943757 816366103 722125456 724432315 290871803 336152458 61823274 685680567 900214162 939694403 552247973 975275882 343599865 571063736 874378354 943336962 756700875 915247676 846042677 887124185 125700078 965467381 557713896 963360076 11904754 157141697 694767000 884219993 70757453 644534194 94065375 535490395 484142077 880411784 472282870 741362401 644631482 979540543 48190139 528982077 821102472 951099021 303758436 373359681 955255341 958088731 628031805 943813140 622774089 670457633 798164752 900408390 661919414 980632340 644049508 880865595 209473322 783270311 620510829 764176869 209534798 553508425 924166541 961529403 450842089 578517575 729314033 916611144 920505533 981271849 482650557 727976298 517770582 985647574 430550503 653642359 671021199 688644671 121331302 885094023 29449825 113062297 192776892 794913663 679251324 694956066 112659593 794680629 525810616 715697110 15375964 831823495 431791473 682558088 582996299 948702155 477362859 781835062 898610011 907719402 468937662 917598942 886583631 923796643 111745516 841597357 51537741 275347156 943252414 977385847 942285846 994617558 965177479 971820674 12580960 197224932 247292321 588874740 31317230 472300757 628975756 832294208 346309025 530477276 488836088 683132237 980635447 998427626 279938614 661878682 369712704 504336533 383172933 955353512 109127914 169059597 856738164 932011786 381029387 391780662 898561534 920196477 351020250 871003517 484922716 963623166 175161367 214911643 601724633 962328942 544190417 720703003 815462679 994642375 805920080 956016317 101817707 785910594 912003579 940298307 640928962 920994517 349471170 841906574 595234613 685827270 959785849 960137071 817698866 978728850 846166376 918954180 924091097 938320514 180453399 411135162 774533764 951097470 607734019 840332248 800586668 857618310 971038087 990468430 648320604 834567868 775441843 836611738 568452078 951878187 740517746 934650659 73158771 271186289 202594010 580242204 288991711 390892205 670405451 731063068 96409961 592610348 14248762 741181466 568242382 610565580 447448122 871507493 58330945 545329762 865502067 994232255 756644556 844695376 568420771 961352212 643366408 813316252 644552747 790924074 540882846 543851492 376299480 394771717 917715688 947445218 269210830 949226264 405954336 584155742 95065672 189528402 779145972 908873673 728367440 777914690 237408472 817616042 362351549 832086846 546351628 922566991 816078850 923583195 299150283 709355865 260296606 979019135 314850871 702321471 146897918 433262689 338315683 864442477 274903963 721795257 444129211 534065218 312594024 705648122 836623364 871644855 126651830 245576841 741260347 890982101 681475665 775424141 280652560 447498511 830329343 860594470 107790849 970513534 160002 984772752 741371711 811810651 543817665 608403296 421713108 857602703 673126326 931415743 535660215 616365835 928004514 989090166 79843437 174659916 535636827 867941190 503243891 566348110 731675306 735937673 218890935 460066120 962829948 984059436 711656048 974975061 394466288 654771456 538655356 944743068 856643213 918099440 850215421 985384345 943694724 961738743 355137405 522842480 618763150 693197489 470105930 650681321 555234490 884687346 426551801 704803046 832737657 952382072 156867827 922670907 157879048 476624694 148215152 294652974 802150200 899497985 133022301 939554875 15165440 800034699 540676345 596939245 179886353 580046195 775350238 836899651 537875313 823550344 612946486 668160718 544228140 573047496 494765872 872406199 429613797 852021825 514948496 801642009 146476503 320307672 968629439 994517939 375509126 376220098 715317054 925006375 194702877 636781568 114693838 167341365 445331587 724146162 660917118 788006608 311851058 605090684 412965039 722874519 903746120 953853822 81418139 504712951 833743273 905875070 887107821 916199277 281282158 613521840 654363006 660663710 265681866 321282308 464405968 743747421 185891380 592403896 515566859 753067871 204488744 734479256 124145853 668167021 171586166 432005194 492312889 512152810 858420279 978402065 135516470 694373344 790466386 815634701 533564054 814703058 22273264 896002154 532778092 984242141 653207691 998683340 707475614 796690775 881188462 955665621 798259284 810959809 83475379 384573916 606411235 896876308 350950834 703479401 658527136 831985918 796285197 996046581 680145000 914042770 988413027 993368758 737824875 861866324 259643470 380037406 122186309 945519265 804840709 974489461 681656000 798966670 859612045 870729250 57566775 524460713 861462137 989729839 855178752 917827057 222690307 595965595 381708882 806498715 523706016 528052415 183333234 201508241 430269543 777319088 598824994 686393883 143114084 425266373 129528944 349184361 641981070 660886562 147482115 550650876 78968701 435809210 79733425 503358399 323459234 630394465 195121049 947418845 148383164 635376736 954672768 988242778 682733466 787909566 98979463 745655223 673088986 679293431 286730661 479415093 33351074 630743516 834693986 894509821 240660110 717053331 285790270 984185440 370612202 756038503 462774118 690994444 87779046 793121049 155505181 453396344 209567229 570147881 750345674 960239427 989520922 996242140 958571811 996914867 663183146 768108022 691480370 788061344 526253857 623765333 689738276 998490268 507177547 943415544 989654754 996037157 583499664 643960195 347135305 905550312 682777819 872602404 68945269 808414698 42650559 594021405 579296793 874419416 792151528 793323938 573768399 650208171 68218345 350989417 421740128 440398726 294875178 581821525 718768627 798333961 209604686 630077696 210951174 541603614 143044713 761041884 657159233 755297168 279043734 404783136 633450910 990290808 653708525 768190697 867709842 986562632 564216692 651423325 361161825 533520158 165797894 842132487 609933327 717506948 787731408 968446788 828835720 922628737 680396932 772083594 583413563 686471084 461496200 661070095 821865436 863704027 112016589 250521940 673145741 858452619 81347913 531305110 910900839 912715928 228221127 779673629 424268381 525579332 710396221 747333099 365004141 803017376 418484870 437313362 47581183 429757877 726313820 900817531 90849633 596448064 899927414 955004060 886321440 953546111 745897665 815062646 617410154 908911281 687336812 872441437 633601713 936890562 585283779 860702217 504119123 820465663 587398311 763304126 155265374 784658468 732317516 787879429 190706181 339461013 938702163 938796763 474287209 781912745 408002159 490391694 111507756 339840207 682657785 966494992 468203547 515867167 92059796 384851123 166530930 194628169 535275395 984853929 857097962 946169371 173915498 884253803 614196646 719019059 652128641 787845062 323631858 379385477 417210754 985056593 963292180 973539639 943508496 992339943 868587700 943566743 161276412 431509307 480173952 851270396 51445180 453927985 233684128 858509848 237177465 481716040 405446491 966168536 186856786 392689201 611854542 697165322 27637878 936421634 220809332 320599361 167906102 218372418 430474219 831232482 943138791 970504526 439195935 606085038 623318686 649094052 307183145 790334552 253732565 727270938 43239475 956076723 925144398 964713127 209239357 886867775 201106043 620536488 671562539 886615793 618461967 819743992 862107656 868285825 725462317 752471079 551341926 779126939 764354033 952314316 366029986 420072477 162929379 633053102 936566324 949543827 960629688 975428809 745036015 977489404 100851290 701121895 164057395 220727173 897663159 953611661 164953558 906853966 114003855 530243776 268833900 829768235 615800779 629281989 753178976 889117379 589516520 614656800 390616587 998724145 968643893 995645527 594379325 949219130 211494614 580879638 273371838 792566775 880798885 922109628 801064976 997786044 719060125 958106052 538605547 691247172 608545109 616203774 619047573 973484775 892423488 944101527 618250958 711290554 864143021 976866325 896934150 931866682 591032296 905194730 204264714 833285926 895431515 954923540 756897297 953426775 508248029 939100164 921903308 959577615 871176775 871701825 76029460 650875795 45337543 664338611 274590890 667717419 150330897 915736112 738605063 961619743 696301177 904905215 168356219 837248596 424483936 930185620 773334973 886450377 254964468 891143770 408742972 877713242 946299903 952307313 788847860 798824856 466122094 635285164 687529710 913590984 970349441 971489654 113209811 328368009 261847107 505807032 258353524 541222037 427204862 501306250 535889480 691937594 107726392 973204748 626046890 651026984 115688250 607797008 655329182 762701535 824418819 982102211 238389112 535593435 420145984 933506423 152011346 400837587 282578731 402571184 782856654 851608398 343729785 685691107 50899597 282161270 840123647 904214446 889696609 981247586 587153322 616850366 566504772 904364870 772794543 929265601 540581770 575786216 83288932 361124811 297596013 779131721 140229547 783884887 726896772 874266905 153273882 492341401 268027088 361303970 328395108 759005450 979048887 992933574 847560337 897032438 221329521 550825998 925199763 945771459 605024532 838348008 100667311 821912182 894217540 970705289 161695075 875185418 808643576 893754537 753707138 842187226 614680708 822570851 649439853 980512871 697246256 873696511 386974875 831151672 74788348 999037636 514071068 913403288 708195290 910914705 448217367 682779311 336572147 642117447 774628966 839909939 721866648 768790460 396799776 968716597 929430654 982592043 513113328 832550844 750043343 898461882 374880592 723437445 147145385 523483255 862670446 922223352 407451683 734019464 498438145 819754142 512249076 868731012 334484611 742696747 550657353 798591903 151717982 311246899 556567426 956023479 103716854 742011057 621282026 928229339 392787987 580366254 416276160 791753576 231168670 355329096 551411401 930408666 685714995 697082575 588588419 744162717 953669255 973523428 908543218 927037395 197095096 494173894 384760815 853810679 889573968 977097351 148830445 200972444 726959324 960226070 774497375 955477411 273537762 712503853 575855927 997653629 689032865 752049915 8128090 835788119 431049504 803794772 773704914 934019639 269052346 273618999 498964623 809194878 950560724 995780438 53419543 552078380 402059719 733518327 771433798 913129812 816551898 832299038 727147120 873607825 864209244 920582119 450786276 830296875 106784559 785935267 676591072 925727900 377718557 870064925 728549696 800744531 991194684 994572184 203285450 241365127 290430826 456961929 23220607 233181802 746499482 942051197 409743586 766636082 491773384 964463362 405026879 911991849 188139600 828794806 389877743 419588055 415992688 642350326 616334834 892075463 73525912 621076132 332408001 886867316 143905682 788177706 882452208 917158746 648817143 963614279 706397874 905629034 931085138 960841401 735497865 863816693 553924236 905717866 388523490 844961531 862919232 892896851 927799250 985750592 333180950 946622437 465272888 905903966 91161918 893835350 981339750 997125485 681954390 759900864 621215271 852193942 225128571 782346630 821352235 887024426 87464665 239535742 89662458 284024842 654056582 971153731 698737859 922060302 689973373 786618656 953518205 983280899 621088061 913056330 367592029 578265874 488891268 848474443 486300866 963508553 492081264 971709759 222489568 765305838 28082153 586444325 775648743 945600956 545704223 588080659 702393278 748491626 425534644 528330692 465755728 995363421 847868626 914457598 693665607 972112011 559595171 817084039 969221903 985637404 707406544 884231530 317336188 357136128 152287031 201085344 834133016 986585585 40936750 878544025 165800367 971231865 372587596 829068456 987808211 997184575 760435757 963541043 349426792 503121973 698602205 887325305 45577707 142511430 714882315 904612961 973676184 999309201 172209476 207731931 968524631 990349423 866789120 947017423 773261784 838760755 893045451 947686364 242438910 986715190 867547856 942912025 189819007 647035718 105674058 581319494 643067660 834703131 569835774 976225251 307852765 349222015 84435173 544213420 636055568 845024830 749611912 869379531 183913912 415083018 92036698 757841501 952007013 971467380 597238242 660336148 481926735 788069607 207726418 452528222 980145142 987889821 534762292 661206922 227505604 611841287 703382061 777248838 737928128 882704639 753367620 801047155 923898351 949913275 160354364 892105472 732805768 889699556 701927478 834801332 750147248 776020902 846291787 907709756 94100098 402411562 78252844 258171558 971256857 977495604 891895550 975445457 592572302 685407623 312105427 698639417 558660863 636395418 289480610 351636424 34841636 111116187 832136324 928408362 39932591 182990836 755275853 966589869 102271791 966991554 119545703 387119082 593414779 807810285 903275247 932971733 226369500 385607841 896888854 920260589 51889253 868070102 538200970 939129554 961021062 961499440 492618958 618150177 22855986 721313710 709176134 863529582 404037668 648658256 757587615 823369019 752383226 881801493 658424569 915976782 190979804 328302930 395701971 841680883 44860203 628699882 501758782 821993573 94437984 493092180 25446915 274356697 140103491 978649219 775207701 986058123 980395377 988964674 17179018 982872932 139289481 982282480 869398655 878928860 66584349 75039524 442000377 978520696 320835818 446238383 501994649 526739931 809894917 813745846 775240926 957821289 523826736 654758349 483915 329824376 625049759 746533324 837948994 938498559 115140558 714197768 258973349 990413873 808418084 945860155 428046830 572628692 550932990 613230957 28820973 396304819 172927135 383295077 68049349 677761001 847444078 951069148 481228708 665483518 468138421 941515061 590337082 727608390 390640587 802849683 316294850 905213410 135120607 660958010 307071256 952670867 122575417 136275298 333996999 433407610 224135171 305342959 390975031 932469665 817617512 961420731 341432508 724124125 700254438 844094011 629882593 652418613 994089575 997208306 581860732 854684706 499151072 819592717 711892134 845481334 105156801 756704864 304486069 612051985 786398812 929163128 178687241 623664674 955117697 983623499 696086407 975806366 902986124 936893744 751026916 811848502 737322268 888260734 132128843 178366837 116441514 524340411 122787737 220572817 984652585 996329382 841362456 854859350 617129991 938832970 422729182 803202243 223297349 702523582 421022842 457564349 57480305 672120364 465526438 810283144 278778380 789196304 278859269 345793319 764778836 928418772 847879709 866065779 700925996 890251123 353469966 483381148 463917960 952865833 66040369 526917399 278614631 565036901 643370493 676430386 230667205 712888196 756713917 905082842 79956182 558806390 425653697 780962208 320261551 864404665 247534958 972918509 183329336 306805098 306533095 914731016 907542716 945459804 574979622 693854289 175629335 284567534 84922364 318652096 388006509 746988108 167434524 834482059 52827037 197472559 441986560 904909618 922602331 972004074 646648018 845238141 404963786 519907199 809721510 867935080 95323980 328112749 855493727 905846492 229876464 575035813 932399670 969388186 272815967 654377398 878598974 923090333 672152814 771909924 718430428 987257438 675739354 998861249 416520492 564227027 658653213 804503840 386727060 641660841 25175002 153990834 332026741 537677583 898802524 972566699 811400956 830853619 379935124 818666249 722163668 790486790 443187239 897477743 985516178 987715877 625775696 893590239 291390312 605680816 15594609 530360329 729013794 739837105 597615439 882252423 902006408 954825337 853923595 984704908 459194101 771481963 218207996 347242565 788033458 804039783 240493102 964836839 539786119 760374352 288097927 715822374 930302798 996245261 872195767 993603263 694552529 917994717 44373665 146760397 986046322 993033844 224802 498199585 914235810 941676883 520356731 689718483 450198981 884319444 791565905 944825432 852232667 885254285 391762744 869720504 37352071 626493968 902858181 930675655 23472980 525943578 72003535 496030300 566241053 752109850 919747979 981473792 363323829 403808490 96936762 238190755 375345627 583802608 230947575 739878084 44451619 876370341 82894579 359886607 904539425 984214141 322441227 949214467 68148861 150980193 997643981 997928099 943920038 992178626 464320318 679629609 617676082 690875786 444228245 962473922 54783487 228989638 329607122 642541836 882553325 977681750 116350863 326689508 51585209 524569256 906613106 941302912 718179731 953410207 996047316 996615469 378503484 407242741 285197122 453665539 264818783 292970972 857813635 927941366 162034578 189306766 398913387 538147929 700230003 785235524 332905141 450931690 759895776 918350756 394777458 871596287 34697562 956176580 74621855 180603636 144728111 814136495 645680069 944008569 453387867 738507314 526067715 537395366 774695927 777756341 428433322 463064338 370377248 833687868 188264485 215012136 880406953 969194050 819324310 868766005 155166216 400502235 882459242 969002706 562136084 771828717 67630142 661791040 127255820 979174502 967829399 994250326 557001030 684005037 901761608 961107788 866594984 964172277 638253119 700024071 864717820 909371327 656927770 812834178 520251868 961582617 48398119 983677579 667867554 797314577 564341693 971890447 603718117 833119350 950848598 988134360 46272016 417190551 310144560 735007242 796648167 889240767 538280358 652301492 167796790 419086683 924760426 970396383 943113937 955118632 40481263 978060063 563932634 600518826 977026988 994614087 788177249 812254812 55566474 818681866 598346137 926959972 860171064 891147175 260147287 524154702 780064063 963005380 230910048 511274746 879919836 930227212 112912481 936941336 64265341 555976614 933853529 946535852 641369292 713904547 408230877 443090637 861434390 864340488 520571711 789043332 408367079 410631957 202819489 626658365 30162989 100101401 140490959 665076151 552020204 715712348 619556771 955541349 269540539 537452306 18691798 824980092 110846839 272527411 990304882 993475990 584755456 657207937 66476292 700055552 111816415 964526672 224052855 785017430 641491003 661134214 185487276 882361386 407138252 650586922 350327398 775199742 511374037 543383142 37705817 551780213 311494748 872092090 460922308 972897051 59842112 927735019 431483988 567178056 175047400 532478678 555549292 632964411 413174019 851897501 723226488 835885835 795180308 989184748 128338969 190640969 368064376 538142911 204986031 296824596 493612380 947820461 987321478 990486410 12036744 394298900 36561548 232711899 963909144 987265162 97207826 235043329 588224227 971048794 452363341 778364085 332780519 546893330 47638081 300302434 624054884 908221378 716440546 927787642 676546475 974173906 757984954 987458078 413415459 655100438 674949556 750268601 700805280 824056813 469287428 530847299 652251741 806151845 872636262 915130753 66444250 520493577 703351448 771942742 589450537 719819720 883518818 955327885 184076745 869510501 148616136 631325020 307782740 632424358 109425439 438929371 836733981 947850444 81031481 808189190 71107330 384217658 958781421 996977338 110351724 920437060 667852340 978392040 457316372 900792363 507010859 887894127 78074903 672525912 630569050 911284942 490290005 550414360 728581243 886164272 61369905 664675666 152153142 987665091 240553809 629882298 528175411 944538216 710695747 953545383 786774449 800503909 894215196 983608555 950367988 976332853 80773998 696615072 64869401 297477418 516361966 927313765 626495763 911893056 305504433 608916175 823490756 932710140 125277887 411507110 626222489 882053124 173140064 917428723 198641904 731814053 190679018 322430078 532122038 996130673 904367116 966977116 895643352 991772388 257095103 336476492 677745290 720230045 507024331 792040756 537392197 540062131 303460024 777942762 304274915 912846293 902621729 916369122 143336273 599412631 501219291 885737659 543844708 760467198 177686504 854267709 221518682 571978691 986898553 994506551 749887063 938007493 746987220 765828997 190282013 434775215 932380210 951742037 212320796 924587511 527637370 800743026 960544530 995986215 147937004 413065912 469754097 838872457 549270982 699571506 828079608 848030761 290373278 749733387 984722974 995610610 753457247 843684340 894259295 994234239 189042683 942913450 819611496 971620240 83717837 128121796 63539924 755220886 281533578 342226698 741053918 827019846 680144817 932950417 17242879 924872954 442423938 914421278 480935261 805428575 919094097 958331671 607979087 804650109 45901193 242330208 204504636 577626316 682664329 805132932 703886019 872123012 74880844 115418832 120789904 723950423 115462294 479766782 44190107 147675145 320991273 641648273 631064822 818631129 82149550 98357595 398233320 547572393 67433369 191921323 883682383 969870956 72652589 275811162 348338764 473998981 182157635 454428010 749271674 799275261 281059816 470811596 653190973 910533814 81580014 774934316 833703761 995978797 975058588 977373877 905033677 974941102 338057428 661496889 717854341 956212828 897879825 931524571 742033261 963164746 777276479 902056796 32694008 299187038 796885283 980583371 577575184 724003845 265088075 393560690 877773590 918243364 96701577 452666155 476658473 513271733 2606804 313429599 111774921 693908175 469447393 824328930 279184718 415355791 539903242 781284248 555084147 688003938 609742241 746003990 138289752 741407212 429605805 732588301 881443646 957529733 636124162 908389910 448209757 919059357 981519822 998218964 286563335 361517120 788322745 884077685 471456801 549539888 759049360 961006456 754987155 950170513 466559592 719687387 290216870 634680961 535999488 939562750 36414031 482448344 469480925 793593562 952525733 997610051 888504957 893306936 445426269 517772702 822514363 889113812 114046944 825703741 626978937 831350892 290146724 880602380 338955114 365313163 980170387 985134819 556961513 964420810 606511451 965732568 539149986 616585412 104845775 109318102 370451817 746975672 998801398 998975911 7184466 76612044 73287781 987305203 132250459 710913170 421073202 856836652 998100570 998139197 614048829 821009739 944317052 960060863 941965885 978887440 873875903 907080670 794586816 881950414 308720371 499062059 410300215 739860921 937889646 941497406 986424940 991444877 233977853 329663309 13481985 423598448 441969832 700701314 418933293 693781327 522219579 805453959 45848986 182935043 2457638 107687962 471232532 792750544 385155299 796307860 193968123 238840739 650754653 935818587 272694904 318289165 772918181 908732890 646856979 777250782 128602377 284018064 700766116 853256586 865718350 982451224 683774908 774924288 235572896 873572892 984990258 998689873 822610049 893067174 429777116 541042336 561842615 773257757 262958702 339463035 209029583 790434850 14598874 293893457 113229238 479130684 760639365 932539599 618487691 693160051 943689390 996518757 694335367 818563525 419276445 499739085 307340068 820778869 435384735 539343308 744459198 970630232 69013061 213901864 993797576 997237435 721616356 812048776 432335867 432769175 883435121 963647903 350483684 915515067 136595740 496508451 255797557 637296219 457219739 831139212 559820489 880723039 705973583 844594383 841970282 947201735 948883785 971742468 386367833 515080724 176419505 388925879 617308334 716792859 363536790 709121549 227378258 829776281 121606616 484596006 955479306 991719338 312949831 507312070 568370856 961501153 106569396 231372401 836523548 867110977 451578529 578554804 398661962 848184025 911986736 996300594 723459971 811318558 519754069 714693780 294527071 618894050 430627972 925295494 766694977 913586451 800884510 843672480 402782981 482888030 871427588 955697324 286606738 876496473 542280383 845681585 793472936 857849204 171010004 912090181 501623392 694885025 276478267 982161684 19195980 939214938 659290218 875670808 999096429 999114488 914948711 991174252 747024755 759357294 10137795 316288326 904258960 914912949 607643694 758862922 605308566 752511266 606859996 751251509 60647202 720336088 707977264 799269050 30486381 406810066 408077692 900143190 906183846 963649469 24731237 377633961 747007023 902673785 947630717 963668246 425948448 442355781 448490828 913149846 539825598 876766030 604554851 664960102 506510141 623029292 324835210 428575058 498746573 743689631 110434294 408770911 292729377 752924813 442408596 664905391 303363806 862042263 346072757 943976189 521691366 801315619 836700242 961698484 431968369 502857318 2623642 446166772 109674458 316031904 34420234 932241861 564108644 566206966 552797494 919705637 654752932 954097896 275578843 689191649 342150243 923604777 951864638 960479297 380696881 409660412 61678794 771151244 970939622 997007327 228589204 599861027 589229909 841899824 356061789 568205767 373288589 754175382 896324853 949124578 582873552 944882946 109817622 995490243 49960001 688978423 622651990 680908409 438978692 537680292 494417492 982168985 305089987 745499254 166269534 418432729 940041590 979785037 62812709 261343882 865982253 958629004 597097783 870192891 259935558 626956370 885089146 900846543 694010982 845403064 891127024 994748338 497698608 663768118 941930029 959565342 538716139 894602121 534118859 999343533 871888376 901935469 486255825 577902466 731284773 856954619 245817863 315405233 277525844 327368988 347486652 884918089 477241652 546681174 223022377 430871762 970001089 976468892 365787660 870359537 858695541 911116079 63298685 686697435 818536876 882755183 999043267 999323471 998192246 998475146 800925434 948371961 807441960 867080626 369710842 927976028 909121982 932434749 25629994 955630350 405069467 643564353 473025400 986841211 695557071 806137420 110595237 890710922 388828405 959795801 829941972 858062340 218715239 324952049 560105432 897761845 505262521 529377772 426441251 538960292 922755184 978367071 202509519 936988585 160541387 475933675 839142623 965063688 689568499 944983944 74290953 735112953 199285613 398516502 561501959 934911787 849550046 910978943 779102339 972497552 497506652 596154556 335637905 832169406 778388974 865329932 108911645 948335302 756679424 845198909 659892454 990687011 963901650 998474834 466048107 514433362 629861833 938491901 231590880 680208655 928031755 938686110 741528874 803379361 995731203 998710160 292293578 418865826 653839107 790424466 716298964 845271243 732812656 945870494 470251804 911294644 483256295 889149448 84862454 592505369 668315117 855273882 603515551 956347952 757808469 987765497 526028008 894082740 78687264 470359747 599582370 934001363 713838687 780445415 115349104 211740534 465751834 903314007 661553898 748278877 383339219 967521126 29406773 72557571 759865426 951112577 715828605 965277574 55944330 305381151 454115014 733015263 51196481 494947936 314302868 602072301 452578449 884820317 4079806 607705316 811098171 848289792 3212620 574913376 109791003 380000017 552224267 808273694 39324845 893609574 81246297 543514601 65349769 252569809 59479126 689090996 38828384 925077213 788970227 911293148 795752690 977801829 208054390 564389297 796575728 903326742 284348587 574596307 747666231 793442659 611651280 960526733 540442526 997697829 48627416 650914777 10508968 847485194 423855980 938947390 496258508 561662395 812872419 937097341 120722763 739660736 1136189 663219771 801401826 840707481 350493778 468816860 652310085 676719232 897643920 974543788 588786740 667674560 493600813 955120347 504173332 596244437 348134890 926921416 646661878 752238075 597979136 970769732 360410782 628863153 227088437 617538409 943442000 949570099 160822093 396121282 476679070 789661535 401405946 702218338 651726501 946826347 110999245 568960017 316909137 642586799 461886746 827271694 137751016 822810936 425519130 812744406 77700488 653886066 866761513 923360688 339055865 693307910 55748473 765229022 570467435 810076624 936227935 944239256 612761510 682096535 36243314 81901717 914874011 971552104 139948513 597321014 768943518 816416596 510528032 583036292 597470006 914310279 623096728 973726998 162529505 366809817 763173572 954423570 470506339 472236924 753040807 953413265 366082231 632480336 911592945 965102449 817748103 838263392 943058317 996180921 275478522 511198471 324172373 536700364 173843658 533024682 783710946 918543949 901994459 983007111 712847850 767595425 657629358 745075212 173391094 970281627 375937269 863955684 423859406 749415054 10247696 624718702 784339488 935116521 586758560 895950736 364539222 688688797 227023696 510499662 937276858 991096970 665728903 835003186 983532863 994629477 131772850 388393019 876089846 971716410 969270565 983863901 501807454 770119748 916370797 989183399 405372306 479145149 87725275 559190635 925043104 970170766 890771850 985921505 406326306 415937846 871986358 938186657 249721980 907875049 484793847 690916670 498213327 571690571 254021510 547461474 330001390 763047717 688411720 722648681 843601571 992472966 125111941 828952196 444702703 567166664 23750072 207764459 895892320 961480684 154427795 507975735 493647339 677660035 834840551 948696925 520908954 968295467 348215811 775638398 946180425 964880249 949942332 996926482 673699324 746292127 23076602 921162332 618655907 864315966 636094207 808103648 761131972 907782680 184662779 506550796 556259613 837093504 457426032 744014418 433544884 792504440 607059895 716730242 812495009 886072556 587905388 944659952 512735369 761164038 73098792 551188136 100900206 138233284 708864592 889385423 440067626 818487921 286413325 398747557 79780531 889672623 239931702 909569280 242365611 645641276 970424932 970957929 768867358 869983297 907095307 998195214 128904386 736863075 203466260 998009132 701637882 963071930 2499332 667349311 892301763 907104514 222277570 415576313 32050840 829348292 907178737 994972824 63113175 961373872 400433058 772368029 928184259 957960650 495612384 723372977 906709502 922909567 284226198 561755294 530552338 666634033 361005463 757973959 416827865 904516617 635129653 774157816 550284086 773931420 452258903 670552525 445942257 787586962 702592415 704751997 29028822 681804396 456127193 930571422 551689536 942888574 262589231 678453665 767552923 995935865 886207364 927569572 713818462 873555375 841607934 896748415 540487983 819756882 36169530 125558019 827169265 950374562 856389807 952037685 251619242 886619084 581865534 712332696 298161927 614622364 212249162 317660312 374985687 768819655 160376232 421973673 696443656 741566803 305020025 847248502 678204090 839025978 491882090 740946373 285930618 444822643 994629694 995381396 496691408 870374797 458155295 522040831 487957406 537140235 364008625 847384885 144323351 872942554 71763457 802566943 350248116 750615678 158295495 768130992 915418307 974854619 991889313 992809575 276133630 777038320 218850828 623758489 361913717 427873669 170855921 330371626 598632387 677636342 303958429 686384136 737288695 964031282 181436291 432436314 317419729 527207989 789207265 855438977 863295009 932432960 792885489 925807803 855529881 914156620 584393223 650641307 55833760 664367508 971242646 982414363 593626087 639177091 743041455 875428930 900133769 987255549 266592731 983795354 15768061 729716352 31539478 801452570 913646272 971950326 613140783 907364168 301599373 692954312 726267920 772901260 470975325 742060028 790041415 817358368 589897272 850951914 841178527 904138688 564106194 689320707 202220087 749501263 850087476 906901330 544399897 877427737 133338626 631390372 942135275 988019504 576794931 821752454 86651244 449446688 43062030 580863978 565661015 981431397 828715933 867656043 730008740 816015702 922090216 945390870 490180466 790281791 455121820 961877155 851285219 973693822 102314519 472227832 164008901 261579073 919367794 943304457 297405179 696834082 234589981 313113110 89247158 382854160 419511560 432813055 627791508 848880016 247767401 341082106 860719233 989349419 124350395 270572317 256152742 951248494 125530724 422991497 879305833 928390543 353338911 785297343 576052462 981813433 123343537 854141945 408851909 827871198 518332208 902955404 865230090 920452444 902722162 987333744 267077829 918095357 754387885 969491933 142862754 967618479 911717067 946367627 486174101 740797985 940360579 968195300 225219759 336889898 443235275 530471380 485044027 940667386 445257391 956372688 786395946 813274484 698361066 817515254 259899871 478527169 45157721 728131032 462351440 725638925 63645080 492008710 272955752 881670091 615886121 749457206 998383168 998762430 831491086 925370504 805414988 990331614 624681472 714345776 32410174 140697116 461657398 503048256 804844839 847868862 601387354 758870216 5566781 602739794 424414108 933033676 45954816 501594659 788819427 930961557 219718943 358809491 254604689 921306921 35065953 597055065 41541181 141815322 408450116 712582992 424932848 699469838 25283201 286091362 578905507 612017848 633655495 712167549 190920635 624303686 629233229 915515768 866178248 974522221 704664671 846193891 595965975 886585254 671445234 696616314 298772671 499972047 760104490 833029408 217508282 286113081 120314903 804595552 707233405 920777293 770609053 991314060 437021595 993067347 923738497 945499711 138956951 679742599 160031405 694790917 669764157 927240027 25431441 915293861 595391250 837234706 49977761 311059699 506625595 771305941 439642276 628958402 48085947 70739961 858794218 982780110 293078573 863041788 534016816 864180555 671068578 765417996 958784278 972032612 29713227 867300361 125520533 892267271 783298976 799059338 164476734 968540179 961787409 975215661 895181860 988750585 699092160 892549008 631337435 852783087 928290631 958724995 230157893 365720231 824353329 915827050 916952503 985667187 130542337 412335246 867721129 997743395 681588801 910201358 157652490 950570476 177167878 584079578 162656088 465570018 737334652 780236436 682100196 873570555 766854321 912289853 415783937 953128995 338436528 455452616 943042603 993327141 169745110 569528411 81118813 241238580 313008752 389112390 59193270 920171207 337260937 934072986 425220181 608916740 161430113 837811048 223203261 656628883 295500451 798952994 185375133 881188235 335525677 718799641 781752425 813478745 192011243 595376850 924103157 947910522 530040990 696685102 649226732 656055133 348099773 651525618 562203095 572222619 4964176 479331106 493309096 753456562 713674862 889783801 41741974 741904712 260025803 805710860 178043091 918734602 49224694 217891233 511712715 772250984 173326227 777875616 405688714 584318412 673836761 774601466 561520601 970100207 442560233 571177050 952132916 955215811 944329363 946780129 715140353 796068542 952196594 953817158 213316946 629016743 722565951 840526718 819203033 826945901 531691959 558459897 740372226 786117666 612271050 653924634 727944106 750384246 926507836 951541110 332685574 438415385 88001899 668100630 826227211 907655598 378167581 402789119 355231590 872560693 856306238 915800570 30549467 750247875 157770620 665604248 702619750 847011459 400009707 830387191 677402119 874694187 772547071 824924461 489848517 493634719 597569632 725035386 889947507 933335701 143540897 855354705 219779127 626655537 322477463 335822583 972794483 985029404 156247333 861966816 36056404 579357777 464202980 941663157 973198141 974840849 29085258 96608910 813530248 925617497 689505261 926333129 449205096 524773681 411532506 415179778 339294204 687883748 723824180 966788029 432559685 997949553 767943743 931252701 858925712 920773042 662068978 844050929 102052595 986931714 447115357 642409555 313714380 744184405 340913236 676302971 980227244 995347365 216781110 376188233 706137917 731809514 935146589 990495405 936992621 944879369 195752517 218779627 622542075 743521555 189456224 386764060 370608481 885096605 313775785 516606342 827776603 843777049 328040910 822066405 533651584 614096640 241206447 978193085 4686695 375386987 632201932 928914464 448746856 685763155 999376711 999386702 357920017 870807831 807885798 880856823 3344847 48263181 76368079 962580637 537810221 734092646 475781425 692058358 122388084 310708758 808031695 916339692 684287877 920353133 498616414 796471527 764096975 884126610 353654214 861776767 403266839 799072940 455786114 468347920 903537825 990734032 295346255 807633157 56072739 868112434 571807754 609374946 747433469 810539815 238689484 582826461 58915897 398095891 989806994 992315940 517109661 641934478 773360624 978452942 77919910 478260932 197627169 662842983 896652225 993349882 297946608 618842448 363833621 405060506 237311344 770864519 504408609 770284736 559488442 950736207 883014905 994186498 864113412 866334149 193549421 237636314 112117850 925099167 708496584 790606082 48469005 152599416 89397106 499555592 479054810 534882269 866599987 943848185 918117226 937437507 51517474 440854857 741113938 832683802 831212039 908823569 816385336 998967666 496076822 754010685 634046961 655282558 42022748 289954018 754692677 863633250 416660029 609305510 884322179 983729732 141234011 924886105 684371894 785279233 537301411 952273363 250985313 690520748 376122523 862818675 53853842 155658812 341207207 906315063 658222911 733226840 594777099 740011564 289879214 795681841 608836342 858409622 949909668 951292082 693565295 926173861 813157603 940597535 631675028 769797137 418780365 750751302 130638364 327315554 83057796 483664379 716395582 862585596 546657543 613911465 98860395 674234863 469189267 821293489 115158956 394882932 51506056 562318229 66757666 586811294 918670400 989299229 778039854 988253382 470547974 606441362 526871766 745193643 133364961 985216343 909640844 957576485 719021086 887252830 376836008 754616064 412456881 968328040 92055251 819152999 31307307 685106137 597838849 946364447 68828097 629198088 546555342 844039282 317838673 720571950 102230495 538833877 627376317 922843858 887727605 933463644 424285612 615938501 947754519 996541978 53954510 864931123 301578080 452124662 81778872 163294204 47135544 276750516 677408742 831398570 714274192 752662754 622222693 902617197 30449300 758948101 173827045 339558220 9535879 380282806 457002334 672362069 286644926 697020922 829494328 992570193 29691069 781526124 69968224 687931368 809500141 998586000 530864177 745077523 323538703 758327226 30940277 922070374 8707476 606698764 761783661 987923309 352592826 372372698 758291520 889776858 946276556 979300915 997836765 998270177 252285480 752614898 947112881 980830943 451967508 603151027 57342765 309942483 113916865 578195762 341255800 502560366 991877805 992691442 10408680 837822046 497147409 795793714 541069807 682035412 358642938 771054506 706431577 762601188 865002422 956182757 54747623 590025474 783794498 865923468 909818925 939771161 177542720 628181405 882369920 961460723 135575139 585166521 905502770 922464977 25826743 64735132 979414134 997205548 383966999 389068867 713829011 910452860 772247906 821586246 942167628 980126077 593463303 648547479 46094616 314283534 651732468 940026517 231985136 771928411 711044733 777372115 570852405 989324533 695645098 967576753 781511804 919497512 124795120 455023448 216649842 821570916 629010637 743718222 390357571 894964194 794524448 871261697 516143946 703278822 222295759 628286458 249658591 652294876 92155000 986115947 61580784 135999833 793978395 940806877 658463973 838510806 722625796 881059459 981033238 981884233 175461673 240260873 611445851 695696092 626782727 650949787 521738423 691582607 330622714 930758997 889745265 920923892 532789130 611051743 507006601 604883974 849254825 994094993 932112174 941475164 12542157 134515091 810290652 990883794 240261606 885233012 520874242 588876899 595337590 671375304 165843468 180203719 458751124 610909217 226117149 619737206 375218856 582712976 859525644 914256739 534263967 584466987 143915168 244718996 178458463 775343624 176768254 657154600 277962784 564877901 788347895 842355921 480835483 836423024 174032058 825148184 316789303 373397504 643733510 691671472 296998597 733578641 295296187 428184692 667088190 702337021 98858448 914069026 10265258 400371279 83772439 769666327 340400390 451494818 243907262 561927870 70360933 703500057 888079911 998776517 943267591 963920848 109927876 439365128 899144468 912484623 800179028 888532677 976571578 987301934 878356227 969379472 349093208 775697415 556436516 873358536 952151128 954946848 826357375 998993446 267570928 779272858 249767708 945501802 519445895 770419128 404505472 661234508 40196513 174260787 998686960 999079250 683308141 693010104 218098205 288413817 724543794 932145810 246964966 580449803 822483106 878682376 541541073 725717861 716495594 911020140 692906534 915493664 105708933 712214589 776641487 888007028 50990192 219300362 687383207 781123774 10191135 246443288 971541030 987094309 580404879 616891820 83178313 598070667 236868867 897944909 574242923 701456098 613217053 894888032 306019887 961806298 928427739 947422752 237746817 422950001 414160172 733842401 220676512 550922359 550053159 826875875 70714649 258335743 54699098 437660962 524013859 675042157 255596217 739691031 340473674 992733301 417491855 759327877 495070943 546652844 727827654 941250290 205940547 831423426 538608539 710988917 816020501 892034831 307073407 412656487 838168372 916658995 584651961 838662123 814774346 854333741 194061268 241517889 623092027 734227453 815635730 834932045 417434843 555715287 869757702 968210114 665513579 734738227 433429929 755237380 439502495 998908966 638013724 788299637 772531195 972418620 243006446 960750869 691057357 758710968 637172425 890161186 491411320 755826053 42259995 131200126 558490596 854972746 193941480 386137891 349143579 735115207 765203132 994655939 701055076 773393828 530909205 708422026 85108861 226287720 896337384 948679516 49379770 987184464 59081216 162211986 665669985 720022196 217760675 961257033 606653124 657144495 661496598 964267573 606306523 865359004 739677346 813839909 76824500 627754197 375182114 642422429 277380506 409287452 754286385 962443003 404335980 947196465 407004956 564524887 725799895 930800217 693455093 954038440 96225223 332341788 28894913 881131500 80539457 367578767 26061942 726421337 60440116 636952225 236512711 353836131 280583727 488103541 139570105 443907601 638754163 943669875 520240978 656345611 495593291 757010919 551726026 827176882 694640611 932863006 336262595 682638646 884460864 894742015 604886057 769631140 407080150 674304769 187555992 582077496 848888612 972751486 47792875 561077095 194986831 516123344 634520308 881300625 337631941 764111372 562641657 869945520 275253462 637196569 71785987 511932606 644502134 654311152 518614741 608960169 447165429 488415066 109853941 394919968 883086716 997517780 1403564 765229929 340646683 736413473 251691748 374940483 563827302 874055314 704641146 895207517 755415666 916858451 316754113 608359272 432067423 480830496 357169600 945311727 410872361 466393274 226991965 926796020 62738857 931506180 766585974 954867475 227182511 577483723 190496430 372112338 6908220 321893042 753708737 781034645 792856125 956606467 171144107 814047227 72147677 296816329 505018492 878877786 241238787 547507905 639093751 991964911 250024223 802469614 27066452 976238782 494679097 494764167 818126490 890999478 208481769 281396429 38049274 296438885 498860654 554237162 479664385 740627162 392094636 884097162 8272958 281408890 415657226 986074412 763460788 985825851 66196758 320812038 199163689 675014110 708713582 742780892 568905197 708196877 519149314 556394569 162555974 251751652 921348549 952167683 860987036 894022704 394958352 522551628 266214625 988779298 786437964 878183172 437471426 517870413 711734350 815784419 777969738 870272030 557978427 874624886 118626209 613043812 668246832 956733675 952596218 975480000 188414676 299170216 177572715 770577794 244248449 860099027 943452437 974131404 936075478 998577290 926921069 994077620 700978362 861750317 534086994 864750469 654823199 701014783 171360832 463994845 536639603 668505432 188712035 386359766 364952264 551265460 456452684 846098183 716995364 948912610 131571479 978119988 330149388 956580305 278053038 961634366 736672405 886973711 167662833 406658516 26567294 221636484 102038609 472932344 271376860 739314148 481523414 949248742 522521578 585101084 707203930 819241678 154618292 504501227 983171446 984966900 864115230 991368126 723674459 970034241 928243231 970884963 456869324 933586314 786369037 890819263 527543270 877391772 467804345 869620841 700735636 978647146 137110834 981934173 697023059 905154561 300444408 621848180 84360652 307909115 111634985 732412874 195208518 613397489 892745391 969708020 973291246 987828765 619870690 932384098 21205276 922315306 854214554 960568184 926084053 974815650 724535749 739739287 330116146 379649372 638883264 898499027 761539044 973485788 205617660 469421035 386720306 517620144 60242895 685608595 96919645 554674597 999325655 999354135 996244808 997380656 414038381 515424555 241057777 383000292 273944566 445190344 830309099 930776786 386057835 799738413 96596291 621020540 290388523 485327860 38877708 445039246 872815635 874778584 293100776 894716691 339831156 843278458 576998066 704990615 596112202 849795001 591982201 704875162 849920395 889525679 389287155 596540333 564648065 652835604 319575290 705656167 51464852 491469266 828136951 922767869 500124082 790342723 266347828 428608971 43048403 806781273 510701545 561033328 389325876 524035951 624648830 724324185 282643018 434594916 400036872 935603824 61517647 826600262 736488246 822575411 181475164 790913164 858965061 915784578 299808204 477884678 826370521 986815682 302567212 838026023 466594259 770532256 298899693 373271334 411565271 426323881 816467396 949164277 51755891 178625695 536861580 784581115 20310252 743504431 785260310 891227738 402499163 848515181 415261862 667129354 158664191 469890508 325003362 540752822 318885346 872873853 91388392 484930852 430891471 841368083 37755393 520738545 617894023 689142677 75658470 419154709 752316230 905680571 260444748 370054735 22038517 648824795 269842846 533959556 179133860 614970473 379666894 430081568 156463970 711352397 356231497 580450219 861761660 909187442 304093593 586983188 61688468 503171914 785864332 892771267 839353636 992944888 518676454 780209424 295900817 344656598 406962742 673368267 814542196 828350252 735856801 964202728 662089468 990077402 337038063 656097714 371501157 909090471 465953472 835783278 561820233 715941360 733491468 745966312 909179230 958866608 256583925 494060249 165270667 926961425 843214968 863064007 220805389 305110198 381267427 973026110 312888554 497074231 736106087 975795596 599313868 814082987 195644238 656923620 503185202 944651304 448554648 564415580 245608309 584269703 835800228 934009570 656069020 900813332 796137717 852150515 752307182 829875984 222360684 720712918 103903660 617409805 340534576 807282821 514581581 957886840 825263736 935800764 446722823 840858078 993733901 993934782 52816343 112080945 412199672 965467399 655238422 848404961 625046396 948194267 920263306 950073116 73415254 585135608 326547960 867623291 502334656 574987961 588826985 698519219 595027867 990285636 431633256 589075806 79079352 219237590 674531800 877921525 279060541 899423780 252145037 576702874 426295988 461405055 135262371 194282117 411714493 773514753 968270286 983376089 795148170 945260208 473812141 949437744 687260213 923762758 192431220 494247384 639956927 666702335 993411740 995154606 262039671 855660429 611272797 638397397 137345270 976608573 430930053 483310027 764631002 944537433 824700776 975990676 624079230 982058828 496094327 597104904 200496211 420993153 469244847 696379279 959603261 978612920 869309013 973008393 870056492 875444532 580628613 926397245 603984165 902192246 633229784 865428721 909066843 969786172 648732437 774489469 804027461 965189488 415043043 819979343 460528116 591679401 425676713 719409146 599449768 642126374 449887901 822020928 782606586 997731941 10034190 546534005 296121345 913074694 651727741 910334896 409130838 418132708 124259719 253662407 696832175 703652030 696297691 808666595 43733240 709297530 951817480 975360613 922203053 936307116 603336619 946658556 803805308 813398153 352688662 742827555 872404226 880864089 392441172 616235627 686697553 885865945 525385950 877070835 828779040 960700230 638778019 997063856 373690228 708384375 853191010 898390724 865043935 958242019 229311389 952770657 289334267 369920541 530227749 665091287 172810050 295250201 48353486 294947724 870195375 962498459 120896219 529062371 20487217 838522810 589889862 641937442 622028100 637433950 599627053 806658830 800087344 981902440 449639813 553593605 962651480 963669812 221976838 579757308 570815404 689335176 181572275 698640735 154372723 976559466 414092353 898132563 915340595 980793167 793600093 793784109 917069534 932958381 563653280 868774177 451974991 748896688 580196343 732155054 51552871 818511219 607631230 768436495 460278838 907857961 525229960 630918308 946540848 975984175 516235202 782879152 561315182 660696426 127110314 549307757 349334972 714426595 22955953 640978419 634027919 884247688 814115663 890817170 311337391 426058563 981162331 986770429 356802108 946317426 937224750 983813852 140270380 470697356 367425269 468467821 795211730 838145629 20982954 362348411 919676483 938356923 737535977 937391856 755366739 845765720 639884616 665722454 295881137 548156275 697018789 744680472 814953575 883049090 546369425 584002530 621927077 684178324 44348355 365259253 3389162 188100632 399102416 736982604 308089737 701613192 92876306 810946476 204390965 687777967 260581649 526387773 977196552 993071485 108336528 947328531 319694231 524800432 512125434 848059657 298586323 639775721 360654545 480367937 548014258 972126517 189998600 935736201 364909485 462214529 644447261 955279805 745013861 980021857 830837052 926072295 892910105 964594139 306176875 399491524 472056803 872829456 605364501 739968550 31024957 820833175 784402628 998133122 950598006 992991638 363898983 938957999 268830692 943077975 940873975 958542668 699764103 971543515 494352160 755179151 581830364 871509861 206431486 847474448 180075620 387666688 199228642 949385849 484476466 714877099 116624733 265306902 838776119 840284553 649203738 672167656 623281184 775628089 381946744 998167015 944034769 954869225 349744146 579241831 372182699 839403224 669087633 679609663 225249948 386351810 283928039 623425616 185901519 945061832 206503434 840546312 927740539 941867842 148349637 634546654 24922763 643544396 292626823 409020179 863819679 996084933 634055725 898885009 569204940 665958342 328157794 542317102 24665384 840290454 232696794 457587810 860678031 900325947 911583687 962037161 832633269 844585411 209312928 535228217 880728179 975691105 427991365 763597923 331350410 738054458 455681826 668146514 140368638 756030778 130800810 796883974 881180798 894423992 508294838 958331536 359042641 670080476 942352104 949889230 700293533 954160682 303721131 813265728 573729785 781001009 543356548 866961315 20092443 539502565 368441330 632846697 306060816 483993201 767548081 961924811 649779950 986902372 652843033 662704611 293537839 839028850 203740324 893867673 665622353 691777317 88550834 233835642 921356270 984406271 61685533 328442463 833185385 893150053 655448319 992643749 216478755 523711811 92434023 652314064 413097061 528975568 946132155 982571014 226877227 310290764 540945943 837363488 953941357 983411516 983048236 997712560 771929913 884925362 635029016 885020176 262199859 859800977 615237430 721310737 562222353 667206122 926700294 930145969 49165039 799838237 19437864 434604952 841584953 925065946 494971043 506322321 127662288 719613113 946573855 983602563 144300914 596457781 237162371 961640080 21796106 54821787 473039762 963559889 269156762 980206110 153099705 885044095 619000879 620788176 34350984 529155700 37020305 629745503 476940944 870602838 482264942 911042501 519447910 759853294 237590079 390089862 905079867 974151409 199760590 353422052 762976134 971333560 284319620 871589374 346081608 565123524 229411123 932855588 96818468 245072167 151657193 715767897 694991848 853409060 58457953 596860401 748511450 795554658 660358296 904555796 812928179 876932721 959026929 996890493 736188089 743163247 542667143 633729454 218432799 706258667 239076048 852937092 120242734 812925030 772165177 807494427 684112571 945703819 919884541 973539779 119995008 984139710 468368276 600460138 924558059 984306758 495925634 868853834 455873020 607531605 577897433 693233210 723440740 950500889 542376869 883350228 408151329 621239888 141636059 310927127 716507955 722152553 961652318 991645391 428166842 620313734 626184776 778608992 84466017 287945919 325595561 598367554 454756490 748309233 646952696 981608176 654307864 829568721 917403974 964181523 472877168 663935171 686510871 983182331 323543560 846387886 864651464 889484743 700735013 923053417 803336350 964525513 594472765 743129287 654410539 990981608 70234897 926522081 350361526 704261041 338780604 354288212 800162515 991452905 421418532 863534739 966871794 991763668 810113311 884845574 990375416 997557285 243673002 691945355 834979936 959911635 467691010 712276636 129864474 397410266 377222353 554342173 578418056 872433426 417549490 821843988 930775311 972466812 72280147 189646049 726817301 938006967 728541833 990628624 199366214 680929738 371471870 987769797 143953867 946039262 590934841 913683306 249815344 312315808 278148745 867504811 850713494 959533588 778443152 994543130 569978844 804941192 258962167 860509895 135972507 796734872 672584747 853583354 149586396 215917113 103510259 152715909 270735097 740389153 878686491 988040202 695015923 970124302 512666433 577374035 551786879 847020280 742896350 744242743 416951144 449816321 775078259 870121277 307625508 516529937 913493323 984661436 405275506 653544138 45032321 177275760 952832750 965322994 611737240 796528155 583416649 839699978 108208201 269465496 340387314 869184458 767784639 834345792 168435162 263018158 355175732 455697313 224121668 904327907 880053349 992999716 64218065 324024977 768031907 879395493 183231124 656792313 527270436 561133008 328691130 389529658 169071493 868970296 220152745 543353550 424386458 530399761 507901276 837654117 763904728 913095548 539318686 607850906 428735481 460526588 166039574 734162684 245770778 465585936 914924879 975899605 165194508 972189457 298438437 965295256 952515157 961005614 743572151 793684543 112953267 886170044 358018007 594294480 484009843 569147555 671785400 912253584 618825759 801819949 782417998 883738763 966674780 979258418 402764143 738490983 147629913 431896257 266215659 342651120 569036038 743618205 215468403 709165936 960794175 963096688 610059598 981790013 463391767 663536653 441165117 937351124 640907367 981961242 300462277 685361823 115932815 958764008 278095002 354733023 942969755 986546382 818949974 888385697 515582350 648028903 242437637 791135703 441276417 788623584 914410318 986075585 154129450 316123500 170423726 689210450 306639947 958849936 220879570 799085467 500802025 741821364 279156119 835510786 923138123 986508496 943878472 960941418 698086629 882712303 637917723 782516725 158469145 811803751 693108467 899476385 22539440 112043205 935129690 946108749 170747163 859103723 579293770 661473718 181595720 697049229 246523635 334319954 160116942 707661146 236204409 455393395 541170270 586891195 296921275 520012494 191076683 210428029 874162522 879341223 538797669 545924625 323522772 709748293 269884351 543256486 371895307 433549997 160732613 252877152 791791861 997112896 940993958 962356567 480407054 969971859 243938699 909827489 181007427 796661560 74601335 699920088 330719286 924936178 770964967 890618291 315511045 641978096 204531883 266008486 306759577 351569624 982212548 986012484 576416031 643293373 26687450 603800613 730343663 960877080 239955597 794173632 33173150 215806515 137257526 849007261 765719723 869966551 336606296 478313711 695575100 792803155 762134034 827817736 175379565 887456291 737146194 860961084 702833588 890276184 772456905 800598841 144075316 310105200 149331959 404376312 37935518 783002218 88235832 830104278 902654008 931910105 81908579 716604156 17543054 614754154 284375407 441424979 371671510 906749187 72797009 741486498 460819503 505051795 621952958 817096537 468913245 884624044 288251642 325298934 7496657 451810086 951294017 982855831 454711598 921283497 267397272 901395142 674199758 802860025 604856841 867411830 992802689 995614101 321817838 496133145 756434666 799157613 108871558 149024682 603628206 810453836 801728115 968584534 185032712 256669666 205936026 637968450 474317541 704280366 885187779 946812425 721521737 953399116 474775820 725022146 132609789 360620456 379927427 856160037 225815012 951044359 876245168 998820095 869290345 993618799 748234959 815784483 690051726 782141425 638187067 774047514 199318266 525963667 789318665 812521436 169148288 754483600 971897956 998048496 506000584 785299056 52956789 569959463 602270211 931189563 709354141 954257929 372708672 567987924 107673841 995250065 818683794 944862574 749402846 945850302 364964676 814452640 323207109 343409035 398257468 754131574 783437271 810954112 781735080 877085453 625407637 818186775 268438162 965041215 973759456 973765800 811592113 936400162 737814491 757985969 705678037 798284880 758446878 807811233 535061390 558893633 913704047 922852654 553076502 890693441 448388794 657996195 184326569 739147009 148183767 403676075 180693822 675930887 698174162 902560706 774234730 980753470 576524264 663500680 938885455 940498533 678659201 951575479 278782030 864585513 351668337 790022044 15016736 457119717 706282360 877210693 168407396 278302688 144464025 680225097 223243000 890565502 106641970 401787804 288862760 419813840 935738617 946034293 931379371 947518105 479231089 919897406 711074368 744073579 538960469 759112717 693586417 893968914 922580791 954215536 63619792 744433468 361349410 903572573 226258349 669476651 903286208 935798937 212424083 428928489 602491698 617426177 386978777 802599007 807546225 892984005 616416170 744431653 208249244 431066147 2568136 207358915 971632581 993814223 803163441 905744505 885993402 895233564 992617284 993082540 393900099 716410053 323389972 460370565 151383452 526054485 296076235 701014551 181899405 506361403 865308924 990810887 55169528 658555031 276797871 937794218 46524883 301738859 233219612 619802639 472560930 583751789 45174928 883911602 214121761 338725683 314794145 803522136 386847022 644045116 237545002 541321264 892843940 895074069 183990510 823512925 344377393 382520341 378665217 671887399 83218922 236334139 438016299 760475402 914722022 981991582 471562874 982762329 648347978 671822093 539427949 832730243 185652412 310288359 677138087 689868373 525653798 802866795 44697821 274343111 944754243 973064113 703564155 972199538 539870655 808250052 508688189 788531010 342416800 925421773 700407865 895323991 620422304 804327277 33950123 64840167 189841827 449258218 592482510 814387615 970023534 998136865 463529317 776387037 106966311 688459902 552443908 674105961 435620203 473286346 316467978 975550354 564038921 873197656 880696534 934115764 350271520 560646281 449319867 788256060 885057708 909169972 740631964 993546326 706933177 789433004 949987836 980919292 873704604 907735477 264564741 995380890 69356973 462634178 525754967 574454507 436293091 555887178 960259448 993559955 309965678 672216865 476780490 552281780 737401346 757445580 262381748 821021955 901765953 979258151 777043549 865526618 7590158 607205981 501461023 803374783 927124908 990402921 3523787 707953921 862589966 943383033 124436601 991740940 376248824 568406606 338680477 557025195 432684794 865591490 502279428 905523252 921857795 982759836 664678118 944082779 439699562 775214204 601231978 691263983 957527934 962527862 628278273 793188190 871459171 968606654 110604141 116433651 544988445 973561278 514176820 612456998 191633738 504523772 350544375 589102018 409734473 760471198 553736418 691507769 101680340 231195551 477728325 503211367 133665488 753022044 837906628 978392835 436352588 959965855 70525419 711391184 896645302 930863144 698548822 806023778 54903745 107688908 608625731 667084951 670216079 895564167 995871098 997770708 322570064 816375802 977142036 985244207 996294325 996518259 202401359 617475950 975493976 991295049 304328977 650726783 691206275 960825597 914644436 980953555 14155773 381701697 223494661 292696878 907525588 924519414 939469268 939998383 923293572 983439838 50402829 287449848 149379994 731593033 308976240 509789923 204007168 220670562 483078786 710173755 193505453 914182467 755124443 842368830 467560065 701644978 315502379 932655577 286683812 290039058 536758945 730205004 396251799 691125369 806092277 883085006 475550132 531189430 32300458 439919717 323587937 959469300 370148525 478126424 901317082 999127948 816763975 868691772 47674404 501664036 519893041 949672895 783993165 961875654 928863675 962736852 696366400 821553999 614514189 710448285 225558443 424015173 15678334 529676669 121758043 660863661 51776692 829019965 450482667 661669149 698242041 755998714 281430464 379346861 103146207 730704282 454548899 815587553 183869633 900355726 361766189 781783739 631237059 736547916 834569764 983357752 924746905 966810588 576683660 726182710 593582473 677081532 866014078 879528549 494913586 838581303 358527683 843370898 776803110 922396792 970786488 994749719 464235285 725486400 828017997 917883733 88047907 472717521 353951671 474379242 891857069 945482274 828563580 955162515 586846022 914889429 72169789 532129832 20565442 732666195 80409382 862623027 901568403 902559122 115979770 279004016 508327061 785258014 283231152 998821143 681898433 728874146 819354428 822163562 243624311 977032758 621305146 622679347 537643643 913635219 119255998 603655711 209171856 732034440 737135754 862676126 819238353 888380358 697586227 763445863 189764941 775234350 149194666 549011116 301116852 617608344 505554149 606854321 138242527 692916652 215071512 951541665 997594651 999332127 249160275 701304698 149904582 712271096 323884934 470466271 488336559 710451044 28892001 857309339 176497093 321876959 980408870 994127557 352740452 629997113 221232436 857748047 320114763 535598715 967947200 994137353 808630225 976536434 205344124 423670355 566773760 870919281 620921199 891249405 133000103 791703553 735407606 865091219 329839313 631565065 144110789 428425210 365957973 887570365 839209290 966315307 61206578 829570727 113977004 131699635 306574901 660287492 405920219 869143937 66724111 736869634 931987457 981761738 504884863 529239139 294558582 594321060 791866449 802111011 125808623 956517544 686726687 709081945 738257951 905485446 516038561 672206899 910334771 961228938 656986899 902080374 473217484 937044452 227270031 425852920 807610949 995479695 767443370 866908269 377254746 853846639 447828843 501327062 719430404 748513157 378886676 866159407 365104735 598124709 658073413 948060185 672874866 798627672 375704692 897297829 684005755 857721719 5468902 671391876 194780316 403894722 112256430 242908383 352481325 492903099 128745721 400591205 516056006 776681972 810487917 947136450 222595736 504984446 808839391 814331084 216745708 654911599 615154636 845225034 519609893 950650918 499166311 698054056 28209803 345821188 547697418 833362818 856464947 955985368 321754079 459919253 372410264 978222972 566303511 596538236 371048969 580486539 729594418 918313388 445752085 730410960 551611467 776105361 674208124 762516573 11344528 12580757 734189960 738136978 920181070 988710474 304410695 713467432 96011216 423210216 622830365 934906953 763086355 962514556 696464282 929508467 222742720 590359332 428838020 641498211 627108913 729963469 195944323 843892642 608841670 815440444 811609663 832258333 127716650 656253576 74208538 194201535 79611625 143442316 720926205 934058634 229757849 804554863 741345513 821230402 817998170 831326585 500465470 889174097 623892618 835412407 117844376 813906450 708524025 818543359 858045116 986114119 662643105 689358579 498646630 881440926 680904604 776963274 113371566 862468297 287568531 327388723 375598005 783569466 509288530 534835882 493317717 642154734 986880365 995042341 296013827 382709614 825561964 973623690 431158154 663582447 33454595 359012789 622350078 967605798 251938764 303036232 296729126 958876427 57622624 524257698 920982574 950144211 592095684 807894674 235813817 830409763 301267885 791875748 215233809 433142910 948028859 961770015 679279778 695203606 873978884 950777090 185608033 998171487 856029952 979472044 945967433 954435033 810023724 814748679 295601910 951227230 747569929 907370227 576536547 752958901 46643875 835301200 167035629 337689783 615884874 641690306 273144889 904777773 608398946 839150857 935190920 965396322 704244790 931883100 153609409 838513883 733499971 838147267 919264196 970953533 115865939 501480701 294333532 898218097 206702905 541728872 772059649 956305760 540800255 615008364 832028169 902396343 884071506 892086281 564256577 974228179 550397255 718233570 878569619 972716442 180135141 831278110 786957498 894840925 777169670 817216023 605791413 745624683 719947029 892562384 599019341 846473051 188338232 685676455 161329007 944185493 560131629 903364425 466882063 930846538 296398280 725959138 781337354 806996631 502365456 810231272 845267034 951482798 434455559 552963255 259162914 494387406 772552502 951909482 406266158 555257199 530166638 774591806 197684959 492890146 257686090 462764798 626920389 947812587 305018796 408741879 700987084 839798857 29543592 614965055 524035323 528991271 570783192 737086991 890852563 994510420 104505883 249384946 512420565 679279328 973644480 980002558 461427369 828978406 417470429 907974755 990243958 994794028 736461428 773366233 602432987 840042408 381875713 860724037 716487056 835650091 883609298 921397922 988943343 992198660 41916210 907501374 44344454 109600872 295480340 546235860 366205776 851717086 782878061 902234985 106635724 140631955 926812684 938442034 989378162 997684790 106341648 390439252 630031453 836746999 582628216 859984608 902147895 919491285 659131273 675762426 3698404 596474813 111410607 456546331 131092656 148974925 884675279 976191030 888654788 944973775 478237099 527325115 42104235 213428812 41623373 650002774 822351924 955314237 623844134 852937952 475299193 875461351 570761843 593499882 268159307 969630119 199639661 387828286 405435380 585125137 362186976 365188513 326468857 475212169 757638682 955037203 285880363 729885906 851539075 923673607 138340005 828153753 808294550 984184547 979726727 992975054 990960921 999005173 791905871 939760588 688666902 774720390 632748923 795186707 780603467 892721765 869476083 898785028 185008004 787528189 736168732 976765702 806931895 903445431 293635050 620133495 233186304 730292461 651069428 763551720 174632851 595751267 438745636 609728879 738695444 752550320 41440722 101709971 493442100 646952969 449341707 668224452 302721974 449035832 657924007 771131933 637556722 696364180 922385561 969514799 13453325 73399537 289224325 647419782 690670342 750031255 828061835 939966846 791377830 874883048 569647099 840752609 669648140 715137523 106639007 113676200 287283573 897117880 110725271 390989870 708025097 977290602 479052814 703740220 459106477 762251361 548028099 907997289 237293773 763536908 436706550 476885719 272455869 303359459 918286443 963994016 828943392 855492586 521809558 917858276 637501681 939056096 176339874 386163908 193216304 833173815 292841705 697175405 967913553 987795479 893913803 934217822 189595604 516966111 302777083 694059079 442092289 458429143 184255769 190277873 853802943 958346388 544102846 972598030 247533344 320308208 515732512 807380489 558012883 896221268 792936463 800746597 917944023 980539541 403052851 487179664 461288020 468758576 844915402 869196956 422668117 938228966 259481085 364775875 477127138 809928504 841477240 967346090 559793957 732694995 180552992 204871185 336121424 606941364 202860559 261428811 762109888 849023707 954908500 965736463 78552446 179961119 595025881 768922999 84332476 642861189 984495760 985120402 161365977 758720230 260698674 488794046 361597768 799063757 481714987 906458513 39566368 729606875 39623270 55915409 936675875 961861635 494198531 706745234 621788367 778486445 647052184 879741060 309676551 496281618 740847831 977731394 289599298 845659747 222847647 501539682 463028371 754623741 521156686 712732241 614557880 861020437 58178919 977710334 544443024 736265964 467963421 769034319 758775199 887948355 264530344 417420815 647246162 778354385 597685619 617008729 518857702 752807376 541562082 964702215 113360562 950317986 530980261 908798072 492569166 552311325 226577492 296473970 725957291 888655453 951582691 983919916 877136524 986124562 395375822 616310646 944306976 961747037 318325902 942295944 550284856 793866257 808155013 942931215 420669493 865639474 164274683 939074244 51341210 565279867 495384532 523550076 160065822 832384705 179103479 301235778 609760132 723898786 30109381 239609684 973573786 987527757 165165791 944864730 763713159 843171631 861588886 939107460 330382598 659509074 356450868 931676241 770795891 798513584 714206777 985445971 13014041 931617184 795076150 830417975 495132374 739020491 470418391 798871125 369388721 599508528 753412494 885947813 135739138 417399052 803252192 975358756 908729947 986528606 56547839 557271085 655742750 868234349 177147049 792982727 663845627 837785579 831991437 867385735 924416543 928549417 652203587 888918640 70512080 230613005 246145200 415097729 682419019 804647926 315788958 811945736 597652249 971621013 950833064 979732736 7872364 600469000 476011832 731482308 56980058 857044864 862345470 880566290 292436950 548454279 586864782 692583232 922779093 994060357 996510622 998242123 708991570 979927614 180567060 592336092 922653094 931900930 818534496 929980231 738572536 804234900 135302274 768864504 886950185 929323706 419236024 975510355 501115471 755291314 819846068 998145598 198339575 425045982 328873623 492236466 104856225 278180021 843479886 895073879 574554706 809976986 978552276 980748344 985211396 995569601 305351672 829778938 545897124 571999041 831231035 949652175 294618656 739567133 199542613 802417914 994298929 996336087 440197871 701156505 788052530 842673930 581849554 888658655 217832660 976969366 91896222 214893883 322320732 997831215 93848987 224627017 83023961 307227308 220583334 569800170 18903352 48973119 734170514 805680667 938295434 970404104 146997608 360310423 299085882 821959604 681896117 850757604 216697991 838244477 305825214 968261128 79001981 901856028 803452886 842974919 245781701 302419567 73190359 420932873 487748908 563884014 663853817 665625554 286742371 580840023 713399534 991529597 597808095 917728499 765512927 849134952 362259607 645931796 400024402 592333619 65487928 224417079 112516591 343680063 353294494 519680256 41643244 156853272 187431946 195812218 83104735 650168084 392548096 755582285 351694837 540069996 364597409 584867935 290170451 626643495 122970626 934439478 545813656 683924247 758415908 794398003 217251409 650074315 887531028 990597057 29190190 120971760 716243669 926199375 161768691 827653294 559005986 975645785 216362347 689975683 323709197 515769648 100697481 620747272 707406977 713436477 286033491 854619819 877017276 943642180 575965990 980089570 730359981 969164843 150238398 524740352 884755905 908762787 851858644 985984570 246017506 737088876 621773448 766326310 480495433 814979165 934914354 956459237 750318363 895458299 353027499 841617571 159914927 378729407 245475504 753135912 309841089 686206580 93067559 191566216 310856605 546090330 903179305 992904942 539823549 945404050 259717019 963423651 537914252 842929547 592283110 623625939 628557733 929147247 879165883 976101514 722589502 920116652 855586914 894544949 307777338 719082963 772219789 843078071 30430273 784139381 218077153 855186519 982878034 998823077 246050571 297045112 484140939 842155216 160037623 264978925 281793654 540683637 683324421 915881297 421061058 573607519 644835939 832107836 899309822 938989481 288554455 380552970 829632398 972191449 645591527 667882881 6759834 401789534 768314178 974562686 325767309 385400828 924569342 927241618 840980323 966252814 353085375 576536212 184167532 914011300 923602832 985064202 938807374 989824292 806568194 963375968 435784724 561318871 478951668 973050626 777519361 970368601 775135617 949937163 38243796 466624024 352065303 615710129 949723107 978299572 837565496 974348198 574507620 737659137 334057480 402724408 808944495 827774100 873117419 919750000 293640476 883026122 476072545 897718473 29143904 868519939 368419575 722090108 77954222 253468125 646682639 878288049 899760903 934740789 453874434 707076596 102894740 973780983 715448664 926990379 322990462 435023108 84781511 799896992 957532750 965053043 981056648 989737437 658847696 759789484 272940625 366072778 662431030 892937286 659633656 946292338 350808003 951183111 30221445 800093077 343221021 625234949 555800044 693302040 466226740 789225197 735382069 854912929 994164026 998899566 731253568 844805725 493022832 502059485 818424147 910873274 833162465 952334912 858368950 900695944 904796361 923401619 129093267 590197600 591122191 861962699 347208786 544019586 250028627 959185025 458840979 825951954 407195799 610503334 753109421 927602614 989106966 990002851 133891534 801442967 581575156 998562195 718566858 964095221 739009097 832942469 841701791 961392766 800558087 971186528 433401616 687537000 205893097 328136144 954704053 991262417 589586614 690605864 197183377 260906546 949008813 995545600 465736049 822506606 31247074 556134646 441002150 506166936 958184533 961282324 438431535 502643413 385487836 567724210 653500836 895521144 97646623 973428564 773546204 906413426 169988561 444625399 276635890 637525532 951327417 984692972 933381300 968792433 117990000 745120857 86413747 136300548 434680891 580448931 273212136 746593619 906802892 942780817 234966166 828885796 53236383 888039153 245509549 479125538 195962033 322551693 73849989 330798281 276554221 651356036 857331189 922366739 460178187 630869428 450548893 910294399 173993619 703046238 311382615 944487091 882689472 893313119 180641115 235251690 479304313 916912736 548578518 806424874 199018250 866357799 414070729 565319023 587636707 858214514 546266511 777872835 118907533 929736392 514745283 557546188 217626872 636850911 805962504 911795170 615756120 999217415 189342501 560771718 731974745 802252461 333949151 692232289 162701242 299476474 213654796 223909096 55300638 603239043 499399660 880019691 624149177 952179684 168544239 204846838 257261552 501485079 844039572 968219096 712333767 861529413 692515505 847971259 349537294 848055298 689561550 976482818 198274488 315099962 566135575 855339301 353191157 558618838 539445958 651944717 929247502 949533784 151921338 941848200 488041311 571012718 394677271 938478018 440639547 776822325 177064945 283784226 372076137 405686828 487027299 966451310 935793106 987209639 97171380 931744655 827385142 861931442 746574019 754738792 694299875 901809748 290700064 439059036 953911511 955645975 628547572 833783091 279180922 945244909 938056432 986158379 758001314 921144738 943639626 943893952 991362857 991620203 276082291 852117259 12181229 476528837 186628866 687248462 813590000 818807816 774530309 799165828 848416637 857701445 762661201 792398573 641264915 890925086 257494255 623973753 665386185 668889675 507384770 580033377 364059341 991730044 583288794 947669794 442423548 579947861 771793362 837928609 333375650 596783214 821057050 972934434 656103369 884541311 596709049 801855190 327781324 347765209 272191423 992580100 966789637 974106432 558441892 883313223 849380360 984680708 798496171 825591113 879374017 889005929 501799606 719209699 752270258 896567523 522952445 822543255 931239417 957571605 177069197 811513956 193801084 765205438 247587121 584333173 250064156 322379172 45866636 346889232 829909223 859450670 65240073 917429553 191312855 825920988 925366598 965187789 476559076 887827855 531578182 669935845 67813472 266323345 499625238 662620549 534677202 670630671 536474712 978731164 110553911 847155086 633031363 864794070 110045329 271961961 664300494 793577357 556205730 637311288 165276006 845518875 308121118 340378371 866654408 928732135 320750305 682749523 498722438 674778900 627152414 901637000 220567496 350112050 497112898 642735005 891141114 942022519 880214801 970314984 659218548 710328576 988277510 993578225 380367915 523867339 235849757 409434628 146448640 535581595 907262830 942912454 322230667 735785822 352371529 835293352 277946702 762740325 726463468 905452005 845331105 852852665 276444757 725747723 116322674 317601018 946990608 986506615 70525872 405977014 964901418 988522234 702758338 866822764 376263224 708479133 706426464 834752799 285184741 766317980 371046909 839553864 42969945 398202850 17347250 880090124 187579227 486719816 595376352 646789093 615384969 877049746 753791676 950831245 886406679 972869596 613821452 773648240 398452688 458820547 661129988 840366595 289589913 763205783 256579717 819542751 163214918 735588104 75223292 509762795 621267718 826677654 367065738 906053406 338678022 598444084 87733574 595925068 112852764 542849803 765217681 966929748 164591645 870320204 463369829 860103898 519114128 959347158 121208570 368976968 650273927 857951361 194587199 218850513 834939300 857611809 716848372 983565602 98891975 755770049 16640160 160217697 485317806 513569973 46682377 222337752 995961650 997155430 259946340 646944322 729350957 911400890 272368527 757002615 830769168 880907159 932045437 944160539 206924332 968258261 395869787 677824798 914656797 929231928 152814505 681013798 399209100 869166366 839827556 974640459 171874525 176861697 77671740 515095483 43222839 700472917 481319628 811427330 296535746 827507191 992219948 997871257 822679119 905091266 586252742 671876667 505893787 892458969 260447003 371302139 406096355 593063081 356921332 917224718 906621443 963158839 399284300 845310149 170870831 979211975 209795231 987046817 771931653 961372708 804556837 964759423 997350174 998376149 204211001 225429299 155165625 771773046 182494820 888233141 809412750 975628562 711136844 822075260 459209466 621483625 850552218 991844715 415311963 464767936 708117788 844170637 867645658 938047163 420328201 981664249 641108446 770717614 636725367 881994572 990890266 997420794 703778515 963465821 618077186 804184245 606710986 989573241 476045783 618146126 171925773 788998656 863814708 933202144 314198936 653036906 127400893 191996935 517994839 843307643 957637439 960110673 286053609 670208175 430149685 639207556 85187698 323664750 346469594 444827170 465535961 626676672 215584424 633170411 935688070 952813498 144835311 635360068 245964282 894875630 739234939 805976649 872667689 960881836 753648075 955185545 408467111 656401456 371725525 716851201 842004515 949344767 528397425 781762244 859375928 908273794 601984088 682021465 59966829 363668938 271138859 628738471 698504316 871213999 461888274 694754295 236940576 642862464 161689396 704923201 496682154 734563555 969562753 999341305 678011817 685663629 191725548 696565550 543855845 992894102 578215799 598335414 22755861 330514191 591183005 823959393 156444316 804120168 973087866 987120208 247502978 738625759 814288044 903695013 36318782 928261876 348922328 624560622 519369769 885692916 510859209 939443787 954861447 957460600 904468306 986569197 177493717 358480567 466985715 875808979 915608335 936420362 763483873 891246899 289921485 588638761 679434932 700714497 289490730 393324783 24480048 321797324 618154474 969065281 967401841 973462017 955422727 967287023 769714270 827326229 40598358 945750675 758143304 911285071 947113621 985643557 269329621 961048204 833369141 931593658 357144972 617389366 15584342 204832202 978782391 994233464 465609969 591958372 644855476 927394837 447960262 735800751 921076202 923421063 757140730 910662523 772816803 853640137 932211737 962148505 608294803 835120125 350209781 456358427 348351178 794249082 442727776 743541008 583184072 676760950 101348917 496590734 278592976 412926467 824149816 926253351 889166890 968969799 444843870 654655696 100546429 279626134 338959554 572689700 483391148 498705078 266438019 934524247 216526274 413591143 26741999 934055271 755404417 971105955 604039522 682299207 423187262 685347107 403487639 592769485 515204163 620427044 697449468 798307741 538650986 877890436 558226475 873191335 847248011 946129306 889968256 930730282 382429755 506004500 556786928 923696663 156461603 784347443 121053907 895416733 358725176 468176484 346547945 668343496 412457307 935947554 370715185 531279902 719523145 773496713 588819640 613927307 60254557 721214370 345368583 745304282 228339825 694202775 576896528 846811692 178196618 237131322 124464810 264033158 358312705 987630348 366582197 957752856 403535927 696216439 275893628 302679420 668528103 716109071 571116847 671948311 521958665 663382220 279126810 437932768 266006530 920418431 12791158 479995599 914935307 915442391 594858201 595400234 214803131 411583266 807754136 978225445 73758275 228724234 220961328 266132535 635994701 801856711 718255650 951906016 221450903 948265056 543875483 560118080 403588427 501575442 591560447 654519757 807262474 863382146 392961893 845958630 233170463 748755967 883622937 997750599 639411211 993287734 937745361 998538019 900057724 975505445 821315311 905307218 937133661 961080450 929862128 965992352 730570683 763768599 708752550 987340200 394952933 525207446 29296948 132415167 520913231 536497976 502912582 970205875 123432895 344544938 38786708 604184055 197837244 502701973 812465482 859274879 468083960 591068784 752088177 954434311 736288881 795196179 733872730 929634254 399049943 839842594 800158860 960777340 235130022 406376398 798620911 964473481 268857885 391482241 545329644 705061494 760781444 865951032 335344903 915485355 973594248 983041306 542403843 620672186 553134488 983385978 185701796 826741815 996522336 996707156 746139307 971785082 88952489 231869523 179967535 268156564 44879772 618370758 977883995 979525285 297807366 533543979 416207028 729018565 677158444 712999332 713135728 755706862 461296174 874472709 906596722 932612231 85178993 89844187 801953059 856767048 73074804 831895202 188990039 603715550 844508461 962893290 171469399 947494493 460826652 898512672 343427417 973617707 966783100 969892513 466870885 542353756 772480926 842890073 901463637 929076766 799435719 910558401 581474219 718574780 517659409 830188956 82484560 339776212 189157540 366360863 101396506 377167299 588867107 630542861 542287440 625148019 198802382 556682544 76767884 504942474 435004762 463727621 295977316 850336587 10712779 665723329 371673527 575846511 749489341 888165433 37116336 465226501 49554640 148493339 288466044 793879361 956577974 979653665 468422479 679311448 559116732 974774398 482196038 953153207 660726398 881448051 994222723 996656121 836334393 995722568 973778376 984451020 911868001 925570411 468984929 528947536 483166257 675941824 678953594 761368345 531051896 700124856 535820022 854163375 614198910 913533304 743223493 932953898 336725502 922520067 341408992 952373111 784093820 817970839 703606344 955400899 319499514 561970886 893432236 950849396 64002618 226817053 831405177 953024114 342001091 534462748 499519816 802611611 459525231 692600814 612628041 694515863 915144108 959035771 163570835 331607133 471823173 797613151 682724179 720394371 128139947 629307470 121862882 244335790 391887068 669367765 637577836 662238976 4330931 729360277 779916172 861137000 163829929 378320212 626770977 717384190 280915531 498247094 918645628 988861353 175434669 336729414 495857890 891902752 920069097 950025790 973335830 992343138 467418615 716114337 8199543 916370582 535274480 763027259 889217636 912878403 764868217 938450239 668499329 947986447 250628884 273852322 455464224 555405312 607365964 651711350 986155533 995086233 61903467 968441426 841482183 852893562 259830179 400408607 796321358 825624168 4585116 814273267 896184571 935689911 445960007 452113410 780640202 878204540 938436738 970018255 401209187 858000635 466186708 997807850 183254932 610181031 747256927 769360816 489594746 512087686 104811621 399672080 995269295 998768757 325872756 519282408 671590271 940878110 76984468 432687751 898051694 951483794 703426150 778422188 548056388 770147400 414797960 974333038 82762383 887060208 635460232 867495306 166648313 661750649 889239435 985444797 403174045 458844665 597650161 874028574 613618149 865729126 39032709 747320631 15219622 800698558 389373456 487312673 847527129 949249682 933912844 996243495 37283458 78391299 145097793 237094284 788582216 808147841 108571128 150414621 874390821 917044351 796177323 831962027 490536561 527979582 602257407 833824432 396297885 844948478 11827546 896810562 599653371 708707096 612381423 787583766 848202217 922581302 972688252 999270011 954048993 974245105 294094377 809540913 574504043 704640419 899996283 940041692 553952926 807148416 676894019 711985211 514318797 801671909 487056052 581651006 339859399 538156654 702191169 961873290 619438900 882279595 66104735 118502450 213913088 363448914 322442073 839721915 613024769 725438392 273883360 881197835 384981372 516967871 208398322 295416704 536426405 699319762 925421153 978429152 680026974 966917486 290941506 516812745 500691639 745900331 470397225 540097497 272666438 345575713 103315518 864176060 373090190 976182716 271858889 545653287 292244922 657225211 615158153 771681450 303687159 972480034 267753370 482544713 798406759 918302447 603255632 648521764 952128159 973415229 407155618 954067145 462398279 496714114 85647458 697315281 12288052 762489283 366551233 620645512 321104676 906838322 760554273 775087307 877652681 967806117 327053036 604480352 830063446 933845881 961196277 967717907 998216994 999354391 709769607 933097801 945594777 961026659 931756258 987448442 607918681 868168035 433951593 467946970 819104298 931889908 338527706 980288147 516768047 830368924 266816212 591047043 529366717 763255298 721890368 899469124 407905563 595671741 389485224 812654699 554951551 890146211 699440548 966789562 787258416 808127623 406377870 895219926 809350736 813923663 613746448 644534156 945153961 974837908 528028264 657076219 75677576 483645800 164521668 401066819 841855928 960138266 453036453 769352409 957099734 991844192 792779599 919388070 469096861 494179092 43058484 250625743 46081734 885622332 149215954 328267592 755248458 998553339 210031124 653711634 346170061 540240643 387311418 626552114 199849813 548145934 64296178 668758118 922483260 956013606 55995361 769415153 181392895 438001364 967042470 987282066 123119135 788916177 132282271 695333581 47556493 960786161 370074734 644378898 511697567 950077910 759217229 979593343 122521740 777029684 625830992 649369501 97748682 451399289 136471843 951940246 462745356 781718419 684488624 945013252 355319021 519347004 958310256 992281349 837814368 986337067 473882339 908038462 229018203 372036854 436058538 730312488 313534235 763219397 986846846 998549334 321062090 741388707 200737482 931528622 728458921 738992270 593864085 658028735 790409615 920383972 559879970 803120758 385730036 957107117 714648869 779852546 303710293 452167975 312491511 544122346 642163295 859754361 386037222 927673982 781797490 983191335 746575953 890800608 883213279 953719074 527511861 983417984 653442494 668453993 558540873 735683537 743775606 901585273 28090869 684238061 983972231 988717374 990335291 995087815 704036106 971761459 783821815 872683746 245283739 819823224 363348918 936279644 427096679 775222046 27838171 503741371 73796484 392749866 767662039 978192328 355969824 654218579 520093200 603134476 720046452 831241713 260644379 444626145 367620513 801474845 926237165 999342637 458846103 806851824 218078398 402479038 981687816 984452614 283967545 524966655 822934562 894497365 578159108 952536326 386738904 730913922 905779806 963626877 664239187 759811033 300319945 794064930 325347940 931519317 672835550 976312441 31290210 46392646 691777300 839139958 810143643 916923351 144501727 972217570 284138606 602064523 26994513 804228861 402376618 635431887 252506595 835266521 405944433 781759022 627372977 674697550 763661278 874073323 685031926 914122439 903489537 982747788 760857618 797762783 496810929 929219214 747756701 897361533 669298772 698837452 654922234 692209648 162050433 200012084 375812290 444531665 443958268 616972177 273106190 550213828 355965555 504528570 96097278 677324747 43246408 751214391 963147188 997075269 52142393 603826232 969686316 976658771 24237008 831308389 564160963 823284145 130337373 360735746 525033083 775268801 424950447 480549526 865429081 944802802 935614015 950632238 428049940 727730538 715045549 899896722 156383612 284773325 119428427 702052067 464273067 919469617 94152760 929630295 843343888 885357365 331592678 484890284 897602544 950379323 52990650 754939910 13291739 326575008 885570899 965628926 868713939 966483979 233779556 620298082 839561198 941743419 324251766 476847442 103610798 458176659 750854320 787790582 71867579 313382171 157858691 744234078 189888584 479797442 670573285 837217212 857404105 949476746 711340800 778482471 335621436 706375172 182449449 468087180 607292552 954791167 994016531 995229713 285554738 682410736 894379811 915885578 894496675 924784184 599414552 926161623 33448565 826831524 622560038 979654412 785666084 865173359 714511306 881891837 477733624 805983597 196140839 500892568 515751850 896528369 710055106 815215403 226662824 635004376 216413293 520593535 906877669 963862827 430899811 793295355 389655382 936047152 177236343 853032675 55333937 669643841 238880146 369335531 855320497 951208061 218365307 432294207 654927424 845511143 47707426 921072691 763666241 806636712 944515342 966051118 60315073 652915765 451748282 900829698 901134320 972137079 784319929 828558848 658212788 728326205 992596691 994621814 331274624 513039749 990181732 993566319 942905221 998667686 48336678 169592138 736841158 907540270 510943451 631027336 670780754 769911494 495684812 691576171 499893147 932850204 968573263 989754995 290457711 531765190 709196541 864396607 121556881 812616460 269601224 564084309 469220484 826807672 37742382 90519787 403922424 785953543 692733589 786010138 695896471 852744295 265482274 388687223 564598508 854756367 683307563 780065814 614822269 722548609 580947953 912932782 545235216 965308424 147504817 739075718 205245543 351004917 911479174 992904748 304416513 631670225 247632885 929500574 925351770 930723918 14157344 244842785 54147986 492000835 804592255 902950180 438156330 862175516 106658636 632218648 966273801 997207547 682740077 892377504 912103040 976785140 504350847 982021858 500943079 852096615 180400955 376495466 689642027 762882842 465366714 709093208 967651490 983381052 756926721 910564610 718402092 776734014 800172685 900869715 811802633 867876276 811708555 991696047 458807970 990733822 52919656 616781914 54176490 793832144 207891376 603621233 666196840 947536665 65651008 735645912 744383215 820090499 277737614 671531731 793980302 833348546 114746401 540157698 775452490 997532427 611639587 883077374 325356254 923400303 979372135 981627121 295057769 813560063 964163588 993924114 213103438 476208858 829067955 976581834 966366881 972219785 478776826 519581657 249390296 276533930 499617924 727397048 289957761 787133109 743712161 844310901 995420627 997008525 634885608 845225293 258676203 526094897 805629989 835296536 13218314 817401439 693075489 754408308 93953963 739036693 405504834 907466456 815940055 887772342 631973208 887150124 489181922 939720044 328649202 817583570 442604876 750772339 425004356 971850716 13584812 176115689 650561689 981452711 388852461 970172770 604594383 778420609 801946690 931385251 176566692 187065357 425633644 904586882 177877360 658225669 867053515 896906999 731493448 977902325 715514084 847277000 933247104 962303314 710813302 885858665 529535949 758328984 786762720 952811939 10490447 925219636 438528449 705215920 518694892 727890024 996500482 997245385 170145288 450877010 80797227 392132956 418641359 883225935 506967092 813298078 237987250 494175033 903576993 978631489 392394118 865693831 124005270 498324631 281101792 841780742 821867138 979854573 97279185 586994288 516448640 578495406 128944068 187747719 634240111 683440739 788011629 803064132 987545951 996846286 475166310 718989264 733677298 756916887 587991332 863953593 104976936 360560146 526501792 984567698 702821168 963726061 70578747 959918619 659940036 993030806 711563356 791438732 207742797 211852617 297492985 496528154 483412249 718008159 769719598 875273797 646897026 673953021 759272290 875696668 865699968 918172984 572249868 650526476 509721028 986940960 537424409 861875691 350960878 639559020 708411179 760952640 757167229 924241155 374951511 645018883 73238660 970979376 147850293 187950067 497542169 916504663 533232649 716680359 283348487 641524051 980888880 993133201 239829520 328665911 366269413 850876124 93925185 808583119 617288843 661464236 907484250 931108555 614210960 968919652 201144955 218600582 74681011 616897511 939317152 945777076 260651196 677300250 827290127 995547461 88472056 840333552 466225814 660137435 43259827 868922183 981838287 988550367 911656599 997380636 486768450 924306367 757020990 992758914 210031259 385981838 546583178 579328875 710533360 776057295 260376225 964891199 832869877 877524957 525200329 889273810 847137339 873050543 3799813 924085573 740975902 980536230 744039647 932582771 628420568 656740591 77702722 209044076 409936048 838451042 979729371 986909181 469881339 835552470 828503565 957419843 27574855 797976041 129677326 242320043 864779613 955021513 547191113 970203792 910006508 961572621 270533591 483803023 407601679 922202068 646744056 753888230 945130096 962251807 948170505 964017722 820293039 914994166 151674124 549311160 607458870 846583822 753786569 912362196 75474358 896228165 167707526 409028607 973026069 977170787 191352682 422639765 735481638 867195221 22869899 774248170 85035625 705370256 141216184 286681944 243838302 494211986 278263700 288513819 442940644 992973170 249460155 522740995 121339681 842468982 738117040 776156838 653655275 842244050 788118125 957771734 743643205 762350038 584606640 884099224 971978122 980039160 393232652 894158478 67143660 830025432 313754738 496675469 923846607 972749376 905491912 970168964 344428751 394763810 32254203 295162812 341316304 606421792 42612078 513732348 303338656 778088213 390943809 788574431 413147707 673095988 315767719 906062423 289378445 758964581 568357671 912451143 172811249 781871729 27113090 286690927 548058000 963184934 468498048 690299465 572570846 712808513 635820055 709942302 39641529 149616430 716368803 788885570 273868100 635425570 110549232 969706422 137952126 151684133 975093739 978572814 545796655 771129871 268128338 858273452 481051580 812440645 88938973 662745690 387454255 430928830 199855639 576904657 140614314 563254623 111545229 377028538 401163064 438410670 187955733 293665817 884033325 978531875 707597421 974880120 641757197 978604974 835347497 950573313 928050304 951464907 655940271 668214621 601082460 969673124 595912165 764334042 277536071 968201307 615406576 958733618 935131121 991704596 919719262 962789378 653748244 998532394 975782186 985296638 146975175 520368315 801216126 928531707 994732494 998450524 986446873 986879410 232952792 436053985 802908617 870370690 990084953 993419360 660435093 693550613 309148158 354195245 850637916 912083272 894051071 949737797 729537252 889194529 666358275 957590132 958814340 976667907 186179389 645980463 222116049 413314328 16609811 478171140 679716590 967597919 226874910 866975274 244622947 490259332 960449141 972746190 989488300 996347263 887279321 894233350 915377815 993259109 98618783 600060213 411895969 464396775 18655935 652874560 725016102 787328225 589907871 935051974 579767105 809800363 719839797 987311236 331256809 706981947 912128385 982648586 84126411 325915495 378410751 734853682 287983641 968881343 780835226 910347218 150825579 500445392 36064006 218735636 462041872 710258068 889084618 997439108 880529617 980290093 300239450 829695427 597473608 710605136 133446954 225867471 440136188 985317804 564892102 666498697 615017267 863335840 831770906 885210534 249565829 265143834 632344001 917956655 768333797 945653460 378547784 568028536 695925845 729729979 94760606 374291187 562345867 671532087 195008982 563481996 152539442 777482364 788763585 849126752 223907276 255987646 454023114 506414394 355073528 734207651 818898243 909727596 617093694 697495677 732114968 956476523 540081450 782158865 238642983 329016832 799019569 943952975 114315468 978511058 36784122 248371061 982354792 998082388 986290025 995996932 761387459 875784726 475535282 572058895 375186365 840039627 836663890 938669922 424914117 900238043 710141951 963065241 517150332 883974193 394271875 962530366 953828498 973238721 302171150 852797481 434001864 855419893 31297551 56061311 198586741 736669470 412487306 590411424 524034126 675192650 229206296 467408754 741183672 806930742 901477890 917939434 547465894 907563306 224286751 908658349 378289322 634463618 204427619 438675121 311308840 737902745 887085371 913270037 761262893 949805365 905608459 990453593 706874581 938636787 485084904 672388385 314589783 552759597 840877365 859822769 984891441 992515786 157480815 654975917 503060785 750065070 225511087 663510941 563142510 583451655 183020928 651468610 992789572 998058762 80214070 270367301 668911149 786930562 458379115 654993637 926090165 965510835 563670944 650354716 537764862 685809698 522319920 893589313 401199341 585002781 940768784 983621450 660960647 861204358 945566207 982832607 517419363 788210578 73444975 530192541 646846095 867458088 802336719 808862580 104002789 962669976 628774384 966083308 470675324 759984746 679607454 991718107 521042733 692772991 958459171 984739712 395232653 584097926 960671146 961348309 593675945 840128134 428786952 664194059 754211785 990267939 591799635 671686888 83805018 303624065 957663491 979296716 386795509 505479408 533436950 996760093 293230355 631829275 912444659 968388874 562935508 992008594 246078600 479614196 174093999 221004086 304531300 631972324 903196686 955093182 395246239 862372894 943628025 984322150 737803989 932816560 699568428 909028317 356159597 730885779 163296237 939123412 219996582 930182209 746849641 783320222 28802466 804293550 611566378 628681808 610000005 854314997 132887744 840898714 857477116 985447019 554439069 608551244 821784203 853579228 29044969 109586520 691279133 796172297 707137926 802005621 87601677 933964109 64111289 964374832 49980767 137579841 946220344 964023052 345356347 666116327 501386253 808103771 238814663 271146366 49980513 99876798 633263642 683793496 1766897 586861194 192936229 853192914 133364891 197362289 936610459 987657598 345584713 350637239 200311160 728421781 652343303 844995961 617986161 876817317 244050100 885084396 358704592 930139772 378815150 477273023 97413775 939135102 665213666 831533726 468913362 962319259 299849145 769253393 59912959 443657894 822059641 905777138 244732881 612416274 730249097 798499120 12089103 55565526 298663002 400925867 100893772 548685728 224977575 607105435 681217424 840462615 429810035 695539327 557786780 700717689 566466643 845890133 700843257 718691853 490640875 613992147 529123508 821253923 375910308 796035742 210235165 440633359 321009737 432201585 18219971 80238056 449239214 638908795 333734521 878036842 723664883 981225438 201006617 673006169 931103459 934238649 460131802 632637675 617684813 772644216 341708075 475901661 230226723 573682484 74539503 163652873 168963607 562094226 38527587 173597916 602058746 845462002 278166683 303430621 477801707 734338545 569511093 820763366 113325824 551785201 33253665 220052636 971630129 991934339 260300841 599431754 48934514 283775191 450231480 721191845 973456608 976424199 652011357 768485234 212765115 323243006 551351608 848251792 760824740 879086637 512608044 627870635 24532048 267626627 269069455 522139156 553382927 734107044 644694529 950438535 340108630 897810672 214907689 367817173 707812982 997326416 943284880 948428409 572076563 957029150 296820274 816796793 512016331 667294235 833300541 895930691 234276078 974277622 250419136 768191857 462707354 886408004 226159796 729188784 116126270 133491672 640998629 827936592 897187795 909882758 741402350 867007886 543600276 676322652 712540090 958514504 647932859 748424453 43309484 374601175 375379903 964188141 580545985 982486266 417344371 538683462 308941437 974684069 388886875 661314570 217681609 469647454 588090084 692711151 718039463 970378766 526585999 694117929 161866205 323599571 210442044 313922186 939433864 969014921 372705321 374210095 926545006 969091462 778425583 973940435 539682318 884046755 7393443 124650537 869411495 932446549 348864464 539279641 655263587 804736314 100489752 904316240 683762411 907674041 758952110 787067012 732731679 885711356 985966266 992880276 381792020 786091972 554828862 774200374 751515580 788107737 367132344 740386490 383706076 685272381 695660103 974051136 935605121 953268660 633372308 855537418 322738895 672805123 953246465 955025556 480598749 740435908 555870645 816834993 290656768 607492826 35333054 269554059 674874697 889756075 568439938 953795186 635456542 756574030 272630829 352106312 131010605 914469627 406038151 440940656 569346806 959227631 843695506 941540487 220135033 411135752 577166102 789328944 856927005 871294686 472096647 539756678 206415217 626104544 35966578 763668207 275369557 427458998 318928005 988189796 452409674 616438960 106924820 337229006 926084335 957433743 893342580 923367349 211862745 696113639 242936641 538605138 558116430 862641456 747058472 813854936 482701023 664076972 739493002 809123828 296824579 524292304 675474954 736498943 401025380 512985009 735980837 961054530 225385375 419399244 385778157 890018165 488101776 898122267 427456671 505979091 610689731 985510588 374760776 857551815 173090502 859317723 540422033 964642428 276687251 884467134 783340599 997405351 854896389 885681512 657358347 848263419 348964918 419758035 784875503 785883396 162048054 322935895 978495167 996439017 781485716 932711784 730365643 893866170 822490426 960795611 227768690 590339818 914441586 955498678 923334607 966774688 3513469 321501399 614638174 864192172 612816898 811987229 527902662 779218065 108694850 816700290 723482176 937594231 716363515 778477657 805269194 946308594 107382730 587070327 422800002 841022691 532512786 861014887 30395327 328601741 288067945 816207940 244529385 701703833 448224160 822857344 871606982 917137042 802953662 962300606 278187189 997663765 447652709 972577607 57984614 866883116 453099540 925266284 930255429 930602772 974116918 998143210 974500122 998516097 283543346 643313070 589539424 679522752 306125208 901827782 808600246 920439684 820590438 832234584 603295900 657885133 700663448 879908566 984882167 994637756 561987239 766510448 443074466 927125931 951259853 956247894 446446039 778025451 457964773 718466423 178869918 748341977 317432425 938709184 854426281 954036691 737413923 993700841 980048657 986143782 754651509 974972144 652458889 964555585 728710088 954345125 210145857 836762193 873061039 894565781 329759271 489824139 149474901 392866629 450837794 623801811 195475720 540058286 548277610 798928058 295451086 760514578 196138522 968438384 926294779 955906138 54347627 511792066 936883340 999046065 351376632 901625773 596581026 968735505 1771351 845602902 624594523 896939189 489258808 911318858 644563857 864050012 18113665 850942652 645043975 760641991 814761485 993379708 203446237 498622262 778207811 912882906 797133248 892802875 561861847 784230849 14682003 100495107 542216028 790418955 677723150 868611510 726183432 980777808 401815437 587200688 494730169 820043394 947843994 968804534 144354723 863103380 268694599 886204468 184721186 842545875 640399545 807957513 960533766 973736670 85705874 542289148 769897240 918499345 509382510 663015514 130962310 312060082 191255434 485842771 523529022 983930731 143007348 672909755 929027484 933516533 62654985 341239807 768971794 977169945 386318013 655014214 796470883 884545674 78042053 198408764 133105899 858530538 97342193 543070705 442035967 847451669 499315532 807170838 808685944 979223413 194754506 224816749 487850967 894626435 102878078 731052855 974858794 986607105 460612886 542620338 816296565 971558050 789174627 897593300 151324587 391799276 49872187 974075620 805412123 886789599 644799016 818153476 666199623 682730248 758922217 961284304 29743812 88910638 960871067 963136419 600447551 741700862 456231490 734731320 815149823 973005030 83081833 235154264 547003043 770851713 848007858 877675946 604989031 720502929 743707989 820878381 470528001 857331466 952651940 960686567 336166520 374916265 49871725 73574787 409961399 587626355 949268815 956637476 798932771 836150340 978234471 992581045 451277731 784991958 712223089 879091742 236330383 585326065 320815464 592202808 983593843 993725554 218374055 860865969 680273309 767037303 581406607 754285962 297308195 396499155 236343726 286016829 247336787 692225163 546854626 570445927 700896239 830585574 334346140 530183182 425094057 463105106 446740078 935807022 447937809 590932071 990883134 995750254 799866783 876184401 549497955 983901238 384268738 406407916 577015872 746954122 138444734 727323491 973093920 984229882 690868038 841489557 213816692 468255153 453607841 725459042 223559377 599403462 605556738 748922548 134382360 412622490 125565631 142879330 813905283 920352028 31619197 558882894 762493631 765574653 70364639 994147683 640441418 771980314 106950459 430962362 3598451 207050717 796457651 858766611 338632557 462956275 353699791 784215333 431168084 868665284 730422062 765453734 315879584 380702299 167718718 669533284 320107506 557864181 213484032 223317397 561904972 842078406 171205491 179797335 624107749 818726293 244725198 288673136 669050321 738773165 933151632 980586594 932799100 960412668 869941394 901729668 698031106 760902675 751272330 854549505 35482842 522024211 953008360 990582852 476991308 706127189 316282761 656144566 463264912 521861292 326951631 708558364 188533642 516488888 317436284 382513526 2911596 877449889 8560329 762869773 546885734 665604711 411253502 478290782 586346893 943799492 312684409 643406932 21730477 433988357 730979905 872499440 598707086 897302540 442903539 622913641 656316024 857587835 225186282 246944824 879072094 989659413 105696092 108829019 333774425 360773167 971012006 990097137 691089307 776842650 469209372 876739485 566944819 728574713 923376772 925951659 359900381 853481523 372366353 907230980 814032330 967424190 752331466 853767566 891207627 986090820 258213921 801780017 510085822 993874685 857172050 946311552 783935049 885213703 624921935 782038107 946102271 995364378 601098595 708179077 195232243 332462441 664046207 971723698 167500502 538333546 713828729 853404095 570394284 885042162 527181686 984641213 221203810 656680865 873587652 996953684 940431449 950212798 76417977 286116667 207633384 218984274 384261994 972004279 962254743 981451359 230811502 858736808 36694953 906370043 58065043 845306986 952674795 975980131 998327103 998592162 916124166 942838392 506587292 651424781 434983460 900692522 435835418 784528606 992735877 997407547 138051453 707269361 50815302 941650012 83548921 84410856 276400942 632888132 246122850 424067298 594168478 921768134 522270882 833228732 828791576 929194085 464384288 920182628 36535899 764232000 518857925 567181294 982669093 985809661 17468763 780722758 684641714 945876398 306331122 506002777 358587644 463689762 854964271 979511817 680686686 719002012 566834806 995013394 166970816 567511814 850392780 865673694 706832313 820046333 71594015 100770398 756446551 774864236 428057009 881442178 625312755 941351402 936619292 957194830 704088750 941256829 370327955 830473201 105527472 594185104 237186773 262408774 338747619 580150371 465918991 660901127 891220562 971840676 438674641 645810919 950124204 956688341 986321099 997211076 722479160 727060512 653936448 668683048 45538885 419949732 358998671 655436943 8342674 670151185 339806870 493316150 797637786 813318330 649336276 963449714 391179604 552918371 16463180 405707155 431957597 812978072 435958080 967943539 697606711 706568132 892179716 998506969 545120130 772455340 801124631 981379004 243502123 566457947 850207717 864386595 463033756 611044917 114546192 330091783 162339345 673647398 442622861 518024920 127350907 593252994 939889401 998266429 675455799 753319910 914797071 923136951 446486130 565297563 476047158 851620980 204460397 997233348 567859629 740719670 458161851 691069537 474917380 635362536 914208793 961742943 530035433 654645883 650539355 690569547 656482538 704092426 445148691 885963591 962989639 987196247 681332549 685109938 374158216 799559221 343641450 758492710 238353513 622098266 854443643 867756609 720575840 818353747 965434819 991852838 628379608 717128709 155801034 204645006 53356341 342342381 81637728 365309387 186872773 677823706 174471813 708208299 828730903 871634897 915525781 953608076 25040239 991755769 677737285 740268786 129887594 586674908 721065485 907858043 593480777 605893927 440471576 802359064 241820275 413253147 662705877 891869101 32568895 69485986 404912380 743749583 571796495 779861320 977342968 990431086 178125751 775624999 301034617 418308148 97547122 187630080 524179210 844107608 932097688 968100856 26142409 149898546 136656758 282357743 276372972 901343001 196466762 264243934 443284450 476670458 391054779 543820770 992852129 994257332 406055086 645524503 283697441 667702643 240898658 835769923 75645853 371918337 437998098 575463600 638695319 794010619 505476841 648737259 205925545 347737205 699010585 811811904 923104266 942895004 599830123 973623611 986919828 997375125 668395878 947581762 74311979 986980499 581054885 612219110 919156155 937358535 333095393 724896886 649679162 958613107 453731519 497008672 652051162 694147078 660302894 966459001 400659237 741618925 295048875 905306885 340952172 664442921 99354791 731627710 334597178 365985277 735200904 878629266 683175772 722155264 108599585 251591634 124883853 359242913 971893810 995925427 335141364 797652083 29817239 672312275 364666464 989965627 87765386 360466628 361406308 678942761 487614896 924418511 755706933 800879251 754436275 954098592 399808766 909526575 924977416 984735721 423420973 720115502 346895598 883409116 5527809 295231757 465199544 770698445 548349357 563471933 219525116 330383218 272013806 851427314 862019615 898949274 566010890 671999422 94271611 961207719 875547863 913962338 518628658 622851618 171476845 872748000 470554673 617868092 629353866 947186223 635775538 698336920 455915020 941642217 891438821 920402109 597262477 936596555 349519693 504081023 789215820 914388613 242634278 334680664 389890875 429357315 408449952 606076372 793060264 980693565 541447019 700411709 824634335 958868672 454539090 509150208 614102617 637086246 881265257 950685717 89286118 175434148 490435530 490792839 849397609 905734681 593056900 991909676 636716554 995946949 280494148 595065560 267196816 365701255 855046762 939958435 444044380 810021333 178707184 505770843 650357256 811312951 821561525 991351958 721754127 900992049 954861949 980977548 191960839 615388161 199278851 282688686 462301022 599930201 297845471 333788144 767950382 814011070 126926811 411690236 335681097 880547640 590235660 591318817 904445590 919676666 6399496 809237180 628062824 965118946 663393247 741261616 517159765 563764191 240305974 381896635 760854858 803610035 223475833 402631299 132732439 471829089 104029487 934530073 457580168 670434931 388470837 478259723 424717332 808576818 202099692 299764493 196834383 357134109 984670477 990572327 977634203 980079155 709842034 968376246 600668812 917016756 845557808 914824211 594409280 630019517 776144689 901736955 673603931 884466492 43260534 240752996 88341286 113999830 22359037 26844207 561829537 939239633 165124418 365804921 616531255 928478881 974380986 981026228 317009809 371907425 319634033 325549603 402646803 529404114 837395781 994203871 869348642 990023629 119369123 678416382 736215867 905230044 127035875 575914528 281731648 497156184 230832310 847682138 493525353 783563581 784536070 861434575 365110205 567086571 952001161 968417073 510066313 828746150 594566159 830314178 742671987 919763388 147749489 289563230 674326671 987856618 322464542 479952015 128687325 976030554 88915496 609840802 741962282 950535953 12481372 908844194 1770702 191482548 460512153 514604798 703835109 761547277 687441682 819968119 647120152 979985685 685737332 764180584 708698524 789780484 391444913 648851026 437622714 605083190 446054421 732135940 380176518 610361390 201191180 846943257 306124149 822576648 838488488 982093824 697441547 700946847 289132687 818335641 636563128 981625457 749609213 877130945 335092841 527305002 423441195 830236208 220851266 323812111 629479163 949620346 620730141 989242241 690017713 694560029 517531744 769221045 540061006 638913659 280189700 329589519 241520464 414966197 824272870 870050425 934371890 961689531 111265684 944904127 42823787 466153533 253713083 896667847 897904606 986629953 284634351 954382658 545291179 917989292 222407496 597327795 353271344 973657412 125728570 441284120 911137423 954981114 106759742 626700480 313028183 325066889 84052721 621632938 333473175 743559052 112035500 238043116 221554987 392883135 242451373 265392624 614856794 960876626 713704438 717644758 536945023 821268320 944457986 954555864 245699688 922810354 172855517 934076358 651633495 813849912 89120460 735812906 10275154 430483116 940545569 997725194 807586518 888731032 875047881 895494096 800464840 812677127 823714623 986488497 529205462 576191966 807124316 865813732 974496073 984964014 654267326 759154528 314234145 770675174 967526007 998193610 882587182 906042870 38691586 303885230 828316350 886645769 781412955 828645951 256526031 827968122 889900201 954330393 172456049 931340259 801625195 841765016 625394379 794118222 927695610 944544943 913122034 925576520 72581952 881273014 89776277 461871215 490307552 804435055 108569254 680355969 408557645 608066042 698257237 730468300 720602249 928217314 942192883 997334140 423439127 952415827 817975511 979215228 127276273 566524307 451657775 715816615 959612725 997416082 282943572 787286727 216986050 365483290 293551352 487926195 670646817 886873240 998150555 998375295 305065879 325258563 944803608 963308572 358308071 792488925 609363089 764226576 466210371 606355333 568998191 673178528 953603950 998079237 527615871 833552160 884020515 906817647 178310647 504595147 600399549 816645693 314425235 932124261 742799385 832006277 654310161 745496618 876334874 932955652 800532054 990449056 401199807 956073306 292480760 462610715 447756394 479711639 76856711 729903444 370694238 596230804 714639463 824726590 697410358 834214765 302976972 544821823 356306954 577043787 485907492 672927979 916810447 979981008 130820854 207863224 118267725 335469081 114858026 610710471 965824364 970121546 237516499 367066544 919099119 977553131 577917984 580917966 391645170 785082049 320028596 938516737 811847193 999252200 120936914 926103601 870435158 928352277 894424248 947604848 848650762 863880339 932014714 947508551 718106089 759349105 846898543 991697766 52251766 316534685 743528917 843650253 621963570 728832396 852215582 897041403 993871276 997073074 104743110 844192257 254663199 292008700 492676148 709495809 464842753 468780139 719834537 722753345 728215398 795868037 175453246 917232887 213949768 310891456 125526142 625080308 165979129 198037452 222844347 689835689 411149420 896381139 468953672 649291575 64347088 250306120 170222186 427639589 971832519 983052806 414593293 865074263 989239247 994295270 880706035 883427498 775574382 856483138 452659318 890610457 452926649 728882839 110969273 848040763 261487627 836941714 433544260 880298445 563778544 819493229 492046130 855196609 171533797 631482801 76881508 935230414 675240842 911039043 976009955 980388635 852721726 859173880 27058212 809911006 558782499 994762402 83158508 607631545 574499510 841530675 583677038 856301902 638176396 968694026 827325652 982145493 223509129 760277626 990586774 994452391 291884887 675163192 724361382 990384888 604203150 638377051 363071187 686090194 358655162 563224959 435016713 762588280 257975344 883232523 791741914 820902472 910685978 993465174 696807802 788023153 387913401 486226628 78053625 791954422 359886091 688317876 990075880 997694704 832054055 927426516 850114307 903283029 414739065 601138702 934288750 969240833 286867425 315725148 493632661 622775294 206236976 431457347 329510261 916431656 716757066 764658206 698259477 754536441 872461292 918817633 122821303 666669667 773553647 992037335 534925836 812561328 62777274 585670668 576048180 656648071 519507263 560408466 619175545 809416197 703894490 907467622 221521021 747386137 71698396 438342488 709798326 903584929 655525850 903697246 440139047 547889010 754428588 926611800 586697505 875975547 66122076 606507260 629017451 764621318 961723660 996189113 870360285 937281658 409487373 826400973 922700519 943667238 965050574 998415927 669099163 893252761 378654318 521960061 193293265 913348126 852486638 979611207 628048226 706528345 333143175 681682919 472201721 643608484 860590431 942201901 273669755 332590534 313583437 982198181 204357779 723218183 689363551 940462656 32230002 267588130 430570044 775700042 612439870 885621643 139269287 879708463 318040547 576702949 601546059 782902476 745893930 766026157 464393762 537196030 112154784 784452024 820721166 878731035 615623595 844604875 256988505 455273995 819523511 896558254 136629397 151812293 197810352 490114610 994336722 997421849 906362835 994402833 710514268 853135692 496193851 638194988 656049761 796723244 806900826 813227781 274443924 877767304 893873521 972504791 515656735 619675062 383312656 955459510 919673233 952339483 952377201 998454422 803551077 809655328 12771851 173667788 152979591 692318009 631884651 993087399 243667440 898204817 95800523 476292306 784254334 799752818 445348565 580812279 102820165 913292551 564049674 850296387 448061805 852008023 229957254 633179371 18849514 76619345 827362822 849711071 379798769 827216407 984324231 995254393 650245305 775806609 809506288 923705417 226050199 317938557 712740972 836224675 652603370 895035680 980634620 993626347 647302855 804535043 453444032 882699475 848884637 929097438 296173176 886105777 81323943 356583572 884575589 888766922 283495867 971365343 440444525 784474616 673020898 702727534 647762504 792859290 739345262 866221683 915252803 969299699 362810939 860696055 868031157 914090659 906286135 910616009 770928008 983255415 124748173 288493240 848054103 963897977 943174886 957904158 395304705 470639292 2435210 460752649 635317380 971693695 445284972 755832880 441939470 527423734 706590637 992975036 284493920 910142473 768308359 789391303 113231409 956550207 602466547 702413263 785483766 794934717 535454743 896398832 934099858 962484199 870117988 926146098 392934774 400152945 344881984 700470796 811909652 832416211 591188984 609962040 983643614 988562413 443527230 934579999 352818088 544833812 58482764 803514855 701064620 831938147 945788056 953817925 278349897 679177207 294770070 648692352 933709284 985582156 360086037 914312768 852915635 987768844 661298702 906059352 250078758 447518068 577011837 912311396 92587532 277475919 45294855 747763553 369750784 629721943 484981970 969935815 702975625 919981062 99715990 706210476 606447521 881976694 934348867 968973541 923719589 968694422 932399541 943458876 585711085 620029222 116645066 644135503 594200905 756759381 820178661 954896753 642531479 897724847 157803127 383757942 520645836 587506955 906156636 973622411 770889592 803755324 972021464 973557573 761575635 801311904 84676993 328133595 992134676 998814965 949710787 985909771 581687921 596967064 777446401 959434429 303924913 935673216 837551380 968501245 378305360 534408018 391117483 874453229 12859349 754698746 271703041 595076215 789267703 792315822 64559621 556402644 430460985 782413666 629137139 907951103 910568540 948827992 382231443 948074833 774191889 848850562 665815101 818775183 489680179 804423773 371069292 443740403 83225447 409296329 318481547 369243866 749424430 998846626 649377802 760474810 348901980 666211920 653488633 870073814 907645404 910778738 296621133 812998020 47203911 907612800 394417767 405666397 329265037 652643341 201109799 575755394 569788537 743123414 925038566 993909259 193787525 684370745 45096360 204940319 418734512 796410356 427910230 886789638 764933838 877163688 432919505 455725990 357793778 441767010 697859506 753996721 13780721 315283521 725634859 893219626 112985090 706130049 471426078 554755577 721379503 809726854 46517978 309505437 945869957 947355096 367985902 879179946 346037012 389274390 288529953 995785021 352623113 871095346 758525758 835121842 674390057 875210115 171275837 437071954 195915046 838350762 782645803 926261840 926012187 939049170 700027027 758269067 376051797 617361028 662782628 831814686 385016427 498407259 914076839 957735031 277589134 617341060 100913423 372536478 261206701 982290465 754314809 782686581 297990895 941209637 882307196 971411140 190593482 958076459 866540184 991987324 351739793 829660158 573450258 900965145 89614151 347884119 259034462 261767999 725939662 936366782 557869980 734492295 715351877 951500056 513522133 525183599 729060746 997527767 776090273 821082026 943242773 947254740 679011026 771224431 132608594 701674705 63062059 697546043 9924693 104130611 352839328 577880185 470405082 483545431 666022025 924584504 501229097 897333913 523930928 906440153 878608206 984529954 93707825 183789427 373104184 837565297 876015403 911921008 633286835 691236155 375672808 876877455 599861612 637414446 923596364 980409685 541925614 964795171 410795904 608038788 419413473 642459430 745607954 887066853 658997937 905145165 849579747 898853946 699367962 951813666 165288386 766614243 846249923 971905272 908017221 934969636 828750750 936298751 732485415 927855735 278985064 764080516 28764107 509278596 402806622 646855582 291325187 742911657 325185192 693077107 541314677 741826074 81238832 937796846 178530958 367427375 856005023 910783561 972459090 989845209 776030456 884390987 268948480 859826301 334897245 976368997 541654706 635685895 578198819 735594832 273407182 443287477 820434284 910123782 225356938 252343141 267386514 470680118 287118986 589049390 330097341 807594196 699819320 834068043 419468947 713300794 427899787 750051999 667421174 822403550 892519564 933540521 854632976 872040681 556203856 632160264 385729193 677947718 861432159 950658405 369675963 995168619 290474945 401794303 876768691 939434479 711821131 783644742 166689028 808928674 162499735 873807028 872439233 891910377 606265310 876268681 104314150 926134052 121592228 359817462 906645215 960937401 180286137 636881978 632964481 950039434 717267480 909267280 242526415 717368067 774056125 984946192 600239668 888816769 40606914 44221044 830521499 884261255 27684435 361044053 398742691 617391311 633794177 792223103 842486380 880495990 203347248 608427121 892036718 892920522 796946152 912200539 37684995 117786878 192617853 720972425 380161222 619292205 956236090 998978517 140540019 772602705 890958801 958871123 900106400 945130744 588358859 847230548 833662199 937438212 952208011 974339296 880717141 917421919 88714125 800626329 61766264 461580015 871460580 979395539 487437653 583420924 907928596 983633174 974805989 975136563 246032457 340261438 446341854 556721584 865523897 911652520 504075359 984245790 542811507 604633949 298786127 607407545 201113766 246871294 260199458 895891991 290745814 785750369 688790930 822706628 387020192 603071699 132655728 202843936 946320516 976023613 503036613 726829803 232596875 522609377 506207119 804580839 413297615 938084132 78267937 288952360 825704734 911740609 254198230 855436102 234022433 953502582 960942359 995754176 518709751 859440707 616653737 748527968 272389778 664944049 885810764 930712589 76724653 548381492 603872579 681544108 580128482 765499503 98091143 825989851 702591359 851565820 389007070 617022902 266232878 942703638 385700055 875955056 134266718 523850938 682835132 900224947 298188441 979261164 771599876 905963220 783934992 928625653 821221678 869662692 378617197 490663150 835845149 964870091 116252903 939877755 246808165 384261672 793958077 920976513 145131726 892534901 916590034 925501670 372774400 988476206 931369600 981957728 122506355 406998419 522183353 562258564 327688045 820980730 397645689 523225152 211635041 353500613 98081279 795704292 159032850 597057704 474419948 708143970 608170690 866755585 637200206 637491046 922310688 923868329 269870057 680986284 207651438 531245627 677824807 874070944 227745953 746393699 347527681 716053585 569567178 582289825 561938726 693933692 938656369 964282343 817526629 847517808 806777965 950740411 875034703 937277884 199312104 209756065 813617754 884640454 133091788 232487572 312955223 813071140 413529180 795986786 804320887 925401035 22994561 617121346 898077602 998367242 427509183 959784826 284458453 636767750 27403992 429976349 368269217 742134950 47644464 559679411 916682856 920185645 338889623 679163982 545402947 785992056 295714882 904843723 322851144 330377974 705941872 941626201 570222923 605028076 649170690 684854171 395805473 774481547 347135295 620460691 982011312 985762669 56905662 108373233 905331649 951161079 343208056 948359186 466378116 478514816 550903067 805123378 306160688 544923205 530825295 782501437 776185531 810105542 18901353 527476942 831526399 995280566 116363726 738500220 972262352 993299054 848733734 998845727 719631924 764865039 416095326 806383603 401935877 487418438 416705637 495392331 800945851 997806644 671244418 996743800 961939697 971459777 859117174 966328029 773621080 905405273 929468428 935306221 75291476 950408230 303347455 863035830 399568438 958525197 895762551 912383462 401748990 832003995 883608258 942693052 798253959 869503228 533102415 803218685 600891141 865974851 726619948 950491926 506104531 540472849 127418923 754215419 897621452 968371605 221372666 482670003 955520355 972347402 673100044 913991413 673612524 823640640 409212377 662128530 384223759 578863136 465911538 557849510 323083078 951177310 887140524 892650685 983935358 996263096 387208758 858145655 145071393 817668420 122612425 844040167 445546710 595107757 812712591 947710066 881421165 892465908 767884016 855070709 706942699 963647597 79173477 474232440 306563486 938173439 694839155 782604729 15775775 926310496 43198698 635443738 278822282 474793078 125540462 827061045 878705346 882402126 134553333 597519147 11747115 845251393 873820446 876302757 684864307 990359945 964191315 969404430 597406512 696364672 482196813 616258814 996341866 996759154 653188555 747776209 813782292 827518298 812133842 898066844 77832464 228186833 460794204 669666647 444303718 998131011 520086246 919530011 875697556 890529349 581771522 942638920 929856856 996085985 665785244 722431406 690982957 741097153 236068227 821791346 154908085 251492980 152811510 567799443 828658300 892186654 249504248 405331245 484506496 686704518 993884207 997822798 895452694 915875216 315242278 377151830 24847065 134579418 875268846 894629008 766874131 947545945 723074342 933942671 939386520 996442537 29567407 566449817 640234462 703936871 145490471 270026076 80510577 104718179 266211981 613481822 755641534 948976891 278855508 298420708 804259247 989230540 730268367 733909206 621890121 966139135 464737094 827043477 138482037 526942999 688862456 914263707 544060579 938553212 60728134 907461590 80848957 848034160 690257690 750098255 127659427 894422785 610906777 851010163 624366474 854703103 159754342 813332110 332142587 795772862 942284702 953768349 160938799 307290356 150947983 702666151 143298031 153292027 785390490 870540432 808284819 982411560 692881339 971341244 964789639 978064724 171703791 943709646 659281065 991072351 440584923 530154193 655632023 984020416 346516595 791417109 835776690 887199175 55112042 687082713 820429990 991770936 588117306 875079864 552298410 826355325 271060827 772751231 653645791 729430466 423782322 674912196 215640563 227002845 758414655 864655246 309851832 841847027 286480093 523648060 274630722 511287631 809028300 970427761 756960614 784017570 161411193 271278000 667173505 870695401 680863410 699557147 192933581 898993084 703590387 943613088 859597366 931642241 596194536 868044844 845090666 960815564 699555323 739711199 608342558 673059936 94000112 197956921 901522249 925155080 188796049 741212643 427107918 621214977 997308263 998637380 1667606 360373374 259902475 942125001 835721596 956278355 995600012 997869839 998885876 999292779 397381725 692722429 559167347 981900350 973211686 993085416 715958266 744345171 928514439 977259513 637811258 758393995 696875032 998245731 766478812 795582568 465889120 724037597 65278202 439186103 135464055 252184078 102955067 887439621 626698868 797509446 717154271 753354295 462278455 543302615 571156008 967362945 557824239 601864778 813830969 972270992 416656631 933928439 55889987 716917223 609407189 668480593 101755409 210334678 993262407 998575204 378660168 884839902 921876398 953599109 95828585 221790365 662115778 842740255 913117234 988885109 512070877 637392358 134102847 467405188 565471194 812403438 762997720 794084865 331186797 620053189 45284861 716349469 751059956 849750261 876754492 954276338 629161046 835899271 796596442 801248749 919082265 958989930 265866228 525430051 479849495 768699050 203130003 967346121 691076892 904303215 200383690 375413177 656070439 987729013 337716961 953389868 833497545 983753332 504345411 526283616 627302804 870259029 321831069 892604805 972527016 985602555 809343581 960871157 294182373 459276709 451649284 836965769 571162390 845053823 959330189 987594409 799568859 962851519 84590373 335950172 303555185 550619005 595836890 936903197 913173066 966735746 815669230 839021236 201884363 927474628 847953175 964817154 952863294 986283326 48089628 962085309 277112464 304072487 645946695 940930371 915892109 963728835 348311140 547281184 292817376 332771738 501721042 864718561 592140585 841915015 735830959 782483602 636800676 691055848 817884771 829810363 503967618 546594545 515307045 768002569 408462045 687781386 571760653 630747397 498922844 775998494 813900 836516704 813580140 917989273 766812151 904981515 651944908 854138302 669541643 987916897 681639130 991342913 744201412 770188627 692993583 809361123 227765728 427057704 235459122 258723854 998168370 998676744 288713360 653876378 237899782 638988053 277881475 287253555 782598879 812667725 19500703 47482189 873079583 974159272 514191509 614804555 880272178 995339630 225233155 997497004 359725075 961477999 902554031 952262620 893600008 914561690 99281934 856869323 794798602 985689541 816852597 833477731 994350475 999164592 121477789 227835470 928881996 966782680 959118441 997956710 197974187 524011928 204833599 909707649 516390993 965990365 314802362 693038498 155519221 557121787 107552166 456169801 885059745 907157374 884623888 992911934 295548608 498987441 944359534 989559113 36953487 940961090 886868117 979985786 316330804 802839001 300430272 919620738 283039615 302896988 177416940 818367693 506621419 972923075 116536926 842626438 273622645 773813104 404079762 694695896 64301197 133923046 281270407 381757049 776908363 824584165 796767561 935298448 114233142 544043612 287219783 488105869 3060104 286739768 944062585 997075662 867413692 992334315 850367054 854643971 494168842 897398116 462647756 535479210 582248877 591899293 849833712 875177566 272700959 644557740 811720686 979635886 741890102 833483876 276912772 547872550 833744021 888596642 180326196 325802825 753461676 919828014 805593927 996101302 149178827 624924904 258881323 591968203 208078262 976060126 485395996 787283807 40611075 567364532 660059426 720809736 577602373 814234587 889406418 985362865 719921212 737247799 914993136 973468582 25754217 308326107 639356512 763367699 456521289 575397698 389877111 450489656 519706125 997779660 48546377 299325577 328657605 414646245 707573179 868047052 225649311 536822390 648187962 681762964 218645777 914748047 863541582 906935996 599131343 955366238 261519059 657476190 888633686 973965896 259646410 723370328 935099897 994470243 667504306 759312412 853426286 961243260 907785088 996726117 643717438 654779207 57878205 764791490 125342349 888840935 411684791 644259948 305785675 547021034 520509428 562706123 715486848 948055816 468151774 517731362 601623927 632498990 424433508 428653544 85405342 199814070 488109216 579390008 262916209 874134047 942999134 952885447 462147803 763668696 776492529 784714124 148071511 184290725 451585817 470862946 979817760 981879954 157780534 850615714 772119623 884727012 45912274 543634894 316310850 428346404 736018232 960037459 191927501 354035184 133241681 183690610 707336495 981345415 411909597 698003799 414292211 788086159 716113754 893267274 577572004 796888063 275159956 895038325 153164062 718582728 510741172 906810065 76626572 327305424 67117215 429737969 289128353 625052178 824771752 960169086 26418684 943871585 836748484 977551914 171698918 460351299 869301507 948878051 1698508 718374499 358127820 381393227 291708370 726030971 111131019 512829399 340883096 482283761 419599358 654154615 499445899 617816959 947990862 976081608 577116540 986210386 744223237 909178279 314789897 465679056 88371469 869364936 746050874 915357531 863944323 880609702 151637774 821224270 275837885 653731825 80064148 988117397 622448842 873445040 625485662 826056998 998090041 998758140 795660070 904464456 405485212 751600337 266375634 306527496 968905949 990128699 476392093 849386739 244202015 298545692 111921822 199128110 43961664 385628456 851709999 995274943 586535659 834465688 233938747 696368557 492476213 929462546 479170368 813889377 692702119 946215567 42309529 207464336 782774722 908373593 587481469 683944838 197622848 528684684 562092298 704131830 365727460 782947842 241310449 489073235 153293729 650341581 191155186 351834401 585613836 767778353 13592893 877500278 11222567 192522632 439038244 560471406 416762896 448044026 159147378 971655002 655410179 917101405 317301074 847353481 239024039 978394570 320710806 982315395 815835660 843753243 316147053 382737987 874477324 981828646 828060476 931776501 537506928 716727335 853055446 889260191 965123213 976017587 778132845 819441425 870882207 917415080 594056780 778608320 18216138 551164869 962579422 970309138 968961351 996375692 315373909 824632499 838449423 932237791 930636665 939897978 518544371 581671336 124414074 764127917 348445786 839364023 611494934 977607295 266894312 543206452 446728797 924640066 725120370 745218566 843842234 934528793 177978868 363163210 714240285 852340644 172825533 537243728 763196533 785841205 149847975 964339996 379619351 960249435 970806353 981044779 975316056 980355861 642924776 825950705 843975225 889441518 498513472 634948837 620764504 708709850 349816753 526686393 653032265 961792057 162431550 613178752 158272372 967677448 583464196 813965549 145136100 920997930 569017845 759038097 956320626 986223007 172783082 624555071 681212079 976345279 139687212 942963453 446315564 602310271 463862515 984316870 964446555 986659694 603832846 911703477 748337936 973194377 39209754 88641566 685959609 858196934 161610210 665180773 472218038 629917123 631640621 805296251 106633295 415105168 324600016 751677822 876564433 985930457 718282877 913828994 316711517 897538300 194600470 549493192 640779699 758272983 915224616 940411629 714561106 853683047 90645153 703106393 714789306 897839465 757657072 986162442 422248126 651308178 804924589 805631678 44568638 153528118 14466578 594094605 606761030 616067041 278945850 387078355 974875140 998672831 461600083 586317290 810135394 871229363 54882678 918487660 623422809 854027142 385373679 769764087 221988788 902773864 990303498 993060121 718882898 916746611 641225516 988695399 161704550 415303252 825690758 841196604 75947702 926934833 297151798 556468887 86375433 141952740 493467962 514147616 743113438 949867723 697354041 992068467 662726323 797441919 980765027 987405506 28539290 486354806 421401512 497743026 98055335 807576364 248284211 665337885 249243934 897546383 43593747 405891220 123926635 786174159 762687706 775908537 430418309 662636287 357805654 542780727 445972279 947983217 448792861 857094316 283448868 476856633 855582541 871298899 137670399 940653148 873662773 967198418 355914018 963932392 709842337 925990368 380363557 874360471 66991521 456283419 894661703 955585236 829813303 957856844 879888844 912689176 622716668 791793182 246777168 929925843 730221559 867992022 961562239 998015301 344665077 515152817 575966797 932429146 175360291 738466353 922445625 942000182 988542538 997090872 31028796 556322294 556373866 902719067 40251366 437598474 549019697 719963342 33293526 524035707 438084004 505650315 542033041 984327625 204378165 408645626 912309989 975769016 560765156 673084011 840024232 912625125 813192489 840152233 887467051 955647554 974650266 977581814 665483492 868509359 644873131 671097284 657164337 982561658 68581505 875426264 354367977 362247095 41177598 475629103 283614313 896703508 163931942 713933959 2655972 678272053 664592925 818803418 251312396 427222380 807451169 851069598 501138991 895036969 649316676 993689835 12702467 729065880 493808870 848966091 224473834 376552226 747339796 810151671 643401013 915141974 582840552 942374569 647596418 713445896 932485419 942430493 760427857 850452042 567977914 763110965 18809463 337137970 828792706 934168170 438649759 717118712 489884212 754131273 241348119 299391443 26064006 390473807 104596077 696396612 90278875 389323253 797696002 875414210 661016858 717984544 472482353 727826395 603739815 896808962 806623507 809801517 34909964 84148335 729900694 758076931 770597165 958049335 818206993 903361768 451959455 565546490 981523045 982821388 288885274 355875221 431325248 943203144 168127452 616765532 232924563 667597913 244538771 929780382 372159853 491638394 109327459 720191136 878026708 921642946 51220936 454485316 752701119 825009424 347096440 377491495 867882249 949092565 491544602 849715427 479207839 511616707 156542530 465385536 540203370 887540671 459658689 702101944 910068634 987359470 75907321 488475804 724212940 921340280 47199789 793359856 773664548 946838580 657021964 746704067 251360945 723459842 287775681 914262661 396081335 484512366 433929861 855842134 475228412 572113278 304469200 765525661 945775002 970959766 836402493 940328321 662398985 946840007 63928781 559891743 793997837 844325605 278393696 974211759 844599399 861839597 889665960 998495915 30481926 253801614 449376269 535447004 537819404 945380776 311037058 716152489 169925853 286845806 629931176 899864053 592403188 672531171 109584175 779185968 918177612 975086776 185780827 255882830 634704327 978383209 975830065 978352117 405809374 414090323 31327033 866915812 931226484 985213398 651444059 709911135 363936494 800270024 550487234 587380660 607295538 946261321 156038569 558644938 359261992 644982458 873020330 883489281 630790994 962481920 986443917 997907271 819860238 976485960 465997023 871839338 398813347 728792225 708520236 801374819 685139159 865142201 751419993 834089946 544429056 787499205 556452212 968981524 147403138 765909944 594327669 698216158 799125181 876380839 417553857 759721528 558277153 582959675 452233449 917781107 117946249 664450338 565932371 591491145 167515424 227610371 348288493 901390444 5808477 711760591 600630173 753627495 609076080 962227613 962520476 998865591 865494921 988766278 72189707 560846331 498200654 735810897 375106312 793108960 665928382 866981824 166222727 617254912 440002498 818840154 100349634 227157556 585943759 659868036 406704268 885523197 371296219 447012143 179463863 756495502 819095231 970078266 930471828 969216879 922417306 938572160 931495639 948309508 9127273 172741839 538201561 689954954 190624448 276384110 764937175 943197601 813958699 825050333 390084318 449003981 750843453 817219069 646614698 832589215 130687328 507964987 757613899 930124407 61678220 953556366 526998833 720008743 659181843 853192669 227136777 398995417 556631648 979649200 293761017 428818758 667972936 709712139 535782822 729851679 310887296 616334511 494693809 715917370 961988961 990965389 516419585 559707262 776889677 781194293 847192254 883150148 42352495 346920037 972607875 991714037 252597643 739921794 291465270 894343878 417034018 738958012 215012601 889297504 44298865 292459516 817210074 894460952 849524368 858197655 399905467 963578166 687194873 894584899 684675378 829578882 869542312 923913663 155541798 795863361 289639201 529299617 712599216 758950020 768812730 956480479 375981443 962163906 831460052 847144899 864828025 995074791 440653321 585795043 145221098 177875297 614321270 826817566 625970688 856956190 336176318 556763333 754356691 848491076 589099664 656896288 983623886 991976998 302226423 462444768 325280700 797089732 565195422 648500989 428793117 996562923 995250810 998425009 6392472 277285964 632645119 856298640 580406359 582818756 480181229 909914210 169059363 343424945 980145670 988716195 339179412 479656016 626651959 958334741 904022728 946325263 943858237 949258162 659001124 677743888 493728502 960681776 584471780 825977355 946621692 974619450 358384042 895370452 665873728 852097021 506038613 900820552 48303536 235323074 632517607 738623500 26869631 250684351 262229032 678132207 692858861 843972418 156637486 550666747 231581985 297088440 741037180 926821074 334924619 722979400 985733401 992440683 75234093 921573072 18984301 917739294 765341543 820461437 24981002 400783027 483467041 832634940 860611338 992110666 138456076 845770285 568546321 965046694 237956669 543439588 532311528 690397689 536135147 784748676 932783251 945053213 159478014 335558167 17805339 36099489 583359230 815660616 766362517 939989291 962072434 998899367 899167436 957443961 429371688 885021709 306509775 458182230 918463773 976064531 367097959 469859733 247141293 806683181 959415074 994037180 653882011 722203713 792163052 995292086 600398480 767977602 387415987 813984976 446484857 962763409 215773843 445807122 570082105 627431816 899593937 977577182 813202663 960377762 26764559 175290884 749608282 762768185 536310945 646453019 199886872 394092824 310223025 563779795 298180688 846915068 739781649 964135237 755319498 785658696 798005503 839913463 440480568 520238711 802449649 816898860 405101122 610285273 817791918 851876863 728609899 919639067 127655642 777922336 283053670 299714546 539576211 938376728 730243860 888916386 573696895 756156596 31943083 620520701 990010153 994291507 386330934 837458906 212354642 410365536 784189172 804597987 98573606 422370067 601728879 623511186 609593603 738144827 967510379 976380542 173557252 682466387 472213551 995024736 590128574 620077683 35168859 795150755 479778900 786833106 868486200 913761364 555382712 728543444 423245748 492250645 194301620 572090281 543665358 941181207 780837394 960781030 662118786 763873999 665441434 729804126 840190387 999183435 748632234 865464456 119468996 254118882 243306630 266042690 947498496 962307663 202654446 510952617 462527346 524764752 807279149 994965165 940182957 963124134 469086550 579549367 801329776 986231139 245785734 779088583 269365691 996913906 750544394 958092903 324288554 472774213 777631352 903311529 357832106 694749348 77998424 610187199 953125809 959562761 598246240 979664882 273560556 849249734 231758284 561656348 638966814 670202632 134280998 212718792 306363368 330020804 529892887 690692381 817117259 873986000 157338322 866893976 273241805 871779935 960793042 962414146 615120696 839242989 192322815 789427181 833388115 978999666 944303435 988541150 130358373 840277062 275697736 586528886 879596531 998222332 236021938 558735469 910251398 972462070 774501711 985657883 746928681 966803930 84151492 541617510 794014733 869576557 527991753 754320501 731581243 951799897 528974313 888761329 940488045 990479675 67661678 615647205 707578047 827286406 370880854 483175129 723983647 880415365 934753718 974185611 627151835 656938448 535300235 755593760 901060012 939848731 537528537 846108070 103115611 770429297 570216798 600907875 72842726 137069989 983732072 996712914 638698732 866761688 725254467 976242434 850552473 988928719 683609872 884558924 593918534 825795897 399413965 476774427 427033970 962130918 252674383 476613705 228505192 796526524 922189175 957703765 614086184 803579265 272162381 769980832 128130725 257944518 123838027 364068643 453143009 763001688 694591773 932456495 211750372 347932950 462222091 879105107 19813261 216975193 88625436 210568460 718523018 844321611 303167278 624707188 695861000 984236427 825477908 946608534 972708228 985662883 7529612 13936083 184171453 718067388 517981873 963236920 330974368 629453449 255144968 587993246 386795998 732709388 602473690 667821782 430953258 950440674 616954239 719971920 23010572 476373434 489939904 690297752 768581488 942900104 852853336 919208521 859204704 943136805 768277012 862094228 590660698 961818197 833430877 924990516 847787638 962589154 58185028 183146364 598097685 970848288 191554566 423735645 889326068 889611332 433750333 843240197 180498464 641175810 416512799 880871035 639224771 760175927 557051664 825780973 807563016 823885898 363605071 560812418 156988578 317529767 270257077 477063671 409179002 742310525 719960995 991843325 861840895 883260545 831424242 867058333 961550889 994443311 11160041 628969209 192125172 668979086 163443826 800619981 85015621 888421465 63164216 323752196 165360614 268036340 271134555 990042193 696871999 871725158 686761409 691124390 480396041 499859807 53638878 581044120 894718099 954683845 21477843 692851995 111601453 335129784 488055129 927376490 360517680 832078160 542454562 929517533 726097236 828111195 34673099 443973633 961637108 979337354 735068929 915553529 199062114 272292897 187079797 597438810 610858884 862168891 855229063 991393600 931478936 975780916 24063767 738655134 546568450 993711710 412600978 983435098 181640738 905667857 423511243 479633578 139300790 764735655 70604001 703317051 63099661 907431904 748014707 823770506 905341040 984800612 195313207 752477263 719730828 936648773 545335099 766916415 539757312 735886627 66636948 882706095 684846778 971681364 533752626 581423176 524657651 691436116 599187245 751169117 218451223 987230898 711190375 805195703 835946503 848795170 795784195 834471415 796775389 824453836 324946381 908794741 950081052 993307381 681361316 911304523 897256039 993307254 936302784 979903953 939679528 941343063 578368722 856046570 476133018 700738859 970704008 987005658 946266068 979476099 440809 316199724 578882229 744428946 234226811 729537180 706528839 715084367 851786162 854185923 926315923 959660508 715035859 978985522 482030811 523346912 853693603 896210819 83094699 409887209 67735536 609877359 79091811 660774265 932444099 934740038 263168173 700386323 983921971 990572079 661783653 745498567 908790158 946614865 576699080 856657637 561676119 730103768 278029229 707723144 491101420 900102700 861708652 978454705 190422418 574227802 325181990 948894152 991232666 996244331 703162387 820338391 447642145 505168849 920021249 971082339 133816694 216734883 741727396 746640190 795273332 933899638 526082374 723841206 434713498 471690400 291504903 753947118 365349615 883541343 181123818 727788532 393287812 427498863 218419501 749088600 796579951 864614680 92319623 994586768 176034335 857905032 855305518 991079886 609805817 708413603 712257607 910200182 461633354 975201888 459474423 971081303 230199638 261708178 416668402 702134560 258959406 335157915 212194293 964835196 746439517 917844762 137807549 299837950 194396331 538161946 369568553 578112641 333921696 719943741 125915999 633331506 711619863 891492398 401101115 448412152 763485106 788964530 295064586 745420609 523257215 547651157 119057190 900580709 518154079 669162023 254314170 799922069 885683300 908253803 343513351 681741458 531810044 925528050 544976877 928776586 469526815 921128596 980755733 992614830 302139792 858609630 133658133 511035021 400256363 937999787 149090746 549120675 105595316 991963723 774417178 949544324 537900797 633107340 765021450 795038926 676004384 732173768 993344246 996251636 469275027 689711673 132317418 713735688 358005082 368185359 920518967 925458491 208914652 221962160 847719969 985116522 226958248 351655908 398307792 429275489 273619063 533245949 902604441 936304734 355433979 411490623 391588135 589275142 124160854 901401374 142598383 996402811 898370980 960125176 91311502 894956021 502797465 933062163 338119808 736437576 539512602 680758030 508724600 561305500 817844939 863493119 662646173 985493975 287030356 637199324 291559041 303435189 197410970 989482334 366964403 963735336 709140049 778677610 886814823 989881247 165397761 618769248 13664814 95631983 734863924 783445396 916226849 998186692 147319335 703816876 336908100 570675304 189338685 862932121 782559767 960495104 35097605 590977579 788732670 876329758 325014580 358845056 734679402 774029390 173590218 398302626 519471590 972026125 175562270 805685764 757455693 891249626 217462676 944690704 501839526 792304962 973296934 984649933 131281310 697147689 414865574 890851167 726339519 924300514 209248358 731960274 210952151 906149343 489188246 714926262 918105029 955452515 398709456 994371788 86015480 629766493 97935155 635927078 191532542 555595393 736951858 992530992 644916403 684676271 518168187 581535115 369693549 780227389 578184435 839479706 495872371 938672413 372385197 850386098 55447667 337861188 921786546 969907759 731559647 733765644 742755581 834040215 986156718 996227367 621027304 892681177 385603601 476290885 786567103 857315372 159335120 400955077 431865026 642927326 58587450 192703418 313688744 361388079 868291923 922424805 240103454 987275136 486469699 788613095 341490500 686830236 879750715 903962546 34355464 215484721 686395269 938307556 403508782 423571466 152096789 313252849 524231960 529329411 348054379 838154883 956107453 967948703 480715020 518268208 728201072 830729965 47624559 759429274 109573292 223064659 829412323 867977956 109695553 640491134 652581157 714038201 526732883 998714495 707691562 968957186 469438660 886020939 102277746 871147200 143458583 533286606 705957801 858156007 765769913 873432763 399453409 715507227 205816900 432642458 197142599 252934950 78644408 959946414 932855460 976847445 506144160 776322201 560968513 922146094 408757509 977002885 777925774 877626115 604669776 979308944 81523711 485626433 871717737 937040303 668985288 708071954 936044186 937533649 455175983 779760523 511705183 820224924 734784355 825609589 91783976 550826596 435416595 919969388 789244419 824791702 293064417 803855838 675094306 906354441 755466811 820800323 7667224 72293852 379247475 864943744 789131787 843514134 367352501 678274607 117164185 211719773 908863308 942492742 324056603 414214501 526548533 878684598 360664965 667713889 637008682 845370925 782371318 821275873 428952915 543990486 625520519 810292359 943532454 959737887 48854257 282035220 52874671 215748873 822591943 928522065 471404557 902712104 763281135 951050159 726750395 977342832 953978567 967261880 890183644 906849413 485918699 932810473 135252249 970133817 456968768 529304067 629808308 799344803 550223912 576108089 444822217 555215461 341417773 680988528 273077477 290469235 79842603 932180659 130402458 456187657 300054369 967490931 330546633 395319201 938424986 972284403 458413805 470345286 659998412 736102393 111276495 113939056 15620832 103052565 94434263 596021910 797094385 922009917 204075349 226778819 182648638 620801804 732649478 850929304 177305741 183808190 285089161 887478808 959255374 972859887 572060284 784953240 1956667 943490231 753972921 897988667 772150072 932671900 722434669 798040293 97028565 132605155 899752131 949563293 429044540 683575665 699982532 910168816 266975611 719042175 185062868 383285710 361141584 390569712 115342245 468849910 350664522 471849165 670516061 743449432 581402164 882803801 560659803 988165906 9400518 694127563 501392767 615810273 538566295 942364510 977615965 991272810 359250873 819544240 810687204 878361172 82248296 514862255 825488522 979297012 80548464 619858232 947015572 998347002 143459822 736546821 587382896 944369002 57693085 939869048 447478947 618397339 625470639 749484620 324889086 462770589 957294574 985278460 426356783 771303157 958983743 996543008 164776691 425894001 258214030 627224151 222804263 541866352 363008351 845830276 72381936 190334151 868120068 901105478 248942417 451005056 258035405 992089027 748032762 959558098 727195794 785218178 384632910 977031595 335825562 615040450 462509340 769998351 642603068 800377470 176617589 781160799 933025025 955623702 974551045 983306049 197331756 922997982 490216289 725907855 403187677 566731688 307146104 847067125 446935637 727953853 708617479 825258094 38841647 257865032 706791116 781439627 889630714 943200261 503851552 915347999 937205694 992304072 551713942 711547034 516212740 701069875 437202061 612015816 212429321 382974172 972883165 992937720 543469978 771734067 857450204 912845063 554505313 587972253 290463314 679539369 310851080 579136742 831525076 953480450 282653312 578253927 985538823 996240943 247469956 272006213 919724547 965333153 340143989 975569090 665582230 690289198 798743204 912735397 142960271 520156732 783967281 985768036 961867146 971785314 334509018 975744500 454372411 683237992 760561770 928291344 566179772 580371152 191621298 412306340 651677933 772138213 733869434 748114342 572740635 914213351 274224517 399313454 37829877 323053213 510440920 854863161 693750554 803457660 889910561 957583814 28337071 671635874 841627144 935173326 601456033 618887625 972249142 973417235 912757576 986256091 317786758 377781200 212754278 296767236 291147426 764792061 741060144 818464029 95689825 975117385 400716873 845598186 467426832 486527074 139828392 590180802 96768213 934324909 146979878 891499346 989652166 993193461 639330116 785754416 537663145 682847518 393242924 869680652 142389226 418869162 41153449 168279302 686645784 722890316 226719690 347624463 873450229 923314255 282159010 328441367 112738244 240309460 988025467 990357074 206588541 580584401 588002873 901175184 854051158 874581102 990477954 993522016 514203156 986696100 130141009 731562597 652988609 697096183 661001430 665888204 149676084 579700912 146196597 685510072 950162168 974037941 31396452 678968411 470644038 680139749 264174459 471173223 531305395 555010733 222919867 710971782 784740164 947921365 697295872 821114221 739568953 882455270 411277830 773608185 110074292 931297942 815857298 949982357 512310155 718727054 514832978 681340809 86615726 522320289 588569353 618322792 198487426 979533920 303870684 348761472 178051920 439762366 801082669 937267393 826518471 872024381 772625623 773888847 943452049 966639126 11632841 486317877 313788246 623917722 353708027 521974598 496031808 745166631 235940026 298482690 800720678 833659052 525196052 882725235 860821983 967305333 390848962 609228611 766337199 884321561 523210304 954070665 688053151 901464442 396867193 983716019 320898870 757462159 66743544 672331096 724024393 821976098 816422403 946026027 635576216 680291538 177542560 813521176 169906681 946984467 257520842 607659708 599009782 789893940 763838938 905941944 616700867 681325852 959749391 967080617 535882968 951147736 243816462 310906338 199373755 274761938 19119530 835799779 311887441 847195399 823248191 858222620 137221861 301585208 216364194 924206313 192024606 820675041 974338229 978451340 417051468 448646543 699428682 987301601 602036447 951796690 631739231 956019403 25100643 37099845 21754584 633513989 19414001 294175591 466527111 590563216 759470637 869961150 881476781 966588594 674303374 766951168 108191258 747443850 890037859 952587255 321322666 965879279 955094858 984722381 331307419 692916240 224632101 485427356 916198540 930085051 909610598 997575547 67772400 964631373 782135127 878434989 110227933 200689868 974488497 986341798 706340597 945408953 791530029 901856968 688304260 726825986 27411235 876079821 385158479 842852085 676191490 836120471 584716065 806770488 489214682 654977431 224700782 610180303 820536220 931028489 42329538 862674670 552574510 667340886 100871307 965956674 443986314 914622263 843625328 936618529 552436415 681790284 582758272 616500355 265049291 735533228 245659087 808803437 183639425 303838859 249677073 955312450 734784736 957224348 407663303 781377310 649255041 780076320 7754961 247845868 873779861 892958453 421384671 482668399 579173969 751980934 455374799 588219796 426787079 655395504 743013004 796284296 875856659 948427663 774474338 843079150 738270874 856218420 167183531 621483510 828029965 887027988 134604256 784876227 465302546 523260589 863568933 912779207 776006544 858218890 479351449 532820779 946758523 971652350 621057313 655772838 24208780 401833182 108349161 123786696 958829661 980356241 187350774 669712734 769996752 968196783 329222024 732947104 590782945 598859231 356892160 641076870 557257636 731708386 774604405 787864993 192767602 968969631 905852820 953850487 122051055 177729629 594883085 810145743 289540699 534554956 712652132 805340433 361001023 816229875 713772904 838014788 963813512 989475047 771166569 861524274 142636822 981746095 868597019 914961812 916963949 947510319 489223924 778084757 687941289 850619747 103318043 320162418 887223688 988894203 316361512 775944661 150354022 888646630 981128384 992214653 803378746 946805957 612911202 641923862 774138881 951371288 920006140 991146450 609835476 781348510 448754092 578441183 685260216 841504105 939280250 941668406 85980383 449122001 195241488 360206575 648209014 747930342 945186920 994551832 63368063 800080885 719399676 792604788 218847740 507381450 558757338 834075231 578584758 965828368 358415633 653071732 929446143 963495858 1995450 381591667 782164008 902464629 296481344 670078150 36262257 181731079 736943342 927578872 34078578 144482506 256102119 730099120 877301345 943417596 142911131 386168231 789254061 998898663 265906366 762864054 241335639 413172642 755317445 872384510 135934752 489841273 819978267 915726966 3837245 62722554 390019021 901280047 975307543 988912703 308591861 979399449 904150650 996243159 832421395 846781056 480515545 889892505 35748853 506766888 266064413 462011134 893945249 972358473 894660482 947882619 487694227 909677318 438992632 927805859 541308582 804090133 169055466 199169125 766646785 796134847 748700217 790849155 33461034 218034307 268317021 621851047 782602626 972648353 173940078 924201129 707616876 709006874 965887357 980387062 208952820 506649446 373866865 949328853 230675386 250211979 47572536 562063801 338064535 396682978 473038842 924650629 820485513 822129146 190300482 291915173 630885502 991496457 618370832 851672615 546877862 650071631 881605637 886795910 513112941 731589713 34503855 239203000 646952870 883702969 809811420 869262830 281222340 954079687 854231737 881305574 77272348 528144985 978162670 981498183 601643694 827290120 519081857 697142592 135217133 326963204 905949289 914035915 314484689 651064124 345814213 916433642 447832997 606386715 925146915 935373955 469596760 960276124 687371842 920762140 455665512 928321362 292537763 321838909 706555960 727283060 361098195 474497411 408741815 837119887 908426934 941412286 624381490 753181218 708795358 711407688 50351905 101484933 637521140 722285130 138852119 465243397 262749877 341377486 354985280 562880486 693352122 959399819 440109723 693122505 140246467 321224751 987113529 990950019 428019760 727612846 634205092 691045167 389881742 521678415 423379148 831330933 67638501 587763389 220872691 847514209 218987167 592584398 6030267 470926050 357016371 677128986 503085735 833114965 358055798 689085676 628779011 900387473 726496271 964664576 280075974 534733371 292870100 630998173 84956194 167724581 361674087 721804445 947858411 970778744 906520063 948563249 382342820 621100434 373826457 947227058 58880393 808223349 575672632 665910971 534498190 674049866 65208242 506485455 238803291 644447897 356393507 475320756 438583744 873535168 552611292 940732613 460040572 939114445 228883951 297474905 770585691 776061944 278880401 551417594 656639575 761152742 499999806 850411578 339782564 587164618 482466336 494934250 170550817 407537324 61465895 483036066 973157964 984248618 754095060 862537407 736997089 779591028 890563398 922283249 304587586 320697981 372169596 519449061 964365607 976711625 570117947 625305079 165257023 870837623 693327199 756558084 678533427 969652857 179701261 702418877 150552218 555182336 935474788 942640627 857873021 885866072 288188568 423753864 123522016 126637891 469979205 726510360 201399883 631281654 420076676 585173407 301393737 638923481 958269694 971252972 57467856 322102299 987539561 996622537 552659087 653606000 331597319 836757004 191063900 351492270 330341400 546933218 924719959 963043587 755416882 825980988 783719311 936255133 45596697 225423562 831298891 995216088 568449812 939308881 991553493 992867071 616906907 639117663 17611048 488416833 99456109 139473813 420319288 823137819 747257174 799359939 99799489 114467733 447571413 631786895 635032908 729776067 831588973 877936218 905766524 909759852 248597973 657004011 850910200 983921733 782326939 875729407 237475033 597910199 563530210 880562627 486754644 773419613 712871873 973049970 952938126 980053127 817425086 870332694 698551359 770230950 551518876 644838617 60174360 536526310 95388248 732241836 792306857 950612613 514618719 560090551 639495498 805972759 422694002 572382532 153098975 858400998 151829542 449701609 967671869 986372292 329409162 485014941 907978481 982421715 870503549 941708352 39373519 215808496 777707626 812352898 942267228 994102737 92237760 565224240 603273903 805442948 485795858 957599202 739733920 957103232 382060390 417339379 682201791 684149391 232801161 535563753 177763238 987754928 812070843 923016406 362910530 763066586 526880032 653846732 419103579 840131824 62955945 546043347 34912191 381815502 334920354 911176899 985483684 990907607 216715295 257499801 927054889 994691037 767146526 903055940 50792574 830379637 165259629 419981746 332192181 421222691 522236161 966806368 1040486 131410244 278044066 467559031 395505751 816434507 348264166 917226853 6209937 380913522 419442069 803154052 83752423 391583606 16283872 359398840 263017099 440987597 806646742 988087100 634950897 723036814 60931841 984077315 376785355 509949582 155699213 207467231 552917650 890902848 19901696 322215201 836239390 975871426 656087489 969967829 244584919 518904619 106353361 411063380 11844862 170838394 504100436 667642584 716045386 785007414 385031890 495100312 834187077 987202229 589287481 739436084 716048369 840070151 839002096 970575193 171743243 493152919 320162901 626087099 960034825 998627133 107222171 760910562 483463264 752840329 966690840 994872957 593532704 971351425 144701673 418515791 946943103 979282339 574615420 814462971 471611345 503072470 220185624 511161807 384074004 822968798 970646058 974097756 353816422 557152230 753354935 854255620 518096338 988585981 401947748 579358646 23082262 799987051 560528262 698054127 292170147 432448695 385659769 526989138 457633902 528444460 728381799 735510306 84743007 751207159 190378179 749788251 120057461 905041236 346757770 859534019 411604316 627604879 313974594 995567421 955415972 977079268 317059588 731187228 87873815 211060965 914252699 935784749 479702613 949890582 734804327 863682548 121946481 855390497 398347111 749958800 494014164 558466123 49787621 317373994 116302593 323378747 110821004 589709148 790966 995366547 370917428 539154657 871138437 911261317 406790322 904770281 801847807 998139856 329057154 926071039 162709973 410139347 158530537 960023127 543232730 826007983 549202999 696594840 481105796 651150816 959753794 996688924 310186013 876435238 4984139 107907358 429462754 832811029 662174199 826412999 85187308 988681871 482232599 610296921 345364940 669756339 739985137 934060681 759783905 933572395 429263150 825469487 169376737 651438011 58138371 192740461 933307036 935144816 966205866 974725360 216324098 465543681 272379014 380935449 811057415 907549647 154385549 778388256 657779099 794565222 407649864 933558217 325585895 653921209 320615313 843216334 36705215 798748043 327988926 908414106 968436496 974778499 409679789 717530425 115826934 607817724 252393051 930828988 48540999 355641851 694286479 904538082 896106048 968062167 78444083 307359998 854687907 974976511 543948436 968582038 597881362 726210214 423954626 740638816 718232208 951765251 89619647 729698594 181717299 810822042 339576180 836869428 960711814 980953969 305779899 467368728 751564616 799218522 950610163 971826902 23541601 416852993 40642513 409389062 158074772 928720211 667988014 969474349 32229136 645124733 395133581 550472040 161235853 961431604 484859842 683180699 989630280 998522564 535700571 750179569 172413321 793994808 926207123 969652970 133337203 784167856 354502530 840126373 637469338 660390010 359251229 786034943 590210286 887399824 319652633 745623702 125774531 790202964 449133228 821909450 10284669 351388412 156307582 159970449 336649766 359160829 932947909 954336320 902290985 925756019 55975916 83157419 336572305 743019090 308851249 863319061 688784308 830432642 665346840 685448666 907430011 998022920 749846658 997683632 920098677 936422255 220731886 526940056 624602645 882317694 138152541 708264823 455406031 826127354 550334651 831727821 218275147 970672899 226813988 428823751 729740794 976118982 846922485 958438262 675967592 728381906 101493282 361520668 706167576 729256382 664148899 872995792 46052250 302026627 263328773 903039407 954452337 982040299 92519030 434150704 823903437 853601158 338227555 597416110 274655433 465264440 578247694 854731556 166940917 773220080 498953108 733741795 192067093 375112263 53578922 596438309 851680962 868807379 450169614 782951487 73557290 374556689 58000068 177551772 696039241 905466984 302270264 437672115 183013191 506372361 37996364 248294461 601871768 659597662 141924508 251410667 963877329 983672203 213132909 908548053 578898305 765966958 287990408 919321303 431395426 585978292 677552792 741332075 808860357 923106802 134619864 291426327 573173635 888191585 668448153 948544731 305900507 711006648 773126957 813022271 643917845 668522458 669137170 944601043 712315804 772170714 381954833 804052490 234639058 709697119 366790100 806250063 187552602 402218204 804745821 988989532 166324860 261354589 27440812 60212718 935600189 938634220 873207220 879510642 951315749 967681757 281062320 958635361 738722201 786326116 715691543 980139961 300788270 780129906 835332356 957883307 919809125 976560015 271427052 335517518 653419357 682517751 58262990 355917518 2542812 213252095 279485535 837178399 858563630 988245426 388025804 756295031 316174465 586084781 712235114 927656371 841645193 974019006 750869749 871699653 501112857 519481767 16458196 664236355 45329252 51407222 238178040 349623237 405434077 894543898 466037538 929067099 60644581 497573476 204417633 600876653 298247149 593641422 49510765 248902729 806596369 873682647 82473472 799227329 817296743 957748087 480456031 590084895 157686728 761886804 766668002 775904382 275646979 726119227 353174921 890987814 1892752 225685222 761472905 877905155 750145285 880558699 87933855 886271209 933559944 973809607 860886464 958683253 287100532 761250197 187115871 948569672 870108874 965227878 484854409 753252522 984375200 988372960 738828404 903647863 797131675 810437588 363550325 717425211 77486768 632195090 990694260 995367492 58542289 476162481 460986881 937934725 577978744 742909590 907194330 964527359 27309785 259774827 767755966 873710593 309768249 800975081 224967680 423447419 76151118 987174963 628561741 634618442 589209624 844398137 717488633 751036128 168548615 820951922 101625318 623044604 78133695 137180635 590246193 621129089 928608658 960440080 489646476 529739496 977525336 982963357 217305325 933653180 416775079 494571830 135142983 397066748 858354996 964249773 402298874 640736555 231338781 934986175 851620478 853737449 145784612 987682940 602554893 606611031 728232968 746358247 118527334 923064887 714795813 841105311 689308852 742250858 500056742 548372028 790132703 801607892 578516273 726774032 364146459 961958997 14194034 725350514 258474950 479030706 227195365 761244420 187521834 323405586 374090876 922344211 529329449 919808661 4717529 915188053 353218598 538874566 648366696 659934148 323790738 958198940 798518755 837158842 232079371 992577844 548541901 572125303 56606871 726990598 746485200 779202475 106879494 195637623 734656927 952291739 636430700 947131063 595282769 982945886 983905829 985175531 454249770 779087188 216201014 956228409 106996981 141335672 215398386 335021457 301528653 691956994 151517499 415066734 84855105 86684383 596385241 645485371 992231696 995357061 414680558 655067368 159604391 429214611 769034869 884968707 965151305 972290008 502411292 506257976 485659146 665658373 959507132 984873825 5636050 628268952 8823620 29652917 989286620 999245846 907785876 953967078 31693567 905876068 879400438 931572022 430155140 901799824 4459474 693643191 675383957 771277946 34464534 148184888 332483975 588854953 517173483 861708669 138663183 806546213 206039687 903780457 72424244 160576196 866406611 990770350 989523506 989969519 831140577 906724308 106671535 860337946 26406972 510593589 978783983 980765003 583611011 791636216 517712283 819938974 831095233 962417385 22068947 202087919 227049168 308135014 585363616 942423831 271544798 494101046 695022486 969829087 85144456 491363662 722172965 763520292 236706724 583451721 474143080 755151517 911755138 948562267 227442930 376249495 221872180 376493487 386423006 564974642 984119011 993837302 168461405 446672000 685951746 826661753 896140300 995836710 976373999 994536067 774004321 991811381 931772362 962463579 161530525 741573415 201101874 458383661 308688979 359302843 470644754 531604607 692490688 883158218 338579039 635910987 368960651 890115820 534775830 846126656 522311138 927471443 137315508 159947949 31294129 863347552 412559634 771658025 296270157 842198735 301077411 480762049 154905145 466910592 708470673 790263955 882211489 977117832 903886872 981571420 767514496 781750083 652848093 782258814 257620195 681837559 330774004 351852189 166928552 445217425 807892229 950007601 363477718 428556593 2333351 666214935 552779837 725731073 295214835 757178639 620684388 741024792 570985651 696052982 441839306 760395633 301091240 593695303 621768831 756676359 336487604 962917620 229438951 804558497 697672705 994264838 689690247 981004100 271518476 458066030 547394752 675878894 222733701 898011633 971887341 980354530 377308898 736766604 666300442 800439843 519727745 715325279 927842354 967442378 831292631 897884810 842527963 956194720 573357023 723175871 576904986 819382952 909273819 982291411 771166303 887063396 782625791 909033988 679677800 796683593 280813801 766745156 264989230 670785593 3664556 73225634 102031338 665545584 39975314 175445186 56657546 493553628 914702574 976310299 636125622 751040627 839889995 947623843 143148447 375883967 303087932 766571511 440838948 606958563 122978986 252941645 154295892 348993643 243318527 669692197 841412158 938382487 711544869 966115342 539439098 789540760 285310264 868833242 716081656 907899329 711432286 764194172 462003222 820251533 84797014 506816141 626798282 996369804 698130343 853295568 721401330 865053983 211159294 585662399 953195318 962975813 208252106 803506005 760794530 889613861 122252075 450573018 264164862 684585451 759936899 861902414 444108608 655606364 251703842 798567801 920791338 937312013 589989711 742535904 935362156 956067022 740131034 964611253 401089022 644785525 664782131 665842171 52738287 545109278 750006739 780366908 777708182 914176902 59675339 399917880 98330777 818228220 919069391 967868460 922063171 955649534 728467363 744829492 198330119 528567516 326135580 581333375 828516972 847842745 267087692 747239490 672331464 872454904 459977261 614494402 349905367 961686806 657082975 971355147 162287823 964257430 841878302 842919462 141347181 402787419 877510780 964060526 537304611 551905107 356108959 535012351 782354789 963231776 723984435 807815278 420767523 423424033 572121112 820458279 434790863 695990291 93860272 560404326 203851503 409213424 159029069 169453437 109351108 961058806 115625532 360412235 992704398 998220300 629604786 851188800 949946514 988989654 733218895 901378876 333367416 930370071 622480544 706949002 598427359 939203201 762620708 868295753 96664508 677557457 454119481 908747304 73097242 894347624 429724770 835296136 944786933 990526203 230430285 553179600 47385591 602178123 830250687 945469063 888118119 939547716 808393207 878681684 140028151 835631305 259232264 349936606 318248769 770405056 674852494 877803797 15080588 131520129 884570997 987005460 462145762 866027230 982462662 985192542 371257205 705634110 621596055 746023217 367201757 968945729 282012390 327020389 173622662 857536380 877685659 952316100 579956890 664059267 832956914 989467073 649240451 943769409 208193913 882430618 426270824 535543706 920029372 979685773 829424466 935956196 949302287 957137634 679603330 689226878 398044759 459903906 61434741 165307042 77310120 239495950 838961941 892186307 639531533 989999605 379727678 779243610 894946269 951206553 917135573 919046659 392614587 712460442 870992849 891865956 427437138 527333980 850615030 974162907 397037236 698132823 582515325 616876199 511415099 776905078 522516807 692212119 245087322 423625810 610076612 711214851 430160127 488935799 694730358 766404612 153575229 273355453 390201987 876288262 658531526 788714413 537606314 671518078 175068370 530853755 390056042 651847927 313171309 749913809 701848228 851754317 113803663 482441272 237148827 499382609 148309666 877291544 362746257 957371657 220028441 269582619 886262586 959058929 961424536 964045821 126961028 794463938 103689029 809638463 136731973 575161298 964281289 994845298 681310829 722638289 178176976 517118300 489580627 916004369 971969782 983274931 214791893 891746199 602909087 943316082 586755151 630857739 913574681 970479770 458527622 586217703 178592026 179965712 255741395 585519532 169138413 447177549 598809203 947337307 666396871 942650907 527919164 725936338 889617544 937191889 56501892 738669789 402295478 836481463 431759771 501748664 992098970 997579247 356442932 651429528 517143120 898145816 137693371 246009603 379602026 712831314 305790595 777996753 798871809 893140652 389301810 840550646 254652310 337043339 192741147 272853276 979858589 980812178 494790790 768937380 64332712 160568185 950978305 977077467 385101567 489825036 688731930 896159881 510533074 913690650 588194865 908699342 853042563 993042140 400718150 427931640 472600191 781515574 517186223 610336137 661997153 876631835 164035184 429558539 205474881 708308622 691946851 950333954 13672955 149103631 432863377 790595444 472721716 935894422 123629876 798026669 937209469 959449708 471723068 718581948 753469476 835092656 195943337 985448116 347932957 586859285 67019299 152483245 81872228 871427467 983368790 998034741 158773405 357538280 6500309 663176059 443966482 694626472 828394682 849923755 738321560 827995021 321686570 849002630 771015943 979777745 319422002 733152363 922464160 950473224 270856420 623968222 684067775 867128608 384865405 680837954 48423722 242616826 588048965 811881390 924429222 993039150 549112199 981661967 837893709 996540144 911354343 921131186 943341395 959791470 869926557 983206111 658009291 983395087 861649371 871147591 569237651 680075868 383174292 617138976 279320480 333247786 671035739 766953671 253984764 299788056 457339205 463495988 873892753 878034521 53369815 299420730 887563953 991669634 817041301 835000471 255954607 858740617 761983349 892257627 501902110 906985035 418813474 697516001 277597265 737115473 440874575 634709088 278014287 578637410 950197242 965369232 647995751 834357014 988783171 993147546 321516517 447339079 205879561 317416394 655400174 779640580 932247770 983082743 590206569 980472602 409102100 896914075 334844457 592022388 797801226 825185775 434415158 928673112 239884075 957683542 878487733 920512838 278734180 308730992 865860324 911814264 279045787 789783191 591356584 695732707 743231908 969182207 948767606 992159041 3478043 888634059 36259347 485771649 680724391 833369983 504599103 892978853 787869629 988466135 315819986 500012881 876859761 914033778 914614008 937415013 610288808 748110934 362536057 947031353 679399083 788238855 971723704 998469475 74134846 999092273 629832036 952619053 128326458 587458888 160214929 291143249 677427770 836661869 266696319 349556091 401214046 673155852 693827302 751271421 285257391 851938488 964848782 965225550 552481558 790591292 412350103 725030475 507113770 531887876 35022172 209045668 150038641 996631358 543446747 831753219 937579949 947017077 747788573 923203943 462252036 709972090 784341073 920254959 306692723 792949596 846458341 862974716 183943343 915821881 101018159 420978019 710182159 835414695 765679746 957996187 503905765 599685222 515284721 516255503 700836700 771090202 446423705 488845984 121406609 245134030 651924732 746355876 896168306 968132268 625041915 652056881 610526549 992081703 946390504 995062656 480363362 809986582 656795203 748079837 250963011 288417810 382007984 613663854 595416000 958155969 89354872 878140037 87290602 406056561 908323622 978829275 149250769 915541063 233653937 512573629 786421155 832107058 466669275 602819697 474331818 936321061 860763868 931801631 847961820 913955294 375932458 588884822 239506432 665497124 626437352 672666932 776642813 860105379 640478838 873054488 78924564 206304306 683927041 943544530 478446736 706188247 423109013 938471387 904125446 999086156 984430118 987344147 193158905 328512164 569976661 716929801 157598434 944896564 216059153 595973850 612529995 617128721 16787923 733949994 577500761 657563086 156344828 315097849 587097003 825190894 851419631 908163038 528434503 661553560 165884171 553567764 161062687 338278233 10647589 156100427 547255612 900650231 534173860 989811420 286828874 783133385 306102707 610294310 897881120 978741656 802400569 821477647 651767097 724407903 63422951 393550226 767567750 908736268 826153895 968083075 872270661 901539663 136655333 180613870 990044371 996890430 994347924 994864636 86335563 852798305 115571182 938169081 411842474 650206723 665758751 817624231 252379375 419542314 882790860 952933152 464710503 553467403 664364110 724446348 214989725 885001815 23280064 833041905 324762682 698640784 188535597 206870429 100175775 600067082 20522217 280415758 439652312 932783625 292246425 922231860 285857924 327460799 889986308 986004788 897143728 982247873 107061743 166851813 910785874 936494041 327064080 506191200 252646150 864717289 69490438 532734294 686511467 867528020 522459925 572896697 669008259 700259333 552605828 797995972 12032802 365572563 50592272 832095492 32777200 988272428 187638915 557139176 182096085 242148407 983862781 985056658 823937717 829593068 144813507 221894154 282710209 534799083 158994221 259934627 587614539 634404615 740860312 958780224 455774695 808058105 900103493 928161604 812219044 976241287 629148928 661899242 964557489 979260738 314909316 578170684 859336362 974465435 44754184 399490326 366614487 617823600 739374571 978704038 717837842 791455375 180190177 276240371 296924159 321059470 537706337 818962405 971720196 973189867 51847604 173502541 553605051 760087300 639583034 820986070 251699049 872051731 586604787 939684589 542134801 675952023 984366300 986703268 128609507 897882343 441489735 664663378 376657829 828001666 748642068 756054165 730748744 767435657 579256365 637554686 144250960 984435245 794098792 935051214 927827659 957545210 36753360 991066610 777420868 778657593 542209780 699200102 554244250 835280269 987472027 995678262 716683911 747111594 387590620 908691564 646740471 830091553 446201063 725420232 389188079 433459460 126701760 264732915 92623466 94111475 951320752 972901503 276019110 804322191 225422275 885741344 604495090 652292733 990471006 993902779 816869912 869251533 64627239 471705743 203736210 960331611 260910889 844234137 195960575 867765703 1186268 372506587 171037346 907209643 534286428 812772315 178686605 224270974 193405494 774642914 820622229 958723818 515170452 903643222 125907342 975527716 537587538 728298051 84144275 653789998 672656698 978349691 279779924 783894812 406419286 650958674 804156954 916827426 137142663 763197265 911680851 961400568 965751765 981710480 61825894 563385879 219506045 883675144 135358875 251709967 545956401 984009418 44910382 138896125 993461890 997868269 627513679 796598310 802236023 865353409 81084456 706651674 145512799 152732499 737459201 908748653 531334765 696910861 919238801 974026251 230839309 804334675 195774244 864376527 695064754 844452800 545089151 881264604 399040769 699715815 326993533 401227076 761477646 893010433 564406236 796287983 12565244 70987216 411598609 514515399 65271988 269365878 664571414 851053750 899944745 921103844 644225109 988093877 53918492 380587013 337718401 895687235 956485349 956490251 79588633 794301556 830316070 948388914 208097929 980866877 259783330 778863708 855360602 885110401 925684515 943549245 929093106 978811119 867441889 921350681 572898165 960551377 603174661 698603823 516976302 995755855 922327961 952883010 679539846 733545605 56799736 295584523 639939981 933240217 352610176 517575673 769829237 789367557 594835379 850741762 943626447 980226299 257765553 962658746 249212495 516187058 176772501 923432265 958979188 981226459 833678944 844091341 503428021 887057481 449151670 827588367 807270548 973618622 648846011 923583538 45159951 675997087 497157427 816377268 244680479 294867709 569591687 935021639 697959158 828713160 660967934 755624487 812548730 984125928 106123865 223674850 184188811 304192577 590936885 701300804 330453280 897866484 785797468 862366844 512428903 732837706 978110201 980404328 991859967 994843956 109825219 251515288 931000260 976231382 214945573 592885968 721310868 990652520 618833704 978960162 164009486 917004454 994521186 995284264 302020802 614855324 293718030 792634394 214706318 264889903 312110239 962200284 476480644 627936893 396436061 689525458 540065303 967667576 505982545 533146117 735834719 822594954 989064465 996513786 626044908 657892054 848546789 908260429 513482207 877077641 170073229 908419934 461858746 483400696 527208407 630537243 966092945 996194004 339206719 618123436 411116627 751314100 209625809 274218312 78375940 346906723 719456606 811818862 260849743 278243627 841432886 965136211 929180982 946177947 569936683 748073476 825274239 998130944 613492934 764394521 58031421 727070146 139330309 284275955 719335928 952046290 772219698 889679168 836853842 884453861 348026715 878875918 844974885 946824741 676289649 952286992 541504051 698439844 848297158 903468838 232247802 769997687 897837217 968577444 428585120 597319569 258677130 484371136 439855065 851721103 404800826 928215495 539973343 693660687 801565914 987819829 454085382 883954071 730094382 736950314 290009274 688532086 741644352 794165675 187708177 223819882 657203771 970855192 503628703 999318259 487692128 943153673 25860965 335176737 96922759 849613398 948975439 996342248 198441670 374095260 373010863 627121970 764004247 892621388 503802389 890438272 697621403 737809856 538327557 717281536 669471212 710668850 172460274 534686495 263919241 314347584 140588285 841741037 756347101 784790437 417079416 883794192 418638502 586752235 528914751 980673749 609610958 645354260 543662728 692419258 373185904 390798326 805907445 839746079 498303579 614052032 916323312 940236135 795109246 990421291 519270080 852105449 100914669 704689213 773088091 886122921 56407650 767048373 657444693 730921211 674912538 893750190 849037503 958559938 585171456 839212308 73296689 95454085 337524151 865771422 335439891 935610768 911476352 924539946 862783823 867377863 129084660 701845129 438486515 635533151 458485741 579052176 355962092 452147810 74873761 820236811 375391547 659899546 393243232 571876357 345573258 703253297 997700962 998064457 812156857 855277342 633613810 636185226 342239279 398936570 72046511 272970102 837128272 964429389 332707563 455508211 97246821 923787735 775194847 905446196 624130785 636650833 283543967 830152169 17640931 977154268 419405423 594010268 976909469 992412574 789666956 791154281 405615069 931351246 371978092 873177418 584395887 833506861 180098372 286912551 63154264 371235340 57388312 813635699 566242419 738234830 598661834 670036116 987688220 992833093 95986676 508609177 491337242 686707930 844713945 849665896 380590964 735992893 793335110 863386719 892848711 992732773 776114424 884857642 895198023 992867804 942819500 987624376 62887375 328726642 183656463 652810178 254413976 965570152 207931891 413948777 451140155 602042641 110822957 780671419 732490756 760441157 690541539 732267685 520598498 571458674 211306533 641188624 435535322 573482470 204610857 487067228 272599202 371782065 760103617 840148563 491118462 953794721 549032105 638163477 451308701 960049505 869369734 950093578 405236096 520728563 564673119 671696881 237082755 961120083 745594587 760781834 683606992 938833398 720185603 805351651 106602538 720805964 623774918 799715977 251110084 254099483 476292733 899475032 3096831 526184342 204972848 280778090 533612355 578661370 401550068 806662044 205349918 935193612 538420608 599777179 580559034 807006757 468606839 512376981 469046700 520050385 584724033 960359427 685430766 913336997 17882471 579846480 982521669 991824880 574096463 680348289 228173085 525251723 126804681 168014369 341577589 951734681 423883028 468627625 279069233 848938983 994484518 997842253 626356569 850782062 73562769 516595241 120224928 952147899 580674128 628674654 301179289 927963783 705722324 814404054 112215955 729716299 270559282 508807051 762289081 907589702 532380061 841712806 730030132 799174680 531850567 714046579 25859726 701236483 321975286 606663210 694659112 846076787 922267225 991045899 379962254 904972768 818691113 969418111 409676738 580818477 956109634 994948723 8198366 989111947 780344402 868792096 719618050 798036918 747576047 879711875 537982590 845675782 829952493 847131737 110307026 774158742 408585029 545421632 116722368 621262856 599255513 914783271 964267274 998242929 688381242 725721337 433349 466153968 177455387 945064384 401788936 656971195 700615311 891174076 257754555 906642940 909592 549067850 916809362 917124950 157678237 922336277 831450298 879100415 54631724 731733612 96727681 881480927 139597657 228974712 542990996 801379396 216010628 310114028 326075175 763153656 846072257 913512333 944583798 976686196 757627195 877542378 574140823 855172841 544784105 649752151 700182544 779927139 588000625 730599079 529009796 547149704 58319670 774169653 400288762 510956680 777510886 905254327 777638645 967919435 987457356 992614181 709639065 848305913 474007214 478998739 358466961 908378921 616703797 699382043 180188873 883047129 971057266 984118998 589948782 774374296 685605224 978006781 137795921 373151589 724102484 830925497 478075295 686114289 966588548 980250862 416740792 542743001 736384349 785198705 622002847 756532586 984112249 992015989 629112189 705271796 940449079 942523139 347616969 385454045 929054368 936025681 672570851 868877518 535360980 799477157 32926337 745783753 23632358 251562074 440198966 617782574 394175488 767058061 927784560 997620156 623465083 686001002 19523808 915868067 536261385 729919203 331216050 583924497 478451574 623101562 593426921 987896607 555406427 703353206 912444075 964631650 259881627 566504900 602301361 802687277 389411276 856315679 505101092 981795160 555674722 572569907 62485191 102383725 495482923 767362678 152545294 428793756 133949144 251843417 269847847 737270636 648016359 662962962 17724185 444670966 984034347 992059330 265949491 498835484 716951002 921198642 378977820 675770132 559399752 702722708 979796321 984188918 809856718 870697830 75976822 648871323 835255111 992847536 521755384 604266945 107224365 469026266 358689145 908155002 696970870 918856381 488727936 989708723 70464388 335577916 256365266 299817905 717081766 970904351 778200371 965133157 667942982 710475591 542114291 641680815 606141737 921315515 520381789 951336119 169279613 627542619 240622570 625327346 570784076 810747430 197607878 956935578 925833048 970360275 589915979 874982099 274534180 914013617 767040155 938891184 645842418 829885587 636093990 906155207 847956043 940487710 751409747 954644624 383538756 917629983 141983224 638075734 842646724 925311464 618272439 835316298 803839952 876066298 619636231 656139574 29770922 980029982 397790195 864019647 166419724 394207836 891287413 942821157 768727787 916896396 635342398 653239556 245254472 682874014 798898906 929170963 12719745 847419951 490977149 956558041 556033245 951994020 913911881 952900666 551768762 558327071 394208332 993397388 911710827 950290913 23632361 256932448 990673106 999238796 710998574 903008045 156717581 796103401 529725050 660939290 148672354 594272155 435094642 723605684 893692385 924718763 13590786 720050162 922611635 925551462 600650496 769018639 700642473 745351471 590290545 591749934 826068155 902007638 824433851 860094913 341837223 576863512 453368100 534573317 490357352 833093367 264649546 662028974 691877150 934288112 670953255 748920815 41465197 934154219 667211797 878484293 735308558 908268555 104690841 511684118 922612539 997268293 270042451 284496670 359630124 852895547 759517534 788195997 346295314 636985529 282527019 840557959 71568181 455729423 995779792 996673587 758556272 761472981 31213975 344882034 447067989 796838447 661949938 669909435 367169708 536517351 286498623 355753648 99449127 368520368 668600389 796983211 303197739 574832025 780285809 910203787 653330535 690815105 206124496 283939095 531525180 794037188 641206663 754453449 623038347 982009099 476160706 971090956 506203373 778079771 177867339 794701765 835696720 882659210 602469094 795334408 289213509 473085819 349130082 581078660 912310805 925112278 580301474 942665268 678407344 694476804 225078402 801516816 699052603 699668739 265664562 949988863 342688346 738784151 740873324 780708278 822467400 991883232 807455868 933452968 156537332 217621729 434716722 832418947 903079116 972282732 144321087 249713429 58620950 803875378 285615785 691589929 270365812 434704101 114140622 476858707 417573050 465847400 590944692 642321762 414773598 467704122 763876489 785985807 534511227 540851776 894915860 954278144 37265075 52580138 874415397 926727700 542901263 978448869 734620936 998485911 775256308 843655738 386068923 911956588 944209687 947404009 71485592 585772404 208041622 607894334 193143594 498059337 600557203 814406717 560455573 991659277 271163396 616442929 435406876 546131273 680684625 752109624 741516667 997173634 652476171 680111730 746586523 825643559 564657628 727225156 493979363 544390322 235915953 346275052 699645955 758203849 768216968 780160437 591084165 648403913 607317170 970912161 74651346 106118619 309181507 410109502 730950741 932557663 620466466 647211741 485752381 761728752 652831545 846202802 491155870 707315061 609098534 906055957 572021002 927534108 254617420 557067435 779260395 973439481 539592309 817782461 701966738 854172274 595317736 728476184 790589357 873412878 562063887 822114435 888312694 941312726 573541496 716454659 271170123 707275068 760478649 950863580 281645308 544833527 475630059 607566951 394004378 997555434 219957561 245473571 192596105 446452221 294804428 402745103 259526284 980845711 797353426 838677501 821127935 865934116 535290455 766970360 741449925 803044461 488019555 819860418 467286250 935352730 406101042 916887462 131520730 260309687 106161932 917326727 15395473 500414529 692353732 844452354 944573567 958598289 491589121 844499066 405111438 727159622 419549641 775860553 176795308 666675702 976080144 976683153 964559281 983865210 124274258 441578820 587823727 588876629 332259951 591183256 95864397 456741496 39193346 799454653 207674581 683904315 703872569 835356308 628647436 827062851 508113873 694989366 749837901 902800440 664362100 995789085 835871832 984209407 229692406 501847912 814432255 990832637 57457372 568401133 642728851 928841215 632575853 705000353 474620571 727337588 171276814 283721079 768062947 959496584 865177070 888225250 582241901 924808109 237325411 418042711 386346934 916540304 607144666 995930740 692298603 709203063 730588158 782768630 303388289 872446503 907411038 997922905 95265121 972936498 754277859 874985135 442039622 464902892 136424757 486425110 239403827 544276905 556565583 814026822 56479240 938152790 787838231 951396468 592060853 661883207 935582449 975294141 718498057 968902912 373024303 792937640 842810870 868585316 918944408 934778782 806750618 816039946 98046774 394208084 684678470 732731179 133192847 349343582 553679470 623096770 382424259 813384755 201178036 468437539 656689156 703991019 384710081 562926642 325918995 747920280 447891188 816951200 343815910 484142857 169695342 990411866 805183363 950938740 372307204 539912583 808852732 845640933 263776785 548673154 211964706 602388613 966239479 968667221 208275572 391022550 486024525 702967429 835227640 995325795 842885921 984335777 156708087 861041089 112260122 843483168 544269051 690045875 157769239 765844867 190083458 902544112 915902415 922719511 296742922 526603554 925419805 947478880 238217846 387579318 650104833 718145318 450579783 646878398 660076252 753828979 715255358 904929284 747745620 816083963 51191082 351873165 671945065 823811568 294449534 776595381 559937132 903621985 975585170 982548904 395459881 815200506 40556599 46400411 638214199 863996990 67750894 333950250 223044833 831165524 425263115 804581635 802860519 982122082 961503731 985022976 612739427 738513810 908781116 920736795 702852184 728678199 286003214 751192408 430152930 771045358 664032984 823036816 216207118 791784169 57868240 457694672 980643023 993980715 130158321 608548818 325377198 967193272 569391864 766458120 634412805 912259593 27437609 662139129 294000000 549870385 462658234 667894816 240073461 897698617 666431015 901450496 603202919 731093528 968975269 993848671 538147901 580455060 880888546 924197826 214451180 948453299 808318104 947633896 983618946 998113617 70814064 559344219 768046259 774177505 589822878 945114971 175202744 893369579 324146923 741693387 64022143 75410969 316226478 532056835 575416721 588765549 953835863 972441014 157825527 498275763 702717815 798360722 441020221 717248082 443452792 611969730 126248852 285290273 770341953 895734850 815162388 883014276 523086242 931208437 19287900 601033628 872367223 916325104 818026593 946843657 484068660 665900070 458920836 946872907 252008381 949804789 379554997 540864385 884968095 951711513 673361116 760247873 140745287 424023689 961459615 964892644 679606147 681157591 461431656 894015834 215862842 871358096 89020666 117282341 342505896 697601041 843139564 963968445 141384416 322353208 366978888 832843724 899921331 904848541 968698798 981947530 280626833 756006844 725760793 846156205 572581679 647736914 639304558 722712698 840272356 982823137 433776516 877346010 615968514 733582319 227995824 419993103 175565992 405649858 994854360 998999353 938280717 986759294 371892806 637866639 284346716 872824544 625448890 644325048 511478932 927064659 794937917 875374730 300332401 865656669 91001354 367112692 494042844 687143356 755376319 770423752 672460548 871899672 883545930 990703133 554813378 785218729 356346721 539323386 94029904 636010590 722849944 989321050 489400302 828454806 599810278 713802792 557713350 757622555 759973950 917511834 805824567 963534077 566887484 756323542 72733688 266939340 44390891 647328117 748383795 919089264 892308219 986926009 352459860 376583487 841605500 963813768 211093612 405155718 720816382 785897791 662478850 920680983 762826440 939739612 294364469 514882051 428779971 954253102 457778437 719132500 317095351 866608023 66256719 389955905 386547726 446234977 881916064 942346036 618072875 997778718 321997253 466443899 219069101 899433435 302837836 480464519 817976400 903454331 423722330 597596644 877505180 985194160 100158378 880395202 635619911 664895975 931811238 970125038 745998257 822658216 396068550 847364585 708744550 915406517 681899793 949998567 982427476 990445790 717242471 965569660 152266241 618900029 237453156 398720594 394062790 438790436 792908420 905786134 248679502 919935190 884032674 965848450 919645191 988276366 499689083 993071505 661102571 877941856 631929632 883390102 505168937 912446788 478721692 738559582 817240578 894230726 509539268 917071716 681502794 804366366 995549025 999357519 585447778 616275663 90145228 649704940 677127760 717527108 494934979 569443718 658258361 983930780 461868863 945221342 849642524 884361616 689383996 932730802 382196592 491886536 480468304 641814656 107832531 792277468 51140305 547855315 622041549 882191144 295937269 319112861 638655503 741834600 875760989 885643130 112910007 887239823 844870700 896973860 645255596 668134143 487263994 815190048 805736918 909171745 369784700 674233918 238632640 770883197 758221107 982903238 484364251 749228097 871248663 964372344 826850712 857937893 107291305 605265015 45822946 485495688 590911371 998728934 941914165 981493369 907197599 968965809 845251466 985518948 597748986 630752904 957398994 983007707 563587072 646077598 768795618 929190301 606634912 981627322 34935808 922830356 578969414 770712090 482118410 737585211 906886698 993265749 536855765 785400618 797200755 939949735 890802020 951608559 943598144 964895057 570872429 900616906 733659911 980989061 246541240 707106224 331048006 668929695 517237181 580081557 282359915 709828469 514672467 633699843 324106777 889443090 253498176 761678086 202617824 582085420 80553486 376500234 840679279 859122146 879925846 927259552 418682648 604045210 63700422 363026517 948158092 986030621 917690805 918640607 454319159 922088701 945967137 970525803 948540880 998099050 605053466 658985884 542669404 705532295 878152365 890862843 573605667 683699672 671106452 895652757 122823241 145540768 1694346 42602424 59628517 77739371 300106674 878227750 858957922 937595668 962113278 970066988 623714698 757487360 612077657 638517760 51468689 173411564 229817872 398952129 716270390 883132497 360561109 665677379 348385648 839199080 798007629 886367628 557512318 952845504 719848466 860401220 964520474 995853640 289649543 349372027 295419181 934317782 427989377 692745674 983441657 994377429 886158645 920881857 995285753 997754029 450011291 696876575 715497150 914910015 13766878 150215931 981799406 995817260 757134729 873027662 375397139 668508924 944303159 979582831 41637552 679193600 272664218 626368100 741022781 892262258 58808243 590147823 301619101 650983496 742189612 987675684 458322945 637652896 893487309 986922115 428930954 564709959 836631223 909726697 591730122 972301739 530613044 820446123 81788930 266272063 54241508 919703156 547316600 977485951 484230153 626180385 411869264 600032948 650773909 961498968 47998405 905864182 521392382 692156566 724254037 772717304 24846984 599711104 546101064 683183303 318939677 549179657 16506044 503496755 386094165 866521705 243549471 560003351 1498988 686057164 817015059 901702174 500764630 543852086 335251235 874417262 214055306 952439222 267440336 646564689 634140902 781288805 622767765 894050844 854098003 887171001 361668240 597955769 683916367 743162852 341993801 719699144 77629863 87208416 521923332 840619916 570549897 684676979 497073258 621898243 88258313 348296720 697912141 852352861 309041164 645563035 904831532 994442071 304581510 354694229 433734707 558664657 650117212 964532436 518602182 660829085 849445380 869836606 745787430 755529997 442419362 933193067 527879716 947980271 558985274 949945482 53772825 801098532 270880262 345235500 431648323 954492349 713225939 984116796 777571234 956909129 571810168 607733194 344009299 558306276 404385125 827818061 917496094 936440734 204990070 663809644 652913244 992437600 241005990 926893793 296530410 794282085 855881203 995459350 283192882 513078636 976542067 986543413 945520623 958166783 942800637 956375581 105660023 483999147 972464074 976655755 437176200 817267400 500658281 907013937 273014739 789116032 965065644 975255857 290396027 826300172 52098179 356878447 328199449 350465163 298113979 363573075 947248837 974575754 844995549 988689096 366036216 509288259 160713450 187413739 804682845 922464932 76706908 725937208 853528587 902547415 663296018 830181436 393475581 893719077 387355350 495556680 292892283 873963456 721861106 884413021 283815369 660626726 927666178 943499219 317385546 462271926 324717226 706722109 154895816 737847877 572379974 808166549 670006995 940394232 31937069 921225554 66325650 872530412 821225541 935667365 555831673 832729936 996750410 998493545 626503104 684018334 1712219 837421601 841927106 866485328 903022364 990871307 433310367 562773187 176127966 326702839 881940076 944493824 461315812 723221328 750898341 833684478 383732413 860174437 703847456 797769179 528923307 837755217 908898639 942799236 769473970 870075706 739733710 954259608 210178356 477531127 375543017 614093956 475490893 584264066 985679093 987590940 48148481 446713281 743664103 898592536 636799952 830950097 182022073 884174936 592945254 743144323 680635691 998614888 163077345 225572357 448347134 832196660 639156749 934409020 671754883 749896913 172011724 715201015 358693004 877369439 941472674 963586302 341375181 593691746 559641104 857553829 425995750 983138866 630147995 692723925 96538847 753922687 181151514 572165802 266804332 805268018 506381193 612606710 796993586 833992929 795434138 803149708 313464023 899750398 879834115 934694606 615956282 851354394 673955755 873994692 408730442 683138680 155772982 432704308 921831153 952568286 247005947 477609661 5476055 709933631 515220346 943075479 499992796 955107519 804467934 810394953 260661170 780066099 175360595 803942018 729468247 743745870 240514456 291266854 471381403 475411867 290590513 797670606 493221085 983174764 537705459 888672075 43302038 175956711 102247982 863068494 729380931 807487515 776365658 984503305 756294245 972593035 87562649 267881189 425917724 588584236 330399300 718040948 548245421 792748373 638657874 745607426 95271291 581941656 800141313 849772669 843901091 932547683 697185046 733485650 340991896 910793866 958404012 960996323 933979575 942648627 913283711 981382717 543070245 819305627 76339768 390109307 963706736 990896388 990572794 998049116 852410949 923735862 221442568 814624150 587589006 788265015 809198557 867535316 543216557 741978992 938136013 941327066 202765619 357058950 199072470 344983218 557696968 807777385 773109938 802189099 792829190 810726054 828675501 896983498 872018352 997304022 334625854 970639653 682199559 888468822 491926231 916071475 628093796 958995041 247145900 429640906 715220147 731804060 592429233 726239265 48964652 541255667 430636530 594367628 63760943 392979992 163538691 169306753 520070953 847648160 766587931 871984709 871396448 873927065 252849632 773087943 212090037 995495092 578556978 947787777 448480266 899014945 147677202 148662217 356537433 914040140 68980687 585272016 135210464 954864462 248401304 872286073 36941891 539652551 199941022 506146748 958743202 964628042 309245407 342912838 737062277 748391783 197661038 878185477 108219502 867250268 870106750 937039928 872661159 889331768 833390145 872858886 42834283 359115755 473001908 778912336 684841413 921796385 147539062 343437532 481583428 626530342 776649960 888193752 971526425 976323737 285798642 617403813 979427330 992560260 928826828 985983613 663260701 773574600 513346713 783143999 446804695 613003446 580524411 621149130 863955266 942307217 439501152 875516969 162853442 228943350 26586917 375306845 669030040 888239899 421969060 583352135 26744839 367866512 114135433 293048613 577618089 657985512 632160106 780952505 768788130 993386061 788010257 855632307 388297946 708125188 172411443 535040963 85542748 108193113 863257063 899857364 355998581 388878347 336941694 602141821 401230705 977694322 186056370 618232591 216907089 940553014 77042933 571632245 553313419 746243808 797764413 918259341 376323196 450722204 498718079 758095230 341047308 700839463 102843602 606395972 637998503 798396377 750564808 902236089 503339886 673157669 424472519 507609608 484775564 751509326 855407043 937149382 314675042 570907379 976395483 986511856 685267118 705011699 624102568 629033084 430745003 687141707 132379603 153090829 333265996 860332477 588314392 864959632 751673319 794803213 454214372 889249350 378243011 692153294 488394507 705596603 340929364 682575761 275002762 697392532 324372950 788257720 476007355 989547132 156820545 871329583 277591250 601765281 161083134 959182640 916235967 992694950 552095498 552845187 781147671 935322886 568354814 656662928 107050893 879289462 726185929 953165182 94693117 923006685 873289979 944651582 826391525 924817304 584518796 831254414 563332557 689246597 879640328 995682814 516501817 609328404 240490046 455155010 652025720 683873658 886114369 928235321 118170549 304494759 451159750 821799238 893846585 962000073 134853227 243409496 329031415 359955280 307374286 853052090 705530178 720827695 161185996 884211749 586001566 971326382 872804813 886478986 614138414 980362046 778204181 809916771 298597320 604061268 69142079 712302488 316716996 805529646 568697355 797074843 380837409 615756770 912975463 970883453 689137934 708197530 380903956 493687245 801564876 838880492 714029486 836488448 780131990 871391164 973775893 992458432 688440719 869308057 92825346 472298882 592695065 681311692 904379025 925112865 209878371 298271841 902196881 944572601 252366117 323756835 578577950 660979594 813555808 996347631 670047299 848150179 876410055 891304332 260179733 419373229 24649701 221517933 814866464 945368822 241561365 560725653 991577413 997655806 189089390 574130680 122408187 750408394 276543785 524065062 641279255 730779354 235847429 327092085 660286240 682989253 605730082 922315552 305239508 386326227 182044214 875221368 660382100 983386911 557737657 653598754 230228792 569285587 869744592 937201467 483839692 821457884 637528758 859424912 853495526 959775347 225462625 460531526 788594223 897970460 244452599 286710325 10785569 326181981 141267264 929170166 830850888 859711692 936700594 984374175 190507400 748020140 924655918 990008892 665110204 691787032 531692837 902640320 608837306 730150912 783080854 917413336 813475259 890874538 362912153 609192927 861549764 887451992 426509597 815036799 402646953 512400771 540927221 698250513 33945198 988709894 533447322 955861894 738195995 802338244 593438269 893784048 354543933 424336940 664316462 865574550 716647262 990133132 989933639 992066770 152802927 625416413 28280723 751339348 586599763 999242562 26612584 822107816 147978024 541150784 482854324 629695053 154146991 165658275 822007688 930670606 114252557 539450535 483159937 813901918 840787507 960710085 935499526 945452288 706446818 857053551 986800153 994484643 15641009 604129489 887212236 971917797 6495375 992622404 135870207 325211975 450856884 803357480 644365355 661957796 248893891 613905617 610699003 721297697 128522827 840776765 34208383 400638395 581160605 645339698 508405899 604833928 582011963 583064557 899740504 934876373 930935502 963249122 53788157 993099941 739890454 855794828 308286614 581298920 164964322 312399002 54510425 928529648 241374741 279643850 717544671 930260990 255235644 694502206 981402696 992083766 962856741 983741022 423201269 446899619 537082179 654199619 635480917 722952884 676082267 717171942 627348497 762983532 277700312 985834321 289428419 938739979 657593235 886632362 863468518 999156591 470740757 525459983 520267667 890684330 537167143 894457707 5872812 676362505 61138587 655653990 806852731 848916890 708694098 984127807 44392648 281128652 368890731 379334627 680447887 910190570 662030789 871644758 860491697 979635928 146264155 172560530 847130051 990557667 509106495 589149209 631070357 828874630 84637491 221526698 606358293 610490973 436981750 490430658 171690294 651054842 394492420 899094158 961798701 976834890 402032614 706822867 469265968 474161154 732438571 747976185 970724011 999348836 364105751 920028405 194935317 828799990 258714894 575063774 337976754 798382021 38341743 308932202 324460758 910924585 814327619 841855886 831112328 899529853 755622623 979066755 186915205 373336427 451852775 869399009 725194313 799511418 613801128 985952506 289925963 302842641 145090562 250624085 867894148 993797853 861033916 928381857 599442507 841142212 32450925 768537618 845034777 890641993 237912688 621465923 511681458 949916358 589139191 793085652 400957955 561296618 204873581 420035550 97667771 619964831 852241860 853612504 505725712 557698581 248601165 923474723 132590359 942898935 758176387 864743294 957567080 973764115 112422393 275771186 256703471 422360334 865385153 883037912 135730700 557692968 842667907 888349499 544440875 762956731 292070449 942468839 630901773 785506599 152890114 733887826 738027724 914828052 313520196 731036866 608637291 869088781 951392722 965059628 543031034 826800843 341549097 405884449 433689690 757829737 593036360 659121439 586301448 827016370 745773036 960872922 682106102 873550421 740202127 920810582 682109132 932828731 490741686 654134619 113427658 513289606 29358291 805509281 876879370 948644739 16327670 113455880 868899288 874108953 3752791 645395750 773047218 896073589 929710044 974664524 506633145 579931671 704396095 880303629 706419378 995564770 435420306 495423783 991037600 995930581 94343025 621514028 982527110 983070973 201864041 776779773 75111622 405738786 895746995 930594575 1105552 750165197 208819214 904074378 946006532 980934395 569477300 817932960 252163192 687837434 165368228 209222387 15321805 975177093 5902540 115480769 342397345 819077620 402600945 784895763 292863531 995474347 291016610 656605213 694778442 697083066 725545206 933806453 355560688 602381684 3266538 195416418 683558192 888072171 98347376 371004161 142879100 945619542 756439059 853556697 530009757 952421816 766015660 905091120 105166634 630871739 352493182 848405496 448597193 807308715 153249233 648266130 383605573 838056138 286775417 883989347 976491417 994318248 471439329 736453569 14233009 364874612 2264030 276644763 461600053 778796340 271406332 525361398 844581119 898140275 904301462 947840189 181594116 354555600 481930959 995237095 749622592 860461885 218985199 767824789 140660749 808396436 880032753 979548579 405396853 968444369 61650289 665913880 511568086 742246771 484177794 931144066 275960657 763771739 85172272 218798510 149949912 670617920 978984140 985195312 820421830 851816898 417910662 444986297 27053009 108809079 783884158 834677765 391287462 893344581 421103820 654273227 949719861 980693444 282215320 617623289 293642749 940493434 582207572 608303725 919211733 943288072 728781100 925157954 132242856 714506646 669051037 874274815 649983287 801732335 324299504 780878224 381458971 747016534 434275031 910800682 254597407 732727339 791543972 929612768 582092281 973702185 16728894 379865633 357474650 872633936 713679792 900050412 723312784 875331697 352333747 525754252 649683819 905596944 684101117 919118691 265550119 457238353 400892141 552514621 486720025 780700569 287581885 512040090 684421724 849813600 326223535 734235289 564807894 932670150 577610269 637605431 545273767 992227197 502440248 731855177 804632920 812884638 840907273 885454674 188637457 673460754 504909148 580054350 253798679 371606879 719330198 740725586 12885749 321440642 33093750 673603227 555182415 851377155 87711658 394786109 201265984 850021020 285867302 749305754 101522352 627294191 451632319 525263908 846428853 952974897 89409292 406540217 528806035 591403787 177905509 505417856 151621217 245321287 605702328 891725412 523237364 966287219 451628920 811832519 132201549 883007037 434094669 451936792 227626915 952643302 638938733 747591941 188769733 507021200 731769674 808374826 11571971 120759375 193582601 261053078 528369810 994218211 537021912 597697143 960260578 988959971 518209619 769893109 461419125 555163543 843075925 912953139 858605277 868098380 109161605 761557038 313790389 716290447 80927596 124221490 851465741 905911297 460876499 916449116 541831884 563329603 843141849 940082672 464908797 829813186 401433905 821320691 36903175 514721479 97226554 323508299 226104247 868933859 680642775 783165819 804410965 853738076 600181809 914630658 258973150 738551481 736831335 943148122 244466387 277743309 325477953 962121955 803360742 849499987 5161453 121115995 655986794 951478707 34398867 204259260 669686897 892711674 183029546 376200874 304038739 600759349 532086528 779180572 357476328 730423237 94687938 455629602 353501574 869004469 251965455 261962405 709910184 973944900 409070164 536786349 338357390 428981743 875140011 943799648 670999748 871445471 178381431 506181934 310302134 721560061 454444545 674399757 971957948 985687511 160044847 779438932 609898953 776738283 847414509 848096302 317310870 426548492 773303683 844865466 835879512 874152992 93588444 282535713 185864646 399513774 522742209 661242377 724747356 836616074 199942037 959503960 318775302 473313077 547609086 589751256 443998143 716013488 217858509 446520141 426435247 478401335 677173079 954838714 900177286 965964198 284889806 859534904 120525715 858838436 934193200 967670584 1686831 104608670 522463253 567492586 523934125 678464471 571795174 858631239 440666617 647604130 991491190 998718141 54748882 568694798 920085330 923867324 897653612 971709701 542134741 833404856 556017307 579041091 265123243 413674901 861169272 997698507 590140370 957452941 607815403 765357160 809734985 988761620 879109363 889431421 765328620 861778068 963986741 978838468 300185542 469859615 632344255 764670788 695252989 818809181 500592652 577161794 83942965 513071498 343960865 951028824 479609186 645874616 670467720 860379265 182359317 852085628 64419108 957449875 701968310 927071263 242067816 387669932 156392676 613106534 414723240 722029444 178789101 705734788 713262431 771639930 27001490 828097526 641964821 799348230 89885048 619323845 637703581 983454967 649609072 793756715 380686399 898837066 213196153 643273533 236539841 540371055 98560456 620581157 164573686 567661784 479348639 547054164 870501113 955470821 847396419 897718013 369702359 654967879 334820888 791057940 444043140 936119479 475741693 846259993 73750067 367862008 160667646 554011255 273109067 799236910 778938369 799431904 72656451 140794870 768721694 847819593 699235499 899244202 102143188 495645912 92894036 813012564 775045301 947005921 271851110 965175411 987141479 994679036 479898245 723457592 208351915 676682129 701361718 954093942 769297081 785980948 526086906 778826448 50133957 460133174 272188228 652934458 127125130 840288351 708626917 853146918 8300681 481793237 290322585 460491646 684414997 882062782 490014096 641110504 44818378 183768108 45671834 381557685 421835983 959982029 372196403 662728321 374902613 381413406 973406214 975211589 374764163 611842395 350680995 657462252 48802818 785897386 224660246 268382882 578093841 647306956 818262906 865088448 164249178 273685055 577155545 826885264 274330218 537315334 626649609 638179259 530723953 969605116 244946561 618134202 465053922 883003761 334565783 430289094 348303303 552585825 984785288 986807489 875256260 969146229 668910878 876510027 676492659 816609824 869286640 963978859 657397680 736638714 838201131 872562933 788275766 995671816 165870611 190793765 205929275 703543531 208825539 459718826 753170242 951456111 640581166 836864364 45447404 827951912 95853115 358938291 558770539 672038358 77010660 140021716 374978000 570966034 371818185 693331330 711109419 863869795 862855133 896321815 435019775 551562201 393279711 996577039 614873472 941853917 203847260 624240036 559697034 812776663 369057544 803875550 571775549 689376604 824401266 900685027 569987447 596501062 49734273 60100410 361445676 391642206 382076292 485426188 812772206 883364177 435061835 890594879 493587636 982890336 870047096 878592357 359122237 505449386 740909464 744223205 667037647 763516600 163619535 629744103 492069533 730451978 951411295 982175933 991218954 998595396 898063759 971540302 392146335 591557885 912902890 940696669 614034693 838265240 294013546 749016084 310240086 363509134 950068158 978606814 45829534 407296855 198461812 235149934 384576428 817513707 351206283 984997341 886067123 979062181 650228707 958940637 489475070 939032827 437604432 929524357 524320993 671446365 647620814 662776078 75457602 767293390 870107829 935724788 286109377 763543964 983658915 987169125 778857241 820211488 127258872 756329413 650963538 651181309 774384781 848497209 777395258 863504851 117806397 458068163 418845913 509155595 482779914 602029225 957377872 964045382 998107838 998938148 304284107 979585007 513918325 559295046 701375532 908900185 852342656 996417915 314898994 587304669 685884660 898882723 527849992 664472449 722016462 768036697 206621961 754969529 121261624 482770945 409974196 488962780 333149980 833055573 496863979 662418268 626329146 754779101 828305550 994778594 977432763 990751671 377589283 596769528 232750357 284014166 119418582 576942568 340958471 890391623 608870253 808779304 589483296 699670521 599775097 831274154 118782630 737567914 816238493 982030493 632695095 703661295 493692098 760044282 212020457 267933749 844227006 961346267 469492722 598072517 782009698 836462617 677363927 827190274 686665346 720324076 320966805 561150930 298506733 590759013 483651623 845240610 827041595 841588845 2542846 610550320 671704338 707763472 239306395 686249156 748636063 838810908 804434401 885202078 764535835 936976497 459154439 989105681 639860809 955581869 784761564 842458122 565883504 659902876 299047388 905192986 962006395 975509655 302469809 330993368 492362368 726230604 839623566 994860869 68760005 481868180 453053442 614953800 150350655 920949627 124269471 255512456 482269831 777219457 343953576 349992962 469591068 819496145 174038141 738527248 420310047 545879589 342320830 394615585 260694148 789856449 190609393 762475701 462959733 475706114 738602475 956544945 33533659 949313089 49835394 649810106 82467124 574964508 838635297 994030194 603805681 803929418 697469597 869306588 149093029 254477893 933872644 978115221 891198996 986367722 429947234 831743298 218712925 302145399 213180025 896392589 95354858 452166387 422116743 908091012 488252727 834646852 548764265 752693242 163695693 557874795 481146542 990543535 540716788 588366305 629098710 853704732 774957304 904204818 736724246 906475385 953244595 955756396 278690527 645596803 623418122 909797679 825774300 854596256 987108948 990365698 543058344 694582006 184532655 348010096 912670040 932904283 186973900 599430987 14483972 832658601 684111046 731579988 960861828 998184790 519410670 806349622 409417230 493595064 756431965 806488024 954228507 985452746 579581585 884351394 400716787 630138953 96766495 800823762 379736421 683481674 342877458 958273135 469305499 649430065 595903935 911838600 929236000 934167209 540392393 570599709 96746289 541279597 285583095 754276632 455132948 676752280 96211686 472802532 311867297 500379800 818120699 901342973 229088720 957648102 685401614 869257115 283257703 665463717 584932703 674194124 128776099 965090320 409516296 589704805 92130774 402127784 596553198 944197778 361048141 437733057 338923194 991007081 532919634 824492182 92386231 418863106 166702214 338416882 668553997 792353919 981473092 993631022 113353241 293853068 734613522 871336431 831838705 891718602 834363832 910156481 699507471 925156147 43791099 505567821 970845059 996529856 379488581 951122269 799884342 830559911 674727933 886875764 7534502 75000949 455172353 888176086 452521091 458544754 452574082 718242987 562804717 733202981 959783628 966636186 121588987 166983189 321084183 941141723 294515262 559078419 107471041 351579051 513750848 570829754 620203407 885027470 181426726 944182351 637618731 668910310 892709131 952176260 794709111 893902277 414458014 841314621 197030719 374899693 261007656 750928516 726313067 800451919 652226124 688818293 56111681 65733200 123151728 618907894 655661296 962371385 949601933 956244467 136287019 286171713 925107196 932920032 811211157 981191994 145183841 494421239 953289360 958250798 807064110 852412770 189553599 553864628 507950950 517326872 953442333 996257959 325905445 861542649 784381169 847000815 154088883 305807581 551352526 999315242 207513472 463278010 514331429 748807860 933429708 991044979 12802013 991810358 559796590 666384514 473262398 859846202 624286993 771561981 518148705 628932816 973852362 976485890 403666935 463922409 967400995 986559891 250595810 789366692 881774133 928513199 570923483 643280811 841913811 931011461 791549052 820179942 751704411 822357357 441098009 668346542 766499137 922520556 759699411 889215295 210526697 733686635 573458307 797619640 395081645 404048728 782949931 805016244 164386941 765133253 194144845 229051647 136175753 184242866 715781081 762611093 600306867 901664660 968856866 989995660 688077385 940562569 811564695 823253770 92928754 565814100 250349921 361968824 263628744 590708827 350130688 712069834 857437018 912738188 887658126 898198251 714947970 898010371 832620528 948801589 751145654 873355342 927733041 996176536 665843342 972590343 401457978 891142625 401160243 789575035 594787778 823416509 54991925 940723039 958595903 969588053 480826934 881109273 770844610 969609376 218124995 816327750 265811044 327339750 250477806 459175878 117214820 802966543 426050749 954376472 147130376 949226964 440825193 785371860 731993632 985054869 423779950 704355476 647927448 946123168 800856595 811731060 903969418 939842254 539924769 542104979 717116296 746236309 797490680 946124489 312414590 398172633 554728218 953990843 302190582 423302845 192254311 685513634 408008587 817477607 373043765 797512706 380039778 952480829 536758625 766558352 127517983 701079103 175088602 402759739 115744988 293974801 498622761 669715895 198966942 349658233 404264634 889147640 589397807 715573376 279389857 407394944 121017378 611802415 240907461 521396495 369243575 813257204 312430672 398897781 421744013 945878227 76563860 462737450 188955561 707799985 229049513 786016555 452447040 890063859 925373341 942887903 734801122 956994539 704681952 904712969 889178828 892250707 604147697 848835600 87151877 816484264 230042205 972195858 350029260 734257928 316974771 962072838 118946540 669121504 669193837 970773812 683828325 961925050 805919960 880210771 387429837 478981344 499020311 711089988 6667045 902617065 261063337 641121882 649822112 769154643 591547018 697028357 965716702 967729755 614543068 663322986 571893195 797308717 608234927 974729096 70735356 953554652 402823733 740107073 345180670 928825457 848897202 926171098 945455703 953106744 509382106 706754090 839182879 904995972 341508927 647321900 404120694 926075736 775521395 881299229 393804090 671297656 929565868 957212690 472684966 985768558 883777681 897607528 749530005 840051659 443682920 501740672 760263058 791898257 417326757 647478004 343318581 635208010 386649132 826864769 297737232 939600675 719745930 737495420 260804211 463985311 453303834 454457366 758204822 904769195 982806877 998697062 450196776 898356642 149168487 710207976 410956438 645344276 583194066 830149028 394766196 919111557 875722102 898769531 710935615 928504114 267671366 869665222 42700564 60061853 586516285 651084070 39393336 86153443 747576116 907953326 1816464 916823143 839439145 870331507 609208857 886638417 512113382 858264913 468070549 525223353 710735814 876708750 718424154 871447483 852768081 884387456 313973549 913156854 430445489 785087566 952743890 995859283 146028385 794599683 384856013 772675734 20602532 211803121 925483189 970977267 302657177 941031209 48851929 250994206 905456308 935585727 491963481 738589537 510759425 581332933 274679598 738456760 446389107 786990891 905458830 979000104 937727289 939620221 225181985 666708368 647741183 721486172 887902964 962697389 523409707 925952966 474004981 719874467 981278947 989117012 695647849 893600425 806791615 821916252 119632020 231297431 950183913 983904056 559854026 948644469 404827984 973830884 299426306 751363714 688431474 719683448 706800079 907818728 680770256 862544039 598455920 682123984 155987352 788834061 32744932 969558500 348666151 892363803 184918170 220222484 955574703 983905927 473482819 827967602 823562463 839349049 308723459 982370026 490670746 796066169 569503028 794664737 959545599 976637224 742171344 901296714 916058530 993196641 987300273 993329791 153133447 340844570 143902674 991094796 401450989 622709441 990760147 995062748 288326509 876729906 817445581 975346860 866364700 978928044 113310971 165912270 982480470 989331823 196925544 654297540 516050455 806529521 44028388 885922222 109123728 404609206 383863995 980614921 297653397 393039459 101713858 743608821 165125109 214266116 218293217 834514717 936776902 956551341 165637852 406808639 237146437 562448709 313035929 926364058 653653374 784194712 99529790 903980127 377160265 417107203 769793547 778654082 741024616 856680905 897239272 957550678 859939539 984411938 720684567 792001097 797667565 918754075 272883440 757253108 159841459 617511561 35446068 484665653 594434602 912205302 877335332 954606516 259333939 547467366 350935781 859710991 159660120 163393944 757045979 940736483 566596237 808943934 446821877 803058732 54525379 677346726 385938079 804061073 858372429 965764166 198343584 290652975 42037730 190029861 263051624 363860675 589004379 592347251 560760526 954212652 809412905 820617510 115721795 778861463 269665885 390755305 931835444 987202944 943669043 961538382 63701057 514925029 633165561 871904633 224721511 399245602 619428138 700694057 564121219 927781419 215740012 389195418 108993677 845019018 284103371 452441947 22278069 520219712 503395816 522739654 112573558 272186685 373485076 562939421 459026767 901357195 690570699 787519995 680138549 756530050 966863349 969105468 855980942 980230069 362733546 629548982 154876606 892860862 591340403 739160425 557891899 741694356 529922830 634783710 802671250 908898550 496573114 880817426 926794426 986007693 875042961 922072084 134169626 548981418 381484430 802727141 142549791 572784231 697174401 898827329 73194972 237894932 817532542 954432428 743234625 856014082 570069558 608861305 486435180 601858104 844375555 857532204 714135636 928559022 268416011 317652505 909634496 933936882 735538606 808044865 668201664 773661074 576825095 745564814 752172387 948839999 568559818 692809717 561957246 897917016 341119817 496364212 153465017 296664453 281738481 397117801 232293450 329642716 44466597 566276317 777047404 875588757 789953829 939706436 607345010 731790440 557262481 651344057 750990236 900391815 115494447 572860920 573363057 672179672 481858341 724888151 856468173 888346999 18773761 470053309 609940529 914591338 573297396 883289394 233372586 390696760 439099056 576254472 448450936 668111331 418709533 726844242 610083389 905169518 482266837 600274700 210816663 650527440 137423368 233412086 899659203 986768933 686955288 867379898 680603861 755094089 816083035 867225881 412789431 633038464 325466126 655013483 707949471 955392906 283199956 535106435 238886135 894489697 395957156 976136717 649520543 974417543 995007596 996767144 632697422 902321760 51385969 155129413 929735120 978720896 11159583 25599125 99947467 714268480 363389732 407581233 815256229 996934006 879108852 947898263 517462193 964308363 332000156 858599151 321823770 752079908 8124180 593916479 641849628 928168007 385787704 627573778 629162665 652367011 306004189 392554153 901946827 912698882 218903935 315369104 981663037 993879948 747652310 899483389 872816828 893740404 647429369 827162094 510280391 516819800 323683241 683648425 619544111 767496184 609416414 799169396 925776099 992191900 351913746 398823954 821468203 900076699 409430591 477353488 540840921 837570468 845679637 902839274 111555019 541406083 449684262 580132369 809529631 923814545 233991582 916723912 461635221 643496177 972292479 993819960 756535937 767000671 808017304 992910916 676474502 996736204 473869794 571643279 627374784 646509724 585190949 798178650 800776226 826935680 871663352 956492584 577917464 978584514 351693968 419586406 105841271 753735662 132386969 624570695 437499171 580671263 206828408 404094391 325828335 517355588 154087904 712975966 990295413 999194153 906616432 992093703 209616584 686552167 150005299 454211515 85919838 407502769 162185222 619791405 882806557 964433977 54431542 288805325 379790947 655986457 317268136 408218726 709416122 739808423 702317847 735519299 11340641 891533655 279747141 869855316 91144805 820888742 959090597 985439999 772245483 923906916 512079563 874482472 590445801 968973893 925337794 940878532 113299829 643042548 114443863 273373982 626304385 989005098 444458250 530620815 202348048 492101842 360849005 463251111 961298667 971752038 368340929 740971191 924947554 930637164 398992515 461140897 138334170 387557234 20141065 433319624 762721614 878254694 640498384 706062000 896188043 931253131 322221023 425862587 659670766 892950599 828453909 956017247 38588235 128510683 973227326 983407058 356837805 986177111 66182887 297016099 854346311 887241735 571574452 749820459 72114658 735016563 357234942 792648864 358662359 442133255 538377676 745115584 735247261 848554936 19681891 639602250 517477129 941061612 193897882 235303560 445631092 666515818 833551717 992635491 875245248 977273232 283060975 878582866 791217364 932609934 143876283 542003319 66866846 994563273 678462303 917471355 413090326 873134979 97734560 398369788 284923420 710194690 923474358 952517589 485126206 501258794 804645186 941805168 857870225 912300412 378222611 846275859 145508823 638477402 839180759 937459013 79234916 697192015 694546183 824417547 437081415 818143872 874553889 905289451 998513296 999045993 324992806 998520866 618820108 772937984 757271684 950288948 267635808 744192722 693170121 924563514 133092355 140567176 204121548 774462520 321694328 936208291 673613780 939798215 547700337 875040351 442009421 674819242 609919207 765032040 111201269 550462702 137734595 250844700 911924225 983889441 880693347 911026053 194526384 547220795 655452721 927447666 58388844 145127749 741231436 853559776 626244073 891648675 456341537 622510228 800648721 873528648 911344669 950378804 715198856 888743713 745595311 766438030 961340103 980632733 650671699 716182448 84657462 655611662 671062277 792084730 931838612 986276704 567078011 673534784 73290726 725571703 44263789 350615770 556997686 708264790 970675085 995398392 498898986 793098103 364547167 449373986 389152405 524485054 872800600 998082622 205965798 235317590 122228128 325682076 973472074 996821290 218940737 561680796 539359854 922025799 272405861 498814819 139156459 413251795 232613985 440487902 295023451 751372864 868675860 938825592 844502061 934803537 741657513 951459503 867334320 955885759 870332779 963027883 898581753 964529239 716152553 953161601 317351143 484016237 652214108 942210679 981788716 982674699 138801114 316255673 254255848 686952486 131213406 164675829 838577976 906312050 742663151 822013106 718030049 893847272 534117432 749912361 923093939 992223456 546070883 764622030 821670056 859553258 305813634 804447880 20519551 699983114 757042501 998752980 428792320 993416535 419405840 485755668 226888643 694240176 510620262 915664813 713723124 921631876 661911680 914043223 241827746 813322756 786692461 893833036 400846439 924771140 534998667 836943041 228611090 884741720 768083455 898060953 646841643 719279236 995691715 996524597 924778545 953561386 681056481 751608585 124053149 875466410 213071950 902768895 239092726 255665293 391298244 973407300 238057806 309904989 955476075 961819137 216800347 730000014 650987809 701246500 661570725 874087905 901745196 916107228 693744140 822574008 276446787 819330455 15218481 413940198 808975976 832241663 841585159 992972032 130384525 429558277 184344657 620371025 300706832 343667801 983747631 999247760 345669337 382938030 245280063 613986967 89881122 334369425 92060041 767956059 409980732 690868890 228095786 258342079 994151381 999059192 302109518 878204368 299737464 614251983 547182622 819487173 129133541 180448237 600458785 765062150 867269093 883618864 485769415 945858210 542401009 815493861 509191994 914109397 396258080 460050438 914506410 985723270 91459764 477768804 243509975 852276108 629215525 855863984 619278020 715520115 104205124 808975071 558474620 963971684 410488279 574897658 280946938 899940661 73962884 628531939 432646405 632307729 68214723 577356320 987891044 991377459 76056219 855474371 934316357 965387742 59912597 338011067 821169632 907144805 948906938 984181563 77869502 118884332 360278248 424794481 910175180 951874941 481455734 713467572 390869591 524290687 311679075 773081509 556351194 933735337 439767023 610116567 254555312 831149380 48600361 587940854 27672863 974570179 409639397 634285984 52255348 719913300 537614610 791662650 622680043 629665167 453817533 634191657 453046788 989142365 225116592 384463824 189154800 993110472 213592566 642869885 807706946 810015677 526013412 958508993 924512673 997787091 929977648 933973953 143951312 193631673 328558484 853047914 643823157 824745202 740703542 940930808 303669554 979305855 53075378 864327503 200984232 372431992 13483060 683461486 342300493 413432800 204584523 237480409 277384772 361926869 46165390 220738762 537748040 565605085 585330311 648655841 556554210 748331020 144513546 512088201 707182462 842369202 502187499 525299933 572977208 594932311 640229567 760592587 116676094 533592267 5057282 637589578 773712512 879769678 346288806 587867434 479831543 905904352 241738596 484063338 664551257 676371850 255882730 260533486 917629366 976689936 784369797 946842678 490539614 645762535 12670697 525072639 680469149 802079499 745898132 981922358 50238856 901763300 14412662 34441846 115472884 578745586 469805240 572104036 968417370 985988597 118619595 164079107 560665844 801461175 314471017 340572005 264554064 301116324 190366221 412307471 577235461 967115415 547618237 916663512 467460343 472363918 930249999 953710457 583606404 670195470 3734775 520424041 488661745 746415660 828784237 902442763 412732079 614633100 683760422 812863500 803743837 911360102 407591142 570990486 137515900 624138764 130841153 828795560 874160319 938603932 828966334 959826746 706937450 838592733 740272715 834579774 886369576 948640524 31505286 191998151 951087567 982787410 709590183 716559440 926773958 981722980 231351510 407023218 34128850 701214706 660763721 826328451 257782064 384875040 315596989 511917638 602765540 823921976 315131812 944981221 395742795 401588483 578066758 736448377 929532729 995915714 119867497 797083004 803446995 825448547 646249677 871376982 167758278 317220288 193148348 615221663 96597578 220951256 947282880 953407078 111726587 578409918 411733363 705046685 553994581 715397767 118895808 805786935 676412709 883971000 718079588 879347968 94757489 618908779 454007540 747309283 422180898 599499937 291801035 544320525 248068115 491532499 741760430 772105556 370489504 578372061 894397881 900480981 867299540 879641619 756174426 874130344 716486723 852983217 425814858 581089802 340181714 835694011 586759398 947759670 191793040 866074229 569775723 767624290 481676674 920101684 288750293 821243982 755212868 783237133 938262158 983060250 631983577 850417359 819722457 958233798 189296124 835053138 22980597 931776436 198309581 969820884 867324347 892628272 521569466 802563554 820639035 830994471 886938393 992968555 154677623 288460973 370368715 442450697 724178255 948237555 204744403 909912367 587292733 768792225 140845028 294598984 524501363 729741762 593569826 907291748 485350857 975465788 106285283 408869992 717568439 763079702 616013114 625322391 949858756 979277046 340225959 649848909 949173117 959173851 361809256 567583726 81489885 786564845 789000303 872782956 940800853 955403665 514262568 728174920 159022617 983272205 137850757 778967484 533557418 785006009 992422198 993302589 868194319 875491035 588364092 749598046 205101711 332794613 92265113 959366042 130045063 707725270 798927816 831760144 298320871 960078166 200134996 371207064 893156089 947284636 95801650 762161838 925287330 939825175 304243158 747293019 503192156 742852793 188072345 476568813 510318154 766173683 979152526 998809290 91892783 841009937 566555195 903583385 483320908 525217112 244714698 862412941 664818172 988258752 507384047 848389148 734096448 845132761 117881572 255599988 589608842 657899321 381534133 567107286 15477563 461846461 160876870 835854538 965912051 998180724 45032433 748319648 490322442 996251470 419546470 715925249 717890298 952720134 121210882 666499002 189051163 424195600 224557933 424926042 994567779 995537981 796720849 967582337 924623627 933848339 64362314 270303445 200274542 488414135 507193791 925652456 542136644 872029044 418953148 700176660 4524665 276782716 285031171 805698335 824796370 931358489 808754147 886637254 74679906 81921411 818512094 835964986 562169752 874166967 697917229 711687505 994887620 998818866 90178920 518421835 214962821 392285853 26826197 483161692 493060042 817075791 788790001 918274898 310426998 381325729 903196756 976848727 105564402 328192458 459369246 710590714 731508956 977038158 481586130 923855880 352303592 390232185 55233752 668366415 964970926 980511199 529814501 609172025 748835602 984194477 228176865 574427863 783519543 886336139 783252603 876904052 195367216 652265986 186655698 882555767 672920997 922424692 443305695 857884263 950804382 973147514 874545620 893749660 615534183 770634332 452162480 560089567 670444917 995070548 604834467 625030881 198269693 884544684 761029451 895026970 394649299 485559438 117887424 781439180 221121646 664711770 981650617 998423247 429593806 785684385 205893119 454606705 661924501 824703473 476185173 848640819 638905516 653964886 302214093 550025354 200173281 658601308 74893886 765920860 976821029 982085011 511965030 885313336 330023387 580890639 150411926 313514716 402599087 658225201 547559582 649755752 172463739 289440570 934724962 966998705 926618915 959148810 403898844 667382556 684759397 710426208 170070448 291334250 235975444 625375618 952375175 967903477 358975505 625043476 845474187 989203532 715774086 734995325 461913041 829383798 942100624 996013849 841815729 936302025 814086506 928914696 84200105 592021517 879324547 904734681 6829915 420916663 846946633 926131353 327876824 696845137 895013015 946654207 442889011 654713660 265548668 703028348 82654071 709490811 945611324 949341634 219734036 262071567 405663119 606286679 704350067 955592623 498005113 880901240 816529792 859320046 218986826 773121091 185153347 264649882 537943744 927751144 977545912 986449988 917775883 927417940 598534440 755617133 871605844 995306727 570640973 902476019 836236661 851657784 502417400 940768410 211519863 639726380 490911203 807228694 933730198 994773455 909453401 958874990 197754206 945890690 337729208 850881791 601606124 805966924 774383779 982526569 264938437 616938294 631642880 880456552 585258333 839985860 664655672 978666270 147941854 586436042 286646566 944614276 650319234 872042084 98220561 743993274 984450516 994107800 113360670 875508548 334696642 435860081 199235445 662682861 38163780 357098611 314938910 982144813 341705995 949197568 639809201 820092541 309930607 720068010 701083460 807616193 422721560 814414437 546489797 831538519 424445032 762192972 186515089 496042150 675327941 731444822 118936756 489775098 679126123 988081723 976697997 983664461 924269605 979366961 757348241 765174305 358819433 748508425 371844214 991779901 111377683 351419466 250507929 760907956 259144111 961713425 841395028 998847704 704583580 746968738 987833293 997285807 991960924 994072298 160726864 671142557 605356347 797465553 319407188 627442693 655615844 890688656 23055141 200534896 739570986 748724424 509312275 935366660 435639970 612992418 552892167 661667205 51795487 170311665 640100645 782343201 688944878 862397866 475693707 486247326 758656787 764454784 737660211 984484995 631025380 970058185 306726830 750150781 357212875 960555907 649404375 967961026 925204631 981321671 244699108 504264567 298668762 525327657 927895655 976446516 767023290 768713848 633869799 725457382 71317040 80342946 525706479 977825689 90490810 609083587 874306045 995375778 200570358 724417025 290342016 453368927 719611230 894808673 965143762 983370687 148118269 812429680 884424226 943076272 417164667 497936534 899599644 969674097 999294809 999331418 241896733 875886376 845257282 995248244 579293718 900173172 688800185 727448287 403197458 994032249 981152819 986267377 56459112 530103020 703620354 852156948 850575331 912568954 365989491 915219995 120151322 410938833 284879715 521831968 144691588 551767656 111511668 335004628 132157271 976447687 375685493 494470706 771616996 909731954 631818811 970093203 52636188 185241488 57631229 743338065 410231509 996549453 121734498 201442340 966803219 976076938 690329449 820449150 612345387 965960865 722416016 899410644 966857652 981759776 552439103 770258348 931671588 948072337 710014137 963588391 225222989 376076965 511798830 525217444 451940696 701704062 704586099 783186692 150497127 586176656 445990051 927893414 119180736 847355203 631575345 672470017 595750267 671572622 631091329 662933653 735454265 742582357 112370446 879550743 965592958 992250775 945579805 997574702 191140315 541870363 932397378 935063909 503788824 738807503 957949792 988752472 401036988 906360083 103508630 680371155 135620879 305547836 986963048 987462127 902011474 979935703 578050916 768518060 795749513 912490669 951434619 961193017 378619833 595443628 663393762 846695748 822586425 944952454 467467245 878904187 732070295 863552894 991301532 996524199 205501661 499985288 187332220 395185010 121718928 374404413 534855704 672319923 268738295 381571752 481345119 493857071 356820735 707309511 94182519 322967392 804498761 821831312 676075593 732470117 214834282 638363797 400279126 943957196 912757624 998098608 340149321 432546672 450026750 885804270 262833522 316272407 45536812 957255832 66571187 870201525 395095702 788796266 321256520 986927344 417930669 705906764 260935942 838847300 936975727 976819513 178876956 249832739 241313717 496793544 581065260 654760074 710639224 802905860 962030851 996916765 585966682 679660980 746658886 960775030 611676569 755259977 632818602 911098833 939248426 951590772 648569923 848814953 319783991 395433324 385425101 667934687 974793824 983527529 853097410 868566181 763437488 848391555 541099588 663470360 492948481 736928932 781732434 812756091 282465310 879929620 134835670 336523296 58669098 500987038 669644134 993868721 590043658 869335699 779112248 912000046 327908961 381011458 219820792 758460733 966052200 988654196 561769834 927339371 56427365 708237888 92841587 268814816 268535336 625148218 289733004 624524261 561906709 793454891 859589125 913022966 354869791 373630618 801992682 944530976 462791929 701144019 526028847 600796679 905609377 926950032 272325897 931687444 873915303 980662546 195063048 932609538 678917774 828609448 55058223 701649502 554279951 692319079 850722650 966415827 47964001 604806044 52950836 56135546 66380973 564312910 534663255 547441875 874258375 951001731 319889276 674474536 775536057 810324267 749449688 765166306 784670703 909211610 877123553 903858789 927735977 948106561 328033978 989948265 599952700 925254077 83454094 911334664 112156934 875891210 408143936 984699752 971629446 990825205 53001261 54900496 817732817 944786436 345012525 357625062 976430961 994780455 203850680 641102385 396917716 996246637 318197732 534004484 211830879 750842154 355964903 951955049 235256966 571112023 664732416 992139465 25839102 164734547 482982149 868372691 127569293 680339314 993570212 997871072 904235081 922200544 288629586 559049632 807300039 809247426 351398312 731385185 460649461 474246905 419158334 736409876 51744047 364203868 779598833 997050926 887302440 987143202 532163591 689125456 545626150 825790383 182234821 388337811 664710597 717757709 150223427 161977226 830117849 988137684 567074307 771074594 464196721 897285086 811692806 915851519 794371039 860167175 899668982 977972627 807233094 937327018 942628313 980605735 929966362 943079876 159380221 902242010 185847125 427679005 147625660 986461785 162447131 186942505 143865325 614121743 941064403 947738221 13627971 979280368 165899821 552020647 821431478 827054620 548898375 757460175 816125277 911029758 743245089 755988692 122506751 735830116 689608066 817388498 501020084 821088242 570524012 922446667 480967804 963931793 438928708 565687752 182872210 493478953 948359881 958255102 993110662 996956137 749017922 876409798 997323345 998615397 85839065 357815653 587441587 836570522 968578700 982390007 100331583 142861987 855767253 976692919 902123288 906834075 347662572 929269477 675209794 934462906 933899037 995845442 227708886 343638870 247025330 920918999 236213350 532556729 151655195 681539531 328676093 759643502 342609352 880423051 675100864 792891728 178852437 522830678 913100822 918291137 33212635 162197879 785118148 792372732 789855075 964398900 766847262 901768840 313018014 708312005 113384786 944564943 214852608 685097890 45148285 318482272 334043810 423335665 581531055 814695644 405997985 632684323 70146589 155889381 107283559 249770420 926261560 957509061 304837221 921269743 541568507 979258038 763542576 929874546 671244100 713218611 737274029 945406431 523372093 749666549 341816067 543316926 43082133 224493639 237484378 678579038 598663312 931229213 429095140 723465525 960828136 998188566 632522811 772950185 395446087 813381894 833813595 875608732 386322870 800866306 969418786 990714160 815556837 844550830 792041433 992854268 914989463 985991729 700102175 907797326 722372368 903280715 321865174 692035146 624627577 807117137 897515021 928013454 859449565 985756213 322397566 752913394 79820920 688484997 477525961 603885470 2137729 954002055 482080922 931074273 951288263 973437067 820197763 897048339 816855050 869570557 431974900 511264201 263859130 851718944 707325600 855325823 527322762 684590650 524221131 570017470 505870797 885990786 811066855 918366560 111092869 763429823 662808712 724182352 491320903 879384430 551660208 912303629 939569356 996416365 932951555 972273003 359639846 838213047 242924596 800523828 912659956 986582812 208914901 950172102 480977770 936439126 126840840 546006928 77366148 441968930 825079952 931672902 659137057 762936872 884867494 942958442 127955756 331521853 357495111 723343349 74412452 462979916 863258205 873051906 18744666 323000102 609631115 871967449 27404236 656580073 482612606 485004207 616592888 696429938 70123216 428282264 334157961 448958179 291209532 579841692 244624334 322944628 43938109 680603443 923069273 925707769 533994014 856013913 442399733 708986641 554394427 828415202 334270744 523756112 706932885 773279978 600204995 789630329 656811698 940655527 945879497 966662150 518168705 940445759 568618946 635408500 641318322 865806669 154220276 233077674 753389823 896474715 615320255 897779133 280247455 377651096 324174954 491892225 373213394 772312882 864822275 980070538 975890582 981705615 710277699 837623527 195796990 724905252 306542951 594297642 653584333 866404380 950359041 969519907 114131496 948570832 969844429 979741681 873866143 904247182 401693943 819531530 746940064 875229827 713209538 733648750 142911111 675754949 109841495 296503854 902175272 994717654 875577853 885122064 360246313 635454717 251291841 750400673 960039991 964888796 538460651 700994272 677012414 792918217 614793110 800722364 63869299 653441775 721131587 839336139 90043550 424054313 682094520 708557974 613091929 681442509 489753476 769488845 407462792 903225748 664259248 705424459 398882355 920233397 265196662 892966148 917280613 960677573 138906817 671138250 898005913 961144476 162164764 966123375 569683772 723262471 942849148 964253121 582746256 592515217 430046040 762407099 26557342 558978802 538877555 744346976 719156462 883801986 453818923 655087441 595415515 768345805 599143123 800823285 474510050 944970926 434523142 510292700 52237279 273359178 728385666 981675809 418741884 449625821 263539653 509383720 324074417 477961789 338975877 348761891 549810324 682530935 434951351 843686550 332284276 975951043 791827122 882040274 353510212 929154589 146777643 676138189 70295418 717206101 876414010 952345524 523638866 538342946 525283902 533733226 122293267 717867970 840443074 928633190 371356860 499157719 314905377 562671891 111405386 274477693 903720289 917048010 850556480 962360553 6181450 681829430 301714260 552595857 597341122 979296598 377466786 431720336 402817488 408752777 425970096 987507911 422379112 941531480 640106676 996540950 703255485 716069381 550530710 698198760 547133501 940339473 197794426 570564670 247717822 530124029 278749423 743035175 307953993 321080156 777519773 789131107 351241076 792602443 858767772 981310702 910082637 979565712 334947328 346251216 97330234 811611722 842832166 844852974 155716593 296007134 871407270 935587420 576883179 637481703 220450364 998326355 515762051 833899027 444048329 727460411 698905419 729609237 462977405 600519739 524374700 788727415 930978503 967562535 558193900 866768994 824048800 965895047 524053068 563264595 332858993 368281513 149443087 442473691 354133882 733320342 203455446 632320681 975489375 985055049 102543332 482525111 184708358 960502821 209387174 957691132 282805663 602118215 646829575 855546536 732681068 760576942 293728572 510672061 624534699 950385291 418159031 831862796 794325105 990268474 80036061 650327762 443579307 987884372 719411265 855549352 503645804 506439563 356327278 869414714 994020394 998356951 972243191 985881854 790477746 884630496 210579911 814538557 592103158 992544224 99080468 114127200 473168141 674349075 679367282 792194123 346820494 500988460 554563274 803819439 171458957 494516328 404104334 632968371 714829803 960414676 535318672 775577459 828006450 994042871 111430415 236438578 35421248 202655959 970223663 998867809 610518615 722925437 905785819 977839001 898641702 907221581 343563578 357082764 93366442 578865415 895942024 925795990 183999194 633137897 78841341 768422638 120485466 494205936 763541416 951260190 891905460 969391882 453956225 727746528 10939282 958466504 466523291 796979210 603500626 853102825 835765639 998345798 593306408 668510400 323171480 483197039 485012274 884353359 768419395 996988918 694163735 997751266 967491226 991141312 692712759 879551940 548274024 705847847 691425651 723415220 968614714 981763271 213258895 498704902 922148055 924218136 810947867 967472589 738951137 979263871 247734083 450490505 351848253 935716015 670184207 998950456 465520782 780492632 871269813 960364938 241897120 470047734 886049506 959961613 780939421 979618283 986112145 987694177 64477550 867459095 690850052 703887198 679620369 848713108 460459874 899485628 196900503 823196044 540721220 971074198 772124030 955339897 333658041 822610202 481850236 945856836 858402012 940078879 403510542 741573370 954391891 988838313 207768740 739863078 182719722 403843862 673543483 894411038 457195451 696563843 612874012 648353894 546496552 575615357 296278166 608250170 467940438 610959693 379548162 415085876 458052629 517761920 934916139 969942905 407585916 970796604 677839690 756385354 271651886 635405504 979818857 995441592 20212682 374489322 937102776 983242359 618281601 954788218 662264027 834312480 45708883 342660256 200672084 998813050 891109110 971957237 75711402 857429947 661674832 666782938 934734192 934924115 668710536 923876745 974748587 979058517 754358073 849602455 636861537 837504698 630860568 897768612 609479125 968112002 706005514 963969621 948592905 995144817 913722879 987032469 605539097 941311145 462410783 946337013 267715924 875701252 72623940 580583483 829508942 918299361 533214827 800012300 586207355 703242086 681452722 700273596 184464296 751943102 681688981 991517568 60739200 179540388 324097104 816378269 587195608 730915569 352487963 745674735 653376097 879823705 95333690 634792283 953145239 982939878 426678074 743889334 500568922 593295690 458725354 890315174 824689147 964136941 351967851 816627073 194272029 591501578 350874801 846993682 875520530 932495263 276791902 386328860 627622095 712480459 9928736 137359709 244311188 645722772 599347269 770923667 805946723 959995163 777425715 967723429 981138451 982765060 529808300 801296770 595538963 934848609 496465599 636748927 589307819 897106438 364638876 939971171 514619744 962334060 605490036 819086326 2013019 672165179 753316028 890315342 758821267 925835002 102052528 560282134 93219843 578730007 461122478 900216954 396886119 666075367 879480798 884635532 865961140 872119154 337340408 741940438 27328893 445174670 932637173 992530902 804085583 970521704 386551465 967464674 157833660 847973508 52245218 366024059 782598760 969324993 659690676 808715316 465831686 531045400 171729324 552660112 45899076 85193075 149669648 431163423 796629623 875585663 409855426 489376011 683777891 805940066 145789714 700493709 323248100 868919052 53124897 622671426 533679090 708426674 374983498 696326613 628417785 645555573 14561302 824679267 102170734 714814227 263531621 458011775 974676059 982733043 909502834 959471874 558114865 558449125 673109851 758662860 617895829 795548118 982117682 994704245 704288575 932188926 304386150 373674591 438475983 594748855 431122829 967681664 218553441 946180302 252285025 516401123 319749718 456407451 332700379 896330041 466366959 496747673 583134822 992156540 357814903 366570095 746291875 924441087 181723714 636041596 649533724 986739377 181273002 367344755 67933883 805392012 442624185 942056776 618022939 771025680 988403216 998445832 724609395 967099507 491647994 763340216 455071174 841096239 203604264 407333524 793525768 839204937 940629182 962143507 650433296 983799805 843919423 845217701 757554840 829941194 12522803 751117828 832238535 934219255 83847599 132445500 239011051 471641995 681921015 734611073 994277786 997966159 560993914 685607616 530546132 606361550 306345845 688533835 966486418 988052228 131610162 144694747 703082820 811164576 491819806 844694932 163946727 265727877 474471462 778792757 216225634 297212502 693766410 836544886 992960517 995163968 762785018 984068705 815356853 893773689 365805358 434241236 51175500 944860555 248321188 603795801 396979279 505551573 556162460 734994861 903883038 919002337 148006473 567309679 364590721 630230449 262074868 785329759 100424334 500228251 862258121 891033373 624260297 971178586 280645215 909182387 491940007 966978725 367732317 657332273 383058923 955815282 411127390 775174533 466508121 993120286 710815754 880943645 312776524 354688737 385086757 445083663 621220321 827598379 927180730 978593638 306890122 756739975 649469202 968770552 404534777 971321437 881517603 910685905 246037066 330438572 311976536 560367096 67922445 791613283 791591344 822528857 156014832 883880896 964609807 989010717 533901637 974931304 283175431 566589839 148143555 338284075 400695003 456109485 193734917 949971307 92097012 526682435 981579200 989925564 70360768 429605078 169039223 739829792 412705603 806408107 818330766 853179812 754043486 950251662 951299049 951706137 871519181 877062015 210771867 374117735 765631300 914083745 243002809 629656614 835352380 836986197 894257541 978254812 927168657 968855513 938601234 951995850 324457475 914906953 299939565 351306669 184338783 345078177 23039978 120404002 735806622 817011988 395762955 835213431 678023942 868847066 834683156 963361814 328053825 703473746 414917848 824579333 449901117 749463430 735058868 879072651 495837671 901897526 475317471 534792900 157189420 761306430 533353143 699254439 781022110 845576828 785675529 845449968 903545484 972822397 387654361 435991278 104625987 592109751 120708709 437085414 469907256 574189477 363708746 938394382 107997888 454585690 839349045 875957736 777369399 940180884 641506399 818819221 667389448 710832233 246475574 401629630 42738617 926538932 274959684 935574449 664649440 786263806 672005010 717997157 113237400 738661909 436354955 653544822 725416556 999323520 359201048 824897188 97457127 480373395 408931417 830272117 72035282 951515618 330728891 800103717 49165734 773048504 136380145 909602649 461319141 862814142 281846218 713852536 261460155 604345253 400908658 763574752 884414107 948582709 962009493 995146202 229257331 824200071 221839464 659712170 460384572 466713112 77883059 613943374 623914788 938831126 518463284 640156329 159637502 507434946 423604132 722176655 736565285 830688284 822527606 981499525 315891842 683040174 192509663 841724159 101046099 964217177 958052929 964664003 668006624 829036327 495249765 566851612 614352535 850850745 319623332 719015779 361035824 662583000 979066494 988289266 279914802 928541883 901698277 921063112 60565353 531343159 75245318 119217835 155355557 802901238 613652840 637513216 585231131 758001932 757473454 893304168 641764530 972240155 493105223 720892468 426465782 471181753 838616895 970938599 694256055 963781530 886713347 917973212 148697526 263598287 937378361 989253667 259782630 357034309 490053763 491999726 55952645 127220444 415853336 620761433 292871057 449538795 946769569 949792570 804331287 942541971 834984428 916029853 925068877 979751126 921329817 962668950 84318638 287374633 38195679 718094239 911110914 951999782 161420425 305708766 7417677 265042775 603659618 943043809 177219424 435328609 109941868 927246903 556087164 671227004 942416379 964047899 907587449 957141329 651684312 695566692 919612705 929956655 993208940 999317384 162507064 597223236 556288491 674488183 473328921 823098367 920754254 945507541 232349998 954765948 254073349 391177588 609023131 859487642 360688180 917201470 638216667 685044843 583458386 780552262 725460068 963795664 65262926 635365620 324355988 566164475 276448302 593838532 703907616 829138821 355263035 876005688 532500668 941435322 86182922 833965189 185484191 487561091 923830259 972509688 364846665 865589557 511065283 882694314 59364085 702885043 345981072 967469095 578883808 684432046 335367457 475466525 931177303 963787334 422028862 725027546 195076337 346472669 433404118 848333480 928006137 972083192 953478249 994919986 941324826 994644778 81168908 233756851 683493496 889275316 801821435 859542120 904370988 974606236 150524788 501360866 802407034 909456753 149250068 948716487 965453506 974215817 769444708 868365778 734648276 923338424 987162050 993574640 880331961 932113395 819302321 924659919 919980293 983313946 77094298 799334807 645500867 879213319 122410333 284479284 539175222 888543974 595627131 625387100 716776587 861129416 1721345 948916615 400278285 425882721 240608452 359313255 457737568 491490420 770209600 829703154 355403930 452939196 475401197 618536921 706984482 997491145 154502555 635077313 658575209 834925005 643513092 796068763 307076075 966451269 611219477 903731711 92517193 460396879 286546144 449711931 921498134 953376623 399016337 736476623 998495669 999072014 882021437 985040818 69947617 542743064 59930444 704497451 286650581 575436067 876050075 885848159 433092821 775706983 523799656 705502400 802484586 937900128 646618717 862236209 381003682 835259127 517890723 524494836 361243192 729259681 450668302 699290659 181078897 314585800 185777133 255571043 793329791 810072667 912691318 996791694 986479404 991872888 979160544 989857745 757920641 792547933 487752152 841606149 634471367 926364526 665664190 766316509 349159315 356617235 23982997 781540554 707063977 981732380 213009076 890865340 742782340 782047617 392456729 928994656 81576751 688133002 816226090 854073275 316429124 520031329 592300225 721542562 841367848 936907892 417988891 820097641 3549613 892139937 73117821 322144051 139798005 405667957 28755680 642625138 145663897 926121759 163796661 735676645 498827772 639606991 182343069 872432900 900417067 980509091 917890173 938536039 659373735 839367540 650537834 760296094 542543446 675109019 795737725 887960289 579561236 973013868 975961266 977146174 102040206 651350671 553401623 997617449 19269772 106890609 225098588 973383440 880774595 996527318 53438355 235298531 305657222 589260073 399362612 934592503 663557451 860631761 249337807 462772598 197571831 742625695 220372086 245201598 175041431 475087325 884858531 955957167 387834606 536566882 588658650 724579645 732556072 765054752 40073322 656404998 816690812 929541313 334471433 763407664 658580330 993604216 347712083 602587080 848411489 865214303 133655160 302141329 575586991 684756977 249132575 750308247 971657893 986025653 445549424 810269512 295780309 639679797 193348524 644571195 186827271 792197523 592484337 859503765 999091545 999180853 168814311 370020708 111380437 955687094 341818825 393482347 689413158 950697490 906020652 924147438 447056379 484820896 554935231 933034435 812587487 843283757 766170139 991036345 215489844 240808268 784966963 953083789 339799787 397412816 856180504 952324706 47098808 145282616 454348857 814051090 16928626 242095358 939229174 944315751 949718017 977073380 826995878 968515563 160672428 922960220 834887801 889626754 465127604 575093023 140533182 247511438 678299941 732432982 529195574 631214014 609502671 751909578 693848312 890591318 281446527 898550855 921247338 929936169 293122172 881624798 301783128 804724069 686115102 817708170 332743815 440152062 130711965 806773517 593279322 693608350 307869211 809760633 318567049 605428942 50093714 809762068 406419467 768671821 799614996 974526360 678339882 719058095 48030157 404991607 238580778 497940258 868592434 892066308 319964440 620207466 853723461 866058904 444088300 907626080 485959924 559416910 784551136 891123548 70992071 210981332 989566115 999228473 121258046 420468657 315178563 405328185 262210040 774872995 708074795 800862545 365333896 633646185 133553695 752503029 569631210 717199855 263446986 509269004 106803804 233217450 974897367 985216623 385608138 507528398 190129226 719157788 325133100 803118321 194146108 539126466 79028248 889911632 343558845 901354538 808439428 850842842 711604261 920707892 290444168 900560615 559873122 873719545 500635840 756261840 326219096 972010101 107087234 211942794 926795527 987704680 784113617 847031632 44653347 135716322 48975880 134256885 495321377 614078448 392968591 614443648 461156706 683254758 240747060 409877280 310261975 755175940 644825461 699812707 21714524 82522427 509574508 590809150 714423488 761829513 563081096 778317770 913564207 987735109 678939992 784677171 14328492 899948427 758682794 880584514 22418910 797328634 360372312 547927833 803976778 978174102 378879416 931743164 508903528 685093388 281602869 553946412 515109079 531808304 715471626 853066809 785392570 797152186 670436126 790398711 895896182 975597337 766014293 866988257 562899020 646903717 653020662 979856579 312505870 607368918 162156180 953807487 539098072 601108626 813407701 871439801 489940469 576548977 433683693 575192196 624932170 771614522 131493488 930343665 396673700 745352608 330703536 572041988 973739336 998656930 175071773 367054862 881808579 899181575 57687749 181415891 752164298 780536538 726171625 884226997 208095205 989280215 111392216 915453575 217822544 670201104 529930083 803101449 537416456 566276835 902954401 948238476 343810216 560480667 261971984 981802042 123044353 465812765 409191408 672905721 220410233 996181957 644721131 889164476 576098708 741403569 79957090 988824649 377637666 627346225 442292045 632647860 861208956 923643031 466932677 793629990 25586584 268221640 953215301 971358827 146992381 524586216 329676355 625847279 84857031 701830640 578732864 721736109 419764132 907011364 246877895 525482602 963421839 978022772 227477257 287436064 986580753 987212201 103592724 716308035 494614703 618192027 901104795 943306830 629993165 750296709 784751014 804187727 761416841 850569879 909943171 972080681 84191123 699250310 204290373 369121331 752804233 851857545 755129881 971557026 222633542 952422661 658959222 789566194 74695536 557231906 66997314 307598284 801899012 840002056 118296388 552430412 372729107 781206597 231046869 505540176 67491052 118228954 734078650 916257819 286846371 290342099 686930326 688422746 269187244 492862990 29361333 259803735 177503074 490112560 966143277 987457963 288767501 693766504 289028944 989819667 247895128 340536359 5618504 591864930 266345682 861590923 435845440 447988125 721510276 868764439 607543301 927257928 434740645 457308492 966294064 972236512 782868789 859621748 608347670 613719635 664213755 718342448 552789298 734830838 450116589 864223289 311836486 349617930 775798684 969836309 501767560 712905099 299439687 834020517 598350880 722562626 392078492 439523739 687711991 826297011 120030696 402754349 910389593 993696083 282117542 989064733 373694550 456375090 153262652 991566054 205592596 381088555 159511283 715760502 377295884 571440145 597751441 829884225 166342293 725812215 467900957 714333390 784179209 927243401 976097213 989785764 963816504 979391598 896134384 924580362 126928270 762160737 529974881 809943135 194680385 632441496 795912149 870108643 462670792 872437439 690905392 803045275 240211354 768498680 592595619 798899958 159645107 658436781 694131127 985094917 676623427 716046354 196009068 282278134 162078827 809070315 642997599 993460573 241272191 554696172 852769628 977053979 421042015 940252002 184884018 321247385 238080668 810226999 477003495 780557645 440952915 607822125 761034113 764244245 125732486 512797477 63008342 673928559 576677167 620461886 163586760 949371792 232499318 847158820 52882370 484514805 669107913 855429471 94542413 678981441 624842333 792764670 985718278 990619836 697701484 975520946 695525331 833572042 93530495 975611188 869376130 931476846 111409683 399468600 193729320 731597091 956969918 967166905 805520150 919448328 127336164 828315887 487723750 855995234 226920033 928327458 189466759 224300826 753678171 817854167 646798179 651275529 497843963 918617282 682092802 793288702 657421978 806170890 646931859 825779237 632665530 925739383 617166796 799837681 889292880 979459006 466146519 594751701 465981232 630358248 878203616 979152685 50446278 160148150 310760606 547521567 960530376 983267901 975070906 987705069 776183871 965878212 838817521 966004502 132610397 550820503 141601365 573793322 945058332 960193478 511403213 797176088 195576123 297161090 268546133 712093409 50878506 897243766 708748266 739043875 550090080 808089271 620515581 801000251 467871261 482931410 315031605 908408256 950181928 987308310 270372943 281339216 942758408 968238533 987883685 991717844 882975318 949922582 424119317 608413768 962287894 990310462 815924636 862985005 382262901 763308670 471789815 872599191 612811654 617855098 116545686 723890797 520819051 658909829 390995064 402822289 134730201 363662822 745368176 889326279 853044073 984811001 76891978 240899322 965215112 968192036 397192987 497196322 545119554 852123014 324962968 511724329 680235984 740727008 23442907 429523571 64609232 446229861 959252495 995642912 841044230 906487747 977992518 992291078 68120878 804085759 198366886 345065790 452986072 519645001 147541799 814889484 305225327 867076308 967943247 995551844 120578889 263730486 808922334 990021633 808735388 854350691 968387582 998712877 589858832 965281992 883605807 886689025 354206658 647495782 515553303 831710633 952188692 956507381 565597703 864479148 866004243 914090770 374425694 746552560 246155644 856872855 226299428 987132793 23855487 491912576 159860284 487660217 369353387 376729383 487533104 790173732 390519352 914892368 645475392 920805209 830595639 849467919 499782967 661175685 172946127 657260093 879065903 934104836 778056401 936001037 417245339 618000711 457704154 842825576 218011753 467244988 755175154 920499448 230017402 702511322 985062397 990033941 954193674 976298237 31469172 559458287 110169950 309130291 341284497 659183032 199227147 808424643 348195900 791028112 14927915 168003304 281650179 887741990 755486999 947252101 420515636 454866205 238656656 288394496 459808928 699854217 821104077 868554498 252653506 782541830 860013103 917945255 761668422 848911144 415160286 776408149 180311724 301211658 451400047 587724642 712255662 843022138 617671253 642573453 338860778 985417126 273403639 535048900 3790054 307563363 657959371 853191568 519259571 755141693 100519416 369999513 678084911 783747517 993182178 996017105 297669842 426054362 338360263 868232586 228665434 493840335 75152571 905222744 193872732 587465863 698949290 902214438 400015142 712438718 763911698 919489311 157690468 571543411 875065610 881697105 89054119 932848916 110155828 893174082 805492218 972963779 772896377 861552559 189098459 919347777 178721684 429475189 677786542 687004500 131301028 731818812 243472650 800012887 512732309 713327186 969973139 990294335 266318345 740737286 329765020 573868819 631454527 668517216 292539362 534633277 63641715 879472131 181901090 676107620 85599186 905879980 28857517 798934403 829974723 890457553 842984969 983524751 376559607 425420613 726476845 877959322 643539028 806260462 521642486 911566650 57929175 820813535 582643513 780998692 170477377 233016849 637501196 676729496 470108120 982946131 624348131 817697122 488988927 849609750 742096120 845990118 543505760 690044408 465813501 537900051 430776248 899962628 393906308 500667418 569497444 968153738 94650137 422062802 60023777 210813008 352698345 988055613 938521579 950739719 556278339 571743316 187795764 455447795 549756215 690376698 292942829 536149977 206354766 374052418 865849740 897009079 366546820 458647938 42130779 334191146 124591956 424778366 728736509 912009136 254282705 834014080 235049468 503144449 952665400 980404935 293814373 384367799 49417607 296470666 698576835 777369022 181384252 906948905 992078889 999139391 837437629 922398872 965078351 990667365 527948352 991571624 898602073 921149704 430630649 808099146 582884237 619693912 556554493 858171534 128603971 902605700 697152921 842584260 161106472 639608861 963009021 977511896 633546379 722830505 89224580 863544891 858716324 919488234 168714829 955170761 972854980 997348440 505822600 741092093 964783851 965956206 584106874 837599786 187043840 569885124 199164620 525008994 30117623 486919987 55931566 704753972 415094458 473218351 285754351 517870841 364385434 376309164 310508393 613851867 418169976 943178327 678057480 806169035 10353727 616708887 243673827 526443796 461098563 781826266 982181931 994482983 288500931 506847399 191096928 419758731 523065528 665860357 516815990 604667632 334524292 381215137 513118891 918151905 689082133 835113456 735265044 869260340 855954112 938794507 813412565 955846715 163819753 177847841 360422350 407355886 907465455 907531441 444523506 678825397 637130429 694143527 259558495 278088042 508187802 951045700 387426799 738396414 280308980 687031370 796443502 972014116 968776373 999388442 309273285 471415514 446034196 578722952 506191997 768719014 998325300 999184407 880282333 908571061 447611593 676963234 221407121 838640513 991995504 999211321 23873182 468973784 603734529 914019360 400337765 955777055 281138416 360261790 501570838 897432010 63772862 989503520 982065387 984774915 196270533 581410927 417751044 728508539 275994812 877908770 895480766 910787265 919616387 938469384 746632734 754125216 290947530 892310791 834221356 965952729 474561297 647823901 377799147 783009834 582488767 888366895 867647592 955802753 784819278 830993686 844849939 871092598 266486715 649761920 554631216 804128202 355819340 842897054 441418273 491952277 427766627 708668469 607296340 612036125 262937091 996514633 34448227 548123544 488363156 938162077 131229066 987024840 267637012 340950781 735101459 757123977 983650614 983839882 997997119 998976124 525427515 537017733 476481307 572282255 51685717 590780732 47764596 148807846 244718129 500690307 140681849 764521246 964522052 987173948 641179180 884787120 15762301 610981425 424662742 862647263 641045713 777174498 657642194 841206674 328792494 365567441 328572543 532230857 124981538 903641509 383348458 394733503 633314658 869097805 710157175 773936979 54446952 933527590 663765275 972073903 525597491 590925064 331059091 727817859 416740833 491357507 307470853 432387499 236626000 801410374 213005731 584804808 248673990 471499341 251260889 647446118 812687564 906079298 37518278 534851060 194663782 453257358 209706782 662799524 794733791 944758170 62076605 252728770 567909320 726376595 236315869 258031341 731842321 900432585 13967524 869488241 228882613 367188448 436366665 547589646 199288186 470589205 458473016 781725723 804477712 970930686 131309332 995585521 194782802 939328090 744807140 943345675 726756573 784244635 589262701 593549032 883250633 995673199 955876425 982417986 788537325 891277841 913238169 977269724 450395034 463873621 628002347 691852165 741135030 815037310 430141689 470574446 121036875 399173655 120319364 862592078 368241883 688567796 768075445 834683670 962694707 962855441 664113055 978320647 414119829 851542644 144761600 557653472 839003143 864428666 798943557 900105328 961358812 995822468 722793003 955240265 89278210 960128018 597398124 978774584 482719946 702594129 464106053 911474069 758810187 833373170 308169458 590968896 299305667 462692960 243104369 422862584 238638261 360176748 426539288 562964523 932626734 969647375 230979099 260026180 835594049 884851822 345089870 650177835 730450120 845557630 941479385 989997180 250175718 806512359 667442675 972373880 756067740 989379263 380962508 428345378 245845574 364742454 430719957 494911112 840252656 842606926 308502788 921034689 170038741 966529203 446421934 743605614 496177840 851589839 874066229 939485091 466027394 779212795 625959817 940880715 887252349 998943452 355196870 634807686 350534679 370365036 23639119 132897824 196731739 434366496 603605161 731919057 673834631 998077213 964476272 991265962 168412577 637795000 229326666 398395885 927926951 964092812 323931544 593376367 482431476 618714956 623820490 713112952 85439982 971539178 679539645 773567046 599986261 807811803 64484891 560152365 632285302 645457176 206882929 606148343 930262862 966585444 404135329 750907710 956592773 966260301 454300988 559154959 488404907 871149060 155517195 441965502 197681244 540716266 838673476 949594889 970133234 998236510 500263225 893789129 769667815 984468246 754169531 875519506 982564011 984189910 27675169 579792674 152215142 221335340 576164538 894683203 160029602 708434547 295890845 890680954 242456095 723271215 532850791 906040464 513302061 636294237 115739907 443522358 81721842 959403862 180079903 606368548 720468037 971276343 550737546 619680732 253781630 497342255 468068740 654019193 49881353 471220300 427205175 560476683 541837341 616475922 710379278 820848525 646662465 799178391 896059995 945302091 985473222 998790611 684751759 996963846 505886187 782611377 759814873 766349677 489359898 565652261 591667071 754689281 656115342 968671616 186952864 348742180 817806495 876598402 661962585 907347623 829546921 830364260 377190853 455596215 375673236 470849338 409557036 551721906 875982455 956796887 982446667 993592194 800609758 825590779 437289912 774599033 230686657 321468880 505465383 779446761 596166286 956796720 39033315 548813876 253571571 750602707 467831235 541570932 727810160 835484163 4367059 805970637 266048039 430771016 182427157 484898113 463275121 612278046 787861483 805508933 353883779 616303180 261646521 381712288 166057121 200355409 927302731 994637344 96723454 331291448 601248620 941887577 662354863 898596605 616482957 933851994 979923666 984337661 459540724 911844940 695139551 990984595 750498035 882426581 763120678 861149353 370261455 704164607 357894210 752268000 270066850 887619175 119752851 935092283 622963386 839228112 520218551 954072128 801012523 807042167 57902863 554435409 294717219 695839849 382209678 493901479 317898298 408215613 767681008 827805373 375743835 532768283 575349751 621183504 861289991 935220750 243359065 764213387 689850247 830138073 10965786 966259886 681609109 682529504 637206657 866037594 311767982 793038972 473973981 533014529 362025281 461801576 789117369 792913236 561917332 573516833 952908833 982814650 38734428 952230986 814179948 927584159 144217074 861442765 19352772 421128094 750438462 857992824 219005155 664854134 648617094 839909011 102061900 120857901 111611103 883711872 433019784 858154374 969724995 996342017 524423715 730415551 660834202 671798965 368465955 779296714 511762626 756311851 145913228 495052016 118152633 906251098 279807383 437254917 108540209 278340498 600218585 613713554 912892348 940153679 36921119 722539817 477816931 729334518 630938559 844293405 283010376 589226408 103731597 451322851 45665017 177964050 171605426 601778483 257403925 374549705 63671777 134345390 364904180 799012599 558432354 700634367 403029016 806479452 290536082 556668115 611770682 909692570 345061359 779323768 656705087 667310287 755655773 950806325 754215125 939529763 927121025 978800852 197983189 531915136 649013557 782531020 659811664 955034611 850101892 995132610 531224594 734183266 598953223 833690815 678767529 851064189 542878317 974581745 332439353 558581677 189023687 328894689 86329912 495501912 958589367 996686395 893892191 986597530 732943395 758862877 213666493 591625050 592196121 922547300 853033644 974077026 477657596 924954042 676737742 964541822 984528867 995664966 961844830 985327252 625262519 898993003 463301564 936374424 142194690 851808196 639210246 827952371 103709855 399788161 498537039 537082571 650893067 788224589 121825172 390842213 577849274 789639029 104857531 736927143 57376344 898093903 844347995 860329707 752997828 964298336 850183063 991740539 4412354 75801453 468748432 605444729 393280645 550006242 86960230 930151632 906298273 974430675 696438529 761455396 277273173 787060826 949119389 992869862 828800741 988235027 154429475 226142793 230228836 583131363 76888377 931653670 716518105 973443508 929432430 997238873 464007326 780685265 865412969 868149070 776945749 952181706 296706080 696839404 69327302 442948880 678249715 875778034 883075496 950304289 139533731 829821088 652603329 936608631 684590195 735684896 723037621 749110158 586056192 823600737 791099470 958961158 635925716 991336880 960695682 973231324 165645526 199445395 512673207 595621279 328223034 889259870 295813295 902227438 608562771 630811523 743245217 772575609 165631329 405268841 284260819 348624051 313488635 869794706 215948012 242612423 109393354 950845821 307238528 539445169 620818913 789356014 432701603 441603943 495598297 690324523 822048921 838713624 930742405 968272264 179214545 499971182 386670477 891643192 391325906 597343677 46990606 242866044 51953626 192630146 75415511 960729691 685373781 792631391 23508498 459763545 640373695 665902152 408076203 521197744 240022045 783604498 482270822 693608341 830952794 990403321 487930958 955886158 90429491 702411048 208155280 411517755 850710850 986420216 952529662 969039149 530682949 533213962 881002008 885388700 815488431 835209042 876925551 884415695 685137135 901554094 295963455 775691684 19062101 340385173 578531956 776499696 780358998 862583958 386430794 994363740 320916837 418927959 152184523 666171867 393038289 686374045 330844817 661077580 51765357 344743868 357477905 912386387 43244677 985093703 687382170 803596182 173687439 413605160 202387923 266046264 665586037 736128166 862195335 962455376 697411055 881975442 892706402 912762605 695718441 965326253 572570285 717733389 211239739 656501038 976215428 981366988 876136901 907615746 808903292 839663633 754241099 867990352 752631530 974973937 743606030 968595023 325324986 542958839 22784795 838248868 548241163 911350197 24543690 244459827 745895066 977169393 144218095 533396657 323389497 963810083 493725653 933280838 99982991 598741807 464061343 483935349 441050573 738102652 445673072 675463740 8021208 540901772 967701415 981781166 496096009 765426981 817707491 980896987 774633178 908311079 857851599 861527869 185726974 334697072 310422028 749898397 384703254 415193678 439274259 577392970 365751415 552416862 219717245 509316544 941745211 965845210 373076467 439522179 775900256 881171882 651451093 729193951 15187746 202263750 406021291 465645525 725393532 819386800 862652650 868978337 721068558 736996750 40177542 758260113 610599455 985504773 649445251 878426268 631122821 649499074 858852184 906631109 391808937 799324095 385155379 992624102 841925000 892508543 241730592 992119073 809005764 992601890 358867893 763246272 539324085 760896701 969602732 972590582 238425025 990390777 779417857 976456951 806356874 946035280 757955245 874625629 397425113 854479716 258926662 603786667 229320218 526490848 162020491 166501513 900577332 971000592 73138196 185882134 359550024 752816980 118748666 888107620 641866824 924450689 635755836 879548564 432718174 691259313 493963994 506839469 898987580 930150986 799130898 918416436 127816769 305355676 959014102 997899086 34734484 617294583 619030068 835982454 557222837 701238602 480045468 627764971 958075097 985494211 729401901 865730057 270272172 855575987 439115827 555907300 159526823 903615671 906588519 971487845 523321679 574406207 623466937 856965167 710596904 983311404 165056884 854734053 98223503 314218218 913180130 991445067 736127549 796418275 469521893 701942604 194913082 915423613 440377192 747193666 924027980 928903443 155629734 849878918 729161122 891901932 596493689 886250446 862274429 928355671 823824857 995763855 482718486 932514153 851218543 857711156 961214549 980697293 486294505 842976017 933505839 942696723 845921041 876314871 483332580 965324850 249852326 348661979 468026337 838469737 472913529 548237144 325240094 503105598 629070834 902929382 278602527 399520302 875154553 946812876 269590164 387959502 987142028 987154801 229064622 585192269 512003082 909012067 160220822 351352598 218845804 368136836 46293997 396487547 720604693 722288109 938707931 973829143 281517095 469709362 803731955 839087899 325010002 494351125 574600045 645687952 190035489 404124393 163774701 599958499 667912115 842139984 799463007 839886665 530457906 619850353 827110214 960192492 881472056 970912515 971585928 975751871 112594856 741171419 493254886 543364026 288503821 808607943 154079957 550908196 245571557 958605999 10785199 148591965 27489128 397748952 708308318 815374897 27060548 265356244 590300858 707518470 210069871 253830170 275298609 396012605 83577174 998033634 295370862 677284894 695960190 851942379 673948323 911377737 228886446 383776878 488390953 777982131 35804863 938278114 623568331 662611775 462218335 993181314 959156246 974937431 158531721 370223057 908112554 917080271 248599216 423202436 497917418 823017604 456096656 520707620 687763088 729197119 197002737 288552738 486424742 898731299 647699897 760763545 458699912 787644030 767376737 985845434 282445993 879059360 878426455 886229264 240641669 521979217 288188082 524088746 524218888 604233772 77618876 826178698 59947714 189808138 291080479 783502043 140458035 712749586 988795123 991243864 770165269 922229741 497847791 731610737 473956253 802858816 422741694 482273265 410609165 754376651 391238514 750360869 305910649 477281184 270511281 656162708 134374819 778922911 37956413 755903646 43718665 873615188 3783620 384487143 806788691 943645280 47955914 222845420 207469159 756052658 109829704 864050206 450343834 662353257 492056175 646940765 365833556 398181751 925572356 963364349 162601041 433095913 910005142 912529899 995794533 999215744 390902372 727277698 661238833 947255755 385205759 691847517 88492165 207358029 93817020 284035429 966557208 977512234 413283955 546068658 421609671 768991166 71363300 460497829 892776931 926684076 529118533 629203168 654794120 688021134 318745928 751246034 959230802 995848635 109636329 562969396 765555680 980151694 813149687 922153157 909699241 921337747 585736277 994775157 271815087 718585490 158753626 791343700 748939777 777524461 13766332 761097873 520287879 879902830 529961504 916427898 192726874 794085767 714166164 805083409 544546644 725474995 254434035 508570036 101367861 440554329 563343993 868689269 927026189 999195537 873163684 996567142 798657709 993510533 667359851 718286557 215906778 728699535 29034543 418999314 932520252 940654196 626069468 717891650 130168824 290471923 242742226 762087945 815734598 824975258 371550788 548047510 539632835 924469605 212852342 226607359 448500506 764874481 249022629 617094030 561370526 951277930 154149412 799712623 314636854 500726943 97407483 156748279 221564964 490979538 530882254 979780326 708303309 988671093 236308622 951350173 552783402 579079723 398992797 862524580 354024950 766385397 761612616 998243562 798887409 803802040 762364442 945535377 136738139 625267648 658495092 798870350 770760891 780752505 543567683 664782722 138732519 437076463 519935191 690219918 703720615 819307526 998771217 999006324 8217132 139349800 915368055 958994323 995288749 995393266 390083990 684234767 822655335 885555090 63139066 861476726 476061704 538046554 849108632 915688080 340651933 401311132 47579706 933888379 44323782 803152818 949492144 982884689 852153079 864293248 778931146 846489490 620314881 842944566 467229469 744208475 359505828 966717448 767008539 878392949 289464329 369415736 446516077 795390367 892706744 962028395 151102689 733606131 68000738 871615276 101168598 484394225 500960266 978935580 486391702 643591232 696824814 807323267 458426913 976006983 865760337 974807958 264127256 586039676 399554632 559370714 561646252 646850931 609858804 684776017 878529706 974166494 770904617 906192552 731023890 969874473 725944414 966492192 440077360 506955319 490329562 913160637 857044447 883756699 530662437 897976028 735640815 882729593 773632204 998286593 186440333 871681074 949694288 969022013 440877792 860826279 387125141 975097911 481720188 776908683 948547068 995955749 844981622 847432894 244232293 873385666 90594112 518296351 513183273 607336929 564754885 945004675 53309668 379193874 240421169 603846635 94340892 650427147 90471727 440247723 975090156 996352491 905770305 936112495 206718210 395499534 151535829 198833905 73827875 139967508 716653207 875989612 761102078 943162346 921966437 938068373 472844660 667285274 669478127 841130421 859752606 918635681 94269089 237792787 442547861 960210848 803501702 903153543 387766162 883855932 235103175 941264843 872195726 882023410 677683779 725779918 979631835 986385726 195736926 618134532 581434210 731166868 77421931 566165235 192507777 420825184 460764635 998616640 324717797 359169786 48720316 930997401 758177894 859047774 174779041 863745443 246130121 803667276 184720842 629358332 295404197 656950377 130959401 190179990 146316751 175232652 149889977 232571992 281796443 391939142 597739349 634746238 784131125 981688776 990225024 992098751 45072873 89532948 462346277 659336825 529851104 629892654 623047498 812804421 761721945 965933830 16065638 407956717 47831312 275714197 684148139 923584388 246080772 995052583 824561567 959704990 739066919 823829574 817852073 860877810 400929010 579947724 554543412 712773233 638495386 694779323 589986238 895270436 121389620 674771229 276808314 847315365 66478126 295112547 975125028 978502860 841089558 845763150 13838419 159683385 828271156 888468212 868712684 982696722 666509761 934288879 71653034 719633810 714611675 777433507 563585211 681342852 902993659 987427383 853290881 884221561 218570681 288939098 663926318 801469554 794916309 930700160 432561394 665124898 587081640 727194022 407076793 879674012 242822278 489659150 15790034 400760938 64534636 825627798 48008978 171475186 482818506 706963483 179367276 629143781 817435945 960071913 337460917 424991300 610703437 892820931 150484506 153746051 309283900 875806292 965189509 981872963 946564683 992467585 457926672 754603453 719813669 954290435 26356261 71791420 419514647 580303263 358977997 862558718 357790838 380848519 239674589 887324547 845037155 991140604 285557060 521392291 633146220 654056476 253217849 578853989 859390867 933110114 885323400 968899438 366617230 943983784 425309324 783310239 192737093 827079311 102359570 874396572 632818141 849391790 657824074 967233469 910496737 942823215 546420376 739559669 49103966 469437603 395521693 469758269 601011473 728242606 826625976 996808908 1033776 637270004 565331478 778783643 615424409 948281287 673990026 878200507 823746979 899069507 513412276 630407587 367797252 708387442 417078683 674529980 737600590 870785484 721748507 911840243 386059030 841724029 876691327 921910490 619984457 984504875 190679565 901450878 17783632 277080964 952714902 957858238 636478201 978448951 960989937 991038369 182128326 701914812 771519406 934911303 962783354 974734327 246044677 563687315 283931543 745969088 606985758 665007824 701041315 847143463 963257156 983753229 813236440 837167452 494851303 976004574 3937956 60167520 424461741 461923366 167005516 695148869 324811183 444226958 242824029 406947598 103700839 380815091 230529 488727407 124550689 697256772 213554668 865817071 990716739 997284800 513455627 623107170 614822624 641598895 538784855 762879448 751363983 983925517 287761181 695204861 279232650 937580814 88708284 660083081 8593913 30434701 950607805 998774198 155656024 950310400 59001575 915037619 34483805 265304011 269360707 783579039 194661014 443834515 441302936 897323792 492836846 989910572 96913809 844785659 590716698 977785728 927121789 991228686 982914945 997279723 884567345 935565084 677998518 903341600 415765796 680116142 568654290 876843843 151998431 207920581 977354874 988352645 361306433 517330936 369475839 895960707 568091892 927013866 125536730 322360912 172690883 215404508 635137174 739287533 633790269 823880456 881827733 966770457 598833898 724148630 668741910 837411489 276605988 771989982 676928834 973199573 772395905 920398431 836758162 935928844 510466408 724380006 396141847 701934644 778979927 788671412 217379956 725414390 292042351 609113448 382108178 574272475 371322558 593836393 530527672 633311423 553947087 776140439 478761654 922422963 871819520 983207677 715976316 721412205 845439343 930857591 859894156 937145021 303749430 905414411 891673388 896751118 819620492 829586076 760070506 898331978 531329265 912800900 887718870 915687291 107085360 707789370 473358181 772806412 929852255 989957050 55177589 874740909 793727235 881447774 989816628 992777971 633154000 872282577 631342596 708529366 984883981 992304769 355241204 394964729 132368359 257260813 880586882 896760933 810350411 928375641 570782412 688553269 277858582 424334999 300957847 954161871 932735364 936110837 186172084 479161976 648546331 944585628 841837760 952439822 12808044 553952214 534257503 730645683 985809015 989464376 272407366 758359735 351785032 387614510 556992914 773876717 265564332 515412373 60011756 932402833 791646595 898876650 322350730 429015323 553557604 598291775 884920311 995025833 317859166 578278781 544746582 991568417 614084141 622022590 49053413 420464320 766649279 989291537 106000937 591566825 471278406 637739264 695254415 955452354 488341870 938691175 215040583 518793389 559461917 642587259 950773082 978083249 105693257 620820995 403875 294629329 411654322 625538447 632736069 980063238 344054036 594468000 122547747 658018952 538378561 583635650 758371553 930278663 209250299 702538042 484584022 871425832 985253548 987179899 719183721 956639578 305243487 844254574 122848447 140508326 737139045 992824057 36485260 536893323 154087822 668292023 923225043 943369917 895616545 967002181 68949084 826726131 764333991 996331298 527701167 731056189 342385877 977819230 474460529 627567248 892472029 949509875 310847563 860218303 358172170 678453599 605816190 712041731 772273342 874807860 142205891 624146162 575307521 673582386 94241994 976844728 2955211 381291056 851284139 904222789 501186654 785788672 562955730 939585758 879841829 974652862 409257487 658940490 126509853 171623625 616833685 682128173 102972186 820629034 173417720 993475132 277529781 695991840 634674490 743003408 515448169 885961349 682959736 907651375 128127497 389649605 20233476 91261144 820633846 872721834 140139209 274021777 643531204 968824773 151692969 948552871 213313915 657416224 857974604 946446697 666441942 883975138 184011262 287608786 592204461 838154304 654131277 690318050 367253077 744383893 503196615 975031015 61240592 708605102 668162370 785752124 302084524 487151776 888883398 964912194 157542453 603738153 360824708 753943255 410465116 571856612 712427232 899796996 171907475 813257983 108388918 528536136 608889523 639701406 468982382 638190792 262953367 468064393 673784009 729308784 746457696 868402991 572372182 640165626 607551571 946872890 64685977 385584844 824328877 892055678 37795014 829987930 494237796 732812172 148193024 505659313 629484985 706593365 575469744 764033066 12792795 226756443 526930868 621766574 198554469 439451211 779478487 943964909 890084486 896063097 439409839 810857878 277078310 345349646 75680224 94295750 516999027 699442551 967732967 988860886 668315726 695400667 101196405 578890743 787831835 843365130 554573393 635282904 93769611 258218537 985302667 989794371 111080298 813951999 831509965 849932409 931769949 976810421 520794787 881198758 176585052 496903638 264462214 480294241 744872585 913746261 461986523 951131165 784820798 850462716 653059558 818011439 338802850 711632159 408400472 911568503 696695277 987915369 225651544 243004322 957373398 990077211 744742350 790979520 890498330 973931685 728974762 981532070 492412542 707758896 485212305 588505905 368909519 938681072 459115452 971847517 781649384 896118666 537024571 849373462 608155779 807867858 47089356 643080127 63814976 375041445 823537762 951376892 772910419 975603990 66198302 822855562 929909623 946607593 904554125 957576257 640844640 972530192 288976922 297080725 245652001 395915902 816602335 837231669 689577321 805650730 702125826 981003033 776885168 876831633 571175652 999283058 800890892 872481854 150056892 682785730 490173891 715110854 240069480 358199125 965250577 976608840 829635236 981263611 363025347 829788157 55181809 436354931 820952108 822972980 448976141 840767243 781026702 917835544 644794669 938110507 564978115 773834675 956968738 985791933 17227257 508108763 18914445 925481776 578039738 909813890 591152990 948332483 226031518 883146233 953277869 957629717 37425367 567374045 766019108 897428028 145952006 825001914 362620000 716420470 189820998 959099408 416013815 771451617 626101249 921545281 596987222 721219140 935193459 943634919 959173946 974518316 113445647 822439312 296831762 472666795 678463981 729974724 216736699 962569572 833820018 962464068 914224154 970048601 104123956 847919991 402785290 601613108 623127323 692024617 361379637 760381099 417623708 652739611 608507309 633438640 770047801 888546338 538112576 917219361 625475693 741371746 506318606 598392156 189012717 366676534 171177117 554854657 456027032 470416504 962455053 988829579 293269291 767776476 4929510 241969450 872547814 914194221 852024601 965025094 744342102 878253160 123442681 412249809 816597840 879359670 530780713 995031075 63406475 952159576 957494013 964567810 111301204 775771506 430937721 879126899 917034930 986313587 486563541 498197271 833940972 920638254 313433339 878240132 255057483 726860369 532990760 759632105 810250627 886453891 763440879 850418601 987857353 992068306 575916348 611148598 594438025 925300915 489533303 579902748 267467452 416379091 819864569 978804052 303102665 753432002 142079827 274990199 710419508 780051112 739147037 854501816 130987902 151863556 291536066 595333583 447076475 460227805 690892159 772340344 209057175 827942202 423663222 590864363 233151321 384639359 797911836 878936199 840565556 903933332 16762221 393859697 821144813 996984158 276101930 576985508 76122825 648310982 378283652 382975863 685055415 688974509 290715647 981205421 746913005 876106914 9081682 902232371 715360480 947714973 54222767 660277108 737398744 777081292 139878605 141448983 633202312 723631477 765347655 919498771 863484951 878722366 234558168 519105866 267563828 732822495 668615084 764783326 355885951 712308197 197816430 414907782 489003492 960014184 234008330 711553324 29642456 878770128 174912660 815610516 781829864 874528314 614619503 894900294 829798722 989620407 364524726 381232510 193135670 206679894 413945858 489468959 742902593 777900035 552793492 825209525 681624863 988944786 307544451 584501129 566233271 692811576 458330809 952069743 821694935 835843260 302949389 674306691 201760088 425558691 135658523 836624296 180680481 736901005 246211248 547593939 223895885 991969926 548892699 851395106 774141327 899496460 598921561 962128735 430949087 863365098 376368665 570430632 795474404 931324617 592789915 844048115 497188952 541325433 879776133 920700409 767124431 911184542 779290171 804369513 620634246 687866173 362473974 435240612 322509097 353216394 531310813 642515934 106140699 230911536 552925936 806470372 17719835 380121578 992015027 998382799 120112871 708258748 488611 377708782 632883311 873162113 127079426 284793326 424924058 906755331 130807566 715764948 354256840 396572705 214559563 378835726 409287208 804829699 701919880 906143804 236853592 320294149 272019484 312263248 424803609 993558631 365012235 646987609 315063956 963688386 552047620 868550116 426623684 682480201 17171402 882961635 996592899 998802978 12844303 882598588 9376289 327528964 442627672 449340159 305974718 324817484 503761671 823607777 481128405 484609920 727003039 849909325 611701794 820505165 584681933 802274909 763260148 920683883 149060718 504527090 665060218 815795455 80817084 599251174 401900521 995800594 259904024 815256368 796840782 942738264 575915653 759051852 136583553 454681093 590944640 797485369 125169186 506063866 192683059 699048972 239873528 523910280 90137948 842379618 245554418 269461086 920068294 976648773 130100887 271473001 270652122 791475255 286497713 456496279 56771041 326869443 153563658 706603964 404275069 667433117 824648944 858750990 573752600 833164812 825460598 934360227 826571598 906674156 4959401 402907872 998571787 998953890 737236666 863070144 485759571 599978482 603185238 797126388 237745064 753027358 460282572 473321083 39066907 776155977 745112341 798309852 322110388 422036491 536193899 791955100 88709093 798925237 441203746 469156050 600443029 697738794 833398610 928099734 187498612 446421753 783568568 929177241 253808964 763374702 847316161 960922433 874976052 994948703 855001958 877104439 976953263 990635218 457683150 526264541 683546568 722162449 506526063 976282766 515279891 980946375 771481717 814557509 506136298 826840264 945362042 992248252 897901901 978873416 688487838 955451353 178725292 798291379 60584462 621125970 482729486 707799377 617593004 937390303 374444387 990357911 162670544 572413150 310660986 709600817 159230047 173174426 939793400 988362147 77973615 611615734 629752239 749356944 460303379 857981024 2590575 579389840 410036859 558854568 680543059 722169567 868719716 969325010 239441046 712804868 422777578 750793077 566509252 745432280 815003610 986772549 446038546 797439185 778987921 964306157 619356093 792008213 85382455 282894014 489707687 544888800 730467612 937718660 979117098 982723678 388931097 621962955 940351101 960247671 266781729 353346310 37932455 787158795 947448341 990404440 296499785 663940506 984205066 995597059 122195832 133815095 388265721 664066299 985705010 992969608 183596170 820407097 984167116 985007853 88458383 172559901 292905858 746830407 959067828 979007763 424488638 833057424 194029940 550486199 304446132 906099760 208558314 866043738 616634281 913173477 690311874 775351675 162105147 990232966 316667214 662013650 256034558 394780343 761506651 912738328 646040551 964117443 850158754 893500116 356508800 577340960 959128984 992169810 936803261 980618875 481107 759769892 296676392 342212051 259733508 543135046 619061098 729716635 236899879 263045757 638125665 650523494 565593428 799289514 638952408 803291855 955266108 975822155 466256441 841585571 447669224 482705064 382367463 664599032 971076672 976388057 66322591 378313991 546505675 861003851 108298268 322890401 861000075 928811841 800630045 929403970 489919492 536480465 902929697 989350922 266064105 789685411 791429783 797854989 893956363 980166652 954170015 976082793 35761558 103728883 739646172 947954060 806923323 926160517 13209080 778351709 955381765 997859806 149506725 594480590 403879035 449362816 83497338 381026549 536449856 641819884 971293402 981607128 975243185 990623820 733979359 930591747 65334938 472144057 401286582 747205491 207954678 569455685 803919331 917444060 869522644 907921172 366924742 381356844 555242395 956490144 739868661 753951702 757608945 835818525 526955981 643583060 590836614 980230008 328397459 371206862 4457678 340954325 562093999 589088531 80106374 614026398 700233176 851074553 354914583 556040076 142767968 879749066 705547768 711288418 747613684 783852773 793448803 866712803 751975751 777768655 536924224 842225218 258057106 749335433 665689364 959688827 8800155 473244022 112673004 945544092 41374090 114379528 495848319 996082152 45030517 873048652 702375376 962737637 454307686 948496495 441310968 721296443 586442671 762388745 270542750 749632855 703395402 838829024 385200023 839480964 168201679 633970732 255827900 878955411 977801108 984682064 722134368 884134966 942643544 985258867 978727366 980830603 181999929 559100480 238533151 655592914 387562984 470490626 738559639 806648163 112769521 977847035 26123329 230209549 942690445 954676665 324618722 874620275 742286818 832378765 372146214 721757266 360521352 971219157 779502236 896233812 81012689 535398330 63194097 383175717 149692212 332537015 954982 812814402 593426675 639557969 381653378 725403913 669298635 702129635 54756611 590747916 515880708 671973042 881970823 975932987 905768535 985053358 722687913 823518256 525241151 792821287 513285640 890915985 99074156 574225773 718501473 771637321 279623937 715352708 431844803 775104725 923996511 967356765 409442714 976833065 346337560 754142258 836126019 948586248 32151397 338989611 530822878 788434492 727654635 883963673 391925041 747191611 792370258 920622015 602954173 611814483 55398029 784837507 87346050 320811443 894861706 991122481 427262205 963032424 275179212 461598247 115882035 251562353 154808206 404055138 829764421 953239350 97821322 599914786 710620516 896350970 220646731 461220414 290296920 982119548 693843326 880671089 254189189 360300739 257105067 642365448 913238323 963493107 894862231 959554533 826377343 942876714 84381957 799905824 293399438 606873173 612213452 817500915 220429334 402137712 944962034 979374417 551539160 760714666 86655129 971092230 836955991 930739869 63086491 533209776 531831875 550179844 32284160 108511740 606817889 815920598 163286865 317653837 392995427 623500827 962577412 980881005 69882503 687518544 882358932 933311894 189970157 987875908 600726370 877833117 555979522 843043342 151668584 573037246 792902630 929139672 222558469 544759591 870220242 893267639 627127418 782485729 250279695 885427665 975259290 995941342 32215112 446269620 835882011 931485455 348781929 762752631 24758985 451439732 353762966 800037704 107984994 687002858 320873850 534861884 615564681 847368062 433950951 807196450 246350314 989695590 46586920 530011921 346080185 874550714 102043649 195864201 821200792 889599414 488130215 493685113 394614102 816679376 446354563 713355856 232042730 975816162 873253538 957501310 250379076 930618200 733102459 889845311 554710005 890426675 280397319 780279175 431529426 511364811 673365272 821201796 410727278 482464990 834994528 993012803 862500458 884583966 832597615 983721646 269770919 602317831 367386209 637640214 561573819 996806855 315199017 565382384 807796683 871935393 251671439 414514134 538165805 790486648 840214789 970941310 590332633 806761878 377266076 379304166 173471595 321226025 88282152 213870535 501661674 973263775 509332372 546314531 916327437 979936347 493249538 871495043 46322328 925472091 952526346 996027429 278270717 595851292 745862339 991931264 47732775 358283716 438702846 750080208 211017876 763859799 679186883 836984752 85728075 714630879 795663856 926422074 328866987 748089749 884605352 907496477 560424560 835216699 648394448 733065022 255178174 282778375 423842813 473668841 300816052 968621048 798861300 887904323 972988975 974793541 364995110 686616945 270520828 548064022 976166046 981176125 367954718 929589965 288885505 602759868 209494463 399751828 363641937 792264537 189399050 312880160 929373411 938933267 124336084 301833554 503649997 784274962 785856042 843810284 894510481 939882577 834745155 973956037 384260963 992683978 232618661 804450431 593504673 682440212 306725593 355883260 935651288 951565422 488281020 962123245 350657547 467980240 46376587 582379184 822028143 995245557 552057594 607052185 706051136 973170365 843409469 924148179 105206246 799802146 786990762 867126422 434021097 927627243 218956566 521306561 362989628 715490124 437661950 809431268 656220810 720747830 562721712 822390712 437955982 482661100 329547519 643453744 27355611 967950998 622500876 913092232 317528617 916647884 483003257 949172287 207514469 853853607 164135663 769476590 125945283 851000103 909556483 949424282 844425238 946362458 878249287 941806005 77068465 562169146 277020437 941984015 250351966 412102807 387933799 716855374 573509860 577724284 747722703 856004185 493009934 740477072 171842827 650228219 527519110 877190816 261966794 953834681 24163145 276646413 503474959 824566567 832492244 851359811 633758153 993533738 799428999 988341480 678647569 686606396 364396824 768496567 538239365 897075212 900121744 994902527 224059070 859692447 844331223 983883029 817348744 914347066 497124367 522385734 237078445 297364316 325371321 452255622 867601505 898092363 329815522 594983433 431099032 669504595 384461861 552818987 185100603 322280406 394331618 802781807 88145333 652780915 331826521 753764466 388281331 448274127 879622180 971270064 682778669 870685097 66995626 389113746 579229797 723060867 423683218 480124930 332511934 462156358 739428913 832401498 354119371 875725937 294105929 665002322 456367633 584972163 708695273 909085629 416673853 910259719 143011760 873264741 92757489 257003213 820700635 973298315 794997815 874413543 689040008 763998174 278827139 401154948 200355309 314618466 694102319 746897229 749861613 957038890 675280955 990543041 430634028 676056129 127972838 413668345 586132220 886778670 577889358 611657091 315841895 918589768 877408874 927145360 352955906 841703083 621727987 797192400 212058956 801943116 723074712 839889559 916100004 922955327 719350468 885643802 944288875 995771611 762812003 900174255 662661849 779801632 607803087 918005201 369866445 529087998 252021818 813794289 869910983 928212695 468042977 899201037 759273047 805739213 27849325 615227409 716081195 884124385 568434249 762178754 680042345 804235094 530715578 968023176 306145182 825618217 214537374 864278558 567693431 991308143 254128484 950701113 602264017 873972380 599697883 755263003 542088899 657630691 688564935 855673322 329888798 588460203 699694011 875449489 31404529 376060770 97852914 124568100 269371294 976825924 787956984 928419837 765103929 870446093 766657082 941483655 635375691 979319702 626329845 667510238 466018961 892384834 80484220 591125608 359350426 400052763 738493619 879344340 367812500 726160691 47633459 186829108 701248624 869650868 278732774 892714431 765604280 780981035 459225302 761499414 186936184 942467224 470395638 854244145 254487183 484966215 747826904 936357166 984290179 996342354 987408441 995041647 245000641 885659299 363389462 440995252 15259691 304337421 159550236 352145464 689835193 926639519 98052805 831467592 111892769 203038726 148758651 153513431 662842986 949894849 585684058 771735246 943301312 950837333 912217008 916453718 27945486 606209813 167013378 400310278 531521066 710521617 991805697 994393607 952717905 980032666 46680580 782568182 993164529 998016238 566542515 891102029 526704301 896488050 838472652 884972362 119089119 575227515 344454238 822925809 758463311 986077922 950018389 951602436 922756761 940943297 605516636 634989026 354880622 648850553 373230510 455524246 14141690 245224732 151854836 459316268 994043671 996963363 141038904 224658174 992211922 992672810 856209942 892934661 278729014 794360512 553227385 757755011 544124985 629814578 333200356 693540157 482010120 731881728 344831511 809535032 27495563 55955305 349987432 600096906 421624006 551339972 93984265 640338370 669531646 814458418 742873494 778700537 646942239 791055448 507228717 769974903 437505653 843782959 437141283 996582692 115406499 976045094 365333318 987517108 282684062 795072276 316290566 839481485 107424235 937801758 223963001 971522177 525630776 786809361 321311096 554989551 698136311 795835793 756172923 958483555 460081941 553184677 123999290 992905131 397195588 430586188 112158131 126646279 174068525 629138820 849928659 853253643 409840105 484845330 164088045 350320851 227956082 261772425 972441534 987793470 608845529 710076245 922268896 970297853 787537071 832514926 475820887 822903612 46159929 351885039 918355544 942698344 758105420 992513678 684290591 989970041 85232898 610406853 462542501 497992076 70909949 312707094 232894725 683582108 711080776 922885646 936288921 972479748 897245261 953965863 972270959 989663588 940266952 986288496 602224152 631898840 153717923 641958015 550213954 634148875 270453250 811787088 900941937 960054796 658309168 944365233 664213653 852426829 134691215 250850760 870833284 931569142 467366437 866225296 470651332 655610587 979885312 990381654 956748289 991994856 409222316 513812323 595672132 892158007 902021685 965504615 762448660 876506851 103097776 390323644 840599452 893909723 876007509 891099791 856252093 891986730 197143603 711314365 896245519 900209648 311271481 924092356 653904239 835334090 841683412 977701995 526442263 648255778 387151081 646859182 412406613 459156890 131243995 841499645 964292780 976133941 106736588 391769974 84923794 311758956 309451526 839393019 165693780 221720802 194134917 531895023 930723800 994351028 973362898 989135702 909768972 985908095 902981812 961274172 249320125 638231516 140280914 984090241 604914866 840059899 93125848 168751802 882722247 990284360 678488407 685292851 249198890 613993401 164753390 397370372 135548807 567182966 845710893 927245554 8786486 171735884 195319052 845442063 532290647 994412948 799510038 891912107 28628995 666219065 263786727 998294143 813412407 870032484 394930712 940657424 578688970 985527569 563373407 615384461 371359263 600209591 92621542 234929879 374232548 956086755 16238102 896296916 786308139 864177397 708571512 839270259 428788848 809731284 105338203 484073027 834902689 866755080 472793325 604377212 759208145 948721142 385062441 715981200 465274245 996125793 785008543 809094962 217640349 933609345 857997072 924330958 567877029 570162192 262887804 605882212 255395651 303921452 477873753 918548120 256398489 940008850 359459664 752268169 749315979 951839121 667948631 776232675 702869977 888945673 458919253 728113109 308214021 444107661 586358596 931509454 309924058 880072654 144175988 715782265 57444350 183428069 908582712 909997094 98758971 245193219 818552846 982467927 101221820 970236447 481383907 726416561 651055063 750887997 864355596 930538326 848919013 942248785 572546767 899487346 797582858 990614693 836090738 855508621 748470101 987317762 697439352 864314860 282478525 847463367 924254640 961389162 18107362 183425900 904235881 945571424 493419959 861837984 323539970 890010897 108801772 774667586 978962839 996424166 917423662 925790830 214831185 502667417 782152793 981953101 439095543 699450670 738116007 962335349 145546349 971071813 278297861 299693305 734682195 756667476 751866864 775283159 185970228 663265710 114968144 816209851 120296830 565312045 941842039 971405778 875019978 945299437 907553816 979216690 327615612 734344678 983892421 987439362 208841731 869673425 793456581 866250222 338730126 722772545 629730073 639846843 480605550 525845311 536744180 898576571 615114080 865351605 591793131 874527775 772909754 983268789 584424605 728890955 727700220 889705080 333825174 814723414 853913796 966740037 64433838 238929398 586358195 908812865 487090388 681403796 107575587 524774334 308940484 524095262 943990171 960867053 700627069 717513999 55401004 731653916 565115342 875960876 29773081 826372500 896572360 979445853 619568505 838629054 733152259 744098721 691843441 772850486 365388828 466722102 761023302 943445598 54411643 977234771 849062122 958072988 137863024 515200546 456801763 550726560 190132557 367097907 230619294 448900411 540051141 691307676 533838907 590592782 173600406 956308163 855007211 958783325 780648034 946151164 639157569 722993441 795987472 819201198 493309215 600392114 650570724 795212618 65310440 203276269 712842368 771350737 561999821 598629691 481168293 974478327 169679778 523178577 125808128 556540120 284149018 957606209 542412606 896575113 883826483 991341755 879886275 900783825 671853788 850463084 234823686 466329076 313125823 947986217 149083038 382887078 505062964 626799368 907264179 958978119 708247378 729283088 317556660 401474405 243305160 479040216 742327697 828087167 556654822 835032200 339465708 559020648 53854352 898507643 503761888 895908198 203423653 716102199 156403600 202353854 116087174 973047771 388887538 709656068 718540707 747419170 195158757 655202153 80125131 709117878 943107943 984796416 876475205 940951991 417564650 579875314 563547955 635856027 703824864 906647249 943511923 955378053 178766920 962531060 903552365 931381889 639636950 865277698 865714570 996987893 237983664 670821092 253625286 757786909 866620751 966522770 33982311 782085310 45625167 106936763 872343397 972085255 142305818 800657570 916749769 945080405 934175787 949227236 223590474 941796342 649999877 769574895 22525956 306958059 754956596 942280976 755868512 888587610 973775092 973856515 668181333 805527600 265669519 961459244 932226250 975846221 103500799 376242470 885975342 924927336 475671859 556863507 114569445 532421359 766933256 905214961 958945307 995875057 440128829 441515764 414356142 630092372 175302236 516909447 917111600 931979582 805584750 839532073 171176416 319521947 153461647 160504764 193803218 208269942 671703599 940375613 111657357 276858653 251556553 463404964 785729872 988754759 887564328 975676255 809028042 981127453 467142707 853904680 152845839 509946258 495318659 589138347 361774159 470706790 577135826 579691753 852365622 985684682 229224276 327318777 175251516 224398561 73791103 915242163 520260156 552053820 820061982 965155825 839158732 940404574 495656697 832291156 532666368 796931953 94279166 238667130 956967852 962312125 443717127 823608502 893342899 914056662 152541965 331312314 154095445 456795718 875445902 981123482 688368403 898210624 523698906 880406616 283765463 360716849 622711672 789376372 905415938 992950456 352410924 426914254 13610527 70519960 998977687 999216640 75962994 501567110 262023179 417760275 289497520 377352662 426668108 576042453 59935175 347907882 803208929 919747537 295953532 405188526 787135220 992501176 150394266 972940265 877963534 907129290 327890162 663041709 432177426 698870895 439496612 440335330 810652611 873584393 857248750 873828530 443794178 730689027 158450711 432586616 436827267 687742710 856874522 872990474 361891712 704280963 4987385 802884617 222276146 241896076 282427249 758469904 742277285 921088367 607215873 845771300 536985610 554792625 964122777 982696680 899959140 942322606 702833627 902777523 874230475 965475457 240371373 282761316 362351765 637502578 508228965 545440852 340112793 784662613 598988575 599551194 760565895 959277090 204852499 881046219 412682946 787609595 856958414 930753919 9989824 122715227 164543578 622234458 54114740 265892955 846713267 989559963 894225125 902574752 899272629 954455992 959971497 972741638 142852545 313158525 276561995 743531613 641927996 650025216 82634708 990986740 662806231 832841390 269026787 638962440 545309888 644596102 894679808 962012703 260944851 290428962 230145531 680899940 159819378 587879378 340077037 691276381 964657119 983560600 397435548 472392828 231072412 379679926 637134356 866746488 28536735 529841022 295111525 574087194 122894848 123300273 702672530 819628685 425329628 480600288 782884984 822171304 307312893 392146447 332461124 559040341 944650581 957155272 897388214 959200732 688182778 974074352 513637427 577603606 620955928 906978956 293074186 760380086 886769159 938699608 446441461 730626740 405894619 749505359 918484476 979403679 822800107 823646384 639401465 881619600 331304493 412513185 953591848 971714123 723875708 835364156 284979142 580303096 961372499 977002242 556874300 620007760 248823764 251481823 7081648 101470709 288718794 490343794 41706288 822712042 427511579 501568471 646360163 994926705 544176694 629657707 705269925 762692250 79021971 140738835 549327675 654808871 306575953 957332381 29639126 119467599 658334987 747670699 782337710 916892426 637850625 970116362 730282648 769815555 410159908 474802188 36348579 57129602 139184973 575338527 305341300 604245834 290587194 797939099 870674029 954026706 760547164 979611973 311778697 497958591 678677697 973330523 915059585 931950529 806262566 843317450 403674187 935969180 868637502 881331818 949373688 973014287 349838782 944694740 395283674 412412972 133434166 218136956 552869465 586385025 540453447 622230071 671093444 815674897 149263760 335884562 604429900 891302491 479537651 501633351 202088920 970196156 330864683 401387186 361863377 650924440 720184659 842152856 828184411 868625839 837047790 974290496 125446274 191099519 59949888 970583709 136330073 157062513 376413774 872851841 919193553 945046689 853232174 892735326 289183303 524334982 921567933 995327601 604768477 655876584 967474458 988821732 704358748 712545973 654149070 781715743 542593378 649712564 428678699 737547058 854007823 953740921 208827294 882334180 305410409 371568149 838521688 852326941 65523310 698570271 260973674 587776653 634306260 706775570 918378839 966346050 625959693 784873736 114995087 488386885 511808629 771812160 323866202 698393031 517426709 932598860 456049177 965794703 963697380 966269110 168831916 702268869 247236715 942156743 774658731 868917952 62863625 507122307 151024943 703589830 29653025 152078117 491556092 822712098 196030086 517673490 787702129 986772636 301774571 477771339 250239455 872848053 814892476 936781741 318672185 536638788 818435207 963874843 97053228 128018679 773989353 950477033 296874907 685981759 400969172 945610436 217963548 246736497 654178218 665908247 269974988 436028563 675087517 940028201 356735520 977725029 497408906 963714821 529884396 694982642 915448179 986343846 288273626 568483768 411077964 644034874 489556998 563932470 343807960 903793569 400638170 930576504 50449357 947566024 824222199 925480750 156067447 455565167 890068177 930258380 559223293 612181944 620722016 826649368 424329352 440691680 149733717 185250157 2670370 741680232 22062602 414760509 302194383 867393364 114314861 421617722 248165381 292778010 816083624 982552354 518526349 656158639 556923442 714501519 581606741 799536262 281878263 905417765 572028991 965757797 218963127 701776866 603953864 701017399 33096563 657700270 651086016 707015524 559396129 936018914 47623705 595557188 539560103 776985032 465027567 953021862 974105035 979720071 626106397 748421436 47523040 663228831 70765068 219206279 325872326 642066593 573771488 772990790 48190636 917547861 248135225 296602248 683020256 710629563 131589160 256074083 211704326 806023287 526610137 587542386 451585684 934812022 426013790 759913190 491444628 963975849 212252762 420305919 59211633 735881987 558112661 703896221 770232585 814119219 826508994 898835016 792962283 902967676 227230299 361821656 453987128 709137642 2198663 959453095 964103720 988034185 143991937 288042720 278045563 421473772 735906385 988369043 66552916 222246671 302973303 608371190 518790764 790495388 487850348 639155788 166740585 438685223 62974491 558528756 216419157 615601631 100860292 369299585 955261802 976442709 652340332 706543286 992458052 995795542 861183970 901129339 847601344 857116180 409271290 717162812 497346864 831424274 879048692 956705176 624901925 782577610 89141665 220753071 611973343 778276502 931738421 991351398 930647355 998617896 379737616 637563536 914277873 940008760 211537716 566231363 36592235 390628158 26820072 471797141 213100158 287558968 314869388 896101395 114663478 295718886 346500412 398939832 315000725 518839962 455876586 592566575 497602294 522438723 346028037 787949731 674713978 691696826 177413424 377785082 473647428 766968981 9016676 708476933 660299790 873887709 31865725 817296719 346515584 766394676 145925247 159161681 287688275 719342956 266492471 995022651 400521559 754723963 170028486 462676760 624912893 677926094 489777021 843782278 194275930 280715214 113178236 337162288 413530603 527609281 449220555 952330452 233159631 871119124 431183608 508429864 787947379 881839512 741271478 812207802 647747912 877381839 330822361 497489632 711770139 714401218 936946478 973120012 454423963 935011854 12468236 139614101 51415185 878221748 654155681 978285054 93364073 857434144 159747888 504409651 391331340 648414803 121214828 313217803 468266296 677435943 435952768 918264999 461883220 750503941 38330116 225585554 33279001 282808367 495175962 745786577 595896066 776001547 980267341 986518818 472434340 529754343 833347996 906222259 415231761 448735389 22239567 38859201 973445356 992043258 109251643 408161645 105099527 600334239 366394471 850079839 253385667 824160948 441194040 795300718 729160383 768212304 425543613 547902057 83064743 299466916 337407171 439962100 35818218 850424116 866701610 963105387 707639617 822015021 379797160 694730918 891630098 970631101 245714901 432885035 408923209 825406474 659078321 729690822 308971003 491083465 557849460 845155181 216652700 823089167 952038117 964471006 201352287 637373736 339838128 611157357 630876162 944651643 731615385 753572292 643601128 657074210 994651827 999248602 930422492 953198708 521576008 522271235 208904791 836189655 673723030 947181604 793246348 930969136 933130646 981603338 186297867 799661609 656937393 927260800 432024266 715348915 447950074 826504199 21889313 859824620 312141707 773052422 979965620 995052103 923576948 980733789 854064870 870117196 936709691 945349041 147744572 505439472 606592182 761099526 709387749 938225350 888407876 939463623 559306863 666348699 456632188 655272447 880715666 891613938 595167954 836874133 40489476 292756613 256087715 991220960 990949338 994228921 415933460 675461504 684287343 758326957 398658874 967384833 734038963 765604969 68837368 887725803 377931999 569282486 284711114 340606782 977963958 996586212 144131056 859545326 181557355 494066453 467966669 628912124 675423001 781597529 914639416 932714980 34228923 104623124 135916232 295096762 997984527 998517170 991381180 991462671 145234434 703720413 973508548 982609686 413665753 707375402 245927412 912013627 875154849 911923547 670034509 904877960 327685923 952768082 45706058 901213807 855781157 985766615 153333086 856991902 118683874 219090738 186753780 514618017 911729105 914655906 331015013 494554129 357269640 613702082 155406092 507904009 228185093 653192822 537298865 907048098 510124788 872083939 534317502 932105983 11078419 236212828 799363949 827097794 230003034 527295848 515186352 727124331 911113355 919880656 874698448 997120662 726721632 810123730 270045917 948281906 874379145 983572972 402204870 471077560 964592593 985150779 875001073 991928442 253287970 915545361 143828828 607500421 521614298 824496935 981503909 990227224 117685841 372221818 79845234 346254946 827970316 838260164 309695695 708756464 980764866 990235457 89508545 127332198 986526428 989922719 315973820 802351495 156663446 352704180 319136366 534191462 555545383 935693922 927633246 943325523 277287563 977972282 228263512 936738489 479280263 687099073 977039593 989763787 799375883 937518694 730098977 797456885 843636770 905187127 520107305 525859908 441599782 740621893 440732316 883214560 883168992 893660159 528265521 819414354 44476731 635337712 749469648 894280367 690907746 921014615 227767425 340431973 46698060 305180131 794275886 898565399 477514032 624542905 967611605 992518203 84763014 989059192 987997680 996986862 426263610 727966387 453089711 696375532 304923500 714042528 5172616 289519398 144630293 980977585 325895527 880721180 809495656 950799032 511032039 976527235 371634463 377956515 467701297 838268875 321197866 727872798 643420395 922737987 360941239 485269244 143924248 245261063 25138448 868031165 816419393 876049737 384928220 550712820 748522759 947475751 683460346 917336771 993448772 994886934 225535429 307571236 859975156 919983262 654281628 664672412 223234054 388433398 374583913 519281284 225001678 296599841 876807665 923046473 495372201 745985857 631202316 845118453 418037756 656852803 362278741 646259782 301739834 500789011 812797670 913935816 392289555 707316861 949171816 988380014 264051461 608120915 261222481 397047848 794761754 909413954 303438080 517771952 751984773 833416578 322118196 608256634 986234553 999254331 240930780 943413304 413663058 914052255 861255831 966805723 329694154 392898090 368618231 925267890 382749047 719752495 523535216 709804448 133339 743927630 487362347 543659853 166448585 519328025 634081808 771563753 203842810 374971631 891025322 991452950 534186571 722452458 624426248 815575658 933825049 979370301 738812702 793290341 688290488 755266345 823868239 970322317 735090794 801571554 564850990 749563182 134873860 945018591 912163521 932681341 949753236 967983265 245207868 619129546 639128292 883800724 809244550 864956915 691290758 912916451 401326381 678536096 479922015 757946808 526067240 616362184 409218838 836409886 300473907 734732629 165922575 366645753 334102623 437894818 283937952 764048608 846262790 990511836 361624060 443789544 438618890 496800883 467174898 771355184 478224651 687453169 165627867 904490556 63042361 152025588 952085553 986728053 287074340 346137248 475965240 955169821 960982679 988304829 18195667 510109246 376933950 847811654 982330772 991814680 958460598 959946876 734108795 823761465 77921527 170637068 144578560 348991412 578295369 866325406 649604387 786579407 22126539 879132643 265123140 656391369 471061193 972611256 177749253 950865150 530150070 940667419 914385528 975262453 579072446 829488811 285312453 837887228 550322633 964897726 233785269 588006908 477171914 746571625 990480445 995036476 735171800 879182530 165711223 945216065 625786487 778131621 773930802 810268331 918089830 925410516 369100839 882516866 839775423 880811220 115679137 578619622 495636926 721355469 786014496 964084816 28175043 897497847 999020911 999287871 552832359 765554301 361605771 992978486 696796658 834203174 235026443 546098373 493982719 679019944 247160623 708796108 27928906 469189274 122512006 723053166 118467161 315867446 349828838 485802109 750290338 971128038 26113846 253345128 825570536 870727320 690949408 696342680 655915297 906334317 837989696 992354051 575677452 939980205 408184367 865614147 374610296 598210153 854354953 966274987 472714391 927892409 565662493 636540102 7255405 870461218 537320733 722956913 531456323 681993758 149798941 491365465 574892436 802970709 292559298 833400754 144824069 577446910 638540418 874183499 295168069 652769512 565527176 805426888 209144099 749009277 850086939 896182945 53839456 210356232 55829600 796209074 856229108 863170315 50234480 891991895 187259884 458781427 730723696 756515999 134827519 717184351 343533469 722979992 7291509 805833307 320063037 357254832 692451635 953080532 178304014 736098968 48819151 150729465 443734191 870466895 279932002 788429464 488611481 646799596 733770260 943248652 524337277 920536781 603601464 688686318 130027064 612050455 133676393 477647780 506964754 705134350 729555141 916198118 68949657 977548967 903781368 956691213 913850374 933971153 430783025 861921246 552337581 745134638 463757421 746842197 804668587 915535027 734768887 938283645 196010328 977479888 591583665 657056356 345669838 403710987 674392287 978205153 682816286 920727083 948580437 951226774 305814374 405978564 662904009 680923798 674061898 996588298 126814549 463224871 808222311 924042394 74965506 654454723 614977824 938102931 307072916 352201917 636908937 912483055 134440137 405076632 186874360 685719522 682063494 916403221 422980619 865460027 954493599 992823664 851586245 998585657 539186229 808773166 519862157 531805840 684862489 864561459 614954907 656968959 546908465 897726142 527145925 723871570 241080789 252698259 708523633 839314013 614394585 704325513 794138509 993613616 406209076 441518038 310146800 786470137 634555159 715985873 318685327 402828614 324238248 752158612 267875886 528637668 138717212 789674709 983766896 987630816 209541880 859327222 990418427 998721261 805971134 855364611 687994028 846811242 308735133 341100555 912539819 919217956 255895909 266882146 154826349 399182451 80973661 644261298 280653477 590704434 615465175 641510759 791673137 948408033 737882252 882340419 694300974 750005803 554019132 592487299 17313559 93082475 974817970 992205702 953895170 990225922 850881743 899973577 723776302 943083016 974739217 990552609 342951589 397919474 879895725 959728835 377629418 490591758 790611947 892713144 759052010 770185070 11495925 365498833 562029158 728505450 803883250 921898703 85269596 167071700 69637656 119371431 645271917 864022157 147686214 781907941 181782141 446321637 166909324 700290204 76252310 824339123 642776646 782757415 781132950 887105789 311624460 954190082 977493309 993876522 4354128 119192780 110599225 764449737 775997891 787993108 17713118 451152555 800939788 888298358 9409712 729064969 841503416 875498088 748378537 820439056 135692180 668967164 532017066 831663490 785768353 844958431 690922502 768397959 480304694 787721202 590879243 747008309 680655354 682691171 137039288 443554035 281949004 992271150 77467602 895187732 233723381 977250684 427657465 971028417 490433413 757775764 428420023 432071165 529483487 976274591 235159852 705702649 193158733 622014918 535416557 574840231 128576232 585180851 141208150 795439569 756197181 944247198 761850886 779525809 550897193 805302813 305647504 970962043 430408054 675156881 599755567 814443150 915289728 934501830 97224420 106851517 711775334 933778365 819765276 963345684 787031417 913718156 69286058 413726529 544894445 989546111 811804131 864248228 924816959 929740540 414068291 452036678 613549353 776183866 449456542 711687888 693101703 813238835 652405 348817732 26954032 199735000 604280450 726114804 428969269 497426043 154224647 607809855 728590549 774047671 740916030 803980782 354300326 894112868 373217965 912151206 62846028 851553103 9893973 412567498 441751519 482526296 296619602 397709878 542472449 979380299 459570187 623766424 653789607 884290473 742083932 897107831 115627041 145847501 802953379 878297370 81310301 510938993 872074616 976164813 432795456 900252513 503781937 578600436 279595647 413977663 928881722 974716917 946471539 980341177 936943686 953583022 336840744 558725373 914624904 948972509 919791824 925880705 902309808 961984722 42466598 176343275 588829374 656503213 773003957 899923712 76953423 487820340 914887727 994215058 552106535 598082894 996126711 996403743 65301697 416758847 118307908 286771951 131892994 183402482 860941062 965042081 438829266 988841333 579502578 640237669 52569119 244061555 826990585 926297965 491977317 768375512 711762761 908814757 502434211 698098798 400040345 567968889 968270729 985387546 50746588 689016512 314412253 410797536 736568358 850391914 190952654 951215358 459964360 534148089 47709386 306120821 404596857 861466384 985827055 986962498 327073117 383335065 935288820 979137109 232702131 665479317 38924042 322589479 597658680 961651393 374432515 490889398 259418554 614396924 945777093 959101217 279687034 568472145 62705031 640366614 174600092 938457480 425899613 906406285 786198548 873473136 424154858 881621247 81267122 944320101 138097042 224207802 683173666 711292682 92336009 723561765 60564736 443450117 921352982 937101745 119287563 627011534 693534167 909505917 636556478 950260801 459348441 739787462 379873200 499761881 565225361 680909461 15769733 162960584 994425802 996265349 657496983 823352282 691134813 767362088 704847161 766355559 715844381 998328805 938950226 950005535 241838982 731557423 447495244 990723634 477454914 832504961 786090295 854016686 968817874 997477139 854583709 970512538 238782710 918292812 494309645 566844833 449180905 768184343 655569008 931589193 212705082 945255028 882317133 950473845 393600038 645274549 351935495 932592569 586433509 733686019 309022351 556009516 59437068 994820678 975287264 988036396 533801122 564014139 97411306 967497774 360137363 421696763 300678266 593207967 664062285 888634586 192431201 843159987 216631434 986979505 659684200 820800303 976917234 999145324 623270706 724706742 660694579 703175950 684202916 823482702 37194580 268082130 433972227 688419663 582856152 663399446 560404053 794921754 87726238 253639582 482472630 822247666 436868408 807424521 791892895 865351089 338060402 904251246 679988175 713623723 456010991 795281258 31860135 854304939 165968970 782802132 868199077 905709765 438120570 611307059 516233850 864945368 790740344 936779659 840073999 908677386 850205263 916708438 468704615 889316041 807582673 861952721 98358230 819503451 76571143 112239241 767533932 916171771 87321688 567161826 529931904 651934419 410877691 957956849 658140021 730166164 525054022 679941136 8449815 239357954 89615273 570524424 274405159 607414290 799572560 845122808 6416115 901342213 19468860 358312346 213424673 868726888 835319344 951687681 742808800 995421276 82388037 814975003 896124124 982085826 300432222 659283745 947755407 952466188 51009294 256838149 724599775 775245850 127483324 639769716 247358478 822317089 573002603 588805424 144275741 917557414 995009667 997618473 392891911 904011194 304113918 627147323 621806993 870304134 229835474 840512945 242213410 556591416 223857727 396079920 189431868 428197365 70432625 867147172 978417411 988808794 746539332 761791702 215643563 230360695 575115243 914128400 213149356 677143809 876481552 918693095 453146261 526413137 674225048 698191460 720052358 725583527 481719684 568498126 235207694 285244886 284257852 911429163 488563033 557371029 237975407 422874959 652599372 662708938 559736452 560811326 284937172 321668022 172274993 827174808 38621617 769021479 256074665 264179982 301541787 527556807 275691609 442111434 385993587 403346445 767062399 953185856 606170531 963832954 788846222 957313075 267639566 527847624 311711655 523935190 540123999 881214783 444198841 914305617 902120852 998189833 817989987 951601272 559128103 827425091 855847050 865635914 167550007 938749909 827568854 971967333 272989363 299456170 352494912 784562077 239049707 533801098 191540594 975134879 101142915 116336460 608447062 636893359 209067692 869126036 269437285 311592331 446349761 606160864 607906771 814567751 916455724 972632703 949433490 982551303 765162272 994605758 493091253 547959229 235224776 592413593 333003673 661576010 596533764 780059379 955166107 991853368 57865172 810898144 725407880 818643532 765120079 980519726 559336192 665135095 667609095 981919128 631707634 741354378 120053857 526057239 354354716 611030072 706154176 779009309 218345946 483957637 690966510 810491410 501959232 632598503 673293917 736727104 927324939 952502894 262496232 989340044 225282989 342148627 942585497 943223943 834837211 953074986 680968082 994183266 281914576 470330007 427837105 902588292 888699427 979245112 691671739 693208367 418300296 502767907 52030082 536459089 81743404 569685806 966207896 992238846 75843184 98980757 839606208 863856994 737583369 843310193 627478461 779375430 492177182 548999068 71873914 944290438 708158647 839649411 360973399 518480136 282586043 917005564 173419846 519517862 528162582 642682186 288466149 448640366 22848463 598971685 816513601 964719614 48048902 986244897 537159198 945205304 561248765 668511829 646972828 789418208 392378504 889538944 173050923 651361174 343826719 750210353 467197392 547469188 272989368 799462208 220441322 958214375 319420691 901223909 976556647 984028677 461672428 804843699 504077003 846427406 712976801 817334223 354803276 439736513 20839231 671385167 584660007 626765089 60120342 606520031 366641135 654695318 886740787 960635602 787040803 918533799 615011802 781261901 504035989 682642910 260203709 409955371 17979996 249766273 447299887 863815398 630631318 825868916 297219889 933613754 62943643 400998521 149793028 641699125 378651348 850714629 601109977 913197084 735575011 912929406 510648076 529098265 721731970 978686836 274599621 478673195 778727799 960937739 113677186 905239242 361427908 683055455 562371305 678280813 74378077 874388511 82484932 891992581 943183791 975171500 921173536 941607048 301638619 679128997 265664767 588892106 870437404 974735772 671731526 887112541 714149051 963751759 596536307 998907614 177776052 341416569 445292561 823412153 912110882 942367402 544128203 939484880 950666605 993810175 363265608 971207338 575790055 959027350 65609919 749688429 66069923 935069292 80884559 307056014 986250711 997566744 992313682 993607402 873237083 891808768 15077482 616347411 312803590 440760351 221125880 478849402 904929531 952497098 979286708 981456514 374077352 404783616 444010339 603804073 287728040 951392891 144418791 150970851 3594677 534627080 612056957 625697098 937237581 968526520 186651317 369797019 524012173 614469410 93980003 495568668 829265731 890807627 615597618 875021675 646927651 895537729 187395816 395710333 4530057 335757063 156046899 811598318 122875893 707696813 365288878 656062922 813659740 831825172 824252446 877617646 107167222 926248351 855335916 947777619 269297172 422943618 217064157 375771013 448069938 914010068 220869578 931262757 246990784 728093616 343846696 698238278 182303613 616228195 125720116 945282853 441738642 809657683 594320263 792593603 481672173 930125392 154093057 814395944 749384721 893359727 471372922 947298859 428445559 726207558 841200372 940640557 484260763 533020588 834946691 861276231 365474469 846827180 560453783 850104877 322100509 959199883 466787205 878280675 373422168 637695484 497603322 831056776 48218907 669994218 590445085 859290698 907262978 921300498 341904616 972546963 493479077 687863996 21587910 569399753 195641023 984979671 808750184 952801044 922572961 934220638 681406928 820503510 91665923 924700620 966247211 981255586 329731055 688205780 950156872 950848763 657032275 924231320 479540587 616398274 343554410 392247362 319549689 455875502 118810485 705482716 717284527 839389200 713411587 802383230 876592916 936954542 672532292 699660993 854596398 907061531 585402219 715443828 286262979 495963312 814918577 916013789 630516870 700165451 157166638 188617237 908874392 927565507 80506784 759123868 365210819 654611744 546955135 680672787 259411801 983802395 456575856 479401326 85564963 125763102 235746508 340997770 149928694 366185265 892469682 964144524 725954368 778853429 993240655 995295752 187083382 283172260 551534989 981446636 266667949 981395911 996262664 999049027 774200984 813875073 46379817 991304822 519936320 664083845 418271611 833082388 781706714 892897032 714647484 969780956 94381027 969683193 396596877 879898967 734383066 974579579 826406429 956008412 207515269 716225851 317252308 324621704 431176533 511977355 40764683 207109841 722504647 775013527 846775275 953078694 447947490 967631461 222937319 570283962 936350893 969003867 338938443 571219532 391983733 866501034 88677144 283249452 701048493 949022150 308485823 334510131 105920634 409886549 417540264 419738069 206409778 598204734 710846850 894356691 365606705 488331535 792713576 940040874 679095024 738105936 470939691 938074350 828921002 968844364 946674826 978131388 309216652 726355136 85975720 627660083 869967306 941895206 11382102 563825761 331310355 369567628 30036038 334724459 505309233 631642006 84059462 207529774 183957301 786765716 838555625 880994862 260978935 294270542 896205339 975145767 107187923 396379492 458096934 935740834 299845814 912043558 757111628 897759602 774434364 955797362 633063862 670979505 288702612 430474253 890608616 905104072 213480524 605887653 947429838 953452536 375450992 663007153 93558029 180574901 839755180 985718195 489411065 573729239 911082926 981630762 939768641 973364060 20558453 218420293 427180190 719985962 167609360 821719470 959783948 979405617 767976411 815077775 983756264 995445364 65648468 126106401 198071007 414165593 93340867 567051780 182660419 580369530 96732681 309691336 473154952 776455884 266984327 435045485 685890804 796444753 899414285 953117695 879448326 997060579 302370725 940506397 714831086 821255248 315322318 360111378 46521140 56675734 922745809 977001813 998994396 999071938 370153454 435287668 987304213 998458214 990585860 997204064 574911954 699684294 29463218 984312425 818749217 825491684 8375138 672770787 195991852 711242175 196494945 302607393 970234383 986470038 698183008 913702299 40992799 749358701 767625485 989581237 516588501 812922640 560399195 722239933 345457114 605191028 255399483 463968996 519050176 705834374 9865052 990387045 726369653 883360716 546233929 747676003 685712797 804788667 362901148 570264717 536943931 538808749 500744066 909213362 987875991 988765611 723336859 763102420 437345187 556945789 826557851 885407110 298544895 538896749 587800445 698133027 722725832 731767186 180887509 265940798 901168274 991427432 606526789 671523091 539495204 647247953 8087799 965258067 34484461 598919181 14011324 674220784 371398032 546602450 861588125 973138582 872167149 905663732 719285421 793657795 878791642 954070523 715775139 997915842 241156183 414305339 676487696 708625176 482252393 915245795 11428328 593402465 128410250 614326708 998567461 998754145 218428019 549044620 555412078 852254837 895378542 990471007 825122909 947024085 35649490 458327001 87074195 916354305 573429059 834787722 166508975 738056532 294375058 673093807 503046510 523732412 986686989 993735373 694613494 822598904 937469264 958697762 492555254 904109608 16397392 394658127 101025825 861270923 149631914 280511488 753959789 871692121 502587639 732151600 903086252 960103654 176511572 932502171 718417912 911825023 291543225 963487127 781017585 860977426 515656832 703321716 245490227 340054340 459675120 647577793 873406112 986525868 379437260 550623210 408255840 727703579 13349012 766850439 451149516 710922597 778523749 802486611 936876640 938846859 866924761 994517372 960491503 989207589 391942858 458430214 458725015 590456367 956333823 972938692 996415027 997553271 967197950 987205910 237736130 827024768 373247152 439960827 888539768 892362447 772935808 865552841 611629005 775579808 564716546 863061612 694419554 699934077 579178488 961690821 762883199 955280026 605568970 607954007 29222829 371526269 661742944 683559270 942524122 952960457 354900314 560090737 597053517 735022071 265326193 542037278 556724121 626590330 890425562 942397217 363507096 489902539 540755720 857072488 561887874 613925598 411162230 640191676 268644890 928531664 365017594 685033839 991072591 993245956 635250879 930343770 93832584 948725379 411608533 761372017 306817022 778150921 879933924 973182362 651325125 922583722 74733788 503702927 5656269 83910734 907986698 915926525 56495073 783780079 185799998 941763972 545736257 655974345 633476023 749277082 684394522 816004645 113069481 308100224 892963060 952425946 44570355 487592687 367719357 855790252 828933194 831720452 846232116 981049372 739201025 763865272 363196723 558900779 137072354 739303848 997317042 999360958 233992632 290545297 868191106 983531669 669150923 846436911 520081949 883982474 598500111 833835224 795453793 851176874 985782432 986852353 174480821 881919071 812326636 812546953 630246017 637051887 674604457 985077386 211944849 574165194 328570110 792501788 287152122 396842317 889492471 934982719 914809408 987080600 80053791 162939805 432222696 701292945 497170884 839299906 960774845 987772846 515964285 589268512 953091025 969002352 757921 920029343 501586998 796325465 765371527 875343173 930452825 933221096 102084693 338522749 28884545 161698781 976095142 988636429 906205745 932084605 658760325 819855581 410437938 920515071 825296959 869971099 219984413 298830342 932802234 944986290 261326305 928555190 284551301 802041389 441851051 604607293 484211209 577801936 460456295 608772077 61020093 825797447 787739783 841692718 232134738 779284830 561159118 921520490 599276204 785758642 588895874 684213584 59502944 805324077 211903789 553231596 443284043 473510204 460627566 776825462 565750749 646138308 464586474 754109426 268688836 887244367 460469253 540950279 957758150 993311066 438013266 965790139 137886510 873720373 69015105 998452168 220185530 962174476 950436993 961761432 931523988 942603400 755964342 791199411 940503121 977666138 18750458 712300168 845362185 949179664 520710505 818044949 74174397 567523021 913978889 945121372 379170147 854396704 402676177 791230773 355437732 942223228 672542682 868296788 948207168 974935139 563807614 831652522 518096816 772515711 288706287 363812056 409348917 634497691 812530254 873223660 42117664 941050010 798444691 936513644 789199235 829196829 120975768 883239406 205870161 899965012 970351592 970390013 803865971 986863849 135238141 308862076 355010199 912979966 122951871 855057101 866068868 876976453 264661028 609975402 254380132 477207914 21665204 149270635 394050516 465153524 814216929 966679180 165962567 756766789 557752085 586111287 122355668 502958838 987727571 993880485 658357792 900806452 504069149 654543395 833610710 900986506 452479796 512143928 394448203 959591605 883013146 961265879 841924559 958074431 232461262 556924666 563870360 970380778 146162509 469621737 426407498 755996167 712251518 964584283 274896639 621638130 185922259 925426445 595246796 884107509 218816889 817375094 781916830 945031856 339370948 568835873 356795359 990010777 902552323 969343063 162783469 450493586 103106954 902585381 100448048 442940590 950046058 976885805 400035909 591972949 867822574 896146861 487647369 957026131 363833037 867799674 438235692 796215576 504742776 983721030 722465307 947796765 989025354 994734319 424041357 557504564 436688350 854785982 350938650 467709154 527537390 855025385 300340672 858372796 526812828 538446481 2419026 754677253 571713504 854605406 691488735 812199069 673371530 992649479 606487192 727476018 863145895 866031790 629220470 768772212 46477332 883847585 275427277 766501075 820921044 991252399 159231044 933016197 760525739 772689875 150154367 301151017 341024740 758278965 534341408 749004286 532710417 672061305 777450744 900520285 935370489 975258262 265019894 419664194 304323431 599958493 285467589 663163046 291968614 889453764 838717716 949472393 844814350 869106496 905445359 941554146 525898319 807297198 182169320 239842038 723324017 899763349 414600436 605437175 82519493 353843382 794896475 926613885 25875597 728564357 663338584 823022812 303482041 349343889 412635947 496084364 860622876 987582825 789084673 904691043 619462676 941693214 312948174 393504244 860038006 881053427 301386848 305722370 872667181 968751600 845391564 903282494 519457891 849621428 478271213 624806867 579254065 733341690 755149384 768419149 987996847 995107558 406374759 486627891 350809065 951992891 783495634 984094366 594445573 735984945 346688441 777164193 157942852 768106816 179330985 240182449 218704045 964638916 101711288 596071074 877061667 986343057 831565802 852740078 774396085 899682781 667647546 673070951 141788044 733486160 518453863 570332369 742018288 834694820 942124035 983218488 17108051 115434915 488559327 862481553 367601210 679224983 640489434 915582682 527184083 801776669 285128269 678360833 830909841 923286143 669521905 745155037 960120665 972987057 679561206 738074763 695986962 983122673 841661084 940481468 77048566 915527299 200502989 402537311 576248924 777754459 576783118 826127758 897710187 904872944 172567084 476337492 816401319 927622959 883991804 918781291 25667085 979267604 660290429 753669699 821558144 869972675 56829745 948888452 192732792 959965239 404950191 685739899 803744154 872744525 362520412 740895735 985298908 985963579 682646588 881605746 843830828 949124250 376629444 709293550 581843810 588809116 701248740 773711294 399625988 894759046 363626617 439511952 430596350 691642894 915347026 947762302 165879611 527081835 157267834 670180652 833544510 861165207 296712049 399799247 348439804 881405778 859791792 998976429 462557047 658336861 75586082 664289776 6139321 752067530 756989009 819667730 869374434 961162047 561537505 680292356 141674381 575219952 972682599 992444740 717166558 717724600 727378913 795459092 771962722 923040341 466411616 711435792 676779716 799903934 573107643 995269201 992327681 993497176 422897578 896745060 577445715 732348286 30601691 696963249 787790400 912882872 889463111 935075733 558538946 819359221 158695054 393261598 581108878 869768863 424466364 653267789 254148293 932358694 48780191 178947495 521254315 913975448 800829530 913125153 825637148 827025120 638344493 645043748 503735884 914672355 724207391 892513204 25524247 615070578 972526768 985095506 510246640 531902860 855499754 935310386 994341926 994988417 878052852 954155853 192659321 205576598 697963712 830983418 956908429 963621328 495591820 535674962 954255408 973027731 391422627 460888927 662781304 724302411 735415215 755994080 951666810 966030466 458298506 671118557 838171309 838726268 530109911 844761668 534297158 828767894 325169708 450797334 131552866 789739610 788737027 793632727 700165229 905139395 893832221 906905095 901673361 912066416 33923385 898777131 261577592 413490441 170356820 273426748 222014629 492517181 363898950 650208546 267863004 997771164 668228770 732991971 773340826 868221692 773559509 949523260 330849783 888079159 312482062 677678985 801777463 963102360 891967155 970204171 421442525 987730384 397736901 542681303 554696534 870280645 478091140 643952521 253779429 762500459 733343175 781512601 213535068 222299525 120061192 323238414 746045945 873708597 852734877 891386427 883184309 922901221 943141658 998306625 601571578 938515117 576908954 682032284 877090387 892459755 684518627 895135407 418396847 726900184 962897781 987199091 276287618 525934044 337006158 734404919 230076341 727128170 781216494 889643129 372843708 552999759 384842365 695688862 66152336 771818083 913836975 932178498 242392528 540846901 750380982 850134126 559606276 593088522 201307560 599094174 733141903 734807082 428006111 432263212 197767200 778087218 750319109 951642474 446992926 620503937 793861410 822432008 321981347 397053354 652294441 701881809 435227072 974190301 169226728 921122224 822123921 915679198 224941404 445788558 489002709 511906947 167284083 895569560 252292386 603706939 585301691 806834558 441725765 509604240 832639468 902269830 170050640 767113258 447146350 450871958 589035520 951845435 329149508 445837485 288945043 421416637 374527967 639899056 406894043 824449364 310849871 458898764 555199159 892972377 628318357 629115869 599186440 980793264 951246695 959779873 515493994 817228019 809268498 839842806 644848523 711505495 604441630 928072407 727928324 907356399 497449677 802119887 570370768 979720819 534486855 663718086 663929336 946751793 31064706 608425277 62137886 199662378 264302204 639235580 279392624 853454202 228464370 303158405 101888709 297389379 778960286 964702733 351567023 925975599 368967726 790327970 521606476 754818649 679498205 948929122 751865394 918853810 884743551 990988191 818159510 839059058 693082860 746045347 53378274 114682094 847840693 946794650 440550070 731226684 217992841 499623478 596510355 913781223 217510586 402159259 309764393 311645112 213496836 843875218 239178425 995180278 349902075 701843122 45861800 753249940 779118774 956609439 273401610 981782369 843138949 920621732 977797486 984755981 718711919 730643302 292249045 832606208 210257855 247814372 678320174 884270850 34494906 892401959 75969690 770707315 574810941 907011010 756544479 805531150 200450661 402459102 672894890 777521454 746904729 830224374 948429290 995418648 383707471 654680520 570449297 780700116 171414134 757652753 695988713 896385217 161660345 404264979 966784949 981241570 119517431 362615163 362652356 558998514 650894542 931923114 727690771 951547674 829025571 985611177 266559282 704158768 870365131 937804717 382399698 847203782 583240461 882264513 302556005 660123151 202969544 734987933 832583623 842008633 301275262 518069051 200916229 462221382 699024735 948293573 910322547 955366779 348160355 479614050 159069038 982210264 978972610 989752040 178040309 750322586 374152295 829316968 619119694 959032735 743934267 838452752 918867045 947559199 302105224 850058575 554022550 832519349 178396737 471867802 530118797 933337298 403702087 557755407 830432132 931123812 299906389 537242241 777955432 907748536 694812354 696938704 876234412 949240051 776599235 845491114 230142182 563761642 615775222 868659591 484075770 683268274 672138191 809639963 973081737 988983816 701528496 813939555 416662494 693130737 787403200 988635272 946573776 966322610 193799753 240964106 100144431 237597852 410820178 869256454 347540003 653497530 656727830 747009380 945127872 995383632 811672607 997407873 360443255 489658256 330793902 334953906 400702186 901683861 866099292 991590388 803693693 981614242 177104875 306035266 779972099 803280628 324093372 482589609 500873512 878712274 957342675 970212726 368520149 573049710 860917445 918212217 628756441 973311691 473940059 795812506 162867977 517981277 469694156 868552613 832300246 907275598 163644487 171365924 116153027 461801576 146485368 704582595 585642030 659636014 261124378 814008232 836604313 925149745 947917503 982088539 380156442 733023927 825594325 946846071 571377462 613232310 870155988 913421331 366345809 732187600 527822170 560602790 821231479 945331230 661683368 806740264 806796292 924505290 982343338 992045192 738393997 946987201 590546671 896569058 142595741 166435503 980447550 989075515 49537372 954689101 399751787 453324183 723478611 849494285 763839128 925504424 865498266 892024015 4097740 956117979 652107927 666186771 253405987 777005567 272292136 722876090 199649922 517464144 574073743 821489236 379090166 421988503 459629745 919980677 78473703 322291211 816572356 912124303 663238283 742532259 636941359 731804488 940181683 975541518 55002383 166920725 402200629 850974223 841248049 926245405 592912837 923827654 924913385 958731772 579104522 823919161 6605561 683842854 291002500 906349409 934248629 939675394 401509181 766744577 266658657 835592408 696384413 993749129 34857125 298804362 638309283 981747117 721595642 792033235 427483072 843420896 231204624 423575710 841954256 902461629 884456456 926065152 205669618 854675413 93174972 542100194 346909105 446736310 575417278 597891480 85014017 922996815 383712433 404077818 547896314 697750268 385275482 814045255 612696509 974730637 225919991 968238216 640216777 997481829 962313047 971271012 511864723 697176276 934346237 948536146 638036579 644619472 529124794 597181141 352490702 637424374 8186120 787979991 978275496 997117504 46821213 526855760 552113856 960590597 582455913 702707654 961724574 969884792 766730921 850754412 431418747 568151121 187482159 793391135 302585335 512090645 529313854 992873550 844431979 906025472 230746936 681594613 379328886 492290679 754099734 773077988 873102448 989994730 262298687 389268955 850945689 981941888 288642572 645642161 501002489 861798202 124914962 472427200 882477676 958345770 509914631 718769485 556949274 931903294 956544506 961097398 878409146 890077835 49908803 624106713 188872210 324510521 695566960 946513848 865794536 958691849 189841993 872856139 380701864 749138417 278880540 531258293 926407920 958379303 188438076 489118861 164261060 680478246 120382404 554853882 374047979 697178007 11995713 820600314 336847362 660673190 621729568 914988000 882889118 980585917 510473964 726003463 692343033 710726645 239382146 900897834 378702 918727248 3095631 580140103 676116039 762556834 426592961 992868348 384990054 536367467 612644523 805699569 660896159 851606465 635655314 963227010 247633762 526121589 999270420 999314850 808522325 845741814 856629192 877644479 195936643 916959373 617188387 895679956 940060611 991078628 753290976 766428370 875541711 977386637 312213874 852722764 510263734 567905693 997520662 998245966 194016744 503267600 809272128 967384922 971230557 995550486 474908152 728636372 740602202 877651749 509528860 832346454 474491914 842450043 306202733 418508140 533497799 611967379 248996755 440543304 68848028 462048704 838695667 923657179 694921667 842593046 67696854 658042177 491838720 531820106 730109873 779380535 690279941 914076654 112999515 585187530 644717228 933475095 885820940 927732294 148051383 956643648 331855064 682459600 92339662 723162697 556978846 988653041 385709486 525643769 94322915 891356151 7775415 376450298 615267091 634120828 483284919 950518051 132115367 559425417 25174198 340407861 4978942 774786087 750036726 785761853 867109478 887343611 264593369 862624165 852556756 878057639 903702934 996309456 679629899 832925896 253240539 894392191 717786297 746109857 89535433 195054024 634710195 772099907 284215283 520146849 95062376 334581822 236251390 313638896 893918714 993701668 775580637 778299194 200250613 914436249 610152714 999162083 121376387 201957159 951458250 993735738 261560886 371101873 13188225 438132949 287346752 537247069 320040298 721684591 927319163 962836894 161845785 494670788 608679470 757320002 354407589 439568757 499465924 972067159 959390681 971010324 151841205 797814496 494531562 840696533 452977483 616099973 5132687 518776881 342440401 475310724 572935607 941937737 248805196 995577962 844137391 892955765 440587374 583488487 356673144 756648256 678866137 687397773 463684004 535747086 82641566 753555993 583715121 996362652 870315148 999100949 319345817 662485461 651944804 704159950 850335071 951637747 239609868 790267630 900479940 940563208 807444950 846193313 342289204 819237705 371020720 448071234 46032560 774975844 78466612 341127104 578385508 641518195 345709514 993169977 451907681 639278022 322191548 690580392 794450703 866864094 411965052 613707878 488213149 696662293 917096569 924597278 822139681 996141643 987744095 988661042 297627307 936362868 880143215 918100877 522654267 596828582 919096599 977441675 48088635 656235282 690435148 875385095 727280770 736476454 674536288 707428610 866937020 939422033 761576044 988362588 273463033 690038826 942963166 958752213 684488495 857206555 57180160 369578490 554233528 869380250 64749589 337100427 288473436 907193275 881765294 894328146 550592842 800166045 478127356 781903788 884998984 908855516 537671485 897843586 325722121 762323189 593296678 635160240 255562294 291614387 943323489 952991488 887088962 937425747 978528455 998351618 721669008 834612061 397767855 925701042 162841283 661588935 52606888 884260867 778318700 857240295 630335502 864892027 418852683 627588913 252290399 533969964 729650060 735731114 917577174 955858493 20100500 408166258 682241783 816057453 89567861 421837959 123368079 824571636 632877612 807253491 255870864 407488576 956002371 965810125 869185692 904564158 28011505 627822905 93642658 507974737 757526935 801629498 214165546 650624840 740167616 765530096 145906645 639948758 191005546 295246382 916267914 922705465 492832861 551077237 90045605 303509645 330266670 888487536 440551793 815182402 682002245 987534273 518224515 593170078 124945943 738554856 244586518 399457560 70998694 159774006 248666966 408282188 481580011 778424810 478918950 630216511 908213071 954435057 517063714 971654310 302365469 914466073 562423352 805095531 523690801 670471294 702754489 891549391 98841083 827514070 103094240 639133278 605851956 819187562 450878984 585073264 492652585 856030948 901002114 909608286 76438361 770727451 564752072 649631057 752891410 912937355 21951388 478107237 604311391 937556007 823590370 836494486 328609950 868678359 461138395 522513264 329796644 532621411 610012891 905922180 175294738 483746610 703770235 914608089 234657931 992698228 892913319 902642323 858956990 930890908 898063123 998436377 338320532 712316906 744969511 995462803 676863145 830150443 953347862 998098124 442375459 962848511 457595558 756281208 474795725 682054706 870160128 968301193 325226974 621903454 432172586 512237217 579429857 891925005 361643529 568873929 139549989 687107873 770435709 836019937 43259022 85534734 163822483 386350848 455303609 526557212 620927742 797341304 627939576 744921270 498835782 952691523 292342909 446387451 247545318 561670680 658605222 838904841 336235342 588286765 55741586 714045825 216305654 657669499 569197882 833953929 649503037 840077580 219577830 863484613 339923008 380978793 779220716 966348223 69106752 730077609 923259971 967130681 664805469 759156443 876097139 942569706 930738309 969424240 768857718 795193407 267703703 407316108 620031006 923382278 653374227 927811717 938877737 970387145 450645781 459473773 42719044 320824801 207361155 248001823 604106503 841076232 896573851 962268678 316447817 457399767 569408184 985867661 400057515 541369656 118164360 547967587 664142336 904684625 807950679 946803625 652186901 745521345 598586618 656726358 881435882 904310744 886243211 939226497 262754650 680405880 526375085 778411678 460196276 909831910 302238446 481348621 214164623 263718857 749883437 917329971 384355269 395604200 723788056 929007786 628571232 881685404 444462655 633921952 775706056 832363744 947327161 972099399 141711680 688796985 955864062 996257799 385628871 403410977 195631520 634359850 668747794 936077506 404473933 562533448 778792466 890335885 993014773 996893460 581308885 620340308 488098692 862918830 25414687 56761301 346455074 635192605 650440590 764726266 646098794 845353197 700779527 973205800 32815600 46030122 625420103 648059740 906989554 966545090 194274621 333612732 971630440 991015085 44756764 987798280 420594835 887660971 389330110 512722033 778774285 976084646 693011391 969229585 477311631 737909990 644277827 992558398 975222949 983268919 540032406 572745308 867370781 917798843 939283620 953794061 357839706 648547250 100410521 114089053 359621375 936184080 346627170 451944622 589235669 604667543 922571174 951649145 130782288 789429238 402090334 891438340 963103368 982603128 48674440 96950221 3659923 348970927 669428032 851888144 392311972 912079828 241624526 644456540 588472741 910807418 528231584 709651351 449111524 874667287 888697104 906500356 338359299 604491414 800881089 827166154 705048027 747733107 656051891 840861995 29111592 702881551 978744925 986422413 517566894 557090828 385260780 403100699 983005321 992520036 565741188 661451712 749831877 893990573 73337834 378873112 8235059 641966352 712276738 787676332 980722149 984275566 912715170 941792651 614897048 718349005 256324206 741597032 972402288 999219606 774728508 842986059 403392440 638787338 971029472 988436510 597635560 873331772 29028403 814852071 283976984 477298974 77162534 731466028 454982513 871495128 663148688 799660152 751931199 899668433 618712539 812316432 158338737 774276089 618828674 619818399 150882695 548551129 188102138 331365141 447654740 781733863 125145947 406163290 252255178 391172731 771777747 868501138 416224058 450158147 769611983 932430716 422585022 921193091 991870325 996048681 461407327 808974724 369917044 674158654 450452061 803090604 880302596 882081411 873473985 995409085 424302991 489786852 15205070 617893061 596321647 662972509 681696656 826794453 100872074 192974351 422324084 955821281 723192288 783063915 772533861 935471857 537759005 866879261 410705276 759515823 661557274 888987451 85818450 282065330 970734731 974233779 693584811 945049007 785878583 912677274 643661535 675158060 479749719 601322610 335500881 517020847 93926603 923313733 775441633 906105545 980057423 997619913 389428932 777067189 276364911 381930512 257002041 815075423 842748983 955339131 904732972 986529076 461630162 916048861 130221682 360920406 676526657 894003459 639449637 863747735 202132388 345327744 699734926 746698161 775504498 893353191 515684034 661966308 477380454 774067531 105301402 435251405 371792491 557889065 805451427 887159903 757130444 761899499 661059010 784058643 262095677 554987100 872799782 995066246 70903617 320922416 199095330 527477606 749935519 784232722 720303854 873781347 135084123 561512369 669529766 677815021 241443393 555072860 387836728 413888174 847854443 896261391 651095186 680089687 513900423 752299025 682340137 803276647 28434175 490829545 910974512 980177667 543632395 795602545 515366782 791873822 940259348 984336866 661765102 803727409 373666909 758070785 431583390 678508355 241895925 420889271 627029160 762671677 519490294 529685308 448898403 607473076 73034622 712089949 522127089 965035486 858320514 861739640 459762200 845757488 286196900 947756621 661288096 686519328 874977817 958969728 308275862 347633385 763267386 799932906 521890779 740917011 911401840 965612217 97026788 600244802 644890347 698291150 50800769 101596286 455918591 789676400 957875432 972667091 645023006 771925707 815133058 867007004 834981465 897601258 733435759 768363087 725980540 816886687 613654016 895462699 403301490 634824646 457179111 852217367 340575597 761331169 157066418 438592986 541255349 707564890 452115454 479843100 726120886 867726373 811397130 934694081 446676550 834648559 535208518 791765846 480057265 491409708 394429636 687599293 53969884 861580931 901648549 903447446 995483104 998866884 290392824 303547594 95675089 300925247 774408995 930810662 254692476 996077092 986711607 995329756 497664212 506583437 386876929 445833896 427469821 483794863 406065235 494693072 989150640 997298354 47677986 543261737 645489471 827969651 702422621 732677634 421504980 488978208 874877607 894197096 428825471 527857140 778347680 928418237 467345974 740642122 518542657 923224918 106001019 721690416 308914175 873181484 120881022 806882395 490354705 827603201 237051184 643918454 924298404 972640998 849806422 978870389 380681337 535849800 253782687 603025194 221207873 654473797 354368520 768162755 844211044 854575831 107508462 735132111 218149328 961824331 248235262 348374760 494500161 876928224 532645564 684317639 763411747 795960728 487072037 844681312 519218210 561480237 603886133 839014127 584768077 670868535 686894598 940009404 277940335 332414111 878006286 986759366 280921468 865956520 870604873 919320926 675925608 700921896 113403774 144905157 506789172 522162087 965607559 993678349 676439681 734367236 413441583 718862143 643188748 847520614 149853123 223591212 751633771 830143318 397544704 638505106 523104945 854522701 317154235 671610621 167217484 614738321 781223896 799355851 624427717 718390965 330089255 912484012 287375163 480015915 220108534 747247815 414821269 570232328 453052429 927218041 471158397 593992177 301793067 914826648 119006396 696495804 285321290 986053647 410882762 796091928 675456209 905177210 943681416 995437593 9025930 910435470 108016467 772245419 463662751 645361929 804373161 913580181 583232381 998615815 75728351 517441243 696961064 742840146 219927885 729242019 445594988 893555685 195827931 540015598 540500497 762128656 851542404 854237920 85820725 394426940 311130504 835220635 767093662 862440291 640735163 776459440 379684292 778506384 298172692 969218444 683840033 809111886 481879784 724351265 871499176 933952152 79408867 177806480 522913780 665307798 622413292 960387548 606366765 858946439 772349771 900025382 305389925 660919642 493313314 927603335 439288152 579332603 730666405 895893388 926514394 942198397 674293189 743919713 376654400 940807529 899728624 936546936 415867985 761591162 852494277 940181439 328238460 717903543 489923430 754947920 802551792 950592523 923666610 944887802 398920479 750014332 554694146 561003160 541005746 933833303 359535388 777212928 935950830 999348946 885413558 920483242 435408259 833396324 803750551 980270279 602571577 912772797 70845042 362906058 781199521 915467689 153404298 946752105 197063592 495336682 66891923 825650001 217169579 829770407 92195572 415762053 753557206 937249285 327963888 648217752 143767733 967951968 401602103 883479788 775060830 837417715 716249043 951969364 792400928 930185966 192939495 541198248 636922826 911173038 235837382 661678264 576336872 840468392 541842409 677829400 250231631 577285483 993841441 998190718 113959252 408448248 970916581 983467993 814871013 888823863 755919645 830103241 190714305 759609287 637374156 783010931 956347833 996499877 953182560 967293608 779570669 909363178 775509429 777533684 637217871 850173032 252540322 364144526 419662436 554118277 175458671 377205811 337122465 810558785 621942101 837054586 275937064 917707123 258536893 783346804 103401432 123614044 261575147 385728368 746399357 750355744 347918349 444207973 10627699 504052439 330642628 943961798 722855162 795189818 317914897 446637520 965303680 985501034 9367007 852547824 13133476 843333743 644909451 831918928 544122066 816884296 199491426 501281544 630271084 657499569 488292280 496269945 932765486 944281155 4298333 75383177 58517060 154621298 969473451 988562561 272277606 440544024 13253252 847775219 292935662 998867448 400916526 817786478 345285653 446636116 101080690 785280638 630382517 638304333 952936139 976324028 418304805 481142642 262185653 422383887 726654277 833979401 103770435 860808041 723509794 871180555 765256836 814843605 773160649 894116978 733864586 777781409 746102953 999245215 603971827 905698349 361937086 570113191 266023770 978540512 510533532 977486627 110197230 809914699 292185647 576022457 917290927 984445264 527594323 590986502 102146982 804178354 973161803 986501915 7843686 52640580 321607912 609540221 650880131 930027092 389177842 534760522 43690580 450006273 132804417 357171838 587411267 795712358 129381662 653979228 931809942 966196846 917864853 922698475 54082024 609709070 827677120 937029229 202712797 373825788 468509904 498697088 276067925 787921151 566296634 785038721 609268774 640213161 446595188 911470022 222757311 367051569 706316586 877268753 135728292 367868619 765840401 977639588 198004652 264696645 669158087 829780262 26375903 947194578 133905240 278770016 408841600 446437512 790845891 926870533 502583744 820593714 241115620 492676263 400710183 868984778 855436918 951471794 849857574 867953128 890011174 961003654 725517698 867110789 425633512 673223622 21323030 613856036 677276942 702196250 570595411 604089369 316625774 812882807 931065140 980214540 837053566 992588108 844594810 923629484 767382966 788909421 154987072 534858741 374192765 832898095 912595781 934068278 27305931 956956131 75012050 208942990 569393028 633149803 711233171 909739009 922371135 987077829 239534737 780767652 685084669 705072897 819428293 836561900 209600342 986643161 810657530 887157222 670644304 942401896 770269232 857186345 118727279 694671570 664157261 753096006 644281560 664977579 921714920 958746363 927703800 958505738 900630098 948625333 81587254 647463502 960472932 973438975 450719214 600679511 252187536 265058428 485174291 775390069 699611364 881930891 84787991 580188037 106354645 610409096 371597566 857998940 309224885 515791736 418816669 914343505 561293358 968625313 819947234 879583383 298631069 567374280 984471525 997896252 402985593 863400616 333075056 669693031 343134273 811020697 900486452 930240373 813796936 962729463 504675868 553159220 245145846 536354003 651317666 726901540 649956405 998162222 628669562 664786395 187911960 311722667 524612106 614997498 898072941 991921508 460381830 689854743 774503522 831031754 640514641 871380528 790002 339342481 661550036 748490700 357305356 923219592 690043634 945957137 49609210 360513231 654400260 768671092 965459248 970587366 271361053 636620145 237066989 299870812 358338509 710428451 899857011 905080448 243223785 362417323 553420512 847070438 913598184 970901184 713866900 916049789 202727704 327868484 190787563 739494055 799501814 969416998 728028892 821194211 820891458 948383924 616689243 919590924 405151673 645648576 813834537 911536481 739426064 756633728 429667415 703341443 108050616 904532243 358590771 781865730 954677653 961910685 185068177 820947049 220846262 416124620 167539824 877926085 201666414 873900662 369153881 571655796 851567591 957963280 179777796 310834356 33280396 953621945 662135828 787919314 558632455 858292084 471748912 820780823 339638402 904636799 143094536 198459928 544970206 803805650 145235879 388196095 264516115 687825316 274853026 545330106 139249968 258589625 903721160 986326752 535471698 959885637 420070479 625405337 64341877 402949153 242436780 441352705 109096391 121787915 181982145 790808850 97207895 357586367 125444138 510899590 692606416 844862082 138068738 852974375 60955556 836676518 76876051 618480168 771184077 831338685 478142419 726220580 992016180 998815337 292765985 850815492 181228919 690512445 762249011 941668483 580264418 809585791 911867288 930298824 93650779 701459605 316775141 637373530 856724784 874123583 171240796 365907648 234801339 660296194 435997005 613494799 84416760 997556324 846014586 936726380 32194181 368430316 138845595 357669445 747504427 923037869 311670373 966899404 208357438 299680224 17768619 697446271 793233323 945997507 541003461 968334626 193569159 657123499 637294744 668796078 128149514 360473599 589305705 660539967 816345542 837274272 819163611 839775131 696170712 903589385 911236086 934608319 510257355 973023060 985765891 996502937 479896806 908557897 75915277 825980331 598118324 931428750 468561639 783910238 776967311 911697882 820623530 977446936 325080401 378557160 268451925 665143028 622211913 874198538 6305229 892390740 798272244 995427818 757577665 839793239 509456928 611950908 463124512 858393712 512994545 698593571 948853088 991379803 447295060 868263720 266505689 511850363 893400821 977234166 773109961 978307083 412714641 687096251 136353833 315439837 944063706 970156663 836855840 839743523 593363696 690547165 623405226 672850201 725864686 796991949 22243192 26435103 201453763 727731968 250175200 355447936 266424438 307796729 400501734 462088048 128186813 703987519 53650760 407031417 404872876 718684185 68060975 645111156 996951574 997501804 37105461 513722701 976753135 996257034 673110684 996557480 915280595 996814294 908395188 942136597 148895735 517139553 840254789 922472726 352128767 539230502 774791513 843135392 59237734 149755016 380673198 915603340 274629853 858560028 332250747 333157471 397248440 821518016 769691117 864299354 914370858 986402577 232958554 949680007 655852919 701659667 412141548 682874796 481745421 567031614 726648171 955749194 887681141 915645838 422508022 587063880 330329408 661725682 452276410 673252979 473764212 812411741 877808969 985246210 44555196 933936641 460946941 876251748 446577791 601230548 675020629 758682333 310666765 695354827 930204932 990591016 876395019 884280195 414264000 566629149 870538454 957308458 315235512 316137283 513581171 580317271 63263106 761880184 849052244 873488387 921922544 974708674 958296172 969760787 941119632 969791330 546311041 649179020 319144681 877922390 692860649 775992618 357895509 972285289 596103663 916635472 536040006 741349113 458512721 466115610 370132791 603769361 406763715 894778283 825402457 851477049 265856879 707387170 879826913 909013987 561524325 764902100 278521669 919104293 634086692 758386786 406597383 888398961 411113492 516110293 229249779 253542899 946628574 961283701 972023586 983507189 425782491 622335824 400103782 429448822 723574386 922954627 570880752 810127155 768319952 922734531 206352251 788813050 833994119 870832738 971213476 999289088 455495234 506108445 829171780 945365575 20412186 563172207 901960154 940827472 212499069 309346885 176286261 638593401 688253805 711735911 313959550 772034704 949428633 962076854 982624312 988774445 37549176 834317109 169823733 666006018 347486104 763816601 389819314 395088654 59228734 407900666 690418536 956962895 801984517 920084988 670125000 888886586 700411944 955191054 141741232 904379329 266363359 813758661 483795533 792653456 549767963 846247122 92923927 687700696 607658332 715456766 486958310 705758351 975710375 979932744 100199384 899799226 281941740 548467444 826761477 868879075 958336665 988078884 994633786 995671349 697336347 735419716 192889563 682833655 510980884 584891879 230192136 445597388 552635543 872097553 704457339 795490430 679828472 694578787 335530611 906760417 749328806 952653907 204803453 442932808 874616271 947432375 644266786 846583390 502389036 563665236 154594050 681641389 950492903 954859246 197693874 861097968 243228878 431486444 441248736 695486904 722814415 972673568 336483735 899295944 16812429 874759307 629989010 961451188 504584561 722128367 779419317 880194308 920969603 942675920 812534777 835197079 895589894 921623123 631751469 737769464 320341709 950397403 945738610 950861547 733661269 746884080 734066030 794666835 622281256 638578870 978322240 978847190 141932888 666342965 834534969 930407742 319339697 739495690 611705518 646251934 977558150 994643749 176466856 306985193 610221013 730780836 191793315 697664827 449906979 966332893 985325041 986556550 954750687 984614607 78864872 349671726 244501288 895456323 18005657 926569737 852658187 889877307 307199004 925155292 689777259 739472816 726468785 932758575 715493474 988796442 751641204 887694803 259470424 856272473 263481072 327321207 725461119 756372536 149248173 678118249 428884585 740388273 479396529 536180934 586771409 902929090 348412803 801756236 446133468 719942740 889892762 902819971 256471323 482993491 448064511 997129192 127262327 641784533 713807059 813240524 536023484 940568415 165606885 337187347 362772786 966856229 521942679 840020067 467457714 503182656 27243510 569215132 441523505 966790599 564687938 785112679 156763871 753577617 37922639 548388976 346599050 585445901 934935553 972255956 300311331 786082559 670915448 838815791 223754823 247693841 76392488 955869839 729447288 930499669 664972812 750132751 970705858 974297401 531556087 655213122 352429748 501734425 807033444 897296733 106321373 771448393 865757191 939535133 79744427 173211677 645945735 961111733 733159602 870832067 25434560 296967364 12131832 682624966 877208396 897540482 395711263 427167424 563910370 925474499 113912432 870320302 796538678 820929346 546492364 945609805 370218047 443954526 162471995 994500038 654851302 715115191 278848026 587560923 910953947 982604414 876220433 960968465 455999685 837143932 352211133 702698451 974710745 996485502 51347503 404398803 800301456 969323745 213458163 731240692 331782001 698246719 508757299 689261689 386829810 793680674 810874746 880593755 57886989 577441190 615898440 991153919 875899410 986793541 684013979 888178788 980116515 989540547 619288032 632134455 682011294 891760349 85159025 230072294 803895884 864919102 328920046 665074938 379591304 689211897 85769241 517916509 654104730 704906134 797333040 809681880 456626743 818130493 228296239 781483868 446707610 750593870 424524783 639478359 83729068 705195348 407477271 836017389 977180595 990651044 832792717 992684783 244906192 704061775 993475082 995587414 665177320 866091926 669397998 902093445 245426595 787228737 477040924 534190567 67219102 244194664 462450242 817938200 420346386 657025232 431338862 653971303 835644998 908994726 32951001 391102704 599047453 976582307 634690936 683107915 490671344 491598469 15819634 880481102 728354035 768177674 588431616 744096292 193243064 927240829 974608027 984375955 688437416 830459563 659941332 872692500 550320327 724555901 930117727 985007332 536557406 579406343 29388065 384203140 253190194 591008860 150573878 153768340 857943832 879954416 665337287 668794137 147480882 797687858 9123125 323102032 400465984 930501946 871794144 925559371 94261144 568379870 914351255 936157655 954585191 989879045 181898514 261449309 454424598 960637402 282177268 875049200 289684104 317200155 513742509 895692637 573155433 958554212 443237331 493770961 244012037 802845685 998072561 999259247 636676806 660522694 184918532 379408650 839705112 864125701 312082437 589768485 461124567 908121108 367306407 517761212 184119125 406529892 579532388 601904248 18186402 539685638 579224215 587934639 821176837 982577965 316133878 964876116 135559596 151093534 173340139 546335792 602453435 783061076 377270210 896989684 26908534 447785756 657488713 860299700 833415379 938393500 718093690 843356640 439111970 710536836 212742348 474527386 923498713 996406239 841490781 898710724 791830362 948308857 309435719 618526965 972104440 996521677 533615291 605036024 594419511 776817162 153206365 480748290 895295905 904249909 180303522 650933658 829508270 905791782 364224841 782919708 650439372 679461545 542624904 601177414 548228158 557566951 316152929 648670295 151667273 787591137 72597358 561779701 545878300 835249527 398555147 918476687 83687992 861801589 518568489 569247511 178287232 820225153 446783620 786287508 73798550 348673452 95496119 266516316 196061753 275441238 332868361 604826356 994396116 994642407 937592186 977056221 509980085 542997284 831285389 897423883 115105189 250032370 810176374 848547602 946958380 966268587 116544013 655009542 363616023 883159010 37686480 977475190 914768971 995042977 249672517 327123764 713825265 962001803 336448870 913390374 140414430 358674585 228335685 728360034 179319745 940539096 424684911 707646957 950593349 953452947 67558211 367578056 577730132 878993391 773523713 956580047 795422857 985221665 256509551 764757216 79563273 593272790 33341886 928105083 280355804 741135616 37422664 789721741 275597583 441959799 961815716 984208493 144904074 853837084 202094884 438930500 111456744 281917792 883962971 986254281 701601135 865131110 107435109 356490542 482394099 728869217 571432535 665268231 314007502 555172756 822321588 941577803 152886419 965431392 140693383 927900706 405770980 833973072 938466152 960693522 28738689 559857292 902916037 947360943 973562043 997133970 742857616 845283049 708283627 963259080 811557956 983371536 571933216 824018891 76169536 408384514 879568325 921409017 410872474 535610809 540705894 991292298 571606015 729653750 413317711 724911261 68745628 640582654 90051150 291581906 33641870 318290427 832548131 961988665 314134875 319638418 528140253 885910060 126214677 422708185 827346192 838639479 824953287 859629988 507031082 830414785 456754422 488979387 172787602 851398516 136491077 857104868 778006649 957438396 552224935 680587394 651091694 783622895 535002000 727664851 989791951 990248293 195583966 241871562 420021354 721127762 110270902 305893398 449775582 597004088 5129404 327407450 473500185 828061461 723338291 934906626 842651402 844746931 674257313 703676060 484598284 550847756 923550798 952065606 953205654 955592453 824901259 927427381 26285632 531288152 611935429 850044251 45751985 796772505 624109368 942433951 327294681 438524953 647719032 797799202 268868843 376221838 36633887 46970699 794391696 797416739 954297086 983681080 371936441 703337481 699941451 935786282 424546380 478347412 721602713 955636826 442987287 647568867 523205638 954021530 726062901 804388177 319409859 865546728 207745294 825081564 895946041 913011151 887945564 915898020 181569954 852129983 69825248 607511114 2906325 686968953 20884328 31154318 604206115 732599876 775952978 871670922 347876606 813983315 952885654 982377762 205642824 243788734 225520368 481643179 970513838 976426319 930937055 936773820 114915510 576568588 658746437 728196035 358055847 406818998 675897256 978992665 575086859 616160806 991791082 995173921 606337204 874818967 389723565 804581421 350424042 500661048 493406627 707373416 798120942 824913017 261834521 458085342 51358803 586186059 76651980 287937153 682119795 783968612 121717575 538949596 143222743 191071436 421251506 725876500 877193542 898125994 233415681 473147309 809400367 948893982 397333460 682745085 508837176 999032346 52685930 464486298 216172230 916426903 970749751 988737791 224968694 943793225 850748191 973627759 899265470 994258692 656710279 802532478 811079406 844908022 504811372 652272631 367931555 406878203 728806002 996078658 69818263 477536073 821103532 988200614 256130266 932972483 907961954 977942732 590208574 832383668 945096094 981678711 797369037 928383830 650890918 885834833 381345675 429031266 800973327 883752624 183025160 751213673 159628942 546159913 583892054 938277968 609056187 897169559 574186401 876071312 371416308 868191840 611134760 745208873 219715816 772002448 843124835 843787234 191076133 556420860 487738837 975287335 96464789 390771124 696981722 728674566 518386930 869431916 685816402 993917018 115808078 764454987 983706038 983882154 835738718 959322878 9313532 961000862 433123001 900394477 698969664 856310796 375648223 930545680 344919845 882885517 874129594 988720188 603462477 616456433 411403478 623462450 532900478 900534279 692694016 698030704 923324302 929815651 90639535 802845874 118072023 233171988 560323907 613555935 547117881 735297588 764769715 983411422 920651266 938287164 974395822 992982249 201515520 762353365 400582908 423297616 521334737 823823294 230727463 440982923 634437247 887781967 666671502 679223581 196339709 701362286 150487262 993522044 360559412 810307831 92131021 212014870 623870686 762628422 146408907 712188568 580385280 776709428 2595523 434950469 184484807 489589502 77111149 404140321 886868511 888670888 786294820 896060018 281688196 507053392 151254902 890583487 872071294 892208288 321458679 488057575 51808698 100286544 430062407 813325235 763416425 919352962 189412780 266955947 178971357 305635197 94658131 97749194 771320311 973015970 906068554 986859885 228335205 376162264 875143338 968016293 279960926 931395177 71781053 160510358 426090824 838415228 343999626 380321282 854998428 881385544 959193709 995772348 355449023 432879434 563728565 945981227 781861280 864516375 135631732 744910914 323556941 836014569 219245859 783984049 113656440 220683981 123164360 641064810 346511402 887538462 884253693 975104581 740124877 890026927 794938272 961314143 98042065 948702617 347612611 556419435 99776747 276505806 542035597 766294657 56351356 288941917 744810560 806778898 444516276 595808395 861181923 879886217 6358548 709792627 594214345 855366258 623002260 696393369 782082896 992615638 980163970 980332336 945199182 972200925 789013963 944859679 502413835 719322315 549121984 700192664 565026404 997819267 140863239 457916956 700475222 900095433 202960014 379653553 609129461 731065054 928304604 945554813 109746372 599989262 519449346 904474060 102601210 763935063 542196644 670724871 634227429 777723567 930063599 965029143 730597650 952046513 857587105 872520798 464471794 509836936 35552687 172474014 853801577 863822507 674682897 979182850 424600636 448492671 166513872 640606416 588065796 811244694 730512091 832203719 843867799 974807356 596737802 745086240 140412879 246867395 537959040 790606080 960951813 971245938 400526489 468832095 209581141 504021339 796858438 951910818 194684776 363692178 7662142 505385096 328922608 685086328 759537841 983672261 777536363 943104014 355338068 886245032 979019086 984117192 220358702 615802193 477923411 697592550 285268304 952096444 125075028 914509602 183409064 843375895 853913258 977678082 215752008 306140603 43588799 235440260 117746715 685623672 850458827 869083412 460291841 695442407 32475333 727022792 293314740 880614459 400191289 688665372 397610555 844231750 215897843 724096705 457110743 480586996 880303986 888462774 349566797 632955219 418968882 812222706 209534644 833756790 671921482 761740370 466109085 797450628 638137015 934351097 455225042 938676668 712036339 973047300 810007487 969910894 442248013 526916380 259393912 503333217 64725173 262098072 907343203 985167800 195093873 868724856 241591135 692499119 403441959 847266797 493551846 822486649 486770464 830352902 514183233 932921803 852679941 915874991 249610981 871167059 667566736 924485177 983701619 995477802 47934826 79984480 695159018 976281979 22998093 501114597 67380118 150987052 418505606 633155580 268628405 955069214 321612436 914616915 728989203 846527927 393799627 695689464 973132243 974594438 864420449 864592324 339309280 461954462 307159131 871503003 371239554 418447037 631596582 916678351 308768790 782255372 120655815 676791849 379331858 737264854 496583923 541963388 667069060 680295137 760566612 766858732 454505180 662267773 209442346 928348532 868204378 873620938 996481933 997069815 797986998 898312254 680091016 961572924 14653649 778595349 874213280 921989796 875990621 988097344 740277060 990451328 509595721 566195533 126825889 498716775 736502946 808210105 657000440 781343251 138108091 444871693 214932034 774266395 207730237 328115506 291697883 701071528 983928034 998342776 756748056 956856440 649538293 952197790 590248845 605241256 245395938 377469414 202047756 272349654 700980812 775306318 738578520 749495274 241795728 792615853 371682947 731246266 949177219 967067338 176909273 205314872 422452299 911242138 419245679 949075124 467728729 936013108 735672835 760809843 955560763 974617277 109592016 891378292 778692692 877852870 183235864 771071383 218946333 919041945 888032507 941602017 806026803 961500197 351322452 660102739 722770624 849202263 113439380 981683111 726604711 952107169 180675450 284462726 629743962 787180400 93396480 351886042 242407598 961082634 813326226 911627895 29796312 486771627 367959288 602545652 924821806 966126502 350704060 532117483 47945526 503231343 455358663 943441868 917441749 966426358 881390220 899969574 162737958 660884783 561066022 948479729 17894447 451518545 66977622 135467365 239470265 737596389 794497155 812945278 72859531 554724428 637734950 856920944 886015973 963837860 339237696 665893148 586165764 775609078 800793381 908712238 780520378 889233635 88018380 991388770 24070317 743845108 381790288 936224929 407749421 562481360 933906019 950375510 604678385 918710349 209650607 660279744 632142900 748160638 80467127 759753001 627329053 641784196 313427556 923308977 606925077 669806935 163111384 489554874 837592301 990916025 532108623 928711949 90139670 155298822 792781345 886829449 918395216 995089269 346028809 979613984 476683570 765956820 290033758 524145285 785165058 842005136 68919342 949648240 122886981 668904825 954197486 963264085 306716806 546309942 553448286 870463119 519344474 959755603 237699264 771587715 449773143 902434452 399224195 725646464 338037660 902694288 552020296 684945562 213881208 334072075 654175032 986251454 80820333 851463198 582147406 734836961 580398055 721699848 387039559 400351284 596936118 695647829 646676439 891160609 898030823 911284372 960086476 979350513 195298892 351535946 329298025 477432754 522747941 884627916 559089085 740729310 714619705 911004711 546446570 939294127 705720862 710065691 6068158 284344768 318883598 930517794 654197706 654742236 308713091 802583633 4920962 641263457 127500700 781254191 905311618 937325008 78234671 767074178 512225762 568131389 473015230 994005835 600846273 813201956 507774334 755578332 621116070 952612516 891791679 989668817 851401789 927596309 73339408 108876806 377123967 802559892 623744302 821455500 107251072 792152450 272388313 743421366 529052491 859203756 613706354 764592852 932040845 961489573 893876059 912359907 2120707 218072479 618477460 906117447 25326152 878026905 597799952 882930345 929071533 989941262 298977986 391276915 438844466 844685419 445587478 798648315 401699148 888336155 954782650 987669269 914957516 954343551 617756311 740430404 816859857 971287944 308853319 557943761 660393788 862663969 323033500 964335958 549705579 705943623 837151857 949854595 137730756 746895630 386670995 502998087 948619630 979664490 519695650 895162863 172786417 452992026 170806101 206937633 54867768 744183530 945379567 979699565 187526722 620842122 516049729 533579876 667062015 906744457 968231613 993239670 303401680 424329306 58300599 669723073 605307504 939593632 197928140 936159494 223977378 352784820 95645096 674586378 869928424 983393251 354890154 952279977 145140232 779287205 393516462 531024915 108620690 267659427 856891386 978993116 571758632 818318728 720358541 871468432 663627757 806585796 782441979 860409452 192858776 695855524 137885694 589181783 104983428 649303584 982362865 997673919 113488971 442204849 277272120 870396294 90361471 411568015 292105919 412468579 974611146 979385400 5948232 620871371 831853613 847570020 831456095 909211239 587799781 753560156 450910604 809025479 661833573 676008890 436234244 722031489 858257593 889650667 720130539 775594560 105695222 121477206 23181214 494032684 453975802 890089337 355755912 619279246 131270435 850177508 405932083 861179940 174790349 754939100 145227241 394891061 238911392 446001021 460350847 501341169 362312854 577589889 844998547 848131719 33795696 976004129 864880816 993209719 713754668 829145600 962534379 973835454 920490262 966828094 641286224 798362999 164529646 654397376 26203275 116882015 629888488 694807149 824093842 885319806 463508253 731552771 695678931 719087994 513391644 985612704 571883214 690319891 885526826 985863492 454433808 523712678 59597489 697817856 120587235 285028952 577724817 855428217 881495934 988837593 488760189 916867441 913333750 941194045 498857449 844410280 385937190 824034491 680895065 865497610 897186253 938179706 746859785 907046720 284645194 784662538 625769638 968291077 712416257 768706922 797068412 854095983 249861063 376474510 11966700 192580578 986356256 998507707 233689863 894092331 597313271 604799614 908362524 963474793 635620535 722305430 566170085 959369987 394843702 430507037 614366283 778054665 801496246 843840994 431455155 599382077 934135463 963185766 685456779 688352180 638982076 938165061 699127465 830192472 343761797 525947640 900804241 954503878 520896739 631239056 149107632 479179308 75343345 187071911 589766598 637682479 327375064 471600317 350823461 918300304 338168690 708474168 344492537 781029873 233944396 914779592 59734345 937369245 45732218 445025222 385489355 400920307 428926155 765043572 864768412 942652524 282518716 300381733 438706789 914266712 333590750 402417643 209095690 345087582 27970305 838362742 339096527 826582148 209953905 258728347 525768481 982514527 94045350 950337874 434978807 696768097 146091808 645238566 175559716 480389241 739092584 818043469 862372941 925086598 598001310 749745742 71002840 359988673 774553442 863980209 586381907 643329454 989868602 998152956 556549003 739652954 606019748 945155599 575546759 906136616 737347727 779147949 399436202 633018990 789172509 799866082 786246888 851039073 535834978 606136010 303485348 352708884 882483652 937403120 919543551 963574628 947887645 989212240 8652365 750105769 337948863 974760442 874237959 909354317 364664082 642949776 528870675 534439458 288735489 356138749 389431484 410719962 48611743 900994315 593607328 847982214 257752555 439647064 713189941 951350287 698083653 727059075 209667011 561700266 989728052 999360542 652411721 704011768 31621297 325349732 17927579 726162544 826261313 849861742 841764459 850882228 494152430 937358010 204567052 949359150 83391612 798704721 131317913 975719169 2045111 71972433 35636147 789209520 598324508 611672673 322459829 875912313 715431850 937791735 464282837 747483225 964976399 989249074 251012966 672402519 972830486 983873956 259308519 989982622 587227281 988662321 865331386 955596212 630449563 902358663 374536290 891506660 390400986 403002251 418691332 783849108 388605855 423604940 579984146 946400488 866474103 959121614 549894231 607830387 300107796 352186825 579536342 710587639 331170897 689222679 671909628 692140633 15565707 390837763 850654715 944540310 394028849 789416543 511907038 943628346 100786514 997499181 368858300 511989987 442729084 850562791 584323999 962904742 905972860 909294036 951420898 989514527 872535326 941742412 232719918 718461820 312140913 618397325 115896393 862670590 516105345 767704493 380804763 795228239 75995892 424425286 882342051 965187770 30196401 697884677 968776049 987846749 691365757 742811094 653137038 705661401 652672199 850379443 745544310 828678153 311685017 777233991 745827649 914644434 811197105 866143313 494948535 802930087 430801346 927682950 484307731 845925870 293009048 800400567 464651807 927638191 288672887 571549549 774067153 799868333 751077834 911285781 372323884 738475097 623698266 862616750 414532716 908783804 989604356 993471759 214436288 671152355 764074014 993786729 777414627 907269950 343576874 372852975 836561220 947922174 894299681 926921650 123181914 235307958 173221532 955309158 31420848 626068994 705470027 910733079 977713137 991555757 183765486 230895459 673384286 674800083 827314795 886741798 620317201 850067349 158333242 834803243 373352591 770805717 964071968 975168756 759030778 884692566 293843828 522384701 969015820 980188343 161161417 181612271 402164383 745150159 198667319 873839989 18588903 933989126 633297797 735659324 590065651 643504897 437182027 472223612 760734231 951800128 426905477 862530708 420162112 433956053 712883286 928871255 589806655 764142334 827799202 868460379 841564426 980239208 356000567 978273265 459844060 780433487 833103302 859479471 829871326 958826919 493435414 809512157 865467866 866525472 761942271 770164863 912261864 930179027 927518907 938994684 80156435 968310808 520432796 902328123 499896975 870494471 426292874 472073057 352280871 528589274 421680861 644610545 764870457 814438830 174235654 968717631 958899647 959920416 163519293 521262090 877940891 977417080 464769734 688058345 423463446 587063805 195423457 906016813 816392249 914766745 40554645 89581944 868471802 976929350 142552465 591799094 283244748 369710985 533615367 890141331 656366347 699924240 96668094 857716788 555112506 817182099 678524528 960066743 701891374 819548531 693377552 703496469 841311568 876753791 101135441 540557787 581409208 787932721 454595260 576088011 198604998 309513575 462952816 697069990 709380578 769762783 983363243 988204741 609979014 664602038 431233870 970256942 556398814 781950540 800004647 945782010 992017026 992196722 396501746 948710312 189627825 534316707 971631504 979885207 372015601 801318281 804329022 949321825 948943273 987986609 209764867 469736955 383629163 804816079 557731335 803240951 473695154 619685676 531223266 731269308 743856307 767336181 314707608 652761846 211923876 721500607 961046943 994263129 464608599 728054138 635560102 766376262 787813935 951422098 64603276 404119462 344164518 727543915 824082813 933070066 494573533 571406006 285643217 753381724 42330907 140847216 470065413 949939407 500331554 921892984 411069994 547136690 566265133 891243058 257556382 489396736 837040578 977735241 367886205 394869339 121490028 340430879 505418495 778905074 475652112 602570813 5534109 969803067 916182034 979449154 217776075 929157436 124200587 827901903 863692364 985389081 553726921 769170128 152653515 824255609 800149589 896051217 889160318 899957929 822124157 885098069 340487791 344796310 369751409 409560952 374648949 846312382 592537496 740870217 387026608 981898600 743399026 915599871 316761183 435198431 851531374 966670578 694458177 737392863 389190801 993486422 642929547 943457603 772023298 857731564 217951791 484499798 33297375 382268693 180878572 487663761 173700719 327741855 758550218 797962109 868050604 925306810 961229935 970090913 822873105 881726925 732107120 991964060 56016231 788176368 198677721 730939882 406021345 519217980 409825352 659571048 362677587 539623116 27539109 808902605 730675985 946786121 102161434 933423960 874235410 879074001 818782709 865671691 149076860 232939345 316430388 569556088 245669048 331101359 112349494 188362835 188270741 735242563 499334135 589913682 989384519 997444316 796461904 898217620 904945866 962552889 842047213 884810835 874629203 945346375 562099876 941292341 971235796 989870576 942502978 970180192 448686816 826028290 896886074 946255071 661883616 904657834 907994064 946930479 910874533 996818924 421283054 593984790 766813431 828549001 868862547 931434114 689923075 890079339 222835758 317027736 762641073 772856474 263270702 996325919 771938923 917995984 143694342 839836121 218399211 630527748 472565504 751824240 858463959 963861798 429664322 694817477 572183001 982823029 480750078 940518006 36236896 167680081 540878184 775221070 137997168 686113206 663877320 749884353 820985423 918539508 549648576 851771601 906559702 968135399 88261195 579502748 645857269 692061935 644348459 843901695 173026128 979239224 679270503 845957361 799536238 858202432 765543343 965255891 770287495 828498040 422124465 778668225 832165418 959164488 741959630 916535336 193239225 580709227 231603211 911532021 998835479 999266013 574763051 725842826 820195328 876383942 701318739 834427613 19138606 82302728 780960206 884295145 394012043 948471938 347655647 397815408 717245106 721855177 566683639 690917703 104612704 564988748 145281661 633783588 996622081 997971857 636917609 907540082 978836033 989105397 306209983 618618203 189265687 705082639 944914164 959774130 79708832 619619937 448764215 606718451 41593436 267364316 32068899 33449888 789761247 945997732 849974845 880830023 598139081 895659315 459193291 754519940 905141595 906495288 998381470 999302944 341362048 899081410 240118088 282188068 82004857 563814337 244005730 938870866 535266070 673989965 799460041 899803589 940364170 945172840 102503910 923631425 730273612 878468354 416563998 609833860 762631566 810094997 75048133 817651825 996723845 997035815 556975311 987747170 275710582 941541102 674685517 994883592 887483876 959553133 59591578 997428372 310980461 863440283 208995860 639833680 298206179 868329840 481082689 943396327 22956535 714144527 845456566 941311355 96327907 745458569 439920136 808396494 457245834 772460857 610964450 702078760 251090777 430256274 841208495 968265462 344147096 901894496 774120086 943932623 440197539 484651092 354685685 890076604 461125350 579993683 173610279 847180868 156000673 616001140 144871057 997988032 301541848 911989452 895292379 989830775 803553381 865849356 590989777 991888954 18111705 705297919 377257151 880274521 750298993 907145060 917432763 945684388 579491428 724853478 718235430 884024558 308154496 992935417 876342268 961314132 212489181 828989070 529241797 942087308 394228176 830329500 5377600 149978621 918110010 963659335 617427955 848098509 998221279 998388460 258466735 323063024 847784563 910706445 176669672 953203598 304329013 969579961 298273475 494146980 818083794 921929413 889538650 910091364 737961575 826505341 700227114 914637723 529525902 758156989 231311987 632936174 618431027 856902280 850340876 995007686 805074932 872186721 80774780 82021738 76291057 907016190 292420566 706250704 861474263 873235495 176774111 589731713 371064165 634786069 125257164 788926555 361063154 808509031 520891644 974487386 965780908 969571579 715883357 864503429 164311709 757024494 926407375 948735806 98951413 292807422 958084956 969920401 90548609 580880967 249806045 842963231 154741812 683205325 386391044 580390349 876774912 934384999 192114365 828413135 508843575 686106085 53207989 472556730 811798652 834643547 188260788 610353107 795697575 850396747 245759241 484294803 546209627 675635965 856815239 958361360 32387188 221706882 707700441 774163478 726433554 838876415 707651132 910458731 517866364 650260577 874294522 906450616 514449614 632205984 859602024 951372630 882717700 932844931 354293348 451830580 164655405 430508856 922102248 969763940 321491971 937568170 215004969 673252334 142295479 429830514 813202717 896735569 799412918 939108893 573976401 867740992 618543080 875235380 478582860 499293488 509538468 978798477 138236841 144003133 981306231 997463711 947124341 984915450 773755900 816948806 488106567 519835845 345267831 557503537 337946505 352730568 785054995 863227022 846474785 886136128 975394021 983943087 273564589 977637551 589805778 802783969 340960977 711679149 119900998 823664892 206812188 977608809 334616935 925114768 193858810 618026595 814570858 856607473 706446630 795939030 533756556 619143632 124332172 745118163 832493089 918891822 576881351 638065261 651778562 966197405 70565921 654119023 547626337 554274027 899975699 932925303 734582468 837808711 629020779 799358249 210485803 214902779 810624391 984789371 782105195 894079297 443558521 621763716 912553186 941111118 470583917 953365206 129680575 748077019 316482197 774908909 537227724 783162332 46635001 351214412 991391551 994308815 861223764 949628766 722491346 903147934 594205360 734588995 369445423 510338041 891465268 981068941 488991675 550118812 563598923 791554395 714555852 720491500 522523639 544277547 535586948 852240040 355585839 906666896 205009644 221737405 730446611 965559257 121481040 160584068 958286085 976414222 633426543 675975727 221753965 546433208 486147825 829558629 936184673 971306546 664282100 788961315 527737266 780176704 818641892 980581342 133374835 160715061 152694704 967112974 205991696 654733198 267116811 756454449 267494263 548263813 287484691 830759907 839941179 995386626 364654575 889338082 289001830 790134452 13951064 274959165 43879676 823230201 436411389 676689651 854677283 881799292 409872470 711278018 138245409 398769410 916182260 925211346 65773711 273949482 756111957 847304564 934179975 978712207 556768651 810244109 785524897 880562382 983996143 991022756 872193381 994479732 364004536 468928648 496123882 544706112 51389454 612332891 444771476 890652849 602223351 774036489 801199574 919762506 54412911 853777471 621316205 916104062 885435071 980098899 123030301 352434545 426369432 759300971 574649516 796345499 678132886 746087642 255197191 260885895 274918764 852412742 38611266 814023677 140910100 881925267 378437938 485362161 810800919 860803527 529986076 613943398 582527745 895167917 277801548 669155803 835528222 947209357 105006557 717095921 974515134 984389843 951468524 971050581 506617663 887546230 260786283 573936669 621392293 940174112 889651856 961845935 190158546 510179319 723515499 831084012 119725525 444146703 680968340 722780465 358487692 964067771 512747363 870977227 975661161 997993992 140858752 151862770 872567781 996551880 177539779 966249008 565045119 877976531 630677660 906255079 702136894 823098617 451772667 654086153 527749263 831256937 667926469 710643918 60234426 997759891 779769442 926546087 431992000 837487354 243621748 688939831 969673052 986606076 968336388 985624420 646308603 771330404 469900097 511899314 91158719 928364079 706473602 945654922 988137963 989583974 669905628 769242979 285890894 717852164 612299743 652074935 603359131 660297059 902170301 913982695 71391319 169726079 86705434 590814397 663484465 700864550 62030112 879252561 36099247 370925482 806240182 984994828 460110223 689877433 500341872 941626913 143187788 784030202 115671295 681403384 908899464 967278017 851182786 879664611 270906665 355788136 848822912 858683024 643113060 962451193 397780258 417773694 174528923 336376254 25769105 385187917 89291491 266285753 774641009 854373928 628610584 850399284 219667599 752727846 651227071 906479095 829429301 853143663 445457345 867680912 260620425 396973172 775452873 942710066 578763574 916837101 850629485 958110867 34959709 747721111 735464325 987071566 413677405 724686032 968384415 977703626 476960315 892866811 333168069 498964805 967413022 984493687 490496198 791243236 619659161 706771861 261194777 754379710 485693983 526189778 115809059 585180134 145827175 674299451 816466437 838036456 576702318 804880585 779903665 969812628 11482630 445902862 383251736 574297742 237123917 422732968 531228934 623756342 937575450 963252428 748232193 914341151 349162905 400631574 404024264 866450986 438284594 910295478 447420833 754524051 534830579 883125176 941584833 984652774 580309563 748166583 385346049 482164408 299365115 379738864 262970359 379872147 984203093 999128613 803493066 891816175 500408647 516365250 386810579 457547831 318851029 675633963 97738300 134290944 127049414 326141100 359061511 401498259 609728506 885654811 457906918 816021941 225600859 817314024 784753768 903982015 509806433 907605543 727343005 814833829 858318061 877250385 926180707 961291958 64643595 659476198 772897391 838918578 634079519 769063605 464648771 800194317 279818118 775013051 285716941 587540605 400066267 767412670 846595935 884081564 969751799 981104454 530286663 664530056 747676471 751727872 267633418 805896792 471803418 874552351 491476653 927625941 833682224 922509208 790255179 973404273 12071569 926267642 915032623 972835559 179346197 487363181 267740387 467074117 771364085 777135866 737653256 809396624 597025969 711134868 987057732 997153211 588259855 935837972 381629310 961267182 2583710 266627268 40955983 544814612 735815203 973588457 946869103 977575788 118367012 924059392 365882350 592782480 912462434 965047694 151142522 177230470 702400346 993556537 462965947 979798888 830248695 943926155 33993226 994742445 29324831 751080268 360735009 574821416 773578851 883358837 902426614 982007442 662512079 957123136 88745997 495642659 92731360 587277419 95301048 742462002 812263383 898680920 167832556 297652607 5388218 158507386 383622861 654269124 616888496 856618654 92688599 906685625 218957674 506326225 374325255 453547553 168191692 455267297 98141358 113337853 712192304 728893715 551532560 678723705 200445359 950947272 33480055 774812862 806107347 966337551 354601956 454794845 959727045 962257759 961152075 973209667 371068535 768074652 541761767 654976059 953358641 982071035 971193459 991217914 864298566 869508594 373987354 483978724 757321063 803920871 494173435 524367793 8552117 534563225 186125090 427134815 38933943 125454640 771198859 905328748 798399407 895687144 890232524 911662138 119847391 145818038 304910185 923257065 47587269 502404022 912396944 988633464 944348114 963441104 549198760 770939798 794722711 930322725 175269415 655908367 275093441 291916089 678227381 900494609 444598052 942018925 152713510 549770222 176102666 249663719 935533337 948984373 259788877 369662250 82862745 464132403 814414550 877608921 777592547 965054331 20101925 961788213 732532522 870052048 448590006 690089895 740192543 886338905 542529010 899612356 280576946 623553093 504356022 602392427 883691391 896113336 811675890 944610465 822950922 983138978 990752185 994131379 696148159 762531179 590317264 753609567 138726794 239736623 457897829 477547851 368816863 388387309 441799950 914164626 996312184 996596336 146692733 918528143 907702345 978395212 912751405 937337686 243533801 323824635 360830512 942072804 481042011 979205580 113483984 179571227 363843570 947185013 267179154 912774168 339368290 677168632 286956024 546269354 758640494 910002885 580918281 972270718 898305120 910481516 847044874 976782909 18573552 460135159 471685993 878730400 238754753 338575578 699558540 938054368 195841336 332762428 736777538 924303884 222418052 940812250 586668531 710752861 296201410 475745823 889545594 923731196 63919592 710182710 179444725 411746974 134748108 988229053 586243821 770568207 774391545 831402121 472856142 697197178 865349168 980927328 766366566 868195232 617010990 752546872 485730318 537569229 643602646 774743766 277239788 994113822 304056732 989566262 686033023 805342605 742286277 947626595 330802590 494727001 610593104 844238280 857383821 934617208 164654575 215907873 671245642 721140711 935562902 940290800 455379765 792580150 596565835 882289143 866597614 930496363 298488925 349281113 830049186 972825104 785035182 977154033 835603543 916095462 754688293 919959374 354895745 574891044 438513503 648122105 813724679 869195647 344644837 873636724 131566548 195438618 723626264 875635351 148047312 417738693 833781035 883008328 948195359 998271127 753416489 842931865 175265701 786502008 236326047 663917605 70982073 169501734 963966360 971502108 114817447 207372916 595804578 770768566 288963057 823579758 501996910 791407906 83281118 200076566 666823189 976828807 826130872 888865014 129409948 668659330 563928527 822581317 176685015 533397170 148769742 319398680 100712398 359352647 551368823 951948206 844385983 942376058 941742472 954586126 514060801 701085840 261484566 587091275 683458635 958465140 667951673 840027786 945219166 952745124 611862559 768717555 177491152 853190438 995438205 995931140 291798642 858775360 225394408 393761225 909470099 918462970 152858276 267627167 335809854 952032038 792972957 883922810 426053629 933426209 885059801 912713255 457070170 845054062 740674060 797483531 175897066 606901156 940600609 995300220 42364528 838211554 996033878 997321731 828320902 944416786 137801031 490829329 716674487 974570607 936164651 982272085 787365194 898600867 579586764 720575673 894854639 932224251 6548506 576390127 265947326 719816222 581929201 938910672 418318129 598341575 733781275 950626673 572985871 630718876 298726881 304276193 653595232 880465339 128993827 577289078 206337505 860988817 377913955 848888506 214070707 361908750 500138813 799388290 360717429 497463681 479043199 562506509 207692781 340182342 342482016 811973887 338478833 589524291 287460621 377051958 434853061 673223500 477279338 854689825 660109402 898075399 566882523 612535914 755920009 964137943 468956616 877212472 64649067 700594957 813983345 915666881 392314713 564934686 877119442 913262806 443591432 880983815 422341533 853496489 264719106 999370164 154145713 337894269 967320040 983388606 789683252 968677409 434449651 898750204 308400453 336496094 951404953 973766014 167078963 901523127 277415300 732776620 912891195 968157113 581542773 939815189 490905587 893903132 90226810 436302298 509281144 801728575 851479597 918200577 15085000 200313175 166015562 568263860 387149065 750919435 262886360 543434288 470419868 723163824 272423205 887154436 895350684 993798217 696129949 998265162 709338780 978021593 440511165 738413516 689513965 918911673 951171322 982782407 184428309 588980805 306517773 462013925 225482573 438166085 314619215 768134166 418657203 593928669 882718101 922302905 229152100 822088747 716725287 784265114 962737649 965402693 19659244 48093013 829139500 865295680 890979882 897847055 889394601 939927606 901878942 997343551 839843136 845860521 121813944 774587705 805883383 928992480 942968196 954412446 224371552 254980619 241866369 847688976 81395424 178981563 34012095 573364622 67485551 202945954 784950479 956623288 362990531 815011204 756034108 993930384 632956486 870768657 271445426 748499416 803214687 936083253 323676269 615692794 484725389 732435422 584439133 651598131 370944514 536213832 415991172 983979186 71628848 808565105 866082649 992154386 70654089 176016795 481423197 482841768 784123680 835666721 483812163 626622959 140480760 872986375 384342304 526479939 830171141 956976097 453113719 949543981 706742021 766974379 445810712 713853322 18678402 160400088 436392720 484426339 940228655 987266981 913730853 988395580 699887784 835061116 97810383 608848016 296006053 349962008 861414274 991327427 538177435 632144214 15684688 127060320 353745174 974155356 996259906 998440401 445282235 569019984 782138458 817109289 987833889 998433803 528643022 829054936 563230978 756530381 970064750 979288986 297152358 611244051 865385734 914427472 679599461 868026981 122720896 880876710 406048907 924496498 622854640 779390569 795486548 894871038 376486287 518897322 669320734 895827153 581726934 960807314 203613985 549462758 622120137 791554419 135916273 712388064 823076245 842786014 3503845 464305787 551576501 724319751 951660610 969720494 403765435 592157533 182758060 812117500 988834330 992113269 495807172 853235442 454223093 719474651 56328380 323624075 871793671 928592541 187631833 662905056 228482982 850189711 685191274 723835559 583315521 863798255 290991223 881184452 577840304 986830847 487655629 594408205 243688987 713619322 213884444 591314125 599011977 928069291 192620496 874762756 972051463 992827928 703086594 796248804 29807060 102620767 122423914 674034327 547351913 668800302 864713985 900465029 773714626 848603005 138682189 535214346 40321058 159837306 960724717 993980254 291221267 661303995 441057230 714387673 892787134 958029763 335194348 981132582 394978303 917571712 633227154 755848927 827794503 963710658 119082476 238446242 853633806 937923250 67253747 141233065 934046336 946521016 216437016 296881571 505530567 726506954 686164678 922922594 494628336 943686365 588954014 643419941 652280682 925976057 150311069 383418574 888935982 975197634 700212001 995632121 36080963 319743369 663408870 985295835 341734668 976926620 399204884 534242059 882443470 887189278 521530217 792083895 336178091 519262975 470948598 718335976 759885930 760905851 584620541 646799930 65704832 649068017 276772680 380563846 111149413 148067940 366717115 719286753 340486813 569035906 766261229 833904301 688235886 740280029 993980688 995335236 680792398 707517863 817280978 956155405 494424037 660997332 596053339 702560219 161396008 266580579 183796730 413455352 200728310 508144575 129861251 766112864 885605373 968530649 969897143 980575116 667341352 917407042 383555660 545967028 891247402 985781801 547201561 708821164 485240844 610703955 109511923 354242871 156570840 988334877 364194353 593999299 753755992 936556141 874794895 973218766 117103123 915769815 638272813 981527644 944079872 945946834 686912212 858268117 14817709 925276064 556280084 699830269 61241975 586277867 576209809 715516205 728627166 865353418 20059423 39676605 640568252 796401724 936373096 982400406 460079988 843361665 888596573 899827697 916168446 954527535 239667192 772167646 995770826 997838718 60514502 100171268 557851594 647182298 28263682 144480077 873536205 955551893 128962178 865108363 203861924 677188525 750307433 820135785 749670146 953899736 150575952 969833009 149280169 600835989 269083169 330986010 353425813 580147894 509776669 643307962 394432694 609990755 845328737 929161875 78018225 434927090 812154799 856601073 291648117 415237540 532656808 674403222 461206604 738175905 405865084 988158471 654566633 723870784 362672135 725533562 507926704 991133973 862788064 995481702 784511619 833507523 870427839 961675883 454532244 490596844 987532968 991190201 655906826 833963516 480910282 798747631 888954175 942607986 910842223 967194169 164546447 819807302 936507311 953580067 96852178 164575639 704721295 992953854 352327270 403122945 886090040 943094736 341508870 806781076 332319200 552998362 362414404 621780873 793347888 940889592 362409602 480117027 86684266 919935617 170649940 651483771 900063863 911507905 835192163 917212035 443060335 596209754 487223024 960521047 87604560 817982084 699578193 776454740 883636678 956373328 112282471 415786063 876873353 909960946 777848851 794618391 385661877 699638186 254043622 906066274 585892725 684598887 807373777 827946279 630118922 885383315 589742448 956728424 480169167 986304035 829901457 927518133 683821413 870601606 393613862 775658245 227601611 231846686 336003196 562369111 910787000 935712291 678042509 952266837 566143301 658559313 446490230 607422862 689454963 985017377 660146099 765812246 551642871 609545715 330342444 869832816 97323618 651622815 98827429 187634731 221431983 860698101 879245421 921786125 823496626 893995758 668487841 793529903 950011712 986362658 986429237 987925548 928019849 972547219 384590404 927945004 538702266 951257846 709741902 743510563 949797322 971687720 454826414 807968128 685748427 809179848 267173541 283581709 745905590 859184974 243038073 913526808 38918396 131258266 24433366 672714335 49383628 523497575 281902647 373441966 758684063 918870974 702045516 853967301 157624674 512015608 880869112 929233588 10731696 153665383 111359375 447946804 85564170 183973199 904436675 918009596 168337455 364492624 433726683 558128681 506669377 731218059 262453968 272351126 993868567 994401282 553657298 592313762 335023046 785274698 26845903 242475910 617059538 844089706 863114093 933854589 437239698 821813730 187048122 304394293 725008617 905129496 445552696 863834282 373042363 508638612 383143974 963837666 235799575 942325956 673865427 797259542 798094755 967603811 504850691 765769543 856493511 912882890 438404600 751376921 176416041 824010762 211078486 630828509 977967341 983905104 75690214 177922063 365986113 646310669 78888546 244483345 909320354 922419434 875339268 926425353 856101789 980311719 874762248 906110337 420677360 950062824 467788328 916788954 710170697 991076677 134447931 373639409 940788776 956072860 813886334 927334456 188420747 681568802 183132445 828818559 577372651 591709131 3742040 353542578 59971333 446520098 754224966 807722920 835483314 943031137 975552419 994181488 15563541 380011222 605744589 717673973 178958969 805931524 537458522 748935718 497032882 602331467 826176903 939949973 240218339 255466300 271589872 503433927 842172397 912839577 388653822 923914443 850211961 914497023 870814476 949590100 592720671 618187920 348417555 706237089 170302127 599905842 265512887 435417562 835962679 872807693 410834986 484440578 445796558 996792977 413512404 563238861 741785455 989839324 778887586 836125301 11930650 402180683 750146576 766743287 345093932 834936696 271768181 640134263 518809110 688167769 607176589 768652203 585913590 789159702 152961996 870682816 52344817 167324199 398552809 946597300 246669146 872901465 944234580 967976706 960628526 979868235 716246536 893455911 580560092 780937494 160248425 487410394 998665273 999081311 267291818 337537006 554902870 569590278 419782751 492525997 578503354 700771201 474105106 788640018 499302023 912300068 233880665 791518386 357251634 432276722 899386185 901631369 15243109 713265474 807811393 911750475 50838319 232154735 765464434 855538943 426373873 758371905 647513874 659569596 744095935 802280423 114438073 719283429 728799161 798362344 166864793 441406449 242864186 256098129 744096134 811852399 425063746 711236061 909135757 948356703 387489433 884590699 253286906 655058792 724704432 915054512 28378100 137709683 284982528 937579915 929485430 987270303 809170491 950349442 681366960 872517506 234067409 908811190 614527188 827550692 366210164 954524754 883116713 975512073 713408797 835992516 48926195 543210053 337239193 368481630 231814525 802658407 832757515 882905066 841313503 844656694 112222756 556173464 153584974 775918579 431709401 786486276 962301002 969570661 775466301 942292109 994546571 999136421 51408412 403863847 961161246 977879391 893367754 942355091 461466489 827461774 469297201 715639050 880180106 978677530 507982723 686538531 785684424 969306707 421687764 673238553 467746653 880849393 700492441 811699863 336197709 785264705 195637889 206806421 388216940 612923301 156326901 179381797 957791492 969864802 772809216 931093795 392439659 957302393 702011690 959705542 665115932 702158439 377900408 715280093 927475316 935073259 565396587 716644912 653959550 817774033 653152827 886424549 676622147 992258143 163843350 816515824 74664995 951138684 784691514 797472866 508903197 524320952 964220373 969684533 544269446 722828699 448767168 965418086 872974953 981719840 991710877 998783842 15362917 147363065 834198562 982034475 189676826 354004017 19997579 786144872 240152211 557220948 449194351 730536792 448428991 762264895 697217989 960529561 327877430 474686898 583131374 599559411 210880623 406893127 498474568 924148523 268548669 518727990 891911882 939796893 306060445 891058371 780429725 947126161 214211298 541979618 444643655 918337986 986785132 993721865 529724009 859949285 887754090 968319592 674085370 703696451 325530538 702943402 483872899 865304120 427381675 615430953 493374957 533586484 257715007 306933874 931890560 987560975 283756304 846921822 255603127 451177069 212972408 638200353 292056857 302890328 693447581 922576125 232295878 562952849 547456005 921365647 170478358 906243803 518665119 773552831 408153646 640997466 903835421 996318701 381018532 876911150 350925391 444949640 284247756 819499319 166436036 482009573 296462449 395280732 530712822 807942605 365558315 592561746 396951560 942676619 817741815 858024585 390548714 990193275 60376160 381648943 787654618 884827943 556511333 962560829 245945949 919571332 131248836 936553230 147591391 702658490 639616457 702808811 967335730 971421368 417830378 892671686 774266424 989791490 402719697 469226454 26341129 881663369 177746771 211575474 157472216 328653414 782570900 919480528 224286080 502952201 736293558 751673563 344694399 932697187 577478730 711902898 494283750 695365082 300779180 931048818 553274778 600405637 634481493 683803957 962825550 974502650 148242670 450626513 957502834 960407101 387016084 423605223 384963482 863463685 370303948 648791273 96383467 605866077 948419666 979347690 664182433 686083963 704060068 746200914 760619520 979638995 399824048 545277374 147633088 628944960 809316257 894253357 565442320 648346575 582972772 734955548 366397976 633917176 730328207 764553411 661126755 821781697 711867154 816939598 461000492 949697784 30264814 975016001 834726771 982861632 692602970 968828358 623489009 858277199 353686099 576628961 782472908 952888477 72997394 912360345 879128226 900056189 713345530 744779918 942067418 967017772 844687577 855373687 305090486 672665915 799008467 902013765 844835998 869876257 33563123 476369104 221045502 908681239 69706578 731919850 880404259 955084602 564595310 650091387 151951254 253985268 373544236 905109625 299272654 819322756 149194387 155598610 379740552 596599453 355464735 708404178 618081851 797682650 561824731 902938443 791420468 890088245 161770559 360889126 952394491 960800777 777772642 979288799 278936988 609341193 736587637 779509418 482709798 572538650 797521044 916050344 952337218 998117065 429504367 617485990 307494144 973561135 237335501 522429917 403075226 867907914 429510352 904900655 179099484 825514869 995133334 997736826 98857534 916585491 151336980 221299629 844540912 873009568 43126833 261803026 261162131 521338333 65545544 329309727 321042019 620474778 166706515 635000951 165214898 928755470 9018986 161783928 266493719 352740380 897377557 991047185 366576971 708052729 939122502 947532504 42936734 209432932 986292288 992860521 308934980 917110587 745086022 956841915 435199834 744269199 437744090 973390244 250899184 545552701 340589184 820701211 876205731 967076260 29252153 564098692 901188465 965522968 935571677 938039250 158491229 563458724 8569443 367460309 977562411 996384370 421292906 658092093 120836057 339109420 916157255 943183618 346010885 852790874 100028831 296606530 959914091 992325574 259384794 560926726 351357584 672189293 347613740 529426666 671261595 895679349 95275387 368795580 608935775 855713216 131290399 946944798 40449034 272286921 305365975 577953276 640560149 741979815 600724822 619884252 326674844 658772642 665519558 846281724 961524892 994314107 264881518 533395891 903854594 936635425 987696525 994839989 872392666 974361387 322542384 968011029 328417074 426344306 995120553 998887948 295482425 315783497 647002764 958747207 765576168 969976286 105126404 658594735 321872305 446447589 609204004 900790012 98788710 628173394 820521130 928669884 28190332 295859966 460925353 896881775 177899799 654105183 705171145 778263390 719411728 875982371 936923849 954251516 701381529 877757767 266976156 461544018 954823173 978157100 167410291 198792937 740718239 770162904 743762136 787994388 898065437 967908936 95221312 823344590 362907666 729159567 258010379 355933952 370949092 407825973 917844069 983892327 925987799 953789245 802215617 992320592 574839922 918795144 551084573 603713648 95312385 768139947 788485970 858180268 560192348 809693351 21649848 143592827 77233275 837163504 81007516 351777192 488429596 861390796 662579344 793108534 826152691 864302033 956351355 978960059 866910665 958335877 39159930 352266454 104809686 778021734 181097300 511725500 244196175 592647824 516579036 607396416 912913324 956831678 995480418 997768077 893222373 993207430 301325645 754105736 303664198 524792344 42545905 790515803 235573146 906473866 891367183 929209059 226390700 463659584 667253377 675240039 274291441 961544856 753332881 936338804 855187095 856260637 659783761 705656721 504838749 580089482 269378693 456984564 968000234 980328471 586123287 692942751 954138711 992681564 874376932 881870872 351542280 553240880 926080118 977614556 57961742 787891211 112306035 119845872 88929904 720801554 863470632 935698864 608012328 777547385 354391215 870827984 653602026 951474265 430540168 950546348 166037944 468812659 513170683 762393487 200219850 753016929 142445108 143703593 357194035 733287381 645356080 796566350 858319586 988114975 651564991 893856162 697257588 735228206 646584203 823592376 957353769 976192885 597758067 854934350 789805876 849430416 547886321 738621877 152532243 984648701 66885237 726691375 549499828 701781090 627632888 894681688 413394797 570056853 836769610 885062092 252495213 514881495 523562772 758705362 248176409 891582125 267412345 393718828 545772586 612101532 699865636 714889527 375625252 848022462 94951588 221031538 996454569 997303461 121942768 184096346 258537889 739831157 638687246 776697134 284042634 591719870 27875817 741372955 765646483 794481306 92691274 516675331 53119029 354461622 413247658 947510994 873044155 963478675 789722836 947039675 840256148 931662457 901737565 915104030 435233801 967728496 12898229 245594429 874706568 961363108 96575609 272938229 403860013 706268708 713920461 838204398 849455223 953628428 287482544 474342711 487773049 607991351 723679446 970711787 924420571 949467065 764777220 977121986 436773350 442532638 627971576 859932390 959150257 977631880 617636632 894576274 846293763 983456312 983172024 986956569 633231144 744291505 928060462 971415536 786602191 884735596 632422989 741455568 580758001 773488753 930125782 945064183 988365248 993824341 514724015 973900321 318320775 487035807 822362271 837998933 311967486 606811608 273342277 780332140 836289408 890361063 404571472 740603764 563960913 873414192 598791882 839213408 400179919 467247508 831974952 947366976 445697610 525102959 904657398 983090854 137912007 585434042 674842776 854743168 807657139 880022893 57771752 330896348 885015195 988252571 825114518 853337171 756984889 981506556 680705228 991157650 283187848 348898512 965508310 978722757 3472263 144205626 71911316 477606491 545144534 607111138 883692708 908456303 409581045 769834917 71534368 81595651 169816651 885713078 921158795 952022035 609063688 802464580 865682739 920736765 314810574 786697873 621958273 751415882 256936493 997735429 686697860 978808182 827220932 860591292 19651922 505053407 852614045 958746840 703171057 767308487 128359099 131786263 448847949 612021455 292723249 813234792 927517404 965699430 469662810 499319370 284165946 683113794 836242468 967530715 689866095 693946851 862533006 977972931 665678920 773131782 628107301 968728198 639746496 947619864 886690998 957332223 611799033 714983896 214162773 866155825 546162203 725313958 153146846 921803444 38447075 908177795 705527821 822663196 420891259 891886874 296793453 785313059 708750185 818697233 166334979 823492573 137175089 803980421 652421999 982018656 244532893 968472847 405709978 428150445 184775465 338426539 348574588 438549874 209355467 984465034 942265631 948477769 752740520 821789642 490142044 843341857 253800309 735359978 44105100 501800139 310714087 370936519 141547761 460032655 736355514 784413608 644158993 819347070 874135738 965921695 1115531 629603486 699502720 847126497 106834719 597038934 625009145 910999415 290336 475827328 481439226 558250201 163886190 807506973 201697598 443098614 876326041 890779942 335153593 817145080 58531391 349088105 340010660 497394139 652443549 751596356 591388097 716689766 37435619 964878212 323748362 392988408 332773114 423545761 462605553 511119806 251625697 284003458 683138663 954514379 529890797 744803652 259855124 508966538 159557266 396527494 809590178 855975852 114044066 599912899 50741824 752400973 938525742 956887837 367369033 785461005 241901184 338534480 80198718 830318359 256264999 617611725 420351074 927433163 206858941 574612055 832582656 881159830 693845718 832490115 809611992 958847226 124899069 494605756 549258856 937760549 227786162 720010043 320444820 699400434 739872940 781149673 234502541 598764626 388793004 558485748 96113745 606511302 555760614 815665870 936338588 979825216 339143026 424236536 79404530 482885415 648319826 783616612 363463524 895443375 180650515 636667899 975053418 985617218 322130250 527969748 529684084 659459334 388745747 789809170 77347242 764304120 861705338 961738483 657851488 750561034 863924941 973322685 196301518 205389676 5749994 527509039 123728428 161306634 217688747 788788884 819842046 830656478 894446496 931434192 16944061 515592021 237153509 972193080 383258840 840222637 706863624 807247892 869089897 876092455 901525441 981934024 968150961 985936988 165873681 544277031 216474742 344498108 322175742 368164361 588837729 877299300 524805376 696415934 938127146 950860310 33433076 43672046 218866191 336085082 843472660 935715317 275917595 863528500 210142420 211671784 42900672 330754139 890789263 992810294 789562525 931714093 523719161 581103584 35860469 842953596 470520129 675731415 781897896 942775305 500534070 592403279 76691539 350761471 838147483 883814342 677973163 925440359 687741315 732887331 307885388 494781559 36010652 516355555 821077826 932100251 836734960 840293133 324535214 439320030 857784942 965708610 496652123 557253641 964606246 973234620 367886732 883685959 493592349 994011469 705191880 710539290 481806342 698987532 137695175 427189452 107641653 963525503 761560946 794322584 454663534 704988957 494328785 756844570 799277043 872898247 816850365 917142837 113840927 491587790 808774218 903233429 978200203 993924322 640473552 704226254 592624733 711056653 371272118 452099671 871814860 910032093 772471681 824453401 361888590 720867658 417717032 499462622 159789591 542459971 17415504 551666318 23236746 273617883 537482487 664237238 207753669 316295182 159753606 921583965 724891822 763731818 796365785 960873116 714134097 716896330 309835910 334770806 231034868 927707339 440639717 629657706 253387336 988150779 693244624 835458290 518040098 937762785 634988850 757692921 152736317 742973144 398287005 891586121 75251228 663205045 361246653 506503618 76299534 693406451 314960374 413676167 221009562 236915359 561271158 954739451 747710273 896105291 921340040 950550489 534352427 849182218 603799831 896270475 711086529 890421479 124415296 928342071 654160440 914283538 666112201 857966069 192925544 338527200 619642020 828808288 103996701 665439072 643298870 658120269 110999388 113642437 195588527 225169187 697279737 795510304 819003653 870765436 495038250 948521251 690106975 968943188 158033130 939558884 91890748 819868280 345459675 587860629 827498376 919493723 469720152 546769984 203506828 330250312 208188163 560934723 546536652 822311157 155838181 392991992 956772949 981479854 826433347 948075836 69371689 555906532 504242024 511491496 41834526 824957617 365601607 366822059 131350650 672240430 953546628 958723606 158855656 474015301 354909313 355973370 477627742 587722450 988993693 998574874 816258996 848407765 720964089 892554686 246949389 362715245 435944593 721781340 840325459 881057536 314273297 647939860 329585026 998423070 779781510 826758651 206735434 326568084 526542270 666921761 666693520 925779616 182320851 203299678 297061532 905014490 680213755 972367788 562469630 659920632 12756786 570849424 777800234 958753685 313652033 544371793 718425847 993587433 47991552 482779760 519064213 921863563 125107122 293433555 8113081 197690486 588027878 769534172 790422518 800956718 699915621 944854421 827975817 831618426 362811448 771558775 123977730 303832164 689058805 744691977 217859854 455760415 378753761 568385485 675012645 698837163 30740767 846625133 896680341 908588079 588511664 882274383 381486251 528308476 565820490 815318479 85662481 129633143 634356488 983471838 919089207 963518359 570451044 572049233 76201558 117067630 151912025 823709161 321714873 455090198 565002243 940908131 615629363 956268910 506506618 617816047 918904962 930619715 761570253 900077616 541868184 656108145 340426837 684525686 509448831 662890408 789550149 807435380 722703052 903991611 506782414 590126626 490431000 673198001 783525024 802593275 467160424 786878522 596889924 916910180 623775955 657690203 228041882 759198617 102165890 977512532 795497418 986899356 41318491 115291738 949644893 993524670 384344167 977451771 895573529 970499553 93924312 321951032 312871044 396953426 468005422 929429054 362609784 939008884 482039601 893826694 601341158 857372751 120814229 227271629 813126830 824583432 521420660 720040932 191625572 572469673 542511642 565317962 840468111 974541156 513146831 528048235 510717703 840255997 42740162 450660852 382188960 604637151 48980867 929417582 54875655 518823882 693397056 910233789 779229609 985185064 125102767 750056832 211488018 459574311 891828721 969454513 122807851 454344338 489676991 711269026 324392650 348148393 101845434 695270488 783590750 827855203 107897508 149563210 245047400 718098540 119261985 575853050 669568690 803436241 373641453 592377172 68308233 761188136 761872556 979412166 343576108 729523035 303423413 695681309 757322485 984719085 917761601 986171910 915849882 963635664 425266209 505201322 586064339 748739038 728659930 948681509 504668677 695644493 878767434 977267261 878274450 923279976 368418027 628504665 879029998 959428079 229812021 706987102 374831298 662891569 961571887 975060826 487361848 612106894 478697260 654702507 159664163 486311745 898987239 961949179 565129949 921965786 670464859 723036649 669623650 786583065 485934500 773412493 578731447 784213608 23490054 970115342 730571925 756562747 159883915 267861924 572067720 769111487 373720185 533103773 243090323 757577837 92862124 655757219 584441858 828966681 982334711 995721815 916118742 930763217 14460255 705644006 613840321 761035503 505631804 720382370 589472888 996260280 631968421 989352138 102433856 455052037 557457185 764787318 225630215 461075500 232616626 495865622 953108430 977210574 70238289 432283674 997227108 998391920 79864591 316371369 689193163 895776800 262876667 811112430 247881172 926955253 469712348 646673396 232254087 520007543 634440414 971121305 926336453 929863409 657091659 947407853 700480351 904618877 828244076 951256928 15059355 805872747 412202476 443576409 398334427 433618299 880963053 927271596 414498975 499401056 17384155 264955224 879989476 922900902 380897178 823555928 662502338 906398922 421285640 615003159 641039963 961572270 992349168 996931762 649869816 662692509 540509462 919915828 90839256 93635499 812614116 916942916 950983273 983488496 354043143 738605047 572604262 849962968 202663831 321896054 729707834 831451807 226565381 370558861 460024017 684965958 801339644 990279966 368442049 492275916 756900980 998906555 563770203 980707872 30059952 416522229 922407635 972963510 812060508 879483701 638714746 677985796 390026979 953010423 124888872 267930334 42852868 235531487 122991731 979423389 829161773 928121155 381598643 636475382 34656726 532969078 345753593 648724384 78732263 443817426 754257466 908844500 280982760 493156302 325948459 983818261 21574028 915206553 580754787 656747910 831031589 953640743 979605475 988497392 212843533 345855005 296361827 949557282 273963147 432033473 986737777 991433819 619290990 813875984 503919211 896227836 475276486 793168356 90574360 666672868 551660780 645215864 278338559 962371018 974815553 996963457 208081143 872255130 254146101 656406984 225998003 621320022 513328618 724153339 153026591 978399653 845144945 993150758 83395253 869528863 274724571 959906553 793669265 874053099 173611626 574030395 328066305 970303407 249316601 365003103 157257467 566602940 426669933 881910900 681565757 923626607 706005434 795774344 578612069 798134691 765319047 993273837 986482781 998519520 101505852 368380479 19549276 266673951 579308985 897286226 526948332 573743080 672263087 880029663 767944551 863977796 183100559 937532251 506508844 562782990 604785434 731874903 946077176 971452825 304049725 799585378 609865990 681525200 16250832 138476666 779174022 912211858 851034615 941153747 928152082 942997437 178347509 761845948 223272494 361578434 790681086 822791094 623147237 751046877 582526417 798552261 855903768 964717201 571182363 860596397 304518294 572000143 567246402 660118347 625360459 661332672 20215301 116306029 863671982 975501273 19744284 390251060 910826726 981582465 926270877 982302323 304905862 969450394 262282578 336108177 365223386 568639393 611082164 964691350 502701128 757098340 651041354 778161877 435880437 600688905 792259350 842867503 117699601 250083133 940241328 956370194 697354634 837104429 594285609 787743275 747998607 939599816 472390276 824350610 221706204 979052474 575070901 978086969 877511988 901650272 469871754 658121592 344790378 981480700 738578943 836252373 389768308 512878499 603596025 764276910 731648784 865102398 286886052 788026924 232654509 942046403 634387026 752403704 687592572 713678302 394704844 609948442 710793993 918568759 779545047 916397569 643733055 978283929 576282230 746955136 190526413 220889554 426019035 749839188 723353619 935940731 923873931 926013656 643626174 712662700 267307860 851934515 980501263 985257289 608209637 801795192 836112941 904877286 705900115 872940187 5228058 630622300 315983316 851334829 263624607 544324885 681981022 931970429 86450385 481704736 4723669 672085624 676982169 807345758 286233889 785396288 880028772 941172355 219757078 989107560 867549855 960990246 231675385 326105326 239314048 248849020 50975060 114477537 643168380 858588093 183657761 508488682 20498027 985018588 809153055 946840221 711249135 839980399 537158107 634795398 146586784 961405283 395455097 720894462 629182317 870792063 995138806 999006297 325151335 604095204 11604515 416940886 914659075 967517854 484243792 678303537 831199740 980658721 264683889 304592107 72838355 142593686 587521598 612640280 535392220 738631683 898142992 990024998 180373275 640512518 595743390 667554331 110974129 385768828 899448422 933733085 588289005 987254759 945409488 951832176 266836634 703990528 721278427 868521834 858494759 892212497 803141907 937459576 342206420 474255343 115178820 123027031 95088479 109828170 63557034 855538685 341115570 754488608 829987813 974853401 478905074 675149103 649809909 933501858 199861128 344036187 589145252 694283665 612467588 891708930 92192624 159092577 103149701 784165576 666402199 889497840 819732029 987763747 774117693 796057387 592396727 761435246 199270276 692640816 82145225 251048376 642877694 658618103 292196820 325390742 333413359 680100110 324226774 791481142 510433713 813915622 647961695 906155487 187386237 619041281 506490109 622321557 97222066 772383570 139306336 693885711 176951765 989553986 605126829 671437733 97543997 637026575 420517984 936482390 144731542 937441577 836607171 868123446 937533897 984061963 203455005 343173007 736582778 815134186 533469227 647008603 310766282 587597331 276830682 981947022 557419086 871279317 480437448 672709685 822716114 875826812 553042274 697372939 38347361 762387317 802987403 945931361 718575526 779369691 240287435 724882892 456626886 740717058 666732800 844022704 309102604 779591915 176702735 242640816 667824626 976376652 115296703 931084331 140236040 724614805 84881380 248594689 803473832 965154434 957016646 998691468 451256068 519307021 739777425 768946229 553956673 642886018 108399170 772959620 623946183 760314280 692823680 736168697 407165682 465950394 803839182 857914867 31710323 838607705 871179576 981460935 92709081 179522113 166189941 317900922 53723133 562452631 776916026 960083925 880028034 931955490 801451286 867942062 794125277 865212288 407466695 725920828 378147815 623562974 167320181 788013756 233063949 978611797 881053076 936961416 290852246 327610919 732585722 941318600 801511272 811621460 358001012 908526257 734934077 747905129 454276323 680660341 501250603 729202053 582238633 647644931 137096535 728871520 725071426 979381038 472682348 528356592 276051442 750560194 758081982 924325685 290045313 532030209 697315891 923546462 82006377 705531155 467392102 974072634 766704160 911863203 122516383 622748703 365507652 466821684 718040859 918594089 385056974 685067205 198160340 351089035 333648872 641447764 513010433 615287399 126685850 912443733 324208198 512141622 823746372 841145986 22729406 331909569 75573331 118225207 537120696 653686826 349602811 608460598 417011112 932747609 668392701 670155008 752197877 767215473 534375691 986888439 896724382 980924906 981506588 996766309 849869019 994954768 499254420 834124283 178658511 985557785 978640886 981218668 492735316 931138909 68985895 685043938 507386091 686923866 595594953 919240540 790992850 955868365 890066471 925715114 470169950 676831517 407141266 860417871 104549605 435129002 321022014 338994202 253561428 451714309 11833817 152865183 940984554 970380896 814059510 930244898 808526101 890304673 333625015 626154259 470828030 559692130 828668383 920335799 491255271 726669921 395996115 995302311 598199023 698971249 966028387 989869230 891522265 982092785 931453292 968083661 862180876 961814135 53900335 481125731 22141932 512946606 636626023 880493059 42000157 81906745 9586527 806665244 545787897 604746453 896991398 996265579 589966625 647921794 311779753 645864574 989631488 996130162 51370774 598111334 753651245 912562619 898646380 908148452 306129142 828081200 76694146 778726135 676231796 915105523 928401188 946544636 66825194 487405268 737279399 783159688 627593169 700981883 47463246 184115840 746576288 978644828 601116299 783308808 612693584 817515374 687878307 860499666 828317555 846905231 75667314 963148524 584618512 810295811 625549818 815588531 344558481 740452599 590377339 650865552 316632289 991071810 74426068 591412800 133235503 504398556 481515866 506064036 568700864 775096493 618435053 946818373 130239287 345450151 673961278 859148374 575102001 839541620 420887375 434375897 801972812 880895212 542513439 731565881 292311159 652359463 223326055 297081199 561062114 810042630 165230700 833173205 67698724 760925613 589867748 978738928 813353099 857290502 415749972 758624014 876636552 888195993 2733761 349671706 543624225 598902689 707311328 848178220 347864817 650029458 569252606 878129778 296279764 911453068 683854310 762777800 477233700 703416407 491461826 814521496 603903212 736538856 690650216 846049769 731078351 963173508 381643711 794685636 15106249 382191847 62000478 636321971 352644146 957448728 351755007 355234308 802034309 998940586 46060025 993240300 64673672 903996629 937852422 946895868 607872115 687694506 483707456 851152209 269813228 946957644 332227793 553920577 245988231 930908713 803650182 833264952 992274765 996681936 661393477 954182252 38210977 765296316 165040156 173891531 249300568 822424428 272652573 727297318 839017176 963473384 891454988 968974923 940078916 948089422 752263182 990699857 277417612 859728460 105117539 712472872 606757867 682476921 303737542 488698953 605622094 951451064 754234251 960225382 952085593 977401549 126508353 520114382 76580922 366931417 202960775 343639393 230027766 498207763 834641760 859766716 859736294 902956712 3454550 895638280 495673561 612029456 754816501 801593241 178884074 961746984 480307114 549565538 535415714 911552502 670033344 803703011 436869724 568138546 333522857 941553332 414089785 876443138 820241628 975331952 135197194 197473555 529761066 804061425 295139255 480200078 806121358 806470701 718823201 730647764 949035278 954498944 369635636 593252227 648326423 654136376 109326718 798718960 583147551 919616287 44224798 940751151 504112890 934880723 694988705 988947595 295210852 960754602 476837049 569220418 429716666 717735668 410574160 956661292 894170461 912556335 678732911 992460584 419526980 963138852 126991622 828188780 33987609 165522296 55704142 575341671 218292941 501497360 389634876 644535007 598601133 834276441 726935099 932497125 138040068 234472213 246886825 771529534 801028628 895191244 125329008 836067010 63900569 955903995 269584436 951928367 190454537 988068577 390225733 799837699 830015100 994667624 657967964 722131257 407318549 913226272 78547056 243454133 604323079 623740674 724339514 913919822 219036173 608898271 757970510 828986309 344484210 602138807 605852691 645778437 353652638 895228419 357219194 815492547 565673570 902960829 226594897 585781746 48037328 941501017 492922970 807450747 19453526 139826110 810774248 898000200 943289659 944126342 617135422 624256336 888791242 997748206 890648535 995369704 663598028 709545503 658533005 841943503 598177541 641961686 392685133 489979773 244275324 412110469 217760422 393787384 768117911 978978675 175529429 821548429 65547115 382985728 856531176 995575852 681969820 749781585 726831194 733239850 854344425 854702992 531013156 681498529 535782308 868703966 276412107 556763852 352860207 369577270 323496785 524483621 844241022 983889331 352487719 437778172 83833266 898449954 733545547 782704173 616857158 811788077 310318161 753813923 377296669 722482109 290374551 537209483 718498358 961098569 227399333 916220137 280264691 470516783 865752938 928310370 889570799 942416284 638132467 885591443 549441834 598328381 756165338 869669926 296238171 595497577 50032433 342485473 867286434 907923079 920566549 927919342 615735550 818484796 552705356 814256453 176458867 455994099 852027390 854096528 993383632 995846476 83126499 530044035 739243147 770608548 868940299 984624575 573429300 837792957 291695932 798724861 126506394 747452657 853088106 887760089 635435234 747975447 709135885 782871059 239105112 595071624 65186909 990626232 32233463 626838675 901884060 957987757 52366766 307932886 293105552 347951096 483660553 907771617 847315046 945609043 500300565 557136621 383494083 716873581 120981693 435262699 679019676 926013621 227152012 764101081 56776708 297182180 342451203 896901531 670913854 854600764 434444199 590390121 561955331 701896298 778578711 813877778 112245316 201247807 942688919 973153555 697837804 705347871 164729541 587780351 923960476 959207204 41153232 950886088 263928728 769727724 835475671 935779203 993777780 998376946 177331911 920339915 471921292 981857671 197845884 612331722 299200394 605636714 782094147 962043545 493013678 538600323 340307886 369613476 536686303 847687218 688802620 977977677 372386698 981170604 982567965 991991220 874303358 893267017 531551163 844422320 530232820 607870126 476966863 885756707 494151166 810932384 182302714 989502701 27162460 642738720 549703023 947822802 225613645 637835318 91211395 242986069 820095942 878483327 708279328 859090874 26307902 98429997 311259112 974976344 51058268 475252606 63145596 279468239 896382273 948403293 225008243 321281006 228192431 948236626 403435482 978159236 188110967 363255803 105526640 953915329 926644009 989633613 855387693 885102424 833062853 946070524 112480714 231506029 468851192 985933245 616359416 680882688 365189351 449166108 381210471 634417670 750768340 802258566 573411509 924841966 633049176 799477569 802054047 938741536 14685174 885061635 759521165 966415931 838062481 909634614 541289594 652733963 925270083 928951822 473485197 777044435 709277168 843084252 470347665 584691753 738567922 765159058 516183173 565747749 755971161 927272219 542367704 768390891 293883392 433069654 954430490 989891944 776497488 820727400 758852319 761194975 222809130 921280290 61998407 655541208 528941415 725330485 323664023 882626788 734615478 828724512 224454097 716433337 456380461 468979204 221293345 393940351 432072865 855598764 48022677 848427730 406182210 588244597 22645780 685861216 234022504 590857385 848305304 860157205 914592496 998002206 736457600 840317776 484099550 607988509 873113643 888298244 3581014 946417246 192856837 349752470 870533216 899924544 922110830 961486770 732488346 733594181 819816465 959718643 256638218 709355834 742401623 935225499 946406349 966057483 448873701 791431356 121980014 588488104 441630741 923537230 244907273 606888980 543570225 620167487 787739270 905329267 488504539 741640549 278129530 382360782 473889762 594378920 625947068 646468537 377921289 507976773 425867046 746438450 116689986 161577027 395107147 988966481 960722024 978521215 760261996 852822167 292128627 784117359 228166316 794146599 954285395 975369520 261975707 275225821 985133361 989993273 676751472 919883120 429352445 844638097 305849943 557028018 601997330 714182715 14858138 372581030 595005562 927202068 767788923 875459720 62437641 202005348 380870382 586893805 735650341 869233964 571491779 867384598 669054752 931305587 448837564 582561749 420478495 509056026 335064456 987034938 896990993 932636254 452592055 659403201 410029392 654791050 713633269 833851103 571240127 575637940 48413393 841548919 860881879 915338880 953180487 967115610 661695799 756519020 925861352 943396251 177483066 708959574 86908223 550062905 193109160 764119739 656347950 694881150 320698972 504149835 878824976 910202510 216952669 904343968 718072574 752209496 681409216 838094773 390964613 621128809 41072913 647271369 580548708 892795334 684090723 814412271 188531342 275647524 700953219 991356542 292485091 500508551 153556607 525782345 814886376 945153723 306113115 926290390 172796124 555862896 125473105 516335558 50391695 752977392 444726337 589557046 753540932 777625493 217730573 662014961 889977960 969960086 348914107 551609500 684661664 984343094 294717749 923317352 211874973 652506849 105863553 236188373 146626462 473082127 347882392 900739921 615290617 810326184 671528763 961666600 438766892 980594974 475221357 677878051 544339698 678150346 899078734 913110244 849857940 946128148 548520401 695842253 292304724 378144081 815694940 913189424 660702319 758666766 957306065 972067711 825730956 923581394 360070644 867755185 177769583 937280007 915934006 989632117 732112097 839760210 550266343 604630548 994277590 995724557 20996446 778953487 414806543 756047141 620871515 648496086 657328487 987801377 849602028 899168748 68982017 123600966 539253596 976571472 308417141 391893938 405553579 931894997 255179442 462890506 265181357 991128862 836462754 963387096 947850616 964252364 900756025 989156532 829885875 858564539 223325958 411254788 551129837 874361053 606390347 738833203 432551472 648888919 491922099 941157081 220579721 559635455 162995792 736049562 768121275 867505083 585322277 885200940 552553448 995128655 572724337 802010045 189694859 892942237 168532740 370917788 61143823 466851117 977193084 977280565 164883293 654914875 139659449 754225026 702761808 716966282 746856313 821695667 368512240 372356897 852496577 934806040 633570230 770040853 234873630 930139953 323800540 942036480 341230473 894436481 698263480 834820309 853575147 974645743 751896539 820626140 577343093 619003616 172342678 289576659 628460925 727798448 808430581 825423610 724250954 809245433 605372511 884588078 918117964 935577812 930172726 981896594 726001892 923585331 741378443 779624808 867787046 976503657 864867347 971259347 64308071 562596576 251248017 276795564 715887858 843293321 915323490 981266378 782277007 892777495 207755598 985902916 63824337 145805394 415436529 825660021 909259793 951292175 76341828 739970806 938018492 955494203 117485057 993470025 787831571 794639340 895134604 948005361 293936497 535576849 219082580 324835454 451952644 747132040 860893143 895458813 588277355 673634498 552423330 708276534 524087477 777910669 347612339 448140857 329944790 365118086 396303128 728916096 200851410 707983138 292399098 740099800 972699214 974180828 197586333 806897670 806569364 845059266 472280113 536791335 416121848 933045880 350868440 926550020 443910620 458678209 371087662 814583223 639270817 755303602 752802710 935006112 895983698 918416393 777672108 979104744 517960786 839921075 623734742 780237621 39184634 822861330 255281172 841980735 998766403 998891123 138247538 479686143 537652271 795218050 177608281 254760063 145475209 479233890 366962425 731063618 541470740 615458165 285417591 750186999 640372723 703647725 359667547 864439054 67025937 999344405 955084135 974319335 522639957 683753163 434041498 568920974 349919553 848833167 326565760 694964701 754521314 949887544 43211434 421316724 179823836 697148756 858787931 909450403 214316201 434106069 946244394 990029270 400650095 874739088 893995633 947941285 584444278 996865292 458238673 910558610 127868587 894292624 182004846 983664813 430158102 928546486 229522510 731113599 319406410 657587461 156190852 851089121 581421348 973020428 630315113 826283435 891783611 964443500 186781628 730129691 959590446 997953168 342185426 657393408 809301459 889497294 579444172 758450962 320498548 759549214 108444066 422475094 740091891 959723581 165584859 220117569 604399137 982507951 987145736 993453372 453289628 888379422 74108319 137449797 913225485 926188917 739556820 912733678 422203109 558293986 546203522 811954982 136379008 501543001 608955886 861221832 956976935 964408432 348108396 686739785 789279473 813843879 489718191 691974078 778273574 785342444 657328961 677483064 780669860 838875138 471645122 995024860 952476927 987231312 885046627 982724061 131271198 899541775 734827251 989440446 844174503 866530862 344146235 815605208 937930155 989189594 357994344 629298568 169719056 902208067 679322855 775614635 33027433 379306293 506385744 809914706 81005132 665771578 135739323 976411721 191508785 624735880 659118185 988825860 751199721 956685717 557729230 728386853 438476982 899422981 72394278 597658042 529204630 815822487 444794922 780500284 500395328 703406393 270279865 998661311 972065445 989279457 417788156 970982995 978371200 981297965 143867916 848570774 520830423 745851158 527641529 842837962 365701939 733231933 256470180 731834356 240126031 289141540 19476451 964633385 394892775 984368736 865856306 983927533 616679201 625520749 456922090 474062690 839929615 956758099 881054431 885064520 330244945 805772379 337178798 371801389 506348090 544032597 508579544 646670441 814748278 971276737 703811586 818051014 186112793 523500393 671606598 746578280 267585418 471096590 973704318 989836020 498931138 859130183 257880026 571624049 182607270 457738542 189262695 848218493 33930556 577768126 817390056 842194074 570943866 615903543 421796445 632151953 373551058 548498339 622985634 800259104 367554525 434840648 650784408 970261606 507866014 553838073 76372096 508138219 498702751 731782169 781667504 806630239 758306636 932950670 581791261 893834845 525962315 904240752 43167988 454726452 747329532 793896287 865828750 883496995 515979020 804473497 722651238 848810114 105314253 905540264 377189121 581123664 764209346 928063889 835740772 936406675 348011330 970152965 982518189 982867786 201697377 931026892 358287996 387970146 491311611 953463954 256861674 432076046 918022138 974779747 662663625 851411701 663481660 900633598 618656573 722460551 549746703 832278421 554013722 751192548 180690622 266434874 342946726 355093795 873250342 887352269 778676978 928323202 369127255 503733441 81944008 478447914 892910560 973616928 207932389 834117529 564185537 696912015 913453702 987638634 418851544 885346515 154099958 807759435 527738422 653014481 118843814 235662470 672437221 702398584 526674608 973596364 940625766 962056306 435852368 459194385 83122687 655081678 250766477 578450880 158533589 272633025 792634771 846718075 877284049 884340282 204293204 318498096 338072227 621100739 802076065 942634583 961358356 979319387 293348978 456512980 837187804 846199996 174130404 927869979 9092924 144863967 231940742 594235399 251719923 902465563 338230106 672551242 787577403 832645347 175589019 881423543 33235871 914754937 253894289 397717446 695173003 822446869 425568260 945737929 43452938 277711449 461207811 681737660 416043052 472101590 900249357 970014526 571792183 743682896 531448705 612317350 198048556 419276885 547474236 797043694 481950118 697122771 340078483 362425976 89169743 462248178 256765146 388987347 727339362 838306513 566980581 935580669 918913633 921140409 301807028 833960289 300249581 520535325 883032260 895040157 842929547 863785519 734128957 835466902 797115587 930829487 90468001 794478908 449984001 565980179 2745935 555266712 886034267 967024831 567625515 747702459 396270195 896319388 640153161 996374423 408239894 430165466 517558427 603953209 678060003 880551248 229534950 240919079 400607307 865336704 321379800 788624865 696125461 905873840 930314255 998029337 578942952 906039975 927365007 936918556 715293534 719578676 656095095 784331020 833160394 924986444 409505184 880694434 658760612 905114727 673741685 749915263 852757434 965142890 595066544 627412657 505297703 613771749 221698201 508034061 650582790 903795276 859060727 902596328 185357323 995838146 418883950 999209658 8172107 81003204 206588925 500141215 117470429 604984734 479016495 899026411 621514795 755252323 341289437 917407410 381635499 465638696 80667561 542245274 42933324 275436057 214579543 754529115 557554129 613901807 24367587 252940441 285236338 496148743 673978504 761437921 178370012 506071514 534365974 563022818 964494352 993745905 311027784 626375802 879563043 935613150 674623774 818363294 901258423 947918812 437022276 660824147 658141013 720033022 144119077 326770427 859083908 903899318 418582968 872256018 261615226 588736834 451198921 863807233 659567630 733570336 724387227 874083197 65691010 755482912 293017434 323825114 504664604 663870272 485612986 720524116 932665479 961895513 751674012 776402866 778870486 824706944 341053296 751964616 995658888 997706306 260912516 746151486 754186518 948641627 698098053 939812576 674191053 993653186 202670800 613713056 334901380 903480885 228603347 846152196 608280285 659503988 806300889 806820746 396907366 684942520 749440981 749980747 402396653 785939452 112012094 288879561 803560960 958193760 492582532 981437696 547532689 878096324 214942058 791380088 520400586 573640476 116272038 177227779 57766443 377563933 624463736 779695951 832755748 882475760 523178654 698418288 185261254 927288910 268779980 746127107 709823581 815892327 667851415 890041808 628998997 857518914 915036299 915153185 808434651 889953787 434202643 536603167 920439163 922920469 639554723 985001354 193728950 486603235 13697633 277495712 101621674 400516628 306999501 851594170 103647721 317074896 217714929 522413464 167919567 939964831 279903209 371577826 670907533 966685478 918183939 984858649 66586645 325502994 947081427 992925094 245528105 865323090 809742247 936011295 210712304 246424787 499309924 740430636 396576183 816831634 343097417 537703664 971215771 995142021 932436520 994398235 637201433 824207512 667430787 851719965 160280857 406863779 113672655 296065062 974237940 996092675 454973285 934631124 314276827 541372944 477642707 642813203 589071107 657775162 718541951 863920529 583971122 591718884 895336204 927932028 768486754 807403803 356793376 950627707 159405936 495789725 667631191 823564685 241626002 956012590 613338534 890185292 50823074 739465379 750715577 917223048 912695776 943620729 208336124 293907733 325832779 706364953 72817234 361970927 394219540 763275241 885379078 999344499 717202951 936652103 533820730 743061783 290543458 952000370 678736261 925496224 702618658 974207578 123229723 675248788 723653014 964489729 296291052 578844434 309663258 696400512 255551800 308142212 666986298 902673544 715908913 903210332 926955198 992141529 737664706 937960222 939397156 992938109 926425177 994361862 930162744 946819579 432069568 467633789 410800410 571594259 575532622 856858739 310448582 683389037 24416458 610178489 160635035 398577094 148149927 292975664 513378269 567779354 408789537 545828443 811335792 865700184 62338138 443826803 96876136 475487242 748301460 798130839 201851486 685018506 620821780 895966717 730299952 866958719 596513359 644802071 754681193 942466519 883894496 908545585 888657142 975031642 583267904 750543807 614032471 619598270 614624778 633570888 180288509 497284191 248959087 960188909 531784777 701723594 782790124 887016767 419928216 652626305 576019329 915157933 962123622 997608737 47588214 842927494 979558381 993602879 283938654 581090301 997311373 998781250 426158314 441678801 312991635 576927103 325530148 453054717 967595250 972863802 859806308 918639538 453809762 639046429 477428542 680799293 90244981 804379007 494315990 845683639 962877850 973480517 991998240 998690379 793065486 861478869 616859862 738914593 252558902 296950541 487597739 568707590 163249766 588107853 585980467 947863994 959377395 996534160 729413169 873469931 663661897 954879191 978614426 995921600 555300631 561588705 726736689 918951565 498194965 937490188 928279290 946147353 948884776 992736261 480600184 594264298 46836091 406126876 279897898 701349864 996738364 999033273 64203781 891088336 957653042 962437440 310376828 986851106 44850933 742617949 703709980 929118190 96396244 873764782 470913226 868521450 703388665 886843829 81282233 923580263 449207211 706155800 6293264 22015793 517251160 835053598 226722384 903543247 303256887 610257023 410760319 456942482 393363340 413488619 506733100 543176792 724613927 768343112 2318195 3447718 514666085 980270334 784939960 888676424 668387939 800591057 981867318 991719029 351152338 394657866 998925261 999106211 279993786 834176218 774037953 897653182 133017394 208464674 926152780 934014320 731082422 784768420 741970224 809344490 292006771 460649614 328440132 407964291 258141330 591260294 677416081 685015973 680550799 790492789 354862089 404009815 865142914 956159088 470137669 884023222 238511567 885333923 304097104 776779670 332643307 660954699 265150068 558367153 464182792 642725847 153073506 737767484 923071590 987056663 15250634 802018712 377387720 481628003 360740269 527114055 829258837 909431575 600742955 968769715 978897457 992146117 213666590 578859602 781307293 801094278 258359809 630351203 864590028 963250619 146670413 484766368 541366470 696581129 985528230 991275166 605610203 664847220 36150325 437740319 242085770 376043913 809865286 899761775 677087107 970794936 956530878 967065127 138688331 472150906 480529672 961584947 79611143 848357355 423188290 923562672 315296239 958317529 868112324 907883557 82479366 398294033 416647058 722689055 752733481 882383758 403545253 637274019 926093395 948360723 179364853 476097851 823444290 990730777 883931468 890218440 791037478 862508779 736998210 980556539 116331864 953714910 516512876 767380975 773006533 782941316 11971192 737548036 327836635 724079456 978775351 984699982 668930057 673170170 375712493 426137654 629551897 912474902 767243637 955022581 122367672 370015756 515721935 742342200 83068529 324921308 441431108 492500076 848572271 927203822 681843019 739515485 587770497 613703114 518814209 614381060 305543241 780894458 108338012 418322064 974630948 985456043 317791729 649262984 878008622 891186024 89952821 577576390 303463190 600547671 430155755 889123956 527963087 631697073 585603506 797238827 820247566 990669743 404826045 932610470 481796272 785617046 846098402 901443191 47729938 211652125 141220918 959806784 212471297 512165522 438852804 538526982 543981408 950618153 756186407 984780059 185675529 438107311 220473581 612055412 999298043 999371012 173921710 850428586 93811103 571859719 919025636 928326178 782195598 945054908 178484986 551965663 354432497 841510372 573251956 668298979 695814492 869020499 652957140 971269419 72644538 287487536 63621291 788384995 344440949 348171872 30036807 492020146 181898725 534876659 659783678 809452106 801741768 847978530 237875059 998511075 448591962 678611271 764793319 997249622 329065642 751027756 689418204 788588138 805355488 965293587 624241889 641949702 442456008 640930810 682060606 869443396 174547842 881181263 228821449 734424582 713958823 988796606 852126196 961380264 461456558 778549072 654546648 955056476 154739260 509030834 585051923 619202295 323846287 657543054 909856793 989887050 720542178 800251740 558701751 833496765 194750471 888777954 465591736 796653746 904959193 991674335 230720941 618336834 294363021 481599363 143728789 276282814 855474994 939789749 562510577 950681604 651825921 727170980 208512733 249462631 970307452 991172064 31088777 239971480 711722361 987883942 844723919 932621640 655565983 822142005 901256986 932214630 230389888 991971894 808690938 876686942 61013265 176877247 826836167 930950114 471899707 746456966 714103881 798321133 801004 852364565 630556673 928898982 370533878 932563502 475731592 952786024 730336931 868985542 683203513 796168061 309030452 756532281 228498251 599220045 849669550 969743148 695961875 808126489 437570277 674971531 657425866 709608567 294926024 308938441 409570271 744351872 464274176 587297407 391480866 606302999 57723787 772030649 924767216 978737475 471813429 472247695 183822058 632005920 837826603 985229869 825871569 929887998 725130922 770712898 560215553 705955429 930698711 969701640 328400484 737953859 868800366 924984140 164930832 694590162 47688113 89538267 487726053 528107485 410177883 697794715 810893846 880731553 472308924 714227235 670298815 967209790 414869270 657877875 607462153 772537789 303703018 883902073 633920874 680699201 56328275 885255401 638441379 937271469 685160326 980467809 674009757 806583029 980546202 986614040 12239951 406417540 946702899 956404626 682753214 889787168 608183522 943464822 145181965 927347436 482402465 486098805 954422707 963605882 225896383 981506752 604754000 979589953 435979386 998003242 135023892 790138082 67775759 994216916 320876732 632401159 529047189 783378993 171861683 226945640 810715683 898879271 137409844 272493070 935182682 978919206 76017780 681645894 805363280 814055987 509767737 560314018 650202077 703378055 76370286 85379856 581828479 673987377 373054730 530718368 735971535 808441425 340439033 814013264 967807869 998372087 689283369 753869398 277277845 892008512 457097422 896979557 575124207 868405411 505129177 884409770 304326738 380168063 413951263 613423001 736760189 757121563 504751446 954182088 222584789 470766788 629186283 700400611 196920 977435549 784985699 836694586 374410790 950267194 213991913 591854430 70884709 563927128 85912722 467054481 263385193 957596595 728339303 779536101 495359051 681126686 197714577 395962538 254458380 575865798 938233886 950740431 265415692 875555175 428693075 442176719 626396009 967741946 509731964 672221887 836926313 948343773 864759553 934342994 838665355 874258481 303516897 855817205 344718732 539337191 233888818 492249014 456911650 649476022 33903210 267139921 738704632 980470572 3628069 868862146 181696255 972655762 9000612 721381716 808599347 882136443 950350892 981527482 201234335 201528608 372898876 655215418 761009782 785387982 124425324 995073234 562736319 616835771 146913700 465021926 308518084 510940326 606773632 936173555 528869647 917820172 981302576 998637901 829828087 971113287 315376767 655236011 230170687 331431351 289213226 380433157 169913652 592830569 399562421 409706748 102250356 462527751 304814410 563457141 194560606 530192663 366896532 507725978 437046019 906513983 802034064 959762675 98841873 111356425 86962180 574349315 491610489 715821700 959455420 985319521 31326686 918716396 911977555 936884830 768146855 857943418 104671885 781590131 957692604 969806174 388262381 670848088 664045382 950991846 343180816 693886719 230777514 816234737 113556043 761473483 914409330 992863802 309711135 732626184 199670964 409802618 246493205 947334518 371078 164453448 553532558 791473635 117030126 793426203 339925917 792716644 630371194 845724285 33063665 232858922 503399803 631966909 997905331 997955353 323327356 352513030 536347317 841230494 997533033 998021381 4526936 802692069 428186442 795600522 736782146 903842191 798679779 969394152 546608750 765278262 159549928 773734521 975674922 987516818 227468957 955370956 285560174 734742063 352678383 480215011 505670296 595923218 331572507 582962844 13124662 989330302 672870124 882027169 52699621 342160113 275931741 813006863 970515638 990788746 909049468 937920618 897046048 993809676 242334592 844121867 390478208 598553475 464972081 719059465 204215549 325843475 424548125 942632841 508132355 764743776 402061400 756743088 674382052 882997100 296621791 830772550 129311150 430659190 501970965 522436094 914039823 972607135 864433448 971439188 870043953 995225089 979484367 979593044 841339773 921538487 133316688 844348027 86739280 595146615 871718786 911554679 603762941 717834521 790523498 982745758 955916886 976006187 532712106 768043788 803724760 968523136 418131767 450269671 912023419 968953315 108860179 371505263 468978508 506027678 550363539 568812350 773789157 948530231 500487832 517163614 268112091 459615314 827307081 916617384 807987720 857199589 711461384 966830592 160139306 866632763 298900659 860805020 797594215 805206796 228877580 838470123 342319190 950247037 365283728 974489107 144190159 656053663 116390944 331265051 798636848 914442334 233273226 660161810 403486247 446774664 300122608 983092338 329080824 513388089 524403250 730528191 662568786 757427103 144019222 765856967 285354460 871516969 479999934 933495085 828953874 892467181 522833674 741078583 523384810 816695516 547909746 895046429 284334704 911792302 633379991 785821315 594493260 940333927 752354229 908050122 154587573 189829418 401169085 803530308 353167905 955935498 532060171 936041430 171470043 723447000 445751935 607170497 150672752 437174761 639153022 953192595 166139535 893472284 790009648 852259421 515780803 785639372 965362967 985893352 310740120 882904278 734391318 754697560 738851127 950081760 394462493 838072368 383386959 686291165 85125550 422584835 108304562 968275139 707514333 797620213 997690208 997699805 570864776 768759358 833584628 879458823 661267965 761097620 624204099 625465357 950679649 967435922 299725038 631581727 337519017 863481158 766512270 833143145 332816896 814440410 910225946 912505474 208850769 755291889 389096181 917230201 255725888 547133222 564422292 709682160 654751007 829296222 775259926 958990815 195474868 660251826 595284324 755579720 634270905 835609550 16829471 419875631 349720063 684146712 341654481 539459265 605884842 887775633 385336614 559423530 79766657 891223822 314532367 525327968 521904101 571599560 856076749 971940700 113067744 421268901 467847868 810010608 209109089 232737917 249070658 317642148 434789429 817590936 137769672 790444080 88960885 613530346 615819901 841677514 860500336 949107808 741770895 800281760 617570756 699129611 23622705 639559226 572255971 678298674 847142992 851033351 118555162 178560599 857645493 979652103 430568652 698210724 27638919 917277238 505991405 784353181 707571807 925529900 697520981 744948732 992138236 997653880 77961148 636507312 69341420 852528377 120369582 717083583 660881490 962219779 63509147 645425700 762320005 801361070 837532303 973186819 547903216 600642897 384819367 875286815 917757089 977180741 967296012 996668181 139305979 786728893 857227891 896903743 774501366 830386491 871507673 874892721 941488519 949894255 762387446 792667214 917465331 926429767 991282004 998925840 519565411 525779532 591243304 906717326 215322968 552962913 689343666 799920591 639785981 721390290 982328514 984184347 682766395 811572993 481620209 826200109 570639770 996691796 742324995 925764857 156641948 853682368 444501216 470271301 722808168 743834709 566762034 958642050 218475571 777225000 724576139 823831101 44871723 951751665 360274653 883545235 508856514 660359807 497522005 802381709 80999526 254509609 852229715 986791848 597975424 766706894 586845686 785418755 998553923 998568567 450151536 628112283 602340990 745705625 577615445 733737125 215592741 444772378 924117742 955437819 251223440 255529752 446782359 479303993 470667717 491974620 296518435 919004022 174389506 704172514 810072692 867228332 958396690 967013033 961784883 993145643 507905845 643107198 728292517 847383723 420856451 634967632 392597847 966567519 160085357 443983923 551128431 771580066 889595548 955067415 725923948 805427191 364455692 601119395 519536566 735048861 708250394 799939941 451731781 513830706 754628507 790364554 825500164 850612981 31103838 268939913 596443746 984196247 20939563 207622708 479741711 505280912 55704424 511664467 25174077 649776635 923597143 946896969 172142027 525092003 170896183 726957384 303698622 793813532 337399103 874247685 126030901 180235513 796811543 956512944 944691943 946191995 700806682 834914618 499134456 664396987 511289091 537247019 420956624 887163582 79163263 149975184 927067311 971065225 255092716 747477756 376793730 831421712 332601398 355105877 575988905 941466554 731643818 838977749 136834776 972787017 441714583 776220799 735023364 838296363 138067533 405073866 514367722 607553072 758473396 835228601 113508441 394010971 982948930 994078358 897022454 930174429 449292163 899910468 15209297 312628866 344402469 704424842 644894890 786610598 68270696 114038037 173085752 836323030 189969683 548918080 52006175 362855245 110240665 523543442 829036958 939688159 946553668 982016041 306310889 727165663 855510052 971884570 508181463 982285427 461149859 967219592 586446153 732258720 23478736 211298522 749524653 890710844 479320446 726921797 952572061 996041833 612987800 745471372 878901046 898193435 10512554 136974501 291633202 631995253 49286300 809970054 398513837 513143223 986496657 996381500 558542772 814456689 393659062 747290424 44160813 344097048 89645193 630296344 307364788 909000465 541828757 850512133 463335383 612296165 264325644 355078097 920791969 929718442 769893979 891716699 757736200 983695679 445156689 552708624 405203907 487400294 622288202 950108471 606549205 709075293 532724953 848484151 609723055 771636261 59645066 876760942 429844814 971120874 551886136 898872606 238283975 524285572 244513457 865640775 945583904 962579968 193941593 765200057 461261850 761611907 902684953 908842340 597902720 617117904 845237728 921486424 485096900 546745033 165194224 803528410 675688451 702780881 208075428 212966227 55301102 295598618 14241816 72612564 845928124 928186291 899718164 966484538 492682806 982147157 736633283 750103904 842159903 972303599 321936057 890671331 845942908 956189920 933718290 990020186 473287549 735519626 103278172 963288354 540510002 591682447 929289241 965681667 155736183 583827134 722197708 735623203 458260052 587949558 97930209 635855630 81855118 436123922 623190599 880657569 238008608 475594179 885854506 976208746 631484789 698872925 682861816 965422349 389497886 516205356 337621447 595566124 724254026 839115056 145065461 489454150 5443576 50432714 576816743 906460988 610496354 863984800 142415561 608987922 185574087 522962580 30961973 42282655 506671252 704034826 165901531 173006389 475783986 742553143 876492594 887370000 182880799 916221323 999390372 999392291 697525530 773735748 896113958 927708008 662005373 989961298 394153323 420986713 641448248 775805939 262094145 930759367 431819736 439382416 42874271 521270499 722596706 913977476 728699106 849495223 893090677 972010837 858529460 878716041 946111369 959076876 15616700 273365457 510912300 547001587 189422458 723451020 843508209 993348683 309965503 413314508 872979449 884529104 566030526 586303991 738296064 741077027 975755376 981594097 821140680 878555726 170898564 508153426 414727259 462884308 55814919 168141872 828550163 879303032 963739308 987194102 146949809 977345985 350171193 938883475 597847402 857013761 111431273 279248935 392965951 910199347 14365341 842182730 567786934 875914416 492590090 740647325 64128244 784053994 997324762 998783439 767365398 810348042 896234311 967375766 628125458 883991271 270629805 430783038 783224808 987516771 63602615 755968335 295300355 501843469 174477855 594861940 223561996 987991478 685160486 704989812 440851733 641668136 674174963 862024059 783360115 933197565 9113500 586618012 604907485 764601585 20517627 435625526 260241781 373007615 98380543 153589353 34790743 881317594 730488083 894692067 433310926 798221542 539505070 775066344 731924770 856898325 330022608 877913322 475735532 756935943 351783535 892179953 307448006 848717774 46384330 916163139 31642768 375760020 529006335 789988685 573733664 856431728 907519782 999269753 16306186 342943125 124476470 939672692 658697362 879801383 391466878 407415160 966699667 969215375 269652486 909076518 317829319 474223781 217722788 918185389 67224758 320434392 611068321 871574676 193471286 696885498 482968133 990857294 321396187 351435022 482569047 559889161 31601691 881629887 920707940 949696656 154258942 297134349 21188642 635678101 4703524 735515069 727239592 864344871 782161139 872808466 756956885 856098143 776188166 908403771 450985915 756168902 307095157 529341710 283942762 713278910 886478134 956405298 555750261 979441392 900084705 995142939 616754616 788422106 848393217 881764882 729889547 975803401 262442546 839198130 958060830 980408225 247550597 826594238 868030125 882215743 434000334 657745234 835325682 947576118 311557156 557942736 476504861 972275398 251006971 723255879 866951868 933871599 802417252 970595175 881334940 890043351 660492192 736412057 21419725 30728896 533735226 985933951 776604141 951955646 979657789 985843182 808821397 918969140 249598781 923875797 952496736 975298405 622136534 719371974 660295998 665805222 801421204 989562207 108107031 864503464 709891025 924915253 328878969 357827826 995206002 997982282 420807373 663139515 898953222 978781130 196541577 497061123 824755671 878650573 252470058 297627269 880577426 902655830 966198616 972159067 893701367 895287965 319217731 725130145 625647613 669177393 354429496 569410696 142328267 213059402 738120542 927104238 41012038 686130173 951373248 998639726 816818147 966605738 698684186 970287633 173600520 487489727 863438535 907380762 329671214 947857521 15066435 926860775 731431008 907410814 333385733 883436896 884550319 896744205 356113609 575321645 872643013 912689621 960193472 987990403 699270027 756914016 639289899 702452213 741598933 934324639 134340270 703569024 739372936 904926532 487331892 605013438 867145523 901047578 841978214 883700156 206973511 954333943 66496960 309526671 863017120 904865739 677139785 792094073 825449279 937031704 714406537 950662981 725402668 743745847 622797352 858522927 395177321 820328018 764010863 795046434 717483814 740093227 973910542 985708987 432738410 897014331 641152417 682453900 439084764 550060374 986157872 986422852 124625855 715701430 519168728 712348454 558097726 674460998 869554397 900702111 24543750 332977875 135543650 633307325 311547139 820593605 616526411 982125981 687688675 868852739 963441027 999084111 399369976 466857573 993378681 998487499 559480598 763909711 592712767 890222115 926676716 928165508 551422997 737075631 97478486 980633616 486439419 605421288 50350274 507363867 507561671 750900596 378401135 666474852 308449814 595923502 116969330 250348300 789913372 885336030 308358152 765233164 487504143 558559320 261380692 441392247 922229469 981819873 1728794 506116146 315151796 331788356 841142954 877637981 877881693 890888342 861397523 932239044 676322500 861770018 467188622 974025733 761830659 768076814 636636553 886921269 584728707 746241505 34800152 499567869 228899678 713713187 411159308 658155995 909055159 930693053 743787488 941895840 937449806 946416795 90010163 917529767 398780658 504277709 703070020 912191325 504639401 634136438 637833038 864153245 8158664 421995261 823143550 955405088 342322082 823960823 933664909 987643576 328573683 920397499 670360258 800030223 139971749 877460416 621709960 912765451 843852540 855995686 585060615 594818597 130051944 774626241 346753216 687360468 458319445 660460944 533881440 735420387 405717471 913264603 717884866 950088666 403606663 441288828 437519913 843191404 974555524 979356576 296778235 320812152 15750677 963308174 58795518 583672703 131074451 938416469 89129237 968950763 41806099 446695570 741286827 902535798 257998315 923237450 196050087 777218314 457500318 462535565 604251798 725134897 856870444 897130616 475251293 618007902 534316854 574133111 847780868 906075340 206564402 241783726 130125493 928179468 282553200 874272253 350104522 417747834 513662829 888439501 426189426 697209600 515353140 920138760 316519980 463570038 764572563 912034816 277413218 816641324 116032556 462652063 405750889 487099192 960682800 982321659 444754112 741233653 408111667 959051316 91151718 393478215 989569595 996538677 400286421 768282555 613928647 708504874 567193530 727184242 697106168 802117613 884118610 927780113 688930044 825716128 490660626 641251136 164012412 459928959 322320289 988701703 710825033 875046848 392625860 870100965 978715313 987215548 82464155 360229304 651944678 673164423 760087138 829958106 807322189 882979686 741419401 941284392 252022494 920984377 30306229 993553896 938477629 953337297 860101051 915206349 917990403 936234384 495045369 759698917 85377732 147996388 620022793 967511576 980911143 983895665 434975963 483012532 552336215 991295915 165169322 743750959 458050181 559606723 695569587 951536915 233830339 700452919 784733280 977681252 659236296 824726921 228583497 865242910 38106363 757517345 835889292 951772193 685022802 847625814 862669019 899400169 898292098 999227321 985178418 990654733 6907535 810614787 365647238 977156634 514238968 777665756 579370917 591599564 146785239 495104659 24954434 621478839 777019044 778810665 189782950 216525946 859075337 992994500 68506538 743173453 260650215 581221316 596445221 736954411 864826565 919585479 725694379 976562515 554880165 771297671 709569528 831721821 845876775 886201030 389071717 721441871 478031151 989598894 195238684 357047045 386577803 682600984 266314433 848887421 856277393 909009167 803106683 936644936 135014748 216757011 161241788 521396841 249485217 647148921 353296363 989816003 410491830 765884996 458119849 807763304 544820717 782421345 753826997 980907802 1168636 337837638 95029020 394279233 683119133 921328508 7426304 23960542 578843734 680036300 294435041 483070034 433348871 995344607 224952825 770308497 427401283 741545733 796820475 907781619 534539968 634742993 351914354 827603141 68900965 190435252 967671898 975486981 540054540 956174327 421163682 767943996 533880996 777922191 203428858 511392656 490760043 999322119 661419984 897882069 597022364 624995532 111477679 608568209 107600445 696061629 307648147 599818607 612821553 668042099 960233181 985074637 13351934 478764815 530897476 547826642 614503509 881844048 89763697 433596336 250979409 913654227 464737977 726388367 297312553 902771474 969050113 976489222 508614928 807076485 143033035 415464282 18100968 91057882 705834322 920609458 140568368 558555587 758649369 829577944 571466361 633377724 645729735 835803411 133195957 725109073 580948923 937927605 913321436 959794472 613684038 767419020 20642183 349018294 70023003 931688262 150151058 924366765 706966083 865132439 90442604 889262806 928363915 978888616 961279299 983133786 650774136 762088540 451748816 726275934 386365792 714370664 181786313 901852554 688603116 795900317 714479777 721014763 234832123 528312382 769157956 974857827 354975911 541125278 191344581 251050127 429654105 907599717 102666817 599497274 489593865 805414257 147426318 235736702 361602106 876838724 817123709 974026495 193906954 761042095 393408497 661470399 426361974 445551814 795981035 987546958 838000114 978544548 647500522 976995314 781519581 887320444 508479008 848198523 461962475 930143246 906468169 935335178 477765320 878586937 736563877 975500416 552045615 877676473 548218533 643797390 55126366 497770296 426835471 498999479 151089439 246001797 170819850 391333273 638635672 683960769 708552618 862705853 495797657 579613389 322566220 543810217 60099839 937285578 492787060 632258376 326786926 327544063 718821628 918109670 152526575 947733929 505069155 573660225 968046623 991020279 33148898 235420289 698745190 709047784 742682849 930803622 955066324 957276150 483417695 578203545 172898267 629066422 772008781 851207843 521474420 913573923 130689651 920350643 93343328 423601861 694047734 714571679 773951830 844716356 686517644 954919808 487621047 962421738 70099111 451141224 394927161 549875038 545740688 632838621 890660314 962870307 775136822 989482914 317073766 700431644 896628353 903342031 900817285 971286004 882235641 889495447 521276772 950446284 962388545 969633955 453460966 616960455 743580148 990128371 560582326 601024418 589575646 965305217 773858667 921552233 138354986 228637155 984172646 998902079 354150133 946642774 646337288 805869887 805769927 838244770 366505032 676414437 395111392 670646735 22534088 24768903 678314406 839461557 415082369 858617449 851547731 982874834 10684731 514881978 609759810 666378214 419390406 778807656 701125783 800647983 893855141 946662766 481073316 928089266 928045642 977258393 993299346 997415208 466222697 945733587 233349784 258856276 943674038 967034577 616497840 938712018 914456901 964996934 980623788 983070125 807942902 988137255 471064771 795779858 243733595 726655752 919019954 973852675 363130231 740617828 955210757 979628557 843829460 912151825 653898981 669089026 529960563 959194128 329911895 993256334 630039227 751901630 301078834 842198940 266687750 358418118 121732994 449807666 578656663 616636439 983289370 987833548 449038687 564984990 936946524 942089476 490603750 806542706 755627702 933993842 638393227 758834825 209727659 839047534 539342205 568883419 33457710 701205113 526663001 818741679 659046991 946304843 119280403 474506414 289520988 876191774 39211367 723073598 532084077 806648315 172826273 249541422 827668925 991574159 877585753 914493855 944642438 983339941 793906041 882460640 41419933 884241902 135314743 893871754 133921176 595339860 509473843 850139759 356280871 861951417 442492510 795153069 563311752 787100289 233085672 275854886 451957615 868088999 926034083 970716030 826341910 965772037 318306862 667291505 697511829 943742255 224323194 616220722 571204845 610353876 233429193 439880659 839303396 947287009 223936173 888006493 164797362 796305191 801334426 884924036 466444115 750522400 193947187 705218899 556918487 907967877 718288249 856381379 877151641 927012232 794378964 983092868 850471464 867075775 704380493 940638594 595192292 723271952 965917623 983653280 673973532 771345299 472341119 733269798 348760985 442692493 403161071 936391130 457041253 565376359 381304699 542255076 203340799 533793505 403890800 819653484 638001851 701326360 927295787 931277157 675886556 882765629 698652232 855124767 102312450 285485043 72293281 399557025 851687854 884128419 221996741 227744824 936596569 974835533 277143864 560778535 499518849 958292775 841234237 906639145 567037992 957319346 890439914 986267214 597558568 678108301 294618155 689381256 588784755 793702640 701795228 749045988 616603595 851312525 229467552 429092924 608837435 864044614 397657121 922347576 872135022 932812282 99750551 341849054 143585094 541631531 348650487 923300200 921682242 981517776 700627299 985656007 444601036 569931761 582424085 702878812 364413316 986767596 670661669 671573860 336437149 390422437 866884952 893526237 862122584 871445201 527294269 600256374 69664795 197449857 39450456 792490385 370651865 616282258 278094008 599757331 529697902 788207837 575137341 821947042 675099690 945988560 146471860 777919251 675250423 763826247 621236020 894324949 61082804 580401780 3374912 963087151 835230603 955873717 996601342 998473956 375861815 409213974 91846052 395217872 578354203 585377903 153861798 928491770 463688326 983646650 319582391 824967578 557762462 865187250 489934118 721220865 441269642 473178278 177254004 460070945 699167796 996505449 900433384 992614574 679853383 749336574 431309042 554495675 333372865 877196692 849350958 993233467 19018532 907744841 546242068 700068884 258815557 778380780 8027233 536022029 279336824 755884889 879138147 959517950 658889247 933910606 595554065 690927675 182502120 299831584 313741637 460219054 391656845 704267520 285681892 754230724 433335474 545086788 166433837 999292369 609537160 620890341 12922411 405445588 709417916 841336435 313863622 788986925 306616061 351041292 564717470 891986695 528973389 923186654 510317435 539086806 386728998 567919369 273469579 340264117 678712873 684655970 287986956 930317075 601562511 993102428 719956327 735511767 318594481 702709900 415885848 440699004 7766796 336786406 742176445 960977756 906254122 911349335 520822990 715140377 607564666 904941306 722859303 873494162 708845657 718903658 885431635 888418641 78634847 208199010 333958805 962960178 87511255 146354149 419702231 449666017 123846285 299732995 895191599 947363835 276777292 795777844 186762758 630277122 25709491 765140049 139286168 770665548 616112788 832219102 394675599 681505045 115691979 244864371 889394269 986401523 172510609 676346956 984678347 992318592 504903973 511567651 920755511 932004492 123732022 313711078 748986960 887593152 839718124 859738645 93682361 842120395 66590084 769169990 675485441 729764058 79404362 281714563 511431933 919375420 967091356 967460941 485380214 509044469 95197297 217718018 129947008 730554476 347062350 488483779 590859960 731626835 453534605 696759687 378256833 964719356 136702241 211223677 590256359 787398924 426407428 984174221 155218758 181812638 63577754 608258657 65231730 964686579 371092870 735703978 7801670 501973633 328038157 462606698 981947947 991327405 167588223 877697468 150705539 156083722 274768078 803741450 483602775 630994504 173010356 589088813 28132963 954828711 176971212 609972457 246655366 671649619 712789031 929695297 315377002 597384234 813683462 901411801 345812947 423298696 897211178 967383244 850167524 989430507 630933560 956823564 55594905 67559015 666270685 780907596 966029483 987452271 548063742 815644906 181460358 539160940 727227842 763835113 215052403 341784937 968097110 994933239 764240973 934568955 219984437 683143917 144374068 350793837 416486548 466620387 504765610 843008624 963732082 996335423 80204683 644466306 531632002 556709590 701154733 990106850 433139115 669273028 24744370 473465539 37014574 196489522 553974230 876441423 579280823 799071542 425070596 704894010 150449426 599359467 191011802 539839909 820450485 935277250 299306922 774653241 911627612 932280591 86072539 992514521 952137882 971473632 719006688 765137434 422104270 986057429 836644173 977221797 727614732 849038022 714460099 959514292 611325080 637399837 820119885 875926064 23879658 835340295 372437602 906976217 962160769 998409555 568702912 812570666 819842211 969478460 46118345 385872604 107222571 682365050 960557578 992093819 743664223 878435650 874020829 886737150 253945423 978878717 341659873 567253256 335605068 365319613 766484252 892057431 651840614 677579717 359414548 838094989 480407863 520266128 273766328 282632420 340504546 681250153 978747681 983090620 991234522 997172585 575203789 744958158 815341960 989340090 45138749 360202281 674744029 776754442 101181100 521401311 943251092 947542630 605475229 827422464 636186133 811057749 531283181 707448677 337588475 576063938 296096120 507067408 345059390 383648494 958523438 960141393 178150417 889738417 951622471 994534483 271597145 437233095 397459297 639272668 591461844 766655470 595473188 716896147 284063429 949178214 507898362 889320686 653110896 728021315 165000112 290960334 697577274 866111905 874234811 895632981 783415847 941625485 403763521 668590409 569400450 875240826 997204359 998609868 585356869 782075813 946103153 952325147 819290778 822353225 237036860 458895214 661353595 949463305 311417656 618124516 287136248 344574700 655753710 910860124 702910401 922636548 785490187 876189622 937423794 943321971 618203560 662352735 262477122 757806716 695575588 719403334 126145980 343343430 952343262 992764224 3078679 575347749 692788452 814426715 699619005 962493432 979700956 991985031 969338936 969343484 559056864 701380637 475764848 949430783 173780068 738869076 202885325 387843360 71719953 225227413 617656668 817746691 760791923 940904463 701544306 719141585 568371729 746573184 528166918 593452624 9446108 883472690 102633982 673286375 719855942 886719533 967247599 986284694 841599550 983036554 800536711 928289324 416040815 596086280 367047846 544107538 614178411 679802233 425162046 955958268 873131256 954990686 16829512 386186384 791739292 846646410 961267566 981190663 554985606 821397095 496217114 940403927 995368014 996843829 706666404 772686284 328841119 863133312 930051513 988939693 531589450 646211732 423797386 821403636 496924908 811222167 365949846 604761082 772791614 868692606 313537434 634309732 932882264 999361672 504013574 950777926 411537355 835277823 642819816 706879041 568873083 904454509 751468012 934207438 214600191 468364560 17004814 806853951 779578308 840621777 348387659 577584282 865971551 954550732 391012244 957591363 155966703 382573306 609262885 739900070 129805723 512480612 713288419 782901875 173630695 932763360 763495136 881125641 913700858 942448128 344952902 662957439 689104752 761941265 768243591 932318043 429747993 531920616 996505013 996784441 208182667 947488153 583183523 908921270 437713862 831132557 148905953 425964774 502901227 880738504 996365746 997450495 549531292 742238641 941470321 947593519 526804527 814621533 397036778 863099131 387990308 707729631 683229995 775350702 580769602 727832786 8616131 318517191 204747478 281740657 347944226 583865381 453653939 520064337 598047069 649015684 201409967 354025257 892495162 974286590 333750241 796360916 820953698 917319422 129784334 193200385 80713722 250312129 379704503 534474756 520262517 771739994 251474009 602052609 310488064 411043286 279533230 299355120 647110839 796557867 272406550 487670403 968107890 992259352 6285606 545775022 746323803 960311862 211863883 751853629 224192644 373953602 807893904 894573761 426963504 832882572 81386714 407030383 733177619 875935315 96794187 690407493 731885476 906304079 959039301 991226552 979958852 988314964 814275234 914133814 321885191 469272538 179876765 291163768 289637413 922940585 421945351 985994540 24988466 801510072 265982960 926725950 220020404 650344584 108311578 386929267 378663777 666908901 802382592 967287527 965800190 982067145 773910023 781445952 924745271 960974800 485326709 663450256 137547644 918816525 47774552 441740530 137892530 358189081 475180586 760236144 219262215 688641326 185456525 428532698 285086215 534259193 938691620 953753684 167775105 782662430 216076840 380086775 448935797 623782227 938871366 981296776 739559991 787313900 53551725 972377915 952923726 961783048 653100820 754871945 268306033 441972329 358059234 810889992 958262777 994559032 929487175 998495882 111066983 655635554 761906394 920704482 358090916 376067349 305812831 514223426 586968496 813210032 201312196 628513035 246215602 435574448 296211338 388237790 320313784 984075693 959995801 994215215 196098943 906767004 686578390 799495841 813442989 960689586 455738986 567243736 539995098 866544526 859296232 881845447 942154803 974592355 799065197 993196733 729890037 917577343 396219083 998138730 624942583 911716856 890208537 974333387 77976128 699616369 795768024 908976280 309970684 463013181 641170881 717936620 603327008 765358455 531412390 571986964 680841930 796407600 903951653 968188170 182688061 679714880 178948140 504534740 615827825 792600807 857434820 902370681 275719459 896257522 431840599 864589265 441624643 467341668 606724979 762783094 695510888 696019207 688654249 985925466 741838475 793926022 687860338 857641041 736660634 968917384 633501260 746009755 590304575 665289333 352689453 757466115 109383848 152829650 131636917 958672108 194352361 511059347 993923299 997806821 264272568 720852354 809623391 855093069 739504350 896105123 69448160 385843766 258692577 967885737 115108741 487699560 427724703 898250822 275833255 335901654 176416101 965356507 552365390 977527034 780551109 821810445 108711495 971702266 535633151 954111729 826494338 877951155 887902820 961344950 581867055 701624934 651834592 888895563 773637707 965210247 559902129 640085163 349113925 974377199 632613981 717248810 500319579 951576180 688614202 738958637 322096900 914266702 945758087 987609780 715267679 899966877 1797513 726540993 931927058 967445878 352119814 980410132 364296996 500478720 400385276 958297256 305741311 346297864 873792644 876377834 203530837 469314733 721659881 868212458 564882342 647661149 25306213 841186490 201233018 483864378 508725507 936439934 365249130 670105192 181003762 715286315 25849455 399185107 770493280 877240071 442878929 481885510 65061232 630789929 770603310 966865038 719439470 859858327 652383998 914668455 768504623 886157914 901720818 956017264 824412430 949600372 942005323 987591338 148421013 951633518 348911355 806610802 357618992 534666720 917769917 945002759 252579345 263872962 706658686 806562923 151274469 304815051 431088891 742421655 602548746 709671147 969127071 989732119 940271007 994937946 103932327 974718632 663114973 911604741 953942551 975165507 629635133 944204015 815007896 945675465 102322024 125428791 851162077 888587454 989355788 990109151 836651895 909108154 200991817 368699828 881850071 988064352 423238697 474089459 287477122 317528929 318998041 354670947 702229591 875726754 192502737 752548799 56097413 942460279 366381839 707597886 471681677 834471822 633053297 876064410 237695894 356415948 522562761 633673779 802392355 890684645 462825205 809610194 146015116 498601703 712331093 913119747 670952267 744876421 306257805 396187605 205075096 704123335 330451099 816260925 493036791 905557189 264664518 585286316 295897608 649580393 303025529 809157447 124981025 457483688 490653273 735114241 787988242 920826194 216866072 943075098 597251528 665330671 883098370 963399229 211035340 661533254 768957283 896805644 288037037 829287580 484924650 505714975 819004377 912165368 753887416 924031702 160624957 753119624 264343845 372941936 423991836 872855989 857522490 960056697 78045471 640482659 828904385 876813828 458579620 865786110 507982340 928047460 572791007 920711295 957761664 966167523 200766113 311122660 955544262 959696052 987165815 995433046 48039517 352546048 610679901 931644650 765368404 864961156 238828142 915251545 551292763 921463243 16486487 451485797 192484671 276325848 828040824 945507246 767144678 788576907 498260795 577699199 722766033 941329865 417026649 503420351 320029260 639114866 558224183 583982705 943581855 984877705 722473176 784196322 856370118 906573840 315796208 586272986 946682794 974785088 12960251 295312543 90502754 560616429 53019639 919600700 106160412 672131218 62949658 276747457 746130384 951723316 816909722 903793499 308121397 470498142 80974769 426987086 816950193 977549997 465925813 579019305 58445503 867878684 741231907 858740245 147074363 710344828 429766337 454124098 939665826 995114175 356257198 484930592 219108287 707762756 826248283 933330702 779177298 954876475 104337906 291891140 77223031 261767833 319775426 367607168 538193056 888775899 972308996 998469371 344373618 433833394 664203191 978805327 162205554 931710017 599014154 759721006 244977241 893160090 48161442 571121940 368206067 771491501 386132051 448039682 152879069 979598112 980493485 995824430 341461343 361272647 839362448 969863743 404222630 717130311 129983849 421105967 964531840 968304892 993158252 995572226 633482706 750463571 556206590 876637529 64542725 401394581 955971036 975891157 227246650 623620928 514862168 860065456 22479488 103784142 582316992 595485717 465216329 964564271 706956660 892479767 162442415 392944075 947139282 970514616 599161363 662425968 248255085 321569987 356381893 654944398 757607386 892515801 450153369 862005612 434794780 945062378 882471397 955909949 506398880 849569751 82749869 259720292 86836253 946896683 868396242 962821085 713438007 958422551 516047095 523159960 939608844 992734868 604876892 822876430 723060817 848260457 496872281 917169631 670304648 996609278 543204326 833744301 586615449 822594775 196085399 780965643 131497145 181025987 428009864 853833937 727983141 937073099 855542512 955579260 705168881 950494820 903732309 982381729 34593325 191606997 142773989 478070987 647241503 754577005 319211107 653204860 88255558 502593316 947469293 986012539 148293739 997502649 760136138 890218721 560772444 644961127 763882075 786560895 735180384 916638518 169185935 905822301 355216003 771750465 879120547 965447413 47065856 319794397 98848206 808952124 448111524 556251638 910878231 936832544 683190979 763331813 143728300 469600991 961432240 987552969 303714004 307472176 47476968 109441889 505623242 927088715 914914050 992385232 588421405 595420447 557755627 730963733 492244177 635965309 305961780 447951851 142546305 192663790 589734378 608898930 459658740 504242456 743042898 931989076 498105820 864818366 923714609 950331584 528355502 906420108 74277122 271588691 248585450 685023640 624710302 895091677 1454105 670059783 210725783 394138860 582522740 752321984 932754457 947040257 259974027 898397793 348317493 919548228 949748904 969529191 800061245 805792289 130134144 692746600 666233256 838255476 688215380 713550600 188037516 665445858 978909057 980027265 139393583 769310412 504314827 582717693 348537034 953757253 13835376 812599611 175630862 871771367 900721566 963382077 362434369 980545071 910922114 924804951 351944380 524145602 276445681 903558874 156083437 787042463 53389181 311751062 256627730 651094620 154723446 208104709 742063084 784877189 853878872 913429680 316691866 600341903 534936364 788738374 417031043 861775349 161157951 347208657 469576059 788650776 617838624 892956965 852288940 897963196 525150411 959820739 101029751 720868536 313058944 779687776 303829328 701185550 94326463 746857578 608025417 994493025 655239463 979440894 164768872 451021809 882222446 911676968 15615664 84508612 670935332 799045584 459227700 926026689 668956641 738109038 701774092 729337319 469286090 752440252 316887867 401032162 148420012 590322838 268500866 640078457 445396073 974501216 867444478 871268725 259291314 598101062 675114737 697557528 859427445 886956415 580473136 581671564 739429201 924103943 513079323 644627247 732697457 799241436 948143414 987103491 463133768 789613789 10790391 584968484 281482445 852897176 721955177 825994791 715146614 876103345 529941188 584932651 321846154 974086988 217390656 240389166 439743499 661776056 842723019 967109142 692130073 925882012 895027520 970069667 905423860 911057545 211798236 695330415 280183932 697203176 491692434 520427693 772420282 908338416 525998364 627695973 730497280 964079717 244787868 284610716 842521558 991937550 804729347 869308584 77637496 160631009 89877522 645227582 523451030 826391659 984748406 997995389 143133156 242255553 556657849 597228198 932655178 962553713 832415684 859696016 48334127 716558478 115246230 696007466 339279160 565179024 892773545 911250847 657023301 904589152 640729345 724919921 82257301 468422868 357334104 964979066 177018801 510905526 155971930 779996035 493609128 695019034 669083659 971980769 136834917 801038248 352489986 710988281 59163715 201794336 24894921 188340910 506927937 856714632 211702847 433205095 348482211 896806621 381070852 452348367 179871969 466869660 107069343 952992806 62040438 918139452 793693686 930410042 121718230 631074302 15093577 744529889 322246400 823759476 654575521 984350918 926320550 977759623 93241998 646722784 539275271 611006124 185983697 351722633 236052944 885316840 635098489 889464080 300884982 607782347 248067522 383546289 679732909 829011918 427101521 684317390 325924955 752376961 635966394 909236334 666255880 968038157 130058586 266056240 270587914 326180407 454059395 812076564 259050460 308158767 7330063 999351725 187843972 336502036 45151219 602480920 321993162 971156548 583046635 776001904 606959249 620945215 438952446 722241786 903088107 952372192 36980100 170606235 943074019 984403047 990901556 992731114 614447775 766834356 457349747 875979686 372495809 900344750 433275185 577508631 931772948 998325199 60016511 511158157 899287243 999041394 336077502 485541797 514595636 877326141 181444096 690083276 348313159 810496430 342360176 543563248 153449322 831364225 170071189 689528557 973588923 983174500 614641225 667753162 307257027 379258365 506352887 848646811 859690170 898635970 446964130 494729008 723459006 871323706 747174461 794424111 508880301 711194230 225381132 538329677 49592180 246494004 192201515 611875819 47889002 939376399 563277523 661155153 552746105 567577227 948120586 983407032 207569077 710536462 342651290 731803222 315856577 806021746 223655327 799343318 488445820 916877384 311018090 872336035 796129482 875889053 956455917 981234269 4506369 131406986 381066189 735920786 993287944 996780425 810942222 876083742 74519547 720606878 123855425 353477874 918071584 921126678 536050062 820378285 537907189 844295182 826906549 879632371 56043492 870282168 967490996 978066312 610047725 916995309 447102886 817310704 757235673 947800981 109395933 489901323 773507367 978159056 935213409 993409971 911876808 932050423 491531418 878463847 356653541 576813575 679441673 719136332 499791767 649201815 321258842 509484529 249000125 306926712 842288194 867802394 389014929 906915815 357083947 591617056 74567299 882746031 196799782 720022042 561240691 962991849 404339573 706335140 784989292 845858325 411860664 568290858 889918811 941719812 189224884 815503149 339082619 887567402 856386976 856721968 889079413 936063892 698573855 945682135 79137341 251957989 655627501 878269657 46685104 854411305 791242654 816097203 487527136 539431591 509840994 915058409 318641898 368936362 705075303 874460846 219591948 564830644 103519254 125808275 301501898 609229560 625713771 827293942 481792283 761258214 635121667 699756940 686131138 976201199 521590421 918469095 467947787 611991989 386032385 509903467 189844875 997570090 789988788 967002214 211507295 582911245 93469546 948526374 36048793 487397339 824137255 907176198 893596278 998283052 658313096 840986057 211826091 701914953 541459278 948820777 274300597 939417309 594945806 857257151 114800847 328636189 340582381 617397972 587310265 836311761 275103036 743294847 731971495 833733611 418262892 697661404 198053820 743428141 755586672 802339249 541928223 931579691 426761326 559561621 99585123 473279130 459232626 469711973 539961685 954887047 975785164 992343601 180932879 649367479 772445798 967155085 337421970 874021803 339514136 882260451 314111790 844661707 852079658 894045166 698011651 895946923 557097066 577968810 194691208 198534499 296232597 873076777 698670647 765381460 375276122 627829950 262898249 406768631 814521383 870151080 207203686 993355821 465671757 883370260 522729701 558538534 852497528 928820644 558944332 955492941 768028998 807508703 234841052 318313001 426031536 565323905 406507436 579119283 67912085 498526731 73307984 990738774 960085722 989864312 98737115 246446811 444789570 579780119 358649638 521807690 269712115 726114802 717595204 963786764 709909896 826433055 724251706 958758422 918962505 997600221 374193819 717341228 16168429 728606068 707660150 956283046 59504705 904469554 171666289 977796882 832157437 940120333 914898320 986775858 356983598 985528540 484366431 714117979 478932103 524568586 811481843 873311428 321320800 615356177 684316396 806258248 654612664 834160573 814737693 936656912 791244341 920206347 971399027 981231135 802909407 898141279 272375729 731029696 954845176 993736533 383315049 420350440 739458118 976611977 834855630 871426573 319079024 624741408 702976468 753477091 651291729 981598109 747901104 996918225 466982995 909529931 979873136 991745801 86764665 366404118 420116970 984717292 476004698 748240819 655377275 690254910 272721647 846237795 170519495 317192603 192146133 721481050 290269540 772462911 661067748 962309270 17114343 976311974 780988502 910598165 809273714 997799835 601118106 951634108 792538209 866097128 758824599 928154445 950213559 978688321 957502538 993271335 692590200 762294216 794509221 882149739 87611452 247370493 428943276 824594173 550344092 644618629 388604599 694287363 727601388 937259209 672973439 919328386 283262315 491291538 132832113 948561490 375265980 755161846 21879245 727649693 810882162 816757322 360567560 453741712 437858398 584865041 901109799 986914897 166708856 773070193 564782200 700256370 734576349 826846119 688861801 842762701 542778423 931862430 685849493 834065244 231692573 395037245 101066959 140300029 286894541 981846881 558725200 675408171 43904126 909239790 319200526 692932990 585638045 640370290 425697368 897878973 23567305 617780409 89963119 690373625 527325071 936393229 498688020 801731006 225799632 875586972 326313247 631957957 967252903 974738575 878064397 888742530 988387985 996264754 331813061 480472298 494087763 993179561 541402452 710134803 317188542 325776908 971387517 985756522 596195854 741469753 719030124 898610140 652357865 712032785 835894659 993732894 741442244 903591223 562305694 633852624 225173834 253859251 100849251 690366454 454017064 675914454 654886681 709507189 712981410 749682223 262125466 614663248 719216695 734812910 137496722 778061765 253883377 454220004 159348230 899374912 329520277 855805075 385302347 482934087 96821381 753631836 173358874 227301622 732072403 764859115 758651159 924575495 846219444 866577207 879791247 893772018 454283345 700286807 958481463 974402401 724110703 947050468 519106399 706256357 969958588 983542208 39667909 467443263 364764701 815756836 182754169 352188013 11107100 361972155 35441225 931387313 820153479 875203664 738302137 853682664 640009098 778404636 356385512 747411712 59604118 565415422 960283730 987752018 159544951 977866191 899764827 900202327 819986092 881252372 8749675 771571321 775784748 782355697 767024073 831755389 254456589 814799186 909257709 975970131 600294480 969847249 737653518 942306514 213464945 267795482 518828332 621016532 563451193 798768802 24633681 750940893 526122377 859006560 666564784 671415416 893946850 966647298 606680939 963306003 412248640 603355717 332883097 907510341 485505932 951460422 771559990 954309821 70094196 621600915 781378184 828198043 652135861 865634572 102259896 548224244 745152763 975459093 145253818 411582523 455256062 767000195 395158301 937648256 290449158 755926157 242191295 712478878 659338736 686181442 283301537 738727885 196935092 544736559 583908601 906650019 735927639 839545107 98916487 609967514 339891619 696501208 495586505 946810147 897823938 964143683 330051554 453373427 450054195 505132836 804633753 883394494 88771563 584894792 15428486 998282913 590255403 914288867 489640617 819221746 425841543 961050205 287535787 895928633 56339718 691727929 614128001 873963877 491383016 501899085 168229619 373144714 465914442 905543369 900017816 965953187 230653570 885861618 441809952 628801537 860018363 992221192 795723417 796852012 789572571 887533530 913396566 970207758 169700517 945354229 950502170 974502945 153285515 785608236 534111047 907463511 973105660 974796881 686841427 867505338 488485616 730988564 575030109 719986326 623956569 960265082 303616838 698150430 643589709 797548616 139111556 249118800 349262319 846184200 719032832 989647144 310192918 451000166 492880725 603535966 223068069 914672187 348686358 667129008 858912159 929531203 929394000 937310880 396918785 480129529 393356182 509223680 455596988 791767181 414668898 792252091 540663896 695777690 168246156 356758926 773565376 928145623 561820041 635811578 544880497 955421617 860263921 877477468 902440192 926343529 319018615 959954563 241971529 642862962 968593566 985943404 501477347 836712446 278050702 511897207 128829633 993346214 653074695 950162904 561374312 976567770 986827118 988944383 28676358 703322416 645611816 876186885 933335363 964962315 735145275 891093978 62513563 379468570 685315991 773993224 373939950 924040097 931963905 941006002 930833962 936362300 930680191 997624686 468896653 579982637 6798232 886292157 228597036 283520177 341815584 739183701 513664484 843551820 583273313 698919504 489219360 514436522 687087396 950379626 629155586 924750337 836226512 908867110 570084873 693919985 403098671 975697830 183008679 790737145 644573075 723935629 813190292 900489125 920386452 971586193 394665540 404381748 311648044 901794974 858972701 960925046 336199343 545082618 697369255 776504926 168825786 907425849 198861956 983730570 380232588 672528413 330599197 963763080 370835460 840877722 7782348 941149285 873593454 925355694 187607565 427529238 956778749 994019913 642135182 781942763 284130889 539685890 389074855 814188996 4805156 381048522 654467115 961568242 584512681 679572307 895968686 952874994 600547477 974377586 350264770 600526577 542363272 829903815 297561142 638784219 943634260 988979850 7067072 357904724 53512169 650930197 540069149 819069297 275801689 489448393 94922819 859076039 195098129 839142049 55140131 687149250 597292996 782931163 272274436 359622521 336107737 456060192 859763952 949587516 205251989 974501808 345800626 501993575 189617758 587097646 464829965 983557250 202522832 883628378 34029396 780932930 524180696 540999172 938452267 992205861 54089554 878929945 969874038 998535679 907569353 962252301 441203265 716489982 688803905 939145056 275971940 698002937 609051903 953661982 480417446 743083614 449666743 613075627 492329838 796899533 96406702 605230010 882205307 964633324 547828311 612207336 296882433 941700678 17280916 637642484 938415111 966383618 347476168 938474424 232625011 793964103 245632714 375413305 34416182 379288072 515867174 892802972 106650184 199708272 928384361 986363438 598891977 738238497 381430715 905231650 690270736 924185021 665828478 856196819 171672701 354579781 69929513 983149069 814079829 945442509 282837146 574750680 107639313 511870023 561520591 738195882 550194411 680692730 46167737 580882496 712780002 960636652 729179154 780951558 508979597 899747657 676993083 755222052 821775634 963503498 261046962 548079641 692157840 933752878 133278076 402838087 429914835 445777269 779280185 997221697 870266595 997091094 409809867 568265015 289057953 633112549 419857852 773838437 833175758 958036025 658910122 883293548 988186720 990155066 34354750 817409251 647477085 879446232 290719348 318187001 359802072 510913711 702159232 988206982 369814695 484984027 47689092 528305350 884706890 971605507 321454373 663781005 459889722 497406204 831672170 893381568 19481404 460966248 340568671 647986286 904792362 930112352 157920278 713180988 147036659 828552193 854024715 979007573 424939065 441684357 197561320 282567205 60981882 579977297 848434717 997166434 864002198 955086912 375740756 392136074 449942912 527768104 781169699 821141308 324569261 898628098 228113329 631796968 550287749 908023457 661456747 834126478 28029271 661153850 738239567 880659236 150215518 869649330 877160751 901561997 414609088 456143000 720617126 962187359 653638229 796204700 428217795 470180846 235973391 681165332 273275849 904280385 556047270 793216956 679843112 704754523 142345749 554961711 924938317 966452137 740119476 871290184 475977011 487688265 902632470 966461517 471992945 874227881 100057744 148653404 291846824 637192502 360672940 667780155 992346128 994888481 953189074 976842382 960920377 976349051 78414127 497864910 56627432 572267094 32645518 87487736 791038074 997339643 526286856 628784920 589668625 853159380 765068273 982450004 39980029 557114524 381548296 451362649 784363083 965792804 809344158 921329951 563609480 704819217 247331025 578199491 558361791 590832655 910666524 968340067 101326093 317569930 782998358 786443411 208345652 899604839 471305880 739734332 235010429 706340877 344765172 483294673 517228324 540572239 847640457 890705615 750780103 889871760 939845597 995630002 785998801 887092090 47458055 993373934 664197941 738582012 982076637 984759006 466373896 892153115 830452374 847475578 869774725 989762490 596172472 678771116 471522378 895922258 106076185 639639164 655121738 818082299 580600071 627883813 936721829 955426020 900858604 959286816 386965017 903232578 153518728 297187146 265643259 595131386 218931813 407533436 505473745 839865680 366485757 793520237 511752001 939958668 750121626 919147839 876527009 911252527 273896206 762097165 375400765 544751775 81399555 215353790 975641477 999003335 343130979 527509675 644631897 723540167 307282738 656695626 516156939 750975760 150101557 249878346 305277835 488133434 237388507 252721452 293044572 445123104 648105900 924142190 542986353 765397076 955477396 971414339 482915414 506566156 193255850 502456816 291192584 520043494 145079970 615785872 13209651 981549918 982863701 984362013 628053021 820515951 548099531 549369683 428559057 908906959 61564570 194115586 185412271 448143801 118336109 889700890 485907100 879469960 658388803 754519282 941651770 960282869 971283573 998912678 876051714 884926040 208893879 540154998 773476651 777337605 124525142 369707276 591780231 863085558 722394246 791195274 666394783 857637796 220867571 907623007 440016615 995619787 501403218 564304846 93150009 411111065 189243853 707465138 652765483 971807194 823877953 947938829 889486366 996835801 464455402 939211935 349808583 916044545 957481907 984940153 171685190 415410510 669175741 753905081 783744609 794197213 877834870 878520394 591595132 603502821 938283735 969693515 968733642 995604723 373611630 587766802 664053475 729191876 998782992 998936388 139706681 702589407 256782762 377142135 824796065 933747339 750478260 989588426 276098286 889937357 614099658 690109334 813656260 991825544 777439386 880205520 986709524 991486502 195208553 381462584 952818738 995369996 511290551 736189960 707145875 843252359 280253309 606055521 203755332 968394878 424406363 986081290 290477809 369249300 715532011 861122782 213310099 401454109 539191252 599187668 541332758 702117247 200150073 432734794 298223851 797002695 844872476 861770293 648417788 863645750 72024408 508806468 211766322 932257593 972542738 981088954 694996540 875283946 612141963 996797170 360040632 807882427 585718665 890201795 415135829 430770111 461614682 772572116 919978790 984937420 141188692 153274155 85599323 581535177 151375399 691351069 248640152 749497846 769521982 951684581 681265293 920546304 756383192 993604851 915208591 956105166 132625919 775367344 320563771 952953786 804062332 895219801 383817024 477992888 903616650 918915396 53973558 188117664 38439221 976226462 560052001 763291560 105038020 382961371 789401540 851757026 868630683 978190946 639023768 658356690 204603453 934941400 874200773 966264829 446634007 618464864 737903771 964082471 41006351 713287447 305216077 462008293 716491821 938499024 915685620 952252505 811137020 947377176 909681483 922022378 397857398 669834207 202692533 859301793 158760720 684907707 89658851 489658853 299221279 326064416 681405214 988831445 423047351 857141305 87519298 676109017 44462058 635426835 989116329 995479536 321925996 799605080 460239399 939685597 138737688 690587265 844719886 880757192 338447718 566427554 151729704 904444984 722498259 982192160 901573120 912487115 50424775 466991312 463041634 660237062 526254298 657547905 516495836 723106821 510633632 545321838 847802877 932872825 950740956 971865410 631518012 658910942 43891723 636042334 960544980 997232508 993065791 995832538 176682224 408935237 56593536 318821329 825944035 933519533 429846406 814474323 861304293 909910955 905945415 973004561 491726771 610765154 410561209 817585219 857155187 960571968 476686402 477706725 391219634 568493964 977624203 993623216 998333008 999173623 453029678 609562438 336034359 811621112 866181595 874343968 46592541 793252480 843296733 866107094 679214683 765318309 963139366 985872882 120399504 339117020 255960309 730987048 391963261 723631245 28227504 112866813 643240944 745127360 658058966 768682351 570991949 571932196 100781234 771812082 900956085 997931465 793642554 895093486 206666539 859269252 728368058 759373881 685232508 810338382 325783452 672854567 388154409 574803674 126042676 989455919 902447182 980498900 432409978 871214132 407066481 960723438 289645663 642734192 344898731 524041028 734070207 979445019 232448584 246514552 268315951 797957275 446367634 879339102 947916742 978235361 14966115 573646050 543364215 723689980 575358096 681602079 335388912 367874422 940191225 990052235 839735450 977238262 945495289 950915194 100083405 960568871 501287829 898748387 93592457 527574313 14569776 837588335 572750445 600664312 113231021 743534925 435244190 925251839 877975568 903587867 682772242 700051290 947580198 962804268 841537446 868417984 386128454 978006585 422072697 475103608 666059299 718246810 895234772 928750045 464155878 750736290 118055380 273902576 375882646 466024399 678313139 979431676 14768718 240512175 743152974 778169401 155989228 476611507 466913466 864254917 645725744 762823998 632907357 770826325 722914520 897338821 446930366 675533973 661618754 812991969 218327742 560899214 833205478 943162799 338396995 822963282 77355383 587029653 368239289 527236400 988002238 990321705 711983221 712624275 208070337 641499022 224135323 364814248 202601085 393652424 334337892 683205456 9405860 878456815 917116250 944812207 42326666 747127983 389128242 423183671 58393738 639556235 513898781 804454730 308194814 321688205 124824293 273098360 60021395 896071559 328969733 810933118 289569329 597847417 615756255 812951122 852695079 984417427 102518906 369399594 704619261 891772354 899391237 979641310 68485094 580105707 67295059 73336608 414563088 771502870 317704952 749930279 471038491 579399099 187974939 273157601 980008813 995959909 445430517 520290205 847030280 978189636 893053365 959789782 130847759 153206519 546830381 840568546 457583289 766488254 240673199 430293834 454467039 923972548 819769279 962474654 138636124 371094951 411524217 538460774 898655395 960805565 458468941 957495926 984999557 988532200 357490661 611452727 765614527 965162432 734201613 789404913 139991179 327854898 416650161 747619045 709232202 988135138 914585018 972954081 403439384 624859127 134458986 764896436 375033690 897892053 604175154 944112729 125878399 534420671 578121791 754540980 99348284 577394910 484076239 599064229 632056234 811903553 710396728 756000092 139663836 264596187 580074786 761055522 765759265 823578678 754686703 896397791 286915539 585683748 743410913 913231443 17665160 835534598 882978449 961404018 167516733 819273110 262881176 804081494 944064196 971738634 319084231 821072324 957678119 978338303 513936062 697810814 603287188 761936009 768587959 838637663 542635386 641876892 108117883 987702665 319130780 731336326 734401872 897439099 163681718 168631041 352355972 399375968 15387281 185178037 993353550 996250792 666235357 997496455 388752467 705671281 527529504 930173183 598062857 820759236 29989839 798998353 356580822 995562797 261589669 835580984 550072387 835039763 350010138 972783096 99161676 468300399 416099406 472416750 411184175 788805104 701366331 776506097 695196225 737635833 109301711 991022149 453849887 633437513 268558595 475953368 904973659 946774301 821775888 901140996 226039395 288513448 321588853 400601643 560527769 722883266 137305283 895466677 274062122 487572531 63611213 940953109 192548813 304643051 345908414 930376832 144112149 537233870 545090481 720709473 77543593 824548137 201215329 278051701 630576095 797939215 874901106 887509492 304675330 630427264 873316816 931808445 750397053 958212256 383791448 764821784 242227638 838039622 663625637 809573742 392499022 621639541 775741461 886315041 118089296 163349389 726959582 815565535 319097331 670076496 656777519 878660360 891925678 916095974 442806002 490814647 558512287 817440242 483100876 644724167 48883645 512062758 970464330 973281187 649669458 735352263 364044319 840593535 284322823 409491776 879561874 892983100 88626561 891895356 795763556 969110602 329590128 980086369 821122291 912826783 87956111 102863481 606059879 913749573 507683536 710159387 982127298 991686804 670928052 733325209 841772650 955593962 848027095 893960731 826629794 962598437 368561742 444983524 972432673 987257019 151644349 633517741 682093948 847498921 673031641 973356826 306915508 495753261 676820969 902121889 646471073 839724615 282736850 340481525 779627031 789541307 208817787 496151862 747461457 937400433 476970246 747061788 543705557 696183382 202421428 944800719 403223014 861517156 788333324 889579778 671015679 922386774 524361938 594866633 644240468 812525101 252238031 534669968 593242018 830740245 913557803 955734707 915643450 968021266 610954507 695880189 508245533 735706900 885969258 916500429 145932867 835005579 733997692 826763743 154412557 649171395 580489414 794480676 979213194 991996159 60968224 266505339 684704344 839595823 518300855 813764063 103367339 444695815 605104352 681590493 477288986 710926128 643738012 653116339 185571641 203322795 764380905 956065940 673790958 740191163 682457093 780142402 102706111 917310635 442786177 953674160 94907983 919289603 379130135 423800429 622957640 793087773 848889788 990623085 508422439 754775143 433743779 456913031 258854834 375025877 431427070 674470266 374265187 479585404 476244424 933164390 662799316 983007697 735209641 980056315 96175064 414478623 497555230 775520209 976882472 989813678 893268282 957203979 660272557 872984324 319331068 768649882 592605562 670617468 58613925 757351653 819725737 863102983 183694430 685039062 188220199 884437083 143299619 947350168 972642342 979510453 131499982 267340060 453943642 907120646 927388582 987405444 8355942 277450846 386013158 392068214 460065392 665285393 795959508 981565243 488253921 570663474 991423316 999391817 595121509 815896031 922670684 947126371 516772488 566059512 492378638 761700821 390404840 983400794 404825039 759992172 637934792 638555824 706164868 891853424 542752387 898234311 412464336 436031916 870761265 920432345 887795496 995573360 470980752 751031768 114716734 716274142 793336913 962099640 871561818 905271008 943392129 990537595 216486140 920476131 476353784 837855091 751777732 924379314 308636576 343617930 999221030 999243758 747897976 830659596 510503672 846966142 410680696 500136697 380859808 481078550 303796830 982108597 809763988 818703594 303234906 635752778 740634920 814009269 804552323 906702126 900146525 936779797 772941753 779001439 647748428 659336929 758622033 963457055 231288430 926754105 139565139 601790921 422446183 666250191 653838209 973305179 230344735 581728065 548776354 990323213 819811304 910148997 196047015 456951809 165783671 856744095 403367302 977039316 533307651 955330716 700168550 925190406 996855191 997876687 559363393 727959799 787998458 833655820 784859653 873682557 912506577 981136904 425421954 589107978 615697167 798008571 76995015 634605074 227290104 245425867 725848499 734771205 434488723 761902892 837208012 979583625 457427946 943401554 864975195 979962985 850391803 981239826 399309421 661544321 114543450 631890952 985694266 995053741 128242156 872299402 983752655 987932915 413273759 752354853 585250243 603100972 74928328 260766778 683280082 715888312 616576309 735760866 619544792 917216240 260756737 316812925 149408816 627554450 86071634 441545864 70715503 138434995 867177044 956283193 436816988 597002500 489726647 632221379 331992139 572426391 25030626 534908660 661733801 720876871 117812683 950392168 957347454 998141170 651773196 712603323 120643996 556436241 778217778 954216704 235555170 621644492 305963837 443915071 174059832 752951220 721670486 727910493 606406440 716680676 263837467 566082615 907910984 972909531 131228960 477654604 563398844 603648979 207261641 396971416 82061153 83583614 298841832 577305387 58752306 608541741 735760233 778113230 949341694 980671443 215515487 458428926 134365331 982298596 479808185 677161522 885675453 940526403 938080002 942800179 771711044 923984167 516640992 567964791 393743654 638278289 449576798 481149951 457897778 865577167 717740791 717973058 517777853 591980263 801635048 866664984 680300106 874571403 928544063 960136824 938631196 960442897 521752567 599430354 161702854 889868818 655208801 667390639 877896111 924515874 698206244 767465227 20549270 478685546 487497674 941739813 667571331 746988728 448067480 716478112 7456999 765351808 506129260 519654538 850342934 950578869 999286291 999348855 413763861 816554927 486975870 909283398 409589636 705651122 869173255 953845785 229973573 271256675 15633766 988298094 314472629 498619018 166325501 325717268 790819887 798001677 88231143 900825766 890808676 914723650 508747759 817105394 390738258 773628224 597077547 628382454 971132676 976346014 918106474 953855435 989456243 995822721 483056041 626308368 31063936 244996369 756063059 785386619 412519323 607084703 758586426 871040058 460354104 497981751 181299766 470541465 583965000 643178871 572476921 716966347 537291285 956145290 555828418 644986504 269137335 853337396 539763885 637303593 878911734 913731805 963780768 996257677 892676291 962720050 770955944 793375571 800138441 915599276 673898869 993287566 550370747 794599903 873313215 933279244 197183951 938966351 352900150 418254954 619841758 621465183 23289713 319842125 491805136 600648532 556925570 899203669 508411532 756597810 523066832 585905633 690876121 836461438 467751206 945265342 495657407 597381800 857783972 919355624 359178706 691225222 266384101 376303412 268467547 911519184 750163952 907537277 738349685 942987723 556007658 763847674 400303366 923265171 847423280 973303249 742427443 837254491 374650780 942852147 170987926 348777231 791329928 879351607 629759890 679026311 618171926 986879085 435006336 551370403 821892173 948623035 444077674 497355753 657873522 888482376 712591793 872341452 471877607 891485625 410973073 755330959 161831656 754996594 848632937 924511080 336189619 827649902 126310617 866886740 995768721 996124064 459236000 606992463 604045667 810038617 474676281 715767225 207279134 747972508 243381159 404632290 684905161 760560444 943101002 979217641 611977000 673615035 774361163 830036259 324965939 503765159 557105057 788085893 909550363 999304720 784809796 849256874 433927113 555926510 212152536 777587282 77182611 439609846 681745103 774997115 637155481 648163293 496732312 517359076 63703014 865393432 244189770 405494128 336502888 909763994 445279771 462870743 706599298 978734894 85303838 926432013 479988528 580805850 620229247 866194232 253200220 748042711 414884859 420508060 779959847 780481792 915716843 991181294 228705868 629373484 699793322 838969944 462925537 634291227 589268332 888884042 126088975 688908026 876837405 897717487 545850697 933737072 595791631 998830028 927623758 956836297 999110808 999352622 614248355 791692051 319141321 901828593 640147099 881889584 897492676 953247478 48326653 977731450 769402189 851955290 207414446 538821426 576175800 668658289 589233849 759369054 448456566 493105332 995414392 998499662 692236689 989929477 188825733 388185126 596240656 972118438 663126098 936668583 691177252 713383623 684742073 932592067 606129174 618465960 385000859 458761342 497625296 972430645 612109057 939839260 267350241 915228722 803660714 864121374 76361149 681108724 936546536 945166655 614443652 996184954 464263948 938849402 112212514 903087293 780524107 971541350 686136266 921793485 713897978 761458822 600352769 938928464 162026830 191453158 934444148 970810483 999215898 999301888 8509363 158999275 886990351 931560956 790404315 943651172 344179705 881766215 751699759 964121344 719457745 884400400 709286001 945688919 241313291 266745723 144763409 642045697 963195738 984077920 310389839 508068289 633370292 971349580 763615448 870840420 153831090 716999808 778403014 898904211 67360901 686945375 890224066 952657263 998685522 999171313 76962211 515815036 292126212 598315360 74608270 712940044 489391950 846838213 41973256 306790527 840760340 913748741 980675056 981122240 216481474 878904876 939509770 976301284 972694076 974027249 629730389 716181705 351627335 451848850 190844277 245664081 548406368 966643701 302727487 410010057 506941681 520947499 225626376 713203919 162565059 790991724 166332857 364802591 109183547 229999153 30160320 228030149 738992954 821387675 17433416 186062274 438118063 776198030 740063184 826509639 535395896 868582435 884749484 887961044 90672944 874419836 993653510 995834723 615927090 886377100 571183268 871142349 183052394 574840505 848878200 931395770 452358478 754754527 21326122 662538520 400296403 874497535 843266466 983555907 522941215 669649826 720865243 996174706 938254836 969737817 157368818 418052590 720194265 808703718 900677225 902190055 906414503 970336679 880891486 953380949 384521809 898473249 758439568 826138604 917077397 950393738 495316928 617424692 605303709 869357388 301335814 979155999 775876869 804235369 535631060 613925386 235671773 338044584 355538048 479870067 490484674 943885352 444644136 762722057 708964465 814670343 122939324 184691817 176282618 580453272 422757684 491085226 587930576 840847458 354064381 732635185 869396278 954939049 35225608 785501727 803856941 868767721 223260864 746131455 220683070 252345374 135554804 510562842 924996613 969683328 100578952 842847791 149387883 625028888 344338308 565855088 95176916 965017654 715951345 739996968 706278025 965952460 938178890 940001100 816655908 949601814 530158874 761204704 958778602 964371184 383394772 929675100 72357401 666562807 334648826 726732380 739646605 798980545 720243955 758310815 622432164 918520139 375481379 515277712 608971172 792824820 455794934 916437126 83948193 261292964 319615649 594611087 633211974 939180971 682740469 882700449 719389655 728638512 580976328 608584813 399929733 963654443 573843616 870355888 568449168 951041209 7922332 859580777 466058663 620578800 695908752 716559227 855587493 961933425 359350811 464262407 60242002 280077852 879796231 894920830 347822853 551335676 412198761 834036848 364159855 760576357 628791510 680039679 623976660 690671223 975374211 987277090 164430972 323581192 780037939 832569842 910079179 976608686 427888299 603072144 493621870 724826463 182477875 706849750 100777496 206466493 749264757 754266911 940925086 960786912 274095006 756994898 815363821 863539403 466312498 948009845 735411376 989156638 535997333 976071242 808802175 915723489 208351046 277579616 363014191 563106683 484046355 659502494 85449607 383057683 229663709 411238655 647693584 722180399 209771637 785457791 470918169 804252958 563640449 690085949 462661738 572607242 762317431 834010482 56761791 562905053 696723092 886975536 60870247 943214261 247681937 835800580 313859089 687065610 15289789 98471006 139494310 615710273 824931321 860906300 922580168 987140685 461524309 823665865 597474009 926141806 902120158 943717650 657182407 912120168 461864377 922581299 200817908 273765257 753295112 757491245 775843316 863477915 331607831 976452339 580374935 847181326 201222451 547423132 417753758 661883596 934198540 942268361 245268452 576222376 859407268 932905356 15769286 494737000 231093182 562606051 383973616 397172373 41314675 621250186 410721238 457171154 880617383 903728215 468508587 855714750 865580360 891858795 727815163 757505222 320474431 777518263 379573088 425220870 838924050 873428582 477289977 694561936 503079932 781168743 20089168 573856928 411838655 806343269 579452125 665854765 116149674 645009095 626405584 642979101 659608765 784778749 189619395 578070023 212026288 302921122 307520127 477298208 468714637 678001034 92272746 854749918 821917032 966517234 208231300 739138823 719348046 974867319 134757440 972003538 661603573 897385008 955357652 989582965 429819078 458269763 125520108 745546356 370167530 637498940 209611365 792316069 521239293 885000226 597834460 970088213 161608212 530441176 73569211 300089340 868355605 872471908 940834945 944396186 982040467 985600314 243193687 942384200 932067389 982205276 509101748 542679219 626737945 680779117 490460340 523811890 295095100 767182551 373108124 879309466 277165091 647593641 391768738 426687589 365855141 936713157 372082502 610500667 879842006 965362338 532566071 864922106 429200946 890803685 858668488 918450664 933610679 982791899 337917117 700654575 140581728 925563179 906534265 980935670 123276970 727214073 112747031 570377761 378799138 713841047 998619527 999368825 325420869 735299396 457506834 933728121 427365824 946328358 853438006 980089340 539585935 781362705 652712206 747573513 843079075 938488963 493639968 939547324 770317357 984287532 695874567 834688167 642134739 755082767 345135673 837850170 740879924 743410509 899451388 994477571 748476582 802477232 466974338 578354653 610978242 705738731 314009621 348862304 611398676 893130190 262494640 481452246 169982325 513333394 927844763 928511843 66979030 853119696 30968941 660360503 363213209 444720418 319379490 989233639 507058567 998692550 408611593 503739199 826211194 898450777 998586156 999091927 190401205 937873257 111367756 966755282 201312074 760807958 723269509 892016618 431999927 472819127 292276697 732141994 449512454 840785746 777224774 967260803 343255097 604328414 184236668 525266552 440612627 773714466 358316490 780143282 801770458 967752668 825362991 895322185 202749822 298330060 632322394 784962289 623688990 646642479 533915438 568441641 78457426 865696373 40286135 401973961 546078074 895793928 411181554 772587033 443009486 533145256 633793194 709593495 994198011 995526090 412896062 614062577 977996627 988961490 728725767 770874036 318222208 726085581 493231379 663425244 253953665 528912573 884493671 927256697 160357534 626002338 280703814 889906286 682980471 740994424 958815590 981875827 530451350 582490266 933348524 982629127 447122068 518420420 231509808 431148817 604127192 786266456 178577689 275266538 943662822 960751335 622131305 662565015 855815247 865575683 795497478 953689126 690317870 946909456 600510826 823641563 102139061 420288920 100903997 881170438 370917036 748822673 369907124 582814210 75146421 481553755 823383307 865000908 141025719 778187363 131714215 222302631 524355843 668046985 611457565 671926594 203382650 904055645 878074667 917578408 4783807 241850475 560956963 636741917 202295846 293845141 775940658 937568383 22140987 875974690 885644914 906563665 336720955 400910145 398547054 814528621 230633530 840815525 361204137 962370845 681846475 757390320 260414415 819084118 988943166 993615876 349621840 974027715 812992890 965957808 806764191 913670035 687925562 897550192 191109196 309675314 872536183 928809664 126826728 722422131 187187838 990512946 137390030 295600067 699123064 829937576 350579594 609218540 672381922 997978899 326563691 858307534 197044387 989338256 112815171 979163598 34447891 751140757 296560054 644810032 609087107 648314396 585441766 629940763 803773533 894648042 244212048 435604396 951586853 982229591 951328207 968988241 932502762 953872929 498472902 799495855 150234883 622280054 454004606 692524433 260089651 816853867 782423819 940212156 210098623 546825878 341650539 847836560 383256655 477775368 437354002 463617399 849851786 858104834 967153763 970890558 958977705 997543206 811357304 934882284 214383300 685595021 266408547 572103249 438071769 520453327 187380087 686168010 372394248 744830367 323209973 899036719 316663989 475191429 214949659 895471620 941160941 975813840 206256547 989311313 774414885 900698955 81793652 756203735 501318203 507022856 275499900 614615082 22157467 741722475 507344565 924688076 456382702 496831363 921050511 926498339 69599536 922547929 323621730 444797676 380565048 716914292 63131733 525736429 765122182 961985227 838925918 992585839 3764988 841022048 934028500 966000740 434231842 609271785 741461820 993945388 816733402 850061426 755257205 978032763 731692673 860188071 155021193 219869565 109864769 377264880 905094199 964964918 536612513 548131886 14433332 791516661 881479551 902778052 657390872 862259620 720543492 987108400 589695506 890677179 177485873 524498689 209906186 242885244 938681503 986477457 45465877 151787245 285021583 294765722 586430922 678883694 158778400 859970002 236114297 891769717 244525758 308076895 760814598 791069317 929335209 966667427 759452287 889655902 689054844 864392679 123920886 586815319 415605884 423753748 379262441 453806709 468792534 963555168 938239568 959567075 566688225 872442251 754126102 923349832 616584860 771802772 637533204 815601886 660743718 865047456 787167831 944832905 200042095 280727605 814682877 918626042 22424096 82018605 498261405 764810637 709604425 732446092 512544959 959030345 217175344 850869277 352284531 421649239 723654032 885057418 858503940 923449604 423170570 509201802 36665311 418568964 690655706 944526713 581497632 926940952 814434269 860963492 446015571 485302678 136532722 581209206 592388446 996837269 307499054 876399507 443159526 812935246 980901312 992965374 23918340 214752186 996222333 998075664 986663026 992131452 345910214 469263984 837861995 909361850 29316812 613351121 553380835 718035304 87328141 167299749 421722968 452508068 327264842 933869831 705466393 860387754 573927025 839615452 255781502 596181021 671997687 745543807 130465311 164089956 84452859 361252691 66189270 338032900 136788792 879020908 308388335 718699801 141818184 318793685 181355723 776067113 197951819 402727245 665540157 883404954 708360945 862621859 859457308 899250161 445857409 522910550 402417871 528904701 910549301 961122704 930511350 954515982 40609205 613357971 409234775 503848624 95266788 930698010 631712518 922282941 564324371 781838749 777365598 805071182 412474155 808164061 435295941 596652529 284549564 719270599 124416545 755294918 726254412 755642080 786218990 923558301 957605103 994082530 95286492 229537103 691894660 914639988 972517989 991307609 19630592 359602325 149504297 275742199 594428351 854981943 247720234 533032948 807015622 824533347 893505365 965183690 801588872 825573949 357902397 852429833 872824381 930746382 785266121 989030324 310405048 769878462 952281624 973780400 869194676 906331844 879423509 880627904 757337573 799659223 313110555 466045788 866042680 934680820 485145498 866511081 225125648 413600368 704103837 939482095 87066104 992664158 180753601 181592110 17018266 237172890 197905082 633556195 169483734 915260424 951497583 954523019 2567444 687209666 727387034 804293255 394222816 955533977 996214279 998339705 796337339 988589981 536905131 816835070 595299343 624088353 229740865 967573481 740091051 973323017 686990507 844020935 174289083 991535245 193281843 277373614 56059397 659091546 698943904 895437692 207540011 927404815 465349595 870335276 984781422 993770116 154993670 775154222 210353074 332803618 498728143 881040737 830548837 937233786 99026389 440342442 3168999 233238294 680184472 792124025 601426173 853031909 823542776 890145488 754880793 831153136 396116495 515855402 336565433 932629651 675587211 931834164 490678161 582682258 275134232 672186260 702369292 931155686 167190324 858431850 845740556 989062692 882645942 964559186 595845778 848105821 189892711 409706954 732273856 903173984 382775971 611706449 697967528 802738815 756982386 921172739 575055682 603791654 136172696 145617488 133100997 407770677 904778113 957300226 66759695 352818779 393058436 780547786 287131098 601201498 215689605 645050345 94817494 551031941 169116797 421127760 230427430 928779508 277958961 765760844 501366431 936707306 297463368 603061284 253738187 687131137 847146318 940189005 709726599 761140251 962428450 970578401 11570551 298263164 340491314 579327861 99856775 400672630 893069179 904428132 691425560 926183679 274259427 399159280 120600059 727451019 164067239 844171567 71207188 445041794 61296675 911373582 185250191 294815504 690654068 728576314 50022993 636236173 397495633 807941269 59542266 76594216 152659745 484236313 652943764 712721114 211875810 844713587 183144643 558826069 660786437 679386757 605037820 916918496 396825685 441019989 549734233 726797388 910404287 976538486 678574319 967098581 809548438 915049531 235285108 800224022 984708723 997755777 129058591 694890741 223262227 789662421 265433722 554989206 863006234 961399994 291868159 908802133 397531139 884799289 361636351 361945391 754864921 975848921 624758336 995925686 248228215 772570207 378944509 430309631 49263826 669751311 74661713 314686428 954355525 963227068 813924718 969114814 708002614 923038711 976930487 988357294 268142417 792898671 86622808 691487158 460603286 610132277 643401657 780788180 405774817 575639345 26136513 512974506 118652993 276221672 768815532 914387331 744461004 905636277 264941123 678905456 224640132 497769777 52843565 850776305 653923660 954890580 760159352 961865558 43749753 420152153 218355893 736860765 90672509 700567585 263363995 624694440 963930424 975183678 542229535 855711310 315199093 866819429 575441156 992065546 177674521 416751491 478893155 609691782 663314897 952187441 795194192 951208353 297527533 745671513 497337239 846796965 306009501 999026329 314268455 852671615 464957302 701305136 291347788 613021338 915122825 963042003 22811414 387328063 994153229 995503635 470589803 615661934 791049757 810231360 66259201 111748297 468381115 880083956 635038001 905184791 777426534 992689773 59313520 624681636 945936130 992397060 443106350 748289075 717882712 804266369 222709515 372460420 486134627 971800140 720817032 734661898 99721782 877929607 87788990 594714663 523520237 799494165 43619117 285863760 945481795 992622906 125266099 739923155 185836858 772987847 453531590 845641572 732204681 733027754 219155415 919713827 521910031 539930943 780664963 991841134 591390835 673312278 409914880 867607224 553974006 744280002 829444084 970758682 145041896 682911090 560762081 654905212 397794877 527186418 583187916 681657658 144680374 850240220 147517865 333132091 1022126 358435649 511672806 524500917 652951249 908853734 857156533 950424743 948115282 979601942 756581650 942849182 720998860 979556821 125215530 528690345 128443457 729246104 211271211 330496263 165865536 759871003 5017222 818585528 334759248 740629389 668081391 974639528 572189321 685951350 733841364 805351216 49382076 964506034 693011084 740148122 692086430 914268814 693215298 895145543 944145692 957635768 626257017 831966967 704782958 876621299 526820681 764407559 222666507 229544612 663887948 705048221 405477148 572051919 845564734 955495070 592349683 893179248 513952152 930680068 952412212 955507512 185781691 260345860 896212293 949737662 245954401 509368000 29141599 519253083 579619889 660243824 526262159 705716917 614946398 735896764 348043298 608561735 34179391 426700018 434152167 787180193 487262217 967725689 925736701 971020496 733083832 953018680 745028267 912298410 724643600 750718390 141533021 801522715 384887671 472803906 389965493 494482060 835131473 919296638 489967681 629729992 256145277 447783296 330143460 815381799 89858915 318025322 575848534 605279831 569342675 743277016 632868555 910029620 726498180 805535313 920854136 980463265 785874951 905183452 676694880 996661093 823483956 882489696 285007373 522440010 849358673 920020422 205345545 994803598 89886349 201435919 929330581 950801403 30130358 323896014 248617560 950568706 692156108 851159923 501355843 857491327 399731366 496110786 899086130 941659729 177542792 327889297 512707068 893408278 122565973 721484696 95917875 152054312 2030289 308355125 428049878 866895640 239741757 386580918 150129411 863579438 807329765 836376376 298770589 932048196 624378509 748076261 393738707 403756376 702464211 808752478 331270549 495521933 434376566 892802587 346376616 470685171 260006026 911815336 774064085 885589573 747610337 872074844 594058132 880162880 807135571 988973499 821900990 870627810 465951934 721143528 490018858 947324685 384468481 499412680 298265516 592547262 520942388 982113455 519643912 781009327 713089602 947463070 539995125 706573754 652512518 670311435 143804438 737182273 755584159 831020842 926832568 961558235 626886309 687476007 787481778 858291451 450388781 986651718 275182531 319827707 239472473 452215620 921039385 932727349 63614408 786681131 769898176 931503487 577564347 688511390 497095149 547979660 19982165 611020047 285898234 771159423 629110588 759533956 189294273 272293198 894894112 924324591 497567007 698907844 627570448 661995208 474487025 509838985 894769104 904158223 872153977 939706574 81005782 699484072 171377293 877959247 526482126 898114147 308360691 935829788 110414815 889162297 170413901 838716458 564374384 966172848 174064577 878220393 190948710 364493306 107611364 314096868 930196928 968987003 249501464 984691006 966235840 991097856 321944831 720409741 187390116 255110121 229250197 827097248 852808775 856473262 712031403 798914360 270700792 852581066 492287859 790228111 279202470 701026008 592111659 807917351 845448422 967006434 39966027 881670343 605672724 788476663 906474934 980130256 210363696 498296111 637943855 941859176 373984635 865113773 558097908 891782142 928376940 960887680 518667247 835143253 719117079 986611835 207430309 822223618 109220088 558257659 26985020 63816519 419768921 736816495 63429205 849848290 554041590 845516642 74868985 107141847 680025980 930483889 473834618 914846214 550737110 581146337 17342673 634141177 131983247 552320168 17391876 707263637 296564135 998902831 580213394 660580710 153791927 815082988 990725699 996119695 877228615 895561099 322150813 345098127 561141579 709190158 652712856 763839515 463132524 905152954 727679305 840170665 707126854 731153971 107640075 914506472 930365903 970420624 949087842 971575469 508243948 574835603 871417692 967957924 155058355 537496145 692253745 869255656 741064566 790015371 104248441 412996683 114397527 850882520 69616457 536499923 833853735 989328591 951416708 956833829 815790957 981590715 501213701 556830132 243963348 545400902 774669916 824912706 557193 199278043 334241138 456158433 727835999 749920308 121857714 521855138 694604501 868064561 592630306 816197529 198632916 908908073 657628234 915690264 733696621 839142670 747690396 966938664 892459500 912751792 160488488 548518356 419054654 514821967 241059209 920512166 703021965 922021488 658763858 954657632 67433613 490280618 694273567 701769664 273311666 460529091 51506332 974286676 63226499 128175988 732613184 760594966 349636134 790498160 884176101 962022533 141727633 266388205 675714317 869616529 695461981 951838225 196236968 436379388 456755484 850179664 270098567 787097197 301117015 377044527 740710245 967705832 321132140 932429746 722402211 775262994 353587663 756254223 689237451 895623400 509840222 560964765 846591876 984368581 853798023 886954518 991905276 997880592 909372111 979101768 957455016 968111558 317923431 518867057 474543587 626937199 234597807 719654404 528347036 984297409 871350363 907263535 877444928 927191326 884486772 903548113 806003732 999238946 165430776 571913736 201251263 894136051 871149984 889387312 433948308 714608852 524860464 808731433 577521187 681402438 825501162 989271138 306004897 507062714 516849738 833512862 773362289 943559039 417638857 865436407 529972423 647448268 797109575 823103566 707718301 731878188 756226910 886039661 884244951 972673056 393362915 836697357 508456018 738473702 869281614 991270584 879797696 892023633 900374598 944605952 34557970 261800382 260111222 598922224 203471454 654667867 4267342 231756205 390773525 487503381 846998991 898839783 633966689 868117707 209968148 934611581 957793591 971011759 393124977 648074892 536519066 650186143 968405607 972755233 355306253 423485591 781850882 872214750 340217258 465539500 290973084 801119492 93101425 104030740 283514678 841329642 380112 115018793 907248819 969510423 825664455 994323259 628359854 902304156 121832024 949993956 193808338 809437733 150338777 402598726 904307240 983053381 836950153 938049929 11632588 334764556 310961382 486778280 188411871 958399288 264742243 864312716 16799145 973345610 766770053 844539855 451731893 537414741 393287799 687084897 289934946 763357895 293669381 664966723 295227275 590112768 979296671 992300151 617792179 638632240 550299451 558610231 606192350 698898988 442063183 673864182 423485288 644057097 75007040 112363778 359701596 664251948 994404390 998433495 664088188 956941678 134021027 894550963 71754479 493701226 856276699 980696444 10412667 544145400 977638864 996498813 161889923 179354793 44965968 577144348 642512724 793684668 358198468 986843685 56844634 290962867 152231082 795179010 250719452 677179910 125728766 869298122 949213510 956773951 149385131 255864917 202538850 475091344 280528356 789365153 8709909 687219322 593633357 736423128 473757036 576895827 111290601 961815254 543660553 584378217 766858570 946697509 625668165 912687265 455939334 493103046 822893054 919288471 731200049 853768197 621168212 922691694 701366595 713756466 32820334 875359857 728358285 874801902 231010063 288546432 171489826 973229255 235203146 894976946 512170741 634868083 796395879 809355177 152398012 965276733 250385381 392665341 37289141 746932973 734215541 877699148 580750896 803699224 579949409 618335766 327857857 453579529 196661081 521831791 538664960 554457017 315132355 412304074 601381003 715905676 3878529 814831187 206699905 380151518 591589537 761329269 692617746 915177781 279063134 553936026 338264845 784216091 334795287 715327050 327953791 864689391 126246207 514042363 501437891 844852578 843529803 893255863 134410946 787680837 216481525 577014474 650508697 919039769 356656984 425201860 24202036 897390735 399886232 697125111 502473941 983534599 70816703 342882806 877040010 986315603 310019296 817066843 40286545 152036903 822326505 931530320 687660454 912783105 780386852 895968185 505851813 511951696 643349527 669424438 336475295 587273407 852548160 884442927 180116825 701829328 361576584 552829127 579655764 613578322 945276975 961545840 725290789 858539524 342892892 518554463 676990223 784026096 457755686 544814523 573509966 590109681 33741221 310276603 325658703 603412518 407409093 594047218 39413065 134154446 291644568 617254582 46164439 413366427 420540152 831263311 164640366 213640224 406364976 827583030 79329463 619650795 963320503 986312491 641708129 692324628 832419984 836006076 983500156 996677674 570497799 943824032 29883275 963657013 445126104 825419129 406571373 684206510 619687261 979757893 55306482 666069778 798858600 972024615 889261560 916183139 39122130 842268666 601480849 620632084 759787408 845591653 395436673 656657170 137287396 482996133 854840089 932958266 356758084 739995862 54632208 892694253 552055460 733960042 745992866 928223789 68163175 461644005 85163899 288891838 202780855 605210432 300838411 411739143 988383606 998399508 468363905 910483914 237401669 941350925 464620960 886635393 186814376 405942510 613600173 876227824 496868286 756523880 533524132 985166914 28822685 679837565 417676320 882773328 361098456 632669911 897027510 914296686 358635647 478720656 406489054 944466081 317166229 617124611 188792995 259544778 345693096 584498531 937011618 951790330 406177015 589400576 139739774 274899077 602950791 722889995 915464990 984104668 207688029 813635608 985993461 998661545 205707380 842718714 491509359 919622977 796095950 894989879 362912386 585801640 981609743 993829613 77028716 168092461 154804545 703854189 445285217 505258220 665170693 788287171 169590165 878897411 446841398 453645600 720780129 913822092 85209386 846669526 887794769 985499677 521660260 682666028 652929767 939079932 42384950 55969690 119774023 688594454 880704278 963645347 742902585 919370615 762440506 813696903 568312619 848266345 631179711 772344192 247491431 933269730 803975568 934757664 405311073 572858899 696777974 797056464 461256907 899226011 807236113 817002548 951189585 994844195 278163350 948609820 57121493 387233331 113163373 643469684 277329667 431727458 140998815 593528205 835819 575389918 416346738 715060941 385499537 488676779 401860711 524541152 221386618 562441979 76813293 174947954 122707243 926816289 117865540 612840067 373869049 613601035 194163895 201700026 522417608 997204655 137661105 853964823 386572379 517341369 124800235 219814498 375135929 460766331 641427880 711492066 491689415 749363888 405273010 930967366 452980138 803197261 503129713 913314333 267314524 820143854 483668308 746827642 131902039 934963894 135471592 234514849 815821720 932842829 507325576 716065374 366898500 400151030 608025148 646380551 774642226 964816924 94122321 256206474 391386883 778515032 985472592 991533791 200267546 438974190 68707258 364153948 744078130 895292938 9048526 117226937 618336663 768251709 306517767 308051509 90087033 478164074 697895640 709014871 808770964 881044677 833097292 835402681 440384246 550430201 727328761 933745238 519396811 804990347 745240516 903445223 205283802 702115632 422616567 549789642 908592271 913135977 873502428 957469364 144142233 279179411 684120576 800244845 5693151 756190637 493098807 627766281 661826697 697438308 895068748 915979118 894189590 906333427 169208562 264453341 230531210 563564886 543620643 930779438 266564335 680997590 351576989 881467753 723581164 989354880 803112064 885661559 200373038 798747739 30807513 544179236 56935347 114176897 186053308 351222760 787043999 799131044 30357111 561122144 436114570 899831273 347631867 568253860 105839372 786741097 438011780 856697103 560046929 698617558 423770187 586574587 995838410 997965110 934629895 960879058 148260299 846121426 443546445 453535587 741935802 819946489 354831058 574901634 543154634 749141193 477906215 571577435 270549348 870117144 462734215 582905553 180055701 408013616 661340700 771323290 91561987 785477264 319411654 779075903 535086814 844591445 592853922 884586688 873820385 952562248 641002360 809479161 71148935 83411888 940477704 995408144 517700872 805612884 835735598 966544076 787026202 898955088 228439679 615082762 464846585 789634267 813675410 901820017 858393815 892975893 831971329 903497884 825367409 926002467 484106420 993365186 3446034 599888276 731529200 849336353 72525428 911657516 309683338 342029072 948537899 978684904 200934063 448681955 408843262 677076814 463689680 990781369 24902369 625021848 932365746 984003435 541060165 688754892 310901104 905416993 305268641 568434478 265633764 838968289 785556255 788113083 673799503 968820782 855207585 863762778 681320995 743333691 440195566 625313682 422403985 527177542 521322144 732788883 344905001 854977859 166039573 411182088 330454770 636571530 589837268 779264019 719450887 899279269 302483237 742261137 599870691 920127819 853295563 857873939 524822337 770337624 706442197 771015608 67924750 511394996 726684546 800083119 760712021 859603460 142459030 722294534 105890285 119613631 51447433 402968727 378656172 796224266 953662493 960419744 410861824 444703266 710024047 800461891 723719972 916055303 903561217 906408242 432690126 794725542 278370413 771064736 465445127 859546942 647371469 803061478 348649518 868770455 774114242 938262795 181257269 469930813 887264516 968144287 974895771 977214410 656637452 831322577 789426507 818611694 678020307 764255676 723493037 896367185 832371526 867399181 510850056 627386596 981170920 987966238 258152381 488085716 255223059 273703147 201767628 433466642 766308120 933889623 966315549 990458499 349356228 634145382 309622368 840251087 859179482 995139011 334985246 644033413 575238823 677310581 144370237 322663255 903920058 911814330 349340119 424649115 358985264 705006332 729661912 956771104 841206615 933911121 734136586 928030133 927812960 934042692 20135751 204249658 533409307 803221419 168200011 888640638 262035701 728234196 972783635 982878727 342569245 372557243 294580001 523015510 8565557 692668827 313636474 415617272 815921067 864514320 836365804 921129283 230293121 658350919 260977343 710530459 236876124 368613673 818313018 979376301 729854695 932212908 731416338 757440381 794169784 803517345 829495179 874241830 938487413 996081721 462667022 848438433 941273150 974575355 343802627 778557167 797641962 941098647 360323313 825454959 883126274 961790378 531159064 693979674 622482944 721011964 614518234 869552296 675232672 882558748 505851671 865265288 649876990 731859931 927809958 977824472 638386272 760823255 901147687 978122345 568647914 748888178 341064125 826411641 766782061 930679276 248764656 712237355 149835705 988193854 886666943 929903228 905458322 908902930 36044183 185972177 298072242 612950143 849088233 987306115 320603949 499067616 997420137 998970761 712054518 803787601 673354420 939341601 382354874 817291675 110298368 824969386 675862439 920893959 87409114 246798934 224100514 831571377 97307019 845634448 817046552 989081942 27213797 623733995 21497189 619804444 481641736 809114069 174229947 868384727 463993133 656293514 773481806 773505386 518634661 709542266 855180947 970325644 158559710 842912856 220042664 273007221 283793801 379990215 16080115 460529431 756428470 885335141 878739598 892147118 306401023 330524426 25867582 951304738 543207581 870000043 11932737 648333111 39172752 752907529 60355923 761948667 872863339 898725404 754958098 974451772 178349275 540556330 25931605 179650620 364081038 779334739 165284583 190818641 175651762 678588115 79626589 863588524 440207570 956476912 849531921 996295338 277579626 766313192 104975978 332499198 688082171 948637362 563579404 687356131 77968181 256428275 287544876 592153493 583466664 848459359 33014665 670378781 254655808 606061528 517284525 968877081 370070233 453214885 264039050 944288609 278890873 776512131 220798563 261234347 499433854 781135687 553860066 927035328 218841016 601965284 797727730 995404707 509090451 941254016 139027889 788321557 744601654 870329268 252571986 985177016 678277684 831923993 211978168 730450633 472683310 855844970 368779102 400464070 520318334 712567209 638478548 768222025 329045263 353599977 354698870 425426154 124000625 242225399 377213844 806186143 473233921 744686775 118105353 555406109 634341441 794887269 743082091 801390366 950670432 979192509 734753864 761257390 299833751 726870900 318264608 439625588 227201307 987664650 631869435 913425612 161775576 822730484 943740746 945969584 71144407 835763806 640260580 841239838 982807443 985403423 766440188 924925501 163436053 797992659 841748433 964370407 346124604 862867174 306549590 613899540 582579411 650933182 652370999 889930831 189641910 756372900 619948694 815587286 940441129 950344461 588211845 830803976 843450569 890937496 312635489 913857919 838154065 917041714 888785460 905291050 20410790 721671744 615229893 851006738 988852991 989483111 155853435 702561484 881392405 904549847 693186073 996054013 68001075 512892523 120847714 991490653 343573360 414866366 13176234 865487467 279063007 283198570 898079362 974744578 88549624 206454538 98094250 584484826 6733253 39132781 58981387 635111935 977654675 997858883 89235793 279137461 322514084 685989850 304797607 706858334 438944903 718937447 880191412 907844913 961448956 998927352 732879460 928171145 7939189 898390743 269034079 971819061 703705788 851790010 81948178 434948533 941192866 994479793 660361861 875409851 396869174 873062596 647256198 672568106 825229586 843022456 138988124 551747940 359075162 827685046 411060505 845899959 229244343 295882002 81415713 523020749 974073039 975723469 192998458 823208808 345988941 385750210 316555910 942153707 832599638 957135792 922718175 929465016 919276500 982707772 576803948 669036695 404443947 549263282 517127799 548484969 549538090 854760811 188167672 402008671 818073450 868164415 820589853 875622363 57465390 683436093 244497567 680948149 891678842 923819776 201669875 962570290 260135222 467609366 625172636 635289042 467584907 793533794 749639329 999318575 296510113 691568961 936440035 966180327 167500563 975486544 374298688 548257349 61909191 400516013 730313426 881583871 729613532 971876385 503946863 687393266 689838814 976294991 717827673 752202789 642309044 899494439 718015048 759464637 549194299 917469096 683769257 842104895 744547274 826019978 482052286 555732107 98805840 387309908 713760719 729322985 836182654 931467705 406895934 982121444 462501883 615416142 309720880 991356551 248923540 694461499 660056361 869582250 261650306 794185712 700997614 921275979 502975964 852252226 320154577 454074464 159650237 995918130 9004164 722933682 817422408 971472403 440938854 658666949 744696867 779667155 216294213 968972433 482389920 879456279 301970491 751696231 924452412 957812977 35455508 319330111 283246765 372642016 729458087 790425985 429434748 906837164 111218688 626632970 241768085 633379718 852631512 921692139 105900395 117304100 233442253 555416391 331270151 606104946 746472399 978732119 552678831 688605152 867206479 930071636 200660035 411524034 263203179 678953262 513787454 856528407 354486189 861550832 433241313 577117412 843249939 949510868 779309165 897367659 678989078 809887256 713980428 813517975 899956736 900898201 802828803 831175865 338880553 914111540 330658013 345880481 720070172 939656139 410210342 488781931 853591827 985505406 948135486 966895162 32924137 399568373 313546868 984282248 647004470 806875751 307082558 753637194 987742484 988978278 104489546 623039218 882043559 911280074 610404527 747884311 607328108 783542939 181146021 631428088 794664759 943376321 371120686 513425357 645465892 843432591 176850983 491389891 436941396 531090892 129464557 232754574 801826639 992149032 697105166 749248537 385365735 786235324 778229663 787892515 77239170 197263467 270531442 792207027 745523508 965920346 805121357 928083376 887731020 973030227 555255820 793694166 664697720 900999744 813641202 926016053 284717994 761625672 235068741 953189317 689424188 933726279 77120496 557092721 491463674 918473200 402885754 962796880 387520060 734163807 787760551 827240402 867899845 902496565 897547734 938362574 272635694 972472624 268354092 935306753 62822106 745339268 126842401 992760529 866817021 993612357 886241474 964411692 495256093 805157238 169423263 445514227 1784685 573475891 276335778 751543758 209522202 889842278 639290072 788081999 433373998 590658496 682199621 871290418 975224004 988262517 810344158 837210638 293387359 907072669 345183471 879485389 56870390 707310594 516090354 906440284 807309778 968018687 46593134 751676512 953764762 967247385 542667026 819720245 205195965 258462572 898053335 931854967 726217409 958994247 88794756 351439673 143972778 162199688 903131478 949140172 11414608 677976319 156892337 804106727 487342201 517441887 149675808 185323126 189479728 357501921 218330898 666957754 357611167 502013498 861640374 932296316 788082776 834403209 204305112 845557883 63781464 378332123 105521876 652946707 169474742 274841782 313485529 936690835 323787476 671784330 188310101 188593786 300742915 842266304 293964693 406821736 996029364 997006486 869051358 940848399 445970208 924106344 552139405 679173709 558004373 679214959 145063333 523261209 960320450 995759411 615945188 857243665 201166444 619709131 589443348 907016311 432743052 625229643 104526944 517755559 866349041 993211583 958931863 972433932 861022396 940385477 743322568 831356337 178195837 612195447 823961287 894104129 553960142 704460244 969710156 983242732 900245335 933186276 834329163 994472472 981727693 987147761 279575646 638700591 363353832 499672908 64070009 163459734 426613781 509690323 633669767 681588518 916145268 947015189 863296447 951225453 157698242 569361317 479650306 782573450 648484806 807961014 65232227 382689006 604304841 695487455 351741233 778697936 68842981 206537903 465308800 599572666 180174926 654752293 402387147 762089924 695968463 850773396 110282579 902564686 930956105 942488619 839822967 944437885 310374856 518902388 185928677 687147776 604433713 845432510 580700823 613945780 713399326 906578187 980419594 983921442 859094030 909252466 568062290 636313104 62436085 629062718 108204221 919611170 216766412 582199444 228282524 506023672 751054856 985268440 491047894 659070129 272004687 698807927 680902250 797406702 915636394 939870807 281677350 810676170 505175328 920430883 870437885 878095990 958407700 973352622 323920501 738401518 388421369 489218179 728988738 962617322 635486577 788061683 3810457 224443583 847790541 891408210 930131675 936059100 963429497 980110077 827468699 944635219 591676215 914767360 196724299 943964394 428047090 596347827 264951844 454094070 995608036 998523090 261102147 987250398 876616611 901262556 33088888 275295399 850917661 938640662 351973790 917170105 474782522 694128618 757406424 913256270 5325206 226432549 972587858 974597055 58232867 850941882 943517365 958473025 911882771 938911467 344314305 920883344 191207196 581654200 700643932 867050359 105231788 277854971 332584522 475052533 91962362 850718743 320932589 435321598 416144130 930630778 60175406 496840062 175160589 668715752 182693460 909785115 852806602 972574568 979213803 997696575 769185204 807315279 250283984 430161775 536434795 584561973 868410159 900936844 252025840 910121217 685248626 692810160 216387500 520068182 467820693 533773416 884990031 914953452 964039567 983286351 889957476 993798947 343990479 789139292 994605804 995473052 915096905 993674823 426306008 753998805 213670384 528470460 60178761 745419632 748724327 830304674 43544970 801259846 383869853 999041183 22212814 793029408 483595722 515529528 857797889 915246092 149514294 897274961 445539426 921835877 333974127 739225715 323576311 529032433 426703380 977437199 15084293 608362828 892491192 951987520 321778396 743789822 630902695 715383737 432130133 642684434 895366181 965865105 755439963 799469615 610143676 971295157 947913277 951664760 143162799 324756566 566028982 861085737 573965133 934434220 432060242 773295453 568429492 901062704 151440739 334904153 332573101 719017135 387549014 669999970 200535084 489093115 911798732 950502228 758197532 775639877 91114810 522336281 506418405 556181938 446039700 832436379 163337207 354237888 40589690 935599407 114494965 654315617 978291483 983575172 867905407 985921786 75107545 983649814 320143160 886439624 879771069 970801342 760441684 809379506 136929808 312492125 472068705 549912575 724855301 856651403 443871561 703925060 719598770 831453655 265443817 372550555 613164623 837327577 858549205 943736421 712242025 720989043 760154331 882888927 183396996 985875714 355223057 664988057 322016375 390288287 793948107 961443963 983490629 983620164 392960741 481857028 369981504 593892977 226428431 571474505 166907191 827657615 582939470 617229888 256029643 801761876 413281036 851992268 893737930 931604902 567915117 838689883 456456444 469255369 513721920 564199366 628915095 849863293 996776874 998046467 31735787 872427683 97312490 342688961 788122793 922257613 778315643 906288318 117750703 815352896 651550184 865979034 794181727 854242958 389865179 580442030 508620579 951203016 302374541 940312048 943855005 987348839 302221541 523600171 727131763 886486228 439574270 735090474 443989980 913373791 246126324 483266055 612153377 883830712 456781143 907341766 724853401 819272309 20619493 378078986 714684097 954830052 723075398 982921821 660112796 904453705 333706622 962973219 11413075 482747886 252535361 729662082 236191742 682907255 591472775 816937617 477948262 947378128 490997034 890604512 294969861 459511295 412621173 703987884 348256161 953441576 666469611 974180056 331483556 642914102 404211285 992689263 964697637 995247343 892991339 916627041 824401584 935126845 800222190 853180100 724622357 886276832 681346013 924196870 762237226 871174654 810619890 966685184 314841136 981105041 982880143 985921584 838323745 942015378 481596798 893060142 665790650 693643350 442982381 669808571 316161533 496097382 823336244 932130163 378880964 992160220 915050661 920299095 288204206 823955213 604366109 995541219 691064699 707807776 666096997 717364818 212696818 576908410 663439049 695192273 551722488 579062952 323983287 658458910 448637564 734692852 987031839 991057304 382474869 653702249 711324811 854734082 157332875 814273959 380073665 744922176 802494564 885836947 845609484 942131378 357649156 494383074 901531294 979895106 540642486 864721911 478927846 504960816 959525207 964239519 688179880 966975820 686505731 698951648 302991423 332863338 139159873 578130557 916938837 922865996 409646531 873810375 13105601 538379619 895799578 927531944 442195817 632167521 610158610 727454527 404224017 685271506 295727791 546638867 319672131 321097584 535785458 933009206 468639549 893767966 860874638 990905372 768823303 836162634 161090206 828135494 436668563 471832063 724739560 916403451 814502361 831701286 820149981 908903694 457338091 984675244 709716989 882848577 160110627 634153105 92137462 863078594 632583319 690680369 108513413 111216869 62801845 711854108 279346536 783684047 99580461 283372425 746246888 879953769 883796305 951204889 439207829 492478775 470938442 732337997 93695252 734476807 238434728 469252422 352562981 672839791 404400526 583096649 122885340 700926146 68977568 887222447 534542482 762369265 461125995 691086489 218972535 739821456 269345200 402999678 534665850 805607819 37467899 889558168 289413267 641629426 841380330 844665828 714569966 794263961 498498434 822538893 141195592 424402569 478836911 865770639 194460571 867145792 785324603 976553746 97847424 994755561 381225322 633203463 863879743 929643876 567154197 891138974 202184489 703207579 880112928 922818088 255030081 386668864 46686634 543346711 567263288 670583728 570701033 702605144 237740753 348685400 401954724 433507918 272357524 509398408 84076156 325824887 733067709 829445470 954564186 979440750 988713517 991898579 574804467 702398900 812005140 903902110 366019771 433257847 484542862 820982325 470319869 481682703 981647839 985274196 770631889 961229833 675649952 848888737 10989300 549846627 565871681 983788623 743360627 970866007 160984987 311127398 767912292 913217705 854666792 980057847 75199702 180658873 818502505 959483101 383605389 531826880 354191849 516200360 36420883 987283881 392210821 549511796 497958670 819978887 868846213 970453179 906207399 957548156 870873959 942073456 856676371 886748526 625745991 850544424 423053187 554498083 685658915 939278386 186267460 876268600 59240575 479570392 629975910 768755849 79907358 285917460 438401803 807461049 535132700 939664172 50712192 555019367 309013141 328640802 393245906 608882682 398115706 973657331 267205111 680444888 706105683 910316025 363375850 592508050 32494820 521259972 857667155 863580389 679340806 679646743 623977293 958512841 239244262 973034672 803745795 875632095 920167017 981025976 145303508 215933360 394223440 510621356 717949831 737466808 26255923 768198334 748054862 926239741 326839964 859683521 967285964 977800740 92304084 597116348 915763312 942480648 571929671 938253419 909456053 971980600 365743393 967352185 546665143 755917889 441382780 562109049 921824150 968069621 632752310 656012628 738452825 741711738 90633645 196168264 717165163 782097780 200716067 982149170 552119456 961653564 758266291 784795868 585800804 933467693 985934461 997687643 667196198 689102476 470517757 860921175 42616728 130509822 471235738 836838596 412409495 682877240 814735272 935902856 935040203 971589735 279707645 373751005 742398448 938745563 997613626 999336578 558632885 630487916 588373381 958684390 269366161 986269916 761912196 770855703 305974973 509963016 614337618 731530401 38508386 813858440 684013576 958292277 434175360 450808991 451594577 713774799 740167906 782060480 5559121 920507000 591562793 749613195 650463373 783748085 345562783 496468953 143731436 919004385 855569832 896835472 385975525 608883491 825770287 883072686 482773058 849435901 41071260 193056540 890898703 946360608 889841053 898310179 308533067 508695710 224390452 850501285 151155008 400435037 189798468 859957635 582216816 811569734 573387556 654853548 907116608 938632946 61859545 78828556 971951604 972259741 394635988 646532049 535003305 583692615 586891025 721818780 191853637 633517513 120943669 452722971 766637615 824827793 462477425 768339724 938233550 960369971 239910296 435964337 421740355 751678513 609130765 774355189 395876563 653194774 527564541 879616782 330448083 746336006 363310837 741961885 92731340 622862528 471629980 751102800 32179515 684210132 818193735 975059727 699920119 723224366 174646058 890288700 980431874 992862592 741314684 959742415 85856846 597128680 294897772 749698647 249555648 519195126 17400688 313880217 915436128 965599070 8670342 617036944 762935313 855715868 16205700 24474509 974893438 976907203 593701464 901414408 920355289 974243510 68226870 848094585 175925748 382661613 972227785 995627664 38199124 596377629 200103105 688935270 696033927 776289774 166577541 865946429 461861190 861993493 838264927 949143864 591465298 666453749 782177539 956125393 387192904 531951224 770432861 965529787 851763612 907507920 664955395 820770636 675003718 947999171 657788192 676562678 380407430 895583539 369507241 591446050 270174377 519045770 781187370 782832543 385811433 435127434 616082935 782469427 430679689 712856847 198115925 990987650 424100018 697860846 288430957 929125531 771993354 994745428 772969438 862635221 681675810 809395605 626476307 874832649 228394727 653230910 953848104 980321334 650920807 850600407 365110464 709056791 494339979 559642733 371154390 397414153 351758489 753990646 428496956 480145416 151468550 845419853 980370001 992658306 930989236 974834038 541091289 754291547 267459080 762293049 254160177 882059671 833868466 980314689 268704690 386697578 894899156 923358833 367537235 738342663 537037513 674951777 149823861 244053038 122583743 351449999 673965813 924958053 611399423 805545119 168306623 635751303 387512424 602955700 848767526 919290214 81693434 960755851 64452247 541250733 487870974 908955830 830620627 849800609 90034203 269773988 61143233 491216408 922425407 982479023 245310307 858290017 500994979 880774929 465120269 575422793 110213331 140455135 654118378 855810406 512942525 566163217 487468305 579570867 803786795 976297913 342138405 392021324 644974058 855102334 583088821 731320547 189906796 251415183 411289419 772702137 654030478 936318615 514679968 650686833 343869967 958340872 289598853 801191537 490490116 631318182 759756913 832266773 224224829 313170737 997458283 997846970 830562307 987056726 64527946 397591444 622536155 963431996 980853857 984180224 241661245 738245140 410339582 780217942 705703695 715574756 36112139 677062919 263958944 448073855 728688852 901909339 560382732 642437956 437057794 660567769 533318493 836976920 963919982 995753964 974400009 980867506 508632560 676309394 255244533 626349823 400115939 693548833 144500696 441594744 21028257 662896065 65933936 290207206 65691653 772287753 69044269 944554109 961242289 981149513 467838022 771912683 957623343 994705599 952658609 962281776 894868551 975416402 835235101 961094682 573979218 662098409 355299181 446317574 643407754 804397087 332855647 839046032 547524159 687749758 955406392 989543593 168380105 514794445 943616512 947260623 409834355 688662015 231856926 629424706 280939818 663220133 843735728 938896955 607391203 820254093 690716714 797577437 511821408 905931327 648082264 999187627 216718935 618371410 490816711 789882497 654194033 800966309 486522013 860957509 611323375 930302270 281984890 531889491 45515721 591283040 605546647 611800174 692582446 824844466 658401234 717847339 689896059 744553086 898538005 987666313 234103931 550435880 110350096 536154296 684893959 946468811 286143083 549584243 199913857 892679351 960833332 986830924 334227371 565350638 64330684 602091278 736863386 848211387 865095425 871963841 645804062 976217119 439618608 713808192 746888532 784801497 2976482 189884842 810404669 982973391 368044448 393760492 430592088 562260768 331681324 779299626 242248906 548655665 233645480 578772965 325509633 501498065 222496921 583436416 398178169 993603577 343476980 804082937 583975428 645262736 552991270 819483734 513130011 779914694 699003427 747110223 950702950 985951210 609893157 962298284 872793692 965440785 546248950 633154869 8868918 630594827 541500455 681905036 186233176 428202608 913074619 964414340 224853303 778232475 61847135 400590191 519049630 758285441 100354513 891035885 478400755 502172123 478409380 792470345 477141002 545824375 467426902 718098808 472417604 973206685 708451955 811924796 582868199 985404426 200188791 454739663 168902106 628128502 881214898 989977421 448960948 677336044 958426253 985451718 767430655 785150374 973300494 986045721 45993219 64507592 968421901 988431833 419962068 736778987 251139269 289667437 446022907 723217823 842370275 858586076 719763982 798511017 192886962 875001055 422322146 454400470 567137865 951993973 837022445 929595436 867180224 954482367 193216074 285057131 270224287 662885425 422088759 912803460 620010434 772768102 295928544 577413760 577495370 716300491 594233573 793650256 149311904 395682238 474715253 797912594 252757679 636390098 691414992 794355845 404946409 550089382 31909719 60606206 242691499 544843578 299110867 488635317 381973581 670545289 993858676 995297185 724273228 867622702 967850652 977966096 285572949 444972919 341863858 825145531 189473400 842043354 776254009 803727063 40469120 978892203 661140474 714323587 506379664 908170148 306549904 929661295 578509263 980074167 375064528 777132426 152123328 233102491 26441629 89533196 437235085 772039170 562439891 581309085 842754321 914466050 175705199 875299572 634463305 804193432 358823845 755090697 322078307 979519504 809032278 819955220 14530565 377565946 821311489 943395722 767074134 995761892 562908043 929915931 996094334 997283500 856860260 858099180 433678354 532795538 838121477 951401785 98810269 681359456 358433212 576520128 355615678 422243176 142482789 710049004 702852361 988899757 923835464 929765519 587724744 874618007 273121269 704129225 559307998 849500014 762617570 811694472 124164297 248171866 1632070 667915680 304364770 822854133 344414575 745850485 298281311 600004139 141721201 510202595 98358422 652575563 271882750 313553990 739738443 928820219 395089058 768211678 485184928 951377359 132591277 357526572 149789054 224215269 483291118 896453234 51443394 994982157 697638911 931874560 19223422 912653613 526951008 842964440 370943570 784311405 458106554 770025826 327342595 357701550 507803277 562465311 534818680 817430759 839719499 989442920 165661384 666929416 661548633 663878769 909259530 925834425 810676814 824777493 942029092 964034965 717169236 985909697 851795803 919154293 861612935 989761411 116137804 267997365 655441365 929688535 715112277 798008703 195332793 348031077 763273261 910587747 720479984 728519606 849292918 932121099 348123485 396463179 611578061 821714213 304807263 340002144 502487802 833496842 952645322 975679953 411870315 990732035 775069411 853839248 101014032 624111144 840932421 858207208 751182595 948568595 925799741 933002624 82043436 706232107 740385620 793388871 478439055 996269210 407054007 938743171 289548627 535868819 823564397 986482757 788520209 932287983 795665591 893805382 596079269 776208304 38704390 213534323 658606925 991087868 156006435 602625249 397551253 814009161 247173685 835706026 429452683 534040937 818439429 930308995 22189828 103113047 580785554 754549621 372720793 493877196 535102070 882366128 155355178 200368320 521619950 965774077 140777700 872383953 688441383 746152187 892400921 912252077 112222932 353192152 633384218 639116984 167340982 752128677 268707068 331273950 101787655 144938847 632595020 859469171 506592488 790833601 929203558 988997542 934765612 980394321 480328086 597958779 392857855 707681251 536469406 935709352 935016007 939989663 418108833 743355965 258615291 962159896 489645968 501537655 440638951 694531764 256499232 281644333 904284652 935007294 295681801 659534150 226002217 624547940 473843770 558303733 264508993 941890347 685108661 797545638 555022322 920465875 839331193 848511981 108911530 120344824 270265807 483081721 620278069 793463933 664200622 705413296 56198586 80131698 247349066 824018203 495813988 695838047 297533779 837869771 909246113 940454952 848489022 885251230 899982003 978055453 557158265 587091545 17653157 218669035 207575464 633976105 477223323 531938594 114903651 355730633 480450305 906934878 464686544 755969550 223937152 952321773 457430134 579295995 676800931 965319524 476522052 509353806 425917161 744012390 365307158 609955741 938843894 962444503 127047613 650217289 219575078 556584611 924168688 926601271 461308197 599371676 466173368 573564230 511132423 515832279 240861461 261063880 396881672 940022547 158299955 185268807 423731000 686578828 961161921 964418277 81459277 114131080 413019474 644462296 989556766 992652896 477631364 980553145 306195476 775625934 629573396 693201300 888404185 983988989 283112264 805023649 431296633 471841146 234263056 278330336 843170880 916567308 243835747 723007222 719459406 998892279 206140093 490672264 567234292 692359013 991501846 995173404 668760501 919274198 370848943 739847214 621298927 679761414 732382146 865587973 689418276 739010451 621757846 743441964 185894230 656400968 460468483 528040295 178597836 694242241 187055159 843281593 847076950 964341794 155136517 542951306 721725318 743769124 685178583 865735302 639375758 678245309 744144611 869489659 449633273 515210205 878919336 916908239 699417098 960110281 572404397 949291497 186882930 322838953 118461088 345765848 947788885 994405655 759279917 965292367 733047719 875073845 731343042 757838170 767560586 883395857 243349238 943165159 571584467 651307662 918968560 936826115 905715906 920031583 634427851 890833348 800788669 911187952 873425168 935115838 377278266 594968635 904565410 922047480 314490141 476447173 210028742 776638270 843192382 969675837 646341667 863669955 984633148 984699338 104438483 303147417 630783260 914385128 995092372 996128705 946228356 970248785 684429308 764848449 982318201 996524369 644142295 867383495 553802180 944548994 36829055 980167628 323802800 963203920 538190149 746870080 615690877 681526107 793505300 851328062 948051524 969284044 722341547 900399937 564680074 877741499 805604109 895864543 896696898 980670680 441012460 923540651 77604819 889197459 943094771 988244672 832839919 833049588 39680497 844221360 389138811 461085704 604388295 975844016 886288532 912824865 108659889 973170341 26203127 137244678 666211433 913118956 971348901 995598778 228062584 777304410 875752148 909012915 934888881 996895429 156752225 861999535 321617388 610607860 768929279 921517681 100690458 354623926 396084636 489735517 982352623 993850176 749626354 817493755 312831323 535883900 984791691 989883621 741599189 947446608 41434510 581741394 584267201 983397817 305069658 971872476 567275723 645998840 375562951 785732878 366860590 762600630 975851860 985743256 59211681 505254988 820240249 911893522 139189831 173858071 69299987 592782383 297872661 428278470 815357376 885686672 126289560 304954661 545768842 597430953 329076950 913805335 707199279 717581403 42523383 132050725 419885768 941736656 888493131 991086385 419367816 799343466 120651550 925037807 406025850 985459169 862921396 940154118 506751884 864774503 496800261 557599676 329532159 580598263 519256510 851075754 550113353 784528354 974966333 977935272 258085189 810028610 968242164 988196075 694736927 948815487 937117929 986554095 338706429 419681191 363668799 739473939 561475209 883479729 157151241 282497468 507145169 804669801 747400328 957702518 215160281 640659104 784321540 902090214 926432851 976641417 384519430 865984461 494095146 892764180 319824385 335518925 28185655 716394041 479101795 927151497 618002286 634148756 22966176 250588164 851348280 952474156 689132699 735883147 800934444 927187786 309996470 319040044 725583738 826290823 628248942 672607575 406316266 498174717 20166689 317036594 34542913 671695630 973314943 974020607 79780636 525289582 24380675 626007342 690862056 811764524 792815742 988170404 53666443 855499378 223051033 976674241 331698237 830265977 144463435 605512921 783046117 868802062 480439623 838797644 576572550 872201367 725526653 976082479 712532274 722282146 775459625 869285213 981738349 988328758 867480890 891708735 82473820 132336142 389500052 495099801 432240987 568188427 853396732 877274354 335404700 992085638 889252245 943525970 628901857 690078054 492285812 773276077 3705325 961871207 396085096 535688418 885268369 946980035 190581101 357578751 213904766 352570960 772916750 939122369 201744101 265088940 130566916 922373143 438578111 734168000 884722264 891161768 905372595 950220116 926098146 996697358 712920024 946411220 993668188 998075875 332178888 928374548 26140206 626598192 193344626 598365102 350348929 493981450 689224946 875396565 951925161 962700417 385751546 925898458 146547833 307053643 823843915 878467828 468298409 655211814 985953295 988467359 358258570 390329799 766287755 776413989 846483564 939652990 168991202 187642049 358567040 806763680 462973399 711888876 258939165 539651907 638287580 804091171 749721333 779101619 781772351 864324678 1096911 571580266 565955828 942751907 976293447 981991140 280837360 363721006 825575171 982712226 280011908 782832743 982733643 994539021 841001272 947881848 982118590 993926089 796749586 892568542 804685086 847099342 586074305 815820153 727586101 857484762 205440941 994645381 50751008 178309655 930612252 987651069 441603534 990165357 721635988 737755456 142069837 162115407 857101947 868058550 183645438 625161279 345477718 550207729 512122715 571126150 47961222 56231338 377204302 776240790 97641289 393355934 878121875 963234503 855043404 906452754 567947973 577759506 980875977 985058758 504145658 652986319 829116498 957855998 314536960 876729989 651577204 950373457 727684921 829661250 629694217 826118231 253352512 795073097 800634931 952648116 805984940 901670500 158402891 192024338 323393510 495910053 815883353 865591732 556328402 879781483 920696259 970272852 123715359 934564097 655583769 967240881 123437832 268269232 465983184 553490376 63731140 339535164 755710064 851936994 575118144 679345101 761878811 921197835 924328838 933228332 210257754 456981163 718796627 764714046 102314602 487354945 901487455 996763437 8207850 741749744 5058999 740215735 640606044 976268299 81646171 529004851 529292891 582303399 112370543 324345563 183703781 372146463 42427929 72809823 647627279 853993049 618141453 710520656 861846425 984820902 175889962 785890934 697991040 816242336 6907989 97328983 126932457 626889032 166044073 965347527 48392852 599717098 59662432 203404374 43476838 210189526 937945738 951998677 888227522 950682495 251057933 914352277 728460138 973661679 796760121 967658744 652984589 869451668 368542461 596447065 251034719 314010006 578439029 779393951 219444415 394368034 738183196 765693061 959355109 962293903 777877080 798159050 937972577 938162883 181148628 766170854 668120058 977109415 804513909 894618806 920621316 928380516 652131147 984070254 901806 345932383 279201405 371479032 621616064 633907981 219405534 493633746 855327160 990367098 278664435 609669137 570547735 847438520 406695477 554030750 257519037 286604420 172766394 935740855 555875563 686147413 540209572 679841041 543596417 558061541 800211140 858333523 365749673 561389597 791938210 798077095 180307262 745417010 508556570 600124739 926850825 949654551 525962960 601724122 492910818 991464592 312719628 390011864 553729712 776174415 912072888 913142168 786860693 852856513 741877685 889842210 574934305 796786917 470816844 557715405 749983062 869778404 782390172 912209050 596312732 668041095 156200421 237275782 591313394 996176589 539304733 653454185 247360522 840328376 904968482 953441829 340748081 779121022 787192179 865121540 795702127 823754627 824681817 967310601 310951075 762580902 625422983 963781791 678583739 849438530 401547872 721644790 860382393 861123312 895179257 990501479 578514743 727563295 805665396 816151448 546413392 958619545 940640232 966650181 796565837 896555707 616503774 916355166 280271866 660620265 628144372 971121848 706705375 777528024 147717352 843613217 121237967 147934205 671201671 711748370 301854800 542596186 214336062 506208717 314105681 816436313 995423962 997487241 464193445 972246972 799115382 885469411 71915986 717509498 240547440 820552949 760752748 979430590 102717010 735530755 420655285 816639392 781101009 998415913 745847044 816780477 473971324 792226213 669771384 772908177 875530748 952431826 577669043 626449265 846712874 895766021 360792604 389671085 100741910 390961157 510903149 820572051 606204470 647062608 227198152 635192404 403654676 470193509 43270126 569871147 879500032 960308070 495393630 588073299 428202479 472783595 775633538 939135147 710629469 807204244 500259196 842586753 260948033 975200046 924806054 974285187 330753197 643051922 996023234 997053736 110854549 512608159 692263227 818569351 509323793 762554000 246927826 603644986 932820634 977204336 400781645 534698526 513154982 877072379 249617982 707584107 533237312 916628092 865933651 967192708 430830665 749588808 441741426 554828408 675727463 735143557 93329100 592527902 263419160 869034722 275845051 951720626 289687222 391029334 137787369 490910693 260589697 890428532 461020078 542412303 161388141 843654333 268947135 413171891 315537122 811852839 585502750 628946003 651819959 833400756 58474546 176512904 755096707 906441551 590237751 694952108 212758601 701276864 323602806 689976842 468708190 995695703 979854002 980995366 973895819 996737819 645889930 796106753 973641782 982831851 863530325 966937954 152770111 529551912 895807834 911137239 741131548 928278060 693794818 977539537 438756344 840238151 312172212 448812060 912059659 973429348 525748694 942593338 771460630 835455295 711114918 933356064 430414915 837902073 546523212 877730521 153763622 529574019 433114750 790314178 76521442 718344820 573407760 583881671 72954697 775690212 380152800 465731299 915145915 929938588 585488348 761282135 91059231 351267233 414902389 669968370 965083361 981524146 102211532 253659425 957582225 977315936 478674882 734703804 771007254 897898293 446503239 766869992 445376254 663360370 8716129 544976361 645557912 795729001 697347294 991554992 695175419 703924259 195866220 291714942 263667287 518925228 915509862 952190370 751869406 859657912 242900491 917526985 14625869 678796437 808923299 987093409 984219875 986533971 73843286 658367401 800676951 858322092 853232561 891159856 24728531 391243453 918052383 946951378 316886759 432083232 982760573 991820456 713249430 726901416 746965142 796320886 915953174 935172489 374559791 451811672 290234710 631424926 723998614 913162641 272205735 972533455 843554129 867695749 821868853 973557196 522866578 676492201 240699556 856876463 831254208 875872292 328843811 386706597 871368506 950000437 116397021 188721198 917407979 941720632 100045940 541632587 709880081 758972692 248888107 343469840 635158050 874745318 280090409 692116696 769502175 906326633 502871455 551070790 377718451 531475626 661398426 692993862 111241108 525044995 285726642 495450618 706052843 711317263 149554804 835308320 512559700 882443018 298103206 984942407 777089830 817515679 891449754 978888678 663005916 975663655 410165599 619265153 727425722 745384049 464212051 752439831 655311735 971721348 958647267 970872028 293019664 938093939 985605940 995718960 29817806 73661415 394070818 598385047 456343548 586095159 421663600 554440006 160259633 866126963 110690603 558576895 774229406 823064314 519572497 590483281 146116021 357119701 656925824 773425332 407804763 487737630 81575355 96688442 832669853 949192524 550410207 693479091 254141658 841766005 780179485 882632808 935237149 943992261 697369337 856307131 925045115 983595721 936093599 986371591 576793189 718396325 772504246 930923584 28451577 900273118 301569953 686236812 238850438 288134451 710487656 838360533 266784627 392016187 719770705 880654325 989520443 991257930 695376706 780987448 406878567 757885206 887522054 996362552 983980136 986815013 623692268 892282666 723671621 838829590 330459658 908756491 226991332 764922412 602970669 731066428 379227126 588186894 179707114 795482895 472429302 689267765 504714400 828868104 234588234 796366404 644370407 804859165 585256213 828559641 641561154 682955243 679432082 688466080 869681012 953925547 446315132 459540096 509511987 523369952 361068687 703177543 990517011 994193206 611720418 893117004 226667088 310485303 351818440 821703159 105893170 782040944 198902955 536499431 354755658 985328590 690192285 916698779 296871058 365132355 877539743 942002156 557800215 799817587 24143296 846006275 151520986 320928721 261841506 443800239 827330600 975086250 794131244 969128268 289192596 441071198 427051011 804410011 497076038 950540418 350741810 651311407 369475933 693417108 780949904 829620803 909823630 939666153 339421841 566952158 927969272 983621430 921645075 963276157 855770222 880269008 538617828 551786023 465102574 761983870 923566471 962341544 136423663 339328554 132591202 895854293 137720119 403044071 970992152 980521662 633690399 878991762 103936968 957113854 423864003 449273493 937909572 990018852 639170475 799734005 68715474 215817022 833001165 996291706 629835275 782465223 603982846 640889718 703225387 752646376 790348790 960053743 820786293 977699966 452818214 781843580 223026929 590342803 907617656 978736760 143517433 955374858 361227233 853021384 524120694 741781112 752555053 820808843 373610240 918630811 571840435 578832137 629466461 765031066 409125566 453169942 602874295 874621277 782165126 962143471 159191990 561389252 510288816 655218343 454955507 490766114 400133535 883177808 283552836 479845594 105969876 418726835 789438416 808939346 332064722 807684179 144869460 593332636 605132944 918552918 713289452 912687696 632982785 957684401 981377390 984076758 258401348 833688829 224806789 760348093 853259600 955822144 941109466 982320132 681923626 836407647 16689971 346441943 736336274 934395523 742928761 972026839 402556973 565617037 179913711 210558283 219059438 751060089 928790049 977931613 583092171 826639947 413757436 662550244 926768997 991288239 115375870 810537088 43512778 539383341 272811916 793022270 700939801 863689640 361691734 877297417 693997692 839428271 64129953 865152228 622652904 933259943 493277149 703549924 61562530 401571720 569428880 590536684 800355851 932137608 543342303 892722673 718322583 912799087 442333839 981184826 87722982 711189925 157581929 621673813 629144628 832228757 606708436 835963813 931140124 991417413 980889997 994114085 713867262 928240561 322069465 448520277 135253667 998145686 86725890 781814682 884741177 893280375 61002737 123185828 606455973 895439810 43358968 327797708 465385769 658206666 909388167 938476737 273396414 279551937 457081838 463675530 633742164 807518564 997270918 998644190 14813087 731645870 680401699 867086603 903432664 911398209 372730551 655883801 877758890 925053163 31351864 407942005 58771737 405940057 873112722 975322521 582740263 935865472 847155797 847353941 426726792 780218806 242466632 843666328 942061573 981725141 805003931 919929121 285851436 830454295 996475450 997817458 101248053 456295054 856107244 917399650 483023655 984202456 780971641 896355571 56032807 245147335 116982089 303796809 660338985 682282547 653334583 832020070 935145238 993473074 200927895 346617466 289747124 864198514 269731618 875610807 763842396 934107664 242587249 703433308 698635465 901577006 394392928 618040492 963537536 997886435 813947220 907402115 839847406 920577011 482260950 669536888 202878490 345724556 238116607 660107036 143814316 728875022 456791232 471029887 637475323 706814684 930440809 978689368 311164074 474875760 386854424 675701949 408864497 778103415 31269989 806180488 300108455 943050469 659278807 847412124 17196720 957174010 225957482 758656002 254839810 662528512 709632884 778733878 65687034 317205809 715603099 779533362 909462053 928999156 280629437 365268531 677305849 677753542 634927131 723848892 369800618 550903253 13202981 865482738 976869783 977307455 649105655 663725071 267873554 516814757 629473633 878029022 950763378 960647539 990349621 998555912 779922829 805718751 547375449 831299708 307565937 544702760 655470183 803485413 251879675 946845623 812708506 909147164 726662254 906032896 250432833 860456738 253381645 824532133 101488099 677878336 16297452 334168667 296771235 759771366 829333831 898472868 127143964 527950410 842971052 929859759 698545322 912082050 934743977 954097371 384077629 598971864 519228550 933841208 312513072 452862757 235827372 805186925 853397164 976949838 111701147 932880297 126761475 200855152 190817408 690917126 374047053 590441211 298752690 574575537 538268648 566385136 313109883 544376119 769325860 949657422 712760349 961257327 429898963 431701573 993506284 995283413 489692745 959584316 920102138 943313910 767708229 813539292 40694272 534677973 231875696 532498728 692694421 760473642 311920332 368350819 793077613 927837783 993115807 994898174 934107465 953184640 814686306 917228721 705707435 909950937 769309467 903204831 633736949 706810306 190465331 422469917 477937180 482836917 574393175 878391647 782578464 995676989 906427764 993523076 282505041 339785596 437464712 523237733 519255581 846870341 815734318 945071047 947817925 957057606 436987521 440304905 839358230 969593507 365354503 813759252 673220855 923285685 586522378 932928880 339480420 710500212 76229558 194760797 603165014 723240356 351752909 542606749 775879830 895801755 102894505 536742566 154673716 241758829 110450917 147255146 526900961 924871966 480122793 888992162 300380593 550897941 919253444 992980345 411337821 947995308 449462216 972620088 507080755 799680721 556706815 700704142 313080353 513205707 97170727 265487768 734918120 805014001 173508735 813024152 840867897 948613988 332076137 669202355 435217181 569665866 646861960 703390666 885840833 919824484 775361217 887901922 128678175 700049880 496087333 523305255 522837115 762465298 37662264 56000572 867619026 891608200 136123082 622666988 572308536 689137544 272893704 708332272 450698501 885238937 190680666 952886619 843752965 879471911 764603013 991992187 602677388 631163054 77451447 879951580 426168223 906716194 548528447 569660144 447304272 983214046 93518782 171421011 422091611 704567945 317984916 476892044 930275755 982795736 543528349 873330150 652057439 872672390 923770180 987104698 510482312 893705492 509201475 796846596 208498759 625561068 394759011 459542282 171944720 187559970 114052134 938778812 119889674 431293645 624916157 782184597 665535739 893825901 388602795 879424509 47489817 322255296 591176580 979079481 206738291 672195556 138734599 960951644 753210436 916683792 190455348 795607149 258735353 578530197 91446294 780188124 53493475 583880906 754458663 955157829 517855270 803747641 548774379 629392084 296350882 508173212 180216914 637176977 813095597 925588176 544249774 842385892 808755000 827252059 48225266 186532742 979470852 982632515 334715201 471739281 204353166 508195935 72023946 370063532 533550009 772150415 253023530 459765786 698103045 882696239 852297591 943851139 613714 938757395 961011683 968472479 375303280 457983090 351666675 897780551 352153933 768914629 897141202 909876900 964854301 998401734 61684156 762452962 490456316 960870291 139053149 508687230 176432339 895404965 825526753 841732414 231990027 929083455 641519620 734015447 762365564 866761276 652111268 822579285 958346074 978725235 54462294 657490020 279088528 679496439 670041183 924073623 910655430 937284120 894847640 964301418 597873238 764661971 849652689 955030953 10262808 432887559 563363016 974786808 236645136 411440066 126646237 495737276 357841203 824581165 939286508 942616040 39750047 586076108 903757518 946120456 526010436 569144155 692031434 948491380 17393125 33244063 702013534 959278168 718647369 792305103 522409040 708086694 539611838 990743417 522859168 756201822 712265976 815252316 931592379 965459998 980051650 980857418 112491245 328963415 403705040 897512949 112144549 853450838 716815058 836182660 952249222 985491408 193993660 705485453 232549479 907917764 456415578 493062646 441454301 688573323 566866222 787273435 506869702 757806287 272302855 401219240 430290804 940692516 126814309 247784918 620966181 761849890 271307766 534228697 733587334 803759362 383717686 417000999 23397966 986679720 494894128 880085960 748799940 940332907 501872170 977017494 698719237 986558070 913495080 948804864 564932650 604278895 982597833 991195202 656325178 986617901 401850362 701572562 673527353 738290058 338173362 960947124 439457083 958382836 228834504 962433414 933903837 973491921 607285874 773113676 612150770 933988808 889967099 979742979 896755013 960897703 728674265 873428401 558851994 586351412 28984262 884324437 642928476 937711678 821890991 910176886 394088032 470273778 915063767 933648732 281981758 882487702 70732557 768508063 54782431 136640639 920823480 996863167 472835195 849352185 685178537 812597616 735330574 840467867 143495903 468465752 213915343 350862860 933334241 977035672 393070156 690737125 196618643 554636498 808931541 903278259 238964875 594535572 291983500 658423553 975816393 987754373 930767871 958527448 593636409 661662723 462779274 471427325 792579092 957899846 517145000 689594843 176931400 984760823 26200927 646709600 544150348 639604260 211522540 254192257 246130014 555009513 43363788 662052823 573752465 803276971 65604379 185369711 271041337 923204291 229380051 334868395 827647238 928869356 521982047 983469091 846188229 989798562 770238230 845301644 331625978 614789414 870215877 931674789 611609081 717244866 598775941 601411187 364460123 583833127 705612680 936590318 355841778 709525774 339314077 397779277 973998509 986013969 365738287 461832776 93419604 453689165 307320693 677326471 520128277 794219248 296366003 857918796 376979598 477091986 760460579 935935222 493725754 562979055 889041874 982738669 574172132 927177163 673669507 695029657 578613098 593244638 341154075 478574580 606162920 820059421 615157737 918330393 263668691 634329985 353267083 828969654 108117802 714516128 344292764 395264270 323815309 810083750 973757175 993183838 147608721 738766632 223043449 566039660 457967711 955582625 629191324 771737993 638619467 899809041 167183307 730261838 142368005 671274996 709564931 889675346 557788722 720070333 954600324 984806977 462095680 709753129 238044322 491462828 313786880 862405899 543263857 630965197 728295020 932562401 108556114 197777655 524526636 907205091 587437971 992669474 509263856 853342855 342343137 841764277 822764654 879415625 853634507 991798453 516588432 960482900 556125375 901126452 146749781 289823111 232544250 625086177 561552110 848392576 183369210 536713914 628654824 703782192 580979651 750978653 930025430 965146444 264435511 682011305 848989755 956204726 842344249 847054523 178779903 216050501 253991390 440086937 487442877 630590448 198626909 209493409 397579720 979233182 646712889 687645893 515175839 561102756 767741439 981491283 110122664 796397916 921188560 922738896 898277336 903823650 569835718 693309596 852188445 911884327 68461438 990598117 338097489 554030923 116763975 251868555 303327929 998541395 947549443 970206284 312931228 751580030 421398203 898707585 467170941 513083536 996403517 996526579 607383883 910303529 226296898 461118164 46510824 486727382 386610898 410439467 799439410 938871166 76806952 331080024 74346040 110714961 735704158 809794713 590854837 655544110 407561119 634719771 1454479 307379908 220451807 237110491 860918731 939670746 847334811 921680212 667823339 810904815 58834497 235451183 568980941 673186269 42493306 434696506 201177552 543906318 563567174 938107010 82744627 873325831 102982083 508506913 683796348 879250635 79794507 540924139 905492389 952644194 185574688 763220998 38613744 87153171 408370512 633050973 949381704 989320502 389222851 557139617 565727051 978107723 620540290 858292057 315365156 356020003 889838389 955508253 766292348 982536915 798413503 927056042 663689558 894476075 989592310 992150182 868083426 876313794 789294838 933282388 609654306 921566369 754182535 780973838 35362412 92723459 23482153 137355709 348607871 482876730 121688993 962021557 537030284 570175003 770707930 824045196 874042143 952611074 593446381 734913182 861153017 987523893 879252520 901987199 906408600 928176259 211524239 729785603 226047902 996152223 977137081 978480656 721605109 875728093 460652524 570795173 372394751 664481144 869985905 888624767 168645517 967898458 305571036 741324287 175718773 526517071 73904545 818226186 962081959 963766036 20484321 339095029 33249787 701323501 196330734 686617464 383493389 411383671 654074725 788382645 651639592 966035196 767149626 880272080 292926208 816053486 458699152 717448860 377604122 777008063 608666799 843330170 140362664 379668259 903534070 918332812 355855160 767167353 933069765 982972554 520548215 682832379 959443533 986696009 145380426 249227546 208511437 285101375 82647187 159200331 135249073 391963190 661098344 687013241 517886573 883318668 965155594 985904217 985020627 993240736 753441312 867808751 825392743 997326560 395634689 929280825 99826293 606540954 62222849 484406240 906752838 970013074 590592575 843354809 320780539 458138824 19847502 482978153 680407538 797871257 548546490 703198223 92510705 905630394 100097963 948407960 924939562 962581736 457754383 650584117 543747266 660576436 470874365 820747558 781709147 997305084 405221975 639462862 706580103 821242064 545095685 799849014 347289426 600213994 255154856 821707285 288950187 942361485 196304981 568972489 859832466 964093310 546662862 751968365 524203531 866548718 292728883 308061292 420497080 430192428 646661282 724818520 335407910 667781664 355710610 556386597 886418456 958500609 578008519 719087611 533850125 681541161 150376760 493362571 617455638 864989314 133902020 416813477 551425369 560936735 189031999 515832009 25793593 410009236 937957671 961394580 494543424 617079085 308004145 453035503 261067062 277521713 380409510 779780477 312841445 383531094 351338893 541127913 425109671 793353100 323803789 893145579 608388113 723176226 404832367 666984299 318562203 662546783 539443981 551843808 572596502 877061355 828820396 988787147 841634776 878186322 816352945 831604649 721482974 742168247 418976656 939313827 242870145 660544562 506959891 996531557 557454078 773327724 659692190 792005985 198260358 601597046 814181259 958996275 3394269 102011278 309203287 501632630 119369366 488905880 99551197 100914123 543032974 622512302 977083986 988295294 689336153 916180737 257981469 517971065 704090552 947664184 553744784 573281701 277246884 968704848 838038438 910119436 645819227 732368768 74514745 991804377 25367764 45700010 284984085 764675976 194299994 716636474 283633691 559402352 472434669 478152697 288255396 511000847 7652011 356836238 299526460 672306911 902013877 945977609 993177029 994617609 781862283 897728272 856142238 956640257 415842081 826769907 60256435 291024316 343123836 687542489 426899489 624721692 599215808 939045382 484601438 524546613 853861145 950572494 635630689 914296664 753292995 872908918 57633759 148641808 90692377 699154213 692056348 728706505 886341447 993712066 500451709 816728818 29367613 85329046 359243854 382224789 708535106 803769674 372198888 836695992 816900688 872299227 403801995 884649349 31404177 198919845 222355125 949096181 688549126 778489300 247851785 593626812 801054935 942213851 679056029 699851904 340932116 511735285 42343794 828115751 809935626 989384350 438985071 772502280 362663514 829529713 318817292 601997204 226540285 653465381 228296520 245123619 78044412 723654285 448457961 782049339 704838462 706877202 997069453 999091626 351812881 935850753 103538745 247781009 143466220 433339083 504912101 849049687 90115433 418572043 118626898 773967245 599224342 643227075 695417446 832705477 462461486 893753116 387721939 550842988 44234621 302502981 41545244 698143069 39556848 321280853 566293423 581695431 716287611 739909319 573456555 986846135 345447562 664530092 529753379 874730795 690651684 866786312 166170666 513768073 573674720 582513635 594371233 780698042 782750515 845375271 612839764 620583818 205891587 948900730 991258446 993922478 485590316 644298378 345250212 536735754 593559912 743336693 327152777 436781905 923475605 968000748 925957869 974289171 276678680 857613913 643961228 758168811 86425160 88928331 769487544 864037410 89549086 998423870 425216050 514623091 922224114 959208226 791325912 912561643 236198554 945319586 10268288 247410968 946583162 997672793 506930181 938913046 490470214 595031677 997334105 998308353 403494248 507395706 412894373 974171537 586526271 823012682 585430679 668608295 381435901 526779610 966003158 997277363 569862404 889452512 523742571 822666756 20872920 598997135 770832612 941838548 220040856 998747553 913704394 985259506 652804092 955336655 220188173 680708961 376703498 839856231 56931585 655500866 205846174 311182463 510120543 609152018 182162640 681599896 624469299 996756880 111495186 330152778 910746251 959784471 826439706 887033240 504052192 818451244 402659146 773672059 300732850 691423281 788803206 884595997 719132950 744287621 683698580 822620629 846899715 873878363 648027557 840091358 723801359 871100920 547987074 967774944 252407752 678486524 841796696 878673468 282152472 976954442 394094214 669702440 267595314 474909702 136641852 600247579 67298750 163882235 573729339 909058614 65194559 740321621 7328301 672579614 138250516 438996795 986873684 988983662 4541203 72493382 354372694 663017039 364696351 885772179 930447182 990273736 210507816 934382617 886105407 936215143 127624318 518662152 586330554 753405237 525490991 927812263 273457084 989459042 549029798 852370401 357922973 375916979 425714678 816607827 245093000 563007831 875426219 998906051 551726871 937814062 93865112 917455093 55721137 606284702 586440066 950519276 372142082 480339118 497330021 812872894 789386172 860491871 287805889 821080963 354901022 868711084 158774329 503199227 925313290 939515048 403007768 467561222 977962759 998390022 731784971 741069209 475387357 492093870 787581967 979961277 621769482 679112329 266509927 641120689 729402080 889087605 24939047 463463713 679770216 738542076 830522955 964743650 147966107 938648121 195757218 565649157 556868408 652837491 45049201 927483395 480285631 693693293 445940627 788768287 232294306 738778937 796820852 806806014 726564853 751589827 523885225 848235999 735201479 955646681 477043292 883341998 176259066 842300304 31298150 206305470 107330958 281245876 85851693 853384921 237507484 524973881 891019531 965983575 980957648 985862032 798737979 908970936 113603266 346123140 628334564 892447924 617558200 968674942 249341056 983334905 297833637 457800528 813922589 878528499 697443856 901379345 673980247 879378500 628505569 760955287 302193852 466148753 539360725 812767914 276637028 679438806 235428306 246220046 65751385 974737753 350997067 752460439 681427585 779419561 29374266 783326515 565453703 697473385 295626167 644133317 695156853 755487835 226107857 574653508 433919119 818211367 713516321 883300025 7830860 404206489 674769329 764285405 408601777 525740946 494207175 833041262 714616969 985160534 691872472 782726777 261812586 301162545 570344549 785428879 977747647 991980307 545581250 569192202 42435318 987611888 190474626 439148770 753314 943349560 506233818 925153288 942885921 968559396 29479613 636997810 360273530 465533095 681163367 693402306 540847320 958558762 345190447 759132125 899962974 968590194 192074156 229355787 678109387 916565657 564073583 743596281 268362118 780855942 930838041 976194950 987283153 994621376 291003190 555034817 659587547 956280559 913232315 993705190 251805644 702742609 225352279 279690004 752846428 923811371 440342346 733633306 609240358 656721449 137578210 441403354 506023819 754245864 134413600 175301751 937151964 984809530 900170283 959214989 667444880 839239248 867453355 996663935 139477746 329267019 897842738 987623848 71317909 460636367 313293603 915176100 196294018 962717878 391800992 715866236 322040716 492572348 177640185 631801919 202645517 475791314 164359454 360456188 956579360 984821632 926672819 929373085 122598808 222091927 438632598 748841961 442873234 794324811 286615449 454669883 273442916 868182450 331930240 937083868 177155615 670769448 41522320 584327111 361591167 402136967 190624753 840417855 334901491 361113672 247851374 294073556 3589018 886749605 510633182 641019578 338471431 712063286 672989012 690257499 7341788 216335806 509360468 652985064 379906306 521370337 869347035 911184613 574730650 731505790 739262922 764798154 837730929 908845584 650433701 680179696 68910221 433762953 820574257 967681973 983489559 991747793 100722305 451270381 159023002 979904477 398945327 970389234 12935702 108937189 468493491 788526419 223265242 998186371 197202080 565213299 303823383 679110969 830715292 874283232 970112596 989124643 588618258 933587129 963959365 990074301 296131266 867315841 307510260 622024328 958149181 964679868 204535368 532492538 107013968 880711887 732950965 855907169 739527418 829797042 744726592 786647679 172002544 499974694 299442915 937207381 602490302 955113940 338658812 797199375 100174740 407963814 463277803 943723312 655352014 925067226 583291534 596588728 750768535 969759357 715228100 725376308 112283497 213668637 199660045 239278749 211040245 370263906 23966825 485963951 610735296 922221577 77242943 458541663 198513774 422597802 895182480 950624041 872070655 940182133 530618284 758404557 794066864 933022729 578254259 691991438 533759536 717685975 877246306 916816622 520306665 667308754 708902795 785373285 285662856 302772926 135806331 723819790 74312358 513429418 672139657 728024726 837853166 987696283 922796716 974890495 597031154 733173584 46513634 186264128 85752837 944929063 588040163 677509625 535412456 877345438 123972784 424652463 860644947 903571176 648439760 819356265 996970089 997802683 367608060 966747304 860028939 864643207 563319645 906020403 63984933 545985351 163042428 545357709 719278998 940208433 427676664 689816269 525964440 768559041 518603184 756966001 20557955 843384752 565874169 808900902 563841247 677848340 494961889 745214819 659406061 863139885 507689595 586624581 231977422 537320484 874952171 882758107 703342716 837259383 707061344 773679357 886809743 951941764 959694705 995983565 141014746 371561335 668437338 668536630 343742553 604597011 261092398 589173532 671596907 818549381 713039884 912722245 335857198 497101035 236349248 460322170 377477727 917657184 263765156 318254919 463574207 915613290 844004985 925874137 332099132 641088151 452424940 658643129 594429867 953005561 946693606 971250899 624244587 802626519 420766421 900391420 357725198 785530521 304849693 434316787 622190308 873891435 945679896 963217615 262359738 968150352 115512076 914891816 202984311 860211429 473483307 812922867 906141605 943029175 13058127 571550932 252345479 508888687 167195955 201700876 899708982 980733323 38494921 752803044 74887286 216069101 523489610 548770234 10110594 890294887 753669055 932559790 52695573 666624054 429509739 544676929 727731070 745281258 349177484 589715413 2920045 957253667 413169459 445090792 180552885 792458138 345290355 542478362 402734721 669406166 577081685 664971890 769557500 980783965 333936587 794102724 868544622 919708968 991962509 993178742 187557125 748453710 849495811 899689098 901625753 977608590 389368029 834620667 497492653 662972604 316317770 589712212 377909990 883985873 474713324 695103052 305155360 967924463 396406783 566274368 705460386 716354355 184653729 524442069 633390075 906501422 687397533 817765925 321218161 323988599 95372322 188590142 814683931 976970641 446267911 869607174 842852299 979973725 481425035 821238318 103181413 142373795 276804547 700428872 681001022 709594812 497864895 601242693 7516411 316841159 118219247 524832907 926281937 953794527 406034435 866062817 801153189 884551678 587515571 836331553 259522961 548836239 807068329 951251660 14219088 748034457 465941294 711908697 277327773 867273337 872584510 953446342 984330041 989592556 385808858 875542301 177211225 724053624 869877167 958120391 249851696 975134667 940774943 976156054 599842560 954091845 984512127 994388444 910006700 998715914 211151898 504797401 99871863 269501956 140333674 225052509 303596483 697054997 434383704 667969463 646559550 772628677 195489478 751832207 210522470 337422600 485768184 802306549 824511304 828284799 922342691 968120225 37172384 465479821 758269775 913365121 121948128 903209106 723956551 879254837 437327189 956559400 505414600 738679147 578543517 639460764 86664882 993316707 724475667 778601492 250850035 881927256 192777511 941258386 369244609 735005388 973591157 981459964 346397903 440107934 199743936 931966756 90775689 517674851 732104611 887995875 149650510 919477574 415070686 519889308 133710989 703837089 239908717 753998376 560756714 957485281 297219521 874839421 693009728 704752755 618953159 917688906 55893630 643546775 173204830 232376055 202317419 746044237 566081444 935736226 467140811 957413870 37026001 415970842 419903614 862736774 906062085 986256058 909448705 998015360 564858528 881749079 244768785 474555048 211703516 978667479 37712379 275992628 524754285 686595100 896480083 966116205 391436999 909476738 321300884 780145625 334212470 454212585 720561729 886804367 559912692 888380262 286636419 588747812 570205479 639931889 990635762 996476976 757218213 853195933 704852201 812614629 883528492 950168882 618338435 752547545 628961919 994258092 641225043 984780403 840632373 990866213 603376900 606871215 928422537 967942599 651975380 806912623 519606698 618650576 905166936 930429797 569019531 587055819 669588231 930663811 627334559 814149766 652856970 974264879 638511429 851692188 700781359 702998108 308605693 497669266 772314955 924441012 951232562 952844595 6646100 757619667 734474568 923369856 423166722 797982325 298001967 330237238 766246578 963479368 696492897 815626093 60054567 834212166 762594098 772560256 601378253 794971279 751664930 974155353 126654194 691427500 643578720 776575662 513618112 881671804 249856812 789696091 946879870 979821522 826111117 829412958 723477298 723725417 271361490 969074760 193953376 832390094 267171360 681807898 936030040 937510537 813003326 879622961 724764603 785438670 263612303 419155981 901753232 980988661 214993257 976524204 468857415 486354824 240105673 294589274 61955447 909282192 786880433 913864637 12686904 225912126 216106824 387163595 587265676 990827232 88491920 481317451 247204950 483083273 80108956 601477584 27914621 394047180 477394413 882957094 336201412 977976056 81777148 285163472 483469581 951977467 170376439 569283513 362321198 687407046 903340073 914154510 310186071 502310906 971340464 986861304 982996729 987226200 122451869 819996677 674453853 707111666 776678712 780166462 100944499 296917493 334741957 980585257 703116881 913251910 567241420 902724878 719292758 965251723 691790065 799563768 714575531 803966400 615183829 751918531 156003262 981999237 733507752 996965073 464070293 834348202 258563822 722064964 331034621 868404259 437058157 450411797 488095778 631451738 937465905 938602173 561997521 804919605 434771230 499913333 56379700 821463971 57177702 819063626 767856437 773267818 322221072 514252103 846587109 900029183 450010060 545995076 978989328 986814714 967398102 998189456 658084888 848259492 961709356 982405155 629109293 715676605 588566568 680493886 284385821 303357345 886976225 912034916 268382636 687571857 565032239 901334146 597221588 794750280 384340167 901577347 234331839 507558218 143389011 908706254 70592761 824869916 164973273 808337628 724766798 853127746 43285593 157014126 774133680 879218296 704841023 837157789 646762572 697186021 397140660 697114773 783998405 946269383 585205402 835590533 290925321 741231707 304994193 594583358 152979434 389480573 260538965 743486358 106765834 707887504 61733189 279402477 636618656 932697170 197661895 928508880 287599059 426556757 797157413 914077462 495497207 885176447 27621205 940908789 669755821 974994508 74124009 409260886 468103436 575010992 364001452 944278120 806654813 864117297 85732777 958213983 299683667 506670744 487561671 965337757 347250625 389666335 787147432 887398707 997289155 997384002 24672529 841487017 620191387 647249403 377527350 892127935 679142003 920988431 431414842 528593435 432171648 518682270 74601182 525621815 745944141 796759166 379970567 426650278 795393153 815333653 251178139 617236842 791806438 883800600 506017622 521571779 248718475 914555583 651452802 676078056 599172614 833527178 991270559 997244633 830786320 895643838 40312426 158744022 130992038 203721243 962339899 968246570 610851677 924330725 828096120 840823058 643226122 787155689 247901927 374096980 342290944 394210944 826708557 976939418 32133329 313023529 462075935 909139636 979563251 990315283 143545910 891710134 837413478 960859666 501121749 948613067 667634293 716413650 865743621 962906851 791884495 828486292 761503444 939836688 825838460 865745966 74700343 632891570 797469418 850846693 216940696 744483817 363895319 407650254 961130789 971780823 602555680 684499189 757435139 887267955 348908964 946432828 439675858 981143288 254971177 797366132 594633969 915577589 722130947 827852963 812811926 827895358 924890286 976759901 857412831 893665787 460239652 990791736 215984968 333372635 70082825 724082737 895972813 920976974 705555324 928593084 595464336 857378614 593244819 807068717 818328431 943136225 867736507 887136162 575334769 645323540 815277773 973343614 767999008 886950150 799194505 810514248 240100309 906976489 694225895 774657888 255015706 502039661 442405379 833778344 790698479 873690381 387873273 890309284 99484465 505505670 540873426 557600951 80800610 886925511 674400871 717658105 91454239 953375384 172424243 700551864 678252812 840256925 87618538 703424527 33526399 304898659 945220422 956904815 185316327 206981695 645377518 753800287 400976327 923187353 639660003 667657022 487342987 692838717 335409872 953798369 203123425 592522466 340679858 971573609 720944542 979875855 842546665 886827361 312568065 628225010 197835815 737421629 672793911 826414995 917905185 930391476 463122001 971809168 710924020 715948967 114171060 338701868 791264978 867252630 267747902 715704303 487473577 926416457 483416986 904288844 732156843 827533412 902890438 913631210 352123945 732479138 225610881 860179638 604157964 845147993 357528730 944018062 682254017 689426850 345147332 734235647 465308988 603396435 173119524 481148756 521343556 995927918 118620787 769577216 187465510 407358983 749814563 804474320 312260794 356949145 465999233 767464368 177749542 488047959 647630192 882981063 515442323 596029410 875340535 941397246 29336558 708694150 503822232 892918014 839738949 971355065 752001371 789529837 711409230 969299266 966569186 974848013 317159980 491929192 289391596 664384599 496754838 950024074 980940743 992711397 162948621 774522758 128516213 461002270 872299882 931066460 249484071 674467389 145951086 370786131 965979094 972058012 361752316 418949420 908984412 929977150 110621766 271837885 422121511 840291836 487728773 722258247 238484222 334866109 532091823 543395473 746432869 799101120 551277408 737410542 106158304 241194689 455607689 811784706 817487489 909175423 324091164 408222525 22420994 308427965 455689666 874309174 23397520 326075643 512349250 761412219 943639591 990099177 875880646 950510807 337648581 542513494 696406340 870101988 655462513 826605043 378765422 661161343 299157475 533041480 286516638 839662262 888011792 902906399 79265957 673966815 239537462 250042134 27007307 824559821 722286499 943983032 724265261 872774147 84804868 643418517 439362154 932330526 868788953 870085681 358612494 673695534 748502130 854617077 570537845 879906408 843805843 943198656 404662981 917432570 888944855 929748685 496121760 984442745 50407104 126237998 611963761 852032008 10974881 525976675 792608112 932279891 121258417 354790480 518174501 636635537 371511927 724140920 589875287 753015051 900118488 913817939 812997200 922313115 601927462 729100004 762642334 796750863 802202194 883290021 589036018 752051041 255161073 589352721 282363901 582944474 934564046 988369328 874085697 949824664 935409419 958013391 647436241 791496008 647606826 664855890 175435442 568188902 306531867 772743551 180556791 377340029 670892533 786105157 287447338 940920834 815844858 980651537 331451194 727489494 109296072 846519598 504183598 790750709 682583883 796046222 498887994 952072387 973539652 986918620 601802252 911324254 691587560 954048018 727976346 986830879 325531505 358929613 169195996 408326250 849433979 989277349 597417538 754978648 653162542 974045816 395597955 977676719 964615304 995283678 986836308 986847924 310547570 877662460 613063277 882436726 224317007 628073834 191433388 722685533 408401102 430515731 58920152 689460647 942375484 972991073 455238997 493129804 940973357 979648486 397828535 704304459 256200574 728439815 539381618 918339719 598299204 941008938 383040189 541467455 265147002 331302411 338876681 517711298 35909356 52964019 327088661 529975206 652676227 821822903 525906932 817556209 402051114 627436826 160832106 889396000 832419220 911154789 16348064 244216052 672211462 924708412 174097434 601856047 946467634 957557450 146527143 276279661 68338816 210156356 434272852 879505923 968321477 984997203 755217062 957495720 280649448 935405970 42721371 122451573 331066906 832443416 982094435 992426674 978285063 986322559 731235793 876128170 396018413 664822612 14155706 215199414 34829321 818794432 864319008 937648056 216162772 237834973 13617751 479709772 768818478 989444510 825048020 867750089 322029346 853776461 682701937 733077540 598531468 758740241 59801206 697517414 153521416 301943801 30361719 209184651 155126271 215252705 416166888 443194678 910640504 914745090 313681960 819404407 560991450 745001999 384128893 450052093 584172780 846600136 117524084 240974229 417255105 434137779 531010294 588315091 81822097 540095057 609658789 956243565 57394393 713536247 736759708 958801835 899855205 970757250 16568126 266065176 33892277 361913430 545721351 936887987 114440513 278991901 924457269 974791931 664070054 973930779 169478953 700363848 672468102 838808977 801712215 825405806 3218234 288427702 11110913 108114156 502083340 527144939 261240900 749601867 736648817 893102126 415855580 586678326 767589355 851791357 551691711 602825332 371488602 745876236 884754603 962969073 655544219 965718106 540965294 615804608 773697957 777507618 839889053 841573796 764365002 794666616 382224438 461599820 151926084 610110673 475331212 567477836 430229923 658170408 313936767 748787583 404145406 758755468 735047102 987443921 401725131 416272275 271563523 940675986 15136047 821810953 456227751 579999837 191505135 666695153 298456908 875522666 734559288 996450500 454954196 847527513 914484546 919342417 514335234 948873129 739371428 968111816 137513289 486077607 245925139 334110381 574762532 807064326 688957848 855184716 987131760 990999698 432054774 849912178 91925381 583306636 279537246 870461594 990788312 990879289 386848713 500467403 833964142 846864239 467325477 693490906 602327942 705964789 869620132 869906974 564644268 930255904 299246252 976770317 52828193 853416438 731258083 908590190 502467316 899353789 784123412 929118438 668678313 714561978 185066131 650918717 425588232 492313024 774633213 816456687 422861660 585393422 849569135 931421505 267742300 558048456 776117171 992276509 922663805 971261904 832216720 988927340 297814386 469440703 805352352 915637972 143183513 622677413 566316244 640603514 502802867 946499945 440939624 546643060 580223925 653958030 619422906 883547870 404041893 563542629 286025095 487582944 754012183 783987225 61926008 140193782 695533909 843002570 767123995 779967743 444848866 995371892 257870886 610993361 669824773 693836110 758846953 940431623 341186620 661035829 638594669 786989256 878473253 999160819 146496046 302884062 868277880 909709940 15031044 594767594 582038695 595718957 563115625 759603738 546963001 803653535 491315406 861296526 616002338 700131281 395319213 828287179 964879880 988708374 168511297 808546565 898225969 919768362 918705693 945428824 142943796 685513926 409822957 778494889 975753057 994203092 205307298 727558605 350261612 452382497 190494842 869223474 173594075 576869409 927391896 937518827 130698901 438825493 74897987 555504423 163714897 593839945 864915369 889782135 263704745 289745761 767805216 862885912 322499751 640125095 675568058 692270452 267433906 900429865 916705430 966255198 388592477 456485473 839075782 914796317 503108118 586006583 24434246 406230608 849986971 963223773 401946454 435190685 794721263 909720567 237170795 572957319 646038510 840274585 809946829 952963456 200693621 921936374 35060014 189019770 835344562 884645635 310431818 338955498 109069365 510825049 95916643 612027914 808466063 928900144 826260305 867560826 304192086 477567017 681666012 747417067 900865420 927892089 766873376 822123540 723754724 882438888 841654798 878249331 423118008 587132382 441409854 614821606 742303785 867320290 518789564 876166659 662335665 828902760 587098611 709245608 603813101 628602211 100731933 418338427 502554157 617298792 570704582 799344225 812172854 911879676 440241428 799297724 223414664 419910480 233071075 381748100 961230152 966432382 649523839 671681544 436111707 902587235 447253262 791554987 290114408 880649700 794172616 938049748 672016661 931267152 28581226 679488023 861661651 896834382 406369587 684227622 864798899 994984042 773691159 904664956 863774315 985677657 50382758 736805030 623937613 790022560 27268951 104019363 527930618 768957922 766033917 783970768 430898633 782143871 843131721 954382549 8467716 920964679 358351009 363312519 248756044 834184800 815399233 846365538 529460296 999174580 194404109 519999455 688280569 919454807 543741132 722142741 513680129 707004691 829703470 965103763 655675473 870153867 604868783 994668142 706478880 864711143 500463694 812018768 158040816 416793634 585032911 988453750 611922276 835252218 83444520 500388256 257043126 770362386 145050464 749519446 949992719 976315164 842810590 849337326 625872754 829970152 307802408 512876132 308206214 594995250 906052554 975900509 858654548 917707500 511041343 773973175 53521298 417709711 178523863 576870793 608361728 679296952 619324169 708103538 429045792 721494424 652203118 794149874 681382742 829189582 241541872 271221731 499782874 529769322 888336760 917567986 181596968 465293512 310310442 891720814 229232378 944404328 35851190 773219376 2952260 664541637 395122746 799297404 693534817 864110818 486974727 794749810 867839644 916246407 835568874 970357976 916249785 985752966 695445611 829377829 351209438 630766409 355216888 970383467 816375617 902464805 406118996 634317999 550842494 576175706 816471983 875943091 637925965 917417370 542544617 549182104 551358644 772702033 692286532 820709857 248291413 262794980 613155625 972479023 471482196 870029038 769348768 958700470 396803087 914862556 779865602 918607901 702024100 950287855 28934491 45179995 913780288 939792850 569450947 759837650 544205345 684136646 398192207 847441440 452315542 616474844 459251355 498050513 891888691 894388225 633418789 940614021 118344956 886727870 408332357 536875531 475640750 654002102 567926631 584849438 995417070 999293305 842147029 909421939 969173407 989451383 845195240 987306644 957127578 971278259 177420316 638194930 371391205 974734365 478695318 965441901 148308393 222990053 314350071 690953345 70165132 855772948 85014890 534560328 125047945 826165630 565564820 912947309 902338715 932368753 923352121 967830137 482501580 743079671 315006227 851175736 893330498 898135530 728607022 747769708 748182218 943525291 818067637 883230053 883401080 928614465 96987377 283900408 313135149 909430148 247676678 490799909 660890000 899008581 989513192 989872470 801778741 879095412 409566366 529612908 31129198 111139147 775440996 962072170 12337922 602084192 486219136 668084714 848675875 907816972 429440370 476510417 206849634 519766941 252736546 510412048 374040590 903502255 768436116 989789583 842150917 889919374 230197186 479617064 201748741 931563766 511893456 860191893 463317431 601337977 797079025 915211086 633665773 883977195 446711488 547328392 698430509 841698891 493069359 932799273 262629996 730355734 967135297 971724674 388996537 650379369 593292988 677237263 768421565 963874471 273823623 755202828 926214475 964295521 482354410 658736985 574559899 905824886 115972810 746913702 268796290 370174732 102831948 420490021 351498738 611080309 303345850 779934090 553748125 556170738 933244538 943345935 33281804 506688162 438270710 951180102 601258592 733322594 255896110 481235160 959894344 963008899 908241267 935155764 19917474 553225481 610699024 890966543 973896594 999131754 648293182 866993633 342687428 997566198 642115473 836928906 182814212 265185344 733516182 949666322 857386370 893253856 962666099 997108214 399008785 461408524 404909916 425404735 132600905 448125848 954418755 982157610 853309692 903082879 855906785 974529361 933439724 977018093 495475607 605045448 123950314 972862181 843254781 999016242 5989461 804253639 548145648 882846148 513048766 967448922 768668016 812042506 240210131 853935279 833379983 865996189 466978976 689955141 363594384 812197026 699166183 842808846 780786885 858286249 282285794 720136988 971590071 982241867 538159611 681523708 263193656 929732399 136801252 440233641 593980596 812214919 137639582 719585075 161933976 200959598 188521167 854075920 175267010 678128037 263674978 905278172 458021279 930719844 226048234 485745855 296927025 939419380 654266172 839011438 486195024 661967561 221380197 532893553 355075838 759660737 95343691 674598449 259178953 622583696 934163491 946454888 671075523 731061654 791105172 919483286 899536650 998059198 353794031 831473080 326954322 670829078 902422758 947643787 431163013 535686980 241205467 512859932 892169244 949257150 480278068 565692847 111390209 341696283 518609701 539803716 430710298 552442781 15969727 763244186 335936948 651795416 680072178 898191160 142542935 730620391 201446747 605999653 507458291 646643398 907337523 977109648 437570044 868852395 525532428 663012526 3089586 997226382 120603636 228012699 983020062 992450980 817994421 863175178 987050184 987619412 354855725 567638233 864650593 920089538 859539592 975835314 143920909 429768796 862651716 921292407 547494262 661815293 627354305 978886652 503868971 970992050 449195294 988083361 386400385 551769954 556083482 915635435 742208521 947897995 643983090 765278542 94831249 324841953 477034418 958707952 431196396 881050369 55762381 154991047 991533461 997111419 227800429 743278697 925759939 936425875 324711964 631982371 688882423 925716272 883632214 975511586 897847338 943894418 317044263 395890223 170611706 515043352 384904405 669963552 214365271 980503969 41225153 917777758 670288823 773685472 636669238 961843181 508693495 633522854 147170603 925028629 649172220 876773933 487904493 537642352 563217508 699665180 399665295 681079424 251960128 551740618 290179110 297520755 239166152 672264358 816005987 950247586 668834766 766957958 952445158 996978911 442542739 944410880 328647730 438208886 484051130 606754368 283436343 882154458 121238351 745144795 474970676 870248510 46555589 938962847 834910324 989035103 556344450 590726595 15578705 768005917 346075092 885588202 485150154 736967581 580712068 783543431 15244291 210732218 962629242 998127892 778127163 806973915 760767280 921418305 415135660 578323999 176131922 720502959 964691734 970489340 416066490 817754198 887593492 922840924 750694932 867224629 493313851 683598321 572370292 908118433 277603617 296762974 481012971 672955669 992514362 997504683 939621066 948164543 858619972 912588134 361281322 975045183 396287810 535212653 603092725 877556572 38417468 751849491 585375505 737129700 399926209 481537850 803650238 927223265 760871225 917620276 413954903 924148661 258357119 269423988 972610832 989752987 789111768 880759828 89599743 95492866 534036040 807402494 774734554 811413638 544289584 858960294 696250952 882788978 966654462 971485221 194654356 839905718 413407927 479560677 664914454 689499543 809922741 861852309 514120692 777679151 60226489 881039064 572459056 747788056 518136029 838328556 210166734 412856793 641926808 738355177 814410692 979385619 220515638 583455655 595354511 934920004 993411268 993933989 140818199 145346683 217040785 689662031 872094930 976578560 498813505 897130671 685497632 917345946 893320499 973342091 602683560 911319993 471430552 955060050 110778963 626274567 364554887 567575139 296547153 689234994 213262183 411563548 572357256 598928447 110316575 791058388 807789882 960418219 741711140 991416235 992108855 995705907 549533390 613994908 451989127 732268326 28695352 384073481 411228549 555236963 457235415 981639174 330113293 634034723 974561537 975122715 587707287 810781043 642918417 926455752 284783645 636713390 983379302 994649899 914638170 924004303 119846151 257761470 565819238 763401350 587145959 592325066 993016655 998378507 193479223 819108875 244065070 490937877 271182659 440395912 116859175 958277007 62412156 782566959 345417441 973913989 966782171 982031059 859349476 948243805 337641610 929400394 557412877 705642375 958518675 968152253 744391509 940269465 254426317 857390471 408970632 491099710 76367822 136197580 274715979 737758615 567922169 686269239 951718918 972038788 534557617 639055219 220630015 347846183 310864854 399137590 211667256 574494938 234875505 561454197 736446590 749904061 915939464 956878201 351175823 556149033 242056858 792701862 516573208 769732069 167874892 645284886 914678668 927367497 415704124 596437963 588994477 780804974 989503806 996362563 290865652 803806519 963297320 969138419 641347818 967029667 741676365 801515455 837295758 929142293 232021392 975515083 343411666 454211432 498836972 827316035 303472801 737770257 45298727 155600275 604149266 978013810 25305645 71186332 237015933 779940873 343496065 859544804 727553388 733602360 94835652 700526438 67388522 316488407 735623002 864584962 540123401 704655261 162595520 457630433 237107066 380201406 156104451 363191566 218084715 306458561 549315922 732422020 483357666 690143717 632378361 863839639 79223543 729369179 850777806 902694044 378924473 491246186 859029146 954425258 606960290 669465848 378212622 597595068 387329589 548242548 404436262 516397763 3967787 262546058 631151885 895583380 408581380 782648776 547485561 984207067 616095337 746996016 341115038 789526100 439665916 895685539 60758007 564686591 630801983 803699118 616211286 858532533 635334342 870446837 270601554 609019399 607862799 824349324 65438826 237425625 654385490 928578465 586515683 739649439 456244957 686833648 217823952 951411267 750891555 922360207 369872643 582175612 626433260 722562104 681164291 773009286 316614601 703786962 122250200 620827839 399706280 531560149 764869042 910662615 408286072 475465021 781176155 951835869 356955230 804304932 662323856 666454704 692153574 832712793 262238332 661711450 343492764 933879491 735466651 906088903 308919330 723200830 401728073 626695238 40182081 397351859 6131964 362652652 185486814 276010235 407911100 678406933 668205753 893581556 668510551 839267239 95589757 914484984 13346805 119889906 516932582 706539449 747413952 748639913 190147416 797819481 325481719 327880793 920791010 993455920 689849749 742589243 600287005 750180621 311440944 498958336 805982433 980590091 252105410 410192414 736097667 822745326 127490196 143989829 214214957 897199204 820689226 938049573 172675892 178048644 606688891 840700550 5576809 31051307 902640581 965424256 318340757 950991207 873950049 988810892 972708949 991349668 825683187 967700397 115109118 612573368 386985483 732942235 358342298 521484503 144065411 617587075 6459862 923909286 939778593 974337941 842293954 916490137 818745317 893381755 579614589 911709947 486552162 810718006 917672736 962494621 930464601 942747824 873410112 907822827 430122373 772303505 26888695 145929325 452269509 807811067 737182418 821678661 657436470 986772966 766396594 940452840 444174964 478088202 649171158 650528487 339173960 599571617 835451649 991881782 702680397 805716514 117974423 469422030 616699945 804384843 66629014 823278966 640699377 911133498 921977802 937002450 582645079 723410017 705743149 977032597 883234881 897970349 222256501 499627953 862628589 895698258 261974875 659995467 934271828 976274536 839996213 910135717 375536039 422372730 56058679 688554188 545544895 972462814 152014212 528491266 658752004 890819668 74377022 485317791 227296187 508234358 165773047 222989143 257251725 814566359 211474928 994530174 60466047 112120606 766227785 899490902 248402300 328563435 989979204 995562504 677738885 814282463 645785209 878225332 258072159 266831211 300426716 890759248 962092055 965419561 37215542 549274172 682809561 702701294 736329590 866410608 39046283 45856664 339293529 771537068 275329537 701640818 935567495 945193456 704793738 997587070 779345587 893458496 608891764 642237650 403885873 588641118 281247902 513607617 104998078 903175942 49180067 887253837 38571563 839698161 254994555 761575838 580519671 898916117 388716003 514438056 125972324 465859733 871634544 914877901 204499047 455406463 598454753 890186116 156116201 936921932 71962048 911815437 858002238 859779590 603628378 991256934 862875576 922968386 24376866 210433424 708688492 981986918 290733654 861716664 572853412 774614296 11909804 316856058 249314622 535043136 216260459 769869411 878277074 984065933 125773161 627210554 882662972 889191680 700845137 936823504 678627936 836414127 791260573 918788635 763554520 835683070 77367166 495531675 800206353 843122893 858379267 948891596 952453997 953641555 500400943 860234902 907423297 923383501 953557850 957429087 921364638 938016564 850539392 885029873 158887468 509195012 83714869 964226152 163112620 385541859 652347968 667883596 522447674 720210432 505839410 895137931 968294247 988132093 199359269 414768600 985877125 993559689 448921576 583683457 410134809 505470584 559315351 873951604 204166244 359649158 978242200 986799323 923153149 992629971 379565616 507393684 51875407 83184038 313235592 650991088 310007013 937245225 763968475 887379440 123454351 732002487 258644060 665267115 667245109 961191207 496095343 859892786 807553455 982460453 51873907 842775372 158941287 182742503 518034028 579818907 261138011 991863707 576901905 706062143 606249762 762219516 920992014 928385704 62820044 931886083 153238233 748517512 732199082 861193472 918936961 949437942 786448092 875175078 534690423 780308471 309674368 956504030 720648045 866427895 211097425 666148261 710777224 822784952 270149793 389171125 12118862 361132197 725526088 985641546 782758349 889119747 107848281 388829316 729817953 736753311 459697646 475767270 766266503 871440451 492788127 606193444 588021219 594154367 114598581 827220687 11770806 39012440 964301330 992057587 139636306 784884180 706850508 822479591 922912844 931103793 447716311 802466082 598511128 865579937 920922751 944534487 85027696 688850152 7039553 903654974 714213252 813709501 556896846 580999909 408292900 506620894 535992790 765138281 966231518 983379863 386064868 800793098 753551095 996060226 361206738 361941732 983853013 996825785 854056579 941114784 344163195 871668663 728823566 916735687 817083768 955639770 731036606 797110309 222063777 332121063 903601919 994859410 834046076 949812983 116794222 736315165 828606046 915315589 31796741 206546249 858502379 981808421 758344232 844611796 391942541 989214901 616285965 848953582 807085609 885876372 305834053 652405694 677223182 894414097 352392035 386901789 330995899 613802042 319038153 750501471 989933930 996917983 416970252 841106088 113343049 752578970 69214049 105035095 487483640 607149889 563551634 649971622 618200558 689951103 212090347 294800497 361986962 449365945 194137270 954464718 69663208 537903895 705651139 856029172 959191020 990075636 530722036 739662354 68858652 807073750 263707112 873841923 48040279 312786572 396517989 589247103 248833565 664603192 699427340 900925856 795743535 860793216 738122349 937335492 416350016 955452319 984596844 986983730 573116727 897991698 8180769 705644783 156740227 754280423 998174552 998887380 815681100 943068056 858111013 902744599 446174520 495684858 858769981 933334488 976054690 977957927 371576021 980035677 24150755 159630536 120107103 212935855 14153064 233661789 729629871 841190984 886017227 974183267 815341958 904421274 27440693 592678667 440516069 768502460 257858030 807168899 631420265 733829893 337669888 897687125 347734496 373903643 348108596 646687019 391224780 392268919 794876786 851290824 768846298 932872971 992277233 996131479 557642017 775652585 953929640 971108680 168204919 563019361 164735600 579008361 486383224 776901911 562635411 957356366 38233086 737523781 140636772 771498851 560458670 721029971 282045331 958888492 118049788 528883416 340864109 374555678 100915868 920288288 591520563 785452493 200000578 678116165 595779667 852469234 589977573 594453390 720560383 839079536 455778693 665272312 352548388 761906342 751184590 800590893 67041585 398078518 679407271 702992890 319048255 734091352 680109592 904765149 384604122 741059372 236000840 713844848 169397001 240265648 80589568 717725455 677440203 684173608 890124316 971209614 602863152 691483462 825655879 865703838 299569586 411679681 494128671 699336989 243616613 687262446 743075324 853617833 5737795 290804459 471294006 969640917 548615667 866563209 709312296 995829244 919061517 946873801 935910290 993382664 509822834 599836015 164045557 749260447 751270458 834663952 560469883 865830631 421338385 569906822 393331094 440450538 459042299 661644238 770147677 855536503 349872872 875290829 597140786 623582648 570174095 687129516 245955783 494863201 313489626 354638995 388553966 680013864 79939711 605304399 758325781 793763190 455061150 975013238 118955904 472517996 501415563 879834706 41643638 265270833 499701630 559150383 880011452 896558828 129716672 500244649 424168349 514610511 226075579 617124139 158441653 900740912 941538970 984615090 666315322 699673358 696987270 721418842 9256053 340385131 497278498 744394290 357458012 432679291 867772765 880644800 711281690 857140744 412696177 713213281 408303285 955608108 22461147 177970174 696159853 750316771 593638194 918209811 82852792 375637186 139069645 997570620 987649722 995846472 79839179 968312229 841770894 938566914 628126561 636294513 538290343 790945514 286451580 492232771 343217001 371450909 241450029 798096935 187484246 740917129 291903025 498973846 969928449 975669710 805731372 966413306 150309551 402427930 255738867 928966077 351919990 806035551 252444454 364465481 826598921 909610666 247268062 344580616 529938061 990922621 609747621 815236256 195766902 945293101 35987009 232745101 824758908 952234077 439686370 484503897 631681515 823013611 595646030 950333071 38964894 827830459 975151514 997866091 281884226 960743550 27027554 310846908 458878048 877390631 983364101 990199096 81249859 565005411 969588370 977494295 445778564 525361269 959730557 966929045 690262218 741489584 592662631 851064377 67020928 738680151 960079439 965251417 320214024 860888942 413153196 921210499 545781958 583304969 369455210 909387391 778934290 950840561 833718561 908361482 720023588 893361440 208337162 746908167 94743469 148453958 258677967 939850325 600103791 799156089 591860818 689890369 782269007 837729511 364854828 693000562 910781466 913857866 81415714 790954378 925759273 966683575 885174563 945849918 551487861 731300848 9389350 635674397 391333603 941534443 893331385 907965629 498802783 618402546 303957463 655964562 615259272 673093944 408574081 896382713 282211079 323378705 486913043 649037868 350185959 777143256 965098645 980244503 244685603 864833024 793961278 803746481 670257774 893222659 759975816 847804836 330405771 952736330 983083910 991188615 283576787 690913736 254681422 324667885 156312303 979789729 737179800 916275742 731539525 938506320 908601234 937311220 860574778 921451198 256873569 600215319 797471742 814031237 280703838 681778635 16296333 343630594 529726976 963666041 82881137 627614412 7399686 345243052 38804326 326942282 153699894 567288920 185026159 612950967 75022744 803430278 384033540 604407310 438946523 443063461 164023091 260331632 516166738 662534627 578279608 638673925 584347496 995035488 625673359 809625831 599126491 775236565 360690785 367822104 397343660 516999769 661394803 805594958 997095864 999074612 29807816 807839657 724682799 933146570 400715722 937185863 562106962 671975220 382568724 570841585 520027773 525933373 432306930 960508316 473794437 687297529 554370715 782359140 114062012 536831784 866547259 937434490 148073899 696435602 347383373 388895250 225720316 946313559 899991196 928110661 707843490 829944576 879803333 996038855 61659857 662188102 518925546 903832667 987197696 993912065 326777091 901554655 927973547 955050856 850643917 951397953 708513477 959470521 907457971 973103820 914985618 949609200 65021452 175866947 401999596 844881368 790258324 975960024 765043625 890844696 187023470 290002874 25404036 169833006 356706068 565496031 837576988 860587348 76827374 265278650 324699767 685045391 568418887 573026579 265236029 852085734 388618768 404222842 11795306 947202423 381967735 981758491 49251531 148146452 566602540 963684294 819272649 862881916 801400993 897523163 891900096 954135858 409412592 939630602 868019912 901147989 1904109 32704931 549607508 924085860 953850252 964189795 53637138 827619001 997421386 998757715 54569022 322791226 993788490 993909468 267989134 840522219 405195344 658320376 983589677 997818884 124920420 293263684 450180308 682973002 217240125 397466706 589782177 872622997 866493804 916175269 181146059 350159666 741356562 975613015 275861873 348756443 353470676 517726231 832849961 848371048 199361323 902369509 543389024 761970104 411814052 763219477 525929730 768309552 507724653 990857298 798500692 805570534 7549647 454337244 797300721 843000671 355119764 803770873 912150196 925244992 82060556 568365838 38299814 243376674 755423537 820370027 885679613 973874859 3578568 920167660 7511348 545552706 446727924 564610410 989241052 989773396 443601006 791769759 401340433 512779418 918970198 998778953 408830641 763973743 285169624 720487714 222114524 621328742 738600122 838869656 749605156 935828584 905126195 950278553 350686007 580375208 752788850 892734833 373824641 428633604 681444755 932342686 182744286 473619410 45099271 383881293 738715854 781240134 972495122 979816713 402646630 980007014 517504249 799863869 143869914 511268069 128983862 866028866 578773470 622312775 803420779 827450377 244558746 588986437 100734210 323439904 424212676 552287310 598323407 789415524 733102308 863594825 414315429 723510710 311483078 733843549 307093663 367334250 642639492 714832520 856654270 914897805 633549590 852587273 320512759 567146654 113559156 808367415 117210454 509664131 933271915 981719255 419172963 781186412 549369714 669830292 191137445 454511559 514334683 575988876 396471741 698527252 354070508 619473720 701499092 886501567 183025244 583511167 715838453 967888485 719521949 912904717 884114479 932243726 691433363 976119623 965772356 966397666 461693703 726555605 610089203 704646204 119266861 281852217 132837102 855202486 637306959 761938825 836530604 840540131 565906592 962050043 182915511 959364172 404738817 901253522 191154048 756798010 920403682 978929693 576577812 800275127 46144263 329844532 561373748 931893291 177411156 249945803 824299066 998328178 949401182 967697551 923248071 957322354 3066424 130178215 959505599 979297332 503681841 656829032 763285795 768980798 184822799 589296006 335474123 689137010 301374374 349814809 747781763 803510699 524336339 609381158 177637471 479950258 331777626 764685031 641060704 821660267 666345380 721815611 151534959 719149444 822066351 996310669 290333176 874088684 907874274 953693145 312912094 561478806 555146701 566867201 837131295 888592170 147986804 746983299 565892440 607902253 210156975 394757371 966317631 977940259 511214114 566301393 205123191 313459650 315947485 418326561 303144905 821018966 277623891 418070038 799971310 939680339 242878251 412749865 739132415 968484644 837205697 867410472 618356669 708617097 871335215 994677612 882216552 981564202 421268615 860407420 501261651 849047788 986798995 987180142 401955091 841189259 936735399 945880106 9733797 124058784 296413664 853829117 892275084 937806541 156536873 616834527 66766163 828869076 898795657 961801051 933257364 986067509 499428668 802023633 464226490 544450223 366979466 427180779 123965082 469359112 554291049 700877055 97830894 631914759 519682685 599853275 349602369 841755727 776225092 825575845 31016278 276985814 644249288 758797148 376763007 398663552 307254822 819954370 41023525 329456549 964724499 970248773 282852015 948847150 880505859 903865251 781290879 833182486 430660813 906986021 63647505 564004480 775456969 970941595 936176499 952430152 113913585 757475051 586155987 887704443 243539633 944168563 210711497 512797343 709851061 895153801 493200216 936353079 994558386 998040287 728923824 988966927 730230365 819236207 107492062 317291506 911443913 919118442 538041964 829329065 476037455 579828593 211186681 229761768 634895290 742553659 455559710 927262132 341365293 556978417 233353383 662641412 783822085 962960865 472949552 904962636 777322986 792915378 41908507 211672968 384465474 781870850 961392633 977069950 53996262 707947555 524999860 833361842 99025744 853229216 693360347 901026899 987653243 994412318 764043527 839589779 825598626 970934160 794709953 875889281 165827187 870352180 580383378 689575321 662339545 832684571 360002395 942029327 182685487 250877340 222008149 653623869 781969813 833486603 136605352 348813468 620204847 709312466 591074134 878044615 571118866 589326889 839086703 868238168 802657826 877990670 896321735 905253834 207448796 867619586 215695557 473398531 494015282 519473123 595431342 822596154 323603022 363470684 413202587 629511310 517888322 627264761 245882100 984497888 632641853 874943237 744054988 766137506 782687784 985769277 292298451 369946402 458136779 678856687 641870617 713748584 586027082 597500114 954994068 996084696 592307990 982878605 942584829 947791128 330700874 895256398 138098835 391798911 10360636 211037110 74974614 800425927 278046085 987686081 947052286 957172279 999317224 999347551 803409045 862725665 670998239 837313870 508972651 910001225 310422533 837710973 133151333 934109583 612060583 864182624 695822402 884616714 123654277 561755258 284326672 956355644 363960685 652447874 346129829 520986137 900952522 919331345 330174815 823835252 807487478 991824202 352106207 812095626 415002272 468725303 673852632 676888523 951315095 972542462 357506587 590626862 312270470 728759493 247176523 659803684 23738671 685778884 285969351 383336445 16834179 587657863 259934073 921765789 139939125 695932134 645940155 918529049 572894182 867277819 47652463 363540553 303237244 806910416 266701569 721864260 471616789 523313652 434314523 756015409 788768017 977021303 383869470 652046449 6414755 395077294 481287999 824594137 156228799 462386006 842945152 926909415 263497357 508407613 116543194 222562653 902875982 946056255 888399090 971776757 727896411 936155139 400978874 820653097 352891447 531616461 600808526 944544157 950628298 957684423 72840683 622184083 121499671 995705703 878307466 952873943 541552771 595801421 971900453 972972786 971071125 996627261 622660668 845930070 976848028 996607305 267373183 636654715 313130258 750805745 595321098 968819057 353581164 723098354 700656057 983157518 821485837 985362436 670686482 720919411 479354088 576806060 341828866 578061314 675589126 750283108 491146632 675627166 931632595 978672181 65536153 700536703 287739314 526198195 578896955 674480439 130683914 795259648 717267940 910456400 977220572 994922034 451871164 873504434 390499827 588238090 604932422 689589131 979414181 994663040 210957496 308590372 904515609 973697141 815641148 840009516 85220661 649227785 968247114 991147935 509182587 954321565 168105464 727486282 28397048 743958068 78968439 729099175 69057416 262774425 612340044 813376883 464188994 700271862 249461314 354100667 839022703 871954836 331914085 615790256 300597065 860466501 234062894 842582724 723111829 907065663 490016977 698386828 587063590 898957192 122022697 642037498 125784614 873897767 317958212 908590149 414786126 640963630 830974276 884847363 803447534 929170209 771784719 880867485 653280409 786513470 837619921 868577048 573484903 878299361 109207790 964378417 543224762 969626152 760141914 888326822 9886888 532606714 446793426 621982946 207609756 522285398 222105849 254952221 85656469 975330105 423588255 876997366 871804538 872361771 378884455 626687721 745669679 971798522 745929012 884912262 77947196 323918960 600457511 868836882 839103504 844321806 898409594 946205507 191568109 500718024 198179045 830972268 251980197 528448701 355002718 754715345 910191291 919768457 829632754 911963697 840793428 978599308 749132415 899311460 742555976 891018749 657939294 726510503 920114294 981142252 733757487 909324444 799433389 959287826 313062484 340287400 591005272 689333315 940410505 983741280 272334750 647259692 723435309 725988657 58084780 295080278 534551725 884402635 222413159 386505528 589131035 906539995 296872782 376413018 842993847 935376569 625699956 972209781 378711149 915278336 591034313 764577505 804631977 896161649 464655913 812431963 421353123 478953362 371695574 919260171 949491286 967643895 303423490 692110324 673055626 929290899 387961517 989783898 859035085 874140549 312744529 952301157 162879139 359025616 691801640 883771586 125920876 604361170 453598584 808548112 905536237 925688785 988793004 991950317 226410577 796512290 550044202 784976709 618114718 871732052 105652809 197534098 50507222 329701052 606902304 621506486 835366917 956018788 790900562 819856623 153587288 508239012 249551899 535184866 731867961 835139533 667235411 955160627 565764654 842551924 270395400 538482849 362437869 646031234 275505805 772933497 938685997 993648828 871907291 941783913 290282175 710194202 146559258 353328358 452556543 952577659 732430128 739297479 635741282 702976048 87243843 478506042 224097205 239063331 140450378 816008688 998451252 999182906 747284929 857105698 963737620 970684799 187178894 212478340 968930515 977931180 679731467 823227850 20106864 293202756 420481632 677341026 455132769 531011794 71591041 215019030 687688722 887813936 232081024 583880347 825448135 936174692 929849290 945254062 903043438 925920776 485817181 883373429 7128273 979892045 67888701 212665151 608368610 981232457 410521745 949344058 406290240 497437275 464854569 469116228 345541494 789262710 860928687 876679950 449253410 804566386 743747578 919148847 884886530 909777122 641443987 944606821 101284913 740437445 758305650 935251252 686957767 836565232 200476342 296542377 492314885 631247373 107398418 182500069 12881772 646080457 505549937 664818037 490013717 854896239 856219159 870225600 30580324 363317512 774658072 834049440 863287406 963487148 186760406 377893165 578805261 950523206 123568413 281104086 736521770 799791963 130184025 250165381 585323250 784992597 732521893 781817382 802927133 952846715 930963231 957551901 214097271 832428797 254572760 823442263 902309988 985157291 645740446 743113125 941940705 960874249 946510828 993791163 33632686 931079637 391987903 421884659 410333725 418136214 362145469 921072732 248077233 365534272 620261557 929621887 334769515 439339638 623029883 969557555 315103324 753751338 614443129 722810782 145982014 951026810 371902781 609291720 719848108 967560767 212541263 509478427 621382355 783036979 693952432 734479940 470522736 554089869 594365999 948825148 513683671 740589591 256448453 592428068 117510731 758590955 276680546 554248349 303703407 986191123 635746957 647126216 828282963 969176081 196444992 580643890 812608654 972986147 549249519 991798850 366545052 681094732 158454851 627872014 895949689 945922087 292375436 956623820 449754200 823471972 830178029 939718579 20931792 891651962 472713082 768964484 443472030 661379609 524397269 655614511 828470493 885784566 474059704 540346733 120488024 526280897 73048473 437242743 710414114 813747987 830078586 964475441 56726602 825856701 445174385 511475089 425644853 811189007 719145848 739401486 5132453 657039201 453956650 629781278 644525891 853922615 328063020 599509599 536447650 886473598 708176513 772850032 8291154 290035370 282955891 820209694 270242543 713905798 109119435 915924905 176885974 893070047 361346647 907974816 485490815 702741499 259082633 704214341 95752866 770297535 828698608 909651422 928783536 976071177 332660836 706533369 846847426 985908267 260226892 897405430 457382336 533491258 100940454 267030144 459237799 671528971 221114284 997486429 595817003 657421453 195028219 490695469 576572696 942872202 674686584 796650118 664093885 872785629 911171898 939640298 992735875 996213927 236432251 410942179 191776195 736613471 864555379 886597815 291831099 910860079 287122943 791765392 97735229 538332400 57927730 950698093 966045870 976878608 392762853 447241861 73961573 254742816 550161940 617555472 575684424 843460033 864655677 966765776 622566973 814327838 668305540 691518225 803677595 901652061 775996946 910413884 309653480 385368275 564634012 873960337 39897260 338742519 157624953 653593422 332447332 981101502 928797075 946298109 149930396 843217341 564301921 705069390 673094437 678463959 343468201 561086889 820582388 965575806 153573177 934028100 917072842 925622101 730618886 774016530 139737165 293233760 404944265 696206327 924201969 971782314 145603672 185900920 457081104 857561571 460283943 969892539 323615704 432058031 840779269 985325420 531691112 678355397 993210074 996521169 160176000 751678944 59269546 910316204 597413087 829781377 504052977 909849359 274052186 350875237 29615725 445497745 55085986 903285078 797399101 799215425 228181547 360783099 982882345 985950337 158353521 567789460 988999660 990207595 614134703 734569592 760351167 900506921 166575469 989381059 898723028 985872168 960283544 998861528 974429812 995548506 285642467 616935360 424987537 683493389 827771882 876772254 960615394 963960910 319976593 697199009 584460858 635785002 59739290 460452210 406731779 418973929 783330837 962508338 215602754 584217192 152339192 365767258 797152108 905592513 524256927 545403593 223161086 522257348 167339811 909603749 299750174 724488497 955152645 957278818 63032693 113460483 422130696 532429567 148407305 151772774 801939344 829860417 526271979 828751008 564022758 656672529 463654717 736655823 526418049 570903720 797103312 948588422 429631513 746341733 272723511 647379266 571374835 582023916 468303965 645696385 985629674 990461987 236028450 340884134 121028057 973711935 386089707 494999663 653661757 815321606 80900689 254166091 183300152 638368743 706528462 924213350 518217293 733500530 102747503 369617660 294812321 350328115 859265025 937544024 914342178 968703826 468183528 937534222 701062978 911575532 666533375 691065281 887888855 962576374 265826569 754403818 398063866 563295091 386295020 980341523 226028787 826375306 834200724 846807345 870894033 961411066 681805863 733492486 513186866 802490540 43432076 107896541 283328828 455114341 19341264 602067696 409367037 925809461 991445011 997522710 3491374 691636047 274881438 384130335 284002959 961392803 458656603 473238446 278025428 298354376 59728733 822725866 48879515 738590953 65779872 747837786 13056385 133001058 678724207 887312385 305145691 738919095 698970001 830818764 464987104 855181588 23511970 115122223 252271451 606134556 729669094 773338830 757566521 906547594 524019762 942903970 284670203 647417903 834791544 891605132 180534824 557505355 385266070 848817509 466214411 891801370 327131618 938358207 861585400 872310384 301594810 473113428 395580865 816147804 908573036 949192612 378439215 982397280 275841413 931616678 373839545 503372328 979781954 999146894 277370222 705417923 612723706 635885529 448341180 530912852 79314277 235103308 272864392 391587354 638154952 699382949 415683696 700470621 967765014 971586942 676877972 917992518 985728136 991728678 170820200 838371208 184391867 210635329 680689073 802428569 854252448 968397388 543959637 752703969 541597728 880218114 720328271 731245503 246365952 381619100 919197016 960307582 393602165 526098287 903209481 908615610 558169102 583109903 530526239 900120829 817965980 912801290 966544509 977297201 402232126 595937357 111601096 194199874 98650790 132343629 88316747 606872267 434336077 849909518 998299417 998614865 522019073 618491467 285223042 470266947 474623544 886794566 16366281 242240702 768575368 830931971 700651419 713513540 373427386 782327203 967910408 995873945 488582681 862443565 972764007 982539114 789504438 978918337 459039408 981790335 127647397 736173021 540117194 972963931 627621102 642435453 809603623 980026292 960762841 977341892 412478446 985476397 3547047 799454589 443974499 827748560 908494298 919949834 637030690 945956237 557767318 805102405 669349367 731970620 491925941 977271584 160588754 367895417 841407881 966502426 148635836 599459605 631380431 646768724 693317202 904598766 423004679 476310557 884565705 996512579 44415295 879852579 637091441 860980771 651689750 656104408 10110363 995226630 225780926 711718774 107158384 143311366 712156614 875544596 248101434 560131966 728821373 802404495 539994445 571808949 642316433 959781123 82011508 603010323 501202390 677121723 775233231 888132360 704861400 813198393 603199992 781923096 327593071 642967143 497230313 892922883 278916137 762414767 967584593 994452614 886431362 920148950 191325539 867678674 90371434 679859460 449180090 926283402 726010761 959688556 489245391 737835180 60147013 740246136 552712865 877769723 271166560 289455928 184252251 362752679 634551342 992308650 721945194 983783067 717641874 809627557 19481594 587084338 934924672 980652562 951993694 981493698 27123883 220702735 582510103 847698906 104042920 224976797 509819224 809254442 401433488 657897591 747026208 798089741 563040007 834214172 372810182 876939472 223892063 946763517 473699397 963584288 399555452 703463090 302514036 346663935 81053896 760300915 201254416 912531534 834056591 965979469 948908179 980894082 616674369 676028291 910742087 933880990 508164798 578550768 28906254 308090276 478620999 868503540 810857269 929425385 947662189 948144663 265900864 481185153 463033681 945412812 274595944 438846168 501418681 698689083 803626978 917471251 614579484 724401917 989529812 999097056 408316773 726822948 664831085 717748277 490281044 583647287 145399249 817387415 864480487 931460642 334271459 844412721 232553245 985658078 86454743 992350728 714221731 873464136 795070717 895692979 282692967 547987691 222765018 405098430 384567768 857700379 890300522 901928141 566547529 934410710 148839423 281596185 156933511 708196770 869499629 997834613 709920607 854470676 254657565 661752512 748791260 805994675 484761831 606200164 640274104 992702806 336334954 493974486 900237935 909018077 554409971 938351092 102583224 758858131 610805209 763071740 873594726 986638486 54865403 55284039 481480625 528305949 69976710 614048781 217981649 308421397 111477984 716933233 399383968 542965814 208355319 832646945 987086335 989606301 295122634 962006934 186498246 388063879 40137992 198588396 484375794 896123336 853158247 902893123 516798943 668071736 362776404 862567447 400970170 865380314 146875301 896694004 45347657 629954912 822395956 916728482 340929422 860584017 109575011 460210875 756616324 767060180 481262353 745041218 791228661 927227237 671995166 818426188 476973 753328853 745397322 757386909 970400896 990679591 635773815 663654227 448360373 620243791 629750917 836981921 566482751 765243623 434182133 948957233 960889249 981246825 809222774 834173489 587439387 899336647 852298458 889070740 87143315 512100807 626425279 813312763 436722131 831032125 753590763 970705573 816867869 921373946 322507361 607751023 684372690 951394996 595092501 983989067 347303544 700013331 498155445 687051363 651592936 953372570 261933263 780236962 360670737 507398819 843258771 959800888 842957174 919454768 409844456 541462962 806534496 978644297 799394011 931936038 709040166 839987551 67836522 591747627 542365916 866493341 362895596 500200293 936048356 997994287 442441707 895679161 673710395 819527485 6377884 449487923 233613486 575402448 454692928 536680285 154091233 460427333 659586003 690586696 312301605 818314782 181785437 992837089 785835409 886776076 255234598 931872405 219147336 810072688 714782116 739366621 362079652 673225419 895996414 989732620 700709606 854285334 261592231 555597257 637218856 930035148 986202916 987371445 613186682 660819280 290947425 505111149 830392959 973815968 324630846 677975480 362016120 994826729 851566640 852223954 73013196 142156709 579492817 619485118 297145168 920423722 691246220 833198411 894323072 947221833 280851582 753934844 539178999 825363982 474169098 928851913 758137268 933953611 903401933 965500862 439338098 734026067 309390792 722027480 566603303 582715448 711700270 850000488 860560024 920455467 896742697 959188636 837527365 948525605 466628173 789949374 485945637 799664896 948837704 962906969 276886023 875796232 54723909 812262633 472806738 890205566 24247034 547308928 278208897 874234657 47918038 517625524 412710571 496983175 148308762 663202006 804591881 986714536 516142315 564487951 165109336 372615195 658481993 970409439 811802344 962224274 603706529 891310758 959589662 967354424 497327802 991690556 236270031 323463732 820763123 889185054 541574747 734052553 726776716 784166322 64024313 608502604 181965112 922491928 286871517 808982486 615573101 721673429 598016076 605436682 263839916 990179810 851199107 881737216 461537079 998799439 812376575 896483364 297847552 842678866 776579719 815996340 400775738 830030714 437203202 865421121 814885221 888673579 867105035 916569995 552768666 575526843 246497731 792955519 845458395 942183490 873679977 880463630 665347840 811519682 351502529 460181719 677674237 680251480 94547228 929388247 703975359 800311985 405961477 722670407 438884288 933802649 235103755 951943621 734761360 749412611 43603038 711722145 570559737 960605599 247829248 851627346 619543689 715885766 678209114 920264553 988795148 999142410 771075225 828739950 919953574 981510465 93202849 486830288 864781572 937391165 124926267 505240728 324554376 858051026 18529257 53064533 683914098 720939209 678471010 938816639 98211747 402469267 233552989 908917043 121164929 298062262 287048886 760782320 303776579 883341345 457048437 968842132 715387998 895948960 625500354 875298135 795717348 916816480 739301805 844698821 633638360 678534110 334609614 651784720 544148106 866656379 978636534 999009860 409642064 862794059 241340629 606795173 494479835 786662598 963628952 967593402 902124445 958058874 643450654 961227782 924540126 950304747 649984220 777559064 428323447 708631565 651379704 962753230 631126003 920446308 819936943 990921747 654925289 822071147 650491532 722416876 886118347 925876156 592965571 772130776 763159106 967257441 322681142 706954290 661313077 735894135 38226615 377717752 426879168 570382007 992667996 998469831 199573330 372361462 50790178 584842342 618562240 619191297 945661700 980754098 805293395 907943267 997833403 998908189 766104773 812615338 562891190 704401624 84341882 781399991 458243384 560046774 869540185 914605445 116221034 478410379 40683643 799890390 737083697 831224029 46962563 528129145 362756673 450867068 895847418 926897156 95055380 449155662 684266662 954052909 900937614 932494220 895059160 930547467 56906869 941064523 8794559 419107731 833413370 897430624 180616643 956843320 221192705 270869917 533882796 840767524 870992080 978493980 528737239 912037851 532693589 793470730 762480668 997912031 398927414 876015096 126425091 556030884 203046340 330704809 358664742 922490855 499502273 631845133 140718338 951410087 851590781 874005919 446304992 540347236 320486841 736581898 688073022 907465387 674107057 818757978 286947355 554081079 693283782 889778611 589765035 686327317 894894038 937261882 275751932 831449001 127896333 315566240 684255945 903703977 797649648 854419257 827328019 865956290 404935519 737960348 687529793 694951532 303141001 303168608 530534046 749718212 275872097 994959302 64275053 287827109 760556635 889553523 810619947 898401516 37035129 418037980 467075045 695509509 818943273 915114865 183955009 382017222 976129946 997798897 74074956 407454091 189739037 547235661 543572669 797077797 601088832 614618346 575574141 896208956 476734716 749797996 319434614 922700657 349079433 637894207 546057114 616328601 675692903 948895422 430749148 737880384 18083022 550588976 142326209 911002405 589079544 953968626 152956270 836618712 221054175 635343223 676665703 851250389 77385630 862710362 614433031 910241528 246497552 787198065 223054465 475558554 809927107 894656139 331584218 646989714 880708074 961232647 933651791 939537000 529290911 766111518 227250163 862409729 343303432 761246239 25174659 674625263 355720034 758001607 496344516 766091360 979260120 989621475 58018670 870171821 740731233 984866354 964195779 964219609 877759472 995832226 465001514 487978598 299624053 812222741 178731205 596496439 828592866 951743867 707161370 727366495 646764017 757038615 660334789 722539427 247221437 519582517 367719460 597540212 795207763 810053724 931111087 955310778 173997156 621842670 568929691 851930689 175759389 301135700 268928731 852181271 193358038 301029289 622188525 884709934 388258748 885960947 846866571 848779673 825052096 908593112 38967192 136370828 436052636 966572686 253713834 854449538 590319209 595724541 515799144 783422852 145501726 386037746 872284692 999087856 219419190 901557754 761479227 927274880 766486540 997054316 327837653 395450423 798020618 999113461 381869706 952643658 429676518 708477219 590084567 612237779 52105244 233725417 627759400 838863784 859862208 863433296 125943442 198230211 103436465 174006470 370510087 704113156 928128137 997150382 666229820 690532876 612882556 618075653 371730982 861647800 616636576 745584205 402089175 517975416 652217157 970413378 907642314 987799566 106159584 199393214 193618193 771331691 9494881 861182553 960686919 991052898 272282252 709075429 518578948 970074713 185457041 596195923 564861454 776623416 375050704 940644904 641311683 723378471 869182009 942491492 623657714 832387802 958567781 992290426 775174651 787086750 923039493 935910962 34756794 406348881 513332917 914529855 629118756 917716152 453903555 918182505 689544520 872770822 237041209 687325148 812819542 994791594 661924359 729135728 8300558 625592701 487852634 598620295 903836807 920183752 316351293 557130038 241471225 349842628 657087804 879083166 285975454 440294677 827507196 885609774 280759255 888117841 206742642 832484645 202786524 462462365 52592093 444599751 758803891 984968481 664936308 703591341 114507837 833941026 84673092 664884463 247395436 783081227 521713968 826164166 12585246 312703360 56340764 808044645 450840808 680571463 734959298 977463067 188657383 733838078 738848336 952108536 88653920 172628292 791010857 804256969 416068397 921107129 721474653 852263084 59505240 530864587 182320792 300470281 329000867 694907871 864997831 928299020 211130663 859470174 957138311 966451802 383492356 573424448 393778454 951563484 831872263 946890209 729585900 777562016 808801069 951777002 281607850 552446767 102294409 410511433 707530861 811562671 310639404 773384599 204345766 211602193 527736236 571700173 532479369 803100178 826573100 992038498 292635748 725033094 827814936 849047369 992674666 994261129 569246141 625830600 661826083 937258228 222721367 316123002 772628183 820959801 820699541 999090317 421111917 512623504 897992409 919943004 508687400 928547315 128718377 738094563 645560046 749988694 393291626 921081874 915044320 996481222 377137356 842391024 495472692 993259147 507582894 760922637 938055861 975101125 445647731 715830158 369599385 968791366 395486572 397358202 261250495 630485614 851279001 921427493 755233799 995431169 773234716 878925343 506951844 604478695 951577480 993616798 422065419 722196881 529503243 573700891 597521281 600706989 296461061 912734592 283408809 327479737 368597579 399616717 471983612 832343858 835114331 880612304 757956135 841483146 436889828 950960939 906058403 942206027 118340466 968929781 274823496 778958435 795068676 913922397 878375404 940894679 670796930 743417423 923481295 966478405 43434110 673472498 778582225 851274611 807613467 952699297 842693794 992502374 937518067 996516903 648745776 748253100 133844802 622864552 312826229 682199542 518422812 663062554 501925821 584984419 542033416 546091853 982803046 990123360 262285664 716481653 730618743 782860896 808102336 861356654 550295351 633723610 769265603 949754988 809293218 866611260 861254130 950418039 605103942 765775504 760040405 877058573 576041196 683619237 609718614 817722776 137674027 339982499 827857488 842425916 635572110 776898536 749608436 993445277 415048117 461312096 206838869 792789156 784042850 841702406 801424943 970095880 207951716 418485819 648189333 673546873 477147596 519590719 718323568 971972306 358602375 674743277 350571181 546718104 206814595 881804803 603068112 785366496 395985490 985445230 697303670 789397453 345902208 712121307 787143380 813855509 350267580 629885300 196404254 671236945 819842566 911293134 44432138 881810561 115584118 176268337 927856771 971474962 851673939 858848284 591204717 679735087 550872441 708793076 40378604 914916065 184563253 668651814 43066989 81393678 926650223 949655716 700106796 795693918 137715405 783899648 853643893 953739790 460970831 994721400 177056206 478669037 152818562 807200249 437347038 872257951 441591697 554120580 469275856 727265525 505550692 675791801 438886502 492693565 629315724 678531530 679481999 899356135 456588289 782310613 825149215 840591697 802217214 931223053 145929466 531205842 161593911 406584992 209638713 691846160 817710881 867140400 830431458 842014792 171513402 912308878 664439698 894954069 605971554 812099218 538545673 677020554 649532763 746327702 416393704 901304822 289021899 858855857 103070047 811307167 672201528 922322864 842629613 928593392 420226158 561250865 422526184 800928083 418414684 725202506 71200227 923063811 975229139 986295901 289721145 444162363 459644653 462421876 448472237 547166243 652103758 804747816 108654633 867833682 273795500 584539443 550402590 915741348 9805601 363484291 412200281 635462775 576677608 858489014 406828075 645581847 509295766 599973480 523937932 877879007 714445640 911596806 544230101 913852065 394008621 503118514 518781118 863582801 624066255 932468620 185482125 298256671 469625772 986635998 760779942 765754617 577925393 715211178 728928150 814950310 240111961 764417106 177115713 273729053 304238498 453088315 941946411 962526380 78074635 758425005 43833490 77441685 850803878 960766037 969670825 982256101 76957327 592622292 107323532 165690265 979766297 987413237 452770824 936025211 249623654 695413161 602943689 719933741 27310182 122978604 409706121 840615654 756126733 951117612 664649477 839402684 490579629 960783424 314322636 647196600 234519071 455333353 9275046 400057195 271130080 345315423 273091513 621224872 135613842 435680202 231156576 313158290 332375070 879849789 560197034 625777063 94108771 295309879 713655359 989572638 185970536 546970435 608597938 669223238 530555244 833166134 334757507 463220646 379723524 742180526 911019039 965258429 708220303 711047480 374040501 525247231 147647603 951553432 795530590 876986673 844351209 949488048 453846992 868802399 108564227 150361349 453359139 518837436 100111166 172296114 626965062 903220954 153183322 428770279 571545989 965373323 862236551 940708309 110802209 729795455 493197125 971444909 926868771 943579608 783371820 935196683 528988357 652052894 320062046 784336853 820886416 862916326 180201 866062342 567836623 756492572 341878432 379330206 619907774 620791093 775109885 794713550 259493163 738974312 140844316 573219743 461416143 761867836 346117090 846673326 480271361 897172470 828646347 960190219 518972735 928829803 166521971 310654354 155696941 661794583 562103079 679003911 826022798 833004621 542043486 936155709 837277137 994736915 228414070 520051287 890728718 961654784 877108522 920123080 595333949 880109427 561483416 997184347 522184545 643894959 409151334 537420878 16416917 50916443 366693403 860522302 109558111 840609308 866089325 906624870 724526749 910239711 156335562 462175454 958539902 976368905 171764152 646892782 939570010 964459639 680759120 752640869 824003038 990103285 140223478 161563905 596497568 690468764 977884867 983007594 367085342 430900748 199191783 398380440 785169698 975523554 206576267 592128312 4190149 327407418 359145390 813520353 770555800 928262269 380630788 405483402 404435018 619433536 160829783 729659434 567407820 627164290 563048330 639716554 366961325 515172844 587224069 926477215 665051148 724700433 571499237 870186644 447071735 536603188 409818681 509419597 360143655 547567980 386302873 861375481 826744665 873436438 326537539 523606368 461030301 790152356 99094448 409280192 447021547 591173494 668303877 871799356 401549541 996391720 339789991 929575619 308102288 592902069 199636243 936096827 763019312 969862670 504139098 554601586 989982882 995069022 350098652 621078628 271933512 290536801 234614167 885759225 167543251 501103661 569700933 583577649 950308214 989576293 802225607 846408799 671044694 778817206 864548811 928963555 186217440 391744466 538260763 631575357 366387277 746954242 244747615 818836305 767797230 896744389 8865347 538362409 876839616 921542902 691855375 863106423 196742447 348846049 249530566 804842921 263962655 288190290 421202309 819420133 195070316 807726808 487260539 928173744 611971230 892410899 940484591 957572047 966804973 985578273 567398397 734621795 288525982 851016047 917570170 954399401 707146835 807973313 275101528 800195211 362628020 572619871 947396257 967020881 376311061 392941483 799390599 846783298 804067636 987054895 503906251 933840400 777344670 942226320 669888073 934328343 892046763 993965976 337004784 608245061 759977756 916909473 579010178 896875496 237714362 251509401 922040191 938212467 928890559 962944286 374902687 563768882 272170183 548281509 399018799 818112084 934930107 967284856 413699837 656327485 108833516 877520718 401930171 615166281 580419721 817433683 998578807 998820392 35560836 494005313 133034410 559705100 346475612 534327216 360581262 891444091 727262883 773021243 832056655 870775693 185304240 800602773 784258626 921654763 217460115 785362187 80782100 98092032 449632962 472340801 122021485 284908537 34439342 291423239 731149919 735060448 435020931 951732045 530473112 889737291 473547938 507543443 533871395 920630366 441931679 569407092 839295687 951978421 138248686 805573175 624435689 921434360 411426311 843042476 213060611 793459335 650932121 878600489 207547484 762833820 755707945 884244189 491727812 798123675 651595327 994679075 40282523 82030009 99910528 897992220 209112896 409645089 976244399 979095137 966096193 988645505 585036964 642121298 607351743 889361922 780040599 939830766 46617020 280722347 584031784 601458957 125927083 623542181 594159503 673255107 372969686 657111911 80809527 575081345 708510416 841080018 509541585 565564042 821224533 981055499 76234732 340926296 354808927 644245171 728493684 862576959 979590795 988560907 949860456 984870483 686593309 952924870 690721193 854370274 669198985 935584985 782022003 807236970 297224363 767343415 364944554 431459069 442971714 951994645 942728467 986650713 862764994 988179435 702182560 804591386 557608652 657311156 719456387 936118489 13801313 290803567 24317882 320932307 854823205 888207137 489879062 545714917 292863481 348999014 475345001 823125910 307314731 426876025 380951666 941643624 290342426 495309598 37488627 116912247 61943985 868621248 210985053 853299077 878688215 966864176 412257561 450703145 679525155 707266898 694552296 782648039 808720591 892331823 975013508 976303257 501918490 890041716 715177527 820199720 405314053 501091254 567913491 774679918 839170780 881208701 473186204 875737690 766143436 917598038 679364948 712775276 96836921 183776085 769820087 971564077 480530695 834883085 477889565 947075839 370325988 637200218 951479900 964449377 890028019 919065387 584161129 628491849 241137691 333588597 906901571 956498219 801792855 997137395 230799014 717338701 591189256 679106782 30788158 950059168 470930123 792526609 804432187 907294124 261864030 987228676 63101400 485399535 920044544 995409112 349229990 367507376 537071846 703481845 103841206 712115279 464954307 853137906 632664909 998022418 530364051 803680529 496124575 871009364 93725114 166465492 384595644 469414653 43994602 167355660 919059573 980232854 875579624 901053027 141668721 788006152 194599275 653389793 273997767 395751311 460494263 467828724 349267581 886594087 85835690 109066007 212322004 485721186 839869800 958533122 730004354 786888266 954631943 972255751 22139140 39825375 493756327 848974545 422104333 778565696 962470541 989362113 254917466 991905599 122304384 827240078 904847342 913476100 737804236 865850581 49208409 371034424 960922963 974726403 185468853 986144269 883916202 902815755 663097932 880410311 591328308 811479499 317583340 781394316 940757071 970507508 130909728 202320430 153541560 972624707 816869603 947475248 849051989 932923018 788811310 823551620 144406004 176390170 387008011 580882457 866114546 996697562 371735099 482175909 127253785 862450544 435985334 733769178 888451640 938640879 574976821 872662674 189189058 225982504 440543468 510619527 153846263 664344294 508770678 877410998 705419704 809128820 445169227 506694401 882347705 908332524 959182711 983146064 447988557 894675744 885079307 983313552 986756607 998938940 318805983 795762370 265377075 827089289 198229384 896881323 255709581 418320741 634664126 655155784 865409132 905511244 203410307 335821825 599101698 649792781 487537125 766897678 618307076 875935348 116005908 628158150 910975157 953198525 107694556 159972189 656786304 881838115 395781547 982031030 28431937 900255940 95234338 117053999 284116572 929643055 71337174 385742744 673264180 797314032 87204413 710499672 539446548 610985990 814223776 902265830 69808319 569344719 471492785 730526285 16084188 414501476 776053943 902461761 648472602 965058196 749141380 862287147 612242522 705378939 727609938 742523311 739217514 954061136 399334370 506670877 846916236 894800886 69465318 930400693 85550646 460582526 11038487 321227668 339546538 589756048 142584259 508942322 377703289 541952974 516967062 870988845 918102920 922720949 990274439 998238532 558907785 804694484 259557039 438070347 73115673 108133921 711981327 797991279 834973853 837402912 608673189 991156372 324223122 912647059 477430862 987451199 971869907 989349550 167391179 437109551 577275205 599463794 409771885 520899510 777047211 968771691 330668228 432620294 996532133 997594232 876468694 934843719 828720070 876268315 541766191 789604851 60540232 730381717 932548113 996220809 306910804 634006037 563156247 620912352 798128274 863400761 726659245 832353966 63211717 101203604 67988601 784417842 330437699 657177017 20326059 110006622 81471369 173128718 847384276 950474115 857667474 983220929 418756796 891290559 704984449 959379096 878523477 970901202 917309417 930202045 339824151 572246002 847903481 932080465 683670139 810214417 320103051 627604776 65898959 599659593 880983540 891904750 527277098 537665020 941223265 962769948 748652474 885443982 770130681 999129795 654816912 733136363 793056761 939503945 475147239 601436875 604205203 725135863 184950926 667431084 427913875 661974733 44822243 566648067 576054620 666801098 466324321 744094840 390386927 842809563 358616125 939874605 897205108 951371351 582184698 812457115 265130053 875660620 861873776 949945464 146471435 896054974 107738769 422590452 428266429 692594832 50114495 328253719 181983169 668539322 56895182 726219416 15775428 339578227 445344885 915105963 121887569 575742219 397778962 632256700 389429342 673124646 321609479 459757986 955614586 962808572 594909904 716257107 853670738 892516762 232025106 924545694 544968432 701485636 515823785 569197970 754118799 988720064 541906834 639598078 900222800 964713232 438304349 922827941 65060899 487693077 822660075 832680740 254048167 956470419 378531916 971749833 414912654 595088850 467576656 964797373 42978584 794384744 750784449 895217379 880424891 900641930 55130865 553256073 618702235 834678070 957260645 984532744 667861894 903589182 808365018 823068182 238263793 851699276 520138409 670309806 384817517 468348269 489156589 544691192 41350007 466873652 246168501 455924702 819740411 868106751 228454914 303891589 555582090 888126955 521125181 894844153 441580857 929056675 269101335 338048017 932180611 977922241 203686632 342054536 335685913 896399194 972445246 977375605 471514261 952189428 587452289 848351161 557523403 912997692 65450965 658268635 517099230 693447712 452573832 554916721 171215174 462058972 309073543 444846769 917843375 936201131 463993526 527035107 84490127 768968572 790587642 952394098 514826251 751455383 440664492 706973239 735646925 771423844 82822607 693777510 900834769 921405337 522570183 855821036 865591383 941320490 711437820 974255957 549025289 882561421 398752070 532162267 950294812 953262278 594353241 706782588 401171241 819470737 661104740 901955696 347229275 536569491 776940718 891566821 955472665 988763791 10790286 500279108 184309572 572209865 137406036 468409673 537431499 628626905 739355315 781401848 94759004 559875742 250012127 946513241 412222283 532610010 246591122 393833299 338349695 685057559 157769797 559926033 835208883 954217007 69477739 199829148 729057224 760745616 979268048 997758955 37659423 199014986 894731214 909165343 57619227 149377383 370917307 747677257 602181103 852598932 694339493 785162186 629775301 762152348 904925447 913143354 269256269 921910619 730998660 947186590 725517072 827947661 49396598 305947940 472446082 801974018 211022707 678296685 918062711 973400509 402760868 882144214 363736160 469232083 755892698 837907170 871029541 941115078 523445087 708065330 700000204 934126747 627473654 773861768 152080271 667616178 765424471 824089803 708624026 804853301 808255937 930859142 796134422 802549651 554544929 696119524 901221076 978213190 852345865 989543229 286181843 994821995 966722537 988294621 167133335 553428918 775623417 983373539 932949546 954321713 452464089 586169107 842638495 933353384 687227392 859552637 631884738 975325994 90794180 941939789 632971965 952173774 852742292 913410600 185825323 361725217 603846270 674081785 202569449 465426767 520305536 735074642 553845151 689747996 114702263 419906613 633779544 819342272 134803873 386128800 330868504 455664534 363208418 643086024 93202082 476259020 456562071 701011505 762738139 987159200 924279638 948374617 55415718 966420184 262070021 995920867 972424107 991298252 703907346 973143266 987542430 989752050 231961563 472087300 412208445 988640937 461932454 884851681 922980741 979161522 209233274 474105435 805867190 861380237 1751876 545107891 198736430 472972781 620379883 674191053 752694727 774864552 834539764 889193593 886892760 964949941 41534352 241458278 304666878 888139023 278682568 397305512 978630370 980989993 822495770 864577676 939057810 943425621 801111428 835797042 482173896 853561270 717828168 911619087 914981997 931688582 758626134 920610325 724731543 912994545 971288431 991322729 268650092 347904139 618661384 778928323 557079872 996408637 909387008 945099508 456697416 640968825 95231296 534594586 170220517 367895982 824744918 847544482 223019868 395358178 886686065 896917863 60692332 784471363 51997264 554158372 672635346 733545905 847281914 855366129 221974236 704968039 851198155 868068573 992795545 996938359 582490790 656797185 477549908 795399707 888010097 990577708 99600032 214484169 721332658 930474556 526027337 688378048 511162897 566820304 838475449 947229812 77739295 280508668 599118890 649074531 638694130 930657192 411785065 693379178 822477098 944740917 718058237 828654803 33589725 111226497 431257497 620753528 778246821 813871477 766086944 970525441 725363318 834670810 983901099 991091133 100980791 475245689 368175852 710889102 633236804 636314833 321716453 671081912 380996108 566421014 907162788 932439046 165704220 727089831 470093669 939685964 24070130 316166795 200593297 303250254 50847587 290070431 785846083 851889073 980627579 997010935 789621933 907494053 127492241 235084582 294431343 326599586 556428255 701948751 679445745 756566884 176915743 885366239 634417902 791542805 134407569 588932501 260850948 897241871 20088995 809854610 760417747 874710527 678014114 871882976 727539133 979161151 889658478 995666552 108006803 714551628 613253506 995184248 294224682 454612946 485814256 970870011 282247836 634341993 585004571 756963200 777016188 912086064 647166509 664763745 753323797 826526245 324748726 814032066 697365724 922078527 555468346 987883459 95601309 522354245 217496919 846681134 718337382 913523302 450364518 614517520 528156262 992508465 110686428 828123416 631232539 817169734 295183736 383395509 553977074 559434785 481436817 745473608 910257874 969806248 4485220 348835866 369836927 706564532 579987617 955478479 832424773 927078927 959735660 969325603 500692314 532374501 782395410 964335925 923383347 970653605 947543654 987221624 967024657 980891985 817955085 892043723 308964919 716625986 816289126 977668240 971000694 976888513 878663071 983058132 730526001 745426480 438790412 499908807 802197424 844936260 113426511 742351557 464804256 500122043 882439272 970182651 619445754 648354942 126788907 387082892 271414906 405967329 634890142 685197706 893166895 931757860 631653602 911892828 34880384 640208097 128286252 839930910 412244381 895392631 509923565 986944645 177273913 535171774 997706565 999153178 201976446 496691800 892533593 914123142 265879908 598977481 495142494 700491446 260270001 899640866 714990496 973689053 874252493 966712734 807934323 989516106 901890470 985477346 730962629 892146547 131917105 246327977 677270757 892886130 653026666 968846873 538465823 649414075 997920498 998955592 13589576 930408266 353942670 479579740 590043256 972456672 195674677 763207502 755266190 961440879 44852051 91695471 613727555 908921134 247288251 678114859 35636743 272370739 841539975 965315579 895578758 901112183 651155383 762741611 474535225 768900904 630978120 985466177 461884340 776534561 720543942 904531231 892283608 977996246 847590359 955708238 988351023 988529285 443204352 644156561 47434892 758665401 965498489 991267661 893108962 939529251 654740240 840659605 420702613 618386034 323485863 342950406 906820091 967766050 638321494 757048387 275251976 781045521 431909031 561995541 952949825 970676971 288003121 655447503 816989873 954629319 3697079 101853707 978812320 994084343 490358262 515426310 848767787 901697459 346628582 442687964 290428392 929465745 257546188 628168333 252502260 350344946 190759600 654535810 804243354 927393301 289941988 954955305 67125812 233750150 608833640 755823975 263892848 980515802 63462736 662622894 415270380 548485003 181303151 226724055 352591311 611167259 699167624 961310971 74407350 634143884 98928927 616500371 478874583 569587018 445325698 732229362 845721742 853271286 689096254 741063798 385584908 408194255 194064394 937608290 606804803 956356421 276213182 618334545 578004973 693929127 697421636 853609599 343549589 660116401 378511215 849901459 865212203 939655072 438690777 809541034 933803604 980756939 423158281 558325423 763597021 895234004 443032770 614795976 220523184 345783448 649798528 751517228 342602247 635319090 164554216 744518455 43186376 668607320 488922495 777970693 786497469 881438677 293315338 581503888 49872009 561445910 426653423 880497330 992007809 997718535 231390131 387512260 336651527 343811592 106050822 582528995 139722971 663703312 323186241 931683279 254078709 801151349 226433693 282055113 69361607 456027356 307205313 756343539 122016309 546454394 940772064 944659372 475117091 521231774 273184207 449534162 35669591 557808997 342003411 949680580 465551499 529290086 470506975 534487913 818345359 914106628 484760914 508595608 479801965 532113888 262815568 715507957 879322684 994527511 889443210 951617355 89521916 342225247 421875997 710123751 709660451 994163908 824425115 998811026 57760279 386191063 312175485 936813249 175197409 258518119 70842727 271788983 375610247 545338045 732105914 815860414 479764350 945376787 172510999 565872161 274788844 519651525 516521877 707767468 960537262 992003171 360728210 451170687 514020428 933947474 767273994 863716937 495961915 541817232 666518385 772935360 779164548 888838290 750693446 805124958 342238486 809688459 273810622 826401079 540022119 978633034 527265774 574206763 260280431 949070662 677745923 877021824 12264082 41461713 555254057 589116401 125560025 609932125 794275850 986177169 172124688 837957656 659276314 816720848 627791482 971063776 337366626 449659581 217554112 550389409 820811237 951379385 535681996 680552021 724501710 807958114 515113277 583015158 158187813 572521698 621581780 651726409 342507193 454139413 618514490 673142222 75577372 173794423 285658340 429619791 716420415 826802399 447882741 679351561 565283774 703841673 641741852 947288355 561131788 983777071 630027379 662744105 174339376 566563562 383824930 947624060 945350138 958385873 651427051 714536551 637950318 926683943 461327539 884462455 18030289 816800530 519020571 797202952 593187839 713862918 436176808 541559814 809458379 898993092 802545749 922514023 132192683 557886637 706549578 889503247 348063503 732668417 126404226 777487144 137588290 173768212 229902780 383275527 62674302 359315382 134892799 662581242 401442403 652163383 753811024 818495077 333291663 492902460 126823246 175308141 508880568 995291421 869667039 925840753 807376714 834323693 530273050 933194147 786826155 930907433 622627307 628847505 467321506 816825177 312479349 579352549 522947456 797653997 552916063 837168581 470175232 722425196 821982032 901050634 255755142 432390373 791595856 842029487 481916288 842439322 439184334 892020458 554498934 563234851 928447261 936806276 342198084 439167689 877364778 944111906 29858299 351391414 511597967 535943900 737031353 949981080 164021478 803183000 977286688 997097091 595202061 776820785 159878867 927812552 987261295 997713017 864892533 878905953 231853621 280064297 445678794 665984197 49251409 296952963 792464716 920494115 718138908 875991197 521566430 687024560 652093685 662099830 633022808 877135311 577930140 635133453 813471524 859584956 967148812 967806861 681550182 797669693 301457915 872408440 603646405 829913679 252295479 789643988 482060854 483735818 854100249 974209095 939432254 995875656 894032322 937044317 125903324 464961430 40886815 590203282 324768012 388390122 772287825 993247914 916289478 978372859 578238098 986801789 79262836 247217256 35514728 468448179 382963284 778862773 648286697 839199727 951227820 956776078 986823312 986951344 744368363 808865098 376969121 817816640 864165801 934438099 801570186 970772656 762648778 808925558 564582622 921940096 383054130 799362678 334059868 350403012 699195337 894027002 970120618 971864757 400265613 987974602 644988366 787202239 501983764 524326701 650971078 935174112 729921286 989560211 621907711 974953559 828635058 830533153 763910344 942026814 548631630 971023712 24475176 365553621 763471313 870732520 494452028 650869333 447226345 695502993 181555401 600058839 259334113 803550760 525378674 681556712 79267384 314119073 775881130 923840889 312025088 660694009 96927574 704063861 780705614 896130752 107759269 983687751 698969352 781034862 816592276 841490784 662738265 993648274 192352494 861016100 285047785 975965278 707991984 901556237 85871770 437858901 171861175 454082293 550433464 638497318 398418981 829152577 50746795 228314162 943444029 987940537 390646933 719393052 871564115 948828206 775801948 918277791 829196604 869502137 962327163 989824582 259424704 469582696 432613158 870243699 697302685 880642075 270824868 655816398 993970260 997399604 93582272 986702919 681861208 771928395 515257667 966112922 755044488 833648590 970505277 980444708 239012006 928946200 350421117 473027009 324531035 853793727 264995279 529036229 412656336 782440024 728757469 970284040 549430927 891674521 124894156 410038414 689549177 951219402 13141416 228309071 405467498 741263219 902626818 997838319 49538863 229292770 840899414 895902559 286783368 448267181 762928338 880088004 74001400 967330727 960115131 966536080 383544799 909491590 381888901 895527443 989218484 989541547 809190870 942761522 175827248 344483803 100928981 288606149 355161881 755090472 915705262 966531785 91219690 546613861 162736049 238669864 870747085 886274014 742217007 973974973 577354085 712802125 513145793 583253817 216772348 837815804 897088308 937845879 261904163 497775734 765899659 816928079 885897387 979130982 861220593 935006112 984425854 997799444 65179572 286687109 602100348 771501531 156716413 514590263 528416280 585813307 140473199 301416733 438273148 606233229 200986262 241511436 968279224 979126045 278462529 586014956 304277270 810438592 77918200 563370348 125726317 899918724 135417541 484501797 895782045 941883830 686156923 694133916 386613252 513954273 974547470 979346256 537808974 720113747 429910584 793817744 852368087 904454461 379250734 560498051 482888213 885256059 467844780 580049487 104498986 663111948 373272076 516923454 527729733 756966923 804904456 911252716 186370541 743252344 355398830 446339879 608937727 671774924 8113126 823638211 285071779 296805012 521036755 656287122 776986812 872451529 341691269 557383937 287047160 487389420 151403802 297537839 164468763 511862401 627234918 930861316 962691791 966443395 551608311 960632941 607703617 633167056 816776993 950643288 601513723 967901840 160015099 708867516 275396786 639931131 83721105 952262170 55801075 437763152 161466193 680552687 774098204 849935021 447352831 506218766 622811267 991880676 268173791 891447585 240456230 310301162 666695423 768510842 573966522 759154922 743759494 867057633 390210226 482256803 110397154 129660033 385258902 924847057 13153996 831029254 767057602 800588602 286415346 908962365 316449270 742676159 346440666 514446695 717301385 977673649 544514652 660548288 132289226 446722494 147387699 337771739 444997626 970904201 129040855 375797029 205708670 424794251 310005974 502107566 851382559 910024076 201794662 570095156 814495336 875543116 708842607 926092698 524941646 761676265 317083618 671073666 477542469 610260687 436025884 682434023 28666338 630258538 306308351 983446299 356787442 578458831 882537563 968363677 125575069 264526150 832999818 995054636 36446001 490004887 537772153 598798832 706530149 795279999 288738983 531328813 591915630 679743958 389426380 952519388 318622635 748088839 584224569 756764407 472591338 790877045 86956451 203878525 172906842 590417892 816135128 827337228 714668565 758619677 634607802 968526243 338647619 394085150 789727100 795297362 790780309 881435537 191344200 796685814 525411326 660691829 645350688 854917609 422415797 583646549 219815343 409021901 781836938 913585929 675909985 991293657 559904964 734197124 99919658 100850863 561938266 710242970 971827028 994081657 716019551 892115889 576197588 718707165 672876451 965327187 138233098 898960625 164210953 333948687 816153929 867289185 110318319 524841665 132450477 309992946 892824768 938993280 908356638 991901107 708695788 767166459 701688973 754529738 965791741 976857204 424295590 687608964 989984146 994176662 549990294 690889887 900454391 937711674 130390842 563509197 77631921 979317997 869604189 961748843 276571494 841149159 781303008 861609552 814192762 925230405 532083537 575323294 283724086 468051639 115232919 800838239 136238571 326399290 25592842 697496660 220114583 222233532 415782073 864424950 621934159 983629962 17890199 462458841 623737714 877105863 987579387 998029304 552546477 876815044 412723486 949474397 830340521 985279812 28677564 458944117 306055687 490293984 660245594 806570830 58576081 158975703 55477611 469040337 132227663 864047497 479662057 784013131 390504925 843518967 568515333 984666476 39665627 931884226 871898586 913578499 839902763 952052079 650988151 849542716 825864349 839658975 696015015 865773030 557872277 770291669 160948358 921583650 865109385 867307126 867419241 910502708 699878475 978600558 534319845 957213001 574143640 715179132 562797608 848900643 508102984 987722249 639959640 898440850 966167702 987923750 807187037 853414993 419669576 980781727 480258196 650266375 994242280 994362250 463888344 588455846 262118341 616573843 983834153 988709892 583899131 986491201 582653298 587513200 151986609 452199395 710761569 951596522 309138649 570866120 923309792 957636488 905040306 997355540 369747881 739845857 964792104 967502942 929991063 954969579 250956713 500066410 879691913 923211443 62802181 834292646 87067339 702325645 766549040 871119082 397383838 530572420 668575471 869580715 950463935 974795633 699197158 810506119 124917020 735965839 258523103 941445928 674985209 749031027 307573702 581246488 692462433 802064089 373286074 705851050 337251183 479108539 102246834 494561012 196839346 349429044 552275981 661733387 245287729 746263044 350043761 760986701 181164788 305859639 342303123 459421378 160677871 616470853 275584818 525015340 101805424 961262920 870222588 893734447 303157600 941951805 802957036 892273747 169878526 237548443 557505549 978011539 632601269 857801400 502545195 522507615 434772457 533290484 524744243 627528634 657893880 916346695 543736064 858567715 618021700 918995652 341683635 876360431 718229042 998822504 964560222 966759626 777082889 958929810 968002210 968522901 778841255 835088358 285022288 791513880 816869714 976710518 525078782 830187306 473551874 619353761 759386037 839694199 675047212 685956631 392953996 659950325 202268782 622083919 568819955 709198155 606659584 609767010 742973344 895430825 601473944 663063357 250964352 311820605 855716629 981855844 770629711 929927694 903681998 932279559 587454424 915828902 256457459 523797825 708892333 792113864 18155879 232325148 951625903 986708639 608255561 637983318 616786828 656742636 879946603 989889462 217082909 612598163 588867308 905070535 900617866 983589995 889234383 975127840 286404955 805325305 425770424 608591962 596848875 748393015 458956027 546584937 471810010 655680388 600292866 671036291 792697610 995642090 907280631 987744965 798868972 860146812 13458151 292935793 500329713 693889783 217299707 426207453 386153402 480708690 663596809 667791449 611331561 611872920 552353079 825770473 243147010 589451532 525808756 753678672 119521953 170838720 885392918 899701723 480398519 580058111 951517898 987080212 217129265 363135317 934311136 952310018 314476754 716635397 627676687 948960572 821533282 943603077 698688947 715941724 723205233 837036079 377816253 856380240 927256535 960959475 532675652 679690937 648814487 851686420 715179695 726278706 884338377 917894852 989557681 992898271 357155741 933467172 654046945 709414044 545413671 894033610 900818991 917578598 904807833 936044379 784628447 799235117 308442661 442869979 803408620 893598598 476618452 530969111 109802374 458036850 679209125 839313087 342109583 632316770 785855218 851962597 347805503 941608442 154534294 341361044 20413050 840769423 229305903 922306651 436887256 529447936 326955303 439740959 803367459 931954113 136947483 926841836 817836150 887020177 553663920 731108117 324341825 347206094 546308413 798321128 445029277 762295684 472553973 565710403 813778059 959613415 625546195 773164221 388819318 584297396 508394338 533718404 788391044 794412721 403328737 478621102 591669526 623611410 70332187 191533958 42114949 617345896 390728814 915726653 139066488 177618777 995056281 996339051 634555477 962822475 215196771 413210058 551268648 656422294 481284218 868807750 320662301 823532613 859526896 949440983 134484983 451389083 486577220 851295168 733826569 741540630 854408395 919854143 478629772 575876398 188392527 425481992 200407013 817812599 113980166 942779862 266960940 914095867 562115991 686244531 677080965 838995366 647872549 905640943 436025934 965963926 668619839 763742938 808256142 991985134 563641405 607100472 537365731 897704006 383092222 836017161 377637511 725833990 103200335 555379949 838679309 966447431 639289042 754021180 426688670 898471210 256892970 813014607 729618554 823340112 124179841 555242832 806726995 926567480 118721554 787268298 134710856 156895869 85491442 909046706 906420435 998303515 396232194 813397872 300998127 702438458 576391362 862831390 472427786 681435826 597517825 829931870 734718492 911928823 248825618 780606168 830481957 898999931 111302527 354322658 517022254 580881624 880660946 882810264 495350989 600347187 167176098 444549192 651559083 797800018 738688466 859312926 180015288 919329044 60992974 346531652 694866839 895807915 732169799 836552638 155072920 452022915 195047161 882560111 784280539 846416494 635583834 684070838 382080531 384982345 605935847 773928199 209616509 636807688 316559255 794898136 608387684 613021950 185698430 304310427 361686799 577822594 286086582 450118157 167662539 816881883 960710537 964890596 106911350 192183895 922002228 934258209 845011602 899849299 16775988 590542498 488397113 767690773 680762815 770979195 136759472 794726168 352759755 507704212 428975657 939855263 629852004 643337426 738913889 797639247 877169631 915991220 923548637 947202457 265487997 569323474 824601078 910404588 677023006 994686376 796975241 941477494 45860450 84351488 912555358 941167166 682097824 834464680 311928791 772930760 55844069 573820152 900267869 995416382 981061933 990861824 853217093 856290958 306933647 545431567 993219682 999016641 187310065 939983761 190278868 442353123 609498503 735635409 896441593 918744346 458889526 692992199 811196129 919914129 2658225 270482221 901974841 930024182 752472650 938298780 341530441 665833739 515567999 996171743 865629601 873280061 90751157 978219077 354421740 649456404 655941631 987719097 587220599 588147942 652543300 732498032 246965847 998391011 880007323 981503725 365425918 511627992 875928291 890178031 766901090 809250237 835034373 926790090 49951069 171419163 27369244 575368178 844018783 945451359 54952444 367949917 619824161 667814496 657550668 760077960 970920973 998133647 45469230 87389552 142185668 978416081 704775213 881055555 631644862 967888974 931840586 982476856 964135560 981858752 221893543 851862541 86062662 604198188 696463256 933796468 763324679 769790475 456032359 655904602 251120790 324400099 829509431 977548385 437955061 470801977 334586992 857300881 232050398 739557399 379384398 688780262 941542136 976969682 885924922 948709226 917037502 979416651 906381455 989952540 336966336 822523253 221874654 690091720 495207476 595971192 860681093 957934101 466495217 964932594 386798326 746081556 940315487 961332554 811646588 946969248 824455317 862126650 855976732 956178274 724126529 945197656 221460070 485866762 569320675 649123994 343382703 551872202 329699998 893598975 263825993 830320230 755547351 953250406 888152509 909101275 394458787 792779996 599263999 599357249 112367600 669735930 751641691 758213565 344702779 564369093 679438850 693517443 890045267 895271091 275475907 399014657 153511889 737717768 567521962 749599931 917223217 920536314 666900239 986925360 133153557 232598023 516962641 695991833 163742706 392198754 523533086 851782794 902297246 985328785 761699894 819020825 293042119 832052737 949463859 991254775 269889286 517447301 985669660 986351499 579928823 780274527 897836669 931920013 265055913 506594560 884878762 927632147 581655913 750587123 609238381 614869344 77800864 718495402 922867136 961731936 972247798 986541274 911048487 937385971 20024150 582723333 694576185 978062252 931804167 963076291 514937974 966982043 166445327 591561961 240222234 933047102 360139765 706083948 389014603 470060208 958204019 969455389 470612801 705555242 806235078 982586900 198990254 769260353 920266384 991541366 459536638 960647882 524638419 890734516 972287370 979553509 795426365 852040372 327046136 600098392 605155662 728404200 257874148 547235733 202180525 871028372 118439262 354448758 27423554 27439258 685487962 706925293 360238996 962599631 816823249 876183632 249962121 834023879 206177826 408623099 869526000 941555217 690370246 963415789 693738450 923624083 100348833 768948695 89218944 721924235 4653387 997726626 205222562 334799956 595702382 888514612 345865370 733427677 749430114 911682075 17886083 221458897 962805818 965885049 348638735 846041597 520484964 651472763 795789191 877108443 214528102 936386932 1224660 22210476 716963353 896660602 233926352 245981448 97017931 354155249 265672813 729588650 986514192 992573315 240845470 945412321 45123762 221554437 451838783 662412183 199987695 562091145 424364014 740475763 178998427 715558624 134373380 156080309 151135560 619475974 263654958 700416135 887537383 901692966 376148654 582106402 711020646 806986705 37537852 191709495 41046753 591666922 717253350 874367862 298203996 815794780 125145574 377886594 892615272 897426871 270833985 704447678 817936852 859488508 882247416 903681218 605687146 630656315 82046830 516927946 750224637 992531751 36763810 972450437 23806654 401874286 301912151 594354011 577785136 953370172 788437881 987410090 816568987 859119255 462108993 940812572 617709860 759730191 36236980 261032534 489050104 948327232 535927626 786626297 82064209 966870159 339021961 973724544 820793755 944962039 918947568 942401103 438246132 871142617 891883625 915222423 15977742 19647268 543783226 557187955 185771370 852552174 5703174 160484358 218315347 258470195 724078785 953359840 381539742 673098327 376370289 702501477 66604696 728624141 407492167 841877528 835268164 895507232 905407326 924806397 328394125 791889200 299093969 633433450 67105881 770688478 451551797 545419439 224059067 672263535 27630928 184706619 157623709 587283438 925159775 978868184 236046870 310366896 989065002 993564688 759581513 795829817 252209151 413661409 90657162 568303883 511523848 853350747 864456368 915226997 6463612 846274509 647144462 831240683 255711910 775410963 102476760 589931922 622126736 821323370 280072901 452624810 18684723 762355634 964739991 980336703 827210578 869999431 804950308 995454346 914068076 946430129 422070010 739634830 980338139 990005172 605459663 765875154 175453681 608468450 717262714 754627270 598654711 944863565 89172925 191713286 680045990 882733930 903137430 945991080 769908893 989880983 677702193 929424155 646254503 816982657 700916006 862153402 318029589 606698396 189282342 508413606 641725055 801951454 183450690 279637392 417761330 886365885 262036855 423281935 326416569 747029272 947499084 993999393 7673579 273026288 378482740 792831857 590459958 645434639 506216243 837381205 302964354 421124362 824301893 826469868 361175809 871666478 230858754 635986273 444138767 934578849 617008751 650401528 33991349 293289714 560868867 874636536 275040440 747429782 332772357 671296654 910850448 969387918 237901149 849183993 597436945 893605518 18614507 829284668 964847953 999197715 213408987 875663234 821207372 932214979 703271954 727251239 470565627 597585692 655453556 867753743 759313312 849715013 620560446 799704989 57688454 230306123 781995128 891779926 762117928 774751358 75179603 391062928 252067769 303488221 930160375 935687406 934906664 995058047 568732623 927840591 593952433 674244083 861386145 883996090 928782680 956782036 30055586 504065356 165208703 846736350 193326537 456151476 637352553 685023284 296499948 498715823 800348897 853531246 47468406 584865136 221432883 416376422 686979995 962041974 494393045 615213380 992499212 999312815 627352658 939089749 582976729 720479329 280746580 738107419 135392207 598726942 43912208 287530796 129793923 936527232 27590833 723317853 240247654 974062436 357309235 385279915 175174920 524726874 58664416 823085930 266370714 271132254 931344533 963944356 749100297 753169133 195924633 706704062 66430458 846212856 263088805 546329477 89224069 699687391 333470474 728838124 677671237 732020468 775677250 795929910 53093227 746401258 794849669 949771754 503359885 583486879 37727095 287352260 181421620 824218634 325581205 811688538 538437562 982627233 819723543 965061115 816272051 942336135 211871150 684614178 172330274 885797804 815005011 901213523 64434093 835016536 510249872 794754049 785540777 875627666 73711916 621654490 661717185 755472600 405930833 909904543 646732592 870385836 252146950 772932213 531683229 785121694 576349985 769890474 541358667 548808202 89370863 989652155 968192242 997666482 201633177 600373856 370871553 621970322 382302364 432805778 116181600 320951716 653096426 708950792 147336420 832076752 673790332 855640027 457455145 635200034 195951267 726051806 699033072 843925636 993036313 994301029 166689878 331209703 733108254 975766105 820279698 889978923 967187337 974902553 989062817 991513172 790307766 883805670 767080998 829594218 8743599 141832187 700537941 821938431 417346603 597528126 39291173 962894290 996238273 996981100 974951735 996689224 396574209 888369951 782714558 835552589 77295552 888340888 578292761 911107503 9767706 45758043 518966162 789564759 788615106 871529429 807960118 930643378 978140605 994569277 49481019 60571841 480244367 664410327 178038866 680215703 432401215 944839461 511107842 838055765 15778963 137944840 977069662 992739993 899975444 914987206 930309662 952676746 102375684 438574242 728145709 839623603 646742701 857269932 481647725 911246274 264307987 983852110 630538367 995825652 86144931 350093634 330948822 473272000 106356875 808350673 967520391 973191758 647183097 985097171 749513810 977613498 560425720 960803260 92187676 226765710 648775248 830172860 346845974 780656113 307137841 820608886 340774358 807076679 211506993 328073658 126470893 684577334 293686413 725465068 366808499 815491656 627566532 644242001 687138946 948642145 428095088 862192311 334451719 834694098 755059628 820542375 906572363 945039680 465570375 903330123 760682542 851568782 671443499 942220041 582301030 597327416 383765281 823405202 579999898 920533364 187690537 331369734 861427721 941146415 954248767 993018559 529069440 649729614 845341180 922447608 386304151 990296181 646760721 790758981 308399362 328710082 36356747 895816415 748709448 916913516 161538346 487184840 841433139 989421200 762459662 797729421 981585269 989283803 135469278 526417461 297196899 690788118 921865673 989376042 888126795 966713687 464715778 833290897 532876220 688141417 472790391 627710098 207770143 324148146 753981463 796521688 370245015 757116308 169858297 707191464 629891749 824610119 387370384 481535422 231302235 923347819 886960494 930475490 720839255 861236090 484252944 517764789 898852294 936582643 951874571 971657900 205340557 987154465 387280444 574062438 664718841 680384576 832175034 855567734 165112595 765426840 689699439 999172545 489290858 976815952 57805126 746613068 584380494 841017044 984122834 993986333 669567961 774707392 326864096 780425870 610502652 902095039 669680732 750845722 909511500 956182439 818007419 951071292 84002348 437068654 609822286 945157552 341534728 524620973 592277028 778599040 325108770 368119104 435451656 601788781 934745660 977217746 345108192 923984700 47748821 295189875 958020787 969470107 167671078 585298247 737347238 794213782 129014844 581133578 76595606 612011034 784061813 806068449 760831462 859399198 585970360 823941034 750519958 875235469 830978284 906111647 771397313 819203907 34985883 68307434 338412265 841642285 832066202 976329550 791773046 917967164 82942176 327916546 848344936 854626354 7996113 147610761 813728393 822746964 808636692 957080827 510931198 868700284 607067870 684838218 635238535 914632210 769620443 835434301 479747710 572012648 186867316 336306755 100136246 322776072 266274814 714399826 211727613 896200639 739039520 909652732 561756474 649521296 471726491 573112489 822828805 907320603 694408093 759902299 122398881 502249130 767473368 828647553 672377896 827516721 794535075 909319340 427842401 621407527 135381705 799796751 272669255 619981130 722325110 838771528 310530183 694083783 588153153 651241278 66726417 788728602 570180968 858339828 274581609 472966729 925606904 971995293 248711192 354027129 714007669 863470276 162557394 538919270 631197024 764662285 464386388 969335640 582677615 933478860 80698375 670756617 971934433 997223603 533624832 954798654 52512169 927275357 762920753 838321180 484759355 763723415 198040419 873272750 67875175 332007162 955510109 965991169 230031807 554237263 697454800 979060945 511668447 717805667 236748060 408700578 661714834 715845979 119940020 313717745 177516414 977944790 577386272 760849561 927108948 951733275 786518974 979325104 147574797 814489443 859691924 883176614 411297610 635093974 665127450 834730718 256952662 688979822 815229401 917658658 523761101 580208274 628253382 911298169 666437886 983175669 777424191 956366203 17032006 267372457 469316010 805364561 536361626 931183160 796220907 971304935 250378110 694595557 206117152 590707967 290048648 344088329 652632347 697639417 182859330 267247923 755250382 875545183 984023683 992929521 249172555 885758822 427154529 905342612 429317853 747954616 140848900 214268482 793803676 992223007 257557426 600467409 286820652 844630791 430246207 431458245 607721063 740999733 929774808 953767842 566047007 661155484 990205170 994869407 40931368 484709885 654167483 893935126 353697756 641188860 365241511 638399533 390162808 995861324 27631052 75967942 415533938 887636752 404995962 684468228 6900823 611875170 440576656 669266688 966580312 987637722 129662901 981700856 514719055 692340993 229622619 889202322 514446993 705313683 504358305 548962547 749979767 875884551 354527488 450183075 767612212 827422340 497192195 786700826 761397017 982342624 659655530 746675743 531582874 777969160 995309411 999176423 804106617 885209059 354129044 454096025 933498086 984014137 308202107 520581093 695767555 826060897 83905515 265165248 786414717 932933353 431266414 985382215 864857692 965408709 422443764 918045048 183074393 585658164 595851429 755099587 134827256 834688657 772259046 882056373 313450901 848107561 697623256 828810088 306924508 523829853 359055771 436295236 640955848 970958141 787490657 891617092 896596414 959564465 963491754 968813512 612407832 803095767 966401217 980784052 105809004 107409862 146589511 217229477 69900300 624807022 912031509 949104391 549985896 800220688 480412650 615994674 802433685 969662795 753693953 951272890 917132345 985981246 842911181 854335674 994441954 999186633 734400653 962239347 634388665 976349336 964924302 977831564 580985045 714239192 141007196 253668517 623685651 803985271 488421213 756278117 567814456 963052190 530187973 583655248 981035381 988125863 316065686 622831020 925401169 993678439 656375145 741248352 867494211 996293321 513433928 945929301 786636313 970163171 128853986 998316194 968788261 992264093 831329028 842467885 385722619 645802701 956287150 976942578 500509872 907123326 90221010 184414503 119884253 384103656 935509917 938091223 318245173 415347640 816162038 928392813 808619702 944214675 600112867 848762199 794749068 859066637 310446903 802580863 460500213 468961057 826193105 957656336 562594177 565564673 694974906 736716681 322704907 764393665 677583026 698801636 210243295 324843813 98324810 942206073 656993744 732967573 675028368 844923879 262139064 608731025 394792749 409439895 928572880 983389682 690294462 925089273 749122466 767904882 799650788 947344690 379691956 713410477 408372293 834003392 226506507 827396238 995118734 997049454 264181208 327817874 108777159 712507340 136970279 208504400 45492518 848230524 677504875 716251292 303927333 937594586 479970889 623647207 94546433 374317137 568952835 592334015 157960489 912586102 545530573 644335602 457186371 785074581 17116881 855569113 353769797 383933725 166716501 227466535 779223892 879671455 689891986 789621271 638317780 788386280 681979604 853150889 860334718 881177365 949794643 959665848 549038075 655651598 393626285 710148358 880006583 953057610 413175271 525206186 358434478 918126392 984078890 990122523 830067102 927544728 641558884 797352881 760038400 848412129 484937974 558869773 904503142 930878890 273230334 840865286 754953886 997225730 933722360 937476695 293890423 586245778 380534635 965420107 174692038 317388430 696440422 884971602 750993030 845181095 900405345 998481867 184390358 740186386 115810026 236679256 626298832 747567689 475959564 864310947 115576794 387040603 724678627 839375372 380360099 838565768 220301730 512833151 215004354 293174715 82014557 233135325 402850969 653020577 399669302 954576214 168487232 628476309 321130546 926611700 341524258 718406533 86189004 509829516 689857230 974967362 605192930 751988957 445368027 842340613 591630652 880572614 556330841 705167907 764901452 811049807 941479674 986336358 652522477 769488759 812062993 943547995 230474989 511658540 812590025 946920012 724189644 779372608 732887156 923021639 211750178 345748731 275591000 715930748 393171102 477183770 784985759 961691141 176625209 582276546 980483788 986064864 274516641 683412781 771990183 856987130 246243390 593054796 767542310 988192468 362932655 758027522 206769009 360979644 962220477 977657673 620312420 966870105 795493127 935649595 584365200 721703375 428074540 691745265 596414282 958705247 846046861 966126136 398434577 732111223 608241265 614524191 940496317 954809047 700369415 734906763 656491250 906172593 564071446 738683078 727304425 931658551 635370260 723907992 463310442 927364183 64078017 739528412 948485277 988391822 444446057 635680367 941337247 978456589 978342656 987347486 565837612 597263415 888654310 949892646 887233059 923259024 625029757 670234059 572000518 758641812 355329538 873655305 973565185 978447747 889505643 998231152 428844066 992927471 342348777 657512400 203845505 430321944 885074416 984120538 26171361 160887915 587828249 877235112 965093809 965385341 282431613 970388995 912724383 920615008 160754779 342778775 587503513 730365925 137298827 155851457 923754895 944879305 467504171 931256787 996193762 996333272 726020500 874964911 756963037 796341065 194582860 543381551 158970950 366224489 353730909 529130662 397987566 607086859 225165383 334478945 521942691 709495634 72386173 607226343 411889786 922832074 953892268 991317144 295111364 914895745 694794307 914828267 381342378 719492165 633664332 924051481 41206960 560091311 252292726 996538156 564655752 940429860 56452220 447057876 245662495 838713181 607114275 907192752 399316386 441783332 437558308 652581483 767064421 877264844 823414915 989578057 60233646 104381978 683192060 707056453 209977443 586069368 991903274 997413469 67830567 421975203 512653262 940789250 873578373 898899347 191569716 725815651 374510480 825021920 568210959 955415018 519047481 868209588 680979391 967904334 860270752 987644805 546873445 552452189 970128963 970463471 453700624 555981447 524129402 635611138 483695283 761984389 295524521 870678631 107195549 406065791 155552568 726272552 693588288 950650174 454816883 964613687 541181627 574457425 757735361 932493686 721225142 834924136 861614606 902865907 235803849 560251904 54409233 487342409 826288063 861310227 66791125 546150815 14287353 240662136 919960033 991052073 339259073 552565214 755331555 899814968 317912578 432233261 484347251 867877678 102069328 887683236 490184485 602499949 300472558 571258548 843779380 851564923 962510883 987515030 42389898 990291331 371342997 512822800 649025573 980835496 612167501 645990626 896635915 904389822 157422187 499592934 934897885 990892226 464077852 909282820 901764269 981104558 72788560 365915583 498874860 536095416 865087737 951325072 871449020 975483923 638639647 930043911 458215193 531772682 938069196 945245715 424213049 800512289 685287528 844328385 945628029 982349999 722474403 848548147 128706014 835376154 506441911 859821983 490701687 588173221 514181691 947762636 991703004 998429868 282630206 820882890 272218582 447069006 400022776 500154247 550137022 555602335 711214366 997308132 125856457 800251825 382825340 850269311 775571259 872559723 831747951 973970187 967545913 968222106 851938910 877443225 553394080 589153925 300449297 656134324 670086981 933241971 143895623 228660019 281372341 839361434 159317989 286133368 894807162 984961617 904118527 991481687 347290162 852592113 617444008 646516507 94391982 508592023 588832134 793493679 58133307 794894433 575690674 869493647 23778853 972035921 501695590 516571837 331478035 331787269 468713079 872484141 415687041 899031714 727805229 806244602 488585967 901841535 685103643 861516997 59971137 602660555 26679129 174199926 59979216 872822688 968636090 988160511 788702224 982926066 198482889 791270288 942629931 943604758 888149960 983831104 777258449 898312125 549278601 992104090 191099070 241829020 498880782 942340517 479816735 493159707 649992436 753227779 665260368 877277255 789894451 960962354 278694545 871676816 549815801 992341731 306068211 319942830 699427215 890510346 388699124 526709268 711438652 925667158 95900872 364439940 607050628 784821071 746909052 750100745 288096247 345774524 213057713 310496041 213870683 464502528 868816140 963281794 578352110 958760904 728107063 932329910 603136577 716527278 296960586 940214843 587268599 589974208 151473460 616073619 666803368 687469942 647393730 708460962 358571487 508060136 364519395 711167623 332871974 940423768 406808505 409478710 877723814 963432651 691041441 792409074 901389790 952921088 827341753 919965348 954291041 966150715 469412030 740773397 184986156 461272642 3350366 13612438 845574736 956108099 911799948 980384566 513175809 616667747 524431782 776429252 286114933 606609457 319894059 490226677 655893656 887324310 467334415 559613373 272872094 305501204 3435101 12587711 926906551 985880439 799955621 918720933 430356771 868386379 415128503 960957018 419548949 430609150 724603322 965759356 706100674 978178818 607321185 776393253 579990605 593407733 813990793 947217372 654882071 691005273 414788426 496565566 500937124 948038039 239505300 439798611 953361910 957700225 157178389 332731884 344924911 687208374 675601195 811141260 127856057 942468774 447264033 473229106 42605175 723061195 529166255 724886652 848379851 951590158 658138610 818562519 853091967 900688052 254684607 563041700 358333605 781948859 241551281 613923414 959165259 985332844 111103534 519621188 859486799 910952482 310464271 718782416 785069342 992375103 333998501 662752015 859395775 965618415 443344428 448323324 123539375 396662069 240493788 415753897 462606168 702859807 985747322 996701312 894110662 959313323 740981593 976754215 324842506 879734172 288793843 503207239 260393701 817766846 465641096 580819213 608015648 700975555 85548926 542770770 623083810 641617301 71263652 435098891 801509457 948023078 190819380 939269475 424346440 712828551 445661472 897045299 805127153 896240085 105882454 676347424 909253064 974263046 306286141 599645369 197139779 713800420 397561179 409484029 202923170 977126202 862069760 870037674 875256259 969298515 532180142 629631104 587317314 831976912 646122956 806626810 553321729 782906667 373817984 575265551 91782584 308049063 581334211 723593601 201992935 822618080 220622118 633802714 895234382 979383484 558612297 672973790 666847855 974313896 640579195 853905947 271381508 445928784 844291438 902380884 385118516 961230495 277493206 857040419 405242622 550906975 390325261 789344141 359422198 683560674 405966190 700953207 447075581 837375158 730794166 931946477 30109834 554474023 885309520 966184202 62028676 388273975 227295921 541511268 46723021 968943951 734457735 853126167 608029312 761432824 64265960 956908998 487150242 494950247 274554500 647399873 447950327 490808806 765916465 970377527 736240905 836335295 955734764 997080816 218363627 249061299 603033043 995183819 278467591 595801127 737714947 861456796 86605359 751648339 952410533 976867733 739669864 945904452 487827133 636230950 253576176 345031058 741614803 995274591 982293396 985270856 259236013 570888873 330457390 437597555 986397745 997937166 465156508 831314856 424350707 930464695 339161101 995335663 534320652 818927071 690975686 781519272 617329091 913570825 427641971 924194535 970345725 986809515 133120655 273748102 627345335 891889706 21258611 803497899 682334858 799453178 251335083 392868651 182640088 215142960 691134614 781207133 601112619 785658554 578325186 744483903 941806965 994533177 448699098 979005751 568613967 573030729 239826610 339379924 684022662 732474770 494745967 776742425 147710567 345987897 329428131 456076225 168282868 849993109 960200477 999069651 570444116 834445596 686966934 923482478 280683628 931490036 259244169 753299587 39056511 422718345 165266921 772840987 369574040 602427391 419525064 815335196 397737204 886388143 76252851 513963393 319509503 647543042 532347551 831116862 588856457 947293018 478517216 510770177 210771571 567335193 977253711 995819083 787856721 879629329 797953730 883236677 926952465 951030025 492329032 526653087 193058254 739632688 536091124 592776988 553129249 901312599 886453079 959601352 445390411 804137010 71421815 788535131 274780201 555626722 957806059 968956253 876806634 949829434 236195588 297184053 517432745 556221221 370729560 929883710 641830658 849462191 909154160 988955799 347750346 716241713 947045239 969464093 375524929 827484041 906123495 911029201 164127930 706909658 646514366 996301477 346405105 662349936 694328194 835350345 777597563 832041392 470793410 471635303 346095101 887097582 124011086 297539190 209156352 911836791 476065217 640664257 997569857 997678472 811745636 825499007 779172557 936981153 958381144 991531234 220413400 417517913 553196553 819364008 561491932 881430750 870305415 982841933 28351082 819352932 842396129 943107329 994337675 997536103 344701881 427681886 377232496 979519465 260344101 295391049 589893261 606026433 477992085 719721160 192499772 751429618 497504151 602709503 205392281 879631638 497571633 979111649 723544278 942958287 186650536 214553343 385643360 914060607 367589712 480594355 460769291 916728039 399120111 561821899 27744129 744641377 600676813 806726306 866081547 958729157 896098367 945919936 323783624 705681064 664282527 739051374 668595359 783890632 209879096 601545513 139947376 557270762 83533817 177084854 781226013 889098260 735034024 973117615 120774841 255473558 736993080 914586293 392152472 561755751 4392419 587750628 363241783 403479381 601149628 675050461 282171570 764857575 192706071 825530134 559297593 703818336 926207425 958503535 975560625 993934636 415966442 936084021 345377595 413224284 697003670 724053229 803371842 809167784 645826 973419137 286824992 444747910 369548688 988440977 467898904 719546093 360703200 950008140 392042753 502200565 191225514 560246575 443326842 709437804 355876599 605231715 197091431 606949058 529054824 970380610 637186683 859569269 801882003 858754766 494859372 841172480 736049791 995310077 310441118 718037568 762663857 982555934 679986251 783056694 237020702 450825824 168331787 725307783 746993634 778522405 41728281 867561764 617389481 681123484 727270121 977795689 318297946 329994429 526573067 679515482 239367555 251002425 268768969 992809369 626601848 869486537 220043806 824790411 940571131 950470159 903683098 995061540 692440054 847428802 510025875 580647983 617150626 876120035 7575391 435277153 981865796 984925135 643955604 990634792 532733716 992531710 616370020 659761346 680299676 998581332 877233367 940334269 477221894 586966751 433409383 671089941 246726428 330577465 120583388 970115452 819828020 992745199 459161359 486807204 278219168 713756086 682360757 915851689 54158784 755826993 680845154 766155131 154095719 456882222 525307077 558349503 182532147 944628455 47912931 666482476 484899004 612104108 500250339 640687189 823394190 896703142 136054318 719485370 481553478 821248059 796739076 850802647 993463789 998425763 184691843 897814941 320258156 645939381 477311172 974138952 260432018 832443788 205240591 552678911 676144735 931496244 413503208 682521231 516169751 839490937 447906700 658812403 105222181 247004936 138773787 344978191 277379028 337148115 110457330 687129198 166415552 889643473 393955572 744230324 148827226 520223737 334264333 490986813 854939634 990499442 476884686 583488231 160497219 924716643 106170691 201006107 780728859 838988567 713713532 821052808 260663921 571179371 595815324 681198016 637689971 773385939 547176518 591857920 420370989 891586284 250126053 847413687 284343013 442798932 336417852 657603246 799845260 918951399 414951004 420308143 497716121 690178678 146267981 291904753 64871082 272111334 514737478 653247126 173074286 412445916 40117896 652417555 664791235 769836782 411557488 474142046 27292948 592767865 706116921 715201302 603848880 797754547 58822399 658673619 673286783 779751334 519731287 799439409 407584567 858347919 675559084 834845554 134382567 517855870 396954063 819666735 718953128 755861943 146266222 474430304 644540671 904618167 576621376 817483971 187689360 907915461 236062748 468715624 899195799 987356694 936906348 962122897 791283018 929388474 122609281 941770124 865204726 920796752 573658560 884365745 398166548 527872016 496119146 892304871 124175119 549322755 772050208 866016975 899901007 983775524 487401081 823355779 841225526 856212276 231178095 928597471 348941672 646483091 475045287 523368258 132552510 214128354 256176419 697243265 706466994 967110710 306522507 573984795 568571588 892135297 325785546 411906202 610308810 952114574 309815438 853127780 209098340 545593318 640125580 952379053 484942304 995674991 597658864 805200495 404389091 631793753 462222825 981957248 618874811 648557362 149902724 490736122 743341882 981479607 88959750 910897088 854107328 919153463 3342100 897390111 542487191 920140284 917118535 942025728 779541730 903731090 372369057 645677414 593576309 674426728 209694053 953489109 808032035 996910304 182509511 393559281 153343979 180518850 875866180 973322471 258601254 365737901 130435386 565909860 170546849 781606048 499540162 680248753 470402408 769145322 515359545 847028208 659245891 851504999 449757004 756797017 31399812 595099536 998198456 998258234 505745856 994344864 656701938 807426973 98561959 793902333 972997481 993273600 211555225 923313694 95054411 228158525 108467279 547600828 132305052 835849328 516071009 555839482 873427292 980656565 381745878 564183573 770481831 894629803 798678979 936544866 584314251 644700647 551564309 802205698 548573681 816540972 178301630 406750316 778171780 895291518 106572001 504938105 432814531 685258237 730593344 744796773 96082479 515965618 405642974 473570632 895202404 921736444 135285740 474711958 917666248 983018927 862993644 883591976 903128274 963024030 325901897 822041568 222243075 362262655 434097418 888123727 431396976 575451194 34881378 275389114 815694396 847961362 141965588 691772476 934268193 948333054 379095391 903121724 765990905 834460359 247909137 895538323 842861337 963488344 174474688 682882954 164443671 787840958 208062231 897516463 374830806 453488360 93524974 477304958 16065031 399434284 175918290 581314406 467237246 818107505 753834116 858979218 974192772 989626910 759731848 923545887 346304855 775683088 497091794 794274539 195700253 624109222 992614517 994487329 556876354 838780123 84070282 545498614 189424481 261731159 478219433 832672114 441444702 909739064 497652779 866783659 332610154 636407137 457667569 680381601 79221297 409277386 58207837 220237136 505926042 763429785 922256973 965214550 967424886 979086282 968593067 995344667 759893673 846610212 493599327 968695024 629946527 732041346 548441126 788238290 589234363 863609457 744370860 904044056 98389987 392194960 57500265 897380015 697367097 938224591 175185547 769333503 962536813 964951957 76641157 114005087 601006513 628798432 563306519 627373438 361756271 622993294 353014810 729945070 463181108 696850538 824589014 891638061 464665975 776228372 549543812 578306062 345893945 980610434 789851989 868088417 598794620 699151458 680661869 708158405 90605020 270143284 399797976 592375763 19020349 60343206 907442890 979231733 251895708 730105309 478491290 615111839 127478811 573894842 614425443 874602014 629278792 737382193 916829330 917947176 929049469 930771145 679441382 997495544 114668726 877916340 286926162 346646667 198427068 477503969 147743569 923304718 323594111 982206243 288852982 787885253 250343373 671487750 250306044 869930759 396420912 604716708 389815275 491865946 128212098 182045321 107404466 263839271 455377848 741376262 754999268 762529742 645026874 789997615 221167567 653380129 735124374 874829668 217811584 643223604 606524497 994459047 304855288 486361676 238938732 458465865 359960875 724528412 18695959 614558237 647080554 951126016 598213709 939608438 924657205 995417879 777707525 972370488 954875780 967064426 963834776 985740768 241034390 844086195 789673522 906921256 585994649 963069049 867011284 915044000 590991613 909213623 216152454 819673616 869721174 995416542 386623505 788648393 202139420 442662332 981865383 992451426 104949230 963513364 887853911 907640207 68748225 346537173 556595467 739710969 912578982 971360994 37527919 905684454 629269791 688849266 520617826 635144702 298607695 425486909 737286686 801165621 301161171 562479825 17449719 823855899 663780358 872661007 238105040 478169039 951522964 955197617 883252234 959945075 64361589 360656920 503939224 809063236 122709109 540557029 134768801 908294742 619738607 643544791 786970989 807372767 633547777 917086107 634975372 769292922 99113060 552236450 482155617 877044290 815893413 886731029 320517093 673409500 970661894 976371916 26229904 247206646 471899628 820781411 679968168 691164693 282422177 379154826 475897396 642764705 318866542 361044798 431886056 781585675 798483299 933394853 137465280 502918318 179210956 694700535 918057628 988225536 46214185 908053580 969329732 975763480 716436763 858160001 331446816 580006787 562130819 568774541 238080361 833958918 880802949 928147840 36292437 635711082 364821145 638855739 146750347 777029355 526195680 820941010 344316549 870994441 112086818 829956159 482553303 531419976 797778017 969720903 909162159 912710082 922536255 935947821 19225657 582680361 49820479 86850459 161528300 174662392 64469172 926986743 10915679 824614694 590430470 962812289 937271636 987975116 606390928 671692975 427211487 655609106 625753591 717718535 478520489 665755548 116169107 134858691 255748049 899582669 793621308 853814850 349967584 821976012 25003404 186979908 28623121 863046678 843243637 976030444 855730496 874404098 364625030 507729065 292175846 398027483 805302838 988442755 489035704 656114024 559046900 578072725 29279052 943632606 377871124 897885462 218130319 957814182 315986769 825710720 190990070 675870756 108751098 961500685 211632466 804691733 618429739 784428950 846412450 942859558 230145624 513156184 573187202 853935474 494236185 754836002 530516688 820141636 706101360 708100142 854322539 866460717 369530177 656166169 469013205 993181600 915855971 996592389 85510790 460136326 147515871 843613137 135736943 929921405 980374152 988470144 277987371 963415433 820842366 872372324 637820571 949310334 828861223 972099627 717570520 825116823 858358619 994387727 705938528 879493937 638241809 899217331 266785674 720545813 363008144 966124163 613980645 689698968 937448943 985037895 24252039 803915888 273735612 458274304 322177136 951856948 704372288 977086088 841383810 998611801 492297872 514267419 109590584 634270051 973468094 985063559 917950643 969590647 419564702 843303749 526650589 987206413 436385166 989122487 659818938 781970944 711864068 937038201 786248819 947671769 733209512 829583275 487443801 968457006 734304866 749897428 300957988 607901069 870873581 871680588 297276280 462173899 403979305 819747041 279919454 918707105 532093147 553800163 593429049 973442874 148576494 299040966 182029076 411071537 236510739 439529545 268443081 915906036 291685863 809071816 212951611 289039787 806268131 994720065 267786394 397289480 556220984 876011471 659135844 887536301 214604150 849129780 943425670 996187966 290502680 996090280 70844604 915454749 262533 15995448 67700641 246721985 391896851 689856950 214902295 863106453 276331168 923948733 256150649 441321043 369443611 655251773 612558877 948229714 314453808 874925068 26964353 811874128 113819069 727606754 807410654 935155955 860283378 995940820 204132449 438226068 101516962 956763155 249012579 978937897 128222846 258629050 787904264 858272927 895094168 993999624 640334799 858127543 15740940 389227323 821148016 879473183 587119017 908022248 442830039 706322247 714791669 844273401 428092148 501344199 242333853 805151240 928165183 972570167 26119526 890825515 209396386 598105011 41466672 65789188 727548428 788110296 207198067 556149857 675590001 803435037 737419818 833969966 400948719 861992912 14922130 393680562 364226031 849066524 460032729 984960772 671041587 962322570 62643662 747872683 109205598 384987904 450325449 627813273 441145306 738225067 652495244 809167781 663402215 768901652 320420329 685462267 735023842 846876068 281212762 714184524 171598976 873023544 609053914 791725260 100993768 421796225 786495940 862447939 442454991 913543069 35870854 206820214 911275646 961231963 277430715 627514374 267594378 567634059 488246619 664244428 186262851 852091089 645110736 997096869 881869375 962498110 40579507 95986103 718992076 874324182 295930243 639474470 283647481 633386774 671033939 790396634 751366597 991637936 230150211 853692614 888617106 978977608 330527310 511760506 58148016 702631050 355034376 741801682 619774654 816558981 663463222 868145861 363324716 851840653 416892994 635295006 700862790 911403392 336766317 587524896 484579398 693740577 171181838 275182936 463075642 650101798 822763543 967200917 697067572 882293016 562652455 994403758 853436692 948685723 744812928 937772478 821309018 849260930 743297921 850324242 563347850 703663645 653683583 951740025 455377016 738953025 796740976 975394210 700982977 792955123 580128255 836916596 59123492 883722284 356787917 980477718 241710239 775079928 332229781 852909251 885326943 939371958 889820256 905473956 727241088 752157260 522074690 878146403 176273424 435618853 563449402 833759230 532354851 546624385 327513423 935194825 796166826 993935655 966886794 992085944 553593973 592333151 517087548 948172640 117068031 765069912 901447714 986491726 706536721 983434492 939552022 946620861 407118404 517509582 998143310 998347890 132578139 178087368 600926778 883275937 759598877 959843972 704323368 892536935 266413901 540947270 372905003 614743345 654880058 666425501 585245328 756773220 779696783 879997285 293661118 994844531 489946969 524488374 847612993 902201728 190272244 893104682 131625040 874572572 821130919 823399369 907382570 995931108 385486378 574883761 969004766 975192881 985982419 993034553 164210706 449528503 421072866 825871975 568890264 761765046 684119503 713976070 829608224 954044163 304925712 925220258 479454796 871909067 795878961 822712926 703279350 711850244 594067202 996968935 361150335 835178203 662981868 958208130 1210970 587744308 355402859 887313372 49715293 488073847 675456895 728520357 387091864 396522118 802143658 902326680 373099421 993582822 820727979 859749410 701482665 801255629 549147303 594096473 926712351 970202092 394947249 827964735 99437930 244515671 985928887 986183543 913641924 942766935 434877039 704064580 496998171 500849479 415602655 415646698 87177777 348195419 205681323 465674600 574784222 906447104 863217778 941675611 598959368 631156592 814544789 984773939 156253751 220382472 775947294 839661037 832745174 910760230 486849510 894913175 262515119 572598714 336616229 701657209 914680959 953513152 269955011 848045436 166643670 919417316 242164497 994128233 200323939 204910272 830415690 958442858 129717613 344139291 725168483 798551287 217809911 345674101 352173400 462869562 44463327 719587847 138766495 564857121 409003750 753129321 980931236 993558383 464821034 618625574 590917427 782558961 427901149 940580831 65937745 185793447 199724462 264113071 338358003 799635483 501031451 570980693 58278913 428619384 249203425 763680159 474136201 583652315 861525294 958472874 257059025 338102057 821515452 993623643 801763548 816642508 53001461 824808484 762841862 780079504 728933999 893216717 266639232 479932965 577140909 952063911 62592392 889487227 374233271 725978366 67529977 87571924 595642683 639161384 778085491 854083175 871203867 896839194 380447948 558299021 253219589 731618811 145248400 219161126 930568882 956076144 619625745 722300331 937313829 995311661 758094514 811109196 773588405 982700782 452487948 516591700 427060541 835940350 680041037 720840709 131209490 667824690 816017278 845087304 944594835 953915553 967970989 978019972 220592065 429178797 148712388 427471762 379829542 635975772 454364614 830407646 991994756 992464599 702799712 923946866 777552291 886273757 962260871 967657175 314359435 896678086 361223980 596400670 39660471 330081595 991669817 996104270 327794772 822621822 844870279 926177556 329830204 925206961 880506529 926962777 530365696 723867328 303559751 644328425 592068 212062498 355725507 500614258 587229302 742944865 811311162 934685494 636349711 860206454 12553245 470337752 545389763 762696597 756247998 802474826 200685081 769522399 66420761 869055007 49231600 216967734 18087037 945142537 499589072 980684578 867496353 937874032 813534893 826307404 606915736 864600078 416005904 929818612 210772069 648191670 181124872 718951525 956148475 968698642 697166695 721953144 247703343 359039851 746794750 908092700 145689811 703535622 812780746 858689066 114479750 345441293 330185579 609633770 239812784 983457732 559008674 613594289 803255476 949264529 417621690 938360770 509112337 683167921 269110251 847666141 590291038 717272025 262436380 585002177 247014697 999065327 809376063 844824917 249726894 871540719 180416912 564652113 376498100 878170148 257986964 780261753 59624049 756572598 886623471 990564950 414784764 679196132 352625693 579802192 291461064 997959297 343671029 986586632 977174093 990077385 229122358 951736030 174034035 409546280 374565353 437022039 917577860 972481609 560459264 608024494 581041245 860707156 487283562 807486122 5946559 622788656 608992983 921482309 556561943 779536509 56771972 411779735 553747331 906690677 948507666 952182168 872366198 952793385 420839575 525236600 422505855 809477772 464885837 808575623 302109918 622117852 665241172 761274344 515962729 855164885 150197626 331722725 828848438 879438625 61751280 206598863 827200000 958016656 252781240 355698846 869129099 959260080 394511861 915953244 945702904 992375274 203932436 614483336 762402303 821420314 41833883 561112927 316762693 929621698 916651283 920217892 516242805 813744566 695271695 758230124 314370155 548236612 321666609 409966784 226128331 471117967 843901581 943558623 441908453 946595918 566100661 823217832 40308421 833573292 42977889 848700723 718250870 926325690 947921821 964015885 427502067 663735308 460819965 486358060 52465468 818969374 113789999 998682582 991162712 996775146 399273379 859517406 871787082 957572964 793103744 899074121 787002836 827800266 459841479 544484928 928489489 996571597 346320516 518335649 477967415 841626470 29477675 806468467 375686525 376407878 987753383 990624686 512058246 913306890 541655150 825614123 225494194 508340311 994003203 994900753 684364331 883979986 401778296 455740917 722570828 978047953 489520260 737287566 940622549 976571339 815389683 845160474 923090125 939967007 866602466 946377863 577536263 931578771 955632759 972738938 647331604 765461904 317010382 672275586 136707542 291496113 524033351 644317270 118101764 629020427 482499802 753799811 401412962 791107755 53102516 689825359 681589714 795364001 337290995 827068941 622038131 935516945 817950647 830264559 282333328 857552466 326585916 898220986 146193713 468314287 394164244 759811440 355454160 507912733 910201748 944666989 319274612 694581184 827545254 844068954 938016341 942109747 558715591 861307802 537659454 949150224 61563793 412411056 211620552 882098424 864091326 985677523 15243327 83205868 947303093 970501124 147522287 932387156 281712645 697407488 207939532 488159627 283781502 333502886 954911031 961976020 656754214 862272203 139023226 658829161 491487045 690067299 322838876 367026605 863160341 989347359 702471162 866936686 120033288 769602602 65622154 235813100 348757804 369389216 875365247 995250326 653535141 929732281 700941375 715119310 650481461 837752644 193890121 625088130 137528737 714462052 203489116 782383422 110210375 522752905 842055485 914079405 830471112 912938663 836818460 882061651 845609362 962339759 544205390 997948055 774396965 810079590 898547981 974962096 342939808 499302010 120782040 997866420 496767966 731639005 542211846 741144046 889776498 962247480 253911155 892247091 894121401 911302416 266840831 536151781 39705144 722416360 117257076 119773856 615535912 997613693 84522763 103555094 255658341 320005550 349483092 597512772 943392862 994789922 820900661 862461724 359492738 485507583 416805718 669202704 247866926 905921041 910696835 970734299 154815573 839291366 612902622 970861765 446160867 500291333 322712539 407349386 147457795 877515092 985973218 996858551 716512474 851887859 998407797 998734720 13284127 832617221 122730010 738491382 667164004 786022508 585326572 843715283 251410365 960011848 959594345 960360295 334679167 981570341 283910346 545682021 106802095 557464452 952955015 987328387 677141419 932984516 124449350 945909860 631085235 853295633 324889766 347599956 514199500 709947064 770200098 973975696 53177488 481751917 194903069 199537311 4694834 572762383 963870945 973309811 656020551 937089032 381673300 749360363 951211303 989955863 533444484 544150723 400655510 923959654 87606956 374637332 261785161 598832379 784135671 837261605 976234789 996996818 558741534 690273719 84747968 314307094 171732887 958994886 359488019 955208976 574772587 601699797 718537574 825017003 975581182 998517014 940432129 944208376 540305383 654403274 82520496 788458225 586156425 668368218 170738044 396758757 662582267 887685373 651136934 860617651 25640434 205977660 693242207 861489815 761673880 777451397 402624752 460970089 675636229 754567493 69402124 356477554 235228487 881609686 277995344 780164156 407735058 672744516 385055308 783014554 106705161 400202529 915054742 927390778 627247863 694017334 550955717 897712044 959183909 995544442 852184791 922142313 30571255 708951907 768580060 934316966 362314270 766488440 981265557 981347864 155742225 897579745 532345766 952071275 905116837 944337305 312494693 552288047 930588697 973162434 630693161 642800293 776574573 790630501 81216874 996705744 239460107 826676055 914996348 919951555 776396817 973610445 882198135 896312357 698920945 913174730 943227584 982021381 12437797 116563147 31319477 689246534 480339125 830616331 324513513 562883403 52418567 268772703 963789465 987677517 946516637 963947680 560927901 895906460 228450750 439371221 18258273 869059156 616530743 921764473 742831617 837689829 306915014 444504620 580602595 920128363 326091159 491442939 373472762 649713483 598419686 959421669 80670857 976920670 844353063 852550350 992612993 998972038 818079145 902060396 648834862 844332062 735567677 898383436 959199872 984898876 566229622 810496141 413160225 436362750 553406438 673370019 106897215 152326225 524217977 970774706 722900118 997490525 618555677 801377676 648516526 800993363 721506499 836749165 826110634 932338540 561460850 776095450 797228308 935144455 663349076 956387815 235040543 547800962 713718900 850703599 7464939 430206018 463819991 632637487 779649891 965537772 663882029 973411460 494917213 615044724 363792167 538599558 251018175 404791806 346728233 362512430 525969867 886305954 241174459 977002530 550936028 703851935 589922420 752260425 432781665 642584955 266256610 571523168 362105677 497381667 264377649 372305954 481742418 657154196 945226236 966677249 989715454 990107489 581378281 950831554 155016364 730309889 640450981 699463756 376103879 529434364 179784304 495510689 739385836 877339112 500479025 826350689 276288852 343347283 483902176 501930122 154875522 609614062 758627785 777448426 215137219 476289918 846259645 875008789 606152686 918920600 508522542 984399220 466265583 975012726 416383217 797243119 503502532 928872788 203000086 304483569 669283264 934661684 388939972 441549711 478016925 820607368 594432815 910992781 820177770 904657833 534061378 737213962 141820482 723736641 781629867 784832860 255092706 874012036 810860554 996226138 105811798 388452094 152495824 698165362 577712330 664816027 442976436 746459529 403038739 955388176 620160075 997239116 757848887 854648016 232520393 746392844 513961534 621124366 952060855 961193946 838637894 912404770 946329016 988687242 818812218 986216069 780964369 983140383 840927643 977062439 617638205 865160899 166852899 705146412 544277151 750685567 457350994 708231148 827898222 940434901 744058619 892788321 314814812 545400564 959500889 981381257 780550584 831756248 799999405 930305280 427315335 690665291 884811674 904136293 965996310 988370455 445566026 812919640 858582218 933821172 420477848 433270006 483558217 622754720 629698902 854122810 911421736 928941349 908856396 913795461 385683231 989076400 282593375 290209009 119427474 615147357 521110058 615594027 133104503 409433104 814253045 924551104 718676159 863592374 868790760 980175168 829202217 920153220 253472002 577309435 876087962 999170471 226442852 621209537 797923893 807657173 942942349 966807321 71250888 778879576 466885293 751813062 832995854 973889985 755780749 757159132 693180968 851115364 474089721 662173658 206062260 569732555 320496230 766248275 134850824 141254794 732761341 807692077 628480404 811427978 571866319 653277989 425631887 661177875 512200014 950731012 324084625 897229369 178123895 998295422 431380090 965535340 250505814 831292663 616393088 951066458 815992786 937554051 202159177 921349794 820121559 870070056 637005758 660931405 22919561 521907082 596194999 997335158 897845956 954891164 822050638 921199104 9133497 909353382 839418478 920823578 113236132 642258354 289784762 815654615 907834411 910566114 873477294 995857889 506303673 928313004 953961330 990511791 900141590 923261430 450129636 803236265 475873789 802404624 807707246 894579110 524489513 811503450 521589458 995588390 200741930 689475418 254601649 367101796 451351248 735423445 123106440 194528933 873062432 947456653 848107759 922170749 839100119 866553990 789178260 797392222 790337703 839197581 181937917 515974831 160845048 164080089 950023782 966905919 962602572 985433414 200269016 568337085 966154878 982806925 703237915 903058754 596067656 951459408 982337206 984563840 608733103 903470345 33734451 263081370 979373562 984894554 978785652 983971632 819289771 958852564 580762470 872207507 498917729 536028912 506433411 906563302 533545404 622145284 15144527 121339866 479342383 686444260 520938399 974452139 551023632 750658329 365300567 462926499 655216087 741657705 198725892 632118751 736158108 972455794 993814763 993944889 486852320 965997344 952261337 983024223 218903786 600548661 710537881 962663421 310776347 880696514 112415749 308794192 919742160 982117706 774853530 790675869 56330259 876192057 612835816 825552819 40165197 941433295 658200171 819076072 707876140 789248427 291453502 763490932 843231311 929631926 529850454 578494364 658789819 806587526 508825331 934738139 487217823 830095548 38199384 628211050 919982700 920867296 136027375 881689054 294208187 931531068 347437518 970787031 663840647 986361209 944224893 983449633 780866431 828739810 67017204 648120133 944281781 965607135 460918008 589362422 52448509 874393858 243597545 395705644 46974616 384660605 486924656 929608211 434515540 640217156 584931040 925149619 245904216 274541482 729853116 767783785 985880879 996717483 917055353 966153270 487774288 532479901 717799423 803930783 198103080 557912567 701667865 709679449 402788620 657229804 259374178 972299630 596115008 928767098 605514868 747711434 744958365 879643758 825382091 887066640 213954520 623331522 987184677 996775176 473874782 552112587 870147022 985926898 505596748 768267967 971346183 984774328 193484556 856333716 294601797 934595743 47337955 406747380 281021402 465935655 706851713 920317778 150330042 558126281 30200453 987662989 772905161 996888214 577416628 864417912 403345643 941440449 899440579 903998512 888727390 981981181 150554031 501854322 23171766 440185428 267273100 548224332 83492511 917457154 893154599 982414387 915124162 940460860 921630228 964734692 508648386 814919409 874450961 973638613 3270476 455334552 111341189 195536733 1668684 678776260 292261832 838913747 24523138 495117760 126250528 928532792 432244833 695846400 433883939 891633228 705396210 793547397 960894315 974538042 433817053 945346852 283239200 439519480 337597850 824530974 300150431 429369466 590041871 599531652 543808660 918661423 373649285 901468790 983754641 998652899 815479274 851990199 122211918 972131889 801515613 810521851 100941900 407859359 668122029 879162793 337966784 358902516 500942864 512210242 299035955 403028882 458359066 477366134 776366857 879323936 176515231 350063169 908693628 912241743 915092655 970083558 761945757 768543964 435296065 856307727 295284769 629136899 895675348 977313681 95332567 494655125 946109980 952205519 831059242 929825596 990889025 994724385 87352128 724125294 25007953 801866199 291193104 541370380 690674364 716756504 132979060 255225718 63664191 703600574 655725502 777007151 11764217 853253138 778110594 988747201 924359451 947977996 369818942 554444590 194723729 467059229 859002853 926702555 661893878 734857722 610586731 958219283 531233322 657873099 907120981 953992359 620862984 646385688 582756880 954582349 360822111 412553432 709554298 911585414 295581267 531452967 391481527 943354082 554449194 773750327 931638430 951696104 235639601 791955302 122619029 786397265 13336671 134236771 735406208 917352587 918624589 949109090 356280245 876174454 404742802 548112404 154443985 907264385 108648943 406419772 154752574 379965439 60058521 868255640 418781861 582634780 262902782 449501246 947323019 952975361 63692732 473535043 944003433 966096105 564844592 910007125 198737174 384390439 832237712 896398181 433627509 941381159 834708067 872381895 728821482 886711266 920164514 995934732 495896737 985437051 31889220 226680276 220640340 933805187 853604712 900437017 653439112 854925817 779834228 874539970 1581688 445097190 975688317 998611161 99105435 231428970 806621983 869538057 219731422 669076368 25368521 433615483 237582380 844826943 102618271 699289842 864977175 889871519 691514488 947025093 146440186 553322073 854960329 888079503 200746067 344450587 466867 97723162 344615428 752228147 450980845 859721140 658114177 922818291 315736308 975831342 23068426 425092870 384054297 407253210 352534974 738828270 864427639 865216362 976521633 980046679 388579234 425155478 288052900 405491541 771362903 926373158 791950977 844348819 407966943 708253531 94849562 557783158 545263418 669450599 946591266 953841889 442027623 741499615 311412830 670076720 365021769 397855249 309347280 872933578 867894577 936241453 362066430 383404891 263181963 955989186 433387070 949241534 345045937 439518104 745049643 875029716 415179513 526153850 344218121 879733998 196909706 336297125 919228090 962092431 754776296 813105223 922240435 930980001 350676799 803574118 618341634 646060043 584756039 990700880 172812931 283459446 324891918 674696385 552482892 694032908 500885587 593289670 447688820 717686729 568631699 778662906 253016299 768816227 665155361 757631495 544299111 672079520 560518893 886351909 290387687 839431965 873874606 924741729 714612299 746209739 84320198 956428273 257503336 597108947 308438863 355256197 610968598 705931960 310156150 818810079 907330855 914109127 803568818 987917971 642301960 699200245 98032762 745502558 932500530 934731487 436422194 884770676 342622927 896969668 968688779 985767274 71721985 178746918 869018701 950768633 10893645 181617520 606500222 831639984 539361675 925621516 568269662 909860841 231812124 667804025 266464265 383059631 16425411 390506627 156585331 658373495 55041810 523310090 643415304 965944311 888006959 927324993 267805661 367426300 24138418 387657802 473359591 602468745 169598724 476767177 76074983 822455974 792471462 909323638 795357681 847458078 163516799 401987783 812595906 881372464 16304308 643571522 329299005 732315713 139904487 811426600 702386219 734008924 249763420 502396099 358179994 642464218 505255690 965689804 911561015 941622505 286574220 369873412 813628786 851665105 510752854 697603116 443905037 972532845 500832736 954827505 596038512 704293813 640547560 906305383 903654912 981753438 588654340 701427190 78458159 333768519 970449327 993581561 264827226 273105980 753966690 805819430 92106525 438049252 290605934 793833721 879197153 932497222 678709003 934901399 450400093 732370283 377151432 633614780 854448259 983737216 732023941 879296714 150603805 628881985 576439497 715806754 609865656 616553080 827935136 909787198 764771361 817747565 960445260 998851714 216783457 221252407 604431 434572747 28225563 782437726 594610344 853710196 770838106 788643138 188096861 360718739 897639427 930926837 923659576 980070043 932406616 946270441 575768041 810425844 493721239 736953572 30265189 632975827 544625989 889141712 398458516 637377152 832321424 997616651 145497757 332452771 810443816 946457964 387033400 633250267 982558739 985754139 585905169 734284847 490774279 662429943 69077256 727845252 64319315 984384404 450291524 469762383 924994156 935680987 77940516 524924999 330646543 940887605 311906672 998693835 329572480 836723882 648979331 680608514 589889786 742263953 664175886 954181898 783911109 914923996 357744789 553537141 902674582 998157470 985334736 995416671 824614326 871757410 374386498 626662640 413734403 881992919 232022112 452585664 966459233 997653064 65067520 602907511 448828082 995926725 18567527 236374367 765050094 874099146 203717061 496368913 484573408 802831620 103118654 486888811 682740466 721958990 279813164 731887935 901769185 925307640 71212025 374022912 427908177 805600187 136129554 477952775 269506691 693734641 675346939 769369609 40825650 997592691 933557080 956417910 159142215 779843734 588862380 736632752 254368355 616028023 817624916 847295393 7511021 346546795 762055423 991720353 821949832 966414086 184048934 376528530 764893522 920331220 778385349 801881584 684304787 901497075 666814285 710213038 281925806 685093927 842600002 945161146 81458502 164196795 470402005 942636098 913706783 939387279 613443148 875035799 118537495 382521628 708781657 732662764 805547279 910910506 162861060 995172970 702701627 749585535 916725877 980213456 84273595 220821045 496259174 684126796 440451465 664134853 915222132 998164036 659227220 746778080 383802225 853120548 985367891 985731861 603266888 848749605 793117678 932428140 842160454 964564436 521584136 770673070 674073376 983508277 279366448 483313488 788471665 971189349 378091659 408665241 932594619 975435471 691690474 919293504 42525409 618649576 557182994 983243562 835052960 941655409 291862032 549716803 258303125 596786725 273212012 639636248 545405946 861003073 9201257 876495982 738066353 787644033 359188185 848355078 455739894 612526047 177974355 471950447 328450209 451054567 99783513 403953541 444944588 568188320 995704376 996449294 339745545 978771071 305491049 973829798 72435607 932188104 756948283 800333213 439474535 641700298 35134114 456523568 63303308 910291288 754292578 936221368 497482280 983462282 873581369 919298162 670116976 729317730 228837807 297744500 559293517 902407973 931778465 936724410 638632978 943727595 829074187 856452888 777501683 975887384 110188739 697433085 235402043 249444265 433676086 624188787 924568703 938776577 896541826 909865266 723260620 900285335 272585236 655300890 416542812 916836776 881407965 933897828 773655538 811328648 880263293 922467856 543830584 614018629 371222316 812521719 6412354 653538327 792199551 841726485 690924234 866771530 599556661 809226637 180241625 835118517 489029002 696368350 691386201 961882046 413034935 564662180 987087126 994084404 543222180 551014762 815693240 966479235 613363390 738808594 254487745 811978511 232691607 244813614 324777232 607993868 309496012 354958417 433610018 634676177 348301871 428426719 21307387 957100610 617478140 836958322 579393240 962564371 904676342 954776334 581422439 712530411 22283479 679869606 308376077 955142113 210517095 946703847 410665217 832864798 182318033 829013688 21902068 867262521 128091071 145414707 266287541 784268836 790897696 845087946 610826881 795891263 586554616 991309587 575523970 591360685 53237255 989349984 298600822 505196089 591741885 930131582 538526269 573963620 539829184 738728847 445638833 546903030 142340358 670819456 614508033 808269054 929603530 950926317 236077090 624124207 486499468 998390309 651516387 686075885 829267837 885216438 876695125 958178339 497883627 501024231 647312203 920722525 651508470 709330492 727617722 904642584 637075315 676638636 984919486 994926761 909814110 935075075 280418311 545220882 259073601 828760531 285316890 709641274 777890912 892312052 747378406 754360931 548017777 801536495 38670714 467940697 611393289 762454153 966530049 977351273 598497646 783277953 273039867 921954201 100206378 201430132 196928063 222386287 547610596 674801276 149246715 956774688 17976812 165844349 150643904 313544905 761143456 857749160 458057401 673557487 68030714 830316552 973323687 987090288 594917841 877397599 51590673 186487890 735161449 975750257 285671000 291211661 156392247 849154140 413480994 961221582 884606480 949643412 235665387 987206706 840356844 978505851 862905611 922742892 721659361 981329996 116773651 214628790 760363072 857111341 783309902 937002305 765600176 950210418 560479218 856520442 324209771 649738692 448696933 594597380 789834260 995295765 683773406 717732841 890465844 950186643 575536436 690602457 101719820 917315623 684148491 991563646 753361835 829108770 327422673 805168417 977880105 979877283 150447954 639687678 121086751 775206161 921935117 957035165 870518634 938974745 565654555 808417514 299788780 337713973 569749663 983716285 484580287 671297121 675519647 862891024 254444456 740716018 86978266 401865995 938369423 944918292 286043379 577568081 967955546 997879432 167189406 432480623 850138992 863882009 413951046 836784233 644552069 869871516 645054049 654619598 763530162 814061568 211089871 500561987 688227127 898120567 833366311 949562921 57404727 598645408 92979361 114855633 262143049 704140328 651748828 905871805 178983284 951200304 481035460 610929061 29830839 863599142 665647897 980596716 485349161 932387954 291148474 796984748 998706840 999380448 187386252 684908416 12413812 908939095 974664297 995664542 547279865 980120505 617768544 720757088 268870282 631046347 460676812 477598171 536863608 803164230 60471824 710115699 863486012 878733122 227992995 860290619 989737873 989870102 638007923 867327308 425934780 904499710 816326480 933134171 659662000 978289189 842372212 988191545 696048540 930924183 421108793 424943769 515271271 661637574 907935525 970643400 187059823 236080857 682386665 867497368 200116286 808257004 448616880 608186442 456701340 638642576 44592662 926723186 474246901 709528071 930340633 961487962 113313131 925356606 658712898 729020742 621710813 943172901 453796397 741493795 54513385 508137028 570140186 724632099 963400752 979933664 520250147 825212513 621601193 905463051 362789745 743524766 76055413 238216501 157087732 421720181 173803625 510747115 370349834 445378799 152351066 581511778 818073331 879286919 988572547 994812893 70206003 648391407 548817759 898742470 693120142 771413574 186006045 537589690 790749727 790975342 551630810 602179660 648958403 772849142 452913264 942796432 997244233 998375367 68681212 571174506 481219584 751303845 367814366 559956820 830248288 929265473 170137381 911549216 413386971 890734832 403073900 740521174 516110545 811263459 708907484 858508502 162340027 911668002 95576246 770955386 100326229 558265654 342037103 802892870 143493445 245846643 240169011 962546649 722397933 904985225 624667743 977163335 15063595 884890309 626236595 984533919 969981541 997787547 957680725 998453323 157200818 823622622 438911088 574421043 504950501 974165363 173411203 463759390 251187311 855291506 399221121 670330192 438983087 788261069 798630828 858029087 975432575 996395962 584849824 723774730 740485896 830079203 721515405 972772771 642928719 808212310 954467467 977764335 958871274 978006140 815820838 845484955 566886551 572600649 183410202 525760910 788120279 896361536 1785569 347422764 761164277 939923703 512778152 674222242 808963296 868940623 833787613 974598089 118913555 481241007 878313417 890994107 318021231 865777065 474316896 884668642 667021949 688224226 384954051 926972880 984751710 997077326 454230111 644688953 781412078 923729948 432565601 902685406 516038672 743047587 61586046 916017753 346496199 710958593 160328806 443062341 472717008 908972298 938479277 997857334 59842442 635687254 721752507 842064153 917293126 953934410 560603621 787924749 50892280 936524856 248572758 776405773 910830910 919810542 417414137 545747171 923145949 954513046 907517066 985592339 327262681 357495882 706757193 880306631 510693752 830341257 24426782 458351324 763042748 803384567 527259604 600261628 431260773 818556447 88076172 901880520 331925384 753456965 585134529 616445960 156681023 566490533 792552651 954490644 359844187 657626868 263387497 305797189 471490106 997409084 351508854 680873482 610319027 886315869 96434531 780896371 431262139 741530072 89716516 441020083 526238 992337432 373557639 520950953 162182745 281349007 670801486 701503183 659680608 691590473 517152012 841101130 507897671 508852883 511732676 918165038 184633237 489095730 923956397 983417434 556093293 846898605 84949719 992282586 276543885 957976510 147979231 235674269 875330056 920158857 979448426 988657924 981660865 998546175 16556146 459190180 416955049 717943863 667840392 790379265 916688952 991389198 64516289 64904944 472665516 575596714 432781538 678003417 11146164 658807525 917453963 984376382 485699227 734657126 959777116 984009084 818471973 852438991 346373305 686017595 831250589 939025962 438259585 802039396 244081471 524328973 67732927 78536972 459995562 956531446 676023996 688581993 916130300 949276463 591022815 647599053 9178951 555072098 801166509 832384284 355409622 978021039 135468223 839380619 402542491 841350130 42502234 998593991 387431363 976160276 763920431 928595537 854716313 891719058 832313705 888483384 286641939 602623989 485930707 797184008 886234697 920044990 995123693 998231036 141489798 348735327 220457789 957297973 928010793 952187616 143185762 251525574 215760312 481731631 724827639 785963944 255101827 351156329 585265900 684705311 768350936 936244402 658742166 975580876 27873518 899036886 158648678 721447931 998998405 999122411 858748904 972459517 238643644 881972118 711000759 916981481 486329714 617165557 523044424 953711589 326400058 397440160 37999578 786639928 644181596 756390270 530461916 820001425 420991105 566358069 839004503 998818039 293923060 988333701 971550565 975665923 307729507 946004918 220460929 391559823 135551064 619782394 312899374 770396197 97435058 213525192 296656936 553272383 654708607 859750940 170285363 485044551 884692738 917335784 702786041 848242267 265487289 652540148 776520307 829293384 660434414 696144783 349845113 977293510 425958939 905109712 272418064 659706898 132868550 566723895 437715662 664714759 906944306 908552806 835444583 998338784 879496927 934117948 305038214 771496667 922922103 961154929 461544628 892826223 298069344 486248924 927255293 971861264 717628997 826585984 451712360 610575446 165550211 374120589 601146004 795098633 725632301 881529825 215654536 249752775 744820978 753822367 29082393 416663417 890833748 901972698 48553730 607016557 185391399 637118659 101125774 498664564 736801452 886713868 682617978 885751354 987823017 988159945 514700811 854159599 693694449 940029181 291268625 569281807 638546189 747341519 540806270 549894693 24027057 710867947 205163368 393297322 822867222 847881824 468281123 873681511 437400304 468555230 342045230 820049131 597802593 779635263 663492481 844795572 359746603 472087673 238460618 448374103 321872798 697474848 525764815 741810308 586574452 971541288 777621437 787795764 821509958 828170953 877437284 926152341 715057288 728099191 474949505 707825873 391819115 703020331 993328308 997345137 383368391 994551778 373606976 825611513 804214704 910503075 262070315 318774169 369734100 498918624 825158380 832807362 136574329 772687997 468355840 727122365 723843889 846183113 134800283 624424537 74673005 198924091 50552198 356938303 218702819 533637905 49120843 558470221 713158062 941298991 894323710 939926949 620814135 640362321 374680878 685692730 210186733 413327601 552757861 711386457 615288578 964718475 931966210 999170825 859642694 876680421 50004271 278050215 323187665 408766278 798389260 924134073 17316703 566462903 491405202 744329498 556820447 778073950 852868541 981415767 778229192 858691094 157753708 953384693 912226671 935093483 964783462 985507284 528906855 746525958 527535752 896518767 816659855 863190525 567118567 769731961 228743079 290542373 688165815 879540555 248999999 957698595 119781051 571719470 637136625 637222698 109394144 882820998 273350173 544984841 609605772 870887617 635221099 880263389 67996949 206549384 789701381 866421465 512384742 621706323 31388037 789890934 867443924 968635659 104289038 136210576 116531842 938454433 202383826 539040320 738022058 905312497 996030559 996388726 680064443 680124649 962873293 984763016 99972063 264084106 35567571 188057215 761361177 882940504 446259290 853833166 9272963 675846111 205460882 286072772 393484193 706846987 782706445 960404063 877014493 938846329 628862589 899463170 238004391 776952699 99561762 335866577 590477070 831841430 259842902 842903034 891572057 977057489 319786148 649515393 868745572 977221081 105416482 290145196 347947942 834868820 42528005 996509590 525345332 703775484 38432547 914883040 608148971 941386730 324357872 470653255 98882981 407703109 263941581 986296709 121848691 367512339 277310133 577950873 415070673 945938247 342160215 458885475 145506959 534748436 611377498 873539893 733550634 985314167 266443588 693168811 867433573 935709221 760409108 873685839 705161080 918114990 641192703 835324513 825634865 881907511 13416439 283801515 124342732 765400604 522654747 839986524 297736503 533605291 877685650 921674740 465379370 989198699 587653253 726477122 792984464 871325640 861616349 922720656 224432618 292709864 955088230 998258937 413413221 901264005 21857314 892776025 783200206 912151770 398299377 517215371 87430183 630117491 131385780 319427507 886682740 990702954 878798391 994335551 595042607 747419009 855825059 970237379 776615134 999196293 173555516 187225914 491586312 812691378 241878441 288341193 866509065 932239998 482967362 487238365 540240296 736736553 719425353 966252451 295042011 806063418 38806467 860518553 559447851 894600784 278208916 843622008 5487339 28677875 886355365 907526898 482347071 503231134 171214877 424029880 722121726 958131026 452791380 729866652 179794668 190193405 745684741 819583376 176544281 762461286 168062453 662840607 109401707 335584420 260747586 297147363 410340904 470955664 306768398 586816597 271863659 783067963 251883877 686247811 117915768 335048639 337961007 985902934 887579845 905098045 557172039 849970193 69346994 174838604 870805265 917780189 884214736 886749658 32604713 221814994 894142475 916564027 546008056 923590597 869644872 911165185 282517583 909923294 86068537 217693553 174246931 312984520 862622781 928702468 279720898 511815537 701273423 932313205 857577743 965937872 182001263 602715880 107675882 995953794 352369963 813330870 156500216 954487656 3628136 765690997 81052353 645137952 689708222 854425865 423559588 849338826 815471421 977917859 887768868 988065358 456679304 965057258 936029086 963260206 40296034 629665803 487367246 691341904 459952559 626743369 538117253 830887721 50096566 478312174 91216669 256830485 613733787 809445190 83179153 880591620 304734288 814193132 435059367 837394657 125525136 842566152 925349221 927917817 979865018 998962797 733592403 869145830 195312698 563929908 88966594 700236173 629860329 863415748 843100182 883079961 235774298 665480384 158147700 909474033 860521413 984489321 410123063 564126805 414892785 691325164 626448792 754901635 300982822 833659654 559564175 936009044 170755188 542989734 522286237 595461546 627476790 822279719 869739691 979652295 182442235 747984608 52377082 723709704 166688603 906999408 615494289 770146189 158770197 645262136 82922609 461667146 395070974 898707604 952096077 974428786 304128368 626228611 649386210 814014714 239304821 405030040 775592634 900626388 346941553 395955306 94446402 596621825 350909571 872781947 945619806 949565047 994938891 996637728 201184753 463595517 220082538 848149718 65039261 617185888 635120663 877086114 570138231 905829942 37578229 472821355 509456207 706910169 811870782 919000545 72598793 287335863 221616164 281748678 498829166 512237529 946825919 979025090 41592612 369895398 906083212 937065865 307505745 479756898 91449924 378318700 288411004 471217758 867656375 962690628 843929713 981128052 424490370 746194396 848143412 855958179 409344856 794864522 659378049 861390254 668066329 723866782 782874149 871261785 685358282 912923135 226903576 821444079 516498240 661015015 482236007 951851790 739542658 881164406 625848238 914654684 683941758 934046585 211954983 243629682 718514996 827839239 436887292 582700963 813085996 931000298 160404123 560552273 273122937 521895125 801526565 994974896 805919434 955576726 833707749 927031357 106933339 900775541 27488324 293001828 759028677 944091194 574257209 655980474 650557470 911903844 952456737 990145785 458108794 956676812 70744196 116582733 432405116 814421668 51349807 927019927 335198756 620071813 189204756 422602364 353572452 680826173 250673288 426289307 844450758 925281524 374051560 446877198 69698769 375233933 798665697 960558767 318132629 615990492 174598663 652499734 625186669 897642534 523773298 783644124 119989379 366137260 661465456 678333199 678883855 747668882 587110395 632626801 537865237 786848147 310935122 555984635 126451216 701973295 794350274 898517560 603592781 832589782 478646088 834131958 917115925 958628055 21256888 592237239 316123443 606643541 291600274 332755740 409659397 614717293 231403826 704852320 619807750 695850322 541413835 631842228 98220944 483822271 164315886 619455730 264320793 859238992 176275078 650615288 666659840 975530834 897661598 995819160 828368678 888446698 764035200 768859021 18877932 640018264 109761769 389241622 855159511 982839671 446799175 715250163 804220592 875096419 613476009 844990365 547187005 898571947 850648032 908489329 706202344 961513309 181781632 956894875 938386155 938567144 502490788 514250998 744186111 836984648 799067141 988244647 957270444 992744921 75900782 492713885 130956915 853274676 186752965 424725914 46758055 856978229 921659141 963489043 584580907 941226321 288208610 394749186 747221820 795372094 734571023 909560396 605337764 639931505 958485394 977038294 672019583 898398265 124958588 466194496 751035465 805920048 359438614 945339350 131289259 528146705 871980494 898453396 788244744 876179312 64819100 768368598 517506567 748518474 214897740 935068299 746106427 937916161 942106868 976152135 718982687 845616486 307458181 554871721 926108697 956725062 206764274 984660794 751316649 765848842 782017793 942997098 956227128 984518521 921917723 998071428 559191988 851126722 799157111 843070253 273587500 912740237 118011190 491991245 382329851 732363050 532562918 990993927 528655183 943607866 528226063 922314129 482640410 606735041 761326460 761516214 979635854 989186355 739195330 847163337 760503721 911587192 449486983 801494400 672623387 841928521 778279896 856409164 104115650 926034953 501216712 539468618 813652045 960192247 520116518 832749435 869175373 996790490 214048968 371780564 548662830 780563115 245594710 917652979 588577049 923925683 243198970 868471270 336125859 759761495 68306584 913094895 48287251 473951892 968552137 970287655 337974136 497693226 148100825 590408199 755191994 925191999 84415247 455477394 93451639 143140383 637024473 994029158 220549392 414530239 351419543 859758339 418243281 561118521 877426805 928924926 918693485 942509501 604040588 660635253 236735559 689773651 902877582 925769178 104298017 853475430 765054235 925944316 90767613 274026558 306308588 804265322 936681670 980388341 877827875 969136045 450549588 830475204 317038144 998547727 697525211 714561594 235979378 653748317 36996298 37036748 389815473 537479366 446206360 712333692 494658474 787482107 570202542 988679672 405092318 636058266 858975740 939789571 475716764 857800664 494723811 564745317 910397490 990014360 615698767 751175043 703649309 740834777 836353363 992249532 155757666 618508639 666295196 936007422 301039139 625101590 107798581 740004641 498008314 874988484 136226582 160337808 899142495 904404347 678786905 683384506 587978719 616843385 218591924 517376774 260543121 593368043 50081302 513540460 220524799 384377611 453547495 603260325 694602340 890095148 463301968 664069267 63445890 597678865 176780335 646030671 569459234 925804684 508556913 931331585 348452957 884925097 262879592 695383470 74742003 968715115 893745117 895557415 25786044 939877852 824690208 931430743 855450928 950459734 129922733 711654637 557614477 980675595 44580362 213644196 828241040 919028667 692863356 807926076 747787107 897248536 819585075 860312407 350356382 744806565 169401312 409989989 823898822 845838360 525468517 536135439 947757389 988839166 893044173 941067890 971461473 981186136 295803654 913905765 228053827 574888232 745437047 860101034 633114087 890605766 856923510 946008336 808052793 901165099 795812141 897229711 952032990 980303349 813226526 991980147 308587807 738693628 124645525 190015866 760963652 783825065 955917446 965255077 221441509 284986708 122932362 456672504 657541860 853245636 128805296 947062622 846851870 958506513 730576258 841764142 409185778 558883700 913050028 919514825 360922957 517779592 164720933 604499605 566069852 702438540 680657914 690210777 684913126 873984243 644942803 684913336 901753112 994918411 511621387 702744408 288313087 797360553 891291718 940605070 896166768 987322427 310609020 821712752 353982093 660849881 189499989 724637241 565113002 949586076 861511735 886713213 666619221 685348987 59311012 462146483 516311810 628736251 590030531 710004122 84398331 165300663 80035947 642197023 865507901 968608863 630837487 947633714 963922594 986308370 781392126 868845335 514818865 588028676 584860242 678154504 349962887 370562543 696001138 811818907 440621033 571315503 605741485 727221048 268196671 543676561 47366549 526419718 450629745 630746094 436898861 735499766 677387890 984122194 46394589 461955629 526375806 982999478 732250184 789152064 608844582 764981304 242804311 339720562 964324857 968810989 371620913 438885974 666041917 829732041 857972946 858427179 727536677 737665071 186879334 920527476 946909441 955798670 247426169 898891915 964020585 984819016 410003355 411492804 709078514 938627061 168701886 346651174 262230927 769422351 122761617 193595282 985884612 988119933 793416823 852029744 235613027 363289079 212275074 677761044 345293822 394232699 907078438 994653075 725752204 901773803 98819096 250769063 270160275 396200626 847504159 860188980 974148694 986985575 40123154 405768511 75601088 132013304 407764907 868118634 395631469 695535364 603739981 883822134 209211791 751776086 791788304 832847869 657555662 743873556 819856766 976546794 606990133 778588222 245469332 712393330 5104151 815832908 692938358 891080997 258723618 270565157 348994702 778384737 474605937 889835890 857941291 941153094 814367727 816019715 412209009 637838863 473356208 776952991 479414016 988498886 627158625 705872385 361107207 652605108 419904741 938558619 117448439 355236005 17066848 748025567 816658662 986976646 949752598 986851424 287603604 835174695 865042597 889506084 413702994 550189955 798142822 811930066 61496914 852689455 581806972 891911257 560223393 948144304 426751332 895785181 850008716 864889458 364524065 428365093 610096738 968065854 861325505 986158381 523391348 852678110 16847020 724397090 598502615 695352262 144456863 976890264 726124151 874018478 495445219 534480774 601601702 607834080 103182632 571761379 198631671 929594684 792698701 856106024 392635765 902325089 410214880 593828126 54559870 406534743 497920090 778026546 145855932 207644388 551562493 954345778 450734921 866971121 189378456 326875669 466810940 631984136 755070473 817476281 874420071 885230504 316536823 594868045 625606803 965072677 331964388 368359835 573113350 736847326 331584860 498415059 900725574 998457117 97227021 329966849 790458732 949493234 16374882 516054043 261687163 316968335 547859620 732491005 577431580 847091982 366063282 747831083 530383681 537140426 291990524 676832601 28944202 175115954 205228353 249265293 574360556 627087879 580697994 813098514 640756870 773732770 934431512 964424051 653446995 851754889 497755538 830255172 348891348 924206791 15723682 829745204 694640419 810815479 788572835 855154712 504669249 891697299 129307548 859113158 523300695 812561013 658516602 687522418 399695371 814127132 755591740 930089098 965910632 981750758 893960543 937799765 34192729 689061478 631241805 680607563 584793287 939884240 778842201 821505736 735458155 872598635 199467303 938813818 164289245 643025279 928886135 966876540 763478843 930619356 412063770 447953527 14385325 288805437 463335448 931878295 26985007 458755258 691657981 985014661 664800934 750180331 588126246 598553002 751024948 904955010 701844264 830009195 868181381 873490124 986812752 996084012 626965142 786376244 967285065 974631450 616334284 977858787 156163098 209264474 451423107 752044034 619910756 973534456 941838322 975899891 307674618 648639869 376463516 685141641 707986532 745517059 764150633 938814248 683807423 978349063 393986018 928647983 91669159 289625335 679269238 897680416 247595349 562240800 169901606 954178759 801580403 948672996 411642762 836015453 696597611 800908993 578654084 709903028 274173725 530538625 257338344 952408232 308041896 959605528 568969818 695305438 884701042 914920720 781201045 824687904 125373046 321430696 77130816 661580577 491791370 786073974 852706557 997394982 542730217 775206962 477382478 544939047 788724313 806363230 564199607 892379941 200918261 768140398 187526585 692298557 219562001 514999131 730103300 967260947 838499888 880299615 992564967 996973810 189858895 868257395 321785729 373652243 913405455 991592868 332828730 349921740 425382495 438044048 810827435 887666158 872613554 899823876 99601076 560009286 355915289 634842248 275501106 519037322 731406387 765374501 940018713 953906588 851791876 876047037 559356819 667897560 934042817 972706697 939632762 948780229 875982845 951701821 599493215 917039446 830208373 959040899 421440593 895381343 877362412 880466350 370158604 822448827 267109498 373217719 690050454 777034258 6091872 380015546 253251524 902962050 95628727 953696562 891017438 987010353 564410068 784712259 685160533 835832371 239734387 484411971 688266318 827888722 740975171 865106297 234709464 337228275 266764883 342934959 304400467 484456080 886929177 889360720 545718466 699872287 817360591 931396751 981489055 993492273 300119502 750395076 611086161 943781531 96868420 448139984 76435744 826282713 191123790 958838584 842994848 889220053 630248932 688654454 679357107 687984314 900985354 977865821 236851770 771450985 109510917 820525014 526991187 789915169 529773323 817393867 164507321 484635868 770076500 969807221 948757510 954610996 751149696 887726572 859598908 928788542 133250136 991360834 110017924 548230765 95198864 745650576 690508622 909222129 403621774 683618578 470895163 881045208 462369627 870826991 345606271 554550103 980991053 989369817 236231177 778895191 499718519 741406986 75468302 940905897 210268145 352420175 583244347 608427029 105363714 375925489 310064653 806958388 957658878 961142407 882196671 899171307 108506366 701681296 453163676 900943487 728008302 882137731 197483423 263853687 600284089 759643867 388137026 920381568 294981702 349133610 45039905 469636142 805711287 833145200 56337677 759406946 611424130 975211571 555645841 861946627 323624314 899746137 525738039 665124436 187211676 459604773 644780079 902459055 49690036 459657814 436261285 916652196 869564097 918513382 247123074 575038622 524397501 655144202 641620856 848752428 122878165 661822094 628959237 649879020 588441911 669805318 799999647 860139682 550807577 561821610 524739058 855656437 403591838 483163402 872380349 884757338 440913143 991252751 35223050 903327354 606726349 785861159 219079896 583560182 916877172 930884356 724654125 963113989 525389380 849369519 235491640 415012745 37533547 314576198 331806274 787085135 77466353 324709044 120603382 288329424 432446569 789843811 276584587 399305437 130441819 171774335 596137542 761642134 747762598 814284867 982322669 982396713 468772001 577163305 124208512 404690171 305090657 469083152 772411544 780657289 580892833 729233854 133348953 742717341 563339208 785891332 261925363 557638827 20674911 294094795 823600564 905504834 977057104 981824868 856934268 971062354 478609930 914295744 726313349 847791203 565556951 655189627 855458738 986089219 727463025 860821756 259766919 731204636 441739627 743227252 832886954 889120558 365891219 945697031 67509908 352084763 554908945 823155833 206376512 651265864 752933234 897081896 361278459 942761731 682566505 824397941 454898481 894767409 878027302 927168979 28219063 158830218 624170389 769485335 46636355 476755551 204861285 664235615 626427937 651539335 968291307 987334724 671542069 896585238 390830759 511836342 328457597 556586780 685009708 989310904 719931552 769718452 293988130 655420633 85548520 783056417 449661476 538695462 39035431 426290441 928768412 968354426 293856267 400808036 137429226 220377642 714122928 740027554 355529413 374434320 322721755 421032440 852069405 951053470 435410805 908711963 512535421 703749928 989465733 995266566 655437181 777138976 98498831 997226305 511609301 623495704 584396038 989884821 603365538 771380110 256733227 563669649 3611037 587929289 429613099 629516157 616876193 652718582 169889983 919639537 20483034 628539452 524403822 680733472 636059752 777868883 439643201 660368075 24403919 379487222 78738693 295699429 624002120 885547052 104831739 253030150 534340512 804012461 376133048 413023053 238475554 307538848 351780555 445988686 933757626 966463780 320969574 895069156 342883073 705283868 858181904 880504724 7084929 833683409 691613877 993169492 575287810 947416632 857807483 933127029 994249760 994947732 355434700 547109008 141424972 405707571 985968630 993140014 445343183 583916949 15789515 528038387 197233406 376913305 5447304 855467554 882749969 959669877 789481301 921255159 410517095 507060995 437444559 798927913 163089917 800875504 691175893 935981802 644805864 736393853 985490053 993744916 489474493 828015646 558737786 783384217 183209395 669963195 870660870 887242726 122969597 986743905 520424265 601425021 47652419 467581156 532250877 777635144 579586095 917977515 956043607 975967426 289259703 317400986 721284071 841814478 944337091 997389663 19739795 202409846 277164518 696075479 895599310 940204347 242894534 265384019 915825179 980532040 451753038 557213551 558871592 758336183 522717099 684197602 92348866 482376882 14071376 482718814 724090035 868431436 96580295 529107869 654346519 958509635 644611903 838600043 222662015 798296556 612918590 945972575 855705104 872209833 39953775 972794420 305968789 519650727 512705524 554011546 406506066 951342799 598724435 827032059 250971702 688293676 554050942 870625563 259699817 914586798 432033672 683876967 550667173 699542016 91780111 611255228 181470399 488139351 186487678 458744165 681362505 761356838 678622187 759995093 750912006 900898470 577703608 844546679 456052652 644735562 85809815 543596978 423190804 980113948 867556935 962747280 375808890 639730760 122216519 230075670 487061664 871496203 392472991 493251936 431107912 531337700 354093718 703926945 781959424 937280496 703280263 920191304 515270166 602745089 180248436 680502286 658678326 705194489 972587221 972590152 703009187 890125713 574537627 632262952 785075023 967187713 211860887 661225271 985599246 987730213 87176405 308614184 377344903 521191852 581082488 941941680 516536016 535311861 723204694 768450195 837804195 905990678 454445082 530270185 123092579 687531056 964066816 986633115 583415365 647946595 592693399 881085884 225472368 432026347 30179013 537915512 348617128 588907647 461193063 989049489 575626169 861688484 261332007 697166967 783050369 798771104 898611801 987587678 791745814 796258828 305394079 511612756 457122314 576559923 543423847 620468139 572147123 743846165 471775343 580885352 934826000 941029679 295911266 883047043 356425436 959759815 14201068 789040452 65001995 705204862 679195004 942088668 569485643 684043238 283213150 342551992 889931431 922351409 629501049 644133502 776416588 789686205 136092766 376244616 643463866 810301125 797362521 938304496 897279300 979343825 493049109 900279289 23082764 781633742 861435905 952473528 4608815 933563090 130915530 503515853 444415882 524168195 417939980 627674984 569405371 837174205 617774682 653374842 773263317 855058981 579407109 895422813 304971364 664785619 459250444 642994603 821246803 893927069 770690808 940319208 917764811 935143850 271965675 752570191 626704603 810523275 25086866 442389285 97742954 570498093 989651583 996367624 339537601 445449890 9798644 120498077 7526383 796812395 268882440 562446385 357544508 992481424 653265443 921704337 232739406 253247172 781242552 800643616 451158619 983888395 949592409 969777896 943013801 947542913 557036715 683644080 131549614 813921655 460094977 604840098 471220948 727929070 19022398 392731346 978915081 994848819 797448939 892381242 228197103 800585062 499234449 779146167 637189269 785954792 878649120 939804412 437351220 986511958 63630738 374963320 604653036 700320310 768736904 809128797 664825330 986107204 502348506 804142449 664509792 899281889 937571296 992733525 313721942 615373606 652374969 850971168 383784646 777694644 951473738 968905528 645555462 684420464 354037558 910058568 850025646 934944169 356120761 407505327 557719280 557779520 996869364 998219967 593601488 982164125 617031545 623046203 545746823 716928979 411132290 546147868 936271687 986945726 45548296 513272368 134791266 346826783 241743331 928802386 940212615 983683249 636934110 757964900 541294183 582977279 781967936 864668799 902048339 916195165 577312418 603766219 793412787 972578926 989505037 998166516 571660737 893616089 321146338 535554509 77160856 587657714 845551582 911897456 302217423 608707563 477259412 618463007 675326571 869514943 246586169 636787174 224844864 329460475 215087688 608350171 40747066 845415361 207089533 479215655 13816421 897662131 180696579 327918784 884709756 940742948 6824037 236404011 9924449 316179463 793438002 996163259 390770379 472039182 617766637 755384375 292277912 540231071 182866557 282506536 182732879 921293115 231091301 364831892 984084657 989351036 570918169 600739284 245888755 325244723 863477683 915489164 349003224 720740078 543490541 869252141 99278081 495631389 922036624 954587784 334650597 706001923 24028051 905044297 453997055 665402948 245335616 455416937 391975209 879154340 286187139 780565522 77229001 711700319 757622521 970601762 987734397 990972872 557779518 831738542 235024720 432273925 612135474 817486809 698744189 813852857 841180528 932258278 616949660 667780283 906571740 932680549 17037174 140811567 614552553 813663339 697314202 861267768 550454948 579097285 746706333 874958218 846684282 911489021 267941100 699673137 446210191 779513622 580848057 656295309 501349104 675134892 874416304 951761707 254108967 922127081 390429685 405536028 292004508 547080481 313090766 723172584 418607196 431349523 625766818 740567707 886285558 924549605 753086837 896112328 43884417 669182565 447312511 609564805 414610622 805816950 82329926 990697716 465584425 867861118 529274044 721712780 149180861 257384742 343340583 661480023 64090264 211568109 210242724 817513712 981487877 989776237 297518054 743095651 316316304 820342040 505094082 553160841 706476669 962769638 218232258 753435697 331461548 832164324 659023770 984807100 726145104 866239788 315827535 627006240 62644882 213007744 199519628 536620830 254708239 982065828 321845374 692852460 843449390 909165335 569358432 738670830 109562664 647806269 303588500 835053509 242143593 480736642 115964213 603797386 887458089 914990358 673810307 698148505 201040027 497957904 55195020 95214715 825407311 892228864 901487201 945725427 103739545 739018243 443079203 981567274 953765672 997149598 216211556 962866452 966682024 967736309 195497372 606402905 835926248 979921963 245815219 689756300 494375467 832138748 454660828 692213908 877885931 961179592 685931424 743845015 730312720 739023066 200284946 268535140 67258611 420612816 761060539 819744785 802523192 934951809 316092968 804634408 904143874 917363505 978106069 980926139 838933528 994239578 231212276 741999377 580611567 778599427 884100333 903234294 568531897 684223490 447609035 941125515 143252470 735667994 461691319 933882199 746662592 747155474 935739239 986929731 262092723 476008498 876793952 942905838 936755273 960180615 132226591 465609541 570032267 732413421 536891508 683130373 486708143 760903280 736387849 767993776 936341609 973044128 867816074 945745656 601023385 628745037 785458546 850990712 209388120 502852685 602620685 631013943 194979888 505635098 805801352 887037910 627587290 676598575 229989275 966346454 253606558 514835064 751101252 884206902 954015621 988470170 360226722 422089474 88571592 164810403 713798598 718258606 613704885 619153003 377965601 455365265 923091485 980879100 670495961 979391051 21102607 662410673 885459791 953179181 456064086 624987667 218395888 579069093 374553312 377296639 768353704 792928668 575612383 981171191 85639457 182052864 196499584 974261315 507186484 691529513 637298807 811066180 251164539 312328738 87740582 975959551 837838558 930826579 181872941 319989445 473733986 897474694 291369403 588123916 526281281 759021065 741502119 895685582 401961128 408036429 284134944 849881813 846840996 860872047 300630062 714240551 859794379 953839531 422267787 462919242 585368725 766528301 174632876 677434626 1527436 935191059 302183989 887056033 59239911 182778449 140059016 216600468 704307098 792301715 53949451 887537821 705828624 898610550 370523421 813449517 668994099 721303567 659413775 817775371 347648909 402327489 624047021 961497073 76907081 918428284 609075135 732399187 7008587 214107272 220506150 987404010 365594920 936774661 335906624 486963244 65489497 145820875 181983031 626809915 253091545 428344149 624997283 723190915 869675630 935515784 890616053 955587267 195140299 245257557 391892316 743243778 143777042 439164333 691056429 995946516 136823811 458034022 407817267 570029384 956485849 997644380 632363692 832159078 930875138 953391640 9167108 479052037 781442561 917669686 763669800 955520441 658525118 675910364 217469284 994804298 432260679 955946868 546989018 841509220 397598724 940182526 395168305 407785367 282638816 818540030 287997270 520439459 579625927 885736234 965649961 996267667 737765435 797609961 995866589 997846371 904675808 991278848 720362604 855764050 301853905 437395564 239036502 702876287 748630422 969932388 546951378 708230529 493028599 566542273 447279069 910355606 454607570 927457208 657709904 913696985 431480720 799360986 406632903 898191654 594325236 746503247 70144865 472041497 520670586 638878518 753555463 971120491 339574019 881568724 817154275 836590309 779624152 998616392 91995752 659538964 711665983 872951880 970843592 988651394 388484105 800761435 196580455 326127251 736480004 977680478 447812445 828293048 703067804 835108950 746759344 995739620 213130840 419145985 276213355 403602569 869652935 940264081 205085895 552720699 192539834 877734016 263314292 437538604 538358775 624197328 398994337 608087533 914733672 936318144 593442847 622324308 91912428 858315727 755932657 775626225 422859584 964047103 423442845 621870984 336327349 914904138 294366148 559819561 278318821 472367931 826494573 927078593 409680263 695982231 536703029 873269191 69712454 966973687 5086981 844038062 428164576 672862533 265674460 567582196 630039618 880590606 382623646 650979947 83472379 399539165 576136158 636185749 162714954 661948663 345107397 380179110 343267577 944389612 91912640 559134032 733699993 845409182 453306217 851185959 152359003 311944363 838286607 907011329 450766226 657098529 470965895 708412215 495097492 732624182 124183904 261396692 282045749 566941669 3274915 726689360 979317210 990955995 885127880 917191107 963724125 972949689 21366307 769728686 822797348 932324438 245502458 900638649 765479123 798295788 127640187 287259482 187281276 964403268 834361234 847057551 540778020 674550610 651812516 683624972 141651761 679987232 422260668 423451204 743895077 910683354 402895461 403461926 647961109 930772114 810657437 996299665 977768791 977990051 87611456 170886667 687444757 987933823 348895036 442759788 678253158 864947047 403691681 753561231 145091123 329846575 935220791 987627601 681900585 809474954 442804573 690563402 401244476 887405876 263780780 503800368 955369021 986778385 997042289 999260613 639818605 712260627 102718066 979882205 746943501 769440321 644309980 728975986 296452016 342088712 429995666 891169691 436834497 904727682 647869582 987789789 766249194 949028078 400612849 487926317 909458200 955771843 90630723 627194963 183992121 319193164 255170510 341749386 203788314 594195238 977185974 987493827 608574604 636449381 229200409 905412218 793921674 911935444 880411491 960860736 118135191 610715418 61972598 696974857 515962 782410350 802608277 956141931 471387142 478393957 535890597 592697038 986910948 987967275 797679727 923934307 87941973 847294198 285567054 352289061 483103123 661113891 49335390 68382405 32207802 279197178 568395391 585247126 369970734 538779096 886523065 992954473 89989440 534014067 592244110 661457574 622734817 707852712 293258040 707000389 273124553 862958241 985541990 998542844 189662631 734507405 925362747 929832537 242896148 286419257 926794506 954054681 336108777 655905419 615236146 731229435 558227684 717096287 119111066 579351973 633475002 981034966 79150970 801821145 158730536 385192820 783651741 814193684 905720758 971580942 869222281 973716727 850790144 969035712 625639793 901501404 155580013 170122724 159916008 414770630 448316502 597235209 617128090 771921419 711371915 896834568 6484057 562553185 926531663 931618656 724447939 787088372 256299122 815251722 282609629 583475185 867539260 882043874 858118243 993883580 782267431 955963563 187031323 708076694 512766294 764418388 812791799 813524520 246273748 880721106 631742557 886772979 793661237 942640811 539522425 622653665 143224565 971999119 749860647 910144405 935251565 936736273 290056257 795566384 966435555 982187121 444675532 547557682 587909 965637977 378376463 998258876 140138903 512887819 630667789 723158539 461457740 742598254 217003553 531714375 150471609 221625350 803562105 835769236 265263044 816607626 253134455 297212168 821226238 943418014 369098822 565600477 704571970 764775508 815565154 868966631 403600696 723528998 172073409 769767871 580558420 757625729 45485595 113517691 501562195 856291543 703166528 884363925 271461166 363328739 245430313 516093342 641744338 740278392 51209631 888682243 205240028 996636964 184173175 989211563 639101206 826128158 434663741 783891077 648603670 915843707 348530914 620104922 712809940 877810876 845767092 932166710 135063521 725734119 157889618 270515113 505739658 888034233 523903267 928290402 14107432 546474326 695843459 965772309 121715200 410180977 845920284 859241103 5550525 539918531 607904287 850109970 740093450 970662165 689395421 882373137 254258398 632149158 526008673 947936683 123391248 690347775 6100943 698735865 578555773 687446073 18767161 477863006 877524926 950491311 445842949 806924320 40187502 498434570 50093201 615736302 230605464 452621806 826514833 878249314 774640157 789479666 46248506 616636837 59457536 550912853 470308612 802062408 709686782 838218917 292708391 908661345 427187104 766778107 479237633 546927423 834702593 981104471 129927840 617845021 99144859 274261928 296043355 888898403 108552288 109320130 392030265 461762780 504053853 794924365 34449948 826474446 872028397 880756153 851078725 886272091 910463704 922534380 229900184 242435645 842436918 983357497 543652433 827381394 894031071 895981740 570726642 663172343 672699325 789917328 513428648 593813902 866261431 990852068 63741536 251623769 675085298 946431389 853983429 929281892 730568971 748215411 198747722 968503933 803280497 878999665 66808413 795658007 435478728 756117175 179712727 929677378 482187372 846293597 551204448 719332902 764388380 845742316 404523688 986467549 351455510 754593938 676406736 879014520 246766256 440682988 746002405 884665882 548758143 849721272 785593741 927054018 301374499 687086501 217314072 236298128 780204661 954651773 974359653 983580297 412998154 678635623 180400464 841482950 661533047 914057139 669669752 704881577 713258367 721449249 639803999 771196861 40160117 244242386 862821678 902358942 284764624 454181977 782662737 848487161 794562226 882359811 577374781 670024857 160971335 306608506 3997143 511376313 234202923 867782714 507631527 604962401 536905371 924803406 691237841 696854394 866160363 933124953 993230510 996434412 775663930 789622711 229084675 334077351 294556283 550838159 702156658 930358876 189041606 192610426 810649560 818897762 14370298 361317311 410363798 620640880 707289891 722610878 871047197 890090441 278193631 559120673 295832176 929433812 974339221 993179194 138982658 920647647 208758165 314882465 129350868 930173377 549021524 771972325 644746232 686880695 733912720 919597091 718572217 998110770 682061963 889654504 280693542 400414327 161604904 483929850 207155152 569896860 260229132 355661243 831006935 867293713 20482029 806778214 520591336 881612697 396376471 768682772 699834738 970458587 53820612 423167442 397830088 720901129 670431900 742895955 395908664 610225060 491260143 797451205 984985906 992807618 2516333 847235412 147926047 425197041 847822180 958403270 148698290 854907440 199014845 852018319 221730216 386511559 891492713 987198271 456264207 531815805 145504513 311220969 739825055 854217612 254613364 881980916 601835963 976567762 96966355 826263316 548183703 598168709 294506427 927006452 232642969 979728277 15290180 355801681 240157969 524700669 245490851 618574559 371938543 476053156 979197260 992967485 275127829 624280940 133482183 686243970 725714231 851791297 428020131 920910584 598667001 748560048 295980257 633740174 969871299 990541299 421569981 749711778 122137419 757070968 129950848 872735178 473505921 905321687 362723545 942255170 276996422 293783730 98919376 480471655 374104889 467360231 199988471 617860112 640135398 803675371 87803568 228740507 479891683 491654639 627590023 887946046 350024018 884330428 808538878 980352286 487145255 673702857 550083844 917008975 857886426 897857151 520946789 811251308 335997886 947902012 125498884 206625840 219386222 354385648 179360769 905392142 590253081 781311185 284810364 358415450 191390424 761715849 999090577 999151164 443676746 923352531 772457946 948441081 292547491 661975517 681079493 758840932 441508744 499960285 275444489 947478021 961303352 998393708 526159820 954374172 527798145 542919120 250056404 855503930 56656606 209032628 569682837 727153481 182932982 668199364 70785498 318449412 497362916 632869900 753109996 854068814 431808059 839869324 179356767 815568278 335967593 510213761 312529027 408799393 100492970 335024722 502050612 691099213 808781114 928560789 93255751 289968848 970618624 993138181 478185584 879345599 560502640 705802930 12642782 465278441 302962455 699636442 486697465 822664291 77340543 807726117 204932541 224913803 621180937 848402635 614309146 659643254 179451585 601488132 331665408 725836217 966373566 972299179 936984483 940660486 865123196 916594352 803988623 937659863 104579092 864959431 822502076 958116349 28202028 555373159 843516942 890112151 994580127 995967830 224488747 478397081 396614116 674280670 113560856 664914905 450936475 988889516 237495959 340393617 466691411 687114897 727504210 884073199 117698778 497198628 800282932 838655055 651977606 898464751 22098327 531879810 443773952 778574465 774124091 960651944 188675387 744693158 144676914 362990132 737396153 834155220 934311744 948953413 390272741 637549156 690215786 789300504 29363366 415757186 874667817 998402674 36338078 959238207 446745955 682084959 966496501 970396433 929186462 990761311 477506028 746967285 442116414 534356899 496254338 687523723 877761585 887111353 41656925 261138872 269931899 370466098 149133964 600275387 696855300 701203562 531080038 596223541 859507348 891009890 963608420 996426261 252146013 826888383 459929363 580295070 961344795 976024763 935717322 952309740 363183975 505592248 730613698 833919838 741460319 850741845 370920879 449820825 236570281 789174433 316206366 780025127 413060540 926078247 761385048 851574087 436965240 720882623 143220106 909309756 928524174 930536500 298604377 532277913 411471900 866330456 932949112 987723504 350337472 637834249 290744039 571726095 391758755 872711253 276592660 858178662 295163794 883430952 872485386 911983560 577486298 938668057 186189013 751370146 173477692 922626643 177143161 614328031 326646282 440317858 881622566 933818275 355552720 784383814 480271035 959708522 162128324 606656025 641859120 874497298 755364318 957774825 865012398 878626478 401638251 983087485 186062950 577181750 291122248 411336733 296044567 524539427 171554463 666621507 319001564 889316935 374627894 563962731 242748979 627443747 906676241 985014282 283691548 332044239 450074753 828808936 4076305 401630045 597362501 810316979 685953481 874878600 280843050 592509700 738546335 932220012 73215521 462625252 107073263 443263730 284580700 710791304 346090656 685904199 852872432 864042128 879958160 980231381 242141861 366690688 860863332 943247611 367574186 762638206 220124231 394527933 782755153 930026177 756163351 892701688 711090228 760035855 479924889 971220020 258164034 893700550 710457650 726126601 636193549 871904887 551923243 812043292 123742557 627469893 765055976 786249065 164017780 853535796 359919414 793231483 333278796 897932828 542022508 741779666 828780679 910989226 859575448 898393846 801259252 968971189 400943064 550495191 573801912 684677232 728601165 894373020 389014307 808348396 757651711 786859424 386022741 458138305 519122698 636397771 347327602 733594926 399683778 717720419 967479936 972861282 259216139 471559087 651516178 843074073 918306966 938941050 450603408 799161895 857622953 976138969 109263962 830188161 500860579 683200367 112797364 839416851 957567258 960856437 663266575 922928796 301218664 667543978 357196127 589779015 847787393 935096301 8053082 460496240 545453885 579697556 902698644 941246121 260166802 904763068 768421329 959854435 334478540 827144257 469980136 654364875 529853193 852313750 339858791 648814182 848000610 892392362 13299208 960206916 252201339 871385365 468946733 826867443 995437754 998732281 114737637 645312010 657907273 850264196 130103012 472803039 926846409 936139293 729359093 856336386 513634688 717642542 940384961 958655547 26009229 140259696 879594713 882544466 778422679 804329138 734405682 914734430 555247856 578955948 543073633 875358791 568621311 894924987 90270023 357964668 715859741 839129051 746383994 986550845 454876231 683487286 943586228 981516882 252654263 674382240 225772647 524293088 784462026 886057598 393966356 997959373 182671192 760048934 407214392 898567307 152436516 578624250 331569552 451776356 807281090 939430363 585784820 691520183 900000894 910265767 869782088 904924167 883352376 972835963 451673914 802165500 53382528 181476256 451492633 498432563 474187316 558011449 544825515 989369956 200641100 845904646 849776046 944722999 459320243 756414946 342491201 592889721 645194231 650126583 263700037 313359407 771827819 911136104 408265746 546930287 994030189 996838574 775712089 805222838 330154308 610450491 610553002 645732068 68123793 549448465 525411515 771571594 552371573 987152255 604789331 943826955 705315305 964616462 542078534 649318165 723326735 925368347 803190628 973565453 156152239 193632940 588485943 701767656 254744632 905576715 692674412 972491079 506884934 943490715 667983469 986911842 746696824 840081565 550153181 659981236 807216936 871959170 11305280 755573128 251987598 277418706 800290211 876550404 349897081 357738094 399110306 657325697 931660030 980420134 55758206 594979483 937347953 965919907 316555770 424321757 94009966 416360799 624621282 632227875 874427563 995898163 85087027 633865143 304532136 844323306 125561886 817663655 449613404 918428393 735039926 935151037 690816568 945660846 353411006 597813209 376500889 437470639 659232382 855584810 396235069 906235091 182310733 387303626 836743320 875446162 874068307 897496022 476100961 891391038 973745088 985135669 641052354 643750899 547176597 619389461 42607057 908387198 624286753 632627165 446225285 969570847 811435477 844744399 332595092 813616604 756802052 987031138 495490176 680623081 422558702 791132819 386270278 525426195 297638674 994722663 145377267 409928839 237066433 509926100 677036033 714717740 450096769 697015956 423886399 557652610 145269486 195256953 367743003 881304150 480675651 551905335 305695462 665303568 786611041 999141196 614254037 681619544 199638924 331590186 256794237 976993974 620517698 916402796 560213605 889010851 494754478 608587584 248657847 457044403 509204425 841389747 274396823 717852491 842128383 940236956 764542519 814496499 605558146 950962610 592564157 610999543 854011298 997422030 254815061 289681468 462942460 640405085 543583129 776809710 269110651 966933615 763386120 842520180 582535806 663442309 252658378 968031693 124236809 984717043 953035144 996668222 78025927 233530354 469638443 761899623 988490058 994639790 470348652 593927974 178879354 191098339 146162447 328351710 19949821 661765843 98732540 567834211 273316071 399399015 809487029 972602211 746790420 981978298 795496009 829619329 609450867 909380422 382012578 788906628 545098343 846546747 345438566 506233073 79300018 295788206 556683336 904358668 147849237 313495984 631127425 665516206 714063604 788528149 402505529 515858615 162672283 488056076 720791158 774583291 211207503 766774167 906947336 927753601 884996676 922237066 464428216 885060993 250832943 832621251 710915077 989102106 487540364 736146700 787924453 880291835 606016093 992351551 121588588 881327219 925886708 972724225 194590668 620046039 523096572 532199309 872119686 931905877 391263735 690991938 868667684 976172633 639633274 667216159 582381858 981377282 494870308 513708757 52132273 264396778 717056130 722544479 882961434 999320170 622291116 907753106 623073792 760383673 558051666 594257818 518205461 904333924 122025587 781732885 706364184 760400769 832693759 983727330 395102228 513867337 516644024 684253462 995296420 998881060 572402562 820551210 874275783 881027578 760802559 839111287 48101197 178767420 191504607 340118606 256368129 833897214 918878749 997825207 154328095 206049873 768615501 781832391 141937028 654751271 840738669 892400191 716156884 901062903 129484208 294898873 467686920 673791281 674985161 898279208 577569981 659122449 30482356 635084154 973581345 989964826 393957958 788917980 573910525 978985540 209683515 232798717 914771559 927622622 817116440 884159103 433479453 547400210 435690744 959538283 946038850 959082398 679357642 893939586 978139204 986050041 287246197 607564938 238754180 628934034 405244605 867286156 405213650 668268386 129071606 730600323 628293980 818748704 20191143 944383545 189701585 282698816 273406389 314790329 147345741 652641411 276568335 859472270 111974912 252601705 404441520 719408791 791827708 870276150 344202350 351784396 238245131 916254940 576535785 821904165 806322806 984326186 852939972 860220034 719256790 811074279 3638520 220985881 211450129 806323925 921560766 986900312 147639635 534140125 88041561 268733208 635384768 740591092 383102046 850904270 960040001 991323734 782763227 983468006 294623834 541067585 946469030 990268773 17791393 31228300 719980306 936539931 273419801 425979199 978349934 984007356 333592259 881778546 625628929 671323344 432784051 837220243 988448546 995214264 318654352 735519420 667406316 791848451 234664473 961312242 137785639 595618179 629841544 868676852 388560662 896601772 120700950 637254543 148303731 477601595 125276087 530731082 455768844 989715403 575599686 800248766 506224807 508666869 770400781 779346944 545465301 913136908 624184290 848516316 286551762 988364871 676455207 742357099 532472044 933957777 221232465 479292724 140197296 928147441 437157364 991779276 112270913 421628605 884563049 997368089 125602137 270022475 688393832 725403093 567686089 983266192 883180374 902429309 324886292 873026536 293352551 472572705 665678678 800233625 454705564 856657015 750490528 780001617 122069750 326135363 124327533 554501702 515159469 731148670 389622440 650019084 834273488 997804762 407044015 766116039 591124367 965229418 609410948 755147575 749643631 757891351 368907096 781190928 755427117 976776374 928176978 947994687 699018 767746307 807525896 974915508 660804921 760678952 600408744 956721102 668543401 984818541 728598988 805847501 341010364 669570465 386166363 818403881 83996719 295370234 717015053 910583694 18525158 366527844 371218741 614372649 254305170 571268256 745821551 823594590 353170841 553932408 271949628 779278985 1948335 691185739 840597418 877950003 960140372 965743668 182298761 652287173 715085275 739199985 951039470 978878019 9025982 220921392 8134907 389397344 904061650 922491322 766507642 787045107 804493778 886851891 87911608 468456041 519770630 758226176 477046243 916735743 950627041 994000496 678399100 737752959 455724889 541445886 614949669 957191434 618202794 776945956 502986835 930167257 333434796 348105516 672940121 913957866 805237140 865338432 201622552 796367230 847416304 935545134 587841534 742247203 260346619 873895537 911574442 931790403 483755762 535877219 206791918 798592935 873681619 892558279 917215481 996908052 641654681 671671683 727303443 819870785 611277307 799043830 723069503 942484998 285762058 692678270 133705573 440943690 949811621 953737498 650980249 772420147 261832516 501839368 286500610 738170161 270192805 943778695 825556953 833263776 682426822 870314150 223838209 936148410 68693538 569541231 980016821 981539842 53885510 521084847 162311296 952478841 733976014 765714026 782080320 917993859 633006080 952375464 302209711 358953986 65911008 142644682 859810177 894190289 835768111 873515505 706271490 856109468 816131167 986808258 197973611 272699753 31291686 132915757 195322683 578902611 796568175 909151851 476653063 938448521 820442572 955066059 465157557 799067245 854089497 944886966 292781731 395296274 890238898 991863152 625822886 860892276 813531945 938667513 508329201 960977247 152683912 593855618 580745632 897272421 929532088 970274884 915890144 954028085 892528198 919827959 834491215 836716660 990924998 996426114 426597288 758686649 333863726 627722030 816483331 946424595 858105551 987779416 479931742 816819500 621717035 726453899 284805207 291545543 958600194 999160209 71719046 842149922 470223554 871848815 378635695 810933294 96412398 210532813 36399442 913465901 607811951 926485329 748064714 765091106 960653084 975742118 972153609 973690795 886255203 964855756 883101235 982746178 425344868 955519133 975979182 979247201 442697741 736785372 290735372 945120995 36504228 354442985 89139817 727747787 832006255 874239498 792233846 850042225 164541314 366507244 821980299 850089305 535553198 917055591 156905778 430903129 715652023 774028733 760952775 979871002 44289598 795295349 239076258 705414824 943138408 996639401 507335694 816570339 255367122 897894765 816044508 995124129 327161831 375527685 566055112 927593977 365551503 560786066 203898178 795906335 550077253 890938017 511334861 700407446 805466802 965692542 518162429 668030243 362582007 645573474 771893422 830901732 853444620 928261722 708729121 769573274 255950361 735477560 456812838 486578279 447103555 746743089 983424764 992508108 815793597 823748438 696309411 838441683 466389817 506858230 733054876 871265887 186632523 339574227 306213393 932397468 404436 41698424 431951434 848953536 823788356 902052050 628299374 665808127 445125398 655374793 173833562 191005181 277743908 805108072 174525445 413277688 783584030 830302497 555546334 862866891 755287760 809976083 392017500 569782286 107269933 399662460 962142955 971008453 662871968 781943984 777201228 965100631 808585432 986367444 826822857 882526127 277949783 603824251 144405943 622488078 872632893 973124685 898336031 937232660 983136384 998476444 323136749 536626457 180573762 815287102 948903237 996474966 251117559 530964966 820632414 871307529 730683385 942284430 960354700 990123470 230845601 248960139 867755245 910635651 681839973 799904053 905242594 992831197 215909935 673302589 589712285 714779982 125982592 803602284 694408433 714364766 621718645 804590954 33259037 625160620 949154489 986736969 91358746 993704689 160812108 381482759 508744697 696879279 831791266 975289974 806123330 977962451 239488311 432742013 284075073 901198146 3010697 587490585 969434030 979269770 708170552 854079479 791908493 841495712 342022748 344857144 221266572 288228219 89445550 905583281 478733274 796479441 298133992 615415006 669682782 909711946 555788481 566842829 940518950 959678158 78860486 630264525 544603467 758834370 260068668 718174511 988051401 998931396 303644888 395528770 914945076 917759871 756631987 766395435 805553171 839220087 979704700 986427595 388642607 465211601 21831342 825166771 655782239 665714668 344535124 862544331 557599391 626869455 374424502 625905275 548382171 832118022 669104437 862162349 61838709 215963675 631226422 719928848 781298269 897303923 215846673 819618398 301634254 606526206 821585952 966671437 826507890 880886233 60655540 117372395 989450752 993440167 776350549 932679621 577686812 942933510 412352414 646043631 207513530 407152369 931601668 932723623 648193476 906016739 423365183 952452895 206111617 777215734 72188361 780154763 491233829 891025036 378432456 466695744 339509609 763299493 202154818 712559985 664024275 678257206 937093754 985450549 814667256 923131013 950037081 952925884 244444536 442504018 826290480 991761810 943797824 984837070 331315313 963224662 505965100 969411975 907865014 935837343 527475052 918324411 135092391 309252299 47470308 737182526 468400708 518925080 883327267 889541996 430748750 622705063 208144667 459533799 614496641 885840204 911279903 949591937 879608918 912649567 690289392 781103405 830921332 865860088 703840116 762270266 993030697 997427683 790938838 884236197 554520840 695773779 227921130 883798662 572604045 719710024 934962138 950786534 321333157 941633418 277441746 708791085 538981613 540364746 669618830 763741309 377797514 712755394 815028447 927133546 313440535 840996579 980897986 984047998 718221787 884349076 307297272 534189169 575099838 906946716 109603263 623797439 48995861 84728856 777074572 985491142 621202758 990208398 364427259 948648010 189715144 635466862 129864788 941831988 364719133 805638944 899670021 919058926 490706722 522876829 714249175 907212589 591254939 741145023 23064707 443223837 69335216 512941517 826569236 945863027 501089768 692367935 940491857 975461863 698549474 960693443 945329534 945364662 157695045 606517723 638179454 943605926 645011597 750630961 436442487 658092023 906134409 979808364 447803710 699173096 307040723 903307629 572765877 877183728 154849483 560665895 972017334 999276513 967641489 988228968 354790066 983340386 963931574 997871073 842664991 998715468 166099369 910189794 511095976 566689801 42530825 753556859 519292668 720086685 933687837 995621019 977950408 993177443 604256675 760378528 35749240 119177584 536412664 600618063 395201231 422134485 297097161 789059571 445681999 674575439 550255070 809910211 906208019 939767844 735747031 871154189 2901855 130662622 221530060 285742016 11758819 539992390 975538641 996596974 78627687 520344000 920007556 934314919 871864573 955276854 616052470 766437684 741979195 942441182 33300138 127495742 300404229 381643847 976298341 979171285 66847693 203701446 195870818 874144131 919809797 972354497 797007122 880740086 485627045 794598841 795725057 807874560 49189589 148419257 208922096 352365960 22478726 155726990 154950363 873494815 358423179 734678704 75541642 572173422 729386999 912487387 245536567 707099820 336573627 873572036 321524858 674136223 969220583 992835253 793351841 823837038 758021375 930251121 891192604 899958505 686315979 894566090 753863644 913205246 146706628 767424573 385238853 998708189 457496011 780433427 897140930 969059489 152773645 599254404 967730381 989073004 817646153 970307317 983356065 995842745 846123750 998007538 242184327 262890138 21681425 711816532 572620239 616794781 447826097 895816271 511420159 559934920 759737415 966899149 619262429 834925332 338941411 752371515 838322388 851196376 631100918 798996096 735076370 792579059 656035175 898663747 170086518 630899884 877797040 905000598 858447521 925749031 472189647 905280758 592866065 753067655 887317620 955043652 327512678 583834629 677021009 711236278 989253342 998247010 467776713 734412078 313733257 582051654 95549792 489444962 706742515 836188579 896970633 906866641 26089368 28531854 30045395 993786938 135086176 314997840 821503802 971661536 694134628 836048069 10753825 306452884 241956780 446638590 203965664 208559207 19430083 63529549 849964427 940443312 688824050 904909470 685185474 701466986 910208848 924286406 242066669 617876293 649684061 787771640 340722033 516050981 154943597 751936674 380649933 687984579 577025863 578217425 822895692 885002637 384638361 793849030 360115583 512505674 847793605 925980160 997514915 997533526 794505936 925208079 596585644 710612775 673823658 780596213 519062744 686161480 143434897 401329335 267523923 757365774 756068146 981163266 517512283 902935673 429458878 963235627 842711223 947420558 711055366 948863649 558304970 836569677 970611742 986257670 75920671 90255661 100446971 735511431 563863968 675394869 189446388 832467764 223677025 586253095 799400572 869714024 649211698 944175588 471863165 743193031 727579538 895992565 58701426 360082912 181409166 364501544 629453310 976847116 697449859 803543789 349475298 828219402 870368603 983658103 143903015 276151224 127194547 846933691 934936652 967919086 123136507 180332037 158926625 900360715 184772012 763437127 912242417 985638118 979960461 996889444 703372358 864604632 660353844 785724581 486249171 732740839 735043075 993727352 53722607 183928548 846021641 970866218 584928491 758136449 97518475 366330675 168351394 430026338 81764400 163697636 348559863 886364743 382374876 869964236 146982296 379895360 282928182 941013426 929221385 955000488 781713498 912931164 49624299 426909231 299685425 691552442 341614044 489918659 762383300 932963363 135461008 562362019 576140021 715916069 428239547 480907098 492897383 617218586 460601886 482922839 219939337 908712077 453881123 834915205 715261958 896496111 223854481 729616895 835570589 900547048 61592641 115046847 419332118 805184343 213896946 479666356 837457202 906713056 566757731 712925934 83626398 852066228 583436447 693321751 494549673 687228890 338384375 997090274 554397647 986647422 471588906 657598713 418669104 793632251 979972827 995321424 693529630 799041159 579598599 827216173 790909944 928311568 44713084 674637216 11938319 647092028 468826360 477723431 879986156 972824169 779927330 928262884 132931015 358034504 598811423 757935685 726613630 807711380 147351418 579262400 267805110 313129412 464207226 813767685 80552322 97825070 657224352 857545519 610444404 890188095 196857794 405055443 373123116 486186038 4954973 445359200 516621976 912563564 304859260 391762357 692063005 910796070 363696259 421500896 403472548 973531892 71408103 743038788 458244490 770532222 152419888 359000602 10804697 188713425 661528744 828013384 117353427 859006722 823190770 904025588 842298643 977671314 756771968 948291207 332678912 345294451 430812360 702186929 948078137 949242228 221840445 505813366 923643386 944575701 352489698 907830586 385658180 933588798 994431754 997034558 804344150 878910021 303305104 894325626 719059252 958821247 148632798 738786875 296676983 693725008 835089877 977306646 419490468 924149532 544717327 798841694 815696071 950817589 148250390 801332047 116260430 963092730 832392131 940904252 760298552 998954968 819939062 909583106 596618829 801163336 684770642 815724420 839291062 895795404 149241018 830502902 807350045 822899998 621276397 897545257 138188536 352324360 660593022 766940874 542861840 996837424 619302411 904257819 418926998 721829326 636468328 860008170 234765588 867808272 157312306 947900123 789185232 837966385 843600287 958258805 566822516 777967731 495337279 783464251 125928994 251358841 923518279 967474589 663780626 896687317 718878635 946370335 318561537 531693379 564298979 614280603 444075425 717958393 552924353 867613545 347931346 372594365 922573988 944562912 224082412 856935538 666501658 825424779 59190759 461613040 418542844 862440559 214468371 402986831 170854791 213896421 682406669 777807059 609503839 722612273 327565272 600211441 534002289 788776906 705509009 951965652 32351639 435013458 589429876 749815543 112481011 481797554 918072487 998366968 593984720 747261321 481913623 895109360 43282940 597229350 296552270 730021411 365603131 602077825 781312123 796728455 725765715 786206626 522586851 944714995 64191351 736156733 516537480 876860967 960728643 972659089 896199432 963997247 16529835 578086025 861116028 948882290 776341879 777577121 500167922 891932666 926425147 998079581 598704143 760295340 708558935 818796875 503523635 653717961 342377590 821817976 703066161 985613711 935062628 956175760 997416298 998865176 309145697 373956024 123909284 641569288 806308818 859229708 415638069 776560031 341420699 819129090 322055082 352095247 88732848 934348228 7482543 338117645 852167185 910399505 419645220 794296003 605879719 955356164 2390579 580838443 964031759 967789545 910773515 933627003 708591844 958697244 589338497 986741057 161607484 340345514 741024589 741329427 492373538 799342970 760381504 905546458 690516038 956379377 5085453 985325898 397552608 677376922 448231133 559502187 214253086 272027317 975644766 994188570 957099256 962126948 375972558 947975279 888798233 899846578 284258655 600213004 750285416 984990700 893549700 907605175 403595836 717835159 685385224 905701881 811312848 935799733 902799253 951519554 884910553 997712415 138870905 835284812 495692392 624699662 83895429 382010253 264855067 723831921 143630448 452684136 691890231 926869169 821108473 894127496 970981514 979549322 997548444 997733838 380012123 963953066 103670453 123976367 547605328 647141981 369963896 949142447 852169355 982177817 715101061 915015871 804607697 991957254 730281384 806033586 950409463 953227340 15265493 956093715 138503208 990425905 312815939 708829927 570293725 612014103 785179733 806598091 782047932 797202992 95995304 896112182 327103437 408702916 106546166 968512703 333930895 964779326 989158010 997396197 783265820 959061426 870679703 995018333 675198452 820260022 12178541 932661067 16305375 831570168 544730893 753762700 126755777 454200848 829945305 880432528 966350523 995249691 541961703 551529733 337977824 705969935 927770999 950835328 19904764 609598860 384409166 420508420 147788033 637412929 179737770 720106524 468995617 647363284 449988498 672680891 560563473 917280552 260842750 784851102 293064745 617473830 270744074 719662299 767533293 801047383 35252146 178827197 854514430 987113356 909692904 991573055 659992306 892966338 293218506 450881482 232787682 481829652 773774525 800825147 250296339 684401403 558707059 697493832 805429438 891395139 198114430 677513528 704314295 981688616 101856275 630421254 727001304 822406617 33892475 388385114 771093437 906019813 383846365 907576069 847957368 920256088 210736455 957917408 226876634 987811927 615190488 618431056 545632410 683778387 957684951 966613962 697964998 904339817 6187483 269843473 484432171 821732871 669789554 879415607 260067728 816705671 298417526 962378998 509990161 867114453 96591279 466562707 210457756 413232063 918264198 993441717 847302625 940819650 707630240 873399981 504072642 780967286 328149790 744361630 625647920 996862785 362143336 698703067 379030610 921716052 843584743 953800944 696837624 917981329 637916944 993793737 47893828 546876343 596333144 915055173 654461517 791430904 834453059 921236245 225651111 768817732 597183637 621095853 969522004 996856815 973582574 975553700 74085163 667240954 499653237 829043937 308448160 645484183 936443225 961899499 927799898 952607807 522932672 758541899 436047706 499368531 569512505 891719434 895819569 979753281 299664453 793816568 39294237 616477767 619722377 745541824 428161802 968965251 418910342 648611845 806401339 825018923 90408861 358312122 819304447 943867048 36654017 188791181 734231060 985768955 136764450 887282170 714675494 724514617 329842622 886833720 809926936 900528842 340623693 750712887 580471069 663517969 766203372 907556550 844735834 860183540 790941716 855417385 989244013 991163939 259614030 524855713 353272532 455250420 560813232 973445208 430494061 473989688 320624597 702146280 414110094 491559990 426246652 715809964 82378298 262082980 885804357 935804488 157621728 774088602 471819220 658334315 778791045 796803040 295510419 496645118 150106554 684971940 334604518 659317274 822474046 980515403 906393097 928102704 355641103 487857399 631375284 724735330 975092986 977577343 437897899 529943156 488472634 810144263 164140519 656469462 636085893 917739849 969154509 983311813 677125962 937743363 412356035 854965560 191173107 614418561 361234991 619598851 866642882 941378140 232456002 890302760 960407639 982992169 604584832 699563648 145340040 938427954 936054174 937670069 523574784 714806334 615727804 674417003 725744280 886724494 593566751 855058573 12549010 591863057 524253607 899226894 768757415 938806628 766012301 782960050 293617759 543191698 390873933 502771398 742339878 779986357 297409576 493803054 510543703 587329540 154308190 199551260 611512956 660449389 971840830 982769180 367215397 784665647 873566377 958756039 521522751 821637795 937321224 969193737 661426795 854589915 501631148 719432372 87133134 303406181 960013654 972496713 658222831 744467548 512895792 563131403 833799592 845359127 685118452 998421785 585758108 679144428 659566888 876083971 312710911 934422749 703010168 945307152 271644260 311268917 842258685 887878018 702592500 799215459 442221318 560558759 313495587 525150160 153538680 448480598 553069752 754025187 152859008 603414461 518581956 917805549 473728608 832683476 723390575 910228055 168255748 537484049 462364592 842105452 920282329 957631672 931208234 993064363 536940890 583665309 148669731 331731002 916461681 954798884 53797941 909356174 376661994 908033308 495859291 761633181 740913776 994817044 259387134 824878438 970602969 984743490 269124251 382497390 185921687 465609252 321837881 604260058 34657709 910094472 228495441 996298925 818466541 935951606 362894434 586800292 662767993 993139629 267249317 743718931 448264735 808939807 457038615 509394643 161482753 866475276 915347199 953614934 130499055 825114863 80861530 97654847 867731178 942157287 725481310 901813366 249785987 514425585 699977484 867602537 34037051 292158315 244784895 546746331 96798548 706151229 165205718 464971242 434955876 778950249 575435899 804906288 610923807 720639312 994931312 996761550 695383562 956638114 316596265 665335779 467898782 845294538 275921793 379048286 503161460 827390768 27776318 619793431 425713979 517529015 98242380 818263998 479004191 895562815 850993099 909713939 595420240 685931955 907576993 972486016 168807932 780229813 174186273 474060339 398001338 946620992 230991172 398127260 287812501 477112649 976919083 996425081 212693259 755606602 91227303 720960435 760455377 968722867 673905336 915583491 188868461 444718044 841469392 887744687 644957383 696427405 909313925 971132141 884660504 908095618 866693199 919904649 512735989 907949583 4287213 386202433 765329694 804626517 348722871 602933975 978012692 978594209 259326552 831281264 529922904 952572949 607400507 754180722 869200766 911049032 650767631 653028350 968647894 998825719 621130398 674253067 115839719 251831905 367934325 680640348 882699096 942695280 391723766 765190528 211291123 781288791 135954998 612860196 917518620 926492852 496035619 553068732 433679147 998995538 975647474 983708550 470133188 536674849 238355731 752941514 291059388 403850985 687385566 991092072 496379958 761736431 142429213 252958538 623168970 775683750 220266729 247748191 983248833 993761543 329541471 767406227 302252683 379314105 979746631 981889665 232217316 804344412 928547732 982572445 232032508 253859469 224190062 974685606 856420187 878453020 920581999 929134154 938230733 993277831 330358017 784884069 983812753 998260670 291313673 749845271 45241659 464095680 815653643 966849387 223377347 579014566 122756475 233633239 213327258 890669131 354311715 947651987 977576123 978637322 178358827 668476073 987627468 993673221 332413352 986540175 286929861 513495349 375660145 896375471 239861522 516109165 752390282 932008799 98495843 189229944 808784019 959472114 595051371 835306920 134087753 279316529 2931332 80156199 618182496 635668136 809290027 899796123 567272732 769148548 909687094 950584576 489946740 602688686 684110963 890630133 323286828 415317619 569052969 725368105 506415476 838498935 7584859 661949752 495285779 737568288 7913944 579317475 732667517 927460289 125117822 561250736 184145154 362455031 211172343 876240659 792396627 897820701 186189211 958409471 941085002 956400282 455401004 732116994 251611987 382685149 91322413 197239915 842379666 958477952 934089053 979006416 55340185 332856431 904736487 911321346 925776365 996216758 539323131 719557992 864603517 971643016 464637392 634071669 115743270 870547981 90368524 318708921 23131205 163501689 316033599 392153078 755392688 943982275 806690511 972837662 252875821 826293572 384341564 953196135 420448645 936751915 696626948 864426654 872699545 987593016 114558864 501967886 312288193 917839170 132311782 947322599 909615010 956133079 767273700 861287633 756640247 974170636 812843904 963618368 940152335 986500345 442175913 918418132 302974679 823900424 435236735 469960431 996564362 997955324 623470437 802580579 75330814 932304548 511479284 688971314 286559543 955496467 305489905 890616087 21205729 317486819 136907600 940015510 786067503 800693288 668368915 923073291 942933926 994920371 139178728 173384588 384628969 790895751 671284685 764346988 351419811 402915743 877606964 940026087 141763965 639286637 996858998 997911387 701650593 909688249 991012657 997246346 43789191 112799985 149440353 557121836 943188221 993641850 823936310 888709882 483301497 736128314 557347477 913743134 580056370 842665661 104739649 773305123 313165006 401094250 993106811 997969898 271167172 733205315 211768452 358100708 795060536 810758448 105965420 745753528 320937781 571377970 739726421 962801552 862551658 891736558 74767668 296771308 165855522 941682509 231685941 525618336 741639770 793157582 195415751 265814885 772100829 905719830 492582659 909845108 585188281 973838037 188416254 978442184 282906106 343268272 920309583 952006159 92012644 958815599 205567164 585097271 539207586 658353146 444657023 511664671 419015412 921513249 858740923 954817316 961001153 963475453 840544562 932816499 730113773 831472873 393612221 910970470 26780985 549524472 634981630 839751949 749212627 957391564 897820466 960999098 919800282 977636287 769566030 774140366 221465117 598419506 332678662 776331744 596477065 807139971 788837397 874956382 841588055 895039736 518099680 537128729 846227151 923923252 595909629 830772200 722420338 921865117 665910187 717778166 32595905 371477061 840655976 925593321 400622921 554963500 889298960 957453292 646202829 994843603 321198829 686182979 914294702 947160771 502889053 618289843 37540748 898775182 62118587 180822711 16133128 227988666 269551997 275712393 103682619 682138057 23828842 728447300 510543013 558765982 309428351 507943172 631408254 790180179 427147308 708402516 308553255 884162829 9302838 198055909 203079182 767092036 52459773 479715406 796558538 835105301 339919147 519677066 700511437 864787586 668459617 756684426 737201575 920730887 743525519 847311357 131608581 985226254 536306679 822326659 304452408 510430723 187141105 285243379 833318490 883974753 63700957 308084867 487284076 696509426 355748678 995966028 242380675 331266960 34499702 363917861 854032526 954634485 645395165 891884971 781295052 935089695 109459260 343907753 295931908 312291746 624702061 972720055 215381430 325629957 655578119 993959657 307595227 751370772 809999490 935654044 627732592 786121901 479500792 994027733 776645401 884229930 776448030 963935751 172489701 282228107 876142175 960770741 756627126 852505763 499099911 722992950 153102087 196985100 39214410 151650013 439567078 982017302 172243229 901273180 81821302 491240486 538342214 701385602 426977453 473863004 263723486 727863462 319205961 384200378 657104093 832529512 468251209 968966724 917901671 986189405 751590859 865835530 94747657 456026679 627288813 739572658 837856888 887726054 571739165 681673024 553059506 802849946 929797518 973782807 505450882 780929055 155204623 822848248 716609078 763670602 274523570 486745406 299985740 685603538 261570909 689814961 578060929 760391067 535647021 636553352 73609508 281894393 49970145 875140919 160607069 442994808 702548998 804332905 620827609 833693287 534884962 539368397 619497637 774866961 67594238 117877072 853248471 894566320 676687592 875396141 856554235 980946830 669688593 743170796 881239922 961538098 415999789 709317259 955828155 963684293 877313917 996102972 2280455 667684798 690584119 835031200 446473402 526607719 897236165 985062036 781250296 861133147 347037439 401019135 524177875 660877750 943209624 996383253 3168008 432700651 662681282 795991586 337128206 834625275 980406004 983626040 130735816 990732573 787559817 883954685 576985329 592751383 193948304 608472826 792086654 944630021 622007596 824502895 642136501 707873824 909724215 976488833 502981337 705927859 101273306 495390192 523959828 657066512 833779228 884455386 114652837 469449801 910791811 974564397 226106124 802646838 152263891 263219090 344602975 540781014 169328681 193191307 197739686 735534586 784622177 926832011 392555288 787219834 628958024 679308421 852538806 938384924 680251393 800415864 98944872 517973905 436614192 780591750 618986209 891292273 493964539 544883237 676414977 935763662 885096158 992068136 910371394 974471394 836385648 904490671 647316741 675851524 42024321 320045665 530563650 884100647 362180895 550218822 119507821 387587263 938812181 958488303 560357905 682821511 254084073 559741300 291956512 751194273 399133292 535414306 233809556 450481078 638110913 868732176 301589967 644608893 700197732 980126921 675172928 770067646 335522310 915848249 40366685 739977850 152769629 358004090 880747790 898491464 319695452 549075198 581546058 658825003 700218343 957233765 110993364 896251435 764223332 847578397 799976622 825398015 990577443 990933969 281222595 834127780 963125817 992835932 690927592 697022288 81950537 285518481 977176024 987357539 590119884 837274669 851496096 953749554 646195289 744117010 3292875 252628518 116155921 732363911 710878894 712675660 906636861 925116235 76061505 195752287 196562818 540887534 415956577 663327293 227226572 338691422 764974204 919721396 119601958 930081986 469276942 728466636 601076198 900808331 510044958 962859082 905261250 941277341 138474501 681735509 111572486 929111914 56295192 885248175 694105714 874952200 463667231 991632739 666556224 985003507 300478403 446836110 949902133 963359534 540201973 741686873 854096298 961758285 530142520 811951877 188776566 924481551 233691645 671542571 913924730 992532681 861225553 974258392 61429550 158445500 655440539 764980762 754059222 913291356 945151932 987706036 399896449 781457519 600147014 795168235 846045745 887740956 393405059 708008550 418367157 835188821 628595249 867721076 648678139 972528705 724620684 881779521 447174929 741317176 269392469 573389058 658054486 766899398 855360082 865053665 418306810 941078336 992238532 999081641 308851472 852890492 916090354 975711684 790548387 930939409 966465946 989468571 631227795 660045317 576557999 948966080 995506120 995712021 886076190 893963241 820860975 973951112 612145810 641164270 491216805 757554526 380856900 601994995 66317507 296871452 63113778 983139841 575002001 608287612 382609599 497980630 920732631 969302753 969880160 990001861 111577666 823881364 392260452 615103418 799480079 955476209 223473739 890774407 530600288 902960396 343724868 611417177 579345974 856532699 686089309 699921750 165672213 410760960 70583593 854015048 409300174 877582402 2329915 421898071 560183369 730793632 562724911 857819840 413865223 804059596 920843432 925175849 419163373 463867721 863799118 966720530 335911582 994475915 280270214 997032557 918321315 982291158 746627844 757286825 60310345 679021419 456816022 998053348 59091298 728919973 378801836 441083310 342348015 824476022 647531219 678608374 526249568 980353388 327195425 866083649 594029950 651175390 357788427 937964557 582791610 935861836 201278634 679874980 870544868 904049702 901324674 916126437 53260533 555086404 938929671 963137330 735637895 879126955 42061148 502326622 428271838 795513806 899669474 979036920 531005767 886416946 655882055 810793488 47236449 624599459 564213374 571752420 669624026 717737904 839071834 874021000 719773624 932343429 551953956 848113097 15212533 512526812 571582037 695601087 900890692 994016302 576927377 979698999 297577959 863179677 203384494 611455635 784573125 895652655 916140715 917540499 218022391 656914994 555776393 625377004 619923369 766366348 408213998 929490202 184282933 689751889 296338034 469861523 280053189 627930454 400415493 620664017 610338274 765995035 470506983 709938729 496074513 733434879 65404624 309529141 81020262 543593435 851814924 982122070 270047949 556754829 149062382 341341831 461186244 642210203 261387133 941341475 302787017 648085454 494531901 705848078 310106540 731307182 293647180 693525758 295589958 471677541 319877222 756935386 235879028 830963385 579315924 647336445 468960550 716995448 855767259 894235689 541768236 769735657 853198842 998768236 809548373 823363950 751342540 937131521 912081627 914730981 755599308 991613682 894139982 987357624 36876334 546961534 47225355 420713461 927882306 969965607 113586764 245363735 13249905 678184902 797140580 877063841 869480670 895674589 175185427 696386978 682398853 798013620 229020657 579959761 52411749 667252161 898902199 925718893 253724639 641697216 377562983 568524332 582601246 908330353 936627157 946209062 251723139 380566909 316305176 405194208 633136262 838150809 959609395 960644914 354562932 822791133 209423030 418163764 652365550 768728540 500086995 912469538 112814930 175261225 214446567 831077602 96353028 894677129 212579192 925335577 412297642 761695790 984064857 996981032 225353771 544659306 238872292 701355599 713094607 864201106 584003561 812246893 854348387 946274960 889847822 974548114 750759019 989071418 460999520 732803120 384470352 840234372 483297456 508937978 953650926 983429463 286699359 940360632 111465942 584028868 931809011 984571842 407598787 874698030 532700521 664120383 676996096 824754120 466797443 987743503 614330073 750614462 650115739 749168922 823025306 871680808 372034852 774984277 785495586 916338296 933919536 970720985 355302318 434415587 372720039 448776908 12709891 791025439 847998243 967158182 412133627 422011701 813271376 832072552 776661963 975895536 208491584 404472360 967245919 975241810 240706326 595982453 426361575 593952388 358768391 632326931 705385526 981059637 819188070 881427826 744603275 765615952 901677428 946323508 832660526 900340206 65944231 67087236 776619660 954111304 338779563 430995620 301576517 728469176 326339347 380350085 881538876 970420652 102927517 251490255 32907957 265033963 488108788 522018594 186705157 950899195 80559018 915822977 177332364 877264697 696476567 993248117 758759817 785188972 882859255 936564798 181166851 184235539 203996653 643035343 877868846 912863553 201322372 431848753 245196206 942548741 604203689 719291123 516526272 532564863 420881376 658608722 894324909 938475212 650439534 793133471 757298902 825636179 862398848 878732939 540129370 664327354 275340989 932477762 571461565 744161803 429158795 935511684 203192130 536161771 368622434 947143374 35008584 805524767 825219409 976375567 241224550 335839998 95953011 459669333 907258795 920643920 690825174 870563692 478534099 902473657 199333644 985864944 597133292 733006849 915555732 958313829 874983979 932455648 703302921 743509095 666275661 926933044 389091658 980375269 866919007 990523495 974306356 990211741 275906035 480308271 203190793 812937167 383746932 537028061 169526121 977814741 786815166 976463493 704246611 920244990 151603440 234010509 149463710 272901689 157529070 471342582 470621596 787106961 818034208 949244748 87943628 906748211 69600546 815313875 387901089 706303176 872111400 973233069 541596030 609137640 599555283 660444238 288653966 887063170 543793565 862193435 5399058 130171705 625159345 658244995 437549467 818267933 850338672 878538353 268719217 378218112 543912538 835174509 13390327 647819196 378393897 469403129 554959373 938699006 967131081 977775352 453363876 714110045 335045372 722682125 88979153 827433966 45645090 165568188 911988288 947475948 502059828 691039373 658648342 685934278 406385470 817678341 891186678 974525842 574779394 838735454 730942476 861743842 449607690 594995043 326328538 396445024 143511644 437138633 266203036 815882943 969153374 971532399 710188285 889767184 704937943 837304032 240581095 462720973 263155395 593546389 251315006 651895025 489633919 578100736 44165664 923146791 419849962 666859520 894955874 949993951 675468116 910167419 728335386 964617796 477982854 912474254 135900962 354542359 189411562 493013732 213685675 269650052 100487000 263537564 201865497 334534435 915441976 984153903 354807633 602654775 644800254 983021458 624357700 947386568 675211288 842531241 437656756 941745066 783847377 890927179 6343005 756021576 447145466 615472339 160332743 208633409 468630324 869201475 504641936 940863229 74100015 780695136 104888834 719165378 409720378 651295248 381902944 881280361 750942240 892118807 808930964 955075364 615537650 820966980 941974206 943410116 931336292 982572341 128540791 364478601 828726536 905982165 834815849 882327799 118697402 319376293 820930761 906751739 210483878 910861929 585850652 886672658 712169845 909871628 155181038 241934382 649446142 945159123 858899372 992889838 31283032 816646189 632350340 761969635 386916005 613606017 903388348 976378257 442105154 909089462 479192756 489600076 31329487 384486720 660224721 683122368 802137530 843366905 966748541 975631550 428763520 627521849 49901644 538439135 162568822 404325424 688341917 847568360 683553171 943014884 688730168 727933988 297679944 337461540 265287234 339926072 190753571 859575617 133662317 452222750 632175861 753395024 920255230 963843956 667422471 911622930 215493737 253561503 61704072 588065705 508776054 739788469 869208901 970446270 403879671 734254715 2224918 391333855 358981961 920106089 964323535 971532941 103649857 746704440 705207900 993868520 292256729 301727644 484045111 523560459 293565292 358940909 484246115 497495165 386942985 886854038 570929616 729355789 308403032 308570209 771694746 845270408 833943715 940750083 393329279 777728393 588339333 900053978 437385934 784770912 93526177 239751821 428943562 458793012 306982962 916950162 350500630 762080822 147745978 809015501 392805960 930300324 800714259 876114206 238581253 716691433 89814015 178641860 152995828 807847597 820638372 933238019 968871199 977443987 515823561 567614530 2046849 813895170 745035846 855722670 739122707 904148319 869304835 979561812 929189061 955926516 947173383 964968283 555776208 559876546 333912777 749661162 532347412 868806248 419698130 935597583 111212672 633855446 686380408 854000546 611410504 930847230 514579559 973604841 692602769 878227642 758420384 913992463 369701151 480521770 774505320 833457153 340179772 399553984 124008931 316267521 502184608 835571569 474937892 935998952 367357040 507735500 191435287 612894714 630896228 794713836 538692810 810812506 877428618 955886054 851002551 942056589 868971960 997026142 580141231 819855296 327855206 779673125 414234481 501029293 723836267 930463907 204093128 987016608 599312049 800492652 612725386 823335013 813303563 861972609 427053364 705682117 12746074 862051376 215154032 349804758 754837943 983637306 605947165 797916598 156060015 258465893 206548013 222228385 23620360 216418239 87159973 249170978 560394357 809878950 197980030 428261000 68109045 152881802 813821397 835437957 465143975 468599893 619762595 981477899 464754766 751972081 602556669 959629428 607016896 966871109 515663159 687551086 687982199 761093844 189007523 247033239 995229463 997161733 601803523 701148905 118774045 205089008 477617738 934861117 741006720 974678199 447810038 709270349 294114740 556425160 46445250 307493686 528015394 883885130 215349937 597586657 197342171 507916483 673931759 707505641 587162522 954280063 324663034 620795356 593458975 826851305 994487122 996289596 591846572 791701941 297894987 393710374 137744894 826946148 276742518 981005221 579778054 753263774 738560439 886010951 604912030 808332861 431627532 993976356 789192996 950092173 336179730 583075862 567488488 776938707 525103667 925262814 708846615 931242622 444856491 747998519 253050441 799235360 841211624 899462264 475411401 823722694 62652596 713929376 282761414 473896717 133869208 719625643 615157986 706120475 693432263 797901909 515181463 592429436 730792282 854059932 534835380 706962423 822850634 862495741 161422497 191317437 214055088 651124830 736620305 866212660 585862168 935202552 269453327 966414475 380951782 701458411 162465458 403224819 188913236 851608672 914123741 960060817 49375522 104960294 882625715 908619248 792711208 816572465 43995542 310594829 358167423 716580959 55320953 963414238 652161014 861037226 583764325 595012410 514624189 664449806 820791360 916148023 929128442 953448374 497638239 691500023 860338614 894176212 976816140 981742733 512393931 994900054 763168194 967717454 886935120 895424032 621264502 936752347 64503207 235726088 40115872 572309818 251786419 788817948 750988282 861947035 427728314 567514763 445067128 719583839 224505720 467625308 651566389 762135782 193262056 734424688 25260230 869160865 256319793 774887204 539918097 825741810 400169845 473956202 832717523 988052570 230552946 978878418 112522676 914108088 731585602 739538652 148477090 437362125 238671098 973092020 458780380 916334881 85534876 271754326 265340847 648243816 502559005 759852351 486667570 970683482 744041391 952765473 729490068 967838568 112909447 275019588 230343395 765945103 933891293 951668352 89220420 464858108 601420275 986072802 638904289 772946143 838703825 952346626 542373639 553895723 617526365 972108952 42345575 322545305 145012714 462402222 645152206 935132319 629524564 972174707 487769769 996363343 381948262 570171182 659545865 876428445 596276538 936478060 647156078 671927689 481194994 847884372 99565672 417681985 701260992 962192441 921784437 922034951 325885196 844194667 607066378 944694463 13104694 498074887 321741154 783257141 692594922 979283431 782027927 807656189 359843128 917283193 419733484 926803462 289713867 823586113 165049871 187968642 167898973 492098733 585202648 998480150 983696756 985731983 425723852 922742762 776158716 970215887 964921931 981608816 963463312 968632209 311750859 893791926 467900761 965543070 258507513 976826163 47783246 514439435 238939950 552194552 435424232 844215862 823989687 998063597 248000727 561116138 547495666 650796551 280221931 709743609 516469850 904628505 952844798 959478789 99912758 867732933 315008560 495556442 427395524 438953615 468052039 857418037 497649134 746679712 666051578 985595874 295193504 754937119 530780212 697071965 344014298 422864805 127900005 689537339 376853388 819495738 152626520 286154835 61634637 273737458 906715153 949089387 353085361 906116075 181015106 587993959 275197875 305738877 211382191 487539590 64657892 999010677 591516407 643651232 489475108 696584250 42827024 600203057 28167736 829167120 240018777 928364277 778478067 866586893 862808820 934009674 426810815 534915104 742024679 876281711 628573952 859731202 173813236 307410128 816864154 925273293 639476182 811672659 473262390 804076085 726473050 739767541 926424922 940168559 818199327 927576722 886678797 996566124 596933757 739915268 57511078 129586691 712890648 807665569 67710093 889144914 428931360 610962814 689119317 977691651 17069662 147361161 691253215 834045958 59508423 539308762 185586004 581694739 240872580 428936913 286293632 992382214 237970347 748074567 323183357 666619213 337625705 592157986 222493063 615854226 773961240 983256323 627274462 795497838 18107260 300760318 657304622 973842356 163860884 512271580 653145217 921299267 415990158 425149638 505388947 531333640 615354048 967298930 725905347 863731144 279086971 733059061 244074100 438682012 433417122 833457498 281544573 886339126 115042201 701682327 288791622 384532488 312884775 941210526 719070458 996565196 327725368 940254473 444834162 840122347 975948917 983706010 437869210 812385116 68688363 335199236 198849471 442597709 577598067 745081231 660745292 911628761 158940927 836356966 547481191 720806322 568604570 799162465 475966662 972245051 10601996 600414898 676778242 778113329 636502850 719834126 42958758 815852011 667714760 903578181 265248277 597570481 903108649 944878679 880045046 917853175 601387888 604652728 108756371 235592293 648133692 652968915 144314659 334927257 659708060 678133339 861191585 996531510 730366278 741905938 556877697 841006484 370662562 701221335 553407803 658042151 326609601 674682571 693118090 948486760 59325316 761669786 381244050 706580708 659877349 767459928 878117453 969976681 182112697 969982153 436126762 729570683 17171866 773448926 273207428 818674122 371602095 543365078 313787563 324791613 993599623 995820514 262110575 587680914 309732994 708406740 921362020 978819999 305461952 976544381 641739913 725092866 595163553 834831433 374065464 652840742 424356895 481191665 5325584 679736658 999315821 999372246 81972771 891602583 556217420 739702582 228463461 466697206 485093632 714048019 503275645 847507870 934754333 976487368 662179248 830762501 474283341 843860985 928305237 963381234 401559802 870228809 951884352 986025360 371531896 744987566 139997291 798524080 874789639 935860962 753904366 869862925 295178103 669853199 744276696 941693459 3559273 543052077 684812811 812191696 420493546 689287506 547496254 998360406 123252992 701505492 633276231 857946255 81376520 299384435 922321353 967973790 86910785 517009241 325537662 842596439 152069984 830855629 925946478 994133521 442056486 455507375 108543326 625539190 196033027 689666865 803174832 947253830 829577536 982621810 818734743 994180257 954456259 978731576 893744086 986928122 991667583 992050809 338587304 515801152 153900503 984548789 436378205 675269662 442961767 977759955 233636650 502991464 689038583 900170876 8872405 367713789 832929441 959717681 622955435 943849563 954763443 977369119 310354277 409484873 961125549 982890677 624990014 884719571 779137830 907748082 568084933 993814608 214360618 217640950 776714782 856308939 633055718 920002402 436916020 553377546 66387253 456456538 637423631 724506897 903518815 982281170 403576848 493824185 615878944 766967056 684674496 936025964 729672617 819448561 593110213 838451868 548980065 878370434 8349113 535812016 914489392 926085809 510493086 899147756 894921765 900244597 67348847 998656721 275681257 329688795 365075125 634521825 869507018 871195393 203816269 344125982 204316053 869639501 989085753 995986989 467663062 890256240 610376835 685817462 952090891 958319566 637223490 881281766 415031151 643963221 964393617 981436052 503054750 846199761 9863905 157441664 79952236 356408372 232818106 579918230 702752843 707041694 335011451 784527350 546215077 787807867 5100452 593832036 305139007 902825598 82080085 683429520 774702048 934295145 273849319 858784660 793422633 799192117 925821855 992471776 414355925 626402018 589443943 747091276 257525694 281192267 17101170 236654754 459765109 756941391 944951913 987267921 458214341 945498862 68258153 84526649 977974877 987935129 121713506 808807222 223441164 865849088 442569289 486754422 330195627 874305476 703819579 796177552 871610678 996154506 421691235 449434338 140048714 165098646 158745484 162181393 420685115 860856924 624699589 963829287 839722112 936917918 57330348 401859796 905032518 967939745 137759179 610204008 797134681 950376929 867580980 906507472 609223436 682597470 946973893 984082471 525124678 885177609 585240662 740294454 537685121 929777251 59725647 988951840 961086027 977122541 474570079 953314683 423782583 651419379 125033962 145502814 24912451 454860606 230970011 369920595 184263474 498672703 441597804 892544557 904333301 965712293 177029612 389128956 581117360 598599446 852439656 865898193 545460216 759285846 978371495 993596438 99126223 105199810 233977687 651993239 141958456 395392156 710505770 995239991 332733413 479265723 745748722 814980320 731422660 795345332 800906486 944270609 363265113 992485986 450811427 507428764 622991510 997969667 202821154 255791173 554731882 768254540 487629615 493566962 85118858 532130230 473781040 682154373 923557180 963301748 489264639 700780103 917887086 968478452 263373929 948738900 504157449 692589239 126480298 428707862 820351728 912572548 243680404 953412471 851591746 999367401 135918703 731395508 39088396 815677669 775060329 809700559 793585645 824188330 805795207 960429713 965410325 989266272 251711282 845527727 479404755 584585077 312731062 670249055 374608591 865229528 124208109 271286507 698268670 738680703 600014481 890761760 447251704 929090905 455281804 691012622 448708754 572802162 916816446 957153713 631467382 984594861 262016950 336271447 396536755 424163371 435386852 581856196 395830206 602954053 155332527 582843380 518980127 851299657 500524008 586304394 480691872 973087484 931197371 941974875 493996901 856773327 298876294 678134287 427455637 827258400 601923462 812212761 951552815 982864828 779684695 855728357 751169031 989881381 884060815 904286967 765466791 981760854 431465542 913039664 335078467 942965973 630614138 753786947 932273063 963153752 664671445 980538590 672073022 918590969 734760040 823360708 522718683 561603070 440779567 926690961 843531930 965084264 767848888 797721755 974092665 976960962 43456899 116262602 379377997 402684969 985684683 987850450 889735813 904845270 130605188 322061622 187932332 343945059 968410695 970847744 872478586 915682082 35656714 857847633 733755327 883099810 977443313 979132181 86300302 396966865 213972816 823054627 530359221 713083895 910595977 922099361 877690521 932523924 237547298 832636090 932720669 964015712 781487755 994895892 174003417 871590544 662772904 851706847 1387526 368417019 339288816 498285887 958510103 959535487 916733376 958387800 911013846 989754958 74036643 362092639 914617425 936753121 482309331 848206288 977461929 977607407 306496199 634159899 687390216 762685198 242497631 432908590 84029435 411989958 935429007 953491935 946905563 993226572 226983770 988332069 455526842 820108685 401120054 427616230 399188852 680856161 798206998 962682888 315964094 691860568 266601611 648330969 542359261 543472274 993174431 999290267 792155065 845930699 521477995 725396578 182246616 671360875 251060023 403198914 113792657 513757155 308848700 711551635 588562906 939012787 701098651 960136371 580532284 787096114 405196825 876740252 107554487 196645796 676939700 993577167 785658015 962978534 306272450 515715038 357150959 369540572 392646481 736902932 413513411 438455198 104491066 275891560 833326821 931421667 36071611 562147578 287219111 422045556 631112752 661762592 481998885 590659744 563273772 795169406 717022466 829663236 830135764 852477216 96862952 960836710 710876515 868650404 183836076 941821635 146314926 765324993 50792038 117156984 42889161 920982468 599894422 883082304 953882355 985855667 649100147 826624565 488920253 935679920 135135217 164967537 5666814 191688362 839057460 995100562 115697029 506504497 511276432 843605315 354923025 886320252 887230080 899978282 141968712 231171682 111721499 698885915 44497629 354551653 565986683 765869074 971072256 995920198 784364759 939573511 653757628 779603608 170792712 510273685 932068349 943264244 255121926 992048481 815424918 832343133 665306911 692371296 490880658 833636083 995453931 999260372 118344590 207847732 516051183 904718377 344754339 722507840 63863836 940354924 230285936 368743360 218777926 596535850 649488702 795938954 934632783 942533716 662011846 793153097 201421611 793705935 390792048 736319908 734317991 882272116 370944286 542844394 480403361 859832939 9427414 847178615 195450406 472255181 679359606 848752296 779218563 984538068 365550955 614323135 320568110 569465332 58430126 433339074 77508151 892275186 371386572 789539079 11960560 216134576 321096454 884774266 386015576 708240676 297275209 799206456 245244797 638302311 399022374 979281462 902096326 941666874 123252425 678153392 914730902 951844183 129178503 195503958 847610569 973162837 554083332 669054701 106883088 501971315 260640331 761913961 269678968 323088711 352777005 719768774 884581079 917806146 542004402 775401993 919766897 986911127 221478029 838013026 35289172 639233163 796915398 972367984 788914526 847660713 858014656 871468416 897107416 979336835 663853986 872495231 689259759 978500714 627008727 902823171 764279117 833357283 631274494 856945297 761333196 771452345 752930615 881614338 894072542 970972896 263107419 994389306 88726059 551933800 152542103 209040048 201966083 254514282 384961529 944112228 130195235 644605552 636400025 641707488 880985583 894219778 565379167 713244066 728795986 754761153 655551638 918445179 198523808 604477820 643187361 766329164 344406223 588235011 236381822 863531322 528751141 956156043 833878929 963340359 986611834 998211998 129103880 611363770 49837300 892500616 225627262 426940486 232242563 451734448 527642637 891063812 592340599 668972571 233389346 688611445 96334563 382478564 901301071 973690148 427346211 640696048 503760286 657176370 571035813 837888362 133854741 732560840 181209799 278544407 709886769 851174746 165672565 276861175 362682901 617828895 972278636 991136294 888623697 939908276 774481961 974207210 607354215 620596735 536398963 972433507 587661174 890593381 492622223 497840247 168741845 611978681 735126588 968769060 202842382 563399696 286987837 937595505 454465502 621542257 782322003 829202245 13570768 894435174 849609371 943133221 781122234 844939779 522387820 595109738 789351773 983611878 933470174 942574903 901126487 985202375 112045747 270730640 23156027 865002523 357241998 976229508 799832333 836814840 12757059 447451670 235626709 495367239 588359957 739646441 808408306 971063429 353215259 591084391 941219294 968714727 796935556 978990420 19785725 270261334 853793936 869930336 643074299 899787297 752757419 772979199 579826131 633950832 7587235 818121670 565522968 568946373 827627640 855435083 66431024 320805319 894268422 999102967 243127124 849325074 638531031 937104881 709541152 825886082 342632858 732221066 672471752 893492138 978868794 987056882 483706086 791835032 23398051 365903717 902985477 904568557 485785222 603224536 469215557 817795018 668960269 775205462 408974371 948562595 396400376 908090818 641139995 907769662 159572289 520171434 22775725 620866843 483423210 791264633 357839990 470870704 436075008 492407040 692226694 920542575 364763640 517119249 515793072 767521375 320025775 340030787 340221463 686898490 101481324 405376588 103926099 972566095 606199425 996219391 160836194 907414652 181328069 598072480 362604044 409444502 228381350 992280902 650779764 892010732 341553122 480375076 218182567 692451857 6297721 390530409 189580684 698640889 463007116 579773644 17619421 75767303 52715638 121832181 188322689 624842020 154992971 948197337 906975369 939131547 388655224 398722456 17486777 957793569 192063846 278353116 365523360 657842775 701783073 785634373 296016625 877683435 603318092 611594352 726831025 925073208 23278226 142822657 671584698 963610471 686969318 996435039 294019154 962548314 929734166 977820898 69544407 812927064 908460938 966222611 977048833 980612329 772441453 871821293 598863895 651627713 137672641 995333668 944733623 955555081 374948597 424973770 568535291 928780768 46883546 636975776 836210179 917658418 160125502 640087811 664833689 973584109 875778961 916180452 394050381 906014612 6334751 929756202 183625466 856007606 924212388 948939043 394724285 775995234 77129238 884105601 653698250 853670433 880828188 982328264 262608503 839525999 723312675 909918488 774828871 802618543 590567209 937874866 756240532 977983945 532869590 891893595 247514113 322946193 249455504 266371902 467765926 885197334 544689013 579367326 300233895 401593372 67312469 867563105 554733073 680595749 179244947 509914341 351930957 395998655 684715347 770761443 524194613 896787807 726274889 752518239 95978561 494709191 775272326 931133662 958509236 999157956 861571341 920249330 383046949 783761935 881884544 917632049 964246967 966348870 307529955 308769435 945699825 990003261 948751929 977079153 300604948 795713191 484825568 983759838 436051503 799592701 342739496 533990661 476392245 973153345 552218666 991679273 985271275 997737239 857711384 890175566 190908000 443181914 775503797 875927465 288620971 725349945 645489082 878325032 321534925 397417792 867871892 959836279 901838585 925448414 841315988 849592005 450803442 573705494 333793739 500435184 673124343 852452188 40114899 46730626 97860635 565506339 727385553 934970587 384403437 755713207 307974403 548991211 712838840 791157570 189281698 767842811 768519848 986485772 139375133 294119725 574432533 835126959 120292545 158059470 740825752 956243834 36575221 50851588 775554858 977462523 214826648 922822501 927157345 979713821 885962590 955535291 575763753 635483096 118456360 721931817 917151494 938791613 367184550 875964925 329257462 461271911 825119458 897113838 440391914 599794673 441427041 742039838 874536842 926501044 943253827 971247286 429545182 874887544 257847422 864157497 476110075 662699193 791947655 899561477 56468331 119490446 236387982 857060749 178532455 984065691 193501162 922939698 261060606 984550454 614825487 804546074 289241852 319455246 109288641 453541711 154794587 277912140 990532777 998035437 436339650 818515902 71964206 177208412 129038276 454928724 657396942 942216398 845023038 968460576 897247916 998484222 811132741 896320251 229718393 520741499 554902763 732253618 152885057 239830018 371119665 736548827 130144003 817999484 167005949 914805174 385286746 891720789 25758708 463465723 33849991 717095917 686460013 791647169 176112091 898964561 276721005 444535669 845659439 963586099 840048892 953405576 33487356 548243284 879442936 922039923 120251813 703693376 985962865 987043118 674990193 992160938 875774472 924520133 636056725 804747433 613074303 913804637 645739056 803793351 551546464 644511844 505478997 963165478 550148274 856030926 376646098 981836645 508602429 826672382 960599002 965518535 512411621 637747174 15248381 326108507 11607122 463859121 26111319 756029261 240022541 968650500 85460824 869381571 102773423 815418247 568085165 637813451 41106331 59578367 390043808 462229634 768785173 819282068 875424662 918679783 785853422 987995193 430283556 753287936 337822937 559790964 279112417 449809956 96386144 656336978 322049838 835083413 873766694 917716121 410273567 768444723 688654796 812085311 873838981 888194595 707602798 874883099 118518377 524863600 646188794 901640617 902117526 910309344 555686986 843191719 633342457 992961721 284806256 683924002 737757171 967794338 509932665 741699135 471774930 925232354 558426170 629736829 274543602 411730983 788527400 920407237 485992108 924829778 647639094 742861193 830353341 847650430 709779921 886726394 997636712 997883633 482107515 635449916 632354180 729196737 839453349 931871274 710792837 718384456 893666871 899378224 53147332 679150670 198685598 478202603 206626268 806891866 86010144 411461071 297952000 596998983 856966139 940330544 789225961 957768718 555153103 768308649 490520714 663150043 887188571 999292018 145231092 262958420 19304315 322304087 143620369 209186446 672254664 862558416 688730166 724329880 827041106 929292497 54577583 654512121 57200015 399053434 560095932 731750301 762042257 998878640 238674855 682424475 886641243 911246826 218116914 603150087 958759377 958913187 23319954 176041971 722363313 944281392 879303274 930027025 869239643 953803585 504055862 794484727 496544715 909293412 452608903 511777013 407766461 945506075 852625776 993909474 544633977 648238808 896776266 905598347 814895626 987348296 845992831 990470102 656711415 954672572 252864418 556813333 269961925 587393547 544569429 563028948 477882870 775251639 958911948 983962330 692686432 874557905 980669445 994859422 16122536 746111357 321675621 430933237 727315492 730835712 792603252 858423520 93168180 971200289 467569594 723042482 693842327 748304555 567921136 877078656 425397179 808262915 842693572 912977502 834788665 852653830 243495062 360669332 83325143 941209815 889033979 922701258 876221206 937540288 586127486 862146015 444413803 920051313 28427487 989864155 58092869 770843726 89889069 326526152 181192060 745764859 315675816 496174507 915658 488153884 332933697 695442129 951953451 989186251 285485634 791673393 836144509 879016247 61385906 887506281 502098227 616545400 956281785 982817627 434253493 507044215 17156042 119643583 50856399 370315657 383959937 829432662 404070027 949822297 863159303 917048776 133783807 802452160 29893356 709964370 599768570 648859628 401311023 717354688 796115780 962611230 812691370 950074394 818264874 988113752 325539963 980277076 225922249 668976670 91825544 942518409 550731462 978642570 30830485 83686828 276812239 977118057 566804832 867388274 728859378 880421839 429667748 536206462 854154925 981085664 804788084 848061333 889116692 958995644 812152371 983354027 954444664 991453396 849109020 922773432 267935838 364569813 145698615 708056933 418610325 870222956 181314743 265271161 211611943 734381427 60271687 719027005 132300473 662133923 219968738 750445856 218986598 634294730 440003065 810139842 765652977 823953541 805175286 880840260 667700486 898986810 351699239 567706152 896068862 952346542 867941178 964672642 441531849 741564048 559719735 811562220 146929443 640298757 42020242 81892276 324809323 575273252 238643140 774222694 341326429 343601324 212159438 638353153 812364997 823928213 816693945 974047490 435343284 498016925 662238016 893737432 34315732 586654398 728902559 980084877 398552174 927605673 619912025 970984451 20869522 628988329 622764055 719062126 830314724 971728219 913546407 951014774 935483574 949421666 596457418 634014330 779582880 924374638 763884751 854248131 988281153 993995061 489471771 747008575 985260593 992242915 948337582 987258831 521058561 782542497 561421571 606893083 916991170 938631379 30971139 209108902 411619523 716743799 177473324 740573493 662996812 898105644 978808990 979313205 832155476 995120353 239256020 459455969 127425251 686334801 920765256 971016569 133819624 834132733 381547192 574660865 951220366 963256139 488971214 925616361 378288286 420810905 391927859 859586817 829884423 898932789 835317330 974343899 860527341 906376351 666880365 845207757 736613923 944263094 396415726 763775712 462836331 831270506 74093089 580833603 339999698 939695862 965731912 999370994 695414247 772327743 614215815 682592881 684114853 947462490 777429135 975247960 281953505 292881627 416403699 640196072 84050218 770612061 6007779 390328896 919194380 930304468 700184387 892388311 654187052 864196366 683884581 932256306 106162472 584016911 476577719 649635077 563615660 705094569 809679501 864430105 791775045 875062179 551856813 888094744 722257983 849201450 459861905 843385408 13408866 95989540 786756640 952593278 383956209 644505517 84890057 247023824 217038790 692884299 401760968 608699415 647695601 814323760 711367366 889433059 5794898 757649714 776092033 779457965 216896287 790890563 801560976 832169844 883545304 925468548 47383151 274556581 545856436 693209099 626225765 958417019 690400562 753947054 724304835 946911356 297959094 579848613 280690015 534869577 694635505 745969033 507948850 583408195 427359461 570666312 717066473 840206825 715308737 827351772 325702469 873170478 49217022 605893196 898714750 969421303 597107910 909120032 757576092 945728655 272281102 441863184 168730289 915692260 149473965 933488178 236153187 339081056 655847383 873177844 382023709 558841672 18111978 37027216 40647866 436854802 19936769 552686306 15436794 54878878 807730991 934606425 536047027 648082515 689102331 879106467 835949100 953727570 594747851 660133817 68528822 705588834 423742250 673232710 682109202 826941618 602816617 722183862 103953444 821459972 550272811 767336315 994183778 998523214 596913064 965560266 303771161 543849252 740542627 799520543 844176569 909185816 851030276 954594694 146944575 773011752 385632378 629068643 535092950 772391076 72244361 223070115 519807332 590851960 973494784 986408479 794834464 802049138 700335846 958449918 261563710 898110406 919995779 993431325 611176123 859529973 131305638 649318946 66872269 157519902 944777306 977958768 670761394 724820223 907576846 981902898 808215636 839605514 651249899 846966133 383137555 792160537 763470345 840699619 584975954 589677843 847143611 919450390 632871701 811898359 318828323 421546166 266007405 868528111 97957772 684763929 534488406 607839741 988231403 994062038 240057625 477826772 86856584 797870596 637617316 983062486 720383899 887125046 175388635 843530263 660082066 724879150 393493982 566739089 573913625 792635383 48021373 800329629 986041030 992382767 874942424 959797343 389202080 989067797 7039769 596001269 206033066 584805671 853821790 862131329 327562133 670158775 717465329 870040248 853009710 916526957 515321281 772584217 386874355 693110803 440631057 965333087 572871084 598274697 910098762 922069715 819162018 832917205 118526452 636103469 724435780 756815767 809094183 840610463 477931784 495405644 932043196 942173173 796607052 909208799 718597517 832750580 687489769 985297819 198150640 449477931 8996893 282654132 152318072 669963638 588523567 719321873 581375710 671019557 925452429 991915775 504358638 701231158 116441515 172277469 276074651 283144393 573431303 902569372 62424661 800881507 916650772 996813185 240911726 556351647 371406159 396867043 668556610 708575508 591306915 721067595 358852495 939132647 307185260 568887211 829052886 965509101 868389093 972668259 984964409 992069478 921356897 972086678 228085643 965272733 583108554 641536118 938867387 970946278 716057143 929373239 226395847 790581387 586044099 922742483 958451596 989515944 570690755 988577063 277266541 547290936 491100349 555080133 561370139 970874074 670931699 850193057 42940780 545299192 477933882 615558636 945448477 967178501 627026551 800791811 906362534 989987992 94816595 507127158 109698084 216240709 830277601 993672974 241470910 976669517 430589618 909669122 131145693 782457740 383349962 624141426 508820707 898552720 694582676 739964073 699027558 829839634 734613819 824347940 118241786 999232351 660915840 971301955 271425809 709255244 59234518 231567692 717700099 945102824 535039697 940764123 145559210 325267471 886694668 946860556 810755482 902062207 175302933 965614395 4763085 398726678 971879341 996514248 921399596 937937334 761914132 872994855 109564418 600239418 609181667 971680894 949925046 998402461 686096827 924219314 304091513 580074797 718156880 976056770 76112520 599732429 522031164 617718630 699045485 742448362 9518612 484957239 766603624 981789684 826391694 930178260 466502978 573379994 728886776 935921734 196926557 652452421 314642940 908291955 752296312 950570224 785993247 926888029 699722840 783841354 189264815 212596447 269735899 703281768 560565174 708948652 807501066 903395692 174917340 481665964 359871260 756018902 951589552 969304131 414686500 694791971 47762907 505517870 219820530 265851965 974599072 986422617 861291172 970027695 391029618 588235627 985325896 986229649 7488759 88154573 214182984 607470648 64196638 854497546 987585466 997849064 319839066 387136588 895154741 977811719 719049265 783535285 118007821 134282772 704384040 889517971 434043576 825927644 348659226 992221314 80383731 497694526 900629247 940105844 225224137 530007131 651118944 667775253 767054620 826130643 637556117 793975154 556709958 706438975 611409406 888676805 705972896 731218004 706642128 892228375 494537206 683944778 114825361 826538909 979821396 994687296 431563962 512024726 337749429 750183372 160625597 870940146 833157948 982830467 588385742 778954569 744034236 832331273 444785867 568356938 897409278 981085872 602085641 939537778 618095519 713919234 744106499 890454403 761165205 856890651 520165101 844493281 111173541 553681773 981280605 996514788 377020004 516916383 769159385 997590701 127309777 260409516 757369036 851415281 6503070 880238133 813745253 907821041 78677398 183500734 756287179 882061127 968027279 998996229 340421530 913116404 690027515 847272547 541394443 658476623 601601748 662211969 840342953 974294183 472296855 548269825 716211234 978127315 201660952 906762240 689195113 817421652 748900514 887317904 751270046 848629287 817180941 909550842 273157477 766812540 150646728 775205069 218233980 703204244 84147213 488466836 960199734 993595748 37395165 535725354 884875505 913998937 912154956 922053556 280583477 852238209 635201265 808645076 228345872 416252628 781832417 868861725 541224413 799815541 984594758 995583047 507857491 707587729 188344432 370823688 535116076 660227945 834269554 947920136 475584755 845641421 346861767 782943946 88604655 669398830 665716655 909133592 385263574 944749359 269916892 301767112 210311158 816371808 903869567 990133755 549214781 729267838 9868842 97334836 502643955 596015113 351828388 996601346 8613648 205199913 333528596 509139050 643448466 725491082 343907015 604182551 151051935 155407236 391272476 874255604 139553703 608200573 236533420 866397546 899821375 951726943 992256248 994529404 94952518 207054458 935584393 961488444 660859632 703526266 669075473 819624010 114034996 520035317 122290205 343038443 178546795 580482840 127269699 762710323 146423389 278420970 548675717 672149881 349206531 981725031 767410514 835920985 930862152 960979892 775980551 825872043 323616024 450167580 145602141 485000103 477424600 486337649 487462647 722824257 821360757 945293239 94095859 353041762 321031289 520106356 467101457 850448093 594639771 722133607 929089248 951434010 896073527 971949143 56366213 176046959 615488008 940430994 535058153 748927936 830279057 887664667 957253211 992486860 398300164 591982060 463506144 686063883 323357083 818761628 600392414 998999613 362557634 807226628 899365976 978119069 416092658 934456144 708275832 906316205 885834436 918407410 971453373 981673016 201312726 258303649 861516646 871165694 400448647 633971138 801910580 996226874 730894235 950140458 757052868 909892895 88497293 592310809 394115614 856227541 579087369 953743861 91034321 966815995 578382743 718702125 410113842 710160226 600253682 957185583 302741743 725623549 578687248 778077810 527425630 804144626 850493595 947894451 458414522 689231058 64192641 810660863 706452445 857989438 785851854 790090502 494499165 730903005 618668249 744846338 731378206 962012286 988544240 996857883 226619179 913058301 258930201 275258857 355911475 869214041 165847678 976173731 518239176 910619819 958109451 977091283 606332198 682039415 220904325 596922071 146092970 496770172 45923144 343245845 377588949 577091179 445946746 883065233 178594970 620698530 861507994 994706834 638142959 730720380 76624747 193879823 64712501 739035196 202863918 918212013 866709171 921468722 109932879 948316772 312061557 732077671 90769969 697994941 186259617 931955450 110124944 394914567 865079194 901255210 390795113 562529397 50328146 723658910 380110924 594349309 234324802 521329115 385375636 663560158 875321367 888191776 19047997 366845796 858618510 977552249 272983451 407244562 152534477 994784237 191480551 742891305 885101711 936948574 430589722 755877792 171861116 783798627 585241267 999206023 684307257 720753800 303543115 560509106 826901853 949298891 909425030 996410663 674183736 949043671 328082078 343421726 529562567 928505834 701341659 756533845 1556852 168746215 356728134 767418224 179712315 919664777 248477588 329317044 656425759 834684840 485576327 492510114 558995268 947209769 763872480 837786630 311196763 701381487 69337807 202619317 295494444 334500692 284710511 370303571 669310831 815909812 263602184 758445940 140004499 723870685 662444591 888668508 799466257 845236944 876494487 917909540 940879238 958306209 88417860 610604482 216104 824901387 843111901 890757297 911758547 917652103 351830557 994630928 624029267 871845675 525324249 856663526 353648577 948450235 477784544 898326421 662151442 687331524 237715656 906994025 115987298 558914364 11982792 632923051 785301064 983043459 901108670 977651724 196255929 692412166 175611330 319439559 403544998 923847177 270999675 363187450 43800061 760490728 844536824 954624022 352565888 674373043 701939083 721087627 887744270 996569882 428650433 590134269 570237813 825902813 993206217 995748207 36377499 44123474 138705773 400795950 812332633 987673503 521151045 964711645 272688346 827675734 310492014 640083520 998436115 999260430 635678551 704243425 919095458 997670841 774207418 830971833 144546952 776177379 492081179 564126185 103672585 330403026 494001608 722752601 15672018 422412801 64366340 190443368 959041615 992481118 489783954 540292009 895787375 997843919 145985526 237094341 895395620 996645086 754508743 857550298 946583139 995927744 702365497 908033232 984353421 997522079 703681379 802237428 506429813 816665339 8291170 463050291 341942548 430350083 651589944 811166050 976469551 987311905 42287796 546865690 847371754 891406129 513276271 682977465 164943657 853631807 784813697 818757502 721076182 777208273 666824582 886159056 557621921 700120294 367779031 617959914 941788574 991180569 11231322 834677191 574223815 993322406 870786109 915521512 392618831 802150243 237811675 483045719 77249445 269583743 912903402 968778808 293962421 982720174 369509696 778092933 847346579 954137325 722732462 786586619 870093777 997568524 610443908 779351593 503239574 853256717 392351825 401109748 689405755 747106779 528148306 775607762 616522015 908670349 65281634 799699161 883828440 987241704 507006968 854970863 676332200 952790069 463980016 922137539 12413096 291136015 80394039 769641822 828598720 886686847 358113618 680796473 424013941 973205702 494935170 741546485 595253391 877192794 893264652 923305959 519090181 898039552 21976928 616182826 934494609 986176545 655222274 677375771 376016968 956900565 267230409 309359721 295717353 899880449 158048652 431175536 414181061 570262900 308509524 761830406 496605588 825620685 224873038 848472647 955193617 987804914 580538692 739927900 54155747 226418272 254685107 631632996 765291324 894208282 64003573 748224996 883313376 962070634 988474128 996105930 459376667 486138519 508904779 800501333 106732372 246440637 183693073 220987919 506167670 971573416 674406154 884646517 702151263 902619234 386196157 625821970 273395608 397157351 615267562 990170378 172562709 839032327 779525844 989475845 780206589 848957500 664592522 783439134 337089926 571989031 352978505 655794307 923711773 955788522 169292759 510485171 343717056 985644570 83045763 485645738 512180633 876663636 919373284 944819757 430552675 459700171 677128738 821820475 978849853 981365289 163464882 997839617 172008950 899491834 111079965 408968191 495491482 513807365 675532275 810919001 46025243 776581198 546871655 976363005 112399408 158321760 940638038 964726453 34079893 296571488 653779045 945645721 371092440 886227402 914810385 944336908 533426598 917631187 848076497 968632609 774813655 794899462 830041415 899679519 514217027 768683864 348198993 996938413 279202649 988002868 544107154 952259765 396571487 459216680 646350383 705327129 747194593 902894778 455590132 479113849 151558756 772916709 772043738 775958041 834797600 927654455 388138941 768206577 924316087 950032879 442566750 576068529 585381664 889719393 633005494 786403463 655883600 946347335 86790146 547788339 332549954 404234717 363098853 984096101 246089690 308671696 310092772 874368147 96168383 838525175 395231102 903702854 643081125 875035151 424068258 587699298 59500405 333316319 784723496 980756195 866142130 946045244 31952230 96409959 515835634 667927049 811238031 857890340 635604969 723394941 152829522 856066268 681481284 910481921 867683072 942239341 969918140 982626329 780639569 880010804 390338537 507371624 803032733 874289268 163313774 184602644 575319017 742927127 464210690 916979368 727105443 813085536 11833434 981235931 271023728 503505721 467697990 557255155 762210833 795262811 880903872 939775716 847877668 884694770 383767642 615335320 414154079 616735783 900713838 963484448 489346642 888906066 24574332 88198087 391607542 792212711 961905508 978462004 549947714 828198886 958146779 991934006 967301904 995155463 726026433 970622031 268693427 930275250 739950314 849494862 979756474 987994293 775648671 820491407 685025040 854023582 679264985 925199152 80893811 538686717 111451078 591656347 16884329 199405210 750381010 992111195 210057188 392265638 272138796 919399173 263474205 898402745 615794671 889102708 468889750 870862536 720457578 756070232 783630630 802827665 37391709 221078225 720923673 966764217 37457607 499167915 160458866 310123455 229479536 963137940 572721302 640329629 641141441 658221240 331401477 425791205 655955963 886378999 115640379 670418210 356946878 445036400 281871052 740884412 753592911 973570845 444077648 578448889 739472342 892181060 396254137 963586974 204084159 590921832 24986568 152930062 621347782 828032748 87691383 834250134 543731172 721655118 734912590 827126565 143552634 440922287 167175064 346638909 401956032 881997544 207707646 665480464 279203658 742879173 31589351 569310786 257691188 713895354 828059097 829245724 680963417 903529498 26581271 36199876 4688477 773463241 21090200 855439799 425652783 448399817 834773290 987005252 406160234 417732591 684808734 818527600 786100933 888440965 105800596 835055972 388118684 855866423 123034297 290249273 967818136 995638075 284413038 767367913 13301162 967484053 504302118 597270133 349839464 768764119 86327222 532619000 914313197 995833984 372078153 419449413 570148476 646581542 403826342 968566955 200386280 201566291 62729093 728315601 554425924 650672535 774568061 860586722 232699313 424672122 388075002 502294613 126675722 996853752 99252860 566536149 537566044 982678060 634539220 741640541 840920369 874658762 785760138 923695793 756163388 817933841 427625572 470088346 594306237 639419517 220977907 408651486 421477019 667607975 612116359 862780696 218168366 906935477 301211809 442780334 240958179 702106864 979408737 992663287 779572599 869098746 864879109 929109872 312145308 364107412 774686272 923916569 214482907 810082395 14123303 679041678 60333157 497014066 271196110 997083613 70015593 777259436 375558952 952613781 635623908 699880523 914385412 950421500 726114094 821709431 800372691 814557705 298688936 456561350 261545565 780401992 371202586 917933567 373730777 740050433 112989525 492158340 24218484 385973115 133911427 219638033 725093387 784323530 556404139 588684587 242145763 674623737 107527817 882553351 176881001 389252047 700869839 987002062 194794594 727584026 549950677 715161434 40138772 265033147 270194808 574390855 707103582 993458411 610527648 903406684 528209659 895818064 386451597 960913160 655944796 851163832 452277193 810356875 815210492 960301405 834594970 872995262 749153384 757769791 554474984 560528412 23578394 226668471 423101217 909764301 813424104 910756032 903351298 938660665 706575658 997749022 530658122 964847625 549856622 688935210 975843288 988243271 611340277 639608478 886502048 902583481 146201438 495048077 492723387 881248239 616608794 663830012 519172158 966442609 460580959 991268757 919768868 953210645 853118242 956103126 355467607 883536274 132739858 626447643 684907823 937869707 272619937 967756612 570908452 879210273 663563888 920752363 958230943 960228291 291970516 990080289 553949596 631549942 163264148 815460187 187930409 368018818 353957983 954182104 588390630 662820087 692532900 829188137 669459687 717126027 534670762 799110977 684550823 695102067 660945098 679925442 649002398 917926657 653730542 901028942 730209462 893480092 835534743 861076747 66361729 251276315 192776012 962750790 69640866 641951111 518310231 905643601 438577466 782350366 313075469 384724215 758614226 977468972 258698002 587925880 865203296 935249140 605336336 868117103 811040346 826598164 562766422 864630307 753670263 865460891 687136510 949516337 732727797 810377612 580508025 764887197 192124780 953021410 631125001 728481357 940099037 943248545 73324019 615016879 210261072 852574288 123505732 867476351 8518570 836349783 799802209 895525452 643387345 667764423 484517879 774600474 617825539 825022811 104348962 975073110 927178591 963091490 157178524 915379274 510784643 902750110 708251842 722613998 997834562 998750727 930762153 962737901 204667389 968778218 31565860 115015401 153314246 724632806 625479033 819181663 573814735 629177794 507387506 854537711 199659635 277687376 229644664 339754817 988874382 994982423 409698488 735541554 262752936 726753544 607057727 933643436 141522246 876495016 562089823 900644526 698034427 833932622 116500295 964192016 698410602 959682953 361289261 959160980 798352205 963731850 432910416 520327477 598854495 910388333 35768053 846153388 934138496 979146254 390158349 472026816 136270887 420390663 262944748 578766223 706455731 945517622 56567683 214559351 165210420 436262030 285223136 390345204 909426061 922556467 314928446 694268613 30306635 817511637 209513933 365496508 979180885 990763761 135401780 459664245 295486512 918922979 545557947 934987885 82705924 759695199 508822279 616728296 64406065 176963670 208013372 378512748 832455654 839772667 535815282 990306253 685731234 710234031 819926183 857600589 769371512 995508617 184148655 636413742 738052007 895412859 876460419 886076482 181834516 598594673 514060267 767613743 644142479 765133359 863401569 907148712 321098280 788011874 354172975 602970154 800326449 869808825 248604318 978173890 351107963 709706817 637858803 862474172 602914828 788103983 256500321 430124768 253074553 648769630 974374455 983353125 896821109 898939531 489684363 844131624 42034289 787571329 241556848 566894944 818747620 888137278 720816728 807172410 171443734 323582137 902470351 952941952 246142061 854219335 285580243 761091442 618952557 769193439 718276173 997481610 248812057 677834038 867908850 894585759 561553595 827150157 574136010 940028028 623919030 710337744 545259236 924121899 812649880 872482777 497092065 791653455 292162496 473033291 109886698 327705131 680790295 780664336 741967734 847254028 603065383 815519957 209856354 301287873 741974890 826278811 319398286 711701672 864395578 974309371 621688930 726173769 493027347 591903606 609606764 616493815 231168648 436653190 520148187 665893593 605768053 670976485 415355508 480957470 354474240 930140966 706014537 795186351 447146293 825100303 255750742 274793879 138129766 368662897 749618965 812880371 372861873 838831261 97476417 535146953 448199789 959896346 596171777 631685344 770478543 969410375 359657983 918938724 862311135 899733369 839316797 863168889 436768736 695280019 361658424 813434119 577223664 899019169 84677387 928722208 213231027 658971670 117084225 676765183 2356233 708212935 684200822 805795724 311441015 667840017 475661633 774710081 245412368 260425069 238664709 465466360 175693566 406085164 848403817 875121416 304372357 811241150 635179748 833403134 856333070 929609799 609338285 880500848 82523908 236533904 790982908 845229022 609236671 741578754 30200668 209110127 207595661 659683896 12378114 15202569 675026644 689451136 855019964 902033768 301186192 886837866 626062596 944802825 66205178 360711173 852497400 917879501 677239769 703566694 582038725 787482509 163170357 590807382 136042996 832323476 559244967 726854748 424123800 848771286 76486871 527851032 654674861 899968805 217497865 726197612 228385800 627331161 347091718 817143381 299668027 937167786 361087356 865395074 691745889 913183469 260784366 889173239 938279036 984035976 835613827 881634768 42266134 806250909 941970489 988813125 677310162 964956640 144508456 911903577 274657432 292298080 767595485 773971825 393478848 500807000 289010409 661909951 891937532 978896311 557845938 576431060 149717942 639446012 608036074 644367740 879758510 974064768 93568295 949344987 361274441 941315411 583541582 726412769 727265484 993635823 44086381 758689378 100382421 603078216 499372110 636176104 871062720 912107340 694976071 926580496 179741029 585354140 388643737 655707992 758076605 928890572 127412830 786901048 563251746 754369249 764585061 994899893 875139070 887122389 618021216 736830425 144189132 162194513 407499611 566057584 531986143 916196792 740870495 873360594 569604712 833927147 632165768 878138221 673597207 886233801 966970505 974248060 434278219 638735836 305729030 730471829 270340214 688878548 391805968 503477571 674903502 676439649 301618776 666788936 332171477 962772836 299289084 460609544 930938254 992860027 813724302 822648344 815413807 823508671 948126491 965234806 520495363 659343243 629889496 845694933 445060063 497134153 856044536 953758644 798830356 880199967 741598561 750508594 569585583 615969510 120188743 575670081 801203889 909089043 512630689 926499846 500007640 691811190 202208777 957470236 84801868 349077140 96307770 256153473 832521808 836997873 923790727 969163642 205515443 825409522 571500929 745711063 102533132 190056326 578979959 873635237 632620077 772820870 610069445 845957426 811679903 869437793 615516338 735896973 637602819 779634329 318473986 953270121 55578450 543597655 494477212 863972874 184596750 479757612 465798379 767496142 198086563 655151274 650825157 934095644 432501545 755402186 806784175 842820981 8941474 530035132 842362635 991240227 16335573 476807792 706841828 722822117 760254467 949145146 429008780 784210396 845143414 909768609 477179382 863723077 331836853 788611270 446086425 531363230 737743344 931901702 403392140 968323534 31863775 175260959 592085439 992000275 268832301 419287541 104065263 179211763 558611720 643331030 573887566 618757548 645902335 877872731 150054887 713341597 812093791 857877713 279430398 476833988 213321602 954426445 404327672 427840160 329383990 653723884 251329324 414818535 531642097 916988362 714588576 974586492 8597911 334699988 116957964 295045613 656892528 928806977 436607995 598501652 953176551 986429691 767559685 976931790 278983376 985197855 682369222 918184910 996245330 998349359 480643138 774178306 913811446 928574713 746716921 837480845 547649677 596732761 524517355 822399955 742675854 850377833 316683634 757288184 765105720 964521726 536083082 860775993 222810674 680430060 156444921 820074409 461064437 680206301 908616182 938576556 583083823 642594026 867166091 962376909 809562367 836589024 374344816 914206269 926654530 954227962 879144872 889457099 456109541 812091653 543943501 843505582 341067127 802219804 647073702 717273819 317649782 999029333 788887351 820234203 206776826 364392082 294478736 766684277 329906187 733053189 335316353 798267095 629535959 960013959 689943571 821471863 521246421 959202388 954687716 966709997 60631643 113768587 517348003 870257028 357334107 729873289 509003114 541794781 628400970 889529525 345993505 666261707 633519289 990561372 949712946 978399792 672423347 904153289 533992862 540537193 635585594 951320795 371087429 969399118 707409284 813900327 179399592 577011173 171138127 497530154 50588837 734904295 307609438 438254017 534881928 829837130 482254740 912882457 117421190 966960759 234132366 837578241 244230705 703632704 75237473 972220270 479934623 587776432 105691762 356280392 135286943 646874219 288690203 956547392 539431225 810281115 350747932 446807168 20021655 266559945 700505057 750693320 322616057 557299824 670182420 996540182 649073828 688777842 868312208 898345499 380048307 982649413 67356914 862026234 507233803 631798466 548568594 871200155 21481917 801436644 892693670 909055079 532038387 981817221 336829038 494953900 794379572 795185782 478661860 501761325 6991170 686509948 870989629 987564269 520803727 556156373 657540450 835211076 127178536 254863156 361465211 929059806 253650811 467528416 458621754 814589533 706299781 959309250 460684885 830229264 640100470 865415524 357025628 985614051 315366123 422503805 996430416 998606646 390719438 549269405 780736566 941550581 363169391 458096834 239472360 333965328 599827341 941972861 16942272 294023503 671242439 935677834 587580078 607510527 486422521 758537357 212425800 594556040 930277044 978606508 330453777 793549681 510279388 670442868 939016598 965496358 163358168 507142199 696692159 765397365 199585534 898070855 348148575 654201513 998498138 998843444 14789146 567343436 780440652 833061619 695521018 707396901 326356713 655388678 663985420 844327616 663202282 816127898 930862431 976125202 243290770 452565853 844454442 958385839 172310277 656638037 721605484 985318155 984798096 994332418 722652993 751083804 970999461 988561453 775033512 934598204 101498252 833773230 600269265 643736132 3524685 135675414 971479806 984116639 603256459 841889132 36637010 785137371 219505662 997757542 644656082 675703446 498460531 699525991 351795570 382064150 892554711 931473164 174027391 203405780 336950528 471809790 123679860 309032718 109815242 986254510 532030827 935168435 986838579 992807687 605195473 709793194 934949889 974704751 605835791 993018424 437074050 991034397 616944760 658386365 423129966 905021775 73502421 900982216 661004293 908583994 991954337 996733255 945330693 969479421 166439997 978538359 332967240 665430816 115359652 667194536 744923707 998053501 815560082 980949099 647246568 889327877 411263378 640672211 825210342 854608348 903242398 931461365 135395169 959336534 31263760 595786048 595100433 801561885 549508075 641142097 183404141 294687898 708016733 940571360 159991285 944933560 793786002 999082438 340698787 626549888 17486101 330943325 659663032 892556988 200130266 487064826 207907111 856114059 828506213 949934556 984827835 990125833 510041896 983184772 134327289 138780522 448889605 687924415 783802956 909228750 188661701 997911252 940515736 959683460 384054276 539601286 987759833 997089923 622831434 960371491 202341200 802137105 155315768 927092138 397525880 886649619 402589328 853054166 691720216 896355265 675333661 737740216 508116398 778213097 830930078 992648767 225970476 546361178 866439576 931851057 552213106 691682237 108761667 422479632 620149230 991197976 622479404 797591069 143523647 520010507 227327160 233634539 471526491 921128586 153237062 746503845 222486599 247434633 487317049 922223808 921762591 941862977 995837286 997838702 889556314 963064046 364611679 440687625 20859296 329833793 107799769 358245355 231549978 358077172 70694735 184068173 906528817 967363155 135754588 152364147 313715018 575163628 951321427 997333286 537229957 639163005 452016614 823236853 662652240 915962128 340923179 737970884 460800902 946404320 470265668 904850010 629933126 758806181 26478690 766976331 813295073 987647275 968531177 978481086 47095067 92437159 715677111 835167746 962552779 980835430 953111618 982397013 901006945 904791371 648972165 961660428 441056384 854016858 260290243 395889633 506351252 871030331 268780364 848115656 919727362 976077391 680322160 913312298 110472692 582682208 894769717 945958338 998818932 998920837 635336639 849792518 255393417 932416787 310091534 455491059 327434148 879512251 23806770 704427042 714002943 778067988 792416416 862692065 837406810 954131976 713436337 784853829 513045756 708560821 21595513 792850738 637107567 905409962 385122151 593843629 863173742 935498372 886081313 911246807 374478458 909515277 839821709 967073885 219735828 405723604 524876836 701108810 774946797 910605123 486725252 691574609 200407084 541084776 927783248 954438275 813886954 965987295 434083198 717473130 708102201 829713617 805049295 864959718 480063006 597836421 790343588 888739265 73750686 658575184 551737904 900599543 825410500 861772181 513678901 713231453 651726866 789185285 378290516 624164456 566625228 856343093 60735521 543285042 212872770 507796412 78377798 601325494 827478878 892416232 166149670 408641980 676187672 768524570 710134740 905536766 944113905 980037286 472759962 678625602 670935559 857551581 716559374 759025679 442121046 860996251 784352525 913000029 609151463 930312751 999205165 999296543 459822570 817418846 836020151 848846973 492272026 835894111 607992713 867939554 358026658 823587977 97271515 642888153 142013175 818414574 743592310 939020534 608221578 789683572 172266506 240558935 107974308 703150413 388389899 525396960 198309755 209739034 554343224 716734428 34016832 542959477 298870161 830346234 712972101 954286465 592118559 888253058 811615732 981594821 895582447 932998669 894223508 953026774 643107795 710682407 52056128 409676416 458406230 712176203 245703314 841309393 33675890 619980535 685582043 758439951 130958834 716205841 824703890 896455613 3475563 482195069 852860724 898826880 82290378 461278671 612711067 733893056 310846480 462451776 67540681 740085683 733134093 965820636 205967529 687099985 794291666 811100947 995148659 998931536 444684835 511955420 656080851 774168927 488385196 566876903 910438737 986573023 564454871 801532514 105058661 300751954 572747601 635395672 435887525 550368792 626255483 838955723 433207503 920682856 64121487 668031697 594099421 751918234 66402626 325279508 69163271 891063493 759860439 814204447 190614166 597297874 921717748 987495953 680338858 915307685 335415978 393707099 754073054 935838482 407521444 874241339 247910115 376391908 63388398 459989165 226791820 931974671 704378379 871643255 367519521 949420234 300452033 606949315 191601874 959758043 365156785 671366609 772988424 927927406 458120193 699004528 394215469 519659033 373865491 652957508 856092790 977666509 801160834 970609779 583008574 595579530 581836586 714604054 241631699 420785887 892311119 896632526 5977111 418585357 909996885 959002302 756127286 779809883 681700697 796563983 587537751 934385881 340279750 549911337 7327515 474802337 549238122 989674864 390836615 916608388 459820471 983201240 653447675 783376906 351275367 929631689 228728871 526192658 723309687 855952253 284464428 714774328 159881709 803414722 811792106 914952267 849785177 989729873 857754573 887872497 601689187 839831130 329369509 378117104 878845654 912577474 401415168 487294551 170212679 370423245 463166650 846653654 232277298 732398142 333521537 652417604 721085062 890380995 224132696 650453951 934893678 988020764 715841794 809288984 939150589 958218681 346492350 904031383 879234688 929653526 95489484 341895363 422781196 834442603 840966652 876844202 121892725 435495662 59152654 877452016 47113293 665460352 426460811 759595272 448607705 677361695 484990979 850365918 996970862 998541125 588347573 688661177 457469339 544016799 817434012 990378257 52058848 862884220 54754313 967655825 948570124 968582222 108712422 552204393 228139573 458531788 746643303 788636166 801040322 859593675 90785549 290447132 964658616 983434986 345998993 974258446 19512953 834740734 373473900 731228299 275079870 478442707 613228553 947428242 371747758 939044215 78577894 201306403 327955947 815798980 496374891 876249775 830149045 956263568 886811627 958843224 414709360 440051192 585294826 705046783 906141088 973334146 517130766 741149838 156638918 979472534 232662208 983516521 23183774 140888107 315282911 835433910 380749678 891057933 223117294 992979028 3682135 71840591 602569114 936252056 498948311 774185542 558559510 828062084 612140501 750307509 265596595 751490109 836729431 960767780 963687729 978664165 24729645 171566270 883868085 996050185 345146381 497780546 330746041 510528795 30996430 813673792 443355297 693083889 964172449 981072056 382176584 602634330 473418447 965104371 677698096 792527590 344514998 501230572 957719276 964609806 144483076 666402615 299081963 887594656 59835717 479324012 166982107 583846393 124545627 388951283 872563476 884784219 855391829 974525643 206488230 857188035 199529928 475998979 309202913 898968392 399503377 966140200 326165172 755067106 84193738 989020185 435405411 800155745 767841669 827571006 447331740 663438070 857734659 973170296 250919817 448699990 464642050 918686647 393503061 977285054 165690231 728028130 193297331 966282232 686148585 698065010 367405767 511506559 850315555 879573550 424771265 516074452 870431909 937138646 16295027 525626584 370665346 844326399 974657991 982587625 591001776 774049036 138447880 804292579 407284936 497566417 941170622 943796294 955036575 985085392 311543083 511290464 266905543 608492586 426052109 978110624 230178381 768091377 501707686 878131623 771446874 947145587 223902049 705304321 604862300 787819897 406135485 661920580 995536200 995592422 724711414 814270939 302378031 503442254 386117094 543297816 305405715 586322400 64444162 91033439 251773364 616899795 197171145 973585123 536828825 749796350 553706760 971142658 768507147 989479374 788784863 900866741 914165280 936174494 26197360 595436762 121172224 207681901 437824651 915078301 5718575 26972458 414774771 680336156 821120480 968372845 737150978 885910621 899167806 914307416 26986509 280934004 796628770 908610221 281070068 896308516 998425485 999358024 258512708 755469503 734251890 956466593 807719501 958871049 837099142 881530514 799020212 944666699 901757874 910045165 996140306 997363504 626609206 760785650 749989620 887815502 206134560 522259874 725344192 775360752 135803450 274582402 883931323 898462758 606135212 951662902 114853928 364931487 589464643 720735093 369729535 845703612 669882858 991949591 11109318 903750792 863339714 963707696 775985249 890372810 256546584 509519223 808503097 970534364 80916571 473536295 973411194 990302776 196919446 389881592 981953346 986018685 906259049 956630709 984798395 989139440 652150154 755515075 400627000 861786228 560034162 891368548 4989866 832011405 407638657 436285491 690935673 874081622 836378806 884615035 117855045 437554752 495461341 846801098 433827582 742844283 444030604 528448477 510507012 753834630 846254348 919440548 316839994 560422560 636042484 694418528 120445153 292581599 284533333 854285974 58568230 926240464 963665816 998084819 464240139 969682677 88113502 984508643 666713452 830176996 833743778 922215274 502516502 555537695 294219660 713993216 706057596 720883432 183465027 584877370 833200984 847548005 70837119 851324234 616461154 852077999 755472069 897328557 109929871 409589602 459399245 992567888 475686289 548258153 393370871 485871768 147934200 878773836 467720467 635303988 290592773 312279519 29053202 58607553 33985816 504506369 389885162 669875436 669131323 900474460 883093823 971348394 222846498 292637961 806069109 830864077 583436751 924946052 657816860 976955548 751610552 801554810 508636553 513482709 177446229 839572696 919531182 972121803 756961181 992481441 218657334 832848894 871230681 932327627 165694413 452100240 610970113 712942115 680933396 823344578 978139042 989023162 987791182 994505570 585625151 707215427 173917289 745643234 474323539 673105126 441084211 569989232 788176929 945951901 854552504 922801863 404779674 901816257 128215673 544948970 619232727 636540051 682874479 888039078 264052301 988711995 133486315 295312784 900075416 973479604 812033557 945488941 233398113 791124812 967520321 969154548 133423956 202979271 342936996 819073788 96405051 391920479 319017660 814533728 80720488 88255580 508895882 601569666 384597692 976503953 623052285 906191646 87365639 211724871 400057541 929521679 148237122 745843164 989827516 999075316 191194198 287701554 170595366 297786493 607763158 707566786 589742512 821620257 890922692 978673557 164272995 616210357 907318702 991175374 37851764 112557459 126164522 975891286 977784634 981271072 448883844 597347094 125427648 983870158 642047267 751020587 456930367 650213161 939184501 973268373 585701657 727057695 381105774 423257741 44799997 397286261 652859907 995875149 247761562 596261708 829457133 887464237 840154467 901223169 223487547 975793816 650877991 907942181 956403713 968883622 992092449 997653648 67247198 597506379 848242040 980091955 296261896 892471380 958278362 971960221 241591161 849029943 892166889 938111473 327601993 818698066 702114185 995829958 720670226 955935253 160440664 410760466 812444249 964977892 158186055 217309751 995010322 997037898 705279056 729206707 223438602 498872209 360803519 600427477 390704259 446412420 849875334 990966822 150454042 857470095 770859755 983937202 392984583 825370730 255652883 349760173 927632179 969994611 217220832 232395922 263572535 323981846 18860077 753559449 234425076 967237347 238605785 259721818 935888858 982744559 489743933 587189632 277127413 612856903 692528120 813015371 416526557 809527929 148030951 965574761 678951248 826635789 96154517 712960684 250970349 790916174 688685193 960736095 861131891 956410293 37868134 137655498 566277775 591050801 264188902 413781190 949264805 992828611 21325658 739083657 594585827 746188411 287690327 391031578 904832291 952916568 692412631 844144858 701189672 865192081 448213063 811136446 864408401 956334664 93948728 475848832 475400114 636917274 744424520 929017900 41297491 99736543 790481316 832493511 566245895 634396958 287809734 472118467 242233102 637422675 546048724 609432774 923164157 933709605 833610479 876185213 106849784 629790346 661242305 924737123 52219634 97290130 431002331 543937486 831064023 896301133 568841742 668067936 919113546 921891735 428280120 749779328 341417949 382100058 711826753 938755444 51131185 370337178 899349588 944914264 802248945 934384743 131613607 475923130 381118442 822046200 83385751 751775901 234852081 308178311 698623174 924279974 684608506 925041008 360576845 562485991 66140392 898741782 157305704 485555648 691323636 965647364 797670621 991778721 594787370 625482330 634034524 670820579 426820131 814283825 962830573 975728173 138856092 757961893 808537029 820077242 822750914 869005621 30407332 60779606 141358292 860963271 466083907 813682395 401023755 580312459 655488675 712855173 794503511 994950436 210940363 970199888 749066399 768911595 181559582 841453500 769391098 780890268 422159063 693857264 992025265 997185379 653193717 732900538 358910278 703130499 7033588 677791625 594995541 839430434 211238387 521697255 193779905 627270501 833071456 938655247 131119242 542565404 352011590 560404223 928138565 944732060 305315856 699798682 345541284 701835071 854619707 909358966 397669514 944641333 147378259 177828136 379976833 881683212 782925068 919088602 916845938 938901114 807653883 926551503 728004085 796236698 387387463 969696843 874257512 916246268 743840073 880423232 673897356 978699177 635768235 698028160 452438036 827017688 133321686 579508505 380773507 736333198 18825430 615108331 5880905 695062054 335576701 454349824 71606585 517149135 473292350 963955866 135383491 304143416 898710160 980109165 468165780 517749279 230298410 673470976 312874585 363109869 671792347 889454848 75891021 959309150 748075274 866642509 730088700 866740581 777627126 786337218 781453946 981767490 685169119 928256114 746844304 952980359 15212792 236641048 989276834 993478173 493807511 962478417 691865586 793773009 814065323 957859672 728167953 910239521 278461788 790176432 93533183 879101703 489539476 794625396 771168779 807908553 542023669 788718355 862273333 932564515 866355698 868512235 84874104 321705731 2271039 885893065 719645874 832724926 884943180 941343888 149008528 968072062 688043867 981057280 650596047 746254576 314623422 346520879 478706137 726347194 328393891 573535180 468203474 835947299 870969339 903660846 499851614 690476243 284843591 400360695 285679157 950601631 383126893 535608196 368951154 958029066 129788515 995797353 507708726 540061485 828157462 882156041 762457707 930617550 271793800 968477039 774270067 780728972 322972662 742735193 393280459 395667381 966212834 980645079 967171346 976573996 472064910 736666265 58154274 205607116 153428119 336837558 854263562 893894585 275338695 846595023 590076169 983762065 587443719 835108801 56593568 663509164 820690564 958181342 702305145 768031956 433536972 504948518 888362041 952933672 855849057 932453927 560805765 904843906 21943595 349910984 349116330 582482328 70336973 361267126 616882455 797864846 922485039 927526799 556903007 693887565 959077852 998377182 352323535 828661544 38974463 957014202 802505454 824248823 794086274 935166571 543544565 774955799 917976861 980439069 461269963 764493049 429718159 821483011 331262334 762245069 589832042 622738309 671989218 962504407 914140822 989985533 768959762 921937091 348491697 655652300 980796548 995665977 638785295 758932951 916745277 987152229 838885952 954266202 493683272 660403817 69522779 920761100 154159110 953851339 229555278 324413895 426016939 817741085 228766125 553801397 724333380 887555910 212461378 956004623 203464039 250111793 451606249 892389044 125073373 614536702 342649202 391938118 146850972 938167793 10810359 201569424 323447224 737406543 386988721 699868414 154889531 370955847 106212323 986416964 484939045 888966004 729162311 764093753 712518608 782993592 329894695 516914535 905193881 933105416 184819095 826816476 348226433 863856382 58376680 371038110 606124600 732028850 547853148 864843407 965166517 991698910 890194759 951520627 720821507 876256766 717555699 980130080 378485010 744528633 782289214 839906457 5699640 812724144 450592365 613312934 362947157 733675480 490886674 622429988 312355226 492177655 174034933 791338872 778760506 926698637 978073523 987144587 787764525 985619484 504924351 744616135 178127814 501694222 234039676 906116714 160079154 359086620 250911000 942966730 18887540 88254258 250845734 432135527 989505616 992372224 679544594 896358041 268412374 585218857 513846059 909321793 322459304 364602742 409304937 440792165 186697861 442089405 56893320 595208606 312085401 966677506 409729428 537641950 529430422 616316212 181320277 518462125 65508776 987286165 477746817 999014916 290857083 992122444 913530915 983583003 568933337 802279154 444739480 670139133 564405783 704182292 204243339 346839439 398857661 638963866 446807684 530968704 273171680 339289372 647841912 808200125 575134658 949154002 667626812 927438002 250482321 723061725 336628537 664814375 94945900 589688064 192572458 398755024 988697171 994332716 990681527 998578034 5399345 879827249 426118019 763359493 852746362 869743081 534188053 637867461 775384906 784371281 818652754 920898940 449849585 929783033 346944140 437425819 805496597 932606714 448890076 737611818 862620618 932488079 243011270 582180501 984447679 984473242 229646393 256781354 498049956 916643750 946800132 990043812 678286568 965567648 211144654 700351300 884816858 983105414 757996401 803269208 456204926 932187436 828083968 971926861 461807286 734714151 826077517 850828547 263593972 842850529 231530733 993008832 314259086 423046864 77231096 387602998 433102973 611138455 372754672 853988705 533932858 849419159 448141847 482010570 102728627 669831360 136318897 206429423 931588093 984518787 110000920 261935002 150882337 220336995 109796056 778817394 330598080 524683818 950208024 988864823 834262208 895951531 322582703 687287568 789733471 818294903 346705094 379463352 727076891 950844584 95652888 358407142 166112908 477087125 762845115 764797746 352212228 922693860 620079556 878048090 93167748 911235742 783328368 859595288 104967090 368175385 401669561 578566990 722696670 793397535 471890889 599653276 522144879 767586918 374677013 632110242 844283637 960442153 497489230 825036197 970583618 973938225 550131632 663813201 884135753 974114248 431008174 446767152 699086588 802482437 930244245 968316083 149037239 937590297 790525917 795832369 953133352 976724321 420591179 517111216 735147478 767341172 367582682 869505726 755969935 990537006 478263805 689764440 651080305 703176063 958718933 983311028 764224768 782745155 27754983 395909073 917672282 982871573 594843373 964892682 719530790 750990911 859172575 939414308 87290704 978094130 355646378 910186699 60110937 365108856 138699070 183605774 852681482 972524471 835187221 994703658 16484913 994975146 508901608 654909223 631955686 838910632 732756247 962685827 346262796 459221650 618533286 749245065 695766168 841997162 851846084 921065109 779497542 962636614 800803447 857650707 152916235 830218551 581174989 609439796 495604028 670337514 398176368 452361485 396613551 857705237 143209317 217688632 903334772 908071798 679322218 781722323 878851160 885799701 537726627 931718214 49861329 526245891 662661071 839152833 718200103 901902130 529646439 942758087 984362361 991312652 128690321 362792509 919081171 982415390 337481244 635596986 179172845 402788866 7326584 497417497 694871296 906028034 110253135 445655176 324040137 529482285 961983258 995355793 421660814 566022053 626449204 754029157 88738458 923411460 566628900 801100028 747471557 776041655 683574083 714497000 805422814 958960391 735967286 915063154 649756246 655112581 256007547 841279654 759351627 852958223 536403421 846925138 184665265 434529853 203908159 457691537 281073755 779514012 544550771 576231471 761786776 975436496 834867307 921905042 535366866 855486875 799428578 992501108 803102265 858094894 294774718 967245388 461603859 977495661 545203937 770072059 38443470 522310260 266937720 780048016 345104433 365740641 6744816 559355194 336930742 840232455 173513618 336832362 665508763 926576215 30230934 299252508 723601782 752026060 404611842 771324572 879198520 977065659 969776177 994978892 328544182 474788416 479451722 599814254 839488328 915275623 243165807 615336976 49127243 245194742 67133895 98669313 472729835 716275881 494201146 826262755 702787325 937664968 845263812 979045210 59280516 286756186 422380342 519031184 534033953 725742371 409500726 467472496 138145552 289627360 588975932 989747880 437516755 802300691 239457767 266232319 67241035 753269333 715797418 858037577 417636895 679884114 599633625 694793198 42056982 435903421 237368369 299999761 393893289 504633027 856823029 918762117 810788686 973230760 904602106 991813264 150426566 716185273 724709214 753731445 917500232 962491799 359349207 882391138 310767919 553150962 26802085 502944141 124766793 396090860 711998877 952697780 160595839 953265325 671972670 815991666 679827728 953863752 815313662 846488065 892153634 995536680 981732567 987729909 794902071 884563278 687012921 840956060 521001974 988933688 777746063 808245531 834509234 925241164 194502977 375905684 731542843 949830126 524359882 923239804 140593353 854554741 1361333 334529469 281148008 812718189 164025908 381833135 231867373 553677714 317165580 478439040 944630636 969172482 726443466 843434614 343225307 609606189 825763695 902705511 783350176 884977036 979173771 995484727 371006593 621709246 287353105 417582905 948637125 999348602 812942212 937761079 368377168 421238541 542868419 675899165 824656633 937261051 86558295 566460197 280982770 956945269 107594524 111445521 208695687 405207082 719147280 852701465 528997723 984287380 989580354 995968217 633667424 945448521 591486137 969396881 356295429 588347932 869011790 961313307 490641719 658012486 560093463 782759582 338436415 862382642 542694466 848265610 379190798 471256476 369199143 784225332 135744081 945458026 963896944 987383274 438898190 447724153 283870323 471436720 964846311 983821397 947244948 993341485 102766110 112401165 503225805 862258352 611209805 962886449 900623246 991359409 43492919 293072135 90751479 435268014 470625101 503877558 375547228 626538627 632768227 970932978 917104801 987267799 103100202 988927508 148221699 956308501 439161129 708666406 559905185 845445807 569442780 607802299 302346488 587273991 941664089 981630745 795947203 901050617 536883273 980618652 391033179 493716757 463543698 576467401 896389107 939943932 865677886 910332051 238539544 292269165 569121738 701241713 543078939 621493341 494281163 573980869 298175555 773225758 831948139 974977508 761819194 762037320 990969291 993805278 891592166 954851182 676808332 921795439 42052336 114895917 852735376 996601795 971888934 984609807 320212653 841286418 839565276 866055068 349576833 683146819 754921385 827891102 540149609 859582920 249239987 626615213 809781195 874514339 109920709 469188782 601740602 818138035 678340518 687508832 501048436 952564815 565762563 723035711 520909439 896102565 227989647 383963636 629970599 757131403 887014438 912680153 405306298 988755876 637263934 680093580 39934992 76727889 987446173 989833958 735232830 849845229 107729739 548305421 957910702 990413647 560502449 740119355 625950348 928335108 635192480 866225185 269455751 326180067 676033674 735129545 443189692 820569565 77105354 282448757 918701138 996272281 130407702 648402150 678807935 842561231 893941391 931332095 236831398 919902462 71644945 138203605 516642687 951386687 277616595 629675658 455037472 504645584 797106328 967636772 872592322 884732571 305601384 484760680 802803973 841588007 115928116 952711091 508556776 630633104 864254829 872251638 733562729 890951318 315467818 334032505 150600230 671795251 116827964 471097728 955129143 971537982 774073197 936741643 270794110 755639375 678187167 695188398 340704398 588685194 453278096 913655257 283028974 377019157 2041667 805273941 245173934 779785049 244762494 952436091 876527360 890961829 994919044 995819520 24161502 693966292 782754015 861818582 911676681 994795554 692231514 852257472 124296693 168462078 300282229 599054761 361090524 960960767 212393723 225040218 181076510 896203609 861134194 902583978 578752675 978927941 232894283 701861188 239002891 500220626 683897421 690408894 973711294 990608481 874634464 879126963 639509190 730962383 9386049 850599282 926256200 930511882 375107124 915171253 838123781 984123509 26744764 374998666 812831913 879677555 213371329 259357188 949908860 986721588 423469483 598092267 949583305 983198614 527387755 660568364 481894130 732544120 65081022 831212528 233574224 386183309 61990307 249149765 41459864 497786893 978404462 995843243 550577965 751363808 766883546 822198047 536724342 682795365 312474416 804376111 450292468 911506166 655792876 891227751 531547301 642894653 597293439 655974799 379654766 707921398 181676879 308735562 942958589 967723164 588183492 592919617 484971309 865837851 627178186 737942468 758888388 787730167 944567400 945490705 619545654 788090631 195977103 728189647 684037803 833477632 535251090 817852614 946725990 947363457 221289867 436303110 361303694 770847004 115272451 314654914 392644025 476694369 705771091 722076746 910042634 915970149 270091697 905842035 965669241 993262488 325267599 642532157 625763631 921551752 841857038 926909424 579846231 940502152 901497847 909120024 759411260 847596554 388182918 756676807 737522516 979860905 112723547 921965197 488534715 636239984 398719924 412036860 210749162 665947563 885262874 933054030 627026856 752337077 872061420 971456172 630672846 791432855 834496388 879897961 38887566 393276011 997251610 997858825 587080276 884511619 701183333 836639757 950886830 971209499 1129646 67484403 347610201 377545622 164498455 493438443 601520094 919500258 489644133 729770004 923049383 929599862 336841771 814808652 777029151 977392874 226278430 256404411 912204195 941461784 625514397 717690289 365334529 567188170 278899545 783057570 205479356 836808953 777127582 986898899 54826801 760611458 826285391 986942396 180539329 226314245 297712212 975958336 159436565 795204874 859554579 903932777 420886425 855738114 797495442 800767592 256870245 840158509 718733871 842893505 971533497 984389374 513030641 923935789 92044197 456398632 783675525 851621331 138612489 394041061 269510958 453618582 872194088 930540495 655003901 851070058 732287203 925831238 661028962 834742052 623211940 682308378 787041414 855484392 924895216 990745615 14869936 801437424 51010015 860593902 634470547 735344075 787550219 830748931 252384350 995949976 723180803 830472666 941258177 998154058 373929584 629947257 633869440 799447463 473648751 683987158 500888090 893326501 300261580 765006752 229342901 571155595 633759867 888448439 170136794 792278952 781329260 951557773 463930568 491316238 635354119 712136497 344626827 412603996 773540062 889474975 722459827 834201542 615074402 952347824 412443521 560886023 574787120 790225370 761125308 769001533 911938947 961844099 160059012 521945595 612640845 651489520 733523149 784091041 586466682 879880462 718260081 967323701 67787611 582091119 544871936 703270467 902820597 998102528 341868411 952608436 322598868 974121728 982557711 989949592 529603711 619213762 851519557 973525029 588787854 859500234 802629854 851393455 19792218 583038741 646554277 769024463 960079339 993038459 517643731 839828614 797279261 872986272 443772880 696029160 810525584 810644186 458160976 923623822 36512121 662505462 702661999 949534028 433187198 439980521 571903100 619274392 114654718 728421165 544547900 565338296 580176774 695332410 907271644 995895322 905310019 906009629 57515323 440756428 177542065 345477490 203180741 738275298 776100346 830797169 197946640 525914926 102481407 516773578 76013864 685180030 704177726 734967254 549788402 608543545 802588898 970348479 671217498 690762544 655138895 757642195 717323429 850726898 731955475 797812342 546078213 677317737 908680447 936166187 877903109 885336743 166261078 233080651 907116957 915040766 649585176 666449642 391939203 673241730 857329282 967361245 534894151 837630005 527012435 688987745 238904849 835632678 199992540 724010601 547032718 974909624 379927271 590432158 152097688 364611504 777616028 974516951 737683756 819240384 90685895 301706704 267934159 470365920 560393149 992480646 614126175 615766517 307517419 943499793 689948956 930513453 111592489 429957474 13700645 490999476 348919827 600725320 831386430 928164851 847824539 991541392 709283208 993938484 251606728 490459680 802351600 931196528 679162845 745847959 488623088 973987363 689694041 695130672 555410489 561866977 198851845 804243993 138747100 371424685 775048005 878172416 595231867 663467955 857112809 882524453 87188700 814624664 459202028 604430996 614572558 724144490 262721525 406008805 520942408 759614446 773243456 916967731 39224316 195845212 238045577 709467778 688685610 848438889 456030006 712526793 780661948 781119815 146166896 581948855 895380973 991495669 195308059 686276135 440162215 850165281 77128057 156011483 396128335 843969635 177746502 544382498 663274514 932066656 118337358 198579139 873852463 999053066 872665014 890773112 771099542 801395385 902860066 965717812 897127626 973708767 75017741 638172884 639600655 814028722 105349997 504526360 45444979 631381076 255488746 679486603 139343422 612175589 402689638 555166070 404927563 877179987 135769742 414909143 600128455 957317273 696622823 708051720 117523574 696451748 19801297 210629027 825169836 863562255 740358006 822239235 853967640 855937249 608506231 683714120 627587391 996136923 978608731 978796531 935375062 948164476 233540569 252035461 725180594 784609389 718227915 739939672 705502179 875216968 50725123 930268649 328393463 341435836 62832263 259789563 545305897 638795858 115261616 307603660 657632405 785175834 136299123 314665003 439039385 915033055 68736221 700691771 627540776 763839888 703360227 843880823 536951497 898782762 129529379 951056478 133380548 278624260 333969113 897674198 828003106 938131492 771944620 796726205 357309731 795416179 34616373 365347300 247692528 401861980 960769905 978471420 517316595 647238134 695310177 879473780 498159727 540468343 33699943 476091670 691839385 988972179 87147719 197646506 566717181 609283339 776117821 865441334 558748417 611746367 566691463 776531182 503705350 945741083 254227386 895176142 2927996 657635321 579894025 799058849 357743082 701335048 501712945 853852705 799107912 945755713 738004581 954989656 772075768 910585640 153594426 737139388 663136179 865489360 794100419 879330803 621805468 727550091 874921471 886106132 362295891 509142917 499614001 712313927 951167570 995142506 576709424 617500721 421684557 730301766 633918617 731150551 741313489 948591128 565129292 742948220 713836018 938861032 796967217 899616913 944889984 957653320 626992872 821411240 524076797 714374545 407892477 839751996 657134780 843062999 360765301 959876656 59256286 576501582 556297944 627399901 897391182 998452849 557996078 996807491 210884150 651445362 371566004 715604428 841962102 904988932 235167393 922135599 733646966 948566879 176056218 666663440 730712472 895489896 306530868 978131570 16536202 572888018 840773490 947192438 203230605 861918515 833773390 963332004 951498500 975648125 559084705 741652574 244117825 701718806 941845879 949951178 358061590 953429199 385525597 915681358 620461694 827473102 57732245 269646711 797905186 847901608 41146166 331395379 149744682 779096673 111307740 781962614 441373173 526712049 56175889 848369572 285078092 543678148 440782877 826183397 814105738 887235356 807448866 858415597 415646339 707552197 59417107 728328746 54143311 284714585 162441238 317164290 580840769 672727729 975809530 991530888 463564438 854162658 123439391 326205607 45901516 494565581 87292302 619283591 371340470 456534814 855749379 939323556 399734071 802927154 276945043 864856303 966996770 981440640 326788664 402764519 352218683 948972585 922479568 972931999 271776271 576625667 652459216 837348143 935797607 978308688 710854737 792993575 656574517 711031906 26436136 269086088 751717137 789653711 645578792 981241413 375956019 682300807 850076086 898641688 288835391 871989616 823854711 926377822 627947125 795048084 420393969 622635192 429330113 679825529 63384673 920825143 169402902 679905473 352410760 949612668 691547808 957181383 282362818 834514307 129007454 990000770 372962267 542708262 652562181 863762241 483180223 891368079 701804667 743159202 651383099 959209050 152738117 831346264 673825643 875946449 408753386 471483345 735037362 882911032 870093162 911592788 355659418 882935913 526386808 609971441 991371985 996343188 799632539 943286826 580517188 830850275 652705571 794567220 794711371 833784938 330676027 541034497 657620349 972333120 758758343 944013579 516996320 686464862 481955524 838602307 864755662 869992984 495731468 809712216 979395672 991739301 813731565 943698083 947239622 989938931 807421055 940366347 315725250 491385947 580299524 674377672 696257824 903748899 562786521 724346890 288030772 831127270 560696407 577017114 60792183 993731756 413993092 770196276 48353691 313441246 335311079 411397137 612675068 847435176 645547617 822444089 241545989 290903158 807419630 892091040 381469557 571014595 210836916 504018566 933436315 972641750 585419366 990146598 508865091 823062283 148840830 828117267 935505232 994219381 884974288 928090315 393961307 420374884 409072609 557608627 770858634 908376705 124932808 289430824 641096390 690242725 41240873 281675537 198260370 704127820 476055513 484839558 471062971 688401657 409303032 968822066 885025623 932754453 153085577 980893598 880060285 941684461 270781472 463818251 522822820 898256089 70329604 781907213 981805882 995720031 44259467 68605775 634780109 730285166 770044550 774610233 253167356 678990576 770343553 868769470 604516497 708995302 435807627 692774878 97605528 286817486 21494990 216273864 761896756 918984778 944857888 997507339 438817177 537082808 151371156 640947484 860109268 967704577 511276707 573169608 31323405 859143722 539302619 982210029 120007719 768890961 661141959 827478846 926632723 952437419 550436685 813758405 863788057 914948090 178964779 659161174 211912321 844415238 109072675 752882788 833442138 898933151 151394326 830402209 410619892 577055348 939556985 959767080 503851979 926165370 797932411 990018131 350778694 460226928 965999263 967157388 748218251 793406791 392401390 938290705 724466996 842070827 605782100 731052437 459108435 540515340 677951192 792478959 93876612 505210315 841385153 853290827 941953 583215683 431900150 563237803 18778300 661964618 17089829 589419635 983054562 994121725 265163619 672150460 836856163 900542673 165425123 686479431 45439955 540552796 670230632 686694245 82620267 805075578 268495271 629616634 207024372 994674845 159483907 311593576 230388778 270442038 544785983 952778060 997285393 999329888 27762677 465109679 520053740 665231335 440564839 764569808 327614232 812502271 216794040 631443545 108893979 635974538 475031392 985478898 589506891 609002999 91396427 437690284 521761267 740327846 907197747 922075001 50852325 377586198 967734980 996980884 798183487 910018090 550682259 820530346 47820292 811963786 977572456 997392197 235071900 256732661 818030039 900185849 247016413 521085142 898871313 915802937 848804128 872187085 102622637 902643017 22317958 950884098 368937830 631165140 667132875 857487143 20138332 29951305 687979477 908771051 100700582 819677226 869591602 879876128 624027759 706629885 846589502 977220771 325551310 391182712 83377600 274377016 443657898 675385154 452799030 944121532 809994111 994497193 304334922 362054516 396995414 816219586 281147620 437285281 934972643 975265552 471960294 910492477 575008514 826681166 89206470 144079101 622837314 953205848 762900780 769629419 441567320 860493675 623802665 988614120 749273733 934342548 321445648 395425364 489477593 530678631 618225934 886854533 125566399 204803110 503365675 673842906 231948183 820024496 352882501 649855882 312955163 553028138 142550496 923905578 243533718 721482704 683347802 738617416 537518473 704157699 278822863 573052138 835596604 899596460 558230923 798580593 703072303 746398214 888682532 920294954 258480855 814892033 58449854 461100862 11684850 450800734 97827336 307020544 601653737 765321151 513277 473114184 540313764 586188841 966157459 980083650 934290462 961306361 262559490 460660361 59044518 197791524 669490870 729585938 668026224 884340960 346628677 658020460 722920295 994146698 96256351 201763469 836404649 939401675 215981564 766761442 128221769 485161263 224695409 466347561 171190127 237081854 851267533 951085858 763739167 930693684 155381936 362325142 702955809 820305581 621368387 671202474 362225087 637863288 151912293 222421782 567749526 709626429 501524588 819638807 802607592 896427436 125315786 450445601 367413952 912997262 262422744 974854549 203556000 532033551 986096389 992791031 920941366 994704391 971228056 978897347 532209905 627211851 461912442 634219284 956672075 999029363 777660006 905144662 47460137 555852042 828607060 898641749 30874673 931808845 414987880 553212071 583831732 611550303 936873601 989795095 176415876 326911239 175555555 931079708 365135307 546220754 559856357 953724452 508739943 965193891 948762978 997205867 441229581 742410839 801799232 974012791 260843426 431451611 336522853 463194546 836596532 988125193 113677825 944528858 765784431 843737428 526289842 889828723 112142196 147804260 907222746 913396175 872232402 899052515 676553784 749261158 104891537 119651409 641400095 732518128 325124258 973349452 909007434 964411511 193308454 647478760 553055195 612180674 540528156 659134822 703473779 907408489 341855484 978922534 644076114 882788715 67749549 632185162 631181820 950137826 393994464 956882970 792917671 957596995 705358154 825413232 116600296 179837611 232380290 574894808 870098150 976561755 375394069 922129373 710879412 940483146 855000860 983719237 514423046 885746235 665556552 828315126 608143846 930190034 660603176 682748739 164849515 743748134 284338 206078719 73392742 765930485 989784106 991753667 762150920 823736211 544267558 795941390 836956945 874056628 900300631 973214438 329312278 474887165 218164290 986073794 852517879 863812717 780481439 843808775 713213103 955715624 539544492 902318564 268957358 381071715 710476520 912239418 622541265 930884312 715295685 781469561 253894456 516262300 752868702 860503284 302803185 725517465 692393886 788311800 823804890 892393858 188036125 463420293 849988981 899067464 203880680 432899505 574683958 689435852 781193845 979900500 838352176 895921084 288900496 350615081 479084219 648422492 742684889 925683252 477886788 872000232 776067507 839071874 699932266 827900869 935402349 962690668 934856564 998753896 969103664 983534672 446084545 784520902 37232263 923792592 226429503 633244104 917835056 924186522 579961239 910996161 461220434 621564351 858510731 934331538 132877862 841677617 962042640 984337352 467537119 767142451 275283248 594501216 996073596 997674131 816343471 932347844 645228542 676113590 485145182 771933837 741755999 838717906 116033626 219135694 857109104 964226517 837516420 886677492 653941029 794611120 807129050 979998526 786548178 856762022 192071995 458214228 855105357 959973813 806628138 967371314 852591804 920021413 753462383 942113935 98510888 867727169 337680028 746504020 415940686 932985886 657613938 760728473 546841310 563347135 195164581 589066081 913395808 972325058 503224002 826113539 753637582 754356404 478857658 678819006 78428355 753465585 260222725 444829107 418993700 656510044 980194809 988074459 757245387 924030075 306534464 555498012 424750329 496476658 284695819 749837907 170233902 535871808 843244596 943201967 70480967 300515532 122128992 577050453 272369990 434101038 744331322 787097615 924130541 942181243 832612742 849323588 555334529 765213937 351771576 938607910 662333985 765455808 693464979 785878399 4868346 630709189 945002139 947215543 641916108 840182790 119267778 888960742 688520100 823840493 63945847 462478033 687169652 877825860 130566766 889748045 82509419 417378565 112011939 289464580 977346576 991970584 80780970 612786311 499125915 622769393 770696715 997098360 786205882 842509494 490192870 718280470 865468896 935305389 924039015 953230503 478770607 974109519 430387411 506476180 215962336 958486409 345400566 973455232 480574514 895991202 284585653 926672799 664622992 777366892 884423495 953298284 331802692 495971429 834317310 880998655 413592961 533039021 110678926 616492087 225629165 439024354 179069086 583905225 649544257 983887183 619153833 820126947 317831961 391308978 190969925 568977619 769955510 985272601 908228879 959457251 787889600 838309796 14367870 862151931 974367833 985326113 982518338 995208693 755423793 981522892 880244089 948579027 288965568 365539922 635613359 800317518 895549237 994031395 32232437 659357540 315654216 850774641 779816819 781460932 792839746 960983304 521063674 752348192 408287901 847367653 409774540 718187283 805985167 829062806 830201551 901213120 689575668 834627509 913587789 956833228 361041148 480979797 740244049 804535270 989738542 996151848 699845672 736504952 540388182 611521744 615283994 733511379 601290559 958723115 290423529 599624300 460112763 752578119 114850783 848998354 167624355 198524077 960986070 963087513 677229959 919274065 132187055 141892163 697886073 934195869 88855851 391102243 284751362 286359827 870282343 938208379 829945438 973405528 431149859 527029696 152656953 640434983 392117882 401777798 83506265 134775337 184679467 891556865 930318394 981069483 105546202 326530118 476586012 532497943 113570511 585726023 511430019 708785634 441003838 665196527 639981667 728956655 612937543 755295872 356579277 584396694 620746663 913490552 821174824 856105489 583216882 635066041 207195156 927465730 283715850 945006357 317705496 346232253 535465238 614215076 954648603 983821687 823736579 915770628 846028197 900478602 599545190 950951132 113802085 833757509 632585394 691539337 613589659 728354646 12436286 745334077 125026317 358492127 29049767 616561746 795905419 955969695 161184728 488345237 783714679 965539924 644894940 695206670 263827940 643408060 633604680 931536981 509723142 961229177 523371196 985806003 238704131 825073835 762798478 769307429 776340988 810690924 504556988 976665559 35619623 600867464 957239547 993636012 930152794 986592749 64861728 474092228 557127429 929101687 790661114 847314605 560801195 910673644 894817011 979676361 12218071 225027107 252927971 272769718 274034148 976685493 229417824 719048276 649936050 962099405 366970733 644870889 648905520 835577790 961840198 982437194 923381741 936177078 430811599 644933540 633038436 641836616 297284163 975168793 900726843 952683909 866111740 937210083 677494516 771807907 751142941 992943266 27611495 736277780 887210702 912635883 958012885 995849123 522418328 944756351 297180072 879781801 321086131 378721901 878218629 962945816 239317319 459513271 128187547 870117170 952106747 974452149 181814430 935333587 472339203 608843640 671639647 738178856 878199747 928110723 8337843 288731115 461014269 875617868 427601069 753075142 107275719 930762589 387253001 420808343 598865963 603719819 67183683 113388419 995645936 996988282 502335016 864813154 362326184 509455793 566341343 754085867 502199964 840970186 878845811 980130484 566774061 743197335 272113003 680026675 510137818 868207843 792739272 956584141 786757348 915378411 269137026 912078070 931097782 967160142 636440206 736730423 448044544 624973928 860493247 873339042 256234228 418175739 296946495 852694966 165530414 321477108 102622919 379282917 336205213 404000951 480661865 676230339 881940486 921678707 461389443 565746340 827125311 921991262 247157962 732344596 955452967 973861336 744472663 930954068 526985365 789673088 165152035 719746592 873235752 873827896 6967132 626951092 906008507 907006714 208715592 765780615 97852873 650153241 398690910 621805071 237734444 266155450 430588538 838775300 669804058 995568423 976082715 987061163 946390690 990393077 690818880 939133573 957562501 973095487 434223388 564351375 883942331 955177917 500974606 719660137 872755066 879982534 8789722 752610791 12275420 808273431 587924369 603785955 372788585 734011339 796619212 901986489 753505695 755465929 186626156 676731163 861372784 922765529 741001334 903582976 567833469 978340876 488818064 571171522 794653688 892574506 2252848 467814261 540758155 736311457 519150282 643200035 295647741 935706657 490226554 832154484 931119507 984211889 556959659 965595135 405479990 418603444 692762300 875782479 179752991 573708826 774228705 921115163 212337911 604564485 178551011 643065420 995656773 998264834 758032781 977351140 168925415 514338351 104303355 581091678 922118284 934842817 993851094 999053194 456747542 739681700 969013108 977907874 711719955 754860725 847082516 907661254 624487027 681807928 303768363 904045984 854959747 997707314 583194986 868249607 929199869 966569989 393755697 724886805 783623881 828229834 287420764 556472937 471674571 580850000 905249908 952538734 23777832 773778502 196986029 703768691 937164422 998339608 249174357 638378148 745794204 774284362 479197133 918301490 926231311 982128794 663162016 803764490 852319000 874618142 614712683 974183858 288122711 438304995 647329770 976175330 195073272 211576913 27924205 262767700 583923298 656143760 167312648 592412118 745518431 965583730 433048959 854312907 912608641 986107735 760685182 901117472 133271504 591072271 331192898 853595465 960463291 994470669 940585666 954606826 911083531 925058710 682962239 943486129 498587868 671339078 288601228 764995524 893968296 963543995 311952398 843148281 135523526 566572466 258586823 608688131 708119957 782091593 275116752 405745178 962284221 974317385 182556815 252847097 495241407 501450869 907155119 951412990 173783043 739632115 220688864 868106392 313683508 824330696 695134454 825317163 333608417 948225653 882076638 900687700 322645856 737112883 760943244 892284289 888622648 930187090 219235119 338725418 135393328 513470589 784535931 945105851 998045998 999253055 326690127 371045734 92606430 805423361 894891784 996445499 1657237 819575983 104989869 797260847 380857883 658444850 807104022 976504152 314397746 653508968 472094436 745914246 240524016 394531520 302557820 465717021 885787066 957552421 653537606 747163585 68689052 705313869 919879164 994551127 215969674 285055610 961985102 975212940 118198785 888235626 362892988 466974663 934782489 969987058 176998396 260133259 629970460 974970993 534136279 625702295 687179528 871391359 626439146 743913058 125979316 247477577 283653969 665638892 558641375 965096874 630512821 968753008 682226465 702242533 594403217 875410692 451397469 718763760 755813274 984647831 102833580 211027523 554874385 915725328 151575940 805699529 40397 575650600 521373096 638027622 158077063 819863889 875813319 945789537 47186995 350975959 357254870 974456738 559032143 559692520 952921020 961782277 510321718 776786006 186492020 203676843 122660208 935827856 102647239 562633392 401130328 940849769 171980176 746849863 950113979 952045066 814287254 922758320 87766442 202719493 510107042 562320165 700891020 971095683 878504013 887432777 664585729 972718677 739208773 823647971 706246481 958804676 703684386 766716908 376688298 394478587 364731482 381164497 874101134 923814801 279596193 610367218 26001607 333918334 485267393 626626900 350610637 730688170 492915087 911197962 457989113 721158956 579337106 679724741 340505331 754198568 980851314 988442802 183790217 714225209 620823453 663235694 841411980 942165370 620709289 707896611 760171335 905045775 410201459 820081038 354868033 627018735 881898252 977670247 933077674 951396549 978054352 984104910 650033678 995350006 132948754 147630126 236229523 281400807 51053072 640864391 610649044 860032626 18789423 201303476 161678312 902415390 646084085 919809034 929756657 991748399 330127562 418783750 75879398 325340890 150851255 246762435 195130668 204980131 408164671 716280654 757149354 973484650 287532679 331886820 226089778 681811945 470476833 515806693 195781520 831380194 596488253 863391917 443067499 463419163 761893996 919506571 964919079 968680146 942948114 983976914 931052517 986798314 898867856 939305617 655143004 953665238 106800334 896927149 167419653 460958202 186122194 721767513 40606641 933753320 983745047 988208802 217460421 852647387 504908147 959084898 578803020 618517109 599197225 693831181 597245161 769460018 360551189 526836842 764725376 988968442 961573604 977748222 328265456 813447970 198102875 415371980 324592745 877324962 815352933 893068845 937578698 962081535 639214429 978463260 407532247 857540179 642608073 645853062 283735172 983415511 317792236 464705701 989989014 994474981 610659695 701823515 737183754 743615406 191258377 193420657 428169853 911384739 465145172 968742928 758180908 890686530 975228737 994596604 709589173 957651904 933618229 934721789 394087910 884704786 805996187 843915060 441924514 551049773 426608524 584598949 354288369 589424949 211755312 777255314 629032837 796979356 945469030 968795739 422728592 939132788 759683438 760631946 363840944 768618000 178998710 480397501 419453741 627616685 139566595 497681732 526119474 917785403 86450182 898666425 392161752 724605160 862091493 921501503 581983886 675332141 986694996 992865011 89547151 790252414 356392545 445812286 296734985 422485630 598988634 716436227 687507303 989062442 960794948 978962708 56507416 968365636 348152526 403996570 567289028 633022418 17389838 694654548 768673250 850014096 143073456 277178883 780628022 781066293 174061596 622336337 744541459 942955798 24905327 220921903 730067372 911631085 228777354 553079094 876749140 890688529 705797886 955135175 675772844 769593788 506472374 746209375 806118955 884955302 239508202 575902398 454699579 455695776 465514127 741243719 80475462 330803324 423433514 850649960 866229579 912730110 669995379 755447839 576291743 688055866 931753403 953997043 885843148 933679511 366555652 707835122 113912472 860675729 36627708 596638822 748607250 790763024 880158878 923908496 361686726 516934620 1559531 42291149 711818033 922567798 772452123 786422026 979199352 985266248 462937308 816600931 299426041 318956790 424888931 736090025 976736334 987688346 127033986 844905774 186584110 626966458 652969658 878741060 986192950 994624093 907260772 945609203 860789213 956238388 545202853 987165581 616974041 743725668 559512955 761652696 977633939 983512982 284330820 964583781 392664595 655900770 631960295 660328385 346825822 643378589 624750264 692760321 145131832 593670337 294118463 348920480 102664403 815916473 776778488 789328464 126144793 764144745 804996675 806917908 152938397 823345135 576200781 953608374 78869102 499656857 553222695 715256368 681505910 750087048 809510972 962555371 487918282 684351761 464217889 790674052 372722364 458998296 737229321 831467299 447243859 654572893 352804335 720413715 916998210 951864152 796403050 933705660 85832716 404181956 895719801 960299736 404627572 979080390 258743626 598337746 975041663 998268748 673366270 961571913 803860189 852702893 241922107 608454153 413454380 659869257 513743846 721315969 646555143 945031201 155555374 426133882 668790270 996505085 671780102 967362348 635308768 636131193 74594630 91638353 661943779 892983311 806046659 888060035 373979007 613707164 994164669 994297289 605966958 832689732 546582879 691489653 464254808 752294573 826977768 981050983 10723854 588909899 257043446 621839997 452737482 739745059 351829065 878668129 891201213 948527520 369752551 526291124 355396142 862632641 60828178 809848158 980547908 990502520 939800595 939859738 38682842 332461534 969843109 976461409 920392034 989519791 261276280 483641834 899877352 958400574 824223284 989028946 203176022 318975399 77710515 372761221 835612907 956134336 114064281 135809335 210498938 808457351 14413146 416656992 187176927 476862532 641620520 962200278 247443355 770984706 331616135 763531561 278651209 299960286 787815287 838457720 730419186 774665549 11327415 269563893 268944911 276042294 950254453 978543603 250267139 786823118 852148506 934974531 659539727 836894119 503311761 634853381 735777971 783642048 289499394 841603610 870482222 907617537 448325798 596892107 253448378 482685414 870672491 871015863 807923798 874679949 559451088 997422714 19590523 414553025 915261170 962830421 167837112 540955454 469027902 827886844 219567560 783638189 386227411 552184208 790569732 792115517 667078498 728324928 266145008 946013058 136768441 766363158 788009098 971091965 595852291 640192888 325401034 589631881 161431907 595628152 952790923 997404821 524928411 526943141 719422322 988450815 141954795 803608514 503087636 665807134 701847296 740869189 819238348 949112282 662274671 980513550 97272300 810796628 506684024 728165342 529148758 648200959 725429243 811757495 431481104 515761215 731422401 823463215 401519787 717539842 445921520 752741391 317489891 568643952 920419671 962197705 139240832 308737904 11029769 810265350 572405208 904638905 446964996 942098425 302404796 543263844 804907256 986052314 54972027 432629536 33563265 545342137 196313341 323230763 16236445 106584163 830428108 984569670 498186275 898184976 673732475 708148162 272741767 917137843 238343556 852914022 617763322 654419699 121372675 797113017 824643632 912352760 896773194 992437982 340968813 410876679 995277289 999345234 926924629 949591010 637639458 993935103 631349957 726069415 586729221 664944685 998478461 999178465 288218656 386293699 962403752 986515996 351282984 402100017 776850524 911539618 562135357 579477498 338501803 577607351 772251337 778180904 723779276 852212227 398943963 847801158 562227128 778959033 520835458 576107721 530919553 850270988 162459982 345868003 951904985 984254711 197573427 237891543 240011021 646560940 666252716 833568257 822900118 894221098 441294873 751228474 443006288 470122385 679970414 775932236 170533941 754712770 338734615 500167201 902877245 932322892 919826565 949986962 615307954 803874914 92718077 361503636 567277639 779010270 912752466 984737976 61514820 427784007 616084515 721295139 833959607 929414500 402049593 523093861 951027227 966233182 950342103 959919627 302109193 326170354 130885349 710556265 902094027 907517346 105840023 111325188 152148514 573792332 21892580 608263280 959492672 972907609 518249760 929803577 205177034 654407022 398983233 995609942 457216398 803113583 433138842 552892290 483705388 967891975 631851100 672317122 802752168 811144259 774726490 816111080 499447546 594488090 357423010 962006752 848153613 933989509 105718681 544738544 162153317 245620520 989965042 996992745 259479349 790740496 342817141 960647393 379435988 548934687 168922859 393757605 518003845 816086018 104996402 134035245 290297937 302593818 720702832 731700194 754557433 976250546 277106603 705775264 3146618 123086944 97446658 996698208 744495035 791499939 196649087 199766192 47187615 477811971 317896116 610254462 828889597 850468676 957978188 982126736 796615334 991957284 383066305 472676048 864117734 885277808 860570348 897014905 654356512 994346216 244682008 463204210 135084832 808156745 403043701 670525753 966726669 969174839 627339929 712471365 515464671 729253270 520279387 769737665 26336450 804229945 414479302 430994648 134025564 745731022 283592139 568669825 563448800 975143123 205002609 694160206 716402200 772189657 980621382 983148066 725387330 788376524 681949855 732499252 832651210 950625511 149638575 904322578 116028971 630431099 51543297 340068793 720027953 735232270 177894420 228632180 589211439 731773272 749178478 932272732 832534408 942899864 368360333 712021076 814111372 865064431 386021274 970222820 140847539 691499126 264095944 321877489 585470913 930967485 121668615 848165289 501711838 858045860 546947210 744367235 380214088 981871950 825114542 876219569 577126306 902179823 552800335 992474961 338956175 503694594 427990326 676164340 550705269 589885964 256887139 290820169 985448750 998811254 800566792 884729293 2292541 450099833 119241901 462748989 791704225 888084583 439435483 861778363 508158192 688232225 454858637 738480069 118088719 213072275 528393156 842802433 688733454 948283643 874151000 916004240 383137840 579764650 828223448 924119511 364827523 620931209 8007932 829975992 675544280 718983070 84557206 215315166 24053237 252698570 257460162 629013463 558897655 806914187 287689651 552420385 705504249 995745636 550262756 649926566 429167787 691812109 117365973 740528876 194237208 517009210 334942072 568282677 600765697 806031677 797268438 811269134 151234577 245308762 78990496 755202594 448034414 990477539 904298091 987123410 176874928 552996318 806187697 867444180 662545101 850396539 852408895 955192026 168151469 904541886 588477348 917186738 703518017 750304955 556321631 815829661 283528761 556523030 338617805 650103998 44986255 475324375 243626629 446828875 106224555 180462378 957131004 969360758 507107701 738835063 304700200 986961052 701634090 735359344 977005600 982566099 49955837 654288206 332922954 785716992 994254412 997548801 993117997 996732960 777480168 821010620 526284230 865035473 641370725 825210325 823225436 840178902 766409763 841529837 678776029 755447254 380577755 699608387 560101092 656453052 575360828 991739534 900321222 954841682 31592570 202217111 863218669 968983148 686824269 789794386 605587707 914516623 945939302 959730298 993299871 993898285 535419840 958053265 612588407 800832787 304454697 963317069 898237865 913254850 464422057 932515847 223424419 990325272 568818622 872131490 723684076 946527193 527711216 762761925 432226554 875108669 443441534 742240773 130356755 941918757 454602885 707575134 52915118 426378950 460954208 478138839 683445425 994524094 732992521 953246480 231165145 691301071 356899139 488084709 757954263 890203568 415923255 620288973 132952416 387723434 340005619 816415310 929954752 967909487 116428759 836113251 42852873 255433987 229237670 434017946 328066227 544017656 702183048 744347753 851937774 970654270 637585107 752009424 190934121 331245190 909706324 935279932 354887759 620426457 780014496 893787344 434687698 537092701 611723617 848018510 294739336 309523897 78399728 203203185 709619230 813706714 519153425 969182891 95740672 462711786 210683799 257253344 872380869 945735355 756770545 813671875 473306276 614906477 937454326 960398061 849407475 872788825 60468125 742588960 165402033 945042340 218012954 787970586 602238002 859811513 994514279 999333805 801550572 855139367 156801788 683579618 803807044 929355963 848362502 965318615 964168899 991655076 876596003 963105917 664506158 933758439 901801540 997705290 351993650 402114175 621554451 677331493 994773154 999337446 120239316 318635189 258623705 736498278 193999099 503459338 842370192 950548502 377749031 629857301 950137763 965209729 559729348 593342199 752895075 915117093 545930937 608933569 197537469 221696682 839273617 940995636 80538369 155618981 223511800 285042589 998839663 999197620 886178441 977530351 486385282 703011498 339599812 996810202 568234007 977244269 850923951 874268207 424453927 786800564 934568873 996502374 371066080 561366236 748270495 859754170 659161818 822339693 473274946 524468732 647625486 802861292 289121256 616760376 472941778 899444947 815181835 858509639 361932713 951519785 39691971 665988586 633593907 862976119 186434818 879496647 76999607 242183408 111842541 671355495 171565716 964216587 664019985 686985684 801763531 874657299 210154513 737889283 484269193 699224288 653453977 969674588 615079031 837825334 828058972 962854732 752050017 950116289 819028408 990226983 989412861 998966955 373082133 616519361 389360557 699056683 155321586 713018804 692001945 951515404 818036752 822835041 867334255 984901390 831280859 879506702 418695312 421043402 552624091 555776094 947610792 959599990 234830300 876697129 927408393 927698934 864284315 954102192 841807611 893784402 349829442 451429639 722760750 986097088 875362057 915708444 335162961 549217465 490512287 994841945 679363410 781180604 166263862 974450231 204087970 266496365 524268073 770184348 577343237 917332060 268077361 856706077 30166216 635470115 915578553 967317914 983993184 993832131 565943799 890701457 319554276 485466744 693801648 699503541 938433308 968232750 29609736 561558804 512757628 557741560 598456222 670728061 337225336 700713948 812949630 915316130 100624383 241979794 937635334 966305734 814797566 821361031 544082768 835056620 948343578 965474446 222780128 774141655 342060956 725789661 257670553 415467658 832788420 983685423 498255045 762870631 373680269 659575640 100034322 722806350 202971423 712719451 674246466 966977436 76345061 100117525 117207341 437348932 516638661 641322628 205450909 652727022 985936701 994635136 285859602 337550880 882479147 982153638 910160552 915217665 864716035 885713290 83198660 339462287 223745583 704771960 562415218 618491837 183881281 861809128 384874746 746953484 409449500 445469112 128545992 863441879 32232753 742878998 238602756 832277799 993922413 995496299 422519294 897437061 47943589 651484347 813634332 881216525 107556588 115070264 121073302 814004572 604994084 809951948 661035501 892136495 331099265 564376151 936813411 993995975 468692918 547227371 629601483 742286653 822976634 955197925 924790122 965211934 155615420 630212263 924050318 976766275 727438280 833218527 220737488 690058271 408773959 798541027 335787609 979400072 673316827 732479563 229733850 656822774 853844664 927439613 535068550 702860478 194464358 483837792 460509769 612057079 833003424 891452371 265510186 578486128 225782415 961728635 40148882 565148756 853606525 857471886 389753096 673854957 892352900 963802472 750343151 889678563 518539773 945861049 356361426 534326786 164519780 886488302 779157086 910886194 610512173 877252907 165371990 993143168 972093452 995604199 299229444 670032075 57069329 210525214 310122739 479308655 621696964 702941713 862871671 986035842 364688118 880992224 46181843 735822054 99082685 972816245 554026268 872363603 698042543 783785864 470140253 577127850 695077015 987600556 784051155 943667676 497144010 552820925 210462352 763590762 60474505 232942073 797436515 812977533 612755927 848392267 504378973 986270557 482871933 973056955 849994610 926767391 973164450 997406480 266533447 395567871 962940797 963792766 420327306 773471006 71911657 146834129 575051333 629140418 23665134 356296399 571925206 928131996 15621775 960969309 141044507 573035998 747284896 803377553 223675297 816498866 252410071 835608079 582294114 942010983 532632441 731675966 386332215 651577863 12269196 956377473 913789138 929074342 519489519 632366580 100503366 898774723 297173500 490727245 657506172 684517802 29560768 745549415 624066901 804610567 815464912 844231515 618353219 786089150 393026342 575817747 912892524 980374102 158954232 435890340 39598737 894143356 186173358 664760803 102272239 294092952 183245512 641287301 499102033 815019725 568039449 977835897 614421785 938767009 480811774 891561100 358156954 862268187 517505243 597079475 405193881 804674125 696036813 701606471 406967118 710010736 64013561 215791866 37323542 963761774 131977951 587133983 2302282 711620579 954138356 959786915 714091722 809793538 877530592 955691653 761426796 868163072 212167146 773738040 376394989 710708944 676862973 871719630 893784543 908608649 320093215 702020040 892076190 914649479 429290358 662383142 193296890 567152546 934879686 955916216 819348751 983202897 441128318 913651655 644296455 714703802 101452483 200948347 561720847 613602360 334659083 695715397 334563339 608940537 162906003 615102989 360108418 504878384 742283118 992695867 826057501 966891484 373013139 963097288 853909405 901914662 476610589 766288765 817370888 830468066 24643606 974500686 643425886 952995089 382999156 440407992 678245755 944846661 225122857 367749818 567615182 739963540 322070498 604527978 745542720 800855752 415960730 700188733 993953615 995664772 161169536 444257216 215724337 340861366 581831521 626304171 284420188 501259979 511700380 712751489 826234051 867644740 788956655 978331062 196032394 811928432 809646924 936798631 355309192 450705676 786699893 793463115 495168780 628514152 97661577 397037190 85442465 491663669 347887512 456426217 207858232 527372844 277210840 464677912 966415312 998380975 327985709 501764629 196029383 952294098 584547841 708709147 384044884 703418174 780837568 944154257 976820144 982596071 79586695 662596747 359687159 929012746 988106238 992128979 657495258 694454597 308484222 570455352 193740047 380424737 852229698 876851403 248517298 442007506 12017773 440937208 425335653 947221452 249207108 338914494 647878226 832465974 320270076 414626644 223495669 577022047 358907304 490192247 439185973 521871748 10363323 300199917 718918823 807663465 419821349 957769243 287685710 724912443 23265149 357472277 220215573 958167189 264578169 321944536 740286164 914360991 604432171 799964258 984744714 997316327 363152713 963883498 332225579 904911439 497276931 704928492 753957295 808877921 466937826 875219528 325866520 964475353 316374410 367970121 415414484 862254573 224314883 800670228 861416029 998753928 937465195 949359714 981715025 986533296 163034150 844509429 249839358 448175094 408853102 712615833 387743892 444556309 890844908 907352740 699171165 980237343 483436349 807311655 445559446 811273187 728983463 867161737 447549461 878405312 631339555 794108421 940690355 961428175 193766013 431512160 206575379 581173657 27517001 738509255 154924601 929203527 474619527 827811323 2207995 684363009 912678859 960316683 929574162 983362102 658057048 956250329 247638689 873396382 705279170 754250588 628614299 647503016 344564106 920431085 32963159 102229536 204392487 631654397 327605118 509029233 815023425 940240423 845676386 876768012 443262709 607926225 16612670 706755431 247937284 526059880 837130835 966143541 699335712 736010165 197965140 299803698 259351865 760916158 459039077 562083550 885451469 916155574 808438370 956775047 726717878 749289089 864195302 911923516 910388934 983851698 444455882 896618633 862880496 897584135 108306473 174365690 399699525 860235720 57393398 249204500 283954865 565772770 846069423 959884142 918390253 969840958 790695765 886372588 918619927 939992018 689125869 932608122 107723086 711047032 364312661 873524471 976280671 996264682 181857483 302155287 763902207 927275948 642265482 845796697 764415226 861139823 372865241 738242430 864328805 870091812 546153760 869928799 260139416 631854509 294645928 821053975 802549195 823150205 474460967 930609669 861347403 977571467 971233334 977909070 389707925 809436803 230223862 887593026 725541062 961181669 427708541 665407689 861518269 976284259 669538392 844862007 713891961 755987740 166131686 410957666 24948553 800939556 766263919 816543762 558957664 603283894 967531245 980246954 653322183 733170043 966389084 990452297 740174054 828310983 610101316 720371231 248395664 987049432 277645202 918608171 428470432 942873696 284524598 878357928 620174588 974294992 111979348 731068123 98043131 879798008 103357414 356216189 771571043 844073518 111422018 370094018 512600091 948045102 318652920 461007586 234037958 665949502 637595562 815725327 289412245 863166050 173775640 832089892 735612259 883759559 965539147 979598798 788054703 990907904 664637276 905235068 454192321 898011052 423358229 472572713 823355694 939090995 373187537 638235403 744126967 824504253 413932925 418588574 842013093 846186514 118914039 645463459 688172769 872166527 655888308 732890709 107565235 734049084 226855754 906658144 435166377 950881385 474791558 577156895 676994115 930479731 982502075 996339961 947136625 987055924 139873716 857555638 179421665 667846034 929126685 941877905 744330150 818775040 890786590 991743373 45630796 591360807 637112298 679105424 399544704 891992857 610484878 618915917 158371608 588927013 204052436 761698538 941330857 981580832 3049614 626841787 211608569 801654774 974192029 990095387 710560138 898019671 502565812 965557735 117981010 901828030 225151054 293791471 933035018 975451764 336136899 720681662 93909313 748253636 504311051 920463861 216525018 290564602 222308521 708307308 988082236 988599898 728496287 984798170 684981465 818440552 485215829 573284089 696403476 750131318 147074931 375333652 301138065 708853845 393584555 439119937 351801990 681995036 940307556 961255628 112591963 388313993 435291576 608984063 938429976 954287032 131751965 267633071 866442390 966762735 838134754 843469299 361201133 819935445 371889697 826882664 116907249 989355299 424798219 744265638 892742202 898664035 217286975 738356843 224238820 706055259 943145809 947686749 527494391 932689456 763633797 794035297 989046763 996032356 622831895 966191070 379059959 914989526 871633485 930393265 956552757 975218719 208030735 232733198 322739321 327836379 996850023 999322784 33455299 798866767 473625646 686995304 876866385 928687999 329787844 390963391 666197885 974430685 751895054 971286428 909295887 911174730 272992019 417690598 830281272 875458079 104258542 722479271 420286149 464613096 314563256 406374381 138978469 657637087 519491326 522994345 688752706 823840741 580777138 618613025 78403151 709959901 267986037 280578051 15358956 417954585 566200478 841469951 938222132 975975857 688439136 856231323 751149240 855883990 541558615 778739404 928154963 951589606 195052371 456070664 125567406 916674647 868377156 995059780 794516515 927549768 470124326 992442186 460438014 759485831 616112785 677533538 572222466 685291862 379390995 599073243 622679894 849518400 313567823 383312754 420341358 723783059 31642672 603086864 982342962 991328142 10387964 415936440 141697643 350196057 907506588 965935861 483177801 495058340 190701440 914300624 201858982 236357770 283615211 549878983 364966846 526455051 288073125 709784405 648306672 959758223 924269664 998254591 70873318 216061987 624413546 862578818 720359537 868024659 238747838 956243803 812062528 960659566 436792211 544871010 236288504 731237971 638605689 884513909 357214974 589122363 156157157 804321834 396746739 484048123 227500172 266702963 695361513 697979412 253353766 753301419 187820510 391399960 324872030 454120512 315469090 888283007 644345185 918516068 617989396 711567333 491306663 871729242 416740893 477360059 2445034 335077123 115615443 946204914 290708076 958731628 25678546 567927166 986433898 992442221 554599820 749018870 636513156 671772614 647094036 944720291 578896477 609303793 179028202 653815667 578986514 737218789 947696487 993208644 195662146 352916583 188749451 465405992 155248422 382435304 588888964 686613188 847122675 975693849 230527089 858467977 230327983 881810880 739131932 947090737 898516012 976467424 360971469 501334629 358293626 576653081 724162967 879698304 719429439 975583422 505212816 876452517 565528713 569503541 818900051 865610817 661371600 776597563 331738223 696604372 649661435 706035887 55507395 635791058 923001485 944884402 101664381 785791702 50553595 870573475 101843866 908122975 351499964 421173312 645255914 733155678 711054244 961745114 425441763 784271846 560276781 739980770 899884640 920427805 47621702 603483418 211001833 499400379 761729086 995961060 285267290 340882082 525982522 613017167 592230457 606004955 776841320 915671016 211507721 268378330 441549645 485458076 808065701 818569116 957676036 963181842 444592147 788399494 623216845 743357741 640102718 675939911 586646714 815766034 442776537 458123292 693434960 985520115 918354708 945648087 73223113 113262574 755111006 840669198 452008951 579881983 196956443 568240202 783949786 917103022 62197504 115534140 615350404 903840021 799319073 874735892 36472413 411605809 744133460 748988945 463532361 608803367 471648378 854966115 233280992 386777891 428614183 561500565 870427448 933602529 583496352 625547221 985365814 997370514 968740415 996806989 330680430 816168563 697552175 905492133 959719750 998147137 639308635 955322527 396052875 872620980 637083761 816108108 670874783 930472854 572944475 975852736 11572146 35468454 376492334 952563971 375874075 433024035 396230808 656108488 47462249 680697714 375954781 625789440 695273474 725438943 921074732 951719641 725066002 964083050 614310083 918163548 340228569 750052719 76046409 832650340 418621590 859553826 608693027 769452428 128930438 355658635 311194830 651771091 819306404 973603650 63152630 382054276 788933007 925332036 214021496 298454990 85535356 736782993 132921689 857283318 924279634 957765292 488495654 753744938 905480999 908626802 975402124 996172145 886179605 909410240 154747274 674431020 739816973 743777774 703141157 708734227 918012310 939872179 186157971 940192458 852723704 897398613 670985971 723697236 345803003 746378688 662643524 670120856 239538781 508183475 715215880 779505723 286673863 678498413 437990232 920588335 437943127 816861441 513377439 657979790 633684823 843085049 246116598 865870775 405531302 756579398 437456080 947239714 222994013 976523829 665344880 975421834 756247323 977606734 126064092 392268536 562205430 962366840 155091423 942963329 255999682 398345941 284319579 384974633 853419232 915294569 240473826 569702162 911197109 947129739 587491142 907694112 598064674 703363096 600920841 946028816 477365076 653608829 177576629 838750190 252709141 917571871 611012284 932374868 185242656 805749778 502833457 566537320 755102440 758562076 115014593 767531708 989237470 998233406 414288845 426237481 543243687 776728434 820768670 885897874 901862361 933938097 955554982 964743679 454186280 872285205 270575946 496400382 344911788 589805746 261879939 637394585 423059708 777132279 534306839 722446288 349905490 636816183 502586297 926487216 224027206 497987397 365848624 797960453 983073238 989133676 682842422 960099214 36392294 443845251 972201894 985446872 320295344 932045809 177144148 969706808 816582431 970354848 104239236 273457687 931751646 940979665 470467030 814120855 764190945 826472275 520464816 739231874 42567799 723217336 754298179 873443935 525916645 565614579 321859022 866794662 338228320 832322607 850607914 952328767 632673535 992511465 820319413 891650221 375484828 648395241 631413118 682776463 298677187 690335751 946044105 965486490 145939949 290733425 594774662 785983533 743642431 770040107 532807068 677154333 363399687 799304560 996708221 998364114 583459988 619580021 509573369 918067448 945970987 963739601 638235475 751631773 460128207 560355536 523018336 838474921 804121065 858503711 679745268 870267498 696293276 830781835 56820651 962342987 400742441 632125001 848720418 921555724 271470791 374687214 474582053 665592140 724962506 811894171 482701215 793107928 943159564 968306447 997713792 999251305 70657161 518045349 671907466 741067168 70206602 885907922 395688428 718841895 991295018 992856253 306839933 544302216 61254785 405621403 721152427 874505191 246852337 901318278 836748270 842929225 640736560 792115016 271939801 746006257 68159366 157209545 598890247 640777048 206511721 834058805 603189743 724856985 27794894 550587396 924816828 926383569 751576009 917196094 446734312 810334706 807877948 931937983 629112342 850378250 452821090 493390321 193574746 740180423 954484165 959289688 798678253 848328015 155138670 470934689 297274433 335903449 245342962 860985580 831762841 876702739 573591736 848489858 808224946 906628872 803937028 951433243 570523699 875505768 571400853 939929413 170502625 407981112 224555774 719950233 920939384 992590118 124767958 843310660 940671564 969594928 797659943 943422287 974705183 992042185 938900996 973895714 997234106 997788701 629553256 829921126 343232537 773280924 672045851 708046988 417411096 708748959 51076199 329910290 710322031 800174823 362273873 979381972 520719686 881054523 869248673 889323434 754959041 823714377 69260045 550518587 699121238 841949346 614751631 755730755 973985062 992751718 517692213 631306034 644660538 784359757 6084549 856845667 752118777 913055566 362617853 881997765 410286595 668803990 136175709 962640076 352728574 835534507 592257536 645751458 305186804 391318969 61349500 756682085 991513155 994451581 771224508 913278469 983548203 992218413 268451761 299323019 297546458 638240193 555775275 848007756 482646440 721363657 708056705 745921162 581710832 949141664 713374954 899811582 343349081 543535502 206011947 778596823 569596258 996811490 373082883 962432512 974083267 996907303 594238673 701955417 686229157 746611106 718205880 756522798 323177184 395260933 721843270 816592899 267036085 445920425 878202139 946284691 178590877 412818049 602711683 840702638 194728832 764418126 830265829 898677147 797928868 981834943 502001038 563907826 947926989 975033322 270670090 329906029 837788197 866586230 454459174 657317235 963444990 995074088 98932192 419325644 136271305 213495748 605439090 924041636 811616301 903379637 122017093 870833392 68282390 636411438 15567313 359396540 183704463 219742392 601451058 937362171 971389091 995768530 797704573 865854691 233946056 855763510 716266207 857786861 888235424 958029986 149710182 582099774 585319527 813307952 865917269 930591433 800539318 996898791 729382827 789742672 789513769 792206099 387493200 567625365 279291383 688086944 698919718 918298129 535284158 741821395 534514075 857059164 768091605 829618991 114706214 545067969 719843953 745564260 541077805 751973903 627920277 821563472 287231877 624037729 587012394 618440961 200389396 962380670 35678001 381388738 394953906 660541784 987082573 998580632 771945996 823012446 539419786 632129599 831147275 990092740 357582167 914035998 357512307 639693465 352014289 456635660 211673655 690596933 475072266 713373818 546773950 636219527 350792354 753950644 401494231 764671889 734304610 874394144 151179954 923179609 650014457 832855638 563160224 992478395 556996723 709264685 921164017 965223397 307376362 880836720 687873994 760451743 709084365 991977564 836083048 971654131 288608706 299483773 81767227 725068226 699682103 758561848 141913503 926956597 158044072 474520784 416443101 417462024 88032897 350164515 244711979 873587485 295259741 552716488 888508170 997827509 272681685 681079849 361604830 925083404 61052094 811112559 454340901 598488597 950855269 959037172 919493517 937908447 786480296 844578874 708874125 809560206 108385744 866531788 969669539 977975583 342645799 546211025 616356101 634807590 162431385 524275130 18209830 916315621 195315571 752852328 181887778 341350804 9439862 779378152 291043677 499790351 213923568 706247596 965096478 987271086 686305629 790239023 715445038 844812924 283547767 713241843 145165545 469806282 214073064 750698165 543484457 915829998 350399519 500061006 649004746 832162324 703976440 954500772 705968941 775661702 293707412 364105093 245524832 859262746 547142422 806521804 231757969 628451032 342722548 816586373 884480851 953148619 650300903 879760504 696079754 794072789 438720411 797958681 380251705 721398544 831168115 952717598 255374448 974361955 214750716 380294197 330310680 976735723 982874640 989792508 873531139 945371846 134864013 671117551 136350939 355135239 157670493 590997375 104645125 959328899 95340853 481218436 678514695 741596311 175863782 628008179 734590924 947747758 34763718 106143843 743995350 779106300 747366527 779397914 35435859 650373206 429735592 746145539 375139637 400646691 435755639 614004370 702034308 890316022 873525916 987825523 459354220 497360773 449340549 483018994 388811280 816313792 31443370 194951721 957117432 967942648 160989828 753188241 590944827 821175575 62194664 258774725 748922985 906340396 608509055 983784986 262010687 537864685 207235991 817509479 924950752 940698826 242969388 642985307 740048922 932211014 825405927 863576980 505121695 933312928 150678667 272399914 969094739 973983631 882889090 927262921 657619479 770134465 24612749 664534938 811822989 904741311 650806639 829281552 363338208 681209028 71553997 773246034 405750108 436643268 623062446 655098554 752218265 948946233 639513123 879874115 314935962 817471539 352268610 773566330 771837488 783110682 50036675 636614147 248269426 959448369 454737352 902825517 830003752 998004029 738896049 938506933 604821643 984088167 951353878 987750400 927182120 995917195 329085315 582723987 956494459 967513337 83363012 673999763 332407442 532999213 987495200 989573426 612470533 809330237 772536266 804255200 63573923 550614206 592111372 813677475 657203676 793859425 687106569 722007131 41489724 940595029 3503725 407317129 179260676 846972739 487898713 636387047 198951951 937159434 663073475 986195740 990661392 994898028 613703806 630787800 210364119 389394246 990111205 991389649 137178737 400516240 642738836 869064636 368404815 750177951 7974036 94095992 27125039 169121374 490428076 671321152 945590883 966885754 258523472 746350229 826821727 967435251 458711159 748373324 340087868 402851463 492234924 772873056 778279399 995807418 194658024 708989156 580351875 588792380 772929783 813568393 76963819 613621058 546586430 693395322 223350260 772714128 151305232 661209557 711973550 917104600 62101268 941729222 708186590 945541107 275208382 740033892 501179798 855933773 804561426 923084998 217947313 455023911 846763448 990951706 673376786 839613844 479074091 737168231 343343814 511158287 798994032 865686503 68065759 432143622 727464972 891130778 847872415 861702293 110583091 696192338 355350405 760892434 418816455 465000166 459951267 985615327 985625082 994130623 176167016 969755387 570129530 902251405 303984625 571010099 580440947 972524256 841552034 995487373 397944062 436580285 562107783 896144339 564481388 996658560 220983389 565330544 379548545 603648932 905050783 924539643 525445359 837848893 26798915 883413939 965457875 968341452 571307672 599484232 324716482 399444202 304263526 773546165 741998057 980171608 179358276 897899532 659975848 704417383 59735206 85374436 403755670 972530639 70185438 231927686 387543698 725957718 583653871 882520429 67175684 404339665 972516360 989109556 778163710 930988888 325482144 656633995 401516262 718657831 981927759 984670181 632270603 758726216 776243963 797191884 292866853 711656653 791399333 964092305 862216146 990834708 944857438 991828685 314077151 699392547 391621264 527252262 992116886 996497207 569724590 577443512 824400025 936973874 347978536 736824875 356218069 959413416 283257955 781433257 882451330 960551908 814881169 899762508 841970006 846295455 684739563 966446936 249244152 877479268 189564221 846507346 256820053 365228475 545885780 969027181 916832726 966412939 580043911 822314415 244286112 375275499 967096099 995125465 860774067 997279716 494587042 504156414 419016920 889002079 560621385 688544538 454952470 579950168 59887379 878719488 970325047 999143027 606925679 944641285 750052703 922113260 165026431 765219649 164838603 392974029 606490005 631834204 763362561 987622783 400290625 712785113 183193735 278272951 621190472 823103309 159258297 876383493 697819403 946328965 810183235 928392047 632024950 904860868 131532274 279786794 706546107 995450057 326375774 690441666 274114937 749348886 218436315 329216461 853862268 857512457 661849254 989183942 613230489 824658941 588795595 904400278 458164065 504262894 979287317 995145682 943770085 976359448 23427689 685576839 850390944 920355120 225295515 538492357 398764860 861096666 849769664 908013748 695548211 745744373 852255213 998686815 618040677 682239374 824638734 928812279 409032974 545384646 912588152 982840998 837126610 956890712 268762230 631057271 911397398 966169038 740507283 944737543 793290700 860434942 484662866 719878922 747268908 903495538 556449387 980936767 674074387 821513803 765587611 847968595 794389592 831740243 429149808 694148480 536769337 817512926 94328366 876659822 256856141 915225540 412439067 577582512 725807868 961196096 53103165 119339508 67948832 289242042 547291858 640957357 270712604 427639000 522290025 981497993 501375179 831480460 272349980 714949206 419476452 421027994 367821711 742538566 688676617 728089674 878663018 953541556 772151957 820914212 891314749 963267450 825452915 846856039 103551594 346528648 245146825 280979629 973728448 979124623 282763033 936871770 867719799 911748682 711316064 730837414 314080950 849814340 349307918 383666308 80194624 840086912 32822197 88990021 400593740 538325252 345950786 853379680 829418539 990597120 32794024 342709861 133447534 291203414 657741495 678127652 969303939 995249420 917248909 981581363 4145901 885432581 860209849 972262837 65861976 732974885 294357688 428242122 153058756 767758622 46354625 485424727 881713664 942695229 65924731 244038914 134941897 476709983 407597494 887848083 525456758 901936441 734729089 896097701 238709928 777666811 698802025 891652024 628623181 765132687 120821045 420773407 955634661 978898110 248871540 989566865 647156485 807635959 94366335 452660706 286198856 580390752 358441354 975849218 745430149 956309230 792404170 887197990 232114523 481146331 974008705 993640419 427317402 526982704 235754886 344325370 197411664 241064417 62097117 653450875 769140711 830518052 47439915 819781843 875638735 903043848 114680666 579023499 574861311 862677761 341096433 433377945 774754227 868482071 732529916 964437554 439649037 961302801 985373123 994220758 259706511 493641300 842525834 942364956 826479890 950616887 418130153 586037231 160499517 218565856 187448620 632284152 902424391 956694728 501409371 975482586 122333149 936463346 491861481 870388751 443150638 666738200 939087116 953258439 605182971 634881602 524238571 604129635 896561703 956266621 966265957 976666249 848984885 961494827 545207363 902321395 319715905 421933654 633144735 648017120 564723185 803106903 677013207 755815855 996452475 996767196 823497564 896692476 777585352 800069841 381009879 479483263 141079762 946367533 123716187 654706093 498009971 735346821 559505034 620640741 489762924 568743020 91356299 512643889 283428435 346916249 910957890 948122814 907282609 982705682 383318489 443449936 913501042 932299960 26157968 320972954 844440310 879224516 797348439 936518331 537895975 894042314 395725420 760148528 113088865 785098890 692152922 763425956 29003235 817311316 980913509 984455445 548649081 880204787 518677789 756838981 167485910 805071039 217970106 432879542 844542863 879857024 98965068 825460152 721119761 944662853 799446506 969225841 868452366 874147591 345518521 597527180 649249425 910312168 399873615 456792585 305488775 797316554 114942480 388693204 375388942 980192509 863826244 864408261 838092492 944040316 88716684 515810209 396476086 622606961 898717223 995426807 64705231 211831005 713371462 796708368 309106676 494145832 511875190 657247254 450611693 798812467 985372059 986945741 400421224 442493743 894845784 969419116 408243957 958621941 456810007 725719278 75728739 506447950 455185849 871298726 37879572 637495982 810903381 860986386 981463970 995005937 909615842 946572251 957267508 963826349 337284232 777810087 511140558 652181675 387858708 459389719 950335512 961396126 201781084 204096928 289308697 800527090 289043584 888891995 225564621 502219708 971563416 985667980 140732785 196345491 138727092 392852366 164646654 567712558 192713468 889087312 141332371 916786597 380456798 432412030 84246095 643648844 701076804 710513123 52037729 433471744 726018295 801209135 982238661 991168965 214104485 459366095 600548706 767227524 570169541 753863898 158985334 566386138 624173858 799867992 875839895 965767998 240690921 990079761 158283239 601474370 487113548 688049258 485480000 753220411 274009399 517525181 569398612 826842466 329332393 461607797 270229313 622850530 558555876 598887999 466839259 624401129 195282025 338087845 522322800 726655266 716052080 966325091 291555027 690302044 170216063 406411870 77733793 252514676 105831774 780386029 272733397 806787017 772613140 948991120 960223929 986034389 731434825 777905695 764775449 819236203 801374190 938193508 713582933 892570354 620368524 813798815 711699736 981401687 907018573 918499081 672233794 946224608 859591013 903633816 661210165 810549499 724041892 799457227 543064897 734916539 983662346 994612313 51937406 522214706 987934154 994395928 67996533 676492678 698653067 772489894 366882812 558054496 658059248 681450409 443661451 528280445 136246738 265472988 178086774 919145883 232823701 959991820 135883544 399800269 302189284 415615280 177834724 855226138 34705084 717573100 760826029 885619755 561272695 912551061 593391241 797381660 749998794 982850248 29856542 256379768 618693407 793341907 323596825 665550460 545306180 844262604 117158271 364586825 910157621 933184119 589065061 689258610 356361855 985013059 416493828 625854915 878907431 963934667 715304579 736754951 977772039 985953612 130109514 373708430 99213342 834571789 723261947 752641644 280711440 505648407 765935844 919366978 695933926 787964962 639000710 665958858 312699630 587271605 951368121 992854766 831349251 831995445 655901256 674807141 427093199 546229432 943907309 964525077 887208744 892908395 624242789 917290379 940950337 942848858 657982547 822151168 331233225 590286300 345756432 574401686 693975971 948835940 272919812 454803833 286379471 917473803 633933140 849211276 371857581 680695524 12158767 650146331 673876390 783923132 592163872 816793693 4334491 194699702 577639211 586884858 134046402 440677035 926030658 939830008 424603739 695371105 622973900 774760800 766678382 783017330 642047892 915803041 395627246 598845660 789323966 947750047 221693179 764560153 90496138 100252917 710014917 788263872 719268579 924599803 997650612 999298656 975326305 990054083 660570749 770977438 39409105 259147903 770213820 831960701 362102853 734528256 822955003 899481008 107295243 660925198 334363485 566014045 660987735 744723286 122040378 279541216 827368543 905970307 39103023 377790699 978641597 996282798 236457482 699665860 138976767 516236638 443276228 779603421 994428184 994754723 363296574 834157423 162891896 944115324 601648423 634422072 933994849 971899095 864183739 956488947 677445961 872641379 600711680 627926415 767127284 981426977 862839404 909488045 437116435 509662772 707232945 866393440 141203099 412078332 265490356 340533019 391000029 695015489 31316845 943967038 749524860 982038642 212960995 660584109 518765837 691890084 845762239 877846775 367827465 696911597 518523125 667034552 773281070 902241504 417177966 668970172 986937139 991436683 198790979 482674224 696166119 994622103 927321342 994093494 35622097 509438977 26495270 851199255 90929598 210940322 498654961 771154049 581862002 928814655 795559736 996458162 338744119 785029733 502959675 938392561 225055730 698953269 371881541 453229963 560187446 562393230 642421650 739076726 232722597 276073049 167692185 904456015 570991875 783108107 581306050 693046899 170302720 200746537 803336851 914180620 202598744 769857786 293640559 660592723 819683260 863323057 564611196 708067259 464841718 684456808 462932500 818044696 632310991 778918360 878352079 882804545 188134257 654118290 344242525 789237159 957988084 977999189 606127289 897120484 505071287 565568743 85743909 122795671 3492824 988062931 20107872 333869227 650161041 993664340 922679157 922723459 680750046 781443741 280366808 296171788 657702586 759727999 162674855 736144419 550359695 602610163 811714472 968414236 164332152 253799791 841432197 876971471 573171087 884378784 866078758 921802886 230311068 712021067 347558248 951623104 218438321 586618619 461293624 947984600 500311863 946991894 665842692 981548540 548895950 930186766 742833174 747033277 607633591 935809942 626465469 869680724 441859243 804715719 575291264 690532084 899018456 966480678 190425995 386751079 760936903 909827084 39322956 144677646 165025264 759403111 452058115 649751555 91257042 862728884 150136704 617946946 10424766 298640626 845664813 998274076 400942851 981083771 282229856 951138398 463895090 948695318 869189013 934202751 876080530 975250168 523153664 709321481 370956101 452817922 109476229 386946570 478518137 495447824 626527790 736207332 111194654 853334177 768250858 825853766 760048985 935813438 558681106 713350143 582752965 794805318 383043975 652659537 453193122 847601426 341344608 789385183 458620956 864684648 476260361 650803049 847369642 924703242 672916733 673620278 76714981 376297252 317271270 909302840 207770956 587637151 150736238 426537904 361153031 365980239 692291212 735695766 124431267 184805482 478584989 583916430 14354376 26894709 881404938 973274566 825701166 838777754 999278085 999312014 669139715 917868111 23222595 755107395 222898756 289568924 173503774 965012331 805590835 916979955 378250694 533457780 319467528 922144404 937797750 960543824 820441570 957842391 821020851 876296035 389055205 950768835 420750617 731952633 467067881 821466203 452867458 790287982 323356286 900348883 702902769 962365492 656136339 899266361 809709954 963541514 615858259 714548477 91487243 659254339 213526013 340219952 69628867 259791297 845940866 975858405 603731130 765179753 930225369 936068372 185148997 279615924 331496981 750525953 798517505 874391069 882204862 984215826 599301174 751618290 651023774 945572448 306055491 754761232 316253385 540583551 961649570 969046205 928951103 986725494 787535501 809470892 433185253 776196695 505800929 919124659 382704627 984260533 219357851 385287696 86899959 842379202 935170224 950382572 448671455 798233959 85056300 661156294 15668497 817661391 448387456 823135435 786768291 995210325 169669125 638579668 531940414 804012193 258906968 605909142 788308596 997815459 903437059 980898611 139999870 579488821 922635335 938745951 998551069 998897960 671981506 978497089 227869847 574472334 125965724 850309562 300993890 575648732 425812662 542841000 212217206 750390065 554300626 851457368 523351076 821919795 813640012 925398731 759317466 883712428 742651976 800156280 193046909 594073259 512435548 549481357 710759900 947867189 778386684 861989780 612113069 750811587 379452483 715500944 48487392 355044850 611217557 893630231 265998879 540039830 752517837 956472436 284177634 804402760 39335499 139039175 170062579 968804382 956382265 968964366 811590453 842089760 230576484 630817049 497844565 556405180 352867877 853596606 739360341 927128841 925819572 982226747 295993799 925361671 220243061 635887459 312444213 831305311 439285534 940163426 194700840 704515901 903718361 926450716 310226304 369453912 554158771 917976622 751631706 913114476 755611163 811536041 837576399 937770036 214042412 422179756 793211460 931223473 409712980 511262121 436346333 632220174 491389164 934904094 343054720 373411780 436632867 831632220 731973288 841205809 207749214 218603160 700591609 803516956 374759376 880417690 811493319 922077137 379285933 897299549 517129545 576729464 59035433 65712662 543984687 840700899 163092205 425411852 131790830 645171905 173538959 516426718 35158709 328664843 462824099 542190415 794098780 883653906 30806934 722546772 199233486 554635208 29552220 723473151 21805909 807000850 483379496 567912652 90464063 518344762 237643474 558692410 86546527 921775480 757740402 891342535 66892690 634959049 373517672 830035075 857765119 863366421 933833668 948230458 354093676 879991256 935878973 969615238 83372000 224749241 634718796 803164888 567210940 653429001 509782052 634221602 298493771 881831746 673264122 983023573 221774563 593125468 981986379 982899370 973285259 982119114 935846392 983598453 566384320 660811343 48735255 488600202 437026889 927185468 212848724 503299888 103867978 951063960 183100815 736121107 427748642 940598390 435130664 869274249 766727928 968006437 497686488 796308233 295294131 599884731 944009205 953160734 754385586 916369522 96731555 763655952 319867245 426958145 587642429 670388545 850209235 996546854 105868045 701195453 827355379 947853191 812734107 900235820 372047403 918288605 242220905 874833635 71409511 319659363 999263959 999377989 454664103 810739676 32257385 778008831 792909778 874302536 707702515 789712081 885386465 937874891 33090135 287593633 754966752 862680762 856838125 932097919 137645151 251764698 843925691 912140400 24302625 32808325 848583256 889477716 578759243 668503572 116109662 725185645 580404804 585338444 504232560 599382634 529547796 811158814 869626019 917723774 871012239 909097975 163131939 754738007 675836494 699645500 347979757 430715195 103721278 198667176 307777711 784761984 591578808 619316232 224083909 570180031 744828760 989993054 994692240 997883118 761679373 775757720 609272766 977842896 533509529 896941688 53793879 546851203 582210994 972565851 670580104 727994035 412382138 808969230 728609208 862183469 926108702 946241779 661285123 672435028 888991555 978677609 102494733 554833002 201902826 865639542 719940830 888705950 43079406 130332067 435521496 477255652 485463095 799842711 823132363 984170868 118902908 736309198 361321725 430778891 694150073 911942399 460657197 865134214 894442367 936449217 19576903 605690210 423400300 552166635 18362112 328403209 230916456 624545744 621486929 910020074 362448636 704972299 387193810 809263479 869848491 915132357 163778411 590464554 870568741 997312495 900746961 982857099 161949501 946189292 633192944 920389145 314108032 661547830 426738858 680689912 384089273 655323992 630419149 899290219 692715442 825989258 656445536 670270377 89090699 871489454 935513382 979636312 820244270 903731595 350711103 401039595 89824396 393924071 996316736 998516009 203928782 628958516 443240144 703934563 939557410 944118064 843985701 914456109 449607452 751904444 269265281 298263773 154720161 577369605 812061703 827833141 444024420 463901961 897416008 959126781 632384214 652106917 417509166 909151616 621886582 701448097 426880238 539746376 969291012 992175883 312346098 712382594 413110582 896713550 783877602 810483429 365723520 673769612 629245243 844751305 582501442 717964907 438229143 703537916 522950841 579281764 743419525 747026572 587561220 988019464 386792951 701114384 441274223 951240471 529574620 840614560 437382899 746947753 157046922 499184374 854613887 973362931 156819683 663736452 286104764 361571616 347330633 738185563 371881585 514710324 42671964 914963004 531812634 958166488 973147673 988538439 818363091 943770348 45311303 669154685 93037178 375873251 241246036 493880041 125625026 522899845 382064383 544222372 629956021 881015313 264744848 579435487 624592419 854695142 197407273 636824198 498970391 521049255 223749399 326584700 897012905 969413791 829080401 939780010 45985424 552194153 252422465 925715757 398378002 717766949 373589016 674720532 631609417 857038358 723064410 862196374 418166847 955586519 692807801 842453542 134618471 654313071 779231512 866568659 842395297 872020037 992621958 993689330 107851884 935969026 618843424 770914638 914624794 923407238 540942441 638637020 931496096 985754420 273971157 846440738 438674994 634379939 563491984 630468309 743054897 973034805 486527655 581439482 502962047 748874400 610483099 744831494 409465776 894285828 682666390 867630722 687571088 982699047 864260312 890804782 719532674 993394447 962256462 975338583 402114044 692377686 598660398 988629175 24798138 265552941 62332680 376655337 762660752 937039695 928957578 935994623 769481062 821629256 951789365 999251090 671080390 766224493 188297967 806255869 433082242 586580550 337253655 532438770 775858781 880957076 930022750 971969908 822365892 944772848 261786673 983310884 351781336 414479510 234702539 810286915 946535664 974182017 893668948 906043613 359451923 953991632 203988840 371207108 391587100 664451895 545472265 948333653 16544575 264270503 229345156 566224030 911515191 916466419 578136281 815548442 316298572 649228128 537886833 595900197 10448173 703115324 889093987 923862920 302769089 343167853 649765531 739309776 992785176 997408162 272262256 608271949 160496618 186819388 851500344 913667165 313448012 682247808 910732126 927213883 360669586 477273902 893987345 995329165 140954550 383482426 64970585 497063147 158948338 963380160 450040691 845676731 900766454 950058880 648457518 878820549 730198880 980199548 434543822 522360776 374489262 514942794 953661976 960699906 746073694 826002570 607906664 814510092 985199089 985552710 692161256 834862288 388514796 453093894 2926239 240276183 991490084 994939470 61295017 427444145 547727617 987371741 263921430 798664302 454824138 720938751 743547446 890811004 593730593 832177841 169213156 804128054 405569997 436442261 891775872 934830676 855333188 939163065 36596864 472959799 601806264 611325947 550651736 859547693 883673997 961603843 318982564 517740518 168688323 191495248 787223749 828279719 863476765 983292849 844616461 936278332 420508274 698003979 339603 545509335 285665718 566361804 78315765 825232488 461959452 509117105 79081167 764289872 734082969 997377942 232786140 816610510 8048103 331127033 557873566 972633369 21656241 713022360 913220564 931520228 804300089 896618269 282207486 448315017 283857112 304064751 964930817 982178693 629006942 908694966 544771525 602144033 133507617 731947473 374297 966822362 230293201 728789341 977072517 984337848 922818482 982575686 267972199 306564016 542087328 577633758 365729849 997674129 171037153 962191362 564087188 812490030 814509321 940459410 896950162 996876702 797123930 883331576 38865730 274410148 296747628 946183646 186690754 865961770 815806078 928328427 407910761 848417692 577328385 614733970 739856939 806400771 812302572 840875893 978563659 981721246 177206502 223845630 185708324 988004010 154557218 445679003 221280680 377062965 358525279 728241050 237386352 870032489 93030587 662420828 165623612 439789963 200087692 713328280 319385121 583093882 125259030 463596499 846770702 867222478 422609491 698561296 58678007 586700947 929828753 956901227 478814224 593573389 877562835 975998620 979738241 985917709 828874236 868659443 307667055 424616378 725403686 747091185 541961259 724010582 704850634 748045108 957367228 970460744 914410611 917863671 718242475 952297639 883010449 998187969 627408736 900257066 502968476 950964977 453828513 698399280 442568753 504416637 503930594 958714119 574403766 733691217 56221954 574046222 831862612 885387566 191195019 538373547 961056131 974592992 930587239 936789936 244274470 951731417 352060828 423305065 912942365 916701100 867422632 998329859 407893938 482568960 932927496 957431158 793081763 951544597 837038590 939570082 293802104 957442141 50228705 667007696 362709696 399205586 220471091 294708566 416493086 712006950 187093552 204255461 56746418 132650471 701165701 815877407 14328727 655281487 384885480 765126235 419079008 535528236 733507201 764372655 218519917 389210946 731423070 762876523 767955027 918294193 948733479 978256287 971816279 994434205 246092690 926251865 600771365 659079982 171924387 384458563 163598056 415686544 320105404 511072957 832485772 945543362 40755463 686990537 962263901 991452842 543189670 627537715 854717493 906396180 565489559 570958783 134855488 902678768 448882116 813022702 768966622 898331594 29790693 247270843 732524818 905346248 862017497 922062951 735569769 859078040 617275808 865580798 474762104 908762316 527725880 992622598 4594296 468253287 143940018 836053915 338163007 512107646 957817715 988368276 64009872 884976544 940727701 968125231 706607854 824407599 831779365 898497491 501073894 578239547 533747055 975706507 436564852 517707047 610520864 977155082 616647891 784460806 890065675 997740990 564023397 644883482 549035719 947049108 804523908 930718205 742654953 790230946 624114372 853431588 211432254 582189128 748947410 918440197 470643853 651093748 231040684 937268852 728781506 814084033 158775741 807549776 687209077 711317235 175086422 949619440 242308823 390828218 415024780 886228525 23149567 127444773 656657918 798831695 13753899 288785752 147310989 671222811 599393860 877769815 996011316 998244445 147999151 906702222 629065008 983657466 778714480 953308525 969037605 972590366 911271729 995553243 516360985 672978686 536007839 615865964 685329927 844867992 368164847 589577843 759607169 780882065 899392117 901204354 845843547 871521542 590496684 744698654 408946709 443811389 953671140 997419188 561942578 973356769 39542461 591293705 170248811 609367860 741723476 802787771 846675987 915515196 709426536 715327941 381270810 847830054 104079738 142516002 330005002 858276416 7098317 285666844 548551810 945235581 622692396 938911790 820969492 913713154 700604110 866427635 173318493 364298668 774045103 943168698 604359696 689026105 201009505 738716789 284418945 875469386 21435820 767405564 926376272 981471213 186486472 306446235 229960966 823319386 824062008 934232315 712351899 798238705 65372770 433324109 955355588 996167856 39049939 974136346 932379076 987816710 174932948 699165173 973568423 990612920 159453613 181767334 320246550 638357073 701347044 909060921 137660934 747082427 612688678 745503165 977415614 993836468 448592485 803439591 113283038 469506653 271003280 378651765 177182695 586287981 907589661 972400789 875349851 949482534 867417637 869603399 437639440 777909996 77636710 210045426 114885546 696035177 931464630 945086790 131338877 816984471 361043304 603955307 789407686 886473772 754728098 900176810 574615031 843343823 942039424 968402244 511798858 863164353 630571641 897476101 773824238 946876611 811807882 951277371 649468073 922225551 162601371 925121129 130402270 310489110 393227452 559491040 812296599 973477075 339202668 885370671 744788967 951529549 726580908 827776128 399950192 425315906 901033814 903749994 640471756 843927651 320187057 408448312 59361197 823274973 17514671 917143161 39656544 957478567 393576877 691125818 462958033 546949262 888231986 948021269 975393061 988270256 47096136 428605136 312110410 827219249 557651185 795967855 936079817 985798131 622230133 671531708 39009021 198237908 891540974 964963665 793680322 845413640 383489170 981000842 524941291 702558799 639763049 652857094 891113746 985413672 482109251 499850421 744496904 892080402 813906033 892583660 111736853 306151558 261016801 322917804 266473814 865353264 308960245 553486712 680066140 937125251 872114403 945961415 395781539 497518070 967365125 995725275 721514322 983879196 738948901 993808433 69174289 977077517 944733018 985262480 812584681 986553892 28546841 733633941 483145086 821652445 557470143 972356784 585868235 788796992 188936316 489638502 60099017 219114509 438441848 772737275 918439129 944800043 590716946 909266230 242966544 777688758 90431868 971372931 550257117 730431367 109680519 807393680 446344470 449955095 59062970 273288725 739456438 928335630 99574471 492131009 782560202 926853061 173020286 646442902 476134856 972074451 236928650 428899325 329569032 750770070 721123172 892008840 785747735 968707835 120088106 303002844 223348087 561919896 850905141 974800532 243943066 404390511 527062721 767557559 805404944 944355811 742331430 851981595 240702404 625302161 137571090 153615934 541593980 833310602 626416511 706839215 195730227 787699850 395718383 509181954 667630998 747980258 984007244 993236205 915378642 931577314 164406623 752274993 105358908 320223190 755011208 994644742 977272669 979088697 641073510 945298182 183816977 581143895 723621832 735750731 465198956 892009819 282579907 323463890 287575018 891683328 844903410 905529316 387779911 971353990 334637835 874342786 216751704 458875973 415631274 839092258 34529017 412538289 877282721 983008529 846621 696903206 637121434 664724071 237186323 443710259 544215490 803545000 229943487 879850070 400183696 896005565 122912522 493159100 926870115 931898353 604342534 854145805 719943861 886288470 22247756 775991485 361838468 440712535 221466791 597418418 759395202 933146580 457642929 740402740 988611457 991176886 728519239 782748168 947107994 958430110 51006070 231936407 460707724 772058026 850132892 907723693 442795434 728656362 73241543 79378705 4073757 791415112 335675142 431184459 416428598 765595680 150344952 705693014 621454694 886106414 151756851 238537836 944776877 993039857 700323731 702776191 658638940 782809671 175398894 956327469 798563215 857780841 457681529 836849639 543934703 614545264 912896779 926276198 33845201 432569028 45322323 893675839 789093280 914645310 183958390 494040342 975781175 992436183 634456221 693355122 363190661 572307220 287701675 465063274 578267130 787482557 119507251 138742567 203963072 640633586 734723216 924191481 639187198 685314059 976529637 987720671 846760639 954337748 569762144 974555875 184895880 691323504 910914893 933592393 193628059 760422495 949966605 975068381 337106315 887805370 987836650 995174855 73863361 502919108 212812061 845158365 662195285 867035724 623510719 870888309 290014787 679856965 88943632 96698804 231112221 866598445 117632390 810016671 769711255 862226678 696497832 866204626 636307988 698887815 127092508 128549132 489662724 784563650 850198044 856682922 381240947 961871403 48978443 761911488 781990642 886704829 458895739 694841702 626974910 782916008 267060270 405689737 315721802 424551270 736300383 935999899 663758231 936344799 680926081 834259200 241822266 400095545 409294886 503336127 64448724 863098599 968542243 986861682 80584649 496631973 482612332 806103060 651083645 665315711 984436376 994220835 790928559 886472622 563244678 870237154 548967309 922503335 815041430 844987284 603525464 717485698 420611783 747460847 508534536 557768484 83090382 446523926 273152838 866327553 654280666 796136866 361239869 818359965 169227046 172138703 727477920 774670696 148465886 279218489 85572969 300749334 49193240 122762830 336023239 653367810 636126385 966557040 227928607 499835293 207693323 302605187 974156480 985773804 118300419 385991607 386426961 750268752 7169967 643356203 800095388 800758419 118060975 228269866 406937992 598160824 514305674 937923573 588680744 671806560 666319671 922881442 265911521 305265286 873732768 970662254 521909909 619818853 331260832 625522932 678116651 909947792 71362061 132537575 376359102 821691959 883120810 932636382 869388706 962783659 718769508 934277846 865024287 893135144 702706667 798852500 843749476 974761864 194380065 621668031 449753542 710011216 973778484 984402694 379802159 959519961 148440512 327967631 964540469 972075693 844336942 919401147 850572479 898034313 100281938 188393922 19027252 642447818 116583012 550096750 600747867 706286441 991935733 998538977 187546670 992908320 860310798 872216170 511393729 876410174 946814745 981718975 509865218 715957663 668176641 851828930 957212467 968889100 373563626 736005591 602403731 775594161 34553764 446004191 340643377 912732516 684470403 969061614 317789171 584866085 400517370 641396162 610235010 611173176 669598951 957922804 193900858 582733376 315143057 354219850 457343924 786299422 58597919 258045444 422821359 507317169 884861239 972518374 977579292 994386758 969260332 990603629 623468912 747780841 414501965 815152992 930214049 948477306 462543061 862484745 8990917 403166768 85863687 293989266 108292151 184055688 167533114 696659546 651553688 863755638 242854082 420238093 38574754 972776800 730333966 844218229 668006994 708749631 292172787 567753431 420951179 844894547 309324630 837146571 181694746 391736454 994855861 996930864 115615218 218904723 729284093 878255235 74354177 603286707 219990779 295904218 212882698 910688728 400453890 984198966 478324637 504338615 994794479 997126158 973651018 991407030 687624872 755234618 299034496 586223601 847415719 906695005 830815866 944831698 123181606 630281123 325394609 752612082 362525587 926174592 674517434 851623054 819673507 952585001 694608395 917789276 191786568 623673124 983808017 987626733 74233493 550886964 492250432 658988072 559177547 561540963 188088521 360614259 365901732 918200663 871788715 910800558 506457016 767906275 134019426 722649358 234965688 305984655 103877644 903056876 959297931 963707344 531918083 696806881 459906188 777456315 254367883 476405323 806974708 885647236 821445408 856319219 912782791 964199798 522308740 957951071 698356906 984409878 52858115 861065644 139661111 523950854 823457809 853022421 628545537 900837677 703347966 769910588 589703923 932617801 54961589 511829353 458693166 515319802 982021951 999324541 162602761 438815019 734229613 828894877 231447116 450371782 824571442 879135421 762638586 784325426 173876815 555914532 166531681 586619082 780551795 837390891 750571058 823572455 399548013 760660389 808340318 907238255 953578221 991168061 87285705 406161281 839406148 969249385 474526274 662395388 45626541 759895911 803250606 827920573 49201825 314964728 546738953 554326077 598979226 645890269 932781073 976647521 432438246 971469258 943403825 964799830 971500367 982235205 923111631 939521286 967588157 976448608 954030757 993022954 921885952 990960866 680744220 914755379 716182074 784487755 718571383 808998426 369700429 725621425 381599706 895778466 590228709 661143671 669631740 921612658 111567066 277740694 810320219 885701994 564441904 879081196 70306338 477541681 629837807 755576306 531947462 549826716 973626 570776622 912387793 929211350 306578982 759020794 534893468 702373630 28444678 84382240 836654639 916331271 952812859 989515518 37557748 979653533 29546476 595684313 624994336 777689194 1965953 423338059 111299679 821348790 803298363 894685199 842361419 992939399 301865148 482097876 121547173 764975315 987628027 993750444 303137699 440105705 106296320 873815363 582838997 833588230 975097550 995782243 247878958 622756204 425717206 959299400 212437358 661905932 203265298 958907027 678871370 905579973 654694659 990406550 288490777 729989036 595043542 919955900 942403813 957947312 337281890 758450847 860569312 923047426 109132727 898492162 713588707 910705993 470579417 497156687 721101711 739876863 177921960 547136502 222085027 421645755 157140356 447793460 433098514 689172840 570128382 963486261 732960198 827740725 976298191 987380426 836312765 878174970 526717330 820081494 306100533 348922423 213252961 653583055 280700418 972797013 188447695 823878809 711669670 912220900 318461912 502430995 967982653 968780566 150973866 365836323 101045334 607473657 534590015 573035762 312468565 455029782 355115955 532701414 323388605 950991942 865534298 915490013 266420779 913599612 154933011 621088392 805331977 978164650 624011714 797757572 557024352 597229210 694291371 859162493 179118897 280839684 228402852 920033496 142219633 900334075 54501677 658684603 749991823 867415798 653529402 871753354 772177999 785847953 320615852 770044864 627461106 870708039 683908588 692955811 560768051 687068174 502126091 903374046 865413788 917936618 735398630 783512453 308202982 636976741 112646989 222203274 78506409 652753240 415643221 591179586 520910553 939122875 507810286 557310680 719796229 784653899 143354152 880365428 366979953 716651119 742646535 780095709 130641770 603382563 803444344 831187511 91001244 723137445 955630479 962190752 920553237 972414803 606878063 852861436 817013040 878597467 874342194 990772906 854375561 981167207 296762935 782916091 405531861 626819739 56645568 112771999 397892745 811475255 462362770 781274909 319694538 626648259 343417771 506933662 124525695 165872325 413539927 532911076 204750711 502294917 887151180 961387498 164088348 498533598 49222878 614016159 234466130 689929931 452617474 905324898 894891617 961043888 5861517 28798622 948054056 979180926 974447743 988273203 387746334 546293067 813978433 977738166 957524183 976901163 485561996 524969999 452765059 700875494 433253225 993875766 56319030 347946527 46917889 60139218 209429233 977097112 25618265 184705003 674654486 941047523 970662836 979341385 721315833 935896952 437615588 441211210 10425200 921183448 540103876 660755765 485637764 761479178 266542389 763817960 619661867 717313771 863641501 866452186 12548822 188894331 57465591 961124275 379322473 666023483 902022750 954461932 345936125 589183807 525599781 724281122 172930370 384859125 809824388 862684275 901975752 978551740 950290758 998653602 43391610 734393895 712181879 745529544 483937358 921073538 649426626 924497012 781614487 954458203 105531597 961939066 416644615 702902789 916322940 988975647 579715676 962432074 363216247 839111647 873458464 893995075 209260377 421721534 509309496 525858502 509420787 615336331 697997062 784704910 500661387 833662896 826255471 845465340 66044184 954434100 55322769 220721151 709893930 979190371 701649464 704302697 78633521 851199513 895247628 920423150 751321535 826260086 596063122 797723919 140121302 886208628 352161207 818078368 749083064 802939290 377823010 430890845 819013013 882423494 78584560 559721810 727089231 987908405 665110423 829259684 808714666 891572542 99172642 427501141 212997988 913972056 221799192 458659291 174563951 341199862 784982957 993979528 132633860 798673829 853613515 862536012 314381723 622465656 649355111 887180821 311498968 727417312 534398988 793738940 442552798 634946234 196041624 903936354 769714844 930682152 92322377 430685992 755113440 869645341 316877033 430851285 159278132 860647879 923831394 964550144 924758672 952252956 276161924 281623234 330580461 867911107 89715650 134411687 967742113 984528517 815681488 839249344 934955359 995134852 206707692 678264197 228560354 442382468 283959876 632953034 174844530 710544638 992845293 999044673 241130411 397463440 159022933 695765045 105567922 388036952 587148140 609766388 363167758 687671117 206433848 235934577 811929055 855499426 707773352 727650834 515759674 542644566 422527190 991178210 629436026 951301955 365759645 711185378 5198176 992775212 438533534 756128589 964766413 995890779 769799205 915338012 193758115 590005334 797800712 989145134 388112282 777873319 19197992 924951344 601895549 988756168 429151728 711430906 255926637 990318048 100365505 925406492 843751666 930219724 87278845 591236205 165472635 498524377 858556335 983277339 168845111 787750849 968754126 980341713 783042115 826797044 457496690 461907123 342364309 598244776 239451576 805738451 343408563 704267548 776063990 792122355 833744685 926111528 126607236 392527947 389745089 510893248 144365963 503795166 162175105 738429748 414541127 806640972 247017550 898814407 596202498 992148610 104638095 506269944 643015995 747297192 345564206 917413372 332876370 924624853 683145456 809749479 853059654 958107614 289457585 621964950 813681365 956478019 373460648 878902535 327604627 500717995 520286176 641084353 59651117 247741763 970340746 984381930 990272772 996062661 314374995 486478123 705509595 844012693 989965103 992156953 785490906 916970095 349693851 408901428 466514099 585305787 331565500 973154675 570828203 780659821 582217603 898641999 122954369 519633303 366474141 711962943 500508966 537766891 338516781 509509341 404962941 516794250 943264492 986027403 336522547 448742750 170975808 696750969 130340319 624955846 2029372 590555563 517857082 574184372 949602868 960640866 635512579 676191739 73533900 962129650 421911904 731392031 164948807 824063415 934296165 964000537 40945212 45734964 657753698 746302492 28423639 272156665 891555986 967194621 371129966 838811248 916466040 961409770 551213430 642588283 119079802 993386563 849603627 875783210 685472284 875888914 510308425 718494226 928313138 948060771 879662495 936428066 721296312 987221694 856380939 934326666 952960962 961360885 79554663 328545692 528903553 714706878 231715540 752246118 227807278 241594346 368964564 784511263 758876347 786070663 638734953 937780014 660313329 732200423 647902644 979684374 541322740 795234810 912593013 981529198 404969276 770452049 154658657 275785401 778904666 850503552 339536531 956147060 287275636 744039101 418447648 578639601 323260033 615683500 797947755 955095942 334888361 761612521 452900358 495230761 595323453 610064026 645624965 887246913 286086741 609019275 470132134 935968091 380366576 749003519 16304893 130381342 426606460 532162035 320316766 337981028 197947143 622885784 219137270 791013286 376010066 699502649 898804889 935522796 200379599 462914876 364219258 659996047 956752929 968001085 359046369 917875634 730747279 768872760 813913600 897066215 425452423 729886844 205649889 326224742 658320578 767306513 131307106 304753440 808822977 959173742 45850540 822276369 257956218 933639867 535030710 726407748 829914162 874119173 86511292 949718468 717757628 727111622 488774539 970495105 357248774 369511735 31446537 232749125 771401994 821016871 596125322 728366028 603628892 661852772 62359689 780233590 83802467 637713210 313037734 712686709 94936838 406021622 192035091 537647727 305032516 406425949 984810507 987163690 161223877 668211954 598281452 700245863 601380150 722006055 410060522 898154955 965508548 977156392 225082526 750940308 411342159 938087158 842582831 931694776 660267451 878342535 352487925 378489744 362958997 585950647 842921265 986759483 276545445 893632057 947718218 990214743 817692398 907378826 503704293 681378339 93571038 203110691 772615526 856241636 525787553 564505009 109555346 954003537 549235021 977105023 228877813 397626133 490224434 920237405 664970452 699719924 646880852 879576147 591296766 766487949 510895427 890081736 657950720 799629005 773567694 851791009 784231330 914688117 461116253 767732428 814076472 855715270 399621159 454232661 273659550 571216224 78345160 559372005 137155681 745710548 135311489 372494949 418886003 720101861 523336076 610459262 773596368 858595223 888440879 890510138 549626909 951074196 664885177 710508705 958236024 977650453 370966938 746055642 3051217 449697065 984374112 991840069 739255418 806158936 261212703 672426778 136408588 158063670 682052503 753405390 324177620 793503142 127406814 851754534 458799132 833085022 439404867 714286450 538501539 845577549 814190679 860161858 757474687 854025429 689360836 970771492 117860696 831772885 169390333 812505485 975330342 990307591 18965935 243136457 44369276 396634446 690777698 727526058 313746739 501997975 565524119 757892131 606947006 725124009 77068987 463961079 955872146 957107286 533264452 636441728 971746066 988065523 942510794 996358455 63299297 798379777 579569395 671334869 757984600 805113012 562492664 786069942 540465836 990876064 95379927 155361642 272416135 604087167 190695752 377002318 962005966 972875734 162503919 641009595 584770335 933042060 950447448 996752102 976468277 980268461 34757738 696641504 69042839 385477087 621874352 945596406 2652664 84061587 73572417 246465731 909228335 966763455 884098016 929534124 329188412 463138052 432462091 496196921 502131463 966233151 796214773 990402340 43490127 763218546 149649587 475297670 294407430 734868790 208344903 289619764 914046137 935889033 455155650 638150230 248678251 455943559 702238224 849067746 889197403 987470772 46797392 497405350 210635377 732325966 887217062 965206515 458147513 826207483 123201452 415352519 119544644 498784115 812619881 976689105 377017173 604977208 305209003 840133979 94340063 139767634 215256385 426164101 357121016 538513816 744053811 857590440 194911122 466757145 469604042 634492431 376737093 753040821 121668560 507604632 720492994 834110576 810371345 914751735 5983864 262043107 48741376 303929570 108476372 741337805 98835042 812948034 526716308 856206665 222832452 232458297 453181442 995434869 459542234 785949827 427033376 662143852 943435179 949011517 650298573 716182881 345840994 972141323 797761839 855748670 29882235 150622080 954339594 958418182 23089481 977388388 505460434 741393173 796327301 954754603 790693561 993589724 636149275 982804960 594189527 801450308 3796653 484538822 104635761 358779288 872233192 900459169 214150542 895046222 577482899 917853273 197426473 830208321 881766036 994167949 515206908 785709160 826574912 947623128 955903278 961127400 954030756 976599372 548090471 784369591 75141792 155222894 579424429 930013520 490466830 594151014 852315495 956684338 622250506 926941558 524338419 570774189 849243777 915326895 595182196 821584216 246098166 680704019 534528706 864441076 731024003 876631204 898419132 982231538 252606774 907762733 841254959 985617466 279611307 671922056 279975712 380522487 751989952 805649110 723835879 881696451 65023377 615322750 116346896 704326882 876525125 903220107 560077420 852118390 521527094 791151707 164899272 790877062 918719523 958030518 425512510 817977903 300462784 862320234 65904231 461393203 242734642 535713084 211439045 767942443 470487920 979772234 611480067 865741038 989502440 994454407 841464951 951241207 775963478 847350625 433045860 629843038 245970834 519997486 630011638 638604790 887611955 893510173 29790197 384202489 163518993 490750249 786426072 973886808 653949731 671463621 322221528 602201324 323760056 503140017 41382902 556295326 376452500 753105770 386621911 634370289 91019271 235730962 305949575 661188652 27766547 107302952 192505683 376187809 377952349 396705182 578204109 941501961 982507583 985423341 347756398 451180892 576510701 609822854 415022211 526414948 515876081 753730772 56149280 836596558 793048823 936820891 89879532 324986993 161952951 187498633 223789496 238980176 405574172 450560451 922680282 958129170 756344314 842959244 670697433 796749789 793576037 910314786 948758560 968957478 164330865 638205679 931386626 964002631 235600565 866989450 524208391 825154772 221388496 378421474 894913972 897518210 318669234 500618243 901477146 931833078 217850667 760283103 538765907 910945982 140729203 144973471 49603565 674988863 225288030 590599115 721652498 933683798 144550189 413914289 990815120 996452846 10464265 936581560 266478699 481238244 356905903 824791955 748426860 816254242 267704429 568415570 206703298 409876402 852347317 887915561 168927073 693735246 40139137 183346096 205252149 529683120 800111344 990157439 674729889 935784440 22298643 285739550 15663380 602555579 743136410 810506892 878257844 936203963 203956510 271753487 492116849 863041096 58978441 488913390 823290815 924726628 201620615 828182733 669794437 696293783 545970024 887481669 611680034 739361476 171602256 642805386 18420724 282335762 288216512 617197220 598515352 793295527 852530955 927151554 239583876 787033402 107096951 395297939 900855782 958700912 118619771 276733176 430405975 618421824 522760419 562143265 938612812 946465257 600526654 675934641 198054138 989154180 573681106 620210201 939634552 994121859 626016918 715407787 456949568 855177190 170915795 385340244 685395952 688014612 650685090 704259783 483568323 695183914 117718603 741523197 316115610 507018704 856149079 907549646 869811032 982344910 458502977 593353239 199513382 446672415 175541571 566426949 369536254 537537235 565351146 687893321 780767698 796346369 707314912 920975288 200333348 719611933 233615609 720722788 377944815 984303957 201092987 904801186 956391551 973002952 312522282 954062469 702058679 975786641 986429510 990886836 621252475 969232216 853870679 956657143 707073607 990209886 953595537 973150467 422513194 672425172 118647349 347194482 742135907 762789797 758880217 976013438 316084614 528854376 301890126 891260769 135927030 866120319 594419926 858788256 327053411 971297892 958639891 981639211 175566664 251761389 586471081 929303075 102015477 900957197 945847656 981852209 42208198 769630513 261895599 479315519 48916413 403702409 765540277 823377053 422520540 783091705 447539029 833683190 402554376 875951256 19049591 301279209 596774784 607724046 635012925 877421900 401152436 787491998 901013746 943068025 568699371 830348707 49750634 333522318 720692278 889855898 569741016 583441226 325159497 595028692 653474312 691293951 971560413 988169993 363342395 561238702 980763161 991548963 144998253 371631995 617246063 715046769 969088862 973932116 500875062 614159531 341335257 749892517 1012915 102558979 831077287 879545690 998439368 999150937 515123733 720766093 546750297 874774422 839752097 947947180 628214829 931969582 814516906 989614365 757754099 902244566 566330137 814966660 616079109 977441434 696627372 839372220 235238528 315866260 901755029 972375893 142337098 723310656 67951972 248744374 309912224 677054016 526055812 964173442 486275120 690043359 274318892 377976447 623916611 870763346 777268232 970703083 120887417 329266881 526199423 610701198 991673394 996064309 6979948 9555283 532097385 727186940 585413316 979968066 885208858 971078812 272152641 860156064 619061263 716768329 992613986 998477591 424159285 892253331 564319097 661576074 22502405 814924669 764054095 932776140 721440527 997717724 225234942 495000267 227788080 974229018 769135569 884069583 659524423 798658311 658542071 779254651 21871522 325383702 930684280 935505966 536580647 610032975 517436330 826660812 564076663 594155562 48457655 644492790 458484586 536302932 791500648 905865197 18672 359368924 756336432 876098802 927418603 992990712 512712123 977523669 377600046 791215913 762955942 852960871 733164765 906750835 116900728 200542886 515407163 930862808 690741413 707028489 183638305 369075816 182238005 611374056 930506966 962399799 633771243 654077299 203762650 566542566 631454818 906750326 237123053 642221868 896588348 949198466 438971559 931198250 454082463 881924171 902366081 971237088 830659536 962331339 425120621 815762183 311417174 888891618 289564736 340705316 499746111 723153806 106167494 416292191 196520608 264262462 4765733 928698005 898170033 902083840 40716231 199281317 12550746 125255486 219117680 273104604 915370223 952642089 624506186 905855632 359677425 943709091 34225733 979909489 609679318 675036962 812942395 960464559 240604237 999118961 443732352 977655101 319078052 834361378 791642099 943477175 546588151 691874947 346494677 918859519 247623114 339288427 456402898 560141830 402171071 851319257 982372403 983160575 2983569 407422531 736605999 868908750 871105666 985389831 861790411 983201060 84304584 577359143 136315831 938285413 747325712 998695375 495027798 909388819 656196995 953979852 258390616 388374061 990035917 995599762 596777022 597241125 911239111 975661121 473949822 942786590 232692247 727408162 366218592 883061489 448497656 664021022 397586925 578076518 178373965 766750229 504800937 939346675 361557715 991566652 756548458 962426378 127360667 480929830 496947509 686732853 48082173 724446760 390423042 511852272 402144079 819153548 642095876 971803723 431034903 726276293 970149182 982478158 16147850 989502816 930797897 935679223 887398384 997362371 317692078 947367636 854315350 860841196 223069957 739237489 315401398 456219823 509311384 947443940 118488212 657372673 149236178 888275544 854364626 949593510 147814079 567341274 401493706 926799778 935772260 974357773 273126297 344883827 813415256 966913752 51794658 365710710 1515886 849110674 424615341 942896923 985980603 991289541 657976344 844830721 932640152 987809458 604166799 645461299 51242666 178597037 26429099 412150673 496106783 671420030 947374500 949562241 200534270 325407514 197971230 821742667 195008278 653599011 416731127 789212716 971683506 997370575 79295147 689662205 139607959 550152909 833434151 950611418 316406596 362324295 439092778 632135082 841342809 937057140 351326185 955522812 800475711 956047454 427135498 614406013 243033537 511162032 466831261 751700587 322445353 922824243 657500439 806276235 678195030 712628995 769038958 868711120 481520244 517327285 60734410 479970464 499425462 760385572 288780811 825284966 584151900 950465642 577384329 966358637 830267339 843364474 672147661 991064952 88510100 816231816 932536055 935601882 232459351 443161055 777894658 861631708 230193875 290683495 817351924 846046942 671983929 864153308 557452065 890038481 377488349 651137573 947171745 961276624 502219773 545297342 932496346 964018096 517706465 806853043 739709060 991318185 185117791 548784387 52396470 248833736 968748311 970791903 939145726 940937418 141659217 882957280 962015129 978614051 257315951 559880410 867624855 902514819 837839328 901067153 364076780 790328645 969442762 972281882 517086449 967556809 894362286 990781003 895537000 945668755 592002582 897713720 197472887 234820003 346134115 453669507 828549577 829314028 44139351 301409420 418871350 783915341 823018561 909100819 443402437 489830147 201224491 785093394 472723609 568005921 373771655 590406150 638755044 773378301 592453386 743813904 894690836 896325956 798301394 837258328 867378011 924692717 688164317 709459357 672735943 874884257 249403563 740379635 431862141 798787962 322739258 544323301 528235623 636425581 784378968 931036682 320033479 401181505 908604241 964774233 99000715 128717045 345491061 659893820 642885314 965616893 3658713 269067078 244110082 684910327 241209099 511258168 545751957 711140709 541823161 808745587 218624260 885443670 17554649 517048972 908848189 962769119 342288499 442629265 36799423 680857961 437871657 671170867 545218146 910306149 492304315 713496685 9536105 436635974 864841711 997030307 908570554 919447137 352204159 687826082 48968950 298084856 948842 173430794 337655338 919615496 900476187 907313818 236922000 603046854 882115522 932796571 618312517 952884574 636081075 751216097 80080162 677110580 729941268 940467339 801388625 927287846 785899909 908913287 517777313 866094919 456475839 952588226 352620564 842112912 508148301 939046835 969440264 983557422 670796056 681716594 571942862 924751820 763163686 771744568 785092039 916569218 305832292 882317051 533165525 934201148 99711174 348587746 160663274 833051751 21699444 665410510 398870433 739409465 424851026 514429922 754055540 806482703 554145990 685551998 429987431 727784809 291056596 300382161 700347541 817887239 821234786 935163303 185195403 512087479 634247533 771306948 377485740 572033999 52867038 161148901 189148605 570384796 250196868 976204287 884061055 912258150 795775618 920742320 180672592 805333642 678761004 993284203 981379081 996988239 654175196 956842590 379306711 643812771 167964918 310967404 928614099 940529428 938897703 998520866 398876260 402507262 387822056 596751075 41037641 779678311 281751696 469940838 346742551 759283269 511450750 682783361 315805216 646735733 255132319 618643934 90215940 145234138 120303817 124250977 825471618 881930356 376179698 992881624 866948281 974101304 544525155 566786926 215039808 754556022 605963972 691661911 415518566 507170697 179714203 464313715 983026288 990537483 777006671 963834517 57719431 436543005 595217451 748068221 825443395 957210666 234102808 339350582 589296979 601383195 803801072 960189222 982863796 989815091 180631906 969763671 117691935 917676618 540146744 703943826 691070106 830664306 954951727 966225508 864964867 964062684 425322946 760194216 174683837 302278842 800787668 855756055 780064456 972933632 494167908 769196131 842329090 850698409 589976006 865370842 856852541 879805595 103181580 851197460 294903720 518175077 11574819 459153780 691827436 985026802 278475108 787743489 736605778 899289122 832694159 951158853 607394951 757688317 640743311 988627314 525996912 840604036 743041624 828337631 372596900 882242772 115926415 223175098 724932052 987574601 258890815 723904547 325746332 680022886 172893686 926190955 832941545 967424692 585744640 633307060 467461430 558851221 695473500 810153327 416207256 846788118 294737062 417314376 261720280 391228996 512090889 682126095 397676052 872706980 132951233 707297869 997506690 998118178 640234647 962861969 205055455 489274547 578820093 945845642 737233960 879251204 901821702 921677887 348723035 441325567 151811582 806686893 490373776 660064666 298745094 338737066 236411184 318404658 478356532 849304018 586875511 724879325 790558965 839105498 779171879 781340539 445620033 983397348 549098832 983752794 230525837 405561802 968672990 991155050 758566024 980935844 769907899 903156769 163680850 782625205 526001733 788474182 47576381 756385205 448861282 586318785 376381598 845754297 280482721 875469586 579782480 880723522 669167090 945723983 282314849 730811877 684562147 911554762 554630527 796822529 694567664 695871802 641826578 754520360 695275531 877373549 327743611 524917431 675174459 919646294 609757997 723670388 678333475 989961950 76453411 538210532 904367195 970309391 609716403 661230950 697678840 928851367 612160193 860401636 369241228 382215186 368547189 435905392 155664277 483383145 564072507 865548081 38758866 954626752 358076508 651945577 710741420 945782100 498703402 633010531 23759453 333399433 977667715 992779861 487869918 796967504 27684122 255114127 387981117 400286091 326494905 900430773 378173431 797422447 680302572 807658357 630699459 682845141 632947770 901289174 583516787 770380691 156175857 396943234 75058584 992177526 991263254 998180170 725233037 810315893 14126143 949094969 184100957 479867293 864376725 958733488 13873249 631888569 812867514 987548565 363953928 579343645 594066513 637698694 777583928 965349804 460976836 497638999 458098091 951489076 286084899 912699791 86364671 452477258 971156019 985697496 659156840 797411338 556327234 840444138 958130167 997702417 793661359 968491805 891777403 929452999 718949034 794797654 248590131 249237907 235261931 781194036 756310387 991640356 224513389 351597597 715775989 767260975 846382843 977386085 596179226 771415797 64071430 594561155 35674272 959624846 993028369 993643459 15028520 927267281 474889934 500261291 818776094 890978427 192422338 531956896 578135743 720505118 907180798 926248312 417667662 732278760 117794789 786255785 958258733 995502972 727974586 743052817 434887670 545854646 449858902 690909168 835439894 974283086 932153946 950595491 783670720 917657104 289084098 441583494 125629786 222923005 978818349 978913113 130072848 205089866 421998444 585449369 761180107 929876046 471949594 511164014 622348134 774859493 783880482 903628208 852185127 856796424 149880967 408455835 437659476 675149616 529257790 562015861 51867632 487109983 118677056 385909927 508499349 992816207 277934267 520546814 932373479 967901602 960451945 995678887 508401261 966248258 25661468 143636543 747768272 809230126 272409366 398330786 376945744 963886960 326393713 660674918 524357560 585367654 598955127 709227406 366119590 565717111 791173941 998206036 360836722 876903083 745561962 919390154 660499412 811076910 210815407 287587647 748513857 958224027 398564374 400715219 952131715 994785282 673070765 853966013 881340371 965954126 85287815 379820211 869258378 970817041 963582061 965279642 357970344 400594002 824718412 864120139 987141115 988938125 909161897 978205434 742975429 919698586 668436507 695239853 804554115 925604391 824103926 832114038 268060020 681403757 943204456 972075324 64772945 439537909 838178376 912623946 65909784 799394399 214787714 395205845 8757324 354403681 758748155 852685220 936543309 949235375 49361813 493067044 114151589 781658743 208962200 395899889 498290854 835332988 732472960 931375949 268181185 988414408 584075770 743534123 837399244 930605326 190074120 193957268 169932162 959711256 158027010 993062726 752405569 862278146 20597098 292758194 735394541 741451413 821368795 876755003 494298851 578194839 966683453 980044198 525545173 760487830 791205830 896371441 260154718 596906830 976133762 977122629 117011068 872450881 938181794 994491902 465667828 740228537 161904288 348967495 375189869 791903114 681207490 887265056 438518071 800211565 812980303 871694824 501566969 987492058 535017607 873550276 803078355 956470782 78556501 237941415 620506566 688893851 278314585 713759295 703461944 910419729 308116465 870408011 333287717 479703578 164503921 204061951 311053822 762655565 675950094 840966104 364099845 808035267 205049634 392938528 96411938 558233439 361441100 466466979 392477946 505672492 561713925 852605121 764453254 851681632 735841370 979166267 643954105 909702800 761119779 936075306 307426231 976431152 282712730 346200640 286383003 325102079 427738779 645499409 85950997 365549939 366569526 408819665 443344404 682599599 839458161 982423777 70806904 398347568 658727823 965530792 978344276 981746636 218770876 586835384 134060811 737433339 164144250 713155828 490817346 609149678 615250369 725429821 601059393 683355347 68258299 277004775 19789470 269375756 422478825 499438101 269521279 880649290 639745046 832497338 887625199 983171712 232043953 571020143 660880750 867662469 397727003 493036534 429184943 466276352 793552495 841771756 749059123 914677514 560794833 911965281 967245882 990846922 47564619 484600089 639760773 882939623 59281568 321105852 364179594 458020039 391632523 962524714 709262198 984505591 956129963 997099912 127913151 742378917 562992267 996617686 101616959 939760409 801554469 995697933 19114769 375648061 359494351 440614019 963831849 990575484 537827757 744891298 113178377 220860425 965347279 966054337 896811032 925428633 551920148 806566902 936067845 959436568 557596365 615354442 606340553 877226336 994082613 996690171 445485917 875434245 78048332 692117609 864809580 953892336 567134582 760854061 435071738 633430365 474134587 989161065 305238631 356268065 682685185 883197918 568341906 987403065 462295832 945789834 967444977 983379469 665077923 923264617 760436405 798391965 391469757 754993978 897726549 957323764 856276479 905886340 319992240 870638798 890254977 922336436 150298981 296668489 735406130 937735776 579174101 738272860 321962212 471198405 252455573 551788486 866058617 888902542 880201770 985567897 412600175 457296000 332806767 471217467 122884416 812537749 783116642 830654894 44920508 579084434 235961583 455201229 757610987 978610858 419361191 723217820 576595322 638086316 753987383 845460675 421624452 876592849 738085177 917329648 559769854 876527085 347382273 373476524 50523266 751411327 505189080 861267031 136215821 329362698 994313258 995726636 560598331 756957870 222367932 923256598 792840721 888434136 382343162 758544463 497814574 674540350 122789709 587817665 788238642 844838497 731209390 800991840 380346457 410690585 984029094 999370469 82195783 484560457 579233214 824123671 38888504 796127353 197280035 884798755 967186817 982773877 206018062 623787795 646578044 654760898 155995394 761772161 542451654 568326388 527813848 833995013 575299308 633356145 326178270 389049755 784016467 933414023 402591842 975489593 763531604 778794725 371838447 568513562 698883016 700539105 48604317 822432035 522792006 788984607 208503214 944472735 571713904 911839373 631274496 871169344 429094425 741284696 419778973 993080361 423792037 558434309 243932019 451664981 839714089 899086373 364912513 629846098 891485138 934265849 459801325 727674314 900047424 997056048 45498734 449451054 78770190 878845731 938828035 982427122 502061657 766283679 962084093 978841493 661074955 816150910 852985091 902644292 625275929 938376490 21385641 525274028 839133498 843465876 660553732 948391320 876342694 912606513 842234536 929009853 534224206 590498007 313516861 538075312 883651388 930587444 605510034 902503589 306194557 485193627 794265896 959315012 700603804 765956872 894095667 903655201 691359141 692224306 98825945 356211708 422419179 532348330 116046830 943888426 561487682 919380597 872019554 943042846 81726596 424127093 545980256 591265495 46665579 881754028 64524935 909853387 197722805 689947633 391044615 728868906 272296252 755149045 341623250 843706059 740996473 853108204 575724699 738418497 800157177 872390145 907483967 933378001 461493186 996694575 349540758 686701104 385408453 523112296 565555620 852496436 880275106 925949232 675656125 793717283 678806594 772346749 437422052 820709608 361903862 575462201 918139701 944137143 678623138 870335653 755699919 973539788 312623610 770526035 481856733 657252793 288263579 662734385 942613393 947500426 330507856 914635207 106970592 815968956 416559033 814579700 893936637 977876147 478445610 556243365 300517979 829023865 292827304 338660609 145997792 845646361 609333491 972321047 683752467 982638685 142845109 255464889 174578898 770548060 222245033 549294883 874460863 948321849 130337349 539060822 432410168 815515056 65005017 726889814 486809044 767622667 171585494 867061076 662375278 884718381 132777050 302725198 640478954 652464620 477486858 790599111 891708126 929058032 876259093 928536203 662821258 759206773 190005665 962681429 570770552 667626048 831794256 997171823 14429277 611807349 486320520 504998304 65417328 584309312 182314676 873957913 257700951 442449761 564619904 681976953 951263451 989399392 33271400 342702531 515710771 543250892 695348675 761796969 301664888 343769502 678451310 753723456 275796453 769364432 870395572 988028322 475514317 597175277 801040763 807402301 446600454 954424154 207422028 969094693 434931606 872780292 471584857 798255295 985988756 998882515 169711491 359953126 405919559 640562507 425976900 561654946 632433764 936493558 744404085 832723379 407786332 552586618 468823294 554405375 241936763 705469236 179087260 873678606 887217577 981087650 586005320 802888807 351930735 853303003 148322285 165705297 669773026 952356841 814246841 901923435 447542891 784496294 89141653 221382000 132508099 615431369 131560680 586405248 295942627 789248334 115131219 704628605 956271540 963846529 583724482 839387552 740479485 961725867 96456029 836122345 854814356 969596699 827522451 908150304 994624230 997370675 618171778 619704319 308452050 491223062 387791624 641237576 94630936 459455071 484868555 964418995 886041261 903771796 430602045 998937330 372447427 826997274 559596555 922965415 408888074 940233466 468500864 587391964 505427043 818870532 997406662 999086838 839380716 950873322 792464757 915275776 926517302 995664954 497139876 538944136 112439291 916879304 785017092 919431340 158326872 425421309 144854301 620777444 206887053 509328290 931035007 975473978 423278803 825003921 269808656 836010303 455041657 562281817 537394110 700101221 113353309 883346521 409624675 695026055 817629997 904032777 813041664 971581689 630659817 691059294 318331051 329885451 15165480 849371751 898291079 969887742 825302820 920629627 530497311 838394292 470707793 941549378 663279978 687565392 775685853 993894301 246996177 632266709 45790477 900983304 290509069 775740752 112730952 955146968 829490085 903592189 808170836 836861201 605329004 980871101 989375561 994670703 331787073 597115062 15540838 884886187 620294218 881121781 739281343 907531511 615372811 848371575 192303546 247343476 636673105 728413301 142034041 646347581 873426873 902761987 371254148 728121384 916957721 919262611 92924632 906452009 358918003 643947724 363583681 735627385 958169015 971381450 65380754 820662697 403139534 672925562 865252818 972061554 568254105 643877823 485932805 792919920 444719940 916618027 471110478 504112581 169915249 781864447 562658553 760913910 965231924 986813860 330667235 787140944 7492215 84139810 311016977 414560236 687155394 811189664 435856506 710856841 188634633 861007138 690089383 945893795 287426536 717355667 845702721 974581434 438105783 904263400 563423223 706925518 171478960 278642707 564871714 818894775 372357113 498549451 432721056 799469292 117443580 763229439 173744975 807366582 892287753 931241744 753669802 980390905 336888603 913671646 276746411 667688021 649568222 782695150 568803317 782557974 347649095 794394365 690661015 772145344 40324584 785869260 467647722 646960983 144085877 381475520 302562229 486509246 351053706 911946289 838605950 855976333 936823507 952193234 397033196 895929532 285009395 460351493 314445745 970570781 741433167 969333883 392740233 619548755 228561555 477415456 779795580 933035107 142243956 532667908 369344225 964472201 369787292 418160048 921666961 992687342 967276266 973100796 403099498 936280720 856035002 998245020 754027187 828627239 583861559 607523817 278992765 478947430 56561867 385584113 898393538 993974111 951019958 989681279 316612273 665118407 851091058 945675666 18092774 221313376 487885661 802111862 726757927 973361715 878902167 934880100 135107175 853299073 712874504 905758680 780398191 844584291 123345963 734073312 25665838 514208897 24414975 654356644 839053910 852342695 87938503 859345337 811466384 843304961 403001671 902743448 29484125 347901054 407289088 484040017 524094912 633137714 790607670 873871192 62769382 336295827 777708870 787844464 641960626 654611040 398035095 741535176 736445453 875166266 38989485 787473501 427914307 810214969 774819652 889398545 645286917 655848873 487391537 830229016 673467231 944187431 473976890 997131680 932123224 959801971 375114788 964690392 135137768 147669494 964513928 982281476 816307105 855249838 591370013 708658150 59937772 920656826 863099613 957345486 211164363 301748589 728726357 838437255 358059389 630189465 113558719 591240874 422909430 966081818 78974851 424791159 674027627 868634039 884666752 908539854 132178411 212669517 947300124 968130002 968623459 996072199 818204399 995039913 716722588 922319852 529576827 542887638 699386921 726043187 920138941 957842422 977678114 990081158 588846160 662868235 622851710 787695202 59427949 378453359 444090709 468165460 15174958 778852277 23369795 217874877 238969896 862412622 242737937 523668157 323785544 775835489 304058246 343205595 855313377 991364755 822516799 847216398 223890441 947487393 727237009 980675031 44554040 264580681 653019437 914534918 167093847 197391842 141610213 240961470 478040954 726329315 960558802 985871553 835520819 895585795 639175263 932087740 490875553 642620749 300914204 977670143 65569219 639859537 885501946 904934252 55245065 187134024 368988613 842614236 167050245 742540303 572431655 769203599 719876694 811167852 585528518 947783711 985352544 986763420 466447912 777843333 360130363 656994062 795188810 856683297 804597295 837851087 154108087 531814054 802764233 993936685 797067627 955471860 39298814 775057950 890595037 907358194 349861360 954388974 140927003 547912462 686137068 923712978 391738306 782606564 556437966 632946805 143696670 999312444 115105347 537776652 686702635 838931133 857398616 921524140 571500736 843598359 170752234 492191830 717467609 955571208 334606838 735457228 798214385 974221622 931357967 976388813 140444857 966663012 609274409 833038954 972590497 982842693 290132125 886566361 572406623 970237593 350758814 561672648 525980453 987803568 877640467 977825100 465248869 947515861 485607297 505639618 310061152 914730627 546131929 613819437 115774726 660153220 781052059 955660071 315322436 590151158 565287861 923639270 303142189 951515231 272655779 675442491 84048429 496549342 740689222 923625483 972050396 976595219 408175758 687220431 266596340 578773241 904743546 944974413 730294140 887105939 367680608 900440237 205765942 528395242 664076266 903396995 555889287 585830672 371804687 402954849 678840814 761064065 927779451 986859907 955848557 984243330 118096982 283883464 158983195 208034217 920258107 975438921 552884483 784993178 126449907 506289123 598624143 836265528 211254259 279874354 283937319 823699359 580053058 717512673 129751189 211081886 779023734 814446026 164949941 806757152 510633123 706728975 3801269 991201778 206222346 232700906 805205263 879106134 515455257 935452380 690242072 734632978 55202055 632452500 426291856 803292774 710498058 837052580 942761884 971841396 993882496 994957232 980824202 993674740 321890241 729075882 575427133 950870192 588555613 758157473 130282514 892187786 901795897 990039964 475647498 718585075 788289467 834207536 549968844 690710988 490776521 955100469 392555892 777659814 997923776 998502863 667602730 876059382 813432072 940790095 705855808 986885953 326593139 572661248 499111240 517494264 123593496 602723254 311458838 327589012 57308268 347014988 239484036 433273635 719110460 821454346 248157625 536013715 221455766 453701841 330954005 429114657 870070198 982090913 589369168 777592863 933144001 955248710 174617010 321313708 24192754 930053824 284073241 550041809 605105543 894219387 907308529 912982852 706260682 842099367 531171028 814343543 126210339 513781691 726504642 791600016 821603417 980915571 872228639 981096292 279350149 667332437 273680150 991152555 679216137 871540766 897248069 907509728 352392467 900536897 194630423 459712427 84482200 227927422 664659789 986813823 897645045 949774000 781896052 852238935 107772293 683858208 879151974 960130474 788772039 971754190 546315508 917252734 479739208 558916635 884575069 902807614 43975122 710529767 116689810 505395505 929821303 947923225 673920245 686151813 345372324 672782936 198096021 690986687 582411036 844269302 441821790 876658660 208879481 975020878 207277638 251790589 238902668 970286238 504459713 610577821 317848414 501668589 621241190 746535840 104010078 266495600 431410140 733000516 288930649 879942639 250307423 605446092 146887408 181138047 721148882 901681818 489509596 724891795 647643993 756794169 640138700 906077717 279213692 615500843 771132633 911285588 139208730 196336470 971080149 988179735 957375886 986443497 114857460 906765231 272656301 531222399 876302236 908128716 73776186 204239733 727959502 983346886 779731248 914187984 591511650 771684233 377629956 974613038 521429862 649592070 996489 175534421 487306049 614458327 560000673 605273569 427557451 606577427 474620818 749982900 62738952 714066248 596038612 856735549 865192701 901219532 538188032 908989494 175844259 591225870 909346786 956337339 327783732 915933381 324058438 756134423 99350424 248169100 972417242 984371386 767527816 778188636 557923909 714870998 339943704 844085971 220141959 650657455 310098336 533811475 663515011 816769336 976349802 982107047 669217874 726226056 906147190 925758724 319098442 777979307 241350483 289476003 532632513 648273782 239283310 591823322 335222205 879594048 550424222 908617994 161328573 255079594 518063788 779132682 964529589 990600121 409302858 945029897 99968903 527141824 580535342 918479048 109688017 456449460 392131767 871092344 487944908 910003079 424532201 951350727 132770783 978623535 746526836 809189529 606500763 875095360 57437306 244118270 967567407 995691922 382209868 765119111 669933729 939635866 847216311 956309978 934603615 981513897 815632870 995386663 460036739 536077521 938223918 994652246 377671403 710061606 493954263 628153560 900880964 928902749 813195646 826593494 651164271 918393529 259752074 451338589 66877033 260717552 987328791 989719413 477085674 817334492 364949005 417897200 140542219 893169214 973064069 996697908 432342466 570984478 992958037 998366644 436113924 747720808 3756233 337834307 881768124 946992774 911098168 968452907 648987601 909324621 621958833 972468743 54736824 273797545 402247426 648599379 275295729 532235604 899212954 946851154 130464095 678870076 378459368 788351299 630379540 767069965 789952206 934890083 828816903 997335664 324810556 908822344 110590344 112310712 842921406 965874649 200317216 539669199 828317223 830895858 386619002 755100843 96551950 961193295 622654264 906951933 978155846 978415222 714870063 808645036 838903944 855468521 121332514 788654793 889446284 996630877 209766466 252211441 57400110 266171035 603071926 637219593 902714147 980761348 106823730 829671541 194335372 741863428 739166627 865341412 884571992 987417533 714337208 905510684 911971856 940356221 197633214 813150008 99897093 571074046 77821086 471187737 312921706 953599838 245563795 488047265 947476302 984776767 191396631 850486357 963649005 982685375 158621461 562874794 330715367 622490517 760209517 769748612 148487167 277629853 302463977 394640145 376845007 668116901 721600871 895717693 284377876 753823840 755188061 943112591 877261013 948336241 150067240 621435033 519418845 833702359 73629922 350466304 242602871 830358901 865929410 950908392 30127562 372030182 428726311 790571107 882503667 884468155 493882369 718202209 679169343 710830196 127231616 560869805 217005398 960427219 876684459 917673888 756296252 939594907 893348117 937479150 800578001 862787491 313605990 930801814 259482949 976119663 533319920 692140505 553043531 897345279 387115213 441380454 560266294 993533539 273180930 997394683 30431768 360347232 484240017 953875662 803987757 834321461 235655531 829491843 828888235 868167381 791327723 830496327 932153074 933591042 487469094 827464984 965050151 968589404 365046509 767626367 967992018 968273004 733834641 980423240 792493540 794773030 224472367 500491686 907602350 965806353 844385925 915170451 824781652 967776399 25018669 291410373 422007898 451916805 905463617 987442844 502155746 546573074 156091043 792633560 337412282 423772751 734599778 805163690 902934163 936471709 957620543 993854890 328537299 371821521 703723210 814035274 143533565 184822389 117497204 974016545 548427610 881346305 733460915 760990196 69321952 300613800 487490020 563094671 729819972 957421260 245655317 976749464 239108535 954187509 209238550 531893432 537742820 748541361 220099011 221189022 139427468 142422434 511668053 584390688 830684268 834698493 753966918 915234363 158647000 701341786 869573616 925257845 406047151 453113061 891343162 921717302 416597127 686736736 72369163 542354789 302627894 622930170 961932326 981558065 886730016 893603889 614862564 958387615 111341772 740700538 594295016 608489589 223861968 330613381 49214765 179636075 713105649 756887728 881945972 964173662 89480073 614732628 580718098 678035517 795211379 973113593 694846147 752122254 394095804 961628349 68981907 599853005 723221199 776115627 230612712 858551938 194475213 707624303 156819468 172949231 117244200 901199543 844442496 922766883 300954082 534141439 323792629 377407026 860352644 888764289 551235889 574454968 615847324 691259868 875473811 962184759 752544077 904630585 616769197 673951978 39369035 594145703 69306641 538548428 255759780 312859229 729844875 893350650 621739130 830081013 477397418 847844496 500519620 845873128 795492908 839106285 382874375 433323333 741099973 995799142 169047258 623131611 502911926 799883557 887957979 902954069 467573436 930855063 902027553 921943686 153129166 664011679 59108701 81690405 31627161 585572065 765086808 879667597 662381001 719371559 311211933 473121970 265070086 282292122 812241107 825108852 742922727 772475928 592722640 774554908 257328401 595229157 385567245 587076644 176804323 492107072 680945521 977909774 516169839 651850522 541076695 801739823 313543261 849651175 878339011 947382895 511094220 821487669 830301392 896370107 925582011 977615622 243260273 909617258 357337651 504818884 593783538 823419431 629061562 809487695 852458721 921989693 961452490 996648174 8193634 837126579 818464395 853227179 256286198 791845599 915975238 934994785 181713661 694219761 417190172 809814662 577590798 927779589 52615321 154269239 631790906 922768892 499288551 818615100 377137889 383895816 196115317 708396071 155138526 844619023 104980646 383148242 326998372 589820885 235477575 993111807 377665878 526849157 512612739 640457939 226213125 653561852 751797487 843432060 654719778 940745902 585284562 922665370 913177320 920359294 827829971 957965216 675415557 704384753 34556914 743645727 719254237 807238249 442293649 446185596 796053153 997913068 53825644 374961990 32311523 73641031 739384813 740548749 393711430 558157784 2313300 939995916 297030290 491645139 672046485 791481583 275082659 562911979 788877441 938574869 880487819 989163128 673537696 783773247 873869446 919507146 565173957 656413680 447720371 752536358 365420050 747165881 953526847 968164778 656441642 936293276 246126024 410004842 754343146 771031011 818611002 969033893 211740903 297440424 206386066 651047377 436262074 945941750 440739271 734921398 793274347 943041449 291878973 916062846 853822108 854153748 98623924 117431702 8114490 273365084 310908409 488525434 431870887 839315834 666095895 803105455 133971391 253264907 455672177 594126794 424677908 474394666 728662602 933268001 328998311 882330624 48018811 459244053 897032349 911472875 807427264 872637217 692521727 858823698 746558493 946353492 726161673 804284298 784355841 940890488 716970241 942465084 330008495 517127855 512912386 922223410 717520486 860817425 323990191 935726314 368182996 571460059 200337853 273727089 117711157 146239270 972922468 982740755 40099023 115346558 452489586 804512319 607829171 619166703 53477217 454696113 429606407 875604068 571831443 645651084 782038776 963937448 23594910 867756643 220738927 548278035 175025645 853597146 570005976 920856921 335445803 502773181 410416152 606580844 323778591 466241750 33380246 432355995 400053152 468298794 13835853 924453250 289797034 508383637 421758094 865946316 857146598 929397936 864609948 878233087 29682562 234035571 29652753 181208621 282513809 954825984 171485941 661015384 71366048 186553665 750760884 811730073 105311486 398306762 225769331 545396647 685957132 749488789 857372795 980728880 38100372 846465272 543314128 575093387 979577492 982135385 879757317 995501228 704878023 908739265 381009222 611537959 157880071 744570197 619140203 944875015 185348252 765805883 370613902 912221958 261823050 377620019 901495649 953603238 357413455 475799198 543078424 694450846 951839616 962073573 540050596 594132931 342358993 408157778 89048527 997995222 78766255 562187253 144089050 610385049 127459562 846512656 496421502 625982714 513793130 916631048 589916449 749123511 241466897 350537532 33383580 970267781 323260020 742742181 424404915 644408541 614048593 883810886 529512874 552790220 458509463 989641121 495608871 639973355 507750158 638283229 614211732 928455859 893996661 998624859 553392734 555870215 830225376 978994965 279435217 574478696 277076070 723048209 212032659 912684617 386131796 847374389 450235008 787739479 134147684 904411457 473314517 982013901 966479939 974433662 97084174 734113835 506358045 535010113 504798879 912061865 976297094 994024791 858620218 984326384 814691973 980809365 638076104 849653995 588599481 645552643 315539025 391726268 375086441 657902951 37847493 499200484 820476974 878893293 826632829 912324739 384394743 989934199 432522867 845792144 231730384 533038394 95758868 178140091 471902131 583769552 536260346 874136597 644853972 887859426 642138004 799984805 199657379 390716341 887275535 933906024 417027195 681910510 138259062 807942363 135131033 935909652 830966635 966237949 874353664 893026734 656735779 927539184 416619471 951401869 574140778 772861752 926422256 940478997 729110520 829883408 846172201 943863323 726041096 731628301 44918668 507236569 981942234 997542770 190842389 817792729 465668592 574644706 944017628 972847360 474893718 483113952 47304839 361118039 258335561 744380346 122068194 130181742 729825197 957981077 453025540 576061976 819895211 951195023 954518073 961136989 455800693 927702407 505796535 747494250 157989916 343701445 797468518 907009694 966952945 979236512 672381017 803806328 371513490 817266264 346529656 890153924 271621247 618897242 539436370 662200471 59863629 105817488 161879904 424613756 68919571 456786943 70319873 937888487 34016049 648558629 41058744 523327864 338563440 681691265 487488949 831072305 930453827 944821110 764379061 889804282 129869246 846906927 523301619 605568547 820163280 984636087 931624228 994163902 776338408 866626809 546530088 585946853 118769558 219509501 818278696 930126333 552996181 654883286 933945037 934656001 386855726 966647100 590805878 751085764 273486291 948934651 735211826 906971851 565118995 805007546 216900970 237930065 879288511 901338969 745001955 787551212 633525601 782597003 795010358 819762571 952960357 988380241 78122793 569119833 633561915 638687266 393615063 492482170 737997682 971707904 49413497 525602307 788271386 808705357 551779370 703164910 730839473 843365837 404249382 459746672 472050043 861854540 803369784 849842408 736831731 854110464 218030374 479121432 622475616 894416404 981537479 989255837 80753237 680770019 649638940 720705294 583073700 844069098 546392550 559726275 204400426 770559953 80053917 856417302 961640853 983721351 496904520 808381772 72130546 686522260 754644914 773819193 241291372 890115916 73272263 446010863 201756162 331965531 225926122 902443673 113954515 907163349 238760428 722868408 163302761 633090397 651579083 795873737 102008134 989046463 725858090 944256071 941045289 973211561 862023446 970442551 269982077 621046208 455332683 906209188 437284888 931839923 273698031 517887224 741002524 838381058 57692076 861048075 654668569 970857439 283357213 497115999 315671135 846016517 580041489 665473930 936212528 992662618 758888269 830754905 739408791 782177143 291916797 570087985 570364010 591688433 273824145 387927702 197901810 960430499 273329611 569169904 303383314 566186720 637877713 879885856 28669296 131351082 335804470 435794179 192981693 949901355 849782813 977437432 600861445 716003526 557299199 895657595 403422653 805010994 249100435 813679912 772723647 816149419 169956880 690001678 431354872 444603716 852364866 867954835 882317211 985459435 884868887 971290735 555391088 557807792 265997748 308351865 8905146 508395401 175466262 548809094 336410704 441724193 397500604 963671628 247728553 445883150 532153274 787198223 472397587 686332153 382738732 580654889 839578597 987884219 933748556 989484960 676085201 842963753 852733902 867571167 990071077 996794355 155651513 271111101 694745951 761875535 340141940 462873436 795260411 937180406 504476895 945432567 39240348 415672963 124472999 896355060 3046866 838077070 279738604 792514622 156052345 605063459 48913439 591579638 809601964 897703815 82975294 686210046 5358379 492578732 4985169 417647534 794261604 946294122 459762031 727859338 340931909 988222417 432435970 744883597 231839689 566746488 529073955 908241125 785032298 985005386 723015262 954134082 856150895 990336834 303147949 660654394 701960603 909831230 411382585 528011992 415903392 436446509 833859518 969442571 805804493 920664988 171024253 434815672 848998728 876928411 180969787 658806851 581668640 951743742 497193284 719480116 632278804 944527692 105766825 148746739 413303005 650105910 385711910 594874512 396241670 585821312 120448893 581348813 290417470 710202255 4740922 954921179 993652784 996122763 754145578 881929226 619080382 946785845 478966782 925464892 798317231 857336184 983721578 985355553 314196891 575824494 127180138 142385782 7769929 213096902 153877981 572131546 818371234 863396935 123832551 797714849 494392012 569971696 540719733 820844408 870255237 932965670 565456444 734976948 317741038 849307093 365500395 527684215 412768349 558343738 153649915 396567267 855102922 985248715 296547046 302674541 70185088 153932209 120197856 404418569 219284296 381322939 450646928 692062210 874304088 952482060 648677581 869314733 994120941 994226042 902201528 916692072 265317672 408137926 657887169 725015694 543200451 816620076 646927307 840452081 816057921 897640345 120678932 254266599 652413718 809437553 673815181 754395811 867902159 874820126 432687870 611109737 160796405 776168937 80774034 252468059 22028813 880787517 13038400 591155771 906083374 937188060 628232834 828494723 48376631 127070339 109630156 588291667 399846271 597241250 406488490 728194793 571820538 945413397 877045527 925373982 349922322 459617696 780567199 793371918 686035414 816283092 934066722 955064520 59049386 81879604 700544416 805775424 482536885 561337219 91374020 913030100 7317360 967003270 903551241 942034115 926067409 990952687 920047945 924327246 955662964 986060560 658361596 947829278 431149096 986723919 210338522 314884174 300892084 376464642 713281648 839061943 222654721 225275225 984580129 986354719 976527418 983924565 888859700 974493311 117792705 820741483 797622673 813421862 573106319 651190615 17023496 551003508 851996673 912706730 317898892 387764846 373719856 409831495 463235026 837909996 617399477 985744342 992351962 994599995 322714695 396302155 205822256 720395055 532176552 615053138 155467487 610638312 382650782 607818849 666141899 735255068 845313574 854887212 454188065 833803424 523088464 533256800 567894435 749271814 702283463 934954365 95700225 169888423 547743332 997137326 337326180 768136925 847338348 948498914 706758334 724882102 16075242 381070693 528625241 986956337 110207307 174374961 494427134 587281959 900975087 989093399 365519593 719733170 943419365 958814093 991676483 996635309 187502368 843604696 393706080 540504855 193767488 792941534 708432390 797758005 933964605 983199619 745653398 987681823 677891277 724682440 139363081 652277214 225140496 834324202 22722172 733544714 338774905 938959995 637697384 717483561 322345136 651102626 267226065 310828573 67316918 288806630 540313410 865302817 142052429 295753048 293747004 596062496 672189496 984730252 435536136 624775832 162937282 627222602 868548383 972639527 741068948 784624597 844984858 878921094 172614199 797579952 755745571 833978723 450186778 772609879 704036826 839219976 250128724 555364353 241901019 787484186 557098243 855669050 878897869 967792030 336212481 873722594 934187540 965522869 994991706 998586674 696924856 892692624 395990828 847851465 407238945 495951050 793082306 909472864 709359076 820792922 51223828 525426804 17796393 563598009 189167127 324519234 853041652 868462835 503492185 830397985 756836880 798467900 340815569 631482344 841195604 982784404 307955353 519019424 991560763 997431247 784016828 922624861 781066883 862581426 428713285 498935348 892590562 941725475 778364332 972479677 859597166 962617794 271944916 609802644 116733889 479264912 946302110 979616195 578281009 592190186 103383361 829239725 563323405 635144270 496094259 588659658 589384578 883590006 980431767 987102521 945518672 989097883 353789212 609131044 121947021 849189962 5755718 333470677 112115123 117962133 787977957 920902722 793185468 843856348 511267175 576423634 684938787 929787622 553499152 924146125 117152261 802983621 626775691 977676788 550556066 898091643 328559482 345754975 533712329 921769735 580232588 890820861 474694725 568653415 864890731 996982610 810708189 820295944 177363143 727570939 191448905 880164850 873954151 901108262 149250802 914458230 501695173 956003773 399075941 628317402 914379522 962015621 972024169 991451748 427905206 938194252 71684450 275922611 261757895 646618496 417724478 621333622 312860560 694227627 331836669 945819010 377933332 494665874 637119615 767612266 424821141 854703642 107681781 916053287 168707489 739399975 831429540 936512762 726328396 879051127 397912869 951160069 47637028 688711248 795934931 929306720 831086039 911705738 224914270 249528836 80966203 160393170 319657636 553161435 615411848 969166215 551243929 778871080 549290744 761269483 182522862 952803191 895794459 942758342 583008629 939778147 840169747 955594171 748244914 919464672 143364190 284475030 187299206 874499249 645743016 721905405 537419612 756093047 606569494 854706632 232167155 891320603 221754353 953783366 494445158 870087991 563377454 626535144 223215635 698635745 515016335 809049784 339019767 462752949 81218114 732080257 542106432 732179807 668209356 721446485 2509529 981243624 126367418 356594933 14337391 143748514 83539652 103871859 426600366 884071724 315910179 832261801 281223245 803001036 107290368 608364694 153721081 629775156 220595129 964895935 278829104 726343584 310653854 732304060 580226282 717678589 735848270 918031548 502853587 872243084 453503449 714122362 158011180 497156025 776755182 822410921 455366955 858130300 197637416 752649411 469327602 835916740 478492679 834774364 721735953 818659290 5028494 744162300 227019608 777419350 894903438 978674169 967470887 991818739 336506063 675528768 45605755 873373039 587711119 674185759 613253316 635618969 449806849 975529627 922743184 970750849 904934830 938479467 731053142 878641304 920899813 922069621 275239903 630822942 497825989 554707673 575450148 663773624 634948097 701256445 891925058 925029669 31759052 215115122 839669719 897879979 803373465 998976905 386928035 577683824 923792500 927188917 624934797 690490832 761191729 964166170 770485140 926222859 332489939 902786161 996178703 996955049 374720968 682394097 242984528 994085725 385560118 857732961 32016201 429813906 564582749 835234622 880003035 991259125 223839906 757439134 863313171 974909938 588105996 886911872 968949362 988474425 992311938 995429467 667965976 786705480 738837130 823647514 888569299 973498694 60037671 849332154 769081913 966792553 667608165 815343187 401087924 508743960 247056115 741911690 251936933 277384843 555199190 667665831 301938347 656263628 48589841 133994810 678172532 864466576 831581047 925578693 895716862 988374492 506765607 647652045 409694831 489287796 360737918 976399674 131492732 420208184 322134955 856840920 19952839 285495742 224057084 524364712 361652209 606626953 187111179 403779257 615157653 928442809 145041178 996609845 439338153 932849230 462469690 891867622 661279174 972964047 896860225 996501705 985013669 991257450 52886018 582239922 767932532 790035634 477011744 821596380 745622027 898008622 955304205 977959012 768279819 780527421 355452373 609211169 259908594 401967121 425789080 442386340 668447921 676178067 218412898 956311942 940498168 952824857 425580994 527225327 877240969 879766545 84284443 666121512 575038620 845498161 388664151 561254305 741212834 957819113 709727898 754322366 405112960 909211455 582301334 709058929 255086866 603788028 719519226 719792861 696030870 835917569 281194664 893288554 367048527 432687216 562859797 741584781 254336200 714402609 918140792 968868630 668776075 871367311 652327506 687476702 996966346 999252227 220857537 436782062 432142531 757186253 972365303 994844243 155478958 533959438 244955332 611782154 256501532 390207771 639807961 702276020 758838599 893754604 933316230 950847820 414539707 657214296 38650108 717995233 418156130 926978994 111250306 694356591 462999257 511400051 642150488 645944425 592841315 736139010 722220893 775463484 615281966 837891670 624778630 881198808 114250785 139329792 442309216 456452096 579298714 882273625 786857068 846547887 794016670 895560680 373330870 633286649 472226869 894533380 317016265 694345058 757074331 757170474 385564077 927200201 221393734 521105053 512760580 699718664 61321829 907119742 647179040 734200013 334856206 715952775 756159316 932080342 632625479 746015829 480892482 878784311 714517400 776622630 142736260 423286766 272761804 993954420 161764105 789707289 581076749 812534923 300245713 781091694 337939722 647856114 245490284 949254002 981647304 984116813 898850356 973854352 253980177 732075187 769156919 878972880 885535710 900851226 524713205 972608607 850527481 893519027 612969351 656563582 167377635 510537191 919318529 972188492 795299908 886233458 612732756 667014156 16472600 105675974 233475467 962893631 568497929 768446328 273918550 805000680 410410180 749397730 970461566 998517849 720207931 821883908 499933828 593814289 894914656 942046368 226421321 861912518 218911126 698229056 345523054 610734932 918540595 929232132 701160164 842434142 504117385 972945634 45722473 591345924 106410086 412596817 675366268 859638326 712801338 940131260 670097657 726072044 704683159 992613987 470277692 693086438 727757095 908178385 971438441 984340439 883604312 980235407 716553542 973193668 152728646 907140329 153465703 870293136 291155931 734508967 822602732 972964965 95151384 378869284 337707946 712018426 334051412 480945160 699420586 791793495 717146952 847977324 263538338 455189976 484283472 597596971 118147457 926529884 373787786 616556842 189568090 664454879 904475999 911984776 676348865 913012267 744038006 796425411 56468740 239638263 472600743 767951352 230516227 643239253 147535073 587411627 834045047 856107490 919894350 933083704 584440099 613162011 397722646 560466730 783997669 980477663 924201942 996863277 95053684 315109608 255578020 877752215 340182334 343236309 47711197 159305144 129108569 981274530 334180903 626647608 547983047 592170203 939969007 961935650 787321633 890960563 282599589 761165280 299628018 460978612 543360857 868556137 458009665 530051755 291341635 931965029 952999388 970765327 750993683 787105993 310595043 648220515 908048255 959234878 282801119 709816065 811444400 843659281 4726812 924343289 439681132 625029172 415141076 997678362 731905373 775179199 106989526 898635464 358858939 897540925 24726088 437759291 52095267 476764465 2312563 751695145 830881256 872979156 28095917 58920071 866987237 947932757 313311195 563297480 641088948 824395632 236720585 719694776 789377488 980765298 50369728 391307607 345914003 367054061 1208946 670654193 443462373 828443784 97659156 424116670 966133811 979557562 154198613 204961429 551031358 961996790 98671932 792309262 659610139 966150272 92085879 641714391 475551835 871011963 770337247 993669711 678584961 724157385 20678310 997130037 358417372 474139217 533143810 997163021 269262468 752169442 169055853 677064047 936706782 938961133 91037901 939446480 150935874 815348810 192404189 469705737 926468972 948932159 113416865 673649515 875745824 961583069 882001444 925278340 710007425 955244167 474586906 548745680 184124562 433590382 807077971 998899601 454942323 695707257 896787183 961199650 338497676 557521967 887347581 996118126 595355160 597116758 762492750 972500898 557642804 749141475 750343779 751901108 137139523 602089587 330776142 880459705 104064035 640347788 923537212 968019529 241305542 891565794 251576269 832798993 488536632 872371373 875592727 907243125 791478671 951345868 536222676 716873432 443630527 708977185 138140592 862033725 521809113 688033536 273381979 712211220 770912342 989044872 499423912 505477998 104944959 995224026 708604812 791428956 605162564 610604776 148003842 705824675 444164866 907466633 271220502 694323735 657363077 862150595 953539137 966216778 117385306 735868772 616183716 808191016 460525307 983473532 743263164 839638003 558814997 701836263 11408343 483034360 794875299 849817564 552539340 655176935 559433638 891046140 727070666 807576501 343341568 805497227 554475744 858698921 161664879 865512825 551252165 852478093 719510722 992605471 907203489 979236653 139807982 604648204 901292829 914654590 448114241 780129538 272116993 868038230 815118633 828074828 990384772 996436478 580206722 638449638 553591056 671614458 808524486 927868705 184020865 829610508 968548305 993248841 46862103 856557639 937062023 976957980 992133126 993284070 189213736 901460852 49429343 444715978 922860036 944368069 326170815 542939566 991193464 995028478 601247180 801002263 25443600 526923591 624731484 930716471 225629252 227428426 527724987 923987179 174591946 861546189 523664903 929362355 207539033 568208442 969033924 971438778 675571229 925202165 455417215 905667360 224980562 932139269 250563785 822259931 960812006 993361029 1831373 857742421 694605101 881796099 194072684 208638395 207871950 337235668 140000176 354520694 358852596 757898344 820708348 973850005 148336717 328759421 79312887 803474417 364362039 397462557 942730766 983198710 79818227 927075958 832316022 863755418 36758277 342043481 694149818 741931839 152282292 199995388 454578257 860366061 229751923 520899620 712727937 768597017 109093951 135391583 836593324 919810836 270464965 872784426 571830347 839681196 873340417 994816573 247526093 817557429 274150003 953052886 580338600 743644129 816859549 873583620 208122685 389850343 677238164 851540198 876644178 988860947 5013980 598713566 24950702 616094100 572180793 586550737 345253414 749512880 265194814 860799987 148330676 237637623 481980116 648990560 558867225 767422174 431106599 736204866 667391102 921229526 701053179 739153224 423499542 508217223 465095683 971629441 929771089 995627426 254446959 508538462 38686819 234045140 313319074 590197216 104768366 777130741 148405488 868672612 388411160 689021848 742458016 902754780 338192758 664689344 614773236 691682662 354345051 798469956 157426447 419821329 673364898 854015005 617200671 740771825 979367286 995262685 790637467 843533200 185209600 831544279 133691643 179846051 482422389 594082700 700404240 997977383 585453058 975030528 147982977 671837721 356303871 775465520 679093422 794389263 549697328 562064181 509896784 771723471 383777446 868770011 408139222 519444731 871928496 953498190 251802300 730954462 419807408 875590269 535047585 594301585 966732936 972655058 287321045 718132875 669154277 769636734 193782352 419706890 390485568 859792495 608396410 986846287 747634138 971517727 931115445 975104513 887345394 889441754 462117014 542272948 540309667 892796031 973169204 988651171 761885164 967960643 222717826 733267607 421144317 986738937 297143526 690953681 844338646 887333591 673016584 691845174 192094066 764950900 887496876 921437166 969810504 987426445 489435524 698632849 437165905 698073707 190215014 842936727 602307605 712165673 850706689 992907564 682466619 903384996 929411000 937758234 209916342 421838788 794713343 874170865 338074724 908354011 194354021 844132759 881939955 918889717 390912744 421756838 882537076 923020229 614395992 745310863 827157228 865797784 671916784 952131232 858788560 948208214 765445572 768977987 24386311 193698657 315369205 501327648 842734071 908116652 197997079 383747925 119727744 608427359 729381038 746544108 757630168 820592280 534122385 790722827 177632925 213423463 831206277 938577490 852363761 989047891 579917067 873809534 641939406 873384536 6255288 138904806 209112680 584116763 977144449 986502294 502845679 663055079 492462606 504830552 527286424 811610218 830390196 974331908 889973969 951151467 82199246 131974698 761525856 780059024 407874060 998097276 316450367 885798968 321945780 965448111 155223285 647652529 430772239 540270748 332404975 825229210 40380596 492533532 981750436 983915160 661493352 760423304 742236405 961500503 323234400 889607492 811182188 839233672 336544009 547058728 826362695 856649907 349093782 724999723 156800023 503030552 999131653 999151455 640017350 883393463 260970467 971177646 838452601 861929107 456112278 541979844 975004270 988292798 267095457 694450637 911356656 961953332 964021620 976921808 441262685 508755219 565636277 740632539 83032068 866979122 548017726 572532763 37777009 666419588 923605248 934926512 247244347 650279148 407730166 737604131 500613878 627524326 446108431 717171857 362533689 452289916 458523697 723836643 167499267 697254363 658112079 966350809 823531620 988033361 84103882 611234038 876374180 967396273 591613691 674254165 821064791 853899541 10394571 822869255 179957305 207136899 365657895 912687669 105266823 976231633 887399651 895664646 106404926 651890507 909871902 948676434 689193728 817679224 379876416 904255153 507702465 637637817 963754787 964990038 590469850 912195607 997196974 997616785 224628717 769494556 430221287 809635753 491744096 878682014 756383522 915951455 853934003 894761260 707500081 822410655 99473824 820472468 65439763 860491530 275632245 545983176 848877097 982688961 303951872 752298452 24412490 811931663 530405781 699488631 313007116 671224123 58950455 463442620 908111210 929108691 820672885 878450150 577630550 651491363 914656839 979847456 79681221 792271335 233835175 798455029 523688404 613192569 473216868 840087815 104754849 785600836 271100219 851383457 359696119 593352264 566979294 981012292 882421373 902023464 397915946 836081022 550103953 679294872 949366772 986604089 86911425 783011708 958992392 968310682 474418711 596045236 150839959 991767782 774590148 808549448 984185674 987048951 614460979 801648050 912962847 990286420 133505121 532639566 243922539 910684090 817849975 896366843 864373513 874784080 224433542 544322245 947124592 971338855 502578693 711119823 487382489 935061754 800531089 821420222 60595474 103813874 393286699 853869146 462818718 772656144 147528571 971476156 410054177 863937108 90482987 469458044 823413669 992741981 747318432 854447869 864835818 968563444 394138458 934826716 310901326 855089256 117236784 769710615 681288326 782011090 376356228 399716656 718960104 914212917 621921323 666803807 917721716 966534833 778237646 880134757 170863272 416182687 300667516 690360290 435516070 976245321 759506130 954538261 276890195 930033451 422956792 431090285 39670905 288955241 64652823 459597584 194791834 918310756 318336610 499813977 640595229 702218389 960086076 961260316 761145872 821385680 988786650 994450368 437754090 982370890 714033231 754027296 579191790 911411205 813873944 981856948 526889899 683752534 824652016 884462159 819497637 848848123 666945673 834581613 784903410 858544459 212524908 269886993 645117239 661294952 791314337 872595117 374501239 853053356 184366661 294682936 752362838 887890045 523858077 577817771 434024258 811009881 911811723 933280640 721715873 765236859 349927911 390471967 932978222 975271737 55170604 416800519 998453327 999202941 678258139 719197114 595942574 762722654 180955979 694026504 990947997 999292902 899260205 985024085 852239277 920623310 840092834 974921082 688566836 988994858 978069676 985505478 232834631 731245845 10369338 829298152 906405340 944394695 728340641 953878148 870716618 894960333 78983350 707524186 414204396 954499139 516479023 937108327 456915868 483541675 444883648 742828759 311023695 621612721 247141029 777987575 590624183 757748437 18328057 884585648 615955420 921136775 55101698 982366591 374593320 778851678 914210043 952650160 708488037 804876152 483072828 892469771 867635325 932209181 276634517 320455600 911606407 977880131 730686057 820873011 375703350 666763980 252581813 371216993 741713887 823434119 562496539 956850401 358795794 728337853 661656490 874432267 497349351 721208510 986092589 997716482 426405929 508237124 214156599 755707933 628679245 893610774 657165422 748552680 807328881 830838642 259287227 305197093 476718284 917047334 372021748 432134680 657142609 939841021 733365048 992851016 811696046 814170183 776409373 849685751 749169424 814295169 885777170 910773952 518735165 740801999 160235765 556779424 94063716 236656558 824190807 913781819 801444606 868791624 404762116 485298108 437691662 474308900 467668024 489754563 273397791 896401058 17621709 740213718 673499300 689555628 165266171 230835344 139055784 444754038 238864763 668188858 725081361 763629885 376605284 753558595 647090699 792145580 658809289 964515348 972898439 977371891 108542991 469119886 401960505 771279749 479385794 592244076 643412192 992697540 876315904 955218883 615244871 930229657 957258827 997368093 947089042 962600102 782711915 886316060 105937822 775084386 284363271 391791584 431935312 522593613 126788107 385878066 395039062 703957689 2748468 557020350 944741000 975852946 521310695 548889156 432747632 704984691 426934848 652577127 47792669 333513181 1797020 922696686 926510581 956578521 73631994 296265651 782120450 956707783 962751143 971517319 864701999 997273839 902139668 966933848 218782773 967221417 739481827 966834907 66503459 898568910 867885929 869072227 811901687 937311074 198697519 560171187 954104855 957406501 194166882 747334388 36908004 997666423 264559996 787450483 963687760 985398420 237879630 798283825 872655634 892252330 942878441 955296238 599917194 936118793 617952977 996952034 797323054 846838668 145525576 283146513 968682605 989328811 272195378 524328915 424255056 521263146 157453419 961186890 662131901 737777551 579357832 920326700 413677153 971384425 369295637 654972560 62197732 438830545 196641886 569493864 151836652 224364087 146092906 322546382 828872827 852304054 643713804 858607962 516075757 788855635 635964411 644087902 453762395 942776903 48621784 167430711 387585793 440762416 304845108 809672138 153275776 549285640 287904818 303961678 416142045 550473621 312802508 857761381 7204271 285946069 820877862 895904712 934113453 969211414 6754066 138281943 70531309 819424363 475714854 744106489 137753248 177257275 606001005 734091491 992807490 996340786 106861891 945861009 127186620 330624722 42430353 447251570 330928598 816345895 399492393 580007679 636968384 912339794 772597050 935197921 555996349 891731038 280701882 302870380 959836470 980033071 516281430 724960212 859217383 967647590 157725331 676752044 468811693 640273161 997535623 999279777 944572119 964193666 364937796 626502683 302944909 504858614 899366014 975444041 286899950 600795983 700580269 730510240 347299554 593195965 667537427 976977020 731224345 747681717 690427761 917986050 840430348 845108575 778086918 927016877 460440991 610905669 894114912 918410279 158708945 741233994 255487024 588221564 629165205 834514980 65834163 984848942 285896779 805759429 457631710 998014372 539464237 942504826 995181648 998473031 479434684 650568624 12240002 334267528 82241306 567403873 51370676 617790111 226444742 812698245 139177196 644181833 831599304 969594497 58249600 984576055 618301249 701423030 83744711 239688713 153561201 855304533 97731190 578576695 394911015 535980415 244083340 765607367 949406253 982431502 559501244 907365037 586133320 795948396 788247473 820288585 717115751 736968352 50443893 639547197 2954125 364950539 885943734 944108741 466745877 613729310 410522224 602086450 333565318 587958243 739164340 910482937 791717542 903700228 133985109 206423362 986283688 995240441 551344583 959034571 322867831 783232444 747597884 809282386 42057064 242172545 353550223 797610742 673308498 914133465 207451315 638648570 92429681 105648415 384888861 559194769 985160203 989731723 445313070 551627180 327510598 904467995 515107524 990155145 487261351 668640264 569920035 776009745 569050095 584623844 441999427 571242808 284257394 683857739 556320897 655814381 941286424 953754182 827768965 881379894 812316700 980865767 69935260 832906495 562220750 606116188 369705310 896998670 356461 149439813 789587905 810309474 77433943 244516951 819379542 933777746 770774535 776275462 585127715 714646400 629963495 804093331 216557819 653848588 54312721 224753411 965272294 977217607 338641161 934547474 682463726 965458627 843805627 984526924 605393723 855576692 593876826 772791256 598538589 931738469 872134321 887772397 862092 881949878 300899781 617861986 282583727 978207847 308471354 730198193 917425619 923197146 989956205 996502823 173201890 629376188 897124846 991117313 3670688 654867824 84793501 548009873 813354745 962583890 336554590 812578424 790110780 940705841 17505713 836824261 903103836 918317196 719932303 834085541 875982269 978152548 556448282 585409166 546320880 828544835 761353083 935216072 614493141 904207295 995820420 998811926 298621844 423589871 551471661 774252656 114429986 223678531 182588819 526940894 283718612 610565390 211202908 890810925 485582921 500408710 620761529 992505424 136596444 642090720 378477963 689705770 760349885 994171195 634213776 953265885 73630758 407150748 406592195 985150631 353936134 369826642 997532146 998753352 220446063 303521091 31017038 446189093 840132038 889431111 690611687 896630034 146642564 396097180 883393913 973096224 640471122 743308715 105396132 880960532 546968857 953778176 19685671 657618964 162094518 781555105 992689937 998392964 178762166 417175888 381311852 408290604 529707056 692632169 820324109 948055786 889393872 965280731 266046155 661674705 483420409 669711680 348004895 831339435 497959137 529602410 67281944 427785672 583553299 978919877 431336832 826261091 737215509 948289487 167724617 676462846 361937768 394841231 716860587 754112426 751325359 832739418 979721476 980700231 145955460 979758990 854471076 938098972 507031858 753867719 422247094 501624914 583233894 658526252 209075076 537174148 415332702 415891098 747303777 898263967 557566112 891346155 217742777 720438023 150888600 758343704 759983768 782482021 989554839 998651282 428690724 489374181 968538733 968875396 167093336 540221785 675302239 722647788 710142771 790203496 918431561 969144822 440096398 623740641 634044443 791261284 109279331 810410456 768577354 854978289 548492425 821963459 973723070 996745170 36630474 909295180 284877291 948225947 672624794 715442729 80206310 869110150 877015821 983562967 359227948 491877656 515957234 824457354 283859132 718936272 232944639 704556554 324927084 513207878 893493362 909957435 975722828 986741060 756621858 943300474 938342966 968776395 88215062 523357630 253666593 658973637 33558890 980482086 965980161 968518657 542915723 616917855 902768420 976157013 398897166 871815060 544973232 958939859 662368632 736056680 535173890 619801070 965403288 990345007 113545208 490309867 326401806 715613256 390404665 674682118 655073837 803549295 860327190 862683929 274669512 478572063 134066704 200158047 756624343 780566573 109557051 326274779 758672610 796789096 742727009 780885015 930000043 993998459 759992080 877008910 425007161 656771501 949808137 971785052 404522394 449366129 380155470 970237829 622800726 793836251 74212481 533857472 935427107 939646448 179192175 656661506 715651927 771959624 136501865 839632297 635024644 947949388 287811876 519674636 156450968 833270155 93915271 659795629 380288912 797676458 356011168 797639103 726691260 841132649 951209432 984050018 771130296 888225035 209558395 504794217 647784595 805193085 177595051 789207228 532288431 696108917 885759341 979648756 678928055 779020140 250649127 650107195 626406547 696744068 452886567 645611672 644834175 812066443 691693808 862776419 842728199 900214006 375540269 392813240 365011536 948474998 844925153 980371832 23857935 251156791 826266345 946021182 977197849 993876382 360827249 974474983 353005244 670969933 836312496 837561368 648343495 859803548 810733851 832876889 467632256 580507036 299536411 747930368 236875848 546240385 938076751 967801920 665915703 947708187 565188091 650778728 609673902 815960568 141901728 426067033 428862335 877120354 507887831 712774874 516492745 950092612 502513828 883178839 805290872 963575979 25692653 245797836 796999289 803228521 176420160 734035829 374586369 702734745 68028022 145692936 478503202 544478164 250591644 421274904 936589326 938832684 164465345 400828265 453963619 553990250 436623888 565745973 685526228 977440682 890711728 903133480 581965271 909840516 648968055 811144987 801947461 947224917 751659996 885225767 784058140 985458551 728144015 779728164 86113798 651658078 224382792 598901113 687371195 916090647 466216576 946984489 217349387 426620730 222447137 784776201 343086613 673692141 573402802 938718601 278849396 488969514 308425190 453696769 302890765 339159095 324872459 499500615 643606654 704609186 238091978 610826936 727641875 798252113 862085431 871403132 995855732 998692858 642014457 758025237 97706623 307001646 35266822 390868855 126050336 757926767 199189065 806023259 390451245 883632832 567491602 664397768 509738387 829501492 73600698 449062743 341542431 698039237 430787936 669803153 141981099 381433239 331586861 949647161 450092435 948124734 734653439 818174243 131022621 788465663 83361855 496340259 459331305 949830415 142549950 745130222 876444198 948703785 711386473 818014836 244326450 845060850 42813511 842517262 713583618 808188751 919802127 984614713 824493197 883403737 566860916 970996878 807609785 914670929 133607506 939911151 595132082 676693949 534909756 818862413 274258076 640998534 921241614 946309863 897637860 914162287 798364013 809323236 146927472 352713759 729187043 847636957 906234789 976990108 193778027 301247924 456306889 538190168 341103430 885649732 400454596 523198761 760202321 792392197 893830134 959266531 195630704 478336449 679488948 953742802 140069121 943344919 272247140 810034047 120422218 485530695 161364742 720981210 680032536 950843117 596729229 687414694 309844907 640409562 996291082 997575204 443483775 731866052 820243884 893847633 256497250 917763148 555203391 941270231 711967445 951593952 343504078 909052958 87331204 521169775 524759688 675538411 417358184 941806742 56664284 186999901 506289935 815608121 46223234 490187769 139864467 171192746 925176243 962940031 831924822 986992027 930940328 999017665 843814011 880159096 585743028 929676184 620866022 923257681 931338694 935819631 245440706 980960175 728458064 877543873 622131256 926022263 671657421 995892294 581924605 860507591 33286753 612047555 285642488 710174385 307600700 433607589 201037575 715969590 377844896 752174256 512151026 755387225 464789554 502413120 722844715 752505913 770831121 864460351 569043758 851843732 504850809 835787383 728242648 992907694 905458948 905598456 86650540 839361227 743244919 967918807 337846644 908746060 759261810 967751545 860804002 954423732 554003865 799710538 751018248 910932182 378042066 511471598 69951414 483791515 418977664 535252372 215665119 581794685 479213471 749172065 208213860 231361566 790353064 863261307 23573481 452474428 734549153 975497891 822084453 889055110 207531946 808822822 52814826 393048952 717721217 808619068 996240668 997681461 12934229 630350393 337626076 823322699 731968391 849436534 685874260 806938897 78779177 97041224 101135887 905935532 661872240 842741331 544144602 881431448 646696952 831498338 642245902 960509680 611896974 718172255 737987626 770287808 885139697 936525959 231687137 871559183 301839402 836794500 946855560 977963622 852551149 869347794 700240318 884418388 460512085 845939981 167519960 515671525 156220126 847502302 682755643 978415670 5742932 119704430 411918638 899480813 469897172 988637311 874368777 920963914 86882772 865506133 701785031 928188022 993772743 994972779 51696607 816192835 43276480 429311986 535269078 981894665 332948311 793968268 618739728 864624592 191529512 725078150 852605610 949262534 77165124 319495994 866675725 938504122 927466845 950659264 560525123 596192104 82417228 342896433 404697203 455318411 982311283 984096353 404788309 871583339 654032418 773294951 469605758 818080546 649843267 905640112 294312585 870220953 107616737 533191372 82339216 452453783 331087618 385025163 656823455 698900210 877575498 907560989 903707409 969927412 956539901 977748565 598939320 867571792 202742125 688293752 592890990 750347982 233715346 399196357 286591636 656556883 539674968 636256153 158901800 399381840 155557030 810694617 104879126 658578458 876795607 986653942 722019042 815600046 891792679 944302126 176499659 812303345 755385513 939028500 185078020 464015363 799855575 965704984 610404519 892880478 643825917 918099972 351129744 543071230 661330682 691618959 87666875 88006312 928321851 958625137 665077197 992628961 460677084 522759134 103070596 515352540 888276956 890727168 391657910 833512625 310980533 443135941 77253307 212257613 528206136 753318473 296369053 749516721 94319563 562018300 769119425 954928165 686734784 821289469 474393543 819610085 138068231 223075327 782938769 843916543 772341828 951676006 5935618 370999406 510393537 580093165 8774094 635916026 24478308 725666512 423811407 725205218 716135116 973603415 526205617 845036221 191060112 687458380 522617599 972531082 140063576 457953071 469656542 712270905 969841010 975302813 191671291 488172069 158368211 751407319 483967527 979591444 852364217 887361153 77821703 941001687 488334221 554633895 351031177 984546073 625819616 730056428 769874287 872924775 609965156 763791925 471228994 594324269 974093804 982552746 460974356 482529956 379403243 522488627 838310529 969139764 215856791 261058781 889996449 953724077 25730323 642432965 779005184 858987295 46290838 300719582 766017810 810754219 31662771 697189194 586271253 731329283 300055315 386938703 895705692 993172947 460823340 917501146 883754375 946141341 862123225 869882878 229766919 511591504 409839599 581303114 607781326 703808218 940759971 977823080 240456916 362259032 694638206 884619937 556582799 906723843 388080078 819039956 490875135 919287956 307693126 600798753 610884895 906269337 27292688 273204739 756914567 812028836 948452889 979463474 669568488 928386702 735052952 937080836 959263528 987620309 193386130 320719297 644714880 750738343 471817493 542726468 818312797 875346315 883772996 984400132 887901841 944146148 11280817 13854079 778447072 974951602 767796173 806583537 71705202 307618147 973724548 991122474 708865148 797746923 678466602 785083158 319588188 733894541 168348283 541337534 23269457 616847746 398706647 790535036 718261810 903174876 823673732 948705006 978779682 986854998 188118857 873456817 874989666 912194639 297827621 544846207 930978823 938217239 523018061 867393066 321707595 540637569 611828712 914086049 638962056 786236053 677382099 694378235 266431737 463491444 5182777 732427605 339516508 730907713 384890964 483595034 525175505 593689588 757379768 975513791 898645567 936247128 823657145 927915710 653418778 946251715 785462764 822942325 648504975 682067446 316721147 859192948 676435553 808478160 250887648 785341831 945890679 998259372 672215157 979003795 232534800 444816010 786719488 937834584 341274235 669748495 164385081 601783244 789829013 894108310 138799203 628857643 787231907 864312865 597857917 783696100 778391956 825620060 501881726 504562650 831301075 977706678 572404943 910742374 614195162 992339556 576725089 798226986 635477141 730367908 319187165 532428773 212295311 458282932 170124893 920501394 37103289 407859554 406033283 570401881 172154238 477250093 999369239 999370114 604391366 940406822 63326062 628428602 955016735 979051034 944871884 973305772 656662757 757410135 3111717 823223939 40006241 146205502 780698837 875054179 267776110 689384779 594657310 752548686 527723179 876178324 473028335 837470787 645868648 707297840 911768001 959928317 301285996 783682385 423245587 485252218 7706940 348088472 666161444 708871764 789261653 793805611 128863860 314193015 438838490 913508258 67418766 71341303 367244827 380976258 704598522 828715123 950720232 972897896 267868321 816976034 683405064 737013813 175658895 216974019 702260004 976032908 580965542 923278078 339085398 602814013 137705631 809270333 678334748 996153139 325256524 738681418 82805148 768406325 770288506 919273560 204964939 834522021 199434415 358122812 119318828 234942379 446973415 579860422 807099686 908557542 788450212 925353306 361682765 867687994 35380285 237426135 145584939 533052277 982646229 982676173 134923611 977706618 407605128 694518166 861374685 961789246 764737910 841289434 529931805 783760931 263089563 461963194 696493054 898678291 878255040 992373327 879533735 958982081 172981394 954161185 455259559 544122858 531053086 852029968 617748890 670841621 393608598 838303235 927775466 978970471 465993733 794901322 723644700 934407213 593037894 652762035 993926216 998719576 998198598 998350640 96536252 748860839 540901582 596261044 84964710 867953860 981035686 985446748 841526657 972590414 125425922 158360580 820604830 828813469 605372269 678895470 373372838 856154460 183149693 747763322 631505614 770935606 654795678 933548075 905337169 967991869 458654113 966781836 494042972 597280757 291746106 598019932 374683075 412168521 638440265 915899952 21343031 583456021 512067860 681922038 448004686 994805788 549656160 895529712 406844416 892041591 265877705 908224947 954127771 983742477 772378653 838686867 282407936 549399131 362927090 684046191 483076292 833194719 540922774 889975347 814121495 969080290 81028733 220920634 785068374 791116996 791773165 872798157 221594850 277500423 396418845 698500986 303882597 581126864 443228781 746049090 364882945 988875164 321845424 765801278 201496957 465191522 530256631 885592015 45793739 160062175 145857885 538931211 272653878 876253938 86639360 652257514 463053112 641130271 902515668 983437921 427432461 781759009 786096525 803010827 758363691 828217726 170267878 801629917 796388767 879733732 654704178 960521690 51271891 930877328 132764956 420315598 940214803 943763020 28061789 673746765 120830320 985517648 41090219 923034875 649283829 677601833 231727780 250920627 551669200 732233504 960546606 977133642 658146796 892795393 885562366 947710550 740592815 992087580 187071761 854427737 760700436 832998562 209792498 758772343 323395891 726480564 501728453 669052301 310108444 857520130 690684943 933839279 691981908 796977463 145960894 151085511 66644511 333247513 554156922 937262993 542763751 737678093 136869098 862910039 712690642 890911844 84951751 150244348 810204779 918553515 202017849 296088116 866148441 955484609 583924422 792428398 849188229 876517461 424578811 775318904 684952371 970858084 65726549 501943296 730324041 903753977 131795346 731306818 424531067 740220131 233130257 496405367 453352700 504040031 863559688 974696861 906085747 914016789 939430896 979279168 608352075 756557679 557303578 709312423 826614553 844862698 303359002 987440512 99068520 987053661 60679618 726346991 217152385 434171419 36652896 689454669 630643015 745273641 859020636 991214631 88115217 292514041 214908123 687539736 460701335 533801627 354663454 994276854 351547768 879775718 892101566 957317553 609097283 972872065 874179738 980766338 328369252 561905514 788812962 841563893 658760434 869487280 800565722 908617700 432527226 620089298 389054417 900628136 741567885 854207609 992198176 993413021 480841889 686941588 280318144 932182954 324190349 778547856 975442385 987542537 315455721 680948043 568141163 987027572 743302558 881966728 347827936 687616831 726565927 823181349 916740932 939980555 815740205 927537315 633653294 772106705 836810536 864055031 327215657 924141622 427025839 659331857 809636447 880796928 671222924 843905360 1059337 451143501 953981046 956644765 942059689 985776635 452804690 832518089 107615986 404063011 542095207 992044376 537733641 759847732 867744455 885374841 844944788 861890685 534709811 822522594 320248890 749312748 487356761 851561547 992178006 995396581 355094024 470831586 403956258 463166679 85227573 875424458 986210325 999092777 298688519 346634110 623362988 683860368 974069789 981736315 376921745 862922040 299431107 520597211 340607743 791641500 996490268 997981027 232926101 866005610 954643725 995548434 528263284 695948340 548247111 736034008 300287048 332492606 242984816 755520151 760920283 887034364 312466852 373704267 40674978 300831735 55743269 873277357 205776398 223266640 901501079 960111499 569790698 582137614 120859202 903596461 424578041 430636921 829366560 883300371 502929848 887202115 383044504 483013259 896937080 930243987 782290374 949228949 324367513 837608300 46788333 220052798 723742736 756283861 808903507 967181088 566560711 736726672 834711535 862689520 389349011 772857118 882386518 933562454 275372621 704213377 653293287 963268773 784241881 895730748 353581955 415057771 255890892 964158249 846931781 983540230 114246289 324533913 312508305 330897918 435323107 684444277 920090739 952594480 76800211 931493898 705139018 915500760 745824746 854915125 301985969 606392983 850811414 897234915 143433487 569351508 285376428 449528471 718030433 847188306 101485740 182258666 314719523 604578877 857513284 918734395 297503441 776811530 197577954 810982233 738386643 853455219 216589209 910916008 676083958 765025797 169175259 944945399 93162369 637044642 516718927 596860921 592555163 811885238 645418578 974920248 109452349 448557442 502744849 664652385 224005574 556174937 593342328 612351991 148810731 720966420 61963460 853760378 718623401 770660548 78849041 415766987 558395733 753886340 768438055 835509905 423422463 690349159 138907100 978009656 77941567 571213927 213064876 235532717 456388838 910418070 296094239 920890037 2055644 355765193 881476943 928345920 434993527 751467279 573387867 893853071 817175338 924736475 540985852 807473118 669083939 744696956 504082057 965695069 62980229 105034207 710672648 843152149 769269362 952957867 617321490 711810471 68661442 625084489 978780191 982457250 230093789 796058373 885983036 928949155 436003839 957626878 448699668 826620714 331564928 334125158 365248491 672759338 94376199 957346324 761998191 924844157 481393924 563438073 855162146 987217339 562416297 974985150 686196275 809971031 885831050 915726712 791065123 972443834 548979984 855818946 239513702 426381823 601597974 612155364 148887778 373943588 371690279 926940235 803000064 978902435 552696336 959222044 533747534 620008591 775668119 855107110 4671133 507388353 243332555 527031048 32983563 594870426 33588169 500623153 547297221 628774293 838542435 918309484 996491488 999047991 962210215 976762723 459455387 966510793 162501698 518661470 843099371 979670990 912812823 950250700 241139843 529643059 479597301 689087648 318177267 888915625 70667185 134305155 841232869 937784554 990015848 992356706 894960236 949847085 757426967 766137625 137486257 751558418 219461131 294641892 682703160 866808874 235910150 248427837 216939844 589464224 628402306 898773624 252164672 862456626 384457815 674684320 603852731 813478979 730784546 863697751 219946691 267981111 536222317 605415871 606886651 653835349 44722270 725314663 269549356 480084783 204486131 340777514 862080483 876816165 356284303 487080782 356203834 771392574 252057116 580232355 621796006 801457364 883732458 921463994 701426346 844584421 567285059 786976057 542100253 627752507 559614822 581525836 975399637 993082017 449496162 868251363 675798643 757902636 918355737 983311575 748083082 771737034 377164580 460895843 3948612 472995662 535262987 875628349 161456144 255827009 268380891 549057181 57993866 391903649 117493194 997069747 459953936 591263294 432976814 514090250 79688103 912256842 352554561 742173013 764205729 800521597 219065328 851615702 863425200 966981746 408866249 645703462 958537296 961142502 396634903 546980679 558110483 922014613 961305698 971540076 783940022 865808882 738874193 786839366 982538822 982650094 703026934 896083762 723935467 907951735 704639436 754161939 708834370 864078407 667326389 695997910 720915228 952432098 517490827 807696764 146409592 596265119 572660747 762390998 875805644 984314536 862933271 978959360 633930940 737658024 920921302 980158638 46157210 502339078 764689961 804787583 968863099 969342065 74082170 567362071 679696391 687628799 815786419 852360447 19304277 703988509 821529011 836562864 134622362 492128413 662503138 758981280 250007596 317093163 780268154 853070160 371933958 853227114 644393602 889001678 209907357 767987723 354991370 417637418 262625465 394024846 230994319 375424403 185506638 579212195 347364810 435656794 250478037 941690603 523926014 838304909 510439206 943045880 479607725 513732214 122550980 551129956 133943377 288003244 249869170 562516635 286957626 731266325 550763589 928995161 132902428 491210881 132979317 284273131 35558987 303635627 483654993 777144067 789875923 806716681 806920890 917867867 490030034 584664103 967188866 972897365 444011042 795218976 193412808 508853826 463144002 534198230 297593098 665827445 815004083 991121364 339474308 552094428 920739161 951125939 679166428 940900086 580055044 844085585 499693331 845406938 3165687 785393905 277983560 880151858 577515195 652047965 523217588 737840624 748021437 941488016 458249806 770994221 790552899 894811806 423447163 909710550 983092043 988451907 439340664 704705695 487563145 698636867 645728674 730182594 100570678 980700748 813211239 985873506 637530912 838196200 981591203 982047846 309441109 840742813 254893645 705425208 540646620 734490581 992554226 996111786 52429574 958097953 835573826 972684800 661718552 969884960 729377456 801256528 865618877 877553705 311369184 741404229 827316129 833821883 241249605 744523588 705071658 832841984 581145225 935675273 165384345 609231823 680620459 860651028 326002676 464689170 145532058 449364168 634463899 893768458 203701780 516620008 178740659 629212551 802547274 961413679 154636420 759937273 814027285 892734015 448950094 621232314 993565208 994736249 753696202 936553937 858607630 929072783 442063840 830391943 511112163 732066035 788720428 816314041 793207335 970079648 472844055 651942008 241194141 499886482 852337839 914789173 515246617 657464488 194000548 204275237 391160920 453634662 720783099 956010051 54941456 715564163 823392744 958898875 82634732 752055561 253411349 695688866 120949710 940511496 433401802 711722382 973919647 987964858 471216701 616669843 541979167 605898483 911404854 996804325 40468763 289563189 811243190 884113867 609674398 695534691 16319122 571564695 655637249 848045163 291049556 992681626 381534053 756142331 634354015 992561367 819195660 930796080 512984334 767330463 350155392 969332230 458942822 871038362 28928104 537766867 769575583 876415635 440869338 550562077 260821029 289663574 1112340 529880402 146470162 443436007 727378744 985491357 749627873 756558309 411432633 437932581 1074420 97954331 333940320 743440285 724977127 842737982 415060511 949017434 171288384 924732708 82345759 396450245 201310064 771634250 461408571 729648050 911842664 924948168 510025995 632092060 109370766 711921089 586542519 945932134 202613440 840145076 505315947 707248317 116881883 548424440 481046550 801326110 467247711 582441914 317888753 777957143 926216313 980610928 890598733 981877945 527428757 742947437 525964877 892122568 174778925 570736477 521952150 565885880 221095538 997379286 606349166 878590168 503801351 857476808 170789140 414930747 803387663 859479777 590716836 991841381 964200303 996180170 348406601 958186776 734633158 800771183 184398748 997745536 917576708 953672365 9894235 564786419 763484911 997449120 57781806 398702283 103624232 727843371 112784506 208479673 306394364 586167698 99456432 569902464 468427420 851523436 917255090 965705111 33817861 750913840 628448665 684708333 430178951 714290415 548110445 746785552 11527636 356622127 933079171 976340185 159831317 357242846 746623569 816216533 256414848 412178117 139345424 794801483 506682396 684749095 780587101 894103362 306519054 850401989 219002545 291634692 786487295 885155076 122346478 984049502 610218859 800441368 722073240 972472302 576852859 749238311 59978144 631453895 93842711 949858119 832941558 932640142 460467030 983224818 962705071 970408416 302549430 379323123 353928803 691568614 849449882 862539336 571642542 618832987 287677018 417494963 700148343 847930446 954336304 976293294 742241832 901833738 20270456 136683279 789691368 957908510 117407986 153739491 765419896 970365435 107730156 403921935 602582943 912059652 113957361 850205357 991677294 997516453 507706745 631832373 131215098 426892164 654794721 708704647 519670116 556499516 954797736 992633353 515977206 898814581 141794923 734529860 633883051 729759101 766998916 901638221 587247384 666312540 526649928 752023040 66478097 101133179 692879567 770983722 734823956 771166782 454627733 661656345 239274939 286378355 30968539 285422009 916654908 940848343 534400637 971621582 122280883 382468587 833566451 865386139 655089776 911693577 667908492 733576217 730423170 803912479 940750304 943943864 726299368 832457856 603920419 770213569 556834513 625933834 87255651 755241211 523020627 670969226 263508642 688970603 284267882 647785154 53714135 545698264 209745383 614194182 954845421 961973992 537545971 706314511 265432428 699227814 218865712 310202199 961120005 997035417 276551661 341566746 630880074 930442909 463572681 639468070 522662206 559830720 28862978 272022759 105323461 248650681 612966800 899022825 736588447 749750187 993768628 995661917 18320089 48351526 933848199 989682383 880861678 882773244 642909485 890149957 37538043 506244412 453137671 492533569 230388055 538145279 402216112 541643534 860059590 920109433 297301154 398171990 322532921 985273567 813642178 993765146 761166673 924945693 317832206 716596055 131977845 812215257 687676548 706382464 980239367 983090311 490927082 666619217 52477327 904809556 638285664 956515321 896136988 898587824 627500752 931446607 589076881 736171008 638540136 915684863 683047560 909739221 356834960 555597202 69811100 203777919 338857378 762318874 275848594 560910658 112179622 679066015 444810695 582550334 829569320 878955191 55167643 656580118 373628113 723987073 678411691 779963436 373404595 651203631 127135217 659507000 262443414 451326624 837091205 978725604 678629133 708396104 851020949 888059219 413447644 747203355 138472777 303732652 513615344 602002852 765364130 995725282 324799807 527468245 415443375 684406749 936129641 982961796 111346145 564020202 994842997 997748303 360894212 765242576 654086355 916551074 553883823 836381220 268262271 923476392 302361047 927378427 348756874 673682086 669939432 936293774 616131882 706863422 642752207 874233580 602335383 773988778 582172689 751856306 552397150 842609006 28405135 905928200 100616078 553873432 161744679 815480611 859112994 885675665 865515556 888859346 919620582 973200191 812422251 899999644 403085659 985126722 733100796 853075117 174125002 376965487 763817272 842046443 774106861 887472574 821758291 825395398 637852440 649021172 776784831 927808450 736787850 737936013 23973572 442679219 838733373 870258030 588865102 992894202 258109392 534034579 90982765 414009898 540271704 705938477 438728509 600864456 387424133 522747243 828902968 920361011 934195854 995993576 144903298 980199771 769898856 788326772 450899660 583765183 996072465 996374000 316167513 924260635 831071206 907276207 870713864 893100639 357545474 727680590 128514508 597527707 306309551 865171730 489833109 521611355 218862786 362289814 22738422 161494125 594805633 680095385 71703421 770221057 405734693 668071714 537271476 663235940 5954606 625453123 722790476 878011414 505756184 675925220 894527257 954279819 385644546 464286227 995801320 996777603 661261819 753568047 799585272 947654495 496755867 923646223 678734368 742374037 343856695 894426873 156945264 926996646 417477313 731322905 308654358 816301479 122372607 751833074 673262707 921556818 816939455 929452540 319616826 833278976 409566932 462706575 426693629 884176991 756472525 826484230 874508851 994270169 684554797 761689720 664275752 959349421 584525593 776266813 967500643 969947538 99091180 683014410 920002140 972491898 427463179 528648585 910681881 956006624 328171789 758716457 572647698 682931786 565614957 886489328 592169942 765260035 180843582 417921252 998970626 999233644 811924713 912135389 643499687 949965043 71663867 760098134 385293666 403071673 266127212 858909882 953823830 970130926 129188996 675412402 190834075 893952048 767675193 802793065 858296626 905337621 938749083 968685051 568458059 978584983 845504882 874348762 412115821 592954581 303499091 704065003 621866569 942566454 841454446 987963375 293091425 827626983 504218189 589119316 740075811 790217324 55580660 472091031 551444193 852313500 771132148 926289278 181587942 286328091 640011502 653511979 501298747 546609954 730316166 924309901 467813002 805410506 800357978 851526338 335376728 877769607 736827542 912870241 511749358 747635424 40319472 944749080 677217511 707088332 897503845 925384762 624487178 786427339 448219410 613998373 573077095 929982492 510494701 876639331 721837014 750681775 996657847 998123860 543605178 725431833 439109090 906654435 91801219 256244138 576573559 853995308 175996646 642245891 519369949 759320185 794276802 865198008 406704573 656683177 551223450 986285576 233772206 472430185 230814264 289193449 780126519 964117221 779112489 864265436 422406500 685344757 690990516 826163889 737294894 910941088 791275921 984402926 806216736 863658794 970679078 999332342 122818892 232544671 699463539 874262530 264489953 520142888 454287060 737938466 325317180 443689739 105096242 434457799 755271241 761817559 60258349 111498555 704032158 805634102 517632698 665542643 303806296 387395057 794723068 820715904 204633470 716952965 136033933 967819450 80390951 110825057 287188339 918966543 13057565 455964641 416704370 765251655 693757228 779312388 255129769 296894065 376590439 983517020 158481514 588485643 376555730 850775964 8553815 110359915 472659990 732461354 36124862 990726457 324873409 941393056 137216156 962467053 337080489 945187533 192629840 723702280 184805301 641224741 247744743 828299164 7012915 951851628 188928193 558594837 814247598 885798741 877511138 983455039 288705750 701589222 382582911 942944684 699676405 760761522 768732712 907597113 795949315 877255844 415197568 863275361 378886556 953048494 518893793 573119154 280262014 635591075 881522409 953334157 858786050 874255923 815029663 893875550 937209051 947104919 939444336 985930729 851696678 921693877 121981382 905869433 414083005 490445248 302990780 623800078 190406085 521688478 732869738 992981951 474164271 907195762 592269190 599360126 605805399 887115312 439660514 577974512 244394372 911889339 438972447 738916670 972201679 987931714 132430138 492238883 159952384 390522770 263810593 392031608 775930511 874713026 985477735 997812389 252224421 909960037 212065752 613766840 115462292 922854462 328681783 842686559 995848753 996604273 358733004 531367380 26338505 71836391 606392655 791931528 253911833 668786622 385883162 806076545 410169512 533628823 229712449 417258159 515761606 816175627 14153893 706427677 705547183 960820058 163067319 886414091 38772441 509903231 595433187 698764742 187382427 861414481 747859891 788292097 307970953 495504311 963455721 966223693 258432428 714265671 558966437 895779723 664707299 996363005 400886191 513245659 421598682 531122000 108571250 721158799 605011186 614278031 892169273 898628369 787685842 954882615 758514999 792101467 707163567 731889653 267207177 929823487 222747892 717662207 896027162 988321428 27433476 124977398 233401435 773009540 795377642 805042165 786386768 819036740 129890003 991224752 571267076 833035872 599636255 954926896 810298082 891848501 457871255 920028781 562711984 688602868 285062364 330927975 225187661 262650289 969609344 975987369 383601990 384832289 533851891 560914592 690768843 916805920 941382905 955639655 776195304 961903775 788338951 977750241 283491893 659708300 768160597 952247113 891461366 908311377 908806152 989185920 143704633 724147325 75629413 800654766 758201394 763942403 856365913 871888108 746444879 831915734 59090453 375790110 26004325 62276335 39586463 798024088 575059304 821689591 495425797 732885407 524628648 714105461 841232541 881371721 460281291 876170794 558484585 592287312 214291615 719770169 175744804 227157381 213658451 425920384 227019441 235048927 56332803 728204960 96346176 666426751 498279629 559102576 342170921 835643320 634917178 878617599 321092178 433874327 846301833 945566414 131397125 626040034 114420451 410351168 357211075 976827905 776937865 797670486 568027784 603074570 470010141 961159480 138908607 352655746 824972833 990580646 552128354 955064775 762296048 778801181 798738321 888966245 903870544 978170043 62148692 624817800 885004883 972863132 914846626 995916996 500214609 743387999 985401179 989669762 4773765 275428218 837395769 929587114 979493429 998727638 593949208 706026490 724816425 767203920 933137646 964060833 586348615 953999350 755146999 945425383 859381270 955967203 414891236 542770201 146561106 576652867 65717667 654868626 349643322 783950224 252335211 966407455 987670645 989017608 44653006 886344275 946433845 972072753 981535564 995637795 835845942 995000436 907792709 938538305 105577481 745814590 716241434 781484539 470166019 945239622 471117102 513085725 288505541 983235353 896081124 900863403 932461817 953680190 54346651 997471766 187966351 649770242 176668446 397941512 804973381 937084403 175864756 676322943 808136607 984538026 269943453 696109971 682673169 954300885 25886074 233409528 36097706 429675954 345243705 519586606 292841201 927900110 768523507 862388687 48587626 569859756 916302316 997355246 646182135 692395577 356257657 890679484 445922262 814871708 432899052 513971677 706260136 880920962 386488946 626619210 98126432 543810441 872670613 950455224 121788450 262830653 248520208 911702811 391463772 414906024 855369823 960491497 665654961 734818801 737692999 793050286 157260039 251264823 400873158 405546124 510358012 781808046 557638251 784520109 154214464 361337818 128683241 454788563 169280405 570267712 259293703 309180705 784425078 799920601 538088851 559417895 473715580 610490333 815712264 871173118 543845919 728811052 250267523 781367618 372995005 906862449 173083400 451261334 253195740 751977684 606289306 901737771 880634832 998789118 225623258 765071023 328461841 941124201 574120735 975709235 139415292 813287107 449726539 779122416 353985159 601582575 657859395 700557793 145550089 252916429 197347650 501716801 165281886 359127244 354638214 887198376 93912297 495588087 821019630 915476884 392181685 672487180 578621150 881056568 351647198 940104846 282897612 891974833 227540762 896542711 581848632 773807645 641702125 919424923 556537586 875711774 545927615 709291915 515659121 957721182 626976151 922695697 981883241 986586372 926976896 987854174 67523139 621254851 342078381 649808004 300384434 444222030 145366646 176302217 28443776 376604773 916276740 996722507 775847768 995578287 192517698 980403977 324552950 905566881 586656836 821034353 513662944 899218717 701878457 948035468 424449419 814511658 294921939 626029328 377473237 670518645 464526036 920843350 521865738 594073145 175403987 353667995 64679649 101381286 241858635 610646924 226792947 381179281 70292948 191680114 246911379 305229137 618004274 816088089 190964516 938377430 614514806 670293504 656676479 987246151 434474559 885752262 815023477 885376980 488829541 715544905 782965183 951027528 257945441 750906904 613490079 785919174 950838169 951087159 368602358 844350327 383546899 901768559 846884154 885333219 224022854 305745157 602790938 768948078 388989544 706664093 281104367 731453263 257037915 407782358 24611926 892357802 740546542 863855732 837754044 956181418 338433739 444988661 425851197 973677368 5602251 412624371 66254366 351019409 467972014 575980410 558704803 582253212 537581748 739508191 91458206 199722495 175284074 582702575 946154276 959125201 425764897 708664661 654097150 813806067 107267145 225953233 838680329 969957788 483166448 713639415 866942721 963365283 745608817 967935503 951095955 963139013 966956683 974495919 194464572 486317716 162691610 673838938 517970396 542384437 989126916 998780126 240331074 695918242 686772283 802822986 521042589 569046893 871862518 928434594 487720581 892912382 338015855 479647073 530529489 785990414 525688860 707214721 621722832 929895735 647878999 835556476 716663566 992510115 519487662 578981071 293724952 812462897 733189119 956544105 147795363 812026124 875348382 961321887 445658588 843182764 35749340 39411595 955624594 962427484 68158885 287771190 391487647 892617707 729747911 872680452 222350369 266481441 231367180 787576728 639982386 867687732 867567257 925047931 903632751 912615209 302396915 392081109 346946037 458851530 84361307 439777663 43840457 932313561 169918760 341529337 833766073 852590616 784434695 936347716 125804479 744784875 250896029 424200590 432550667 629482735 876873603 956295914 82330556 306503561 674097366 832574679 341325581 371868115 241930171 688419142 175520200 291173062 855842701 997891410 736147377 893996307 186183123 331655558 273213518 594276324 799031619 971490467 916909786 958049240 888306629 998962301 611198757 691268277 639546187 927559166 692037040 774808820 533712291 954699316 612085988 862821172 517815475 900713638 548921954 590604903 146903900 295113924 208918271 386248745 428593519 972060214 29358092 809659416 209016189 214317320 168029909 761488955 910654682 938486177 940220698 965177049 896653590 923049558 529859936 590833467 127833939 567393306 892123190 900596713 775514877 942436440 351396242 512165526 229742404 741723400 756069885 799091565 310418386 791021088 510701034 817348987 87268117 139599355 598533054 966898926 194937897 923603371 889511796 915127489 767412801 888513807 389876699 424220249 969189660 992315232 536219481 549786052 620762559 842294356 993448622 993749987 750582998 939559052 75985265 510681764 723575826 935329020 10930450 277154456 160029601 347726831 33128221 844585542 858533099 882315291 469776712 674082654 100775274 269881257 192455307 370569399 218727274 687197333 312024610 637903549 121515009 896543799 424589886 995123415 871239510 902512885 730615166 779414429 414670331 560372304 563443161 659783507 139661986 540553378 280359806 299557256 12998961 789249231 119577749 172411960 603475457 903033903 213176541 814114408 588988277 951477701 185307436 812436209 503724535 558757803 476300471 489472498 322156578 486544288 519882661 917381845 406303926 521760724 66300225 936546917 55623976 523848318 225177472 830785902 372013381 398904262 579614923 748265485 225403351 395738534 222174422 672877435 155953254 239401754 509496931 662554118 307387166 664486435 80121403 882508794 336549657 443249431 645409918 803412087 691595986 798590551 446076503 668399706 935458121 966307198 204394920 535035837 827830473 964944529 564162499 696276304 20641685 526155372 344209003 539782670 372001717 913848457 836364319 843590289 492129842 987623007 452723447 682855676 558617480 849199626 996107865 996965764 306347744 896469805 212165650 983210190 998812315 999000583 428634355 920048061 334705004 930859929 93192335 357667129 775424659 974893348 780617721 951369777 410992093 825331172 800728879 889172790 497614326 685265906 21831732 332045369 160363322 730021930 930641462 952152410 458581291 976207915 603572883 928652613 139502948 690149245 628203200 684788785 89230676 692270899 860384417 868709751 110053630 286428683 143161469 770348428 839272282 960828985 546172172 793499727 85111039 469192572 804357877 856903818 144193394 515512946 394455956 717569694 45927472 679486712 102880262 337925453 21813438 662168041 40459552 252036340 388344018 684942186 841617777 857874069 337036119 677978902 476737815 984008702 481491804 513285077 748319946 814225460 683444102 685123057 471222131 708723140 728786910 975411219 860394311 921296090 528005196 996929521 621935557 867534090 259114373 750455252 371720876 773360571 740014420 869317515 930052027 991788966 239225358 392674312 425237476 837594669 396458831 840982228 759834384 980980239 564198480 743120487 53399855 965141684 573970394 683757255 621263484 996241036 291052669 463604684 543388636 801322694 770284433 825178940 413701505 428828777 362187013 985507818 685973983 860918531 345353543 689661882 604055410 809332098 94494774 561723155 683036226 821619841 838396692 938570995 864852719 938932920 510764791 555977107 706198202 847024431 810214595 926626534 424509580 840043547 724555615 860371588 197631152 711519341 660622776 884550919 339186995 507281172 64587405 91935061 656181152 833525985 162455514 221168584 512801565 606970942 16642878 998901979 642246401 927972040 473746297 877554111 133592306 558477631 73550474 475707390 661505821 844057141 261533854 664971458 370571677 933440848 305757285 633681104 527126434 834498425 592651300 686268416 572460520 832931715 140570656 891734032 609626111 734539793 762513174 813292912 108146523 393643504 378737927 938352965 805273441 928240251 392237560 798788461 176317936 653953874 758006596 918682027 210948518 371654886 450120411 645961221 585394348 852362542 382195213 609517297 469350971 667734195 780214296 836468627 836354540 934677436 371420142 548193419 434821091 537522687 2685106 325794128 190939828 376648607 862984451 938489978 589369575 684701230 114038861 748802276 461375449 938617548 62678901 962008593 399916282 553865170 663596204 994114376 273800117 700631860 394758637 880779351 132377424 447031398 105280520 266265038 471021040 831249115 10984670 985405252 342656156 953956975 234574515 765447257 135964443 821273884 869872830 932387932 835074152 895044423 111086269 998739748 521942579 648006639 381978396 873217107 679455276 914295485 30681245 614238897 670176564 794481533 583595551 798898133 864446479 959777986 3161165 891133286 633015376 796558569 191377244 485889268 633723067 829003240 142164009 388688396 594617685 820997595 733258814 783285436 443511823 755744588 639582474 792070403 947026031 949265283 697597137 930194540 294052389 684913322 992477406 998363623 693250756 915844521 287854692 775753562 218328046 789346703 190067118 301241039 663336248 980574186 930359453 938957566 326371012 813380757 174822310 888465065 853354657 956745008 959717021 963901446 317791096 594917154 509013789 617398526 822770057 978354254 403774156 640992949 903733360 988853133 797559089 839673725 592282918 978503821 372644577 611244989 623381832 946541379 719006010 834546294 70164936 430352602 12576556 321358643 988670376 990579753 672419595 990073457 289800469 711909998 126435045 180609798 967158235 970148752 848373497 876547842 379400372 547878657 824710485 865335377 363239041 910223989 812848667 857860716 701912675 896435963 532776817 716849776 862620371 995885080 474526867 878848825 761689326 793681963 230904375 304500581 168095228 724599753 135692925 920970263 865377720 935242519 718818651 765143922 160284276 162533628 75047539 81119121 910496807 992225764 257195273 837733099 438988117 979492681 787832484 914494825 37354708 796141597 373876211 707280748 472111069 770588745 565662761 709446966 335309326 375509117 193812444 335036321 861349616 880955007 928580222 930444469 814332491 965770476 857796986 887375344 873213144 908348034 676340086 854756971 143957027 315789259 651297930 939706753 259623015 799935943 974662944 988743259 47586303 493948380 65874616 428742772 321116546 688534113 498115934 952866571 440607523 519822048 244839927 576189907 223271816 706486097 395259789 560564591 327217658 864663498 247394303 854794992 850722432 970938280 859900550 949077140 132290658 811254409 550926702 909795147 502609507 659262129 56336747 748550883 615115262 624647653 285574187 627091878 638035395 760461881 78171772 326379505 209349138 779945793 929611251 968720504 902461195 998706385 38573119 225147481 371375805 444180597 255099841 512917441 454139839 721561265 66325474 831167065 607185248 715912259 894888487 972269360 727428044 925829106 602345392 986235077 624204664 902175269 467523875 599278893 530390530 871313692 698048286 751771279 718757514 802244475 583058720 814395058 748561818 910631376 789562435 853783163 394191372 824241085 366368815 809827220 87892356 479680670 133015215 892682052 767761732 872137343 639663741 956458612 764681821 875523381 809616037 885390478 359104947 666354455 750898254 880268077 859629551 903635685 711613230 720434080 405053330 763563084 508609470 893314335 493915323 521556202 115874679 615390324 253535016 411905964 821399508 898747470 281884466 483386579 846906725 950811548 380391448 907975196 463523057 864158222 634396577 848123537 853080179 876230107 476185986 665496492 678442576 815116819 51729675 569206865 102621488 293261596 33496524 409206852 893428961 983235875 923654105 971451936 921892411 977711348 836887249 940687909 358147969 486844590 622323871 764476744 250035211 417101833 332146333 423212370 228847926 810410991 748910324 959570530 365985416 579728165 699180963 962310021 709271452 725455497 426212898 828358010 193961793 382531036 18434840 159925005 405260369 733884264 744454600 841488018 913794235 961577692 453827680 678679326 232662038 721884047 759302139 981396817 509276040 816635825 726222075 876805500 825086720 914408184 535099972 667362077 962005034 991675549 769815886 771948054 562862430 859423455 977386076 977555701 664339621 972705361 351845652 689313833 578216346 583833332 651114314 825488868 20159181 990367134 22586975 386838523 331447429 447882790 734703911 905443501 638912208 926575850 516962266 785178989 222239443 326150228 104772294 651351627 713209408 778889563 267802170 921661080 137434149 825957912 535775213 707042153 188596041 986128004 724980054 984930903 323321230 712748101 124278823 754869898 268021345 882137130 539226352 714206215 427269785 640696452 568595438 946784346 907137250 943914999 331556210 794354655 722665699 755509829 85512608 672982079 45003020 840835325 816494096 816821796 670011125 786636666 876220978 889611129 145507543 446353397 181119204 637399457 561138380 883084051 222839341 974671818 711803308 776058932 358718903 468896047 544808570 922212416 42958040 88254728 773809536 945209007 347966112 373878515 477827834 840058785 137093090 205946044 135217336 297093366 646416205 798401096 693183897 777596673 711356321 996063794 792930327 961154601 453067496 654875876 222576004 639741515 877775595 918568736 457703341 789933952 501442666 680438676 830673431 880638983 260806704 531240571 624612049 810214442 211058784 821693464 534342551 586634387 364516575 862165612 614408212 852340357 719304935 835277217 808936495 983723409 332210260 507113131 431931627 554331882 771143643 949050986 529161329 897381399 401685361 416950091 23570738 461040299 989441221 996532112 615006421 823637645 782001857 863366029 921999589 946580697 797598027 863779917 837921173 981402982 658001625 858114862 621328272 834603646 528000275 691143884 802176605 878345072 279192660 724436949 525092661 733633470 16907714 859655822 926743963 989041168 866694228 886295775 143265908 569277870 627692295 872278735 690945166 861746966 628743424 752653808 995759726 999268479 960196135 993501180 990306023 990553932 633245644 998404213 519438472 888861270 611302777 785252071 240719221 944662016 42736915 538267872 850727477 898205245 965600374 969955675 70339708 190945055 478258014 546963687 754703180 808811127 803588456 917826559 708313946 921942902 697588928 836447870 220261586 873176261 323737889 357269683 401107375 411394957 45598031 111412261 803546340 981368107 985430203 996115054 955090483 962304449 542755385 961459338 139468438 655878465 408805654 909883026 506471713 986003679 768530501 986592115 368187657 929861468 942089096 975135080 404711158 606840211 595792067 747599717 70448620 93945766 290775014 504983747 474194986 796586065 22572528 739406622 159743917 334232152 224420002 498937408 994957580 998539779 791889384 949411390 16681330 829337212 382475273 890564267 623134257 946074392 742762741 758118372 973771211 985359994 817335039 972368340 657194699 672128952 370230524 887907647 918955409 923316135 185438246 402418641 213162105 709548601 780766942 870141088 296979678 332718019 502975724 609782717 236274614 805190907 558852646 642795737 39631866 355627242 667576521 789594907 25983660 731466942 948125768 959883230 38855953 440393679 133173328 727169387 140688432 761243388 533326865 720415038 389905748 430523109 629239612 740669577 349387841 419409797 717649099 889464146 554947278 728071923 911336187 987739708 544990219 572221275 352771575 774125269 155735522 883453275 108384522 879596375 987166795 989784136 814347176 889723929 865987506 886355645 504578779 817896974 948096264 975640151 845617147 970787524 313264116 566738020 558069424 870202484 49419240 153403822 989763412 991497893 350301901 532817080 993189709 994729920 656336689 774967151 990520591 997592067 707434619 837872021 959183097 989295589 405139721 602835453 722443467 871615734 701011404 750130913 985383647 986750558 327456066 528059464 716158219 860227737 158922756 908299395 11870646 226234564 839748521 867317032 35144406 452539582 63514990 513531362 377866657 859029906 806845776 816002069 76400889 497976811 227973865 992354474 503844216 722875390 347566127 393852981 606219170 619334557 423416431 835150406 402790578 791038694 335804091 732573975 561414108 826154817 691493194 905676741 4074162 89110060 964366106 990847625 403821370 476914378 380978749 407824433 327891396 590655854 364363910 865742099 25148567 933086607 253806264 491837856 966368122 973716708 673760559 699655138 9209354 289629180 468627465 872071489 333327938 686642673 686791665 714286062 387718919 859464352 295230159 890740098 862983458 961055995 592598348 880397844 124148297 745058565 381855283 385158315 612428177 891281467 3072064 447479950 766114151 922812313 805626845 895012564 502989319 619283588 284965255 887597124 295221673 962066202 601099285 711367997 143495131 615680104 867814685 966135918 211156824 965888160 887272195 983863833 90720138 930816808 469114953 928867391 335448907 752187882 665034211 679635085 543123840 631145919 954671468 996629428 657333916 803242880 509700539 845895168 350951385 542073454 126579482 527018296 825170195 860147789 326779650 718120709 43128892 729845971 581148724 642081970 635619933 893147248 455748166 966956019 52207679 653993317 403855780 479747844 483005509 710455395 873976831 973256795 203741836 985867967 216335607 694429917 450570310 779271596 448602503 997016782 535999141 779255805 913275379 932590942 978674593 991840998 563228782 832679721 451366468 765185504 374159519 725969161 671624691 694502690 692951349 843310556 346643711 362467439 679229688 998793524 507994691 864905230 945487287 945889110 906927362 942717142 665130410 972657392 48142142 823896034 280982393 553367888 608125499 729907905 183946993 862235660 699523604 806210706 345058168 761713904 333228776 773550214 517842981 704529200 392739484 865537167 241618507 700471592 216068374 699560748 649096247 934009890 867492332 950126847 506131366 782994593 532360525 578281504 303390029 555871489 214426263 698602481 367432545 505206571 602783521 644952780 30553173 662055142 895333591 897192288 947237535 968828547 93272243 199626541 429157440 894612121 482241097 618863990 590824205 724219118 467015820 908844897 725750955 864706826 171341810 709669377 983375888 983414587 768220559 948358663 309964771 500170314 893352022 949121008 555580122 995401383 635349778 771869369 80516802 209376779 868598369 979115163 159549179 410480244 688892691 697310022 790323485 906277759 491320230 533703146 989856961 996793094 147277708 896294378 219863760 494376548 454037777 569418156 892783899 995843022 756451551 837616183 331608012 919664512 407629338 651740631 539994677 681394260 418464259 890835290 848725333 881459805 739254972 950982852 727592404 922004321 329662247 554137205 308281208 945847543 260860761 556785355 795868087 858083145 73938196 457372928 704685560 995120157 35226372 474046109 738235425 801961816 818817259 929337852 868774314 968856523 855177961 892983307 631026998 788332382 718770122 799733926 979467478 997449854 933524530 977536110 471790794 578584229 773562425 858810827 71067982 474402050 272363446 996398086 224777435 473477982 591832647 807997005 779161360 808999565 92494548 250273013 289576621 887168373 990314908 990567763 18721780 637278038 525058362 875399604 734769222 939592623 997826875 998505631 491687022 640855187 831431561 979964706 160346688 678862488 835789596 889450437 411682279 490482939 82514711 362443429 202355647 906975298 918252599 997162793 866427974 958198999 611486566 753408941 864901250 982039186 565405772 785767115 294450635 653411182 821367722 938353517 767633690 858136627 843087738 888670955 479092173 501186075 619388532 650944103 372028280 977914131 128877765 337784806 284474217 938387356 546462982 796453526 542818349 828348225 792431671 826993450 253536295 771241222 997213858 998597004 232512983 434550979 832755004 861331750 619029416 947776851 34115501 912910282 994479461 996382644 668857920 967472590 189291048 501241985 513605718 660667866 791729341 971036765 337269227 923268919 588606602 857984101 413970189 890366650 585440288 987220524 131215448 911567636 322378968 558267620 304023196 336847814 736649959 959799211 138067623 567004022 669616890 912763335 241832822 567599130 660835022 780447950 855980068 964438864 521743523 862847252 904037496 928592141 220780810 285169485 210230113 988626278 519106746 789796267 251537920 721634590 746039021 792874974 601638217 791545089 980622861 986756013 806765412 817854395 624786334 670989089 154763206 215856894 281930232 733214812 524776700 563756571 485956991 583336022 38195132 862545827 837039075 866136801 80369072 929610733 503135235 636808223 974124154 986597143 87241417 698586783 906985766 944946423 175717711 348778221 550348844 757731572 501823662 844674776 62792896 245357750 466198334 915986066 811727986 873591828 900007425 943961356 564902764 877688852 582260394 756430602 441201351 519904377 5201411 164589801 705072319 953011762 532585985 721600787 142201528 227061542 272685420 822466887 139415375 491986311 207037692 853942683 382781064 428942882 453896240 574902891 917837132 978045424 826391355 952403838 238966301 620121929 853511641 880143177 728683882 850580573 989454901 995487654 595530469 746860230 864974886 955278094 658795146 725306551 117142123 559287262 229849725 601737460 623807555 956122181 17533107 686717177 836183086 848080886 395785107 784520791 77863155 277907350 910693448 956467051 514361721 687682020 537323678 763674520 957864273 980030434 328858341 926141772 678874273 820170297 65876932 556440375 13598797 91864853 892159385 897187770 876848846 956300710 71540924 460329648 217584587 787305753 855674782 886781512 952938765 953626167 227755531 788408719 845513862 852765745 417919108 931588371 686505490 818570588 356333879 440278571 189396671 719841386 798988157 913971854 72189301 961865061 431726318 538412010 624201513 865098767 304710375 519046960 264797369 652211127 390223408 953043779 857086286 926044646 794368076 887517067 707254199 920274809 317214258 396558842 557479449 762363884 664989980 671778307 28022435 662768507 78243499 900088300 695537582 819542561 245241235 526452930 58995895 393587522 831557010 940530648 14479917 927454098 74804818 444330065 500583784 569248391 245523580 933704610 700615544 804310464 539331678 623767720 115621455 276183864 693456940 849796115 157530366 954395890 378118669 697206433 756304412 805759974 215424749 814743880 669096523 964614650 136704156 492108080 76280009 915752243 126163826 717556054 932869754 984901897 717308874 785589985 786779903 893723535 73135330 852926121 460507546 838510876 432582123 765266948 580985308 874994793 740141935 822379654 739510681 960236330 602577643 818235077 379861801 650494795 921963634 944035651 707376330 823325632 524148548 793176687 751877054 785499812 677321049 958997749 431667284 741566818 962768095 992618213 118199995 598761332 683602801 982195170 453358651 530140408 342308859 382423638 348837276 515261159 788831689 985815847 436139068 501959164 545241228 655069352 94865907 414526678 706266224 785172500 858452670 995787332 821558164 856953953 785350103 961614400 422567524 922775452 820491485 846246965 757535496 884018654 248741911 754056520 125185793 352982771 690829471 705262831 58154899 116102415 5793314 177522054 339604381 632545366 634051246 696994068 327930160 571377006 497300681 983165918 434397584 918813068 469442589 906718706 901070572 903981742 270899487 628042716 688378454 861429870 892039135 961713081 363315528 702978333 220166570 671639686 957720268 996205069 360631879 791306744 769998676 922982291 476669198 573679093 797816242 909349516 61807152 532248953 558991913 708286073 860363647 864716972 816720562 934847056 931631016 937985088 606488387 765232019 275905705 886915043 620549713 632848021 137252933 992099852 696539344 814406672 658218042 863030682 925509008 992871546 941298441 999385457 141595136 204396740 235478130 880782965 920981647 980637596 749171485 855736003 881706010 901806658 48894342 666187843 619774600 624809426 799321509 924820679 707936933 888585632 287460987 837809722 922748381 933409178 647362853 836473761 202420854 742070130 631848869 689395788 302035198 533781876 772932421 905697763 297728821 872633095 365944794 800440873 713908770 945168804 981867915 982311347 462884684 710087073 283235175 388593651 779936745 903484438 390806174 885479434 719728045 910615802 72634045 493136995 260997771 977546884 986779280 996001766 654707639 955124317 678987330 989060299 669400716 998082222 438000724 529286052 341897703 741874369 657056099 823954270 939934735 954635272 936139744 980515495 264716863 723744044 746691748 819421242 735414487 795136456 655383645 804982515 687930241 696655410 186639533 296723417 517209316 521655335 213514770 672961526 781338932 999091497 756736290 875391464 961420070 969152698 361852356 789326490 682074233 814052187 327236852 650279110 936898426 960842974 139765292 892553692 117842739 632988741 30385387 640692944 868832765 953078311 341410302 432074316 454772868 574306854 646512402 764181042 818914124 926492718 430881023 835513640 562700545 987410357 489543551 800859641 644043461 997567672 817730937 937644104 296792869 596856959 104173894 714987207 754921654 781062544 728983293 858187253 303263878 650285629 473310305 868310988 26695354 36690376 687650168 790282054 743346932 756649909 388950937 411843282 386020167 587924576 680633378 682875081 860002802 976050820 207461643 311978692 664786138 825131189 605122177 670097416 939821102 962494132 427439385 606832339 692499969 978625371 578831198 783741947 19431708 831729666 753807111 829748531 17544728 504206433 98636872 225086346 357950554 657123734 66677967 111373706 71344451 517548701 955610913 963558835 51405611 704478611 847683836 952776560 983142747 987189260 410452335 965162624 705055540 878654280 983616871 986985935 963270733 969953663 416410234 939986469 366144982 827410281 640706520 727554368 284507772 935511590 999099565 999135550 322414861 798059616 536298978 694788460 808685574 830582172 160532093 665138349 970193876 975986007 139619105 347137756 823593041 977923741 689111935 835927412 851795297 862453977 974627330 988487422 746177437 941672877 906594581 956928652 352039102 663969599 820472577 957277889 683171160 968032605 710438322 744403519 989989640 995617437 362169789 742587726 766568070 807129535 615498814 818125685 567596144 897673676 201439308 368243308 726496334 743650220 633039900 973581858 291573851 788553936 193837203 638707831 266516046 972376060 420217643 810221037 270874860 814184646 788852028 944252391 421990145 616610923 811781600 891676156 708743583 723328365 622387329 787492232 911945719 940021356 124656170 646757874 847555091 902955705 266506351 840564813 478541541 632103183 556973481 644317580 917792858 998241006 433542152 526646427 455438073 569421776 885674640 955954601 86940862 271418175 69723901 944244250 449393224 845507780 491634624 926938411 112598805 199224076 598341122 600220424 443450563 929730864 377432935 533820284 708282256 827044451 844585370 932930233 786340128 932568182 71608387 801195552 573253567 599968207 330718019 434998960 566126631 917152269 509440907 526990173 189578098 255207753 355289331 883938458 759808150 901217058 484333178 810223162 210850905 257821346 427825340 703254753 726242141 847498460 497867402 998096914 2190721 922073754 273356515 861141857 968090885 995941862 280030170 924609458 271857348 619525920 407496522 579136329 789150975 933281078 133736937 508972706 930899801 935872487 292625840 357366712 395166012 936080493 357869629 404888715 100092111 845766805 132638693 773376440 350093416 594185677 552681869 983268482 264961210 498792536 692712519 711451079 711257616 955211915 723114572 905771449 786711617 895461994 884794754 934782564 777260164 921629103 506070408 701582765 642959602 673001709 10814996 269618047 531277275 783347242 84544668 598903067 911819465 965875937 647422861 874628675 396480782 699528381 158165397 694669270 679041105 769756025 554052464 821964553 462556944 637451422 440824641 980141083 275591414 892741467 827453124 961311070 380450138 516063269 374223598 940752556 102933428 235956348 852119193 954045618 580049919 610093486 300243809 418989981 418943916 882308150 354078487 579731515 468759082 860556091 514112261 988851940 8595568 92211259 221178908 383256235 144525699 718030891 865789622 919176962 410079164 823307153 55994877 537554075 280535698 576467442 331055698 384605116 567644846 703461016 410290828 803185987 283749615 677008716 183184061 496411428 654933144 937823880 720360419 935334193 271698869 786887841 536337802 901340229 147993015 754920695 887902973 889340067 450235748 497303728 265718355 972913456 397718493 662573161 999274884 999320131 233150855 534984507 222307425 642931370 709940937 941695080 899285025 960216596 227008002 390210212 683801985 954508247 923308425 972328144 628322040 740990019 189375426 752583039 607837137 910382630 522244223 699285500 502008018 660545010 112553107 767004626 270505915 881330433 418727235 938400629 902472858 995499334 582451393 668000720 845319838 942643622 948656711 983583628 140141030 327316830 699769128 878667094 880978102 986244401 379963874 682892164 265923961 840711310 827227953 889318742 872707714 903706039 932592974 964543131 656653356 789803024 720344493 782519630 431708917 618543580 9776156 296520476 571475840 931191430 811091787 910372045 498974863 828852026 286328921 757440640 137816813 361722042 248409281 344669628 310339116 736617744 420467958 784914456 454580258 794480772 352172167 551624846 798013259 863118199 501548781 840175656 866934678 947289732 534100774 688675691 631754243 735712856 500295760 679222887 937244891 976120268 191419812 957081855 451056972 648672625 729249131 859185294 213235504 559467511 913604816 941089675 557618240 563107897 383472029 949101806 19477243 718186441 559804209 976633718 196743747 680610785 357099302 403333649 309483567 772218273 301018210 637880810 752593230 850583482 949873095 960530041 300120039 798264575 981618489 992258788 616904551 878012169 863947976 938613001 886022745 992717791 720437410 830973803 166947579 494924975 69706741 125859667 772292523 850503260 308398079 527901759 538894279 620878759 728719242 782691022 787080874 866903917 557227012 654665897 599551103 766140449 561156262 671349560 883528374 983818159 925965339 931450817 909843431 991557317 936940152 982393794 373447209 898236849 689466128 857235705 842912004 909304622 592191556 778414713 777121669 963615996 390780594 740668144 992408067 996004663 871301536 977212148 965697716 981677022 256090665 294044307 527581037 934367724 301480697 626125617 143183133 250902480 955248567 996652940 245966759 282992127 928410545 969570532 338919746 739643811 709251313 712147560 664557858 998217805 538998753 954531345 417951961 867460629 940292063 984487205 983173075 994573407 378836233 397136339 22989469 561229299 653756507 938441687 735548787 841780374 869417645 988314947 165066454 842985966 137002358 604683258 339127464 871049150 439609415 540139926 297052575 312009313 416278173 732228468 301234710 311488267 215739608 677661658 732209134 732626906 182829526 715256345 670132374 973323259 773978216 782421030 810858005 841605619 440464294 825388559 837504354 966341459 612753560 613304109 959050304 977703445 347923171 797931496 754057076 810214564 456980535 625978307 2947015 884685035 706444056 834457325 448975343 814688567 688737775 738639851 466702281 915233794 735269650 997378313 811229402 929409472 863023700 924843507 785407411 958389028 520852899 740335827 365257598 606439512 869711856 963945149 710377863 818439113 906755605 985893403 777817675 929752113 659362414 860837294 10522129 551908594 753432384 814554048 58549156 644078130 283808394 352315532 450173333 723589569 110787428 790639889 53107035 266599902 90761449 847241835 153561629 253722016 662594502 678409371 876427462 908767491 223725436 375375255 993857556 993940188 359238515 852695123 801653049 826484846 652918934 908327328 933676009 960872126 513911263 819515546 678100105 759878746 245779443 591457014 787846828 883229226 756877369 763887790 518106751 522410225 742404266 775232896 206462895 721517241 535668348 811684252 806704774 919705591 984906471 992995353 673089105 742806500 363416348 916674949 39396559 963763773 249475621 902489114 567835333 911170784 474170465 927371083 223176178 812188436 501018835 611597323 987342134 994942580 708977585 917448773 38362761 280755127 747753741 752081265 520227918 709468860 779132093 969322710 847369853 913277247 145742658 911898719 858774009 975961242 244414992 742344480 75997659 249543405 633979823 779302825 634597704 949352498 651247332 666332297 167973445 551644737 649741727 780284868 983931929 996056790 297794471 542755628 676898816 724348143 436755677 536020960 311933506 751402091 470421802 647717487 955450606 971620674 181819713 316733091 275282013 676619956 405159071 449009853 979061032 992289466 224983936 464248698 955566533 984282875 601125117 970048298 192888788 740590501 61691584 731821640 51321349 382456529 704603677 908921944 423016288 614743674 934018978 940979877 572640974 976134045 215660509 990921251 30205750 736096025 468796105 541253250 454625244 872642212 872134599 995864515 465607943 634337002 140306625 796614638 91835051 754804163 790759029 790918319 233820490 635511242 975973474 985820586 757452663 968669311 522523873 543727037 146962973 515548279 848274523 852306321 463936714 865097982 683457936 976052113 382895518 964926224 874536998 915178893 225552157 948458901 278087437 325932971 750271958 937882318 376786069 579637268 432179636 592144760 682788650 795752649 609580240 722172253 135623520 989960491 86161650 545947822 1554823 643910238 517889891 834826160 736889991 979499561 851213852 978271837 43438380 587750708 459029977 953564819 465769438 881317505 273307873 419074114 395509152 889565876 618863256 851384948 562330795 995403048 243033864 529715843 778162716 830607458 566278523 623192015 592740133 600407028 273078506 281585473 568147272 819858917 33687088 747997485 143996157 340790834 45145214 528858390 785085772 998563634 311066970 808387587 299747677 594395758 898261997 909041116 326898510 633185610 293926494 620527505 356613749 862057542 652528665 670745909 969297066 979262248 103521248 251575833 62723633 633337024 742682271 840668171 590000009 948796878 152115276 421511650 30166480 161272671 924011306 959562457 5050533 898295228 126961612 526424355 426271698 547029220 879559449 939950030 687035948 893451411 502662306 535815657 856547180 943859632 845171692 859126988 415194241 461738152 46840415 878900855 194026910 493113299 945582133 966658572 630948644 885052747 282144636 949702177 857499449 978167960 209614866 377007060 85458601 852320002 133957571 217732907 541468681 916983539 498311669 672576376 547050038 769203144 958696251 977368977 164141804 422866693 958369534 998132021 538522067 875405497 899330231 985091364 251077027 948337953 321303514 787700701 893429251 965177910 471654200 889795195 75424111 263646709 973068777 986151819 456198439 691084845 573312200 644018919 598299785 692613376 499522158 900484982 215966048 994995813 918796424 948627336 981559641 987630982 523169574 999217787 622449731 670430606 465735102 622371187 814850134 945320986 885495407 966097106 335519949 577202597 870653184 973617053 255494362 258141137 16831017 728112789 287000341 983050951 118940700 346530299 919270599 985397475 905208876 938303360 921225668 975634495 219941915 584252592 351355912 885486060 96916754 871535631 882643440 909454229 809725786 840976043 374211969 755514216 59936092 699814421 52869266 159711937 716525051 857628372 912476786 983888895 565442141 846659439 324112363 494064853 305776585 969715853 735176186 870429395 840684235 942197789 925838120 932325864 634090810 985413327 727306421 773912511 539819082 611940658 64769240 764660083 541233470 605849930 487967391 736792808 345964267 557964505 696171578 862647878 914833922 940301555 341438429 877443439 888604640 974531514 320930572 355741996 890806625 901063246 330963735 577836672 239576099 806317905 349851316 885845979 213191515 298059554 4844190 859897042 220192396 539560476 398876318 628702456 392120905 512459640 515074887 607029137 68608891 465215539 852044280 854101462 522621365 853207361 348846443 679323344 81652898 774065122 792673327 872835700 625221721 845203254 764864880 962453422 227451848 808214799 593958181 839201242 246410543 388166763 160914937 549075609 565944012 893985410 748561844 803304960 249164941 620077073 665745951 788031144 963236733 999251957 414376013 554217534 956281973 984730821 325104581 790513545 486393324 522797290 435428787 643320133 871660820 901312324 487941113 975611990 13114841 16869461 726017315 852319324 801165193 951459497 504905864 543386856 565731236 764628519 725767078 956232138 969382924 992262028 421808355 524900969 965285761 985995948 204124021 343271782 426383981 578757996 45866307 59592927 974279297 974408346 72533879 644495934 670148412 696077475 143846235 664675689 880958688 982674756 435619041 839943662 575170791 623803376 395199797 680606960 359292394 389016033 836550038 902026323 132193055 879077545 505541444 963419839 87648833 237613701 199699600 892387011 902473786 971357074 282554009 526677553 670267950 989374661 340994054 927021990 215794491 898978229 252137798 931692870 981105569 988771046 402820963 890346201 532747866 637955635 785420293 967788186 704266317 888004000 300686527 346048034 59013213 506440075 842657607 868250909 628095470 707121156 959263248 984170163 544815070 704384598 258638249 611095078 902380667 930725433 985065853 988057513 310848708 448827042 71813822 672704160 499393591 588497212 132773237 621916814 959133226 970469451 684461842 940288650 578568556 882300920 477883524 631883061 504814714 524010692 537456898 796200014 763735055 965928100 776967968 888820586 902720121 906317158 400962839 598683275 108095912 616148410 98995947 282762543 50031478 219513494 84084799 102806569 196047304 709366767 41973163 238336682 316318236 867402711 905076183 949391111 645944242 885298226 325615496 955431448 717548186 812178924 324522082 725437992 865429053 924999039 908907095 990633987 957274833 997081245 122036373 960293677 293281086 998416422 664389955 950281069 92811765 731311805 893237414 976735909 251054184 992573325 542145466 586959981 445098730 942334375 584032567 600153594 967772976 998767883 147603935 875229334 382580535 760161006 130150751 192626411 10676050 618202660 15430413 386988070 422363091 527373750 362994826 884146373 838111173 848553560 2001706 566276345 251985822 616213205 948550277 962035144 209342709 465718687 247676578 257332264 383848460 996065683 867798135 914470044 871367744 947098500 263738225 894140092 570257360 848859394 777419933 934702683 149319581 226449764 43976817 577397536 417750790 724817885 15380668 996342979 181616365 982278184 925167963 960327099 565018765 874594985 114690930 981975917 32667804 208655196 234428487 435412573 172253269 982728839 759496965 959558556 25368537 197543847 379831626 748206959 813146942 960453127 24122118 723544517 311072471 659413267 54562884 807446092 515228653 702529152 725785776 892861390 673869597 825533484 601824236 992925862 958050452 961987967 473250933 761044313 848134429 860667651 530099962 702201841 632978839 934548191 277093778 314317705 925059279 947891928 795785450 840730967 963665410 982167152 542382119 624131092 522420426 965416646 656325012 741970369 875999367 907590112 33170153 524597646 373373444 461033306 20163498 465462560 522089781 932909873 646435491 685396223 847856299 879690829 588962741 918350828 270515261 943339875 890582329 959192201 263933776 751936441 838844186 988548332 461225823 963915988 198446340 217728659 888999265 957072681 803756580 996698241 610705251 873500870 627021393 687527423 70875437 674572037 844832884 930140568 22283826 498161922 521518316 836733263 956376384 990813194 666617103 747562819 545807200 939927836 612029510 942226620 608718733 885222655 205459810 846953592 532443194 538627775 620857410 715591247 180594029 639838455 113867715 265884766 564147850 823854681 55676635 989990638 878896593 941536728 288512236 758190141 477013194 791811255 232096680 537048598 728481727 821459222 568734925 926195673 824197033 992125084 601842605 800111165 475877134 621245145 989100797 994076601 176437394 572453446 63665344 67077737 482500622 927934164 616698108 724820394 450683123 832622570 624522741 887963894 709669117 953501459 940197252 942198427 176788892 592598934 964242984 995721677 696905957 848635968 603426236 897986197 882770394 928058001 978296585 995213097 478663542 563362211 720379805 931187711 582245340 700943385 934182751 988587478 188665878 939473115 152993782 479250280 427611661 539209377 313396241 379200499 883482428 903457549 539725094 749495232 242599990 425547165 982579682 983364552 403033664 573710543 990882329 998055029 183951063 215649227 454024338 606466306 45018983 67491325 292499040 782645298 838227228 859738215 220984969 432581760 567234713 903666996 562073583 707075340 405661522 838597824 25593207 407386892 912037096 953520861 906875483 969873858 815839814 990725881 231464829 957002199 304918604 977763614 729331682 992336771 458207888 641328294 889305148 988620246 677920609 890931341 618809344 968917854 915720871 953046064 926224041 960972537 669271529 959778469 259337013 441799384 85200956 438931288 146123882 371545487 97560781 839561723 420970698 888134422 684250008 806983011 806766700 978824445 977599876 980873922 146170794 405793952 603490111 977099306 889523164 972564059 759103702 839445591 802055284 954175023 794376530 808021792 949599254 961126031 563792739 584556367 125214468 518245380 195877039 428622036 538067618 679990118 490972052 825221435 663188347 757768970 929177597 935330513 384643955 864422025 567439491 635627374 869702617 925563071 925367795 988975582 828065075 833626864 152731386 805192047 471201529 688337982 223227578 824165689 707857393 774090547 659860090 827885115 950692527 992853386 880757865 889746214 440387077 825452766 974161320 993229876 411248316 722609130 194858076 905096826 223182288 816105383 671144828 989721069 226266961 841075893 375528125 680398973 237929286 908230408 450405741 933889139 860106953 963597282 46428808 683180575 282092462 447650854 174746394 320552116 149089884 812875269 43005182 578311124 819839791 995146227 798323578 976348153 13965891 547566972 179533296 935566905 66518519 488638579 67787266 695166575 35498961 841646250 863073456 918750011 717505119 737604498 851935030 996537238 971585461 985590228 102692790 287380774 167021533 653123437 53091252 57054294 376307990 379416392 404017568 455089579 901638722 970919120 847918223 984111766 716805339 722112750 129578598 524137368 813159005 851526121 623629934 914107013 996681755 996737223 434413324 886858781 850865984 869862252 396115582 428801740 702331652 702443590 669060115 991588661 294051709 549452023 450673329 621428600 178655678 711712061 277589518 801939697 647196132 977417795 915150201 917044126 887755935 992874145 282497541 961865678 771443821 918632973 395589076 903412503 635261471 730146949 618676162 991562009 25783070 38523722 714182777 839436798 966817944 969389685 310894944 475805283 924332391 936274855 308468772 345646506 335850122 584521090 760629951 826865499 471990040 642194520 414717049 725325996 379772004 721706087 617409030 688107438 874644093 884435007 241089031 391385912 573674675 986561735 609365859 787740168 562765200 631530121 847462533 898753348 823827858 930786008 905118383 967506510 323161628 875492457 36699103 606365208 880782288 907779850 81186430 265256572 42115104 613417989 831416148 993858056 885174043 978169155 225559868 643004167 8170376 377692882 516619923 690206506 331900876 472705547 103523474 604926036 340447696 750313549 778183267 841138826 117327417 604378842 302032239 595318628 172764452 477164969 700565263 894941230 94879686 919714683 838828569 864146352 781444163 982922480 575838237 647804888 20990999 157862851 324184736 423871916 599098159 974026803 234806757 662926094 766420263 863714499 437912307 710182018 846223243 890564479 29205555 767171484 452602236 944394755 83974261 752185733 564782913 892625685 468700265 881089326 744447951 761835214 478406453 541743615 214768520 295457134 916852664 934639544 562193659 605215286 144675728 350542780 713910901 742802155 702508675 818298745 134132204 514898415 687705348 781348307 198181536 724004637 180559560 777867354 279273897 614726018 225322208 265770632 87767567 316390006 206933285 551644726 506031668 931212880 753616822 829776280 902013799 945607996 143781854 830062934 864487010 864858516 62641447 68311843 557453933 835395851 819795333 883112946 32054829 573601935 225526289 465233457 772168505 773716092 551473999 975942328 698978299 782305569 819233224 937229850 6422362 281412496 593602230 884545820 936210622 964257255 2215725 108838880 246904311 345579885 183913595 234007962 686302989 867156636 332117900 845843707 998847814 999144589 550386214 925770995 12024161 192440190 406797294 860115473 293435689 778657140 903250658 952637882 772743508 925519482 494429849 938388875 335979108 464120409 288587000 494650563 421227353 839175981 191453999 500354374 898693120 961921872 88935107 464961767 946793865 983416354 355319367 842839835 955172370 995607557 143184936 745607754 245250745 455536177 551176801 927663824 695002933 804619511 890765196 993907646 194679440 815807870 934322769 988958011 709851526 752613995 694139916 919062888 259613586 429307189 618402268 898092603 889125517 996487953 982990388 991692982 363833301 900608733 362118675 722258088 615444180 875462750 491935633 997710194 185282970 601905255 370355381 791261456 545829242 970744134 702384678 974179679 825331370 848092667 961236919 964019244 328844453 748432542 306635901 612618951 521952974 583269601 29065805 519949659 585388729 802491888 24836255 693444928 912444134 954784599 29095877 124670446 177737555 428226335 65518599 373702212 672533739 816608179 921158075 985620985 938094990 943031454 461387197 726280286 898947157 925524596 507691218 793239558 71495826 495059491 375937068 518952274 348276547 444135522 602144061 955046854 648130348 785894757 650267414 926616388 479435415 767980257 79947030 198293130 54299733 879357471 684924331 959852497 263975225 894862462 235021849 578208422 857809108 985390318 987732142 993028986 798927333 847524716 408992078 978233267 93200671 801604994 117529946 197353824 894292331 964372681 320183759 598292790 382061053 989536981 315435464 683099084 694218077 988460966 698375004 808399693 61936839 923106196 430667328 430807083 583740617 696015986 914048114 953448766 532660661 895512703 328351037 759000702 13027732 481268256 940446099 971034553 664425909 719016748 633439882 896488221 738079380 986484427 162173651 387247259 860597331 993255109 256675429 933279273 315850294 832948363 367503130 928907423 408163562 532716587 466050393 796076372 777472760 820532778 434736787 467554473 809123438 969978599 381038744 665925582 36958299 938034464 193226731 302286039 926894232 958896909 659723497 928605160 46473528 70845364 650380676 994550402 106112838 173807044 620057347 801197702 369291183 855980214 168005554 866674576 14125826 859344088 595936713 922963072 733751319 857919208 498897127 789440223 526912895 846469091 928259562 993752265 142187144 949940459 595708915 640649247 521461797 872288711 352848550 748280618 279673482 369686585 897060505 907671640 406788591 673924058 987019922 997101413 468410213 908280408 809501447 821717666 358569035 698423376 578189805 797008435 191617705 989221100 380649034 586170862 190188289 587875359 732651217 786220225 936607333 951991379 506403272 746535047 159349091 469073738 842267290 853894126 13477409 888847097 4275820 645681737 202341191 722851226 510466863 596927811 889486495 909660952 200608627 390703749 984877818 986015482 285193229 511256245 750740450 892351257 251909173 641183279 929807688 968171437 145943048 235110140 111097697 142137706 622059058 760759405 189408694 605845494 478990012 924595040 502663073 505602148 211171745 890130782 454574816 529933656 455648523 973550671 683014884 882304657 527545416 907800838 754880588 772194503 73241524 596497001 252841892 769267280 143009143 723270909 456055727 660957958 126616103 631997803 485179219 609385874 757569019 936270935 86153214 959732013 485973520 977608851 335206266 708497272 747174434 755230080 208105260 677329333 212529999 508052683 431162795 717782111 939292300 979823114 970773505 997963729 158959521 980926456 909814380 955974522 729318133 812318383 104392764 922082433 861111368 890100812 438562302 454224795 803418157 901256307 921853213 987829123 572509069 997458732 405663359 615594183 816058476 970736250 640149092 919098150 942431925 989754276 908019302 961650196 537217908 763334469 401394032 819333341 467053810 612892635 805859785 859282557 313430341 816750628 769446088 857880845 764677635 796298083 25770552 161961581 730585099 827619935 788449516 954714608 12449170 790949826 820113787 933402997 275957673 516599159 958238928 990353524 900855096 962643042 7514274 257182766 963057317 993492214 594482091 674609893 485084974 780200328 6074526 546736368 689974195 751827351 481277137 642380675 830990185 930586024 169781130 664406073 544774121 817568731 50196292 960808396 42085320 519098629 466711819 794949343 873254997 990520148 896126040 938868548 694611986 915743502 804680561 928578171 191081760 397804990 934171140 986450736 366805073 884035135 493439541 558050155 453202209 460510803 819520297 898418701 822197238 843007392 733567690 929220069 772318740 803433346 46475625 910532867 440171954 937622472 283911186 938085048 473015539 715039561 602031274 679960718 451873677 588712219 812906434 813580155 922459172 943731874 299847648 786241530 988303219 997703892 95268762 307647436 730925085 948349749 750450370 820623478 821787075 919757597 433384111 512648555 90988697 553014074 448319912 884664849 759459499 798022711 70794980 394614085 531938274 670797463 499431961 529299207 652393145 804074622 794167141 854466146 972495971 984846595 148356149 562195425 879145115 881281268 198217426 454596987 249846733 461336484 912571852 936541263 913553836 958664273 851034537 974726925 125595079 605425490 580425208 954911102 72816044 883977006 984647350 990495986 258147250 869787560 521587363 814401987 22758493 590988318 193580258 732015575 128749285 307688532 258743131 713641362 299420235 691628352 973722486 983414506 546823415 637477380 392265523 637794702 96315752 891002106 467888229 971947228 622643756 758638331 931908451 957110495 296757048 566094560 211578811 756522085 398954598 575685770 517006146 912421899 256058445 361890574 556632159 570007738 866902272 881777987 510830048 713115125 699721883 898847141 379693736 925903157 473843071 562267784 292809311 828398184 478589532 747933329 17865980 69663167 906209083 936658011 950465019 953441568 776755690 915537180 472366191 606458185 439019363 470203335 354158058 783562771 232343564 674455166 191329177 827413168 235098311 652715354 440600674 869572348 190808766 965013965 938345056 994125719 599490680 674794674 752042075 860471933 411848149 937175273 173849027 845243014 333872468 606580625 863191523 991112087 261472085 543877546 471105400 817793810 414608180 737275894 902209483 931802105 42198639 912455702 954805430 988819505 790331009 885543424 39700399 93756771 960124215 963026900 825700809 981691455 967673553 997063025 688572591 926904692 604785199 924186523 974904758 975162618 146665047 657768169 131646792 489303624 723100254 879837528 489619033 595290057 17241777 572268777 323993778 665370043 339536200 811469459 642218565 709226420 810343521 942111284 418515310 946576650 457747905 877157214 291758921 885106852 833242120 951697859 774435360 813671169 152304198 565132365 182892326 308058265 427539885 900016906 758734853 817268513 814368696 973177773 204400771 947630241 900237309 998238970 30514415 547685341 730503761 865588770 228777151 976533775 947146635 963263779 272996054 812071370 509733846 673431749 539553231 838192908 857925932 977862301 523942527 806865144 451298334 456715162 237810472 361767871 165366728 229300848 717548784 750414734 183503690 217009837 168500528 639778710 794553949 862215424 519725325 766826456 874182804 983766261 229390792 651792837 607695530 939347162 425735582 999208789 741111029 861260738 326568450 704846687 737881324 795478866 149115046 522701481 300840309 523941733 509193367 804898148 984358955 998072955 442902006 850917669 368869146 765293691 950831022 989832888 458742314 853546942 399620176 695677000 819869121 925034803 872876879 873168948 199324652 887738897 682581830 819201725 318847148 708667171 780408650 959239791 728182957 786252604 517751778 660172411 30066153 489997903 422341437 572474197 926246775 997812114 745392900 766062891 778143765 918585359 607755119 818632479 241067892 559529219 303595735 619928065 310722933 752863222 312522381 334732880 378500463 407668227 581779487 727337873 550270227 642062884 776426667 915102610 276875472 777006851 741877411 838150190 458788305 674260441 336877565 633107394 612069803 981726246 53896422 769419602 941979106 963489588 793400974 938387628 927674392 938358657 512785009 593588369 873789799 999118845 707368932 974121965 196333410 646336222 292912528 579323787 652732360 743692208 802375025 815789232 48103456 781160768 574084917 942642804 231845293 405837817 15789411 324489911 621671554 953205212 496616078 871086763 638681470 707057996 119818064 587443393 348711703 709802113 110755804 192957424 973994262 980787390 532926376 650596711 834203611 911463483 840329926 916162512 233324417 781781902 204148996 481219231 440687384 542240700 663993348 773526899 424793312 773284868 241359838 328471633 818540717 913627946 882433425 959359505 579396286 869232810 328332895 951022227 502435483 538490384 46582863 865580045 454674682 522771665 749112196 873186002 726585795 744832612 832439066 868993186 299679681 775849495 380957006 458198561 290277459 493698222 773460355 811116145 164526001 924980932 121087146 549025974 763964552 938481009 162554759 232536197 974396721 979430824 792270664 976287987 550077261 827682400 331640624 734191128 811602606 907185640 916800569 955057344 494080851 548481517 365122306 430593650 35282181 454313661 577967035 619105664 633735301 985978186 764913927 792048761 663544456 783017396 730131955 946912360 844529111 965590271 741907303 798522401 953044116 955897699 613574011 648221813 84929133 268366891 377468299 981513922 378028245 788865008 147457121 375840118 843509681 989534938 925517283 981508836 101004789 820367669 136436993 811094908 835276982 886618662 683110634 954181991 208503594 603338150 302384518 540591293 178335679 492894175 681171335 863225130 565360447 819433249 783008202 983621267 602023296 966555181 81227384 219817775 774103198 827667600 74630544 811361976 776856548 840498692 96734204 613376973 514715264 779877559 151759269 642741633 208315039 602117411 70454770 529588015 100019964 245287468 165392918 177552093 602529805 943172370 895768092 945753495 765730068 858064952 959649347 985024964 528739477 598750161 933688125 986541278 535297221 993381734 851024745 961608860 994362322 995172678 160694505 366437996 504889265 742588207 515530991 612191044 772846179 945604615 942853531 995166155 198081055 931627774 134339358 799072615 236795245 326480188 16563744 385764728 514880058 927849725 967527005 986904350 546364846 926344369 17654453 421619553 975640903 995504274 425714236 764049887 354233707 640524080 133853545 839759304 56804314 366805945 634565563 987820583 250270198 704904811 399970793 421823488 818962609 975468509 531297177 583099042 370925603 870786456 385192567 860928373 181575113 672049265 753001062 943801248 464871833 908955335 184225357 265142714 815550346 879845477 376942128 554698534 812049295 877524212 84559956 307060551 180101450 807581953 5398806 866867062 552024545 766871271 610517988 840499114 225795260 517212916 11932375 466929450 168655874 560395352 964558497 975889302 300148869 601568666 648015328 860647644 620954422 911347701 269373965 942969041 197263222 251247643 325949067 853377422 29181521 553072216 162144101 309362431 204542455 916546240 706119390 900666517 206497543 446920750 339347039 732646308 650972360 777135308 674490690 894720555 655922781 987237818 234307442 492613341 40378871 87130050 554518995 804894850 119200327 557895269 885496594 924834752 416348132 899661368 309577394 932399781 975972815 992260352 338005643 762259026 396795590 731604515 715124673 873799138 259703955 821078455 199484561 391332929 810685126 819836852 805899370 873518166 480230592 800777752 799649393 847309300 290662349 352789781 853073525 865331537 344635901 825989941 568713592 992560597 687923234 914137916 358157239 990430540 324500081 598866707 838050882 910965167 606472396 984128954 361916444 472524329 921782911 994819055 124475347 569232218 737194951 983284511 98389104 608953380 309931427 312520737 622643064 939928265 701269341 824146599 514280652 777247283 112574604 279553558 110029621 360144224 463645968 738381379 652461189 939129590 65357276 103332106 112508583 363255417 970045013 976303178 284033435 295403051 348753076 548331504 972961963 981539994 850080199 893719267 908800164 994319329 760198837 881100665 361272419 568044751 946277619 953307714 733092363 763874565 853468461 887850473 741651634 748202776 375394135 956083823 713258179 747545363 470299078 564236727 130382250 331263022 92369940 666065760 926034963 984000256 658712921 916671322 776637762 898905715 58957052 785756264 60715963 371937339 394585998 416238511 35118892 682395522 206197657 899443886 691182315 850284767 842449252 901942931 369881926 438287121 274600563 342128267 212261731 609862647 455490289 876722546 336583864 860921440 218926780 858088876 842474357 856522590 689085420 803315581 470873431 941982983 486949142 491740397 936674372 958534877 978440579 985098617 375870877 622810730 587172046 638948154 514046629 665443906 63693920 169202864 539102665 952875270 745555707 841510353 909538489 988179326 801692072 845751470 725358712 910239362 976321791 998544365 750207911 949125217 369727995 801996221 152879801 766800861 380816133 519291098 337610396 985631471 737653497 963973335 915248984 940871015 307870083 588536773 627295898 631625061 760502062 957956332 285309737 812564204 182849299 856851311 363617438 960529880 808565566 988636029 563569974 808628170 600180817 774414283 947495117 972230370 358605285 452640081 555759884 700792867 814033310 837411810 663580637 695225731 474319330 942249656 853421867 950633693 134642454 958731799 700167244 736837571 995735813 997422900 444531916 860809855 195098163 831891968 496837397 816938858 298341425 561975579 801139011 887445453 32124172 190929307 408812743 594614228 493453217 631178215 22094982 544438200 601500876 624819371 687769861 906898334 216836958 312112379 697001108 720251429 457918028 884201942 646658182 703356266 806087685 823472370 506266622 616406559 267130588 862045648 402853220 537527206 504428520 561182996 808467975 970711892 738193300 891548443 71634132 271056421 428387018 748408190 948804605 993848493 599360162 951175842 692462510 959229010 611502622 646769994 252765770 462476828 415987956 966767754 109230869 854965719 572941648 592240483 140862889 418945037 551231567 970489380 561044040 865550533 550641739 609047825 599788046 832581645 343539909 996211710 731894480 931995066 422175959 853294003 864210574 952218277 492972728 590398218 506247287 877268594 338570304 560696915 252096 68304379 411713210 601293943 874041314 962908649 47941408 593446034 87001981 662017307 957387317 975664019 395776732 758359716 690286755 928280659 658764308 755592580 44556920 234826523 378043188 824358472 56321860 454107511 892112543 932472720 329754257 468339187 78550221 422545404 82138794 466053985 738400741 989095446 157017644 948409473 955213611 968023660 297098637 796017139 425688825 623071989 771677781 819682145 490706922 608754995 277388040 367748573 699247624 725896718 326465874 661805371 669664029 940138311 133550177 441436431 798294555 866560550 52220490 518935929 252604656 493496337 373195875 783282878 918259779 987947988 462244246 530574142 251580754 703428553 358282276 418253641 827976664 910490801 93791008 392917725 474146864 652632762 378023078 721922582 87904312 485439595 437464496 758879504 969584336 990984017 770939806 846220246 507529528 729837609 584730390 894297295 343451435 471573660 428312163 804678579 387291761 966580040 406485545 578507577 506947315 987351032 943470998 984351990 574103286 824673588 567594283 596159575 979577822 989371974 652445422 943035641 546439020 898504117 296837710 914238341 311756283 338075555 440176135 773252293 909845221 994305021 634172122 745131102 265505341 369061492 796733683 871599483 304166693 593119685 274581894 514823358 525590632 717558788 315433443 950549266 771963524 884693437 774019206 782076778 248141636 264483736 689262727 842352225 440378526 884658829 250472535 937561986 524622028 749846463 354278165 660420298 865457506 996531442 988183525 996835412 353581267 772654670 167166378 236074820 411403294 531503077 357979347 471879677 82376724 502109993 696250594 795489085 84402900 410609643 635006194 682300352 129726125 920497575 839280098 921814212 876648298 970126279 289265043 693863498 679872854 920563519 820839456 920035134 487961857 988776320 563281502 864053828 369640575 815353113 324807377 687050841 468945766 856557599 223784064 739963661 862847619 885790629 557013149 559353282 525351706 554948316 266728427 750463034 20798480 674118395 158136216 303480263 911139517 966190944 707763863 979562793 867973451 975223676 926846134 928604198 545448626 995219297 923025590 944233213 323660876 938150503 263261722 614643920 902760937 909541121 37852481 394573297 38647687 455857139 980262367 992833653 721848170 799302476 715848021 916127706 216173721 727888814 900623964 992332824 437451571 464513924 587591853 720177813 179758868 637583052 387175033 771349182 713061878 854516197 546643342 798379711 406850254 873506301 165468045 645620116 469194787 736229923 237729365 319240641 1141650 134804517 651679310 748603924 210976542 626666354 952607810 983039387 603230875 617280227 426394714 440252760 111252939 651771780 495391641 714481847 200389437 826872377 37679368 316187400 826880731 831618152 667715847 975587745 237051148 887165512 80976639 218156663 386123376 856111749 512859437 978286616 885526287 976043646 547042958 615544826 11139672 211800084 454056915 587396517 707206276 735363416 338525117 476200496 903154044 920492303 375611754 599034756 177138848 715927396 275782140 379058122 691383243 890015773 352770336 503631652 923382686 933998645 640936182 680238994 232222153 747989536 970910257 972999137 629674338 791402799 21088651 28452080 132431495 230494832 683268413 804777826 204382178 593331045 339202108 701858546 527521394 801074603 94470551 998892047 65145029 343390529 142209218 818767795 854319196 914391462 535659812 594554349 114655054 952969101 429471753 922893049 355567184 384313397 287559289 377472676 764437763 995123517 556090445 894443910 895446917 940250116 848265194 989571675 426288297 700075341 151188788 890064619 833484688 882301027 196690573 696992695 692989986 706503002 74278901 567406553 533040372 856353083 13320748 221992833 1506416 809752210 502498286 902248899 475775478 597564624 442084371 906648991 92991709 629361808 411737342 904946679 69614700 755614214 252545505 936456138 597517150 854456724 377181740 412217021 373976909 474147364 271319610 327974166 598316516 643187215 847954943 958539802 33232605 283634597 961963270 973345826 585669720 867089926 148534305 343725513 188800437 465395770 104637655 658922154 685470167 993970434 268133976 493633924 500000280 973255252 559342191 847831175 566218230 722827214 350456649 595173989 412354110 926986791 545528351 627416962 375360236 943859795 399290584 749241113 262367722 856224957 529735996 828831333 158498220 683571667 247008393 949517067 965761570 980619842 259873818 886252198 163692052 807333638 919077197 992557051 364812810 397197907 651653531 773690575 886520251 984800160 916935035 933610019 790950674 843520619 109196171 865084703 293962562 714412280 620092919 641935968 919729035 955037581 769305522 882122170 838425194 929001447 146124996 902269910 611936383 845415622 809478803 901833305 444373212 819860897 881605224 952570959 477966071 781307936 501640465 956451182 600761249 714453309 541310865 640766624 363908857 495372445 971426532 982612782 83550696 959734580 808152294 809257153 635611077 664933080 985548759 998972778 19106516 728522402 418916977 819186261 610286653 922081158 584805400 717128615 610831002 894965005 197284507 874489362 271823000 850127313 490692952 893385757 785660841 832553543 308861743 530276876 796177293 882052621 451449228 690227456 334417575 877375883 600812676 920689257 732385041 823810247 73727894 938285886 634450483 693034154 117756106 326068595 981670659 996482452 321687256 452195004 662893029 873339063 176897213 270194225 504775644 561803843 149802406 911219104 674514320 992310657 32908812 94867722 858229697 858928076 463986715 784626805 513789170 557587282 874430748 876965023 398082701 550803196 182584859 292880963 382867862 850308062 257694623 703930162 188155572 323548133 808080484 856620022 698267952 895431157 741309259 748928129 534586163 570448580 517431087 929976886 897791636 940285088 194141293 215725140 238942036 851171699 969965534 985296797 607940282 770283401 547122573 845027848 625067382 918815672 862030260 863877566 310098203 381596532 989127501 990136408 519768071 790008003 928119236 986169725 750310621 922297948 530224299 712484735 138280602 731377503 995783045 997537554 428936773 576962487 331759943 408672966 968174331 984825851 260575313 378941786 512275913 579570371 564754543 883953823 477376088 973453174 538787289 674192075 527513074 886909131 523919618 706924010 9108985 411971329 8694273 985795047 472439380 508000249 897024507 967627106 92473405 945995653 560857453 812867249 979106449 980156193 646070433 912755484 825355049 920764665 892040595 937719464 48607526 723987394 76308269 263066228 154680966 980783008 592399390 615375945 936041229 942890944 449281705 719139526 662160111 663152861 956992664 987371243 192493388 193675804 597413480 807995816 966503079 969292054 339316635 948767488 21298239 841824618 985347473 999150165 470551853 717707716 816453635 990399486 471116195 844948744 581279093 765006719 898843276 970263164 336004539 661882384 839072229 950144836 233333126 846256505 541536890 625841866 195852452 845753898 603804283 872840968 568364981 899028572 179233838 397015222 475025205 981417033 629902372 702945836 875499072 959299730 849062737 998744956 754195439 800216558 848791327 858508984 394489852 621151876 464755604 803274098 998268429 999236056 41992202 187253496 659361025 696953408 763881102 917037892 583269196 893027834 474958577 944905257 124020541 360444700 783162136 839634636 654084958 962121545 65832946 458942368 943468629 963629029 981325948 994249686 762675787 872812061 718509546 931183942 804579165 850008862 138278489 242145347 563422816 859759195 509351207 755303457 529154617 925861280 192359139 547150478 393081239 925247281 875450311 893351342 672698085 682861401 305788614 689530948 273873155 720235672 445715789 504606615 87905956 325344096 767890350 908028194 980336050 996590946 127797424 397446213 625667963 797909105 25448687 432686796 876346592 953326060 24146674 549978158 510734108 663761574 486801219 728638452 521977121 626018074 856465060 972140814 888570458 922241294 958336510 993056576 896203178 947933584 194506401 853105113 467645568 628713117 856506208 926377745 581892643 925430930 420370157 651328368 522546823 914321986 382372555 989388897 344078968 555114056 426657038 645433544 121563529 623941407 570570027 676704866 234435168 315695780 254984075 446599341 132307226 938834331 640867149 995888199 818522709 891803045 798815337 937901080 855396456 945533747 43134012 551699483 610777068 651094836 682408826 992766840 806485048 982372730 215717200 705395725 361610635 376551636 569598840 971404787 691634425 954828752 852530873 908137363 808090757 940810457 322818612 961097886 349867012 842068220 766056183 856988979 758271620 839980400 81229510 467222524 197580951 925215701 574027432 800654015 733866350 805935267 341370937 386214700 963237377 998417279 324494141 746034057 954096667 985914959 458654647 827066583 328985961 861682772 337511641 659778066 51310383 819163685 772805067 822026303 456310953 946122732 937597709 963111215 543173793 777399410 677449686 842986596 414371762 469235114 75405290 360284650 580423919 684719624 271467200 672726464 567649983 599226303 520929013 915508496 21656122 511356947 167883474 788785429 679366420 694583691 601143289 733730364 660607411 895015923 341828104 448317311 115142082 914256611 360652284 457780717 552490049 592193017 253866464 806617515 535484726 834434159 806138592 872351608 855372778 858371079 200051991 293756431 707829289 926445848 429876174 658784935 29295611 579375260 325696686 662340374 104504171 444260955 784595457 836377282 556085496 942760423 548723990 550376550 955682434 994853277 748256976 814387092 471252610 840950598 300988287 920769110 504755495 651379028 235618532 438612498 925809139 976876582 369154983 396723419 433593019 733018703 253622321 877539788 748538010 831638932 391356110 439224777 109074992 393078459 184962406 300954675 936382665 996106514 552495347 605147200 944978633 962798723 185107095 792147451 785979092 801604140 18192977 193586981 101978495 697663678 13901294 883298285 412051156 484148686 309949797 354854426 250618939 899880460 814324889 857998555 893193577 943172588 879046601 974247900 69768566 457686610 38334717 75643024 705154072 760428701 764387977 867337888 277273833 706620860 7092530 164519015 804627851 921125446 172583111 296824950 601106327 747950635 658232752 782110360 768233500 860003732 670481989 743151509 582201066 978238582 356510798 603537540 784027279 971994032 572612649 699278594 972250871 993900599 983845357 988032571 67087728 951092535 294249481 912285711 141540285 984793789 364467561 997181745 927021229 953790862 92863181 230488767 498211998 634909422 556928092 599726555 886243477 936754370 34942645 731299301 740191020 944208823 557576131 768199477 107255234 803603446 821078273 843201146 973876387 990030142 407545368 641170114 131861953 486017660 475887669 624881840 664359299 750611016 688074656 829371921 16145373 184847931 989113638 999035895 235189142 709091877 545843314 743083558 575224975 687494485 881751740 959403126 10178542 300029408 155059048 304992128 11398737 671145116 629797964 651076998 309730473 643771752 55265826 905688277 571472031 889990300 817177086 849028463 876033875 891357920 615051938 622596683 659099572 911019571 863281755 887735013 107371822 537047159 596078043 788922576 421890778 890029005 423314109 913330523 546115039 655578793 404708197 667444915 204972338 653897201 696761639 721006104 599958831 956896724 114605812 339268537 907198247 928904109 893217594 966932508 222691736 754045248 520191038 663973503 279156539 486327299 540258486 850142358 792201646 954966126 78551707 791836587 938093428 990785105 1877405 496305038 434266737 959209760 43036536 797656961 252795361 653199552 416822541 514697569 360310898 583805498 868793829 913501861 415159541 806715358 411420115 829579939 770281094 890813484 427835915 619938466 178000686 995910204 564594621 903472588 458707491 824952584 439925012 941945335 703635170 827053030 448934315 470198116 67308266 214455722 316657205 781963261 132299118 172257530 4603479 732148464 702379183 775529263 169695793 431575867 978925908 987684172 723632537 807273866 624212384 950063821 278443967 445145418 936840924 950785217 129014229 705523278 620016617 942585161 487391837 666412907 284248836 455054182 719873986 991124612 320414940 367734624 921513813 924419141 808257680 859877098 427818837 746642808 307856755 945035037 721232623 892770921 702406554 914420915 945176335 949581560 961080116 979782371 100825010 144033434 70853782 473780947 90023239 832226218 363477449 392637224 843854569 954769329 177084654 470170593 22019266 374187243 843485513 848085625 916396181 938706220 851617237 881840861 340091434 949485332 31703250 761648031 738610658 877786552 95901572 574263072 712427693 905995740 136952608 929780956 424112493 509441002 879459482 890964861 945312536 965462378 609176632 816837815 937137656 986740919 858038998 911881760 83744125 782378453 994513897 995227393 168232817 434550208 278149155 433341594 544587690 716791449 50783823 447072689 316441729 685848915 849350093 985950390 372095031 598275725 334235946 925955435 534120543 692180878 340771572 390004539 912739426 960511015 789693223 926169731 852811882 993748854 530993367 720713227 17442274 318344879 363499956 895428615 224374324 876842654 641026167 747524344 245399243 839639131 418029154 656071801 250278528 931503089 378106981 620561321 184204710 979811865 363202460 498917334 799387965 933350929 29520474 171200456 677004611 839197530 660524465 870143247 602708601 821623875 893263118 985598992 635437265 643025774 1120697 896645858 601223954 606313841 106647878 249402049 716575738 725210008 748610002 847482185 655482258 822265639 609095139 611969358 247600037 284148866 747058382 797601527 566117417 991945089 328882305 658096734 725340923 756781634 424886609 742983349 509780661 815799519 224777343 294086348 994697541 999247990 952224733 965997365 65843999 715180388 629338611 696178321 601540164 726689046 594597948 788701573 357691699 898483660 202054316 872123235 988002628 996549581 494730894 994136815 140946347 181547754 194353046 391665268 649689980 698423262 657253404 944980890 993408981 996552298 81962882 668468156 354705910 888877759 594894599 965286901 941670197 997576953 878312562 977394979 786085028 936053342 405235058 741920346 875258803 903330232 418909003 808693106 217748271 721965819 670687762 884452917 927444360 998802324 82246369 713234709 618367608 795910984 932489891 950690313 833723791 915398762 65478711 516497707 111473193 968497409 894996705 939322754 216756963 407869096 806724342 962142171 695738106 963500076 362526398 980227696 754038941 950142659 422351627 742863239 378428837 563759720 582554993 792816431 981535691 989022713 237294608 927936656 764643404 881237905 341220512 595848386 825267511 891908585 569818175 884309150 962669290 998017817 545270883 703667333 578986016 853132463 637111110 899104138 555370635 786079957 702147142 718411738 140388436 958953891 269997067 448848172 763416794 968349914 631136271 800618483 958724283 960646827 735187533 902515221 388219863 435316361 773045082 870512985 907774064 981646021 418343054 859137313 47660117 759150095 236385791 569587421 145183509 644260622 6599719 499492816 858676220 881576151 127256183 417472804 737644651 837847288 391920787 934879890 546308108 746328363 628352729 707121222 755751293 823094233 524674147 569771180 669052131 942587292 743690331 959532785 536044477 771706199 528734207 592627015 541623862 843095523 656377129 704762062 665288989 776023657 29421173 770018841 977764748 999077724 526539492 534764533 661804417 854542809 142235549 678184348 242405526 606745495 484950268 712762341 325392925 802940180 289841127 469920054 247332456 707601266 345201137 928947812 994987065 998651424 616485162 641735330 475193493 952564473 939571822 969749962 544892075 760127440 223672790 555400791 813174826 879623253 984190419 994129204 346275500 380212230 83768849 306043727 608574654 930146544 320882923 607168236 83873596 424857731 604340526 761557592 253419730 651684661 566041386 663252974 963275065 986478021 682048660 873419893 73682863 698312858 64713780 399774000 826295337 861967324 165559303 318291186 346874196 857024979 594233104 824439100 982845737 997092022 909310004 929004493 700853038 715599845 450661108 967139848 785117572 984150783 997504247 999030846 134465315 438002555 204074424 986264885 226848547 847108982 941594808 989943314 130308171 626477384 910297965 967547965 368889056 464693525 397144539 623708054 765662605 917499158 291803315 388937335 36571014 77697856 278008571 569500789 678104989 752945037 991031549 998571742 484091906 908068554 763823396 944847087 577063962 676510277 59426742 769313706 353192523 574328462 147810958 923461067 337941125 383022098 878579584 908193424 414942304 418960680 614211510 664906103 838504864 952600754 362866257 569691085 172335807 383296442 135161197 267519294 98247144 105881598 429357714 451527218 783365478 793572961 860209845 941178944 26138197 810330609 809418677 870712756 609451768 949647602 689042271 762393393 81246687 455510320 848514334 917289515 859617893 963222775 193282923 724095502 299256117 856237476 775022014 947763633 813364672 825486382 801723611 821029972 291465531 558554673 557885746 951391159 371719905 636284046 74566192 433362503 72484226 564373705 249562104 744126429 413344818 736280000 865103131 983005672 522072499 848596246 143426906 693137958 897088982 909830495 254196348 590560491 462758988 950887607 358635246 726930115 654817436 963476392 303020012 966923119 490400439 900447748 767250496 853164269 63798178 815138006 114149971 212518239 774269173 907888313 102246587 938908021 39730905 273237935 405301431 981163811 956410272 964308725 72027714 231304101 924928972 973508675 430729541 765269137 88906681 213329798 593904212 664897409 644581361 809319661 4318355 119381618 1713464 246565235 163572858 510250804 52991829 835720090 466643427 642184427 80003337 328574748 479718367 668195549 518490962 621416686 781506832 986008868 176421299 352195163 726940593 923089900 627234035 857500615 500561633 678713516 40343917 62053437 735698897 854503817 830150419 920824297 149803000 609848215 116951604 295775480 693021953 718849011 659435748 969278889 514391594 551771367 841206710 844025123 859083750 912537952 622113435 715655691 169422136 545869136 404594199 731640733 724104769 795079544 371163873 522657493 423227751 477497970 719881040 777538586 481283874 759358761 283908082 479946738 243428149 787547974 982952392 997548878 674919770 755193800 862837617 886856176 504392013 625840443 34150970 666678469 28021350 743538393 407823540 701337924 615178312 773369530 166182009 297665500 718100696 756626209 632755012 691776733 581346804 845211550 899701127 962447168 951352917 961585520 556418481 720773724 99745991 812897157 389389693 976557737 999111485 999190945 348013108 579362272 353459849 463800432 826234580 993356489 293245532 957269300 713984935 797057057 805677950 954065500 975954166 987718487 358178395 447934368 877483055 885503619 879962037 907853701 617018440 712458526 131122284 574426384 236437996 507229333 231621211 594958249 38421491 532873173 877259031 907244097 168353910 266211242 306769398 507020385 913442565 926601569 454013082 909043879 84782153 373770278 217336465 439105798 976234152 979123235 288123684 610092454 789684120 905463682 407612510 973856244 896631317 903790546 986057000 995261436 390614703 782924141 38290421 894237950 427579345 865889040 753497309 824969961 606751630 742441987 752276633 762939976 926830310 992613734 962718004 968719862 548836811 553614141 583514055 647062616 429556176 819852333 37461925 115098582 656740404 733206657 789831564 826765605 512575031 612324265 461398695 962794431 126763486 501493654 31280372 289591390 681340712 933889996 379216132 978015522 958762426 988295675 764734864 814087672 895121579 904264058 279225526 720584969 958549008 997667824 515922338 973328975 46977179 784523194 947288058 998251919 13570665 138070777 656667254 824629074 334557735 681187424 427347156 476516351 428149305 797233683 815379261 842970822 827537456 930189270 137579452 544873784 648642340 873635314 668651277 749686575 788916424 954895069 436885936 454668593 228575938 670262007 596914693 664195008 509484442 637109030 727833000 972981924 850883247 850924512 520200057 930936931 139184752 611183015 300801072 839728544 86659318 95907851 337726040 690727537 75932701 553230108 644980258 851565509 749449280 846315417 433636912 858903854 440787416 616635223 992650886 998846919 522589689 890300705 193198568 932287537 390834214 404667923 371721220 956999540 447993353 597307593 602626566 621882842 787161030 943462648 410855132 835335794 162795920 214288254 752035121 950136878 555872333 654319734 470265983 694454788 240724198 873887860 63084121 446073438 170851354 218114404 76311376 367300230 996536170 997578979 22475363 691814161 597779201 673311262 400608595 434631385 283536240 679859298 291219064 382680362 165296745 691755766 325130734 442450449 35806634 547603866 882989233 995780509 563804146 724562659 272041326 277883869 966146517 990536929 493246262 853607777 93474604 993633430 899284800 922941244 434418445 907250409 870787410 903243614 646348049 723488222 276334063 813101398 107332783 940130842 605025552 911868964 83568724 131453608 442015684 956506209 624734867 770509061 928580316 985669953 108557417 656666767 732228813 767654907 41022947 738402034 54017078 72149491 993132089 996410488 115665504 978584294 729873494 969481345 505534272 775898337 251517517 613789531 499623150 585968128 709230295 734540614 744344348 797846160 3334824 355631168 614664470 678036806 34811859 501736775 822539280 942224183 227297186 920753223 357371865 930670784 973491561 986718187 137061442 140023491 94418129 858937827 735179187 787943127 926841871 929467674 330560198 765850963 723072014 727997019 661589475 725054459 244738195 455524832 507313264 543579732 485063071 715852392 253991957 847101292 114231758 596888030 15643850 313791071 115667058 529948138 910962040 990178330 246511377 832182045 468000431 608363704 476231166 842846692 142635213 764554929 691771491 916637189 964149153 992000272 771973522 774539143 504995647 585707013 968896013 988237998 258678794 554739052 493878172 675512263 707771905 845392695 741889984 919325050 883954759 896538622 579426972 768987731 279709541 840000897 113242169 354850260 587948131 634573058 589437431 624327528 284381454 638330823 571343394 594395325 495979486 855730012 93576748 420850132 313645374 659804176 314445146 335046081 610634090 866132128 611406449 737096155 248771627 793542192 404066594 868927178 519370342 997865600 411142092 930899210 851522398 979142332 350508525 786724209 110503812 725046304 149039078 423761925 965947201 997780450 676824625 892703238 539659041 745017681 117284222 745197018 521660553 623561503 525987766 847808928 923515318 949720061 215623976 312267211 511363391 627345354 11705492 496420519 447319554 609133035 964837951 968713065 178542618 447063860 287054414 639078755 705973944 842899130 917678336 935739478 233984600 710898494 965235888 971619692 234483691 295696554 51466319 162493718 753643293 983306573 250479610 696046742 244425080 569959305 26928526 390720227 76245037 945566248 486125150 990015841 199268816 672961841 410769677 834621794 59320027 72003408 575679913 631432912 344023786 360954075 480592544 632262603 695257294 915175538 796965298 893796844 702463994 756251328 6368473 947020999 819706860 907253031 316047061 515220048 125327032 237052903 24927765 183246686 618107865 924347010 908620143 924294707 346545402 605221025 656818609 825483535 409181670 859386492 523593820 779048303 343207566 501806134 975668898 979829478 693567458 970573543 459088354 886306743 818699812 961810283 564671806 778758458 674787869 976759332 159206611 225755096 752746413 828895148 427090278 879893653 894805755 990807540 900846211 961066437 631304799 677724808 934090916 987924948 955689919 978998361 401924328 755436823 935215922 952588383 689166072 910319893 663832766 918171708 555096953 768671735 809642836 948357362 217860915 898540717 759360743 762164885 998007396 998416669 829180846 861571889 365487934 969718221 321742796 335909213 307552255 731925285 364145401 767492763 495996667 805167398 219873905 274122066 219944945 868685866 781005921 947537274 698104551 745933424 894524214 931512355 307929785 554963423 866353858 916347603 698846178 926497261 168325035 734284075 383868617 805606635 430969010 581747374 170501716 963814645 563662673 747739262 434038355 623367334 713123916 732496348 301954146 790732658 871090905 992850706 666357099 818820427 340325262 453269711 769475853 983396596 350593365 663386483 580594872 790975231 851061931 971505526 493427750 745547656 353694976 649723831 553397191 802754881 348158319 524635006 764336661 788773538 672135088 908471861 828471369 843673491 364061071 628226744 923608187 938902308 286495278 754458346 774035725 774562924 231958488 330394431 709481321 985491647 816430025 974466101 409126137 685090534 4525342 860962126 935969744 985040383 331902478 555526244 211233082 289395033 657839078 987240225 126031120 190053513 905030924 985397036 805129168 941399061 395962781 663052281 97616997 248081538 944527108 987891451 571255992 712138415 80662643 369181421 971973709 999203786 232258742 550239212 281824669 334963574 416481090 850475061 85742786 870829029 815513066 923541369 853737551 868594585 649662448 971766192 223251521 935606946 275489699 412993469 193312382 918405425 940514370 996679872 204164483 957240617 352387851 697062598 850347229 933471145 475798836 480962019 310219705 993775790 563385378 667876118 22981409 678289557 83885593 131601354 153059934 767063102 269007595 546433280 840884399 974301907 689638299 780079891 699153631 926707329 482047523 701133547 636761031 806361172 26729634 111021776 135988109 759415150 183795799 777048637 328156938 796544008 852917255 960228404 293479813 514257248 902678745 985797880 39750119 330986901 815085778 829492935 298887579 531468283 525185218 717109182 573852977 736222759 111782011 786566095 725384020 805664249 174402762 429273736 670069545 837604618 429424627 498846071 579140138 908045312 101538426 287025583 608528682 773890083 974150812 994202043 569506574 850950666 853260943 915674603 300558109 787959779 68807107 718671133 504040249 511508891 387873588 689750513 768486457 943817432 457973103 521237475 862704360 995556394 607441606 652946630 22626394 270068293 585177661 843480897 596348915 998454509 842503120 915468516 820204606 992455017 648641976 924543387 162629474 166299863 672319937 732965028 743659617 881333751 880022034 935456709 147935646 310302390 49185520 49683259 566659498 904284528 793121790 813814507 290623394 601927149 724390618 881960493 520179575 569300375 691688521 998540790 818232645 883386600 706170442 737986159 552301198 808435594 757363977 940038400 254661130 896809839 683408830 684732682 517222968 759963947 521152065 534857915 435016337 585435691 49602534 289010416 620739867 940442000 636870291 764320292 866734826 970808621 54586191 883884629 66521485 663772758 926801746 992905457 223474952 639142009 423221326 510088542 950087979 981701123 645326828 824486110 503214776 639501830 34271315 354046479 602334844 943483776 567778477 621823975 685483642 943661326 194407058 210468805 908776288 951036088 447876978 754884947 737880694 824909671 898567066 920527266 331008456 808146258 925812177 936960026 729500729 931829541 542054476 559715259 101445781 220875842 863918999 868208848 134692051 552092503 10454031 970597133 438326836 477678905 10921965 31460231 229615497 688863885 593207768 856605125 145931495 772621537 853237802 927781444 697600396 879847934 294274232 568687209 357880033 818128463 806421503 877342101 173312971 584717931 633170929 982415354 245865744 768744670 990206629 995897984 845884599 910527218 612983045 740387627 488314652 852178017 135717404 279126109 556093131 803517833 956199783 996688984 918877583 962541513 105064875 456665442 888466650 961116744 990070224 995997689 111553086 869243180 911149441 943126195 188683169 211889452 30828696 298295949 459558752 819080435 452801527 924479310 659246541 714396281 451392300 452307831 915327183 972623437 740719891 747842048 596950766 802768857 838626136 857054586 412651253 925184295 528516601 964612471 539353806 560599239 349097028 650769557 502883331 667741929 400603915 638529973 613974607 733732395 289699209 908514055 142928206 198437135 336483849 976571503 682588655 959410917 217163734 951369894 580929989 725121571 244951903 628582210 492543496 812828496 791470402 975463005 540958655 890851207 449563981 501830436 287276030 671907398 541145388 895910423 709949518 779043352 924457093 991063213 401375801 444046528 371430424 736929550 71820832 991034317 550819332 649983534 26730772 690518638 682912232 730331546 549758986 809656098 981307157 993084722 41230728 594768642 563612274 604947217 438269557 461462968 62320464 937305365 25467644 644534908 139008487 934062043 56797252 883822971 76251881 944738427 936085131 984217344 553796390 686585061 44206382 679009284 262287231 942268701 219224287 696946594 929862917 989313107 953998812 966711932 276985588 375822836 222816084 830102951 252830519 368382238 462444447 793336671 363179697 647094148 947840446 962821604 656284214 818330417 740229081 982154520 250355899 489218017 388598770 939120009 226042022 822352990 748680961 890687142 184945070 844228565 302569040 495764750 389106167 526882520 458361724 482321429 832272978 967230340 151331748 369420504 236672729 407684103 546163545 982611118 262844195 673728335 428262487 974320260 11704477 746254297 77567842 573523617 427278121 631501194 728561256 877674950 622655595 910052490 559678087 688968295 556041616 617382893 470669268 738354025 982729128 984587012 76262091 77569591 898484928 902153994 329860208 396059445 142788621 928379768 67662496 509081398 640880178 822935430 319759453 433455386 394633010 712649767 493760341 643584039 470801118 972407477 417718112 933614022 194289724 640855376 161868524 971139343 642907672 781690928 393227782 940873370 366332875 996808614 791986475 950653577 388225875 410801835 728636466 761719976 669553524 672631016 493799612 851123432 197082723 968386197 75348543 308792927 508283710 928328509 907027373 996774258 555488474 587510125 896192914 922046721 831816465 973884127 924217919 953339526 310473469 832973484 266884942 420476023 199100078 632521836 296574364 458418814 56919016 324735535 871926530 883972081 459199695 495609095 730773463 922710214 120134340 414186295 82249112 184782609 657454543 991706176 693576142 725153360 135084193 215709416 953623161 959098274 587542028 647328576 273384055 582569191 668725471 762478285 883031395 951316296 265819193 843196717 283381413 414585210 869256815 982649027 314075776 501202433 837483587 874837013 484307940 535344776 760805366 936707063 674866804 762532737 320444876 715650568 160687599 519669148 851239327 867595671 397205359 929936097 270902420 415771059 234496668 570337748 906722385 910462200 649544534 949064079 965848780 979107025 275797401 715501415 670338512 981153695 629388365 923018955 166116334 605466791 180917929 375168693 718284519 871568688 160059075 619074502 783060862 966592748 228480498 915342162 681384283 885804098 110094635 711812130 614550761 704700617 386173307 751638589 247042034 646907682 819906855 845938558 466272267 693980945 244375386 337080453 961487092 988425699 438104106 870875304 510174873 943314098 862622445 903939739 831852634 919012044 930278321 935308893 858642564 908550776 178748633 265993084 234473619 929400213 327329943 522816415 878192574 880704737 118645965 641986167 171513564 508447322 446030587 707674277 577742061 604400332 199527037 937990830 42592858 355004631 628345188 901666963 700029737 851472210 630101451 879017750 897891428 930468172 903228482 978679212 657635048 959768529 548700412 829191793 549890798 882054216 611708642 904075639 401850427 420025758 872713860 875890554 93766123 390125665 43953427 252562735 213465787 871708748 758136160 791941888 689348127 752600082 182269696 791280247 200491415 813328542 50088664 777856752 410739363 903881019 596705034 848766391 771298260 835326621 273532696 676974883 616315531 894633396 764683123 964950268 626162483 982068021 597595456 799234720 459337078 553352657 530709829 909577968 531417021 574739322 48869714 973002182 936067388 985953675 986042188 989941931 294740160 300468395 995107359 997817349 157387135 634134697 368531678 750733606 63057748 975763938 93695486 876916113 989291875 990410915 386265966 646860741 62128711 570606164 22661415 336990406 530893824 574884041 266237716 292371055 101466507 212670586 841246305 910849857 570176270 645282903 138884867 909381988 78226107 922791205 834945407 896445190 666874699 884312981 390688632 476111088 981602571 988512319 822903485 902116673 25290560 308594189 539641203 690806429 214448651 631873370 303853499 765446663 813589908 995130685 470127189 513932692 89773122 991851840 210831077 547116663 53913689 950014425 258640160 638024087 108870090 968720689 576065626 811061766 805406486 817281227 589845009 683096828 962687822 993048311 977317481 987751452 607877513 979548133 493438875 847493981 169808025 204443515 49913320 739948803 828767140 868590769 860063883 865635339 575638816 743656415 271527872 927206549 240183912 478147540 553196522 937103874 522684127 762823076 387076629 535245679 989431549 993643808 645400384 875135204 252351012 818532534 122203162 353275129 630991059 864948510 930829053 953451043 634984072 733765886 634165545 927828085 687996512 768983206 379451081 670839843 555340170 946854977 383586834 868070587 883947934 915987014 218191684 724503761 325249394 833540285 766901369 818756256 424036817 995078148 520966320 868269288 875622770 914743086 335365341 908675606 437115484 443065314 591819404 798625689 338842465 816337425 875153644 940089282 253225245 455394695 440091004 735261958 273895437 619371126 589026686 779589954 839215895 981800502 663755804 713953701 57784044 886404452 561008734 848732822 738704234 820648839 913619917 950088306 69741089 397587002 76091324 388678713 274098348 776557846 898853296 906085353 97919797 459752499 324333236 689707538 185934635 590121099 816235898 913751223 794935773 872000540 159237942 778858635 249547486 846890583 323026265 590012339 310535482 602275523 401611512 701064049 401273140 923331039 709433399 953903301 937290803 980224113 738215072 931603483 968617717 996559921 45298627 615858822 57826171 681511883 161740356 962670030 291203525 459317597 483141627 752562398 776342075 805869778 542705127 993708539 187116508 646474615 748027457 804738466 936506026 972801572 221277904 441286673 682517600 723958719 926149013 955685291 673658089 873777931 921741385 992687552 99839944 719406757 564522228 867333110 401345299 834048014 829338807 913649342 243657261 343786583 197931425 507164868 453382915 657558746 39429536 969432691 820075144 879735685 631633603 703241043 760421326 903805535 888834162 916006313 183306804 911779623 451754402 808393109 554557969 989519616 379445966 949999844 5454612 578449290 405418420 621097513 974321086 996692641 918450543 937343323 506831702 880103664 471580389 490226744 473554811 769979487 321462385 911054378 773888239 969292062 752871710 943283290 181491675 434127858 468093089 676396608 406829803 474996859 694099319 737033247 576202927 918226458 683871845 784341601 637581133 686397878 6350497 320609650 745655235 820418712 479035262 925582265 385598499 816630195 553430733 868181018 90080353 839424690 545460318 866292714 104226125 820356974 565088675 747503306 662970589 672164234 210617529 801114440 191655583 789745756 320081004 380195818 970681446 975460401 190469883 582202698 703258496 950107042 970878835 975378236 235341508 377306690 100697886 730053833 627867829 911611383 869530685 897538865 583366191 708962484 448009749 483940203 923727189 964567962 552478740 734713255 715484069 792239775 758645591 938621727 471585977 686277217 456302048 775169941 31226886 200995379 397967326 811998838 613286608 801132163 92484935 914947276 727827563 865896245 733568955 937219827 654434804 691203122 23585135 343671043 913319323 966189328 640014623 986489558 914937590 954763422 658239032 980029591 213911581 610540260 826022669 944384863 551795077 612348172 575863780 988296774 57177322 637363369 44223884 249768687 595330391 719356159 881725474 885927449 936298146 938884663 539354873 872360111 684203438 823897912 757757935 945971203 144347279 428154477 372388595 559180562 664488503 864435437 499629161 952975643 24019739 888828330 743769181 977122033 894648297 912274465 127704184 382603800 569219605 951154082 455328683 513156295 111001567 320160048 859639963 937187435 385022737 438690345 337228202 939522304 173366156 360471511 58291187 957392405 388935675 972772555 770278705 790519906 850449609 965968897 44390066 911960970 763356603 971787736 610765729 956445968 753935862 861959263 888773063 974122265 388928251 452917752 612170811 697716468 901236523 937668652 5381940 73401379 185358073 582349187 84815651 434388674 11989234 947333632 535877605 947188936 354058814 356046877 704093915 966937918 160949752 241957109 76255354 725742025 10697789 42447279 348890196 661241163 499956516 820845787 6820994 205818643 466603947 547597879 364831336 870813681 862716411 920528015 767255355 782315548 416558467 532788471 455019193 701629649 903592938 978048164 185753575 666825768 445462385 918968670 534712310 869439885 733382087 874549580 909202196 998389196 116869093 541497774 240949225 442676068 796461178 829785006 498002619 512497138 604574312 750973667 631063680 646295918 240735427 946243421 718614742 831780823 116493493 280271623 759856893 955425616 562019660 725883934 15565871 241969956 355407617 836825534 240322953 512069984 695749397 856765716 993679147 998090881 336405300 501185090 965773520 984737997 363077047 693354082 661123375 969127768 830980821 946454056 198581292 584472992 742544139 752225766 58400498 705877584 871092815 983757933 119621556 525976604 257971239 941690288 835018618 870639562 834427013 918180344 779557170 897427564 214278955 965987474 226013544 798408143 593050120 784415916 676867939 882437956 692401579 869899468 399198492 621363212 427944414 993286369 457340229 798348330 669960690 775307887 115174942 927374300 604909148 798216715 844003114 973376406 782769984 809190391 308564762 479306269 133443657 471903659 382963142 965940728 620748582 640933695 204083746 595402359 781234344 967234849 11542476 216157664 313439666 676883094 264592545 795215657 833288145 835133253 483622658 622556874 849676722 862274613 554929039 595799569 108018968 424591326 347281587 557326203 753729202 924996656 296183140 340342307 635750505 658658862 811071850 820216883 812790419 871425884 506754356 528307030 922925123 967127074 278851790 405241592 200338266 735318174 699228201 706075116 300463915 843982853 155246351 560389362 311994044 855981815 184479047 986487157 169583887 950373648 563395716 862950195 738563586 838827663 74376745 115107668 944943653 960920735 96173818 994003738 538552232 709293739 856535328 948348319 298760291 995558172 138998778 703939299 628141638 963365145 834000324 876756958 814401444 920763103 130758630 713003836 950643773 995682938 392472746 426025115 168246181 507558693 795240854 827944131 648923694 997779740 751873126 951497642 763170601 781223550 48846537 781774789 51088680 344602669 256403048 460025405 577778344 697425602 860142902 895723297 780331276 905014844 163933152 395507942 620537478 715690613 890852931 910803804 298593944 831582368 538632353 934245610 701350928 978050628 297686257 501677810 493453530 959365054 430861512 967582993 668235345 872962258 466768703 996567847 627787794 887435944 98988313 683448411 667547634 891153471 235464352 699085489 820865231 952503447 139886487 353163300 731407811 944669547 419392614 533098848 317154796 900187861 471407377 916305595 701686901 706467928 259897887 633732596 452746933 923707603 964137619 964328301 532027599 755849275 454499934 793162168 907556006 981666112 760687758 958262248 835287112 894039920 349202696 538432513 518507747 742177719 589047950 986691209 442883904 477602406 911768083 959619700 491356534 939033381 609470925 910076691 114676820 517149953 235319464 716781929 985669238 995293065 368154652 705225112 195722957 754097259 941373426 985555339 289223381 860485987 779217302 995810473 456022061 869408604 873299131 912433371 158460901 464302124 365117644 485717945 354836946 640783069 330868152 818013534 684311723 816408688 191149253 329852742 820859340 864609315 663361159 829806470 731417518 888468049 726441105 864961793 247168105 580444568 392697644 724205501 205513710 553066719 782213046 981630391 980716882 986993789 270915688 969129414 547430798 867364685 365412736 516909718 550648800 891491852 13086849 534454186 96578439 673938596 319110072 619717643 383901029 806775630 744661569 966470997 838380583 862803050 840248643 864003861 869773602 906027749 647111115 782809842 563201981 961333546 474370533 777717272 779684542 857905879 107900912 770754988 672696942 905504422 257366686 349158860 173010817 874089216 596428488 772144663 30920497 140155311 497069680 568018421 219439827 730826176 893498738 982129330 561086398 836346734 887604874 990039652 832697802 978919285 491284402 992814608 456560660 853391364 519377941 629338651 182134750 783955897 490709161 758655143 982711131 988644060 785862895 978932058 541610701 574952037 727771524 962925795 78483012 814928997 610796856 686330853 616877069 781914093 696669671 785461699 378147425 441742276 186149913 836431987 429267185 571310929 590830854 648681402 559204061 707583904 770110532 916192098 193774911 895299125 425858234 477057660 436431071 695616259 720623176 870537132 551578528 925296403 397028627 807771429 890749166 945246668 669212457 875930436 96190450 711053291 155175648 485254081 754957767 861198233 440045649 626484219 403449470 803649476 240660581 450193503 89244518 367509930 508085534 716093392 405600905 420139602 67902451 916331380 896669632 898341723 137493386 873545722 165813038 893705227 898903935 957923790 151620541 342448410 256246669 377198911 958936492 976271129 685197430 734067678 962197251 977706637 876741935 909150335 896540218 934038835 777242913 945777180 194188979 974264819 618038135 927089486 922924182 965254179 496652275 979381531 111935017 771989290 315681454 462409161 839231128 926418341 537152215 916264971 778266834 862235057 112152 584580249 781612526 913185402 276612248 584253751 460042310 636184349 17375123 454957811 197062278 817530301 907988412 950392147 693295529 832829358 177134400 909702843 233744032 286978777 505487761 990357078 416321464 491883506 978889934 981293565 945415525 950876421 989753377 991945801 516269568 986946079 146420041 768434489 339064209 919092781 111576165 820375485 8095979 284971097 827006890 942040690 231093080 880995228 761702166 848596979 494956164 909410927 996641933 997321154 419442983 446256629 630475235 926265101 332429812 341254405 923503868 966983588 461184768 956489963 648012252 903408069 445918303 519271534 458027953 464731582 478887059 513462889 984589365 987618220 241860156 422945928 400588527 919084129 546886485 879587765 762547802 783913005 439866146 562540374 267671780 696026811 113473850 404032150 936678477 994082181 225610008 242379148 167466253 358180327 117687888 217492669 691939634 892480903 435081135 541771322 40824491 192350162 968363915 976347505 335874919 351527988 138672259 488107006 440490224 656584599 265413078 443965463 671835301 823115741 136131754 401709278 687333301 864740098 195350580 796137678 647469026 796410679 91964521 971295447 936552219 956475456 646224978 930301849 777134278 931518936 210970278 405461733 126258560 548297071 764780250 887408182 983937358 995691755 340234630 356470883 492962924 773870597 68671853 237006590 521246605 912693729 24475880 64410050 684848998 774333176 798454646 837215031 667365434 970664666 657942450 667344766 926459357 993560302 844821896 910676430 969147384 991381589 480161569 746523012 125776965 134484582 747629676 951616671 381089624 902231864 37602478 449384039 841782010 945626015 457437054 919088661 84869139 439883858 325376798 640954180 206976099 680759651 945231002 951328223 568934641 765599867 373325264 787800755 15447454 790520237 561453051 939896233 637483758 977309045 611175317 933000611 712282583 749208874 232504318 508854203 384369099 644737184 772308718 953926727 805079173 877887739 573144728 932893521 155876316 273405686 173549312 536302127 499706506 863412333 866559935 982934320 324893067 748879300 92641218 351722689 652825331 872280394 209055722 229385583 72620656 431540225 878601111 940479418 231730359 484600143 453188256 555441541 745387470 842278653 680506001 837836507 353434510 989023662 406665562 498886711 11978247 744740867 688250115 910568047 88345278 857070838 993692949 994422799 799827124 953292003 986879734 990545263 182713805 789837129 436242872 664838389 933665532 971095185 123713582 609133791 765061102 939251098 81099067 517036526 957351700 990927386 100558200 662999230 987680557 998827842 159133893 563952756 961412207 977497119 514167959 696530452 134877325 277244291 894748216 979820455 101718214 877373212 630395893 807725840 743883960 769017415 628243595 815481559 307370792 764711727 490670944 683103441 657235606 804596480 865777689 924094488 833633987 846124230 839062851 931574591 830354353 897380139 949459606 951062990 210878731 358250792 255668315 588195164 496520089 564853202 2559804 183703319 913761610 969030209 993715112 995667881 687176194 909850546 29370173 381944536 700394157 945464836 435494743 632285390 316566624 801537768 598480455 975148708 847035220 874116603 168275986 816392451 256868023 935431184 879238141 881385265 119275012 347550488 450849353 973149684 923537934 985544905 193611911 461953971 620585024 725536208 868781774 886404982 828584505 867405391 338356803 737632895 49485112 665134431 157052513 639468454 140479809 671783642 862147397 963972306 332430510 813391063 774311953 958678834 357734026 960446689 445596742 740538314 346433639 832569607 103265873 438494037 931862828 977875565 833843068 906530632 597041087 711247250 587542013 757868133 106064778 131253764 277334367 979468813 280309605 801514501 205518986 678964777 581929394 724554929 74806956 648298020 40417375 431714503 156605062 719129369 554934522 575973182 969271793 990790180 35889977 70127998 683177379 862631279 913151297 997241942 368659550 749523118 176929319 240265178 765575541 923001001 723974860 964974355 112103021 379965175 36505885 249989327 136197261 997239351 927577432 969168711 786106385 958682606 857850020 937918769 331856722 992286386 591002698 870638195 187924548 382295414 403118853 695661299 73679945 642033764 849450239 910985559 649515696 930424939 297449041 482850803 267736870 290042001 776592960 803380631 766906732 949464184 909007434 986397576 607749277 913666706 844383356 974909360 968134878 990885583 334169130 783645682 476833587 583636558 100393313 126330696 75455453 920006667 389937397 902012967 418059869 695927769 920745204 996991618 859956059 983896062 204613290 550707499 832843605 933979882 954311237 993978055 891558808 911467493 623223480 902465030 998836351 999091532 945653451 988576786 992238128 995704769 446599925 749092884 599841673 903429044 731369594 833016750 238500617 963753432 45614718 587374354 510985616 675467476 930860230 941943811 565130619 614117459 498170713 946833239 670324269 765333061 51009436 385934455 569580533 914604784 481441243 968837471 394426873 690030314 386268728 512300744 674152907 911928277 137371864 322764296 583224458 921988178 712151255 776738901 252844124 788815490 300080069 865428997 2774596 743033912 479765019 807393771 979633495 991507897 280017326 836646900 848874892 923766143 276417078 348959274 743646345 906541713 691021644 902606430 618940804 928755805 657093995 820534739 325175155 408154402 754898105 898143634 505658922 940220570 22251710 863952260 889679574 957255206 153310645 330961186 456048605 906399286 131437415 133064414 601821002 706327069 72760205 689374274 228421237 735791782 915499670 956050852 561987017 848338417 613628459 845994066 758547648 880113851 666633353 970897308 457158021 899582198 141403537 489540262 284569189 702215266 60400866 565503567 226334107 739734710 317470358 835711881 857953865 933662439 513940037 568797611 465193252 896091228 214209116 814811633 371206828 561942658 701674508 993047167 948418158 995067926 535936274 572719437 644760904 817677089 814688198 959583183 625232936 699474159 623664070 874475005 616053785 719254096 863111943 928006059 215903017 892669342 761352622 927651423 305621331 461109102 392805439 830561631 2323427 655188424 611630634 914405101 470768893 771000008 424504098 973955234 611549345 763463875 906896565 978591797 682563380 970016002 21343869 313889234 388676012 713469485 137179144 271641182 97162662 980289548 971084728 977022435 186135478 221512491 648575266 908943435 137405426 308853606 269269741 428304590 915109226 970359113 911255198 998985043 199582654 597847964 762939383 922772596 772988761 928488551 369412099 854840710 78536730 584055568 365226954 707220118 412433287 494859215 453786096 648919441 524767771 913958271 669006486 753115609 301641882 737611036 900495889 961634688 939826059 980106690 619967867 856099377 793026621 864773369 844486980 890945603 18499049 886281319 15769655 718641202 609159768 889261738 219445383 725675767 500113695 900989571 52864862 353599888 572398889 821900637 959525764 968685369 751290035 800159689 129329100 675612288 711630417 790860909 73418485 333898455 200591467 799950938 596860081 607699421 930564731 969695261 636178204 865375185 888326949 997430001 875173463 878222065 668244932 858431033 547262014 733056040 493065385 567218905 477286782 566066018 533954280 983798485 225053898 878345829 746241715 971647321 127579243 463147580 904429742 952002340 260481130 476052243 72259803 540750800 937196701 970739104 361670636 877251134 223639133 837252741 532364389 564579639 449007063 737865507 549098460 863211970 648206296 724406731 12656978 963824402 578964941 809459948 642229620 711221243 789291749 791184009 604141795 639084548 631315913 642448177 451799538 941838679 469965442 889692554 410940938 647702185 336696318 925044445 882800896 963608600 967052255 973246284 252750705 513196495 888116084 942250734 865269775 936442425 113510281 801338729 546256352 761700873 490328454 694501405 758602580 762818354 212897732 846868384 699635091 798264055 250545155 995757538 258867327 345475018 590649011 856342672 202244984 760432078 151769454 254938517 435941793 638779500 952514420 989826981 513783161 767704383 954038205 988784264 436073225 580547493 354442880 894248914 985290964 986962273 106634849 643483297 898112720 950778896 392933314 438099649 470584247 953072328 629833368 766388464 498944232 587422613 557129636 941493351 549438382 624174266 803875869 839760960 335335291 811228815 607032299 887349235 353350008 356381373 825494683 986124807 961703882 965015777 276463983 873034404 934278813 971484121 429832611 791360203 716088104 765773557 290825944 304842482 341815897 458612932 905862168 926834766 457317010 861612538 312817552 652838858 114923673 707495027 15935745 32437341 312362111 660860857 540686631 868405756 671195158 744667955 57450678 396572232 757204321 825773109 196983483 333316597 247467282 647552298 885824935 963115041 246357856 814025406 739625842 938433299 755246607 873542227 765838073 818826416 862935619 961426968 123125246 608098884 734313345 850530288 27214458 575212500 860873477 868418625 202505676 918341453 230177245 492312498 845910564 951445709 705033512 973680921 712560599 989432546 460712957 953846028 199062887 918602702 822235480 834453146 316641691 570090451 957715481 977718502 79931898 556549578 349822744 868066414 23227607 326701014 2115613 940288193 874696068 926546419 751270548 905479591 503302421 854665386 435489550 765490942 172614856 174062287 669566180 817228654 638458346 770015853 987004076 997531660 666809627 866137753 909386694 994793184 692398627 767687594 743087278 779173168 132054784 585082585 747901713 908146276 712450849 994394327 968530944 973671273 896198249 909237543 497878555 559059581 482621425 730290758 758447268 939248886 256941031 995311372 648752104 854946036 512552314 935568576 117165454 630929208 59572112 910389255 591159416 849833496 471263346 471408696 233395315 737024726 389932221 635522507 683034534 845791770 773897955 836741856 159099341 710703585 197338672 521124971 328562303 603006404 275611809 282547357 494661881 558022856 410156284 445229488 934563900 972967386 686374644 832723709 770403123 776937837 28546519 659659056 844966907 944312100 418753523 752810947 813368746 907508057 239848284 527165120 921074990 955004582 196060230 839406302 680705010 842041379 718213773 970123074 545618353 633184911 276797622 522674094 117909562 936367861 986087277 994816839 850746461 963030824 131553185 631516818 372785906 750566219 509730315 928351558 214374798 752015818 483291769 489114646 100155346 362111337 915107007 953459559 700011499 742646219 84957495 345277930 356182535 452706663 978534677 980306686 791883626 796747561 472434120 486215109 786741097 901829763 307465820 776190278 19996683 116526264 694599681 924658272 134337055 309867008 446049847 621318843 730972313 823883639 226410837 466795581 557803569 835461014 506717340 817270827 825086423 897276290 871184723 966914730 779146433 914475072 488491471 794650880 228847465 722383059 885779057 998914309 701496624 747370516 259336062 403764545 695812850 851296187 450851079 964189874 682413136 803483240 656057858 812598760 334356210 552702042 178608960 669053268 982083731 994818357 819660495 998584687 915932689 942181946 926424074 951217143 6422093 799764891 964318099 989509594 939629616 961253064 413199655 498509942 35312880 665602013 105908302 891618117 941703116 977898781 689305607 812491369 559165941 671968958 581593246 622474350 905101370 928915426 638960644 672995742 937601276 992120546 393316665 494487685 886316097 951453275 737065782 826392133 722046205 732156724 42657229 944237099 164681977 327247628 442471273 574566555 151477003 760238722 426417660 487915468 309696827 365900331 503861551 935158176 848828522 888674212 478247656 792124367 804481941 943621465 907231358 920419672 143187759 569821275 341729723 947208695 346910828 418345304 237309257 717694419 268060220 941969116 515793028 811013079 897290713 928095020 987687351 988848683 673773253 922267953 448103932 689861157 695015842 770509323 574199281 784182268 975844425 993878679 141681967 946218007 296896909 479002384 414101116 705451552 816704809 934558940 451256488 770749701 372435665 699775889 7426155 113071236 444365717 982891510 260619488 781784343 105237807 391058973 756656630 904359558 988665792 999340803 338819313 567348275 77488262 782490097 173384311 482707931 813777658 991778466 308407964 758768808 423457772 445159548 237464574 990091192 928474933 975677782 783526026 819473337 201490059 620562309 598218205 856475842 392260745 724752271 897818553 914817512 754496689 787828052 262521555 903383186 561810971 818114679 306454117 973969456 680504209 856107432 259903208 727196020 762989538 950992584 218991685 224695072 720355134 932948711 290386259 889194299 146494756 704779895 684817440 725449143 828724758 929803931 789449686 875829448 887681159 938557874 20643434 706236669 708494344 920215801 69348449 836262475 553837993 788035443 517030122 865123982 91569456 795381958 579838252 654392386 887741027 901701793 908021714 910053632 460284233 805282191 218566107 405870032 337083348 942516180 922732931 977210465 719681892 804777565 46896082 959698206 167110727 186024395 144995224 361325599 25193692 231700012 610014804 624178341 775009490 956123008 968508894 979578852 626859760 866205815 43677642 435931964 172134926 715371369 204556675 681499825 127166083 615105606 747939976 981476437 860038954 966457934 678292418 833970931 290449648 840718605 304428291 605913804 140522188 484490063 69481982 987016648 812631748 939083229 890294382 951072956 840521297 901053956 108679405 758363041 585391705 907880936 533444627 734313964 540183789 918435969 594906712 746473324 880779777 969643913 198634845 646917500 842419372 917609449 87325316 626008862 852523003 894205856 174291904 682682481 887237090 899513951 664449296 796544034 507170179 534683348 393635672 989969443 494820381 680868594 649002237 953918545 755320335 989634561 290781492 657841584 59579332 617726793 747493471 912056686 467939299 870355895 255441788 624018408 813435356 814634488 835784255 848096420 240780898 581737591 777579627 852923895 767745523 817473874 21837069 904213694 113730607 585776286 957650579 982853681 693240869 777097129 857390620 979485715 125991461 291259071 204628377 378332211 345369682 979721516 984003287 984123701 136082870 695744723 163555531 845519770 528887662 663471302 621155356 863199727 150544058 194321174 149908685 249045161 494778818 954655079 417599304 532708902 575691415 823765604 611485383 666892525 376186867 467200988 474041854 930324025 290022875 519027224 78031129 636676142 775259732 992459985 848091264 931677130 905120294 959268061 592138378 848240868 972468017 976540302 372532067 564039042 153593381 605500650 400271241 574436765 635456716 925132902 849757697 882003637 623296591 671561228 480222282 984747806 670475835 791880538 55510099 598200075 753264807 773055560 203190718 843313096 506106410 866600895 391132652 797836865 889619036 968439000 134857598 348515436 493816438 934825879 232411668 277114764 840500189 914575585 375590145 585650398 870055719 944473101 841251005 867148991 917756265 934127539 775253454 930856396 457785691 687119909 702581678 824300392 27797126 939717287 634474642 668577998 352575422 825028314 852515661 907127219 159896382 913654233 636528414 660256233 274763217 962361899 84354544 560680985 500013127 601346806 954807188 977562128 625026331 737782925 467401657 563751557 649222746 843415800 993297786 994234609 891727537 962788597 201131784 977250407 338126994 913249927 227220972 343480186 816894592 820728227 847267188 859455708 265793675 348663701 978282514 996076342 80871052 343579246 255479083 951746447 731007891 817126257 141003519 420795652 77165000 304446312 223515538 862808597 167012674 641971107 159005593 509316707 398242112 794981020 877703808 921327693 387703001 392942503 230772812 452633223 868593661 972957887 855048105 876077951 677815737 720228011 385220952 457494702 314593366 402583659 45172409 459777919 957054853 961366386 465596656 748108402 102642950 849159542 233624692 891599122 989224628 996755130 194745348 435712745 937817335 951622457 635120562 707746853 865863914 932573989 552907307 995650605 692604789 812636072 985635560 998997960 295316324 889301669 984604992 997203494 135090274 945122983 535451215 595542318 516044459 662760022 755796251 872841766 646377161 712599027 45659889 491618995 280192467 845290950 321591094 972708209 652063337 965147924 650401570 990840818 66654458 713394090 752852860 768526806 364263949 421481108 562360923 573937109 678315367 960598682 398348713 657618938 378297541 818251283 714465121 987846394 566464358 828543051 429508360 655263378 88600839 383595527 846485806 898083182 584796778 988468622 566482636 956690175 300966664 862092290 282348195 860820706 462612278 490479852 881059865 884822657 378406631 835507897 552757009 685377529 445299146 449240854 14676068 238246060 116316988 878418245 671915913 731641083 380081108 706456255 271621179 669830171 568268579 739688550 892292229 922869054 923904453 954275987 185949758 856443353 400386768 552918516 557431162 970674296 608043735 852631160 318344845 876816321 211251595 366184696 907208257 994201999 838387710 952381496 986742294 989069497 935572734 946377429 160992107 326304107 504385063 551696941 423899173 846038437 347230796 416204336 219528746 385450804 528805843 949422802 10008933 224952405 22497862 84349988 305014047 802106170 735623248 745914400 207869987 453775966 508641344 868181101 624022162 951897819 916512199 997134836 452452192 770110866 510202939 892797286 30778069 556216757 613608485 901473201 952932208 979019840 996991275 997568465 441920943 983100856 938783740 939098416 351533300 807398253 7074880 571990773 281357509 612648731 940979346 945429687 858237055 871316630 324878928 901145738 679834892 807415995 511946784 512205542 609895000 675522002 477617179 723446932 378897678 599402965 704993753 903874172 933365640 974057931 678414128 946922718 360259911 947044369 106322062 288616305 560595644 849863115 177754817 497423372 681681200 899655058 778993036 862760665 547365754 810045063 4303449 856773442 675229221 950907346 285437047 882801043 341199828 537270024 239122197 361343340 965360392 992162906 614773565 798595244 442707435 714696631 239653557 521696203 853433860 892382401 482592553 659739270 797692667 798064050 802420795 933368938 425155963 688476893 490613766 943949350 54412998 728158080 829554062 901402797 962818330 997421369 849480047 911682924 251654890 902788164 932527900 966907596 901310056 959566727 728979106 940298822 268277706 830456117 224886840 832760342 569845478 859096772 214787443 280525335 623313700 927847212 832025792 934078738 289398809 846867556 498915850 628976896 592504017 606118498 542333153 689472296 933552229 940501707 576267636 987386421 669330196 753973654 696593044 898133784 140167403 703175166 691105043 712367663 561494352 716946020 587769026 959010331 442278975 936271138 592783533 949601077 674941662 874678653 80074619 96067223 248042342 902330934 125205127 401332144 88279637 120202070 500138800 783918517 896052577 951719392 374592487 393876392 820258009 840175044 921402599 986854630 710925356 795421735 105937100 128107178 734014545 921832812 760594460 980238580 506336093 740194697 65439271 515609060 67565944 977452795 435003315 786977097 220706348 745285948 940053271 990401358 700427033 820135497 884262703 922872556 144308812 823780697 590451999 682757972 950282825 960685044 917876482 938471606 834238520 993260175 783978681 984815158 93050079 404418988 711753800 782023168 973145799 989512378 602648595 990600313 197115476 756114265 389092909 550846538 599434195 712155831 834362214 921652549 60516111 95202386 888212664 903835759 388879223 437075236 14624837 80109649 532899047 957962101 70475932 781306913 455127848 782298256 687661191 926263966 691985119 959874896 81655223 822215457 119309116 623238058 74275711 323261967 311047661 932591583 722461744 911190877 824365134 868261747 888538964 950959980 971019575 997163763 863557740 926811720 225327409 381057012 542926427 867083559 831534690 899881375 746489782 946035052 919672323 942033869 971627016 984949116 467086714 802542662 327900145 608966626 965270851 988713831 430802641 732336722 67955249 201687262 330118888 777174818 720919553 865557408 683031960 847774849 967225733 968891726 491853538 872444899 168657601 841632102 797028293 885280761 103141621 186259089 840204243 965463155 610187070 936374152 183244279 607014919 434178859 779282713 774414395 991608461 773733361 940609274 489556662 995521715 121101394 321413613 839289866 892609594 568518020 868830645 405240777 664678884 119956753 867626447 345654165 676716414 447631275 749747456 931969908 961900884 755736452 901260246 783249462 921990306 7971095 753652652 304806328 590313041 448291688 619327918 929702731 937124572 724270372 867438936 719484536 924494139 713307407 824554055 935329942 950987236 514687308 542429215 574002394 985142964 474498835 993211307 522763985 636340183 137634510 793549552 29683251 803752577 436972793 656341196 340384975 843504898 899419335 942177781 874635618 969000952 919696223 934200245 342114134 739718207 808782768 962787552 967110380 981111235 988133922 997749078 828750619 942860837 143969010 537815226 468076281 876197857 950430021 951140691 394590783 848899532 85698413 666487701 566761108 600712857 644650875 905182380 625683928 649289346 818763179 905693170 946794191 966624261 372744897 669792584 743998534 776813200 648996951 688605317 125905471 687999579 911828921 942351332 276090842 462555940 573566270 597181906 987956111 989358414 39565321 830312569 925508182 962583476 415925918 654266473 639378335 706866246 345906250 774938123 147172600 726853498 28352638 477549625 847701874 874923451 157354441 688921180 72488861 659650125 971167752 986947398 484458458 842780554 626509524 645050651 33787086 207477899 344811719 735335983 857688713 957919188 168449844 949475469 812536832 934737718 49694880 393373735 990413922 995920391 77997905 289749433 749875111 754076793 176432449 978797375 570224015 869467333 40443390 407509985 410523261 516153710 231684468 342483927 823307291 890417492 228377472 569312624 798453006 980297964 868945307 900474562 244686547 473137604 700452994 746817451 29856036 629442734 833703561 948407741 810607776 995461833 274780762 885737379 203712637 288627362 648431893 773339074 534196900 967651769 823516339 881111244 832826059 991733565 770926389 773437446 280210388 757497064 202071968 488220644 991855176 992340052 605653558 931925710 525398066 553389369 670630700 686055224 312349919 967629795 462253475 794882182 813275598 954232370 718809815 867000907 619319343 855776939 92149148 140736287 718465863 834945547 349747908 388524073 727802752 735182850 428449055 431470150 185784281 419290586 754327137 790982009 684797767 699830855 360871921 555402327 843079937 932449534 347687836 379048641 280405641 475749720 360537220 902592167 852609207 874352699 977960612 982392961 392793940 470768391 823000070 977116000 571358830 690177656 83597895 953115621 235319869 859432650 251346634 878364772 739223867 817000886 377219455 891458213 713217737 782878050 911443109 974339166 131950485 646008393 838190198 981259799 282327648 572525593 424429906 836949966 230982487 435178329 311441363 568095778 698750899 999082756 141949528 769288703 454030699 561034594 791816119 949815275 156056954 664309264 510748404 832931670 388255570 828043006 976110135 991541030 435180532 842817371 122401821 889821490 860663018 963308887 925821356 956425200 542963314 691883113 185607053 998323799 937127062 947177453 492240879 676253888 530516392 979526156 89277529 789764136 468018069 583810276 528464111 807157818 386625073 668456111 161863015 453960989 873815315 990769482 551428528 973487732 545089553 735558234 805845706 812812840 423301514 735079874 917421835 973267779 126694756 754335674 162134384 907598048 951453522 955559902 555535568 672370583 610337227 829993982 358443749 905912217 743733799 962083613 968838927 987860121 220786773 832092808 805313723 863853442 293085002 318932109 90417400 575880661 715964687 781614614 531667258 896694225 477737276 707736055 350321796 606064555 128835986 378119323 262309349 842552450 623503780 793627260 484181758 624908736 67144141 770082047 175315499 917880936 17763082 611054717 660718669 684507887 80363013 535965624 570821246 762688772 866302398 885995045 293981998 524129841 669889204 902449980 853218664 932619393 381448852 890750047 184142473 875012651 363163101 732538525 482205678 969367849 80323819 293344931 515854395 724693152 442552476 524138008 208499198 498742568 747477965 810832063 214640198 965877670 134266606 834394697 672102268 764397572 355997400 897182427 416067623 637774445 409808901 458386126 71766194 652502988 305708719 919509269 916292557 969739839 258041200 265764875 220800409 979174912 922493852 925147257 861829944 942562698 787583169 827189332 329455924 710741311 774219557 838273456 269459193 555566209 393986154 458206815 487441420 692308530 515540795 883844728 850679817 932772874 264433789 343909893 336223751 477253496 43934891 577909130 492574379 844996718 489517890 588613426 555969068 833512948 542474721 655398363 883852172 957962129 43138480 976918633 54007719 823655534 786248803 891867990 612748434 966481559 72241143 301802518 628364276 921151044 713796645 784162682 864427680 918304895 484239505 998858661 143754194 739697899 487155223 815803395 419399092 440419951 552396531 684489371 993644321 998844240 321700550 572230261 755485149 966708955 150723405 721174464 664598255 795431174 6268468 98116168 300484333 993410208 497315298 652624530 644737525 984265870 226748011 573485147 72894142 83072313 448474364 565617297 919693020 927430286 887284674 989359138 373507316 552292648 806207159 954949386 489450923 734381527 517378650 684407685 975539633 986140409 817559476 887725754 126005975 454311041 183874683 854519100 536818779 587049618 873531789 902731367 883747496 924130002 502396147 551814587 405211462 830684506 253694958 427130682 210048904 921744481 981175626 986506626 490441159 524393097 641731240 776603699 402581126 476751857 317200851 737877733 401327132 776053399 853597249 904821090 396950756 652228997 56805798 923820636 874258941 979143649 558298663 746551234 870110938 986409489 592576070 620417719 9313743 714678298 316399172 634046030 737207869 899590443 420750879 942893434 890030906 906512893 932692822 979361401 501092461 949479336 508853375 982401479 844517293 953511301 879453615 919778936 56816539 301501154 800785397 902615640 735576412 935237522 399377461 851706481 546148140 655551797 742424256 801071415 413636892 567660666 239512125 915158692 778693020 910017360 465132381 465724809 160172013 264755964 984339952 984714332 755054149 939379287 137049890 788317275 526558292 583481237 94998716 338812365 777585210 778121408 533437778 677330435 369499085 517493808 767228498 771507156 705208944 809088028 963547151 993945830 458458539 524655970 647252306 716200123 746901554 817126139 486843253 583170096 350244354 844457913 736085119 760127722 335474932 825489351 696733270 990813800 343480440 409869574 10933328 54448809 380758499 781639710 419082332 529272460 361363168 511939164 136920598 234624759 547709203 554400889 825016002 946956342 408274387 707575415 597733509 914124720 584254230 661994951 276366231 976199999 879809052 978069971 545620160 685673601 280186821 813827470 810395470 870837668 663586589 978753300 996957262 998184988 23402655 906706480 583284976 768567196 561770299 627438037 908643192 971216171 917678024 995023391 142105779 782028944 267047897 925847400 759737321 891701824 939073548 991163075 382956029 755403163 306065049 545574777 324205048 786465180 565371887 770011371 650067448 980580713 421961735 474254222 142196853 488359012 541859342 580919008 899489176 992525846 35420060 510683097 192806238 234511555 470054014 939840962 473834895 740588832 517306342 525384331 62680133 664324801 358879268 578818829 633966619 699269375 52552282 725778173 145470258 586651548 284410327 418140255 65405165 490540110 442265832 558246569 707920929 799305935 244714575 993396412 872127762 872426972 354161235 935994514 891285099 925048140 222537978 809385003 65632670 686522482 883229417 958182312 220271766 742655801 438114416 617026335 424533298 884117859 412061148 564946375 679403928 685168004 215339083 985082074 402261310 417581734 949473439 977335413 74574881 164919861 891745659 975639097 266499333 889483946 16725839 831078986 642517521 805737836 814651677 943415869 759309222 809382143 215292806 656599658 656685264 717115469 886272963 920914541 335415509 750097190 989777695 998928393 52214658 965586445 675390422 678858971 98640276 154231647 751790215 902132571 842237672 975579259 257307154 951330791 307516269 833474505 632146861 794219944 499990660 597229173 247261800 897602836 957937310 983721615 370722825 777892121 161332865 809714438 963267792 964684718 484639577 929681050 111596143 745872148 873588254 985862719 194736782 856848566 714565162 819879820 509026022 794410863 99345259 931854227 800530544 815531777 547229985 964750701 77477177 943334152 462617819 692942834 493350817 589603341 698232559 707790319 963358505 967571719 394562921 617771457 220318659 414030053 617911321 637649972 68578641 938768491 361378091 573333883 206039111 208490902 439701469 983833370 423227100 904144423 593135647 684250269 23995082 988407879 506387127 825060691 42811351 972383064 37809724 331809705 317347316 447868864 366552463 369329959 62848719 650722892 852911829 921525196 115593118 609887008 685372942 912598416 69423717 359918781 444883459 882883898 141927257 339164481 368423511 791516345 127523824 415156459 956524823 976904572 972030484 989385289 966605082 984709317 553981039 825103766 15942112 541761868 619310510 782518181 594214877 654324840 47152984 409190998 503439735 938371728 722539240 956231018 561930928 677389217 991137527 992378753 512636135 538285797 241511072 952430641 268411206 323997625 943829530 969461701 478772293 815339966 592441244 938098726 134061250 492258914 365797812 668080548 489989127 629238026 544836484 943920016 422558451 917571302 606111357 846484038 543941134 554494653 927786392 960879702 113676646 245749246 576865440 639467354 580576223 608956828 227387376 623638417 920502958 936655793 561536421 998683949 392385899 453686332 727820927 806339976 69864788 228264717 83299238 710260661 643363300 808040739 473622553 602515739 212652584 322988881 125979072 682252287 246442661 287143877 237731712 775837134 127908866 266812256 249524676 953857012 964736357 978526354 165284165 984757091 351502031 384492824 185988849 720285507 963952293 988230609 506711135 584704238 994105117 995711536 243941179 603824390 950633491 963395168 87518424 310876159 892041372 973894354 143800837 446604869 983607115 996622353 260436408 287153451 855801623 859224761 18669459 877709570 784197975 820949950 115726553 973575149 11043484 135906184 8474709 923499725 485966962 785700835 330076899 445389257 251409634 723370970 394170392 782736259 833739703 858747336 649028004 795923578 778653682 978917521 360124863 538520517 159713009 861097060 302306689 910216998 931963872 997216977 264701565 584084771 306710999 334730689 309236810 910519662 608377982 922507949 987544182 996604132 331823236 564882880 575551151 913588419 334930213 627970275 317854881 682399046 218428119 704584966 899731255 903265260 111538965 404518461 535236544 730165679 315161466 694436757 747393996 886905933 466574891 645412092 272478350 881897812 945148864 987962525 34424513 58431495 648195787 924928707 654025597 918483841 299648061 307212335 691729412 839512362 980305185 980781708 797248293 933905724 466656039 833927071 319710008 561491225 82561633 597702634 255336088 311559022 838940456 862667818 310764011 662217488 576074552 601835891 622780342 766511789 386350850 902791710 725912038 737962707 324706623 670620630 338707055 608800420 207428304 858133744 724083449 782304388 238394024 846935768 467634320 482378240 812635477 862055010 924993728 968348482 574937838 995689049 270907153 307461448 601093486 631848330 981812961 996944348 405228070 792052895 163471864 717011553 528254952 553693798 656451527 961511086 446413972 617298810 294025903 356958659 834518274 950368635 555346220 983087299 391282463 438314475 646796224 840631050 265831399 663582596 660126024 872262944 892154964 920300180 900629461 944878950 367162582 907124527 225852829 457627469 271604332 835779694 216697915 732035342 981299091 983620693 943354972 955357534 183857758 486224295 837787665 861574762 904564232 918121542 284163235 903077483 95779433 839537500 131111978 828158344 606980100 639667272 11770437 82989980 145464488 307315974 13676727 120090789 255913465 674546427 236827531 640540342 185917569 925367968 265626629 471308461 516968724 923540321 738134095 814615077 410914924 902044349 744826918 774187446 842770069 914538204 878805814 940493696 802020874 964012107 215044230 504773320 190802910 863107973 668681121 895778205 452076325 478892846 196063050 537783350 236144343 851614281 73660595 659801676 63038937 808376041 698494231 948651231 162175322 337949885 558410658 659103101 825616351 832483867 472046409 973156146 935034099 991502144 682872469 898706710 990057737 994225999 830700608 897597482 594041072 692876915 44666135 594050386 391254430 505293992 705692070 752234048 94020711 375602058 967287257 997398742 168366699 966458764 966348115 987768407 584737203 820936468 937723135 953005344 914534135 966507384 594556952 905267211 472515187 703532908 527440230 892387547 501414052 731543993 548317422 639898334 866790797 890589840 348741059 549514015 679731021 938167502 292242537 806068771 653330491 733014249 135248710 699588863 705401850 777666926 365000216 542953755 165944975 829240696 406062339 936896707 87469818 876091073 653834680 693142831 37028175 350390742 703073352 875898325 943092804 980050165 116729869 203706479 836298048 977720228 678756624 958681506 610044181 906581609 101104864 432444587 551852340 924194118 620698678 685982155 890366921 924517986 594934015 601744362 896360912 924698211 332949795 752955018 55925047 965628962 476253192 833178227 20832765 887592187 747900930 940974823 709392279 804757554 495249654 806219835 233376779 598873673 123260211 587662261 717505266 824215681 379648422 728293211 273678090 616061463 689626660 802725224 226052721 855255716 468602254 775696000 327489063 606921948 687445859 742770184 297802419 606933102 26160619 824090256 455688949 808472075 327033434 562387860 952236756 988506398 159859365 543597357 544231987 751307335 244566371 774886462 385296947 447288620 859547692 968196895 764274403 960542052 905689985 993529402 887872900 936501225 557596342 656608999 406027847 463218126 724089868 773484853 879590401 903074988 771548808 785606812 873136608 889788551 402836564 559719289 284744810 408606322 229781116 786798021 954930888 962209029 921271093 944433893 610435719 971005366 598501509 839200765 898064081 992771094 697798788 708337757 562624335 703176839 802771308 816580683 686437396 808616076 279637657 751257361 94599651 543098372 383458407 857660083 657245737 934768536 11940256 765590007 589957652 602515398 405944126 582033169 717229148 783514908 23039091 472453797 765826336 977841766 164464734 275806626 170787154 796886777 755014964 865384539 66152289 323793036 937520811 947744925 966976371 969392918 320612132 781608247 102079314 953930553 160946613 449665123 509742860 614206076 472902420 654513699 22632772 444536980 852243708 876253684 600117615 948699253 616333555 862864546 841383721 881253094 54523539 657485353 525538856 736016198 48745922 365770101 787883322 927278667 108832007 183396943 353946711 786575637 227126432 805234037 931002178 931132706 344205450 768354010 924906611 988005110 753840708 836824172 999360445 999381386 419611897 526770485 372816287 948604542 965705497 990479444 527422657 663310342 717031338 866973998 5681731 563744373 898617429 958123659 272634730 755147335 510889570 922240991 119759372 984434439 418221592 828785997 390726543 637897533 397616618 599573434 652170385 676548871 551641154 611261841 813532414 939028552 24626232 272456361 264068488 912177895 349857570 672161785 969053588 974259780 633947300 807198233 303423901 843468398 104924801 563626485 119753615 288710132 136541968 406110800 399979872 663079556 978279969 994706942 254215132 333233069 859439796 995330156 541122602 861255285 314022520 548653105 279521872 804086713 579087506 690698013 173518915 302326411 19152934 559353365 170224243 726172456 976564923 977551527 931549384 951945189 551609881 705133421 39999794 955143316 586971126 640592045 700837195 931818817 769718997 814192755 913206884 937672453 392623732 961104923 244960303 649720028 846735889 936064662 855643078 949537869 539032526 939425780 93021423 237684694 821546468 881007154 251538874 320297609 155802621 764940571 243273567 592817906 840690045 923449897 503125006 773842155 406098627 789552714 787283825 868231377 541710088 565578050 334399585 708081739 11580527 928758726 461904797 851426456 555070841 792086529 201631455 213204040 922778007 948135892 463262381 556262945 862819086 890277167 680240371 911481336 636184346 919008424 691053770 846601528 641841175 754740170 39723279 260295327 761985340 928453169 324515633 636877355 206755425 649721476 274833831 395689046 733226101 857401696 539543961 852047275 915621649 966135206 248529513 750333279 330339050 592164515 337729010 362467031 446149388 980719757 867206630 997121247 552683634 991794917 640069870 882643719 142980282 307175935 175599839 670754917 942182104 944915956 569317786 785460512 516382142 641248237 325457992 556161677 845258164 851050779 206687835 820654360 772934578 961633102 677325561 764071970 165051012 720702847 475131786 537056639 122150149 607632165 973846466 999007086 296634683 692647463 207785710 897530884 906496450 954294524 124522233 859288464 824907482 870786048 968396490 970012327 1900494 744769578 751083186 857823170 16928781 196125536 270079521 370423246 922452128 997720669 167063253 500495413 512519274 857850777 96382731 821138488 768742034 827181053 926957554 947411764 679682796 966099149 743691717 866543416 268232319 746925592 344922399 491028786 760680643 800260038 849289868 927701100 622243588 653692867 737518608 888783964 971735755 975893925 985984896 988231843 559419940 649758289 781890797 787419981 605484723 807856338 15640308 757835331 670023220 679640358 809456566 876266097 867288762 900762879 399986041 522262916 960413392 964476889 426839485 783315243 140476286 341730742 499232964 618906848 524045016 601122820 360547465 400750991 550134999 717852302 418693060 528758530 226689033 818349720 819936833 836945566 993075078 997513478 201581031 582192891 520177774 869993816 676319487 735735128 404918457 492431913 113904813 882797676 11128754 130947977 174113893 307172644 146530944 800032791 266631028 833000795 838748527 883684312 248975809 877796907 489516212 671730389 596065359 721374648 323505372 973785706 34971595 996067674 938008178 998739550 180851371 948534873 815680467 907955871 952877671 970314381 32021476 929875280 255547057 722823445 290291858 755446281 385685389 553206981 911602266 926738449 854965363 899805918 214054940 363474471 114545456 353929472 349049424 725957257 53472589 108945091 553323522 882771045 689681226 753855240 854053499 893185242 107290593 526945691 157739232 473804709 658825629 828121469 636395752 962206406 964640952 977320740 225150402 777027397 443524639 877305669 433001928 736939851 33253354 196547741 921610624 976515619 545302599 596176487 792766401 868772509 914158671 952040256 380475700 865089431 472452804 855234659 119211849 542215514 979229054 984742804 950490480 982867109 118921931 447769907 29217582 538921119 927422759 933161366 969024964 985616168 991487537 993124576 770115070 956065476 120936545 630128594 63912966 427663597 33355476 603747015 783575139 967368755 190867606 447832126 45389872 482792623 574078478 593931018 572978981 938590290 299503535 727250533 252056403 484642007 58636089 367421489 124306489 157883654 634425569 965352731 443870892 646847338 803703829 872621510 181535306 429078984 845533245 868535027 894425380 993940444 262671758 586957731 204595046 977049903 770521814 953620559 357935418 561327288 11627285 814419001 294056336 573468044 163883010 930501294 863891867 902849941 395386964 946856277 170218152 662546353 845228227 963224102 381130101 442116145 152373586 329395820 604066516 860556464 750052600 791089117 640113321 728937545 597608924 722572991 934973725 948079909 551843489 906004545 548248065 985616189 163658144 398234494 239308049 454287838 457466374 899848472 914864091 984201483 6758428 244219581 985951536 990592257 267233125 424015768 181633674 518376909 805401371 865409372 210566837 572701237 570974935 789781072 188035474 476652901 442681864 537821166 637753512 834509785 867735769 875820510 483813616 910194937 587488704 937803102 534457265 926627021 95264431 165832818 543848680 868688544 411306358 707266463 298804717 727514961 235902318 353848469 408359922 976488271 692649422 735009378 639863787 980210641 229278963 233488827 842886736 967159213 517520952 817927497 589064803 783605197 504124925 709654614 185660407 509444413 545443298 976455283 210397388 268837927 491290797 737281094 518352948 947463754 299020234 442039264 32458888 212771642 373704007 657485078 138914662 623825613 601004296 783400735 234485917 799196082 757900581 920524355 381587409 425913483 71168199 720514657 175346819 936992376 741474199 752413186 192503986 411153481 310370888 581773614 944484497 967319379 510458952 733946262 348091621 863737134 16044068 383873019 584514492 998059299 536606685 708272790 699908396 942507553 445784511 950181776 865656079 876236373 557825074 913198957 361029476 513521080 85689288 704754453 41858552 903146605 612982997 897707428 212956121 648534657 573967448 935621378 33487155 308440620 306189196 864682865 400572999 907872100 470501718 645778660 897586207 959244534 861615608 886043726 401262129 417324862 268618836 607486958 592001582 592049941 214113670 522044604 41420769 745098233 604911340 648754583 763235711 966787316 872220045 963000258 975312267 980419528 410067359 652313893 70262074 768230529 367948961 397792489 724343950 986634615 836885744 956707343 853958828 941173146 529104257 590831333 499780344 854475549 27211528 174231521 770519947 825300371 458083240 809985637 967033913 972293962 327286406 496842534 604473431 840755765 530911276 647371909 996567373 999325054 565371979 846926068 657517628 903305205 681426578 709071667 676122098 893135324 571919291 743273348 573515901 805161963 485569339 795062408 704216490 863601639 709233933 815858606 914221287 965567168 332810657 968721743 499271381 507827093 456669645 791933638 312470746 505283638 877101636 964984629 803816107 852837315 430920709 795191293 598315674 998559124 322166375 466747380 383262381 422015441 851051725 968926488 239696940 898688353 87565525 872372958 986459606 993135541 929860478 938873604 386615961 893002999 254185648 524381008 638858584 770386815 545557897 645161542 764391496 926217918 742334402 767156613 505381942 570638141 570087500 593633491 794731194 835118785 677684888 683419776 232817065 770673895 436672689 684139594 893931567 929802531 876738014 992278001 25977397 468070558 299196304 658829179 811606535 841470003 351935219 483587693 760924537 973227100 723070104 819543838 729095963 992181706 830503754 940296439 955892652 984804171 69989883 231737343 125858393 611511363 95535646 409871212 485807571 900911083 417583042 708243457 127621917 480064721 832824976 838362279 590129155 642391974 178024559 732407936 940188918 989180802 697040737 966823617 966936809 968418699 864076754 913390303 369036239 509992223 808208938 955199205 294702861 499468026 261367238 804574981 103158944 499162023 867309057 944461243 416660539 820191923 466778339 892269661 344273389 882163930 992876795 997770936 318397798 751638466 544999228 920481143 133772134 234409547 374333577 925193128 503294706 954777550 968948800 969806815 49461660 454137847 212108671 380638984 873797389 972676161 110233993 429770286 948693983 973012771 113274871 884526574 717156315 819649633 45106112 662757452 694051966 918301679 44066190 818206781 581699433 860896427 818148633 914683714 39568135 305533128 689798145 759478314 909041561 911339329 466245959 548469564 844426344 866154074 737323168 863382325 230156371 323988663 384800076 894303294 110747594 889154960 396410845 591503465 936956701 944555916 548807031 761958560 504208073 967183427 869855587 940082700 961957946 962871370 443431795 562828600 810509062 928097946 612269939 913447572 816291349 879508860 74023449 124073203 431309135 490199902 734637577 750216930 891802918 957033904 635677346 937229711 283209338 572743464 252469217 982356516 62650202 696896969 970163124 973661575 382735543 878057821 211785491 968778736 128002663 214744314 643077039 864666895 810013866 981711838 931693929 935718676 892311001 920462914 711655157 913132602 851074035 952244803 599464980 940464507 823909557 881788947 464884810 494226577 288705930 345639045 772360596 977212476 591460471 749905760 968754007 992658458 323641182 469669741 431432908 899763133 115061576 767694980 133961009 525518943 252054321 957056099 568098513 609410646 769763055 834992097 712619395 935978809 499817243 642960319 154513843 412574441 264024918 743116635 236016799 468348612 275337950 487299498 739751284 887229609 189944028 970169915 958090667 967897798 574090221 696920095 319987533 558268787 441755007 805713655 696897996 747870789 694542972 720817645 220912979 627394991 944952739 959997139 995548919 998714149 878782415 944888361 482246340 495400517 467227062 489387127 676215169 862190616 82586142 214093285 12112341 838205841 10559838 625148746 150260455 715617639 363012518 760620574 141986592 970233273 818188737 848838524 200044028 385169410 602473129 664928192 56924468 337784407 952943393 968650781 595212841 612954162 244692180 312901810 482150437 548822533 806172384 884201165 418443142 735985853 477837427 544988461 879516971 887178777 580926851 870644926 697365912 992935236 61498696 809063031 293658971 530214770 523157366 764559689 204746136 721924851 509921640 707613861 200829468 495263663 460590564 525549671 430438125 773426525 695375453 787139321 382922534 641024895 825843507 860051603 831174668 860813914 788155446 891923300 992679065 997707772 950608835 960249625 367368394 766203034 321400673 517189347 940646304 971012233 996325416 999156304 47712081 242331208 344683066 924156676 871516814 971908303 278734478 917843850 985768813 998203600 340493921 877000870 707906472 796474009 348052407 880774722 9624459 15340382 448950146 757152116 401153590 758377517 196370936 640356552 618744707 671008096 288454572 504164344 687083765 723454522 589573249 995857133 468621903 511328677 493739297 778444655 104041517 450293614 21759053 698363342 834843275 957483385 552643823 801808857 396192182 832043599 677187133 723110784 296719100 804758796 476822888 706317195 538560673 787490583 797133752 817301381 48799161 993055615 197981985 591078218 824111276 860279233 915652046 988711650 162965466 673483085 53601074 668755861 857030750 885669366 304100183 627575020 257583866 616838895 333436883 741155876 574019118 826259595 900119338 977393114 92974346 516539294 693886097 835813306 176526023 666134283 696242861 739450150 767006007 928854502 141881810 198656878 958705343 993759486 536307501 642874475 318590364 795012549 140339243 703118715 377998995 918519254 728363797 923871363 887086021 996572492 477015019 555408380 610393305 948160807 612803508 640699514 560805358 974010124 499158762 595111911 186555061 547900296 746880131 877882409 574323947 984791359 409464412 977954378 373876917 591246386 862118561 920169400 883982525 938756790 813089999 980412943 348416891 470281012 904128995 912139830 459874612 717179089 14022571 935528420 776711064 939863972 675199076 955353468 233955211 287918741 682297578 902028467 151548357 435200966 571092669 601958971 225126337 898144978 190884532 336080045 447208789 803262419 70408358 829824678 273241525 361934834 409522457 521001862 886061834 947367836 379622703 660698568 447824101 715500163 161760573 599901757 71420681 649587240 94841866 849688320 156941246 842206197 269218046 358561547 781861 950663795 799496545 987077592 590033104 683825399 280957925 399379379 726344235 801811652 97609633 914040166 749356846 936762471 89046668 391136372 994513955 998391849 679382514 698002008 548229524 897159989 374769169 423217264 787003859 793416797 183957885 783794276 749196014 812188859 916014069 963388717 535154119 754471528 583508079 671823482 286149024 717934942 819591986 843142149 787847195 793987363 630839561 969982306 233810045 235886069 663443386 797780114 499382901 768868681 479761336 994457481 346098540 479708023 106960314 821723423 133880998 306321051 311701346 315196884 366526109 878541703 657329187 798752069 651164781 794665692 739591354 916881270 595907757 889549056 636162058 703821460 825840089 884307396 171684829 281590561 56505742 680426024 3315354 32480082 945924307 996499965 726026191 977030924 879286730 887592204 798565164 849198236 989848948 995703192 975644153 975908763 125017345 197407879 137458503 444460438 525441725 877356784 485675861 964055461 849968921 903127084 859488872 894759611 700754594 780861539 43109481 323353424 583921046 693366104 421472317 537168611 808484672 856318949 790720606 907650181 966210701 981432685 324114721 918244445 630960768 669627288 634358265 824779450 949139693 993160582 137659493 494369583 845090869 950804754 684006288 860320033 36305020 435872403 544384698 955315461 497789757 820650886 674454852 768356447 62368967 638190236 101200016 673265711 500431680 968913486 435423978 717418082 408916472 990975975 721582490 887176402 10503878 583847464 291457059 611859951 847448553 852677920 576067566 827574072 269845259 441340650 511990240 642712378 759492598 838988490 858930718 988632660 334599573 757101921 611052820 704424653 744320473 785961985 172905614 798720100 990910651 991892606 439251954 466337375 226287208 365721507 655928850 722412293 42803483 302428168 382606899 393789166 374148600 715057926 107789699 321517017 676682283 740422667 139552952 205987948 193737065 549623275 281338035 363081556 217338677 489466235 300148962 842012448 465704167 805058051 119849497 869172885 555503547 985879974 247070984 272316664 629561097 859226827 866604171 915550824 696029310 948491688 873699468 969684851 90129654 174305455 99064580 438268929 430043006 806672382 698458197 820532847 948826013 967890580 443489946 761908331 288190999 753931549 751506488 874787748 379470360 921768382 101265675 317016327 508555795 742942573 339156358 581666021 762382196 946375774 512488694 992685411 330705674 630015156 312714785 395165570 165917926 328599693 759253552 919923706 788618200 905027839 770635895 840862809 71592800 447868880 62665761 974231176 638750344 855250326 491505958 597475773 965921377 983115985 65091134 361175264 391052556 477815209 800252516 984936543 862455640 891318765 288114761 369764405 846802219 910842670 536943961 702559353 692034035 814682668 821338118 829328483 331696720 837234362 585278022 880352722 10072298 866203767 241982101 680998853 525272142 600586855 141011875 208910123 622088881 723155747 352725737 544016234 41464349 283095314 426845350 613228110 376705476 620020675 52867386 121458637 495305873 538506777 145274558 350703592 625385262 757598523 987940396 999366000 25464629 667938174 468899641 722145621 197033968 494552529 742696109 921735370 788986795 957744251 854861859 947784579 865067202 937097821 758684446 831945366 296632868 777523175 410319907 984218796 782595475 966041165 686289547 714413754 572776170 833102411 384582068 972652676 985601383 991411601 840975198 886022569 482903017 610786164 38376477 841574227 602991073 986159886 936091620 979355916 676735177 996378071 81572382 222348310 540507363 867818579 581152456 746462384 249866513 526836879 788312736 825603148 512771607 962870508 533150814 771540875 320887996 893800524 217877861 556017276 165320036 558858877 907261821 948312851 237269624 948627837 941300481 955641193 895185053 942605301 786019088 900508924 946007809 983217079 640261472 888807844 708930746 917352929 821176410 997001219 864688192 959353071 916774127 947347902 895672326 969512626 852612641 979054413 595917243 821695956 968568323 985484563 858442359 896067913 771464901 868345380 396425575 834120693 896285246 902985732 232313462 600464038 582890079 915256907 53848544 378844851 116277438 904918056 46437246 698247254 778390213 803051614 351905100 370204713 196955024 607343097 409889761 593014522 65152156 323562248 915079365 931619818 369445814 654018311 499279796 641516535 95886963 127233396 55300262 227629782 733568250 788381042 934326826 934647409 810192084 903925697 801668964 875897368 971126036 977580941 286580558 900646776 497293448 941171411 560517051 669883594 987940796 992605932 545807842 690251143 315127701 395277199 154178099 764931869 75826697 154556242 708855212 868197060 952951383 975748977 132126497 763409836 267801419 640110648 347710528 835020175 384285143 721285511 195218544 466957148 864306989 977123885 676594584 704942552 106553808 157850205 329104428 769827393 556134311 579640275 528964765 788070788 409117851 517749684 559128799 666336530 55229003 250935367 29664515 846774130 273988912 375365789 884273263 951217453 558137145 761143082 402047791 619835009 253169947 578588286 653802670 862066477 567269676 828648699 294995737 591651957 735890481 849392558 312918751 407362909 571445258 906088486 918475650 978435184 928998933 947064331 176890703 902735866 981479358 987940824 571010089 691340731 452876432 490835569 421192984 529196694 36992297 747819701 448276594 882809963 94181935 381781380 36928024 273064223 494116008 912474186 283472176 398262459 156491974 950376051 735722932 910952925 281757857 985198684 37328778 494288571 262327638 498556237 637826675 674331377 20051152 301504567 957383333 971354733 254080201 918581851 744780932 949986228 21652778 955064841 62438631 279801409 228310201 259946984 344618460 439654514 463807768 928524584 302974413 922816650 250222859 665724948 688936996 740946602 937583718 970704011 844412661 847047936 1931956 565927253 25470152 186139951 523183871 856908344 329947890 512675938 216160906 741140842 64516592 390950601 477488604 931889341 768788094 904186353 18503383 480599628 605607261 766677032 10263684 531492452 10598469 982611704 682968182 777044128 63304360 182222534 331817310 357037674 172819652 262515805 279745563 597871037 743921531 849577127 31159108 978027619 700640304 888249855 434240456 917186738 517530022 809289145 907485996 915860965 458762814 887876928 38478372 344504955 962241754 976329614 648242457 930087996 802609413 908778655 452758054 602633022 848601165 922678216 372224753 425616820 479113571 536991400 897257909 916833544 125587771 534609727 841794497 842228310 160690122 849805399 60087285 254242174 126599667 305706699 563427008 660454554 324773060 393388735 653990225 909155001 919944165 946160286 949915297 962558661 726981634 863757879 452899529 935841425 846217880 888712817 989574158 995285078 540974615 745390166 613634771 661379109 948328151 992214343 536034469 757687596 153347795 483268949 92027275 900658990 478056421 823432091 391633073 729390343 749452109 937749627 117195252 904185102 653186205 721221718 284438001 696810906 253099791 807576879 277964400 490436841 382184839 926551691 616219067 856388230 147540718 665958869 379077523 600693347 536190018 999311090 559467941 685865051 168950206 548224049 804023006 903265637 485364698 713575092 669118047 720046825 409972375 764177835 698837021 807972979 967731236 982839590 232387126 415701937 70286656 453852033 585714554 683420615 204425634 543189290 201353186 949305987 363160889 705599512 289706187 357198293 282774910 808654656 5172332 344294327 433122379 606457292 720267337 753315462 82688703 283986879 836116020 918610666 560732410 828391281 901417720 919366971 842974582 958409587 559967743 665426470 193709762 408266229 430487229 705549619 149685819 705115354 525270948 772407301 757664877 775269823 53488794 365152490 635461991 667214820 743525638 897372529 395036801 969108829 828483386 952202396 580104327 871283400 571186964 963958260 319264731 974425632 579158662 613148052 23107011 132670545 465569955 832097852 148062554 342418523 237142776 827268116 782547766 786221041 897400723 998616395 366574531 445127342 578086988 793002767 548155067 848165047 947525567 965998730 601728226 963366430 734470557 812011404 672026417 705156134 175461966 850315331 266646529 371911150 605133837 661421026 489172585 513680783 760398911 872167443 233524049 711309799 26987947 29650157 353350577 525992082 43229361 806455002 845702350 896415268 886589287 903700326 894418928 963647219 111279145 894185967 674118151 916609388 288834885 661755412 229054792 731362226 309061686 900229132 310406067 506354990 629626922 687515091 192881164 334179934 587564479 711046541 957034974 975750170 164671613 283981133 51918901 825260818 13007360 748367037 827111791 868471320 415158841 962370485 17656180 95832191 372069507 420946089 604856824 720497625 534570360 878795180 661353254 794154974 630512047 841006702 5372292 98580769 156987693 711964177 294072778 462697438 423673226 606486366 31848515 154081471 228420105 489971504 254336334 509736060 921672867 928443149 590795970 608912454 676253266 781916044 959919153 979980734 160480994 987776446 797472889 991028754 171435638 639463136 307278029 745279445 405257290 567926285 34744776 726353705 129864520 525211759 528741058 666872309 939309518 952743840 677705412 727222875 525300344 631084971 602780921 606465553 540748960 903135301 408052570 842779441 509767741 895789132 226877568 320965673 913289945 979372340 790169134 998755879 902084307 960076832 563785332 817323729 415663263 811198893 115097201 570369159 553675047 573133964 121117941 633988051 48709594 745066726 431852083 738073645 381201959 653112947 853553687 998241258 467861334 927752191 919313670 970951269 393125798 591068566 268756681 719830594 321679529 584893783 541121317 617823994 560902212 987159920 851050143 978934955 923434334 996004515 111517145 507526717 472761349 871813119 525772583 896280591 255301177 281563014 839228051 974895174 709244777 784466433 720390683 905563525 278159605 612299951 994056927 995884949 609132865 813881397 489613484 580639726 7505023 907743546 470202766 581263992 509406810 899334972 878549567 890904956 376462166 849382346 918945352 957767748 709982259 928225635 999236397 999272948 266241351 787475407 189846093 692934963 209876763 991290785 851244445 961711069 520542196 670040796 443611375 478624451 594282960 854073104 361432446 615708856 523538954 848803754 525017713 947004150 356916675 388096511 886498506 901415000 530571000 601217695 439649831 730785236 761586416 930153035 790824661 827069990 246869511 620564411 60742380 620897848 985838741 994727749 474253712 506628254 913378914 981663287 190841606 926237314 845668989 981014861 893749783 983680670 911584385 998680315 129186883 218294355 424495210 832223508 836050672 937642192 429512024 572421221 798772537 846820202 834559934 835103563 592025912 888711299 240640729 342657269 549538509 737309179 619789859 929208220 193300782 540476203 588023853 904090731 720986503 985901229 245551117 334499907 240613375 353231475 560657211 682745342 304831791 734028602 113069542 788477487 365768524 726791206 572819184 688937354 376860146 547339706 138829675 986093046 178411209 739871061 869373345 991206681 471189889 558446796 719916393 965302991 458522300 754667516 818440422 974409887 609457071 683435546 159189000 236068897 852149423 879089770 430339326 499856507 38523178 588126902 783452375 958693893 524743686 696099514 639336747 684136191 851388396 915178602 633182934 694442198 86630102 109470115 614648260 706694290 116613271 329957236 986046304 987226560 315654545 613904706 694423206 758726942 838036512 902410549 297648672 609878632 444226076 643765958 958458771 998970828 610808433 938894951 124479899 749702364 543940189 711187685 693213496 763993360 959303230 978781662 468171534 946505259 881592902 892297602 250021685 802936631 957031166 968324184 792355680 913272295 598162950 724845213 928266821 932188973 543578543 881219023 992192579 993016583 562663958 767335431 156928113 704752029 970613697 993862237 18072018 856491865 371963606 534024897 478236433 744525558 903928703 918626052 550031640 592172789 982719917 988002384 72618733 240775652 675562057 945637933 527886540 753824338 309908317 694735857 10261483 239841636 824843848 947559826 633392387 840476201 973416757 989581462 44298808 564671735 966799103 975374833 957486409 980927323 255354500 532061193 701075130 767125835 968226117 991391070 946705400 956817822 566058160 811014257 278088493 474049112 15882082 118363455 676937120 891942436 514218154 638585959 936397638 952590524 888770323 947211776 219894609 572154277 611271098 654826905 209568620 456130348 746060078 777505641 163052756 898496524 336125431 521208915 687528541 781040877 580638085 669803154 752763744 768531270 340086455 490564465 828932594 927840949 335900001 996310589 398774638 997340169 311057195 995008031 878606378 911610330 781998035 936422523 278845683 788848531 77144075 472335861 780225793 881675549 397921096 518104368 831711667 850818236 422102501 493156037 838277950 964889457 136070570 679510479 30643735 68312396 790933052 840442368 567863210 891957656 643691619 878256943 473004181 791300658 327240435 820440317 763463286 874787826 567860132 677837456 221305016 864756700 338776757 726296366 885932596 908549971 97831109 948132230 186780176 887193766 553859573 783400673 264465215 704088152 457725256 578265945 724611415 787279083 50195258 710991075 568726146 943916859 418860146 438033870 294237406 949755649 272268377 779036964 389007442 529906505 660302664 745937099 585895951 860413996 101061454 365538954 713187148 968309609 36749852 574261217 731406096 834163984 566432295 680653993 364630195 584825988 179125848 595328694 884487976 937819931 109470810 954458349 753787272 940292495 108690930 283899059 397103159 880738100 162782060 702915813 339095728 544162701 434973355 490823652 721468282 840342581 127731644 723125841 714777420 932326644 77479743 877737870 73794520 159716454 536774029 559372532 703135359 829975874 165916456 524524519 992038961 999182272 728383415 798118084 525486604 741508883 899766202 901259867 574555556 582754042 207270233 627124172 318900533 382954584 747197687 834354450 150595480 600426969 388966688 891937483 353140294 373750817 259936249 867257098 365843874 413603690 549093374 981887138 458531546 579815931 753273422 785776719 844984511 899618268 365690453 722667870 330722123 764195690 970854652 978601371 743118237 768958434 556925746 823584318 39283798 511225409 730787880 995385255 632009629 961481246 892578045 970502600 724238341 979644631 191645143 777130435 87037170 719046914 408603 620962773 550652905 799711346 284878642 898857754 4089642 220010065 687219900 933520314 723591205 810295916 293991462 483050991 395485352 581850879 125681137 874366064 145959786 885544804 484045989 624425069 802343903 879714260 368103581 685594593 155986196 899573251 264492232 947861991 242412394 620902175 700600924 852675009 202299351 648676285 849706774 872971015 412718040 668054277 410135723 810226480 72913876 592950752 540328284 700874186 161095431 489275350 383203797 988118254 247475126 546115107 372428715 636471193 716083469 841061094 16828608 455956559 849227254 919093048 435768695 924714734 421288414 454669342 53748021 312415575 776710861 779150621 350026312 497078130 685045269 840993732 246226377 361591427 935924179 993221988 484539360 808034223 893250214 932616478 573591326 691318082 927511235 982916229 103027726 810627060 121180911 513001523 814933049 943375353 67096933 489071455 811393030 950863577 913547704 919055949 776814847 908879045 817653421 940712770 430575733 610324446 655591334 858638085 55839297 615032787 489936543 622723346 157910539 332858740 606926133 626883450 64217784 180523096 353265956 874166796 493758813 771951477 742347933 786419632 495313468 530354213 685329623 709913366 849607341 925833038 127388965 956679335 503345819 800137511 698815786 963972536 938415642 952492767 166986033 607716450 515439476 994968712 289807607 374084366 837664353 996553957 618432813 837562496 72441772 212608526 968603850 989085939 978823142 998241757 984359683 990281684 780259852 782515497 893920448 979814960 931161905 986649726 743250598 843478163 756236520 979599526 5275110 765474613 710270989 937997764 568403799 828011167 684512589 735026432 284258984 871046797 381165202 491762941 350414944 806587325 826017722 868946156 803457165 885127179 477994653 973740719 773641754 893820981 551798298 614132083 20243223 146241338 717270269 895270503 674426285 918329529 191183669 221311003 784134328 806261128 553313392 664532881 534361709 578745951 833926987 952499226 102476624 935127100 541254683 621814286 468794254 820659126 806912681 828048055 606349815 854117904 414348075 553199243 35618879 791704617 626724726 736775456 342848473 520668254 387398107 740269239 7901794 829171299 909196722 945428691 321834595 579819218 88012791 844786243 102427582 565318962 791332675 862458762 294382722 464786462 765899040 905495577 386896884 445213089 959928348 999263217 829340981 868292432 880686964 934028857 215314215 570986805 908892199 985214524 268152048 347440149 805304906 935113122 460984571 847676099 930525971 962987745 296968694 408404647 429265692 749816309 18288864 782876724 383987868 980514049 566582122 961316281 417469425 695381567 834881471 891886116 233381239 893905671 692943079 989326513 761623508 879690262 863330956 960827861 911374885 981199894 726063316 932332447 222387948 282016512 665181750 751368555 628905462 861035261 90546380 606845950 436154146 873809992 611611175 825640759 187686591 292968631 718088075 960536203 778030178 973515092 910010787 968821634 162100056 512739602 69172166 643363509 174013682 353757576 345851518 454785553 145965075 548161978 253245451 995430867 282599718 649931684 492423589 901888368 445584235 552277292 776516566 909427361 876998698 938553322 468169548 827243013 122900699 884844760 774854137 974815956 854502464 988828488 150661377 415278661 620640954 709941533 709352033 792910235 538574917 646751044 358588270 519797579 682936905 876784976 120513819 714824031 138871372 303388377 872005234 899972940 470776221 908617066 108346940 656217772 211668880 231333954 490128761 824296707 52633741 200742888 287657838 987354592 374330440 905716627 611890581 987631728 525693299 854699733 577005636 739037434 839270620 962815232 508585020 653162466 903733558 909431755 239284327 847116362 35431892 170803353 156847943 527298340 999151266 999156034 888926911 901436859 532273684 553588772 613864447 690883823 856918360 958141377 986315665 994914685 438998912 782258942 149463565 379046671 744401558 783067633 174583275 863236247 991387096 996881931 353727108 852284496 894430434 918327841 636074558 751136260 512619428 711476474 705361850 999379779 137027235 581238672 966901006 978871644 3610708 961693561 205511916 395517935 327153480 575056755 977046546 989685668 126229637 316109030 93872368 212434903 719433923 989931465 39182127 711814345 348024335 564822072 669396152 751066920 342615132 365867003 479427829 895866461 558042383 572666827 985278206 992830842 499245674 593844648 763061418 833836936 166908569 186618445 557579337 589017463 515963774 808390263 937899013 962105245 646523706 919572456 942962532 963424493 25770898 469708683 322822396 952434519 467053771 990151348 755409020 859948381 813988386 898590390 824941882 911624461 834263011 907618621 930859725 941480789 395444176 430270421 839806618 857659899 822480768 918548796 261198464 470631075 654816055 665480385 199392272 462252791 873741383 962143343 912798661 935031623 73829937 872917918 470238969 929496184 588708349 871959472 545911023 557157450 902115409 957462408 885744712 939629162 991563282 993155484 825596181 937742650 382291390 468252212 30127628 410315036 733911851 764643622 125953328 957032656 765683334 957737597 373332174 646951684 536105241 973408682 776282090 965609123 394236093 982403866 743492077 865335095 867509987 943512746 765181354 943189781 904477365 993324989 573596072 864238478 225773774 955815151 186995045 781376396 280343843 832117517 133345451 176924875 430665922 543568625 793671033 798142934 33291884 447694251 705774829 857785866 530196501 932675229 430258209 911761235 873443806 913275052 207424421 925076443 319644692 764063798 248217452 886410072 566974089 627102327 810225575 911671459 450398364 679017365 335595806 746580656 533879007 778225760 291370627 558251143 739078229 909389895 270044759 275326662 493094240 932833802 509229497 585925020 398370923 997018316 89940984 859541088 748176974 832365292 725732550 839606607 251607642 754982048 652960906 755634581 992702081 993447357 61347639 921594897 524275063 697158470 834961897 911737377 129956277 502836815 270335182 530124651 277460627 331945477 651138530 993006540 494387398 547032940 636978944 683342282 635271996 704806621 171707414 837287341 379221305 734839153 632430979 856983904 325169835 664282638 469372556 577317724 260441937 606799207 910200474 951090877 237045734 905178902 531505435 989871976 29928097 405677054 782945048 892991884 797261589 897170979 126567993 339899830 752644493 903321545 599857469 728164303 208439083 522982919 594557071 837170516 669922649 948858302 853642938 893308227 892812888 977161607 28381760 142569018 919673726 964236832 963063708 967074225 721141706 799201667 122589970 537976918 9318895 992699461 762549501 902774952 551594025 616651628 185982523 810059247 830592037 860027714 585248480 746882023 98579586 215921403 93314669 434941994 675302521 980369675 433966083 447701614 200308630 454058197 257925092 552837203 571652023 574398321 919438855 970757888 770021572 819413523 476233276 893741262 694542137 740372660 135568073 983003174 413731247 936905313 566754519 811156135 600841031 855688246 67642673 277315361 858689022 937233756 745257010 804082682 228315233 602470255 502738764 658988984 155101169 363974285 897047450 909720122 29707125 924626478 245968509 825672649 295648713 619338287 583870505 940311852 243744909 554300212 441190153 752162057 875840538 921202752 92051063 549753832 587290381 992013502 129207908 454504591 603104428 652916320 449753360 520441538 731281621 777627190 637649178 996338097 280577931 641843711 829079578 899749972 176887773 620886485 165778801 532230691 277702888 454191550 697072821 699822401 199314146 487948307 343775620 844518998 529064756 728900085 274833351 829516982 925589995 962729165 71905738 252939972 599355202 997869707 163673352 672061885 190287326 215277786 284919864 404911702 825652894 876622322 479918193 888111135 67740321 74285271 223687026 609437647 709049129 935779012 942715395 983744565 304612406 368069372 600039970 783384440 571751357 943958488 914561330 965553291 514299822 832465133 681164567 749098469 187510281 820209253 677115657 850345585 483796720 838020590 743637783 761961063 532815526 590498729 652128548 664539413 311813711 806903593 496939314 651618695 523690902 779473866 320206164 390246576 54789866 807221041 10558797 724333716 757824250 845708856 702901802 787167146 499747925 535801825 949237077 994679441 348918108 560971706 119993788 998783819 764685179 948223129 110274106 783272637 945357349 968929234 222415435 325872375 459030089 846385603 287915153 581004039 835290971 938570106 403842879 571636337 511249896 788175948 223829998 303517603 458262344 867101235 623342608 781771188 541781692 831954668 725468457 826607781 388059357 683964445 900713119 909920978 92690433 811227651 965339705 971970822 827716521 912440562 185400224 607993817 638648513 756464521 676086108 721055000 482966348 734070349 754010168 945249680 917127093 946020908 588493702 720748699 434259232 876441887 552818524 766593929 838203247 996769560 36396898 790629331 424200588 475064236 302791121 992236607 654322105 996345131 247535676 580642562 986239575 994131033 988253133 992161372 53662297 959246414 430311000 442190222 777573112 842938618 435530084 856799001 11868160 203837699 600327723 746428772 213033148 920585125 732728764 833318649 855613971 930044737 174057239 436056947 8736185 453637968 129258149 174474566 620990937 676673761 218968671 740987814 562802589 782814357 319891813 996758919 977438688 977506636 453478742 773305469 322771733 582471925 230425772 566868106 857566503 857876960 358305619 912778402 368424018 971154086 42691974 776738002 228402919 455457433 193630537 411847410 928882850 982759808 80760374 900661036 290798896 645781895 939427328 988177632 26066310 935587800 290013301 602007021 932616978 977832636 682244750 984284295 103862174 445206975 81059551 857020884 240173319 537528284 419677276 710156880 16422884 795941572 985329024 998801891 69841439 531277341 616856407 978428242 896258260 923258298 459520871 962018663 878485574 911519643 541875692 589321710 946187092 987849095 45974463 769252863 125997483 239800903 557826724 847708191 583940331 671202716 122983401 571268036 287680492 651004415 943360160 993618296 37408910 951142213 87758081 247624623 465815345 697759073 354144197 515985512 851212242 925327921 470951837 551237879 20183002 373586407 6343315 49814853 76606371 658063854 246508982 442978625 696905437 882284221 60857797 137454803 48844939 171358436 736517304 866196164 482227926 523053337 334335123 995035977 869017086 910870418 769267121 779017121 271290248 582712574 663791710 736744234 318546999 907239744 756239288 971763552 427521681 784407549 825649478 830793315 681120168 984761911 932483551 986729468 960019516 978604328 163597368 594128448 519366241 531567987 253383199 753279510 68141568 983123853 516733654 842787862 475394278 808689389 60363188 996518576 535065101 924218332 393694271 606303868 327241739 577619466 230609674 373435519 134152562 875885420 448613425 499719449 854770323 925110923 240426862 806657556 83175900 322319864 800904633 999108582 967530585 967767881 908478121 967076775 429089863 656771660 847328759 934292085 665900131 987868950 119951015 329357654 228950029 616367534 261655701 848254546 540846532 549337525 77225499 189595585 927386414 938353160 865668192 920523088 484866357 576832220 551302134 767116694 758945576 813011480 893513864 971975215 798678083 923227129 212436375 979025877 618480204 820277689 426977502 574412840 579988900 603312897 834695223 841506117 473016070 535570183 945324779 995489820 434539940 539073973 478174276 766444262 912253734 951068621 76535970 641179162 671412555 697067648 611602687 633617727 821083957 978275934 627989849 831991417 278381281 543021844 459575350 508494680 459344620 768492109 733445164 974817103 98684211 279783214 962541475 976671189 238970528 745959157 931460040 993154426 941613393 976868164 316934936 488053086 472552102 920372959 925876319 969287804 795732678 980672218 699663938 724927963 594891895 930463201 203483537 290455267 92550507 593342899 203254975 730964509 391817337 827298481 414072672 823006973 872948855 923243150 773998635 777343779 685793831 891570053 130274235 181241856 980067136 985112666 648171798 700126817 184253690 881168185 335296450 678118527 182490868 258240938 680158862 840018090 65694137 994413631 994361533 997116139 410065500 922760935 215504089 335093209 591841077 794486809 181424031 841481359 95744004 712311349 660495414 817538215 340898606 408733647 175740711 525904763 1700294 239575640 563764806 767136180 158230677 829315081 510903751 782245864 535787097 674171579 782441683 876527354 753315796 993003937 79593064 532124482 622894438 767041991 987369087 997943598 180875064 985585241 701782006 882216844 956860188 978613421 682094016 900298264 168072090 354796780 309424741 653508491 214964894 345927140 487202757 651322075 856483632 899798503 527015027 718006807 834453194 873532859 973943515 988306404 765268152 883102338 49326084 494760340 314171550 620831517 814751856 964496645 673083072 875676070 829050197 865734413 413689556 957012622 474318554 893429163 712780748 870911599 426196138 537812288 966745164 978302445 619907530 670292927 372027661 858990961 336451897 962425947 291929662 990790243 376082792 624939850 479496926 769086875 455528382 606328949 232935680 303851401 934534953 950836495 201507548 418547252 36697850 254730765 427478990 934716545 261930442 927577333 975319150 986171031 620340249 824229258 542554374 871234254 239817265 916821844 872425749 945577375 931986791 947942136 865093692 979467589 257216980 630924971 741579091 744117523 711817902 713099012 757415735 984809507 756423747 772830059 336497951 728913127 474981763 872291721 981955082 990410588 47697396 974012871 690893329 805612699 642439609 714974481 205185575 218723064 370459416 810473619 828043626 924838273 309693926 500470615 226232838 608617294 873395793 925377490 621422684 661195963 170492704 525370875 607441867 631993050 737542236 842853325 753082208 986509560 684701376 965450280 360825857 369281477 651062299 943729312 779657405 959042738 506934020 735846609 921923054 936467801 792694973 918441947 695692309 798040340 924856809 971958966 759415699 929533653 913921640 956791649 435119276 944096882 96310411 498456591 974848126 991677577 331884288 849844241 51314265 682630954 877146691 939485959 48651368 390404674 351943782 409349434 780644237 957644259 217101738 511013782 548433613 596422961 558676275 848907837 922889607 939413805 567097205 619678827 199557067 610664675 563463673 888347279 343368259 607517153 628746532 786499244 581577932 964967556 89716125 964022975 814817994 848780295 378550565 907728026 396706685 870644214 48252346 63734102 868056864 931709476 204130877 964145898 184215505 935794493 268020511 637341836 352804873 826373667 358148414 366474575 947784214 954139513 708392364 978957159 621864410 672752215 323002835 941300960 104722382 383626543 132049426 971873420 971467344 987445223 879027597 947084017 443575868 640174058 6892032 43167359 391990357 796545293 157712006 998170836 465738652 901958296 961046563 963579322 217188169 689643893 13495798 487737288 814815275 838770260 179873192 365566211 700988310 928375902 95400449 588562438 422288280 973647120 402573790 981048278 961273590 996104567 225994099 806565582 200681920 812520172 172518228 976370239 801143426 834884134 283067361 956448974 90568908 756673469 274796945 417708768 440137151 816061312 938631380 982964680 528649354 571410118 357060410 851307599 668358373 919828068 429365724 837398367 417389369 814328710 36133167 423334806 977563132 992499930 406870197 584681770 538312609 723989119 311349019 707401019 350076080 958248339 972318879 978589623 660410759 841614148 421837942 470730006 946506711 995574344 505486305 722571125 81162062 438509388 656235739 802260098 349789184 913009244 342895906 911812954 698363640 833076553 471095664 832749300 558118659 933165256 928862699 931120046 948439209 993519842 322924459 824302782 459703076 852409192 663213625 786976784 636526954 871208035 846329084 893261237 753120876 970564165 996674492 999133677 592958432 616099584 183744005 928820474 481556531 626671558 285448440 914911803 354581013 755359916 769560726 799784011 878912254 948112379 979772491 987412428 110988498 281924484 592421233 873780425 911387715 956792782 416672257 684023780 64262165 416428611 749108951 865835157 52803929 939761039 658711916 946513856 51488701 575625927 652664618 680052419 606950407 981597572 642741780 992123817 481034944 790209435 236582204 919697205 286393901 980082053 495440018 893106296 488803099 968339062 136417019 563764919 2429770 428120378 481824743 676241482 955114149 962386547 12208465 18160264 206758567 619394443 247506542 705359880 420781051 956108929 936395586 939248177 791249445 873804080 150031500 808081926 33745131 292949695 794409024 988484236 668989197 879483058 367439432 769531572 646489582 918110355 533593931 579877540 2878082 938019579 132971498 799960862 585901671 826796216 869112204 970959115 971691835 998692465 323917125 364786569 722075658 746558216 7603996 141195266 11601149 666681753 767306047 996617218 722551998 900462424 586126128 598668623 410269311 893538232 708941518 800465072 234788594 271640608 783897847 910127352 437700549 751945867 29576940 717955998 996961867 997151942 513654946 700543524 695090452 766892786 30050905 311689723 307595513 641997958 548875622 857720645 486415076 490053924 364844771 944719886 741633717 783156032 465841396 830444202 873531108 971914880 747894168 925680426 555774149 929410509 851284195 897944251 300136761 950996781 359083966 804488008 529606916 932581605 182301339 951420144 481906823 887178490 489891737 623110514 30664408 260601236 542025692 981394630 407715859 608529961 834185450 866626356 636027993 860105267 191004175 907565393 609638817 847371386 189832418 907173535 438675359 504394822 326454374 988245267 970372542 980829211 222673884 845341680 366316126 596982275 932420003 948995512 284345116 762399473 505717965 757961621 484403082 570827007 528631388 659291388 549414999 707343564 436487528 841879407 343888553 833202261 200161022 341735512 271744570 550171408 862417735 866801025 268103950 535481963 493663360 608890775 926303781 994521326 914421899 991907401 631137512 652579833 446525766 984709033 707598812 722598717 155388205 876059162 288752123 715358916 900010373 930882676 787408756 821174693 450007351 943348217 436560532 692665775 985211 769687117 167965670 925710240 385630061 863183201 141755503 766533987 789179282 955495985 378800850 798873329 937514335 995938817 11043432 392582225 413115437 623873314 802103347 939166679 618371969 658395332 911986018 999072280 335235176 398878002 796279758 997415468 958284930 983850751 529014329 802735623 764776734 828442889 876791636 907383620 779386449 844035722 679005470 946630421 299332203 604799503 439303912 691830716 625566677 700130019 3288394 610386357 311189202 835275777 934132571 974991985 800455685 820539029 503133943 673945650 380693345 582323394 964707494 990001510 683929068 708551215 212076470 390661043 587996645 680334253 351243738 524760619 445367032 776093513 582820771 908155603 988747748 996382467 771929521 825947306 40062132 891356567 668895148 987261748 394548650 656928683 717746929 837760083 574779374 887652116 240337118 779479296 786522804 944359930 576564243 603883259 201285706 704472461 965804405 988507165 332374460 441817832 612252779 619456013 133176034 268219824 165661054 594047051 389537704 771061753 440744185 478738466 447768813 883587804 511326769 636633044 604681825 893184689 771302804 777630119 44604897 225357757 961697203 996796133 105760346 556069686 270927505 720313632 831380223 920158711 875959907 927795911 137884438 319779078 162967664 383752514 227259859 569121500 610582412 927231131 562616332 582447164 403625426 649058881 445186903 813374954 760541308 856498220 440997269 590638923 914480307 961222788 292995994 379287051 146927288 972505635 693533484 742924015 169999874 760650663 38364551 321803190 312611905 497244747 762075032 829441173 837427276 949882425 544712508 789601984 785750921 823480927 680633287 719423437 224881252 779148539 631772967 693684895 357138699 915054209 640760383 940550792 75726852 776749791 399654326 671722062 280283576 680059036 941654112 954245358 484553612 951743138 827564225 900795138 948930392 994371612 69038046 553887509 232824150 414013716 146505492 447481426 961045316 997483010 341194232 644512650 98950250 817513864 492286932 738936467 953083639 972678414 877268053 952623000 687682930 931965836 330999570 821973130 865132548 999304347 277223484 766768005 110764155 505086337 865043754 995361089 933917676 999346661 692075202 699561615 647707415 845476558 630528043 729675846 253144462 646833294 721591756 842026016 606652128 682908001 566987077 586961276 518792491 520993627 319668866 742234263 906974593 919783047 261624351 612251452 895145721 985298246 770579021 885191428 220327853 920292983 295117634 848283279 31379512 349824610 724008190 855376860 809653421 854323469 81858062 488316905 368871949 663781482 559220472 602689767 982233634 993965246 776206283 801868609 894175668 919352186 559232812 776192753 307375652 426733794 951142332 962825497 211651130 510314493 401245156 653184974 874273121 977226490 572982277 818039271 529643782 898925813 223461437 501480342 109270842 950964573 737815161 953405773 595794520 955217792 77271233 898266148 393846543 653321946 276788534 328758372 606701070 887855569 49237385 864194409 676908725 898260557 526199939 992118335 469309989 769541343 475310574 581635389 273009438 791204512 775546285 913620116 601125636 739357647 963063820 970149957 793948603 829721361 630316978 722472487 950391122 963141659 881412956 882517399 288855487 507027209 603838941 630785150 492312089 626244571 258550373 658024261 4533255 318364241 623688219 661464462 240101896 695600529 112477300 366873344 190479191 393718210 643506952 975292323 417884071 436164690 662627372 866551812 635078538 986668704 471658598 547353857 671686197 736525546 103289548 835328969 920419448 935564787 492592016 574542730 961777536 989389986 958665432 979680110 705037803 799862454 341174412 470309785 891564717 946851173 300608569 410978646 322026485 566788601 855148939 919173500 553838235 990810654 91080981 831576386 665787942 925770257 530191079 732834764 447782558 963150832 347164565 368343418 104280340 808643865 530606825 596918315 39509296 590324786 963125128 986628900 124525833 348465794 789653957 909238317 338249299 388686117 180207198 536891532 854815595 954416821 251836760 654489964 78736813 272972388 555100198 565386620 630488206 742435575 6359827 222601880 127456868 933543854 449479699 818388353 457167697 957754705 461723017 879544330 304657118 945526135 821693904 827901706 809328050 959944718 264991300 814906202 114414504 671950037 521651334 633921549 210954392 970293484 941956442 989891256 569295963 922409441 419237244 888972008 800648304 822622929 34958615 559593054 916258870 947207003 825949212 924334819 557931610 950444357 240348745 331100048 580699349 857706834 866746206 897784966 11273659 850432777 352587142 732334549 649851365 981785079 114328687 230149015 571617760 716134263 857804733 948351542 331150936 614981468 410194931 842833383 171330337 912381117 668722229 700513965 683923192 741474727 891830535 929978515 490484623 586903829 161739819 646817863 236664038 837796925 751321547 913406016 411141883 844797988 74008722 776235227 669229622 862886280 926831725 985869292 291067732 519642974 836379713 935235761 685782204 939089532 177617628 308754500 24548635 892178277 507741215 633246329 752285589 835245229 353528076 371640061 695236314 776981916 520793025 762510439 656045191 796260400 559144976 637343032 837360469 891461232 603266569 821031886 712372744 991210192 570409847 582549358 353108858 788214867 591597618 874884501 695848848 794673236 944634564 996562238 145674179 614604934 78165848 807349562 370308761 673881737 696159103 777446565 186184417 825671485 570560382 690237001 414865953 688630032 973227914 974341369 954960618 961312875 923578938 960645951 476805586 519462725 804756671 961082754 545823931 864947970 350577999 461395902 477485594 894785493 348480718 419426015 923551688 986833535 45763437 969920796 687181653 702143958 678026642 923462633 760249397 768536973 716535629 934337340 453638211 616929894 407691327 503840319 633733303 756291578 43096558 822071200 534674544 607293826 860796054 875688830 513572309 663520607 18283716 317583661 75619065 557264924 828769052 911676905 615939212 871135816 279441357 489948983 610157832 642245980 620761301 956721693 89890491 676458021 695580089 755519972 144210073 533877894 260049339 811073361 907701748 981023563 602905062 980134485 631765732 939039029 542583083 969966847 544512310 705522469 736474278 867247263 430813175 487090346 398757001 602989461 824716434 949357146 972563128 977043489 782428680 981916215 761740036 879098403 363246102 561422077 510440401 927877672 601165584 728206687 924446110 938173382 426398738 565778711 354252308 686085509 619924578 707569871 899076262 899759630 437939770 871143391 928413360 973738174 701183892 753286487 271725875 676971482 749060822 929448204 751390780 935448894 285164699 940442982 701610103 974389274 547370902 757859625 237470970 945972404 714780521 802605469 559879358 659053014 164521308 542691162 568555937 719667552 251648810 384257254 388523313 562192256 895020164 993079412 464744993 904934391 648693075 690145746 478949937 527976150 151883765 814509916 227880842 273690743 194507570 629949885 364026580 459543083 95982929 758247456 96186566 288741080 430384384 693508347 798279563 958559449 916638564 963315546 400868540 739965336 202660870 362997473 846399821 891917399 3228553 216790276 627131379 943137629 279879319 707268758 537804450 848583522 749614729 929988452 766045412 790679617 527527809 737618433 597311046 745492158 175649805 916847485 359642039 885694490 307030736 581534320 389603200 604489675 89633379 534877738 357763101 532387991 683512636 787016945 32143251 847366773 629323432 841851941 80718054 764600074 210096126 312742589 749619833 857309928 323914399 442036171 800492751 869091354 686248524 757353562 843228801 966115893 649614188 717772036 951690474 964826406 747428308 985448665 210996961 526737030 66751743 221254577 422721893 948850004 816214633 964137591 982159031 982464691 989995736 993528470 831864471 855349499 8886291 986647260 995250150 998673233 949813626 970097362 478949830 876615536 759094030 798921998 9440174 732560173 204115806 267073611 508069301 828271524 459379029 468385838 189484573 862890652 187347611 672234802 156020927 642806057 355016399 717309773 26985464 743367710 809388034 819122604 590378919 704590358 718377962 837500111 658020564 788731438 722533659 943916966 471764278 984661934 981879018 986122108 494925216 917922111 960325000 973062919 157737473 201747196 583989223 901598127 587021883 871847330 8852293 531946844 496380385 792413615 199866521 634155454 474882966 966798244 357153617 562298077 891141683 958649073 468686392 808882907 957055716 970948005 182079915 915493484 210133554 331245641 942468592 950949000 127467335 806214329 901298286 985531783 233752475 847924581 882002126 974488595 122551971 742462186 741016645 829257208 101337250 326602751 98458261 552415708 226755858 503363388 524735432 538859485 460453166 795340438 337903900 436138659 480767186 658384124 727230424 767657774 82603881 945315308 586852269 950789147 863460943 928172126 679377976 925014473 112325513 833387736 189958835 777026296 504306271 942581513 963836478 983021038 735508237 778676685 19167678 843400887 814302342 940485776 34065097 238727335 954065627 976802575 240891715 605084678 264448367 655584393 391315723 931018925 564600962 799975505 835279744 875043213 882038193 905607864 788141426 900390174 213770243 762251849 439954732 663187299 23940035 599119266 502677578 984316353 350182827 864353248 735520919 975647560 355793566 895175727 41470436 917071542 530118703 621948604 9717526 702572892 22133234 932073473 580873306 628884308 618839093 716851251 691503327 851824571 643885834 790310171 778666255 848960355 337707772 526820128 385072132 622680329 466070931 849957253 482482707 716903521 785268766 890022439 86363732 514955823 330203520 980891604 190572171 477141132 221350291 822693103 290323960 476765048 542431016 640226784 682876554 695739211 256414948 777486420 349931319 826380566 101426779 707524620 543745819 901341095 411961423 821587152 179173481 479137234 453499737 564486359 343391440 451243950 342535032 870337140 407338818 763647037 222311160 424429744 823783866 972347110 981866282 983780384 496342037 827304977 775705388 991273110 950643802 983026624 735144857 922043959 741834717 897394615 154100405 415113393 571325894 633512078 941448625 956847339 733218443 839866465 244535684 686692068 135022769 658415428 876372385 951261996 787978242 928533091 390345824 837961757 188367093 633570076 461946503 806731085 530404373 626451649 955691589 965586260 642557212 653256678 653156697 751318769 950381556 962442559 173422727 850536820 887268774 992287790 382747537 685853767 707868883 713431767 129280136 276303500 411913738 533107220 866609046 897929327 325630904 688275529 313717570 552785035 96404518 155452480 839101084 921892948 53662054 217086495 602743866 861818759 968797827 992099556 397557064 599764972 174479581 898060092 586180548 971032376 348840338 907743402 509289830 988395970 704516835 834042636 106684228 701535495 508999861 598353827 66764820 731393274 950952450 978680432 645271866 658923237 629522421 963423470 54106595 950527998 564779204 901074455 256445783 904940400 418264501 646041356 623898714 851534003 292396169 747118451 999163377 999201108 395710780 629954808 357029883 658752101 770000490 979452298 763193530 996732207 542464285 858584512 812334171 994471719 299239453 807183001 437280314 542923844 225933915 745169733 18688427 354020398 537274602 865227785 992416274 999018147 441511562 650921045 653427927 845228303 800441249 935260425 238903419 676424715 380340849 890503918 303052412 965461103 315633990 863348432 849792853 982296699 528021168 633006623 761421871 929997110 327488995 571566124 260697389 308384691 782239069 968230931 623760585 679583708 192909785 390474044 714656449 980582989 579533565 649950771 424304185 549655120 833411098 897506966 810717921 958270884 308710640 954249197 929394208 992199564 398767564 938657541 397253858 975034550 798694207 845791368 23112305 721170374 32646835 568742556 527777015 720754032 264656637 333934006 279305038 834689573 231844624 943246157 126383829 477882160 816413593 881797031 188777109 924959743 314697356 570892264 543912847 835750908 909025621 962252183 748957956 831612466 323539298 375316149 840274616 920322541 93451908 736061589 756963300 835309513 803254483 937688263 49006450 282694629 770598322 922226775 162262308 182536924 839063795 925714709 656469898 870386484 149969514 770786564 605244661 933671605 294528056 681011300 302602090 762986173 707097336 957946755 385326458 757945209 707409156 758247888 751078614 987210029 333876633 788958825 901639587 949289292 235563613 988593391 405554020 430297544 192779593 631492370 87434899 350781602 597679002 777010806 635326021 679669390 951949595 990484629 647566032 949456736 776654610 851994674 192097599 788280578 263962126 584641824 218076789 863160623 535918415 835634979 659029983 702949213 924388618 990402295 538283294 642563783 969117643 970968865 545586029 815858075 207497343 843381751 632150423 645024535 220307245 287656927 904309101 910914456 735512548 969094840 673658882 770081454 833790632 844284661 158624029 334007097 889529218 998322038 879652006 955949545 381035188 762183392 311131914 830282281 224051882 767888587 336586305 704260370 679891445 833970293 133366206 193011142 828509637 908737295 946489756 946827347 382763734 576694631 671445151 824801584 993951675 996340009 615938571 663282559 187584280 779181805 364788056 711105627 701581685 891815824 400911438 530645275 228517605 503797472 401443783 553072984 717307023 821160663 983015424 987225327 158868100 501217133 294102172 987352834 625871804 883519661 670711582 793375769 719611671 889550758 443088714 866856480 336144521 679993629 765374645 888294873 99212306 512029407 59440043 625255198 890011629 914107058 832279730 965840309 701756496 866094708 18296694 601352244 547938569 938371970 397846440 632492584 241132144 452611604 380989484 390271627 841813407 954756354 90120621 812309047 987768557 988328182 990962547 997427098 374844097 911276653 144815874 326378410 563104663 581335455 864709187 871309442 877017908 898065964 439372801 703684820 997594308 997603115 329800129 464856397 903570602 977174602 367937711 586140271 78440093 758176345 623759752 765805712 986788882 995197855 757368062 770117393 3772180 296137808 979818744 983716143 286083972 454029121 278116667 752596329 322072827 776272528 15962041 315291454 933125595 997483758 883899693 889811831 450868186 905640261 402162624 580929844 844844517 966588565 703527749 806735739 933499190 985396875 521611018 604216072 139040509 246320670 592313029 919905597 84760583 890301441 693185057 824418082 18620849 134018958 179666407 735347730 3062098 561878462 90277709 123798054 20784825 932626799 766905779 893341108 570764024 869182327 885726930 902044945 930371404 990815736 755279901 867182434 254574659 469684295 901872030 939071215 713349281 759670960 200565685 494234058 574038443 728932455 83570657 318927292 231952483 331697049 822549741 910810460 667507712 865638190 678668976 716939569 812625408 929224057 531686237 760112989 167387586 512944136 835001228 944791582 405356462 668584917 444765942 955653772 864146728 926227245 527311750 728313909 661081815 848930706 913351523 976458131 387210379 480079164 929893446 938103429 635455603 764368317 436244973 776236816 341459818 694719244 982226936 997533176 570258069 935870133 380682117 636020345 615268268 871301467 933552210 989516900 641050427 832457186 180888980 299452697 410918533 902133876 533625220 949836855 663305468 675869459 272270588 326369767 849231529 850828380 724071415 853351275 857961968 880896008 301236748 494743151 901819484 908407275 690983320 867754044 551212561 644235084 813963852 863505863 624088066 664205470 12010134 627744247 144668194 371067908 930558000 990905171 556827202 990304019 67106748 106818030 182434959 455868542 8960449 863841289 784766080 857236222 539327467 941036183 786260953 927110143 698872677 868732950 7425024 566479274 613656752 769455328 218006145 857906979 43734373 538720325 914717981 988425097 608517353 636480972 421680698 445965650 7547218 296975431 906415055 919954067 765338452 961749753 561644379 596327044 391475041 993218655 615824402 857090296 825918572 892918218 177855358 874820794 770298511 882201235 31389324 249052694 504964273 859512956 318667380 581826068 992658877 996992431 705275266 713734440 383244507 866759121 231169972 693428441 564767191 639951674 341863646 558566125 980632500 984662926 942986784 967359693 447127925 760191168 692883715 763824804 736938616 954497276 514958906 780088515 567614365 898642038 278302423 862982178 367102363 648237630 446227817 920693695 497894473 515509162 217335674 596772249 871355390 966870642 223826795 626933234 531327808 953275549 679806366 709095300 35117683 966066691 119585675 826905491 888125171 922600485 629118430 957325860 771099941 936085175 225749960 689772819 340879933 759628858 537840618 988698710 18279450 829613286 400876277 714730591 564738975 964180717 750878698 996948975 280657771 456318852 472561324 938496062 254742490 364387139 52967968 618541687 317261065 943503739 653827883 969644264 813576348 859667394 530261798 722898622 403977968 770130620 412915731 457544495 872676006 962486571 946781105 971756831 551416551 779605987 817659007 840033603 738268455 823644739 968850116 982794897 109074465 754592260 425557730 454270504 541949512 583365912 671033371 762804414 994719861 995231762 849659273 992500011 212271727 753059341 253965363 422137464 190514470 767153983 183273492 264772364 646374326 906813795 450529803 934825655 928413006 960953760 275616274 454452822 315250666 595108347 403950873 465628019 41609778 818996444 341435745 796250726 396906283 585183889 533788525 748834883 82830960 273959354 563933239 976048140 188586220 604414900 52318461 747879262 175562750 939404678 713299824 820021140 971538144 974913686 453265105 849855997 477742640 550070471 137935320 828996695 147180369 386652163 248525669 439179998 756438316 887328733 429777893 542988262 912880738 947767797 962753511 991295429 242596569 637887401 269214599 338439127 203384570 954275766 416724126 712232387 577937656 799554520 602868792 820226569 342849682 807774333 355507937 431842409 758628419 777081997 881728552 952192493 799584293 872805343 918567601 973395412 105293746 298517562 883141553 885028302 834681650 921920492 265125925 386082490 97460670 222382136 693026653 732765030 293871567 407854958 504493333 685893633 983752480 983816703 559419719 657303628 782252087 929193487 844135010 844890790 993898427 997852516 338293799 816068107 368212225 585272384 300142451 545811540 942544560 947123561 678713200 755913191 841459487 955585232 794077362 940519020 659287840 824956186 824604060 856789486 436066328 504772245 714118913 778423866 539881172 639285845 224050873 590305470 757805583 903431869 768663629 986331458 590279618 691433991 809645453 957404504 9288331 565303306 6579673 74049745 456983483 882478845 879571510 901799179 765003365 841825754 201954146 531795962 283439713 285734520 820801167 939712971 70543209 517559016 104627074 665988092 406847776 954483130 185039214 503262543 101159100 129924634 898540090 963738391 40297163 81186932 359892754 876285804 493944777 856020839 348400804 562931655 354578771 506221698 370940546 921785470 576626630 980650852 373339007 629715360 55738500 605123880 807001413 871806121 791922060 815424917 826413323 840535198 369365164 522450552 57304975 498084083 140307909 985857246 533123330 622048845 985466796 995935206 492390293 503097874 883130056 935069147 751602996 981513974 745371210 962305063 452681936 500618362 321236956 587302253 15307807 818431077 653263136 978630464 844242966 867867967 907471652 908927620 212657193 909426317 369860357 490788913 6961271 694555209 227871798 686920784 673351112 695177943 872670733 990523946 783502546 888110006 285565468 693320908 659807928 955767443 646503726 883113592 379346993 757300594 495864751 951867690 655325992 836950731 392892879 957243456 381745073 385716847 61444441 538753111 284334025 631203294 368620244 819507543 505000010 924989677 75731075 328400186 757514123 957049309 92771240 259105807 4516073 510081873 521096966 797731451 93288480 619354987 264103536 643817206 339148466 553787414 668367446 706772492 848458543 954728548 649803863 728735945 242431300 853131028 471623980 632695923 258750838 644463165 103511985 567077703 172790645 655243909 403872496 609427619 942611372 965943516 772493900 790505715 126128840 262358045 813929833 905908978 981573504 988729701 83184983 803297064 541351384 686454005 668107042 849908900 194992141 323789080 687875216 691963380 951617848 965672979 509496864 661494006 758640324 903663155 669720839 965966172 448390743 641283484 593546774 698565357 613858870 709954956 413667379 623394365 831118821 944618484 913689804 990624066 562542891 722853984 748958439 880754277 554724453 672100972 635337380 900759065 130714360 131992041 85974209 554142255 662782681 992033155 273472495 543090689 754331637 756445430 287567987 943942084 878288976 999387547 972452910 989791688 971442275 997133440 60723174 582234662 947040977 972416332 99269028 767765910 658969103 875579362 967965071 983661216 279528091 962885579 848870317 979149560 838170342 931393126 88474564 259911064 386472657 982027980 166035746 774625504 795527449 991935242 743047087 925312190 426182848 857442909 802494467 987347295 983282163 994056817 41178180 738927389 481283230 628955916 559187875 782842230 842780636 843011713 819107765 948206521 528907549 706727349 749828370 955673245 688196503 927460485 80897653 926350443 159579466 520198537 834342229 874998976 79568140 588108208 996380777 997354319 753466789 882950399 649400948 829994290 885738962 938182142 741328813 979629458 501800367 589743814 563609831 582030950 430190250 579186686 779596980 968238902 734881509 735211070 421063285 859325913 797131805 869871953 731644534 776994462 784171943 910067565 71241948 840672444 905628461 992054992 853974219 919788957 161245789 618138124 567937621 994175808 579105091 607093471 577928170 763010327 157834799 608596916 799825626 897386439 958864608 969040462 604470518 930998510 414740834 554119758 51728662 515737320 152576513 859680153 604921049 926356465 486543492 868352881 632005350 964520395 463072966 813338886 165904437 201928998 79180797 927209090 99642140 209454256 244944376 421065733 211163557 552458901 983378467 998622371 19102803 218064475 791294378 943866889 765466447 870062055 982032087 985376093 370771555 609723255 616386327 905855060 716447394 905390779 673110862 675779152 913313046 953487001 106007607 353052849 371725675 594151231 2496796 221879365 400903888 796392650 986430264 986712050 561671784 939155146 643252229 663377332 590280034 774627005 496702154 787761906 897507498 952496723 532959430 618568183 705878621 992927343 532045596 990901438 752670104 969182220 548194470 761841101 334780032 911996543 436832071 950674149 979435128 984702416 301030392 986703973 525685777 798091346 879645086 939838943 194374544 791105268 303782922 710224406 87619890 899616150 536891370 730703148 138421166 528715702 282996064 518523383 563509742 772688378 75516396 180765582 178003839 858564394 27371395 961468648 927901184 970900719 767878528 775395661 326951286 893861385 251624142 777454582 335541995 793156121 319052267 810489440 352527419 945457366 971812070 977250557 704921564 881127797 344586642 499900583 48506357 128072350 482011913 646540522 481221153 499365758 3755711 298700593 886445350 926390498 281800792 881303031 751425620 801505105 532650769 927004840 256615955 308061421 761239051 985802253 665363034 787121381 981950797 985336599 59467147 651372986 532605568 979483817 802042776 916522395 140718855 287391188 289248735 563070242 789306000 930689332 220516518 625310785 29526958 265596254 261175708 449175288 684878047 736313420 207829915 610474057 892055293 939100639 545678319 753531288 152038196 681004600 876832508 980789531 107473639 457225175 895565062 978233519 941086592 943566702 693075129 731927932 314026337 814938168 567775669 970372885 416436026 872154144 269102086 363466733 606794167 906704705 802779487 945084688 67990371 949971675 380620960 943926546 460777978 580762897 860369655 980848972 613918598 970444183 242750779 335061158 806090023 841832057 113639514 197906743 509706818 560465016 323855739 777236668 826803071 917372788 513426339 757191555 450738631 728410201 913135119 919537281 153534723 971067742 134801711 528482707 228975532 673172764 401271623 779696810 403969959 965237672 48581914 171159354 106580575 388998958 99317138 486138070 405872507 672232538 337791783 425046605 253238354 682496419 325614490 901536284 12237625 958527450 500803523 535399815 320479018 646176028 844985268 982783839 979745389 987269100 882595466 886095990 201985426 252297664 505686788 588459934 510534945 959829074 630245540 896572228 395063875 958099876 892132263 954749149 914488454 936476217 342220602 939313549 138259892 359125275 371304561 961579659 292061916 612331482 703791058 798586097 606461340 831068366 126076227 509271895 404045295 491881214 628238380 961113008 213156567 918005735 6642248 413985881 86569599 499145165 969817102 979926757 633859651 941020917 397592830 573894947 878930212 901416963 146653174 670533200 168226724 619281873 631968139 981671338 927296629 974539358 317564435 922850065 865806778 986596869 512491169 985811342 104187488 594330431 548596085 785818697 801193266 840163241 467097725 803486426 727322510 765800181 174131896 761421689 67164567 846538184 384511839 828983707 415235618 960540134 553648849 691226827 773255431 954015448 263479795 304187402 573197931 859262081 876174685 906022639 209612721 531936282 539973032 827737578 159976989 252000667 986928488 991452946 624902009 995865925 151783154 218429258 27715738 772023001 274953381 888830349 185159818 941724830 282510113 932248829 275236494 395635608 704864521 980690443 958737233 974601658 720483614 848794261 157045207 756279743 817527823 847415952 243620330 602449737 605310396 741616027 944617884 976883955 171589658 244249713 958959096 978167059 644022799 723152619 712009930 919754739 702085235 924489306 280584779 766342861 661688021 982111982 912353891 993456500 483333743 716359314 271734080 947672277 782907879 860876350 554077843 905068538 587579564 675681661 258861568 596829872 926689375 948269747 788408379 894244497 714071306 928002579 99018644 368960517 603213734 933509817 534803366 835210337 399464364 546054536 832244032 880853079 514699162 984705229 747601253 985736621 107239843 167408208 733261223 881518569 146591815 703752033 790968855 915677027 37951237 869592241 448731081 851782210 698789264 865240972 614831501 828907193 332281803 866729973 368473399 721811383 951036113 956388911 946072550 952048880 909262166 937221095 75706368 968010331 426052469 504537127 597621798 964987588 362653962 465827789 887692183 935730764 491528532 784774319 849996946 912354285 743715865 809515370 405358903 790497322 906803711 931142989 668077812 924173313 635485702 696727094 918358017 947345214 196992299 295177207 499284977 963594792 902601050 943435410 695683033 932366735 257163757 880667787 924045525 940631460 753057770 874791583 765611977 962258072 288515117 316619639 95034727 497318601 301785257 388363879 468446157 711452679 32054541 823010360 533931916 950598256 75648191 245721438 79654975 314118864 691429698 831461790 435122493 668414168 742032077 993372361 574598630 908624773 552371503 668134634 79258663 705127902 233041875 475925820 389972475 659031241 914899629 971504596 167229733 446421798 245020630 594695105 66043171 941630413 982890300 992789653 887558061 954691468 899824343 924819901 639778054 670505392 414230367 792358526 129099693 884719719 557468503 969552014 270935139 371706223 465320917 926141954 139847578 432807353 905456102 920265654 277825185 301067098 193066144 464841372 207596483 659059353 837518614 980547681 602069444 678992545 694534443 981129018 180724938 712646434 749224858 903477211 449262299 807637794 834299790 840979970 232675476 508133120 244971904 502138029 223683948 840481620 366011534 488681915 713076471 762477428 190784330 930367656 320545341 916249403 341936605 589411357 872875388 914310436 897539363 960376891 616044129 939713155 893194062 993836196 433118409 439674135 471314188 635117389 1157523 192779174 448807559 608826621 370688792 869340485 280521041 405591890 135694963 815186614 494790383 541247075 881609698 950965494 805560971 833821713 542211427 930213360 72438503 859072402 633014356 981001009 333413889 479019130 99982563 890471964 367321403 864879212 828997046 932353539 893832983 940897108 992593429 996698629 65712860 797959245 169049250 660212932 308479261 537684864 362765381 561366551 646713797 903938046 869104584 964346538 300323944 893502612 10354507 399539945 352014762 656296397 427091910 883395951 423563946 754378218 697264309 780952496 479057544 974235673 954447417 975067467 713928988 731883213 262166246 711016507 850539962 957610108 26701544 78167881 658433681 763655060 9982141 131842755 859995635 876342032 360884273 984137786 456790055 568856483 812311627 875395367 737213865 813643839 729822726 829249025 707139741 971743530 341286768 993346976 803355460 821188530 978895799 990523537 329649689 496440854 35258125 893819078 227524474 746578750 478933917 901044618 650084739 765220341 250456945 986549630 640763347 881153677 718823705 852378376 303427756 602485105 16197927 131293070 605803780 986313359 196798317 279118321 774306849 843123460 765325060 924637481 5881541 126464868 375427283 906451507 529951135 681776564 129045153 531219872 696611802 883790800 69558162 836359083 933387035 936995352 74651892 521109161 607217747 708150777 653331159 776970614 914033462 944266024 158356709 622384094 67318801 831071615 971207497 996449644 702644584 774294000 810446891 989814056 839968330 951833117 193255876 451495034 239640063 685615149 731197728 812147187 215740555 857931716 954062111 954283605 817757783 901118591 953472689 996255264 405103742 582947787 455213977 868049224 514126984 947901420 217077518 669378009 307123967 873114504 653118872 709130368 203935929 427872178 784459412 857671124 218825169 977742100 77211267 805665403 416922109 646378908 128715793 689266542 254952810 947215356 76321967 690180075 202110917 840145358 470604133 745958948 815961684 832664734 348960512 793472476 913505814 921352192 425661133 968576301 836310259 984623497 839022038 843205677 206437595 330390317 926933422 939719831 45616031 269625887 14024131 89249105 915562407 950331686 132248285 574047892 124968514 873394188 753016318 836142879 114959547 772979902 310000246 446359116 613828342 715427288 377533871 851452428 388481788 416848492 818063755 881680311 771011962 917215566 83704371 215681288 863666524 947324684 121536570 470581609 231900376 955610406 560051734 917344282 895426220 998453871 614602554 868149317 168199507 987929483 420710185 922521506 990058005 992312509 625955894 953214553 261715296 448719554 371304510 871416020 421975023 985378564 697790947 956177940 945212497 977806492 366091477 484745901 401003016 881147177 778030799 831771417 176414691 848841891 980023403 998234420 596501884 654193995 794910723 814079407 974044095 992830212 350551331 541087419 10762277 236349555 368626510 986399855 246137416 946968991 993267054 998657373 518333292 854763898 133608485 564739873 796316170 912174327 303916447 943317467 59221081 656761513 181051378 333069766 244552060 604008130 7607500 445087778 952910986 961163668 585060662 852244818 897191507 941862462 836253138 895295495 107499756 511622758 337561418 579831024 87386578 854247575 363720942 507801411 413834259 693946309 240344119 761131917 567589535 883117670 819833725 902189770 65808083 763185827 525370179 863656047 468120653 897712435 190726091 353345754 156288727 544147248 31981175 246003421 287571900 400047934 734288393 846257824 691126964 846257639 198138477 611497157 925554052 962858379 52871361 629699158 752719157 758690475 500463781 601789659 927607731 945098126 114240210 937080693 126833064 344913384 336267160 496207776 944360421 960663369 822898578 861242277 387993411 663151734 86933026 698621206 503627977 735146805 90558869 571972755 219860847 327603890 578668765 985315709 25899690 279683120 66190719 959652357 647609735 819443451 411535197 538403584 120891652 691837519 437012780 555565418 697655797 827894303 952086939 970769471 134672012 203321224 442412591 584489634 859453943 873244589 467067849 657315420 648330902 743884980 667257654 832052164 233262102 252342525 968165245 995131267 470891415 873305175 400548867 923396078 302132484 937184481 951489448 959328051 695596852 776584112 858023247 948625857 111858023 832455430 51051117 683756634 274353767 605178883 173868259 821904986 367735860 768572626 731499857 775613436 487405117 952934084 836894004 998842277 483219367 729908685 352174753 885507952 819615534 922867730 528792176 889702221 943186196 943793406 452427953 929655654 760806922 795419556 305433364 349093068 872528185 882052560 639746869 897050786 419390816 536024995 69088776 614424830 415425821 704029933 903841594 972191760 53241536 144273593 863219737 913232075 12358356 688413371 818824472 841080715 827949607 899391612 21527893 268569009 183629862 352046319 863793172 928424144 791186430 970625242 230759729 798194343 21664104 871518252 732758479 772192816 989567823 998119888 245370614 416944597 120854605 661133952 887829563 959829768 10201851 914435032 617632342 746336093 585570598 916810489 717670879 891797675 555220133 740773753 479719730 801737922 434336071 567273505 477419487 639442823 126228692 146787889 928251507 977968982 858476949 952507695 203722711 379897111 313785342 693128757 481900836 929188225 200865400 481017296 440199588 510275739 738251734 744419363 585307907 995862189 206937547 300651879 779650805 831039478 143602108 838893411 302419269 547491430 227535338 805956575 954698242 986986307 508752886 621505361 520851629 641930767 274313191 771136358 702185294 760771560 414023692 849129609 46104294 140528568 971637201 995946428 275377356 688469452 725453002 893048118 272361533 326825460 529604704 631773061 253016833 528638950 655424377 667492122 62209317 649683355 347036229 995266071 447946757 921510461 454950454 855526990 184698044 893650520 937287445 950922910 659254709 818551830 989309550 993870230 482412860 770923450 755073266 910551342 815077996 941211908 6781291 302540226 872519124 987632102 387500900 435762847 286427331 695014867 127894950 443893910 363648388 701545689 183893812 509828462 503179051 825643855 203555176 361229039 801929160 938831963 625334982 892333893 167941861 293703270 153001725 817601940 601836123 639851246 663812200 874770792 61919135 848054752 867751673 910728921 892057193 991446513 442368081 579974492 929558605 951437036 691947447 818846770 40168782 895255964 956466063 967629298 979357215 994298172 996552717 997948037 283439651 640394243 640819420 736597286 247445587 655142037 921095906 933736580 923419971 942684371 365671090 576649873 284839070 638849169 299322281 313347245 643637439 918539801 212318522 647527556 765071508 861532755 45945444 247883233 941836243 945858466 990555995 994779668 627157144 674082030 645177206 721543854 552948803 817350923 407941244 894835346 132445882 913248707 640523542 825691100 625147506 843960674 513667669 696757180 889411232 906275067 985414971 995947045 443139672 685033804 703644564 854120831 282028853 770899038 242812659 548463981 237202439 744894178 124052522 217851162 192765598 245535282 325058850 648416207 784803640 937613937 413996953 829050692 441599693 722802024 463982672 505655318 8474234 110594639 135852009 583008656 544641761 718299289 854504028 892407411 620744107 699390900 52458647 482609384 284119541 935488825 279900063 382981575 473721628 516922872 55877277 214086386 126434905 166561519 841761571 907754893 704246749 954962313 629090061 753695471 371973879 577879885 250348810 574312683 83646504 482247329 519138330 577620171 47855195 657998061 990310250 991985740 752407831 801792590 304533726 769928389 702242527 735477763 160399777 758140166 134044432 530527385 827979274 986277795 574593940 871650126 732858210 810778039 946603728 957262431 972479828 998719499 418868925 870153758 570581040 814884642 28136737 328745052 93269094 443755300 974080428 974673542 369710755 382934616 382063208 916206162 266343340 586791464 251061965 746165400 201678964 512034753 634302284 830835169 391293350 627336152 431937198 939578489 660453856 668247542 199091009 615280737 78133621 170012195 305394096 305699123 541732308 652327357 839701882 926276476 933368587 978252663 626378441 759223956 714278388 763681006 110168972 682357334 296689684 625982034 283169416 309599840 142468023 567459753 236940646 968588565 202361640 438475898 62449397 894185552 253542848 356556242 91343504 197364201 935341333 938383400 620435316 903291527 403382607 947861185 185755516 387312097 978115619 981482478 796717300 881598581 286430316 513398559 850611980 891867462 177596768 431446193 780573292 946386825 601158200 914741400 917480719 968292753 412509055 523761918 786440339 925985055 81287871 748290461 718878199 884199131 163679638 870281017 691713703 731133786 332356879 981783107 53614026 599939199 16524814 913151622 260183796 723494307 701524092 758790168 511663997 935986615 600988542 808959962 458956770 699014891 680750765 919876330 976696132 986549359 852665417 994820170 674963993 966119277 698148233 861076162 589075452 880802603 670386415 756071837 599412179 800526487 42042288 921667630 93406573 849546892 848041708 910791572 910146891 930270903 429108636 678733446 211851289 973944865 317056181 325338853 853789701 973150969 235392122 419535364 591311298 858574074 682624021 892249687 263064693 419219648 900622302 908135458 965667045 992260952 281737811 733595548 322864615 432108548 96523218 784282650 410853600 815236499 111690761 634995617 436347459 951036242 243604849 929464001 146331957 614876909 796257125 947058771 671802020 907990458 950400035 958319481 749897421 975612362 507315976 669262625 579888233 786916155 675913642 687740588 763245725 781188863 409321107 759566429 311338210 585049241 95429212 453878410 15155378 710745536 712932751 895206757 775785153 924073886 737175495 878685380 987362434 997250313 677529836 719519288 476679161 620824305 488865800 668372194 181709849 655370481 676748497 687329453 299157857 456596369 495379431 679884836 147715865 353670290 575589091 713985215 382826891 676889838 439470586 762962928 647017509 970857748 176993373 511387410 561576673 569077478 697049911 740574359 183876925 489529346 642870420 772480589 621846246 939981497 670542611 788134709 198895645 780684142 317888610 353393259 812530352 865974569 282553773 481360296 785672301 986706475 252621942 957007277 181545614 536779576 434014667 836955160 374945975 798167349 160518286 248130613 581071651 974724613 779893588 985255224 774414527 778886686 845527020 963652074 975666796 982134139 818510866 820279589 570053954 725888278 570348464 591953391 837317061 979498374 522973447 873993948 126561154 971527127 580661145 964838029 836254573 943576293 477830419 559687867 860795944 944185846 489949640 728399686 708685554 788560702 214820633 842159017 617681477 644523427 779039849 855118417 135667969 383901554 843673987 853072070 521481956 625723219 438072957 902206840 746532801 910084712 689917353 837221945 900685402 980422162 348938207 544503450 506708123 750890057 571823125 623061951 515575276 783082564 428433428 904481113 13930931 446038068 798602614 818449524 24616883 694283591 166981947 397169902 555438463 935805626 114076726 798023194 251547716 768640187 251223761 266021182 325360976 474139161 486466399 513850210 712661922 807507984 432846291 840143282 464670531 588186185 978986793 992485872 803647166 863453510 693980845 772089888 349248053 355059131 861795483 936107513 58066921 625527310 790681151 896369767 475474079 643868686 181846270 204826452 960585432 991355420 290564234 510839167 114702618 472651123 731901135 852189738 931558051 954902862 991871546 999190260 190572917 366313691 425318416 577665174 495626364 750065369 782561322 995684599 160334608 753018651 231339294 617536754 947189104 953443109 930167235 964147518 789935261 883264863 850460335 962134184 806234354 839386242 928658568 948761335 303982728 479596884 237746678 811623347 200139877 565217553 138756868 510991438 24527132 707701244 423177936 817771436 157690017 645535516 831681626 910316493 395376545 573398865 109447010 359917058 309295725 402223500 81516171 306421598 298802247 790342007 588070612 592271477 644328262 681604210 531898236 969696673 469726081 658844882 942727304 959741220 669492633 810185720 176461968 382235697 400902965 609897158 741593242 745091641 189782700 514817472 318635838 946625150 155988663 965929387 758148405 946396203 881876543 902376618 544566185 711238639 536317805 835976464 636884007 768990612 545625089 915506024 363376892 669862705 471656923 824188916 888166053 967476127 719997331 864355415 869677559 942761518 916539580 930931348 971100655 973574470 310855318 878166057 123637819 463427516 845712636 981923914 639897856 775923809 310295585 624118749 298354152 613846611 815015138 935181298 251013433 843194640 609344046 894301487 602877580 980398329 151627564 567329380 895848925 941776580 226297219 553537888 482712392 981851430 714989205 825030963 456628908 579540212 657370184 999283329 770508503 894622510 256975067 802696782 482089779 974608297 784091248 897159433 881918473 974300879 926491821 950680248 384972377 547353494 478904302 496515765 16440633 441237751 135541760 872270010 490184635 883751204 909420314 915078878 759334302 972150894 770952728 830542871 713035625 790166063 557283974 795493762 755933987 758867649 911711038 922345832 968195689 983258242 298979663 472541247 20994544 347391643 971069377 994021990 399231545 633892640 693584804 990334032 310090703 412656213 807154012 951099527 588249128 925888615 865902341 983665423 972628318 995406125 460576144 506668136 772372798 853493512 161849876 201078219 170211827 502391932 365870841 894990015 596273177 608998853 56636753 60290271 222140735 890868528 6336797 458887688 309552233 345009200 742469230 782352332 661355117 683593807 1285558 145158703 263690508 571728690 33755277 478386014 109176674 536144511 234267331 488331470 110627449 332320781 709261382 888989196 128052851 186492349 57647961 695715294 991717262 993208461 615688292 662737180 581891487 945142712 585610277 896848383 750118706 832192205 627113078 756493533 797861629 933647746 862397235 934156407 135731417 479514931 245850202 297379983 771211726 875547802 92240843 99684591 651648362 684465609 806676808 841272804 226763874 587980426 906642707 985146478 434285928 815191027 565587458 936210084 900954294 929717196 33062046 736693667 1908280 789994271 601451125 818421264 703941978 787267908 110092514 539427757 408068499 977165265 874023270 921221822 838868178 976183781 459132173 474667195 12534126 656620122 552179234 589161204 821496342 888817468 182880321 836718655 831389429 878119158 583155847 947902821 372786282 726937624 42236427 106231250 608604628 745008750 593470170 721392120 282169002 474619324 134988256 708431791 21319636 366413691 210354395 558017335 272808162 502611848 933892263 941721858 352543468 816227615 95433805 633032438 964550849 975372196 980228599 994180211 347616246 860042052 77401214 889840070 812603814 964424447 118005534 365780519 333687483 333932379 934585141 997009232 322215814 694099259 314524956 498512555 600212485 644238510 925650537 992670266 895936917 917517749 316751459 355993155 118609756 173825937 191217507 585171367 626357596 780115324 70283631 355993940 218261566 303361586 179596913 566625471 818397499 897626514 689960998 719648510 314652282 891572560 166236348 942242209 340443665 650095453 812179324 883302802 338583052 439322029 968356852 972643176 213204161 341730738 129519946 685913791 910146685 967289878 555176534 665401868 348719452 381676750 548976264 968992707 419374181 483708510 375422995 596268995 68125686 683638775 277292843 700941133 794396488 890067288 84071673 702271196 311232717 480677428 970846904 980153216 192906 98285434 308436322 794295504 985249619 998388095 487103241 576501627 955237126 983299900 982118904 989063467 472643470 722350857 681397328 719813875 293016948 325182152 818716397 946011845 495044877 507660827 124343136 670842995 720116495 881342047 475005569 596791974 293466316 664954905 904578101 993365757 609915050 859357725 752217862 945679248 561677093 579201088 285013020 458741031 975923656 976696608 497779685 873274597 685662781 855987814 370700615 770943842 54620029 73586727 468642036 642965862 460203033 729893330 226966384 761720114 959035743 987372778 822423836 846045834 247960340 603119132 434767516 630892400 526568623 836002860 73711213 131518692 968176202 999180950 963343776 993999548 565551875 624702744 574895056 957539031 156871254 661093632 141559273 304401472 560517261 738369509 348937070 925336890 892799175 910589740 466643359 824966214 191534306 712059905 431345627 621048769 321201187 954666071 466419260 705986483 219551395 334631595 264584214 965408446 764773089 894435822 443347409 551543712 550971083 789651937 380267042 577006916 808568363 836615766 10077391 200572417 93059795 755676798 942966870 945329918 483673850 528184190 692728806 743154424 978803963 997895445 729178420 763594810 368707853 628214079 253919019 543365041 782770060 910242110 491374362 912661286 168857297 681278505 803944164 975393388 774303012 879203158 436225351 510541366 5610268 81191383 774224165 988336018 225998987 602777432 606639218 929621205 306999161 587397459 504088931 998354830 111631683 863774576 534112564 918066312 630505487 902430246 363903174 888941104 225510252 898052739 569452840 570644245 187414169 735326666 659631560 888194163 518194758 703708366 344057275 534632530 340581329 477930906 428067806 600216603 375708161 680329159 796057662 975213607 7458993 960513379 82106498 732202401 346032264 594191159 253642403 961874271 349442963 654255639 112047720 314786896 606475312 619830787 751420138 900449038 910376803 910800718 409784186 643167800 354894513 822371453 404492110 695062579 460412301 751806321 379069808 641377121 388773831 669764688 104489782 841997131 245136259 974446291 942818346 987508041 339844707 621081146 295249911 728970984 774323398 904512753 532375739 975293032 214420269 564322117 84775752 570280875 483077867 832777832 657979135 695586294 321428405 352666427 367341531 736309857 267322639 744227813 158047656 856072877 120793385 884754529 518363782 964635306 113105103 818298106 742333949 985713992 155104632 959169667 437543518 959311772 98485323 855752728 110754102 453581999 936072726 968093978 830152901 988732349 675797701 692720003 933529640 978262788 341814148 486594288 633915155 649439659 779533 516588921 877429147 985401929 874291420 898781465 370396767 562036673 87241029 656302505 560196725 871271464 742497947 848993887 766489321 910155589 785570124 909458839 655697172 767938342 634097112 854947520 625349623 753904631 355667634 880900051 843784275 845334140 497033535 594268371 780581620 898240652 42311409 734926471 187396689 320281318 108256671 691246139 582652133 904739572 444357496 761870539 503592830 607767482 183927709 946169190 356769263 945837524 481770875 783076869 373629152 926998407 175536332 316771723 613657594 613675916 458983527 649903922 967287532 995816602 531263430 894754833 964806035 964949473 255617480 888971952 806368471 940545318 456070860 464137516 247046564 594208272 57050018 871550527 523994688 882730454 306460970 513664887 751280668 936847279 122665858 938552433 356148333 747857745 784372355 913479713 782655823 871563473 11794082 490871000 169607123 903479624 660887160 673740228 16772286 685505813 189197228 924393341 848117156 868736988 340475255 897455589 894616962 918213850 835084725 904825062 357578722 709765379 912309289 944022165 190339425 436920451 733445735 880967592 824528626 827803697 550080225 950106480 429447103 546591143 324737614 633088569 631855444 723304462 69397227 997339406 188905351 460071194 506581586 973537387 282169794 821537758 33240386 961306132 832317913 928945218 375847241 437734626 74404262 989885597 947856254 971487419 656294005 821172780 115076100 265846600 782935517 948381639 701632130 881740183 720614685 814671337 218166786 228170174 156691171 997108394 601342933 882803573 604614856 924178414 819834666 821165048 529144349 826865824 102278366 614015393 390960415 554941387 441907131 557922140 75378632 465162192 128629203 686737249 497789380 942711010 762428104 762807360 292797808 916822975 215449199 309557579 868699805 911099187 500957407 716159399 606036246 999084162 609696784 625427249 559300280 649115874 105170973 508853612 342962850 688077428 484811025 758924902 518757881 770927773 115281640 139062876 597066613 639668016 244938929 351298472 580909557 721238066 782733463 976783013 721429626 954198243 125522704 980162183 270762195 364573237 42158544 60108225 926165820 992809148 276419050 928559281 957565928 993434451 914748187 947633568 3279062 128980356 699075937 929923973 13158575 632246051 804023463 808401749 439671196 643336559 252976502 835448696 64370518 229002283 724836284 773075745 482088995 667612815 129488336 653105498 220063870 888134858 939564090 976457425 708045910 993000630 37702558 799543383 769736014 783389959 733335620 787625971 449377496 740521242 402281432 739963311 395997969 486765468 194949300 536405199 311595247 628195426 765393706 768316526 55078050 152001224 272525162 863094344 405327767 579617028 488988148 576761119 557391612 904825727 416108961 646818284 435743392 821390465 625692985 742260748 553288499 951637920 824496815 983039174 444795848 494085476 473779431 846621983 84633791 957507582 240485192 461048741 312928807 933984042 188168444 297469710 755735529 978778423 303334724 314876589 371434767 712751976 139888703 214750347 164455488 196231812 67526698 843352227 520644546 540148717 942476389 946341807 536815557 917991270 598085470 819636569 374279699 604569012 623261755 879519266 52513651 771706935 675016544 770159368 453037940 981756917 242640817 829629797 33960947 739391162 39406105 458957628 404434344 971403282 395723504 902771243 423395744 718687874 345825611 427293935 828103933 907497235 679225312 692612167 530557299 689491840 224612346 789506912 741556210 875434740 48222546 858619013 430946923 447634464 467169249 927851482 751189908 841216491 889895512 990206714 592640690 825340218 627295227 882968291 71796926 123559698 440159562 450462958 54985674 733758880 135359040 191851300 284293633 485819573 28111863 529787163 750820817 871340672 27469272 315496010 459780042 684356472 769151940 962463367 571894991 814713615 439902563 549610161 167642660 755021468 835095787 956168815 896624700 949387787 169266307 479139260 740827331 989254306 958551738 994183658 640202836 652037421 232879708 944768246 387859962 409785617 100449512 277141689 12965551 67210141 918606762 956504182 612275717 709454770 135065436 887566068 737750964 760898891 422557207 618349857 202867145 638446171 363281073 890159925 360095282 844061337 132171594 847544305 72644422 230467288 820239648 845157852 203210862 506773192 952362431 975633635 432193975 558751676 909693412 965245461 500038599 811260345 821537251 960844450 399334719 799371791 856725000 889872640 615459280 833279460 107419146 110506570 939985349 967304833 883200721 932435003 651765709 858506269 769135394 769718199 955171532 971614336 121834114 991632691 105263716 774409886 610117970 919136643 771758465 794513835 360410551 680475941 333710766 765363140 134226964 276872230 80379110 857021179 220616146 637874890 178899794 817033552 103671009 543723855 19233398 624205746 723304796 832800562 822864797 911802583 64956249 969733692 771461838 822303720 820859218 914385913 744243173 874601716 68473612 796838414 990481962 995483363 310730814 487068673 402298852 587409802 741006464 896432744 350273044 983102142 520827028 938506659 278794570 348069703 355800639 674178119 218633954 690820304 331598797 863459188 764720647 976352880 897709850 954368049 26894573 758905374 710665966 825611803 716075731 879023609 819636750 857392883 436065263 906962961 296177731 619857708 314711531 826893753 623916955 625577414 197907268 486648260 354755843 750050578 551652622 966429818 723880890 797871409 594744801 893898385 912203257 937592763 719219431 845458187 330536303 963313571 430129114 765322000 565432872 589441613 481011881 608261323 716370003 801377442 490839432 791150636 78318802 730791402 98423923 382143757 26493250 941334932 515288090 738366878 93483120 991271935 571777754 584324047 287985365 833563109 623782377 766791847 911138311 979041302 826977689 880634629 915231021 933003193 125267378 357119135 726824383 823115098 121138259 419626148 49897321 982311039 919661645 924988071 857432475 895245011 98080322 446993783 522240619 749019675 957842031 985126477 19506486 202888396 578484295 821951982 187572376 213942419 135753959 776247343 178840383 777573186 501601172 556810972 878723249 940767349 271520194 862704568 635088737 844469815 922004208 933691953 482415913 625417878 952612003 973339163 254927767 922254749 22347305 230545907 573805365 969044650 82891312 487929736 122317132 740388077 500295725 507740728 247622849 270093848 733243004 756284249 164812003 953318360 241636852 797862882 804876896 924767499 697633794 739076370 365995395 700272571 845903287 916366244 306874330 604800034 916100936 964908514 562462823 826455791 595368200 757282602 951701237 955936302 667177353 842481475 366470867 694100472 788082248 863179240 53426813 80095562 447406671 930290244 100184415 712138650 35988469 536244783 752098016 865624579 486214365 949223011 790526600 920572178 182789634 926094666 92159173 121697352 908148714 917921921 287975478 843706317 358590684 753335922 877342700 906941081 397831809 449852211 925601576 989367264 805737384 849750052 359600510 730450284 710935746 884158269 363576887 556058546 871976369 914615745 157711354 947551531 160771820 242331460 302305044 462783459 176629954 834759664 234778224 494330322 820826071 931217541 280950714 660175093 535181382 709325684 741832202 857261245 206383074 592436548 22131882 580595423 478798004 561852247 144735741 332843326 618816909 867111310 401370253 571660350 748461429 953720295 74732597 743745281 565445882 580292676 946075328 996646328 75131877 344622779 200803657 402634053 579722939 932612584 417487814 640605915 701501964 763541960 706501868 860336707 823386173 857001637 720900162 965892259 797865015 895672808 614252675 690238209 165614789 533514624 718867966 895861137 7419482 250368045 815566913 902060144 666587709 679691491 301020030 560371954 735785249 982605502 383184032 828794371 364214716 984014362 753919584 943848797 314216851 935027123 286594163 354923587 812748855 864507514 171070307 987600459 61126298 995773326 901362697 992392547 237497210 373611303 779945225 940755543 823293610 894400691 406290615 633355667 768305738 789304861 435006684 721502776 767745271 976556741 529103645 840499175 930368225 933269461 733357672 783233008 139049927 237248118 635788781 924870282 200246702 326279527 595483879 889260441 459176566 797195207 23445845 713070074 640881842 690757614 502564518 623032557 258034843 992632285 368235119 547350844 635352493 660095349 127920405 668857442 793946306 943530315 393960348 482819574 282928743 590823333 673608430 815044630 10191324 495422289 64464426 600376418 239419372 731033260 736413903 969691021 177354720 205685038 346285754 447156247 875270625 952441511 224878354 524780640 221907787 702045892 892122253 981053152 5169049 373624098 128805526 954630209 354493395 684004796 592503580 756669097 642179409 892858003 44252801 815686872 50038433 488084193 702595583 941718636 156803745 978188096 523996482 698921678 405478260 427556053 815594250 981253566 282800870 817749615 30866522 226373368 552578892 557448726 166885882 884099376 694666563 852751517 556254906 975108830 612117239 997163212 574890646 602353776 560951256 881397206 119201788 372125740 191330595 949532012 345148927 685449250 574784024 701103226 787895494 828734749 551796246 872994104 163910416 204522022 480884532 521282512 757241569 791784014 222688155 528018267 64989301 486271329 371533533 902962986 414795482 461412884 833461412 921559337 872839657 953039444 186921258 512232635 317081924 586483852 166312616 691364180 676282555 936425804 163598396 834924019 829438338 915088341 61401314 928611653 797765676 922272925 60912201 267836709 142643938 165647209 243061844 637233388 317351232 825442108 227137478 516481327 173599893 640209100 34628992 996349905 929836071 996485136 31805229 951164007 936634336 967827680 849343201 858580210 154143364 489575419 97486315 253132465 756800493 829526684 783881364 929911895 961756660 968333291 654643882 714903867 416709379 776540915 873176212 927758066 313676458 519916237 880211508 967019789 957483160 999232259 801725511 989714759 371511273 813959450 866102048 957775851 445356401 877023989 956838280 985782948 756572955 990933387 852814566 961750430 602838629 927484988 42589714 446900842 938594097 949474601 307805446 521017700 807733377 857964229 84531428 988993907 473683364 746441986 455125839 843427369 92989943 504429731 526007710 625759526 235624994 523273169 51810558 471782508 738330235 888334250 161979832 563526783 424574495 885394927 206664425 753253269 460737778 847657903 38102981 244691517 532813567 920227612 125045689 134077081 75466555 788545687 1001067 946634264 18483647 881465009 25947849 238432766 475470354 591247979 455602545 792228641 81456985 624835055 205087019 793318973 695969056 721798605 632051054 679960614 64960143 764963623 532181218 940078452 664043199 899087916 982181455 983155077 149334733 759368261 148681948 961585295 109932477 875007909 254652903 396803481 534208027 922962056 206979214 606901280 883419929 900232046 634492490 842950113 359341152 535185978 730587875 888541247 614783869 788097992 932020372 970756704 650907026 691117768 6046570 470757304 72124444 409916404 534295758 823771725 66297625 485641925 331836529 881882484 940923449 970280461 662027607 720117758 585911439 798117332 483958281 626718545 742656713 825826328 63364196 226151333 12234588 755639256 534255087 749177258 476635099 933075133 744812053 894173628 740561104 915604323 844500923 957098028 202756922 371874452 52714358 302249617 407736594 581213458 676202032 786623999 5215042 563761340 531741552 786674078 551438812 880638336 360645001 589492076 13192312 486426406 27058939 661313071 499155179 830061406 753344408 916854908 371901988 420645093 690991603 833219848 669196840 707819160 752104809 864865477 675739801 877693978 390547214 693424150 174651386 600589572 420402562 889717288 37757825 397306185 639656275 887750995 525822840 649950589 444566395 883321523 175473590 898149415 267300567 371270848 983670356 995788713 8217916 74885552 2305977 602172204 848511573 996423511 224892021 854978684 543095175 600443365 775339836 918021044 320078738 875529971 685773423 949273424 545823195 906985931 745118033 749575265 979800823 988960058 204235963 215928905 59485611 520214601 254829646 468294743 229430987 640698680 765651410 849125663 659049117 767322104 768523369 941532346 248340164 275571725 391988814 894530010 677832364 812634892 307935174 462638737 124463326 232630923 949586760 969806559 206690685 546638803 307955706 697786737 494765663 648967349 843859892 857487977 723758578 964103556 5855195 409552819 388085749 516265651 897643378 933061376 224871920 286651287 647179524 714985234 821874460 837323736 780071572 915381601 571130449 779707887 342553027 477923024 740185264 829013661 254918283 792622165 323243295 817537812 889037437 951465537 692865086 898008964 609490076 702891024 23629424 991393865 47873237 124022333 306615588 369739437 677142274 968161250 987953358 991042113 632910346 917421176 512097398 712736565 884787131 903295440 430853758 996902403 111140047 890478043 508144244 520830156 139145448 984419999 473982357 495569868 536473043 654004787 726554039 976012063 479769900 605669163 423032550 510301659 81167340 786271465 537547890 590221290 746439302 841655730 259262510 537866907 110932773 948913138 275135327 774759222 709908868 760372625 334372796 486135827 711343405 931638800 989733544 997597055 356373620 786977730 141655307 988049151 236945331 583492305 493561740 745322265 887648715 973709280 79578778 718686716 619170487 885520755 766702446 992754657 962947328 963365926 359036263 554032792 809378914 898440653 690033474 842149438 5098131 973165422 740467473 858984066 32203530 364530588 75861716 520301657 216556128 815976537 326333908 887978985 812936371 972159795 297087534 695428502 322417263 735337320 866441757 905753852 97372776 352657277 147145573 397900410 141218769 739726968 757193405 821602489 843796614 903693184 496148827 837490025 373534635 569573708 3705659 537645980 27231496 977155387 751303472 887391140 175843701 990619348 490352277 709185169 500057588 860112657 210987930 623406602 626239623 934079546 464010780 631561194 382953768 612534357 465144517 570169714 805858827 899695099 675223932 951364102 802056478 824037599 687363411 870617140 6128966 370427959 309764048 828692641 989488387 994965073 546178581 603175835 451941200 986308652 427290098 762966294 839800183 975522656 690328748 924503433 426855342 684706080 799869854 842892635 192245117 216624325 870645443 896113313 413741219 725765871 605481207 768935593 749964412 827977338 768698023 903970261 69430945 154352183 640746582 924792442 758744023 849739230 72304254 918952796 203272980 500399236 769318775 907540552 17980147 70598510 796634269 805559955 282063481 314992007 647675179 851275919 825109640 993192647 716658059 745133735 296472724 548771689 249054925 724238570 580034267 767773665 826535054 928490741 199122525 645053829 918352660 973519664 564036407 779743349 672844969 752893247 721924962 987821288 499627777 840447895 527385481 670474971 342200550 874977765 465402011 874609582 58961575 369572724 509007405 718544190 579245702 969357453 968328274 970283637 462164868 665761835 53731921 690673251 500929915 957407747 298295386 493511807 887936317 955157986 710046395 818027159 492617149 992263794 868904022 909125611 307644936 760778473 273271973 664761662 997723752 997814279 178739601 628836052 590608173 960704140 375394029 711567562 517346018 839636386 892684709 997105237 180557375 222296294 743682661 800037886 993647827 997127070 416361182 660009891 424412575 835804963 883822875 968663795 543024042 819827813 797994325 850289602 193428888 350328890 601059714 732115025 384879860 972051405 273191311 614786257 717161769 991251352 11963418 348548625 817306783 863836432 762447814 920760728 633681811 879557647 136629328 681221519 126159930 812244589 267245956 492066032 3937825 367103515 558510051 941583617 159273875 244236697 54433341 338080697 191577195 670190992 460061194 547755398 513703871 914805817 18263315 991254154 241892842 950125208 577835740 806043410 645726672 785012059 351455037 407554611 36943728 808374977 166342707 842654827 607814337 677529581 848032812 975507252 926690615 930232615 342702009 680077453 225875203 392640987 387235600 436996057 705694391 810699690 600455939 617949592 618354966 912811800 984400457 998551611 770532753 959758996 825766078 953588449 356002880 927465384 510366734 826335440 907074052 917092947 485243167 608774649 295311399 792550705 812925838 876979396 114531324 285471477 496951712 795978266 220661053 851680600 833446312 863893389 786662704 822784945 612954218 814415465 455526949 951946802 13302637 483363644 437465232 496330236 282115220 348499556 92824909 854886293 637108003 643432968 102572645 974900653 132494572 409518571 646791162 835349055 952795345 979305665 736071800 779194455 121356009 210601532 835132499 874887512 372744172 682764549 929581293 982567675 757443601 808076593 511805492 899070259 487359275 599914826 882734565 994807028 453853679 796323533 758589698 789206506 212541394 736916861 801767852 962250723 580757347 671449141 611478205 799824100 879457818 991234458 277147258 730718654 524971267 524977339 118113531 836140295 656157837 867680024 395442900 747830994 393448651 592484071 937078341 953304724 930976662 970011280 911641658 926767782 408844332 774378578 253308514 406758482 412499025 712115716 425694973 447571235 437459911 478224129 949475578 976831006 354230931 984558230 893307662 916406973 424517491 723379649 954529036 960192702 373472773 588544182 974444919 976425041 499094041 527372594 564940790 930392476 571675401 727062589 441312023 653408223 876853447 952392958 252762491 585250903 680959907 848635643 499571194 985701595 218305248 788992791 434131974 830154877 409501644 475483764 473369838 748384759 178121553 896255526 536593070 966906842 40467752 704157116 177058597 443362998 432730762 723970943 486066272 775920179 595387762 992851473 335929735 998818655 897490665 990279704 418219768 988888976 474355049 790305846 969940525 978432959 327656521 860528152 139158614 390700837 721984276 870070227 938447128 990334488 904768419 941946899 445094226 728767926 166439732 655128519 872178089 975892354 351761654 484337389 272895886 361310616 749584122 865296593 186407326 628207477 627717547 913514171 306005357 522588895 797581919 945486399 588518132 788063975 614424864 670403206 809451885 855845769 738629674 900804993 348566719 559516348 347375964 533141696 394369503 421069982 226700005 754107171 619594654 803321591 81410194 412746490 532755983 690157055 237452167 505392896 588688168 819270169 750502357 790612091 809628138 961060827 913753087 925380748 41190575 509758687 104267562 331216351 141353140 212032259 721691068 763938781 872341945 953865408 329798471 838846958 282961087 285403395 83221955 485020991 249498408 460129336 200079301 231124497 798595884 811057933 226577464 546866769 739923001 752333552 725237939 948312216 843694047 972147350 252879370 708316905 180257535 337014220 164565269 180862787 283203862 620678584 404333032 971514446 969334531 973980615 856291953 917732714 4545780 65025688 500075963 752900426 716691536 954879653 425829531 854340725 987424760 995829330 43842065 577375710 895721009 944237992 486474711 908254369 132697971 542902283 277046146 354412744 828586072 979075945 821721352 863574408 800348375 836068723 940480628 998917548 903364704 967481248 573818487 636440723 816451011 833332377 684682805 717568230 934076270 994122229 640882877 755654960 291161884 749880895 910118727 962100437 77393851 847208617 261384151 962987112 828698925 980499465 552701530 738073456 39862336 892477713 485320574 871060099 432629528 530003359 139901165 882373288 240755652 712712766 625348824 970845207 47305929 768630774 914017147 975490715 7778149 29981610 340340844 804274173 207002568 602260827 200545873 796241924 69625203 301932730 848569852 998662111 288708397 711419479 533765822 780729333 207786774 246733786 745320677 877724825 787287156 846107771 834934218 875228690 397041981 859173049 270298716 874089753 674135968 941196220 765432392 973070677 711919060 725210752 117539199 518598382 708526407 815328199 552458798 602872653 523317984 537231814 50089070 250019999 468942498 703205689 923869543 942133214 750323929 983999876 21893876 238143842 964391777 987600767 416932294 474378555 638492282 756796853 670562636 765093145 841446215 910162990 834786551 966167326 606422560 716264886 93098473 239051461 735025003 839284228 73557427 92212920 694534135 848557091 632380801 861595631 823463804 937306194 116224064 956417333 313733089 689760943 662809906 795901118 97974016 355455782 845367091 981786784 209952867 329383461 213523143 441935031 60328466 844160365 138644394 457827816 313392463 527107700 719601033 857274493 133590284 468896321 437998832 524031099 553742874 994577683 563958938 647186072 158482984 621784379 800177074 981639988 132117839 518577961 346305164 851310317 519966542 567864025 33675225 859218723 693612134 763157233 207599726 797831107 694172120 790480420 294919741 962462310 525655256 551884126 73307384 567491102 49717087 304377709 857129386 941275039 545919379 548845852 90919431 863417810 886291099 994646431 242667741 570140855 726214842 763523689 404091187 795505520 805619694 989143134 573470142 859598172 444455071 990951624 41544278 803652678 387863527 952890548 561746509 789776261 216365203 427812729 549352492 995141400 347153830 375948581 175796138 400641841 265958175 905772436 564541194 961253870 941439720 943733896 418413672 778488778 730792794 944447384 61462965 768833796 108085316 544104885 64242686 175368359 915723939 973164230 356271011 417036079 759667653 835324382 296502348 604157396 482220284 768932037 740569303 951937418 33656761 751755959 507171132 952969726 331663646 971537925 627645291 883589832 575491352 773357336 801188688 880173571 398816017 786358544 319979985 621818850 439419299 458872697 15314990 462128111 625728100 678567764 685289545 723884339 944888074 967797493 74430880 766645725 670983991 943565560 206799059 539291469 687380129 946434563 312049058 963690614 533497828 914172297 699691840 821857353 22600511 742571749 52677430 119600713 427367799 791367617 737968920 837206362 207515064 478007362 118083224 502518082 241844602 654014743 224883066 511111688 174149994 708906826 705725449 846096867 436539411 822329394 661967215 692025686 775513237 830267497 709862891 850868635 703116732 962695702 528334896 825496729 368008063 573266431 632130164 716914346 963206445 990407934 865950300 959229905 189701917 285344074 877575052 994151868 901544357 907858063 68547725 567746469 348131809 528204198 528576768 685203613 249778652 794469281 954666895 957029749 306364876 435081070 89455943 652718626 422361813 475285326 77701645 480422756 537019719 709204739 313800313 317102443 228396890 323036627 479134696 502853470 487325616 951857803 971665296 991692997 436590847 555944715 868552011 957962664 107238492 395823157 555155691 578030021 579259021 963343535 211326521 862888018 296547901 399821638 49652376 673499778 921699336 948960955 549476057 559047222 234101176 530422764 554430696 755594395 956644260 976055780 410192579 960780788 634490380 960667344 292494676 704943467 979454875 997325542 110609494 512388747 961136234 981602712 570422845 869435799 563916993 675881409 588178355 967612444 430129058 563786341 863192556 883159458 888907527 968703207 905525015 925170538 744278586 837788292 880968688 897635970 412412374 865749056 741267423 781771184 936085581 968356164 455151192 663886570 329290129 534213940 659429111 965612998 991108281 995434583 473052647 597309742 396156673 967849716 520591766 778725331 567965438 721605415 484412377 918153523 229026389 656009280 88639339 556433277 343230934 634258356 642922885 823056852 962616915 986736945 119067325 956337780 485482615 509472223 399033552 832671188 654528038 773351683 864344936 937538333 300214071 931373090 283598626 888685130 472456888 728603814 560597320 651424082 584979118 766729240 342558308 721731416 946304532 952752705 300903105 682025946 44716859 967995012 113302954 542447943 156765950 623440684 902680451 903508642 453596198 558907180 301050958 708632041 739367556 886972375 43469407 604448945 335863508 694294832 565585277 926722116 212904771 836507059 81750694 407860429 493928661 811374437 902914127 970686521 590730614 826996717 211859545 427889699 485447302 786776044 342352917 605859284 495267553 990396316 468087125 621807999 733954425 812625646 214579321 418379899 757598332 993165267 925708594 961655213 535579928 573668588 854104382 860404245 583635248 766002693 938509636 985632729 785913935 887257540 170966091 737377474 549455323 641591507 164321382 632748217 762223541 988706390 194661944 367371659 480467411 832933453 487684338 868695820 287358681 578383382 14348144 674818358 571343121 864155608 328631662 375028003 971554484 988736207 322018541 551125495 327910702 355016346 979510725 998669743 501086738 756652861 291843314 734515021 561213716 580095488 58895652 512051653 713540829 908751982 260932467 414001847 47784883 784478726 226912517 915419303 354834704 558833856 49822093 89561639 500609025 689687285 809216056 913834639 752249503 933119110 369343007 421441048 236527210 873038173 526478196 799113461 919140965 996950527 944279538 992221305 623548362 804120394 832304544 940596156 612670222 994977414 994513624 995569268 97845346 788982245 860767306 954709618 337117961 806386191 75322892 572358620 113161682 495496286 99147942 738008965 679736319 865905704 751307227 850540263 800730769 937312146 269859717 786637711 302913552 996237324 116721742 725040552 323751479 680188988 801146017 910044334 879580268 891010172 140668025 963693569 763406765 812884504 737235826 907304797 160417546 324390442 649893782 938346559 731512753 846452266 490061692 599373318 504130273 812057355 776008779 832150635 129357045 262751783 877948502 962391506 914887112 988209568 796856033 960260332 589573346 605213769 601881309 833887706 540684454 612711115 681146667 899287259 215111458 758574288 38598601 468379213 469964836 900703949 849763328 921048735 529512008 623334857 820547032 883706922 548799833 919693573 73755471 144455047 200537359 344459462 398039525 542148288 978244746 979632041 552912446 783497483 174986147 523967836 37606398 52704739 185517006 689237844 105084383 147593594 562791037 871045266 538480726 902769808 626723247 813687536 986000641 988817721 866179582 892541607 566607273 892643139 208180323 469010468 922923813 958632267 9644695 730261423 113838648 319929900 535570335 571629417 723943257 855540025 286823218 953509434 430882252 863840612 51858778 177903912 818561792 840346691 951964862 965286595 818627030 940599763 868857744 887948841 50676090 753411483 54531002 738717065 116093696 236873056 521008643 573999657 765487010 802079555 184230187 411512699 718338110 817360879 564427916 780506722 437045945 784120022 545798623 764610948 597231929 700713520 593082073 756672079 560909828 714032098 698779528 968835119 125753950 749331680 334383403 353576302 830207165 853121230 211922827 819142342 653712038 712009554 851537672 972230589 30828327 949461715 678717517 787052702 499233417 618815974 182948570 650337949 960813621 973106913 682463625 929136399 115186981 752891936 296022356 521096727 347502631 347545268 160464285 680850512 183002906 781585131 476019220 900805498 847448264 924263408 603927518 738179283 14586674 573695634 330054525 964435432 42167331 443194526 638999773 742757874 172742893 678397799 872216146 975114854 784033913 932291441 79672666 378622832 868956536 925308922 808788535 978724243 592239043 669572614 569301560 955774338 121848325 346389299 479297444 991386470 954489498 962079637 329291668 567029330 725218393 835969229 612576944 640450807 551568307 814191010 345422372 735765047 516015874 587645822 920741202 922342219 164174250 177740764 11186806 816745642 455115432 803720234 893460627 932993702 308881642 400791294 508994307 839160017 374677193 854625697 614058543 777608492 808920725 941174484 363984490 551867186 354311012 605293163 31951554 541408777 589631608 794724233 88692121 452268327 289346579 633881049 476507749 945614980 950708489 952990509 422708269 477119165 442427815 461267191 976786579 991072647 377883694 415977604 295187373 578217525 99075015 560816797 238257323 558331521 308568313 925210761 810419009 984665099 616983196 817165381 339051864 645995987 839285270 883924984 101828181 120152083 113275388 949500159 750884949 759578215 932392481 963626170 146445828 500038083 315735509 606614292 484793468 746925896 322769742 339080566 925246680 928877077 785084449 864050383 152739039 751825486 896127131 920491157 357213762 908182365 825745428 893138825 415998690 755397114 733355361 895754287 344754855 584258481 706733863 941695260 108530587 892077088 393864527 593500086 705014493 747936631 943727956 994457584 928942518 976710172 463148484 604841307 632733070 930401175 189906760 876379765 647966531 730079240 598244861 824519408 307467471 860070532 641724877 698286075 940341942 973118096 7289729 539174845 430064446 718784317 119183360 869277791 710880753 764904858 995158945 995597164 476655334 794916610 421005925 969966496 245782179 933972591 602122845 729103458 188214970 908046794 540595608 772441133 314751176 652110139 738489761 815289154 170856877 838645186 551877772 924104046 630531426 709506451 530612509 950642275 179010092 677673240 595762875 985750554 995781166 997002119 871859053 883474322 314463138 845890487 974068970 977530997 888278774 967037066 27267222 983754025 531364702 997630310 792792680 846825072 441780209 624316487 175026487 631977987 499750164 807865192 322044683 758616819 82111780 262320538 821480486 866336877 689621143 986910942 649695029 654334938 740324657 826367378 783774003 941886269 713435802 912516175 410764873 653112736 99734048 382232037 593879750 819169543 696543678 824118430 533488132 673336389 639614175 982866875 245647746 973851127 905095284 946163609 374917456 704469481 532841906 689427875 326373707 848038992 278850040 624192118 572536815 787546689 777696634 817715194 560767818 598376398 102172109 548237209 537167290 714295824 959553432 987120889 669668864 756273759 951832171 975792266 549201309 655971863 239710970 306431901 642674261 658994427 334561757 918417559 957122852 975986941 996516896 997341287 294107564 406900461 357538018 796410053 18892527 198476968 853736061 955086905 557254082 567811186 299694644 328135205 34717155 687206210 283657892 809700407 837670989 953558079 199970712 906954468 48937989 161160759 238164516 272616148 477521542 691299730 419563922 882578348 453487146 912536641 691556330 901348790 310624045 967777239 661792774 770175197 607514427 681092941 271959668 648735308 845147495 899292398 599541630 757533796 582262113 930207489 852618734 874988833 390498272 612933298 623850274 968434805 172882429 419888780 773604974 969454049 409353498 615951767 181613630 826884292 600845122 922873689 736594334 978591834 543189969 789644250 930405314 933821554 415419040 460861096 13725453 956119635 821606092 900403798 530420820 833286017 940570182 962019049 603166497 849945681 596082310 813591065 963389138 967633458 773563017 927259280 197519361 763573269 65797552 151316798 987784835 997918587 974288700 978950132 986625317 996547194 737037322 893543689 995142999 995747143 165661133 598957414 408878630 904936500 615839897 861559125 872479520 988044066 405889751 419103466 439256344 978473355 888274911 896446831 261886701 265685190 676724680 906021559 69955469 427613111 977337693 983852455 520078646 950814218 445716195 620458343 295978457 828369132 827898206 906469509 772142637 886218228 850367846 991104194 74858758 95697756 663237927 753358216 853457467 878316021 899299445 930256679 550046790 733059115 115452757 165645695 811678706 971862211 301399608 758688733 395869445 995994281 860554929 919511262 995563013 995799110 875824781 981667648 938745021 940409256 993723652 995056203 602045864 987365206 903438246 977879622 932496482 969382184 809462919 989389014 979742641 993566152 602663996 950820714 894503036 914544092 551738936 972829410 140866965 821216385 930063453 986572725 946836452 966084121 539963096 749055715 728791668 763142778 556907109 877364859 608413660 642276428 97704521 410563423 297241959 708268703 79610621 218554011 49061725 365958455 130314609 774303969 248768182 660011828 335252214 820744938 873166844 988420138 571533923 938539122 784662467 821176760 172361612 359828370 895607241 900366215 688041700 775467816 748994457 953471196 671260735 888204181 235161184 977556870 665310544 760179789 369111932 773209623 505617840 741542666 825413254 959761578 180608799 384142097 41265304 164158206 440854243 590272754 730643470 954492647 492479399 872636542 255566697 398054250 742878760 750864741 219801334 861380695 564467157 605435137 743156985 873184120 338166753 696096523 57196847 145983969 550299549 944515382 487028520 614379784 761924182 945993935 363599519 466003293 753386855 982006903 907544374 949162023 958743754 994682360 919229086 929165359 757008538 988239368 277503305 870058478 702613208 923559739 590537690 591100675 820961720 917552186 840743110 977211225 993603101 995197835 728125258 775987189 287611963 505623414 908749092 984301057 240491328 825215669 642579340 836473592 629918885 983749715 326196034 960399414 973502642 974001082 755107840 844461730 548782608 709325380 620750493 783268261 977748400 986150701 28795054 385510752 880038469 891370289 493919460 724164176 942353287 951983175 917788691 977250156 168044880 908997757 998339954 999302036 772291678 940012355 705455542 938226177 168508230 534257947 211267014 346372149 426916665 678592023 511019412 706954515 821650762 985608063 236252169 997454042 328068039 827919765 687038489 736098517 275299204 334169631 116032496 556535185 778586199 947651884 679029737 830748674 931058364 939700762 426292036 449292176 124940082 775915282 338638877 480680125 974281745 983219133 357190939 762660124 557843352 889734159 764562970 782412232 769926880 813434548 64186910 841183768 640745216 984158212 15614863 550906259 536378073 854658862 709112462 714751782 858724438 956683242 998297102 999206146 468413458 668406542 545509265 741316720 648126358 702437656 42297828 909099075 336916795 993949541 414507178 431516585 994091891 995165163 381865200 445019829 525906537 651251466 415112738 882065133 458411276 650905302 843389936 989511456 56617215 648898309 374952480 606646519 708661032 896928209 883581667 916815033 722047124 837495479 315566322 976771929 617365132 688569127 784304689 905886189 182802566 902982815 407970958 580612072 441492283 621454567 789674696 820384299 614354273 771859915 991720146 996246155 39603952 387148181 793547814 880476947 744042149 811117307 35879576 476379363 575852534 581058283 766777709 831251785 147496382 603675264 944663073 979793956 541710258 909297088 509441023 832257300 152140942 228799883 285048702 309659647 816401709 982910417 695313184 785118325 576852908 710869385 661450319 842937180 349355034 460869624 76304711 862247920 23515092 664795922 567484752 677443977 412465759 888475946 900541822 980650547 55346132 399946800 204409113 280840985 733920914 976711009 74195199 642193748 857867652 910302909 267616513 969198148 184726082 494489272 94543170 445498309 115370989 846793941 811053342 950988089 207137403 442518045 871257960 938644744 696426686 884847161 693350159 751696929 56071756 578418191 822295394 892332325 904499996 957058663 657662734 679403053 742927745 830404468 198879061 348557799 897321222 981729778 1287490 96251689 408458514 876892163 658933937 993861259 427861395 485787276 466775881 975896582 471839918 528521776 831696689 847636672 186003971 694311637 937660265 986234137 228833272 412103606 983868297 992609504 535014423 837545156 91899660 122453977 581583135 669919719 801472593 867170899 408261052 891669735 215439709 782134322 286507179 517421980 929072473 985427407 810775894 954849009 938958328 951588799 883238384 952147404 73930651 244110771 729678566 889534560 465943291 903491689 716684720 744788887 765949539 878343214 562170926 685096733 586704225 819532886 3076311 941575863 942542136 961758798 100263954 980420150 945340728 952450071 499095482 866264596 443596770 998184534 79519776 710777257 648362238 980892813 96550353 210621210 55722628 512237174 754512744 879117781 271526210 812884233 631675706 642865667 282184362 779154104 85638556 281539253 117286398 600480576 177288081 970375245 19507738 124402474 637556433 642067049 216781567 660045358 417697195 831356025 361969153 568288340 665629615 820113768 868433167 900823293 261362869 777256784 847009907 848378073 451551317 809481559 721676242 859299944 861600674 937971166 81528915 686853539 973804196 992272458 350594040 717296039 995993646 996871172 258720876 791145612 341974597 578063715 298351724 989650967 823128853 848659790 818008620 958188788 71205599 484144459 260971872 699916249 991432978 995734529 799876864 895231280 516413237 944999335 60860898 221616099 234177112 769636995 530958803 808286614 712655081 881486602 770474680 865284961 581399110 853338535 314787916 347596794 61489075 841757369 114383941 424565275 690615279 789294656 638973770 944581484 595851071 806502265 216983791 819964594 458115001 688004724 412916350 535965156 479291057 784525032 339542879 584485330 953221236 989585378 562444704 911413122 492221737 870259583 712951691 741784385 569402247 868828386 220818047 802042315 692362229 740324928 469410652 565512230 979255238 997313355 641627970 708937281 89380464 277166269 507532692 831234557 779899366 789221133 407734915 963733905 588464205 844992628 598863279 624306701 592492067 870762772 537610750 780110555 598706632 799333328 520932148 645467691 552770728 787006392 809992050 943414959 12156403 928160801 327121176 726785452 893323138 928692243 940932061 963733246 303851622 411651407 411240982 687819195 917688997 989545359 159919914 442879306 646420730 910032829 934972486 946054260 515075186 834948821 234177489 881599733 346663742 519119153 702787375 748835416 929373553 973313815 844420220 946215637 671321570 952539964 468368828 756572263 111134577 650922963 420419517 681397080 188613891 906431406 937295874 984622212 957295201 994081215 47586577 316286613 576431443 861064999 353905111 504918873 373782533 508010151 413592816 428082923 240291211 712068687 511032910 826228726 168774726 313100647 75220096 651430754 755644006 791944282 83143356 538813679 382914941 688490518 644107484 811224873 33748999 78593079 472063973 818241693 222001990 395110359 966670393 988740102 890407719 982727374 873964321 958402026 722941967 780662618 846716181 936047415 45067471 516064503 780969678 867015826 780816000 876872431 674883962 834590872 858561190 878606345 292281398 589717612 202848504 405679627 348316601 783317523 239732620 489748080 689460099 740786604 498508384 719296728 959602253 967541723 514042045 771773408 544556582 580547727 588178930 679819573 84161567 437776435 714001318 834843198 600492865 820214767 571816220 664610865 301810125 363083077 197607047 988902976 292067842 982426432 828042767 842118135 704676413 737895795 692490298 984274606 497431791 950454916 179173095 375409260 203648519 584522183 599884470 828230093 34763546 216428380 997493883 998700535 34628516 164196937 621448424 648834077 383968119 884378552 352135233 895513082 806222372 954125603 5615286 305299481 878260122 987933038 394654784 835212378 557857019 648724997 280709846 625446841 565035846 709811382 7214775 539455975 736306586 802269386 531776896 892864974 22307707 727251262 117011724 963363087 307394733 558793747 329926821 720363018 415713394 826080932 514191404 748699459 221046478 447150643 962000409 975979067 321144570 384926355 782574393 990239679 895575528 927347511 631698624 679836244 4685335 954871857 504008623 934953628 33202100 602244709 63907824 300547227 713455439 772307195 414428400 437115211 127549816 180435388 283817882 556843605 352974381 905401995 494748918 506261186 971137381 995826913 635096160 755345320 504018422 656791769 580982576 904353240 726852706 747388321 932108272 933288266 34708433 480223834 448475105 603509425 538462943 663750200 772479433 843569751 46495126 524383140 941458537 957453551 238863351 919286776 859197753 979825693 610294216 680315466 647794814 990732068 286692196 460673066 538014543 944709863 597131532 607871519 163867755 538289065 55509212 398853778 185781288 577000290 921451276 956772323 15283915 637794687 493417710 814098494 167854236 724784099 713380738 746972862 53865322 543406091 302742753 751029676 713698779 727069488 323801153 915536321 193354907 748724986 309061810 720099839 163180412 497697605 248530387 827244701 340413922 352894668 683110112 932044332 348197494 462172398 417500513 848843526 278114538 662721849 628517798 692564549 767563258 774424196 667436535 776499168 901121034 928856558 556119182 629437752 568134675 877873609 522321429 699834737 975034421 981374143 813743941 870071051 675135235 895231188 672138888 864260705 585317019 899303160 132118109 909939427 88612971 664383047 752648227 960164460 191646416 787089872 233193099 460567937 621563286 986709118 892460671 945801302 293427217 866942961 468355377 478481390 863499715 954530418 76540221 664127824 78790010 234966417 980546935 991219943 598680139 900868255 41285261 435929075 918127734 965793010 987504435 993362649 504777802 600956270 362492351 647212043 192198780 907983530 911142111 962138982 491051981 848871754 468275096 621134657 323114985 375349982 471279523 662060486 558782326 599488558 107770683 530429038 352608423 879557822 924840038 926475151 377908641 435169002 960278504 997213437 649772398 919226710 314510819 728186883 51567113 286835492 719096953 727128741 946926097 990160727 589510381 605233844 881480457 942636293 911727246 965230419 107721782 419306858 619940080 697645219 651985978 710215542 314404501 650927517 802495454 873830803 542898764 589464144 538097253 920907282 497251220 817403911 517054866 671305737 820129095 938273214 829164932 974674704 419084545 650008242 904248504 962668889 631225950 887361560 489442931 496283044 139131741 829369966 694894936 780776794 460157472 812694533 220844768 594582517 200932300 292837942 10060164 92826848 226245230 420131902 178532132 917134161 101105322 463669629 507632292 820014064 515100252 900895873 569840814 883642444 180245482 277845070 79309893 126780333 831988856 985993338 245542248 739602597 171857733 346854650 204703224 695854833 288512292 954133342 377742642 937278670 401969124 815058266 868491200 878971731 648041072 836915900 952713955 953401818 606964225 613469483 880471979 917693746 293393999 652660456 974396101 983034118 507036262 713660608 290374375 724436394 893515881 896730713 994046152 996681953 418082162 783641705 683841703 990053938 192953741 640272489 7173767 663027689 412780737 460814404 875034266 904642957 482186424 722411390 655086123 674614560 666470591 992757910 585824847 591645958 516403566 667910664 269249319 662259498 255695830 478449945 427935042 908956891 868083796 936562084 20200740 360368282 57814822 997714483 502325812 684516016 601337213 647639538 632388018 920143730 994636432 997133452 330783020 431722659 951496456 994841543 107040918 155704256 323382072 504020067 65724955 375080621 114019548 934655668 883449765 921949520 940558410 965391632 714142264 844901209 652160239 956401318 876606382 946846420 41775642 63537049 922948534 981900790 615781706 784909986 806768315 961173852 288408887 589543690 391034630 681684562 681689979 829684623 682004370 724041693 722982775 930436505 817139483 872700886 120204362 910480111 557933322 838691885 865858011 945069189 941584078 985013080 406393141 495683323 732948994 740143569 469384560 917214439 569369754 741951356 990578675 996023113 395914312 584114760 450106412 793508916 533909535 552025106 677390755 832462579 780955823 794803830 167938924 562479006 994985980 998146056 102830117 764650699 98273045 894870919 210468534 884376687 594497276 658802717 714361559 910436829 93519888 719578004 242335368 939077743 400720629 628750014 951619331 955950224 429574895 844088183 38391988 165429635 605080549 741826038 505827089 675032722 285440500 515588475 577831534 698403832 395442362 816483231 191902258 831723939 670457574 717051079 287818675 635877050 293015568 972063569 795149855 802858742 58983212 749891461 692990428 834107330 474789761 712519013 769627122 852132055 742512011 868423131 241884143 633482659 122716015 329218073 979270293 983175887 999235034 999342706 280603431 532203409 977357760 984662685 459840888 561699396 401772204 785214279 758992490 772870081 98441535 571479246 162236536 368563475 669503070 795862573 245452168 686481975 776694702 942020675 145389868 569605312 682361573 992265219 775057944 919398882 466360742 575224452 914548445 977829767 482287994 882236884 40362858 678739798 687292415 991383236 703248009 973604212 809468208 864645531 660919980 827785534 775676657 825482208 402544918 404637238 465201423 479885479 632765953 942492510 654049178 922234840 735424093 804410482 726631809 799442159 190193333 276878702 523099907 704258970 595822425 636225670 576099150 964569345 877786839 901539427 9353150 305738699 108646093 886055342 353971485 590719698 716409738 764826781 950505114 959662085 438305772 979804751 914136939 924048454 532530314 553560673 841536894 944857305 5614646 140110213 156048936 305085748 860509817 942993817 765276327 954137620 14302777 142381489 452718773 541534036 896659278 968176976 393395775 422992758 360515896 975814727 89682887 316477184 488583598 619545223 45880711 212264847 519046909 587191610 883761033 997345917 627238892 746645543 428637869 509121455 720243152 851870237 743614769 920989705 793945037 902930236 790939826 801821977 195042132 956462237 595968733 607832996 814389809 923483519 707475546 967006422 28412158 699031126 711705593 974737458 264719167 778666156 839832971 891781505 466785109 844409081 981922008 998006578 169230385 879160073 802518227 967261119 169231986 748101651 475167109 823011241 891185937 911880401 739846401 751097708 765866021 972015936 787181449 942926706 350889571 808811087 125332008 705125716 637926539 983036762 976729322 994987535 159733104 461541699 753565131 984665727 214342435 821061191 259626178 706015407 737790173 848686572 944029937 984914210 852149041 920871132 845568040 968817822 245107614 573361259 795070544 941195679 431385126 949559741 205530444 359049962 77771310 630748914 417575579 699285425 332887669 738623478 193263262 981438414 463165021 583860868 992593234 994571732 170125264 362936720 717616267 738190250 826164960 873086793 701438330 916217361 972234306 996129002 978319645 981889045 358785395 714470413 483132908 900244808 244383508 264032173 933408026 956729369 351768059 679546077 500917813 909027366 902504205 908229737 733364584 926532409 396074785 942206369 475438768 503253065 583514485 809057187 281507698 314893763 864090177 922841333 697996433 859442760 361929339 373670197 938866461 972957530 206944077 467951985 788119386 916418710 694305383 919584951 215391118 244783889 870684446 951492986 1803505 822879857 368211600 427317134 709386619 962339150 678092042 803160942 885015454 940754540 162112215 839470281 757072907 913621823 739837317 822886718 743086521 967903838 107669920 988455488 724260192 895350249 931237492 941870478 692972394 975355037 428855880 550666215 138754127 493863908 246723960 401335402 216389209 858402892 44198160 415393174 202894000 414270410 973364428 991671874 478991928 596100366 396143892 541847167 658796222 880477402 337503451 939990816 280035501 494862034 993308519 994154373 372268578 888496136 137383357 735019258 611600692 802670094 995199586 998361487 682786146 683996319 331053938 929811385 410131046 712393399 38164713 292191879 738495908 974756027 856334901 916339172 333022450 337483870 559406368 630631144 295421598 685476559 545995587 783690889 531873733 612503172 609241140 816704563 784873702 901717348 454433882 608744472 982543220 984558509 797166364 872583255 515793761 918109564 125254374 183519645 61026556 457818321 402848369 701151548 475041934 974718196 472752778 730499069 19466539 225488457 403743234 666974262 833041393 955536290 807954399 856585298 182646043 486111670 48304452 264870389 104280563 702210077 368168102 702004230 184361933 351399334 716701614 870966109 976534139 988393200 893286116 943276648 564611234 667202781 326910413 989357317 817879698 819278329 557351247 621160507 321748303 552651014 883353838 903803130 553537011 902183938 188573462 588846210 759714963 804686229 633392197 812936952 956116305 963271440 106646065 150885514 321398691 469821740 951443595 979254231 340378688 738636284 137949569 774675557 364821479 666714437 217839786 827629328 260088379 988318862 944297973 947770765 79741691 749913400 381837507 865499742 158489106 714085349 591055385 624078590 262973224 732698615 933019798 957295610 25067793 493003096 639080751 864175697 934340684 942352439 949581306 963735367 346148187 705065852 541571149 626194479 979224268 991955606 550937765 602232241 330575732 658495433 896086221 950880123 108622244 636982152 818762154 978719061 892476469 950841711 368689719 972057341 828925516 871474592 914554494 973044346 920324120 952147637 697542116 750072670 899111876 992318707 834318981 847546511 71434279 403473909 68317775 187825107 194661370 681101035 966633798 994423214 574413498 730705072 84321773 760855652 8011199 544407954 510517782 737937167 802359169 949688814 305239543 461217092 524012803 816872975 141398865 205664987 91248589 365156853 149995243 303941745 735073746 820779413 114280368 331726875 750898612 997694889 198780328 374049984 383443646 922573648 406496735 478473485 47324007 459019079 75397964 404537849 704062213 718284180 746588634 983696987 195757291 649263826 910989695 988866556 290144391 629662885 574470840 871634070 99989868 521747298 957717762 997128185 286347178 677500025 710138890 753349585 174000393 464512546 842580147 973591437 757722914 967339474 395239971 828255632 252490049 942807996 333501467 819311923 254175234 322890277 829878812 996464403 595417989 983467947 842541763 952556120 155633464 472428243 506112009 561939349 705809700 869774856 988310017 991831855 315731693 623781102 344895874 698711145 926680503 953268986 834790783 956623214 278293473 432204625 505055789 776704683 316731233 327772898 422040379 974440428 839188054 869115439 855998952 989237570 844265852 862591105 300077186 326700635 676162946 971272864 91224250 457116327 582137738 600382500 795488034 839937208 939071166 960553855 568880923 752943410 208751529 944733897 586400872 853650364 80287762 199744991 423995333 663254499 150870298 202533086 830227361 958588680 910498153 931018737 289181300 768535027 619831496 866545216 577028993 713876112 330305671 546423112 903744326 955195884 205979116 860836732 447487535 730508509 135482546 777119539 520248207 691605642 518034752 976417179 250880568 317906048 549911587 580910547 866504493 874545950 641097340 770112101 900793204 924673289 464038264 599625779 391207217 515228494 575848314 910474210 229285173 523173913 924096480 928622065 714783603 801872112 249931527 752266268 993929902 994124477 678773226 843156085 914955433 998860703 680459898 904133627 268977048 740915532 804932170 956090167 34861465 986585136 421257120 927745650 980293290 993754452 880181049 982504067 402262205 613206483 245072241 933186634 838177216 984448025 201041276 572863275 488080981 648181112 365293822 800757862 697974039 735311168 879522581 979174898 682536836 856270235 338828248 755641778 354854012 402736453 729016226 844965595 839618184 962382939 571613568 960318935 8869464 639732134 547116942 665725075 150650589 654073804 369732238 458184344 588182002 812834716 45540027 806289902 810856697 924328189 818410940 888770557 897486115 909012998 456993083 739967079 461134821 680819674 769102333 785432966 84732568 190965026 565594488 689772118 857636701 968267461 212457401 642500772 725955086 918804484 8248529 878246509 297732013 994659370 900859588 913779005 543030244 990526799 433423160 649943688 49026930 508102583 273769224 460916700 745230235 967958723 98210322 846949201 262854396 994789466 671161356 928461539 664701037 803253762 462258334 560494869 789373784 810865991 393902154 591827011 614889694 825558099 189298470 421381809 43114011 100767895 183717679 384382329 373045005 833669305 101491785 419703929 953790556 998929138 48554860 889803887 439629031 814726153 72877579 861446847 549361767 770967012 212311117 865780793 517260051 674805596 179601346 275942911 773546655 949078769 76533306 740144312 356610564 695790760 167527551 897546668 680773147 919479694 47243564 141317509 330074539 763688517 365560972 534483899 780479605 865414429 728003826 984932530 23438645 675846820 787556375 868443379 236938629 267753583 833733816 901168650 382355257 429702811 50807088 239399774 973483166 980945402 63535629 536485395 418547932 771327759 627730 994294208 927371456 955087653 875489269 995146846 826163226 857720124 934319458 971556452 578500429 871682546 284787854 651666217 983288849 998944755 855953767 907475254 996490692 998414135 833385005 940511335 783408057 892965771 452856316 474739242 722716497 764435938 674667878 916057102 951672174 955910572 364165453 436299033 981471869 997077784 376131279 789584761 458210634 629869345 313838369 876200871 35926915 470375123 970359337 973608104 284759331 905510062 769722273 853519716 646440283 792288506 16288316 88752776 27436320 979657865 856674678 958389615 24693353 728836736 905380636 987935027 245675058 484324405 158022114 742051132 509060328 829523344 807237065 874827702 753966602 873599876 495060855 694188535 471438831 669644608 494815575 880869435 567846895 745679531 566590922 644630060 809999782 912439805 510107944 619648011 760911940 956598326 672216921 967910504 323252846 756941218 113732205 761853941 577450074 698005951 495290483 986906050 757820558 973230193 213460389 303427248 36480437 663206283 190220378 534800568 792173747 968951256 731416302 787463191 682785472 869083686 335445068 396837440 268559638 483321003 292799180 979710012 508544927 916953208 616994371 960317170 377082795 570237822 367543942 375456333 494739216 616975325 209207102 729919765 833285342 931610343 529141708 891559726 268767942 855875131 781086486 918957570 856148329 891322148 704821206 897989217 806430089 918644632 533705037 874743734 349800765 891081990 358431550 809512919 733823643 820960382 976793161 981066101 591149404 656463154 962313677 991288613 551395277 975491611 843970479 848878025 77572348 149645047 783306468 900213176 559115999 956941302 311601684 486514035 652614772 702898503 283967689 718091673 445375924 668423488 843122848 847029797 859559305 967018929 210588609 888299403 490315865 757094356 216182588 514739678 507686400 804503083 136766496 955221049 193424869 706006862 718176247 957315860 346088733 587329578 736035901 806965060 511613880 744034086 61515214 389517020 400703751 833432697 125374004 665697764 234226417 704896061 889341540 958501375 932850718 956340473 656055238 811206625 524547922 770033679 600453549 647155566 816007088 829616102 791182510 920407336 77838056 925095814 527850101 632050623 643918977 657674769 918080070 969362349 887487841 944898960 700017187 744826356 921935636 932259961 523382533 886395105 281877841 374486857 47667231 820514720 570417463 979530154 378081967 826203287 987379175 997129642 602539772 983671575 296442133 482256030 917248808 950775594 713870903 889482715 374654983 398344425 626424495 657732617 564450943 950203075 875212697 946265946 998542723 999006433 739017845 985223131 927669295 947415636 283394150 344049748 305801213 670145433 640831722 915203279 772023260 924856533 605953912 621658255 875109243 970712475 26501804 528859102 473547696 839067070 874771515 891348815 422354343 576180715 124787832 966261726 333936651 645653722 707102451 745643256 45664467 167707480 561765373 573727945 993751973 999309883 559981702 680882155 728362857 790853319 316027695 657597596 61105998 200528036 329513755 898434024 274265039 982532279 106716326 838502809 874742070 884603984 691371998 842224683 913303414 941138982 673630569 750744868 134990307 559460276 862269792 944504408 209861012 690704728 269766959 332340989 117653851 428957499 696754544 766355956 65862250 463820117 879391907 939763537 934224483 952481881 870596686 966954297 735002631 867936097 903783467 923049452 111138577 466452933 931893332 967528527 913566409 952152986 842888125 875087177 850299524 991741755 624765036 818156415 824353778 839707610 208289468 901821250 469207875 966234027 672089035 851021229 55224871 770611307 449930089 936966502 27191512 241870990 17315628 398606440 186210820 198476232 734788646 823214449 476795629 584458077 559157691 918891325 711004594 836044402 509466320 639076352 183769602 575531725 478046866 899473682 161699596 953424166 916347556 977987495 595752398 679109040 84991852 480203202 550333283 773048505 445011360 948772778 756731499 819591707 655679618 794287279 365156455 711588717 434059554 693170414 955945553 962719121 987694638 997814229 847816265 865399439 171647523 433916003 887572806 910718368 298320133 550682090 298095777 863401943 113785270 793278453 461799759 593569575 355562492 471207963 166462565 430146005 61685547 321216069 818420292 937356355 437630786 789243566 440031401 543884576 222628173 267691275 50720583 518118325 692887539 982757621 455534363 632398490 887433334 894222875 213560191 315816800 791704886 811235489 178984779 422028562 569942401 858976088 308995457 437220219 373064515 680273235 817870332 875102665 350696741 464229480 106510253 319547781 85861727 303395296 575152120 776761405 849198102 931124544 731857998 810963755 43094483 92973468 9344885 357257966 588299167 928107205 51150797 432111959 874785256 889532411 518548860 752560231 590190546 790202306 290455833 594762540 358617293 569699907 836039202 837625227 303257947 541685969 837338375 993038585 513737159 955103633 252210803 933268913 643653771 835755040 692374549 820599658 30440868 500145721 255020763 625192835 614460848 789749445 902357355 959091965 878221873 882698239 58585190 285110401 16817971 697341805 514412888 960848267 887721265 986338187 59903607 601735101 674299831 974544276 630378671 741178213 990779018 991644307 465638107 494375197 828958118 992711406 256837533 346135380 270880400 772759666 536841711 709974807 226863688 863504254 619489203 647254461 209573562 240606515 837431960 996963128 971187348 978836456 20944895 719183187 96869638 413353575 337015469 627834804 78081496 217526593 409630905 567433971 697234861 827262321 700153134 738564463 261726378 282372149 295849264 442929758 402533282 851152900 437173159 901397935 989214694 991215049 945498024 964756977 561440620 758518676 860916062 986903782 591597812 813732386 954088075 979722266 238102583 443887168 736311694 845518436 697812109 789383970 23634425 243442388 985760115 996867072 831594847 916700571 608143464 934159949 157329056 605004338 274997349 463592783 205757956 929409187 961742955 984139625 819957411 972409786 437595885 793572028 398805918 429049758 341220912 848169278 878026685 993440087 111411836 185985520 426522414 539397200 163497629 819795569 999030937 999261613 72577281 443731167 422860351 770614933 566607543 988013835 453168924 748186485 663821707 929650929 603982691 917558107 151810181 967280293 675272620 734471900 690625602 695461164 295843385 655077887 954601364 970916986 251771482 311676385 455104617 916330790 8235964 565267024 143212418 166184026 975912644 993578409 826871477 851925232 758389808 969758955 519741339 691075028 198259568 284626422 834118999 992427726 102600024 579494144 586970937 790083143 174016757 353108003 116136004 624086331 263474112 946502421 14853159 627908631 825309477 916364192 259837979 930289686 42857214 955685995 709119940 711837172 916952477 963056604 839616890 918738873 522109785 863188073 377360552 491935190 126064383 414863898 981539595 988076668 841995069 882797691 701993927 898086785 16486284 587081071 877619509 938697409 372312353 532518643 348639105 963910333 85572348 578134300 890081034 937927911 541055774 777579660 893648281 921838296 900829775 961373334 755726728 900382681 601181644 908442656 141510702 282423438 109075504 433087082 492322734 953726910 341822534 483594083 872208987 903285640 707337942 968323387 726027421 783880678 420567801 759513608 194927345 885770697 357830048 525542757 527450574 573238321 29599000 124935882 630382975 984638020 25727740 816333935 401801140 592124275 468730028 667602523 393422674 770497062 975037129 991960938 584249800 683887000 253053255 673385891 77468649 571398272 38743400 493942696 719382373 914379021 657320940 786881092 92641093 323133532 980066016 993944216 553867117 907713512 437131006 525601034 412197325 598739717 519225571 993290864 224027810 679656817 912318874 927669443 100611099 977552256 519680184 921955769 678501266 798700224 793676141 975296741 210933787 609962789 123138402 346901105 267344751 863982685 750422652 873752200 933793382 949962341 78089939 974602816 424857538 526405733 708184946 906506516 684127816 742431841 133936172 304099660 779244625 815553346 22887244 235667762 443065365 919771227 878850377 898022106 130485396 960541835 411422847 806128959 356047162 776167206 429192193 801948881 662940356 809533358 859857230 996561706 744642167 930787410 763969418 979982268 828166257 988999189 58191734 888109078 824745442 898681036 866937409 930642314 5775633 609891261 65785779 468249975 324987213 577928796 586679877 697060813 472376909 965418700 623354028 636376733 435282055 484891803 890536881 899927663 889924431 966285472 518226505 524360328 50188773 754481937 784473855 939967014 665798689 982411954 172484285 914745570 767306910 961822754 786571775 812582127 488230770 652299755 874545467 964306768 205671164 293532718 296921545 625545871 34702598 206644773 731096729 830952665 580827222 974906990 266860920 638138636 368439361 668392742 310806091 633478350 787732289 934187463 955027291 986213879 704431650 861350755 822124158 989462371 512871475 524865468 465419331 911695802 576172380 972269026 894388861 950481692 546665116 613758847 977671587 978413621 655009310 958964476 285829114 686746280 290944267 537113414 12817332 515232062 110727213 376385422 520087813 875270954 636519214 773035693 851431431 950243608 108007890 947183556 108899485 261493072 900935837 945492405 784497351 838845844 967775921 976860931 145495387 893434781 838310862 978120238 496992249 997814392 488192219 852669623 203034131 224792445 314528011 949437961 487449692 914353042 172621530 711259850 100635606 546195253 142455709 833250402 634964219 948254948 647554287 725989684 109081970 554190839 393759491 574758538 514489343 916561125 510444038 977901796 822785480 858221576 420880656 981555165 170648520 928286234 587232380 687158008 452790173 474923012 860662693 926533450 346355121 731089093 934417758 954406024 998247363 998259700 539776584 714071943 309696211 432583778 490591889 805203845 865841789 994862187 686973054 871693781 747074151 982496605 778817621 950232718 102528539 981324780 668798367 827655181 659929303 936371177 158481327 476477937 295226554 835724764 527875448 742167816 520631962 942604758 836125490 952928916 227783935 891401976 175609352 789258607 895915740 903993909 747840757 833594160 837571821 899529014 530457184 700582909 229705520 491524025 652016465 948177344 791720705 921858278 203331104 646243106 571137861 750129542 804804114 988157647 271964232 708396646 632266494 723988650 390117165 693957964 182329024 344267481 166869678 734864104 537236516 881083497 716368055 790512478 336036362 363341364 331237889 752011629 938226722 948675814 601399689 946828268 954824070 981240881 205844249 349330661 440889108 725369076 748031731 765036790 126149551 834061613 444459664 617106717 583693987 762661624 538405842 887807708 9088961 705595970 921440089 934210996 232234970 772877096 844279403 856027989 811804549 871616149 965193805 976475949 164560592 395179587 491562810 706323526 841438393 922704532 362556540 602536757 518945752 778764334 34000296 920719460 206025774 228203018 32698878 907830881 879061315 998773984 239426711 493143765 680364632 909324861 214648668 459451004 816055643 859154289 963214558 980287870 464167804 760250573 775227235 837227296 323099981 507713713 484043561 670393072 152981896 223322461 248798536 973769449 208896920 563229709 59525735 70251010 67129756 386256276 198341974 891820888 89125130 507253658 254034636 524083540 633774894 856860666 795985200 985457807 292537986 312052104 41073726 159203057 176947488 705512425 327219692 815925397 759749976 983069871 334890828 335094473 892364029 930918841 711531327 811055670 775746464 904909646 324890161 770910294 192681943 925675706 884656255 886597713 163675393 601170796 678221065 742289261 309658218 678548232 536107752 755050197 824183924 856136322 740765128 872089672 790468904 981630795 845076662 987290518 274910968 518657316 888089694 994523427 261609759 310506423 495306945 722053814 76878684 579747649 202157266 664380777 835404350 910173133 948141025 989097094 649326394 844298062 505079977 763308763 594871719 893431065 90067222 856023357 775538444 814331875 144839081 330103390 931318741 988332317 397407409 611171734 900741127 929434079 761288020 854791317 347904165 423929053 462118625 827627196 495713241 754946995 364454140 959025164 317295650 474677828 377878055 543625164 768816810 919321785 386815096 775466987 643283826 928905991 396255608 426699019 619893829 759817232 15134010 675626578 230501045 434356551 530221336 910801793 110222903 209331163 807571715 868571021 336617912 365715244 401916340 507661801 739948289 784236138 479666895 582517261 140892098 859524809 635412200 767412263 965837220 995184762 673939522 932433701 660468595 914727720 34566319 647424133 664716575 721984568 220080301 487873022 595944913 655391264 659476871 997879177 872092934 893564309 243291892 831208238 396677315 831539229 168251691 399644904 304541967 314285215 210003713 288407207 444797011 958049156 526321164 572752217 695551309 975839737 533097378 548008728 28414619 807461076 281099223 758244175 784120656 963646373 723391698 997601243 990796208 991353007 738630328 890534395 775631924 849226345 798843830 890195231 710722915 894496623 934429107 964297016 831748727 963024488 394021385 643774470 914575121 984618237 541990994 734987134 406367164 494703081 750518249 948294052 466529535 696789671 799219108 872493579 445074215 495104467 811781858 950271580 93422941 214975259 492087563 635202890 505172788 612101526 757838746 799328945 526948237 648687080 370321739 560724404 365537421 719669008 745019979 884884090 648712850 904335056 104073709 297986032 32769163 745248132 439813158 734290907 234190649 703922712 451242251 808703504 249597608 860652439 814689459 880447371 466422303 563596278 428858075 473515532 887339512 923172466 320628065 702014249 816444422 969792562 214354719 277715313 639232718 803256074 467181639 988209372 102384163 779008173 219295395 796717217 182184095 930626364 851559085 873840197 678651492 959917559 220387317 344920820 386121617 791321391 887138794 960924936 406228312 887090308 37098237 676531226 336044001 876384899 452417244 970069806 888380638 997408536 611087061 714228624 488710805 741390303 96256796 950041608 959330906 976966979 180292744 493569895 203297914 568983645 222866758 257498092 793605033 917265667 255625179 318950616 794603112 976564270 672059243 919441630 462975606 670325152 22088384 399064558 555894148 725623166 615893587 904626657 64191993 911593539 129996738 348537630 207929781 962857485 733574645 765066503 921334604 937145856 579701395 975598337 796823686 966555005 965593979 996469971 742297982 863271870 182370594 378936903 527017358 786937514 535186543 773531187 584225682 651346075 70838031 426595097 823823037 904071372 197948941 600361676 605458274 792834405 149953464 461848862 518541148 757549215 29107678 333141242 693721766 934115453 952767170 968175659 517752624 840008497 61462462 556447881 181690655 703663814 652439485 787247152 791214020 830191810 244820800 760281334 13268624 850181489 304033981 442682505 577368448 798699440 268390123 800327383 858770192 898231427 172280629 485679804 664533202 983806076 289621691 351683440 348786817 624902595 346944160 429954618 156592279 493306956 687026046 727302241 424086640 998712086 797217108 812817437 172186502 472850264 485072835 496708896 877034728 947387576 286883057 853312434 818159944 873822700 791268511 861074538 816656471 981228126 612612061 941663836 521270413 753372602 391751827 958978527 182079877 897913862 328769838 843385224 401024679 418682403 533843405 634110710 963510570 969897342 540490779 723997927 605840532 628959325 64422910 837965442 415460359 667880870 965591765 998486664 23051482 136646118 45152771 561153826 857368845 918500928 459133149 989950358 338777512 381846510 958336579 964534166 808346329 849171141 350705077 468099578 654929097 961035647 771735802 978490175 239106453 640194784 526130257 562921581 59429994 292953830 505703216 993544657 508901774 752409373 215835272 319650688 737444041 936229592 905377084 916858866 771602523 975450166 669341889 954251531 347172857 868097170 472435966 683261277 820759552 951674848 635239114 777622115 833629054 940833016 721210231 820872306 426480452 752136827 389051573 624105782 446139294 668743275 966291812 977476398 356627548 591511775 672929935 937381075 852140245 955804454 254055197 587681195 202669768 202972339 432036951 446043108 942874433 972089527 606177199 922292364 547744769 993112579 764785892 936852435 703639721 888102566 491561719 544249202 418277447 704846572 744819642 828137784 639670368 974902873 861837468 905349973 211926776 721552422 447126301 646355091 711911312 790383623 900351450 950577140 430983291 925525036 16620796 598292765 353776183 481622901 841153652 948507679 647201130 745217816 373389780 467252852 467812618 562135997 960569681 991254132 318545365 614641767 312256739 787491056 130564433 944719505 197335492 706018760 536262778 943884716 467866769 502178435 539215877 955891236 703139532 829961533 818315290 878821657 428309813 668165890 283696239 515093515 855928452 966772730 90690083 749163734 697147079 866644628 121811059 234334030 951612860 967573799 106164693 792208184 982703284 990220501 21402397 748757989 247516381 733735728 841422669 968334693 1721464 688885249 984258120 998939910 640550940 665439224 857977920 894076195 608311014 810308884 98764141 138509490 538739701 545258185 681097151 817260775 48954598 94243683 902556985 916359001 542286081 949776049 181749809 453271400 105851061 692458921 191609030 227313172 848165100 879712329 864273951 993487952 30137322 109204898 548963236 938172683 471205716 651674297 15989461 590363629 208052712 404182590 960148695 994640127 927028936 942548578 993529443 996313434 744363291 802975854 761467728 829071475 542089556 784392485 256344103 776735092 770015904 992285439 824495949 902108630 554769618 583897467 502672830 604946156 240062597 761598936 508300530 583602725 438476201 745436364 221869619 791397029 950669595 991402155 522883955 802673145 10289397 989405570 679979595 782210588 49108747 181512711 610200515 803854058 895978974 910560874 79362165 543447780 552144067 795565692 346078147 505401898 425680352 598306900 953223187 960349078 687007030 962534709 57558864 329798516 178508916 271674672 705827652 862151479 519710227 977036254 351102587 778742924 580736953 637760563 12017124 103864603 48185546 983769906 567643687 916676281 583496265 894789268 704292027 961758556 343779751 918524051 411352629 644277949 249183158 407401820 769838021 924838575 216102981 854021098 549865266 686152213 894788203 908587413 376952553 507104965 396013340 988884460 651741663 695203362 73325103 659631530 409043078 715454508 907062922 943537688 262104315 849357430 149518645 667956067 998560982 998912495 896957789 906576523 574096587 718571491 895596112 932382753 348970228 370851930 519293346 760413476 2523512 739096435 551015536 867620319 537683101 822985338 475004184 782146815 963346058 991327714 658433607 687973973 205993595 626542897 275234432 300429167 772145899 882127112 64175208 843505619 303742101 497795058 902845714 912583922 497881623 843991710 355934734 795532128 718613477 924298844 53102337 386229550 158680767 321107686 337759150 799556245 490845925 501348480 971300521 985324530 440402679 637972771 963676797 982485429 252359118 688649551 274252040 632351788 562907618 599723564 720166796 799776241 322701343 968527848 519719895 921980081 474180041 575717551 183751545 442989458 723441689 728261563 17634120 390980295 209297992 240966927 183273165 292334920 690491977 781523643 475849479 625172537 438134385 472975334 856620134 858434064 851233419 895450249 69310881 382830255 858911441 859850642 42463992 149306247 685184826 962244925 469667931 555939342 856874486 918109593 580967498 711788212 17196754 703182639 881602223 906979676 822223416 902937896 959245972 990052557 657330470 822925602 269083613 804774966 286493658 596483509 472416902 994293115 525397187 787943963 697935276 724081153 117823363 977935071 55565634 440269120 20186898 700722716 325384733 682226458 103467669 656871941 677754836 820266382 78390249 574740461 292428929 902902470 380664813 555008312 65135014 655238001 140734509 434267265 47321405 335916484 312896161 337408698 256471056 383336950 308134561 417130075 860551556 999061106 344679809 355354102 641946502 712375688 109593143 970961567 966969672 995992796 469401913 751812215 89221286 692891787 254727119 392210165 156177151 266904642 141010966 742869598 316549114 486743886 937534237 960199308 441281303 884655016 84280205 585564150 813917557 894309852 222128601 599825960 991729887 994190310 499033079 692900853 910545216 977469017 555512117 991296294 477826960 983026388 437371323 738468708 53140006 792325522 24552878 397949345 57505411 320034517 799599579 956803574 386000861 895338357 420957423 706294903 989813204 993872555 440008112 938417005 575279065 958404635 41621155 253511899 242114463 588443871 215210254 305633616 237965401 330612926 435710525 460577974 4771553 532304601 666230588 929206001 616646752 809872561 758828630 779960276 790071419 831105977 279028798 934109924 299700452 425008857 455063708 601705838 751713286 771944529 561043443 958497692 342521766 850464741 248414364 275754940 277349909 517540410 288887469 321300413 136856178 253561833 602896833 892216241 271647289 568573941 25838614 915253209 41948957 622565966 477537813 809551215 826967562 916440225 425578950 560385779 68025932 123294392 853273487 891386560 366421377 409988350 198326001 946826977 623485646 797088769 415138249 525755408 116246651 362923351 551023759 993453188 22893372 124557466 240123209 691687955 405421478 772516394 537208161 781388827 473321973 802923430 216230238 389225578 577300779 991760335 436838600 626687642 230395926 918580969 838551987 925000329 778033098 989126609 704376276 791834011 633010900 978363372 534583284 820620823 580106669 910867828 62351964 237327009 310530822 980147074 903535409 998474291 534802295 669887702 442132458 598000938 476078729 519413528 785082823 845005703 151918577 543393704 966665924 985210039 356864835 731861332 211212639 503010076 730072359 826203892 747680896 839100946 501905624 950009774 156866650 702019929 461051673 497946967 394359369 464632663 530322999 949647484 422883626 937875741 438278156 632854210 846494917 868407623 695670326 784743585 626572361 831008584 646586195 896841358 502063731 538949236 310323371 643516650 462804284 970485799 354694170 368216424 672286836 873316346 631716016 967351082 799762802 847012163 680803420 975995129 875657599 881017745 32320700 198202892 450353471 486624917 86411318 915963574 370527909 830287573 917728505 978120239 98777022 600222957 955335819 990617809 19256612 519640020 703999787 927005759 407240241 765488868 74460937 370893831 150317307 714925254 949802413 986682491 129419479 844665730 536274543 664848644 428631966 935875995 726093829 967246074 944502983 986188240 794436673 940124177 647309906 958714150 276802362 495152037 441430431 555576002 51359707 997208525 321154066 471520436 727376225 780663128 653591862 919569558 957292055 992595210 539964076 686059929 222104992 632115397 888645612 892996682 85265485 972615428 52166060 389465789 541205017 747947820 756742037 856199571 844236015 940442880 700913612 921898674 961810918 977767356 74098671 466310118 569421700 609210535 961120568 967587622 976666338 983298232 58962412 673476367 560474640 981122427 143410531 892777581 760227565 998425714 456091258 737328239 212679035 924653090 118359890 958529497 844759883 982707264 215155638 283664505 509680099 734315234 982703895 989768293 538614867 778077490 234982915 443387139 456732117 711848947 25878913 398419442 353049090 390446418 276160124 638007212 542911454 830476946 858806151 879609733 446607288 977560644 396738149 564400805 179076731 603247738 658319302 889316054 91596230 434337661 450537257 533990715 30182726 680163336 890138829 964066347 262363338 772344853 578916987 884232683 632539249 747253882 30312912 960087336 169997898 702817871 54891640 359234457 115320693 467366106 427362262 763686052 487782234 897078233 878464014 893677923 515044212 804785911 353663121 625197388 773753703 948899554 861190734 883733152 663254075 856633589 494664884 546860966 169350435 821695077 979081957 992118559 243399336 428949341 385055403 758314373 808096622 985177105 818930189 942656052 963047753 988752316 947260612 956997076 467254074 584066090 131575847 481949744 860220441 970373299 492967321 982328422 783914343 930789509 638911681 886069420 856010732 913866823 329186284 883414919 59224185 237965695 242853767 622630330 246754234 771849475 862105280 984227966 140997945 698916870 755412949 979923290 808208962 850715292 857715736 921373107 376281894 744711188 984343948 998038784 379751678 883288391 864187951 936498445 754495302 840801392 422007347 548721957 446947483 457861337 898333465 935170181 275131296 921162815 469091635 947456708 161882968 757971912 526926404 743717097 42029153 51781565 582241172 641794229 482542189 630059636 513945471 898831443 285626559 443907707 503019096 974437750 604090459 841088657 96060069 736556608 602932732 810249226 990776445 991254012 804271098 828084044 437659123 887073362 674399602 710486879 797190936 829256752 4886316 540359644 492516070 593926185 907330431 972085482 313116643 325081658 491883299 718514547 554489956 609323844 132571900 704293476 465011642 730279092 538222169 593356480 800945541 818335089 778692924 975848585 163612926 244267978 384150941 904819433 634306404 724960000 409992389 652650158 211417863 318168210 632788840 934979161 991095628 992436405 418393484 752056290 203601565 547233435 330124098 640845083 544025382 785903982 27958404 402027814 153825704 847371117 58568787 964321171 78963286 919432912 268489572 969354226 57932077 121013808 887825292 995620954 317795923 743489568 818135006 993592751 736179348 843982593 233289210 916149720 797180899 995288689 960029866 972005072 160763364 835737109 215174285 442263516 314709385 718250417 335157913 518341379 71417671 433122739 991510724 994275555 798969616 841212604 729212164 900814674 852271600 971689000 814079251 892069331 485704099 674372044 117932727 237711957 709244495 877599330 228570523 875093491 59346111 663437230 360429692 670012825 287480430 500467556 524128383 630900305 119008973 235260239 493164560 701538379 683317973 717284245 51901760 698628980 178087156 249404800 64589479 77070797 8495326 92020770 12939369 19300163 555613943 645669189 684070520 837752178 497695533 612789499 451628157 859100755 121214334 436324596 995130375 996672020 337766339 673573542 990521898 996434549 967663015 984066561 778453171 861427882 264554295 992790378 901518429 943595193 480588288 689209567 239177135 920113771 78404564 950520878 330366593 667136724 976357494 989908420 649916051 721161574 513570069 681992305 448640383 991550771 494040971 876331695 741908137 950198504 734170854 918949589 383129090 442102011 815303405 867712127 789105299 912462613 362329568 735024794 390538894 786832556 958949433 983835327 246045237 449071716 58455785 938508499 349731356 881726736 976545542 985711431 515585449 981874324 562747123 827833049 552633340 781505113 196457508 239547862 136622880 145670778 591070844 944217317 830763926 955152093 231881368 664483616 750889345 757748472 125923403 625403280 530020840 842015636 473652289 677950338 417244268 991989762 375146124 697433492 885568917 976685298 837799819 900838458 660885673 762203526 252297733 856751649 463102333 777185323 935383855 938201112 393098663 851924704 60303365 835261016 88300872 168597445 616626025 734319905 546808633 710789271 152206961 982560940 644051766 902240153 886867217 902413587 874145990 949603197 620285021 813680926 962564425 975002922 258179127 342440911 21594085 142531471 820554789 962622898 682118767 931874293 401085277 993545476 326258115 478321106 888478741 940908532 432375286 477906355 834173847 846108249 681886140 794048740 676591664 872197775 651966905 778737462 482722098 890771985 949202076 974387863 753302272 996893162 592481733 870976591 1856699 628358228 419576258 525374392 414986557 974783729 311293219 649162979 976849456 978972903 934352521 977522905 527068562 923431193 924010977 937498507 37503510 937291789 138520155 199241355 572637985 840568922 511679882 978631009 366943688 696667463 796405918 932595589 266189203 949341105 448933006 556310144 458646258 866215334 834008907 919607830 476711098 744943135 798895425 817308999 729368889 945944472 659743119 661293947 474855529 555829165 262673247 809133282 613220675 695486085 248897063 597068752 693068347 806270425 295536443 387897311 25333603 80997640 693893465 984422739 314606181 870869741 937801585 960294738 333838240 343232675 633645538 796304404 182265365 979778910 310780215 619959613 638059161 771654911 311820380 723847796 681247825 974313224 697617598 886507973 892766481 894750834 174138820 205457514 23805177 202156269 177674665 949520632 241338510 683078764 911474432 994641218 310927240 523002115 728411064 876332862 895733270 988788251 611505382 721669120 6062797 95925750 911437972 928475760 883318289 997333694 533884106 687821740 679142506 788888589 953572096 990075450 137090696 139167794 730237092 974757896 655980176 941245782 336542635 834182500 242736245 526177959 690327882 915505447 681072465 995069708 595440242 849777903 689282115 721246407 446107043 711381248 744606010 811054587 575308936 944167989 590661669 930795835 144782000 428285449 907306326 983929310 880225470 958240542 814403541 965424469 89870669 476356701 664358140 983907394 680696837 830021233 85006163 288710407 224190616 830007184 958224575 993028331 430248967 876866799 335663164 690776468 458544559 708899987 9041208 608337846 185909622 237568934 488873838 750100910 102894842 732924132 770112952 791827513 520548386 958085498 541783725 938050446 492244543 518647958 460767345 595194505 698890709 793014919 212741991 475359709 648203778 859731199 57412741 155950291 179962055 647888973 635785334 728709682 389290679 727464715 832513271 832737355 831493324 962263255 930568492 941014106 546812773 895337766 671802351 763752422 966511190 972164824 149465379 377933684 150660202 628614701 878948916 936387695 880969015 938870483 278328292 402654522 415161837 941899745 693289611 729858288 45029801 537654005 246846921 292141106 486913111 796282559 796074243 914048330 865590647 964431825 650706906 860258089 896345267 995811581 356111814 562189670 706345584 873266673 718641262 848781980 333837095 443799285 128753898 310710609 848776293 952689484 547295542 560826767 362364591 773329279 678174975 973832616 833299491 984849427 771589922 830278413 917913211 968700271 49439872 560208549 917054771 920250778 710328110 731924334 605643574 827398579 619421459 997305985 608325096 941376248 790799317 807634631 612001321 660688658 224796027 980737850 22511219 476739132 114004623 747761978 590036220 610708250 436002250 863920926 817621993 977567836 109386361 936904737 747528788 900967195 765811547 946173059 287344221 531331370 294338788 359470818 536794795 787119408 174211633 628591520 876554528 921899231 155455299 302250534 538807504 832848632 782278265 860893331 466475604 812474135 529712139 895517221 977542795 987216331 961248857 978058975 214329630 977662778 154214505 644564414 652721704 795516807 695080207 806254461 257203558 650478621 704590511 793796118 638909690 823579580 601306592 770735680 882964188 963653624 776977656 864861032 51206107 944290794 213828593 543991276 481829492 787172710 218622121 400416823 503285823 856801906 651370907 877099228 546186131 878503464 149603982 827488302 791200077 899711380 437205734 958438015 744106557 821241807 293945961 632519629 513169172 777931526 192912393 334330869 60368952 249873579 854913843 893232134 525624689 555057977 714947520 825309130 516744990 758113721 59879498 256998570 198213781 520027594 933859732 943861332 824022038 967493991 387636207 654283197 833590973 839242351 695719965 860573838 222325181 267250299 97446553 521202242 670585282 763704059 15547496 76834176 309453983 913709143 362682207 597148332 230575750 560877334 80962365 182103963 413617145 914343417 954086456 973023231 108133159 142300350 936935462 941486741 949638140 960383702 79859862 871276837 876707416 935994968 413642605 938820414 453390218 842239795 71166749 561901211 698336051 973964818 614229579 772935338 293328230 783472634 97491 313794805 103469306 713913414 264597633 781971901 370751522 607211884 36129172 67536650 832696035 876905103 256298134 885890257 791183078 908232013 681766444 797393890 211613174 739913171 845040734 962547976 750153838 820440912 374635977 431044196 973354904 989901938 594722308 697076914 512466795 600428720 632664409 939236903 37552142 946935516 454446047 926368568 877889323 940662253 157459507 972627331 885365890 919248413 914360905 965712800 948989295 975639007 476363083 898390325 543371190 901626775 884385113 888847094 919260670 992347302 161389692 679399797 493078754 856125920 843647558 971262907 72376486 481236755 18056225 231209047 309295391 340634422 518487828 603511158 855182430 869296812 124731081 527975119 473695471 862127017 471076492 609671262 689188613 847118980 830051973 917118370 167127272 730853988 19330596 825883940 147420746 972232999 503478452 885963532 222209230 555120921 707077299 770080948 285861602 405293971 536268629 557703807 353522499 487097650 372816704 942725233 704082637 891450609 841648458 939136006 795710767 971966942 231492782 724834706 198557168 549399020 425021235 988325579 554367605 836290314 994802924 994842232 114195893 707386975 189198900 918669516 764598429 940949906 212466923 445716860 799703943 983910878 306570526 953326971 19882834 89229579 958074502 968868762 320058295 758836530 325036089 597674011 980028882 987315518 35647332 267458928 877767028 893171494 905154433 920386519 253102993 857148033 507484851 669631760 859224371 880942342 871533594 887123057 228187504 877508572 290071679 665084264 693872233 910896467 496345648 868787325 292102933 472649146 976605853 992021284 36228184 517956463 528223204 825652247 667937860 789955943 70110139 517061156 181288593 993845874 286243112 773085792 85072970 813612236 835512738 993665397 271467553 453915526 221361502 862223638 294008134 388360094 553661816 704049050 717739912 958843091 998559137 999316314 375390938 730150623 386742579 759904412 892997604 936818850 51093722 429799401 475482224 635847590 443267845 819876131 698402426 986978290 161734348 423059953 870859976 915070247 752858702 952809699 994852714 996538938 464900236 954853476 843019965 859605189 997815798 999185482 938737132 980839239 59375927 871838172 243510778 261370695 766280454 963092975 735135842 970179713 745713506 865284490 603261816 960461335 696709013 928401911 7017911 974651013 190767719 697914013 981271463 983137464 609340182 785640842 412612272 616660017 175640482 349166402 200613808 278755985 291161736 521833405 927172428 958026614 369192927 713118205 560156409 998188585 739490983 924012422 720346841 894906204 538193984 579939563 712660560 941945898 367502478 448353991 289636013 755855414 104619091 932744124 735807674 904133493 954687084 989799278 808880516 950210109 252360792 819691853 88399354 802544867 793660198 853239531 939398823 974097932 621604938 858048681 863176111 951988420 572440988 678142777 360148468 979531501 539584551 813783100 663261418 953547150 204551359 645583760 682391344 808432037 274942171 948629492 917781832 941592128 756834503 998703961 532098047 994263574 791596447 886150310 139043857 496780953 905790399 915270443 945136552 978955372 797267143 880196034 446246139 845319202 990884668 991191051 393703420 569190550 542688833 937668045 919937558 928052754 258938125 657087683 443750283 830888876 438777908 488066241 300236721 753641964 910573784 939188352 868178806 972293065 315421527 636576928 608976269 645391876 741123250 890000080 594122141 883795647 180033814 859326270 200660264 719771801 336202726 465000523 399787256 736809762 88394134 562347591 391297976 414445573 514241033 601990536 467687525 675600540 716585508 802826183 52683655 543636431 62662119 609125540 952333300 970637693 759732438 945008271 548438086 716649834 880827661 995266393 989776976 997989161 563725299 975007208 90717602 518632371 889060247 995981136 149319267 178942133 788450428 938655416 79025632 940030778 836744923 857230317 268636152 871761551 461747719 921313534 447509447 894521268 156965081 930675478 25390193 328420122 891529180 917612801 689298820 955298774 25038969 535737247 822191924 913612070 598633146 986550494 428810014 800909122 31356397 747930791 728243780 943876663 29395324 403223987 658880325 919210345 283040659 545019334 662325990 810929876 233367203 485152967 186154106 751601723 113917511 582827197 603600666 735855359 2712422 357614419 137777896 649987444 998518572 999171993 23970030 419945721 415994402 847186741 352513784 852830554 407501922 956090853 210097745 388139613 244673400 942609878 360794448 602956780 739706642 739921804 834815806 866496535 51519186 375789797 562899192 571551465 423049942 610248029 207295497 463232562 548839429 874350662 453344343 558058058 602025066 733511131 493711705 569626295 679837945 951217920 16848095 459130689 856043778 966577484 891709854 906124063 408860983 730905763 561384867 981553999 370910747 877174839 314715004 406977525 943021224 956760704 794179661 796574429 254745045 687823151 451707061 731939805 434152981 806890965 476709159 894485074 81298517 951516575 407371993 494724061 716722243 916158716 89829372 442827067 159408571 541691271 202517662 308013574 775454815 868862104 977798045 984455173 223692570 525015690 178296144 318470388 567801535 847863100 263949305 656604655 79269860 127409602 208559449 876110600 727482379 739122100 147683878 461467798 182042954 183426308 947174859 997556717 697384339 980358781 874991580 929265147 866091371 886553233 745132798 917812580 902568867 974218000 347114959 928131495 168198118 779714460 719069534 765478222 283597402 733507030 160038435 621383847 998894379 999010417 63921691 355885861 92415293 537025416 410898046 702544560 363235296 749293548 387901083 821317580 693712144 848277143 371095657 412777353 882964202 964740742 412069772 456191495 940201102 947503071 865519744 879024948 401647837 677191013 802198866 944128406 5613820 722217152 896147003 947135870 240525464 936422256 164556879 890392184 482446619 493625165 472658991 731864330 22282334 631449364 507246194 774361981 972552615 983704354 928742048 986733578 516306252 968086631 725846633 991854970 372501076 746856835 76443250 770368818 93087710 398335726 4774343 602812327 38411158 657102816 955092764 955935973 898280245 931930564 514022203 909814135 409754557 840271090 646711056 795425795 741619152 771613793 106772210 979244172 658071404 777898634 523875673 934679568 633847573 989194958 910435709 936598929 500226952 653172500 238779995 647481402 370046516 474404036 935806553 962909919 150904348 815527423 831402240 986879142 645546407 722309362 793616228 959187114 571675271 783284824 600744753 712820548 634715724 925012910 640274486 703579713 802781788 924467486 364318218 536286122 835160866 901666568 871055868 956689752 876635219 927789538 816615079 868807150 458127018 613371312 651632126 717138425 71889228 305588906 780638043 964000208 169080087 694089791 814030476 979428260 880678014 923454825 818188269 980577239 751928026 952327119 161374877 797382912 111578960 854028198 390127070 870461929 383217395 406795883 821250534 915739822 625512571 852696224 72523853 724014107 177863719 447194576 784877284 805415185 989036983 990563469 519064369 784951982 889346909 936544561 841795689 900388524 905188107 923531044 994303488 996888705 834111059 958567169 280513954 876953102 961568683 972651771 111191267 844837508 850044813 951088172 300605146 828517137 525445113 576696174 614535607 912194300 893235028 994928784 437897663 576273693 466086886 855366343 258200757 846079549 455820321 481270434 826598051 915488616 34688998 917359067 481247266 742765975 422723172 634446605 517739532 766757102 484315457 548137281 793398238 907912839 73890647 465299718 292525061 380788157 69801803 482439390 462637304 942124057 308689748 836012111 114819591 157661041 347114507 690111862 856486718 910833682 481647845 821795329 337581188 895290991 30645884 733757101 777649998 876660782 860084581 872121733 21024265 791896355 936012822 966148656 658318572 754235798 981376945 990957968 474057451 719722510 791026173 791130125 328670301 819897420 780392316 868855923 860276941 922943605 588258202 796813756 858712462 873722837 641342085 816115765 763071412 819363890 173964805 416259751 686035036 700726595 480540001 563631058 257030123 799751589 117609882 140886057 712066805 855263920 686140835 811940494 682643685 874420394 401470591 908208145 80838380 225903722 604945575 864125562 378587866 939439344 817833984 968376260 405598851 803732936 84269984 150858798 85176457 758620762 709003023 726132932 450704697 595568512 545065535 930132543 410542717 635751682 230161359 699676880 126853411 499200687 720400803 758819220 449578102 617516044 291020197 525204050 917443933 959852796 50651900 235177169 392522428 926934510 685076583 913985221 819363893 976655781 417415226 556842025 252396832 271764862 275010529 646682069 314505239 824468574 589312921 704917867 941998075 998752159 161037035 529712698 540311914 612580027 692751456 863759460 160368537 859331190 621165467 893300378 640188498 696257473 102946715 795541784 582753931 609765178 942190556 970774725 807411302 964020343 259623719 686865091 356860386 378666146 902689891 921136891 283104841 678926003 991545198 995837612 973597926 988728759 632731944 725507153 846726707 857369584 177394342 383887997 636035178 750435747 896604851 917192025 79237207 85440302 950271318 959782494 428079778 478425413 529535318 642368908 430727611 849405271 682245197 766934153 605035411 976063429 511563705 635348017 424645914 656870345 991497544 996777645 9027441 836162507 976308184 997376047 714985015 887199339 657359764 675949512 578059206 902536839 684232584 729865797 296931990 361233928 237662411 763007507 998718413 998986920 595057810 884362787 314250679 549636917 725600682 953334529 383203866 779134925 97149648 376722872 229193502 997316834 538126927 623805900 385066191 389583132 399761191 594208866 968518854 970808948 682489771 883491891 590841124 781822210 143352052 861308469 79750087 216931463 273200055 511551482 256832546 278652825 86530936 544886400 144185103 218585745 327625234 962839004 197749594 537270798 750203725 889023569 945072315 980794296 992434224 996612097 609123861 998165809 838963741 942915607 114619255 414725244 271993618 958975479 193084179 988599413 76241406 619177168 875903180 891272985 127729736 787799946 172583930 525708237 350428399 777808267 762371188 776102104 927531720 939446560 916258747 940898114 524368567 568041905 705310888 986280195 32614196 204327444 463425393 998378172 929386230 935285195 227357588 265605583 283792358 785198344 610781011 681846946 981086081 984423495 513284779 851299376 779799471 818636385 43129188 927864709 584138252 613859102 483650265 914966958 458403852 702150647 310382670 600176063 34606893 742334463 746832028 817043643 457272971 654158929 828655811 998819237 31584908 832550837 54760700 503051410 403230013 579353357 927001766 978317651 716282372 725446174 853756528 996388736 393840162 479384904 67870257 672703171 624558085 807489328 233460681 461578260 650554673 784473210 376243899 896437527 145273248 227106839 561520956 847419597 635896804 713815421 594172332 869932566 532095886 954690927 476956771 704629162 970645460 994568091 589287662 981409168 808603451 840617920 122119196 648164738 244760678 280521077 417841241 619857807 61028230 975145339 751240476 754614612 821999157 893453303 842575885 956278708 817894837 855805963 782344901 907519470 960616309 969785235 797100972 972276496 427036805 699331438 558737666 722801516 318646939 829215984 346647017 561568501 890625566 963038902 598424940 787323266 857924070 910356599 613644662 619027427 274989175 754435591 306226897 357916682 643398877 915415823 653927605 808657108 992797442 994335859 995190892 995751138 907462817 977055548 35260533 935870793 936268796 994853980 899723606 961883287 229536931 945519633 310163367 394152596 480716643 964656155 985348100 985435149 39051350 967520316 41309459 94440858 321442625 733954299 91709675 149653460 375623237 474837926 140647899 597352598 919079157 968265856 672802003 838500930 554467602 987556484 101075525 923459869 985089538 989256416 383048553 762179718 568227228 621934294 2110648 630096676 769671254 946118485 989290311 995174626 435038695 468158655 353676703 712372172 941182263 989290855 228520381 271005848 186867343 641044455 532492172 638775669 38449591 992791008 449708616 710323861 793182090 874454627 582132039 981248867 981975234 987385443 946893242 961125982 706648104 831186927 805243597 848472021 345169936 536284063 328703902 433052759 204289925 371436446 668801620 795394624 775542805 914031355 877398114 939545213 194416993 693640619 405270885 543452840 304038916 711745493 291646042 409432247 539784197 899782490 314321840 866983205 249757890 734768738 364676907 923160296 329068156 924350515 497103811 981432763 233291894 951606370 68536345 573322387 360257943 937665072 801527101 900694056 729577438 940913925 657811718 748106683 689192401 756879295 872005747 909860004 557393464 577436822 208273137 322710039 433995646 786314141 877310925 881328743 571395530 594027012 356179093 813043385 28622476 185868261 238895499 539329185 827204038 906802612 352585207 625102100 903557346 955545875 881251319 991879323 752020163 757012111 890324353 989201993 839739156 938288356 840350492 973843971 934141465 987797487 477710966 844713890 481907940 615536043 785346487 945379613 450440848 869658786 158173979 209884370 492389364 598903388 834251113 971080761 450235435 682021675 714511617 838682765 580119243 817506415 203742193 589582017 581630164 685820626 123054064 129132990 628105823 654037723 521820594 554703839 656335140 870613972 324466078 878030713 433405139 877897138 985952070 990944025 745364242 939000554 228478806 364471890 695705429 710564414 12573017 849162047 947883957 995216940 744586508 816650171 131092041 520378358 614888537 725165287 880423155 980775168 190910584 388353286 500150890 563702569 338313375 890990179 973554049 994890848 119106549 265732845 997131509 997952751 868742095 936826768 975566888 984068418 155595395 965882428 339237903 935959852 622627386 800994847 299721598 874630578 476333886 901598828 572488583 607645873 792009834 955832383 738534668 785769354 424758830 649739487 441748909 545550824 844038547 944272727 360273817 735101665 159896754 438310965 654746319 820392097 417046724 980236708 300773732 665968980 888957801 943338239 228538688 450299909 924155272 936513004 902710683 969534434 554425595 713629448 526607792 958562034 263180237 763643657 609947919 717274769 524345448 822230946 868802899 920407419 892447533 938632914 834021007 962831953 671689045 963867285 230078302 531435538 196718445 467295974 805615402 856281001 969396198 970177796 341751659 671434011 477763367 855864724 514537449 858304190 473900588 954899090 628418760 650962238 439674112 991863507 568016635 948501494 268716577 459353544 383408553 945831120 518813826 558194584 930294647 989031472 601048137 716960270 138431573 280630019 63298501 136480173 216337722 293824671 754289563 869784863 118557888 448698978 601543240 687403332 610671858 865804496 907129357 941631381 799223244 807348099 417275763 710173717 182834106 922948095 922697976 926161044 981048541 985007190 628112245 935854929 845811429 944722840 674703408 856081866 909539068 958640825 836005589 969981688 18944261 461638133 409264041 482794209 227627 856716550 286412939 652204219 531769075 941423160 18887775 629495407 974093715 993687473 948560404 955986326 13627362 174239413 783590335 994795185 9946648 259895594 637826672 709734703 760034768 905249671 331166244 546848685 85642879 803646198 943138156 994042391 325396662 332820409 842206484 911075957 978108674 996743143 795032593 876484684 678723788 723014418 219800711 657907515 854397912 928592489 813646742 935001136 561910106 787737964 118321857 489370220 812285355 999046866 563120527 823547388 874307132 916726791 62740416 561803954 269237591 961227638 799941522 974189213 118017473 470851188 225551103 421335288 185756733 471600181 613961782 996619977 315504179 495962671 349986522 741289076 510553239 590340039 658293874 854441469 663869225 932312509 424785980 575675274 245096424 928330121 376063094 727189088 792413776 962077575 339939311 826156594 88126758 705127630 738030979 961166120 50303420 455432243 470109823 852712271 963403325 975662029 18180018 731605667 968127626 988989874 51914926 440681004 73711074 674079910 500871143 646127062 971992105 992482333 464588817 633955457 563708640 743681032 300414156 914157174 870817369 944762261 542793313 606667613 388069826 600918433 374384636 736335997 911751792 945628624 481287203 926825538 325120684 903545362 704282056 739451259 662483406 982616744 771230896 939028208 902538956 984023383 831408972 875146004 471290161 822641949 8457609 731484381 372092744 724972585 620775747 920532761 273462839 666088084 599423043 633710904 826461755 856511959 982853904 997356922 525863359 557190428 137805248 991096486 719537325 807684504 622965048 958863713 63997523 523174681 533411362 886735659 644519278 921518609 306612387 436759694 655310912 858432136 555813353 769410945 698108061 957907051 527082828 598904569 420687643 502323975 264152530 703587513 705887283 996930036 978182411 984116005 258346913 760281787 836161 955973308 764579704 941037458 899785147 972538346 53316136 924778828 140712417 331673686 449018418 515262468 470673158 554157170 107116166 762260611 616058186 981294539 679881712 834764643 487858446 905788755 748452333 903276796 93966483 472678478 442040751 856891013 816999201 824929593 685701911 858651770 795680251 979319784 324586696 404505572 985906771 996120012 334167022 933030595 745457598 902341276 830917136 906671241 144517858 711166992 595707828 929233288 349441795 687877517 852952339 997952085 418350676 614717914 395190051 989847022 149561295 423349284 764039320 812419130 466087802 908910895 211640830 346925011 421534471 601451164 153760337 727962132 710974744 841954137 976520075 980295048 111110797 193759194 168784690 687406088 546244664 581532728 93725860 969888362 756477005 925428817 826104755 976294462 16371516 682755349 991087393 994108769 971494639 971542113 264371314 628100096 79468224 579455504 720427913 918048954 702912374 941475143 67543963 947745741 10845637 524007377 910778266 949969132 748540976 952532925 603356960 893938192 998334328 999006104 590235024 978660014 142686284 999131431 336337514 996930223 92215984 471449332 870293083 992469837 579620403 673700757 670347873 706158749 863607102 937230765 132404102 476518708 408180931 444913808 767836848 946676033 425544663 910709980 535476748 680099083 285814293 301859351 812236806 944785613 347103199 559246232 756589300 953586730 214516760 570800426 710835988 756998438 827262932 833163828 192267049 747194469 574726028 875158681 744960211 919777198 354606910 953106047 219518995 554558393 304856810 766647516 328776354 896005787 1293245 518248616 101780631 675735180 985381022 994153964 655881067 730763984 15160722 131984056 689961455 926512311 11587159 201353149 422019376 450291792 487461939 620329171 826093094 920851633 957501654 965150468 774593182 941431021 120349144 358212575 593974543 640706682 296314724 457451561 461677765 772713853 353004686 366835949 777411906 963560395 850265302 957135166 281471845 321275873 599240532 646312204 970616095 994071263 201721426 975874653 751255330 865147890 615371257 682427805 292482935 962063456 299242883 780139317 20340382 382922624 491497733 610980889 346091168 625139258 646238256 708158511 738460225 895245556 608155461 885792687 659870937 909833173 706990954 754083619 117862963 761515942 824777886 877281239 807883405 947398978 545765290 921522403 798356142 931416757 847801489 891674356 534582238 618396972 539766457 541335778 159855594 249293270 535593314 559684889 284836067 595809682 438903418 560545167 791893306 869168989 769814621 886829665 626756640 780188856 723276469 782428562 246168568 281409067 892900959 952204254 591903785 964972353 588701866 846823770 99066736 484963906 50888820 345578817 585463502 737946906 512832583 802845412 874584320 974336287 851535594 868153729 402432970 814733995 825181863 908510660 491573687 650218959 925948050 977998722 379193864 617191527 6604691 262186087 782421180 831348913 479069498 839205850 424123369 479782531 769019873 890894530 788557771 844914713 48420993 215649799 566327323 603639772 740016418 784993925 61727127 111558118 703156032 884530824 785605849 912405514 332435845 586996801 896587806 966743290 553183208 799393962 645439063 913115988 759925569 824389763 898309100 936727250 923872656 943503136 235814837 857976857 31306251 747245094 593517488 939085341 9451104 133849684 88434347 93227250 572072585 654214061 356427642 801645678 228172110 675872289 684603758 685320383 888781662 891741614 381205678 931452862 629117155 990202561 795082968 831955827 661662821 926917105 150218309 491179352 527313711 954270523 859774772 934117657 740555165 952007067 246817716 643163908 404926217 578890235 633246066 847207432 598671850 996987951 800050842 861776703 909650379 920396525 973356098 997511595 961703439 964982389 585104210 728026890 582936743 703547276 772039840 922718206 938147365 992173313 468320292 532605751 578542373 608877514 852471400 933186528 151851546 899478640 376090641 473727485 462253233 724782071 628570237 937144603 571979797 704702136 877933430 976244302 699155100 922752729 496018844 533461297 260244515 817250802 119497063 308963180 602737162 809493044 815212618 961586469 641218784 718004585 421595536 763258729 466366570 699837202 859578142 909973645 215541317 642080014 257919789 705425785 441864252 733003698 48291072 239094556 916267653 946625230 843942430 999380266 48688063 58294764 341183965 471863265 965771986 980392284 962754625 986468860 554892934 717658942 630361828 778238440 502800834 576961593 110242054 817830249 731982829 873280148 707062875 860985238 854566034 882027232 149428224 990612365 336361507 386949174 219495706 377417787 533360869 835296894 98437451 817589318 653699664 745833899 197520231 332597350 668869789 923210407 182333220 948531265 700455527 711961294 54062354 763617557 698555745 902006730 652061993 849222422 252286100 796816111 830205880 991109035 476145347 538562368 409084507 590813305 849066564 918976837 352713863 562567255 479958428 555277638 708630936 951564738 408805738 675594005 369946298 716102435 981755774 998672913 884938295 910403503 479499829 669600302 896003292 926115790 374843611 700953992 596069634 674139171 530360731 785754794 686115495 811641562 712049901 736979196 576032603 798818462 784413566 873402728 516237436 646124531 162819761 926444399 957877319 974304676 173616772 603868608 950270741 978992403 994621630 995870610 252356875 702769258 823113292 973329071 455773506 564889846 112936570 511346047 415909767 770717416 190620706 230731580 485933997 972316283 281840149 847441377 370927794 669330647 234754728 593812657 554509205 987176474 408846568 882591940 223272864 501283415 303435097 549359298 607816078 713314689 78660988 745461612 882832061 947644237 251565798 749518998 882706846 996023522 702941103 769488297 781916904 859486848 987407943 996813657 930781655 982170948 53833035 448766221 184071939 738392324 348288721 838186430 835943153 911092568 165848035 623622478 787967426 972939396 972011159 979866276 383002554 566494157 826946181 990184511 912122872 986791206 978435095 993954963 440288099 469020927 659194756 772702626 769865759 805440460 518842293 913758572 387468131 912715257 664442622 874230431 422789650 465529427 31489430 279132384 288639864 331476267 852515686 993309440 948651755 961642942 575600866 876396233 390275462 561670812 975587512 987899818 348756472 537884234 708399419 911467191 336219223 368981685 552422976 734312886 768186596 955844871 969551157 974493890 530959185 659657222 843662607 976309378 490382091 550606614 544150849 679849736 747429955 871282704 916339672 931673268 87665097 416988640 211329033 495262893 839254352 945481673 633767937 734238314 109987104 735545465 365870356 801687219 928619672 988467097 750931867 956837045 753391752 900372384 267211175 451913435 859834390 954885275 816657766 875088279 867226591 897511937 886968359 974561046 259145613 784650408 260162309 628311535 664697666 885877697 416669695 581904030 620066676 909184128 749175763 944764587 191782088 291731661 23774555 981140554 815801638 939019835 118481307 861889337 353921156 833395237 481005420 720158451 370978262 725237916 671736180 784707036 528009418 909044533 437744171 755823862 681274412 878943411 69668650 141707173 285181883 341757223 120806368 581506799 779311964 860419696 855284296 964638787 793702980 959002483 561240069 637592950 311669530 354604690 253444219 287261442 419374193 684307731 31391326 597540030 819486153 869669678 28881233 284895877 45344774 822893552 618963006 984961782 388484557 473479527 373064677 980237005 822622699 852657339 18153148 925578655 636080103 889680388 787599342 814997839 548134892 916951975 250942489 436655467 305802684 496529516 877841893 944142129 885966396 968129533 333067591 859973045 935207393 951886430 553856047 823167618 713938215 940720074 534001608 766056024 316513201 652772510 3327728 570150692 540573115 893460170 501447358 709984528 280189239 508593042 720831278 722278355 739371178 889241112 975694058 996194448 203077501 540587663 709122954 761215231 545427501 585973927 228726698 596573833 771811915 820643266 994501553 998816516 801280420 853150380 855425944 897806331 948107055 968976716 224620031 774547864 610769454 669895851 72049972 578859695 486954332 962200296 392293854 641275033 451097185 491386780 716565018 845889230 314071683 784266899 850566640 964018254 191367581 649082503 850545499 892422033 642647377 777475327 673037345 681013890 190640969 230921239 259529921 876913846 1404580 443109285 127409943 844107358 670250444 671178040 492002758 794387774 171350762 292366479 626034913 953762881 819578789 821489254 145464417 833948023 509298965 935291227 341198714 565374815 175578395 210936892 527402401 691294993 494759794 643052179 278427330 786506188 666732745 829443353 359581177 711366256 594043784 674524280 188548233 838803413 301737780 511493969 310466382 700514893 794590613 967424115 585283085 848607827 989990308 994966636 99105872 434897833 476830453 651671992 442237138 736618501 57765544 538308061 187265659 730666515 164022855 216414959 649048470 655688024 881608198 998796572 796852486 981472197 326336962 931360524 417240054 639343035 980141736 987283945 69681826 661106064 867695144 908939588 27403151 60833769 441612663 643882445 318967470 606969938 476466699 708816565 151785109 783875344 465586413 853571202 487179126 796316804 394364982 578872389 715188838 952780233 480839482 776481416 51674537 97193423 118752123 421513812 236157720 850197546 609626051 710785719 11896137 846655173 612967397 851426406 378071020 598789415 735971104 865404113 777436558 826057127 334390800 932539423 437220221 591121469 721495501 937084888 870846968 921238290 255894181 471591210 698170519 781498644 692975549 845731812 406191541 495681760 95173987 186443475 780984880 847611437 879907208 919771678 236881435 532742992 996693641 997300379 643643845 768828768 507878881 614829890 629512525 829157951 70937515 689417885 963218928 998456099 695476949 904611059 325809701 931607643 243701930 430689601 216671581 432022586 109319368 935853253 684223862 900368244 811793907 963055999 902804890 922159884 302725919 606053372 776556484 959712974 330463717 612672597 650632590 989120293 546803436 980150177 593775503 613575380 982939048 983988242 965352835 989917696 86589018 270883331 367911059 627294966 368546221 864355440 470724824 575049067 456373910 838136142 280473313 546381336 459345959 994477371 2505262 844196703 238920891 309039416 422389734 668062320 609154839 919720805 410762048 815370006 463821165 578205763 387318034 867893582 376051614 441941219 829236482 929844555 760487353 899619641 973790485 996710620 197258673 375205149 850791542 882886188 876333893 988592058 756471620 804787548 945882459 955531817 234829055 273377157 503052222 941562014 974020923 986928955 467333147 656793946 66232034 909405811 471627170 554815514 902432281 940750687 529544799 911632430 653033541 748917530 655684118 867864690 136489762 744791649 773358437 912605471 32948064 974259473 273986700 546329594 842023089 916120514 709542861 721355300 115982224 421765466 813242421 820258029 895155544 948750007 511720677 930668801 977789642 981807023 995891395 997929057 28119251 759531408 158253173 568307446 949052520 954077833 866774915 910666253 359878726 403034557 431359028 880346240 292183409 739248850 753129415 878745184 373856410 977132746 136091674 814251130 506443357 749058079 635467069 885186339 775928853 872222327 424199531 431707438 230779528 478712937 1966417 113232576 113386234 394225744 66265715 990875940 452852002 853869524 177154071 570172782 742191813 892506863 535384481 939212697 687405044 972358996 568225483 851931118 535818642 981959477 584188803 788732068 410958422 417156735 246914384 478561544 668329448 776462717 7470893 49714651 436358582 846144142 480818450 824296155 727587694 833488970 561006825 793466878 331516809 343603069 566307868 816303017 503586032 547142006 52163271 600171625 923315981 993621328 257082968 636568253 865071327 892901995 419588479 896079216 367344365 606401764 776102736 849773355 136224435 883152121 201872361 298768869 749559456 883132460 71931468 620777933 163459293 420066453 287356525 405302078 843722971 880000706 516306355 674146902 161579327 414230679 184606470 372342766 823370399 949038035 773347971 977543185 170564105 548367743 934396876 999007472 184050232 255892312 71756371 971005397 671070090 730200526 981851822 991412722 481969105 888360675 997220330 997815344 223911219 342308821 921259231 944247778 164378622 956990224 258296321 470132513 977407274 978712800 541616636 896779315 563915723 988670407 648038652 996102753 834072533 993698387 213871888 538736344 421456912 544154781 630213457 767555517 716444822 913127498 521476917 877326258 892553921 919776595 28929428 901742321 881404326 928153843 660536410 707534214 808032352 812881624 676018710 731599465 147795969 730876345 106385310 251966553 975388673 994961550 450297497 894679173 903489755 916729784 337836928 571908616 671005252 925801814 672867304 892579005 505556767 586381422 37674613 146534106 607156871 629861040 554131575 741649897 491708199 664452212 814710733 897272788 590958829 797499586 330879144 643558925 34720810 128911086 382675733 536728234 303855346 924394456 930231087 973536172 820102256 831517988 434649292 830639970 975013000 986695343 618721412 879191311 563344323 721964955 527466062 529227816 242668483 854238190 231806054 386112282 908451249 961847120 392725779 468905430 849486672 895571796 39302938 779005650 121622577 806351442 398659432 924070964 202317905 555921807 240455320 803951910 117118864 579683715 737328386 815711938 557523370 598306138 90808714 880781391 911388273 989442940 249652466 684283713 407373678 482906101 559189466 676920065 136463984 675243308 402332429 723448003 669109790 925339789 64782918 971380224 231019889 477706684 903740959 977213667 177352046 650152629 416413774 864962929 272266422 583410293 764021193 775538866 389453524 571335958 603128112 853544982 313782276 327611530 902921198 997939398 588876385 796076212 724585187 756129475 268314637 411289063 904791601 965562425 324688911 902068808 719095564 927799868 949944381 954396219 158083564 335315263 15604360 552410234 616472792 731351470 644162195 791336040 248156121 905969972 605059526 842317170 818735907 970545198 171908011 834509116 869256967 902083053 400447658 768642758 837807885 870594895 635234199 776336675 671033903 971521058 604649635 883291259 532654011 905060249 403974220 647358004 452862490 569119291 427796066 967753293 459669772 678795609 11999216 207021014 814542292 844350177 18822767 223870173 830162847 953716468 248223594 321090173 688948169 904335426 277378993 901372757 327612977 535272433 761050141 820483362 67210022 963235765 744049535 905555767 760489934 775663033 336954398 472821676 640934130 716227269 775541016 843641494 73236543 978605536 217500977 812510923 268472697 571006093 91141092 723347302 237848908 871748647 779545090 835189418 208184367 626206022 305324726 684307669 384594245 755269385 39331019 63076612 770812326 838689918 524849484 767486006 80133161 964204245 147189680 424935928 370731579 678490413 698487051 821686137 449542573 908687348 709099391 773615825 694160107 796276001 378750039 970830443 617739572 769837858 260352135 880483677 956229770 964165048 680114439 938401982 814679227 867423429 206118500 960795818 771938696 978081469 93578276 958502245 328326048 359890645 216626934 520549382 679719936 813096056 712329607 853918596 591281350 863045357 401042181 694621420 874761034 980539881 900822296 989466791 277369298 780742470 415623723 594110659 349797793 920013555 823802970 868322693 275854377 895244651 609921420 929149152 296177257 589946818 968880665 996736613 71394635 599372975 654442590 818513768 839669235 979107546 13073366 487052112 63319516 83351904 391493227 606616937 459798996 889742141 636927279 912514187 341605312 449803223 160833513 171123534 145990473 747043052 870225312 922925241 867377601 963681876 60538849 261902449 524887933 542556332 11564786 802104485 736491569 961687205 530814207 856090408 426666884 972362224 402794301 731667502 767375244 776038535 377704575 543373385 565008605 944045359 498133850 529193894 642343239 689935254 242161688 872123586 823860039 993183659 64099920 173395245 803595571 812123351 26560409 289938614 320306921 477483019 833655195 976333717 377963945 889762354 49757689 392492666 467909758 965438003 613283798 714640256 32451438 167523291 561408859 730535004 334060462 976681759 62243422 855333872 85687260 762963021 239758875 393109542 994931429 996012052 580920427 957754986 364001148 451491444 159730455 404762330 641119379 881528622 138076401 660967107 71720654 969009280 525707786 612909300 280423108 669051164 220818505 489069278 88372168 257633611 149156807 940202403 165630330 991059945 260480922 828250085 455477253 879345407 323281397 522044137 966386494 975344358 653404765 952569143 28610953 404613006 660157992 856638326 322195243 660196813 399395975 988980807 277124320 476616622 479341636 923720496 327642191 526879686 601726226 891973521 379876363 687378075 872110532 875914345 289876954 930427053 973138869 997386744 82830397 451253316 870309627 919699647 464050624 614257545 634694795 664019943 15592136 748380433 106542995 628533535 910727931 973556263 310410796 711291215 923582936 962664793 963365072 978426673 774424115 983163675 821876628 956826894 104139759 129137881 282599133 979391822 414957410 497209360 549383298 606196827 20450445 994974058 886766481 991837493 165187673 531748632 281155548 946354489 814404290 843184810 787460983 956209831 667550877 902079113 952634521 991359091 699814376 928095706 886346934 910708039 583005022 617671818 969507085 997249362 530924607 580111415 752107015 855895105 440959245 684735114 400211779 731773733 761892492 872093063 145714848 152399199 849429471 875142294 225253150 526392601 347764976 647882597 971080735 987158768 696218906 796177742 421870299 555034531 869209471 970963561 36384645 806338590 975377004 979100044 121786385 707124373 234214272 521014574 610158098 806317764 815065826 905627815 103141687 656596151 158735433 566469932 872028117 924302875 121334933 433508197 561410159 638519950 512955780 514040621 243152078 439926986 169017547 939083014 924081858 960309145 119933178 688593677 240289930 745827860 64319836 468791068 600072021 654660439 425710910 993605658 69211507 653137609 394317264 637030023 760073667 934208427 340676092 939913383 442340027 871209494 52017568 981094700 572364792 953557592 882522253 970788054 461456598 667041911 421911974 572076351 357159900 977830786 420293668 612182776 740899228 872534726 224491328 843247888 536950870 821194829 650801082 963038778 697347661 916007982 730122938 755131987 38371306 217338575 660187156 803108538 175750334 418507112 104963896 351509013 10080934 277067562 165780140 220722756 126856030 212221662 531451749 635507660 308566716 840078431 43848106 453033018 450657002 615204066 80813635 944481812 906792857 959466349 18793728 434021756 443883761 987359037 442875349 513377869 825101979 868760359 222454254 251365105 312424686 554179803 35088879 466074453 703697549 725509954 420062705 728142061 131877127 642995925 413688729 661855848 463797373 780893933 750902111 845356625 830365435 944306348 415646555 881572033 386121105 997118563 273784487 372730872 402180972 658221104 461218175 696664865 798349201 974868603 883425963 931618881 106350367 545726599 84037962 152208512 224753882 357954202 156966191 209351472 172780352 751468792 180471529 668067328 106703941 616543222 779278332 963846359 277980455 335991591 484011530 804819774 20505460 804565525 202728620 691913996 749986376 813728592 757999053 931078326 758564917 934598587 644303657 820016144 716628675 825850433 527172624 529706817 360060427 460179606 591888210 932242052 258133332 477402515 412326107 770561241 290381947 638790418 947703244 954879085 500430016 926074720 973196812 978953653 801425123 968990406 348438997 519989164 341452363 746216234 330723260 606288110 445803241 526793367 137939091 312423879 778568102 826234647 367438092 371774895 254852538 384295836 703754565 774160359 176483452 603586650 889082209 891583704 595467109 708300787 233119422 750355695 525994528 742401872 171430072 305178592 503057370 551185383 605515757 790253043 248945454 323791925 367530573 957476174 555017361 797012117 966941663 979851139 53615099 484576804 841736291 903875687 322468657 612921582 62151866 827798573 933182246 982033608 877483729 993136885 208683249 326272446 267164011 582958467 92551134 973213555 341193585 904912784 273207333 844605200 164988013 295267305 873364103 998963081 744201112 884906509 664702980 768146786 872845196 883385842 746902358 815950533 425220833 940675673 758122287 874312361 741725331 966368963 723089576 967333469 717972649 761877779 632346989 796097880 279702007 940919163 623397127 710511882 326733 182519601 927986798 931726370 446603010 753604875 716691971 931114617 569391330 913105668 148207471 916709497 867481963 963467311 951775913 982254276 445968602 732169325 930736124 976630235 929515361 945229869 152471761 268149543 395354817 751445920 895855551 975979214 179811466 428288480 85123721 834610971 748737435 921836003 557644460 569123958 359555715 651875144 372995835 405110895 85836081 548594543 678291903 830468978 318155604 579527527 854527871 868799018 780838813 830948889 676837720 967408039 601013934 611886427 901669530 925210820 494171736 925113617 638574272 892826136 9696584 904017324 168061733 553923346 662823619 857325287 670385148 915848456 621412137 648867389 4487980 313918737 483847791 869349240 357693226 902832176 563062601 864511513 587338385 903562687 212660522 542186630 729895704 875373728 926392087 996724762 918368371 956651392 617189563 634509013 279618061 796017702 75702302 966670565 141128800 906505999 963325568 985293167 351457239 570353288 942426095 995757798 973085248 998132352 670715433 754627638 287640248 483750579 430904362 845014033 706960146 945445449 575678399 650015470 472143658 799992356 242521339 812272031 50235143 741695537 214371344 803543676 678718536 959027806 828240913 837137200 346432465 688561163 72662480 249256571 396240297 762553077 95295925 106614323 406010863 934728985 516906591 699854572 27888965 512843240 629948944 770041496 778074840 971851825 655318169 739719521 854427304 863287072 52636371 484619140 687099797 947553929 3309455 432638870 827069501 857970551 271809021 401604950 183851342 563313723 856994455 897981740 93162405 826938749 411860190 843024320 450410170 729268365 644091692 882118209 273900270 755691136 522101814 915803024 994280753 998587490 24974865 700839646 11641425 210497735 527194889 618338335 338065907 938474598 602468037 781723513 542035460 551246359 660945622 978219872 59051592 604870985 314194330 688416669 292412937 804410815 736869644 861666207 90794213 631324043 232537659 399373835 768197706 771534742 91370399 344576221 920772971 924584937 421527410 606650413 972147688 983344299 612585237 783629664 731001726 806941649 909271460 924265084 332783421 494892023 176474011 256380653 12057603 861356035 107315225 893455574 157024981 472879808 566935655 645209561 511602445 627524976 583804287 638058869 241725923 341903232 376114710 504906676 852929253 980770817 174182599 884121735 621422736 624523064 231206285 837902168 549038959 717518557 412774149 643620234 73612825 336908353 887870723 946902319 912097087 986179720 379987417 611843088 970886866 982381484 664700751 881578614 347435516 385648065 445837899 911463454 298817846 322784058 895071145 982994120 746726235 780291275 149483501 591025208 150590565 602520769 165258712 513436694 799949913 908648076 994161259 998391157 672917090 701094797 112503080 263252349 354029804 562424615 984639034 991406686 615422789 723760713 613088201 909162106 724397934 912065063 725459149 976205070 588475934 817852808 641413700 703927130 814898346 820933860 804462181 906153758 965862839 983797063 258174416 518964965 840956838 930330498 773738779 845274320 480889418 633241773 261110248 709564882 262259155 271137085 755360265 799185853 943666077 955919948 731016356 737179162 423959960 890766538 390224933 971094963 99171044 690331588 443716136 972634544 469306493 508409935 853107306 881678138 11098772 272699845 894072379 927845872 189855600 258182583 841463849 882513068 747121644 951375686 643497637 797252898 748348697 750202636 863671391 966930248 588711502 884272108 21844992 276290881 930912202 948752372 763653113 958645680 994710714 994826799 675709022 749175048 536778287 598072348 893860756 914552219 29562398 423766851 723289203 824618574 689039009 735546807 245345968 781072265 507611712 780304851 714695834 898431565 244774036 272043001 702505688 836697601 494634792 974258534 896952763 901358908 351712498 539333834 515946919 833638677 28482780 633128041 451056494 489399807 911346720 964016221 632142484 908476006 712736175 734225713 933526110 964385543 41791047 936229910 186264462 696295201 809271380 904222331 458728792 748877395 263030105 737150392 335677765 507235862 348431237 580965913 978589739 993274188 120187736 311754364 157422096 164846920 891627930 893100548 984354324 988796808 285063096 396926126 982203883 992489649 194861896 602691628 593515258 928175613 624529127 920124783 510841918 686731092 594430781 693529301 783265782 992199540 176926057 628236138 403654688 626556352 151210988 771403154 930584022 985483742 986433894 995952008 536536312 718187245 922528165 968298016 412542207 474862669 385825476 725971830 688844075 814768007 318357529 877366453 742398380 887079676 209312168 405762005 904096862 920635999 237521372 555277163 128488800 274473671 594557675 662771452 520642369 928028401 425521139 566509318 259790186 420745818 588533882 612839147 324850719 694449472 621045335 795516235 417321590 841590431 593179179 652952239 594968089 707347165 216251912 532642253 645750400 680727886 385081203 877651608 888933301 944196313 219890630 657669859 423116601 851439452 897301152 918797738 481139810 501654336 60975660 144486435 153601740 393229845 682977115 957739642 439334808 706447217 789216079 961913751 73111140 377045332 476497937 946711760 439871171 524766025 736873680 838983204 326556643 449152918 78606644 104392651 622371936 656091690 84719865 341862533 957724076 975803079 580688220 864999775 801504747 801544443 435316845 822225302 93417419 308156154 517852553 566832860 609863945 994900689 528121028 906623741 932545591 954414371 778489286 833730833 809651843 924499105 116547925 966738354 591309085 923460270 13708924 153422914 805546897 838700438 501525050 661511629 605772405 971316277 580517453 942150669 462125044 571667262 819008295 972568912 983798484 993618318 353067875 908519577 999091248 999099820 483131963 515608579 575358408 705478614 131930642 820795949 817638194 822515480 892783641 941828666 287938590 588244850 299105225 370569543 341274985 860887413 25108232 32840790 979386372 995861550 581343258 732857490 82624225 730452516 418276788 585330789 335768879 621443084 871660342 989887223 749142070 946848248 113292488 137076083 185588022 446709072 988588648 996069915 7498160 148288131 399143671 999325720 730960332 988637437 522636560 610862210 348857577 961591182 30783128 650114393 194606008 902398797 878338100 937955079 519785246 903805533 66712918 87104064 238939289 560276340 817323211 908018560 380907988 581815719 431811677 862793256 338203061 377956349 566937047 945188477 856196280 982954119 706530243 908878733 512954047 841053517 506536058 652365388 54685401 709003597 77377267 539336368 572002625 886163674 912180477 927134743 592635784 849448123 862995242 985227994 418680667 907141774 902187868 934033639 588463821 938629554 530705543 559397883 153270251 463459495 836693055 964846079 117382000 777650057 81863821 239442424 253544377 254172994 206937241 603872356 566440227 599699332 609945605 748381968 779456034 901634933 596953654 882340295 227805960 693363339 311667724 665546853 838037457 873281943 43203972 647881355 106571557 402694972 947581641 969599977 190130387 408063568 221636221 535359175 65664614 566421801 327940000 620580298 718285324 983948523 326028983 461843469 258697311 724303420 670436887 926687702 414202917 537422817 11651412 393388285 592113226 675653734 423909830 714972427 224949965 951425026 82931430 678254503 220019634 940657744 198428905 492916116 391512034 624306460 585845984 814857058 564963494 665431462 790431768 961022595 899806622 977265675 686367995 690811478 160047258 201041282 606628577 617952999 19751169 761547726 252519299 409267375 822817528 894965903 38502339 475282256 377003355 885640442 771011723 909372371 163305658 997363004 412823419 906278921 452150602 537629846 66290123 159470079 712915434 742699373 136641346 783542077 243447279 629246289 754374469 833732720 185950868 868036979 720297702 797651737 198255601 343157515 857928166 984926195 811132861 925043183 85668736 210961707 740702747 811787979 682563200 914832996 226764072 386397937 766890702 884955843 953405132 975943361 712196584 930622346 675931091 935051069 568556884 962011486 196139787 480825803 220515339 840686721 864647852 869921373 391622554 571601183 730787484 898094128 275458800 818048053 415917431 891214929 900157683 968727328 998906616 999201625 276836290 593669610 539115472 951979324 255159570 344571291 280321692 954980117 415023054 792662404 158330680 420453759 510580947 557464227 236862062 466353284 35062010 903369880 193926255 762723783 43994709 76333010 45072204 628761691 582662218 714869134 716137454 975508870 137046451 442170728 606401561 936948810 555830539 707345086 419581564 835053826 6604525 890909816 166024290 802834812 543352044 545901601 527305948 618333877 802468394 989180030 332561928 996717553 595500923 744634293 948703824 989757367 555699263 598469440 857564696 868706009 691830323 922984884 720979909 998770141 520943410 575159264 855402990 983076189 710442716 768888391 336600319 959548287 655101623 871630199 430777431 757893725 561134126 785259737 594522044 684893157 796931435 963018241 76095178 247895095 27521123 107015192 648994619 735668277 606555130 800754065 582833692 589641556 466438903 942351807 783231490 893236094 560474119 798677277 765969956 918264224 860612239 918689464 630878434 967803659 241388933 908845654 293342654 941132729 933678357 966116454 461105950 470446768 447303333 970440926 653990033 816834346 653480772 891281805 375153324 890858687 461845924 962279533 103445087 972812507 805918587 912839772 769150373 855606179 666849520 810556662 487109712 780038169 216745420 902845088 871408753 958754252 694478332 962498518 697375768 862357156 162426496 854041740 463024379 723561760 556937515 953590917 75646357 100374384 936115303 967971430 858286506 953267858 825841191 965633414 350481872 517407088 512783470 754718047 524002462 537711134 122760770 262068928 339089138 453996113 437114111 715028890 332227832 688441937 306799428 864065746 9668341 621553479 645287679 746180681 949625083 990150797 21171742 466688846 739792980 875291035 854230261 894993902 570123619 773479995 9498942 303055148 611190463 791928156 43118937 386781890 173274784 966765840 12764393 581212657 649152366 890657005 287013591 844966615 254797959 600679719 730989475 923387220 129709923 692348360 413389322 469390580 162031381 990951068 457087707 630681456 923989951 944923938 773753305 858029957 227569958 949583126 623750140 902493977 425196530 900762913 408377433 976813939 327435752 725256162 313173886 784930096 438669677 683657295 726771940 858318898 797958900 895518035 860044062 914439521 612533495 746608301 474923524 938361141 761834676 934245680 919767570 984332766 129240522 530336297 758166999 807442730 373771303 965914026 392064385 448149796 999155981 999201380 218697979 340580602 786644062 871884374 607578753 973597914 437165774 618298839 370999374 534798148 475949229 768504103 696668696 935219435 336619093 954071029 966203914 968655036 316689317 569060328 221559273 980098938 941543958 993496294 973611841 988986811 219637184 832957233 457847678 640529433 618096274 732706382 315936443 962737271 515212845 695346310 235730064 840984846 447950178 764224377 409212570 617105314 548596141 748001640 900157564 941292985 812087203 972482656 864368115 969262061 344094256 581508475 441808136 953864879 716740298 805858913 491931636 558080697 285982767 823325477 175932599 840024841 661965192 963392836 409806471 441324202 595195727 896835599 583822418 845032515 554882468 698426626 475057046 795856652 173850374 691532975 383881588 651180207 987094465 995138492 175217166 187758603 434432300 762455750 290747266 724891950 890687803 962173055 130494322 176854465 33178398 745511251 289823260 527084341 964750654 998842461 237846675 493234883 990478294 993032086 772038210 881521750 253773808 613043093 957091050 970003203 706115957 980535641 827431634 879021474 782408482 908573517 385649136 998008190 5221119 992720437 131947424 612162820 164259667 481198361 245287867 460467175 332122121 607952699 855626185 939522230 510018621 633042383 97516061 430538479 825044924 885022069 574754651 845185809 214249300 350663897 129748750 468611817 470929447 904864038 475314634 832863459 997423487 998523232 52323689 486237446 604453520 733278013 906455335 954085383 10801450 721217630 814178743 947330802 532575717 872962752 266056514 422099294 96340781 431627877 634762678 945154748 635962604 779808186 957394079 978885114 997898151 999055968 83786233 407179982 891647797 939283836 893619927 970874444 623848657 708331603 348009824 853087614 847016222 903932874 426427481 952135496 139027654 465569856 234190583 318454782 474365944 525684530 666373530 921863570 509124578 718028994 858875802 992078299 762109356 863166390 389432688 998234241 463254641 670405386 824452789 949097948 810808473 958121058 159748231 957554442 585764578 638770269 513361896 940006102 510538507 537208520 664953361 691074898 292280262 673186446 92942066 941495865 95209627 117042495 138093845 248877023 431490010 847484371 188641750 268475021 543874976 718798299 542341530 964734761 426932925 572561514 163353688 925835879 96323503 792219233 303788059 774418655 707402576 743797092 425716217 838847246 513918413 800759571 295601974 783638626 4018934 783639710 904643341 965616682 366989290 943748716 907695817 988497413 766250863 841407801 895225289 961168957 266485427 301974885 69049676 381212860 591631024 755412436 418081994 562038829 923950293 961526300 715765441 874750420 402189431 853707904 348087656 847198476 607709758 937516778 271741914 682504037 722983830 930790646 134795854 675499350 928140122 938125640 688981758 828696297 195263731 678783857 743809832 874541411 503850569 535694739 510547180 775903705 775566282 807813473 568860073 726997911 518318838 911842585 876470691 958968481 211957138 686783740 341736711 653144925 451934706 969498623 513168589 876076216 205655156 970793303 511889560 716077654 883688648 981412675 709627383 767852518 218055045 522424731 183095566 186135622 951765929 984336365 542708516 608285050 857078314 877174593 839197165 844190371 900021948 981831698 221602260 832641691 679951070 985048653 707286342 824523241 679052629 770477215 729369160 870653846 52176207 566190611 356745533 605531750 141337799 302610993 299718847 889811833 249066461 874490861 268511439 702736389 43211385 910884377 447970846 894356354 499963571 649562072 825900761 940956954 79201605 449721752 697730602 825927613 94342969 948129522 753677138 829176736 359330891 924994938 364725588 651147658 905696158 914078162 175295127 671376872 962997382 986934763 639829535 772914385 614679804 615123600 892741938 894421291 113806168 726023295 526830401 819453673 769914560 916754019 146279929 586423367 620371592 653386661 183102517 580110334 963669341 994389736 3336735 553662771 86434379 230773117 507512401 779207073 452745374 460838251 312211425 486122335 568751721 602142133 173146314 630441703 813697881 983974391 661044497 819055855 447656182 992426884 790042790 839731305 160988690 276247273 272025320 651422285 279564504 529099933 252836684 695078454 875560910 922323087 55517196 363925863 23665880 524549938 13338995 154703577 738506439 979170521 139444245 153630514 846845277 995649273 850800757 931869154 890516037 992509607 741481654 977662920 486921390 526722401 605368695 829830206 85117359 130633371 614829667 651432085 309086999 475730232 758133247 921745791 414469224 760619275 501021181 859647428 201688334 632742245 568817705 945672669 343441922 833471765 19001340 710190985 516531609 986764729 830678789 886372348 939756386 974718649 337138579 872359435 708927223 713528427 42047668 83036393 274154399 323799949 717441584 828070529 654372393 825182866 205573779 918477445 866813736 963280198 835825114 934770678 599915977 930630214 18414421 795156078 688281071 697934852 163160402 239157457 314208763 723968830 670871628 852249211 126607557 311551595 686697970 968676360 426406733 901127744 428758356 904902306 847870315 906017107 102314130 497814360 864866160 921729205 846477781 972482315 614239545 826659891 816016603 823493097 734543879 916765870 689954509 955185996 641749099 852283406 187224136 253800103 328999183 747632389 829074078 841762748 265731440 416467841 289038565 455266806 984456236 996731572 814802564 894687830 567463586 605539073 321801622 893075433 607418515 742425600 461502571 652112828 866711790 925973442 511741718 953631516 478167789 799712082 448947507 954123444 569092595 778136407 606489621 787294068 719060750 720371726 455702432 503884391 30261223 147124540 610644370 858930714 929321687 956734930 953301208 956231793 712977635 869585878 224921428 939087891 496760501 544755786 267875822 776903268 885467369 909719106 201715955 409527500 250521469 448210590 460347098 876028783 633867181 996136063 657584945 684153418 499150416 661445300 678743251 972124806 120281263 654389947 895066239 953559869 488549606 508418729 174096961 774557234 534764329 888308293 891219700 980012411 625638649 815019310 774878392 848944929 720602255 793921341 897650665 991891719 598580441 875919094 727965758 929924846 911801193 958423956 402039118 596267786 419399187 916676087 610782058 674594569 255945378 647116756 54732326 58799204 84257107 616813146 821300170 998649154 299229241 508337984 419873140 888035238 993534245 998888296 803404994 830827889 487136287 643471887 195924901 490203045 638406681 867417724 25774378 886723817 14080955 720155651 884659291 971457127 983425073 987972801 32417058 601089341 431608434 893031287 180984982 682821219 60132150 252416132 722192525 863197136 204609275 743133786 299634227 385871832 109972971 907932146 620168059 721631454 472390521 575216155 367736447 965115728 104600253 566238033 295934202 359487098 697164762 758020571 971076882 979688550 212889091 883633421 936176233 947714484 274202206 352435193 962574450 969588952 340293484 449959546 719090150 825559085 160760268 431205539 613879697 922900576 349797578 444117633 339589693 661143707 466136388 866283381 620361737 877302136 783429788 812840519 300000148 317512941 272707328 977405483 162508851 595071338 440978246 804565337 696480653 859150168 605071251 938786594 958655065 968164926 436287956 619654052 770794727 795077492 263766971 997045303 612296996 907681596 814838635 891780585 840329684 974228956 236018346 401874340 173979356 588336506 498390722 548018561 565201001 847294264 402796833 710453974 383215038 744875170 197413146 983143764 278422758 526931878 687987482 910466641 875357052 972189517 714853201 717036352 368023503 773530522 333085333 851402576 289089177 450295730 368008733 493934114 903987934 958736470 828166457 959130971 24566741 867143246 782182231 945707504 924121151 979925544 316246303 377037101 470186748 946730639 731337206 902556498 443969519 602524057 641252196 789131410 28212885 426181540 191216952 382028186 922713299 961077046 525721000 947762467 914238902 987263663 904974696 961061761 916556565 993975230 728474313 864327778 115645732 919548120 35950137 466890773 15570232 646049395 529094709 989094126 12068454 703963938 669161371 685876421 397495711 965819660 982181291 987791305 293627399 974833946 927588575 945659710 768956954 877372793 733046745 816127487 159722028 730618423 233902902 257722804 749716005 798412899 588943775 919097929 625512289 767529973 25803528 794902671 747206215 780030050 540090749 887493768 450500749 842370659 731735409 779598474 23887045 345432987 520398103 602270550 961530814 975126479 49226814 616292472 570974376 968463450 787065980 806038509 553312717 934345439 1460904 329133184 556014898 928800005 350548349 910481493 692344068 955855351 54605527 55924094 896694266 997396851 117458227 216180566 196751930 308744178 414804267 943612472 181410896 607728230 625383522 638088498 913706443 957510436 326656872 641859178 492348677 818318748 680385253 684184648 452334048 933126300 404896993 576260074 638134775 827737058 327556049 866378285 340881896 484081254 388908820 533462983 962926095 975946310 81636286 210259425 161639613 518307568 904135565 958283303 463844247 819971572 941195665 962561297 205052265 498136949 682954419 892476327 117851770 433016340 148160850 156837270 393897545 711415303 613274089 721328493 909893301 938556678 458273139 588011636 87908793 185775012 545288994 577213278 504688154 608502977 704959732 768649682 533639374 550607351 736849112 930161225 133105682 379643583 404374075 862125729 492876893 780138519 293559551 311693768 816278272 841660847 778871879 949356654 710389112 881899172 619158772 774069742 814158579 850905528 248589529 307915956 23527967 943649211 599208812 774942676 312618833 620498497 52714035 885976924 176368592 717538266 941073476 956590640 87294770 788127418 159535515 352662928 618495468 827896064 223317003 971476302 266157993 411719616 514597982 674934725 564852889 737288838 223197939 722338314 484135616 747808490 619268724 747551025 438144132 833831535 715265682 910286621 507668910 837342849 244228749 967094963 564852100 589837208 171053779 730659034 902807628 937546858 797285405 911870303 642664978 655181104 674833926 979325854 761870726 857009785 824499917 984409976 796696529 903675402 434439376 597311517 22853771 194373385 224763017 369982551 35570732 300040213 457699174 930392072 469450908 946648625 320242562 984205773 771863213 915503348 727971123 733859562 422339521 905917605 30519605 819349011 310092789 966242290 8403820 431723395 454662718 596826795 164004503 375840351 391824164 725126221 314646134 680947386 546640436 804892108 304409083 877689342 818008566 879412069 347578242 428746472 58011235 553601398 826577702 838024771 576674147 591011619 392553710 589279106 335796233 667076732 707278974 900351278 763517013 939709787 209971715 909513990 58361185 93281273 353896809 378362972 163474654 281128311 274081255 678778219 791711098 846044825 134908325 596143722 820737439 929564196 10477626 967630577 41397115 457224928 506328362 552316042 652218225 893839204 334788576 470389046 173311116 241158640 502406110 561276034 836756883 870442340 248331071 979397933 238460127 994130576 832008034 842332889 299644069 647528151 966124791 983283229 547167587 817575482 707675835 882661147 263581139 846483764 67049410 261098316 604307050 969730376 706065476 898891340 316077041 464919127 494072511 831528459 217459969 649184883 301045386 465747605 58997291 132663717 235890513 780502114 849328894 990128004 565213221 706109602 147941047 619220863 669375119 943102598 459001484 467456498 307663892 921821707 425191455 892667027 114395166 922294059 504046788 803517994 403031839 727506619 609528934 796570409 956618975 968787901 392215531 778225693 405436120 846103012 95540419 109892443 524610566 675999605 182056616 955959487 29262422 945234646 262922425 726839657 34567453 843771041 624836789 949977109 822086228 932075683 359104880 913218970 484620022 498568302 536942340 962599558 129319093 620630436 930968805 934658757 760016747 798421014 74525338 280450027 720485294 987124578 925758055 973053241 924956968 949451518 511640576 549960601 612301235 763193035 823130822 963997827 741970513 873539594 779078012 820859894 441289336 530967292 167978273 856397708 297317206 951054643 901563082 923266123 822807869 884948240 741019152 865011157 15010125 465843938 784739035 851406253 998973923 999093342 12722503 224488948 183977121 308015317 58653312 699863605 177666716 309350332 463628043 519297553 694224707 856500230 735855906 767990963 292245122 856201582 342054496 854153791 147609881 349606148 812939425 944507326 683307388 851362120 224684052 661297224 258875811 291017965 218258765 231517608 922827094 997989833 943224040 953148869 829188280 884279985 193239662 330806166 91055819 216402433 788070308 911238933 303032862 713331554 285155794 514303170 980585668 987903325 455594574 562217319 624921823 953414849 478696557 783725674 118069295 700578389 70639168 379970323 377943361 501089728 492482450 642740411 667189840 774770144 263101292 545461836 381396093 533489637 164913276 948450247 736458807 977108618 992140816 994135667 202447584 943995143 874926057 881668917 138084610 295557963 839912668 934673775 337097815 588239391 872011666 979080795 587093117 714841606 753544358 866175950 366531593 530560193 718924886 985982914 109884686 520643053 700827727 728061921 253266965 313613784 854562189 980377781 817096308 852429306 882119233 897934163 115905705 186058516 594438710 980415626 660046610 831904508 345027652 741081634 500390776 525256906 374307562 495351904 829304170 850907517 327202381 479305274 728972830 808784385 885288390 964128000 604710864 922223437 432473503 475740797 940118811 995209887 632569757 727437222 598842955 998620267 42467288 114367214 365027701 483518751 514572470 759480129 318724714 634874615 270411277 659389948 641606819 810794115 376883414 636997210 764231178 818471029 882536005 993699044 580907105 609771696 464035923 527437181 106508800 908295288 200011532 624182328 488306933 647693583 558153653 644486761 95372080 853461029 882284 326092291 981112029 988217353 635099629 870014325 886009851 977117554 108807098 205425514 214478973 748026477 362016041 790531133 777336524 874488289 762604873 903405457 458245905 840099410 66739667 687841233 644108860 917441750 687324352 967314612 408914908 488044740 386242075 543686221 655165611 660800348 455826318 457252684 460988188 807031340 526794780 835939775 778586420 797267463 506474484 813832968 807932238 808617378 970719659 992773229 423263644 525528306 657543893 961067062 382928820 855843600 822471473 854992248 857871538 920829410 515008687 632358062 42378016 812608179 395039713 447090637 700915416 785898804 643835003 862048199 704761524 830568767 394350648 452161888 722437271 868665418 123621347 957302541 194667472 710843829 293224378 476468319 532103057 618555128 684823187 778817253 65097896 352077326 933918110 951690463 196870541 329145039 552856866 704892678 94812013 855445935 929767564 979921432 522264336 845328412 399451980 892158095 715045842 820419253 581380254 744317894 251620499 376668420 342513867 665736749 7802194 255624653 921372915 965579179 793040954 907634907 339276621 852490124 116156360 929311558 311220090 714405374 795237148 983344184 565264728 876166901 974944586 987855496 445554327 559615664 157621876 373991805 586602404 881404178 370552231 513689312 252887675 571687590 820799855 984155108 757485871 904318253 713201380 820866706 702577833 839193741 754214431 955997837 606779275 672873485 777834235 958492958 160033426 280018953 333806973 712471905 79887993 734565746 263369645 807619584 891827724 996786882 725256893 851524386 357753559 754174919 726188469 767848097 595273123 738492894 337350536 630678552 204650235 664207910 111049353 703926521 236136019 878112718 28462542 126511567 662339932 977075919 862294388 955840329 978180046 997976860 6160580 690672384 287561328 702159281 91448086 923031664 395991699 415263186 867105929 913422791 70678135 96288311 441302902 497966132 859713448 946778805 13208821 519358022 470664686 869604691 998645970 998972885 101331303 709016608 477226428 537647934 979147255 979205816 913477773 981862409 177149491 636505340 844668408 955284330 503213643 559257390 806233556 984728114 943618450 994005787 998946971 999304800 298474905 753762464 420612555 937989804 549323983 881673733 758612210 977280741 396735895 569947100 826334455 979552270 543396528 773312079 386558771 956603514 100731405 231171964 974859932 987095915 857296805 929164484 511375996 779861101 968779238 982526583 235261174 421186920 583223565 928087848 419825088 722695679 148691835 814710119 920177248 966924456 183039437 316200114 988250555 998688724 483802938 666101676 765091586 902219814 267330337 344384095 518962727 691694762 817215435 854919432 224175301 719542628 917492627 931187186 917437774 976346493 9999998 671559771 124041749 464937553 530796094 639511995 69418587 674077336 508825199 607307611 349921818 879174111 810417833 895841933 623580569 914212442 725122076 912134624 676612527 872218684 540645789 808801474 299310356 752120779 588622747 818483333 216471748 754802050 449442768 762046462 279948786 458644395 519189140 688139491 813566708 933055833 16967748 52945666 392361289 717851850 412072904 712920767 937041236 976380511 187795136 622834808 569701821 607992163 831554833 848949803 351401197 620851274 355740124 635157329 205933028 706411596 761168520 927709843 306459172 863419911 689459044 782279313 987995785 998593737 674477003 803404808 136749286 639154017 170418133 472966456 746123300 791147322 61655409 396295793 180433848 743856762 599922723 770841048 852068221 900503633 804145922 821955113 727943050 893702411 331414992 758582498 33756246 602513011 589889782 929996403 871536210 904526450 589179416 853888806 877433445 971858725 256369484 841605608 402989640 602416833 567511107 954838714 225215085 656201250 950113720 981269266 158963259 478909946 191330824 256133910 171776790 805763764 68120463 788741138 174006801 786374547 166235673 909361674 563894560 611178234 589329892 600267860 125549475 349858527 716588102 866559212 280087207 786912781 92046834 533179965 74506990 841522292 923220329 953655245 964317983 989824811 113550992 679136406 340696689 713474408 983174920 996951258 114641531 788495251 851565543 965637236 154131199 311940648 532914044 842732387 343644911 893242223 950768996 996555918 769422399 936883423 374204467 559620932 607887590 715727535 444497345 467195827 608788748 672904200 118138748 552578174 689085178 880485237 859964974 997738057 803622428 968772680 268926966 860884579 770087677 863914844 583326909 679282878 877207669 934885430 214262427 680653178 901638678 956902238 105686595 603249264 175448952 914420235 716828096 919840889 859396950 945436048 5888216 855272118 101150977 880654264 343522971 493228003 50885404 901754689 702601719 853749039 42119279 57564554 646756320 972747183 723746117 750602172 195227631 425333367 274501757 893555656 929345984 996176551 38994147 451831736 503038617 690236355 264315810 930250679 502768309 881542380 771186726 891451960 132115875 939283642 584391996 665440917 955836006 989028644 880456528 975076529 883823340 968902618 118706943 559051272 932761658 965182755 60820754 832535271 287238981 689767447 679098232 739653358 548813836 712506173 631107956 782366744 274932795 613036845 441467324 945403501 820131857 963296841 885867103 984277605 313420932 892498178 34333598 153455517 144699439 545624288 880883419 902403571 746244150 849054634 939129523 965831682 361635504 923154322 712345270 983887377 70899344 302735175 125438643 943392369 632321966 636449859 690993177 753068533 739756636 802419182 193302747 296220012 882753578 922923892 557771364 875106977 239389410 626395700 264058619 846551329 900982032 987347010 616791252 834211492 18707488 66489356 670249303 848180714 409239616 536846177 844291527 852252496 459239904 787182663 41943802 982150078 361648483 990709658 10668816 760691345 201725086 926221907 459437763 648267762 489849224 663816844 787979027 788398916 862258433 862313610 71933797 253215589 271360613 914517271 260979915 886216127 860992502 978619370 78276648 853648521 977626624 997667854 510400901 838328793 954798176 970270278 616440115 900709410 312166149 322665615 918993708 973066078 683858486 833204145 70085007 763006471 653857414 739419841 905187850 929725457 287831813 389773286 945589670 991071931 329776474 591557639 681674142 722147825 696247359 897066423 23798007 614464832 908859053 961132715 655284755 797805617 53531032 909216664 281811367 596773091 876538585 924047551 326685378 626454063 666959465 893897036 31401853 560337141 180596847 444565286 416665853 611932144 600947417 764994812 40992333 463575264 842224039 971334485 788327910 893812274 670977221 850537088 159193161 768186579 407538639 988997142 979877589 986440320 270432541 838363438 857582319 935121863 885980491 997651321 968693002 984156682 40177153 368851840 462348166 513087992 763382054 915503924 627138567 794392470 439736749 500206427 529580269 596408102 675391287 959398282 158198339 344048497 180571282 952076065 305446648 662062370 81819870 909915056 964943888 971885905 30765113 558757859 626115198 947217813 12027243 816247426 311232916 505355962 228260923 422637437 284775378 983973564 43981116 858264976 130370952 363179818 542215328 552769152 451452877 633949418 714112280 756702181 930712228 959650089 907602320 974569106 3032320 964772369 272365036 346564857 843433329 904338188 16606175 419006139 181542494 656626393 832065200 913816182 488704111 626963977 937767637 957716988 748285211 887123452 417664564 450062990 656361382 691066983 786926825 885754065 305727529 882590808 753529829 970996582 956161484 964404174 562131268 856362839 164319568 826930335 178340754 486368835 622830236 713038095 412809364 417730150 266394564 534626571 663208246 680918105 945306816 961561613 732272056 901775231 685346049 922223681 522968464 888882730 77766236 87154993 728205822 826745057 709019260 790788747 857754796 924500965 306402773 695214950 839996312 912336620 29257148 359594420 958728978 969579997 854009098 859121711 141711992 362871478 384009861 880597439 281159539 534816779 225056295 443950225 348039615 470181243 553313109 862147839 951148372 952949196 609029588 912194502 425221501 915413782 894167242 936413794 439381110 877228765 353213441 582799949 671280399 828721851 712094174 764577278 144118201 619828967 643915247 689255101 557771096 659759256 104787697 930580483 141626658 897628986 47883450 800754640 747652909 937365593 206365791 524959724 345620217 600033657 198764923 812914045 640160617 763358995 517271787 733576422 177705333 275341010 821124544 916087959 446111864 693305304 420638994 809280492 769805906 986974304 645168729 791204328 389212268 592221528 282768178 565367794 404152986 580482411 822622229 890972845 600030445 828512991 50634508 721215108 538833170 981451381 793871978 910926246 327879397 618659765 582426144 941201532 884979718 916610387 884272704 959154060 898918133 920000983 810195407 973404087 758978440 785792247 296921845 941064793 758372077 839095869 645789366 657994086 989904395 997392230 122891533 445172767 958053019 965027536 420486222 782448410 427391670 887663510 60463438 251348762 316041563 632809142 984979324 995191609 222046151 394628389 643973074 756178004 621355982 832237298 425527055 925166761 189976809 260867504 441460905 472887744 922804856 963694089 461347980 629491199 358332770 422787466 338913345 713667422 955817713 994710423 188038922 963218326 576909447 919442742 994625631 994734211 932381718 952675081 611974440 838780020 368830719 439809957 751365430 796486784 857791408 939567579 366071875 742760976 128153757 368900636 161438317 945605920 667613439 956691878 371502508 709110312 326228747 402336041 93334499 849006822 873033309 936987873 281194588 311129669 823751158 983659393 788536857 996231940 98904061 501377193 246579918 405309737 533201704 667570556 147287928 967112409 497154922 896030382 799268990 983633509 532813490 945097387 792854056 937066239 674029581 862913403 212209157 221470440 245255903 540746067 335833662 647828917 200933721 511393200 637391654 731727665 826474787 835358501 791784077 879607416 997252065 998016843 748430013 769265248 199415161 649367637 403577503 733769608 816114369 943253576 789185057 799218587 872287631 921561756 730426874 731925641 139990840 176198409 523730166 694900936 850885726 963926003 136452986 338028545 417099061 673409446 24786688 96658400 289822078 744404970 407671158 931508921 999222617 999316413 95043006 716603585 910374490 947293713 863645920 928962605 498961881 671112991 274336358 605222604 178557616 408710557 874596269 887728259 778362947 810126812 808400774 831015723 396645605 928379750 168349094 275460938 355449834 792356948 145975678 866324921 487257349 674139433 781965555 951425677 751668442 890002134 424104487 899785549 720186582 915077478 198078940 258881854 526615987 552523356 598733110 752840284 630499478 863892125 591729078 883566958 565102172 929319728 505348529 687957813 165330436 208629531 494972796 512729931 518309101 564926662 457110001 663825119 926840893 998966679 202881574 291804251 635710143 642276570 269487897 305656125 712961866 803251778 456166442 571548850 601358275 825687404 988821620 994888050 279615266 946346070 311444158 675856046 315738524 785263244 522383066 623145868 121071869 616558791 405039809 495486381 351271117 885366230 854238086 963545792 423880729 792749166 273743519 628060299 175268134 653510491 314701403 713106836 926257185 934864222 585446713 648845979 977056959 982033087 577437552 753999127 574900480 959256912 722764230 962250358 191849821 212235006 246951480 340141287 892668589 940340595 869578773 986229930 111514033 786132156 166253672 180451127 611416146 636001291 144400704 299624524 412112806 772749577 420162432 970695008 581342128 874693072 96501936 190582015 190521734 717954174 490398600 970589832 249860683 431691208 902453339 997187891 592447821 865339147 694030074 851240714 70044611 471140173 22946820 528801582 10002477 301528342 157231510 588020925 786778113 920222052 297959454 745598762 159399915 588859547 236759546 400479799 631708323 658296586 174620586 896589963 717949243 754340589 223914049 708410416 299440193 601996331 947843949 995800932 135104785 797003704 835649281 947903174 414454246 949993010 961255725 969314904 659021915 986197201 243766315 666201922 516929917 946013597 317152102 665548036 338368793 849609644 948117026 993944893 132770929 783909584 263404315 918776684 761813980 780698984 529279715 747896262 537302882 689568950 250836010 270349996 683073407 873274803 182261741 996817245 32248798 731455744 293612980 810478230 86879240 953427514 998508912 999083821 917313685 974803034 801684839 980078146 859060675 874811904 416867184 867322468 463748733 666072994 646716915 809379095 965168220 976045786 21113320 593568015 261769529 788495369 462840766 935256854 631690115 659261417 871707466 902943204 506179949 771691138 481561979 662420813 498768753 990459598 642731768 684361916 958720683 964382567 723733667 801099537 246583394 709375835 72229475 517873655 965081922 965481888 566616868 568395745 527954989 950412133 566255829 608588058 605377908 971280912 212381856 269076471 56353438 877699383 384521105 423097480 27567768 880342799 176624206 852360205 719942026 933198802 782891824 917867908 140138853 656103186 226730511 372693441 8416103 425660295 342584833 852052978 797808412 965978892 80702385 268344667 723653191 735164102 127790010 165402813 915362928 987590758 739204348 791826629 697305064 868977556 391805272 444262727 481224609 714794336 783121607 795207278 139263533 592682246 49199519 303759541 231163630 295365592 327542413 713295273 334220220 827943399 439043820 652624939 487645399 786803368 663394390 881410022 528483990 972917214 521581383 832935776 202952519 687449575 892478507 900252036 197683246 322314471 485108807 940587800 491990771 760298792 618402324 659823754 286787913 998884139 28439315 973880386 996075991 996128557 412512243 489697677 606062292 795738286 599772005 606881362 687040105 724682769 433669712 967036549 229669455 384280214 454448143 775380112 522096411 531126841 921477505 970775449 941091328 976153948 4459976 280781876 652463844 861098486 110100525 546300331 939668006 979845980 444078368 743170216 669848682 803348395 224055133 903458063 146809107 573652882 346107351 680229637 110194891 857408215 933339098 958475369 220345373 825913742 383304796 730315187 719349105 826429434 460484104 512753844 660902499 715292656 500196593 932028733 562916215 891274207 225421937 751550646 751140864 812303189 448715976 563586553 509591176 517953218 608066027 737280249 384674045 450945833 243967422 450263615 636116130 996612794 438320603 458877279 93918611 295270772 317132974 374717835 417612594 932566676 376499190 707792226 658372623 806413030 832019097 989964135 55844941 553772925 919589978 924752932 349617270 777427862 509493737 716453314 578107018 754249393 478920621 520995095 415255592 909557557 85406326 604022765 792288010 918593241 182194129 709698364 502391152 743751634 570251569 697592472 928342326 972284360 176127485 634206366 395762394 404754374 903907745 944276149 121340397 973148401 943967725 970308605 626371333 795598705 317781429 663056861 903690454 985959088 822250095 829713139 497572660 933018060 5990188 538988857 442044547 683279820 414696338 854884695 604615089 671287028 356110736 502102506 893312347 897191321 871165095 952263667 730528128 802281136 584308943 610981188 58566904 212654609 921083731 985344882 105211469 920061633 25627240 156740786 391124575 861999715 804123858 891732562 230504441 919483825 566872456 982772131 332400242 951487635 720527951 911299492 508344529 734047351 198073012 903491304 291472092 802812513 740779404 789094533 113711457 840124707 198764625 214178948 318187539 860871522 768623924 938214256 998300910 998459679 694629866 913134555 930728638 962085255 300745628 833679921 50447537 926968116 183631798 527813640 39511956 648314048 594857102 758630111 920234986 986264266 194544155 903936056 876296938 981508567 53679665 321198152 793701900 797937918 398883267 432037472 739463959 768571795 233510017 423513345 704589080 926603695 502682121 637373272 627512079 972480538 941490926 973799582 131613230 375812040 156615822 552291926 532828371 659999506 532399489 885985759 458823729 660893684 988844571 995914281 379083610 758004023 497093742 559894461 472981260 696180596 648838998 672585091 247869684 670921940 914859913 983274406 915501480 998277047 85119273 287323413 122350581 923831971 824862502 918574021 776719376 784484406 36405951 94460630 15550839 970502199 552341232 770643555 535534618 823658810 630577609 883919855 175637202 188090058 207872 75618327 726688070 775310710 60908254 528570322 918308620 981637218 277850793 759146626 256896081 851085945 688942493 839229097 340597526 824125129 412820701 731341254 308312325 973305883 56941278 497568185 163461201 724799176 565254864 944049151 416433148 874386797 986098103 991714629 683282527 757809307 547332678 632319066 369364674 377259076 83455878 343312754 605239385 901437038 219965580 863403780 699371634 907503409 347423259 813727975 890770129 935087034 891243238 898470231 414401704 753827571 473757570 895972152 166241849 784959328 65048460 101026179 479778604 808778285 319069944 790868603 17838410 723545587 504323968 657410556 706827480 712117133 5740270 761565153 388598411 680287782 231788747 512761275 105139868 962042806 134799644 608486593 904836971 971865903 732235611 933783084 15766302 526029927 73249543 97823331 13860431 958408358 853904736 954950892 378795665 761272405 671714143 884731078 548869263 646803677 853205525 863270771 105070603 904765423 675173387 762632205 25742646 968585542 612988631 786121397 388088757 876157009 602623883 712541907 664667725 913421458 568859785 901411587 177259294 187315781 358417176 464666565 600259810 960506584 919908151 979512878 785677166 822706530 911514214 945732274 570257846 934888591 568256732 941044040 134295799 480309143 804857909 921429841 29231182 781933235 319182854 342344902 127417494 872038280 650690888 984446332 750578238 841557371 841121483 928090599 632963443 819194481 938314537 977795726 165810767 950354880 446928339 972886115 214902743 682769969 643663344 817921965 761670440 999080009 819002396 826764342 6588244 757081221 485690201 763182768 160589025 174331099 647889187 866447938 670885223 906331279 267642799 648123922 304552530 665320886 887840636 992357688 264094669 627673764 251744027 853015570 189710722 781890779 762831519 912332259 962298648 974923007 5679954 840038437 400174594 430298737 321848031 944698794 175592711 995840070 585362341 699317611 413787501 569172229 58973966 392518655 216779745 806844535 201948783 506672483 85845914 830081564 823481057 847592702 751318208 928651162 690043517 727328216 779001627 908055981 179549479 447212979 379478724 939554719 324377580 520514275 634826405 867274856 467209032 568302372 264103721 790904687 25431155 746959097 540858724 549547270 9314852 377951118 104817587 350786673 863094281 933360902 688966831 982204132 505290954 805928933 347062354 866702389 609408439 663640768 740415927 946805109 433848667 545505493 26295134 831926087 162289418 911140667 374420308 671701426 521934204 659828400 403825685 905437745 864946413 995023582 712002613 861019337 501030523 504822366 519523691 682131546 613437739 866193098 621690189 843461670 535686973 962139211 111739571 991588548 126517444 502278029 110667783 302662888 566447346 956141928 299983354 685195875 237951142 607262579 778527051 817444549 784311701 810564106 899042735 960863570 657374630 725089909 758831981 789060761 563901558 962480356 642721452 693188081 88968813 611462735 973253404 992246224 193061302 745413005 619408685 859576270 895201902 940135307 812061958 839610694 831998555 976641574 356532156 373669421 129705280 308013701 71358618 982131745 358309430 788179619 577531155 636452081 158116267 668422097 613774261 643033309 485459109 848290597 901225761 942469765 623949771 922771155 982848251 987933301 254855302 557507311 628397650 870566128 358799361 693353788 128784420 381696546 922296980 970185681 682141345 973191306 571726787 938442988 922638234 948848303 343864151 458616330 131520858 379570718 269982592 477281952 701450389 831982086 92875924 782102984 50318693 95502980 340817665 524816638 489264590 720332002 189245188 622428222 533367579 966527637 339115576 526910269 421661580 496839806 189635322 819457966 328694632 348916528 448835673 469282890 97258679 851495375 4340703 831877543 932483901 974766319 875904274 964336257 498022736 884971953 466359941 856352709 272462351 533644296 694042692 943743800 899360183 922482638 347227346 655792298 422645552 855662789 461642147 752544155 62651082 961893843 72843481 372954631 337124986 728964839 101511455 263245217 306826125 926143619 895673951 946688350 969372883 996830151 350357593 820216297 606020145 982533379 23614527 536530995 257242496 482598062 918241067 926426185 162171449 758873104 631570533 774924030 15682737 386972070 475414771 817784728 978858961 986487606 815973277 927180359 368049820 872989058 194015107 851826852 434311644 894077067 746878699 790210012 962908607 966847282 909349219 921131565 423524235 504256726 535505964 574629378 904363586 920887884 901016031 925618198 570130228 884555441 412237599 783419996 321876802 511017384 40391267 197395178 575136311 634667534 864901487 933401611 125536624 145498077 405067431 720709685 658263263 785222061 553919772 955318515 954256607 971973602 94006405 532799462 128832521 987878941 725690518 802325939 170388288 429428447 198218778 233391796 812165758 856037777 333824463 866054637 116814619 280897831 527489673 736614314 559353426 966347220 7099282 761034214 311895197 838440059 459140746 908667351 787134000 821286011 353134920 771181960 566784868 857222142 815270277 991110405 121423694 188655339 608550743 724036652 442298633 813208083 949855591 953548573 290510746 449038033 139770844 536907904 666873641 853440179 443274581 714597794 641747947 751803891 845540356 919972301 387630891 474386452 651440433 778265262 543733679 977569381 714752484 891560154 511043673 845486954 411848259 653083901 448790190 536153567 381045823 896747177 858337202 993632829 458184075 696521360 396730347 820527754 205587581 673552675 773214096 904801908 752418446 777811055 644796684 953968722 867424563 977679873 944147910 973836308 184165279 262350957 843831376 959078901 727449905 977022649 140341992 370363775 196397114 266313688 194785284 608697684 879779179 995962642 857677638 998665992 849726823 856178590 662003168 729963000 858979079 911490254 50819111 323614294 411441320 502530926 272439037 870453238 360463526 894939519 307175017 697442943 565093904 583913941 341198891 425703024 540871444 819451613 250022225 622629709 657956418 997942617 433489864 828991836 660564836 751823388 566885581 937105482 955260410 994465300 595750200 983675110 914973858 978322251 261576200 369300135 704338655 976116297 77103020 502607508 217539682 725050556 4314783 165017496 738710417 750389012 311367945 825224992 434937256 911811799 739837049 764480004 437635591 871530127 658103312 983650489 205461542 470334595 473759029 769643052 836769580 860755055 894036224 972703231 610817873 999180974 535605625 579112483 6050778 906982388 218309433 803533168 295373759 653557684 934483076 953881952 784284027 820989884 322101561 953711804 182055378 589768215 682856127 997406469 869995561 914605871 828079486 948549838 883424968 926226291 679333810 739880637 260705691 607529796 900749964 951876259 240682428 463199190 303474854 741766544 801741629 979287403 818165318 945707510 318076432 543590794 869245724 964463436 228438534 904245257 428182810 574463779 520517049 880405844 733346979 758431034 933519585 971364861 703757493 949307586 52326378 877492448 228609314 695883328 66703264 992414118 295843978 782076663 722102973 870555246 427583815 906473462 403946655 644859253 417171914 789041424 584434410 707484891 257682910 362967594 640851832 705174485 915775321 996897876 676994134 737238515 225088340 946258286 198604125 827888356 204768554 450046440 330018486 843945077 789881613 824047454 135274528 971619434 297005462 857248084 711340822 920785720 748676263 841273951 913576216 992808399 515122390 620362615 922242560 963800201 805370259 924810526 793392150 873740323 728968858 825676556 556727080 572868793 608842006 850509106 957034429 985287628 893780460 959546384 112413436 669068139 483412423 880654857 842364081 877032126 760779580 786609269 871931544 883948445 28632589 165775795 570469001 586817446 501058046 528160466 655499807 787859333 39306307 809643225 301795300 737991844 170786690 812902885 40685445 352082248 481383317 779602312 634841707 677292132 920413416 983677101 481479978 988480359 195553496 340002281 393457139 483373496 362075071 558673991 623365223 676290628 837258113 932952069 408566467 472135671 5654413 749436352 909118667 981918161 838205872 849412062 479838096 585743180 922020299 937764791 776110459 843416317 342704868 501705693 255633834 586829127 704005012 807317443 611752184 825834042 609868442 985911814 746194906 945932947 292426864 967401257 994954466 998490225 678815505 764536728 845787742 889181440 696151761 950017697 511054305 757966698 522166580 792491519 307880907 952926549 634847601 772928084 930444147 992139018 789592134 961656058 341105024 373103358 266688374 359632580 485912182 696470206 877197057 984776184 664302291 771437864 53394002 649531673 671118357 854092895 101884771 962104421 640353915 874015576 141553627 300529165 78721295 899662485 739317948 778327481 914325522 965976374 668277133 881921249 714314658 895059121 948372839 973951842 800917685 962522402 159240059 399766237 840128625 964643319 659415292 975019700 466277899 788277913 91795809 522510560 821862761 887541071 714952745 876772051 407799100 511058985 965247796 977978887 790530208 973859627 41074929 75314661 27369578 305380256 924092251 991142441 107497432 637934285 664356693 847947169 662798419 967941454 778690386 948662766 107731264 809661905 953278079 968123822 888483177 904521001 636250262 781513920 411022544 772722895 895244076 995299334 165499127 962921941 675428038 912300618 257447123 702112345 543323238 914658584 806436378 865539874 365955928 473567334 512973816 708532134 974015678 992979085 692642197 975831539 86392758 129234397 893202118 961935431 453170791 646174852 347171754 822975456 800539905 824322654 165381717 379828785 619579437 981007589 171094384 174847797 227463407 537539829 232940730 559493268 12474002 781485568 280834672 399218609 18400376 500473299 262361448 873450424 288639988 444211057 740107919 784196583 874175131 972116211 536301573 551256249 486188650 778900322 598724309 847188936 289829143 860538136 718410822 834064773 913235392 925507911 989317058 992995146 148279089 868072460 989589689 996337784 563235372 653545448 154043194 239207998 754842994 812240309 318257506 427767196 24814393 732462179 33322929 294968851 540858216 547339565 758230450 920179387 307496228 847902535 306927317 868554067 35361397 497172352 828959080 874973283 829692596 875582616 965643046 983750959 303472029 986001596 371520248 470336143 348628353 601014112 589868611 626063982 350406809 459269774 408215812 563652886 344906996 875543862 261627102 936036133 160910882 190462202 539144664 996637987 983885010 990358724 576308252 932859221 292837342 435244579 736197718 760894577 261395627 718938067 752978057 973807507 977197242 981948813 674186043 910664069 408314606 622824725 679512570 868806706 88351897 186901515 358949519 768000680 607716654 991765408 411467234 594469407 433186470 544688106 894656208 948823115 1420215 886227241 283635267 956022007 453427908 483489907 949128799 998668663 189601474 285568822 859946138 933416910 817674535 886916429 393875265 975452450 157044661 690644230 70661863 621476403 910595302 962248981 637766310 928774150 758109773 759729256 828244721 854990486 513047138 883045811 604697061 933871155 171757552 222248346 917403252 965209694 971857035 978539837 702837323 828158311 782072154 877958699 976623824 981344478 717457364 970308566 305910240 848258497 228393158 397264088 842572386 938775510 411310262 830098154 958184460 973815106 960463663 990673764 899638173 910931421 643596191 820676994 551149700 635156099 867422321 885663761 871548101 937329249 836394563 944499262 300124490 730150081 324109409 889784794 298831620 892476822 23110686 824951850 523626758 892803379 653523803 692012101 20908185 620409495 695759997 966718921 271950538 683098365 580510520 811720387 84865989 935889400 796742566 901392284 595721470 681051513 58296347 689758169 453981401 850737201 240697523 670469676 819674458 998491438 436839921 746486807 279638960 837486989 885981139 983018024 123739538 369388050 464648516 929703449 86103606 189405960 665683849 849278901 24551302 29561956 284988899 821676962 860956005 992284518 480764766 487949822 440578676 825372415 798784118 909045836 823065345 974141087 415936260 947467354 188383816 755713514 398207052 698023058 868534416 956288036 33522733 396747600 649902853 877596290 101187216 634795324 838966882 968075145 540180559 820892902 882720812 925560441 975077865 983910087 583139874 988562691 641498376 723161817 158756524 263713672 97055981 387977836 226090438 989449932 351478435 394976146 83824723 757913459 708116111 972888323 573273691 826379485 873681946 910445545 750726553 772049663 457425644 951674410 194262617 624872320 106514030 432212680 490072578 598557274 211281783 932679980 847769735 962488465 316633421 856144860 287957299 877380019 801856374 945176742 424045860 896411274 291971786 751246354 26735190 791637160 123913149 287963550 606413668 913335920 691147377 902137288 880036233 880217782 256639814 899658739 426722054 999060530 257381284 355491682 205297934 421780850 378761479 488214103 526681932 807217341 862910604 915274368 838287063 970226221 650359985 790292034 347382189 927827526 989188600 995752347 41576286 214045311 816616 486196153 711435980 782829314 419678230 991212797 997065553 997672233 427021908 852902774 930890442 955377156 576026964 579018013 646571022 881563702 494462538 933188151 852583420 940834262 492561853 860612172 52339463 786927562 942621323 963952384 260226193 930453819 185186798 752755208 237072468 480796574 34665415 977302378 598198535 618430196 102084724 788030986 292598439 310112628 979049314 996993608 311163690 652457619 601453517 996480588 355148555 898906403 507095270 548555496 588261253 940213081 128165401 394680854 105659221 283937269 92753011 850030810 755349357 837385365 472362725 748376412 710786861 734894319 724648473 777719810 411619843 834485736 371777304 766820031 94091557 231885828 190021429 382219166 118666618 613049347 891509973 963530819 643123322 816549620 797382559 850516167 355915699 975607168 814764795 927796044 334722642 845581630 570632179 952135623 171527288 938942845 564491842 793679006 18838535 264274726 345197191 877957434 833868373 995360736 495662863 554631076 558857443 799411735 759522466 839085251 57000882 249629881 265377273 874209198 225899619 853438170 94601773 200832154 88550885 655759302 603216771 840163751 706266990 851268730 39601560 70504696 528424295 828642799 369108303 645610210 999034673 999148623 531034625 591394724 583345029 887872109 812219919 976664978 450558215 763938271 875319356 910568448 793451617 936354164 278413499 953480081 791815085 911195725 668562943 704715582 382894148 599901031 754118854 908939854 210182516 241853935 753887619 874968036 299075990 703043103 165637110 883847953 578732360 589798860 874281025 947417909 210539751 317086894 395491843 584811135 805061749 960690998 880046872 965165309 163240238 647295451 724765762 882663070 181366488 374280484 372897674 682871469 339174203 777846564 701782368 883518386 424967126 758103099 366878186 622678468 536730396 543427771 231235806 575846345 488490394 767676909 908496953 986068388 67728631 754982229 522818720 826805743 591723060 792321674 924915408 956009449 698851274 836347600 141066485 313730698 20400280 143055456 489235526 919913994 526124996 847900490 392917755 436090249 911473623 977716656 695309329 761518502 224067861 742489850 586422065 811754874 684262118 801973596 362831056 675107339 538585580 586771358 98629014 569918001 337501276 354128040 745534782 765456069 544819017 841247905 247272998 816004535 659186161 762723943 689655382 697899734 19810119 648513975 868389065 985271907 846550629 909735138 878407764 970188794 709880167 769432009 914591339 915865707 703593884 979782609 634906631 957579920 104954460 771987841 976037874 986007317 409161416 833131373 561410607 595539064 701991197 901996789 696420978 922469251 740525714 826283414 643964023 715811532 475523507 806740933 817362272 865169002 130469869 263724039 889520340 954598906 929107108 956360154 826359150 903435269 103298009 169674467 193557147 200531701 428393398 552523463 922764859 944192734 412281315 893035665 378883180 663845876 606360306 915840496 857773303 941322123 657879996 901598281 28441088 505407415 526658570 950129724 267412699 641686089 128174374 354793047 142612948 481635696 692916770 751431613 352734985 415199157 625145571 658927189 771376265 777104379 406216683 644473928 698689981 969501051 289484374 925509162 938045115 967226019 498809191 664400873 386890105 423353147 790765490 795187140 187419371 924999217 820227684 907389426 383629966 635378502 163480467 273492455 923128373 929222492 28381488 93107406 829804475 976803578 192952768 741496239 703369126 973256451 820953961 843557122 74900019 286660640 777045736 893946416 102035917 555455022 383354865 858330931 632651707 756157803 917795087 923269574 983372081 987840406 183078189 679042784 216506567 595944041 487304568 656978053 939099909 999089677 704008758 919749810 167701388 429562976 170264733 677102137 395186284 466366781 771775131 971266146 20888888 496680126 420157111 450281495 113504414 857473883 512940356 604946669 451500823 469390706 211756577 253350886 127517657 885947202 630527013 804827420 690119920 880945124 250987282 713951573 394948388 550099882 785682573 988244819 880244846 947221958 297240189 485009331 349227273 835304964 520614074 572898104 876698231 958632687 315398789 986223145 443457024 714661738 469389478 697402346 256404567 324877891 451695528 714811422 283742923 954950257 553143175 594286150 392283065 666022626 480189516 953163529 828867872 889967089 256614801 393535901 406385957 945616464 958895667 962503645 279925407 427029140 872292136 948742931 802304795 804883748 462771004 614928448 320816346 454493850 554544315 625467043 84578159 414390544 29199574 747958187 522447741 540769273 150782020 450846856 600475308 854214545 885691384 928340905 576316570 819973285 122420249 341573500 253837557 686162196 925226534 965985313 489850020 707243138 898116445 970114101 899512663 991414828 765702816 785440789 123686425 430371730 29629005 930133021 58618373 892949994 965812957 967577796 222523167 686644202 903086015 947563236 482658305 643244069 712515159 902664230 614734946 956534553 327099236 356813102 309236414 850920455 621186375 671177999 932509784 935201370 858744969 882744209 141480552 554892707 717581510 879894332 34530391 812831071 608988509 683293910 216835164 907172208 364468353 522766072 49200944 579694672 791458914 986178771 434655474 822029310 66183469 887584333 627185737 901616423 552580347 835227248 193798486 961709102 731956370 846885666 138072819 473713102 497827740 686821615 510160257 581677728 916942700 980085645 700261682 801748422 668930352 850502433 91255613 158999951 641177932 673615017 655341457 840013697 30840517 607300413 371490419 371495329 289384077 457327243 657163120 828465059 577852456 904706079 310126273 682646430 638641862 773741623 70252235 250659803 898064790 908308002 886577913 983101936 972824503 978401991 493324197 817642886 960849129 965963564 434919419 520560018 156582631 811699488 625315135 937171877 898215865 999003008 92492385 801037305 663947089 843366544 429517685 760034535 439567609 568613443 763802668 924215032 191534541 578712104 956479251 998120465 730116754 812669829 337104526 874290414 482992448 747894504 880601385 993366890 700532584 912033324 323600704 348714050 864333727 956072468 851558308 908638685 572898728 835538223 557109395 645282222 105661792 413352589 270987350 879378767 151001605 522574807 352965720 568816024 710848394 995519303 832881161 992439915 783453168 876935923 13511842 718245007 49751281 465464063 25913210 870210010 155979754 381873051 783972344 926738082 754112217 990184218 835765506 925920987 617793750 715211899 918085902 977216625 726108467 827293226 322551101 378538870 591442459 597128650 889361261 997156457 846072861 932971412 261209309 608209758 117303613 617417822 382725149 444303243 553713148 714276828 934753719 986294387 730889383 821074615 290359251 369864297 632021832 840228812 734290130 851734806 175417762 507222989 255435540 574969559 426557355 614775236 976579447 991987558 699853355 726645316 889756212 918955823 288834212 984426747 539761441 712380595 460004393 993922872 647156613 733286368 795756548 877993483 822567299 955996078 437220937 458651192 169028822 711284409 701301960 751113255 718041486 901961167 202776204 671044086 17365100 395040487 375414783 418984411 271914374 485951923 433033403 462749920 632014617 660343349 582481577 847004365 787205696 935997396 769793554 804871609 209605192 769041143 599326823 650223157 640062306 912471008 476501290 633165548 911403244 953465285 573972289 755936059 397454553 657298636 516692050 624787674 261982236 959296022 639322785 991774283 988742018 988762544 975134268 984406722 311217968 884444236 752871946 942858701 245512867 836590235 383489094 418951104 785507939 880217402 160583863 710307001 721930945 744468927 710708076 861380621 425329002 785014667 981708111 995699880 871215810 901417190 111850715 245743724 173683263 957786285 298826817 459805191 842860881 864336037 46630724 347732352 564124061 688945162 26042583 808204192 806664245 901978322 546547522 981263598 536591635 600643850 485147132 743782338 413477702 757983404 581519871 701625550 143816854 386913020 367727290 563322341 563451286 621234485 310526737 753136219 426793469 658370411 631094234 814548326 94088334 902993982 214212267 218696897 579811436 775401216 798556100 850442069 627123246 736453046 957840122 958708187 837509130 981426434 426011007 552637901 465968387 497243466 936964646 993038251 76983153 275347442 512654600 557702477 598449621 717349720 783511119 946732588 807679946 984055505 449230106 920111418 777138691 842586769 661323910 803845313 175227694 773091478 975008310 981971853 789367112 883462740 918740563 976566477 578123719 780617223 541462169 924234456 387908270 532917703 785255814 809347524 353750642 900827145 34530929 678869723 777677274 973024608 805160931 860832614 281533265 917579697 346951580 988370393 581431462 700125745 675434912 694560710 355569427 761856925 440552107 461869745 930349336 981485660 373496195 435815819 257456501 288680239 971246215 974729154 169324546 343991549 323305851 646115169 374256853 442283634 342152270 667679375 252296572 689272427 988615111 989498234 610972044 744683468 323286838 351583177 707839457 824935275 860569392 871074055 540084001 576820684 569896707 784116707 735892086 830401277 699678945 753996275 375921246 980120778 387188556 873547180 92209147 259398097 256705409 438290206 657710931 950485316 989677044 998787772 787627577 826791612 372571864 413086699 116504923 639346768 576081329 997064966 832963453 877467010 71242693 121776797 993828938 996673186 709647339 794406545 877333280 962203955 599536129 628722007 539050903 938593578 95597125 694280176 322619915 639704821 146169193 782760410 297301618 758550944 633074122 797411502 1140059 211882364 246971015 863650813 442817801 735214095 635699597 913502884 113625381 447099625 219573424 461090869 685378828 912767350 608516928 704216932 626499861 746331840 106073215 481797068 800488391 988333785 295650405 362276706 420636250 937690519 346842479 771678362 480794546 695383478 421975298 898815033 102115042 869710834 819260289 909294163 606938490 712396771 567507796 861824716 570167588 989124636 568507182 808893599 738096452 984479608 953420303 991404515 144023825 760119843 550745985 835955815 778012010 920442887 178038276 614703640 243261923 679132643 88438467 438894970 278943954 706212039 171580013 577286747 584655997 983265281 144399689 926350730 208432968 550699978 815353840 964213557 76156665 429921527 680238630 690338412 474418060 558198837 768420743 915183004 186726285 390843188 151746169 288611177 777190647 804709473 733020229 741809490 399113659 522877386 851022651 923247637 623292767 910728039 243478266 608848217 789936503 935722708 945047285 945562606 594932925 949057702 89766173 877150967 690232393 869957511 306268210 466730532 106867396 323960067 436053210 504619269 647153643 846250045 934167244 992732834 532949858 721813957 731470925 855622668 785661009 868363714 80103576 452355793 770666318 948216453 802542396 807410285 980566356 995593392 757392395 801151448 296660564 628510578 213998014 636573942 744943751 800156148 687152327 726922365 404695576 583567655 224409647 233886148 743126851 967001270 641333463 670511963 726069842 741856359 311436012 399922564 180562229 669828948 243056675 778674237 880394237 922041347 772707687 862159412 472718647 875803716 189459579 193511335 282068717 719061317 965933301 994338446 203893341 445139378 452273671 848541881 227753274 893422624 826390492 871876505 974354043 978352307 684920626 929961103 225169742 639633253 983309946 993955168 340496867 370840755 897047796 946118898 672659811 828518023 664558462 707272908 825678610 830113112 367761601 600989189 448327190 469078634 577489476 717901846 69364424 611761064 568830711 805768192 433770332 454605730 169495996 990222955 507759716 854062338 659049601 973332428 675040369 836048045 255723691 768731321 645106348 940715067 806265265 878327221 63568272 562450500 748429951 827499226 612943915 662651693 311805998 915106916 770709398 951911071 26396802 903042085 778050665 979021334 766944657 900462458 586703767 914317070 216445748 627433835 482700947 754067878 513193890 532603989 558242930 709030349 889097174 934972442 274788100 677158535 871891326 945681572 853415269 880423389 137245699 756452366 138650015 655291713 19230216 766254949 718630132 967852380 784528666 911527764 655267750 957585484 974520086 995683110 163711704 901344726 571108499 600398810 11042356 679469405 301310973 503030316 640177849 838659233 711084163 732753547 615321886 689794924 746580645 803086037 452974260 935527447 927094648 936704689 716328516 771401565 488239971 881551883 6032981 488725283 250079643 513948782 217910787 335148685 310501989 934344910 359396303 545971414 293704468 439574440 498734808 505991881 995760873 995910503 535917228 903355582 542379745 886738665 187083885 288220638 492362487 715682021 858505425 961376729 614608273 797497473 45317106 459193039 605355758 854721257 715783866 864383460 306023442 907721377 635075875 825851050 458894139 779161703 187624591 668031662 616188030 781883499 122890723 543521199 319600900 365294709 892438988 996750310 744841195 879358515 470328016 470365742 889127341 949570071 489619703 733029742 733667081 927495455 655635092 705042459 69382899 502473503 851006036 994177512 181554612 514253047 115308101 425197766 174153521 696757165 964762867 984985830 806085401 830815438 127676134 277541122 49820043 193675354 365624806 633015861 124833813 368796909 675566795 722166648 657324070 711139083 392570101 443182391 570195438 783569788 706866084 938484318 762728414 976399719 589425694 828283507 488826766 984776891 635092145 690135112 18858858 718421839 756216557 992477389 628473826 833112514 467034722 961584897 87478443 994878320 720605853 876772526 417188018 907996117 485571015 666144027 396298647 922584499 759539195 870913776 401311500 816489024 74448529 136514773 654979576 671294154 544527931 792781955 251159659 276045742 218001523 773146837 904132642 963976390 55787889 85545722 604769166 997862819 350653045 649578152 706411806 722044547 119540690 697119359 324107442 852676804 205438147 213677250 885062200 978238132 899190368 984577643 353640542 494354585 339946934 653095392 584770491 949134765 483235900 650271949 916208867 968631509 4756119 625633654 385488031 743152368 133303483 590967199 698083347 960942474 53986727 607137613 561056764 579237296 395946003 607168585 136785660 858691038 337826172 496675853 204532867 625833056 204140268 619929938 911783717 932286422 688623512 802930355 929952400 954942099 343381514 607465825 123776908 698141285 115409600 179625740 17732198 745787413 302407751 836445034 854321955 946137344 439368563 685044234 245812313 968566148 704058201 979140371 896848933 938245274 79684224 224113152 310586364 897951128 523950966 819697316 826581560 974167479 421876893 645214387 109380563 673080791 657775968 726983618 321999968 435755089 91311808 806032268 636120254 819528653 29874330 373685818 250331959 739095138 381331202 765570727 369709477 456048299 434637811 668773731 184355296 541046842 108092546 776823805 745972287 798162448 872780411 966923833 91484355 971125546 760637971 964699688 702536516 832215323 504522906 565927755 273612443 602578610 238042584 358260626 472435183 545191188 648939567 686920790 315570483 907048453 800404650 930019426 65370404 773062571 808820432 864011567 56750869 543368933 224688174 292285102 189598708 946395901 150150003 210627336 776708876 802602792 591176512 808134983 573110324 898606773 988720602 992667553 387550012 390730812 365549291 371873580 992332699 993731097 889676081 943459436 959987634 972324605 751778398 904189919 629756618 929594662 425962015 533309744 767954477 846980768 93909079 883319211 69700880 316947212 438556406 440298693 600067721 791791032 940735747 966032950 318997697 832816588 791697787 958335834 80850994 482847741 524284136 607981631 942584867 962550260 735957337 757129662 748532144 852228331 708864914 932758646 947891283 951485867 227378981 919240678 108137012 234630506 39209854 340986022 464749160 972463415 267036394 312430215 695599291 730086999 662791503 980494338 311231107 556539476 18922427 494763089 375251844 726620852 94710565 281614740 318341155 506729217 8714002 446925170 139870196 691892841 714331820 716474522 768251921 950364556 713089654 901844857 387283767 511293422 753085115 802774197 396399902 668791632 397033749 430699045 552661127 771515088 782713213 801881815 177285140 316076083 269934298 396687077 764406075 819211026 868595800 879520547 614891297 926156945 392492873 848285679 176464403 899644904 384463821 700989233 108054051 245938233 747795020 992935866 874689463 952307734 916732503 962359360 425796441 806958763 320704162 738352135 626709274 946783211 571617969 757481595 573841471 826583637 836404297 889104400 15633075 40060895 199116109 984448008 232485482 430616349 822080127 941663888 209644161 562015712 167940248 575411021 419772336 772413807 904618275 975455058 446356810 905231991 701050516 784777060 349969593 463406111 251398065 565315936 214446069 494210370 669595391 875036400 129066096 455282789 274672762 664992570 266217357 821122808 586561044 837293021 539959460 681388842 666324374 707528668 317768189 922745674 2585437 736463527 154256219 345722425 11887969 709268416 826465228 839527411 125002076 418420703 917534273 956470375 639443278 716138870 274833658 898196339 767456012 781298524 345846057 573405581 606001041 895819071 972491039 992596093 896116280 945228895 950404755 959887726 407480199 846083591 955833720 966771975 424008651 809053591 7663642 188481051 850678794 882632222 983088963 995565095 796011181 857270488 791000035 864660547 54394692 180338829 98824384 222928249 230166725 426967989 479041158 962323989 568869797 658623069 960477621 965775663 197739898 665124829 217496708 921465535 619588190 876232579 234635229 477208950 826912952 979385986 553695777 659004795 379920464 794604605 396939443 653462508 899522843 990942102 460507452 808813052 826101586 864733952 468001944 920536078 548671791 685617149 481948472 590790862 197371592 845438698 962807089 977884054 519426709 688328541 575333816 875039713 409913849 759901190 275417044 856333413 326201818 330894122 171678108 751685805 518442245 614884925 995519374 998060553 401553183 892801024 844851119 957722466 656356116 832268145 631105078 703583778 927341637 974799844 316942524 324151204 242188245 991053190 238963231 828235256 427150479 691846618 883255050 990396912 146060767 804108078 935369532 945417801 18190258 114046843 359293932 670554936 595745869 926022027 582013205 972189415 283419158 507996762 855403705 894253742 107296356 865192387 56289114 250904382 339059397 554257408 375205099 809219874 125989729 628994878 728789726 877255486 918987634 929752382 256665023 305218607 348583072 738393922 423114131 788694126 555554195 697041281 924991036 993377221 345140050 643741933 238094391 978815807 944600936 969811024 529573349 950897781 146078319 378267588 156924448 943853320 21226201 625046344 644509715 703729757 698389597 930870342 800662846 928706668 982689012 995680207 987593797 991761855 984632866 997106554 366468913 593862376 526112224 808430101 71490057 933505086 908128311 981296086 551603051 583981148 988319529 992598401 678489718 846688949 668440025 708071952 360718603 976590761 675807302 931411674 70093616 610447425 889614693 996786906 838294123 897294279 307738684 404694898 564875453 870731052 349558751 757239755 608920349 784656510 723015089 934805356 659508576 877268215 17380417 33555553 434701757 524910828 891913629 901621994 254011214 286337676 355753470 548423613 942236513 994972402 277476683 549252659 870022476 908368590 708817093 873904470 656848789 675436812 129943586 676042719 830793771 997190277 388222121 562038273 532220249 632241936 492906278 506595414 603034648 953838041 752459369 964042018 201276726 806957962 277279819 503912647 173046454 876154512 729220016 961326460 277175797 629027282 740514032 806185217 415509170 806321417 482943521 713010351 585825988 959379720 780853795 866556408 344555919 531721327 232657397 757277969 714129855 796110388 906716883 980438986 371284902 966168917 811628427 870238800 931992710 997862859 109697166 441807004 956738302 992550087 251853743 487784603 490642308 655664023 756284691 819578699 269047123 989091151 571973220 600029547 733574804 783986529 107949558 520426885 14946753 357198354 540406825 829334893 178862212 223783306 770913343 890707894 815255905 826769917 449880224 810904494 553366269 868784048 845576955 909896838 622734134 918799397 719675322 815005694 184657653 957386581 784995697 961334572 686279825 902139549 17078346 94477177 851673453 918219430 668231799 782775002 864863041 916398549 748174832 802858941 610466367 858183803 432967446 956586602 394682604 598191855 181016297 782515611 327964359 873132914 208699713 279251280 580815138 907987567 282609735 414984688 653995898 972028452 578840578 653984269 94680875 350832330 828050612 837443445 127605151 530432983 229225447 729270019 236421873 735488495 21461295 998852460 236655143 572881983 264532013 462949233 169284308 393346385 494316320 565518521 494132017 651783291 741278570 951716379 240163802 526274656 294622589 401950824 557538953 849772594 635363992 844803666 372814436 757616824 935882912 974568263 106717431 943782024 455321967 457171969 358312988 363938684 94342526 998271944 839760822 961790291 980888962 998763735 910093864 940422284 40979546 549513361 368896008 388453104 407184054 777716116 414343188 595442426 451783365 762117746 98106795 910852732 663947337 705153968 642430171 777188826 210878743 982687627 511470478 840835426 973352149 976904460 234274293 268413248 980991136 982815810 383013611 714546303 325733311 990486729 201216572 459346919 164091277 887825562 281334276 843536691 453853317 895242527 817309677 972879436 822271006 988349696 339755743 708050463 162099726 333314988 606038165 860969624 13768827 340816745 447895891 717731124 275865242 379328135 469131931 642350383 705569382 939232766 980372222 985072607 745816793 804220323 877726179 885825529 783854761 891129932 544495667 850836882 324049142 337592318 389899072 396017120 761535740 905235185 771342295 821801346 963631390 983199095 886719384 998250588 605343981 904820086 305823229 723689778 951014198 956947015 290274212 931696693 39951185 122916919 404454637 752791338 498895143 968381550 665891601 968057785 76648384 371645107 731912700 859534892 434296968 474790176 69352026 157584246 507458606 868585724 239567510 868865347 19863056 581573069 63798479 670666984 247814380 853317499 241174169 652733162 929111813 932999536 529743819 853513896 455224857 657574331 921063873 967698129 860360292 869696282 532078031 640167206 445810634 904119694 659913149 809323164 430797448 435233979 505794842 544045661 462306125 611576214 26804369 815914743 426948279 598305496 978276209 988936121 620592450 714113761 4278031 700458982 774689701 855813388 874397480 953692612 255450372 697057965 113983375 267402301 968078188 991227221 802110353 905026891 678308474 784234573 534960067 826908361 167409417 709187110 104342441 454772864 58383047 812029358 851302824 912268749 514603319 977524510 966886789 992886687 555549494 992906620 504767429 582706472 812740614 845580365 132889487 843063820 799613108 885916750 893533537 925815706 474724865 821780907 479333344 756180756 767707021 952801435 686242356 759451521 358630816 484469769 419186851 564741583 599039395 709339562 182984480 312841154 320838476 377279184 985117972 999101968 331223387 433413726 361741296 745295082 814494620 880867308 825920414 997109799 218432706 954235847 251306220 349838667 668705496 731294673 914676744 960294791 380696209 635980418 89708092 395442678 763864659 836777905 417898268 811857961 776383522 914508718 460344981 799657069 275785208 950280028 780301513 966163212 186674855 274915286 138010293 962090741 869517421 904678941 801956007 930651957 423611964 729161350 752747630 975172294 678111824 783794989 863603432 863723001 545257967 835374067 618220703 941666191 839473155 880525432 505575810 782022211 521624647 537242539 402577972 444795230 649856450 981318304 346313617 759832100 708949841 773267378 752312616 930884373 446588252 855092921 786059008 851596155 871317113 898467232 790328017 943783591 474369832 943881684 996774246 997053895 23154920 767105327 26442598 324123085 277212534 854843577 819095256 865603412 93060295 641174663 429191169 893696280 973806059 989198672 382049780 862422646 66022252 476631272 778735980 953809459 809794561 868350010 84430070 693733302 355517821 422320282 171086649 173204193 424152092 640344683 265058630 862269367 782292805 802497355 247904682 997290132 693442476 766711170 422107046 841134780 484189739 496740229 122006811 675012651 601810187 917954816 378934282 931767098 767106282 939144937 43909719 742959372 179712536 482794630 340979389 454620440 271603299 439643643 107557973 819009037 742269521 951070303 612893905 776651732 801332098 958327771 69701265 98333439 827854024 970316337 794808774 986902061 296765861 725643092 156096544 510199304 407250751 516711277 9878937 32641209 523907649 608377155 804337325 823499605 472090340 969637202 291933806 827858232 683205826 900763347 476633020 597710990 264187581 953703368 150185120 509889723 737819962 882637142 748429094 993285440 904903746 925918392 827857259 933123747 52172842 263699254 319890376 444526241 928121102 930384152 717035817 931359855 251491331 587206216 592333954 668942973 783137409 867949023 737309326 904053154 557181707 852569759 437307892 925255578 816733563 931835327 867082936 972992613 836848782 917667016 58161212 472190665 278611740 752491408 198868782 774048097 405315773 873992287 378263417 750262978 622723854 805132656 241964226 945367753 751378093 786697507 699500312 741234590 144746459 335640751 613108044 625617020 123749364 477759095 161143316 905737340 258126638 791145456 412553586 415156245 519042254 796407115 409388866 891027304 566731022 876926706 957894347 971609803 734776208 760192059 454533028 537281830 997089307 999363925 604253963 813571499 178372877 805088235 848720341 860552833 456939548 881567197 358012334 376077663 695727357 794861091 956245199 986898159 476490067 982662230 938452155 954366617 760837094 849581043 392363045 786090614 895897217 983909024 291977224 505022062 371872970 632888756 357506425 360952233 988148953 988925359 899484642 965921528 89481907 334574394 611242899 870245262 928714277 933977232 39990306 150556124 48411786 466467595 639010697 956514379 727359617 977441316 851731200 873042226 254086495 956057897 662113327 670032173 7933757 671447980 593723561 799041360 199210390 966702096 812195528 901540980 199040777 911927461 248313490 431045443 592984785 999185964 591879889 619588072 459606077 903909769 229718856 475902189 186455931 441454131 436988509 571604023 478195463 728103093 808106306 830303880 991412375 993784345 567992521 943020426 581605174 637636362 520939237 649396718 378666358 666627234 579150284 868819185 273127075 682997991 434319327 801128972 218922102 395030969 271297003 702930868 776645929 953427649 945735775 956433214 187088957 305996296 151097551 407024881 456965061 565950491 401705199 856878881 632979693 775819102 277570907 778512203 86269430 822737953 718807645 913723241 397501805 562397668 771457980 991182852 263213767 423656289 939693698 998327552 837801720 978990537 517937199 970631700 750880681 951154394 478968266 736840383 893802407 938123633 786570349 862651912 921620796 969358966 994064185 997785159 461398166 479129310 560351831 785306331 763676876 883226149 928241220 948478702 659335130 758525772 72214674 287275878 453183259 682786553 212501072 938838708 134403137 710291316 890632356 919439904 564979039 675584296 490761877 840868084 306836873 315653058 318071648 638940066 861721776 961683609 944865576 971376863 191488977 854718449 311966173 636443957 920333034 951347055 974605571 978040223 964020168 984972921 709676520 804466938 715189925 975147559 184087120 219481180 946607018 963876898 479672489 673501804 176285709 439184006 279263370 462062768 216265263 842101851 973005676 991323072 834458155 904852970 646764671 695913219 292402386 628645917 73523189 530266202 418239841 593225787 436481346 773741681 307073140 747818067 322444611 686667203 200820660 948682154 271283048 919643795 304875684 919607733 845637573 878644725 595884172 905765900 396542480 477346829 873419393 930491061 593550242 921830296 969000730 980422281 386549070 808503765 111781769 132586661 643722737 949955270 174831053 410198897 743730448 800268825 792590963 910244823 543133337 959260373 917400332 983765040 449706909 740350543 410291766 692294497 906856872 955374897 378199658 552779728 219323393 651261117 537176129 630942311 335216867 972323796 326604948 421131882 415891951 560149432 894372767 995982002 498905507 534493859 890061272 925168677 513343603 664350345 1051126 164029075 911900420 972202212 770248589 995151882 216468721 638590278 826299509 900690675 1012696 631818943 213541354 578416541 153138758 748870353 827785619 941449658 621141113 883231880 387503740 532526099 861045067 874960123 709347191 741592280 419453364 709966572 848718010 994485689 262864339 408467854 285794254 567294898 452444663 630698915 326844054 802125028 61090883 493390952 29759346 168850686 625667342 708748364 614679592 668168705 709293581 751019042 971782016 980029550 863631675 934856158 659265029 678550644 877982409 981389904 956531725 957188751 534153888 806877025 481497496 945752799 572713883 955016635 226226363 704745607 178840668 672607337 815781868 918922173 967619900 972429210 994570770 998402654 697820648 717601433 202195174 380807523 819558950 963014866 174395323 509842463 295903120 317478788 13890085 643235546 836164680 897977418 838852933 853012255 368471389 453438474 247390656 352498562 817369444 840362788 221369110 591910446 363793388 592356502 33443071 480247494 34640528 696813921 181460975 814039582 376179420 888151066 909302804 957371783 497904316 582637385 929065659 943051978 222577149 809653284 753514644 930348824 101358898 980420465 747124595 959371920 976021072 993520110 628744396 758569514 47534642 966868352 391816043 548262491 562282228 695096418 328426536 516106255 751314792 908904885 408990683 698179791 91872984 982801815 764436111 906289254 168572218 998058978 58140861 125351146 505448324 769999411 366574255 767041204 72991958 754137249 399254570 453360056 25619178 504054631 638850941 642482451 149089898 546573117 557904963 576491237 682136143 715536015 719238678 928377965 10615391 443385407 560334847 613340324 654152801 975870439 278886903 506615233 163156835 307269440 501068243 610332036 908016878 923690162 997176050 998501879 936022537 957786937 524203849 843228732 126958228 331805007 81696695 807016942 681342754 982029803 236323084 758355797 429854210 473219758 64765354 746510264 21475298 83517116 986456608 997286839 889437607 950718294 739791933 846655713 387377767 668172908 168383234 180485688 822696695 962237940 583261931 583688291 391215964 748265472 160858633 587831407 865656440 874668286 829948161 936264228 992596433 993233830 842340830 983864310 196781466 555509914 611176270 942659987 71670055 991969108 620282145 686216099 25540785 389011902 796757025 936946468 217643647 869381592 864565456 925304512 270156502 720712602 900127938 911154201 139895220 385864858 555132975 702945332 87824469 978058325 756276581 871350251 104548114 362171476 782206722 914861254 944614454 976700623 969569262 989590065 551189102 954762915 582532071 714905192 694620259 815995704 580224107 585595125 526426299 792911112 428975933 670354734 905493521 992701658 401269620 488006009 34498396 997536497 263945016 809338796 207820228 358852199 174393805 369780012 307125113 488325840 688055345 868755983 685465196 907138879 258109861 599687491 561502176 567619082 294409644 326648746 312438709 333127886 513701872 897324569 520984510 834116709 932869155 941137292 78183004 356758260 227147312 973975562 708450563 829601902 382358155 606106367 800901010 941137263 933529809 937975788 890408432 918754237 441814586 718804173 592891102 738135020 800991914 941025072 373202412 985782667 350362677 968851266 666021854 953364427 445657176 683829265 468369743 689519348 734322087 745460992 430261219 955754566 59439034 372106691 233112023 992965087 17654822 939605198 621546836 771686056 914493091 926203894 443556115 647265157 724346398 966083870 448870919 816774080 965250588 987626590 649747492 945164923 786133774 928740197 849328632 884708790 235396102 457224309 725510984 884049473 464371784 932418628 982069463 982182242 185205283 327101158 351734641 403366775 608729138 956140152 59506906 657741885 417909328 571331216 6811209 46601597 35006424 289111771 8651460 706422557 929799360 930143877 753369436 879810238 771661538 897895297 101505108 407506566 899622616 943306813 232239137 853181926 858394435 914633632 632737500 961200744 440903440 612799324 909179572 918516516 548713658 687605733 262603642 937842023 543572187 723292037 266526897 371404448 865836141 876562200 936025950 936745894 467596485 697680193 942182215 959522378 791159799 970213827 978935270 981222418 955399057 968411276 399468508 574215154 25260019 747277432 159693841 451148314 32102316 57895971 477811723 875345918 73006943 486236094 952053844 988406230 584854784 625140394 349020810 860754564 266655511 548709693 609110119 751599433 319503372 918985807 613164976 834481287 269186113 957828726 650907483 966123303 847915670 938657924 670372908 992459974 823519856 977526867 616959966 661040589 458428551 843541900 83858682 487640282 227048608 756362103 693714227 734105624 705253706 980640806 91033978 736157027 585610941 675156869 609794242 918098890 859434225 887568274 538294764 607550344 471721095 829946612 730458351 972665333 783891303 866462690 112869780 120377684 579343732 841302284 211592839 926922384 422426866 628403448 793629175 974323246 2123775 23586646 892384568 924764345 287154780 315345608 850597298 936844622 254787806 544282721 403017476 826102774 382221016 389112881 758620847 835593770 582945769 719618350 573542951 599260206 680053842 872014070 151956366 220271228 839752621 940165619 833648911 851794575 231339617 263914943 533666787 682940621 834725415 838637302 924315592 940029450 7310360 185102198 66038974 495974679 717303603 758325716 899704137 901295006 373435519 918261922 386039145 876748100 382019694 691955349 747580587 954239934 333621351 973491645 689427634 691229711 23078946 536931741 605095731 970907645 217332992 636392661 950618458 954021268 730223049 854858077 924536549 949987782 613033069 629595841 985958125 986587801 821273563 855223319 811665038 997477703 435142334 551046306 252612526 835070747 481508162 983179169 219672067 806695247 675934390 785453393 14405008 443578407 867870878 920301821 753537956 803007859 141702617 883541690 796135624 957762621 425971176 450155367 748499927 862354338 87619411 987336956 985493036 998446010 487180370 881979845 817981039 970499794 322348763 427062212 1525571 850979894 68582487 402483182 195537057 281751751 987336582 996128453 910443718 941032732 521249848 701241313 857075337 929238957 794588753 847283927 422945882 467977031 157197129 199936675 379658482 852962924 87680710 727566990 520177674 856967412 670943573 750282697 806801543 887003780 595150875 963978935 130744486 409559872 585602303 872947188 418827850 805736674 952744369 971384056 397490442 909011228 257608238 724565320 605921415 808646126 937277297 989078457 343136006 433158628 239633810 356139510 222728656 635501138 202850615 669776406 883774058 955776737 13270207 266445066 735624396 937601718 171719994 910006021 158911063 740143830 583688247 628953121 973181203 979199103 211378681 551054439 350081462 770618468 379473646 996438707 542249851 968280122 429613690 436363605 484895882 598480730 406747809 964458903 270216027 712602423 50099521 275487421 2627853 743359280 723086820 743390665 86213499 811683170 421540956 455493889 776963713 968041498 118667905 577026045 609825188 725284240 755581886 837686402 213814433 807940866 925172326 981313753 293960314 646863494 854433700 998706136 972874517 980124791 638246931 939884568 668846474 838631284 765413704 871373120 170906625 692457176 181801914 206595358 224197148 779983337 456190252 747569440 980128821 993475268 611585369 962272460 394105017 720689542 770665588 949174361 147079075 596981962 887733118 943506021 269011834 531457586 585829471 640157361 275824505 564775721 305916335 309511995 8548282 609046884 597415469 965187620 346142953 825409137 961028147 996977303 63566090 594457028 355764390 844460492 816338385 906489406 434421561 856522517 28437337 982892781 853755730 892270767 721072902 785444427 680668181 896319963 658000328 985845050 813662798 984506907 619553813 921536651 949252001 990775994 936747189 943078875 337261149 365948312 234546843 960214555 821537736 830786523 531341501 975483451 107154821 197601463 321992954 869946883 369081152 874114403 858306890 973724106 679103648 904485072 923633537 977748978 864198036 956539230 256689119 276179037 600517252 825635175 391813995 587078365 930234896 956829234 188802695 511319685 472948989 824175276 671306782 788999155 256772059 265129982 165917011 677775403 335905824 676741392 750086957 833116350 265326562 879210949 213738113 755973791 89293103 771897562 12723795 995014841 511346551 701399205 861073554 906644005 832543457 902119473 4816337 477381719 542362769 773050194 90716443 758945153 514795575 856632721 89099800 513519095 521149590 851068141 450897527 962770286 44239909 575688938 360352257 513079808 958817149 991813826 966007723 993742605 417385770 969607375 8969113 866864347 851438740 886556431 729563969 787751134 491341419 601701022 86052072 498286086 454988481 564957037 442910946 867686880 976095735 985722010 648434173 668420684 73035243 931521846 743141105 981935939 461245761 787929267 532337548 888088959 122617412 303245188 404381076 828910529 730657163 929256676 865919334 973290613 744992441 967966771 727931437 743202216 671325773 818299079 31068050 489345815 467267788 956700376 814452295 913240880 373669376 811106656 470292004 926503741 25976106 62214055 604440024 627363770 869463927 890582947 229777344 665642728 714262682 813697076 586111513 614423118 783891180 813353710 169168346 584388247 823983309 887459659 112442497 744408561 454495574 691172566 157927773 489458666 225728479 824151486 563742674 699961220 363958806 442709011 950550174 998652002 549837023 844362677 92241443 576655532 202935904 467844236 334175406 518137818 901307117 957801345 786819484 970038612 144900947 312516248 659595985 837654231 5196490 703520372 934231523 952871237 614009455 720551402 202310458 472588767 617866264 936799660 456759057 687150372 346231790 540118498 273604524 995099939 353473721 812633712 789526976 991081000 546275528 760768781 228984193 605202466 544296215 671941950 965442082 983230871 425282674 473109336 140424913 650305291 941148304 972200013 166832166 752901032 859980392 935184737 24438759 706288480 516769526 967156677 584121427 734683428 229288748 858971413 320748467 428897271 155767584 618933197 341715544 396238025 294585091 467094533 279933150 549907956 817222808 854379749 443967465 593298736 170181348 942534509 835321178 957037571 414120094 578566839 673268933 841902437 629865764 796538748 685576213 878598425 151299185 285398665 617788125 960484679 994261818 998086492 781818189 900121796 523607719 555344441 685228927 741049346 197612604 445916466 454499119 520702502 430265451 921704735 449232591 666170127 952423573 972946652 252356330 623780734 223387314 795365821 495764806 729144698 706537153 910536488 266848612 447431518 337467798 627310076 702995509 902868336 337952430 639318455 830165149 880235630 109656693 978123091 376109309 855388285 666348823 992257746 24077348 93700993 887541072 930402636 354716773 992662659 374091246 673056266 973207592 974463100 495431704 823731716 910300095 970764027 222020389 883219731 121342935 612152205 964409173 996810736 212726155 546166155 563092494 738985961 35534784 730470245 121583464 208538693 63086830 338721434 848221617 872719208 342828645 855938922 972021016 987690861 610280987 897075089 381873503 868295844 495222578 919825582 957343130 983938396 118020799 680847864 646648712 690258569 922644546 993411657 843336075 949566460 932017285 996850260 509231078 798392620 479692902 503430817 924502141 950898671 793672400 911941923 10200071 400542968 135493169 588605696 891693422 903853819 634301751 796290146 125627170 916419873 304820555 929462624 78826197 486965910 900495539 959358666 857441453 965184007 542525451 544254211 845281098 875698708 825523456 972102047 419225806 541848173 236326988 412919778 568632281 627024574 572906118 985366642 568917844 956263915 552199539 907778842 503845312 780441086 247906847 811031735 160643164 294455388 381460234 431047149 554946076 994469954 396021454 474257027 938256278 979285965 712097393 801929165 58704103 648236534 574504912 616178523 349428547 486234589 20060775 134440074 392134148 609703213 862601917 956626918 570047162 900236089 989803336 990963247 280412426 593294460 374088213 964621436 384222114 800428276 238158705 868680791 284483941 898427894 164380172 976494731 293001431 495283371 914203575 998078013 60774352 378711976 510412501 890346497 422035675 579305851 302950467 862080227 780719991 952215711 952206599 988608681 465870310 809566006 774717807 835400112 339165187 561207868 683863722 940141591 806567368 874835138 428690204 849599296 639497675 686218306 802958780 991421359 787407271 950515797 232418896 368958450 362633808 761697971 637913284 724340049 892330799 938602126 972727540 979459515 693479856 847902699 294842413 517144398 265052897 395570828 305331072 442866825 413235372 812046030 251804985 498838534 461451870 759331369 980292013 980830047 823812496 857109460 847407945 911885365 493460242 729186837 892191325 957908817 111684074 984741577 261962497 585087981 207333853 480274213 351347363 366064878 10384639 120978139 745645295 942759088 235655314 577044795 187623723 287995324 209374493 763132245 681794617 866575158 129794737 632423172 359073629 858574986 894762155 982041155 834841094 923568945 340356556 549741946 390624029 988221992 856127213 939886849 527934850 555296917 709089583 981025297 838340359 998762457 22912495 282404719 780116427 793695949 972282802 979098565 703261772 848536926 631267195 970462861 690870545 791477115 603277250 833694162 244277608 831290452 152932818 425473990 668107068 977397436 921398855 954949506 611661067 771787413 887464768 901104522 58211662 347528533 201431673 908002768 558589836 882262580 116096426 270437986 372153576 881599167 401787155 592003097 969259632 980753846 102273605 340121510 117002812 293425075 676548545 773109947 157852606 349790906 832203708 880166446 269157692 811668811 643301289 752366036 409741032 604069117 650373302 776163526 686759628 784830260 118310025 954858505 983646289 989233305 113717858 310800610 443376847 663542297 523064318 701016579 550715287 695861699 230012135 403629055 495514009 592760199 185249173 235780890 183584976 952432816 263554833 680157489 644150754 699123423 225177769 293272861 87246621 421625613 168289112 370466911 293512950 996190100 298894811 961282688 508641706 576831235 628987992 637384125 94484708 432993575 191108219 224622977 219081558 702238224 780563737 866545920 185794378 516552106 504814373 857744646 804490414 829428134 478480929 575531899 734754196 971973909 740178634 933751981 100890245 674070436 446635171 937488739 544146232 880305492 89194869 153236068 796934281 871541299 286673238 863735032 174158722 194921083 411626176 753509863 369250836 693569245 37527703 853404024 114935662 996166643 380655656 666393793 581943955 853890434 386899288 864702530 186530362 282398745 678268664 754068932 791811196 879265441 955084773 968934966 757210005 965198136 570066475 920441837 343204615 656152936 760544055 810039449 467133647 870218686 445858191 928857696 106353568 755210027 132831573 790642400 569318215 753069700 916834047 954021036 286085854 519904521 949700818 967914922 106204591 429853829 703404029 909647204 789890395 831201917 212263302 976405734 199805119 361241270 533605086 746504682 46800983 367216698 878035318 992640039 225142978 307276863 387087616 995370207 298637103 527196658 997982306 998996877 613771988 899055686 351327814 815846163 796182360 951957799 3930192 717483588 821136672 851560447 848437214 889132941 729921356 890960696 587496501 689154939 720885727 921719728 164633246 456694917 127846164 565209497 652239078 865393695 313259894 705357690 41466431 546505240 501481435 974716817 510250965 740962064 202199689 622947862 211806386 709638587 530876229 932134651 311982151 495991714 560426528 975945006 415881545 560028489 213148047 966225686 223981557 348785513 461897870 743810153 851050909 978607323 250990680 655136960 782782643 848136669 557670173 757568941 160356142 276858367 259825208 366672615 882100761 944104953 872311397 904781670 574503851 825573755 916998760 985417942 16724326 322879113 154168131 394594943 945297084 978213233 842613304 860819924 32108210 860752216 20112753 431171694 374246585 821927514 19859201 682059494 367635569 973485341 961417103 986002673 900748798 964736667 859177865 883445869 231105019 615965146 327056172 963361934 844902892 865019742 962732543 994884061 808882049 812601717 582208913 987886669 163334536 402538912 453756209 815654105 729663814 887096290 895703006 897143810 633624036 891148433 556997022 682221910 115171996 620021841 750164989 823328935 451710611 696022566 339616500 360850167 371501148 831619100 395090798 412897081 281346678 699679277 81814612 531586318 36117115 256620016 958055808 959969112 539966393 865951611 429835125 791914287 502438752 536019339 114274075 942537701 713429137 753299299 620209386 803272151 506879352 797913263 657206431 978021649 1499367 267978829 476385744 749971012 739880752 940349544 767357108 793289971 65934720 784968195 878026428 984150401 952360298 978019983 288152457 855208837 283678626 425663897 814316121 898544434 102296337 569806026 49358797 352837117 319064248 871265938 784257120 959604079 540649152 967065152 143730169 328602505 851177621 927591541 821759432 858802181 882907839 909206533 458299357 503259514 744571111 819490967 812172063 959631178 44975564 802063077 895101598 918326428 550219832 822551270 316863334 400386991 103596720 581995841 698282219 892223358 283816231 983363506 425385273 868614369 893013178 966105792 253840742 494553253 584727845 826591377 262705853 418078052 292853284 836411190 525871996 839334589 700586889 833453561 534786381 989999201 436949223 452228733 871461768 975530371 599649826 754375114 594475099 768262919 817417059 822789032 531789205 597605603 388581315 395188037 995353018 996439216 70396631 98541593 281891266 990660431 212293790 707803106 878557536 906816608 663530803 666495395 369642034 686438465 413974389 452364728 206398227 806036196 737349061 939698712 819445552 875683041 110425780 812535550 529400666 576225231 164326268 891878757 643421278 707693928 776519878 956619981 202879325 490740750 522628678 970270601 144522416 619303125 842866952 941407889 443971797 772544413 49328500 135070833 767958467 959478630 250662297 792538065 426402584 444736990 548271010 751350030 846931166 999378185 539920559 664409362 303081497 836959771 953234341 977870740 570175462 837510717 291916555 350457097 624842572 859068712 248610047 358618502 608118976 995280668 52192984 546257476 439665064 699410930 931433824 974031269 882364720 887599965 246110843 863505327 259053655 357122927 439669493 471513599 307295545 632449311 580413572 990117552 38067951 240885999 503445882 947026994 352429370 484678769 245080123 590064318 978046982 988962263 834889931 933863739 806953005 821624069 768364379 953535330 62203981 245107917 900166815 939849781 155421975 921577176 207383359 721539824 160135999 367365195 558233031 764598920 745361580 963613637 308333587 689059198 611974505 920133395 355338295 900974636 45929857 70422659 753814601 864734829 86933036 875591064 677227732 806802782 998311321 999271060 939060115 943182825 419780667 545676803 72215126 661316394 685660953 813104831 134363774 562389655 412494359 987872551 641318105 691147185 606583930 951004501 42364939 68872260 221927189 934802570 753333473 848025909 790924456 805401289 701388723 926274639 606208946 641209724 16587151 895473682 131722090 336195977 182365077 870299203 179155234 541796863 802711438 881621853 148201197 668176193 141374189 786558130 593882754 667778674 497321717 682038100 534296211 706060384 650101025 960575163 453218098 477648733 772290056 899727316 331362520 630639358 408043911 718564917 576425685 933287998 240738126 701305730 579742712 594256388 656383031 850523834 716902096 954406431 716043230 875836288 291678792 293466300 24814171 211346577 247282943 514499744 85524375 113995685 262756988 801104212 278310868 720100607 378882716 480879972 314185223 903368346 583651560 611588876 425826094 968540029 646149603 806063930 432050682 728211375 931302490 941044158 38555269 80130128 698812438 839570351 268203981 616369579 712997575 988714624 219438145 946362887 786531565 938959243 224158144 240534596 385573142 623850222 338469867 855311549 161995708 180815678 262725831 825285120 451276207 599908249 881855040 946992502 673692959 745188445 216994830 397749142 956250541 995339976 94174422 325519342 77004336 740402933 273359338 493601121 97670006 912880545 235792364 321166907 459499154 967532127 125492236 962348963 810528112 988890269 206613958 525462529 597932449 688620055 668474160 769314517 515269373 668324689 237971571 515939339 628264225 700177296 599474462 914575836 885871384 891982475 875848837 948017501 9615274 152768503 779791254 935492271 118175179 233245173 123431817 577267404 207885999 497733113 708068106 940210634 429502149 670477124 347569413 846911902 628633498 850476304 352310522 817800766 212015121 249757747 932065969 939451247 941233032 943090866 58008702 675186539 896148211 973762910 596901636 926828596 770095143 984136653 407626149 566178658 668442570 824985636 341912473 591760683 802748732 810356016 79634415 721696591 280972763 657301461 983317529 995251054 758044187 869270700 654327909 947463136 513351131 954854868 514588487 992341890 675386458 881185494 681199238 881469913 971525349 989089263 241828212 833443296 416948913 970011876 892911451 986846787 469114806 671950100 610152614 692085379 710244536 972605085 613708950 737113004 765509834 839865594 138140892 219453199 752148534 857031692 934128333 948616876 186525383 579229931 143695977 847024498 545868957 560385637 984412070 998374059 901134775 957713744 577327444 688711065 936047279 958586577 878810383 988712828 448851894 630116003 47322816 706527229 334899675 478819708 170637849 623869917 934493849 975193207 79406553 736620744 175560501 890266927 600067306 926602041 29825058 519868361 859351974 933975295 468400260 558948608 369934217 742188705 635351286 998912361 177966759 528747548 130606232 528397933 274747434 946297943 387865411 931017474 75519626 922012936 297330138 871559600 103372866 707991544 759658898 909939653 819604530 960312162 92031534 780343253 461422982 823386162 574026430 669442857 851160317 876166312 672345053 970673363 737270806 755516510 926140018 933723312 506416274 568825996 519849408 632196895 375228590 924966396 197936586 266111191 945679700 980091039 625572775 797156831 690192580 820089144 442863255 760814279 572369886 873465193 995172072 996891002 988135112 992468284 307795560 309528701 991721478 993363357 445995133 846190851 324016116 404984768 212938877 459043923 66756433 945389772 329647218 890203795 493459597 563989741 214032767 484149744 108540691 467858555 529177135 674818243 459326539 955647638 415566535 459265765 919528629 962141084 841658285 908961114 606530984 835321233 916382291 960164025 474966051 850739592 322216208 745170354 303579978 741756177 176029823 711601315 859533329 974595587 437101339 990863051 405681186 736993088 424127128 656107521 745290040 758690810 142369820 400025126 223557825 785417718 580284515 839738361 547609004 682495836 458504985 603479458 796440205 901902529 730501169 829688058 305676119 557929404 975189052 992832662 517263999 589658378 585667655 683773771 76600675 463979855 30460318 156924551 857750839 910826305 909668073 911905319 920618058 946910340 602454108 929795981 319089405 355145822 738785911 745766847 211118922 579978465 208743085 552863498 142028403 703821545 27988995 747321830 216037196 802360021 921804382 971879176 836739866 873282916 603803804 891121646 334493131 650513641 840214613 989375138 205175801 565573510 254708219 710741679 196243634 363197084 641335216 990199505 545209123 626348228 843810979 917756548 468951921 996356852 985533029 998166173 454869793 483816932 403617598 517632528 45593164 685890660 526272499 692335531 752670600 838506907 183816766 415799871 460361845 865254730 790041956 884641985 270524701 925314296 307570997 674018504 179173408 848666453 740103272 842556453 284362167 673738694 437523393 944412441 126706208 787506636 714885834 757690460 991534738 998841879 603376965 798935815 517913540 828003106 973043919 995009779 594824203 983422847 139064243 938143343 202724399 484397143 500968999 787122283 14087755 359704000 584339950 839338489 540890104 653754496 436529622 795196557 126148715 653685636 637898880 862560229 730546413 937878536 387036099 459389420 894679753 995516985 158056451 223659330 379677463 514157960 551745425 961573994 464136562 797553121 147374439 749725412 529448436 644638506 65634232 83194086 49310217 669397951 336229029 378831289 198998744 560224437 631404352 780135300 182050090 873601990 293128646 691106135 742870275 912458885 60175338 333430786 4035628 438375912 620057635 812175520 487917908 551280770 767692281 859426532 820002875 909696426 997462685 999192842 245219590 773696914 537324266 912365916 883822110 939308768 145152980 408179059 737278183 935508894 557976676 706566228 560253321 837585600 795164966 803710429 129530501 788236893 702234859 804890055 851223811 944170692 540390616 906530878 52600210 690042063 283274817 454001943 79358012 307565062 768314198 782940864 929014899 953343573 985048456 986027199 866908210 909140189 991525090 998941245 987126788 994646700 310858194 635431434 336590759 353309148 823657584 900680943 376693876 495702298 6911373 601674990 561778872 756607855 816124755 889665135 180041684 375830623 14279693 331554342 515715911 890747460 662621503 759504674 125476021 142760908 458669359 800342828 206902429 794408086 311713831 317061737 740074486 877931119 824937826 854498252 28811867 789397294 61195104 961957151 140674126 712501706 601520183 619598669 155010163 402424060 711684373 944299546 587560260 960966398 656380743 895936668 567885505 601121271 53464066 261385611 51978039 406588551 900630129 918382251 88620928 324236908 781632305 988552227 74390283 766429211 257236134 635814210 68968070 148307662 239946426 424309760 417976600 804245086 269796205 413807909 910789117 974095641 540257152 729364443 598185067 722442475 436923185 839487028 996204916 998201897 73053217 942038715 184626117 644034927 544594954 656199697 354032039 730278229 787629251 934267153 500748868 978864761 109842351 455654364 749989161 981523386 775858355 965962518 103053787 974935655 388757043 526323975 567260242 734173661 211293434 398376986 593247097 769487446 681584327 934794422 337016538 340181329 791723735 949766278 82394724 299160657 644293120 706025633 616279951 931360959 623730211 842639450 115551839 658306785 666016693 921636948 963283487 978024738 669971920 986356952 924941026 972095736 598917523 884920973 334615902 424665910 852168387 894300193 338100012 589125476 238440118 690816066 627254324 922358850 837442974 945542356 992588747 997335849 419525988 499158824 565833920 772400741 110981737 755306815 237956477 406801569 808840717 989637893 513557819 726327857 601628383 966420883 466447428 733080734 340872811 849979384 204746083 454476598 882752179 949516127 900087911 914661851 917875168 965963893 449819055 463518078 472360156 781994358 972095048 992561586 730129738 947715843 194453337 257865353 514860065 775400653 612939832 928242811 349722913 353693711 557555169 934288604 870370702 912689392 820394930 979640698 106543830 450930139 211480122 838524817 909716077 960224554 351988668 475589311 983198648 995247487 347190745 880931890 675330308 741519191 555722550 764517359 473287367 864629682 543043895 978418620 578964283 662789346 114993484 736419765 254105208 646130405 770456459 883259027 438727277 579220137 321561748 601335277 656592642 937799099 990294458 998011370 215539132 559047889 188192226 748499930 382121069 941569671 32803744 655115558 973890700 978000005 53810219 973499936 678343746 692426022 730362422 928740082 69096614 197101849 419025401 678151565 451510928 516740055 383997898 690029117 10375141 393320147 624275912 830153469 153221859 805075890 973228473 982244639 876123629 938502177 755019859 901079826 41015830 152898023 634530099 813720116 335048317 880053942 538263390 725026981 244032361 592986445 408288689 554986607 101736026 349427608 386817435 432273359 453845746 629253857 389788488 800518305 18519941 885007359 143413169 234099461 271359318 638061881 24969578 734440947 891753938 982794045 35908601 351270906 383159525 937227514 910358405 960202452 739635397 854116385 346929480 499997827 523495522 536371599 867629058 938719910 537722058 612021615 23331607 336051193 909069722 991950132 759498395 880565150 103327765 517020880 679200734 816400782 271405768 365893975 608171951 942456515 694326278 990692575 284099503 724988416 846599449 984787731 635874848 902985913 463583903 792642175 904100707 949395276 245563560 762168582 73627416 138922307 589126674 991936583 50684273 426907264 466778167 631211986 929578773 948404338 55017941 81108453 142949256 986093333 628045977 657383160 89706088 976966933 472357798 987106537 260801170 524649597 374668765 596659124 49273073 312192105 603192548 979234164 911003837 923792457 710239409 995036327 54351765 256295927 471096530 731029330 154192892 707255629 288999237 559019905 891804946 916554787 104671612 694912602 27049640 195858818 208669985 737495725 348371946 404542046 202674126 834903925 150587172 309113014 624064743 753940896 343721531 413557659 721697156 833755237 632799114 687729793 361699443 903677341 383446052 430345922 593788784 905954727 126457599 964782156 374026517 437570447 237437332 738823241 471331917 496489654 932178182 954783678 167419407 674727071 404494696 934717960 627790094 694985841 818955028 970634021 75145174 198844136 139227928 806827245 942852780 978048725 372504530 501463436 450108042 717281600 513341051 637114421 320894519 808358085 152438410 499977889 667389776 832816331 816857144 835163323 597650324 994796387 118122738 537837626 358855556 677985546 119315149 131955216 723917040 830394691 170005769 280882179 46182552 456014092 9821151 999111690 914789963 958241555 528156843 860425632 854468133 968003973 549821091 608730080 747634246 959589034 358821903 807240903 793356365 933344286 388070660 969206884 471877376 910228574 351753795 666917359 433299674 694030409 624291074 791491527 62816291 316384632 346501096 662555192 127290180 950683710 804547250 912193227 125660994 203573449 639917990 918618449 809379531 834976519 564161891 917903426 583901940 609193503 841899211 874347401 412105391 544910917 122269964 142000431 17741023 154272055 281519413 882917836 409561207 587650321 322037466 359983607 305746638 897698552 401145150 938049134 272054861 318530737 109742485 687186610 9807941 456386673 727581896 762959306 444541064 599491388 860443087 980115409 924905707 978230932 430323481 768426090 691813800 776082154 134573493 257717615 466149091 791099217 490491638 561380751 726451489 888446231 734556181 828288739 224612786 762853132 166360359 580248959 449872665 516954318 147158561 180280712 292941506 949327848 370584084 605597736 355055480 740965255 504791093 515652201 796163226 936662974 26466543 411331426 579553752 681336707 814703342 935361070 215363470 373404620 808045522 948601775 673905266 864655407 855331285 894540050 952752258 990106253 822754779 908091471 178336829 640335268 183977115 758801102 726744466 910705292 474282298 684446880 212593805 357307172 31170954 693461673 24020680 720371209 961634145 984406740 182591307 768454384 465699269 894711555 521271807 688702024 836913406 941721445 802629188 940379391 35921719 671984799 280514573 637124939 233961105 464135215 691217472 967360836 396244886 896889633 746562000 784677370 357392124 404283592 433512438 920131734 944040629 955351724 908058297 986975364 127444825 796689528 612984458 625658148 866547422 980764764 434984947 758419112 145766391 867578977 821456506 984677346 900528417 906617301 545647286 926362669 995075519 996820209 492228969 866916224 941913639 976922184 946437763 988383164 318992153 329895798 270673250 803380096 43452060 604621207 949600211 971483876 845625399 871795524 732583400 953884576 134857023 836695287 386288064 685197433 366834290 598696044 988786589 993758799 144658915 245786613 894478472 914242487 32672518 775226809 257410335 591308335 972120570 980412601 202046870 996010656 4158014 101060831 812056985 955925892 537217078 698203787 862410666 937126099 124948972 782960902 127108193 567837198 711330368 752280337 903862932 995853551 365215652 470810367 120609491 851208584 944493959 945430051 730438648 957481421 293269164 352270845 918707883 921574375 382353171 782728617 567042471 942241663 336285118 506006987 592129679 939371972 622098988 648611720 566071906 930162430 419294685 906379591 970753818 976761275 518865525 686000120 941762929 955102849 720848702 721589887 371596356 572781475 114158943 741528043 936714457 947669000 41024489 254735292 753279769 889526846 74921959 162282152 60876868 464453838 471267064 900171240 571642043 636813160 889654631 972891405 851682466 918592856 449156766 700875919 792226738 941941762 524141866 559802148 877579452 974677407 221384305 972944082 601259184 992649058 730290972 942908808 267668656 793866026 365193199 380764565 839805326 905300989 759981790 955447898 968897524 996259475 339880211 469606642 219523110 409626381 208299862 999116940 138561232 533144543 656292914 730537993 860718038 875989926 790586079 810190355 214880160 523050008 696498069 720989932 937634565 978901239 969853717 998261981 972927647 990830973 115824275 808822258 640644997 714556508 578034864 741542975 413674538 996202775 772120355 845243834 512206896 610821169 44384173 389792901 761984951 807951330 898900940 901689138 322549766 929330518 129202882 674943862 381289671 753260703 235759039 847806189 19633456 150689944 43631520 214244342 70809842 951778279 584691049 908939470 990734054 995824853 322469089 748991996 269019236 951963922 201454211 440338360 482491842 923853817 720853785 792059598 455129452 745254857 224301428 868396736 967946318 983290090 941827172 952818840 640670635 679415723 613893838 802867557 909677788 923517570 490662316 494556837 686860796 936980707 527387679 802679490 29811037 254755357 285525609 819605304 728516145 880372707 647796911 872529587 13512698 760276460 867318660 984268679 838220379 983785467 883322426 924616129 497577374 979254542 987929173 994690575 350133548 394646112 980549328 985396044 737842760 926604546 759339964 834628241 130777128 319309146 198350575 911122946 733204607 880696049 683663739 691125416 716375782 950638148 559905147 646964773 162361139 439216545 880667294 983196636 190042173 619058861 609715369 825547008 431290602 878573825 332254521 466730197 938832572 940367978 167303059 981229832 83847117 178875222 445063617 892446970 584126596 996832962 59741229 595046814 772203697 824482391 158064668 773684966 126176959 742497497 239159931 548597762 74090161 155424806 190534137 433562440 114221860 386391975 209777415 721553597 101236785 860348900 266565117 344046419 565796347 877649363 20837725 480397936 864464277 906387156 337834326 889196122 756860667 893795283 30972356 895579123 113249465 116873819 128682207 754790310 911866790 942478956 79406020 592510219 96329672 364876120 967061483 984130229 963009711 977347890 386844664 834915827 629247704 638027662 311800002 580829082 156783756 822447546 49986932 923050727 112446061 873132128 759140565 881594921 54089673 543620187 142692470 147506359 559460241 977643172 832549296 884954136 785974046 866029720 465187654 846573606 391873017 849041911 442273599 676547656 917749194 963904500 376683779 918079917 346580327 687022496 160005745 868286194 790325932 835279648 991855906 998573571 974159220 978254356 774730658 843295139 65128107 569749628 100215887 911915923 558141158 877015612 996921089 997928228 849440447 950552591 82728937 328296135 437483282 910201235 237014211 568988783 786151122 915000936 380998560 982133342 103614847 800873824 533970464 572633381 742979539 902211572 573886458 580602611 864778674 931481588 930560359 955657001 673654978 992435870 587995806 759876590 749610349 795220065 891050652 903278836 155554389 345108620 437394345 898625867 329389638 352195857 22126458 474400851 433729960 540755346 274249954 317084241 530817855 814894787 675664761 889269858 104073354 348961641 488282727 686234278 145345581 708221289 378249950 618549423 143229533 165301965 936912004 942743496 964986549 980339721 196822852 747407876 27338289 770864480 664575771 811390387 614649547 827419553 546935172 940671384 289217482 937801061 642871606 771514549 39545071 56547945 922556935 988447898 851603942 899387003 35595250 73182225 37652992 347831793 972690404 972716742 62412700 223211663 569069567 663268729 324260436 958899332 876763013 879111405 527471260 696114898 529978176 793410126 631421008 686841008 681012304 911730511 322521685 996735067 773793691 963714656 944100309 976216464 452412536 479435784 93139772 185029218 192203880 460162549 908388007 991663318 992582049 996302519 622584687 901314873 945198488 974112867 237875180 690895797 810688269 928077436 198255505 982233905 510471214 791985304 892436920 980771038 316838309 362057011 242231069 774809634 984924743 999172142 624337735 756803650 484875049 980525267 490883607 598151743 682445562 906832449 33598700 411879555 877287781 885858591 312133876 380890668 909802232 968376281 956155226 958337142 904995530 943625132 27048024 552669724 774220627 926054629 7014892 170827628 181151434 418372066 333695748 583863068 386033396 707516255 869472094 932229409 189319907 634366512 637146075 887410796 678733731 727710066 159404917 516172377 403162009 696436392 433314982 734366090 395615901 644417285 548431895 623289253 949104925 961324730 88506967 147306394 155900322 405861695 971950058 994774905 524962543 927342424 849173351 887503321 825772915 917592143 815690455 902553508 715238890 863040704 570316578 954134165 896939798 982884744 628372042 964083055 249297583 286823167 253199665 750390174 986982189 988684411 367045568 690187808 75054872 689473643 824914160 831082673 150971337 816244916 136854487 900141471 798587033 957708283 932234213 996565213 773815788 844769455 966361096 985733014 198169014 844325518 793121342 811667377 966671393 990486559 612379807 855431960 866197138 966387704 774286945 912967394 960193103 964095581 246453234 595501092 50058271 350987055 667408830 811398313 253399617 688155873 645025280 798659971 609271863 785949902 478899937 497433195 603010762 831433992 822024191 831761148 629578516 652386955 970245560 981844639 54248206 410266287 596461935 841462158 977531362 986783738 920351056 959631085 700935421 868050829 413203864 474144276 267022419 559590559 56595582 822391814 946866286 958264168 405334305 956836378 805614438 889797480 472753748 938104768 484215991 684868811 660291137 763191964 926286852 933434471 184317676 260231569 759158499 867788883 36965521 175269380 735919770 943494290 266698918 419830025 884265013 935117562 692020071 778844848 432963368 589737024 266647070 854626340 729216332 869832574 329903386 824339852 848584052 854312910 436454504 762410080 428470737 470353312 995323024 995758533 68231206 365240558 181504077 783612426 986574522 995396340 246007979 553816490 13053265 518128833 840441953 863116542 154319683 921628487 7583204 746985783 563334129 595522583 6346552 128334016 221250488 229260450 246858782 954171948 705125861 750336505 72927812 334505917 365517051 956816286 111090114 987595464 747269767 842023230 390134798 648035009 869790989 925541784 608674590 715778222 108511137 382826333 671243280 675405545 436014355 591624700 813328825 990369875 981781203 982265228 760600611 813812183 436103255 630974092 319186412 894667502 3508698 191169303 807674015 981438482 350870877 451413365 334639122 564696275 561546788 938656526 569791332 571272106 740167133 914559618 532453443 622067089 542061424 944341405 704610629 844510083 32469509 764845004 794637357 946048688 169048130 711951056 426918605 505286580 205634229 228184068 138299372 975883903 272041355 816581120 676709222 799265697 768637866 861505536 313933389 466534855 123005260 656670320 678448507 712057097 949282881 950000669 712761737 980699533 974246463 986662820 256581185 538292847 942983710 978088123 707861255 901851770 800391998 909584996 383842986 764288155 675568068 700533322 20823937 74433831 604438423 747415849 729489349 832203197 53968368 573842751 505929490 715801727 284215788 426422571 138485321 914673201 762757341 903917238 159040557 319987042 278509011 341223471 237997402 274398642 542233710 615374545 212609506 925602015 417906179 976387223 372454272 601485915 210234073 293084746 139288542 434175355 118187622 838290290 473384868 647395367 381828871 632524846 640216388 769233483 436997533 573485536 669545800 685586100 15422148 884734878 693609459 883054170 555143270 692793909 533265973 554584351 670750237 702761181 247013873 765518236 588236548 915239649 517276902 733351058 666574896 777867114 636991375 725923636 548967298 954315301 765674476 872274361 13945508 569003135 923211542 969264383 739642654 783122593 388259673 977758789 543308351 945267426 783148885 986255436 604013500 939207541 156470184 306218401 708859173 727797359 413735697 845365812 583459656 953018870 490009486 563242066 241131449 479773534 439667448 702498682 992257286 995352227 884387605 885479539 722643268 797523895 60093998 221303223 926346372 926928343 452880605 532803746 455406595 456439016 588130054 919665250 244898850 845539283 830319034 928467148 689698620 874343247 943581984 968546492 892728125 976219729 563284779 949710523 126115989 144642712 543288557 594192177 634682358 933204170 321349312 719616546 39071287 346585635 844804073 857042639 322442388 728915662 883015640 889969365 583690795 818829487 535256314 892604397 800444526 915853187 668878441 829594122 302369525 802143526 581051051 858737670 859450628 980277685 859643529 970768120 385145628 983815847 696555908 729090237 721501946 790900223 416505208 485473491 879023228 966127403 935796264 973818670 3159097 662810813 347643005 514727239 66146404 967796234 684446883 845379724 600577631 906131050 848977565 856641819 477656648 487212779 652751732 877154058 548049268 650356804 567841818 582655652 600756051 812105660 441516929 670260201 721716503 761543208 159236445 819088966 14567071 540690106 99235779 815978166 126331846 332047411 399201640 755544485 441891571 983330404 623189158 912170147 251354147 864760037 751311420 859519297 143231027 570087091 726369518 953029909 549367648 835981237 592016518 601657173 768448634 981807493 718816808 762034781 686655566 705030452 424947326 726072809 380829583 475610957 786656023 840208474 843640641 907238361 161215103 860544093 968864774 969038640 991047039 995853601 646408371 718125384 134476454 491876718 560320895 686457482 944504253 961427066 982749150 987140354 52192446 362190167 718882078 948664288 130345644 665287016 607420668 931552496 778950166 818850588 242977721 554115092 653628830 873797944 655256044 964044945 493762833 954926169 941032017 949747432 909535735 983144440 493061953 749525044 860274632 932547631 987408908 989556987 60225407 187234086 554946710 614190257 43632489 685414877 803440497 942502054 463730137 736295785 149700917 501609739 677888937 894636460 245307274 771746326 734023980 872779599 438102850 472369536 58807802 252776925 851877105 870029253 745001125 824958330 6726151 459173889 416655864 481303608 252633176 683695634 235470133 963541684 590374928 739454544 492144623 850493219 544969649 909009108 505030776 996095051 835127745 906956882 970182952 990651718 941374841 973428815 547795408 989947720 131335294 631495505 384387141 595128436 313045414 531806178 83274212 997017908 687936460 884617228 643659895 736761606 990115308 996056203 897100742 928762124 119783886 818225360 204807920 982789400 383576784 440341276 45247536 550262885 215272218 327062057 123895487 479242419 543781905 676756289 734779889 826312879 115025643 463465306 552137898 955569088 822982396 951166665 276993680 704262495 164433063 296555066 933447502 944929884 582192600 585172683 252820725 303129238 64299567 765509629 962843356 989203517 494160292 580770805 279901153 507785353 900544789 979623377 748753954 984243139 922171486 960835812 938617452 954513342 578337077 998858833 495184281 801537680 789234601 805716753 514187827 624288666 428583709 817860194 566518072 784595327 533344638 733462625 31285113 699387098 930952562 952516874 939920242 944405576 500102943 636941595 236293662 969676073 873124613 958162261 207127598 917330289 410954198 913881937 57645061 137927902 960313197 963558594 346742837 677923716 612440158 704156248 664987118 756254504 734246594 897182902 364911354 581514492 500936090 591450533 687085306 688404136 506180660 951998736 974438020 986255062 977480010 998021154 751870647 867298436 276177612 403150930 570530666 843336909 254275696 391475049 387230170 477322044 427071557 803912675 956571898 991028562 785245938 794391412 261084295 265904243 106350755 731358883 355577233 644258839 735047765 959730617 363535979 395048408 22034435 623809242 64227858 732950552 230517090 983412314 945582153 962066060 717257271 932822641 878397131 893468010 577619902 813677711 622740144 739024804 708135056 984335657 514820210 948548738 419315708 420166458 811363167 887213066 686474705 765109879 62135336 356700530 605836410 656004782 884257468 989985974 414061681 632501564 688877657 773442418 46073048 736011979 168950882 420690617 573492424 946228520 369602507 853428828 448140672 908097062 589163411 631828078 856497372 963843184 584789282 905316292 338863020 640517721 940597558 948870965 765094619 897957568 655918141 697088714 222496658 469581344 996414977 999252414 127282777 181098146 870750873 920929572 197562705 551957777 161841333 268635927 463823059 537541219 574437458 849615863 604775332 668093291 671579147 790097050 896858726 997695497 877300309 928370103 246301135 265506605 747528433 941794006 527271527 658787307 562659194 900623647 453323998 579774063 145102550 871295302 474674631 953434759 82003422 658319085 133644273 534289041 642882434 794905725 206917915 619191232 184113380 423179721 633255735 850453214 6870254 991692319 630598846 919673241 1050744 396265692 494012119 931572618 258395005 486490160 447468402 826942797 737592576 790312040 265279582 385869713 572753773 605218025 382289008 513215593 760058768 995767845 801207983 993886957 105727938 540846930 178815758 252979878 176304084 457985642 311492819 712339437 952958679 955010641 210570274 859407929 938505774 989928476 817216853 904882368 80448970 984206982 761002626 834781335 133570420 754932158 50158494 458572538 737760041 904705736 786271740 893337024 856053663 992355822 687923248 934366959 580653990 672847733 643992678 920625067 26558218 67028245 143059967 292081079 730542980 829950060 816278673 962505649 527039302 996938403 194451532 641089783 839645954 939592496 872611343 971184114 516784994 602623500 946746655 969815674 103546563 174457277 363861889 602372478 831774249 934627902 859530552 893166940 498458428 958746831 563525487 988474449 313224776 361984593 280705275 660107654 35687700 359913937 184648343 706148085 38713604 942707531 945003329 959603815 63861193 344056867 288462293 292795150 967002543 967785451 903828128 921751266 711672672 865146336 127515435 445807775 403570089 939023606 922357149 943532045 113825983 576188485 382649022 834588775 57981545 76998978 466553581 534014529 820306420 977505418 199753703 637943114 569680257 968274127 156905513 779682236 908194737 912221705 559156652 694910076 179041082 499633067 581815442 678338887 242038860 686436917 350887787 757425913 622201562 990992491 441064826 937406312 749375743 922086517 886332923 983158041 179899257 349011820 388370192 530049338 457998737 616850142 88837613 142906369 791453273 852939502 113379351 385097881 566340962 888457601 942939998 987940915 149680191 277310774 242021194 992983029 113757910 764939655 822983758 886511839 851526335 871231848 801824088 958301021 686478112 698971168 377484592 532728276 338436291 548310230 688052460 718784403 417793551 675431009 200049684 931252348 77561410 952787217 799488809 957609727 467711308 585731144 596962016 764602453 759230208 808130939 294848731 657724068 179503302 341203343 702713200 817791571 137158847 148606703 722279761 732363700 344351866 766235372 894367631 927941186 13130314 426775803 294148552 797244769 396393778 699589835 697752129 875971438 265877042 359005858 941812526 993755153 620836094 711809568 554108936 688802236 946316431 961861196 241668698 838600363 135130779 990584609 21918494 659950149 606192579 763591601 686487141 966238804 598951301 995342804 779734294 888036386 86581960 536780884 576644960 801895520 732682097 735967917 206709460 413863901 263374331 992569729 813239078 853878963 976596856 981254912 766027864 866460730 202706979 655753971 55413777 262944702 81197048 560314306 784294531 969469870 979892668 988365888 469987563 531755821 32484463 565475593 567166403 820136149 131986893 974689748 116330358 322670942 697476201 708570152 400326336 407811927 342476075 961180863 610025831 881461845 28002044 253188509 558627817 785615731 960652628 971598001 213903100 220850124 386891210 411047936 316314054 544531991 712944702 837249431 233401163 835798381 566306643 811549511 615306005 955084170 275611396 416053887 860654377 897675830 769093826 979125443 237092054 644690803 152120896 504774219 859128866 891544285 584612783 816752150 642325131 866680119 8498489 278246210 692707195 841236730 769163698 808807610 732130923 995217444 513156501 852051108 877252468 959509087 160394498 194793810 630591610 934187935 539101044 613017523 688349351 945407889 962533525 987915267 313075164 338473980 71430879 522240057 626385215 894831368 600792365 738496766 207355356 912899417 955116215 988775868 133662620 521749823 272057665 729210252 766913782 867375770 120807216 135221733 348833802 857455573 591304909 952673209 615401429 625036937 323675927 380594928 165660150 633503132 429474651 617348707 320677925 416393332 259463711 310059701 226914316 246071229 760405501 977017982 937688557 948981539 922018916 930222646 857043429 932651227 139607218 602370556 112843322 745279875 509925907 644327889 683864528 920789655 140025551 188327825 989659652 994965579 245676468 853485922 723992119 770977675 939201267 961966110 478495195 577072178 914251810 991126724 844569578 888998662 47297889 115057806 36673698 700763543 93093784 129528081 154396844 804609971 675477296 846851214 935444341 985511060 428314761 857686459 966946283 985653130 504302060 557485447 101594529 966564026 229901222 336105555 460456164 860754392 20908534 395109278 646578358 929199338 960023153 979732886 577945199 816862733 75230513 794439809 474078681 648412405 448698583 608246995 425407539 574865643 224006286 283892146 830513098 883773803 759596461 828251712 23118242 45197150 457292942 926231790 998247898 998824318 626090850 649110277 128561645 762188670 968413856 984752470 725017517 810183397 156782824 475492767 532396160 827340554 136365263 479473799 589282326 878033519 809009167 935696549 248316551 636905318 123230960 977149123 990335691 990949365 620334586 776110756 643593127 864506024 439973780 765936197 982224563 996082755 223762234 430946638 199805690 941528552 724547071 946198512 306003779 595542924 455824861 685103098 345521325 396019457 909951213 916496944 196767317 748989169 67819639 547361846 713033474 747380632 581696923 929646049 876096190 924306815 614435579 776025744 12048038 258415207 229618631 325248321 57457286 936835208 44670771 699555097 959922717 970508618 543850290 585023688 920328724 920728302 253050377 632741192 664886353 666007954 688015431 857450303 82462644 965607323 608905230 662953366 187054726 831443992 221128914 347937895 779649172 943289487 17045884 653659781 541864077 873771660 658955067 982074538 436119259 484916238 554840015 698541383 643601801 659098062 624305167 768965959 321362863 641843253 912901386 913431493 33654724 135730305 106726649 524661523 231308094 273141955 154572838 553831139 592751064 611799493 22887080 407692041 646223657 853790962 886058079 964132570 902861346 943697725 969289557 985022375 866752918 980654428 782971468 936748769 269018373 551441231 245780698 302837554 834156830 868735368 174105867 452872348 323467372 865122295 497722928 546277914 471543145 519921779 750921381 964509278 243599388 660834092 616988879 730517864 951268009 987699965 6711437 336814376 929453342 995154181 24059062 481435715 343752806 536080759 297284709 390342716 749366922 973010210 37263709 439549772 120326780 747637996 877003843 960335017 900067888 974605048 874660527 886821708 384490562 400939618 5611719 877647527 533421026 712001645 615356847 878319090 74710518 920824748 699018265 833191910 117485941 124269927 811499786 960384949 536929376 964618568 729224729 853636784 858658053 971642544 460076345 849710999 156888906 925923740 957950328 966221253 462373468 816612382 369032645 785397248 804592682 897891636 279140370 773281275 166253046 620217091 636252618 721497668 293597372 903770288 509500008 874769733 484468961 743579232 424204310 854488154 987043427 989501306 995497435 998333423 691645971 880839168 915302188 976245448 283220970 871723601 885063129 914210811 461802821 680929871 488176850 711829655 13110023 704136259 590688269 634757022 919130577 965832560 625076250 876767691 473712001 906989692 451718876 536413722 565470210 601767729 993638808 993997776 335231828 963695662 958775135 983638088 561195676 583226301 754348646 821164052 700681344 820647897 541902915 896595590 95966248 627743072 843698572 913405593 356138624 696764502 428901494 940026165 323493046 380156399 562842461 679880481 290249491 615227204 529740068 568584623 220824800 853687411 274571513 703719513 944779715 996092306 495785027 735767526 858475412 936289025 390699768 930719360 27832686 604101715 656910652 787928732 258796603 973488964 504978924 841833724 942134266 982834471 210776850 487045974 948549440 975899169 886432544 976522285 816921597 858251564 725089256 936054385 22618969 960851877 141196123 265461674 685702709 874978300 423775841 906038578 468220678 942144182 597660065 803794311 958671910 999091783 477862744 852721669 492657470 862463296 546778761 564426199 828922349 842063336 681792941 959810863 62754313 557407615 739408221 803637898 436172271 488985748 264167680 915330784 912501962 928982229 575373315 988768369 582532261 963422993 289125695 535216461 226841240 491088680 828540273 961894351 563298511 843037148 197437480 484846836 652509246 817918333 572452687 688738223 210592746 359438859 728409104 923879500 470516311 538462678 493987851 602758536 907340278 908810849 410890094 805731968 198483698 767129100 331486654 650753991 946322330 974870917 106537731 998260553 310428433 569339836 913292095 924229947 150326684 977727179 158664410 541441194 591883387 880960741 236602050 610596533 153342915 197597741 283708765 532907302 685656515 981299724 853494310 998380439 848771324 933368608 148840701 439564392 447552377 598481974 940188170 960541691 822989315 956462809 656295483 805356283 802585369 850524375 189173421 522434024 199784717 258261653 630205215 775078334 626802134 878036325 307764970 486041994 116641818 647283189 357641378 460579498 679866298 830806893 537893519 665811974 602616935 668746092 549215764 735548270 292597185 693639822 16014755 966110151 799561145 993425684 653305150 659645867 584584906 855503132 410566526 744936645 476309927 772656294 515290743 800387646 678987544 790326921 6256364 220143932 134624963 521666611 191414696 837722888 636575801 734356813 16458479 910111131 37385133 245340269 263616415 297207855 600340311 781707653 354590372 573841122 69294953 259422337 946414970 971973158 810856647 917564109 220153511 527827075 535151787 957769280 415059022 827459141 60245644 385236062 944094288 964887800 290993788 642957797 773452670 809396492 767066986 872349186 120920412 336152070 767837517 797995611 360453491 863647474 119443508 810351086 703753380 890184693 616736344 991565998 711697906 964236668 563356078 634203690 567791624 635071653 171811102 173556842 904901683 926800752 755695255 996233761 375587780 802998019 629560772 768141857 790678052 961532455 417189140 436301824 992653772 994383820 18541019 252903269 116930253 671931956 693796514 965689385 838496236 893109371 720288523 750034333 900709976 979757603 242342525 891561960 83987812 808727578 116267771 852657235 659417505 800312582 146246660 234636224 570061314 987820105 463411732 558049802 631558738 659217656 531745368 876780916 254207723 623553721 114954495 685817313 460743490 687205733 796501764 945784999 99184881 458731010 947757222 962824762 304125257 733039318 712036051 782714142 766535490 859500336 193800048 567207796 304421868 603725969 369874041 879628092 505902383 670831055 487448317 677442084 812916273 817486621 663454871 829061068 41965687 531401696 470347916 572573633 584856385 703265839 514561561 902750946 992412379 998631771 216238219 263323471 400970042 682741960 190849688 839147261 58021245 220063283 386359479 934144883 30756605 584274504 128341878 324153433 225036979 595477101 3498382 485007704 947197147 987465638 938639620 981867162 997100135 998668081 228946152 387905286 247701569 658373331 588986058 822320149 296954095 439481397 214424986 842534959 773072345 878965460 48932704 172161652 148962954 885020961 876636554 961814841 714558225 749364211 293394166 306859162 224791009 956349908 471230710 749773143 913761407 929829266 990840854 996012646 187337903 272127943 674178458 699176425 655315234 892030555 420607359 596649832 690267757 725126844 827572795 913780596 201058453 217683192 767990016 952411358 277979582 402192110 431406730 982168855 931649880 997199051 352789834 549704477 59925681 595587997 230887382 376918690 412756320 820599319 83677353 210109516 307392210 499644287 372353165 692028816 200268927 883744319 428832199 649339794 650185306 895377508 202310375 379200944 752166644 830543415 46503171 892458794 829966769 836782241 343630462 622160585 673148787 945326547 392579729 742684943 862954868 960742328 721003775 959323438 143831356 717371712 705406397 916321655 328299181 803868069 791480327 986735921 255730895 694107354 792048460 877008443 220244091 625150186 656917275 968295190 7563585 13404574 570120927 881069469 202411601 253614469 171853379 668154465 932979925 935859866 991039001 995766156 230231893 704215488 159211750 516803000 217498001 963328001 25551539 681427124 384772423 896858040 454196646 642621214 315324754 906935321 616182437 860972958 763046721 858158519 354432291 501980593 400076577 743165983 668498652 856917800 783120289 894989840 623352829 934635513 783849042 992244817 91835397 118310337 445633551 899225751 136379694 819407806 136640769 599241979 406593725 876053014 922637028 942277969 329371465 551992856 348487489 877393687 291368013 607616879 124675130 752022687 908737689 986352410 640328512 723745125 696266761 944645639 457759313 641549578 869974264 983859207 481605465 794563251 498775958 903033468 951571084 994641522 262178798 639318638 16713161 652720434 847337165 859070665 596480881 832570804 875677551 951462307 797180517 963961957 363649577 770099534 923240686 958674035 995980328 998402361 272436098 678666872 172296626 278973483 363364874 573448868 710939700 842557394 404756929 892121238 601589364 927259070 842797390 985146552 857622838 985037196 156992348 872568479 330933782 841712792 137274976 862348125 166554542 753326398 21251837 124682749 930834645 950066823 615403772 813611711 186268403 445268130 334774407 548729185 784756913 833951385 203990043 739782557 325673612 338436827 810133478 881491527 291968934 374264025 409347539 727774210 591778470 610532419 55716689 870869350 520155751 917887246 56980848 566863641 634286571 705393842 3976019 503030939 859376903 954482081 731221664 822546239 946465636 975717192 989211432 998820729 339579396 575708342 932351952 950564060 820669810 991892834 695507029 754338262 90819623 176076807 684646717 845306671 335787087 699777307 912064951 983556711 820014410 850399391 395614702 688069594 409739333 714385502 463452720 627678011 833039607 939680124 73038592 875134695 772768730 916395949 422851611 980592874 648384060 765314747 594331922 884989992 486807077 770744533 703269220 987547532 783945040 902139911 309945728 434539059 485065095 995880658 167807018 654576202 369062856 394432854 698194605 793988998 488535441 779592156 350124885 467394312 697209593 711662086 85363445 102501082 211476714 467743859 473081499 937413357 10553887 535698023 478450279 674107341 331578278 753951834 394005570 443481468 475182484 514843211 355815221 363891692 697824571 853141127 297891914 869109975 14265079 31253524 720422006 780827603 70386263 643682633 166918787 887780646 56754774 838458692 663953826 766496967 236600805 701554965 659452086 709206713 938340987 982930130 384540296 573450921 319892685 387714518 209616383 887856631 50193724 945379637 609540748 684838690 231071937 641097567 79257202 959259264 277919592 901119458 526047284 589110916 656295446 850371393 468318657 549787763 349500761 866607668 287329437 743180879 531299095 733005344 528799923 561980607 198818319 257268395 31201799 700841699 254056061 452406682 929526756 985715394 622578963 789315263 458879581 506571769 293825134 585400549 817398597 890445656 153142674 351348216 168697457 896287105 197269259 527529529 687949931 956640161 27977333 453345114 695069768 987146117 607494076 790166528 295992113 713997210 773400627 933608749 748281595 840134358 540337357 763981733 732460739 909567502 563194129 896200512 949415993 970840226 885942272 902964042 286666772 387848627 112637334 139074817 22040154 954777435 264841058 326508158 891628449 905229354 28571104 410202079 961142693 995360945 109719603 880977812 961187781 981453922 903012680 969952482 826470883 877694861 967559664 974682832 58604883 209635908 604569623 629870733 676513342 921343611 150906648 276853019 720693107 922522460 155303307 783047535 152180154 479753068 428285320 914947327 494217673 648708571 405973187 471926201 842619120 870694332 31360941 724788910 694861040 905604614 833509116 938875640 486722558 669521546 917231025 950793852 553770471 678117779 388214024 508273214 324599220 392919953 433740281 436473381 921994631 939842188 623989133 994760394 366220042 762151226 201569381 728297146 411304902 843814820 581792779 857869949 668617336 823818815 4420332 796233358 461943499 602565898 902737113 987571387 121085698 424215988 899066429 949018697 331900735 430069908 699241061 903242332 850523820 899007392 830265876 868258882 57040738 237376621 461712844 564052731 909996248 965035865 571789626 764929757 849068626 964982309 970587015 986308965 558357700 597143560 48935975 578458973 869485122 939814369 747541448 751949108 640404990 711584002 66766449 477044279 344761371 591841380 734142922 777412118 281157025 706257409 250921924 709142586 9583737 346774360 105425044 394215650 108763663 383151014 191969783 240930751 973711200 982056829 778392730 805137482 308091322 660019170 854121204 883494141 52366184 944663596 984920617 987801794 158089854 354688452 225218177 288839976 385072638 963421403 666989189 821999476 926521430 955556376 213444714 483992954 47952060 283999995 463015457 566438327 202709490 252021009 950265103 965122402 104647329 928050771 52786581 322181644 285726300 436314804 164271753 898300872 993296631 996009511 944486273 989622608 417985301 527270346 412945563 718698427 178684709 766384974 543737548 710780470 604086621 637618104 540473637 853360947 454356912 640419820 403743373 894244387 386441990 775406918 205663991 480445372 368283071 604292620 706610192 952000489 350494016 591558077 144781335 477066206 345788416 843293964 346568976 881431774 551048930 573583846 871221552 894555049 448772192 574790533 646075573 801869700 778381120 876454763 337827120 443154009 319598739 942362399 177566118 242685855 803975920 840822579 117855874 148945862 317297553 450328524 631288740 872225549 511708386 927228549 423270499 925803214 851232626 871163619 979089261 991068269 511404561 766183764 970079624 978922788 53181841 483758862 362242842 378776832 566550289 818767972 867207941 970739664 174580941 214152362 150214581 371331482 760749176 914113002 730600410 785483284 847850366 902511878 959161115 966270941 210912673 576894152 557168705 953325427 710177056 825110026 603864785 783835656 528344742 651617280 805439707 944265406 64659255 838351402 266076821 473123180 632997988 818941875 286069639 321276623 675256297 924967102 990681309 990954975 434866311 775646409 470717200 829150350 402905533 511888538 762805479 901824551 381748903 495679871 475536930 752509810 967240938 981385974 403274025 490581751 24719227 32983857 37578983 639793338 429042259 896757677 208621449 234892883 219755726 783730483 679082382 962053568 885750085 909027110 383355775 839759454 51582069 445104643 22626690 95525561 771611437 835581867 920545839 965075635 139836228 658611110 133182492 178939799 47200876 707215549 843927952 918888351 962329710 972780415 668360977 708240262 373784484 984521510 204494665 325708993 117182806 991490356 882470249 994176502 767823676 777425247 676467725 720359182 2070598 523849246 549266213 555456521 462779364 709090417 564456336 721566754 581231210 928693459 67443406 572042908 38766891 78089886 891952164 926911018 134531594 886137933 587774925 755181617 196298429 923290831 624069405 773876123 675487549 918585798 649965592 963347878 386794826 437436905 411160571 617022864 664455600 890424887 595643554 911783148 423971682 958415809 714531669 812220654 766545446 823085943 788017554 864842855 17180143 547477673 604835903 908372685 523843712 807282018 524596131 882582003 262897087 469711055 327551617 480106181 151107597 680649043 736157238 736901186 252545525 477483513 455069861 919266278 252848680 398967651 294350294 632779369 316197528 676608513 614909479 913330691 517011540 794341336 687307202 715386715 763752975 881038135 212429569 365200902 600264444 698402542 363538570 897767387 103174996 896884401 616037388 766590833 436772239 562740652 774196053 834983484 249189774 858524242 371938248 968144503 208729042 655765433 226122052 506403510 366555258 500670834 915847845 918760931 107331854 541524703 275696434 469677443 736904842 862356157 368211579 731807340 701905154 875904901 371266563 651211912 954089248 998861843 668186167 847922637 918235669 966937087 231651631 600741564 929784031 957090916 922188194 983492911 424436834 432074184 205878924 896017624 198650333 300344344 68852998 986097005 421313859 911155486 941227415 953000006 247727115 940096870 133662366 510682576 122417649 897277319 542018163 606688784 586898208 609811936 592883581 649826397 625118160 690718212 455695633 683278023 369025570 474827702 720410297 961061404 565884739 771096798 192753866 669802845 543367948 942806535 199918642 778364110 801608523 893586193 479050094 578799968 129178127 131041628 284083516 472715121 122300680 942008769 256433012 655247483 810470905 856283864 437643018 551507702 616934443 993254066 557958636 824188338 45716893 352878469 168587752 190933492 92111371 203822768 333543858 922717030 801349687 848588623 672800121 982730615 519398355 715790113 460840778 558961752 85105567 413864372 864993566 954002177 368294441 477147208 524996196 635128789 326989261 644721389 442540457 561822506 180054832 448789929 236966628 378183234 138811441 410323721 295465802 807969977 479957020 785951461 675753775 865154526 965410074 988800266 598971542 990960573 697824897 700172079 305758447 926684244 993806133 995277847 300373709 699529828 243326330 739753312 303853936 929478008 313939901 464105481 388102264 634471154 99384481 530785136 799189230 989204764 139385104 939834255 140581025 473713465 322647419 964614092 24332947 167318312 639214183 898160558 641379212 863619984 369833342 810786367 127921802 544505547 434335338 716675193 886458927 955274783 795570569 886337032 16216808 945847121 149247293 959508646 593653241 906554983 569155938 726882302 581740385 733344526 774941430 801853732 273844384 874040879 195763211 330210522 133241264 734379817 687109373 811377608 157771179 694847383 506756816 913269893 885603329 926301782 368890546 505035420 695610455 845185698 688379238 963094985 69593569 965094584 994170428 998707890 423939910 997201156 56804409 998014780 420180520 784893962 654867659 752142529 680241489 888947130 73726709 429044899 456174087 709389464 478547992 784109667 423750633 472360114 430666434 746934712 277065003 721250591 24735400 829804316 235938218 933549280 130878739 482653014 231237330 420875936 666256745 953238884 219553584 347229648 560930330 577993815 749415314 826004051 847943680 971468161 33315968 888116715 45034468 329537518 942875076 964743472 320144393 527179144 359810641 820673353 340192335 953284395 462704093 844874457 538097256 911275900 242499854 264265488 77215104 620066579 143291933 574417587 249285758 873679862 73451029 549117809 637143151 993152540 456440699 998012780 457260919 838736493 612260118 758536291 319039743 774811716 888049572 939752917 89785447 458534105 686648030 839480984 396557983 446444489 255953433 571133654 779099936 898856074 79765907 776982103 624512295 842429610 205640933 697931808 549802856 700736006 805356358 967491219 388998384 782484242 71176487 233423707 323106735 834688050 371108895 394731425 856591433 917269722 359002685 535440283 154968423 263307157 515738204 679506346 828888891 860048454 582161376 667049640 496240558 677827666 355360465 937136138 31977598 647575716 3587752 702566839 542095275 961102410 405336580 748323613 855228314 992620633 279061012 866985491 93657884 892735294 405224460 469176463 643501752 660847978 135923779 587526652 108879515 495727932 357156786 970494092 148200703 949250797 145137367 231188854 91682264 520332676 356844358 814233748 970205826 976447860 608901796 699431907 883662140 974558824 505171810 705410270 859345297 881285444 300272194 423033026 873177706 974422388 564644467 894955822 161901361 536360740 469372792 858639997 944128079 987509554 482203802 995774025 864650435 990996441 268161321 556490903 579399965 739247178 845898270 870296814 168052929 279789801 982814532 983601106 663221137 733591880 659092790 865796788 396138454 425645226 372668163 872511466 293755264 562577540 808642137 896462574 758081453 780855815 329509087 453067233 632075944 770524055 397147430 510012661 181819843 853863991 827567738 937482178 449808953 891414269 788473596 940170171 794707081 873433356 994093036 997610711 180155207 873921000 40731509 509910184 837159872 917664396 449051873 869166061 697567917 949575878 259927142 808835313 636189144 826313839 341211682 779609400 287052628 903456454 741573585 985781470 934848917 939833566 132664189 785826085 636929857 806370348 286965637 742096479 696464178 824032618 701467043 889022942 996639539 997992002 333564557 582399387 903251655 933959120 95179445 312784142 92992692 535826343 945003604 994004117 251277040 504551539 286680286 862182352 76709874 244702362 59290593 205100148 246599943 262179073 878834499 950508620 282636505 736286938 121685519 952045022 805783167 929967516 368688265 935464363 990818026 993214495 13477727 66103002 284658679 301682895 766292509 800249918 761454189 893676396 228990121 901918434 64200280 160170487 216039610 837861180 812858255 892010244 55642926 974452705 226263471 350369991 461835392 822639232 113186219 322587250 882162998 951559356 53035427 502085950 874566802 930297076 657683060 942859594 652783316 950786415 739259703 786785967 960040556 977594752 488680503 723388658 282550276 563570405 84065828 162240570 190951812 925578204 831889557 862756798 251515617 631297332 845961519 927874332 387408228 767081790 447951242 986124131 160385922 223912448 185660525 279235274 72080988 703372437 489822221 599714011 312899649 964973784 970789361 981175654 355366690 717637880 774284493 966554563 917425795 981904065 155483384 562128776 474672325 578763347 379373102 953145291 906576671 960529485 991333103 997960142 824432933 838413164 972729950 983481604 257468091 385920040 217199442 258341132 150979235 913835850 364415025 515696884 815726028 968676170 30269770 228581041 853272547 857354421 391544411 445683026 912403864 985003110 110038832 255846889 116760349 637770778 928429753 987182314 414323001 852900829 772575708 803701127 690036794 890647714 995738922 996695000 439096454 848906602 474607089 521154335 164349820 205501415 862009277 998586854 960593316 980569743 979804418 993021746 402329182 632032601 916882236 991449520 433907336 940174034 948400944 978546672 229369117 400370510 416586899 844050215 563742015 802363192 174494067 259940507 599275487 768191134 469841420 694033594 583753254 997738420 509091939 625501616 855928650 892391963 416188096 976810188 14982894 305558852 537144564 620504317 837391217 974963979 19730501 176165352 594348366 883640921 692570046 958524971 686769969 719581645 280366558 924271435 263589536 312625033 114593754 205808872 422179431 712978404 335986912 787024039 397126231 758052090 486062826 813466477 63553439 832999437 326522892 389577260 937471848 993005292 731582771 970766994 806333667 822706438 359426238 484964341 456491094 494330927 921691951 938968113 462579305 626593336 683817606 699666601 573501070 899002997 570302778 792026652 304565676 333031004 676270749 992472519 528269455 867471198 386669413 897477812 657441493 748157969 751116549 837492563 667991027 905900075 299619934 490677034 549397493 734807262 37280635 456657825 758572858 946562778 327752977 873433882 824491110 852188309 235454789 311271469 806792237 870362020 850180404 979163213 845383921 908474563 313505073 611832117 32440392 152908834 756151966 909809155 229248536 372994265 667976130 849372137 388722289 516768842 259138896 494167059 978884461 990406536 714493281 810707974 231910024 775114497 648262789 767166262 36165897 772710662 973716909 988157926 700960081 832860975 894646893 929708067 901187805 987629452 667142305 844969440 493137297 738431245 861402113 924749684 528337025 947060182 214097906 242763119 259478637 342674313 398037095 742295945 986988831 996349770 754835357 846937736 57935441 886530003 236789582 479804180 234491058 854801440 452024135 755282905 817943905 959578997 600401320 950886683 461216979 840785328 826905628 961822444 962208673 996190764 798874414 926451309 586398577 592250271 382862627 971356072 484829226 507999431 176214996 985330951 764862919 890852867 341063108 678672161 522221036 978335387 424989385 963509225 429843785 957382232 383555967 408489994 274889512 721188305 867957673 891560940 868432017 922980860 667628860 981660225 893452457 966208786 299086998 375926360 394035409 462905660 650010860 799969733 934992963 979626299 813007676 840829307 22456229 83360504 975777763 978557042 997657156 998018290 311881229 544571573 348133003 452214019 508895703 726950639 91137876 789389088 600062244 721898701 492533040 692688157 405140148 672854228 606535833 637865956 154384192 526053832 404314277 569606135 228059004 565192589 223382968 757904745 261328603 283721432 153628835 734626626 699985733 825520646 183850719 537950424 362379549 763172229 684488118 864227001 495779931 648079629 322835000 863224844 60910189 667018938 442899173 566271087 840216438 886864925 164494363 825860808 396104204 531644334 586088290 747934145 763305813 826588834 176125399 638918192 912523959 912967891 490646791 592382443 760127118 906183581 213009614 983586255 849832358 861231785 193401583 541951680 416954580 903964359 183206075 272765009 29766654 811528973 559987100 860384341 176847159 984820374 232236109 524979297 803976868 990998351 992814730 994898887 266142086 290067482 560055975 775335051 831927221 869187003 79926910 211441970 658219167 919432256 133311466 820698768 788758670 874241665 76293838 779050726 825997524 850750848 613045072 800556108 739281899 751637925 689638327 815336084 624458471 751151823 301658742 313101580 366593127 672661983 987832181 996088185 732565389 743721048 431749193 924482462 444594038 843031383 724854891 813626550 750660430 791072552 266359014 821183947 557789814 614446983 825145792 957364247 25952473 41608256 483391961 759082672 38791165 512366101 681306903 983993466 473332266 740297840 612818220 854125795 823694145 917010410 149567128 935243037 556313475 626029776 399010343 793412492 264880790 749296339 788463640 953867414 557923301 784340435 520574501 897021573 710769918 760186795 231380682 494262990 324736058 670371077 88268780 208993012 110033382 244318447 755450743 852550726 685155534 849344755 839708671 864409519 240623085 947698968 343406963 969997537 485750617 495044772 247774383 485025303 526101237 903888237 828855545 907317518 585737744 718111398 3458810 956562504 24236404 56828243 742646306 826272979 366982210 374876452 871425646 886191006 395658025 660697354 550948014 576042903 726736484 874065591 596114348 972348014 173581814 635477838 832694947 938799044 106912210 809294795 950562898 973321939 405727867 959554568 838481668 909139074 790078821 859802491 386276221 513957365 62170819 465285829 167582305 351527092 6613612 463220587 63003475 461689903 61764051 875592034 282736738 507502563 561697889 882742934 448021697 456515608 53339177 232992668 907880042 939397617 710946730 802793014 283241164 524676522 708750424 895991853 129605775 839715066 418458071 844914159 512934610 533286482 785045209 849734907 688117743 708719118 676930842 856972203 397689949 871114804 586563428 611689976 356782984 802256812 71815710 211753054 310444302 490988866 355009145 507103399 217524214 332572756 101775986 961277029 733506227 903911362 387377917 737965261 456423977 890489607 432075294 702144806 153164996 746941232 719449611 966431463 651410701 796459226 518866137 867303521 978855628 982617731 935208605 996675530 967463507 993076325 451659632 501253630 157092951 206657718 93793759 281653620 604355355 864117602 194959913 910462078 844373569 982091030 581320739 682852593 414979723 502661138 241166662 329209336 764514027 973455585 639916185 773102113 111100197 742561079 147004243 414845407 930711452 934542569 983880588 985826803 317254877 733062773 265800885 853670803 759148137 833915558 79334414 462423902 331930929 878822605 308952480 713314307 912391694 990498610 785717656 823433949 644741459 653615487 504310350 929039974 949654810 991174189 638458569 706654437 454007941 679326049 614961706 810324738 567053995 748625312 365797093 731267237 915611479 957224808 611952050 628248464 805559936 890245960 964074093 995883565 158712887 845163078 112190432 616131400 488353114 508143660 357924681 855019065 624822055 804222347 743770675 886539725 740689922 777591794 428057654 655082295 11087182 492832753 666324767 888790495 117297819 816168801 174599373 759777600 280379341 575108718 834060141 917048986 483393674 498775870 265474538 646686665 965905959 987899154 648049267 836058355 620595274 813565183 271454652 339604564 448160733 585835664 809237591 899417385 140265620 434590083 508432992 806975520 678256659 781240190 35503512 721913471 206817969 405880392 234887371 703782805 236018720 726391811 42070008 856467592 664608336 792045853 87518276 852091007 500464421 568327800 574197896 815999935 33332256 891839592 695235535 838878488 493288923 509538183 965263406 998919299 339684668 407276305 342921970 469928237 576341282 991335126 177049559 935556340 269750139 668212017 920619511 935788404 758021544 868477231 680278161 964226420 745940886 953341113 957831568 976535968 246892501 524522544 257523779 473835929 36018919 752849992 248606397 293024123 177772829 871022950 721427802 825289803 904680048 997300732 812969990 915941529 684557926 924616847 392204800 722928474 765697902 853616540 964224877 997666642 758030366 998374101 727313360 998755332 190530305 782892450 213626340 264350781 35176432 797262241 268589488 966297414 722468797 919982633 231016582 791874663 42610071 377804282 857712370 901332866 927260645 970331885 494249520 636931516 903874602 927333855 981515074 985926220 204248459 241362281 758405760 956054526 955560751 985180265 500528545 845012102 561488306 863208392 726388724 939751431 619263382 865340194 236802844 954492076 373610718 809839839 182494922 758519872 240807370 865301185 799327667 850006024 993157940 993982840 830821256 866327709 357808121 420277441 194187320 650951796 406726429 477723562 319922810 845422423 959977269 969371626 690089320 929326992 266964575 972678527 143161013 894668984 60030226 837764454 739866940 997040549 525069847 877311248 468576242 490677667 718482653 782917666 52205031 685619375 281176243 682566535 507170635 765485720 726214443 941795023 828642075 934802157 924454880 977217463 422444906 718644400 661988135 683088989 157822351 559531231 129880951 943467557 528467370 676785330 364560083 821014084 847855176 884524113 602822631 775129114 492473008 540639009 996337692 997233000 39345978 271718513 208665077 871083514 48458890 743254755 535700791 616942384 45635104 100611158 912373070 948571828 472538635 536293585 295083887 874221210 199250241 695619006 414158645 704554974 790678483 927195420 618657848 701254576 747460408 956225989 218043018 911849094 373767393 584391556 912664027 976133025 816639473 947699227 137309110 290530977 940046311 976327418 133753301 444809030 15324649 562962513 110400821 845073513 451717892 677275777 996575420 996915416 385790997 424692520 162599444 331461278 319704558 742788946 993911409 996325588 947313003 976550770 812485561 969952041 405443499 909085406 986992933 991023338 268747984 979365146 312400379 890960760 717131945 731627664 429137447 474389780 819341554 957245347 240996856 427172186 317640862 669041290 699683594 781149389 662675764 840471953 90880329 556715809 324123159 699324287 895804601 967817687 144098331 475532859 127896656 537905562 546104234 603469099 505042376 649547390 807852254 875428502 751737991 928004968 550958469 942670458 604831935 958625021 694516574 919849090 293611329 606292593 157938241 943478305 214892166 626618766 132022917 535248372 157447423 349024688 951957913 980538717 389550903 796012464 172581419 200852692 163384400 752526175 764112236 960265266 738608197 756154711 42832994 528557529 623069837 827867638 818324702 856577968 507883919 642920871 370622345 418989482 640392958 737542922 399766454 890850601 418605187 787624802 895060065 977675314 229337377 766155731 670626758 862447855 4537654 525829843 537223457 629728738 536892719 958191818 111456411 575794928 269846089 469969780 142435307 224708323 92218598 115451601 597086346 611110941 294043133 625604983 499478863 785870013 78214318 667429911 374044645 535963255 402253072 752777696 464870779 473293710 735226443 967456308 700591179 737851259 959049849 977764065 772624469 982579274 468907522 928656566 672726900 933988541 802459383 928612324 264730875 783914197 667314953 806354616 334353203 826413383 785219434 791374620 109843316 538432899 784824510 952318495 791325424 796542322 148882101 460417745 781057298 814356189 452526055 578063682 59969143 599111522 634450764 907333373 246362920 854178259 758593645 980441232 71906929 109755379 322848295 713456095 755441083 908562115 14766636 430512327 716902595 813114313 342880101 513553952 308641355 716361696 291787166 570179969 105739838 357981731 266933520 567365661 350417438 611526153 464866041 802522242 540979193 633758077 509801585 691472137 539702353 542050390 225985806 569164165 280270168 500634997 322743442 330848378 577573268 584770041 740686341 868706484 694497506 705760791 825935558 854793357 96034574 940568169 591506380 995271717 163029600 721851861 98462299 864988479 340867485 353975979 106568637 590015116 75207207 419819524 578286270 710455616 759919848 931772555 950766812 957015699 263816666 958901966 552484529 888890516 440857412 760679846 481732339 950540641 532979465 968331278 447222559 860355996 398816393 430549551 251486504 987382002 74528084 737325055 600465929 763238919 618159483 811110892 866467676 920204752 3275631 165397413 406764125 968482163 851163842 877316649 887811789 975355314 657038422 907296091 672329774 933106476 205170475 358696509 173241426 540648395 858251199 894597827 792220610 900564039 994103753 997973967 596344837 915797096 366049019 408965194 184764720 801683365 87131659 137729396 484469754 513280394 356506552 916809705 687217845 836432144 728057328 941781340 475185274 963483683 3804104 556775857 13833785 889864045 496894222 872152713 388094957 526117295 447488741 886380358 841163826 970700082 818546285 901377017 48472437 531675052 847936938 857386932 662947158 910818901 844282295 927600091 402562938 950450922 928311785 957960587 579584618 740200747 57511181 493109518 252795540 861788821 843346700 994284814 757524929 896700938 207652594 316610372 723614418 815287096 856572277 997523543 289364519 678805014 457933935 583134189 426502196 631599510 62468736 591022825 404626241 489940266 464583838 878867971 197249412 476540228 706588356 895717202 354660426 718886402 486654420 614056832 791707150 897098809 515548082 685856373 991929987 999252741 611716729 836513022 726890619 736383424 244364544 253088361 433515914 800888201 978527671 987040092 507307591 554642728 771789280 945725736 441539985 489281136 952968854 968484174 835061347 954707676 631058030 951881495 687106587 778061572 10253824 666759347 185565728 594446928 24280901 252704647 404537071 795807952 666315214 907403956 40276984 56348012 773911110 805473969 563703710 849848750 130275007 515454200 748761437 905596529 81346232 783987837 458300195 640188249 200894720 748562337 517977645 631395253 581418754 657268212 129371936 216115708 262780925 808244268 465684160 801698016 472181365 586306509 684492207 781525196 439863585 867069043 744906332 912072689 180402198 235336246 615904901 935277360 404266440 819603198 313406725 318744234 762781275 976786959 205889957 215112027 710853806 801567960 8979037 827616070 539071670 954191594 144786997 796454688 158553303 875848791 894085451 928758964 760463585 819889970 982796274 993869765 634658135 669000793 87737566 808677324 901307838 986011031 814151675 997290541 400359939 478628939 102064894 853460270 81979569 374078919 646613168 780120515 196659474 490176768 793683241 840864281 201057197 692026370 568278906 748817018 822029759 964760909 90955739 407999505 984520284 998738867 561356834 926601540 574795279 708281006 98333903 741786868 885607405 946373453 632996270 891388086 20749629 162388160 706325216 737947899 642196087 973934801 705065113 917852802 146672137 227123794 559651400 747749826 788377812 881152998 15203490 138180135 972410678 975721607 171259046 569786122 37627883 303459546 696979237 797433515 288267055 327594361 723498288 737103037 77418844 506277542 137950425 758984001 327044690 802469100 639255683 910296153 220988229 554134164 810578975 964067109 201339994 811897570 204564130 795361057 375325970 486714922 968241334 998604347 207277781 998256220 172117584 917541758 187327301 525471562 886334484 928309740 166008140 864661623 932336091 965693249 879391995 910754508 130490151 381913862 134635746 234240557 274317612 487757105 476587071 814313942 491524638 577684297 565477920 598571856 358965138 908241974 53275427 146927370 270006530 837582217 578210717 864132199 107971290 337468249 579855536 981037845 606693332 831374676 113303038 425877378 934401390 991948550 344675347 372076404 437312725 974906267 74494198 130984447 951302719 953771519 885279856 982007822 517994990 727984525 713891503 740987079 576103349 795802705 703592380 975609860 723760949 837375684 921533797 976165770 539003468 681231173 598328417 715142480 451839252 884133080 562030992 871453798 81535647 543598486 40933278 852788638 5292688 826657432 69391039 713967146 129969729 997615620 839445229 980228097 514261557 773901410 554880453 803014177 546637672 657367702 820894599 836531316 774231100 939171079 171752258 560672983 249504141 852766685 735329939 760055462 684936268 996928259 13811035 618025197 217319483 331282033 89562657 119727700 896538783 909265886 979457095 998879649 1073239 621478528 168875928 608019100 594069847 820684788 565407788 841530504 689991008 723795416 665319501 703861736 771410186 780896711 951900615 954221259 415695607 735561958 426490690 757177852 273704421 406976614 213649161 915764332 35376582 185950893 679837324 853193065 356493128 704276823 894764378 920993598 281406169 855516186 505504688 812463045 87057713 434888568 416664277 423936010 396000993 505559804 943075603 988449233 12978654 132511155 386780890 993743040 491769494 746930607 826409705 831950511 571705174 678342509 684101714 923187591 716189620 721726570 839991564 996188786 103301345 616041285 90860469 949942923 391546886 592473848 987678299 990925472 34579369 109569484 608029585 764916221 122025253 177186842 207183223 394219924 273649137 427071562 159275438 527627235 3424384 731045394 445661148 774003172 730356426 934433219 260147947 270266694 372182032 993710500 456037595 710923908 189281553 567659246 198784659 855189638 835993515 898269839 928331788 949488032 251667334 485156663 627956921 655550904 102539369 531476805 739179894 775235105 564148841 704981241 732248357 775866923 483121330 974821737 985246685 998120975 907014800 918018189 195685408 311192690 278998351 884249181 542808876 576073795 937236996 962735752 850005888 922019200 78172681 420005537 733317042 897159291 86689412 376977637 605592358 739449850 481733636 504691999 771625070 819920440 57956839 413007670 848126504 946975623 794396523 866331981 348320919 381343682 830853861 839377774 385063883 735295993 348320450 651530942 418826205 764474002 683913335 774415658 855194247 916229668 536592935 918642975 970117312 973197547 485679793 493336698 196855704 414695124 755839767 832623730 820444909 944731473 985146965 992683078 374143302 746665099 689931317 746907643 814288020 884952231 618432074 620738498 679916426 705343432 418696101 664471962 866151129 979891284 94554958 544960058 497767876 587805841 275042874 402022283 169599947 444462181 887508317 935786355 693377823 708838974 308099433 428282774 47513026 649719602 559747232 988485124 71160570 525119667 179141178 806071070 898746871 965597738 652025223 698260660 700175648 841346895 559927896 928361455 853135258 934807123 674742432 717386685 360097176 512335612 74155967 446255164 367407896 880688695 924731078 981313968 231494797 992787636 541998116 655481273 396113219 684365970 166795956 720800297 739200642 746461103 656166209 974377381 981663098 990817756 639676927 759944581 154323832 364059606 124491580 451338081 40842902 362863591 86990285 845829518 21051453 458631373 254206573 854748960 534155131 854344882 907012330 946618168 497268796 792610656 991758122 997783499 530187973 908350624 948158933 991313170 373631516 598848174 474262497 484217454 704735556 918195443 281281367 888348895 661791804 759038316 742360666 816756828 863108595 985370325 937359198 970537416 611912046 645148599 837347030 841097040 561688364 568458782 471506061 991818227 449005195 684236904 940176895 967483185 119032505 885038142 140453111 996526207 936081743 985859540 435147460 750524401 345733348 735546259 994066069 994922241 773841963 823741940 584617338 785189743 933490370 937224540 671498354 679835160 766629028 918471992 456778356 571359749 981521519 987094807 929535650 939750915 628051703 660212729 798326530 812205054 226422752 524720563 733847791 863813580 683053505 967193848 299541848 794470146 6027100 795003455 965120164 994168700 898242527 961968639 570029953 570894558 124565548 375381414 457124798 809639933 535474087 915602121 635347717 657526999 127762601 314487495 672047629 782203363 820645135 896512444 728845258 949288819 868819523 933058373 687816074 737057871 112668677 135879697 921639267 933357327 497402581 953576852 959493723 976186375 74502754 659055651 898061183 958478179 758644051 986611858 913988755 928857360 589019914 923285943 933014451 987520167 801556589 911261040 586203613 692541141 585971629 888174820 305599957 432094661 49797465 969858921 506947571 751109434 237250710 930910763 504749248 945659789 499843117 992885269 434580024 842462607 619463521 937769653 601245151 685901059 981315614 995605034 489457050 791209892 379398394 477967319 955907082 997898701 912145970 954977606 23314067 458362235 155129760 994912634 440464163 995684506 125257976 362363057 12027941 318004071 965274467 978367531 291966968 891644933 777814058 897403237 968945613 978724817 697957821 769760668 246612898 381972768 93646608 639511744 737386562 987455026 900777149 926105475 217635882 524945193 185447327 870738967 463878489 516080674 434782747 594133744 121958572 495288201 213532038 805283389 273466046 281578960 185073946 274251262 102839231 975122532 435140866 625201917 30162718 611980275 92133900 752949685 735701557 893844382 614501012 655849157 526687794 540387975 42902585 846575559 387860658 663991082 751858347 873725186 481107361 527185304 21211909 907097911 931541267 936827606 932507502 999179712 964103475 968982079 283749839 986180446 806436182 839339925 828753377 848739050 540387531 951736394 22027027 31211329 911096295 946114939 84572344 380740742 530060859 942564990 828171965 871534238 518113389 824898099 299188154 738515226 741454419 761771417 216531852 422677837 188073749 278144218 779847756 855459766 407616611 754084635 718347301 732866452 394443906 912213017 531366092 705608905 85806905 725588456 591287932 863747934 548301498 648547023 827709629 884222093 751111234 838367354 144925627 876728665 584234220 982440129 165987866 529021758 253052184 930849791 361767137 990338109 936184103 987845074 140034958 496905207 964750789 981018959 948672392 984663187 786411214 931319245 133994748 668104332 672330835 819624762 212404211 574090712 391386496 564373188 717246209 788345415 138597164 576665674 940141087 957703629 502312905 831310386 942506037 962267533 760278774 974735439 235740224 967242273 983718719 985664800 654462043 669482050 610869324 849279829 468687926 721592395 698286792 800517728 788771336 828590291 296266536 804775910 54059038 533395489 275629053 619094357 681218357 763900443 274380996 860015878 916026924 950055357 735058347 962894455 462899815 826222341 144779947 847132058 864559033 950725941 94271817 855705548 983249468 993975317 554504575 632441917 471702377 966117259 993877794 998773196 600494837 761822617 392896278 979250159 673631919 779569527 339070460 902793236 321391834 520834011 55629406 849839598 843845374 892494166 212580152 972651136 159765349 726375519 211536487 824247612 271808632 615176762 92160404 796698999 3617492 591750651 152437180 577370933 686571291 807261917 776762571 916009580 75675388 113727363 96278596 275003450 639994097 964331282 793147988 961772150 639293379 985624849 531066826 693662250 936242616 991612554 305935214 959844231 784375158 849934229 711882214 977983990 144473117 600717113 375560912 686308578 340443357 792148446 830906768 911340300 59881790 133404498 392618511 668261696 93953972 968623601 687931700 935325896 647283512 920330246 272901054 882760659 20955312 110829578 247160746 671612529 30552537 247474593 943360848 943648078 437611359 815564537 440641320 734773552 97018887 163283702 713727424 890307662 85362706 200090980 581508751 856924495 649155773 877388850 677958239 708813536 781526061 932774441 41838918 834999852 286612564 336745816 48720957 900043160 709804213 997880263 73458858 963149972 881198468 941591115 61418814 412525775 943321868 980183849 674394707 871587417 473244827 980525665 280469090 340085445 247248355 927719412 500608721 520367040 785841109 959861805 333403514 432920298 985803888 993189840 17386331 146081175 137308619 171052715 443249793 662885127 90211513 305159828 398564540 612151527 406890152 671711520 551195195 967897867 961277627 987808196 10375146 389885178 422749983 757788647 861004325 893257188 48262074 338907114 225878624 252934218 576717026 946037445 684018323 826624732 376873041 445357532 316821042 608844246 642921391 810588913 497900018 716513973 102079110 625489943 103046915 275045498 115487540 740798680 937044321 972364314 438206030 795089762 326366276 965555207 387863980 620866185 184990022 603134134 386874385 593573734 574208590 840652177 546160505 699334763 450257878 964890336 65828645 879457668 482288684 702988868 436475772 518221673 802785650 939513904 820560591 837713418 581728327 924147172 420417664 618925920 685168112 989577693 33944864 362479851 922277896 970745641 848424856 914786111 159837434 889573826 199431226 846423370 659304993 719352276 749536370 940700168 109155739 832309578 447975680 679538207 120412323 439916972 610694634 969559565 464210927 695042018 162408236 632677030 52126022 682494539 910649542 989051262 242895358 457040361 544948956 883154970 586086220 973273372 269900724 852735323 597814481 897135326 818580111 846988176 655105463 730233599 999298669 999354358 42553073 55544103 204929690 364619193 265792426 902553912 518417998 805574594 215772388 256762406 195903810 265188226 413710652 569439784 138358435 416895900 763010266 780640777 730958501 800323967 948098177 974256062 445128125 588006637 688661235 832482208 674507604 880076342 770235524 856426211 872016575 903495667 593948212 863829282 630014293 877723897 707127552 922004653 99734181 506198609 178414138 337270177 816859771 919269099 507506128 799622532 237211686 258323900 889503148 927390419 802312178 993850864 212590796 529059059 55517887 600992760 783554442 823236076 6879206 669741070 175763514 542662168 546801416 886413491 848071517 881082046 958414550 959554579 15543233 729430161 909716371 977526755 913681722 966438374 194827524 357289966 38291575 635803562 762539123 855908832 564654302 984754773 655945684 700757048 171793833 547053457 87215679 468551163 968957791 980934790 92731198 979870173 374391191 671387405 902764654 948736147 535303408 892892770 956188164 984755284 230730330 818419821 631621438 786719743 434571278 924018581 518574791 766188925 499789073 706162779 947940123 959712242 406416199 979542359 219762544 657770695 482451457 523220989 649734479 824261921 391274032 992425599 620019845 782843423 252265162 523835040 987623536 992934760 604959136 917718811 936473760 988313196 408494031 567591499 894836725 925408447 434638133 734153330 812509358 994332076 818306543 914616616 959395431 999098969 189272786 947223303 511674503 868104454 741540818 988894573 365787585 370414850 392064207 880986120 745137579 996924692 653566360 764983661 300295358 773778305 921134347 989176897 241759608 408022732 3428257 449913832 674108632 716113796 30284602 763488556 822699695 884975030 493520421 703490375 967080846 987035596 737635810 969918435 123948713 289965818 547876292 975241536 134468795 433300618 267073757 546453878 828010740 840026997 203661413 219055769 639703057 675357529 792652219 831014111 810162285 843300591 421003106 599916863 111224505 758183404 930281601 932493125 71553409 450671062 816761942 863359974 141160817 897013271 466050749 900541077 365054056 767872993 152772937 679062466 452235580 957509295 413827614 572815451 343976098 506246650 953001487 967756546 705265535 843451212 357668692 661731007 410959565 429406782 608774592 728899272 888296007 996365880 967862811 994819330 647654592 882509950 481225403 496363837 187226380 779285635 128717586 380329711 244720944 872222960 907708505 936939690 270761327 418324476 245329569 911794688 510931615 589744922 188203906 575683917 499064869 957825316 255265775 853506905 815932744 938193955 832265475 981217968 273968455 630097496 440562056 546204577 149387923 209229713 887603832 988749135 884726867 940370119 58943516 79957594 202628497 789923284 323030289 423899388 769132115 816068721 686726669 766928973 342070330 760377343 932044228 998769663 588922558 711177596 308418488 684055696 162560000 628664207 163786192 571513086 620098346 705551591 896606706 909009497 516576125 612711270 789657977 928507501 579685786 912117417 379859932 611716328 708922684 894493265 671353208 854720274 172030815 964415030 91188589 407610513 903166864 906105081 607145149 839931152 925321263 926139997 182855180 593433630 652640395 693661483 463912853 617130883 786040044 917501513 751889055 925289440 134634901 479279129 975444077 983941486 85245644 596759120 857977775 921512894 780269267 864751156 509073812 976015973 165409741 655825068 384380887 793395175 159931984 451697962 526736280 911254495 640455149 742178259 54375479 740908239 532597351 663891027 221224783 625449020 14404755 231525918 299936585 726559480 594942983 634308520 947875020 994753498 482818259 939164990 297524418 463904014 979892071 986251600 712981194 890103255 413036716 705218267 810026422 939086487 906297235 978030537 35484191 581042122 48130950 917349046 154223247 232677292 555006183 794185493 840986418 941813565 179589810 593955252 22045535 494740282 903691333 982239988 356582208 782413621 451339038 700547186 649889867 854097897 677633821 924388194 615513900 995795384 488939427 741582189 793645078 875682144 816101031 931657895 48021856 692016471 421195134 817126689 872526221 894400805 531993832 653991790 802758552 874410728 965579488 998794801 96034728 741993489 119998416 258406537 297258121 775574817 233277077 885481579 294454954 758625725 369729113 776886957 662863311 912173039 861285928 959017475 589777442 758956484 895461897 956351171 149613632 333442838 990121879 994363706 95772329 343387755 559789171 863267284 228729529 655739428 763053016 988129417 46288373 769131754 85924507 815757660 492050494 942698728 738705372 814390149 45607867 620875914 973416362 994873059 943970414 961027473 172364925 498429861 529275059 798985464 977669406 983358072 197959060 776936165 266896441 319128128 676304 257396930 417953814 709823221 814312422 899925760 42586506 754126073 950203523 952246109 986940426 991926172 824684669 886989491 194418833 592388416 944455621 946931690 641784209 742429094 830438528 924654028 815642829 983991414 847217635 848651640 327848824 825561495 122320337 896753755 33557744 35141394 686566148 860999808 927217125 949161242 147697469 702294448 730985155 824953623 719297008 809955879 949644805 987804221 248926957 691356191 716648089 840394961 605807030 856744351 522811065 860584013 348736956 352350388 545476301 583183739 459061782 948818738 447500945 638101048 383915247 746933273 878702012 971342442 486341943 876339823 416746970 738619186 968952354 987770514 915663645 951489168 33541797 463933431 403604975 469570781 383362349 783999720 419466653 588292642 279740518 598658712 315983850 700988236 579905702 790927697 950625085 964923002 948127630 987802767 811003254 943108763 292172016 799893125 57350217 184797556 912270213 959108772 819937957 888382801 470118115 660643159 245393973 458889131 144774186 207496262 817124420 973165240 726813049 760259475 129516528 672123275 826702156 928603914 941893518 972695631 872580529 982271192 7805458 603774789 433625184 609706652 31062191 160177395 788179888 899334009 378936222 429742347 650346616 659153947 245594568 358802441 742648831 952286800 536181737 545043564 330156351 933883558 85924955 372325642 622762264 868760924 121905918 787461707 637697592 853886877 240055070 582340118 584825472 648836655 668258281 770562284 572712556 767767479 24652469 854965798 241780987 864100176 218015809 570731006 579460605 981558322 857685543 859886649 849369869 917461636 938626510 947999030 491125867 898007052 704581569 901314029 152777448 595284742 953430910 981160849 54222607 919027330 534260367 632433466 464908406 593518980 245517452 379518525 494420794 621121413 137039191 777025769 264543086 340705197 341316182 388584100 92286214 658103091 206921020 539490085 819556256 908470813 124288850 176245684 747896524 846972339 697649194 902094922 889325270 955094963 185959476 713416163 439580061 491236838 329608213 824920726 731213718 881512078 242101189 762322015 864484220 905756840 948883544 978060274 388096682 798363604 976856899 977251287 529582992 685921257 90281255 344021703 480721269 535494353 405751977 674620214 273878330 943316784 600166449 864135926 740552088 955475983 91473630 545434365 573665531 618828148 752205825 818006888 928146647 947900852 230441898 971967295 436996983 687369861 53139003 523958409 968485466 994344044 961939560 977173953 57905475 517312235 200418067 517349646 74522503 322259617 190936489 834582082 93097286 512521360 258915304 549656759 917864701 983678548 411115866 577194709 95296235 444356206 718085032 840583497 216579174 881966968 175962229 547888897 615387604 847045122 542591699 947415719 560221714 767164320 416907071 652639325 83326148 874944915 767240313 776105173 369129788 481203635 763876450 941577497 390226996 682116914 538642492 696586367 136620813 353836888 779458925 836274311 531747096 908125637 192914409 442747643 196275599 788602035 399893337 769647458 450033415 693549702 134313837 853432779 512707030 870381875 675445059 872859403 661644409 804413062 130670799 899748417 441026795 731208029 683150695 693724229 373530089 653926755 234110859 963181669 564806441 902319272 806814466 813834890 969515250 973550556 269677396 742523564 497167285 974245599 797148300 812572900 950233369 954616124 399291024 982016633 413589241 455091805 243842759 316596745 350200337 684364844 943982825 970496189 808582733 840973623 506389586 551166720 476936681 681498900 685401912 813639419 957724383 994702864 619779619 760160932 743706699 912862612 892334547 961922444 439961841 518012611 611341561 919640595 425063669 515317285 885282713 896836703 186388928 776803389 505823920 729729839 130845078 405018899 945084121 953180209 112833248 834679381 594622523 635320545 684300608 902853369 916017026 928932591 763992640 939221330 79663494 772850538 293143154 619127113 686363796 908421537 937471520 955861464 785034654 812774784 27857259 794449959 202601687 743080369 615501725 822387648 437207244 884016630 624697488 630171707 854538817 929759851 158201637 837564354 592396961 617672341 97282995 407443191 741236251 927766778 824334087 949049864 619502368 870147941 11585077 267430885 499965161 550514691 161280077 502776144 595254 709699077 966632361 979932617 182100003 547297126 114177392 662271054 185453097 491623293 784648974 867925645 858312515 875541826 394918501 627450556 976650428 982518611 345305230 843570091 925609653 947470385 943475475 946643007 258189420 597690266 861598873 997714227 409909119 746690789 158610881 295057166 817293962 972129231 130110207 410043272 481725684 795755040 467872505 492501338 719111116 816137456 247911192 643434026 36040519 481865664 876017844 915016131 751027830 903283331 219367980 235489429 722456256 823263852 83327650 914999005 485308927 652937613 15387446 138893536 36511534 463606001 23718742 776861658 579172028 672822741 237746131 298923232 23917834 335363810 287070658 599325577 564769610 988700357 905294872 914072365 205530467 851714092 14732436 994411375 165258714 785619082 252751907 429003061 839930479 957127031 776644582 987937379 702018732 997185776 160200288 172858044 872330985 967133763 435069190 799481375 267159288 646134760 447919693 933341278 780257342 864614029 160264064 241298882 150670538 949856431 75292455 954747428 200711922 768440797 929698503 959046905 882644240 917101376 94218834 842442824 682772068 845390291 670997764 768182958 57681831 559426476 996793021 998320898 813708756 995102458 833869085 986499205 797546327 846556591 846581390 954037795 275075574 546819681 143713575 234307029 665655242 997748167 374008203 913062631 842439569 857061540 245285666 311749655 835378683 870935290 334532693 610805727 501631635 986898699 146148800 935274012 911526274 957552154 377181071 488989882 410274971 596372920 482106596 755472387 437118771 650313674 828625615 852869352 474751416 919543652 810876493 962146718 434699711 770530921 25261056 782280345 228434814 672804565 706918451 847582930 420621035 913768160 764020790 765879733 312992989 859202679 334754215 606449162 961256028 979233864 884812331 925442086 293308198 854901755 692146476 924967279 923822205 939507079 236884019 817253257 630354732 793432741 134547369 466457601 914006501 995524079 509128142 919707933 607385036 827077657 90206043 317413691 785655701 839971916 510153993 860428981 855049862 866903536 115290216 952308179 67404752 841635554 802607071 838684442 98559164 579938270 689065004 804575477 867685545 913263232 445766377 477619846 896176017 932248469 534494624 969391211 248565549 323744142 757732250 937190874 87428111 865896134 716336821 760950710 414793406 694203216 51199891 136622317 419700732 540421932 942050341 947888858 381517878 705347253 623819861 866447332 813592001 962008369 864386817 978367158 890678706 910160853 452328627 676312277 270047664 445938950 317167362 963006872 694749392 702378501 669909734 830225984 976979403 979662652 712345923 826752616 45653249 800916151 14040876 481133618 40573090 742921189 43927778 353578343 598564278 663894720 887009140 944869782 109812408 363845860 490643454 794419137 981208288 998708856 654985589 869515700 492350548 995449059 930238833 944726293 740999270 757083372 617985574 758358921 602841022 817416601 265429085 316693647 188425094 744023291 121039925 689117541 919101816 956581383 767077558 809415654 575430542 970061129 919210115 992112779 981896220 985556082 339766478 742915363 390886553 704997537 484504253 641112227 786727804 892284934 674548461 889964653 97388371 271278762 974251149 981495769 637702024 728613011 459945931 656014342 452146420 534530840 656766466 866525199 989885958 996907684 202010275 592211142 241270709 399629663 409918899 801641395 265346061 453416534 138630567 675336447 222617984 459216680 111230049 334117993 382751593 814396564 751037582 751841668 211496685 849726871 627446681 913082714 348526804 573950287 477121583 787356470 719880340 978238320 61475146 697518962 760793123 883754833 757595236 904907974 83566601 355513841 280638910 924004466 210521105 903422127 46504981 155560745 677867864 834773337 905670713 972051721 520759927 537471347 263755119 294414793 594524091 910224704 643020441 743301590 707588577 726978950 285911527 507027932 6310898 26310690 810792002 967504925 474819466 870268587 91439493 145583364 88799703 408001782 364953747 854978193 693953315 838031195 797344701 892921434 641508653 713623408 178085043 471873200 332829319 897192212 937837787 955782071 465071012 582710136 290978044 503567958 328954567 588242631 928304714 972118022 628295988 930656060 628810224 763627034 521915758 738314497 993964670 996866202 901046247 919127627 867669893 943951580 20946412 797546818 680308514 897775214 657723500 661978260 479838392 639838399 147552440 676321213 955926683 999044823 203283143 405467035 954057965 972759347 648811902 708935312 791952734 958762367 768453355 777874140 283882569 629328171 610361149 879325502 538224153 845421671 540907494 758300653 882353706 898612355 9115720 327788660 312929274 616967216 134014461 230873428 659061599 931674904 7518184 368407739 576602186 762653557 865444024 910366387 795854174 851353732 885157405 964112599 254989387 802164816 706920811 731897657 611426343 661787244 40044336 530839629 833452899 844472116 892783719 996428269 623806658 975975653 747161209 750256333 815686254 926575607 90139323 593257714 614249269 621424824 404648611 905499164 429755891 499328464 105954984 111596405 423039021 883038528 183795243 842100420 354649939 950434868 396049063 614500316 872320716 921749915 588677615 593541487 958732687 961206752 496559079 728474039 988936815 989926963 77829368 98415875 500215490 813609453 148012836 565591105 2586154 358314045 408153228 658596111 355794199 843924793 804687046 956526863 355224891 447443151 510239913 706905587 553708102 686503652 633844899 810476953 444550905 502979396 660094846 927541042 129488998 186137598 541090516 666358632 52959045 162562095 822456942 975845151 112389627 449466805 654256234 870346687 878592708 983957236 704356560 808932606 569221698 786278866 97379213 246156337 339542208 823479530 420825465 740703146 905151040 915157025 529003535 757758157 687885673 995029074 628824283 644876196 633481679 658212443 845352620 949694775 665394574 912170088 627175127 945349266 774555397 880569718 321604956 488759996 341302197 487791668 261978682 545342330 258273510 489680456 911429338 966035469 18829160 298675920 981545557 995678836 336267745 938925532 978314411 987517416 588810848 597747532 786696335 868000966 86420897 352316242 308274674 448427074 161177046 278601904 850355451 874008018 334327869 612497935 123937992 425938892 479647114 899106962 102433425 604969983 961410030 970043531 68484512 207834337 345262916 906312325 880350967 957125003 718494653 902730000 615632277 679347056 294355264 961122842 931494445 963551029 2800218 488784419 406389070 759702230 835197191 985935581 970743236 992117256 902726761 971186506 85683159 594649316 123123074 567567367 614228952 868690698 878093150 921737051 692091664 977244526 326557016 815930457 925087256 973873017 861310212 892769781 94728807 972674989 787572488 837025933 202199458 479384929 119505307 676189032 892158403 982873213 538721410 729438822 290583837 630026751 77667060 953823591 467815659 769352543 457173696 459094658 84740838 859676045 845494499 863660999 240534542 333001857 472215525 538912100 899725078 924661932 545462259 936812167 204639106 287135715 712037976 978252190 774818798 988593884 654234826 982148193 364298106 895616980 18663180 427175178 668112246 741678188 688892056 970510092 483343038 766426380 671207455 778083450 79393538 834317293 303220892 714948706 695127348 775348891 710255100 934704174 307970105 513172294 375849606 907671278 772392737 947150987 444002996 677420572 205264212 865950211 68168304 284642146 163140470 570619806 482772503 648445684 565643326 777806483 727865977 813427350 541498761 802706786 748901360 862659020 955418749 998369247 544177015 664551040 897093344 898047057 737569556 762414599 457439219 528317252 946691296 951022513 955936492 995725523 689978179 766791817 747032474 770757302 900038057 948403972 388982463 814442922 542172838 633280387 909578906 951369059 876615008 933524559 201357172 483327129 615637931 673517604 542301761 839338280 847168898 959905948 335886944 566343812 50901790 924031485 172179002 209673084 604087382 982920555 696873857 740245565 862696837 899216874 340665581 570859814 233195744 534422974 404020941 495419054 468404201 526647154 944464046 955059292 606325593 798419654 410732081 459701073 465566562 925076941 113217700 272348788 413904777 716877768 935455356 977154741 332571970 366998044 515712533 580259771 177938190 559691266 691124032 938590163 744676142 783483238 100759311 810146183 676309331 818441627 515062046 920933650 497334325 571959404 677577401 956828735 111795680 876572193 430489818 895626803 807329706 832082705 300663539 531454884 907621292 988272080 433964863 674697273 28112270 443897512 766864661 939238894 81827481 482548303 658877789 727196774 482248572 630923891 46289282 87231221 473734153 744670332 825597551 933013759 538479472 859202166 647573669 794918869 345187024 892780208 808081969 991924807 343428263 530484305 926714622 970587097 429424212 585275158 559715059 758138134 503663391 566690833 350218000 353149977 165230287 758818788 648962810 888465379 656371617 963177932 884189181 987040187 598637744 802619996 175920893 279786690 810199457 866828636 320626016 700470733 307928327 980857073 773941034 922013892 924868750 994276625 575495837 925718836 721016116 842736406 796048929 939196038 858505263 939912099 260719456 651403436 832174355 968109068 615780575 812618623 660385134 708663494 62079586 848506016 875341328 919871719 617338367 865371198 253967442 356985897 897278093 948032141 647753403 926825241 166430333 392787216 462985925 627726318 833133121 874063892 847905989 938713423 254849874 998065899 177514195 476177346 480035955 560947369 640799111 819483640 798922375 991580438 870089901 933969835 638126970 730655039 98949941 426476887 832621264 864140195 231736995 721850022 944403802 950931588 181665644 539964159 147827306 155865583 747609299 820863096 51986051 233250135 186659687 980508537 183740037 244277172 460411725 755992313 942066444 971593366 415385163 486652760 62211827 572639390 774039679 956197425 571229285 939219354 1163914 226065782 752179059 950469976 214739720 576118111 289926705 780576194 282253083 297407472 229300034 774855715 536786096 762669965 639296026 908504100 33968435 350946700 836570927 984131539 746918084 980126965 914553505 921988670 127738753 289543600 795050259 899052003 925432777 978343764 39498360 887265793 263037163 270627155 735115183 874079950 580607017 762959280 852249657 995339038 946410233 966198587 211689253 781232241 564235733 786839562 112432851 795893952 597020209 932253915 95923191 756043346 805493456 917061502 646807254 678785171 489580749 877386629 47045872 244725440 890328904 984391991 712805640 716538782 649417251 835514829 950477929 960277735 806464402 961600127 581932406 917898531 718871760 970214069 412979745 696506998 120898935 168046055 752627527 942266739 192613104 786491653 397258962 979522596 219389168 355141441 391943555 940342394 966361778 985696835 738924406 973942292 369815115 795280109 131497723 407921936 371659028 904164327 430585308 807524384 225094738 834516896 407773861 823694041 527372812 980183284 312425596 660684973 594342302 791284448 234425342 670297206 524738324 945009631 773078079 960173246 414402179 823726727 949950095 984577563 493396267 895743568 89886324 152437124 397978104 719659089 144710196 949386936 87297763 732745310 264307068 931518067 6046191 464082172 670099461 983657969 689666186 890274724 83338498 663959752 484069039 738033114 629979650 810199796 888720004 952539562 789185914 890970634 963770648 965785491 651528018 839949202 118861987 440251412 851081688 994607895 544069434 677943741 916008570 994337198 298951796 372469938 209236490 972189885 979713830 994953562 528194463 957404669 969934917 977443378 418378255 817947740 453393398 525937882 116895006 881667211 888022120 922268860 821479170 832431690 955502398 998207513 636785976 742995761 273829401 789944680 597295375 629785314 528177379 934771018 361104337 908779267 318570752 614469981 647325718 706197705 150809216 327051016 818930515 867733089 620776877 837908359 718925423 789674796 233921063 235759803 916774127 934536880 918943078 968983007 415860971 603151353 533410961 594994067 462790880 742864610 793243499 956801859 870598761 913983628 463534091 826579085 521706132 948682923 67138137 857660449 527829432 933774123 627165298 748836532 193120043 240432841 817879682 919106043 868526418 931928348 836374981 969631620 734173293 752994321 757005495 995295077 138663929 379214246 708001728 974794134 743582046 748028106 546284432 685020184 161219081 679856066 947449888 980378823 871164324 936825644 133792933 873017241 521729447 975818298 772476352 928939574 647479378 916358047 209653207 969867398 303491102 310021548 85859246 318339107 251601248 765662392 901253689 955448345 429645672 635174099 339574229 674587948 177387220 479790318 748492814 833735851 990514616 995902275 619053949 642072872 208951899 541456534 998420506 998849462 11202791 35600799 804426385 986265771 676725910 893693498 130784657 995297561 864669537 970509683 384162999 964182947 851572726 958127543 8663957 886996168 400672409 917674935 669303190 867012328 967388608 987156200 583782959 818898563 521043520 759760672 447179829 904768105 976672135 984524083 366447079 816171558 79782781 600357583 714119629 900444679 503419262 996719902 465877146 996235502 141141155 244433477 767686506 986223525 767692938 889781254 661229411 710044200 100534276 479570454 196278467 701520517 556413133 719308420 273053993 972802897 344873382 829990784 135455147 338278277 358227198 547832667 389358568 871880940 581889721 603982702 994219513 999343374 312537737 950246301 591111595 751550296 747272260 983786707 650234652 761906295 145612897 540333687 877921760 958685129 601296117 841807220 475222189 751411107 207182551 279873683 541269005 896096274 291922326 767353943 816973219 823941874 449686820 467864363 51421364 271919986 167147413 609560888 17726126 463096043 831133976 891968092 437799117 737976621 80554450 637916653 344976976 785241620 761760149 803551905 603020689 885745920 535028556 994308355 239280001 616443601 230368994 845455594 560899842 727156345 824804944 986795277 738089393 763961268 940877911 966432007 683969892 842753667 730894547 946117826 100558885 957639825 823040245 886241723 608067863 736230718 328195898 922921461 54382512 999297493 625735794 758452741 58323097 982532321 40025811 386621455 617293791 696689476 35931887 313292513 394013080 844077147 539691095 621539617 487509500 960506463 786318773 874690397 218453608 295969135 702803907 903664333 652414380 667844623 975987692 976859533 971971851 979218234 211295497 307845781 776609064 918835693 195457777 374242131 424773868 587815493 310971062 708387263 830790636 846265542 771335567 914201341 720968096 878002429 550305929 932877503 19068252 288510804 269583510 710473645 45325292 505021911 856946605 931617989 553267717 654231476 453558973 500234751 885739965 887037297 259765509 338906565 104999733 113618086 528164760 621047026 424369362 756805329 329259716 796907780 680099431 788770160 693017450 961170730 52600730 418085014 148934228 226475042 615791797 740998768 342528870 744533669 593232882 741630457 846986033 997632734 103989752 573896456 588574448 909490570 711027646 890983869 611606283 996862709 122252697 192097783 687224201 981288862 188068856 267708485 873916016 980325690 411278949 798135811 304119485 511539806 220287608 851789610 455441646 915158912 957858170 981468622 535755673 731798295 466389982 710835913 36116516 397173214 81351908 989120490 312119972 576133628 722659026 781948117 623481291 871611523 873316184 892604152 726540459 909401564 606033248 981243757 117160166 311238068 902877577 905075081 607550868 857701228 870568760 987837088 206018327 492567032 213424752 751863307 498067406 974671598 591793110 812681499 394982007 561432742 672958022 886929688 451507029 665593658 818008602 825955828 183893940 492621335 890137532 906882951 187404890 853596261 989142767 994470169 318633769 908092280 155921123 722709647 865836922 906035710 590535905 893453676 197198182 825969382 756617395 835799021 268122199 552712740 996092083 996769910 714940327 847776857 816037839 860442419 80582181 273993046 484995360 643528010 592746418 644746450 64573650 885805717 488717343 864129023 605810388 663517942 28102362 69161647 365623564 692159799 399047065 687461677 281509984 777851871 893058184 909171067 104860593 737419233 71269570 523281834 257916297 552340496 613372910 755688187 380404294 661289891 929809591 969639569 332482865 707729989 740907415 766870973 605450376 632308227 841989255 905852280 278728381 424073792 579721339 856220452 252940346 927855795 685106522 940517268 697566794 770789337 577833617 868434236 944293244 957930652 154644296 915782568 943027079 960187717 229364000 313575190 693520716 859200100 801665626 950600536 608008312 867201396 727193152 874659904 61931471 121743962 586916923 672543483 885174738 983957913 236962866 982016822 690423678 759430524 663998476 749295913 911364834 925920173 304728140 428135742 307755696 687182601 89144836 988593668 50906898 768388219 844968601 943106265 486098771 786019444 235489081 944639972 34692637 617030254 130963670 922167270 84296630 241635987 924438245 945180538 689599747 734382063 543196074 805844631 969903661 996247808 254652485 256040566 993937526 998114382 200393967 808231182 923050861 942582863 564348190 900745208 961715268 991288697 480614751 669691121 980085282 981436636 510884285 552780470 191775200 473520000 452280576 609197542 916615224 953023573 153554646 909283641 829168172 987888794 233391543 701782924 247893823 379026526 649291614 772635885 18824033 348660508 344024454 994375479 222413874 618526786 472954261 690015047 707598543 930329919 144427604 889094664 278083521 451301837 327095887 668677804 939370090 945877592 2024275 981535624 879848663 941662905 817232726 872431667 310619760 991370671 602134546 820871691 330394260 417503119 948948192 952541926 559174359 858618176 803768949 976213300 727437448 873283544 151849467 444418382 162827766 396894858 98713701 353586677 390769797 825623798 747148514 908110603 300668043 885862057 449451577 644953292 266810877 727418290 984633978 984832550 251635744 758221355 464578631 490506128 730233931 936287463 964538143 993640404 382350548 587076790 856071854 874256733 951745252 976704165 196395854 416891062 280528416 537029057 36124577 259352588 409875680 557277475 834400555 879768595 474263200 644752168 125606229 205650443 461765266 566816349 328642687 448057140 757130890 978116548 540521595 737158716 18459744 566916649 977217118 987280849 275943084 299041101 673043992 976045052 41579976 101272734 509779891 656853212 983674357 998239497 579622965 798643810 894634214 987068499 729942581 989567744 672836058 923839266 997918824 998650162 123992487 352433965 401793245 956433333 675865051 898809047 71078085 775238905 751460079 812594038 247921366 762329937 748606334 954067584 454833630 939864852 86840784 737335020 262653998 774903258 537350021 599240719 628365497 655447956 979180565 984579888 247839413 274167339 64549473 82513667 122499676 184982875 458997852 552029366 754724238 895873972 639455012 680621553 774977627 903789307 512917422 783228166 423581202 432994245 122546423 743165982 83003866 723866757 659216629 945673876 675000931 999274873 326430276 662164402 256847174 371093252 286693542 720149378 907435036 909930037 475625844 939034077 895838195 959707305 588027242 721833761 455943753 471351429 664652659 902089001 80212666 408587239 391187234 460118228 269112872 377210689 423482369 713758243 452757334 801254515 330556802 744965515 703549582 734285829 585334440 676782229 500714175 870860274 599584385 928957738 876544206 981626334 971206474 985182410 697938487 964443913 439749551 586923721 285939934 860902788 516011532 555674408 305607129 857999473 46261448 903999347 408472065 526480649 268486633 683288296 997939794 998178713 204071308 761522117 349070144 667230714 14985508 192862147 522804387 864428730 562183862 874882872 666084650 910653228 184143574 347465145 489788639 791951776 119564298 835052416 756442770 792009693 421756255 933694909 654292230 815610231 224163427 716918701 248975332 880893048 602431626 674400185 637167437 714300275 467623064 942118888 33511021 753172858 780895478 825383764 640738620 788657542 579513084 660054201 509996154 996309331 413869473 832428241 593312296 639545322 523812105 912757336 268126336 441363274 263228108 722148756 327523036 355249690 750805927 803291664 644740572 706613093 778515502 803103923 172764231 457359554 172933624 881281709 542791344 919673876 621437928 914136578 714835227 959279340 976567564 981808035 671201615 810127398 433565031 698002618 639110186 881852369 25522892 987201259 782743564 886981076 131453291 145132600 234573105 950697556 78634453 826320989 193909024 930673373 124753972 982572371 920596356 926977815 143937433 389925342 283222986 363271186 374650806 559976629 324320122 676026051 457003664 792329321 143953015 756475325 854637935 950916200 460070874 640414155 304157655 755670058 887098593 972299145 346229497 423161749 271456909 980749907 44188373 680193128 851912432 952454705 741586593 850299227 509774140 582925918 39911961 902089337 425641039 735077555 374083655 703140527 64012153 522175005 426467209 809794763 337339637 710141753 891479436 947384193 969604175 976269500 629906609 881083896 337180702 897048816 550670467 785012279 934487700 989401562 358841214 614785417 152348839 778016818 298776306 855686151 881358865 898764393 516575663 661061724 361927653 697280456 699009675 880604480 745571348 815862185 27684652 391969625 880221630 920888027 349772004 887120951 800195772 951545349 779822160 894950536 697552781 896925741 124793695 453166070 493437526 943462262 687938769 745644275 577818546 726200458 962086451 973011690 993737186 994127863 207339869 590348785 921822234 974355859 122548278 680377068 605453339 894119673 282760820 768021280 455421055 792323328 151097782 640090449 838568186 871874805 958320816 967050261 146209140 421551940 402580991 755562496 803137234 870896940 700477953 785525000 776743524 824012370 260502744 805252580 705730166 935268979 755914153 803275561 657481433 694289932 85424257 369533260 316487463 458407467 557701459 641753160 16969767 980820471 828283870 935400952 700382925 804317422 269089591 534009764 804591235 850982982 475489290 800443746 696699877 991327702 3598060 744051555 77882575 454581355 80650712 783317381 334974804 840100276 820728663 988061463 36586518 211876583 570269846 616719911 884010460 931264631 775958411 850094504 940835482 985042421 996360878 996913590 256162319 465575905 303379045 944182033 586840604 829590169 236513875 491751924 373094787 893072647 414030428 480768287 277215218 623773155 103775206 890058071 26873767 706482880 45985700 61335495 296413163 323514039 60420349 994912717 177614346 543631583 603584047 796743573 286375633 871362192 133902362 549358781 696038878 938024255 363610423 377653139 726423631 930495987 705687933 881311070 395268054 471112693 364622328 825396003 634087512 709870858 987149555 996098871 380224109 456132009 615988164 804789516 735987771 806163272 80571886 473918209 516247827 945711414 923838991 942791022 469945878 694924731 108309275 149876741 242385013 735903741 165834137 199040364 808681129 964368929 776329176 996334756 25049237 820844325 351505216 648791357 800269698 956968656 34958723 170995294 467349881 497555819 241879245 799486183 538933651 687246457 721867788 937265467 640925600 916900850 398474916 410351542 364093464 373970586 199456563 905447777 287342846 604699141 224498700 330830271 872781396 958180530 555818061 625649041 670314274 726464648 133802619 809423811 996199954 996917791 451914795 800733865 520108311 983079949 793760742 972182739 301776483 347109890 310668479 557846395 127913975 475235962 64934015 776892077 424446065 964748233 909911621 953910447 366044205 641989184 857443650 874412292 178746218 634811756 556050568 787713931 681398643 780392122 692416428 763896572 790670618 823071928 955228319 959276189 617817545 784649786 110888355 298120194 80684140 247026366 477658202 670937076 993723905 998092149 951047796 994764934 747246347 852064393 683849033 905776751 953370215 990956037 602112897 699073313 282538272 834756161 453361127 632161226 585939902 729843382 644443518 652530834 794778872 954101791 611464167 858554761 779398015 943274706 778822783 889817191 451463242 769303442 855216969 974231857 667190153 902637338 750470662 823836416 616998053 625123971 99211839 706522937 330684526 603150824 133619078 785328645 118558644 842512580 181168213 228583808 661856839 819680399 551562669 596176171 53898170 267540091 776796806 864445181 192453371 659028784 330839321 746057510 556223225 648803240 442873651 574662226 468490251 678243478 826965213 862763570 449218549 947790572 768761610 773251677 736040720 897700515 948017036 972105922 640062544 957061571 650146571 714163452 624952292 815532218 771761644 895718004 142105455 244916521 476460631 693180440 371134266 517299789 37513939 785635013 532607764 744859612 416850639 738419972 861488720 983720949 334833535 335586400 779510289 877097828 554518927 681428403 705056155 876586328 775875961 912997399 931433499 974838952 798776111 989929837 11879 669651761 155830534 997007268 451345973 922743436 704547514 907702760 264635620 327034118 537940105 712123153 900658399 962136349 932908241 968949819 382023104 989497629 663427671 714881762 908796 434448018 413861529 871369543 94033335 946549631 747224342 907903531 874885197 928261385 643815243 663791673 902787986 904158444 605481876 760855509 686898233 711570130 160950151 291425067 200347487 759990325 770940683 835352164 384232549 864737764 40534249 743949199 667266007 974166858 448782447 817654738 121543519 560558798 995512575 997537595 764198503 963194306 341754683 779713984 706329180 945765017 325104617 913729086 219446183 990589940 889890100 978892327 521454908 755516993 889817576 945490800 837492663 878491359 832715741 912057202 640949360 816772725 273408734 838249529 356529075 393637882 76176019 430737834 528019350 599845059 26659619 125588758 716887598 839464861 724434699 955646045 476427216 791353969 426392753 602558900 78958415 947213543 893787772 922989683 56387239 709673429 95291266 810244100 74617867 852869466 329758210 813871778 86255927 566440432 162467361 950409212 53799767 774717127 547755534 680511734 372688852 386694237 52674371 150160392 166464256 184245652 856339717 873168492 424580528 448864051 894166675 999106113 944491001 982470512 263675333 485453330 465903934 569712515 271061999 515415142 253540730 905032806 332532176 929810745 229171267 828363295 476509145 523266385 327949859 942697257 342929863 609569495 23464356 691486893 968042475 993019992 258796634 579046810 396858690 971657014 508031838 657802903 471720030 975487628 729477961 972900958 897609163 981076922 7502250 589187264 934014315 995036274 219224820 350771154 436823097 913884207 92705088 740552258 597440176 991867994 190415211 391637419 947942165 989308217 535122550 819753036 16819224 359782384 483537021 566289418 199546240 238602088 231906077 932055937 289033380 317267484 10277223 134076174 266734177 526559438 394131722 652580758 746490594 938435933 819177797 898104942 821288723 966035525 990517744 993444189 302954611 361527313 718135261 819196576 503193345 777440430 670215692 865312084 753071215 801326009 816902685 882706722 147553213 894532196 297748746 419107031 137672274 537767754 729296006 736853669 544718438 769088449 840359809 889686895 953350529 973348835 402449805 907197939 123827034 616027819 914350186 919943766 84920391 989085799 332708187 998698987 465940043 603138596 956750608 987686448 427217441 555827224 174889534 831291335 265610086 879476039 172007975 678531360 943766394 981457996 140388471 323894133 821617686 843087139 14291373 557803135 917087496 937936803 331936253 447135981 668952711 952616049 464882232 667267251 78902367 836563243 854438069 861392430 69774836 191195451 619094472 709323376 602026503 795982268 718849383 827304524 658646453 805320280 538848293 906789443 143540336 510865703 289311391 326615096 808517614 868750489 388780001 840066207 893413818 897453952 8065071 348105322 67494543 799880494 759975884 926388234 524771471 705126843 278914575 585892481 398878060 435366977 461716612 997653727 569470542 679251345 267185112 350137992 574304849 673360805 278020300 717760452 667695438 947804198 855828745 856512609 486166466 739638521 269824504 456038050 661143520 874430197 280420227 587588256 220273287 827879846 211148467 971373565 63661629 408058730 876842060 926271421 708566355 960693855 669596519 924428540 665270258 667480902 13558518 172731687 481514978 539045199 806834135 884585547 15405901 769542848 235489243 773819712 309018066 862498974 12924402 548017664 193479546 288773179 33191947 52127942 887334391 920047298 309899588 921214003 850941036 922043638 516839803 703290999 800983557 991227185 388497473 925390162 338284833 729498162 489174034 678943071 895709647 931583775 806153956 834066185 623278453 993251876 902073191 912323125 46039854 284290265 899855282 914188622 520190567 567143937 44668007 892726224 582794451 969981253 317861212 761925758 778594967 790301911 901859291 944838368 202594785 204499488 21367606 835092817 532358089 923320229 398497523 579737158 674146895 716082630 900296446 977769029 756875555 787691564 620474759 985394374 337372977 506044883 133981506 581509214 537018782 577428185 769917618 913261556 776980323 789482641 724412200 962546641 614207282 667465469 941225440 994167087 862028653 891190511 225942838 990632102 337204725 941312439 473319770 975484113 534052587 731278824 700010964 717498641 176280364 763777166 919683254 940669076 397446580 579643412 255545489 706228778 600850935 753983521 86769805 613380027 613045697 869156502 984589831 995150438 34166811 400250369 469429958 735828241 282264527 871765377 503582519 928977172 779902477 848696531 601843499 821906280 964977913 965018396 162251484 892098534 328874625 756201830 332043188 341866394 394406219 399827110 9508341 602652805 17781946 474427885 789594679 939562235 826934925 971859223 21801443 88589040 722479831 975319726 728750493 835422946 655009800 949818274 70368070 350851741 444493786 572852196 402228808 800860394 905788183 910985319 647908017 942264879 558718617 619466477 297570993 336755562 423100450 611944549 821398653 987175505 81110774 821563744 282526125 865171837 327552437 817163968 970299128 998853695 212977132 944263467 580477212 641163309 516148955 723104133 683442629 964739079 816704067 914568816 496140583 886695927 867749266 996491626 809258735 990246419 321510506 859288907 499991384 875627387 725987611 752195296 902689167 906177809 89189318 505634317 3529757 75144653 42025162 518077972 843471036 993565128 672644288 940700102 720550289 861741652 21248570 431038773 49003842 131799123 997371410 997910508 998214408 998418199 614809007 799874674 234121025 845514946 664349204 845070216 359640348 732136080 615119232 977412881 137848073 580752046 984322385 990656014 835600988 855791189 626345580 700945436 916990384 929911338 210732050 521948759 654756711 908594525 195643053 775092187 850548154 869003271 135965186 464828750 533091221 821902592 314072394 559183940 103796873 203266209 348361090 805186651 119441427 266279196 710855673 713961913 412929094 946697476 448266680 550144567 300049141 690121404 711649023 811874646 620313097 868648745 138148011 624634961 103363484 673085570 956031654 970244674 194171420 690329739 597198341 689380988 207045326 789341810 485374067 706902102 50282777 770170293 922653387 945308978 868298641 874406415 409393819 447024942 926285906 938982260 102402957 814742046 536239525 797152721 928940489 955384731 833498427 920051451 779260736 824417555 207940057 992040177 467829986 469222795 56339707 930391425 331836681 826566007 514877451 515384084 623949625 858302552 492508595 577685566 746006916 797594311 886988675 907375410 584498861 757493079 206196159 827825615 990136337 996566449 109976840 171406941 639713559 647191672 309384636 405063564 176800759 286715927 462168275 622483683 491971545 636455097 652895475 726805943 984999026 993089225 239026428 489487635 881765701 970112802 816869614 995223142 776717733 945443471 513479006 554034122 647674120 785355416 485810374 978137121 236664109 683263408 453405328 669454737 951657578 983925519 564471148 790447277 508064680 961484240 11786558 761756467 931044102 959512315 856191169 913469010 942640189 966584424 269763120 793632317 932961863 982535887 673170266 723759539 741165586 835832438 220105349 511680844 503730011 778004161 121827207 181246467 147237432 304190673 790281372 879870566 700563342 783583570 286048560 803524573 100318737 865673285 78184547 92090541 918189514 969189132 689856705 914770273 1397729 351178302 816942207 838452574 138180060 372435654 142856220 744506397 72078516 856904988 124128128 243113645 545815314 875733856 96253791 283037015 796573680 970222220 572477907 826055191 437720082 463282796 409346157 557286694 340718798 831734637 498492110 892068961 320119672 777188334 838819285 847449612 488271847 920879795 655374135 996477338 716769748 803434703 696509693 886981172 168169504 334397780 574952525 688957468 420033692 752820574 909794350 938598738 595835991 937467455 440705831 571616191 722153228 872129876 417063561 955925773 675101456 868732926 462495146 849169369 776054575 874130173 79661841 527514749 585434664 895829949 707942266 966297377 530877762 633682212 507022041 607219749 856623250 936461872 811618508 832065033 154110652 948245501 185789916 690832926 77536083 315049470 833350776 908811663 157369341 739831667 244186570 496071235 909879921 934486152 174895793 642033475 1113586 960484816 609363686 799909235 106083296 694646843 583108968 992659661 653342677 963393987 826804780 963967963 313487490 540656916 747766790 866481404 516981416 897541788 583158622 771425219 87725099 647346805 111689598 938398122 260477165 312557726 23057955 615258352 493776618 538650695 118852821 591516811 41937926 774595681 464587250 857073570 613105635 659897727 651650209 843259114 713101649 957525209 735150121 868064290 557348291 709720691 818860441 870147550 429888718 745135730 228164682 867106422 64869416 938516277 218838062 734313310 525302972 807501492 568922253 905020518 728178295 794237524 101024433 303022084 917500985 952086724 99352126 758323633 57032501 609601278 237539244 810601660 328007519 961345335 94317505 936848429 109827165 191692732 914562296 941291597 515190197 677305587 719475824 866246164 747170015 817059283 925169600 967056352 978615491 995748311 901407749 947963783 989354391 996711397 732470194 997829597 831510105 923859980 128443308 704380156 658049602 813414128 197380206 413435358 195258770 287876742 636852423 813616140 284983955 722597633 993542765 996629611 123680861 192427285 285776002 986043377 75819093 882696610 732186229 763949782 835932142 951270935 419942372 590661833 424081904 923233840 435061424 810582999 993951744 999147327 545583417 920819783 158160023 425145940 137547413 633830918 229628397 232771105 795707018 941185195 914423561 988419750 135311551 494632647 210176828 731349950 743221910 980924909 448755001 895164237 174945663 931840627 322352727 338669820 213045674 503713897 727742988 979263683 979938294 982550943 189748188 430418793 709731998 768982779 718922660 765866578 4173384 440371353 23955089 809465663 188783092 427679693 685244191 947102739 256271908 877406873 352535504 689238984 209449032 331705755 863823216 962444122 934411101 986022497 737942395 767590932 968401806 995145350 195756185 481230000 98533711 543352619 563719734 820544067 924350234 942773776 189443103 975491373 781624774 826770406 309869653 414604459 393702348 572384698 317437176 495545911 889945598 897434118 600690029 888851114 367933006 848853360 688384415 928212335 952130274 959397360 414050789 617539024 430389662 560693390 948914818 981635048 687333221 879029300 946967977 957479525 772295493 775871886 611272960 681978193 724233953 775571769 73475301 195854292 311821546 665815186 918901951 922422655 800439283 801735701 618060543 648969044 397030164 533871122 405320334 757009777 541568563 795764499 7759248 111284779 785430561 827520959 762054465 927796626 150004914 405681420 126321447 707333868 748483618 921310577 451030366 924200002 221109484 807224502 699350620 917861046 103703089 201969009 832354183 932656804 845375134 875028152 411390398 624577343 753348889 762028096 63351712 434684197 983384562 985981126 724241457 883488071 985712987 989861400 301922215 388035066 957583008 991664579 537550282 651595286 757593806 810142576 770961581 817324221 249508011 809627563 804231183 940739708 865211218 983047962 259269688 904725313 540125240 657435494 130122244 494845171 742235202 949746624 779900719 908859190 702323756 967277372 571736902 633585136 219392893 323420496 55203485 156857301 678658524 733051726 666808171 667324055 268906916 777383671 442816132 737037916 35170559 946048314 547478181 604515790 749409854 856486362 845054286 957890162 230746110 908484104 815250538 872412836 351627007 752200875 248282305 615214764 433168833 650688913 616233091 767046379 152323802 605080067 229128231 309549503 937893352 955327135 692142660 847978442 956954999 964257787 253238517 276424204 951851570 973183267 789484021 822964781 51041649 567377677 492890985 820284624 995927927 996142273 952102158 989631088 286393845 313101501 670538893 960454539 885776802 973395922 958798587 976119008 662156967 803283418 492317660 804673002 94324049 136519942 549741574 812319700 737280269 923658696 849184905 880499882 295042989 322285287 653509594 744611081 17190414 289324707 151835281 904586264 393351158 607242454 938882392 947173977 457113389 919628063 957606623 981751813 389097747 831966123 702259783 779737558 516302322 576179529 356933458 575443120 537883202 864848258 14157475 446793587 887217730 981373714 592733149 701089429 576596799 707486743 92219836 591382156 166299880 280303889 574101202 764810495 39250946 424732083 298756776 311749697 76334517 669925125 949647848 952095638 531500046 884097594 67738436 309741782 499295373 547315207 72361990 763051362 531761582 575166704 919569647 944073588 54272732 369706886 970688034 972116607 303932880 954659896 149081906 658366956 484148758 712744354 451046314 471170845 500236794 584842051 651006514 922974603 929809072 934907909 497482987 817741418 334964989 548051617 594978776 908294253 697666251 829570674 365890949 733943010 375722442 811483558 297474090 736159432 145432236 321319681 339889065 692346798 151752068 670582163 529238593 937150578 831533406 986972984 190896386 888050886 737079594 850573182 501396154 766449809 587955560 962186348 550761356 833861165 336432644 793079973 149976443 686462975 237628517 237838774 314194350 595285084 14192556 97393412 250587527 292518924 116663827 718273566 824331240 831355781 408486267 566710562 338476065 634915469 316158242 776471509 123131606 379606885 576467206 577645945 879977818 908297425 732118034 947263268 870148707 919018955 847183730 904427900 217851907 729583902 358542850 569172395 413763080 970583464 704466198 954165935 960574887 981046471 674233305 756840942 722944356 958035430 76693683 77133834 531741047 843439550 37621202 491837451 817224155 865279665 258126122 968039740 125534893 715500011 213309333 316097198 314954422 672216134 535252167 859997493 528022518 580596412 899446162 982867209 879937413 936963185 42944204 865191299 207608754 995999002 582539472 969671955 556480529 584786756 554875192 580060632 907603431 977206353 885565560 886453288 546711548 967444990 790995131 903231628 986332809 991589271 345540099 727524558 322073679 644595703 874103437 883885420 690210540 929484029 118122420 869625074 853581700 907575619 35353144 526986124 583334274 963048473 202004974 470824300 342530569 399756553 890319670 904154382 411809073 471685432 440802454 480567714 146974705 820433648 389104345 716586813 446864598 762095849 145993867 990698894 161046947 468137801 530201286 949492408 589393260 659074830 133074374 207833512 51143455 430179851 887849921 919729571 395331932 528875331 616537894 729853619 741438495 833891896 611334338 883286974 795414220 952409598 916124462 935775959 390853457 410987961 503243398 692558513 323008296 409816986 736239250 810912740 215108239 384340787 310969973 964678052 409610853 852654258 389671567 623203190 512607734 745829990 536321426 693914126 115539481 887801644 502109850 752277149 503236780 674462980 724621608 974688028 538253098 993680542 368152938 721863786 767981754 904883801 277544714 984056421 18913649 463062237 951155610 965122518 568910342 913808522 516892015 746691516 558943872 624363957 964605914 971718134 58846349 842071828 305819694 772753397 839200851 943232424 302715168 714098462 399755820 728882175 110922258 451710753 998686885 998837030 13991525 890411969 872566131 933743679 733979675 796429852 856210554 964088995 709729827 988572914 25194615 386909543 266483623 805306259 531665568 986722081 808812035 842391161 873332188 997711047 825910797 926889708 664854443 797002531 489055441 658516370 214347183 369209539 972090364 977371126 177489990 242094062 724762735 955811209 596234376 771062837 915600573 979130831 843867754 876957602 400584284 868381969 370330168 857314393 112701063 591207239 670999559 700431855 750100376 795317389 443091518 586055870 663668323 943769770 434342175 796580024 880128213 913088564 274598934 383578426 526128395 751413288 471161331 663462753 717376851 812720668 702292081 829397893 7898364 197973570 86352715 206880234 38797881 184578906 603635647 790862147 214618451 952941993 679694291 948253463 768791491 880079918 29105631 291631728 888035132 963216356 930990093 961356211 736350596 833963385 477224984 478764181 521437196 976065892 500453639 681326319 34768642 998878135 19856345 533231949 909442183 918788038 396498064 436390502 388233701 494557460 707187640 870385074 644192958 967370590 717800052 877306275 464329542 729696358 338540133 756973289 96863185 655739478 318597561 484040764 879410551 992647881 398822684 427128354 348711690 747302794 598851139 672373286 1655920 706723688 570278036 857158156 574180713 748481262 744608193 976870925 497542050 596786898 498595827 660779680 93162379 920971241 275822598 828690703 978258792 985437725 276004645 408915170 685018194 700937893 719553260 884530178 403378168 502402003 348429841 732268910 959199290 989322636 926423276 994260714 835700092 899426179 314024781 886473757 357053435 476475745 479474381 844612588 858361149 928015865 792614345 848734645 910791961 984333492 774995668 889642906 844288520 915219668 857645756 972502988 502664131 869925755 918026303 989437605 576677385 954975613 590850337 775966594 54594083 947942163 85147971 335499096 435812794 546425033 746938075 758317454 691108476 736340122 44472069 772509792 965773295 988285134 174533087 383036256 224728827 808446362 121954835 224078336 196745751 681916094 939004469 984024137 717320083 751989762 258837000 317949660 888275150 929417555 698502389 916705073 446728352 905892336 239366112 631029509 807166752 907035147 781019118 984463210 617174852 627883162 400481282 771721863 630136161 884707451 690830330 849004481 731951722 774496259 558352021 599702065 231915733 602025939 759678070 849769534 223261258 692669260 97466612 102703317 478039803 984953346 249083628 925539632 62871577 442243572 714449437 844988057 857053269 970571054 25732538 819238146 699530641 725807530 713094434 981041275 675647516 966561125 954117293 979439001 703929646 772372505 986131472 998163018 81652219 967902543 379720445 423460046 815253560 842678346 789976027 850770615 31071118 328208104 810623042 822119563 864675779 918752013 460697645 527685084 890910978 901157723 145999186 332288522 329333222 572777792 793912468 878470194 421391062 574599066 417233047 418499243 368023420 976711056 314790107 665522918 784886247 944499014 722473161 964469028 116628371 705576972 349023359 350360723 467212477 973406975 639342140 749417756 228905250 787528766 882746238 974264114 610846662 621241697 76382677 890608858 952318161 990971799 40910108 288245227 174216975 545655537 826199279 893533919 206035035 870316376 498328970 636677551 279631468 473774571 789017857 946062397 454669060 726582905 502447242 579911155 782475865 907501558 95838988 834467133 27881543 596944951 622526362 781910484 818102893 997645216 184676330 632050765 911341502 974022512 914614745 990524250 235805290 345502307 601537486 630540665 788995305 896868666 961064205 994281292 127107841 836730864 987111711 999019876 773546039 963861944 759323382 786987239 956425771 996351845 800960962 965151525 611500692 680393989 769419710 817941694 850596140 987804025 627760686 690348335 859981704 905368910 113554735 343013332 79236994 757032361 169551483 635699480 752133177 983045129 932009397 955640094 973250728 979578063 915189839 959045321 191308092 234079361 859095213 886342179 59188605 132783427 246061904 267799090 666615286 677586045 277892754 906510768 371569436 906660678 489630391 768875961 679942969 848313503 25197533 362378623 997834490 998487740 314574594 525822721 236666296 802782497 808954804 922527056 30067142 359114179 814066289 947452787 588264005 765179224 360881198 501475868 444070420 746104117 293112824 410673450 681131636 953368574 587561961 629836506 340357201 422484339 33708142 774493692 709124384 740992570 612533269 887452454 316194019 462007424 432001272 906980120 976541313 996739895 430615346 506379860 608679508 991516600 40132631 805332436 776557952 984274932 510388129 934884324 512197469 745264358 620407565 802875305 363861201 373042507 152002004 343195934 311427118 459952044 52781199 525005043 426511592 995885043 813089832 936024830 451141683 491212527 778060924 788522918 71872222 810152597 481414867 789942143 880164637 956628355 238183579 376024588 454110540 863962530 532387677 903115482 20670950 183750811 584666458 871459786 87218565 567480350 785403344 979271936 323997093 697370413 155886287 988961470 353899034 593174118 681804029 853605418 130873003 475978939 883910046 896088380 384719449 421167715 741979510 893665459 388834055 736287801 405182725 484631546 527173344 789155963 322698553 412366531 688867225 822179794 77905423 464891736 332211920 667369459 121399924 465312224 322225686 745884325 932979568 947578141 628916495 957882069 342480341 646416984 424580931 766857803 528517329 890385343 617976487 921248543 982051689 988731534 237263501 912729336 578866062 949484912 728280201 911336518 195402787 583730449 431992162 681327309 924697697 927880886 634959239 811805883 392751273 927346426 776600174 786607727 349328843 995821295 432714048 807560596 838326369 899237143 408614410 660947488 810397818 866788363 646667599 942446030 394472229 509163797 474911989 822518484 189693574 446530211 507478750 624622071 372211571 556438278 873624274 920326227 72129972 615504301 824809072 890769021 760196416 765713367 926685833 953216489 5931864 633865445 401581984 712504069 679582984 682742906 312156314 633872194 246137675 271122291 394612292 448484044 71621411 257009593 420403662 539208846 242522573 953249907 712594942 742274673 68522877 706620996 534489237 765802744 258954824 421419655 503837168 806953942 95967153 981303859 76065817 392442487 674092218 981801936 310136029 931703373 103658001 554716596 42782733 456683724 488552879 683126393 603648889 926343890 112420843 334949205 320472784 846188050 818782599 876514356 402390458 554860655 309851595 993916760 270318326 649485246 303332856 611665066 891910780 934231792 332519982 363010168 738962844 886931416 180086021 394224703 112325970 251063051 948187382 980207144 430864299 728255294 802751515 969253338 391730008 911311667 472429826 988107297 785500108 857071016 399079054 678096133 342754245 793326626 407254428 954027488 847056975 953579167 429780525 804242876 408348222 708743300 236248829 871152153 119865992 790861085 785792511 959818580 791888305 927490727 326163558 691580964 451829091 655961468 503606983 528907249 163641130 500390822 327269655 387689691 8585634 240560156 822240089 968170617 759481967 777755598 924377905 988367499 384452818 599345885 163977997 433567951 579255784 716250071 754561160 999171312 816380376 840552068 540884388 620973052 450513154 778851428 80387514 122705430 344212675 715358319 410671647 412401295 631732246 993817115 544170143 721846478 738754145 854653998 356608755 899805589 257420876 937228019 397154953 555367770 606818907 663084514 76663588 88948122 559444331 995956364 881321171 901061949 876681211 947834556 715196422 834246866 362733521 385423545 770920454 838069444 764766066 881770253 999140457 999327094 138801526 408350639 897161403 984842209 167761446 575982708 734514456 932313410 786952690 839887052 724755046 979864830 646009348 660943184 675637007 934462081 20667532 948568187 931204857 989496370 11574116 797612625 901901065 969469729 919583008 942903584 152494421 591481893 260543181 381056190 936002730 983327570 709749727 863917704 138187379 431903981 8815835 202846830 840150010 978841746 122906405 948721938 268571473 880095385 260756798 602550914 242157914 820901979 63169574 102961695 408670531 784858706 245668802 381993083 362131957 967482647 789051797 864255389 759905433 791710189 369299639 817328076 114175524 679289911 978658981 983662700 755698324 839880321 671692098 838987755 700143661 790311582 651323927 960969910 389886850 776108562 852964706 977444276 744645828 826996792 405357045 823713611 839064942 992159691 891034049 933608685 714524545 907496526 272888833 522108913 51813251 232748142 320684324 784411183 975448401 986585541 270186406 533317185 397525210 820241599 636995737 684069274 173247538 599169370 959852413 971421842 145943845 407338438 707205556 811232792 515653720 638290008 802517300 894799413 44351219 696701154 911662620 931209505 403461572 538382936 430441371 496853013 939575922 968444504 428765350 705180224 274201005 921295384 904736472 912261567 972962081 997006570 777522277 800268164 82311247 788170014 188233696 798149856 251890264 593125897 450301632 635233004 113588118 798604229 506739423 562197152 574793713 702913423 283453475 957871918 65270262 205199814 86152263 485771325 835167290 938072232 134699822 401108284 545901605 602259411 834770769 914198294 679530043 822242586 400762444 990257156 452457271 539240195 537664120 546895654 693588164 948345033 478754045 603728554 263359349 489975900 850814375 987046378 419346972 558403589 791917600 840277032 171493742 977196923 336607240 397599524 949027231 997502086 155921896 810909410 181043943 239378668 340860021 630047406 654228063 714258140 16722637 800424915 948646651 981959815 207019879 696086606 694376864 720029208 93504114 300560395 418677425 886528658 827912510 928234731 146431846 880903917 124426427 192352343 219274747 561422354 424248380 640342492 811033689 986695093 640661011 967145830 389784679 604443084 660774614 732796399 482875284 880593948 145551990 627468386 56117120 241336370 236266985 824972353 311816124 623264045 358959558 496399729 41297790 756016920 6458160 327860746 397177306 453913254 9030116 734549259 682215508 786080531 96284421 629303371 628735060 972102410 336902464 516377325 720549253 812013339 852938113 861268537 504815019 802244213 491237359 709711881 571448008 781356002 794804986 802963863 167449698 786840240 760716809 922287545 591618664 712583944 365956451 626112246 564920490 651305887 313750167 747969326 544469126 826587811 487971689 932284428 978690743 996085140 362414277 885825103 239844060 290484239 958247317 979743807 249606053 377179754 655466001 677079900 370651000 449617095 944452918 981547380 369962382 820666006 993111491 995158305 959954514 996516902 92376116 484480818 327748714 488131543 991810575 997278881 254842657 259453468 91713841 991158849 534324665 747828146 886925915 913556725 976280873 993126691 804381035 948308411 606237822 675968428 321196301 362737825 834889016 984866999 524648069 625782431 162235057 236245523 749879290 892655827 751263340 833445450 298764053 714244794 796189043 927069723 633430649 646558482 451202745 645740638 122543644 290371747 151122624 474070862 214978019 266289469 549095498 601259316 648832640 770035862 936287920 943517298 682379275 772327956 255186523 339966090 61086859 996617369 237363597 453491961 816832548 841515743 995157436 997131047 921486822 938534341 31286383 233226017 854175116 949030079 455220208 506620607 170719294 332774468 829526073 918268786 84656733 927081222 1681444 858222751 72824165 689095989 664603680 918625473 477164424 937893246 715475042 920581659 541091623 640568924 446990174 685796142 985577861 992443852 378709284 468120305 48331396 131632505 809555396 903377455 413659621 449226822 352144143 716231101 332946069 372319072 337749377 760997465 963403948 967172351 768628075 779286915 877116785 939956910 981816204 984242221 687688139 747629739 870629358 935775775 714734914 804018789 724457443 850451364 809068069 961340317 881499011 921985171 140975466 430827188 397413770 883027882 437284411 627876402 186580902 442622524 979736754 992680134 68509095 131179570 93022389 610883032 398957698 745952944 91547466 640924624 707033595 886896190 193111003 202452965 670805659 854194588 40109921 312798789 185360062 874374718 999151706 999169453 645606368 778988929 992546569 997444607 142782169 687731139 798155902 808530408 156796775 867338830 385900890 996901130 30917398 444280389 939597868 959578239 463008400 519276551 405532974 994436709 14910060 871392585 978538108 992369179 842282492 914597602 368491051 535737432 74613563 419537341 207970396 667765264 722902157 923111466 998148960 998418914 413059493 700056126 469079240 558422631 776289223 853092071 781463052 959442066 198153505 385203948 430565025 973623272 951218241 969177154 712800337 744711593 856318548 962508320 343535666 383545611 741275070 983736731 96115849 590769976 516486213 542672510 733028638 847941680 353312220 567008037 963818682 984175678 990745676 993280435 231376448 848298171 557489794 737934675 834580210 988016104 376486371 508836275 887757435 967955803 122035061 482991536 914387381 975410952 638022569 695331644 869405166 894004891 639793033 777858146 719612498 859251462 757195157 809871522 741244638 842667455 419294835 585772327 513953309 663839139 724903648 808646820 120125314 167667033 828105484 885541147 254563912 506741171 291094638 683922560 111592781 795409848 321735245 707880884 446465174 767644855 453712973 868322084 468566723 731190193 711187500 778205828 380871066 844449978 409011597 906196433 210328872 579133917 520538464 711293290 316350974 556703140 902183067 903760899 421122456 736452772 195920800 898305254 81032074 126066265 12685562 891883124 771589627 815262332 6771793 719190077 15241705 97552056 443834092 824354138 17213028 555982993 524612804 986013855 690283785 773869760 196579693 944605872 786628814 888520724 271155425 461191812 109500354 298039755 828440050 901651092 195549713 709028441 250933163 442256735 556063905 673951761 741550791 774918164 740469764 868208315 499051911 578155018 196608155 947108059 143410389 934327354 543730402 710901697 933204765 962646011 232038873 434911619 102934848 189007378 508522910 532460473 321794572 697235363 31388021 880000439 259793781 627666203 896389606 979460899 778500225 818114528 705648919 833010577 507842698 990480317 133757665 556763734 555737012 904033369 816718089 823574004 890251687 981496196 976288134 986008116 666585824 867517327 618628467 971916392 128637196 549613794 45540013 456005238 989880221 991336755 877835737 934624647 720579318 728596814 475549607 645791515 697482620 881489779 244332255 262934053 266131509 473642619 105886493 560030410 637937583 901433713 217216552 737409977 914213401 931862921 529581436 752224941 691240503 882500421 846004975 874359910 265290245 909748349 972299656 992202607 450439584 734503806 680649652 947851591 890537926 936532575 170585110 306496681 993137978 996805885 556276497 615480910 608795796 799520127 392110715 607433693 997157154 998498197 155538101 508886692 874974360 925402846 775606926 996587120 276082802 973392750 165278232 166891176 797780357 926815843 129990508 209860322 559042685 837193654 114157766 558261522 740250607 956256347 520623663 906434001 132799374 934777181 36254680 172380101 609471773 840403060 515078100 637704507 438945394 842803216 562085175 583630643 732984366 874340872 898342766 952642590 324247 696723361 50437281 750220433 414898146 800640096 153271689 529978575 342369587 541326646 919698285 955077065 88240450 392415362 144411790 211170384 685557819 968474053 284001055 824750835 656362083 741592392 113235942 171969453 400650699 487759779 770643080 905315928 184675583 263059699 271103696 997213362 499833263 523246645 226257093 889315838 515730005 620786309 710438480 847633562 492513906 780435246 754783541 806734206 904149142 942813271 68842922 732805340 229669937 633769764 733916045 950907721 962812160 992423282 962607091 996274335 379314491 970573691 261675715 330320150 194178914 403675671 981041155 990745929 227307854 660147434 378803308 502912685 4321394 653632370 34937456 652447904 755613285 756264944 367546030 689660175 533289741 705367278 429102894 448703421 724232831 737774156 518836029 696493466 959472564 983502050 308004717 467241693 48722645 114929707 292934974 841843650 307601932 520042806 754759789 950285384 705960196 892792968 123268215 190031148 227869983 239534107 29434618 123600083 440247727 718070670 698419885 728563029 12730025 101423462 368105702 908023139 758333121 929826469 487397203 877788672 421827912 614386176 773705289 918190331 485766081 708811151 242404573 573294465 486527200 523634688 534833045 546675615 799483342 817374841 321554959 447042406 860680920 906026403 718716846 722849430 292597201 566807324 50610818 663303563 32112841 946312726 47304676 598805608 882209045 900626995 824056306 944393578 724129197 849900514 636337460 908585724 948277844 954398332 789184936 980663045 219890239 331276502 801281578 973460862 941445233 965898237 213984241 800563906 362593627 459976165 340248183 810856926 25296394 394705335 667003098 678891131 712986963 935541249 260855212 538160071 779807300 905475820 605216434 696377670 120924418 318869120 521043793 528729477 603755780 781657310 18833186 108801412 42844658 390362653 307481247 546965119 627709083 937269940 544391248 745872862 985808960 991705677 251120636 802085987 54161748 809665941 874556547 997112316 650860571 928352628 132963315 865362814 937020674 973350851 221528789 273819711 304898085 483641218 863679999 899915955 213038831 835038104 161778862 306131957 190611606 998191888 177487110 485426559 121484617 516770916 768622037 972437353 534922005 588841201 353177621 493195307 256201383 553343383 161087497 285441554 228781245 777150864 122833592 953575721 502892400 890910555 883007360 898156717 772685155 958113034 550966269 846851477 238741337 909997605 325412214 746440617 924408303 967938856 288760230 607509650 756548468 862969826 303478844 732352163 181486480 733307392 913047353 995542671 140503304 765479101 71888243 242022749 126919877 276318392 247087658 494331400 195167207 439042926 405303796 480893418 108910799 155002157 929572011 954737920 732055367 892272851 611438936 677733467 702492835 940912293 729395302 850931442 862155847 892660918 100701204 738869834 125007592 237234305 211899115 409383548 2786265 856798486 443086690 942800624 418216529 548700304 964050061 995208520 978667324 997734707 662650976 671182836 51831751 314985357 780237418 873560161 32342616 181057379 328136500 426699132 448031307 879459369 392607197 923275010 47284454 525225439 336500505 577605610 407583450 863598162 72047470 128144996 784964903 829257519 418200902 489458192 372163345 673374670 840090355 914266932 738810858 985083870 447095817 493760334 189787161 896374862 552640084 599033901 993997269 999138373 393571757 737898296 273902188 682054290 283911923 948735360 93380812 478037757 190859170 472061543 444761357 978648766 203029565 285840173 108848839 952034760 27692486 998180584 47633772 941180818 561422216 903567012 626071377 836977615 367951748 569057193 315524566 850859868 96550330 531320470 788598478 980452552 173827661 803412082 707705489 961941699 790108121 902223019 384244983 755472518 597100308 989076667 72402065 744274847 186319248 506884229 560214858 700031368 674864511 872039699 195452558 301261626 477188799 700824184 157073849 231252695 185932091 422782218 728701420 843118657 804771976 855282280 872531108 936720787 950325771 985983233 527500070 928631071 794567661 916849943 483253198 589199452 621796328 968179956 444474691 563059628 330975324 781235588 777110006 801236217 765868359 782197983 321303758 882781223 587656290 869716684 571407201 838397540 375461738 514585062 703541303 750973381 472073779 779195560 546903013 609100785 98340018 247721646 968533865 990267296 926418918 968050382 66120935 80935993 297003962 602615336 906864765 932651976 409434997 942905600 378023404 802375804 528543698 782421945 434390186 557687470 456480127 828397742 286221399 321224884 522924136 866586109 106501902 693121354 281673345 559818563 722907323 984034787 790431782 838356724 392035341 454758980 386800724 501574116 976886283 995937093 347270675 669738629 208986972 307367222 610989838 621057911 381682308 529410283 806975034 973385994 236257325 685622870 690723841 972316832 525293832 598375908 85574571 135967626 113127799 882188750 176823027 857189800 753904347 927913762 54802952 197485411 149634639 546917376 524244744 975866449 388079785 561654044 494032671 975182739 890034732 891952326 261338743 733740229 866153404 971092726 252343057 700372368 598856691 599605453 106224360 807947498 607727031 752245015 197868214 464440751 513337001 620981367 991145639 993741539 907274339 921797784 864558107 872849903 539172375 970071336 248896808 508822961 452003377 785926798 210988930 976767291 929740587 947267014 513978455 526014215 477811340 710582134 952770292 966514109 129592673 353383607 121052905 903570671 78122656 299943080 34531094 936876589 617368380 862585329 725286057 737413812 665489088 987267308 331389951 495124134 275281412 499236921 634025798 746276063 136955604 570692880 986092095 997762744 855261002 987200404 831378975 970138625 460112746 618618909 474292615 532139651 848799030 948591001 830972888 834700231 35663960 280200258 167478219 877111847 922871006 933764378 58650410 296019861 930434352 944051641 958865685 964391905 623002585 676535295 138196078 486610101 943832499 946190509 595718141 745689523 919338215 964973069 331933399 893412480 431534822 499986157 94376001 469064618 529479797 674134050 472092513 712158959 186692965 609837025 199634027 752040207 241340585 381708638 307255798 666289224 956342176 959323892 148134867 717898884 286810815 844058402 35560794 784934256 967148214 994562334 765438423 995541610 458407385 700770572 60466731 482037603 981322047 985279570 734270626 878208125 917165986 951099615 766558764 896101929 79600698 230469054 316340343 364303059 417236407 901844540 873540796 979401678 835156215 835195770 591367171 974641900 696997893 937007251 909387027 932986124 409512363 738599648 356473118 879301490 266080193 984619642 330753652 976982129 478600780 903996668 351316476 357101366 474117349 531117333 751461107 888855116 79067690 82790646 678138162 836323498 408005460 859686395 51211384 749748916 602844313 673072446 175307897 845751773 274763613 456884694 676532927 755903395 288798008 409676812 345035820 380497348 833643212 888302234 565594619 834401779 756446644 942762831 475840722 976974338 185456475 811173285 737814098 798358136 668935222 714194903 605187294 634429044 916446367 980538993 190442640 986926669 893345421 959481845 925287231 969398766 988328207 997590788 211728243 894768057 253275515 442531581 59783630 128487835 833231425 901116920 24034949 800367989 201936621 663701256 857714917 873556694 100477384 314594157 555422490 835585516 41883010 120334090 950172040 978468967 540698888 825907224 568888066 569845396 523593372 544518229 579314787 605664414 62311659 402322321 618793487 928281078 727694054 736917084 115515099 802014132 221533819 572849468 513706696 561859625 32933548 151474839 66225903 924250217 274345821 278902988 496549492 697674235 357160059 857033703 455363486 937706124 295670778 364985199 926627703 929247694 609446991 758080930 993143004 995796920 463918431 681965417 391567922 861324693 864383091 878299840 105453520 978824663 836517165 859457607 206016560 377768451 737287466 911368508 802498808 818900608 256191453 563911092 457449452 796104122 297339433 659477615 484285763 558503536 153952056 732088567 3836396 680821798 761464524 956567446 116448883 813295379 841266728 921016634 981020667 996807268 76431036 314985194 285507366 960957854 730153273 936947255 786193053 835563033 411488292 698806273 441671543 561045063 23053515 531107273 652131701 712937170 545655757 842154130 779302402 886603332 817567435 912309700 834153278 987824855 699739212 887049693 631171210 864610595 304958784 722270948 832639370 998373286 740517502 946778827 583632383 764727368 403800494 571996769 887648585 951477969 57676639 329205433 631282587 660063059 564412465 612397838 713958450 916151116 108816811 263547455 88851440 932522413 454152394 559156123 963711858 969064020 23679089 947213713 464266328 940362175 237009465 979563608 701780186 810354949 468674108 823665103 778663660 995350272 368517119 514738240 789284960 938129518 913126468 927324019 413089522 937492670 731748282 835232814 557547157 779800547 465007501 598713654 291358768 558147531 139698693 792998068 213185669 296045814 396694081 515170300 779358411 897180486 964761197 981135048 295588003 741657903 793409189 985691707 252552257 586657938 287359703 539988904 533509597 646599209 336184681 853941114 76002983 293972739 567382304 850085285 195650036 969702661 10015429 16873470 322813936 775954835 808773141 997010958 55179651 607951686 618364108 814202162 332010311 405458958 91966861 739911491 218790280 854310645 645543667 812724244 709998449 897511949 682209739 933320261 765445916 769753161 856842926 921302901 162327530 687610415 140239954 492058044 369715572 684847525 808528374 874141371 858197811 975700572 480672233 487573699 797310189 878561205 292921976 886028677 748623288 830515850 755371507 764344954 432328024 731263914 403225914 978203938 657280767 995877775 881822959 972435189 941981381 986515215 472075786 810400717 235567351 870518356 727678670 833810789 571205911 925661576 974295199 992321474 828679155 907298939 427767773 915048185 16145710 887549937 897314627 915682833 427459265 848845245 674945186 843769304 440446894 448656018 760655383 832038175 110275046 456064309 517541639 999087036 748075829 906243741 676334464 919018025 869778546 991310045 594049689 742844873 214064055 811889361 516502902 930467147 916925010 972630612 737372179 961758486 871614506 916123691 444765310 478847840 460726329 887621343 851327554 901940332 490154850 871614759 264574784 944547034 482724703 962256040 201435315 793986247 179971635 657193727 393436299 514190665 715302383 852841326 648027019 845974109 290318530 708353093 656031136 826333698 247711218 291360079 637729120 754781239 414208502 728612672 456759912 480127281 339960775 915251594 600133857 655770354 635665172 804232768 766743501 909409159 288096698 301594736 433736057 927974896 118186571 136955934 75969815 608616499 716969 510316235 238207411 802712449 485344834 614905793 400389109 846373524 502774737 731803639 893588573 923942830 993230266 995211997 49041748 629323046 807049251 864016846 315043542 666433625 29166480 458752920 471223395 970452543 584177476 905103903 448988262 517559321 192200298 268869350 752505458 879915508 344401156 986946474 134217224 626557027 244755865 503190300 249089162 410138254 822827452 921350654 124411093 169391955 286337008 395699728 703324738 859563219 980766475 993306105 711866120 919539489 996867988 998596081 510428458 735963568 91146791 518511214 379522856 745197600 804730406 828454666 504690957 690828863 836210874 910479069 161196752 976649867 615584971 839637260 609737726 724636900 569847567 935765796 630623469 891849068 567295610 657723273 843492124 959467245 112206052 437604582 363976278 969643045 592169116 897931865 761575250 885401513 434016628 756686144 407819303 614407828 355270685 713975968 194006147 381687458 933593199 955697317 77098730 871818274 921241482 995870090 39883877 71866012 652462427 799739231 121940470 588373513 315722346 889204420 660805985 745136525 796838958 937500227 945509506 949595361 3369781 439786968 854484546 993682613 311812874 861720724 357971279 844731953 513787741 988360376 907036128 932864161 805839647 863526087 323335692 505103459 562722776 849631880 17954119 316006875 840799996 929786149 117475675 733048469 505883163 845542495 259757068 782661271 674942476 981825696 559795756 752343782 293576409 909652748 623791366 827971824 545923934 960888762 227401016 890747205 921928272 943797483 893544505 898817583 167256387 891127480 972613333 973033495 457578806 591693958 779313984 967088885 420458414 884427467 591055875 876589512 764263556 979213791 102191450 173644752 692696559 769661070 583016939 682286606 963298188 970929810 188645571 309216252 525385233 558088470 495600397 841042458 481149881 847059414 519584601 943490795 273764641 514631867 96829687 953767086 650647313 669809552 451305258 833818627 86351016 776270207 805268345 883801169 848376352 995719725 36811960 943302848 132150372 545257685 936094740 949486142 274001771 292519825 818718090 901163803 237448977 967976465 150500565 356044336 481898171 999038677 351639430 431776400 401788956 562760116 783401637 807898080 417703311 667225147 554917782 770598210 371797484 483201566 88068016 232968663 801583186 987616289 85078643 468465666 903596850 978412448 557283498 633918180 330075467 462681016 257335659 572146652 796041700 886341792 291767397 540227268 456887695 475791845 649119627 952362680 419383558 431612786 896372740 919132442 231848264 603625266 173448047 839453007 572189884 742329564 967846026 984732810 159428540 419161098 370314320 684955421 150613022 750840851 440075719 690806947 797988958 855251750 503798969 639278414 164806322 870716146 31322373 704064144 196274506 814639789 934648633 948227065 534150701 552420637 551953995 739459173 773464197 797810613 38756051 460044690 975394638 992727406 394333079 688601721 185224864 921635263 795021160 957920569 533313281 870271120 268170651 927878068 148526967 235258366 58192203 634780087 946696341 948843589 957211489 976093493 168015594 749715396 115500978 137592649 835107375 984161822 559322074 885503487 773659567 897754435 474728018 482404520 460260558 956351059 58803102 932449791 446581319 699077516 315804574 471206937 202461571 448347837 496211432 835254608 668333728 771721458 445401328 581902893 995371338 996722873 626262527 803170052 613306944 763224427 977149133 995760000 73100314 796530003 337041313 881614326 607039343 952632335 758698992 839837449 492493946 727087149 961179451 981752122 501578355 568900597 601925277 828390673 505021113 852524179 421287093 666845822 724751494 905666250 584842930 891555703 527361971 648994019 467422373 960988171 919419525 924626093 742298126 787403807 452517205 513246565 504146478 567841264 966214162 974069230 740151305 947293410 545747382 896465271 85209151 133534440 845261190 895677726 165631648 189960363 731274370 808583679 935961498 944923837 593692734 730157414 658543448 856406173 218790892 623177177 603451639 800803874 248069360 777083361 58669096 148276348 640260260 758918227 380454998 784153508 447389035 887970444 386983239 683119906 491578849 551915658 75125219 506333621 992469766 999385193 241497572 282631358 801224095 976054329 693347056 956639082 79579694 315458208 182606941 292150285 406524087 819558491 759332346 797838898 487002628 910859569 193738591 267744110 481800059 509299633 297982234 598336247 808469358 936029487 924918552 946913963 770809461 917947731 107838623 911709175 55603067 989303928 539161756 758819252 581137152 706304825 416204404 699927540 804430948 837610830 123734929 599529484 109225974 426208404 903020271 908403886 319690389 619397844 564493008 968420836 195272560 362277764 209658830 874442465 944542592 993512252 991156338 998438802 75571052 164734118 702450317 780045139 849384513 884317384 616502457 705231164 228846190 551391249 986145826 995328320 370651808 558490626 564029056 638969292 624603192 892045880 493854336 896931380 495987111 746615716 197922030 725581884 972195472 996690923 7693941 75216214 727704392 893533876 556048812 903212807 107425220 921642481 89550716 750915570 891734250 908873185 830092942 956312747 745837642 856997308 567833116 967370827 49973655 946176068 144966951 426319711 749717682 883710941 290588483 528706707 52750899 98854909 853434975 956685080 267723374 465307546 383611428 884496605 662987737 763569305 476244974 536125889 131893323 924087999 558713217 780024542 624101157 672758925 932567197 988663046 821785222 916298057 498831347 884157488 591118882 972834922 138101563 304533151 65569448 990037296 227507747 239877148 799375293 985520094 372685726 452955584 6357901 503415386 71144844 722665081 945385864 997712186 127530200 560303117 986013701 986088709 191619010 228900220 235279187 392280851 865021893 961022433 735509293 840862174 223941674 286241044 5076903 333524200 79381937 910689732 743137622 966185552 664721498 893056455 901478933 945521786 40002616 636521217 113975539 218621892 995282611 999101390 987164797 990410858 141593906 814314599 996145857 997829386 159178053 764448418 91692812 934026624 205078462 888846168 572169549 746961326 323029438 337640003 696848574 978691902 442849207 895142976 386535722 952851112 162756646 427603935 412310162 496650250 359865772 873091152 678504161 916734583 917999411 959671243 479768520 774530240 651460199 797809587 776156095 778799397 507971749 969187401 933193135 946826211 127789716 398844869 827788294 911874048 987064018 993882035 71787573 567418328 506185045 673283354 239011805 330624215 344885044 920028269 176339479 603794676 267588439 881305672 925488865 930732487 634921639 946135824 723977559 918827689 222657386 999131750 505996758 788844383 531096826 970885789 797172477 872944618 322794042 540521273 814675031 902538995 260402986 357123188 67705641 578943249 894573668 993552427 700284714 873856613 392558824 519611035 5723474 343333509 372794305 758277943 667153119 669586093 401775687 469708633 841395215 878190073 167445844 448050167 410574386 812193576 384594885 973974836 345394965 669469822 232413622 852915311 876560306 888376658 591211290 877753332 445317094 491611824 619521128 827884994 53321464 454810879 374310431 429467324 931788017 958975149 956373527 966710661 344701923 968336945 618204319 881331634 492929620 855180116 254590849 469200646 999202430 999289968 545845791 794249078 373163067 392613290 775885063 936603151 79748874 191952149 364052052 410475638 229194937 435184695 509111003 550367978 204504163 537253799 161362816 489630819 238046532 626196481 197857465 497617937 570803841 771683646 468216671 610718016 724348588 998573364 185173072 597625403 88965358 609026177 19203299 828614674 680330235 831652020 755393369 845797330 587262919 806851928 371232186 399353836 372402078 898095916 695347514 979698388 914145886 948829974 28499936 346061106 260607981 400901898 953450984 990172269 552894757 926505461 587692044 879191863 186563178 584467618 908827868 951014954 723480864 906478498 731416862 823257094 698086792 979798407 956755038 975829542 9309942 555398387 160482143 690932508 903861495 931630872 843306020 844749904 717182505 875563252 53893169 235379042 370908361 905844181 256546348 929874320 248239307 414566985 202783638 280536869 44606318 470618279 130726446 760056652 767910277 920566186 921101706 976910628 953695397 980978086 872999494 938077418 400476005 400636914 310759108 676916578 580633402 792306926 396853676 616554505 890568553 914945155 796158245 800381906 98528715 461286089 674169585 833249465 904141939 928383929 860199649 987168373 103844291 564017145 845569991 893440525 598268175 747764890 458441246 884283724 321879652 482467638 737692114 789906293 869090175 979706551 652306886 664827405 518242068 905701618 240565484 963274724 233397881 480249391 881908631 914115524 172663308 194695781 172799337 901132034 199727264 673193701 949338053 983793056 658776769 806788199 194865201 984703925 815554228 968525691 121896200 188299655 239752624 378355548 230051416 870990740 313836464 763348568 986037557 997628420 706921478 851050619 809164914 819443822 111015210 752951012 236423040 529366333 84939339 85577885 624838936 821877082 889402597 997628848 976038023 977214056 214190768 640321942 874891355 999271435 753232597 891393748 181829439 865359193 467331530 700186265 23007300 456139870 53873051 122048811 232368321 465890873 632714332 851657843 948656484 963095497 873287774 953029394 399918180 658758040 533705782 789362299 920742093 977168100 655198098 995426028 888849920 913923449 880433 85195334 696477486 769778198 661994741 685177185 895293851 929463017 508826562 924891398 527993054 589865420 516182876 629175042 460570317 877271165 255394495 512453739 560784895 803585720 485485786 920421417 336194901 357029602 714711029 953338305 563011867 878046274 7253268 204161248 432704582 676563203 646733393 691191561 345526243 821582606 484920499 810185900 155816060 405304605 299356188 611890035 992714198 995090445 448649357 900661424 990908721 999171171 896016383 912412815 747880848 993655957 808564798 967947763 676869454 726062593 580812300 644507105 880276544 945321436 386899383 489228683 396732690 895961730 71818427 994881995 547350578 771857611 775129857 876933381 116335585 127156499 528520092 582612196 677053238 981115172 538585968 699719850 860625829 926511224 605312925 945363058 504378873 676679089 917326680 965264348 562261949 580814467 387600978 958634756 74598334 957796922 761813006 984777901 8001477 123664207 162071088 348950336 738106418 825901605 475895180 731455780 744729563 947452242 776195303 926046350 900785551 907216041 870959142 922345688 540727948 652736504 784101804 820605426 987764279 997032867 173448669 459694417 211356216 342289950 432374309 736262362 483387459 543289032 88466666 670229331 725718445 844046449 152229389 750886172 408160147 875791905 522980518 540612965 688841639 857337087 86527130 511717667 919461537 923892628 889943107 965146587 476522256 555410997 2606052 567129172 253541513 264443803 598361379 790601819 953655946 956167956 530165574 608005146 471427851 512639319 988853432 988874816 377681932 595114667 112144004 909611224 436720782 848181505 807772305 975483889 647726633 979135841 56713318 855020596 467511197 520208952 574842823 593472655 528825688 548850970 479812709 620536971 978032297 997825365 190553490 905875668 52969662 685956144 962104746 973684218 453306845 855607878 398062730 694192794 760137425 788089428 159144244 640766527 741881790 789103296 192537864 645572740 994411126 996792881 605540900 871654297 862079565 969454166 876231195 986482472 994090269 998594668 878733879 950323036 385246567 527948519 669593941 982545945 920286314 960673481 704436483 795379568 254999920 447030156 613047718 919651688 164346131 580679169 266214940 662243122 761495430 907592826 293791259 599494927 636615974 747697551 207099247 588174137 666105588 833450855 3168578 491465058 564870779 947230509 67195028 277082472 716307342 802612159 106668233 324093752 530898932 911750430 931284270 975044587 654308623 829116617 858120173 896562858 167633034 801300975 590270283 672768837 728413168 894746884 644470086 790008762 949691031 962016609 225874960 466438365 33037592 198803906 571436625 892982442 884917094 921586049 279066563 853667482 20566888 429442888 213083579 526130085 741919138 909665649 158308204 855565256 832788222 842651144 915633542 958916726 649413319 840864003 235598743 620439253 858543920 950567945 753438735 970019611 264215817 997196570 113752796 429333718 75703473 350982688 178113740 371582567 338586009 782938762 232087688 541514971 633908847 812844488 101707790 757501282 798084335 932365534 847682351 929339178 20288115 308084477 634039476 963206776 920243364 959093465 317840193 347004844 224276382 877791469 577686786 940021183 410919496 801403913 874541264 975651560 16282832 627441479 248570823 431453720 168891573 722116308 688577902 804708475 507956154 649967738 752362737 916386508 459545100 497792471 544945946 839830881 463970263 880309518 474365647 873597283 369265074 448630495 227814254 835419790 532910101 702510943 626910316 766028412 837898548 876388690 923705863 927395007 673691502 990495943 640369561 866922925 45015133 864358911 741990914 926092441 954921185 978865170 336849281 918012296 454513469 694189854 939754114 961156504 164444528 991270992 813604780 994578937 153674683 754678139 955830152 981581025 885635631 899569821 740241488 876359562 355611676 672095457 523064395 734901291 254259319 375951602 459995758 714511273 460083393 924397778 719897221 929391378 964908576 969707152 271866111 911857914 812947280 955542575 583852128 980397296 877319541 919231555 555834308 752345799 529987084 921691980 674796529 807701360 718260384 810029516 340436637 884870614 527869563 989677840 915951230 944232957 753069436 862197445 233608919 988961290 113754536 665332499 282978153 951900611 368467857 413178602 189065758 624949939 872944826 992851222 499229530 499533253 315181013 491301986 569224906 823920543 477315142 619609094 553176265 841511539 452006283 668114988 269010783 972896935 961711873 979774841 22484480 101267770 448270590 671238349 367554592 700043266 89912075 434502477 11804942 923502381 777224543 853673008 932522763 996197401 534983024 673586152 594006537 846007580 663599917 885001133 601389146 993694438 895496066 991785997 554794514 864142096 295761161 739055690 993495156 998702636 374277806 488520499 106396288 291330427 449891151 628336685 678003348 872322447 209782284 443773487 553479084 956622973 6111009 570710325 79507511 163331918 102099554 126020334 249822973 645413455 281041240 817143521 991821964 993494958 464555416 594278455 282215185 456564710 83270697 293402974 465260075 622180957 36035839 754732096 748369383 821145753 804694570 810549716 580669788 661368055 459425484 669592674 327317408 797305855 123933590 843405127 709609970 815215347 767638702 780661215 336908108 589282819 918953752 969557351 88710170 215417407 650770343 916646183 661189773 924254058 873842600 915015884 694799290 807943004 712678023 741951531 293632079 371031292 112584075 583146477 316438219 755645188 185117063 774711970 95700314 544569010 693675645 987024246 521511755 810569381 719311831 926671292 875484998 960760942 381582884 559112806 455849527 819432935 848647475 900199974 26863756 339196996 522931925 810433736 988949967 992613655 99359779 795259523 836306682 943108080 623815908 933848974 754228911 849546044 362652227 696135476 585992976 642532688 289363409 471310391 410501816 621996538 128615564 738851314 477252191 815257429 741319447 876123425 605090478 816847030 746564928 810065082 255772417 335792132 462840873 758638885 645476446 930379752 791026332 832761881 785505022 986111993 133769121 551723377 205808526 598753912 560950716 573270588 143942011 243054626 961064351 969701454 101846480 776791953 911677159 918576154 268542756 510147801 64959686 787906413 183413388 680162716 471586622 633815481 881152936 995926510 712683435 751132132 162310158 764102811 904986315 921881342 542829548 624317559 931760711 962764791 788096489 836169585 330185052 930936895 158588842 473029838 130748289 860403813 4034310 982884745 65038867 413958720 278420081 905176037 235122162 926336244 768273414 789651278 853253247 876138742 159331188 905232412 347967748 837054283 477101470 595015011 346220418 573087495 226506467 963218921 560027392 987603181 434617586 888516337 771594944 778330590 493790205 626975958 899716705 923268230 804795559 815836882 839390493 918183854 337476549 746385262 712255965 782742160 396891079 854945817 754456124 758964820 55055667 466572396 882415101 904173589 151987903 626205182 217340506 972806380 919467846 919762082 938178465 973886052 405386919 508639098 390967328 748140783 581988549 827654000 127129002 457213271 481411013 506802776 265511929 915631635 386342881 903503397 61775638 694287404 199487596 697557875 486760050 777385525 596176517 624891092 307050774 947682908 395177108 465913875 886423955 901399435 898139831 973310540 643588994 856014742 952327269 987685888 970717438 971726243 192953622 879373868 136336279 225425723 669853969 688681246 99894615 195108501 318709811 558348035 32009362 113410712 357560589 389543336 841033944 989484616 811861116 873170110 914739228 956484987 737406772 861264201 640827623 645690329 529631960 959883158 986510146 999276213 367320969 368111459 754430415 794225263 345382367 530580217 139043181 811144271 834643409 924773703 16528408 293397224 656638110 955786477 17294735 694201112 833322755 878678891 777786593 819154345 993602699 994310590 699623192 993872331 959440910 983978203 594516342 988794507 107859450 695593388 424461256 626958233 644782891 818775931 237951681 823782658 554086090 916524978 984049192 991004492 927746545 958153770 532726328 701177238 936191898 940053547 145924678 998905249 584854235 857722572 825297925 958167520 433079308 504604259 169387789 936184374 265856450 984928270 213059812 720716982 266470325 953740805 539534941 595466722 548574700 855365570 198428099 324730858 85169741 251482779 839635698 977614251 373606716 405127819 82736586 447723139 7381353 696895061 72265611 561579783 509307177 518049795 942165470 952846141 684533294 952268346 283977659 748693821 837636421 965226950 708369750 953855774 467931827 951015133 989463494 991875420 943788776 965001415 157643785 850217938 855383993 914683611 357216192 456849961 577504143 591371705 624881964 960471676 550162842 631703927 729359049 913111771 383376112 826821300 251018534 302289648 189918026 545444974 466930150 863757005 110095453 256964560 525133192 642387748 4158107 376940947 555630134 605615678 167493710 854899499 675565974 718238721 472790787 547814394 568163365 971917563 591872868 651095521 619006327 652939237 463410151 548407109 781849946 863626863 911404160 911472595 113064788 599948250 251684677 488293480 154544690 764915016 176158226 582477995 562934912 750820078 536104644 816379544 583353332 868425091 405468758 893810372 174725061 460104108 34743774 414049149 726959216 803538765 402957136 687854552 536781906 695113441 641627787 868783116 906044296 914860666 717002097 883384221 572748750 902974237 467039297 707298360 335245198 796848893 983826192 998866824 31779464 580458973 975556956 992967354 328958679 782367897 600528632 608277610 479124370 942105136 377420544 575556969 738794257 866189530 286076312 457203601 774281426 857327216 207504525 398421632 92528749 644385024 834432950 913715469 772135790 859102558 443118462 795518749 570507294 837265459 404294390 807532863 193894352 252197022 465036267 809613291 778576103 863359805 939380333 949221697 466966364 490088277 635062842 724371344 788524539 846492124 883110937 940624210 198702180 687385034 559218956 648802630 695223589 902307108 32757454 222542243 560727528 960496737 734906969 907233084 346992582 436147739 705890403 892246532 221829053 944131956 845779251 963154928 854260595 927186317 903343102 977428794 929437758 962364209 261877595 486622174 543013642 669486504 228306885 423049530 859649429 990093561 596445878 800038454 868806883 983557953 830138676 872647209 161882848 405418267 911384018 958928299 577962886 882863160 318276139 493644057 584450919 942767837 74876419 423784163 166567235 863694204 887043072 951997056 825697180 980014722 239699016 334380751 730273449 955955592 683578787 900280963 147770150 769267425 857946848 970224602 666491375 722392530 10039699 31770485 26812160 424799548 100174316 609728479 571779459 591671041 412727087 653770051 806039337 989552758 861477570 911291370 745130999 938037107 989455610 991516973 661031238 742406066 811197341 875208892 633540381 782866333 951568125 966178102 737609009 852108350 786692907 803713556 702947945 796322014 372508049 944182644 199988825 513853783 711480480 862179736 189494436 623349419 115177811 449285315 233940485 538993120 997194665 998094199 714726631 751224163 906871075 970964816 66781140 344912611 930766369 967307335 956826743 996492081 698474897 943633511 499687685 521901200 431280775 905587300 696980387 854826876 170304519 992565988 785264124 882988520 159286967 935638711 72893480 248556646 285156060 473684350 325141696 346034178 395589189 910765679 605895191 910232433 163665301 803233461 543695390 977321614 231144559 327657171 738213245 887441944 405875593 765146811 897154094 959899866 69378210 760254010 237190699 446269842 629419540 883429726 671292501 713801937 893832519 956185589 943122445 949394175 403555626 777446634 347986776 473104317 238901687 295278301 602405301 672839218 138920293 983792693 706315627 751588440 701966194 809384778 380607142 887355799 916220635 937071646 956499697 962462014 540758652 953470189 789604297 894504105 547202932 775998051 100734627 907218905 829829927 970816280 920740383 982729391 741959402 834035942 6667017 205134397 610726350 768225597 72142537 970298633 186438390 922295798 461519433 644349516 773720315 878162635 768635063 890905567 196451632 840348143 798802136 839785162 559095236 897753211 850788008 994867416 82656806 404093321 493784688 557396887 568440534 570427372 125980708 551457462 34443646 880174738 251203040 663059926 718388398 793869068 277672392 778323910 252334901 578096164 413540402 750666830 867914669 913688161 111490368 606580839 301883196 474899107 551259928 699079820 161286674 541012254 603748618 634737944 904232088 913828507 35023232 758414767 156955463 940618896 482483240 645364780 934020422 949526466 349612490 583628525 181835198 215921398 445274443 560282248 553158182 742971213 303737074 345946800 584999520 726894458 13626208 930948928 223814287 452723053 666800127 812162755 957005080 992438703 135118963 906671215 505574565 878631777 226884952 849664697 471695919 831800231 284524014 683073722 880189554 901683707 504603930 636725270 70095244 420227733 683349247 704726487 507426070 915114288 478742036 808850765 345799031 441414250 595973304 857069565 563889844 836294906 562502012 622302503 38712678 290274488 266669825 959393911 847310528 892797334 402148952 521626401 541795865 668120671 749523426 887111182 479855310 733519937 204469071 691329054 481147624 521859249 294578491 670300049 923049011 978065213 226157471 771757727 431959531 875970768 734252053 905150149 691592180 731636790 713309436 778044045 922034772 946713701 644010461 803037164 375939802 949621358 597641960 867180685 240534770 874000002 248201894 334789211 97799182 667239286 936116067 938539844 51976334 418376643 351352900 472309138 709067227 964090115 250878558 619266571 652149454 851688617 659809388 673338761 507559772 527935206 385290891 546274560 449693277 949031496 520686483 923647395 795038516 973484899 48315167 434697921 231028932 855724691 24955410 163064223 740199989 895784984 852860154 994874019 356681210 468250032 310028667 994071603 602307682 691235092 740603950 980667621 161617498 221364440 604774151 963480748 76739561 657780020 487021905 490590653 847368605 894721742 198811578 778899998 157685970 218185324 242087870 870434190 512485449 788142217 14357142 862064974 84265336 831015698 950274533 993537893 602040515 830489909 917612187 925650188 639091450 749186683 329131555 868212925 641149155 849481672 667642149 952311304 942030955 970060954 29110127 755980736 932334784 970543177 669650987 904924474 287919355 983074133 709049316 911293073 341555367 519100097 136886567 818902829 653949106 870825099 580229442 761995164 438223426 958698069 900292402 938213788 867981455 915777830 928701722 937388672 524928136 747999471 110067179 882991474 874535662 989940616 27364346 610193475 607720002 687467988 536599710 742797135 865785175 865860958 632235735 994728260 503770033 712205976 371861341 465010268 152036537 456638950 170975719 537030835 522860283 584469731 662547253 764829223 874480176 953166250 517411297 716842324 689428283 817947736 95601172 962720932 948031611 955138986 437164660 703009109 606971616 633838721 375036944 750433141 78795825 559057368 427384511 663010231 625234250 776790495 791215836 973394743 195441274 505752549 384876859 540501338 9029179 303180309 849100710 928526612 885866877 899724860 743501930 825584343 797916996 876452409 190028577 587085111 628763068 815121669 899187609 961301832 15135722 967689079 731355106 748580414 705616845 930968540 125410021 667050290 324541706 906778580 704001736 977976976 327112022 927446826 279660216 886435832 524111499 546001763 964400114 966244242 930399786 972345583 729473790 830915623 379630916 743643774 553048706 853139487 222863882 407492377 953976705 974167565 37941465 219452285 844834476 898896068 252880864 384314985 875722748 924556081 320280797 981870935 371555212 592084805 457227850 638670642 482082722 728511991 830029230 886165591 294135909 877842576 504139889 970943534 407775402 810396088 473010648 812471619 721943816 801904543 538990983 574377832 987430070 989555898 203946049 534256896 783413378 936312135 871184218 970333441 242757295 960085064 226385500 589933973 633107663 754673601 427467852 704345814 603191257 869880074 114729744 957573639 95078454 927120858 142687757 357352214 101200851 907034679 866157696 892313978 262462940 391338351 586280016 842157303 631356780 906311383 972040960 977520729 927563050 933968297 769197984 873826812 974833322 984001900 828645531 959059167 866765329 939410309 927234136 929467087 454034190 519906291 8397392 107911015 565193271 916093253 386335916 476441253 741166206 916625863 566448675 790866072 273428377 624774776 838809940 851402428 677788198 684364525 924226593 978947634 598381179 726033376 458620868 588787430 956942262 991185536 565250497 682262811 308317268 984131460 258103607 485268200 509939739 985948094 428949974 536143360 465652070 782634389 184561934 948401919 558829079 795095213 683558961 976415056 23722795 803394161 845750810 904850115 21015328 122514349 1082770 722126605 395917136 696717876 819191973 844638225 786569679 875308266 548702729 888878683 913332490 950153002 263695818 720762441 561918799 700227895 131748909 143738340 384183418 543100364 450516828 920505445 511124218 973720082 329543815 715492684 50579820 387612540 788300457 894953875 952681434 959941094 967034787 996772015 872255159 975706792 327058698 582578750 546342751 844823391 277994974 982998744 687414570 875062979 482978825 953197592 977654589 990309455 117255386 407174714 911753823 990206429 310486401 761004339 954435274 997177140 509219219 637485867 852325969 881130118 837850288 855509793 915328346 949129778 138149404 183612824 246481324 644244064 908569988 992238445 631977922 743897164 560615701 971872929 516833445 905810532 84297619 633557806 826641247 928153575 947397805 970204118 355935918 540082060 544728402 672397067 61455998 714591598 834705557 989979701 22068930 606166833 170671028 333566400 486424781 545302682 833738738 984105078 856653665 938192348 152119204 721993171 414869051 857286724 704972770 729624417 655622127 809222959 61795501 397034477 740738385 833124079 738746888 989166510 487554538 882695017 70249012 89208520 466183104 956812828 334250872 603048036 163568358 525215294 336561870 679151844 936475553 956765114 269883941 884049348 771160431 792748282 901891607 979087591 494848589 599999373 827967748 853307920 656658984 809603937 889907743 989179102 410100468 778190690 866714992 990026187 286158509 596376252 737653142 863352160 732493270 981233137 867933052 896012913 183563730 620059383 297365067 434622152 763080475 950093927 296890705 760979311 405330006 503478502 738730219 812871789 18263101 973529375 372332398 703187320 453521306 553566674 61966703 342229185 127375680 266741809 497864170 627914026 109535031 693698467 247803033 339869097 342490525 784046408 965857019 974576689 333083488 612062434 188578324 591378847 672116698 969075584 77186248 225565722 58521489 419159258 292539517 674444353 126208110 822672444 496522466 558332239 205675677 557762344 209465748 256286451 607337785 811277271 821588396 829367834 183705608 827059262 907413782 946494644 773845871 828082700 508001198 595967340 200263091 424274350 608216249 884348824 113763916 325953251 913532296 995101748 397620286 579460436 185825620 587756639 390300864 588679086 214671699 566723109 929519289 984579574 355630373 979648191 101617522 838852432 7493807 642300410 521666649 543994798 406470072 923943904 529973605 978741878 710326084 918273061 624977839 711007716 96115762 653860894 509470713 870727027 615720852 943362099 503734870 824035025 679464964 937272328 229638379 513744836 615561004 965250626 87141071 442605952 402841899 487830630 54779500 330854346 589699526 941348518 137341742 789965054 808065574 879008062 370831307 945467711 184456313 364624320 958285990 987813561 239041824 723841415 561218754 698095677 330487954 963904107 369748067 971950061 66226347 509564547 836038709 976810764 813802436 887955637 250390133 660710240 982576720 993225530 930532263 961902680 862623316 895761342 892230564 934243143 639938973 937482575 788520675 918363696 396232476 768648570 663154652 853217246 449183358 915389452 367444146 857124341 341095544 981209870 498995429 702484716 352955197 707887649 85871536 363472810 380826965 469332990 257080351 526237202 522040936 938485856 39443381 906317170 874696289 984944653 192927284 618453161 763085549 883457475 242578046 506179431 461016012 543177188 154537252 983732826 201541592 600868961 200167898 497260996 832541938 937640628 412629037 416823860 376694013 569080124 381147642 725786009 949286719 969035339 332783826 506732535 483446094 579562060 888213089 952170026 347440364 353440524 521213272 976341907 506666880 564976654 864720611 880256799 647767063 842887792 165887379 993906811 333250683 637285493 513478148 840505181 9741277 742959336 774653686 776650997 595161824 911502515 927873895 990807718 304979551 664458970 349646432 694868380 978467484 983697357 698635466 801391251 975350618 988930200 861698236 870700480 797998699 873456249 780011978 812648241 118955074 602906604 489145194 793537025 964686453 993809628 26742098 211635878 232312246 333120705 120292707 520886419 457269902 555825940 59047859 810342930 457930825 895127884 925915453 953560062 954251044 996013886 140540499 310299420 326576503 541465850 669440121 824539624 307201419 354072635 209854319 666023765 787878307 946535342 853516598 943848197 782873901 871696210 479882376 707521335 205805741 589462436 202215351 979666533 905375302 935985159 120913465 672951592 822145652 899010733 833544588 927533268 886825735 925515716 999108308 999354938 353281919 565742706 254097693 385476720 72184950 103830656 492083615 867417505 888554512 951356438 131563115 229083603 923535471 941270329 448828942 900164544 868130155 931266303 519889197 874142955 487782634 978213128 546380782 711739715 98188362 926034741 556485908 731008278 294212375 383226188 677104890 848425374 647512419 732577181 836937129 984375124 422435149 434705396 371728099 571278764 903810519 946216325 907348757 929918050 231850829 639304906 385130986 485874876 980671026 991846625 742778072 929748515 128527084 889032035 139940233 870062308 817770 614862945 573863565 880348145 451792902 496213353 984482774 993879074 629159733 687935106 66511096 812045301 333844827 936498168 398965280 821975118 334067489 787045377 54101710 307358419 973730485 990461735 397218650 518076020 304213830 510665867 323075662 627970475 681973972 907799872 803986321 963186907 128777080 604281127 996379967 997229831 423502656 782414748 735547012 981738324 43589178 171171327 884474219 960571403 207372149 932881516 253484648 403771844 203424129 220707481 996804847 997448606 33596498 715140112 441962171 783576882 398539119 906875281 70530281 271876576 151426162 777012554 18888919 886638338 899007886 930242795 134320205 199746371 689797709 994272624 553923356 880764566 100134510 584962342 788378353 866164098 915051388 950990363 792876239 955847301 604906043 792857074 77426429 929278336 777509883 830068310 427721643 924545331 235009975 642607949 743368870 879466427 322432474 355562453 804353346 811181452 383822690 749641518 333733036 773275307 337441219 682132168 428654301 550056833 574781835 677624095 188726157 812222617 857553732 914375955 90652806 889405198 787405657 924282352 764037853 910317098 805009034 913723642 642246866 921825956 438880659 505402446 646288187 793329721 638468661 738231618 755168401 964795017 240218600 377213242 213698001 329076319 746578022 863328299 963988069 966472220 39537159 735227931 68733654 392662981 523683044 538153748 708735859 816113228 962023613 965181284 520504268 698697905 410760176 492942694 350431714 656526111 600793217 694208847 485019853 785753068 449921113 850323292 6852220 268229147 583052194 760346869 514042746 577182369 134101944 233215006 941390485 943548437 980837204 995207997 132678662 283476634 971802889 971981425 838198495 879538130 362785746 901076476 489683272 993473774 315610154 667095219 931663577 991363150 419544459 567337996 692362910 996570339 492088741 669191527 756763001 985057959 78473304 378462285 642732645 768262998 534654474 891566898 288396371 380440339 273245821 996581105 628264433 741332945 155895419 647495773 898685888 914959181 965172946 991918379 798029443 864950822 204798862 663042380 722039909 977089811 543661320 620786161 634463561 823295555 471484135 693266341 672721891 733605719 388265748 874416590 811926720 879113743 116438692 965603059 987355369 996250397 786140770 886242541 984019975 990661395 133683603 246112691 616227678 995629710 769643166 868613045 36822933 893337264 499529372 552712814 494520000 770748465 98856285 970091050 754026068 806461819 604182930 901618762 776362234 925014147 598310596 886126019 541744203 904983226 551999923 834172398 938380423 956639971 311920824 564382212 9095692 152146128 355933189 821555804 128896908 641763132 603449514 680974662 867205665 873920338 874716213 964576148 357684344 964675582 523852668 892063899 413462838 910591805 62341055 149064460 728116494 984895887 757110114 928398918 609396654 661291435 191474839 230512229 277591893 346303561 693542763 963357009 427741961 486470012 861745695 884252688 281415120 541687251 870931781 983645536 667234049 910048283 935251734 992075132 210282687 963785511 305608433 638021995 624179633 730091315 62926884 318310308 96066799 936642467 622518487 674251264 296858958 679068969 196036675 236316181 95991919 346474755 112340882 195319112 916514344 929855944 814191009 817642797 182004458 544975533 654033070 985816826 521583399 643192375 388614759 417116486 211041207 788396766 331818737 914091558 501496494 742712880 743490886 800109565 644106095 654006740 5355318 29638090 189721408 200866905 982575721 995048911 347168138 632401356 859069336 974516362 333581335 645572520 673032390 681326887 3859291 238022856 759152971 779424753 801011142 831655345 191723538 408625351 704590118 967743673 48216366 246577669 800098639 890839434 393689523 713679059 968405858 982581558 899775433 980048710 431330773 635683452 127290091 547293527 828921608 865408735 713083966 772924423 833366286 988758379 329702548 430537510 851731512 870164710 84602181 738806591 15126669 796084461 870934637 909573265 802043202 899086591 609079650 719712533 96452695 605685200 353007621 518102731 310690665 510783163 98440088 862985662 78000692 547363181 18287910 903580861 648312467 880882357 132540454 958055745 807056885 908601552 726655080 986848824 34061381 734546498 307705361 498860967 633017564 997361895 84228408 685627587 39440981 452863130 413617730 494592203 177044151 932258347 861386450 868900438 87472198 195466110 410931571 512775350 893058847 916378400 686976001 775514606 61664698 297000360 67047665 329896064 861219590 968590797 240671151 417131666 43536514 677404898 9692636 20438278 963038971 968358093 384316015 877155967 445689496 864209585 311463624 628302451 668731406 776516959 590462826 833026497 17837687 90202300 23262893 101906716 652418012 657820829 961903311 968269839 570631406 774016879 17548565 482589975 272538573 874002557 298103784 315634069 575690655 884778798 663190817 702012615 80662677 930994877 706350994 905419068 386779203 890706747 396267076 822195408 248730834 477755758 48730458 799571426 932659569 958008814 253147384 564989003 242643982 462343950 161322405 242396174 177525861 317938806 818652794 840752711 471290384 850643877 484102113 484352758 788571457 852690215 743598472 865378610 940995713 976786847 22351744 38165456 682162207 723432477 261748335 472464609 82521248 849804319 294917171 642027140 833729714 902529481 274236524 880282010 482499592 593629669 775034836 916383443 212607100 306109668 391757874 612635671 886626341 979192788 338844163 486584712 670515501 872967677 81228279 777839763 221417123 353578049 714961879 768730965 916746150 980775006 613372745 848900559 727100780 752464698 470910129 531839161 361474555 782645453 107989561 164568083 337201764 721487661 639235540 859324787 720976603 842056141 969577252 983995026 503009522 839685097 393643879 615054410 729784410 917377793 763967451 809208885 321484401 408153724 590458123 858356429 79664146 528452937 836742255 945019718 395470083 678021469 158530931 949580369 106504113 802615805 715518954 772690370 608913702 698226885 4364139 642118672 931713280 971067224 448029644 547592993 522398477 871341347 433434145 845407432 272650119 355090565 69496519 449585031 834880348 859398050 739227760 834538892 342574485 579691426 685633543 819011335 532531840 929684711 179946702 814746474 372399853 375747787 175511635 448124254 884895024 944537629 448859496 754093142 876237965 942830722 216236591 475012142 420356009 650118423 782570693 892659185 802481657 993094366 939465785 946619919 827342156 967535480 431208577 994999264 491236344 492212103 620522666 762480772 921476228 926710865 336955498 568351645 213705757 890661309 868895580 999282406 44199552 601424254 916444939 998252262 272607509 320048130 332843321 624466336 417253840 952932301 294234924 544432720 509167735 972952739 155431140 781089110 293500058 595561500 831842385 913489885 557855530 938154571 691795414 941242621 825108895 953357314 23942527 716489572 669424834 944621660 863179346 866793037 556314598 671241474 710791094 950392281 527248454 862516968 368268564 680954740 33058823 524880656 991175428 994478623 271972629 493881763 212235597 689012455 268809410 670510910 419920318 739184402 481995960 789355498 840443232 846481963 179605898 735537916 624577694 712487160 181721834 258230042 219094736 964944389 115939761 424117964 889394245 979122248 874539204 955064484 466853299 849519390 387758707 799190933 197544182 862286068 145107194 355791438 564152475 890703702 169235494 616247252 366655458 494097639 976524005 994553123 253050070 791419006 110232611 370369538 560372724 681288119 677548482 838121903 444723321 913112374 766753499 850787647 938302190 996184897 493695821 632784996 616708891 657747495 728183073 744210966 751911131 888191217 376683939 854255474 932647202 986789327 919173709 989498154 739932603 803941502 735043767 937981244 507699782 860642907 785401703 893418899 786232464 879830518 445311958 767639849 819619816 898602203 995444989 998066876 197916635 747686290 4130895 932540327 53812489 995475757 347865808 499067416 126179043 493772288 14966226 386055790 308140972 939997961 6480433 461577575 270361226 680014340 780597491 814039477 875240107 914226950 651681088 957356489 375278027 858308611 980028639 994474911 409071324 894994427 370964351 930637859 30740780 443881141 659247381 822444326 2244710 180374024 254163895 832987969 820327693 845732315 487742023 812257233 425394811 770776327 288021947 907988005 771174405 985738598 677193506 946633618 969680026 995399665 438983861 565715018 483113678 830982601 105448593 563530767 23244436 740273952 500706607 815060921 566844787 795146310 207933034 404017169 871270716 978975327 925920702 929245025 220921511 493210849 564988189 937531700 870148609 937123205 818142822 886144650 715055099 797668591 639359859 777032042 280903526 650172083 645837297 932846425 522160285 929920306 247892477 555628088 92039772 627133473 268702575 630375863 239325552 511386625 975305575 977350848 749535620 950451623 72172727 627701701 629329076 956069106 5242696 352068804 600688289 962041639 993476090 997387357 205194378 892664202 412060482 683611435 239113657 486497548 623771832 693639957 245048175 528890874 443640945 664853276 773533180 808738179 700547760 797870564 491057919 590029222 842259169 846357620 491198931 917187428 97324363 914354896 1196553 73883112 167095383 681995459 620317263 815178727 477518299 787666285 259410102 827411033 791292753 964567288 661869838 689409310 457112841 785050757 612778032 712567501 556861285 589691292 930135444 980856392 578781853 609538042 132177790 397868827 726710776 898041957 763064016 875787525 248455771 695815259 5408052 373961181 663630149 781117691 439439714 946860166 414018515 633021916 494244062 510608713 415045435 601005312 517983101 701611543 664976229 732650737 250302003 426584051 965882658 974393945 586703044 750166709 460189189 999118971 811260441 878594758 377688971 901529241 251794363 857594382 322275948 391921129 289575053 906102563 596268753 851267924 92404287 307774918 398068779 799092177 66670834 722145852 329112472 557688193 9510179 650890210 58001149 635438804 312465903 842402116 429399451 680875151 897870768 931712803 820880913 891402482 327254705 990408568 234907846 722876771 663667521 815981536 722983985 872189324 304241809 420308156 569871538 916813446 96560726 927114529 777932961 985802481 833107702 904727945 878851145 903534458 253501242 815619454 6674258 844226011 786516464 876119907 409700808 596647843 448527389 462056336 674869765 915911059 24165217 156604662 272066451 731798478 15076958 542322040 333608044 493659974 464132958 691897098 540277621 713535466 76227660 584140555 530465931 863489865 601485489 810251889 457289559 517318993 547498050 634289327 994038976 998384399 143799853 259879879 105699645 288804014 824084294 994861065 861324479 927524256 497147781 660651677 796281908 995030482 831737001 996247482 894822056 993557709 111863958 171580846 898638411 962142602 771638717 987966258 29977490 47241866 907377978 957348515 443176027 748683335 374797665 682287301 649521867 938863930 683224648 833716529 850417906 881756707 33891781 620900769 736288713 834678874 816076365 947307342 13986832 432131941 509189103 652618582 641557322 891626369 264778862 542087294 321670668 425615492 773168401 796201328 951345408 977331162 472237053 735706465 871375942 881583575 4305423 439032603 689235547 719858185 382953430 558073219 392082941 451027132 884892575 920320691 646835932 952073333 723267649 829344229 641845873 892909427 688108291 863480581 286003311 888228256 812781778 884331204 301848416 955059808 11449136 228287260 43517606 236726506 31249919 43852286 543399556 648195330 223304737 899288302 91024119 957493290 642755198 654826235 524327440 981063566 8713056 872147504 942271768 980352932 573956614 630810935 63616229 191969732 978654121 997838364 318959708 615465593 421305196 471341690 475246279 587265937 615698194 752275198 901499883 982092344 549481271 820674855 558010832 647500098 398889941 453649714 5074754 782917785 97336630 393028467 214150573 870221590 935767189 983777901 630265745 696242004 337830358 951562102 469068531 994404331 908091324 941126165 353216188 366919370 342207664 757563799 20751121 390492925 367860802 672161531 44885541 492728607 120362218 979065462 94618545 516378452 636786591 662448342 366735894 378466207 592457656 811934016 707176772 997236164 301620595 384997882 420075592 917531544 787498339 839851648 596768582 864695099 397881989 731295400 364616645 416004930 115837911 157178509 815218143 998767544 975398363 983699044 159452929 710946216 3440112 218837313 469656211 821725412 407868365 759559147 43021254 325137461 711318170 736377484 603438464 614927701 136936236 934412455 768835034 824888356 465629764 561849473 697212394 897260193 116441798 188962918 794252464 992390511 539542215 927070340 170616401 220664781 118573044 663803605 757366609 910769163 329360512 704402043 868163804 883298045 707081297 828600806 799845323 994830970 950691606 952494952 504119807 954835362 955669115 982278358 530076306 788418073 183631753 501063876 987272519 997501455 143194982 452244919 411239788 713715458 717447726 727694777 669112081 901874119 545274408 858115773 226793776 687611149 258806835 784139255 971067902 988242280 523203261 861842214 369336912 655406043 85895346 493592542 550432679 858931623 475710314 640337278 668438567 755249645 284995377 932579674 246987551 776390152 680649789 823258897 422770368 820364181 814011971 972503381 345407447 928740294 255510064 507090138 60214906 508987581 530565216 809443248 236358621 320605495 382015961 534984022 345727438 579301224 652217811 840566675 28926901 510601503 509460428 545707200 687187099 838542900 534491639 617563997 165778924 458471427 254618638 837344839 734025881 789329704 168770540 833385076 967103942 979920160 821728498 944548518 69668224 386931055 646949125 829649015 348017637 806049176 141298914 725144156 911942119 994256033 402317742 486604561 378132376 840245882 703973115 947003854 850626405 874835787 274300906 401876496 335402143 825464032 970752988 993837152 372249627 632678724 513609407 602373553 886049416 996829943 774932931 791751572 755549253 918678131 948099488 964300474 408201165 744475463 618218035 661950922 348462089 586977806 346934073 454163451 130019984 987010294 903083029 945072767 100618047 866216851 952629299 983388975 569708447 830311494 749796716 884948939 608390705 808308689 960954935 982455389 661107180 859888192 900909935 937050890 141556239 484390922 382384248 586903578 437919872 739367771 403718750 722655189 612187335 933356815 802771866 936143110 892447021 956233186 925488766 961179938 659072234 888052836 112351699 946148573 75497346 777206663 454141628 777835146 75366632 700261114 183610858 351116686 727747661 921653483 995881018 997500802 470674652 884686559 367304140 988617023 294677125 646191239 108203214 203639112 594689841 802173356 110840802 637542618 723103366 779626571 392263020 943377481 856330211 948137935 259416717 410958563 670406070 672349957 481043241 603001632 357305670 832930263 177962044 759434192 17390051 53173944 958796303 987651745 372457840 479218322 12036104 969961438 951281554 969914047 176715509 907186529 657668931 759802971 603307557 927404281 55528280 966609201 604614138 846103945 379703431 431693278 893242748 962271314 989583304 993449646 441349681 992288437 691702729 881590579 585231427 988767663 2953401 653253326 881433170 939317443 70279880 385661789 154444695 920935511 712129346 827268197 854784835 877981324 754680556 977071592 594658038 981160500 202684287 598147893 977223920 998833851 33631214 182681324 498488855 512389569 644897687 745541421 261889342 660660225 867399861 915785274 106249645 150980517 780998101 929928168 210132140 633171089 918780659 971215428 483128933 517119788 870358404 939719681 517245650 774393101 439095129 629125304 318641828 917401234 197413659 580984211 997478129 998427275 312118532 562948029 23050999 103924664 730483222 732732389 205435343 844182295 293707415 891561615 739209541 752604764 660656765 944616423 943613190 985122559 632935763 816178081 242185179 649660794 339255384 816686742 747154266 938798507 327038745 331879132 259432088 679598311 843420570 909581757 518809898 968490411 916998714 956692585 167189167 903111853 881489579 982999586 455757553 611790364 447655736 496202652 933795051 934810334 538154447 867411683 794604010 835079125 499222898 954895213 533191149 999346789 554161050 913666281 657595831 808532588 569726761 924023223 628149724 940541066 651687543 747772928 130938590 268962966 319610188 809939794 428732344 855448567 450243582 570317736 121207319 220265626 802367852 850968731 776838453 806909234 140123029 775821076 39097756 947631379 351314916 484464515 79855414 636519771 592232706 702516709 398992644 521520090 592134187 702520941 69528842 709617739 122806377 971630090 961164935 961734176 787709579 969085378 205501825 837317039 682218309 798504124 417491059 806078131 142360196 930283210 338707141 354042455 47305576 689852713 15619396 987682414 123309107 971796025 714140195 800522182 452399406 665273003 280510022 753537494 684518994 996073503 843958589 919713176 251408341 985121832 12307791 382037486 546308421 921700848 525710040 816452878 391220169 588302440 510822535 585981614 286870854 630067964 574652572 924436983 241698818 906316963 347929865 724131140 424187516 618395852 517750823 580141470 88761959 961913268 630774645 818323780 509266259 975442479 174687337 231647450 811240124 993331703 931371296 956129123 520554307 679790558 547721510 644247391 574017822 633337672 642938534 898101281 84663365 669296015 124029725 167378610 38226502 431373896 776252949 890898319 632455316 971444264 522697562 565472945 117215224 860243316 956020530 975910671 419135227 663247650 988076449 988877447 849909105 978045173 166042205 466706838 122470676 222780733 440936133 750433888 759184058 936421075 564867204 764327311 161556287 192612514 877898799 933261516 493146411 792049824 516453342 942076721 708982654 906255379 655281471 832311292 565059064 575571265 774631754 885135438 44082332 460307320 874775965 893828378 605727967 622671866 684341110 861210592 72371421 728153668 503386716 654447352 378651245 637385208 285778712 612519039 178018708 205504983 624291034 632399298 861950416 876964590 921844615 933052931 44798951 240408259 760123208 983844925 561889003 629680148 111062345 154311407 205570657 375504010 515703901 740384809 144572102 885346167 818869154 945658429 576358272 791798217 744508565 969351155 294042365 442928182 362184615 378736123 504574204 906271139 407376837 791981481 698266156 826639340 324025088 507756979 197342514 752528791 55701315 173005325 707066291 984942475 25526556 451350806 906662605 982672387 379753639 782752318 219201924 686983607 249726441 967756883 996998818 997344059 746712092 802788002 524286738 832465502 666886416 735061661 245230738 438552205 746919516 989691833 951765285 993440607 473229487 936256333 53711367 132624519 221252105 739786727 324510207 810789097 396110405 520721338 777753637 885687322 970836146 978187926 231614247 577086280 593658786 963370038 164380891 904028855 730154518 832772396 101463443 678204839 295379021 466022215 61546453 293142199 549564820 848569204 290751245 778675447 984726441 992240528 219190343 635882517 531142159 937670066 939296805 994795353 702833318 950816967 575870919 981452176 619775533 789204160 346823688 949689131 504197782 971493705 879046273 897770967 887287735 996048122 47860901 601797417 614650883 777891973 130843859 326121805 171591259 577250589 210235876 713127280 228896094 411769298 551484404 972831785 988480512 998968321 106519012 582205039 278663747 333553827 795967058 887632890 418303583 566140563 309700216 538551167 864169319 946920556 286804228 586883205 287558876 437729727 408418524 546136891 350032288 531108863 902615331 915320075 415335020 791139586 464296972 670755591 918002838 998035400 347805274 651033856 434808365 894564501 362361779 662678127 38945202 809384872 342118078 899578190 896184750 932562255 63354566 166463975 216134163 860773611 338050010 543347782 595347584 645844992 541434345 628144277 702463031 833979305 217806509 714129509 71337999 154685509 402633834 860586379 272222408 921472384 966657920 983662384 241056683 625455595 396196308 554302942 466641409 805190001 338023794 795963284 830859755 900291917 114217264 644036940 659731282 886942816 541116398 669520939 424251914 978495406 853535089 905512924 458248861 766721842 912644422 995629667 673313005 767617303 30083069 669620632 324215906 409362767 369875606 944157984 166844852 846283646 513405783 960308190 269173892 398660932 930087820 944095201 613130335 617549952 683422754 971556644 797244840 881102989 192568238 614138726 205516103 274378455 246840352 247590424 126647614 478313825 151972269 649571537 217534836 688102560 713581607 934810366 59959229 388754679 860300662 871189135 313236091 673341802 987093249 987828315 679604928 703308274 538881000 799424391 249864620 687579718 504179074 808382720 1317997 259319970 187199962 813423465 612972778 962411644 38457721 591898218 220816152 701415882 453774435 701449925 378129733 953622228 361252934 394671950 574670006 879808368 579402725 630967980 511353965 824762256 422325871 915993000 51731279 67306849 339881670 927026504 798321343 917857683 247524681 457423401 633422 420735662 588764362 605434443 983861299 994195043 820930725 994241292 310093700 466144961 575255953 896864305 143300646 414656548 407333787 871704882 937906851 954839113 318160640 889193961 560327640 895674827 23873409 990178580 116877922 530360980 387882604 910031046 286575961 490954458 576066563 970917683 271589365 892101216 437451861 906181989 343798967 374423160 383984887 543481588 543957896 911289986 621982625 664244800 944748926 968837950 600764568 807095381 518542265 774967632 358701689 852920836 160737349 499899342 975486077 999033164 400202197 593121469 751350579 996103145 366568585 614589929 931555966 989920620 423181228 723348611 884678562 933511899 580938757 957243048 616629708 979852420 10812907 713385713 768064226 965673760 904010289 915153731 56494890 224239009 274707858 714626940 703841532 998001601 756417589 978253538 716848799 754064170 228060270 417712520 39967052 59779544 48184905 121035409 375443255 386916175 181103258 443951325 219467424 993098478 782786656 934454925 581080576 875845401 707324195 780874833 245086992 496945803 565059332 976100560 578508172 818939744 832504591 923127930 733309162 738092989 363808759 975263960 267062657 639665323 982805323 996064449 808306038 861091063 794296389 824241311 364197801 487135494 625061766 934917451 718435942 890381364 285367677 941149556 20037414 557295531 694378262 918732426 683892224 865043832 675902196 959966778 952702666 995714199 150433021 410856408 979427601 994218388 22984079 916934690 158132776 643768260 667425274 742170474 417468443 876376204 538148190 708404601 385358217 466980765 40677496 330566368 243141325 247118588 213444711 789976911 903860294 944335099 610409007 782314900 608595815 807439939 254942075 560681125 628918780 772045422 449339297 663104672 542632622 944583317 885707064 935707719 119405521 945067785 387216396 625123306 462770648 915673742 673982981 978885389 625154651 779494579 772543779 851403339 111897710 127868546 57656630 183047133 853287358 928579504 113191414 436931148 425131087 732424749 935191102 948629622 565709328 795334888 401803188 506692274 401507085 903053808 694718292 779406059 361735278 655565554 297073237 546819240 18548777 853431629 17121312 163212455 8289566 551132269 436564973 735483122 962162649 982360057 202529421 257486517 685084721 685343993 878322676 986736471 644932523 977208001 107717973 386665482 857139163 939919985 744470773 854073443 682178118 957518947 861688675 944645921 33099324 238705906 158093067 914104141 842879277 872087126 321690248 804423041 438532172 972468018 523109303 936284460 384619891 536061201 956333868 960149236 327823586 664815430 766144418 942284212 218929128 409658672 728273234 825338337 72376331 86327474 859180290 958316471 741539916 863752087 579720646 932384237 712544737 750771733 1223945 20353969 338472071 384316810 290972528 316069606 78276010 895287872 676370 473163799 829045584 865025224 432609491 979809111 592391419 631248727 694971156 954884885 519833981 545506835 513836102 719851681 640547794 668110479 976450783 978895730 210241617 825878870 469871405 471364863 69378176 270756502 385682321 608565708 7591618 775464266 707894684 969012534 122590242 516642568 941600987 975484566 278945209 648623501 145070727 780088367 938919356 960038749 701490128 727999879 887606334 913935356 523127021 780976965 258950205 471576380 717477944 838733488 30840710 315805084 216370836 860299746 783977516 842002594 703959579 785287837 577296492 826513741 763410093 789085651 40440476 507253140 374834945 510004142 875359170 915604905 321861049 362691817 941783372 954947708 758448667 769287203 615478829 846122900 631767878 723319660 687483399 817177548 124779927 738449781 570502754 755173252 465101503 708267860 248623827 916626246 854247799 998123713 83391178 638305682 671938491 957831386 982573834 992901084 859678652 864437889 295560523 456471129 587983455 698426355 691006563 949112983 648807878 774115222 613806678 897201813 532996614 804009166 996205984 996386381 735720234 990150273 218785171 906793463 211914164 958750521 539335304 682966748 321168317 761130538 15283585 290987608 403140723 651640199 180075974 392353785 226046883 463990870 892845880 977551305 934238613 962690747 889806425 934363348 83210378 596160814 217264830 219676814 313150023 590329981 663989693 812406286 789964249 834921306 264399003 742432704 625327689 997405420 193707413 694117851 688209301 764872132 812362828 956337767 109447125 536904661 875458554 915034637 258228381 715605216 12254092 472903512 487834823 886340068 249509946 901919242 601514000 817475948 806828426 941017619 351295874 739625313 95807423 367383489 814442845 993540063 372050564 726918842 54241819 719121597 485074659 584888789 853032535 950385114 977784526 981975691 381507395 685145519 152851509 343597718 631081992 695706212 332185643 595149980 335831173 861085868 250253086 922498353 415919607 759715218 649477514 938457699 14239934 340024643 33159354 173158451 506062731 875378309 414852096 744712067 833245379 872124551 975961095 976339891 610942540 798718335 238959051 255590526 638384153 938940903 367119102 758262969 563916085 777438706 673991727 802075275 292576509 512348427 691538750 944312963 42040960 471560904 333951682 348673343 541278671 618095931 214273276 336612489 823485947 930996303 207530977 826630246 681227935 963004257 798527840 953098323 353604863 376105020 604074504 815533102 868395218 891080136 290613718 987420318 633141001 686822571 847225150 966246440 124704781 849029628 460651644 714557433 329895092 336693300 689643054 920284670 393976192 940270135 657344742 721970554 842437187 932578625 438299525 703412116 188433367 395065353 703005245 929340258 435553553 529265585 497626926 511043915 374417121 588406966 905363849 995674830 197686699 320276013 563786830 624100823 609635803 718941937 576547741 630902440 78927467 803841734 946958574 966523509 684176584 864899954 501234230 538214432 130040514 616555031 861473210 933501315 193283989 886038158 341314557 720090538 18809697 925833136 247811889 714252307 366291898 546575001 188166858 875281800 102696243 423478004 315793052 742819254 962851147 973482385 650505241 752324722 59732891 241016950 767399885 926545111 375848633 968665437 812478236 858135100 544620734 550988834 893675274 953365925 824427630 938030416 653094795 660749983 968859691 972861215 276368308 468397473 903483615 967539113 681392547 752561722 747812750 930014757 49603923 644023188 31757162 763620327 751755809 994092439 772705272 872060661 44473965 533741028 317300804 747149922 899185200 985243938 756327262 770423313 71367570 596158720 423592793 426385490 632983005 857117668 518094350 566531311 561337289 762747492 768655909 995305053 949998327 959404872 103431007 643104875 795444300 897244045 146570203 777807952 870974153 981724364 765580369 878835636 146107291 575447151 211493976 513538633 375914682 577062041 746472505 830884658 852089292 982528278 581583840 656498967 105661471 868890016 738976371 957344482 453906118 515988696 542644649 568035008 919884496 934030896 97488342 522555093 95433567 566730631 454524115 770480290 599014827 875732484 68387701 924097114 992327851 993684472 588539318 647255533 723719862 875498863 542335297 884561699 797138520 980317682 204572663 513917121 867872537 965216661 328053407 440348761 32848963 60010682 784013715 789947772 349557486 957001161 423977243 494259416 71446535 498106870 960650839 989224692 356257450 852187685 219981813 774718590 354313223 611167252 389743539 557915075 716096599 834926407 561760987 809401099 777165067 801259797 801855863 956840505 277162732 705043085 851242080 959681970 421324655 582646643 355831164 699543178 150268656 737717191 735511292 782399803 518865709 735249044 377813114 521691496 104572721 609120907 453584888 515610056 808577358 830547677 705054580 770546876 177371147 798185792 273553766 609214959 182939298 529207940 69077202 649216257 948470714 968086418 498572063 849746516 851328415 890358516 783611134 843704822 117365545 246930841 125486775 953082194 888865312 969375941 310952831 725007530 324305265 386230015 469686035 998244304 515222565 946163493 642453478 793081659 528635954 976658812 611064995 653115042 258155446 380498333 917777767 926832963 662539544 976659045 596494072 822809133 739279512 781381040 803368269 931969257 546002683 931050888 305711524 321421865 277272658 772721778 735899877 931796437 27452589 470514334 686391426 842827013 842181766 865484419 74963174 414546647 746291553 987970601 615878038 721232967 718498013 802353440 469617504 914945678 735001015 790268806 419790755 926139317 257502089 552380859 560224855 805048950 705946390 797233678 489427625 720143110 760523189 965951845 845322244 902849538 560538583 936557985 720505205 835790096 319127961 580865247 33440120 881424853 339962503 946110884 33395066 176134747 331757937 747696244 796386829 890774373 195942152 316048510 545826767 909284514 892425377 975507167 695708024 918033630 809089471 996678245 23825551 793319397 193970037 600771925 752226803 827162543 977884302 999208365 153486816 992565315 799459407 961327645 310755595 312188626 271012336 417018603 80178682 540660825 197476678 846830368 264422356 691611200 592883592 769823695 825980674 936818192 193252376 676216963 661869291 734411477 472189635 713053652 234160323 878937958 412561597 671278823 351478943 474233535 238103303 866394769 275714939 548654127 682612453 823166608 108489481 415369740 152281393 871943550 423690293 824198163 290635789 636117969 202202999 757065999 451108528 473957975 801258001 879145794 719295831 724411364 62710746 814546906 631979252 680574752 943005623 950162783 261057712 764713296 812453900 875793458 245518128 611154621 909617423 938032661 618482742 750068108 233879147 306599185 960821488 995487669 215980815 902893142 15958679 808435115 358386462 420083856 98623958 812642022 670986059 780783891 805607505 892475610 293037223 558498310 659467431 993720683 750359228 926966669 699533174 809385860 893742814 989353707 693233259 888554652 15848315 203273605 360830364 452287557 973321463 992120844 584507222 949847699 446743362 785653322 453660532 838154075 829489599 964939484 670110032 889280424 421488971 642337914 488025181 526202970 131867017 756185046 5514923 810612949 904093480 960549197 24035303 24788368 886248878 954038862 885904169 963009067 766196008 845116267 480712920 644471276 815069631 863806768 647602811 678868653 910921448 977646695 312597595 391032499 699744064 947985560 960149051 978764833 724814989 896428993 108100691 827419868 639302728 997984125 812774290 848684697 324898642 565621389 309020821 432683079 967071008 997135562 908151979 971587033 687987232 785825863 491922188 756504002 645926955 717183878 580426184 949394174 929353708 988100184 272246457 896466077 428451284 487966522 837177343 980516239 739243365 913305289 457185728 687027072 5096144 675968325 30714209 627036011 1651655 701363148 747871517 788049671 498061338 653392819 308550073 979206052 921368930 990911604 244887327 507022083 700353240 941992705 700520233 761543071 791223499 874973916 361229821 494155357 147260651 456934606 135652612 297000048 923670908 927207986 456848375 749168107 515499181 707828055 557556812 800368649 302698421 653665586 767149688 902940251 274549200 453746823 425686308 426686465 98332668 253014208 124316936 947370295 221547553 852499974 31123400 839235939 832454731 877942853 971150929 983036123 160612943 613635668 483312749 838432869 367457465 456428509 440626900 616661359 183771350 230637995 826714411 917420811 491221755 855218579 818356521 861862602 246169907 813960905 140370415 769620895 43056110 253919112 521072249 646637642 333322989 647821308 603031619 970917896 938068637 986195426 901148791 926279896 615453463 768188597 523364946 948505808 128244402 618841862 527515385 610679242 362543114 778237877 299400571 854210216 517272907 847609596 479732453 994953751 362369617 667228998 158186049 905512979 225073163 247239078 149957681 867280312 749574319 822868363 639492018 663672223 458214813 519129580 445021878 789718313 847658445 976228010 253358232 625811018 930103971 991942704 864316284 902743535 850102828 940390076 426232864 545425186 992932800 995277531 536486177 537741022 411456417 596852829 347444472 469823526 647551430 949308518 303724372 930522286 565987003 781267289 900114783 981698645 19205133 203604514 174427303 508575394 897905331 911765438 152659283 300964442 545349894 700251154 102628644 560174464 209370482 984411022 913493412 985588847 989951580 993579381 782808679 980692880 923526265 988309585 173570474 811019447 80327201 698567689 948331455 961546254 233178437 940373089 168556893 488761768 616535259 992741551 122029169 772423953 255275978 835064111 928640483 952809426 126870896 966531189 931027163 981969112 448963968 798892197 628488550 636251635 379080011 751476182 870156697 912790469 435860420 522717403 14503618 869053451 324169365 675279042 562026665 668696528 558993057 795981581 180369906 217019236 223649000 807693772 250927981 271505827 601543440 764666329 804619083 982766181 548069200 713521363 623677380 816381898 53156841 982179096 113040868 298182812 869904932 977422471 305977336 485981558 905063741 961045360 770176518 892499791 463166365 478529369 585325406 663851795 400739372 996577011 224146822 558281179 769708572 898439714 254258434 278966769 132917570 247484131 269449615 760947388 263853488 539287633 854439152 942381677 707722292 962612117 303169821 812144896 853381348 893054171 564880670 916569407 11489952 988026162 744970657 983572766 70171253 861430986 218896512 895444604 733289730 901910033 484580412 962041112 68395816 487336229 129472683 216671720 809541710 910494985 83205228 401787873 479250022 631501634 114711702 185851440 548059384 780663373 997245170 998279461 741272734 868158227 431468736 725369655 762849503 926260980 883159938 947719026 673786136 810586404 332849611 594831603 505864487 677791734 994087911 997143041 660387890 879715805 774278490 987215643 63249107 413795601 854927823 955028496 421134841 965132159 908035207 934780619 350515011 488036396 702265624 767839104 587745952 700187960 893142079 894797044 568800493 895412370 606321384 786213383 817343377 836559089 528419399 649006688 624473154 706811442 963807946 988369274 425065261 763116631 169646925 320482593 511353698 630710335 592043582 639717920 933850976 978894315 920806839 988793288 436111082 817028056 33698270 692107544 709714058 930139543 749536627 885023294 137972348 864457955 438541793 632850566 251538579 461024814 873215663 920960683 299169713 831431941 236267717 697341534 334417986 422487335 136929778 579990020 441073343 659653024 689042467 765690850 145768971 264824044 189683271 819385144 164204276 498940750 82758005 312240880 647646693 983048023 807220380 823187519 269756556 459656797 554248614 905765599 237694450 693502130 571939656 662309417 493291402 923830903 672144593 787223178 965242300 981092876 683605536 699961175 118867566 306191546 110777159 343542695 219249407 234390571 223607498 365496358 247301232 537542054 101666790 346358254 938284552 965070104 927404637 988052517 738326332 870919748 647420566 697122900 575869812 972391555 376294430 502630054 355956479 706989858 843298913 850921680 40799909 351182103 278478272 707964686 830315150 882043273 286013941 869363105 577547046 624548550 736019900 891339800 607542065 659452956 584623066 733862137 190219438 503619545 779652813 955745700 901692947 963581933 466403111 697944628 783507692 942617792 475252228 671561623 492191813 861561710 353161089 564694902 468450318 947930669 866260176 925806965 763590100 818311364 520758060 869330024 584451371 862093290 446133038 793314679 656866765 783667096 522131325 559254181 806135738 845552796 254021424 347513762 449705527 771760428 994861966 999260496 828445923 957396558 227608228 675116379 177226939 559224895 881774860 886849626 136687352 557866399 813118340 826204083 327217520 416629052 853936615 973554397 373392645 722997258 309988797 952757778 736456457 930228897 275224119 333538101 933893281 949563464 17177317 846284712 500465826 775946797 772028029 812041590 724464359 934941041 572124997 921673994 547504949 777037613 722437639 909251727 52875407 812207239 317466937 652434272 91120891 790034084 105705852 897026938 977552026 982566779 717024112 956818731 308813186 896803068 299228493 331615171 997264557 998123912 740521806 871038358 667082860 851445504 378553897 747214794 664206242 974752799 565653172 975826187 354231145 676368971 677802378 775597641 977981997 990942822 28079078 52673177 667856605 922962806 240214250 745509250 844382377 985642509 602142124 928998609 75962788 414249898 245780028 582841324 292217834 824685584 46138199 973974442 421117629 613190534 221936583 441426022 51538270 925093226 521986276 619766453 931318137 970063138 281295450 984910743 688539201 690163277 963397095 993366839 545012899 598323444 137882893 891007045 951391062 973606728 710604799 820761856 309846263 888442430 13827581 956489550 237219043 672796063 899654209 981936289 412916413 576583333 571980073 797712871 373886311 644135843 916756933 952920964 721013099 998904837 936509218 992995822 30770401 748649758 149478693 510001273 45634813 946669885 187858172 716465509 566719014 650686703 795997954 910454655 820962982 831836796 997703127 998063992 395366240 533553036 225879191 505068242 451267083 826100416 304398409 699918476 254835844 300441050 742399477 866763904 159693892 502894610 452479275 868335731 383918151 491010313 116528544 843473760 932064005 952039636 385401060 828059229 329655607 384355119 794097307 808856757 311112156 569863058 407177161 577548882 370300080 880837592 110764165 296573764 232332509 425453401 80138534 173393274 498246485 698787649 684866106 806781173 818798381 836470723 315347315 893877910 568291733 998454521 312608565 541686036 516629807 830478682 400658727 745657298 262754668 811576758 78211815 860734457 677659284 975072937 923193264 938582470 376319153 405803180 979752795 985107723 347372014 778611315 513004694 736839672 714507542 947998933 47718254 299582475 656459866 941490861 479303107 535076142 280563632 960817280 165031963 422271385 23646108 746009370 648398726 687091757 294371048 605912547 173506559 711730027 547443451 549029052 424477662 478865557 319450446 506806233 201808527 987646136 809064638 927626878 508272931 731391710 954527056 991260388 756272514 875707322 691769197 929310179 477395276 798894648 994907942 996743840 681204573 871073031 320376309 712409825 385295192 527518066 730771460 970712904 414507822 572524453 457613765 570943319 966456614 988448009 609938019 738879008 117042137 698208684 643117881 728319252 215766569 242642411 826192341 942808896 699410332 734034898 511903313 641316976 996988124 997951995 658056869 722748206 690165217 813926437 985962191 999072415 602437788 610700949 731269562 809174329 784165752 836086576 281245262 998474215 800963059 923680250 919162884 945274985 334490052 694195917 965576523 968424012 946346217 994149520 421531216 821740503 694276590 989816224 944969253 969311884 256801037 785691440 112340362 358790677 591668136 951315178 107287930 836478016 754936868 879561959 276498478 658948283 477377341 643113262 590747011 676930728 469136482 923070431 78894458 976416432 975960543 976601559 114689155 713089931 49650602 731978626 292665247 391093240 858724052 874676827 587918330 765781064 932402103 935538647 818581552 899109852 188542278 700655436 652421738 799041519 809667897 956212955 511798776 970308151 153727610 229282391 931043703 960226296 224473870 768685594 28260474 519112818 996672862 998216419 475861638 859349916 817635944 826487482 393461712 552823439 952929575 971836741 234003412 622755577 970440962 973742330 103347224 293505273 381622639 421758146 684681265 754720770 373673941 664388354 262450164 865112860 546216628 573160059 419410245 661765162 627139223 672613069 972147370 978491948 44714535 256034124 588023347 916573912 106167809 483169166 99717751 652647760 325135972 557818547 130042526 924832807 701441520 848251910 664101044 855440245 313494545 743019310 501186474 627066299 794024240 972041605 648559775 825206852 342321396 983422676 905780673 936195222 177923541 370019488 776566180 793409324 286842312 784883030 721366547 936845012 995176964 997389390 500447757 995801084 138282492 674352761 823213759 842226095 678941666 806003793 474260555 814793525 125723895 364916282 11454292 685205509 195996879 640076628 649157308 716630774 614099809 895328672 21100497 796857186 600518586 642653105 902922844 944558907 485776949 674238437 191819204 307555434 157236427 571048879 405712656 465816388 363312621 792334104 308705006 844763005 164743039 442593437 775147039 851978258 707434358 917944230 825281795 936248089 53276176 971660802 248214107 548814936 179302525 335653920 973821621 990418860 199966007 413438956 395458993 932578103 633717154 982761556 35652938 677698780 172886847 250641837 81582043 993845637 702148695 749523848 175045838 672381445 948434706 982304620 758174670 804069679 263020602 705982600 895287501 946991680 235029862 699280104 172283400 527531559 302520033 608290225 480930353 554335209 771216826 936063056 499792815 712002147 506475619 620830572 501799015 642995174 788802840 853936016 75326893 418561404 494645640 780182044 534305501 981733865 638297581 758761772 287981345 391169406 930187461 966186946 268115654 522153707 369997447 618579279 120140311 914035670 290906945 301434788 537390788 800213457 863306989 872844809 591365154 694440391 799695325 934841518 35351993 811560144 350209301 603430264 897202338 905731391 173861450 477135438 445661157 489758621 989708486 998110413 587315011 973137506 582682942 947105816 311042503 531677589 350262912 851007471 753825287 795871287 139425984 453910545 321824524 713115922 813460124 957196057 835017941 941599785 873793517 925752634 436771443 684654355 898109731 959243585 135156616 155992632 736107130 901736839 587909817 685974424 477358652 637888676 37710277 904149326 711684609 885696452 597315669 813420778 982551363 992777616 88691026 672703696 218680188 575529530 476750169 577510275 907054817 962212155 985791718 986537778 732813807 794137964 517989555 695170594 921984377 941582247 979785206 996081008 631081274 985691366 823012011 905500804 92796974 990837189 270334588 311326156 2780691 705339136 964334856 976052409 25445433 202316368 434360192 672831927 739036590 903876426 615454947 952692110 490908994 648879711 736394037 780001825 88689251 732801625 565023730 843393920 944330743 951168329 8011451 887930029 941690230 951845657 481548371 525236328 35255698 818890165 752317623 758324383 919468314 946480948 504097551 807891877 240835388 287982032 892192717 904982247 815825401 994003760 959818444 963112858 631970833 632818045 388521283 647862690 713360886 788674724 674892779 728939159 488694194 857916159 55093468 707159910 722655735 962223510 57978996 148427916 781406750 979703540 513604615 770628469 722045924 882800048 61294292 663385820 958687313 997969204 440339363 649497704 487471372 938069965 830822788 882968035 171118922 321804629 94294976 981836996 330368245 802664202 521737065 897381143 109058231 257546014 742926251 950880546 264709046 697614809 683933713 870692864 883204724 929562529 244773003 269097961 660738440 678830366 326446980 996292057 277586826 385360249 797449256 808377100 607130491 836052295 901869590 984690137 512622152 844660186 643000420 893971988 946899007 982590939 561775091 653811786 727206970 912840130 767912371 936519329 525668188 763530794 662351362 693814571 498053940 832019512 205236529 354986883 512683195 813018215 137002194 495579810 290707190 842470049 484145994 846418521 724571223 938373386 705789938 850432179 423208331 681994498 104167619 670360471 643495693 976448760 426756198 976647123 526401575 858455502 372246502 696698263 50187434 464647416 670871630 958350468 147588053 595741429 523086308 680338871 247324865 727173127 672960828 787906099 259361783 422768826 19897489 485670119 906453944 982640668 761621330 806273069 805131271 842918954 284370305 755944605 347657737 894331719 418971112 867829309 755836436 882229010 557515617 841024775 353802658 799044666 422221630 921687405 154961706 902807729 559082275 971314724 175004775 479856465 708206733 901044700 618361708 650097799 522822483 842648143 34775863 870068008 431172049 842664856 873163371 986456414 448507743 820863709 256979215 509974953 506804839 755061471 357509363 784875921 163578902 466599687 783073415 860354226 534570458 678310882 319808944 770079302 54755447 466953501 917864577 936946975 672326492 782745539 633842075 823274037 536731132 724621371 945373762 951596366 183882929 918307862 4291182 30094313 587515249 856355264 931347967 998689936 109218661 927008325 45111223 638940105 483415513 868169774 308076430 329290407 562313389 723535328 52862311 181358506 866840069 929576887 371713261 788100065 316940987 570351691 524237483 588116430 904176847 946381236 479302584 482288291 296023640 522218877 457695886 882433472 818659630 903928699 351056533 488432658 731490800 791961323 839997687 970748281 381323150 711311185 557833700 756257926 910851903 924758295 815639726 818976497 36905172 123940104 680533388 757900718 367530765 706099470 532487289 701849600 680660761 839610789 939345487 952117487 412245074 740200860 16486012 982705659 642471688 970398856 647404785 705873426 575212848 709546939 211826873 363758300 544210829 754501597 939249857 998169283 560972089 616289795 5184537 468905468 805243916 863753597 477186338 536718185 772919006 818616242 336558119 904297379 672583269 722114428 547608351 829211373 635498585 932319448 815201240 885903203 168197129 763875109 943226439 956312297 479193280 616449738 874764905 987666988 175243282 815237576 572318606 857281834 209374278 960521376 163333962 667308399 597562781 980546350 63261287 99858166 572057854 926112919 548140124 847339292 939156273 939874717 367650413 917169781 116766165 753235553 84181592 962963740 951431421 954350330 820081696 939976957 486863335 903853603 767999 428389005 649941677 782185782 318789641 541635216 190205571 922506359 845227878 992857880 956566609 968784824 690717846 763351758 736864538 865118824 575832914 979618559 507681599 893130516 188329033 943409304 613494973 812355034 591160106 990228175 579770652 679549901 740518119 748941794 492369960 499555958 310386595 410354889 966263981 994137880 413554817 671880402 80493679 498197442 613776163 910134675 482721092 752290200 89571505 667853220 888103654 985944347 731791872 830996063 255210357 991727986 940220082 986326471 818411001 995772774 404978362 458186928 175965258 983517683 352761864 807072526 587748872 698333880 359219141 568018385 518285180 939380551 386049072 815140264 981120240 997199430 139460952 694647922 917152312 919334556 660372565 853131771 477637980 541807628 129436508 617316090 46826569 833669286 384882218 647292583 287300586 928097727 717400779 806976155 33999680 605201486 63657796 391332325 828435447 898152953 573771921 629261964 775278437 864239185 453598719 666388202 561838553 719976125 489214422 891691790 33520668 131354752 585046315 840125228 79240590 654314504 248236009 879576821 180393309 496444055 356766691 446614690 907108354 952637794 117772199 622755715 484772120 660480468 219249646 248558077 346277062 388037804 753272135 823708515 210310418 849200097 712188377 877095868 630570541 806500219 762530574 906664751 822084382 935503818 774128224 923330281 69138817 510671931 813116132 889651401 83795265 186732349 425721297 447069507 64705692 238969862 981039963 995566083 818150860 887056208 423891386 445390875 260996477 730410999 557519239 650109132 605293845 679153837 530090220 928554595 941711129 974451952 671990106 981529177 208567960 279967850 291285141 624878717 940268296 954955573 562232041 788609201 309841304 366685376 284526506 564731285 176775396 688229804 997757382 999209767 21770950 462129258 509315296 549631685 828951018 992966067 387424715 657723328 214973977 318623449 730988541 986452957 255184274 812925342 604094078 994388470 453831854 829902149 556020005 804182854 254458538 547714377 841081635 904839813 275228173 302253813 685417529 823867547 511034147 791206610 111798764 747753450 124329705 307465514 544712571 914598791 945739367 983861322 137526779 304242899 173990014 642891916 549511209 899226889 808463082 843428126 546767803 998636935 109567643 472446692 408792089 900393135 327465768 444243605 197416621 903110663 222023855 346721664 263716764 859198476 622023491 725003537 44835853 940941749 387663545 439271976 865688237 987015842 931862849 976183297 746165220 802546554 661453818 866760048 945315175 951680634 341340199 708480697 989318087 999372907 728284547 974809352 235716103 377933433 610688751 853384481 763618454 860280374 607066547 938363832 313955880 838928778 917515159 989580088 464843224 991803329 756953403 808190810 227004742 772698232 958074230 972335123 668749173 961195542 860479100 898125962 979966094 983888412 722442391 887248024 387683909 707147298 132870856 896607787 649705699 868702550 915697528 941780251 704952858 909672921 133367011 271823673 611765641 711929124 692152150 888211903 390608052 758086459 728439322 825450223 295364702 924477989 835607995 913638517 800830861 805874964 654015165 734342223 349575937 850748018 512800267 739094526 391301821 675354567 467617522 716314294 502858095 663746759 125141961 342776640 431350299 469132510 882632685 895088933 968441771 968651343 893060783 939623317 213000739 668308441 692567619 925643831 582544852 779841224 253512984 634973513 615938118 823753516 534678248 874759188 907931125 924988005 593897893 729606904 148037839 156428530 281522267 969864040 770092090 873544267 308528120 598124250 345474909 463758330 105293314 200422385 755221831 904292086 959893529 987627391 321551579 608790202 697426426 858205747 686128217 891636827 577189861 799153904 597480656 722206585 278169371 543229273 958040733 975879858 947037028 973343073 632538736 683580322 710293686 765457927 599264897 647445963 552222683 820151093 993145293 994567027 976716645 977220547 397648500 533431974 828835533 870313949 834370380 985365723 174815834 216409161 757319460 867570661 593476997 867726576 250768180 617618096 574405679 950311563 550749194 915790863 278934656 373724429 948414658 974275767 721830915 914605822 639885745 961237526 229843904 851547478 867948964 945300970 412534133 639759195 935679924 947610706 879573133 946000744 2464011 119685855 122746830 656142633 471622188 850589893 452265512 951675341 352219979 840455030 603752595 893421365 625043528 872690989 382219765 598269526 230856191 916080447 335656113 359963670 57820263 627659455 444136896 546305158 688761374 924031663 300251128 803120348 465912169 880218355 626083839 708950846 686029149 805776264 743042264 844133322 219749911 329486816 69022962 316264227 900108157 973100311 970110363 994159042 75428161 672923623 801667385 822198756 196951996 291777605 557236101 765721468 947470501 991119132 967437283 968393818 220559820 919691800 879095682 957329932 546930079 625719540 506990210 608738163 293384246 819297493 138444565 285515493 42641148 525438311 494618900 608935801 161905340 966102105 802464459 915054678 292706776 818497885 584231303 848819714 263953069 466166167 111385149 371027892 660339550 785077790 295897937 875095294 623433725 634146162 922438964 964047623 604586956 991567549 342264186 636842888 822158714 928877818 201525567 296169952 152501448 727797843 482763354 557468976 111860744 594621926 626876139 644859430 707242985 993929410 596938725 634387807 616880305 700481449 859580169 936050274 11614498 912188435 716581634 832950642 174974470 565118112 822833000 923202739 101904591 534577015 289909823 559187156 164279463 580345232 34091481 921504692 135315038 839576807 245695651 606856183 564542775 954306742 833363023 849224174 605986091 892172363 946728445 976330379 500465400 671787021 818597656 960809030 308933933 698175017 175763073 705397249 796576124 895824096 765098075 907118392 861061657 958475669 493991605 792903215 308995908 619452361 739245043 783256725 750745830 786538006 576143342 750950173 35003845 478575469 203329621 955065094 851351720 928759576 159836379 661143766 5666374 792871613 860951025 894323738 133925079 936192928 856594500 982084676 739151380 951562232 401336177 481695257 831725457 933938453 208724021 618184884 33184121 848823471 530262528 994928035 524531692 609044299 481635274 567321827 248131552 787827011 113855975 840835547 80155295 850974154 549782543 689593352 538587850 792402379 541115288 628306124 662201706 967935512 199127651 585743237 409562101 921725938 691782394 795792206 711858266 941101854 613154592 618257732 750704838 814684603 375364308 886524628 31178841 745752253 480500936 827581855 633537448 862946333 758356173 980055212 900961144 966420333 826299481 991671282 335025554 336284824 65943860 225853600 475747313 554859650 880406136 949199490 827614963 977489855 79137327 110081030 339773077 997338422 353806761 772223724 417319516 559255521 670648110 791799051 144751853 872453008 566392160 995349663 858510779 970028959 320509894 923947004 915887216 923344503 57926808 157154499 745768134 908064542 201886103 220263612 22685355 835154521 999144067 999284720 444238506 673475115 2073824 902525110 539615588 819901351 966267968 975872342 26032931 919799269 934714533 948138852 811552111 856925071 661548596 925324512 949358138 966095489 277375562 823504997 606296542 752709764 59948537 265490838 291543388 476396914 935565000 983555331 932379606 980683404 424778071 763351176 700106005 952328923 919834635 947326130 259191568 506784765 846371555 993199685 675619570 964633092 250398664 253161960 939519765 948315240 616618961 762751070 76225568 666219518 214263062 441965326 119886811 340179950 565209883 917989216 50590749 256908446 197723162 852914924 257039662 725037748 342486672 890775343 528222433 976164553 705714353 934420114 528062184 743300717 651616508 840919507 906860298 959079224 169229304 906592540 148962418 545003702 78656693 285898589 748153813 837348979 344432915 381351748 917873467 986917061 614157110 680295879 258734667 932167361 502799553 973723908 338981822 346452688 426446425 902124243 625188571 863512794 676004073 699631666 612050541 829027721 128851190 893968215 192781027 869013531 581005178 874228766 759696277 998051428 150505261 298022956 279397475 976921200 494716587 998098929 332777190 775004653 373086512 456690932 405214726 576517655 678047337 689133348 426526002 756622397 320410067 396755062 219322961 857452942 70275575 639735911 163006913 395083312 498682730 972733014 217428678 712459307 195251470 595165729 719114079 997638065 762849152 792178321 328957839 906529531 880365046 929818148 248475051 630148150 464942821 820139887 211842756 255904097 925013873 967239109 879457825 979446068 97795381 711835910 701277238 862144538 829507639 877664988 364688582 720569949 738054223 807616171 24473909 968108789 776148408 858460182 729472793 887893364 381013716 717529433 814958476 944027564 406468597 531615785 285277583 668862568 811313423 959156653 849697807 894674111 106792231 650110119 721202992 748367220 441213808 538648308 191418206 439271118 369897360 648195040 129671083 734894408 108858155 131224694 438802656 905626564 490307381 673198646 252435062 897686440 79041915 842767791 896179432 921870336 591507086 824006158 894049128 980267091 459090628 935968364 499926158 988535972 690098543 915376699 272931886 485091656 152478068 288848510 610103247 627142410 885416174 913517878 371465882 714215673 349041829 941297871 703272331 942085267 5010488 223092790 428571623 496840540 100549253 507311755 989602216 990448459 348470996 453247203 854629638 900884023 760156116 903342619 990370553 998071285 943749050 960320370 888252936 987319065 111382797 264936778 117302783 864978340 27764248 775814181 133280369 583300064 235058439 911153123 225445738 399577724 989730441 996498217 804993087 908403451 149381220 947693108 946634765 992821978 919439456 987031523 327121384 663219119 702422899 879384595 144660756 383295946 606937627 972543686 381631628 531128842 392176643 817049453 418104671 619258449 693050717 717083288 242169038 694510587 679880064 686184368 828202260 965662519 272689078 964747421 986123198 990810251 204103646 674460985 383683019 899110152 996313650 996661285 184347683 444743169 103917494 830626358 11477586 121885857 921393340 938542541 959710172 960639414 341997152 798321051 720464754 871691992 277843054 602919062 528847112 570266460 385862673 411016569 193557883 920056108 793439491 948423151 155693463 593312926 911169123 963823481 202156352 445411445 825242975 897676844 656814184 773246095 970307586 974032459 836835470 839494268 582510266 883777579 267394822 607872578 843811120 902032720 969162985 995148273 313995196 819077235 907997061 984801916 180867205 665709257 49853708 847300571 925031240 963723052 141026948 385527835 780544271 934954210 269045643 458832452 649491828 947999600 703806929 899513727 348535964 622892839 841642813 957262841 830529904 984819113 878829400 907357830 795044817 852519471 70435565 647401319 326151187 382771733 487073127 879347527 160771967 847774384 587348226 902561452 758873545 809433708 727445963 885542642 660190868 879414371 140876207 244822680 87247738 457268669 769683381 988555817 311651975 434985597 59782842 365790621 624008525 680035456 367827235 561628181 642080053 824136765 510240571 517804698 981471718 991836055 514422441 857786417 616636710 744916234 567652793 658222690 342119342 492430498 722610294 848514996 874831766 935916246 871040477 956764847 975973640 986832697 979237961 996853744 974105806 982634125 266210806 512675055 481711099 920658031 743035714 758495406 869128005 958789013 102320088 279126290 649446166 820940173 813180521 907002386 801090947 973283043 247920817 521451151 961157915 973858438 99009462 189040973 403526455 411051077 504919041 558572449 109561541 282851237 918640399 924267367 519449385 960115217 236997694 964206455 818005155 866030251 585230348 907032607 850783648 885127370 979743477 987981420 825311020 918167815 562857420 698514375 26761951 752402598 392148583 720470958 648396797 741790941 181319404 625829938 964102436 993065613 13926495 359590838 467587184 675333917 130106682 981004882 839223901 904640034 116434157 417202548 963336630 969452099 962307154 984664135 143989590 856796750 92598002 194191388 553589132 579167297 521151273 666234979 464716188 530284496 265342009 474414083 131020302 896575884 282603946 601581374 10566602 966188804 454287147 910365576 769706179 779164619 564060110 602663284 205210555 579646427 423270594 428583779 624933052 698201460 11573029 988385095 837457823 921988701 374984215 922069631 392884498 478046041 500396898 908091786 985003754 989103142 8102577 101454755 565668558 871218032 388758035 902370133 43245748 994160172 29433505 120055837 51544755 625973788 449145896 589883823 58190022 577219553 969156246 983639256 378483000 849555382 959778282 974936058 62095432 160670980 826591810 994924363 164228003 307221712 117339246 692853340 379320398 499525516 766404553 926863535 549132419 744165770 438874119 457541557 481340520 665548236 791862736 995036064 989293024 991609154 886641640 985890788 973220796 974612359 25257279 339740659 466630041 871890837 685897445 949574190 75148336 666995482 246359971 941088339 712806163 975478455 137081454 712672179 720383670 982731970 111266953 453449064 215057621 724252720 254018091 721670193 62223580 304572667 430034312 450559500 540772698 713125227 669262468 995779213 762158994 890698269 413083455 879023472 133923402 255627557 92899237 690881943 504727045 985166614 718341992 865125995 377739557 693904471 928804378 964376549 683503480 705219941 279345749 417242902 427944227 889946639 939616445 946695524 682456603 936642610 453292656 659242371 176309663 491393207 19204887 410986533 96483024 176401526 248770566 647714049 785426649 830093504 682418414 786476254 382226355 423597491 365383665 505201973 443073367 966180619 875061105 894043571 261575338 314693367 486992862 911823041 61771895 459054837 186985297 310844580 455341958 662964117 701738999 862903857 174392559 586075314 252426397 857171228 759120506 921056649 54631910 711285132 344588424 585120825 936944489 972618762 159072946 667906265 627438292 924720149 388471593 480946789 266569940 460853018 434243036 916726606 447291894 937950081 646223450 811637748 704181899 971976403 649835863 883036531 490749166 973194754 256954054 991706376 718676785 952365086 968256536 991194412 840489929 897962972 252780978 574971614 262581760 709288975 969487848 989943272 942819523 995792777 463028450 550037076 289592674 343300319 188039189 559527688 961070854 992455892 201512264 757675666 726877170 822155051 641631444 758677026 627576365 865993072 419031259 668236604 836894826 961913630 984578731 986688147 919358392 978209542 607111286 832815830 429770865 625106812 775631214 948100095 19130595 585020084 128666362 788319325 54349426 592780375 129784844 327134911 568002390 867645910 112864679 265789857 794363633 840943089 96112224 245365721 724718149 982167476 707874329 743555800 257982073 998337272 502393886 862087748 306494985 791163163 953894944 985902501 802954758 942053947 390756582 455024736 763546106 839176460 801814446 883557623 642400670 790519687 21578236 789174590 588745531 635446206 158337311 236694905 104953280 857532660 363850861 504724915 714040263 991326967 182897339 781688061 960494333 977565538 11003321 706626436 867594274 906180640 296289074 851231291 723548659 939644392 259215077 362973014 462241640 585693250 936060067 992104295 403636123 734261514 615427565 867686836 984887379 998227928 581040686 661490880 774291675 941208663 274550872 299147416 614048125 622402922 251393263 984818203 596219068 960229042 697487881 720721648 429182767 441196431 731329551 932651957 244562054 256007215 941100523 961101830 916123936 945738740 385803200 848672414 758501754 851049010 871469396 892216673 771251571 888696872 348804646 561940992 251458707 902930816 664905602 910884102 989896631 998221009 130633136 223400634 491090305 518467919 813940054 946722865 791039231 969368757 502826897 569092717 884692843 904055236 384883909 733794490 148319550 766140125 585196197 707860961 953589899 956286229 129974112 904377386 422572788 645380130 7667321 604080912 288837052 668448207 87777823 860164668 557918275 849699579 255527784 915038259 411766534 447150553 473110263 737889661 265812253 644231682 860241686 863610586 574454140 952683393 32897527 770846402 340576717 816664762 583076358 649168369 340591164 711280111 794741339 934462210 793158965 815318592 480097780 889991974 61190480 673100921 893859558 985251107 292981871 927052023 893998501 984359976 348484827 642304681 257347011 711794857 85722532 824581596 949259168 966958939 546807160 993502325 597083106 865470969 850664480 986305662 48960036 874770712 972773764 986702677 157239067 679120144 746338605 755059190 606518084 883964383 780637414 869921667 29623050 622629724 479527122 889667779 622114679 745696876 990479799 991332011 16144394 982032287 121288296 346178494 80500575 383270450 284966451 465887974 912485591 945037090 683827846 738468473 38460286 645591183 50269917 309109866 483791391 895536847 839733296 968952957 650955012 981522703 484005989 929771294 572989128 839613346 966127637 995993578 383329575 910864467 241952144 348244065 175365226 420767300 472675396 749984414 361155399 665072516 124691752 406982845 263109196 916997782 664931071 803999131 733083891 842769243 626844884 933082140 982359507 999281410 92141814 733890020 425733673 960975548 724353144 832572539 901857018 941691083 671643575 720449087 742132093 843145075 188232952 552667283 155866872 677432118 392126942 525737798 681688283 784222988 805695284 989097231 559945628 659646837 519008021 722470914 485516837 678116469 212542989 867479257 890161664 940229964 836139033 893245276 222806877 415637170 273475311 967547370 852688972 996165795 591639573 739452073 290620477 630993891 780434138 800499289 617394283 840585535 519621762 820378181 615944759 753451537 183932439 950380404 715685683 795449019 442767097 559897545 771100631 975830613 882463152 985366132 983711605 993052634 351299271 497034757 35390248 695720735 588320940 625137645 701428258 930820119 477609317 587169990 996119286 998444261 546644599 617248405 466835198 902181199 15884509 244018174 929049768 989548100 117822089 799989947 790973217 936546255 111165922 891243100 62849375 716779929 528285897 685891981 698801900 829005368 314456756 684226638 516309265 922794433 820967788 932566495 884367439 929364115 650342256 976636181 637186378 803864207 82273825 982914502 306874767 780198450 262334070 281004328 95660923 973578878 619824686 938446060 724819851 774015790 994976936 999218171 253364109 499201008 346199051 830435201 718332938 870877015 813548973 939959054 701447584 989523682 532518630 734238749 832143160 890318313 969983281 982952491 425842432 755529388 466774771 656994293 30446054 711706054 834755573 910626111 780632566 910251841 832179265 947448604 893843873 977423098 395112020 752829733 734440103 839415586 302051927 667175936 643220328 944217905 821476260 853285316 655238897 666967663 462066236 532494767 160708980 542246137 742378043 999378536 202398648 806387873 150717923 561137428 547464668 970623224 130532183 165234309 353900231 670504811 800920199 867672203 789534445 902248470 330231001 809377646 591472694 936708035 808578475 907644197 184622859 543324858 653930356 834080908 871393925 914886806 298746851 596845370 47870597 714500274 114273722 435223245 117294450 250602146 511502246 521939644 310263398 971081960 135301030 867222457 627432748 923552067 560093851 778734424 306854576 936757696 444942374 679639450 93868162 431907583 888301944 936992031 549488237 594867592 112525782 802553497 227325113 342971016 957689710 981150070 975151634 982275386 595855698 764141237 663335348 983714068 148080839 181446206 331371119 980916472 613511363 659858897 472917662 672967199 930067223 959277125 749803374 953729186 482880308 532174308 52112497 398227955 553777079 592498639 322324066 829289094 311495946 471025034 781484941 984825311 184512233 890952515 52802500 349355925 897894729 972437965 458482266 502399023 197126101 659355976 237206205 858194224 141484950 563907695 704843023 752186529 564795552 696249320 609405798 775469793 250770926 387064682 888446862 930637405 904355980 948336555 421110990 755643468 202126661 593990254 887997279 946438399 756439554 899655003 439997662 880744817 106294987 579357858 643533225 748276749 994510136 998623389 178573334 787505575 331317799 776398217 856578119 987082487 474681098 911554058 977261960 985379188 671203058 840816908 599825633 621628901 846570422 996835441 793893056 864895636 262156809 946547602 662935334 669163876 406624722 784844881 636516460 907824886 648252230 761531316 35130357 435130177 849259539 915705140 322188709 902469481 707610795 856302448 63705846 771406367 1151611 89397461 100872383 355656267 237125663 499046041 895867903 917398114 410386853 948648053 402614390 873016039 696432024 977136749 222011306 293944811 771177332 852220429 606774052 947093238 522025639 839534008 207983443 430038152 8786964 798218715 715512435 883519730 393612864 824385899 200762217 460943018 574446340 855505949 873787323 983516786 317353838 479205892 154734223 712431484 308638036 821780696 244679767 980333732 828571895 968933518 198689248 807403825 979731600 991007824 951366645 986379802 11615334 193194110 47998111 417898208 100745094 498075660 570666743 657776351 874380926 976129088 182238084 638292006 210162935 832238422 339963294 649787660 713788631 901463761 853544125 881265792 590594775 786896722 235567547 682448322 926865878 977351809 820171962 926623735 277942234 484126852 38977277 747711341 52324602 879733868 321346631 912755723 989818810 996528501 169944385 813147905 22028565 584015519 465153873 500480712 463285863 976593827 23581144 958962176 830066076 885725340 795311167 925822684 246908448 652819137 742901003 832385446 287983526 354203427 988062295 989470346 408180740 677668864 172052124 382322837 164135438 994960306 68785338 358746511 51589395 277515666 533311991 601498617 376126253 868076000 579879889 691105301 588256130 731556511 105042951 404634638 736180745 950541800 268062843 392686406 752585469 849823594 660182420 805698688 521561245 568768596 514802173 715975073 564493680 614330028 720960851 759166710 479917425 674370888 54617101 470245898 947810060 977809268 786635919 889920697 449943970 580419628 488564849 565196336 437829973 958417678 666564308 985537654 832559329 953303052 340866147 377921156 689145586 835530844 711579089 779757288 781628987 971200859 285530307 816353276 928153280 992743957 716258721 934995630 870200017 913982165 452448735 881499424 446663333 477179940 683522520 991351840 273301772 924723963 379701282 957539694 913538098 920614712 372658412 625065485 283011289 328147286 754283661 795938306 545592678 627085873 679969434 782460773 747593290 808582473 501684985 828517462 261922854 645251500 745698316 843561050 582677749 765333158 260900508 742932409 8685743 578400366 828491040 914690853 541795496 973847534 94254884 360982683 694921319 812989696 887194665 945794910 603269496 754701043 376302426 792987795 191456515 285215521 241812762 457088770 470076495 813952419 139170111 771939663 595512486 979858397 731456151 924326285 524525420 969679994 446148870 770242530 921773027 949460993 981287430 984304129 361086817 632262313 650624063 790824633 527668343 872053951 229040848 656089975 644048192 701297313 819216796 914911064 290610922 428748726 8138817 747014508 616437925 729953620 580589127 717850770 125682597 850421061 744835344 914555708 824599515 826642939 326221368 445607137 569899181 771375176 854507292 987989975 867181832 883589733 810182931 859880028 841142060 916235014 478546735 643966837 516781112 529816315 849703322 910999399 372106370 665377802 694742681 821398567 368764972 947572464 588507451 870831251 412760801 559706200 888175458 946294782 622401356 929268713 749512333 913662751 994782085 996180952 703594974 883225560 916328524 967046707 16542136 805710787 931029414 995395261 953136368 988593399 802655868 850081379 893705541 916716680 272992343 838044773 79557155 463539048 621496387 805069454 35916340 726943016 476722469 578871715 318656598 790784928 798211369 903439475 901325499 919828346 552071086 991338389 571654598 848028918 620465093 868822826 8435705 924410701 221484152 999388330 132753907 205405373 236389856 635838284 535168626 692564223 541385843 683175979 129179204 500555779 11963909 432919366 745704573 764888619 603025893 948885770 90175092 315962547 693598223 800166040 366722638 902980024 115202293 673057873 952579757 979382055 972931608 977483692 727503231 767438034 139599900 294603163 345069704 530376831 744045515 843522341 340760851 551637863 877748845 925377321 342538589 757316336 325546624 945632789 353611708 891917906 609739703 990245069 247059191 831671793 276098150 342224084 161476150 669030179 825406158 910294784 875758391 928400962 891785293 894812717 71940079 217414605 712184572 968364659 275437267 523319565 291285273 374945902 923130344 944147792 788706743 914039425 818738954 883731880 217407378 679299308 158769654 963869488 93368927 430036945 78263834 253972118 916798420 961496888 459887771 946905714 31490879 879799463 556054012 797561990 671491563 948051756 113167094 316259797 740685790 880879476 409710426 542717695 377895937 842454482 419498703 668138383 60575627 644229364 741659162 744688542 311087648 314832708 948434525 957107010 964526619 969207517 593729350 828206983 648388085 990110214 328392950 870153388 728913202 961893224 213058682 639375498 80312609 549559911 611517642 766241745 577350233 869337322 665520820 732194539 622828409 893046589 651369839 713442701 153202063 651946587 533651149 620656583 75613684 111687061 597992654 891177049 327885593 519098353 545005978 755295344 16638439 33041354 319074555 332726313 695728592 995541708 875483630 920284603 437879598 486877819 808757837 928768789 930918924 938108411 744213610 863823624 441821213 880844629 813485666 921930792 367389380 823928286 826052692 953193538 916689178 938020107 643499006 757999490 988189716 989992491 137276842 623080058 331576314 957759537 669163465 761271087 840911090 975122143 307352723 934035855 346618824 678854483 571970906 896980656 202579299 379514167 423534075 803057793 594866590 628153656 341085140 351397614 339874791 892211014 33733017 833506143 976801282 991157239 683212684 958373434 543531665 633226945 266654397 472862368 622849422 864580657 59065631 160095480 567701408 569413892 75507863 822093781 279868587 294485756 628848584 862893097 987853983 993286556 489816739 862977113 168483613 684913248 982619901 995148509 81028037 587731743 12071913 207037150 790771588 946556735 127269817 264753943 981979987 987726846 970845913 976468440 92581317 249120006 516849710 521610808 295515100 421710804 565843953 749917488 480074815 509184809 766306613 841933340 220970899 759271909 782289973 911094534 386126265 531793217 869934799 879741613 734634289 855142108 445421940 816861683 584310890 668835360 241641794 294436253 985473756 990572949 533578496 802098491 917339658 963415897 705533266 772796018 574581428 725239945 236171076 562765214 441649949 892242354 359300560 994769194 346444104 678078985 305457289 394010972 260414763 334705425 728134231 806318823 612977225 935122309 631045752 927100654 945113759 956776575 301582369 562735290 891805523 935567142 157542815 386563929 524896042 662746383 465004287 627544370 563945494 938177241 692593393 931418206 408336847 766690905 72180667 820085773 46835143 412312338 107402607 875828879 180134809 267073903 189823234 991145065 439314742 974690754 915686934 984629291 975706113 976814253 997879198 998809544 32087817 782008702 938007956 995983335 710799255 789721946 802196336 934488656 88485906 166006235 944992440 969546018 612686478 945828232 371966181 649022832 937509913 979949778 851102558 856594567 651818878 738381616 14132767 608971296 122153211 483661639 151457910 278935261 837378864 968664356 78656571 555113844 54838956 470152936 72514060 273343498 824451343 959324622 587425806 943198786 948297504 993726890 227642 385980129 570511223 636458254 58434752 929517286 579260998 953537147 280792068 735804659 158947424 617392444 690774275 711527944 136811951 989358912 733197713 780069212 39687884 479288535 768177871 782268073 918268424 948788429 994072965 996045615 694517407 956403393 346573456 664550286 342760674 800190921 740512776 937472407 105401565 557335653 542249910 607679728 571052699 777689367 234327982 260018033 905766207 915387509 948097793 991059307 904509587 932387006 856489189 920581936 166303396 798249353 650501722 916315377 991553876 993530115 139734701 152648796 558183817 986015227 254076364 754455476 456236658 891375803 240456142 829029896 386722068 572436897 972791567 974295365 508700837 870909021 562916681 963218574 249704458 926720367 494171096 696719295 651024161 710365431 368598285 526308959 882733828 891853587 47533680 217928563 995470570 997322807 638227956 778820809 636477883 708766243 622022967 890178015 811168966 928764689 560074899 932811079 458490452 726237800 769541684 945383542 812227285 904412568 413207636 644306296 174485412 371148473 302301390 870689192 822793645 876111181 802925619 846418254 383289687 691267540 949594330 953657474 926840198 964356393 298675858 425860181 710623585 981795466 31303449 38088955 77944117 639538191 277964099 534993755 857788524 962318633 776411420 918261911 418035653 821568196 842695586 998841827 635065875 858423485 351766802 826796862 484211830 989504682 982197260 989077037 664687254 760356463 857814000 926474651 394673858 927305115 41471128 837787353 457945322 788632197 32218168 297204300 13984223 879829579 91107249 403303735 363495259 933661363 106291726 216792982 792617004 887477001 791299348 895076552 643038668 769682978 251164906 649012642 264462767 818149586 13692131 439291012 293405817 749847703 457250985 600570404 669594424 816546050 36986347 285430143 878404523 926727256 544370804 855344340 997114543 998737008 140671796 782636091 1699297 780739140 112522137 986312787 997462261 998954809 167471056 648212688 579779891 702342454 193153664 413577545 605692738 664744357 880642357 921532541 967871860 979787168 809775420 901813644 421500653 874186306 448883932 514440052 907875838 935282176 144373200 437758704 821883808 959855384 757552324 776763973 724732791 847594233 473248196 797207238 201943434 958791530 373994484 583491400 755187564 900226283 776239597 870548425 406783903 762521851 224795737 936737376 178944850 515772208 598514041 645107022 855416818 881941461 625920494 720151628 405180905 986306134 239345462 938580582 579209727 874673732 453491113 777321529 890106418 978303662 794224687 835296477 743600053 776622469 679454408 741932922 793832387 879780090 384577150 619353338 938170430 948699634 605219050 631765901 71560841 104945646 314371017 355519887 316367526 449409694 493453467 500862196 293038798 838060049 82000475 506328302 119375935 989038330 93576744 603850860 50470096 54706908 603104669 734390066 183754754 959424908 924527970 951714917 836405210 847616254 135945079 188921213 38195369 917187765 615483062 855064206 732610293 830481913 690511320 706268069 407621895 530477787 756943982 836645356 371672467 831990069 32200757 105748944 826781574 908392700 282290131 479253452 628542362 754813083 180857207 752007733 145956653 985637706 761675686 934375993 451293297 970718270 320682394 921653335 262728219 833947217 17810695 702455063 824145216 849407989 806904748 950353486 81185422 758443657 674081823 702346111 463666157 710570683 973309471 983372285 112361033 274714393 295251129 528978467 676951765 721003963 351343022 671721883 69344279 274651552 102801079 468976410 252603673 835961483 131403054 637037798 487172334 794428832 126497983 512004905 325294636 965744192 252572539 897015589 834688017 910610726 244000264 556373211 364709707 609623650 977554453 983902164 462699874 816237002 53652367 424046045 328521047 415700296 177750925 271075777 187993321 460077890 614459478 788461419 868257685 919699046 335982466 819479937 219136328 316423967 874804024 974349106 40831301 62390394 873016256 990844783 597711372 912134591 301704003 473076553 574246753 931282609 21891525 493947924 676614451 819825545 89174498 735424669 951966835 957714312 414506897 948950108 38158053 959152390 773928445 888707459 998031827 999244018 993791858 999264134 51445808 694885951 659407293 792225458 955799027 964023634 860280685 936000162 376794066 440769286 311821604 540712245 836764311 939411456 115476346 141875228 105839314 661348052 224813103 511394463 429403548 959604649 98857088 195745422 591096173 980735568 486854362 637509684 415766952 522726820 88193529 678969511 56637272 228374363 956702816 963748096 122739229 735580760 906537772 932361717 797474136 940739239 746269596 873120977 818135954 958808656 635674221 862380919 78112658 599078356 192502018 840552477 563969778 861927368 280457139 475920001 958056079 970869473 33715273 375037048 125856093 410496484 947268770 994616492 900293430 961397695 563867242 873954181 409301512 729120296 911422149 936597752 633159645 940927522 24747294 204198181 802716689 967563161 891281835 897461895 252998142 454460821 85842335 198047708 643535003 782752966 518190525 889517972 791271303 991407799 979927506 980215391 538115048 833158828 575683281 967624394 542000311 803062155 228865149 287466485 828917674 864330344 557760064 585086365 263947242 456803318 207657682 765385842 442666502 817735426 382205504 385426607 62476117 387702624 721795235 763315284 913614088 938181622 127220807 176334280 790978310 986113743 162249183 680670668 976784834 987844023 509000843 604528228 322981030 823039087 519307208 942092935 418458084 586227174 646857015 884606574 687295289 976218180 810441542 821276343 491460599 515032866 134961825 948163256 630388535 882004849 638366138 710498124 673708750 718094986 385093465 877920689 566311836 810704065 868254371 987420824 512570158 731082119 646275441 972824106 223256345 338634830 515252443 591911902 151860855 494828829 753705861 767814330 318660122 870442003 9653061 852624001 652953048 870470936 812993284 985189934 859485488 869073629 797125949 890293275 287690047 483048017 572919928 624260621 185014181 931606875 336405619 491789140 670815145 900755841 486794756 764884340 598323739 601626246 508410899 549488516 520782624 580531905 608780689 679071377 903524855 988651642 598706648 722591131 934819666 954329502 976207713 997906330 606065976 679886407 843400877 975890668 312213791 944882163 457102929 628353114 513920874 721432771 414935915 896792169 761801430 986609907 39223256 634730800 141176784 771911172 671766815 989814716 556446323 897144677 311485594 435334790 443686626 754254849 139872324 330357888 208302933 780356593 947055495 998427950 237804557 294235507 585195840 720570402 728353224 766231825 662384026 892863586 466865781 620202866 776629377 840743474 167741484 556470266 937917853 948603123 458944437 805318876 310999446 600163661 50839609 556812264 411553201 975087954 499260064 946611836 669873816 969735639 284655766 591564419 424257031 705709556 986990779 992960303 204159662 260764777 164261972 394353105 129846492 623788877 923029561 968619065 391861704 512986506 829749965 832602959 817866864 994988209 340141732 703362154 954283733 967190690 157603494 517770810 74017596 791809971 763357055 924121525 782437599 804159711 720146825 827190749 480499159 797247676 319610848 969691209 46773866 371293434 925626486 956924539 280437353 900805712 472222742 638181920 32700821 583961749 47443993 722771869 761238950 880024077 198972528 229052169 481894757 518390863 943476609 989284636 448334654 700171632 58424909 109242211 440595850 771113854 815403138 936802017 157865015 191947730 538778733 669752046 816508473 985123502 79439385 409916962 501747020 621459369 473162846 647820482 704605300 989297356 146925157 156518533 492700390 748405189 852748010 871119947 205276969 707360506 874687462 937549578 445360980 816692358 730677214 953993360 286511909 436891657 515875169 883733448 761951206 926882590 377464500 991074315 856762669 994563150 104739781 976532938 786732560 994628252 24412534 727112631 997142869 997474350 645276139 983373961 739249755 772074937 653310809 984354948 210785345 552594699 945807271 993268288 246255649 868061740 360705162 674004159 67134801 903292703 855908426 991069506 643516596 747917343 431145473 923285441 959899805 969190744 622307092 773267116 99181773 761422821 793692408 982514979 58416170 84103632 763754506 966515601 458906358 603669904 696188899 987875033 698553412 984072287 536846418 654927636 695541919 746838485 704421055 963674386 265014055 876918870 503815552 737462082 72358582 518915183 796066407 864395881 410978042 683089832 815688069 968093375 406665059 852374314 75225231 95090247 627282491 780520525 951331109 984718841 538820902 993060971 326653635 436943152 460518060 814509787 971602610 975741989 896878765 902556146 322878263 920665593 255332420 474399427 610241764 629162534 986550836 997453182 398980660 694583928 195278149 458418296 343759628 832399350 44914131 343769559 461165905 707205684 313750934 327876634 391097547 911611729 615365248 990962921 132887754 724531569 17505417 550025569 82904961 576620863 43588062 138672468 332438751 860658177 435583154 602157169 692875102 836341438 355277031 978001999 220941670 570912920 624448949 741427300 568940507 652724564 760173076 774819895 606928799 848181634 754185367 792354869 793849718 990651437 561914712 735254408 142285456 287322482 847513132 933184139 612549627 749849342 128704669 764633051 188685227 410745925 441457837 847617306 114241947 479424778 389553216 398349613 942585121 994884311 436319826 730739160 369693407 392412008 768476559 967183232 875601838 901829384 792440166 796653739 613840938 878758342 524165389 587980650 140627643 942606641 135401259 847769127 654897021 805662113 454586178 828508561 33318267 341779578 889178141 907757452 574601397 933359021 66026833 673100424 707318184 758815523 683467478 947125823 48308542 385852450 486512392 738556836 450104634 563257956 717332957 758606515 246196811 654354130 225050960 749076332 737887455 787600288 484551381 780253366 990385818 999304197 937344097 997076074 784186811 844000380 86535431 424067438 335657167 671937707 855128502 973090184 659351046 663323747 951662763 992849774 596979209 615227744 66578823 657731343 774270142 790931379 229914924 717769482 444217366 490529572 480280042 668816605 166595250 792900750 996500359 998039178 92611418 689886302 15057749 722655216 328026780 568645399 400847585 659455076 754485447 762237461 669023632 739324781 973618409 980966487 693957762 950620191 102827993 164223749 898432509 919913767 704646942 956248429 176119159 873490967 622529112 937212966 293775266 355541723 382313164 864564643 364751239 436712791 563456450 781001540 887086852 963083370 732120108 997660161 955717062 973244467 309346094 448984655 845798804 935779353 720546525 794161885 66942811 166166646 906449232 977226512 94823780 374019761 923640002 969718002 171433624 421629140 84626655 86177459 720708405 757957010 334158962 653152640 917778076 919374540 907100131 990430008 998426456 998471854 774262655 945560252 912084562 999243482 955320166 997736660 225761242 460785700 137490259 177135888 951258762 953981755 617009591 635150870 939073554 976623020 1561071 390865394 722746258 787074229 405277352 528664244 558677129 969714513 44265834 330414734 834507317 991388251 595985944 663120556 509846062 922896977 314600544 561531791 603442177 896826665 276726059 632570710 688336688 768777734 571263106 777220103 954993867 963533258 61651809 549398433 516831655 727966161 7880744 513408049 785024013 966898873 506957291 591969270 551219692 965622956 914041846 982091671 904158918 949875606 880048849 963128359 27192055 385462878 560690283 995052694 527745860 830961749 330873486 848248191 479944019 625596991 533834711 723511932 987230234 991033240 681014142 847647822 798058176 844818430 907956953 960350913 294800802 732660436 118889497 595945280 6658635 118079792 930989971 997605742 234690930 524435160 259819098 734212213 632720304 891822921 941184666 996373906 656486138 750167780 702167913 740934139 25950461 79183377 5563772 515427090 254118863 663311408 815638559 890572620 650163377 954631959 700331130 704668877 336911003 523575405 974902054 990880293 434582733 896874297 699872685 807466949 220455279 456085604 756530711 993118870 522992773 994256910 268775659 466861269 735695182 736393637 471962921 786570201 300078589 398483510 877298041 934546021 737665251 925260851 962395653 977088755 877316550 911961678 91452676 838527931 747711897 826998782 529522886 591402751 447374892 906785554 36043611 285879353 701451050 855183614 452064001 639219174 436602235 884937343 976270621 997069440 774274188 953810570 931907857 978301534 470461717 635328780 581260483 721859161 313375800 671224825 590879021 779759691 291317837 414911160 435931781 883767441 236443795 814899020 148547851 519775518 320355409 896581337 212006570 527281273 475860068 904033169 960778787 978134386 7478145 915414729 88325784 526232149 94754722 479728810 481024551 843931413 738681765 819351311 557800150 875065918 126789533 492197684 619370695 819407331 414982582 941941819 758144238 760604871 223305324 831951385 525269628 930175815 608570434 660426656 794260323 904071725 47751873 65739939 218106336 436598612 97245607 259510407 578417428 989892542 817116825 952241394 559432500 787381644 426609537 855214526 35912003 818192282 449740765 907316428 212022902 945568371 264251152 576421904 199509512 274918134 437342554 622686702 87608226 141021885 649110833 754063744 628825350 825741504 530435667 935649354 937449892 961282658 332084649 821536863 529302409 910659785 693084626 918012605 3688832 983742545 7068052 741578426 50137770 867348579 331699507 503532798 634712986 659015641 532532743 583595525 594205816 992883004 177085029 220873052 262421837 915350351 708354660 770729827 417995312 575102061 253221210 414904286 781655744 951293371 565635547 683350666 95531907 784586935 475150135 815856790 155496024 981498980 363573640 411839494 915059684 963404766 964506689 977132923 974505409 992086446 12136367 821131272 393225039 533749040 72051508 821358034 464521222 476697254 896978110 940951162 298550450 953144981 739250448 992135823 231009114 259057913 742817937 889108660 603585712 882038185 346641747 733558216 924781439 956777189 55027302 780959658 768516952 948973652 926616590 928830363 264075370 721513784 92534463 959097526 996540150 998843634 214335181 425962966 525876160 988312162 348280674 785301549 9354701 530910765 273171291 933498515 776225520 793170724 261196387 460663798 781839564 808075482 55698978 755879046 339735998 725210107 733364801 882950969 58317365 976526647 690664594 881597829 796736382 956591249 630130094 920370502 372577602 808409678 278911649 485375205 864476197 976471156 464570622 831278177 359492262 828557069 597336023 996601805 740824975 852247162 396575119 433200549 315352380 948555318 82997194 343040539 774492922 810380408 88491708 320786962 324824432 448319701 174853461 823763056 310748483 358636508 361089444 623291185 977138896 983925935 511471104 534372029 246088987 362430531 833548354 910573894 595203007 710820812 524326615 787582506 463011137 754717662 913282299 943567944 760365633 853479814 750869207 891230624 944123595 952398430 730687551 905274911 774652344 832226915 193438037 302466130 238205342 832844341 692698121 926793450 630790677 726186750 87104461 747021802 168642352 380589968 299014827 359052967 427669937 598210664 178810110 415573032 950570233 983908881 598674683 993901815 890175845 981590444 13310102 336340413 606637899 948399324 839277953 843176413 479323628 594684168 340740077 383849173 584024723 716110184 425981667 582572382 437772108 482975539 658109843 767961716 526761449 952043603 788412549 961690955 638097365 923625516 210579034 804112944 458352397 467455311 848960787 918373741 38721692 541074614 254259054 512688955 514991269 695408909 803299618 872317939 67513806 602912345 735515818 975674978 44622293 839493541 388853365 917623887 820501386 936533142 998985214 999024745 113879176 838233915 382414178 518819783 686682331 850191633 641581368 862419862 41869511 97891160 496431698 905956415 609272479 766468061 38452883 372497560 731301241 750473737 644906316 952157314 718573636 780957545 423934792 644250771 47871092 918524889 498886449 865498227 420344610 594330783 433247483 734288031 228615437 594604209 358195132 671910022 285282802 564360653 321600434 536757013 30123200 607060038 27923650 306574913 599091923 990387227 95426832 166711322 569833300 997571507 487283140 761591731 302678171 932059925 189994824 552843745 223155439 930043843 465755424 715385381 580044134 713094122 476305831 540137521 808110562 966843092 282944106 395162877 64370615 807450638 271291226 961971481 205673534 279843390 640108025 806618660 659043318 709579490 623924283 695985188 77354657 890158332 278553059 316751217 148274753 669775075 39458723 307068096 859290246 928623282 108051424 827024718 564475792 965663665 99786483 377119526 143828257 391424809 339653578 545274717 404764330 945745350 771558045 864780023 121440587 608702195 149057424 192351975 282699549 795924603 89367893 659199037 302704938 864013452 118342574 150899158 829749301 962385604 116996571 597032655 750299533 853327650 857042103 917941127 842500001 927063009 479533164 989548909 232421992 249766832 103911635 772406706 485799298 624095828 84706018 298548096 862428692 904891811 465377061 582612460 827892331 927992250 989799661 998914284 526838712 726568069 322714178 470333312 752791478 948528889 542737685 744190687 122821604 570690348 580688696 912571564 484033903 575554510 953784559 981736676 980887938 989777628 716119923 717026477 729640929 852242196 994411609 996196127 662221338 693777882 512614983 577151675 975983718 996767667 932861198 936100604 454332240 510086250 255771104 420859624 699552926 995705308 883885315 941398424 734330939 864316653 731364863 895016160 643778917 679932702 179808840 235408914 405331162 591808503 237780749 520976548 570591388 856001579 43820369 606242059 747686495 856510423 685561616 874469511 435831010 844103403 152114359 643029670 870504470 892582878 153270112 286145208 287578169 756247975 942474931 974158837 192591522 975707731 823864975 852418271 526337517 843734923 132174812 837584330 512537874 925983345 454679746 878909695 342293581 974440995 510167818 670690053 836711233 947711392 273281874 520488962 105521219 296209841 708383103 831104492 682670022 980277078 352779459 366691688 320632851 679188410 100751800 111887003 596888396 709590696 589796 599716522 434412593 451895364 514708918 935910951 284891478 664719506 410538982 775861421 707443493 845575475 621345982 866776114 711559175 939758458 336526212 881111959 86997312 685311682 883950113 970301906 14794031 880838439 1205821 780591806 458049226 787753596 719940843 808961113 224592950 265657158 972558107 998885196 130679618 843754941 464222607 525572521 681954444 706731859 141072981 887667291 863399491 949583679 115205315 782454116 210842753 903405482 211757108 392910411 517989914 829707917 451979768 452566112 965491302 995551356 594179574 796354304 614034246 742196408 427668191 939230887 35198199 386643255 104103144 298982694 689628824 752755890 954948085 995875709 781799959 837323335 623748055 830823620 124048836 323822595 182833558 972289157 99707329 757122885 3805224 887687357 820904315 885508295 718211094 802107522 793742608 975529943 567956443 712884463 931235484 972781678 903034073 929765358 402516661 790570480 617068578 984705917 123750239 883568164 217830235 279820848 674795647 939508119 99640649 437192614 855613576 977586452 975748075 998255961 913903581 925649785 702309846 962394352 415059783 773931809 625736690 888037246 807190355 937404433 916335110 929636499 669688321 976442428 571620931 920661190 825559757 862132670 928328835 975045010 642404280 860635355 335985796 792104932 908793495 930428186 158070539 545064834 664805510 728628003 130083501 431594187 411055057 825994540 881763993 973438936 784564388 907844582 918057266 973524787 60257806 270591197 370830925 923386515 511048752 955249485 97832788 663478016 495489651 876964365 800762714 942450828 464527430 976304544 115579224 320039545 288544035 550876218 472345752 773278610 187122549 926511932 378992502 732711010 787762069 899737097 511518382 938092922 103058240 555245186 512430270 530224999 307286372 951652138 307813164 903342550 705319873 719465117 706783124 726613804 697763882 740592265 619191970 757980579 969553422 992927461 787068855 824913384 266497575 839122914 241556187 296291185 149375089 962297490 776011194 784737118 9491645 797701046 408185203 525795687 501514643 843230932 940365570 961579206 647285359 774407952 645911397 765760861 584478562 903154477 348833747 473241524 187036943 936949331 844561732 930690972 238971389 942839857 471634101 527536292 124397315 622014796 790429352 827260435 477936712 537564367 181697448 251486130 812722903 844952093 158717470 449354449 395969621 760628101 438124463 538657268 521881919 583296805 833711643 919809169 371850686 505266709 676888413 928151644 641627634 866866029 318974081 742224536 159233638 613443161 478500661 627436130 573136003 901693496 993250091 997670113 757553160 958740416 611763951 739733146 665749990 887235674 229092190 613261850 281613965 386752252 780288058 861900693 986002203 994048642 582982405 767545106 24286749 480951997 352325696 872800141 751342722 769675929 775949218 897102143 178911304 971986399 708386869 721589235 926391579 956883914 246388381 479851267 480328787 679736835 19512546 55754276 671374925 988478528 939485924 968243491 959319426 979093811 902280316 960093525 913778959 944002624 773126847 801962906 532316494 825234059 453633247 643520634 651550648 921304699 789422721 837140163 547782759 554623534 532567346 884337758 335710805 754494409 621789752 922544736 119995337 959836017 835246275 883071216 615365278 982103448 256462558 585129922 358555948 825460731 727791245 807545548 246308452 957151830 66036234 915552698 264062423 415811400 118301935 564219708 167218433 573245084 680203108 880571159 534919091 593496812 806490859 902130837 37257490 858828627 423793252 946927427 412146094 566573513 791275586 902370917 316869221 991901585 912122526 988196110 586915312 754409201 946112340 971080155 825350108 832042142 469379695 591392276 93017574 561337585 423378023 540578666 626356801 947369111 633964350 931165026 641523503 773640780 905847204 980442558 996150590 998867318 431024532 434178719 241544591 651328632 153844728 900874128 58450851 461903412 454947884 727364837 894568149 987734433 986424599 998670576 347252494 435799802 173621858 679878226 458360056 742014159 210450853 838201586 326197349 532672867 876676350 904184505 644595802 683848051 404549102 728389923 654232995 941207044 588534928 681885547 868877547 930385496 191029346 627544976 442071429 574059815 973989337 996396306 342847232 534137692 893290995 962690102 796482204 908655573 812638360 915318623 57049085 404247301 534106587 931645290 507766424 952509146 964160338 978921927 451067875 570036256 983828114 988272648 240874966 595512384 269460473 525195247 550466062 834214263 910859104 924422505 735726444 745443699 337399563 395174146 931371626 949477300 180857292 958468183 480177894 645129225 470992292 984876256 678751550 946342187 155117595 539512804 571146497 791847897 698368679 941820252 501264586 928590767 847770138 907473459 729907180 766225244 146369222 446783077 891513454 995463633 139304039 836801484 374491696 480089232 288523299 698409765 429888493 510103350 390179673 740987016 582711296 916011054 122604299 627465150 370415757 752703038 391259659 736567352 888040095 891383922 169832155 927857806 257386634 451812227 710166486 750429590 857594193 900507949 176546481 209702731 449382194 945926126 667775583 735951995 370426195 577420451 415368033 987525702 194385363 837854720 469956238 965882996 951596754 969693768 775033674 806528316 697006075 925012265 261755283 385132651 604835739 680969841 12029618 651561808 443470289 911306823 94701052 810098849 720703513 954836600 93180115 411774106 323024558 588392401 331216561 938526547 476869062 760050068 486701065 723598681 966803939 998813019 986056975 989149750 86226007 997175490 883871850 959876926 686661551 801819477 697558813 714234127 199705183 989298653 293529192 794857491 799099927 963109627 954442230 977504958 506997761 588985940 11000334 62866121 250534474 636166315 419277974 488261235 928366505 983845575 345740828 542834901 175520815 472837002 737199600 757800919 447807987 524087713 770769654 902512481 875831258 911219194 994727641 996923534 77416875 381362932 660484717 908657239 352372838 559578038 689119571 810886746 792669873 915294769 485433181 549207688 112870312 242802752 270618336 762418448 459742749 615219495 797440916 885320809 485413255 573797368 336801540 667796165 882428945 915919427 297592046 793310945 379491340 513566360 466429004 493855761 530951488 780465717 137769619 717870280 967145116 998336436 333155202 795812928 657387013 696071992 267134099 390542015 782887057 951569326 31469215 151256886 851319297 959927415 133120907 415017904 370781005 490430387 277119679 623215739 425423344 738142541 330273354 356713139 155188776 696718716 238127440 555928236 659335248 702603107 784573181 974277959 686790435 725564054 237101090 915163028 961946734 991644925 605276107 890738063 719770424 767636118 518703646 586576066 90596 304699032 151040314 658843546 42989605 979299293 148769805 961086201 960481575 982160332 969004158 983552495 422857938 474069620 699352997 910493267 940318048 952563429 16539156 857687615 852006907 965489680 589297721 600528121 695324311 765740645 293376670 706709877 561050932 806329518 996981842 999214249 916012367 917673245 610887401 771114283 357072899 892406140 406699958 601318245 397260094 875022906 244579317 767833534 21814036 440426334 964053486 988414012 572811466 777967718 370792559 882803305 575568708 707898664 588827587 776725371 812784069 868036293 703088145 872451759 127251388 438960488 597261830 630927094 555674253 795138022 647872900 810070492 372650762 857638551 384047032 844648307 702286810 821451836 235832844 466539350 865239800 968202345 45460720 504709680 32950702 936523943 591531623 651592118 566622428 857982680 236622725 547625093 507309115 778227102 422246467 644120826 430070525 483568884 546163303 984206035 469622278 600545331 461327418 949832094 291667034 415406146 392557811 471184390 678438267 752362137 374504189 681846696 610271805 627982057 811666648 840059983 193314903 809164674 364151254 576716440 781315397 886386498 773308532 992215309 372375589 864619049 876735584 877128112 517106000 995329835 798731036 896787674 847481073 862346822 988040678 994984537 239465366 248331399 96155294 205210087 284232204 966505815 966686127 974752850 21636108 827469174 461192284 996907697 825792492 944425577 758570742 775537153 836690500 864828774 455084272 584724384 916280421 949599877 664740284 890570176 370465937 513747915 942597313 978182221 516565343 986395144 406298414 454534924 760427612 996992083 606855427 959832986 338920837 720064172 972936392 982552938 180357169 954842481 386219119 887862633 129611659 388532048 644812766 868897879 335428557 683315774 729536300 988919718 418547035 542264562 393099471 400732509 395368603 629453996 706785254 826879120 358802080 406263628 48251860 346095484 757480318 971659240 753365597 815717194 701433730 870540854 35703392 671919125 935352388 985956690 408678636 738674847 128444963 382221903 2869927 597388560 844575242 884119327 272922536 942165500 356232968 623059923 86870130 968398994 592780876 802133471 918943259 981747444 556354653 725144530 545290672 634642283 223749422 425907586 472088909 788515603 460152218 525868978 856702162 976355994 991807746 994338353 249983649 450112754 146081749 543760124 740952684 957154848 240658126 824726622 330147838 684169264 686381559 968648959 502078420 672124499 132955014 147500862 919859599 937541145 888522547 917295511 183421758 822737430 425359336 794587903 307082052 932387227 266228733 716298376 549050914 695693106 498293867 716752271 88997607 703964820 529061012 931597371 721046240 939142114 181952038 332442692 385419504 535619053 455085561 995518388 212603828 925232987 670619115 853922465 563738557 995478761 74191939 355828971 853572167 860124931 85322884 400286491 230331476 416055725 738822376 811063343 258347875 345605666 296096221 697277787 490909703 693828028 317956433 694193312 953132600 982377036 743250060 928830034 334693066 477008238 228766486 906109969 758060937 969751344 681652340 887618029 110084535 850756404 668817440 708547237 560749695 593737524 218814621 542814610 46746607 356181138 797213758 869432920 308525092 562021665 425605334 465081313 332703396 878722017 182222473 632525311 687008755 908012207 93851717 890475166 226583773 673401722 333916238 355573925 585331589 728702314 841222309 996391920 472029312 923506878 151592626 431353804 405174722 947998944 235373069 419109487 206819589 821526777 109969496 729760074 532263178 941534572 78425275 446347173 73923028 184714430 566033424 579270016 224509138 500959807 179934990 793426444 90190414 529502998 397218194 543158295 906828552 993340290 83005326 590728471 345860928 490498867 231823733 314534127 844158318 908913526 918394839 942067555 87965415 158828926 475841562 522558776 809135723 970974912 907946130 929649518 749513100 892391322 228627021 714870512 216460160 800130324 613022260 826076137 368185584 376519239 584159177 635154174 761438173 865493648 956212463 958665699 295328144 575334649 519461563 809142470 919366120 958711539 707439061 980539882 77103310 283909677 597310651 874556880 776885998 903191378 697241417 803679688 764689202 864783579 641644189 657763621 129031157 641535823 768411288 995375048 903376499 970652267 515537156 567465249 158959051 325367547 9967877 195419292 263202946 276696593 113666138 360680710 988454353 997040020 951705286 960279533 448107657 810947915 406232205 856799223 190072834 490285634 251170937 868264979 546010115 740707370 889622419 978761731 815186578 840856173 911783350 918519977 312843008 867262015 866465526 906488863 82458379 458499719 43237195 666658075 768732960 920060692 184613782 293235828 292035195 864453022 719658030 797733051 180378784 358214341 790328673 819601838 119291596 981282434 125100582 859646400 77839730 356868845 816942469 958108389 956541581 979362613 47687360 801627673 79737041 153864162 612983138 840576014 744144578 961447477 149255995 557186499 770199300 850414113 150482098 424289060 259314288 410207161 462084686 842069593 630668612 754771891 591626252 819942809 546338415 872096682 27620916 608791920 372476399 799525339 41570899 88095114 252767678 509137285 933430303 955307760 412828430 811412970 639734062 713795270 346440476 561842883 615130183 779529568 547037367 778241807 518094806 856279351 82355992 560300655 413301699 750864396 992481920 995614991 309631022 814559801 747026266 750936867 283994833 810018484 1396238 508434446 497939359 521547665 39101183 808594208 902089210 988307452 678295718 844940416 703387421 753958068 372717648 429795439 30079559 949825811 527594240 873962843 723770038 840460877 777352071 982276950 11165200 516150067 648735411 905369944 99940622 447781189 774704747 879665509 529649603 703590514 614202437 939667326 146910842 359825208 345658053 453971166 154514575 632830056 15494946 154857392 68092615 381006399 416328534 958908233 565376273 873740931 100717429 315065202 493826581 981184050 695348839 989410680 163342703 959813760 206526596 449063307 563340274 764759340 905342066 930310984 781011305 889736627 847712562 948145163 908596605 940290323 292480447 378622960 548097234 817890565 708341422 830522340 594321168 800861619 919837067 921334369 911211270 972869919 369244995 888584589 54252457 866266442 83133254 567928617 827504153 932734209 461068293 754081440 116874815 270618734 93543528 685503356 333014875 982458339 640065959 841695046 241215598 933337973 634949304 863019412 241376943 769035742 508249377 664910794 769831018 852467318 642875369 673926567 522071115 644380483 579322217 847542793 106902779 482256233 80700966 438341838 520797833 911807667 26267367 773195235 796183676 896076303 620802394 745640213 438560374 575126442 398515690 998619413 394252103 489832381 105723229 156160987 235522064 258774547 965183558 977883139 28918042 39640904 525658140 660422528 972393756 973903763 472528548 779462714 42881765 391194794 719259028 825428579 920240135 991600559 989245614 996343361 351698394 632356753 229791684 930693102 223549646 506791068 726380533 975982782 65282034 162709868 257757282 641490766 666876347 873162337 699417474 808768478 390190536 673420583 371864916 910203281 397880644 405151954 96626141 540528238 78968776 276703233 636221159 888215581 700342598 706794489 465111751 532684503 171394397 996211348 376814387 694900741 852469652 902910252 233635322 349684430 807866878 833577301 861532484 906724997 163732413 291820429 966454736 997140506 986761177 993415615 961470365 995723407 274685734 630603551 644340428 949064134 768448350 963675432 161981372 684940124 549577984 853591237 395639701 588636899 762857557 989729611 340374231 504275983 789426285 948948891 990630852 993836023 287998445 686561723 842840977 883515152 870347535 972016840 764994004 829354473 287805213 607889317 509097759 842124465 432675647 861116030 322224794 481318875 232897549 516221354 498566708 773945619 145099151 961892584 91594743 820705240 802583782 838196936 104539606 990762225 593143418 623705665 883876630 981275641 189373918 311244749 379834909 881357673 902743857 936645690 951439842 956295448 807614321 871165020 699992625 938748809 204777744 236514691 976394092 999087223 241423090 985206834 323567191 478722719 538218935 556332265 70467558 577874868 887278448 921311782 110378225 586263658 747581438 880498181 885661289 954581599 350547966 508415678 317532514 406823158 80865102 725982246 38613505 579578392 93408702 852537213 338276040 610061082 692546793 889296070 319487414 542764153 623378278 866959624 75280590 726166287 416540702 869337331 804559438 859832920 238161130 288701026 397217542 913319194 877703970 922591152 467165002 799839169 611847512 652263258 40115309 105542142 923160487 935336455 4780749 175194692 195796667 706494011 551503541 782064089 480530142 816458825 131385078 883388100 500394620 878575951 782182006 950678022 704631579 790283099 659786563 972867453 313865994 451634434 752121887 974787491 494239216 952431906 110768877 530273597 603905964 889187531 247455433 736008267 39891772 790298770 138607213 939399185 484901873 807635653 966843128 987189886 746962765 908184821 478197269 765056494 240010184 755308141 295025036 839661569 298203640 414264926 774765202 882252488 369401391 865769461 58358523 936075213 238639633 419066367 966069626 984859193 401159601 535444285 882061328 935495502 549358774 898736624 186537862 302430555 789614766 939175645 699133661 897949216 726840505 832729990 925762533 986581447 775663320 902434180 621146328 783177945 108518097 470893313 562849378 773195770 188658441 567841227 380862059 434348409 193023109 994088452 622150748 897103086 710379836 848400968 499903261 736940809 130434271 296180089 989980563 996644048 87170788 946622312 870934195 990078138 710826523 985777000 294230697 522933122 638130109 728261295 983284555 996787447 170174749 777363192 202402677 664513744 362642 548001254 726405424 744509134 931937917 996113311 734229491 776376009 81352767 452198634 185169832 484564705 770717533 997139419 951689240 972610115 423105631 970844345 79957217 766372598 223678794 583282628 169337973 973726916 191949806 334052318 73329875 420032731 910160932 993729582 799713439 810833956 447981988 603208463 97930518 466049967 134132277 215442599 800250084 981746286 995473406 995827219 547827914 956104759 576531794 577190665 132596022 309353622 60457402 702398882 346424188 965517988 985135176 994395482 696181685 875561317 705072466 900617746 274322555 410056230 6547945 866087371 926036633 940977622 99153891 137108835 259140751 549430291 171986196 910344035 380044877 496807418 855547161 925398677 433427372 556174399 20590489 979774605 257840511 647253037 656583621 820408521 801043264 813634856 548950516 721302703 405052320 496819483 824614675 900103747 137629605 515088473 329747967 923338653 924161355 934245252 996323232 998885157 936369718 942973264 236299001 925961854 871002565 904770949 785326607 873804274 664177269 756189778 455063521 951101136 939526711 989254015 463221813 500813732 968900950 998555327 979905889 997238760 135792054 647955049 402512553 777019327 205605037 585402630 690831145 830827499 306659345 347896908 30239672 315629993 425150677 687720140 294123544 983581096 957281801 971779614 698713455 995630960 382024611 874541074 607466126 697810859 591730426 770177326 8450414 343423601 239505881 913790638 431650862 656651696 919511044 926325768 673811258 794098497 827133617 854103306 692943525 955501812 996539841 997342835 818981365 908891958 156200102 229127604 499005404 690827547 954718377 983358591 324283724 541594510 73947768 972975806 328228381 457172372 319002441 331973124 702044979 737380122 55896481 434067557 840956515 843163492 228790054 613669799 450867300 478997257 136960679 561805281 477806073 531216490 507577487 683696982 36300976 954988416 280849986 577707153 588374257 734435446 170325025 968623553 862959641 907436607 478888493 805877188 682577861 837496511 525874602 931007146 486637145 897101748 261672864 344548458 662349753 725149915 253126094 846630202 203396533 567513606 741283110 964498725 578458973 705963835 902476629 935984092 29370495 855304969 960916562 992522396 44234188 303167572 214514973 653865923 926887318 991050343 768457425 867402651 603431140 863605622 579895105 775870848 814533349 869511069 203941330 706915857 10635806 460511226 693004197 922815099 92527318 122280931 101864595 187765127 532912359 840084698 66960086 230105059 425263338 547244581 729759924 810059498 114635067 826304617 159786786 475030291 856996779 931785261 955146559 974620499 621124550 809889231 864436444 949812662 217724535 998152903 759726788 973020072 536097148 920240595 93514302 395497057 341641618 467325455 219244880 260348234 369149483 446929765 442422531 964201851 52328605 336147198 109165503 133222473 484746062 488155978 81132682 542825716 109398381 792016694 679063006 933343247 649465746 731303726 229475772 869999096 237966222 480452510 829235399 946800455 390280640 700257514 287215299 701542470 950357836 963645803 151932888 541000497 101333032 110985181 798751008 889803324 487221127 670933370 677140334 921548518 467538946 929425705 216912690 821846772 18800565 424242388 217888321 706367055 637073664 904980580 929946347 971450304 914942934 949354841 902723166 983430977 933608958 962176418 665182049 872750660 201187932 449168666 944952292 956040235 284100512 489708124 738454996 782290432 969072749 985726179 332290512 729498895 947071283 987216336 79387435 836205000 174059191 885963459 501836503 855286360 217203837 337881077 423939534 461192108 286881181 453625285 916738448 931269573 952179100 988034147 509005812 662091535 372008912 751734410 661321020 970161110 547947171 877974388 942498099 968715528 965683378 968521103 655343843 851125928 182853003 913104853 283500567 369522954 655408129 822418173 993684788 997136184 332031996 467026276 695371698 890552103 22938735 201498696 419455587 950331143 995402375 998635875 155454620 929954097 346882804 883991113 612604824 858401506 580094373 644222390 505401055 559341735 711823856 813949633 551199500 598362094 155081596 334039601 229687323 941324560 156224127 558542994 594461239 961299823 546245429 803947724 482593666 697497896 557940218 688462329 506518560 728475390 215201024 665161353 229583905 728212055 623407719 845506533 301763981 511355612 670825989 845960957 33488008 804902033 626106271 715554627 243022787 843463179 153458928 448321773 142654315 347585453 998701814 998864177 18228317 361993677 947836597 985681613 298692877 708174257 843293275 965597331 219056320 328046328 215158900 928426991 734659604 991054912 213072272 997096709 333034902 420642859 311122086 758147324 323795831 517818078 259845633 915673596 144993924 618536716 788582838 860732706 595531783 983339345 745778074 825890721 879053956 906988143 519314456 703366738 615062341 733814141 835487861 987576587 344185667 496980333 849956033 899962515 925791071 945253997 443933069 622100181 922321997 937402299 747141335 992359759 597983100 981016440 706836177 993973356 87656346 775917477 779811362 856203440 908323729 943212824 648943057 657214115 483395178 956299409 747931690 924736570 935387945 988475643 132898511 580095226 675561971 806069106 287392042 934840368 467534094 981308740 393439000 527420182 759489861 772396585 542659832 971038606 723982240 846357608 728420918 765481242 806328108 869981688 319961658 728009992 170636167 216641567 457521227 809839785 219429794 867041987 722950868 982071583 223362890 271726308 977623989 994435075 726883720 947302417 312068501 599535400 79479630 365647180 477015907 648270130 192859692 285290835 482523738 673146537 762641319 794870337 342280232 427115457 905211784 931348074 23338315 511297115 94043435 433913666 231289691 989661682 649535393 683008770 353258697 722293506 600873192 799182819 360261163 514992042 105397075 273515938 132257895 398521357 998171286 998663578 850787789 884115484 176299513 198903475 155325519 579772752 83515295 578741567 224144710 284955914 261790115 960359771 118106742 882847437 297518584 618398709 400653345 991747938 902681618 959568212 711534244 994147241 161863520 176126583 151929100 505066018 879278172 930112454 949877491 954861427 276693040 561728240 700476566 823607255 829947226 858831755 918813116 990795462 344372609 446853998 68184080 781669592 748418807 764314717 965159681 966447541 270864328 878143498 959456947 983495707 47541393 393584692 15051059 656505783 296889700 732999954 58160359 447315702 767048536 943118843 976543636 988261095 507794950 967583161 581590402 851563943 404641966 816908855 848289490 888784428 222096649 876829604 159290093 951286306 345120732 848900765 974301993 977844226 237834184 851371267 63777764 574071447 55506708 706541872 529691568 575062131 327218966 987418779 253888215 406793405 395503896 406991245 681195640 857878411 545842871 875401741 78263379 605349432 487383866 675820946 213203331 376187892 399819806 821369909 796421431 895946915 398110499 725165669 271341824 786542165 867124417 876837802 246165578 303378397 106927784 256083060 577722908 830389304 908357194 911442145 584807922 969910957 6084533 865294620 382371374 655139377 904594263 946296412 49915889 389332853 28725109 438026399 420044680 735361137 9796488 362720518 89099669 635905196 940500066 958151777 897347742 955750457 938257298 998163603 226453033 946931155 364677488 372084533 42850416 397963928 137509453 242321274 959793143 961084443 883343363 917859920 284038691 343275424 492897885 915118241 928043387 988666862 358117579 389525586 789073333 988761657 459616823 880405370 767670451 768864612 630649148 864728859 316285326 575034251 869627274 874315733 595212363 754720470 838193489 997572073 725057016 867706664 72307029 781902339 18519378 129053305 859551306 860058406 452083998 614214102 876000085 914322007 724325573 756488047 469307747 606405871 622979831 670215151 469202598 671493744 539432719 592123178 47074807 879626844 217588511 401989732 674010303 821655967 474018200 800644256 436225036 503100972 899988197 990660881 299200332 974426943 629238355 927107888 495282209 899590920 602459917 649467082 788678402 937788860 718753571 807687287 825742197 863806826 71013423 552177772 107870288 589508348 807134791 958956953 387017502 495885537 565264679 860566992 349232614 903867712 966184492 983288593 184483594 972172798 354529639 780183126 729959063 992161385 758357511 789082599 31682110 342564697 190764095 697811968 181734571 705410160 745195186 995551791 977002759 997462169 687222762 998026536 284374325 296649186 145614963 588812139 244134479 677784405 278638219 649505159 273509909 274148764 777458474 796120882 956252037 963749894 395114565 862843631 953291930 956022607 714589164 754113788 762372033 862437490 419491639 570766583 81961890 767666079 927338506 974689861 555482965 734777397 405162286 881610240 191996668 487967712 952451600 984962562 191906502 264373137 154103431 836691916 489950781 880423854 873768450 914801004 278531830 732472144 667924038 751348779 378901687 909479163 95664403 624003968 436502773 974528440 981520370 995032787 675069237 971689747 736184856 753526960 190074561 947191080 836715628 933358176 107381858 930562337 914407496 921053941 724326676 765506078 695907803 849325815 432020297 614797121 321168954 712550696 318503735 383695312 2034832 944647061 504333546 535650537 597127575 666692636 58283428 290752374 835581086 958943388 127065165 435465298 249852921 812978458 203750728 635439620 819820360 927643161 392277259 993136352 294644806 509925280 20027930 466205918 186777009 249283159 675750899 686522307 189319688 201222675 897773129 900533031 828681326 911644633 522168948 694864420 711670718 787115258 701580251 972086655 904915087 994737946 267563010 344995934 600505965 931567341 624214931 754297347 343410120 716095053 643551082 863579110 143760930 996955447 34650675 165878430 705390817 865204661 171530840 867054381 406029183 455060040 124950957 279645723 32307586 622715969 436710822 578149943 290943482 636321346 913925276 971736599 223515407 245231469 419204774 895868659 275053273 309711189 612834208 864923505 906963337 993185522 5111125 426542159 980663864 987531986 769216567 924779849 516898360 691585004 197746897 766137634 845947463 887310884 273729707 618420790 407850513 892734563 495763030 594491983 511067316 917073868 619741844 867576846 565552313 592409446 901887688 964181267 251292834 385608380 901165423 922535447 772357008 794075575 433939829 944194903 953431842 982691292 573081937 983697117 528335872 697414915 277243828 812809689 809221244 875719630 843525202 890216441 179284991 539479533 746981723 786071714 354118158 978555376 750767027 985068145 113360742 439003477 497844765 685618101 934543873 977551400 974233896 975841371 388602226 543899667 915475913 959239679 597490479 769057726 140788465 209570704 652352744 837119060 465453076 706523600 409374855 599633107 899620672 968154316 467233277 643951980 830590548 997389502 303605755 563926677 726972302 882666016 143328988 978228748 374358260 907281366 543629198 741849166 375307118 702625648 354380069 449086012 553834663 842849612 445934345 991561438 703864636 794499147 917215029 922276652 664192212 866229190 453592003 510135617 63262927 634184169 432363553 870071834 182795937 217570996 508683242 555751413 773934793 840454775 61886395 915124447 307384848 973727965 806026476 916359326 195540721 622104238 893328984 905008571 666050094 731060820 572053637 886366817 567278934 647219634 900397625 957210880 861800195 931619099 118034616 305570943 868086507 952467159 664652929 876412245 340322211 665536466 296623913 806476247 179985722 898759143 46726800 124708250 658339100 674651676 694096258 795469551 292878102 609105089 934668738 998397706 668566550 834621359 979986416 989772284 850600064 955488240 149232629 980028198 229247109 463470976 613410775 974012237 213158369 994675684 779929073 948059161 23353243 463050336 267912003 720432657 535537114 685535695 113589407 673127260 940236658 956846632 162759873 271586197 654378049 962574000 989245729 994328887 222742932 332858834 538895214 914773664 113035507 544553775 106609867 434688816 467295792 468929065 34476466 529602213 35767000 973006259 878002433 890889139 216283258 628391955 367673618 915272188 497810033 603419565 269544114 307853409 925694637 927708714 494814047 751620546 157658352 503884540 650366452 855366869 54367313 255413129 19374640 109730347 214586562 703416213 830307312 859619192 807184947 957444705 148560849 976695262 882141117 997660491 775601865 942166124 933449644 996633169 991024499 996256474 200450008 766213773 526556512 923271721 35766985 170096139 281470065 893095531 840645125 859347335 850131303 942087067 23775197 736745514 128408421 138485013 829812087 945290448 34397721 399186696 782014147 992722196 894613820 931273900 889268918 897417255 462455149 518187847 151593116 684419881 876707570 881244477 210631284 660797280 122536749 469332773 86811238 191206622 102884252 840594632 441562374 590046111 919651384 937239214 253666771 385592093 917088442 984930381 631824405 747301705 801881653 893100569 898084476 977875043 872870084 880992249 432906529 799461794 212002489 884124632 391749740 909227436 735988027 977870122 294327393 661900160 479649250 974559349 630451 596630884 110776662 412659968 695454122 865275115 829592822 957848464 518878124 801225135 238483134 365015229 898377408 959093797 964837770 989496704 702634623 965160242 953307088 990214667 778920282 963758911 880977514 977399563 602680776 681424193 701314130 893874405 960745980 971199411 116786915 469294414 985560027 991236178 949463320 973934016 649060014 691384418 478935031 948697862 521332571 575830450 739759914 856616697 420263584 460869107 567216182 639543085 870777866 963606545 459919273 802039183 825295417 844039361 989658631 991740594 75236439 805980899 36493590 521739107 601832799 753881891 69928457 507594363 922931689 926308108 862812726 979721737 820548980 892158744 382039550 481310127 253917463 894456758 130958335 258962883 840200499 901655931 856280634 946003928 957996610 975291750 189018784 623173518 709095181 949649914 919688196 959766805 341284785 470858787 767384691 880752627 508989209 824299136 150616838 693541442 671029342 762335793 123319221 950785827 997497513 998411598 517366341 669465858 970868457 995374600 612444827 660000433 166451660 851973883 662130396 668587403 609166694 640955802 867574733 904016143 398744665 584633202 372773987 707612398 744038237 835801963 881482373 967748788 193792521 943888790 72751898 232564505 667556393 909760233 284541718 905238969 66725637 486171874 982281961 997914752 412566406 418119762 236377078 712327757 481953586 821445583 795017076 811755697 775813376 875292563 179398520 840706687 788893631 810329878 417088285 983869650 37920089 792744128 374625664 423005985 460317695 805461815 887948457 915077573 261654157 685530924 46374056 464676472 681760546 717161815 519325766 964317398 203242658 291199767 959511424 987083570 366221444 710516441 113481332 869214529 914099139 967851884 870278097 892945060 868242545 879980435 407427757 414075212 464720263 580429733 630140051 896776816 929750803 985517192 303383486 568538038 898539806 915770664 800664134 911361872 653203447 737538696 855726482 915027511 924317525 998271142 226080358 875018748 827484056 881362744 18988884 132312449 973614863 990176820 9310052 334860215 333826657 409536972 468121380 929129594 816777301 989415002 529428677 831802750 313551109 438068562 1572139 265746303 460298793 923899910 545224222 792116228 765072073 778385019 279495304 348020116 882940056 992648239 256459985 632780736 941897456 975611796 99275182 582223184 505541244 600553382 575094242 603480735 381565662 669491185 472216322 697036591 859215639 966482232 804614959 906378238 638443836 904880637 523529716 937822305 374478299 432334862 994412357 998900231 733711088 858355648 970289723 998617684 942595463 968134991 743745961 992422951 471809463 553051916 986577814 998521492 539369917 733289143 971357164 991691254 722293947 915985150 438214012 885389901 779936911 819454836 843207779 856449087 675638192 906581734 795893149 899666295 578915419 592373308 995727920 998623486 173066342 916844541 925054779 997147315 15448802 742606275 473658823 670648835 896589317 951674707 52711761 995333860 271555628 806023252 59310729 72007682 495336257 760927790 257147154 655565012 287549460 479468171 768098837 834309032 715231375 831973714 95132524 667376536 962494584 969960948 156881476 685425763 909428731 912024203 564858204 831772723 59077124 626397128 630414390 724706073 655519028 850141353 907560187 977721251 265053873 762965341 112673598 775972532 148314894 765268104 408799594 863273113 73862903 91014727 557279393 708171187 362629814 387815587 718543756 775918305 421214869 532705508 543267566 742112587 793201186 981893485 453464835 504974450 710473558 742399191 15196167 501145271 876467785 939709703 738091280 773073384 193282799 585155464 548010951 691302149 544473836 633193494 468634975 766732743 533840898 974838997 666843285 692299681 600814080 778768243 677503424 816787014 986810453 999136130 639550983 710667595 642197888 855696363 925760895 967866731 630128918 907943102 850983383 922226480 753836902 989575924 511833802 539296325 525003262 815089770 280519492 455451947 195994403 695411974 832195853 931808372 863724954 883778978 44672120 478259198 427566166 954354176 924007229 927797531 740097788 918880954 381287863 402941597 572494576 762225049 681311136 715632394 142001904 423703396 947496757 953245996 342621326 961991440 283800536 659542435 45863756 857199489 291290280 314510669 391865219 703357151 237852701 478037270 962269507 982222531 659048655 671408597 238095108 260160273 388106524 958718964 343239170 357256452 183124332 755395266 286244267 927516360 452708363 638554303 803032917 811469659 214296392 419585498 424847079 728887002 805798516 854617942 623187197 849000794 436734839 478286459 314742231 315262129 217877071 279575677 698034001 747667546 814293145 876725745 792740453 873692868 230066830 985568709 554067584 916431323 688062777 743464846 548924052 824624350 289647838 944134825 721902777 821945051 477464423 831812920 841201039 988245810 577021420 730981115 677072811 763367567 981594617 997028949 163776917 731717757 875434563 962898908 768155304 826693226 699881358 824010930 858720774 878942343 663189469 716200196 612213055 759643194 296026725 515977638 399128624 612822368 970212399 970851117 192495465 841521640 289912995 910512177 759191423 865770057 53111490 942942608 58702682 574867201 498566032 607062796 500943127 590148450 519139222 754760735 826903390 832689562 435956686 660938881 343686593 356071370 976437500 996543907 823957414 908717342 881928494 960664565 784482137 981674974 596019203 807331815 317733289 919236715 516965223 743526579 523899510 531845037 974378849 988954033 952222196 966776768 230935043 818758566 819494757 833079602 140784851 856302252 959549743 996268685 159504981 781846199 232961065 995395364 359534541 548374325 748995260 858157824 6597615 514534891 842828071 899343678 492975086 955813082 919149863 946672249 615456926 989251067 508732760 934882894 932931987 945378598 62737039 955296293 557207784 980257719 797043384 804982913 500956772 671059929 57842707 735538229 889086397 992010405 461455943 919837014 170165097 345063862 662997502 878286103 265770263 703462431 301046945 506037945 563472285 873462739 98682120 698887364 208916600 412653984 860701665 915499608 386035558 938264463 729711643 859154226 221071511 854810387 237077102 455642866 484487670 788633236 986231599 994380590 26300681 390539587 130664027 967273819 33770223 103437208 239079020 529430645 676912445 793628419 941281011 988091171 845519616 962130685 908410332 986892464 586757762 620808938 113735229 653947905 369364866 599030982 181515799 240369735 43568823 586309679 988858129 999014189 849444879 936778559 937794451 999079032 484200259 932466322 262237669 497132513 416628070 551487170 904300037 985764260 404370533 665593013 251880261 277555422 213661500 307022000 998526543 999132976 964874026 981912007 146701860 256109586 202540933 255526472 664674583 928353151 133781928 795742380 391387935 634345323 538910131 910093443 665748858 686529164 28242555 641045951 134959023 174808822 684223193 763989303 19372851 698347674 479773287 610289037 366633577 511495099 83524455 265250934 909551291 983255437 346891580 380023850 87857041 829121359 333365880 515212652 572581956 572733822 659341152 726163477 189762975 437277918 574348817 784582509 838132130 873062430 186330710 591833299 2037295 952279629 671445384 746626371 215332194 678798222 423521279 735806076 961568670 964548590 673867540 968588673 3896202 619413078 208694231 556844921 910823758 912729579 435804785 682331755 161074181 893048849 535333136 714406033 330273421 445782510 625956775 662634397 242303100 330488091 13056242 781415535 462267239 777119997 863102205 996359394 650408153 891746693 283959539 958914270 501930645 553299367 949644600 960150180 804057192 829223315 171982386 923323267 390331119 745193789 156124287 949644445 348425368 984365089 296260671 849415119 356912521 718107029 374383855 672473453 472911529 522573316 360289290 716721092 173317133 591568934 567153781 570813742 945313012 995716466 151713370 684972679 196670973 937043275 449987841 974441872 384702668 451954333 701253857 940027427 716275998 993597049 580230677 766463543 413286609 501410519 676333903 814178637 720464804 832315714 774678242 982673712 638131861 768420628 81969955 403312938 277310884 347213458 763049500 996575704 796131656 822201228 483845041 666365531 766876928 873470489 135655346 808525031 628651506 734937945 526869643 815223907 667558010 783861967 343514901 907828189 801103916 815391062 574280021 776386406 45875173 778450711 336029991 429560327 726665029 921518846 403883634 778488286 364329866 678188010 460486561 699324162 776125314 806663094 399287753 799132131 644300742 794558782 465366571 920946597 404088114 959175224 838365895 945480464 844992795 941181283 339189309 964851213 319742647 562531790 785762752 831771895 518782414 597440702 997311608 998330488 251278221 598555156 15554906 140880885 788551582 833983994 37111236 254590220 159543593 405288974 300897116 764722111 347783862 923819000 28062509 697539658 458242286 697752773 886683958 994950965 170578226 635463788 863894783 916326369 954386343 989637654 498877815 834152978 98613866 793631629 464230532 596458116 71390877 293446191 937056717 957978013 126262219 933071849 835286328 993776976 725154178 984240701 381149468 716672425 142056547 731352058 31844900 528687258 228893297 339818309 272846082 295323516 114443322 552911465 924659242 962870098 588319240 613076644 660783830 990040338 473350884 714910461 963302466 964607146 193821253 199303971 126556573 982781615 247988689 439609338 829004261 986120287 725126066 970974232 191638318 849424371 305190805 780725126 210706336 698467991 23261814 943474888 93646023 383095480 451809743 696661378 383229481 662209781 318098716 341500262 222579255 976707798 462948386 684164609 157936503 645086478 174593386 466059946 298162133 568976814 783418033 810267878 110620881 841057580 521194930 556938341 102839136 805199238 256084579 422803302 508380831 696233896 589209008 715652406 706370220 979089283 490186873 688781817 712762669 900104517 877643038 923163912 796703059 864098886 349149939 667821162 318342853 358318439 951927392 962683249 925356040 978609141 461258181 809738924 90022575 808160137 822977115 947588965 313934999 340389940 178045406 352207551 53512130 654191740 781254420 987691143 115883651 472624432 816570291 858255599 643490117 984002475 590102439 988192561 363779143 576375512 698187087 990836444 1123818 218998303 400170072 818122765 892433300 967474600 601856689 640247208 193929253 851311932 957401365 968271526 492360892 988114426 503072317 786273737 371536189 784787768 46060161 572193026 864609422 920912243 580891008 732711803 488989437 991350481 65407388 241541412 712194519 993977991 71131886 998404451 561312174 646465088 476332461 692113852 26761982 404796351 660507489 884941032 822825747 899927669 945369670 983656077 123616651 266564682 211330437 835445371 505400529 510548694 695490655 862488138 369153848 583333436 571878831 969137768 158681675 795926218 844467367 986921250 311246944 785100071 958014262 966871600 367704434 694566172 273673778 679831011 472546096 946149768 718677772 930502903 200202631 283982844 38834274 856344162 310975217 502671587 663795782 711177089 93565933 327130998 67244952 585129264 670802564 707198451 429015933 795802575 145012709 757785049 909482799 936293407 715232637 796117673 641208244 680851894 227306806 382992735 741241618 788459526 183719137 666743593 485234758 609213381 133927265 330782039 566211417 711807126 572460548 894814164 347692530 472474292 314101373 636924130 20859482 563014472 830696087 861216717 365750433 896219230 212963780 269472354 656508124 824780132 786150930 911571570 538501631 581802667 417883571 914468222 623523340 872444377 654391917 845886129 629483963 671562137 481710770 940346360 450126405 610825538 612299053 926880744 223401591 897920732 800286210 885515389 204401435 371457697 517337242 817957211 309144263 510110692 428944558 853596717 113037823 353631716 137425811 351972964 470279579 863236478 457813331 907631512 408263838 579580772 810954489 835810056 882091533 982991405 587574172 710155307 198534332 958356487 588499090 593325602 792586575 823091801 549634740 905849107 358794816 820124037 538157187 825864272 553788867 598432679 966183546 984008058 650964995 960834313 355563257 779135139 945752707 975468073 488321440 663073546 764812586 855300061 943545821 956745339 903304413 919732944 398016564 659681755 537506417 715611330 509057802 776848459 598239344 785709719 164312018 543966276 543925935 764362003 467468521 729498586 838657904 965007895 409424337 965754717 337522802 691141520 18959122 444658430 937413028 944931232 548345240 585355241 81326289 183200040 661652043 724096088 539446969 939244276 96073070 421282999 361032663 406891285 376215027 556066336 869931220 979700515 257636265 542999056 696787270 986872725 766800557 794110898 796008710 871334195 249238284 472192493 124911521 240570610 936262948 994264229 110092711 949200213 340823705 644544200 281655153 292889295 885640518 975197650 524346854 538731817 248678857 997029107 547172382 695433645 422551288 681994291 548472294 730183169 292619637 463642396 744356250 848026258 64910845 620410819 536375226 914253323 57634075 284036353 286515610 465636241 980402705 986123795 830839178 934384519 204707962 562322355 693887084 730607729 944351155 963694386 1871893 390852670 186701752 400822524 628006994 707455228 611971572 852252871 549642772 649257991 848748192 906012288 638387301 792044364 318138843 969273681 4427229 61773796 567042292 652968694 530144264 861108460 110460960 465235592 948485686 949809771 722614380 913004133 522240146 670219956 157910968 799917516 867100636 971356286 490647709 819332005 53509775 916138140 353478037 546810398 60800300 417385988 194442726 207224510 707977576 927491950 862850562 950317888 117801660 204877188 443421617 816143576 341026893 514113313 886387947 959468442 850762746 993497415 202953985 814666766 325775852 403823125 721651089 768363046 18998393 194925349 183428618 388084555 422393347 915864695 208489252 892005816 562427886 640213828 335721374 512275147 344294897 539677807 593382981 778950316 553060244 632758977 95443276 887813545 132560160 141862316 923794072 959940554 734934523 967368979 816565392 829007542 675677419 981422183 6452553 986773917 346856877 701343171 598904408 722768965 576155167 998242482 855247575 998635107 315481088 593819540 740478575 973550394 817346848 877945784 98649555 219394853 217024278 486042775 879347192 924229123 861528279 889505225 551269258 752051718 290114585 356141153 113831986 870723723 768219347 912449220 174238387 423788013 888334194 982275015 575043720 673685638 409638514 992022666 267071431 437101650 268960358 793126352 834905555 921513251 465726185 916894826 919386042 937584401 532253053 752843227 690509225 774301616 985765185 988477621 240263104 396996830 679158236 707869843 843723082 916496667 567460083 755929349 715976494 940923992 637471207 785618746 812586025 962226921 22103808 359931835 45849998 364594577 363681149 537419396 147944332 692386028 616555467 756103513 581394807 649347357 761371489 885218916 972171053 986622689 77996755 101797233 289482499 573997357 145009959 995451620 261585075 503874594 654512853 900697837 16685535 556024407 912646591 920854858 901235289 929493294 570475547 735960599 431032050 935071974 693219398 848734098 305314660 987970907 436996360 519883637 565402679 582920088 798906223 935883619 771234362 962105940 518203911 924461145 155892973 794100951 863483728 931510437 188447687 957262562 795729439 845331098 778628616 982301410 892161807 993290166 200282046 460169125 873317385 879492611 215540236 745472649 842300943 915586823 62559024 168258658 976276403 988109084 88009214 762483587 509177835 952765021 944628839 972622070 783673927 899046897 168132423 303116940 646506954 753398041 376919218 605396035 564455535 905432743 216933291 970022878 643455881 792333577 451764422 767162285 726241688 815607432 281709368 885059261 361324520 733405504 118211891 237553905 464162300 807026813 494571529 563416596 247835998 324643791 828712337 933999684 141548330 190366530 138605638 144991097 425231003 923048499 706896870 949836834 982591912 998255897 66090007 260232187 904797890 926376760 545168998 755937247 660750770 990528517 356589437 992784960 74332698 650195923 968825032 996347001 93941599 711325406 703410909 744361887 946305822 949564807 207220940 657129004 949793833 982159970 502004234 707317212 742360740 807792767 229175172 357316132 93121304 921607781 445783999 973618931 659995321 721459770 589344449 778676801 153104153 906568071 929329652 964691946 516674664 760475287 415712371 982573150 722510420 917244529 605652196 805713845 91995638 367646165 68264055 319234577 73774007 862041106 541889622 590912894 499204540 586675952 129927405 791971501 72083755 876698071 297688928 768309913 486548003 811734698 652595477 690623108 381165753 739532274 959985469 997380230 170129481 453146765 704456291 829235921 489684604 691758384 688331611 815910424 91460178 468648328 773207166 910504716 607480601 864173773 893280896 946281354 525098071 690832721 593075288 708136961 331321263 548236773 256043060 753555805 903580304 953994689 15914278 512317642 391608759 794765422 73084491 905160093 602970086 961495130 596881285 963365382 527244557 948999319 897032859 969008728 220581575 512900089 298001864 843683840 422828356 628353322 329080268 947343951 262460109 365970058 185410655 807002651 514217056 994213720 313886678 461768136 125390295 938651465 495934800 725216279 902249964 988227253 7476578 542470432 581142849 753217595 626299151 663061005 50539122 793930992 405264527 702106071 15637364 134788981 755874921 896639035 384831295 992082669 911182919 977302763 677040279 711944897 171311058 313689556 798296483 954381001 342068369 806767585 710916681 834025280 498346282 859903988 828876979 954800210 446324543 466728954 75177294 480746911 640102395 812756793 151521174 905595962 570385735 801135028 19222711 534581345 759767535 867560740 744922263 815630723 387052618 765120015 1889687 371460973 449264036 870949373 397265142 714461357 771252747 790734221 283839451 776130269 827124788 927072644 13200151 652980037 129052433 655813019 512014893 626998768 220259569 811872982 399000571 704979016 844573639 858713512 581459118 935304244 157215222 967089245 66359233 728400668 603385223 791977695 128730682 129756025 234294883 335152447 888888944 931883778 32524010 119730947 862568024 956209871 438762580 617919786 700404632 841872757 547570893 699855220 785560214 799263509 675843505 808906787 891335879 962093571 685183271 993023773 565702390 733638525 72960820 496267486 638786028 887067721 404092729 706710723 134625749 380699782 267931846 389765381 462476431 462923609 924200347 980882019 998818467 999347131 360183213 643127340 430111679 925979011 534389627 717637025 116317783 767139667 574899343 576673335 663652822 856744732 971373169 987912994 136621469 503616572 535669772 634059634 43114231 744945358 712991168 731871126 730568792 738858016 489741145 604887021 750943874 812592227 794198651 876519724 732894687 919417627 779255103 844805752 669371064 797165984 2990591 144398258 997619490 998668844 832053609 994378775 159107888 350732814 917054912 920416978 21601150 519676288 920368095 948550810 842406738 942843337 723281109 824894749 615638263 774725271 714613531 715247648 927892001 945647491 325767674 904424995 36233119 155512543 522526950 674018997 970819951 984083654 828620460 920999949 279352518 965872491 148280396 184435623 582863269 858506129 195093003 408183164 345766228 672838358 488055775 750322457 384866176 974371306 348559946 415734324 788769428 862238068 875914402 896145570 500189579 812129073 157586386 654360700 950859882 982573762 970815437 991970077 297317417 787466705 238416736 424090007 381268740 873331249 274845998 666100438 768818575 972222788 31609273 842568436 98593514 664445853 415306779 486692972 49921654 165035028 425666727 806253987 584948218 943246699 451023863 507571245 548360228 909400704 880444055 887234169 240936881 834924413 469138296 939723243 938162536 954966477 101294893 807168500 855447902 935578218 982605377 987852489 699418279 777149418 935533130 999321330 846376919 916850006 968598919 971503083 155387081 851536084 707149313 913640919 540910761 685846639 759787507 953549431 995372108 995846423 166646868 527444436 352668070 997453683 293757684 605425242 243305086 365892850 437870890 452614627 27540904 945415431 219860205 915815442 921314440 957789221 267448359 535592182 537022475 721648120 221121232 552733474 826300977 864618390 552039346 721567782 840483165 951774068 660267699 875738542 526251383 987578568 198939785 782320260 188678772 409081205 225411061 469274296 460418792 586691400 528692874 669249604 820535309 942764164 194919278 463453465 741610301 905903098 296733611 728928455 548660618 627310788 421093284 669593484 29799428 884627990 960008464 984898272 260502584 352511573 72070021 336596118 366852690 635131631 971213900 982942830 963145553 978810240 84815559 839610583 86564219 561447778 830280400 993082127 511427214 980495011 987513853 999296447 651888981 700479879 588963487 947415813 690520093 863398316 853842029 910283625 522897842 523374216 586915797 638238489 195385539 262852430 704834270 764124989 806644332 975421258 643833462 665859439 4021803 296639214 875506343 968874909 601775796 806947026 398020462 906215885 318742927 795526119 798042865 879046048 482196330 892602132 843332545 964792085 138570245 283002156 449971778 989771363 152306409 283229509 915902628 981821075 588504383 626310297 457731372 763657058 633487759 797158900 966485816 978965399 926554517 965925761 225377475 746772826 355713938 847621564 568076204 656627072 592365830 801416665 502197797 596728372 227972796 442174965 863499159 946181272 377865765 964265073 688237770 930163198 503953929 508028468 788433413 856116393 259911070 830457050 578849638 982880007 881239576 989256514 727474464 813494563 874372949 935166634 726586677 748192386 601917530 628102681 451809664 485255546 6984635 855045143 431912095 688635564 340249490 957409631 503723458 718681001 200540549 683586115 393022792 552074426 532101658 765772646 770512764 803619860 631542285 675078142 148911069 412159591 468597330 902222361 148833323 654926580 426235605 431981279 891567217 980902621 205377535 982032887 556482744 851693504 430020065 562732832 761731039 898742192 834019833 958342520 152191683 753812514 825266073 842074793 413787527 803957234 691784513 778190329 799171861 975346243 537934862 551997968 655193905 697575919 530722275 708615689 77303430 763931553 841161987 872274691 170683107 936662375 185710121 376126201 956258465 960888634 962198033 968718656 639864247 879412797 682192253 744545637 220403745 734517549 293269633 736198422 630826705 890767734 603985265 628700057 661161082 835707661 443025099 783529281 975735704 995287463 532222691 548855485 158196047 226154828 19532699 882497201 588142085 796703852 668696579 798734134 855884641 866359815 885322443 980116274 202265128 357764444 898272106 938508358 756926254 840834479 947949821 981159567 295279876 575454008 28346975 426526665 334397460 416686052 605134446 676488379 785675384 995344577 84083318 727921378 345746945 636750578 2992738 523288272 839912897 921944815 122444063 880686129 29583434 999239164 427185342 678806646 574549406 738893215 532957780 944980474 316640562 792417681 804691465 807059784 212303899 911018279 877115431 977132790 984613742 998714722 947396740 991062623 252060766 807196072 771008564 962686202 532720095 738131578 549509644 875217479 998916028 998916944 346787459 479937013 255154805 706972655 462560018 797734614 556220699 634673600 241287050 251559467 252487594 887746216 205916921 281642579 818851096 982739488 662174079 819470370 194103253 425997866 781641761 932138764 122637053 312999827 799169410 819493389 893904255 975548700 254974690 782890363 606303937 954168375 590758846 962880592 288075347 932831192 322028713 651302151 123666958 317471752 583699802 882898495 878948148 900255079 461836171 731991315 650912645 928067784 363089623 372395671 808967250 918859044 766278286 863923635 153577089 978144010 132770466 324660221 664533235 701196907 984648674 989770618 48947137 532528957 721617679 950834455 204662020 949906938 220105964 614000466 11459357 520991549 622018319 730347186 305884055 839812134 469106909 633622931 971905804 980406004 524050277 995241790 704734273 967142662 736170145 995185632 663150035 863000348 317959331 351276058 408350801 665411675 750753121 865808295 491425327 867172998 816430798 966454253 131893382 190199768 597948393 860928928 825015269 864809934 633435707 731920601 220760023 821285556 545157528 661174688 917523282 989921774 728677347 855760497 962514911 991591666 903541653 998973641 445223953 718635912 841712764 874182427 617209180 754414662 423987683 577134647 219583728 814579883 841347452 888297246 780341907 900892275 58311689 417662413 729527495 857065119 948000504 977039606 39845881 219734276 297884176 629899842 926940723 938036928 861275679 994757115 231556123 756203265 666156520 986239564 500215352 962369409 873910438 903094455 341264283 671989346 149265187 658482451 586292445 791175711 563682115 921629810 328174923 827385574 876040046 946846993 890758382 997010894 642710919 837200689 524170507 675318390 230023064 594142000 536133738 976223589 521169913 599634022 602765406 928773048 404733614 777017542 217270150 895258073 87685394 976586620 809288930 892376639 212991111 621685050 160455087 769101950 559127133 938304865 234901509 240240580 372526033 759778473 875396447 997581561 628138017 780122880 95636945 218147341 450492467 875575535 925943079 934142696 856306109 900250205 964331503 969304853 702690668 944470936 383690419 440635772 802003616 882941009 48252280 942469454 675116325 772591536 126443942 242333880 120908628 637542735 5397206 481386088 410208078 923135532 17207244 573180030 27221282 468523499 677153560 744016969 248952018 974643260 338577961 788870594 328820373 855170668 300875029 503079448 673459653 919821350 580238799 588578354 682698918 823944136 115246764 731377228 925261131 954234507 754101412 854481688 889087676 990456750 883260205 969546542 5782609 894162847 857511945 886826312 526128533 976416544 44528001 400372008 312741124 978404814 189322954 978871475 708013991 864882057 313797568 742861649 609209409 668728892 900239243 965803099 166589210 913007290 355424671 407236731 106445092 666526588 414260950 605592723 161547737 708034767 451876188 718268444 196370042 654890949 699593407 819474652 726285230 745783792 605458503 831519918 816264375 897597250 156671015 957946061 264443154 925194297 955108218 967877139 448190289 702577854 29827805 656472604 211155942 867613973 405031764 866104170 80563406 412920256 832500697 846972869 114191754 993443765 100092322 516932657 417931676 630208303 571882158 611503113 449765163 734268943 749413591 874984916 122315121 939024923 538056993 923042923 768488572 879548708 645667429 759853472 567178696 959422989 153132786 904026681 720904479 841920707 903886087 927372923 720450142 966627210 376909623 545899883 390029253 861719351 913621526 962264634 661707255 971954062 708015205 770465561 898433001 918441678 611499235 702768356 398640908 528128396 142879076 296361019 568895358 978710791 95212373 987935853 873050909 955816397 345413478 780118714 734452722 944329593 508536376 799113239 106825448 660491219 790968470 914117612 158617792 205787148 131415191 956160330 12049365 460044178 250232630 379959037 543524692 858248183 664038315 771435172 717157626 844076252 362129236 519068893 612872096 650664769 52057054 628532601 510880429 817100716 471064797 810753023 982599957 984875456 290227411 868186461 14207280 693699518 492148388 780466458 671655410 758465423 795052522 985384298 923544191 929309396 4354234 54542129 524842658 665227722 495341474 658298037 528667772 921114171 728775273 878988570 28806600 41301045 969780385 972464831 690415452 874672733 602621663 924702165 838583334 844638417 731726978 795881765 199801960 737809021 823485234 973135473 695279990 739530232 32822618 310920096 994210379 995096417 778216493 945894145 876773056 906948863 352399932 507843510 671053166 763283298 762151735 939745900 375589859 657817131 121008386 823974593 562927112 808795312 891591954 950540732 155394295 607950686 292999466 526123519 883898369 910035111 725314000 825086767 747653966 870557426 112795163 994095655 605232318 777857402 916432105 982077607 715565180 907867291 28905532 742371698 379996407 518564443 605776293 742046718 287655869 319744711 905894341 987237379 225278852 287291982 234617379 484968345 652958395 775891897 911679711 921748127 910116766 931619543 425604362 746290929 770187196 971556822 657669095 900049126 970909998 976414491 720589371 941657337 615862529 699671034 485324960 580115918 276120908 973341497 165602491 191476179 199674245 370100361 962305999 972794752 305515818 416145605 951405698 990131648 134531482 736876914 832419852 889691046 241538213 419860365 336405122 965195615 201901030 425098922 20009413 988124248 264597388 300893472 77416411 336725535 557053008 586597723 812273791 884347785 54805866 727220145 168714681 656453860 719938920 986253201 244936156 478514915 260651848 463886287 709855911 896565770 615164250 937591224 472269024 814645905 453683658 577399474 119398325 976779321 823709303 901042449 607609479 635818044 376136747 531548314 860470393 967939141 550110422 622060045 697658386 826169305 818402340 951657581 737947105 878507177 686120729 743337197 980575157 987625856 853247839 944118582 699307827 833680885 221966970 372296583 756938117 995708000 107620325 236411400 339466280 703471560 672834539 840687603 203407725 358868514 518471807 774516474 973836848 988805533 393319300 514695483 661261196 738778272 993492502 996453319 281684127 703080922 404102887 602265831 25145437 323267670 405871474 644943866 817113347 911370200 458697995 459220453 155434967 198770724 606719238 847660849 459364687 995990987 697719283 946149069 916757098 950033316 96775398 114604553 836093136 879482229 83596648 287636369 139540065 641537605 215176725 598987035 93811202 764410695 501483946 877604242 721940311 780603970 905948912 970725261 199177024 957991684 571020223 952565907 760968437 780001157 464386095 792617582 454492023 707706862 82353578 269645437 489998435 650362605 122018739 431128967 669139368 683182439 149022984 742077262 36497525 265244055 182986594 598641014 755476660 986845111 38082055 412421038 299653498 448973526 296487376 575342929 858662273 860824593 375845213 821654171 46596301 807251977 708643970 824584018 379641624 655794443 755415454 990035152 260924821 847385956 193178413 649023190 280632859 787300562 347339635 742068822 433857099 687183578 606369340 652699985 685549369 880279784 821034495 936724649 368809588 627172557 30381353 98166747 363053607 418627568 328587339 530814708 917972370 973971700 435646273 835001442 619708203 871786770 109857995 191414855 246558836 489520329 332728263 713631638 554275650 720879833 992610934 994279743 721093197 834572900 651344982 811136369 650638916 801089745 286536685 930637287 984553474 998889254 411099840 430672139 303347648 578391394 276179968 912344373 456257934 887573856 332464591 954432032 773184097 818356335 26496930 880831289 310693568 646664426 35364738 680450428 665971581 805222969 873358683 985859203 276263071 735548780 39068117 446337162 488693070 967033278 73570712 183472994 979444835 996337072 193634533 562606566 588786780 959295904 623517575 809282256 880723801 895587136 729131280 899686990 917275359 963822829 754581700 967893945 195782760 717722398 682534258 714654787 991267190 994637094 343182522 378694253 162909080 837054962 663591233 996686155 601067672 785880425 628568819 841049156 519028216 598844494 23171413 339879500 859304067 890682608 823658264 932899588 311576369 894650664 628062433 968401610 439913116 449831197 955164391 960692567 180917122 441100135 517191670 729178764 190245763 495993038 946997019 980300369 958736084 960791585 173609530 445850035 791174690 846823218 127366214 488173767 16398746 624232325 704196186 839984450 386696939 611087247 802356138 960763473 237044084 784341661 457839588 768815462 416069227 864146204 66662361 691723284 121100172 783633571 802990059 913760727 640009283 930091506 98609820 363642529 392447259 964446445 111132534 243322339 171986323 656795032 84138615 640673836 801100724 807956984 168230969 338475911 658695087 806171726 981780002 993308355 576008660 920411575 683715981 995164898 569794354 826207192 836358062 948334062 603948340 880792049 411840279 636410572 273764805 733870220 180372633 219861239 435781513 938364791 181396232 221766299 833100134 854702939 451939790 768555040 192521435 950318428 906382686 985644847 207466941 421255637 603328444 906020183 616003722 888836626 287385668 738556046 969272614 993109452 78155604 326384842 874278624 973960232 684947198 740429513 349378064 772346593 289038325 705421911 589877347 828888404 742289799 763707185 980812551 992262716 213330049 783765721 880312762 949989580 79545954 124391470 786202550 998949381 255830451 981017786 318417482 437739054 681229113 910936459 925330691 969042807 439034684 652381141 217127388 637280061 465548201 804785788 482254196 663323312 437454450 779356642 268115607 968475730 851233506 908591616 19988975 821594242 995540373 997799268 271277041 952099825 218769811 944912675 412129465 843149298 504894214 857465465 972913088 990643297 613088038 962628077 493988242 995641951 647835486 990828689 260589111 675515794 195609700 487011355 153388828 853058581 929049480 950592978 770292798 833897307 682886811 841173351 315284617 471641534 170489146 338743026 166827795 949225231 43459134 682584870 904561286 960193783 16531091 568466335 55962477 265913259 965289747 970891613 506060727 647070844 818806806 907148772 588912377 928255609 76158701 399613348 920212821 939961459 799329628 825833875 236441249 675137849 44260032 702103888 923225986 964967179 456402103 630774411 894106719 969170011 692071323 992854549 336333902 919209437 732286838 734006497 781314497 953837022 290425005 786129293 765215264 933243505 471205471 812818446 695501886 713229899 83893123 541220434 362197457 701347183 294934138 391932923 535359149 745656218 911143813 976274739 498007244 894521030 898749436 932430204 129053284 903765138 922465255 984563933 490511419 598916078 172042036 775010602 849666752 905811446 795996090 828030821 686340392 786549648 9872946 494675278 258615 841957262 833346944 980848393 857450774 956156628 258829929 635685357 203607980 302573060 166116355 712670017 437827880 778738692 769500182 944979097 211954438 770168408 298068508 729181034 459756376 808652067 368742666 906583083 452256037 770438987 385286443 439865291 738856778 928569321 794839996 924040029 137184547 559717287 933999492 976907439 284678555 589642127 960585258 969675703 673982025 959109214 266549392 665122047 724865895 843358837 170095040 703640693 778970562 974941491 307076865 879952489 666702919 769627739 95818253 371264342 12437384 762749620 430089584 478420200 252624242 315897684 863114543 960662365 93516730 788512294 592986960 865161091 359871435 475736803 149355017 867739459 913708540 914085716 775394374 983839402 259251586 344021738 595210012 830345118 973710338 991437322 370067076 501123906 522947453 925834236 669154878 808867397 842441386 922886120 193808141 634148521 496336955 738924561 402437280 482218092 796106372 834273170 42994646 620840332 22090896 624248752 52738403 540763812 245900214 739474586 333871439 619333816 128328994 595947475 937625606 951228743 506423922 869659747 503348142 951440080 72497140 435340293 323563189 938193459 670033733 790550793 143580765 732384151 247453195 670525020 644530632 697760255 436817841 860545897 955695429 977759819 118936529 275889734 274949398 404653595 113881486 787517408 772814276 965305982 531939525 557020659 153209355 343923521 986206085 986661367 990149460 990281119 792592136 924251515 715330071 813901164 415801313 527874546 735676795 881651975 628709002 793620347 849234940 867492932 541572907 750638380 695069159 917904464 253631499 788527335 347270386 727200279 270241343 392302326 981491447 996945077 711301884 791613391 776848890 972362753 940054970 964466786 736678182 986287008 22935376 720068277 779873183 936663152 284345438 654973692 879365756 979395072 975555152 992998695 122526897 950281918 162420116 964353148 934810113 938905077 410183648 563729524 368618013 677968523 416500916 912849665 214378120 238864282 717652348 864574859 460057788 486122901 965454208 982158866 761980913 958809316 310477436 571331474 913490381 963389716 240646750 692177454 964263802 979206329 750128448 904701973 671514228 904886322 320919323 739230444 303291032 904185801 694757081 885825925 392329144 835239392 357934575 955159523 965727033 986864916 342469227 946176554 235268213 973893263 201022208 585626176 341250004 957611666 330082236 763405411 115787278 735272114 491309048 973990711 20979443 90691291 270898256 666478595 346026936 780980470 871689485 999036444 538806988 646661495 278249915 724351252 750415423 948826943 420427195 690951524 94189480 275041572 304226264 837396804 963910747 986902418 307509697 976812513 211212580 948339003 157947994 970148629 949064960 983417365 588205590 793014960 274594422 836507967 516224771 723290408 639244929 804373149 766209794 817671434 620614686 821265442 929291852 954832617 288739717 457775128 892546252 936932718 515202713 601221555 757748271 941899234 100488339 262981204 450410105 506574623 711517282 882569798 121993672 863037556 781371797 953691056 648404643 804765651 380027986 660337232 70376221 859866840 599318252 718498715 618595511 686433030 813524363 978895150 363020519 839419244 704917336 973904930 853663930 939451750 276026910 324124011 52033765 419020960 369734035 462956030 360994856 918594782 895990955 946369214 351421877 596060659 217509169 682597863 406294153 591068386 425154566 976733226 570245648 692536397 800801708 956467343 301324083 818641002 567060114 666166436 455435446 502473808 99828993 206850065 559226047 985194301 109911383 460296980 640241019 892934137 751179451 957137011 295095048 696814097 668238825 717163255 114847700 838815790 266996298 943154536 489422052 735540971 464097116 647519880 849720000 890757717 149330487 380925167 275150231 572955022 324250322 947450056 476284975 579112687 864150308 868018823 482318263 622371440 958593957 968238193 675898015 807587040 439674803 577435747 584051349 594322201 299025818 956895738 879747371 939889847 556623970 827330100 891522985 949344022 321265486 442474354 200924029 868996798 122469146 521597068 55733878 300619352 801530415 803144705 277792086 444380552 638393257 997862666 640669786 947708969 726495298 795714057 294532086 398720112 678003818 711438185 928799097 967849756 595984764 807093128 951259699 983532411 751183666 909570488 588961520 873001730 940532382 961480283 107096038 736562255 871338773 983627944 545442677 717050291 676785675 785670707 135164842 223945646 257559815 940238019 770809611 794918086 176472736 945562473 455951709 641578293 340961703 806944515 164442625 657688541 789024701 989660313 856172184 875136243 884494544 906001774 262695931 396796667 36958682 145906815 863499806 884716267 774187933 915184866 225852980 730152005 843775765 866016857 494391107 827083055 829860280 852394027 455884501 590864389 528751688 784516008 791308129 850590440 818868099 851985273 46727109 817140228 679752797 741795510 736110824 903623293 988335394 990202499 507694444 854488660 564153635 873625847 852813821 946915829 663739027 820857939 280671670 550203233 901416043 983047789 239335112 435335222 55745142 916988009 148617161 297025050 437101355 903852635 880873642 925049450 7115863 122930601 55299276 471349913 569011901 838553946 516168472 970673305 474059911 889136741 548023977 623802242 979407362 985169753 667844402 704462379 946959751 994360099 724434210 962145041 532499683 979999776 959352016 996912083 493734144 901723987 669900598 714016724 46623491 430840218 36639510 382255651 132921693 401217092 494201090 780407820 932968522 945257298 210712015 944296917 76041658 741107813 136215761 731280813 489362687 895630277 828896070 957303455 774851816 988992830 638609783 797029327 552976558 792272801 700731332 760680177 95442091 537768325 768716485 804863855 840087228 945128192 835539864 903699922 920693490 972101212 280636559 865428366 417241786 836379777 451639684 991024775 993055772 993656855 493599944 569162520 160104306 164169913 61311578 769825461 589950441 907654785 584507024 889233942 509106559 630154988 834035807 999065739 256916331 477832723 156848508 966080737 405464422 500862040 862978352 945124129 403058026 463828948 310109877 612042822 955963794 988639779 591178750 806668665 799125729 965398797 163977103 958677320 51430527 681324313 465453188 561129554 250897759 603159430 489803196 554097541 251866702 417928228 876436139 896876567 845529893 928577619 435976202 511973430 748863391 832366603 176740362 492802757 674896797 854520970 424118470 526088257 39511877 396338644 778042634 865526001 739535174 926866099 75147497 858046969 682121395 922000661 21988164 600480081 479111082 534316262 937295845 963032940 889447973 963113797 774911952 885245907 626607026 964869463 173568639 344371650 140666236 803816930 342572748 714083371 441630572 841223192 321241025 664985942 225211350 841405821 383596351 986451102 979053622 992025477 280839046 610551855 946824926 996170413 648261223 770348731 172634317 288177091 305165065 535171952 464624127 867225268 341514144 951635108 149136834 680544746 949482461 965705675 125817922 850679569 772531531 828892935 903523126 961491424 855474579 955570179 978341017 992845222 575037544 994602971 207003105 582343528 657799174 992861545 529044438 691346318 401112642 429238732 824425020 825665037 83088381 159684260 694674046 864711227 892968541 956380196 594536829 690679382 837504540 901638600 516842077 833223670 375243967 695059146 673455375 788017140 44957669 994987179 174648911 398269053 417253180 555859464 751149578 902676092 904377305 992777142 139246951 621301422 49748401 794229930 399884403 662399280 399105727 707931944 647393666 800071333 752206459 867627296 54661679 159932519 427491915 707576797 455311574 907345357 435071520 597543111 819743230 992813130 304485439 590588198 846484951 885117166 144856763 329475248 457579419 865539460 837082059 894128615 394498864 505049103 688590158 926036351 755399044 821444473 324419872 881441195 668578137 889700355 582056397 848054168 4583668 297815331 761101860 965402820 421956832 520488173 741129003 944024685 353303846 811135685 282349899 947845470 657967348 827796634 452919226 718964434 188363408 563141568 266951610 784311679 587242319 931942477 275337888 968593591 949544159 992681500 215819801 595860111 207552048 925650079 199382983 670526018 973651634 983252282 445036423 744460888 937234026 983453469 798594844 856315718 104491776 962468203 607445973 796262209 229435328 376503250 7648039 541128341 27199702 846970842 946508150 993306635 766143395 942849515 848420671 889803195 845407498 983244376 81277644 377998684 764009593 977755650 152427836 869801523 377253130 454815278 401157462 857366220 339137669 908689698 288197245 745198269 833303713 842237677 874477466 994952853 974493291 994505508 132217993 629629393 49043837 515068988 410363065 853120423 185224423 596716773 385227156 672390646 217711185 995044102 866005965 929497078 863898453 973002211 572270433 762296240 334227236 790914650 473515790 660706697 317858863 661391553 812589 532779967 624541208 814725581 267276436 457703585 402277943 808571314 795415305 923970548 892361862 973887107 900016227 958381403 721216667 822056157 642520110 937191620 13738902 637353646 442336628 818637611 791554930 964690774 81001180 460949242 180813208 502097773 815245623 903156133 728037426 756990396 4212378 498847624 991654370 998525290 20058837 326433074 85401369 550967183 170735663 864208116 910710085 932565110 149784493 405553410 593710677 943680204 819782092 990637452 307517448 547039178 94238937 295134815 305101883 864324349 851775820 886908352 409937328 830851572 793192101 819128954 664688690 777374022 652489895 737266395 474816922 606218248 134391944 555848415 13301557 934804163 145357324 755697590 142766022 690945593 193199758 674922396 140089705 627337950 754135670 902914189 107665903 283264490 66168300 809517268 366155653 738776746 437044799 792248975 626852606 835072670 604913668 919157890 900670873 960290401 672945077 860263458 187439041 474330363 701046708 903235354 731350606 802360634 61446722 973759133 478951925 738453080 107878974 504473986 147562125 266283751 39140966 670975343 720559453 836565035 985974912 996448189 760376206 912588206 680263619 764578539 277834613 335832804 241082425 524838475 774955146 783585895 267638662 678215054 248151543 446995704 94157645 413590008 125347865 746249844 395700303 928401620 976283143 980730639 36513313 159954972 485725534 740530538 911567631 914731915 801199490 977737718 536217481 799795640 401739060 484381585 119804098 959996858 98959558 330700589 581091223 925330406 138628153 750844508 97684983 561213191 130948095 778938259 106300985 303785864 720588693 831910272 371466835 625751155 577116460 660827400 181488408 266893276 179304308 791090292 366868631 426683261 236421589 596509536 643720898 646602315 293846911 993975166 368774636 520170309 939522368 991762573 928806052 959371521 225094575 865434567 574813531 788799263 487320894 509001811 569491245 908775568 799820714 858182695 747797386 899436910 393750216 694497810 904204236 976851531 398003093 983978899 922602289 987830605 904310033 927970709 484624376 620996772 427683856 690677162 606244581 620515018 265432639 825810554 45537355 184055482 330307589 852141483 268273183 757142355 199294486 968143176 632903737 655623002 760042563 934225785 23986111 930838014 146644939 529978558 787488668 857269779 900194479 990790074 687055492 937231147 335685501 542537556 416962681 520629225 754819605 967196983 492117183 700068467 826995990 941593729 432585705 586069736 799000976 923950443 953641243 965626663 602640982 730770352 873673241 970395971 962167267 977080991 436272732 692479450 814394502 878460297 377159362 524036684 462200309 663913269 40899493 871955706 56115962 243278933 539636142 826984578 731936830 903703895 551273424 898311846 324386406 713403192 978425964 997857209 119354817 980940856 493702027 564693086 378550972 436379491 612567416 953548086 663704982 785021696 718689437 965179835 729201757 795631145 427395661 962601326 207390744 555007313 519187467 693613846 471888198 601730659 264609353 347591587 808101070 974888996 191802252 904531062 453795541 521360049 434096422 721789545 957183172 959097542 922746631 929916215 847614023 953722417 585567322 624789777 952476475 999239260 259159365 629367313 444592864 831334676 149938921 220252999 936311863 961209551 23727615 143487707 684591912 989420042 462824758 549223917 74839129 782430577 515744255 702310686 547919722 625208250 243888319 991282938 78684886 656549472 204559019 916905738 880444710 998712311 173095443 560245369 783219669 914451061 260851624 876461009 27183861 82532198 283846356 921514539 663708416 707028570 521246088 741066338 606089783 704614267 840291706 935917894 834163650 927935645 914813532 923888085 404950904 928697253 221486867 850574036 377774204 583449642 527657168 830938532 157268940 699338897 968745036 988311236 360674141 661501174 463089600 761081214 676116200 871506781 929870821 943213814 843019659 925365736 167956716 334550963 586002544 959072046 88911461 110902957 172075195 945697390 879058854 966591570 828293047 984031536 757769687 858446601 544923769 829647826 116616586 274575479 775753187 840507172 228036530 777058611 579959963 635895475 479463457 566239739 593731974 737899425 672632530 810063452 233020056 911503907 170886762 666026998 634038249 961483820 175643939 674637798 377328945 686921463 893522186 896329709 682349082 996355916 198000863 692123779 988108632 988301786 41349669 549393842 986751124 993901323 462709230 624935959 82404634 114042045 189925922 719755282 457925507 710315151 78003926 102975839 797731382 841987665 111627891 386731761 479849878 681179809 112278191 596643747 559960129 766384475 331954279 632434902 14284947 867633492 709387732 733181083 737566063 936230656 281652263 706843173 508161937 990742617 170496761 266216601 544136588 618251680 702443912 804636027 60546497 681981223 888130046 941248284 164004232 777056683 44638110 817411631 790604548 946124529 442023866 874672644 877766020 961962952 251161414 542967182 531937122 629838897 318194283 411375642 470356941 914661823 73022856 783432383 953046964 973527280 271067405 476914382 284472133 534703523 357309979 766958723 213947841 362106663 249464299 835010046 486502592 805799475 673662428 955012889 677184292 807694159 350454863 514677604 729713408 738318928 241820438 254333354 62246440 924063439 426429641 872485447 354005356 807050739 538224865 737483769 357370019 568812392 135059404 361770945 864355175 978623701 200401656 663103796 708303192 775096630 174348535 195048662 446062850 679577977 457466449 805707527 513242978 951497682 569220107 810131874 329464488 690415935 288435417 333390146 319744882 723609695 261958963 856501382 399534969 818556459 748571571 925317803 842427080 957844617 323213729 694331506 687654424 966131277 772535992 915732500 681431354 939170681 724791631 747304610 196583233 931573757 885838888 919998630 865665509 881372506 515140463 819126827 580062005 804056638 118068798 839873212 651319212 705689890 586661826 897215907 621117831 644117987 522928935 777782822 233407976 327664698 669642039 845737612 306883385 503338124 477316809 822937582 359985351 889394562 498132693 698790203 908344739 923168523 80663030 711652016 4924103 747001701 81360734 264254871 372872215 561882550 435492262 461962424 206839505 635175804 665852473 760413139 337431297 345517195 253881454 523022546 283356412 723762762 436142051 988398795 475331863 807602318 717368150 777158183 111852678 987939689 666846892 684404480 331618360 972536442 858467160 971769454 90733000 847629533 679311955 685853184 616677864 838271684 452131404 959929823 176286277 903981407 466487890 845355953 258395622 418719512 516256484 619650891 987336531 997393363 392412074 782109273 281107734 655334445 413058352 711100824 798826823 988139056 287840565 392582444 672284672 980194830 892817284 962179386 680708231 918484327 603689202 914138562 258475380 532512509 494962330 567759970 1887278 844689536 109064502 488054367 38866453 611268393 938660493 970737191 382002778 631244063 696962387 770254555 195204064 503056805 42709069 989798766 958104867 996982770 555658838 883258390 524428036 814848808 570611258 732418794 514333988 567316945 453560668 505609326 808195425 994557429 316859917 411853891 275222352 571768356 367560140 436763029 874762976 934709805 593832016 902556615 822608059 825351019 811321542 823046886 979470777 990370167 903170751 918137662 946848345 949326036 385762908 644831430 404876811 554723416 575205500 609985850 532285852 715848949 706864815 972584509 541356710 900186882 663426828 935885899 551615011 557507649 685851793 868827731 813527375 882427309 653941968 788728480 411117502 961652180 538264104 877730590 877163711 981178436 681472852 832344721 577277666 654918989 693955708 833337530 270849984 635727683 408865007 923739872 789860664 792038569 893760709 995497050 235019586 891330013 279664079 397162150 231617948 427468203 835296918 897034103 280612301 313543668 243776325 688658810 972589041 992729245 25595053 553084772 376327082 529977579 732972003 849387230 874708205 913673588 846381133 877437472 47897921 134086875 69652850 201196226 79453789 651027847 444455489 860420668 749143347 801220483 273174150 504599334 930374979 995681695 643273311 813136828 271542862 431013041 680763693 934123074 987948870 988227023 589942426 595975096 23685321 849609978 851945124 866065560 733628350 904359497 839216130 990907917 837273125 870584849 323039750 476741401 174551815 568637635 551851894 997141939 981613760 987546407 155047286 227465403 3175726 737877318 208338224 796374916 47390621 946472201 409727286 990770209 980568087 984930049 142142954 987779843 708214770 947543107 201659475 423863598 470061440 822264749 472272 611454449 73559585 592530108 139971533 681175242 148420026 779786867 746456569 917025262 10336426 162443054 562426243 603151981 584946122 719671988 342225740 403314952 787374965 812494464 644315726 988831557 890797342 988206284 142318198 903490870 572886684 679886193 695165315 735201552 410396880 607732915 264042760 581051510 854295131 987992141 136729960 148660802 692002235 986099710 537199239 843543985 645569439 783524983 382007226 917586674 361813401 642463494 884134425 961907384 799682314 846898361 167607003 679754845 373921640 376419606 715022981 954471292 684939973 773554638 456522077 939037931 962962108 978303298 386525810 992634130 973516668 987827499 860500068 885444636 551116616 672077229 480297780 799445331 41559235 807401432 47826991 331340280 979792337 994451694 552201884 905855520 945093338 976209072 960384605 993797567 346434713 761727009 98184224 696307962 569774956 711140259 642733058 766687175 902634408 953590530 103324473 547866278 219473311 569530862 741066966 907170084 866019728 882179368 877491549 895818818 990374570 990435732 419015826 727200154 962506850 990816122 440740999 738965922 581461383 775142966 346524481 829242123 298270745 898808437 585871596 597561518 630051519 670685570 445102104 796863209 868826066 919330072 49046385 785932432 759649052 884140214 30067341 810495018 933275337 961732532 332149802 854297306 935261477 982578262 779477404 997802983 192168397 365529577 668634636 902645683 743727866 883776751 555429366 894191949 410513727 932673803 758345731 868348263 563767232 767984954 477801681 748196231 949278013 963152687 944527294 969629137 467345326 621174361 802499135 934557405 654746474 959454992 92382718 473531296 743193383 934677706 917077493 956977458 205931754 476265389 625827978 952688043 778847873 822667196 282992345 838715358 490710383 649656100 489022813 603505389 799816315 959006335 724947486 885501067 43279690 125251948 500294201 563690881 266026593 454540107 470672949 973486334 371150516 454583813 779050146 871365549 814800207 909120028 937926823 958466171 403049311 811418920 523947737 797384451 448994323 690011509 755084861 954090834 886136181 930689558 245202893 493926713 907181698 910555287 762906738 871335397 884047243 945540111 170239217 777104152 4077973 72844064 223004125 350882937 617909198 777194835 682187670 765080928 506985960 672133358 949977900 987328063 262186012 401654671 797103526 879925460 977739100 981076138 953497737 977838729 268733279 888858753 695833168 732098588 624509096 845987257 559575636 623168488 947815858 984734970 273785209 942862663 760954825 931667944 474621252 481127282 171057409 469064805 589869013 609980949 385412420 742547319 972400940 972739908 328263899 657500409 723014363 946355205 546000934 989274866 882679671 949473369 749888981 859480866 235910733 676998850 399337433 723290718 757508912 816528984 438223923 995280054 86507687 830451312 596686742 983759305 738322595 983354909 494508537 665820462 276342556 969797972 644977425 922785457 414783315 699352070 88617969 831099843 547475963 921725234 938499212 954858518 545719573 876554670 221636202 928318049 937624822 961948918 626277151 821944130 572856186 785757077 623173239 976562716 461106109 788878679 738023777 739376679 748456072 964485350 926300623 931702258 321350113 509603451 981599630 983186483 732563866 864991126 509604163 757819322 962674922 976725385 925703121 961582322 73625368 505645787 829741189 928540118 255658624 636233350 197938030 879548817 597928382 946107176 916312199 965371774 702821978 993534808 820151263 869140376 351615422 677016280 50690771 920968160 533640986 545171101 719621583 996862591 384751938 822520049 800715170 865130560 999378281 999385362 815024033 985837516 561473872 843537784 602176022 856632991 988724804 996771178 148028895 647421795 327573362 357807079 201528332 395190282 458124337 500039962 539061037 792948276 234147534 545213169 796334687 983790995 507496249 990760741 134088111 189630793 632095998 946114315 318604553 786269076 495132548 817280228 943627643 993763970 371974852 733560321 53160410 391631292 939957714 944110805 486933333 785872654 467388271 488088980 193372551 999225417 159683810 548915075 581721926 874805192 732193395 955898210 114402951 555598688 833355327 994008592 164060519 657609268 525996670 590258357 186167058 772034524 246130122 263134665 860753464 992361899 71834942 935556574 767636282 926272667 147823915 639954098 592854887 746385687 597566914 809657950 119091122 371578228 902590196 966194997 977248265 997037680 386448154 498483918 733563947 828388454 353034473 689228984 524758253 858350412 763515097 937446327 856878129 871869162 813413327 930973378 315766111 793039296 512008363 613289998 631353071 719139711 117753493 162041648 719607172 983300517 879693948 926903914 531462296 790088967 23489588 873575646 956232019 967261368 163335155 973112943 355830387 817275103 521842703 896494962 470604326 681064410 105372888 223434430 662707927 977766518 702947818 853146227 608664489 932277896 560986236 676409953 923995919 951040532 462465405 846031015 431793589 887006595 303888830 597358786 378681466 725125404 360735870 600224175 366303907 707135405 616135905 822907051 543435124 631951235 531521976 741182920 490618695 872391432 801803911 854348730 69558728 143477001 427889878 991728347 530326586 850790831 15983034 233602292 61959119 801351639 117001253 165962513 919791757 929272040 546390132 648092438 784073103 894205079 735857270 745355382 252861113 468523090 970370547 975424859 506476159 513191872 759999463 933989647 737321765 787753913 728573645 994409954 719886309 927975111 346518035 455010239 250007924 448566036 387788898 664292825 232090946 752988819 540767119 910196902 393028377 843742369 87472502 110276831 56039710 477936687 44033632 136304202 818229959 864404170 874557473 931427972 998566590 998962835 397246495 494311661 517712094 948235916 704195863 953471587 65217523 350974016 422451917 521404536 435113290 635081137 870458870 886246966 600542031 838616839 123496429 624614416 209267538 663160404 935442423 992587605 864101752 967799891 478900360 531433252 721536841 766724038 930575960 987004905 821962022 925071462 589924691 752071048 310458469 973432125 799467354 884370264 946007207 987405512 706183996 936396405 885347252 957195246 136328293 792781078 118381756 672505011 231347353 652103602 994184517 994845902 243748830 840227565 534625658 958060700 924620619 956275433 164232425 380430182 575853568 780556522 939422367 959531129 747621044 880225967 930048045 986997185 553242299 749462215 910752615 942675313 52316706 537286456 872736366 964348522 610800726 683562304 824627542 881290332 318130735 404892899 47006844 871547839 505759322 694257317 974825116 975657309 873345033 926597713 865576306 947619375 189956625 209252474 118578756 237806681 906976652 969155245 68763919 989736502 439801526 654536581 351862939 788095305 142097643 297411441 825906399 990576570 449551586 559355853 822669224 993505353 418892118 917685326 345244249 617590664 744095145 907927512 209950968 263691900 399645741 670378063 707232027 740598514 474854961 961943476 311459255 444494646 84508490 466282849 385743335 435080301 806890406 996876284 996749625 999091903 4163409 921210903 163202040 245967115 652594810 995854626 862329510 896483540 753120288 965725306 108350038 540206762 996970368 999165370 49447013 969098185 881087271 931933724 385697954 516558377 362917639 627313175 593103728 702947218 136245655 136754808 864495132 967320760 93207101 553917400 705536140 845402673 27955741 793220171 505172797 990475210 541956653 744815211 600285875 687543317 120030475 397327670 397772000 947241622 883373422 912506936 678346288 790591655 482505072 986778761 645328360 724957524 797472021 894341658 261422310 399533106 253493188 343001137 639543429 784574648 631334981 755123430 849721411 909945619 139260970 775805570 397963778 836323127 940366347 974460447 271428957 454150287 679247207 729880402 5456124 838872791 721629879 748813878 271980515 531896550 965841666 981416180 98894158 347308064 645459322 799288942 433908472 718659712 85462792 598021428 40639852 803388081 392323451 613599345 778312618 944538529 533456647 559691539 451100916 557369802 841676202 929619622 143918412 573308687 218149109 460824748 68128083 949690722 659074408 992230121 409164749 696550714 440688156 447119904 96989234 678878875 849558366 894389714 165465019 830524432 252792357 788525879 695563007 970048420 713504637 908633317 101259993 521316451 905263495 910041300 350333314 887658434 75554085 409383118 883100573 949491051 856100554 862571298 170712012 750980987 688621908 902964829 243737525 501957802 955917240 980241737 204909685 372953273 463820665 659260056 711222550 835972037 860545320 901304564 599431886 942750753 345166446 922680993 502979430 982002765 680178438 918629682 17448315 945861987 487087673 964117956 814848244 929243383 528152299 710895118 438733040 587672919 234467911 291570025 488733586 556788392 295126528 550126475 490015882 503373489 290184688 358626164 557366660 597565466 352390757 601340334 737233809 881678753 388307501 524421250 583273261 750991722 110543969 815117675 209747767 404322030 790495128 905586278 959950958 996216372 589986020 851179093 570792399 946387693 714993045 889482361 112092798 223218103 65748571 784456736 462299258 741187925 887919691 928703693 365444133 767916452 833413189 965395250 231568740 760873016 540257117 747278874 926616047 992181372 250346591 373297550 884645622 903658079 83842368 667775935 672625549 864534598 128056381 576788227 946314548 962880001 583149908 748075907 827310088 996026305 600905190 877022932 50364918 764775887 573558027 761915760 824142630 923124530 167755718 270847528 833650595 942866891 503563491 810697169 99579167 676363728 627907796 641053376 678827425 772338277 902028541 967873550 630798120 737089618 220099056 322287763 510507925 517936141 46668688 66052989 550615004 659804273 468318747 614510026 568727634 575446289 471742549 537329222 577002497 850663177 316357017 424350080 361623888 953259145 539558469 955568127 204908630 252315610 626167227 719918949 69171296 950636437 439515537 962944619 686088228 773340610 77379434 974907613 186300586 352287021 19179376 732160797 992895110 997140308 655451979 803881753 693473863 946972350 495791654 611731832 909899410 991769066 914014596 930259059 8555720 151853044 501885642 768058827 46485243 506042777 161143932 310664156 421407340 430732363 150431477 860857064 923010323 924108502 223952018 750181538 464489426 707247599 234607836 538391292 140024124 394671671 175111615 350986738 133091613 870587578 286193174 853739084 570300539 634681198 413762882 582300421 643994603 646697006 376767298 616167905 26717190 143852146 452818084 694262065 402256079 927214392 179362113 554442370 333210226 426464633 118202319 315386463 79238781 216890359 939300059 967409732 414935524 586015120 926783881 966809361 452916199 678163867 984745395 996293604 266410262 698227025 788501117 832113815 708284 784953160 817029351 941422866 120269119 262963471 341022589 467823421 283460664 627870948 498818022 633507179 614114997 629602047 549788570 860608701 250618246 301482474 965727963 999258424 888729895 926020830 44186685 144152822 98909009 678609079 890170271 959134423 994120819 996979669 59830014 606686206 276197795 628263213 818992905 958901267 304648727 531755779 191212444 812104467 700175867 842184894 521202 796186794 572559081 735809135 439540096 630314020 502998214 564284748 637687890 895425160 837552878 968511247 68789546 100022114 935174924 979613114 928554748 980079315 187151084 627507109 235903787 276885161 634344580 980846239 955629608 987273398 279363564 358528272 926096143 947801189 341361041 481644692 981489509 993693788 15891804 753267087 13701591 858104480 737858324 901166819 795198840 962373063 959896281 981258905 453639108 637585432 616927685 648490716 634233435 760488619 140235226 556262380 960821101 963740430 896506053 985660534 207777774 741562738 503078757 699340940 976370423 996645545 512341135 535771841 68357414 877334546 715038131 716266860 917355503 992866739 899467219 926032726 41358278 687844064 174043839 524183972 803214016 946373534 905978519 922230383 61443807 237856195 330116695 494032735 393266428 863043319 764785790 969476277 593436845 757240025 548706209 690196619 361342901 884634973 770612064 774772517 279792778 455834478 713270262 949192148 452600342 477368757 905108459 966087396 60213382 601769556 733380992 936672635 553249525 916192390 567969495 792603608 728263890 833446950 526954102 696418767 538126652 553363284 118683624 861199631 542201509 561570804 888296801 935311922 916099357 973010064 258147791 556509618 59994644 261831916 670757745 790123143 882406619 906314112 661990484 819135978 542566312 581377832 705150304 792627767 820679443 974571011 36243997 848631038 987524787 992225716 299487804 558147935 275578867 935017383 480768724 801350716 654336448 836711332 957727896 970975924 110160389 123940352 873631190 883421574 186820565 490416549 355940516 964845640 472500506 474117870 34085944 343319732 395990803 624607813 901978859 992301482 411006373 415927839 242788042 306756929 841168322 901794441 716005208 943710554 827049595 924454663 399780791 540042109 399160892 721327636 273154308 883392342 430255551 532986224 449984504 829471044 161679789 892740820 443697653 555641078 396608761 826173003 373191208 810560861 168135015 862618215 163376224 265609815 60201587 143613536 375766271 611153394 877961544 888681700 271249306 992368721 896529995 961365347 121188136 744703234 766624425 985332650 564187373 921722203 173150635 255745463 957382017 994716625 239570873 578098433 658618405 811458669 825240553 990809276 208763388 891212508 749436453 784141637 308210941 655394902 128750819 201727199 727857888 913585456 438001470 847656095 37226761 487619435 891989840 925900795 713830030 926275233 122167263 758010429 425520904 988238521 487224633 778758013 24259936 507461092 181123900 864259179 196808643 615372536 742348819 962718219 749349357 944332421 587160056 812418121 609226136 962991655 817705500 886435613 848379526 988720473 395123945 439252621 109872740 815317531 74182745 141637415 795965676 896054792 384740413 731243440 949013357 993397572 788041868 797133941 457503380 987477933 759848425 861654975 298139428 534141502 86132131 234692678 347970405 619974698 434422894 842301210 385377497 897878130 206515122 839412701 179267951 914924237 78391312 296045994 165470138 961139680 285321632 468213480 473873737 663470710 486723060 573328325 914924791 955581944 300455153 394500858 799146971 823905977 754171692 935088616 36333173 428013040 484465427 760539933 686322027 917340725 385342985 611905701 328533421 358407599 114078463 927890353 646990917 818974768 254753591 484553807 790693237 902754503 964316815 968234689 961103910 978986363 689181795 748501494 182214610 376095564 641351406 884535453 224057265 681014832 914721880 996435656 307723976 490382808 821322667 889954183 721134402 860600039 968413806 970324443 839986326 988511031 692749705 933253614 495863988 846512291 310276659 950251654 62319048 151231148 860286558 993938722 226801925 619189353 391329773 926507196 707028549 884238078 64411837 127555057 147194043 387941545 661346573 847081136 617232280 714247455 984967335 996822302 663490811 766630322 4940583 728370106 662708244 922542743 454331159 973491514 739063538 873699204 285840895 372039179 93712081 339937072 707354253 775393759 597903772 964388569 706513046 842319652 132929058 160632216 647965550 867094227 541043205 871926265 259308215 277091472 441178555 802807138 652311961 912017717 46489993 944433758 611120996 686025871 409425224 638609282 100514341 390350025 122635023 388412897 118118299 457658466 341751408 932862307 836687311 952446028 996086795 999204731 767537846 854324668 867691882 897600077 961538746 989811992 465755248 920502147 556311419 680383262 170423974 273204405 747862154 843594874 687302458 875818399 500179419 557385752 687743780 838057288 380931276 671341675 198572413 845161939 949831118 999046226 655159729 773587744 438448013 760497030 748697889 944706415 826693614 977476199 355517187 980000696 470919287 676666004 110120900 155298475 729816128 821325058 77073680 586537152 417053145 676824312 347662067 681370828 256687753 995965939 298373323 529050226 251560998 730076112 226630219 354440462 840946262 952241823 809286439 836903780 266193452 857131395 859309902 954684919 406345861 576756876 488295731 497479603 496396999 645502054 556800298 877873096 632768054 748166438 278464863 559252937 878494225 960644905 342036902 711476719 702134713 964882286 476782306 609783089 922618203 988794609 618336824 718262973 601146891 866620598 631118058 791061068 481391948 862842523 955550229 997250678 221677890 783824131 455873491 980030387 483584501 926198755 882195368 930511792 368168416 400482245 614827826 819962976 877124718 907927206 404158112 897930702 520040870 766938549 508329342 567414472 682150341 826846991 940929932 994441655 116291948 697381458 741701865 992092445 671597751 754333471 298187336 346949845 760626269 895440506 64599976 587803009 243999325 757275168 565513507 857273717 120596523 835707435 483623020 524120604 723869005 832384990 195069722 759025169 37384374 729204180 431243465 502684285 690494316 719289575 693206369 970259931 78727448 651563542 92477988 978421347 971989744 978038995 152763707 731522199 204809584 265249886 489873023 788473735 213065001 305179568 116862775 946034675 808840541 934818183 953023837 988464279 596109164 772104733 794740230 972309827 452519413 688471475 695847620 821473601 891611017 977272858 45314839 800172011 740655912 742793187 844836460 929008413 553515886 992787629 315657931 416411300 993935960 998885790 894043714 936274773 542073747 793451946 711759278 972321086 417349793 739381907 401748729 501244327 49946149 569641006 414958135 443974777 479113403 821667830 609352069 853982123 822800028 985940191 739320096 999313468 339155930 800117704 527897942 804412639 614889119 997777361 800972558 911602395 426307580 913379990 359573839 979111221 409500415 984911659 537376040 582085642 662208605 946762711 436241857 643518816 606509481 879445657 503144993 554449645 61808349 270397271 712966667 861248846 515653388 633423551 580131287 728183146 986270199 989996315 992503636 996921302 621489373 875834281 81150809 395876501 22692658 880477099 236077591 663036625 551767277 637772442 720757944 788851889 697041036 858721148 510356546 813161346 850508314 908680162 712951952 824904976 580322202 763765707 950235082 969516082 661787240 803606461 541736946 934014779 1770801 592770782 644418497 968976167 561092400 858946551 380412764 570180905 756616838 926470416 533463000 739402232 137180367 319703909 18315662 345972922 984909278 986818478 133528115 466681077 96947789 199252256 383801764 874059703 572615181 966361062 587284535 863289703 887726175 913468801 127660159 709643192 694940817 872064213 606243381 942684408 417093738 707331273 159277656 811481066 554811105 635539276 150978137 866896869 112372439 325194803 595951708 702230789 11730392 304422923 695401584 735508605 107794391 852955286 510611467 919425874 184374111 394183344 727918675 800720555 251237839 286358787 36027136 749934645 419544576 699493989 381477627 453694115 947596757 989793859 888536404 975896721 968685890 983042625 256057383 587987785 992206342 998074651 729755335 881989480 285991275 713168673 642164686 858151514 611687736 650517675 830615164 985389768 293960193 335722020 966967294 967104822 322951083 668440291 219737202 756287168 946219494 983661770 342492470 757564377 312438412 530551923 335902063 830354526 453126727 631887105 700852797 947385044 919467945 976174434 17568405 560074662 148190705 929566199 233883145 708576689 892973025 909378534 212840987 940624353 974484750 996937210 926550474 994818662 856477958 981249928 453080286 524983071 697169194 933726655 539239419 682658000 938563488 997148811 959118546 982105250 258845298 364127205 478747280 480745676 619950789 955737262 543716816 987285963 120885567 852466699 244507844 250968758 144271341 315494035 114889125 469219434 48950690 270833444 389624904 405217267 237628104 401675823 811753268 979656004 360689691 963623892 313802484 401196066 83064659 592344808 365754521 891560921 844469438 866513147 281381132 875203811 608983242 969048339 909529375 973259380 547077105 730359774 530946296 774264718 954708983 996102593 935447808 982334337 300266398 697082505 713918764 778875248 686880057 848271880 298930811 605928777 269734188 387516420 889009303 984440482 486146686 508608958 958197203 978348842 968874497 987704296 467499502 867878064 717366802 930032501 221878046 817753524 432418016 812251099 510661857 584985953 225753479 978815086 744757512 788801923 883821459 999039823 391265445 713062764 132147878 406332223 219037306 489017559 236630235 869597835 114834443 684879191 245862499 739974780 588841971 596120547 760648828 930788573 100656040 373543651 800080324 838961358 905245388 926914904 40726661 161892662 189646805 616579565 901968993 913301240 112110935 546955030 262571460 923067844 166936792 763344475 920257674 942633155 295195049 919655850 507033082 538949822 199825391 288482309 61560332 662413337 100291878 133904448 663140920 865046436 851426947 917178378 938473029 983000409 3009934 142345164 727862451 822897500 909577932 948593182 951111726 959953919 180426646 915520835 699755930 845858872 447608902 945642686 635660597 984253804 573687656 594520573 875421643 906531580 958994226 963514404 183150878 895614587 316721934 642203533 308688256 541281904 892395985 975350287 883287287 963938224 642948821 756848361 741815225 831306766 956731160 965845153 93039460 405297349 937155660 947946374 445337283 809450227 715800477 944891890 569718810 706902327 645945840 704096591 211011355 402275932 570283802 862610689 749488002 886277913 260697293 670309790 208895399 499933866 281559891 515378797 718908194 818970025 940601157 983418806 865690125 992353119 50074732 501879598 66558235 844117189 285920825 380215244 536531149 761030817 38898522 836077948 899863751 953115001 466706340 755440940 200430105 515016295 74924670 978863221 333511723 733706413 971980510 972055610 246028508 455051855 60842543 653919096 49065329 770135787 235888425 778162506 680416690 753629560 9227001 582430241 589246133 769347666 20366677 758710182 414628764 940286080 278754589 902428750 360732818 529548669 171033535 733417361 967187402 971138753 587126701 903951684 671598583 743548076 200626683 631902931 107751669 764124681 316763073 475539211 723216440 844653077 677871571 692178330 526365454 586054150 256127268 648078970 668860323 913659983 437535128 445244979 337552963 852946776 746135712 952659546 204280499 364715771 262891372 706008649 302764410 457569689 396881527 497020626 106554932 433065776 191147299 922939483 252526130 951755892 92531301 599403224 223051870 343819350 851442067 905632948 488653962 676814650 187639333 802386489 818088389 855897270 744377681 864410474 793917262 812650930 206199096 969493697 234784311 621276619 914942258 924118930 667053689 950621716 853287473 903949274 77611012 897173075 644286558 868458632 986922634 989812684 743408894 892493033 119806262 762826758 657428930 670221473 220679776 231273817 863634281 962244439 374438327 571652232 282418444 990513995 761281435 777081722 459960963 688168179 190901873 781771907 264404521 740881751 600178367 832014102 128960391 613466714 646458554 849211533 798172978 969920695 888964144 935713231 96505374 651685558 603311888 682461719 601336778 653115056 819432485 929542649 34339074 967422653 803913317 826726478 684343181 860692487 672181321 827592017 917810879 958142183 818489331 913896464 447315449 589254557 147163889 837386981 505846692 860671435 273023289 322629198 55952742 194801746 167414900 775719446 700441895 971101043 904412965 960963123 226666033 582420008 567416272 720054965 680508768 768388568 550117588 839351904 351702282 463826089 540305643 896257601 390677287 681968061 306116730 479394309 665065482 899547159 69526252 694040630 463301961 739240089 303871101 867364854 961575736 963774172 227152666 404739749 20370229 311742293 39515867 358341139 404612174 655904874 102415361 165426129 178311056 848248963 604156364 950275293 756749591 757151075 847912232 948846459 131915660 772059739 416110976 699086271 389256563 654312414 833910151 911028529 253934913 561308589 318017588 507643995 772028260 781323517 886973171 953689225 155631726 698066551 932308447 942648885 764231948 806791630 644647085 958117986 930583971 960453313 528166271 990819248 600026933 915052560 611859786 808677221 88083349 432486034 987536933 990316162 981989439 996130908 566565314 640374101 276020347 631334660 162556556 474483896 104594104 433354770 790931783 936408670 378844893 809351036 989894187 993890408 85581839 963503814 501524938 735199912 472027368 557763733 193013267 906847297 859408778 959036565 932323772 949150824 421086818 972715734 207395524 632310103 505288729 808859886 647842087 788230602 969574886 992747892 364488117 569696681 416298144 446626466 563335166 885147998 150051948 666451823 236344143 285825949 748167206 888060073 931133577 960680009 121679036 898097050 667083387 779249289 15374680 368739969 499426347 562676157 778994965 916753460 302779640 821928441 431970597 551034388 634376136 944543170 9178997 576678259 892958883 990176456 734961006 762866360 34543059 179461945 866027602 917897862 26266255 505654887 649702990 672284014 880571349 982988305 349628122 636391142 369260392 993280057 171162719 974220453 197254895 813517078 903027833 945648896 607162316 937547199 878532337 949950236 747974042 905501927 335426175 617950403 627337090 970552048 401938438 441808552 545938512 998984586 975849665 996408235 838279453 944885449 2328792 884097221 305982157 983982408 122605949 660898676 970484198 994338045 74421114 495522063 807327591 924900803 14253847 834832757 963262943 997538420 389125102 396057005 891142597 912877481 297093143 434647379 276674570 441011630 651874445 839356988 956566136 983512812 840881457 998382163 883712293 936661798 796502652 798020470 518377811 695603088 648613823 761883279 69879590 740470295 374550002 391800696 474462280 832065115 757369802 780715051 664183926 782495849 2018008 653113512 553948971 603906712 905649216 947700662 146978066 158149632 481575605 678243141 322616618 810945565 74541773 497544057 330466252 413579103 227522067 680735700 951511040 994142715 759424342 813067721 227359991 546208139 700650543 910014862 50660286 602349399 394927696 437621444 410161274 589281963 156580638 971664527 529007034 811162810 743568969 911649009 881415354 993367879 1954866 372426099 940862918 961672484 793896719 815348594 485134426 663819940 768371196 782744295 511511352 860611348 725897555 843129583 916099698 986233505 160972793 517413087 979750854 980614719 76231370 471384410 272526323 595948669 651671087 913659876 76055157 626873770 65752148 307027250 262761719 913251190 464948688 746615750 835687849 966202078 381019867 437113634 21705986 334565953 835053825 970706363 91448752 395660315 65984251 237021773 632598119 720103882 314965542 469592347 802300846 898672176 80052444 776096168 153297264 874376439 335568152 925125638 538898536 633865673 928925352 946626041 744499292 760411359 368816208 993447025 61504775 144043525 946835977 959494682 827338743 953769542 439925658 611677634 831449324 972926284 161525141 772193875 583053380 919127705 384221180 696020158 78419656 572611676 399427312 535870870 394470063 807825037 718590116 738395001 171478525 776005559 958211994 963612912 831971717 849707919 803938994 948215623 9097475 326733085 937913411 940196240 488635860 511886486 712610784 780945328 199440258 900384626 102999066 239985582 363811264 670653436 137389889 823849733 148714846 548180488 736326586 866481956 984272988 984459041 128855612 185650245 345600080 469718417 639194571 763938287 746684485 910060586 573804474 838183723 968721732 969874263 37835692 259032292 971372840 984209885 569810597 898840019 838813484 852563667 300379911 318801248 685620161 704036842 909090090 926170598 570140102 895214055 353509097 455395513 140894475 694181024 456121639 590386090 424492147 981961203 680735511 868012161 489834437 975029636 786690866 981413285 824982714 866173428 758621171 951049979 687476210 843116711 471598937 975149343 997185290 997746957 488711931 584766204 621154307 655969722 867712643 932438507 995704596 996019235 81664991 977657808 94409949 704911786 493126385 551932330 360595820 723315569 492673329 823479177 681759791 854785414 531328270 863789786 479599589 768543266 430641727 651775541 57615720 87561421 711700661 955699934 222711830 300307826 367012455 716286050 914296184 970776011 293661236 485998151 108994692 955688022 345625917 810579999 330050143 446798420 132268022 773786101 299051741 519294035 784944220 842326142 396616199 818926035 111541347 378028597 530352028 564888119 55405096 626517554 774557738 837348670 791766342 979456993 190604775 305579983 871094841 907599491 385512977 503427836 272240241 426694351 290941205 694166688 448818114 537231978 174070821 889530137 55435430 375609852 437241562 472747139 4255153 91763455 288854041 998408742 956740176 978991541 834459880 841877654 366396513 515716688 175605380 258405351 939098710 957024263 806471677 840104703 243612762 457143150 520136428 537095894 833323901 907079719 314548425 507759276 624690240 696089397 13184620 273394427 220991659 857372010 483771902 947850005 260897102 468799966 709703202 752253270 931630893 968732369 840004463 888346020 589869898 599489050 47076261 628328545 25996653 715088856 280528871 284317573 213820041 550126110 391393199 939494119 527361084 590379550 899985223 985604584 827624950 980214482 452042227 469890790 771855318 827722566 966730811 983745569 636849052 724440792 766659583 965747876 215848225 220257690 63538301 260002357 444760592 477773223 524906656 841813468 427907626 448190076 355401561 565114311 192573998 888460649 810000102 852072647 740192095 812859538 333386052 481009129 284232171 927703664 66968451 673927026 554450181 766457920 780107712 787956670 100243782 755018267 691609625 862854758 923976610 927599037 760654700 775851552 300772988 985169091 765809857 921481087 200937297 709677585 933136001 994853146 416967024 756200042 77122598 790993583 796809679 906170741 898198941 975033689 283460017 794919120 165759462 497850704 627818912 995995005 131286648 816012983 733614675 932676040 149824655 845983081 855039427 926833780 61435967 223280122 637381211 690866568 717224053 864812532 518085637 650569360 725638445 989283079 778118150 810851770 91518677 963601978 754619610 984882347 304518218 413365965 37039725 897699707 200631076 814911914 452080720 980370511 432050368 724298623 356723929 881368426 971074946 992486554 333271898 667883401 269038768 871660683 657671883 885248349 985855645 987695272 725846633 923391498 525491084 960370393 626290411 807865526 598191036 995392614 527467114 735488618 560929085 741220600 126362065 245114483 508365730 691254474 195922506 777471697 358851461 518626174 660984111 967875673 607742066 717051867 972982726 988088624 619530649 782604767 516657472 640083669 545450131 840302388 647502810 877946464 9634143 418548920 745845293 900551692 996722026 998728355 953627529 958611816 170251234 229266406 323638621 396250840 84882123 304619134 566960781 917550823 340331239 628820821 408517867 886587960 888012688 985185795 835317083 937303772 145045327 956084879 134697563 630531639 979451610 993766311 71064032 865572772 704813364 815067997 501765774 705083208 975302082 981759834 514193930 860814447 533987035 875775517 188386275 565879413 106278073 388824292 665973131 722608176 949008806 984155395 374453489 453663313 395359547 978122855 312456425 533702444 527180189 935532851 455536956 541295562 843124671 990807860 981833503 983949539 76060152 188458844 386552260 455960905 962124221 980195558 267307375 806573737 573453403 817232834 276618060 730347381 321829756 942855071 694506451 930405492 870628984 930294546 561942644 895481625 185885299 410695189 466224381 994970053 732329695 805438256 528568922 599999994 965591296 980814912 44405667 315275235 241115064 827594803 460760154 777216012 9575851 785828324 64460997 352425419 882445925 977439726 945837547 955532300 606942498 955302815 89489334 89600461 442343892 806541375 139200036 683348709 614019449 852309718 887451205 972462874 310667661 937608689 626951142 815136611 632783217 996669302 1450006 600775256 648491294 880345754 943227449 956675030 323934248 423594010 585441901 905953164 266837292 834785337 965306112 975737001 901534152 974502779 425304440 942800861 898162280 907324360 58578694 486652403 697301529 715764324 486948555 633663023 638392949 904593155 597771307 700043877 314423989 396098883 646947730 760813367 612133266 613843618 98082555 446138850 568569009 644883954 459663383 508545526 229152277 874365616 243075510 523457176 378664079 711185201 314579755 735896143 164548021 364484545 404131734 459146516 553613209 740910795 226453967 896758380 449904396 750106570 468873153 990309212 679802806 852442055 79022433 763379143 531470036 757085410 813999286 928943883 916661454 946854496 22059786 164653321 986189672 995235582 5839504 327799978 508255347 662221108 763433671 929731976 799461069 967413306 754832370 824993193 213408659 845251840 775086383 860352240 485527189 983506862 971299256 988858091 160638289 201655381 140914994 402319090 600858787 657023570 403440108 789202700 354111890 985569960 916564627 991530580 921663419 944860292 165575043 716807839 291841737 423977230 879266413 919085540 198764284 365767445 87360005 533382725 475687657 986892941 335111698 863069444 402386285 545602778 805819002 839560382 385411450 512463735 513621418 823803923 953021417 989988032 4167534 392210871 915002783 979800073 628346947 769486421 172248709 979218318 176447532 766781696 417749456 654957335 500774102 901487395 32397674 903750313 382923678 493888180 25060716 409277898 376216469 582882252 337352810 641954989 141393360 592647514 687178831 769939636 792489951 862693356 781685628 792122147 800804238 922312071 147222264 704106432 328432744 969268621 752801495 903285374 686894942 943773169 916902621 924464380 948426343 952052503 346762410 972494179 440097764 458838917 803460063 915432002 86157385 164443321 108144611 177811067 332303526 360614910 770912196 907889858 693093971 845183257 110166134 124420478 531133705 608868823 470283358 504788958 273574427 597638565 424109027 575232470 950581165 994204672 288488891 531875042 202355302 302742346 53195300 966333016 773515601 963152178 579367550 727769518 219878122 467907207 202851432 868796794 324653681 435076946 34598711 890137580 647569397 861155187 890900882 984161367 550353076 737477178 91505005 158294794 92941475 171946315 134443794 770170845 398746562 522287236 490155963 677929878 701939315 976849102 212804455 897080438 219607277 415076900 880913865 992152923 556615077 661591009 773928844 850414653 586518730 658706250 35610545 897285855 339824680 522898354 658133166 660716914 832686158 959575312 329556807 592770339 767357166 844872412 276424681 604932989 363004282 989760371 581832032 784323362 458038644 873994789 955453354 957868551 267591984 877426355 455735379 767191687 389788065 392509584 418889178 838728738 88658363 408335202 837247776 971649683 907231453 924549544 358308728 685451964 285055640 518327457 623975608 863300809 880689522 975829564 280447032 709589077 416775864 739656301 774997378 837444339 292237898 942515720 458080887 896148836 418313034 437649974 431504175 514548416 701322288 782501697 307100025 922519174 371589160 675950766 240177020 367155508 497784398 586694594 341504587 733058444 279770637 598235407 271702053 568166926 186599533 721351542 792767984 958474050 882130340 952985914 481891963 559738189 543534047 746020222 246972633 910112499 224346905 604486346 458068245 723984082 572353337 956156839 588404117 925313069 273263388 448862833 10662144 140047919 403789847 747873067 570624934 669260576 819167570 856672151 551669493 908010442 754894869 821361953 654168847 786116549 703189698 936478528 770108181 998918282 331003856 639907910 226284160 927731462 162779909 818603037 525191919 904801015 744429798 747573682 592987390 618096228 127687130 521708076 647873382 908404566 526061468 707208080 599664446 999171331 238688586 915070804 789079613 996761410 587898413 728337477 135473407 544794715 420323417 813523736 789038355 980928043 157024478 441860006 992901975 997609895 80822338 453786459 460003893 962559295 899958381 915921659 847887252 853437094 572896569 612245030 105591168 856351802 817442001 914496825 660479458 722738432 934733898 947704935 697381358 966974739 427198921 764250532 398595545 517033588 424840970 915772046 147348338 214560480 351264396 706767027 540964865 695326632 895010855 918570676 462300707 689124576 471148106 639274312 101729739 643918077 356627023 636241394 851564892 997029943 667699414 937428589 507048696 894963225 984793503 986198539 984408728 993183807 765945997 980524331 414489968 973990700 392880492 605837632 280686936 615785336 780627516 974330954 653986343 765220776 79820730 269590853 958980495 995078216 741959829 917456171 979803067 982069422 599723665 884672853 697058478 925313627 786125087 820891084 447928242 499115338 221622365 982903903 304628962 322410927 827818078 980885977 537921425 932660475 546111739 861806302 439650108 703360812 219173319 452919769 255941103 837592882 127139347 526193828 798296856 989984494 161527352 591179004 923858090 926312894 25032142 147170453 892221663 978946540 453516701 747025444 136744699 425101219 190019471 684844492 675380115 750823687 600107467 976648025 380254679 733034839 634148796 825594692 225599812 931371732 410931130 964495213 419191224 718900735 171192267 428078486 158146171 294062845 237697687 249506994 950575640 987046627 273784411 659047086 766987787 822633183 365506034 495207550 565829585 924024432 727625887 879237082 545859719 705776312 723613495 874492177 397453356 703803067 706721442 903710738 205149054 908218004 194639815 932174967 463936612 620129737 925999801 984406294 614274898 677474194 100892941 298802632 69082493 215596736 41255817 411320852 835871020 908028680 2769156 235174840 465502818 779927998 355689629 445844107 814781811 825123561 720443736 946617407 151564581 194378396 735258027 901895370 693968779 810957818 489181819 743416230 257186790 395684049 391136364 637996079 818711328 870395422 243411626 417715029 707423593 917110855 106127929 209313390 881191334 949380921 434149434 488766520 13342504 482266238 888178489 989494869 554106138 632265987 451645923 458384797 687938707 751599095 335354233 506051185 63106083 777977143 54753773 732799141 260525108 388652152 463384337 684860324 280760078 647231546 527513971 974845252 60110513 648489546 876187912 954636680 663100477 897217617 536520152 912252017 628785214 784991518 885442688 997631024 350402081 838075750 870549902 920224023 197692257 514139995 576107497 642676169 652113370 873551945 214568499 386805239 932850938 978688171 381756765 738786980 966505247 994759780 714143356 932427786 893248288 950143454 276987388 991864682 275301390 768904002 106591628 657815635 708380195 716112361 503101790 707753999 655833415 686889442 240863031 457650810 56854844 991451007 477753459 524977900 431067143 818027763 193699730 567746467 86462590 788751736 822622924 842693230 904647056 983447423 208024731 489547706 53099082 786978126 709120459 968851040 180951649 690740981 756757327 830239221 674128848 830194800 867329045 880425568 713997812 999307823 806395465 855314177 538986166 773197320 528257769 615446407 573661086 785520933 176042550 221834141 565435771 615714534 297353362 856183195 521594326 849331454 933597446 958002460 99654255 786902341 162117356 995499899 520886285 835300213 611076409 984132616 12734785 121652145 144859865 326276294 697426054 828521975 156047040 549032526 268421793 816770178 574228644 781320603 444250014 875109541 877916297 949935209 417986726 738874909 315259708 605931273 608500534 658537228 159097565 330451245 142162657 243557412 851326462 893951406 570325576 982705305 932899802 947291692 880320435 953996418 827079872 866982586 707664272 845606022 441167167 727633567 397699091 478749702 681098652 740686062 710725048 971603338 127517410 840625980 403101307 803023730 680971319 972215894 835038707 938801652 578277087 630130686 764756867 973071196 183929872 429431381 545721360 749204713 363153243 854499303 153589403 726180364 739160437 782316259 77088111 862606927 976783522 981064782 987694741 996293064 846251525 884757128 465717133 747711562 630478358 658943994 944091152 974388366 876807868 983855162 949715446 994925458 128410635 767568081 861590750 989526130 632367771 680459623 657439106 744587797 423595327 592278783 370184057 453512673 230561458 529918030 866109481 976888774 376721444 921510781 907683032 907832120 858498548 953358425 316231083 559869404 441901487 518273749 406900724 590322690 231942012 904494194 200257739 801667744 567295480 636369814 800633447 954377522 373043796 719965969 524890284 978577721 551127032 929350573 936747019 978847431 488744299 759425221 437468532 841634941 451638521 616104404 905002776 968921140 163297989 299720429 292174294 839411510 169926015 753780292 711023144 917328912 55503649 901841335 277880152 714871226 305391326 670263265 887759745 915476789 844582975 957650733 224169692 761011518 123788598 934178888 84576293 485809714 602490753 608899104 955266529 993107883 402708586 546895324 614835186 666546803 854918926 988071341 285680697 900450488 679620564 860780630 214789163 445903767 634457156 700125151 890119726 985554688 66112161 424985210 664307511 962318789 467864860 794613628 537063862 706658924 246887598 368531191 752283349 879961161 855413014 983527989 981725086 991131386 273526299 467832778 885747411 967182194 860004806 880635609 251175379 933239271 817508700 824095946 456187557 771411163 125621359 695004690 900398407 994915302 403749736 743980215 839608029 922929394 202582497 918867462 849259097 924882078 732559133 916947625 898798889 987574302 901216318 994040493 519304078 676611809 454758093 597698251 289335280 626985422 196802190 698496873 236171274 329032050 325403716 681422838 520841740 768214829 821583946 996173089 23498257 883841091 569234251 609706322 449898651 457853157 469483758 745255296 187908340 736759220 593934436 756069472 820111948 906384866 823163460 924048373 459344883 498446698 668674825 733139175 891453312 956284366 799624681 910797747 96115383 891863340 748959319 770869165 182370428 952792371 651892148 692468972 830304600 993717076 710399197 928917942 199171734 413631321 121272845 993360954 800381698 861482641 694137284 764675796 735975106 780599768 540259630 839262527 348970560 763782502 777426319 967711470 860264681 998415019 699888581 874493568 890241792 985554718 199279923 380560626 711751428 956026220 595880928 962545775 324997692 684336896 421604310 763919223 389573926 427237272 212389806 688087735 245933640 476039142 829695268 946472710 514625523 780932083 579559217 609448107 749527763 868616544 766635672 797429773 686070326 827729816 83600833 202091300 235199778 756168192 784640419 926865788 679035227 729397734 898713385 912169545 454709951 741984192 981028979 996947018 52516348 121032609 100631739 825702304 774912269 815055469 864416157 951567445 110165580 606158296 170227954 523103361 905106103 905304610 620743685 913060789 138874380 727375721 205725235 414075479 841726767 933056833 165676874 569529061 897983880 937219511 646214010 818541593 881344526 980067852 498514719 677044851 458905276 746078190 466797207 784049814 739380444 791881146 822429843 960144258 77767200 123977941 107039416 208190889 749049540 992677961 433298552 696183867 135451960 893583049 917412799 933446235 163801901 267434789 198306991 314301270 67359834 210455598 45188571 335956337 705402604 721218542 88571034 792815417 508072299 602383015 255445927 692334218 932448113 961175848 461095093 976004329 57535800 271195978 627348336 701365161 638150617 854564122 855554472 950794997 324186709 976359421 134829832 768656219 639231867 892575429 462480921 529931075 526443911 570562906 404237171 962492915 700862867 844278605 7278762 635065678 88843223 445595368 415438151 964270213 312278079 941941340 733619541 889536713 878045761 885462677 27201320 58120612 210711526 657851321 859590434 990977496 383960567 665274625 868373780 938164060 912385603 950194631 100976652 477844434 150205311 942547610 843132178 895843010 461414461 548745821 511705200 650794813 762907349 909390542 913636482 969895951 344205827 365971944 501962737 844571799 812445617 825788280 774720768 882304842 79057527 231798509 345845398 364318426 948279227 972986565 809330327 828999403 935318230 972077793 385106117 968614351 867161691 907054768 62277516 810171292 728678008 870261986 99815149 139544157 33065635 46742626 195954465 551054679 344320691 549914753 281786915 969955947 29758089 256190532 858862766 867714704 644952255 837277056 363598505 442237862 550120957 643161897 233744050 981447726 840280776 918177709 22333 288592933 583987404 662489845 59131377 643864570 22406130 280593103 803653841 865128394 199861798 744499586 331015363 478760903 717661926 928645366 517784146 993140629 414539321 994852986 227452626 269162689 614785966 748642931 667804538 953875376 530104086 967928832 260852652 417030973 563562388 869423811 519365488 822342712 38820811 206559917 114931456 487578937 851782930 938527448 558774100 618073047 842819879 997092229 143401716 522978855 711320796 974435447 368224542 395715809 386858834 727331006 437354041 847895656 791574387 846992169 204226714 438998566 404118681 853344120 181359449 487822955 236824270 558336230 4265079 570540077 532231019 772581421 614074217 832444596 647328147 816480325 557477798 920769524 101653532 276519618 913022211 961244356 12122541 180394668 314411221 940109876 916981541 918179749 467807083 798515028 250817442 829073630 866808925 931862502 481355549 602545719 407011947 602397456 124650571 539349322 740871926 845639563 894082603 987504929 514490395 520688884 297518511 520431624 643921356 778787322 924050457 963476984 783287801 852476059 697058808 750769476 123222299 170580845 918553474 947337536 80820242 592760764 641675285 731706786 753536800 814182391 513345295 571326297 916018979 979663186 797038821 823936205 460715553 690013835 544437775 887583947 774262501 998310250 606182740 744461992 434954245 939305380 560236418 847906164 675010465 800173602 562255184 946805842 574675095 875138778 297515384 926074188 119818951 635369776 863469339 914195668 238205063 870593609 363937809 408700539 588010044 771904822 734832471 805212092 929082131 966648935 467474572 849550521 407330721 529822719 928825811 980550947 322152873 498737787 907344626 948071721 421544715 781366760 736175355 966574437 98774706 575340542 836703772 934784524 894797748 916024905 349151837 805482271 497221597 838962484 496268869 696896697 820881568 877632828 514545858 878307257 174921665 459100789 332944567 963380934 520882636 918572113 39636853 506711616 193559866 235128587 77508401 661508669 795854226 908504726 860163305 963116337 485745389 501790830 533125178 984763398 710495774 866903271 841415133 863238081 989441921 991514514 327965199 808025499 619641388 804240779 365061202 773220971 438650042 740532573 399985351 435760600 945565274 973904156 608022549 955060190 731080033 786225023 824484275 941071026 897271024 956130717 454905224 524106669 444406568 841005279 924724033 975873633 145552843 736001020 383106937 689017464 165514031 221444657 586451965 638105688 49550467 667533788 172357722 548181757 124003712 454264347 349249864 776579163 53373048 505346617 994177904 997356627 117638282 940107811 734430583 828395249 623870892 765441846 99861197 760850893 571070655 658286297 502117588 848738762 596420179 867464474 197233982 405234092 741503347 914045194 736089439 968821995 404839020 981382966 325257504 380771251 867101299 942897018 418620276 799399402 853350998 961538291 836260649 885968275 149828901 468629233 918201910 932417210 854634360 982366165 464881202 562537388 416629437 799726799 526805255 718731130 64278437 69050815 962094112 989846421 559479069 827978229 943847983 986180596 56693902 955238730 829729838 832702980 912316845 996937477 11861187 285381837 71100280 948215072 46142168 400709153 362969114 739674684 883872936 919400860 408983765 414205823 290217208 942400966 868533761 964147917 406810038 521127104 499858114 823142805 433492119 661236457 218484564 668695185 915892170 990138241 150202706 761567704 706568331 951789426 761715141 829840049 686685183 912576840 462947686 914254694 406474838 446762923 975143408 977204372 489601152 732604961 713696899 960754365 57268747 674792957 247795691 511063886 477225131 719513772 861711720 927935886 272175617 918492672 749280380 882253636 374053751 413240687 838774841 962204306 455723086 651492224 717423911 878085544 332944165 561358389 143751084 177306099 572873113 577344258 243155782 334920435 846218960 879559343 861870480 928889244 212660160 974768850 463862406 720674046 933835516 935064532 182343859 407142032 319767404 506500692 975433559 996250747 449587691 486966836 317969404 788501873 288781994 305760335 409234156 665667201 891819994 943524461 552623340 838924128 312699929 353580164 985428331 995179611 752649318 874642552 473578826 686901316 849756740 958140951 384197998 602362115 679708269 919642279 825543048 908664763 253055016 994898797 10831059 938232819 478987927 686447676 353055049 369516968 127201038 997543792 627660168 666052866 444233320 738596327 984103679 988236086 182069567 541779755 667882958 937747374 900578196 953061553 498713227 985117548 917776867 943585691 714952903 838325778 226594458 268965380 23257767 703615202 814148385 923515046 769415270 943579576 224598789 602972161 484118175 697735675 839914757 843218996 378855825 623422875 954713378 965731842 44601531 569188841 884159904 900467467 726673954 955092725 582800591 781952619 606165326 677493890 346404479 456444954 26315428 367348621 871936152 901041981 994829391 995239257 425812930 906192636 257342642 389982907 98289954 308598262 352244338 450738221 354562872 822508735 138080827 254387082 3287360 915314307 234023863 648300529 937991651 984326426 490618304 996625947 544309895 830273100 811139725 831554691 865411274 989104380 589879218 607714994 144998741 918419796 567364103 958884836 557965991 596575271 836620082 871101354 664537785 779493001 120789655 526176030 190327789 597568133 678267833 885060533 310285560 493024065 134495746 582388283 807298882 811347205 303798773 471808049 271340290 452797641 320170860 663602503 545082783 838327203 669061313 959999945 118629073 751971080 188997281 681960274 601821838 712883478 654460295 986707739 574060020 856197553 316266250 429711556 92080707 493195009 558347637 856736777 947290824 969908713 973721983 990119093 817234353 994145793 427127486 582508516 486654874 554954906 569558985 835514710 578290605 659267590 495345300 975328333 484847096 612502192 337304634 423683109 422582033 548888696 608692088 786287950 446523937 813093595 245621157 867942098 780877453 903491155 781251739 781328700 499808129 652326365 647572959 963585617 448479104 845473501 177727483 547884571 346571397 424235045 899105460 963849447 950784248 994689180 245916127 753773165 921485537 931416954 16722086 76369117 362763205 998348447 275284475 331468901 625095138 708771676 658595087 790157397 986387979 987441310 135148537 377823535 289413383 961663620 864404288 963365276 311316873 633339218 476426227 949466212 302360182 831831873 315712897 410789948 377946958 552893281 321254326 546579263 736816299 913044069 678045060 750383253 798338752 810822223 98411382 717879462 464274102 496344109 276152607 518175761 75999906 762965058 928944632 965344776 243752459 651651528 603018077 813167978 450933703 604121254 402882790 514911824 715140694 777644252 771413056 816164373 881598738 917327574 177076594 753038509 440070719 498165035 496976884 553917588 449205823 758549085 872381145 971389507 139625662 533217508 24067687 29184845 143181536 392280627 420734909 868423898 620589303 759419140 393290286 621268468 510638033 839588395 49097774 467874760 953665950 974774504 301168283 308712668 766984922 845100184 361216987 388431090 352251873 550160046 455631071 688613201 833257070 948914046 223989410 813033600 98258446 705622386 191558105 231746034 976009791 990399579 552315408 923066149 421290665 746017896 867150129 909777505 654357798 899447159 201965368 901126813 576484669 884841995 416818331 524309379 610068304 995393645 973666574 995822358 379972235 931314348 724606515 768049240 291965867 776036295 306745028 634109899 589067993 824669727 754665440 850820960 975631898 998040282 722837280 930959588 284864397 920491613 547391177 924133355 777440166 884227751 664030074 755200120 399391076 400954355 60324862 179450736 714493818 984712070 700524997 936564721 485479797 758225823 50227492 527866466 387820740 535207004 42676407 237924464 5055757 124423952 18701729 495903203 353671463 667848545 598006735 765346167 841374268 934865925 812594925 914305983 11865678 960993588 434008326 947158899 473713407 655159905 277921683 605918428 726977458 937994098 314231152 718469495 948372384 987514591 976978625 996532223 623842638 790485099 182603777 824173304 289282305 769411770 367611666 432864836 469763167 702483777 169449765 409330231 436598764 790654417 695409767 842101384 298516101 809381888 616746433 775427778 945649753 993172349 333049999 818172772 363198524 714106314 851845768 942595524 382611180 712118484 692463876 952306535 512894417 972507897 212040251 587061765 748263430 903507362 620713115 826164166 201010527 506345124 795545253 928006253 685620344 819559241 498149391 946751622 10363757 759982576 937551721 981406531 658504139 928858474 501258673 702305790 640620096 786613135 679629720 966567777 443081302 977012854 145560503 882831303 229054914 925854477 96442752 433318368 164681179 390643806 656577193 896327357 476360575 804394363 765969846 770331763 140564607 414292035 561162244 713715096 111141655 165805090 906274171 971803636 420665073 869374829 469541656 731873043 452146502 750388055 663347194 728103900 631008736 656896354 875394544 960404520 215765422 483915551 105343646 421253734 626929607 864070343 431189475 840995456 355956188 356793463 131324534 605329507 203017634 883724922 598271079 957837183 729569688 990340508 124192953 420190537 246279683 782070600 32881998 744191340 975808220 978560826 284545310 889284345 788473435 966242623 571157344 800606624 416513828 873859217 9914040 419679693 366051638 465552778 862931235 934251113 118955496 162454087 311891481 814631941 439684362 554823492 742073725 951540674 321379917 848317304 933341956 959708249 330680328 905278525 204831095 819347214 783385999 936931713 396073778 623581486 426992962 922846145 644166003 981919428 132876737 209111837 261400905 863033708 302655694 649018754 60628372 742719309 582115414 931098327 620401377 809233031 785339942 833671211 511647310 725096527 752722475 818688368 843811665 867538470 642666382 920315078 85345640 781185994 181250128 585595575 263791851 299335938 712682002 929402556 806730242 871685278 548993836 897937842 294408614 537100668 116648613 378580576 619175367 845226092 162049964 614134997 244520967 454750427 530112359 767054528 147850986 369100226 929557844 935404831 343375670 700576749 478215042 989360920 77305986 981952087 182716996 753602598 744364728 875464478 652036591 946839161 273082967 390463861 655220866 990014914 5139276 585500664 786531828 965259338 17334096 41897491 719959182 810296796 705962468 866603545 759469963 967023378 826337839 844622517 184460401 830295397 58928520 952953084 890601145 984743865 410651114 677949594 611965639 961018763 726209885 734860172 208180312 849943347 422736020 983670483 117368028 839502082 993414967 997708068 252253023 771640749 899121696 929702856 423254573 588094709 657615411 899084390 605680065 986403210 18191031 899132009 6343842 947257631 560991303 791147238 464142835 825396756 644047040 818643935 750423086 805081394 290791448 976205337 979924661 994863375 63552407 569501994 905804025 989978119 213499056 657798817 240949926 875440981 231973133 311540948 299274549 361134796 456813501 873002488 294822724 297662004 370808935 585998575 774928993 890140095 521371930 882426057 480082698 977823912 325406172 480244034 26495584 245392791 269905065 516413317 810411428 940954589 363322296 872768606 170074612 899210238 242549892 474374301 12806408 672627419 875584966 974950788 295746170 714932814 958143751 975897397 207794754 487901649 694359851 784189884 573357970 705342121 327569814 557765836 21485682 122838617 807941576 892588062 190666465 372892516 686714389 865873218 401392647 556733106 899447776 914242015 741477113 866654677 47416458 679434193 697781788 895254493 776952167 837820266 722724657 879185800 321696591 739269516 790676020 877053460 196672538 661553890 504741147 725542749 186516337 676485673 524278909 714004449 176892050 891409445 635788205 931954825 887161582 986000240 983837918 986068736 816203608 972660913 305541151 977162320 778371385 840024036 376250623 957888215 486801202 637300874 157671809 983563128 792447545 955039981 689243369 797746503 809854975 831860103 78326495 206161912 103871989 178890469 353315125 921452791 864679812 911536492 916249670 931849418 362891538 461277582 485937111 921781125 1459386 199373850 300330915 447394887 560513430 636588172 191046333 559829582 250289561 763210548 14457403 784117174 809478299 982638526 114090197 223274578 294648295 719631200 334703971 652388566 440572074 938361851 193921483 794706560 939259828 997238799 7204892 715336837 728175688 779102347 2130698 395688694 685572241 720902081 913411134 982930553 638818280 935273137 244150839 466615853 587291901 794390581 466945565 519033287 69385379 886687068 960275760 968348289 856743363 957445568 758239868 883755570 323563841 812038071 430926329 765259866 552040475 664740770 229275575 752856579 809043901 935207362 508195412 792285315 452644237 627516574 206246588 265620356 947112672 976098868 630366934 641362033 224144343 735531492 344548100 422901509 629942080 784623446 483405657 792807114 710548392 738079891 223523405 467701257 898635417 970040608 573690780 924308891 775115925 975485889 504188338 564225219 34519983 829644692 965563395 973065755 751841207 912713001 533724504 566992080 714051854 791699534 897891110 914862907 904205717 908436239 595051544 821666066 27442618 414140622 751913244 823768538 150629864 323990630 124845329 553737241 435437055 575108799 263518007 446232370 21787214 885960645 85359818 674083107 925214815 949477631 905650413 963120594 951804436 988739832 176353865 861960097 41284761 941308417 972939255 984286236 956618255 991544243 372974445 819821125 366589277 827130542 42736329 950971405 252633595 310474413 301115382 483186358 270010504 893991956 129504803 721483886 468347864 873773278 308184676 339131518 130427205 522776850 899639897 982718500 116477923 414254839 449510252 733323263 522698813 661869922 359552434 853307964 502530165 844914611 66660705 82886072 657560656 880374907 821403917 936535363 306991373 823532515 543763377 771256189 8110314 744860704 673621425 985791524 994439494 996381755 615123425 838178204 632911110 787085853 100390951 656020586 35263533 875025536 214452973 996872137 79160132 613913785 478147163 982142936 582699723 801236502 422849611 660527163 186489300 745174798 229533424 254404213 601252766 844359029 382223414 869852864 19410734 615469858 788507564 862000376 949451167 980462013 389116191 815667353 838250908 914267001 499564439 710845680 958803284 974960395 382698600 825312703 332492519 426133506 315009332 517347934 784228485 963685746 232199515 837991565 375913545 684300812 850132579 865425821 211688840 673976137 868449244 921258939 85064312 656886691 62233194 735568579 536356027 860531455 88446357 530499940 464004168 896425548 366035189 572429515 966302689 991529372 143629502 716549216 594671639 957348346 982062149 998690256 118040474 266919214 610468891 960594971 505742409 859356821 526294780 912500272 625813113 823956124 686259200 994158073 47853304 348644166 209906577 722000356 822635940 836632549 197867703 269945293 774158591 943454548 187220674 882774833 145129242 252486175 87509467 405644118 437369904 519510036 627731912 803015185 633579522 882946457 764385857 815932029 484465214 838847179 442515763 825201063 37224309 571185712 751281481 756022658 197167306 905695102 264196872 759185850 567447212 682965921 279080999 500683491 604537089 631972053 888885504 945576607 267032627 902232144 790296662 921855320 168699496 355052460 535632174 757527622 730120513 774725363 425878416 481843225 52172605 256674887 462412566 940267023 182034245 622806090 22588905 178690598 884403046 893286717 938279479 943901365 681616167 826687433 515424150 709313554 611136222 671261366 742454473 896461942 558372215 571196095 69144493 194677452 669670506 825795062 616846147 704972339 531119519 532689870 539846131 551636834 957250796 968320170 863388085 954739866 724005447 854586756 782398367 797929704 873364428 977103402 456473364 741593615 100182953 442402245 415852940 917101183 709512149 906066761 700988185 994441346 853567723 968474901 800552673 877005865 884154016 906688332 331420431 505993142 292268590 888728425 563246494 822775021 31459590 755193894 93831550 112575911 912237575 945779270 547700143 576165227 340983093 889358079 366409230 526669807 265413624 703859971 277369241 561315291 444449289 447132836 511468965 750056766 760220284 916762589 339097262 625733793 384124690 503943251 869763808 888754709 990197080 992173683 573862349 873182358 379069252 901530191 251832315 628707007 545229630 994819261 748624872 776483261 316757534 702882182 888515620 924081733 454794911 483081264 124664837 629783592 690632924 881214396 928427636 939067293 946874720 993355881 734741116 944584128 53841999 229616685 596506346 651647934 781676262 988461923 664196060 780842232 434169097 478629228 350715837 771338653 325516308 797511639 345195052 615488079 828978657 941190508 695264717 834857007 926583495 948904222 421443998 848423282 907795169 962346276 760209806 817395086 987846451 990834335 900316011 967957601 522938302 609494405 801918517 924419168 629552433 700430386 654326262 943299924 29513666 392543641 627834296 881588180 744489612 878696123 781993882 975371087 906429611 982513677 500703395 750814990 409499145 794042750 913976251 943594308 283239449 425485630 231267105 380747556 873596231 967109670 806520249 851965842 133874425 185963753 197624661 277917800 303674900 886864662 954530162 963776424 936030639 964697760 71325764 155331902 127480981 863168817 643249534 876277196 676811554 942728628 620198986 735450347 137545476 703910550 375708077 860237177 855230241 872891554 965313928 993720890 558660384 771728288 99361989 362451197 425927000 783035086 675934701 891668551 228543573 764628197 468531692 873099239 934077906 942488888 36854499 379707252 60245007 204813920 486424654 698485535 854469742 856858525 613630577 919891559 551795013 666580162 190545436 693143294 5500712 652681810 857290011 896019611 899750017 912948501 364180979 743058100 410509497 725160951 478623636 933161407 190608927 453068593 249825756 871423792 933736627 935811319 774708213 802576863 604366977 714383703 32945474 898379440 328316136 688228530 956743927 972197919 466018929 723334643 2237919 307365365 542830536 750341801 445019631 774880813 898678396 958115139 783081815 868778076 924980966 934160241 326429107 964561133 23967323 182513428 707599331 809160516 333357406 388031598 469218939 873770674 54449155 497761003 32786574 292496995 396258544 891011133 648213663 882157073 80595180 280648053 478137343 515061556 937125226 998516289 726365655 739396074 825722289 864101751 385965702 783879620 902228284 955194979 673372075 831168487 250159978 851969987 280586331 376135143 645267574 989620347 632139744 908107796 754991822 839564578 793356462 912555625 682828617 714080080 83877189 920882230 203787695 276785959 256088108 446794920 858607062 971717135 840805870 888381504 89998407 374841385 451295212 513804948 970252779 987286181 63839962 960159885 823867634 894672419 444908054 729957106 252873950 478151898 532398260 888349087 185596276 646916094 410598256 865074163 315751413 610191755 128335904 226003942 571833004 935514093 450257405 510728729 254700522 727781382 11737461 388370724 945645776 979958290 483241891 945630718 429820399 734106260 920668316 978352102 635743400 846289924 541286367 949344034 450383745 474587596 984756023 985012249 703565538 818140999 653939010 813337471 529627090 625579964 494222324 851009759 352897649 566087364 504982728 760996319 633082886 892645291 424938212 453018383 860225727 867654225 630301220 998121509 980830582 984525312 674043333 801207743 696115659 762291451 118025280 572111419 424782561 827757860 546477144 687227305 955466349 979200300 303133276 939696259 718514290 828546702 57556656 802172970 272698875 537800632 878176907 974124726 993085822 995888044 343153197 367404192 481656733 909408836 80173336 432421335 629825735 881559843 968450192 986129229 373938407 941024861 718913901 725590256 899424532 994936092 338022576 471276678 116877562 574739216 709330707 813224547 502280673 516441866 584874439 873192594 460611588 654489512 156714909 496198848 325103079 362251187 664604477 695747904 937864315 984419982 997005895 997559864 675003135 989172058 981385911 984876912 847344566 976178902 809591193 826148050 290493902 687096305 398550550 807918282 850580652 984599638 407763800 583896681 58802922 116948717 397728053 891364069 600667215 775629200 336303102 553822241 304133563 344314932 248362778 830107752 318625410 428523655 466599737 993904433 803581931 966536304 441585861 799532990 585877540 756702122 705326481 888101786 631395335 913816481 446757732 715599877 182871939 858462856 297279427 307706290 931960216 958456393 320412108 643669321 597814438 732336783 747277493 877501646 849126488 989737602 193780771 506078198 73863892 754111940 964847612 987283016 589287508 823507850 412568932 443181924 484927611 537663274 231181136 537750783 569523726 979217158 943819622 956853546 49323316 239832155 325606367 489677069 907663804 952705763 197915954 859383517 173563141 456935766 637156245 759728536 667980993 923248254 881321526 982916561 137169151 321154026 106180703 783036354 491440469 869582049 507869204 531533068 342909415 500431330 472578603 496682474 427930867 538716289 979322983 985645797 18913473 704586795 938232989 999246309 431964636 897866356 523582360 598460450 673874803 840377440 212912161 492550321 583746045 687912792 399997061 673527720 578034987 902803973 344127918 812971177 47595232 121752231 81102385 245185611 208748453 752089208 765653768 835641047 11746631 269539161 975472323 997325882 634581278 676979412 738234657 871124549 371163337 896568621 571656156 798970189 796267601 890381708 926782453 933143863 606984288 863982630 975059666 994257537 98130961 192002460 976458354 979219450 686013189 825597469 172390148 346338199 473282621 979174243 677253223 880702293 683085963 896522959 310181016 603399798 129930472 913342194 808888798 810399027 474741029 706076350 506397615 632205119 582764453 701016511 554400202 872232918 898743609 907235047 466067401 727068723 460209702 778850738 906558993 969511066 819981617 927763170 854357118 937868096 200688125 824994529 765884009 927245201 50881783 797658128 770946916 777490424 540243521 625982774 528935311 622772550 960191915 969265177 817284308 970516598 592367363 936441964 418435376 685254802 459305309 730436553 842919752 995417810 712654998 747652741 337909974 877203337 67525086 867284318 453331639 598129482 28451801 54650125 504643052 838523775 795243322 952772140 399276237 700704696 217506381 778388212 438187387 498914088 173703906 491521225 376555439 691220909 348136748 611777894 875520658 955352981 543011809 946936754 882658953 883928158 640731888 821636041 584408450 734032549 405360737 990568550 377616547 625547692 342552437 875232622 816725704 834734685 239645289 899265269 568699973 948113509 848322746 955383262 116475172 467369752 600891956 965226391 920069237 927602278 806695169 879295012 164661208 296328770 880733345 903890373 225998437 624838275 98964990 541594727 621297627 933370183 259678189 715556013 937239716 940963956 923658955 991516748 92802419 283175888 212017789 248809499 583582518 812195921 393307136 690434297 704709342 834025178 500626199 683250051 218378978 978929593 625324477 977714145 658960710 725142608 262093870 654262739 322054598 365977802 223429953 878701641 526129334 934083641 188276382 411579107 700672812 931623053 533538815 878060378 101778404 456365146 644897727 920014486 737826781 827634339 1892458 300672326 842373360 935449077 92834689 175876421 236231063 487816028 178798554 691257744 496576154 501483556 251254240 370758070 750844489 754344538 823763971 864024992 893562350 991890107 451433467 776569282 565144351 568754105 768425755 955087522 142895945 229693821 964567868 983656391 690054491 849807261 373920477 969211511 447320207 974235745 248409978 531737149 832855785 902546370 166635340 977408401 311427829 651258524 857473194 989458223 171065795 578465867 491807898 624809073 674813828 964513201 911611674 945827656 375446299 678688635 533642016 762864835 715479968 792109398 839245467 914308394 637493059 831939975 174616961 192312689 672347115 980422447 359928285 414617456 705246020 949872660 461795892 855386611 730974184 736709849 72967699 889108379 703655228 980485862 62847414 657427020 395725448 560655636 682256707 709645498 380244909 423532804 116696778 403913024 803806147 843876391 821134081 940622848 319464746 796691366 498730117 536232836 898972597 985924228 74535562 934803314 907948639 920889884 155798669 370301898 883958662 945681201 250866236 357392990 491919615 620679754 517573099 660485167 420001531 604329249 215175882 899752265 583421424 767528130 393213068 474492323 115173327 937783980 296327055 382476760 239739560 724033536 912535978 995794508 193451769 783922940 426382979 718578992 954225682 993420015 387668975 626776738 249439365 551028669 409208472 939630924 736896542 859937391 399540171 433324868 965960278 981966197 937230938 988863008 330816175 597937052 555830857 582646631 864210532 974969496 701861139 881289001 600778706 617848033 930903872 982545441 393240770 791905192 964892856 968773878 878084860 923367934 365930023 495463386 642876518 817275988 944222429 952483197 578820327 959641459 157502513 707911451 409757705 724455720 457107755 670738233 268372328 552308661 880841777 966453089 36530869 535000071 337898746 977198642 94375283 678710020 758231125 830865415 11976870 45014467 821770846 920158769 898208123 926193469 459275046 662618419 555508855 613387396 957637192 974909712 171627878 527189698 125696983 722674224 676930189 938769437 463889843 666051226 498475329 819641651 298555321 475332946 401034465 873790557 343458544 608745240 442143928 492575145 814404330 960412759 218428964 263136269 779550007 973299018 979531009 987807083 914663990 969898004 217877594 624904412 42344821 668474732 483335505 496681184 584894761 941777062 825719139 983721436 39807287 847669212 641705514 841537768 951563089 995333715 629136349 699353947 642716408 945833433 260449629 401770923 939885657 961246547 302886086 846586556 206685639 874801289 616331584 966140203 502137140 642218459 355861150 747653048 631783437 753599365 291095712 968821805 700345968 833662340 817041506 878574954 106065725 430410296 395529437 425258395 314718711 452914452 271567332 699638421 948609406 997288715 720525184 974640754 809468845 836152167 392525768 399495990 846184930 888091840 649949597 969397879 446124648 469039017 897401638 986931607 932198238 988617452 264548024 959155938 467680371 926603650 413331795 594273902 788584458 829702763 689199866 903127933 484253752 812969321 916113989 932991286 287051554 334829161 218948042 769651670 781501543 874674264 540397984 814739958 256059357 302778390 537696561 933840585 974336651 981039039 907236118 997938908 191419454 244921298 993871818 997336554 280187230 509649485 469312271 793711049 434762938 841401276 721626285 772844782 99092192 614623182 772785058 869181054 568287878 592026311 365519442 507780939 177959495 429422749 271892998 432163710 536155065 760962729 844722871 854910322 988824374 991016018 506432480 883133217 83840080 547819030 994454603 997997798 907237498 975207907 950287348 969934439 180811 907756603 45203663 218413466 930813636 969436552 956819527 972272575 930167112 998520173 550310434 675598159 958123410 969959233 409498188 821336550 493867126 610238713 703962723 882060221 412532455 879616217 931135659 950803849 226237968 985539464 526547354 818319759 646564745 801428076 159986989 211098452 933943659 946943983 573246022 906155022 655612203 900984427 405444717 937117573 862216126 972628289 862622271 887705353 215695968 448731070 291928987 786853047 689347650 704941923 525951057 593138656 198760813 900789662 220733415 957972216 930450551 956933344 830592499 857043173 781915427 927422595 691280387 790137201 18979446 124115863 165562130 583478488 329270391 845453846 994734695 995891466 867106813 988249193 826690983 949001688 134244650 860244863 596720319 801293976 270818377 430410544 975726772 991761595 697384808 761129485 62680294 471986097 514376560 711597864 121690677 444639484 989603024 991616901 823871410 906538134 509371270 912640050 472285770 506511186 492800590 899658443 378663617 455572035 244936608 606757106 305288941 997264730 805756699 851574797 134440796 531866942 305035025 916927708 734590602 942381627 127059884 509954861 144150632 354003078 884922460 908593268 501583650 773702467 89066369 166281742 967332194 981173303 774502979 918218368 478694805 842669030 625152529 965475153 559323015 905381788 683142171 859526222 613128503 913328495 160436175 659148644 979604557 980388774 702706216 756341456 257675773 523992727 978727507 997040015 321079918 928321140 939998233 989346665 969451583 994768233 711033027 821347772 627121824 670961195 806208543 912477835 486450249 651741106 775360066 905792339 692681022 732922284 945919172 965336446 171341326 777155494 328982485 693989170 992598321 994801443 599188700 703988513 277825258 488866053 537132176 890512510 996297020 997160659 345098178 379265435 422151454 425665064 313662711 657860828 986649143 990322595 194470060 689545865 884000273 894255278 823963525 824390930 210945590 913606614 55304598 846278200 210204111 969111160 571741733 873558776 710912223 724037208 984021696 992753806 698002941 757823251 932161719 979308302 693418995 939929499 178546555 435196514 831318370 963796041 966888221 991152962 151472561 343411338 431125346 530469275 502315981 648121961 255553773 942829344 382877607 751312641 287735251 563147734 585214767 709301205 246841912 738146925 944711124 948705969 952413824 984312156 856464171 880220116 931926493 956324097 684048802 928876654 426062153 873267636 328939875 851573491 410152649 912617124 261715309 846363610 846658882 949947968 47211459 706917702 435864665 971104455 829238220 893899539 715669175 730286904 316064591 430020094 983960404 991461244 269190434 664803901 461072783 657139544 685519668 839546366 392449262 597949976 212776236 402589358 660998008 883532105 727011388 787290177 744265362 908606730 957378627 996728380 351059840 628142509 83530522 950304174 715043840 873041191 793809773 955059912 733589162 879292153 173134732 594352198 859659485 863026775 159306104 707839028 546528298 676765569 304675818 509240607 921293692 981379432 158560452 226831363 689478109 703453791 22071522 419237100 248221566 423623681 217138641 573412233 776883073 828938217 112020105 232257425 324386846 996227717 308502396 581771029 422461277 742237990 905591336 979835738 736676123 870076334 205990186 356206461 191350101 538643584 754788720 877245073 737777326 987213865 504532187 965392492 966302551 978102091 205237499 951856988 244188898 909408437 532360638 735832943 200172221 427522178 193438193 405409357 299333193 891978047 335009799 551871104 823921189 891130031 574326913 952040095 781906709 861792951 290172531 905858047 528793388 999094506 305405129 381587774 111967843 882920354 920764450 983054290 813595956 980507826 773011614 810828947 884289669 947334501 362862637 830148089 354991380 699843344 769158477 986967236 431500350 944062678 833515442 963611300 900252613 978553986 632418839 981629011 600243161 915352972 315373900 857651909 327940215 946048389 744910842 915887071 412384779 687912761 292428094 720235341 108780570 329466178 703865642 877387729 583318351 667230576 867842894 991609175 801720231 937525101 404107385 553415909 730229778 826331611 191868383 344586114 47186840 659739235 729534238 740602664 261177955 613343901 4786544 551719356 280264735 940001644 463125199 884664016 621901485 991483094 253891281 282371806 722889373 820469838 519376148 558805088 132280458 328484556 361570085 708021815 124518484 763605151 434217796 466711622 232072745 791604106 689899246 833718057 215641576 769028978 513557892 893887978 310746445 797695545 193667350 770163119 586391480 750496914 444728017 730606897 132122913 257759933 513401120 835071852 681524643 861607436 551011549 862257292 367863218 959951729 26755446 770663445 79920312 806377433 549295700 673318632 335858346 749440494 248534349 425937375 4170903 142572801 863977104 961167432 280378200 968481589 226644652 913017097 250378233 585399575 924171065 943906041 130927036 915372130 855236912 889352819 602292247 732189746 433038790 851006353 819801345 892561974 918106956 922183165 381890570 473294685 614402755 905442691 83631286 621691601 698020378 833339363 327899982 824965813 743803871 870533056 130354139 508306944 311137318 988309124 690580272 853973469 352422049 391112714 232474298 542089987 444871613 965299514 854049286 989716732 329350942 674670721 279444810 613398424 126874647 644040149 49232250 800527073 573951233 848222404 982639326 999097335 263387044 928001567 737088909 854306570 703262758 723166138 10811617 590280040 919191930 954510172 231394331 593833113 703475489 884012245 305140737 861354673 416460944 611958229 91956573 819180651 357010874 897769093 30018416 373703757 694637882 759671852 293106905 955900046 13543030 920709999 472398418 731625390 320393899 750697840 912719639 970015221 761531923 854886131 669642623 887239614 460419998 619889888 22924635 405023053 654945780 734390266 426982931 821524409 113516566 994422363 563513829 779102718 637481714 684146292 751988395 874524239 164261524 845980665 863976281 959089137 499977399 568039859 635716878 822753218 691259720 775443655 467833172 558115619 423266349 981691485 950309734 989007500 238348248 504929551 256704852 870291293 449894360 735790208 515345851 775772314 645402651 869837168 434969882 858238694 62057167 688964701 906611598 961132944 166669639 873828725 975049729 994983574 12485790 984739616 257938697 316173914 824210166 964583287 276310907 409054264 98618158 790149258 548008164 665241744 125029914 166116904 939178846 964111786 729309167 979336151 30010213 850299650 872828204 984032349 446790956 833915298 688506180 936938806 320025276 510416644 59420681 321145671 576194702 678591082 555383838 855273747 579468476 702893731 769854073 968493032 836175030 841950465 524667852 888303037 951583689 978022039 236515660 613169639 574091222 904351696 70886947 138337479 490866262 919094181 144309995 941784734 370631321 748013798 873429401 993989933 123669664 717544597 287706603 548449691 251150135 794859546 390218710 759916279 574629368 641529718 37998452 509446740 822263007 822357136 312876762 705409552 619592969 866490629 484326354 760330152 582604215 683268146 744207428 960447778 631346800 632354418 982784790 989509272 240631361 669464518 578260394 994167555 509864868 567867059 424312523 753175860 141037789 963253100 911842939 987842612 783874583 878033651 185436583 682654256 285446241 714226533 604439596 814169004 931808724 952720722 447070703 657862925 794776045 923677100 485021157 677297024 696096338 870663707 734155459 888042805 506474689 895363106 233768954 267140143 100446572 810081215 672641557 737406611 450709416 793804419 983659878 997876570 18856130 248190428 677636052 770535752 744319198 829733183 146023772 896645031 35395810 337664837 477422493 618168950 413654259 928383172 362980706 507468304 265757977 501624337 792865494 871228224 644870097 658157910 461920196 542687354 832804248 944354420 285712398 408692949 80113179 801943603 548079425 762333400 851512422 872667817 91623644 873447735 680666249 718927400 643632478 914215648 765900748 789968992 600696491 676182505 634974004 803271492 197465217 635108036 446367248 530772705 941836683 958541967 566375180 586839926 886098572 997272568 140273288 538753014 979153006 979906630 846826853 930138866 274626253 698089545 87908185 202956123 630974012 728901978 37428480 580954523 362834338 937819555 115308564 317602978 587009870 670577278 947722411 959803580 395375770 842928805 550098773 628730731 431217680 964926529 208528111 309348167 333492405 526779162 626067026 753096279 772877047 987853774 550016678 695711398 37848849 272769570 180191406 927593330 676560665 976258091 706460338 805816379 880198329 953323899 405091102 793748215 598251644 673698650 214030583 305866057 9223991 603624024 251833882 866347394 971972767 994944349 844615852 978812092 862295212 948944001 773909851 959584651 593066774 640864108 19669886 272385907 194887484 866139307 311052119 313364697 428770541 910861595 67666504 334683049 629122250 799801732 552382570 624344394 520205029 654179460 337713663 614510199 892014249 985308179 678837791 794064023 507983030 604315296 519462013 822529081 929374767 940211486 590905711 979046889 218577072 773656088 356585432 387582739 716571707 874554916 502185067 899818601 953817662 966893954 765984721 944283197 23870105 704246622 11378644 751130022 816681925 822770644 885102682 890795253 637511818 795429233 245234080 356989339 382712518 761837915 854120728 883119054 467628731 549232822 479829931 538615783 612782857 739002836 288274005 698893110 196518262 415628536 934617799 935659681 197957027 802046466 964107310 976292733 970840412 976178696 758667371 872809962 738414012 855787958 594652741 993453282 27643203 398820522 183986304 190194383 207615106 923748411 581707507 593733931 115880738 253402943 991951220 993602883 926025782 979470914 394744432 780274906 966293578 998681082 657065769 666489859 393357666 838526094 336026211 431104779 692853801 732811434 916897634 983688979 457426196 583799741 112766296 531453566 812771922 958792890 809747072 905054776 535166013 990614100 34916661 806232242 816134007 944043977 697979183 919440075 338108931 733009333 716393622 888342546 479736867 822540603 22550529 450124564 958658652 959870097 653203202 664449815 506054098 600423005 963958854 980490389 576324732 757454262 358077166 680572010 236674499 995655393 382766536 426596065 900338593 984661751 365416904 900084207 487230386 821902341 465041196 856908631 988142244 993836785 201083757 585594470 658424153 905781012 995420421 998250260 397702004 795508008 977624465 996494173 317181241 944623165 695258973 862518431 685652558 755279051 57027986 779831870 227148831 534787472 635682537 888798613 632186264 640834107 405027739 583696870 576234995 694140357 360047352 640459156 860283467 956381233 671869618 915670625 178554779 750516175 847158034 907138050 484099771 504053282 380790813 472082122 253741609 948818780 993665819 994676108 544886374 804233200 995288693 998064469 224439441 897139455 310549235 844290885 839137021 982816444 175772816 185064385 545859104 577886880 358440820 406506740 70180312 307452063 369803614 952870391 682171784 734490821 58082491 465323062 721128364 980089986 417806399 473387750 678473505 797550347 980461621 997050300 928459041 943763138 691163514 748033863 959919109 997390313 863010897 999202510 919377383 930569855 503690008 644298338 148813862 690442059 118140135 379486726 609848083 751401616 966603037 981879239 710801227 882348512 354533304 948130788 876020076 896244780 718051722 863229264 740991808 980481794 19985286 733025948 721974662 860363125 560240543 652052102 563918258 949684015 997575699 998593280 289734405 457742894 191256406 634992887 730470799 772168256 253079317 774261911 394555878 540747576 631971419 913061950 271021441 568433939 627478660 856301601 928972534 966424171 9723049 470511916 34672588 246765657 758576962 845720876 70919620 730316032 62282302 323025039 693904097 853108424 923897963 924612677 572723456 720189247 584479418 865300150 337781768 689240706 938473684 967624330 261310191 627925094 875451412 922052460 595675476 909125739 397032149 456989628 304732220 779713795 723480109 821496159 324592744 914597869 189434269 345344322 248014504 281970974 978348457 986871690 39281660 645775836 470439703 583659750 126489062 894351991 821238845 856546352 180317470 483094548 276959529 617474304 629531574 637759541 419306198 590560139 998237243 998265405 709116311 717374678 236850384 743907717 98736198 882600316 464388497 469223128 59367619 643770475 73122473 742516278 493226616 802942467 195380330 241026128 165113703 612923147 130100042 426016053 941783173 992703598 490206780 581669700 290447908 906761777 707105690 868432029 858933113 886449441 694820574 715246912 65655637 372501498 220806565 729694916 89264893 518347799 844722290 935372657 249913957 647253325 110319162 445126323 936433583 950125586 674263451 768301341 688188684 854598870 240782711 508334858 832994106 902049178 852555068 986670014 380074126 798645975 463227748 815521686 905700062 969349147 381400946 612686053 457813747 514087470 839094461 998508817 321662575 486749103 636425259 670285356 132216630 528802311 929774389 983563371 799676918 912212844 368113290 750683724 608484493 642367186 602366316 848700282 151559541 732964049 716252174 846262409 997329472 998598735 175047167 724012041 263041793 840772182 449538690 854934530 799983725 983985721 586059571 980388682 20175548 643255759 653828339 919132730 82769568 370327627 581472129 721644504 503072353 513986872 25178722 382068475 576232044 713913441 696800963 983560801 288632273 387885590 152626673 985856984 515530627 635163308 928859898 988081111 47336279 548967288 26948566 312098701 568982136 942721096 943647310 978636263 868553410 937539126 345224974 741151581 894144064 961312200 413286342 440041352 432548891 549374117 9043495 813464449 93821867 302955149 562842381 771178310 636243291 889635593 530369666 881044399 898148882 911493092 709488755 965827351 941738700 978171352 164451347 604384734 798856380 953087698 914100464 923195676 591186938 766750535 350397814 918876836 152871227 258002183 705965092 949812513 950564060 970606791 583977981 715735600 816565424 861637107 674659503 755473159 235971720 487022745 534508053 992876107 497482666 574537116 874205641 976195542 723163801 976491144 728039944 841833117 461529953 713626399 22249957 964538906 888019997 929995359 342337359 803558040 145772476 313615523 841840260 958646606 534761474 916830593 456714276 955323177 115213754 405072540 559007034 784059862 978987664 985472933 254475509 894723080 565960410 773563459 597989002 991036548 11764283 631163414 285451984 349808766 711581735 716619499 335382129 882673610 43451002 109097898 823593420 940598579 179066439 784482459 174644439 711852136 461657264 877668060 528385980 673178488 475939200 903643417 263849373 617375299 296928836 730074273 953404549 964139143 520751413 720581440 102454519 160961522 513643471 887409964 708264736 828690242 702428306 927393061 917566577 974656048 235709302 284452864 803464557 993631675 448742207 668073340 887752668 891407004 200803209 561316833 7472489 183895220 6849161 338222681 506494885 686911874 41775199 663836459 974970589 977185351 926977063 941509315 416045820 608772703 917143420 956925416 558409887 665544833 93289590 426557502 583981984 764572004 976954854 995264478 30579300 828011892 913830639 943940177 993450146 999000193 938680157 964187924 867070189 989579434 733578256 820223049 770781411 793119605 124718541 919725396 992349718 992793979 697956107 708328573 572672180 863755582 111076715 368994751 623412748 695276155 53817854 917185497 12946018 631099783 498440935 653413895 334911383 823290401 834311855 932493575 19138886 317341548 685744335 996589167 667502435 889677667 855333580 925580978 981879568 994016839 555971369 970885978 232417943 396096141 254140888 744380233 723207393 922878131 816517113 882652075 740990457 958976770 611250080 686397225 677427126 989981779 965596547 991100312 180802514 576216108 549957929 715819789 371130809 629401513 242116889 476664120 385394821 872288989 455660018 700262131 952922593 954534094 804427849 815594162 729523638 937763512 327472580 746546205 973123293 975052123 363053732 729425976 519440555 747262250 956932628 986324430 45070054 136991434 486728906 703657813 33903842 217636766 21969144 153637607 386901392 540032539 446055967 735774554 380212353 990864467 904857016 973852110 995318233 995773284 552257058 751687634 406198275 566944345 917150915 995119088 216102320 345300914 977438449 981031119 43081499 93899841 793035716 912135646 139293164 324061675 245485711 304433232 945019025 986327962 376529474 378879479 548420709 841871368 114268597 688672713 559556313 724323181 256586507 762895549 251607678 386988382 96294526 129004330 303926174 679272159 48582752 781644042 872051427 891155389 654229230 800397948 237038936 618237432 693891063 817172672 330443980 533628061 650599461 750591384 573557377 996111137 473731448 930921672 171357793 573972318 675196862 995334524 753435173 789238495 240700920 559210228 670115664 851986803 311230918 451693660 974695184 981279620 626494620 710577112 555338511 726068958 126068360 628130602 775848860 903087020 525920347 659952049 261950800 619980307 828386602 912256633 985786671 989994114 217660948 865131956 31732458 227807087 740724289 889653884 552929705 593763657 32828160 144215417 733328414 941396702 735077767 851157799 857855139 916439140 429296447 666781894 346488570 474195212 913063264 989211919 441880156 609380048 107902813 960465237 534051487 935039923 24092281 639393107 850652150 890787657 296266849 908447876 666277028 880520599 343238621 693308161 120803621 552767694 430168467 791697339 716042707 853898680 924870341 973585066 389928325 748253333 728360519 985507339 780188454 841593210 542166449 853702674 15910289 418085358 509079081 869684402 841278168 894694714 877217315 945512121 110831464 777365450 449472697 899868678 738001693 821324642 343062057 856114597 3336657 401856078 922091426 969763063 995654687 998561138 966974925 967966813 218499252 503626348 476656792 874103097 749091698 883243707 749257816 898096942 64799761 788763661 825118547 915158311 823758871 949273661 715406542 986886938 473765152 566321681 127029410 161333011 602124490 953625006 618127704 956910033 937763106 994458646 154438962 941900031 806281199 819443511 217863574 691861144 139920959 913673832 264850304 746488532 840589238 954384863 372856318 779883116 231095280 371518577 753939672 814945812 360461623 710024209 50515917 535389613 310119810 662322830 357119462 762530036 450552769 922419562 549379843 880563365 397290634 825256516 921140359 926013431 49214366 880945671 615543557 995942473 265813514 560039582 895319378 964112652 889424869 943698140 965121449 991940002 761691902 878052319 444823013 983232778 618677240 843818230 865516101 978971293 842566921 957061099 421117880 455285312 849873443 852299968 490864575 855727466 624261789 955364675 407420741 867050587 408144710 784219760 697818610 976222830 232319988 892967484 922099909 961716995 792010247 834987264 544855935 879260146 40211887 352180202 218735498 234991340 363384945 417788775 647665726 818277893 883564318 921046042 458180116 701441066 654278354 800243284 742812598 766717186 860376748 951393301 118285770 873160079 112046079 791570641 795116936 819076301 606116498 833029623 259582829 921607620 117666437 986646705 658740590 754583077 205555325 330952593 25519917 207494418 684249567 824685806 672687137 801668553 987048909 995999441 249783426 378383079 351409405 660106853 331577627 434125804 335766478 543973171 788315395 799004801 80378485 81965221 57996380 975751232 769189546 898039253 519275180 932520749 341079771 602390673 17964258 722348042 78750654 690051553 700016382 770380025 833409127 940317956 79974236 260192038 904135272 991780261 448582915 483828531 921545635 987473780 718726050 809818827 552455156 942148928 322466887 875564761 416396805 581331328 465393296 916285527 654720024 675103655 531395693 628287516 70028676 320978294 770798230 974602631 567757219 959735443 268119083 351338779 627541613 867955563 584554754 728852204 90550841 158208649 875686275 893172286 164745487 349895161 346779923 381730949 586834938 895333983 737281766 739874995 422523211 710637366 416976675 714077332 792344024 831092683 284137593 755727104 761123696 893883492 849733727 879593458 225056526 244432163 701988464 807994018 570226275 800213350 730877756 776283193 718600681 875340439 611601345 931610287 814105508 950000523 931293872 941457634 292312734 832844497 139373979 342411836 636641068 643843443 710525443 827475119 177971750 468949953 713980077 848891674 712340246 802396278 581763973 872015679 486374418 536899189 46653411 544084072 151002664 894378125 73296892 819791116 926213102 940019097 906271714 938779445 650639465 773127914 205465564 339407810 959466344 974679203 294665313 578101658 590324668 751712852 907011162 984282826 844924012 855132125 588194295 962515280 836495106 869841591 714834120 932053017 287305986 320316569 605918830 979130604 552805978 922626409 972871833 989262519 753961194 969911599 320691936 519709205 518736187 892456472 410447413 502140933 337165702 384638188 385454081 608009031 596350656 721457597 515417003 835856894 282156971 979978956 217577167 471850968 527432084 567280159 587464310 660891401 707743867 980032493 459704003 676336324 635769457 852974771 216078881 327669162 172482123 226063898 744922509 815347090 543446862 607451709 24868052 116002484 914695706 973608448 222135718 432619756 768736225 835280787 953739604 962647124 355492322 373591211 707763440 893761273 254368371 326026526 313993388 391882303 371909848 737473912 349740036 439028776 969940171 975742453 156717351 551006839 290534880 448372694 453263280 797165988 123327708 944284538 254738869 295667997 545214662 578233188 550731753 878742769 837896224 861785117 72324106 177855292 985593520 986060165 17313473 729806209 503462281 905363686 462859104 713137891 592277259 898733889 210456540 607827226 953529057 974426568 256906521 460808526 633330905 700634456 431769933 966052078 233614412 821652240 453318718 823359626 395377780 453864564 97870635 659657303 401650006 919363397 546445393 868795895 722710205 912766540 842545788 950298201 226260039 714859085 319932373 406160319 385943908 880035951 40862861 164574708 731696082 804397298 851482602 945593418 574247658 904889977 101012731 368562428 632265559 798028617 554861065 671301667 680060578 809382673 830517886 953545149 498483382 802146810 439990101 551623843 12552471 438375188 961722768 994127514 659601105 674053239 900517251 928116751 33965649 904039735 25586309 698098571 411836386 545757061 61000891 864269200 322697180 446735955 272344425 341128091 663584717 869412702 781876932 801722158 976121745 986252480 291863613 906656224 389441897 421427805 881889526 968327300 984472616 991694184 474110807 935970053 108897523 411249371 519333467 648747974 960877958 981596432 232163445 903624979 409265074 712762307 458279537 987643185 348529580 908340831 933743059 952122618 567066048 750525118 246528649 890308191 249542853 907990663 217420161 543343180 601400963 614321544 883437190 912587349 510101656 537886693 789050189 825785859 722085653 741258848 511941140 931153767 339903500 741902608 164907104 741477344 535118859 830462250 482258065 635596957 180404223 827653652 979871078 984993598 94874057 332758494 429416460 579312866 845665504 960172020 310126874 914577204 457665545 665385919 119712744 880528497 612349429 865405023 431999677 536261000 21660519 430442638 185207372 400546616 797238963 938013180 475654348 551479352 833749482 944131885 539483629 764846129 19686184 372966085 666692319 831097057 219787442 839781719 516812673 778740998 200377989 488185439 317782832 734354210 396240072 558133199 691998200 884429538 97676998 701587535 17716441 930694094 747081973 938174631 449989152 997371709 324871324 341383653 959408905 981291443 629821075 925437577 32400463 791681252 938000070 971767964 476224306 730331271 898911080 961448174 816902081 822527780 320536834 750076666 897875645 927826699 664237705 901054698 459520248 769816062 476791441 906422424 988146584 991068533 4829606 510380532 591039470 901785598 248119008 971569161 504152276 540577196 767055199 936962177 566302435 906207654 566957259 754913833 756716050 932015983 844316774 884637498 536667759 724352416 515641042 626610642 638686707 896175012 933880689 954021792 232452386 264511330 252884496 834096359 348954786 460059525 63057818 743254582 76397296 835125274 142418760 931005296 688940376 763105410 566268976 822378425 208011750 266032120 580509051 784014977 649721086 793252803 922663008 974664689 775242951 797605232 777192608 823411558 597393200 655345310 310121031 347642583 246262336 248664028 709735237 831518745 383827641 656769393 92290943 495664580 706370082 935792848 994421760 998954508 68497841 79618612 677021614 877934101 769696791 956449033 26619076 946671587 988787283 995073660 488520817 709844124 854702646 859055967 210050294 394942088 353411493 883496380 881881696 886965505 806035873 851224551 313759213 969078124 773978705 835932586 494647677 541669324 967987915 982822835 70360025 737895861 318860916 646333969 484910909 774983171 616649926 689916413 623079919 803885594 175534386 950613867 302601307 976802032 364968088 750825609 757587530 971685896 723275111 830581752 957157633 967452614 140123404 623844301 228514912 320954853 746875134 939500113 262473280 937611207 850399879 967223541 641093177 858599342 845435285 969204492 981429397 984127684 451787870 934796542 623865308 815518898 967937216 985159259 683424015 729312362 531696449 772829681 139157284 497315227 527212922 649260572 323728820 771680483 369802428 973026749 720108878 752584920 608968172 703926236 639373200 941932242 858360298 938159341 369452704 422281692 679794237 785186625 533949010 900979947 270161906 620621898 265582568 961793764 482755135 593208808 446419918 775870132 985436863 993394441 585296778 709497542 16839346 778109251 21805527 728692661 391858019 437364346 500139116 986625106 926743692 969676618 127926756 212816959 786243167 963449352 656258678 754096605 893938893 921420162 520914109 568537338 609233625 973991446 684239370 933263638 545777102 583214651 132761393 322368204 131753213 158880297 718262632 940203166 539997570 573070201 655162300 964912738 420259375 724824551 570325915 994985641 163090003 517825326 745877896 801554404 108442753 121434990 805000797 835126383 487427174 566292097 174308465 730738223 338617212 967531918 832419465 966735150 76931074 219772106 258003688 713824172 82236534 919962122 717550493 974475328 879601106 905114406 731435747 828624056 680527759 778736782 8084079 348068883 844508527 895808499 773921161 801507012 526756101 630718072 515455154 560072628 959020934 964082571 674320252 783703206 858973517 898379610 903747294 931087705 210687275 685154652 165289756 483858127 379674571 985119361 800676824 876985688 916123423 944917788 83653737 818668938 812534283 952020539 210253697 816216779 989074691 989778309 244140413 414106156 491943253 842590508 46702467 745229042 8333804 112510311 289197316 408244100 415163632 571625334 130552288 172977675 993204056 996174992 70789033 339301823 826360736 905999680 824664249 974216365 602516641 983709799 691816983 800106230 958087632 995147350 403896785 948035876 482439455 660902017 453481171 569704418 220461978 425987168 675935538 900944517 30321558 972104512 564859375 998657691 369210200 937758518 640198923 916196837 867183880 954646614 285611057 851771574 134059815 935590193 319401876 824944561 686070292 911111013 798539786 933281509 137826366 559613525 523152999 757568732 319742216 791646622 444423310 672548330 399335280 998075315 32496745 914214159 490725252 796132850 744765618 917380233 242668842 801442394 342411689 550119752 265717925 720935300 247791241 501193884 65391857 582275384 952317165 977936749 722883210 730123455 536628121 807800621 666156029 747695274 157730928 905688383 256578863 607454190 86146845 254284570 997352991 998876015 104042240 991518634 427390915 548452890 357885210 475039228 251340848 795595950 977310291 990104697 471990308 893469012 925429561 954850134 394774080 870740585 710852216 846383095 710196548 785417144 186270597 376133974 426445306 980837819 645355277 730943452 956184988 991551024 932045429 979965478 455807860 614516266 373735337 387657770 764945766 880577839 198595555 236944044 190968975 496314223 57084317 86817964 259004890 949368141 524333233 709151234 282552749 320737728 527772905 605016000 76546481 942284073 811367451 930649650 268611959 352552739 586422994 930341409 44838363 520649365 98768636 930335166 504056787 864318988 177264409 474061417 714733241 928564191 655638571 790347380 692335070 830511410 103836451 463938291 631956392 948228697 382538202 993434558 983111331 994931568 117857656 509994856 564238946 689976517 102379718 814398220 381223568 812656431 18706837 42690198 475794534 649589705 442644650 666366706 654591519 696881924 375566013 446081738 100759001 149654244 921171751 972043690 123288206 630300317 463164986 899288836 561984860 870243875 695071524 975620425 474852971 960957352 106669809 559530262 168180126 309617205 140343297 611049031 385789315 405090048 885946340 957534581 55060712 161814689 240259331 952820613 405341451 644823779 168812323 719157267 82024571 832098164 713169561 945992959 908609973 997691265 842063025 971831346 124830051 913595579 252052624 993945306 284535089 566510236 149390761 494493299 733304016 983410486 911170791 985053833 798447524 973087024 391941606 533037973 878863436 926292570 992745935 998122333 720467873 920162671 961416832 963717142 951713927 970273837 933233574 963707195 98128175 325118039 106611186 165179251 716379185 763597199 936445760 943144592 676241072 979266305 665043166 671181400 276881062 923796294 472522471 918624684 590588080 907136171 65400245 161862502 874510084 933474803 564562893 920695166 200801306 971440512 863117234 910919377 704610305 982533072 122368236 197955365 493064351 971150850 146903255 222117497 385576737 611730691 601226382 920808237 669076993 809418025 705864345 895980281 525015446 701597695 549688023 721493248 307920909 480091455 981902282 982291526 438762581 646750213 25490664 626697242 388527368 855679776 725020619 950382002 557692135 957829293 201912814 561564528 620956361 965478700 650097572 728889496 956464915 960323949 637109888 956558411 554286086 580178090 378827674 453802779 714032798 961936319 172611919 757851678 450756355 574851742 825212142 894696850 43692404 163769743 254021507 585951441 950918584 961729363 942642117 962197032 105229489 190750116 340638539 792880176 966965642 983968722 443092111 747650757 946247532 949337507 168371465 888689325 658145069 965981187 936813266 940694790 293142126 689091126 951788838 995745920 749037297 809952854 705770003 786042832 558441952 698841865 305711757 919714803 723099541 778789058 33317385 138540989 661785691 971958895 199037972 296891394 724082925 943014568 261105588 516138848 345945382 398816980 98741985 286398711 118509603 973465286 160938192 355776100 770293995 807506407 67247312 652427038 825744112 985687520 453542015 591211072 422793994 781266439 667635604 785844716 473470148 974663411 527274004 617352826 151584059 302912467 68968873 310515167 985976452 988592702 547526806 591901306 143131857 250293689 892575101 923388810 183990427 491085582 343103924 466453229 686314815 693598236 479336527 602360286 120532418 212757535 599147437 973473664 483540019 823117318 498548231 858019377 571392375 694569335 813799174 877474872 268763860 290176589 908059089 920795347 506798651 881320901 825059899 949288656 1924541 679375008 961279019 964998679 396571097 497236853 248477797 531011200 477038746 853799801 455440946 668668654 570289910 806605597 42214368 537074728 14938085 741545397 485560836 911311796 947180659 958352382 363485567 896044795 987293088 992341129 956897602 977087276 582261023 647246596 306519015 790358737 455041 55718429 496224279 857667216 214993679 848585199 654190351 712969447 677469566 931220291 446949289 902152513 743732903 829380081 658746797 976454306 226628943 931162724 708674697 865544085 316942362 976741639 340401696 471722247 474007314 939772466 134308482 889322336 547526200 788310526 35723966 326898572 372094290 610916693 915765294 918075524 133987554 977320130 319038595 502571088 336212596 847005340 941228053 989306998 392961069 729496703 832331238 925153555 799231640 829345848 222227445 545851882 903601867 993833444 395042753 779207125 547838139 876342379 898868765 980628222 540296797 730152435 955327175 983202402 102771919 613704981 349164233 908035769 148557952 637711264 195412995 264517278 826657727 950565807 337922696 568537877 566844606 728042868 135265193 332288889 531810576 675064820 813154758 943293882 505920264 872949414 27672912 737888785 533640720 882406498 305609172 980236594 47917667 178429571 188271444 849679818 494510075 619144847 907366744 918222924 398709879 802528470 268537539 916916438 914492463 996782054 41947510 885450750 532322784 917273260 249805675 790405746 738054594 807765787 194882147 501082307 248659153 865482677 358497734 372346494 145055135 583855267 313133656 886604201 305901682 306938711 142063218 789324066 764753297 927206745 6052182 150201956 21869662 881351938 508669687 647683585 408654658 882550190 733167546 782429790 515049093 760372375 713451549 765871840 601604789 997325359 844892636 949718142 615265051 746953952 964612823 979503846 78214170 564264225 477392775 646121975 825468693 905690935 626328541 943478780 792738362 810079651 46456512 952386162 665942042 975961825 781462533 916551792 334961222 488852782 786690855 828853345 749531551 936287183 536818826 799038194 865742023 891713132 485215137 773101905 35381544 656554118 518564983 879852451 712085506 770900073 138328344 890064489 229938122 290789415 701691749 815638318 827280617 964841064 815570563 830202891 182947004 677315811 500571104 967873363 863420671 950375872 727035415 909213845 439358799 988077916 799991243 830873414 398457882 803625419 538922112 588156527 752213931 967993244 528501198 609798477 993926006 997858837 207992483 510091005 17751377 603786986 822703202 857807662 330315678 439575238 704445422 933980159 635262033 845655080 448659201 782187288 639242795 752269715 589545079 687720914 281718179 694492169 19732767 69331295 326804147 648435470 981917772 987094761 472170320 649322543 814707327 841165551 335372163 640669893 230784305 767112081 492097040 627644519 640336266 875160167 159303738 202895843 403665976 878371501 307469201 550106360 857706666 896667679 793848279 984529016 856995805 881746203 816721711 876915835 89671345 374987589 10797055 319417516 960185576 973466393 180399255 298601423 24639480 866614231 557858625 996011149 614255399 640542894 19573806 660675644 987489493 998380584 844671027 995517852 445882267 670773664 557786966 868263630 25938119 875902109 883005686 888594826 23316595 684832910 712976704 959371856 313717821 708034020 617325537 661041514 592467257 942455357 462640580 567747513 193434406 199998044 425873789 493663912 575316446 713260850 655243224 870789313 754018831 909082805 573355437 979488341 445017954 669596837 898200097 922107280 169136655 590647535 344801883 617270961 365990912 421575408 345730506 663839955 208747398 367883865 829654478 906529018 395875891 903194445 882221476 932648016 466229706 644449554 61733498 166741546 678872263 769124362 24789100 717121742 53090447 222029845 610641314 650865598 547268806 968473027 883049082 963831742 92062716 495861871 15574994 773577359 781312390 808811958 567648979 991909365 691245842 962764008 717912010 914702996 707732329 815558469 600702687 614166088 413146471 839323263 873103484 947344284 249968936 744741730 305315225 477191623 157089676 309512619 258816982 631260217 504872424 626232767 355893335 931244899 233056540 863003038 971602593 985368267 689911133 693146945 905289854 971786461 163244451 269059796 120692100 274558816 773080515 985404458 535245123 724624147 78508388 307730452 826245193 984766179 561297624 741540817 43480818 683073376 936342253 998113080 729675835 908835195 792516941 904503878 807901401 974333491 847818832 894954451 540021109 876185626 881054455 972039610 477309298 592976753 395298994 779157063 652766866 844585628 150979023 334751022 326954354 830973757 686967407 993235034 954047480 995616000 562849148 595522068 379127292 814964652 280280185 720128987 58982035 613448028 725114420 810874260 837863510 936332538 746586857 764349099 26765318 641291007 775469549 814650212 888783571 953819137 758516551 931358599 960759037 991055841 425193665 872456686 8601279 359292307 596955422 643159490 294213594 653469737 366400071 610013802 31851481 506178649 29167200 396467689 480543352 651740226 476418051 836813701 790762370 879234148 949913015 954504167 684237076 702409635 711191706 922784945 471106550 888677134 550549473 972396484 907351729 955819150 277693853 279584041 387195721 459926213 568374516 668159307 461135259 856941896 419959560 480084702 241146308 262420701 792136573 902269973 951456065 985401116 430934296 698938154 900325554 969272042 762400420 858400903 798779481 864403431 912112295 912246234 595988462 775735368 25181852 751091437 127495463 300103399 686363868 984953401 369411225 558358596 223320625 736468321 139535772 712049799 79834260 796230126 119712757 880117600 951437014 976926751 149503068 801580991 796427293 847721497 639334977 976171330 832807103 979327219 147889063 150551741 127046967 369304592 531261520 963266732 760178085 789986472 214626979 499578796 946010579 962664248 810465414 975491181 472965462 864999740 67644603 970650639 41777442 811733277 328069169 813547437 285218727 513102666 954842213 978391003 575337236 909093519 87051829 384494315 824690352 916159075 16952656 710471515 866066551 961097204 156727228 588751637 405625635 979187212 153145230 563229844 748030331 757820881 504418422 998431282 898436497 919274794 955497153 995224496 426535023 929136777 379901832 656200465 181097938 975141659 947765656 989120830 868643337 940351368 486781970 538487237 950188601 998604836 533507743 951497835 276337589 838879162 628648697 823320789 506208109 960853833 237645318 543223878 20636112 950879601 33228106 353011890 147513912 621332353 242249352 813083691 507027651 787171185 288568045 869961295 988223033 996296685 808678426 811694310 956056100 966194308 382868950 983501482 887648992 890667351 96062986 862704859 75423473 741959931 333068024 666834483 770183179 798736224 311550486 725603952 171213267 894231745 919812347 955446995 473303949 971408844 220591888 961536636 70823374 958952928 68587134 628316195 705636232 930647525 729671341 746575542 143848555 356432759 86529032 705787731 60664243 495604203 636453231 755913974 615824433 755319833 542946805 885521168 798128339 855323192 900221698 920070083 438552575 537731331 37374085 532866005 263560251 906169453 48717798 406976974 473234332 592984294 753324494 780432636 652086624 904350059 813596844 942977507 936461104 992532178 842996675 941780799 121971274 437241412 303191946 359724915 226201561 701264807 23536513 450380784 915444698 992774264 701669887 965712060 999032581 999318945 617990081 778477254 983998571 991438471 952091404 996916510 743056959 995403767 464545920 585526941 143149092 998702921 483328030 560515956 256500783 639841224 300545795 307910442 886551918 958730593 889509791 932319368 391166149 880521375 270797291 382788369 326296523 714630075 237460629 316345635 528357081 799182725 467770664 815142789 270303481 613145481 417206503 553539558 586025530 928570389 746257936 960724991 292917697 552500313 948116290 948694616 507311503 950194091 404624576 657242420 939128756 985377208 482052522 526466362 962834280 987006673 998124406 999391919 784363455 838426497 849457127 998275329 414275070 611492376 321099333 321637367 441377941 979803342 506670638 813627829 820183329 880235915 205828143 749581270 482066708 774644447 230541344 317498263 509694485 946651616 694476001 932890797 341224411 578117025 546580598 562753093 446595012 729978622 941654012 974438250 829488672 867285482 889130558 961651700 55657818 381546233 359296139 362743236 803322831 862795771 472124440 756834147 74017345 548933279 242838737 966314131 713247052 816798841 424786823 429493880 318402610 681209082 829959758 997650246 105966731 471737057 417850628 811678487 172694912 286777066 146201850 735460463 826566000 912110588 263474211 835040628 382965066 844496939 502661836 884627288 628084229 694695142 259160990 400039973 6994150 845442015 102335459 737476440 495516025 906671660 774922897 949909875 473793357 819528076 695653423 912813799 370191674 577170413 564150136 604946370 742887457 987935017 779545865 924363546 989326861 997877753 234443679 425720899 845115976 915026076 310237176 860377963 992176924 996090266 821076022 966109057 890512164 942856933 754618252 903151821 755124525 757672199 538013111 589907724 753216221 931337568 566759308 972709793 694596884 918404573 867495592 887369609 272766705 631269046 95895122 100554251 594854730 860174694 146030909 583982744 649726675 901755044 899711576 910872533 660182524 991279622 485795833 953095356 929507060 967392567 814863533 828019940 738949283 986444734 271780344 738450300 22023009 844511969 776292141 798844256 483940539 739952333 151244732 540148010 560094683 744973073 604342096 703356792 351298817 980485330 65869483 973871869 334436482 334591171 151009403 693090776 991739208 999121569 31325184 413574449 988651987 992346196 813690488 950998965 187820427 576171886 192095913 674320701 634006836 791730080 989289695 991394572 186753898 293410079 140109753 338037637 811911799 886794964 907262533 950335590 781644162 948626873 883264307 965577472 316327110 574613580 876630045 980380146 643389348 754883319 553108192 857545033 714965495 734731343 593076164 708633009 220650252 654175225 422295443 940293416 113733076 954018870 917377166 980637113 868310011 934148813 94001762 434373494 836066534 877398421 964385670 996350148 630251854 796046186 318633178 926244382 591394566 709937997 612213831 817066522 948336545 987997670 649645126 731455336 848384327 919809979 113827387 820010802 406487703 421736814 316646555 793412044 379933013 979155370 141695662 721269437 705426905 997487673 758094360 927777961 82086795 730468974 32280054 470091340 336428657 903573380 791895967 954635591 704665998 818689412 309173016 608684005 12357021 693970225 32123859 529472404 285731863 686017946 3843425 744293164 221710380 937196188 321919156 787889536 365860828 691588323 326036223 639842289 375370420 921242869 738833542 753545285 974345499 984185116 976179069 992544424 742993415 865514367 140602701 299793502 907787362 934335053 382947162 615402483 92374039 893124740 587451727 781821432 230974902 569203365 882082597 922694000 108706818 357534176 117264532 784827437 166463476 972211103 282356404 642596342 599616649 657795657 530407590 540781585 951622215 993757912 643658018 872723740 545430704 767960143 874158227 983661376 773460324 999264341 708437112 994991089 390235584 540605294 435588600 747862029 182536497 617628771 494562366 501279537 934344877 988152507 106438157 131694195 917312751 951340863 655788648 768524325 87660039 394097990 147125788 414928062 395677171 958974388 492164123 822699319 795712317 956903726 783682846 785682596 366231721 656128184 111668045 170271033 487873869 689012625 186389281 507822543 416308526 589217116 668312091 799010444 787956844 863861459 33124624 152894033 742421479 877633552 515115803 844564115 65481986 101604725 903157770 914146261 549673850 934161343 445989009 462834676 363327953 891116683 995009136 998244030 938760735 939884440 304364282 397582872 246297666 425088385 786224299 926281970 734408088 910388649 55150521 115260798 521966075 672855425 698207629 987876723 76129003 778242921 389046887 922677671 467684691 731145408 437153636 935270823 125145539 163176987 747228776 807989366 170123699 677050604 895665550 909995840 756358950 926245497 202350434 575982621 659667669 903868116 64996808 228129233 574677844 826537943 251632035 873522913 756091634 761415654 359040083 390272159 857727829 897890660 743500666 934714112 977201835 991358579 836598544 928295227 150792504 474431326 359267335 770460940 640261546 918391971 501060994 912189988 184391865 495104874 378501044 618286107 694687844 726994079 83314984 666123915 340247618 835611822 719172107 905450053 352227281 401558542 774572718 946358296 298967988 673833525 14520602 957335273 231645797 549860143 32435915 766254164 722277059 988910413 434058140 711735911 606468021 640701823 672665840 998641028 464370765 997551748 932777623 965993608 820161124 864529108 482999242 731908998 840192031 970256749 445939105 830742987 748233692 811699356 118457699 602586283 331167139 885493118 689309915 776520309 908304850 909351005 381867015 810314307 532188299 878844693 631933074 850330942 397116036 627838785 357433066 756771441 171549777 909588107 715911624 901754736 41222226 502964596 89024005 961466572 523190483 596753582 727817364 814305417 972839779 986283600 45336942 632806457 684374177 914480887 622038048 965665575 386615649 988559697 498992167 520771883 396047350 785614160 65158540 893123276 911043321 948801827 782372628 811422921 255729037 535404523 103180574 235152494 759598703 825263513 384264694 446452219 427803602 942366852 190971900 609139016 591073340 725880769 617702233 899077934 348133416 524189634 325506891 952356621 305057507 420620805 962125324 988757342 773967054 817855739 796083985 943132936 575598205 878037462 698442662 786439915 341932156 411406091 478263948 664173418 511247433 545826201 458763296 489933690 471016323 967914219 833308613 973413889 470836126 782981669 817478317 860466314 971651608 972863229 950029612 982833537 526072458 577937211 709979758 732107514 331127080 629559582 841117681 938233537 965061182 991445412 522658767 764917605 607667853 828254583 625929693 770024120 868322280 915265527 278131474 942308396 271413706 301554248 63524551 359716211 594884025 714229589 651703452 919803262 632753842 775079320 683762890 934105964 810693342 840450307 279651359 326840155 435100597 610011554 99892181 289434609 899044155 940058487 824107415 889639389 618478646 901016788 396824462 822752095 819683093 975405782 242152430 985588072 11559526 245469399 558842770 686264396 124136635 909436044 709668877 959203095 362765742 779263034 712922313 888448289 151149204 205740858 963001715 965134259 207728049 506986362 29124164 141235252 141408153 403064966 663110527 902259135 872008189 888669501 199445358 353748095 360945691 743646588 695034408 875365047 143564434 778952409 937546518 949544470 817396135 833875333 282147111 938008532 946245530 979446461 499231582 890834970 694029244 744208465 81810248 648667277 190960362 566005650 705504763 811376561 192148726 941160986 973641292 982874247 159977063 520647425 758403841 764496015 535684354 703363176 329332595 564289552 949893921 957176315 681456794 720276846 434475244 820351936 901136984 918933166 618772933 630685385 148227864 567690547 787613562 834413961 358480064 876277911 443148345 459294092 503825434 809577788 983351755 988633693 252678126 621324484 646687621 793205259 583302347 936394779 222852415 643388869 782406271 961995652 873124326 889522545 12075064 810603652 723259568 850677062 146959754 835457967 661369067 916293782 371207373 788600559 863587313 900294651 183679965 194671407 135499924 716022705 523348911 717886870 40188515 662691995 336952053 896105313 300251778 686953725 166597604 581659978 802539104 918681905 32618829 419880189 166771278 804031224 911565322 944661006 717527119 988715650 96898045 200457264 975827364 997078247 67167852 431036011 747825265 929743110 538720315 744001675 310044665 480318361 296497152 347158489 613363717 832825819 501165813 817467444 290976566 629154300 108955266 667821098 437743098 890060974 661153774 900725565 906590752 964679336 826190087 876353039 719655866 829825085 550188677 849500001 158305525 982241958 584799572 975141348 898105588 926303329 52756250 281361302 99648352 163073942 118710001 822886678 602965090 786413127 627247349 963491527 797078124 927002354 877666698 976178256 567404442 833225034 520140461 612922171 893188658 923760232 617424020 725902519 342976146 349828086 230614923 469716208 345049304 600821469 901549895 937649954 131452017 938706880 560279254 940396114 208683513 939653920 182075065 747498896 66101780 125170296 448024425 521345552 988755790 997184730 333366799 425296441 129812606 682747860 552428461 678475603 975206205 985549814 79312358 199312879 332297299 689718402 641170444 940500993 824647714 839853439 264212925 720118649 482442708 746375893 90227511 974350491 267662906 622387176 550511879 899247738 76874898 339662567 772346687 811382316 909178591 943939370 549668206 745432237 958980191 972520737 312389661 854849816 341332510 973757378 983926569 994586965 604681173 853618416 973221575 973874625 30370577 766428201 133480268 652931057 892051199 961814106 459720809 836037918 988925954 999241246 4473628 554519283 71877549 987927030 149011305 533791898 315657003 663338060 831248756 942245524 46037353 250807122 338513552 845741277 366990918 760565724 907763590 981907095 134470318 670967587 675647758 701828174 985302386 996293071 373068000 687614425 545605883 756825232 718043721 794874520 421507239 557638178 440467277 978430590 146905856 412899227 801148654 937668598 95100827 222992046 792216429 851656962 783994642 963512701 408554721 673024636 39219010 823493988 905903286 963462771 880745433 899241679 534408819 761983579 54061870 839995856 635406753 982210118 408378364 527758272 43318982 665792415 719746104 880158108 295695064 637940555 632387498 837540366 596232256 854846863 290474734 476393274 567795744 650485739 243352796 580339995 926604213 997644406 102098960 763790508 620606592 866151477 896374357 965259961 686398955 882562648 586987893 862561566 427439228 480713776 866248633 881046540 526616806 892688766 127552445 827393392 608629005 755114207 678590938 931619967 81493350 639268466 154547007 312160264 930377321 952720411 416212416 827895060 686350031 942767104 604635051 627607273 790549000 963732562 675124509 948057507 959750935 993555153 324781912 519190217 907601691 977488294 938938229 993905323 67695819 331998200 926135748 950178804 366976310 489333260 957664398 957770655 196315166 486263504 316034879 349478955 440400564 610042125 13976546 887780467 686409055 723140366 677735538 812711211 911323700 917614878 989880775 996892409 34002585 84362470 345667733 963325992 283368536 515992818 712189904 972917729 522891299 573145288 260785022 287962883 887501263 910530608 169436953 182703298 507232870 741856986 845982568 875318450 791515638 966928180 123872605 667892258 668158321 797040577 78582538 95152265 830778998 919518655 294745869 314843780 143582204 410806505 907444933 964489537 830076945 900609867 340234991 854885325 241666999 308061900 866773996 993713337 910610468 998186128 882015820 996025115 830745605 945442097 776009067 954128423 140180229 489034892 602376558 907673249 653105786 871923969 584091534 936700417 442895513 875297580 666341142 889108410 855034556 915788999 787397265 948459423 600681460 629489773 491869426 774305795 458709215 828075692 528265884 762927954 246886948 454491767 959383006 975623828 96727614 856957921 421355960 819923373 773279641 783107046 77479797 984954352 304552321 487407536 741048498 762325623 30671582 984295209 606624266 992488298 453901111 976154383 119562779 992478973 943665934 964981801 336563706 439621066 740647962 791033851 671571048 764034639 776394165 853598847 953846074 977994684 719413372 770371868 667426490 930895813 325208079 543303901 189060465 396093238 871776423 981028228 944603496 957563347 99772634 638270299 36873226 871217210 30021938 401350274 53876484 211922694 412666255 854301372 636200618 761675162 807505541 965994068 917734145 978421674 414780045 463209139 816584261 917313473 536335435 793446862 848224432 994208724 581140944 686848174 852233270 965177867 168862980 763442771 930048203 949674263 55501337 284543394 316552814 446740722 351340138 398682036 524252474 612169517 179700375 237055801 91710990 254534081 829475052 962387165 626131426 831042322 423802350 501138341 971512504 985450155 385728799 583035231 552782139 986796333 348490971 600437169 759804073 897303175 859026762 914485128 425812805 458701269 135468699 810296649 354970126 701840821 576879795 858655639 172892327 610675532 734220466 979472653 691432808 962404907 996911488 999079037 45407884 707090791 15301141 812974653 750763140 771873620 71027373 693754230 773287356 874639228 9297560 251217693 490436111 600602979 337945040 730465794 824429398 827779276 874425740 918613297 586574303 912046389 698411985 854263078 556864551 877758725 347515440 581834936 13997557 154483648 402245873 777216424 722867848 731803739 62545088 761730938 319932067 757262874 614345981 741638497 506857000 547216235 105122107 898702861 86119988 165741249 548724511 680922398 900825041 930500036 382048651 778780829 895291074 975517030 180040534 859257607 323055442 691300403 836813536 960297768 630334442 756343230 903861690 919732314 661021790 822747753 121110668 481121142 883812331 970575781 571282452 630843180 386422188 507129963 100404326 787315788 583397090 776912183 766867293 805601601 422753609 648792278 605090622 970684356 178968912 479082966 467093833 596570087 791747061 878624011 806914747 915075875 80351126 91853168 626641431 936641978 268156718 353475739 7835088 436923311 89160329 305405363 948492184 952028738 169400181 908932204 789148019 981639841 94677225 477622717 625238720 832395314 276304980 538226577 820516406 994231059 265945606 461617476 68637099 393385963 752471456 837178707 842471967 871173412 346518468 890181552 624962326 850630397 900869557 974545024 665793006 971271059 286693648 980730717 613693939 688049941 195199708 552425660 396235480 799357943 884237904 931986291 335529985 535606895 515757415 763690708 59769969 138349294 385096067 531503584 613275291 867577718 527077923 896857710 758330590 953756675 601501424 846279253 883469153 974856774 507416969 579662461 311632089 455007247 673513712 884487965 984082152 999234957 596918278 850998267 553773405 634845730 351164170 772869150 241462428 910710288 119176373 524969960 338990636 724632442 303682532 378896715 317154020 909687561 16452297 965124177 423164219 466115543 187254280 795061764 986432466 986493994 751874986 882319336 794880622 806983748 810011118 942739171 419122351 824017154 12194791 269737783 351412417 969822372 709180800 774731192 402422112 470281837 322648798 438218834 757817249 875235819 645884485 860012021 830637561 906400347 507207701 935284248 403708535 447661470 276969219 430929163 522938039 743759247 380208522 533219226 93234835 607636625 121620724 502592989 31100950 364945296 142777601 492173404 597730721 943347147 24036108 237283991 7806970 122704492 867576797 973138682 694083720 892582789 785553225 901127268 797209139 864830227 876166429 895486682 226083641 468949891 671009232 740120635 286878055 776126230 617906230 767800467 427211624 879133777 702356197 924121026 382062290 953612597 518879859 804570004 123194796 955356328 506150752 703463451 908342343 979450126 155215492 371201838 755969589 927517701 526344609 634950688 23380571 502161525 159831594 566978240 708410383 789185324 947369015 953191494 542664361 941188510 195655630 492211513 765302037 805469132 235939884 776943382 550598075 816344642 694452626 757306968 123667189 943330976 302759292 542004390 950103035 996518448 838343767 874549860 938445579 948864004 227189913 421422759 216211640 566873451 424947349 600237103 174904203 612600010 287370602 514410913 317641932 419845559 214569020 737140309 769273810 821827830 380210443 450965824 445784096 598359683 644632930 987448467 622762419 659818132 63442622 454155048 528595834 878878206 894161519 982185569 156176246 951690814 688319911 985375916 798040358 943096356 968335888 970298847 797025941 860382731 535936885 659844143 10150476 836734318 915339821 950793968 730615560 808030050 762185450 933471873 1646606 276036368 930344287 990758247 267481911 478985631 460154508 714594996 894889446 916647791 400218662 936157288 257893003 787717080 650046438 951716426 622727983 829681160 9504157 278942942 436881455 783702546 212766120 857725160 323691859 732207511 104500276 436122206 212511570 657463092 783338864 909558566 816514333 818412852 549138791 885066544 255696899 698985339 968869566 980527161 216616226 984985664 608530840 923058215 918572641 947977697 622884530 663289009 880026689 961372645 327882140 916683329 831281428 936482680 957586012 981686918 131529264 540484046 967108449 991525518 610724796 663044353 549067572 852930323 140955445 532104521 423991685 859716881 618341848 705718972 335362850 523798729 589537505 675915341 964451031 983161641 330400781 720163257 310980281 341489707 831620495 978185289 531011679 582421880 151423915 585469030 324649134 614805595 183274905 586429782 430421789 859745528 769534953 842742128 507846541 697747632 471761960 631599341 469057720 872322654 42271289 360224648 2175421 674366015 719334702 832615675 328826360 887495636 282002795 916399359 452300020 977496534 916916089 995745505 48989657 214846975 102549360 847959796 598443238 799417571 329797799 833962196 621040919 621206557 524600305 555523877 249957322 613981321 849444479 859558131 393280999 466908200 165668483 579732608 252440354 794475520 42138615 911003483 22559819 793667547 166125118 287678349 921937929 979031221 81366521 622219365 248908244 939469646 636028629 771260229 670723884 977571108 195563218 749922413 869215594 870621355 259299650 806505961 869388252 997866247 888665888 896860349 694223840 841686113 581681217 638450684 992050686 993082510 778429488 844398780 804270395 892089004 569255769 728541334 77182626 543729557 93031827 342128859 430298171 977160490 234050287 767487835 698068376 799914783 936168848 950098160 826656728 889001922 545120358 568130713 198531223 293140173 113865876 269840189 287600702 514464633 89076289 730689266 730930074 989718701 411672974 534809109 584543943 691406429 714470125 841254946 891299941 931533445 641157844 647010586 733668739 950936974 387902069 669531523 613178122 626745516 545750123 879245232 21632839 53028390 973441648 998654912 253556711 606836878 24508548 730163730 75785417 640740637 181981913 746665138 324235208 674762206 37352545 811640964 42192649 949615763 128005977 955783567 554715287 857221703 956598337 981260604 453466835 471268246 158585250 159086661 620679792 658319152 110774528 122020209 460679201 768726416 521580626 532512967 967404053 971051602 400451948 841739942 969819281 992146288 52935152 614933060 915961841 923279231 509337275 726613092 32144393 954236781 823448727 993783529 587791597 674037940 342826808 355542635 195888628 945779816 775574322 826204043 921630751 942830923 204010228 739529071 745347889 890217749 534012306 692655874 486806015 507479695 677481763 966642288 174335920 234956543 879988436 963201813 179770338 955409740 660552512 745146494 666405783 746497419 121316874 515915088 255683351 662874034 302193924 819283767 540546457 760177142 272305070 912387884 566635273 695103171 812317077 922940368 516123250 897427057 65618306 895411559 619619560 724085486 550685823 866689911 633075597 842823535 827456709 847098511 67695620 216178665 258807861 381326873 437711763 576766135 120101182 333704306 379804696 867459962 652956922 697233426 73681697 277954142 313815372 754265392 778065204 826000130 198089226 736535521 117622940 475574380 997916508 999252883 889612418 918364668 748818957 847001474 492124659 897551719 748665875 785849431 175304610 296373020 507086062 930705001 682268867 867646600 146660602 241244602 969931178 974511631 55818533 271490921 373620333 937587313 533407695 617393109 549934152 850726830 738523326 901006090 738005601 944978906 267624203 356483757 659912191 740513117 823676056 981990666 720355885 772495573 943602731 999117042 847228768 979454486 22850085 25354238 859753291 889798928 924080117 962459616 230518630 353078117 701274699 930726015 528715024 999135137 905494469 939578559 243375262 505060311 244911943 487873823 329643483 330412938 603416698 934453465 703431640 724232904 699535733 779431890 942427104 946765130 172473767 557253753 762746368 798537551 5714018 813338808 766004669 858156011 615023182 774980321 441792488 971298260 633208814 714401958 116186720 422896258 787991754 843695778 656088424 880590777 598399025 891082534 176226250 263750465 808238967 883469940 186252562 827100470 659716560 691926391 432204812 508214278 942739532 994374829 622614940 782703347 726696790 929191238 321106032 590498544 915026390 962116441 195789877 264109954 728990849 864352946 780181109 983643121 184613774 388532656 373906415 687736597 991198357 995501659 317262371 868509922 525686284 989583614 681878681 971260348 873942836 953344718 427752165 634102828 750737018 780290106 271881807 652747481 637449154 735306830 483802192 892498994 979066869 983717757 314861838 428991324 818115137 957426043 261051076 812421052 443200619 889351858 670899371 720120934 554355391 983984500 716951898 965585787 362036193 888206063 39216817 742903667 237896368 409236552 901818339 971765529 36501320 387148700 51457414 327095421 527751385 757810757 223383330 669600782 841793164 921692410 865265990 988016462 35035608 685134157 156364880 828381325 653123277 746608507 67185236 888530003 295978307 298696321 939416881 980562369 190499871 885427295 665729102 684527682 847781263 879845668 122697333 698946588 528861065 583782968 985161815 996377064 905886474 997514030 70600670 206201689 136909218 370169630 448668723 908266247 839840311 879008372 678632513 732441002 206894773 405372105 799829881 839782814 374638750 751299032 323646075 848819638 642221885 759228581 29167103 591912904 256881205 472816438 678745930 950014310 336418445 764727414 967944678 974390561 27236870 417597191 30850081 180283689 597006365 755774625 859415982 945073238 20689043 171349323 926480168 989660005 163891734 772608212 583540415 833061832 572959078 850469913 725394250 817189901 555244483 820974081 615052304 850838891 983435651 990181448 328027607 387695536 787337286 992330912 930138866 994519405 560779601 860466473 269027258 463717440 72178793 174890205 127616341 926067031 967489696 995227042 729447158 992599880 852014124 946810501 371901004 956325244 469505425 513173810 389462725 668237607 861578736 935973474 437536120 814863805 104656769 552495061 942818875 989318878 994397164 995539480 594315845 649943705 664327445 714159303 219317169 888366544 621367385 771628532 112930846 515594296 633733296 988028999 621395412 910891416 969785920 998454716 342451361 442017482 559027078 745494584 635759620 801942983 560248647 694454206 100437730 356225645 995313002 998551501 385839248 709802065 546176493 878753312 686756972 889581654 679897156 947910912 213150140 337983754 90722188 872111091 864632172 955001752 660943104 825724630 270050814 404050653 504368913 936749249 429812963 581428159 146474054 893250544 63741552 655295264 759208130 842918861 905716374 965332345 259160995 668326738 359289441 794394819 604408201 711343181 506212046 906048558 511231005 770780609 109999401 738309201 772261854 960313886 345819933 420024322 298793852 915036172 105299361 335056787 678853464 913410868 565813363 896185628 408253382 584589094 566480589 690918164 721738136 817001786 612179852 983673536 743362312 778183822 372213585 568446080 411701030 588118892 442197460 620794402 986312531 989192783 155069497 617428790 647239964 776439814 306348497 439089040 825847206 995299428 545815406 919991792 893232920 900065635 789970626 891859015 686953619 816625462 824059711 964398245 462463002 672918378 855017585 972637760 990476206 996564201 959504104 978455747 445607090 760548652 285109319 987038285 44137993 871197422 709505990 739249310 546144823 692264549 364893 585580616 899350740 919875523 752612082 988174747 500308968 974444585 401580293 699022824 177089613 702306477 421470672 737889715 226538297 652741532 333005601 497298736 415240039 422739796 597587319 650203918 936114457 983323344 827289878 859190896 448102658 784631511 234772625 367848879 815855593 836495332 963426628 981035199 470047923 943269487 846144731 890327312 200038658 809866749 698707178 771436850 832982598 905096629 400794425 955380838 522797705 684076401 285986651 916964592 10612907 37150335 28944062 111102955 581933145 949163036 489277284 619974023 64591430 837541821 393624564 966514392 210642038 703355492 350073845 902271655 188544867 625588704 894912366 995950920 425537721 494995567 627190190 669110820 993201357 993991591 469805844 666517572 839250952 887966938 810057661 956489539 516562966 665144263 492830288 936947597 401009126 879028522 504949477 873830099 694324261 897264861 961073952 989196138 935356098 937124469 313608545 805851162 210476470 672607564 47724777 883287800 321566221 608185812 874440679 974447033 500013834 582104243 687317965 698758192 274141280 409031344 731530564 819921779 867650284 974065063 134548573 888466002 948941791 962619534 674709854 786863846 323259624 907809571 120739741 646262408 218342680 765592973 360388123 777876201 449158090 715741966 732560225 762142022 65037544 707832223 761721883 922602204 482992176 821484807 59678952 274334143 454672579 960485420 968019479 997280055 587098730 796209511 930526322 979410226 205779928 391724661 867526407 972712907 414039699 418593903 866849764 942391575 676068121 707465171 947126734 959663365 110427084 991154474 631744953 847362538 549617009 994598654 903848353 971931780 918712879 932799524 948249452 972045896 318635697 796833921 633683712 834996781 425551390 712141076 249136885 793553579 465457418 879199094 160347594 901038506 213075839 942668933 467978091 509961037 251374042 265777181 951343779 953018724 455457855 463259216 804092374 816067736 57272901 725048063 330359457 474139330 647396330 961817749 909556797 913371403 673608612 715578402 895393975 964659976 65253005 701686267 683041802 751351197 838732151 878914832 311306924 350509989 934105346 970330276 397137794 567895304 181977861 883272645 522600560 776119080 758629183 939599219 822611976 866780777 885207208 932304688 102058654 415598869 202442012 888639392 730383615 933912840 690441675 949135182 333468793 559025272 457577564 469249607 126747782 552341121 96038044 966889019 549287424 779941855 889201500 923964368 193935313 490693754 238060324 649791302 717263838 949337914 554171751 811564214 225605362 659936104 764123869 802149499 522521620 842572157 648073785 899136975 551740588 854181804 472275090 895524280 91116502 609634083 438452664 746601249 251527577 590049023 208209408 504929719 541045631 989175891 575430882 628268270 232342455 890568669 172409613 539933236 265910319 456767775 322792303 778697848 326103001 658466961 608370403 977946763 225796758 888932897 994274839 995588334 392474394 700166693 971315863 990533753 334966255 350681929 805109993 981986847 829718722 897061329 144028481 674699822 712980238 737761726 159978213 586197087 616322947 867367067 941761400 988444805 654763526 854040580 813423892 922789633 411190027 469171077 419748272 918225157 582605442 979475415 9389427 90103432 703638652 765736680 134490221 934415773 463804514 575397985 134270761 282867476 941778859 985223234 119519186 480188923 990877690 991737089 796053211 993917601 946296241 998228388 89229975 675200467 134090329 620087504 848518799 906655179 272997342 442971015 442384705 504551358 212099860 826117555 625695919 748727813 278737281 664973585 650770714 656334001 579658537 851546420 584379330 903707975 643641296 734420937 812293393 980350175 159673220 941322912 319812258 983879375 126127971 250881903 407775882 942270516 968656565 993228838 753576505 776955722 970018419 999006014 491443591 858696024 560865019 973547804 619754943 723605669 584082649 756137081 556989684 706499941 81557189 927125141 904767966 972985482 891883007 904095556 836040506 877401261 185786319 854847069 475231109 799679441 872754558 891533534 705946903 904918217 260655554 821397736 82042614 207043114 295454670 340330407 745637442 913275306 481504536 863938485 294496270 397406337 657781529 689330492 480694880 662104276 770031980 779767865 692170917 951925692 807127122 845960745 25155799 295270537 931533523 986458014 531419978 580203186 204722872 617750847 394411396 873930696 991279999 993112987 845028552 854151032 149212749 907801886 906788738 975223076 201383379 683677329 101700476 210374555 168506878 515797295 506492298 713504567 690598852 724055770 405779798 594706929 773444388 928455259 165150193 410453689 795488988 861670605 801880078 995382145 21825130 376598488 250721286 467780192 876030098 947280446 777734649 832647951 821877582 922293575 537320417 955397264 474870983 666959523 667472779 724407146 291277907 871207447 908841663 941342779 967066208 984596980 588743621 644536734 763342690 891458641 190512891 250812307 66402088 644299317 296102506 962340166 241537433 818723658 253986145 646689257 470972470 580530522 277557014 823531114 425040428 513721688 609424345 647234791 213031040 978032369 303294704 765317357 499969282 541400190 150860379 261878847 185705680 459739844 739479295 815818791 532540411 595698673 111771045 887676542 634834183 757915430 533467293 993024345 313230192 718176543 321378012 811533458 766566748 796645184 829155981 840920082 416432718 887353377 875322763 906555712 961658980 994177468 248606547 781344880 648981443 668425945 386622837 803614083 739693907 866343160 445445236 613547716 143450440 475327640 471888258 805824456 902307337 948851457 45039210 527718697 630333135 935704905 537801220 970498544 874839021 970483097 292446018 376095957 272332945 849628087 144527219 282257394 27000099 87487718 783435948 979020824 305900409 647642841 836383104 913267224 863621772 924627076 866159558 992523126 222005664 378745986 277941312 380113871 631172307 896282651 318759163 890572517 978843171 983964364 816209908 903347611 997177482 997650884 104189545 674901779 666502962 749666923 82200888 143771307 983551772 987593012 784772000 956690431 320114955 515449112 929517526 964884642 220082133 830330334 580174107 618326188 30095964 591642553 270905190 828665613 665296320 943508838 132825780 640732174 854494514 904533932 987990686 991544898 773880634 919882435 201961955 501798906 484696152 966301505 607311826 792901989 628866188 917182311 843655252 930639163 741324858 988911655 182333487 584759576 574783831 890781672 181307995 900808557 459157101 668165436 528123444 939456353 602977940 981042696 226681869 936978546 309645625 410519373 912671734 940800916 295651275 508702582 260657797 684884289 382831539 461429885 310486513 714292324 301205550 337484874 701566750 834661540 218732214 277710817 984909276 986340554 674897469 732881683 523218414 572429356 828711870 992343474 496044192 542393803 413385671 815298024 711440208 929023613 605164691 768640356 15202115 780165438 526306685 691658539 861419763 952560169 400484265 463615705 311360672 710404459 832030007 958094129 696364359 856370533 256477639 412387234 119912819 529723709 724207753 901200233 892008853 946656178 995248605 998728348 873345853 951806212 323594027 616923119 517868602 546093530 682270395 943338727 228175425 301060448 33525170 876455063 150942185 448229197 419732950 636079688 97919396 997632145 748117726 758958685 778143754 848416802 107647453 359899411 614937876 748152785 991195451 996770422 903190612 963424475 978796785 997808652 121741201 523625881 931292829 932347397 738445764 988194027 862043184 889597363 626243814 666452141 581310767 965478107 665553989 959212391 411936226 962515269 488665618 938878909 921067290 956340565 317765570 547774792 298165267 856180357 257978164 420381516 543545650 970131584 955541829 988277776 470483799 919195059 903804602 985898924 517781437 755861185 122363739 613659585 289351927 782013315 564576984 984783141 571159934 701855765 973306360 990814347 398937068 698534589 600837986 645348894 40171748 274037691 909899795 954655548 549822969 928455432 941820652 973461203 166936206 191950271 468460463 662041694 58908794 603313859 706611829 916059511 600438902 874188384 534111987 795947808 264128020 522623474 577336947 752822607 206572940 206750388 524683479 548919591 680531730 980505806 489689158 656012863 949956735 955569969 710822924 788171721 630751837 674630078 809489562 850452398 59242067 713654290 381709531 857113183 369328204 658152232 170129028 961395048 69801016 938175494 968180715 972380644 905692357 998437712 863305271 879857865 936627833 950412285 924462887 954225647 524182739 915866936 639639978 893950990 376218468 653738232 776150435 984024226 531363929 943636108 765951875 827692511 269942144 569261114 322824173 512152023 978272489 992686974 922398814 940528774 571065193 858607216 366220093 695579745 500482086 986861645 774208858 957907002 975317609 992725017 732566525 781023375 316386573 824434975 113115187 631860892 225817691 585960142 293274617 838054000 436973412 733570120 486365797 657513309 755112552 950955075 8958883 640654990 114634112 626316145 456405947 786887059 718033155 986525530 165179816 751895956 243937426 505977685 391859033 809774158 551727392 990065466 514615903 902967712 188508742 779113996 1697949 614241780 22624297 763245827 764723567 911192946 759756395 914884888 179402009 184322703 911330267 921553937 654282740 706401894 734937274 807231472 569734519 834683054 191610057 870114169 94289200 982032273 367957253 788713621 7423409 482288838 837018322 922502588 534127072 791914908 889899986 992458895 340759609 505039314 499366410 751951687 8845832 499033323 98401880 373326822 977078508 993634687 826484964 993352773 78749692 947879569 912825485 915573034 938408690 971618733 21833288 500185546 713134653 811008899 150112366 759954673 11197791 102186582 978546595 983975916 281882931 851550670 900447730 974122466 593264046 936874039 177007812 660818886 803977704 862528613 906173326 946871676 310286908 902463341 46061038 913410439 842185911 964827176 733773921 752378147 906738501 924307640 394507596 709734034 3851071 912452661 250855376 985067313 997020960 998814884 828510515 894942630 129419689 409554298 922150428 949402873 732182049 902602230 713403867 972392186 773185663 860176554 353894376 558179884 396958857 765356094 476427354 891196545 9172435 475495652 510320622 564359516 972566251 976802626 178058102 336457908 76837767 579474001 339079469 908812827 740715281 882428760 787046206 875025239 323948982 415247067 719170142 782047570 198607522 741791670 464703099 825737313 383049827 748519731 660582523 979780889 335393085 463159806 877930184 958959247 105479419 430555922 749308025 879891169 983720501 998565899 161719883 187482944 145876506 147239256 781258982 993411371 345777105 834231897 28752992 854280132 325094731 654906591 371182682 421252621 380919588 902927927 335886871 675866008 637931986 875656216 993420246 998718923 136300063 497811080 123219301 138360063 834118002 957380797 506364257 757835407 510211992 512213857 869781550 960025890 620031853 985962614 419582400 798067320 715971004 781602474 545636297 967509674 745396919 914207356 887207621 965130898 740552083 907415150 877005572 918517709 843483463 981852960 445027067 882983589 548051439 935571454 759908344 922311968 264226929 748178747 813795787 865764801 812179974 988957831 296290292 866766049 138043837 700607561 424921257 557956050 423787292 446890101 904238902 995967666 440031884 801997955 856272867 959571764 208115318 718124112 561606039 637069634 728665325 795841984 513255425 761530916 977926379 989451646 92853437 363540334 61219390 749225007 905999232 974806464 192136308 609972889 258583208 986935352 111066992 805928583 619227998 676653769 385597693 386310855 674661839 928055798 240714085 974139025 218750772 616660237 152370841 732674327 835250529 858679309 227501774 648926606 952514798 987034839 358192720 853838588 17810483 459479001 21506795 723652678 401273166 575588407 870956625 959399525 623529073 968466057 862998127 959469421 943277535 943376065 330741939 762118044 912612806 932023982 171236975 830415183 436450530 981961566 547867337 600856954 644581999 663795073 362295843 554033534 380196410 538823669 966522255 993226852 219717247 483155956 396733611 433590290 865453143 877582141 661633903 927863097 729851838 989443120 352166389 468529790 884407795 917117609 944000253 951030221 802392228 883565624 763822091 877158635 183115835 959796785 217927980 617885280 774224781 924006229 770071455 876259797 763829366 835831311 266719247 900488853 829929235 912468673 340784641 343710521 812974800 922251486 632360879 683459394 465760220 484772712 761717608 874107027 85528316 428143200 288694499 648701698 464944541 766113852 57849329 79847184 61640284 146492700 636737084 988609895 163448878 257073709 842508393 864449615 996209508 999337767 632196194 947426824 788300079 804767746 698635631 754261600 632127745 918708935 842803168 887934775 212351037 375090035 12177551 766603306 518699705 736055911 941832126 989795260 340665260 385908965 644867942 880751708 918684760 945007904 895985768 991391672 420908002 703217791 756686050 766845202 783234567 987435395 439435816 932991158 83427426 784194273 84279361 636250142 966890121 978910898 958036169 959624008 345928212 679539290 510223866 660727952 344982727 513942661 84431179 863653337 788549101 916888742 817762185 884583184 231833287 973625780 279137247 939208777 82788241 85773401 712323196 985776185 717942867 794650403 843767273 990900938 30766477 546077147 502182957 604423341 497949003 912503085 946017183 965030707 655001944 795403371 35132403 401483825 845220072 975231714 535227195 751149242 822899369 885144631 455216018 924566813 493147657 549462059 359404024 973865781 576822744 646452488 912441874 954106587 431422689 658319634 752922440 950620245 314923556 643166589 662079359 813789127 361629563 824746450 168143224 357896938 589136373 850221501 29735011 818388973 655477688 882133851 769128527 914154610 314622238 614399864 199106467 499707728 321333367 412486800 943146675 959524475 990716510 991039221 144455906 774682006 495685523 631201755 856773846 898421938 863757429 880936027 118752401 668856193 593798646 716507143 523615283 645250770 118103166 366576947 777139553 862524514 277305937 523291801 163831620 735544892 317556940 472347390 544724376 677070983 516596824 851217200 904112747 908224924 233481636 466050890 206247294 768619912 290109441 759394256 899628344 909652423 830287513 965473549 649877820 876394370 721519831 949114639 489654532 824145456 248190032 844650664 3173146 394991587 239478545 610048630 375398076 801310725 485776877 545252626 126030186 887415008 10874711 889330096 468686541 797929620 206387916 797936493 733978113 824734013 299414356 483332850 486755880 975034985 726765909 732706389 654606987 718109542 870030449 928091525 532135982 585793748 604869168 672307859 485805924 822862767 83131776 127455729 888955641 961497825 331965683 607862372 740609767 772849744 57534735 529218158 140054877 966898642 402615531 800633089 79726579 810793981 777379606 878935119 998346640 999193369 214757590 262896495 473212116 701621206 978590735 982137648 990865522 996122988 339464929 442879821 462896893 740632399 242655065 881374085 577279345 841696080 347447846 937315732 417018456 808383153 822356760 894507978 426382786 815504225 165031478 343198364 862894242 869548095 604942560 723280032 19599396 568178019 643348405 819840815 379707527 620320155 485656546 967173280 640534605 868534910 913737015 984358915 543237403 901791069 46131266 894368513 745546424 863625002 117895822 499648743 481223759 576455418 134516199 840840798 219238864 946798447 915916723 938722589 970142304 996778718 480732224 613105905 836338075 866176411 129621147 526306435 587103952 714683740 172382642 207781226 945968080 979111669 12767733 384405915 911807351 962052310 802609147 980867694 775423532 908915816 110407436 296262410 151421017 315436031 947253003 992402891 666770903 690377678 323093218 799320992 703790061 830139836 141294140 145528697 496659376 723314604 651296031 732625719 166818531 639942443 172447224 572727776 434356786 885535003 686663777 989465470 655771775 943978336 811873482 832505296 153437525 364368501 354137638 529760058 604300731 975649736 637204484 881496319 746106134 839895341 726747188 842170028 925731689 945915220 124916759 587577864 652239636 740148010 185410247 277461640 175612873 897104007 810121444 966874297 540913660 646387433 740883855 868783917 429753361 689686832 559794285 802843781 325698650 767913470 859372082 982518841 499627618 988705745 802562511 866654696 241852082 831852562 421061536 796100520 217803380 509739721 986734731 992381803 960599850 996677225 334825744 899482044 493699160 703774840 350448422 950779329 824873805 983553524 517931819 551483871 289127379 877397542 432013493 948762828 492514497 703257667 20538262 643602910 277622673 927795844 572803451 828978485 547335221 744377402 704312097 903883369 848597499 911663214 307459382 397863937 431354252 953357905 477762560 954728818 129340454 254058207 21673382 105881450 167951923 909821907 607902555 733105414 238656793 702005051 905204614 981831141 696241813 988002556 673916956 985292041 83667044 428526138 965836700 971720337 513988202 909615849 685732457 902673462 69250055 478644293 800174593 944565731 5616350 106063809 101097470 191522273 391333943 674080959 545411913 705707935 889571689 920859857 266815510 761595115 109040727 561280658 643859350 893486603 81391230 995103993 290882247 670251668 75638272 718776614 867470813 869826799 600848758 602069901 288332803 508528056 767758325 843068808 148248403 533872401 24323974 597020902 796236701 970285766 747298947 947022066 74079815 298900214 671921601 874693704 143842588 361973946 857836218 909768088 268434348 990918131 599057964 871723295 102115432 878092445 476966167 662518265 493900737 587790571 491936218 658517752 528557879 532240298 551244733 950676283 109063672 734916846 400695036 642187069 228652996 470999222 569868600 976930785 381146964 645599960 697738588 924401297 988143820 991693884 938412183 957652770 475420741 558612003 888960115 920590771 824934260 853191475 555072783 961770453 200052002 668206514 376477819 971917120 471426409 995232806 93413096 653972221 217850882 556728771 608842529 659581610 884856051 989701432 498029801 516984861 101725546 311753625 908674376 917298078 176146881 633840635 439356911 639405198 260668279 624310875 911139672 972842583 33829448 528049833 860812269 971055928 437475442 800162705 755421310 846831204 983600175 987437241 365752517 739902002 463640601 703768715 539643678 940213124 173106305 924176187 810454473 831782352 812010442 887002342 492166251 698717923 590093618 753557782 823883557 861855811 339933772 440705377 981880530 998342371 748967712 783264546 959822979 973495910 44167742 309709411 69813938 152063164 974662035 994262760 223280461 426000871 101316917 315290361 824497617 886104941 80076953 871469000 931695077 940866059 386472330 445043554 948229419 996756714 44393007 322977708 720590734 850686971 471868560 842002516 101835766 357542359 782846955 922987374 59104112 184720989 202609189 678792136 370979378 892477762 49845998 899417061 255081416 532131939 840045346 927156146 297585863 420740304 157322731 590055735 842374809 868060275 818983166 981050300 552777160 967943112 869824470 927959663 809485050 897467422 412473056 940064036 891273147 927894352 49119343 936133668 359254656 608044389 723328249 798138120 587729821 904212444 37808636 474455360 379226153 724105029 711047708 895082827 151274647 932311667 902632422 917684748 845765508 872421297 878974215 935576040 358040057 819059249 223953508 869493366 422950517 884412932 421683941 965659125 332145701 997298683 993356370 997075045 726509169 994712052 469958648 536157987 405704987 498119444 25905989 638020867 69400710 115495791 615120345 896883114 353690950 632760024 88534629 672789819 518977235 808211121 382758135 448147173 84886414 298105545 286090573 784116201 710389879 713284778 121267677 508054115 390781407 916937893 652594562 876721467 717679139 752494433 198969134 736189553 308455887 630306626 276489280 377286772 621736775 625420272 745777155 966472228 155404220 522164927 182926161 496895258 848994770 855829540 886218014 947590754 960823781 961857588 219000826 850744538 201883769 544641393 300814085 517541033 59480874 541525445 111014775 807582100 675982832 766600794 901948461 942941434 777766178 971075751 349535414 561838605 22577093 984816380 757888508 909004697 555010526 835841863 772245348 797218115 177836578 288731085 400886880 604484448 708862688 958802806 749735645 771762045 111894093 731937548 823579418 928205814 225417941 668656457 657012509 913673047 315091754 901413217 751363352 807647761 606660046 715821804 312955230 629648329 724535101 725835651 331852602 383436721 115893335 293203260 43408662 885570852 276303614 765132641 62542623 297759257 72269988 896492054 59145166 579294779 636882618 814995300 542665327 561054546 939458847 956063207 956726242 984950767 266418871 639569476 304094677 847550451 730489879 782215911 648554405 963330143 59975875 518185467 22936293 975886002 398684968 529091664 724586348 931255742 115469665 845921020 667005172 962158957 555239734 795949374 170172110 291390823 899293701 916757260 556245894 933253672 904563952 950485691 489275709 633864024 187716491 738891635 571713423 654161365 679404176 720666599 54374089 960007570 775063357 891726093 783739022 786738053 146482835 598247842 513049684 929840097 540832068 786313349 3212768 217499106 729906144 772034370 313739399 849710196 606672539 918764732 901525035 906796821 372331116 980657350 719452723 806156593 791906215 963100387 119297275 657602427 743324409 858658264 364788479 841465839 146486979 419694081 424247199 684406093 389492934 549560936 470710205 476583162 248089432 702266197 536823190 970887119 58443260 786518585 117318909 144686475 42239304 790253510 465929338 794863752 201993970 398652414 995667177 997372270 786665389 852478478 13951759 628732275 874273651 940199106 729832965 945124323 986128150 997980157 392891436 841896174 181335754 365039740 855416967 883276333 411829340 646101296 817573064 826911221 524290584 700374378 571546766 812429874 596261332 895690722 278280590 659127493 762871956 768885077 426464337 768172154 622352526 698471603 266151991 445089786 887205004 932385605 820297999 974138812 970557059 972939850 261908199 506895714 549842053 921808403 777036815 994269831 5981878 814405304 206251905 786931654 239766016 527192424 154646145 227816621 849847288 958979108 809045032 948412041 92837491 612839987 943686947 985262823 621098936 928803282 482909929 927602594 290000512 324020051 893008792 990897541 76524986 551702561 555961141 725264933 161320394 323005103 976313471 987670415 116490540 197101703 176739073 546613415 864868628 978597600 491706953 792884741 421689559 908470816 774130892 992560014 177058124 414011634 623110893 789868687 24372606 957128513 985669783 997446735 561969469 907165157 698936417 930377260 528825272 833350164 164224105 915099814 94198400 368390557 403619790 508903980 760202496 765308575 708810203 899083330 625352415 989884082 500562662 915512563 547022668 639453120 932461345 963623811 817611884 984670608 685989119 927570743 316119220 425242863 553800052 871970447 970421387 981140017 125128598 993022558 985388382 988293693 927347763 936664460 118774519 850850486 991932071 992339575 27509646 618174242 486689995 835487665 127083942 764629688 587491650 637586338 126997722 159546735 323401173 369784182 895582203 924287374 275649822 781146671 164171742 978586289 714653747 740996829 543539828 891696723 882748985 882934527 829023531 883468282 490076215 777541164 324854589 707518698 597377149 996954699 451916663 967431092 160385441 585413274 764102709 852207845 957264613 967152188 963240335 968738622 557832978 660891703 829816286 954998723 642938698 997445244 393128636 445040840 117833422 424994184 172710389 848236232 5990082 270850587 30658597 144194645 692744782 921031804 556948591 614778594 307276169 793843779 364658089 970730009 149462822 572920900 607699261 942735464 808703023 957025928 132819587 427683514 946081497 953697745 684157837 922877358 778131971 973824959 238409903 728683518 546808038 799856100 772052648 908730878 736587517 824668447 873000222 909909303 563830223 927701385 457355844 641315268 746867506 967123480 675439107 997289838 816575538 926630925 712657565 836651635 577741505 971286227 467854131 748919870 126636406 771251212 685013981 899234526 818367872 968976253 185107796 333172341 712885872 864319777 14067626 876680410 842606343 990552411 489294712 731593794 614332282 767129785 152876898 581905714 741659452 747796875 400424080 500174566 111428575 553038013 679443553 751614179 549249476 659068087 10234749 590450920 720257388 919707312 625294648 723680377 305176325 997309028 268899320 730924126 652372036 920944408 12557233 897215218 851540533 907001524 525101734 675698286 704047369 789772924 128145969 251008303 738807261 747978937 56377853 159827517 410250776 907756772 152848745 336598709 873552131 966850508 708456595 959909268 839285282 983534388 966171889 981447910 177757998 683324321 236899010 889839548 619907655 794500230 379888660 854402246 432845094 903910798 434594823 935090377 965722502 979110248 219502365 497591686 289991973 592010232 601210952 759479804 298679775 350798525 283539556 726057474 998375500 998605931 315395624 831993077 800510288 863311181 427660251 696472621 630261859 740181741 170217437 942036105 152704824 831654699 750552239 988793210 198108466 995186950 595943585 633295224 571406608 656682556 370161300 750521270 224336478 823917153 477000506 892241308 820117469 976132973 260260614 635260699 390594744 813982266 442326660 754378541 465150202 824599890 940082089 972625192 887128364 999074344 847342453 866452681 409606229 698511429 376396386 781554010 311764505 726790067 667386195 862184080 908727558 991025857 772803087 801068032 558641949 647462890 34562501 84864751 248424018 600575121 526016926 707935352 741293883 777600002 290871822 925221073 610911270 749751434 829911299 939401744 493687334 499948173 879650170 963710946 414134064 990092533 61005230 701482439 560369134 998079813 511908465 737550414 88753153 752100589 72329936 850431402 132981399 514866121 358845925 513741353 835737579 911478230 81988620 526782186 137932115 185578786 414110669 528448335 512408133 927327196 494003007 913529405 517682319 945507859 401985329 694660815 491256722 701938867 364506737 522561618 590992247 912306130 865097640 957430917 550855845 835832308 566108424 738527038 246356987 789215422 440842184 605148355 924664967 935518346 972943087 989655739 30479850 200662217 250000798 906797222 393150205 922619033 994996524 996021271 949651861 951098709 927457578 970144177 772775091 846405735 902132203 907642993 592110595 721736800 83969786 427003358 580664574 887035120 794509065 897725992 363227135 874579535 590121643 643104602 928803408 934846383 137588603 233899223 841379840 995115418 922250448 963944276 651633966 857982279 131916354 799987119 620729115 813047305 122929796 585990100 770969584 905099670 994483297 996873894 396554966 882950858 281395574 649084605 257278680 544422277 386231530 825670362 132394507 160931705 343630301 356587706 243381000 545844268 685399521 824583653 246671110 916792262 995148834 997258501 49658849 288993757 840043558 882847934 945405678 996032688 585150687 615514851 139520022 461790997 915142309 915846635 322958607 681431090 249911571 996539988 844801321 912884022 708957453 729772791 108230540 631166557 75562790 759114924 295158338 797783333 546423669 653062222 983256097 989183270 859285317 969759476 731587341 844054560 811039240 813078240 867686257 932257060 139184357 336536798 570793996 737588924 56666521 403232168 304164682 405611915 883269371 917950860 991342860 991663236 893981210 900140094 864068618 905806452 668814993 685364136 200093539 622915285 729286608 976410988 56518358 397939092 756162086 909174954 8209609 652254676 797883672 893018879 246173516 764803571 43264267 924461291 590854019 900632026 894025716 962927339 965762042 979840849 595673963 687849832 124944574 519699195 442186810 940218230 727189571 864002605 276853306 496016603 70824649 660572782 662715859 927938176 488632311 517293823 808563684 836856426 773728658 877458065 867804309 880999583 96049754 740822190 474673710 928364741 103117309 857712227 73129504 505941369 205933725 887515657 321782050 856974349 302257481 369245796 578025444 726628757 263259481 560836255 431198597 459223257 8515308 997088814 492084046 702609070 97073119 850737654 453458032 528053124 395418297 803002317 303726222 364068073 33451917 614000376 571130418 753640752 306296531 807952926 264159890 916099005 485683555 908411963 432761695 934262453 479826804 881097796 744485610 892758835 172311634 547540843 336276632 585116365 851810804 938337774 117293232 642296088 160826976 448601614 124855699 221185624 635020494 902851801 42672215 815714398 66509235 294071144 175318575 794620395 256478151 372762599 90643282 905793175 248867757 985274127 93437759 524449481 38381153 515908358 390770938 671850127 163514542 613404355 270435213 911130673 255348930 330835099 449630786 818483173 798406154 979156079 253011685 880118905 597628918 691665638 624521426 955590451 932776801 980701283 324110611 494002900 62983625 746041498 859779490 894288298 215210049 803097134 804387979 881989292 751722503 797387203 723583067 961694203 414861600 939337323 423620661 664065762 61923082 303230999 441705470 813702036 158748010 494265832 866312015 989544236 630783878 738760947 557088299 635378627 51931711 97547598 798803330 991926753 894358857 897484888 507676041 602849473 747149059 814343788 103069410 211240877 163899396 921623878 966137246 972680099 403858872 904899412 630086515 633725666 694203454 898718106 51464473 267346285 45875273 630893277 478588823 733158031 639205070 765114964 988553970 997510375 28533057 463728044 942723196 946448987 655333408 853767189 716808485 851867550 173008117 447601779 28947538 289637914 50185470 888968617 706944651 917316113 624031022 716423243 808779107 878310696 156868747 250505735 111328013 179871724 724822494 794315400 905196603 906214331 391584291 581268776 161517085 664303513 464995371 944536143 758672838 873543776 939308028 990645062 596817703 969413304 419743684 660923571 968829430 980461266 355771288 821394296 484270086 873567621 627263090 810330614 161402979 246068947 953606953 991254131 561875495 842932340 466993371 704940144 32508793 405700950 412180894 799171177 918609672 928568184 501974167 527470956 872718226 981434237 162743461 859095899 314661637 462630412 960177012 993147091 34186249 324325792 116258187 900210811 54937235 367949678 826481468 916735690 233885561 870317938 943677693 983686880 931849761 993595500 486437534 905163125 605268882 856223350 551967098 908581749 886073349 896409844 800577379 961004307 58139119 494178811 604198140 627718310 751537361 787414713 353860715 509401928 520627059 868449125 120382024 388493241 754766560 800254401 868383231 888887809 802218199 883312071 753212145 818403272 215380058 466620837 150972945 230135603 111134708 785828250 953878691 995171112 513842136 546225672 227420147 561939046 640595914 957554839 908508897 965391273 238216643 403070692 260833516 779802643 765563791 949644180 598274814 628381008 120375925 715363088 924844707 975800074 224953059 599002287 528657615 623876866 515725043 780806050 972696964 993701513 814062180 904314122 923934004 955134365 405106721 450572944 571603775 783288803 361151492 440222278 742132066 745147467 189655285 434960683 838091517 845877594 292930234 579922580 500841952 661554299 887334729 997482423 487781122 745377537 861147518 947490331 612224848 923312747 402806723 992399672 411382494 452385574 968723003 991702156 202455931 317453291 326262760 472438549 391830272 921251469 576076093 672572682 43272407 129830549 582814809 855030015 774290497 879058417 359428877 815831396 619664481 676897840 27531529 928775756 847902303 973760987 725589113 841972014 558305411 933247405 340880022 953418519 212769680 604929527 490940757 738848283 151948378 554872398 434378281 687783541 388799923 427483620 822334338 840016919 200263772 282675030 932757636 968501702 622014155 645665271 573707748 659890277 848329918 853046472 893263922 998758881 961917694 966287094 29050254 210382083 91046169 919261120 428714998 828793637 7609207 629115035 459292979 885804107 244946336 398728964 58607096 672118224 364998291 810820397 244953059 719887855 979902295 986464738 513240615 732711686 354612308 959705822 212424810 657281860 333070803 461579908 262035073 749779995 939010538 971846918 807213003 817920887 228948010 729650435 871971810 962713604 718480010 894376013 217777231 832240419 614400749 669983472 231020576 964550173 825950928 937312283 983577317 993176652 424145651 756926733 160452644 327385046 76814427 957429578 735995078 952270001 308078893 568039697 251840681 898095010 814417342 952459558 446534548 464058823 41415352 529226557 318841475 809439447 526697675 656240127 916220302 939483272 815983532 932599361 311363442 313413057 754588648 808896634 235486749 707233597 677882425 970867558 262221808 368639526 283226416 728270802 628260120 656508600 644643571 750408331 459155163 949101054 936915277 981401521 575095916 785396439 862696238 870795155 824671423 926994690 87650651 982805191 720564093 953373384 253759476 905404399 688499177 840730166 95426719 219497429 886881159 942809287 552652656 878330566 670213174 807698515 62165255 715088064 127731431 597284656 711046314 774107161 813928262 827681761 230806472 271373936 414430990 962622300 246548649 458399876 700284459 984121662 414542825 921269675 510985805 602452562 403549377 693565835 436714675 863040566 524357373 717704468 543572208 902465165 260956480 486588229 941165584 977595630 397746056 473356587 67439236 87023340 241139975 872719167 992002090 997961663 604156458 799733385 41811076 219488147 284627989 438931676 896876804 937905826 393572754 622975114 116849125 260186280 221385408 382246632 341268247 643155899 366115033 721164196 189114846 420937069 582132180 791070965 504367970 881740489 960268345 976512390 501721447 615405325 305970177 455763689 818936421 955212631 772999582 879700441 536201636 848035394 889461098 928451131 66715960 940057869 162875142 838693949 494769769 774049805 966748102 976819049 759373515 880294569 90785471 343604173 828027687 836131642 349154479 893049425 106950255 383039074 999244501 999268299 897031009 950846872 466641677 860833584 604119412 998382064 843004235 847106655 766628880 978986918 54333421 521865096 888710222 906943399 748642584 799256797 310707 605709583 160163066 847850161 393999319 598285273 216106704 477227597 548420211 851336584 603644479 609385612 875328988 922871618 436245216 457216641 201937875 602622348 8095997 540091229 242645034 798990848 282690712 971467106 515549855 629432544 211912432 293275180 24166219 773293071 329506498 726252813 690730751 769864112 544141667 551148831 831084110 871106920 249173801 914175653 69290930 380522150 502503361 657355697 823771046 834271405 478348764 898858616 554798028 679201466 99339942 700951378 462268620 693313809 471914640 585338511 96872828 925239214 159400227 381260740 539992778 976665836 626689850 776249912 907219464 954533750 715811835 923716408 239098436 337544073 172927966 750692527 919339634 948664303 146333354 897596606 650903859 695692188 800027550 938108515 275779010 317601734 51716497 466836961 322592628 801566318 135054694 195875665 857414230 988523528 420502287 943673455 116425951 168529969 23536970 162279477 931832592 948435761 199220782 987860497 285112382 728614838 87901539 116788492 237265490 798691347 527202836 671821458 486936722 690237877 582817513 981071845 109422639 891355149 908350143 991084327 684613674 822537934 334618586 780727517 301336654 637962675 671540556 813155152 900128984 916246854 903617835 997020483 351597214 602784513 115542413 160887126 749263621 811005649 710017130 742734233 368863102 501062946 974300680 996537107 954365295 987434478 290880700 746188790 465331800 493726521 508297201 512494494 325564597 711411591 374727810 549624847 663198754 747981604 471251622 562817474 749881090 979466849 48372462 168758420 648561500 718277775 663025081 860253226 100306171 408130725 796669194 951335711 284715295 352841654 647143153 788144892 653190534 919440912 564498601 615224154 634187753 998161546 711146235 932105884 120649281 650988969 337783371 764364891 497766339 656782740 451555893 890291534 163403179 414282108 987286666 990768196 731779176 830090142 998302716 998681184 66581372 145557524 506221106 619710803 223485116 669853373 428085298 877519470 135684724 596815421 862264050 887693960 426396489 717902516 433608318 792483140 621932902 622181162 548461632 998458013 577251756 624551990 262077174 578672473 293101249 940865709 565257797 698148345 876028034 970561801 855527320 920814659 109487451 220525935 588463869 949474261 470536157 606420368 518218066 623338659 705672945 807088811 837846499 873025561 938321211 997797587 737610631 893434860 687484864 906921351 509261819 853892377 386307640 410721819 693491302 830710888 366867250 578368991 759188866 853552279 325977218 391968536 176382879 560195952 924908364 955046392 233156000 507627448 777115613 949454086 495965700 764933452 390265975 972459945 664473122 664612088 961455849 995073425 543289711 784724759 332775481 399851751 52825764 201214468 764691270 934736266 240765614 748111955 521495263 980313167 539411107 822605469 764817283 880924017 363612578 880854646 813899301 987601513 228532268 603494938 292733690 739225680 730923482 853799724 784734537 994807310 779081588 946210092 411719256 914634613 43173423 94212306 247565586 708696250 709610705 965060773 72335298 894519426 651732002 915349767 141939187 909216750 503882021 938415012 934305555 942189486 429318089 686490671 215295754 606076146 547557595 767451193 814223542 936639212 844288632 857734655 417930474 845546065 462827914 709343524 37458470 116110319 409491621 447110611 116473574 925273325 771623764 935806833 35442902 736804318 192091100 767830264 933137732 963808551 656154930 725854588 32557805 879678599 562444352 950569596 62511574 501963097 915777222 984032225 874681666 980841129 596353617 856014823 991725912 994879884 531608800 732095077 354235517 654735997 876210668 997467417 509488517 847177943 254887350 349217760 60269943 190998168 522749094 806387266 611435439 616952033 552702243 736350446 14084908 791338011 35753049 52886290 489826024 497952567 290286634 308869674 733074877 759343402 746454344 989243286 463526530 880441789 703067838 983430011 350555204 918629186 725763928 922818561 882778219 977767711 218351785 313083717 251090611 285155263 714514827 836479324 776850373 907205141 50457876 620548395 592726851 835202408 306848283 568342781 674864940 861676391 643472481 918790159 746771415 972859804 748345809 819888269 666903570 734236820 764433483 778025110 977220756 984010894 338544684 895807567 309591530 452616909 875824677 949559584 627528102 896356248 440160506 555092245 755812990 927823929 795220770 826664788 826193787 878914067 589334568 859764178 598255729 752665606 434248041 817696341 844907047 919483909 972617631 983674842 520969564 800954960 116025910 663624816 103553825 821682678 231311868 879784048 302017655 750992045 216028544 646032950 100333087 890514656 648220169 855401985 894426494 977560567 973087640 986997917 791667138 871825934 612396521 721994073 409259838 934846596 459351537 979986662 871223974 920083413 638236041 727227545 310450257 848857469 616813666 722071330 242596832 267995892 935667006 985692662 205185728 549852214 30915198 780164603 274532312 846983636 642003254 792283095 190380624 307915629 745283008 786254183 309242899 717634416 105822759 773542344 241086311 290864136 766052432 919854276 239543500 522773637 115359578 322890915 578578972 850416475 393343749 422877480 522547519 656861995 200655820 638093475 276447827 427322143 507692336 565517823 494196866 877949004 943865102 989875146 746476775 874957786 529386325 914931378 554879238 559912885 64617779 438922709 610400848 978278696 62047934 759970336 925693956 987103181 676944006 897952269 607528747 889424270 506552759 737343144 546643165 619651381 142780047 260401490 339157737 926495727 811298697 964711773 283826946 853407331 977127803 980673576 799872857 817992388 350268134 379882147 258519820 804170309 156760755 471587776 683508451 772760597 649236750 746833188 208993305 958001188 774616346 932221771 553756375 644407995 648720225 865398849 211150681 466458908 73903501 718928150 621559997 922930044 922532414 931237526 722291468 918523019 260094069 365734974 463533174 729878167 958779505 985438205 51639846 644965289 68584789 274578756 244483405 515418171 238697201 270060761 883320709 940691502 990897063 997524109 406083613 819141613 877298906 985738044 33178836 161437880 523924555 709887555 815806059 965682918 81033259 160763911 30403205 971250813 776417985 868511748 249175061 974594145 134761489 617046483 16424274 627323357 748933636 757923265 76558735 832886510 437421061 478426117 158012921 632237740 6924786 62293003 857080871 897882408 387457151 858829667 105184116 548009825 139971160 577446528 277607455 760446891 316749959 346038865 967685592 991579130 588005078 618541384 698131013 713522978 770950653 939416653 240745350 795185842 650630858 762845243 460787888 963130181 404025751 565461254 35308927 893901702 140386443 200306272 951786534 991224291 725689219 972363127 424665900 601800084 130286886 855667647 445124093 517597266 657025624 679529933 501786127 987305113 27818783 890321502 546296112 757795135 516171364 591284705 182281059 781115971 290620113 302196847 419928028 631712856 370716384 858337752 715367308 838864713 23388511 598703133 779585962 814071292 421021625 470528147 885192877 970386916 326101939 537927677 994657276 996813345 801438807 931634318 977461748 988052052 280309392 516000183 840335955 928997928 857244347 978363411 762750673 881092674 260830652 706303028 235414454 975718025 564228604 823960528 180972685 378747215 901103699 916578028 682597914 705578609 814622913 929398129 783411188 984104727 424813153 681021313 128996607 206296232 757634311 906458486 626658427 810762024 324383182 508404908 803609241 909897002 592221002 672472729 791482202 971722325 170188983 545454563 816255986 966432746 435775031 609286552 963541959 996225100 773394984 836584712 401126101 896577120 643441585 823346937 480767211 975093045 491376305 563364505 862587910 890249382 325638889 940172926 32008553 84180567 292693053 490992362 496945113 950964427 557858274 830448005 863983283 935714255 882989018 973262177 690912757 962959187 595667020 986698987 329569497 846057945 747465578 777401965 317489886 607334241 803262458 968269219 142417198 720334930 147578491 229873583 602503351 609063073 640528568 704350025 58432084 818193185 906156409 996441649 667285317 922654655 711985408 825375805 590417783 823647962 657369356 782103184 717969381 826676951 726347796 989192644 619033537 637516573 270441520 502231705 474062542 871011363 347981654 868985896 513458434 708129780 513701379 856427720 644446001 708762379 944792704 959812135 14875272 214216203 533048875 695654008 32712535 977299837 72019491 157288435 193782898 594463189 380827797 581912998 506480465 842806677 670231079 710839193 892688257 924759309 579374843 618232791 539280753 881020218 530882867 841225510 336809474 672752212 390112183 697264424 911756443 930418125 869517267 917622856 434355259 438966254 827308529 978185552 699833229 932817068 285146946 376256694 958940993 962824305 395538541 460033760 99724073 361753521 39107455 867110326 504287544 553367664 83780535 404836294 155720125 844860476 881600627 949416725 990123333 997522953 44159244 378872210 188624393 997587601 746098981 971401246 984460095 994073279 602122436 982663858 791789405 982391182 505601062 888243973 200893550 868776164 552243014 843898720 18542649 863267090 754223614 786229960 134546103 190377738 38583835 557514386 815599535 825560092 105405819 929006763 659936065 722073065 942790760 943137970 140623828 258065919 226477288 558184442 362314965 479572929 82465032 275868684 555846023 696442937 364945271 937864310 906011066 920920861 769163934 969349031 331967678 982862269 120341260 419693231 619099044 980002169 77925150 204184017 977054696 987183578 926488942 950817774 708823840 807819152 115887384 334594342 592093750 903777583 639922680 955612065 826262539 933934656 691858240 840225946 826436071 958669544 156028227 737120660 117215892 490237788 50888624 790484232 318306812 881846651 580505828 953218309 26325127 87205736 746271316 950244343 809646695 909910660 848851463 876074791 718292091 938434081 418411580 757245915 642484805 854257481 94673315 144435185 655189083 801966529 689848906 760718797 589625693 777895146 767042028 790917880 525076040 724195047 529418428 556890384 913861856 951628617 805635752 991451102 594207282 825800833 526049889 615698813 118540808 782284622 84297177 162755256 130888932 989438269 265615507 647289157 586887337 857188534 762013833 894583525 379024135 865513118 168751071 612513417 484565610 741002626 399249239 868888838 568855458 834562139 17256354 893265891 112365848 355993371 758299207 919659224 443229596 981904643 334472570 559867574 164113303 482030412 685804437 698581213 702741752 792671354 336205336 614500506 954002578 996854230 703963572 987068010 613064511 905166812 112813752 113320523 106285127 244040749 621736725 985036654 321301963 354238342 612376161 719549173 301550323 808902877 150434278 371993649 52884876 950226087 356857132 876550235 361049080 970234750 627846776 957680082 190567390 734151040 195773247 536760409 199699039 823458859 379341263 777483988 727201285 992925644 283240514 784680921 815563487 961429291 136050415 259152215 190665603 862890097 714111913 815168143 980434201 996880292 455360746 749261548 971505566 987451200 682736872 960000859 172775373 440303459 448075358 524198055 477598635 960643770 407257912 612642611 585783249 648356188 645302806 788655275 605416781 652470719 996623264 999133801 149429926 707831144 258249877 908573689 904636564 962441752 831155662 966163679 108846908 986886962 277861466 912388544 668863961 856470851 240143254 652564256 47860008 658722191 354318189 738049252 293104824 745677770 710153844 957307643 85496667 361723100 713349742 894186394 614155240 700176546 850445183 912708298 928919705 951031550 44009334 683614225 47829835 860219273 984113062 990522394 99045423 230465021 286991642 434291979 978637410 990042198 869241916 902038813 492608095 702403022 953673598 991933395 444933899 927808602 484511956 763688259 141660327 892003744 378956040 486796410 576740900 594432819 465543523 798054516 214875875 349980719 473992255 632240184 645727604 844298734 516797844 607269417 49383613 710725202 823733021 980928162 667958677 994743965 166898630 202883385 281553310 595978161 697919681 804109664 308379575 478017150 846911667 848176021 935089526 954832722 465456700 605685846 928425121 929003825 832449004 887023994 256091660 512487769 34054540 113019221 493514657 904143599 324650324 858430385 918201515 939608445 488348276 521131408 778994338 877049715 661660605 666751742 810543337 935251882 237370747 500407167 445693405 955106425 294724089 970115548 452325218 959895765 315219620 652609134 211675501 987396997 83684361 607562032 406539782 701833546 307440795 700469850 637945604 672516427 632322115 896062478 269695754 397570141 874084403 957324058 411515680 883876280 228838525 473946846 536585765 879303733 827686594 830224391 672246481 914485415 440714970 826821341 455920753 813837362 433130998 965830294 801035155 883831054 213187830 928610076 997123381 997249094 230077732 745933963 983646899 998114588 214773942 810664962 219095024 714758473 303559693 837431932 721788182 937485644 108779819 158172632 891013302 945563043 995333664 998699544 255909886 914389155 449753099 533301317 350639227 379656965 970492566 996701470 104968035 341936592 170310359 828943908 40426263 776371330 738644294 944368340 8086144 408399089 552676089 582676311 703533723 919597617 197592999 251035934 625875457 763563950 678119833 717321264 212543206 780938052 896592044 930540645 521807179 616489854 828458726 987669534 619291819 633431219 259388253 517854528 66875112 488416864 263612106 984567339 582990587 830388278 65849767 452592084 438411050 855443705 420184240 915569100 114839110 471227467 189745275 274154014 580055895 587084562 430695029 857967941 900174308 930843722 420083865 607686463 96353222 949074979 838426829 870675732 911199011 913846478 789951578 969316666 3825508 123293003 172999686 886885803 391184448 658341100 831085018 979055783 288271824 590059411 882572222 883434906 174135328 691184486 790348218 873037610 293348738 982182135 391354684 802662306 426901878 832606884 405844449 663170062 609937322 962803433 264849548 312805805 959455895 977802971 153753812 982617185 133315024 489714384 359189449 829936123 980863763 994236244 222580425 318881404 80714509 589604630 394567225 853167566 21468780 279085071 622145325 733147822 556137961 908759707 412949875 553324238 827090056 982540481 867453095 969182210 84626215 944522044 632699388 794455668 489897930 531483240 364758785 371333595 698256437 980021677 821094969 925298426 684825222 793204012 619073552 637283549 537455970 671965094 27341309 481426675 154460043 796482468 391276509 799816498 31312716 856279877 950948280 963396243 327477451 367302627 175846518 917936652 688389413 799469840 252226493 722812573 83899904 789514160 895285717 987312953 981925788 998462642 308418450 452425907 700527361 824865975 921001907 938853840 302613477 728139327 179298984 655496136 83313000 902333011 862392070 945405207 765148158 976482508 514501350 866607958 3918863 526669113 458533686 685793761 159931462 821032315 380087828 952703320 682762682 685611012 99029103 780733345 928507024 966301784 136904668 943959076 147307263 696905371 702099697 844226576 402012662 966748576 396928388 501281268 900571504 991261267 520302969 540878254 97678493 583406287 872863519 957696123 357101756 539596451 299428192 619261087 210243306 964996501 964195392 968823629 678757399 683391759 32326043 465935604 654745030 663228099 784217661 948810977 686956296 956581287 466103113 749764648 14702187 824980882 266894718 956862442 911125117 936596950 350976614 932499195 886745359 951737105 608274106 694842593 143371056 191846492 493249459 563719001 359591578 997062581 321488372 981842329 490241997 690473495 422524748 876318375 716266906 871723963 778288333 951970989 680763699 908993831 971470525 978167819 268836710 841841962 1992893 66908464 495861452 883177271 384143228 744276579 894062623 941138184 704250720 882037605 730794238 906743427 211970513 956702311 648241189 660712478 765947239 966096816 442383884 719438250 367772942 930840222 581690811 740743527 815977200 826401360 371504395 709022709 151475528 968674241 355998649 396688298 796036703 997339697 3843440 94533619 694927918 756256131 192543327 481563491 564066309 942290074 266954085 923417521 728634203 773540582 800114448 907648352 162369339 939565220 780631821 910079776 374493574 831233601 860816735 995247221 686044544 916426064 582068366 790952538 413876006 619387420 873830429 991582243 553614341 704736164 79200595 247141646 446977886 758140848 325261083 991379806 396445453 556048005 869977084 886704587 147760910 274479969 31079915 410492600 517831917 891666068 362277545 959865554 743833093 914221986 158148623 697268531 889975276 894591900 730564277 961550948 827305433 849131695 330308259 676620013 796522396 799302444 50280625 787683701 400904330 838915379 159790763 293811021 542029870 851144689 416157174 692307259 477713877 633284666 322043874 873646461 790669834 883433368 764370628 811890023 664469034 865765531 290918066 917988825 9934071 546707094 975256229 988024772 75615633 188898446 240918696 611008799 157931814 841619284 525659523 911029610 736713124 943751254 799763231 818061810 731226025 983872336 657449295 876824146 827139052 964639651 870136685 912120639 456256619 639228901 329577136 793128094 909057780 994130339 141890581 965859368 383916593 573874350 683254436 740058846 49199787 200370181 142312118 331893891 448183932 825537383 280102237 353003005 477897544 872854528 819991920 969423630 180949548 183534886 343950746 613914179 446864137 477071160 542641359 728765944 404502681 866984898 582749178 747628774 927353525 937859569 250394609 854155983 182148080 371934801 620105555 693602140 951376723 961734051 305595784 362096930 148455892 580238385 206443599 664792904 893129367 966723295 558001985 578026174 502953797 779052373 167891584 937085329 624139568 965327170 28693247 506063417 300329604 877212094 531787537 697228313 846431185 934368326 756062118 945566002 548102958 823389264 695725076 703126275 949194123 955219137 551625320 939246527 499090249 865933772 911963664 974706762 620960326 771087635 127735751 151982805 948517236 999268998 69422001 240131786 342566111 981973370 232767944 949437707 82252551 715780373 555876969 991717446 606480145 826712436 466555586 710551136 34894164 197029172 523578662 830407630 251637802 446950182 104245092 117567399 911439091 935601900 517746375 810808171 951987366 997363485 594679475 709449961 482663653 743544883 246457474 938511540 120218509 331854144 721929852 736411277 481922085 713643913 712439385 847201163 736210407 828600411 431919101 755668758 177748710 804847822 868634336 888146804 4124328 994942068 467005992 794444942 86652064 988285450 793903280 920122461 99249461 208880297 537963970 674569340 571754873 944757399 165039866 746457600 21686958 535947748 588510992 978042942 292895950 994530256 285437952 689134126 145726321 401174837 90734860 611319285 906404215 975825958 744687563 755510622 339298792 820030789 979306289 996611364 510581507 814479318 61607613 794087688 145707458 475608405 248026369 496960145 783683071 939348377 197663096 206977851 22512093 91145341 360429592 492209548 800797569 931480497 954106533 996860668 624993726 826074875 449780584 758600016 110863913 884140134 123969231 263793273 669786473 710317386 521537520 921622978 700002556 911357521 504879711 746625079 391417529 807075483 732066897 736020705 874892953 890163798 442690322 520460332 710710921 773958868 752556474 791867335 48987457 739101516 824490108 860411927 905038850 961303890 58714192 783649765 416741373 906390737 164223777 210431264 202035818 675732134 704905994 941470520 274450316 745723536 203898247 227100535 76366941 670278996 333764123 565831930 344755961 364154728 921709902 931535699 963675939 992773572 994702403 997324377 401927113 463394240 245785014 658828788 935293300 991705750 896821004 908829866 975462631 992721720 410521623 856128728 755209067 983238982 970948282 984189545 518896815 551413762 287996380 449872479 532458762 763039206 547663633 938897879 864537624 978165686 355017675 415102482 302635713 536487305 444973164 551936497 710435622 816268967 951148640 993760924 505080410 731099627 833836961 888764256 726148852 802008537 559159506 725453715 906749929 996320361 742561884 971862602 42302274 694012939 402340371 886718994 292037070 719350010 708456814 935624749 621354938 872438213 528637796 591379396 905718304 982497685 950905976 977019116 772647834 942530429 303170296 404878154 26537473 287939346 784652217 869046837 661118961 917665534 603244064 897804113 937427142 945066659 998101917 999067544 722687411 795079631 726276964 754268933 292276305 900758056 960777788 986354098 493121114 676659747 207021146 861853461 308969996 506338082 453301600 737813840 344229612 864994054 402717981 666781386 714953249 799930656 820514593 890075658 477357837 658218251 871669969 905287278 582364499 658969149 938812974 967292159 544220977 620467780 732714236 868182342 251169840 330596174 725672751 932219209 196761545 383437119 404500122 435459411 176318079 956512843 607745609 858465266 55707660 65883240 504548070 715073465 448645985 840541166 395838169 850880513 58960772 481306713 700129483 719456398 514397358 843745840 669342446 974940724 360840275 556319732 396272756 561418940 328301778 442499531 9219447 285348210 389510617 636162048 60949839 478077569 778347782 788135762 675137238 749733860 525992286 808011349 316560386 877866034 197822614 606919444 125204284 495395012 616277279 656199524 822357232 857031475 849839040 965768726 762880091 839224884 626234805 778009891 571256172 834138860 184482076 984697224 372809738 436688644 38456011 998484534 15721573 371134356 843113378 876857033 214305503 915204216 606904108 886183693 248993993 758020004 125230128 274212265 176696724 288861318 373792661 476656327 290708371 772589763 277778940 933344642 473859920 685296809 922862702 932174128 36927621 655011402 264397769 278808715 612678493 982292477 809940603 923027876 199186536 412604038 738446781 803086780 847561542 893405076 520813016 755082073 272515690 340815065 644614206 884635512 19210709 840751068 605468632 652579006 460843314 624593139 146147207 611605393 975553140 985851131 441733489 755905441 79494331 248335623 826642886 857026513 493918368 796710233 80554648 944946478 940997661 978378166 637374472 991760898 840433969 894116861 93276394 273982692 285007094 812809142 704162833 930223682 737615357 925103832 513548758 783363845 308707961 355656756 762417612 975115109 204332135 663477506 568157247 960408791 251991378 857943913 645100244 901752707 740564893 949532972 663583702 912068286 510711851 767715104 735321763 980391198 540331123 951864129 154714486 451284322 5950964 85170553 88715778 499622329 97108704 137309439 928954185 995531671 236356859 530699876 522736618 816545310 387006593 466872791 795060731 808787561 546610485 987159480 737947613 770401149 334368316 533835869 489291920 769977904 392064740 441952238 238259758 332484773 580199240 629731464 814643467 901315390 619179207 686076536 665168854 697598157 324666316 462714181 941634948 960894642 106710113 357826343 706531675 926386266 746200712 757192393 541357663 598572269 444536809 503540077 231250353 332784496 919056697 950031472 799685442 987201764 898529953 987724655 494293600 916646240 862157907 944700090 660549617 901804531 415299283 989455810 892367102 926665031 920947851 932431096 484362954 592001561 60318077 385907102 528692032 700550179 267953697 431365816 968511241 976556776 993167563 995225912 83904994 825580313 148205197 247332614 527113966 572888245 784094640 825613800 397752223 920555969 25851808 780809022 63467314 778841593 31768503 114643038 772612213 851409731 956464904 963680082 521048702 982742796 855018538 923967867 846018043 847753016 38727755 727644995 392256869 737438013 992521021 995559701 176497240 347502237 831034176 976651214 975027024 987699594 487880212 512682694 236732860 583752335 600632736 881503979 954708358 960005763 730676503 969554732 496723125 832398456 139876504 774768064 488389184 972128924 723305395 965475977 752912264 991014153 56567894 930929851 172094149 735193140 661665163 903835698 457426473 466097007 787084086 866062049 266570550 597249374 834755041 889478613 486417560 848577300 871892099 922416349 470552176 523480399 20651148 200881071 701492543 738386836 263198996 913145204 30024901 302384316 203906195 492387161 135415236 313629981 988616176 993904337 503100048 611480051 498396191 786699019 118629760 947304001 800816286 830635542 87608598 135474181 448515024 791869051 460094032 692357717 754576241 800787947 296798354 726827889 949222828 978007833 355599692 522607784 606744348 916233432 912437706 930633585 299114238 815273898 765197456 975086079 515247739 841050561 329260253 700453963 103778703 779042473 846479330 860110228 53867075 703965990 110705635 504584023 10907106 116306807 453451824 809787841 771880009 925484388 537437429 819323231 918471830 965304615 297063549 835412676 790384656 949376534 53528979 291823857 581763868 598671424 500157964 563982181 539893146 975277667 194972166 259753489 195910794 942812432 624400681 938525433 71640638 577400230 421314961 951424229 896961569 955675916 934877269 945166275 809257139 935198290 315231196 714523322 738795538 998615135 713787254 880828211 961359186 981587843 465304905 970737665 48363133 299104203 910101070 990956382 623571981 879484662 697085070 991909788 255751982 366408771 627278803 931659869 258080617 737994710 531082663 952156966 155363911 577161075 89603295 726901558 304626600 672171285 650939140 737478498 34944736 486422181 543709196 670359301 739154381 932678163 932646830 988821218 479423191 762658267 870401710 922807439 779000119 904534348 868498397 874208319 615853312 794738303 142260305 895925628 165826530 970116163 57721208 153659325 325688085 439366421 204768861 434650858 996455810 997275933 936927654 943536883 583830049 917547032 341185547 836182132 781900562 986985814 513666322 723665626 277312234 830471179 593681395 931665335 551461825 789711309 325521946 352655064 78873313 814810879 721485518 827752497 771432406 899996406 185702934 935293327 734298062 918605291 154833695 552442376 455898044 736760591 969856309 989438125 443910074 697052022 138772953 811831692 532063975 715548741 414599571 553593660 358780033 709729545 536845592 923424158 358356207 955867597 948506668 993498424 654998368 858590463 954434079 960736546 21129400 304650564 514701491 749024983 434159880 987631092 504739807 623678946 223913153 269898779 567438367 936612707 682643994 898806152 773929031 800095862 184863907 772066577 503453785 611045892 69004140 996040904 788057840 986978297 319033927 372653987 800145688 843565216 63099275 505856013 496034106 816539562 50365300 296442742 375251328 577183254 588786632 996864416 314706165 469850168 935610378 961913483 825154460 860017700 439696962 628020712 504462757 807230311 722075341 778161755 442604495 830984741 365865357 751776242 581402623 761224557 696851001 810134448 148728365 982648358 310881761 612990073 365232063 714330790 918924602 987721918 401801421 791214826 511949003 637741089 916981371 943856588 779551258 927137123 549168852 669722715 59544256 878913594 500333089 990619136 446081490 526707406 461097558 653260121 601516984 903727912 899070591 950884248 234392693 653521915 897872623 899848351 228717930 764807636 179339588 511258302 163693191 442577367 998948292 998991687 92923289 934130984 877337817 920499673 448368054 953678753 487680977 986644678 979622233 993630548 853277920 939825613 681871381 828499580 758612207 908041030 367703427 934193493 679331743 872657524 725389848 813586870 630312494 673001154 810267501 935365710 217421655 407404933 208664959 992909416 394205060 987467343 670327353 700710908 58957243 843002694 359222905 892934914 631219942 885281088 177047481 437536273 646014297 703260296 701450577 961790027 563650620 962447765 992450176 998238150 490954910 986309815 409251071 688829976 557510737 886360243 208505211 391566138 983878879 997051750 453510955 992911389 964497464 972002631 216294284 976676022 200500940 246274781 83162862 853216895 448943641 878738267 894278220 965854835 262656200 436752345 651157010 676168798 614303471 771162162 867325050 913848116 435180706 617462164 364634134 917673329 38926041 919815576 66266872 839951099 638365103 716858855 352122389 687143354 83214714 747071001 941304253 947960460 770709632 869544449 999138910 999169735 522485246 724321928 448300811 545072779 558248007 628866959 301352009 531134622 78526744 163314353 333263614 845726212 536830727 558697890 624858371 902808315 926862380 955732383 571098560 979075784 299862554 463936718 948692601 962211756 179417083 678922684 415498211 510593131 941336002 971309643 125758467 364863919 489152080 990431006 469279188 921127349 29467232 313944450 455032986 837423118 289696313 688563108 450144460 913391838 247404227 628486382 492571380 585100204 171407245 354670812 686117470 996876207 910896755 940667121 690570094 725499783 398195300 770000195 987542234 989113152 628005520 889863488 527858268 808012380 986128112 992851922 333953270 885780186 281261076 708965517 141689284 673659475 971704673 996649987 521222941 802972043 727117084 760247119 92874151 737195607 744063960 817717672 867711159 932093307 647629742 894465482 629278593 964399753 537463488 883797231 555346963 741668006 843162849 939871079 606512073 751285069 476062716 837720491 240121257 285746793 476449296 886575713 478382719 643350333 979812914 997687718 783992716 795881283 90586991 163519464 223611552 256989275 726370018 875242657 402141789 760362144 824608505 856301622 341201501 467298868 485585893 825111399 943457548 952966351 317641503 918756832 34106820 496151411 852313555 992591845 26305108 809943632 542597910 846864986 773692217 981301429 666138271 753927573 761244452 776138389 522504070 596898598 489811901 534017836 467353216 772773527 452917429 656257273 210506587 599095673 392155754 438280365 701339322 702838923 997568452 998921367 929317305 987623748 974278552 996991209 766173185 834002801 567226915 895828491 771957431 912405279 151016723 964565560 686961472 992367014 74670981 721943596 943516337 962233688 605090443 881365467 282947145 857234619 220088944 518887814 297010928 374630816 919161834 984651067 867552412 972769003 506320772 922157219 345460130 741460563 848733325 909528862 303358958 311860722 725229877 839995467 613357762 887022356 695604364 840520232 164488234 432764269 635769949 898826536 526963206 739923797 332031331 756789161 450311837 573883313 912799914 948325198 495559296 565161895 367180807 390288598 579086286 931539749 819868174 885115505 63453334 742773149 222393959 237793433 983135725 995890572 996742879 996897269 293432735 511406456 968110251 986632264 581111998 792469332 588571474 855376359 563464769 915918372 299716575 737775063 486682971 587437694 949138899 971113808 542823565 970135929 765801278 894047576 906419137 980455272 60665516 588467208 261914398 958013253 269520527 862486623 800481235 834625369 816296926 982018319 162561556 340587010 323729663 910477493 783617997 832509967 184522331 755055375 474009281 535360773 900723499 901191057 473638284 899971650 618551763 866042991 585556867 974825474 832574146 969528519 306091592 494330387 862950922 976145238 167911417 234861785 725369733 793460753 964101648 984689894 108223207 744800437 751319563 969388007 572088426 731692975 329180542 378028424 355836278 445649883 829567300 998360930 47652460 149065776 67094937 824649275 224509699 413968415 284641017 878017035 186036688 665196093 325099623 517812733 906909992 992318366 371017671 907143923 184934999 803859762 59587552 105425017 76276804 709702815 974673806 979696987 96653825 863928887 950903034 999248659 966540136 988372270 594339672 972222418 92745525 127498085 459859939 664660930 608047183 924773623 256193692 772565641 675294714 693024597 102032760 407051564 864407684 867800064 475867558 761481582 304576952 315352078 864556697 921523895 856795671 905586788 475397615 793490272 20626023 616460949 376284320 552944735 340105703 841487455 343897311 520796891 349048376 822968149 837327517 960448146 447274593 466299605 143049150 470231856 708892921 826521003 649156987 890744985 109612207 953350407 937621643 970336147 658707251 835930206 663406315 931132228 243645463 618321189 257270597 902151384 815928014 842339781 845245718 876980752 460563898 704147064 313052073 662449974 650976234 895598842 134411518 238737450 922312389 951260631 732241645 746884693 478872771 721571240 774449630 920607024 104621812 271900151 389329603 841277778 475903577 729962322 487079851 983071190 428589053 975187208 295480219 839005041 935932828 996232923 789582630 913826000 401540604 608281916 41704859 243652817 431719614 600954395 770637554 858859670 15259287 963132674 485515281 677980741 205973767 369910223 57295236 766406124 255535397 609892685 248577399 321368645 756825996 862003425 799463499 958431394 309379140 546661954 862463675 909684918 969129268 996641188 172367408 948343803 832456170 836326070 457988040 610636509 732376842 823225668 175611507 264540833 981003388 998379834 957367386 980646661 345455350 466447421 583933341 848187882 285166916 572121355 962083745 999004783 767662202 828768346 499591358 780309334 814801519 825232792 811620398 958368140 14681739 661919846 379210300 951703064 928122674 932315856 911762034 943712847 796677792 905725883 47335888 513947966 495767063 845332348 565278046 898312652 892190844 894234387 745407004 751770025 572231150 874734086 248835891 311768304 974193350 974577559 863586325 883136075 356554424 771697826 9477600 866859148 966411609 982180003 727662268 760790634 982477623 985946404 835199345 999300810 588983264 906042631 834880237 898712526 996540956 997736735 199820958 309729024 869600427 996224631 597296042 698483452 682674536 802993031 39403829 845090996 688048375 975886162 403991389 497379616 604495563 889811395 552998602 595153774 893991421 909650285 157735110 311799547 478411578 833910548 425573082 572215847 369984361 396800804 896543407 963467888 651635907 656310968 280953709 810412789 229661832 755893688 957453753 988319679 111008111 813995578 662270673 871184520 702970471 890594301 597315290 850061313 723005746 767086910 461931899 482613515 116908759 412822288 757334956 788440014 350850447 838586343 810567608 923161232 294024854 720166450 333543890 703947110 543709948 855129161 510048034 854139604 251190086 522727571 131036650 698742586 51370302 744816576 627546949 761051647 356200289 690233774 919063471 933008804 297443458 589609507 875084848 887806078 504304855 710497302 290921376 502266686 56410638 539925784 201034137 953546185 420730336 659202392 472234160 905992465 64548715 230466525 143850873 358055460 162803551 677956937 261639000 428893977 790170474 946871348 735294781 810775172 744494960 820993897 71573187 164518963 237809137 325203161 713114409 981882500 306437034 441818257 791677600 840407332 419129761 547938639 971731048 995337023 294382584 349443980 146809735 717078644 974889047 987380033 336472433 892057555 883944744 932391912 225801844 827072817 725196225 994654992 601268286 664878579 491881891 664958510 47241383 754443875 68934717 716947876 547398786 875581806 95217491 743184786 948062544 969539465 245157200 695265219 168835101 739367924 228436940 292707068 961010796 972763902 219581460 801696426 10654565 60754863 352272792 656828793 779691316 839237723 485020668 731808009 87512353 169238490 444534800 930249129 371470567 785895615 950648814 967225279 328167166 615673479 861055526 880331920 839149312 957076432 88554359 115149478 931750706 943015980 617224817 642012626 638908430 989891799 295631783 748894478 744569489 915841843 744105382 838114154 822677027 909394325 924146426 942112594 923709910 927288448 849513783 972077748 682985333 814490347 795897483 900715192 845156410 941615364 693134671 996389479 941890348 973988534 652342270 701543672 682609183 808973147 14306372 734759942 128521243 271015027 162090334 841060453 154546022 540885192 40779975 659155626 164169187 549088970 662646330 683329659 299642385 307695566 213898180 728861544 613122474 867647298 394279228 604469442 435349198 857121136 264457226 861868833 770065199 995879247 46547287 666298310 125694379 483757835 328944277 584772643 950731454 975577145 407685107 725829293 735233918 998554370 305588951 566448219 575507706 939091365 274563530 412691546 717985504 983080116 433816049 582485283 384549891 407103305 802643377 946803159 729330395 954955177 145374118 892531021 945570745 978334322 750345961 751978025 388626551 488018765 326316015 640157904 740681068 932700526 958343960 967766571 46912091 373837476 744413605 978716150 235346976 310646682 503572761 778126167 373477846 662517565 953846054 969279399 914416073 993211976 567890834 974096062 250949819 791143709 53337982 432611068 569043388 760249878 542295468 859658717 138836868 939292534 161242335 662867980 440206472 618213262 812281356 860091494 851439728 902363481 321211114 628178990 565654996 718538790 440607243 551740985 815772580 957821856 837039139 948954543 173554570 841558032 59544907 92188883 151133321 865223639 161970779 311106782 210674893 526464625 180513063 540727716 796367132 974603340 855543826 923286467 722270106 938942247 876219095 882664756 87358254 867331671 97911635 489062236 950164389 992831422 934671822 970819529 882805705 906125078 902656557 964293101 59840017 765549419 95723185 861957423 666239108 889770246 602347869 632929982 873326094 983215973 182592150 513628907 61354663 737054229 275924778 975306005 246265137 563407525 178725356 292876587 869067940 922090376 924959391 949609266 423513694 551034669 177585665 407565212 80204404 179942769 894416788 969383926 189033686 667517537 986643217 987703044 145301327 858463228 857626308 947694951 216557817 785574947 34036465 593803690 6997005 984211001 525029622 559692195 582737291 963784354 876085677 949818185 86953269 256005153 17941241 290574475 61616521 454393157 574039706 974407261 338779873 462800927 7699521 136278264 846271874 939587344 249151041 911045864 366398092 756877454 867723621 888226095 128301832 803536582 736733462 803422328 62575947 275337995 902185577 962688155 887451356 965121746 304277323 389523224 144449522 465749258 67739643 504533071 463875888 808403035 124547772 662510044 430663754 727109945 217758317 995891432 371700864 964857536 994489155 998444611 372569403 400971146 618977015 697014672 559157331 632829106 189633685 703099117 710106756 975903235 958363547 971652785 242585070 364210546 987928423 994605540 478907467 705909483 911683998 934008516 289549405 943240666 668385713 936316189 364549921 929292789 665765274 992860326 920623419 953823669 921119138 938187935 100239949 777962908 53592914 98035046 651148882 667967301 888581075 988950381 488789761 579977288 380280260 892971779 277447345 312232651 715455578 734216985 619064186 648013744 414963386 612841421 58945021 404770685 532368127 842375932 371832909 826900589 607223050 972587823 501181946 893480524 470997198 971938121 53869365 609318030 296934595 412276317 815658737 890730554 289835869 391294769 563803050 995713037 7601348 440158487 569595346 576225238 268621249 822623600 992598777 993090876 238311886 836481569 759805646 874539256 117675679 986829397 857054631 975839403 132475404 962188540 249290762 857167899 337830670 853604775 902568468 919028250 877507455 945767918 109913538 365731272 764715896 960789022 669096722 842225327 801706227 985782016 673861113 785110524 136574299 457524986 746430328 990617340 18675002 298923078 556133134 647389093 512405540 761160336 119986780 360148926 681540967 889450574 263923491 711665382 396039739 856530321 167123354 917272555 647931912 889091033 891715560 921006823 593575910 618824046 182448865 281132289 513082223 664282721 804118993 851876421 521437138 977920328 356090252 545024657 644425726 650654023 474096996 522013983 352720154 971057256 969221276 986153337 646746027 799219237 576777714 899245404 581853851 988629385 278759893 584013132 429102707 941327157 422985932 436120960 275710399 486025779 417792977 463864978 234108720 878882916 875479935 953423056 952739833 989170560 695627510 986400166 294480497 519691811 34216695 878097364 172696722 204552904 418953656 605936328 670830930 874288409 316492668 811993794 659383873 775244471 635636262 907243304 255396703 455017198 59067608 648986065 763063079 783314367 981966751 989047246 791777413 828939455 453562473 522585147 871754501 976019837 847714675 929342292 227577242 486196132 794765736 819970588 793403520 867779328 400321469 653320944 727913518 953997858 221295836 258627705 315011841 596248778 120697826 533054550 657015820 857344721 476986254 847244569 840538865 944464715 347053460 901927741 776907613 806202100 917025664 999263403 516801338 524173733 944887539 963547901 501172537 729146128 2992402 73835238 80175580 138372013 717861106 862259698 708138136 963353128 598660358 680584914 418568728 864102558 430286186 816161719 759465233 995428764 199736457 827855277 202530082 385384398 638369746 981393868 364456017 504049662 380946660 974199406 187504210 986287246 182920434 517423145 111461869 536991674 417081681 583392246 695892944 842614964 958580586 982740021 125488218 792684987 67080520 765450355 606109481 843910169 959917892 984861784 9350684 796978458 774607785 931961367 591890227 672465921 380350511 398658140 838764227 874037126 208399250 236086855 99875819 753430669 423909368 767467237 87324310 652023996 327092716 799730526 567959010 673097307 242899974 382578924 425563291 966616743 964514547 972340857 489608216 893281600 471994609 520119865 533590153 768513344 887447999 982725819 26098872 56213961 502696682 816925245 28453338 41197772 130333128 621799780 465297155 914131309 794277312 819672547 448251289 888480815 414473427 738248168 680043195 972900633 194276614 864284836 768480642 957260708 494623704 979956058 232287542 651825261 209453384 561977887 273676224 902810874 379920298 971604990 767933552 992513387 740700107 912169428 479383506 975769065 987679877 994661680 807596274 871395133 166727292 529788741 408034116 895871909 774666856 852309739 760363211 836952398 135921038 272723662 737153427 862809973 105177896 488438744 492192492 666331350 947113167 991952757 653264504 670321765 364022566 800975698 71088860 915095038 576949408 605905885 48785181 654101005 958840528 969213989 701175241 937394192 673829934 825148337 948445829 963312373 805746823 866999430 280064190 440643479 520858015 653586985 349048188 767274253 812023782 845157428 260822847 479602987 849860791 915812342 850411914 927832919 12431706 579824476 89693772 608802200 191276492 864071415 526487452 782217213 962654105 980172965 803569551 828412591 160464247 598050000 869726341 984579220 72270870 684050402 612187783 682730360 873548583 908103780 143807616 148400423 223983759 627000537 424838564 501252571 651443809 862364526 108360015 557504477 969742431 981065466 279974613 398719247 270139338 543793978 884503008 927380373 170112443 499420606 869160507 955988384 331673827 792503612 364637343 924986223 819537712 915128070 274240722 517188466 352308120 715867499 806112460 923664336 306962492 969311796 272164157 732967522 215854073 741090554 665383347 813935030 873415970 934368733 564020635 708717654 986687519 990427848 486038638 812805682 438434623 918423141 924013751 986904223 341329841 727475602 43374237 279508040 582887356 880860598 827186808 845733554 211661085 947814048 813503949 827857367 628640840 851295075 134515239 257562535 723777308 871011738 238468824 358226422 508639528 851373512 153946324 218064644 411628178 513916439 422638189 759565954 659196596 782264407 969561490 975355054 308040999 531750402 509554857 532389806 194774498 306616208 924712351 994808602 844021928 930841785 393669545 610376873 633799488 898216500 482767484 653794764 19202927 626512421 980625904 981167100 210013650 824815279 54370569 854745779 710131905 826385323 324838006 854258139 203880306 909218132 339108935 615013286 118661991 669095597 26430750 291928287 903790026 920739200 232178381 950712013 478394902 563222619 379403927 707250422 309340020 401544060 76922068 660458933 823826620 995034187 728869389 963078256 40264395 772068589 57289429 873227171 270220065 340484515 511823820 723706868 682392432 912889483 398785837 442534621 737577641 904169252 293219498 641440557 227530932 578292480 973771365 990998233 695691257 855951913 740565065 899036946 519770192 523073614 106311886 970147220 187236944 825484705 109262913 531738473 209894702 999084302 205962517 645672471 358398273 753521402 603458400 958979341 890274735 982686520 381218289 558826020 28200381 209243524 92613335 929004269 856314925 983220797 182809611 750356109 401163386 823851475 160903396 332494597 730613064 894948056 223398389 628677443 443191901 684548579 448441794 497876067 586261755 801911729 903651733 970574832 207824750 774805976 662493055 986217955 166861988 627614939 785958200 950297621 821150935 901641785 813200743 878434488 658877591 700583767 819440252 868657262 719767868 818514211 703660158 996784112 691440518 837680818 800262369 970107547 788654906 943271547 370518115 845706533 982653610 983655335 773422172 859643008 431328267 875870749 365055980 953216128 307911384 773834523 205022914 651273009 660273180 849133848 533975735 725220375 697478932 953302003 164170044 490573009 618734139 662125768 7468267 619272962 732751296 786757531 776879034 948770864 220302950 327736709 680829932 862374806 270976768 563961281 377557481 493201087 859845900 888372044 682419045 850250941 363201745 627886071 435404151 861656008 879879513 897048261 487639563 716356599 648216976 841202703 456695178 850620056 904553512 974543373 315716629 415663444 831047420 875565946 385179413 695689106 996791687 997502930 344048997 493686983 691591619 742721416 958239035 964650156 62234254 739062173 21966917 448095000 93361449 262169814 856205104 942219184 635903577 902240472 788594363 874322195 309356860 713582799 611936063 750552771 661079974 750598178 23118838 658741797 383064238 387382491 293189446 557435965 158461154 208329268 129418162 277525558 700950157 994170613 125882602 966745125 444321234 964920280 806284916 941881237 293341361 984586258 37704840 512799694 772976841 881718203 401708816 965622668 332070673 363137654 822384035 823889646 794223067 830902330 612406263 688469438 615831305 973717560 129949670 338360232 330544814 968242179 678432663 889011977 852468613 981127680 233008936 361776553 48821703 378537415 355144637 588570267 629729575 905535657 568112708 877771255 356098800 927473864 579681509 849573900 529186173 752742498 368655301 503657796 226322537 357690636 435179595 805798853 426097048 959388318 581212092 667326887 143117515 414017773 454021684 797265097 880070182 903160015 726271505 806811273 902164913 991821222 532710812 553657249 919508188 992236631 11025 603759559 163818296 229687877 228171300 953935044 166437000 846535345 560749188 635130396 598759098 943994172 206993175 632162911 770037746 930235752 714350976 788685861 794590791 875979876 179537353 371073424 644334853 704604865 684664623 780916370 300811554 663059440 950408556 991650581 814293421 912773721 294122401 541015952 306924712 770180021 354840051 860377634 964843149 973443479 682931734 685779556 114131506 429588382 488952950 940486515 586345777 723654842 586198678 731342766 457648302 958648074 132309978 928755748 8105286 14700070 76701731 411998964 864455468 995679056 242021610 838330542 376256339 856554069 251217410 389772372 987147719 996198344 15952289 321701821 236490310 670599541 31439296 43538277 742147810 845735168 722034324 959110586 736012482 822683653 679710913 754707343 376921628 938791339 451612798 695257610 116508273 122969595 260018354 670518757 893442465 914220037 193491629 344668831 133855189 137706228 3545582 851004710 167414731 764244883 285917182 942777392 879700828 940201626 932824666 986438216 600922716 819857528 205624036 896426078 366006653 491036679 802262237 817730390 957508845 960469379 812144030 817522097 318107072 818407693 166233857 763907265 965946584 989750082 190252722 204813195 705329773 905818658 490504629 567337415 772109394 918174782 193289123 583399960 85772217 828563678 678751122 786106805 154426294 772071800 120635103 751495559 969892412 986277493 667395799 837295994 478706193 612590989 627729459 776633285 483853815 517110021 574746371 943409075 312236309 781639979 654183286 794382577 12324566 930911115 304630065 375597091 160684568 440845211 121427056 174094857 351660926 864232275 488023590 673514851 713386077 773869810 625727877 803956518 459465538 863211993 789517756 994527237 706148627 756580162 468835454 736765846 505895710 517017359 885050218 989893254 565685128 609468432 737982797 932299367 395359123 992544767 381819199 508865320 309415807 487760659 817255380 898975198 738319487 946889679 535092052 615645472 500036304 771374607 59924758 882668116 787672518 997303712 621033065 862797653 925221571 951395872 954272854 995552806 757408220 886947941 737965891 742101366 478077646 480663270 681342298 732087942 47962251 493761305 500180456 532738521 887448562 933010681 547264541 944413115 302011958 986582706 236406670 701430954 678552185 779411424 467837679 580245718 859107772 984044987 137219467 646851636 837531099 855737321 673160729 985539597 155855461 992370572 247586547 743298125 42752490 456348982 408169951 421510159 627806367 747353846 545769370 584265272 96480318 701340953 386004295 640979028 11988347 504968777 333669804 773841608 380206150 455557689 290330105 329744822 622540655 750096892 358383796 684161672 442787497 718415373 963461572 966647963 698658553 911216688 292497576 962100536 702180996 702474449 141346880 615180668 393500511 756691972 899999176 990307828 854991462 869323570 612142989 829947151 686815799 982721962 91004739 244528161 897997940 947819536 82133895 143894863 902169037 914312589 940747071 976073520 837538494 909507231 237048153 399627092 495368503 820681456 589858424 998675045 539906123 947067507 295231868 670242327 279271321 798280111 654379051 932606949 958948540 990513393 541036737 623073462 509007186 897417984 107736304 901529893 427373398 709752459 469628015 576619149 212343755 246058248 538519489 969085249 741910958 907101075 959171939 989633013 486991125 953276675 689560993 700353553 691468936 719437500 255392869 734280255 607789898 743294703 250565684 282240096 94959553 740731292 9506789 471376298 641842059 744267659 175600524 240985224 665341758 768503530 672204527 902358660 885836568 991539755 793301146 909284818 487388305 671453260 286299064 330133006 663844684 942791305 52164092 380435661 802978185 980321687 618366692 721130152 419290351 577703901 332423618 831672622 432060208 784439722 854250971 873748275 735594251 951905828 677399141 693859659 506356495 769525501 11920136 81457362 386472366 895037372 748903638 928290216 998723669 999028786 624108535 927776325 677565064 737181474 233337645 442988003 133229527 583044689 678455001 803338309 481405629 884746546 160355831 323547306 545670800 832526581 674819787 879904246 734521107 887811813 61906688 215410407 698509259 713446179 738906869 765908951 954671157 998440686 994858780 996363656 205545941 480484180 819057864 977166563 567319679 611397469 290963985 788055150 539859367 894994945 591546383 602743909 642340181 890998340 293479205 485861756 936623026 985842733 588841906 852939692 128902622 797184063 402741017 437780214 816610317 825913117 788171683 849383747 96528911 577364130 336699209 676882288 700790769 729238034 756171304 806267468 196475580 255921841 82335022 256645019 522165368 543301673 972403304 973051692 526874715 811673061 103394326 182381507 443619404 684814252 816880303 991351741 381804830 865208029 256300514 816849015 101816596 983539186 803430911 982140261 843327226 872996443 827535442 992006517 382849378 863000820 199087706 452221246 883912339 968397667 960584994 992459273 634003994 708822062 347410221 373951145 203976676 399075831 832015465 850413065 300429912 393141736 973914939 995343050 729551536 776523303 17608269 45927467 415704679 613966490 803184400 911683436 265121303 594493152 998980539 999181506 767498387 939414215 208929106 404324857 522255411 539996995 625010110 992680291 985705730 992356177 682972548 729478639 948450359 975442324 736880455 879812205 849948301 930999128 740457207 958735122 503242273 659674861 638881032 655706137 644125604 857319433 388261937 488735856 537625767 696580582 394104884 643473464 793611817 817498246 376312986 977563414 141359875 438915543 846686984 873702824 784857358 797980348 600469675 895653078 525879738 815953733 498877954 837503527 885027064 891899022 257729942 970003638 615660473 915630303 575725078 787564137 228976954 402045574 62817463 305501673 459676965 751195042 927717434 974810145 985311705 988829374 153468051 662097429 229123860 726803807 498442420 957252361 551260790 827394101 103585530 185276156 979921887 994723403 647109054 713938373 168767126 682341468 131767016 479689627 471604298 995818148 802138449 876159439 20454236 235982811 569431277 850145668 682392168 862853919 354932389 709093572 708417139 769391729 820482062 869861535 216198912 639998197 307723086 876393122 465576114 894156731 54590550 490333812 115381035 426989202 531997089 950116052 791690177 795068686 442606639 819322378 434671584 957434576 394820715 727486488 670347975 915197923 654065103 825487353 350861869 550741831 689252920 891418164 363002072 383124889 473273801 884763936 476917187 598570346 990605332 994612478 262474726 991622837 111325050 302179569 393444878 527543879 893483749 895654336 713346548 836287210 970976522 981250091 687780672 960063585 793872541 857694528 182861517 879523047 401636000 643642545 705044537 951800485 116235443 809437688 310953661 996908702 527726781 738250580 56524563 298906523 577662185 689446397 711247789 976329924 371946994 982143437 40539182 265080195 352974704 923309470 181237278 249302119 138462801 995453171 80859786 639478193 681736119 960918716 997593875 998119817 670978625 828649366 323662494 642438913 497752875 697024682 726059006 786599257 126836851 190394895 516172432 765495806 266021199 697639604 45227705 953705207 519305805 648861708 126388796 238865967 127253384 612708178 25464981 968053668 690002410 938455186 517220738 695510881 441238693 779193235 38600679 339071978 541964427 876099738 897282827 903388305 58158574 400386921 102737644 857786823 606561872 754753867 553404955 952094820 167595146 507061095 153209901 492554716 746867703 981544782 304821 983847376 763761422 983849188 981100882 999067652 86886613 733194588 128298819 951528821 955803070 974852941 320522831 982967671 269100496 276047881 218484743 885348079 643644244 847391669 254914423 886014734 550338388 782898913 44842227 907751145 287003002 672919789 396012131 511376323 339042088 783599437 75095286 623878926 173028102 497757490 829905406 980620304 972850756 974181680 75776389 720508847 927480507 965515963 51062083 210208136 627766488 647080136 972949920 979536336 724863568 935238816 246697637 910727725 187154591 797065010 724104983 749222460 494559589 501343356 64043287 422664777 964407507 985635083 743985019 968296912 117907934 567010036 85238181 363777279 369595986 512021785 551325523 574090849 865295930 886653873 120133466 522624647 974311154 980125179 247213586 282520466 208414006 478650530 108253800 574054319 963906319 981658649 761928111 836718224 199326392 810674269 106496295 434855943 247743849 868402132 859531726 944965055 104852676 338652196 429140974 495023424 80229916 383478384 186677652 946461101 51388578 671152251 865018322 905221380 395568410 665282007 381605002 736112137 793028345 817319991 825733746 892408398 560068826 829657005 188953649 490934907 575768873 934250108 290473166 962423233 171770381 244185236 435230349 617111868 118735009 955868048 332459794 390741331 228842524 667486781 729187005 747399807 334411690 629850457 121606078 252544745 613582249 983974886 417926620 488019911 850789134 885504499 479507051 744212196 929505299 939636740 942445310 966628249 101045269 829466720 350347199 351251841 113179497 770616655 853831233 950524415 640843 682870495 787366940 882126722 295002607 408724620 122672221 137723021 680538181 821311330 931940593 979028788 409035508 584191038 158190289 860487250 648707903 669707185 850471684 925820708 812129986 939565946 658464294 785689835 278348402 468958001 88781716 968984871 623284736 740558716 441356734 578769620 803215242 985869069 994773784 998557495 485324111 879252317 858469928 907712897 838675626 963479056 536983936 613412905 799863244 825503175 356574743 483557139 820043552 974332558 525326588 952487206 62473493 952198599 189198948 555145387 636692951 744271431 908106314 931298364 561763465 749504067 32665405 774996458 703158435 803698373 923179134 947622284 261627609 601160778 356073095 907289234 132202765 660874094 683499143 750766775 324559031 522638328 128455299 224244048 58409141 323887330 261331688 445277492 477324516 715888249 309814426 315217012 593450258 668691543 863624704 983273661 384253299 654246110 143629933 483668009 759162705 843458107 173638663 966743450 453303105 498001706 262771813 921173737 866528982 902498895 497775124 698896322 551446180 885649530 639962459 714739107 171563427 731331767 651147092 864584768 327267736 732617848 991390474 996369391 772630935 834597091 625052092 678477663 24692242 75987698 273537066 805084206 541424703 922834229 409489880 491502612 763829267 886746110 835604094 850975383 502409502 794739155 117154021 434294780 637506420 880104032 564222308 588717559 42042314 760376407 371447904 431744346 919782397 935049214 30066253 394629897 870041280 911354788 761480341 932637888 349191589 762043334 210150040 369909591 116814925 417033437 273415064 570699680 266952177 441371485 482386577 483882438 621920900 930156106 83165438 975078623 118752733 612432421 306397009 845249094 899216809 929789341 84251327 371685108 749961326 901533717 469012187 788050619 727895492 930118155 347945603 885850549 300255349 523397855 827559856 848570349 802222795 949390604 321759358 859474164 889376034 916466100 179887793 847011970 424928407 576194780 368769881 936947799 939967734 956696418 498807020 943687227 519019550 916536988 54453368 90130200 646778102 988512708 86514191 699442457 832806850 936061698 252019644 534656856 371840103 994582102 424184914 985934881 837046492 902525435 326733321 599212535 442878554 504462124 665343643 709508503 66967623 129094066 747157087 787697871 751551974 943378381 166891059 646109457 69376382 245217197 683770757 865340738 398655394 921944838 55949071 964415415 631289277 847790206 935663173 958073413 605344195 940650976 420478856 913555863 657602215 960016938 536961322 900464186 652627124 679329691 438942684 673350174 428909462 895912585 991781988 992247482 2736310 980346707 175363940 665265836 833281312 923745358 350065549 912289303 891994889 929382599 257326665 886374290 591991007 949396221 478576566 645820783 526091387 669344748 28187582 215420606 677004933 895699079 404112533 731282791 122652530 379303251 669288269 947100551 141791385 210877661 406204849 649432873 502656599 886049115 260845331 278204963 574943464 983004294 762487156 801752364 732879228 976938265 711720037 843468779 837176319 962583410 369887269 389470443 991264901 991371530 91131158 239859567 670385639 767155945 120511193 931626291 770551642 823632090 13851510 779552885 936606224 975009294 966958631 990104241 130534753 300694109 749888167 901062125 907494776 992171430 314090234 535293473 569258931 808038162 577782861 808874784 849396788 979995918 167056910 337234311 544948170 599419820 924363120 964183701 468043367 897556791 508056675 912181795 710778354 759218272 30630225 206896604 674916154 941553140 823842825 948750232 436533593 502615790 123182632 504084718 21649268 369360328 839765532 914996474 907044654 996741033 19142729 973770409 997893464 998190467 987205803 995065073 569357717 795818011 628732844 948451302 740621978 814537442 184882307 922404000 694070750 789358570 799243894 932304951 335861774 525743629 856599277 865457273 913717858 918568053 890596400 956396845 478847329 595537641 798738437 961807973 783522979 873208464 747337764 843195178 506829167 558549620 72633743 953682874 537489875 995110377 313263441 861041092 679159151 713157072 56018847 642028000 947032967 972670330 724420571 986998972 23923996 654917264 31386183 349923193 605200588 877341536 388165727 880652237 673725778 931122403 331334714 864311236 581583093 937032504 154801262 784445025 258931588 481265499 323325398 664913368 870653040 960722170 789965152 805899597 199101303 608279769 638564792 906646052 937435532 995050814 917946012 959083123 493489239 794942008 783646608 965436911 774559969 777859551 957899295 977833820 485233238 505095644 856384510 943884794 195428776 877073580 917789120 997116715 739094297 895093529 147219978 167140672 475425648 772481386 677801177 966630223 232534722 235151320 944141205 947657652 768602298 964461660 2219005 745230003 634661656 679478170 31019622 665068227 14381511 145961790 377951609 833522003 850385761 879699415 696978228 995650874 74284310 484229718 137978506 172651317 445386926 616307210 677395509 979944488 935727702 957425913 770562093 891507223 957503241 991771324 579173512 835338458 162997806 601896498 458081617 712933661 744957567 782202269 522718486 597883986 795197596 824293049 887923002 916109025 717711725 796420860 400463530 517754621 114129596 942769475 212079331 424438020 251953832 594496705 112024846 990992829 584608174 941326817 988250399 997177820 231331636 851196719 386528427 482743378 418993407 782067795 517294938 566639258 563019974 825899809 306806955 907622947 987050216 990234851 882076120 981161907 766102102 904923704 110192529 467315421 298721598 473559252 83320291 825551252 601673140 684414069 545551413 731075217 260034582 802810710 880434359 906813740 906357999 943912828 341796856 831542881 275519782 787514137 165775172 674122359 555225398 808725771 290220239 697679244 203705750 265445131 735034233 906559338 76643508 891276605 90045650 554965679 790242907 948767736 826447420 855298823 439367204 753513282 380576761 813458864 379241413 814414689 420206025 854820010 847027786 937498300 847096778 851067033 381725250 736185961 482777423 679868408 255643759 477588299 313475036 395824811 457675613 931157721 118965916 925837380 845045287 900371467 41934470 755597440 638159734 950374461 744240451 851228968 235737024 736512793 138953053 473503736 997111573 999311101 530227152 806418524 856184685 864147132 357879987 859363235 440020685 640865123 476105221 737092700 123683230 788312696 136845190 774715212 516719800 739512836 746456612 921951760 174857941 703308547 587421271 815300385 586643655 742006056 830288620 899240612 777262136 964428114 476243811 581737082 28798654 884142725 540342149 946840426 95998699 163941293 254368295 936781236 431139238 505415803 327257171 640105344 255266288 420315387 919806731 965269203 930467650 977366783 878580052 968296812 902386903 976128793 850922272 875548596 668934348 729954037 388505836 589867629 620322323 973667149 845730258 995848319 909615399 963655676 820076972 971451265 174178230 892724817 979887664 994003061 446936006 901442010 7593981 216893686 23887478 62374893 358123712 767679224 963422317 989708585 250754591 742406907 184787908 444318590 212208538 999000905 276889879 605272599 366788997 949173589 376364913 952600549 72225040 772122092 413330709 639872877 331218454 379642072 969058622 976866558 843905045 886383886 291167489 919503427 196568654 611448437 856423312 991724805 777496565 820524262 111265826 844316941 654008108 949521884 813175920 872105052 260186775 297594261 976980331 988181674 612244847 831810336 272221594 828475499 909537799 942974999 110881741 284594475 926260228 981766688 288453734 663340279 373922736 789846979 253282768 481846334 770383101 870876576 914789685 961264943 63449077 72871383 683127104 960852158 869202790 869424962 522218297 665397000 729493706 839462191 555606475 933219055 615168912 795452563 443347680 525389098 71290452 756275183 547383098 588955763 429243688 447398520 8369939 875732817 457797879 759141263 377313786 406279440 590701154 740601905 430314074 514230875 701562383 708922347 281233988 608963546 324297513 499479266 160081852 337218063 22799489 249908313 611542 815540774 808789470 818958728 598746329 779175295 827859675 874324524 831770621 930899294 849379035 920968445 39113025 378439578 450138266 962003353 534352730 895130049 612379282 893122343 863781706 922312590 464617580 848166540 736699287 874676191 923906879 978189413 105062625 839694020 894166534 944327333 821400775 974347218 528572177 573603325 734553907 859406947 424631304 632409493 308253238 716446866 595224974 984328769 44026297 196788492 105223886 182058762 315682905 584400057 706883482 955446324 509453774 715025139 63132456 888092337 896122358 905182427 50931586 791468477 782779655 832937694 773083089 837584935 35708774 191947612 578949791 706946864 133001976 833374335 972089401 994823543 910444594 955963327 947709567 968349357 647181908 746941477 144348723 899286510 627060691 741487035 345266048 966961678 936205994 996388575 753052484 931580745 620700064 954307646 916410867 976375917 31804587 816798923 23200563 558725221 334773014 452706990 763784790 939973940 820348775 982597295 681108116 720343126 980567842 995703200 68275557 960460007 204165231 262300315 699036601 709667578 444330559 788537942 499465158 702711193 250755314 912715387 596767867 955606524 284980673 295171589 336219803 918248829 73889819 585357626 466657241 659720734 101464838 875395409 430860862 493900944 842155380 895154106 811857939 879668985 465500943 535075287 233481651 968214925 326900206 587418387 223042461 745016931 434418917 608284114 70175995 430992920 107758796 690822806 476579188 844013117 630265805 765854730 361738090 726102172 673398830 676428114 59185254 384302400 720704642 880210213 679575039 752058077 526507824 602982244 171614084 196867668 569152331 894882488 50914273 668115425 100727987 954477623 407562517 920582118 924173617 935354615 76055742 771392405 505530092 802032227 706007940 767545272 586998417 624952352 755723075 818704110 738225396 897160547 103277494 569623298 42623862 702787417 585406232 883112310 810203030 818218981 705594552 965839249 943150978 982761304 800150087 817427925 409029526 905314081 745021175 891998933 598591477 824210776 472777941 970681280 968016296 994797579 685429965 775098988 372131152 438975746 36817681 572906190 603182697 603192669 93159238 248034990 361810485 501694820 826786831 896071756 979063087 986854800 554940953 716181741 255800283 777755705 715753201 818215024 799500566 996149684 249506173 626288246 979978806 987710204 769485959 942211374 663553639 977174438 347862402 997933795 542092086 609621920 194102861 300541472 242348017 424161366 719800307 824188267 87923706 417923910 167422675 752068613 309413451 465075686 57382325 545138636 635352420 894839676 371099891 828390753 988163104 997544790 443566134 736957700 500314346 747361994 409424652 976857782 484255396 879333721 732196052 737132024 636583947 937330513 726448599 949070565 789922851 867845730 438669500 712957793 219529272 274040027 17021477 118947153 742641561 978890613 110604624 951356917 956099417 982250137 203706324 826864355 418014746 803763816 486211863 589342228 357815797 372947583 54199713 645509222 956148876 984523144 266211926 346512830 102252442 948464019 738531344 744096160 327700520 688680654 385994090 589965231 79503604 819061659 753235149 825006678 294123926 627842345 829940158 878949002 241214946 330944247 107431425 575067351 652764844 950086083 765911041 839408587 783715386 836159650 908624521 929176369 918445714 962947279 276793633 669023993 903839224 959798295 229320212 347498806 594712883 970747962 95815612 250230094 866178409 932106511 351588955 680672158 543210551 983214793 759581586 971393521 431352055 603116210 803671904 892519874 26296516 631244060 992113047 995776633 17130578 402202444 182915250 979880624 51752534 166652365 16445940 120504101 327173164 795651338 660946961 788403237 576468651 901004157 854179676 868770561 144355907 398818564 565785571 651555865 69419505 412741181 962998619 979208301 538362638 620730320 902543319 915312467 488297627 631222377 646286016 751620357 36475080 612399823 429492911 582821416 817266701 879877378 610779239 917220413 487292646 695284948 288713814 694499718 653888094 807835696 198502182 274079926 327132202 927674535 20054646 936079080 268620508 834067775 497093182 540633337 112506228 526914132 565453721 643251448 992402126 998675591 141625039 848047427 936727962 991475624 578251589 802045962 51821826 140033306 882606286 887986729 402042452 501892461 679506341 910060694 597850023 844516923 15953175 181865035 641455150 757201145 800887946 947014881 435932527 516374010 369675457 936789774 877953594 987025746 316432224 334979869 492382386 655164064 82642847 195439084 340163180 917880690 247433321 478291562 368797713 555509296 300234088 648668393 936979493 971570079 606640847 988988372 135206629 699468349 801217984 892487924 926139260 979165194 37513237 60599047 776849347 877003478 328526436 340613424 302991492 780322580 641409490 656506012 332939186 481448963 536246784 899620814 393328029 833766372 239974729 569259293 21867669 896496942 913642433 993956535 588064108 620522097 651728157 920066269 257334867 945987567 475947536 779851429 49998043 404523887 293980224 787685032 144082493 705212280 232216468 849160939 303633271 936388410 991710180 994394483 938445518 985699772 545621534 766069558 990044851 990310087 259788230 838122686 290778726 507393788 303455600 858350175 536834852 912046169 289013320 784005897 895774739 992682231 949688158 954235087 399953393 643996055 57307484 84637737 64077470 156389539 935847786 988313114 259160038 684063773 367382468 469059980 578183340 795843974 358220369 949608610 299296733 766829846 993850246 997832631 124905280 718642745 735692958 812375414 799767906 994211168 607059434 625835755 21641308 783665691 510685633 932607927 267255768 955694684 371319641 978656290 971081634 991337566 98975072 345763192 552446220 752649433 740389023 782854556 52027155 940906086 948083371 984791402 966309597 976540771 301737283 695886718 694714392 763918227 39061575 745460191 632758567 634919176 257651904 524898142 684093864 789880177 275490796 747619108 553184841 938377434 452713705 589629406 917613537 950428045 346247560 888876488 891144676 922195468 671675014 932267580 761979695 861073619 498940251 869144820 523180657 696878696 808021518 974733620 959157175 979275568 868268645 896205718 953085992 980763869 226080705 845630430 111367765 734751738 509973693 813492924 423152124 531380022 577908403 824609592 455454767 607230331 122239158 570585461 616625645 783027851 827594140 875377476 594582793 760438137 971371465 991023188 822605456 917037822 221693415 957876204 443071337 913018944 91774649 388069174 165152335 736090886 407486635 621509032 254718782 650133379 112961909 986962715 695272948 721650495 662545683 834640952 690149584 700885377 627340261 878448767 989815283 992500927 261762506 874870762 91640501 545387644 899715945 899988049 942890642 978149557 960356507 998298673 821823942 965143153 686211908 900118983 1656625 584694467 745070541 762012675 312906906 670145904 378571209 650255158 686739393 738990831 712141815 860623576 876137814 907567921 259833578 744627871 736590372 776223639 773469469 966354223 952920420 960488230 294318587 473171779 723525045 858599137 206293952 339190408 197198162 949604810 944968601 953181332 196596851 962888210 273656109 566748358 32867521 455035495 19128828 560792226 16052789 357549422 70826615 399937307 870645531 880017355 505493379 655143459 31257614 293834389 269164160 653406980 766867488 883212152 100842638 391481098 472208261 557816477 985778077 993254113 289790098 680918957 260304839 983694140 862371732 866401028 76000624 377225339 212696470 794436177 202755973 797277077 275098690 904780462 660288917 739554156 650508827 826963648 117701413 765443228 731435423 789777811 835831994 914535707 528950583 649675547 619544074 885401484 965984197 992669972 89811414 116218888 848685349 912999184 523211612 975534758 416072111 853405740 794106282 908950260 96112786 769188402 206861705 568578650 618248387 906134329 16359904 896758731 775044032 898611416 987815444 996315408 830304780 947980550 311317302 581818933 382274834 970910788 289982017 811777727 355189186 543180664 673945522 759519779 783912502 869628228 677907735 824609834 191246879 987955527 959521456 990129161 947493831 983632405 531382478 702364201 586694141 759260244 628175002 911053693 671670261 935132065 579514594 648524232 913358133 987460580 288474849 985671666 463613162 789977793 535678810 719932194 359940699 945837379 533684951 751590340 64948929 91609175 779050439 806413442 291199070 689485276 267169272 918834360 33104270 393573894 457732230 564217649 950590938 966664901 829424519 885834164 935489663 999026926 248751885 322367194 990060722 994671888 414985788 713339742 311023196 311371569 779183455 882922045 912329487 925500812 678941248 687182543 95525319 994569429 26046284 381099491 762263697 816209819 901492318 974310658 601691723 680106413 961457893 965663830 102895846 937999921 232562960 247786320 682584571 826800015 493007117 984242569 815498245 922978273 954015977 997089390 7791755 737707828 873399675 890133785 902784663 969537314 571942465 958466445 258187443 466149337 416551378 959468931 326109734 728257260 174142197 957119981 966408959 987049018 910484057 954834127 697027309 867054057 192753003 966418138 876270148 918215820 992183513 996364491 322232811 661939378 958952545 979487741 861730503 934236206 627360660 635538957 262933177 972875024 193623610 298391350 585279755 643481080 290772819 976644255 689981998 905396886 389451351 496527881 332020475 363186128 737213247 909508799 46258089 983772915 660717110 697832670 217545679 695995089 984365567 985016096 763334433 894358698 457697577 744310355 346215798 684226686 74675983 221150769 785254860 866409883 186313719 521105788 910329316 979010652 271148619 433893117 170848002 880176406 182418459 183418791 530612422 571036766 40178495 935966805 349945980 582651422 553530312 809437554 401708476 732156796 199543746 404435267 645146437 855904240 70241541 499135680 848426474 862699116 619677493 737882780 370933508 531015584 653668822 886276636 420388025 832164885 58069214 599626654 305537667 653166723 786894515 976889768 721139323 882859766 476207006 926979810 574770280 843135724 978918630 994004081 949273099 979935906 104337528 818732357 803766312 853557073 901311945 950796773 928515959 964074488 706764390 715776056 270561504 756494178 744093870 788658113 459657458 811247244 207841775 957990119 894877312 971530779 692348312 968947174 966178912 995091053 518462784 882499027 763839021 966995773 449766917 477488038 879890092 959411447 119563711 274002873 376138686 516155567 483827974 920373864 73764231 255563855 368623581 574553461 116413551 724565646 531687101 552357365 169232216 812370890 105857383 765943586 933618550 996855824 961467256 968213470 773274565 852980968 679543374 879497755 889096197 952791586 702469724 795971530 430071993 505763214 829336195 860638708 941373429 954878538 758490708 876098893 755321391 844785890 908733126 989756437 346154392 886185021 245032413 585520688 603663423 786299227 316421884 703230271 761915343 858916471 14245966 372200730 807434593 954713201 937987839 975323765 200747082 522986483 766102258 795357103 614890572 668678030 645758203 922907389 508619729 798135270 208802404 776081726 551910003 775391242 933787506 953539039 220483832 849352975 897714473 907021084 40219805 508509314 251241812 851728724 230131845 450643676 966658004 967109876 848525572 895467186 792972515 984249933 521779411 783024683 821192012 940449812 960799630 992816233 685530017 710548579 511612789 533583274 561729210 895114926 172166324 974010299 618782178 758836590 618473695 722480450 448760415 663801469 376991266 914833057 704348794 930870555 732363929 907025935 674358782 702066918 187150552 443365398 391898441 573381013 408075787 506689341 776733325 877525554 239331108 980063697 792648087 866535517 977531599 987162791 167026044 858435222 629934228 899648653 468967140 881079409 600951639 825299125 187127869 821869866 722062245 781954568 474437316 573003500 396220703 941404935 486415101 712452840 781928395 966214404 412847385 942172882 11606174 875604829 580456461 909986287 758056080 899952655 595873489 837275430 778491332 991462050 150953621 267853225 583320058 930178967 354893902 733746138 400998923 573700150 281966661 375273166 864861287 941658623 327420423 586515170 441244315 620678879 703875321 900574790 300852416 393141889 693962133 815013044 431605274 471648512 774600773 953907114 699272875 859189664 950787000 972184494 482780552 735369574 971844828 974286866 515545937 814903104 700308076 845114247 41843942 538695341 139135642 786645080 393403271 937064656 628281969 727837787 569167473 761389794 373902056 453260774 124367600 612153329 32213845 786247008 305805837 605108361 616721643 847317986 417456052 893588807 456318921 745725042 196901352 510930966 824973142 832611974 299313963 663432139 543430111 907976271 305248713 336248224 273423391 779192227 85001718 197861613 454101433 498715002 618149542 970847777 332342249 630210387 968898651 998486803 766282118 815786322 757504303 899536988 156867892 197142360 726749420 984059630 716522059 855938410 925087430 969171041 364485445 808716968 736373507 817077533 721844569 901720892 489582103 666056597 644200759 861943950 406066895 698783649 336253118 839494683 178866875 238753611 139610124 406391218 636037071 819463175 104388762 884919816 941565072 966152202 850576359 929912755 36138197 364737351 496333848 888871958 281952908 322509561 845681907 985046354 29785648 594684058 684218808 759684308 331217947 489902576 998009637 998712483 296468875 394855093 968582961 985217519 825410467 947603917 232221522 401657970 427976102 951395080 241816232 880160311 867647475 944913333 733284857 876928191 196705066 497831787 718980975 803747107 621585237 695539257 981406494 982856044 770165901 774995362 584041497 849791574 41441539 407238337 306859357 414748716 600589506 946449175 694447290 843165559 594859818 950465711 765447773 784610101 515492795 992496500 195722752 793874536 21246320 821085917 400765742 786837723 789658013 987140455 382580525 843412854 359950580 864416890 673999171 876659904 298551184 452415430 642459440 751455154 514745405 749098281 7103043 178143582 214585820 890446485 54393854 823647483 68859047 119419445 416720862 832141200 788244963 978259045 277139870 756356862 937445696 967657464 150905928 868986092 840045727 848013479 819973011 860034114 445902431 758402255 586922549 782303732 702294769 772571881 224719182 741953262 517971940 593709339 358194953 950177532 850210083 967758651 975630896 990930516 835388722 884845467 37091574 374794016 904795974 977573846 340566921 375746156 47592383 499520816 663799482 773387243 935915229 987355215 482275803 834017831 790976724 847773932 556788722 731625472 910752895 962014997 16140377 447704019 627261181 860594240 353964700 850324927 433242914 433992305 648047347 980536426 452136144 708418519 273785813 807483208 815060683 967937977 553511617 887737952 794365922 969044360 720367363 935190306 685952132 729010326 380042187 416315644 218713550 680380550 134665228 171374346 647099840 726415964 610957662 894499722 890278929 939145579 514741235 981486078 572149714 647755643 330228649 685810252 991178498 998268494 326990592 368465834 13124388 235257774 573599129 961709280 124435635 359634939 111052824 796343591 804148583 935078528 33172407 448886697 838434380 853121515 358553026 540397043 992870149 993491424 342706264 707158414 253009118 715912446 332533641 459162624 268369778 717694906 697598935 910058142 995293258 998781207 339622961 713739367 522932768 927537719 68828119 911853638 821958766 897797947 419926367 849192958 935357605 956292064 895863560 974836579 677424057 752146530 99353260 826604505 607978834 775645550 865585931 883942758 634101124 912890221 394678647 773541261 761874740 976124308 379426334 816428949 658698892 782042148 40183467 256749498 950030036 975331787 582739856 895713910 759229206 824588987 266952748 611349647 497693648 697301744 586473945 684468590 866387379 887037488 240805903 835187334 395229285 745471437 120952018 870644963 307266743 854121320 929008215 954441625 755395419 844113627 318549482 707762965 943304279 994002980 845757523 992656329 573925643 680958140 745154167 955920712 705195223 844064935 708754435 900885531 411512534 646251766 331130001 565891347 882781748 948601717 560089221 632070569 12433620 159058441 738950828 813828202 337396142 513662122 805336569 807664136 877328580 879371546 28798172 651007412 544622233 768749390 514677065 747578614 431321252 752134744 27114236 166168178 917677951 952721375 738848468 759002284 986047833 994176710 857111683 890731489 330956695 351901350 480777539 669529239 936896108 942754704 127211047 648285519 608449154 981868044 540481178 993242254 328456185 428551200 994301960 994848663 641205774 712531562 180149349 672162806 586324127 848608043 857071222 969969152 408284992 583180518 636762136 798820972 498543706 801031795 972997406 991425808 580348921 716655534 841361269 945779352 804186129 831536725 274208300 321396283 742297170 769046996 712607494 755027908 611258985 862481773 184088118 476402213 979753220 993155870 273160680 628248720 300260213 365847693 170864805 655068292 629896316 809069694 157492790 223945865 88241344 875285963 100956042 616229030 830045004 942512138 724318622 838725040 259769472 892278939 346085432 673888066 927474693 977367001 400485627 669815622 514668430 705299907 43748799 746166715 565870468 703636302 841938674 984881828 920655616 966002563 780383052 879632795 122921432 548158768 886997146 975954006 797582782 950318418 691602052 718976519 720156137 733348584 221541719 257020879 230193415 967563235 53780367 448010585 154253497 875352287 86173915 519253500 710263443 800473994 647432952 842785338 416232008 911376115 901853696 907837630 343620332 700935685 277615211 281329833 594210834 612232290 661616795 903325360 843439069 846981162 57974205 545857588 638668160 937912405 729594440 931328950 858035250 883994103 371710678 549563472 557139861 674547459 324674726 428623317 308211323 821982438 231356477 766890279 17020391 772967131 675356811 731538631 974796160 982834063 50730126 513957789 447500421 509141537 73253200 155012059 492674216 995946300 375074438 942505287 676913458 924310611 938906512 987195593 530458947 831825738 802334643 819538463 850289905 917708122 88758023 858192433 656438959 957353998 634701686 739379995 85563649 311176708 229399120 638539386 192437396 247911478 136608919 334430927 391114081 932221628 438072222 924394273 784505838 909114336 937520524 972061642 479336338 584868323 781339586 992613682 299311668 980843983 586141731 714398880 849188168 849556872 769528809 905614242 183011472 879220546 827813437 867060586 539694926 742739676 934496292 982630276 872724880 933949180 64731170 108479835 342633649 863998374 768680820 789229596 704122404 929084866 926601470 935214775 64136494 501988634 602069499 916320075 925747101 950216811 650827044 828358088 259230175 705502004 736088783 768763750 345827818 693153911 807369232 819656482 190001132 652085565 114874848 644292249 903045091 923475059 353588779 413632317 538691016 677195782 477836196 623647669 871858922 998010654 511238532 645559163 499316241 637481773 664908586 984626509 333809796 553996703 766130264 867918457 466827665 543657518 169914263 285870997 691236275 745522908 151011620 705747054 102956696 129644835 176621011 181711186 711279023 984881318 755018570 844164050 204784888 315621800 524398034 704742759 742809401 846190065 619845052 782255572 403016303 505828056 611010318 897004404 737554225 835891336 324698859 726313743 141030503 542850016 759164462 940200554 701786900 728644733 792667166 971542824 85808610 312440016 810359380 978639647 372017026 438006766 547529966 745170557 49081843 639454482 836390769 897897101 574582217 710312684 202517964 888994865 845496956 941169088 178379769 887598011 447202784 506276334 715307379 882201419 780554608 877139952 392480733 458612125 664004861 851880878 884957989 907139015 18612241 839285286 130859093 479780698 523658051 707443856 397882557 980056029 540989715 958272242 997742694 999271214 812216699 864116366 957716506 963521756 454473893 923225283 332503193 460758943 527919196 852507046 268548911 644313853 670427327 740031498 219553062 958284765 733300338 906262327 22353661 463132279 497305594 554815129 184288151 431110914 723971258 971858731 249906816 844666294 202462595 566733270 595937182 874269760 342876586 370202851 377553183 840655009 44252152 135700292 845329968 879920138 729699830 961812297 17538169 834732193 562318783 659201354 935154010 988946479 285975225 471563737 726268311 846092956 801388916 972637975 755455265 977493113 131619075 737940890 533257206 662940703 337713860 421524331 143327347 848195417 734532965 954431739 363220290 839031813 73250666 651381656 923256399 991213960 493050702 697331460 437106214 959794456 10797488 469145175 944970709 959166022 42149832 106817178 637373046 679073173 92518909 234558855 456709591 547507317 38629873 565874847 88447256 887740984 840132163 848170742 207338197 968173500 241999822 271028247 463003594 918342936 945844775 994496483 548808773 583372849 632193746 966949348 702539038 801867444 371302991 618790628 443662438 889133863 189790245 517180139 46150992 424475797 89229470 432589015 268598564 657775223 875348648 958685017 797992560 870945990 795181612 852424540 275384919 549188967 594746 48002818 543037720 831838115 27374251 401316899 732330326 822028441 123906206 189086535 735933551 891810493 186718732 555027194 906134907 925612484 148520580 200934841 8668860 600318255 153159794 762861267 890404442 968000447 402820908 537633521 293379228 518222329 39874922 362427087 69401078 809290368 626248166 698575215 333136480 817915289 363166225 780320433 463484310 496300050 111831894 327361107 464543134 897725038 452407274 903752157 283820865 901810302 43604284 663599509 28067377 61212841 274293578 587835326 700641562 795485978 448244881 524754825 594528641 991067132 390184840 616065759 914063520 950873959 506774256 677290969 1973097 345163072 296984693 457345815 223555138 243129291 786888387 874915828 373213735 999228047 26754296 366294715 859974871 909508346 403979370 815872926 233483173 486254593 317767989 574931466 885972194 979957961 632356775 769872874 784463256 870311927 375495726 602048368 78157090 675529666 551394590 871801067 522960025 910715843 667822328 844723467 980890508 983007662 145546043 952487484 595889524 744536667 143141122 745202113 56921256 927869473 287908301 955886245 513985958 577414891 78665771 496327445 797378578 848326927 723069705 791999718 254525303 650425929 230077164 769241672 706453655 928214000 738233517 793395114 128959342 415910315 56280309 753684767 869644843 961053554 926981451 946342818 40579193 404339319 238271202 394796252 203445879 746534663 384641181 541364669 348666712 656285608 156459079 998412084 379835673 479390366 845768138 931416458 894622168 912976169 974357857 996797624 899724743 941471966 889018339 992017880 938820205 990864540 308713427 830082737 775567850 980889478 145994732 365559016 9672384 495625551 392731658 457038591 609879015 666036850 726992043 733871850 692687140 930646394 837930401 973354021 632246157 841994568 309532084 362222231 654646245 880011064 45763413 997583809 841979131 905585516 403521692 727487278 14474911 723955610 65633050 119950036 800809667 951405676 782892694 975104194 282390927 617055906 218515993 985373761 862510842 890485261 858988662 876769571 992859654 993262828 425215301 949490982 104851363 308833806 774655125 990733180 622730289 919947977 426585800 920338868 485261179 773238617 332694349 609629403 355986792 652667616 810037600 887684830 714015596 733474047 996335787 996485098 716508416 886316724 980516933 992234854 47613198 537162307 719865612 881797623 412169221 905419693 531791086 979114001 628297088 832085733 661084065 842821251 239031186 822651836 154356371 964742060 429762763 753182624 998507348 999337630 905101156 943595030 352836951 588162869 746035757 811841553 512842592 911725131 980574490 995218258 643829615 676884675 54505557 836605205 809270883 994676430 691410629 875111167 145577304 348115681 373386014 891797786 814648872 875596769 704831203 825002211 920717340 957605969 190445487 738541784 678871288 972120794 991687522 999149359 558093270 948092609 136412687 602072783 115235368 416054455 589711043 849124005 889874975 964005803 939361237 975291554 590154803 630522858 847534611 863545509 515164222 626449183 702816631 974698753 25258512 772517365 681149256 850047512 7435188 753703229 567211242 714751100 947776201 992578908 582406573 629610384 510834858 982495881 357518197 948727354 936127344 977031812 82892485 442871795 749546263 852463032 632315577 681388471 276744219 729279358 145339770 849350866 711358527 736390609 269014534 580172419 546901161 972913552 423404205 567069060 717432235 990410310 814286646 883601612 558445315 728344280 887292494 952312272 625313532 891393638 481170436 890860464 313942532 932590638 695455303 859907502 944784823 953605523 753129342 952385029 191038448 817771052 846987967 977911167 934549263 951869861 149788051 217791248 141509807 862202037 160547221 363294523 166244886 376510499 684455442 852126633 572868722 815488752 913183500 958476993 739441301 784998998 590369865 844780793 172317190 252899983 960977526 980593278 777487987 850452431 478365369 876635012 224504686 521324547 415247737 825720316 377294751 562949881 836534349 924485183 947807338 968708934 117123165 295250990 802491720 836327499 371244145 384944112 258897121 834332728 75785730 749617660 827590588 990748987 397144143 653078010 214358427 620660579 376710644 393738330 959229104 973189027 901803179 995020630 557473311 964363893 734529321 782293208 977115732 994798570 126948474 590131843 349704098 445371017 129010817 692263030 117537518 200522950 214555704 407929013 244389180 294215761 684017257 854930461 388017415 501981662 578970159 587329658 919400703 953244866 920215193 958204258 675930411 859591812 549234135 811873637 41950326 252044018 225323499 954754453 744326747 779858735 727810789 918381018 313387545 834575955 649917114 753262230 198728096 846752196 469088427 897132574 631609310 669609648 708115597 894535530 732176191 895011804 318250230 705656425 767479071 784617076 39562233 670200244 754887255 993991560 341389842 595733021 337382957 574432499 384774257 534418337 2016163 728561491 981937891 986926017 300364520 990332488 42749499 380895779 759359320 887481448 513747293 966947971 131978696 747767031 140310669 666923651 421529043 779674057 76573765 412906456 34206076 872481031 861084469 979961649 43532549 157770070 585897998 791705241 259308854 647287436 98637273 706846835 285842485 464754261 725188175 861601194 442556161 690857571 156052797 938445180 669905935 943591266 950924598 953031062 65541185 477627812 278622481 427857479 407380362 971833726 180690686 941672256 695919662 928611067 717346001 872178262 460065287 814748147 831737897 904316106 469210867 761720137 241919671 667195598 492265217 566807120 769831376 770579017 829215284 857724993 889211135 968059699 399186176 414363272 335040588 743122871 162461528 558883125 86142487 173872001 153648354 878075848 392231362 411182720 756024002 805456728 653007902 950489008 197892934 321832015 136033062 727235960 707154424 798545815 110625378 908578094 971129834 995549345 759380747 797558911 950599766 997347641 538729238 960656714 355862765 753507573 591122823 632685668 11522328 804503224 948560305 994976211 63653672 917384654 590119770 807347250 865408811 909821108 287115379 996928555 592553448 636291318 615227408 729205242 920963738 956022622 142689167 874002118 313306456 741979061 619995527 985709174 249809091 730022738 527557719 535149170 157366678 388872957 186431640 386965735 400045365 467045918 587095849 647263588 262150911 559462268 996929866 997656397 351454362 628729108 968529339 987156331 772370191 945135639 968092707 971326158 186073092 874242136 351648014 506775351 935650576 979383847 824619723 902055338 87550452 971161506 949128039 989973928 407480603 771235706 292998922 980673046 458927033 941510977 696973828 968112635 180774830 376821473 433369204 714030027 786401121 805300433 53327106 583634233 792143958 815513172 272045312 843046408 816264256 944055430 97038806 727884609 936304945 993640932 710026091 876660611 97492713 498796068 575474482 993308106 752738259 758839673 946558184 947084943 364944662 383651820 952086839 973428409 346621854 797892070 843719894 928653773 720993261 759412469 966978643 984838055 884223892 975728341 112900379 422452911 551509153 769344329 542781914 690151769 495582447 678427978 333225442 772785774 313513731 358111374 887516475 926688012 53931544 182304952 12500595 140242905 245217616 703567448 890355262 933619307 501376439 786337724 103117217 422756720 485861252 524561069 322308041 960937606 806806565 916906471 122290876 706500592 293635279 455865584 841693772 843040630 250719132 712838830 815863723 987566721 884755065 917738655 883810496 972676604 988408608 989707539 688162181 706197225 941406768 965975546 573989058 684235166 224684604 531163170 130084880 765787545 6698766 34352126 260990917 522400596 969002599 984001152 328217255 579715385 737821958 882380559 8128208 205984831 30371908 209772876 694946746 872727200 368543199 610479209 43273748 466181919 516634461 673895538 386435746 646153803 966575085 969672210 747536075 776596852 521951171 602424479 490576604 593418253 512921438 597978636 741752608 777176658 12318225 608350149 859105219 951882030 154078449 346045540 978940651 982648230 473640293 958250233 258161563 771010121 829339362 853499857 239376878 292746717 73839682 712669026 36808902 259573846 613903418 865048792 995472256 996715041 283711691 690930063 262959100 750287144 17988710 511815248 16246664 728346449 836123082 839867858 903730397 905353751 897072305 916259146 150311586 406738609 266307042 666643996 624816252 687145618 830211855 899441346 952159715 975076134 841061350 996257710 846625558 849530857 824355399 916150964 587326833 726014721 435013259 674062453 866486530 871163579 471207896 672410283 368262462 876806483 277640356 618687286 65819150 227717151 100802680 396711627 96608813 895124677 643415781 714219983 744730645 807637418 184977888 614326345 424157620 867154763 185039270 683276959 819438094 871812257 774477296 794034158 248903103 405425588 377818679 566138380 79222029 246088691 628674964 861326568 26441218 488948726 469806864 824291462 142313979 368074809 769526150 834307870 425635107 575996907 927234623 955953905 977984100 982172496 207560639 308158330 862723216 883223989 111483474 194315435 301738796 864766714 992342674 997998641 570747550 904888279 635395461 694269936 642768746 654616536 307418976 431109920 83925048 611406046 439693371 737676077 158062140 591285421 276906283 492065979 523908639 886082894 529986318 954842740 691391434 895645697 900806094 927378028 316504621 530798546 388461263 428989029 953144421 993483341 929817332 939126548 100605777 541456455 658371778 799203637 615159999 961213033 59756333 126973526 877974348 932091240 780280564 855840130 670337811 803893880 481965072 514014662 479370517 673627276 282013849 948951218 718593945 772077386 674572724 947110423 743199303 976665632 140311658 700366465 989013009 998574556 180450339 343740962 459924864 651433338 477756974 633969733 892343380 986519584 267630318 615168898 995377257 995756222 267027846 561143913 357495985 581829257 377830719 379571332 30003208 112378335 979746411 986397524 297271628 523074511 108232316 598935335 603927122 702010339 384715332 954777842 494616736 696781068 557682420 864128503 951392769 982587756 794707122 922354062 197827113 740787381 277635615 783560270 512002816 650490269 856185995 913684549 822607433 859302729 201032071 658655381 216061123 427439347 649748288 960931640 241266004 492870035 733812188 982338902 858285853 919554466 955080878 957333665 880650204 894978967 11450046 109910599 991516467 994754414 191313249 575076279 55891829 912358848 106946938 370156719 25278018 178140237 286311261 709486823 542035066 635756628 495487181 607371347 447587167 521525018 555661255 799022123 257488901 295718672 904929220 922874615 681006971 729367342 948310015 990452484 105683187 726726931 105090520 660139169 361336059 836694706 582887481 810487334 866500971 987252988 7194667 298498289 567645835 992791636 950021832 975284832 469381063 838923916 579064845 834962761 198995233 572951763 880383869 979432986 610019405 806929167 913590595 985024138 805295099 973800717 232732176 613523101 63073476 409516896 30441651 852884892 774449080 935162998 658453320 975294891 38827899 365856563 651527058 974757846 605409640 889542982 482599449 826225722 227640549 925317267 378448925 516478636 185752282 741514717 591861571 918158537 481924927 650115918 763703044 812105732 842159262 961651703 236039005 847482186 62320111 226362063 792676237 916155073 478421484 964573991 90238734 133375165 637095725 870309806 413762965 709328931 102098866 521532323 264972763 602616996 121524868 859887733 910382228 975084015 947488984 984922154 424165444 543586694 312281190 491178089 677824308 994570805 598229571 881082947 625627482 714890375 717749164 733496805 229535747 661657061 575927714 670825841 671299719 684353864 151757208 869205121 942853302 951149055 965903173 975643358 711722678 839781757 740665441 851788261 569907097 607218832 537370872 546859277 80358394 542586508 200315886 436571402 742415460 817595714 942283127 969454026 407840981 812753618 958269742 996762638 364141407 426271701 991833595 997284123 695495395 718947206 199560310 320972931 622907670 873005214 964231442 964708517 625610769 896930365 361443493 995125837 83245834 228418684 988077267 993953460 39633458 410678101 191583919 900779297 343560507 798915789 406481577 527483630 889676259 961648873 874906906 945916661 77130656 413821238 830887910 927955328 90968188 207793919 269741632 352789280 15949764 71822509 592005445 797894047 515401808 741858651 945515593 951830051 656065574 901110640 233748015 619493261 346121314 986600499 475220969 936441783 675978980 694362236 301391202 476723304 504600264 960835023 565206955 581950006 462192851 941553855 179436474 462004330 365436490 399110148 864821523 927916565 765133605 918304631 8460046 344944734 833811314 898162638 128253957 795247763 975827614 993137891 259128430 791858789 437308677 787843826 894435182 945231627 319236656 695273570 433692099 784595063 195539046 350039631 429295686 487806265 157425702 306869229 426646277 763999736 832327085 882178598 459789288 843299479 870722268 897156844 135463360 170141187 476731954 527095753 680322679 713366706 913717656 977996696 905810136 916960907 829804275 959313213 746282007 762070487 61421370 586796758 657279013 783841679 391310303 582756048 238738901 513410923 981081046 984784627 817011867 925304541 253557960 805699721 279456390 788690569 725759784 728601396 581521892 799669321 253945674 703821584 476649077 967625276 484481125 895313991 556602795 989508976 881256239 982300866 112653104 222572196 859544401 937690515 670309914 863106834 481030132 751742048 164201448 290967692 133189742 861260084 586924534 912863136 589360475 871094360 402406638 763328199 158813472 269153948 106973075 598352619 723789500 965901139 449831846 830824771 138948879 435210142 243145921 998501981 373515672 950088219 756395946 836157555 619024492 857712236 287498277 440804516 45655587 831388150 518427217 631755311 20577359 348741167 752102784 919741603 989428337 991753210 297464977 721349736 520149144 610602183 230245481 530752769 940846180 951233067 206631477 641068450 215173971 394075316 561391238 869072196 737552939 765039445 532738989 891904527 795347611 862621107 335278971 612026446 971396779 981434793 194352120 833756106 601585616 784204752 132682108 905951083 605020772 821439081 119053949 572485973 770190184 944713625 299032443 516849448 831859361 834258041 454058002 486383098 550470462 621772930 598452361 737121687 298516923 536887552 665989904 805951933 899906449 911396585 475436620 777367147 902339106 968226441 357681498 687814612 555136717 713148222 88999420 745085879 138513853 825181044 879192572 965589277 784976757 866308596 416463937 683324385 258679759 995126334 420891647 825651418 545659463 700142699 87365189 150915983 153262430 230202948 960428806 964981923 410190448 633914011 741870329 925360156 364019941 672413739 505409782 817830605 227113019 361180808 271017704 679708096 340759584 663750635 709204012 883672948 442053431 800790443 982844718 983392879 711571170 734719120 515116963 926295599 329085361 674550447 240214993 985434618 274401501 541014959 366117784 925583085 369459672 740573585 148220645 594594853 447499849 617063891 506875609 701168916 598329630 663016685 404718615 657302879 902737206 958210878 584921045 994359588 451318029 777906726 557973502 959076491 469596518 626284258 153065508 162547865 300991887 972129016 401054905 740554180 161166603 342932274 338101152 967164454 449062648 932467237 681211718 693175168 543673339 580958575 208039133 777918711 239660143 451289250 353064925 707435594 373102160 686852495 330612681 506426107 5964760 246766101 963550012 973077648 787346344 808783647 694018553 905446263 560879156 925815120 651834213 834007659 56805572 408498317 100125535 961752255 666682032 709380955 529559586 906573457 623923140 716930057 360485530 917820851 360495405 621785339 742724653 780574691 196535811 684429573 173403146 810026588 731841301 938741298 410349254 796058775 673503709 681147193 621415347 645563368 202338793 271662367 83483243 688656203 400673685 528972495 909643717 968148558 863501606 927136408 387099123 729974090 708402512 996637455 976544254 995979505 763152130 964507357 240206156 634070541 642085693 892686021 715019593 928351408 666683362 840725178 944327060 954285645 120399461 329868690 582046685 695499495 12078302 988309946 995238825 995832324 975960035 991760574 697564997 861289319 643923665 770123764 602408248 928059342 834200454 911312054 160241645 772170620 505385368 618727958 561946256 684235207 938135655 982269884 42426688 232580976 963138381 983835161 484235154 980353259 229720594 568006631 453595871 814060038 807549971 885628735 775719618 856055262 795993920 963703031 814916686 819954689 8657338 293897008 692799310 995848583 889333106 960012447 624820885 634481688 6201534 427761432 157192099 368377497 777656391 978769331 423782743 832599561 304360299 563145071 893813752 942384578 831890884 909342706 10019255 925777972 105087180 685321497 11561182 133181070 478979411 977860133 261350667 865287819 50709009 270280212 294549404 340011546 674532806 954298124 925198705 975273418 733094774 823708825 378625381 490496922 569635390 719220050 286305231 645055592 335858889 399081366 308681999 574769090 659477754 833434316 235738186 443485339 430637140 652804196 893439445 983193982 926963757 975726184 615258944 922863278 778826999 857289326 363804259 365643753 818767554 931203805 258609231 374016058 589445651 997611764 809837683 946551130 614256153 782229971 774575596 927571306 662753564 790652490 95654489 775629774 462806866 734300128 60746331 135376136 423300178 805219282 249819061 412519783 178398735 895789501 177483223 219474917 363946518 808976708 937707140 977612803 659742734 879562245 314420492 419778269 105226372 883786771 960853459 990608001 367451000 983444260 72873178 908628217 573626962 901013703 278373454 677924258 676851337 954018628 591974217 618097568 365816234 935791847 864289373 988254884 895525251 998552496 836513503 850379114 505445669 787435864 220924966 475387643 698978677 731046455 307763771 598432696 702748037 817570510 80007436 679592155 548856073 811415287 702972624 888482397 499737675 965591484 813037913 838443768 460363880 894046049 693638391 739276480 748656078 875098408 673337159 722422310 572671942 739187657 212981614 841004884 848245565 862938335 471121606 781978105 163866525 662269910 15310926 890434924 188432078 457269277 610282330 778887779 491213844 759221811 730942027 741081829 170601403 998432873 985215865 997041994 974936054 974975541 462620521 603969705 629467682 973921519 341821302 678604859 139593361 798490729 530062194 617765014 912679449 921533467 704801804 873433184 709012225 713076577 874080986 955107587 956146648 964682790 144496696 587108555 119618895 320153028 279828632 650823505 595278024 960541186 714472389 827362042 270253008 640503010 833320296 952808190 736206124 784833294 79224440 950301861 457388923 673643575 672195696 850457836 212342957 522060014 438462025 827613354 792463288 870218102 902218721 957669634 366401485 962566365 77979710 363630849 885491949 909098154 417570120 485789616 622426751 943023561 499219407 888788611 570331050 641207573 97437105 560030438 177831419 542107998 560391406 753586129 99079207 315867621 951568105 969022815 106324818 906287420 131401415 307007070 137048473 704399668 209535616 676155025 177929401 408849725 683919243 930676094 592781141 927724865 437393586 701451629 157854473 872869990 968773340 998512710 992481989 997818598 911106930 930767794 630850966 793973350 62868682 320211858 688478474 715633914 121785546 590306283 333017893 407874164 45237200 129763092 82828765 110387178 870052929 870362038 100956967 825689835 379236273 515641489 901104623 915879586 376262663 934574250 652489545 845972574 631779744 712506701 564929717 579930900 937277493 993832812 667271950 835325594 892285572 994110839 753401310 865755095 286964049 792512680 790803706 919018802 67903796 597793305 50540355 109956368 867169844 987173073 202111150 882273835 713478466 766462236 286020285 556180466 491002478 505989423 832556685 935674840 202405394 640572915 717296134 874413930 699158138 961770780 608049618 797850919 105056417 448898059 549511143 899199146 389782374 694863987 230509429 983662039 545704219 613476916 480092638 662197187 274432675 917458880 166505596 942583620 555105914 748722919 885996144 894841213 450620167 684359969 715558480 883094206 477966038 721726150 917134692 946343161 459489053 934093246 29608631 668577976 95472653 112206439 30658859 475500434 608105637 987806908 745245251 823841676 14857156 879881056 176794306 742542549 552204765 681311188 164121539 682860532 167592577 764285191 561259523 686788918 464947550 592509648 97734008 402830834 835374145 905896684 80337813 598665122 615833384 691855502 603796782 636981170 854914619 975380943 616108578 780755881 228395762 295792655 55062353 446420378 214836579 483373194 811452197 995052607 263894618 849022706 363557593 461003116 997019670 997690840 974526736 976211775 566152074 924843952 146935837 401375709 197743274 824213631 7062606 937235724 437981213 861044541 330641622 638809091 389803448 909210951 486462085 505311524 800303004 866241810 864021954 960141094 920144248 952768556 528340083 671418111 728209077 862569220 174657764 395002859 828535939 871048545 420545200 506844432 678198380 737005597 352853678 395176516 799316687 947523894 309258626 535588234 75260189 857557645 407786419 570245601 388638193 877608504 566583769 781383446 829679775 925230251 632228113 746929287 504212215 643241150 536379980 835211931 600268286 725137048 234656825 253508921 661131493 941038964 416865911 694547138 292801806 885599254 979946314 991215200 925291854 981500438 551538663 774711728 732377928 841252538 93974796 524747124 341390894 855400687 9440971 564421523 598144802 735631930 149146600 402623216 205844797 361652900 732218872 788726633 217595365 222411175 433788200 590712739 656195123 660329012 664289541 704058677 169519651 890161224 246635119 572922982 52657020 210306679 29106327 424464263 657621410 810545750 954146449 980869680 400253905 994140843 988131330 996240890 510967300 627481070 824688417 972158883 510269301 639889927 302140223 550721009 571848987 692384916 158860341 367781766 243580906 387233946 371870949 580716292 694122532 886630372 414020843 865429096 225251366 803539570 6479630 360258209 395839527 505511607 291126031 478577972 342788033 707223729 955700653 992189784 749561049 984178145 341463628 603107662 142834374 278650487 855066216 898505904 351855091 876124000 489090846 857707551 125614225 401376834 753886879 901139758 930561237 968875518 4221877 713916922 116468525 678813027 806154702 817350777 358271564 679967882 154670083 189667503 872546919 969459723 554936319 612631370 419999404 433582284 381172060 805365936 646209253 777903925 714779798 917546254 459081381 646732242 691061419 982379120 67696630 955517038 844681363 890938963 656586091 795307509 499018992 747619313 70301682 462510101 912808316 925212182 421228832 475492369 941714242 960149667 640253080 868785663 403154286 575720143 934476010 942344314 254145303 376244584 185143648 521357318 271329907 849082655 386343555 684312266 642204565 642652230 442912850 651141073 212732427 740298388 651196337 833357371 737747530 757665733 816484285 951329334 178121336 249116281 66592254 416619060 892388325 960990091 17795502 96378688 36621405 423626632 11146808 992363129 253489122 330865374 526964889 876757275 410919594 433597657 979635918 982079745 142301925 702768032 428483565 865415774 597974086 943772656 761994635 838277686 577624428 667799870 361510353 730444955 243541452 786235476 381868710 441003498 715891002 865370546 789312408 930807174 303712500 365620065 450287541 726661062 531106443 759261116 692101339 789027998 905713150 982623592 595226600 949334475 821680091 912516095 545657605 926847832 67763818 739082555 788138088 964686900 972866700 980936497 32799281 930594115 176547053 919376059 596801996 855893274 185909459 662593041 585938496 902957868 294745819 836194591 704740017 907445879 967075962 979876011 570111391 980415484 617410382 877653631 77433371 546918775 426408195 908342241 911955668 950173419 216915070 350798774 565371756 978259570 997046425 998069940 268608178 819646701 952438082 964616389 671238508 710253149 755851915 971567405 447432252 727037503 653034544 779333619 55427980 760038054 900514144 921222539 373181056 882886175 39930221 429616219 717089373 907956088 941158562 999168639 175732324 749356574 304752058 853362605 848084649 981167746 704538230 712950448 674796242 758713428 919404577 985277279 643377126 703536831 519755982 731763299 764645244 997023881 400329891 626516470 388233599 789567438 178577806 643790969 81085875 164250729 686591819 771133311 893442953 916644686 224990562 369955959 296034769 902436653 713546639 909297912 366024424 968096056 565167320 692164867 403063710 727361172 895236333 917353518 308065996 539063956 21674583 194832113 367005788 791462469 376408246 581017785 524130014 958603346 424944092 572063809 106091994 242180177 940712087 956437012 451970448 613356410 418377466 608233600 125324556 487428171 502377568 767513336 172844023 216600588 177649027 833973568 280519727 697744021 474105687 709853417 279794695 785441991 534040813 762720534 433274897 453337158 364683522 681391389 889107009 969952059 821145800 848433156 665766585 815252496 603950800 663120255 552981684 772337565 379605813 700286984 916706804 922972041 953577847 961488537 242544489 430523608 148363064 688805282 241835463 940387670 840211851 944992124 756791443 820824704 135090120 561799039 671753115 706595895 59803630 432842444 456223444 904854029 780424081 831340380 878781671 964273942 261218558 592216138 194652908 664163808 324201193 526717923 429429795 869556658 618926073 738857728 137497924 450570971 122486487 192838936 293055865 565310522 905749910 995963161 833593014 917817613 282788680 831138911 695725275 967641898 887782256 929695902 249221166 335246189 76931611 164251025 613451244 874911339 320895459 391901757 705259006 917923137 594162866 680870261 304182913 469474678 609883035 838445908 967950963 977486084 306331638 606293537 63954310 724974846 29324726 434499511 504711903 922431542 494094501 619284428 462937791 957251562 193960695 978170508 986115124 999269082 389184628 942954551 644792182 850577535 723637470 842509359 427108121 920780602 821676737 997153311 65578119 328749531 705052965 898145253 355603817 542155491 468520467 576924731 895584787 953099442 679240986 744675665 328640119 998206249 148582866 752389192 941508326 979671553 664516979 854761684 525655428 888972647 387024510 550112733 32929837 198337432 432382158 947812117 293876802 453492793 191317639 547242403 946532125 964992853 879694636 962162168 354560310 385563719 779612141 966733782 599900363 928764018 166952908 578186300 82384564 129144321 806076736 948760720 906580762 913243170 390837423 918219272 614127127 665352297 815227453 961688196 848322307 990885212 695923942 974155974 603362783 610723790 984872916 994550588 874505393 960187508 745907100 928936550 944496421 977967546 399975164 414256589 227114811 735685370 411099855 588712786 453289935 998408204 474733190 510914432 886832240 967836315 867924676 968256630 422426634 536695277 359472799 549667079 105415332 893014600 826692770 898455494 767375952 794194737 811494842 971775517 174368056 279732269 137253484 645230122 610075666 815833317 933428819 981425807 463492822 530048628 15772601 256925991 739086474 888362947 483189738 717796009 870830189 966057900 928296893 990157733 334150673 848645909 228027322 442408510 608139983 945842988 812181895 872635751 598955891 867876060 163284885 929224193 355791577 869979608 850683163 996396262 13497235 732751617 666636358 845831992 651061625 699122877 216525566 970903634 248166689 940543472 960332481 967871882 748017853 917696430 128565145 493479992 706657215 860648303 713797611 807067675 740482460 807405573 695901830 717424439 410111391 766444352 278523458 474799309 117680063 537280751 612670837 847580693 490147603 515328362 25906604 334538527 512747453 915700946 944430764 948607855 673563036 683550780 555038279 938041007 635192315 689469110 56361265 566500214 596026241 874612455 953954179 993799120 336539889 536253248 945971181 957654105 24176567 906449051 733645281 880655286 140100625 701925856 86294754 539199155 161894910 447701961 482993790 967059473 678652973 699693878 919590107 962894045 869674747 895994430 661901235 954197886 809736754 970363715 649343328 991206080 392508231 526190902 971481870 985713476 347330373 814114001 933599028 963563824 462895092 908274747 205778663 509212521 358456549 675328229 682105116 856457580 316954803 940505657 479850703 684951988 224711578 264363619 216948572 931707699 269707410 787424795 755708112 909063847 177593810 754424118 871289754 872537970 988552417 996621834 610656964 683494028 589026131 852513216 934555035 953805985 830202243 861928519 175066608 842141624 52339534 213242009 349176294 589299737 408209032 946111767 45212563 924411872 786798407 955243020 138454269 572122005 617511151 645763990 89365357 813577602 802831103 978043065 345267749 780294576 877889623 898340825 241353361 536486492 75078583 937209252 620651865 734928528 200303815 611995383 466846828 913350679 152971191 391840744 518920903 956618280 624246373 892165039 891517172 918670650 727045009 848206853 88627007 197462309 126401536 506791174 957880698 960425714 731921725 915786196 469078488 983258252 752159318 754053031 658993576 957873028 875432752 905355729 718255078 783145069 512177107 868351662 194854028 956651675 580071012 748494615 10478560 691490878 428636879 995360410 954306353 956211146 639663636 965204446 173551090 980227786 41271747 292881184 767137138 936370682 868307212 887812734 307805050 712770039 382562129 864847441 113578363 401211894 93753159 240547481 454747788 740197822 403408958 425447429 626928460 834402204 829147978 942899285 849096938 916029203 318326272 736216292 613232292 719430354 855475492 865680158 700725539 893227877 644553973 744451501 879748542 886226927 612717797 879311895 757589147 792844863 726350010 809356100 909236687 939388088 463085160 479809731 915601160 939402225 197714248 797449060 414207795 527255942 438700190 653817358 527844145 992186559 236559262 438754324 401479325 627558825 567565957 676315702 484745418 574931704 899354890 960916755 794805380 805111275 293676093 837496936 81058156 523119419 264511605 398672634 814524276 817912485 725146915 900351733 784515090 913407881 703699131 861676282 190070902 581105900 179784586 963997584 454220151 552047211 56403521 867761108 524561804 628150397 519000424 560495528 178082301 948151828 981984854 993910289 696172997 946221722 162388321 863451878 27721134 775373983 831754923 843030820 277729512 737535060 900228056 974270410 747978578 910018345 396395175 997608159 174176536 479082947 289052380 372148030 785118190 953118778 731774527 888988041 200829099 816118040 725503054 798344982 449746230 938695858 46200723 394063567 790424292 854691763 429641102 539806011 452382667 864087574 103621565 459871709 317554776 640607956 610971723 908225342 925644214 947820158 381389452 576277794 872349158 923172204 133552654 698681439 27264131 555614364 120470585 765145568 868079187 934904811 109920034 664547854 268039789 389370061 859313996 929161303 953395938 989066860 206104294 738768773 113059972 338853502 543135283 728764841 561814642 770138787 417309251 801675411 469356471 883599669 336656101 757189253 313597368 967243841 861402761 896163968 537209592 896491037 56841687 115490561 368988181 494741884 758454246 873330096 335629124 862832607 148411368 416478942 275157919 858084866 712843673 903505659 674391460 894692739 180006486 507912497 715808753 867168255 173269023 203862358 326903914 680541679 123697054 415032711 863529169 913410342 970464997 975639020 854314394 887348643 915199070 966486195 586118454 620687297 741336967 995667460 160389175 844906472 962740168 976848847 131062564 725598686 109384258 543979365 352322445 631520081 366018155 381149415 36008659 102949306 609023622 977707629 103017860 568965415 13428504 274014171 10805401 41930034 263929645 508041470 610277108 998040382 661239876 979551119 284267837 849122131 939225456 939697062 607861464 673161269 445536266 750853299 542326083 748586620 958787592 996606396 884897400 921514337 131182100 337867218 829181348 887726634 84997038 598031369 463156455 869176853 825280969 939193414 353162100 772709558 76746400 732524202 918831437 983304215 585447060 941274725 220954418 770323940 580010857 619389728 871914382 876148297 970017845 993583782 375643762 869868082 629052832 946605088 209845718 852387854 454314007 538492811 18793304 948120598 85140387 252490168 849686997 966397636 185374434 385592387 788791814 981782431 791852525 946847741 183781107 795062609 848944052 954322324 514306625 964122138 739754903 968338015 42606993 964052522 141588463 506087805 649077031 978534255 608184583 671562261 862828502 890571437 137132167 206706513 829833242 955609874 764403999 986886673 508192287 792541289 736397923 876587062 378187708 875372865 697750890 786623554 179069843 381501054 184982445 207695141 414662587 725306137 436516832 509281023 879726321 946200796 213719384 441128645 849718622 946567543 164194926 884492575 687626690 913670726 38637494 154921597 124600066 194093822 778776658 941006191 350316170 997017787 277545300 494078128 70565643 291588895 839001555 951991901 239377649 712004253 105629402 137655468 979714098 988301065 589240232 639031783 44056265 84194526 812539622 920028611 117515562 960764720 194839616 465402695 564016989 592421413 826721238 888945828 82129790 511410347 310605109 559223918 803893562 872346869 424274689 672451334 794462004 866402470 396206636 726481707 942774646 956439082 673118085 962464428 647593542 794488168 747468075 926100425 113910277 549857450 769186748 781346759 194956180 754363297 625907983 689796680 259123883 408682484 600056602 930394271 764237528 841993843 173951752 900480751 803214171 898529049 197379041 698477650 356562297 987215457 177613076 764537371 549491587 961889171 420781794 994478711 384627007 577865933 802699090 867783021 327151128 852425592 968130965 976647437 748600134 840890264 986692931 989069978 782989392 849277670 761633545 963226223 354059993 678440712 740883424 747269204 891178502 977054408 669539534 788714072 314438650 621211884 917217680 974926398 49560628 131368682 988478466 998641813 218882598 727350686 347603779 382991796 345147450 600352007 230338545 791619920 782101436 893164801 865156679 887988656 85775938 373925539 825919501 848561615 40899292 518015570 282416076 313644136 279115778 933560314 172244893 239332111 729999379 832123462 60244413 776076539 784295175 924127286 535987388 676554288 610207382 628054806 234397666 752076190 103527582 715393527 628349167 822270466 945335807 974612928 626596745 847826295 914723178 949595895 8868993 73287382 666291963 798657594 852812468 854203053 530167100 807430080 90137393 687166898 910055045 921365970 245227134 794065023 276554840 376670181 511169011 751955041 613591467 771795136 704072792 828729453 14727301 722994228 291769813 643562334 713906678 995928695 575048183 749516415 773086864 945536305 331391562 551011826 329687439 953838467 664115457 931255064 238229581 288015239 118232049 133742898 384315528 651189426 632644814 685399983 522437751 741086351 590440370 656407477 699615715 936481571 751416469 844223179 304248431 426287724 639440761 900165513 365584451 746502178 85926653 328832672 829037048 921812777 316914334 522568602 409726799 564120601 483973262 767790724 625143342 886211326 899066478 934593582 542930676 580258330 7206550 467931847 915873361 949981530 830050932 989902916 214617140 891252571 909366678 967830445 336279773 441718583 649397239 934724336 216657296 754571629 402772411 835788026 272969592 648694118 825560254 924910236 788350984 909154965 813415237 844412785 291585451 829587611 516364613 577021102 896505311 969297897 601029402 824075803 490967894 685767843 540703095 815707121 117673291 245008919 910731584 960355799 764817221 993473997 81682760 140241290 690229631 716073251 97202802 336487683 407655560 538749787 792680121 831863011 296533107 842977395 343515849 760069294 750721780 876677399 528478157 964056114 278406144 703006538 359218494 645938792 372445454 623580894 851678238 928310691 449607287 621138472 630895762 997907788 241265544 329889082 619445290 945317822 650468773 862449401 336284983 705212852 943333532 960013331 395453207 484234534 497436646 755379460 511430100 672491493 640045242 707755243 491634151 506625779 735658927 930030400 402125315 932411843 214136231 703533048 926411714 938419539 344687198 417574813 4249484 639403683 405583310 472579375 323224389 977505222 700377712 803979540 553535561 820157786 2620334 829854117 478589996 695092925 851687957 998460544 866965039 970659290 317334812 704966597 910237906 989265637 51428583 106424756 131349373 503928660 542541094 545691852 558268095 581767647 454171236 670575521 939280926 993314654 120512177 252852316 264188264 525185422 407472496 628758550 376058551 524483968 889521191 949101908 134285589 855108052 69966208 136183724 526833825 544195083 278038232 322905285 997358844 997727000 182968889 253940872 760324862 928318248 986006214 987986500 408463547 573294783 214076664 384196426 974110341 978139987 175925266 684529460 219665209 370141321 284872996 497414701 510958640 755163952 44396626 543004069 850622967 921427750 926285334 953137018 882914335 963240838 715745949 772543876 669886785 773590281 641492384 964552423 567131113 842554130 552164560 608524129 227170761 370502434 1428322 516467589 116294487 419533321 957753201 975916506 262250834 310988002 545666056 831211560 582032995 876047407 463294030 671834662 544338114 971987900 835580119 836951638 612181219 636080765 986415405 989631091 264714650 668674852 627069493 695548426 775705625 897175300 40919979 303046456 269880639 741664195 410145583 666107973 244892792 951167433 729142121 780810580 281781187 436290729 149193646 391561180 315126971 745482259 683845488 871615182 653002184 939949463 692859387 737024568 690266463 693618482 167885650 516792176 694093441 780061657 108523185 237582016 466417789 892794133 368277646 514885879 199427535 283346282 196456985 697492088 194408621 248362332 631813087 868770047 745513913 894220533 951988653 982417119 115546949 820246927 986895413 996302911 92615078 112103296 486764413 933310289 824763966 929824199 546756846 698955976 785653963 957576891 810582670 956005047 275371382 981122606 479239741 953646586 608834787 652816408 132322623 154097510 538959410 683790918 672150464 768913967 992708242 996806665 22389963 442919256 675440229 829922304 957996511 990978489 866562857 924571496 120637457 871634810 438504752 529098954 572911006 830758148 887886411 951896455 462104513 564346934 314192677 825996964 634797550 788922522 510212760 647544149 646986945 909732994 876853418 961260602 232071459 923473950 288931032 473664240 835002930 856600171 391040088 995661724 791126484 973768452 872569746 961839122 851336921 942767125 332438097 582604405 536467096 957126947 939271675 945454970 392745566 397183417 524205873 610385023 977251928 981009064 299119974 413996626 299373710 675554653 476169242 854280332 100057874 369870592 23220851 711339596 706343439 892248501 901487053 958332051 972556398 977677388 528231937 867450758 421552456 462063029 240000326 586206582 842326247 945327128 438365639 839766359 603640736 797153902 635283235 837627312 926529326 970273949 561230849 737615454 102197579 293678706 420122064 678539400 938518652 980126001 118091205 465547498 520841137 657449998 448102459 680220357 58171223 161042761 765956664 786220420 369889771 763453727 304448460 858865005 607341997 689097820 777805604 838118310 22860357 583379008 516898749 897675429 311974176 679170856 925653155 983889919 464865549 523156610 742922521 757675021 194223954 367947051 481465404 511003616 660347055 735307798 176101165 697989184 25050632 352279291 536554359 613568446 721230310 889829827 933726007 985870355 461331472 935860411 881120036 920017390 29018416 58424533 794924118 904705975 472258465 683437643 31037240 396594872 698351905 768131542 474488286 539497545 123247882 337192095 441867039 841122824 549513239 692089498 931697150 944196656 517019775 653709560 693044879 859541454 232435105 884926265 157667857 740560523 647266476 965431313 426382764 610514525 762994600 841627531 300895046 568158909 894776109 986677509 328048709 919396626 307681315 792131262 915456854 991987300 776987768 810489431 511746980 669994230 908439585 944202601 350342673 917091842 312543027 737414594 11198160 15451045 602407657 856744346 74310837 853470435 913205533 924215136 612128852 764617690 780022984 788438304 906568879 937070321 404712754 648985021 96031825 418249995 860156161 963529958 8335536 789139811 745227647 992577662 27321963 372310115 978505633 986524405 286883586 353997197 787552418 837556198 308715614 367326631 363817687 553990778 443982688 791498735 360735108 848249789 892267891 933315405 156888513 490988215 264585906 626786311 714872542 998337383 71678637 992394148 807286659 991618781 321598617 872661869 751376764 915874562 464418999 884070876 477032664 995852378 662064350 841096699 359875821 709504656 957984026 980878371 624349369 941418235 90690000 829709703 685010126 964900629 832069668 848423410 682667041 966118856 848538820 916205527 614745566 810050111 26694488 705823524 77607866 984279955 781802432 786506180 887142084 903579915 511363723 818262594 5153431 80561692 748916269 881352330 724744358 849930272 719648352 863985521 369099609 652440143 913247741 941482785 364168926 430400539 192649132 196177227 54607131 268859214 678504672 709990807 569053944 673300310 927869875 979547789 418823413 483799237 487438993 923154639 687162648 884365584 430850664 499162996 511514728 919618553 152638216 539592960 602177835 966950904 493059771 743909607 117828947 985728314 319081806 448939835 569239513 642825866 750551646 771501119 761010923 764376993 466358528 981886458 624142971 648758972 73365878 601482967 920867042 997228162 292049938 475788694 395430258 458857914 463953323 979580985 543676722 980642628 548610365 804116157 712237113 730328975 222753938 423952792 939629367 984071201 328686997 676659208 437070043 744665209 54875216 748392500 438796938 505274152 935079533 997810186 335910490 885658796 151994544 211326355 1243565 435989810 462006443 813796361 406578598 862306551 997715661 999085799 931443900 959864738 492418960 851644775 577951254 876122742 817956389 865279911 918307785 982713201 969601814 974296951 303706893 681654858 716507916 970468473 619250346 785702161 201481535 531006903 414960601 561743527 944804845 980841130 253627645 594442311 715775441 760272517 533241287 732623304 343362222 925080751 721037907 757790148 641127444 903578961 999245581 999333830 804392175 818542451 243139377 788303808 879344503 892072798 601610214 642568230 140070130 756854737 217916079 761303594 265685981 650579290 861563747 927070321 231451951 916127749 730764214 927653590 68381130 812149682 211777306 576319905 305663737 421081338 226675832 779180972 224694979 814799979 528432368 711744405 191777692 505588922 948806419 981623761 912740005 983681819 609096056 718105433 301510963 752325804 295782137 570032445 209537894 527702544 614061015 747160635 374800738 901382885 369719977 831991678 470690886 770880901 957410634 983803700 344268790 437153597 609003398 807664617 834792715 865218508 31382180 762741347 948290405 952352726 937466025 989320380 570034711 902143763 775092204 925697402 530534973 748435737 676448041 677383609 879339330 998703462 834701140 938410400 479820093 935089003 113559581 554460650 228179421 541897165 615614146 637804772 167200946 905204912 500116208 504052288 294879671 962190221 453749558 880468642 600470899 842792180 579142704 850343750 477124979 514045698 761458475 776723099 325015091 946665945 581693335 610414904 338180292 472253538 553180698 777815001 585014503 671637209 512714571 905170323 217840349 716714560 948732294 998574919 234271940 789289765 941320957 948032850 646878340 908700055 987217666 993824156 672655351 753529752 371401897 584999280 584539382 945242754 689832494 813249139 227224350 258044074 202905593 304015070 460852558 612308979 237937234 770894238 92568440 257875172 177790905 907543360 650056406 746960725 565927083 588343488 534723810 840230679 670154411 823168630 994305597 997804189 747891994 935387550 283709534 641595658 653413289 882181060 444217519 990464010 135364943 351999606 182980071 515562392 168461125 313847204 473188169 758903166 880545371 983013241 355110350 921766653 241279982 466251535 646770471 763779916 826680070 947231585 820364906 934414251 730985999 856751377 413890950 700991092 448928634 792942526 106024534 465940464 173417592 892148757 149093643 343570343 574036945 661951247 667614476 800658138 828447541 849188740 677445593 800874864 930081563 967442713 410687532 816282229 950628128 998729382 371972290 791946025 932101497 975927211 664243874 749885728 750480954 932220863 716295441 845150833 527744011 965699103 65010406 321359304 474292099 579202497 709230308 822050394 216342988 758144596 487611043 530030292 62331743 351457893 10819516 425703783 570424397 826693883 665027818 677628109 750861272 820196871 46349907 232060920 483706952 805149982 398979560 519443704 524784980 810063829 624190519 798864457 51651808 506792263 118276049 139280429 674251259 915645046 911802253 977456919 226164423 917746305 719971058 920011095 259652114 802730141 383303149 518176374 728098236 946146635 12534690 359334906 286528909 781316055 242426021 440530964 813215034 833938901 7623295 952288746 944989292 999281445 379296371 949988319 394053294 771362256 982306758 995204132 740705007 751427916 757159259 900113353 206154406 620465400 328391905 336272480 779254337 934711332 189325438 544302158 542572099 751336323 722721296 909921938 341317012 554913501 912510627 965758230 313098090 370286873 44231083 909095852 505661558 907334944 177223283 204549567 400114491 702348140 409500995 833359863 229122299 415712034 953996321 983067112 483710417 794644300 982828877 995866553 845616738 978261493 838968916 866186058 735295134 857551423 739827877 922364181 637886296 893281514 497668083 808761203 31890283 756895148 640367021 828825195 412033781 930002204 557756473 905487952 200575732 817977121 62496725 293321096 165841266 607050335 885598699 948552933 746875276 865442621 30046106 236495102 595706982 890585325 806205165 970408644 847835455 982643217 977974102 987551717 314119236 988786347 967436980 974764121 835239662 921610301 617653055 729850837 192367183 197947247 548865844 561402775 913058954 965107069 645445940 831368943 975832798 983002033 22059842 910483140 43258959 729867320 695703994 913937047 225867719 436009549 50148553 648055038 28842790 106404812 31077721 610811478 117355686 761038841 200737339 991946039 928359479 934629268 585929405 873559931 794050349 948471764 957780359 960067810 66066913 979912533 852890435 982864941 856958576 992805208 475293651 656428687 437510581 474958671 685763577 863653924 263591477 787820619 833750111 941626859 479075254 820222870 84627681 750223938 113677048 668927918 601294919 699462492 409050686 582562157 98920312 997232944 794903928 934640347 264841583 579892335 88610469 313978988 933126488 980493537 135151735 369719665 668498409 784178170 806361158 987441514 303418947 752402563 542453079 656588905 309336104 379241145 955146496 965206965 291051239 801953907 527383852 956406477 586205908 625704994 567469475 578022962 633312170 695796072 690560608 793265590 800843 944545261 589383018 866249105 950746218 969131095 773197891 844806728 754602915 979782173 508446097 617775145 456724457 940593177 477570730 483177742 136415948 438287027 696514569 769685809 689053443 846652410 940508358 965728564 895369492 896750297 248536407 650924616 817080266 911980690 188382367 206864647 960759689 988501505 827507699 955137973 492422822 513209286 411214178 613544376 231578030 251409756 326782637 563628676 113109155 221889724 912373187 942025542 813414840 849298425 454891624 785245338 452449098 796589824 978301171 982557145 620470218 848731260 815987227 946457949 796951460 807089739 741864546 747802062 659148817 846288625 30959672 981242081 887451819 955225491 796078612 973574666 755695232 927662174 810425361 848642070 526573761 566840976 437411839 534569501 489132822 618642395 280758683 522251951 610429956 898864199 924337652 955807791 536774744 584309034 218853474 251471173 624391417 972985761 595748210 984256695 405482788 854365473 153969893 427084188 227416410 725473997 558316233 750559268 665174443 972966918 996695982 998138273 925455039 984450590 497864055 590500545 104599967 210319325 510018526 713841115 23967816 864635383 920888756 964887132 109986789 261846291 352895277 371774958 507701437 526374335 293546197 371701861 704235063 808690711 556321088 854691060 782710264 842656293 114132342 376378280 718107226 837237100 924651928 947151663 254501513 745151084 431913529 620084688 626962770 823742013 90620867 438652298 467298061 955842709 710615343 843902183 242194598 766904072 279357117 282432570 176484346 811931894 937463644 957874212 505614106 759037353 48916971 93376683 778065744 813604288 481771504 522114295 283600906 294162249 788002011 932922191 948519565 952295275 239451289 727047383 449613060 901200409 501497976 629398331 212379470 356074901 37016355 967878429 808556283 928459423 290209449 405997280 5361411 249138982 703362023 936980478 258306363 738774565 596716481 849396302 7763903 441130602 731219490 903448025 153358798 664339840 768020529 947315426 428032234 953054613 895112614 916477903 908259687 990839609 561164070 986370331 702126504 983278027 369434380 589426958 824713349 915719972 485559922 764212996 12036709 434841424 969883810 997495521 266702011 443032010 990826932 993974353 13121028 57592434 366431343 949661924 602817554 819208521 525734440 716531911 5651958 513245160 668028167 949196462 70712804 239781151 104862302 695121966 726478183 863231400 734368926 979749331 415093264 619022145 696316435 758671063 955364863 957584219 636476472 781439424 624155750 716756367 856581129 857918191 5800655 676619689 310353728 467984925 198156510 207922112 572984971 647383774 866720733 894818347 250767778 271836543 469923778 573044867 819659708 978301385 233107742 582797282 786025925 991249859 343699808 470198746 404817362 473639570 457221845 728517271 129955292 973745133 110746451 944104210 196023763 391197093 11684077 949680495 616786526 965095263 954013818 965605750 334382820 533260512 600488921 749658937 369179539 856945717 375595495 464838804 406365721 895687831 31152438 289387795 739946981 969612913 741964885 813811367 925477953 948237738 979955394 996261836 251882099 384342976 418053421 460179567 250564742 930650696 470855979 730148705 86041685 284185721 402734226 650508582 679706621 923409823 199720745 903479129 469098463 701656952 587851364 854822629 251704298 555660653 422310220 672225834 228422941 845795145 87396328 374004658 420920663 795450054 680891868 839804396 685951377 835795619 353577637 923344993 876083308 900149363 835146531 869899294 275500906 393203698 182604056 546130330 32456790 792747667 133063713 849782266 738094772 857602219 700067605 962719372 824692600 935312024 852050900 854693326 933654212 982150348 755237152 813019609 656854099 902025820 323472328 412477577 650865716 819422912 944237060 984310905 529823149 760405808 120713620 986881004 164613092 956848856 761428879 935702243 24783500 432808306 731412141 741448511 185865091 859372687 941359960 945286127 234269701 956862802 861707325 945935649 486027225 551480351 992514009 996347969 532347217 545216395 381577035 845929081 203011877 751637902 676708247 982358482 250905597 888894174 451795859 665923519 447198726 485027734 287665868 719728021 124287194 152772470 425040551 854114637 566337231 941989840 47662832 150178257 497710076 905738111 23618890 555083620 279013972 687850520 269324641 908434790 993254359 995713137 834912672 879381720 788687336 844747162 152115634 205560694 810060525 918152326 624391410 967552762 201488368 702461396 735079713 918342912 649559875 783133586 716915914 857262376 234069613 291300645 656071935 785466554 650993002 673186768 865815639 960792571 205566560 844910446 37672488 89422870 194478891 950377554 327881328 606584410 895546325 942184197 440566812 560955653 374633962 952819425 191229937 298535190 227318798 886017549 760389331 954807664 308247041 497004107 550434737 781932662 509156777 990382872 53128893 199253782 836506560 939271562 600881322 690172216 406822953 688230844 817398267 839027404 507834492 867360617 54554757 756187894 588123154 749563632 617298806 813890872 829762095 836185333 184356223 282567719 129133028 816662692 12598447 212551870 741113721 813152822 402517364 856723026 326267139 516726080 568005118 688226062 943500519 958940882 801157127 857081625 844549118 903332381 707217768 805939447 980215394 984129642 722066629 856817204 157571234 771796633 926328761 983688492 548341456 921679134 917775409 943089768 967153067 996450038 674296245 750590376 928269836 963428530 610661490 991986531 856658472 946701536 854365066 899592091 373995301 777080020 845405754 896546100 883023257 974721741 291452118 979394937 520224557 835023371 823315113 917035467 990738077 992442965 604361575 810965289 341109435 469139026 204606085 251030891 284598440 634360818 722390827 806558126 787817310 858623829 663306563 835575847 718294056 950162342 441117457 858314503 308051654 457527827 158306661 708959645 919474147 977175572 501437396 834889510 189902838 815960295 137070206 714961002 653063179 793443119 43209727 823694727 751302651 807722945 829169162 989664537 478044711 995505885 223948623 459564805 942964345 952488148 173129660 897912446 482150024 598111113 610775822 893966212 63292196 496786470 970937659 985028282 17218641 709434621 397739527 715202431 335290773 782275016 625735607 644347728 512716561 929313816 722293186 767483698 150968556 919406702 861264158 975683251 358335135 816889082 422487170 893801705 508223624 612771087 383438240 418631772 95825899 611211480 83306323 202104708 448167538 884837806 280442369 428543771 434558481 846716718 355765913 503749709 578816358 915448942 428050070 970264960 852560206 981140643 658861132 947900941 322175092 673663668 120299347 966521957 700255081 855660490 896700489 999104549 684875692 841566757 611697182 898336032 246871619 286184037 225760292 807755609 356830917 637853953 662421085 951412188 58630777 521490982 671050355 845677824 790622262 918276655 963874289 980090569 19548130 260629576 447631203 944496851 507641422 968887867 329175182 589928853 185054511 216920361 687690413 867804642 551507210 606484444 429079109 725956666 150737555 601866874 303430674 435250071 255735431 771217540 353516892 425275206 197606204 643372067 146986575 516293278 616989763 766346688 270109925 285535555 327160461 751534088 92198886 111701946 557970316 970388258 630417640 959460858 215144383 375597154 525826032 687339315 120312543 909394437 629025790 879257100 157334256 870749192 567439883 675593538 487156722 684197570 400158116 945037250 859702007 860464549 121346665 789316458 904516030 988948588 413097486 703933677 246814854 905165640 438028945 913285276 980098947 982048101 216527633 511602800 365600065 548762897 326560548 353396139 538470994 641338209 792523504 937255835 918695630 950480083 722057115 854259623 403936035 987486214 716585952 893592433 135559859 517918659 771027652 819704686 405280403 918580021 858639240 866549331 162028287 430158784 552830566 895640425 527048873 961799339 877688678 913433488 184558483 343178236 603020453 912776303 464786128 680057987 372930207 738049126 877967510 904154688 956505329 986527437 332336249 547096103 875068323 905410420 617734324 904942394 684133391 972544316 643924386 997821377 328283450 437630209 212146337 887311793 616010116 717423187 278727291 917634757 224297068 529638013 411873868 460375715 279609665 937899989 31386757 686222350 652110518 746513300 431384319 560914177 781993245 947535117 295817729 336024433 869879268 910093372 481295552 903521554 496935787 684038747 944569957 970492939 791993726 841984542 375884523 908234184 139075110 146240414 2404141 883649739 965239652 994068443 468636228 880392867 739570745 938159818 496378417 980049606 547924255 708129372 967438057 996966699 762473317 882719104 981561970 998054495 221705272 828587741 523938493 961630219 46039122 508741177 389697670 390633644 78152563 626727378 571455797 796367417 185806881 308243288 293105021 589268775 190269532 802569246 653870421 771846526 554334678 988147633 282684235 895201188 608491045 957869633 512438926 657970299 951911009 969530182 523352797 712690062 796102130 882264442 595739262 945784374 957535695 995829714 546087734 767672149 933525159 961086409 55426768 646381964 146446980 718336910 986756842 997068923 121719106 821072862 380760725 621190219 788128654 788521300 733803116 933819417 176661732 379356839 311851046 573025015 33672455 721721623 409867259 562961774 147639816 327212888 801894312 905869137 659718397 706643453 532498309 753483200 750991318 807316328 855640841 958003136 749571890 969521170 360576132 519691511 102657853 554477895 484259833 759919069 70820497 975852991 357738665 807910054 803229039 963694044 815498877 990620264 685329649 980896903 522152326 922892171 262289884 281748918 62059834 893247733 618414998 902799459 355374031 588882846 208533075 915841416 503552314 806402616 871355997 984449998 212333260 268355854 101169744 616622747 91491923 339625357 798854710 877065002 924752010 978730859 378118652 744844545 890691976 932554856 292801128 637901440 170779355 862667923 672207530 960174975 863536890 950344298 358958609 956974931 263250066 595202238 863925809 955109501 663859517 859524200 805470651 960732593 927011175 992425685 434145032 653805593 889250824 953139854 370952177 510386872 13497655 491110428 529883237 765585116 793304158 954030342 314412190 545332520 111431931 629904707 979891217 985371358 169246297 334930098 971125736 976672543 162582357 365628322 890149721 897331938 783536988 783776293 833964692 980712143 276261549 640955554 980531125 990092519 511556013 784124294 273825284 680753990 743658813 789030299 716373949 913974152 843857315 981719080 528679345 541933280 379496471 634151650 164643562 673497946 432433950 594456981 962582679 992450788 51004474 780438612 181814662 643318687 12008839 645981269 814842963 931176047 750402144 788852514 386626160 682526673 382222215 947993030 618416397 956538024 972788404 980460639 883713569 974020716 984537672 993766085 358393736 594370909 170645916 382769830 405136241 669647051 752025217 794352391 879078068 912392655 319763584 361971375 770946212 932913024 566321837 984215931 387365461 445062082 423272379 920228137 443717487 908053870 470200292 772665786 502874554 634096637 690071468 834893922 951919736 967616423 656978590 801631930 824006954 909174858 83322128 520331068 987441926 992792576 219656925 260331118 922839741 949258899 913130609 940752351 826888147 886319004 885672743 915600753 902864748 975072875 441109212 661721733 491932860 807011590 266068880 700674142 139190298 386576995 130497383 908656708 269078388 420893457 839427773 840042379 232847404 235691176 142823963 644310158 447879160 965427121 561295879 704491930 346663027 932082252 32397962 404815113 836362967 941441992 584453079 832940190 25710337 537459979 394098538 592642226 291666025 909800826 51013007 102200368 82086369 257980818 111685649 678766995 801478932 827852601 649469787 809017730 397593143 791513032 912844681 958395108 52223795 976521179 69178567 576311812 578337270 915787944 610776326 909707150 606843298 843446006 56887585 615461315 973141730 991695015 867247297 956625493 506468088 549155122 339223599 994731194 687843508 710598290 996052219 998113157 289488241 523007806 291595547 774936105 300044537 393338927 474045340 768726764 360508972 823963200 179020962 668697139 10139417 81888430 863784066 916166330 247879121 388424137 570072046 571382773 170935953 792392189 35137516 939755905 946988253 955095429 191804947 203485684 479520888 514089120 899023302 972548545 944833659 951529709 654310727 975982783 85303753 620544776 677681227 882824487 957189999 973223692 144309285 531204344 582019181 737032169 427231703 626669409 370945838 736457493 891965930 917619832 872543930 903701310 75376500 515260547 469922117 918323312 491322417 655705546 711148670 892681290 965929357 983179252 781514535 814947124 586813278 693209802 960973533 997494116 693297501 908738154 274945336 941971885 912731564 920492844 578045654 593194832 694454535 974615190 635522638 699646228 203041677 526871368 850564043 877064741 525550794 787142783 120349441 954098048 87112223 542961930 129658114 166263328 887874232 929034567 792742155 970104834 348627716 656411741 310964561 868590456 905369307 905504015 982568847 992539751 814191966 921443902 607795290 891013463 279062275 606451546 383893967 892736482 607904041 731805793 664535012 672583829 695143330 770637946 571470729 896509560 342350252 435577425 432588670 903177822 519389517 980069299 451893211 784793974 660147982 944551903 410932432 533448736 57904215 167227558 924888241 925396367 44897370 612170231 565708849 851461737 16965433 718134212 150304191 471132987 300282059 792668074 799977252 869378185 715181279 870574140 947362706 991944854 879212390 984564357 739286318 910866816 185990830 329919262 298245302 327073619 272458738 290848674 801718603 914611616 214880721 720869481 386055990 504761413 878417495 982644782 650630390 769440869 196807410 955722148 402128755 921990015 851991874 886041367 192675230 916579146 775261462 837890107 295475307 578761300 948788069 981760194 30836827 696775285 277887062 358257925 974354081 976779350 220167589 628294507 401550655 472842609 209523843 745798073 667968384 819080515 752909146 932993993 835150456 976992530 616171460 851774001 841514532 976855811 648454485 839075455 953462018 991250273 803643558 824663911 193350983 236002882 887424780 948774993 293153955 835766896 488318702 767089236 575596308 695550790 120975195 548592468 176276116 302970551 938912330 971267712 98482844 634789285 502117934 888899526 616022127 780882572 284303565 628168262 511164961 638522525 55512581 828624636 353336736 926052919 506783425 599918465 305196789 902570198 659625694 803213947 742587610 876635228 50571311 204860845 522139991 582900014 134080312 806813787 873632953 935650695 249179301 600582213 820068858 996091052 762070557 816280432 114032179 943860775 986973313 995289150 689839988 691369189 747701701 928256487 615505855 756963118 195889687 313246912 602554334 612990621 476522483 617941836 987941743 997352080 60100632 407759345 411635652 905995629 367057974 412685997 661626726 663473883 102037293 951195783 102678915 580556097 321252770 955021595 582267765 692612145 742693420 773321663 38996851 125859719 580013879 935952956 215578645 655832622 712175726 785213748 751742035 933819012 430373808 550344905 340431465 542807346 62526183 779838665 289754013 915142097 685939813 873555060 203018803 482550310 845239440 956218880 987756353 996901244 876915659 878426231 770798201 960817171 814726531 883359193 358969943 936649769 258104391 482069079 128044994 878103758 558231983 909228756 652875385 755292885 991463493 996313837 562887789 697712525 106923491 585571400 15964835 725023100 342933278 816796070 524758815 616576156 961080945 961803819 486289390 488431388 885454402 921582831 507721956 876951250 993590481 998647470 318231514 702933333 57274945 917701354 992518434 999281145 430198993 820797276 441901464 519511290 261559575 420970345 157151472 316004677 889698896 957016321 235390353 484687090 703648309 880016183 215281908 852590669 561457503 764960405 995122028 998460260 574240383 628657841 453957821 760090312 283663789 853547177 342698815 858363069 862262471 938717396 598373709 748755589 686245320 754412177 500186155 701872686 650427142 679846462 751008257 791026076 426674815 959380726 819713279 893930819 770861341 873967855 604632247 685315539 657886969 770275386 245743662 771045453 361514573 802151941 774633905 799563314 292276402 545277835 226724117 655436889 966603968 974268244 57956797 726975653 601270988 619524220 864454682 921663452 603728011 957869565 872112283 907515594 963889155 996793300 678545245 966038589 586932733 593506706 130476998 697742414 758162620 801749804 383664801 971804419 389528990 444245006 529036785 621086924 137213451 682891919 805421650 983521449 319179643 707720609 327890458 520961089 624519661 981170201 210640225 951474456 964855549 995692934 385511028 800970767 962413968 990928516 601379261 757742986 896885908 919876272 851059531 897771174 964293704 993754907 192274209 210783942 852527238 991967033 790615718 898110322 745176859 949673557 105392367 495918118 237456182 858967579 201247245 707049799 829191684 850320480 579361741 671911277 376505930 906695691 420402771 573428986 691049801 865032435 860162952 994372234 80157684 747994129 853319689 879837424 319216294 540681591 607349207 776639270 38323977 403698829 330184279 493352974 731313504 746160682 997159637 999153521 579197873 839969693 209018939 711243829 290354888 757698443 65233533 695850879 29200449 910486213 558509296 781357636 488691848 882226360 414313144 901657744 629394765 974838658 913621255 917555002 733784684 874675548 669544632 792922515 850837653 937670686 3723520 414433638 476897157 940468456 443521464 921330253 933649653 953628565 102699745 812942829 946728172 998028053 360201740 606417429 786731135 849889380 328450780 547314823 243766886 364975034 119741518 280636416 350870581 632376454 982705784 986876787 946712608 995902396 459520861 542809713 664640464 930437807 40424475 96687113 217585786 855308693 175540422 962106526 823923173 920950069 455196631 486280469 909736592 959695000 884700636 949535143 518261255 992757948 225456884 668493774 795624631 983441721 261584429 721470138 69082188 868731312 169883331 873829203 736319406 750921785 582109267 652970223 646722137 668400020 854005412 925029897 639036185 777638425 235353831 395580926 940047669 993889987 625263605 676444833 710544852 851368295 946954775 974982005 651963027 877072450 983599540 989116262 200860106 406196032 883542264 930244584 840859228 977979291 120511830 348123502 538393589 607990937 396677010 528728361 492729185 778915789 241347541 854140195 653217764 925706006 334562331 726354922 100565180 990674370 154625441 852236769 892608974 912083890 917913517 927762065 957668912 979098937 576863597 630688263 49914564 266095092 549065431 885795465 348736580 952928814 201798547 822422275 828943546 922354010 504976563 891145437 707832095 952915383 324663325 367289745 143877579 966595466 732030448 883394647 9459005 227932117 297557517 440485861 874166075 943043124 827039259 833009524 53140139 318368211 12708480 640844980 4215737 880871770 403413832 696128787 859018837 970579606 917750090 951579781 746116087 937305506 243661475 937191220 670366790 853613111 174973328 941010928 596646439 690026546 565919223 863559742 740873043 958332757 265695324 719226925 272163808 322187549 483528382 712036679 509004342 541875381 149828083 362367324 115695111 254679388 150275916 481526514 409877404 417257380 674118377 825869914 325552074 770161243 977235825 997793785 79426306 196076527 398981547 463593870 662921210 976783058 656258021 850391272 678114351 949171025 413571908 886028310 706365085 770131706 447009948 886644515 130268461 830111560 387140152 696317688 686558603 986542498 18963956 835941964 188824130 878520535 407212735 579258804 350525059 437050904 193299565 830348990 839978935 882412328 187221601 691132017 74811538 593203721 315007405 688801501 752551872 864213428 941962884 996746854 690915819 955178433 573167570 816291658 54645948 93169662 529100031 696033587 118601466 484381990 806159455 912897249 723346344 935467148 829286764 915276215 521841426 918422350 170191138 533849556 13853808 517603406 545797460 676525037 181517014 477551219 70370694 127980249 345400514 682166292 428684117 749186753 493564033 641068077 792462053 851360222 706297201 984805933 615043703 745894013 777247883 853110884 977197086 998721682 455833313 695109756 910434256 988631814 258386140 835480068 450844136 779291538 233900794 406480897 928180207 961392614 537987387 939239044 643189877 822229025 955079022 992121675 118104356 598083310 471433021 661388767 476941719 518620148 908162277 916477400 217113468 866485337 954002068 965164301 531373716 654125765 418220930 660462292 88688570 327158838 162223230 739889242 868491946 879097087 292272403 917905404 369857419 492900938 290319851 393136030 597004445 899379310 183708326 275430932 900908145 930155714 481389391 617097761 863238969 992693653 944732002 972337557 688740979 974371162 70590503 907176774 185689381 451400893 54855247 731227091 968785983 970006014 924270671 943865289 430048759 693069018 429738212 652470392 322091115 718516135 786570249 851584804 648264755 854613807 958215871 971034458 596704387 871454512 389770786 817103296 160713389 905947729 941709823 968903514 730275592 968812902 56750295 111002041 415536247 815074277 972661260 975167953 148522378 167030132 4789953 76258743 798957523 996987194 437826266 890703984 190839294 964129167 184567956 361680536 165495164 347450943 871805260 916735491 370139191 971006703 112099673 343212802 800923450 914722166 397920984 805049272 665195794 710192960 8758343 174598004 769859738 972432769 711190360 951345624 916159801 979142934 188197012 241648287 798712610 991199259 511682859 615666594 480975483 623257983 555677983 968819250 367779195 755672366 924422924 952083396 580895890 694969092 332642421 921836100 239477903 398696950 305295528 891972315 124010848 660515057 688959568 923516086 612061625 791743031 517651188 922606075 135494492 706065567 236212293 486606516 440121441 521782089 688984289 791076701 587075025 979326199 791496229 907922522 46696643 618668396 923003644 990727214 295030179 747388785 539932092 736995376 738563910 755964803 861384697 933026925 351360995 574260449 791829627 930476630 832241706 935313268 695423569 796751854 817179902 904083069 36091902 803929440 206393167 618272440 719552361 929220278 362046234 986212462 76900154 886995635 21694984 907668330 261729003 457964915 256377090 275763509 889433142 914453639 436979280 969635100 173825384 524643410 777747981 779828456 755817380 952913003 975479345 979125224 492067017 978672177 81322167 410700823 403994485 627392224 298990952 650315612 612307093 686694216 317108691 510155151 802555887 847132422 899883430 920265472 655792751 907783291 178621422 748484716 367446495 370953457 260151368 736537937 914916123 953214406 671087544 725358399 889129890 996285443 779017228 858957645 636871570 858495684 426265271 675277642 393971914 493639092 354961951 708120897 636154268 674385713 240742251 496480048 515390368 732456750 357111291 726064507 216775400 800470606 872625013 990664251 495699307 681782227 400788971 835871004 39193931 926949698 450851694 828601053 893213097 955282277 256107848 282330179 818849685 856475539 841831131 848225671 382813139 418839177 173158 245606991 987989576 994440529 772832141 977547608 356745546 359268385 832973251 915181329 629375958 934903985 552761300 752843479 329133923 987201898 352526137 692709461 833972967 881294400 879031605 967881767 210062493 623299988 236672970 998736439 316877273 317326213 845420869 933876955 545842096 942507144 43273857 526694421 648937147 936976863 816168379 982946807 755810054 795677246 307019408 873411504 902156714 919505227 655737109 964801968 302321997 395876496 955770973 979607599 38723972 145043620 952663810 977261582 254855385 685987012 374891426 684946561 244550617 938941169 557061304 918334619 27897885 369677522 474603815 898006027 770314089 984895429 555598740 698929838 519910796 732976183 139369678 477722330 637743702 727674071 482439991 570858563 182446172 851735688 343804479 813923789 685429251 955750602 51774965 758125784 466547407 676246749 83531099 959171946 429061043 700717171 962622531 981115227 809647119 909435487 158343560 777028389 692332888 885428667 668604831 953172539 173186780 790341193 171720541 941013746 90681669 890591394 431280736 795030382 226108899 609601989 874236778 986608463 589791795 836662902 597051684 735148346 592726014 599689055 556255011 606501863 858270803 950726441 972403269 985273249 284031105 448191696 186240797 374484701 550382658 619007212 205984114 366909014 207212380 575311043 888169110 964207501 187601589 316029835 681139398 751064194 819175487 820735583 908771655 975908057 82663343 993680088 805569983 914822729 685260204 725916145 799322499 896861474 905783602 908225133 62334899 400224291 519576578 814262357 718356377 729431164 182363039 494500840 902685021 966498272 224521596 396067327 709248283 778446457 500482144 630016731 632753363 809539081 523955865 982929914 757172886 831939922 621497376 762454528 806055924 964284666 72085130 675904293 702035235 717478246 18655630 211019570 603992779 686532972 151367564 923325904 575949351 715761705 456619552 480392166 877603687 920961068 44029901 355697987 346497820 765135608 309179288 795411808 933436219 990390706 243061292 521090260 670653133 687472047 337578072 408832935 605968970 805510071 563255015 869552076 342561596 787448849 13720979 159946067 402794777 525654042 817819890 943711040 496920275 794490605 493081831 996682576 289539783 371704245 198205804 283807119 198213559 948975635 76123745 718948286 212101211 433080338 74664219 112227242 603663133 814942939 498800978 605593406 636201204 925057210 208565824 530767068 330410136 437973855 181207106 416523072 825918136 879500199 412421706 588531449 554469147 708593585 479144291 874474632 158684915 435331314 177533203 867415798 693645857 873376870 515926469 898148539 925218008 963912853 493614027 855390451 26269879 966653989 981040324 981062313 858930895 900713441 145231940 727867269 646213612 823291035 978620443 997690260 427438800 749699493 418000065 634049544 975699429 996558136 98377199 982846727 255810873 265708694 920884633 933327694 844310235 957494515 320933328 816951307 614134089 853403414 468853200 595370753 861245983 985198868 383732794 891330758 338591758 528025873 137977153 927824969 378502810 450702155 526713289 591248149 376310058 579098890 917229488 938443241 805808217 874232966 293859491 699060382 861912515 919980947 216642464 581686564 948765301 996687166 940680268 998809734 190979108 441234236 91192056 116207932 420077840 837621250 871454168 898149148 877473566 993236876 489026057 813174121 863835975 896014484 759452889 881810524 111468907 150947510 572126653 753116929 80608207 650044023 837633256 912267013 590071382 921420815 275138933 603520961 553170868 659976751 101370188 661023840 768568522 992168865 101270166 124009089 681400873 702577247 399461662 806522360 481812125 877434591 55259202 784273763 159074618 612253209 327279330 434622973 265077072 688303270 778025621 815040675 401587883 689748183 381992057 481575359 936382558 965229827 477297139 594805549 116380407 590174301 938777182 965874587 453734579 940430301 860648101 877085094 119920026 422543463 377448312 595284045 711531229 939507170 983468781 989138085 568223073 649086237 361544392 504446572 557704334 682753666 40281989 877477289 301415487 462924869 451965806 819397192 904068031 980279928 847843607 906874743 124661277 144468778 952741321 957974041 870097053 884279448 560567957 876438670 217633289 682043512 8084258 966587610 73730665 625870078 323182132 991836995 446740877 662320185 206084829 437924481 872463216 938934777 640802343 829471228 518605453 692101072 88397883 629828245 312147600 485303930 681173778 761976935 559130916 600328697 889835177 934985906 785375269 855604299 192935065 856451654 499093372 786626835 692560216 757025622 313035119 958332038 148669252 196613688 873850739 889436591 302483697 424689410 571895524 933844880 426444901 519446051 809685553 959164369 106130446 360193865 913677552 918080696 751089646 755714358 974656952 982353161 894201473 899017727 21000253 224080514 321593534 512989616 203286107 514379633 607961637 802863109 394675746 741491376 104817152 232165999 905383050 969415153 400582861 889278114 654893029 888024887 112784198 517326305 492064245 642287802 202407091 585059823 409388190 767743356 606844415 856586121 608563806 754187503 747964601 863910722 835418605 839225804 335490348 630618007 488933859 541101006 685480198 786854376 744734785 760398954 208015707 723184333 545924451 926998068 977010696 978365866 398605685 462046613 294848146 502792934 834265104 865117697 318934497 738944474 578221088 741932398 835130210 839224536 822970264 982432130 552924024 691459253 773609842 785147385 257277977 856705967 8694159 741829161 383285876 841990643 202649551 600259124 643600310 718018423 132724939 420328272 321000355 945043070 308457446 440922795 242575808 506337064 913257966 964354191 437200382 949540482 564699299 842499932 817973707 936519287 219873744 626009546 495768240 841259909 58700149 332450922 562593512 689263421 135448745 769875722 845694431 910925530 574515726 682970333 496973878 720724316 818729553 892068383 601530564 734273316 361866428 462070980 29811363 149165627 334124554 472123454 567564983 752712890 374168625 898762898 488513709 786240433 97135764 113015859 523328689 655395984 847631633 852608494 664994461 743187984 117994009 394258012 276725332 874238348 109105232 204138971 964250669 972229280 352235003 752638838 402665896 861230776 108953609 668338703 138517450 945640280 28853849 243494907 778062230 793232762 938356048 998352966 628328288 755668560 764920361 940496094 328377327 493119100 812382913 951845338 504373611 602503204 57378134 346960548 424795023 860417042 470378310 759123591 111061542 450289226 291756802 513949113 43507369 955980735 796449570 979404813 857294002 887316586 586754927 911166687 845505858 965086543 359025732 501831614 766720523 826434334 504665827 746351978 418872903 855331079 969643538 987286138 2161128 76381556 456205529 632193625 713873155 866544066 904037562 914038561 444510196 695439981 927887693 944191619 35016053 840064827 36274574 959608915 463965025 833980079 574894798 828701711 638126846 980952007 931007276 968013481 622532650 705295158 928984453 995821400 218287206 938141793 888447263 991729837 160146538 695716780 895690103 954690397 126173742 732516208 689727082 959308417 643414288 956519203 718551020 968166936 503742699 669953802 932427381 942952624 432187493 861303508 91805167 812570626 657213573 951228528 537847638 569418804 865955006 875867475 42549414 265752909 222240779 225256786 984614230 990931726 207987765 213549876 408721282 996086797 905792956 991428120 451794797 565881557 698704987 846054785 897032329 975246619 894779418 949584686 746223203 817963458 251352186 628018819 281762842 506992899 43025051 443339441 373459723 956035671 426100753 952918961 539895689 942334674 25932062 523582588 903425427 958148749 695792060 927609918 720673737 938938601 378406086 521292913 776781315 878066492 886897795 983666386 842966545 936467575 349079702 605629624 616351457 928064591 135922620 702040935 231490457 837323452 72151524 804806228 996523408 998078997 327827217 466443566 465447614 587659460 740571073 773407131 769041660 877947620 265671470 386872837 862584103 885111736 726736934 872735476 828821484 956248296 115511997 444902663 432536614 760546285 289820358 312151315 597236122 609500246 387359866 676516977 522659841 554764212 927716261 994217320 374999172 637406132 621348655 785751928 970365613 971197903 889769503 985835606 209103746 727091953 887197734 938570674 147820383 937155209 168688044 308745079 893649141 937866593 388280384 594393653 675542980 747494358 172360020 245325003 345064967 597897319 686238383 963555226 273508989 819968763 37703474 370063389 620843876 919553172 146169687 789426727 584037702 795005480 497701393 620766109 180903402 459189845 763379163 985926196 672565974 753124210 488777183 944390200 664315411 741479251 203948942 414117131 744154504 846610878 511363551 880573668 77190390 474722780 933673487 990027327 375003341 863349375 928149485 968798866 736149142 771072002 369967171 835114710 343819785 660883967 308101177 578682796 769339136 979353083 568625389 709718905 808468268 998873486 471588579 954689889 242505273 406064556 58555134 161267068 174734109 469033570 767610538 809361566 931237394 947791761 968832502 988488692 909983882 998578033 731665839 947618073 348012992 818139233 208220908 365451718 925314334 994668423 61864429 600627963 741883993 897386551 402576368 959811103 653807249 826761563 442335228 831323586 414179217 950656339 804003710 807512431 686200691 863392008 348344290 717555300 72368448 849511182 270196135 484723372 312239481 621841893 968774322 975396040 134612384 486636461 470370817 487688638 806046736 887923881 670791012 783895476 421159081 964346093 808853476 921113817 590425991 900401391 241830076 369499836 765681263 884650788 963408109 971479735 957714765 963632399 569886059 673818860 726362711 903518743 19752835 137364210 561385654 653218012 237889553 448838813 260950343 870749491 369612918 553463224 984058600 993622054 698820026 947741987 154559251 760680106 925139357 996449936 197705600 843341306 535329025 669326983 710575421 860529341 81079780 979049883 881803329 921400545 208228628 939981914 515525187 608242422 154877670 927040041 162488228 739818238 644039304 670887257 838289718 854490452 666403017 761925030 22773477 830876179 937568164 984217860 41532327 798360962 381082154 534163521 974613941 982105076 264206904 337919057 90764447 950162176 734719420 770325727 398727402 796279837 485109949 938521543 831805499 944481288 610629258 929459289 82240897 985956277 944073104 969805751 635802863 739589448 310139336 917028682 641430971 875955906 388476383 392523826 73971551 189361457 667787002 904708339 302126573 458546289 462826277 479146469 862585868 986352505 732323026 896609029 429495626 558037079 990683765 997695348 934476504 983839790 974368120 989629327 769746674 839693316 246733049 980075082 378095840 631494274 110612995 993275650 526442792 655535907 213008779 236697785 464005132 596462750 405707689 816724184 105421807 770889279 991191565 994026802 992406754 999226264 118940095 937983707 646795558 910071427 36140495 495326019 168930988 911517877 775873534 876027885 703357728 909867994 65817445 494567127 3940901 584122051 896038145 904503844 803891314 949418256 457794816 838586335 989569772 989820183 70162928 928204723 75129332 637904382 614987763 732694574 660226828 894717857 510829493 909583902 781731285 799854605 566818808 819626443 154458100 257184512 845159192 920599029 612574565 804949220 171484252 974815549 185469024 522173542 955627813 977921330 997572557 997750978 546821667 881270919 551602854 644959741 129685749 452884843 573253641 705534017 764447026 872883744 356364351 991015666 469507663 775801961 474694915 645552834 9389166 774787838 695907928 829404626 635130838 899763645 933433818 997704758 543402461 582155243 277356068 422459817 13953601 685571510 540795422 675255968 269062487 291009258 307287646 846747075 542741467 607145808 206921299 731568148 41223911 492481012 550566579 838681204 923707833 965014916 120957608 862382131 833178398 942795303 830625053 913968517 924522347 959052724 65993326 162714708 915783822 981443658 670377457 968548351 677826259 934423776 77684390 317174904 201010756 674428741 981760272 997198805 183953637 417599987 247252799 740220340 105440239 529156067 102447172 431885634 970025928 977260293 484449572 819158107 246958922 315637593 318482015 671252014 504800148 507570971 228859413 980649670 709920053 732711305 998121366 998789720 750374004 893798033 742666976 825363154 871665267 947442405 549615406 834115410 187635758 213740296 600645598 824000254 328535138 431834340 169828961 247102656 961122214 991181657 227511203 866762672 954648973 967401222 289799736 886345199 552526949 735520479 257572136 710827952 853807851 876263855 805707450 889972520 790379754 959708068 968968830 974474135 727808667 851892767 188168690 245979111 669680565 772807896 89874987 952154783 400191150 787032382 376878362 746103380 16805989 987171682 104655960 715721419 966803424 972473705 957246722 966636405 5021327 102190116 653224176 966095378 905641371 934695578 665699426 816584993 681896946 859397439 830172089 937162727 4104757 437012936 195882223 203855416 439143827 922336862 276547044 426065321 912840331 957919266 363294514 595059101 288484201 549591633 539769671 823749459 214424064 422296344 95351831 899676090 807720982 837711892 214365826 337453366 263851825 637089059 909512580 940490713 115706505 793034646 740422004 816761147 563869933 951202528 652134718 976296114 719268022 830730495 601808240 987366081 23879836 288388737 773590073 972042726 452395983 834739919 893272275 960369370 676016077 924080186 597599361 633215519 421427456 911948441 1099892 527968190 731397764 812779504 785542984 882915287 962685953 988338545 637458276 645393905 191892318 848114602 609720694 994553961 756472909 835037096 447203461 586925063 350104592 929410497 651166623 706747763 282067241 959269028 226086502 446815721 615232914 898743542 197285525 690067202 215841729 601230050 972076613 992421033 402474236 574717577 16333920 429787646 890534625 997038909 89632859 970844869 798826473 941098930 352208437 509123437 660200739 998279633 541940920 670771800 480184320 600649912 267000100 337667616 598106818 991460129 662177901 897472066 922205424 947537093 776811031 916604280 267778247 608112434 258252200 654371931 710717620 804007992 612294324 730922744 977656647 991106155 612592943 767835130 332389567 412765030 679205039 704260591 294921557 520857750 347340758 763562670 857569111 961134105 413701832 603405289 242019206 448126599 109479354 621879948 358787582 944708003 635019816 689460571 175758217 731699219 41953199 584777396 482509068 966043157 453254154 496275314 901615266 937266966 867736835 957605953 735780250 745500414 546476968 599133866 128684610 651358860 646867270 706671882 520747154 705804765 226861894 306828730 170830396 411792730 820288287 924231484 925433437 937813784 818640027 872518704 205652566 262162822 277833919 792431581 822455607 872906577 544964035 992316254 36588348 898057185 262446563 816499251 160041129 417343067 755836848 891800778 443781528 664943094 859469472 968355249 439982026 756740371 354557626 788143764 31677934 892868108 720465951 924918896 855027705 903449351 411424285 549801951 638000345 872291227 279452232 576165404 940515990 947998325 55312394 709277695 585135918 768344084 280148160 369336149 677393222 853352081 680943859 874379898 511339721 846206506 378683982 683661917 764057988 774235433 408134106 935999683 575076534 742132296 981977783 986109626 27299566 821754995 123079949 170168852 687030067 740744870 481231878 539499788 96708169 550614965 801243555 845415006 666221251 818069569 722507244 725131108 88596080 114639374 814451240 817027304 406474042 744335945 701426731 888275907 732553390 882036047 29461488 492131766 434535603 703996526 94757505 109667746 254803663 531274101 518514244 612716029 573028033 712836590 214982333 331942459 926348996 965022393 499489226 639824822 15966824 822114059 116710488 924938529 259523252 367265383 244779394 493200687 183266166 653663130 49530079 570617106 216691048 584111273 650332217 751082490 983103073 997820434 720482817 880747458 572341255 772094001 707548225 889074945 956788178 981172672 738421751 920601126 901570761 937774911 339736851 825155779 71953744 394314201 313773146 908103981 880628414 914423146 240683073 969550376 621374729 807136655 91123397 145240839 403936200 469915064 115915091 761416617 936771916 977898865 788664830 989777433 623284355 825301273 99913058 211450451 32540061 856058133 132680834 984615190 244720654 947592180 208449449 454392502 152962958 454275551 838768462 987967648 328118794 420108760 10055114 842442481 158784073 821512500 751349465 899718321 164762980 302424861 55550498 808357445 584898751 796295397 573938425 677505588 50728885 765371641 21413914 213550887 555707818 926653426 379483985 806802258 980960592 990683627 781881953 792900549 291165615 802074888 117971705 533014227 104447061 645571000 917271740 951120569 247573959 927312487 668827869 972152009 225985183 546742818 379835268 542103628 581826861 890123307 322307828 688058730 537007439 926894896 883395745 945720864 461942792 676182538 894092041 917881095 560411899 735266732 149599110 201445962 964372172 976307254 19377313 396929031 682388696 939018322 13214254 939499524 737914395 752270571 581503225 583356921 756924476 931239961 535399310 699106863 74515086 425932309 439144295 650446839 492575666 903330204 33524642 926514331 890772498 899599758 347027441 626015374 27428995 910738191 676788104 893962386 862409975 899533184 298086344 778937430 575109965 969141185 814788595 995464143 379034804 989181976 322895135 480375106 400521890 547525942 359066706 911411551 837701876 879374159 586938959 661885144 324653754 936074032 649309898 923031583 155659729 628170902 648206052 793436048 397586602 619787708 965198294 986355567 98917620 606914318 467433825 677051836 121957287 507647602 379579833 980397590 921332017 956005286 720146948 767084648 376507106 556872737 517510515 879272776 491767167 634481742 646021782 842244962 44835734 757316446 511339876 831284180 520681687 684712354 716082334 991160262 446018997 602934663 135719099 731731210 198436534 736658758 801832598 954615800 415196592 932060688 196131396 214615137 821613803 995225938 76326122 201526698 961324472 991694070 399562607 536712543 634573032 658756436 303642715 335073846 806461560 973336427 836207764 991300546 43072485 177997479 964383814 995161399 807447577 950386177 285666064 693651112 31385594 990132035 678352859 837885003 246883356 374827193 576899443 658110324 136080250 476600326 897091148 901407065 751170186 793572406 8073329 297822628 921164649 969316386 350253549 646260059 321127472 374436441 764428834 884536190 425033488 718260494 479959855 821825632 971989379 991375164 889145719 905502401 343092152 770501021 432299629 681338777 719763586 819437628 474346054 579012197 502592500 534790805 422211792 696390997 136910430 501028683 519522669 722383538 144518082 881255133 308980538 896664884 230130263 231168153 716926814 778755344 509710496 536941022 333726722 872695210 916259809 952385646 423683954 606920039 374560863 864044085 797565060 911054330 316427690 502198978 479711439 585627852 164841642 213606579 764448810 854046763 109472901 587095448 714512516 924809757 978807393 980195446 692579325 967457617 747457636 932389042 405559367 901046568 882590665 892212299 914452065 955776920 164834426 584034370 351342892 733397490 874811338 991213495 832893998 986150031 368579641 535339383 560408674 987690749 949368639 956158981 894759485 950716199 139128718 534648981 803362408 809603538 839457435 950459560 700530010 773670320 543248877 909403689 550095182 803411923 875364488 897349097 375780329 625747206 907272750 928256713 740525339 978963636 523987198 639814110 94723821 334159312 791770157 894031361 203837084 967494923 813821818 858259344 852849585 943701829 948368063 981209717 993961441 997480990 802964384 979335116 747093442 933923369 224250286 667853598 147562652 949090186 937726089 971706716 12470261 170380287 338008048 792769672 389896951 928281202 460466539 743951747 768448359 807395755 830013113 859855190 405152889 873987404 183105459 316060044 644741465 707872604 841488155 860592396 520046004 812034799 501739330 912991916 506917814 531606669 303332476 611598074 153941329 194850874 398891002 927159672 91308474 719866708 640408947 994439233 118050367 158042228 312499262 972076131 373274624 824877576 850960411 888755951 193992048 552742789 930327000 963979433 638409928 924071013 660137616 923442712 539510266 750232919 21205735 568000455 177026612 877115677 766872151 830851683 890081948 936317599 904653429 963788059 859666157 901350079 678660431 817948068 358795536 739056738 945335988 960974950 289852292 770211918 919861513 973209477 442373565 738612778 794272305 940119684 34147231 857230298 624753721 632535351 170064921 923807544 943800919 964473783 728488397 958644961 345929444 774560857 551425493 787766155 170895312 585382481 60526324 366164701 553219649 894424363 412519430 533332199 239807734 616056128 804476201 989901072 645034038 898593581 76651320 614272989 385620075 646282579 692841697 828825325 759943302 811681269 980305336 997588176 91261489 788916969 152749597 542193304 261689020 749266729 993012681 997612106 395665681 991109831 681420615 814697686 773565317 786841312 764357367 961144260 420728784 728956482 716669538 824860804 819735306 836486864 131350595 872391518 160930379 164639849 762838250 906700650 94328669 334804878 356956311 562997291 360862444 798367394 19775177 127759885 964526149 981218499 615846298 635463938 223098924 733179890 475189076 509478946 855371762 896507720 491398192 563242895 85267641 923073907 850219064 896878112 25884729 925622293 103029199 473699726 891669103 987012678 565775427 843349071 369420859 969957556 839689014 909413965 65401048 930364587 412316210 916067640 822086468 869032909 924827607 927516581 410474404 809626297 783036267 816701566 413386401 835986725 629459176 793859085 4320245 910580247 616483343 670494543 16065194 524012663 531540328 659762171 731833948 792483580 494681280 861964573 84228444 116145099 487878370 800770943 139605087 610747257 60056404 296144314 114191221 873327961 705086499 724719251 906881525 987692602 718957457 981603476 35283531 141824196 424127268 671761818 955450512 990308499 770642699 807104397 287733059 926223925 168080190 638921924 635009403 792795006 409846896 942792597 99044297 154982842 966080079 979223514 514268436 865872238 352742732 823784344 169382418 289651857 577715760 619859625 69317491 180490592 119119958 352549024 410000420 590576546 568819374 956433817 520286978 681135178 745169749 911806442 661646086 898811715 624676765 918127080 43277510 975290565 307814124 874770883 634345183 951326013 658633996 671956581 207797878 558765410 189868905 506385153 172890791 577876187 551805729 994674000 865806224 900286936 468691535 882614883 326140832 404873278 217894900 729310935 717098554 978210752 926212204 994036085 613000740 897601602 573553389 749851036 339968670 593965855 22281450 25581432 615346344 917779428 108656541 489763112 84698247 676202175 17335988 319303221 128833951 412891814 675021052 684572488 312963337 454243816 13656556 393522999 437882497 730793755 528672812 588290847 919332806 954262908 14588690 136429780 121744197 686266973 599402069 960022408 294529206 810546598 316518820 595941008 589041600 898967307 496920892 901140939 38392619 862981798 590930784 657167774 612902705 790846117 705759038 895690520 402296985 707068729 422403494 716038841 942943695 988702455 962027206 984593661 128813617 693480087 926831449 990879754 584299878 659928962 33991818 513641614 992156995 997059429 797248344 923799713 701828360 927841578 432658089 774123352 953403508 960057099 293978779 702440728 763658098 855764938 543932449 733223524 307907371 447500597 699124209 986263325 912764585 983799953 238493719 294051460 142952614 721383703 631651061 905274298 294032067 396248744 62511834 551674383 770394940 985183654 438568229 682646927 979121661 999278944 894368086 938794943 543582944 893199203 560654747 823560311 885305274 923031624 461538188 803708218 195740404 203302532 957288290 960707124 707087264 872254312 946109118 966851375 203143477 640964099 800005217 899650838 417026528 861671149 762618952 930092507 406972648 445042947 719082432 985151387 930809606 931482660 197790615 359432786 249635716 597431514 731272595 794389958 967726739 989313111 943489527 947458533 360420012 479843737 145667047 164860397 356940329 909370457 754079545 812155732 542312323 809941916 238528658 967949590 751036584 972922554 625610530 848767199 716960261 862067469 462932993 784455644 136676650 683156059 2566385 217521094 304118879 722781957 292311679 599577869 372906966 591924711 370248968 925771955 817990807 854817605 734588629 949467406 900123541 986841417 735701334 907969998 958394067 966961415 822419675 909488963 534677834 763676944 466959193 706389715 480458957 664248654 570183979 667719914 228812890 422609744 415641779 422516431 427996895 585661957 785235900 923363410 37835045 309523605 88487016 904440718 240471597 514739337 363074390 758582969 308997759 828623113 250818744 617520067 670570475 687621970 523413453 591390451 370346657 599811048 258390967 278516489 973308654 991062004 20013586 655896403 720553944 959414454 773102259 816964162 975258931 998373310 47923610 996005472 852670139 891312155 428884288 930923361 972195965 974049551 524551852 880188296 672260518 983713997 154426404 862824823 746717986 893939542 281875338 316328802 140177504 581322945 715900218 853671757 641818540 713046998 405684509 946325237 186835829 238990123 64166150 760369804 661888163 971020693 779615644 863626190 265574793 573855593 330494204 637149697 229402282 258433199 764710400 779863719 898825134 966905005 770392463 954866581 486863357 581474894 710699730 971124872 421206492 731923648 173677879 238839883 527797313 616518083 577147215 804217747 789477594 816574265 809122078 945984119 525467158 750669472 979824491 992594178 992622605 997529501 77812359 190049087 782306605 853660714 822471585 853685175 157183643 739756788 406827708 689341088 499229078 896634093 611981382 704094705 264574015 384244105 894922229 933400762 658282304 973413781 850896690 877952209 769218497 926484606 468811495 726725970 148597807 664255075 525017174 616463663 201253968 675307456 6610889 826718429 644974619 877062017 502167448 892546125 634343360 709514787 124216485 488173159 862253922 946748582 422272562 883604153 867870691 990412300 348326105 520043773 96140837 947762405 703716176 908639327 310463285 608036193 704353935 898391632 380076184 615370399 397933005 742872047 830084300 971193361 350148618 865523870 933724727 956655183 209571175 603423992 376212142 849602565 101273293 507071408 187810042 230094473 650345609 834177942 90387601 856610829 17562672 995966325 673892169 784901064 279171651 593649306 465667191 988047697 187707632 622366236 462618881 559058137 276291537 678091605 744551828 755416264 589058961 790967071 359021453 580882472 367426162 820432182 62308058 736749800 57145128 114441940 491409045 629003781 997755513 997946809 447306666 914269676 197922366 938768382 964421533 965171215 883403466 886623687 424297518 756806583 311870157 467681571 719537638 953695059 314807788 418184589 533748560 710376689 464598872 765104999 719047803 970786365 770421925 816401061 123729013 532511436 800885530 835469763 774731925 789792514 843148162 892388674 988346487 989401431 214835152 911073502 232915086 913946437 136193396 738069919 267150377 918558927 744730094 788944350 852279655 980559872 853871727 948029710 880614214 911470633 97855764 978810322 738492365 910368163 174785069 358882984 183694200 503062510 848400400 902954549 97347260 183670575 489471288 660332312 187836289 708216647 52958260 781585522 212807316 875874964 528894504 539244036 157542950 276558777 668817923 711501120 771607084 860177237 372745040 809955165 86818155 499639612 329345428 771657377 226294841 702485217 579321450 847355643 597223944 850749845 194967729 820141915 357772701 882904714 486456994 941023429 789017078 950809968 727460594 781164460 16297906 700055262 391281856 718608032 670248145 864050122 406952274 777457083 972348121 998963584 150386903 900243295 963498110 998674518 483279258 725057106 391929866 430623185 805454801 894659142 844271980 886682370 994846785 997034697 440117236 707194152 134613390 239901809 177150832 806943169 654555126 666031841 933773867 948041269 527408187 860930189 38627451 562539368 569980360 718765660 252909259 489799050 88152040 775431588 38856286 980204112 446388312 910012262 649409865 970168042 37776645 770779435 85794703 702204797 220864192 826048742 802450705 998501980 890144794 934577449 670941136 888581636 109095401 179546779 27246535 962051262 293943920 771404966 514634706 991571240 430531493 653065120 809901283 885964866 659364168 872396808 459894507 743220911 74401937 759109411 143419573 878024358 982871590 997899206 821686899 906801559 901697064 986872767 575641149 692905927 873025917 883022083 184234713 282480877 531827665 864956335 509467555 935659739 401416357 520668866 27538741 107923269 868441775 930954223 745370587 901865485 713959280 769457850 250877684 511669335 794940050 867034206 632615199 812435587 426783098 783138596 50721516 932980498 206628633 549573868 14544170 410721710 551983292 957466359 403482848 660848462 860565840 936736371 789798508 838740496 753265392 815797300 414586905 872333843 535295169 820096067 295539964 952367904 183862919 460357581 85298845 388037120 629684579 954983708 736731269 739565326 939590995 956442732 818117208 934768949 282073129 542829673 569324277 805432442 741529529 940523746 373408342 464231474 956591046 979999063 376969006 755928845 762390176 846937630 727762033 923848102 970572209 987910736 437721476 942707315 751868541 789050151 681970713 775705695 296321851 339779531 409977039 808588610 204767479 881455493 798502612 944987958 792182347 925917864 795974805 950992566 746865214 781808324 664529894 873991549 976217568 983549993 300933626 846335452 527877630 974371787 672925993 809605211 575404538 736254496 91838034 258206716 575537930 964422709 445034182 738024360 169324770 815142295 249226256 795608726 185552934 397563002 544661783 899422581 331754274 769111485 338485764 405301500 558311057 751270460 336441595 451083873 263819626 286610114 125779351 350889971 438341589 725235905 300905408 422820256 295708421 399920852 689166338 735806632 675837983 880427252 131222657 267606547 593888365 734699657 617821597 800079360 470396643 499087677 354321667 578577715 257365787 635147612 183913705 391332905 241030460 338161047 171458400 614649798 766538430 828398294 150783779 638894227 767107143 770104060 738289250 978098437 699061774 841162604 523751840 888499839 756466684 833082360 186241178 899592258 748795733 973581769 891612839 920628867 280296500 987097925 482360245 613379614 952827187 997774062 927329973 950961513 116099115 315185069 726911448 788024527 600373339 851701464 5380545 932023680 367586239 756790854 839486063 960985441 659750089 758486537 293723100 338048750 672637712 879122303 848888738 981705350 884924023 891052651 840185688 909848662 645996396 884770484 116797196 200444916 381975218 543037531 24655315 637686347 805052997 884333801 25279880 851217176 857969047 880933473 313979317 974705001 301173384 305444518 233277748 899553464 976460350 995498903 452428431 545712412 679813426 708464786 756132293 790912794 858679358 932562790 810414952 867790423 729175487 928109198 370010565 821879947 125951960 266526051 960423506 974533512 279781581 921561753 685415519 930694049 411335027 819641156 365379895 936580645 386283920 389807308 526119922 560838734 950490678 956647988 767500488 946179237 969923795 971964247 358078189 978648611 147823035 489493210 884568329 932639856 485647175 693847748 801212598 934800489 627532968 900661186 138096810 188728507 78239380 241459032 83293108 482759440 497107540 880152251 886833287 979831852 894176739 923231925 345462270 966662482 529730243 731941919 201294295 594836393 252817628 260376128 26665662 886500487 450687075 733236641 738543525 975597758 119807485 135978195 312773151 313576276 522106356 657469985 958221862 980012013 65768205 395324632 396015218 682127519 423149896 621647796 620733142 642315038 681058547 950772482 404046044 433042526 690730334 899496792 949190627 988955043 931648936 942311958 549995759 550860503 832880384 999294702 809826766 874447705 202988744 459876112 687762898 986591324 605315715 616470785 950233922 961609833 936245468 988186989 592152105 879482297 403261487 905361645 372488796 902831047 795802929 976460059 90927542 264513029 503160468 517556845 536827386 572237172 534595065 595065895 251179017 506434495 277169393 763248191 557655889 796321643 41670652 268748950 30071790 289973518 303877879 980508901 416525491 424733403 83909758 558964289 356866389 953092737 551328709 596574816 920190976 955382987 634993298 774654329 782157050 860949215 445151094 737764640 936949838 958497521 275643266 469015482 942158631 972393270 109421874 727767623 469112587 829563704 768059118 915954302 293817868 302416458 669386074 885014833 37150887 292721141 304432437 653109268 718392672 816430557 521157744 618026950 710680023 756854385 681766267 861931581 546693750 600012574 73310014 441005639 752136288 916475663 85779698 988859680 682294650 684822391 384347602 845194780 530372152 826716600 597086061 872786267 326883472 639663553 797692039 992556780 742938967 904294120 875077152 983074365 419365275 621249542 928419880 979768325 212470659 400852247 128041523 859209472 420208075 656981786 10247680 186978049 384654389 916572265 167358436 566108732 508254840 790642313 97367732 393133573 757292226 998351644 235551787 819028309 982531900 989598165 673071005 745449680 705478840 770088817 563703468 940611314 827509687 959224607 957178465 999297733 101016921 199908500 293367273 410067183 196002 418656654 331661765 424303125 512664151 555722301 425694764 856276089 260605255 610725032 627464751 706900734 802916329 948420161 802803764 933701497 441874458 483660714 743548004 855801957 221337982 465831397 856107890 954602868 428137809 481500636 720198145 760343800 965918788 974384034 721446282 878855943 588229375 801725749 424698777 532654751 401036698 845665251 651813784 967384857 479916507 616342938 508660980 692857714 382848356 675040334 383340817 905032592 473699835 730199679 572199932 848475708 41673996 312330013 305502435 864647777 212638186 373071209 27905808 119911961 439119793 905539426 180807934 918275945 525039082 809579096 601879000 713143578 928777242 978265570 644665038 890763037 226438498 553734644 993576433 998848665 349079212 886090529 407121996 427289700 777247690 963881400 909795282 911465014 203973287 417232275 602884747 745957699 945445338 946046399 878427457 895802635 793232609 812571099 876594737 993391402 260224826 980784971 796563991 799837650 183457153 451817340 902115456 993884028 845672751 978674282 662063339 735316217 3551106 527123739 898888949 973165070 702203084 955847309 38570317 378805558 876378675 941576903 387148636 578291431 601700316 639856057 362568680 721506446 575935850 579139801 106798142 895450871 120033673 698294022 324657505 392491607 739264098 916456575 348495290 489796076 821198412 954486016 473329565 831956514 826571477 858147159 823412645 890229973 61249053 708319166 734912228 801516381 680746606 762097594 740796080 960735151 339078321 677349274 582441133 878273134 473632740 690281199 811959565 887603606 701572504 726295262 612858056 908627879 669535607 746027017 178831950 677519620 216494120 597032884 181340240 570322606 105043170 115943189 339490481 932741693 204075122 210123056 54553937 896752047 543196018 676990596 398136295 892870663 893919112 958988196 568795881 732788543 913983741 974546624 295337773 946813805 167795616 440782097 68855889 280058592 791178677 984037264 851243077 870348429 4436153 893756633 457621679 868417286 201189731 579639337 291834761 923623702 758167942 851606155 74651849 701457674 756478733 836396709 816737488 922935591 111549019 244107100 561776513 801188131 394950628 819635592 202344198 808141012 544322678 761739788 853549480 977248826 923829673 985954197 387608356 459963517 769853557 957964419 530965386 997207092 659853807 724698641 470429350 479187969 723546161 822054881 218365158 833085266 339159002 905450617 822814234 863967295 154508303 220723940 268819129 733451470 908356285 993403404 178394795 398674730 821586532 919866050 516870483 924936091 333446516 659928534 901162114 919882626 891789606 946097218 441804889 518645329 605141436 763950142 995409739 997256144 692609647 973878594 186867296 433737638 297005578 698065268 545811599 665008721 805705033 949402145 445167681 738502446 889202977 932822665 8474370 799613948 219042366 506701792 365011979 745085289 703568339 901253546 324097677 423540351 193487717 486003609 898469069 912975974 929439298 977973847 807852190 836538972 933732456 952841416 811022426 911255241 925675594 938291733 608878801 844125331 231183393 426927437 231365124 731768229 968337476 970157269 698727782 803545266 3456426 434141038 149752424 995508615 115152651 288571213 443098340 482559747 950764129 980211596 665728341 755037107 138506331 816515284 919773859 924368500 247799003 919521585 484241518 899563334 718516275 989603508 29654061 102337583 221172560 707404230 125783679 354693903 313612332 765890444 874706092 944356099 895788542 949970206 298302606 680167040 712525780 849501509 485974140 817413673 301419868 697634798 891380392 912698631 128213176 620871696 79008650 111003358 834423137 969612629 638966541 877444583 462379562 769112148 320494058 586228863 483518718 996356792 646269952 967460215 987662449 999052064 893603867 910749993 159312943 791038966 982048747 985889105 564417125 921124519 314508598 506080621 203441577 831532488 228611745 724954012 808736305 874812565 936995495 962594749 193257387 720786946 81101733 158423794 513561045 953564972 373265343 633502089 919876508 975451974 611229942 962266153 204325585 377477659 311216709 869919951 202684436 451398150 438637589 637401648 706166283 757089775 266721127 486247360 946394993 963263039 652358149 937695994 222396054 875988424 578765044 877405178 594693534 680042252 72895371 971791154 419819201 726837483 699810796 785164366 753149648 986834157 551478398 954437899 705332125 880778206 446821405 879442681 76735909 916308289 661414369 998164134 766865890 959742719 718121175 807790867 814381222 919482466 955784071 979478809 450730538 905302288 742397495 844752808 350680156 650847311 938138535 992274948 172326034 566543882 445853242 532646052 854546000 862922890 593893132 703065652 608566002 875189894 401911608 456098869 130259117 518818325 226936560 262535727 770888976 918186594 674981502 954508706 162516018 599250386 577405706 739531478 262010661 862891604 450956086 613674947 472842951 809480516 805786972 889030820 465748660 769252814 118538424 336081947 434030651 521845292 818236160 860976567 100882366 491764809 170003228 216097496 285181363 628006094 111722217 162227416 347675577 516660791 677910384 718670439 174912058 438262777 89988377 590788102 908269806 984954123 418496143 808019441 597378238 647372091 901436281 993908857 705867167 932088063 778665727 856482887 523118932 798604192 417557087 653495648 11550197 807499437 100735663 709244301 129580972 340661179 266400494 358437514 406968463 601251124 703440122 883393478 620385174 897082273 508718697 858205035 207212019 379289435 851327835 934140311 168312268 477662081 891480828 982478770 137870268 633952384 699460835 808416412 165845041 324272003 612872909 919516380 998920197 999020078 734901167 793558222 15221328 908767825 93644769 324182110 74842187 932512394 845134417 870475715 549685639 839417081 750307315 900019302 828588852 881369452 658975818 711642789 472355174 608329124 683680641 952237745 33649921 407925240 153109909 810039347 864020547 953833684 524795535 854899716 777984809 965807008 602784802 840835510 891216834 976213858 811432074 976634788 248160140 621194208 319828506 392010679 646760821 791988255 526624804 926064144 172734299 345089136 834095856 971642797 972376105 992908396 567287678 954614884 572144932 992428944 733494377 983175896 135787457 694484087 550817171 956764423 108018385 572189306 374108978 631384213 700841801 824886251 128395504 995159851 939342396 977445182 691983486 803246259 671402060 764653953 298966883 673066211 825128508 840947518 102947761 955383074 825807975 942187603 216702016 953121386 249926830 919619689 977955383 999004991 187171381 636710415 738738196 876460622 6052666 207824431 886512666 886606590 11433657 793765552 584605449 683610484 693008851 712132999 183126 548556840 966750118 978410255 180870938 886481095 291116519 764170002 138992256 709385440 608337841 743907735 49051430 663354905 323569836 501960655 383981363 536474488 990794845 997619878 890818647 952781113 200802598 905960464 414917070 753566521 918934277 960278671 825122869 871072438 146590202 406730154 694663514 930044874 123685334 132872392 605754422 805287816 566016107 663325240 989431300 997426549 674577918 768600434 67311686 253493692 82767734 818273525 54745317 857833978 813646519 869190579 447119959 688201180 155214774 882373900 696273658 780652370 714182416 743261575 459840547 907026299 266746672 523120884 139843058 556169870 524670456 620182147 368254934 943557366 555424778 784350612 670125333 726710774 343686315 866795575 20503358 432683740 250122545 967475662 648085799 973875344 161966187 239925797 692607048 799956401 792021158 996873014 925524597 945467444 731133220 974518029 379308333 687601755 26957804 302368231 20241325 445575822 427646736 983377125 717292204 756172849 42045769 282976013 842962188 890621633 401782090 772410690 641038913 656113618 393833582 933494198 518500511 772787957 609987758 752981938 603309101 973624712 1349463 943810150 460344735 555088220 897670727 944887662 308107411 456230419 476483100 653624338 426544690 890764898 834463052 922851475 137946340 734456938 790273460 961530789 986533540 992120590 278101605 798284365 399446753 567308829 392055261 516300298 563069936 921154037 867351200 903257190 879044012 941854110 842650979 951777171 377975744 546867473 506855317 849840124 715342941 879505328 864179182 872674681 433805900 630340142 491933903 495614541 684149876 951708184 208481260 329270835 476345523 790143999 434922589 813241954 736375270 891288456 885612844 887855029 889091850 947137791 24849566 879128240 106178041 146425740 588583477 794839188 119479401 769548670 623063009 808500020 579194813 884551030 53667942 927069875 549600815 958828614 130455341 964277564 375677140 583376563 475619171 708728777 839057157 943933260 841626943 955295560 497620356 871509045 561039320 810561271 252428654 648224436 954663697 968632469 219859320 814351516 466871487 914557358 336913013 467043557 910212967 956106928 668086792 926427223 123880411 434503153 868286913 953744989 516671542 765153821 638472675 806960212 556182070 828291068 478891495 869221538 385306251 884324550 688720538 986004244 928436256 961762935 3263510 474182669 634516796 837182542 559069467 906394207 224135401 962242713 277750994 858317945 18136630 501194160 965591857 998686806 810084196 913637645 353643224 875467794 350825218 567473075 940902751 970107119 376037951 578104644 552721687 990507261 269644053 842134009 979636821 998472419 540487192 601150971 258048094 605555690 732983643 828730674 997754655 998301327 790978820 956421699 39726510 840255374 181851264 596159348 503231881 859723506 207595375 733031544 226625228 461627284 28625639 683974938 582936009 789166995 981609996 981888559 684303129 872763549 643643483 795972433 762227076 873986403 120988499 816079009 650951739 808335085 957077648 970001126 206519658 635955137 126364508 822094710 66114576 595041259 34219746 57055155 414087637 993945018 369240841 762090580 301620889 853699314 106937600 176804530 210355305 843527044 350224802 759883563 337976263 792829741 535543410 977024699 993522919 993963042 944741323 965968520 369923671 777707948 603026329 792608765 369910214 643167368 132188729 620488623 831186372 907280544 771313155 969146465 801808476 891410661 368121203 972174244 906622640 933929680 20139776 139386315 558790156 838893815 988204091 990370022 94817200 719785770 71487701 664859589 532846308 859832843 523051890 790951282 767614034 855837042 85078754 195520871 237658680 829643215 775620834 959273264 604599792 851173552 611211139 960880448 558454772 780927863 656574784 888097996 848044692 978006666 976981451 993828083 712271655 845431784 852428141 894035482 139315132 970282190 434280070 979419644 78923156 991483639 972312631 977885960 876265272 966047940 850549788 855358557 285928743 351193700 705307417 799112411 573219223 926350279 138983324 269862478 328632134 351546609 993110094 994689264 703774289 981227965 304881580 798739175 640006253 667048328 424268909 621052487 617015047 630992117 871879191 975232395 906675290 971234970 731005013 786633122 111104808 302522992 869756505 997948834 59483608 194049842 921398886 966965357 939438799 960578960 527707609 973599733 13413397 423721092 618020824 725136508 176029152 740884111 398175383 658004929 407306263 874138985 39833934 937185195 317317985 484753286 248195036 694458858 362727207 932999179 741746753 752897480 917893931 950313154 680183315 694267984 656060038 756130196 418994156 974816640 301173547 796276614 166751289 657042452 814806879 859108430 424140841 545713858 337252508 855040487 616345111 982252923 101131415 551900254 151688274 441177881 865416571 901805753 211884571 390870654 677859155 993062428 480957949 644806777 163789983 488649632 993656971 996379462 524136473 592856015 642349620 918619209 981729082 997040031 338377176 766156414 475674385 836261138 672059896 696165230 671371843 785547310 931714127 985810744 13446666 134927905 41506382 563156556 304402818 360353817 786104748 952085184 351290059 976594019 232586649 586569434 536587355 662997405 877317011 896105998 34635992 652762530 929333147 957511338 213055652 315283688 326132698 784875307 19089657 91669604 908160676 911079871 364170863 945469304 824399328 901945819 666365485 956115671 547543085 993573769 970847592 982780906 637857834 912108489 806056650 992487317 14773057 617625611 495579391 962567310 889245678 919209363 663473963 977504213 17885540 937074441 672474025 878450558 457720370 703330056 393669597 412673936 815378001 949846991 759272050 969548507 288693766 403829579 810554568 827185428 403329390 599190924 458643434 707373499 420633027 607345794 555734769 910266831 543419381 558154750 589013110 767456272 343208462 992712720 147314021 428404019 963515226 993999884 277062469 826191144 459492534 533873570 278783158 819272602 548397760 667975561 974307384 984544692 422258011 441021757 907855636 931831883 812820859 966998923 448518264 456183192 788499370 980512504 948170360 982915220 617408828 965042974 946709093 954286781 193172718 501547846 784004131 956132902 382224696 685287059 321077004 671840191 123263725 895388508 66775967 651463446 158623737 679560966 803397362 942586244 537718069 998426456 926155607 946982274 494792429 761507019 321251011 818438491 976758808 986031676 741001844 946393956 250850953 556513746 601981156 986401270 606157789 907628486 23015783 808706626 673954156 694902397 799700812 922963763 562727478 596960017 173546505 458678798 45560808 915199104 777821481 782322234 762861683 938941066 171254811 747613758 90464271 718516554 445090020 851237268 515948809 639024386 590253209 731138675 942422571 945445217 680365946 900679939 21573660 761029499 447177270 506985518 642076454 780322878 154288812 632106614 282510782 659146541 398841954 954992701 294215088 443884817 53110030 756249629 267928439 928058376 78997253 356271164 486818575 508461085 494727273 514989120 771895511 968799963 229711215 239090881 170528003 584678859 366479886 527832752 976777308 996463200 711279839 784038113 282208460 320346393 51153689 665564380 346230105 866063721 516255054 875108202 527701135 964377853 636161752 661059297 491474926 562879951 415122205 784452646 161685688 719749056 271474021 719932208 949890342 966385215 923641980 942278264 627718463 922945981 434070582 962111817 830522593 864617447 530341180 613492520 879832494 883872207 824960427 864060902 120924874 566604783 673999963 870526185 526193364 894768841 878626337 976636361 497947342 997627465 613143969 871174741 541822019 903512165 590365826 970713565 170663625 663047148 404099249 815811441 631421138 648794358 825511042 912594793 861051566 965989927 287546456 988998118 983125800 984186835 669841195 847533449 666175529 934369105 734775271 865230076 193202920 739027093 53840653 86373815 584530681 721274989 378279689 937925343 122607351 502327005 663352211 859912673 20610756 415843108 373411620 632205701 6115652 98875184 915016073 987500009 639908208 959122963 442207817 939417445 356781915 613128424 814164051 814763963 815263050 824707971 712135668 793316998 801812237 824461671 369132894 395644376 111199176 819186275 713850193 854363215 25691350 392047916 589192525 971815429 682636612 864487839 912510938 926916552 940087562 979831479 374880956 621025898 450957740 835987579 201508545 597875411 578722776 641354732 516592315 702770703 39426114 102871836 220098625 520316786 800350703 803662408 875547838 913488498 739984058 864301453 536614187 780510487 252373360 738852234 892405046 938769394 336097335 600832915 364996791 841109424 660925306 702163689 924951198 951298560 526819502 966416584 630067403 753627034 727730082 979700962 176770105 897392682 713807663 817624296 152999290 289209945 320409686 834238800 883130389 921397881 64382018 753872516 460733715 912343662 232848537 752221714 416697404 966780718 234466614 495556017 103619389 212321289 364910300 495969229 260853926 352448936 304481810 907424971 203821365 245905714 44965873 948504898 397687398 651249034 278415216 778367441 978120098 992878365 816902073 870843175 669019962 964220677 526127313 928221196 515340696 648618425 446616637 914873508 501952780 668686457 346300835 524319795 854779169 955291095 704453428 816351261 780644987 948993433 265962551 937110843 96655606 725642219 664375466 793396814 794301657 808681223 433885540 678947553 212923887 355068890 952079719 955143392 912200096 955622701 245573885 819967259 375087950 845099559 377054047 447574444 222853506 872418737 319985503 714383714 339538395 888065703 598045748 922935767 539785034 798819313 91788095 170855311 231902703 494877125 741537670 742839811 319156326 366727912 388258021 786445463 698398870 912853463 341953021 532824686 777701438 897550944 513346127 646176124 35888433 974741441 473981115 733774062 528984416 906329306 732380837 883333778 861650385 969570684 778709243 856847266 864595115 889576701 928039991 950766050 880085377 937811079 778634145 832213828 455422204 515208404 575687439 771118050 193622108 898185929 88900355 473832433 508950967 839244376 785476730 882688148 30327264 360762506 549911741 744368485 140209310 817777290 579761331 968688305 498150497 745096841 742565083 751500777 949276950 972595867 962467705 967480356 769261817 990333833 464478033 991497039 457703942 689872630 889195146 990802928 87568430 617959001 872000541 979556422 729414111 877007543 914919960 930073759 680152692 888472274 29725301 322742702 997909870 998731725 770302647 862583370 285923972 494199380 92250354 337112703 837692255 967594617 714511008 837337839 603817452 909904063 108074546 276873184 583024267 871657922 378844632 717170705 124900722 413205713 322571003 457027038 189224598 387417800 929699250 980475870 766241052 819930974 190870977 635491045 102858303 690841753 880246631 992835105 59683373 108823550 96889780 790186435 924112093 990899893 783040092 895542034 430841598 941015117 889162292 977128357 753448449 977077764 670935660 956186310 8954532 773412210 583426272 746077099 732941816 748162661 21080362 310848214 255271566 289626793 795947275 839539660 835892570 984687829 87663622 386595896 617488357 946204906 180201116 387195026 892979414 968519242 711785181 870511617 170853340 906604167 775567232 801592982 609264280 836773797 289152932 495470325 561256365 981577448 197276383 847005554 182402313 861131384 517432920 881269142 664890870 686109135 313214332 923965061 782934814 798695871 927568666 936801989 907108123 960924458 776350743 915231043 970693271 983640209 102853932 338568288 587779386 639765126 874107833 946867055 292425489 441672781 104991754 660695094 711991972 741801619 159330597 532847783 260557054 702215795 481866664 749129635 596037714 617117993 348448387 481988101 938034751 979926571 580421260 943297140 500034960 695913927 597996020 844217505 964475236 996720595 513449121 788214510 707626789 723806087 607865615 856878629 666979661 733122349 611211629 735397305 980201027 997929590 902347768 923911896 465889769 775225522 885074781 952465227 467156284 754039572 669187322 675479576 657543854 771855951 69420 648711734 18795822 161315986 355128828 978756081 148143214 500613001 153176422 985739891 699686462 874494759 484351783 784119442 250914043 405360194 246457627 392197078 395154722 767867406 942473443 944217847 739081342 947837785 234723864 445755152 942543521 973999275 190459202 864056967 208832977 312407266 488958988 595020671 883053818 984108638 836043440 923199304 551512715 930102639 899912000 912642041 482081905 803385606 708287253 747762471 167432981 425832695 208962954 309626529 223868723 606361060 366210377 697905040 261361715 440151911 368869904 688889588 531004935 698273364 829219105 830446106 159638370 687759555 347059286 391916292 346180143 613572514 637829313 885000218 914945785 918822017 624234367 764823063 985340930 989375524 122035806 887369771 731548029 994829722 10861886 815753543 125684141 903690579 575565093 687977649 241888100 285204755 226947819 376770732 867175133 881475690 443073243 941115287 957318029 959587126 729034590 993861466 490793258 932083776 285854436 511966873 477082355 981148980 672489858 919450460 595023648 753101877 888158079 935824723 126934576 567855852 833431150 882401982 801352919 932268171 715149052 984245791 54946612 168377191 561542866 854714935 735462594 965113666 709033222 797188569 365354238 623361382 878237293 918966944 515824894 756003841 815466546 850626195 465309226 623593112 383516437 581668904 461250180 976487794 838404479 989052518 138998724 474118860 896857122 916094062 818532655 947542274 201166224 661366894 806196852 997211129 991073399 993952586 289708205 355435052 611062561 752815594 747521292 937830413 491092914 567031901 272219813 492877246 852636563 874300491 719651910 847254344 218608908 766878162 408485776 903142119 608344522 942032110 823891508 912027609 807583580 992699836 86725099 898217457 79981102 820846497 684573477 933507295 846279589 888657979 540705672 630125662 585112486 776356157 68483933 93943829 684525389 697669089 826801215 942041810 919551290 964466130 568492114 641448061 670168072 743620447 877910645 955402679 309619409 879785983 113116992 317814003 791581568 971045977 358139473 624043966 224248849 608418193 113001442 959079976 146755714 299052201 769119670 820880924 412964207 793230314 627891779 680006661 33739624 318737251 775792643 893273103 745493116 772831120 448380758 567203010 691888963 873593332 960359243 971777626 424400820 649250560 48931444 472386341 379869004 413723311 207286976 734248806 825730862 988740147 816747549 878631693 204616809 482516897 948825342 985096718 540174108 710797599 879119346 902605061 207789276 253423958 968707080 992267502 733223519 954722041 579977255 904900913 163294668 480636662 635721015 885722843 564825537 832858063 986207415 999014270 411376328 707582076 739451024 836891164 24734893 184521436 80581536 321456334 852751660 941051945 858483893 971482277 390910845 540791164 543500138 571773804 100206555 794671497 229976551 461477555 7553147 577720404 404573755 968517809 804426446 987985132 70337888 825608968 576763945 740136890 939637104 978689248 478462104 915237418 418078606 798278474 267423059 296117802 410289363 664295365 930395694 985988340 77907995 539803032 350626824 923590831 706179203 853948554 605429959 738326047 240445236 701257738 173904472 427984358 61864233 623408382 751029009 889784349 921510994 933317346 798152411 900714651 319743031 997455731 566320803 676578390 240511219 721049901 947667405 968599876 910554252 917021322 302563934 539904376 802779396 874487260 106795992 159284904 759888685 817199217 330230983 745778592 829321270 950438838 710910915 968380310 180070091 308000823 851725742 923921602 57578863 719920875 101012856 661092303 812413432 992615326 922420092 978894562 449037389 586349969 857944906 908400095 260215702 320202664 333208564 948246120 889088312 938195115 233699406 285883050 995944980 998228393 962492107 997200309 897335480 947731672 908215565 980212640 752613506 822114139 760636926 781782350 163506471 668987486 975184173 992916891 264984697 843454285 830318211 982127596 639836836 805564462 672597642 763285569 569048491 894648443 47950238 746449432 58018684 913014452 280122934 887309699 603015326 739797026 728118773 757342853 112499691 720574392 652203632 702892447 153273668 763883439 493074368 857448859 93284062 904104649 299034735 814484365 245168426 988223048 24065449 940978511 103981731 849655143 167099044 817065137 246422897 915563942 819696194 830307886 127184280 600789878 901779764 979706448 776743053 891592950 927322154 983589104 10331350 510120561 894755896 984861660 34129676 284644556 190221694 371817218 908671538 931586988 405196088 864806382 758163679 855773149 134559691 559279472 967417792 995371903 367970948 982681129 353572118 966190706 717053737 883971528 939106267 961061667 959962230 964272149 574993558 939200834 139528084 899518548 163968727 704636133 845923560 988389019 311892198 880414191 495162588 675800513 419334160 664424986 118125400 128904895 361119090 579029361 52947047 121912518 488964460 830542419 89691974 817395066 674701574 772616561 248628748 280905937 222400878 575212836 802375848 923591129 737504979 774148879 136277257 626513498 826915325 915238202 291229123 588503133 266593368 267049696 12934277 519809888 79434517 738670584 253468 124783017 65649790 129504684 638306566 713304847 803116419 858790850 637814670 981192716 640643942 782815362 375090809 649922359 194239015 531020930 317823153 803278194 995186390 995579274 521498750 672437122 721086322 878680444 460426040 720018559 681922803 963503264 201185082 633509333 137388618 562831637 914516868 964280185 109849491 155046743 886596607 976710069 104956096 479500204 620484782 649833696 780055113 922432343 410235396 641660182 442951191 786262430 503853340 983619652 516728568 741320670 339519527 392409485 603337627 737753488 688539007 730746665 728922299 883733663 270678259 556197356 479977036 587498779 650497016 708138909 701452723 839410550 437978966 797868652 229671997 796683860 354502860 612451178 857487259 918697937 86411131 881431159 31921454 861980322 231713295 843153935 502509443 647330518 311208170 807331939 490551788 819022577 585242804 760056443 191699138 969960921 390496054 622017736 859250692 930707844 734411864 960290617 844956454 897885032 664806008 686921356 18219106 384067825 339953055 452987420 279918687 823032395 642682744 974345749 3325251 686255068 127188154 154006087 982415171 984301521 122752185 665987197 662121844 684770749 474412245 513016218 665138510 892144571 827348211 830117047 65448557 700896424 763036512 814090042 561378670 696642653 44683902 262562037 651078489 815241315 632181741 866350532 148174981 631415192 607616074 628106462 311469307 435457051 497556710 610157473 654405841 975881215 604275625 963570526 626952349 709564683 599767642 613098463 308068180 377980657 646495570 903211686 945093091 989454481 439581858 899605465 77094962 962121866 180069380 293595124 848371036 979252676 426531657 847387056 344928211 429461479 244878657 848589460 899583036 923563853 192846624 424734005 905218460 997384146 273349929 450596677 916130432 986905711 95971167 712978465 882592341 992924827 417496361 433803098 588400695 925065918 889604284 943221445 284937821 505959569 643272885 650711749 260801346 308144926 708174472 752578745 145369112 173662789 397523966 929591491 322206368 791824752 731721801 968527233 425205151 776283064 753993291 796342142 515668068 608324578 135790645 340434758 719726105 922422251 339211386 684743230 333042564 574780353 91456824 507060790 147238448 744812612 573522993 629281312 660930967 929429903 175495250 498142851 993465053 995625302 965018292 980670140 839634079 872036336 234656410 259089146 902737466 962455848 883476739 992165918 557812570 581540320 46012537 173973562 576977386 880392214 5502112 409690514 907089774 929312029 871420936 986494814 717962721 813323027 692200157 790350261 654923283 664596118 650459858 913795670 559489556 785599276 820520648 873534563 804980530 875250012 374117483 730022464 898098037 913269173 594203836 893350624 328829472 686398484 705664014 917666984 820752344 949091324 2525114 844711788 817530863 919482075 524206604 573713356 251482940 345643563 518985595 728234088 550388948 872573833 746256111 804280814 649761746 888053760 873584770 893051306 450837438 964582695 140972763 935528316 717615784 989984942 50802302 941509288 292550670 774129650 852547575 964224397 125857988 951533992 953164900 953333202 537884868 726924571 466070231 717255188 276037695 372912394 630518218 981542410 794466149 813918076 754941294 789648320 524902947 978257255 375080805 536657719 258051153 857895229 82515805 661453991 296617648 754202409 52873210 977513147 472888160 646603606 305045294 665285376 894999769 908129411 136956915 242481416 771345022 902580321 59930395 267459117 782336947 856121492 183068975 324958638 256380398 662431222 609432165 787861957 502466518 854756190 443407938 667295039 707390622 828178773 5653094 601959302 580541179 764943963 326328719 492074357 776903232 967006139 831183115 969200988 611491355 923556049 60601348 325664282 746992548 753025598 582536644 873401918 132926535 422029221 864142972 993703439 302048641 570865410 507712343 750300247 424602890 840589814 385319490 681276195 907028214 989637607 966014292 975323782 261331364 532133307 828804656 877761269 908032855 951800966 124275237 489959295 854197739 858463022 919846282 954654395 377230033 851873307 63471210 249676393 681163607 938530230 422364209 853394871 313055585 524488803 808376517 990792221 418031504 571042767 596553111 772765420 644712510 939799235 423937963 968614039 609776415 932581172 12914693 759208606 456995410 865243820 556824477 870149018 645752158 849131172 991125852 996479326 263900042 901381456 377836390 386988302 927106794 945798278 160806520 836000733 204706160 964054260 772578340 962504052 726725498 892567618 981998879 984402689 837753315 973579204 550739939 569018706 812491380 996207793 504232937 859935553 38342145 912592941 610500605 774287636 250599263 735348249 283590245 727547873 238486774 499240026 967171573 991578225 366201086 695563185 910887738 975976414 904671204 944133491 180775039 776767564 797859475 886605723 721968795 871699531 519596635 862646943 801863784 997130699 720004528 950437602 667274674 711223668 325331110 754771784 606591874 701126722 574587006 716718463 526776954 529004992 128642690 139251350 564861828 824474677 143458366 157116398 406087622 536768473 501244773 569418402 187584717 632758585 422759914 888089693 579927764 977715237 319880429 746842976 713528570 765382021 793372132 894826108 845656482 942357214 732998298 968935761 105343353 120492709 601925281 763518395 198592856 876807242 986814580 990346199 494653863 934848918 443513153 602167076 401678439 642594011 493830271 631698630 611495744 736454100 766330549 945652811 47994782 620442549 833272072 930655381 198312735 290272070 148101223 839683323 707365389 961343710 872192865 880201462 752254813 753494989 483156969 985661120 771115292 827224763 729564783 908851618 210260239 469023093 99143912 865839332 946212191 952081041 868259190 909658592 75379686 907940846 767502792 953290121 898497805 967397428 846404782 901973553 201022706 314470616 510513176 922570057 402395601 585482386 272939960 852454583 968857772 976413379 761654151 895474792 786530166 884779598 537662542 782273450 949109924 952878233 564182053 819482585 969659972 978733506 656936702 674783544 895470744 980990834 767860253 908290006 863619358 969822937 994245590 995396840 717895277 941931806 570587907 876557701 667355348 927465360 535881419 574382561 380051071 954553055 342874506 982349302 330453429 673956770 850536084 903445047 558421516 718503870 260255541 632088417 167455209 596143063 478458802 676331807 604719512 702136910 171185203 611115371 357311414 473849476 393552854 538221324 496380477 985797390 183775343 282566763 467392161 488371638 303259903 425365887 552872682 841140754 379284505 386135089 82892457 421255923 197283531 701259508 826211306 953379080 341207849 683083069 706523948 943318867 970178083 992428593 686116062 935107369 368587863 923975559 68627600 210148576 273489835 686643702 618312689 953089400 764431808 933358076 795929525 877789706 790026349 875914198 364282923 643130996 531797002 703187041 28514793 271632859 951858700 988769634 636254756 904939230 384233061 800097637 251156959 853921215 550681492 759110439 551959060 587550051 984427893 996114080 495438019 933976726 578015490 786089425 838121867 971725511 408314172 473567417 20595611 414075164 587157280 896354363 267229449 943964905 404518754 504366500 884359692 975928409 141499834 178431238 581555460 966608157 871625062 918080764 523492696 613393974 365728266 579071813 21807194 341944601 620681986 788909969 600792341 846240729 48783498 968174595 480547314 500107533 854319041 914458817 201205876 411471492 623690611 784005440 554512033 916595100 314967075 992808009 406582295 893651834 165401047 762846620 810926054 934643494 849190668 923136639 715997881 838338941 278742921 659856321 592662687 716604491 241373499 295746512 960735689 970237995 363060242 516261259 905402215 966553798 589778402 666662347 143775641 355003325 332203434 984554579 152685071 739049646 445340016 589662368 380702560 865683046 773723234 878262589 134959589 792309883 129751780 451958675 166228861 342943908 535277772 745470721 866945507 974957787 534309333 787172234 187903271 528758651 921504923 945440672 193481905 706463342 790817246 864640876 325655111 560616353 49469028 533468640 632941756 660532000 484862521 941499364 603013042 992319147 923449162 948475703 260196445 297686047 493476311 725167978 491373935 789817843 781679325 996650963 685522552 809427678 994346978 995389198 278412442 528952314 76595983 797476593 601732430 954626822 302370075 443167204 767183866 897971001 815247419 935541939 208119634 614865084 848803927 904965430 488508309 836647447 524604328 852875236 306765944 953433393 256982790 744689012 63474186 340474184 956926418 961322293 940987385 981721810 307063225 532635608 59245089 602940201 237113074 626768856 724687759 841110252 285470935 380609948 83020798 443133637 824902092 980546136 299700336 774880042 180674692 613987974 385907443 666894529 298184896 937447802 119403876 694562315 143301893 742629097 394568162 704184436 534213115 910269857 83847770 378414396 797812677 830866837 954539883 959222252 316920786 602049194 387266516 504434186 840465342 972422842 538941806 642032032 213212077 251732922 942058792 943926539 294398330 471942483 567500839 960916337 40164152 177544340 339044860 430726391 579708842 809874932 401251150 621916778 189965541 568812209 963744847 975820067 227067790 231776498 428527067 765346941 319305892 927371693 518787270 680504803 287102369 297535878 244016098 773365493 84636035 232897556 989028320 995120821 244857402 661507910 237973821 686259435 694956255 876808858 501231690 807280770 762679077 763119703 360556987 880662940 528440240 976319127 454585630 545156369 5600243 809880245 146276686 481529546 650116426 857270792 498045285 966854345 229092853 941418870 269550711 619650641 425537767 919896240 256720358 927376086 875297385 903127308 832709561 996351287 160844858 467962012 413164346 430536258 351183656 743697771 206041982 961471559 118946423 298724097 772392527 885933797 927913035 949265233 464727286 964851292 619585569 831120212 321134233 845585072 700680386 939779900 39023548 389050519 909038149 994960703 215145558 833998076 766554811 969135837 27760795 182608851 517147406 724919019 567133575 792058478 836880858 983333301 562344720 662302336 711413687 970686074 983762359 984636907 708403889 782541169 853998375 958597945 735839307 943327181 31650962 89703935 11447208 71594371 727901488 958139918 419130900 840944090 90898839 907228740 964041500 994698604 486158328 761095627 282291468 526096050 214154850 306036751 992061438 998599233 139887390 767679951 353782287 611505313 522535116 985596252 420793045 780892864 156261092 530668160 628759072 860380384 829372736 895207337 856204957 982562568 508841513 991621013 321388028 801348772 589898968 834472773 395823947 779010888 811155536 960815188 479383270 953386135 435879144 809335946 486247666 815314042 161208304 478745045 539748524 564947355 150959546 884891825 58165617 401637452 859335358 870088660 27843712 653713943 238692794 274322743 614259854 828458196 246488346 733282031 106310744 451347575 96512744 294605065 883631642 984744677 770165079 965943203 597906335 920666584 749045051 857010314 596926115 876848135 6166723 440786514 688363394 967070505 586651644 938006571 292932008 640667995 454755790 769984035 298396581 925851436 854008637 986239084 761958943 782030269 13371113 810946383 458920998 777183257 481004935 581103007 955513884 994449487 336908597 560125627 524196471 996220463 659455862 734060292 674852454 947634554 759092443 899802486 177043064 632905453 784799230 904793196 641173478 719215527 607456527 918387214 645127492 891600379 161166701 907838356 41877536 444586203 229248846 802008830 695402912 845966948 705240575 807415153 463073408 523652762 827465483 999111315 465187701 483677198 464976494 566420029 829564796 989279555 472737145 526494602 768024676 792976835 208176004 822288094 143071234 483641008 793253215 901737537 30354881 541299465 124931458 693977723 293586763 384317821 333749112 605781157 446727846 857978229 542468812 979823908 488206454 488863180 74230677 514688243 355960526 945799817 505097927 938218064 304607645 688412964 971759194 977861867 25119031 83232568 166277308 350981330 398673150 820974942 869122962 954275169 941250717 969791437 679330723 736940907 291684974 673208845 462171921 517084199 185890549 358975065 250604244 923761732 798442647 885955930 399105326 511333170 7175228 156135722 821628052 954488898 904048995 954661648 182520068 684800308 630003341 822365420 642738435 984342062 364149173 741256996 737842333 980833314 819341713 956294506 741387652 943845125 770533899 955383736 963034407 996753083 724274321 853350968 526014724 631271779 16010307 70415941 375770835 681509715 832409571 849744479 616193734 657593192 919479315 994735795 752385911 846253495 226252420 314073778 980384891 982875244 306464180 890776424 712415604 753966152 301848744 697158556 775113571 897439915 827466208 986592947 247145210 487669790 277778827 415169143 288144621 805755373 85480145 945833790 827701890 902541667 427573472 477361329 489920593 646762070 252360517 815744892 940605103 954431107 696524625 972425593 17412293 134388922 109621250 432564958 354940538 854715983 326374791 924149897 704085990 818763799 747799786 806901111 207742811 771129109 260460732 777768018 47377709 60055941 395145040 603375409 367712236 595435255 265199608 927032098 343401684 446275095 558201329 618754750 730128019 800463938 844691758 948624631 707504920 955964263 971406539 984705226 86549739 219638992 303978636 967671179 54828508 955186171 125597894 438648801 929736124 963737329 656595045 699672717 747145163 957104010 865732077 933637368 884168138 949096963 584068090 979079821 304515526 504389016 608110058 754651117 764243947 860146815 644672154 851056494 723076314 915160232 351723566 451381113 609926744 730054770 643383860 956820040 29978750 941600832 379014782 701233420 284588479 342767852 92469363 101039654 266723591 276972653 363855177 466318837 488995122 993289028 171821706 407409754 219894571 746463091 738537695 800282869 933863871 943265883 968255686 981475790 796596587 984990320 294378647 544850183 226812330 246184167 908062470 935462126 530286975 807721915 828907239 936308933 983394365 985532411 496093365 693255285 918747982 923758303 785187237 867659282 461096275 859068933 664275303 910268209 672020506 936749877 84881532 413358407 360033741 418398510 987844194 998634526 719025213 754456186 89772878 378265663 914807825 980587833 975744953 987201217 613114109 755276618 29345787 231062582 168331086 954652742 441092795 703537650 735656443 769687949 531792345 647169838 458898971 984648350 571756483 998521784 66409665 588536195 31455829 811199059 245329012 519705321 720766721 732998267 272505795 669693258 295302228 715613000 874840583 995212872 460472352 711265542 86918265 545268274 26517596 605459871 300442193 506974527 458356016 572961174 187939415 899476565 361995239 650812801 660315433 674233316 990368164 995264467 266647384 546432480 256220315 880242695 506689655 566535991 245713819 466514291 789343810 976841117 456717531 796522443 758468423 969622602 940273130 943323051 441290661 833694363 961644080 964034057 378791408 569262238 175670533 755640669 765722860 880785769 594460986 699882772 15598112 170365272 728227090 748043989 754580881 760883731 991117232 993906141 79314943 575419191 13326774 243866809 310651496 482226745 837704788 925477301 880373042 932851882 621821348 793957775 958546445 961719883 369255537 515110704 987004589 994584479 88723618 248157827 64314453 728185431 86077183 565954232 752133187 863440414 216947495 532310917 153210425 974388812 604709278 673432522 504044244 959343644 44879328 763322720 849701304 920410023 136359396 341373236 784253116 968492623 561528324 910798804 1753679 835907506 717213243 874302259 818032759 966931071 697610617 832624752 839322883 924626243 107421812 327667679 717388871 896886120 871815640 992572749 589611944 702708351 925897766 955867766 343226831 962149026 648440220 927186746 710153718 832095575 782193109 973403982 570239544 633200259 877288967 903101403 425596152 614878196 65002694 450210298 208086133 918078066 283596718 344928506 751050759 938248292 349172628 767816885 792130759 935117198 222945186 736101226 237425491 573241448 144381042 864892136 33165555 194136241 93580107 113562365 850325250 941911707 737088088 757101650 927004762 972181694 209976105 510132542 677684229 752842237 606816835 827276384 634211831 889267766 757535816 785394581 942476016 945747091 235626268 423761271 280954779 918420115 281547721 446994515 838366351 921070887 213185112 214460255 957805872 963241169 204186506 948402624 403164644 920535979 98714683 456815751 467384409 784600405 232288481 808003025 587375011 953675342 41107018 367086808 542149686 731801356 329867601 390656429 614536670 951624362 521980034 835483543 674247053 883106001 902517215 908966274 317888373 660780018 377330255 598753934 126910279 642335278 307434417 871777438 554341831 986925660 858738934 946439694 439851434 766858681 35542268 365898863 213505206 513597582 481353805 769075060 654507530 880170783 316086468 994010792 102782061 994050260 727538434 986099438 338698768 969745476 490671762 731464044 952891767 979297700 596416897 620522228 363329961 649310429 442058400 981182660 709992425 884646162 297668485 341989339 647097738 768397622 670120933 939093968 150970341 167075605 214745462 830321380 646200848 820144358 379293586 863281840 494834084 495404272 999142419 999240155 96238433 724491910 344711640 959073931 163016259 742911730 765080188 780354687 418287116 702424836 674514885 857727017 495018650 850534718 837372968 898651242 773526526 935521759 862710954 907084029 117552583 354554525 892917992 975457128 254295371 578497024 568878230 826925934 169944509 317630595 633577810 863325971 938598531 988253926 993970804 996390772 346234684 836501728 660826557 731434111 52911618 347107772 563891842 849933384 422961716 615288343 269761251 694733153 437902119 734124484 948170622 983979569 449286425 677912978 41045313 614832535 492736269 827713208 914040787 945874581 600321492 676824228 732630308 822201136 506348913 782754557 280254146 644599209 62197612 648911655 17766029 411361974 972584725 990181152 912731593 993805708 443880077 458992385 910671980 914263220 833481703 888647095 766453324 847727241 720682913 813239031 478450673 625185316 717012126 990063824 304507913 543098772 80443879 408178698 643555028 875540982 554264010 586934702 293536271 776402146 280689635 895537059 278868664 594191598 401181807 874802920 6813400 358764238 534968337 541360933 569144297 592350676 554185922 696255722 108602190 939153572 66749355 862050607 204730766 670924950 60939940 176045578 576502254 756002751 301612245 850984537 153111201 453712003 203208283 792536264 989024596 997098609 325472761 772036533 402298382 456419194 517908065 598477753 879613773 932601915 885873465 942351310 744561744 895645102 506144176 869830749 608014125 956069214 760509710 832627166 77925197 434585098 47815494 86307469 410526547 502672522 383490849 811702368 540589911 736883410 615831312 749640072 94569733 548564979 648646501 983790783 261846768 447978712 610807964 876796004 932287372 935085449 169833226 725288774 191365600 813318008 79437062 378678926 360499089 602371520 758804895 853362578 966629150 971150711 618975474 927356025 42823366 684423982 688749926 718130303 331545243 707475913 731684799 968407629 492425353 653149276 246503991 363952568 836308076 933647506 469232588 931295241 239975497 383040178 740849330 932756661 592668829 682965340 219392099 833865731 242456198 920061646 420620688 799316346 96947736 739092155 162557812 520908489 222518644 660689737 884903078 966194905 907287413 952124882 476365392 809771329 322800029 749439948 62108867 220910113 947539042 960557346 789273059 979804459 600469231 996670799 831886369 869604803 579700918 778567546 826270393 987933059 191735910 530529362 449237768 552652126 592759692 983371792 84330074 412968343 60821368 871804867 900062662 992385719 71205852 804518931 334853370 651317291 400997105 462369627 386603170 495353871 543619109 699246430 973652475 995120252 852662929 932439217 893653714 985744252 288172919 474069526 126022257 266532570 828141876 997762256 704842110 849564840 763339603 949519284 226900709 988096901 720076261 827544578 698938049 876701964 702692160 765007918 159189225 878014915 620995441 636736049 3055972 838950222 323945793 762964388 142578108 272348464 138821862 329989704 602289955 903914492 1720938 798096098 427426963 955476975 721262309 882522580 503786015 849521998 12063365 32871404 867253259 970031829 160912544 657093456 930113910 931513029 588701652 853881395 565698054 969450086 941957780 950936837 329738444 899273081 392923638 570653583 672315831 948069175 979976522 993545667 299000195 720261326 309856867 907859090 8576570 928120054 68851051 240099543 112965394 498188162 146937424 583126771 838095888 853417518 563466054 725878386 335938044 564137956 289756662 981075271 979287760 986397349 588047710 790939544 146910142 380071478 854017386 947515547 677395969 839735853 557782838 756828335 328805396 500094344 661710276 943988045 2807716 346817143 511232657 513443690 980536955 996475714 182164774 483013635 428125053 466538732 993759331 995242716 228187658 779715780 296821188 345241486 39144663 837769234 908371800 971534656 949813200 954739140 878744146 936375443 307417639 997649190 144978652 372911581 384706041 409939176 849310265 891983018 527271031 884349925 748102176 969924424 685010240 783230611 839968396 860087474 408153677 794859273 752697286 874576601 831786645 957087392 693611127 981126107 235757873 646784969 472637101 515271460 984133008 995890149 438663161 550452894 277429144 577749586 652986704 701484683 619574233 755684442 565853097 940434414 737440367 846591246 637177242 821379379 363528267 833848219 22243859 107401095 465492857 999070482 570724249 652063530 998551585 999269883 143734852 497838733 1401154 635607119 859901098 861904292 776788764 967654719 877349296 893078608 862450022 882270852 260684649 499837995 676983600 708677094 932865218 949157992 373702790 638336813 922132545 942596723 326088028 946669823 669479139 780811406 298336970 936555445 154281479 299729180 543970818 882178237 378197341 611581783 368755682 765810109 100778496 840744821 68448852 336473073 266874087 775862397 778074607 840077227 55498058 227237687 155319638 748005913 511540117 594204154 69765200 193573362 425463930 690924579 737623659 849392281 839439261 914201145 450745652 493716087 90464512 455155594 950513655 988867827 637017340 979417716 691747536 890419411 758797829 959310123 447911609 644128109 606613351 959523954 106431016 961209667 174685239 627688908 471032277 900221540 199511219 346953504 580841264 897269829 388865123 676026458 375134580 833145792 291370026 669334864 122466930 574488545 474128636 733479328 351736502 730364967 580594188 760086812 761697217 984406154 848003628 993770680 704729515 813275587 988348974 988928256 727047470 947388345 895957421 910624145 372910414 470265557 948108850 951109609 112024742 638445425 513703196 515788958 802983554 834706947 775039694 972360614 728345558 805117427 510859852 988920408 390425236 673668749 52156463 232967432 423670081 489910970 521362765 739691383 506274011 963742368 321848892 852223394 356011439 677138296 440893288 970417381 2624589 862725360 75843313 936943024 454190591 651466759 887086852 928210510 371292900 460344120 177771706 892132802 198692501 633979424 52013369 347879631 732726031 873848938 24475866 284547404 616818839 984815824 746544710 863713884 271387804 838880191 141176536 877443868 498850639 586501151 90923908 110252145 14586237 689712946 435993386 607626304 167395892 347926325 714251226 726472052 179572800 370883261 248118227 425867118 957787551 978598307 561956688 743451746 448569468 898863907 706583311 924360142 173063275 833327685 294413030 619541749 466990665 789631190 755377524 810201502 841967391 861069480 660806946 806940485 629204734 896888482 268975993 835376423 137415592 456319423 909495272 915607235 755735278 825264702 745315434 904243623 654681710 778101718 25133733 800849950 702042376 949499932 682368333 693572204 299642317 713776209 718521379 985748490 408019888 908547069 558226389 674482240 669826701 745591610 7843004 39301136 12906375 410101414 680485219 694078874 164826003 757326564 623434405 954795158 290570978 980293277 936940635 943769593 866492826 954332447 617967812 907052509 835464919 860607856 854134368 953008251 909360454 949539592 774025092 920330896 546244456 826863113 534911747 696056854 59087627 952996267 855506701 989196750 412178216 972027911 441922353 582070777 536733721 723877052 491515369 649735954 639450659 730859257 341960896 651801944 544735204 724498824 696100789 993907895 66424955 431933378 527431219 846825741 334347026 755537118 35129793 861256771 420541339 840755986 116571884 555881975 141833775 834129285 658498723 746495564 108820671 288462498 508425485 928921702 542504109 803168542 535286877 829603473 486579077 928727443 768373191 814343642 733836501 851157557 708745115 918464422 849796635 881816154 198234382 996126282 848535020 989105798 755788335 826744435 455145890 502876828 691097144 799993656 688867935 926860881 195284117 594377258 457766747 720474972 543336630 969504097 812305836 863859073 871462995 899752305 786597210 894279631 952163510 952267189 989449440 997398590 945499330 994780566 31480394 909420336 335470108 678734073 425002870 627325360 970665315 975426340 850344438 937091665 373949649 903057025 670197115 816067714 876604566 932019648 216987816 961227360 465396803 722854647 514272158 657667098 798637735 977418874 976286879 982339582 538194431 987752106 214061832 712070468 922492006 959333704 437038263 843893179 659333168 949278940 987756746 996404918 324730824 991673778 928810935 932996786 92856079 852444601 196993465 780117276 189748266 708030232 25536609 653431330 761305065 854036152 408224422 502422344 680587425 775950877 378334755 813046377 907948622 913073214 333978352 632338504 919076998 987738994 463603118 793197900 574574066 585741847 359453271 446630714 396682975 621933742 121293358 569703453 638106391 769689170 221242952 368147147 395667415 581312405 514812074 839952845 347951692 836167877 450856086 667661842 233700769 872274102 468765847 514832246 830337417 849429343 914561019 959602164 953056524 970622926 521507553 594959465 687706551 810051647 305255086 535278282 514053151 775929957 383679683 510425628 971447212 992869387 26576818 298088041 228120123 453952173 524974596 820418160 733887780 927251190 144216849 369738223 366990711 767047715 320133422 708754926 350383620 441089125 202381212 911753575 518569663 908435390 953620293 993180674 821476177 958221286 90077608 617579749 777211951 945392961 445675747 562011134 709661685 832126270 818129060 847996993 928815817 936576839 86644544 834970796 430022083 850980778 448230448 577446552 612215674 853994180 320743717 550167430 994844649 996430189 68721239 482948435 779175724 967437395 296060689 778053301 525716628 925278778 618557617 999184548 975158284 985008576 73441413 851730515 100370948 214482388 385706767 578903325 717675625 818620775 866322826 919346896 465607308 667478650 650878700 705380795 668646024 835227143 375229658 491932289 309671345 682756130 329551947 772385027 195838802 458207622 548710646 717478636 711472147 905128579 616078364 754293289 550842442 803787568 649448217 920311833 157839521 820860398 213112349 413829607 37566200 930266189 570205847 767255437 977364069 981513157 619427833 855919503 165801804 843438944 253496828 675698345 358695398 614285795 473320350 891973954 387662252 425404428 481910118 483946345 623049051 821179886 967346415 983296384 925688987 941806491 18466810 244759212 254999980 366644540 557139630 912424672 153760554 436815085 608535559 864395857 325316599 540958187 686964922 866703663 286467899 701387209 991032269 996902341 72886765 501182101 453658514 868473339 747516110 979622474 56345542 782178223 913441243 959941578 174819455 572759591 95657334 993956241 641855042 788677499 256037393 686280186 176010367 278843599 991386337 991427502 904012195 945014454 296866945 446193460 795268705 904109832 731039554 776624789 881002883 896809882 556884947 562337108 102723661 352257693 103882689 671549359 374472269 951900416 129541271 583492211 672356526 816170867 167707048 838014173 417075593 675382072 517491661 959510457 443210583 685237159 96059728 397909899 472041590 884287127 418041112 850725583 252359249 827195666 111497820 702396661 424377462 815594084 901049347 981714699 26561114 143224639 328881550 703177010 760575888 976034635 470970217 648524636 177399162 178813911 260727425 585263635 130366108 335472337 90039189 318057938 786174612 839091936 711784979 858524682 15867585 848661890 289862991 319932600 427616895 911820229 850603499 991432643 863917490 907819642 883642198 984848209 660650761 665461443 61830743 726183265 707089144 748568760 583165475 924171445 295450153 751105145 624737586 803273498 300043781 529709223 912534195 949498739 432934548 864234982 993812982 998836328 124027258 984896112 225917332 759766750 13207461 217080563 823915924 831367056 359698 267970080 78581680 313650328 513759006 955142811 692116754 867809175 123975009 938965115 171658110 411990024 430487487 541660804 562239583 917663541 20524062 448950078 738506003 812493578 974300997 995541357 484326446 507752471 669332119 824906773 67505002 257656713 166551529 883634344 937926219 950251942 759325386 829234177 539722645 580278476 593790088 632198852 430928823 670519527 827763169 947630569 853427121 911325746 994232521 995450569 756607967 827704245 623007282 681469563 99438315 730235224 869838781 930595162 994858783 997624947 305411374 382071444 889283198 980982721 466468145 811234713 117226585 659147368 624847544 775074525 340179663 795809495 551487417 660384421 488227713 751051846 679396790 710033729 242911942 521666269 12511856 460547672 110447683 690738538 857688696 911904645 783778876 982307822 472178538 501538131 507344381 558711591 97670056 780413126 795964362 926856800 792307908 992241211 775350392 931812427 787585459 861555913 67106835 715974785 773058168 815822993 70680887 114677253 205783509 458139492 446037990 882715351 561665809 664189458 511585524 656523075 492287054 591902770 627449441 743025016 839515423 974590674 178486251 962863375 792896324 830188734 409414659 842245404 471701957 826918518 782867418 948305034 747922098 841392813 634751864 827841547 882096032 884801637 216676557 470938353 330326062 761011767 965348711 969487668 74480725 198802252 585763492 646313609 181309507 304836255 476821410 603075558 810049191 931208059 313210711 937483645 523345853 942257793 548534605 847346579 566797729 719039548 21071468 176478387 453483223 779379813 966316495 993319582 424868370 742168765 141096096 571918238 543099974 882111210 392685103 660788350 155905938 857958319 67817955 424876999 154275725 799346980 226599322 663431010 439731036 493299247 519231543 757507823 190322498 472105943 884471177 955521692 348929492 771577976 824594487 976267550 416466938 842448865 187678705 251620194 910314712 968178518 688701023 697139439 221030283 805610464 308706885 821999001 787117540 822127721 288688906 537367613 301739696 375887949 308074245 427296755 686080319 797150502 814812735 959955764 942267473 972514404 54703432 961186551 251254714 581971127 526491836 998629930 983867345 986134951 572372512 854497081 454155277 536861756 779796401 985763572 608770535 694226990 39562582 800440395 678299167 877497136 662922536 809069213 901829305 927626700 757976015 997199491 648751796 827153388 420296704 639345658 809142921 959211814 164207303 325916448 106914852 688942275 533394637 823088603 904621214 917351466 756186489 790365081 444533732 801229094 998718545 999228268 282851141 948224648 286077872 943080722 986361060 992700703 798786137 932691880 316645800 342783723 499058231 650883293 234419041 394679555 82150560 467541642 289379710 838795487 21123023 147965447 7104658 467804163 366514178 409139560 730997103 837994541 114984007 293169710 800978715 936837505 984431812 988794173 497567755 815971224 450756922 970458042 452394557 928049598 350338773 845298743 27199633 369711870 115917943 142368832 406772576 795154640 751769200 895078844 887547038 993204295 170658618 424776476 432581831 869349391 488443579 642593503 798952839 905458567 921163923 934137335 328693643 926676426 916543195 975818508 995770073 998591100 773749091 857879339 425166395 439641623 818082832 930087404 145478013 972310754 252413133 827114568 265861885 371889759 694682649 972802470 612992481 827676684 399584773 469949592 763889723 862192207 504143640 822197501 33349855 789321455 626456420 893052834 454436576 591914932 375528132 720631180 752995597 755350677 208188342 454714984 851952752 874354738 354491348 531352040 784945103 823848430 881677329 913318830 528889849 862889637 343235381 448288512 640454834 675253309 772902469 903069720 634826209 948959507 690474311 836659918 321244576 940234492 960104784 993375143 439188628 711230690 101630959 828049027 997432960 998776003 223368059 489302314 94642481 238140330 434865432 877902602 406369777 756546836 502408052 726537228 659003301 725003211 228645152 878571763 248970344 777228085 140374499 417327937 144770670 162298946 572830420 860395645 397450595 714373155 243171519 723175198 987702259 996727449 329778510 474271227 18850458 79210966 164499053 983293517 999263178 999340056 141561068 829529311 543900697 701498118 860717233 946043309 868554132 881351441 84645510 398120097 536241599 904097126 654710607 657937138 455785900 937503225 803675311 961574365 968355060 984517976 468547701 993325551 914073516 943854755 740697808 759927813 388639667 915728417 500970416 868321347 837372391 875406143 141248653 231560009 270817944 561654294 674625709 891600900 422707836 491600853 369915159 557696343 422789328 919093838 622116318 968368994 712297320 955767114 252699593 723741821 232666020 478415152 238000916 611966483 356622455 561645972 353293347 445177768 223271022 446329235 793128622 897112759 548801029 846051172 697247069 884005168 454617734 761311099 169830760 752411273 523572224 725077529 109606883 772158529 937595026 949824546 666723724 905682109 388429116 679621594 119527785 941684329 98011387 979677376 412149708 526639684 548052338 981589890 195014028 337426465 105914783 565310798 165002553 188458241 924866621 932788053 715743615 974204833 317087641 466785503 859424259 886987041 537335428 711673231 849674554 961551237 212427123 487576733 931831960 957640945 404090947 790145528 343359612 649110624 679585691 718539426 749599297 790146767 943849550 948565386 456492623 975809261 18622572 127430166 909495332 986473878 109001521 923326384 755685203 877262547 926975222 966284825 621095515 958954642 321694262 815215613 745169624 921808755 760126535 805940817 698458989 963840435 6193482 344767518 211295956 562902002 64513495 117423586 682378721 938047349 349526843 392814419 423152317 485472194 293582439 554535363 607358202 848201718 647300101 775298227 31489421 489227598 781688603 993243654 518987852 916036817 31430123 232631930 176258563 680468619 66056313 324448726 678702079 883387100 873940750 967406759 592222083 910052001 536034325 563739057 637171671 797060558 436282579 907623493 365481906 876703018 569721126 972549540 973302428 984685403 136834336 300731454 989197672 990883267 281502783 737343520 478790788 864164094 704264895 980317584 76673148 587150441 483371630 968578167 870919376 915272475 8804393 919600716 959579624 969485311 944471966 949701128 275733997 428259627 643558602 831216524 794267700 847630585 912760921 981506418 629603285 984240092 958078936 979142532 79090751 338903674 171610778 402149879 732884545 845371898 459036274 921884604 529458483 950798660 488118010 826076607 364171128 704810625 147870598 552101706 105620749 921420207 612779045 648460520 187458149 567339123 950945621 966080962 860727618 924473304 137592204 371918593 500102429 701839247 994799106 997473669 148924318 596404147 709747629 726743614 915255970 980080851 921812802 924527152 137778919 878169655 254201077 748506103 146731420 658368924 978341289 983348395 374783397 610951202 920855395 933736515 512461496 802783005 379923308 672992621 664907045 789350083 117966613 207297693 953083297 955616673 380855924 464166869 881561062 993758500 201899449 365203928 777638564 921191871 30186925 79788911 644712057 966963089 82475336 838544262 640815463 724834903 792590330 969007252 693740575 998247408 949449943 998339299 51531053 732783649 319915881 343817943 242658111 799430862 878787920 985123387 997662760 998235399 746477258 916493212 658365079 749647367 39710139 471187692 279019033 390768940 661622868 993952065 569734058 978744395 674068462 928516222 497399265 859962602 66149689 140242667 203799443 983045587 855121704 967354939 698160707 853282091 405083325 669446918 44942169 146928039 691091818 965002735 908619435 960531449 271299836 394730911 38337706 99649474 583052753 907774191 849222418 861252466 335927496 702823414 536806108 724171536 497910415 794860305 232927673 477162742 733759140 952378745 982755619 995060311 388719743 622501340 265467792 331619899 710904825 822538966 572340631 707181908 24657079 480526675 432629281 556361995 284070590 936060226 357810003 826665834 722284838 773955772 353838682 429753144 864009248 885839291 706665219 977723836 47827375 127375129 83853919 612090845 706216258 713307917 977553816 980268118 135960384 332019852 500232702 528796826 431771021 548496873 343124129 693238478 299844134 314675229 429216414 807318379 870248097 995806432 124114995 425405445 967951415 973387798 920948410 946849266 71959920 627480738 979015416 996570343 816275355 998201038 420686745 981867359 377824897 403547472 505821989 826830678 128539596 733217651 389001594 775271453 165287612 629186624 751601057 949912187 22379023 737588351 370734660 622147678 218989640 296647251 685855418 977075116 790070139 894734435 562995562 710496584 226023418 944861958 709903129 859960762 355305388 810452460 811275545 976057065 498666897 747757447 901716312 946120452 476345029 496599697 655328091 761650990 529862245 740871833 416034843 658097187 223003755 964992595 599144707 810706135 151465244 949595349 809300584 879201110 564069613 949985506 225229306 600012995 934672559 972020592 621270835 879307607 729265674 869345430 871300498 927100107 188018981 422548425 298473843 659783615 380619048 911417632 540360371 634834529 193408342 915442929 149683113 345440448 496186958 575184176 773046460 821318417 416257252 994142426 878401124 973571984 356022832 601414122 675460304 679457311 553825089 847026871 854202182 979822307 988667276 994669817 399725535 834168676 47507458 813887456 672060554 809608941 271300499 827126022 242385306 947684888 559421816 974240156 110619772 538060834 347043447 897065230 411440798 713745952 959164936 994101902 438426054 671532675 537560990 846595354 755691800 989088924 638501061 841962399 787330543 962689975 98895019 883408751 717050753 722228497 244618840 938913089 501189392 917606924 963453634 977748587 292532191 780144975 671963536 844164902 949887470 969366824 771743928 854569519 529155787 636255748 924647651 966568061 493533552 713291153 349006744 481056168 46551025 619189338 923043128 935333713 104352316 593238688 606181127 781278320 192683300 306149605 26690703 302752726 823038554 930377517 375082702 398195458 558978994 798571038 778778886 787425607 279792250 515064767 428563716 740918892 112787002 113541341 206076873 750529856 129996054 227765823 21624520 368119954 409469794 722145243 607286330 981807069 796721408 814669567 801228843 834665986 505732406 587390620 495213558 704132250 76889099 380136830 10304251 598047869 613824314 808995075 960925317 978534905 627824942 759375254 249244103 996604923 639123536 793684668 183843994 837963561 183235711 969572529 326262106 756617014 926418809 955398413 264469382 765218301 669992927 696934668 741694115 955865675 972382520 996563689 367037981 917319105 986160209 992667001 485926036 602187188 442034099 611422341 944016844 947172531 786703772 991317610 212472610 366040251 178582731 322964788 796043879 821970771 150586708 929748542 423926502 622971609 216811987 799027777 390709193 900077596 789474267 962489763 7465149 68193348 319857123 730464142 759139832 859646641 384757449 866246545 954942012 982726194 811054927 941904661 533191413 981262052 24016108 693983062 780187394 838105798 867635646 942767959 581404800 926465594 33627474 513922915 608179051 663779240 773331033 782927421 98651477 871548994 724285388 730507542 969438516 978778118 928298817 970311081 148150784 953502742 419068217 956509034 98802912 423199044 356224515 544678068 172150258 462693402 380451895 922221357 72648788 203215953 928603892 969251137 585827993 958000272 220090429 341937553 541447398 777649522 222755100 262814105 792145026 961775423 994828950 995168552 802586354 886846567 531111449 661716233 310766451 788535951 559877441 780161533 392818547 699199742 608047846 707169150 854646645 972938105 331769099 840174479 453790879 476193376 787555828 955379148 253562626 731927635 624464227 970812284 163108528 964189400 766221193 814934054 337304343 990950838 557507779 734572958 252627034 369796246 143929923 708771633 73089590 451080331 386346373 992766821 758416874 805787708 815637653 957087794 852044317 885159200 192801170 628927807 836224706 903467934 508523862 864328574 381758937 633357497 616268945 692202267 346522841 441494313 640365877 948945158 922999656 942054655 870320101 897720769 423920811 594278618 653901142 878207901 664252911 958096461 549609957 743422876 774199769 824376444 93962645 881189504 589969845 772785219 398038522 491355114 611670637 616970693 339153095 406795124 223085983 477684925 658465574 735195251 412073029 961725176 478707012 705972074 773524916 868698993 756959151 849594673 971815005 992312104 694797062 756070271 289417507 826800639 557475365 982642696 981951615 984366492 329882399 858495399 689187547 856563175 937854293 945827315 679712040 977379673 282697451 778165662 415189793 928499174 209602634 806148333 325704363 754686167 749089452 898429297 264217115 310203057 958184847 962129535 557259092 802932478 914033067 960097125 946617703 949893489 395503045 875390748 292338031 823850486 246240082 266808522 709050779 808877770 762540717 768025448 353992676 453968109 845967119 964881153 846049622 927933864 807223764 889109721 131909728 878794257 89136458 577857885 715228459 936793952 413506107 584864094 475956903 493177929 811217861 855992754 699628733 718165768 600949171 637795584 100929034 264860382 782672762 946557695 177828961 338805812 293144873 756142563 331041482 720790301 647807638 974890245 22483973 449917072 782377486 936937428 435369977 598744178 93275024 738701650 654030023 903372735 582538377 955488095 546550789 700690233 485824039 577536653 820082737 918802041 323732075 332350863 896201270 984437074 482184843 684475289 884045017 902426693 110905958 662492106 63042871 643814775 944941540 980314617 136005169 659629744 154068363 321960057 564419578 857679657 446434633 539438303 518787368 612816138 323282370 580674281 351098901 771050953 365259331 916292362 968801040 990529142 62651443 947144967 427635514 997376464 226268741 280004420 708175337 860920054 748583087 777542554 682810257 959452882 595821087 712528472 919813625 996041573 824407120 968089060 660181667 684703149 791972081 888415288 208578978 657743288 671503872 919941541 147021694 652856673 419446479 694592694 478379828 641650216 359234276 845017849 853694228 982379008 771070150 921720270 579191070 612552246 943156625 956514013 779193519 959950370 765453518 863965406 169072176 928918184 1195862 872839393 231215172 879645517 588265607 846715675 348074198 897106485 680509183 725140251 265936562 564668068 924095199 965548061 583161268 710258427 984558689 996247179 338954708 940846960 976428093 976588807 304528717 775965426 545732202 831478757 290845791 414860683 581739540 771348249 418336030 901540359 987929808 991931189 518625471 665075924 819227268 991595865 118721350 325498803 813221885 983211004 916887499 968607716 378556596 927747757 999226631 999342095 502035564 591520151 185309580 322894693 622181163 923510438 73246126 833038728 895475964 956092126 483395059 841433740 248041857 841468066 267760128 850402648 10292285 562443155 615592866 688683114 735934871 939797488 804300466 860701582 408625045 807781041 262034142 737131678 729171438 920376374 793449548 971545042 393212508 618000280 389430137 739956297 27242325 685109811 851098399 934256222 667623955 911654438 116062312 440798914 341246452 597187132 86174282 206228896 439231267 921167097 87047458 128207972 53070111 537234538 23898924 866334608 950988259 966336092 513759524 692515314 874449635 974589184 696177562 769666595 604977019 773566327 118777307 758475066 939673922 984484310 887562949 911666246 570550969 855488045 103180354 160880545 772805661 887885854 957477165 972744296 925487618 932225401 60949135 624712011 128986307 740598993 819125581 959157061 855102088 971977006 330395468 669553413 87735438 485222397 897216296 981281361 648577933 649319484 351765585 895953776 738671444 756825793 956865320 977977907 100186242 429843572 366719644 671036717 834944543 939366762 262427336 429425264 221599486 681926150 239230093 412664514 931660412 936209575 467434200 883766012 143443014 475729213 416292234 597821173 333475572 568885019 823190906 954520691 2578026 627347414 829648547 994713188 350502712 853405810 238178192 730768135 885381176 962838199 908121850 923207265 520076918 591268401 97569848 815799701 728958883 796496614 383724871 905527604 675128406 755064289 396076724 608751501 992024186 999156682 123016697 858521758 128200513 656361061 402541665 703139520 152426277 476553046 607326352 934703215 394419527 553451559 779278994 834363290 590200340 850939805 778153239 921660708 293168765 777021756 951823360 953868828 54663260 319381439 440287022 753712467 690164386 864855642 646205771 654254673 436831184 614755291 350863392 916566320 595792026 678516161 79826883 832760095 413853944 841955995 934662407 943737071 228294327 451961034 648174762 745332371 125418998 416293995 725478895 938612657 639230730 713367182 588694023 613418920 71080734 646129418 254173395 528242857 515444489 863615755 739455525 855777632 234185463 804939195 890306295 910229136 853501813 856853587 567199915 656281334 837921127 952995399 879495718 890841360 173934670 181232882 859845543 951075712 466677062 948916041 703867166 947397208 235090364 857621877 527540490 640367657 433020623 951477136 8936092 819188089 504269783 688314430 339945227 423819949 308648468 842773255 243895695 866471526 224574171 901585241 776353823 876120383 752616195 954298762 187284118 240177157 896909139 985619484 982934722 991996848 66270874 848074570 781866564 992166783 38207775 964987157 593854445 923516186 891814748 984533419 6512442 384984918 404719927 470156171 549606051 972139627 908755458 955128859 909538560 976845345 256700943 930374578 285974666 304302223 327446545 485052923 576685515 662374192 344794373 515514655 174167568 991759489 772978638 850164654 398502543 947595385 273118853 339679017 762457031 848823928 815341799 991850936 919369369 944331975 450920583 894771719 941976061 958339900 861426443 995343558 334034677 635616079 905410101 966858357 797672773 918166386 769943856 950983338 225181771 803391100 968136957 983669107 486750684 932771444 887499809 903553029 728184775 805220795 937146798 954227105 937881951 994063272 285733732 821472146 137165281 438129104 480355986 566949230 311657605 643887144 764983788 909373480 768719174 856625084 773549326 843762087 22971172 534502895 84824481 990561610 548213006 579209764 222794730 749304407 148013050 419703143 70757251 469095538 428168820 810134897 313260377 363424664 762242525 882245003 279479291 633518388 633844673 895345840 203765096 587876617 655078053 950550110 501139594 928444927 478592182 586467616 362056672 968503616 352284495 622987210 858484523 921801215 165272340 885431065 145023131 480417441 12465585 674587902 542520456 586298603 481794301 884269386 913802628 938674902 498910483 861326576 763355011 794134039 630039150 818330492 50596490 821129771 566088551 756572225 609050236 963591499 52837166 683680529 500870695 652774592 177910139 410065196 569828498 668666521 129713086 295754077 221609334 753299707 872490695 907856173 924513696 980611132 386979716 567905271 522854707 796901052 677656777 775750559 245871253 665780682 594390681 750915227 654480976 693992370 442912010 721987315 938749327 984812911 799789050 900313133 625326610 717252937 183511984 299740560 542716284 776891149 526783819 892744556 938343642 982762910 353727501 597011194 276733033 766324631 989550852 997899585 652717230 857342868 763490829 932173656 467937624 711266405 438061688 927102254 119745011 857401684 944710741 986878009 136806927 399597317 174995712 415117364 898205456 956295870 223490937 680726385 281455284 549166946 762126254 785186649 22681427 95608761 550735087 781905746 349907723 799630971 214798908 770069683 282358962 982778175 169295814 510300842 322263020 906879738 65926117 138657071 861544853 861609028 652950099 707893285 92031616 607611891 394165984 474873042 658329014 786208124 739606160 780873707 103048874 251793100 450168307 691732002 727583260 776536833 336316640 700019514 691070149 971548368 613243654 856379391 852532570 871590390 974891292 995955960 476424538 989497121 142792324 609144711 633506226 679294125 469857244 560844245 630725831 979747241 495433108 890756251 399351341 406960358 178916961 582867393 387387612 787741754 120261936 336149333 942014469 954433373 583366315 645548359 833631449 868621347 762086042 832374816 974520418 974847325 476782445 891488204 507084898 860324897 453002679 740446587 710476846 962271666 362405373 639253086 873039154 942901847 746808453 903993735 690687156 877239789 787994749 917114301 945831648 948659803 794711598 838605547 419951523 610716837 152285537 395968910 921717304 986017398 173555552 919088571 277430609 649635216 893076786 999197851 449913031 734373771 596104042 750152870 747587975 900915210 980573970 980645392 869445790 929654713 844932991 892836501 153282398 577582693 476650816 695731688 230117640 491737416 134685148 136768842 182948319 253274966 189438308 506457525 418488739 944561993 396341510 411850159 501787101 591002447 590293373 726573486 104032709 855747702 251456526 393342677 82512533 326157967 46832661 212053568 217172110 866124044 729464975 956563898 955381446 973164023 876139359 899002219 887651166 908570556 899156164 944503951 666592512 967614135 968589262 969195480 438932355 575582566 871837966 880529072 2289395 823674568 79716969 904158105 357633526 742915869 350655350 843260004 507411674 708315003 244136216 641246640 966938602 997641645 169759110 890624838 446515462 974593027 699452254 931655547 590946324 850014223 433938223 648658112 423660265 928737074 248995566 381596843 664364865 733056733 300296242 535813394 390040621 652109964 947470859 970893425 914246249 922477954 918138418 925165397 312949509 517556667 847630661 909395562 565825810 863868201 605286579 827554994 670182975 977026854 927933118 939502784 81989919 163383980 868058793 872352773 608078202 926195113 62369891 965299235 732755319 947666058 108817919 762189250 356155134 766798235 851852434 865334886 212085693 571155901 652831690 939679373 959673583 991795947 289091730 816778152 988606954 991612684 358223021 629744599 766734888 895422063 310955752 595404902 187067725 540447688 14348732 24416990 29521277 683541683 870764618 894963360 233755338 544098550 762344817 951616838 72585559 878206536 816792726 850054949 128651570 962891994 676956271 865997615 264459094 468827476 50489689 618966937 977121778 986895534 590371731 903158070 183329527 617959305 840606105 891559761 216178181 390797742 657081055 930017779 142673653 404616656 436387215 773919905 624804152 728773090 266433130 699841610 275314634 440161900 366759984 622519547 360647239 603100742 694836467 730545112 977606920 992409002 766801586 799319435 240541416 858190304 903229199 938748774 314168889 481409302 561200656 814185537 184818801 190886765 405747873 618436685 357209740 767134577 34633896 862853527 685439489 716967024 946473645 954442802 411579725 680980885 594136211 692086069 575132308 639370073 448125882 463525735 23597107 476149924 396797271 990902841 257785917 710369886 33589188 279183831 891123570 989261401 419999788 580712474 730673047 923247112 714309041 986542364 629820568 661945863 679311186 788507767 10049929 166808680 768870304 918484221 725850922 924112442 294760961 845843546 363522112 846468871 487245771 703282055 536650432 550190233 940990156 974929903 856236332 975218628 874529103 977840975 779432565 823570131 165285053 339840133 36580789 764142572 939536581 953817074 715052354 917134097 241688775 412556619 606293405 844290870 146275284 540162112 100828288 508674334 889262729 951985360 600073977 819732295 357638790 980281601 456903592 914972858 99084942 308102571 433818162 953626758 860829200 979567763 285327087 393719198 655107184 816792085 927091948 990613491 734823048 814314909 213940311 332282121 220822854 863489822 907724626 943669187 602913602 694707152 706267877 776479099 223242010 613340963 305335060 471503076 276698914 462922985 942576289 943912509 213788138 402937518 939324739 979594445 779278550 860293085 238627100 416327069 609395623 773856559 672047665 703936914 977620471 987588174 842863952 911711734 179547591 234823581 234709336 706023846 195909808 293251405 591648037 848636634 328665687 774208034 924880936 959681043 816095562 832819604 155768832 977542932 317741186 493158957 830142529 833074541 466801606 561083329 971925117 991208229 241852076 877393629 14623529 216850750 425630352 906216560 257176947 669500073 785158136 927918451 623866512 713158392 620147585 724872152 47833185 307310568 720105015 720675267 339820050 528414669 652533887 740250245 161711951 183724177 448775544 795436893 377781274 428880380 923022677 948961087 773844687 962590639 458963421 895871223 309035939 855505187 542509507 644471544 112180819 441234728 879036978 996721936 533044874 788234403 354747032 598419869 743371063 747019690 55717318 610005627 98433423 290111722 116971130 787593394 305175302 772257367 323545055 511204529 902532624 942504294 292661990 865286217 503352756 865771476 802844843 924523374 298146659 352671321 959130104 978250147 653304392 929250712 521038315 863092195 878744379 931352604 203590942 389812673 735500812 899635087 830358536 916964076 907650960 921542082 353166997 639043037 848447564 873661767 37419508 333227965 703688024 929530416 605691869 748189334 327038170 669955450 487778 590619421 54177764 179570410 434326219 695394376 419300284 431386752 624717356 829393027 499040870 908754159 736699136 910871453 485438826 650454236 323057271 663924803 113772113 876333507 363436949 583636699 63646228 769745328 304355137 861223488 595887349 844989177 982179275 989919272 283170353 391793735 582267901 835999736 734275069 875540275 263311148 813457793 912044126 943572632 139217443 530015796 39150876 849941181 35006889 168987417 336781381 981344071 278156626 285308383 688817936 779871646 919118404 939044410 925719812 974925690 366737068 410596372 445277973 975595759 404684883 865826365 920059355 977665701 409188070 840110492 626975259 964596035 667270031 788423919 284611635 817014300 645404247 668666835 845755984 867999084 155310242 711679896 882341501 934871289 404713349 557825786 277167107 494392511 1256902 386540472 639698925 686317555 522376344 576961430 701966943 947049347 413288073 684293315 488790911 975874208 341461229 767747561 144975462 960850850 929861319 935512212 453170327 816929676 818800582 967375151 927388379 982215379 172957069 690908541 616048776 797613606 788530363 851938268 323479810 489403445 550916213 727167850 61557868 159081366 329942121 726882731 173696426 633215103 56445038 608590386 857676119 942106565 523144937 883283572 641170069 779886333 470712693 576015515 428657777 892145322 517907222 597875394 120890218 675510115 532227440 565760294 190899471 569396280 25192062 836881790 529257153 679751362 931200320 971403814 454792702 849268744 757553370 803354691 433362399 631486415 605469781 615394393 74001615 360898070 685958149 809085652 873509003 967258019 971639415 990633785 272248164 492785142 596075060 778933830 619995308 644058315 490416336 552187965 517437393 873859688 456100225 993544489 252644458 383515098 809997088 975703804 583361131 745733156 65227396 786313956 473295004 966155773 213375800 712011619 237195910 508317299 246903306 902374618 57939747 905752110 426554545 850777522 909171720 967106684 453799884 870050707 842561543 930568811 121480357 829593274 352261302 463537154 184755604 559908574 104556654 405429509 764317010 930633888 804588156 984533349 396476602 911208034 478982524 830776263 183568511 285713305 477535744 573349406 649396735 733810895 636725463 724050888 883427171 917033595 655605570 904327469 191018013 553464259 980060847 990326783 634291065 668298985 59228991 595929847 470346824 946810949 497481084 823968739 105963467 122072929 352423401 547582971 776856692 788136113 898283676 963471406 562847021 932338743 216125137 828849879 885330801 937050936 36429416 876145971 346148728 546273756 732101159 767514548 636003428 800170988 385032789 600902395 198755833 587491587 580404645 732967746 412311521 836458714 403855653 576007101 941318964 952064596 978265160 998886938 509030029 871447402 287893818 513249805 809508267 838294708 48140859 354674780 132696558 486144957 759671554 983913074 560246320 641581523 833770929 965839130 36531154 706181964 530452186 557815827 394833497 658032321 916766284 932551838 839409498 843416933 754671620 964967471 473873745 933793742 795230550 964529766 911733873 966968170 149798300 565252463 316601242 850621994 209476581 628853243 147334429 986637641 577258164 689764167 301618342 934484021 599897031 942273412 592939399 651235011 816558223 868854048 539130802 640200157 753201410 864084779 464013634 560954873 642134532 888962702 450230263 546195872 482956719 738911866 254335545 687328992 531695299 539650212 551433475 936526271 782861770 794760658 51870570 629946021 429629149 569286264 528374905 708647314 743097646 832648875 157742199 870654077 56245517 336000857 144651331 817079998 570370362 844850883 651786616 958018963 831800037 959599565 413290899 577681178 576278048 935345912 809298856 892049665 423948920 512147772 584483216 774179481 581473649 947979388 599447892 659541197 154917368 760004542 303870294 846472719 418661933 755580424 491664593 975047062 832912272 937257313 619003767 659130817 906624077 916262544 854023077 881860130 323243066 438740436 160747549 706809075 369854120 828698078 711449098 872142538 776180371 974283183 599369155 639122578 184344328 462968208 520436118 903715159 685855574 813765275 172792400 488412804 308926561 963595321 708015876 723840140 412514574 468099753 537605333 541086812 366190700 370388530 622543358 636306868 984675504 986259330 303677072 837719279 504892283 923405596 726969422 899018579 261548592 716730152 893817694 994596770 676338758 692428460 145932040 964165156 318696647 561660084 593416798 923654255 293268478 806658082 615056705 690238259 334218849 662706374 843359127 968887658 287349865 407239559 580117554 716946546 488889084 526188576 882226809 989323854 519797918 864162918 864188080 984136725 815836870 922583180 485994266 680505886 674825549 989854155 689343147 993744987 968982565 984061621 778230479 967453284 691320943 885005990 857179748 895830520 356013380 481548855 635663148 893147311 621537722 928118449 430542496 937469707 908840607 938194527 26662014 532317654 837734351 943055739 455649077 826532760 510329510 808265298 952119675 964643167 530559661 641672327 255296788 440430984 333560600 628346199 499147597 932918590 443983201 467923125 56105672 60630316 532860651 942125117 257742584 351520076 860258715 937553934 954424098 963443997 706384985 786132073 917146475 970181738 462634631 971536307 562555481 853471163 541687183 676664952 148827037 319200820 128567062 508756604 129684955 900117374 429308973 883437730 410597080 624428464 813667851 986189881 557060674 605356030 755762619 852081299 44129252 695524380 389766444 520318207 939344898 948098303 132734043 340776011 968649333 971388150 841561077 898870455 286173504 487683795 684864595 988048057 645436493 830510420 255939769 692535769 85921987 159805509 21434601 841569642 933564594 988625226 352124301 611376475 713415997 948427794 838821455 931228469 225359100 769163016 43439298 859676663 261759119 360611674 215489497 313529977 173646594 640505870 221289636 290749377 342438312 909772016 824134480 841435584 11962010 128837314 910664606 927639295 938338034 976633047 758213359 870211658 584336560 826703874 435673647 985111051 258369577 382803769 242922303 885487574 694370042 881611356 36676220 914964008 804831021 960562822 310138744 685513811 417269617 858763288 261719650 997823694 998751027 998895682 356677093 419000903 830979832 903126672 241551898 543931883 888702110 897790915 218876953 730739018 86600494 255784502 955988520 978850669 229735845 716756766 537068636 780757071 909896051 990181653 706538849 924637420 885794518 917952386 486234471 900594367 399683472 692066606 583480316 751883249 252439445 273214051 566003803 689442764 148714699 331168178 473884892 765473412 722478869 855274648 240643365 545626633 341319657 794595295 400078428 520645957 71644910 502477441 131247770 691443775 828801311 841438215 787167141 970187535 507262977 560230815 320878537 433204007 673574126 806346989 322403036 369321661 491026733 609672095 96130335 343159558 219587561 313187149 605486761 812164724 339010722 544142036 329858672 517315090 269407599 712687078 70284584 145480300 342972010 909452808 912066064 920839733 544801547 717047173 990161850 991599881 822666650 853998704 30518058 562834472 970205059 996193646 304612686 587235164 998727254 999331256 623579766 683380607 948957069 968102651 117177709 918181888 187028810 718666860 101841815 705492307 599272437 854086808 787270509 946396633 921045761 972859884 823707455 988495177 778878590 796213117 696689462 896306343 902298904 998590075 552638369 811443984 493010086 900448380 577871286 957345623 560701724 680093991 871924629 933105384 956762073 972757533 112350892 479013774 970441267 988452058 712735491 910321182 571770532 795188852 571482016 949984186 188043006 777283878 154276744 265813773 257540871 593260584 948080286 995576573 298697133 967601862 511955217 579517025 122663898 297400126 544042934 933757679 62874034 554594392 295402129 703555571 103569777 852235988 568949693 739567020 122216974 583306347 707679161 816907822 241980735 242148757 710706993 807020034 100424916 666520812 612856492 953499632 930345178 997757157 982527727 996569561 88101452 304068165 988577767 998546189 319920217 473732288 383313684 854849763 949266685 967575608 435490736 435767316 781210829 964942155 656298623 814778433 351955541 639339715 312392740 739194278 236455175 893265872 269481043 567511208 79829302 172834903 320774873 893758430 173232209 837097016 214437933 825557638 159693864 902505156 853717999 918704953 30984406 340686423 678756253 868041045 289493965 439209382 225740837 954779575 505479497 840737579 626211417 691581929 676931290 692014720 132440739 537120197 65671008 888061238 116954839 604832844 199786120 698641710 698736187 929070391 155211061 831472702 140628122 562002504 993376981 999366183 103131232 134085220 843906508 980992804 951239325 998667574 436690680 516953668 315060205 554199822 949189244 981165110 895439396 993186890 649444451 927632812 948527493 968190427 445736571 617981261 769622153 868939143 587417649 844309293 906823945 940303240 352614891 979411606 253096483 335874956 735692949 840415276 761005062 976493441 306198669 815774950 424241860 557765332 453759928 722894551 97723193 932345899 456861294 877177880 110135085 816053832 467622869 850906719 306305850 700428527 699397390 702898640 882626773 949428637 516672035 938355202 334557771 537158121 238814268 955758401 54426700 527849637 868726289 937324026 938543406 997888991 303483486 815185142 131082986 255943515 912825217 928539137 708955548 718077692 834689228 954237241 54170715 162943023 494110972 629459207 20777608 755090626 545605381 747590800 398521417 978390078 386137997 922957880 266476632 530476232 106051302 650852259 929572193 943762389 276908755 646642856 268783994 345615839 923318747 924789711 704906523 814744637 939124837 967232146 202588567 854229883 490359912 520581665 947644685 995850324 341208627 878309326 749319862 940829587 366745583 430856081 967496151 978750779 996681814 998616882 14667720 758496560 450824422 744003394 945947336 967397766 6717765 512470891 196300179 318388976 503396982 953535710 6429656 478537081 181034906 457326178 228810935 229332154 315839030 710654124 47172977 313776699 394473767 802124077 820024568 967163419 939300037 989885090 357810229 609263489 631401239 781513716 92681999 848771506 292380809 501393076 283694021 293203691 527330910 561200510 309606854 428134053 411558383 541539234 406614604 719260170 657503878 993367330 218661707 660686801 470461399 516515383 291639908 570045785 383927134 660042419 967866254 973388867 105881056 352888303 563856928 930713386 71623807 814415507 412875997 808038769 142515187 269732567 265929243 524019986 389577599 423969772 656475140 920207604 554820327 834366682 695366939 849957500 650952614 825717035 561248235 785948618 656193216 687837628 808223012 840269622 965023082 968769382 170721760 480348316 696202646 728361038 829443819 909048087 191154790 583976053 46740346 583415663 272689884 327033260 351390991 741558953 390890528 441559807 281513012 530378234 18587543 728883190 504930248 545440181 694408702 986974064 133886295 641845315 744591343 788270146 304292894 423304230 452987719 694092373 694077221 740400834 166615724 390798803 844217465 862560286 483473617 691155637 11627386 404035350 452664874 966276785 390674533 509552425 165336255 214979253 512903517 795251279 617118349 676299292 107471906 750319880 996563063 996583342 794276315 921116954 685963077 729766006 446708505 879780323 347284233 815978326 694662041 879597759 785647034 901294564 507882485 779544291 481659510 869206507 807442392 885881636 448947367 558047644 993922432 996631040 274098264 339320109 198624443 657146414 921203241 978266234 186837701 247234971 504154540 966054996 497522301 525541434 595081715 866183325 173277838 654129365 18573000 623792016 586959236 987344650 593496142 835775544 33571652 521055767 591602726 846658345 783458456 887566495 168291001 627898168 168989375 764125107 223082469 594792292 46658577 65096946 550968193 780611278 207987128 868692540 812169992 856900517 376993385 758687310 108099045 752064668 345067503 659690448 753047096 830558822 301416517 877926936 278233391 608903986 322081191 733672025 261186673 394463861 217207091 900491388 588456109 994248454 112156851 298803928 394093382 994989325 213995554 423948573 352838356 431487058 980438986 986705953 883215356 922273430 370871476 426171933 126616916 328867912 934149484 935691772 710405759 827806984 364427864 629990756 371627584 759407107 261710903 775314923 48052510 529025170 685162896 993925869 610639121 984792006 359497133 379922714 432615343 573572387 41424588 168043847 202507210 755835254 345182413 476650766 151340213 256784430 247825494 481753143 204294346 831134202 376768418 572238302 840345922 896479077 634951631 755652983 896341820 996838281 791906417 993952757 26037831 421428225 772653520 907063258 178918922 184579128 34815160 945474812 594392099 611470782 456200056 934403044 398943319 560089603 161672535 902848516 915937243 950637144 870137751 911215821 406595720 749507130 744647243 886187139 75887756 413033667 315832823 663806932 837392986 910940015 331086676 743818003 535632517 955043123 272036690 848775004 183504138 680139352 784310895 919295692 869318068 994233602 427352999 920198982 113299600 296272551 298444125 439188768 237990429 947699078 506539255 756883438 78001738 819327174 904739823 918080627 56963520 262172840 843101840 920159024 889266928 928837577 554505616 769808420 462709219 624965493 492997037 780413471 120434985 808286246 481758243 864753229 275959762 369080028 407820059 902537380 889563670 940294005 48181826 496670293 490464901 945007973 871274120 973926923 783426296 957470483 463345504 809062608 376748004 803330674 616899134 864575836 627352960 837048115 224248137 873010680 428703670 912675163 71918930 819811365 293168795 399099544 103043549 957231227 169574006 467001765 150946915 194634065 707847477 895289953 852230493 984288514 727742142 780887267 745055350 792589828 866669365 907676222 758710966 876937435 808816405 845500863 585854793 628883811 784207387 976932269 894003439 986329218 703633104 746179988 144060371 541042536 777682176 922085705 929312315 982264537 366777196 945152742 644496056 684442237 507545926 833761131 494199590 816154388 440334083 734897243 529600507 944888694 475719979 699356460 732690439 973379448 297121593 479703708 898689801 918996101 805474759 824232586 925809046 984469497 803150197 820802848 212455953 993490452 204443454 699016865 288389570 504853044 176609603 401477640 521655605 589045911 681695403 924348067 109064734 902611498 443526748 970569823 154309309 283836654 375741531 989106238 508430674 661712268 661763511 969962587 8180256 783174904 667719345 735383605 421660274 570924032 101587691 333702927 467626421 510180913 480795245 931084633 464596640 642477034 760878479 777920847 57333439 448945524 710841640 990748493 110845110 114579124 47731624 967257218 538481843 712971575 252473768 735381231 767733632 905525558 848265166 885531890 770935780 983420148 675388374 858149601 581219354 965061823 242062992 556665522 185469448 572343000 580451170 729519420 391938445 468436765 65045949 503786325 41221447 603049008 494624566 753624066 761917753 979003411 108503630 766215199 944437259 979706511 130205370 553757845 725933777 793383073 783242849 844991919 241459863 436283221 296927513 774441302 161152544 829844543 173715898 237790655 186742920 938987687 117515436 791405324 571757386 904165241 845170410 905854236 695603988 741386014 761142487 888215950 788754012 981145620 813917097 900090296 278199567 623074984 161858115 518104813 336548505 473876445 688059077 894861406 39915174 313964353 44783004 890826992 148077232 931210393 161436874 860607838 73179862 429453624 615104091 937353740 652775611 696266632 358924678 547769700 603072515 811148537 185346954 910915114 542904492 619267271 243494905 321753658 944455595 989819848 961753406 966081249 907764559 922459682 400459642 537219154 480662354 627149672 660862854 726326810 442474917 621405253 436340957 864424336 688409642 689602033 855984370 918036997 803062812 904210278 911853776 968895001 148605687 296642886 402729540 465699805 159223180 819856982 52774887 630326498 488346432 664071303 373235203 834701295 714632104 832074247 297191746 738951746 201314706 508319075 401726781 558481772 423658220 816227375 266212330 333263190 46059309 862150007 791064241 919359271 637991056 694585817 598502280 805028621 583445715 883223853 261870370 406738473 785973717 914960777 487981804 823367905 628000830 792599587 294866526 313289581 628271535 946138950 831055922 879507019 363772037 960493802 280401277 294732649 496366527 540594383 192080123 661905895 129462572 819230296 293046011 726215179 659614695 833680113 484271134 898801559 769991760 865135525 151895679 400616547 485934382 488214809 913088937 968760447 467555097 796728944 62270624 593070600 701302344 961641850 299291792 308250577 188921149 907350963 380593384 537265701 377119684 396724392 457262287 720213060 760006843 866213345 382632152 988809015 234849576 562144544 843990173 884038715 294039611 601608871 849881175 855323205 854912445 919195440 944839365 959857744 546339295 714762623 118980864 551240871 437486606 472160395 619836712 869794288 719018545 897404272 36217946 589051084 966303966 983908542 775644668 881881823 966381551 989579913 406482807 497611482 208703727 663997987 876787615 989608949 546343334 818193335 107038286 218699022 796661336 891607011 732470350 981423345 913871859 963631489 54325754 112738192 699355803 917836269 926773044 962227033 922626391 987358014 924482080 939125208 190164496 220954382 644294339 722819805 36975460 961554036 941970576 980292633 571297355 942750457 24699787 559140116 763938524 970732076 705778303 786889996 262937834 623176117 753060462 910131719 149481908 622106327 572706770 576247178 266362389 269520831 663772714 726132466 696432861 776957171 98348778 895253787 980230706 993239018 221558208 818546362 157511014 550056112 139289299 281947244 212179469 713117576 160343385 238879275 766579458 935256522 28107641 663574456 96789135 537259288 620391881 767185172 411709773 786737762 662557076 884086421 775332962 792522822 893327420 997977649 601003553 691071817 80425914 691977425 807218230 815497648 518654871 670765445 6460025 908390059 662523883 926346329 547871666 977983537 402386663 896287895 320908401 352293288 124751571 323817587 655896918 751921328 760903287 955318300 579602612 662524916 197758352 496770645 51019250 489757937 915322955 999115345 881206178 966382655 789905053 855510227 614035515 650355954 520917484 780718968 858334542 896245657 633958184 977186730 916085490 919136541 487436575 764175762 68859200 95585483 635320006 682012677 957828883 983867265 852136163 932201397 366328416 381205235 623233924 710316468 925775257 994491187 747214416 844936049 708228977 772954363 772616554 940262345 63810457 467744878 15586329 838847225 8688682 348839821 254894852 804646446 220727408 841960208 956882383 967271436 129532487 283181656 81133469 644030627 933831775 937068945 72492575 279047692 807228482 884784491 868852672 957833868 519887125 573435135 990275049 999099050 706898466 845985814 113517216 547801162 761065189 816797569 175557170 458969553 386465659 602373552 456619710 802069167 268680920 895093879 249116714 594583683 343202848 808837179 551382436 556414541 698766027 761384279 145840289 515247901 888214286 991993019 370071841 876874158 169115541 597894660 848633194 974815248 312918188 540253368 220883418 530180563 626443496 768046369 921214396 961413660 501594985 562708677 248950778 972564077 228089088 243056098 278911245 533408932 131117012 573729680 313501952 665634934 30215077 918122264 417798817 929008130 350926117 765435649 14347738 645504629 98364373 956226553 262267885 631088461 65220912 450234151 325716474 740301075 617229897 880049680 859307138 935520942 308608124 331958854 74769220 302519875 812477270 946286230 642292125 741410770 415385817 462910005 433431024 650375022 963452970 995249979 219541933 559960575 784530751 990696160 724738186 743849021 420142926 722737143 883672281 913924719 895655481 987332806 941086471 945635724 535377900 858569140 560327473 889493315 482395696 718110960 547170659 947671904 902794449 942916952 115251148 377162940 460435233 816833890 472529038 729324638 360888704 453590999 652563870 810309045 20731693 323177620 846085066 960258186 499471081 878007356 983426604 996665591 950666889 977034373 258652144 360158962 673973285 911229226 853360019 861964488 694061236 863928985 742084340 823861420 170491624 798047208 221518596 577589293 332268330 576831547 265817125 948781906 88623715 533581405 623425652 671471980 157910738 708476349 697071159 839210013 773327845 918106332 24611760 585142699 599487707 931438366 240984091 573769039 799482902 886980905 215096427 946201708 111423809 753809601 786439969 988124995 357075838 536721805 193050580 357780786 486256216 660582463 972736539 979509334 38273999 520557471 744565083 837116054 33801244 120063507 746183004 975920821 159747469 579147715 414621786 812556599 582473712 882901894 630529087 747513175 424272774 959292442 870503964 949751248 537536654 632924045 658156774 791254591 916795419 960787101 299381204 720396539 914291229 956193245 707883294 780990764 736330919 860269720 200400426 338286308 403350206 703459775 959182060 978445818 89820547 615676198 52276889 574005585 3713489 573243427 102324003 962984384 529851175 979755427 86744608 233682428 891954001 900567712 899219242 950503951 578038586 589863947 602114720 887823731 551828492 940826394 563166203 749562229 236898988 497308807 509460770 696058415 545665516 920179308 655494841 926935787 818650902 953401944 567640302 574916021 47471622 814325727 642300013 677009334 97744713 975054614 702017298 939998672 846477808 948199492 682155350 994244959 217293386 865206287 678422709 841187439 523745838 566302360 10923446 46321044 22110804 182959287 647527547 816163411 322314113 455748927 847518541 962717143 747545569 886063945 620564786 697646234 586906458 634063249 759194468 817344020 67426028 850057203 570616755 952416080 39733862 653610474 472242674 836192553 671334553 707839129 321152548 871498203 120110213 906663023 456011667 707954724 461784053 484367775 925809965 979493614 821057615 825201348 719164276 922086148 530558862 777564695 30033272 801502214 533935585 552852762 899060177 977566679 56054266 739820361 616570290 668556250 569325171 769751153 688461435 827448340 860989017 938442066 675045537 798589868 697540458 969767459 348587637 844806103 680340820 840445228 374131438 747437965 51283989 313542585 966502477 966978343 947839222 951152317 114601087 578436538 517029758 585188834 552976370 705901524 168610057 591612129 581360380 932756938 748088990 831577845 342522565 961126953 675887702 737351989 187244898 789057979 903516138 929243099 477250735 739789730 776027986 881309706 809408247 883661658 952319788 961063541 520989439 603601318 69209483 880260741 60464327 886231006 287261797 926179304 631206000 680468162 523350901 851476966 778014328 942689319 112746794 499436882 906889930 991634304 838662575 904832142 742819706 868540725 28869179 367568993 521202739 862553474 641559656 997852685 890241597 932000148 894132169 938952763 938364735 992956105 909406915 958068712 839324738 900684037 664926457 714513641 849626386 984903877 54537396 887497528 567711123 646191163 881540709 964084091 544665552 897592843 243369034 946765814 516137817 728823450 554605009 948402290 184042379 323330778 358606746 733421009 903570475 943895187 355392318 430408575 563810045 758723162 192365296 767489866 798156226 942532828 807383422 854881094 11282751 841363031 683976302 885087500 522512790 951554046 577677606 863283339 760916876 980228627 12570100 507057277 274106849 873259897 720006954 853425914 604208242 933358024 299369037 952894243 468181190 806798597 508876089 688847139 353209697 569510475 653780691 691031662 232300769 406006897 202004044 594551093 319776722 503811165 280213563 344054557 766335695 829454800 718209639 834982612 725474527 965961732 123831674 930559591 412672923 445345486 18097592 668123190 362038416 812629211 231473733 769679664 599129612 648635482 853388731 964232820 229658560 593584343 494404315 885349672 942186342 945734475 428853770 709020158 98993038 482025586 626574716 758716126 923914207 975127385 382993255 964767164 148333403 752020357 823545892 880565176 264797700 502928388 991435389 995322407 128970545 443042037 151375820 508503820 475292150 525293959 532605169 601781249 547993884 671482938 60369115 227049865 960913227 980664009 975193357 995081693 278255727 508525652 695172045 901817410 635744734 889070278 947911470 948298911 178340964 644858664 62399160 703639691 430968143 696271645 15076307 667282804 545273080 550688148 585230203 922016755 850593501 854428786 738717877 927549619 426603672 637468012 140460050 974823037 862726357 882050101 80550333 657759771 253975052 802410824 917027089 985487234 132697141 677533812 736333432 782934711 298847859 680019923 876882820 959333227 187219582 734320423 592179992 745736512 565539395 929511188 204782983 556427442 711504369 773669935 781716478 938589109 687708192 934095709 589686867 920982372 138402845 487261020 982981994 986328615 358826393 425730985 213449758 980482693 375504987 709184403 43092498 787647841 92098919 458336240 368505992 692783609 405654046 451146321 31323594 994361333 594537919 783811084 375938808 688787640 691830083 992807300 682118746 996384364 465540536 703441397 418989824 754379177 391328211 432577343 47941806 595269761 562408578 604195450 679731315 946112360 846690069 958274075 152069121 819907022 635653695 953569115 265157383 400990496 3783077 558570049 888662758 944006944 717038267 811850496 471940587 918548751 185349052 499631376 423738411 577087482 669042541 717221892 519117480 905987718 392798036 412428108 982103360 999173717 455866609 698154722 203225851 824038763 152943538 229169350 298549413 373962692 444771067 799947075 205216988 609275741 245321621 347864682 836972626 899269199 733962812 825746746 92475703 497998631 878374543 992005930 31673576 451895356 101859459 955117249 152228577 321744472 328732262 380776607 345228672 716086063 159854712 548992116 863413348 952729009 604180217 653580897 984122405 994719510 605139400 831278514 853896016 967305201 5693006 913530722 873619842 950693955 341829806 862505412 670489120 912489036 105034910 217216401 578316784 642643108 490598 121436005 722927440 827654235 338066610 879151070 421498334 706573665 844303736 946299387 726747295 753184078 190365783 522052993 423298198 698163960 936579194 949982248 778527634 826651188 562161529 749390128 756465943 831378050 200051817 217486919 757725667 803900359 339617679 367978624 589287973 922977859 950392845 978396093 401406833 685611312 272478019 829060640 793858077 858853309 76045859 157096318 869292857 914248425 84461345 261844337 858367405 873196144 654924765 904365007 897385377 934524901 421655616 452484689 42300836 557643138 395221746 570129181 917743807 948386347 249555498 549914766 668404394 724147929 28302477 243115945 917029914 925119699 678901322 734926139 497675865 809244817 803854837 940768527 475708261 733734730 648184803 917769355 374831938 576936234 112910017 607411113 589132969 619934530 146233197 195162529 825355098 951276022 218680337 387264390 375873666 739289386 779652564 934839575 675922738 696501141 275866374 626731437 743965949 855375734 444037900 714381786 853428297 932789656 702060581 915614612 208791654 301848421 961235708 986577235 830286180 869818252 935666610 954515637 528994243 713759720 951411918 954090998 518457700 531532008 758682140 978116217 738413108 973634332 82314123 536002013 913043533 930297562 175462066 414311038 556736212 773976261 560755538 737571458 89609774 686274932 477928173 579306838 408282110 592985461 835889834 855256343 986921073 996007784 289646281 883765499 340342551 503110269 328784250 636442586 727304072 965270538 9843309 527536901 53279584 854013095 740541693 793715674 574997069 856237153 421519053 893048320 930441096 938763797 35220813 823064261 588260918 697994352 494058552 703644472 93839952 324349161 125122513 535882331 356035809 662802389 289472386 782814116 686167776 788291849 887531579 911539851 236725703 654772289 234935603 961240320 686417786 959118579 652642342 972711047 740661843 806554556 704209641 726829950 533515538 599604829 565296199 818108652 713319790 967551074 105381438 949204477 43188008 66130304 197150706 197830881 41305632 836247598 123216423 601608136 343759845 926426380 985029314 993547362 486580585 615123044 273676672 583335706 887202856 993746389 389735744 612071061 923248549 972417193 674872505 912886027 430847853 444823217 390725107 773858423 270812246 447722845 652472473 770483012 318049417 449779095 287681545 543079048 567653641 686098845 222577961 723618756 379043683 737991010 470569269 768822623 633738055 682664749 990335214 993026448 451445912 460935055 521579601 765715291 710566541 735135552 101596561 869392216 85007153 674702344 93122122 975780961 73268570 583714285 918128081 993223764 426028247 455292769 543988073 846139130 673682335 856171331 405754404 861917754 619193860 752559373 127124224 638139120 756972189 932180016 853110230 909823307 592166780 781505819 101422746 935596480 402923352 944786311 87681828 212372009 583120049 879169757 134059521 471629859 412652486 827515991 409188856 823256551 833358551 950292500 945796069 998365576 896319879 982731441 331837155 869671363 683237015 863425208 117572662 520809887 931565872 949804460 719318921 873263574 634830291 759269620 89239458 196187203 31890714 859678640 259720889 546297936 426324295 530984547 2703460 984959600 364961380 658337615 104582018 750452983 965176179 994463562 682016826 740579426 139568518 630274600 866861959 901241149 432203708 609054903 69692837 106671460 217144470 271424293 16506548 902966926 472077182 552682408 492649987 531378164 119105432 247732465 270767821 846619308 898901014 989337103 577644362 863993926 401563374 753418840 965138423 970412100 629568969 903632320 293827400 814557829 830178795 906766617 809825647 824508085 55155913 114103016 507416760 729875434 102451664 275502577 49159310 801847468 20790844 826006887 625402782 967425215 351116290 554217805 264309262 505460926 779072093 995079880 671952460 943578234 117244061 899501410 215826114 936058011 670961024 866508869 328352259 613924632 321483915 774916257 610116344 942133986 476987451 548430628 793931032 828941583 386220181 636514229 124673259 545681464 44770178 338474796 326833238 939600662 294676156 318761432 724718834 796691972 670991311 824615515 713058452 923285722 373636077 946811526 794936705 995228643 697704157 844868878 202510673 256420337 910190624 969279950 282066019 688132965 909381541 955459144 596570743 612021563 302295761 440157135 306179101 477364769 440988448 454809100 982932880 993310992 442870068 681451317 141610795 294965763 815658048 924424646 705621987 877038726 31495418 433650278 983318914 996944314 239606044 381782069 467145155 852363395 886862097 912646728 742172608 943365539 382068472 811435521 641971875 748315564 961488054 984893321 811725857 846399254 960553734 973322433 995953351 998372409 360323698 396387717 709685136 975915415 540577104 703786901 151774857 599059789 987405952 993167138 922885240 929244656 656614885 979204224 331954199 625177801 406711771 938719359 971902267 988530599 983913517 992245750 400300265 652656690 153318702 721910240 198743956 819169297 314635818 814771833 696037172 984536130 123072919 535679744 586196886 753776007 731365665 767962666 748746697 959818311 350541876 872834865 338609381 500128227 460701924 511323379 275210816 724112047 836439906 897873313 652102056 967385106 598373837 811203301 957578204 992520597 457233076 470659062 756165631 940616038 203214266 884197173 449867151 553307240 228065408 648703674 634772764 903973501 465870787 511544273 717754129 852495476 138538895 952316794 605693467 692693884 933865652 957980089 65105530 206186371 74857881 565673200 919310899 996645805 101222522 149509397 874159295 988234471 461529997 698981951 267024102 811418876 524692889 626234668 121014557 918128486 233952916 771277708 92128487 734078937 372489637 785540647 328818742 595974572 384727943 924391035 783169215 979200467 370011553 762295439 532929973 860069233 186410423 590306263 47189673 584474586 803636427 887352143 707219134 866733778 583530885 948786068 142898395 323086480 354633953 514133650 674562970 900298425 768824855 938927903 824369232 863171941 944201932 953391551 897829172 977900447 220231096 325710122 194842876 325897320 186151101 660251243 232346986 607864922 750991482 776172328 548789206 870812464 174201218 787601501 555962026 989883226 881316790 984242443 988809499 998574393 692169040 799545325 169009770 902492009 804806145 876500513 176175231 490883735 376170173 902079605 459168345 512577076 225446152 388490849 194776364 223377390 64072563 503002969 109713920 577753336 675603003 984091189 461405622 966673335 548540165 936399044 467180578 958739123 570636995 921326191 292531027 502460834 536233830 547566172 133763343 794215351 535763712 805751105 305918420 520468302 496880501 584923537 529476820 875853450 351418336 696255919 743107947 915966452 449168048 600659660 27725257 627822680 687237924 848365894 655821755 916975657 605777623 678291774 569840071 938420446 473157024 922575350 4698796 293579330 863577311 942320825 955837410 960148326 157886090 521125968 679510122 905614248 916848602 922688810 405656429 767764100 928431167 957152003 798942282 834142965 881577824 902789953 709705660 836575081 714471497 992891199 302518022 964780719 453018218 782975504 165615805 719634264 588869195 988377626 233361952 529727598 578310009 881283166 339056533 694737679 989625354 998894593 703408322 812492808 624818986 956167337 664282282 917923990 483618161 878158874 723719615 912826085 782291392 947920860 327207304 860421013 36160240 148644927 663363909 748740639 436672252 612719375 817291139 863962036 85025816 662887858 848487170 860669198 786475777 800027970 92630317 778291820 683518496 906132536 232338660 367299996 188303101 957610440 924445731 949037587 706057143 937349697 326693122 709165678 583635815 757681751 728921041 792051928 418488563 863372308 240531390 659078449 371596259 443571576 297430980 576754034 315700021 466875872 62237036 948133445 885395648 949062302 630934461 787688201 751906580 888405648 762320877 855632611 382274346 579957471 277503497 974015910 230411383 412915994 519305063 770366928 819314822 952616817 312789179 468352979 607919775 613817562 967437785 992311441 547259055 661616779 669366095 919977847 828395752 970357607 5983267 934202905 590021427 599397355 506197535 961304984 307957684 657159749 299227488 836083667 28672451 447039397 348218153 355846618 197305496 662922857 528268886 568725884 413291184 992467121 320931197 545124030 642970263 902931074 61394442 195389990 62965669 533447182 217834680 854301548 434508071 582707778 891553163 993338519 190354458 204991843 327938842 766982816 570520867 892215876 666693762 845253355 575642009 981491317 309227384 854213223 712787664 959123036 368796197 528649107 132965827 740972201 527285982 996806727 748724578 985580092 314370219 477488627 876923889 996222180 231587699 986948950 339159436 434364569 120408652 264367686 738151544 996760172 501391915 668415034 906271626 910522984 360352836 657386994 649813825 963504611 446868262 506619853 354281241 729151941 998328048 999032985 354420189 430769039 691103180 995541861 426799973 772582191 959710730 961774994 294394314 810014458 267489310 812144956 783468803 969491695 227646432 986213631 667457983 764010447 228410922 902336829 420561289 741520742 666627027 764254619 489842959 665372049 87060306 93256540 827176091 903113723 749015775 805061185 680532399 703004278 211425854 697658744 457126675 845674663 944110578 974701042 890767025 961476805 748293022 825228311 557914755 803888797 521641532 984736579 474532129 937874767 959387591 995519506 832615866 865977750 670919069 729052650 485044818 687976965 707921377 719242178 575855954 721412750 621442988 895790594 517721073 922334308 69171300 698400838 901689465 945380601 676290548 921133841 405477617 677040798 96683834 561224510 557662270 713231446 618780368 793125287 910182027 954744287 484596260 814847913 931592803 985978078 732591597 765525979 343108655 504900514 40757530 257072491 414938986 682307374 343668021 407680662 747681925 891762212 108631063 675586188 291193469 540241636 551843742 835430285 598291236 768598240 625326660 797906532 796752720 931478421 868493450 905187360 845348908 870979707 912149865 920623558 442420900 891099861 467283169 629144762 103941454 333082859 726007587 786583645 889031497 949030789 946700051 971191516 715479152 743026349 231317760 964332557 548120199 970396617 490442028 735519593 339106779 928152147 263174341 656033274 239186520 600382385 705534272 852848351 23213339 753664060 383406052 934569595 185939342 199307260 789048372 889645452 836995811 971890729 875536547 896439776 588548372 713760349 602460937 758546325 374750923 704657790 932823497 995341080 630956442 748143715 630412853 838766147 894478767 943784391 469664881 509632744 199675116 825374833 186213480 393476741 702510270 998428181 84774332 970491473 478600624 797978083 827395641 906141310 510362296 966776249 574626162 903959187 915036842 999045277 47296511 539057620 779553144 995805250 495314838 762296073 230695607 884404341 122630838 457148742 579084151 652198332 471107146 895227945 238325272 753989027 920801304 943253594 953918228 970603498 689663482 797845851 511912589 787505870 909904597 995261515 907722855 953188892 516257839 924355111 324250808 880399337 408402891 657159266 66183151 416057958 332275209 910752911 46794067 920306677 911009097 963469110 568050931 931656129 197333835 664100478 983423244 999280629 6956881 297733136 892725586 901268116 855010414 861543726 965336708 965669235 416304877 611185367 160387141 274437048 563779514 990463787 946026968 968498712 726268215 753483110 409283161 760447596 317152114 684265749 377357159 459686752 689314186 775563363 334507906 440072987 822237647 952552516 702635376 955007302 808199501 977870331 895654224 951576077 936246688 937940948 181841457 592039094 273765345 755874013 575014242 685569092 791084055 994291980 664245301 952101518 43031532 900646211 618609150 764764936 751274004 779910155 834069337 853233710 19706901 160531121 966850264 998131854 66711389 127778808 419004390 778541760 261093806 378576542 242484637 936509493 730875629 891011088 821996133 897531309 189609017 685522406 968802645 997079304 985667209 991779984 800662438 910405880 482199713 944278616 406614283 884800260 596716288 826486863 938626307 996073477 204551593 638477562 489813144 615375741 303437962 479210986 700297344 754280694 445230294 454356149 169250313 392228551 52434728 381419069 429348467 669652723 889019310 910948051 747222014 818419307 206106353 949099550 316412414 419996821 118240534 249590988 603632038 660227850 42395847 241956018 85158707 851898206 306662530 344407751 775724471 834089012 680043715 996749620 126114922 890238761 48909527 457698822 567257355 915742322 220801833 739205759 379627927 728609980 351958529 799700526 232758265 482225943 800910096 969990620 170549083 214629674 856012132 872954465 225701315 416761412 474266620 662500606 105302776 499233001 896769151 977573101 9771898 77322863 887605313 898611551 326839527 494328815 985736781 999331509 896408355 922976046 396379824 917030079 608973388 685560296 308021832 792587233 603317242 820345993 232371131 961707072 70530441 308339603 760350617 856594413 342993249 778696589 27009411 333197526 598734262 715704368 598605426 783363412 889347227 945293372 625938686 845815079 824061273 857666245 590858175 591885823 766306147 803110612 642115948 990083356 274775817 423133360 98112978 778232693 361152343 702023080 349987097 932043179 3510385 574480556 420118458 426832228 687743011 714409756 168936943 209238332 910596691 951825541 563443589 757453541 86239080 952017930 282418362 955353747 967941249 970303322 668935598 836220854 593139029 976853215 431024309 895393459 513256183 757691207 876451840 911831500 672611329 796940292 546981845 985305182 590971925 885548156 336690580 726585250 882827281 942469375 487038249 548365129 260753125 397969734 276848164 624074419 568110605 788927071 952667447 972605956 319098369 374438555 589491424 986066500 504778976 587028407 617850557 924306422 791405263 992362090 644714272 853733161 860142459 903900678 317878569 848905573 655707240 733699628 423854259 591250034 37959046 150844809 587235291 670763707 718404302 774243385 485956937 583793957 346775769 814605966 670758101 757687850 520517071 595491770 37502558 754513651 451090433 526095191 372389030 425239130 365907901 427749611 512815348 883085503 52282204 832728982 43421749 338485920 158772314 649908915 302949691 799201233 741482863 978777779 292902147 370290704 349500988 853197029 806730297 983725126 254160126 974211108 506948905 932066996 892156911 969416721 316890304 896573385 952792054 992433791 939368582 969815122 127688292 852462533 561962119 757652408 426842997 899572256 858987480 877146152 368861183 620187616 771411641 995066995 591592679 901291389 896920 899924978 208304502 800819978 88809694 817402322 974754325 990037737 636954712 692611687 240339185 475045083 218964086 457504881 796370210 878090820 188391435 349433720 566404578 755064760 782853918 803651285 130262869 301643498 302245807 384024149 979921584 983603389 546663648 829636978 665597167 765844879 5283575 950726061 909819070 921735705 560080082 717155635 99192369 196292849 653376796 874641019 584956470 708607634 907922835 959000899 140944158 752530702 546549365 692318459 992005338 998821007 262962275 659895504 869936778 902354750 131674312 293647254 982687973 993817900 603156471 894903042 631091274 909349150 750035835 837525870 18780020 142120257 675000270 699434955 767088132 981078776 597844635 992650650 965432017 989264376 734215311 817983023 771007972 943695736 546768975 719652885 47677622 598515149 900061606 902117798 112548433 341195001 696478946 861240599 66447351 406430392 627707065 776755448 988629440 997479689 828098289 987679654 100491149 368255331 318814779 929334565 835243403 977000742 983837432 992892070 897600450 988825248 616997194 748008883 880237217 920487133 197953020 365688949 426465355 557527560 243036577 401435766 76420454 455568311 696631776 937480895 768741337 778363526 282691168 977391705 236544096 451728430 377108468 756834338 61123754 922911626 283979202 603667210 175850409 914338236 966913378 977916462 863823036 866114975 41866516 220601946 730839363 966866035 839788321 947614253 754234518 832910979 847959012 910050432 10518113 432604432 920123447 954675993 905748909 970348585 577556040 971895017 594384935 655060146 733050098 968085310 719915688 892849246 523603136 568779550 799556540 906179945 252773964 290245601 366246416 590447966 803660759 880489469 273730987 475643191 413790974 972801925 408659697 570287362 622716512 705572776 667183037 993330177 562818856 758825648 998516830 998819023 838596561 854454618 203476728 810133559 149720756 456024568 689963024 997167958 420620756 742345757 203595271 301205417 942953409 947332196 527529946 660122303 106939796 213629654 411456081 873462966 406609742 775470800 442527357 918877945 162325879 709315837 534234823 997369240 19663275 800783197 439807208 729982422 595748717 723677466 596964817 756377751 484796817 801519656 411314395 688945138 187005560 798778336 170387171 393129862 461268977 522825949 542774929 991158028 863172944 912589480 690966762 976014041 390501065 876489222 90296554 894489887 856209430 958496196 213846263 744948540 369729818 545816810 314423435 372335801 716673998 796222539 558365526 894415205 285939866 363309338 299554340 603253020 168510591 804724187 383845254 411046670 889549303 902928252 879013481 946972418 489772077 894558822 664901886 681764746 185551121 613578456 499968642 908597974 490187842 630910154 301251631 409612600 611379408 995476399 174804065 208694280 975732477 976258175 715249764 775056015 16010019 573342380 280993758 438740518 181124698 187897283 365675975 673064878 317454973 555367541 62259147 119762545 646031972 833132663 271555877 648280023 453039656 693587145 375828396 769144020 3723180 223130665 571454520 624591542 422271044 863166836 700239154 956507807 39809397 717457329 475853235 746364542 777881622 924188467 148673682 606342403 394445799 685340622 757838519 787502140 48278019 394567223 71606113 502318029 660854438 944891309 537638181 783501443 371650293 460332704 590695586 615952779 846445222 923489286 446496984 718201099 449186058 832357073 326153364 375259390 554471278 792345806 922203461 950804086 155068640 291030666 660476921 666253818 560952839 696198029 3068867 525930767 978341313 990983350 153672702 998949201 590981441 877780502 181706283 508129700 904099213 917467221 183813300 989473429 661809315 818490518 928522692 956289209 124165512 752520647 914686011 943078618 689465354 872088292 738890701 774794248 730039667 972345405 283334103 301727317 317010714 767799502 871514758 892891308 537170619 990016853 659268147 855065023 429151847 928751171 11002922 597597233 637692927 867532514 595090005 674564389 520636848 681032601 611362198 998835854 248964495 463771144 692045224 788242899 45882008 500224200 152972188 764778282 970855063 983098126 213729132 549451739 601313916 887363164 943430953 949599344 616542913 964398107 809283458 836277063 395132545 482637820 634532316 801255349 523633871 605587095 982169868 983378063 558244200 958818517 973067559 975181941 317006075 745363318 63895151 531921464 998914177 998978161 88805580 993665199 332274919 922898819 756608077 888234900 473742138 780345432 574785478 683170628 891601386 972730570 385428192 740427280 741590247 904197426 720992217 920601918 497257808 606208220 340012057 627653537 343735752 411485880 225126898 460701285 77295696 316381690 909177181 947390403 841807904 911142465 66920683 327094716 638359279 695170861 182603966 405026891 701520817 764350811 472135929 958909366 834927997 949257034 569437329 940325094 940283927 996984203 817189103 938574417 662138317 694005457 547103159 643191269 739116269 889961524 153347327 356169112 163162928 482085288 97460702 844163241 795332035 820457647 58654027 961989258 609864594 968311283 189085618 532102073 830498447 866378627 931540601 978263574 324253152 831994849 219220770 788564503 838620888 876899286 399149693 463024239 511354904 931100959 447788684 470574597 714927500 867845446 837423916 964035170 713209744 943315477 213340034 944860807 634997970 648368699 152627104 170761936 964536712 975040135 635832604 839741507 449159149 774484138 693844980 959919825 425393946 952293226 343983947 949584203 494112564 912132069 636918196 963799354 896950368 902480612 374331175 975341365 988465700 993712738 150643952 393365749 758163915 797218753 511699317 855071099 568985310 647084212 548676236 550036538 973958979 984396768 521384820 668217060 463775082 954310507 792449605 826788730 110967186 219143154 757098573 904556943 580143724 821788889 488305851 682737107 1897748 269185793 62313012 619276876 199692854 406668853 594931727 920365645 169767688 961454659 909487606 985055689 261236633 631411326 676747304 765047007 600170425 793094467 198966257 772089702 794096610 823342992 634402374 818680976 709142272 926754446 122942704 683271146 376785924 960395463 583036556 843070140 210332546 389242700 27714685 346483302 808103374 951098092 868486877 935416840 973445152 982460473 191634635 644822793 441786197 777545505 511153319 591366510 871793390 986101035 288677359 690825195 767341491 952535530 616753087 743135144 14096986 43622994 470760227 875611573 820678828 996321255 991542381 996906714 212658160 785796105 504828350 874174416 791377058 935830070 907142562 946485414 980478321 996612294 448932643 992779004 393972425 503390774 176267198 510712978 576187677 780180266 700647314 955122954 705561047 807050432 214478711 972089328 936852050 959322903 471271985 659261242 185892384 949354767 256967110 703738604 582841764 976798837 209277087 591951278 707145108 827715232 131811586 284137381 550260465 831728827 706863988 991855931 256938783 359617671 737439746 968658036 328331700 883648112 981638516 990860585 695537661 944557723 826637714 981140552 396871065 824394699 354991998 406143900 367365303 773403226 728925063 919370225 748341420 945387191 109025452 855425830 309432727 865142257 344892523 416427076 41553667 263846774 732383747 908498859 835864596 946718679 687598530 782393020 579861028 964540789 261519172 578704583 422454156 439238218 680760344 934843413 252229602 801528824 129772849 729016390 938921752 961533961 362431451 876007571 969686576 987609006 821923703 932389581 504782486 920382166 194748580 806905244 751801857 899154451 323905782 530378997 10221903 272828614 676370285 947664816 876749642 957160238 494091704 727138761 867256621 870203818 49966914 213829748 709464402 806793300 819981841 995339212 530267210 604744206 876681290 950918728 401275011 969584579 302869183 784583581 669482319 987469189 600900503 697832251 458077562 565513044 881223970 920945748 655571170 985094604 967483024 978043803 473144783 987667565 574585599 975895385 552251679 621236257 245039707 563147549 64556941 756375217 656546082 915375084 673793724 749570078 718993392 821038673 873261290 916379595 131331459 868093728 827486091 850975056 793250171 840466013 29776052 892658604 158117875 425151094 540664788 631852004 85148188 330643879 733766763 907569275 630494332 764205989 652554275 834940197 175131635 664159673 639643015 693372095 693587981 720675375 761191022 841345115 906572004 979173751 802238877 936442092 224228573 937723928 621427847 683078613 118583189 565194994 253266171 949307227 116860269 131672199 372134672 764795482 92776510 321613975 335056221 627742718 586421127 611082349 62403917 634166350 111979344 129010863 533180527 700926086 90879728 693807959 298658644 536907393 271897210 672135106 73465918 281934376 744148344 971884336 206668845 931095781 850961246 976338992 996737222 997486005 825507099 928494908 381506739 905250459 516640289 804259630 145878307 642824907 210071959 588319735 936477533 995609369 231586071 748106088 121709791 766525008 249228191 681050496 371725843 737607682 792378529 995622158 118839416 839086634 878274875 923175553 673682817 806688863 516091807 731048743 937554453 938528369 23026478 401792667 294585248 299235960 595226903 937330761 467169412 898010391 743402213 773720298 945247386 998949602 804032699 993632992 835608987 882258444 660366287 878918150 858068810 915439450 662032580 837920281 353204612 672164973 445832608 918549818 388900186 935299846 990379720 999093410 514841817 853523206 639928720 938363497 513412448 567128673 834792572 975254755 670301751 753371597 151286570 968106869 966844717 980637409 952152905 956950469 682818611 874941735 254555996 788704941 670087889 830256714 769890776 922370916 125287927 712193914 794373968 807417139 760371329 937927660 257275780 741889181 683767634 965804682 162699367 872855066 402376013 574287194 54203141 388200125 125688556 893131501 751496081 967110713 767781980 952179757 607687445 745851668 292667616 728945004 973252956 986369199 494121066 838091612 135787196 279478298 659465964 717481520 437986323 532949312 153589310 296629085 581624149 979728940 266792207 612488243 145558795 965785708 522959792 657696507 894440620 902422755 49796359 480845532 757639091 969542019 607630340 665638082 612092525 830217437 703631419 896288022 794810750 858081164 901420040 905568172 946921590 961348643 6175821 591008828 285038615 290102215 877693751 921528823 839114373 852179247 187035707 942720429 161029294 588504895 831080425 855892988 199951576 476227416 688735495 823488167 849107200 983855171 197835966 905504731 322452189 517702850 436259153 818504511 907635208 941640886 56715967 456222444 449339421 730500022 92853880 590159944 322759308 951964629 530825327 931756591 190566853 530434190 568491271 955800114 727703290 793023670 478592528 948462930 237034981 531155398 277644640 989659501 576420618 581252727 404346074 771373484 29731321 333644546 971839760 987392303 774605191 823536657 793898401 832067770 309770689 744107022 518422121 798574649 532037870 642188134 178979641 884570559 681865309 795544463 94293631 796070977 819747456 846514711 662291724 888617392 912473762 964415203 955544493 962493218 606918408 933111843 255994003 988024296 564481861 884640051 728949859 998984118 209365854 741863358 166958809 988817340 192660227 711072189 421955786 791027900 87712514 976955291 106773898 603462500 478514774 719228837 551062825 672067648 981817301 991929916 888475571 890711097 769928582 794863266 447830195 521945827 401043552 706855995 781482754 823506590 77218452 421459798 499146936 808498962 359908766 917093507 602727867 619951928 971975824 973469268 833436377 930867989 189210659 425420335 950112029 966775262 363323338 366017001 540506824 843122605 630091230 635566101 211951160 957666211 756288694 812668248 872113616 970603467 109097898 625154478 47115461 750843532 849278694 972425231 526386265 636675062 184440178 291105254 410252321 414039443 684343286 831310253 117627540 801112689 910343228 954672999 414222228 725792122 363649075 958342537 599445930 611644709 230293713 273689885 831985728 975305762 921807777 970347025 448355865 761483442 962266342 966271198 263885608 691154429 281670481 516386004 749113576 781909083 466874180 804871265 875615883 979080007 97519922 723124839 190638969 253206427 301648057 455824090 988087384 996967722 460345761 849038569 537131284 776968209 288826537 507743969 337074385 451355296 707377320 766824713 179493408 183020791 692002899 795082061 116907820 769745545 396135241 737918294 836680042 896681198 930174687 996317028 171374856 549693102 230430035 673784987 261371279 881436199 225318922 480867277 880332609 969875963 139799576 657189970 894354653 987354413 516656906 906260404 162692147 877417051 937516779 977942053 893596120 922934732 861589228 962822494 228695172 286117842 599751539 901992729 388936471 525804279 384339348 969898766 625568334 908420394 98774599 637205169 568395096 675316641 761177405 879335644 661701364 961845409 56749291 832317755 528577567 946340610 265274068 446289917 545048992 550843454 533775771 936184659 239834892 903338547 223515357 973653319 601635872 603475135 315059047 584246952 233159992 638743070 860918142 932120362 188121227 848155353 285791317 713325038 606503845 979394071 364967324 873786459 618697721 982481672 496266117 758624374 293745309 495519772 462825748 782526560 29264222 438000305 988098328 995094603 52262015 364787740 739881018 907977599 914109352 951775192 192783945 213440629 946986667 988209254 326816240 338153504 928388652 940689123 55105328 85086358 71987326 563438082 196938276 912561160 452084325 621600907 418244015 826978030 870232749 963160992 168755337 717330422 939963163 989369785 927207841 928205484 948384007 973149793 468174388 744517813 116772486 332829405 513617531 646051856 755367845 854685693 684546657 814573143 897718162 922692943 55426309 349354633 528814183 531353645 926255651 956979661 145000829 247524574 259093782 949917442 133853547 351303049 38265605 586090694 411653570 979645766 73133058 390906647 546712408 953646428 900447645 975034296 143832428 373725429 724565406 837029198 770172722 788011174 905377309 984557006 59431810 503620200 432251141 978770484 804607913 856308868 103955068 341068602 849381484 987392376 490482580 646442945 92185805 636470493 51629360 137674428 278071441 548540581 575451775 756092132 318677164 910958981 80106509 765357514 264663942 715868194 830164402 849919346 845799044 857018138 538038951 903145929 114100831 346562559 426011551 654061655 610248381 781016889 31201205 382911168 825862020 839300874 198490472 316630705 590153601 595724555 413831198 981782402 801331397 824013798 565246843 631593952 198495375 579079249 377386190 673844876 569496536 917415206 793315485 940923842 502493481 605566574 84207238 655158387 416540372 695160001 875612315 957121901 902838323 939537841 891078032 959300179 314549980 851999637 472974444 646955669 158268999 862144363 466560373 654920760 203869407 516044712 793567001 935864944 564182036 627620188 520161584 740097936 599221333 813959577 201956236 818919970 710561438 718644161 364044554 626109107 307716452 475870131 441734830 765983733 578290051 790116627 879880098 882232962 442875125 795165998 370175394 603235948 389813351 794115506 96051772 126578370 107776509 603285010 107966977 555309447 44627947 793254781 678877264 725164156 445232131 552626340 570240123 867362458 500415225 703832500 579335155 761675991 987710816 988384678 651241071 761566275 930302483 991306617 240915753 585344657 509203543 989584266 510345798 652216026 250912699 892206426 385604838 779818844 205952681 540069232 192622938 398409260 148486641 211731093 361008585 725119932 55012131 96761470 809462910 913126940 523654638 702405939 591447391 592341981 935163150 968971955 801169924 909383593 400819514 869082778 731600652 776182077 46828059 817623000 762050366 806672726 844892175 916890365 370306475 539969308 629500102 899320477 952704316 989738423 825536343 879846661 883628416 970049038 776306611 834291743 252520192 644641391 164306953 202978003 759222432 991311932 18026169 762554508 524008267 722219123 284060051 372320044 732855421 914971962 843362015 870123094 936055361 993621087 681005915 905158329 842131951 923535550 340895429 427147549 761603326 860103100 959511275 988159880 584239622 845519658 766117357 992909748 691753400 991276548 390337076 729822985 636266533 753369903 423241315 963957908 487367839 544205857 904885611 917376182 607849794 888183380 839769315 930776169 144615657 461758772 290883956 662791694 37946321 286405524 974787101 990701010 583364456 932068871 679394732 991006287 90527741 661891021 942859637 980539056 32768001 692054080 956852717 993892341 126137536 566186884 993381185 997721576 241143346 640931182 923177985 986139675 285464694 420114716 557003351 598199568 651803444 720336616 698760903 799194021 872057219 885502380 222308795 277588073 950615153 962798350 176411316 572614442 639322259 784341343 765457399 920705363 850252545 865111902 143432518 900173381 988252578 997683868 26515499 802801351 657241384 980357185 567360275 709602997 902197925 949573255 549229623 735507547 558406874 583902995 540254055 813821714 925166209 938650126 91431221 679027779 388608309 401728652 287732737 961912148 939521857 964831708 723403824 964261547 514017318 785318559 557105414 785174335 495483032 672875338 609054899 746785712 495317071 611998590 846353096 910988213 239559418 946016955 344369184 723380162 14801986 319903057 466372199 636378566 196228677 450362052 858038378 896740579 691149618 961279289 488908045 683008348 856797851 886772381 219643360 376799015 429146141 454876584 964897826 986175838 689226060 753527275 139742749 207715239 714564937 725913540 324636311 385338898 784483540 962072911 511152708 727590878 674032127 728226814 766933378 899478155 893263450 977619670 909459 984995968 800346872 823851880 986404412 995234788 447514400 895987100 559932888 946426707 721055949 726506674 829986865 838724915 638468522 899318510 695672295 857935878 937529098 962541520 309408458 542904764 119803680 665006500 375533741 869713961 234315698 605001778 818275517 836771048 79152004 865743322 109000295 505698043 408344484 633009546 753512183 941675312 730170379 877514721 468396123 899346948 248359417 386406655 807585920 912001374 415940676 926656196 131384074 320255621 814775367 975640181 953039990 982153636 493790028 899754554 151407239 410033722 347281076 905240204 836988489 956016417 987152054 995801605 898522885 979655549 117909017 478837687 963894803 970926396 68950239 322344531 217692622 895643684 484928423 797723878 185261626 970449113 298896879 630771045 845931233 913492013 773334687 962072997 742699208 837763624 345962584 472535791 130036817 411697889 773700 42732962 585153545 689994760 323843737 773141739 897227174 978359241 613971339 790302720 348817299 535947441 362260428 488283946 350732362 539105560 716882362 846580387 445888469 571241258 19633685 604242057 719036751 721685010 640928203 805113705 888855208 964935423 181980381 758419114 236648822 812915218 965111243 974713377 983593122 990105662 661353162 746894946 516938777 750488719 826217474 983232808 600168180 885550669 388098643 881943235 815226391 904871986 34484786 172458262 519056417 606340486 75132208 540448938 258827524 783442514 974119378 991357945 650670144 702053242 892996470 941904862 540900674 833175630 713500858 974309130 242681342 577205297 228081861 487576965 147461696 746227433 794986033 961539853 59273757 639006702 349159371 380348743 806227983 932274689 317476799 773930406 18052389 994820153 304782286 958250868 997828015 998102276 116648207 869556576 129728970 812013583 960524379 966370047 685044840 980130682 124298979 159030319 457115896 954430862 865302667 983787620 34847564 290744537 110482334 789466949 389480062 519166757 767893859 986344574 848462719 924942644 199568072 659461883 966328324 988196339 493375861 608857312 219335855 288152578 301718029 893383539 76126971 78343631 204388049 761653741 900359174 992740174 980889128 984739011 613256173 931580358 303786384 657924574 382123011 953047964 696807905 887386001 129718052 229122716 539530031 689457244 375215843 386432543 694268425 860495006 568146984 996065572 979701328 980463671 208724284 408456834 969858111 981482427 557173544 625578818 108189189 808113161 876482390 900633833 332622017 849457331 41827209 154936775 143381924 583693812 716576412 760852396 295991001 712492451 789363511 820199936 219247942 771504981 206677297 333685515 504895254 714053638 661612513 734360562 979870053 993899416 240174236 511896855 989561633 993592353 332486783 422407015 175381156 443490487 820616620 987000171 389238068 597166738 533952589 636728235 177228368 437543625 316074190 992872335 586459809 639570770 212875996 915302122 994782425 995488014 704353461 890738903 454291237 467286756 435886644 720607850 148309924 205158216 520738530 647053308 824081400 857435947 991910281 997210867 64293219 431828204 95600140 456578880 227179731 696157433 395849986 521213353 420820317 796964056 254734257 516815530 88700107 910710100 752642566 765171952 509119691 829605759 973392695 997529381 472077496 907375482 264297164 320224260 639830657 870421394 157731938 564046763 144834368 313978608 983459512 998440841 170980410 355108832 435444861 575701252 655866870 672658536 684531244 791297864 431769270 439990075 681269465 812849774 582688304 966006296 444623675 985465105 215572233 593312778 48412469 980467198 72779374 647519674 42586863 155867929 375555787 668062522 53878136 772405820 499388539 997948894 876462602 935617180 915585076 995602136 580247909 786754237 507644782 781083043 674938550 686308796 414640991 888939004 291862136 471375197 435181605 629135696 747239647 926593789 943195779 957951407 740229244 808956699 428305628 983646305 247897012 504654563 411399470 482849706 691844363 874680971 872503177 982862623 553826526 926973214 692122558 806483041 540139940 959917421 740457023 770173570 259092854 275550190 155218628 348750902 366376591 770790745 609408985 694551819 537359625 790748968 361569999 858744292 846877347 874962936 993623045 997344035 898129378 930490316 322092751 745886976 520567828 572863896 453805685 782431645 833228666 906469899 92261137 492451904 743070120 891880170 921052583 926483723 865222067 865419622 11673231 345208020 402089671 487192137 604102972 667376762 836852032 931221039 473833785 828569569 203294131 907775401 556359752 630650014 695353698 812232881 969516594 977709702 790253750 972965756 902902659 925870012 236755470 945598655 558178043 800898524 653163496 831495481 867835349 937858539 269179457 817371418 665195060 772197480 361525865 746829636 610061584 901858905 202591372 357304915 210296938 556620540 168626907 371797224 114711298 380987879 492611943 717082982 385529574 574367235 118211458 884980625 547384603 971065702 412362830 480592897 994267124 996641062 293414028 339616306 937299384 957394518 917456877 974219601 484459761 625213273 608729578 781659319 168484534 672785281 571597386 851691465 959669638 975390018 997705016 998642579 916578703 991103738 483777446 840738421 600482495 789949626 858860957 937660549 505165956 748886615 806464105 912871146 808083525 895286946 5579092 945236788 249618534 661840780 740892070 754493883 973136070 987076491 477222809 879856532 639490052 765540102 424704105 732632852 668500195 763892423 617960504 783352572 643026891 794096848 771949524 883034812 938532797 959669090 180474312 544608063 496908464 712499092 601978641 797727041 124725650 752209006 15504834 278417162 866121773 944452572 341726122 886224424 92151416 295942224 895486180 917183951 253174808 530791103 7265434 814979778 669337933 726679528 205666598 353019470 403513392 600592327 514238164 901880264 455939633 737431745 729773954 951648394 402764682 504635546 293346477 577689999 94122198 711660750 113033904 825862398 687264325 978095755 686876102 838504663 170753797 704020272 11351980 649416505 41401839 238794934 342647142 613784790 717533638 844814426 913148197 995138558 935896955 955448946 387191144 939476694 506948555 563158053 421863274 972621937 519096003 648029756 282557182 823944699 300660729 579471300 654275458 864700497 627322748 744962219 958680284 997902824 820238581 874525583 425770708 662961570 21817922 496011091 780076920 865611747 6641314 536954762 299351770 472964615 715440837 998580770 42921187 291852889 305148716 424602090 406938405 540285560 142992130 536651273 945387122 955913086 938885559 965338540 716840770 736695307 921116862 985778699 425782502 944360329 103862957 503770172 670965336 913463369 162658290 238381980 942588169 987364139 395761417 789149247 454748632 700662927 510170031 627122515 768501372 875519889 87968700 974068232 326754490 483205770 184196288 311472374 903333776 974579175 384202381 887153400 103768049 726407520 924623575 965260950 544499177 822472577 572980725 986102586 222464178 907877898 327751113 753446885 642201352 866710629 639782564 776710757 922040711 955954286 144027578 858862079 562015041 712897792 167646945 742754527 920613907 978174511 914921203 987706396 826444351 833576609 579929540 969062098 801812306 854010212 310370234 819438402 707839803 881171418 630013642 879897910 900514145 919448209 907018618 939729468 816311604 977379869 552677634 961255348 866303949 936371500 595552040 948348792 86152862 230764217 423703539 963679309 507789528 736022691 910639956 971040110 161694298 323041661 274217455 346495173 230391957 420539034 574941161 750606098 541206626 927226232 650544611 846339611 55021332 655549354 229977267 616217125 840943920 998331769 579428452 658462450 948637347 989327126 449824858 664832811 117064494 826767809 800478876 841233815 672179311 758717169 366224721 728062149 382641200 589837144 234321208 869308495 314386220 791506784 240205627 862917343 252356059 487542880 832803733 856350976 302022704 566118868 462359230 843166106 171971463 973820354 481078853 857860936 305981881 787107741 751765597 878528668 915092919 958001551 940081585 945294654 259172938 910754926 430986731 779043190 927157097 981553301 769557384 811171688 902814675 912953284 19107102 659817534 499932463 638828226 608532680 759281756 285617799 486163456 506107204 658644191 271701619 281929160 760095820 824952871 570589721 919378597 365254234 900898043 653067698 974000634 94850715 586091075 505261858 684425546 137064056 429540093 628170431 758032800 688140576 819893173 789528772 945552442 971587000 998925272 559480069 792068707 961225490 968447898 20739724 390963977 72186932 287618487 171446490 258349859 561188424 904122940 244624678 971210189 688866414 728694157 644063814 745899692 231511166 813797858 536076443 707016087 763844496 907818021 154855615 811056000 806811897 948149019 335886976 663351441 187997008 439264920 276266420 384369903 508697570 551025658 773804976 824795310 647395910 948615181 691382875 864947503 593294362 926567666 329615639 395611770 6111627 741327375 834274585 895181297 274643264 292395153 309241610 559131623 601858553 644565057 937164612 969363103 346077546 738133466 339002859 400371798 494348281 952220702 740922922 990503176 895686386 931073051 275152133 391417642 807901895 832934506 950211506 968072618 492224232 814377634 791572816 994843369 963429867 994173641 20306377 131842753 229465716 608854720 872964483 960836814 173203423 498194922 452231481 693275314 416490370 893710327 30719697 71728148 560684245 599210368 265182936 602361259 991528344 993144707 329236525 939489379 71215127 501400405 829645751 908410171 993147643 997395771 15356444 966449631 361656168 862533170 462070388 676928347 537525837 995562468 49162354 787554452 467453406 566760658 934007701 977636893 713103948 948982213 327485887 627146380 567523013 600361651 725562696 950844478 233668079 813245479 997853784 998927686 826537518 975226092 51202727 986451591 11171870 492477656 782565661 848618063 172357859 955915955 261746810 386339561 219533888 562503680 508719654 557953250 955613377 981789070 851667166 907144535 871822011 934342116 836242670 972390355 647099287 938047339 766129626 827244449 179385393 749773479 631413388 690928399 485208146 599988374 274525057 618714393 327582705 525196182 342953500 876174552 494011225 580689429 998669120 998751268 764099579 984464879 935555631 972837716 184907870 755919440 89592377 587957479 404943557 455179985 453481631 672810040 132622826 378491846 26568115 309721986 803299334 952103376 37221889 642306726 612268070 945692712 154191309 791062353 255853788 909324389 807463074 933793741 594880328 894280701 977195356 984591575 149572813 948712013 316305745 602944378 496123249 640936467 959021487 971729392 92412800 487996336 182856914 772926876 873845796 983000289 388391077 393260656 848635556 929644226 204873074 493761175 816904207 854585809 539862244 687233545 690529200 947330496 775134209 925320054 441796732 667196932 662458435 911440393 836567755 849570947 585984460 675752128 937881272 951202455 341351377 414777322 627152252 962908882 703948303 889964961 5894726 381028466 590628363 707085148 240855829 393161416 953762432 979848871 487534691 850796803 5394175 408455712 35742676 177448892 41021903 832729624 758472906 773643927 529420217 848628821 88477236 718772677 503562197 957931373 978729687 981216927 861590405 897348158 217604229 487576460 193817496 828158585 130655317 780478132 517896363 750099614 141274018 991571193 404375424 946134210 848284590 954266561 215503561 412383623 432304802 481608476 824147890 834833642 460960840 536042708 698204883 841362084 942639881 973163878 792076759 979763257 855213668 894712556 430643710 991199241 483976058 676880577 633478337 798996686 839596661 991661602 659806837 767018224 920471955 921079395 853904337 898549039 75561825 839078293 2233381 788887978 393722918 959025068 805036836 835385463 694244805 823910224 926273987 928508274 640534001 706887934 111676802 563089919 73969290 482495676 386078467 911853752 405989610 568998204 12510845 242167893 559686522 745588244 46312109 878569811 260039012 996281542 774703668 878796907 782680350 912006985 310156484 599510016 759067746 864271640 558066842 808530203 685338547 705093465 323925838 458152525 197678699 470177995 839052254 923951878 668438864 796513916 889917059 930180296 168478172 290394483 713050065 988333834 59809705 792692792 109781387 740288992 341624183 879231056 890508927 987094651 142884195 780551608 957636954 973461727 403696316 815632920 660793257 707483136 824532003 842884002 451152541 897325251 871798610 972078252 720549543 909830405 835830631 981665763 494153303 912357687 887117689 890072679 285879032 970239976 299423968 668275114 217769978 842801557 71284406 366193910 830418804 935747350 864086136 952405682 211821540 287767458 675164100 761786150 593541414 996606200 471123658 652598148 890187988 985826036 891381387 993564716 870652899 976957382 207154217 406206361 731862680 900458200 521149014 786879588 166509771 889363870 222996908 495519744 788769514 795466390 398030656 633247640 495969083 880588620 713243602 786937301 885200254 991490274 457410621 868533506 28387567 863730616 716436514 980920648 424605233 622808309 230329375 801773640 186437451 913103177 345408703 702403670 459540091 509786167 444890638 650576697 60448323 960635614 556718686 733107090 289569310 767777442 80495468 446699548 452852363 991034857 271529667 636971790 229251685 230109937 381971974 516505003 339826864 607837720 224279096 488722264 58184418 810127656 149716282 959771041 283020061 577664031 300050519 771495295 133716230 898180224 89626626 382003270 898016011 922145098 326238581 493452242 234006438 264378795 984764235 989936228 346966840 710495077 345644432 705907819 843347473 909729056 872672922 990923093 532164451 577520954 761482018 951899124 541481708 665251877 206186035 646441871 357272809 574786018 578500367 612712924 137665340 568090727 130427855 599327501 503002471 526905339 805915514 868037278 73328406 373100615 467018486 949845816 353778721 356493291 122448687 656007607 764722810 892951945 139321650 313963210 730740786 849713901 804532107 821141403 432431930 483766258 860320378 995142770 263018723 668969452 251513625 318589913 554539499 860295349 483796780 959167649 327833643 498006996 578446977 677164406 216758800 331611906 547501117 593325622 7108144 415286344 534431994 574045874 582772864 841353010 620078656 654963949 437758797 690109569 982975025 984889134 179410039 330980970 446465929 951485342 664725174 800047598 785643003 993432429 378515834 575923239 869207905 982719328 582979567 831933531 385916445 445513909 311121941 791413602 944826129 985141164 961310590 968981270 581858584 857172647 877993658 920218986 785937082 826953579 949355673 964681359 217570169 893085145 231466991 684377210 628154696 729879469 130381824 718057733 350715919 693585331 543801795 977939837 362892629 953844455 42733048 798742367 961266013 986219243 987606974 993524200 138053517 455034119 850253150 982004093 155761338 414010019 31539279 67211455 10888233 226249485 525190590 849676000 758876944 816579422 38573447 244588055 906282560 992409669 379840903 588757110 147861050 647519600 697040763 840130323 32499211 181407295 654733210 802873353 949620728 981149154 768484721 933266580 998892183 999016437 287768145 813663304 141095225 941328049 837107981 967985501 858127270 965572389 895415227 964831446 677655867 735331119 625367081 751897008 662612809 991096635 328098349 529318207 706522226 729858649 580847352 697989075 836348136 904001339 77231069 325188319 451591508 501752848 633338485 769968656 354456883 651546869 205463557 238165946 625347969 958835184 790955962 904172768 935071986 964000234 896664114 910828524 810415715 976888333 567190072 943503773 878908686 948815067 467275355 777840394 116030288 830641540 171864992 570856002 378889790 872528253 599886219 943972700 357747292 689353300 301546702 462776175 540399803 599555248 530266996 937801978 432411097 683714989 930896551 947745714 928704303 977955814 731002923 980641010 519003570 994187133 377542165 410066946 969323979 990660439 794308233 858253192 66564440 176742153 861575090 925439476 203786554 773642647 416562070 490111090 291139466 990198997 776159286 971729842 257883425 393256503 201215221 736466290 534706889 582786566 379300755 616670837 501600748 734423439 529480673 874049533 446722041 818315837 30748753 541143093 134123415 465577612 533594674 705152389 342468933 955154508 162458479 861018630 342298800 487370196 883801159 918223090 207419510 660775956 549764995 664597122 250217338 257063432 42939334 419257449 481021368 574742254 201798214 988568942 484162658 613772265 725787630 933833550 291855822 924232759 732033829 843233459 21999835 922514627 759397255 964630660 168576563 169986590 655006233 953870393 946671870 998224659 804402569 841046775 570926816 879347248 571725936 918550828 876769343 907225097 193462747 510546474 169110169 294999853 966612940 977472265 977724067 993175335 974162029 990100703 37142834 658718765 995179847 996896517 513709548 856008074 937471181 986913451 326483493 561269425 565715341 593738534 413958222 697571314 886165357 938105274 918144922 955176258 559025577 698703771 839930472 865213002 481537451 965376611 764955282 829713142 144429899 637202102 665089033 833862321 109241012 398548832 627420921 837969623 82878777 635518822 979928340 991731781 48936671 922596999 63897530 724744630 922205948 952458776 553076310 852186530 562809191 965982100 4290946 32084092 161898357 652248922 704132769 903342500 770802166 978519864 101690736 789953283 246358098 661199419 805570940 845186546 231562798 494622682 380801446 809169883 2661724 468981132 917167929 973608533 863115732 870547716 196107037 415647047 756654742 830077047 608048517 822786954 551121456 933619206 370636202 602792412 335815189 428605499 403544276 438895138 673603516 707318481 639820540 788170668 411776907 696333996 676789564 940772291 510728139 851352126 547502395 653006263 35439375 911776469 674626283 868384054 6244956 561903227 67687526 74086821 145411243 573587191 430180976 497015702 231550870 417476944 10337614 398893310 666622848 803951833 420334470 982868378 982880199 984942833 99498851 715120962 625196000 677682356 487962014 744049291 71772499 600361891 99289527 417126749 515462230 569583055 211091657 513049654 286993460 465543477 325618909 421814200 459453965 544406320 382038541 816054071 518549917 563719906 177379074 354277738 314130834 535420253 432090984 638512227 998330980 998493449 468832616 581081443 831462968 950707482 595901189 604612172 736567793 783187558 875891423 879463596 79867142 297777712 425984506 490015694 506052626 663266089 737377205 998873012 306550279 476699230 102805727 847844894 574188269 761809302 541116639 803338782 933226418 938383332 970877907 992895161 597169007 815092969 530081377 681896724 687158029 978475267 398646683 950687763 833610089 951614941 662018333 942026457 778010397 868386422 947538296 953089728 481933536 764957752 461402603 719470307 900964200 954136546 495774716 615992408 318926 465831132 40932359 284552920 216541298 903046189 256689770 328434675 247295090 735798153 885461491 969555620 184098912 456126908 483001311 765372978 219468237 224043724 178485952 766628657 97527588 748174448 518375029 690035569 484868724 571087967 606445875 889448143 467362034 734795138 982308285 986304979 990330499 995457672 615884833 750427998 966269094 988458659 151645138 457349169 962610707 998167806 766517376 809407588 338709315 912346247 80155408 812388478 461878359 961584971 124783620 357044363 84729030 193404667 794973887 918838856 538831536 708174753 649289404 700116640 65656977 624165078 301491222 955960382 721546457 732766364 152033362 714848750 514137442 624580574 217378110 373336108 511768528 529314378 367181689 699485724 326645206 822954306 581390593 786190707 669510487 734513845 381833120 585249439 49316551 920809766 612983186 836202831 854684431 887228432 438820399 530140637 70773591 775483297 126339613 743530117 553455441 581166149 289728588 531696471 396471194 902339239 320768967 865845390 667215899 999110661 360623097 614547584 355863052 643669124 229063912 659841509 569451527 988808139 809393697 863521582 158620108 884616861 292511112 304405430 154409192 952928973 443963758 474406071 940210357 964449866 742808724 921438458 684803983 936997116 271630803 652471070 50642389 187445288 983468593 989387655 348844202 824443849 790752815 802033761 658211076 688424082 344526267 901110705 759665211 889955091 318464111 723674715 153243168 300506760 777279824 790854477 520703948 978676866 194795792 267073547 237722030 944065329 612089649 791450665 378834789 843482716 622111396 729066376 904640126 917646676 30400936 472039530 8466243 534851915 846361033 904453553 451071252 937135884 540601223 558818887 145119569 807554864 755287029 782675746 222130336 814868686 949695543 956912205 761588780 879741695 840634437 951753762 454863360 897228480 54856913 953287921 503732841 784562662 382142430 831431257 78060371 592126437 274362005 770854159 374684738 439991443 566423417 879299547 583103884 884991306 596922648 616676003 707987250 942163376 437311457 483894023 924091845 965409201 261381974 737413888 556407682 801039944 226187022 549695936 310617170 563292315 100337755 564981854 412702645 776722095 791424806 850725940 611559642 615408895 933723749 971761200 814993457 847704989 208533801 604112554 964566309 992776685 148995635 751473208 156454582 800267341 105574249 124400517 613686032 912775613 993617089 996500055 190152678 268967730 851871647 893253145 392252415 997795495 100926680 575869996 112430118 391686618 1937237 943305473 840901549 904642378 259606982 495028334 394410856 671111051 711316969 948837046 519530645 826382409 650075805 911367608 254297590 340579267 256050423 988327646 608141103 783203867 382160812 594142624 44172432 334479553 632480435 878902283 984702833 986100303 78947251 988143290 294893630 416736726 939577210 960364265 243424994 285915317 111228135 404594294 775334105 949807487 201700660 638732655 137705284 967299632 720341264 943315175 296378835 814262531 719334047 889653861 230723459 372552180 240390801 732786401 808339076 875352803 494516151 983497813 229844060 299897172 100779835 463575752 547140268 921582812 750083811 870151186 52534881 423500477 394971073 842205441 58991401 754246392 235967161 527434115 575263961 645687475 301585282 859564878 803815679 994822996 5524751 426887558 903572951 997280379 422666766 472397658 564490150 909993865 792477670 886534759 394643700 566642812 338643178 803298606 38918775 884705841 614376493 968565176 954277284 982628694 754798581 935623331 884151476 942578531 484155730 623057106 757829447 772648542 240214566 718849778 337454848 967870504 515210329 863038986 706265717 877572462 647016036 744950348 103436942 646747105 365839437 557421526 799213701 910111291 426742855 495603602 677534939 840056660 945190712 972111940 869335010 962546558 427170822 785228198 75503269 480905748 359915129 415833944 422640845 563599878 595099400 667052384 42266507 627117176 34151196 88752822 350762251 665025977 857419668 871890176 985067826 991229034 990475920 998856275 398730999 789379955 849289747 883863948 4699664 301800957 388669235 669284168 73345831 530685033 509505302 747611487 6574003 742904346 787621443 914817738 706878111 971261258 947742910 994853964 291458538 781270596 786203175 889076822 228391377 508400919 688087769 701417029 243592081 411843464 859645017 883340411 632959877 841633482 476323613 754967033 234414181 371038886 671890716 708692425 430585837 939542039 935336632 968973201 698787689 916987630 59629405 436940961 734891825 836145373 8518282 420584197 230900247 851070165 785766442 909337852 631611448 649107394 560687347 754887383 919450299 999000472 139804101 952912146 292353371 912905524 419907827 469126093 890939693 998444081 865292966 974190188 555458916 604410125 470827047 577963015 592834073 799554806 530912231 629540363 652615793 699596147 637216117 778144185 774113862 898381127 281319317 661881483 822569214 928440757 62898344 268822625 339198994 947863726 891733829 990168647 700955806 822625126 759504606 944030100 781803589 808926964 87518004 573671526 639588355 711189687 756926188 964647756 710415300 841333248 281061874 941902856 137459586 596684775 101682616 364251482 789828782 906833510 791601378 994573356 274982007 862754214 189579355 423051676 578388270 742859367 741509202 980971572 43770341 910043208 385810667 864250663 951171686 954530470 697463893 781862725 326356493 400489957 955941554 980935493 806023472 824714861 554727012 984576376 354173338 966878137 654277218 767286275 52108738 187339913 698277444 773055055 775119319 961019633 742227196 903374597 64814380 448861510 499857799 508085832 799690041 811013516 521548917 807674215 249006265 442019114 311984957 966383323 767379634 871828127 870465511 945854824 95631633 261471268 822230489 836068021 845062685 967266997 477788654 528720139 158682637 450514170 432944977 941045455 308562592 921275035 877957579 969649691 507473115 997008129 305633796 916964319 499168915 800672837 303954023 720994454 396919419 786358649 205541623 735614540 368605178 810025022 417176458 891357108 490341145 827759833 80199216 173819751 199571476 530707930 662941184 729362485 229732193 533151666 199938982 743460665 61575736 840063447 992524560 995012129 955094335 985859208 589985985 985630845 294713230 542317124 289712364 914563819 908875585 960506587 691561407 982148495 263700230 928890824 645852959 706050471 328339840 649620764 699912751 879554898 934100666 970452256 484822683 516276509 870959058 937871084 745120594 759829776 27930219 757250673 205014845 671103822 939072201 962447303 258396730 393174750 382103836 626859175 13160073 267766571 631099166 830784422 289710803 975904682 595168658 965111541 287043136 603818132 328646908 577411464 90974735 570973414 767617720 906039015 923226362 968843458 628782337 966396693 86858445 410592428 875303704 929584776 438396697 530277178 842081087 936560987 791058295 835397333 287562339 303095876 170241843 723986187 126542188 177751858 94139612 339917129 56354378 244978325 825177333 911965797 865861586 915246562 802709544 875117228 699272206 831372108 779824564 838653281 974185718 986732933 27279464 657144018 842089986 989395100 950132176 985124289 94253564 101874733 683174304 826296465 79924913 924299094 56015820 871454994 136239157 509021330 860181701 991665836 940935966 967219717 320117863 562045883 929579307 955802587 396766551 439028483 91697983 265245954 206072624 274393851 242510693 275414241 292996006 958601777 915534511 942321624 8261095 854019044 172923450 203062513 465281365 588128720 529729137 880978012 470651202 858264000 256124199 268583972 938060638 950274369 637018065 713934162 264933902 299686004 946277943 970671263 474753848 528485197 694590966 995261774 250605560 562073698 956771115 970339119 847931274 970384992 219054552 979293352 372621017 420196029 916864626 954759740 822747018 905409235 157778399 997863791 176338565 475796659 931777339 944709941 271264046 292303581 396356701 546605061 371414461 776050553 71542592 74290098 601008054 817643133 560395068 991415109 97560821 643040709 153237221 776662408 645714038 893592190 841324332 947503601 922763426 924393873 795653301 997764179 551833374 696562192 69725118 229250528 107172080 861235477 158252727 307291795 639691827 819916994 509284926 545304926 946490813 990369939 639392311 688756916 466326123 469639945 586336378 680981579 184980970 595899239 921768652 956432304 157193944 342789622 895389730 976731371 432373021 800206739 287448437 552586725 318102084 888294749 306994681 436257004 463488423 850350046 900637483 980991647 688088829 721377165 725461685 806411579 920471458 969580956 777195588 907808867 309834928 715445434 570632506 786858671 438621659 966429370 303296383 964083836 63641369 90697866 797996894 975344286 966646011 980110897 415198367 655683476 212734742 559306166 377872946 846935942 820697131 890706677 236338510 669571656 300607808 780515507 471618160 890719223 627782583 631649665 742459672 801878262 145906112 671859839 766055696 826630215 730780345 920787287 753749345 999083174 324588185 756850746 666646288 668812701 131940691 783466200 361308827 369265462 249024916 528886594 377132 892012572 290431126 560102002 418037272 552872260 819802218 963465922 829474630 932011689 161684494 730849397 231573295 833240945 71285090 385644511 908228744 956471840 335400919 518820723 339422680 393876342 753211819 959052433 690551662 807741008 369271845 943952580 745679560 958308477 550075866 708192507 653052019 749008807 728759183 819077126 869075831 991622984 418149477 631399069 251060018 649812805 505690742 922094270 254383815 311570373 298488396 959138179 973390602 989793642 128793054 502258010 961355093 993949672 494835941 682659468 632448884 914896043 511462929 630924011 424568888 662992271 834188105 969564378 815083945 861558824 824568251 959986165 866365845 913887400 172256276 457237585 231793825 621508632 803694596 899687900 574802091 610218419 990870921 994051214 398749325 572614702 572805026 861440388 894061913 977782055 835345011 870524372 71589042 374321770 23610860 45600562 229330986 853770556 572832562 735425091 963846761 981258898 591917506 896368763 932357875 969927702 170118317 905351519 459415227 561191375 453895087 603392526 431803190 571188100 757098023 767631288 478358679 526277100 130277582 272974373 578212938 604626383 362621810 800561527 19951434 592360598 305812128 799251859 688043467 805266221 798580406 974528494 690321369 922422990 686849135 967402918 515336541 665373070 174071229 581611499 246704851 288227593 533893085 700498324 577935655 628995516 723569463 986069871 364129124 842632049 605567563 859936516 924875042 927554243 435944257 812029148 160736562 258570045 135757771 560446544 263483632 914680948 511469726 844413739 410386280 554885703 46603218 757599056 785417024 921081003 857012306 985498225 654655895 874261968 623514093 971212536 745582074 931572858 500476583 866447479 363129349 755961387 310126621 766801391 367043846 817025225 980374026 981237294 999127693 999220845 886765638 939496672 361619479 728403043 929045858 994759986 398222904 977951291 735692962 889427094 387783007 481066215 582172636 671383643 499566876 977848866 103031676 355032306 360158225 788748079 12481601 471726405 439895840 484608697 286401757 755826273 816934760 867238641 252828493 630488459 778766799 827104560 690910133 709075655 466798184 537912220 119943235 132949658 595055512 686480999 635481690 747208145 392687306 681172850 796171717 824785070 373843540 822694357 68230446 689486621 880337443 941955690 336234237 899826133 992862274 994467700 697785776 753057635 536080591 695710517 326816774 464575576 991596586 997888908 17545637 370467350 61069889 907020182 747473060 845089218 39593186 847773298 146824265 769943174 400070757 838659495 256952691 936523342 774277134 852260024 357722719 464740127 27170775 246068403 923264165 982720587 911568808 918166973 506463186 858951968 281046719 549538363 233971538 568021316 926400976 968966282 776076175 823257859 836513202 872287808 547196895 773629759 961809920 995027529 975982004 979376249 286876702 921079160 529069822 615186521 740687196 749930594 563897222 798382328 629061676 711181223 272627097 540465599 302805485 303401163 739690289 798730023 473976778 674372099 5980222 259285163 249898657 986940615 77298972 106573980 16877451 486114653 23273741 306458885 62764783 961852274 1090305 575089091 53485954 665081833 755944642 931160541 97337136 474898424 398772052 427486217 356703611 545089883 199505356 402124972 903499133 936075693 660703183 990421960 380051565 858756758 560698425 683138018 908913086 994990990 303127218 496892800 743020995 847004462 596835165 692141739 157747602 641228789 682640254 836016261 627081943 819280227 989564815 989661236 378998893 546050354 88000293 119614653 462891406 597262032 616981315 871684445 430959580 635281407 585088376 597054619 233943114 509438285 226658094 278242511 530350811 828379688 830747935 844003827 133745498 803782045 365632589 863755437 60168042 499658758 198852358 256743628 845507350 897166475 202964177 220092818 999239523 999247789 60724051 861228655 473322920 916998346 355727016 373044877 185988660 978189281 778032216 962235410 947973008 980507808 334835970 752181539 4838146 249720111 467554386 910489063 2376511 822086735 334219204 485097393 417606011 895803255 393008949 602122267 226143111 794656574 249428067 493300174 73982885 362662225 727961822 742642758 735514779 953996583 296881154 925733106 841617473 941470888 531486515 604028202 148622051 493644509 985025009 996129122 196819724 725108905 655475048 850791545 991220642 996471049 936281873 958936087 934569828 961699532 448510853 606232891 954810151 957509264 185592402 294499315 536288416 837335799 531326196 949713352 922305421 966264778 248631205 754709777 595563978 740493242 353723464 878646971 401285599 915124049 304837833 590565107 85889393 661986064 65752514 257257139 959874545 987040097 218024858 884322820 114547052 803224261 823764925 985278788 997931224 998322633 153508206 649136665 976644816 985659908 161907829 272603478 152462377 902325224 287940004 804727674 314925413 885116269 977639248 998087288 493674825 960119381 601412875 849409802 765245709 899654526 617576003 947465015 748784255 944689532 620717621 718555821 516410881 551361987 777312783 881553441 188814146 834454410 687653273 771546599 244674315 279356565 22413451 502652854 198834525 630550305 259046106 710476524 869578067 887580106 391440353 895187489 444864040 472596835 263989426 844473956 513827639 698229025 413620746 809101807 158584990 349526145 103088678 391133815 338275826 575421522 857453559 880983036 778659251 794176110 333492412 918294170 601945793 974219754 326121827 565451409 488588385 634583605 528791921 562393078 9643612 641664956 776202222 913491785 929494365 960962102 260524870 493947106 478650042 959633154 642345334 982029002 133512259 757746958 416622296 531955170 67478638 361082585 973048553 975581879 911171591 990115781 517078119 797143473 846140020 966734985 48395091 56272751 266413863 856675996 921147729 954022584 682599013 860177294 41318923 410284321 47173970 997756848 902057005 912640521 470623567 821581215 809704276 956438724 266068575 351010063 749699782 909689138 823390766 879861112 933544054 992475179 422256698 799523395 62797848 578221463 236603175 941004561 715051807 982748285 277198552 963819318 727856823 886982812 154071901 786072000 466193381 876429451 324741217 448680416 55061842 806072884 654764991 693517252 753206505 832546247 290821827 489370288 570993363 884308949 718786962 765635390 137400336 588870761 173674596 544680043 710692331 945255886 723777142 938573669 50436218 847398262 88598992 96808077 791014373 882995418 480735425 562897187 798364650 896872229 558282480 834139428 28171618 792125587 161716342 337972430 449139042 566428765 730792021 969212970 409753673 586397702 858489802 910713136 255021398 579244112 49174028 468555834 731338927 802445586 929059687 942476428 583226267 741953567 369477903 423688357 327812416 756386305 787561041 891172892 968900098 969809820 737145771 896755478 344548860 800044855 924092005 945456967 600626579 832979461 340412690 590862868 863878540 963772722 650489826 835090956 911536350 912493184 213637759 753804448 954806681 994768002 261197947 362690723 768019556 994925207 522431688 843059202 866016866 895130849 656038570 996438399 75920379 640508200 153279457 570529878 546147418 834758538 830800773 962399262 4493287 600840778 566723367 775710778 635434096 817308012 792779635 941459267 146921464 376361773 286307714 833368938 608109924 776502784 839232615 930668366 681586714 688739241 205978168 396475691 672456784 826918026 480625225 543498626 851381612 928860751 427510302 750256482 467288313 608330219 785308096 906580974 85928902 129262054 688709094 896424614 960667707 963676833 627400478 644484646 745008671 924746337 667516332 884817669 807125868 925468157 262954422 747707589 884997709 939690599 525623289 564700642 85499256 985842755 220998478 301234644 577165441 827944794 70706508 157118480 775342394 827528145 502174817 982620491 912302514 922505389 704385484 749372414 669930262 860347137 790920657 965250809 639625351 732073746 765117943 878331245 5715791 148399166 366143432 958659524 985056170 997083607 487357734 633427903 136282168 222273168 413564768 839091882 819616394 820464774 535494266 919812819 74980678 800800649 847642706 988605883 473887087 640239924 977783954 979130744 426807285 965474193 366425017 998491777 778419591 799056169 604758489 696836723 788461790 938184523 953687653 971038648 346487674 611937812 6659178 107723548 931564964 985844460 321027475 406825505 207468216 362188037 932466560 987953371 802253111 892489533 279978719 382686661 498258906 909625805 701674123 707417033 357392199 726705441 710903493 893416403 335453298 580556384 121002398 378279228 797362333 906329924 256455061 803889537 888582130 957187562 162014865 552922414 692290866 703435515 476428882 797316147 907849249 975295305 257337809 529249354 343730255 988743198 318323340 556269924 547712841 816318500 325719909 808202786 911441028 946526907 2552949 927256657 289319249 903401407 934948964 965909908 758767024 768240552 274956313 918345238 370534307 659713357 58287991 963651633 841966801 961273817 726673437 868075522 708294830 740153678 516592102 916847815 400607739 565535276 900620019 964285000 432282133 893729214 587553566 933193323 701720680 748568579 735521199 991499832 135602257 587259809 49077440 186162930 639897621 925829881 741484493 778327200 409903240 576909020 572860804 975177021 725938617 759536337 963231546 963893618 613015608 633258511 449111819 475192408 787507599 904387447 162877402 861803550 178193221 981935846 987262530 987471117 443127379 660653508 806475698 951671040 606506576 868700008 880377644 923057404 298153431 897055809 643849298 762770892 188719011 224638546 700725337 832854332 211867438 269913799 744146796 990181855 550334693 647399762 240840078 263840188 589605879 829727499 248884110 921561772 32668520 430526679 464320422 470047179 412834264 668819611 490309016 555990005 187079556 738955980 113275969 821331099 864125231 945189871 715674750 749344280 334147815 602379493 436044602 867286353 561454350 611311746 627321485 961397913 1085566 4999136 801385892 972878201 400320083 988449366 165886838 947544868 257205161 649671294 627431937 746853684 447022400 831211769 224203898 426159449 359136580 794060723 434231209 663574241 11916546 634389684 954967363 979138565 738387995 907834972 748622893 981264557 749121994 903602033 835206717 989440206 184349227 575077335 477577032 627124511 177552423 406779880 298671589 843453504 583328126 907909295 473775380 574830428 986735137 997899407 534538760 649534159 20335501 335428427 791357845 809698197 423631962 443728461 57197049 488535599 100353109 500371195 866012412 958594797 590477376 636107206 828888912 835032854 288988691 677738667 370303860 499285372 79557189 547958052 197716947 474894415 891913872 985919733 286068566 364130043 479691453 685857501 497029453 652161784 726067506 767691081 755832043 903939699 592237905 638990049 606729650 880061975 299785185 368942442 354815987 370240894 944930927 976592616 12981856 258482180 488342915 996132167 634907107 873438809 332835193 797685492 611194850 882467924 159902002 357297614 405326673 887544256 899940642 916138253 133170748 442057569 364736403 589675534 466120386 496275970 205950399 654650054 65310547 287865003 399362078 501627229 237620432 733602446 777867943 788030165 879880637 962119924 87481800 708199615 674172278 763965082 938574711 964054850 98633757 875611276 142078375 277508292 163032499 739072581 160996150 349554378 81143539 344303354 873452168 901317193 357596760 561342390 852343135 952655041 278938559 629661484 94596983 471633189 189043293 667718496 978259367 979903078 13341840 153288327 467213480 795937810 917614580 935330134 650604733 935794152 181409959 330678268 610509 490681560 21917633 990098360 950586457 976846797 208286738 787380864 504896789 596429828 921927925 968425929 928357867 979724970 287969413 805758144 646094306 928061394 692776575 772523000 400587221 734113910 713390656 721993638 994431494 996627805 600814698 601641460 909536736 974373999 510363197 544014077 9000773 806333710 331422386 632591856 6976661 599397874 530146075 752136040 760538661 850292314 967585843 972553103 810472417 946060741 454168193 758172095 732067387 841547208 954803410 966564277 73091538 670431584 156509223 921042838 750674756 815895161 862731457 878770535 389790572 721740414 953164870 982484591 387436079 668787407 193445051 600946763 904802889 957987468 677786762 880285265 93900188 812906641 696844725 952123637 113069628 984373838 669835691 706047507 743197182 810772260 429638143 919698266 427769177 916321574 315764227 672758391 891109007 997091566 217176608 952369369 206966670 347500277 202797980 369696068 731921639 763940490 167867305 987809424 697522242 840844230 142989354 260660055 215869718 728846420 591736207 985803421 30946856 401048623 910569221 935167131 700641173 945435821 229293394 972847542 430598789 525044353 9276471 723403262 178401841 456819628 828807662 992257486 139100811 863807559 212786007 967069522 524519526 559148452 233495613 595442516 66662056 130992408 307134757 745709407 266201204 707281050 893703926 928290781 257842403 931421872 751075829 846049160 621180951 952506937 753398231 957131325 36530394 674094941 588994264 713263758 741513588 851438531 954338385 995537351 127196296 552114091 377147651 919117505 596537065 692751941 538879851 886950670 709411512 916796683 319886158 465513348 150059118 647190999 91596180 511399581 553987470 662371708 917023256 991614159 445373954 894740493 172989204 930205414 465481230 891586423 821497500 911162799 286469582 720876300 969510444 973446921 853705793 983792897 736170348 956116602 649228358 745226209 733996914 997866726 115603307 138607875 18043261 253857282 214390378 596231209 129368734 188534444 518918911 900846909 682406325 982356142 111556127 665153262 910277744 963805667 470010321 728507094 427326446 610637525 973790210 977701876 521972170 546231200 806908889 932593811 526051859 810954227 395323508 642703783 925134471 972338552 601852305 757242519 410949865 580041706 880809169 911425940 398849916 758347581 124142677 786045371 720028711 838353599 866674618 992227457 80760151 491697659 187941129 245800275 918500840 973807502 766877998 835814032 287514900 892774669 623810704 884999153 300218827 559302408 382656616 394847158 881778658 925103901 660069455 974664763 321897998 874143456 123242276 486418504 659688097 948315212 639159694 854853247 759095061 883580845 154970463 958679834 330892414 610274822 688565777 831361210 573761711 624862135 708116815 925304459 507235154 971907925 222710724 317834293 785233709 831179882 754465103 870040281 819424535 971865232 399288603 546553361 273612783 976001025 227371634 282843599 521251804 576611499 978518502 994330481 513394633 740104638 516738033 664958050 851932215 946749019 651011685 882017578 802620739 995807122 548654524 913229392 827412971 923442985 980798282 987410605 383120983 444501268 667980024 836232070 659848727 951167566 948002035 973069572 434512269 447518901 864460162 918692459 864259180 917090430 49790000 303440792 369151932 758768740 686363023 716315494 677617719 874085526 191936080 829536569 101364885 246690537 463286352 987988370 654169255 944870638 761370132 853803324 838188928 864357053 84054113 718869817 737205030 990419313 171300819 349212835 283381453 344360537 492402958 783331150 997189885 997938297 466293995 537799087 748033458 828628817 269580319 975885867 86178522 780817655 140799121 239347288 511456520 945185482 491241834 745982406 387055008 808248672 829400928 939684782 857635283 863784761 266128804 559626722 888311976 906844170 308922646 478290224 415068607 697980759 169459004 840858007 191024576 306596949 141929947 901123984 962049091 966364427 988089011 991817241 349438964 942185202 510605136 887505437 179231069 892833042 695288080 747501775 137706724 638141563 299274648 871456373 370302056 382486265 96164835 651438005 209505834 981567985 225368517 338396235 689407113 985717295 543875218 971988718 783276118 863467149 813792963 858527846 911054967 997816686 172375814 577714299 834130965 928544376 749639727 869115236 570496438 913113965 22423121 312210718 42996554 624207182 79591055 842270644 180353593 647835214 921095026 953064955 841389475 966142732 80093563 307230967 172878234 396922884 213539021 383200769 656721651 668880657 310635683 939666469 302656811 933668421 126919971 957163793 947504061 960321144 312798846 408981573 840385156 968246068 49108473 657104256 812936394 956780333 911237733 929620874 492472252 570127997 830890923 959443352 272944555 326010549 636410159 823015650 219186953 511294456 843737400 893516214 952338414 961537886 977209075 987862916 355575990 707059584 359121765 727565500 408828618 739760357 162522430 478756649 495977992 790169992 906966687 907534207 492669369 941723841 782746376 958694105 777779872 851588422 944586162 998983971 338772952 912365094 360749557 902719186 192927912 497549354 514670296 899363811 98258070 836884767 581735972 737277730 659963329 928945688 876276597 952760550 762191049 876847405 135316939 378343068 162889669 628035237 154246807 938668202 690053996 858616495 381359767 504737000 710076795 919647526 496516073 560370056 531498388 978261908 126675179 165783960 848925684 860987534 630582374 803404982 261547108 302277754 202795698 707154500 595496043 765065315 373141652 539625878 52075406 530589402 215306729 429800837 25452152 291252414 338559240 387257204 453097644 885305050 199295148 297446336 291271587 536186318 543770528 558828044 753559455 849474960 460817756 462071203 90094821 478643745 632121669 986517987 278183917 638404633 758934759 843925952 569460373 869527926 130261425 886374134 964331068 966897144 813614130 969697556 641043247 914059739 4437685 10792299 588516128 881017383 521547830 916906483 580186361 592859141 489813235 914529376 261541309 498012557 468475912 965882916 986844676 998867437 110022994 340022804 139968899 337116437 747233253 986135625 289610087 840606384 701289472 917271161 873607800 895311871 113367420 906083005 398656951 752615062 450957643 670435939 989307400 991682243 211292144 733487955 578334950 756389089 668682792 727432224 637317759 917223156 849026491 950096369 191665208 193789167 128368799 218858445 756998446 813926089 108399526 837354109 614243284 930718018 841840293 937441338 929611937 977776206 797231681 921651885 89923462 927920636 931160918 994195290 778573988 996535151 779763161 921737382 656805786 838459701 848811022 875675784 516500292 771057839 344891284 443797250 187066778 540892736 492898462 681996486 592203499 819890985 300993994 881282021 26445571 413260671 501299602 860079947 482082831 603352824 764008672 824829181 453014023 601984775 715615847 779368567 144936222 607427832 574594392 810658886 505493767 944320399 166626554 455903843 492061778 628981923 374724319 751547738 149095254 313266394 87433148 289561649 148746836 988979521 667388241 903825595 678588609 967128773 563827420 573122955 89618428 960358962 59782697 574921455 342951588 525578032 109616137 201762995 888624476 986411423 216808782 491184564 671972697 759958363 354934865 690473625 888204084 935432836 895278022 948725331 704405125 802368312 285465616 499516507 857415992 916742221 545470184 975344062 903447467 922872424 730924398 754866437 80989469 161601691 474646942 490940962 262286962 931652830 769911545 911331686 73415079 390701520 82879270 509825674 330253423 991870953 80007146 298262701 392924922 533506788 764111706 791173929 126366797 175132087 486957489 625173850 49164355 894392694 521621084 860338109 520456493 809740130 743203786 827559528 43936564 997240835 250007684 698927154 296006428 705878442 876767820 977919267 924234476 963583703 600090726 905776017 938588979 983331991 265262990 584281118 414962647 722859114 88081305 121378944 211677355 235574816 894985678 983354625 717586837 803509701 538533496 939005908 183905572 892146488 123873845 774490904 648769255 774705354 994200069 995030065 592960379 930349991 773612745 909990048 174122509 705185610 714534787 842968672 87413504 420984133 371560163 995092004 351767671 560339148 235343880 440911861 804732544 809143410 755783882 906737444 642058528 956466579 875685480 902820139 38325051 719543020 276218939 320359253 465985353 983072562 791144726 864917408 91881559 139247263 672004360 689524392 667421988 743480577 155042293 696363301 891131016 905734546 706368036 746710929 829315523 949461059 960421342 993241402 416550569 984980582 94432858 312407245 77128690 573861194 705552618 793347937 910266831 978788936 640885795 840592402 68453284 376724596 223621330 833057978 659901439 977629147 945445031 947836960 180815904 898033562 274904874 741159030 174547211 472297794 320692533 605010822 730251027 776411543 412768976 469153534 973906450 995797247 247218790 785660051 487762111 874084295 85604414 999066158 50868286 469337064 559557401 694132118 386425800 785578063 264812661 460758313 36260120 427830186 656621723 962417504 81563636 925717893 728546706 802600373 767407067 978403458 286850050 973233395 371544185 533772222 984542249 991367957 639168445 836517486 746880390 832562380 779393893 879066613 72176170 491299590 285833357 867323907 196872068 601075514 903114020 915623221 193053330 768162530 47922664 160642082 596793329 616552142 169861962 742320477 549681006 872636886 168138936 291333702 831714502 896833982 423869799 643127108 865692922 907175962 93703479 329565480 660764615 719232514 270284415 305824114 275854505 582500287 296893421 604204844 371082067 478114680 433254440 587885848 697962533 865150012 386577803 909344748 48829970 968525373 968660876 982295164 347195473 839179786 46421213 239586413 672433069 866433297 273230455 778143385 932626585 976178997 644769916 708275414 724187346 972023418 532669703 614671766 834309142 954987632 694174969 911549220 181084334 202703809 242013422 721859188 851964950 931929070 276909034 981643793 495545557 870682160 829632445 829917570 796503204 954483898 539611777 704097162 325516064 883533295 225517387 467795825 241385185 808434797 1906528 301981043 614053939 980814615 436519993 566550864 81991607 349987071 245944528 299794083 595035212 673758509 846337890 926709244 682124442 917909779 335203517 587760146 83817610 885239243 259324403 526026322 25606339 549181722 562226477 890241393 828078504 974492666 416626695 539486801 612397355 679414034 836728041 844582751 809291444 818474566 149316862 314626156 699931847 943587542 866343963 973715382 278245184 892652151 742801066 826926112 463324682 647788379 734331452 758289697 242106070 792371354 418186788 772151316 470841981 491661725 406866953 750471045 726429182 910817659 191290872 782587750 974026290 989514793 808773893 954062116 752742423 992421052 76327199 309273220 96395785 817648412 339136879 653485777 228026389 593917877 778954789 827416136 558662859 809033828 297771334 901513375 383175522 446799453 871268281 932228102 152003145 282562369 720844454 936739566 298647106 613899784 123842604 275924845 141227699 363040410 768835686 787932158 854707005 937545482 742787296 939046142 46067264 282883595 300611262 799626194 681882352 988398162 513045107 965526372 870981849 969826222 839556379 856119158 562722140 697837801 417239115 533009864 112241769 822547166 422175821 653156082 551272575 971493618 645548073 799279610 789554814 793842778 365896209 566408194 662418973 982556927 629564174 914096766 83405822 453659192 77820418 431587357 595910241 743816294 175702591 234165762 710571969 803917459 949895049 977586128 604518158 612555214 615342988 823695079 789285816 847481226 204749107 869446677 54823017 667644324 257522074 650696824 140748768 683311120 905004084 909959711 610704611 962574887 873333787 969682691 595282187 647366175 316067476 562210514 598735270 821771773 887242987 949176617 635241126 635482673 576409364 747521130 716499154 760416118 123214975 161940850 841985317 901583394 731839694 752495896 198493535 548713832 554698472 727885906 272587458 596035589 392142770 686787243 521197352 690152360 630344687 804796279 92486639 761389018 598624400 818779570 727340670 815494853 131017186 902623124 363065606 424125811 160045935 161841830 912490885 951371720 772367490 798847764 416919137 529739185 341568608 751120072 584185526 927815422 858417548 941820311 133036345 643719391 555523083 631012150 541616756 643416882 126409839 981511035 881604686 977215913 228450166 997650869 4134982 540370545 180193909 773208092 699273224 813877767 728137404 785718030 595126479 609047294 875122373 886880393 353181772 780649059 729914750 821202375 288200059 561217807 396296278 595494331 136732613 178850079 385895663 675416089 207804192 348109127 274575401 994257589 550245663 712508316 360390494 611271497 415700192 935146269 491774126 988872603 701083320 971006552 398372042 411163362 178343604 408055521 897962114 904919977 401472025 509270438 783572528 843526143 292971160 423097468 494097099 798115004 718496226 834591112 836845058 892130482 927748085 970507046 955085958 969885255 194987450 812807476 528358932 926500184 498456157 560870286 638439066 798138466 277043426 605006506 317067757 418863392 414852460 746994083 161868127 256418615 672316250 993814458 433981811 844176656 596558586 964433693 584518677 852293101 996197947 998132034 346024429 431405478 295273581 636643981 938422951 945221045 93918831 509314110 242590429 532072736 785812491 949809838 97729455 639175872 40161901 469775664 473004878 952779380 532050482 829034563 681177342 842358944 653504072 710492750 864597493 935576235 428586132 662461767 701821309 775229202 247127887 785120286 977235824 982376524 982654588 984727777 230210885 707330019 592828824 637373150 865026283 926896034 6350786 394220969 224579632 871573410 925030167 982203218 775338549 846272090 525183155 737167993 991371792 993409327 647225672 700789630 561662506 890067665 884132782 903596057 703743810 714996892 562224774 760609974 953500330 997743957 572907816 826968138 133566453 146452203 509061725 786276892 197282851 199431390 293696677 603048597 452310864 994554486 776722855 934073966 907277414 946926521 856068201 881221026 758890592 777537372 871055157 894876419 791310558 907396169 622000090 967655460 179320055 199163854 330632556 673718317 392711287 656655497 571634726 725303210 988361781 996191975 655935461 893376749 806236984 943748200 882082837 979710001 540157492 973416370 988490979 991299704 342734321 957439608 369820201 399779462 489769884 916673397 429777431 660451470 416672523 491755290 215992954 315652782 301789584 436689226 404392051 902201616 542732524 996823831 166388521 751876832 539563187 984518548 271880098 273418097 551093515 842172060 224389604 793878388 546768593 718830335 330435262 356608457 513124835 929367737 922310794 976790543 329459473 911953384 115796876 316931737 133360248 385407659 549651586 574746696 554442012 608284397 466546232 649406885 621303995 854646909 21392787 43236396 263955171 507071591 425638138 741060607 631160698 657020132 629318733 635240623 252268310 664934455 762588003 792471863 695718568 949840914 77054170 465037232 899158708 970336791 266448076 918050804 313591112 569019190 289301736 776172556 904556289 960063841 470401334 607059815 186136670 781852682 641259288 873495993 369841262 394579514 517195541 549284193 585906826 958988909 815984499 833353795 177299798 441726272 159163685 841883053 587948077 931445887 597240397 731502018 194604482 201072615 662172081 937570508 802001859 950401694 966399452 977572299 168079782 668961474 774181705 986797551 462970416 742107324 125056991 935399319 640322752 814580431 563451499 678804829 348532523 457288839 864986329 866789864 481148126 763240949 832279799 869366570 499071832 660751853 435992061 570845694 47096931 623259384 972854563 977064523 922757234 935484376 889147330 971569814 340236292 572681169 829513635 956289121 200378448 614477964 553278499 866828010 501111029 960934650 511753143 861818998 17060001 561275845 748475333 958071855 473755594 892898223 824885787 883995374 670299252 813143550 391407343 461885195 424333600 495316097 603705376 858978137 326463177 598321266 300180034 987956217 873113975 997984149 259756897 590187040 487913520 882398527 766855018 938427294 33188821 923654196 177588454 606647790 617126981 723600977 46179824 337231959 338255831 909722794 415543985 667215651 907705630 978858443 107491725 938839242 109370896 703311415 755433462 785928254 93227817 133988728 933010304 943708042 514785787 727478198 302582348 371476644 881263199 949876152 154233688 750453241 68598100 843367529 431771591 874106250 715649432 782585785 664267860 718172027 220172376 562922341 752136749 826431820 763484915 972537388 659619570 741473250 651283235 898673565 664798898 879188505 26249291 651026683 220599332 741509310 198004169 916111066 83012466 176288378 449227429 804186967 90518606 577506725 927803895 961652492 678836812 894465500 626520110 765427285 611114552 693050380 738461695 874176497 249404432 360192584 516296595 665609624 279396230 909556349 368212810 743348327 264175610 869172929 772547023 964487513 660493815 998002848 793533491 853525123 661848856 954744409 511640258 656368019 359800782 417868325 912691086 964117379 142979145 531721294 214183929 874112031 703195745 778962568 314659280 986516298 623755201 630406271 909799815 964876696 571241080 641740124 896356573 946497779 686413076 878361751 429740742 785870805 128095298 885691503 234432300 784179283 91722687 568379171 561382370 732013750 932019605 941872924 435000163 661181649 319707620 891512818 907989105 976071026 235642611 242644718 604413410 976808121 576804247 912399964 116015917 972064893 859487832 934015568 914442532 982616859 458767914 955707618 260104284 263772853 428880167 755679861 772259796 942406476 163055413 753264931 162400467 534325727 245207902 950948734 281528275 341391820 639240184 763131554 303714763 337331138 673212486 821171237 692061760 936871541 920005978 980875731 638167430 792037211 781189077 879656895 865585437 880343980 213236002 628682158 354449365 659250254 146040355 743888540 261847014 406158202 289280972 691678353 302879830 489619179 930830894 976525220 490918631 750351830 126492448 349832618 239738706 867071444 557866592 671447719 225670807 887191599 104044181 799223005 316457726 717269166 236225352 373490109 220848213 553938327 157276567 473546260 156384839 543958884 266543678 924277292 286582300 876513031 196471469 232437413 329719729 787379289 188644586 845803061 658444583 745632684 283155918 514797515 519541162 904967007 703085612 886879932 367815531 484335514 455131638 627875388 555329071 684067303 496162483 977928467 228224217 873966635 479307674 688445982 8845302 712790173 685307565 835332432 368144543 614800727 512706980 853964400 23753754 416818124 942597719 995257803 424777072 691754398 871579718 928840185 17084859 194469489 609769551 650395033 787837972 926027864 599974688 713748057 157120525 459838913 773660789 993590522 247684483 454356549 986329516 995378789 530560456 649374540 29983077 445756143 368423919 399990310 91607181 435148363 53982327 998497673 374032716 591644712 436009098 478118834 860533830 943093757 452888594 492358822 436274926 645724858 965430364 986603459 361355207 888784846 795933002 982210513 158525848 584124181 214769937 776613878 792022756 860472717 332551694 478977688 25372165 333720268 841102168 923700950 732703217 911190678 677466880 782644066 772989495 921309538 426666676 577737549 725607068 810635363 608185187 840249141 749240107 898751267 578585875 930009897 348848294 594057981 753323185 832969861 272839538 908569751 364343880 715898350 680681511 802660431 786174322 809601433 844524966 917010125 591815447 959106057 459811297 552498412 110137732 547462545 833378285 938862709 42849182 198056885 150448557 751608811 813362986 917143861 795745436 962267026 386055227 781171006 460136435 535227005 368913672 561279526 926266299 959493195 819678587 930875797 672142597 932565685 503691272 973756680 589205520 849084685 70918519 141610695 554748599 820301976 512342127 851164754 142739840 462514851 86946961 636347499 473401319 925986940 843273409 962626673 73789516 535408257 399060666 967728945 814782250 835065306 144804054 200746497 240582338 388118626 887960315 914116261 817733831 864305044 82808671 114411507 291526881 692325514 219379644 502228749 399530842 894796996 556498905 956117463 172363302 819049128 672144441 804219813 717462035 831085799 58436980 681969082 755150804 790848890 895164612 982698439 535996230 873024951 528673398 704106933 65691058 257380978 716271323 978325740 747359974 963941848 119873754 606705348 974000369 998268337 258204347 933070909 344864157 865988857 900615979 923805228 899570934 986938905 735481721 738967276 994992607 997841898 845535797 930905113 998181192 998633555 330592651 746158410 66394918 506843143 897742927 985705983 563117627 607824028 741919882 808396179 957615895 985258108 368854006 483843510 401414218 472998392 404516896 883446295 891954160 981770339 170157595 834520961 341087773 554483798 493152189 514933759 389956876 580163550 982993281 988348645 492949712 682666560 405336157 686121881 120303841 777027621 996295447 998558421 214383651 943402932 179884448 518737018 298606116 501183978 542405215 933286138 917694683 932896048 604511869 907441966 229665248 613870343 120491933 907441680 533271408 559645437 354576616 927704789 136510090 190826807 490711339 858383150 565216124 901247375 869596426 995151756 488644337 735619754 927615286 971470410 755210121 866554373 354653627 735262659 180056923 554115434 114882233 868214253 503297507 659467950 587354047 726309858 835831778 968742294 67601198 926522956 439939818 964242157 976158128 980422627 151029667 385079784 692005807 905876608 485514447 996531739 666471353 794449500 946657144 972429804 128947973 430364907 367329058 447079613 956438272 989339235 549820582 727249166 985733659 986433217 752497387 924149783 181997056 934822056 954998402 966583372 408960413 717897187 14559717 346789798 878763603 899346120 85277529 173590844 191444372 245986787 659610768 920186923 700044049 752002246 793053854 843862745 76152019 154702690 319917939 355299021 471393184 987661285 407425436 854213044 374786974 523578205 835445421 954518497 151144150 486463820 362623850 945401821 128163576 468711035 595509501 690699476 862890041 910551604 712719043 805457662 979223357 997263367 605224889 953411288 653353155 934295411 170850496 695155599 326429656 697268638 489822999 767501442 630788246 665979856 885017881 926625234 86889824 976527101 397995151 766144959 573112507 691277154 838119508 845965575 970561168 973933497 320775415 595921372 361988372 539915883 484088651 688453318 989887800 997104571 88136652 184745262 270269441 448735733 677824691 964979947 523944529 958904454 149750506 321747589 798048970 872838797 371638181 506494184 813466142 886345678 920016656 936179872 627417229 965858332 303587565 891464602 37348259 569357912 922167061 953749225 714120566 849876037 314585318 712229606 556915504 685709609 818870773 921263110 316215002 648316075 776915203 860505020 220917436 269597133 361228812 434358144 542547261 635588278 957636627 972762253 60605506 462407166 506846298 784662636 740756954 827248332 919758467 980195184 366619463 598293262 898842592 994401774 438001255 846416935 420264319 510459124 695920417 941491034 119247118 562823101 865759275 985682013 344835570 728091288 472403684 952488418 559726631 971873546 316862755 602644411 635748838 796921115 35398374 576066797 505657024 659559687 813098017 988556898 311797130 799423022 768732649 855323997 576182699 820635494 955419584 995516323 32524591 85292493 29502854 789684289 520531120 723767355 206319227 864369372 532296317 966780032 971101492 981236331 503094605 619738823 119940762 694015110 743143548 972372887 320749378 801714694 447481428 884205342 910616469 971635064 806113097 850279708 811424238 838664940 892679054 925001883 487019662 706770522 336164969 497268981 940417256 959129477 19115095 300527415 814351997 979131846 447642846 809409793 51799808 778094850 898823641 923854678 515471180 802305014 671828732 732499432 163268816 290859265 519441548 581864067 549157228 665757542 58956774 107859482 552648797 710541365 188141328 453402249 831083524 857407939 375501393 981174702 348934292 771992995 708521201 914278810 157745153 904108064 84843197 981158207 408155276 443622200 761915502 924775568 141468577 713794387 248546651 728914855 874311973 938338659 536500495 565406000 295409691 516999200 6634258 878203361 763815871 862305832 253181849 317720479 618759972 963830761 780886544 972262525 31611832 545240310 707516908 867698050 361722150 840571343 373154161 467217269 350068560 920771905 853237345 858311533 740103393 860432000 607634660 986073106 807826281 967322406 866712949 874844142 626162953 890645819 464371687 520378626 408625552 735709086 233395323 984573587 809018033 987219607 522242282 959507409 789219587 918033359 817933531 941437542 753371968 755726189 480699277 881150288 316826772 883146661 94271413 705060771 750287576 864081992 477892789 983914214 229440528 846448939 275778733 349572497 659324059 817920348 869210613 871171315 427027780 735607134 171229593 856511877 15831482 568026184 566322453 839452417 317660870 872229558 212797930 970092207 295917200 425869243 96658944 119579092 373890326 764207059 167447532 801239710 350503345 747643605 870152337 995008201 930122703 981448420 85626993 107871590 33689498 725096451 590048320 971644436 507211534 613819583 218894120 543501758 743554367 809442864 227234835 726218480 681184882 913530217 494366974 804816336 927907513 992791012 460596597 911575644 695948584 792229626 646802271 970817040 971753854 983577733 12545008 701698082 844522166 970924078 762411259 765865494 961117104 962173455 475615773 857287104 997897516 998770089 758189705 889612571 213872262 578440796 115391096 811142898 237405111 537326825 500706464 856239667 804435487 935294555 138430872 468984092 293207233 320863880 216219228 370892321 28863930 711827396 827374420 883194567 854875284 877934415 353450036 847171024 569850508 815552686 359598549 659809361 659479162 786122930 344365925 750320128 131262185 946454248 537364216 846698718 809091438 939916239 900063522 937469518 749291639 904329308 606898328 640376506 217852292 909298696 986821720 990882049 470381230 925629996 567052037 618984260 488633592 652368790 725435470 803335195 427784707 686706651 597749952 949288217 932478572 952130824 956900081 991851906 85034043 596672214 413579779 772694171 551638662 723285108 991936973 995269433 122581812 303058692 187820962 980535524 198357625 979824174 801992418 884132758 580196697 912949769 946796687 983579057 796022393 919305003 96360794 181108641 152799546 246299363 115278166 255288141 757966767 990779822 119973262 872193174 219047826 949670841 213139548 642202537 438285418 909329041 108879455 148869312 996459183 997464104 158943576 541540885 982439629 988321094 775643091 902726065 916283236 992405222 693536801 980813330 978901966 992508416 53222002 736690618 676831416 718865966 364876699 900666365 8784497 940660684 564186854 589392487 272626988 408527014 628757394 765110887 443824170 508778736 167855994 932625355 544130720 677266747 70456177 480389182 507626823 666656708 370000105 561510627 951901521 971056414 74790391 269033467 408121885 440492780 362121166 582917211 3289600 821352972 13529307 588219890 346527934 880843215 801281087 942755026 592909910 948273549 3310080 931119650 346521576 804712728 345866851 557151814 527309809 846163759 556786484 893904568 249904628 674127987 715640960 946425764 191337074 842458031 125633078 577541599 690777330 813708164 598961754 689834847 346168261 830281938 751011174 988207230 502293640 743107497 246312543 494456733 890152768 922738918 809265286 812492270 211218735 541687290 625155561 912456022 114117979 167401312 100013988 634920851 964123166 981395876 368414140 855983319 339011871 486648334 69128052 885476939 76624995 183746459 385311760 909000088 647380310 723085785 235230257 681944830 463981834 469007084 536790464 930449044 424949993 483845311 716457809 870477618 175329350 742949877 21546123 965349292 746523730 838444862 733574718 831084514 20107581 913611628 905127239 994702426 638129644 702295867 985511421 992311539 267066155 625317747 980706028 986092635 204045685 780894915 26831708 152852944 477745302 889650415 517726527 721505667 558020816 714566947 943940892 962022945 498330259 683111752 749040685 960001320 142818110 888997977 190756512 764566555 318047860 485998514 358152537 815495911 34156902 143953134 469583197 577567308 332607837 380064685 434783796 841623781 575407658 640060405 304992510 382126461 697918428 811366888 757218179 772577368 442396744 681239684 356090373 386204023 721740265 875132236 192288909 640011384 81834846 928035943 495561345 839903189 225023656 927799408 226539640 800971336 693182736 833546611 184527192 545179362 961780025 980075408 209826826 252899522 178826904 764317405 637607135 960182629 827167736 995560302 439105636 479539285 306788244 517616352 51935259 613273222 815639968 957901988 593374299 929996335 456563294 909425689 548872744 745721163 907492926 961138531 28451632 761458309 879823948 883504836 335017784 957656614 715081507 866807604 603844962 884053993 423775819 621126883 19232498 387092678 720849766 898404792 126757728 287177458 399335777 672178549 409233690 488194204 820613274 863283193 39259792 78172865 660869546 696304608 321450919 811157003 665101720 932359355 783277846 849548641 815690924 906362174 122804331 243953808 108674444 696686871 40683944 88008738 913290661 928737356 14007389 520102817 865578554 933411274 596274024 633924248 611812586 944829628 647632416 768178239 861046621 918950119 666013197 917346752 598509646 868453686 348842917 454729819 951187984 992704268 944291748 992946172 596753004 806322230 235163258 496364300 584729454 586239290 71853728 137997810 260422724 473706646 978612154 995853622 792007243 990327071 957003139 959730288 544586769 629076689 50803103 229767349 758699941 955596432 521260823 922322628 792459232 983486862 951625505 962701405 440454695 452003925 688982614 960276115 55532099 656941174 47326576 626718502 196420231 499848423 618461824 962436244 578774457 828615156 747650475 772462334 397027248 575122159 418281564 810226268 760245363 788633957 47218052 389661724 17694925 619022811 422654445 938375172 925644769 926659661 850640974 987195995 444676605 777615333 966625316 985283732 497050362 596953016 848967455 856299944 779110029 818910447 360458804 869950658 782593743 870219593 642428880 809412634 867433505 886298696 204165484 368885818 622393274 733501848 751533722 776832036 784619657 990531893 559626225 653716646 901276393 969338109 336019983 596455210 509891599 633596018 770751950 942292607 163548244 763980523 709924823 800089897 604216752 848546523 5498889 898445749 869148270 956532607 710486922 802225621 667774717 737390637 317031742 770868385 301887499 674269393 798112046 815490846 493126276 621609836 478668538 559905003 118336282 432906872 79398104 905257198 31145557 539648886 628680180 769679058 273773186 882552171 667445990 733507897 525090092 873856534 792543588 889091119 149812956 606191440 878756172 889385210 936366338 941667787 518115687 975954146 997985543 998802068 216880697 377022182 81509987 634932468 181502864 947180628 699142827 911894333 815339323 876460346 669194538 959552853 91719936 819610598 359767282 801953845 898774624 920450338 440326531 765120090 615209979 873121371 657574186 929716591 854121741 932110353 766498764 943860493 44938074 87967550 402171979 762151688 457121639 718537791 366562415 421078047 276696779 793771229 421454599 663896063 295886820 988392552 757241252 828615628 516836082 778630259 611310276 831048875 654987454 682333648 939684014 963852793 390311155 528175353 932141220 950430491 448210104 569150583 65758058 72537672 804622016 820969653 465239061 485862049 773225274 996714910 130952770 454183559 422868223 798260084 244492797 716034794 364140991 961968535 466241359 571437636 388373998 960333816 158627420 182043322 527196284 687471204 781003806 831644404 640285793 964755412 829980447 875956828 710476937 884648887 454726418 849522780 432845013 787477713 835751398 855217102 863999426 969297944 675141238 675273951 619484483 671916168 816063595 911686447 857953660 944757004 719517933 878423494 138749952 293078467 405361068 665735334 887531471 939630941 765758930 842078070 933136639 947598134 18382493 754716301 879371474 913326666 698051241 982830033 742256364 908929652 586121919 952998747 807677390 991745500 618852532 698185575 455153177 613865048 364905367 825756453 325652713 448833857 779789539 913484409 864800945 881637311 189697207 765988480 388016890 461346352 934652905 992230861 687275497 872317825 542387654 679474675 776883795 868934509 451233512 632159346 228390658 377997320 168744639 697219449 898199558 954475991 508242854 947441368 307996181 561882645 55013075 953880488 287120732 323436963 484998744 851965697 331832251 939363887 412780345 475785374 700086712 725863840 714740437 887578780 553205012 824011867 69589462 428405089 18642038 156150929 656541234 780168840 690437102 944383523 835006803 927896708 411193061 749387820 604373056 776465563 988276565 994998736 398809765 528329802 923655309 942195706 158503104 169794840 385682745 844640935 865760104 900708361 69285270 875863177 863700837 877628457 637889809 666473348 928090312 962301279 749656074 939480928 747656146 979918894 350271414 930128199 140631219 291934107 662782525 691675885 355517807 778093085 843928360 850950746 961699723 983048260 83701069 791500868 674846393 733311454 772585672 956748531 525701398 790291809 649652301 999119022 630784271 658969639 396556705 837361697 130510226 690292693 442624925 829110109 391275001 521211306 198009111 347518911 748636270 873536259 602099022 633049704 634145850 659770314 451061403 724821935 37731937 651272733 601974078 718922817 587455484 631053857 223680272 641465962 622936838 939658221 22622021 895280046 43955864 446206290 731029624 827697450 411843602 850975812 770159803 836557096 445189549 563452035 637099959 796024749 10818685 362344398 408532193 993338997 930196348 961447892 503044328 645874098 779203271 828647866 451123190 861010201 62317715 82576573 897922636 938693151 229166599 534229585 337011996 904186423 12411264 261461208 366549331 925021991 97332978 654717237 681820730 691025007 101781045 663429663 419111005 951683712 469567013 714585145 531251778 608467644 141368353 671971036 620762699 911624936 476027350 813772402 870163896 994996337 155305792 259304144 864724227 901058242 112286209 117211241 948752574 955202782 995218749 997176100 363714352 753479446 789812439 975485156 574435005 633004206 991622665 996610627 266016775 927328576 480172523 747947789 240551885 597918554 440932063 701458256 904448435 918862329 604281876 794930264 425876021 433700043 860152803 887019437 194677209 505617969 746080825 943725620 640446275 850953115 957981395 968820585 505168195 591263078 191004483 369288798 226832120 392272944 51988398 99579734 187522483 680389186 929153111 945616187 933225256 987434383 544904394 796914783 139533540 761051194 273633283 448978242 927153695 966295057 521120573 614959764 149273097 561550529 159713668 953417102 893976009 974532654 415808313 950566463 231697443 839405975 604189008 890670925 154480029 276410116 982862713 995607640 831596215 965540840 235215809 765445459 25140394 832349247 849279741 998176429 785470631 955693558 399215112 698018445 190283585 969254186 683602824 966068915 361788092 895512546 987503607 998363585 567889095 903586850 751200055 892120154 261019931 980571778 263458832 402494824 502813369 607606122 533717772 910430259 963768801 979108642 502669231 511783842 423088508 673447437 395646848 416840612 898189631 964774050 657260870 991522302 99744165 879150475 865675666 997401537 508258428 822619360 915709054 962846731 894357116 908394627 322811894 371872818 363689394 742920396 994694677 996820819 487784213 524845990 437416520 821736599 722400144 872454357 856589243 967006788 919507900 957050576 87746358 764751186 200973032 698555143 262392394 698639188 669465059 672739652 453527395 893078981 684995022 961855867 945854106 979516867 519119869 926108363 349124 131048854 256946935 480821854 675789103 722307402 441992908 840459720 480008932 720960850 991444070 999233562 15817051 545342985 582736082 830577283 811951205 829909124 735846158 737011712 851952719 886609382 652462266 843738590 453820953 577091337 362733880 942618575 853798395 898231268 811633077 992496338 61700651 349090507 581649892 838830897 261726529 274346985 730554580 767872771 139030150 683113445 670672009 683829631 133239200 503446204 293918769 613620335 877486998 972819770 11935062 56878225 796642829 958670004 595431895 989955398 581126905 832667066 538969901 801255118 16164524 657380113 436970869 987389468 781538507 944766121 269200010 879146350 959779920 985547120 35543579 186696772 535537904 751655823 16878176 576161197 866647297 874876464 83015133 661764238 85083503 670939702 248197423 665115866 486167841 671868390 932189346 987878531 305629439 799487629 488991256 894476699 983072789 993248137 529782447 713049296 519549198 625166610 135284133 549520491 590271863 625480940 753060031 919273302 880296605 962741290 345606243 914063878 799750736 838194405 476394404 901135619 938169580 972262384 898476980 995936141 564322348 992939115 15524316 611625543 182040555 337018034 85949640 348263306 121408260 472095308 951059026 982569154 646096329 738118535 415798656 980271091 581095171 888846314 299923668 769465411 349039230 701863343 259404897 739396953 604515544 753139464 771260157 844062381 832999544 986513947 584758401 875251625 26961929 300278684 881842441 891008344 896000774 950770171 143500428 381935819 877088758 919182956 702075961 805868976 428415915 868687477 601829155 706669606 394543636 936557496 241489532 816358735 824551830 885500518 762122730 883353543 679008643 723664020 459404094 569807250 259100248 845345576 289375641 912220515 768096190 820418538 990302634 997404387 738103244 739592208 182495778 327205422 915094351 971653378 774097597 854238597 584607493 867302107 370540120 499197310 939288345 957150209 110626630 825071082 184617176 879179594 641597302 670940310 249676694 446145615 941052469 975465113 181076935 698622079 167545386 982630840 848243598 876349832 622365500 672222099 432397134 817737634 498796066 535562284 970899139 996207643 15944127 68293502 156816788 921768860 301843752 782795916 100369249 287841926 953589288 994217000 707883391 891283632 863308371 911515455 804084678 855713615 202163423 490308173 87576275 163106413 853208405 966532172 251250732 498907666 965425301 973484066 19050697 122124600 800712211 868362492 445090435 521890822 971173 268360009 960245116 964954433 351868944 863478476 387317654 500044952 829388514 963406859 711989458 760212932 605197248 954258237 279851577 312746879 692451367 950203989 424208574 627357695 891370253 996885793 454242729 474265485 823808553 889753100 582482608 710128294 136491166 642026806 601961039 840528950 622535782 802714736 744798085 746902181 815663851 880048324 713982332 827450267 747308498 824924390 569256599 658821896 120759228 321165033 441565588 657040243 400212030 882400738 398235682 476539661 535431889 888441553 381070320 919376836 542082411 818907673 85527879 759860790 296624751 769670115 101565471 882273697 44075943 953589062 817270320 859019581 329333554 932032868 725504926 990177765 276440237 815582993 95488603 585821697 82483831 539247935 894351380 952010475 818287133 860909410 830456118 840161570 473995280 621171916 210617828 637657885 724043743 885851401 424692279 539698468 741690953 840043346 584637925 808832348 135837482 966732962 831424421 879690333 601738674 786167268 151230596 766872551 155664209 580504743 709545434 807230123 815184077 855977170 250250803 876186477 557287764 718169598 78757457 240388046 522420174 840807503 486168898 501434418 493942477 658199460 157164557 888204415 333108288 403976686 512452525 522104013 573150463 751430347 94358013 791167578 413170230 986343725 275108449 716259808 577393605 663179318 665049440 974735199 961490275 991258222 156925260 765324588 838666560 979075880 558176784 618741678 765249704 834891875 976981067 979496320 775094323 911159022 373936818 553215388 337310586 550549097 393606838 515907152 602456549 889041067 217195293 886846546 99603253 480868343 889713303 901036432 741987152 928646346 166970097 281272749 292251010 675213759 245163080 890730679 683842505 726664300 704566466 847217324 962819653 978751819 105777715 790385306 161544660 844551400 277823000 616652985 186808816 288631285 431915151 943129708 35534284 92376117 252266764 568513554 585470839 871313363 265752483 529278466 257744585 397364612 845764500 860647333 832590752 914276428 344395144 802062717 851645339 851753460 734156187 776583102 808137263 808555436 142827448 628833324 312073835 456760110 923105154 941621543 485873814 879960819 191651345 827016652 518561622 873222471 682491753 967881296 526123484 806954652 837818131 844451121 743571133 846981401 965980103 978576192 393735106 554815602 309473533 940323794 695946780 731148143 657223173 849300201 903987434 911510120 236635380 690381103 717705754 879290873 180178401 357428940 316579680 773065279 436695765 513682199 150054907 198775583 108091146 298557720 128750887 487074078 853781601 935112008 103421334 954434970 667411682 851625649 345207880 439524093 331884975 846144193 597370897 734435801 150754303 432426841 219278077 998190714 102940251 164172983 991256681 991964702 682161310 903079558 180436844 521257990 231856423 563207537 943771262 958569402 929223834 947293193 797894649 983059911 697710267 718560930 57471271 65743335 394287979 463216458 36870946 909253246 561291495 963885050 616884876 751526777 89162511 933982621 343586469 862258623 625844561 862415911 202040231 932825763 671319414 943766598 986557973 993378120 704441866 836938070 783715026 891135298 607398194 813676232 548558012 864344708 271589494 648415601 145619808 868472840 668102922 670626059 856523943 919809173 307668684 915353065 276053993 614165099 387145705 441563369 153465214 329888427 972227852 976316908 508736355 619045399 30549629 498862483 579245955 696708698 972645797 987683625 709074513 806984003 316379487 820786136 391079883 705145241 985031021 987314517 918260876 989832790 594759979 908741091 824112314 899007904 859738113 918588800 862771493 940234215 630358669 750264058 728614552 911608192 868758504 915829018 771584006 782886720 257685110 995794553 77728185 427912602 22322148 804777436 598279195 846923108 79187189 720157604 65242621 828161410 50392451 860665245 967018174 972388953 103378977 104999922 891364289 992704451 378373372 665210126 660411839 721474031 329047193 603949261 462449384 574916429 150847268 535199540 377747740 934844223 829677818 949093051 280719821 975065804 543161668 774740110 873531418 935441697 52910187 987198685 946741322 994120257 858358868 959188162 223676286 705808341 271753219 499693898 900470587 916927597 158020907 817811070 956302506 977880518 753869227 851727814 215628884 487839256 168269891 169083796 640806166 847035623 492061234 767034827 102722606 681170737 263851496 461076763 398295359 920768026 295067764 968651373 345957227 801390278 826251566 894506469 557693310 961328219 234853743 951161382 404513766 555762905 12516903 53658856 488598043 746268917 116090325 413420414 484497308 685209084 91314424 479954713 228473846 588982016 877637814 937850965 400961512 654128264 81841642 718861684 909779311 951133192 612162661 788816944 516762156 966928284 434964041 687279332 131908149 485781867 925206747 987280170 407180771 669862207 314475385 634144464 105557747 197103412 695909816 912274073 346833688 541605274 973512868 976399002 143437418 518121360 317600152 329316667 678973245 984351392 841140169 922576041 71526902 913460472 554171342 782565851 810834631 983984258 58130971 400290051 343513616 615156596 8150138 953441933 421764564 569940880 124539424 229929821 334472890 735738849 112229830 132746510 704185499 839028850 828046292 940064625 918043130 977370618 923407263 949730440 11615529 371344119 425117541 958157499 941441543 945686999 866886118 935613506 986377125 994090955 958374154 964250588 281783296 391372117 66179753 879156844 54617184 97922330 954926499 966492285 88736380 554433390 550781610 555592020 11930401 404023191 761144417 921509016 173247315 936464389 197762420 759861831 145658272 539044081 44946922 367859015 811753247 995757997 369733053 729010067 562869363 663333185 955045070 963803650 917897500 982357560 27776458 964916482 92094219 741510674 599051771 752730836 529399517 917251469 689538835 893925485 838910303 953716305 469588506 838139864 824492800 907057467 336583378 725031013 241380889 929197488 942196371 980316585 101618687 698357270 796011464 886025162 740923820 975514897 501429638 571525376 631801712 699574812 236104689 241971644 652591382 825413260 426274466 696021525 50880226 250357162 339413669 649170405 650843577 878509613 196052483 360056176 678322848 912336528 956082472 997096558 102707055 999369935 440856469 559688252 333602416 795118333 88138973 679267049 644878019 646251578 32006279 799742489 113953924 981923872 813182629 909000981 553367002 775353751 814761611 973916315 454216506 658949987 788858625 821662508 500751122 902594925 753868388 880827895 517319273 989572094 694201846 905797687 26032771 438855003 771368942 867632610 447255341 613980356 69937166 697190257 510687894 903570822 188719593 687111305 484206901 827537840 609234667 622915329 780617151 781544740 277109046 552763162 834853500 930262976 146087126 197377126 336917915 514128878 233853428 372209519 286472562 860737530 26191154 263004625 123299172 933972583 375200104 960966354 790742432 834167671 60393931 707568497 433043751 486995594 270468378 377557529 948013507 970013011 355823520 961528483 888913454 911604098 333191323 514864579 205150584 293081525 458953917 518021982 413394040 506430834 923304682 936521432 433691238 890252347 767085505 871466379 79704634 596336346 476581911 925737920 359384622 857244192 396653720 633111397 960446573 973113750 422643438 783063675 368896014 665702105 664593050 894118642 933861323 950309035 996350822 997261638 190851177 845916540 199467383 362092649 250600989 486973328 404370955 696357686 633681774 704069684 944957572 962694219 831894768 940515325 454553240 509256356 221997314 985301142 312647199 789016659 199217183 678167654 857918116 983688195 120188434 234009967 509156891 731164206 90584545 933625850 863416168 869603930 800758801 914545608 196911153 833082654 152107842 649330123 570559781 929870520 359497851 636526270 485259728 506686170 522723740 732786988 359722171 566144823 581575030 914030376 484024039 649938815 496886672 837999933 68259597 612865958 886198874 935150579 146819839 626674127 511308377 917804692 833679302 916044913 319135518 339462088 868822902 901424089 405381983 660803116 934552064 984762812 195772072 686193354 13579141 474539187 888454174 974868692 588778006 966809299 223732132 706483798 621136933 832976297 621792251 663432332 884013220 933089095 863934370 886795099 220771855 432987468 409387961 632670540 812010624 902818416 370425487 695129345 513497988 916745263 827290930 926219884 236070081 571282749 187615989 256860849 270967590 793207537 20923713 723496355 128282106 521773595 158766578 510453331 853350826 932287958 591666881 885035717 295689691 716450715 776292947 968206192 642990949 714819261 986311456 987305614 644235034 984838233 71037612 193333308 115663716 185042542 823322640 868044855 495199581 811774961 251302519 751053346 511558541 523005936 712275319 845025187 878858698 990333336 862541331 929694424 148690165 698709720 755396227 953092688 100118815 115625381 757156046 818870463 329889373 751355984 625895719 669685681 799098299 933059103 141404196 466020961 96727167 975212266 233026693 522425291 46139795 444223367 5819258 617710338 818053882 826086122 463013924 898085359 899352355 984169878 948701924 979808637 615909025 967884198 413897710 907737587 234734089 481352231 627517063 771358282 380662587 680591602 449797276 843441241 453759224 584711829 502530340 693397459 674153165 770627506 193229114 696565291 386483078 558703643 963500712 982459928 348712991 758369493 735011125 832769960 279821383 530495020 662423711 815010929 482786440 906786911 541577001 771390728 54434451 908790542 301100707 794938748 813262156 828483417 316467616 696102363 622028482 639275854 165155477 903987249 368712859 901621092 855075115 938664061 526036760 551600906 405951804 923754575 862815919 924350588 569192681 604090823 888997956 971807047 90600051 190350679 875813388 903976512 284886669 460060464 234258789 885541732 87354389 600057635 177946021 397927498 687992320 801505716 314546183 902474625 463898504 480725131 785278375 942069941 559847309 611528617 965415669 994114396 627937663 810746831 143031515 298242084 33880505 997346965 184982519 637436885 704689012 802857354 926946893 994160483 834410660 896421769 220442921 250424681 217101440 358275702 660452715 892511930 749140924 771827320 383235207 745071240 774655798 960903111 970807180 982391535 367833752 642268770 19279314 325279396 582389232 941935923 34616575 275731020 371458973 886962359 852001164 908397276 778183760 912988031 698887761 914118569 985688816 989637577 403450192 659978031 872559444 899727541 752889009 941054951 804338346 876989157 274715224 864085765 53172087 317588334 660831434 861713554 423100882 672082257 79276296 383385012 583097478 589662354 207105732 450110344 770672881 993360160 694321213 805768514 944837584 955912335 55627506 358381391 374165648 624437653 695627488 994288834 693493445 719539377 386912729 449755971 314972881 574761251 49015295 390938298 600381521 658745507 160094105 832871631 618011433 631369862 535386893 627231308 682710092 912997447 227791624 778533067 904686604 928293215 308063301 631508535 191022845 497314022 677465992 743901460 844783021 994398254 259051731 761832451 167773168 771593013 717695266 804729416 860059977 961810522 245568470 630266003 985415916 993102591 678966015 899637396 922448878 965597786 276693677 836994455 527318872 672596077 271791419 772299904 856710248 884914653 56455755 878720739 307780745 984223922 747485925 935716679 605555584 696493253 754961568 756317901 964348627 964548807 899678268 951572721 611059597 943446123 430292759 762256813 25333394 508708928 126308884 763101002 559425254 650024718 329226808 910255183 304856471 638772169 333783653 709593271 529074406 907367513 489794825 937754626 172894125 434635920 446641985 692070297 136108346 415491189 448365388 717647688 754521239 995423963 134183528 776196539 876652759 981392193 429638213 852869694 510350682 923395042 705390770 992671678 3471539 163292192 976736200 981617866 777538504 886883162 400874446 503735829 315445440 756193859 424751122 932695999 272115459 414482629 137434978 238872234 534654009 570631365 448906124 825789887 357072044 934573824 365901541 908980330 802801078 964523305 79716561 959135937 183919823 597657825 577562714 809839078 134114097 842529317 252133989 473767552 778166485 922610923 423586428 686349006 110312630 800583205 874965599 962358754 507733974 910240903 320356709 630643327 537520748 991632125 87654341 429076256 232395817 485790173 767385483 954480291 387333907 627826411 227107550 700690787 210925844 942907767 162859133 495092684 240283992 263078022 941186048 974121202 573689129 605028491 261792130 794079152 445342148 658990639 23918792 298043681 3988768 859511025 632191381 833534200 276207047 995355766 796719310 806511276 77119720 549862697 882119529 887072692 300957559 807698641 39822071 256112527 802194950 872695914 130440164 864004750 4765105 842820005 477776432 526467144 737237027 891237908 804459199 959330443 404248128 755080516 117433528 369747315 202729960 295834751 675603132 925097006 333844218 912348420 795418719 944747659 222359830 368180609 831681414 939916934 918129678 947674579 599752005 643674297 222242401 241869563 388556272 670058957 262860032 650641743 648571224 768289109 736346036 979092034 940338724 996322225 762838201 894539379 671357942 964509482 496607819 903630968 744709809 961404510 759421773 885318828 197630655 801795275 794428354 991788635 796112505 933271936 254064731 624415825 643057319 696915632 781183746 802932945 538790922 675043063 950478657 975566595 928903772 960906266 142159567 249943024 764202271 985971081 392345738 585472909 511314358 633034101 693539079 954841937 707701414 782480959 89658988 557704360 118378354 802689005 918664466 950232838 351708758 994858913 711073182 827800928 201991973 898468863 395861470 458071840 677919357 743034511 739167482 936526254 678299965 737780664 939949573 983963765 867706962 908074382 950155848 958478087 117495044 139048933 366991380 722602225 158250012 393262503 688303081 987346127 657561923 667701001 720606878 992407823 262666389 427323927 847320904 987306532 871315505 921219704 892192321 959045216 122798794 247432049 549387897 813342522 872456044 942312180 747955011 802330373 538179035 569824347 105841877 757393600 939160478 949855588 590727262 787604951 550838103 566017709 819150061 909659935 497284930 532096299 406113460 523196469 874647621 912514108 545794689 792298902 960925364 969611704 631428104 736959871 160219530 356776480 180489479 507013158 496875557 823553471 569211612 806868127 830577757 832398506 819605812 930974190 392700836 437366180 130730813 836444362 962673963 995686531 314156162 607435802 338935838 693087716 387358658 755405661 638349444 962146740 228290692 631031223 673699723 844851858 371302815 461057459 285322557 519560667 440602369 790097238 954256322 969582192 259659084 698691993 287219285 683783058 386212969 961118753 323959375 799637476 614368415 748651494 969076047 971526322 3995590 374387676 462094925 883588462 688472352 930420515 921167602 937333127 167942126 981016150 417758967 979488308 72901365 131298906 690616051 897636700 401576986 711835125 194650415 986712092 656584022 813858346 196793215 508729329 417845855 965359939 855848273 974677041 804277812 891309233 474203987 499853190 139306513 688008228 788090352 949114056 663325041 832500684 618641145 647120987 248406064 907935409 521892202 661205069 948894687 952626392 346292620 641423339 35449620 467011089 56024309 891638317 124951878 671968888 344778509 646272927 935332376 948682819 57172286 705035804 740029368 822056402 784254097 972280536 641037042 686754457 650801688 972068948 419089245 707271489 698711202 834080691 700700419 925992070 282947729 773312045 398291164 518109214 299537248 459601201 741715711 928307598 940664567 996480126 976545118 981327740 379099862 859348583 931617638 953251506 755511113 845919571 963188551 982855637 519570154 914564829 275199183 956180542 10119076 68083358 776451622 876914231 583632563 828643839 794269542 827740241 904305203 948887633 617299697 991262734 876574785 885022098 146031870 950944147 292330377 625891791 804269308 840379907 817337835 846927489 672489352 763344060 899846289 993727503 982201660 985458399 11814849 753271493 209400191 659285997 274315730 677210263 100489453 868003488 403739081 586672046 137839846 285568999 522987024 923486279 33351191 152835080 577621357 991797597 416031508 910670575 561977913 652076328 236258214 474799986 755973212 771529766 434607272 624448946 312164879 849649765 977730076 998109435 835867211 877468590 35196701 689655455 564832941 933072497 376196286 703543696 131078826 912665124 67069375 873470093 887978798 931133317 782526038 991848733 656694164 694871191 87752422 562815771 622787507 659555530 307401279 838263962 310563849 890526814 288604713 491097980 457854986 516971655 344267365 655755677 718454169 823261181 515495461 854682875 933367325 953956444 11628351 454606495 90230663 403185719 965584743 996781673 184379568 992768450 315013114 346992047 299019733 997233247 385932499 670127206 645528024 918408443 681459922 848288282 662578850 822601496 856484744 907540637 320219988 613357731 88076039 460170389 624324293 807460829 910317044 967397923 144271889 307193917 183868142 899843927 120598078 303354069 892050331 947660372 532277825 591075686 390117023 855516394 588659099 614294550 385983168 952659591 705527768 928097191 419561420 793004601 550801826 892557294 605774423 697024401 777529963 896605471 763796129 976036269 483030927 604673430 122407914 597953082 20707910 91939810 483326648 832889232 127679493 991478014 568324497 979779191 569582500 937620695 125929638 514291044 602507284 634280039 35301756 185101523 890104452 969594179 710795927 926850894 551129443 822298309 510192608 681397933 453657085 933424305 923953889 997381915 274510587 649878650 370040424 667302498 451487745 523716202 148724136 779082856 442620319 739711916 703738459 748075875 666024929 839569167 397687745 403896259 982956436 983641401 285025582 951503214 410533753 750488417 308661899 707312617 259180025 811919342 820343722 831605630 414699302 461584650 882853889 951599897 124285191 932574905 932994618 945701736 487167182 771987376 764364729 948009823 499440073 979234982 336863164 489198927 2671914 52854885 644508203 776609019 236062739 847439474 354596294 377630537 448539000 552705447 331647057 882882215 660329653 777422981 361066446 428600956 111126588 999209695 252725829 424583607 965122275 979341532 110070013 242419916 717025339 930961241 731267681 961622395 758328643 847747107 74457510 966896969 791370428 970376753 491226468 980706994 632640646 764390357 893862117 991639539 645490144 881688792 991302356 998041303 675276134 859122562 361159125 428650567 109665094 191977739 509508953 613815349 355965611 444735886 174212618 633018521 469477799 960154352 140715633 266745811 772830125 821259793 35369639 154075072 545025145 654184795 594208406 870608641 960264711 994702128 113173728 969058405 376139180 740451420 75373882 621730869 567642244 866641009 795529076 923922389 648365641 854647263 436052098 778092343 419843918 886465473 826789003 839225435 579286570 838982816 340411902 583618127 634761411 857810472 628912161 764558118 438024995 745232652 185473978 905122762 342602280 778576822 164063531 811298881 616696586 635459059 56899003 172799902 248018601 416669683 182301788 591530180 221475753 261008571 246203026 728369213 493575601 883383770 859422823 970583145 210160251 436265474 618198963 988887277 855676723 865232591 246608605 890483006 525701010 974583259 957201233 963510464 979864018 987092602 130404393 919032220 297207799 988078104 8315076 403758997 65740812 895766686 504099572 873536691 311212759 447601816 573300128 992853464 922773912 931135756 964522935 990950249 79792753 250312885 557856516 830347925 917944223 932986444 688856945 750239691 159360909 472364210 61197848 123333878 66166969 890285784 926430736 935823489 529082370 858132373 889090277 954333645 452584945 648705508 390783396 899340515 17051958 513780109 515481233 929998896 463078165 630485935 152573569 851181050 826326647 933627244 551438090 875464438 17401941 589897806 21736880 341077652 993368520 995717953 16602943 866276683 248724653 429238786 163882211 763207679 761323308 939812340 864343141 976018804 790529334 901398626 460432103 948605302 18374090 918613881 3595380 261277066 359634784 598849730 89384964 895842938 66092808 432310513 206111815 983675363 590446668 695654584 488648211 923435954 270841964 772770689 835156125 976449732 434329850 926200718 953339386 961059151 191120934 662239990 192340487 712583705 503853508 531307114 274105238 334378150 366242124 496003704 590342427 745384611 294880032 977072444 261471848 880438962 646322643 942717375 117316309 768295072 630839398 691738220 324183974 602241072 782723014 900779151 345830045 643588915 832017865 904122896 409227607 465592624 925153639 963027207 290914550 561507947 737294401 936016581 154479270 801800096 506134001 536726834 116420652 557259164 336292462 574030489 484888698 506135454 102744435 827333718 722610799 819305126 314457749 898131764 200342187 450170666 86185746 653772906 924914655 991286038 175657496 288664224 842839650 926032513 858697260 907653785 449979407 500633449 375965094 712948769 81093281 929478950 371637162 961589771 690159114 799650954 287141994 851735683 870466108 945785267 332620043 687371477 292972230 654906078 997196078 999383226 660979094 964353864 800601224 997977673 78532442 148203150 226673932 512050249 798267259 892285940 191596371 539405403 930430397 995765840 289751277 575517988 780366536 833720745 254316923 919339694 421961678 494154579 577302750 648974003 732997121 952100749 566049302 980200068 971048470 975592364 217188387 836470097 677142126 755729961 384249291 796682239 448538724 454860730 192668027 594511546 911149598 951777308 450371340 619778229 185891162 510331222 150836966 892403204 438588106 641172695 331763764 903371363 70146017 586726705 879176769 959940534 23539967 782662630 745985758 861578085 869975279 956317488 645133559 662049151 677697357 811042880 224241238 862759839 795505849 892407829 657018329 712187305 808961938 831241802 570391664 825083749 187915792 490586399 536474974 632348074 450822341 511800850 554031950 651401669 203100370 472541689 636178796 903522377 74415668 530505406 762138441 889267634 184414854 467411644 113118851 558659321 256231416 968061776 375946561 999009487 813105615 881159243 681599542 787340546 56259138 72057264 231187450 923549786 5396210 597830309 836356450 899802994 817868919 847204934 678952299 696327132 434026632 453589483 548912516 717847649 240130960 634751300 375733033 675712929 454694942 633660985 475436826 619382694 424434068 561415936 758921152 893999465 997750796 998916935 726485913 982550188 162920265 298956205 46068107 982183406 199754340 933370620 538635013 601385587 260170356 959641021 752436374 850579742 70800840 734314189 963672485 994591402 366694365 600604598 806218614 883293092 339542941 685926305 521889759 630642980 557746206 918887603 74682663 312267053 860884050 945212984 82649329 514309888 118840783 867163320 409766733 803111444 207360016 852955732 683301329 975946772 371703999 491615619 550931607 733490398 265083026 464356295 742445047 756500044 412529059 425985591 12059144 21304797 849040298 952837419 216074848 477119566 889028933 975973639 498635460 789847337 947790635 964787493 170508765 470555556 915920473 961271659 472572873 565854631 442239601 947816089 14002922 986243463 656074652 974081109 951387749 988548966 765499887 794547799 446351186 891531906 154623439 848448691 212221421 711542614 364425805 713774523 989530746 992762446 536412395 872391310 688233383 822471783 827209116 957411742 567209107 704394513 927338331 972337108 512860104 685867191 793447665 827400267 83267288 240636680 583766203 701931663 697332323 913337675 868958592 910227463 854911624 912426822 502686681 769323617 600863770 916809620 150463127 829374757 597026233 765281270 815460256 963728204 797221588 910198350 236501026 835250171 272610753 371098646 328034475 940537992 688845443 885662207 730019553 740986899 813509805 840558587 336728960 561507127 698585742 993165658 829163661 853767472 700139055 883358978 543322446 762650052 294751234 617702730 99664528 581238883 607927947 692817250 781223920 836693982 87599911 128029987 154391927 204942809 139518287 145139862 650438962 814481738 519117333 940176520 456982441 570191370 564549393 913560221 31269066 199017344 84717014 960934861 868738942 925695491 957220577 958506638 798774876 818845377 602552402 704130738 147729146 623641247 77402377 397628853 347902527 769604740 444151058 938298715 495856859 837167261 379866526 971246157 498579313 566306371 749564158 982439742 529458984 542770846 674703148 772475916 232771788 360364670 29171693 975446979 373129991 889487643 135967757 824032619 859087432 942806188 111770891 399499716 653636954 962484675 781949343 998407528 367523860 892229412 612126381 944678198 64430484 899431528 741218974 776004012 310855822 427286792 961078641 989380553 36820820 395177108 60324585 344875107 251154417 351547235 689044298 742938610 995268934 999073105 713745747 840628425 991934836 997675934 405004440 619929571 803188646 919837732 698225751 892410542 10846853 736350634 888933343 988004859 13905266 790169050 821870210 824452657 837225970 972102479 990217173 998954854 948792343 986322832 704034420 742138622 697339529 858152665 774951940 956538294 604727421 701935315 550987956 557220931 912507286 955226559 314024461 958334427 181484253 299369279 192036144 687110707 723988268 822059051 659884117 902857063 974099236 993528483 187745301 723075833 566175249 575347311 8359338 185041810 525365222 847507585 603432439 866044184 304651479 964761606 545799139 756623804 600430753 755851828 795710199 859745646 907670149 936081594 185833425 433935457 114755606 847844848 592453955 675635117 609376629 886214349 10107194 860210744 53376385 613537695 410632908 474504920 82466047 489047571 65001277 337284861 362921057 776942572 504524547 758066572 950950243 961721591 458122729 461100117 50468241 488576533 603132660 782387098 979190951 989577273 790566027 885653979 861192447 906537487 173082691 891430384 86407032 182250600 865767290 876333049 434436191 575339702 466489396 854459336 505908211 802186107 853204288 903937497 641110837 651891413 485355818 512705738 109893480 221608423 852386496 888153916 14134298 401939354 626689486 746773003 806034310 812966432 815567516 837923383 823600450 914810712 6012165 962288725 705381201 767820348 447782217 960110213 888816366 899010299 916873325 923805650 636826342 678381820 880477703 920718244 533949119 931018564 888664077 989068489 86419677 627792889 587146336 699395229 293809538 443144453 57629196 235186752 17161221 676250664 783918601 830142603 772557820 912237965 800138687 832506245 213835899 271517846 243731517 287754219 532140639 656568925 915106457 934736818 585360051 856207399 161947999 450712841 862547345 925445442 350010033 710171900 558795962 675078982 435784454 689263486 637346883 859482598 224924516 890118544 856474069 932888957 465727812 623858248 171370441 360996116 660685190 945814269 592088918 770996154 47961686 886073940 737940875 925811367 171488414 529027362 305528699 365122074 810334053 965748319 191868575 399953078 849303870 893848695 702689638 869087914 435770239 491601046 257144076 519242010 228731182 693582644 836160994 925132144 78379760 957644857 308382673 560433764 47771756 921247741 191376324 387110469 942726663 945545986 653230607 868854365 261924181 603198592 967079014 972494389 283505453 356652446 516071476 916565259 985329751 988811040 409257320 820615063 856988067 965786698 441277663 878472377 921524501 965992712 275231554 985106556 295906529 515506289 561912000 601339239 100017684 220543603 875857519 997506800 414047825 594972540 645599898 665558767 864226958 894295802 444787953 942997999 264936039 777489976 878241951 978885111 929685563 946203564 267172011 505844888 947506563 981294632 694198645 832109010 721557836 931867154 361480338 537643279 967346491 973736988 848541074 979009762 32196342 248777602 274005391 683410571 772932466 924647741 122758230 337679545 541527134 570890483 679896548 927709928 565015656 594134038 938689584 972021542 816585731 968528223 993212402 997407464 463484993 885549799 230018074 896310524 292140549 542015760 173688145 998224686 359966128 611044695 153459052 536535131 562820363 745040600 283435006 541834299 409747544 645259979 371708249 674918598 66626716 182477879 871027907 873729103 624033148 659353498 169982916 285581160 951326277 977049341 866074026 906665500 876879706 950983950 493147006 699977625 252134871 792185969 728737743 751754906 177559250 209644023 35542181 413970208 966368435 970960975 370472186 779187541 328677370 990284014 797212176 893479488 493084153 819151201 786766190 893261409 382013736 788038965 262985141 351353159 408721933 546496136 933133619 981111077 976635054 986516763 470555978 866862691 379594042 410903581 48401488 452962819 78186691 530048954 521837377 847139116 388458664 395745261 745227478 816854031 466022188 937761109 201067953 864770464 157556948 293763951 340783183 837633798 391190900 597290337 58048158 395621104 338308857 429280840 612162944 893387549 599272918 826461202 379550072 798670923 203393358 931802849 925605650 934076753 272027801 815420160 133612535 451253693 35042036 209611124 229247859 835703817 820840810 909660992 163040311 790951953 138665143 155525549 453567369 534642768 432865806 801710791 525979865 993499302 808768709 994117347 782143014 793113969 386753174 956242874 545945763 849299508 26549704 915254499 355263025 662357454 579722588 675828233 467895265 741996045 189600720 375156021 451868960 470173748 196059045 217359302 759670606 939448192 534966986 706626052 703196201 793060209 727626547 833562189 295660854 813534604 764052057 895205453 621225468 816464520 716409807 768714534 15322853 510135947 941534560 941839436 435671875 696644459 435193815 813351757 722576348 977927616 908942187 960917411 15906795 115755063 429092646 483770252 654303051 795326293 746376681 994650665 567064867 714877800 727381239 774821159 131202878 926777072 505296451 812570476 510275608 548579561 103768957 512013229 275791010 822979771 646001608 902696558 765168275 891864048 582688514 984586054 44585427 315519946 440357587 887960399 130678999 395317634 155797666 351334793 243577353 670103512 632940562 829324058 334845471 971217854 664366607 992218823 59762523 875858796 76574257 203381597 485701607 777219055 798348474 865637693 589333745 847929189 608985290 649913558 768106606 932098870 914977588 955907835 741407564 951467261 729419655 882482281 662345739 911017433 652388011 931621315 862363710 916076843 244253293 595085269 988046824 989764996 588852003 820206877 509532195 824484770 519025763 856386195 102586749 462344697 796463032 906151465 831503351 997920624 914175182 959573000 857093223 922384427 607410169 983395197 882293951 979526045 226329873 852498329 248377675 361221575 492366347 717514538 898376478 937766067 252534430 888845799 78567100 273462171 420271217 944497250 142929783 901637716 225885126 949769196 378861890 511925584 958363253 979889594 404777974 615558502 584875943 990393606 340094589 790713039 303339445 696160483 316521477 760864535 794296975 908204476 379109161 545985222 387972417 870920706 591720115 812732734 653626404 715669868 538136390 713576470 844384548 925930130 670601147 952368851 313127730 623775127 52234180 775014375 828942603 960953189 193318511 487168881 738978208 842172603 679333367 951513039 40424402 813267224 472583767 990940109 768308260 775870845 629300207 793934251 226874180 513750776 34548722 521163769 138556949 882675274 305111929 665872229 900141406 951786178 538576400 573042911 306411496 595096404 494564631 746060075 881151269 891797747 563374387 585244579 305974232 684397084 733624345 885502166 243993297 467019651 649095341 806740283 431423530 556018669 674905565 698346586 35782867 608251335 767486621 985467488 453785773 841953853 515741734 593980051 740867118 870028185 514139184 940233756 788796017 992710224 222833645 831992938 538837323 685814149 723570428 832002527 858117385 948815889 258464569 527175438 456361120 736542855 15855591 72989822 76603502 702120161 194379387 741955211 444019264 832291372 452393953 608759458 479084854 791181299 215096051 309942476 825214152 867037160 764795587 957127398 710961119 746042189 974030802 995233042 622824180 706654449 207946036 389669366 148546983 195636802 315534870 800301304 588336539 708763897 247361551 748864635 137253444 433543129 551517153 705570210 938546967 977106627 987725275 996863330 385664590 504635127 446942097 701899956 445246202 967086610 224459523 892223885 531858063 812150834 86634224 258160350 927272154 996449278 762842655 923137291 741850488 991813767 756263260 991027301 661086330 922335972 138134263 814271905 927681575 994821461 333810508 496464587 80257894 407769462 171899539 296465443 490976793 846035134 35163913 524260241 276507437 882232979 636802515 905584246 789494061 893514731 988966224 996871174 516576374 539535147 775760345 981460563 689209906 980806015 454843303 585842364 187493498 799810123 203651430 422908831 541860581 953796492 184922662 629070391 886380132 935788488 665538387 865651099 269429875 556665215 279674395 466582478 202609300 514814007 330077595 393250870 371149394 416842316 905745196 960807215 355393201 371595498 571445544 739492895 207886788 848971317 125860456 821115030 576417449 770161184 298861158 916197518 605390118 829631950 903331690 963614421 500660095 533170078 875843959 988072443 975555314 988971186 354431709 377895407 334224310 832786793 180591553 630433648 193746872 455511941 185524420 402595252 902223458 966188177 343165237 776742925 344644101 417252874 994257003 997796978 22252847 840564144 262083542 505845983 565331854 932124229 599666005 664923824 248405597 936414406 229011989 987576551 980839843 990699776 961326757 968661650 910431932 999375008 281944103 951807682 990932144 997925233 327698556 689585933 166875123 327421437 909662970 995466969 637148338 794824172 738932735 867787672 268718942 547486621 565006182 852190049 376269223 544052184 379262614 717925056 484351915 648107167 514054002 687488308 952200516 999178517 21981519 533776655 240383186 490146185 158863584 826495048 625581873 994293921 489081310 505712819 894216646 934525599 955030833 976927377 724366201 969984550 794966146 837983106 502626237 894111705 630940036 910486841 35709806 969458575 27790078 875987849 911961699 917435673 341371786 466046752 881220001 891212573 865400093 979836048 611366381 988179241 154905457 850349043 180227908 203569516 705268544 924702913 950222245 964579201 727158237 902204200 131613773 834300948 392980279 519920460 830004928 841334862 316486635 942333554 205644977 384367412 813932496 971633327 202462587 489816646 674405602 849265390 133676691 807585764 165941898 406085115 27749513 601173411 878101223 896322034 202735187 853516390 576330774 750891893 396378228 627030102 713701160 967132764 536116970 763138561 390900851 879660347 327080695 498682385 461558149 497371110 511402209 548572714 107537899 981598404 493204699 873183267 218008728 654623967 583262010 701856285 873691823 950944742 633955319 763620576 533740365 699555114 591652388 919984794 537329080 982385726 161507175 794524071 790533945 854236462 318900960 910108849 649758427 870613985 380098828 757893032 467774045 975873532 261939027 742483998 621077645 824002937 988434417 995522559 366300436 940057810 878047721 996437188 779602101 886856390 82969926 321250599 32552665 877265381 192437325 717215854 731686696 777302160 260937336 965861353 308441334 351219912 662743532 842992689 54279973 614203219 27862058 446828717 373194028 577562734 232762068 581752994 140511682 647822257 90954478 813544639 582526619 675375562 905440898 945540693 321869233 852919261 260751000 675494639 414247742 509934059 132525579 985351115 702727860 786839497 848277116 854036818 695554212 811609184 693995125 948054159 647146647 649506474 810440744 854434826 447583044 499957242 867265722 969386869 93822759 738764654 305718566 398381812 781712711 923252528 340810516 391004264 35121859 647362498 479608312 954850706 343613158 864807517 693405801 797104161 425487762 634699980 705728804 737121223 967299475 977862226 472409432 790977990 459968555 568349274 642077761 919154116 488472857 640988604 497803920 904811649 217107748 842741521 850073726 903160514 37671767 238780198 194138727 571852353 847129272 871469743 532730183 638365247 873201811 873932979 348658151 848316216 863579139 939505005 394779615 818058396 504662284 863855127 321196686 386264552 42628189 984316522 204990954 403138141 222631358 825043853 149297273 855848240 356073529 940702585 700080586 963356050 671920172 714118296 796981223 834214352 187725646 299543314 854597907 906459891 814144553 919942228 359675707 908887406 602510473 668882533 124923901 265186646 760789225 979633014 160709545 196663225 404015865 732708630 295748772 938659936 614846786 829488249 723234273 814290407 860120401 893232873 441880240 904833241 209262944 694515730 580448243 631754383 773976380 913649960 768531686 800063885 176831458 772046170 219930368 813596095 621089228 767820810 463605867 803456442 628418442 667677608 552890062 840784619 572236487 826186318 708042700 772090617 868354244 918423465 147204572 544156691 10488237 333840027 529999576 957683454 931040120 942386818 213746077 245117152 622811650 781912638 409050526 880874290 245076783 854261324 236307246 980666861 326996531 911814868 258636895 579335793 931614840 997617749 559777983 756184309 864031173 929160278 14038304 652520014 838787038 951913285 913436292 994968069 243186319 901416546 199767156 523961979 383029348 410783388 557750779 759849517 334756594 612100397 748578011 763649195 587916358 598380149 551970495 626090085 846450980 983951999 268911699 729893315 348298690 694597815 566720666 863400996 154534799 238499856 446369016 467787783 671994066 934909952 678609287 825638890 478415061 822678079 387041962 741613859 343692203 467006322 930532225 948025923 59241861 327931523 710902117 788395653 419367435 647162046 612046730 798374099 59282614 785481069 116835734 621592697 209884876 554094907 491158794 626259193 365447031 761375639 833698575 881958394 301276052 448633360 560228644 602855904 656936620 659650858 318266321 768812223 808456153 978249571 429903235 799494114 935534550 986497567 736115534 974741454 740129747 950174626 401130771 681311173 298305011 379386354 337711510 367346718 185428646 836350077 792353332 982434220 536144498 757115767 982841342 992451076 298938875 812795275 494545330 941594758 814912181 819269994 720099411 911325278 495330435 786163743 361061738 746145225 535674136 714334431 410039148 675383274 246135183 991940655 345312196 837378154 436100328 494367302 970487855 972445614 960521037 988764983 212718257 285750250 660712263 820650167 773134031 891348571 108334286 804263003 675202007 737126504 202424403 889382382 199179753 946758046 852504144 865813276 371624910 687126807 317058075 758914416 652413425 799390585 105827822 475476396 177770711 596562573 42265842 642547548 512069360 532671540 862454654 934593292 75698324 263746249 140623455 913823644 391705575 837431576 346035272 884698084 404837841 661260395 296109364 389363440 323936916 661320569 393146873 776253854 634762893 968925604 732814367 994862073 860995161 993290097 1794547 360099712 633306588 754075056 211305925 540193762 990294156 996201643 871723783 933091999 790488910 849197957 551136083 560401500 280690929 521440842 201794975 547514705 649677654 861238938 519420189 927605473 993318902 998867954 809944495 823674787 107892495 326137465 959379909 990485413 8965929 234542728 339248013 379100127 904755739 981896612 609654743 752360101 841482291 858021231 263762375 457299510 80999486 142315375 858176644 940295656 585631206 845677148 557768444 734691495 791450354 832986566 947243106 990400780 4528527 178227738 998951905 999235637 651310479 752862527 331846227 598377699 750550652 867715130 561846381 845031055 431359090 500303669 875608554 916346086 425675155 763214870 884650117 914096992 638201061 911028249 303738547 938819565 767932432 888421521 808656430 883327171 982570292 995430441 956233342 962616539 685673320 963128560 743664509 929903941 862731261 995184833 693142148 941054315 729356705 760210509 677368010 708446606 116687079 469050320 83427246 306243027 177749061 693999854 21666471 771360980 959041905 995283129 270948812 845963819 740648464 875724014 376905777 708418561 242311463 650199173 567651738 822036446 981335643 993847310 569310128 652455781 946871139 957073756 113768046 479253033 134543972 678729739 724430436 756857359 393290030 699165737 276072197 541982756 938633619 979094394 907379841 985102949 77022532 159779966 109110392 462053598 546100607 623594215 938689110 992131556 962637391 966794510 110613601 150193023 607162368 630071225 488129152 874827911 155550379 697789285 53688428 108193753 231659183 665357561 514377202 569767637 970587628 971870662 26661121 199423504 976390453 994446419 838781522 970944852 746784645 810584148 372229613 966812403 877100332 995588283 720357258 873089708 210095709 509500205 195807675 662208432 619323346 950096100 573079882 693224494 430790139 621141890 349253052 501044128 843537421 988598987 456930107 882103474 805021425 912938838 344508223 589498719 535558113 893485255 31567276 32359221 531262705 572967645 792270034 980468656 746453916 768108715 383761220 596883167 236181404 470542436 168600296 702061516 671639292 988156485 388045891 569643332 537166076 648348350 693123370 759516720 772373728 949339530 1614343 293170538 382657263 561575580 293869972 808622528 970390574 991327838 692827918 721854549 504865558 664969906 680054496 965644029 623060228 787767129 795522293 917936201 383109984 612052133 354895423 694488423 929865440 971873548 887761272 926423420 445949680 482269441 588822475 835753254 430204007 816853691 891288949 979318204 663390286 977921768 528108076 601010565 359186123 675935786 565858514 742622289 780369019 977050328 634397181 937884635 754931552 796266981 769177855 984299904 63397967 916727719 35881989 277302381 56309403 880098054 785514024 823025666 311735993 866354348 32928407 138851313 790665645 978920929 747358979 830551254 106544543 681284968 986568054 987250298 12131776 776340141 388038542 555786159 305519827 405759424 936175295 941166571 491900967 752854810 769325046 862219048 947458063 959777728 663612175 951867565 294146502 323861558 140451145 779947466 32338130 984044876 738371383 877792458 756020063 892608334 32063661 743820449 746266557 831024982 144721468 426264167 974599187 990123752 237619024 809736274 245570433 296816213 405874252 525135746 852490743 962433654 915199782 956838915 265741028 974219769 778222338 935048898 967886338 986616990 444590997 982261109 657022247 718409389 633837271 904148170 717941548 788746562 928591225 947386660 132408656 308306002 834433727 917453363 97016516 151043829 150788114 255423713 868188198 922028007 4692052 373840477 306461928 733300095 289883508 483382987 613410820 735532780 227869306 553589300 657182440 872314681 271051702 401814898 673807637 788436160 677225120 894489733 215034728 773499669 85490721 887843721 786041721 849589478 143360943 631160032 386806615 643155022 799394058 871490617 56984079 155993009 605090322 684679548 659941359 691548093 252918055 326496552 110525395 201660293 225549939 452405038 114956627 892733551 355726042 575817750 860943475 928467887 633316329 860447482 418427622 605129090 726702374 975320769 287416037 820707146 263689603 440015630 129141579 258591843 515700221 580989773 422560334 888204789 771678375 963636305 186570567 920041908 66919741 423423501 80366891 676588149 301015752 792954080 328672143 936782972 166834454 208913422 78251215 163906188 893443037 899737490 705272432 741393459 238138368 335799713 963516587 975994005 133511488 198021380 967349931 994278072 632074534 989440748 390341220 840544829 884138980 983771064 252490129 692081774 118913015 578919991 610416720 652792025 865855000 880894247 261426128 854855700 24756022 317399856 579256930 949961763 356917357 811773026 35056101 511037766 275160594 978449750 602190411 849508971 483347085 913383063 601954135 995462508 744012612 747769165 875524968 959093052 451252582 451714281 318403512 982095286 925586175 974833406 962727989 988750815 341235117 401697610 134134099 971398632 254074664 761761918 161352143 263056777 232769542 237998661 27738660 56651674 614481265 827391410 424285555 915836111 758416310 892364251 394415141 611630533 715884966 751845350 452390638 809450539 743964186 899868071 218771978 702520100 474438632 511395523 478473011 766177340 609304883 950735438 54058790 519956214 855159634 970526778 744094651 989007260 938304832 940753091 722597467 918431749 287061173 288912103 824126105 944259256 574852280 629827808 750713045 870932156 846576157 883167989 988214389 990113676 761081786 808762442 31726113 926708688 978041048 981594362 39994161 647142385 498296663 944817486 381581786 791128365 32291860 637865340 695355828 991780070 876213917 930581679 930906592 992068619 691037214 910055662 151637420 344452543 977323481 981745111 762392414 991020373 383195578 556673506 663734419 880355113 830544572 950198985 178530810 194199954 840881444 890748274 603501606 783163977 766975094 943552379 809876982 856558801 208908812 461706544 496218949 661982107 465964900 792209585 945859096 956965682 756724548 960615823 497254858 515249444 445256113 726793581 872852063 914405708 78371351 881030849 88819293 421554812 214125307 469971198 520747339 891038504 223032945 911800911 186032878 805053095 51411998 466188947 471815069 854612984 460514653 541065444 921196334 963672545 502738321 587038322 725121660 887966099 426376272 945366550 724315266 874625783 373725458 409202362 18623840 787486942 674889706 771287353 275500590 372679630 598375815 853229619 85429636 929167610 859680633 955039396 947570432 956817770 584319890 662230466 737426391 935644469 829524710 836795320 630574709 699768922 326933881 950336011 560440810 900941784 441034908 920258869 296243366 311969061 763411892 865858519 661177260 764212861 779504468 811239692 965332751 982552063 489735298 774264937 323957011 511331592 875440298 916607877 199764138 402958007 561325428 830435668 966445605 995146948 436968767 637973526 39918088 60448449 614593414 657968831 5538506 612001552 546877841 708112259 334127795 432639842 745681258 814493878 958672644 996127452 192328712 862291392 837370959 991836268 924331679 989045154 734996639 750952291 963153476 997434983 834321297 932681514 437669013 650476503 442807779 768742466 625614064 634759572 148041471 829268766 31521726 682699331 520047576 677924485 867154699 968848787 334447339 548325673 498527007 664761745 600726203 950903401 893228508 968946982 373153842 729894128 194066210 649204831 119147566 836049991 840796387 945567096 745262856 945800529 368763498 588917203 993188254 996489133 197664605 943747057 292658093 643352081 787949416 849681258 979733955 993975045 198212509 218481771 540114802 982515807 795571643 802868306 850785171 966734132 757999593 796206322 270587475 709640270 698606542 883151369 952740939 999327680 270566945 772694811 447876380 686521959 514594883 723563088 151892429 469089570 293176848 474098951 822401708 878532140 150423547 826483108 959237873 964207703 423434680 645767165 610531923 915955546 373796845 788361700 617481252 708403542 675750761 696614560 654468644 659942807 659579818 849820979 101543376 296816724 178640115 701522226 760148925 879301571 401317557 659326648 380331566 446936297 733048640 784097471 164777947 517192741 675872127 959298044 763772816 925782415 897894518 926279444 58543443 317227496 961558668 997232350 55950102 218799407 538130480 825841730 401729993 611065692 107771598 938221759 801211163 820723375 496553481 860407806 46218200 285672721 678640357 721582925 635451007 647416677 714125100 784534316 38715807 632929256 317293281 570931550 181468113 464985298 709220992 902514673 700812373 749820722 426253905 803006813 855133722 921273755 208848822 787613755 576863672 651939212 630445232 788230525 434438182 903724014 890911084 964042839 58242400 922019268 106385070 550554849 438864559 453162891 395319667 908248891 857222808 866293835 507266151 898460546 121694424 422950847 77379755 612183335 79119486 834692051 904777912 908703644 619051518 887669659 4785956 222469190 558628726 849493554 909848240 943801095 525342150 760668185 758098176 993596015 146848589 347831786 486319464 720746480 13709574 23385570 701884807 890584085 206357460 469218010 471874736 954589674 334537952 415272123 4827162 713997665 503157469 933059790 253595287 376578084 761970041 828835224 245813782 767777931 547903208 729782509 924960169 996309907 349528275 400306707 38704018 857089940 270912939 911369920 931412269 984786667 416154170 750392479 193351791 340154019 540995104 769389580 148792676 360527503 928751900 966738150 253815297 590251092 419261683 751509694 768193604 898851835 309565646 826632779 381925447 426747670 903291697 973481777 239750280 331358114 888409745 979872275 927279126 933961004 749597123 919338901 368710231 544561211 557128008 985576123 862052196 939288512 954805877 961608805 376900925 810589476 328237877 700289570 249615085 994055715 255696129 674772271 102952760 845392149 82353108 339168276 260151383 619130601 53334757 491428604 966877620 988592268 489358302 994782789 601930762 954034192 973685816 988577895 590048217 857850814 332829205 714705896 479498246 658679543 490085116 815048074 289944078 526419944 921162997 927042102 934968795 997174121 526476976 718222492 336653321 535655891 812488017 995845162 32777431 634596914 621036094 668373609 572864488 864631094 650528185 692001848 471366630 566121884 349095269 736341375 122310141 326601796 482139798 940673105 662762960 746093694 368652595 456768893 965610351 989196894 907380525 963416247 153127084 494126547 513267773 698512271 622427671 688834092 345251649 634113934 586719782 819682440 850900547 869764053 991441220 997765162 933749626 934183897 890550601 986600767 625207844 925313525 130547220 440817096 772657154 907320749 472414275 639784135 488142048 918162167 930605643 953121022 139939190 873039045 653956868 766153068 209866779 911370347 331986492 404314751 509142452 569043930 193702039 624863157 31196122 341273771 895298971 978591185 80233709 513969806 950142239 956078291 875138628 908659082 598877175 938548010 5914435 989752181 334998111 682004936 682498186 848424908 766257840 783891701 335774706 578814494 565638805 664409593 992133144 992230530 550671354 808332800 672820540 993235297 842407743 942792802 429681279 842004747 167353515 878634951 800679517 977672260 952594767 973961737 306020139 449898667 373531270 456265303 330168401 420353947 787635320 968000649 675723576 764671013 972282718 979196900 32179747 464331712 133985690 832308393 208852141 527470246 55082612 779491699 36730677 134362310 494437876 608463534 799428414 844973936 215912785 275645113 264987237 691274423 95529316 179379333 485545277 953926609 959086240 995470092 505670071 643184185 544833603 669077236 211747503 616500202 740874523 743251422 554352249 579162231 378355329 995051640 330761362 554168856 185882061 913009139 33094472 993656492 528278713 901479935 779670273 884795452 786677047 874487262 71940157 332999708 821603105 967137388 303813642 356593180 142212452 758547419 790181691 814270887 475834628 632875433 92358235 148671007 472756754 543424341 255833207 534402681 144299826 615455389 409727698 631025966 125097662 287565463 479588925 987836120 407413072 539795190 703221437 811057969 923121101 966547130 561613788 642730521 531041471 787191363 105507210 902887740 286275142 421888341 65367239 922546965 720580149 901267436 136149711 510101408 198638504 281607713 950218255 955212616 621898521 672403266 156377209 227159027 375503859 890082164 284344438 644797568 345098794 923827896 699720111 799192331 756702919 802490836 750025890 831100654 403481574 554376243 723058632 896752795 834481438 994256419 216604991 382857530 479270952 776567160 478924666 635937113 98937826 647202462 910203874 923660503 755226173 869567864 654371300 773954717 21671156 950790786 224801216 949903386 22198399 64443727 276715086 700970451 567222459 767846831 790867421 929436202 634581854 807669040 46601239 125479793 476048419 871589858 505320308 745893535 298399299 479246556 365932791 582444459 941506009 980364163 271491064 902229312 833482552 955149133 400135585 564316983 952346558 956667910 532086156 894426904 706009727 862649370 868662027 982529705 798880265 937174613 649489315 725257205 695294139 757368557 258165579 764932279 499019240 895671155 272871343 651378966 923945452 942183136 718704973 780002894 392259363 652784016 559302893 815938956 99381748 884959878 982039844 993256042 486424863 985519308 749218942 969697314 306591260 484843913 434628428 624355698 509344455 744763644 845965264 971500380 935554116 977164156 805507282 830389316 848114183 858888798 843944337 976327771 109260248 953991051 901535686 953948478 441030793 593694586 572786045 787029314 3920811 946339317 487381122 753303510 558702343 823858994 674740569 876977756 599226858 721942199 381851070 498779498 455522826 869487858 198062973 543391053 928369486 998693240 127773086 875966371 98696579 241982042 417666142 681067860 834418649 935807240 327585545 978987162 2255263 446097690 36406287 495173995 742925041 981774476 584579690 689028796 957484781 985279445 236516811 593813500 601057666 700741788 257870786 569429007 706172930 965229863 164249298 544978726 834272364 854781404 993959624 997970698 977631659 991484963 853650533 885384470 484116752 984965647 642858364 868781009 949721346 990888094 845691359 989468120 830005561 947317062 644789982 855889416 609098653 987127605 675253025 743894978 517042241 770711989 486903804 808681296 411813602 590293339 210793550 505241345 658632627 978643972 696809487 940200876 579679918 808383817 645430239 739841168 328833004 838209820 150684982 453085023 994930885 998168103 304771043 472838280 981761122 991778523 675513631 695218121 121568954 266806907 87720229 733406531 747682108 813122611 773523722 970965136 447962895 662559913 698253461 885491882 77882677 728209035 70220844 825219833 100691520 917926729 981090134 982140901 200287728 906609373 22994594 80222529 284431622 385844666 951596183 982614390 150793245 362655306 947127261 951674046 666290536 973962708 45089567 457029059 439979462 697990336 418229865 924132908 765374645 928189196 521219252 688717943 135735204 959543435 312443941 952618042 884076904 959392001 424574698 786003802 42872785 471316538 470935161 498578955 43861266 530042804 318261647 430239753 602661464 797251612 432816605 991841058 76857792 133972365 780146055 836136461 831093933 946057622 532543386 988598686 177328199 682797152 791561210 908383752 769111536 929471935 229278914 807647717 811407600 983545227 94248446 563074914 818366314 818440380 605524682 925466431 837046733 872572502 882777405 963976271 515730849 813498883 408082224 878428636 49830038 569444783 555996391 711985689 841776492 952761796 879898140 954393323 622508302 848614668 571706638 721352109 318237816 800961804 138315461 626361746 135617642 798224931 797597905 953633808 181399897 455803425 600068467 890338211 459886767 867574304 830749007 889083883 995993059 996064705 608750994 953618514 265559099 512923262 345743949 761017720 700572243 947404079 590020478 778166151 340097873 857935573 817844318 921283221 465872049 646840707 179183084 298730384 517639594 748112805 165261650 888851881 967394653 997493324 225052627 842011811 284008656 860514608 747148499 756245000 945705591 989273701 988038523 989137618 891247660 910513330 865604500 941257060 219128195 357776070 381155797 451667719 80001369 128461863 894431017 896835723 366161221 587711169 696489482 870943633 332333591 618264674 726320194 846875352 507111011 850316221 2801330 649224814 732273156 890255151 402171210 582572255 948187850 954770756 862211256 984529680 73088106 708813704 295910949 894932916 791197444 796882818 685954460 744676848 696661919 732958290 116913914 736929034 591987634 606350407 741598795 827920586 864964287 975640568 708091003 921770587 896687730 993424530 734551205 855746173 428418291 514963156 684245726 915282638 832381741 992668916 680742649 682744957 956242916 961007567 941992781 977789244 21154305 996383969 49354231 421966601 943289263 944523718 519686603 693135806 492009068 803226326 221176982 393171922 103631268 719727656 672546832 915031093 854219593 869345556 524771669 846382209 829959931 956176540 797592296 963923354 133635124 206554121 26825284 273421287 823161504 943455616 139611753 527226889 541586774 607290132 58612464 903588929 253395740 449071561 818228923 910031886 75057067 540374725 995373487 995435359 187109349 557013190 576038152 803942167 678679961 860471809 65371860 322484536 295411710 306346696 540820233 571159415 928238733 939706879 813089195 826673867 640235356 921815284 427562764 833175852 28361970 809353855 494694772 791909485 571654191 823685001 84450358 142858362 666860770 742133639 809647896 810894459 689814219 905178974 654266028 901031272 617486745 768940986 400025493 702578532 671186525 775733760 320447660 769003965 828194362 984016115 508792963 917376076 665829523 984078416 494259114 524140052 181896431 651026670 846125600 965174514 923022434 961009567 960401801 995843206 86913357 452989726 526546212 535035704 595885071 832917252 898762276 906725334 150765027 182648400 142845340 607344675 773961061 990412694 453734667 537932736 877804725 974175813 161008601 833414934 607617642 896846524 424105677 487683662 349523119 993309291 238103049 349421242 878737619 882346890 666840169 781387389 22832213 196809549 234031962 254809445 41687612 530617583 893561890 933574211 410291914 789545826 820304846 826075193 436893057 720039382 314127212 712127042 215076672 396072981 476611575 780082497 381256468 614312635 924348586 953074957 826582044 976734257 901132475 997956729 861738627 945548347 495050945 635007097 516736725 568162308 236138046 983113616 156084882 493899976 628261219 982436104 46566122 402337077 210789538 639202499 304417785 798066486 273506106 600960033 208235230 722676967 526734507 821199542 558318950 913831193 872811652 965268763 258755170 947585076 707400007 923916399 623964802 665923758 500041806 847716678 205222496 491370278 467535903 684299539 427900179 506689765 660591204 932710623 26448410 605031846 130577806 918513758 817855461 959185624 787944637 841802382 554368376 674179387 94993479 501260056 968203245 970856633 711203173 928812500 862517301 910147740 324743826 531523669 528377495 609782112 914441227 969914159 753906714 867265865 734930234 794040121 391409169 942391379 651587532 904383986 902185620 984712579 111934302 290028250 889535142 980954581 511138256 705317524 581847509 654981912 531157145 571908789 771345334 796118072 698567069 718328765 968750706 999038044 42878694 143663770 329889835 937281324 485489666 804829159 663746790 857847369 965517940 966452142 813309825 951456658 456054744 825995732 59192971 560006142 983781298 986817902 434339114 594764019 6509898 548822631 332581293 726208056 486173761 931398768 676727593 906122094 82472309 859345549 583775446 724500939 112619332 458353478 383427399 590396758 919615490 986290926 392565223 895827052 12063305 202253636 974807461 981697318 377672487 507202544 971487313 996729293 914780497 983383110 593103463 921222798 416415715 495465904 806955541 947450600 829170033 996736537 972880913 991302107 80777953 264918003 243999355 967567769 36874636 958516367 84916507 336047987 387493450 995831048 18395983 267446314 3552062 369743367 782727466 953220024 921682149 927952415 885436050 907444183 999325587 999343289 710170870 813971931 180758939 933988447 362885358 908264699 711054914 785319172 719589066 857551490 692566919 703734683 873776047 999128169 965107439 994349493 844476045 948204575 994993252 996517406 809826000 812670918 287786247 734504306 938957392 985420537 251466881 445406410 101489768 600233598 998821273 998988477 468932621 831055931 171889632 767726544 438615477 593658901 551821370 651610669 805868798 901236884 657020503 713336708 235924791 820024967 488949028 692566062 822947939 836134969 152917829 997523842 898484635 971935766 23529991 179936421 89365668 828029536 36497548 983570243 863225098 965294255 568072428 693587501 184246142 290696531 29224593 360898522 130393193 779780798 279881748 799564299 75686643 515951412 539777964 574024684 830202506 879033500 557138711 683973352 66882599 804847295 657680351 703911258 235196329 264068475 696662114 955410214 617825847 750911489 694384151 797833651 336886195 979486854 298479169 693823242 441279999 776046877 832910223 924877185 438594395 897020744 949885004 974222682 574328199 975401962 397700628 862018679 8116608 681172801 196373478 746393707 778919240 832946964 215766320 824761431 788887636 872549667 459051998 992815708 844757545 980838734 358452656 555550468 264165290 468225673 230166752 989458723 60069479 112999240 180035189 240479525 494172608 666905020 681397858 992302579 121086824 164207947 981135845 991723588 769832971 882859385 787118316 906158370 240368366 699792536 546042161 939510294 956765908 983673457 525045068 752240448 41369955 538041807 828740868 961149083 408321367 517057262 873862220 986056316 305553921 458827060 231060894 335124138 920746180 961792438 270720850 805913399 195079997 862312959 422502350 604930306 921953915 943314046 824317334 867890260 320763287 538710369 983029909 998432014 622663682 750493184 217387305 385230012 807977213 848086941 583638081 754293071 346734929 461510526 601191 745066750 640713180 689641446 448633144 627116259 639675365 640528890 569345429 993918700 430617047 516115234 338871515 956127672 797505342 872116864 316828305 453188667 210789304 645393301 210829567 587445122 182721299 381754033 480382191 875691628 8370286 337054849 228555630 587173725 322382069 960840215 957187933 970466290 407908206 577089929 202526428 939178692 797508367 798483120 796188838 804195871 467431563 866144036 180084281 566137757 226823350 906874626 987731436 991808863 900401423 911474748 994466492 995862680 630109113 639204847 552948445 788714966 282105367 624535109 51111547 468265558 118000525 400940631 839923862 876351853 958165892 969306749 558755363 996848428 817517125 884067299 816360056 875626934 219332607 455190722 697632524 828253681 462714211 506042768 691331923 991962207 778975589 919600016 346733873 644190459 290774085 376591727 547531517 597286889 116315217 608301396 403700032 757483583 990304267 992070127 315884334 430222784 525507943 761733167 200137255 732779116 674315144 948220566 565754588 606471109 252778301 805179608 216714419 973711318 789927408 854744026 647088353 936840062 251330407 825840437 518071151 809936953 246196634 865335941 58871620 138902394 268797695 703601976 410507220 908516252 470982485 471853222 226886335 341648183 444616356 978006806 816419205 820491969 764762532 904909164 47076145 355836662 134540039 734655124 603355377 959470536 336182418 867179194 632054169 930740902 782211787 856411674 334660876 957637615 529095457 970362789 277496920 833580590 168835105 183021560 135985123 915458884 972949776 998676674 30207488 71527650 180475114 922546373 608876162 725920755 658573414 833002491 728295017 998595620 289647446 708312364 353424814 759259990 239286919 903722999 731250929 755152366 603791728 945916278 202313386 549168051 701015876 971491436 531946769 846661881 450078691 746164063 884618299 894217768 434240172 514299766 778856246 974067463 746846681 976743580 381811216 658808043 800371011 870107566 509594396 540737726 7048236 701188667 382074149 862759915 490506546 861520896 705168638 923951571 687775946 761300589 573047674 804715058 221878759 587672794 805107506 973608630 354670109 458995473 271214571 778059231 465782654 634517451 142445609 351074089 685695761 729315774 904707313 936184924 980466824 991658955 780534514 862424617 860804063 962619921 427045944 872629071 866380555 962784455 447841652 448163113 72187429 488351450 505519211 661054163 756987977 969516449 689072124 757286045 157908957 220096113 595677395 997976272 576135409 771463764 367482307 554941823 886913914 941100898 519735783 859164001 322494749 960166639 640673209 661729436 553478925 618748799 965854993 979666424 794487677 930432198 277870035 760653456 859232020 946252731 59091951 792917011 787873031 996961841 15771646 131896817 63719727 977465278 344578609 521303302 454705313 720465946 916806034 997135173 532983879 993511599 967228416 993269215 446973026 969666379 330417736 741565360 519357240 846889948 738874270 855026572 808519414 827682948 543197377 680758378 902124767 959544663 373089421 712219123 256916610 458802871 379977132 405976488 853483630 942302697 145619298 326584743 802217501 906260733 456042814 722551555 511436694 790135065 196307327 915219390 324855948 902155441 632310063 852551378 674553722 824319624 358392477 776508896 916097737 939608196 707164154 995473752 522162813 996293198 749909223 860696302 306799583 906613225 952324026 956673858 833563513 884244412 843795140 930682632 92825965 725117836 24066708 329837983 183044313 565896076 519752715 999216504 225019880 369842780 258464041 929336878 565817843 831002442 510770223 640195410 476534003 874880623 50011641 612152017 778233991 834636584 780434106 832962405 143558043 689615945 479026508 968996111 658061837 989900393 154388132 954147869 117040365 580526262 252855948 292219090 725416432 939931853 488389218 959809537 374513156 964374955 795536574 938657695 436979202 819500262 604397497 628272532 102748495 281494390 419660425 808529727 855944512 932848882 365843133 779473229 571232673 603556022 77639984 237421458 638040745 748106077 243563772 277698236 594475508 781235688 946874122 984268528 422506907 447015600 655738593 890902731 994004010 995791800 912862499 918836371 807623655 907528338 469399123 685817644 180141411 211720299 169231379 689043855 707980796 915472881 703093044 730939948 523019650 720514152 492944672 607668122 230496225 823804878 14945366 350619114 713281985 978410445 920528460 970366684 829717218 929943275 638891401 755328295 856953404 870787778 292454049 586377422 922986307 979619250 934612166 993461454 672844911 873476895 249691956 636199794 400532212 599103746 850050711 878459370 751951147 880045441 564009571 706753813 29606927 170179636 742845215 952034189 690705635 858015542 140455650 976057800 206903117 752253476 655472281 950151365 756523348 973112831 115978159 364619966 361489974 532601941 302864410 723249110 703817371 845646324 289371697 555790721 613171084 748797320 731471500 902893764 711778553 841807716 581741398 726927448 745695408 999079005 841249733 959812259 586487570 738736068 363760525 451234536 919590121 994409385 477786245 829271462 588270003 689578523 514079548 952628320 828407377 837732230 108552387 709650394 624071814 724937213 930125645 944101207 679463070 744308783 161654616 543578651 258451665 448376311 972125727 997035623 746789028 854024209 788998564 792934159 93431126 211148422 766091018 883577873 281432222 480249547 265371903 996745908 695639107 850885454 842553215 970089726 612400075 971943094 155752216 731859544 846115687 874672999 132996828 677750911 730998240 979238113 195793591 586301407 619798724 666077428 571173367 617572330 912203479 997508529 277867142 905621307 438807327 591396160 109346339 911542542 404142261 552784702 803318116 885448851 304708393 946337546 891693656 940339619 449632440 758113549 894585685 900365333 995361785 998512252 375641685 559507504 403497491 580709875 803278687 916348520 3760549 832743851 554940792 936534399 736864752 768803434 427629812 696602372 261043357 670478403 141417655 848921706 195187298 229425581 301205365 312580679 373060328 711851896 283398001 969861468 240449921 301942880 287487569 844298783 738424505 754024021 321262062 322952700 888052503 961417616 493239897 531998224 26768626 351157139 352830445 471172467 206085914 897945327 524610642 653993302 232104685 283448328 237496246 717786407 650203814 702383086 932150547 970576370 773420893 878767579 577514842 735053775 213935020 815555537 757590523 901199266 459984319 499871424 844156600 993824769 506245098 582743263 804361046 976607947 15116430 950010417 850940771 934442133 298268610 793496340 683175718 964275391 469297267 610478445 26809607 881014067 232070886 842701612 453063346 676022275 556494698 826917376 226544431 884143832 884713999 886594547 401517357 615653705 747919009 835777150 925278928 982350987 576759650 732195656 547580291 984779319 857653232 881229090 234266971 756044368 161435602 796074569 155951857 425768720 184972812 353191388 606309830 634694309 698583319 940098833 152657524 998641363 428727101 658905175 636554550 639256526 978538566 982416135 309973806 573171654 601252700 835936957 510038544 728344019 112605767 869611709 437314350 870970411 768958702 917196024 753128097 968282677 282359199 451483494 312291506 574278688 782007906 923676332 329658508 523172149 355887773 834827555 582658935 601041096 384160712 546896632 136062111 255479382 283679136 649681426 383871713 685282630 237147100 996062539 863690838 904121105 584556360 812959859 710644936 916653126 544454844 932865868 381178827 970740682 695489206 833664285 961738795 969746058 219756846 951164195 598029411 707637089 533275814 645707202 335171984 690517037 693730917 915463420 961762564 997992195 147717361 497146897 54246648 979402595 887211056 908797960 373807583 478533617 905141939 938240108 368769634 796385845 781028427 991098004 577225385 959306229 181852197 296414476 923070073 936462663 96617798 306408225 993650835 997580899 354888081 917316250 176918232 236195726 507545386 808877922 376828889 421927996 763527024 842525352 889316349 947242366 639085578 821402874 425053495 829381619 881859351 904737239 312517641 930817652 373013864 672228975 773720947 977925363 155476134 751693020 356424272 914686727 118821312 690410822 977417459 982650331 93073817 314367062 721742580 962309911 80325183 978981706 553798686 563097489 261468998 609680618 148722867 754973726 888133078 908752430 13905743 469730731 659846029 665045832 324509945 588360704 832399046 963975377 368487445 837262898 233369928 261951094 232219016 599310409 94579280 922665258 971560546 989392028 93074787 871583343 801668262 825779208 222112633 594388200 568266431 599882717 262657951 626565975 571023323 649193457 52838617 203133734 839628376 999110027 396589012 812103266 589851663 725924814 692449050 976619563 789843848 858879267 755641680 858235407 681750840 884707547 394980745 921089128 831930976 949417052 629369491 947358294 696510 727810507 639708537 994585453 33115887 905913081 132444082 690772716 147135408 155849832 888334862 892882300 418934060 667381797 217152488 825635664 301168283 539685534 674958399 890844674 708258793 815469716 867872650 929738573 352978807 398469219 587568488 898596367 459614237 465810352 19485133 304194090 587646019 969330695 348556750 732162023 113653458 847709134 470436183 966237824 828253434 950102239 380819660 771835411 983274601 984636002 709929245 963779499 618150567 784585903 796540435 891929623 493851943 545123573 331116458 479664232 201731262 306376618 386548728 977430669 578449686 612732848 136925762 711714742 590308975 623159252 681254270 706371162 633816661 992701590 424359161 727754098 13736428 93099251 610744445 680281394 681285357 712869013 410722838 494203804 342325349 662811555 280141442 348540724 668106250 875565293 304462490 708990853 877258082 920337555 348330267 676900729 643726109 966276361 307708417 402286179 363435023 875161262 827208043 849163130 786195959 818442780 381103239 818039852 738389440 874830753 204830411 347224796 794115984 895535815 274241852 896307923 837359057 948039217 167042668 719661242 998549971 999150638 466335708 637376458 715500566 811691568 932651532 987742115 66354906 698699015 199356625 397199623 278267270 545268655 499299885 649388835 224559218 721746525 218724506 889265581 438260482 594574696 189961633 895447273 645247434 951544930 255079915 474715738 443155213 956348386 187130492 596577258 799446714 870266819 292673564 316615353 112164345 891807881 19125668 302130207 152756371 974210178 605082938 929137999 803889052 904143133 231618600 480871994 739228709 953558036 624106721 903837109 650364674 774673089 311935452 658854078 88869854 294630288 575489025 779535149 635692404 793962877 133782766 223559356 888672682 919829558 890156227 916047804 498385499 749677126 468855382 555824149 183038425 821598810 806820513 834933297 902732879 971596630 502818095 961631664 988121169 992884190 175952844 646230005 380370800 887211705 892836791 895842276 382734983 673326228 468492590 476571437 409323849 872966559 422092213 859088927 607460392 961489814 322345592 941063153 891868802 995244319 820341713 911640735 252820519 353805816 70958757 785712589 712817594 832203386 750789643 965624397 297087102 544777261 129476741 726074239 676405779 695224288 683843306 817681124 166418705 824637183 945394251 952100644 424627775 656751968 963334699 981042513 571874566 711288034 932868661 992861854 743016332 988204770 527810350 580684612 515207862 721975196 136435320 248541732 737703953 817800625 493202138 883492187 746680687 810644601 263196661 793559345 190419963 507435040 707399813 779022656 269131504 998063922 435192493 797706309 900752311 996695504 375042601 559367595 53024138 108352677 521742023 963621274 676879795 833229657 482137644 554397039 433179971 587713899 764634149 764846593 391727315 436823991 571625475 742395133 978559098 980889207 703452398 750904718 32609713 604758132 629347532 792174936 32957562 977514240 534568273 767993190 834874245 894778115 130007188 452550782 25619629 227446332 635476498 823160629 315168371 575715205 316908979 842673168 932942780 998295002 326034359 799581701 411280603 933120894 484553764 769743439 579171781 694939230 749340676 983895650 745397961 861275669 56179189 296688531 211769395 489130782 883783041 927866303 662182383 752622159 374591843 640626079 896199627 906722536 707776217 954155157 637458553 956260926 550123498 845098655 838154450 878936927 309427293 431094714 53320196 774445747 113250632 651232235 243944332 513145426 723982767 907237277 300405345 887935993 6904863 986541617 883254226 992750064 379543448 869829291 568513788 678715892 66974477 627022715 34416626 593613080 529734097 990149238 544729357 928534322 277815799 585961496 82668006 588670002 823371633 872556469 762078722 954283928 646199862 847467856 485482682 796279233 486332709 558047068 864077493 912656461 478285462 622301799 795350431 997509699 757058774 853318689 358322422 663133106 796670808 984519606 896206509 929859311 15774845 241461539 587463206 613227443 32725320 471647594 499836719 832393260 432820268 433089926 855882778 896416262 801079461 837150400 627132531 963878610 417880277 533911430 771594346 839774626 20682335 788815063 871812717 944670350 993835904 994280551 673539573 830656220 818174295 919528973 378976153 508552838 330972105 525044313 225357960 977709375 241541420 298271784 261104075 771114756 365870203 648979666 606262052 825433447 206189363 566741288 14883840 574950618 876833914 949012635 912050188 972403376 786703287 862858451 168665897 282857539 138346167 669127582 905671530 957825367 155022837 417916515 177144024 992398770 722215541 826259969 190893802 871507984 582003997 946577670 10804493 734718463 609056366 902077390 48623869 967808071 168454021 612402523 179035269 393436681 814128616 987683826 964537328 979530108 741353027 903530560 464335841 615764257 831249476 894944814 702915498 828081738 866532748 945216873 602909707 690556090 492602975 501605213 100312617 942216235 904642911 912288940 217189053 951743752 322178155 591198847 304213411 308813973 569409005 597836281 225031764 634654108 267851318 884251167 500399672 745765855 289672130 432932915 953699008 985817746 589439887 800633569 99754890 801446058 359602 773060649 460008920 704539786 441706160 919314431 785201796 822864679 467881549 916798970 212180447 556952128 72353715 776906851 742958201 981364479 334936028 918489148 332903172 927021075 73990137 297444258 279973292 640725914 30401683 781473146 204003102 400959033 618957857 919352258 88935832 475178430 616925817 795129056 146853036 386778353 420686842 582269341 86406580 724522846 70985943 332430899 473239310 703253564 911627123 964470442 959466830 967815142 367198401 735869650 34857793 727864177 215143509 380800981 361267076 778666945 840449299 843943567 456547609 631304726 404190999 907642462 975448994 977938329 966185766 986335925 74723715 667785362 577979133 876902837 405336614 571215895 107054765 909187474 442584221 608865562 77263463 433097934 240336556 911233524 498888132 597293296 395481723 637471323 344394067 962482589 977386500 986850096 90430360 976048820 852850627 930145638 579484021 822155005 68636267 711907456 799594947 909891938 406423203 771060870 430135070 689969734 119702917 223961274 336085792 521358919 608810594 691773814 384649197 760377229 188231742 309793015 890827922 911300826 616068468 635857015 203714585 526463573 167860298 818396369 392896528 880991232 313215661 323143057 560629246 599978371 915488472 938943549 664152779 998649336 76467872 246635474 906425420 961971681 942302121 952441817 199403479 517770401 185132898 671745614 790441196 923194689 526771712 762613260 276194106 513302980 239172535 521949218 398635751 997532612 274444159 588664280 414367754 682356869 807004586 836840641 564944488 732752948 559767167 816602524 715503260 820616167 220906008 759119516 406158802 997524708 539103205 745602494 697782116 892763049 250200377 567286395 972544529 998230102 115500491 913428370 37799160 499443985 858908372 936621448 422501873 598793623 185178095 303696643 223144976 866370338 388104702 535573565 830766969 969273933 390026117 777864225 599677304 898830788 209134718 641595359 800684266 873426951 748154431 868355450 586654878 947756737 223152244 670492327 28358979 208063693 571818587 957380377 979728117 989386022 121313118 349551203 539731960 779656162 909514919 992354031 711720059 902580885 469479558 918700577 590573668 633912511 481234880 716867239 600538875 704268080 761446858 788024484 194238657 926651693 384120290 816980816 198802235 898586317 497974793 575703987 978820215 989968062 689824431 781031419 607149931 740185558 328136376 962786688 935016186 938325030 735955121 964973546 687764859 960846797 18941616 582697051 183990635 868189455 277033211 525441269 420898177 733505854 401893839 609133739 108760553 462388216 245966047 485607623 925125594 967028180 644712633 722049982 681740933 718730521 798562140 861628666 766491039 825021581 819047841 933036373 856304112 928740754 465054307 895420339 892799167 907748060 612162619 949807885 296578802 768949330 865193562 960386762 129806137 776688267 462605966 847625452 518211929 789096198 253695368 616833911 227953138 994404241 927536456 946747735 334832353 554570635 571526502 911880686 995351375 996454040 915788130 917015024 570275251 736438468 966463212 978626337 53603750 937689332 10398741 511237343 699105493 996996184 334386457 712705682 857654040 968598793 678001108 919520153 902753883 963706742 934362585 971261502 362098264 665461331 399106952 811970169 217787327 342283786 986828289 988162655 812582013 940077528 508128681 524231599 292143211 920090874 824227802 969732470 780592795 863821584 631085153 947895847 253602563 826984986 391937242 393906366 190607859 657187978 351896380 986372655 748223619 931452635 38644992 321305788 957201640 967073794 122352017 553482415 603589061 620039530 850572569 886224758 874486033 916798095 609255457 640040497 313518459 431461078 389220271 933636669 890597172 982327841 795824942 987446531 182862334 521794356 355846458 688788695 435063962 869518931 728340638 781948445 673116063 798358503 863991998 984730557 593437242 762528541 234897931 862579511 282441091 629834411 396143254 608564073 798416125 899687068 978761307 981225950 757816136 864547521 123851431 884041194 25134338 447439144 418324717 678791372 130678664 685973728 830317209 846571166 573774647 896358542 608073180 771079892 619336909 807947468 771532406 900591764 306176638 340271327 201232445 538609603 293212878 895579129 609223721 652430024 253852495 650013569 662367130 790831886 460007222 744175423 398427299 527631913 196912139 473517108 929538866 982866099 563955994 819059127 329049895 558964337 731466532 907367459 356162158 863261953 930766731 999182955 766633727 792048386 981775741 984413727 801921430 870306438 848428587 970381222 229494840 695759912 32751883 276261117 732124534 936250429 933000009 968870715 180108521 349602245 382720680 767506781 186935286 410630384 856522760 864185669 281395908 822978726 543478624 548713948 533487511 590257451 820085022 959097513 550344262 770399977 268686397 792892996 947388679 955822413 50279677 129478851 611854728 619306548 264792137 913652988 758467045 967754422 781335738 862983006 844986258 919848327 417671240 933609910 596409819 916561915 32758861 847902846 290760400 562622713 86402587 995126788 982417870 988838259 603773272 656901737 683967853 827478625 569496291 770532722 756760763 932126707 88430671 329721094 584217713 861744315 911330641 949995696 750992904 894456939 827180988 985025760 141777519 566858511 565290762 893862477 642897284 985967853 356954521 870142071 791972159 960941823 552331167 661011644 641179018 747855665 445400538 833490310 996299181 997884979 644709463 989744366 480684986 844140136 921356152 943525832 154739887 182218110 73002774 960732532 879368538 888818448 507067732 832996185 708657611 942043789 301269988 459644881 996298168 998623147 590867884 920917492 561643463 930770456 624662638 995654077 5212753 617720353 264204473 678977575 41476184 763324491 558370232 795791706 261513495 541335237 176434261 730483686 99849225 378963880 360113381 622070669 361333884 956233502 234020030 994162746 638413292 654502885 523877019 791794093 857795724 891432897 924103050 970507212 495837219 595090557 358021083 774315224 175554137 660137395 653989744 678770602 766277936 850342391 478382633 707884373 682215621 988103984 608658435 822387221 728784006 951377577 994807538 997774892 511569534 593980614 957225365 995433962 206162116 920593889 202703618 960784946 640558369 872276368 917592727 917946623 349420733 577322095 921298939 953731390 650319277 949113407 675321856 833702799 602610117 999209383 793893461 825500922 709111838 908900757 34895384 342094737 717549359 772019872 624192973 693598818 488372653 988076680 548761703 899773597 305053013 449038749 778537340 822931249 844513130 897928856 960489631 961857418 395862860 517035370 957704673 974900317 516064579 997600913 280605413 395769196 446146194 546348393 945964199 993198477 147417833 390711800 846945968 978504323 982037700 987642434 260498603 711824034 875997289 985291509 622253781 821872897 708377005 761202716 196761420 960040515 297117114 349262783 850669397 979089033 39610254 489247388 557287380 909910696 648513507 681601649 363307810 859754033 135002525 282939268 869273511 960476286 827994263 858706556 846686401 953209926 178719741 554784523 633596778 813423403 308186338 359904944 232224981 636181676 33030429 180537936 369053675 822787246 202800250 995977225 663528548 945566726 413293722 466480300 378246754 584257651 899444493 902613643 875989108 914662672 792945365 890226917 445170259 667056441 672150833 876797876 470083377 801534778 645984529 978597420 29490681 575979788 882754311 930601916 271430046 986557447 277540561 883916417 950419260 958275880 313521621 837825336 543710082 776257353 986164326 989659165 488587655 742409392 195675009 935465404 715166938 964366568 289911918 410410699 789146782 794731315 414709083 700355356 435260981 803284913 533853781 861522569 626303840 714621680 383391275 870759723 19500514 820149679 945279177 964547967 480808058 752716716 512231054 859186589 340656287 902017721 477440584 779495949 450740465 621784847 48539115 257573142 381085120 795002220 794632750 952443111 975872536 987450449 426202264 571318253 532523487 866809197 137989782 691146612 821933552 859160389 348920478 586352326 327453704 931864372 236880673 951311088 114068663 206972870 27904396 406409158 763568482 986367482 297726216 879531040 448944185 798201829 208717782 633856492 962998653 978164093 348000593 711027052 555128435 825939734 13231358 654582051 273933716 594578289 984576990 996551817 560171979 933575242 238720110 674643696 764772783 975197771 243791735 962378770 887936851 946190194 590917615 846982916 254037750 943275572 106151110 410729924 903073221 978591922 314548834 440481832 529836416 822261182 518624769 943523910 556709088 885019311 7251768 994108800 205560614 373224393 121793694 674218228 962137844 979994664 805038087 977919180 829179124 981861229 395348538 457097827 806771978 903304065 529889087 673355054 620923529 770548904 557547511 662730670 838632383 912902600 621491405 939484027 14992621 823976527 336699835 478047421 808791803 818707051 259952492 860121109 528962152 874288722 452095408 718728534 935284649 992893706 671637681 984159981 231771594 834568203 634447189 664374389 590185877 600129826 904634010 971612298 241825066 565160967 924385076 928836643 89724766 440637516 662857359 945787218 952903684 987062062 622007241 888939732 916012693 985944067 525922123 831241622 645404849 915550873 291081624 594290971 216406493 737274748 20134725 126097601 96718790 564461738 586572409 918736022 506338024 715079041 891092544 973643087 391127397 818421761 416368385 537822588 208734761 558711027 401807461 544246149 930823306 954580785 536779070 701548588 678798869 995721957 695530991 803277116 525954346 929190076 215004523 576423050 598233560 953932518 685051312 769907728 180204623 683823642 943069841 963211586 479317974 734709853 934060377 998262632 177997251 297613501 230857340 741794755 869444987 935680798 53193581 389663673 523463214 610020246 446888456 602194620 398752035 781295194 362643565 399159202 44905680 869866026 429328138 738292509 942943359 974111764 517926278 758800276 508068509 634782286 318387648 615887827 451129924 849495387 518797175 663811692 665979062 953074200 798254092 937333867 643278556 846201468 584698637 917380446 859198821 976973007 292700520 459231629 600703577 841793314 413106705 519072898 826561924 900853247 925509147 971248340 7617463 30732989 582430491 672132940 81785559 988504116 704762869 882015170 610903752 757155922 777738380 820734248 138516664 276841160 741357824 853184391 345601781 737937670 899254212 982804767 170642619 283685853 935712485 951453368 408324698 468355693 478662521 556766043 837414687 907873161 436364894 542503157 357575800 736898156 64578478 547084580 741286987 963376512 367274338 864345063 974690076 999227550 26000445 706458225 345973264 586563281 474245957 894836953 199520452 656084867 54820837 464274620 227576416 500161778 845577302 847878836 331323155 613603308 413809564 929461332 237608981 748059127 65322976 288889941 916015037 995275177 443863584 507143450 80051093 357689663 890634929 995468960 54548103 288048581 384574512 990827380 935518784 990644551 902355409 988455522 449245170 665917828 316311235 644368472 422047190 617769744 852226223 943283319 447282882 517127097 909660197 965051585 64428341 522636343 908169661 967604803 918624184 986980629 395595379 475220313 990145232 991787386 199477370 875833946 405121353 630277269 773050322 953593257 570111525 923920894 690196920 831026163 440989752 654198962 99259524 611546927 995939107 996611947 747517455 822958250 912090237 955483114 703392159 771630942 868747027 924628459 502801450 814297775 301598883 728382833 111661125 890411501 880477179 908647323 93432103 667312038 412347974 824705317 786790339 948868937 87122799 296955069 906559442 996642555 261111289 980156984 110992392 412550678 668659954 961206138 86968080 976203223 34927101 879624528 60000240 967558293 333359908 559146309 946171819 953809818 253971305 878496202 482816094 921715958 316431864 612681601 579005037 664020257 789494488 809832084 478135411 807412176 305351888 895407137 970195755 983965515 380188094 650036622 581419166 777653131 649039514 878417539 462303173 953738006 804480687 962706817 793470056 985114479 820574475 894435833 772754213 797858012 301240689 555071775 710559239 814873703 882339676 980161101 76146377 986442233 763302604 886075315 479426826 865030704 188522123 294979359 755879276 953074532 738308367 903173909 616431334 650212688 986243020 997117564 128375474 534807901 8315275 578381859 78375825 831529473 358086916 989472651 29968948 756550283 978636491 996127515 469197262 756113676 583887508 739976694 981791696 990507228 247743751 661071751 462361001 997516037 510235572 692316515 72838187 145478162 336707094 736790923 694612020 918298920 849616406 890561665 568958823 818907364 500411501 846176769 901090795 903919435 360019291 582464464 158387459 527861972 548847749 935348179 470931426 483788823 473684666 726747076 156949789 640979551 291194988 670210717 336567191 686332000 976206830 997068922 333935185 719638605 610559903 817441832 978905569 988125168 618788136 707978941 870645891 975421853 637975238 657709666 16578446 109161450 620205518 872229252 54829665 156775715 880041688 933317044 363017970 726653614 846347265 990919956 797560985 981262396 980747421 989498330 110757205 673682269 715886582 792754151 385014182 670995468 625730449 817943267 859811440 888993701 318401100 803320504 133588901 504737808 945829580 987668880 54601058 530725686 22516828 210492936 139798274 238528971 745837917 950283120 703202353 806264147 975654313 995476334 620422347 637611786 252053353 506748777 380241341 650608813 481307863 858494703 327400831 700360311 270758317 280755594 176341716 412747310 819948886 966845305 208400713 287310870 714413074 805268007 142758171 403827468 583190835 949415662 881660899 933912568 137163450 295142042 288173197 816363566 574672616 727177264 695200472 722581036 565739115 708203521 817754866 940692838 763886557 824878747 99915531 120832578 479868971 818675372 428733090 847733719 422619955 484217900 759997204 937058294 364461007 871248523 376772028 387345709 965842806 978675520 83393786 859550190 849057991 871444420 827241445 948174154 749707159 893109829 509266693 942607271 11622687 380434378 369466258 879489364 313997878 423955373 493587884 661986806 921647743 925810058 17608403 492469905 408854950 730758895 99484036 100288193 490721860 852989202 891398681 897143784 924828524 952668308 468510937 801747841 41008403 834576194 468418583 663401200 507426641 673387182 460943892 708514922 848198414 984316791 374957828 564218570 198438454 914069295 419591886 534521301 610945352 788324374 148207738 580097213 242270943 953169368 353907812 911621721 645466714 806790517 11036598 854944492 356926046 465085866 623922651 734369800 274453270 885111433 834041297 943953010 218659258 281257804 288653120 873907426 72114674 600866419 26007533 499188634 321333907 437289947 412961959 838264973 259133175 354622603 552958860 956049665 640417757 695538923 494662101 781626207 932975344 951540726 201902846 868682785 679607924 893995785 264501893 857315346 671264735 928149936 598632328 751662396 88426818 177257697 158810085 209082363 737800494 787492220 218781033 600154792 393986142 795352850 805519049 809142034 79967592 860972771 281459210 510907559 451965600 904341845 76296945 876665910 479502577 860196365 960652036 978967624 110164009 255282648 292244360 319264463 769063644 870181451 361462014 570255038 24024506 922426359 555420766 918834599 742783506 929876207 723815143 880200218 210844892 348629525 578325661 626044505 861341859 946356197 305409145 923338838 676928107 724822259 138552871 369860534 523851869 643147470 854057732 988849473 698797256 986159527 674469782 766205465 121145299 354271871 357182583 574454263 29549919 80961124 351016600 660900868 790481057 831820693 242065933 508144668 504259692 659992296 149582540 713117342 387645435 880827988 949913125 974603365 996767888 999283463 959994927 974095409 308010483 998708464 311296915 826173682 68429602 479413794 96905511 807993680 222958342 540294497 446859947 935050828 688863167 846579550 280613319 992682233 124766235 380119426 650400956 821756957 316836237 724968149 281367692 704420437 939112384 969750688 504202601 627911834 405526713 704515506 908507733 972796034 424033202 528436252 857410562 869822290 31463577 991342499 660020087 716770836 682216948 888122335 392062237 496205281 219770913 829641367 802654875 931935450 304340735 310181684 218572019 421101743 836734339 975135853 247893141 978961360 762888763 816887808 630548297 669960236 268856086 383195357 117108941 711548255 592245280 747832252 996425605 996531366 817897162 968217246 809435102 830737211 396371095 672118224 872429345 873932103 656605306 846156145 365877648 958743584 138875588 160391773 574108148 608359278 160984312 345335027 453614419 952536270 355750903 425757441 536785189 595823147 126219692 328392924 751379081 851953908 809201553 917013487 850079629 966329880 125676085 878249767 467599575 692648034 314471047 447561913 811693894 901170944 136503425 508144751 500312496 850396343 941425960 946401337 250589387 313206335 327675206 997833775 724423281 798766719 812162176 879256825 217981992 897147824 439719700 473869573 651778053 756963276 311411836 675239177 568393463 573592265 200419128 537394129 212451612 523949781 288539285 765122364 726987968 915352710 237084390 509765854 699616312 747052264 671010779 877174024 965465125 997805543 911473352 984901141 251860053 370764426 967237967 988492418 664198782 888896810 950526907 963697499 125347967 531501138 795110577 975102816 109905097 333685886 280566271 702158723 92532868 603028930 96809450 692508221 565622063 733655113 765678128 765846071 774060087 873136453 183021656 526295211 131107498 599644309 38654283 808082883 159338812 919021498 694848253 865801561 283549672 744190929 228343276 677118395 40074456 231609703 149795343 173373218 845749870 894893548 263210431 428819219 56002993 298434506 325803831 378558224 943316095 948960316 327816836 613192227 465531181 892690364 848149594 939858210 981397155 982467663 236692900 831457781 809022242 927910554 326561071 803542038 12678581 589830856 218719429 412186275 613635473 702904521 91183971 328030713 395081121 772463199 690217845 852945422 841023715 847588298 773386391 831245271 336690757 965992679 812031770 881228575 19053337 711623341 907417439 928392411 635951746 859742133 708719986 857426621 508536992 723577563 247656237 746275532 248909461 285898801 12809908 422820068 617097413 981732171 591328799 620948431 453161716 749694796 551118997 946271961 670706642 909581391 650623831 992387176 181056200 725705636 558664793 762063466 447864584 862103180 852185704 855737182 475376962 813461841 797403242 925275645 120530215 376314749 90934213 951767883 150739215 365212413 412905421 805999292 499153411 904208521 623742301 732707288 256193531 829132672 22410231 831123978 182797907 539522628 852836196 874992742 900154080 934361199 714708222 779175581 333776796 856372656 292463376 546868879 453508993 629566166 891569619 912847537 731318604 844500683 35466234 824589449 716828365 798894531 687924243 704587037 897872355 974159633 15196587 932416639 796497031 954875027 891587166 994256525 270796262 612171060 374085019 966384414 101059148 985167102 913170994 928903814 662381713 728146315 809895581 944769432 244526102 562971676 873977355 901283857 852683830 903344275 841768860 947898318 439280300 831395548 848088000 902520252 102259925 277023747 542740888 817478699 398818565 900263698 444398988 525845785 669038973 799791962 519138725 688155739 635761111 655837798 430823378 887126159 114145613 513572672 28219338 516529109 555460430 895140768 84521736 381418029 933264100 959560618 965870083 968034947 668591085 979258734 812148932 879301971 266077045 976584677 988312878 990580336 676101515 705265452 408516395 828176512 30334709 233368902 901362977 938862272 443815024 785873842 923665586 998656996 779320565 857785866 229154542 752937350 841515413 971398078 277266090 851493936 509976067 563962868 741514384 768487457 119258367 811740833 43786770 871792215 859380036 912006811 196502754 424899197 749612984 998232396 694790690 847915082 276864995 544921067 353681002 879487991 24603473 756148593 109660198 203969122 750673091 862731427 792903917 811257628 134499068 189076810 529657417 739829298 347936503 656148069 954783756 996153235 572673005 577010164 319107717 408334709 651255996 795032777 727847473 800960189 661018648 813397516 120709823 315604807 284723150 597714153 848073259 914410452 911378769 950858457 700252936 884456327 943294293 980856235 50972484 551189883 691355168 947027860 616799947 637705043 821663126 944246115 959541283 973898857 748811892 817675834 935329862 970339465 223488140 530672278 819370631 913823352 301511986 376854770 835855820 913268948 601186230 873353646 87918401 687336077 336651422 868983314 518230359 628803596 626105852 980416966 291264849 450840758 746353173 809316416 835027782 938402084 155104458 938209146 949420113 997046515 395186823 700953348 769192500 944679569 103856994 701334350 957917963 976220652 791963532 960225184 525788653 652694375 189957603 744423555 988995802 992025511 913870412 934757673 562471580 976837321 861182724 902081625 600151126 882310113 959478531 969164500 345342336 365434844 883691247 981881640 722131641 772830441 64657742 367057113 301806390 740656674 222706536 597981287 260914680 577840649 155444931 525128658 124970525 934355111 280619922 894444629 767691067 984630047 212517219 924407618 502879899 993812273 584123962 958389190 911867827 979828952 494666162 903986568 947456343 969393132 65085774 917092768 975442503 976770220 371910425 424361151 197739132 372863703 944089738 950530739 267220978 490166729 127265749 533672534 705581666 961812704 606517389 892970108 889102183 914044485 215489571 358077594 51201957 470554424 635297079 635385203 200041815 430604969 347535389 904270016 203622809 560821384 835669554 970232755 207812594 675008654 458202584 757469736 933403072 971433377 860356998 993525323 986105592 990615310 194055184 936657225 241419245 577179303 656856261 816373396 816532624 940730335 976232062 980557720 723123506 838238178 623470262 897240907 532396360 672658080 490966012 958297405 390860115 960604695 384329166 867627331 318118649 496742452 969718243 978988076 586983797 869010102 206434631 722528291 458132788 868788264 80710969 90348776 797293657 921775324 77214476 810476421 468382718 629311447 345785156 824079713 607986069 967950573 316447002 371073224 364004298 949801730 94022480 181619085 885652992 919545525 165287215 730837872 410537158 591329789 459576785 797812884 911327752 969655141 236580051 280678385 174166665 264695028 852124660 863263365 280732771 796257515 617447659 971387297 840689728 979485089 344435645 746677300 868612838 980805095 914674654 939577386 792152538 964988694 503888639 523719939 66619584 903383699 141254022 773291673 549975702 571270520 649876370 679605615 661416844 782294623 368097813 645521002 390129293 808450235 298910050 642148847 721265808 901452199 759198934 939782129 996513622 998299769 294732572 686196942 907314697 995420163 773931717 805184023 525038691 567440008 233520288 955390812 132252895 495397690 192453790 867553572 688835773 735234337 752621922 837418315 736348775 740827313 637336300 640942619 738623462 767895675 442201965 505896159 981809399 989513531 201217850 520436044 624946153 904155573 408485656 737282173 194957871 951326349 139743520 520637343 74849621 196079640 375823380 396785624 444207152 492674453 275759992 530062726 72773081 734895193 917459196 927373463 35599526 360860399 898862131 984744321 750560634 852984242 852163870 910938666 25896294 424057481 329652516 967480071 832038776 859404721 852619370 964456990 483353008 591147950 432479233 467792161 575298456 894471698 29220817 170500648 802195869 854871165 199947364 615344583 943654264 969304758 867387550 952101055 204996080 409315192 856343275 974520063 836880796 900075232 188457426 715710914 627606172 800105293 703083243 967657960 712487974 970170337 389999584 634677274 684218658 884627327 237074174 707968485 282701549 329566413 780367028 855895336 1934910 38172983 106523993 899652210 261399307 428526558 672675795 749364506 824139303 846602232 797739456 966792162 224608703 975015072 891594999 897078948 357347065 887242248 520534186 559589062 679708601 922742561 646937210 953596955 432607066 993903128 238019810 517859909 164501379 622072342 176061472 437605320 263911384 427239519 963236298 965482465 826855791 901660306 195188226 917221432 566412317 710755921 561573363 990641946 282119215 643938883 206492594 670646162 642964503 950493551 4309566 547297536 500958581 786350977 787559691 968103139 214785173 887291345 622051262 647428366 532626471 572789075 97239268 228180007 849394986 889287618 175742853 180130078 763637076 799370006 737029240 750223444 581788647 588304389 756672059 794334887 493044688 745798791 410581829 659465102 881665283 921775940 27205103 378339617 585934437 704642138 920369480 932104460 38859757 663621268 357806602 440054370 830375513 876940804 212198071 510315691 997350755 997830380 89701281 235389113 200723801 732510104 221790241 591934656 927220816 960556550 389014750 959217572 923034949 994908053 738258154 855012332 811596359 861024593 400754000 818103923 890011482 988901291 572564767 898565810 989314053 997403955 648065933 895120036 328674733 363416320 822347488 862545817 998880607 999096704 856667762 871076091 733819882 989733284 847429101 895866404 872565482 886496986 845588360 922912881 134488554 297937043 186388516 569183626 817039867 852888356 846712183 936357507 933933276 989300100 641785762 801246559 436022720 611830581 199476322 481209602 205476882 275383835 886235757 976903944 249055657 931116540 287440807 681164874 144581526 360240196 405134362 618325596 888705019 907556420 703515180 848771178 196307308 763198650 377955825 534394601 796308614 920152519 863102346 939914784 189954947 426131660 780553630 801693683 751176130 860522878 594202936 667781000 929365288 947396324 679145801 808444571 514885680 643092663 73869298 818400537 905480700 960805186 434468871 922181655 249063913 566529331 178794470 230632027 931824992 939996874 319860860 435762902 150473131 708444432 120856491 738000052 583064598 680890880 871664611 914759734 29764132 384886764 878786902 904273172 281266252 561686505 400323046 711547977 359253075 778518592 69497101 839544670 584754137 771698549 933543484 980431206 99889391 627351659 893323157 923538644 578787508 832123613 841687031 858555423 433045869 677861653 672893025 971519371 540288853 747058435 849017360 988951291 709851467 979986769 709770609 732577984 279216689 514947394 144183873 473325459 778664414 980538358 827205804 938234805 61489464 264836412 549749381 671578539 307431208 482381581 555179801 991536570 375940863 560097471 340302161 376337067 219172356 246166601 902138883 914559508 292493567 660853311 772629883 796598522 53694313 226310881 170037029 505149940 691951849 998578726 702179821 871875659 682277899 888250022 320776562 337126360 563900880 574257009 587586723 910618604 786506786 968199110 44701699 149795995 70042678 828447146 453978882 727615778 774555283 818314808 932003336 951247394 104014856 636441547 58268381 687693988 788588576 986248657 675405868 927878337 106220472 493495615 752828992 838087806 324131972 778372110 603712459 762681447 329305281 742660321 404071951 702192847 749999902 904104242 547932555 563215441 104706127 327924456 66891842 607523472 443882348 793232424 756327993 890612184 752194447 888862774 189304872 622502373 28375289 306694013 81138319 386332352 2846931 472544800 473291265 761726318 15503803 284937352 732571750 905638349 456954336 869936753 948980705 998471283 342318113 961686400 601540837 621548481 4751899 872139110 377719621 575081046 134858150 726971782 80583860 389925068 790496053 983202685 673859980 756806924 460803984 993574136 312379571 845089381 124770485 929143672 490212785 518705165 502253829 782008567 843667979 942180892 19663072 801922827 508376215 616222965 475439153 967458342 117466805 347861307 349934528 613392284 854180276 927707314 52587236 478090156 485324904 504794762 74540564 77940936 193483534 722016359 738854660 997872343 407793041 642515975 901862280 962398771 927143487 972579198 865071013 896883184 868600819 884928939 386617038 759558907 329728468 893617001 245883249 705779051 458562256 800449037 757750491 787269549 864205441 957967149 271520251 732082228 618166369 762590935 467830198 538787571 885099430 924920832 331332206 389780499 655539891 838484688 569455423 990882325 62766813 269003631 570039840 619544510 273975201 924170167 546998193 778777516 305959703 840120293 602966342 755220195 153874001 813124794 124125769 183561142 436928814 765726062 659022417 700821802 153308558 777027451 211604155 386521693 7532023 378422144 164644710 924952456 264011980 876190784 314343710 574936299 172539622 724119786 680361469 863681435 435413243 622221050 361776010 575967396 352540790 666516941 462984619 541320433 389420711 748778789 169128424 240321351 803436240 920665161 162256758 876775289 720059913 795483773 938966604 958319450 350167242 511870036 661307019 765525017 244751596 751482805 173031361 195524777 423252296 711418173 174906545 352473567 433534816 859400358 466857175 577837171 839678897 963540149 164134348 788359580 792719422 943985528 112939284 254850011 270624367 755318995 95414083 751688354 847850571 932204828 703926837 795432717 813491572 969924915 496012869 934749881 177489077 672248690 886001651 927572591 361077502 682376569 882973640 981899975 628342398 947381506 591154903 661954351 945115381 980875083 300884612 520669448 909501441 948377047 678649940 750025609 200246726 258429725 276947617 980569289 19738798 329358677 563607824 679667056 411187955 953104786 235283035 472558762 479557185 633792921 2903105 960795699 7420547 784165171 218368649 881951062 151330239 277233837 544214868 575878275 920373981 989731724 114351010 751802888 580271466 854363098 689694683 917320226 263786772 715943348 907558126 952730848 761055080 873608572 217859133 507850620 28422726 87229058 498259163 515261332 962786822 999189006 915005168 935184361 209565182 711149487 282816246 493793966 468268931 555108441 717068812 774367848 15130922 21445095 4191203 862466987 315529903 968590412 902498317 919576296 542499566 583893250 579634412 788794959 364874427 699760871 699485606 730158906 973945014 979662841 392807008 420040175 787413448 926334830 309830851 752003586 250206994 610741139 129329885 931753655 522876334 830124788 794333414 929741770 563914273 735749001 29517527 857332189 94391198 887280161 143499586 252088185 213885967 533371369 584461573 636110281 57983360 535584930 80198376 486055130 946369112 981354382 714515681 882707744 660167081 749782153 699292807 797693068 888255979 961170881 781493891 963140532 395273185 586771172 615491916 825880031 586519004 682098331 771225602 901268499 683434872 814231542 726414397 942962516 266047109 440424321 373632918 684926425 87602780 424340464 432709505 829517927 997659637 997813127 968306602 985445178 936035708 992063411 909642242 928877290 854630368 904902205 227695575 591955592 531901894 931608324 764534156 976269217 267500710 621287056 591894924 742340526 908651564 992823066 963785805 979057780 353028448 406983528 371935260 467749680 551199111 855060507 283740707 494637273 700294623 825334838 986898495 993014097 921029340 966073351 805388818 855479413 81234634 698582742 200262960 580166443 124051104 799846396 381735489 908884642 418013129 857571580 664337343 929024900 269646674 557369403 308352157 717795864 889107825 977058155 557183564 826354271 754768613 857978510 378855509 727132796 764950188 984621709 703005867 976417377 665641800 897340440 910413432 940417415 102103769 430869079 271790957 611041193 699284306 774265432 973853118 994916621 480073546 761709973 534550127 871097511 190291204 382708521 653409340 995914974 119952848 697757241 533085936 634704464 681629277 778857541 560209031 679494583 513053075 824131501 748645789 762723383 460826445 962920881 354790305 546506718 969899414 987673305 473388270 478317705 902416975 969891498 513764063 549782369 281626762 984718482 577642643 739636059 172773159 943835765 889120680 965477484 228383662 815994761 543081357 648727072 747944036 980390401 201521991 482745324 595868485 612236191 312504245 574425452 658460965 688479799 998245037 998759838 50695696 643835543 810838684 856380040 786246734 958158167 898397093 968790669 234049899 577870405 314429633 401086011 338494419 379225993 764655871 791183195 722566256 751458848 535124748 649063371 16470250 387910769 899276194 929654362 795191527 879912797 850354068 971043367 167923944 549132868 233946209 568839640 535851568 959705098 936944280 948395722 740446797 918332788 548957401 809131492 45846232 358921026 606222423 690639906 989775370 993374460 719620378 748664672 990371069 997881730 261513561 681752597 788331891 823039495 284652799 822985015 984454508 998068510 152509326 728111017 166490360 502160083 344346997 538358076 774218758 775649001 388648842 892816954 691968735 821531619 647303376 887292779 953519540 955071659 628323438 804351995 576954229 697192055 13192832 389192516 311258813 427687342 19682647 545372271 445441478 777999500 226118497 605167943 168962361 932681701 235232262 320824360 348580705 809884242 145359505 893318874 81891049 638160146 994237081 997675380 373335911 401506387 443396824 516360692 94706582 568626615 258555486 544655423 936387736 984876308 125188331 178179442 126289562 440015082 819589766 820914745 727772247 862181116 535293222 925362161 365820597 454677660 974374999 977877795 389162127 915873844 541415733 847017615 537272327 638292875 416977935 847651313 59284517 181958789 947152313 977686998 769967620 780509033 500769052 714544744 16099509 539356497 499744894 891582834 251329825 696622210 335672002 780253678 356350448 933425877 312867948 792564856 791965829 792730610 176180936 771657947 974483377 993818781 393094600 875292302 547474301 923083855 476587967 774694223 597560719 798270503 546517212 669398106 400078444 719323563 316270461 409745825 508678072 803906357 529148162 838408445 981447510 996484778 306722819 547273817 100152609 996954709 561293089 636262623 735092157 755306151 736593909 756622218 610304635 790222325 353553373 982881837 452530763 708299556 990983313 994132293 563285983 867304271 713199680 953749999 967650519 974419972 582859889 931163828 889313402 930987595 958525508 987909287 7875538 502928307 154551700 727129626 651966247 933657058 741205060 875566882 239619166 386193767 721800726 934751617 169327186 636086695 641670279 792203006 936957475 938584275 246251019 339166664 716827752 868438801 333738567 955284794 791010236 866430325 12333381 478569994 495807774 877097588 710515390 868878491 397064454 454139425 669184444 722943774 614013303 806492389 950598736 995501675 465368432 922638508 63974844 924943984 727832916 795858577 532682953 700928372 96504817 410222657 795135361 978001634 707926432 962750633 120804596 207179103 198105621 367444065 684545912 974505618 162028243 569307554 514676993 825941067 949809966 994142150 835427455 904384511 201631567 774128688 730976915 948511603 759724313 910128440 333159163 631623732 551669933 556277278 778577690 990865490 645645731 697222393 61536279 980617417 594723192 748838639 505378466 511128039 195251761 870229399 428298169 583488951 863591335 985362115 374445424 454776951 852572694 951444956 810528405 946351556 909270671 984787470 223741931 406862164 431957853 665105788 641679967 745181855 835567922 880803675 325674532 633203148 250866602 437196687 257662553 454816953 438402260 592143879 368597274 776010133 6639740 422836139 350432890 887444073 674379893 866890879 477896736 813086106 234034341 958750591 315379107 422731850 259023259 948619592 921756935 988517831 772071146 975674550 777239630 932262544 581939358 828273928 315984326 381157827 101399515 313665617 538260266 956532996 554389765 871452350 830873795 986160244 169634963 699719385 162795431 880386873 794241165 926264616 702376681 735938327 874784510 899828539 684850717 870953991 668843035 977516202 37294170 314638542 733648622 798953927 532167902 856349422 708580579 973978089 796550001 970382066 208848654 629304736 420418555 780428511 717316970 998278875 189204500 702349811 717069788 869166494 166369807 457591124 999186818 999370343 140877953 398740351 870910882 965581572 255228153 772387049 499537842 823181065 212112682 804868167 416227207 433291603 605687925 728316686 245613402 783800261 697432413 792052383 229427099 835433984 457883176 929039199 7119931 678560204 520191550 942651010 138411792 768718364 319790597 432673234 505197319 742077631 579421683 813682370 737880921 750446957 596345038 780077807 830329164 879853909 776605590 858417974 938263748 995139682 867241839 914950491 436051300 738565112 254924661 578609212 86603990 644089960 971460084 997454829 316330775 354554812 880639883 886975372 486901076 772330674 430518545 921109518 176133522 180154633 414526750 608444599 631833174 800567876 246602376 870350849 996572141 997552903 785061704 896674317 15523814 301718638 22896980 992465216 913549446 932594851 779412798 907852931 374859592 596978975 586773456 808685311 464998788 865636125 150436736 367850843 83134457 942149959 143739384 773495918 808166095 938102489 160771789 261635114 585177468 756773838 878768546 892319072 469701828 752376005 419818080 580588839 677831005 902631876 688436491 849784470 125799834 628285443 240573611 900815745 752686441 966387337 422181348 957414067 695661426 949994670 415048439 495378145 573841042 605473995 281100952 706351516 244060888 625993315 32150010 760534844 943202117 985620894 924784566 927377836 352845455 975107677 837059813 992685169 732679655 910274167 287723975 656197085 739434421 923494659 911581543 978683399 417112779 529723851 380595281 424906781 675128147 900460802 970194315 971744853 471584859 755250508 683314877 877648823 336394553 829650429 130938106 824202380 21447732 273223937 216869515 881239643 399379168 457501684 432635974 964733437 969124876 981450383 974863786 982174791 339061611 378990322 985327405 997115404 939651058 984905916 46177491 559857863 919810311 987997264 233648800 771661157 321231667 645006200 53473213 265179926 470404380 792502443 329932899 801157223 685435115 828448909 466452910 969472517 105905651 482925350 870435436 915709239 814845310 993078745 815670913 939991605 838724137 941451738 365688280 732485699 273136381 907612324 841488269 944388907 899032091 962367117 439491918 659368401 106400472 345522149 811182798 869125930 812911117 890616975 701157948 821093401 187807946 678183749 124307299 253381320 725559606 911957417 149725356 645099522 847619304 877620131 671755853 970689790 865206012 893208067 607928197 654005727 806727354 833993115 376309138 857983556 527604754 718308215 729708855 926679020 429205239 635175648 908241505 994583845 465469602 693775900 216514470 912572443 997548401 999192161 628028874 997467068 297575859 533983183 439208484 511409668 379878757 424797588 884167795 940691055 744494864 823793756 165222188 887432890 159230823 972639810 636028820 883791981 304540203 589667035 568694418 871338669 75704332 496552242 802262406 910952038 800567917 895936249 781572943 877471733 425764656 779850549 923752421 998971735 148902859 980948454 705953781 950522230 961265753 967519790 716520817 794215463 651865132 987777570 274386779 455697342 215167778 771646327 527597430 692435152 267167383 426852585 172218771 318774466 460633951 941439597 550637717 972715474 442805775 667814361 836574455 937718824 546843947 608716456 975891480 988073940 695262597 866279711 181970139 344629651 595369902 665353737 533045091 605219431 521262014 739271039 311501323 836975049 977434831 995994763 73857013 987337873 866611453 921928112 571213812 700245515 16483781 276519646 941412830 963794725 403855281 800378823 6851683 184696399 778732635 931970440 758565208 930368598 226489143 642696735 370226693 795863309 33915075 904778881 916447643 920933315 910958464 991147113 527208213 590114733 417248481 917399270 395173027 679878199 391781984 642559180 277446992 933524244 633518171 925990217 114975993 227883100 909245359 970520488 179497634 565231088 860615822 996726485 299061282 741565229 184598824 402895889 66264057 970685170 277000727 668384027 600864990 736564946 591662909 650069828 618854773 993387171 247438415 371393459 942660517 989760432 253652197 646806888 372226479 415520799 888338798 943652844 871620435 992424628 981362454 998286287 785005557 880716534 325165434 704733263 909670270 926884411 176556266 722717631 189047712 400835058 937464056 980524986 311422338 452605680 232704125 781857950 286400605 739021330 5605705 998699625 732332375 732669340 484872481 635416647 817626713 927252126 136584510 744746051 679618622 821344056 101649339 975099405 84062829 986383510 872996795 960133356 84561134 454611527 637339967 669908336 528288632 741746299 111124566 201208858 892013633 892761607 734485489 939254986 360933543 900501397 463541683 558695380 320447369 376793202 569547725 844402649 881298219 912854015 339359471 460687063 491844852 870503652 716247383 796125230 295711157 744354390 785767138 830988721 867354182 995274445 981848600 993393712 353852899 874618239 65032599 985957709 818185115 836032104 948345566 987957233 55010451 478599859 14854965 153714365 28201752 609416419 809363157 963056837 930453886 966298487 816771377 824004869 958774439 975664576 512964818 680279434 104712294 805826712 256693048 755872828 355771044 854265623 32490319 50450430 621347365 701634884 105322375 561438580 303516540 359602154 748574938 842807162 131781520 571233488 696483456 736726146 237014432 242422448 431879834 708855600 77780376 866755229 95386290 866514592 756136264 836962123 341628327 835117077 422077311 835022229 52800691 668970957 547176571 648243519 381707730 499499354 776104479 967597675 142157839 233466062 773315238 817598785 107709675 359743470 55196991 661248123 534154789 938112081 324162774 430807573 77290040 771401447 139884945 586171017 229918341 682169938 879074781 916175472 89616332 490369175 853748699 968008453 470538723 497509304 632333632 778326806 153234867 691659598 999174807 999279963 117848698 222632585 67387004 99198927 738597983 820344074 335070262 795380131 942294598 980622965 952302015 986569683 650470401 742044142 750858626 845462898 3227541 641973972 22571126 738086650 7040426 273373075 364670429 625873728 629166260 648812461 298597072 736836831 771883994 936603507 507361527 904726563 772925148 897412654 606248585 707626868 326346894 562939182 469472468 796552245 901911271 907312063 95446192 147625648 66076299 796231918 829013235 903291035 535157989 714536746 753663309 771763251 374351383 532265853 220368958 282176341 149015360 495302700 557094889 905691725 811536901 861431725 671217352 874827730 43742238 282616395 42961916 319281103 736129991 930221413 539936769 890866886 186690084 508486032 360329772 770610943 538952254 701515766 863371610 990677787 773040034 959695202 217646312 224876777 759440841 958471061 755602398 929511042 43010751 655735304 263826924 698720084 776837577 906735093 908108224 911627872 341996455 401128028 437986333 944249369 39350032 258077525 987331701 992720967 938012923 975444353 963957968 977369186 354635756 686423588 36265909 364274142 421445543 509626961 611482007 935237801 579327010 687077062 657574752 726430242 242112976 584912266 51451325 74186671 430231380 807218676 256403751 269625453 999223099 999238494 783751457 859095574 103183694 578016016 960558564 977804330 352156266 672650549 47640809 154714565 422029884 930619070 173757511 244421335 923190489 939003056 678240143 737616926 892490390 927445134 988998750 993054947 245952039 499063500 898593158 968984031 258281962 611642544 845031442 885063548 508894636 769730599 72098536 890000743 489043170 975439222 818645309 837985655 658024047 824015927 475450145 535377326 854471015 893554519 87055376 513499190 379466190 628128012 390939722 529938859 889296657 945966344 705816384 898486069 695793708 704421689 952554109 957054901 204740840 770733307 359013030 955385003 46457886 496723553 287745012 922895443 999147284 999282334 519511998 889761866 27305802 515770124 458538928 500530721 463819995 920390467 537516795 810759250 832134158 975290510 477272581 778180041 908546581 967867188 308516308 890108473 129364067 529565898 679608139 987286845 647608277 838406538 882100806 889098691 495513969 515132386 80272647 571892555 874566476 940491409 782834272 868639896 693604083 800169725 55219927 556375028 768673610 820635434 587842167 761906913 746855985 809112496 510106250 826191372 127495871 885985792 194493959 993221795 941888133 948047787 588240457 685129027 12946972 243559344 934459122 943753442 389554741 835742077 780325913 958721453 429300198 691121978 158181045 685386601 892926623 937016492 696082671 859874668 686009465 730652918 518937520 916013639 902536756 904742246 836727132 982211971 627094858 933629790 824452787 927008434 929708716 933350151 483216561 566672835 724761133 964114048 584832084 683608574 604167733 739636891 621899202 913189752 352345958 459890450 528145164 558942521 415122168 487934505 8125193 211968369 809858222 920378849 372725178 430582432 383191818 592309424 236363108 698444045 332875404 817296290 608410529 938758275 142069225 182424906 363123246 383138442 349685569 624351055 736096846 779621527 482778105 848483785 893011974 912033025 805717086 996279511 714557368 918066166 803988044 955222058 250435926 622787612 753375093 902217717 265468262 522297216 949779861 985151337 360454965 953022549 899832626 989505608 288697508 535417584 934467819 947728371 819410702 965117648 212096580 561579558 891658433 969924529 190511735 684652024 361251789 750463778 265080905 547053151 659098919 734316848 867520497 874043217 217770866 715607047 924935155 945894808 200129320 659828879 363292620 638866129 791730846 944244409 151232355 488200873 569554937 626787901 851254600 929543992 436454873 818412608 817900465 923040218 341283023 525209005 318698281 672648879 915586473 980545999 507880505 817532087 845631704 899671341 298282764 302618808 913215101 924563902 71991349 408375215 897006585 939587364 947869355 977481421 155031451 672690261 723959581 851825281 41529654 95642395 177379970 781519094 497228455 991763523 874286724 895293092 871066851 974443193 559140454 752104154 546708251 809506032 507424476 748679976 439716513 914702659 598078621 641890437 227751973 409870261 59126753 984458716 946018966 990634485 554331016 962398131 507105508 842217379 320595643 389366695 340645359 693240922 214904690 524211724 868786740 904469623 232051205 384770657 64061345 691735096 448981746 696484928 34602671 116053849 22559922 565770841 188676359 671915913 791751032 797976256 958540386 981119115 990605603 993369235 128997017 768713174 820509865 876496886 964501717 988444427 497502257 854850244 828389280 844212450 381038166 850299642 755325556 814700542 348353056 780363523 238723502 933680425 199362434 501162992 575522679 840181450 730427506 774437026 546998132 965507700 606378657 930896155 353161272 655159502 876785873 878894507 944355165 962193340 132779317 993792559 727629840 783974414 91430742 132961902 109936627 124451765 934553303 939121892 491553015 855265479 257478764 752429249 6315426 253500804 778002608 799273476 649556259 985313263 618331945 993731258 505605542 520795415 919958899 927679656 378059498 686486294 630838254 979844464 896821992 912719633 156945382 580754216 735806811 984630509 61977679 283203674 578743162 730117132 991533347 991583363 427579088 614662105 501592679 665376069 456568559 968049662 958772954 995623177 610055133 836149793 480510587 683361487 215880556 468673818 107396192 990538874 454026826 813834935 739840577 966901845 9595366 703849082 228504619 402293276 155338217 373787116 102714531 813505150 99411199 712536180 843755374 886830334 502026509 761999067 194628027 764599860 885808182 918778263 233501157 904941597 149418704 973094069 941818829 992885136 878385596 900890741 727172230 923336266 922109085 983880767 922759457 967082837 303903265 436512718 236122327 329671439 176386371 447348575 140106174 203005073 327756436 461976792 161349195 865825955 876686527 997343989 711376810 845318271 245560797 634960708 386675764 924181242 233664986 780617480 307207443 484656296 939670901 984045590 366160366 435768330 519027868 949917243 65262767 582809919 531900930 987298922 99961939 747457588 607632142 714492193 603193908 808539866 397230603 683638931 404041058 846658151 809581828 846726087 877103197 972160583 912327379 999269253 467499606 992994433 333380280 533327177 361494064 793212084 389530838 553348815 984295613 989109175 628099014 917349804 231648730 964122956 452381549 933164830 416608788 620610623 696195626 711661224 201047880 818770047 28413271 995770760 64275962 652684434 456524241 951531240 612266187 612890064 329217806 814699774 244962747 771143747 105040007 784412283 536081757 577894612 981588873 985087856 102528616 734777611 109208874 283550872 742810935 973452808 133114143 659908006 826644028 961434653 211787799 869565249 665149541 922449111 18564384 313579088 383581944 652225586 321689990 549795370 494381149 809345342 700171460 868494893 785077808 918763558 906624707 989399498 196390767 920912222 33630517 633106246 104595645 909526127 992460833 997505306 40269594 50059592 995924843 997311243 63870744 805101941 665675898 926572825 578032495 849320030 417967362 856441985 330582656 531792147 690873711 755985105 250611703 993255177 631357178 715703648 505966794 633480578 617085448 639324960 343279849 582121919 337796841 745816000 742272264 909297498 559107866 610236158 197881137 368382846 762357364 936391251 419147440 526536765 586715540 718898923 632295791 660104969 615767800 975295924 355128802 705578888 973098553 995218344 851193998 971749160 218446862 325688526 541164824 556250564 669584521 881352466 897438781 937084479 354369755 580661899 474739302 881822465 386663406 613561005 486678696 868750549 512447387 665184454 758960486 901211911 885862305 911167833 559984859 976674489 248082668 895534370 325883019 565989450 51313315 729049583 423474411 894133839 830401102 919244911 450590860 867649590 847400704 876476648 746690148 974997645 936570963 974114215 435088170 654911835 622872254 714470570 209125785 298092890 119701153 418882682 967975730 986658515 861474538 972334854 786322790 913258549 373001979 648259819 821998340 839255900 766656430 890438422 810684285 863845294 603544400 635372506 426845510 624467587 439839194 561512995 397143320 498265844 550047045 956579098 159214675 476441611 257355852 501961641 957288860 972689378 883597029 989554272 316959147 324634831 352236814 596891081 330550871 453410712 171919655 846957750 608313778 962150728 15717539 148022926 701162386 791548335 518101534 590127041 724066653 836877131 372224748 432357184 332565521 456562460 600988121 955369095 821661301 963601976 700913452 938120675 262964077 818283351 120808087 440795409 50182109 557883407 803842458 942507919 842855633 843868869 971735117 978907092 837072938 858635505 785615536 913467302 991161641 998646533 230619873 491841124 292069903 747331360 48178277 346041120 7475533 412933197 879921755 900212752 533856074 869146452 603406381 722364512 96916372 185250670 156400398 290486609 535378647 658818026 446804907 767228679 832488714 929579864 559921619 594947698 96779933 882036456 456372433 998284785 213862693 891933002 52501636 570250068 891236606 952729419 510902352 918327227 33100298 913753056 248292384 379219050 603298449 670267576 696479437 983040387 632453606 892567210 258245197 816198647 852370912 977989754 484724909 919049500 246245438 977608880 140472957 311623270 706251333 978007949 742397683 879239890 690139555 992898790 427369607 767663002 395758717 981455531 345956224 661388333 725690577 759086588 28283988 310508598 240433752 543834157 314612410 342159997 322365570 407611283 243880973 829001167 269842531 748156043 137300589 441691324 540860023 855609810 179505325 206846988 187693917 832499890 25428108 886042628 738209538 866664553 78150864 523093315 396104921 486784065 348645028 726186778 495428640 658014548 294661517 813191175 73102301 733422483 754518094 966985931 920706445 943110164 386959778 625653756 111460301 859905693 772165394 930041247 494014780 860734711 958684347 979495486 777883962 966319142 862141781 870349980 493646761 550415484 928701851 956190230 834514022 834626340 807446305 890302099 170713058 421559739 678442090 946959311 136134511 472016222 525331979 670407838 678640495 986011985 659224857 888258704 458401081 660327392 224697547 915040420 42174421 478574361 651157657 709757427 317651082 644630103 487531625 816882107 167563818 369904159 354160665 906220231 403534270 427293095 114716085 438694809 487247252 496318778 215950999 544890944 754310006 875657608 654628424 916932018 989220603 996699853 18137709 904757232 187112036 291641058 539046895 831224522 820340485 932248598 142552172 834632756 911847653 954076693 106817611 654225540 535927594 594690674 600103498 878247971 243239615 385925416 362702695 559413399 910490257 924303853 101860266 316972238 70535240 304209495 277582442 790615697 457809539 633691071 202749787 360446742 565040249 683076389 194273323 581480484 864513529 913207844 38351141 325078622 506395204 965400476 145030433 294889604 870460752 905158583 933572293 941196640 769794132 964131813 480320894 887781294 793969584 843404055 505511837 628105285 198051853 461368236 859617756 952899179 239264448 740216249 218591988 686667425 697193524 741685430 877020481 974621050 283221498 858297657 451765255 850440626 336876139 623216000 138819898 473745622 43683627 972310748 188530784 877709002 923579690 957936660 919128773 951180064 742247998 797203131 650504260 660481095 674686633 740689159 610350651 990316773 23694564 348423547 867785887 944205882 282715408 582860222 602941260 811189662 874308034 940391911 580960245 656567455 303559300 978485354 302069983 671087338 452411582 939003060 578402233 779710631 37616310 369421070 980753403 981469989 715938252 794220507 548775350 912338271 374483642 504714752 455201403 609103480 975326271 995326354 528870586 986907637 575351352 894044473 208759453 332838598 732189192 805068848 866970915 883864034 707297710 992539478 759051774 945039423 685886893 910392705 581607536 623911578 578240211 919784374 43144756 508831096 62803263 911484112 350694652 760503940 417824812 678460050 285748714 350285072 992868590 998282793 376009667 934293305 11189955 874655061 60127693 433516901 692048883 854466171 825544570 941358043 37809721 300862619 939196273 990644206 47107376 951326738 94757432 114982834 479796115 995465811 668715042 793830500 481246950 546566614 526867974 859463907 541886714 578343040 94076296 733473435 567849343 647956415 726507701 917510995 607126872 888894922 454292823 715616571 517677250 582438206 836928683 940799848 723743527 903170833 924756835 994995074 989173700 994560955 90853111 503712306 649598751 757257890 956329914 976967911 11675125 430808794 178309301 871318669 536128043 929840987 469029912 544462097 400112410 626121817 135419501 507232214 964760696 988780110 333167474 426715375 427880004 467333046 684082282 834543650 567758043 809905126 766815982 867590859 601594748 941562232 746569331 865935409 22603050 464272904 158850042 403482914 392696194 997512436 146222749 510222197 743993445 944864674 806187032 894322720 230793862 568632210 279429869 410097980 855981698 971073527 513769235 865842516 266020820 660037685 338275472 378610117 596341437 630856629 799136887 892422998 254961676 929883889 591022563 765060834 756698889 946937230 147787892 248816037 514183154 912522432 515245207 546519335 277511391 732800255 334023426 400319270 614782173 794142294 466091362 808586002 477163410 989061473 222421101 906415375 167013422 666273222 289782746 545079476 889990106 952433628 421453701 752151281 806386985 829166849 378895150 770950315 485536045 546441968 370679724 474358067 181558889 367274412 49134969 633053826 290890495 861218793 605735768 958886766 984911123 994822045 438375116 865492841 4781612 562968881 758084353 788480851 68091554 362912346 365560504 653494157 122394176 228423163 146397968 507284780 62044036 901542678 859681223 901212315 828882937 838250385 244991445 476777696 254779179 317138041 244037460 573732165 437711322 552916724 693406376 984665686 258473246 387155784 19306483 889966825 991935748 998837489 574969054 930096963 652241147 911605090 77158111 344710453 206386929 310457501 670785628 809596948 784068920 847757256 44075130 578276463 382240020 448764196 213180562 453151816 750602878 823161764 937384216 979750017 737247301 768309081 916244956 968843934 417690672 844187434 469492736 919242054 771012844 973211657 262842458 350946227 467778069 803199407 696105244 845429499 666149823 779939603 6872389 355989278 871949044 917754501 504911817 892698099 192444203 529427028 843103152 949480980 777739269 951361703 543718970 632327233 172644287 761215359 415522514 856255662 403823155 697269663 198797524 895256734 119743893 234301953 23827368 69743893 496991231 659537928 704080340 732105422 313629275 801046632 946048688 968811953 317097571 731980885 17634410 212358566 743833728 880997281 115573292 162413501 193163113 489976381 971039984 984708540 670921659 937673788 872995464 961311421 409973147 797926580 314315670 490898807 227868819 469628448 915234244 938793452 224238640 401578426 784652012 815856495 581470314 600151686 51750523 990071558 956971026 995762540 314931880 952515925 122419483 310743590 368132425 708044119 404574307 664603576 733898040 853444223 335495586 818640074 141040881 201062822 402255295 575308797 83113652 655250857 929933170 956003623 324704461 651517653 516914401 856645949 450575691 506121826 278250390 725052595 94091811 738293388 724741774 725720380 500342822 821258356 868337511 908119853 955223507 955842058 440284742 652459950 1141110 677212235 427064715 946949576 453121948 676560893 948920984 976311478 60857796 825445227 175439077 894586091 672237135 801916981 461994437 823768722 540504934 588400694 632980835 897990622 228311819 734441626 880557660 894278987 981933978 994593493 703747991 998887625 377873989 841664614 734047344 879858946 543091267 954267205 275553684 546983685 3452432 885534281 442400695 616208578 638004900 852373166 914795412 925786747 986049314 991140250 564934892 725401076 40535148 565845085 853037703 858648837 430888371 931587570 478929852 548771572 530945022 710499806 653533789 768016513 358663405 770724810 958922190 962472566 905928406 964502465 986744548 996916319 104401612 637591326 911209455 992358663 625809519 626494099 7379978 696433901 464839295 750579301 299220621 721625513 762980698 942469272 809413576 969369433 638142799 886076400 689186564 992835965 368689240 754651469 132261783 286909637 579835780 876955033 917796537 923235675 411927613 600970267 12761471 88119447 978086483 993310771 149195732 276181577 506332135 627886346 698453109 909865400 587147821 898526568 777262155 833886230 200075998 456529578 681743134 787369020 854473102 904741891 85340144 886124165 590519041 716178763 360302655 660502722 51673147 658149010 823407348 862355367 452280364 823501073 204601627 915541677 295646460 978385755 840814652 989902844 109318646 553829615 517190193 636643017 943357603 947117654 798759932 974171374 104239138 802373613 510707400 728702204 843755403 959427250 83414675 992438135 920218439 934336779 585496557 980423482 209022893 675682605 756021864 773656138 293257884 942668401 624982264 745415012 569654411 588382866 363799976 815411237 880592184 922604688 925535861 951771515 927406194 939768198 629470541 977870726 931802631 943801978 747064706 830889061 755067605 932826651 872493911 981653468 70389530 93118887 496969366 965951725 703264291 824711831 521374281 994442180 262851115 628530177 878292221 898144214 640958407 701735092 427841216 896073642 43941156 878038709 331022045 344316609 541500132 669301855 295962621 573585831 347695961 607677506 932499782 941911533 259753634 754676724 44495896 537775334 147904419 442692022 511638851 727044413 48846448 754851758 885466359 938099678 957408467 977389339 562218018 614163349 354557465 893365571 663745613 952521369 355117220 663306098 817342364 818552930 483028903 928484228 524805788 781342366 220954343 483218029 305411100 464495547 394295093 530692345 923411147 990715971 859646912 870100873 887476888 912374179 712634476 785283885 909672586 956971390 338426387 737096211 531030833 657311192 21703624 785722437 454456995 611381734 388577929 653965456 616655251 831132865 288392031 468969377 763781679 905203571 521702560 720775903 883005854 975968908 554634367 620332325 152325480 235360441 443989236 660603069 696353383 755985555 414456477 845092652 729181991 892933201 9516526 195815429 356887189 913087915 45361747 537058160 51952489 931947876 874085851 908284292 549701363 877254042 177141084 820955584 584769956 747129506 104640614 248933485 941916853 994047148 383705496 732380801 845818173 863881557 366416058 499939596 45368249 362019184 840925887 974216223 837951377 873365784 788799622 819174046 528725690 979351226 724783257 899557060 787046809 977656880 159611445 846901733 915603961 965049182 18041204 179522902 655350838 925120372 688366977 713968667 494731069 896229604 939719738 954521312 893542992 925674379 484002031 968876616 315439128 386299182 876498164 902459210 22145348 98100755 660977039 809887354 488043110 847820419 692655487 789755956 44776118 242912113 887828720 966810806 496005387 564536934 289773846 666064747 487493174 489287909 564637501 983958103 531088467 988956356 459735429 477511052 515894743 843817861 473985456 524356350 773060968 939421163 569113753 695141907 272854027 659866325 399992942 432380428 775196122 795849902 127187094 545282346 184643903 952146413 105245009 585645804 769433691 853809761 516749651 575753286 798561749 945557335 10791501 492132726 530910082 727965031 163801484 961271431 693301963 866846070 809684152 977012219 914129325 973382353 552267004 796733132 715931264 917876972 192209156 515557977 938219645 990668744 944122862 977845272 8441915 654378651 470773035 655507536 144513545 436731779 495890443 953051738 503616376 724559800 194784575 659919171 662771268 689198901 824414080 911646178 844874727 971808576 607416413 664289311 784403766 962600266 559536244 791228179 203589051 903638414 164809885 509844572 676048661 960634789 980601114 983867902 303383466 686849299 891520851 928780200 817483785 845808617 223072656 721248122 193700628 538179528 232655702 364457513 716443865 806818886 712060580 834517118 579394722 856012283 688013006 983557646 703849693 798821035 760709326 902627173 389424986 784526685 725680424 891413041 152852219 651947115 305932139 461039594 666858529 822421376 874520452 980360833 72325513 378585178 475539276 543209050 429875631 886999389 652003201 707807442 279710650 788570036 584858746 617619267 762666380 877639807 622960069 748138017 260913931 767820727 744967366 900582745 311955414 426644351 856903305 927778495 873954793 887462091 234742374 711174651 66575662 220162756 383476110 544039109 865545127 937283802 76997931 179378167 175836810 783461963 637349330 957928016 641024423 839509573 920248195 979856986 992246845 993557519 990139394 996698534 81259239 129201381 179568662 280898502 710036261 855193561 339170429 687870753 40253621 587014768 359975780 736751570 346555791 982038267 362003920 529154818 837640281 970699751 776180763 985384055 85123696 373135497 232694507 390378022 340755116 374228730 673369407 859095298 754283895 854431298 846316412 964398183 804813827 854470387 993582199 994344022 533481506 571279086 196153494 645880546 84630683 751244045 14683632 324575725 600034467 951766427 38909290 48674991 386247455 907348560 84473489 543300655 438067365 840005971 825001129 868193277 964227712 994694423 827077410 839635752 7433153 841104232 865675713 970672305 720753735 732867857 714295225 740484362 980977833 992195196 684814554 803532705 687383454 810630241 905663663 938673585 113175746 668689839 945048005 989326999 622840504 701122551 963688403 965712222 123353505 601890488 792220899 875380522 559519286 879932345 829278516 987394611 730024567 759065095 247630032 503724241 439301213 619909958 349051593 783403406 958605354 992065797 361426679 853467496 998715168 999005853 756011625 997752997 421581314 433223918 380025991 637111199 18866874 492523526 691968848 713326718 447072784 824320938 287122929 296051628 600999364 664552953 576320716 649109504 205983060 507284706 472391149 649082031 390010303 530272744 937101380 984176227 522241518 871453907 160351047 879852898 391237643 436596712 823473296 994626994 440688096 545958469 65916063 808456526 368884646 549033669 907013323 945334714 705017163 757186945 287172705 653974229 890584038 895077247 976051137 976676343 163228785 846738481 720582735 797175930 558153886 758200539 590469651 816229430 250598611 290717651 264047880 668137458 130974313 726048825 363997996 635376609 56377891 538599088 616779543 828441111 44967799 57756410 389009416 446950798 770519393 914092616 410155853 444995138 134600252 921454943 210297318 865839497 895693024 939397711 916547307 922545799 993009806 999015141 725866542 865324192 943782609 964598272 292870325 460876596 412186883 995914952 500814523 610245018 282265430 453501298 900927139 915302445 604107072 705297739 332583119 637077676 269454454 347239041 291325328 520170893 422638070 504878143 115976564 563348532 830372310 928117052 709809330 931312575 779926108 812576024 3962188 122618265 605879364 847447216 647127237 688635523 144527342 961574127 640712491 842627743 160426650 857076092 678214538 731399777 865950422 987925111 146972950 234716911 146664018 251514179 349572944 357513345 368700341 989353444 766486311 896122915 644667166 832226024 100792037 890132918 526668665 905423787 189966168 193405321 767184391 819776106 980929697 987943097 548415471 673945341 445034794 498220439 394069535 662282851 817435053 981924528 87799707 257367061 208041083 967829660 272716190 457617208 561826148 662785926 161685665 388383247 65038919 898028849 202771916 569334359 961074968 980764250 790176950 894662453 758149171 771923074 972431740 983717099 122544288 449072989 471715782 881347027 40983188 570036612 312028079 567059931 854666909 924172896 925788054 948522291 769392425 866832614 826696463 962168119 160125678 873959192 882158573 909420722 308732345 555421059 31703333 391276745 378051425 589741492 996959484 999389680 581335415 873262639 978625754 994353490 454602848 898288434 513815009 900753186 216978905 938187493 369031902 982527592 781862548 849812974 992558898 999229425 954869421 986968214 353694784 803853600 382864463 403405989 39107157 874578042 875692078 997624162 952169924 998019016 692376034 718243626 666448161 932953355 750803193 822590619 846410088 927432935 672712318 769184293 168814845 208644022 342398303 945962684 545688630 549156075 64405902 374799645 109407287 603355548 452353999 594856563 864915425 943260139 160920985 240770223 856240081 938751146 461093536 626201898 388621206 397805712 663715595 928622456 906767751 990250162 563504740 711346306 781304948 973313194 718754907 887828869 661770261 872632469 909412451 921543204 925148462 974992035 76233302 996700055 385427130 755062062 854736285 967177841 487265858 943791707 794540182 807589030 67091669 725894423 749142572 879537356 203577189 500887947 996209381 999154759 788069100 962075568 210263790 405667568 861475841 980848654 284523718 896970074 151240238 421480032 175671714 192553041 480075367 859234871 563536672 694100116 212568693 992752767 252733657 883966408 251824799 254915481 52529190 731772329 377010782 794533160 375620528 497712539 366486929 575068337 623166176 990570473 194017723 685007318 476601834 906195504 206061306 599080647 723999898 964781012 760287014 901924736 256604617 527212776 530579235 739607320 873579381 874643895 116400994 656892779 232883341 306082136 243501706 520214670 210140659 960781654 777194171 960129938 799714691 861078138 702278178 963637481 699505386 820595229 436474130 806480417 41175136 128871183 565461543 744317562 863966368 994247642 196005607 750195086 683870447 719048636 417119415 637045751 853500611 958413430 159681469 490276742 564968929 913714496 147580747 948953508 624383371 896822064 683361928 841691259 820635454 908488909 987501240 997200730 100947319 799730127 517033435 852807510 179723739 852778985 813556337 873770702 48977225 446836225 488986944 788449694 983559494 986989876 146582487 449401528 84359935 997796662 981568065 988394832 998662980 998888330 933167456 955683587 250159102 362679337 408722083 575123681 890127575 913156205 433562973 672137967 884419006 964423641 168084254 746257432 806436259 842007465 99846139 146840824 175362267 375366771 583188952 722536968 179518763 964064663 817506779 995384164 664872568 995473314 513867238 915643425 112927268 355645584 662902128 926805191 591028412 918009855 173803984 280495184 621105088 882190470 232949752 973539282 547204928 555387229 950090955 967189898 116914645 187379036 715461517 949623363 319531935 406693586 923363975 975146843 491401630 702098128 220195314 455087157 989765900 997549073 500817105 556563687 163186711 680341108 103524711 312462481 749149587 925216690 898528647 991856884 792151318 810077574 725819089 754996018 801376757 948346488 974528590 994718318 376723234 527098169 446164400 789169223 257470135 325382260 126715562 345055909 769190060 816724277 613945921 665102919 73372661 618328291 254266245 295267963 206340008 851243226 3756848 402942099 842051305 954804868 593291758 632129992 964597312 974492696 89484482 481245207 609833875 610391418 492035007 650081242 621428014 976842678 725583386 738821260 483631970 595917734 258615821 565744023 532026299 735855134 369405183 651362249 337533843 573368187 632291002 935772022 903298216 922507221 410778722 540095351 731330683 821279705 794632149 924104817 837761041 984389312 73778528 822204253 281654248 337971402 683145607 753835007 953648400 971149671 655548889 745943308 134790396 978580466 971277814 997530031 317510182 947843030 962026712 983437807 606260083 693280082 723214808 789239612 264083952 985359292 80420732 824154075 249898994 588312580 237031545 323140936 419024856 851902774 443392476 676099698 492313900 914677530 84164411 520734197 797074446 928997555 244265891 711245305 48821544 667841671 84265387 197102978 855183948 952465813 84232177 309643187 356782737 477133063 283951996 517673008 163806832 467067357 774525371 829062793 182849553 788505366 838299908 874677043 344422756 639328644 610818559 734271738 976273870 993333439 807216218 901298682 209560333 644447034 432831730 868182797 797518421 827682544 789628093 844114304 768876572 794800661 916278116 945578031 802925609 805996183 699104810 822619285 974209990 981474293 472579320 980161456 519474734 954789073 402791175 459308558 944175403 981228602 210631127 397212203 149982002 780957889 2966587 807867613 518168331 987555323 965328664 988047760 759340036 910766758 747577713 977738062 690165194 802869495 901467014 924762597 987873675 988036731 933956707 991484177 252242098 490397820 284177475 752269638 416099526 735171182 657096573 762360708 218056676 864106307 877881371 912953080 199626209 338057486 383362617 854351616 378542589 706175060 623147618 780819578 482426013 557279683 555766937 821902302 108897362 646563648 350315905 412231921 374338304 502619836 414001539 793503236 480274318 519032636 898036970 977243755 332466466 607262618 168493601 469734202 47997550 764614351 554739620 954184361 850918626 995633973 300269733 369127307 439346835 896383484 430652356 968591591 332359771 478518656 545274584 873840994 983780242 989584497 442661602 798642425 785658088 851287000 14144396 168531242 421908320 930365204 671322393 727454620 977670342 979899698 183773174 373339145 675292301 849352605 621132012 744250505 693455003 796218154 662612430 696573174 738646944 829705624 141909474 906356092 175365904 912246545 692338921 730845742 104525471 177757484 265209474 292089595 293680139 521401443 12948272 976249281 221271462 723323928 433321202 603015243 183387508 790890198 361733401 607846992 706171845 847842816 698434549 842824621 106244932 573641261 208544299 355543030 553079826 926214385 106540369 829915380 208612740 335355712 136575703 920111885 324500964 651056728 980833405 988832158 692490654 758771573 921379622 963828047 319857081 378480431 231008409 863814868 440621578 763822674 299213780 510648444 266472240 355482955 496228932 981116381 175877093 461799131 641885655 959670955 742227696 804879205 709440134 942891216 417429893 498311241 467326288 951278907 165820789 658523506 935574188 941387777 858928722 992110187 774086266 889878300 514469157 887096575 342140804 405253323 656972165 833963483 396439997 661449218 216664225 598681981 122895948 293410304 7509919 269835890 875161370 898888946 80802316 883578994 126888409 791330372 495056204 818837875 175915773 955387348 444486302 928712221 593699542 741672961 182140419 730063152 267034299 478861686 842286341 885366096 398194792 509450894 982705955 990755947 402830776 426594691 915715980 949982892 136876083 990847615 992168363 998552304 276102327 380047770 724107624 975554582 112186723 963853079 853626310 980569947 975878617 997668162 291609412 543557340 860915625 915272309 576829694 651683692 148135005 800292205 953615476 981915426 115656560 594426419 325409602 491594656 303418692 330674586 770014563 881357548 630700321 851839063 998088265 998127659 75718478 512199937 237264467 653873241 45898113 248400892 83868450 715664489 185675420 205279689 89847420 764079804 478688936 719425505 457377183 734766733 454262053 647923194 309277538 359682439 809814405 994016298 908211519 971888930 438281585 604666287 475190447 520868757 672921601 672925957 45210002 427276789 86099043 826428846 92223284 899571887 8978197 403685975 384658355 804000028 858683068 877667800 887387447 965204985 518471079 921813980 586782025 627503281 307727725 997788072 134387354 263449418 814190135 958865420 299535840 441868785 656257957 808250281 501059689 615184590 469223804 520057118 229972347 801559364 109453057 532386292 827253819 842584089 753919747 846902297 394670650 989337118 396331484 563356761 589973200 754198075 437629148 886742500 155547296 976328670 395090668 473432369 843056516 997778036 363554888 450397634 59214758 520609524 621292265 843355285 413377774 958440006 129008615 318372081 498651130 845445817 124175615 130315209 744780880 873675644 844150134 927047050 268288785 478443948 805765162 993202784 258817709 990757148 101088022 296734315 46683837 507341055 604903979 957291738 403136699 564273457 9766192 142957856 738227406 980870536 55510694 962803642 233477177 363394122 93992766 454816912 941510843 947477864 550408685 666634860 323685687 887562208 371441252 881198343 777676513 866108780 59911722 611191910 547769953 678233447 270534619 760701706 549091927 938750808 458915706 912975683 578275772 633383621 427896670 760122805 956375504 988296312 865350670 954854840 82057772 221251861 955449737 969154002 218276398 560697188 857796136 982664748 809284842 933426666 185069846 515931945 318702866 926051657 800277582 933774657 898712394 983383796 792928710 846363309 637795145 933288712 904351710 931430095 636722873 803763129 305773278 584718596 797988521 850550665 223112803 524985193 190127717 700252477 765411473 799134155 749683353 821722300 471763643 871817533 828595221 901053390 50565894 736059597 56462975 284015681 797825738 913515647 672226652 946178167 670494529 794759111 864684725 918966996 34064590 348760810 20254864 782359451 567137662 772050037 162143833 784625883 163870299 780504137 300045171 719853273 754250977 928459302 424888402 840856672 397436026 483966052 173588973 730543731 587061938 588596212 189725936 351265047 728567822 933490177 178532829 900435278 961401447 985958159 224468993 659506699 368027071 491607075 64037543 871972160 433617653 671021923 308062905 585523420 45738922 730488081 259348677 276119500 823898695 936249089 213642497 254725032 904837175 923773052 926520403 967369694 2225093 417101219 154128284 220928823 556570259 670351049 503824183 952820525 653999837 729667920 211513611 467347307 577697632 585697786 341926222 580079192 956917751 968178578 570135834 737637523 276209838 551691008 10799908 543811173 706016348 737266200 108504242 645624933 507459002 625294375 374037318 675830569 607592973 795373729 755853116 871574193 712432702 904410590 7683920 770979626 319863382 486967934 969746950 970844919 392426944 667403773 708178701 952496779 998302765 998952452 116677131 469036051 186412888 201426227 557894844 772360182 792144419 852347903 995000339 997198984 490857540 967792740 668282655 801734104 878396973 923304471 278446177 358785792 832927821 966413302 664428015 804328933 15895189 883821515 545222085 927883823 569670601 746734022 320583597 921783724 483414079 956437983 248400498 989085417 415135421 882606687 430877614 990460314 561048624 974493198 687018584 850903561 861514589 898772784 29416888 262835375 906564170 921659816 667137978 714871323 361287249 368663040 669378507 887466497 364203673 508542241 112789182 112795895 529713344 569618220 820870408 909502419 312613530 597113028 443794 872807142 48859757 658564806 515185970 853998008 158052113 325052657 672688590 987886722 375647049 655062278 692471397 960520915 320692959 709347576 556837170 822927448 318008188 633335753 30431494 35598623 892405259 949031557 204746807 993303594 818438407 857634501 458242985 552922335 233116606 893268604 736428885 993476145 426066594 905019057 370145250 472475624 710464447 735069689 337520859 490540793 609989507 785131465 807701979 893945628 72605132 926339871 488867513 574636419 268087847 857091290 183907114 839638577 653609154 835081095 945923766 984277782 560182016 622613551 880160486 997241156 45757537 198007346 509636182 755716969 184392266 308919342 393595358 914074748 478558134 540490968 898559970 961120047 362715555 945090214 681545884 782047734 144933627 255329207 573285884 900295571 529099605 767740076 530186341 533584430 95601705 411662983 705575220 738005090 522434807 575102718 929815155 983558799 933871449 972147429 271722138 502266318 595652507 935473416 669237853 843857019 558983608 776692333 305430025 575768987 874822375 962837283 308703077 508428075 432861438 925658684 350746199 521690722 742478050 944368693 875915852 995861426 65938138 790365689 378742265 686753436 972625870 981568054 508553555 842666582 257733142 577016073 504953530 582771740 34531950 889694719 110893976 986194064 625096199 835785805 978818252 993501855 904489235 953080283 555814803 716518376 51879832 315037133 540677498 636307271 230787873 437650068 311434464 531672139 709323025 865885519 761189998 942909255 714894388 745881537 626974090 631812021 934312470 951331753 935779341 998704940 822046764 890395915 874001715 971636483 604512130 960384768 471274294 661028910 773937772 915683357 953897693 980660349 500632818 887206208 802257978 852049951 76802250 333247729 587220938 625363868 745642624 980429481 603005738 868931637 621914389 866558342 655293277 857225650 900713922 998290365 411819695 776703657 405417146 894917758 425278201 979785602 958375513 980519796 272692423 864091093 836256580 919298361 311172849 502106082 305636375 748708357 301250205 659189594 136683579 760135184 785321447 866232418 717700730 873133964 413167204 612050211 809671797 810895909 929528649 978852561 93993834 262007759 429837460 976182952 556014234 707620727 832369758 949797977 834543801 937983764 733341930 828728892 362986281 720131116 265443720 681023530 311876471 616924394 813866257 962340363 902861295 924320768 405260483 420739883 434728440 626013190 846325590 972546558 158780306 333245391 915003093 949272065 442502625 966736844 349260153 973661604 361893891 477905583 395583959 779901748 933328816 952428980 309054491 669752467 376947153 612308781 217003700 995029918 87464250 300623758 460134014 953583818 931997416 990558801 674019199 762316734 886862570 981872334 216078081 309529428 286217806 473099593 604233168 983955409 497519389 831072725 27161726 732590047 456888839 600337650 658598847 819444345 748655334 916308575 910125781 921000055 629441708 744198015 696561693 728206037 119717554 858666952 534175565 630123816 246317690 784562379 190926834 335726506 466998012 536073677 844240092 961948325 312036391 352937916 568423205 739495703 348538856 718096622 557439286 819388341 343066835 809030549 768026719 836210063 406884262 445495364 359211872 752410565 881913191 969308415 49127115 197662510 581586085 684721319 462404473 830537772 608255077 944964866 283939975 913852742 308621050 623805931 383886618 961677854 958983629 987411179 521955293 811050324 445132769 677946008 346278989 589696811 416969771 423953486 670882724 759827474 766773859 795714363 729479119 833267017 355928473 409576064 191059274 964956132 856623375 859197874 395005365 899780762 604858809 635500908 590198107 941823136 127648175 642277611 105795921 487460191 135684723 465997643 831014768 834149770 32757493 232349752 438551986 871448857 920005582 931974510 750970350 886492285 899477114 947033910 487857500 632451011 695711588 803723302 268772247 976809006 171823688 850975408 157992227 462562651 121504838 218891437 929117550 957697122 197347136 892683479 357862139 689477794 733371069 947478210 368872463 567550695 838219975 927334937 962115758 997399684 707374496 849087200 162550808 997759870 715202014 730267980 204743815 961457109 714583173 971171430 567444127 684061802 424360191 947484199 183828936 782409680 371933125 683342382 992735431 997150169 810030340 960611572 971151693 993214479 222554701 665093845 419683363 801740729 53022348 203361083 920808425 973994660 273992188 914794427 924595319 924955549 545704715 966125416 341833210 371694432 973893399 979141506 542843136 817757757 905363801 956330115 390141629 617330242 445646056 849060139 142232035 234206701 58652737 344020355 448924032 763119579 971696573 974661990 762657785 986587387 477399656 856023906 943784715 980246757 186459464 775133613 406388884 664951879 82389590 533068563 223962634 478674677 159451511 301354410 14255437 17754372 976273027 999185589 571318268 844905189 479887980 843023270 608532900 891654966 291108688 364846269 777328989 973017133 992707628 996037977 668077396 785286573 780043632 994003344 600962647 990121020 991791012 995686012 729905319 780294673 148576423 524626336 946545239 967041445 974928112 993736724 891040099 998535622 252536801 611014631 998815846 999339424 262587319 685350914 103553600 370132640 516629292 733746160 266735055 801990008 29784953 310966807 924650140 968831326 84311724 858147547 720162071 953015736 328603874 949240051 589264469 914955879 288713035 575584717 40942861 988605371 241118568 644485073 523347234 552205484 658619827 803155207 833367457 981586250 986104091 992746586 523423942 744087443 9980591 21281323 674800037 703100341 552792109 819748712 785533413 917133962 443428616 952068490 424136305 686993198 638287171 812648271 940534872 968198151 173640887 423440347 719201257 846514796 631124819 844211554 359416157 449036687 114013461 772365100 414499185 483338886 429919081 681919906 951638858 969778611 196662333 515295252 729108838 912747816 175540660 213932783 295026872 840286341 612963177 619377346 476036647 994585062 793384864 865489598 514675818 647791271 438075223 715281539 558899456 676585093 430038345 807988482 885042497 915932771 896154657 945068364 497542264 784588840 50515797 334621355 674775386 840677400 39300747 524641323 281311126 812924798 134226110 175688270 917139936 987706195 473066160 763407807 205964571 746749390 366881426 913015162 340785432 585920414 660757116 738383358 88505426 273956916 420992348 961477897 799907883 865220581 636494724 924930332 201438475 695559952 792344150 883141152 104472239 567032772 757343304 796607990 692417895 718258075 369658117 760684425 751644116 980198301 173602606 461736891 24940835 591664504 360943950 918401981 957920839 964303248 603399747 683282943 978548209 989865807 668968052 745821337 526343212 546671454 940901771 969311244 244411478 712835566 474613188 784838001 943927069 988881457 994627100 996768831 329920150 413978070 521054992 938677533 213181812 816429012 549787869 795238378 744086301 847864150 527643662 736016085 800437177 929827514 938250203 982295378 304661635 578093063 625810236 807704500 871239181 930816964 520698888 530961677 451651191 953720593 755199732 890521386 840541394 988128695 151685117 201894181 789534920 863876590 155249919 220973361 796119012 897297867 996295606 996794142 252825703 859593334 517956136 948258966 757132380 802265675 273344 186554744 406660709 473202530 128446702 429326258 556961024 865202694 566684036 647531995 373248347 397260828 361377818 693282123 778530799 991142900 465858844 547308869 736557523 968831139 179484013 279401238 429760708 579084786 219872447 915853061 568863396 701031294 337496938 483006142 488283214 923948822 727958852 960187115 860348237 886763078 930497885 965239936 179186892 357498567 260649982 951430715 18941308 140588036 449379796 847143391 292655257 585973554 25180106 361398536 623774816 688560680 237434795 612283610 945713185 986576707 398251649 797784572 966545966 977040004 730270261 803514858 578365069 750198568 867978811 920771182 915292490 929979894 268524561 718251985 185507679 641687618 185589653 596617541 539472566 682433522 601052666 679969803 268328949 846348250 488627001 910744963 308800100 860659348 986516285 995083954 125070287 173045774 263760391 862124949 80795947 138148237 911026809 966678322 911335289 935761575 173138220 749774633 559358543 566270682 935941943 996855089 109104889 962285727 56403185 989183753 44313480 772432271 967573192 992741531 285054786 308954425 179440618 874037939 678416417 736795605 275060478 604072170 689213674 764938178 857579001 881249134 480594767 730728508 711099072 723818561 485471822 578871560 495715198 600728206 521963803 755124639 604520005 681182446 404462899 941566947 608042498 796310895 155513036 354120058 998975537 999132238 684867417 747555457 504514826 696748363 330052084 554785130 400065038 652160449 500194680 734744008 10454312 443081772 92783698 564503907 571055917 684677614 853485768 943699388 313508246 882291514 246266235 811013829 283984310 760093963 588382138 952342710 940267697 958651262 455855852 958192079 955637000 961859436 397757945 593697338 573439345 679424866 271965290 443791502 894329737 978064038 884069262 998164656 342032379 970585437 376339759 862827176 634699833 756831351 992548147 993517801 500006007 880762599 93647094 449392950 394458173 951991970 730122243 856403201 632832718 913512636 220723177 894696224 992539174 993617453 690332349 904941270 219841427 439781611 249349657 705495525 965544337 998172475 149955899 914441263 100689468 624792345 351075867 759001186 668814942 996397441 428340726 665427142 568481068 823292945 845241643 976710117 657488373 818509632 213316108 954173022 927334 373196600 621152378 788920558 374021643 844222590 180637244 853885137 774922861 854315056 827836008 845947307 788864335 828817830 464375477 708828435 739660762 814194691 572575432 804976281 94304735 245263431 305537903 660182964 398481588 597324935 109187523 545879454 290470035 312519218 469923670 898100887 733223763 879176364 930794402 991910546 681683260 918461364 216734205 564316511 331256784 821832195 865203116 878022621 448936417 543565231 228481553 378861072 825119182 980512107 954705343 956968304 108769273 522045244 340295858 810180676 783487459 950181854 757075488 837271417 701329112 900164316 795088720 971061745 361048060 920313558 497738506 729197460 913737171 950268631 827627780 981038562 227249762 963890015 427892631 577276955 88086313 467145477 943433124 950605339 540832839 985398261 908691732 919485267 245559406 338339338 55187949 741559978 268927277 318835162 55786299 412593359 138447879 161827683 288015041 896462887 352067193 700143468 916167263 998727548 743193977 809251785 564087584 833354473 540570084 732174119 336246847 858307005 54041978 552088973 115424515 537583252 33130029 872456724 721892738 859140219 250784196 479421685 830427361 879707543 872103106 908352740 807354972 992117598 446842326 589049343 346119907 540466893 349968920 733398782 233979341 708546951 733315808 820946895 582002987 980959920 302420979 433964413 854360371 970516840 497916783 561974170 826212032 993329903 208788112 292603517 25515978 875012924 384731083 626233050 109188046 552567854 290929445 841456771 887495736 984853494 511303204 969627042 515407801 958586909 284822205 696966335 164312371 363830577 56655535 526903501 132677063 259204090 47012909 573330885 224359420 605995069 807094289 881872284 491780087 726253912 40941855 252208099 897235657 901963118 808665217 826817501 699726718 983815296 100908968 881824686 937487158 982396198 815723072 849432576 22716484 162097804 339404985 951214452 575151805 687090117 243045708 260111286 820901711 900508585 885343822 992538613 326073135 861040281 575603724 884121656 295696670 409826867 925655768 975757370 806232431 936846821 655938800 690235225 837131566 863572270 560817160 697205725 37815193 848088792 1474669 217306361 653646127 869011863 440433176 839496010 473167144 516914227 957596420 962910294 54591387 360902867 956075047 981550424 154319079 288144004 624504740 632095123 962014607 979506655 418533605 481660857 948143220 966930409 622844046 976498002 962926063 998565543 13800615 37105013 287443063 347133302 976333848 993780025 523995783 885893595 392482988 464898684 938966855 945900493 603892453 733010693 543997183 988189232 831910578 865974246 477427107 734402337 545440270 716737872 260931997 298487464 24691005 562670685 908968332 935561468 387888834 698913040 880573809 911809884 146986076 192105242 455098321 648347146 294848977 938151295 640785817 929367637 549356788 753089210 955221307 960986965 371423766 506145289 217181947 373088489 680910353 879252431 213918326 356414041 897464458 963619594 990526051 996664458 314517423 327058486 156224687 764560114 961373033 970613112 448028467 845996088 346173179 467459629 313402208 345172731 367702103 809632060 826735432 954582487 833159209 944459960 197818478 901338873 894753841 959290795 17843210 741817531 533015825 607292996 993589892 995830065 596176789 839554981 661469623 765596510 868232992 956256797 816471336 927084932 662286802 834817755 208482723 248534229 839675493 890112118 984626089 993808593 515769063 613041279 512629599 761104407 492562704 789414515 106344270 545456217 13002857 823458573 598869975 649686614 910506438 966210657 71697495 108674916 530655552 764501015 235122405 474651838 960397749 994875372 584975152 958889303 962764195 972413972 935445361 935755858 380292356 792828276 7171736 970033877 474827575 565036501 109975917 185591671 381632408 545458674 534393260 726240894 962012754 973396877 420770135 820896511 798910793 947333433 751913341 967695852 323223676 489564632 205501079 269730313 73764404 790072548 9704161 42026650 118737012 864775205 555664978 844724869 208230778 271885521 408816411 923568123 544471440 708143590 1416597 315279016 596489728 678065686 676356197 892415895 138081531 235286067 850966222 924082578 376682178 717404688 864417454 915686944 284810592 690036390 588508693 762242862 177190565 628119583 714235583 860669584 334504650 771098686 566312071 945107501 120834957 385240958 801265616 891241676 591800614 707896169 992284015 997176433 784386047 894313414 509216277 822520765 587099242 709211896 600217266 780032886 4968518 398269404 292053371 342982843 886756112 952591023 472495918 739894849 195638939 413729329 272294296 961037542 578773536 624298295 652828608 738602933 58957317 766923308 613624150 943950866 269301618 333767663 758582606 982912861 139611545 221473705 367297661 598415847 794353147 980651185 55657358 269072578 528631034 619619744 951585831 980043346 380123754 932415440 436860777 467734664 534111078 657829935 725866246 967573137 408581599 977073868 986326568 986572932 191073976 270385569 977351053 979736681 537129274 701851174 612378108 899469820 395970342 619676347 89643605 766495900 199759698 736318896 708802677 772899221 676661570 677088169 328462626 469055521 874786317 877929368 692731385 737653553 801173536 957389002 993242336 995474309 437664828 460213733 201568477 451101097 1225967 857471230 917404581 960736310 964402893 987367925 757083699 980105463 646250232 786036751 558562151 775851789 406469479 675253812 33642354 658312051 924028329 966381803 59823887 525839756 685729311 806661265 292408522 569756478 130467253 202222664 135647790 965487604 258537982 302943714 517604398 529991707 765270416 836095125 775583184 938428007 180808543 579728896 150195805 518969824 226547100 609378737 991344723 993675539 724026987 814826291 9422322 814205145 448862398 621453960 404268077 777762285 87182829 91395297 699523528 726134520 781577568 992221685 482322596 907575809 805566041 942809932 531399179 604424244 120441685 616137605 411535491 606210181 642376199 913684722 885583834 992331469 473215709 769047444 750990187 968374036 393537314 398057668 514852029 559048651 905893026 925480258 47279851 403873169 409546321 518707341 604563171 876921739 833498126 874906088 445822334 808658032 933533154 940244904 909410817 942865782 631043931 865354974 336707385 773107264 988985796 995744305 76191706 189504634 775866250 787602296 762997157 851655184 407609869 421802781 859158679 862075621 717713800 818711520 598656315 625997792 397256824 850709360 921249612 970982738 585829027 798374491 699964369 774120739 620041919 875933096 831855584 885989498 68448252 713044331 124713077 341560236 26539205 200601939 224875550 768703246 324545836 631972686 312247167 705463631 525381097 674106524 616273864 737131132 266482636 764520064 668571828 830025382 207598859 883571927 317723593 490184703 936024372 965310461 350904986 948233959 263939207 879789878 322935528 672746491 803185019 933322204 965276761 999082848 69385216 571919477 998110777 999061730 68045802 932530172 32659430 163029870 430396066 810319738 623619207 794587587 379568148 799464968 872123034 916148827 655760727 998604632 651346571 758190082 618222004 701505713 499699216 822311900 569526128 853936359 624194930 710580596 461638051 831159814 667390133 677509078 8107606 778321093 156705159 547043363 54994626 448869133 950214960 951924434 12040812 760078042 953725847 956550150 203274921 683331478 939934771 979875670 593132655 942522452 732925839 935569414 912606584 939880384 962262966 972558876 39209835 699145827 183563392 778120407 438388008 904131492 237728356 943757771 968422045 989953121 706255005 835697301 443195320 795938116 349595354 438545577 874432298 955539074 610811657 890902686 989419813 993525117 935741771 938163283 442764363 504169418 292330267 421760949 400134756 681565209 672975087 881697763 14107176 19938544 216754888 898011942 310994916 640354528 506157460 624610593 439149279 596730573 890468247 943493588 745174155 991462273 357262388 434466147 730139500 733875699 251677251 873867961 381772935 780215603 555002871 955762935 12911568 717854701 600641280 628530364 496574228 879201547 151828413 226668003 650057924 783446329 78150490 398270332 711947967 923014056 157064015 644855733 54040796 156690233 317163445 326127158 6601214 473892194 600567891 642386189 375235830 541817845 27960887 657624640 22966935 27804957 774453393 821844165 881607466 930876776 886347549 975484348 676146371 973878218 824615297 989373927 591717276 625854457 767912128 845877146 373137323 701807319 935837660 971965510 139645549 736457307 114692608 184414232 122067206 944892531 412390880 926448645 810972437 903927005 627194782 910732058 370266698 535491696 911330442 912688890 309169939 949066943 181562370 404463978 306836152 453308476 263233798 386757694 700523800 997737737 253491927 639237112 858465884 963134779 896805867 993119680 217654471 622929761 313664343 597784256 11550640 357735804 752387968 886165407 424352956 715244055 362278442 363553198 961284588 997709630 849154207 922416563 486033370 852908011 957411916 981406173 71260619 524661997 868047284 971784302 571322280 585682674 814654853 939561501 80922877 174088924 418932592 440581480 631218690 846491089 821543334 977986802 471763182 687873034 619839569 667011593 377626880 937909523 737617002 912525783 545613017 741649772 813678421 837077472 287959107 775597776 287592522 625473409 156506161 313502239 142490354 431624918 778448219 987565361 162962513 354792173 289674767 476436761 471764257 990763505 775719404 970472214 608282782 889802857 863393739 955354360 287500555 457006925 540325353 923315770 390785304 870701231 598920004 983081954 775578703 791970680 921115138 955868552 117375136 996549359 736931002 857894631 488564710 561253697 67677907 645184295 47907641 709182371 828463171 861133833 785941655 835086671 898417945 987035174 761722730 778090301 837146003 885954702 600091248 798436111 139240789 889006215 645558528 883530050 280253030 680318015 816205322 913574073 272354725 846695883 621925802 733522510 962868722 978435555 98746902 263890080 110914752 943479500 251534411 263851066 191810909 609223784 232702835 973682637 322407364 652539341 948814260 954822678 187461165 197637875 85566779 676235189 2829729 811068261 913357992 918053558 414312293 883892981 170385317 525671858 416781164 475792726 860564213 886727960 24942244 967692666 365678461 776240308 142253171 822013120 887005733 956156330 700662176 757675019 833329189 891999326 436983064 671412880 769603423 973144950 379958442 577820321 153691924 576251839 764544994 883707643 863556711 880656726 451810164 535450561 803932300 917300956 873122309 987232555 649532338 976854780 73071569 216359314 985544570 985697200 268988411 756438681 244830332 646342412 870977784 957410525 637621988 819967078 24327488 382059935 870578719 910798694 23817263 998727704 796391049 944310933 583783318 824447275 701386597 943992695 501114961 771647727 228749614 497127287 358731370 641099362 382995676 894029311 327622166 492023835 425201713 510390778 306986943 874664909 425808311 920084837 263078950 378997988 564031404 707818700 360843033 411979027 227735967 460724556 863107052 886789518 579035710 843787703 887712436 953487709 949474371 994361053 466871453 566381688 692783039 842442673 768076833 768745365 372642856 583418692 490786869 983768091 433388084 743279745 523098254 857027035 941545874 971359590 36673456 337448088 769378138 955137262 489431988 650484822 396408639 958703778 523961791 807358570 43964720 166529351 364381626 373804634 376405190 660390548 985116562 988431672 455167228 853686736 449163320 674005648 5178966 591847677 518067944 889524572 399982813 494642292 908788742 947357772 165859589 660127516 472084292 732403331 80040634 785422308 72062948 305482673 980407318 994242433 902565508 970730344 910417661 971114952 901058110 945455101 431281752 537150687 447197151 873603142 594714500 780579050 145767066 426204107 335115438 375352176 308634335 868516880 356865104 627682227 236807908 671161525 169079549 670340302 504001200 747728886 915236826 997341201 660242282 927551574 175702463 631733676 69501822 868381831 650448941 859162533 920404043 927925176 187868684 763838254 644821532 834382160 413375003 719785825 69694469 725410217 941047599 976443024 160926337 844104437 591263601 746079967 730015576 825246988 81960072 338713599 735922583 879931674 763767808 773018896 901190940 916001401 271682564 822843258 781604138 823556241 277662074 895187940 154726973 563349422 290523803 539104321 54804780 808963311 122659539 146607685 169187649 499880544 932635530 998054211 234845177 928594113 890683338 999111091 188024147 472414540 452609273 604068112 66453977 684006473 970928367 982594233 159287547 226601698 571494493 805480113 912079164 921372730 461053641 860858967 742062042 974566392 225197222 316832761 542478341 546098584 203027933 346409895 724849202 942170798 169325111 327666992 375125334 813849652 713262608 841325534 442240289 806443838 865042895 972383147 891916683 989188687 882453368 982847302 60104242 899296419 803705511 981581942 890864093 921312306 47900433 759142365 2345266 197933724 560455445 692011421 661217924 831215969 707158403 765725715 60147629 836822704 996462763 998999991 798346497 964306928 263861353 740951106 718227140 790538140 608359216 609917567 924623936 975421052 386016975 744220489 47763330 279948068 32282197 291474408 687681477 755991920 796602507 974396943 562642663 739484889 530836743 960145435 883153632 994039719 220053194 332384568 582451943 642448493 370899754 407776131 979202904 995483162 621207662 670241040 545622548 874480824 554663047 961401389 395918837 761030410 564772418 721125886 365475714 785139331 236728713 793793943 993307234 997879293 916382512 929984605 688342868 907866098 955681775 985941110 320375053 975910127 44673463 909948230 792856210 915674892 4627766 628811284 412165705 987288785 268052044 897676583 193213207 773042359 549418926 666703087 653446371 858009279 897147179 975206733 709255314 828993537 945807716 993127644 972672588 975223145 795089637 969259913 716624348 853299307 829466136 875350672 646267958 922502481 894860218 965076867 336922234 904090581 184031180 846949417 364741595 745025682 499679475 551651319 609096535 900823370 770792030 838884189 105257355 250258686 401061440 993205185 392647088 827446991 115864776 810453876 77623484 732077741 336189361 690668860 733139956 890921457 174179957 761410087 885323352 954459686 164247207 851385839 521952930 530133870 850248863 875415180 108079381 868983212 272753632 625995460 409031561 877429228 900040641 917823745 59667853 812510929 525839107 619137811 399993039 454083442 44643933 400692320 530940661 967966618 493679776 632651282 188939403 374552036 714734777 765384471 9217433 442182446 237763494 874540778 991327430 991916309 281551425 306027338 4506012 824533630 754220337 836493294 991726891 999219232 651582864 938608441 671631423 925417908 721490548 883601604 681877835 730074361 104248846 399230446 119517024 702398492 579482872 701674666 601630656 689514992 291946272 408016233 488863180 812231994 293445889 796998138 261311792 682461560 382402592 969206896 258634972 556904791 208118083 871779669 243590953 427852425 533255193 647165726 78974153 498988459 82053963 314953801 585579626 822000619 203090395 650434476 908995208 998614029 649914384 920932446 988967200 998151134 897939718 937791751 853517167 952874387 986292917 989658958 244168694 830803246 28068086 866547657 641516055 891132380 277383353 459074535 603454887 816462438 680160170 909174886 887419102 987832996 489203170 933657094 602496455 917230931 578448021 975786752 516330899 859450775 252894527 334489415 53131806 393973679 654892586 827964656 386992076 596158234 920785289 924375428 645239246 687968779 817671922 908881205 952815175 990498973 675246502 951120279 6814500 30407850 39390701 582642223 231673943 455906342 446807840 666263257 308339578 548659460 154725404 887160639 284720340 835023428 670890737 741751892 530132674 551074697 30392495 485320194 297253701 555448111 568541003 927859387 404044500 811068322 434521663 739351632 251303241 264075802 3348309 26764994 888132342 962611166 253922700 293114393 691399441 850391071 751696557 812925091 392942111 602889439 700258390 939710323 622535268 864475596 285237697 746125053 502220665 734384903 337953753 356402233 332466347 428154757 755607242 925871118 347453865 995125001 910486636 919809403 220375573 767205958 388836620 907965194 772312210 961066144 793351117 936722820 734902022 809854543 892771111 903988394 356384135 727720224 766072111 774990425 914594556 915140916 648368124 855871700 961128931 989837044 310945239 751288747 216920462 439354587 877323906 901639394 519664272 719421689 123601302 539090915 695098588 935097942 184534641 519699704 295053463 398154491 238968120 621378372 926221010 995618672 858719078 860826708 501706487 726490061 195630652 803050278 708255105 872369626 278400448 310543930 253686423 889963627 151378954 842251731 554493822 925450469 532491992 566716921 881802846 981827173 777907895 805784339 365728637 868469770 325980474 996916545 965957269 993987825 663375053 841700075 193308223 345009002 38366058 927575383 687356328 987354080 796440222 856851422 695402677 697613578 583925075 756776054 257826705 727419346 69274305 867748337 322134643 616012174 733654503 956283446 222502786 306131083 773558954 898800729 712419772 844541518 259218280 524488953 218578037 839060009 409344824 994357607 972804983 982924762 37085319 56343682 142714422 254444454 591105679 914280507 628040885 750451894 540055751 975704475 352401498 936708926 278882981 321856226 634844370 917841441 51545630 501037825 227978495 935770619 996900859 998871148 981044878 989504426 130790959 985883779 262836127 657255398 932247810 976482055 27023236 977021326 617261799 892579457 345367532 867315266 397125369 874863300 272850590 429836991 646473724 681365424 759167013 954384931 37212946 696686957 344092299 905846314 818916479 931398466 959796124 993954292 553356934 910422328 21467311 74207829 939345969 970625326 994516137 999237505 940542767 952631591 931654553 972854342 450622180 621514268 110784752 627574109 697257769 819856752 330697337 955941283 746720725 763402370 963166048 974179267 655749860 821533576 608147462 807514791 603354255 968044629 557933470 578845468 438663467 604686123 500435316 649836168 2976710 228862435 973997630 993866298 52528662 414579259 324957046 957884354 427883823 842228582 65855309 278610676 359871483 559597441 393062379 844444900 721785123 770099150 743089388 836958001 499167545 943524626 358700037 417603228 335471387 849201424 850264481 961097938 50687975 426887937 520804270 768015714 759115289 956986465 520858986 883759937 986492417 995051832 952732250 955805049 524762573 667395238 494879849 952367231 762958702 942076079 109830358 470241481 50604971 232566781 986935416 998161930 231793052 335298923 639173439 942414317 159501574 484668491 541296570 671802240 707152608 812386124 789694709 859485244 275120111 588537997 571371312 926665659 572202548 580434234 347182448 600353398 755247018 997751278 874220693 971321591 340102587 589448313 352344629 794596170 448840588 569267057 871710201 928592303 784300440 894865751 920918966 923263060 404417654 747083609 214641924 566675170 816416503 873078321 524011877 986670718 184686339 738978123 883971916 945902939 818918356 824857871 876038155 957241352 945530145 947524852 510340465 547773464 214216720 674058973 331917547 810421038 882467012 950241095 163748543 664701343 211544373 937131702 806182809 861706300 274176750 372367633 847462961 983704093 381357464 876298319 939721872 962198749 568096081 704028087 194996655 844885042 304150309 642815677 45488881 507106990 611112596 713286725 120232743 507044752 972597689 990463958 152676263 857398433 205213265 940021022 410037181 689462072 125280156 200639377 98869997 347090741 617264058 868179515 486175244 840558952 581333823 820804307 426938134 748977204 906880078 920487719 315860796 840502111 513876047 684963668 862769227 929441859 446334282 788218697 146805545 407577044 768153015 820753182 710762336 976213117 909440705 996119437 699448397 816597292 44069810 297091847 797091210 833492522 348639062 636573501 55978412 519821433 728204960 854390446 655652146 704748588 326545256 886314962 454528323 529252564 511790400 902752513 219853837 909303903 851957209 885793917 421775695 640999779 865240735 948999884 866788170 914098424 953861215 996656102 584662141 655686027 27999716 786093850 705672236 977572169 166812660 607514863 681596552 789677679 180927060 860196060 110351434 474193326 390610292 506662737 41691646 49560277 245232864 275657843 382745928 730525980 668310050 877033404 884469891 953760232 616064527 621303102 965305885 996869034 233364600 339600723 964294825 968610985 864057106 918044856 679641738 835094114 326815896 892979657 368698390 936097488 466833356 936266831 818963692 846446161 280057982 684654222 823835345 987047103 549338193 652258724 941435027 978420852 912920554 923454686 797670383 955846490 641218880 857177207 419986791 428855419 248509256 756889229 980333179 991997983 752235177 889689145 516895647 941636160 662840586 929181122 300878955 680573062 988867133 991776582 756635772 911459876 870003192 884120436 428037964 770843068 238504568 535410449 449971458 823396581 527366815 944993308 173534565 336213503 64667054 521433728 859626801 924028237 257155868 804925119 910753145 994411935 955386083 980456945 719378677 799762637 368381423 531806901 222098026 258856588 335095261 557065569 208622684 913320755 51207351 506080666 419116326 887619597 174302084 462732766 894867988 952747737 373505564 531672052 969161662 996092171 654355549 666855069 158944421 941437903 905412376 993228573 977316904 982179717 755042701 761425630 764953813 990241110 577980946 696909215 956225880 965002768 580070414 607279349 616611402 731931770 718616751 931262676 950023334 975303112 203853261 946733458 180121847 960025148 245119982 827689348 28355684 66820555 960885422 970284279 304974095 598225038 2612947 759017793 991694296 996591900 244957455 599717890 377318261 425343681 805446349 942289968 888684396 932363916 660675052 673351282 671197422 881795922 758195397 931070837 368201196 643980305 644492193 770371672 292120875 837425619 37910225 851579021 548519176 627640049 680639642 785611492 234588668 242421870 115728583 377349714 531715851 799535769 452378323 599478262 553432990 665494905 612153754 719389552 897311646 926221284 425981802 994699448 575388633 874797988 800876344 839440517 722207848 828441041 355518759 384481070 208462974 847950437 401562858 990850638 669110942 673940336 208552808 680281937 54558779 200730978 150264595 444168390 965848578 970931708 873474585 968843067 466715272 794549782 867512456 867656537 381500272 691465501 27633982 609179228 578682924 636190608 735727560 905127595 646596103 671544788 770754243 830167773 950610245 982866195 341002036 597285703 611871152 981205783 452404562 689963937 568359334 989521375 87173571 891669967 892956877 966650925 6787850 111994039 966165425 991580719 854854241 938937494 427481097 674138290 693331022 725474310 510399535 860860181 438152459 664597428 800862103 997412170 287214016 860491951 365341371 483420971 899909315 908762605 164779956 977725867 881975731 946624228 188464472 383272528 655909154 945353641 388689347 444041190 517040132 594145827 991818963 992857597 941288972 963592532 818410023 952451681 93790811 405681593 586915866 881054473 876748866 986630732 864410448 976576276 884561026 919986476 320409073 487557882 336152564 955986384 629212085 744269522 752763254 774580986 222115373 478342938 516420240 818051182 263618231 730808621 862706090 919182430 344279136 602110621 164610034 582159477 479842733 733622373 319329431 977439435 77726343 655091331 636771205 826636565 3179437 950707294 594451464 722099692 463026726 732967810 451865341 744808193 181635530 516098012 382128156 778972901 446877716 594388617 117226347 150111710 186717929 839259227 798903416 874542380 648903665 784390855 671520708 934731456 651869685 827790081 994065285 998498362 938935537 947989393 61574845 462087300 598023933 891262850 511962473 906405002 559557923 887677162 886048454 945274400 551811739 653874109 287871072 896395368 599712443 902798791 993961478 996759145 19248164 467101131 275342925 849951854 518618848 719873774 175555095 864675026 702061206 931861902 428908549 844650462 335910109 658307177 375392951 388208401 968078356 985120862 495549371 664290288 885386497 961001664 145215699 499746838 305555272 951610348 945592000 947752079 596156750 742523871 377271517 567869394 717165041 967924769 16627217 364956630 444969605 551433567 814994848 849452449 182438700 536237140 737342491 954534677 941316376 965227514 819801532 855957692 956237651 959369427 685871994 994073568 319749388 733982420 402931444 729637738 50839777 331108587 158374208 382081301 318247504 381676222 12711032 922348179 24860186 713980638 308480624 782092543 799930619 921697139 632416941 690332606 737526754 836344406 149788364 715223461 342921931 745848960 642010652 994040538 384878815 676359017 91608108 193936418 694744714 835408674 242824789 766161392 441738279 527047431 541729114 622605116 199999991 362292289 246457533 986224575 403567818 484640956 44205624 149832021 110046439 715052257 770959974 930045203 493388070 901285204 226958052 488224623 340770539 505805518 702017313 933582809 257061980 439018480 284659933 953888775 766304684 898226363 174642353 352986110 284891673 419378601 737964566 750779862 535175081 793540633 110264504 348598622 63030498 781332450 665664061 758729965 306426013 544557722 752196535 786785237 63159664 610893424 141736582 535630719 650932951 960589663 154685722 163149998 343675562 699589025 367701774 491240948 43530025 138020805 290014137 927584878 81142974 140330544 93775601 335119505 842101211 986838990 614775874 861672208 998084132 998491852 554846652 632075924 665886200 910117572 70211822 966841913 923971653 990353250 823864600 886570367 372147578 540855567 504493981 980534087 853504595 897819114 518271985 700451299 208070883 915156506 806619999 845374627 303864157 372126479 454549872 829926925 192415404 217396730 650047547 988653911 190506982 937274143 644344710 978338220 129926566 914816342 211319239 705009559 354576403 867806666 749711551 781735564 782486680 811769153 567053921 734667388 710356962 819525373 836375905 867872120 893437808 925339413 536216324 970185488 235018645 684047022 926137119 988987686 86770327 122442302 740968313 764992080 725547941 776734154 689792460 978173235 169442298 500070712 310426892 462519638 533952137 673822817 124237488 226595886 69252591 362398794 408310057 789224772 929893382 966446804 200008491 725131774 541139416 747018903 752826028 982781759 540701068 855226123 795386781 957597796 889643954 935155934 453092453 562061199 876780928 987914532 709966062 754599831 261293770 566726371 563137406 685550162 222336193 331252534 596496514 838337695 700527826 928028433 515319890 545600883 927892690 990104196 259342707 975692966 213100847 249826881 516136345 864937029 549751298 845536805 591665706 992897330 750138637 934589094 429824888 891446670 560819705 573365026 221867405 628573453 672385312 917864282 208642712 705267881 403140570 667312209 945719718 990603769 442274505 822449543 714460745 912509178 749361295 888016168 33492990 784116668 336172012 611527070 456586680 559979519 487830391 881327223 78168697 304703760 259888103 882504038 492758966 945995121 869383586 874951795 30776581 866409354 429632908 549707377 278951381 793173613 6961556 282297515 142383512 683575559 649936769 779446499 201050241 676156540 45460443 481950061 95355786 406896622 343310162 446023328 558430128 784174327 649405404 803104577 719811526 869264397 815727224 846635583 752360147 914868862 184609432 953540150 987654399 989494260 688282017 904434188 314006063 657207364 344189881 869596197 875973256 930714158 585912214 795737458 241012590 564190395 322222121 935362662 888737296 956384443 869092460 969105503 890430828 918025373 105982905 131587631 208295600 907466689 442485015 834650433 79772622 177057295 989969538 998038677 488753358 943617547 490040866 663540010 642622707 656553204 630969280 661304157 724240910 813497585 927101431 938534632 645044703 765638133 618672302 982213603 237876553 305455050 118050466 132509995 314727893 780583053 830694479 917667407 526902946 911468284 764843750 974625053 557396602 956971826 416640376 564695957 766381813 989917263 773832409 919972520 244061172 373380325 266674841 794429507 829835611 869576293 77529969 848130311 562241497 627359294 610032556 707370651 960745589 969003755 256647461 716155470 844566168 852069738 951537021 982846466 95081282 778490675 167990351 298344168 878421307 916150454 689670346 734753713 594290514 640630340 624417072 649565750 168282702 616522495 945074730 966211966 289312825 947967660 82235411 243902116 870278672 937224870 560115042 997598602 892936693 896205350 101236070 351729927 668254888 750698393 442242951 914914295 789238155 828152983 76139806 833436307 437290015 452668286 167089162 179398268 474506100 914692887 876772299 971265783 969319722 979525537 162294548 707396656 343828080 823290011 986776308 993205646 979701150 980462578 308486769 321433215 81723096 954272712 180712152 791334606 756683297 774362655 403544931 596665841 156014914 452149086 50766120 951226730 549661629 614643059 26715813 592837743 462362557 832036761 364027602 799074629 772699908 786726799 150576406 873505664 728795814 880097489 550062404 958753397 912838998 921772812 325629255 632160903 154880490 579404260 17062855 763424319 407406901 896041475 979502766 989378532 536269854 650723943 653542737 686094212 483364372 709869417 288624409 670724272 282091926 451590076 785586220 931134927 870592233 971214574 801065647 910321983 816824848 924447568 37174395 87270032 979834921 980585458 137194879 720622299 868292530 987701595 970733173 983842371 730285806 945973439 528455883 575318747 971579039 985240603 494263697 588955957 697882627 716607245 140511593 979026775 704036277 868100571 46334688 605878791 225021505 603952354 368405064 749388662 775238910 950464933 82868925 942663845 35543239 949091535 125844545 655943425 29542345 72419334 259035138 713263783 651406751 932423431 719340080 937256981 724396279 913042799 266098585 637641516 959986454 992661172 646829077 817912906 93545455 900053144 32519770 130826323 158999666 266415617 142867025 282945889 87464084 490059183 663927113 886779425 475154137 763863280 968866833 991255329 786274112 902249606 833153006 935837952 518677845 539615648 754786598 843307610 711176656 873924184 472374411 742013072 268353411 305621315 785408034 881963817 235604741 873500373 892272087 998903201 82054721 985411432 368670563 718350617 297922954 529066187 756498819 882363932 951831844 952681505 552375852 643256194 79541879 746095388 520628824 965620941 254639380 840830514 659389171 862449017 124243569 186066105 287915568 815673189 744706760 934331412 985738873 994172000 520144537 824278073 689292320 943121452 201753295 868015865 959850920 984339729 969143971 978027652 92604137 830140970 774237250 888017949 993694418 996853749 23432408 600247906 240934321 299712532 411541811 562135986 652330743 945900608 327129406 662072400 571826070 636021944 290238257 395964688 833283002 890505865 892939521 932406916 159776437 801151094 670613380 757391344 680130260 776512200 259126832 523499045 197204156 848052973 667990523 885725936 593602223 644638453 726286174 835536153 190017519 443149318 689437829 712498368 607529669 966874225 896796007 915950094 422482610 851686138 840334493 855194877 5555960 229940028 108341619 208663263 86225129 364896183 868896824 980512337 63497970 402499320 940073066 991833383 507513723 955493368 377674624 649787458 328154437 536956425 777143235 840847091 382059274 538735498 769769956 806749772 219296810 908648664 100050860 693196335 614786043 981639760 99263259 786266110 734467067 845744740 94354952 875458707 448001722 939326150 144579949 972882524 462022790 604530471 43218329 901377505 802395973 930795022 154536130 274287593 706459328 883559441 880196139 998130745 203021520 674867790 123622138 705801301 487453975 611240392 227221439 353889920 456764777 991252362 749551502 865051934 529599028 678777200 661329750 844675483 182158970 540926283 534827996 863394815 660054183 875722398 17360889 877499932 791709917 865114291 796018083 886937726 462723708 904338000 221261213 406394980 509258102 589406384 348013393 603215662 784022993 798642913 479402421 617032548 692666747 861896384 827175282 967438598 889488524 961209824 496503880 597819454 870888798 879455003 436179673 495615154 606666288 665464823 487823200 740100352 889918182 977505403 847161670 916457686 80000532 457807137 882218145 967719531 917532710 976010595 564937582 834500270 148660688 996123200 497608535 927610937 199106032 552426914 941510140 993262547 92068744 241138341 2766786 850856254 114077260 288417509 49863865 764045582 204101899 369756714 834377106 874393409 521838868 567378306 859699187 887860148 171164520 468988050 851023345 878492272 115677517 840096378 830753188 965183988 978947771 989389481 78751582 708899365 71187351 694307984 169692103 958352879 553735446 909484542 565260658 755680720 132957444 302727297 296099081 615302926 920017710 938230375 37503868 715009506 809916356 976027977 202452843 359379724 941865143 990344323 370276330 926809373 152304055 910394790 872912830 891816567 362030209 997547899 495160865 605946334 382724272 630189476 147853827 612741281 609167744 628124470 903003751 940003290 337055431 906486043 862352257 908733268 4442823 353814392 200930208 437243410 740398533 772784147 340055202 462829430 395161551 892182574 273885247 869055692 715564797 749614094 439292359 729898840 336728133 403214085 715379722 905545104 483312621 497560050 48264984 453697006 70006792 140133477 989546012 993974217 530213667 965982089 888678617 995486998 45795359 828837059 173289686 759944931 211002054 574343361 808074567 985862215 973845092 973906611 733276901 796499740 922753915 929747764 878359884 988259796 214492681 806023252 489384673 947970925 175832670 179296432 186845041 716898627 123838554 782859480 748492513 811307399 758892865 813639848 682613681 791429923 195933670 560031656 994284884 996709325 917665389 938287572 111467961 231913514 450142101 780307187 73766713 77380220 399056482 602859118 755020643 784794242 991068051 995578465 156029171 556707343 530555288 556680901 489319965 625182859 495135205 741715289 683402246 723082302 925602152 993687183 115014303 445611977 643213877 853534433 643030432 923015473 644949329 863337146 197323911 202239453 700928211 852368367 20471968 252751748 373212587 515053928 877378195 884437778 803093944 975049779 623138535 959730266 619442179 707543532 227516745 640701102 969529502 977365604 806890334 936908823 174992695 597328367 131288646 374659961 346314120 591749985 230625505 583556994 812229908 850086076 204115406 951195666 826324584 907832348 780632206 989369450 254151167 721959116 991533085 993862778 6038344 330004990 129825068 985247789 785160289 903206896 491651210 811287083 338207540 484032346 651001918 915322923 775356894 971561675 978883742 985474725 591675085 701573710 889239068 914974630 520986570 668630566 5046469 113449383 316407571 998791215 688527561 938086074 874063467 928910855 65962517 928414150 611975344 902747081 498334199 499688011 254514449 867260710 786905733 814310069 911912246 915091572 970403195 990625563 284149082 888607766 834037936 995701190 115002443 827648450 575152700 699031748 639145628 710120972 759270401 853305837 233870620 651443840 805750854 814163427 182963911 964127470 844491338 992824045 92566246 676373299 370030511 991592628 272395988 709143815 173634499 463333633 724087541 895304591 600601822 933301415 698070848 744510463 737925647 960338086 290363289 497127901 277567357 348548306 658610407 762378670 864652681 995195713 161695377 452684289 480959921 483117195 313997425 849591019 660128385 990291431 40670101 106414017 472076744 907435646 441045106 488504371 854708214 906554549 420382200 776235853 803036668 909790951 168473715 201147657 624185064 632878016 782795837 972023792 658524665 816136639 158174100 893707223 263216749 526070329 129999487 607695995 937357129 952365285 288883883 900455266 866339417 987478599 135762510 493281792 514956550 902011234 913004405 934775931 649513851 714163093 608046908 967911516 390272272 673412957 701257379 968106820 27469035 394726439 657153593 712960189 338997656 798916042 452416205 572552730 470432021 481726180 813679525 983123917 416475210 981684893 703768452 961791134 568267720 832161950 253073018 526131222 105338681 672135394 617281958 877980728 11913036 991183356 232544373 937799695 86615160 485312138 28638679 921780493 739787657 981888792 225221962 437919047 29089074 199712075 30626166 878950742 671660926 961620053 71301199 575758738 971363423 992476008 599533968 694583822 913425259 976191606 399276202 441340893 162684714 715675972 623934319 909449792 869246380 965597585 519117577 771265463 830335441 830729036 38404082 352117908 153404713 246925859 695388431 715984644 3797383 821522358 419565675 684703455 766650216 829005564 845802743 953342826 369074347 634363930 448610803 990206572 797372244 805618156 983098936 990360296 716657608 781527432 69540182 295775646 43080204 256462247 431770079 929879546 71457179 817526952 216968752 564222473 160522085 475539343 950797173 996487900 881534431 924000876 72817122 636640839 430952964 929527808 164532368 611187162 511230114 931363685 808604723 866324996 947592267 998498077 145022498 991371042 747586795 891742979 953505392 986434409 870394143 896939428 762929578 890584536 416798940 595187918 2945124 229034973 648290160 669826272 240629177 347742803 303397568 602734900 646420472 994299073 931253761 959208263 398918846 591910816 227263979 420815654 926465007 994317492 726419872 797487593 388749240 470378020 575382205 766884457 511598870 570796946 809842506 902693685 161653497 622168107 784532446 788707122 389763558 926531933 23857005 878869512 946178899 960751091 1032274 438288116 236500186 334509391 182314314 921544436 827061881 973955123 718908716 984743676 350100150 820862693 320446938 726597068 507731362 778688245 859291996 933354466 985711877 991819984 715287331 922958621 328361118 466311274 893564708 899385541 728021968 915758554 291358677 740180094 54560675 209515033 72186656 476688109 836977192 957505443 286317671 761753694 157723032 561373912 589463220 890657753 129428649 496663847 337900551 347540325 100566934 573148685 830881631 949853140 666457193 750009268 616768748 663741611 988336682 996588525 20710160 232003962 300759814 591013442 445632821 917014637 855748546 858625513 737784532 870792832 172091431 771132358 170196884 655894133 829696678 926088082 934529807 987946766 510756833 631171387 215488800 791567320 588783152 860261437 90566875 766374942 578516708 868931981 165460407 666459185 40767592 514610416 832948116 977095514 119976370 308533370 380258075 772821179 260949304 859691194 404214704 470653261 260887321 680813337 762081835 919508513 747549692 982497892 460438035 872209844 361915945 536379255 217853970 462364779 756853083 949886013 880686919 933868414 534731212 646978067 419363484 455151930 70708732 72042527 662763927 799561151 384037478 387207796 927313330 981927442 625277876 866917916 270326463 970270270 49091959 478777352 491507984 876520459 533244134 924861565 918958675 928375653 213399864 580750524 78247175 289799450 567460376 587996551 220134549 410699395 198570213 822149688 225908579 871354695 250117542 672773061 525366248 532045318 328715859 989246336 34245307 877495018 775685813 908273593 641886749 830467030 319915528 386052495 812490522 847236808 602144373 945310025 611493983 965432342 91039118 512893497 604303771 651464238 188771849 931251608 313546570 646708831 854143676 874665314 910669195 912022153 832422128 843409653 464257859 664123556 589705817 843610604 575964352 808149738 788318191 899553308 809013237 996017010 834445869 956095525 300407773 309079969 813776311 945274258 288045568 514753945 552039583 725705181 236154266 817578924 952090247 963519844 293160526 655992050 103874160 165901380 385224601 928576322 439755570 713617318 607690947 661294578 135240313 792572196 918868551 998469290 302274451 369568683 446842817 879682821 793272254 859513137 885990090 975246352 672376491 985286046 818578980 849625336 28266664 712925124 771831890 953307977 186530192 968100820 522426862 677624539 301529109 908151725 935280511 952317960 923212420 966335815 239429953 730498742 849714909 987545815 121819977 200396607 251190168 983035442 101367667 927203086 407921879 860555304 31326138 133802406 988453700 991994062 161125353 588475669 344274969 758240594 107731692 900805704 327838573 507739057 253421415 516854775 211731432 727001995 899670876 972413618 369280257 985785879 894559013 922695334 397684413 488592987 547715338 635284503 592173428 989645598 309365656 752522098 218217613 822531970 899950307 920386515 442182393 949986268 731288806 822070992 360825408 959241065 75462053 270695403 557416624 692627477 974550458 988936588 459923934 810793900 420064915 497075934 709066213 980931361 685579038 976596254 544301509 970464451 156158942 736945232 210546163 474008043 986729285 992346637 300762957 721624586 944313564 987504700 77136613 797540267 685856370 905144478 322151544 877417131 152211968 381659163 96421337 549838680 314756141 615679277 566979896 985946538 276599869 540240768 179938786 325532193 144820775 891529442 579800976 658878060 901425482 931816168 357363827 824003947 50469309 68973897 373945086 545269456 991000980 994293342 885508408 886651524 504041121 872523222 297583601 911409872 184812735 971046838 326494470 512893610 527754817 708469838 942237317 945141856 866522612 968025243 170754668 367503585 127797924 994629219 778718975 793743517 964174636 987662729 782462545 936705004 707885198 914707417 205758443 424024073 114996646 126863416 269644614 712077379 213427532 809285198 82150391 295236364 75277528 204571816 887126684 955000176 541572466 650397350 877079352 921346123 591097904 837626899 688188179 809842817 50781521 857915619 221492501 473060708 837470796 919715818 4735355 848086928 743955135 985715156 674779397 707729808 146448945 369938826 652017677 932801325 156418423 989806159 203059629 873622510 620963387 798005312 295783982 480524841 413882133 826191627 692261409 825829890 517389600 699325963 584099176 994797116 900459358 995931848 448443378 527665731 735994078 894538796 221529816 377224084 350114756 739583403 892820717 901327653 632662849 775880775 101754590 885999632 620127181 945850360 237402623 793019598 48084183 907133884 906976495 983495187 216653478 605203642 473278650 670822850 663670570 879166911 626722280 783922089 716894994 802813813 536107784 972792473 156558750 853612616 260654381 890110914 872684908 984308441 707156389 826276804 64373339 983018303 539740679 692508646 832643763 920504980 323545093 618340246 707566727 774257363 119484141 531553488 189664189 320063965 688632426 705962525 360178050 921770350 340738082 660770707 158785960 305546299 222982702 668559373 686122511 716792738 201204641 786054657 325810774 832322025 432544294 894080673 631674031 742105299 880358970 904990577 721063719 904422073 353088021 978551945 388383432 919611022 534035557 652603027 222570045 385982036 123416645 224301096 506627966 912013438 453799816 602708495 277856918 852304210 861732505 975657629 361234895 876740201 975798876 983986308 350165321 581448243 48636975 741968540 759033658 883811515 769116246 894674732 163260791 661763951 285738714 583865971 408508466 875254344 903105215 980567115 144569928 258004908 756551643 956506230 319968046 597895104 549460047 829881311 338487661 754530391 476113748 524301127 862648390 895464628 187717319 777882880 38466063 704603132 952572901 960272421 744656520 833838674 2609214 462916606 516560685 577686661 277321326 776467346 834665553 921873511 766181061 897686099 624320840 661745993 427264712 706162030 99577006 977823455 415944547 813530850 120637599 141913580 204593032 585465061 203437459 598900905 824333408 866077646 182658479 750669208 965241626 996305101 219165120 373351482 686468538 881063064 276859778 914237641 974207252 998194329 222243362 588312441 788256923 911244499 688466713 739678489 745876597 971236134 846134268 862897307 388365087 687258430 220058451 636494413 415132505 487364685 475100722 786683521 155324284 350461320 495727295 760392187 96804119 345007435 938953415 939403885 676556894 872197491 939576048 986073400 433170819 501874431 977381560 998374262 41918657 499145129 437790684 498124427 901859791 963509217 512607735 532740740 699271187 717412251 856936164 904874883 622435261 974122218 731075242 865095961 602703311 771874902 405213512 531606533 687706885 985024936 34965968 389511870 231065122 893863295 610936175 806809889 712241493 832882152 65408721 735229237 776218908 783928605 90019797 171540282 199369550 427294950 211516868 749854669 357533731 374970923 897528790 963459073 200330454 714357421 608785066 635659325 890562770 965077872 211407094 354129389 149516479 583411256 529245586 685185429 285974313 404026371 278489374 898375438 708885605 823710542 881660339 912153719 563683387 900116342 370120246 655523565 518082858 920757875 729127403 994623872 615748204 629114747 192083911 368885284 462094173 996399608 653247117 705075014 477636403 552805201 650786215 684916886 183491120 952356842 744973504 927732597 748341865 775616147 867950130 893195233 564711755 686888354 948400115 966438857 608495697 765484734 487643631 608530160 233540295 681663582 273108121 716638571 453655674 754948079 932073476 992147368 82533314 449032038 391177670 629521021 298922152 858692495 547585979 650437730 846454027 873544416 729684087 891405009 497415366 972101866 938039506 994872961 940541923 982054301 753985064 765233834 301045854 692897591 266417322 390651601 764201878 826389722 54968181 476211769 338039108 927268777 612105516 642927527 624874535 670133777 179402632 217378362 705839767 928875893 302204773 636696449 873374450 962603406 108278237 782747358 147623838 726723531 327550411 587010552 420332500 698937951 107434559 355529602 880531373 973964591 416878307 753018485 787909480 990826219 698324609 946037563 767492512 915848433 767064412 984158844 382902965 636358854 295032329 805802487 802536542 860914351 152475412 779062316 636265156 695519980 942456111 981207626 229315585 842399577 892244837 983225393 74530166 342951998 202251318 546578660 3741441 252445029 625552656 826831978 984443771 998736752 910204936 964832466 215688048 863664490 155317844 244186452 736918577 756288322 697291761 803492332 87941399 189510768 861808189 904446555 657135543 777966750 416690449 712482414 330573162 567929967 753877476 853385168 499197530 804607165 148293952 610161792 929851176 958729736 512875873 609770552 519478942 572582708 153446421 668477517 574033659 933578094 375502430 821726266 719197497 943949685 575902338 763374149 51438856 93087284 792265821 943930821 995462522 996752466 739515385 879098720 616929249 720846799 475018419 520996928 489523703 537070702 893999048 919302934 956075513 973180538 755780084 819112102 639601477 811023171 950862052 975945845 303228709 811421949 279034994 334536902 911920244 963456515 928397393 956299937 139537058 652786081 476180434 594808305 905765566 982956300 946255481 991855464 243135980 695602384 138148737 506635980 787878683 938961958 194975560 600539590 263816649 558650724 371231646 462253507 693130549 913536129 47281407 699598073 103827550 534958889 549255157 658022466 743955888 745977876 30431251 319209441 301012990 619457304 144191989 731156341 615931473 997615324 439739119 825243174 834191624 840399762 916097117 993476723 684599145 853981495 225921785 838223088 84818941 434759926 458922610 845524739 77504240 630459187 385537623 649314340 682182459 972676743 393482928 431688906 991469953 991851972 219734454 384920837 551412230 741177745 243681332 746597315 507429327 704025669 351023476 720829979 223433270 589314175 854579970 929547156 60905762 858016591 341708819 861090954 20651008 403642627 62469348 128361657 354673876 939197595 12841829 121058499 808004177 922868798 794104712 951341382 495284919 688021734 322726810 637212227 655687659 910728127 678372246 937800662 817046210 975159993 381217435 627164207 851068290 884034825 23073626 709687569 868839733 871693966 669432466 698201482 906027554 958303452 37325471 635460491 562271465 991417279 642666174 987487068 325250685 993824908 402988530 546663529 687569692 851568837 42571891 88612805 982126878 993608833 589770724 634418421 297804075 457331102 791747445 793651849 148555091 562414697 365825891 738609855 559393705 856857724 786842715 832793849 162266311 496161842 95421777 124257618 621081076 773795866 933264234 971918545 84611873 419140461 273846078 359577379 474211609 479884144 271991602 602544635 498145514 591815408 506486103 883148466 493043647 649088652 888621452 948701038 494402787 759622884 286798729 852210343 541499853 856377800 309912083 896722072 198841271 569489637 14821264 168252677 773102728 780123667 992293414 997730593 385630004 574966549 752196212 903416530 941668621 971848924 450615527 875685336 400606107 845951416 348387952 635990773 42425630 218808291 974240710 987008579 96149104 816023535 622506337 747659175 461962763 807521581 769808321 957500063 712357072 860691410 61024127 203393679 770694937 990161888 739361797 995298628 60330563 609916757 504433909 952673004 272781458 482842549 674463682 860557180 519848383 965490585 253273074 910373066 525108360 911975667 485595371 817805700 269537613 701446952 824546156 880724249 815292578 987219011 809860398 965296476 615780942 876083333 948087175 984485603 521992032 815290509 160297008 575523576 628809239 673387088 442634925 946627166 462735766 931823702 323423903 439793114 363850547 393613681 384336247 657423253 518857369 626928013 444312646 543388666 319560693 593116645 321981338 563868249 294810237 486670687 906208489 908768786 23268669 566893441 874157247 943128298 588816733 662965660 573940764 819848656 299081617 358243262 802713915 868360407 109690869 456847215 47698077 480565459 284180882 341815426 414323770 544288685 998291544 999199256 482168229 617292048 683563383 778464642 97188682 714919836 15808875 332125790 889308514 984801872 50614321 174919403 267637886 892693823 436561195 878039240 109509572 940395751 22414416 804370017 734133762 896896206 890247148 947107815 463589189 962778727 685789946 919843713 127484408 300424474 970350736 996985304 434778572 738762598 600978187 746125938 297087537 571423645 523636554 849253292 535461532 796073260 973997985 986764497 301906233 928710426 830641843 943012902 975384479 987804800 124804407 902249931 440010100 763659522 131973746 289675894 569471432 774153972 883130622 991517236 507843750 595458029 383628901 832974524 915047748 960225633 107139341 189045428 32552014 586926443 487926524 857024609 952729900 979843508 343162352 419243362 61740769 391914624 909521587 968762770 897455206 929902314 15933265 561171974 654357115 886030394 971002341 979517607 257907263 834412947 322041552 559074521 136671988 800500703 637476543 693149487 585625568 782641998 468774365 634540190 213741605 846601855 776857852 802149562 331473176 921628025 378186347 951219352 516898286 697303754 324596900 606040977 817707278 873385224 52182407 329834975 686326033 932612980 541211348 753957469 580393070 791475197 770493299 995502910 236999549 826826674 761322491 894186580 167373432 677692914 647487456 683838954 990985207 995887014 242856675 922870852 968027589 968534060 574948767 798012563 533910116 884409666 664680030 906056020 636874638 920639363 748556722 762661748 633599545 851853366 967403352 971692310 303903204 896708637 851230593 914075962 266039891 479279551 322544529 485875865 668250355 741225955 38794129 669284209 966220558 983385490 1502941 634336237 713705972 841040780 120133206 606975210 204242648 645343435 500257883 779190722 744857253 998809031 868473761 949852382 638027899 786848177 889246736 994867895 201203128 383500223 416859608 885576615 973376815 978201989 228231496 403670417 69007249 165844971 567209668 657654591 182096900 541652190 444602428 779808740 84333961 427185862 618350697 761927835 240858884 293267931 858602396 896311547 920949770 997569770 458109226 879553174 580526843 582907785 254383560 342850672 49750506 845189091 394304009 851270857 342761109 578750613 156284769 597570412 669481772 705934381 930218196 967222505 181178051 338023908 378907322 932445412 816741139 994778419 94213843 489586739 761861485 808925039 193040328 215560994 40696392 969601952 511078376 910342226 510862535 698665073 670594192 911324056 354248152 512124194 57009280 224189572 824927470 914054059 956790744 967599493 513922876 995462539 731983886 799811418 982131507 996731061 837117143 917866646 294729222 893291460 803129125 948769619 683730983 948824499 329692349 658474329 702478229 872143153 530523109 554048441 627591163 957599148 889893766 923116343 499946415 740614081 342486382 683795064 436016311 723867941 497896111 823201171 443575237 959405375 970907267 977109178 413398816 890244150 902650864 983577996 714927827 996504036 745022230 943029872 568627014 988938443 268446368 750604887 384612723 419021700 342512955 722213848 833370149 970483443 787717020 831196563 425987193 691293231 896640767 959525677 422152330 435805329 848144562 966652709 965663489 968412930 266949090 899855142 45968290 356653568 162371310 621788379 847719376 940980155 971811572 978311438 685339960 867797012 806499572 985895255 429610958 681660961 825152370 830971809 789956167 790606063 818940686 866117062 238151204 830063445 405277054 630959295 672961671 943388401 49964262 450801948 33275796 620686293 405803815 894806622 718682570 911398257 269992987 327930366 559922326 933794636 570573822 969118771 487074939 599847881 708517046 871685321 571126932 866973396 366382597 846243037 354600260 729154224 328056852 413969074 403687753 624369556 294430111 492012276 482325692 511886142 983197320 995043112 137880839 669601714 330925358 978794033 968629559 980152232 437052581 450488428 480946133 840580243 686188679 804647246 113200381 651850944 696047897 968660193 877206917 972342170 196755257 304692068 118247450 757370431 649634218 971344737 566356998 801247226 522556771 736127677 556895247 659815708 97241021 490451878 456822762 596299183 183288966 203748069 313497078 507092136 899631794 912287467 221402706 925471183 90078087 440407053 747886761 833298668 788787624 956795079 213923001 984458632 158212521 915732661 974857165 993607630 786549065 942856759 117850928 659733575 501103111 642415751 801895839 991293714 221196355 668363246 641862890 882592347 221934708 377869004 776771412 833009288 245994171 350361494 151771051 937020191 741735889 847014176 771833905 787513378 769757456 874121398 914362018 916929606 897300637 981050758 667698725 809673983 383721981 819489579 530011842 797991017 16443706 750707985 979574456 988866502 280884413 711214101 838766724 882538833 237547967 955668139 367906853 770017902 352781565 783260031 324977112 963124077 648889487 929563677 618410976 778438101 446727858 726101435 888537107 989357301 537993579 908960210 664451287 795871195 569752352 603014107 540125550 632019759 557499006 890723588 908652782 981844862 900611848 952769813 596514538 635908876 731505618 904937198 868907586 905511499 302423340 831173115 279144189 863699588 617514628 893005454 69062566 474254654 626769981 738576320 50707755 188514932 952991118 959230934 251572907 752403250 515080684 827635564 499902160 750688004 480793461 984291035 453652839 973452763 129920042 477272056 139108189 806910706 442468567 824698508 808431073 882157661 488707351 730185814 199741174 818725202 919967880 982450884 658502752 877386662 870484454 991282727 167815599 906635921 476147653 824521180 167364656 410396656 943531752 997050035 934184366 945618195 515702931 918587368 229880212 500283716 105868965 134304847 572393471 597670962 389351653 641240275 173658349 338954391 238265625 808886138 284336031 996515316 296870576 906110736 512084772 894942580 714245506 915000791 807083394 862814124 979000106 997721893 936870034 948434441 374909819 673968830 274983121 881770654 510539100 777918055 405410256 722339492 775279379 862727923 424642171 725944914 30810325 290356523 622287986 883267939 394567590 601208069 688495622 950616021 512511776 658243894 20447644 662458713 310882359 441662553 663458939 888561847 915005158 998241618 145307824 453382156 915716424 922554907 894070155 923385540 687365366 776945772 645100493 729825829 753246899 773866583 306395245 911710296 890593858 994868964 534492516 933864653 872146298 910459885 504637635 770620250 231660252 868259012 176871537 372413980 612631798 872176313 752053316 849522901 293918256 974092860 339324958 526402717 550330264 975017053 505672630 989884675 244832193 691972478 782183996 980238048 356336728 441536563 953352298 978171986 691911453 824226123 837920125 932914803 485228578 860793646 727629553 877312673 966698373 985627606 790059514 973310238 172982945 466846594 445147139 683557279 41917758 813795893 113420927 573536795 132766703 863563675 295711080 664821681 774107359 792916930 428325711 428455837 37833924 182416524 741866980 993864553 702445848 762763885 52035245 128386440 438829252 916934088 41216319 981560005 910400361 922566415 696640565 972210026 49797519 116529857 86984925 211287955 74288979 803728133 906082118 996682340 259563878 476142245 237206675 324436493 86322061 262431506 525089910 646363708 456585066 624343557 785219374 883184155 208586494 693051471 5380577 907273621 558641109 803461768 985067415 996712107 724793426 930432306 421665326 543816918 318018897 896808432 125421541 807457152 400506805 979935374 596839469 605448952 643623672 930836866 241380880 933716162 743574995 990575950 736637614 766651247 912635231 975076124 89560805 170247262 23271351 329526370 660835094 666673056 431280771 916282741 317412665 991869931 842931080 886522595 660386547 793076589 763142217 879897314 99394351 114980779 601050673 629106346 799614279 821984654 417492671 837641381 965093153 982574713 359456605 959868190 414100352 419484960 894631312 908289869 906992397 932941105 876980302 923438699 603503637 911364301 710950647 821336794 56181252 667086887 753128472 904114788 207629950 648033033 411521047 961993593 417114576 623445710 351590677 456470562 48177930 134633120 563947633 994812019 901574562 973571427 926542945 976233109 691020359 930705945 429722646 783794144 776599584 977992230 706394014 907059642 391129914 635232466 474560743 812817849 657425569 880571722 543172683 578138491 948658617 998916520 400531222 553056583 284696320 754004858 125489810 289601796 595408886 705350014 90168083 558629167 228686184 808764682 43324275 640692309 3203467 951089649 393821706 665541612 329025164 796461883 809344473 928300017 871111455 956480351 219138016 299306508 129325257 599341932 350984602 897438697 653101261 822134266 15050575 58215259 552348058 664183654 397100371 699109293 136166945 303956708 934701869 988870955 564097642 891225432 698376937 715416682 769312178 785886361 926243316 940610960 225169375 681492577 183179039 562101813 767776429 809302135 255697870 791641360 810059359 849204767 780668252 804393934 629766672 716418800 744836011 764223440 813658633 824991536 454381676 577093756 648310678 673837630 259335384 281799391 473067065 662204947 542684722 946291806 676850264 719680196 485759685 692198909 635219102 781823611 903260126 919033657 656147159 689804882 786535728 987618171 273232030 923853422 136276654 837594830 713362004 834825290 500370694 805309480 855027794 924041692 973612832 982091181 194995524 576317638 378195121 737564738 389971223 706671832 300234543 738253816 775487226 807810663 83854562 85123563 154342669 658473747 26955377 290253813 420688718 710547725 48610699 214911498 283153670 373054022 632929593 871168792 383807686 541681983 614266342 663182858 169976180 593705013 749893304 753913201 380036182 545186586 873819111 984751504 616341900 726013035 81557599 825978946 273109464 594447299 774392525 963681531 739398683 798818370 169758061 180750988 841612322 943153444 684720366 780637902 201296297 566823376 749888973 843580068 926207573 980423729 615470024 734394298 165311902 430603945 542557088 902055578 326760353 614256454 500489648 504650017 830270715 859588479 31896601 918497985 888941705 951377655 245191723 389416700 525582884 746535879 648422616 857772711 14255066 388961418 127781914 337810182 173787644 725777419 585118 966223468 636619633 926008366 600579085 872330400 34195908 207193893 831642522 950968191 386212807 630903357 853278265 878630172 62565390 790876532 117783974 738303552 63991941 256502861 757476714 895060103 224280275 393091634 544765868 993506854 542298058 687826462 580309814 928548088 750450063 856734114 29097462 275054002 645031673 787101185 317393668 435536717 711051035 772169736 95962978 751184720 22084677 43206490 907596923 970781950 29449732 311202648 677519477 943297892 516874366 663758062 647272472 801548900 765326781 830883307 550591532 586153486 508758266 735892222 399845990 882126213 96205313 200253251 660385183 885718605 903733527 989759055 196623577 828686260 742986285 909404484 774704717 989122638 217680891 968470228 149935807 222807995 112998699 156931150 607897494 882920829 553496233 790458953 649849536 887422446 808324936 956438766 789525443 833879082 814864297 820731193 871117363 910597695 195896622 536384191 873492067 885239412 444922159 747320777 520892473 903423481 813307248 872327223 831951550 906010370 597714998 801024844 419311909 688200752 590903448 616416857 857114533 878318859 108123155 865911711 501498284 792513979 28871599 198559544 17690048 340441786 880590092 959640008 227524591 714798667 898355370 972336082 764345916 935257361 391548727 511392366 234648652 441887742 352251941 886218600 334567268 620876381 69594678 387252977 959703043 984137053 665046350 803327206 625621597 665097914 697249230 934875941 816019184 918517191 522105895 718728441 964793546 977633558 846384568 999272172 111435956 754493528 837127438 908476413 916013883 966691492 144652833 505107240 251121790 871548135 326620930 834257866 360591136 614101821 734732274 817284961 588137681 766728790 631278449 659200058 457242021 799083779 933643844 947207525 185503378 348421456 134327342 706841073 254413917 328588804 832414835 993611065 677592735 772685585 90751866 900413233 369017181 378002531 752608220 980806620 810379807 918448288 408422325 473708688 496996864 901303960 805814369 826962630 659718904 989677733 758990946 962136829 126808018 614453427 970138606 991188433 2060282 556831576 705398456 907778976 563352225 689177663 998864063 998939461 989374160 993225026 864009780 874759027 295973369 713981941 607355090 800542059 487998932 994200180 657683749 847309877 750866989 888869133 636893103 914476540 536871137 715424375 875976912 893205366 829440805 911530878 487768730 728840820 906154278 978855656 734670895 963298036 88926758 754666320 636338330 878670596 532237374 821688240 848981357 898733034 738372819 842434400 978441274 978639136 601133352 896078226 725635990 786042000 528323753 639589768 817988290 945024280 712723081 786702043 630371475 635491701 44647884 261014165 891649030 938067391 406099277 820136825 105872374 584902133 612531820 768730966 992588733 995929788 454302759 968818047 827712693 880109896 678317625 781660449 108157657 162927206 674638791 926425309 251140338 732178653 224710359 387963417 33124239 707357181 639412269 692195760 706515613 746201810 40145065 449318621 185798364 410284635 461457504 821692590 184482035 405107445 546928283 690700236 392756144 481644531 66714245 774220649 642199378 843133681 8932298 502412919 941655855 960425738 617303788 818280719 92072431 120481010 771589904 912557774 194104830 428669583 806966592 965304208 715919292 794281959 111998683 692962276 723094913 863185364 115045272 619159662 598258941 823747442 217672600 270942895 315794539 814837483 551839471 693512794 12742485 194373137 791408913 792449211 626829335 931260992 192336053 419391673 552621177 786045809 317297118 479021325 381095029 817424878 591782431 802734704 391848042 507560564 565522836 598191871 534188420 556409197 457226297 575806867 213723608 578540660 995715332 999298095 695219095 841916669 128108892 950881551 410245124 647468857 461165291 574426698 814585960 958112540 494713418 660440713 785050865 873235875 487386905 617274841 153703149 221775856 135229686 643651492 488844158 607550660 452107778 600308815 955728700 962873420 759772013 922066737 146044546 434473513 894160280 982835231 726508599 767793583 76484726 798444306 264185894 747553804 107766847 438945594 535822261 684956340 616706707 965006954 458748587 936573102 410575581 769974244 10979797 474192137 827774826 938060772 304620555 480165521 832930048 971501217 162449575 471611658 540912593 991206754 29517156 807390024 286731035 413032383 450534014 943383424 109087234 988244663 949374960 995054253 950720812 960713773 762860655 858127593 808210138 839632471 887754290 896947728 103672294 200513335 47573786 134934278 415010200 438643466 611821568 654005775 132357836 742841301 91585312 96381390 818047272 996043715 787030273 816281626 142397532 191733266 417130015 994552696 522748399 820546674 653671414 896452141 839915322 872184170 143639190 652836852 975402258 988025343 108859022 481321114 337863290 600084046 528820570 924126833 334821468 733432678 818980758 875025480 132098759 988774700 861949380 999231464 756356618 760264180 68048885 989887181 442882713 473701205 952357971 988007302 296392418 679458634 803031923 860743286 990676902 992977452 423426718 951265417 243286532 369167303 141997507 901678311 161047137 173725923 218034801 355236483 796409643 850787886 896001994 902880570 273069256 694671190 134352291 881568849 411537888 988458461 447030029 792721185 327743968 457181053 74176468 692089850 83869068 562008698 173965649 262063669 144198274 212234295 580068997 674861516 549510960 853418934 538531932 586391781 905773236 916859639 969504218 970012882 877117145 882080218 26878941 706618492 305569966 414115096 820754014 987309207 867205670 880405515 131887809 329541642 934105231 996181268 191747565 219994012 307367350 645624811 426756755 652819599 390107288 776475630 813479293 941130097 56324624 722105172 876079894 925619788 147030323 401460054 222893039 278368577 201026402 901412636 452751978 551684496 249819058 705178318 794879648 966828629 67592138 171994111 783052938 929141523 161900245 323430720 488480918 739838968 168186735 169357360 406652647 703895113 257003490 412499963 478011369 716861515 116343010 839289877 836997699 894195559 495768084 524651370 203125186 389385442 286892459 954792992 904749264 985189538 715919880 958423548 534196991 676306288 871047784 919817008 712216923 886724955 634281938 817373925 911043361 918700257 184112358 798880944 407722968 846853975 866569990 990350142 961336312 973064953 831073566 952197092 148837736 789071167 658877894 834632081 562207576 798258628 804139423 942937804 320559832 557980575 243640274 713433201 163146573 839780701 594064813 739793212 794334270 983008862 770420137 817985115 95751802 610714623 491886561 565074986 434521163 973718954 199186689 919070056 307139526 426489423 898340510 999199007 792717638 995989175 861963489 986335175 759474436 913686415 955048897 997444009 633284554 864071414 236839958 788457279 643454160 713991988 747097409 762671479 380775596 792430210 651158463 709391558 508600534 936977407 195775804 617811581 462917039 533745699 185346428 647342003 491914045 542866341 576134647 759675370 712834551 802988287 14831833 864834069 8921122 817085315 252147687 682305024 914571420 926925860 246494963 694240731 452900631 610887593 975642131 978607975 638987554 725541369 308320746 978513026 760268826 863788571 260297793 733913617 500643655 786808053 978415710 982427687 824436237 900039942 244862136 634375264 625809358 850924795 346885544 383022920 4775469 414634591 431987332 437800244 673764290 984038190 5787475 248121842 155977899 796633923 504103696 549749841 232591010 338485938 626318913 757565838 797737266 903028137 995370083 999378300 813754589 849714374 188989877 449979047 181639800 765569973 490451701 729298480 677482219 820544387 900877555 961750314 687156699 800790087 969590315 996427171 179543133 514796159 474628861 809534476 352277238 634678458 2997216 526111815 624320709 703314414 224484468 429121497 696686203 923140380 777095753 888296982 369395348 771303044 608368794 963385561 182216101 478733661 51189948 78374463 479338866 532985275 135320003 579856215 403427948 913116527 524966701 703863601 366298688 965174687 211855161 492838378 628794534 683100036 3599114 769906005 51278247 819181069 228784647 591955730 754157905 776137116 664018143 775673456 654300120 870789458 745883707 910732754 524936250 945431154 50915558 323661548 210242957 435210813 374302779 570526868 665304783 886688798 815838626 825485166 74002094 532748862 260211510 364631213 320348779 363379035 431783083 983362977 956700522 990757997 859048409 974837665 648524189 778931066 526761529 616085766 204273753 676326573 398962003 431106798 330715925 496864590 37903116 301448302 313313840 733218681 959318721 975141195 683930180 873594501 577870863 680375432 478020706 647490824 479357769 636945887 450077256 523277499 729037075 769716629 829135437 927836886 465099337 875801889 289805403 580031179 279407960 495825528 337102175 394694507 38933639 731784488 315611005 747634213 200615387 241887247 570957168 652195945 385065253 890796896 867489856 980187018 771559533 985795695 348529427 354734564 488259217 835964857 338002986 620978418 381077428 618621468 826564119 962551984 368493906 675688975 726165647 926869262 71870493 738339187 796782835 946090595 658313195 896785942 808897196 884935605 959726205 960551573 952123464 968357924 297690862 594111890 467202868 873016197 17182479 698754596 230695681 644944320 815682023 866582707 490921147 783798875 220526036 260711154 101785449 703072062 114197323 549606780 397684740 878062658 349625645 954150987 545371125 980374170 698960551 896887349 590909236 872987865 274108925 697095827 18230630 407848556 419084671 944556946 409129190 701942141 831614886 890487366 959420866 983925888 133348013 465003014 74279056 498468877 595098906 642399720 407706939 454102296 329294270 413239884 841403187 957958703 573540144 743652666 767440824 984794019 725271998 870958478 297879287 456705263 178348743 369817493 183279484 956639511 416921140 738201284 418516479 942520429 384416192 502536635 105139260 740897080 664786763 891766402 168546064 325335491 474941446 931433118 244968245 309072035 87748649 686991760 499065366 550878127 328592811 795930463 87148184 521341343 409379897 541817088 473027024 978418208 695265947 885755890 862217373 934689970 247658890 468632873 909355099 986148033 411070863 824487105 397582872 410267261 488117288 750043888 231146867 666869588 929358153 947469332 442984987 463833073 264745179 979219244 436212842 457352998 751813188 925986384 264564924 513995524 466148327 771031277 637607044 930190214 634818042 875558696 594332959 914277358 441278673 872700818 266328899 473739275 918456646 960018003 31672204 304892251 661134426 885385157 580497364 821353724 350739883 431330355 589562552 695433872 587103722 714005377 325280510 836289998 818037993 988526883 357772630 998296852 683892354 988840296 948917646 983723223 387009050 760844769 906336701 950082520 960139832 987265453 23774132 541603068 114930367 788164807 299042525 468845522 206121732 971597168 492120370 792687937 670412860 971968268 297429220 885059826 896685330 982561786 778709100 968322974 342087319 533356490 415445441 658301901 772505877 903519603 588824249 827632258 171973349 810635125 827594768 966678891 44246640 977939523 807842320 968683956 920158983 987527712 951395 393224173 320870016 601891522 415886925 463638824 416046800 909755077 893238534 964329344 570564856 664322584 753455508 845166529 770654431 847495916 644400052 733935105 914097036 940862607 249633651 684124483 385915768 807430231 944582325 987451392 224343597 374091571 405686771 849624224 352103468 840420719 56042402 338287641 408326354 710372706 733545493 847144378 570203481 993858287 606619432 943769217 254561278 620488936 575127118 819891235 435707123 706659351 54768743 322197102 115489633 664403610 402658335 809419083 287689189 496187619 446830040 473657054 262039356 300798806 985723501 994827897 901401423 959973318 638442734 898429606 967061606 972304144 169856803 851864814 303700582 375188759 162827579 292156137 97630948 104316678 894279634 918365834 709433179 761393203 815567441 867948242 694195861 762752768 951262146 983783361 559180880 671372357 403178839 649580504 943650150 985248276 344048817 843775462 793666915 950649570 622125768 906597413 441114418 770021408 402838647 669851389 536595591 729483356 559820903 708825411 294131964 307849846 224618892 859240752 348777595 409876078 164471629 811634112 968572153 975348019 496620811 583636139 215410056 449595758 238541821 518997994 74202527 822119827 455343227 738294751 774909109 830939870 200635782 879618689 352969641 892657461 954773619 978802664 550526302 706666457 873918260 874518522 472001314 705375006 544525536 865033284 986765826 990223855 527141877 665335752 276099434 459141795 197270016 524565082 472733233 870650284 261048706 742401277 953474714 989677683 667329053 968221951 584962409 920013642 625233938 948465048 906410758 958224217 143073181 721538079 211697803 582937926 691554341 763839122 913779873 991481488 820118213 922605768 547550476 697876277 56525829 964404973 551367146 990138782 432587847 726523652 405557576 871193626 983945556 992958458 728956771 741934112 919578601 945110109 208475253 861479715 904088766 950654221 26576156 906707682 747825230 984212303 580813461 591364909 663195697 789718553 713176168 816321465 754595013 830592217 506466516 931627452 367786490 681391433 510345444 889820658 703006105 962391487 903094167 996899677 671734399 894577175 938176987 942564279 159161704 320669443 976324362 996848897 97044913 148996384 769751810 776714602 827156549 986982955 510774173 924661357 241378128 464657326 126136582 450971359 473819913 912219502 258180200 838696249 15931699 967748720 165828578 876052768 396532197 437015575 815567218 963971871 707865233 902532452 374921315 789896495 396855886 985950256 13977843 997672411 420020809 572155877 910312035 923776678 924197251 972782268 913477908 933040477 674880853 964583795 668777405 954604924 756574449 874787322 628585800 991850050 472716185 774583355 131961677 763051418 398146145 856701176 352245006 885457936 489273890 952248408 339348449 658276404 81840845 426597595 736375728 851621290 243107990 725949009 632132139 738116335 406122793 907037262 787743893 841259353 8432166 926591826 80066655 711294039 615972375 633130193 515662884 665135055 929159660 964335201 679237770 833739157 1180707 601119514 476643158 598664054 556149819 751127372 565902137 831943337 173141803 346835857 559700765 910177003 360077354 969481538 964639273 985166703 396630626 400266420 463666328 491634842 907696828 982857683 457959330 914161470 159001235 709602836 722023736 871075939 186422844 878429782 933359879 947580108 350080248 825967432 957029382 973148721 208500484 619036218 710645305 950337300 528839619 582949137 209593735 533559470 409207990 685365209 198647827 320169544 515960704 777166110 197678650 724013224 139036825 637977375 584450565 810475048 793567465 905930750 784352256 903058851 635020972 849511976 56305055 745032537 627005115 880280737 836237763 838435304 123426022 852437764 120172588 169029137 312855543 663722840 930233827 958866803 988007798 998566769 238526058 771065692 162775821 871883027 766256979 962234317 144462662 689867991 855889371 879409527 309580985 487898154 214432385 782820265 150729198 491596805 81828435 904157455 930116399 945873451 956791491 971504940 203067231 869686970 647373164 985802035 884001844 959456143 833012817 967472689 501408505 865523442 434739325 603182942 341992315 455826186 233269194 355531157 722196574 912791954 535614383 911829744 574549947 793581661 368540665 408293228 430463184 512940924 678616990 761862279 117545856 424386600 447295884 931546140 785915622 941467435 743639265 993254898 966185081 995822267 649088632 685942748 944879284 990194355 583347947 967314768 570665978 929883821 177820275 546851069 560475649 768446313 56826992 756268171 591471665 746804367 756901416 766280818 781749550 977703512 323960196 430369639 670586230 827309851 478248549 844358740 611637748 787979032 202826373 641865489 171401684 837690172 777056706 940238019 335771419 685637426 151871088 739761830 528254613 905124733 537823678 620319389 967014735 993880042 891715508 916882460 639084561 940976048 992900581 996445914 828330746 919784448 365577616 548813324 739535654 983613043 344160440 349553234 275557290 393810823 749088089 904591951 177718193 794407651 239439470 699069067 629661628 939703839 160131102 684679258 576917121 892435119 245005667 649902908 876116577 886937776 487381791 674615847 705579692 953789384 541597942 819357284 960300175 982291261 702110687 748760756 338094637 613335106 37098549 504714190 57946837 470576325 146988310 526923498 814620448 895654317 708272512 773415093 185050928 870474328 712024334 992819187 380896224 631093324 313037007 327886748 855177001 977534030 258153821 599105120 345391857 887494363 119866104 567738701 620882064 922288951 736585034 816524665 193363671 233790274 822391195 865564421 161291410 829574734 567766691 832273010 940338261 977451936 835982631 927303166 909284306 955294510 700904006 754674239 19307972 724083031 977699557 987481752 771634304 908365692 866091736 978286785 686637073 923903519 426697799 675836768 448853504 898848974 578729769 996484844 251470919 917415050 671244247 994195549 836321667 884099935 562843295 771285936 263177135 972180293 153091918 797502913 598085187 814299805 221904316 761050896 482224128 720631602 871455199 963832863 229143679 919270922 698720119 823730336 876704668 897312815 69497781 788837316 734462913 735389202 723450650 746907997 168203757 295866925 607185894 944895483 175275414 725166886 88552914 212486047 3627413 237471126 986503246 996135150 38004611 118117087 216884251 612427384 813728118 819201679 692573031 792329935 913358236 996989295 522506826 768988682 422069156 630502460 868936480 910260671 397075027 575655917 518477907 583956778 148342261 622343047 627718854 970886941 831234597 958123917 635435220 887468677 893523773 916385873 731912229 819884958 367686391 628578459 214984424 679306015 3985535 464766906 818633848 895271745 587913416 795223650 288544143 846438349 313093753 375614091 983958098 989361297 950012356 986136827 146141849 248376457 447521625 995946775 84144534 556372217 196592456 933434858 9278933 48966389 410097951 673704195 335746407 906205943 485552671 610495969 202247488 845748265 738019214 751968193 827355286 856830753 477072772 943586049 787790765 932691472 866751796 991670824 713778845 774484967 318437596 362295736 737068198 936401815 549924815 709352982 123939923 233024399 705513262 803725598 273448446 367096688 397922016 879326182 37223364 641450902 619755228 891529552 751461700 815471132 703590878 738285145 123877300 201061011 722807194 934130317 212307777 791632760 109664720 459633557 835913102 852695727 643794283 921476946 214904652 385464849 870112783 928858068 272911160 523158487 751440302 992643219 94439677 318826644 447627778 835157833 386109707 930428418 795366574 811815561 463385425 843347811 427736969 973374716 296109484 892028356 560711778 605397267 5172242 434162987 807683806 885783254 162949281 427348975 965631544 971613620 3501205 323598870 584409232 796943895 763127091 995350911 788967702 921074284 343427127 798751932 768083653 875375436 570873341 748200341 432573893 862279579 609394688 876195906 336438255 982022382 420678878 423751786 411442016 412436042 829245259 941282638 983015735 997482013 883315093 940537732 268432326 652507443 74808144 306850282 422804813 711341690 901588365 935403542 953785942 955014342 91655093 324366335 672474565 990938822 663737277 870767506 786507187 904767095 946003061 974892120 983651349 999367910 874818512 898447973 861197143 955674225 216820713 555100052 910959586 981546745 940441273 987161492 819287338 850634004 217927601 547235956 154630727 731690569 472762259 575003697 13590370 471468796 580003196 698615600 621479058 951130953 573706643 716253693 196529731 867050498 735769506 889216991 57527973 162972478 278798225 814515924 619280668 670877990 46526082 138976934 292071180 910028685 381611558 882164139 518584021 876374650 788710800 891052593 563330474 569684671 927927096 959113479 652236758 676156215 468611851 899867001 596135789 695805665 365715492 455165073 807249320 943640547 446802558 794111546 922180093 952338801 304751844 828975785 564950962 831398707 442361729 458473590 336036370 753225195 682079421 734223838 318119910 329610074 300651385 923554234 714418311 812943987 67318721 285375291 871843877 954372326 782112242 920441562 832390375 865516906 677340152 726713671 239484817 807790733 185234465 931396962 638474307 673376155 897105961 946652508 356917201 607720955 931174880 937067498 122971898 657107542 624670419 930948869 385426821 834333946 971317441 985149158 241819442 318152480 693750388 749365432 737854558 910386414 168266876 633678364 947497548 987879505 773265099 845241818 991766175 994457063 759624252 893736221 720474486 916262616 754303748 816694290 321338156 369368901 942262299 977187200 937680857 973333641 987869509 994400453 167111334 185495445 799998239 850635687 495773336 991461968 514127682 639264032 544971540 550571987 36092675 888633542 896805097 963848292 899690100 971361291 588936637 727927966 309032336 918808881 567354853 738099769 337041266 574438973 191586893 535188995 31029599 850658950 583637966 887532736 18946423 177751424 582882702 699814536 687649366 748741979 941673722 949926805 94215551 560771352 2487820 829198673 805160130 866652932 261113314 430329795 891684792 922733125 468993371 734724412 203796758 642863917 673146114 959404362 807274099 834827193 100921138 869269130 278766519 705176368 195874529 717705772 603521605 651560478 280360175 715681487 393215119 395724591 931933426 960318361 606905060 618011235 326242070 775319466 274997270 585588725 340665805 685640346 351117841 619254020 317843551 532275742 429955284 620490244 922570677 975660424 727056794 834388579 611369850 613240758 590582372 732438838 136295845 769333296 819965974 975375949 349864078 472383769 323378535 785707896 994280430 996859243 699138386 933506298 635317803 934960399 227419211 967087503 772439250 845759966 731272153 805399125 940233665 985589357 423887131 456828973 708281092 764503920 46600573 462726854 425491743 649623207 54215094 536943635 126485984 469214377 382743202 747286030 595105069 648572882 89880323 298468020 588329540 769180687 280269801 784966728 671661022 706878094 755593451 839108003 199583164 958262515 331859118 404956478 207343522 890348243 423650907 746450675 181131935 815418572 116512922 840888605 178260133 989538888 819754082 981779556 339603551 547819218 317620234 641761555 619507736 778963698 480137245 705194941 142644358 312292677 14613670 510642656 752464685 982918968 11085571 534950770 757263442 771553514 106155924 333451418 748636282 884691056 643815805 740550550 518562035 932071670 374117931 874134102 895091404 985741984 694913066 715375662 194276849 581519661 390425655 514140028 27041007 31600705 610385695 671791381 603904108 893580456 523520990 835039427 836922357 959194254 923101353 963817917 250741681 585085463 390689597 646159716 717218717 854102230 809860932 929760667 33720011 947526384 955957432 998476340 508382621 718982016 681767385 936008174 81066128 571410443 281168182 685575218 942279916 965833965 279948553 596911753 153921788 299005673 514673500 613824503 292972784 698572304 874206075 940862560 484835241 570867381 511311664 893804412 700044038 895848387 970824940 978979608 24246991 884743373 97936018 848913662 947357092 975565611 838525989 877425853 776552093 834417474 647596056 651857277 184600258 847037558 184539963 334255685 513740204 823767279 47066227 571117179 261310337 636368394 609518072 707350301 659173945 724183969 737187198 754118019 746681128 922402751 188405932 779695237 544977444 745945941 848864314 861300894 264064010 747617972 408435370 719361792 332601312 965431980 107824505 410407942 106540549 508233932 545901444 948973001 436910317 478345074 204734217 978009922 488197628 806868822 474623478 493032989 473060002 797218187 783426650 894394598 500384649 808550027 617704457 665790647 925244558 933157600 491820864 501080007 302142812 385799616 407380236 883644849 450580719 484425166 720742076 787302350 546044076 829180683 570290744 952393843 779417639 856476882 823339073 926309741 428184137 622522668 686546345 812502621 21892362 642168600 105837650 172078741 143142 565830337 792716198 830792035 507485640 642601182 612901553 868882679 592062218 897854918 402018260 517959156 776736404 914850325 748323232 900045508 965733233 966434093 287537167 887564576 258187543 396950743 205023249 605829504 356035376 451410850 929447757 948292396 89437145 679662075 843415796 978410892 582248941 899827685 394633535 914244193 426516824 887359327 918984574 939581457 218476144 719545831 870615321 993703811 855923302 961354091 356713338 411281993 669285456 848418665 806443057 902944297 251757262 258386057 869411972 872363419 957768687 971114333 524875407 710404122 582650623 994023517 427164704 809564435 746532075 912099230 131425619 957192717 557773105 636979888 157012897 178841882 614535981 720332902 342705987 664485785 618291974 974522768 655805688 784865387 886517260 945464625 764439893 907828938 471534305 474766149 277422328 461540874 780330002 885456104 506365106 930216955 118114913 913115196 751563812 896361430 2277121 454201996 498154183 811358446 916262876 924322617 486818748 926395362 360078769 846904002 788592804 795026179 947995525 995768136 297745290 754047000 923311007 975836444 679659052 744771007 657199190 753365844 406394548 434054353 774929933 906142198 239332347 725648510 368276905 942982760 868627417 985658776 432254575 883551905 268441422 350570339 554872425 969906159 132908472 608299680 31499656 423626322 516750884 530967426 87714492 581913546 363171792 406805384 665130002 738964962 722446694 904225326 891065673 978625377 768854134 911014756 867664847 954748873 935757023 960090615 177040479 574771429 980176798 991866799 929516676 954343168 672744360 880164904 714569072 886939114 57060729 232275352 339318388 795593635 131815612 297245948 759151084 779428563 241328295 726374152 349427954 626240251 712220463 910503706 212812136 926772437 321638445 770779384 801257611 865354793 18874585 104567780 586609561 817942916 89900571 913046568 261230691 494879927 181740426 831577178 911116089 999033721 123532219 320746191 397811314 985249261 442306334 640949036 71073932 670566943 719997815 781305101 791589647 962947171 415012269 949580419 861705936 929914325 934588340 963437268 351944649 684697522 133720358 599721475 653996166 974090636 248183442 710256663 982072503 986828983 57030201 145190755 288647387 504829769 950898378 982150099 319373820 885919598 553854320 770176461 170471189 511370530 21817929 272382836 747077857 816094401 258733073 610922374 243141433 788794859 893056482 902941453 421479959 545395713 494792763 944082399 293245094 453418304 102207069 929594801 97685100 349965111 260786114 267876814 613145778 732054387 824323157 904839131 334403619 540409298 663498882 803048141 273750775 639840714 353101027 394917885 144089416 414627343 707463788 737172441 691680173 786709954 679309715 940942061 111278664 702311005 52993288 709639424 952099557 964344096 572599076 767658649 35001074 869289975 996687767 996795843 785763908 791787031 711576666 947388815 540659749 715211515 300673314 307338461 904359233 960914729 459677127 952893871 147901915 443899717 859897363 934474737 55436309 915342274 41434164 580032563 674658555 781935138 161958825 918812542 894036805 923281300 668601268 858668929 456707704 759773156 414123764 422640209 181284422 783885951 938131248 992483931 167753015 466020954 480710196 553453720 129333178 324103524 683427128 974515552 951517456 963931736 871084523 987621129 510598558 596934253 136336449 756375771 794381764 833280473 361205381 495852427 821762590 840619617 961285564 978186233 692554857 796198188 123744605 339979596 82667605 288245619 892048413 892799601 188827714 288907112 981372818 991313333 986985046 988131484 925913261 960487381 648396989 944370102 787520562 815092531 545656147 783476749 981092554 987904587 94615655 838745751 658705741 988693655 239441222 634275609 349529296 675095089 536890538 899104162 308847051 619843127 400539392 654754020 202923657 594684815 141718813 441542147 612231032 813085848 617684406 660522190 662666246 991368137 811894977 890506250 403663164 664429392 780560696 988669330 592819947 778573140 386897704 389991277 697392106 744929745 400140062 471338944 779560633 853885222 307595550 978833002 290007689 832278859 900622762 920203100 602250948 933700671 11650141 462091722 706662522 819630514 668679323 917902246 120239701 158678084 149823065 170717045 354327257 566376542 948877889 984241547 844490159 905017129 619222699 884282256 783432083 955534203 544116963 636585676 810535769 998493980 762582246 949501819 411445679 634815821 900328956 952963052 753921322 757438956 573558378 604665649 607501061 879779109 979678226 981040442 634264278 971512234 330936417 544994344 542872890 630107363 559750446 652386919 533289627 772948380 603038480 734194324 616121813 676665835 802964070 862268871 795427903 961083344 841746232 864559803 666734971 713514394 953904457 961409115 403231660 558200287 320451343 539757606 2834726 28043919 506935254 654831802 511268736 775809171 671746534 760337810 14535848 151526873 965779251 976215157 929851915 941649986 640255312 653226676 823836629 992619750 34049233 501847774 444136608 843557565 63443229 563402750 535034010 888052906 561461913 671323942 644643755 993015330 284756943 778926390 112566750 454978123 142889057 861195125 975740822 993856386 971385675 975469295 476435508 690054954 930392178 936407625 832385484 994275763 430547630 518815298 352062083 972962169 775595780 903161722 567143276 668656624 343271442 830879320 59501766 523618213 875028328 960200696 140681257 352108120 349405393 406405442 910104124 996824959 95969398 107786901 414938277 535252967 651213701 899420058 560631048 890759635 75901509 361485982 131423342 934897522 34512941 285035882 538115489 730836090 843770928 952178283 984261110 991037076 70372361 618089232 540947945 724577581 772486767 807486137 569794804 640371168 716485339 763653107 320775984 963605170 512965695 959719554 895349743 984111066 492995750 909881465 156591038 695978843 782723017 909216200 929363816 960581130 871431726 939054307 699532858 814946500 353570723 419436513 638631763 773580338 64684988 554455281 106773698 816461500 262645645 498567791 915737062 944816328 843625568 974401309 970593576 990586845 391763388 897670284 884213812 957915021 516639451 618851139 578331745 602527534 743537133 845912301 362824151 744172647 11637020 558933239 320105634 795317645 882450340 996428640 606668436 815605516 689091273 950941846 954901880 971212889 284872081 979459971 754830374 804613320 293364458 967328592 631800907 708766494 572580483 855342021 868553062 879172084 682271734 827007449 820209443 962163364 665851203 949747921 856207313 899848190 612593132 810009094 141281858 621849290 918090794 944609895 293834120 659097615 853329080 886504338 849125990 910385955 405584787 760182250 491602164 539914573 457094235 892636858 690717783 964975418 19389189 816396001 147229067 213561140 728676315 888386200 87708670 847159830 379906281 819979008 318728234 992435966 180899152 349902387 663642310 897867083 550079993 988053035 792280755 874952285 247088640 344957632 36812632 623904453 215002717 275650607 94765473 290375509 2013054 934380497 147643786 651476383 48469342 425814084 512687950 983016464 368839251 811424340 3861142 735736289 847598840 857708230 301484126 887355935 671526762 956623605 786041706 791894195 616351982 729166952 494701479 921715573 600598673 768640044 55963395 901661621 200901483 414977596 833298126 949944292 405018882 438425202 77646362 743991770 196418299 309052231 662758 827318862 23202773 338556488 193547131 607555532 859712611 873805301 957391056 984384545 783336013 825688443 678446845 821325451 857628983 971778453 614170680 653003053 846380069 998433596 751452218 766137681 646242613 851482888 28780966 631263311 39135339 624555711 507243949 570269472 440060786 579981084 433170735 759964572 978724995 980066650 855008119 992233173 529874268 918630393 103058774 953790694 278919666 773714753 267919150 326914283 4882806 920501111 377577263 798461871 571434715 643688587 860455479 867136922 714348814 845813527 372631585 787275257 987451959 987821105 176143838 416956819 122568005 946751677 625559621 763809762 646450196 740988494 504781686 563212157 402657551 888939223 656240578 882660915 890906757 948057684 88682697 683625436 37281763 733790012 694574731 805783645 341975020 638060136 879645958 988227560 761577779 940144060 254723588 403077774 11703271 528873661 709406648 775213060 642750356 683325318 49693892 414408256 756552882 894303396 241658792 322257848 993501758 997348112 27432656 64127195 86486750 969395547 106924859 874188801 17747515 657850353 553749147 978668721 542760800 989733405 872897625 919982731 129829679 624326349 601219618 799324729 957630227 983084572 18396497 625848362 616809743 687737369 632548651 906549742 535061105 944278467 15843755 567907585 308292589 921016982 479347049 685974881 817457559 878410394 549509142 790510934 149538090 215128604 881710443 892049435 145338652 461935117 168155620 611599307 177611026 748026505 49320871 589425217 846466666 935880041 862181579 954242083 784490039 909678160 125770091 394582699 393921123 806173701 143892842 952219863 811723371 873425852 695403727 798391428 780914920 853882977 405531307 481900529 458956255 502180287 837109795 921710639 731842187 847249479 113263884 209166902 991107792 994684206 476735736 808643682 83814644 338103539 118097391 956731571 741589097 746448097 179111324 495410800 640351003 955762774 486369542 759574847 680784934 825515440 262542556 323995925 957842454 977767925 543026986 739169352 168820589 566821117 515158985 594771378 936146726 958643923 532462632 744060214 214361182 798861092 810367817 989722262 53414943 917666323 2887230 888550835 321726059 784677419 697846997 983530139 267372689 589249071 74399364 444859451 44214677 194038744 627160023 869085145 512236892 639969920 654905449 693788329 308961035 372422431 98706114 861060096 177004296 184241887 411918720 968923909 891378466 957842519 847529336 992986077 376844118 491217509 798553219 930041101 933888786 971972516 788118514 886037767 2703527 156058478 28675384 123093080 131958743 613242308 896263951 900669144 472872247 650572322 343726104 852437261 113820367 213939981 816862071 967739007 365056060 394021977 60007644 417818280 532151419 992598598 379610749 710455936 582776777 841652541 978953422 986928444 575898006 659611782 976354333 983790578 777464784 959661217 952683392 988781313 21746366 478320937 802239948 840333860 499653169 991392183 588956835 870846268 414300083 856798487 970699211 985369754 562028736 723901029 810636132 961594907 917965922 932457973 692455661 706162756 775018013 790939048 875058266 939471028 144124032 993988285 41794444 217250680 146792508 982236589 134404635 930296114 893405162 894405873 223180428 456870231 531874977 762343381 740185802 814071199 894973182 895755815 779866819 953155814 695988121 914508156 336832089 477091538 163561766 422254344 624988624 697171179 246379503 558375081 100139992 953618557 69411085 175133373 345197409 639986179 703585028 765011643 658268797 822038630 494209847 558273574 883526490 893235685 190445180 939538070 561784966 603372934 301274011 742072986 829689316 973712459 396013071 460590295 146245343 789756981 840471786 883370781 645823985 955124689 934854975 974492312 871797818 968305686 236220440 815032570 591933652 876362653 84927689 119249064 696056165 722421599 417421048 515560044 389706471 874914234 845732785 915753602 147919940 919852048 778446314 835714401 375999377 451659602 739496203 889842583 325742925 705793895 312258463 770156318 640331463 758158819 456529542 897515156 214487159 984388610 222908008 249514986 372566382 879623301 356206767 745673463 134036886 265566889 665713334 797726899 420940883 745344340 10698513 379494587 221777123 693805693 539819119 556802212 366324430 862899762 266883392 718275061 516688671 892206352 547807996 589352127 980622209 984615771 529362407 556922619 321032107 423293118 633248754 764789338 106578830 531424754 435691491 660995057 199142614 658335747 88573833 851713380 622936178 771992009 27051443 370288250 168414745 819042705 911713527 978038518 351887432 744735380 638195644 834959163 962969240 990299817 33821906 534029598 311969234 813218714 946260270 984980348 522936582 858951420 758835127 963204303 500476036 503164001 878418135 923628285 735516455 957518650 715430785 867678920 896245998 994396427 376777613 438843649 557817611 917505341 212680835 599539355 585364568 688329036 533812796 840063157 312216426 582396391 151187974 181803241 38459988 180258305 79583584 768447308 789583559 934319516 57218952 123984677 409487470 484979961 236975095 420988848 951851272 970669883 855912016 998937124 259953361 444681539 846721284 987662104 840016904 871086905 410368694 862172274 63321333 381712879 661573990 932619173 231092057 833190940 156806772 705926994 499754360 588385356 353417978 425179435 807252192 840087958 171436055 315311483 255433493 991971046 524068156 906039623 676724200 971786679 793868937 868497941 310583052 846650061 373024442 553570966 624568794 685335863 546577068 920682351 335163708 492650764 522777129 687105572 634020808 982585986 382515140 923185083 124499615 267415385 560671463 910034063 811394314 859164541 900951179 944155692 379004336 964807070 747803091 965174626 21878465 342350165 749043453 991682007 479269857 857629185 135716766 338980287 521383469 645166476 54334592 528130742 793741444 975580186 345249472 914522920 564358993 639282167 678086684 733040642 377591649 960688196 759326075 900024425 854536061 961760891 506037010 957776141 513604286 834642646 937720506 972045823 511800869 786394953 298461056 415203315 763328775 843062119 619657769 799346010 322055408 640345697 102825716 784575055 925485027 967950391 423488276 648520274 35847516 94042783 571736830 713906834 174079680 413392323 367624607 809476297 333098422 627767349 635533419 795895602 450565746 699593882 801635598 960076403 644594735 824867365 948465683 955123025 770659813 816182460 293865935 846200512 375303283 698825990 933521300 996096149 826660075 869290554 957700697 996736670 160708329 549268069 220282247 792448943 584870529 590564138 109093543 661213007 641726375 875097064 647891919 773428327 274612411 986877608 220360984 261485866 881270167 964115829 230221042 627060091 659969364 932666402 527100825 955477072 112719771 928870756 249805303 523957495 711455730 718456657 730601544 903806962 221789266 733035336 24816075 866425835 427117068 975559461 447064153 744100455 435003044 936625010 791673589 858515959 793229260 930762653 376476483 479746176 865583253 902384001 665078024 858340307 137884059 221910653 303393105 401224226 71722969 567133184 750617309 913864311 416582018 971330971 205703439 892607347 955434745 972100346 491765384 990402411 202315754 737065986 736637778 747188244 531445433 654713736 16460565 664007047 350581051 395616329 250103352 620823616 614577424 892996551 352012023 736691554 789704293 840526624 900216428 951019110 916463123 972683587 594298441 881324469 205507069 565828279 43049214 175226758 428145250 482950734 660766482 916146624 630972623 827893502 696356791 929255173 74995833 518254717 84460220 781353808 174796617 455515070 753301601 777137447 486220918 920035700 426535611 479080595 816793814 854240192 990000326 996036970 84108965 565483310 560904033 917565658 617710802 899050876 325840546 921243187 900988648 964805293 748693034 961901473 335460213 998362050 840935119 859680379 222341798 479748605 386524302 825952030 815743505 903596101 855585532 966146194 909971323 933798533 253260290 918816023 155836487 881891119 445462912 485049065 609589801 697349056 463266981 631841932 343447948 668009367 962799636 963372399 609302807 694027425 136094827 653645617 504667334 919846105 733775360 734087733 805807071 878183315 293843393 852327677 795637284 882649492 816932960 914076227 21812904 732198748 959363149 994645964 807955328 952082925 315819431 861240456 200006926 489768384 889637068 963719436 524785218 565351720 1479226 24744483 423823933 871311200 238419319 268451060 704790923 776465396 480910467 678138337 487561731 967359654 202930262 362616264 293166095 834666768 14555435 963763845 603998152 697658840 563782618 992340537 884836831 888654444 375375139 680159934 453077840 910423429 884415630 988063287 944549972 963448605 746235326 759426577 149472212 491821728 494484258 570201223 714976187 870414073 389821037 429816835 59455571 307423050 19008928 45517440 542768980 794407368 658733472 676487069 171378837 485817454 585893073 907084983 63396521 448297430 616458134 766921931 914401116 950069605 801598896 802837804 411733385 744773703 849223506 890970590 462672991 844672958 634356451 667001351 612422566 617447692 993650091 996270228 936938884 979024754 162148939 490261512 39694639 622784347 300157625 358314944 345071751 832622585 981835591 994601594 804079071 817173454 766094726 931315517 940903964 953826997 884151206 898844566 502317151 871771893 79554476 823064805 443792241 947958344 340062860 748418988 784047695 890692613 714484876 942955380 247373941 530168536 297789246 440509029 329985760 952973334 371099093 506477743 664785747 972494208 300789341 939975464 520711867 638318253 931075578 932119528 314499818 849587323 505043948 895089975 987920701 993540701 863468497 957157041 317034609 862435008 17252387 247512839 402657678 449735402 109300063 243301549 419900157 572410406 974465652 977526722 695558571 698380472 242602672 894599971 861153454 975102948 75609991 168588024 929964084 984150224 745976808 928120369 830134416 933048422 350724495 932583170 441884016 969050863 504298006 904427688 939170732 956742999 791455561 965876784 167351670 895471664 1507985 983186885 641932758 806683252 499661867 987862490 614059810 649593139 851639903 938692898 671064254 742674843 339886131 371361792 130388556 134388534 469651862 819696769 787503898 848193627 827119092 899228771 3552061 185928810 395498521 664639072 251013076 716526562 50316892 837286175 829735328 913588752 373698939 524051077 369220342 825982793 494749349 998883969 351859458 980112142 4669661 478648260 995523525 998596196 273986471 523134988 622314598 840698335 610088842 739539198 500284948 920306323 612124564 909224847 742178456 804384402 962232652 962270241 333983021 340055716 270933484 923078186 944588137 968798798 687354771 892641109 37604143 642601030 184194118 622346914 504707646 878186283 301835046 903204421 897470570 961701192 642583034 962055943 773471408 955369806 893561338 935575389 872723186 977974127 753788887 832092454 186104960 392455402 303781135 789088550 395024265 826345361 607085590 877733883 442361212 649589232 312851609 833880330 294596432 648025136 905292576 945453338 927923088 955404620 717356675 755375484 107755340 504506275 108452893 786733373 992838026 996371754 348584016 823683773 349457385 605277384 250782584 790792587 773871096 959247392 899212703 913135771 913807409 982364668 977957967 992896824 961702704 980592200 360353033 397119413 23814007 680420875 888493002 944104935 178635284 852894526 55863726 154868772 442323293 959052504 83497262 293349838 636914542 795446548 351445990 663245226 694352342 720059204 584387785 677119875 420909262 942140961 480356360 485326907 608108903 699878757 753354462 761742888 661689499 926201187 960075276 998606257 551840012 852511181 244251246 264600112 172353540 434737064 159310070 309382091 811464183 978964149 439156131 872066669 547015132 691711604 635906570 756529649 685160996 752785157 31137795 611049382 68555357 741736908 90265427 526246544 705105828 897295165 87484075 472425634 763076046 888014322 841026122 976530116 521011934 643453694 865935336 928829538 761951358 964949360 121511172 422989849 310135517 693848641 207869132 418592371 452393914 628046029 305128626 348758176 946075236 973670057 63487955 112065322 639971755 897743106 363003415 826026025 138329065 956438015 314328245 573132864 825341749 989563526 837403296 986679067 525791656 810975102 556179707 844084027 500404338 864482258 700163045 930736055 967278802 982739151 601931512 952034100 432472008 688655607 390800885 843266598 500510183 770031721 461258515 726023936 403511587 648611461 712287695 848451441 544179773 722118764 490149987 990971312 54422718 927841892 865158184 881329351 476254151 993713901 389288506 528125139 989736603 993304676 464896290 931334559 227433341 552789136 177301985 652431868 990450126 991483235 362277952 461868772 122192758 774637626 28757774 792051610 297542606 333747229 743288008 909071270 636620068 777696705 564335783 615754367 644019442 818655733 414415688 637040052 622083738 707998765 528403962 752723949 915571512 949149813 175228513 811123752 856273074 957599279 588907824 653941468 762402740 990785832 972053296 998231842 697085777 924242278 332788194 624238359 436999636 701660862 73140868 812186811 591926575 828725452 418709200 497221132 952800758 994005329 284024958 434012577 735871625 849429320 253267599 942798040 769816498 867111397 230450771 313331545 148936535 898022288 177155352 207506389 969433996 978289600 141789907 623485915 458147907 550864375 730731533 777240188 939332179 974789954 38994766 896055231 989329932 998657357 433155784 473620781 387181457 684781617 656633601 925591567 796429477 883982139 411829103 763452849 915180119 915586488 784559518 810903540 660339658 816294200 683969590 996398039 692385088 830369077 867668679 942596812 320706593 683741261 278032183 360659905 949712698 976196750 757641124 978233666 452516770 859066357 23021109 418128946 709198649 939666477 102739859 371407662 648957312 690089198 864314190 968694430 564435888 924726766 532526101 734599696 404476180 628721546 506907054 775979712 791668904 956246356 765714139 982222572 882282842 947696798 897470126 905966170 148098743 956918563 86023064 117693781 493645211 684766130 117482990 940294017 692208761 730158283 51860021 385003311 43939529 956755068 831524232 937049388 680973864 976918582 385627399 975287552 180582848 545761501 603499960 614165428 288362658 754734770 617190649 985722444 819039775 882345693 584359429 662020126 88662526 767795497 620691259 686139506 556025507 872244232 981866401 991690335 124951383 327554355 924425737 926583831 864530904 925324402 474013304 744869851 371758730 899748108 539050599 774857779 613824426 962448749 893642402 927227155 5182338 811589032 363858122 750319761 876766454 888954833 492337782 761296604 308760934 965209863 750002472 959999475 298975225 443561728 141251778 827984317 339021146 774575488 320218734 957531347 907104460 930285683 952129789 960999496 758419714 887846048 30273437 949960801 797907064 872740044 568103009 670289462 759940695 996436845 600764251 816307798 941821511 984426006 973580941 991660300 643943953 720456121 127957829 453671620 972203828 977104475 759139337 778236135 255597692 621944802 787159424 925741546 646808011 897388530 29966113 818527803 857007485 883662916 657718913 966107950 848206293 923384218 120032947 322470878 6680291 359631079 289797224 299994078 318734160 844062344 857463085 875051976 457458437 685817194 766452923 901445324 734756454 944978020 299133651 690078052 567736792 923703632 479634120 879797367 79774847 608947424 63714201 799943657 753394260 840641403 540309305 575373913 737074110 820145591 870245463 997236158 205939937 955846639 225463898 323481856 639952381 652899100 598142449 623607857 661047683 835511168 64840583 495870606 579913712 874608893 344774110 962570073 264023880 304802664 722027804 735460049 963248558 980642927 64774792 537021611 284982632 485885939 724997351 773326126 443288924 978569195 9935441 612298162 342603351 465538758 570113343 630106521 868519124 895302593 228366 535360978 661510832 954336543 456415773 860247822 194532493 353489078 287452557 894633017 208375722 391467997 81267307 533800886 86562835 873672489 407777353 923008637 138726201 382094613 318652445 734676462 214143127 526085714 545498335 844360159 405909404 955968784 922829549 974846365 806302903 852720754 142469158 295144159 971737848 987695304 912276226 914471179 546683362 803020183 934597079 956009302 806925855 906886224 521322899 838572051 396085358 643788149 319506229 813935571 305954556 585228874 877994607 885061240 913702112 969518964 361284261 574238553 930685791 951006801 15946887 268481512 933043164 933530551 224774375 903995723 293939824 568384374 238660380 527646214 148369337 694609677 913202057 920544051 325038576 799097535 789469593 938846767 909238358 927709169 410292152 720012565 408006823 552385879 605657828 659839119 55109152 424442779 626210967 651045950 866693506 996327288 389191290 598761850 911221908 959749161 880245977 961908280 970940574 992572242 947704174 975803801 439312537 895052267 491037618 875317161 873407332 981288841 232822402 877815316 850756541 870474735 23027166 190175416 335236305 997087543 396985017 832790792 761872744 939695017 863086673 988965998 486444905 533718052 627331209 869276913 806427905 957444472 617181339 619173854 522010475 879944948 849111595 864125251 695403152 950286355 326488990 582989647 822712286 975547729 134499204 457607340 604552189 623342623 808091262 953642428 76733113 942040759 653364902 765415841 533078495 820635426 93164968 557613107 470475487 847953627 92328643 555741132 460207541 971386343 918146654 921923148 85725711 977847178 277470769 813329176 576908537 982967280 725046530 863900702 997617946 997742410 980170919 987562508 202622865 725250237 970607597 990376256 164130010 529434991 322934028 331407045 498640810 742639733 479252353 557229002 781314947 904305279 404756984 869795034 722769177 940864878 893531182 965528248 330237061 868713545 397756662 956216059 881989283 930608679 413056411 638845616 103708312 461014935 981837922 987543829 4772353 190805583 415382519 602962980 652403733 931963284 33881965 456673362 858005812 942510785 293201223 593451789 180134649 805430593 103203531 352283954 684890979 759907790 863273578 997554767 682222601 928121689 628133999 795833635 212444557 693636450 822193826 968897932 117769255 174346337 246407135 841904889 658186964 807398678 54942848 587625191 341553157 808347935 395583806 608268741 745705168 943405801 460601658 774227891 536320193 959350149 474359425 600929657 320447488 517650705 744039621 944400628 964527770 983753421 723438656 855831480 538179947 628611292 985296287 988415332 303439393 729418650 706217347 872163277 621423025 762273235 176917703 898786813 831485658 868650864 803509908 947288846 583209457 693891024 260556298 942281552 253797553 401191986 434282074 486003356 755804666 984508238 935818730 949715477 574324750 786216075 763514406 934708343 231920868 957972865 344640165 785534536 872287746 985397415 735872094 823768650 972343382 995821445 757578611 917260718 947871948 962105258 103128144 477467074 645337357 710869494 356776327 854396632 341639555 906340906 683998045 740901605 823567288 883271206 431219115 436404074 386800197 870681421 413796987 424888519 319263274 369479184 233969052 375606280 923712031 991921741 852640765 992524453 324140529 945512052 359225290 959106779 805694396 892463175 992897633 994173253 395741064 456033492 974620216 989531237 21485590 611000974 883529733 974891830 472779654 708851769 58165301 403855264 213362152 788007833 532138239 970777279 5105221 975353113 651608148 937322208 534895607 879978137 613010977 962925330 46519497 596937417 643099344 921301284 47989062 578515246 736626312 765697601 61449429 952547207 305118520 892578097 916170997 967972174 287190451 694495321 295663591 440076258 439237530 638318284 111702921 335732403 503596467 737285498 55111507 618317677 938245722 986039258 317856269 726575383 243948054 371744835 12410404 497405833 520988780 908324625 281470997 301085849 679819163 824657633 244801163 246516165 854119668 926179753 106168386 266013542 664205607 781899504 47936974 99771433 585774184 591282465 229874447 621605226 699052118 709796995 210307346 623924113 240497895 651483172 949524405 989900979 943171919 987378554 95796017 934074626 542420198 557638577 538215308 775002301 484488203 775155097 222692593 492290051 70123696 773427073 289532387 679378982 941032331 989441340 778144474 844862362 201229608 560963964 88608483 817742604 781730754 857843985 572386935 761960498 539192032 837696001 420356361 616214477 642580648 819695572 349094319 527344434 859687291 978775205 101237614 916096925 434731946 605965918 331753402 911169750 532637920 983359714 541221248 766872639 195867566 348729684 884505033 908857663 470425635 837950299 496859796 660430842 304883292 826045299 655605369 970162566 853435779 923192824 391411676 487274762 562858913 724400265 906171228 977336088 743996280 941972497 141047403 342153944 260875639 930900767 522418062 873833834 401874779 676369935 732469177 987441951 291324348 722984230 316439489 728685871 293065186 659358449 840883613 855905358 946414418 990145990 848651044 966012892 60365717 705162293 139257927 951790727 494706551 927061132 642113399 890728661 321670321 740730549 126834430 389277360 470859009 928845898 181023051 993450442 255207407 567869403 499438382 703487996 645916496 733839909 511137267 863241326 639340901 886090521 186503731 568984392 144035993 409531668 859643551 865302913 13310106 978119729 34770036 144011667 764039599 927995329 917236719 927981719 459301653 772419621 181238006 888602398 51362577 501746278 43466975 822487523 184678399 420940545 297878399 652575630 593146292 681856134 194157150 747218002 936691591 937160639 833373616 962079459 313629448 586401977 436113005 700702854 909221625 940157409 697841870 892947481 372930155 706792097 1089488 265986287 565022836 810962795 279377313 453706621 484795611 864666813 28807951 985255345 457360701 948368913 512951696 869371283 519695504 899776433 712789577 830820276 331085134 854783864 410809054 810110108 661511898 667259469 397880550 762583031 599062794 600285676 111326960 153368693 528767530 860368317 52437671 118804071 450537347 879911445 691290877 853448320 650631254 689718722 603220212 973505596 992446973 996866847 213807863 923598047 514916211 765066298 216429882 494794186 189891411 610732870 693140683 806000145 406792157 663106973 559608190 565935844 469209648 738292125 784117641 784233587 752375576 874389229 205086844 282926017 718000141 754765757 645579500 881787036 173192650 271070703 245107425 887852320 723036333 870123292 136242155 789669541 595085364 687510832 569977841 757093056 995999165 997960771 246431788 514561581 680152344 859684453 655824794 942132471 583609068 978688693 437252106 995629618 224931106 253133494 743455264 768071893 58684082 949307243 770656212 772773494 27583256 57138794 582789275 748460776 645930082 814119902 632249522 680961703 520620014 942834548 988730693 995472661 233073152 814836387 773207435 879448596 736935445 898225691 625611439 827130037 624759926 908366675 547098127 795826925 430728078 534747861 605047121 911961718 221453152 809868528 283411675 909878758 132467554 817284319 684273984 686045280 566909041 901607487 376662622 726300794 701948152 858778334 657319877 692553807 673433246 726952330 815479009 858791474 764223859 965044591 396894970 767496180 613152800 673666941 933261269 990449657 756186202 977010285 36081831 164511535 278930600 919823250 22418589 376858754 440193692 863077719 39874265 731899764 1853894 713902554 369070644 911850789 20043268 980205230 288638136 607037875 638924206 658158642 251574200 737082825 494752459 806109284 576232957 886754746 102326511 871768248 558013215 707347850 275880098 603192420 365848649 695070699 428120009 561582997 237662755 623510022 991788084 998688055 801393018 963657365 184880873 721097449 890748907 945098534 113624056 336925674 295247301 714074181 108472056 181963657 486848259 952317442 311770872 963676608 770854599 985618945 993112926 996140671 71801797 128810380 172163918 822877352 297208204 831740549 443286314 923697098 777550644 827990722 463425650 741027636 894506756 956579636 417410764 828203509 318091087 705456997 54332993 291561121 938656449 979544638 401606915 537472484 102232969 816034134 356121 69612964 858766361 982055160 104693424 485841784 506900552 804614763 635973576 742199412 647905008 699178746 689228608 862953083 128546412 932831891 133342193 159060124 178384551 249667380 550969209 626521015 849591914 953857041 551584484 783486061 464069199 514057851 878652615 900047086 81901352 341264334 799721700 994247859 114638572 635028933 750437985 841363698 857048186 912445772 62881714 510564663 86086105 542865357 598968648 689855340 350671959 495156434 825727872 902441874 249830136 371242293 466917418 653555345 653884495 707877545 394205840 525815198 295542881 605942743 26594608 128284152 480766259 561603463 652324089 732663437 909801808 942399166 387759269 890635038 220440664 831757680 263267670 701947160 975124280 981273838 444707955 984335125 132747199 964314788 718557552 976362542 457678590 871685584 516518980 568215346 298090155 960429520 323837154 780979713 846546972 976066129 367453670 733519296 949476486 994752461 138743013 931734799 915617458 990257980 467133163 769147830 742304768 995710204 340153654 672575167 833156419 927841847 951879158 964142787 656495925 771355265 662180429 957512262 855283842 951400575 328456131 349847379 99468457 837694549 778397530 786595668 65876555 488530289 131871007 756031602 715552200 751467869 180817429 698685154 785305591 795699229 576276073 693283286 504617615 657731308 188858572 764120043 785531908 881637710 873474030 905094278 709469235 953097153 907924532 942483363 346207498 827284365 147494002 957550882 187768699 439404978 346007787 952386946 191006191 824342966 537255509 823745383 201033384 529230187 732958918 968794649 565421011 699456550 328072156 452696548 90250770 223624591 742649990 844029802 340548728 371953981 208936111 544159490 1341776 523079266 935074263 944822926 95807708 554099576 447995354 835666934 780756818 913402210 299622922 462962209 660294483 880884797 659229020 678836113 214619401 391415476 840807394 906258438 878962898 887637522 553720022 602909818 70155523 950771617 862885100 941586403 354014877 399587629 194766173 390671141 532583952 550939005 148214266 877787016 192263584 636904295 683674863 746904829 113880065 211739978 896328483 958228005 622305990 839798552 351947194 862205514 682357730 885500439 812651322 928050209 530131353 947144330 141385573 699815294 282988011 937991877 917193382 940110261 984130308 994667336 485870578 988224416 389569507 623906260 956968073 962205130 35962215 588081408 107009479 495157221 768665160 982840295 387834272 455768397 316225953 337509463 27551970 745108805 842781875 861157588 859902366 882646371 66689269 155211423 662400362 844423028 525539754 560347559 117481942 525980417 254636347 793145288 836485637 973493856 154682927 963594374 430340460 488203254 763554501 974832538 355321231 932054808 164845013 934049757 531225684 940217565 817133146 934509086 885762234 965930396 701019735 851306071 88986220 812912889 289301388 656374817 964493338 988109959 124727353 378093452 188373280 231578173 179001325 267198146 673863879 710134101 545467563 930963752 282840628 832219276 722450262 881886211 291195699 380827307 424243964 892211034 737365073 822935828 789367006 964699611 976343341 981440892 785636035 948606000 548396440 884898854 296979270 622417573 499121381 668883244 346193678 717716788 12038825 183648947 487455972 626464802 600447093 604759836 677340945 861615979 820825613 988320430 788918943 954111842 927503976 993376231 398418428 687393359 521146656 834435898 755760925 782941585 372178364 581287216 463140350 631233639 399399620 823113568 555445746 573249231 855711907 889461568 105925898 837598935 213252911 278988528 626795276 751993824 41502029 672637498 763674108 783824896 790629875 985209147 315082735 346774074 78247817 988892267 511233129 882236769 70091755 256434097 627944859 669191704 393372557 728271202 750060809 972321980 320071256 991503504 719712677 862984495 696632414 840034545 983980597 997969276 302942973 527241596 951709542 957359253 249926859 861059447 909682885 929558428 607200902 671028886 391244801 785571869 134496781 400760124 949015110 961635164 482697114 686177372 224337186 911540227 877710392 918984237 662297751 828613818 771227273 859696734 211702950 402940203 895850235 946265090 654416077 812446605 228050748 256095362 808059623 961654931 255679889 361104712 513864986 589902116 994993161 996598104 458292815 923504563 966170935 987141482 374246618 712052931 334018666 870154289 700948846 936955190 454884013 777658624 386032613 944538602 615882041 729832022 337828360 485225450 699824027 776898236 899645007 942489824 192580019 401771905 268062322 873853607 37144035 260612038 899728365 995269428 787021555 990296378 595308803 868600098 126819715 457760548 406830105 945051119 480179533 814966848 721584501 778598149 734922931 878051631 829654857 960793438 924149137 937344007 177608328 909554846 565851734 645882508 632568063 766338920 619472408 797080760 534675734 721529480 810396497 895098775 723396420 776665444 499159122 626788261 296483366 661807585 820045300 924285139 607582149 924016455 252251143 872494283 516981301 801446143 345880751 575457452 415042450 970078464 859059945 931695998 664783953 920264508 642989118 994987132 333490837 847842501 18832844 162578222 899662436 994920862 506184249 874402707 104623491 142992403 683712462 758428561 283491162 897289155 73679095 479747221 373960299 993558310 142437449 519867517 291114734 752015795 67536467 888173321 980954087 989676060 622843438 807501847 308482255 405501648 343431043 847702932 339581635 955937141 374325838 494563940 263526431 287444691 38622296 816511407 178163123 875680565 381716051 618686414 632775941 682475245 225906647 417954137 14201348 911963128 620239637 805043769 437558408 642227992 80751303 742871548 180927230 184888655 588933046 954645904 588888741 604415849 113451976 484457507 318972799 723598260 376319498 607528092 556731052 625837011 938642620 944964642 454504189 698138534 967449878 969692416 939795611 967399906 216558287 255198649 504536825 883322788 364494189 534631714 755745600 871741574 847759096 851627126 244844456 478119045 363234564 668358532 889048823 959623265 631432569 703423355 894675155 987108148 198415313 694361623 125767471 251924565 950271746 964733766 238879323 533068793 420662440 754999217 820519199 901534219 33650755 185972825 988354610 995577501 265558988 674711877 269989620 921774983 777489920 923975257 772638936 850977886 687036780 927905165 855833024 870488791 685143815 775846175 244717458 729197847 677519521 993574743 851529882 919580106 838304693 950020215 588541829 941072565 723954671 954007652 702011957 759383385 295831891 325131130 216386819 502711821 863771283 939550586 18184967 46503503 312884163 682353368 744000623 988944217 407581580 615720746 316900916 943588674 234854949 318346174 407959643 509804681 146482765 360378282 757064612 966820979 313495751 799934304 821436170 917189746 197195406 636318485 417139781 741180230 626722138 941009431 323305347 652706850 222828710 397235838 713057950 843023484 95905963 345719861 950547855 965069086 33755112 406458726 865495304 887239749 47301411 541057018 508081586 977354588 570505292 705348210 648327681 998976959 204127914 539503244 745921475 800558101 968518188 986110014 971357516 998885708 94714419 723782337 331315573 702777646 449191681 754676624 67860518 580567105 808222672 938704464 948913251 982537732 181635543 995141956 254222054 615815555 571994286 589498087 992535913 996289121 724122726 876342001 236148058 370777208 785136844 858945008 688844892 857843609 822579463 907969283 925834641 941704776 539491835 644607910 118238048 372891495 418496546 836961408 122261797 226162391 87474000 514835913 260952065 820200749 273495810 425925710 727207019 862494657 433670546 936633012 518971558 836059284 783150635 907395046 59575807 621283047 465499735 978932081 678171179 955905539 34104314 756329737 176870619 317349153 207439195 304119423 110082625 184506333 597291281 977099175 209832522 662991292 194749509 498610313 648458539 742376971 790135765 894054450 255073074 718612193 510520017 905822799 228394321 299833181 621355355 643230670 198319429 476476008 291495701 388081268 72212014 663736275 152730292 174687992 218628216 235139455 830936528 968513712 332491918 517518229 639539415 813077919 398832241 693226956 318808907 440329415 673874172 867355649 869963950 934238993 710752920 818826140 41646996 301121839 90321124 802373917 919823949 946115132 881092455 935024857 966022006 969053020 761178102 993354100 718822519 806937806 313314979 643999620 278408115 949706836 981117752 982005214 447802013 502578602 862751683 928505039 361604102 748033033 721241418 980004006 605963504 729951119 595347483 750315096 141546476 417063812 389333002 401240353 165926656 848363853 663860872 688241218 220924418 933025685 602452015 794740755 137312396 222417204 332804973 450455547 232241897 252416929 688346826 736802145 78550072 436767060 130915513 482151241 135128681 517174518 988963816 994662673 883682929 920445539 133288512 810525502 434891898 504750565 536516801 906715444 413055443 775252368 639142659 826044591 161892769 369737388 751274004 912763324 799618943 904068055 778940337 855062112 16600490 378522442 51063939 444529400 517960898 603626268 439939268 826374911 679555089 746205709 41789064 588807059 928437536 984802614 600736274 942543018 184619931 188168683 949514449 953768032 347640883 779901662 301284043 882648386 634786743 696693990 993529803 995601917 882209768 960560988 962369524 990135503 283305362 631560255 370421061 564098283 929436535 984094217 360251542 374156168 387525187 712759265 805981871 835459418 413786405 780614251 428397759 443013978 469816408 729921857 940779397 957221947 164924812 573461694 521169165 626370882 72157943 496697326 753304726 762926012 433031889 463668982 265727267 361452535 42461631 533647227 500060184 686388845 934538045 982958351 776431615 990506598 466309138 706883940 543845720 652242782 353404429 395362471 466493482 908048677 679098337 728045916 989871892 995186104 516064525 695696136 491472096 689667643 953807054 996140106 919213778 986965555 876044380 927263987 917845068 961267371 469976947 582027524 52988323 717742792 70499319 985782548 978198730 992667208 647840231 961700767 853331711 885792268 983121390 988289633 656776519 847705988 734668750 757783049 724776026 979368476 568776044 636918050 882437689 951153323 308201335 820177785 65356594 715886199 596212939 775257603 686986095 960331335 982011662 990084852 865900248 967906907 165866011 742818477 855274137 975318963 895073110 990788004 617861978 880726437 408099105 429199417 17141908 544559868 508713128 661203849 561223866 612516236 665029959 757239150 942049618 988462380 163625615 325694716 886223650 890594302 353778373 525808924 710408590 978752352 689499734 776126575 837194323 959612866 435067762 616379499 492485261 952931225 627609483 960973879 70159423 244414594 317664411 453970555 887784624 983342864 709022664 730102549 496328885 574705095 279477026 613404997 466996553 554249240 890480345 929741397 949885227 975951687 278818994 528953875 469432236 487329771 302571998 955465466 650112375 941406728 945869097 990891870 905332116 930944187 247375727 928785053 873416524 972907048 567342512 723197942 353929471 570963160 968485026 994737735 315790607 507783556 76621278 442963055 602914124 727987007 593531851 874157557 458551138 664171465 486622214 622678607 427270052 508881694 430583271 686996626 979897601 985015390 491405768 895405216 907193630 927514713 123642346 241563638 836046166 844651760 832894293 925766428 571170452 807246979 346385847 763458446 156852277 304609066 335485030 548103688 859336649 882343351 642677005 850551250 978613013 992093222 387332145 812854253 433687986 609964688 658130155 830608361 769077339 831412264 592615339 730236733 947707892 962311426 550080679 931602979 247831050 757706412 278238672 870604921 31920110 914257451 510828664 944962589 999043117 999161278 343712597 820296031 622877829 908541187 195964062 461869579 606711840 814695269 824898911 842463290 569243574 933335970 31552212 809804437 817858130 917849791 501031814 686334420 281875980 933268462 748900125 878753787 406296398 942679513 621076079 801600036 672134165 893210927 864804798 923778591 794050032 796188276 821229693 924145643 210640202 585533336 351154482 439333746 885605138 961134150 330067246 530827103 762319451 769315241 420541051 529960782 802726076 854733910 759880538 880631850 502539707 833136129 741103009 915872286 870408457 950892860 798419839 950896000 222937137 743612872 858517078 878552149 429737813 736344785 540080422 761557301 328867478 582576062 559565173 562011485 106824431 901910494 399999528 754973502 555024819 914012350 424621272 617806009 311513985 450640459 966936188 990275169 11405508 952241869 531735280 548143452 408159379 648337219 112715897 194999967 599533520 669776143 907910451 916175999 136659721 727184059 989349025 990337544 633873600 657664755 61364432 300048463 863688167 946229699 77770226 773118450 325071194 910006699 983101452 985608738 537559980 751703522 876044004 943244313 894789885 906737011 413906740 487163849 975826515 992500983 589742984 972128751 424368631 924117985 948285852 996421370 552329891 907415933 809509652 822596717 457075032 910232360 642835139 685753435 961036044 961753520 257825705 669257955 743477138 984496294 482888776 615840055 502202118 586845092 265447108 525671412 788511548 827275695 281496669 822718692 998798382 998980212 57242254 59012064 633497614 755584037 641589392 921436489 833867670 992746228 41328492 807595675 554207428 710065895 717411685 852457950 606070405 686974570 465499912 713263789 849082964 941812206 246107259 577439579 470856306 719414516 6094875 279322854 466450788 681444092 839182968 981708954 434410468 543517104 741942955 817132954 317407338 419494552 738096266 849607715 204227048 335117338 701057982 759267646 767001953 987356869 484032666 606173073 875106511 883750304 364548587 380402576 472731930 723037860 687967285 894093921 728623899 800055198 300714346 532724390 98363455 975700746 997748886 998560499 720834909 805114773 251284263 398000281 671883276 928234521 972411615 992517811 505451716 893505881 166176668 624900807 63915614 735670797 150736287 789529659 386419983 823281123 300523268 978532129 169249219 481804211 127827185 555660599 875285439 886416635 474100855 829905003 910001362 950391117 3592750 45858231 80422925 271148394 179142957 566398061 658291493 667514138 9107109 867324784 45905166 749340884 218678694 613061606 670720038 830075393 878141568 936466709 4536574 452413913 378726499 620381998 491350155 708499374 24955211 337687991 549025706 817532500 582206346 786482316 889982502 942204313 625854095 705631853 896534393 982827703 140177203 939801733 487486617 926528519 261148535 727268788 390340302 686647893 254111318 950962741 962707533 997333020 672322701 693197645 130889737 698624519 777105141 810670234 964280199 969114997 98727890 855890346 344113063 937755983 879905413 986756232 820620398 848364092 417324976 934278516 882864372 952601552 219394417 851746897 561349947 710822786 383866337 753215015 884483541 961684781 93214897 592334654 474271126 668372586 68833824 940845119 868689102 989458834 733807302 803299386 444838305 463022908 220196689 594034744 74226400 521661897 444870667 966801382 630143523 929164639 223819376 375953030 310788122 665572763 590420884 934844703 754303332 763206687 745840830 955345014 612239687 894273414 188360071 371112423 472622148 645668574 849795313 878520588 781930690 826098458 867881341 916740040 807747687 843184104 40464469 82006005 673986257 674322153 855357969 968889106 972003131 979223159 299468867 856188124 906021680 920254268 885212865 906446348 730222476 789538121 940098139 967162370 447917777 710245361 423904706 706976330 199198842 645387288 575678281 997446115 450415159 948479917 435579608 627205790 11914108 981695773 637877847 745123353 741468745 851815745 692973630 770177245 562632511 776715535 815085297 854284555 595608944 968085179 669264679 791344928 498236171 739490501 521285298 611912668 692678417 968376271 124171920 186489685 834995528 836734269 526503702 748214563 663161633 745212666 377432897 543786010 939021149 954960195 806374320 980877217 926849377 973088357 64244650 967330501 768416140 791948967 458269963 694036421 169576606 671031275 795930574 966336151 811807004 930251699 241718297 971432234 654595881 745690510 307284302 576988937 358675955 652362875 839922158 912256743 487098176 690848538 356714378 615362135 144682385 534792390 745906980 943138919 277553355 356757206 780376764 951175475 432430468 623806536 699835166 861256403 937326549 951111229 306581699 948483761 597459410 802958145 608241343 940591261 30740940 137742883 698608667 838755878 787651162 950557930 146156974 807651902 102826679 465853856 366949462 378952648 118759292 827625750 607056015 873398414 30964658 847543932 337090945 402980808 752253851 802859315 16093557 204541761 841033395 854320963 121108630 462365990 24353063 256507303 696266383 811050368 224916997 856045747 575432263 981908200 987304375 996663280 777199730 849260537 372220249 373618205 682333049 816392275 105626907 927129917 96153912 222113487 892102856 901284735 863183658 889992069 790318521 823802003 560380235 641311998 883128193 989540064 241576762 825672982 542448266 892519219 967373163 972119101 285366353 965554306 105388195 454406798 771248385 893135573 309948191 590123768 857172409 940305301 989355024 995612756 62577001 967062730 900510616 989398977 487782180 893661646 72451518 74723844 128977393 131264013 756682017 935576798 72795056 340487806 263570783 834951111 846482027 907003755 991403693 992114944 397108601 534835880 213071468 484173369 202090893 989618955 944883812 980498804 529273589 956749709 512859320 771756960 964368491 982816475 620202056 665256439 561308385 695759758 771235643 905297218 23531944 768068960 924287323 949832955 730742804 837838769 91001780 254532024 67838361 845471664 19221210 955218749 686796192 846513691 909874491 928328460 315678329 735503694 138682867 980105551 812895586 914860742 594996821 790029240 397069366 532083595 126546346 857736782 109944287 403841863 556981703 646745183 441060305 905614557 898214349 920338697 595682914 707829234 936048757 998464367 969789193 974973837 645594093 864757705 454864704 592748136 538586796 944123134 200912047 907285379 153769719 179483778 379280041 660807049 555147103 817655439 244045165 841656140 91003439 564841445 47525312 835820307 687731078 884681499 501536795 629195291 485039244 676869673 924398380 928442223 995682431 998397762 664841553 745834233 673373487 842547396 63001589 479808267 650775203 960286882 134998810 875790445 360013592 456092645 560273117 605215132 470143357 557739236 212595442 766983427 724606137 978995254 191912996 792279919 907620730 982842145 561831845 701865289 286152360 551311749 363252027 606728472 202126503 210838400 476332217 568245817 328420032 712926676 620963848 831266213 746726114 810236528 44003809 736805576 843210832 913536915 104324154 124749522 979218767 983970056 854172107 959999314 17945412 210871835 597705502 624459717 919336860 927596820 446126467 620111300 158864562 182300494 767511005 779363106 59636274 651525467 279363113 749533152 940630904 945247295 130694046 621215208 484920161 558449508 703746730 865863561 854012093 963389237 452904275 662425347 807021221 894853219 358730328 920484984 619498194 935250146 895739517 907748298 358677177 517142595 226656603 981695240 55580719 200786527 419146412 735654504 310958010 358446847 56274674 533294248 602050559 609003366 404710861 423427851 151026927 655921624 36913442 188803096 897575033 996211990 640534336 956977710 949945902 983501616 201548835 678774235 945207955 997481390 360269919 701123713 8683266 52402437 115796414 210915929 513329083 813992114 416670229 971619351 899848920 961477269 647150780 878875238 317940695 494754834 358036506 584771570 201547135 849242081 193613962 609590201 67224002 404855607 724816099 995221429 227989875 349840603 585348754 898469766 903196289 960648644 409560127 787112527 453110687 806291983 727906898 877897467 216078357 655439923 578791534 644105135 760068649 770189564 331122548 353056692 474753221 589402009 680722997 885505893 477378430 592170693 823692987 948434911 664499683 885137659 429264962 791484224 275695275 898388673 583275125 840430107 571004147 819489789 365311548 479276764 793148391 868175472 509329878 683803477 580776927 699819290 936438400 967186913 174751961 349968202 356116956 750953056 867340846 924560652 763469724 770353197 79755809 873950137 943007517 998193712 601580946 639242737 799114628 869553741 820766689 997665104 286505763 896472535 504169278 889375436 681937036 868581968 426628683 866650524 169526797 779346866 889597614 972449137 364227548 534627458 235520053 242307888 380753751 730214129 255236316 741810470 862095308 876504133 703063289 867894995 420891368 678269410 285406016 843164053 956230263 987503400 490028227 544166145 10802371 632620532 477609424 968031455 521073819 737170847 263250150 449620216 117886910 650885455 294675490 926771271 483429184 493056001 440416826 700752529 181758625 897264188 288314936 890554014 647778016 754317670 568063197 786726286 421981813 812091671 103986686 769698248 543597248 930618165 485680116 784746105 303993123 573148117 636589462 948991463 105209667 157044128 371673611 855629016 630231099 738360333 884559577 997882842 747839034 955932230 246877895 541322230 103240927 151790189 285274816 344513848 519420692 948427974 401706058 909768222 342200187 857516995 749036149 908364662 882848708 887235252 156797426 856612041 995518052 998528270 689754122 922612217 341940942 878571107 765398370 794888659 125478358 657965385 528586201 864920549 856491344 917659719 161478313 180403767 922197345 987651827 751527794 759898703 603736431 717054367 675814462 798380795 683764393 957311301 244097170 441009022 923963906 949829649 525498440 839700814 528884531 819671337 957493637 995100058 764263112 806579105 389121740 874105785 32391652 557902642 11422327 453207820 875795273 960484249 150633197 168111775 310352269 354759752 260482244 607127184 685628214 695397799 960480367 991146369 520845669 699601673 632362238 742940127 961081366 995846541 780312460 814412305 784635219 844554402 659800663 774169276 928512764 969196530 687217482 712414914 61597726 87822314 919588963 975148729 679614425 758094921 765537031 800539674 845040377 887171909 680509674 687220070 546442482 688973419 286460721 476967211 98692827 466205193 194707047 211656022 214509732 315596850 196242482 236121449 668059096 765590607 586937116 793956964 854669888 947164463 108731944 150364321 195535018 578175769 979445613 985132016 356153925 669078359 345292465 372320881 62400424 528723391 899630400 960810586 262316646 446363669 595109501 709986733 50358306 948837768 202725234 524613469 977338908 994218709 920772613 958970730 259051592 302883247 417056325 896963863 754371921 905276929 67177307 247664685 696660412 762853122 393573804 882621336 816308538 817679077 364689983 590184442 113967402 155723023 526986500 892277152 72734540 520542839 188522645 330604109 561333827 607673605 350515043 452586772 107882566 212748421 145614554 801954187 85233819 439079404 717783547 742288586 710118716 734727985 94434121 408194568 923011276 960210189 561937579 932365374 138600150 473232483 78705040 866561119 128969367 326340674 432698790 584982016 874663883 939755150 427875485 638034551 712259064 803945228 695715486 870797102 854969918 933178684 569541201 953129467 429023705 661120460 787641610 814401630 427148765 908533900 803961313 827640109 702303174 895547525 628113239 819937291 791899042 935145175 392943114 967444230 438101673 722633451 367144364 430654214 555344304 998910406 614298425 654641468 528912945 680153319 174679010 673336019 365054090 649633466 16584391 283421570 255258147 590386503 690286623 991540818 804764003 857612653 484838190 725382581 156926266 771573692 771370775 943909184 51758897 311568600 519534519 903810577 760830456 942512950 799818584 908621192 573139315 843984069 514732433 911918355 154593372 299815247 579493396 727425318 24800690 579616194 244638728 593901985 121066145 646583818 21285760 527339403 848704440 880285244 209789079 534261392 617395053 876683572 716022105 797229032 371578742 822910362 506018092 687091041 359309601 813277420 338043124 611757627 741611653 845927962 377919885 398061141 926555260 961714985 613829151 662348703 450636296 773517215 9214793 877653451 701076037 818780053 22823862 769741939 693400249 820802642 845378240 885463013 646739262 654449553 235132101 457751510 978018240 978730081 759283888 827359162 30106428 202073910 150459665 483486635 710803667 768157777 104303474 482777267 739727067 902567603 633700745 756684750 390318893 851213193 783306026 840861429 928799876 993697078 703746864 767312492 564002565 613377245 667931324 749508131 355960855 929142330 166329845 747900697 887568784 933948789 629556309 903995975 962364776 992455157 753256087 942033586 923316076 968910048 931966759 956094523 75462767 93465289 992578209 997053028 697264585 860358659 923045097 967392203 141412227 362779345 17759251 849661796 491319712 784631112 5641495 449348898 365840857 971664380 313917874 783232056 976608677 986408248 908342313 933174020 730147115 920000075 249176604 744184520 74546808 868799693 551474822 844485858 295044037 465965121 897926918 941903750 598510142 927907419 325160637 364977418 54743470 522323110 804267064 973862849 995479906 996741652 632287481 832062820 749167571 992393940 969459947 977419655 703815759 720028805 58783565 725627026 962088787 990597530 209506493 604399995 251788291 531220756 604430091 674025544 30586212 259003896 746248868 866460251 661218153 741790728 954363290 968448581 415613209 614995042 334981602 922047062 449250480 866178706 722026315 764697872 49427586 894865113 718215426 749600670 69483039 117324720 521491632 710099139 197700602 204330339 531366451 581032833 596147176 844778372 617759051 891759888 274115077 664938622 72224523 583311736 314723830 633513679 276764117 725556702 147306427 671557275 230981703 580325492 846181252 978234629 435147474 772662247 125069575 301300139 738191579 844930691 913226495 945401634 785456398 844868151 294900232 941967869 468858296 950704838 928260832 997700930 609831118 979755130 286993928 327978329 381257702 571068864 721653139 860424955 463744673 917878158 216712402 670846056 214336992 330150938 854615524 871227242 726610176 741850828 198549263 331613624 226948653 917306163 632657602 819734203 277725996 983877325 702023846 801118828 200490939 203600378 337913322 481742753 720740642 796670109 541140869 970494186 358171654 858333041 841836382 903663933 133028108 954575020 152942796 587906203 434851084 876846785 102692862 279721897 629333594 646190357 836334275 972389128 952096916 980025836 288401771 527927124 53533564 828634485 992153937 997310728 540932233 543577840 482503226 499269746 907242871 929168046 270659697 589779490 106770071 649980240 772194543 843969439 697456513 949681073 916842513 998813851 627928000 649926553 475209331 894552247 894141821 994345013 483539305 710484855 485386615 842493202 11219743 166599995 399668771 666556332 775213265 814421461 667128636 875501090 318827738 888286698 195665906 867545012 778882474 929784781 898986311 925282572 406978459 653556207 962392157 965633841 500361737 572572533 96471581 560369616 413421695 821567973 662212321 839913581 986932488 995865447 210337056 956625229 93328772 950064451 752741460 796845014 868396111 890866387 60820125 997229427 147652855 735426099 279427610 380336140 980913796 990229079 649123528 913872020 892426904 956291337 756079429 857719767 692463283 701017322 349629449 432665705 520540142 622483168 61361074 473975866 681675602 732470452 673404629 791818650 219867739 841560412 394048056 555380034 956873429 985989119 143998036 771481540 657951249 714650139 340464164 921077166 155207538 894588196 905992891 944425435 890259354 990725908 138983430 882062096 666718517 957646333 569185800 915007330 630507798 818317075 632437569 984151192 884599959 918027163 43792633 427830049 686114770 878505269 781484135 822857850 91657851 346860568 377134426 855786901 976123710 983530332 836126960 964471490 77412438 496841906 197375949 903003043 566435502 567710026 355828588 823169167 972630880 980278240 924178721 989207886 337800725 691183473 298932711 318414833 288129549 478624333 455283582 824618297 31822744 323587664 936487575 993821657 111761233 690840196 826694503 890875245 277532208 846106370 857850427 943438936 751799897 978237313 540150429 967569599 250835524 434221369 330862611 371082452 790255626 916897528 672200285 756446234 288956703 767271520 839646934 841200569 254356022 936294634 170731506 919055201 242267769 948718796 12029986 963376814 727170161 978263361 557112251 653954212 1833013 276370516 575215107 623847540 223631043 288000470 294839824 800251205 656696526 959306375 77526674 162853461 609078141 774186041 821786395 954790394 981977791 996538149 725589176 849693617 379269644 779983954 266531761 960372489 799448170 985243925 851468527 948388675 597055796 927565390 892523106 962937460 606028718 649827567 868229317 872911434 630940449 865038132 993100810 993372298 353176991 538698101 455038051 962400514 558451931 789292308 322864117 435543250 418889431 450881753 408469941 590556216 798823432 845159343 632388841 970904793 233172613 740761236 760560479 762605540 231535468 513832596 228735175 764501529 521791582 610888721 148293323 856097187 942059671 953637270 138434999 714958066 520013934 885119942 968094543 971861704 155633530 405486833 369703488 626378862 289752194 391083328 511859785 523262381 872931596 881567604 104006618 425074862 282013712 342315054 297138387 859384028 473091842 622333551 688536999 718326486 879125982 923729611 320928097 651850517 479116167 706175767 32248942 442998025 259703129 428168895 889768708 956381764 892291164 905544220 527114267 661618810 619700165 778323258 876013089 985741599 108078418 788940662 767662293 945653725 674554418 895904833 617810051 798226107 240164944 658441787 66850111 360599927 964432703 997870442 860603959 928126887 250162950 657348148 420650539 659914618 30852849 415889958 738245592 746337747 429130676 432591414 364354884 824189929 218850644 381950564 822003603 839471672 600396234 912083274 177014927 805339234 148967401 671012576 313102570 813495349 871747382 971254162 980933935 990510724 98834520 887694773 432721012 478906765 902539763 971039577 193351327 715306752 187956967 544109128 420930329 939114278 305645904 636861535 560439148 975593859 63128510 67484456 495122877 809353747 251511436 415880940 716819804 983789611 354284204 873968533 107042547 527488501 372011855 634464265 900568894 905764153 924620105 994308692 268100824 497080596 412880805 605566867 8016764 762731390 89817561 357326207 471288062 702977209 231066501 417505453 320608224 639230907 811064298 848155734 663499227 871439268 105106123 515254255 543386460 965252887 574440594 749280549 501687653 510045922 450977976 557909960 104221245 176416022 661370885 910118600 151477865 959009256 696223348 799591394 839987227 967688093 283591838 872765897 476371564 661648024 470619520 852296603 559832822 724145207 8480026 639978578 169280746 852773766 816275932 944995891 139980533 149006262 243990249 891774969 486461327 825749279 87359993 525093970 268165306 878660910 427098131 512170653 211683126 751999171 294631074 622980562 633410882 707191959 101871189 160626612 385453044 976022879 652143654 690064443 499716080 630660602 321466527 611841584 77933236 819243099 105739575 554562135 898875921 972647167 557632686 604424592 797207193 900041143 49973608 767101683 572152281 684536693 186453292 443502969 867489637 876478199 98611205 636925740 199518168 929365141 503396184 781457904 595712061 903375630 110127981 730722355 280447840 943314723 41779735 685737944 378029484 830223763 204493483 892750538 806016905 972453971 42172470 232538093 307549465 868637620 576825478 865943448 516565921 909560144 994788468 999258289 174653868 218926339 313767913 399902470 255903042 985761196 846955062 973250411 567058797 779416001 949956604 993989922 540694852 556118421 802679444 817993438 672878947 771364926 806866345 870749099 397778165 807755654 137467193 264471275 306603411 598477477 152838093 522235556 752081368 841738342 202623820 849616188 874370175 926836539 193821973 740238021 830305119 949639505 61421751 188753060 116875099 360319922 723704303 871618423 986798943 986801389 276778796 287902900 399323663 464719607 121688218 994752923 15178110 537705174 867531253 996263279 910296474 999310727 890566042 907340544 189925927 209952044 289364423 449829732 219246194 414367436 691684308 929658296 242386514 426657068 233575036 910144474 694789435 808882381 844525061 894731601 129619827 955194208 373831441 840679043 556869834 813064557 229625039 469703911 515747681 544136285 210808624 708391234 600752062 962872449 502487197 651396194 24281600 955820842 61528976 247577460 968439818 976165257 661473123 764507246 145366262 794935162 490735301 571866641 83860331 338519419 611415917 663268064 513201787 570097354 215939446 666886810 335401464 383767127 410150013 878147775 341027289 699976339 496614198 749656822 165046010 492720372 144483254 263668958 426999678 559684502 749710770 813735402 463321402 531766746 169681457 200245429 414628320 445362890 221811988 236766445 939831163 991240136 227750482 961956345 524313156 661278211 356733613 745629354 668084804 761480560 145598705 355035623 174476287 242962318 953948021 986609224 728711841 789835867 738247351 802553904 631525911 945017271 313040987 655612709 5187146 622335562 329691421 849448265 41403881 397507803 307397594 396118112 54794708 655678124 402831212 996605922 841821945 967811963 585313416 925397686 835449759 961456847 811309186 959345519 981651993 988681328 938530489 939698623 544510970 845068918 553087585 577796592 866565960 902142798 449443425 970369886 673553279 901449832 391277915 398416866 605243421 774865340 365475977 618137211 682975372 844214548 979154089 992910094 554526659 910837521 163658178 454352514 221401162 822285992 214946413 960664168 633470384 804072452 569572953 626013065 123601133 404552372 233433262 402522470 632123991 922579059 378620812 383451144 952154643 959330395 481511274 560106060 553291241 562033367 449429458 926949311 787006342 840329875 276821347 756014775 302847270 597222758 726767689 921249718 576202899 742477326 595248096 600997555 551105740 845305254 600769642 953929632 372048667 473649309 863070473 930523348 85968741 355797192 427951868 943279029 689362860 990354012 621652209 873907033 259935215 764621034 96447423 462025118 33757001 238230613 521816662 969300163 994587498 996663153 978606799 993429740 438631439 884267793 61176710 374380394 132363160 357280834 412813905 832310997 516600292 877315326 114745312 773923913 5943350 456086286 600441200 750380712 665179019 748330081 382330344 914148286 696829241 976147879 277433363 497572615 649662423 931733778 728008331 789888674 913848988 960906043 779959381 900219985 732278530 992662801 334010727 705054062 537260694 956450633 726572504 836288464 552194618 717009194 550428931 668545686 491992220 776226537 372062436 494355414 575095103 998014812 535455331 714806746 252550191 581541968 163581324 192664160 71068462 607232036 392725835 602635265 906665018 907965234 952625834 976684027 241170610 865368002 23264462 668743816 551985977 891702187 992948182 994286246 985473511 986704264 198309356 376125032 913370705 977151342 608572615 734508682 349155108 602886551 682611849 763471716 359238585 930578025 339071674 708517815 945085178 987271344 500067294 848833426 210412398 995607403 304672108 607008048 278327899 625761922 170451372 986671778 379502248 753343790 95102701 914923320 505574196 681023569 260232475 939280281 302251942 572020893 275068449 871162583 7298638 209520689 726370646 990175145 292005876 931503399 818769570 996592963 613044208 823769763 433632952 628891796 328687208 922536191 305152516 871710367 893005423 933766385 351999088 576479003 728738102 948802694 257856546 456915831 848273385 855890072 697023863 953038984 786089255 839924750 309198456 579353148 476413676 955232155 189201863 561791670 15461283 161570697 543018543 680356633 631385087 853387353 584639358 806696652 819296707 928467982 630814376 768984345 140476468 608707469 295460546 780666911 587171732 989817806 640496110 663072378 324106318 646926693 416997916 704652721 677852819 741573879 60511633 206769391 214497251 678280000 428076207 692465198 886764323 947268222 901153444 968969923 498439932 772056842 988509854 995032523 526186351 964683769 9145621 920631609 855561611 880788287 656257579 669113349 262617561 453584660 827309087 905387748 781415197 818127450 215250266 369773771 414717264 900973788 405520180 786054026 463429667 948791050 164258897 348027900 462588249 580655611 792926680 833871906 817203234 953948563 35485605 564417087 394769356 405038949 640331423 731971741 822800911 948211855 498974735 984674121 368614177 909880945 33070456 356726292 902706378 951638557 159783413 208655288 446908177 534014836 819807950 961567217 43368348 779715005 701548566 782968923 639528896 974254790 829906119 892929890 848150909 902564614 734545155 927923148 570651792 888578965 35532231 675860058 445209913 446626198 298515335 868482876 772722132 778265020 446203751 964759059 436455963 845604539 799465631 988144566 155346342 219268695 985009007 992297588 854193315 977320850 2638991 726539247 778386227 899429928 631858316 848597115 472084325 887157529 657366709 983651257 153108416 793709904 85246500 406461932 642883547 836258010 476395263 940026740 982072711 994723092 484662394 799787187 276425309 984985606 415577434 580744981 659721989 965520176 138980471 347424071 143478264 446420210 695591537 753103196 400226873 944019079 514894829 906834045 437046089 525166119 485488909 600615855 118093391 175402917 295667485 410683408 317620327 823599390 604781139 881062767 235541615 916814642 763620953 849705685 497842315 598919901 467879120 689330557 72467595 464508433 208808164 482748217 121839049 534792275 679895923 802218139 304728356 967900841 693552146 986798864 952564125 987868869 605075831 703657535 978086761 981005911 909089553 923360659 415147477 952798572 955947997 989810025 784975223 969337417 834546385 927343994 809206352 849362030 7398628 385884816 336342075 600335996 138124610 511393627 812841435 892919712 925186323 959535239 682670313 855494492 780936791 879715001 885803799 912239086 496754379 502000915 754551988 846867738 878158898 927421080 900761746 956538809 977214608 986295785 213251904 706865818 104676344 243099699 798768394 977560825 239837870 676849494 633163233 668883130 35789632 724311274 114210742 844878638 953477727 974537213 405037166 835061660 12534511 427716384 852155362 883326310 308473958 803711068 289092807 353573720 710976300 793077804 237234399 686117786 171418057 179450872 441329786 921189030 355741434 728574117 495837753 828984200 608995806 654432799 46974877 181610193 297582435 315108833 683456853 940973782 573893303 861989901 876587950 975822028 793460620 944551764 909216507 921478169 729475000 818235046 290198491 615620703 870995875 930474739 477244658 593684011 132833232 531899181 873698220 988401593 472474356 543858676 449546628 661963602 390469031 526308415 761725475 773916722 775071173 862070380 247141226 859614733 249257519 929244030 331781549 661115700 65497878 225536904 224615229 561621780 661586314 694707542 42239882 598180450 184577333 564386050 221058215 492501140 700544400 944954311 892547345 985605342 504349674 884675354 283001477 706354620 185545861 986296920 395380725 436029456 894871475 908716268 765221002 841608315 560645385 749598207 769126582 979874574 269978643 427990370 898139781 992944202 708890967 936064151 951121706 981143885 394452993 651277917 676278218 988135868 242199553 776492256 828227109 868164439 388403212 488545940 720377827 781319390 766474391 890353144 34366530 103025087 700235612 851261014 95271829 239046310 968816700 981156423 608945279 737056066 213752601 827115523 487722157 735597068 793218252 848900077 710985559 903493714 911178291 958753373 839545106 973153963 642477873 679955230 829302850 906284258 468589045 855208544 949183300 957798676 291658729 362408874 673635165 875175266 285806829 289262903 342338282 511499930 256308837 504569404 783561140 983835740 375495534 420975847 590395890 628815979 150603827 903663726 432668219 703325464 57988636 768815515 901151178 979910292 748712247 803560035 597676768 902153015 722263141 800980986 738322999 928538190 698011845 897530861 203827649 317607740 315207202 865225224 619160388 895894383 962152278 974774517 933375283 951945505 236284058 279321532 204695696 913592557 710036588 945895741 127985163 816492092 494043959 703806511 685453288 821922131 944749826 993952143 166042914 454415804 455045410 956290870 105938408 863672622 607956643 965602003 515663816 668953283 611230265 796421243 255243153 303530685 341880076 593378334 218521630 946545272 782937485 958233694 918447568 971131688 218539822 377011041 104999810 869959057 393787708 444188804 198267069 812876449 725727520 802694292 159400634 445887965 247947948 988626385 827551381 972727263 569171807 848151166 999357643 999388859 721415326 917837050 397651063 929955683 62365895 278402808 970318548 992989603 578068406 606977798 984745361 995376120 853061154 922572157 243144952 390953729 989621607 990287419 435291333 912448373 452732084 811723579 957598142 995508761 618699301 960102469 835522618 837309883 165317508 428012598 371607552 563871196 363074083 684962392 142231595 382543521 606422409 759801098 368169874 770747307 226591166 228296429 23753826 811356237 226620022 545978659 140782190 548088040 680511565 994964519 551998828 995601119 954010067 992444123 960234632 983479720 857662695 948541834 409529082 974454899 381440687 785022128 501361714 632419693 148430529 835060273 931510736 955802439 967036249 991504063 910443328 971673575 109235877 430808776 246015972 337339794 458919697 901884092 594015045 707445652 70047101 588827577 73977653 906753967 477925758 551020216 770009354 966979559 500734229 744440716 206128684 864800823 517136798 636657908 326579852 681087450 728499818 990283790 667704007 696235577 410651036 468031808 741918614 876339814 400516486 645146314 815332839 966729995 826370528 851664201 22105037 748539688 473409898 810343679 84052343 586843507 512864121 691237898 163192263 470732735 462570429 534092739 592010373 855358415 916729413 966829173 720197815 901719761 309037134 383082438 707876366 992444839 188445091 359986382 994046696 998276040 735606531 869466649 138632152 461501725 155514231 822699963 736000894 890103409 823234065 917046124 19644420 657866181 870514272 968292512 595068998 762800970 314015089 562367594 270156886 926874485 31435826 758583703 124413226 197525177 435239481 951460342 285220598 983121834 295370185 977835273 472380216 881165442 746876086 900962098 294689916 307780694 482000368 565936922 236909118 818568294 329293026 467431898 875969126 917124083 418422490 895561251 540797555 921662276 584452617 971647520 563734578 806956477 715689045 886085020 468603184 698897595 143223230 413762521 677320507 919095172 577248799 987964845 120152019 615634402 181929427 465219427 681624464 710433625 872434587 979106766 696233065 944324348 641344135 886352436 601865264 647846492 994621178 995898565 978411015 982457459 309491442 927115368 654140498 946093289 505147400 665368488 879517248 956352999 885346245 990676496 962662476 990939813 28773890 201519892 452496577 605299625 571298816 693530729 427065625 540691850 584658852 794337804 999335747 999369405 867075105 872036525 994857466 998371179 650786727 895149449 229956225 289297331 223198894 797038501 8440696 101428461 593418358 883643890 975756355 979262870 530729548 611852641 321122741 369461292 382717014 977724139 423456560 959961978 670926227 868717767 649307416 839924556 228922754 479820997 542504796 615336848 810642814 838608616 839558559 949328207 292052583 548656980 505883179 951584217 980526849 991533695 851179858 887013998 618727181 633221352 746060467 778014260 584735016 833970870 222115819 343974075 692350109 949517960 261909199 702622718 726428990 727645244 698004060 874033618 838853033 965203046 314315228 534905961 689711861 963100169 306904313 659009283 403108885 752868404 380660418 480866522 729833700 953685444 494077245 898572065 988633054 990354227 681043479 845650345 68946125 69885516 595956217 993872097 440579527 948033783 609599620 748206216 122588033 915414532 899534159 971123386 885931365 912027443 769108411 785507874 381767614 521125963 419868506 708747261 432723542 704906149 867956117 991609453 265628370 687483411 571530801 592568985 394483849 396454484 170780544 437961769 543581149 872422232 760102924 963230161 152090304 595256326 61877901 364587494 516062336 872648698 328379988 484628012 384491772 486044256 956975325 983841662 530550677 759025651 425118705 952304254 703749968 848839587 630530179 959006875 409194849 642311976 640293334 896724488 13518192 686445103 884141537 894775859 700901563 866193648 764978448 821124254 333381564 951504666 386087606 826082852 563496337 933966300 983333192 994712878 124578310 434908856 582012183 627664011 197337467 834178878 857023569 989094845 971504129 991125603 364867259 854539644 400668666 968431381 438714912 984016885 392742154 469683732 113513674 324750794 91771471 706055308 497427984 917010408 605892600 743718067 788699983 827569398 738770461 973923999 214096041 855458713 417719123 916817579 321764481 782246114 340919405 958429481 183388467 751883811 201455826 203469724 469872952 660894413 826508099 908338205 215771679 703989193 319884464 627631776 573316802 742512001 981156195 997435513 112881483 305277387 126150869 775890766 711539570 825963119 292125194 298533325 243212663 982023216 881601068 983583438 242097142 475532255 626388913 959992455 304940747 533379575 985497087 996000433 162077080 286909756 99510330 437549730 660180817 997622477 119199519 730100697 402182197 499260399 191376254 689934951 622593846 954574082 504145786 990930113 677070541 758881821 293265649 853266912 375140932 445296418 341586805 779873305 870569317 998388330 280930159 654100429 385763511 442308301 331796480 812725221 897323019 906555146 267687240 404273070 728788754 877044368 74962799 532722965 719432321 722422454 932312873 970693077 517506650 673451250 57941188 895050585 684917702 792021754 91559319 762619134 39453636 756940674 679158852 929378057 400905254 771138931 89413518 928827613 524517436 799852674 211373513 573775915 468574046 967617397 52285642 772785279 189418953 627415481 367279006 853439700 659310725 732100932 824475148 883239799 772026112 823916804 978214743 980077173 88793441 887482612 186596302 292240492 46175502 970126500 215008197 236047748 505148196 733912189 327751069 936664576 773037993 923637192 256726992 580805384 517118596 705509298 915412504 951335007 894472443 931116342 512747325 677814657 212435971 319787091 521518194 638844507 9453661 853850351 530111809 555283433 136498173 713779425 496868072 857441054 287744928 423549409 370199744 945237325 990867510 992174537 604200107 842036110 564516410 879683286 183253628 695034076 405878884 485850229 26038429 360040168 366464200 379550321 177800072 655186480 977241683 991637877 28488612 174453703 582705534 897070916 111468733 932789266 538654411 921172326 693978433 787533065 863148249 889237000 999187058 999215767 401622770 585446306 736052507 921856124 620521093 968708530 947437187 958958360 180349728 629098498 660077055 839670807 483754678 572465179 501355840 933562322 225575066 885524183 294512850 833979978 161041769 593874557 135584576 934874337 205237074 578246256 755636717 773785540 797699485 875040128 260230913 356301075 382418615 865861662 27095416 138725189 871528573 920292267 641623302 827782239 905167820 998516330 176482426 451451475 440893966 777225231 774132063 956148913 753847429 817755598 645269556 688180304 771268995 776489767 146916126 426330783 100502696 947043579 770692532 948656077 68234372 936556129 161213228 820670864 3724787 341949225 204229336 585469764 177311623 817553612 391801522 511214355 907563400 974194726 92754061 173584933 14593037 976722524 588348666 876055504 145759840 575905528 757958586 863874981 59790183 916901159 219522457 371601478 58199358 473758446 625290798 677889294 494348794 498358140 312920035 533076689 721201577 732108940 845664645 945649141 747311372 978602291 837288213 996797084 708859619 860844692 951663700 957556373 793331433 824643823 368478267 593408071 519698657 559337072 675639417 797208149 674093782 809605007 930457013 940722451 59362191 730091309 776074771 914824496 466285482 888737772 358809139 405462868 108558121 963725130 763152332 994646497 730996268 902804727 435269064 976398072 589934318 804423513 239588352 391631245 458951176 990954109 224151127 321384463 463181916 613749558 652500860 714183778 533542632 891781738 309012698 383875465 562431510 945767632 875531939 921484684 343053277 475187174 208310075 774306630 366609104 768352892 67422991 288595632 486196659 609233518 514861869 808785661 599714891 801314624 213577673 254740098 821272066 852962641 124018622 365453420 756364853 885098427 180586246 580066595 137943754 586809492 480709794 712680812 594272204 694569511 127207561 471662579 904163195 943500934 489088699 616576073 317248751 899426643 206847057 830386986 565595006 589922049 43689892 114755053 181486213 406146839 310814339 335712479 333193610 957955452 955729641 983598523 276244148 463275372 366455366 495438128 145160504 332807806 229643882 464436044 378396115 593119057 864709436 993759054 576210599 954250473 891571069 966378826 915103610 979386272 73820832 421481041 957755931 961901394 512274067 886790285 50483995 922414022 281850753 873598808 298004714 746016316 826580490 863982140 273580317 390066779 716417936 999383702 52244745 487657056 992963876 993054218 483140159 789755391 728446202 947044848 945213051 992486149 107342405 126163603 571085985 672166969 941407286 957562685 966906600 984103749 825491139 963823708 207132239 596694799 17143117 128773383 944382782 998093527 12973078 444094213 562662754 961632215 791144209 896396553 437315789 917751552 841902912 853789619 937491892 995685548 921305028 978621887 98038123 610304762 232192570 436886236 938140095 979520053 685655049 715529529 43085382 628014997 509532004 826005699 594894106 931007623 355877185 943349567 972239110 997524830 383052782 739041647 92050539 806550470 4965780 436899410 399395424 987110857 511921900 793637740 258402195 635978099 805740162 945166224 484368984 954654796 718055409 785037647 580965330 883865929 850419109 949893189 994819937 999099154 409970128 604148511 944087020 961843896 401006567 935781646 544264998 772557167 812892561 942070718 685039630 839556673 322870095 487909823 761357699 772123704 80038009 820850392 623973135 974236089 127133295 891840016 440964328 702237224 921617256 948686029 624495883 749321661 617885730 785784065 954362093 969963948 159028080 888303874 935797866 961520792 160695302 761367971 11087975 71033647 904828257 995904206 828528357 871353992 611772062 715040931 219148446 896223318 419942457 734575443 659280446 742000775 234616335 370368141 380853358 785798145 580966243 651214737 241431315 345129916 74918535 338578185 285923452 306449118 750424408 968601225 944501815 955126689 292879259 710585281 348676726 716361009 374407118 931241662 262171024 967237728 516013407 578071026 536927314 737413763 204771801 584485881 55384887 84697241 129286693 767923626 738514790 780657900 402018855 561932857 43652936 508510298 548988392 700771327 41562642 563112974 266510030 457025170 145623427 161290852 731861004 895515504 235435187 922162670 518176024 733550890 707103864 840705027 178619966 323921733 880505146 948495767 397374065 653260930 720045654 870762869 206223874 377600162 911865153 987943670 173659917 379544682 30662215 179753717 698629152 776666563 533468775 717688805 868660737 900698057 332228741 692581294 402748743 537066538 402112675 796108169 761521791 915375436 100563919 785814823 658315581 721456314 58848335 977215006 600297316 870456381 809357882 822209675 303453751 951911280 946753594 955957674 442632122 943487161 204244865 791027124 823969115 934453877 374036980 554572010 375116196 686389187 550928794 881346520 783790617 820029779 404509925 453524119 525427072 832368402 261507499 820807355 625709139 859218882 966974678 983604576 864918141 960132071 503005888 868840541 525649440 713760336 134692785 886883591 26318539 803597566 875384835 889944613 879796100 898039796 385568086 916519829 170047803 492575233 27480566 122987038 735346135 987018629 47336090 990599804 775754520 914916072 308404705 709120024 552026079 793312435 3781198 711654898 751257618 822324042 633233029 767813393 909059663 957228038 830905301 979196738 88956157 174369519 6945497 591265009 894572369 926230804 144884141 515354331 607436423 820658220 909126714 932277872 773030668 774726139 900445604 954599595 740544464 917928493 823243383 859125456 173208165 255514973 528693959 927545536 346410305 731889099 330645215 704785950 921223771 924450417 683261611 826190388 214122463 395688366 730539718 761487751 677280264 780712902 152396779 897117058 6345076 904905713 705761621 827228143 633541493 893610640 947841979 998176096 837833868 933937113 188484441 435061485 480868955 740862737 673969143 782206048 798092345 892957995 767271018 992144930 289267989 774981676 410702538 849203370 43640810 812325825 279000608 494535953 913184771 937833815 136742859 879282791 770766177 839499331 160265514 945692088 312644026 896544231 244288049 934854930 297182915 881720402 779344571 893384693 26093900 747794796 839616002 951834251 693668614 780895214 363134372 687024255 271437754 758929749 691853381 699843549 273588769 438925880 661594378 878795551 91820678 242026106 554808838 579602640 826103447 925860020 163494967 221920537 270503608 299205102 247648169 392664860 942826731 951028755 391556168 665075376 541090580 805360162 632217425 859192327 66947480 727211858 373990647 619207180 996281930 997152768 151727777 186682779 480871336 654930129 542566832 724729126 216573442 764771477 597521652 834911675 229155646 646040740 567076494 754630378 897914164 994576415 937496322 965788986 556031361 744538362 737378748 886017604 418874428 546969175 545878594 559870205 122794823 264185861 243485583 465592302 646327445 773677164 980531449 994988800 944619914 972581601 685441679 973858161 688372977 839176379 616875655 955993561 484956078 901267070 921585919 947654098 233929250 541716105 722444284 907385897 201150808 382942214 985443167 988021207 814743183 846348922 921760908 969788613 121052187 611243076 668331862 888354193 138142690 805257588 162887723 473936122 620108646 841209512 788641943 867630817 984236877 989723229 207941393 745489357 496481671 815556325 884453199 928968323 809739791 886801030 49459030 514142043 851316059 867482046 21390215 470386030 151842875 636984211 546934603 908055134 945751218 978752770 719854340 767156444 171408851 428414638 912753378 984023574 517913913 542851569 491456668 565227707 607477878 841704524 222427477 959645085 988802987 998180254 811370916 870426261 267575445 535966365 794081859 796740790 451335875 583012973 210407036 461048192 153622168 241370208 837215256 845589789 963605428 966303557 339819605 478090064 684940743 829782828 474491535 731707596 157748803 384383908 61655957 729049829 404201793 465110106 858605697 888605313 547877998 655071450 553872947 739458002 13112762 347049728 722453675 898996574 690363461 985624768 3584468 647644008 119437719 590441762 717531456 899052770 403925907 887827688 720791002 876067573 974927220 987940816 748905418 981581776 934412177 963242928 879122017 907198857 650675465 872294214 116627424 356750276 133139909 199354068 63427964 700937324 770465569 984131586 365155279 913361481 11753934 163510464 201195919 407509774 509359040 789337094 174938567 932479137 976683461 978256935 524138501 813816071 185240568 273169078 832401107 932991646 537568747 582688368 663196624 883883644 895575016 953857177 556739619 777947954 154419248 463186281 358462266 658449706 639241400 919646533 417531845 780655713 670599225 913017724 49048069 846128641 288408503 317383098 9765287 571326543 56673847 757367652 767801512 877700678 614463147 622792796 239182273 776990934 475209047 727595472 247450156 614437982 761750875 846075204 788555326 788572333 675507942 913114495 983141620 989965127 390226188 406064621 639020849 910397715 672335773 779990761 147524155 434752580 962586825 964246669 263543100 295982392 613580062 842477441 589639352 749000056 278125238 944366023 104135314 612455522 513045334 930105501 23727261 943220142 429216127 958579545 920897000 921371371 289238946 686599707 444691703 795045091 256903618 827496444 165899810 517384356 586502555 948225541 180219801 963789773 419226109 543720035 220831574 403031486 558431318 578398893 621144992 699007541 587252123 655436037 131022218 609442842 390647615 629779178 167012767 459357995 682327506 722268237 879453507 945177080 953403649 991178106 508238052 684167527 266128604 532535835 242314614 807011892 720786795 884941060 854840245 950924756 990626376 991572674 674210002 862014493 98932247 513774460 338115936 598964955 66710140 803202631 793865345 930689428 680705661 820566104 576394207 850933729 424814232 522686795 967953162 995774075 261845770 924598995 502610697 715855963 149534090 256033119 588718576 594577430 780439518 901215596 858412608 895189394 345402681 989001626 306440354 410330206 942573290 994684118 482585283 843907372 188172125 206132770 814067008 966935336 559951569 721893242 476772688 793627607 417345305 475865787 364990170 691994673 743786225 976748957 126240848 947861743 188240335 458434651 105092845 416210406 219009314 881844986 59893804 946755300 989691136 997355638 164061077 485792704 324184046 452677179 589497735 964307439 31696646 102203158 446558070 602014325 428213988 891683253 951227518 966767252 467951888 588718315 788855735 811586649 713613039 809395407 26630013 32598588 472980959 901984001 247670278 766869422 366583069 448724413 592136699 592344830 698910330 851882904 968619024 975769453 877660318 948204189 632066803 933063982 954139655 954269349 370485711 422367950 641357782 733121406 467427971 932543670 943619627 996462713 753136028 777008063 4729763 344417881 588682276 889758587 522950586 625383317 31024160 549113179 709155317 731393361 742811683 805946554 762164032 952848481 426920241 856681765 830507241 939340729 402798673 898809284 541127883 778876943 100513797 339522741 878225198 951958990 712119310 931941432 41442337 580634416 49884783 730014306 788228176 945910287 797065009 919385927 117953863 878190190 684037321 843759181 172272392 379694725 858989067 930815641 588063300 611558147 33307021 332865904 682678820 745923146 641467232 771884828 149327930 773703278 176278202 864291097 173896501 730914129 984740593 987317226 15877866 356424985 419174505 751621637 269223271 580821613 945081559 984571020 377883288 573803242 399817150 527387108 794571487 889358028 252249695 865553634 362092461 831727917 847177124 978668536 240766601 324435834 36962533 650048777 100417830 463199783 723471482 939375808 587275661 668778672 961357412 999248582 650525236 676558259 812706446 869277144 205268768 291544331 85667154 790246809 10077917 558683385 407208593 501723420 215123334 361936123 365684143 745235782 918570528 968291417 775921240 855662796 886186579 942468401 933102720 979766888 927997346 983285330 86983599 90487215 222484521 243298983 568862103 876648742 355792027 490131565 92630112 518992038 958500274 995437392 311688188 651474852 79130119 323332869 731428230 755842317 444945248 810512690 421004434 745106254 718985657 931445938 309607744 953118018 196337119 961316703 859234828 995230177 305639414 956946512 614683052 632737549 159320410 592569420 519086360 912741529 953370426 998836067 149443889 429395671 626682620 740997612 359302650 499823217 962431332 988454003 726024407 886407291 444211711 705614219 600815328 675537527 483883102 512838635 862264200 985409553 169893114 641924558 194760362 609628207 752022656 912928028 308112597 995494314 820884175 911335877 800079222 836709368 907423746 977086516 949511315 979745281 991991326 994761628 505498082 904175182 657988765 853087099 840723570 961478263 816649558 832630998 627784539 675464608 137606764 834943630 373003368 529334065 282855619 770670936 248440175 984583757 179209691 851212691 893206154 896993751 253274163 651201381 205924393 838559329 300550771 370781575 289597570 538271539 877066780 905960197 425891547 558345276 688599941 797958085 354679905 829378011 590271346 934039957 916145321 959446728 936891871 941450198 522167704 577909195 363938975 790522664 799158132 836557928 419893323 718821229 355849205 626184559 200959613 295976698 899651425 926972790 95107384 727147871 127977841 909331280 787558775 855414236 836701849 922217386 988415246 995947126 691374809 823794567 699974788 896894676 239479661 479791741 11413244 681525671 22439822 132719894 539140525 601453488 71142132 436430808 90525941 970325707 678520690 733290153 532840760 618485803 461485904 616224216 524122589 819511023 719808643 996065217 727802821 807199961 530810227 608761555 689196101 976100963 450699142 864090751 622807077 823095163 559925707 944737949 7430515 330663672 865225292 985006368 536967109 570854365 488753958 501052406 199791401 995385071 430805203 468149746 282422932 664299507 666492851 797489590 852146038 911055201 967531665 985711487 296315318 973141939 899440964 949452747 125609702 645151440 246938301 830472563 224138899 844112258 31170841 645495489 837865889 999202786 673819347 988611776 781048350 856935422 670286830 719953238 670222329 931187160 567013653 697617720 689356897 697007206 243368121 278251858 581197447 607717115 385201410 753014720 407477829 704098622 269070001 435162119 351053759 730574237 880855124 966136199 7571705 144027284 598106446 918792200 357446741 399333343 483250138 936224341 272868856 827028230 139790052 612712148 707173711 989112918 354247602 676466251 153030061 618566681 637728304 771267143 318456625 410261386 269779316 367410920 27806135 808855952 318001633 655355689 900523804 975900383 178140792 394952565 5345915 28440599 126961933 534153965 308054694 518907797 986934392 996867375 742772101 948860242 185699581 796072368 639782497 737055749 736789443 858934626 900569695 998866156 194964234 304348840 728609063 786465979 307829383 566012987 503571808 755472233 139327773 537803450 604231217 990853474 520197634 704928884 35760623 387233144 822040884 974173994 117756237 630727920 640598647 809674406 529810082 941991822 257552349 803646401 960503557 984727254 172611954 729803551 476309877 663836006 385988920 391247134 920927438 958938093 97841558 121673668 305994659 620273437 218432946 613367989 361629109 563078067 356594456 361095753 507562471 952558986 691242618 952332405 567250351 652889123 614851153 817011031 964162763 979192113 190201923 373852549 367975000 794511996 837102271 950900216 955213375 977037418 595776844 771545475 667260074 754094552 558019799 958459484 385408024 795529896 219175249 770531010 146711954 639109592 651882591 716286807 695518462 838053201 269003843 786846552 681152953 828347775 190108269 406550570 563950796 876179834 568003887 897839646 293740702 837246447 709515805 931144623 142947155 174910219 928009257 999215488 24087943 985627499 297093742 552430455 381568389 869844770 521784294 564014862 511934489 612868189 681989432 726427210 186516215 789129046 565718283 791601723 907245234 958630029 139199010 809098763 118927706 645739459 839031088 975714649 345254562 469653590 350108301 976788101 377190971 424692750 237622557 760829097 690098762 822083139 122937906 684264316 560909311 673332418 645708025 981027800 15846470 555156699 151064815 321327941 248390853 924060139 226117382 609116914 609247890 964976691 146031516 387701023 995208199 998742699 696447337 945809767 100761041 992993686 166097678 432529023 949596151 962070883 661012034 840076239 951655214 988782462 59482697 324966998 605414396 930558621 312996686 818974011 127050141 691318303 269004427 512651317 200939241 677842949 896758142 985274263 396062136 403969236 237560606 930933879 622239882 691414162 176024441 408675626 946857708 960430103 695278034 796005740 369215685 495744588 134859226 952052454 153853794 950844978 20790043 518055670 515194759 756660691 462193967 700380834 497291600 634833911 582202864 925740709 459616311 599875246 514722745 932775556 691133551 966634492 741124704 743823606 370057751 459236805 112572894 353856812 994161019 997897852 372677280 383273664 749126169 888627270 625596652 647164084 770316864 834377899 358862740 904568366 283787306 852557432 735159436 854102770 890682358 945671078 289162965 683634270 309538562 873009947 769116641 811722940 569534546 739460957 281570979 754544277 836115219 899917217 66752775 659728962 170100498 545013011 427933509 832448630 164727952 685577808 427810943 964353573 372955717 694015589 842644143 899253952 418907276 569802002 688032826 764576377 388866639 787712889 188977869 438920578 4953039 633461776 157998333 904104164 238449793 733718997 726655187 784171407 907622894 936307839 708045680 828815466 448212625 683658284 872026873 919335848 779349563 835368551 776458524 899231586 698318449 831074822 763458925 874143003 425007537 655486256 826769276 968562095 972168301 975260986 43652784 535358604 786787786 976003493 103994327 131498800 220808408 750018085 86537901 298111184 851849411 890386603 807139270 920884265 542996743 865306525 26159249 478009429 662160751 728640126 98512077 271353838 901394183 971711663 297598997 619954236 46154878 487419115 840699990 983552132 934260517 983870210 302756688 356320054 617557010 941391627 188730488 852092917 800231032 840857861 493849255 782004272 494564734 572152768 647663455 769152227 607370136 697599163 591889378 821515931 300968549 845053705 743443280 886379050 402971186 876503886 595121560 819926324 246668885 677232019 769335891 799791177 312394643 533164026 680905891 953693895 263136401 360779317 903425133 929371178 669124784 725620936 183950100 260004007 64798567 75893236 260434555 793791859 241256282 855647329 278280353 520456428 549569337 811331477 951550669 955118254 547232393 990977161 643575321 799133041 719791265 784937178 927595832 980674824 186948931 573335240 462794231 886255712 567776921 964074736 257167096 862342683 832434496 949567473 570242938 958963571 427300355 880802359 756536073 923583730 449138584 904320566 42140915 71782580 548375011 662420605 815816469 993477052 816514462 829940113 552294472 989195846 253119749 259764787 291293408 752061211 612782765 735981925 872262471 878009703 967312379 984806216 783280332 972580073 865247102 883504890 980471256 985162489 980444343 989354291 438454223 527401649 97051382 344851594 710115264 779715807 494368625 667893920 62886581 144010694 448175567 820013245 880168732 895975731 430319899 544538275 922179279 938169950 145251724 636862968 942460026 971173462 473170090 852084540 330305981 988016150 885520155 887327896 870716813 906745955 458941392 492953950 490802914 797000863 178365373 216980941 670089910 918022361 383355638 674727160 943030584 967329592 208694265 463612955 870946420 895604186 583356721 906559837 629372175 700403292 669964012 726966764 665314162 910111580 156041444 676512311 133820575 488614859 120513958 662900630 575242543 958529691 379713023 828984803 595531382 975133489 940642462 948987349 976674555 988249599 385082831 477382589 249386796 489983085 581494975 974833579 98789926 550268251 739262936 740456569 817358203 949753017 629236868 756864341 239906901 645644216 475582419 530508001 27528281 137149978 177151294 830758169 357826518 548541397 302937297 918788632 624343475 848375541 874677662 928365216 763901709 990427947 681425666 802883333 960682696 973578982 794137343 895143822 616437483 774608620 104733668 213277697 5046952 916957647 686203540 707714427 735252588 797836571 3626928 365061520 693568482 766537960 43923085 296830263 809393996 973815825 275510423 941523499 665986870 831409248 770447258 804931285 71092375 464034348 871215483 880844498 646984471 745183911 536953785 841183236 534168251 623748279 437909150 547845295 942540657 962818972 440791789 857345545 823038353 984956728 673147384 947273748 334925729 789769537 839408905 936198371 332967073 611541277 208364241 941997865 863526010 891956000 631141105 683525637 903205616 986754529 680436628 957272946 264014445 422192476 766092682 800533918 405698018 870649665 850415107 971301611 45098187 990153442 367659249 970977763 553978731 806384145 80624305 483194395 104364439 446060043 244788384 806544082 797023763 868948865 284591197 969044921 3250487 464255713 583591260 946214731 584151689 918328085 381975506 873157233 603899365 941769234 628447691 867778906 591830867 840232126 845783396 861276311 884204883 988649694 187471396 222796677 855741473 989242338 892988226 999263955 266193100 473329717 735731901 862109712 671201254 898125122 521156557 585509862 283484928 348109924 538085927 908988169 303599068 368611367 882365040 943894896 550251656 830255779 425071021 499047829 678517530 724594491 268772508 494892475 289602897 665635319 446516163 500889808 685103746 876203389 409546174 516576354 580479880 975908705 700623229 855307117 617036712 796691380 382646724 925866017 95549403 233342852 11282448 844336271 239723438 667328351 860120644 889782932 378534589 837176722 567848318 626143269 165063080 291432335 201554422 770380175 828056066 831712266 240916090 311616968 569692167 859020514 715636995 716630639 188362745 539016874 16553656 316970790 238985152 992426248 133853922 776457084 597263316 634553500 465323068 768722214 739951876 897824072 292827980 564864362 347033886 675001399 636689215 787984418 5068672 651103506 539587260 958308053 644424812 778909286 352502778 680826998 845139905 912422128 499059591 640739871 802394681 831046659 555969973 747349071 440309795 984343489 33094702 823611801 416245084 419259927 437940855 480226106 974324866 988074539 898562600 923245372 647884080 805114520 273238117 844595560 516096329 519437056 540876798 972981748 43455226 93602462 222462374 914626828 261866324 712373154 60190387 277964679 257048684 943691176 110269314 611572799 603583360 755682997 453673299 796998127 314857534 776510632 376461488 495813012 139166366 528347751 770996765 829388457 785877028 857928594 758729424 989226762 148251604 297289872 330245273 664469245 977427372 994341007 50372571 131371568 779293092 864289940 138465947 799427816 938693240 956681705 766853274 975236993 838824052 909764120 774859320 799550090 345379369 418628938 44171571 939868422 650066980 741365820 155876860 355274301 306834969 394010611 380305905 450192870 810087896 822808178 364750941 972227480 845432 759464364 93571889 222096369 281332185 468142202 985431858 985855698 338138360 464474890 231009350 805218655 334575406 769057617 974290791 975966959 135588563 587968547 773909107 779229248 871058758 961535310 959279578 984778472 761921945 790182708 483744108 969908538 320273473 784747656 427488775 604170772 353656413 458559740 505817814 742095586 874599002 997989455 562243525 671887944 393372775 569822502 266254851 801333918 130713732 251558155 171595488 848472712 810463614 852240022 887211067 968272115 954992852 969976945 408679505 713127534 808583093 907350231 668276348 949753685 325483504 874150044 243781399 972737766 798516400 880774054 249302547 682718403 805969104 939483323 270473888 477893758 22755754 805585296 40902267 859496680 164150516 551753563 845380352 966884221 782839426 989683755 942346256 978038146 901991299 980928155 483804698 832916489 941664027 999292828 229390527 319273361 47299056 634797358 802890181 866443343 645493844 927457580 576794468 893560731 790617946 846861951 718292094 925634279 245559996 258995788 776230711 840265619 71765206 863180989 22853133 243463200 32230159 732929270 72570651 250322939 311351218 488445813 879246079 945987381 358268744 399076801 447836730 586997609 244030535 418383058 531054572 784629215 458102938 867726701 585132447 957514440 987432698 989088506 482124912 844866986 923380572 950262590 237140370 482886945 404883964 659802503 886271995 899128397 196111703 836308836 672491186 892710780 619978211 673073664 978572035 996212351 250245125 396858011 291906291 979008374 894983855 897708911 42615179 734559101 632164844 674861232 9770131 203224572 883175955 961636191 302059136 524877220 421129453 538010827 840865970 916391061 755797929 881278507 433563928 542437270 110782829 964181586 858674667 859376558 467875990 971809417 40448152 786940536 411623283 532861464 132922485 144963096 181834743 940020607 208281301 250863836 419069571 988707791 439784004 720440742 621459029 759358945 705959864 761762779 718093539 915318007 393092275 394946060 658892426 873606471 802382190 988301057 429181934 854443772 513318805 841327701 936522506 973591688 827477651 865853517 898478486 985247596 14927515 176401781 68318228 206819196 843307061 853075740 817540102 980398073 445593115 495263004 414770353 550635020 273312704 666192461 322792134 603024261 923963328 992406686 666935664 698990203 183426009 447629629 306672840 515961984 16905636 799982815 645137148 798702142 932860029 940692397 105636920 886661771 34338932 177181369 116256975 829497541 242963208 536745992 523336455 792037030 408889092 585300141 276901463 740420490 204577237 501305642 406809360 510960388 516326243 903208977 242204330 899010946 686463079 723197560 988560789 990120337 378684444 906447640 625102258 861289264 87216104 449594255 237501840 984874338 462266802 795388898 349576197 388307123 945896732 949039342 246330070 413232650 753961962 950917875 166458916 291754616 111764805 220964040 130408307 921059705 250571014 616039976 735476779 823364419 643289543 800160341 160354318 805852340 76774640 617755275 510443255 959769694 230935165 402797627 288331058 616938773 45801773 713820507 456764734 984824631 85928625 905045418 668438228 901389971 219035216 954891417 825177607 973011407 930116190 974909465 719210534 750340717 110962236 297014028 191537689 365636406 115868624 345889180 682961131 833687399 960095236 981269397 107548583 989470712 946184855 990157551 904677902 965918844 695063589 820190290 457410071 954994075 532485020 968575592 244136684 405645407 824038220 896117812 306380356 367422744 821722822 911684754 938702480 966382997 81335693 591003060 539577250 976046017 957590601 973571999 693649746 931744387 258215744 576496129 836379350 844888459 504939100 975423987 281949002 502345608 520767243 971840015 92946422 891778437 646904685 892096474 561432063 571837000 34416824 439513166 941788643 979146882 723979572 960075098 92733100 377824303 853896937 856104004 781230349 808610783 687586870 751316992 849134394 947832671 411073538 540568809 445545230 644879501 995517227 996098615 56653702 544442822 710517295 794350996 52863925 444409416 777987949 916086216 474836708 674596393 518205468 702360876 677496736 984492144 187542252 490067550 985732447 997267846 976307535 995983603 352525676 402910400 568381331 968467090 937264558 982094026 589143261 976622173 77813381 474912700 666298414 790252987 92541173 795507591 136206251 234282972 304943106 970047956 447323125 670986281 358448015 930829392 951566531 982983267 718451174 748364141 231569546 635657860 593935756 651560449 352630078 983959226 482511950 843132101 141565390 265527254 507292121 843869130 984795267 988418813 212562853 239279586 819194111 834002675 662160499 888563254 217022843 822649544 144446317 759336082 715854772 954103208 111592237 958981080 97148879 417085495 73300354 896219677 398379375 901542256 164813774 212436525 467284515 893644049 284807989 532182757 149558453 220887378 498799479 818601251 217797041 263396680 29210208 88097048 916182818 982328504 706287661 900853322 471260220 589820814 387117373 841974135 119396124 709159712 619751720 958192643 774461674 849569116 502414148 788152367 978066853 993663581 141494930 825932830 310559080 737515108 480152424 938305628 464450353 757775411 48274998 168666832 639729750 657300421 893160231 931580571 438419151 784461459 701619547 938396704 286390223 364191650 255130574 703889818 960094735 960102413 601816390 662508419 629460016 685081350 356115061 413149618 716018018 787237165 984882095 985516327 431276857 506619625 464771999 594960808 60019201 481928290 533122141 856552379 191713128 884705570 159368315 974196167 647288620 765938141 755609114 978695482 42693209 688525497 93823121 621898257 431066753 564860678 846462667 926995289 370907450 709871646 935767858 969295997 476136814 936176114 65876392 572774065 521307167 632157402 539499787 993187407 701372031 884786030 444543840 537160430 379207099 522255984 216215922 224995275 653513637 963431668 635481438 807321997 192577799 425184939 964249701 992419951 221425726 799959717 787943923 974656153 529609289 810335984 883934821 887013886 427284215 913390185 453777944 890166956 24944063 374652185 409284914 942820406 781638502 891125100 967098604 985688253 849275205 978080194 505187657 719439918 634034876 876353863 326614200 556305759 645935793 796288786 368798619 472831818 55274096 786660470 844456140 907255661 44837349 332430015 773215654 952019468 230284069 969894129 558531280 784891420 681134718 763385148 46411257 255873417 920499680 960425087 854872917 856957068 962423156 965888596 318256109 867043861 834188710 881527098 976981782 982486773 730630766 787047260 226702785 820088658 182552971 210166220 504131384 801618690 107902505 872031741 821223682 869292827 177334306 224363574 447371461 903170181 974133534 993705154 515755602 641288377 966053441 982440445 461240744 955402964 137750195 915544483 454546666 489148327 828488226 954239763 875467483 997634432 280218989 459734750 994251587 998652126 984915004 992963295 433275922 624357595 320889056 375148213 388977589 985108193 684419396 785092892 867739639 931530545 522182079 913929978 8798022 541227753 848445493 949922428 169161857 225521149 58161630 250430762 306025913 398228864 833617254 878558410 741890495 929857282 179234601 363129523 382509879 921843511 80255798 150585099 380078656 412790955 313580571 354260478 954993786 957010076 405761174 772134770 241448995 486292563 857684844 903933105 587765283 795711646 926912146 986042468 662102118 977387954 363608300 725971835 944886219 971491004 27802054 82064224 398665600 638212718 18252079 311551486 765865779 848544144 758878591 818321680 750169744 769712022 942282766 992272728 794822680 827325108 139563344 804075126 604160467 729917820 433783523 616066852 737874527 992944594 56910251 867069627 294141988 863178939 655314754 827583850 46952545 157502468 403020191 466499835 322694925 882888682 166160889 335061534 611207232 683524409 151838520 334738786 679385283 685023694 544156087 630793907 289375014 469621665 610972097 644306639 873212041 878827407 407896903 712802464 559189143 740231495 757778915 991853147 832612145 979070112 57075988 57124485 749729316 860757191 972044329 995693551 122740268 487572858 791217794 850483214 44464828 610026731 818584501 893685651 485421206 697878569 27980646 663840638 83555717 877403682 253914614 477298555 662002003 903327394 734349745 857265306 555029865 585956393 987884760 993401496 213349044 652264353 606612176 910745742 400483634 657024725 31051078 173321677 273888686 279026045 792639330 898884217 230600215 801327367 617759956 723612788 701197322 841604837 929531105 995188442 774334012 933272649 62070335 121193051 950635983 999161637 258549935 635988542 288981187 524711183 60414073 486319890 493067986 743915734 811297248 817400618 501887576 983121720 643734413 744869424 358866606 548010170 986202789 996939267 489551527 654554917 722147985 756242710 885942467 941530445 685193469 855698086 430400904 605562065 30012172 37236348 465046758 633478526 335184188 804590446 711253312 925635352 915640056 918307445 507357393 782359413 846866341 876039641 155496703 555870229 531704787 663469476 719519408 858219003 34334178 748514047 475104570 791466248 984533122 998701996 418984501 575498599 467915045 898685447 982084276 987394099 929029968 989405037 848949248 856099410 873793007 959606118 228209613 647925274 563341983 584139669 151374247 888579849 640307727 923305902 77420064 100860083 611719021 678718869 772064535 966815990 635262174 866225812 19956041 743635116 111057198 761946135 872035531 897736645 121613906 994539060 121981932 595641706 550724075 812403919 716116585 784781418 337513662 797542979 737949839 954682046 583811774 987629032 635840137 823154462 88887050 547937062 855123560 904581002 796473176 982717110 676351953 920391721 923542221 948133475 995123454 995196632 562652995 883480182 144699398 571443188 803829332 850453185 874747771 968486221 745394129 792507545 616560943 755314502 451437351 464079238 182134731 521237573 238823872 488269241 588450429 728126491 764182545 923773690 118671862 571004213 647902928 833510708 997574768 998162598 959823728 991912790 261170297 755271939 524670641 870898493 27206474 505363826 933607520 950932229 852610367 931870568 774017887 807761799 681157900 811846519 943860244 998226490 365974892 726067295 249587390 296048151 742692010 757429810 402335872 829318508 820642757 820781311 377194460 903891021 976617634 986154240 842442555 894698886 177873857 919737346 165587180 639214524 528223288 857363351 640031928 878566458 938287999 990032450 673239479 700226363 686813540 855167394 225183735 371138450 611889589 695184097 502419622 796189329 487384409 708843335 262129070 963299723 522574306 756617777 925399983 963654672 953174584 979602309 169360033 943574754 647756221 980109226 454860245 604150862 425949826 660314031 773244566 905202869 963930271 983349902 7657083 218191489 708864937 774847834 7194733 457489600 717123622 745573982 615695728 872535922 881789459 921712975 507040208 933794615 66619755 794425987 835229035 839959527 38390803 967160304 969726640 983143496 799000422 852900234 895321675 937238393 116481287 387840271 165307568 512541175 560041059 813820792 73502643 527651116 701478929 939378437 742621307 860369559 490384889 761970439 27747256 998235879 551795721 924385565 229734232 523095677 54676579 568202694 416032830 808160289 401105980 562163854 233551738 316649697 639129822 738292049 61239939 540279527 206938166 369053990 888965237 962745628 782027632 996414058 632671240 850474970 171855023 214937058 207182524 996167191 485482980 638378469 766263104 812670543 840695618 852355450 82457967 834345397 457487326 799275175 596320292 746774959 532440178 580524722 552581881 657280980 352669426 508666234 672995189 750867093 803002119 970114754 901656589 926628489 168736199 895668863 787756515 931567272 645064841 800359178 447198121 911021755 836088907 942120268 555114201 906688056 276534251 650608308 95309064 388075310 85371855 561942790 539070677 586753010 847283954 865503444 825953794 935602974 492600381 728787996 371310108 653642632 382315454 895954551 548458902 939279009 621430776 978462557 550466381 678129352 549000449 571385130 534276458 849922272 231360387 395094538 653386768 980735984 129992028 427370234 437945808 539061493 991756159 995231379 333376159 977766271 495126388 759642070 141918341 843383100 135614931 565074075 94073574 662156177 435625294 608608106 75721438 962942669 427658265 942359764 97274790 842021859 918635321 939736630 331236467 465355929 744520653 956544949 378361762 825711532 907066451 967556221 650498912 933993795 858735227 919512293 559585407 628917346 630857628 878897841 514336922 653821488 668106972 736069873 692162710 940572097 992203568 995699020 212359641 612428280 443307846 472543300 188169434 808905669 288664872 677968216 461466658 836333403 574353393 596954770 279251059 940920105 487581497 597081498 689706852 779387053 123391215 348436233 99020901 921060919 667032794 722447328 559273614 644271853 716087883 806071918 233595108 319149911 598085175 879561123 324106021 526196411 847059859 868295518 279976219 307479083 505270295 935751723 146555327 686649294 143820866 465543389 269441017 370355632 303956528 867644233 324655875 737954487 78848173 678684692 793432311 974623168 766978102 835687347 782994997 930285867 414133049 902193442 440197206 736484460 578478807 591582746 768484934 791312226 538739480 724919504 55007657 328535166 337631571 851600662 68022953 842833647 290453112 905393916 19007853 626790269 835234387 864109199 921434482 945778374 644236483 854395786 393744712 894250526 180387014 546687271 898914826 969203705 16321349 92685563 394504609 757444010 94196821 401328419 549582570 751759372 505367678 986838292 107480111 819498786 364910030 855395186 122719808 354497706 845356357 925507987 363288450 879610745 909793923 995650771 972336948 990988745 925446814 974580411 591125052 640930741 981140611 984034651 203663321 516166353 574897124 933731437 206404098 999210615 128337157 593773395 980756678 990321481 536190550 663603311 302373716 462767152 339499566 423793862 78166700 766213660 50503454 584673133 582692815 922940765 742881966 913573373 295064720 387042185 590639202 837194539 820795872 960306902 777639556 945245038 26518863 779724600 736753895 814334109 790805194 920805312 179226373 192368365 211211569 782290085 685664910 814463338 809021914 998655953 60895044 929827670 837043062 962031370 868797740 981755025 11779833 243699718 196316919 294107673 206600475 284706326 963141632 982912943 567619221 785442644 897355674 925106316 167932419 731424498 889544823 958685969 544326913 909444835 343248650 386965719 888904355 889857729 410832367 904981997 167455865 471702028 647780280 725216388 725409039 817911970 75957509 374373832 367808897 996402848 737662348 966933143 254572488 473195084 692637161 823816668 328067768 579122929 669961893 739165737 417452018 631985927 292633646 715743131 223525717 608402369 187064600 309514695 813973813 836073719 367274558 861293328 409425932 942204968 975488071 989454162 62982013 674995036 109356209 821534725 949693741 987702256 104705225 656823313 328320394 833783602 268803042 341447519 964048898 975418095 781890479 902058320 597003954 981455064 567239442 764074996 742906771 841936560 756681163 932824443 905609952 959740242 953657886 970780403 754729567 842995427 641146579 839771105 918600947 990718208 2989084 513384648 663667 182146991 345614889 362018594 132544503 625682600 200477866 972754712 968900368 981691202 836417719 962004518 884375410 889803099 923986596 939179416 528864776 742065585 193325325 316114932 72615497 514447414 263646666 678350138 662280118 968002884 259823710 811752657 886969241 943006657 920884733 997733046 142218665 567282843 6652052 278734894 286700175 982448805 963812145 988009322 174362565 218201898 242614100 773292313 959512824 971442325 695951079 816489616 327142127 556772866 44276231 481474491 285224583 719388991 680780566 905093047 469997653 747671754 995086327 996636835 687318997 813926582 264433218 708563759 670771008 911073530 976952913 992387131 797840509 839047125 368257946 798736041 980496339 984162167 232282503 919434658 836209778 995847812 102759995 630863023 227966099 773112346 67281249 254726360 21802104 361116170 584259383 656567398 251384464 319712673 35218794 47006771 893612417 976307376 562011343 579170835 820276979 847519594 213560477 392123116 373359817 555663222 796964844 891877108 487556164 877425301 21568420 887876561 763532441 908482277 427290495 813722725 949342257 957348802 247020580 581802119 436581245 772445298 995711087 998087415 402068696 869929247 519568445 823966517 113913672 950899738 453264210 579798577 979743902 989492647 237150699 837671763 929711919 973515417 625675843 968604936 149972407 337933567 774689497 995213286 298389661 964691224 407174679 852086083 958010912 992616961 128375873 290962694 530105991 809038501 754787638 972809420 126941812 555778280 400223560 566318451 586719865 606204209 447569691 888108007 125003805 931979774 159489782 185161605 805250561 887842475 80741634 572894934 202818499 961716245 28760298 494027101 506509788 517327688 126305062 788026841 523942079 919128481 946366067 980084807 858446688 927147592 331682785 829463280 475569162 875722458 393140591 523522028 395982830 933427680 473243165 962546841 567440107 810776748 880864962 930922958 351057146 984151341 526462257 705040465 450460149 686729201 801390188 911118838 657837512 781777012 574858107 879783401 421521714 965628244 946501774 971812290 962917112 966252541 462468499 619055735 82796555 95421835 374728303 749494680 920512816 988001085 472237104 748834187 50636842 502235266 683722310 697017055 367853122 505765014 576085225 595440331 651807475 697413785 682960990 771281759 912281953 961137464 184665500 729850783 544154352 741454821 491464280 964693690 619235373 868711474 393212849 676885231 125222411 493632905 418042625 748825895 821403196 954440295 391059879 777617590 470502614 985950134 881600928 919187763 127944095 375395594 21641070 518241312 907308657 964210274 68101261 805340820 273916454 886133628 820526358 915171179 190032312 743837076 372684035 915644910 280018195 726805296 354951090 546647914 175299458 730392791 792499630 942288398 5837137 137748760 225838580 752676536 102688298 820847509 523152364 523344071 406920538 947130657 295578015 582429415 59043143 244057069 589467573 810855010 408371582 794031629 526334201 781173640 618136549 731397614 378780731 988044179 942251791 975253229 774631149 799489943 960434899 973667330 357165274 651019628 823183066 959170500 518348794 973529841 241543860 805152491 761805148 920930533 948073419 950775357 634151887 970905363 567852589 581498605 165619992 366330313 343259206 953422645 456481090 837121945 585900907 832993359 711638354 723033134 844994014 988279602 404490104 497707959 434408222 506281871 712946647 844903625 679443926 753832489 279510338 713002658 193879529 659768810 473441339 675190470 317177824 664789415 203708047 672337982 744664946 874283945 286596691 291378464 727079121 857509612 901191267 912539442 101044133 310783515 486759630 762785180 297831110 868011174 796354822 815626721 411095232 898017292 9999736 667675986 920629284 946210533 166265521 944970028 124589619 280041949 146314548 189639633 317314509 887821773 788428679 873425199 788716242 944777137 828065328 872754632 287652747 527935507 701024396 927761336 901118810 907891689 577088827 783335367 551151171 750993060 613222147 707417652 489460549 904151542 987458101 993835867 705212132 770705433 170966407 210624672 14222365 154933360 838583473 858432284 636759772 657659643 378212855 921403653 891445804 898433616 143550189 335633458 188524885 297050181 911234420 993376372 614695363 959161137 982897682 996650322 573314540 904724772 222492164 457064815 596567361 684616979 690392651 897230758 696871113 981236528 179351591 960707087 837440187 906290005 136057880 830727923 442533505 598858180 784072393 871699449 7542028 475413554 395252717 483873298 667738084 908291783 357113728 739588220 567177719 636797633 616871696 670025044 934550101 997050811 669898037 885127507 636383054 816907474 365819246 672436034 401858820 544931538 408681172 973710886 469774848 541900006 899524566 901333106 807742868 980611730 496479820 803128075 969833948 992966903 926755157 928281607 986060869 993063580 216280804 799215262 785966175 943720201 918769041 946243762 150508764 449863170 235093403 833837125 472306170 858328765 89539181 716288269 821268797 839326380 712402532 914878020 909791380 938543151 841977923 991521812 423610930 424982925 638260125 863588804 455562383 744073316 922065098 972125396 655406628 976814588 199405335 762914869 4085165 56999867 922409914 945197480 398264208 775518499 193001027 811694697 916815685 997491048 238923075 637231673 966882755 968308841 172280753 530126919 860215421 920559655 97977803 508122999 195489634 638142453 233865983 282082893 471949447 979525363 703047416 912539735 942371244 967355099 353925009 839482099 730189382 891493943 482046380 888034127 665904073 813831947 180848490 437541929 892098298 978978796 243405424 516747000 772236938 838136397 604131545 815766920 726367395 770011269 296835592 508612030 247469988 691679085 127191714 141954551 498490814 911541249 315765468 376193200 621765658 940125288 489071701 900313222 949369549 971043996 691121028 892910490 584148765 618577776 422471624 610342732 468994326 502644569 754001803 969925968 687655362 727004375 449410959 592131963 281814888 816236521 648585725 857987323 12195734 355894540 398417221 599924775 295447631 367877002 910639851 977347933 772949489 794420653 932401089 991635809 67490389 698898952 669007577 829077250 261764350 286936300 988436425 996572239 354059230 806905911 993543589 998846056 306824988 626896567 310627082 772930802 318209260 547538920 30099596 79148212 627126108 684092473 463072263 920454038 642230274 896166197 936989703 989828108 131640754 495252544 945927904 970294955 620790192 907809709 289114134 529956367 763323924 789629315 460397415 859866922 100439413 559747101 800602887 943166145 702341303 781654000 874087047 999103910 967942332 997204959 580566302 951437842 309200647 489084190 735217319 925387870 886864814 911040522 791193818 995303021 769628170 913688463 715234779 931325971 248071284 283174093 923008647 951281756 68041253 335474368 211420943 828288766 337497217 886521129 643622898 672763194 770543963 907350572 553621117 735673011 811447417 936578113 242298892 448938789 236452117 567992762 95560486 755688387 272366906 626825903 958347797 998929709 812991084 870247095 789730437 995950726 304186953 860726186 808612622 929021848 851035097 887714084 678249325 901409802 229373597 596587467 890211804 914203721 885644273 985603532 672227787 748805187 544876400 876605809 339776662 413144208 673784838 856303156 729297542 849377419 27672457 207880831 328517627 979461948 476930570 524525960 431099754 656379805 458076882 822005091 49442156 517114233 555727711 600809171 341988116 928655216 748251400 748529057 469771151 629802690 598193645 967731517 738129034 859675290 232460260 493748117 335589511 388232499 449649185 895392184 854212091 891990510 662330012 851520139 103776656 440290217 718646810 796814241 255374386 366989283 819385357 996289765 989079017 997810309 106928208 984751953 376492918 958107424 925798602 983167960 395320882 668344820 229351590 903224537 64810922 81437004 285473648 867450084 94845145 953415374 371855556 477004717 328939544 709971450 832925412 905667449 788834805 940857395 206021901 608946236 678055915 884780206 457234672 661828021 577591945 671560179 85312331 415931099 583877875 788928490 748386573 869099810 928939855 967206892 891435580 941031288 443366261 967598876 652440899 902000097 154507133 689498280 958006253 991050076 192840031 399894074 820954113 844378726 777174137 892572741 814207886 838928567 794150635 896202833 963853955 970615741 662591876 721140503 980060137 997828267 944939574 962629756 460326962 900886109 676665552 960122496 842699260 872255169 156190540 175887170 191820005 904213449 142205257 851749933 110137284 558300450 604900020 981398656 234585921 878812094 791702951 964723614 663625842 989123576 976393563 999232815 284889212 476797604 237820116 501792474 44296329 669877928 686526656 840967868 654626877 896443870 253869278 336277041 933413751 943281910 393038676 685901851 89774065 453641944 531900823 949486667 116387633 591041825 430866407 554804847 55787013 531443642 428634042 497125607 815888855 846864892 321184621 854314002 238020665 996257095 841760137 965390136 161811128 830943323 570982514 655963550 115804744 839695479 540737128 985071011 337666833 644699603 154468789 386442081 248515999 338836839 430769384 583493109 817582271 903498485 721640959 763974830 500490108 829294930 647105646 705724241 921170008 925073876 334546275 885077682 942908393 997789753 579914399 692617755 468646233 948907601 851347577 852018346 852597017 938308465 181494701 865737125 172321446 875897889 595093211 858179002 136988985 372974577 3519331 197170577 648824986 834265662 9744370 425052087 162660023 718926195 695848365 699801698 68809319 838384806 450111433 625111966 938841967 972904071 722460762 982788331 191784702 613934639 90154376 240050600 901244566 906420422 924749897 948942141 725682449 793383215 47294355 867416987 187698328 246097760 110991454 308315700 566487074 906671104 719081057 909909556 848336016 930931184 663662166 720574782 247166564 845503794 316709632 849670952 862342973 884000454 446060893 841120680 344541835 949118609 174706997 511410426 404579357 412124676 693235339 809087711 949042239 954118727 501288434 701522076 37838976 571335342 805792277 896533201 709947095 785105837 923199817 991212521 210263530 550569130 111847500 160252630 921704084 955482707 63860398 499541079 25906093 717750137 286941875 423196529 616430557 754163984 707648602 952068079 591148028 721019164 98353291 414406173 716924453 774655745 881613423 919961212 329450547 949418308 965500311 966492950 529671150 635994997 143881447 395869534 146691178 704737562 987509974 998750314 616716051 704562034 971003925 971023356 389214843 791659086 153973670 540104726 138712812 216640230 849463497 850084077 69866467 918240648 701392158 750507296 278868877 574374359 732845694 988233523 590102529 659145061 968821763 979555603 703497490 956196943 243476400 473776161 948377379 975153058 147645231 797673838 663337502 705147281 402994521 930916003 246094445 275931337 638393351 785764695 318713505 753221022 957807587 988768453 857132579 983118915 664039766 916262886 954214970 986874366 449039046 811713664 632874203 764025769 303426732 419155112 569472371 939360476 500981839 695021567 38667788 620846056 167255841 510654538 757694388 936400002 615746533 886716129 46693298 647937654 382921527 990733567 403711004 684722047 312743403 521969115 891820302 996233247 743971162 853659304 105722573 264288704 783417837 801584658 290833156 792788725 480867664 943106605 613972926 967850214 87394015 131864959 793172937 886468061 907257180 949494837 79989236 722810471 62418195 830844019 957804965 999303870 46008054 739638812 506159312 967416414 87860263 193713262 988913319 993525203 688528562 815150070 737794276 775363926 735025118 764114019 394632473 882992838 305502470 345925676 743279816 906854048 234706454 536532407 129608759 687574338 497401286 922344172 249300786 987785869 193429382 495984720 67184397 621862369 932644409 980482092 786251361 804863933 387636876 772255316 123410493 954731674 899588939 964816704 360664720 643756789 866612492 936900470 64980800 630255105 130788411 629458429 773582522 844044406 943795884 955059721 237756331 816913502 997217897 997471701 180753587 576792467 799637670 979778048 489892142 797792329 44913560 198069316 273211777 830974202 460775331 846341882 778682973 805590582 635471519 819255443 663837619 839431452 802935581 990162532 849863455 991277689 591424206 863457077 952596313 976121558 111194713 562978358 301696473 752637383 211358507 656829301 640087430 691716884 300736427 772977840 708411394 871293320 106688650 134630434 149564811 896352337 784618726 951931396 689766583 917129636 152832205 809062994 13343725 515491286 143313534 912305766 538535348 671593444 314186877 687757047 182395611 573210527 365094100 959186531 571940156 965547262 313690608 493077215 121608082 550131279 592631645 704970230 827386976 998360842 74914731 501963218 180810117 212300210 633821475 849927433 553869625 813821463 443113347 849055714 408348427 651551475 252701492 568394702 447792380 998766947 53832598 148678626 997141131 997416741 97207955 458926607 204838229 338864011 134902894 623230565 66861578 942743019 631267138 690481118 588964259 879512079 447033386 508056758 879565790 881069362 642695453 687863389 56795654 218651587 828505072 894869313 394374448 687300945 932355241 944021541 355415439 894449793 637317579 887157350 357193367 927312463 425888331 565255249 556738379 657326682 100505671 953496575 558958754 912733725 219557498 491483720 221872504 277301165 355236923 973108581 914181813 984496267 266711749 589465095 82925843 287846048 299063561 480811473 291476674 483264394 990947047 995876835 648212202 699759413 754109608 995823789 853471031 923311775 410690137 866118015 699794465 880214872 12822616 432110982 321061748 649904607 167145292 561715772 149624874 340974010 119514750 881855650 373457357 412707421 47007454 293789216 354768739 792845240 107588240 857100649 791532340 989281817 283305492 491990141 134650973 564731368 606776181 910457844 600245412 970605669 816134554 985645951 559060190 921943986 231361098 689544791 603003558 996337629 912707036 948333637 370137734 606209263 454053495 510693226 599188495 901062505 917311090 963698898 479538582 604706597 446483845 864683731 673824886 917550600 782320979 940681969 107827242 757220318 960217962 975569540 682190451 875153447 311158675 525027372 834400745 956274389 95987290 102527148 474624044 589585516 253500799 744506871 106810804 680967437 358748326 896718122 779684722 917841070 49833877 688084977 155885898 621998256 24088389 130198398 553225011 937627764 510060483 709024227 939452336 949561460 264926193 945804768 988595020 998234952 75510944 204581518 246308818 610377878 416206145 465414237 253230504 380043805 232862694 951620737 509571204 686864028 633135506 738086396 549250459 610602687 347611129 917295152 947270460 960022931 226112387 507203280 583613333 619171873 272589556 697410161 493580833 819328934 136072348 352739695 116661455 552869004 862955112 943740375 442086576 450462703 416189155 869882612 884643449 959951806 522199851 548548307 639334153 803918801 170578774 837675742 864483379 956481469 728541127 752306023 469944916 510948373 364955607 702099594 410418562 435576521 931380286 932662712 803220412 917498983 255640402 366966273 495253713 509434647 476192203 600795022 97236363 869894994 381350044 588814844 20049737 554614415 839929253 844993530 69934841 367827977 181906689 526654599 372548615 482460180 904851957 955542862 951248110 972907785 568108852 639694051 95195110 866983558 498106589 929561968 925600133 940250079 682751848 820281794 846209457 850089186 6736726 21990108 770317391 789291705 770286541 859455930 952249096 966503440 463402504 594344786 171403800 756678792 116724642 451347705 490536594 538727570 266749652 721439292 652496789 749556090 864759849 886051282 486695567 916257683 382658109 705580174 217029648 792535858 768164002 768615064 861583497 930128225 674897073 904933782 706572479 708522034 31967272 297521425 928860364 979256938 132130947 298745659 236088609 713720801 6255190 70089607 848534245 891860772 104798789 785826971 645474946 722991081 298729980 510908662 585453064 593460994 205112996 827345026 412623116 747997192 688605722 863084804 620360051 711033974 927336280 954018249 113701287 356722821 335151098 747283280 387811076 605684565 967215559 997568299 388382072 713122261 523832331 578811577 953602769 981233975 299494435 992814475 564628064 616497044 691183511 749490648 217584509 402818597 501364623 647442609 482945331 539305866 256332725 707736335 768433439 868564788 594950311 942039698 517624495 967627333 979014568 998086725 394248359 465934191 156034669 579309498 87746975 485835699 992164770 995611330 303146726 936174894 988468562 988681048 464651190 521942936 488315092 780992032 867215201 908638550 491126566 788821031 853220187 883774715 519233016 913723566 848223499 869732845 765657525 931306426 733690962 969153186 184041792 809948447 997766487 998953628 388838048 451676192 805636835 943511898 329943429 748039516 394822331 916589809 464565894 505582126 128856005 593350603 466332109 747220350 726130860 769631397 287839445 494365510 864886334 899609778 36416943 593712873 205604964 674793478 518503741 609265747 978245420 981374624 924832495 959648666 904377736 992695304 870537411 894930151 313851433 643391259 775130819 916088505 532925242 584443984 228186524 256497075 71541671 410546326 308240295 838106416 132829110 516764051 459294423 972475618 934340139 963365906 940294527 943571818 503816337 768460221 75731561 197562184 721164513 899408308 420444715 673548674 61866530 113629142 431585151 652178285 957892475 999240081 191624795 192423875 868427297 927514892 323069941 691537808 905632385 937124142 417263624 923837926 93753021 108782549 254723380 437381107 986942620 990530357 206790552 648673684 618335357 654999628 429341099 881956647 821573372 943591908 364574956 844006182 743096483 971288414 656421840 898014573 490003235 756488018 205038477 274160279 276190377 383155435 452235368 508988541 256626856 595887453 343583552 646047142 498389276 644076753 793826720 800681950 379248200 675898978 291629758 392137923 929267917 986138645 989788649 990380386 940086542 982189413 875645121 898496988 553042600 786075499 617524764 625950859 948064454 979312878 581480938 775217565 728152029 841636045 122334878 868117394 688255205 839856301 33475739 485093518 452481075 582804484 434430066 593691179 584310956 860267367 149803435 340181042 119119440 404717264 246127525 754650697 852279904 965504111 381594056 396538583 515126572 722156477 141748589 946633372 48669774 994972868 380667851 766170728 96915827 225419336 772000746 805302553 815289154 839627819 816074437 854248221 815605612 911147373 33436237 785154975 573333408 809190400 87633554 455830236 878391570 892826783 102997573 746649314 429263292 756792520 604322238 853109483 858114343 897981960 750515740 975715889 563212539 821026486 341275787 359040150 826570683 990489418 960477184 967085822 633736878 872133891 937420159 944959475 235384773 705606973 80325224 402597121 703303980 960952728 477733653 623573035 364186068 679122073 830315740 983843758 686627477 754405339 168306675 789673572 269423932 419907694 181166896 510683383 59672808 649125195 472055908 984997321 190519640 451275587 969602667 988250491 377029462 802428408 642189028 908160752 603675561 677014828 823912788 838751117 906649549 912140869 876654160 909429532 258513872 631114374 15025163 896671603 146934650 600573775 798890692 998629890 960730700 991647360 257086250 449874025 712020811 785110446 187020702 979101829 258947452 766123473 419246916 437507081 645031286 661085550 206244152 520704065 31420177 885717989 203416364 264862031 612859142 880972466 374786058 410876060 81485223 804669386 819344887 959436485 789113845 967226233 704566058 926689560 335125361 747424310 280240191 814217858 625152648 957123169 327095020 737952550 738572570 832628468 57186244 139201670 618896960 941912975 31837167 554824146 738469147 907534450 320570566 859379588 204495038 425052447 667461939 740148358 441651211 598021522 759117937 928397859 471483645 972308977 691051534 770080420 789626272 811880741 914717204 985214660 830695642 970093798 150808208 830227115 125511095 900839514 113619173 963856806 988099202 991709958 86928138 597665229 430109412 607592555 465749822 855510407 113728128 294359195 816339536 927862247 102794679 444755149 262875698 841327668 9291961 725037278 633851970 690134123 833599817 966242394 41402639 290932426 665586557 957942772 697663550 733705943 643574412 812625943 424656133 694502480 291789965 849530456 322388188 700724471 675544989 681663432 72243239 677485220 52485698 470109517 405525669 463261001 695247824 830662423 803010497 821585983 661048288 748443151 85789875 337344058 682821458 865094937 472696711 761405236 159418619 783860511 181859930 440003284 589469605 803620335 670433957 817387210 691422303 746805679 248294320 510672735 332700682 909773627 514226004 809802708 746272374 970650673 879720617 978705713 431236781 743923701 847835277 988943662 505704160 671216436 471393137 520518224 600482507 876443640 403866669 656724851 221858187 905783829 345090482 714076410 433638894 541941503 441256297 473953939 137438181 162729025 320699239 942891228 800933088 951925556 704753474 879320981 913814540 980698107 485188855 932442016 449976131 790862540 295282692 732176655 708462271 756399855 977122075 993070203 232544715 914058629 163559422 175479914 676465076 813484123 462866750 914714673 327217430 761111050 875684508 987197558 685591324 944085118 165856343 173838335 517251772 980642389 285500175 592798732 783558328 829118730 296216402 830486233 174828793 848440238 542204316 690756701 500492943 575018390 866867686 873616081 318649947 555048095 703112969 998151789 23843855 34973816 733996441 832107276 416067576 872984792 877984397 906821540 805334872 866835958 609211 228943445 997753615 998254276 84031885 113160891 468929864 992202193 179104182 662981723 57425769 433253093 466828626 758850103 168203898 518667940 84099106 426680795 76387991 359750179 710332482 901713166 200392906 692659752 57211815 918080338 213126488 632309199 431653486 739760678 61827322 206597182 943192190 981219688 479503446 575596100 974266120 985512384 493381934 802384747 749951676 889070457 761957741 875767724 858399461 894053694 829667278 869954004 932879299 944768056 562346775 859887725 510254839 774320352 592529700 649789245 881018620 985268233 496729596 968480838 758385907 924445056 596458135 617354521 85003156 798328321 806746054 945924048 944046773 956768153 519679818 798689835 374597589 975438452 659471827 802167139 525006079 914141429 671340667 750512742 345844810 907855867 682882091 722658397 906957901 934196904 786038707 905836866 487068081 608576772 980758774 982966765 803254330 924870588 541249607 576035274 713574927 953700743 844223678 856865432 916387455 930134472 79932891 931171887 228692613 949941658 347388048 861997418 688827311 925642253 743005812 888340411 731626877 912727478 321213333 401881347 621359908 767495544 372186671 948118733 27890891 869318240 90334463 917957457 693587851 972349759 649450070 707460660 113068170 854488901 115721823 591863183 184480950 444033319 123211279 685870179 423218729 673971211 670219311 789841041 778932679 898200513 545538891 920985677 837656127 901374872 391498179 623355963 514593220 554255096 787866059 787915267 280485765 338581361 767354541 800497780 169221241 468991065 84182746 412512140 635026134 975032307 840170522 888313926 681967861 868337533 458341636 577686968 977933920 983958025 749206082 871802190 397893733 418547761 632412978 861162767 716811052 942502520 191089201 293566165 963039330 976152077 657336726 766284836 954855731 995056219 385929885 609746223 898925089 950698447 818982588 912303921 674371280 926187443 56923013 765440456 760059289 834917028 405761909 693408886 700229634 736779935 225842852 512053448 151432642 873412844 596489120 941065509 100204790 322164370 522390990 751971967 310964313 742485902 272696241 445128786 214635223 365076930 152991471 245597415 113358806 205834202 484507423 959440739 871948621 896403796 519779732 553420644 782143449 893680910 382442843 652861582 936252489 975686945 580774683 808548330 432046367 966529140 658361661 824746222 583153715 774358121 392679561 598314438 25316001 508482159 85627039 86732550 134055794 939161080 549558360 562733568 67398861 653648382 554384233 834879580 437449409 902203202 223167784 574317357 119625251 519608531 425410196 699175241 72683088 216602610 314958068 611498484 970610032 984602156 56628779 327956118 150694737 202281746 41072052 247533159 317222731 476121241 691049038 974837680 959666487 973965015 338276840 524159699 823728738 973037841 717773478 964196424 848272362 927974926 553792001 936856788 337792423 697291798 457279478 581884704 2090521 955910368 80206031 275133463 308086005 449954216 726939902 837413240 451299603 563161014 248485109 362160784 915665571 920812397 95685651 197597400 367685007 768976500 701853696 799357330 248416321 973110557 713027321 762919717 324328718 943492774 762878652 793093506 383634378 503193726 662208771 770253433 512121085 601467158 199652835 265007214 362505039 905225741 239598461 458635016 691726920 752270168 989394606 997902181 566141988 868225070 815390348 833052327 728898634 917528079 561298389 659602963 452069902 545072773 179752071 579147375 149562838 728642819 39480990 997290457 493176158 511653841 446641076 469917967 370629954 530378516 732165187 992237440 331445417 462116612 807118113 963801907 716874402 900393970 517908224 968150702 883863007 922065506 610596897 831478131 997168735 997171791 8436506 419342304 837922301 854976411 501604131 795324537 898376398 902732143 578169209 895469660 349964611 489324066 56242737 305823433 629874876 705446646 604787836 866143801 950332546 987930253 363069524 888613682 174513314 453802815 916319273 958599449 835532140 955339936 789680932 824887471 45009912 477098486 818313349 943743790 578528300 933901366 65237509 793519243 505979625 806483996 338524392 560617430 711740495 890428626 878975600 901637052 759210983 931205377 206000328 284070985 500041206 731998988 47411934 401673514 253601495 783043480 438316700 768437838 61942917 74007353 98693285 563090301 770943203 815968923 640045858 758247697 572820684 612089107 8216577 915337984 880825110 959087713 447047735 757018734 248309986 809859351 985639919 986737908 615598991 856179367 312124323 658549247 877148118 925236160 580403569 824145183 100364262 723139999 4487588 607568168 874590359 900346509 967453861 985011298 736491963 894331688 26855232 829489327 40807113 183057255 513503342 720633973 771526013 828052481 700321444 933546309 137129257 669072980 979241628 987609269 888035676 936196123 549464329 880627749 975498700 992236657 818730247 874576278 657540217 979811481 597361501 994033332 139574800 589773863 419166183 703409115 89967536 738040361 995215344 998785042 657445602 937818669 57354746 141924118 278200660 737402171 17312734 699469433 361094038 874276129 56915908 193294538 524651552 706848587 571297785 637710622 458933601 597181849 523903247 980148390 270750166 550359822 716548293 760223455 786433685 872984640 469095097 803337985 794980262 924708893 469355020 852877325 481298718 814941180 100811803 624880891 985094556 996584817 495829668 712941485 942502291 993968891 91613761 632828945 958371353 994953339 136366173 887866266 874514852 915838057 185442328 875787217 328388285 960514775 182512116 471373420 762565294 958718298 231123471 395287825 986463483 988882421 453471089 538737785 271634668 944288009 33048894 769811603 593146396 816302586 15614873 763057329 825449304 883384727 493798149 713093049 466177286 678429427 253912200 428043252 426218717 853199800 847126975 901731160 521478067 655566119 283401310 718304148 641836178 833348976 225890821 279951052 582835691 638296009 883771986 977386338 162021951 250389817 252148914 579457746 502143128 811230063 809801069 822032522 159001316 752176624 957708308 959861803 451345275 533193185 50241139 209184058 338378421 822089547 860946554 887614336 287728465 408300830 825003244 966710983 936792223 983857583 835402157 863222899 172095591 839448814 655348717 744428651 483010506 934274003 217025188 351856620 39949739 417505284 474849670 850902092 381435220 462476867 787460185 942517799 754125948 958217034 474714150 569948472 213281954 751096514 707336120 817928545 449885703 906518774 673602696 971084548 295597903 391023767 165998781 423915554 926742200 974666766 622894880 692075275 428864891 804956652 38732768 591231944 301322879 845314583 205648633 309280256 297731047 428632663 247558008 970341150 95534077 230217772 835804684 979122808 411543595 604887991 814460299 866463870 324981293 657339557 550344883 804622388 933412803 973495285 543123085 839635399 398878154 674635139 98179677 316104610 497602614 684697546 235196370 449042294 265113209 591856010 278859198 779520344 264211358 878603910 736654524 983708485 212560039 563996367 642568616 956411106 60898923 769671336 821945802 879694802 787615274 964505753 74363011 272239345 459017826 789504831 113546922 757073822 185606899 776623891 825657599 938292168 339402412 820820923 826761990 858044230 901889815 927622609 780279729 993797002 410952834 739724636 966094179 973947090 557563307 919553857 851946372 864671627 83757093 816987727 549662154 756024293 129165350 915178396 176005859 929411817 210909522 616142053 263310659 856514006 813150648 890158322 845564192 994458595 961393436 977119281 224761213 458209223 69052278 923631157 328230729 880885984 563232836 897251957 479784940 876800771 556012934 895246183 609837673 829202574 962812768 967267526 182591707 275928556 555541169 954653251 718591048 758246953 702888415 716205672 873644988 977260598 232610908 828344337 991231957 991659826 273627438 361411417 529980740 619377135 151007467 525744164 122063088 727905169 398362196 598500258 969746297 987478668 813983250 945021781 340361081 755692849 814241194 899891675 477822000 967977215 599450478 796175329 615543925 814859065 84325306 871116483 591412441 928910121 82505532 734959977 541970905 794123071 29018498 140028388 43876969 245716332 153902461 323843351 693163308 796108743 105375414 122530997 879958622 883213782 941185647 988172958 563181726 652719488 748744948 782215630 449428755 620264263 990368542 998183521 701140209 762060923 120941345 835976846 881561031 990220858 894544225 962734300 274662441 462469156 703502456 998254414 90680352 726895152 493138396 675611882 536406074 956742015 196194767 414315082 444318104 490781817 820525154 951694880 8011267 181028656 892779316 914727042 618576596 840123075 335271144 459130272 44014053 52157940 855836345 986161164 465409747 681565218 838720604 936373901 759816147 800272450 865446978 885722274 992308429 994270567 512406083 566323362 759341555 879940539 966500489 971304403 653762479 951639764 949628091 949676090 915952739 919202797 946322058 953989759 946543662 998495650 933020563 997216321 217077190 797928263 391419816 583461556 151050418 472724616 880555735 900671955 939493876 997473102 9629834 691852948 322067708 466241910 850938129 937668817 967886213 996433555 718695783 911789525 456782666 599975558 205388227 975221645 323111102 634549705 248470915 776702180 987404374 996912423 504235505 690284131 732686677 921793366 775699485 781482178 852203740 865767564 705095237 924018639 585968418 613540537 163491804 674067563 48984514 570113227 166250962 550226431 633778805 702078680 718168992 845950907 978975958 994838627 680564379 690803971 273510371 835607398 488149317 942433064 734577323 942754310 970219873 976103626 119735029 543957267 717825403 835673730 959500519 989736547 873669965 980667313 417779523 746739961 18281840 822364182 462641761 879916322 192898501 765691319 377000735 467142238 176871644 699428701 286452173 599554276 838182480 919290747 631483625 909604490 646580851 776684204 756216669 861441713 226626516 746309660 908481844 944170075 534250445 689905469 459903697 521823745 523965481 761357177 10453417 556943257 818303421 849116797 771968988 823355727 240460298 426381848 245261634 954640954 456930351 943674963 12692109 247754045 554989162 679821837 484133832 537168839 612885808 714964214 203280798 266346641 959444760 994808512 258982682 423526376 784286470 848332700 865919882 997586934 420794447 890275833 517010984 537867337 873437483 955296663 253963656 579779021 973600575 978393334 771278492 784019577 270884817 369520523 403898949 742688664 632613566 659333040 991077439 998374547 372207277 553568663 894664997 914380818 197669567 521151774 943701479 976588352 993582094 995568878 275162983 833595527 3152515 579041896 592459359 935496523 255888738 677299985 134302682 282625804 591128482 655839524 125700426 662379622 843909395 897611243 908959257 923098508 644005163 967350804 591327322 979779626 61389443 745147406 963178699 970318283 179836551 211809486 376783490 645050374 451059061 872077623 489407148 556298605 997409309 997549842 198054371 769503074 528841732 698633117 975162634 989626756 804527658 861542825 234669538 519428859 208328537 341471986 852489975 992133249 634787963 883194425 412510417 871948776 749408351 829950862 852862254 902970092 857838402 919250707 459800777 627941719 734137188 948436553 825848655 958438723 177920071 853639613 896199498 994625713 930298965 995696069 166591022 869881383 933721718 954879621 499109530 944955218 144690428 719565670 662906808 840697109 168409981 739642071 242480940 292558233 371843986 397082948 63131653 474838258 293305722 857018148 908261131 924759648 380106133 898770021 875393222 894792387 658433901 821940460 167249621 995574936 622419408 971393326 955244411 985241259 704475934 815618590 932866771 966556571 850191902 970255138 634652427 786584671 584344169 734847117 17438034 53151037 878860870 913905754 624320532 859161100 662920376 997580020 220005672 850391684 771720184 972734964 639390410 640956724 471284565 490926082 703572756 730489590 785097036 892929949 60726447 894028542 240902456 774458197 615593531 721444909 765274933 877151773 414818948 863142066 85079315 756817862 831190373 975653129 170372317 283741883 562489423 742379615 462625449 862458400 573846458 715769035 284169476 467778313 563273420 930547673 399616629 446899748 669709521 822281416 393796118 889078581 770553177 831209681 114616805 407935477 517743822 850077946 245084299 428893595 468279631 743916808 988866372 997032310 874714689 996620098 258374056 432838947 857217528 988064831 745889395 899664682 677577793 816223183 497037511 904024190 652283816 910238272 445142247 832271063 676282161 818983391 125181567 762658356 748675648 813066148 185028755 743477100 159234610 403607636 878156797 936720732 920819604 954858643 813223577 814854171 315327378 689974503 448578123 514089284 423955473 897131712 862182654 981857834 347138344 960620197 993615310 998960048 651376916 769631019 314490395 461176545 482528259 967788035 258081134 865590637 750241712 751407707 619825983 729158923 711137059 986190948 288447501 410793962 263656896 620258262 676320641 981270140 264088765 957447340 146485730 692739199 509510269 959597452 861849905 909379013 289778336 753955839 414265816 950689880 91985287 102945705 550342378 624604395 32970464 727047550 122084227 407038933 734790912 907826132 313424409 668947113 731508835 763832710 444521754 807300266 835214238 940050244 327968549 690926999 877107196 989893495 604446311 673160580 72066981 228222463 940684001 988685656 785992036 795952559 3371230 546448744 748044753 788454555 524093281 703193877 31838827 658466162 663562446 852118540 19122062 224665038 499483642 727318400 230102416 335636088 702085936 834635573 508934914 807580882 431546607 565871191 459779260 902053281 182319356 330218118 24723053 231598593 810203909 879223459 770938532 853086139 693237729 964046479 540640017 773136172 623651491 822089435 174170639 494093100 155538178 658701588 787865325 954341835 708404550 926243279 955211377 977527808 224960081 845518452 956867275 986925697 929872817 984947009 126974946 887879359 391033164 740763087 69106142 473815376 949015884 962040101 994373849 999191207 274326934 294533655 253275846 781150711 989891167 997079823 233679504 368744190 823807599 914551421 709224426 874903501 337117599 771968943 24615865 123532721 695168022 734774003 177656176 407491498 320149258 933350772 229350892 963691548 70552144 493879415 434030017 847124090 306930164 957431904 214725089 377967804 386330240 442056330 593712614 888187069 95724685 432574073 134279571 403691663 887062511 895861448 89078906 812369115 348361087 490998903 881252637 954712983 300086923 613496123 733545980 933322852 288228546 883827978 659760687 821074461 439020458 451003206 552035610 842295330 537542178 984391890 931378293 977127958 527930106 576185584 826613665 858726458 593931906 823546551 807696274 988687213 859949227 889848596 863997040 874129830 619255236 944909108 768736379 777008522 903040934 954013992 956441745 988141010 720327022 882506152 350037561 492762629 145850979 983092497 349948845 610622056 424852131 818795063 616766723 891247273 922922620 989114300 93676457 153517584 599446747 695910604 347157912 580245982 139238256 264269708 588231334 731612434 145985962 458064703 97952732 550743518 486198343 963487896 113003540 941858615 585980955 870480196 356939341 699807667 658866183 872707042 21044801 533204023 96431799 304940896 528913514 754435237 457656138 699609976 455997493 578597224 870221260 897955371 279071386 488385933 567514491 572016790 29452110 265332827 521939804 819475080 493326443 878234937 748480606 894413996 14309360 508527403 386246008 960379830 285134398 561804186 133524042 495142545 364412906 709039061 32072436 176940789 994010079 995151132 439886009 469280070 747160777 877432891 414603595 416972321 540001779 621227909 889533959 968131948 52427726 497018753 770954022 978773934 685997092 801806547 716407442 934610411 419710925 663258181 927822825 996212335 796425190 946943797 534372718 796246553 813154974 857731339 355061781 863605509 870245363 902055942 233716776 710032886 886820434 898199901 957318457 971867714 596952697 698556509 262997415 958337877 403804346 672744461 537733142 800643202 233859488 449326021 476452402 750986132 938149042 944570701 889140305 942456797 249944340 723292133 728621352 732152128 749971140 985555982 765391027 906208495 125046931 634138352 350424008 790960199 767511929 768516454 7993291 552505607 546801738 967504270 988414589 997980051 915767257 995749557 956718593 979574322 110810168 609385426 540053812 831532901 710649942 787798000 591874644 809230298 985052666 998448230 619907352 993155757 75689690 615520703 529810680 646243915 59642872 460204365 387310425 480549255 331036769 931143636 318306514 875035447 965577660 978569136 142679167 821102298 80056313 722228060 126567863 150417093 365982601 594210466 842225721 938870982 966738291 974513644 317654701 689378443 513437362 976216244 473361570 836691865 302650171 609987714 33832034 695455197 157225451 733328586 593210741 781084950 893878848 967693502 665091613 928764825 947879418 965091395 361721880 761379466 528533070 707626991 750354396 967988616 810010526 814331191 130815907 167686691 104872385 874363779 624261864 815802290 376475458 910459237 925550130 941089887 628962296 694370102 635076911 844762293 398497738 563482389 354882575 366072496 328600673 666737399 677129864 791319301 82567926 412418417 303220059 725239481 385244799 550623415 469436493 564822082 830463158 955640185 997329356 997955650 767902366 825352172 224252003 495663299 460375553 816841121 663478934 899996160 47233157 868501206 56653520 563679002 391880809 941348767 386944004 947749796 868839065 970863189 83432514 443217150 418431179 460081271 939770953 972853327 470567258 994103231 8605681 505462863 495717939 742704299 723023739 802745077 146371184 265854314 534702096 796747145 657170643 719238443 583320585 820737812 274933738 386446203 589483321 590116101 945317716 963394803 493308545 857646274 657581438 988322878 659982252 698672121 46448605 528882176 739657533 833812870 4337360 733745763 618423125 726244874 741017889 795181289 131075932 389358088 505988654 559961472 89507604 388183836 880414263 910556688 968368960 991796771 728095821 854326954 670838423 683213088 73492723 249489707 361047922 887152635 279407044 699573747 378303861 830201231 208558402 474580654 230162990 973936481 992219905 994176421 772580246 816646865 418098720 830276511 60692572 537874276 122386383 514241021 604040109 790961639 26468582 470191803 981453064 985839572 686089428 874346656 993461513 994975525 285664368 531948143 622314822 731016645 140685808 287674788 704613930 979847362 307519522 986778382 861419779 879900353 285470419 449093148 426201318 876387843 932069480 945544786 451595846 814139377 653234870 786263598 222574523 630280123 666575259 973696218 71882397 521924700 958658372 980058242 117620608 617447671 225967834 887399298 831753570 859012070 11476697 91654976 949635399 997805001 275801648 527777989 376430247 400018937 686340402 782406343 522431753 973928667 768041449 945797863 859683363 981311588 27445139 918378031 696758012 744133954 221071815 596735616 218506004 531699489 918274634 994086246 972554163 994197715 418987317 935239751 29566978 55832533 605610101 754210580 772153995 801980091 758516075 869903722 954022305 981067546 650877119 859952628 544248688 582064639 945487191 992616801 878317409 956341844 24527680 109452100 884521470 953658897 853103498 902560402 322988011 527915829 37666782 160403803 684290616 732812186 591658272 815825997 804248138 890926384 367042654 623735547 952075346 977472996 838321322 924841668 177643212 203355502 304370711 821791823 111489233 784612374 353374916 626002521 277029471 885962134 568238378 576940572 371822909 995172518 670699368 753584960 186332720 276422852 377704906 887010495 492310556 805099607 997815299 997934934 777998210 877387060 147510158 499994035 682851699 941510150 433210528 873076962 431954250 708269142 251766653 464068103 269726985 672338322 908706392 950730357 983963101 989904212 691766465 909971538 758001464 867338996 342063670 606572264 359266034 773808296 184205893 198786413 705855511 927836913 445239428 701916540 274313653 670087649 978122833 992570043 764054216 932752347 874226274 902571876 780567382 856745335 45015091 814391296 785987487 935320766 665456447 678098219 716533011 900699939 505347251 704871799 570164646 719885462 362429079 431578316 627177648 722648013 347064431 389197932 406132457 551449752 262816533 601281214 267022643 564541209 315850246 838627054 170908321 248567099 82634638 987031249 100442499 931751945 795243103 845679059 881987421 971830461 321040943 337472943 362109134 927094902 589847908 682148082 774335297 920933016 210396224 952261354 598812295 923278395 898854176 899077610 455540627 725029943 80279434 661755045 840441927 929626924 179762859 864556555 343214923 409796999 352694090 493961489 518169255 919989656 541406649 886119387 281376869 518656251 497893414 890997592 554966064 585939397 452785239 775343260 953301201 984192418 670519385 860335204 415543991 657271424 946153129 966750700 378197596 630468052 684355151 706838536 717781682 859313925 263801825 651389052 50904587 694201439 281298423 482993300 330720598 530268481 463317053 844027484 658871206 698954318 651404635 822208968 924858862 953499706 389388204 706884031 55349259 879859008 832201273 907645165 54869107 561861143 370759574 911723436 623852236 945876368 470854182 941838321 622076403 670875462 59512927 179395919 236987569 754448268 592398376 715422962 796465617 838678011 86475442 122316561 779185866 956075466 342167738 783952559 521629755 611369358 824902277 956591322 8017396 607766467 274600863 330515841 908151561 944427511 262481529 271193493 685754932 919802092 803088224 952311860 171380457 982225490 705136528 907604054 418776247 939678745 534238378 859457094 639453594 950144929 837752065 995306170 16900816 788027772 196345888 937300305 833963389 993675185 693699489 801430267 886500089 901234098 814900992 816231805 798650964 909934579 108031030 911193187 248253065 479660096 926398840 937135533 622297249 788742288 976630363 992678379 244704759 795587927 398029051 987109885 642910285 700940932 669377869 783059393 146143607 435308983 99885574 404466245 133498683 166521357 944242968 995423367 351475086 591628787 398558918 979536841 212251934 674308254 274654966 706568372 368129417 958986989 390608348 689743441 594473731 887000778 817843753 945315000 173552506 578457645 334858741 430727048 468871708 694703959 401769422 549579148 881037766 950176543 8242290 660982527 974194296 990724449 629834500 721677792 706053698 996752741 947598081 957334559 374749079 631914300 477375320 898533590 3595975 247469024 510676598 677934689 210124099 887949041 121192841 629141252 447383446 660083732 867888003 947445281 724372732 875344882 425570783 599469559 589719206 990028459 372301518 486219268 172049626 367638539 273038360 993720050 679442209 897419527 824681600 937236353 345558288 811337264 439519314 812110620 391763900 947357628 674156956 906195519 698426944 987053007 645813046 916498082 479265584 884387219 60749410 168072557 462591742 754689661 261025587 404617202 470340408 713788310 196101089 896581679 319970550 709190383 505620178 628108811 379987318 490619021 536539635 866583747 523354958 844614529 97497060 569012412 152638568 785839573 368597050 598285669 124941929 222132565 902836812 959498510 125098094 904712703 380640053 394836895 253325135 459516007 654004360 982864148 940646040 973271986 356718780 821834558 449918268 827673866 682562013 699072816 279755983 516926506 437993712 793607708 99825980 911078230 485759530 529340027 813709076 997685007 681665052 933405610 874711737 929429112 251334430 780646159 352911994 530370974 861760027 863633051 915283812 941965787 163714907 603936150 859412035 862407103 301690909 914881705 185298381 378688480 253284748 810794191 383159857 472976556 626367646 789680513 739784250 821890593 810665085 894893480 40787145 58012097 676669373 988330746 108218054 474648592 759486929 889795419 140842719 581801910 23262447 422986646 263633665 468247226 983313648 986423610 393327661 521430063 156204687 405768611 730601093 960807516 439180078 545749090 368107562 761153105 406841943 631987465 222461041 330124986 430065814 443199151 177417216 911930608 107802530 371236130 57725649 201581208 632350187 841263417 43055123 131890390 376418509 874047110 340236631 525442285 314328994 359903289 173119133 907477142 52755402 312126277 732364726 743436554 153193776 528125060 837164578 956515547 706731305 757863770 86623458 419903516 831848033 850058869 626399902 810696884 233844061 509997299 333540026 387834027 671639748 798154781 267322159 360666594 416361264 950587264 909336811 977437729 809126402 913539848 974915259 983884210 564673723 995432767 327118310 409974333 356901320 912107627 273271271 907371415 34907992 183965207 552412548 854119594 1264729 401829957 921435109 929726152 425217100 960647148 235670852 919814925 918805975 967735394 863056397 931528087 120167082 890050697 469025091 817997936 161838312 198977424 646089101 978777653 855186582 977225482 115861055 437407617 750741163 773480477 63322748 518694080 960057320 966250277 526201427 829915949 73938890 192915180 83522090 936119268 26929045 537178484 8860107 736315412 509760733 585701601 66609129 115266604 219519280 230076472 936466033 979167825 846033448 982778253 936523851 978647271 515074329 623646536 895933777 941294105 889072064 903839422 793100969 923688439 961930751 985509587 869738974 876484758 325943647 434730165 927728992 979732381 773858102 835293593 954872182 961867534 168225210 963042111 459102122 907203052 170336796 775476236 521820609 797820360 191687194 945393330 504260121 917212866 787413915 871073382 455825210 470053694 703985546 935495550 268918077 579127563 565393882 649783718 931222583 985974189 863240818 979239356 135209169 848005493 788735294 942445246 640191654 907122155 270736959 421624265 857186754 910293846 226050572 744138398 431815443 647878742 554481775 827097756 412621231 758830853 905983301 923753283 844520770 932010004 691639799 948607214 843017169 927002241 452072706 721099402 499502767 767993782 713500580 797799170 220590011 862339284 420110102 444802163 300207274 826115261 554544676 712509777 645027551 906623143 498058036 597704382 241232122 956594710 889244641 938021030 622778110 666075518 894949275 977091446 866631006 896158979 687112658 969600178 399049691 850485488 204545524 222971382 527851891 556970068 550800054 884607389 885310743 970195263 598539402 705209397 743443181 797790552 838775683 974070451 741214362 799484346 228047931 805507953 366459249 976745300 710282781 736105748 486700337 752733002 925932190 968764710 246109493 616877209 463813749 627537891 132041243 465684619 727600575 965086906 365412882 796707190 441097219 789748606 133242021 217106965 646722375 865579903 749160934 937322434 313083152 526424603 71615231 219044024 433231678 802397766 452757273 701493322 541425006 854624503 943114227 984217788 425949361 873559917 957865416 972101629 286887146 412740947 940363682 944247349 843638940 958320642 549637202 822003126 327411185 356657710 172171873 575497815 398907352 678789549 703111062 838400626 514942090 772724638 766053729 999263449 269134175 526590640 555497575 758939555 153605228 531989517 317292748 817512940 576967654 822336151 465562715 825839713 306063797 803716501 846026210 890413772 521162230 688491406 925787428 971630788 293044123 437237457 525873084 939549721 567609528 780833615 960675465 991032895 763605219 839780236 708593878 856436763 181758807 525521832 199123207 952008849 164224044 176911746 276484099 661740732 842013818 924474787 364744651 683550790 825780951 968856600 395108625 860140858 309381150 760791842 505253759 820601611 1812752 944200987 151837163 832285016 944654419 958798577 101141952 385093246 958803840 959404016 387814758 792081750 354710793 956218976 221418358 534557572 663642472 831345050 682370029 921144284 633296642 808789680 45174587 493887749 699845295 750693497 722387495 998011789 56086656 932319003 972818900 996041155 49102277 926416001 609472144 646222422 827919295 989088991 527653656 808728382 141364978 170350581 553842351 569315819 245481732 510135602 827148729 878975178 3810230 379030501 990276414 991305565 438128206 556434612 525710826 621756857 347917083 616063926 608696926 868653892 835921806 905349913 438809846 963185257 344311716 727325431 248010279 975206140 882690379 941010892 895127891 986235313 905013115 905839078 985681353 987987775 454396310 625815561 95823613 823175901 976484142 980166384 871376374 961094205 380114893 490800159 763869708 970301146 180102515 393343965 279962318 809924103 902857988 943219004 66655491 743326867 485654325 996897527 750285395 795597606 812673141 885704229 718845255 908937340 702347158 825564138 719074999 956647109 261684353 642686956 708603228 905220679 44795937 731266146 344961943 666418389 344857369 555008134 961292847 963129360 146109675 631674996 365963018 686267308 316251781 619027005 298491 868022603 814427145 937835893 322307496 819921958 694131955 851916838 161599176 298844240 646007617 990245725 294679993 300478749 16190525 547330411 97826748 692508026 136151272 530339055 333148922 552867361 341933481 862358607 267147982 930210369 595658944 611841264 297016017 949158369 416896613 713623776 169394884 921005821 650780673 652705867 952979098 990480811 363648234 417457928 122935200 339898523 419022583 665785152 451924812 731074545 48257374 742833759 819921894 935279628 196795590 229350172 526535083 565338348 373608017 859234027 124332442 589947471 181185678 708877306 879891716 941792764 428436421 604329986 671643515 836739800 505646579 643254914 299687769 484162343 461345205 495002848 369085994 814870277 187021759 235628665 917683565 959530600 472660943 873317877 623611509 816808732 841639860 867159217 61968556 992846286 183764377 733729608 89020965 955194859 838886012 998468093 129947715 852687537 407836565 521098240 702156384 806647409 600919817 772668090 610679969 794622336 912037351 942981802 455105697 887425682 64267406 325598301 856817915 870761806 208501381 295294516 438099645 549868275 544716009 609485881 727423020 900565763 209746618 415907858 960872155 996681554 708666305 718417851 500068684 814506495 595339149 619302620 284087997 887874775 246897312 277624637 856897737 888963277 924730957 951747405 124093564 859935083 171946206 963132680 165447999 849447160 298068365 394770338 717137998 902417369 538613301 689180519 933834398 946194771 913150739 958290192 930714792 998342395 45840963 989449587 85394549 850594343 810722751 837489894 979959048 987661321 880983154 935817248 577040977 583425368 66934416 695539221 106732289 979172432 913500900 938448707 489957221 673375211 94914069 630940992 769686134 973205478 287007366 975002674 631385879 677553584 655915488 726874200 317383420 396532246 771440992 919288870 150764469 325492949 589316518 921761046 189321568 913002440 863148514 920477222 149869410 690463444 422301862 472093383 466429277 643314851 468486562 653367272 47135085 984331765 216562849 539081373 274521222 476908364 560321747 679946566 115967328 885447586 734124144 878100089 688152134 852764972 973823673 996617941 41836075 315504688 143459079 817476227 741483738 901182327 864796757 949750476 393463805 423047138 153923332 896658954 927251399 944614918 382869084 784812853 438813684 738971315 293218584 773197144 838458018 857445092 641557208 686719838 793273669 844389182 199051462 496849413 584815367 778067444 438439273 875491615 89104420 316682540 793927465 863743010 819784434 828758098 882738532 889693424 604762677 926288722 350978338 435829234 266257482 645496158 48770303 525465461 489860256 615925782 158073631 262643530 75142733 230834750 494469966 607778607 177988049 614405628 153955671 860784414 343324847 712420738 706362918 838340251 94438877 993359422 807370786 814531874 492498324 606016558 293805918 460962198 391219465 582608916 737467247 772753797 885215342 960542324 420615235 708986739 965295141 972809977 868606534 921369822 641574830 667479032 872318859 905889321 79846871 338058141 654498523 978783017 106328415 736445655 132541413 720391132 736574432 859668090 812577345 860983282 317079360 567051361 660190892 946706051 337178843 732343656 659139600 849637151 347221047 951907845 598968456 789110134 401837865 449417447 759394710 920576103 23305412 440105892 534459427 832162407 519047995 523188592 633835838 671329853 515227349 598230690 843916337 942617846 214564814 267714798 18765541 872783178 608222260 955474772 693661581 775381779 369089623 539946994 473132533 942401486 185117585 821330846 827301378 915651223 758257973 807242800 912356557 987885303 859869784 929169136 66563212 749246636 190359800 603200166 586837858 713900470 19980217 981136630 663807587 734846462 745194819 804687051 891468029 928046720 486938861 938952950 284372739 387215135 815012440 967040665 420552392 841702269 576915627 819113362 147108048 608017171 504875393 884335272 399689460 625934662 47867091 438979682 587874604 671373947 16829612 657820811 733050500 765191214 106072668 131451234 135216358 449190095 427427158 654051410 398735672 716463932 753203423 978559423 359062491 906663949 843716501 925611076 373026626 477308698 731967213 808134169 629758935 783479260 426747103 979165768 854172756 985289230 840820021 919326494 76742731 405860452 58620606 474757496 697012020 894782202 52777742 756715906 782437027 807066473 991636126 996702626 111993622 941042116 533567056 742060671 21253839 33696177 771748347 772717311 796358841 935226339 760674902 974783142 245888947 713513464 719260331 846980673 586977275 776988948 962430111 991637435 271226718 902404265 130059006 308355068 159046705 198583339 845786044 981495067 824516702 954027009 250818317 287216129 108624356 800572604 287221745 409083446 401720873 504151707 621984126 938338562 868228397 887710891 798893006 902544204 452852793 879182627 508825978 582664951 440768212 665525591 438292713 982879224 824699274 837425926 676187868 980881579 869967819 991051280 182482168 898819039 818149587 865952485 770757860 997250635 654226742 944568305 621742395 793741544 80950561 447845377 597189473 894623483 801566192 969120337 285576207 332678707 785919518 955791116 3431724 411548775 198216806 231807255 819634707 932378630 974270498 990559355 62173271 329803873 359604699 624418286 808561633 877252353 113407755 299242664 759991121 894384288 595747970 976483218 365985339 575755146 647400191 709894427 332679436 743971577 468350805 759543642 891548270 977141799 478146553 770274878 957190631 979406385 172563534 426176537 751531032 962597893 718822173 976015865 993998606 997367260 226313591 455911992 668836504 911548065 199652765 941385725 594763487 686821061 140002029 335894951 369361625 475074954 871086586 953862263 858991528 903776039 418722527 527056665 124384582 195286526 43465189 87558712 415270957 989300234 784593506 834151661 194417450 965570366 899019780 913411046 189858051 614289461 910972894 939480377 697778547 763816084 55840997 76463812 425852379 564943280 336027776 661955149 211110599 543880092 591396920 810494140 109349335 263735732 103321831 428090061 646612235 837608601 488125237 725611053 778509989 876047175 76499678 399411880 855945416 980409155 86343403 321848594 479633942 678617847 518622267 846787381 200433251 737068042 124714332 497430459 777297474 850280464 738196394 827309601 829311008 898845129 975945005 997249035 979228598 990046719 220954185 971805631 324860393 476558763 176734700 358256888 387932442 456452114 66973313 124795803 842054635 844242315 46553005 149950383 217882820 532505933 236701338 559300860 225036888 370052176 184158144 697521918 19953474 714358104 766310006 931870211 186790914 553343070 632703701 671352418 344641375 470928092 86099090 466090795 889809932 952837967 597934443 872020401 431123196 676867817 920527389 942452183 803083723 950768378 507431936 730838834 290836005 631927143 11095776 317611377 715012121 803821635 391962197 681343118 83534120 661387181 225790169 640023574 876762479 996585981 36167447 637244265 275981368 954839057 607394616 803136895 523018204 832012631 626383365 785391295 647856853 865406235 5875791 743083808 747317954 750958823 227203127 902072645 527245111 690765497 203608972 692616941 279950841 307135710 889017493 899331739 355449251 553607263 90352115 460460804 61587835 243206551 354250545 544667713 782286030 914889424 665180865 836688925 221238672 421730230 468910950 716620120 177171832 937024750 592460863 653837414 14076223 165200622 389378706 852037026 930651909 986434503 756029015 792781768 933734436 989777357 656385587 668413873 900669939 980762516 151145692 554197963 419479471 803661228 417482898 558446152 859228677 915613153 448266359 952279586 972732544 974066891 865702418 888898697 547670720 883307360 692941783 782988123 510757367 949725479 424250110 658316610 297938031 908454021 321586611 557810589 593666067 693390382 167890976 796468135 73772762 880868183 642671860 989297229 336471768 890681725 74404457 572013734 435917809 671035588 661793803 878253164 366569719 733616359 823504941 932062948 110376522 428625649 443682729 779720282 575408524 929071497 707693054 924442196 168232839 608228888 976616639 994184039 662477951 788093485 417961578 443116700 275632389 381649092 728637301 900306022 463951143 501891031 893221219 999257769 384133114 416419721 405944694 871419183 803364579 984878876 549805128 664094518 407739066 554452016 715336102 724071685 831490460 896917787 799604868 896295124 645622168 972659355 167486803 426229589 13658869 828791737 678697384 971437388 966713000 991690432 725810966 837657540 51200448 332635381 711075250 928665205 244791004 565927878 269429289 871326493 129018224 664355861 749541955 857479903 535657468 977437541 953867427 991058697 45874873 301001246 108494108 158875063 876715076 935308837 77856046 353729118 768472897 796253068 954362798 995404407 434334713 930899391 411920363 665468422 747198855 887182781 564837712 648091506 674267440 781887468 890783840 905910828 406409272 576756339 728435947 933091266 832280917 916300509 153505499 973971425 827472187 893366555 977198127 990835709 969775485 988448805 451325134 577404034 767780467 827564726 551029046 931335225 828669408 916547368 980181393 987736894 183495318 873886753 575886513 963766223 324164250 817036388 497406403 983308375 539554209 677943599 737686273 888549680 458949484 916017436 29398810 732170684 635904293 974253204 744082854 782406866 600460702 760081321 140080242 462808177 422751595 863814227 910962848 993175612 947552715 953470546 586447705 592685192 492841307 894459082 43642882 247759904 325688487 636539876 676960784 765049961 954287381 982211584 796005748 883422718 860515040 952969003 411250951 737001537 132587163 721893993 941337636 978859330 588292755 751181901 598477442 605788726 411022164 562752384 258704812 457709887 668126978 847636439 975741393 980621580 621726486 624020547 430902931 803080946 81687204 680169031 945498254 984298091 841175369 869447307 269981460 546014446 529148245 672585017 412611294 905201276 947923972 978949081 659124679 804756926 176308136 790140933 287516163 505859267 561948442 756059548 793961784 909886527 803806711 962261623 891236594 979372957 306061671 542657617 165962765 941891405 542582359 619067641 586041577 626194318 882040065 896768125 728138345 756633593 486448091 729290751 144758781 752773288 925914806 985240629 477473772 526110841 492464672 597504482 792179335 954802360 415235325 630825847 35304354 581644000 380322569 632498637 557920288 661870350 70564298 119214281 542642697 789610130 729458532 925259985 534272857 721408697 858406829 932140281 151520371 190360818 917364175 997761383 425507600 753047488 326062878 909383532 838054306 871988352 695137401 969567758 307885694 378262385 133594157 473046958 323626137 684882393 224035952 857132035 403194470 692541395 159328809 398658751 643097075 745403732 237025334 366145350 161723101 285937897 603914123 816105138 819094072 959877169 926260041 962050748 296963262 300351323 374072543 985604771 16501124 791327344 15224913 688532986 151126748 388930880 490154755 735114233 395544801 764375626 426526331 449414054 738431992 907967462 22282872 837871167 306395133 685718304 134041026 645613777 427343316 693515750 866158929 988198631 21699238 398774103 917687770 991881658 642065270 833902601 838963710 935514570 704857417 907188038 673406678 951179268 289643314 702047673 439236914 481807679 775731494 903683933 253574836 812031621 148624828 772962569 39409093 938075687 748348234 989881178 899902685 954764152 312624669 870802760 297517860 891533916 669159821 718015081 825487743 989895813 948556697 957243254 945685815 963311709 918774920 987505503 437701611 713465277 517188796 631592785 295504747 521502322 258667009 737538334 546954305 819995457 725456028 869303467 987862207 999313384 687692824 760850218 252713387 311686264 849920207 989475885 896759721 904721814 30888516 60508065 342682256 722287495 890940408 901322479 172346711 649948478 332183133 934487809 342937479 549807466 470605162 774959457 263639364 312910186 47987545 428762447 720507225 979785645 451266482 661998471 514046215 712955030 816815099 886424770 31070185 477523408 528418630 954522513 539266726 653309943 387375102 735812669 510420919 765521179 714985107 871107384 792152415 901353916 218409031 295868395 412291474 844215156 418039926 993561061 49562634 959414304 519809242 520682109 934454572 962750562 472268990 593346836 412484166 490972451 666085996 939485461 718591426 848016994 383640681 962945472 63700487 172990489 44929839 374684321 225456470 329508640 400034326 932494073 876588819 959441167 16945907 705316944 235115438 376658983 442771134 968130991 70308670 899281075 705846247 748556934 220002212 445413203 249022968 963705578 749956856 840649781 686017999 852431739 422281518 581392471 943109735 946818465 532951891 536410596 961176882 978301147 60686523 300443116 406120425 680593108 606094640 697521241 93352045 708081362 564856655 915594765 821273458 980781760 948591869 970741752 351516457 896132693 796802388 854864235 455520030 489309468 820530158 854826510 564721567 641743377 392436205 968254967 784053977 972647359 342430481 695061066 63844109 245857273 248507262 788608323 565199715 588271018 622604678 947418545 981593506 998082880 187613776 275802134 471911631 907492362 492444482 973039884 220054312 596876668 363795890 478809722 888305716 965035950 354302539 367807723 115303615 358489079 557177164 819181881 206435200 411677450 68958627 947611569 482070286 802709641 881194715 929376612 666694258 827448669 220351106 801500850 297028379 328122963 478079551 908954145 234041718 403656944 103634040 671672621 674533594 961575210 772266425 906651737 817596662 963356832 64929479 225597733 612407101 813606523 34318396 186499931 269302509 623920643 245504356 915337080 867356670 887562851 836802190 945605935 777702854 962832805 839974102 969038578 280474328 724439100 137950391 985048152 191225393 898903259 450099826 647089627 911773451 942780630 783072718 941406437 268020309 872916256 628370492 979723856 712887643 876038241 811744407 929419249 913306388 978962480 317205522 462593707 473857192 512278634 485120700 835537555 9564927 826766030 44962540 518850722 303410889 903147553 543321038 596077503 563010202 849918868 279754827 385955886 560579675 989778897 765153850 794779399 438926520 873488024 593653873 968098635 592417655 680197131 440963787 468845624 915931260 990885964 757381901 939900070 165249047 775291862 807965580 993862231 199884301 543253119 737718561 854818887 779383021 939011669 246576956 944117884 874525230 984045626 779714998 968868745 748685224 895284063 834040836 845494555 424074648 737646091 267407386 336368506 643852075 778491330 198512267 618211855 958109821 982975302 120042303 828181096 173380786 214921167 904707033 983146137 330247753 642725919 539649970 647293691 107785219 313015368 238975319 253157962 419879338 850590486 416548304 554578194 915584340 949157501 905791428 969568768 619504327 840693145 447516537 526152809 142019922 690824003 532618505 810112947 284229971 850671427 487588599 699552982 216563906 358472595 573848592 781887301 510357588 537594476 469404189 881578869 757329497 934638670 83807070 322332756 646230888 849658605 509755248 727081088 350925496 821914193 687111498 943546173 93326473 603467877 611433823 964789121 985158595 997697628 635832175 954265068 172451528 344208039 676271279 993206112 67280763 961061641 161111863 962997722 778794169 979776206 516148535 653659565 174861997 941197516 188244035 389408717 335374559 394696121 340216780 921857278 670144731 990376126 689350641 970623247 862476348 965671050 244827612 470899214 390185490 923153146 548417829 792071243 216626621 220402443 699355230 817033214 107351315 190967690 746527736 922139370 62247694 543621319 539039988 898821242 604104146 752102643 725513473 891066962 818875687 981563641 127951540 943854188 128245873 702112519 3105251 350702410 223770791 681325239 356611427 547197905 793182025 840704947 891773657 911062475 495965266 948747179 818375705 855716005 739740845 954446111 368750938 550867731 939053907 986629410 619833970 684644379 724043976 914488485 248434606 961682189 395638086 454688971 543188285 850760284 700321811 867019487 911881674 926700606 770449587 928195403 729495706 827572902 200295402 402605868 4381157 136939049 494006993 828312933 971705415 981245969 215129948 742104990 561213794 590119856 968885190 989514574 249696457 674490557 133841796 534564667 602077059 669420246 180180039 955996675 134262352 153605289 285896094 399982806 373793569 458569680 240343650 584252847 251089615 501622527 688348923 882033478 425188187 612918490 611465177 947758791 653020830 895111912 672330019 868191904 332706553 615474179 226472793 247549485 764916387 863656280 633707083 702372974 576625414 905287798 107533006 612947951 739480321 878974556 602369868 866621276 387484009 445355203 151288136 981555557 525655193 634384558 960036717 983947083 862751736 998438083 381438131 665199577 667314201 917951138 237245854 406769948 535111364 751877136 850501825 865641811 953473897 974260821 312369305 613880491 930919693 956846246 469359826 978074253 785298576 975670302 855372147 890406027 487767661 943336573 126104238 431150336 596838651 749192580 773580938 949426244 486128805 646432274 25233260 866060769 723897852 952245594 162644840 787979262 664959408 769429271 354749428 868578551 729684224 957390587 129994224 369392289 470459822 503921332 794277615 938945189 27815727 692717739 961187809 983093705 857224143 985799754 194631128 852018768 901103558 993357578 891764820 929931783 800564594 979251315 250571675 907828013 86918099 742353323 767315957 856428430 748663566 806007134 169866395 813247804 132813090 757005107 27275178 195035435 52067445 900766784 628524463 810160261 584623265 764986126 285374312 652126292 613021725 676658888 127230841 515020822 231419590 815460228 937056099 941289492 518700609 651015200 60909786 425064851 134905407 409725765 28753356 891040182 283665016 558795191 690051581 796523506 625421128 857640674 999362600 999369454 852900837 853208766 59275178 751060569 905471318 906930461 112586646 177677861 823971766 922960548 218456625 408168691 579090755 614620109 3247660 784621746 516170287 800564895 187616890 369343100 532225078 788922228 744950463 862570978 81477119 846831730 714163422 810000347 556291481 858113553 877524452 888095397 691610402 964244037 913632498 976675628 600744797 677651434 786104798 886864064 253677617 591903337 934569839 980086603 315618747 575494510 692580071 778170317 392563993 423223073 385516333 802395893 301490925 888913113 477968411 593068142 894665074 952258097 632141029 728470753 151109324 630321534 67512475 237088737 365601679 635635747 852340673 921564862 370360218 642872148 683312584 744450170 648099433 755336785 796874121 901781665 437651640 569560212 194451447 260563636 978604953 998288147 493631612 922054977 40122906 519285033 566138945 756471251 298558618 403636400 77316897 538062176 338385731 726112502 837330948 893446127 6492421 545279659 520073353 566296453 565939571 657333873 96856410 595762555 968994948 985860742 599585214 643243394 447170623 812541777 187177893 798411015 491642199 493203315 152784335 442598774 202217074 333624616 9409848 661126197 385491468 753868752 407245663 557281728 122716803 987514427 106058553 608080038 489965675 994631648 941242704 976015460 326936109 331323310 840992141 857494477 732424625 954535095 878723894 947035526 78000290 359954100 707901393 826858603 911990220 924646386 619606631 775544666 613139441 710507653 585117636 661542061 838844082 961768053 78260465 791521831 92435645 377180949 499441968 534284470 714415657 904503273 369314760 614773210 653503760 728757872 326347542 522326249 677130513 830527236 810709100 958809039 826525629 933071405 376896327 386511006 22265322 508377658 618814173 877122811 924953746 958456261 334796763 824644307 461403895 949519973 223392538 720781885 988995935 997882010 594341419 982258651 481301401 539522090 103791519 852926329 955520328 962006600 435667973 573272432 59089610 135879956 19463066 223223667 155309002 163388122 930310083 975814208 82040634 796979919 18336333 403537226 973211046 991151640 390432231 818660009 865662692 921913270 152864975 916131561 855570439 980353622 849560290 875073121 176084453 555139640 436502745 777145510 250723646 524351978 7356439 559362823 610508049 667898152 906491027 975810603 716249928 937655429 747606155 874688985 124148114 942289459 218285584 787344134 427176155 976805617 245242661 710443662 265085002 963521121 171178943 549471302 633865400 970548021 363299907 624616446 952483983 988974787 442222551 850283685 855042528 870516810 934231872 958258071 880028153 884086362 54620367 80669393 934220132 961244051 71981319 103056396 250033459 558675717 905277197 919584666 776437463 890351408 795797861 809726704 287378998 461789897 72212471 435243392 723895072 735171595 196733989 292433243 17595964 891266124 735724847 867130699 593407653 966383243 719489826 901255457 387064028 638677464 308856175 747140434 54701898 985748360 683406892 879970150 861571590 984917356 557721491 800788834 375944350 702625985 551482858 957959386 98005297 678863387 679713112 982593516 521361741 680740528 642880821 757881364 220286809 757293160 263430290 646738167 949757052 971693415 366445028 743027545 194363037 660568316 386116383 472640867 593249937 644000906 340418516 514006096 49777421 593499632 836740430 963551662 548702086 759008112 677270717 804853823 264226123 463798510 414318941 832017877 863490796 945967417 952494890 997047756 323804312 625020840 809150437 863271945 158912199 729544576 962918310 981940335 157741044 438944375 522851519 971965644 16111439 216874983 300020641 406939816 115360002 838055337 993290912 997978963 818257881 876689622 908563377 960382945 28143375 899688018 515031560 559313558 561648648 718411718 697867052 849002079 394709053 649693703 816038756 894391635 802308278 896324730 104874755 336726518 338394162 713478734 478790018 695100463 219305643 222610023 722171037 916758073 700012251 732183046 465288552 650940525 568511707 595217961 58888854 700789538 241589420 431276473 855668320 924757885 455773682 948438490 124447488 345817783 363118068 941560071 167512528 405146440 488513269 501177391 516116583 867588626 279075915 756905892 132794058 255680742 377095118 606412427 173957421 854383886 484080094 660533956 752885863 909828365 195869690 246743664 25349132 729848554 570827961 951425775 163568685 301509534 170618312 693835230 321626522 693409088 464681243 946949052 155113132 267181313 188027980 584501698 883277813 945227676 334020747 879672528 334131929 691141901 755869520 878890475 47942269 954369350 368000782 546052812 701388906 910424493 67984680 438606880 239058516 520937975 187101616 421487691 876198130 970267570 636599179 950690676 418054479 579884986 270583981 646399693 716725082 855781375 335415116 507803223 129795588 640402344 900742383 983048169 79506004 320358549 150303503 858671064 839532928 963582885 72177732 430212766 486704314 655225431 824665519 837891602 749189584 958637838 860968184 952206465 964972074 995336402 384385347 656462348 92519173 415718865 472765012 788746953 416631784 759308892 231124615 887180296 883932547 971440633 546636277 739089595 936181508 973359903 520804877 540638644 92634691 716249212 944222235 980910474 253673006 417813157 24444709 297259266 845468236 969793666 584335040 732792123 527835019 755846484 327569852 938195932 814558716 943482660 613075456 969672052 472043760 672860670 642304256 866515461 482804684 687510065 40012762 56912778 835261890 990541514 199047718 885698551 392139718 564230555 630792693 892662180 664043396 818799332 997853160 998198322 317283138 844048707 845794103 913227907 607466609 947318689 688340584 836557471 606432229 881829104 39364215 545053780 117368500 506612197 513791402 963060846 635814473 993222415 28946704 349549969 673601483 833538279 49996704 126560453 268636734 747463912 710386621 766704473 581653060 803968015 853764136 869366729 371790574 921380179 356778277 764592601 116890772 921630262 322866261 669453993 807482751 894067001 239416425 778311742 822290094 856004906 729619912 812331235 480657067 750034152 139057155 483503212 962560974 990534105 629666179 906743337 469218403 497373746 424174289 644778544 719765806 773692006 705854911 885789140 653876663 656275582 974264816 980182483 90327672 284717657 102379049 937363812 20254367 662967030 700586764 835241349 914729341 988784928 516471355 711138320 21084267 362456339 995089391 999275086 637370618 731821001 291164259 340449484 690893593 889114725 381036718 840487317 886387944 966031341 700494647 731911623 550428211 903942344 842455541 981261130 871620945 903621688 808119144 986119759 886614934 922754596 534969639 991888759 857491621 895712823 570697237 643875114 621744383 735643612 447276557 601804504 956128447 967493454 117184258 543160831 322709158 659735942 885117897 957826652 599842924 623914519 528963226 679077740 51696173 519386395 143748152 950698144 31702041 289482103 968924191 984254294 921489522 951731034 584068781 791218021 909264325 935399313 587718078 631690889 768668921 882114309 225635573 954330940 33860087 344557271 45267956 733991809 267406872 457700379 796043448 823280136 232804509 371079534 138802497 816291020 139300800 998375394 367483075 473760615 601045758 830325236 809474392 823739913 239968389 799493771 645519289 977462458 873263817 909066286 573038524 586834007 252481027 429943909 394168619 900690144 370478028 954850394 508906402 732921298 468599400 518403400 342203755 537488751 980986067 997475083 493363212 985394306 400497172 570023294 909924721 955642358 342576239 401347352 777890733 906776810 259390556 822917810 40029640 495631610 619374407 633102560 619266318 883044324 212139508 668938398 822433497 934353503 392409521 612241074 296040958 919246742 237981667 756602441 813715295 941098481 829975978 938736759 920134909 952438235 4432629 788317112 730466814 864913043 439834706 755489839 117506261 299709471 109862927 755355499 498591958 548551477 507644358 826967321 639419016 666386704 592837335 676024439 284235107 320196202 437767139 535025548 13694221 72390262 524424421 823297029 161471731 533353924 260427854 712620271 484378193 930027184 330769752 492812695 903076245 943129402 394164413 619471242 889334509 934366249 682045175 786067360 954836599 965093509 311990834 605502328 106884709 623225553 678508928 909687605 518282887 626692797 788482497 898226211 858098501 945308635 727043029 992934737 320666778 816959291 597869535 716392263 600793736 717663779 650466662 984582861 934819199 996335381 261204078 586942151 709217670 892909657 267177110 696178680 209717309 305704840 612642448 840590689 263984337 727901133 308931616 675732706 71275328 740800940 998066025 998139763 576139684 657221679 555576623 807222970 751455206 920845512 865742946 875091065 985721834 990723779 171281259 713025688 206616426 358509647 295729958 811382781 897805647 984354223 408294164 458639076 700455311 709966033 540546164 817507300 228407495 979859031 835449170 947031936 212935168 221644850 759981404 880743752 605793846 605928450 578710578 882788714 554680594 848774594 749264506 843745468 361470784 612292349 828262101 861292018 75836638 998374250 932384462 949838142 425282310 438275418 371723015 684593529 654948213 922237884 15618973 441556661 256486301 394695225 182514577 916281703 905930592 980277424 557334347 963301380 778850412 939604812 757341752 931934622 869255312 960839794 440571534 754801407 490115160 817750403 692272648 736964583 956304306 977853112 455499561 968345993 261468125 786004480 305548968 789147489 524349041 797532242 978034237 983588430 431887421 852626114 310926762 603990391 984630609 984804263 175499058 950238952 160601183 160939895 408773893 620197544 160867579 922385530 237825066 899851850 350554861 525692526 136296989 258010584 4163405 630069212 763293895 911894386 292437548 489891454 354333800 962416052 411094452 923297789 719669052 878018052 200918617 272276108 131362460 939027466 10497369 853632482 967099123 969428496 103219159 426202268 124839194 454512382 541036766 971983509 645628810 661641438 470025856 676249707 417671490 456688896 383742559 722219414 743581419 766438030 84572586 940929162 997400760 998817995 131499777 206824127 878893599 904302696 863888156 948758768 905970911 955541631 684666948 720075441 497952925 675192047 123163220 327107857 615443637 751894698 154707469 405015086 908647823 992898908 576523348 711706764 199880422 387074462 529130442 589754804 228261531 503089898 161047546 430634316 630509747 631982929 191068816 793966440 286976274 322841300 225528208 448096407 101232743 566467525 534335079 785641780 261602781 312121769 714862424 952681023 248548732 939547160 898597890 933846587 273627182 500909478 96722125 835216251 275609331 720901019 614032106 801742942 450869371 960389549 431839809 542829541 328538442 888766775 977437081 988196189 848295053 993309236 808669286 852303104 375733402 960352187 664704238 759938985 449097532 908187756 863411621 991441530 144617076 749618547 583748409 729405021 610101442 913933651 651144463 879337046 181593399 205057969 886443346 928007948 38447479 821597332 152529831 468170329 4881800 20098185 758247197 848210102 388637411 736506722 597795991 874263198 330857772 374619515 226327920 735806976 491810335 991318849 877475598 980622062 892284498 902490081 925862947 966716676 842283078 845536610 775211835 808282422 262366258 847971825 429168709 675113497 219562609 326641805 687743644 988689146 602979734 731021729 124520323 685463173 254378411 973788431 900276215 932978707 81207848 245636910 816006487 903754332 166366573 381371473 276225445 635933712 851039524 894372526 731731640 814190832 625075363 682037709 945846286 968393862 692170354 823221064 848789760 860830638 468670803 789353490 833751395 916896183 479139140 714619805 492299104 607894095 448585601 779283269 277133618 473648539 173349602 869820086 517171232 706941795 254990886 299965085 77507934 844118150 28697554 55617650 674605488 998991204 7143892 652487300 324313128 490751864 658000733 738720785 225258449 536977209 970461120 987165235 675012152 839080771 177526190 689942925 178165980 654510466 891102952 917679031 730234288 775868523 117320328 230380097 606915370 825823338 866597460 946092492 186332250 542971615 987456991 988730488 942370620 983557057 863343166 920498310 231676570 727188564 906720846 969299576 697840422 932686857 218446305 896711621 831294787 901484485 67871239 316278357 593842275 838060715 920017885 966646189 396029619 781581464 400162354 799946421 899660349 921202074 84036571 919821033 256165552 937179379 451343831 873973761 767021817 909308705 893720774 946938001 763747883 906956551 307790603 836606703 318245174 347622877 441765561 915517370 572094705 986095858 996816363 998119015 716441957 971406759 872326480 951573923 574513115 917921121 103472447 355864556 494245379 937003290 389354529 808135461 736226294 983283010 972635897 983097020 367134916 534255336 333138005 366013879 749108958 780334842 730650919 958552709 888250523 937872516 230237206 576413502 216124740 406260980 308747187 418417630 326496271 781502422 368791662 395082048 906119400 968134049 51624695 406563039 792158654 874158679 779408345 890204899 498231550 565454625 847266968 924000823 104778280 906927102 838179472 881598989 895198506 989624366 661436729 758054565 143390604 719464031 690646285 886443888 952563373 982470277 346723117 425707447 672059455 904021203 61715769 880045530 445624986 714859837 50494102 132318338 138647314 972923564 130340545 178243518 3319847 590857154 281671142 515396654 786728164 793284829 861571888 909204147 654828581 776058958 141812245 601336313 688095573 779940270 752522381 901085454 385190318 816895097 413078496 604572577 395083151 425987428 817921437 847605091 350212446 380318311 154487306 695058760 63890240 899477956 708044792 790559290 498511517 749051103 154210203 880537764 300279462 423204614 283994712 565293092 887078323 908360536 835194185 918583577 724825161 892214612 444410577 910406192 450962249 717813749 295697358 818372094 877116663 978246738 502152208 509534897 690351816 776071016 301878334 456023885 278097100 765603668 901668246 950669496 146029728 361226812 930479406 954057959 103231122 753850201 866044543 917308185 947265907 948116325 327875703 961222966 335311768 446415177 325210886 964453841 126964646 243348987 95568602 200312655 159564819 877807678 156971794 423876920 766681617 832763413 617476521 918661973 515383268 836796057 568180228 770867393 719399615 893368467 876790846 922529706 924881091 981471401 188132168 381795321 94753300 198656160 174102340 305322714 395097653 546926689 894762378 954329079 527090940 573258598 433560880 961591052 536458257 894911657 810519878 843550251 145016970 949953600 554154542 569948163 956306932 988198828 783196737 954971319 968187613 973644772 595853332 907441311 206466670 751360566 517435164 672012410 46682066 178885892 560495098 935206048 896444747 964335348 717824069 959461280 337517082 902912322 362716701 967114955 661356725 803143492 821055517 822777334 361799609 673042246 312376259 927287731 653810474 759959144 594686596 803443713 478754848 818341151 612853995 773862921 322852498 964936345 998078173 998764159 389294377 398828832 451506930 568744094 603830530 925731952 624377543 742586066 129356334 518118882 646039489 697214026 56577396 372880988 320725992 487038460 82936947 577040682 154798844 195752810 552126640 612025104 732567173 764912860 223366014 572887155 175837358 994668619 208474666 770989183 219378173 820178871 500385194 849847847 667492633 757402215 213924004 948517847 936864033 959069766 46674748 755809363 46197681 175473882 261685912 585878262 16740823 376534221 265143495 356972935 485837790 926470614 881612189 903746948 650789039 995343593 898614375 990088070 913405280 938960774 574042941 651585052 805984178 840370674 594268214 885952023 276606764 420967072 602381006 890107242 447796215 953064572 536656785 618893907 371877291 847198860 976445269 996041019 359310303 453110518 798447966 877406457 208890574 432341054 404083664 649593650 214081251 373301067 415242002 978785842 755464415 769348438 359317332 486461318 505177725 660374852 716757354 735636652 455670370 828735268 465514660 785916709 69011677 253813368 508414872 708736788 635502441 962686926 573802887 608194864 817362257 826267394 948789052 993709053 118937417 504292364 98772783 324704280 178442808 505288134 948758356 951639160 548252631 738643738 309798142 528798278 953377022 998759620 394751072 963811611 843544310 965706731 347653917 787380000 761816798 802468482 578563517 621745581 206587298 569873372 44576091 963617293 974334855 989384827 642788512 770453006 357446174 542651184 229908631 898436311 476228535 982170270 114946799 348446694 245523988 773698446 128853660 192988414 520508937 880860858 939524125 967345814 195917808 950080041 512089798 555954158 74141818 133365122 869250028 923835359 49499908 418259388 402316277 746209280 450416972 792938814 619323554 781063711 3577928 477876557 54211034 303578348 962278811 965266707 105664273 144818641 943230424 972254655 523515395 792802733 767518915 782186982 34146750 826108546 452071475 728629192 657436510 970319770 818316708 825385545 397128808 627857268 992368532 994178112 294377654 848080769 877949582 911794910 550527552 939999390 134612775 530356473 326564791 687303951 249445085 449352057 71520497 389571699 287205984 370386973 586715076 780276340 662193628 882607467 608841017 657331789 431089580 672031688 945936625 995215501 961542625 969413785 625547712 819066871 860846509 963989762 998027158 998368027 420151522 654854532 551160914 652089270 10259836 930478771 461903569 660654832 461205350 668667217 733231696 854830030 271446401 549986621 321265722 579420509 69412229 251921778 179804535 688804556 50196096 941648552 860062236 985179310 786598824 836240362 945658670 965522257 879209508 884600800 671036374 875293099 81838577 268875502 31420540 86439857 113452753 839050956 87691860 736437314 999124048 999219786 588215227 862935051 409169122 918689405 115880733 656862846 627255529 824875308 165520106 339636805 85172833 799196384 349833912 456572959 295187922 392343279 832846010 920433537 659103189 659525205 849579625 992883057 272419707 496116309 5523261 751947485 440553891 650449353 517620905 790167273 570971631 991165869 326285679 404939340 285779570 988705043 829345395 944533903 188111885 571014836 994413908 995493038 598424944 743458087 929431961 962237642 495343043 502023502 547652314 803469483 604424717 614752542 125797350 251736338 777722844 919993532 150110166 940285247 248898607 809870030 957810742 989918562 296652356 791629391 688406327 994195577 553677748 639272568 440776911 773704709 336069434 763602604 496828891 707964534 531918947 927123596 24096495 629443026 752603602 834366070 522972519 952048494 189715383 298651966 923915637 973249706 437169637 956911818 914924658 985276995 683849912 718679033 837788773 857209103 926466021 995598297 566637474 948123460 247422966 560194736 389815586 755925005 653079999 842506328 680909254 966855660 65806191 101829422 882555064 909588571 787168347 903192453 1224683 878646688 533091094 846336273 856106917 914228502 317197316 839647874 935640341 973389780 81514804 291268113 126873760 640596327 19749566 392763871 518409092 647007916 327635333 757965958 595162233 997697962 856102888 980364066 480295053 549700631 637567727 864948535 624850451 821622268 522083560 737933760 690382961 792876367 880403520 975580119 851987723 902233690 441472105 728327588 817192949 950641152 940366472 999036880 167528358 402007853 138877511 193441521 834023033 997173612 945499602 988070571 503037410 944032978 616101150 697488533 897279125 920994471 825078843 891068389 15568293 155232234 507942794 800207637 887577270 991816915 541959671 561079874 995814957 996719353 266533591 699569890 362703914 451410399 515731306 523327936 804021805 950098156 797912003 911970607 866699579 876074332 354419804 734632287 804664935 967944068 963075119 986886301 488416494 976341069 838195306 952166263 525142848 770668683 213763125 776209946 304902652 672128174 872027496 901376503 116520218 750533990 709681857 851258764 254585944 473981428 437477942 820537225 56140960 195250191 907135980 984425338 422116100 507615138 55662492 883403376 307631043 871463852 511690759 770219198 239441040 548379328 810694033 979157876 966966598 968204765 176142051 532863428 538977070 647209689 103363189 468283731 324857477 698847022 178805866 590036418 787754862 960316752 474091877 644206826 10353581 414258572 776798572 954443749 838085598 875584017 89700698 920511585 509922651 705909561 522999551 847821245 934778663 998922323 150942801 597288947 777799267 928613146 63932903 552270487 424371852 930195495 868046993 959508052 860664382 944498817 885451053 893819612 831009753 855169779 321438447 789358996 627836563 629032203 998365501 999219111 130093503 461134726 750391680 874760126 155421726 943631874 411795315 550540243 568292501 971099600 163634914 620444420 394138133 700591194 55539192 962412442 683473249 961250956 243972024 604559769 55025449 107293983 178168088 744896659 995966032 998724586 391740010 654371596 484258873 716082080 951708410 953184405 608671848 856545355 24764262 503011584 506589260 956160561 538946958 821620517 767123082 892544975 700663857 912376190 927219663 966598754 209226629 646160650 130726268 866912779 294478746 362894912 541349823 668619114 102731251 976841411 798027585 976082598 400593245 917327644 769267393 787035097 930714843 950425534 50239483 815645452 956746619 973464073 473154303 531622224 74287465 447179844 497936595 858019777 936106667 975442968 389558909 436855455 715368033 846039466 559521153 577340314 95103439 364390328 726781405 815011406 834876684 936784972 795948950 871315560 981198629 983298720 500419862 677726080 616907557 969655144 94879266 684478160 325616514 894441840 274296195 845490682 584801079 984732754 535471539 859439490 13586444 830498113 395579916 613608649 496041217 973670549 260839236 411655520 276250723 607576990 597510447 907128255 681217080 978286622 200345765 702815847 67942977 194183431 100132541 516587801 960356356 963819843 319069212 912462221 501774518 772434571 917478338 924401193 960851822 976873362 332624849 864134665 274873801 539835139 554306339 814109097 217552346 890861617 442819730 920413053 404772719 994377861 776741795 961238303 464613743 813655351 495079792 853839997 71492947 746009164 80615495 537618164 93727532 941239575 65329127 229618282 837670809 992422618 743056434 821121187 813732228 837433774 565279999 608700844 981116412 994962355 596961097 925051788 785732200 903303120 58437776 424663069 322416724 970076313 945994190 955066724 280567462 948164760 142314385 423801532 558304111 980283313 273657461 922395481 726021235 860474829 850581593 873650488 99820190 340349600 149690102 975948560 499346955 993052053 905686220 919334640 632757234 902468337 12643018 486147188 403338686 919493332 19044229 717643129 334261256 605971990 745751792 857866621 963907644 992995718 526775203 565265532 952854615 961612526 147368778 463404398 66925099 695002686 315852871 424787088 166282550 574164420 371301259 490463183 478717446 732609764 775028642 899660000 56037236 595829200 795391830 959473534 46810718 734153088 679980857 867542057 348999686 976022033 421908563 970437955 320440730 859255908 983076242 983711701 13359343 953609937 488052004 754668428 856197698 969181233 546986663 771553549 937324082 977348365 6555046 169909494 608134412 895523643 281431952 676481385 850843946 856963143 264654343 898992601 666959514 960383622 567291807 964857451 882565016 974848559 427266327 622603281 723898817 832548441 772954682 838500408 594775139 648936641 186486483 368714857 662667690 863965936 362694519 562561406 824747328 973410433 289638575 806861924 846571465 874457438 28936498 840414880 925928778 977408807 247391240 248632080 234646592 370430749 247153846 725919779 45273880 809136084 655768233 937585663 931515334 974006775 181454109 602965286 706332905 711340657 180932694 707647347 195163968 470520588 842924674 920895844 73300620 454082633 322648277 407376253 725709699 773176998 96932121 664432373 786315110 803754548 174892274 591868942 465949189 739763323 122872086 284816586 99400832 496704063 405521925 411612846 576719513 911086454 763513805 966557660 684978713 976762177 423410474 867856011 133477903 400501263 896224164 928055573 261426282 310501566 648912663 868055619 635262449 749304309 902498206 903254891 347080741 518738924 299042127 353674962 589301038 634769662 76825663 251415374 437600823 789291045 250283151 470159350 659932760 871387684 948854435 966102894 317709269 531275931 519804267 590842608 44807909 843913249 34654256 339722328 499740858 963894425 635084510 744788383 399355476 596688410 64611339 280991542 533231625 645892373 604032186 893629075 404694098 682810358 588312683 850114991 261863420 562325825 588794130 771824779 402798207 628858723 741259985 774697120 671735463 878297366 508289489 657044586 460087337 758369074 993233612 998860128 479085290 634831536 951248564 982127433 884924480 888685875 886015327 991151157 309426171 595349150 763756279 836752523 798301754 905615728 56319736 936580246 876646084 973167651 539096233 540999004 861055109 964225518 677123636 857450762 735051798 980167906 31551501 77577598 319815217 798467145 981809834 989386972 383327421 398221130 211959574 794247366 690644838 805073319 799281968 809237855 263614 326980734 673062394 867844768 699428250 814814617 777794363 796211316 863752873 905652171 45675078 416747569 705949303 976140916 611890928 630723566 487752292 722620358 805348949 990435893 350027453 541644349 16518696 900363426 279448877 871545581 345300889 947865497 915424665 934459994 492307923 990652313 433465551 799108851 770661680 963150353 360319599 388510658 447928230 853873070 223789975 767778131 668059298 798433679 410711100 576302075 793003104 822472743 147412535 972887783 875342298 904862265 381947273 821799806 453597932 872264828 697494436 943692872 596819136 931055569 548719322 617418419 13248729 398424168 52335404 617367270 410179825 941466853 374274643 897550653 668825517 800104353 712365830 925445346 423669973 808304141 937142091 955037685 406133151 878601481 239186414 441988201 153370712 427710378 258692220 773434614 726776961 894018730 784167900 813650606 616494345 802717693 288839626 866546843 239076622 500804249 223016408 960216626 336550808 986156091 248850630 873628475 334606101 479673872 113616746 592369933 532687652 687502328 198674461 677184374 360485856 438218447 327854598 493728850 398657131 402466575 592922767 622804881 304233063 888684625 531632431 984868318 866121283 991415675 854239562 894837966 450925167 974754447 981912116 993812601 733815896 873539797 359009548 587897693 917849922 927590208 835752254 861473061 690607254 953073813 441305649 840956007 820794398 933307313 312587259 511117788 484374908 571316624 74555737 255122604 779026754 816024608 649797023 977360224 720593773 835216888 764047635 927758833 948682238 966947968 429152826 667403383 450486023 472623124 797225342 883297687 707479427 709356844 177190896 817408081 142335627 849789958 880596171 899589377 644049528 686722765 34110141 521726692 66675461 351464371 426767217 709422696 870083849 924443328 453574634 713655371 794721069 820683407 990327460 992649857 972406442 986676360 554186356 745896989 387058925 833277523 460005746 822562855 759178701 769400017 664488744 875524774 387835259 468694398 642842104 678056659 48835726 956690351 804503841 950873754 629649374 657611869 956709337 992559654 623292153 976184198 425599118 582754222 604257852 861598191 640490210 871091900 745865677 756663395 368265925 453845920 217962165 361258840 404823666 486640275 145881564 430961850 108661032 165531371 158912157 639877071 621890608 813867446 375014712 508016137 477032086 674926281 179854706 642263739 240727816 695328910 592227476 812810621 742536343 833682233 726342308 980532811 414599065 532232293 639879286 762336641 536965131 919409335 689039381 981318918 672392806 714826040 859704085 958973699 293751199 751048706 659081855 943316448 760534084 982595631 703330692 814965196 806260287 817490211 931362504 969453745 534228531 895719317 381080290 536965504 78954726 557323902 954059464 976630198 771370146 783151992 250529641 870030562 496733306 911892178 748088045 900000535 355660485 834938794 362107344 604922024 183592574 519605851 149929019 849557673 779667437 868128851 517732298 883537698 17616027 915973046 700616539 853928494 473999530 757799576 36456455 627480407 380833553 737336425 273554971 693281283 977949205 992310158 733031331 868318856 734561133 972368756 361650011 392435970 126016061 784509232 836970013 878629672 133179329 885793713 90255556 725699106 401609354 755509481 843658905 861547704 849825828 952649416 101460209 810240653 63148665 659027961 53623166 908822077 771097567 832749013 783503079 957146880 132781692 483966592 265329241 495522521 193492447 586017558 327340076 350452497 404688385 636592177 754461454 967283731 515995663 858339660 77290301 463279789 568427232 665232342 948894118 999386928 781651339 894221534 175474092 945674008 807024313 814388861 106129196 164593465 211127579 590877256 109708384 819955568 346375991 904628565 676413990 949795982 652128123 799906283 459745750 589401988 363812636 741467517 314468378 841413636 802332671 823236997 34657409 971608652 116259809 558968596 918466521 955663737 249508253 603607704 423254834 814795201 341940685 614148615 543313873 954040963 576302084 949116971 805369847 910215155 76868134 604825894 896355163 955463704 293023195 314108595 881937295 961846900 418031593 729651339 718601309 849191261 889705315 937393737 603306617 975084937 612463395 630959057 436948298 617947480 634381167 883185745 675063179 920842878 464296260 952760486 643084490 993658056 548443498 752607319 191176379 938417471 805547641 903733962 711140751 719449764 166004018 224761762 528840634 552902296 3885640 791810557 970660341 981708541 390958229 865762392 113418684 980686641 695804058 730377055 182053979 848440697 102214551 110917961 275747786 771276028 99608081 261379561 962921929 996069394 655137018 829198225 427191704 748771389 203559157 522087415 534087831 643931771 827230869 966561230 146054473 758565259 882167387 973533109 525309731 698812481 961698964 964813736 749899121 911489984 946083089 984649404 3036332 503654366 921902626 975411873 711376485 799029519 755333925 920774375 286508337 918937341 39615751 565438979 88351171 932703856 267912405 428156193 327138510 562340920 296414876 713045471 667081584 690402587 30357320 597944675 760361623 820370345 613708480 763065210 271048970 967889304 464278435 640974573 666535490 963387173 99613703 792893756 612854332 957230420 995492342 999391462 278030726 360494911 590669191 925938705 774427169 962759980 41263740 770811538 390960488 814467240 276821106 709690821 322500966 658564131 380254816 690531041 405978498 772050950 879903505 933781010 567585174 935242492 958913822 965148270 923764578 978831262 845234669 885082627 985089645 998002148 690786256 755151055 816227997 937167646 51520781 545170437 853872503 961921472 494791840 580533368 281046559 313814509 986192223 992147915 653939119 687005558 293684130 895559565 59323888 180184128 452686329 513865687 287467120 298996500 96691272 389123975 638335839 742324972 799231927 860390547 769017306 993268385 984585285 985734020 444184805 764705152 617944019 918897850 958407765 965775183 369596969 858509648 353430579 786364902 29640580 928483711 553910261 746256406 714490728 863049541 374001215 610625077 275914128 708080282 536260739 803841655 696994787 726934639 410936235 646594406 669778792 786642520 541411461 543270863 521496649 755448707 910443115 951284652 201885111 669211118 5565078 859512593 545395620 856515332 116294391 570761378 802902486 813773048 421218473 933708909 222623481 456807684 360705607 463509076 958110499 993853430 398290362 603762928 600775573 892487717 96216892 132376052 720998870 898737957 170373251 990258569 195152263 979206717 142771157 751006838 277837869 918090308 281227069 998724049 891666271 976669024 273721888 859659620 320410248 670340932 913260145 976483450 25566365 540117834 447627374 814142908 758450234 869397951 757653653 974348825 211749748 595724818 533262235 805624036 366743568 451431462 156299224 595882505 869836394 952400386 60018547 249902637 638791811 775873651 715604761 914604427 163920795 289784203 289830486 414660396 693190572 828971562 594513226 805876432 931441154 951220906 614521808 653980009 370224414 967197801 90195208 888950555 411237712 725092534 845257193 964073793 308870119 836693869 147436870 317251080 611636948 915521606 156278228 981485420 685909607 812254318 725603827 961699329 333012472 856929795 769518715 870410103 167511173 503437375 225246379 580477628 96560783 402422418 752592277 868767605 439638165 911942696 257590264 977139024 810123110 962580242 620673262 850696503 172160096 844381831 619802426 633417149 619755142 743906010 834977719 881540928 158793957 335053951 374484551 796731670 659918552 889142334 212642190 773315794 724368077 865236129 811629240 842603932 20146985 614521902 915036483 915103683 589249047 678042517 473053511 511373714 284782916 894761688 563497281 958414420 405072468 553254601 472756639 557265916 606653592 805962926 649197764 719410798 105056009 959182744 381446500 902132718 112136811 518602588 500037148 850948469 973752606 983766377 704290539 742830070 574541434 821140948 564300271 707812360 859095379 921354434 55385511 672180435 165554301 988208602 118676036 247637679 355329698 565406080 115465369 720304631 799560337 923604263 90961681 832341904 796328459 909623030 939945758 974799508 678936988 797697614 836036344 896596811 976965342 991942244 402854086 702323177 173132889 507207680 738292748 868182147 182409893 753527823 957014790 987764513 184707599 418522502 111554658 883720284 297752741 699551750 254912584 274066133 960337079 968029110 861118086 953736718 927909773 953162682 353996107 464959480 160829780 509801933 352087697 708130616 194337407 506580526 880483332 936300902 591391441 598950140 829075767 854719049 114206623 913725289 368324047 517077074 872883156 923193432 261498215 479960097 239120065 405137039 814836345 819567459 378631143 384547314 11720851 817718543 866277646 962101392 805122145 964380409 392825330 599899315 560103754 744906601 129937701 171582554 673642495 727430274 593810479 825097567 2395031 16821948 850114728 881770186 573929129 772108957 953708686 973361354 642412944 822617799 186061069 770181829 8819887 236268439 551551304 756826896 602729051 702216639 312690033 452139342 368289026 767977370 330868890 804439631 769905022 979123720 368477857 567946445 144292256 936492284 67508885 978997259 780086177 807766463 187887873 757803885 99524297 784509496 623752528 697284981 797602065 844234114 42549927 906403283 734614673 965580527 245888194 647705748 219799801 963109112 991374689 993262628 953924376 987778094 386745497 972667408 939017068 965725431 739634170 749711212 305377334 329997024 249820009 775982619 429603106 600032876 497116707 518693834 858282514 926140110 818682586 820015534 192503169 670250625 816537609 942506867 84252668 297999203 525173766 950963112 180781758 422641241 782402472 883837033 674748730 783183972 453011612 853900088 725875474 841878653 62199613 731363673 141456492 935283536 782594707 872529087 390579331 733552091 777015889 844824128 745353486 832785118 454278690 742192075 183510233 494499005 834338853 911748992 312802535 469186090 254173707 947936172 795311811 820642553 844619476 963574077 494806889 933692360 198512731 811535389 465098539 698626700 817551818 897132917 158538931 751385491 686371952 717619753 485462038 958296706 387379195 796966296 957509247 983356421 552060264 676146906 857117885 962016123 618742564 748899330 294466636 397740959 698060946 746373986 959175361 965597549 481208591 525217152 256870089 656753081 901524022 920021333 86696683 360655058 309222030 683764844 749042399 974877234 945159565 959452656 527682415 563378752 186207301 394536595 750784308 920956710 757238906 908033532 413207825 533716827 961131167 977427008 468362704 967576286 507898850 944981385 501756800 537383268 453187453 738432871 427068234 616140272 769576947 892671727 26368606 198439403 197485884 776553148 643496012 887293707 338255224 370446109 419860113 783749837 889275641 902984093 817391623 919373623 157490652 721350892 984782045 995039149 342387791 623134524 425296840 911310945 763180547 907064154 504152711 742235295 490178940 928266042 660197411 958780716 822589629 848377332 948376650 950961130 911520681 963745446 101209900 339017070 571872082 666076463 549013459 837875255 748974024 899146069 333848329 772791448 529569458 758751887 665682629 785487154 603508788 907285222 226792596 871813842 132530071 221530317 354743176 882081252 712163799 924153029 22804581 546224926 182736918 371907202 360558435 697746013 654459846 867975071 588546018 987845441 847070233 957789109 135787996 927789122 132601539 209300169 734152733 955299966 622602185 630386535 734893025 929987878 580532270 722390812 976253905 990342314 173266971 543031835 819515622 869227347 383961230 692710202 24005815 230535559 615909254 681474727 327497290 401805907 488317542 905089915 978626224 983376850 384447545 586609462 782737560 944702879 6874541 656425862 734124632 957334794 783911893 834408351 335737864 767709998 408456398 980757898 14341777 114185281 623856844 834015089 792551573 805612975 610380600 684160038 894580533 964451104 488985569 647447564 623859582 696797711 43572144 333290931 527911283 775043180 661284350 816888895 15756658 199738674 47018347 789356795 63121032 865435721 138249838 400265128 134358282 638496021 366050868 546581364 903395949 915193103 176094452 214317230 875311783 875555770 820620052 888427803 787376858 973221889 464220904 479290920 72002970 859093053 796698064 992754814 545157686 827611512 900727766 950708980 256014682 774562685 201775144 656211247 375542214 878451245 971878114 978145164 382735238 495582912 812308798 831531164 503568267 507210518 677824374 928587168 183033871 602875345 619574181 900160604 1624497 133388113 953367172 983094170 134039169 364704053 340128605 633659780 86209000 354013271 521530134 570277839 628177561 772228203 190062591 887274032 628861539 712030435 236984356 932066584 32283483 400365438 620798002 937864031 102509619 193330714 265868532 434961415 544072291 684222943 835103496 961586014 702997223 973647045 437785113 488140214 498491071 848488508 601110331 858999445 649163552 871277100 434384533 635213276 120210723 642826485 165121718 850457617 261143624 705348818 744629769 992284049 826705974 967497882 548704748 596660736 677713627 728832205 906087118 933573193 889909552 913573040 640675982 920435510 120661523 851289692 837237212 849467589 296986913 734469627 866541472 917539911 548430408 734656473 844530566 975119635 458403170 668102203 571231481 781355734 279892156 627156426 837803182 899174824 736883533 867294406 890460329 942395533 188878270 510911776 24963005 191978250 428566221 432252323 958426633 993431241 17885712 319358679 455964041 833851565 759310865 838730940 155566688 986614409 150459619 303914964 369270934 797978756 116356724 869818807 89961521 243751625 910707986 956452038 740021495 750787882 170625753 304571623 735122642 950909547 48046639 300811156 816786769 882369084 261591548 876593797 549436952 747484361 950291237 985916004 708159022 878323384 737363450 829226706 225348905 991684701 58590522 803602387 647318918 719134684 557321670 698842679 747306950 961443383 26767040 338916752 451035988 456471942 298471257 458294386 94545929 818630360 714000102 750586144 926145286 985537412 332580462 778622250 825447107 902419024 93558599 873034393 617294742 795941894 755734562 817911929 235816874 720843208 732209253 864888605 282641130 539713027 92776099 120597567 303348547 598725953 14014701 549465909 659144336 941260962 720039756 890327791 94481622 164321815 931524717 979736141 428480024 954970907 59467368 323500706 488959737 944596572 316783426 963995756 830348341 989894156 752061312 823235534 584897632 635617448 128569345 822011576 859830633 908377266 890275634 965745935 616073858 994565565 260800227 743161408 305157574 892184220 522809788 597834718 339634295 660355839 873830136 940894816 768004684 941059983 843859154 936785558 131861900 313080962 499967067 725878003 938098750 953688543 474406258 518919198 199343765 526054948 829052843 846803922 375222217 448160489 474181973 955954067 897296154 943521777 631901406 995198598 775383926 848503646 14725894 421623202 40362226 236185501 749286096 861960871 789649597 985337545 351446524 698283972 548261225 647846474 677359629 715345655 129923949 908399835 248690162 674514653 196787554 426176951 505245240 552890379 581282777 711238471 268003095 534174935 176010355 736453404 707610578 914173360 182175970 426935268 574917429 861179022 951072402 980044885 614522104 739369354 888988024 908558593 808573748 912560412 171648726 593803252 371302546 503223913 118107835 881473384 228184597 609693020 304896956 684157773 532387544 867565600 372588550 811487203 564884093 697298008 222163924 812635048 659261602 820067255 747183064 957707012 849826251 941596345 462840844 513835930 434071359 581495613 307141901 506762355 675356463 784458908 788999020 802342247 534114439 736205536 570457591 899579209 152587261 365756885 574177593 670842935 791436041 880380385 286206513 988302779 701474453 827044238 98925002 951671681 85983159 598471541 846297098 847358478 667083612 903559448 46662071 150641927 84033258 265267056 844171846 866639029 10353680 528161826 33100559 837108302 137038830 431733654 517734765 627887517 667881402 679389761 125206187 653993659 30695436 950962042 15790958 248809698 479189040 664319990 953294281 987063243 413334507 970021803 975929975 982037512 346968184 790882868 202745959 569106122 230935927 569224550 589179896 732631635 677562276 979703253 987587659 988327534 469166542 948801921 524655933 600428512 916816160 917718328 93144799 667614935 219086321 955970710 21007461 705765612 688725267 835629126 485206833 631897566 380967596 742034332 176240155 940835795 425878257 702875663 88646074 460669193 63218867 981041194 647828662 790309241 331725971 579195199 367493401 824458634 473174927 912695856 856797459 883102972 800287096 992150168 666516652 688181924 228226143 447045430 842939759 938344796 197009390 350831481 672551307 751326305 152853147 988141144 198744480 202606678 567695027 678556162 531039360 993312028 346460161 714068681 535422965 981470550 747528294 894826813 456442417 468141383 204471526 350598295 203403729 974654093 822808913 972726329 895742943 956621683 191404914 452552205 856118894 930540851 117221879 129178867 825065582 886719428 350811157 500397397 8797075 563168721 191162425 672904919 432146907 544176620 7926163 164279691 98124237 342342303 527323824 676236682 675541574 792062609 361625857 742639158 524692231 836522528 360921922 550574244 847573874 947020217 949225951 976961104 208890380 488933690 603001847 897030272 349759764 413152280 16168961 640969336 457810413 657154945 30063691 195109493 924519093 987086659 711415195 888201270 848040221 969242410 754698473 904254533 289171082 603603894 706262953 805835385 506126315 782850710 527926279 717190621 565972066 844514284 328418880 940043676 704898288 886453125 421166829 972465501 961954299 977117043 26324626 101413702 263333822 739297446 31160643 182553453 415666763 469552234 27924871 292665716 964109830 978203718 659019752 915742844 795834251 960911905 576159113 643245940 680453649 775222327 838270105 936466622 864600093 971845079 739552268 986384695 819825581 849838421 664597655 899864639 884453384 989640129 416187635 747080206 698520024 974462446 542886238 593733262 937093 322511701 26939640 103369870 158222776 931903771 420379172 643495944 994395519 998496539 478807384 548818531 524756516 672648779 478699410 924998951 784141429 831356930 723368925 759062575 915599903 932699927 850416583 983838962 914605565 966542847 444189915 594587241 767821495 770116320 156474385 360885172 494906478 753155801 928518514 942208728 733948943 881241357 518490374 712278183 505605840 528579570 70982082 279090596 153595444 649676569 209121463 246120118 319379758 753410650 97677526 583384968 935140444 961573400 359015716 765460318 397819134 980891822 606267931 633259433 362918973 468677228 545210768 929255462 299946878 730955651 314705295 995877557 304102919 429327878 351196346 450511127 552698647 707016680 153441997 356994405 924685395 949127526 438357738 517366721 748317528 771540761 512208414 566977359 488184609 598016489 960740419 990351144 767666369 784925597 879050150 908531243 335340215 451586399 479411001 718605980 474407038 668062148 414495652 456675932 733834168 852484957 688725162 760636060 428124586 720061672 662063653 871098174 285071679 922254451 232381553 957238158 525359735 634533494 220155910 890712383 53909433 339436678 109442723 710693559 868824542 967227561 600162721 906199383 608405878 708449061 690978506 823048242 292547467 451320379 219249671 578219425 244003229 455449423 134440695 745059871 674239552 842000082 137107428 579267099 226062977 551855159 941625026 950512201 865616326 882282552 299016704 917973298 496181090 658154054 875327976 896545698 8952731 550504298 797828982 817602531 65619317 465609251 19861452 844174159 215705233 948927238 864728333 878816552 681091438 778122173 974326312 996930842 292969105 339034332 530129410 917215990 424163221 973023098 902233672 955585629 566105433 961371079 424192543 445431138 775671348 787601431 946819081 970053529 770416115 791745984 368851407 501561041 762496156 823140142 811831575 933659515 168392235 915077817 523920573 981270345 163075562 776455291 602048523 806450273 744883510 986760851 593922314 797623014 519433860 848696426 13051262 920335336 931120124 981092373 584350050 671307369 521001940 672554181 70254428 924616624 543381684 731805992 24727041 975441306 686064830 852970270 982731645 997554436 710185137 866756853 406197354 425772615 618447740 755674025 684903838 871224417 97657340 678484109 584519926 605311260 723062531 756077422 629793447 636245505 556299249 993413137 888303269 961903702 292022925 383254001 174607907 695694357 133927368 438840490 510426455 933798972 469916587 910050234 474502557 908298161 913738783 966004093 188219207 880190790 965095738 971424247 280014985 712144929 353918445 694046073 429150402 867213552 721396479 913944465 999081571 999185268 827196205 904827421 666405323 946228351 96580881 992519367 664778281 672557546 447982666 680985456 990952016 997849687 971354311 997922865 655519601 680884824 231939802 357954830 405177462 727317652 25531242 426540605 47951511 264914940 336995868 878199023 810329999 919114985 103134923 385998992 822409024 939026708 246611268 968278096 273833824 614921815 897007097 900516317 478189973 936229050 903282731 972320344 793591098 844477408 559554638 994258164 586253296 593508050 950721594 953557423 373755351 950087466 92751229 390589918 313686805 661611200 384211878 604526651 580024064 786394878 609794469 696145968 972808181 995364657 486080543 590859642 844274622 954507226 995944867 998380499 959518244 974153909 281964391 458633307 236243670 756996456 967579062 984524514 915551551 918738404 119068587 189864718 319602811 491060034 624447627 803714406 299275642 881405168 907833899 985721614 531216562 855147520 259817120 913389821 205975353 970446639 975039865 982219885 478759637 805784276 548658808 758837754 410513699 591742296 298952517 974801947 218256366 906887778 303710256 481627402 621519598 931474451 452581673 856138753 293575694 855142282 806969226 901017977 21487091 190172114 909987078 929047768 254978418 526393049 779442395 885148488 94598375 480183954 170854405 282605860 200691408 495134953 512880808 617234380 662364089 752289341 667226301 744428253 51173584 59990033 934297984 984710512 69341170 575903441 753439862 972700259 658464394 951457052 171433859 961637741 514017774 926548336 142421383 714717262 688721210 704318662 574038747 724154002 935272837 975256056 956535391 993702106 487763429 507662851 705346917 923559362 882592460 896044070 31758642 981416934 289282843 845944594 107736934 448618680 19550222 715004790 132395674 815158067 17412042 570964990 686176287 885303154 205110136 658458426 554167382 756075094 557700637 828470631 154999843 614974936 279766025 465500342 367889831 826488332 379896405 979999476 771536491 998432488 418811585 554640700 83722007 736572409 845827896 863234199 6739446 826695683 366232931 563292824 391329444 778587294 927436551 949365760 982603152 996888314 583737174 769731121 83325715 430231741 869108267 931585152 340958297 867267922 604751302 950536098 140993422 729339596 489569696 709755689 220553320 898622352 67821750 68842558 440407444 956355473 858673058 986121701 401598905 857296182 657120842 876577936 359643989 470288710 50516839 899296990 220311294 604925304 715698401 830805206 361943236 403120684 912597862 951229359 695160661 941475758 284020522 998574708 47124741 695554074 530598547 895438399 380734043 687116608 438337641 503146191 387242769 425898071 729549706 794266825 158901412 647195090 327043019 880755671 701645062 735223317 506527983 817305786 675378901 905807452 865683802 865816474 885170583 998300979 677826271 835009944 602478258 812722311 67490473 934797659 814603759 949559126 618893605 733896896 563694314 567094960 240825218 808836160 789953939 875985542 854189077 913849752 792455675 936819604 430428338 630667706 874763132 897004042 456701310 627561059 766909388 961371308 417420218 781902534 845373778 977464862 279548339 789442574 442471576 671253261 632275284 868688167 422844846 680699374 288655312 808784332 590441073 924877160 342662331 783826758 490529639 978897277 709693217 856627795 561260331 812281757 951056457 980657109 857275185 892290789 462330882 501073580 442384652 864845081 555229762 597867939 292620632 403668076 482734378 544130803 304971103 774880105 398937287 572924747 270846925 524836844 834190442 938942333 420724694 668541582 490202152 538038661 881733777 971937002 549232747 666983734 424282229 630620651 741762653 924614692 408954756 898229628 176495894 263552387 850311421 984870225 890850283 902729162 722353789 807815954 941002810 943465609 758861960 881198664 12545270 760732514 598809139 704736536 945687414 984861330 988350921 996535772 436123319 812496747 798891734 926595354 482485944 871756811 775526602 964128250 808869916 901156446 538889550 751865371 81253302 84569905 340966949 674683985 555775452 832902191 871647070 921546740 51993222 903102461 843295730 925472748 859902728 938756552 841234421 887562742 651052840 901862607 19169195 138322175 44491003 763883985 240254029 549950452 503760651 566581747 905358779 957008057 195204566 861574467 830315991 956735095 793862997 834873079 116667638 148270657 494084063 881035964 929986509 985800710 366458666 716258709 316719181 824007709 738881932 978938283 244342384 631771671 296127518 883576566 995080370 999374479 51276611 487392337 414075325 685389770 173786808 876769787 313282365 455628414 608354625 793463727 85671669 303182360 552037873 631648066 495878952 980678743 856389334 939539795 324609273 681309928 230147150 742132851 594537280 605514898 841151226 997336322 188960931 975038570 437529365 582246936 800393641 987641803 61681696 670954256 828175401 874305044 180950116 415396242 132072314 236558579 143316434 972720205 789537045 849069459 312895242 364300709 523049879 891624858 649835514 719642917 22686188 947049740 856064246 898386354 247538332 299318485 538871322 725542369 970569969 998387567 787599740 867431677 327477215 681311398 187671768 990839780 857653572 910180370 917557917 938319981 238814721 715548800 746131629 992604627 767849407 992240351 307489654 364309923 749224443 792828168 579136082 624618271 187606482 936195703 134505598 434480995 750269658 797920338 470289049 912587472 150924612 490282909 838323795 980944360 25572647 807143937 573024838 669828269 326839252 633291622 877111041 914855813 152050839 817679343 574598978 760238296 578085572 794824808 535294410 826891014 562272368 573008333 985176815 989834617 120923337 504004567 682511436 777586225 2390 200560063 778816703 950653116 306720697 923136282 807412744 883880908 998178410 998921690 927842228 994940701 645636427 740725904 305719368 553155952 780414959 936029503 236275055 675242023 921846472 992698719 577201127 948865115 948261997 951361371 99350408 919294330 272065868 519356992 510846136 740453061 722052823 809306852 125742867 946981751 482331601 629944146 97968793 709136553 344235407 958910132 228370674 357492099 305302354 663079069 572022831 750830493 788126226 788731039 636120379 744754738 902916600 953077785 776078558 842550535 78122032 649626371 513252676 572388469 394049784 550873045 249143346 676751609 861911146 974194902 447872141 507296006 760921174 936324073 809954966 859946746 977523358 988569725 824128948 842151569 746073681 865795191 409728574 537245346 282583153 670228814 434020646 481753330 938520913 946491413 152103817 939363397 161855778 817135326 601690097 763207983 667249694 826515103 975648924 991192785 958235181 990871652 955678501 972341573 102125224 635053844 202873189 958467688 515669993 536887064 984714428 989380115 169284459 288705844 337149869 381024904 441417768 993948789 726096955 862478442 393340784 873164913 914480164 916085229 467107386 801441300 238673362 703858392 408835332 719708901 986327648 994987602 836039957 935630936 173586546 553949185 845337531 855803740 699607442 716120335 926745918 939402884 255023343 416497607 395674557 833414975 418266800 680139992 225706073 509348411 936384934 940849636 208546742 349655801 863641439 953752947 875386286 900271472 596469198 651960699 856043932 867360097 519083335 765421941 499414611 979981225 611628680 803406840 728604943 948917548 779873693 925317544 693700147 758500715 420146052 976754608 454101925 805142522 102450064 157848789 481777126 714715074 5968609 375742179 848773708 932830678 614638711 756782408 695792004 944267043 430619885 691920048 901326182 991895829 587869654 888948822 27023243 636518783 209932324 567465391 489988655 803118853 732101708 876184592 420407246 698355109 324794157 974133933 256000383 285437052 934886926 984236205 936256628 952215764 725950082 958764089 649904533 687919390 454734838 993714410 2574604 973915767 502463401 887562930 504982560 539851399 530369386 726228542 569441867 583681662 826703184 954449791 398208598 989270538 812112350 876078965 174165153 689508994 854512106 871130921 974729467 987991456 92378750 769353141 873730707 955972101 293408441 598140995 430854927 838134801 357591181 881536776 117619840 796969528 896329393 927489293 976054567 976206575 361671342 730349343 789779660 882740813 651485403 988190015 277658893 803457831 48181935 342377351 416699323 543907270 892209590 971488753 184318200 621824718 3448680 823761392 132456383 833117412 316645994 991126686 671402276 755671929 749014122 773253468 431029619 569894565 469314083 813569594 488362162 779548172 341687116 990494542 838048590 874294885 161482250 173151843 393302242 493445878 970707216 992785836 567303766 841366726 834357041 961126852 546019726 578932239 205054955 647033365 326505628 887678638 808948076 892063997 256909046 688385710 324177871 629308168 855404891 908616521 184311352 483756184 193287368 375648696 950001861 966581467 434463225 478670717 816133647 975514088 701531277 882826576 804309138 997952802 124549181 682173255 26047404 581135955 45627945 266158538 138184340 489086588 978563804 984407378 770035743 883921813 373556641 698752154 659445533 838834800 450151006 844013128 17995747 540870721 67095090 725312227 713328982 931590405 150798742 319999685 331388074 959992307 662171819 981316928 262286663 573275225 438706702 672961473 50481870 135413309 754209517 881727478 831308193 860777303 894944170 990093867 679406821 819281673 784600244 930890408 642350401 679838813 756528963 844427187 28804986 531867719 535214997 765720765 295196727 460603653 687429281 838726592 427311632 649682288 115061715 213993177 155014868 542561852 356178399 527970535 228566494 533956938 189262553 348535637 844734977 998185983 236827271 528595387 217736335 573929443 592398136 995885402 123846519 562199770 571519482 982501298 935765514 990774747 339152930 735499701 252748210 436699191 965868365 977185391 605447308 739042642 839391443 843071796 739954315 801598579 714990490 734137391 479770243 697208485 233213210 464266813 54468053 739494291 699623399 871292018 670820286 982897395 307521553 320372303 680695731 856650590 462845093 936130910 978120457 979788637 643402344 915520719 72657348 954699625 666709970 759031815 803169373 912360858 256785973 763100585 77018002 634050511 698645377 781318828 333121510 797147262 89039326 504198479 531364266 973524161 163045549 353362458 765764786 909161002 759079108 839901982 769631441 820926812 561265762 796197669 698583795 815621770 199252021 381257397 628339192 774675489 145329783 521312043 787557124 945083372 347030089 429266802 66214442 770539388 110538662 627175535 10634135 417581269 628356859 693217761 397147347 743518949 100147280 208213679 563990985 643383486 527819036 708675836 970577998 974447839 820807817 889718298 385760305 422684882 700706461 874860562 524627444 700973651 591946162 861469943 225564300 775090547 66616520 608683723 430985307 624378764 802381309 839761940 880887571 886470101 999345081 999348342 773742467 785733682 856713683 877391460 799703104 885228975 649774308 985929838 156626378 588719770 693170208 713231410 248552552 677965497 11862825 518252307 621432669 686501450 58971489 760499708 866788123 872427691 160720035 824467344 217846104 642465575 655842900 720229053 557313549 604647777 944512245 950874446 139511730 565014085 419107135 657467028 88244743 132168588 981014868 986681282 550712417 919119066 557895549 838225566 903460751 973781706 22569679 661135373 27167735 856255872 450627253 799749366 84963566 729163397 271821940 725144090 703403707 761699554 600803103 765265054 848716379 972844433 593936517 865192512 750520321 822283290 896885530 951750931 602970655 879340036 19486697 83793190 282266815 503678620 300517921 940319232 279981539 659013327 694110440 967879611 320515730 706366588 384004222 481363271 259277346 419800441 964663725 993214405 594085614 867896402 292490003 485636473 618782875 717265185 892208789 926797967 317762725 674375638 42629901 147619277 112014868 312611359 694259722 730089337 571678283 948224553 847759673 898903066 34190328 305142065 380155862 578211245 631013349 776067948 933342447 970337801 242020191 457249053 962878262 994324000 843627489 900272347 542776573 756455209 549441068 916141637 484738877 623267143 945485439 984476574 189922898 835966339 880992987 923503025 746277888 997696110 437684233 885177915 816551107 998477043 284639885 823963484 713079638 841982513 886968352 891702509 772645522 940780207 285963252 804832072 926986631 953552586 695208045 803981900 348982396 982081174 432494264 750649547 820175139 875336567 326912522 738397704 864145068 879701865 686541968 737841445 336696690 491348711 29105990 32704728 952054196 973251586 153884508 743616212 540450038 990448862 148676425 547359347 696260119 887497430 420933138 914146703 953848589 964158345 843600242 932839697 450774774 844819853 303295248 475130605 515989198 522600123 525247304 922005895 407403118 853444198 444375550 651722481 437744228 824740936 310746011 461227402 867273164 906850509 766414846 806330485 413664584 779672623 831447728 976805266 100582627 260580871 122199501 312957688 975966352 995401077 4692353 776640365 77548499 686232652 565027494 702973127 727063538 864651032 387470086 831254642 534124717 629840698 81166429 666651076 136764138 852893827 429262746 691883029 36546347 961842990 450310521 640293233 816503451 857707060 41352758 973700413 471520802 814330664 843413135 970895726 529699034 980290013 819255607 943256974 498377178 648384345 429580302 741276624 446187644 835144676 408674821 895036107 729400023 732534715 70124972 432923950 615675626 920160236 449192155 891564553 281111339 593331144 577215701 668693680 69671826 173253517 400165704 838727266 524921722 587578347 663720527 974933490 500898690 915368602 237124770 798561263 454726970 952997318 275608333 503153909 612820659 957474297 884043869 937384397 900755602 971683617 491549473 514723893 722563411 741860840 653129641 912372614 684732747 945703241 497267490 730826806 483804397 961668949 196660047 524404661 455541176 930808557 13464280 548462180 310088048 562592463 976855765 987803299 472965887 478207992 752988721 792998902 582920353 693857731 93213084 222009373 571877954 667551908 240441773 966772792 276043020 738718434 589498886 805274007 727586436 970334786 35205437 419385705 281516516 878258547 794653238 952129586 284774849 360747459 196753990 662371082 264627439 721099978 348752528 595915710 544648208 903394249 667507039 833594978 260557386 756922452 90430534 574422067 317526883 721196161 500496922 807477944 490962405 702105097 278670427 382733884 321589250 873940018 148213055 369143465 963872607 976362501 204482455 325054758 121141062 796186882 241116114 994252922 23953098 269067411 793275102 982452003 381285577 824096632 418328355 458154650 316061758 381244948 804677421 891656455 178472116 514111045 352609173 857285461 635856055 771790871 541426173 720185358 627843166 846529455 271779017 480119532 867345875 956448285 869932930 922251632 985771278 997159624 633948774 737521559 735489417 949293704 578270697 847536369 741435227 847460526 898917897 932622779 49749994 286493351 793589727 912585697 641573253 643853975 366735942 538165834 146874875 687628147 114609273 778745422 571187366 593179422 846616996 944984146 533884557 747899065 549728868 931283479 641002627 751530043 285673912 467779849 882945645 907304141 166388020 215087730 285724554 732353786 797050086 874559638 345043281 750059193 674503832 920920713 668257783 756959296 744866545 892700902 822334167 978336659 417568871 730387364 730099193 869909155 64894446 419565231 295674707 550636000 972133268 978219231 964974710 987488598 515084441 663439527 71232646 872969338 811789621 829711011 518614547 625105100 702809318 758979112 746707060 773330252 136903589 408287217 559136632 685976430 499245079 537120249 50577884 748297506 986777842 999277496 995114798 998691532 595550891 781969907 871244113 904882991 134080422 788892602 819575448 853878652 140616557 337288221 129136074 587819977 849328017 852428422 725350841 945250023 337059741 827490780 161994347 944156946 426287885 470643032 178027869 437405212 464801457 606216898 135411857 423752577 165046092 997605225 339636002 658682053 19259687 412674687 5112164 598584536 684062195 952261824 68586796 677374689 789460684 852922008 56000957 221409792 574479544 904184248 153556807 642936688 316092426 548361014 126080526 571366339 353941192 511665016 582594821 680226026 444285374 853175827 172648892 556633311 825030554 997689869 774111757 837641634 897858481 951570355 408483788 411765586 267333387 270733496 231306887 803390542 547808749 643825863 807830608 870493595 162469811 881733790 609469123 838398907 96184224 750692931 405032651 846572613 763771516 859316528 410019237 809124001 614962682 763930542 315685807 637739711 826737847 860227973 778097647 789267896 701908318 854358089 23678340 99157668 681658451 772899669 140185323 583171713 988697565 996831171 908841853 948156812 791538307 874733037 77524014 219468487 307613645 620062753 80089688 260424432 764608806 873425940 79869298 882470291 944670220 982155215 5284209 206828194 428032287 470430485 904324017 960862910 85222622 292706385 465563933 506065312 498408437 940966608 421603579 950413996 114749596 712965499 173678611 771296877 643901141 737566643 893742051 923645160 236833074 629807434 680433504 984909805 209083330 698181927 877837716 982421633 881862693 940090766 100511840 155526322 804072835 997942323 74415634 392048300 163937375 703166678 234699686 459244218 464567399 662850655 733157476 761923960 980395211 993918151 77586474 594400172 246027058 376601437 39484012 839337862 21633957 777901576 363531405 465263640 997786240 998811043 470258455 956595118 192878532 858155117 454402083 600919319 293950345 886284368 339867750 744158747 506307600 522219698 936109818 937938756 235463032 349600491 63492762 437310970 797891661 939682742 896060142 926217831 464358219 763891213 976494280 980989302 456389633 619327582 766137724 910216877 383576541 659484563 734097615 873024003 897151734 956398411 364225389 925183380 206080294 984058542 249961706 554461996 671411537 742908180 352808478 588174796 413544360 976065391 627983418 772253505 786183692 839451534 372816562 545588872 491158423 520343332 632555830 877838730 933073309 969343600 487352713 796184314 842568939 926280403 79202701 509459556 995234919 996335301 724316455 822923549 680514358 682282836 354778350 602864110 973961215 996298680 45823348 190213720 884874815 946683292 691176845 814298199 708195079 728053703 48648348 365326663 901578281 972949293 750709933 781967904 488539196 598463614 716455944 874705653 132223758 261856896 482653272 810486765 908975093 930881175 691014197 827443070 742300362 759192389 660722629 720288164 177914979 234403624 786868902 793799211 97113773 419452940 475221471 489604312 748988980 795215589 871214543 923631281 431020008 488404286 908522200 976398071 208692168 855557480 475449179 627325394 474006593 605061965 649756023 984497088 783621960 890179037 428951725 907802971 665459684 937635848 245007246 403133384 580322536 856003533 696603028 848315449 449245819 595245783 910348338 997815353 800196718 942738408 902105207 915079533 175704354 935770886 590130545 755536881 759646427 768026682 532715828 797351580 860376991 973453638 501185020 946046625 499691708 682941321 236683446 426795037 39725665 308272797 109914718 549747802 282208854 735385918 551155335 624306685 372545055 379997512 773113637 889031564 982421253 982563795 880116380 939308380 586303902 751854307 892672085 897927562 373754793 659135153 941163259 993839400 817554449 932645375 303220332 442328565 80437729 888102644 986444391 991375414 319833859 362874439 205959803 864757314 548123753 772111197 99519081 635409562 779893659 930474706 622157699 696037881 260223809 595755427 52126181 544718289 536172117 758532347 746452215 810971576 777653152 883901320 303382151 340652373 294493188 739655658 765418129 904936100 906245328 952867627 278128810 745888863 928944061 941302072 894623069 984038855 627871249 871305157 653451176 868647096 497769932 935965988 67492286 953216071 643918384 866738048 46755801 982317025 782836524 849827406 985796237 998275085 158624230 959441309 775296509 827126864 249754159 542685282 637207327 815686760 320633335 444573525 111637840 191315493 25417912 275260193 558834711 642779045 165350954 848124646 462924939 582067021 388198026 831279041 701169380 938253951 896521637 978491384 870732309 946866233 218951573 893477048 274411954 287739186 516789681 988239720 749994877 797555705 697304065 824389525 484227103 807823067 773226227 883151547 858830690 892273252 369878577 738274509 612491941 717275696 62134679 780219431 936649497 974453910 97169123 278764549 197433495 218163974 491737787 793373485 393433049 760835110 991499045 994524213 485737604 775231237 878732226 890656924 330957959 642348197 870881362 901088394 704474107 864798328 163603908 222475832 965943526 991563047 555101550 972465390 97635910 680098583 583920376 891382972 681872284 834436270 568170501 871362770 325679868 394313571 924637615 938153392 308821329 664517053 36259313 212559845 470219800 905646320 465005594 792289262 177195608 625760897 605849897 707326295 673428744 915318616 535089292 623168913 566788563 646476916 510775179 614199886 964806226 993068798 46194593 82138719 441087718 575710857 645720675 672138953 385067833 547629842 553135356 624359828 125914525 431976288 143637106 788812471 932556222 971893317 256026244 891567703 900841484 995111968 223474037 568421982 55864785 706163918 5011379 764665967 430200886 706634871 339713592 733656324 673098692 830911278 778241094 929655362 239097834 645680301 553892476 650036396 54881069 305146812 612585205 997212356 590886571 854106459 678044798 945320218 812828742 888557667 621023405 894338528 793169191 818603118 110998685 669658257 968563405 979995661 754402414 893850318 215493005 401237474 247005771 578651645 431626935 536590082 487260177 685097125 135253990 267211467 205833489 539085814 964623766 989930456 121304962 709999761 421157392 696017328 363102211 786935056 557063792 868098639 561661272 768982541 67241285 140017627 782278807 809638750 988338346 990877903 822751020 930763464 160894878 622984988 622089401 733669577 685815559 744636927 846015969 922909589 841204941 913977970 132089556 942388855 414788443 666633013 844930928 851414833 113828622 450292160 313687124 464679193 530046523 614942551 670680594 691757442 711885118 931718246 853396022 877684168 497409051 571327998 667927509 933245683 313768106 401437027 7407100 46857883 652327602 668313852 669434123 695305226 659529804 661193267 243031610 666024407 852384097 920884023 396839121 555421062 289987406 689520972 578953495 740017071 828926295 952317473 407763891 944984452 285363554 646390357 200361113 295462068 767945766 853182823 874357989 977038179 386358795 893236681 100990573 537042831 791993357 995893505 127394940 893927285 322349945 598451864 838553272 991145070 343836520 938138050 133792505 601685499 72736912 703123932 253003575 925779825 715922448 955217384 532400467 535076386 125440266 516557436 936868354 981452253 895409403 917607085 760459015 912253934 68381835 796802030 291992670 437689987 500563770 681888483 563081430 998713763 571721078 962071155 594657343 655411210 757709956 981567042 777192602 953800217 290626197 501263957 944811364 985769861 393781038 610840477 871466858 872854717 975071879 996593889 251992403 634759608 747249749 954438818 30909407 493938952 291790468 867763497 938033270 947131258 676085940 841144913 690838371 834014145 97410815 914840398 203871230 473835392 781091701 977716782 590648514 943265048 379842666 689435407 846748808 862329622 199222302 999137209 191456002 280084814 116872890 230893309 321908488 904747195 432849707 617992453 496005964 921166179 819318588 921803440 745884964 802644810 760697269 828748770 81259367 202309973 267833191 284034856 408888641 514753566 39250946 878591096 506853498 890179706 587598588 628106111 806982114 914865372 966669009 976915567 993177917 996416318 497672201 957104637 376176410 401013688 2453116 939501994 515791329 973320663 584208614 627329791 111954864 836440050 127727759 299555248 911910318 993522103 855797807 931167731 843478850 880495246 714184272 937879011 389884520 654751355 894519560 997920717 127507022 924763628 355152424 884802235 287558745 492995007 362488646 511885836 39307429 382852011 500605999 659461475 125833697 159828189 661727999 710465394 148823627 724918281 776829789 787878142 104853268 248992605 616456098 914012467 394225353 512756628 190016428 877451665 173295749 578969059 612602978 998157763 654082070 716573933 939365217 983253587 445473831 817705834 155315331 967221587 154897669 548020539 756447402 856600789 512937336 752135419 630393569 882582378 901736837 902744553 670452488 982227375 346218798 714352377 771458289 890556054 885187927 947147245 899980411 981789821 356062143 661878226 867445771 907246992 559416266 756293162 941760580 959394330 372087356 967210783 313439151 478003229 636860475 907699301 989778226 996579056 712941913 794155931 935682209 973180746 284806659 690467942 661693999 892145810 413767884 521816493 275482155 528393924 308728658 795368971 272898932 776383920 799136774 823295780 883237056 960518928 797670021 947273377 863235413 924191223 776461736 975797767 124342233 491387521 132267024 334636906 89884457 404762577 299802965 779073402 966839558 992071253 794606515 849182719 701596955 989040163 15393021 723351290 702379477 952958027 184575077 652468839 173745022 360459125 618070656 714463072 760951405 868259346 407824080 498380121 552170960 777487618 535436186 885856094 366436257 906202263 518473350 965201397 63743911 559441965 580931214 587023373 936504313 996005304 273723788 791363452 937840069 975273552 481404285 742170020 576270957 661155446 451817748 868426136 111684951 707358745 698683768 935127064 862236612 948388120 593534339 863250985 880642310 944569590 570817378 603184745 939331780 967222389 283764267 509565370 654825530 661322645 772161631 978951355 742297890 816063893 746624266 988938945 362888197 996210534 986675650 988679128 224182841 455667503 923499967 957095045 585209138 727925064 981109207 985769332 391003820 491646423 858365006 911892874 972183816 983597331 998565471 998607790 18235694 367098682 479981095 670760713 841285030 876214224 508549586 712390292 714113876 867052516 214211578 598492527 987980785 994613878 888138885 957663485 593846324 715601035 23339870 85514870 917859247 957265584 974469217 976955707 439837383 779124349 976365713 983657068 197795773 219335407 537005450 788955602 327686902 878774452 449575249 500555693 414349985 710472590 260482353 376543513 102066526 239827307 869350380 941968623 998348094 998451970 567195587 948359639 400375805 825966975 149178567 925736754 579202334 812746628 694732928 893096423 713702507 874101129 579567530 951366084 306437504 478314037 203926989 498900676 751415399 927260391 863156079 977226150 956391706 980629767 469892263 743014527 929609704 940202177 905478507 997286892 975582813 994839489 771999836 875873040 6183543 477477784 142459685 825755124 404418722 577838549 54154051 416483433 403934436 805719877 829480415 890708940 341841936 641292950 825948707 957754529 539213504 819117766 833006650 872696471 614314092 713981820 83800234 980689944 38064226 163235025 972437858 975654640 571017180 675616914 769015671 828258595 644739243 772689935 637093473 784860194 204338209 747372420 792760782 913611848 692559582 814423451 387320136 942734417 804750670 858878250 335284434 761843578 737173780 973464255 925731732 946949674 392250456 712607669 274114298 942637150 451090923 471324492 673986803 690969546 739270153 912685541 398317793 842034896 392717555 772635734 714470137 904930913 217048579 979755203 943372411 950015243 92081404 411735695 143862256 594083470 524904689 928560348 267976778 604413515 515717210 737886882 342694600 770074025 905614635 993425577 213098471 349838978 925279121 974397858 468793862 549773615 403197656 478144104 294106012 895352645 265245167 832786439 845157982 913853568 903634360 912692907 937006245 984969160 544298816 957243010 290750591 871459411 530383866 846924884 819805548 827126522 736654136 789894130 422016637 779903766 191266340 194888617 738680229 830438301 647253124 987630547 267917079 629643555 746262219 854695399 646831550 784832384 756633284 876201995 785258933 978873355 83064048 774191291 541108165 621806108 235012339 604229538 958604033 983659270 783400981 990040354 767031556 855689492 28638283 642936777 831092572 838632477 17143210 842612259 54210546 602776555 259308430 450432386 803207853 855732339 235450916 500899466 140285671 847654146 786521884 860355431 434531017 578560916 292292599 934819277 982174389 989530705 503015653 966440433 587770167 903873814 188848910 507163695 802319184 891208071 255404022 339036143 230601679 488237264 633031735 717378023 428531549 572456714 281324817 768132538 494875351 678863006 407254110 919783548 9314068 111810417 408585251 478750877 684888434 856128037 566289652 997741334 262977496 415550076 381657114 796065630 178013955 706560420 141013895 261668656 635523536 721289901 604083401 976564836 782013473 966251210 580207216 668716472 135758115 526721843 616589947 734786829 700322622 904230218 776640793 952893464 39100800 821243966 941855621 983491254 685798851 696603678 864497165 928834352 231730798 289447562 378480310 988965382 257792958 781398712 626109862 712566625 865148325 925829840 112262379 437645261 598466625 607901178 513378627 629080003 579870867 613512260 60692644 754748678 448626991 894545527 615400686 763075459 847573342 981453981 145726197 914433870 656345452 667013158 666574745 983732151 467152482 847834485 736460614 800367537 583475078 704431353 50884981 109725434 96994022 470349697 700147285 724012197 470083053 950908400 329837068 998488551 534657984 740882598 865469150 988295149 673696349 724649476 513956651 972685378 125328579 917040532 325203796 774917933 68446959 935820952 406783395 872050777 705262637 975760094 783650599 800263508 382395431 493029344 953060940 981574951 760385852 915139592 459488961 565036470 803775279 863332216 757897433 920786594 518702953 810293654 611700563 703157743 976060497 979011754 296490058 961293628 670274243 872676763 332337673 617529623 764557926 768228418 375903128 407397906 392018503 433751983 260277369 864837974 850292762 927495793 260144633 648525807 655548449 836745615 693662714 713700565 678089802 716339544 696377746 760369482 792159082 793772051 80475400 938441647 314117972 544672597 233913148 943755922 910155827 952139655 485945914 635422100 864780709 920285950 994854834 995657367 869740776 987734850 988517482 990809442 349980225 826054166 951860617 966252589 372501688 722855083 387655920 440625384 827877108 998376428 263597568 572128378 189207037 857650036 527808898 945729252 227433554 986171415 764642989 830067270 432271858 807042358 155229291 218150610 835688511 918541848 333595137 514834408 366252491 502384593 375786225 864272029 33015262 107061961 907690070 970270918 364753261 911582581 82384893 115122211 136118221 830491344 312093548 992827699 479069548 578570595 621879791 848056944 361978366 696058188 654110688 925142671 296232098 348469110 157527044 919844213 714370223 873374203 206232119 229313393 688697256 877464134 302863284 563925465 627665882 641821956 303440171 820293185 406440659 943959279 896094150 957351718 912631274 918931420 749967072 826648225 169607353 515450280 242125445 451353310 749319974 939175716 88565806 723556396 833731780 882107790 624072952 863389995 446241708 914458458 387552750 635037399 201685857 720892344 245259214 511450324 117235152 628511663 583150316 876103405 838310283 901635116 441124179 913383264 989305209 991170137 868886585 979051775 208777793 943212388 956076745 957353639 971358169 981274760 459655398 505014793 830458013 934968771 479497051 676877871 929478897 970846601 537108708 643261495 707472976 971260653 463398974 551555460 945929860 952751530 257675374 471632616 835828057 877419970 722763733 763169313 678364899 785189387 162452503 202095724 311438400 627452444 446772651 674399776 925207169 937707135 322946 833990854 114125843 967562571 131702531 281721669 781087552 985179245 203024607 671514265 18796003 405930227 70474681 661606386 725539073 874705322 556141083 754583331 631392441 677145145 239151052 627224953 490479889 758835252 25689744 500640666 284515370 855779193 756297642 938979922 952681240 981668726 92440538 249884332 741551073 813678652 908765506 918597459 51175835 726104512 518563894 672300078 250582493 474744207 156499774 466239372 808541250 929268323 143767575 320967941 205259932 535089140 169959890 291280748 829200414 937993337 749922218 997796888 534759923 592185062 612323332 858538775 188704208 789245888 915978386 998844989 288108346 414798763 488192829 840588630 421578314 693914826 212325559 383608862 538978778 911464796 681512003 710981186 626808512 935647298 45726607 378693820 769119600 770262847 24871892 31629662 96036376 464473480 77874006 334713747 915561283 943932495 210377519 774162175 143148347 854754764 140894360 522236459 336648242 412495426 8418316 683157418 828788200 863945241 159084363 922065216 337018915 372933514 478110535 572620069 682718584 839192769 752382581 861439894 400497023 668733663 641309396 923078723 775001586 930740984 641428614 859441752 660774735 692153444 141754424 479671656 689662718 743527170 477883379 539369883 433456997 970733759 36805582 958487714 419920498 710010851 245543162 968119710 202980335 336026991 827853493 986290118 567925808 863125048 143055297 231116544 726185699 740189787 440302450 699307991 668825196 984456148 817447016 934059094 524177743 550580633 860252955 876240787 410244351 616648980 542113776 605084552 720499000 732174934 297330464 716703351 30357624 869005882 30682526 393477183 551042308 587221387 7497714 787531023 184133978 402807240 255825631 955307282 760409930 832102091 280015292 726324226 774952648 958743129 995883721 996928959 30363115 222977964 898823559 983392292 258598312 636584465 217200164 688912139 436700221 588906848 380645524 587713381 860031269 955452448 855199956 958762062 897298850 913236449 184932501 707075315 592070753 608897752 517303270 645674995 898821058 916229774 447437189 901796557 205163735 506869418 489342789 803008239 612839969 905693796 13776911 330123563 86438461 560302821 307495512 768241100 700103154 843996994 471082801 639311506 531149663 590092639 907789130 988414496 446368287 812465369 525157340 815487246 344472213 848940118 398733518 948906739 249797646 574568312 950859758 954985534 231883956 319890532 183419809 219242404 285333773 398205323 307092868 656344573 87825111 251453599 738515946 972733627 493150941 771976951 506753450 639209324 933067788 944523667 900011752 922968898 495674453 656161666 191075844 217666787 963470352 988804081 424111215 778658423 612104739 786915559 300261034 643033591 820215081 891970246 66356875 951676990 18166021 774059595 268884968 579100460 298884882 485923686 707208660 844915638 489231049 717617824 264986379 957194117 107072778 509844172 226749216 502470632 303454112 499101589 451580 258127238 836598123 884571385 568212440 597676627 422508903 838316353 23981609 238845696 858482396 887775436 919916941 957696705 378034971 518794466 363704569 761300966 33916340 508869544 514939202 526091771 264955573 949117696 585958447 823719989 725290156 935731004 817859378 853714340 556635413 739736257 143245927 767734535 161481315 502986390 251372277 538469631 590901952 805944443 622308099 724357122 341718169 391707700 285044169 425834576 595380914 642378780 742771163 858595942 481103089 697019294 865942363 895768313 64855487 879168056 108654338 550730212 309729215 373987624 134995188 873142782 781523333 850173338 396845235 510459668 452051232 769735892 360885419 465447492 258929505 467017379 318736476 727506935 169504611 385669625 420423213 610836938 895114080 976145666 593741085 933330526 390001743 546316149 117743854 585497942 12606440 591416977 373993763 540027346 915762163 941691774 307583584 989952293 854668262 976432088 975764944 982949642 578135382 924056231 154939544 757314582 238079713 535092085 658891904 893136523 44554148 289329458 210344553 790438326 752917037 802840520 41440311 398987286 6942527 657938340 435914975 973376777 382235497 820155574 47063056 724772099 281154620 328603479 559347330 767549916 155384778 317208845 919766643 937549516 770353746 962774788 269427053 578550850 490390659 774264436 500138517 845344831 73868566 701678615 790277447 825359140 464817048 482235056 522088947 915752982 404532887 471557279 447581506 575293221 737440151 856033108 835010583 978435368 999359242 999379579 995014554 999315775 355076699 503537479 777206813 831573247 461721360 685006188 601830706 639769367 822892758 914391769 882291012 903597299 681036814 969005598 119877158 881946084 245930513 591280676 746536098 838635512 228902828 994441722 391686994 419313886 734911874 934616889 758173986 904373445 826534681 842515336 125301225 170528922 32246065 809413401 581677293 782907675 755631043 919598601 448132056 518771715 453603604 855548020 176296714 572542635 751918805 910541758 211725813 846826109 139172984 514478958 353349032 649075626 86867555 493605473 704370772 810014571 243374552 869279512 619129758 915463888 895565640 916918346 89254507 98388121 861965798 890791365 805562096 993190277 775342740 813880469 657480280 808039741 687253668 951048185 238851547 862845713 980492072 993134898 530760971 896288431 428793405 481778069 692145645 849469416 98408255 463575766 172605958 182668918 132415757 729365020 15688752 690077720 6678046 989211459 982416188 993084426 844801980 896975650 603943879 830395491 304557472 746601054 610676950 678990259 581269725 875927316 611234657 899558400 74515628 269264917 421170049 596299449 132043347 481180418 523823475 826903885 184068756 412679420 908370012 918496243 90218553 940078877 487992100 509976901 233654649 734107930 130052186 490816793 590849508 978293450 76415046 360539321 931133041 940698850 45540936 345349241 825211440 951735730 697306104 799564583 20581490 330431049 595580429 645003978 614007779 739558608 160441648 820012628 841193959 965803817 778650701 924221018 480663646 829624814 458486262 593755901 193906793 393843576 168142055 369269413 966101437 980253682 350782746 691653631 187343146 487528830 713344381 923069424 388235719 593498370 246534774 963528740 764575088 857997955 800216003 845687024 632976212 959402845 372056448 862495938 473694173 799319854 858859280 997569291 576823628 612169386 243348243 599073984 442262798 844978994 795979707 821597153 919048194 972284746 159781896 927645439 125213017 457333351 142100696 253371317 250884866 496313986 885109851 992489058 692473164 930129684 769012068 847272558 140614391 663215032 276039497 278877296 136500976 982320666 56630973 517555225 87871809 564645880 201208050 723184827 590507164 699879712 871458976 890637278 324225020 508974394 604989752 835880057 127063498 934679764 118329915 143298233 712651162 924301114 742456324 859223531 299292738 692000249 683118492 878573203 568260959 770638320 487681896 631369132 388209270 880529754 865183539 954664920 646263890 753216922 838013668 962794381 813331738 873990382 924248469 945125486 561375246 651178276 378480125 833906701 822363883 953475715 692881180 758225238 809138697 824402387 685913281 830408239 47726850 261070568 209434003 808236239 220366534 854516818 319240564 821111203 379202594 862291885 380714631 411738369 205450405 852670287 232055533 428963717 962616190 981053202 42847229 111539082 761577341 878325883 803850819 939765499 231158945 677163206 814605957 997805690 744229595 805988531 41919241 122587064 12391532 212221368 750732690 907173074 895989159 956195158 237554416 432393305 605256877 644390828 958266909 995772075 35408269 304018653 733121364 978800051 780096779 876966082 268841956 705319112 798117469 848010242 769147347 891968923 504543303 977089500 623006372 973558657 355566018 366766607 861908585 993163229 476367174 630815440 411596732 530357353 615190750 844794841 268165465 356520597 598039350 982238715 818870143 998381169 856263984 998350567 113224081 184339733 759296104 872124527 564800824 810119205 42231482 992012099 190166995 638333704 974037957 986516094 303839539 937250072 936411801 991782338 799800821 954301160 446851009 733719462 224436652 740091699 502048285 574323372 336387282 337975255 942728752 981038353 276407935 402966459 694977148 950392231 403799754 745372834 14769542 353768653 358056041 970961753 451859194 578270450 96563541 434132838 961698443 980352788 634701682 796404639 151054749 851782088 544452069 928292738 639479364 662982580 860375354 979861529 282875052 453568608 689780431 801077827 3903770 268597557 311157836 638027635 810819367 974245929 727396635 914606593 901298677 942633056 405116145 502947744 491257903 974468964 444609484 589616724 198008826 493526381 472282061 808018262 727963816 985924575 379012558 776320792 152422457 994592935 328026978 397532422 743322203 885933410 221829855 781112518 473727343 547994588 117578943 328555231 163019488 495578747 930019614 932830236 819930983 826692466 348736277 948044686 36877222 727659149 712628131 927979229 50996406 403704888 138303329 730944126 394158989 492091280 841542196 954684483 579930947 723746094 188841601 422383383 472786584 625379958 648393521 744155693 937779067 973735189 101986927 514160031 11506895 566581073 228711029 921300383 606708458 960888518 669596282 911966774 809867553 882807933 546371146 888701908 871351622 985688871 87851633 583813611 214699139 901988712 480510352 494295309 204078561 373718995 348214779 895852526 661320751 941142591 61391912 785137432 190148241 605782206 490827412 529632186 513075913 926977049 316181516 529901276 37030845 372975330 403373673 873432098 313744581 622148181 572072354 774470238 118939251 133248338 542831951 720588523 637944968 980192327 960804256 962748585 710338715 897643104 699339555 966032497 343610917 690356350 180835002 716535833 477755536 977692466 779031194 839679928 255512608 260411147 124069702 983020653 96622248 544917815 325873452 387359046 874124616 993597895 830994933 962707505 535398086 603037290 798969646 903637284 127818969 458720151 538143393 830751953 304126276 372778432 303509930 937017313 26896118 434272080 739591763 875287147 315025750 648468611 504698613 576813830 871784805 913144472 918998653 978354563 687694287 746129845 134705838 310071623 503077394 842117759 598922026 958638922 117565890 646139324 129749122 347967808 162840510 778766131 60571065 364649093 505928610 829889642 499640207 963243546 557443995 735188150 80378300 129046150 522117460 557943774 699434056 840310586 136682181 322952629 123664945 215321391 960513248 969350891 907251184 973361686 156086099 277162117 815579410 996714768 540534081 842250903 60315718 980908828 230038790 416293295 386360280 450500720 429352983 686730977 255169938 278260367 126848469 882420478 180290316 209154683 449295215 766433384 219758014 360785336 220979910 229560373 952716556 968601916 957591958 962646651 39328000 225819375 464522511 841305509 83971134 232609457 15344232 937504727 861354061 970360271 419468365 669780928 27599289 978704851 456883094 926208246 241239084 836150892 640986331 737568809 324838454 468554623 652749180 935727078 42142059 267869511 339249672 402943570 706390607 796983487 885046000 917229994 630212438 733298235 626012981 811561112 176915259 513136868 772297560 864318498 877884798 935316100 404270401 682323401 923414966 928219593 339003269 769147805 115882215 587582603 670188299 714371638 897814674 975784581 208325244 822193525 237171790 483127493 984095702 994354102 355728231 577819140 493380743 975154202 41612499 924733546 91908739 920574132 977831760 993901283 557802584 753600656 849853023 995560372 205988817 946881130 130217753 137161867 708937768 865798023 236551471 996495992 844273508 966138240 125891582 525462173 627270271 651590838 857784360 958814652 395400093 909347744 974564076 987684747 796560606 859488814 106106108 941345933 971188809 994407339 312558082 554087362 861070983 924543003 359848497 587074519 889705238 999008051 111303339 429026626 279736085 542621338 805655231 989795481 756752942 966039678 854142052 977859939 754709045 785031983 221853136 223056418 170045282 318124858 766233351 948850417 213567509 920570534 329351285 988258345 575869775 812455482 680669790 789180145 134181127 970405891 77285657 745394818 594495399 751699662 724634901 840844438 256072700 268715070 859285430 994885465 110225547 495445086 855881027 997238917 271172701 462780048 50165271 434709802 866502637 965890396 566180428 989113129 132690437 976417342 18682871 160537637 20274657 830540231 167805018 886132621 189376081 406331270 474337666 582487165 654986371 714183970 808028561 820479753 88976723 336692366 521185948 708376534 331399489 744271815 284485924 780592135 795216989 944587342 595097388 998837723 168942005 930559887 423805717 431919415 526262196 641925495 333431112 879096336 503494122 791289024 108639914 771347795 736968953 986572163 669910881 707271510 600294061 958241533 179669054 305314236 673928888 852141536 175361928 466388330 805628641 852037910 794487507 798803359 638487621 766343118 984236316 985910434 576871187 618337170 156900705 479593543 212740872 553571512 921152499 977870976 932276811 955686562 617726966 929384403 226754995 717952311 105695351 174895850 992831469 998329947 553612752 580962095 548823267 773185818 943661781 970647951 451934156 721859877 540360614 672899321 336048607 956818276 856067719 963802959 826196422 833785481 186259457 828070042 368448788 696750368 856566842 901789837 75056825 419503952 186481773 490079183 648186451 727386086 920995312 982990654 542237936 789154058 66448340 711772571 318990831 927583650 366345586 902987952 792741116 994420033 559831235 572413227 947867968 987505609 87140065 371132048 259493434 261475300 391480545 484511118 995492327 999259555 406333880 509144141 821977153 870887827 443521756 458626177 928458557 993334430 459164126 870198183 681889884 682233511 380525184 533728628 429854151 988464758 172789651 701333213 863986331 928616871 626498261 737267007 304923309 599321742 5068524 296626389 819372921 937455577 598025090 820666318 108685764 162099143 841002663 910232235 446348404 546325829 759674683 784924592 410076978 447522255 766610530 873375257 693098856 904124193 539698368 726595451 806624978 906879495 24420786 768961464 653991038 982806325 257546005 702300582 425551381 522125262 556722550 865931384 952847958 998590951 900596499 940367534 81134571 738643952 371652186 950502030 142663088 728096137 544679361 963407272 454096588 902173149 144941104 395369188 589060867 679618675 157552874 887392359 18592643 416819583 630464569 852969110 615294264 847829673 946063601 952029067 359422450 561918331 77449060 882855975 794044777 890317508 118194051 159972150 625067375 834153032 324769879 836049677 176842915 368975986 532373572 555551220 767532455 935464715 875967170 988181484 734192363 847270725 182641618 208399607 623547554 970435617 359427640 625041033 517659688 607248380 201332557 730634757 764539657 982800597 930951666 978791505 44562356 839408103 243978877 811719856 658915824 977510038 926704038 964308241 57471777 478179884 862859260 989065777 720176222 919969965 62004404 643767979 63077626 977267844 587655141 918384233 433621019 987253555 268713875 434514077 551651545 918159468 129995714 239439974 356183711 746771909 275949097 586771813 580071120 822777995 261337054 977292112 469800271 754541856 870355732 876928139 45232858 725716691 702424225 766846535 301033564 604251473 51210314 626506047 85954555 368921510 259650434 531463811 30261819 416116166 438183834 736331687 852668515 983236163 737647130 981383546 404380893 414838804 159749481 800752639 946516264 961892373 358948080 898368839 155509104 360864254 52537291 780124693 482594604 807936213 50619066 461461312 166764879 845468744 843876747 930937153 523843108 696894861 299248431 475220580 420447958 856585219 748858844 817694090 682616269 748527945 110576023 238727302 42515109 725152457 918479200 998804716 751892799 835342347 473476853 955382381 77207161 155480195 671264355 812307324 344046609 700882300 498094452 607229149 980589172 980637970 540087568 616602844 877115535 930565031 526753841 932690688 149736570 723432951 621732862 784045795 759548632 820498884 457854515 769333311 560502582 741837993 798404780 850065337 784761860 964984746 586366740 793994075 696428721 754670132 289772277 961760705 155825234 338863584 584600018 886247894 143215458 821821426 148464787 238146877 799646371 861377904 526094547 618042337 477658947 554812753 62226917 511670346 737489390 810138748 60760665 196609588 480331448 495661004 858166634 962685175 855670271 997339446 111393187 499989724 149488036 853696716 986048892 988022688 661908451 884952754 276464736 910048878 696127912 780021657 10700012 273744107 170739603 813626902 891880897 963538847 995888054 999046778 221935289 542289109 485379417 560076433 359112148 391637615 244519629 553915999 931293691 940075671 442824356 519072080 911320148 927246136 905637991 945830009 291258948 629191417 560592029 977542021 26848910 135646020 969452459 978989928 229855912 867419410 926319306 950583435 34736184 827501937 983475546 994516494 648388351 971283242 42556510 638708935 597935448 705333963 295806990 586210517 483113347 556262687 722676845 911933356 840827244 953687044 339951739 535545706 343330354 504287549 679414810 986963866 954075399 963292902 234383904 731164658 190953346 773483260 243188616 670016759 938196253 945187265 594978981 777999371 781580664 811701983 955829656 960975013 281232205 786240194 167366373 222481294 351462993 411037724 68618568 997502721 943656783 994387379 458763824 823381270 803631838 926420013 160816727 164057238 572828573 633721684 976125731 990869543 875490415 984988069 641545192 717594126 227909557 646701084 39454946 737867502 22310859 93622912 560497838 885584294 568014314 806716992 326152163 995703258 269291117 669089044 299792013 607631310 858477867 897748437 800197742 904542254 514392283 705545331 281519498 619534064 360730139 960196061 395559199 693400195 399986540 599143847 449304049 836031575 575991459 795862283 489888554 805060168 206648707 630381928 658703802 962849604 391864153 606460801 744666257 789353611 74307991 314941284 521722715 778837966 112332505 191762145 592092067 603025757 841634177 952711384 13859283 957080326 322739384 816032245 448952245 465277297 46778814 618707918 400364832 860668229 471197131 697155406 434850949 540347735 621703043 668277184 416122032 977514784 444119452 766603191 45965694 76937364 490509043 522176033 10898190 441141382 800383738 874037815 738899006 745853576 328731341 590941296 623695688 959330172 841202774 904466923 983513642 994810802 941859577 974207090 282867576 691753200 481278879 888142340 262929062 922396155 384479403 503708278 437366898 710071306 113763120 758002019 654388998 857948717 49562805 133861308 364505316 574576604 639846474 859206454 372614248 415828842 422560194 704285479 601669873 727817016 544258606 747070548 224621472 994327410 133338491 966784024 684024310 900226899 946783873 985882784 301029840 362711509 763464578 824071907 455813283 901531011 130119280 922477151 936047409 947726991 305394850 877842068 600642963 856099264 193285312 990550459 583892948 818842021 2315130 642326970 899168438 972336474 201170529 879091091 384370917 478100440 865936970 885890102 279454895 742714073 950091785 989867493 478425483 949621568 936824875 956036309 438355477 915524634 820194547 933402375 183966496 890634758 694156541 897130230 182199112 327142691 422706139 961122300 785746735 947198816 158280501 953885349 447406960 663986858 195495130 375570286 496240329 782449125 981323697 988104532 653083359 953221483 94150310 963494295 498031509 686926890 844331875 870300420 658580821 996552212 233274131 979581024 423532852 628113551 669402633 688378376 431441108 974856033 68281352 950469894 475253353 476545506 324271109 448918283 970820243 975399590 638115169 991159434 421106816 619663977 324947971 748235172 990489997 997566312 445116532 571986166 770694419 994381224 319920562 733429339 706046582 742917132 537093221 706532028 132358428 440460349 756742495 789702290 230056259 936909774 5807039 23823468 847156432 969416628 631327687 757266709 781659229 893607835 695671141 701229937 101876798 976924712 617241018 860041493 55892961 231000285 251562830 746602546 402803359 905770042 907916383 935880385 389296655 845801158 623109694 916355391 577905224 589481105 986122245 995476690 332374053 468224144 621365871 631460392 400492873 633259294 727199765 925627783 855336158 915656175 107987614 353122416 425865151 483472187 156914501 998427571 639842433 778525880 824706444 967581488 747691910 759583136 772183072 845213444 899591822 981667522 866994917 973032653 865777136 936121831 273271551 282265340 177223903 850288394 56471397 110549643 35799206 261730308 795273727 838855755 891352083 938464444 450182704 876617810 348936121 424023855 183206822 644411226 586925404 658082082 49930318 868270689 194253116 904039350 344329558 824589644 685366466 786533597 679713142 797148187 518906703 760104660 493552346 813427150 299173399 353090135 330895444 363653929 223693351 960729379 250943112 762657220 713572946 962527512 514783178 830824936 86790506 758129594 799213418 934407423 753090234 830324729 234637812 345170360 39250184 369383222 690402235 806714221 343241580 746812329 173430020 215306193 979768786 990055512 379053360 709431699 465865171 503842751 21314451 649710788 843214295 945060820 534665814 740509886 485116824 743699556 694187311 805948698 929770415 979935028 783399754 842326538 747981005 985275796 211538308 717120040 267079913 689656540 387044363 988854754 344486188 499849614 399841879 839877484 229587199 517222949 731491643 767877767 986514371 993275938 284087167 514738640 452420882 464901177 60805648 601579087 859098702 987964658 213180195 245660401 19947577 264033420 48292992 740392548 883236983 962660401 452888403 730688412 717438177 840976457 886295611 901361855 721943113 980103116 55032410 86560229 821065177 905066084 583058032 885113258 155514379 775228017 599651197 931984371 94007005 558746632 877264328 935946059 932711088 953539803 329012002 803632307 223391814 739044996 210211609 544952508 890583903 938114666 402698216 451705040 903220916 924291779 893858273 931916807 607429562 815654831 779569235 880795865 128648269 299338712 482424956 621778450 657294704 688041563 634580069 955564815 817646040 861350254 914017770 934579118 277111574 697087732 37351572 552464444 321738430 550454849 768420046 918560034 481754718 853810128 50311994 836078236 627859690 720905913 759086539 814178269 46959476 222824398 907566963 983026914 907633386 918045028 811892823 877414129 380873430 544022927 232596523 362417113 151268045 636261544 476707495 901939417 238150763 369398271 137642514 775669289 607340791 740726523 323908913 940159571 399176925 455066240 952220595 958542761 78520684 667513122 701813892 942826990 54551683 515168062 696225817 903105180 873276257 929532734 659906740 726639372 117897765 947874162 235630769 936810184 660690346 696877702 310097768 615399321 466870757 477705534 931666193 981065253 803359809 816486915 586568265 762899235 142179873 398177755 102442667 724227786 696969800 910452107 744339516 757313160 357958519 684900086 719721261 821613902 437088387 630420014 335554546 549561744 614352015 934354383 709338968 768702032 19244462 28545403 219641877 990626373 732269601 989782400 465577637 744657866 411659153 848802222 440500610 905294461 783852824 829036268 913764549 988295900 345574392 865086713 620730386 871530461 817951379 836801869 96291737 153439376 269291935 786846705 87042578 985940481 771545863 912899453 50537316 466695319 703072129 784249439 795948545 931258548 180155896 583502073 151274822 654866977 954246225 983885411 365474115 909932359 416904178 549821859 253071877 739553624 642908936 982916169 350140082 519854262 565202981 737942509 815938218 915362442 637687426 642498921 990800587 995990375 435866420 510152286 617888740 792421179 242519492 376742665 66834778 97664841 75771850 303832977 269216331 566049706 650834853 940779644 207540989 732119240 847075701 866360203 535497946 595462640 480751189 955030439 631575509 895627583 937282086 979313936 567398413 920852534 339931031 551699897 907318 341361181 222997985 507875943 832177228 938758171 638467557 774300816 231147462 654699932 925305102 952254381 129414851 534892298 12639054 72871950 949752037 951703875 259477519 529890233 708194714 888006652 143770478 616866780 414111534 571420574 451576351 951984170 647656648 690259820 137246215 298100210 906160530 982036931 108327991 139469663 686313794 938284913 523071939 921923919 915505802 955193263 354101678 572518331 435256538 800983213 292320271 828319943 993309524 998311515 5592745 290048054 20734410 638631349 654617901 714273602 735248652 839396821 545629765 812376265 702767981 707540400 271823194 310806732 456690705 868597769 785038299 912874738 444403634 958034058 872498246 878625457 609274911 742058004 684587695 871335854 728996564 798968202 868577929 884554174 805877758 820240112 531168335 584367238 193902848 872415263 501217089 812991919 505750556 664826174 772205539 852457069 501435738 608584250 608796736 764193998 920965286 943497344 662792952 835005439 477919899 769783026 627173490 865511079 751769395 914565206 281837718 666127679 513995297 776016915 382037895 598144583 752731786 768637588 293555492 697328428 988610311 994079043 815097394 826800265 905794169 960134603 778328917 795810377 766405552 792195101 32758771 383639446 179196120 236319022 603252541 709926199 651274617 974478388 959948645 996222480 613248664 946282936 831619908 881793093 596727198 735273891 26969939 952339361 189123395 823540609 666762303 876719152 127679229 204258903 844359100 933763654 236680654 925279570 76628251 658909386 85663530 589683742 67133615 360160208 270017850 476141760 198693986 603902163 341338823 408848320 830409808 889795106 418829499 468593198 251504423 470752214 26370763 427188510 816347920 839781724 941776178 976953468 906723875 969097329 425729752 562521175 93642184 623341884 474286355 915480344 953052697 971546462 363113550 583744855 419497143 829634859 776929911 929640679 858055224 957998483 431155256 940851471 317737730 549391624 894023966 964539188 404602071 743534480 353889585 716271740 364253289 749579556 137415928 281050447 461376494 920858111 768818012 935311867 116203557 221776943 638743174 941877169 430091465 437169497 402115450 456936158 120943686 140232528 208262066 807250551 657571618 903455278 40102082 967593182 607287442 880842426 284980136 436312947 843710794 950816758 710450709 815835388 920514783 965622012 462733036 489821425 113650008 310300174 441139629 666377243 25784499 266654898 102196850 291833267 293159515 602082770 384623371 614912441 639153791 876349008 730041539 794737097 842962055 985433080 28168646 256764417 924153396 973650425 94186662 982698118 822969925 893098252 900906668 938016491 244449715 811376425 187794242 745949642 692397081 693005993 128501988 376469157 145536467 467406580 651319620 953379826 918227904 961834946 602366484 830141748 793532138 808321209 756841922 794408365 794332903 911458322 428457782 727547177 750151474 832669005 290689752 497353902 905293996 951499338 921902626 929932048 605788802 856394142 680235732 751591665 103177035 653010613 299010698 541472002 381492310 419394958 458315466 831143108 828484896 838600067 792696525 982936780 930697230 947300999 29001381 720733066 694940473 993550832 942286280 953362123 713147584 796653846 95554981 545826793 127379718 486136895 822124741 842331535 965488579 995966352 945672575 981413753 552938404 654711867 835985802 877468128 551384155 863760177 919248031 954755691 672195483 751714921 189904948 725617098 869620668 944864817 570574913 926468889 549940959 783447905 420723494 480698154 140003119 594542578 446593958 538392306 674840064 861149648 289300182 668289031 770369585 807905517 821889182 913515483 758030627 895042593 60443882 864546518 934418413 954726786 700679283 779539167 236340924 612406400 520199854 633297882 739133808 868649009 111963442 474921711 591323858 748663687 957658627 988624711 251063492 555373939 183056271 515922142 305852086 823757861 26957631 324483280 443900373 938511202 583937667 670055552 291981449 717614999 734540901 906432243 355437442 593698753 894966777 969837482 964179214 988315395 664443973 790957016 996478095 997865987 20066915 860839167 497944074 603448885 634757595 654979285 513851541 862387417 373321282 685209487 742097131 878291237 621271643 625110235 625499947 673435342 124523562 272402179 416747866 984497157 322144623 786318202 968420230 977772828 849531050 969286349 586236976 897058325 486530312 877657563 349300994 354447523 753415884 839988738 325297304 941832386 231711844 326746947 275477175 872485394 563929339 625210545 292652343 470003243 136574090 543145144 679288393 717937208 320031945 867292482 957485022 985080859 506120439 557144139 443762002 491742465 721516017 877300933 348860071 626320773 441234154 836330243 17762843 693538718 994319340 994358137 719075529 749852344 255543293 538011948 245550879 563403758 65812454 120233795 88213803 381120325 227841853 859905335 986436475 991832745 534487760 639710610 923443701 982166150 806459716 949475707 50317264 389209134 719424798 766446099 581312388 828364632 572309146 977920719 293316234 390729764 635370683 794092378 335040010 786188995 501630267 523330257 565934136 702447111 783647347 953247464 774747422 951246235 170444505 516794011 554576343 628544414 650833347 943666649 155187944 848935597 80407261 889012470 805119618 875743575 922911774 998477804 410380059 521995407 794195566 955465957 502535714 728747579 529442273 903614694 905000705 937894302 276336647 554119581 102631743 709081033 972449369 993743790 865450417 977156514 155662028 592667927 604424289 670095393 95758361 705841777 770928785 813305206 984886911 986270233 989361598 999100293 928845861 956950432 114947396 315546065 661320563 821399068 181749133 483396770 243516849 993058737 452916462 477757651 797731970 806175358 519131671 609227852 315893857 744155217 117356548 556204659 479232201 487670602 164662761 258382298 108407252 309621473 365741353 520316892 313518780 985647213 793696175 873949705 868291844 980309385 553013183 889218832 629870056 866180245 499976411 881589595 686927043 766042814 519201632 910806572 59723004 323317555 702364991 845113071 940995684 987514183 71752899 768091990 378736111 555216578 450914895 488600272 565938693 851375574 437338577 582583535 659677096 957117902 263714602 729904178 87842076 177626374 180935310 939635353 39479958 876443722 717839645 850528483 714935437 996853966 936086030 939954592 645642474 722412655 752219979 779673561 901084074 997427075 851359251 859529432 15096328 108536484 314804933 674921952 135161949 204482868 165854902 927539654 248800042 259555505 89294855 589388291 871227138 931182484 265430724 913516363 378083502 739218949 147906669 763874049 207289724 402277864 859319866 868453107 296799393 684557243 96807975 498048824 177396148 689929403 435970406 716680606 898093246 993065114 255079998 944994181 603062736 762304448 308697291 599993137 451158560 482245858 894342778 934366344 200498576 612330074 734729232 760333772 587768303 600803805 294352844 888868567 494691399 750265922 614511521 657019053 569929075 880582254 640341809 843112143 461254878 906286122 697227809 911226723 73442431 705002930 300941246 419481064 298227772 855970200 884101785 931704338 388003571 720019226 947983442 949148176 680576304 710310286 207732633 668621539 950411708 951001618 72576306 243845393 987669405 997915427 837016479 861439518 355930390 542132683 547673318 964380077 579072361 727614577 961054052 980593958 591377912 889291346 896964205 997426290 844052226 959961365 849849274 898451184 321679831 405946431 675387737 747663606 510026600 568617741 697864735 764472064 581277204 839318167 381470855 449375878 960414125 993617947 289134874 579082742 514134003 524281149 601440104 935113623 654366200 803878223 342750762 382556423 711278693 715055663 979463784 983493196 182084916 758526372 375723288 849283479 307818349 518272925 366565057 599682623 67875038 730035192 132689914 979302158 991104604 991211901 400066092 911589471 567280320 687539026 747473165 787686944 116967577 218100318 964466476 994393244 210724976 973842475 912521564 978912964 502852255 959616416 320639018 808992831 151580621 200178382 556837160 802296984 720844431 736929405 383161977 634102428 809709352 982308300 962424551 977195287 354438420 740377397 300296404 346772716 159891365 887482434 682137011 973848855 918706515 988025910 595273353 595535096 491949883 756954730 760528494 841629299 622584313 733777945 979544689 998866342 881840353 977152760 59424157 195708171 924625331 997285352 622018855 774733659 986073828 991153240 922372867 991016963 801957590 971806274 185593631 758066481 142396896 175041585 499603065 893353561 208546322 733600399 415294253 912295726 854989524 905800730 905015252 970425770 229029297 975098948 475708227 812042060 490539101 966921387 394694456 412703055 190915219 337570090 726685163 895407127 602134760 953056215 294134192 395046266 817534367 962827512 946803317 987990701 399075653 470897735 756281286 818676628 36580360 673731415 428634392 614774083 660553552 886706655 752267315 839592044 946071848 973372054 914742770 979280954 988158082 991296707 625460587 930707349 343293929 399422783 70657497 222276318 732171624 859464474 885649522 899624477 449144151 906401406 284169614 567162893 797241679 854714247 376823176 458832784 327265975 895220891 652938102 812701279 183681197 214166246 17524409 748067934 987224432 993611557 118247673 281710679 765943813 989260959 222671246 958510443 817317692 864025235 187618504 510177103 131057106 491410242 150074413 486197798 939117067 989257555 998861106 999101034 853485410 905556355 889447507 904102941 339464722 653538591 946924910 953074834 377313411 916355063 503336210 778580750 427420788 702471569 946398000 977457973 829115356 926985946 757992983 943949564 659990495 943286452 459223835 569502091 466684917 480229048 533132472 808825865 11518234 770459471 809461814 965075688 561795996 780900597 270068130 704356224 803097551 989042564 881110879 968709419 538334217 649107571 343550527 486329243 672988316 851707731 937561565 958320597 270150769 464423443 864181202 974999505 142320684 676860471 170586836 876821787 569504923 984641499 299864315 667387196 234282316 313307172 808269904 966920770 131214107 161322487 718828888 878316805 896421837 898648526 240866783 795805286 723277026 955522130 512463727 808763922 37423789 486729411 310986825 988657155 898087883 929822117 836995501 905346406 586200124 914729064 659688147 910264242 179101030 572008385 184373126 377421561 174012128 180836061 631118668 835378007 594669868 687037192 277180933 975211735 664855812 893803614 653706132 716765121 124014683 194713521 499375270 680364826 926140072 931094773 793789121 857990989 643925320 785144621 65404175 738242042 77469038 780136594 432899227 587517401 239547804 241652001 770445215 798578175 568362118 863321340 132350487 404615009 573847308 933194755 891993625 914801820 175399095 929066368 191153956 752412644 288247843 539503438 972261705 976274932 421434959 672976343 459007390 536397219 148804444 271209540 172686505 533902331 321796315 399016329 521353940 550920849 503823522 815737451 67676940 302397348 903599891 959606342 8935816 907149584 105409775 275477952 535242037 666975507 33351533 902270991 58754252 645521030 20262661 163536188 254292709 941427480 722230103 963767545 121349512 280090772 585277671 707427892 291089491 801346291 885901396 953124988 488561787 837550305 941527065 962676535 146418673 534832571 984110394 994205964 163155463 672379551 553295911 682694487 169491432 422790384 853057620 869295236 293795321 455110651 106181309 527322062 222929895 804142557 432970662 967382324 398678749 737134972 790758506 873675126 969939869 996493246 482893608 518292328 527916648 556641034 217637058 417672237 151419829 883208314 695207834 773476327 35383107 273132110 427078888 874667682 553524797 998701779 829772453 850681116 249145037 307617634 248583012 785657369 6513271 192677170 190314358 874029959 894909910 938717644 43086310 378725179 893333850 998717419 605122225 995743886 807081967 837450700 29001935 813986900 659711502 670772393 151824783 367128941 677960056 848561997 409628361 896665168 662035882 933077326 920333955 923029819 700338282 876746627 80570120 909798202 674505914 855659580 523263500 735113934 72928857 882586168 319364883 421746851 370958293 594643240 477062202 708547936 405196520 873476411 148911645 663639469 317228336 539606089 315212659 567207882 665856924 922141177 766329026 875163707 137971562 638123144 150874099 786551299 796130651 830813659 930683417 964122097 417309392 706646073 389025467 422268287 482533859 679264244 259316856 433012128 202294235 764026802 497349363 694786579 943401153 985909526 162459912 691476168 76258898 593799292 817184484 999147357 278280497 742782339 785604269 945942969 386205167 861803538 564067024 665201738 833847590 945807131 409905874 872507668 263905647 318251428 717426583 951494108 13709814 186236266 526942853 742010231 986150177 994327479 8463711 304177788 310853704 927719057 212921898 469824782 679795171 971953450 948725841 992026275 799943264 902990719 893449066 915709643 383676170 961681272 572341037 849018062 478788260 826131001 715833121 948544410 757333998 973304843 449737258 842135950 201419640 448752974 622256184 624849696 931398085 969308349 917311693 965766216 771906456 775746928 395048684 594152099 655031813 827263429 375607559 403188009 344644843 961491189 742418849 948429852 346601185 854641827 879225260 887355174 695273553 894563852 351075043 404483506 753071120 819930237 996765170 998149213 368744078 382042796 207365361 709038336 409833605 573888285 133922627 247793868 197426230 696133548 935527556 962671215 886817674 900443049 569857331 656460696 881970782 884686672 87345075 429201501 122568877 832670022 64622800 464600172 410294888 647761332 458239030 664000361 468229241 716449005 848559776 985548105 226344329 672663730 288852513 810409981 691510708 816738244 858531005 960732587 63474518 604323887 171894744 965737429 841176501 904222964 431632444 832758315 773812970 955536300 324250411 845297656 792796125 826418160 183851670 394908591 954663126 982417988 933575392 942430566 476965946 486539274 318668542 755249084 803270923 896335221 71665992 524564709 446820335 772472798 650550688 839081571 680747662 687636192 866706860 896692674 335151639 469587598 92589271 324943355 945889691 955531857 638473479 956754796 738709437 901854755 977415286 989670308 869439165 967467610 998569768 998611860 434662509 674706110 951825945 960278384 281984379 996579779 694073427 997179122 356383150 503281299 452017738 521449065 288319289 420070693 441963613 553990236 434787309 602434283 435590348 523702727 745372642 870083421 587049632 802694506 164000203 367278373 428673133 645189872 305018757 350793234 562441666 666871913 597728126 704302294 383322702 413772742 66984766 90553530 537756946 561162437 64793182 775876339 10165572 986341654 920640283 991250923 873876022 876308046 691233248 867859072 44150851 645626782 126417163 727738417 13222076 247591046 996777528 997602869 926772584 994511485 229159441 918555749 215406520 247292613 434599747 865797876 444623585 487504221 567530760 717341560 321275003 772330924 942672382 956807162 887621387 891990051 644255871 728032069 228094976 447681687 514294611 886864844 843019173 930525148 806910992 897218137 492965811 702145934 937925996 954793156 564601123 596675115 486215722 587668485 438374586 789581672 711209346 847329943 363698652 855313724 681309604 702102618 246612349 573463120 575873845 893136034 62533713 475794052 239576652 793009333 341202354 721236457 258172847 581255334 381369171 656261485 976451556 982689312 351816301 904158683 876440916 885500022 646016970 710445751 994736395 995783478 341837635 868944942 413372060 431412209 657236360 720959151 427290931 575192481 8443263 616792207 16480098 464884876 775048971 868352010 505027847 730742784 152069670 697841923 23241306 343516938 662212713 926975541 187514830 727304189 57927519 419073498 672196402 800493076 147988280 349205216 518687880 674562275 287207291 718117903 967666041 998307986 241559252 404762081 415556924 566723831 718678034 726349008 165454539 398843798 706267652 755089097 101972169 305410150 466355846 602390975 623426027 658926391 277407627 389424071 67139334 573505018 326516613 408184848 405728361 907117781 5549663 984594194 807496224 912078153 61517689 550521108 713607362 727019757 454225751 824193383 978416073 979722141 751675904 987936542 665671898 837209657 867205688 994374700 772156389 926103064 226376779 839133414 643349990 818181905 766584997 874837373 358945584 760001586 986739018 989364315 824192366 893337099 520445148 537680522 129626415 607413530 289390392 476924859 362383215 397187900 493590784 567663119 970081789 976461137 79763125 731300782 853338359 955437567 283240283 780911263 308717895 954469684 719377081 992409454 807274627 949775105 866971353 953007588 277414380 637764406 332866288 562958875 942527756 999233671 336832983 582416878 591098156 953295190 973194300 987431115 387712070 470203072 181491361 227054970 734528651 945047066 532366928 937329209 542483832 587248254 113346271 215021476 785706206 818596180 664823409 781510831 408847710 562500761 231549191 761868661 354982014 449595837 596847027 899844970 289926735 846139807 934148717 946493505 679622357 741060180 92875182 433907075 22004540 198869018 234591390 677182245 795702343 930860486 986656078 987221449 260117700 500468479 830097933 938278217 72936719 962720812 681219838 804000667 772656132 777899483 319557206 620022114 304025552 676115252 519590711 759015743 958605923 972199745 177762796 569549699 631229405 704237848 699373228 838774374 596636054 920877027 228911743 402675763 662114035 718633790 1210182 763235148 151653903 313740387 748735326 757388090 240027417 383517067 878623732 969085506 764378295 991647441 819634305 826612991 916979611 984101193 195010649 234673484 866328475 967224881 208836094 265963296 337239677 544290948 643160016 836145509 602563712 779205898 741433260 765447675 133613385 769706741 689656773 696525617 670537596 810729518 16452680 929412269 471321033 612523227 310781456 778073721 706080582 932453309 620507560 859962195 312960570 749145689 349076645 454166669 482168866 733285618 98535266 167976786 731546988 990051937 470907517 859329243 897657364 987099811 710432216 729016447 718673895 821043718 459962830 498939802 909885687 933367397 437164041 740915052 353671258 697984930 186873132 906420368 503297618 944118177 459379795 855740403 864654103 928285408 802923490 845809115 168353049 907505717 225281471 485700276 208323935 980145977 750688612 792358712 311380285 405908395 965211159 982810532 362193689 798587046 618728680 986179489 490620748 927677542 666140991 997121850 309112413 788815978 420557454 780913289 245940111 672363310 861207968 903716621 480137108 650231170 439772272 943922777 46784760 367028397 575851795 640974660 182090827 866484913 77256710 237234469 111139241 139093720 342667263 448534105 991005797 996573893 474554508 937864014 745032328 912322696 315393849 718973159 751587432 806110124 753692886 952526441 273216929 604319935 157670283 465754208 590664770 808141754 776121162 853685601 553633632 665623376 554537248 965842273 300836516 427269772 12728898 589927849 878406463 961167785 886923570 905946223 580977166 985158145 436687817 653676805 770647477 853315737 616346127 878849153 781921694 904586855 84510039 265120201 816816670 926200503 721007893 800214538 611960739 698472963 677512835 906605209 365733300 474277203 763618560 889617732 466376504 635562309 56829758 748208555 127345380 453910116 979377288 989891682 47168549 396893726 247946155 569969475 593188183 971986845 326732538 553622643 809256271 953991112 354046442 734066071 884914761 980604119 122444294 527604564 193753438 897534936 380508609 393326305 429503489 765271501 130928123 383429652 612062544 710290539 9172727 445692584 23496164 936212879 128457136 870457957 99530806 476301510 76761910 578386656 310497068 863655524 965828454 978636049 974099475 986315180 316188475 630904105 491874711 812167801 287452141 363467527 544674765 833336848 755634727 818580824 596943580 843602139 482077005 602612234 571345121 916674423 715928417 770996385 482949352 727381334 247748035 932271037 810369916 913387858 112673770 406807751 537581406 933880941 360584172 445866193 772486861 794278572 592928577 754634950 744348718 887187553 651032351 918981185 263940890 904829907 589136807 702788661 90155800 158456450 668209735 873691366 394279887 841795065 213310233 640831423 292723006 445058615 35330635 596323212 615411784 919357161 237360648 809965490 584337127 640557007 348092438 905361302 510042255 575793551 383150260 470650017 677768700 969418675 78088990 549859036 220072830 314163382 58781984 347968229 915545103 993020490 382520470 820150753 239128227 693100244 74703024 549291846 611240660 729051759 686701151 990345448 886290600 948385735 634052766 964874267 901933017 944536455 816206367 967902336 3873792 362285507 356066031 524826024 448260370 998992400 917653139 970789384 167420074 716707368 213232255 498679605 320819387 702780725 706362250 803004481 746255758 768091382 886398192 894710427 318239874 983806722 712458295 756741127 611911062 682026417 50751372 405360682 418603200 753841612 472916980 792282162 103407598 491317791 162978739 768234702 46898752 511043293 28184095 82694853 367840394 437398563 78458412 678254776 753974496 894837792 304257117 843190905 763986685 780038742 316732712 711995174 990162663 995543652 615027000 623956018 937164831 940261990 320358521 631104378 313988876 318196584 462420919 812376873 182550951 654761115 797604923 911514138 484041955 545295386 840586423 890740131 986436795 987581067 848638811 959312214 286720620 964349876 802145966 830208051 90965277 496262618 254493947 507248722 864004597 908004570 512406933 636053177 36012480 593674289 96838893 671947880 850381461 938671825 795499175 984191782 22907742 956426042 831310193 956285253 510890709 807894195 938765553 947235339 271372422 771845300 351988253 936429979 810247713 871188651 59845464 78399127 837465383 970800155 607814152 721289228 117374246 793877346 288866134 870060177 185829863 461758462 155744476 703683298 339192060 933065203 441494645 720444677 286669678 884247303 652225935 665341094 151752966 667700243 905331431 932990438 593975373 710619240 892756638 958630053 595407983 781166883 610428750 878646908 638756412 804065898 10245947 737004249 460203763 946151486 743864012 751762992 649293603 961931229 364295136 956731637 900358397 933572199 989396334 993573648 428824421 488740596 364223549 581867682 598164209 860798976 76349645 673077401 878260752 928767809 791902912 877137864 551620948 665577276 766940605 778213606 464773157 727351544 806386607 930954909 119994786 125596561 764142926 816939235 229150808 387368460 340107923 739469900 259378597 338669823 97146989 431135546 209003827 898213471 700244299 817049223 763119028 803730353 210653533 548548961 289861714 731482881 589122455 735517000 514199095 643827322 121631362 411873084 251083351 971803430 648835623 874755144 830842137 872931202 376973527 758697146 777328558 997210344 685204857 816292309 712337430 735051458 513492876 748049347 45529451 880472238 81439797 284565033 996988527 997091475 205971076 520649874 1582999 516234029 120764646 627381181 721394162 778813747 698603685 724783781 660098452 830740370 714389753 886859838 93596684 228973551 736342948 849225459 396652904 616956191 791522051 863751226 50681280 557676571 541629691 697727337 120240764 613355792 840880473 917395195 838114296 971837619 626748720 734340282 608152135 750077583 944596717 953670259 738388706 980828924 266570687 497111425 989056006 997056501 861150886 990476940 93276742 846340679 103479214 632159968 236092769 526229584 479949521 625415209 826319255 898931720 450102845 770569856 816838726 839746778 886023841 914882192 526269399 670905449 240498005 467170739 149059143 631526863 929589457 959953174 924698589 981935820 965510555 993901475 769820085 860431654 98462050 930883446 41768952 91647391 771744185 973870753 456667114 649057843 664120510 691714891 111345999 486150217 395982855 471252268 393040952 424012381 285454909 370753558 236651993 341673274 735513526 817717340 952821510 961911567 489435075 678395265 730337996 836638241 163104448 280614843 286724773 806023556 549035737 660438064 393718434 629941208 621079374 900399714 690840365 771238984 484810170 574957235 410749436 472313061 587235693 733109789 491267275 749985331 992384454 998945140 930718490 985594270 850054504 997878577 621503067 850077985 96845670 595222845 710074213 989846671 554686003 592968188 776495131 842303235 605398906 918449572 228794017 352913002 859053528 993345201 335879868 864462627 541172712 628429387 61702760 877451123 622716282 828612123 526493971 746419328 587284660 997212453 448545659 459686699 173356761 181610516 458946718 528193276 310618552 380207704 443344920 787463610 469445517 536608849 423281399 525499532 526558212 655863224 752495755 835724373 205019076 308907086 124970322 910021968 532978494 676080813 136822785 524802374 369252006 985954431 189572229 460452649 925642788 948099738 453810541 468486468 342147774 630906756 746894224 778962132 386410068 983676204 693045191 884339246 679702684 941639654 107640019 808593319 859543455 878320779 90413288 124783897 19809776 414385163 131005128 667494323 313221655 317940360 868844911 933782914 832645464 990957273 599914877 666951713 253217078 443897372 797628880 931726744 692931569 882861672 167584601 703537225 635478115 901154773 866678048 870047148 716557903 879297543 233179679 308672092 864037558 923803739 32653800 680003246 967911612 980069194 744072107 940031155 905804606 990005645 177716707 555288914 752962293 786083707 603042551 660386685 654352391 899869515 994793490 996480193 74300796 350808933 443419115 910115330 516210947 820570625 915240595 976128157 591846463 797563291 179733788 789817668 858249382 986228888 888215042 940087481 538330770 808851840 37712640 237361120 928485407 943360781 420140087 948136994 424767092 674624300 87142560 571579138 114796546 166730964 466834735 485278105 729859440 821166146 343504077 420970430 351240015 677810101 563406399 672648798 34049398 262593174 73720977 634350212 442995760 926650758 679239864 912231693 899673578 937895664 623247402 741214880 613466002 632425886 278739359 637173956 909092101 938661360 601974539 784969700 304002909 636528294 880414525 949444634 204841540 993715523 819728683 880827126 836861217 858802646 614275315 806073212 33370771 885388053 459422903 557193617 174943410 991019766 236547259 379225028 470838001 671002259 303854121 332279295 27228148 791539376 55637173 217663414 179320954 358534348 326962016 350746457 721990514 947303693 583956655 647528123 248210344 348941934 875548380 945760860 580814595 849926404 311343040 649106634 50903894 923644862 692874786 817436361 793388303 797455746 283221831 981329108 453124915 565430166 415105889 723486670 970583607 971889460 827701467 925438503 123017374 411549792 831866042 925819785 69586588 466138203 820755020 877272993 783859191 932369340 667115830 913140984 217125607 599763043 78871079 336446783 584942510 997916929 378426933 540404572 891446528 977239160 744934820 846159834 693104307 742264162 261364627 470905737 728821065 824153924 692830989 905189107 67805362 176052341 844810779 951406729 141598504 960339884 906199159 998279903 339949333 497433890 197426050 222220513 1547584 238995436 221968200 448073532 220637048 825947769 731687112 849372281 610404307 720897433 736159766 910138363 322317035 785805150 147690903 781730549 869009514 883396478 379196638 707927616 166852226 766987609 63175958 79970568 10654118 990682220 685059693 867904276 916187215 938872609 298998637 745407961 978327246 991803203 957498955 969397476 604717173 824466774 391540627 582432066 315379109 502339958 172484947 910247085 804409907 849409354 865678749 908842694 746724604 999049942 902870744 916348440 423461480 703310519 602345913 615908189 862183624 981011647 895892811 958577781 223432994 788655730 176550002 926904780 515873411 545511689 300822691 354380211 239985805 741771515 241260760 684245749 590060449 932785200 226546627 618242191 254079860 460883247 75176013 410402248 707172632 930902052 979405638 985908504 528599965 798210312 585416492 962765097 800696277 950680056 263929126 804087651 703305816 866492151 511313974 844082938 899133149 960313757 362235120 486536820 269035866 318705895 299868017 376906581 58599576 425881875 668441929 806942450 420481755 756996371 23697802 749932155 251292421 541351649 319998964 623508864 369982909 968873226 501011491 990461560 414343551 896481772 312232568 538153740 192358603 539384946 471290562 994699708 343623015 487164036 245180453 705217839 566947941 929218047 677142000 919351864 911662985 919736758 293038566 769683785 401995827 445410370 900115604 987589197 254396481 760530992 624025690 766116207 939786216 989971656 971356812 974362370 244093717 642067729 16789823 790433288 550395961 690941098 934010149 953341598 164650483 186623532 874673671 949786158 336568066 933799926 104519858 815840769 970927178 985163777 145685129 432410145 852745472 982634462 710745535 993427517 187155380 625933040 897790172 951586937 498065936 669167186 956394964 995077889 116827303 669553603 132031896 567915663 166129737 667072122 868587965 929901736 558828809 693710547 315205546 365397530 452594329 745837169 934244983 991803772 724656319 750886835 875012134 981922219 786913259 831193060 595652415 764713306 934767503 954735270 200152064 389136685 333909013 924742636 878926372 937068589 50357721 565918420 887514079 914593199 524825906 660721385 904867989 995477067 303726120 434672212 753247402 877671195 111796690 838035818 498402110 908410100 193326108 796303961 26653975 472871821 795895482 958970790 856694615 981279070 926044007 951657888 141456067 808912461 752991277 906263527 854226408 979617147 787845177 816788064 603902729 868720552 555380440 590366632 311006688 357598383 452225168 948102193 379382022 649597688 952272899 963289278 207849044 818209134 749980710 794817683 471489396 909398401 119560081 696865477 337426308 800408921 717166784 977052359 458050417 716904944 31756842 931236654 687214574 921341449 810678282 878329926 317833688 951783979 238865810 567820643 112506825 217577292 376850136 453475281 625589142 742234474 306978865 667176927 154732676 858934312 199211412 403809925 149451347 723977596 435237001 652956039 67333292 314174321 364147720 757743880 574199708 957338495 350255981 929369355 867069243 947742955 783353089 876446499 417766658 433040574 693418343 759328322 735928912 948650680 310669564 480966848 67988407 982259048 325119693 502562559 656049672 702850181 615629490 944305056 906788522 969404026 206397440 682073276 840408762 964612474 693374749 724631047 783083246 919435201 380518701 796832177 667850742 987841941 770592625 823240063 826595020 831686097 66541377 998043970 343262693 929379588 468411706 687293789 856848262 872255157 480006531 672551289 557383265 822954625 364814257 810597205 281936551 771608516 920688046 929575279 376861329 947294391 324955637 524852239 551012491 932313751 711719347 993000430 79096287 215490158 208439755 964298912 888897373 904310222 442359551 673612855 799410873 823521845 351889018 365639124 646633538 935371928 707991820 941874629 107114243 183985413 913098425 954158452 37664594 494929959 614221355 747130614 905053249 978854120 140552261 994281839 13992482 958171048 311304849 378431857 182467234 773178013 723063565 868707292 495166127 963099384 994723453 996098070 257569890 978398018 368938949 442623671 991598696 993272137 988315650 996133851 283600442 987445317 820862103 864652218 873944667 945897512 739712411 837927153 250022117 540808414 153718274 221767528 344812542 765359902 581132631 765077379 655004685 792156921 343359697 691747617 255430040 309245411 438696904 573731163 903070508 933177788 541672005 571566675 766965449 943865718 98431242 481866584 93225391 863463682 94673912 424889029 995366931 997135122 928318075 950644329 251647030 494762868 35521038 105416148 513278182 645827309 916185850 986277698 87358004 402557421 28625484 270037953 410732850 414260182 290353972 393121506 204555605 760044205 834341140 971676419 740636231 762127836 829754455 883617221 591577144 900410466 751640627 903018923 713645750 794435889 80207839 289988170 976833842 991726927 704408091 762909735 764197642 986638489 908643523 964656691 447805583 855176225 758239419 814019942 67978310 823114866 192237989 383502767 680154271 708285395 289070709 868848592 136969667 958475482 355233634 572083181 378044982 907466406 533633536 715532733 353011240 536263284 100607915 952745535 905212042 967315792 808794308 977024356 61640043 843544712 616307518 670244105 277701357 739067168 981165875 984931699 524374644 684143367 625514713 689698556 459879639 771183315 366676293 520652514 579589308 601506379 764219860 792688058 7009865 143763370 261818229 389542834 543403579 822136406 150899248 799287107 624643385 888831486 72908338 226976579 566685037 696399560 569954646 854695811 348378155 419294287 246904733 896400124 224031977 937061973 435142698 937895757 831326611 879344603 761631706 937415164 300773970 992998824 922351392 992918426 890337539 977731169 935103786 938037188 382683262 395153691 68235176 219880798 566115358 934751631 812254546 986614230 586474261 837318314 453764227 622209711 830568336 877527273 121155043 831831856 244385658 944542866 316680503 408551099 203070730 263806724 607861840 720162520 301297118 310516258 153749933 869541694 89514987 316708408 714501227 844570715 699001098 931417885 153090140 922532899 315874374 936302794 439768828 883543731 200275094 384895730 931466341 985105833 902644709 967451995 505831999 677994707 273902047 916372504 895257108 969042566 241166628 873959338 785817933 957317298 305130616 724212110 974766322 987057989 502961651 890688949 884461956 969582640 315322461 916742390 362408760 511887247 69311567 603674877 762363830 953001427 343399163 863451833 520078082 617085929 74301727 764037148 540855521 980313888 543110450 945586695 380066239 954095985 371465587 429089557 398671476 777255123 954158494 994781993 809867357 907313465 736487652 944657642 511361216 596862663 55223377 225064983 289127898 846778005 579869817 764898764 998061147 999390580 6372356 298226215 531341745 992265760 389514857 872455091 675115151 977834168 632802054 933307446 57935633 107439779 372988250 601835214 499554814 651704178 601724918 776544867 434799900 495462673 875875864 931714099 833094728 939324018 344826319 594176893 996941621 998007480 226820224 932907694 194555986 554698042 892045677 931013407 356552292 434612253 820451172 868022295 918370274 985535848 427960367 980486159 752093782 752509265 144460043 721062298 453527237 909008446 132583693 585381055 826126180 990846373 760323260 801009957 840849027 859010664 905262125 991473721 626072410 630364549 437951958 719547771 808223156 831375769 494946827 877694533 159984590 579610715 213634791 782522251 867741226 976491014 597747795 788847239 407590139 827702987 372062761 732847512 649872533 747990445 21913395 298243503 197179063 762727202 837542583 945618346 310771276 487813334 160347106 912736323 374770806 976065904 729801272 942289586 119277614 859901901 56133434 699254378 646938602 826943736 178550962 974118999 160367568 522844021 847017217 946038526 875192885 980612007 570017797 915215836 812451493 937835485 54548307 332378418 325014277 650171186 941488916 976399938 324721585 582491762 701705257 828609985 580014286 742202606 968092248 969571771 650397161 666004551 8896628 45027845 573041938 594966609 926771616 965103857 389951292 896729830 535010081 922326926 446726399 643764397 294587052 647698473 788964181 988646375 693014646 911251172 289372627 711576240 422568128 486096186 70850823 324110670 108260180 520693532 993548627 998604898 872680784 892484075 165653865 779845408 453857694 565515251 853087343 903619797 891664860 983197582 37327432 708205956 903115683 921750275 251394490 904792236 4775324 371019050 928697749 969041228 478759994 840059656 273782935 772384979 987244641 998542836 395605065 910745299 576141362 696139310 781630191 962064572 223680185 363554821 179559142 201999962 961218701 983394786 767632746 791469034 210310875 599238218 7494730 352887801 369778531 756231939 213202895 611912743 725088435 977667240 443924977 747102361 658688810 871318758 807319299 922208856 462968262 486214432 311850010 721840537 79779063 343509914 462541487 842963806 984629878 985829882 903963865 996285874 445723391 447472677 924664748 982746848 730426502 885483576 606943234 642717854 562872432 995049279 734946372 943757614 622067991 800059048 112942784 179477522 885711012 932442003 143501034 691283687 106024464 513383065 143737878 785776355 443614312 831305547 328311453 815946750 114834939 365713971 788319332 970060017 180843943 824436426 320366314 723160786 945263918 971384096 358701770 609478839 342934704 599514086 259566085 685966595 163652294 808615395 226166942 356378106 737417230 745638670 79614610 140872911 462944140 821577099 899447395 948371868 432708724 710066885 547107500 588174835 326567247 386729491 269840993 352077591 175856628 787169661 676759496 914616269 128238422 766663262 75640565 95817092 516654682 964240018 249029384 465604300 172525182 438719081 571509094 831909619 393389007 858107616 978561952 985570765 783393386 980976910 919487656 942463233 672107815 802289137 301588288 951457895 561802243 761232600 441553874 620998135 813111782 856048753 165529503 637374762 792045771 918575690 496775198 926988092 673907587 710993895 982009635 983131870 237289021 929881807 173716367 585468286 983394481 985082591 88587128 289726878 545793788 547185637 186119307 880380414 948115355 991716968 976223394 983843974 504873842 791390697 210356870 966244860 753722107 964989632 79617733 845821448 877749440 961543238 220259009 491386840 304491462 600435469 800449374 939363560 277214593 807126829 524308550 575655769 130351038 892403030 148342054 794529830 226906238 635906564 679007732 857375449 685299149 774737901 423228999 830002985 638135289 867959911 486722933 570256423 574791063 972434866 871415138 891031315 79884885 159009831 907097 448873469 507643477 572860024 535156468 630407688 296874539 940371421 539407363 556863128 614038492 663003017 489715282 607971914 649339191 693527611 16217556 324927900 492635243 749884842 796115739 997305010 413380212 853403857 318952921 694699256 676940820 877250056 731840156 895558725 602658795 909806795 466069877 631934458 204604791 524047451 60431267 435113731 380442380 632233585 636336910 898518096 704576680 949343001 930598888 997514141 988591984 989754414 76894334 227101318 795523078 878718848 113372656 218761809 623687741 962590256 623798240 787742559 115622151 439119171 675303229 759628052 247035566 968450488 694171513 782948284 873234105 986760159 201237354 532056485 204738662 454095348 203392009 684388667 832068032 920191020 782147443 943992430 157641566 932263116 343862226 838240957 900066812 986821038 655688904 905775122 740104300 924212235 56859191 138092010 686245371 807603480 162388870 302514712 637881252 916466765 389526937 679839291 6596401 157604803 522905893 948961592 218312600 862141128 429215779 498097465 867101891 994085131 81370695 316865238 559502423 775395877 100764056 616838487 764422903 885616653 355452213 476149084 920014314 991578223 931541174 954006209 305088759 769618505 973829228 974615617 905610834 937300283 285968750 647803492 205641039 591047537 995397326 998480976 41241657 690994659 880355173 933512442 366114477 985065863 600129912 904596814 454020241 775318572 835604931 943008444 91529053 965843328 640889760 973126414 461405364 728878078 960771820 970950372 633058635 889700046 486486298 686669165 581365704 791944124 899557313 934404050 873055035 963430330 394149133 529724130 761420819 770735202 87106274 243988476 826038957 978544033 51958183 87465169 863848680 931544960 31731719 502317510 66466238 744744041 144759204 534897212 69350135 224563431 199315659 594412045 962492365 974125888 296239634 708069469 511875141 743564067 909764859 921899173 181620936 929531009 302134712 356592030 458980209 468992293 567656039 752518598 697530944 790688540 938319501 945236574 581817944 587577271 30523435 492528079 675284820 741579469 510977635 523934343 746211136 897248535 965575504 992369505 910985873 957289707 813781121 877309470 107958668 256773364 165951893 565526360 370315004 995923380 787285397 809726166 399594000 755544343 190654006 380156910 170060890 596870664 421455877 537705613 580495814 717110055 136348533 675890463 249609451 988183381 127838769 592040259 644677538 788780679 676613520 741603755 708279630 723115274 264385065 908975802 583252802 677285167 306059667 430497552 931682791 939846865 82308815 699172664 587804917 755073451 965429880 991880730 574645320 771662622 598255343 613877993 683247126 845001257 801960371 829857532 194394429 217419911 143776818 746491353 709964722 969464371 229780810 899724306 266845809 834069481 62966903 777090934 861960497 894157026 248187501 742917029 630417717 783311809 949603923 996052407 732947056 947454801 752833703 769333252 857021246 974360512 995113060 998098595 885932163 919852782 411163138 586469790 203873866 662196064 165836557 914388452 60593188 146948527 152879557 517242593 241969472 774420976 946353353 962761706 510082224 668667996 204700847 786541724 733102295 983918192 473914999 881871209 463332993 865192215 226316521 296580682 190190969 323917643 339467262 907216657 951211091 977247073 56500009 438010944 544558810 709673278 541959520 851442547 382458137 910987075 41969938 726196778 627599137 811345113 81469435 190430247 925785938 976987793 633023750 945018262 751432088 882572738 558825133 931065872 79168529 842806739 615370512 800037416 972826334 992887349 376518875 413062901 138083483 431036226 585926200 799081855 380425665 519232289 779619830 924048354 513889306 888281084 31503949 354778330 995009203 998256076 713622963 718170417 149681769 267761234 784709622 965478857 207374556 693568804 640793144 985358231 581503511 646348838 793614715 946971285 157171652 602732156 644381062 919233997 156363053 618500588 773753776 827293431 456563899 700871370 588321660 987891975 176512399 179943075 594151304 845150546 450475326 881311582 324961065 909898157 597775461 936489070 156273356 387267903 207508963 855579092 893474193 899836557 818565410 917761310 429607009 745628340 176006793 198029918 889936961 931635133 408418848 513980081 347066062 859911827 307593637 583112112 744038881 788464714 111637761 208260831 998882410 998939911 367086844 577380883 634561050 983220895 439986477 730186634 400087574 756050015 151645163 738402571 551480714 775128424 966935876 986844044 364156952 515838525 75713052 415179846 450600299 836208622 575076065 780530117 957979718 964247501 429989653 905992649 109499645 517336240 173969422 645944654 216830868 573067688 483761513 679806142 572816382 852310031 781915215 902780001 300846449 336426219 428480926 867556774 270316145 681368937 825710112 956641963 797664783 988026542 671791529 844112450 96070969 382081844 74295031 251875921 875623620 890081079 579731957 827038014 218270844 432855912 657108595 761276173 578735817 845037764 975241621 986169384 777521969 810856660 860062793 941411965 595274107 662101002 537663540 661894369 986819492 991817545 450615136 890130302 608737365 734576079 527821232 835454328 972231893 974590807 869280841 882563032 176482280 758883874 226108380 309117967 56598857 766431729 21175788 865183712 502140711 510431982 602141659 807244253 74333668 542234637 571351422 978966648 192444786 197736274 530377918 937113568 175516332 349863391 620707199 655346581 175120368 505906259 564727391 833759402 382275063 926836315 735397479 888588681 299538146 508243265 464480490 966088841 417360892 681312315 757472526 900002123 293526363 867376142 789642629 855410877 319257663 945054240 674995167 690617505 949780310 965178762 319515505 744426102 707893535 865377356 81754811 934040174 407017029 586001576 808315313 848652076 137195679 515140035 653098442 666781799 739815588 873075189 173965408 616488878 255396203 951986539 587002128 728533681 797941112 867686501 808013042 959809403 285806987 802795155 367061337 973644828 441769756 623304581 709783589 878136749 781765087 837090976 786022543 878391438 933539180 993279107 589332701 686301566 58911881 174815927 768532631 887531320 838555598 842954652 704749577 749350348 676564047 751562311 678042534 946686392 753475825 941184342 727851059 787968769 887330146 991287743 593739392 884983234 976967262 982446090 130572339 642844986 337867779 439436673 199422907 976174431 607897602 867902109 888982299 945581044 579656883 732649922 439421713 859781349 257966992 559299191 98323069 735379965 122034019 867173195 690207622 698928460 471256165 747482919 358686520 808357549 886420162 995295688 18475330 449796457 696534374 712573950 733423387 978972910 562183985 580311882 969664007 981972244 964237941 972066448 712813672 905290435 27828229 938503390 236226785 995819129 335538647 868531387 953730919 959322078 617262481 659742432 753678190 764391267 567281202 951679846 620905581 805955962 272301379 715361358 657541878 799837975 555125029 580093154 416199619 530300477 402058974 595491966 715369681 892983843 433398611 996229937 396234616 597706051 60698583 660296034 344514690 666288674 831435018 904981304 624926807 699617510 237467922 279324677 708510549 870912602 199744176 504955443 713752612 887800720 460419419 686101535 830318907 841912535 453850880 733104887 360627869 431416781 206265441 848649831 986046408 994778766 297344877 676626186 744144481 926942429 370464662 549152190 812683298 983519448 688268247 934115351 11030332 270311084 949670801 993895331 444795325 564325676 283622627 673715821 594454247 796677736 282214322 959977342 293039730 513797905 229367872 467683406 201284260 897401506 86774819 979944824 121426357 575829272 771437308 895555294 306383333 450064244 875090196 965254526 557519609 566946873 326199559 798810984 458882184 760353346 648231878 702061483 135118927 473863602 887528967 970147388 814848053 964823407 792812044 836160752 17833089 668325944 657713792 683442178 14653887 564535017 540097804 624041591 622934079 852400713 604366878 692051524 336367266 746107183 796390955 920933513 83595339 774899882 846577950 955384622 959663440 973703170 350478419 560480922 526885815 667854022 458124199 623162411 823559328 952173325 714567974 914806819 178543845 560450896 470032887 801606650 621923339 950716324 835387071 938836802 450625152 952068528 218246291 539621366 816896810 858606880 23013137 555622081 603329770 813001684 939153510 953014079 138164898 876715609 974120571 975482516 422385498 959769220 256991934 427184395 467765064 896599141 438603959 567388909 902111466 940934135 106940074 368529838 526526935 576173771 802515164 980765643 517848522 764523041 449459916 891837536 139276717 430584620 99697186 640018031 57131260 504831529 143696617 215654881 635440917 997132745 886983404 928052778 626313496 678980224 246894503 753342072 452099616 588200645 7519722 659684351 555425277 750809004 22023540 884695935 229226866 286865826 199806608 323030281 918382717 973962472 736692450 912130800 181272171 647723399 906484459 984909136 900091853 965608983 7302890 623990856 387778888 439826041 593191848 709754527 561487365 579263592 970463364 981295172 844132775 947298563 622265790 992287168 696519191 875179895 439948240 626042804 810331759 953254084 898851034 990961840 908827016 979207229 440147994 938835151 931876957 991089543 13256048 527589267 367394640 417915825 345516950 758643466 393980416 919954113 555407519 611144516 19233319 702656150 279709936 485811667 842121849 997644417 814741838 852439538 509006670 612487656 643231061 695608645 673138705 936693606 145667202 756598621 767612529 808292167 910384790 912401175 88149309 272173047 975027238 999061268 892811436 990432414 172530399 847458585 459444687 620166502 533688631 691445181 988203636 993577042 950479924 968054018 904780859 933669876 428014599 512823546 752809606 935411971 86566246 689467674 321428270 971126381 69268006 802545678 525265050 872343856 403750786 620313658 541433274 853750391 992179130 997000343 225703494 792444397 589210307 960990743 921487238 974475788 736107825 784615127 329668460 694754126 62304555 334106470 928339357 929891256 245959163 382462073 376312605 880120641 319308181 976113052 876914625 893474335 871144912 949896940 551928683 738916752 368785196 473306039 618369288 733122229 256198957 943764842 846944114 870955598 399165776 904505885 882853799 919772671 419199600 639784375 138143110 380144328 989986593 993597326 649526316 872846329 250953830 526341254 106971682 260398106 971983700 985594548 837379850 888354357 379290119 596261781 101998012 535502087 832623236 863663229 517054298 759122377 888905958 968272989 171924761 579480882 11173665 954790014 940280533 970360504 170739984 849583918 425539823 711953544 76119600 277241519 636531028 683679645 660528103 727735019 531312307 766602188 362540609 743419964 553036857 560712184 783017902 831010725 512790973 562504423 108589948 461350818 870141691 906219444 591819170 765235250 872182232 919935885 906564692 947691997 403838376 647675048 618734663 712177269 833736795 946677477 821966347 981781870 955886579 986130046 747309623 901477850 226891726 287534528 811138489 978417538 362513261 732527672 777996837 812838576 580070774 757345060 911231270 941026570 75361867 773064032 237954982 323102206 57972488 163626489 501793801 733278369 345390563 945711353 425743085 585400998 810105797 963104467 94741182 157345526 786725672 797118431 972134520 993405518 480082541 960688902 824990699 989190992 364069188 587611883 102338042 872995392 806890551 937758079 731130436 884109607 843647461 919967623 841192158 977207342 23654955 555641452 641770413 774031546 723331905 955680382 894026978 920297103 540085210 806952112 231841614 408925516 870114053 901025649 825924048 843496678 250316857 396551167 476572304 899294560 990087081 998188193 54572441 649996861 542355964 830894309 714431424 822847814 31429984 437022640 781597562 889368834 578844845 732528414 944160831 959757010 830120073 963932937 886279793 977511080 395518818 729558612 536830548 875362277 96445293 540575106 120159864 603646816 196801217 919383441 804321108 962659810 469024869 808791192 526658949 633835463 319092855 351224054 223120304 744946743 310190358 588065358 63240787 481004094 853949489 997132697 751946205 753391359 360647477 706899818 557173603 860924089 166407214 580844866 100487555 864495874 380240558 525928324 445807147 820204813 508752733 664148123 995173055 995414511 825820170 842165195 874830033 939324891 216271528 916055096 85583871 902433722 336697529 977453518 173725527 511119283 987841716 990252751 718847285 994689847 154742622 740099327 382045583 844464848 179517632 337746985 63155615 392226323 325995968 412011026 747208658 836365501 603504894 631865997 669977858 720334988 730964381 882096480 12608080 934794997 425809755 574661144 696520251 707412703 810463249 893614892 791660589 796095541 233681971 621756459 730467162 891578096 422456901 854130915 517574508 695056426 210145415 264513859 565119077 738554657 641920664 809912276 247593813 398569044 544377106 851478419 541383327 825584732 369160812 800480084 141702232 903200885 601486904 772681947 535826808 555099845 282517569 642959409 249461702 442318048 705848232 773855970 505527455 849878681 30758012 737927856 650650115 988222286 456905650 936677204 862364687 973927019 94104027 334165428 179744182 424908327 585422747 782893110 648094316 898575281 730835233 961114666 960951020 979360792 301622842 534968977 498964548 792874319 651645813 749524035 17653606 850308301 39994269 202902101 11010098 755008696 820540582 960626864 651970082 683605167 327148747 639210482 71674851 867170236 935259571 967895909 893472868 958198659 5481449 176617270 361620407 538101048 112575132 595918605 507584313 588780205 523296875 571061307 818872454 853321070 833393426 969123916 757571942 877459782 728774606 922994220 520779284 844705564 51847848 616852519 147347498 384542771 221317685 986104288 651233996 740852222 516911860 861712017 31712295 302883263 958700556 959988466 203476890 463952660 168691622 491504855 203189784 895110160 3168726 161004769 354433366 410885494 918902054 931636649 944866841 992896676 683535030 923466949 758187143 855266473 712058014 808448208 609022729 850954661 932148433 972795242 685387310 932518646 116474835 316117964 609651788 673488336 929938498 941169061 894372820 933689144 433917572 682615046 415743128 611042901 871302857 899904851 816091206 828675899 90835457 569959822 259827050 338643847 754433850 812021592 304057279 377513607 780108575 927213852 377645116 914536091 953383316 997383873 538052012 984144065 985392115 995825626 359668536 374727547 818167586 941773259 660746371 976238544 418908938 693613474 784760426 956306969 86746870 691811904 725657897 838088500 763221322 990033876 671595132 878253258 85773360 311855794 784010150 899935186 844446969 995651778 446402235 808735834 99053163 574146462 509823300 923644121 838775780 984795399 675278678 683346848 181009480 882847110 606649098 813849887 305768522 730559719 464369667 702207786 729609843 939541149 528864502 745285405 379702574 826877582 451073361 896091629 867068246 890521708 306710020 340283691 961859662 974518599 511969973 726562691 217879990 316655386 312000032 974706201 608936399 957563024 339964257 351675957 334780430 953456659 313087148 407432479 313115171 794164647 920066455 954897694 791274488 838115394 947165551 957573557 196642048 666301476 289168619 423666002 865201524 983684706 507067251 826286946 293267711 884242878 113763797 162730792 733520006 877547621 302493435 969420653 999110343 999159505 172271217 230803330 781505063 804467198 975910390 986563497 68856104 227321448 255640478 959951094 971980857 981320035 92563334 961830162 800664376 910337568 946732377 953235108 330350973 494139970 920590604 927955257 262543726 266601089 833282649 848693460 119931861 659278746 502886627 948143241 831843695 927039338 289332249 499671283 271523879 393866337 448316802 626660063 827050614 933413254 480454573 860406819 448387276 622648340 423414650 745681273 841703487 849897299 793683522 927736592 679900206 944563905 620718206 960187566 620451199 910685517 605542381 787160796 466059982 796650035 142602677 259000115 171937223 498862871 170795574 483577465 697752600 771743737 842266301 945077849 524797249 782248970 200856517 510163566 693477709 945310090 875234783 943167468 261327395 689362940 404561156 565072687 745032015 792155367 298146239 660499830 931941085 989574313 887462411 916076246 856902287 911147601 6823031 876355620 223810566 796759877 944188157 997594228 471809010 642144218 438475102 524637469 992856812 998034536 463282674 478199943 993841220 993848686 459346316 736174353 935475107 950420868 74834914 505944244 858023935 883488741 376325694 423279450 532765077 636623086 139742348 732388373 691665896 906382437 328181721 995531161 643594460 864465748 975420210 988086474 755334963 927828234 699559132 920533235 822501495 992946689 136787804 597297144 255579687 936899773 235456837 749065868 773176963 947430295 538023656 539588505 108903675 689956446 414749959 574635409 697104530 708081333 459714412 757669324 124402793 420047374 725787384 859132468 192618549 231429562 96093260 244270005 497651020 819196461 618938730 841462838 149806165 695568317 159472348 440710615 397254906 757726912 314738299 903326373 557767673 609259414 391377940 994356567 578641178 735756556 474601396 531971927 30353321 249155741 268852670 277321107 835969641 905886872 46956354 747773351 918517990 930459718 633351299 996310105 527223198 765258252 464199145 633417912 313774582 542631859 79462000 264011731 133075090 479581596 18548561 68060082 985910879 995299567 155819305 994221488 51666764 271403384 640521032 693595713 257533995 701728182 311738413 648283778 383888915 835686913 970961959 974598886 695487434 841787792 679120891 810833555 452958051 593379827 704888316 780278106 945811197 953673136 364538684 892265107 330134199 361549695 471285856 564915828 631862243 890739661 362342152 744126092 921225814 999172402 124629008 553860931 36809002 880459994 79672538 305812502 240685943 314836480 959414361 963616801 650660586 739012412 518041350 948577694 73220820 391547695 119939064 815101439 252363953 618657385 696034894 889478345 685522337 877140915 229758289 242308775 172770432 901047388 232332479 569362005 269144460 659724273 859787132 938185002 631101581 807145809 302215263 342162822 509947562 544536819 428978951 855169415 129299413 518839299 667546096 961343635 465698006 803543313 125674587 269521543 627064423 951649234 817688207 839187149 514449281 611481030 15347094 790170190 84017919 320538565 435111729 729087778 99193677 820835800 104205152 574118308 33343862 690491057 589279831 880769180 349502952 877577050 715141596 769630044 777529624 889979246 581553433 905088739 142434100 586692040 10719578 44158727 247910902 768314411 912614313 989950130 206327656 755313451 202688772 495707240 834462563 880613152 127723613 530174229 797231190 946844240 404222167 615058908 481999483 717929335 953794748 992014871 430334817 961137267 229059123 254013108 969587318 979488820 421199009 431747810 137957448 789587138 960938105 970608797 311883128 484153713 461675936 725872519 314009459 621120659 215884171 777556001 773935533 920004191 88996401 484204224 950031774 984637971 887540294 977766815 732018637 988326271 595582982 898001724 526172387 611843570 302656300 705074612 518577056 998063635 796546887 868537819 55188889 348147158 986649336 991471382 597398366 911542853 505916052 536648415 42709318 738776898 474462970 781000423 528476636 554742539 222747554 817132637 216624543 316805032 391814435 654386603 582629270 975914204 310367741 503573815 546629007 799318284 750804226 972412508 309583961 526900341 344998128 381565671 544464007 728876148 563254064 684747251 523635526 791149898 725275256 901687617 931253197 934116867 166714614 274101977 103522376 814617625 325010423 546210820 152832879 700203109 787272279 978904135 803368027 950996433 463219645 858551914 310180891 542706102 324127321 726779724 753387460 770587293 904634777 981547864 186055393 497009323 715564131 983047943 518677946 615924570 894330497 967844763 583855655 879701366 970046932 975920147 742115811 917543216 113978615 380937612 433004025 625122924 225159098 281858309 570401003 674120664 477565237 541911030 801484318 900053499 331892073 638693751 569752452 758510597 822769349 889682319 363469761 770200104 235445630 524432347 160480415 507112723 122463984 689302843 624154198 745700216 538283463 718226700 330062260 909989787 62747944 526565292 874368945 926775106 225413180 728372743 518072342 748694048 306154965 501901062 886883762 900808540 597525066 858142625 166418954 977935365 945187597 947109046 551626228 860543982 592190093 680094411 67595062 576356626 173173590 461891754 556027137 879484876 610364909 631075218 180612297 802484659 423930589 458551553 3114043 563798665 27340211 860938924 565993129 706671906 133600833 983252266 340719291 804353584 332582700 852992729 700374756 812309378 960391478 986109949 480750342 597684609 878992303 932149722 39697097 967059178 969025608 985567525 814600873 971909494 571852577 857275826 657136102 861029267 211450530 727083111 940173190 989557809 121961935 375761056 256507794 786010754 230326003 567014248 927821755 952434583 688853331 983753315 588647767 843920517 239996297 600040773 579019995 601554017 361942588 496572426 128630944 802933233 242839374 290812924 311727465 954697591 783115198 959408621 944731871 998540763 552867293 987238973 231079603 781057624 291912421 422310245 106356640 989083644 228454364 517468218 539236351 897392729 203290915 297561503 294583080 326364052 655692856 803885991 985088509 991996873 921516209 955191540 576560142 831750971 310520982 966188446 245228287 812361157 104742644 729980572 481561637 549980693 375501902 939957643 656063873 920029947 255407958 860664622 662634380 903534681 253620900 553181212 974822544 994472281 441703723 984290050 761691002 993322814 884386090 946598339 283506845 335081544 786492362 827451797 896627467 977769163 449979495 801942560 925365187 982945925 48594175 575053957 975277908 999378914 868407548 879451769 732697753 949633196 666993504 867573143 447548815 489204781 166594889 930806464 4614925 360184833 949755837 992824943 733664936 906680099 211688110 698186350 374680139 738081063 526582636 946422088 574006648 604241414 173111161 234271647 344678631 360373213 286730318 722585779 473638780 700126721 500802499 767066052 168222823 861511868 881424308 928163874 557414347 951957858 405250140 823264633 79337254 952817175 57520142 471336255 66289513 589932915 336803258 339688968 686535272 886216573 67707387 289142017 450239657 986591849 562371757 686117559 548890145 962948645 152764809 679894731 225725515 723760500 157463729 290929701 912768582 928540817 295031001 749860518 729880407 776979497 86970536 321995778 150218086 532194719 586822361 697942828 683701999 867736213 588553093 732123018 94152425 119948303 191733819 677655106 902756320 946661736 522841643 666705787 434031964 920392917 420405392 825690750 248732029 943930626 231923025 427984517 327648578 702884122 879815414 893061808 227614473 569994717 935311025 957087702 155681030 189084005 70507065 945605262 8831298 652298962 262450296 856536491 521574145 955569757 249694886 801296277 380905052 659758918 874173325 917789318 903548190 921089142 285527130 845900130 878855901 984177868 335140628 617234032 7226058 770273492 201319729 382259976 896229126 983515156 43714060 88518283 499872620 503049870 765106073 958557878 696539418 962059143 217500089 767956268 279931640 303325213 333035117 775459441 711750966 770832422 763691189 955749609 966070652 969597305 174863074 268906335 72623471 921230320 601524017 967778217 140691168 270548623 82797308 646552277 27266773 967512628 114371221 930693554 592879575 965075317 424680693 809878240 308276902 501466042 333577996 984776039 522957177 566984780 874767698 923435395 112353966 528439626 711768569 804503822 509937584 990795062 416363660 861134540 879115046 918313871 649043960 744250383 745524188 844684464 374545891 755401258 754985447 980587191 638239915 955559874 153731587 319771562 651901385 804486675 761150262 795831290 187088584 943648604 917680444 978545142 693074964 848250482 373680750 670815329 55109292 674328197 742381787 819877738 499193009 698886392 233485699 318867370 72104131 340609414 426022028 518107126 548172473 732929762 722782778 785319753 436806909 460305945 816308498 891680596 812464518 893812424 289706574 679207313 564064459 923585236 201601586 511613027 625340868 813216310 26230900 398443332 293501676 768844200 349002371 616408911 120557503 409742386 161615274 865048699 217747746 285112435 643349272 900178071 164393902 713246918 432352784 803370940 777976575 856006866 479784513 973950827 351659090 436199051 68717627 358237576 431058051 619175008 856015081 919734858 753266561 884183318 31750210 93485544 181680205 948470308 577051596 796737889 873413857 968466114 715322665 809122767 937607004 973892344 205644258 516284916 545263952 952400153 883479274 969903106 118162687 725025787 335797171 922263012 216659961 804095000 76169528 910505914 714934462 754233345 584791363 644058405 401125980 699971406 14128044 234085470 248682080 563347712 321715593 531060735 353806222 971488069 740689083 956989847 157618564 868886514 479722217 901023206 669416842 681679630 682484490 812496320 282107946 890832215 500400466 735674329 515550460 587474469 447694956 931696546 775102442 942757432 823046865 957049043 62241787 63063460 751933056 788968293 249427331 613443636 865995934 958581320 881621572 892487546 262794579 849691673 254717830 424507894 537358383 853806092 838895911 932257539 537759258 653777242 615768087 734247468 196696103 232029654 255959926 538369627 337584937 739935308 76013407 552630457 402223227 977634207 913724893 949354177 606688257 741615512 421684597 808372955 933603005 992160106 538650777 808584821 210382635 398429434 452433576 997122342 253008488 688681763 387290114 497087291 377967808 935280496 587111498 706938471 528297827 952619590 30117675 898084595 784018667 803178685 33864859 662170701 173380280 692514130 70819047 292612531 529845708 998231700 423969933 562813839 787748313 933849461 904573682 916880690 705882214 821074859 291375098 500590152 583649485 782052495 732862939 783476324 496810765 911784161 113525340 659366923 720387134 898086962 718632185 847160325 516717481 970807859 660376395 909273216 955827798 991996552 669368 269264176 625562682 997309575 944840896 983096080 510563979 583470039 900727441 908838265 862474297 878088146 271813255 379715119 91465060 243191269 473585168 571037030 494648192 516418681 420920542 811582126 799358483 971808048 96564662 549348790 410037011 636918516 348946978 521091260 984867951 988865183 765873791 810541194 836082477 901073611 383127983 617999664 42833423 209284948 802991361 892245773 359433546 668477569 248943287 251405148 42915340 559699603 118421911 731179617 424205506 565148945 200550266 889557828 9288123 687124342 295226256 998415331 921745976 946755142 454311534 926568623 85363429 840207897 973401608 979667789 898871766 937149488 359018599 554445591 100312091 875263794 680281191 882088670 699751001 800689482 603576111 759402574 988032089 989830475 401282663 614792360 82772196 880368023 126300102 126823040 992012922 996744949 693091706 943870700 415366546 981429243 988485216 994275629 860041058 972929323 657397042 979113087 17458798 748685691 411545468 686266194 569914424 869818370 864532745 994760789 452660374 744749460 27588398 681544260 701808701 985989477 483305320 575013864 364274905 464821204 240811823 309482132 564891503 944968681 473485662 791368321 278386798 460930070 974016841 993903556 901816574 947803114 796342256 856250485 399822628 504671126 326710857 674906819 631815435 957184301 946739002 965143946 953003455 958230980 715716670 897702303 209306616 807116504 251732685 963813004 732594184 845887060 362966875 716286460 596809530 935594274 645351773 926788508 986287584 989964753 567597000 922944325 543022293 837131775 380698001 468313325 380408550 716401678 259850897 323864604 758489048 782768241 92043903 643791313 814467027 938102528 526405344 932482162 591486775 919448525 152570271 732069189 431714301 782442425 785151819 793737662 776176580 901942433 681834243 842287842 811218592 938116778 413414350 489379367 699885282 967279576 327981546 904832571 607404816 630871427 906631616 938131013 90445069 897158165 43459536 770771023 739903416 833538181 914240174 943937816 785687670 890810003 138090958 668814807 952064664 990192669 601273441 904851086 183569043 279778758 883166780 991721990 981158083 998527943 13017902 190301473 746305912 885495534 847661164 961208557 927603386 985218964 154016910 385810174 563125842 641677044 72341638 371229379 742348921 928160261 755641494 957822630 8435795 543609795 359103130 973420275 538048871 700712608 337043254 425634199 304730686 810503758 72744603 205386084 329546071 476547888 173168432 499432623 108107658 265078814 750819563 845699200 674368105 723462885 527377384 789457932 31365523 823459363 78271497 229162261 525368561 831636325 488715240 885730160 124384366 441534344 706556250 808499619 232853236 394926939 880706310 913863361 944945432 999007887 523060302 565454636 216927860 606482955 485146573 593494328 420278253 732025898 571411795 589301380 934755902 966728175 604137490 632693884 99033634 237726866 212032367 377664989 824624553 836832115 842237003 891924098 257531831 888845841 728901235 991184517 537401499 652271161 923024196 978479243 298143673 360413267 162538256 861819247 354411091 471716191 312676451 652313607 84215371 398503080 16405445 960095967 560700120 873625169 185462668 528084915 554737060 818725996 688528098 837323855 442525014 659787559 375838416 484506780 228634486 792267209 141099047 528163922 157130327 168586407 341042725 517535745 981765689 995496516 62072143 854097113 787518802 803897700 958629212 995121311 518051980 562716796 848918882 972630172 238958963 847953581 122779878 858395754 741149211 890697620 122413794 540187772 789935182 934688497 400723342 821528165 201641019 749950868 512701839 887336628 52220083 122443188 913488677 922652210 587326153 839115420 308698311 711868493 915085232 945221760 332219347 505429659 749037615 777454727 272825105 493760435 243589933 396161538 461763122 708871853 383148196 969544897 413208892 923534315 826910550 926548705 330948367 915483105 854230367 971858367 585764683 862021249 648218913 720283307 52712959 931856993 734415706 853133940 987080376 997859117 333946712 509492531 226109601 239141649 704123938 980709174 550862525 831018531 402227820 578787843 467503875 476463893 533875326 982311935 748430311 807178115 49380081 790679986 497906151 927991209 473986093 490728585 57977227 437745131 984303473 987389493 403077630 531443885 902687386 906365072 146622826 490335406 258589369 311946216 507576857 536477589 992703993 993950705 361032558 932967062 225635422 662507298 973285107 974100943 535304284 756731283 394768362 981007302 93478445 578655714 31500861 361561955 573170462 601347582 416353466 993826841 125059305 427160269 888760513 940999706 919680158 986625466 364775654 983635784 135233681 543439157 12358786 831771162 167327689 348183293 896638620 998144342 650701649 698146071 958959872 974127610 753925991 873592378 129927236 448575004 229422595 243734387 214340351 931897957 249397554 257046815 749280898 988538175 515467322 815805325 471076946 882262308 255516980 260609247 811897424 979273087 316877386 767502934 774386415 776418996 741928657 784466283 79580746 111187146 296548790 468725535 459549684 811155303 319601244 516167307 926653657 944922406 582376232 736873839 508821285 796380696 659248539 809752570 35427277 86700539 26508239 951702997 614685507 887334196 637813776 659199645 230845167 284960545 525907630 742824188 950142242 978691106 71199236 452640531 844943440 995337329 335889171 876945119 315599350 729886638 936989107 997568545 4718702 19595753 124920712 385336415 269119044 685930724 544274557 860596267 62790140 935742603 243197100 649440136 586093623 723271987 893384917 935093252 66147492 398553573 751480534 997569464 683807855 996913084 223245434 230134484 758884224 871981332 485676845 953605759 23217717 735858683 964128609 991167499 355120745 368870961 40722493 286570819 431252539 813744101 368746439 496411450 55751174 274085367 190405791 941693973 789648207 980288716 741890732 979784220 5349593 736600305 288438482 994045048 546328371 620312687 490431050 636962718 982987569 984077504 862824373 938409206 715001195 974197704 549612961 763539501 187193744 838048842 184945909 344425019 494432154 562909955 597619109 669476818 942999365 966972174 214308357 940865359 641762612 889017903 937366267 990299836 32160408 887184882 71302881 345799086 406638478 620429147 124783904 605174480 117883172 510883255 264396928 642927146 374081385 563891493 781195539 839573820 600515182 618179916 510674627 696562018 416030652 465308963 623494978 772139967 438479637 459259581 598754993 736008912 633451266 863698870 200533194 445191017 295838283 787328185 232073743 392297809 834920066 898332297 368966316 668584519 647173585 946664890 198224643 580825415 350108985 974486405 927664184 992370168 58246177 215245881 18713896 572067381 642667288 791895016 435235470 732793779 438492624 774094349 218407957 440978529 504696481 787863366 185784252 485813466 102700760 468351169 878007130 906865433 41476073 862276677 569319497 816607748 398874519 400186409 932560363 972109111 26391790 995387607 36324618 43466349 582595605 820507792 852489915 884826012 974491983 985082883 198320064 306534498 717277512 740361343 868444458 975853434 269221306 731229006 35073544 339173225 352433500 493678145 33923974 778668820 931810513 989648773 545143639 842039489 34447952 316159568 32527217 409955869 376571225 669408440 267345273 586445591 612154783 635573923 116702347 555778808 989821363 994230857 285511706 577956356 93681919 688963378 666944300 920173821 3860303 244403717 804742210 965274274 734617256 921254554 437552099 828237538 607618430 679875659 297522258 821626248 630883910 719973214 670999290 806511921 616260249 631706540 530237771 715504531 298445835 470797738 295027668 596244025 406552653 592848870 904089807 928466116 267913059 482978151 812167628 909425885 430472441 654380949 774405162 958752257 470373368 584289983 896615233 996222141 886726317 943685880 40515643 410731803 77903736 687417447 181247276 416243554 148521746 335291869 558169774 765940027 366652914 440049310 723154033 996466313 307991126 372758695 798411303 942104642 923770188 945138560 174903712 996121430 545372517 623518982 224860651 488158840 559579413 758019380 392222267 618156016 937900182 951448432 381145426 383720320 439005530 455025386 560650105 712200378 285399091 748678118 306790828 473819017 349284446 763433621 858275792 933643367 749272164 859293880 86774379 672159644 470010093 625140412 444441571 738131250 628245926 928962551 315440528 681620466 639767780 751266367 7693322 710053648 462598196 766466513 478016861 784068373 858083277 942697662 296449546 303983648 697238588 892140018 180098238 258633660 859887680 988294998 725183128 792548930 930920776 969853045 666946676 999380075 495079641 731539880 420750914 893919458 495612703 594581849 350642571 364724390 132886831 419615290 608504014 791083604 966036498 996910441 209279063 219702802 784012160 939950419 402817849 879109609 449957328 580593177 905478359 986134653 602923203 744672659 537531380 663048108 157129152 936142387 822972639 933262229 497522893 543740485 745369382 788482608 517318300 591792531 114871884 233650639 921573527 989493085 586271433 687195439 977362942 980635073 160566889 619629675 318064813 430037631 706131094 845256949 275544082 966463048 76218691 593714965 24697224 394274907 960476809 960742835 110414525 677540880 463393691 684343914 155696332 556058583 553162008 756935808 478740402 699944284 863812977 945101862 689770117 965730915 245870292 914135338 662399372 821658861 338756199 914651815 857902315 989082813 726284461 990430637 64041511 543836048 100066707 567577692 432795222 664720641 193021048 958548385 972348306 991567304 560670194 802846668 130302749 282277157 228998171 506381413 182751361 956531319 742955586 760075091 407772030 712186875 414124807 928109833 849892672 929712177 874451061 953871263 598459489 669731957 890993371 963012337 476430416 942323605 278256503 914084700 770820535 918412004 351666530 884638844 782969337 907578441 961765670 985976992 614167624 842882038 536032384 693837506 760350006 780881216 990065264 992948843 860495659 988061136 78374277 659607679 660050580 781805013 882386111 909649477 362223255 737638557 343717056 974597249 933925982 986306493 316620424 742858760 10955593 729609090 622705755 870527312 15715685 894596582 363033014 390031643 261272041 740182611 936101985 942653299 199117148 966627777 243721289 686361077 411647665 935451669 714771057 893053194 526112359 806702006 657101543 989026753 929663886 958136316 170126547 461086431 12164278 399724329 421766497 511489879 982082701 982717269 610688619 613561266 769300382 846196442 290037533 395118798 671965038 847091493 571382659 624310162 936679900 978658702 915439687 918732758 184377171 210328251 92058135 929935499 640082204 742718982 961898249 972370336 592166265 909331696 354166805 875712877 263160393 704964031 558133357 842576868 153789634 160709559 115224394 473138372 576111768 661774587 848883910 930314316 842579068 946691764 953058414 968279655 115645862 280456843 257847805 299842719 998374271 998544241 515593972 788314698 939273315 961781517 479110354 782738073 171635307 719683180 22199768 337181827 637728590 640668680 863011829 910204917 991639243 999333665 315822394 445104762 350787406 355669982 663988210 738791185 193591519 654057168 391311095 954122963 295679167 815029082 591304958 908613055 573970806 976697334 611389006 616482079 859766160 862896891 686764248 776594651 28792292 708772074 681759898 969281468 794988809 967200355 528933291 991978308 102661721 142635493 274261017 726906839 914557227 991566747 53297906 196973020 764395852 803855818 785901447 805493074 414912204 575459632 572854050 593828899 912397805 980185936 964718605 993397857 148197260 755988124 903392684 913494004 872283483 909667872 591334426 907314279 76311686 706738888 327996888 729248782 792670230 863378889 148562345 282432418 330715718 811871218 229781173 691320669 257261684 863134676 963233231 992037905 903076191 903478084 204464828 867956330 709118161 918906314 921459913 922051057 448655912 699256433 208762184 519717668 527502406 705995723 395423036 835720073 165901392 296798161 91867998 815915234 930936164 987704961 809547912 901104367 119189941 642592486 214008560 776512589 725370139 973918408 978471088 983952360 968406092 969072689 851735825 974161968 469265027 986964453 833654939 997161611 58005292 274042720 250545000 659288951 509256498 709661360 563003176 632110466 1421493 63064323 161427469 834429187 362286668 964810459 352202435 621158919 36404239 303667117 951662764 964152097 435826913 659234429 888665859 975968968 126803565 702392518 55284997 834885952 126590364 968694654 683653210 756877498 628782274 653420163 755977595 847474373 885042016 986557643 94646912 840563100 515401607 833668180 687424984 877362408 527730370 787641079 886058521 935004019 788997122 946690485 36933734 139834712 953801941 963128587 32961894 916465484 289024553 586968935 927206908 989087409 942793753 990161995 147682303 750514399 277898822 850812225 673010061 981657726 687110431 793505562 431385963 687970508 790381725 839218195 772655796 778326622 765719532 988425565 164096812 703650697 564220462 864290703 703822802 930060965 571289478 939422871 420766664 985419554 905589881 940793958 717607847 722559971 508043907 517687421 371882924 711002781 930372733 976089306 851558079 893327939 921099094 990996758 36511244 536708633 898231024 927234042 590529434 974418570 983515416 989984113 79598836 556465930 853836530 997992625 354938158 464319458 270431217 740072907 967668476 998365703 112006370 524541325 156864059 172337474 265380404 437361608 209117628 900149112 749006406 860258591 436147331 606798210 348622655 393570362 505756906 859868022 858278234 993465892 594658423 884025569 860433101 868753593 590973844 809134259 972641059 989314556 427690686 584136716 593431581 630336433 168986926 314302394 726251958 955882835 443889077 611447344 573682745 899681627 988767867 996127059 351038202 669910518 316792057 623398946 68235189 755670583 34234595 576988893 309288733 796184402 572212578 738090455 156875760 377157058 144563493 731454250 87782264 483961296 54857394 838081330 180322704 785754531 510121807 661992893 961439280 974470754 918446477 986465742 35217976 797344254 833830018 943444915 270918533 558769035 91348558 146903788 907048001 987264893 636742986 843736872 205002069 533475999 928788412 956704677 912513634 938291384 303507854 566401271 727548828 941344681 571028327 918186821 351944173 656337633 508851702 746355914 766153827 782087226 589448983 591712435 804616084 916361088 898021171 970098118 352832687 438026610 791696315 970410379 384733897 415323613 409908276 658298342 453002468 849916529 361607653 742555730 898439535 902802781 2514495 840724318 214712848 823320789 878113437 881100726 682710705 772588259 80199600 236759675 960897288 965638181 774035886 802798827 464928919 491604221 805259322 920658063 870165792 906621325 954217968 976544489 710672925 879014855 664960681 980675064 344420307 818937620 551548542 974523444 378259960 957685280 105347737 389072884 627509838 929846802 759646017 867795073 705673059 741452284 973061891 986759443 481524151 635297844 94699815 720927330 878069987 984161070 203703487 986245745 541813658 663929952 811777405 933236203 490677332 927827342 608155584 801721816 869360160 935386210 7188472 270567710 809554952 961327632 931460270 989004584 613265437 937638395 979016246 990757644 654146108 833136859 145022105 383900377 43875024 343856842 168813936 633927010 807556518 982527039 581403016 691950091 120414732 143208313 429818076 984153959 503436786 997780556 97957085 835044226 591116350 761082813 346019678 943704510 407606989 598778049 633014039 855653426 678375992 720506309 671366622 962768658 97177348 467466416 895166229 895186121 281592834 664651731 127358656 365944186 225658690 886393579 166968012 877404704 844280675 956186846 727505011 795379388 940334614 976191777 216875816 939110358 737764112 753641431 246239377 956499300 238326799 294941797 965335643 970406083 832114370 998989165 895844361 993505833 648719610 997175514 18571059 309477502 346962723 813769182 269876099 470434000 198115056 635717026 793694695 963713627 817866633 887037948 793452757 934749646 633618793 658481624 221056090 993476385 800023040 834062777 421789421 794554745 733675509 996056164 438274539 773537708 871420937 907886492 867737236 951000955 903656036 936474659 720981547 963961397 949924506 987568840 505870888 838593015 617908793 819950716 258148114 523256524 574440507 983976600 777860128 791213588 435695426 626713846 9231614 843647503 472976998 607369104 264043864 428131017 371809417 688205963 386860899 910167274 207310103 886042584 113067337 177511232 252655141 720760982 42240437 841816929 289360238 704348727 474621187 630418175 625463597 860909001 935462169 970891821 794362931 803205508 336323524 510681480 694804233 803438158 386279561 938421351 188464908 247764250 381651519 532149538 592243682 693323335 286497682 859768875 257338668 692572685 638862236 981154351 644462668 657363048 196017331 264205474 566366997 791962719 668579071 862921067 974511975 997510449 451263442 894928738 680595344 923724976 389182763 935701331 311061969 338647960 42748167 759349923 40898449 977326889 271356014 314980101 609605355 962328488 120759667 774653980 57365336 896940459 61059594 287135083 67119405 141177975 373546564 930728633 434672818 967763000 178211042 225495363 430376682 703675957 846667598 860276094 125028094 465581036 85137926 496513097 390699863 888902693 321473754 387516998 105943976 817064227 911217139 932744445 250263871 366367869 288197262 405543654 479251061 696431268 23157443 231260048 347014841 982763982 364877462 898933582 98793311 441187296 406301931 913800595 717276758 720104445 603542739 759659697 17062937 272259326 732324370 920824468 416439387 725000580 558724543 885903568 862538778 983862302 480141057 771120022 961518351 967244186 957812824 998669731 859664956 889971111 434886121 726342662 14909393 785638919 482499988 512130252 210386957 968770665 480424529 675640303 80768775 639651009 86212363 971005909 479613405 562880305 345143503 900470994 810003147 928002593 441347750 909863712 79786035 199623193 368152560 993810961 963387674 970739994 1765523 36725102 52673785 441478901 902717492 975389395 527927448 882214978 687404173 713345636 211978462 522146614 3892664 640914523 226573975 719139257 677897220 997905654 825320054 836387787 648259144 841282994 224185910 493023645 963855211 974244715 282816754 860002393 140079091 821879069 329498282 921469029 792630046 948616587 832846438 940423330 421538069 970874830 393792743 405950327 706622182 750981776 467979866 829058804 730445314 849896114 102365869 301499613 73033221 594229741 967152105 990372974 117233658 208609234 350029804 757209910 22951458 926225484 630229393 757212925 733737462 991509901 429486591 896268437 28300338 777970452 74059253 769941684 907685352 911340778 706739531 785877726 249004229 514052588 551581955 767600010 361751 734138725 666448 415836189 958552301 960637036 238641925 360201530 84665865 502099007 350513503 916495018 613504890 707439050 294576433 351776759 985713508 997847337 31113607 140238070 245145403 673801363 837579086 963828779 719382489 879120595 804843279 959868278 503549826 899384129 639244314 707165050 492609289 493141740 135624652 192881083 225237938 472052333 535779437 953067739 334462168 396035598 293658807 448388898 338554890 506271237 233097529 415471161 96950535 578064570 887864587 966211553 409628460 448670370 933005106 989214550 46593113 722414551 789944645 933548342 967516180 972490757 193634532 473443994 238494438 264870857 352379156 863416203 792062272 896536902 350378530 514023745 190838334 659167038 581213236 972181434 815175483 901183022 81566520 587372330 859331351 864931439 480262132 780983727 754422325 998403561 405436456 943456353 376790527 668841638 827431615 871717155 693512860 870151824 765452025 783076139 254965066 481407754 22792206 900248704 194799669 655295608 43263081 901699854 475371708 566491730 133567306 470246937 362915105 471593180 593076754 828401108 705472414 797368824 448067639 969009776 726192898 974782683 732742587 904986651 232940757 959579173 892135230 986582039 319641581 539381906 455438501 577827116 737242725 920123964 943112058 974614190 991061078 997319062 358227324 670163801 771009041 802788925 850868681 873640631 329467796 394055573 65543169 353983435 208345783 353629227 644409977 920075458 240006822 996904579 268461413 860301666 958038622 959690855 263394208 849733283 631178902 650530588 360034510 619797988 992449834 996696578 280028266 471448208 442631393 447986745 459051656 752127382 981287487 997656714 232377704 329625923 653009011 736292341 63441170 388262657 161356902 271424425 956621794 962965806 729410755 925199310 383391758 764653093 726902447 932014290 302726738 435546191 576253460 922765544 942256897 970971716 425333057 801552579 332788404 411114955 611331965 857891006 607036156 732748187 227944725 962412116 943317810 987976884 719969362 743749448 123489637 880568009 83105142 87192582 497521101 808944794 220023776 519475551 938194932 990709995 467797435 723434777 618688976 935535048 695892480 705054263 433223927 785159785 760515369 987807540 171212189 708700589 824511408 991911363 358772915 636297768 70661595 672524466 13092459 573687817 726655814 991658325 809189848 918219935 788217371 911535188 574143792 991816351 557018085 985934739 497988645 869506336 566288178 890569006 114006761 232336254 752041556 771455423 791969247 896872971 393863818 741232097 322434112 465659021 417978425 964608694 224922 617277597 335574891 940986716 735755407 933939035 533749363 599262534 797982290 952119983 48456727 209859380 979992807 987577558 4441922 827697216 784424866 888134026 250500719 505302790 358751685 702768411 228928904 692846120 276543207 313965355 386502065 755158331 328566440 466386749 902756168 920420418 268704563 847616147 834008201 894655598 801657453 913836597 836920944 866549763 379214654 972108301 382759623 940306112 96115382 444396721 992977560 999060692 58682823 454221962 202117151 551144614 585052830 735153364 951652965 975714451 485261872 717695354 54939355 124591004 965645395 985846389 756274024 766618937 417523877 971594402 879315653 919556301 981031983 992742660 23914638 711488701 955153657 972292050 334247890 677422925 795860331 993619853 544915267 726565623 775296152 868094439 751182586 941458848 829062797 884499979 467491767 587719030 520331378 637733925 510431981 761408361 234491934 994392983 722787929 974333402 433036506 715152377 152200571 344812916 461017505 476628099 370040276 545086670 939225869 978296901 852444636 990947676 514393834 647708366 788222702 845973969 385469109 796601268 137265469 361880527 344927229 816128660 530916227 899364015 910959123 920123204 729405411 983109230 941885019 971721646 412220458 583970242 281521299 327463699 894699012 958255867 759924720 921620402 247165147 363181571 982817782 991049640 802151554 810357479 997861809 998454056 231156813 390341535 143475975 569895762 333654524 530724936 518615740 786154905 923246222 983026703 112832970 656693850 209013104 324207081 840433838 925846439 174924370 258163518 359162855 767074750 789428499 810616089 451145704 799821280 41575019 199396810 755213619 984125147 51052233 884241219 847439543 877988083 680586559 767024430 215732081 281020202 723864198 858278535 332942403 750787119 805891001 921350709 916141959 955569639 791253353 912023361 721864843 874644639 361893738 750606150 713052712 929186332 612479803 854246198 574960241 986526815 96999604 737080736 992649025 994768292 303404975 876171760 940310300 999202346 485792756 700950938 775389881 840795697 161837911 521979437 233083998 888523498 350830535 357928520 23338920 338105219 439557413 960393689 532584597 974860401 326414784 942116376 659697644 695140523 320444499 450205372 425669305 731457080 241439698 843034157 331058216 795436663 393825312 606510147 260498451 787866321 919867023 979027117 899933562 967494910 757963545 794758124 719964762 982051147 212691054 302319767 66803372 436925134 202787743 615035603 928580390 984400152 199790454 211213760 647944361 737015562 124088939 141631827 759291923 977716397 471000749 492454055 587536550 900112577 620676466 709246933 792075551 833376273 229222920 645321058 807844620 946322800 179701313 615408519 261630152 598516030 656637996 978671755 157849919 502974316 5473826 581334999 378674037 920990968 158934261 955821235 804725042 982022875 734587928 753276594 18381474 761753687 295879804 455491887 697167116 699768372 373609186 930652842 829324809 909663444 373647406 692057334 450431791 471472632 490531517 780218611 398382680 939320752 718247237 745993852 833866234 931010032 56235316 71813431 171280732 454562432 91910993 467298243 376736822 416242613 485758735 918492121 486777754 524736282 766982206 971769678 770089074 984952892 798684713 976834847 71424599 203896502 312176911 402815333 723949848 941352488 619592597 850191772 384868192 435767646 358829229 650076170 51151862 795524030 438435402 832545210 337993637 348564162 59277337 987478055 638884080 991350111 18259360 600079947 38807576 829933052 865257052 869853245 159599420 303130722 942674362 954325377 368140924 964566434 276788919 283363354 678227786 900395473 775378621 923918829 918360659 930707131 598800727 858147782 260836128 843039588 247321490 625682957 284350115 562501299 645387553 975651761 211268450 918945947 116569928 309327326 342381517 759041705 801535043 888150746 743931098 747371445 538142995 849570923 12924994 660831693 632742576 674261490 25131370 173651216 223885098 836779417 279403718 711388121 99981756 397736743 441626922 441720677 952703268 976600309 234491757 840820680 416306977 658575935 296205967 683587445 399428003 991920455 829863886 923702164 620479315 658654101 597534146 721997848 520817879 727474055 322897506 351877760 58755697 189776624 988898346 997874981 414331432 991143322 674247896 930846065 384057337 994757271 816204955 890602995 839951528 900241251 577254660 992055278 659951884 672318701 217031279 994442841 579201327 752283380 665866486 684152374 510543877 832095185 781856378 907061148 28935999 934020881 880414236 900670257 946754167 971494089 277248339 727017045 807625496 970947333 6101362 612796771 983768502 989363449 940765191 981841561 654684708 750191481 186204080 505463625 289468405 330926335 415158002 513378095 578793369 736777284 824070756 969739825 530986380 821096206 411676033 786794838 477001104 614700918 35627747 636501648 621466485 820595462 729364284 911850366 72637089 909938432 857768596 977371221 507687725 935886795 439035371 496013128 866710783 872068142 331502996 973216285 32249222 719382280 886395334 960597151 999360823 999387215 800694453 920452259 508275199 941110182 750044871 853069690 728935385 898000799 799138934 904066381 761146129 799278562 65762039 515898857 945324983 952313050 766178575 862737776 269672893 697788863 74275710 932143693 593387804 975348804 20410693 931658587 473269639 929902205 351090596 747322223 133639310 502094602 688194131 906272529 319648839 502558486 107379793 229418147 217154 407448625 13909459 308884485 600994199 878160818 70032114 177934757 97661211 704001060 931746736 942782397 332452166 752637026 443235454 507814072 947915254 993875402 853091215 886591167 513958795 671075493 352391290 783324806 264273208 264819328 376148012 996509042 138229550 874601481 505612605 583717989 475312046 749531747 822008758 832236076 490678392 936760548 509011917 634277182 475463258 558512168 951454433 952911620 125256034 490651200 911239987 929589077 597756949 807840596 61990702 686803389 89064334 346497234 983060179 984076346 891811502 982920271 529843072 707957599 751341090 953078333 965915521 988499764 330691544 577089182 786980791 896803838 2377130 290947526 177785251 392520311 138853214 255936933 642102854 664216531 769223471 899457387 917304202 996289152 565186773 808374124 593551082 654300732 800864213 849223161 803054020 845209283 488164133 598570879 191360401 932609175 864644012 999314551 654226818 864981315 894962787 911974648 58677726 762446160 441685868 720564790 826450919 864657084 292332364 591256780 627909087 993203894 717146048 915799632 775246460 874782441 327259597 824681694 184950168 789774886 48998735 801899037 539659210 573375063 176895486 734983349 623620782 626186295 116694013 627916008 121827376 609968553 832535781 920791422 494518777 917215431 730813101 882399327 441123007 733176140 482108871 717787429 962258329 992922474 192498925 941048206 678581412 716483269 658614987 931569721 61085493 565733875 626036566 655091164 824520332 906418693 310989215 911734451 665755169 717200787 223014009 956434987 454332166 465913999 110540778 576791131 640440280 905301399 469197364 912221318 85047403 157351988 140589718 146800097 577212068 840525392 726606430 778972299 854168628 867958467 48100797 77451786 773670172 904398664 657449352 795853149 211012051 742317504 185877929 271737431 402316276 805862649 294548602 549360054 820214993 987548621 879690644 920240652 752491853 940366553 143563425 964183285 917187312 988751981 437353222 968451224 776535954 800578157 896475133 944931912 443268204 915044793 855588049 987457822 671788568 980627773 290042700 361887310 400517595 654376338 595399200 848447707 829450637 894706802 838660795 983049773 294167394 624303612 366310706 481594826 982902321 984947860 824236276 910035948 345992388 607399004 819803561 894237232 102673367 118477710 87892349 330334613 134600173 387648984 845935739 900904919 640807872 724303336 261394063 731715315 788108319 824290372 720488160 844548204 579593245 741012866 222007164 664279292 401852370 876535838 882968940 899742378 308588723 521700674 256072752 323302455 536046702 854043926 422170344 806284068 184401359 542734406 63296050 440990216 803501266 937287650 708917247 713004492 284160919 334670458 871494965 894784665 663644162 703827375 826533339 985328046 469949588 537209901 783244699 868164778 176716311 548642445 37265082 80811866 966342943 969502507 346869924 846590620 462624626 776794188 43261998 547684658 531980892 566293465 454184341 821057902 449713162 481897627 654437417 796928840 817602462 992162913 158925552 687114697 434331117 867379274 703433972 978895119 194508828 275568861 287691643 322624535 703275386 939269919 147920329 257980097 397476389 648998286 447245593 988533949 934559850 941310820 707434058 772276003 172668478 575463946 278648939 343584506 499835410 935943233 776071187 795016475 26372802 113679293 948265565 993211000 805976464 965806938 271313926 759080719 627709633 832721749 618341276 715868770 718477031 986204948 540418218 981058118 454345753 898736913 330252553 567984250 15394740 951722595 959441907 973835411 362234306 472335981 674605403 992741558 696757706 837192321 963809298 985478798 56709074 852827804 205918814 454949811 880821945 937842228 738931385 933500768 123816435 390413965 91766892 170000664 700711121 919899176 815392932 961891436 837656972 972298909 794708128 998828573 293207891 300579137 827178507 968219400 587383528 660260191 883682404 946557724 131764447 352700669 246858135 902869279 931830677 959478832 211330515 974041084 796927422 894953028 177577232 796377139 345177263 812490763 560308974 686540949 473044676 930895581 625905563 820587848 985346069 995249124 485528761 674789256 506524655 744503777 351380060 483731828 734733259 835793261 623714102 829476288 31633681 995431018 697390625 716966371 185818394 615873525 675391307 874718016 95745816 662412834 568461398 964885910 849047537 974021711 78474514 856806062 690551759 850640817 357057354 889390556 236825990 869819654 820773026 978379074 228535472 441690078 719299785 992731571 335389624 920540170 471702597 601594783 946722475 972496069 731404959 806797698 435007881 539967550 553769416 854574012 814293574 955685501 137908292 759804962 224315985 432400652 993969100 997841760 110906510 268937628 629615549 704724430 518491758 519875699 34254133 601375426 162166922 811882625 894096687 921871957 206236005 783203772 251559709 892321932 891640000 906022954 572814058 997230617 450396021 820987602 27230163 809816204 693246604 709194682 831876946 860412282 966498182 968469877 671265348 680802745 575144128 741050814 757391918 978023710 765909278 988485992 526868109 884465981 879561535 993188533 572574505 990727554 559675383 636903679 546600771 830972773 621368044 982191284 242748559 537513811 306188048 558141345 425470150 801017649 719003017 995106049 641775195 946747919 607782535 949197616 739083313 853728791 465662509 792175266 621719069 642791172 655630757 836363067 734296977 737981652 554189781 931667309 578803954 894244133 109217661 772410842 942039379 957556660 859685876 974745582 338338104 729382907 42288920 165313410 332756801 758486512 455231507 980735012 469537914 903101761 444828334 471149354 928495143 956021638 476884689 916903931 726732196 995133241 803646677 982576475 553317288 576222227 308148030 619114199 880790574 950546274 519070524 623116989 54889674 367957622 375513676 630341462 164014014 959553143 370955395 893905419 418348317 578705266 342556729 880102541 384739955 713228772 630025036 905799118 40020578 158376562 148522902 976823089 410716079 518380352 439372836 521985534 48061646 631966048 887001858 949052645 94554215 387528006 630661333 856249368 377635424 739175923 575277499 799794543 719423917 724186675 108234803 343595497 840157089 943858551 817800421 838567481 509442978 774960922 150532138 489933505 844656304 972015399 100512834 739810350 732535385 773672244 587417560 662384110 419549779 814144311 905348448 931538024 568221516 778539076 911644974 950204254 841554007 952768555 830720729 881397663 441479218 999125802 630153256 658152876 634024370 796908439 681426564 694548943 767271820 836651560 442706424 847941799 446331159 936962847 512172121 661890541 465910024 627746439 688816516 802056602 354303969 652418372 574386737 685800894 181199663 693959001 807940570 838147491 800822334 874087839 534715394 890790794 242200885 270848125 141882658 487852906 664178664 727934372 329412102 731904472 88569229 729000818 217075767 731034342 685334211 688002971 987763155 990973265 85890416 660793750 111208543 192410785 872878017 949667090 439368528 835728751 961712396 997886264 565808453 716033455 596825960 737326359 699469009 915992739 195777636 251487104 918358999 934129107 499011094 784202460 471934771 843292963 817141005 873040863 37842097 212709445 433904929 946797626 529508748 784544179 758191017 894051110 550854272 701844741 269681010 444950953 13211463 773370319 399202549 679738267 33763003 39549592 651930241 678078562 268526680 318149637 157895122 538416079 604784528 612403017 552173624 748006871 859851552 988871298 933233746 995331459 860713779 951282237 924134078 933241196 353400198 835839176 350487905 720626328 774068134 798525550 441159068 780951996 290250195 859619236 682426565 973036734 14181481 88190778 232966713 809680480 987265058 987814795 14399239 942568858 677365248 903959928 673616349 903415700 605782031 863198565 57205149 771630377 62490169 719929332 223718247 396104633 711282337 978140754 172713364 338347273 14465057 813195687 15845693 951865280 799144297 895236414 163889012 494780163 641505448 759719468 201064834 535696301 623373514 677830941 408926122 870481942 693088953 727381226 334597071 756375474 691401201 909276951 746352655 923367977 5082310 624381835 320027630 768876852 472537014 673272049 17502571 771110532 592216673 857916978 347713968 620779292 32375173 282317007 433571122 554801095 883234230 939916089 804685537 810511772 945511282 947309207 450738536 838040822 894560043 926958128 809474356 820118500 567076621 706140828 783818715 994834482 233701661 894484548 390806638 404995195 742032055 870589901 648452443 902169107 713637904 825044395 874526105 908886202 309760397 911134235 813883416 956661290 928626566 981510976 919770739 956814562 619763245 830807345 12655392 431810022 773334060 887178321 402459865 586660227 54509381 891380091 550921123 653377902 6588336 637208225 427771243 977200828 19915155 943876913 461441423 756272065 404613257 765037444 678717325 874448994 551911173 653974307 41242274 479766939 503482268 863787140 663720908 795573226 139232184 163795136 774011313 884014900 781245354 873486887 608678827 821040859 382595606 715347496 197357619 444718755 824947623 860716699 534392035 656697525 725084744 968971108 106170596 602490276 230483534 532638327 568597819 839167917 881843086 889558577 225353581 226914974 49258944 628541932 278994450 572518281 992713509 997545405 712697602 885859087 212969921 842542418 484121010 512448166 788671911 799354030 737535486 864370308 843578548 979130275 731039222 883622358 19488406 660893593 178126877 900639999 66129224 862823471 886120501 891631905 533890073 839077504 231898191 803085373 895622929 913893984 406515960 417605984 396458794 636945699 815346748 965626940 651666950 986624288 747220041 832843628 898010604 970774123 110492317 483912119 363810899 915659012 522790760 722831393 736270215 894447277 690280542 785332275 929053936 931904745 89102160 779551619 2632222 775830852 879856913 910866095 140820915 369495922 942426869 992759921 882920589 938229986 322393712 941093157 102818265 354022992 863335318 989255414 715163037 951651665 613959136 877209514 471905627 473467659 996533528 998973835 104140346 682173019 881570513 989765864 383734191 989879441 660644848 809765030 561373422 780050282 611559999 878569090 9275154 212965978 167959792 303878031 45813887 678888569 232934329 452998516 522048799 944004995 464089311 558786525 858101128 911589797 7750776 407281960 581973057 710958767 355055199 723746900 233750191 362839045 912033987 987826901 4289026 165039701 595023372 973759007 83125764 859995342 515125587 966335003 467779836 735988171 107046725 836106617 10708538 585702538 449155625 516066941 611239898 670977624 744966374 913605204 127790945 672565327 141197250 934376996 380033584 624721309 944800195 955773864 133163531 248181375 273465437 923562280 86797860 160703770 259210998 867588777 330906515 331815353 237202546 289725397 824408025 867799498 947467823 991506737 923808592 995932622 759448906 958235419 231638096 717706873 180445746 359538682 705165239 803889053 336749592 978403393 658091854 836277654 821261769 981486716 5914464 557385503 185877199 321266396 361164267 432766383 603098307 983304290 749329008 919895836 204112061 948847959 698391587 742732850 121291605 493299042 934518220 976014321 491795032 545073948 937003008 996653251 623342872 650664169 888578710 919264360 4483229 88675541 736122838 990450920 105364577 795915486 356322890 981641898 411814789 606144979 769743038 789888678 737840931 791735618 397443604 468882333 189087865 597111597 466838211 681574693 299323619 885437780 18604343 191943234 805865235 963266324 678814720 790418578 566867607 926009228 492306608 852073164 511975674 855580306 392963723 474192089 417130363 511393621 793903308 915509917 532642758 752358214 653743567 696024363 915022359 931579205 329815411 598642224 436597218 739639693 867758172 981055746 120083053 684510325 714641466 808950197 79010911 319343941 45024715 165126367 362146861 898160861 313136726 814967115 408981942 590337311 132330519 582057973 992227005 998378425 419611305 434322728 835004636 993749115 955484455 987777890 522127384 550458674 8921154 245622241 217678498 850091026 39783903 299441718 978350518 997133795 162543136 794576533 221354291 336559353 99894159 996668609 451367183 725718156 420952578 987954500 103839296 806565129 255625427 369543292 94233191 450008128 980955503 990920078 34621046 556488031 221777443 855236475 953026460 977284090 155354892 601612106 824377289 844052376 878918202 966299868 531026318 762810109 159113348 969753868 219754403 842251624 966427903 974479499 636678262 871732998 278651019 991229796 173817994 458267219 303938660 828048686 343720057 361364052 245809382 507445928 204148931 466671754 251879699 806956288 38179868 190484529 99042357 791942077 510927982 764467600 664687921 772114752 640947102 959288955 50004051 325078286 810158744 894548593 583300034 796839110 107259811 853333154 329612419 798108527 757359596 838054252 969408481 972476851 893903838 922388359 673537764 795060313 290816294 354802247 373839884 826322912 193051293 718520420 548769718 666041035 199829843 927160150 325686667 878198938 244513068 755913810 691882067 716094360 632069964 778070892 503293523 917062163 772285940 806211923 224762818 489380728 720607813 909578680 963117756 991601540 739961372 879093333 179266270 376471718 18306203 586038767 130598577 592517577 119238815 923163532 140330113 205531089 754825159 775737464 674961559 996657384 971131517 999359421 845082959 948570082 788553705 816834187 959665161 977245318 318194911 928333124 486197738 562846366 20101742 568519557 955749390 997405771 182864120 381345261 645684816 887276245 269889439 463548792 724013362 894130602 835373980 922503435 67593672 359561569 141108884 817996074 655284251 970023446 483220070 867457564 963104442 984403875 901509602 903326861 17296584 45502842 158263758 979332757 415123090 536703962 138475696 965326208 417179774 473285728 278157400 568032129 476371418 855485787 231524234 275147577 788013832 893062227 440592249 549601523 234027456 598894001 780147835 826925901 267619004 327977279 23828676 508771683 728687231 781287223 654992166 987176128 302891838 682154199 816324211 908079696 248837585 543194846 85819612 555635074 545613285 564868199 136730293 589258844 388478783 623453758 57382830 473439539 979533292 982160598 724193980 901375168 861079614 862896992 324607587 614641138 344816948 947316476 631827391 949757250 791872168 968119078 332045101 529919893 212368082 616847306 908314010 986824586 606221664 694803811 549920021 918683892 526813841 998866410 808692492 854701731 869721356 908100383 962409103 988005146 360751703 500115468 656416163 857863692 22371300 821270931 455355231 471164965 269116535 575792706 292552236 438537445 473544903 842229643 232826209 341267750 818707345 860264523 933972670 964377682 137188269 652828825 619277131 676004867 522889942 787930955 867564649 869773512 469225076 620429737 549092844 773744438 433781957 478719717 232916714 967017868 842021061 842527981 519443527 611021203 648422869 805823914 284411244 363576359 48708269 112575805 739874778 859498003 949938516 953678320 848389260 906288853 643844149 663098355 347074879 929200016 998216645 999035569 651979058 774496645 112211207 947167307 231254974 770607270 752538839 949907284 229298652 380023029 924176511 974372892 754858293 884362931 640501235 914201365 606317868 800631755 890113646 948937647 659534569 913013606 588651737 965975386 759428775 801584742 949069242 975340645 191188847 264063909 724911326 853518846 163505875 869948879 538363839 698492747 285634286 982113172 216345329 292902371 122131999 753917091 369574738 817902072 888196848 951879322 454007533 743193555 928422443 980704618 171533198 206995762 9900212 346460853 57286234 212333060 481393338 989630397 364341059 570156302 214144543 599832134 261550126 925117656 52104669 950208143 435228531 582866283 670480286 919414435 531670787 773935129 493063546 874063432 520647414 848078385 318761869 334796941 444750059 918194675 181193787 948436636 54776073 653677950 20486125 135370964 895544042 919431833 152577101 356033011 692939250 892013286 181251519 329743141 515699201 754755779 887537397 907858407 327636681 798973477 402766393 630047086 549443766 750875602 991029653 992875773 980278961 997288391 600458097 633291496 156413143 919490305 199267255 596402547 728644439 793114410 299545243 975994094 789813570 957827023 544350013 714426081 64608762 371262964 95280451 723936572 950576654 969468336 896929099 916087562 457956477 589740875 59668058 919696895 224862146 662652963 931971525 944168659 321603125 561200940 197449692 588998650 863364749 939792460 743127124 921489572 115867495 557596009 547678789 840885360 347548730 638782573 205872842 769267053 391881980 612115306 668046286 745520054 469980557 902454936 433923421 465316688 14392975 729611928 980790919 986767450 676532796 824767762 2490532 461226607 706401123 740319206 110481760 630884566 22070607 237814657 51746471 343225565 279036758 977043450 435391867 450934342 260479509 284704058 334206535 933052293 259666239 651215163 829509183 973378964 311312377 900633583 404187635 820263605 716960254 753997849 964850304 999154725 402581842 807827998 554043506 587233767 183996038 776408312 334253113 497042832 535529537 929380024 413076704 900023110 738598377 744577934 234039917 667786830 204067240 653596622 294693403 553123877 575091880 988672864 796601601 976167960 346043791 997289327 43781151 479329668 675296468 954859101 345271618 807607857 55845753 932441008 775083050 873611678 545374674 574456761 224489573 288484295 304572666 593862825 811372340 888463480 651111791 924819526 407747254 548227638 608851072 787810548 179891391 206335767 22325705 741718263 754620300 878830339 439781979 998496817 333752158 853855841 513585040 676730714 649180617 822660074 810973614 886756242 725364637 783256659 558390683 994538062 945668404 992287392 440344643 997440410 551164233 855292434 16356522 808711302 482296836 968802605 500081354 515641692 653229116 936251269 381058566 814835603 363808516 757324337 922793455 967328859 381253306 449544017 382919113 684891157 52870909 75718609 888208636 916993720 317872312 515540258 351005938 485759264 178554830 690753353 837740878 959765123 770655328 806505825 60560155 328550046 569267076 654255394 836552094 939942264 242638649 612103869 562909583 575371867 193195840 286018140 92702974 509169448 358751158 394872203 636417245 693795594 632829114 939983105 618043117 867821938 709597248 819872247 482627588 517186585 478256489 900903143 498226511 817513983 504128691 803799743 646632232 736019453 784009407 975498019 347950742 768834013 921418042 922924241 211877579 260680263 22751957 338092361 3825417 821088029 182764172 564669008 853484148 870678335 528267651 774544729 326944296 513433539 986393076 995783760 60350069 575530549 39483170 140110459 648995545 846797676 250387884 596976113 990610151 993951321 935575530 980941191 755453355 878171320 937791457 968703575 511583885 887116719 143914326 824763905 415075609 451190998 285122159 728573096 468382356 565057909 69950991 703398508 734596570 833337808 30189595 115614839 846228117 922586791 380500116 465821932 278057541 373034265 924851896 962809913 417763992 987518562 994709397 996258005 656876355 698017858 439035185 544790212 203392299 687220840 610832464 866366916 615914641 760276310 70607990 249859681 771352623 926681322 943686857 992590308 787862076 999349240 256035475 400934986 573103367 702190557 475579876 673966404 570836712 814463923 540019409 638715419 278014465 398213809 695515919 754366945 707995593 807923511 64318195 849744626 427020881 644585582 748113601 916896750 584925683 792287896 196259067 754763695 600424422 663988812 682036061 847597732 453345644 460672961 225365744 277280154 984404133 997920953 385697623 715747175 568010205 984783920 242017310 576100794 767808385 867768884 248941267 620941371 868849479 977983098 75154897 136666473 826076721 883033994 267555087 519469207 526363963 662557334 783734882 809028815 261841709 970573222 348715829 928459175 597273229 806404278 288620793 635080027 491821379 819796507 516806546 715527221 738606623 943452995 599119065 640260073 145108416 500841379 362795157 664918963 745700722 996076993 960048648 987441684 54101292 315259932 124489424 139083287 946382326 981398960 819679665 951042001 256680643 980289412 19933855 77922959 139312836 206512158 428253779 820784942 18934238 53901466 904199416 956466294 879471977 982962009 118215908 505011914 481358359 764611906 450850533 845028735 558945548 760197465 7380455 356851096 82530914 139184986 516891622 687498858 594570457 875515312 358355042 696986676 217455039 531423423 30991382 877703894 912125200 963909353 549736154 648159413 28086200 378100179 430135227 809427533 659525497 677481400 208175986 849527587 775914295 833884916 881570103 954121670 559029910 924663032 882559611 918039635 485994819 722249993 193158804 290676410 153678345 919150565 307084964 834119296 649219117 712213411 672257085 735728107 722312016 820765229 455437468 817569032 428069436 596030680 541745939 806562861 637622871 821322441 793297299 795123093 223105084 961430819 753845245 803046583 110782634 965559791 893868130 912121789 927741520 967492451 617849338 840058641 78605158 629820240 1701388 348999097 397167685 887379106 924525871 980595853 736773803 890057669 643280960 777709590 460814503 675490372 683371740 945485085 602337036 974062518 525652769 744603101 27150439 435261494 54069607 870469951 586481586 912887204 567235445 835446779 782048151 953533727 796497336 970816645 116834522 482408278 762643555 783072909 411025859 764125740 295396094 892790338 361050083 774434722 138573191 611449468 46477766 885923704 525435143 666501348 615537057 801013979 971036878 987425039 639793401 697628656 392928357 676083696 35984609 954611794 942501225 972434746 303172785 688537133 114522621 871160847 759273471 922753424 334190469 598046022 882461762 917432066 884646377 958369222 171018796 753238093 803631475 827636629 849657126 977862345 834610272 996018302 129772374 468429064 642923321 859999530 526423850 839797409 991548229 998244778 118675572 940292900 968650407 989936319 105335877 642076438 83671118 206251815 909026552 951945120 437785731 913549415 451207365 661146953 769806676 879845546 560397196 578023131 848570992 995211995 310490718 621143419 258402348 900339507 905397749 996101001 51714965 585775688 772790605 888655673 429838154 688760793 77835393 415039325 958100193 972281970 936028557 948782516 807471125 949733370 470818076 705252557 913020371 971722575 234844949 552271297 351115703 371118151 646377179 687901023 189252031 376696754 829029089 923704044 767226968 893195388 38148736 258733128 676006955 758607225 205255044 489021612 734976262 992404649 400427823 667724837 148593992 791074714 748655465 948207470 783997790 927338720 385914548 648500511 764723099 925652656 858205173 980902759 591204429 663895588 960278937 996445610 17299774 322656154 918886042 934598725 370946018 940249840 965928530 995026207 302702147 302891570 392014977 783819003 757029094 954791277 796093884 841317871 122040221 333583628 417839264 456880187 944491165 988751327 913498844 916299649 850212599 992667949 63736137 280366392 367546022 658222946 676300852 865591343 146538288 272283295 152260515 899611066 930187201 958796189 586246993 838073244 75914475 122940478 676729002 767941204 527092881 942854555 713711317 891840675 549393968 833146619 116265943 372836949 128212834 271893443 607114246 929742351 456434182 610856634 675831575 826162756 594123724 598089047 802812800 956137334 935281219 979576160 105578352 475005302 736626932 749769401 167615928 526211358 120433914 911437728 309160629 459943803 776404272 919693584 422741349 786464464 75235464 559815091 157340529 238742317 521767622 897581952 873598092 961724607 957283990 967511056 951558900 967820928 247592067 950594235 781049311 986265325 170246351 430361441 600182568 638228974 206338101 352112591 890436590 942399883 719256819 991730142 694557751 990075404 153448901 952396391 631136078 989090636 835981088 892527605 499687393 875245624 851522827 975461943 392542766 737931927 96721745 845633625 768380318 969321459 245722353 954831555 765589182 983311426 670493078 922535607 489458317 965665686 588167429 930548181 967830063 997299133 199195326 503825097 654903709 912658373 479910051 644313076 23494442 389943823 78107 780976882 513874019 606460104 335875492 768120193 113758694 854731736 72744668 518792518 903424342 990509924 601077967 620975087 794658628 945717405 445883283 972229661 679330199 750600176 49261985 153595816 820525571 847878128 408172497 620873773 769930545 833270684 593806796 934010024 186043740 394503231 174939198 188049590 336127109 780108243 483245893 484271096 383205655 654693092 33278343 796650327 605719414 846948388 415277511 610680190 937043483 983427490 600232899 943296196 847194906 940762090 517238016 972059636 627177788 987966799 465550466 571403210 320682337 666883131 843883062 961581124 171259706 727575636 372498070 764811738 470306101 881051331 593589430 973104423 891108134 948039506 671672173 723615463 544664996 629148108 987831871 998065264 145823661 470166011 487576561 495429610 385410895 586042223 73807139 446707067 428202558 526329210 250242045 998821163 633259130 682537376 552809245 929103066 673653029 780213903 294136219 589708452 168001815 633698129 529783474 850565901 877053405 905233456 537386669 861597359 972619950 975792835 902212729 948406808 276928651 483737391 58828324 368732035 283559610 423933739 797876241 865303572 593939232 667186584 247166744 513129548 667331325 743379947 128118614 537055661 426780019 583517296 723158491 797475761 268134903 676626810 406288861 776621338 402803564 626358802 322159822 402032072 372530744 669873277 177218760 579093824 242361526 840860491 692532901 718060800 912028354 989156672 437572755 445682909 31260910 529366359 395001505 961429424 287568831 857161695 603973657 642546319 254787012 420184948 529573492 717608298 988654874 990434992 237133873 333735776 925419980 997326015 862927145 930983232 730084364 773819208 307855725 453001820 640189518 666085912 626951256 923989191 608798505 827843944 886659100 950671309 113692710 774841995 970589067 972331376 500898707 925590238 92993619 988615934 835332416 976284896 596965323 966500616 125727821 699535613 580044271 646406517 594187447 878704745 72763201 953554147 22347904 668450049 741748347 835543828 365291664 988008784 897291340 961094247 119604033 949663077 855132565 890398846 246859836 371006619 333013010 904533557 141950633 276630081 286064514 703283071 910322275 916400675 253774726 735727403 407719498 660869410 270253963 950875507 268455294 915884059 228519695 708087023 987190019 989419467 571416178 964963392 767403893 872824874 246112991 722879007 423229213 456809807 266768226 404280925 622378936 664406455 635137914 811448970 605639134 629935915 250092589 799941864 439946508 917684823 609583384 774829260 504261566 792076782 383934796 671010472 894655226 979464218 455707092 505882974 373912059 597357509 297117099 566971083 225875483 688890955 732703255 968347513 807634620 919058402 417950658 809261020 903117404 955737377 58911320 609622367 966567046 986277397 23830557 891067502 150323531 412402935 425394896 551449153 107927762 290233936 111913603 278672356 181720011 312703195 804168837 855020855 247700673 665531742 424922169 455660334 304069108 998215122 113203933 207894511 322511431 935773060 111165587 401967179 273337324 471287967 689338096 948622661 624738805 831288362 179234249 765976369 668758561 780033576 916590930 986735212 839995248 970977000 369751918 863954612 636436487 764159874 160088324 515932360 476918427 778526593 174177742 360158043 245254970 580828989 659260179 964686424 36768791 936267973 556927772 604298002 779046430 981727659 523437934 926938205 92831732 671622297 750187365 938108394 681951731 954223288 214004421 922337015 823593972 943638286 4447999 457542257 120117767 300138174 508855614 773260933 886495943 972423288 872921596 880953174 697377618 885203116 740180105 909209352 641164759 877925489 197199832 482616343 815397588 820254536 484510522 802110257 76266911 885141476 78064822 974806262 160207019 888944042 514526422 763594810 167498591 213525452 663253710 998839818 48140460 491841871 103330705 343162039 57235002 835576467 682272002 782849246 18166185 691363964 25277675 414746411 536980324 567880907 95167878 804362470 587983985 912302177 944819140 965563922 837865033 945525292 356514026 382313683 594415459 747980673 325795178 538640183 456184454 576919580 391038807 415118250 36831100 423571294 29982987 367618271 768483405 955745378 127537261 893094280 8514953 282693310 844634551 862886845 648667667 968952720 370855990 441683282 891184171 913479615 70989738 885406378 987976543 994918200 97029521 597286457 523147621 942816254 770581096 927265521 45926504 642279656 633357450 881830551 473518730 695256228 568815996 984278876 54919585 777027084 16293077 64705726 734521059 785681675 165821776 238916668 191071895 644163252 823665549 967703571 14356860 595724632 468698486 958590454 234517271 811047338 747956627 944249922 722534747 957677963 202266262 757088798 578135929 954207735 559666343 793313638 335885224 584418689 824652315 828820058 541619035 872599331 206727277 552434310 378109441 607411434 87463934 609361218 927322548 983929697 314008589 892709940 962711085 980678586 177263011 530387275 422517971 626746335 761267493 895635560 474609962 928194321 408437964 729046569 251607169 614896302 709627887 942216868 1538695 650755890 932155521 963123397 145080758 256133059 854953421 878492324 552449198 958763251 764312316 869275773 516162873 939526870 983366237 995054514 310603909 737902602 172711888 303409832 694322432 739645688 380232009 971939926 958864635 960156514 738544765 929820312 464648109 667090384 257582406 595626980 411174526 544908478 109297154 597110607 285196588 803816273 831556945 898510674 387945887 416139000 177218476 968983163 435666060 950880240 556650694 739689386 953194879 993474421 188474811 342789125 65391551 260414333 196068577 315529778 922034433 997170529 120424410 737692042 261877661 543379537 76392147 246602670 148059438 977376862 865562365 958273440 900242619 949739068 664491888 836734463 606600460 694262014 967011109 984793704 555107387 834711858 515308143 748553108 312456318 892517422 198237216 246607069 846028769 979070837 122643100 874429985 722806670 885261544 915797815 969309473 333803621 488723210 384486074 706059177 444959620 894625436 652250456 684228555 275888690 763223185 440879308 673468304 355820401 481819967 587339345 722868755 402058778 825442088 505529862 743348771 63319169 524790810 931878646 936637097 903579022 998216219 956201069 983141679 347610760 491781261 182009868 729021899 481042851 842222816 283754690 493565969 210630685 269978114 537670734 855427198 118551431 821406910 126580324 853595677 854684358 913293589 708197844 798962258 859318294 922810249 908719122 966674966 71022133 371673587 984040354 990077289 158757469 457179090 300931846 352332205 71564731 664443251 150936983 335339577 446892651 748554812 78880299 578419500 49889683 517621540 515912303 763708174 390357642 460101332 129068997 268870902 442672703 524849544 838070958 940385963 726236400 912759506 262609511 554624519 707875076 727618979 653598026 701425846 486297116 865162757 351903870 559283148 703367431 781072665 677074708 985992492 953571020 975290495 79135946 494889964 275549001 802676074 498260919 584175940 120567949 620388052 612633380 680824152 498395401 672217884 495504388 511558138 716715150 956323704 634409534 883051479 962312859 998051970 978860953 989725108 969427296 984743813 941004735 947334950 154175420 876515118 360508318 726161215 215498935 427603324 825280322 910767899 34955776 955984232 581529137 941977177 98356651 270956292 20793991 991510388 946846164 995911578 115520292 872235241 955813714 987838427 63916021 655923045 877416261 962225605 837699737 866092961 726177101 840483710 631249741 828067481 184967289 499741523 948409987 994096610 484351016 712880154 573855268 865761490 332862285 699131130 44841605 540337652 654688202 839540018 776844911 926440076 61734904 377039114 847910706 895295391 214695207 696233455 461285505 739235716 37158505 921161810 151124479 940269988 393375060 703486916 486986233 714718031 485582606 831645897 306715671 393629022 769680315 992751727 615853890 633591879 227600852 689462788 674964766 916168191 235482381 966237486 220130019 271633189 352976740 408759489 7535632 573857192 246918829 605230298 56332951 748219898 242324603 908539653 494266834 853601399 929063637 966916054 747557036 909569758 952453918 990152263 273418308 412614448 146379922 215867814 818952199 906963212 581698994 901895052 576171322 628022920 905039254 912846222 59048974 712569074 595891402 760617180 764541762 793452566 507709517 926701098 425202939 471886122 618901148 765677910 374856200 430649352 651463309 959188424 522128882 537239685 951107901 954580965 512207137 629517336 340744662 513001805 120551119 825942930 397674835 482078854 339290918 590136915 547409699 644933845 671372309 938930880 491708030 610099811 514222835 544457764 78973821 779462438 620472076 703924611 218074420 473027573 37038219 492058002 707958354 760988021 750125422 840959297 621321933 756279967 501096945 862363327 417893480 923039517 557419396 863878648 259712185 293478516 678757815 972443177 829262993 840348335 353117235 596124376 361441086 982103369 448926080 743271879 181930099 905674800 907429127 991046459 459924954 843150462 576890495 713622716 882128595 998912705 311194633 480747791 673689046 961197094 153709615 219341333 62241560 485756989 836985194 993961422 700343512 961964768 430316801 531373120 945142493 994956931 486648450 713106754 851966149 992068023 383425010 726703668 715005704 825815340 136462343 773130898 82147254 721039769 281705841 838508657 604030339 924186088 210583189 678841419 969849530 997679810 177083947 661970384 334928350 612045427 36478487 461569466 488389400 996934720 304319742 756545549 297917905 298668626 88506455 356780988 184823892 984889929 552354384 969326022 634684233 693374579 74488973 550436902 304634238 914264458 852911608 994512042 670412995 916744499 243800448 348799542 754893530 760536539 37255240 52396170 465571150 820192864 689827135 831645892 822183518 924946074 135612357 721268204 473619361 895011215 687338679 818719008 441865063 738137564 238368705 419843862 307918294 709375120 524748065 829799110 387539199 855520132 754465958 993670193 678851265 740414420 3926130 314215692 468483370 714041530 336945920 371994790 429543126 670745730 926091368 957335140 197564324 780842557 905442682 908168588 816778773 989900415 498010953 842308574 206077102 804991913 404514850 774789185 248629238 643205541 484475732 979611002 611503181 641626699 695573316 878259777 687322255 752056047 42403042 891380626 333089537 732579081 551063473 612516001 9700249 233870005 633998418 812179868 711336519 777801603 971304862 981405603 262396561 322951625 976835164 977763558 219591970 964156303 156515624 563326257 237128168 379965046 650963463 670122977 456446782 795990775 804676845 809886445 429808892 597207987 579748989 644192977 594432280 893994481 573604985 987245804 413789100 784948951 988429007 993944147 766723511 875057638 854885771 988142210 548623100 762482166 285362184 451708162 42809343 729889077 841260705 982362150 229644422 431146409 928921572 946716508 275828418 530341126 252144604 260086625 93728978 718653500 310390758 596062474 194337773 623618676 12279245 794564459 379018601 700594963 604121438 883184514 467632214 485030460 851171560 878870771 377168470 466602142 893652706 982719387 52263070 873875734 642368964 870206442 40031924 650254559 451120379 701509566 965384768 969800217 686958477 976969438 259352435 568869544 812696124 964635437 826875348 898769806 576982869 618447047 647078592 659565049 81494131 858400594 263642500 818679954 483596966 654229343 617194449 959141710 724835427 762586519 119047552 665817646 375230256 554612737 69383552 702031810 50080306 432823425 425651341 576657346 298368685 848216360 916252259 962774372 91214626 713170755 113170600 579882309 567848319 964030791 910041032 997666091 131207075 175959222 16425418 131206735 39934839 988394158 459182344 639489052 568994772 572779643 220564071 899223733 415733818 425273576 617775048 882148961 428162332 640361928 968208467 989460816 322129376 600782645 231117885 982321423 815678204 932933863 357401542 898269273 4957031 978860299 647973560 793271737 48375 805425358 893845425 930317814 365979829 733989840 976252444 996542631 702416343 714703341 597485926 750029934 561491877 889700181 250189636 947721020 720009503 837407683 624894359 852513328 179544009 287537853 966649757 977674268 341480176 997023302 907661403 983470759 574070818 773867295 783196317 990494357 264416730 414378268 747887513 915745547 243045284 495845995 467379550 874210941 232385503 809797521 120520728 731604101 332310404 656845500 716338857 866926863 408500470 874715039 195513689 597901021 895599908 996353775 402493151 520361008 976009573 989350764 466758070 939742252 539645077 590513173 851692783 877899029 706227027 835014846 765842922 968302367 406496345 966326824 705445559 765223938 446888979 866456026 845191025 855818658 959141729 959622894 745321225 946189319 357068126 428110549 585251785 751953174 505085768 727991558 719300048 941561814 532230756 959556201 785069569 846475756 881751395 914378815 132142968 287702660 770801537 797118348 66427841 627130290 338885643 838165963 485042054 552764133 726911832 751330923 377621452 639294258 79340054 442210030 383163678 989747627 324937797 635025321 875829435 892395489 257816514 673137947 692412377 721228951 471296461 618053869 374648185 584889330 507181883 546196354 43427963 139050789 903833108 955841889 191161626 940771266 218898932 298561071 424306911 565290367 922742539 948079635 953039979 958108634 856255879 862643880 363388121 480990245 869554403 955578857 945361325 986799095 179105686 740734288 240760342 827941854 962241232 974098373 970249098 983578814 903043793 924899407 28267099 792021005 139915113 300296714 435893114 820559502 125055490 147721610 619842680 713178652 693682465 919663794 902185619 909978572 158058115 365674203 181010 923458406 168338291 750311464 715389002 725869250 502242586 640320661 745686926 955650325 474194804 500265315 775749370 981005262 640539518 945723875 892688632 948337073 179877456 952127965 614819360 664021487 115832010 128811399 124953880 198698725 371904331 987818138 332152456 973689628 812696860 840612819 302678246 430602004 982748503 993016523 970350131 990836145 38119261 512035004 569333661 695247239 947036304 964092944 982563963 999060843 140371608 881740045 44353376 362412170 913061952 992821633 350010808 508296709 766679142 874493404 323095150 985836269 962263935 978014346 409733519 638482195 796765758 834526916 799396365 893527055 861790136 888956471 997099879 997957470 707489831 715717472 255342072 858705841 362678981 811353849 760351628 889740824 750602383 960655046 25119299 294391273 292336800 364194330 854514312 988083206 98329899 101382529 296032399 373660581 423680845 983935181 406664531 441437104 416127492 707947849 511967704 550137369 73342069 117200711 940482222 958697435 977432675 998883606 872986698 968012277 692990117 705091321 468904727 692379024 317904686 959420136 563554785 761760026 9388030 582863770 212404332 390005139 958291830 990534631 106292867 567953278 496077363 824414604 299958718 611168971 210733614 450156651 58618074 272013727 77568315 989451359 863523936 989002374 954468160 981338050 25362108 708573853 698691603 885045693 371356704 732100256 910483034 982700060 618130439 840104691 797357869 880431729 725463094 848528459 742293313 819103324 89672640 914333955 647093670 941309736 145440515 229505323 456576581 788187335 19049011 895468348 472736768 708843898 29016779 332407196 174877022 867475622 520120703 758225745 871770834 955392877 348348923 401403447 71235892 855131675 905801760 948876931 571287057 771252204 935134022 965743014 68469840 755963432 798501942 848226190 168076160 675053044 264515415 819804230 98679388 406444140 936784723 994489916 967028568 991665110 576446555 815094768 248446019 525953558 250538758 634249875 251159380 464198465 932073265 967256457 846519749 932089622 144946401 692509746 393545480 763219653 374707394 756943457 731642719 759970789 727357903 779820082 246134926 433723227 771207657 977223245 186101448 761357325 683988622 806209743 386196835 707199537 348345999 517507947 190988394 663502218 108630208 645678710 153731669 187513031 431459418 478002716 11039006 16850464 785112021 963473598 964777724 993414677 40545679 341383268 129411396 680339230 412758249 992724545 183585872 543334135 245298509 928283680 523528417 878109728 460304304 671489731 708736291 945752344 291957506 327963820 273995934 874452734 955936627 966268621 518110169 965556698 386692796 832309023 504361150 993820375 388615854 574284853 529872045 689388785 1507632 588717722 525056383 916942936 262890300 682313448 72996990 911698889 743066386 892739612 285034521 335693185 851858541 955821289 537678706 928247117 622108280 816232582 73242522 113332344 815199412 849769446 34328785 928435427 240403602 420074228 882260405 984050102 974402684 990750192 383629925 759689226 184309389 917487881 288662392 784213464 647451607 765673251 244112215 739660240 137760582 594104632 294574620 302302722 552003950 795856759 916768790 936547632 565661273 672563468 115017120 289687899 921776893 965346564 320714189 462698277 1894462 269038033 774824901 898334828 203411978 437384211 767501931 900040821 521872449 655276579 531014745 867279978 318933221 699218310 728602927 848916307 346526053 688507671 951799861 989698097 497337351 703947694 842458928 876818945 576497772 963918116 789405894 863950746 572936193 926954670 374392624 984022221 983845945 985767332 289548347 894594222 403933616 477523592 475769919 988506778 714564315 885380914 323671340 721322691 695758535 799620490 806924388 942247568 887752154 909220730 248756074 830876548 123684932 478685441 745342185 910713363 339334359 983542996 268340913 510925474 592644538 912382171 198286775 719665842 355770732 993471397 800564866 883858288 569024732 973329616 786157529 825975661 207027253 459701609 611740821 916938485 905285475 906413074 833559076 991758419 255119061 744214946 923418666 950303671 545428940 822626517 588772847 685715582 19310968 852269207 678253209 852373013 353453851 719507686 588300514 700709175 389742018 632481742 60253386 695849814 800470809 975321666 706357300 812927314 461969219 845234362 845445588 892084574 994509811 996764624 860380352 966214431 425117878 901849358 309499743 610762090 538753728 599007642 692815414 695284436 138999002 800528831 715933818 755193626 360539917 782267936 891022 350379214 492438099 766119704 150104296 654775475 917493927 981093577 328046008 913831047 44660491 711963687 231682476 379682453 444897375 560781994 339255272 823408355 369927672 442084919 393210867 967528202 362576892 614174832 995718347 999099268 51425701 82898989 853453778 883049827 338537359 642808401 38673021 89571350 48187857 610638918 312837776 662364890 612076528 691132394 16553631 367770732 61981012 111641315 30965924 660505129 892634004 912349769 655937789 666763826 642441861 646426460 601955731 976620418 460888399 798497243 244893853 260372416 977609646 999235482 166807009 964038024 746767587 925430727 621308632 953636686 80139887 310010276 531929126 781630522 855043667 901936659 830219001 937402857 159848843 469458308 285600113 418388382 467726130 547448551 408229060 730604756 902834651 952063269 323906620 999374983 581993030 768086106 860620734 880532300 893005793 947673281 888603247 973511695 745950834 797206202 382869606 909730852 519682159 771219814 88687139 510357339 64475883 292940909 15312217 546971254 265792 793297757 796113889 876656819 775467452 983572767 113772334 673643323 547825090 610892061 605254496 683486231 400460216 871908346 124449083 631481836 562838762 609446948 488249038 610207216 877033214 933374530 764630531 797403922 278892572 968228790 914867113 945125141 138079280 594408652 58296758 721746708 789391321 850331223 286754295 566429883 287822262 955645327 726148146 781585842 215133175 515374642 9944011 780024763 969025453 992783723 760163182 811545660 763661116 780855805 932235945 947964218 751473964 792096026 257463191 973291812 786393398 989998673 749607630 972491416 217110429 714598182 641242966 979240905 987262940 990259737 272000600 449314453 820082744 835248024 731034757 955557434 24619279 46307364 230172264 758834267 120461885 859235002 568693763 801020449 802155708 886227181 97726321 819112980 352218106 408915093 220638124 346116662 610562533 839093224 760458513 774251232 81442070 773435993 457405666 678872409 666655307 802279777 27805305 869517971 532481426 899449304 521765950 962614517 870149217 885415234 514231790 967790930 281243174 675692526 531044943 900224073 276919529 696145062 456691615 942395734 618351497 709740938 353436432 750423894 813565308 908019438 107081308 598870822 21044421 899905907 354354215 974356151 871722714 910607111 116849830 929643843 513379090 705329320 876851301 906339590 794743156 925017441 995394163 997593813 956167478 996969400 392059456 862123300 232038412 377734859 529886331 688925034 661648983 889487204 166866432 902178519 305859965 732223726 672006612 961059399 536456855 841038598 574158905 865064853 914226435 972031341 369251712 584922826 109565592 979892334 971275686 984895609 549709915 726534320 622736574 891480763 111485149 558721030 385272576 424406159 47870537 540748915 980364627 992221829 877151677 963375939 777451064 970943455 909511101 978831795 182838601 396170885 383047375 430319928 80129723 469066347 825313898 863596373 298094197 477451663 273811484 938263351 45738590 120687470 858579645 934992972 329395341 733616191 449533116 892523861 701638589 720299690 989397399 994194810 144142150 385392129 148919480 980915772 594419444 992366187 129710842 272811722 331357457 463392209 41256144 115061643 273375467 657032741 201056502 704435271 622017072 927922960 27978321 432921211 132907450 235461241 435236947 680082572 446025923 538445358 477133894 846432836 605698730 889382725 475623800 954583603 78918250 496514676 615904426 886276769 15478581 29088029 207345528 891135334 658174267 997586107 777225950 852803460 735834014 883694262 500554015 886503375 314030464 553400186 726995974 958965601 90047687 930993511 689581719 721537671 245424948 648531302 480953962 997982151 261564032 509498824 589177153 684740447 966795717 980423647 235587718 957189978 258182761 608772909 989206948 994878876 628481763 787221091 870805962 921798502 734105134 765347829 580138606 708718074 241748174 824643179 735641191 916033716 235919061 302301896 428181147 754821855 72241390 991276028 73706042 88382694 520893633 796146412 766621689 787256565 95317839 644579071 169898016 525383449 946438505 983352158 141618749 401016534 610874597 910270717 286430949 579669635 337746133 700682938 609002261 931451746 771366073 804293846 674043414 955418282 429394227 981267642 631711896 941981111 440611979 935447228 434731507 635031364 289413248 379697681 544438126 682204356 615738920 645383540 126249387 526882790 802386165 948446270 203182659 662495871 20246452 990521610 264629168 723543219 144966907 725491314 622651303 908360228 421690907 454061343 656455945 891363077 256474133 434760284 359263080 581382120 76719383 609556126 867698523 928208373 402704256 789541131 240125495 422145019 818087227 845716334 222762819 819301425 534887255 967026086 950694382 985002587 515430074 790296567 881341313 949203765 594771775 953448871 200648436 615631960 902739375 920215821 373429740 698240826 623859407 960391383 812630973 882040712 407986699 571624635 35401583 902106609 405015204 785991623 111146025 762332203 343945331 751242870 558699212 929025502 505722489 628034882 704351001 866071325 164714789 603307539 619495166 787925467 714673192 799133126 505040939 682285296 917220507 930864401 812315784 847329660 671265740 721036712 201196191 834148991 417537542 909674844 202823391 948177195 46418578 484678340 459327621 536587148 594056463 709325933 304876302 891917829 853615040 909402707 143296165 425014338 85318062 423890586 981388288 994001967 909126387 968300828 158029015 273517211 498515673 548325138 840786568 982382615 645934337 955624997 735690911 838738487 706838298 743264336 234792959 866208643 884008519 958121354 898223036 920294997 11817529 591260433 115187587 853597902 701794956 991807028 648775111 868565174 742893146 746133636 965939305 979101939 311446211 671313790 500368056 680645958 65896263 156493476 366533910 436761501 508897407 891043093 237655829 425964524 785015125 920418523 563359970 761919903 458435645 597265397 496618683 823174361 872525666 986089972 202914286 409469668 670056767 930681852 492117509 786614425 206985377 505136486 244211494 674123662 971116408 989045788 156590067 737269184 721610438 991179975 818142894 978020755 77945381 479042342 681165931 890155736 726121812 812533370 496529202 817629318 65216422 458464629 271103855 744771541 703649862 926949606 237532114 974724215 489503589 888315024 241280361 425726985 734876922 869459601 198527297 614063449 674260741 674282311 235222890 754778854 876068342 897270652 504435459 557795913 733550285 846927687 272653232 304928533 438224221 876499145 835248077 913012541 768097702 811625332 291641720 524551313 977898751 980707430 963374526 968944202 211692905 877880358 558387879 933546595 285156018 754404560 929958096 935639304 745885028 914118535 939416451 975847577 901555150 933327654 665578753 968117645 783325745 928479579 497564420 767126058 568903870 727451441 748280823 757917546 153769461 284038639 76746619 977843434 994093723 997768361 392092860 612417191 900935597 917771682 250492123 411299292 895805561 989163381 165363510 613486558 395989740 810550126 768340200 797098824 502321133 699407089 124210031 826524754 366445684 376433112 938924512 985289562 591684896 785147878 149594174 725106265 907562155 984945327 789227845 831316744 358524078 511241888 555152943 958648617 275704693 758806597 768375722 796019130 36053558 536356984 777806451 812385802 738024286 758826804 151604425 455022904 949249353 983635523 646004929 990407702 991286166 998700581 416543067 802253168 998696761 998811916 950660844 959694821 538994286 650574055 226505226 835643318 939221480 969497009 848409095 867955010 916936909 995396168 819146078 828133445 260110782 851387422 313956457 991531621 372254517 752303432 834774980 871362248 878587958 953015630 373817416 934243545 342448023 393483442 722406423 773778623 123835345 924277219 323853651 348102773 968232787 995451793 373115964 623816297 262899878 867090714 291737457 607661053 245752307 534108725 229787429 477439883 521724772 666190340 310349801 958225453 278102435 687784639 723058656 911340053 482912970 685564527 738174017 760308711 16073411 88263623 479781704 911154281 822934048 997740016 70302002 150205524 12548633 518104148 717515770 849988884 568570405 926798552 826940747 959416724 637073311 888896124 381976499 997595079 671876726 696961070 291505974 866141079 190205478 643631922 896287781 939279944 439119936 694244411 340646224 631818480 818020824 999367554 548495889 633766993 949158665 987490926 651863804 771290752 830154484 895543323 605286114 763796585 562748681 902890413 104421290 181154100 998499046 999316798 547682145 843845242 518035495 904188964 70000399 619981120 281915607 354405043 100372175 209499668 895032161 920328360 117195398 258853717 200447208 691232433 497514881 599861730 804404901 836911182 75381629 539162378 407823318 740733797 985686219 988310327 665926185 881784867 91777114 418279825 889486285 968289379 738205818 950052401 385283789 420563110 833459564 924389734 184971676 683784809 106049885 195542605 569652610 927192748 651410743 653531573 739146142 870377645 92730907 970625961 854137587 878979264 213022506 548569289 157248857 920968951 994258242 996113955 47917167 871994042 35221252 664148754 439448340 592107492 48462433 469695004 185971899 354139414 923352943 980376824 484656641 610763765 508412392 517301420 950661366 961310241 540783515 942623345 375019424 538241616 155798274 573558689 419844720 696827251 655463461 782118642 135399687 146331314 496562287 549379664 500398614 969408219 834897253 981119252 478141060 531142928 796871503 930239271 32323780 585009770 753057329 960801795 573636674 869382793 123349349 571876759 820292911 840644007 101322982 407074950 373044514 632800183 374640746 875888622 195748848 408218707 841083507 995253901 182821468 435715848 509897542 736417970 590338668 735557456 94304171 915953890 605632909 963323185 381464532 553972481 453687096 629874534 462234496 968950834 421286109 872005978 829294046 941058572 36052076 928639086 957096201 992378747 673795417 731383342 331752104 610495053 639333818 639991137 611695841 997033765 207991157 502272751 946981239 957022211 229509682 451271246 802243987 931258088 762750498 904883875 375436241 661206962 660833428 855118585 923497389 923982091 736731380 975708864 842324485 864296571 44431010 72932354 60486763 163822675 187802219 640501058 951801885 996054142 379372170 462690440 595225175 912243484 785771352 812853811 186315882 426152215 406016678 500151298 721182075 952315522 421665921 726312645 410414808 785076960 594133578 772644944 946179416 946237893 93566116 319589438 37893990 445442383 166978772 753394996 912209619 917048624 761670600 907799622 201247987 993175188 919862523 951979567 682306000 691828126 433310782 457878067 519008891 687227999 717557835 912973254 391754442 942973311 902497964 966510898 475632400 508249609 805761064 842361222 126048634 577429346 664144605 889684812 306897351 655653707 313489452 478291163 747331294 779295457 399850548 640120810 566237809 719409926 83753811 278901293 817414303 837920136 823576873 921977809 568083268 644612662 516456010 703420413 41263288 461720345 707777463 961129378 336837146 577691216 188774217 754681984 457600874 741678592 621812896 692779343 423222758 523974671 598163335 683294239 315672854 522557728 515371010 701737449 448192040 477944637 922310113 958476032 72052727 261763951 803098447 906230877 909187637 972858423 669055461 887074860 719212472 777347484 218507600 348209208 813735286 930521801 72690774 537193543 451166710 867997515 654708469 696457584 511746888 536523268 65366683 830023453 990854659 996499285 648166941 701812170 980076752 981702744 100777968 653872990 210187885 628221814 331346920 991981236 517139140 670673363 148146201 658105090 719781339 866046208 889580491 911764142 548744250 612168474 907442873 931868313 688538961 914679603 953074978 956417490 21508386 874313790 153668 582494740 646024148 855821247 618379774 990473628 40633189 826513049 540231875 597613205 968838660 972840699 65629060 143119637 362792940 548221467 798603601 965874258 576392789 810440141 760338811 924062349 843392879 852556153 277181701 483521245 107203579 476339922 307690522 640244371 982098407 992193343 728692960 822576394 11890417 36765336 793894440 979107069 637403535 641929256 540298630 978634143 332526866 404997995 456864230 695615248 274735103 563184852 800807925 973059312 361144379 866209958 195193785 473211543 937496519 943192049 394644816 662473317 750581273 935271783 437756004 495626878 812303235 882345212 659369121 661554683 481343474 509960302 786947219 955341298 89090325 612741858 909379210 954529096 960489981 993906259 174272017 772852946 768201076 809571789 642340436 943384334 256091606 833319879 811836050 859442709 312145914 557261736 595026076 970455441 549507592 646256005 935486239 957906232 983540363 992565959 674170613 812600811 522783785 941482511 138797719 609709426 786847508 908904249 154521527 538038225 323397742 782091624 412736518 481559739 681820160 874488353 730322082 929322869 789340532 841275546 669654406 853874637 883287436 987438764 614260350 765251037 671514730 939209076 384742518 909493483 895407462 905081863 913733802 921792711 372945204 522790320 705077922 745492173 352200379 427714135 94719988 127985582 164199984 712055495 605206822 872447055 884437167 965145643 91114601 447440850 870097026 906271116 505160487 903020973 728364142 875862550 90946242 629672822 466454878 574523345 990558646 991381407 378995899 924221409 939754318 955665915 231496599 456462527 922343703 982101028 19188606 280173382 890787885 903754870 70944794 814903662 6046535 864509075 649691142 976824201 809970845 872566478 377492554 552604730 663402094 955029880 458720206 515726670 544964118 594734383 893933409 947051910 93190546 883406319 342809752 508814047 643971856 908344311 122810294 188711289 935771216 965030584 306390527 926277674 934474517 956945302 35805480 964941691 211410977 557162872 664936953 839620892 337384721 861316668 303978325 583553069 961544269 987867054 481448448 629569767 927454742 961163609 515590559 601050623 653707486 864544981 690257374 780863775 819031091 996918715 200127717 607951828 928045261 928485119 857726014 862709045 911889588 969353797 147303980 790862855 312183215 694932269 202188425 414893515 999080949 999120601 839126130 886523359 472500096 737639620 996465411 998348770 226595585 472954629 444195365 791858413 701729212 748617915 874766157 876117688 853885426 884788647 711411177 728375254 119863704 253139350 33102020 741858890 894548154 941415050 970496048 970800418 265390318 926189217 26329211 318977919 836014024 871641751 99873568 773993097 504080699 725632215 164201432 307252804 605380635 911980368 527688887 866130824 312981080 510148980 950941605 978926590 588918453 973424690 757836573 978115377 168812751 287553056 675836166 827956168 538468638 893921132 58397111 282682798 517250886 773527536 651164730 942121044 479815994 792333139 822399632 892684052 759897927 956469769 366947998 422194830 145614051 625548492 309117924 901496463 82690954 785578857 832253985 918631005 897718000 988802367 814036512 914460444 218348078 367875393 52761075 79162000 554374590 637882283 378724171 920850593 699926307 861538001 237084869 439978738 555809212 675682827 354750736 889627826 741634869 854652365 223210587 821412642 478178740 886272909 644870808 843320405 108276641 753151109 560325976 665797643 561579288 857948887 251947653 542221502 433322884 821878379 949166693 954809544 932034919 956116070 438609626 944603121 161549752 529381905 283987755 958668126 133552874 947659044 188215882 410091347 896727938 983000685 378717666 458196810 665050213 795770012 52687731 727084386 363099479 521192029 249010046 907691938 502121391 915702856 804492898 996926717 237948185 257447638 527785555 948988250 821479616 919511744 86451006 89592363 786684028 818840494 179709739 712812511 333559407 854889368 554808376 828454940 65016273 807479112 550435577 985076592 790968856 871264664 923116155 935156353 284063444 705377658 192730884 748864462 663030614 748338146 316188182 519298999 534714915 860963574 684614233 742292521 356859431 900998958 35584636 772919250 244192427 364078620 115847715 615229364 781517818 845410886 220403545 834999805 250461495 381245456 539030616 889431230 352367096 641120379 373226867 465505779 897043158 943181983 247054340 424725966 805423616 859009359 424790371 818551678 450278567 913312734 855360509 989109527 922456339 975573392 607736009 647515434 495834226 626599912 927332932 976919120 38501273 256279951 658433458 884792065 884353682 931694580 334391908 420273055 141694151 764389994 380323501 429065384 675082014 718251923 685560264 773533555 733992477 946274686 119670511 485336501 384875768 758633383 98036247 461250035 199418509 399696374 294247194 422877674 981333200 993223017 827667 317777658 24229093 196351295 276232697 741519166 988625374 993609972 670046851 883364779 207158736 945997434 471704145 713692092 520224113 797100998 571445190 886050075 615991000 839339226 319165660 918125978 326254839 601526615 100215643 728504583 993723973 997311506 256041521 457253286 924495982 952446839 442797794 519035930 985730714 996250083 354482187 448941524 266309663 838721330 923589773 977107328 132763819 891211895 535711265 991397552 169838750 943565487 353126460 674541500 313189969 717395912 825945007 931541554 495250360 995379026 990796481 996715541 549747524 612098901 638537735 699563810 934523849 991008049 291504344 638265929 391658388 557023805 840060463 862098480 614858887 949357721 89173054 449383028 43403886 966256329 208927868 259044471 46743013 367714474 72995964 792377118 812779899 918462078 461907198 624884255 814679014 950695131 860142224 881796692 241981373 431971122 560830159 995182620 567419895 889584038 557447008 696772734 419333280 463329417 923274992 968222037 102670283 444573455 133206043 271818304 908913564 997536571 467829576 608178925 80312657 115903049 459505410 877823912 423711015 988514965 441395874 572651996 345886383 751988122 537177724 732170800 911891866 993612526 135303938 139348230 633203932 953091605 267963399 461946905 566558064 822649809 575628033 857661148 332734458 370223865 967513502 975456854 533333335 763706317 12173166 614070893 683561528 960864820 579350671 936935840 126374766 645637666 667131066 693272116 171204267 908607044 323466777 954705614 964282759 986302504 835696409 964163867 944108895 986635410 670430026 744350272 85033345 441303776 171382299 221191623 742836587 898319605 850712885 915057090 346547624 908108499 106527258 583253588 753341372 842418007 159680711 726610485 36732179 546584921 367110638 769160365 105772528 262693561 133163430 563710200 191226336 367374179 261591809 732151800 488332556 826682946 808799129 963941546 684535160 732378272 99249381 130365347 359658489 708904855 715626231 989513162 195855868 241972032 203623167 254353777 161985963 413360535 667840979 934261460 34033798 498327836 659372541 871997139 594461783 739712043 897866705 980118625 992230405 995763032 455995096 804024357 726467998 958082196 74618068 323320408 507486524 936456772 850346570 862973465 356402963 514629449 561142347 659117685 619290832 852889635 654094758 908711549 404234049 461464582 925784358 977601791 872121967 950994046 12796892 421562026 732453867 842491330 919887174 939304936 8816537 688187384 467893322 553936350 193383705 503454690 832539098 963385743 376702215 447948515 412723407 747249292 326477393 567365850 474566040 939639491 880606442 967934285 166084442 913702514 145573164 458766491 980341204 996635775 487061865 948473397 24462903 952390280 329687008 925932828 451643272 842685728 412492758 775099889 89134826 123700347 962564711 990304454 311984073 877129107 233188630 851051423 510947088 675148635 638929053 850867418 76226144 297908170 14194913 964649370 739795691 919888754 751046351 755699623 959650984 959997039 696139938 796247305 781941018 797129887 425986633 464284183 403943103 677644766 253228595 990814213 880987945 926421552 668080363 908356453 941214395 994685982 54405167 679021177 874267615 975894129 24147070 530853318 575686336 961789479 262876735 896233094 801813689 905947522 286849929 662477933 470010396 849188461 53030308 779201933 769501518 852092947 31628447 283979535 687554224 829133068 887864240 899156364 932218028 979459614 319950701 397056412 541126096 588215836 758478067 910287643 809463370 854703154 344878421 821851420 629955995 658107569 577337118 905411957 546929887 680011085 909188287 990898777 237766941 502172853 486099552 951204272 412960265 429424542 70482102 186920506 29810042 264316628 544254230 852714762 888353184 906415700 570912423 867879896 376099694 395140774 939421421 993354658 567546920 868129797 783077324 851846486 407196301 650862186 456865322 820751764 86332265 715923550 156119083 593463933 421442880 498279802 871931244 977254642 220567197 453739187 276611898 793978596 114269624 659727987 829603571 987977876 79494313 309484688 759455375 828955303 35642590 218054575 388844949 775153683 606012507 713833146 711899966 964561403 700974960 919999624 232287277 995118925 803986721 965279749 598746947 687275373 428651632 693848719 170224487 586286795 623526590 825455129 373322260 511641047 603196225 898714090 481307909 756217333 702854040 845427246 379100218 407634547 854259753 906173037 476160016 872998904 25172600 25280802 929599280 972569453 418677025 917279288 741202468 814232816 708372241 960597789 56197078 277667699 353908692 992696796 3271696 49882780 812913502 895996256 994402584 994917095 363583307 697520417 409649665 515083942 830145436 985681763 788089545 788633684 309602500 395418071 456700936 663065152 256537466 331431524 575556245 927251781 337428087 946267625 647665706 859563691 749630304 877279854 437797109 494678534 73149801 836967392 725521320 885850209 397715647 963255071 994608156 999012176 128512352 639516886 473242874 681618406 245166870 333797653 426352643 655284972 615210604 900835160 961580195 966607419 478572573 798778240 275601682 491793339 284691812 615282146 829172054 833838339 781703767 895838663 694216086 913323978 188921010 258246200 493231874 761108316 365821770 674257416 849656136 912667588 933007208 941356175 797873909 977842535 597878253 887905362 185724117 941058430 581288144 669195473 880129622 997966954 985460541 991094282 961957899 970123760 337736735 637366326 173134242 813254756 851826974 963992495 250685703 547034723 635101542 707969947 184847255 908573923 733769910 898034747 450209178 910977251 616087581 767623304 965054894 974837678 388193525 557835587 378033779 481238436 530768980 582417437 110761878 762274237 594399128 802143787 977078213 994073392 404003251 994540227 788568778 919739487 256907449 820806726 175340433 582451454 280344592 498083141 532912798 728285400 585438411 596437768 483761718 924046738 128078294 368485423 631447880 924250047 783532647 899072089 297987016 451161497 335202857 834571841 933459608 949472292 56492209 376119527 192593074 508178085 48554938 153791014 511438363 794228956 119229507 319795561 879773529 883903051 612187016 618763795 24961786 888437769 738037612 919066201 414115059 746432252 396339865 651581145 811913043 904711205 199050468 732794544 915115883 966698460 987623211 993217475 509338178 803949401 740820472 857446112 588193512 818882063 52558360 302586333 37448342 402093997 994858201 996905103 417561897 455326182 690178917 865876762 634826354 686473693 922524792 945990071 326517989 732486520 443114406 983385486 739328298 871362235 657962197 750005847 210744900 600375861 302252866 928013366 733418810 846645157 233314522 368424866 43975075 416160083 94099754 467279525 280091189 761307718 665839164 959798524 464845621 657783227 135007712 627488699 847041732 997264738 286424988 818019562 809844327 918307868 75681690 501198437 468839708 822207783 776927005 923254562 539992442 744887417 427163550 952764278 771129022 986014725 400909078 960428360 264103530 857084560 202386925 715933101 39759427 577338710 171463716 707883495 883346948 931635033 225510129 596405097 34426388 671928759 385372485 979331640 224686703 570086765 145347999 198565608 602280402 785946337 852063246 944569554 925443550 929152233 580752747 858238958 743016503 755767352 366796398 783958412 983009811 999245338 236338863 641602835 843788658 866495010 223516090 874442267 216251543 657162429 757027150 907953825 946862612 991365885 3972386 589461216 970293786 985653077 99285972 767215111 17767457 603090525 228800311 693148298 974724398 981949161 636286977 733422596 434691346 467055930 881149284 981663312 547610326 963469791 555948257 746897041 389415841 852576295 364363240 863688567 733378406 849993857 479126725 897547370 628286933 863141538 597618882 900147704 867098783 977657251 834164814 942678892 17833481 983417304 384838102 693808653 75441644 828604161 716903971 938173606 836340875 874549914 546966210 619470489 315724282 748987137 105530355 345720231 510997736 773382190 122701185 862565031 325787866 719541215 905622109 987713323 979480433 988943465 68077690 786658244 888050619 889311758 709046828 866573528 763928412 947950593 490176242 823671294 793428341 969119613 411799448 534921888 182342696 600289959 808605600 924288629 952537571 960438157 559083003 954705339 901506734 930291479 505463278 669279549 856276419 963841092 36775103 524507010 665821548 758273400 262162737 902775609 372201357 554094102 912225488 966162873 286865108 542220688 238092920 978299575 501774676 857715248 983021938 984923385 638583478 662689170 591382727 956106135 877052804 931114202 875442301 903442969 761040593 951749414 807018006 912145258 266419945 651394690 534234658 730220801 570089114 655818695 644616666 708273665 800431116 997483222 190318616 755195292 622713403 797486881 112965731 577458728 955056771 962227084 491413095 543983366 794811119 951880655 646842496 669549420 432021993 528100376 60819 976365900 941361064 980670283 49814962 839901386 347963238 665067626 552443210 706615212 511979003 698134944 141582782 867680909 485237401 827552326 301845650 455362038 174741882 318350711 971058161 982195059 391432441 757712668 742884991 848257460 447940786 517132837 94804823 203366895 562858933 670712228 817287 931225417 420063087 936757829 454484374 666365529 253927083 563585525 798892799 917107621 385538881 937344089 940817560 983460345 890343787 910952229 850191759 852071355 899448580 995941375 102758744 729039478 259575504 899049574 610788900 786550411 151563913 938689214 216607668 996842277 318131986 831084726 630111899 840174511 628672836 693762479 471382505 652176269 381327931 860605176 437244852 536105113 313118555 653310345 115545176 791124827 178929453 737730506 697666641 945071485 529383567 976120305 231464862 768835657 402993770 740451228 543376232 608175428 244150585 267585399 829040620 887500543 797496522 868070922 784175454 868715802 986174916 992027034 138081423 363518937 92574862 326809777 95450370 383877077 834787367 918511529 901746573 970037861 702922126 709590295 46502565 851745026 38739700 650558141 540873304 733655980 34149406 426262240 689989313 823230533 601413214 840243208 164656853 676990059 615720962 786923830 548878680 976773541 43552523 252184704 380555614 477978797 284802915 752001056 623953168 691767610 943498375 968051605 615138592 706948802 32739212 301438333 258878813 834574220 61164862 230248466 314033488 541710912 24337293 612577482 694519312 780845723 149038131 441708125 972328522 981173322 542710219 999010462 509212741 896488408 48697967 559721149 500958239 710912804 267495005 277872263 832410521 961339225 778811080 837757419 522696972 639372642 283355115 632300699 799729200 803743877 3100821 737831017 312660043 337169380 737941828 876074864 552760420 672375557 658487052 951220372 140552523 933161584 669640153 904028034 756042740 859922771 16343149 628842998 226329094 675383381 601480670 866019192 678647094 919503217 653150381 795186078 798963397 989527188 98735617 217867681 177401923 417653988 272354851 323236380 641970254 903958953 933824926 961442151 896521648 957838740 675174854 739928130 591464785 676739405 954020059 998087029 238866637 711998870 959339138 984811219 261804324 695129525 212729086 932485175 167385512 530364073 468409757 789890972 349360184 580449458 901729842 984213349 926932877 970175618 399831881 618833861 201077793 653794546 392333689 649627488 392347471 422666806 754081133 802793410 585595623 935477752 619758362 803022113 488279376 966188366 94969319 650197045 745592430 781958163 903809513 997375710 713560261 761071610 813877741 950333729 581786473 854074152 821403019 879361471 754153616 770268172 123025833 971338213 449022731 794498954 968879848 989033834 550606673 707428362 656625501 955576986 600773426 669331317 45721356 175075424 77242291 877075216 116481383 268715660 560117952 927869110 521340064 532087790 592842686 824495450 88922571 782712470 387265431 904823655 728501006 802638948 989822881 992876089 807464887 864289198 266128499 887838782 740049133 832544940 503689250 967893710 706870822 893017599 455865136 640023580 202421343 723567989 838174635 910697468 760293021 914909902 248221923 845238746 40296469 771383311 50824452 84519594 546818156 767758081 40539182 937243347 154380444 446326100 830765753 919212994 956086201 995679205 210282936 412207113 216297533 537545333 945476218 947503466 206299822 568038891 761782195 976364073 406660506 899561057 935356181 948505376 860459068 869111595 449746332 869677967 117182131 822518311 288713817 465391132 781774319 924755891 511296198 811168024 419253860 580514449 377778202 617293448 425158426 528037876 348355634 646542511 761610203 809495813 690954532 998597672 519057449 613769893 68479428 362174605 756839679 813476139 25715640 607536990 554569183 884307467 75241909 709528940 771179099 861842201 661648893 671533335 193529725 826931755 448234979 758096638 262722785 384507455 730647075 839626641 344634872 931574944 41656809 396912000 900675209 911326088 168520731 921750858 120322711 601387195 254911569 388722183 130142480 737342061 99592218 960818741 315820020 814312862 555253503 651778662 601878987 619299002 497256775 740962733 317454720 645549854 225527789 898014108 632136353 989544337 357230123 595608418 227107995 531505961 698636105 851989258 658630101 810475741 121928675 973902588 268576746 306597351 137306275 569689700 212792098 463032011 472113332 521674203 920181375 923125328 375219704 514357282 623249514 992340632 246941548 951538639 13393837 372568196 141794517 808078440 598342278 661198915 175426924 519439132 780922505 907336366 612283939 626265200 296530211 336539668 924857673 930728045 607806497 687811181 401722686 965929084 74686752 863481973 559456575 803433643 442922032 712433003 752742295 954417428 891493922 973569153 509900034 765805705 511308142 795953070 715766760 920478675 847293814 987854644 385946036 530513723 816881964 862494805 212400265 978205290 125079057 139180591 535118347 741536263 358745150 727060306 88988002 286614499 243356987 522559816 633264363 920037690 718274589 826141627 141822726 220196089 540864136 970022453 243823562 717646658 656271352 818793524 515498677 803294695 385380499 432227556 513470581 679593465 180878008 758199657 769969747 917496415 167498732 877528860 2112091 671133143 584443313 888349934 902198670 991717921 373919566 977251987 838416561 919495253 879872802 886654197 143567612 981746078 485060852 495705254 656768188 919130927 595105665 926740852 487122186 651560424 211242888 471428773 918205279 981091154 779372638 991323235 201406251 874326177 890419622 967852087 943620353 995304542 835901039 880521109 180412738 757147861 70584693 902690234 387878367 918554894 612757815 709064837 675872065 751767051 84197639 341551264 198872337 580662565 198029251 889331249 635798515 880570534 848310883 937540916 112618141 579516279 623724168 831543863 912494590 978726846 83326733 293906206 104756644 467231903 189924558 626952669 565564543 968177526 88711651 232068292 549599833 596402219 177649510 319009847 908549463 976512116 812051818 911687216 484621935 592649152 509806517 529900519 983601925 989545060 161840595 973182963 994399006 996401830 328927202 351597212 446469475 529343616 237601758 916236657 812936974 966309337 595356310 639576398 495755967 888541570 274285059 587291598 30100509 933790163 503081805 551715606 929796977 962596774 368129780 408995639 815767564 871912889 677807969 851207277 981574745 994796125 766065839 888547063 190490721 936412751 134831965 469022133 822836333 956911492 717773448 792396738 611920769 733926300 723744037 799885039 870347859 933270592 659266843 811358265 278663456 304904588 212984139 790497903 82493911 524457369 548308589 886337008 738466050 809205967 585002614 697311712 691944185 823678387 994440002 996478387 805043421 964018825 850561746 964401351 690261819 701524472 245713766 288874880 303456587 575307719 35121051 619182539 670613572 883874456 447454137 468792105 52169792 537256257 434550627 586554469 460218472 833466628 853638745 964178967 337100631 406254578 993704675 998443645 377747380 997011686 380650958 788464734 482737856 880072239 332588277 921428990 269512582 542341952 573758854 869265310 563377524 766046618 151290544 834562079 260398189 488388812 239982484 575777664 504551170 791938715 695755110 804870745 870570863 912691248 92053311 790800722 573475043 662644226 994113461 997772593 289651521 623458622 273740848 923830144 161474923 292137386 919600760 945952441 503691415 951054849 175832300 228837127 96352835 754464203 297986775 529109967 195947232 567950077 719389568 765610351 718663697 844209819 417996625 554562239 310947883 853331850 944353046 998374711 903659607 952705762 900067632 906223431 627200905 739572200 778658071 838126516 705999711 994599316 68828109 738039196 526368965 951359776 525164498 853784845 843821642 909997609 391635253 418935911 986382790 994154599 908946483 926832140 962958646 992358962 830320209 994304885 184466076 827495104 485515547 772724806 737880846 938887689 561214602 764533270 432745818 809406369 164781688 364504927 643894960 672635437 891055305 961488283 28640193 639215315 110655671 667973592 556215072 976628246 698061697 923746416 116826204 361242902 57122591 965317219 449592637 697363076 834023852 876918157 837401559 940141409 931254712 980591965 347693820 801738392 695286773 917752342 618431294 841121421 16538938 610861461 745465248 808730330 967899549 971608698 621779016 950017306 618424227 842135023 532213577 941916535 715029864 781054640 249586185 646489818 148729239 311049411 260243247 996746691 908589577 943020841 65051128 628837457 743162812 821099313 849711975 908683341 766180900 839385014 392621626 518490592 167141646 927925533 330842989 959391835 378054064 521977078 918994947 969808429 221216352 513851211 192366182 817597311 767770260 785976154 674047036 725779787 195857877 463823826 697148021 768996729 400359975 713463173 803040215 909905772 250045874 635113637 542643214 639033013 260736189 634136544 470730369 538728130 708329152 854103811 934992367 998171877 603026911 865428581 186709156 945221350 540761380 739862029 742737735 972657952 120013457 527941641 780281962 897752772 249185515 513343930 422443022 514535206 461796535 647806317 821137584 981875217 73522014 340226125 402472764 518094390 932158361 997303344 344006962 852777458 61784541 364206402 138800071 861593351 291349583 557052389 323453365 556141055 278589193 550359297 310809268 734192591 682481811 938987190 52933617 571193716 37996597 938578929 847821546 990517262 378886687 673542309 854110509 865459681 207841365 913522133 186104184 664370624 179402664 489265761 176422174 723593092 11180395 273029044 695008076 930905300 420368517 992856720 186294421 539173058 891827706 997771433 637869646 939180399 333911026 447614720 843293591 915578703 504692201 920223242 152515686 518481309 536558630 546825322 449955991 930960828 837211327 891139180 863940884 919003180 683413602 782805625 235431999 296720020 37190964 170081233 183058350 213109161 502678339 713629528 559035867 691275184 443638040 697583733 368048422 601083363 680641553 805279118 541215930 974026316 917565083 937157470 292014893 971871741 809779160 890165122 159838167 599170473 965288414 987331588 32621449 130784664 129255165 643902325 160573727 262732704 618394616 824896247 783173165 848131163 206815316 367722895 195953884 220070394 418330750 517429994 926414634 971455958 925377307 958518684 646825860 995867457 508404087 748819659 110763222 132907033 984051633 986252043 328982282 642962507 430266545 567450335 843417131 998004334 934725366 961497022 541902939 811118481 939019858 949378661 217913039 263514946 259337450 288816026 112308321 584060348 262587475 367254727 367521638 834152877 780715331 805580284 370952831 861552526 861545234 936127007 143330566 891369373 564067181 909031225 298345504 390949896 993659254 999153972 985090197 998569875 543259515 725154157 412177233 713397550 915064683 925399617 832719882 931697210 676222953 858185852 132332576 629978752 127631810 342125780 706454480 800805197 322059223 449817706 607184892 613507914 526178208 666168365 156493749 159220165 166306007 197873523 287513040 434670086 702556755 721289636 818818314 941396598 298982637 803915429 961413377 986737774 57737250 269335276 708984907 910994768 475555564 717798968 853400721 902890851 990651657 990674680 849221457 857836335 365023997 656344356 182888428 718971256 49120829 550280557 323055054 769028172 421778384 631271226 734442352 858348562 705074828 849203806 697108816 972242181 897149174 919583732 762411238 850784282 550442987 559749804 786724362 839040361 193214529 868418417 56521704 211014684 510143325 994919441 411677981 843985194 798301523 966724386 353606305 366600415 591626393 850870374 476437072 740738275 420674132 536296180 823850551 988840565 698099721 786445382 69833542 479728234 331660671 574315121 599264905 617152577 35810525 981570424 833856146 935480208 53368354 885417938 188695417 333378671 49397907 947620561 279764440 617733424 505760295 564332063 497154103 915808257 420571114 577589797 456913871 651871839 164993691 509990429 855984380 884333356 13894587 363580176 15233787 897704814 4441162 291501081 903443819 989566554 752986036 922045287 890607976 904947654 231760684 537827693 986156149 996555307 808479561 900637705 906027830 930564154 995353040 996865632 258928629 353497674 277630655 402713122 7967212 485490671 776676947 917283896 923154378 958117218 814556021 969918556 115779297 970572135 997344351 997886416 841599524 917740172 334615098 972939559 977748106 991834060 226975299 657515021 933753423 989279813 400545611 992080334 529645351 730118281 268207714 494154748 657091880 997447132 513899893 593964221 3792914 743895101 134709550 970589850 880731113 908016565 773194548 991620175 477259466 590943384 828914123 848719782 954025461 962587899 743141695 867938806 207115168 671461827 813937872 853957494 808721829 832196915 410691569 853146389 163971783 721147621 29859480 171447655 538918637 614926855 181647657 608279914 728154246 871405148 831090501 975850619 75654984 967185837 855187753 939242052 475612361 806595665 356102094 566929547 766030513 999092600 264055078 942834357 237010048 969335982 36396095 800441615 11654521 52752587 904588823 976136868 365335955 821395709 884107849 942832022 54336088 360788288 432692022 579664561 604219551 729448279 666371271 844739352 196359417 715106792 324017615 334964035 103424001 920038063 523857989 948700891 645580042 724827835 102132322 646123774 592608288 945458276 434749790 538231051 640548775 931154154 375815951 666320137 863004096 965714192 473862522 737085790 239664184 725651645 892975904 923936858 270493198 580242513 326204120 780635017 190410388 287789017 52173049 67369271 891390113 948122464 591274094 701705674 753254926 960726917 22270679 690240092 217089116 324205247 463183050 926913791 751623940 798669134 336088641 818531210 130324494 500814160 150011730 649340007 394684648 783809684 563686068 919123142 880858765 935578095 805382998 933909621 958055334 973835390 155570904 995950774 769074276 965264868 858088370 931372769 262860147 567006863 936647108 960827496 612664908 891744435 529082947 721669971 203615222 286104142 134317475 462198219 160538227 491198452 906335915 941862888 249236596 588890485 850828160 905568023 352275795 527134531 102277035 287640990 451566939 892754803 561163454 784764295 637601586 951700345 854810314 875004131 762562519 978319605 110594792 857211087 709012978 870160944 422546790 950467910 373579798 734587193 42742874 366300168 350104726 632397278 732931232 947206905 460922308 917759575 580894236 749162963 988320063 988570191 780538003 967372483 925199340 987194234 770045661 853151251 626133768 819602305 432613337 570838165 733580945 733797104 484728785 799024517 448641838 881517962 663929904 865104706 257227673 465668662 499425622 970739024 391620321 922228340 197134347 285220848 286488204 823987570 338818624 437538662 17002555 713626143 665097642 863915263 828191217 936501309 977079600 991514173 950786718 957533866 92318102 657073620 622946100 977579622 245493523 624662406 644933870 789868848 959438384 979586975 82769150 718008772 86300904 200291210 355460870 768421708 540836552 952680683 555751621 926412434 67617934 757438641 529315703 692344549 78913080 609243102 490321323 966607725 625976831 773147318 711458774 978715042 118374600 593901064 162971041 887244634 145280949 575024972 931638586 954939028 205013239 775423805 462272391 656064146 198182907 253436080 202875739 639267634 432876715 578125446 692116475 806353465 379429069 751943155 375236736 595638316 442344772 478891785 944937346 987068189 360907216 867519246 688296540 962152168 218590028 843617692 877602431 913438645 323469417 888159961 901295547 937501872 43439173 759768593 729444137 994483364 488319541 882811887 385498779 479515873 39306793 601733817 657274321 730477659 80256890 335791924 35339125 841671109 80780618 162147687 620164239 811822664 446573150 965744398 107939624 465621515 404039823 577682263 912041591 971484782 35554519 789403223 96708627 514594829 462356021 625025451 333394662 847163740 547796664 642505648 741488106 749960403 432115394 718088968 250030495 809484457 50136982 861777265 867480773 873280656 922698884 960570933 6041734 617907928 753114962 871171434 62407597 634550758 805340791 876238750 660395056 984763803 316032702 748648142 434836887 874600310 670608581 679761051 621499904 922876615 418989702 499272227 266286181 299571144 224511418 996912117 980649545 982238841 777581338 970085222 852889145 881458658 939483152 972807604 562281163 828660574 363165154 507544348 150772310 854289275 709281160 803866488 45578500 790955915 166769096 247662074 236741810 597687259 561741333 726761069 973754293 992893756 271847002 325265671 224960915 539423406 394726322 819981608 692221348 697827455 611185867 636973050 732044595 908921718 175646248 213810347 688495992 833443121 340994075 782337156 866800879 941963560 908288431 953595965 462849485 505234624 838461363 984542641 172157991 447630143 145799692 695022694 900217557 959460409 202406965 822300074 251687068 648457529 334453177 589054429 812770206 892006661 259637395 363885758 866515536 875891303 906601891 995251860 210806886 952527091 779698381 913270856 562822746 858511383 150443604 923972868 11799986 495745976 842890386 982690713 153105048 703510184 894256003 905839441 329280936 662200482 347830278 354069964 409447465 760934606 416802580 635586236 195483442 612065997 172223551 367101222 606636484 924807827 113616558 379239683 588843449 854840493 407746148 674439905 987902744 992763609 723046454 749683447 749049274 941899422 846592867 920228431 960713630 997800464 816231167 926749129 824456154 901991986 194901863 311522968 691540314 727772812 503786348 864258281 717683236 763463991 869556540 873522254 945242316 989742826 957132049 999152348 308469764 554290385 817537990 831050815 275326838 504157596 893850940 918032237 920659535 950540179 787224937 842585927 661230345 710277282 310321190 710488414 69337954 436273011 879659582 941125724 453457915 870623846 922077484 995298825 506184034 843905437 141771461 830515278 147630105 263371003 788451997 863988563 971691783 971993740 219704604 804902046 554438499 657934921 618313806 973558803 257265775 740847151 595375200 940460586 921031034 921196598 856389009 982797881 358385801 608797689 102213575 353590502 158793387 602054402 842330579 969243875 959742969 983426942 834537969 956419103 175889755 387402460 199192255 904963164 325043300 542294981 47014122 229646604 737990069 870736594 830384230 977765322 123334873 341200935 284563322 643234351 902092648 921262149 141084659 240424433 146981846 666875372 643248674 901434475 206639398 629668572 964545688 974276416 222851960 942898501 180018393 327296884 219319672 799612625 737566439 809245354 359914012 816734948 100504839 134209198 175388740 715828006 308527366 791626757 842941420 906473598 11905194 542129195 362210409 399633186 851688784 900907780 746149570 841917295 786187039 820320570 899686824 936254398 566200328 912678303 73938186 761953000 72604421 201845791 960185299 996430003 593943528 764849236 632060865 927522538 472628132 619009800 612526355 813857249 806234972 918140118 767460850 995825982 372786237 395559212 612349967 759182752 890704935 940855384 494779374 932605244 235636898 806963026 703865482 768859917 399013857 948715130 78255527 89016256 17434817 744280764 601613762 968846236 439349600 684164036 561112312 589435607 880254716 893685332 80852124 337693154 510257755 922528997 114113878 672345291 89637905 138001037 391924001 480380409 723000325 774001416 867802739 882453279 969163549 976870013 792501757 932243955 731586554 896064800 953578294 954424828 628409988 781041034 49070235 623896313 666423921 886165271 284129535 813062506 13038237 247081236 601189629 679379732 936721219 980279020 766548902 800192781 754634138 907813959 156214450 346597953 682121437 848071870 795897283 936539295 935560280 975317138 107803014 880701334 226100267 338892795 748145536 894978195 153327611 954025937 182467170 893767755 985232242 996525451 383223422 991649893 352648589 570212496 228933225 606254239 980392530 992354664 562317123 665480757 922904412 948838646 7144235 972201172 611316899 770366854 881253223 960965538 488991760 945452991 737269582 892795188 480369648 560811595 342551878 754823764 706630584 990738472 497572223 975471338 229018471 337520176 492521433 657118230 384078045 923627367 962221267 972075174 207360741 619572934 497428554 858213050 497993046 865751064 242411714 398074920 535131490 814485214 171687688 950085536 513799577 880263596 336520535 738699623 907632268 968812017 701322660 719070769 445606827 714103564 998859999 999271089 726034801 763921881 198441475 948445250 767685267 785930929 845825594 848150575 38812222 825693683 4048587 925476232 20269766 724674636 881385701 984359507 33330481 913081277 556436773 571195870 862832624 996467840 930542832 959592053 901764896 974226094 55696300 656913339 512654536 946333066 464084366 596009125 516345273 535250753 537492210 793066302 700453744 808638306 308210483 754885147 347669232 803051442 350184095 758375926 854665338 909672914 616507605 710696764 622657624 910767551 572310347 837370269 908388814 941195541 806809349 820926414 105728859 464677026 153172143 278400430 707956765 736124174 364770971 899367283 645111021 964298314 789642962 984390933 720474596 749409360 876644318 996376624 678764423 910743747 286892220 740994504 661482679 775196653 208660728 550755350 20370135 810929342 245259706 620115700 103640731 191868071 91665972 513345480 729270226 990817223 337395243 598814194 767332235 935254632 74656317 152865787 326299040 804437377 419036124 671632166 280524276 360836791 804861061 837870390 441599185 940373251 231415553 682403601 160659263 499663403 595602140 800120634 654948188 922225217 313018553 622355443 470036410 484766424 631529983 941104849 198508242 787197641 384641732 388267629 15515052 769344767 188518644 863917905 332255374 719278501 715295540 792640755 884412895 901642564 275009458 980539717 159946513 188909278 882912683 916058133 716597162 955812942 578191215 710236526 290398786 893982533 503415147 662677308 568100344 767033859 265461893 765883023 555525075 736653578 239016560 410679477 604175520 704414722 197162018 767195091 457955024 674716534 483958779 633529720 727355724 852083283 712903328 762740609 206471170 540929117 677692912 711174019 583990628 740615793 67186437 400611872 628083713 759850686 793754556 796642623 319981748 947234926 505537799 650235988 377220577 777465334 839366148 981651437 713972371 736447808 902993376 910242544 957411332 972016284 34547628 716961126 578719976 754100820 242194807 723067356 922764206 991738038 906840124 945414499 303751391 955692184 358032810 721012913 662815935 698366277 62345375 990647532 600702445 931496268 643014929 827095988 340636132 497349886 706931426 996671522 657928893 730399701 257595291 480433380 579125500 961577605 755649593 908248987 679493613 890860585 949420191 988231748 522797971 985684891 982288024 983940931 501175247 676458215 131531538 204845150 278303614 988240536 433564 648406586 793047801 940028850 514972619 825249636 235027119 811946000 871356921 935956220 543300528 772907528 631928196 777079210 359114584 870433204 364651379 960764198 898040146 995308483 679377589 705679539 550972302 725784477 820207564 913587259 688892958 937174192 433281695 847550939 30561380 677856520 706100987 938704427 513075411 771434758 880289386 972856421 185454205 307559563 742432550 798186982 599625173 710061970 873587524 932746748 344101274 751490077 825254807 988175268 252534741 328232766 173367995 426996910 293771826 934530665 950228755 980770571 363008115 708141884 463627959 949878048 620814314 965899117 204396743 239445279 134823049 421310549 752180331 894629841 971253449 973295709 874615893 921566233 104753412 758567431 25457418 590849885 348601511 986679313 208608308 235403920 465814382 950185828 121065745 876650478 365767213 876189695 434927406 927335708 111286528 600226975 405156123 462861139 760968466 864841331 52920223 433962759 299270853 861392438 698477977 748257646 908679319 991783131 662392968 782865057 760364935 906409899 800678364 831225811 370181178 773646445 170588290 536888156 790511832 946814213 20567862 897338677 121024648 706984582 895318 862942298 404059132 701143919 167150655 709521552 330599084 669991552 952661611 958855239 324778234 465514600 41774494 191822644 474010948 958082642 419968942 733642602 156326373 619978352 58895509 857341334 640703579 894499217 503815677 854689363 801528588 886832062 878928664 914115593 258569538 889335030 260753038 576573026 33139525 172770576 396249101 955525379 755380007 846303921 612551474 628438758 332407130 810209549 910133941 936695951 31185858 292900193 232954125 713496776 601105729 885388332 721257650 919657220 366739322 723184776 7828667 603378631 563810812 865310481 518450357 690728171 22398746 951574868 793325234 898874886 562301324 572002903 686979232 746262461 376368221 973175109 291861515 909538262 218867205 904037172 502816743 664274708 783846878 872307489 75513897 620594312 426562007 727482964 242111612 570803055 899149056 993504428 149822573 854560106 638278755 813628708 859146364 903909692 454443346 691539709 661295581 770693309 228662076 607499589 355009820 571875294 524696921 623445918 150473823 971434414 41585808 211819817 418441379 898522185 912704673 917517962 34596968 913257613 542297202 620645699 476015306 659375142 123673799 823081036 592292130 801781015 861529184 879823953 948874760 993661180 874742654 934930660 895116007 949093371 322889537 580543191 768970643 989766770 646753582 958914287 215213698 630384745 379432155 397283838 364256789 391811003 350523278 715822652 635231425 653736300 238141038 736692489 671968180 789845883 433237677 531438184 806153524 870130875 922071424 931917804 312665514 614323732 370689237 385683088 398601250 475322466 900463052 949872695 439979045 978274635 996604726 997094443 828438098 949936849 759199964 762354694 438933174 804087349 472449486 914988172 587127099 929583844 529925014 731529899 996692570 997101938 297315953 985043226 775940796 819089325 245378105 431657235 669522630 830593925 646809494 810483095 55172879 368642701 10295420 733995175 181444169 641631686 125691309 854782453 389306622 399457149 581129961 935470390 406013316 952716458 243124897 829604629 174371248 241511229 301768020 434811232 987299988 991680285 665742477 795720500 789054240 875774618 105765165 748604308 596492070 697646774 83878366 510084052 904481219 977292769 945516586 947835777 804156215 814198517 22264484 989185717 596070652 933103727 822335809 907248910 889209649 921168412 677314017 761986868 88080090 388274711 362740712 542742004 249376178 569175774 707524418 873828674 227443149 807609223 748143941 860450962 618097906 688978312 316786599 332233001 889350883 977577774 484993744 767814948 354497654 529528348 761975208 929677640 210660411 433492994 456713431 698022446 724358559 949592136 53280295 227598900 825647739 910666458 669007044 718957336 837876730 862517737 317623555 692287638 182344489 338107908 538294514 652386260 381315257 801086178 515701367 561817733 915906784 957263736 365280716 519595688 219284827 373339609 273687661 913022538 764856417 871065715 261966884 627328179 803500373 977192621 680510777 708428845 794383505 951609731 484167083 802115057 223225262 892936873 82418864 796443020 294634432 540286851 546894001 646964783 41221609 188809717 36815525 436351514 465757011 798032972 538583200 653022625 715789777 851781307 120789403 394936340 411691632 739091525 586047803 884400215 435686557 993326442 675591689 698851259 517512387 852145618 174178986 189303083 141702091 317419707 247932071 579857847 114995833 252270831 269978367 431650164 42763967 948656945 463664293 702869673 738939870 745723412 831225807 950818489 35099630 323389787 95580893 544718103 295993905 390839265 102010257 313931890 322177049 668029689 211371692 918927679 755241564 829872876 791304892 919234384 263615873 489464974 699879934 703830799 27974585 566930788 980826720 996708238 981716421 982626819 171520132 877329541 656350294 821609275 394865640 703151387 644876417 660988122 198873349 263120753 321581549 468631436 846374934 972042428 949085913 986238775 192969737 324391063 218904207 927424594 757352294 956388059 930189007 953199100 308298557 948223547 662785582 850500618 64485839 340614199 730416288 953567440 843752199 848410211 759222685 958913586 497418355 745339844 653705745 824836701 471463608 808161533 968780371 994983841 797519403 816498568 103538306 367926530 621831243 622069082 929185818 966302833 167150307 195808255 854363907 994739832 286059814 533060394 593645814 599048928 790484479 839271060 744084072 797248510 132173029 225358231 71742284 798563243 778783559 907667797 76678062 867109513 615521180 949980897 170972505 910354894 128868906 827440527 952927903 969681249 131726519 917202470 710937878 870192703 988906761 990918529 161918599 486719323 250535863 866682801 572238090 910243135 128810310 180593173 388583614 677499682 480446299 758292328 837232026 983245600 728105103 833708618 350903819 655542377 599855943 638498502 26904591 103705136 468632916 728965336 936931430 978772481 954714616 972702567 656646644 858534446 472719044 532309068 519279932 574850454 600964530 789543366 297557765 638812723 869159243 884549942 52425779 229308443 295794799 806364683 159514307 474464501 934719603 945505600 659054777 898734921 425567067 528558822 351023120 418301560 2587814 236323927 864977224 919829158 105471203 232043683 138195680 611189607 581731674 920959872 848855405 984140779 240980913 315465458 740421927 802060443 600918417 939887081 942492882 997174635 318749588 704937893 760169389 837282584 204399999 659758506 874024928 985905994 421837468 824658114 422101143 477042510 730101917 997392795 411872124 647931378 9226948 221902981 147034850 379550773 155160173 730469213 642493937 700644337 319264634 722154217 231590003 267038414 3419657 578417050 922237097 925960434 453342845 903901292 384456879 981871064 781446658 925925634 31410211 93022025 378830076 815746065 708629833 871954069 39831904 204244109 175556494 941673013 40139332 156014038 112910910 551588495 844118614 914726538 444221649 990394666 352830833 384824045 671020989 848769426 211683960 893295597 282130871 931508706 984572157 998077270 216853583 491717863 496614138 636629929 877584795 879344484 652833088 900129692 857549996 946985466 571474752 849099228 476664104 957086088 362232519 686127061 846638585 868019465 835798897 886706100 786333734 846223913 266748245 446213347 633015968 917925192 356262226 956102665 498939840 667394467 167837234 528498450 213459881 519317245 695122230 877280243 809563827 813678671 332146862 357178858 72717766 572888113 52306348 471301034 362290443 979644382 634129209 709805973 24224586 399457207 84915525 350128878 644760905 747148976 317459756 833872301 356866349 984327807 166302538 921604137 468368311 784775711 970579235 981387290 374055410 465626563 755022796 814824846 761385026 973980890 490889129 601216247 852459717 910812915 433840006 485417130 386513815 856962424 540019195 890797827 895306403 920651770 436751520 815319262 85803716 481313863 578466648 725123997 884034570 911549105 191299455 287109195 822631685 954301954 630828857 855493626 657490882 906047216 83528270 705842884 411257717 767315367 407967426 568663234 359476687 669374967 70975510 887856365 602123165 903493236 897292921 981972636 431986353 993551487 180815894 786048370 956279562 985110553 818475477 908405328 68644930 112487971 669291393 751815461 134470563 552248716 128566228 437415952 770907584 771716824 623049342 862812945 379359108 519745657 859004998 945433849 194508253 277737531 156597339 296940530 657094651 730287162 754434576 762149802 962101638 979697374 968598285 997405973 410922847 535317476 840973957 927610558 924582583 966074167 31441810 499579258 463552665 966869578 37885789 233997546 442196596 994160995 65912499 132719496 741166740 778380460 458744794 670391780 859527021 902680678 165118060 364645838 703925366 833419814 539830530 749075386 776980358 809385060 143569158 465355812 240040715 712112802 625860659 989928430 731911298 881026424 901436864 997795554 736345327 905430697 546386902 592794147 582731688 912403716 819220011 845246056 696222674 892862238 744888336 805436964 214041152 858712852 38842778 886277236 732000786 903371486 144688042 479043084 563820282 683686654 762548309 765617116 629458068 934830105 392090909 652422792 804004157 881642293 580499648 837031612 367190662 989010576 584793444 782947310 18493417 188503578 687151782 892501666 355900673 420856094 176127533 803143268 625527982 843428657 274894151 896589244 848480001 935869927 885532217 911281767 328565610 974637901 730832711 903127500 448846088 792485948 220630406 392588129 352842947 706758016 518798494 809141584 766416393 830003703 353629257 966286019 127839894 259184219 355810538 869029075 91058592 328992336 576802315 983768452 609534927 784851167 539801547 916407849 151420077 821871285 356691400 797445813 837391872 998773626 49635088 819543137 116139638 727545978 662626840 690801611 455311619 841958634 712700802 995285864 222620990 726227237 327440798 578909068 921131880 935178777 331741108 369549515 530805431 674625396 147980956 356965484 209635775 589117399 578166943 747905881 429351098 626344845 708877915 747484772 463734572 590470915 426304520 712522323 53344929 53457778 35850465 211783845 787707597 809211299 363902865 431647680 258786825 787025517 363562183 964794486 151562848 202984507 55078495 766822695 923718510 974593015 534871152 863172978 993439602 997666130 593460551 802715550 536790887 922699229 921382907 931636559 560063741 566511308 649744090 741613487 383444825 521175530 953094470 989472155 359279712 806005120 941308479 996559341 405940735 449231401 50153328 527478526 597622176 609499800 209844942 785092536 432576168 918619175 883628415 971340098 321916404 880761631 372251769 573906709 360478105 585743463 872572715 880661611 173069362 933167402 972872680 975155842 541257459 678540368 674067578 894297855 835970845 846404460 938496932 953146656 825501379 916118225 804168626 967611350 616151339 907913626 2109560 120303082 895731207 974152565 527983165 656192395 236926331 780558048 853850366 899794504 648568994 853540034 881263424 930382185 332708940 928460070 832088708 900152573 73041180 773202662 452342148 573414946 666570957 958924881 647532759 989096526 197513794 282327548 146774635 707516783 189256496 581195973 863087903 897523920 242822628 733663035 529880571 989005655 174437074 832251727 846655155 903733552 693089573 766503450 162063239 339154897 59874828 513078836 979970541 986530814 579755206 799451505 942972900 992970987 610150623 756829349 491476608 959992097 582263948 655774094 109204526 702795406 428544798 509700215 228399734 891309216 170875648 363108760 974783242 993828452 747506641 945059092 984259029 988628454 75345594 514359669 117272180 606279544 236909892 953968737 909786137 937615730 442687973 943722375 817931021 920661980 601761223 612446575 389028124 633438843 875507012 936931692 17926178 731790283 718305335 792329623 207678264 442708982 459515949 959925901 347217165 937233330 300578539 853772653 399635863 606634500 133984188 706657290 329277224 567020191 272041145 393605185 466824691 807276211 328617044 469311681 608703728 962763945 809221078 923466227 969720308 973219190 928656403 986056664 163726885 759620718 754625838 914941591 952142448 974168282 348285498 631898684 737753140 979402391 282930969 705653467 787395613 898314896 213096287 421985733 818847410 824555539 936039972 993589248 186447788 354186646 456995198 579367735 364678805 435796573 918304168 986167093 993936743 994132892 687191567 715022517 689380973 694222933 36749545 681445630 150952289 500760209 348057666 865386628 447980398 488640775 656726324 755707712 537905918 614651040 413796812 616893887 872110710 964843261 74260792 222937852 728515263 767825931 357332793 819797526 426505778 527302198 982150370 997154584 684915672 872037688 900418239 914882526 372757518 499016758 404277845 861408697 618083959 963105858 84468861 153431883 326478707 919353716 212538039 496596792 185383527 197035668 27357352 773082496 792854843 816760620 563184153 993972422 854221795 961329866 264691893 649855275 486797086 555583314 164653072 429512186 364627417 675874631 315786632 432345040 987366640 995112492 160142593 380112201 59820318 182717343 478033103 570870318 203546794 207727867 271367368 410689063 176736302 968264050 528765455 907618119 150415594 663876269 216130235 762364136 26348998 549876713 281712814 713527191 917109093 929879021 131332297 907287166 370147508 546893705 53353818 943092382 925570601 944650770 819784361 900550529 659353967 769851049 960511001 981198290 823057891 982440354 389862244 632446216 409167715 784854209 42251180 158507705 157890366 223317873 836174970 867004399 696137558 699773555 437781883 808642052 655012345 977663884 970282658 986650163 817888083 852529661 771030548 973441829 553221176 609234268 192243389 236990231 192911440 487393819 49234594 115200550 959789516 974781111 545469834 765817417 489727916 842225660 960353950 965552488 853303479 970896275 79178966 859153599 720900185 927966771 776139766 793795207 662513380 794665674 330110595 547107444 741963701 901273257 385018364 807343108 617422075 836171345 473754579 540210310 643387147 988885022 483702933 674354980 297314524 897311855 942942108 991782024 436961194 925734006 272938417 737197231 722812046 908805462 441801928 816874139 813778393 934240006 593582858 977662934 437546642 775818687 957282521 966169273 460859583 628186813 741383318 826749070 118582648 626150019 922853264 938120870 504856839 960326794 193290941 286042451 297857588 761103159 795092441 900697212 559480239 983985747 69255336 645075689 131103714 645473684 197443347 874905749 652331115 766043246 592193397 718177191 494282872 904605193 178488571 235354715 314395085 931090993 304815986 539802635 864116384 944839811 550315826 664807538 576542329 672896233 563157435 612501933 308676006 833457064 635197168 704697110 726094718 975628245 336085841 380290713 448935409 536242004 376297851 476267790 148588438 450963015 435181444 982634777 724645224 787544126 395528092 974870181 223023239 468200004 798151197 966841441 22941666 204764248 882028249 910398455 926545599 968475762 531417934 769753502 350702528 678664247 124352977 775961095 613366251 752581257 131353003 812570258 274071465 608058352 766293295 785079607 503564639 588967911 276579951 470756806 885779836 939931948 563040659 732618831 395405990 461858539 677723542 699784847 417642695 552325008 611845113 779003893 531780872 582153269 248455805 495129531 398070898 599621917 86899688 624245739 292624300 927566685 624813081 815202435 480692224 605263469 510543027 824066524 349507846 993811735 65028503 175524515 646079953 908035301 774616496 789701240 416304049 476689073 377089279 869911622 135439413 448534333 813586950 836662801 617038134 827403984 714283477 895257231 137910791 597482149 979872807 991384934 754681573 944415821 82416 632111367 349910117 970819352 424561593 635747540 251602074 447139073 511919483 823116056 588346919 720439638 476716181 930189600 736216207 812292158 774090355 995212387 675757474 947858805 185328476 516611540 454455093 609744318 451903052 544263355 861107656 912067478 663025238 960088341 154394793 706668728 565785487 879127848 154885599 290353633 3225351 999203572 896134082 954532489 689854828 947937222 767244520 873691935 774197733 805919725 22292966 549624582 765380822 873725449 384663019 867955116 248660767 438402643 462522551 710631337 109050670 900543585 224649403 527200903 725300837 894394802 150686461 366645589 351395399 870717272 694452392 879243846 20171627 813665802 841909227 900821284 528951097 568782278 456995972 548403497 149234682 835562385 310172972 562190287 353812624 846549326 776994665 858492879 735590155 997437243 835465382 994437462 927598059 936646007 138574160 736472003 592527581 888325317 321489172 963132469 700014691 858642256 606871455 710848058 55817066 734234482 303376440 734727589 670179340 869221099 96319977 519909420 337608585 848864402 754549280 884507981 835173478 936352515 134971453 812169362 587151927 770858684 753987043 755373807 419871413 624655660 861362625 940595397 695926780 962822637 989833103 997360791 45973787 778981924 296104535 396062555 577179609 633915059 293137564 325688511 910011420 912586098 632947054 748450519 456589131 894664258 349378501 744681975 955000865 971305524 482136605 609348660 833936307 918941333 855958652 892617157 201444649 501830313 138788130 529887523 503144668 525074670 299349456 860391764 338014015 534835286 344427828 697015868 659608003 973648431 211195361 678164849 135373870 370088127 446869879 990960916 358475963 896429514 852032519 976589282 416237674 503624103 112444889 564129732 596576273 970065120 265729821 446628730 480087408 881362214 111200617 852301530 304985862 824596598 295063904 355066664 68907664 916360858 220614283 866580879 512014413 847548817 49987723 556901539 41842630 488119346 734941315 776502683 254505189 508963332 696980212 915336562 59012567 596473633 993340773 998460279 874664322 960841428 561350289 831184771 497137438 753042873 98001509 901302617 506761619 867204253 581578785 923996523 100925448 676386624 334271056 672088700 675312132 732999575 256180819 379652871 915713658 983796018 236802700 303350518 406877506 805592201 36351452 887105451 379597327 892885676 756655674 947417724 729067760 787022133 673393046 723024080 481911619 895994126 953520594 966183987 936549652 951647030 878737789 989625449 106190760 109532793 301153084 529896970 359682743 390186737 229813499 903872625 128057943 536601930 784133702 881862456 432000968 650072272 509893059 594414813 662560023 921379896 728204776 752856539 579850176 912850677 706172310 988903334 544030663 774000287 842431245 954703108 716401262 975379677 252269598 483145768 98114565 759463340 368920338 957435732 399144759 842174760 314264256 959608242 275329592 463736539 2404439 829371949 428083626 935542575 131391961 497777265 919580923 959147404 564590406 766497539 898638806 993537074 484115298 736706620 726396822 733189371 745505881 956222804 462751605 904861939 886525910 936169546 636168029 910731289 549389904 819283314 244494326 895489212 387035830 751069537 369594444 393229006 401271647 895330378 544642599 669003503 167248606 513430836 370576361 557849173 68132048 380539491 778878658 864179405 760886928 978939307 726268655 995500020 204918517 494530262 802516003 938825232 646412287 703007953 236655576 710557968 819774199 908509635 613788470 911244406 778372751 995094690 870633166 929489281 890919282 984758008 547673868 605939814 717488253 790342320 922855297 998092004 751594151 996514223 42794927 249500583 266421523 679646806 655680765 834587315 629691858 983216287 981124160 987146900 297063904 938350543 424393011 797578847 586780753 669195908 41871543 139906296 511163365 566994134 38119038 496864011 617863122 853299102 589339205 592336489 402133220 898604087 325418528 648169699 324129448 459340680 695720783 941485266 312458912 336554393 498079739 811644464 854939411 896982499 534101980 557095584 32931265 478592477 145433906 456921908 773570437 798844534 980214607 987238302 468238868 849140517 243023660 819238244 729467755 826908771 850479375 915523635 832865960 861919620 313781009 785483844 104231194 108967482 325858231 882022341 216472908 630318927 152286970 277302104 324093772 707257565 329140274 953544198 72769774 103183050 259943528 803677999 829424706 880023794 791447118 923863189 272948493 697740599 486728993 962682953 417653899 864490668 685028222 927812740 762734123 921322233 489898071 525559054 417244854 431373398 435551130 603963161 116229845 679417926 876827689 981146719 824710792 961395853 910906387 946723947 517309480 746228020 82940205 114110807 780079647 862686121 797053268 913669101 90156807 606401050 843693673 962038542 373534234 808515340 79443992 836665254 549925188 908233033 755389181 983615386 806232644 843429180 575218019 785399932 525438664 794976274 170740785 808407955 842609769 950019806 803101858 848379090 566203950 694567930 381092763 870495034 270449532 649278312 535115330 962898690 943827414 965082720 344987866 931211032 452693996 566419211 337706767 869043411 805457385 819363801 753015017 906986694 301409161 888974399 697454809 848744272 739118901 843904247 226635855 983137899 205755771 891942766 730527080 774894207 663263745 827956767 479820537 937970681 909888569 961583775 98969672 170554277 698412838 724198218 224605333 341146582 166710673 517787217 856158300 893452052 397733930 528257542 892379459 911910593 168456185 191590687 230324978 947721642 371411224 880123788 310265514 666436124 495974487 979672801 354192308 430998063 962922258 967693317 733906685 747101592 221466983 589405247 15406012 16437298 310831337 615671101 205417944 679219556 584941811 820243895 237561277 784320750 496172771 544236003 211524348 806381087 188150358 372862571 561824357 587387597 29492876 670422872 154790024 312257940 129991525 890906478 959647801 989519256 839194631 870534767 86732616 168037786 333372474 339410032 54127450 372159258 767747806 885919607 296800136 667626518 783024499 965001583 947652838 997865206 155808265 366837377 575326554 814675803 801883333 907843113 466779837 755767062 741569209 744930372 420324642 432221475 814486464 865640614 491893744 599972565 845393189 944478995 239883564 787527803 617117366 629165572 445197863 697760979 234537886 700512361 539692944 914696297 806251016 842965379 426770460 683283005 705912491 876985512 303691706 532744663 756611898 921382255 450600055 950861657 905290298 931461661 254037835 751422065 663221404 940459352 699746929 771314858 369422032 738341824 96728294 772507842 376024200 518668171 674158526 956055922 580350718 796345459 459319322 506223163 12388745 577275248 319463215 762941794 158381923 625051395 448833759 928352976 943146103 989196452 413824740 938501775 76835794 175676411 833934813 876225550 696557205 714918111 4983377 665985107 673195852 889148180 889663806 923214998 85199807 180366205 11870356 853940421 256050329 339511210 133787431 266858101 480241172 827588919 522888147 903503457 818187285 995152382 28989309 911010630 207220301 829138512 239850313 372671273 509728500 911642224 284451291 621175682 968963175 977255663 150913979 837488983 408280849 438179818 205460660 277937466 557999405 876688794 685554301 846790811 517199527 645596824 95579915 225635726 82723257 343530382 286017994 644037983 39326577 197918460 802831275 875305899 200040811 296710898 705638296 954132398 922569673 945731547 394148859 538250518 764736946 862542498 818247662 857925899 188132471 833208261 955310614 960301528 905437421 930974215 615357260 687996147 573241990 986609026 85659037 417869040 174566308 701129870 837660399 942776147 616245854 825913227 8728103 290709928 60405530 423909534 580350114 890272657 381772872 560687095 315151048 657475721 682216332 787756562 173047384 740849384 191472411 318150997 562010157 970421344 842985677 855148976 406940149 765176246 845101100 898597328 981813813 990895006 962804140 982579318 984493987 991297069 457230991 526031438 998525267 999240603 764869644 939306341 314738419 890227286 164920213 262523119 487700491 497691180 883693450 966936390 810299098 817966963 722402878 968961025 753945001 984308756 972580095 984932658 755788304 926544754 30064918 520321061 399341685 822769865 126558124 321207742 156127239 560722240 653096605 715408943 798835989 885614237 533782214 761869375 423271288 481399830 778426373 862777226 442725342 615606339 262299191 413752562 612054812 711208988 286163764 703542062 4526737 984090052 434223587 936223831 622543141 664898551 694140931 855737405 718028077 930628612 692655256 803110134 990389753 990855794 123760580 324625792 409147137 417543862 749738948 850012161 481622748 943600277 632592163 767864039 17066211 308502893 403889783 896878926 564412406 659080486 764009072 889476115 83003175 826149573 513274322 567920228 270162630 851241152 121350359 735201652 540441318 922846793 787129809 831304323 135505337 447815695 602978127 903164783 635724310 889153122 327595538 418872555 800486537 894379234 867454076 932554497 762741574 841892763 331735869 772107830 457015300 605360327 181394425 724263407 104320351 668800732 957574883 971117829 416901263 729064191 674945893 921713710 475132379 585614464 538600059 805322923 323201887 527036171 780802886 858502482 717201100 944981977 542559063 624680326 727013902 768350166 150244931 770321094 779639704 860012940 350771043 890871114 131977456 509560942 801106925 909293361 460489531 983914321 134912322 502832394 440295145 997004551 115330460 519242828 439139023 472814082 655186271 765220571 812032082 949271828 618571740 677533263 972820305 997794879 147800566 368204237 186686084 573161679 615937603 963499620 898744668 932722846 751216947 850682873 553973001 627700917 151132026 436945673 771161520 881007769 501200096 922862921 389374990 852729135 431924581 910625214 88104656 920473462 665175321 830765306 663115850 866205021 795594167 822529255 155505535 837979676 608644328 954904134 383420217 427044067 931487352 950126424 324754634 439183324 510295175 825134986 726903856 889354182 835525086 979883175 937936387 981861987 563223993 800711342 846283762 970872633 663296872 872883339 905690941 954730488 431143789 775617570 653519747 685453686 279955731 392619936 194501134 766445989 542685346 990077405 633237530 793055808 822344271 873569810 8524132 12094585 224019388 411887297 250779124 271993170 939718326 958194340 675717671 882124627 578039117 794330970 233689401 342139239 315532606 652961676 57243441 925663184 615174829 684748724 629802725 857052062 724077612 945032310 524288092 858429727 249974717 544175588 245656721 378896269 359644377 540556362 915067448 986527485 409799142 940646542 71545743 146232075 24215240 706060074 5799676 78195551 647690189 665973644 277924873 596791150 997362314 998466209 809276477 948948758 864891416 958738253 445325510 946168530 432358725 782941330 397126714 965911278 542765826 944940173 58644831 869664099 652995316 711950409 464588669 851434733 56530529 395347611 753055592 861723141 710491117 873062814 78226154 829207802 403627726 959279704 142607826 888866484 135117449 295908790 426759616 528783946 751307816 891283755 219915335 433125558 238133335 323020934 369799835 633830822 634646235 706530709 21197399 803513847 728289006 855713771 346180423 711819554 301572298 436792791 694283457 896676708 184054679 479366792 589432182 743633271 9109219 11736776 736889807 982294319 340599534 433904508 973299402 992180512 787340681 866626017 800748142 962175757 938932903 965760836 11474546 257794077 652533671 927782306 649598107 966651557 313467917 401426192 939632988 982921271 749322797 896753923 590750673 693809233 713250056 887131166 837562812 890028072 901904761 976020049 688607563 740716407 96513996 298470150 88891014 718392013 298422916 353768186 825812301 865211987 51432647 857484967 621480764 926035548 140468501 151806546 355184068 732645426 886739553 930021010 536078878 971876165 888374805 943081232 840839929 855042685 240852146 801506938 370880289 481133095 612170365 934446731 79499168 445279464 501585371 961895504 422208777 467376642 630930970 970414537 126929215 232100677 843640665 893539330 881217049 944501793 429107777 706104391 892093100 931848936 780428810 781923183 123026039 475016337 663781583 735133631 213869272 226880585 199506021 311285075 200525692 862853788 179750132 546229891 983140591 993645985 996329964 998902671 517781503 555038633 79510384 392968061 121068040 799360066 1155191 250711721 984294073 988884805 555255467 825510130 401692584 973681694 597627727 910948933 975833117 984081796 455361820 741122791 161148212 942629932 326818689 476861974 715074085 928122199 58528527 955436973 750239616 814093168 472904063 520830317 199050320 362025535 935998296 979959702 867839515 998776570 582273669 870779942 805310687 854497360 180331625 556012208 86650898 564254611 728752543 774432510 105922005 542449073 578413438 647648245 653734061 926311649 604391111 795749888 455459767 686107598 322972661 815085648 730127309 879733916 430868257 990893430 654833944 751329494 578114403 685193161 440716846 809670911 312319121 392371015 181889357 277423035 980574119 981472323 368203281 945564405 294243039 295513567 982827325 983795103 380289281 617584171 409378448 551620535 329423079 598384014 935120941 968519214 28671242 584354424 234349084 664867539 825115333 867397500 878256783 903280955 589435432 992111790 821485527 939727610 377014778 548136043 127999616 413708109 311977293 372437208 189047744 650721455 483085903 992717629 846974903 960810197 473307618 869120115 420192253 624270213 910412420 973658688 887563152 924687435 702138001 805627741 940061046 949372148 542318296 813684281 166081192 848862182 448616609 728677155 547603035 586555127 208286204 964152771 690330832 769098379 613747922 903541870 760234930 777415582 557731729 584214467 805302035 900695523 350859507 829490021 320090495 827903738 531982549 823086197 933289214 973949284 110861443 260517306 818289284 964832650 91862956 735204098 171794861 778147663 270033512 959441108 625430664 908930715 763887847 859750387 433535735 854450013 802515598 850840391 747903259 770454870 845832045 917635125 364164624 551802280 226377417 967974696 506944005 735737246 660931122 904199281 12634166 848159657 813391462 929889138 722270883 753225371 30385055 375072588 160633258 627031429 379565103 396809030 440201587 603660403 757200000 979144553 124409529 202217987 277435643 619899713 799055353 984082106 987579050 998219719 825916556 973357646 113354138 492369656 564769467 592797978 144905571 202629008 455632364 728891256 627312171 995994249 95572591 116212492 610202723 675476583 709870818 831195196 741012902 783982365 868690207 877008148 278689744 841653918 845459312 953330825 389338914 967204801 789473973 989133987 930853993 972116341 833202482 982571634 513592545 683276770 85881393 495751683 526133391 811281927 574821403 801511322 155073762 745495929 64021015 515660837 974685133 985609666 180228366 788257022 992617034 994498537 142364106 842368427 516486934 938545475 823476802 943888289 920862428 966056688 878678833 984401500 263259510 691496729 37994981 650658548 236436674 773803328 373255858 407250368 480251028 938504843 611807779 724178653 641910831 780751243 713289719 792378357 651792008 900356493 609883883 646185321 810926673 946780694 40612760 763975945 597173772 836033493 994622642 997592034 814153665 947006114 452571737 649324102 977838917 989327284 246712936 249935869 582772646 687224051 299735597 989212785 47991285 814690630 22643818 559044534 148284957 356419912 344791317 846041420 281437529 751501097 707878249 727654634 61773930 231434413 666889589 684701848 697507033 975470801 695249105 895048813 559199196 695720677 920225699 964431449 229360481 545673417 828114016 869700083 996743379 998032089 472161370 839691057 893584326 972910104 314793065 936450664 3869312 135238448 643502284 980923858 293781192 418662790 758566085 878147657 30546547 40469021 433664404 991071965 479881506 884453673 945582248 981638385 30420166 896532499 871795287 969660391 314327221 587745497 71554067 556915309 341396764 943867545 342633413 983238776 144088823 455412306 866536656 995836940 52232260 223370220 209672283 575338866 481447549 697642855 15851371 335175619 444762743 872806966 17475158 520259290 273391708 373399587 182346618 294957060 758684114 790443620 327705728 717932346 210776598 964864174 534048794 743557608 771687699 823623210 369756334 549184398 370042472 794067496 824816782 873216848 878754358 931407057 761019653 838625780 730321363 787686142 312240125 562677916 122194500 981079839 292002913 834977072 595456438 692393750 976034921 980929087 285748830 882434262 371552100 766445487 296987181 446509048 689874919 749948580 923522999 937691463 706772435 965361781 529882738 892413276 115655433 444862685 289207665 611457425 590343774 607238447 873799617 986834114 188097660 546950254 359717006 811032807 558643554 683960087 267846470 529591752 659714977 913555310 764812092 980282900 640252168 832176007 434134418 688892417 957004060 998217842 838193198 968824611 249661285 787768664 452858783 875206089 367348227 603700011 596435717 897957661 220267608 981118368 146056830 876801506 537547531 547833330 385523247 464615143 880318040 881251033 893764191 913111666 261521282 792953749 677860584 946064540 53971283 796414661 611204071 886324735 894075163 938572153 202928099 329300422 339022389 349411674 975474648 984529788 812709678 817401438 280845106 430353774 466990710 888015593 800106409 902388169 922568549 958730386 593529263 739684533 879440605 898536764 450663157 921782266 281257780 665325986 49034898 693889315 678446300 693378424 218479267 517861608 674686286 943139799 783451269 895036933 422158610 781710259 50565937 137618566 306159787 949707606 966758516 992523676 961302809 976450711 517929259 740926372 729815461 750550223 124069594 173483006 96468988 577526269 774147098 831630983 81728253 764871195 255971790 833642895 803277394 832233960 222019071 587120114 868916235 969446377 372198554 571825818 948599311 987056660 743866873 895658370 608208511 755869775 950389697 974988924 496547129 626951809 777522593 934807998 795464927 966192164 523932014 968507328 18737318 454738934 63103136 611334854 468445184 610690632 316045585 762686582 303668434 624835551 412669723 886415088 798430712 824375355 495617758 884554063 609950651 610519619 103626125 549980528 261750035 981895632 631258798 996820371 673950443 738430663 251802114 863632876 359161476 691534679 169122059 279022312 293808376 939547026 806705355 956003702 772194092 797600056 525222781 851017897 35342936 403602630 631068295 825947828 909392345 918656573 308436735 527224781 61060465 611850170 884363752 939978702 883487674 889941940 538141661 659090312 841808443 921368019 703124914 944667731 432595383 907808874 384768929 821405007 620263702 711367025 519545770 854915839 151684927 200786730 781446271 823043785 736130271 900485964 256918522 939684959 585099770 767502386 499873884 638414198 755981341 795731925 295810265 708970552 904921246 965544522 924831026 989961832 305046545 413291327 698471531 800639596 251094533 908658978 552729103 996732106 618112831 808210323 865539771 943371589 945225142 949782784 721606684 790403106 295660610 296339405 677792717 751057701 306392914 896270651 537566452 843716843 139539928 529933630 850239114 880791803 946408842 966992205 291841377 911537728 315794588 582568411 200146524 420396453 708206489 767744131 679704784 901752097 144431540 678851496 15884530 724506330 811005639 998692521 287787389 651398073 408753824 971800673 32277354 794540409 711487910 807155033 308383039 603099566 813757828 996450874 801380277 830786981 189922530 267412227 572330137 774012487 505804082 744963331 414741913 719301679 947344864 984130678 880246916 896500001 559823943 627113059 595222007 624565153 838114254 904818741 729346448 982500518 512360836 933057817 556250110 623079350 301939906 638252542 35064076 745199867 85775330 917285592 507329640 684515347 472069171 979856907 441021656 732295306 987759122 989711107 880890473 987894976 297005654 687377291 993950033 998759498 850866143 991596926 6250215 681966460 267555613 830605885 989983695 990468281 700682709 862423733 331269081 597036649 458602460 701759252 718259132 719841193 528641035 538784920 34063122 79285966 895162606 904313086 219628065 857291227 367858754 957777399 717785575 888944530 951634026 975795942 728816323 768648363 547809791 981788006 219733521 695855649 721932235 740686264 638285129 873214600 992445322 997887692 422082030 689502760 610617693 775755134 136168329 766056669 772875305 775695827 370617984 732478201 374747983 846126250 622653288 868581779 617604300 798688310 266430631 979195250 29418803 155163894 7380648 250776428 925415759 974257007 825296677 832395729 764322378 883050405 912822397 956864193 209358491 834470090 755750235 915300182 235939313 830849074 181712712 965733721 154025567 578419424 155480025 356663639 462545931 885606694 523346420 758520110 452963509 732143830 427054043 720644473 406428607 742649737 464179899 813523578 127938888 601532040 484172184 597954556 27302825 76461911 587195702 929167411 105246138 648547495 28748296 345875861 480722059 693433527 425669656 643869715 448645700 952083236 661852322 868284055 375396528 645473423 864571098 891426029 317566362 544241198 849229167 862598768 893999984 975614900 532310706 605070079 322159689 703222222 101637699 776038811 192150639 594002279 308330976 697499288 282784110 721320701 883897795 959871504 172559776 267805762 89078696 433794421 767357436 911837514 455477944 509582113 429406117 798202250 285563819 945467393 176750945 817426105 995093427 995204388 218049085 712012746 915536612 992168168 820489921 944633475 531988790 594875352 635909389 960213884 625203227 665472863 45778208 760435899 91162903 375780904 140519602 748197619 557030410 580546932 553804076 845240954 211758330 790404894 130921063 988851579 103354416 962469002 53603954 660766005 468596557 654854916 151484541 792456919 163538312 857571367 763420831 881078968 309565707 589584204 961080217 997042982 283557019 890558859 417903950 550493301 231569563 767598687 987300056 992825623 458595681 754329702 707821077 781024973 792428388 918661377 953355794 964048809 994988970 999340541 323299368 646620617 628927353 733455970 377949150 415646770 273813833 579823207 927926603 935698553 756334631 925298089 640641805 728129131 773812636 950818154 653167620 865685824 570516782 830858554 964698807 995580188 917789751 934942237 517010462 816906623 888389068 923192456 815146438 853648632 775351118 797014259 100453900 645039740 867397985 920404929 330496404 570143639 190168631 877231990 19584943 751085022 624014017 880007903 466299820 518113412 417779341 544493143 968527989 997007297 81788714 748178907 62453285 416675617 729223571 853783164 664848565 957403330 375002195 836335259 658629536 777071071 392745842 455838534 303717511 601426104 785475466 933826912 13093211 481346153 69920812 184312667 240249650 407279844 976180892 995252648 744064268 959908026 767173614 860165781 991664278 997326608 540806635 894936682 118705251 723298450 988405304 997424748 727908688 761278650 128359804 208905342 986180900 993897728 811213460 949174896 308596224 400997434 343974436 614710967 945293306 970015952 694172286 914264517 285943912 289320827 454438443 879370921 987111684 992504219 599811748 956435734 271398180 878385675 344775972 810085712 672107121 804887342 336727866 668336884 319115283 784257302 758432244 848216445 125368160 152247273 274211106 509605268 25607965 804211909 908760667 964756442 426605631 476518514 624472790 955327084 99668447 896302194 66751971 318591242 171485933 728179022 425346470 987621081 101245610 809723077 643459767 735784393 215886581 557360768 517715472 923205263 711781854 903434077 849526259 986292657 686575636 985841963 368201633 453321529 49896612 475582288 151702935 991019309 391325741 458468823 227874286 826274626 77948583 675684125 146411423 676508813 666277887 815512143 732242808 771627286 1345973 71966492 84809272 821586024 262427559 425654318 69410195 760919243 112533395 210439768 210014872 341948924 45400643 209040937 954605637 963563094 213053154 816181157 694584093 929625359 869274023 938660850 518194434 734599685 353644018 429072338 879583656 948673206 608812620 654307413 346607002 367381279 839650925 840369905 116183293 783359024 629387477 938974447 438136510 512620785 363661621 393937747 814159747 938461873 556589239 573737672 626949775 764326667 223173656 417234488 633637432 686527335 490286478 555912272 911891391 950777909 279263347 286341044 477920360 816196051 623390646 861726432 463373970 910274607 997668098 998770122 158919181 735320371 772765189 984659590 744484095 852009940 976339122 978200457 375875710 719745377 666075272 949912288 499436359 554447558 103509491 667031679 882299129 984300652 936112631 972197043 909925198 972686326 384385642 862669939 596912277 904109865 140540979 694697695 31108094 313978082 552584632 600078611 503650518 590487857 206799931 444404240 450742003 853319252 617065724 867839888 169598824 314354209 111723479 700604979 821721337 909554378 211404241 847562450 949437924 968403281 334106566 485060071 670825945 724330626 604182614 628984922 34488572 436669995 624213421 767720969 35243375 178206539 512165849 578448088 652540747 946283850 716382552 868794047 808293165 891464632 929826315 936000976 141555638 466368808 783442230 889050720 359102377 485735800 48737584 707554266 9464041 425530231 335405035 378903267 25767178 643100023 830488937 963300514 926242900 967342975 513218536 749263494 650541729 941244677 356902267 930598086 655519465 763045823 851745464 930212136 619457083 642413084 975581571 998846795 554771255 757585250 900103633 992386437 764500809 784909843 580147598 880236689 227891551 297228999 473622821 902729305 617824945 873947247 553347634 663282313 503377397 695638891 709272644 903000470 513301963 977612956 91368924 919732872 494400700 700551731 1364121 273807287 290797838 731041214 969188444 983228855 995979902 996961104 12694784 777619423 180942262 512287994 422102212 791212419 979048807 991985681 70023759 86174539 51293743 947020082 633635989 644765169 221338577 236142612 158202300 458281214 484377295 816835392 247969029 882384015 605360793 945581623 828801010 844565242 449611827 609914327 603334358 864430298 743007510 762570247 927396801 936452839 835980132 947194698 251766679 383698044 599258484 793780691 551396752 774450268 108542381 371028590 183618623 979980651 321912683 969169956 968809221 971081733 867151227 874478703 298796868 971965981 947405762 964243899 230684106 829231986 895854128 960365716 884528146 990062302 233968571 543026139 552455987 644234048 84682809 645882215 131835131 792644109 764845988 923336131 45409694 686140666 838899446 963785648 323930635 376603104 508292109 957693041 300469977 336803934 363324549 614178759 32553142 57221012 9255215 35703161 139549910 493270814 529750244 796128854 225942712 630639092 62623190 391166240 959178060 984203557 287190616 704386598 546721191 662445847 223554937 317016219 47136631 404236110 896178231 915522688 791291990 795900135 932917272 951150150 695448723 990514478 884898127 891799327 63863315 132028317 99068669 220000224 111918768 211049670 864970933 875667896 738874573 798827661 57878259 195411878 824852763 852380983 571735085 746152824 268241730 557120822 672626369 842491253 5471803 820354434 739133295 991441740 530671737 943818879 344681802 473246386 733165367 861345308 67911706 976277407 213560837 905587519 566100763 816698366 142968738 700390687 166431551 741784969 116990569 958655794 890041023 986599148 820447615 912343878 703453291 767795892 477342515 743164220 751520641 922333973 153475177 255401953 240262088 636335917 151892433 162280556 904703718 925313816 493462213 532738501 926196760 959455864 766386404 828009434 610029124 970462589 78514521 332060186 713117868 941455950 589143136 969391105 731097584 936770711 339577923 947149169 482645144 909509283 192852714 812894360 158491497 209916832 823710644 889793594 782332614 818237163 638948443 991935677 465651035 977215542 499648584 915939529 903760118 959430573 944849991 980127462 670539307 833493796 925784523 953435363 826702142 954209540 433238285 777738299 331392037 453858215 338623517 811513345 243948331 887038525 901507361 902500211 648564678 707540164 673197873 706163673 184921493 959598302 735150603 852462645 957096915 957325792 796826429 944997626 368022553 475702946 367231889 706863456 334144255 358387347 17202438 168781215 218602044 553975662 500218268 719360345 2834141 557215215 692169491 886404308 873626645 930140268 664148964 841769416 329834396 403775750 203391057 936150392 957250049 959802865 94005337 121226061 825425910 950140677 341854818 428763146 357590406 962707475 593885647 719297760 513078622 703019783 765986856 807647342 784711618 845805137 78854289 86321068 669027163 929105148 778016030 905912288 154167302 400767049 256540581 522609874 308280265 342382532 741316214 922030495 910621115 994549921 879099555 956849286 572322967 733385704 86425134 431977697 873263217 995727224 723432489 795315863 974388167 996680941 853304965 894059496 552328398 730295036 696086096 759935591 448733394 755449729 254263172 255570374 386191258 556029141 868913581 879506494 270110201 754147930 222193696 425030339 149681954 260983578 27889389 358491940 948205466 952155268 279317493 421077278 749655954 877449944 356211112 587116997 382383509 688227088 874896573 999287502 385533314 809253258 179769528 996537453 491981524 859097535 391308469 834402077 291451526 970274165 418895771 454994123 987149977 990759214 305264249 519727581 778270862 884217067 446185894 845105725 598321955 820427512 857608786 984243553 429089213 975916846 212457815 464040028 588101126 903589076 991030581 997297874 479349120 957035918 56209300 872679831 632145728 928126085 33742930 512154252 409408616 500400164 14361355 956799667 917721503 934421856 994871860 997687919 446770921 474343808 835190785 894963286 831731062 840551956 278479634 911811532 78575096 850041063 383660909 736529012 655449521 854589969 326617454 874101849 934453848 987027716 61378134 846452913 839761645 885947459 928982352 949604551 386536106 685448656 563648890 990322835 245851211 422166637 501487235 805959510 966962997 982323385 490655791 514467615 924099160 931231758 671045500 737816538 3000151 744973097 498679741 711333339 724597715 928264143 844234641 977010943 58769366 527781014 719566913 753912815 112470905 320503606 202455854 287361771 209454488 652916244 422605953 685888818 338846653 851226572 919733764 990315264 644702892 701421116 746210997 822710678 527008986 940553720 236779564 287961188 41261398 237177158 545311699 742676756 383042009 705942745 3367347 72955063 179800594 321579361 372320596 382240241 101434360 272725371 871694274 955665528 183939260 623337346 774662333 924501090 16506636 926461880 474431536 832028869 632760135 698205379 11490270 249281114 840489712 979935213 439979035 767499667 226133044 393931663 195740001 935488885 674336129 782931096 646035323 725651985 820247055 925625940 380909610 596591185 580983753 887704252 161227567 846681681 382387168 858444483 21190134 46934735 306214508 815420973 731277948 936680956 729527022 874698281 370294833 411390037 18672135 404752928 178576391 352125427 764344002 820714492 448911416 804620033 877059653 951282900 297048304 587964825 939456258 951474084 908860849 988201824 605076036 841182018 840010472 858619789 631366803 648012997 706058417 892372146 294769032 550688428 680541738 995585753 972156344 981376293 343305551 906456248 623836343 762030840 482207357 540083649 720147627 912186132 236830111 707835052 121501334 264840419 110250257 210045599 9427570 379455939 42597254 391592990 809970551 940466937 22079772 102310569 89605324 840135005 548090082 807777353 255491540 935654602 7549075 21303438 644350890 814984417 335207674 915387306 287253041 464640250 653113232 910643734 599340446 603382132 907168623 965668983 655037559 730419656 923753263 944251380 924405302 974527991 895548392 930309032 122274799 387063625 997502271 997885738 669844664 875361771 349375263 410087500 491961112 969719020 998361616 998885979 919952417 965647575 355142097 698205261 305083571 938512686 911029535 998829820 300445376 436718257 698078796 742977436 716841669 947688205 497347641 930903299 240770152 812100914 30600523 156962738 155415216 837753151 51919804 91632480 584556397 832889641 131975668 294005465 176780823 774825071 36576185 283057030 877019858 955045528 634032763 730031755 525534379 607605628 309317919 668666609 289586219 512923556 910531587 929546917 365570891 397792369 27303141 366616430 600706016 790789717 537474809 661537733 756380788 824642688 405993595 536775474 465596484 662862126 901256963 905619423 115134159 457350805 419723506 585867491 894633173 972169890 157280052 727745664 442548315 461532446 195597168 571202237 870238367 881301081 80808479 259749629 490810963 683785861 521279003 808563014 659107321 898644556 784679456 803493550 953638965 995919399 941576776 963670251 101378212 681801751 205338928 273296395 746392807 865225567 664641926 745258881 259806571 813453686 638599459 894364293 335117514 855524413 610943873 695719135 566377987 572468352 468846411 860029787 181362739 329613143 553585838 666882907 194789385 519546227 824091562 843149558 571072053 706395492 278144506 600686308 702736511 735949257 54985665 548257189 710501731 949094482 273870297 902409856 656332891 890826606 464531103 878284322 236887594 887147444 693888742 809962434 226675744 535252458 313586151 503563621 475317584 564220319 610111189 920682303 784660233 901149000 776375137 838831320 829861760 891219794 168731532 222999025 535274448 681065533 703972438 883258478 301664185 339195031 465132123 565799948 797341564 814254308 632839342 966715847 43728362 804925779 4296941 646769200 238548165 940838386 339140425 385505148 786829155 901686850 554798393 881497227 478160208 538847882 272922448 533661945 437872566 716900475 755626729 802889268 378279589 415878386 516988778 566869837 138176251 255565579 434102467 674748940 459458699 510789325 204175623 327583705 698737560 878173376 176557645 543280184 889776785 890676687 873551918 971494815 692146506 729714172 621225510 793320142 710629746 979741310 144841291 410626259 859523885 950120440 855561563 869575215 571220617 941913272 131713376 645314925 499094292 928007463 340385217 656514473 669461817 777537889 394943436 753306606 279405728 451381054 941642722 966747857 801577709 825262049 35265576 922822570 676303345 854280194 226048578 830326597 921501644 995163921 286360732 418480731 733137194 753465174 871130514 993470896 212419236 216190550 511157933 813811164 342838635 766346728 205617719 873251129 590236911 795609004 889241616 949886883 396917502 744098788 539451588 739419845 554316868 756695570 512022431 801305885 146430706 594879719 12955022 850046472 409206924 518043162 720438962 907547064 250777048 569603354 442968253 571014601 766314765 991188089 386339965 574581886 133609722 210061821 729133056 882007500 525048932 788148577 40467346 75972067 986429239 987018094 544117668 784227837 867986748 872685048 273186843 706472839 957752580 993952934 575637080 765875712 183380345 745561192 870406910 951225524 554667041 734690781 351320441 911188616 363918695 911315712 164382207 231314523 96182998 640070483 223896723 472085591 507014703 783061730 734278611 932999702 852332136 998054298 646524394 954792326 718768384 945727274 949701560 971955356 640709388 939420487 49214789 108507178 893834649 916701391 702990231 869384153 574856518 846160568 967145189 967571694 90059002 240037312 641565492 920624463 909094382 978066896 732848075 928871110 934470093 966745489 511181218 703236565 222619029 430237713 35053132 676906023 761489794 912141542 323710384 563280679 915616998 965151992 715967572 727325100 976153897 984620853 528100439 696975250 942634713 967964988 866126776 886479864 187796459 397318477 374417874 436515551 805215588 990088272 309897903 734792193 737057493 902742687 393677727 635119490 596405946 753033591 549931279 723691837 80296887 351197370 232737846 960953267 643264951 694101658 543386029 990651918 353284679 585909521 588135513 796433291 613457958 916533758 639902182 767848208 824457494 951358840 24159225 60312056 879320736 959793204 545865083 698937920 739480614 945892821 729529244 912252402 564013097 653239833 128795853 839197519 167436432 382933687 442190814 680568454 94533769 711261919 374313987 866848670 641655723 751284408 34368388 49561265 219509954 244439241 130334111 236626642 582627679 984700369 172966750 631788101 622292748 642689245 138312746 658652580 911462357 969412799 569026462 598077794 450440951 621552761 124185732 280470430 443331271 598109305 398445901 870387883 925941666 953304546 919867539 965753346 603237616 769908862 91094179 165462623 975183035 988323250 186361717 778890780 730836015 748543724 690281616 983637951 825875292 885782336 352137160 820610317 621508966 864758063 179994909 609570137 823233272 837746758 861950392 908901704 909653508 990533882 523657780 991031847 711204179 759528614 651526431 800844056 151620297 658215235 837597209 999324930 865442666 969190998 538855983 824777014 900109968 958999263 164671397 969798421 118025025 757291744 671057207 953754103 253380130 885043471 243799713 851086663 971033940 989516545 156587129 710444310 607749550 661981146 944080485 994558541 143043075 890140121 617581584 826467282 763568020 893517007 818740694 888778484 488841004 949950602 638003252 937713536 373104921 996305574 666716426 967522002 740495868 832902000 530724384 935962542 55282578 160759108 457902408 629397550 844910089 898583695 827723393 970598160 80813293 134121086 325180769 778628147 31171808 85543083 763485513 893389123 32384804 136852050 739805381 955585666 217047729 983859836 997880656 999319610 36831543 916231766 334761675 991940447 5139615 76773364 687741884 988956987 235514027 922045410 836580888 893628189 595163436 810406389 451649921 922812940 793984344 968000060 387559454 511361298 569805619 723045453 862644190 980507676 167841931 602152906 368579497 933580486 408759023 634525618 454834336 991699512 416784176 731034418 187601697 461476980 666748917 785840549 545837777 902267654 443863856 710827974 598895503 861013664 359815397 837788269 7375803 873963540 247510518 414467353 544596268 939171231 681454122 820599040 480991731 665364065 75850496 894936832 807445252 970420276 350223911 930697850 649006970 879917434 946062238 956746920 25351519 852473060 416537976 636340585 159068363 235239512 682282141 802776791 349477672 694521676 620737303 785029887 168689800 189634683 615973027 879857249 33224590 960607368 312400288 497766823 788609822 909102862 99630100 222791686 368072220 534185012 621453451 953329445 374098108 989017334 385465223 997017241 429051033 882867193 73580325 566400640 837266852 911119577 672792171 804982320 828714146 888052400 870525503 993149498 520719029 752439127 767698256 962508929 912326116 917397988 113492009 199251045 38603719 322163688 616759574 950559716 435354725 688799533 342926173 659473728 242572104 858853606 957337315 983239149 20758320 935858221 743770990 905979842 183325527 530452659 325016671 943687053 631721661 722097508 534739780 618472290 268661062 753496050 798162483 866981345 779919784 787276208 871818873 927252899 990446940 994400864 766553147 907553291 356707654 679877413 340658862 549184057 44851660 850628702 453287768 998735699 519257599 895569402 870753880 956530816 323517917 801191507 849320069 916960720 47783353 360441062 947319368 953876145 506141589 543045685 320237482 964637098 475531975 653601322 801784985 873955971 899591719 951762848 14234978 665567559 334736195 893638528 734118773 980258253 117943610 829682194 922110404 968993212 695323767 968248665 82623768 802624576 733653587 875465349 29460782 761903181 149161751 970032066 820643920 994610533 308158671 400985121 883052206 892679044 295584602 656603611 372799955 500487417 36687283 67056733 402772316 454857154 850814577 989301075 558705718 690956098 573391399 955106139 392004493 743487974 856299881 910472838 233681857 476779939 764783114 924912969 750225983 996785800 104510294 736757757 497754903 526205806 790614353 790725610 194462072 830060818 392266182 621938090 406317648 433894067 295309602 376139055 96615559 490638842 488300572 984992301 742644042 873698546 663087299 699754788 18302636 40022865 182483053 684458341 980350283 981587756 895917125 952944725 768585331 829222348 214317412 368901155 220416086 714773638 184857445 709581137 770616810 881223797 827196895 945787010 960773135 988498145 783230778 812251802 861932482 905652687 600673045 604521640 768775283 975577101 293464577 915811928 110972580 873470704 794848511 845438099 913044809 966446999 351804273 439241091 734854890 951170377 115463595 790137093 338189917 996552275 510211282 630538377 56003136 834541084 604192329 954955727 154960690 442688230 867905628 973971221 927445362 997661228 93944886 897711007 928076650 933429814 602777957 663922378 216299009 414157236 543381570 779752680 506311062 846863167 351668001 573936740 797104979 802995843 617859974 710889895 821363028 859398873 181310022 449649522 545983204 982444545 494791911 534968710 13962730 706217053 69908483 983866636 557860235 767684632 28532525 313211089 474431124 776271346 201213642 795834605 3692688 518071615 748310948 981561842 449355503 924534655 299842905 340843355 858711637 934800352 64123100 692372731 974826377 976154728 380688506 553106971 65865055 696731306 326771824 895139275 146170054 563279234 195516751 317358145 392594625 508559971 503853687 764354117 601079417 648358200 68482695 663510885 112190680 311580661 992343401 997264975 982257926 985329575 494216416 597644680 84178921 474295794 636293567 805883754 832947187 929262832 134201033 347974488 675250685 700871846 545183737 705953907 962259204 970065059 988959463 998216204 769637725 989423858 887519982 981572565 830416425 978078295 522591399 802343946 573440535 851836514 353798889 476298861 873331681 998217386 631073873 788481754 960562862 989990583 876770634 969234905 773356397 928471585 469209826 664939524 979608414 984648604 398051069 539755557 175409929 909884323 650109751 934067544 362871655 537122412 926629565 956147919 142425144 883907153 857230898 930283297 574242648 659142014 639979574 778808225 732049410 799831233 488381392 658023817 871012930 937681594 420274251 546062372 101373443 703032059 596100350 598233402 431434896 838548378 427566785 932773003 831914606 858735397 630515524 961543711 898025563 958064139 118314581 746481009 816743694 911631660 546645776 888446548 481740665 521562104 520034692 562904704 626782987 966529105 177099407 467398449 690903933 755027103 455485049 795905152 968174637 972917845 665648472 902835701 569718548 707897965 403101954 837255990 993826875 997799205 92687062 687225361 47710517 601658540 58201411 978359495 900595953 910264974 699062261 868301609 892402266 941347686 798305898 847981084 167760806 169724087 661554541 976003708 652942890 715754960 243364890 723176701 980517406 984954715 137091726 138599523 897189592 948869699 289735836 872959585 208099939 982406289 146005503 919697850 242081071 263085578 149556437 305019846 427615907 987929793 900076673 934391483 419238226 838069162 682660694 879407430 875920596 898681543 897948905 928305036 241794891 501093803 279393987 462373639 234013619 787569689 796090380 846960714 969273439 991869428 59053924 874047354 4653220 265719492 75722498 988786122 382952898 859676564 725038382 745954874 811394899 889182994 710772848 749001345 575150549 844062832 733053983 829868840 544421788 700365481 48243146 572265019 178681674 633197418 395096265 919953385 174277620 476294874 734257095 975594450 963401296 982260963 740405991 858605118 120600516 750787786 705023995 938195302 70721421 637589252 934966219 934980795 869549237 924892102 981711148 996445662 540707746 989528995 234194561 965943789 192222179 508678577 144188758 992192404 701959286 862016655 347486132 772478922 368900112 780883762 471266748 834170916 777238794 909703524 158103093 714238005 375301125 799736524 381764340 675494624 661906024 729153317 876195043 887181194 575433410 700962941 643269899 842901430 657916125 990512440 624902269 796439347 450447846 508073223 459584829 637770886 321580473 823197333 548377623 858481781 9893689 681524972 42782144 260048767 649146531 756284531 598208446 638299252 372285173 956684919 152757958 968279439 895738967 957357077 267074953 655870621 450491666 680808099 17515739 983773346 45800019 570848568 321865647 528718574 917908073 989257881 898213698 928834911 166723429 351255078 228333880 481285219 536839999 806435949 450499999 590811561 987089593 997370535 124225163 196349313 879962478 906701227 662050645 832035776 165663976 180326385 582476848 683657781 542240888 728943403 847536140 959045840 957385370 993250039 27094559 327189543 498628795 559590063 867096581 918705907 669248432 705685690 156497590 742470324 218046653 404065777 364833749 811407221 4253688 240946901 945312464 973449158 474579938 658492640 728324763 952199996 336339078 415903721 65227347 173331047 971879418 991078806 510443880 621595216 723197299 873750338 261802285 957617862 302525542 751655590 861665285 865606056 434436902 693939462 822265645 960330290 734503013 745049376 314284185 961223704 794350809 873021226 123983145 388034289 308897559 777118211 172445749 715257288 227448112 618649308 988007495 995859087 679992698 901969580 601054169 611735198 903094729 977637130 293309597 525089326 770221646 791510674 273289010 483954438 958292284 974276825 327827972 620579937 757086857 895093643 118698561 622063299 237640072 799138469 898624000 942009289 645776387 924866716 508313311 822184141 94118681 355229105 346605330 833650940 45644447 223171473 956633291 985077821 595109627 726580903 972545698 998142709 315891508 812678993 398887334 701022694 74382939 108690266 788464379 958556140 816968253 987781749 298689368 512612305 148363989 260575423 234860187 273756040 768586984 834204029 209827144 833279294 77502107 100230852 328296716 600506464 991980001 997272656 726315732 902497991 828131506 837035447 808067324 952265777 681728951 721826899 559517804 560072635 93672526 492244016 773195222 812634911 897051876 898531167 279344410 486446726 423164176 947130164 457603616 673766453 592508552 605807701 21936451 293458932 240271383 371771501 177481101 677001908 497100243 792076612 617031501 975771599 376087662 602622329 857791951 935321709 883376599 897114354 72500019 828567348 729375184 972021478 910684678 981841927 429459828 734184532 718504908 974388344 303758930 686453737 891638185 897495367 987440217 993459257 803468934 956272739 129348272 299406898 339573080 415479001 517339072 851769346 790937843 965802971 895760706 905639822 632998909 671105459 487922366 544663300 737323503 940884767 364714354 605831390 951046935 954110642 704036977 887120734 124283936 563354912 619761279 794030792 627023263 633165261 318077846 880266673 797208392 943331072 368151611 484197096 297952957 596237455 937487361 992514407 625977416 626739927 267193021 739180986 779725081 986760340 2131076 626024965 29707734 388290262 60826340 978218766 927675547 987061578 308658350 619413456 723333946 950749753 338246805 818050181 330066852 778661340 532501980 659586537 654761115 999315713 450385428 984290437 196751023 728080626 733925139 765754295 232247024 794887333 676648813 677570145 1972292 882852229 275304696 419989360 721888251 776590403 245933953 930078697 559407623 732315759 914911926 977736280 88058369 132324748 389926528 506778399 23957132 322278500 170424873 844481972 401630975 989759682 725061385 940219601 606062777 839716699 620984913 872250271 92583056 98738040 622725222 941960154 735940963 959875997 348107175 489974425 770457584 950202105 683249226 875232440 667299863 893355947 771891774 913497585 500221340 793853666 656785638 918213270 10048500 557131361 259092724 540750598 900046904 976763717 206555535 443636330 507815344 590437455 8112909 102625652 194199462 995282893 530994433 762876670 829892030 863492065 390432611 993477667 427737117 863609570 888429809 930759590 417387426 472945031 418685858 577278309 317963325 478248093 505445614 708201064 353085580 766206958 772308599 954632729 342952414 491210640 303586687 970425165 393554968 797246216 485110524 967518232 572010645 719563796 880920733 900568890 850341359 897128309 670978136 685606940 10845097 533465118 500018457 763750220 900578987 931906787 50207044 473711368 195430290 834169971 998198504 998349477 231344221 895532001 662640607 756594260 450407547 489954009 589135443 933947793 618148594 645963060 672538178 852882098 481373063 956229207 655918404 712340326 131221462 220116911 402177609 764380911 185690451 755468518 463785038 755203666 689714929 951776582 353629534 912222269 863613693 958452620 284251073 689257888 52531614 799943912 979235405 984803810 441559959 980746179 174513064 666173722 726616045 811832977 701503612 944074433 303151746 811728015 931124409 975038089 602999291 963463881 85541741 835081011 520029612 914843988 243051251 798187658 510959123 716430721 235438451 648494315 336049076 546915200 160557923 636897654 38815376 514890371 864873853 931229080 685534781 977084712 802679637 815815504 668159516 699951652 915516000 935458813 276204528 631785841 403604964 724672295 650329665 797306667 891690694 969424208 795596271 934159560 977426561 981679781 306384890 314795948 865144964 889141210 745901038 775562858 65449262 276977491 756407056 983771378 189140699 591110253 642832104 817493088 273817459 389245973 952638221 996799852 835439020 847325272 647343767 650149804 461870444 552240796 843534760 938898338 714407585 947395481 391704245 994773018 625387120 835846784 220311409 302392452 738987825 975044075 865808394 975258995 60115920 417203866 507571578 851564293 710254330 863381704 545484671 825950497 853631677 966982859 690205919 893307087 777901461 854403589 667582854 772628715 193573778 279084554 968983325 980807651 307275000 323773808 547581788 570222898 338757720 774510849 380283603 717901205 227687187 428111765 169557711 686132304 115369494 454181039 397768112 801038690 879237717 885948741 32993948 292103230 489210396 693044832 796596995 978733214 431368080 911353840 659257433 988702197 471884083 886288239 700007720 854651508 255965857 334978959 373547601 904504174 177130871 570199091 656585494 825621549 299268311 422180221 11413140 497053120 472984991 874739503 233107122 573308964 785716744 960257042 402081047 539347061 157681084 655122670 627457519 961264935 224244274 293203534 508195298 561338140 940467210 970131054 545591182 685361419 819207067 921130448 752412389 766982256 819500173 954125464 149126336 798145668 431634334 663475409 793222085 841375270 159038613 794598552 7688463 625563106 181545143 467567576 299350227 849627448 643959062 663041829 876613387 895307769 255704383 740179130 165701639 368549739 16258023 469043525 709294768 820096145 525107688 657367252 237505459 348754825 163811831 448170344 529610918 857853855 533339693 632047375 996923269 998547600 136524791 981282435 60060945 299226967 114380032 549325862 917611066 977922129 936805262 956756249 574552424 901414854 20177271 35865773 424547739 809752922 397453718 857577389 524224376 682597053 254949914 305845735 412281090 871425885 455304858 489831665 543059290 702327331 64976114 951122208 49327705 913935462 466101337 790893518 808210397 991460736 840018363 958886233 681382818 714087208 568222044 672413223 744241165 758689299 463876705 805527519 256260826 669704394 198671278 554059032 775266952 779726496 91412408 577795805 168411453 494950805 913936350 974647358 544446208 744776953 817810555 820574475 121477544 183786437 53308571 389671762 798643246 890848795 519329834 637477907 190329807 580726880 891198176 986134555 259075929 798393309 287083472 990619282 325116693 387878501 518300842 869469425 646274172 753562367 928953126 933907882 46789722 760758434 360994508 839324782 381459852 972510619 956882449 981830161 212820540 395024113 602562996 627712636 688561118 854916734 108520499 212172817 881920564 977168788 621678450 623521512 324022289 964350505 780473361 946705617 204949967 369411613 22363379 565974787 358138149 728615716 527228162 717132367 639589230 863205048 783957431 910806788 944559261 982495906 346017583 622309838 298069799 572164285 403883945 790827937 834760328 968739510 825876549 954506074 201799283 674119360 494931619 638185399 390201253 576990361 48676957 557274777 12006334 388363316 109844857 525584289 521767088 788189201 490470751 802936710 531099274 987592701 587922762 653558066 278986862 396949804 524138390 764048122 388537484 687038933 311796882 731111431 534369710 743128965 279991180 391384990 203467036 313424459 135966142 667683615 259157874 858244120 413802711 630157236 218003050 470082083 253565157 842432157 638880864 863449002 210688346 626597670 459381335 666490923 636290466 810713380 581991671 819927355 719888341 762613336 286543529 850318164 611493285 717889071 322554264 706311834 623620652 908046009 972913652 983318863 238368821 558024606 149011884 631382535 20770511 791014374 799730811 823807262 819066873 930371445 34607285 221757232 254138928 707736752 919752085 945183992 720348193 919972619 329544123 563585063 660649100 869556960 16831710 623876116 451473550 503589499 270827411 285847522 506658182 896799149 574952057 702941469 671833360 793894525 904996373 941914534 162610475 250254689 118674641 953523646 996541317 997958163 70706936 405608742 294363332 571211286 34812430 516588001 922101501 960238277 348836983 683073110 794922969 993925366 489995053 816412196 258546367 758726711 412083466 961767717 210298000 370797197 625384370 800228337 592969222 707369890 302359092 302883457 666749775 922943016 121401735 125165060 805655390 988869781 920164830 967653759 720600153 774017433 10889774 899046488 466398288 559792103 984300001 988605866 827225931 922979746 98454708 839770905 196859095 385000748 473576423 590591131 988684859 994111718 689384171 737188434 507658593 616469573 904215520 919692199 208913907 212009847 593832699 935603485 911680189 984514596 193092628 527051950 352658318 623937308 169190467 526727699 255986185 759801472 561313942 970276736 953682197 969810202 549368085 951282437 168979676 557512111 556715864 645528785 901809319 927850172 462603588 891122507 870691349 980349363 870073065 971105061 717921103 803991770 244183246 632277101 144970784 904751253 993370662 997824703 880844081 955039168 639821518 885178242 211688244 648969859 277358984 811683341 268393531 358242448 988180947 990977202 80769499 672400314 519121874 799428477 659622085 993237658 450308673 705256030 918440890 920959559 822930694 970441435 699408905 929710948 136207248 699529939 295503885 474484762 412563397 832389030 807127751 960654149 668078025 995945197 821685248 914718032 181248693 929968841 264904153 742903253 278909188 829523088 347648042 545640774 844308740 911252522 515600573 620618123 35474320 374313957 897413456 955548906 187836588 743431521 291066229 653327173 459791018 698096046 24346138 629837521 450663776 681951138 131732049 305979579 536837308 777873632 58051290 675223290 901853017 968831427 745996853 837814309 104889736 388834793 500803601 578183640 642152439 919187010 148931004 809639796 73234201 905280931 888390521 981825121 705631510 831193992 738586247 922382225 529152937 564740949 820894163 916154838 868341570 888978284 993598111 996886703 55362233 761690137 614791305 898002450 344226528 397811789 228493518 905449608 844366251 992323810 471799879 925732418 570841980 616170955 835187078 843731576 876620874 939121850 508146509 662295278 485812332 536272199 442730625 788314878 252681337 534932790 238202048 345465561 240163132 535353424 698425299 921711547 825556602 950655903 856755499 917648476 106607848 813404609 110253663 125061151 540205568 670490531 589590745 750743359 681195853 880274796 679487118 767865109 345019562 775493317 54051991 924927187 795218069 999145893 663027735 840549557 81024156 859104543 363913968 514948113 904148770 932068902 919730779 984766840 98749105 517330690 712560253 717021935 25666982 991358412 107705249 708459072 254602034 791888590 922481642 990316776 570748905 983604557 905088178 985884168 295752082 821519755 495412658 924435169 189537755 778734592 956760109 957420199 568014366 704208698 813536614 845214947 933913135 948041000 704138508 854086794 508802546 523464602 185413560 418122370 6946234 332013747 493099692 674628176 760019872 961469879 463176897 983820755 862663938 935614962 667707647 987153789 799945451 866464300 344052251 631700598 730044887 812244452 328191281 559207710 926890564 993543838 575279540 611163247 39711660 456224096 832693981 911092464 252266895 982208470 819341916 966502740 874645346 915648104 280018498 369644298 781463810 932953861 3902831 344421499 537388410 931715867 454705746 682159642 437134448 982415299 225198261 968380997 258058532 729436723 647824874 989371250 890913846 941036258 590260280 938771632 810684697 890701310 162007816 543733088 380737521 772418649 228108486 379053730 240216464 863225740 34983886 720914038 919257940 965523307 164127031 294479089 185060111 912092553 179594128 412481975 106924835 860173180 642434827 982081834 911212151 936623052 198478604 849100186 290644504 766217787 341171577 592026096 233471129 728798177 261038822 948524666 697401191 768587760 629807759 670103899 273869377 880414623 96466193 140236635 578707281 686897680 4084436 166761357 533126229 718550684 463810419 822793145 355963895 416699126 518577285 896496143 771001967 809829867 922091090 934455516 641285329 968483398 110188064 168114603 623216118 754216744 590973665 669434150 513330348 710557952 379867277 634197978 815515186 885199573 657603154 929903133 828921037 983745610 300554859 503539933 969885672 983246442 12612035 891077659 418806673 498206924 77619467 469860369 135554985 365811329 189905913 780338902 804333707 884089097 55749133 134904402 992679495 996653068 19846750 610339531 367750105 535741388 75024078 943312980 949978180 960739884 908662110 985702553 433989611 886882268 824692891 985274978 865809658 934488463 881169468 966459799 139969493 630220851 696234370 981135240 655963454 708679327 211304822 421614013 430382818 457138881 862446044 950805533 354425367 491644361 860060281 975343994 728403889 979075575 629036525 728739575 514994002 830724876 182402509 924708546 326551755 523075223 933957372 969051273 95904321 538891896 832412678 861007589 10909296 127366059 843864624 861791303 966814693 979971210 542922594 716148602 985141966 998398115 528732440 851504491 383381173 511471258 656135684 851867621 66845756 781783937 92017300 352810703 287638436 716517708 650010671 863564295 198340486 392765924 955556591 994185503 734282152 770171203 743584578 810299655 760858246 997779353 999058794 999323943 756746787 987983771 688316274 975739984 802694733 999083424 926482228 928179460 293910110 908481770 903563955 991884251 551566462 799356614 221215176 393698582 439006550 672696618 716692006 855656748 285671967 867688022 493938712 495751436 349034756 418180974 811720739 977530350 319245519 683401465 794948306 931604634 751586558 899138605 908682853 924779386 886272756 979939736 504561435 961978337 363560086 669267214 873624900 938342963 277358145 439361630 346443019 521538439 699779826 735780194 921949514 950712808 376705169 909753121 81999238 503063919 517678158 630901006 612153604 616600334 416825767 444311161 695749286 966631536 668974017 988953251 477259182 513070019 496539781 499085152 661809436 824623372 251717220 908677968 137329453 794013509 656847340 779156558 125467373 783711550 812474122 913150364 419646867 930678714 28050073 867024852 952730388 985340210 921651924 972098117 92118983 208982854 708028080 917357219 172670944 369417542 268874724 334953223 78376452 593152593 6835496 285507224 762838389 874280781 67578725 997301317 902137341 968948504 351916656 931023561 770875231 778281209 180514418 698239422 574818090 989699902 536504905 686636412 18492289 884786680 778509374 971227694 879394295 922400401 348592029 650686942 311552411 977056507 551936833 992437353 462789255 679946193 887839774 910855790 352354097 765553979 403284554 720803260 334724031 997071198 240022212 923949928 388993386 470823605 323102035 563958616 594022277 897992484 979947699 998142268 790283309 831831793 189908791 733954940 417171002 961885855 22901690 130966647 908926838 978127719 451753147 692414451 948191634 965526520 158588718 463234937 395885698 648829781 987747935 993775399 870592173 891607493 935168323 990179689 137181803 895711124 675572126 794800112 904706209 998499958 77590984 694532936 828893902 948625989 282984704 898227105 94312797 995356045 443424482 589627013 385145844 408434450 212324866 462082072 433477897 584221005 119865501 578585072 324119997 725390410 733698622 803345794 443748763 934472017 901328193 904047562 870790112 883425657 24652472 921572275 396387554 938202467 345200997 769717400 38183855 819499732 986686077 990686635 995006350 997714017 20989994 185609106 807405223 808359108 85455644 884547206 305420303 913849810 418535044 518828021 132809836 530807060 10453410 246431103 641889085 761562339 955083377 967206109 237095640 865938668 173567798 893369455 248560654 335588103 587562975 655760013 183274103 225023009 976415502 976870097 813585170 913176847 807404831 927305578 44654873 362646971 694580169 989221613 53181715 907996041 793230011 987650521 91583994 643049940 837254628 912956116 875733865 924044094 486440495 865957158 725761724 931688167 607121301 849453322 228233072 257353044 364856948 621877936 736872748 746195452 404179248 797108734 868767654 898367001 291544908 443519959 498216533 789763208 395353575 454401619 763472284 947940110 29967513 702099525 309239590 697534933 716056846 974000969 766362280 958797681 149112224 560349912 442370193 839519631 889044072 971947192 924738579 948734436 60559133 321159910 693156689 991322779 967633703 971825456 80518663 313496336 351199183 500298841 762666467 899865558 311745819 376004584 493202995 841659080 784977589 887188052 653850951 833794866 330144510 653974029 861046376 952700126 131686288 786820784 28484167 292948953 687936022 735987778 800829394 822329474 998286202 998986889 818859138 912561362 340588466 368125851 702031744 971868657 913917229 932505969 193554768 276578324 328722491 348443673 560156536 985338016 543686269 793424011 751551958 864476166 141635024 561156243 888063989 969465689 459987174 708654955 880813589 952146246 111162883 344071004 583001609 915471217 480341641 894909171 256813395 451453369 672437294 874519355 979593308 989791082 33481685 354354859 118583371 964157635 364822679 682894022 166270786 511014698 791456183 983367331 747857887 849809972 546494027 606625622 835032518 995959693 440697347 657481448 643168958 910132352 729175380 988357177 372745406 820418809 263956874 956748505 720921072 934294364 205054819 254208484 746348224 830658125 94412093 940670714 550522747 694114072 275746401 693180866 4455806 881739170 668397536 891499523 505614718 788214951 864957324 946390341 229223641 761179401 62750719 401953257 128055777 474254647 898166936 986528883 648384235 790781456 111513078 814969255 399997054 423516540 735092022 850696978 920638475 990761005 84255499 872538460 792514132 999036350 37011295 749526861 531517619 657925404 164477522 249602131 86038840 492389573 66764254 796774557 608524199 639561889 834436558 979463695 926793076 992896313 121543504 987412238 202193838 419403804 559022557 870271057 64175363 83259446 669257624 714506021 608822502 747138575 526553346 689944785 986311080 993912680 855042109 945333656 297252826 843654818 660721939 902405176 167783920 226195760 788770325 812429423 143452484 885491370 435539504 529004625 12149152 315738166 422223170 702065882 414776889 758062605 282134669 415512523 972507477 989591675 409005018 805716502 727027247 953365493 272494151 665668540 900014578 991297189 814067559 896899596 905062244 949063005 171216876 919190365 541171058 698026117 88156421 540455215 838281969 924428788 156468575 478666711 305176210 462069938 340636619 976589618 307058602 499950456 1560648 815213070 527969461 838875159 454507030 704507784 367046749 957409560 789171909 932172530 894716351 903006372 233305521 953561949 176743312 331515250 61899697 966164848 887825622 920451602 443234551 886885118 562875659 627120207 914257397 948899483 243720907 871380446 740134267 892571361 663570218 716289919 888935575 982129594 785874662 908326464 852671465 884932241 335780943 448156258 647380459 832803950 67341949 174784681 480465632 669217690 832653143 905489324 866382028 997360355 247989589 380856040 337347137 659828690 259055284 705561384 981424938 984845137 91161241 810139393 25196459 600199261 706667171 882271985 445005287 672378323 870408984 994387718 578573814 736553794 668370079 812760610 281897213 463021793 236323066 423103656 535749690 947275412 875432074 998386096 656643791 948107847 142892766 149485780 425649566 699277755 287839980 804449305 578288981 640888732 877367848 880979130 538414226 785644252 730449212 939426146 950688685 952240520 349940624 713838828 969700483 984100230 187870080 815735672 923215843 995792045 501355029 831298118 887645182 890944795 724565591 787971436 806601361 883636028 357805410 628257999 419594194 758696159 838680113 914275807 81903698 369783286 592929373 780818297 310032586 881357648 528568003 932993447 588328230 722538633 965996593 987108864 72365511 690064424 586120636 850522977 25089273 534125705 17399919 217272495 538747368 717479680 105342848 928922383 536225508 651285029 770676486 986429648 316759237 336691198 22369539 622016366 549030880 932747113 275855882 441106874 241730604 921260007 583210850 875063004 926835268 929314393 138689784 972367381 725740836 732640440 957945351 988751696 621340264 735234880 328257875 685085562 29625851 139457343 970952310 977200953 799051645 842564573 690106623 707999629 602135710 843633042 298425185 938477704 644760975 848975614 714863221 957985322 79019189 653388289 325954994 806058019 865398781 953548784 451914247 505357738 60031033 208548591 750874047 895549739 985749084 986622017 933478206 998128781 898389238 998328802 619492454 954612350 431241568 854038406 132659466 497140624 103929889 642025430 264109466 907659621 136623366 325837022 57793917 67811488 902498927 912088613 124656442 259229806 317827497 581608229 429822408 513660429 666485133 859151466 859759126 976956436 873429541 877856931 660579787 825542256 170328098 263762809 392518192 652447326 338860912 497274470 95812573 168910513 625339134 848468933 216533130 504237825 498839413 816586947 103572484 964321169 802039069 937936117 280490291 952827881 448822520 523648291 13535315 559762377 619163219 956894278 463970428 666499819 226416760 502710615 661913735 752586182 960415191 975001744 920531133 979514018 904866507 924077097 647247523 789725047 101528364 726164955 441342166 913545590 3689418 528854558 15216618 485207413 410574317 937156051 676622650 927931082 630642832 880225560 904965310 997680725 58996522 994319491 336787211 684576151 614396396 869338357 685941391 698295307 198138370 694668456 456649982 714621316 592747818 948084818 757790522 805582372 945347482 961423444 721883531 791572179 737659357 930107098 5208810 186578674 131379276 575606789 553711414 866839872 356559007 461893973 638742317 801200313 46842614 692088995 124046198 226422288 316282392 332975931 441069989 498618708 726236469 766274452 7463952 319984947 936127756 956615522 177788619 969668305 647888042 981932463 518832294 854030314 737756504 930076776 402359910 969336983 839241931 846537401 308518917 637667879 20699410 346674343 795875395 965947972 538679421 976817221 493329847 955460681 241335471 401429241 223262560 298076064 649982338 944500864 318062489 655151865 592412333 686858387 404551470 536863116 501807898 691602660 635776431 728241520 565299012 951638897 841717861 909735439 305736312 635951089 521042360 965282210 811927539 996990997 998167859 998491216 1967407 776920040 660827011 690353782 968800314 985969012 691492611 727141397 122570670 919911529 921795873 985661522 894086301 974083368 43309971 362097447 179524768 878415766 811916373 994641527 906449023 954658481 873178591 922290354 778705896 934156698 977858806 982961317 953379673 982667799 337720961 664826284 954343394 958053467 452241468 887840849 415064535 510663463 75089573 622997163 680937101 808284714 795356246 831375846 599054665 870522074 963589229 982593213 959491607 963911806 324252119 403028985 134473161 324018197 350390998 407620794 125245718 216561323 108137404 737171384 104347018 587322214 960105295 988220786 829204937 923358343 230265332 858683886 753003987 979526676 906882874 977304259 266553668 491380241 949936381 972170418 991951618 997795248 901011170 953812016 922637894 993421692 189423019 810793221 798484533 980638197 531806457 579464554 187689894 224109588 713057630 754552651 868900311 897365880 432301000 927328973 848185483 998884648 91067581 995151711 9732343 505616372 380850031 608676502 341799877 757334716 16752863 341320101 659090684 888296983 77143451 887997552 158915245 795410316 295252205 438900259 669529293 996493867 334268843 342790359 6733347 331440755 336657938 943671059 990772483 996522387 107039422 758952259 859846937 978232745 920638718 990222803 408149928 788189544 649446494 872095995 703541864 918493986 412426025 915387733 218452106 457683597 593746469 958030228 587149946 656534293 456998474 805689376 366892391 399859376 937162947 976152116 527555414 819746164 972737855 976912919 954210502 981071908 532176272 888339181 576082391 700831325 693618072 803660209 316449890 734302557 270995464 761156283 962363901 980980792 558681070 919472235 301834575 336600901 726194170 957935571 959062608 965472541 405410288 433304110 896654078 929804062 3486555 816904494 815693237 989141227 801760430 894444704 86411628 934603260 419749875 893144038 667154463 906845461 114360894 541422925 529407634 619292550 422380820 942646795 165011472 623007177 987386642 988003228 356422506 629385768 6664341 304832918 610280785 874090180 302523925 608647155 561298701 791914135 567252188 741822510 111189925 807050547 135523007 486388658 623619321 889207655 706228469 831011495 671238525 804934079 601541764 938608981 728056658 837272726 602002800 953892460 256446349 272872225 660407953 745278534 57635128 461336472 443818536 760150151 965247151 978289860 956416758 988983524 206963742 307757965 540251169 756568284 929283802 954515486 739891235 831454672 179618501 652645164 115891537 594783759 473125631 622787112 512891946 650020299 694871886 879862124 980845084 989659247 385562496 765245176 905397423 938755933 367849491 542651050 79606946 984458502 572271221 696570419 800376558 963540469 189093123 918109450 310297602 553727446 483130144 712936778 552005166 950597799 828157003 851784560 261684921 515277713 481812028 892022119 34522643 395013199 262550763 363349463 925862343 935474404 531381671 554889654 567874205 875885357 588632743 919894671 511510788 676266845 268313328 392678432 751068801 822290435 949976706 963217034 83183682 961920086 594218452 704080149 282436588 550337176 15758250 602140798 944102430 979862290 620625991 874191705 219159987 837219441 296046733 446950593 5489854 427788841 726890449 769593032 374642297 556698818 96439712 602521676 634595058 809027914 214795042 457448243 687164031 864667469 501591120 683379220 889153195 921219256 213135904 502404749 503048628 854486247 460116869 495276837 191731733 390662005 347315186 941650261 981779611 984074435 570073254 701993267 283474227 468768817 52788727 854578391 345316679 679236206 211454574 953439843 210823464 600392157 283603800 638358573 226434726 632000952 411383484 734291516 840669549 942245982 4011105 665451154 925797294 966068733 222590934 230923427 133327922 935636764 529659464 799118190 985251060 993440622 941865710 984469596 331140841 434917367 417559584 736851017 522075618 994194886 59366258 298212910 687508302 924886867 614972659 817144332 36095143 648219130 83571650 524672764 716840548 996851681 605651941 856218097 604021746 866255468 720610708 743945385 741725228 791084454 623700388 880352942 109363457 469150002 158290259 879149395 292643940 700075617 977728038 994940339 625225541 740328278 878001277 901258861 511805582 871893843 77344656 632436107 43942227 788725011 89533664 769957669 171863892 345598262 788690284 794597774 314360785 481770709 899606011 935804766 777052694 925767474 576540056 783577286 947892751 953226379 213074412 551571407 384741417 793815014 442832752 868510971 756026418 991874488 984136542 990030742 232639838 372797671 716113719 833247460 29525837 850537411 723323579 842994987 296585952 364071968 138123254 439519504 140039871 316523427 245640065 784111654 925109271 954199528 612102611 740699394 294974674 611606951 542761371 796600557 960000237 968690812 326135349 893149792 985838060 992745355 270464696 485231166 591183450 624208863 636443521 797711051 251216275 388427485 197712948 475280771 983009605 996877154 750026618 829135819 812460519 901013100 379472542 496762410 476466331 905754792 668367197 785083381 207211520 238211176 966155454 986384337 18001621 940252865 78499980 207644355 221803739 866606648 532518104 873040245 178176429 800438833 32572932 652918184 61198959 404012892 118938726 849244757 123264260 247554663 230382521 379045817 577056477 892167273 473778518 678710549 306822083 722034365 1246232 258917400 631022556 854524788 817890499 938198743 164674980 165394921 515768656 957070242 607300670 898901017 835193377 934267494 699849214 730019397 212734986 842620727 142417036 460177095 659274079 808859473 173238972 382836615 123236395 851284484 383524891 981263782 105732326 443647411 689228579 959633950 592661272 995927803 851284053 941135762 599486793 765099771 437893809 658126976 872786425 898268856 647492211 683270605 271188963 716283386 231030889 365747949 289131854 500706570 962392346 980439507 191676931 464266302 265676530 625010370 799601441 815107596 23468168 476586682 669175549 733748191 366039993 434636383 892287756 952140496 5405984 673331758 192036284 443530715 467089437 484680877 562780579 673776140 681627747 787778300 527607948 905261044 864298756 964739139 232733851 273971415 249441915 376726731 94094629 749454419 898348431 920688922 514850249 813728132 106260820 435642901 735622327 878186224 387695895 521263645 543157629 886859056 684535375 801395519 118700873 682713770 733587043 736448779 749390347 901189405 516203370 608551958 442420377 454259725 644585517 884120388 28188234 661755551 277333558 844280324 916145835 930704053 578243831 708173934 705182070 819510966 175564798 202614325 464743127 787846086 496647162 973867411 646758108 818733020 268667458 411341234 210684914 769193667 169585697 843098129 978352004 980384091 367931278 626257668 52069721 107543672 578413720 692452374 297103811 758252716 257269834 392167186 5273137 349696269 434171252 467735034 151721580 318879813 482669273 917492845 951913530 994483743 948385647 997571955 522355212 976195615 776675698 825646990 341397927 986095163 768264020 971354080 287640154 684392103 150553470 528220857 257916932 598338428 771081665 869762146 82479721 997305054 887022707 965980346 423220961 864327876 744961429 953107164 466900511 769792400 285889525 900379373 243027555 636981397 607807471 666996584 284285821 380502250 496652939 623363755 513438371 995681737 528904183 680756002 257797684 425330095 824129576 922557628 653391020 941568386 236447404 680628823 966316378 982941280 504099076 994219931 767942574 829654228 607028548 678724802 271258882 826622718 19989361 673379761 818243576 823960647 954769482 964666402 968303244 969467838 393538103 437762209 784274305 959711050 185731224 972157622 398937674 473761456 993160255 996054602 821425338 841918239 168618044 411849970 308364314 709974572 723982735 995792175 741802087 906986902 851783478 969831194 150237053 915793957 876864458 955112115 911850983 994320256 565130880 846308311 658395094 670805535 698614261 845490366 412200916 846889405 466248588 872242793 990013771 993649908 322508147 365895372 654170441 861637403 334627236 588185915 819135790 990287460 394557052 484344696 121277374 639281064 708165942 899193353 313830886 677235108 231481199 417171296 465693742 552415988 134930670 242712217 225862044 308479887 539854575 907193337 878283570 897304598 58367546 507526824 275723352 283814398 884071646 941930698 968120513 984356592 579445099 766437805 108567186 718774768 785216551 998068680 803861938 817827581 242060351 779644710 675171054 876690801 961042353 974055322 700253167 787353116 830253759 898946036 762270145 976718338 23651571 255349815 438556403 808242734 133719568 577182077 153281114 285865712 554552411 844840247 351519871 648883319 768912448 922000967 555812877 909235512 599400589 843750723 91302116 603790650 310038762 751036898 858795500 906416798 577063720 581879863 486643247 528686234 796518864 927061900 539525034 820564325 586143885 983466834 737776550 963464733 281647850 644091011 655506553 946632661 174263596 993864362 792618678 867008632 669344798 713794527 500689784 593377926 815272808 868343147 337231550 432527583 433751114 875798100 23146984 884153520 491302238 617622665 253465544 536349335 632560402 851304176 490204574 643512864 604201819 985931847 649307199 896621212 111860833 492886851 702867013 974441950 262650366 619217040 740311092 913238165 973208911 988720067 525805756 752643697 842755372 959512743 560226304 873860185 142503067 434364612 130414636 936908422 60044908 438386259 598850589 691716180 959064105 993538390 557064958 658384288 35131381 813435398 674591949 957559457 618409987 648295334 399185247 420173520 966983929 994464278 739445788 818843671 548880177 817850136 423981603 710334882 24320167 650545629 87180550 462947413 591615518 646195948 123653690 475384728 675366648 801906999 825591349 861615801 520523345 866725216 318513726 704503162 329442048 871800247 89015586 303727507 597811054 793050377 135263305 688348488 100314755 771650742 134067192 419272386 844343745 871274675 394987568 417506305 471122583 878207861 436241136 505971070 792744465 827979626 281711501 632403385 950313477 998585768 462680367 465941368 310423410 345164414 386035941 390224341 931429183 981396749 140602783 241311936 490593737 619614527 122735642 805181916 363586379 617980193 780245913 888716993 367391109 907695099 177755087 441745269 560072122 983357404 292268513 887743673 791295243 911772227 616198995 862579142 946132607 972331363 487139098 874435203 216394812 413846760 548823976 696199536 233535693 676436506 86444350 997172455 465699013 649397302 160941763 584366230 394316523 679228819 307431091 481079470 812091269 820416900 722164760 891691148 453143101 749733054 686266402 706974918 409499121 690627887 207307718 529915491 510006027 565239733 723491697 755340613 204268788 874992576 134438134 637235250 366519481 829063739 555350283 578647174 516506666 678483815 596836462 666391190 503051258 889619852 342932872 578123231 883537075 896407136 821776651 894169097 751101497 920062919 532998026 915972910 536013111 600223341 921648219 945905388 437037009 491881888 330331871 932462185 105837162 826939353 73004458 925117737 53388354 153889349 170343144 719546054 217490006 385534697 412342901 769470728 299055575 398545296 373843830 496468660 979756678 982381390 153223330 796135484 252299308 740159682 195706890 998490805 481712185 539438687 365557615 945239329 145990482 791261882 332582261 764907646 10129030 428267795 667793422 697471308 681946471 765888417 322883423 728530713 96803812 438856913 244755163 257353611 458195911 912188743 370271198 744933105 257405527 642574961 216729332 504750312 644757761 652507995 123727166 529261896 539372984 636323005 893923073 968691045 251646646 394524133 583548561 607139616 825020418 912566269 599993002 802424463 984917321 988723544 401401149 682669970 647868504 931363295 985993979 994365437 854505513 916004321 790386462 863625780 849727487 968191606 148346308 877516471 420511485 939289178 958844582 983340279 266548376 402419586 70392700 895894207 19017916 72429783 919302174 998114082 703100593 790255451 168190076 412810543 274802387 629470145 714958487 804479490 171647178 197823484 114643330 512404284 885460491 955784251 547605316 601282846 206871144 275534002 918782306 954304269 825777590 971643280 797750410 823939827 292718513 718985014 177966820 300338834 203905517 676655932 738055667 991976883 665642231 865042051 192921573 858318231 925765797 933669155 558260388 682877263 818715216 989398393 433661390 657016150 629279729 984385505 730872768 808127509 390312346 913521196 497359237 905484643 748028877 828669805 568827997 783352325 713908178 763671453 816051356 864570673 303109977 407430520 233659656 772338340 170510517 202563939 752102078 879463786 479887900 880359307 806720461 890119489 463349951 768700443 509737606 896753467 80464094 361362318 654650884 695376948 553378328 887777371 653201060 962524571 112654125 354919726 474770396 606155952 495268802 531507144 744847663 911540501 878815401 932686947 395937641 937853268 39522914 367762657 820654649 827817375 657887660 864985818 809616052 914328699 578391312 885055101 265922189 425030057 660079916 796837635 597397385 890601039 790242289 890640105 239557032 556674733 214095653 294091660 839103080 856828196 226602408 342604315 253321255 638160697 715435125 809461982 799107480 929017454 506089683 679995888 12953272 907153657 820568144 838581302 930369610 974272166 673360106 974406585 167272886 668621510 176779675 207020332 493878484 897757551 945101589 979884504 972067390 991800668 68536616 906139886 750599877 990991368 325622180 755069211 617005010 860322188 482824353 908453744 482461751 955077507 829223635 989363858 946124118 947201502 908684701 995194555 490495721 989690723 665671824 671039847 515937275 839477764 972317407 976237258 513783057 617265346 77133308 241577815 223188371 828994986 307558522 961272135 974843050 978279858 423679469 533931328 697736520 926412134 290787582 525238403 16158805 182354673 616757593 699744768 130491037 532591099 948551971 962686994 589700036 689563250 544333252 735227593 573932532 954922185 82877610 784827683 535593834 945029984 730113982 766749517 385076524 914958932 11942226 700126895 232655280 540157525 684909416 908699127 955946582 959500351 238377769 509689478 50796717 497733272 878506908 881756174 28322202 126425978 4649595 343079438 68073472 265850894 355506743 509521707 294427445 987947917 495170734 911271856 980032120 994726564 793342608 806252185 424842702 966877293 585461326 944767528 713346892 907399006 708704034 954560307 540014529 545554176 733348985 995033096 136530312 881298101 351675715 742269269 735273224 832557631 307432015 562300204 118728391 995909080 330117972 988315554 93596623 973164082 806625093 855576233 618041609 819533636 559362839 805897614 456853086 649958083 742060184 949928680 421480632 667945129 708251410 841327087 958874815 972353620 207367466 451968546 691140938 763700648 985757913 987685653 562520268 746614720 749346669 893098341 581542184 667997951 578519775 975887853 210261995 320577959 284799543 400041891 865562340 971782849 661598017 665269417 596233929 955058124 521657070 828978806 498669729 673277164 386382322 957650104 717270281 791336776 61491674 79724776 306587001 353214552 889781264 959080954 288280935 610774751 395803034 715394658 985111121 987669061 269452478 873465480 232798018 824504333 214590089 568547585 380633561 617498151 876747061 941468051 608713392 810803228 998196728 998541710 219188534 642436338 972819318 981544984 784024112 810797043 469553839 825295693 921777540 960900646 191894975 939520472 741325450 755557915 502984096 728382161 967328778 968012793 376904596 458835996 155655379 820062809 58793783 844623462 970039644 991885139 936063052 978136399 164088747 309813316 453182434 604688344 865901692 909360667 319296290 443709961 334396413 389230536 977532273 995466239 454501193 657661675 156028121 884793277 147302625 682410310 885450649 947994440 900091972 948275321 514281420 725088812 224046365 996802434 186785100 725103869 740580506 758883041 63982292 850795157 707097771 837727282 147712986 426113767 740731184 962552935 537062699 915852107 720764516 784990894 758307143 935228800 614629671 924352935 676095859 829091165 606879934 953403990 489820778 530497451 947453412 961395500 371105196 491695122 44518311 921477616 163098349 911973828 672259822 979634943 676244066 985237636 680967770 708336356 564837525 875589662 706614316 985267671 689415903 752624265 387561305 575602705 136163404 786942492 877290683 975969891 452573433 792091368 213595574 537968295 413458172 907884013 692846310 927376852 516673690 758040885 480265147 648302249 236690667 472700305 785068883 937614699 443618817 781304242 441406118 869966085 212519041 997670950 464732250 524623011 814452750 910819218 936394777 946685075 233383356 588270375 846547353 907686393 117029268 138107168 383220283 708636716 922279210 972233733 768762243 912133402 65758770 555778285 300665624 526702546 358110649 647013987 723571696 764967467 798475817 884205260 85281098 855211336 907685080 983103653 783392412 927479724 520766727 806912372 46895978 668571200 590127809 963945982 167151888 570735807 754599220 853772134 697639142 711279410 703401221 874782439 399784374 941842821 223907396 860759767 571134691 652017360 426118907 689431281 22211097 469584904 537061165 690095905 825603688 926621198 107202568 346826968 421949908 778971215 165166422 324716969 339844612 557986036 375525959 875626797 24164193 671142821 736755404 815360926 451430399 841580055 849724111 932657830 251841131 277898886 494820960 891185070 753027288 876626043 629496149 742890050 35200716 842309811 532130010 557777680 865521449 931072073 947073804 969290540 604736251 932158437 65158908 172539228 415477556 506072380 560056347 798334491 471467977 849909003 192836254 766761931 555822997 978397036 594732742 631241007 19793705 317702029 272738425 957622238 955942340 957197107 613252814 844283467 661896019 867739020 156393265 724251772 690987586 696836639 151785194 531900002 258191792 957071934 182234384 939793343 47043530 746320381 32982423 371241484 364543845 516915796 475308330 849339873 523108188 864589241 337787120 851156822 968794871 979478949 661865734 947823890 969988398 984431270 647972302 864474661 377723524 489317431 428831585 585687919 399081121 606225622 237580316 450026910 535106071 581543382 811587522 818447104 352939091 813757024 467365713 469506007 294306384 989238927 176111791 800255001 77121491 694062840 852096717 933236423 235433427 588865787 261779113 726352141 884801390 920473193 797714898 854572439 409520717 932047174 733473708 878134983 110140071 152211314 23619641 177895579 924150464 998726203 313778667 855049244 55059815 837108766 72699753 190938852 825511953 886841040 5316332 18207989 383681679 806768909 812381171 994751831 494471124 668955752 135558947 691681663 71164659 980698785 167382003 258054932 17535943 625447596 228493059 842858330 89928653 892557522 188103665 388219169 628202633 629561554 127833530 183555075 745533177 781540611 252983396 764024355 413992405 968079239 413440200 547835543 180505227 263971118 307879154 337674872 794953775 921174044 696703624 749532544 992762054 996391002 709334018 885763051 968445593 973934557 504498876 541651400 32116473 760662141 771994211 788982581 369325227 961192284 965080570 970726996 748654731 911357232 836691696 974347597 608729018 670236794 693818273 909822698 725728242 968834504 884304044 899381105 159664593 407543237 561867561 903162303 968249344 983503224 530928444 970061270 547262767 927048677 140847793 490566783 422757495 571442328 998096403 998411721 471422709 801738923 150642136 506754253 376921364 705607337 769475022 975808529 848637843 878862606 714787224 955041572 993424839 998785148 261886476 701810943 428283194 679456129 820906851 853674452 328984447 994046182 795652823 835256584 804369058 940981063 977352692 999266321 903633255 914087028 65437383 915512252 738030482 983236040 295894481 423628233 357547953 631525703 122514733 251672886 305690276 723070929 2824793 611338217 742983188 867085702 424484789 505139358 85700731 828108201 116049663 821648625 825811691 868429271 17200476 551672628 875760894 959858793 117358782 300115242 616229015 669701293 221118081 862614610 735572958 897864423 431275535 594089417 232037610 662588266 771187314 953663390 276258812 379696708 584476994 815529842 710528400 858281649 513198139 523833618 49078469 508355013 451463038 956448545 187701564 789431448 682456265 845468191 767026504 899055226 199897427 253871724 433945085 614714948 246206689 444658861 973241906 992063211 114125387 236653988 881977442 995523788 78378008 456538177 698287917 723249097 390941185 873425777 46949334 611180176 559421174 851211503 191593683 634045305 652527360 848374997 906281832 961880033 612208548 612520347 883681088 905974632 769448497 935554258 817702219 900770625 417587420 437099316 325374656 924319829 629109577 870484155 104472343 633512848 50823449 289894969 354982276 837963503 550757203 924320695 404152920 420839220 584360735 929759153 769989550 880268307 81662298 651068426 235910261 349344417 598821690 652669302 191259507 847113264 835289111 906133788 415854446 519557554 859712506 877348096 679214495 792552421 505349567 786125525 524860812 559889345 951522124 997331553 63609752 930504078 870948969 944906280 172352071 373694747 114821019 451036003 417689791 978861804 208727356 392176677 941321977 996761441 536619268 592318545 302315831 439264127 959215139 978691684 156462376 368406856 312836236 828028901 349739390 364462444 62737996 763812947 626222074 964821467 23185136 681315068 712432401 888456265 154772866 331217634 982722750 984941344 570715036 577637836 519879055 529067753 949627558 971710981 960356146 996168991 311067670 387467955 227406266 473367119 198244168 595939378 69230033 644041082 897254245 965578921 788215082 986000257 213441835 465168752 354223467 625477317 588174513 682474161 350207741 982367247 440171991 784868620 752460289 876944580 789422168 921372887 548345304 678213498 261529364 424247831 195755767 393054625 470021422 882034721 933757783 934626041 468659113 788208484 736915877 751280719 52266187 791700552 763625567 865015691 465721206 980605714 357546716 829927972 712307735 776852840 692928407 718522995 43669475 678800452 284473288 387499712 677812397 869240790 755623390 885278495 922102100 960460041 351207117 752199212 805913621 830415175 38774088 591552076 381129849 677873941 880119736 952591933 638006020 720644582 435388812 503168219 184434046 782905734 631912914 933494678 871707232 949298426 730197590 995052216 58368613 289740691 205823534 914087688 323667739 324801077 207956042 943373230 799925954 972991703 667063704 926629330 862335587 913735019 825442784 946197573 562419494 796866706 240170996 798916792 406904992 859983889 279703118 378126014 596965632 708299504 548627017 705416445 679280951 995155111 855841894 963731907 714833432 779339813 588705397 976224903 929656188 953001283 471120230 901049751 826005880 834977579 22643914 103436030 543131697 685772790 133872498 732265220 937776291 979861225 502915653 682903798 654110526 824325094 885356069 918316207 246559689 759890630 286826843 559258373 209775278 963631228 774773507 877669833 787833369 909872736 31428638 185144569 945528506 952110537 380000664 564801184 820996935 879806871 545117847 851313534 616438679 707222248 70384603 886201918 475043446 866820776 687953064 711076866 427154380 790876913 854466597 899115918 588828306 693685463 707469713 940874537 62640026 103376517 208290965 745353131 346240846 413935007 678752939 854476221 523757313 592933788 296057686 464828160 460054142 526398362 487799701 897723438 762093932 940343136 617136313 938567731 90333540 525697285 858370168 863540767 783398000 822507854 846066521 956573701 159977356 216675488 191268231 499964056 162758157 878751123 51384945 197214843 186680979 682441431 575082221 623720431 863358062 865068727 328370131 758264800 494607149 513517697 271100598 715857831 397093807 463535393 90135285 974631901 508158024 854450432 741190957 862453880 759690319 761899920 876285919 903806876 705350178 807487395 696348260 917221737 318101826 646964869 280388769 798612236 1973374 821175904 407370825 803442115 405530904 568928671 326673264 706802952 864289201 876079571 230947164 296080619 435568832 515610919 573424980 832994456 345609062 382241650 765851787 827532813 60759339 90187217 652670859 912888242 265829880 290314911 987462786 998327342 836094139 873606203 133906192 235976834 633784583 755467457 801438619 962587406 314433798 314948502 60019380 321571740 983157243 988085840 347556577 354934558 863473450 880934535 111412390 425626545 500018949 569663743 577842852 621325947 921444447 961044283 628395655 644299930 683703608 709186146 855226327 874395380 956048175 994476405 978922099 981018887 421812341 436692593 808724532 940220639 931445735 961821670 690763724 830805793 138407167 798222495 123810752 850335149 996072221 996453059 642026152 790218838 832722261 943028577 982534387 997145119 237881676 722478635 885343215 919279774 388391034 460987771 141116996 721364718 159534013 996159530 429442679 721490840 359594327 802833193 313803894 746146557 909294701 977100562 594477799 763408726 980022899 986411299 689389489 871146579 703784921 730238668 207902697 984027405 141588906 801137522 769122686 983023191 548915156 556810122 99855824 405342795 660988393 695599872 880252855 906012597 269523963 840039860 176489175 237582932 61178939 353216431 319380483 365011976 22360441 698903368 331877263 610057011 317344913 619379541 546092866 968922515 456546662 962851833 659676631 861950815 465599814 661868461 579835184 904775540 71139034 646840148 20248428 94555289 34216554 906671957 904113989 963788227 520237529 908012447 960830140 964176180 31002436 973467040 129798390 891010639 345026909 657380150 593994874 729588032 258261083 365558612 381672116 625532136 413067803 577031973 257287818 906546821 904302532 937241837 508526050 604702718 985057385 988454500 746177510 940783228 444772005 444830905 578115226 862068558 413876022 778703976 279521166 286736669 11697778 645676139 81136098 320476551 424803053 468939184 924770948 982155409 981783820 998092841 372702378 530489172 979695826 981109383 83627708 799344451 641537574 960439035 592369676 943300327 523736018 529885148 889976485 940131159 293202332 994902008 162147326 533005603 495320410 914762263 559111840 648358563 783940742 903647484 476881384 818373129 217757983 676209036 341832885 481293038 388246889 448609010 745998755 805961295 419427422 669800430 215395018 367254043 871693884 887338557 632256231 722381656 951746594 962846197 760406060 912355883 395287542 915117560 18635236 462467273 857948334 881463640 285042923 825203944 304944619 604838979 912773401 970640229 237869983 380322830 768471081 966569389 547372505 639328973 652643285 788238796 537990920 731144802 361905326 633134396 25782457 967412424 852988601 992603116 837058800 937625268 404822674 448112392 463353969 650881729 24393111 58599174 815487833 890658085 749690824 888889511 201221594 826832878 953990794 993026722 653753380 784509975 665391447 998490609 63226463 357689369 608359187 846007380 511525024 903016072 674638443 845938607 875397107 877067766 636550503 672092373 718753849 980337543 259286072 755522937 250834407 727075453 642970194 898363274 492087645 848449902 115011932 840249730 204373610 889733188 831559338 896012254 922692495 974721368 854669868 903882767 653358832 893416806 636229739 682416721 45899263 167840850 495782148 785775164 358475586 470562940 800386741 946162154 854080335 974608292 202675044 567929719 139274210 476076585 752983291 790429815 698432323 698926450 438726416 669212555 571529538 673770586 208478931 552401585 216320033 776019072 496994413 688886052 310259570 445454739 425313693 698324194 467603924 940754689 89747082 138482182 170531700 329452533 305786416 756956564 277541307 435748804 113529389 207102384 77519287 403726953 579789640 920236851 22088586 622748083 711190056 759087928 361533053 362036282 661644613 896356271 290669137 698609431 772426954 951611007 204842446 507448770 675721975 797198888 370035527 926260694 727578877 946885617 295461148 560083389 371252834 558333947 900940435 995801484 368870292 845964227 319998946 690294810 303482586 842196623 220705232 383410749 573812395 669378570 486025806 598324708 222762418 721444409 496151163 717679810 786919771 859360492 209106634 647857011 982623124 992882799 717456698 866473613 549807817 771926128 614344325 962828148 311228591 836126775 551682593 583521838 782611388 837929647 445403844 774263495 813897410 989471387 144723837 849683732 316701083 694234101 312604810 776102950 723439981 898534477 350150685 961225953 12329424 502700448 733777873 835258908 228481114 800291071 750400072 806498183 916292410 940469932 115996740 576583022 678242467 768811973 187756520 321869023 344446672 505402300 730027160 832083947 222189433 300885367 614123832 812841836 595327250 780980721 472577772 630650729 108856586 463963452 428540435 872847750 227059264 900665036 805907340 990422387 847309106 949738672 41416245 613099593 905709553 963966219 688130901 804813275 705235622 708914428 592490665 806870445 329309970 576767652 989308878 998637243 951725951 995436893 839152075 892336817 609662936 802231940 997654366 997909279 349977387 805368923 858560863 878175204 308649451 625666495 390149901 427584896 65999783 596632149 758516431 790572934 613071184 924923942 741013614 834585704 973525827 984424364 495387964 972385903 76658466 779516697 31245076 266202839 379046892 482147052 418891049 960828070 664787172 861724279 362112613 629976052 550648298 656583708 557129781 938542213 664760524 983542014 281465024 713019074 86585236 638414379 528756334 842169125 844706778 928441740 6253149 388669179 903307618 986941621 245961193 384357662 196912064 213056500 841817991 852091803 918486 304751061 699441119 803501615 134065420 160181841 909910970 926019986 888356365 991091156 830220268 868517511 885307121 935366952 680575140 992984236 946359515 981202148 105301622 797927821 976715728 990024150 856595002 886578584 719279236 749993428 772495985 948082717 271425131 393157779 650413763 677783528 525527476 756702092 867835328 989006865 237424588 647504488 311369723 668967556 471765448 599588842 500650998 857802942 735933076 942106775 466228329 859346096 468283759 955278370 431371025 504311721 864346252 865126071 727285527 902858809 998808821 999047721 997248902 998448607 135935102 892864671 452907376 855573523 669002246 969570125 518102021 640608189 725176045 729191335 246517148 874563439 451636234 765348295 319758084 987849272 277324173 423965897 579037036 779357588 496830649 942476816 901493438 986568560 890354497 997576996 308067932 681237362 939724403 943409034 284898291 846208039 89619062 311547696 273570211 919189438 19278184 890295809 916556811 924133370 797479490 884236934 720850503 933108884 376512907 823988470 788759149 957450131 837646301 889449205 779458696 786730603 551281183 637524797 909628459 951644367 435591749 990655783 212288228 450474931 828820014 901777544 780122185 856744903 371019309 901368848 417907523 822606288 231691720 304707581 821357644 969234412 309186198 648382951 362227367 903740253 168536935 633787715 251505300 598779392 3678467 585840646 201400636 206910847 165790323 448924235 765439597 825780718 764485915 813666227 670328002 723023048 28968233 719009275 477375536 911953240 423362927 721122397 394215006 570713537 430810912 759472430 92266968 272970833 201659422 395500595 77333586 161533519 508553293 554896770 139075739 315560210 573703400 873437400 660546620 971696624 938527917 941262314 648430954 659307359 345528303 793332537 251853711 290045313 874631002 995812783 267185894 790891227 534653802 671686573 663834549 705033857 73306974 571134912 728323249 895065471 511682037 847756708 677751444 824365788 712195851 852988093 993055567 993813234 482339436 544860415 529922609 659663035 917304940 943405771 865386793 992655047 748074195 810526002 301003005 888571425 141206985 387054537 380958972 584167886 575649325 850693053 298547731 936835791 68148148 586773343 198648313 291693396 667159561 795448099 571403244 967871751 690037082 728744757 951420775 971520265 106351715 602576831 74710603 897622941 59952508 763137205 831459516 853680678 797028342 909833360 417249892 929268082 685129323 762849166 450475160 563576308 362201168 830951404 38963508 366585892 747160895 793637112 804576274 900962945 786315254 950426830 593451050 644076899 107597831 392723811 11750174 197706149 656147940 958104175 125133979 766521512 467728322 866332329 654131228 921624389 373450605 917155690 338719211 613200670 881412211 952087682 355399213 397145510 233196896 826825644 127321862 638347112 601592672 718110276 250844423 561346827 20306236 771145300 115256151 449557985 391625302 798245509 698689589 946786712 22428855 167138620 695570519 890731499 979116527 992279249 174577025 508112200 553644596 880583646 184590002 671890740 835361710 874435670 755386712 965083663 620476481 972372119 712817985 906120139 327625724 513948346 595844712 882454192 1078827 726066345 165056334 814592177 908375252 984311063 660603914 912137348 793347819 871007373 395749118 987218479 485921208 701374833 103098361 667717531 402113524 586570196 920987242 984741975 106251792 560107422 552289216 978544202 144360739 853846035 453516995 650430200 412369522 749409127 442653065 949884860 677028644 702331420 710594899 715744285 916661608 970362845 494222761 965744291 513639687 740268385 125435494 594761813 245958577 402201248 382140279 661176104 764372998 837033475 788031371 982455680 18618319 763803170 129862852 430682792 636983678 944806282 650124067 776544315 668664051 820774043 288639715 451688653 290905597 824720487 488977648 690617167 429528561 592452983 930970376 983549522 942920182 997971853 401156353 598494662 323521406 809518991 157222975 875430431 957971313 976167445 986263664 996190128 750758365 926132367 79936049 604577194 906592252 984073322 780959002 915489365 814919697 892689317 182684298 654340033 205554719 913772460 279225253 837005009 637297619 928669121 68760230 612913667 56600765 151982190 883792141 977305267 699419359 941896802 522791577 715649163 808188508 997613444 495062387 559314055 214932368 758699289 944699371 968100070 92423089 587737495 219972381 453058166 723414231 807574417 722222181 792004201 389795637 418682742 741340409 945353758 740207417 909134852 770998374 784271259 903331139 971717732 494434962 593190653 915965074 977917399 425041068 952073245 294281668 804354418 846369607 847733655 609738774 663550558 170775983 669228591 612739978 823303335 659226768 859790788 448353261 695181360 866192083 929488668 839159362 899409568 997186788 997995545 640438780 990337892 374259701 775806832 899947220 980657481 234217837 970477163 664320172 686793791 373859286 781101335 248132344 649029856 322644871 430571420 262306190 890624576 84603533 669142054 40483174 898248004 555402506 745294533 936203906 945396425 670486882 698199854 614799767 703572999 728638297 993556866 107958270 935656287 111545 132461337 531165351 972464981 865160120 993281876 580774296 611303912 604478388 706488707 484263138 866803496 641272621 757205038 186609091 821978713 757772669 936079088 864259138 938050901 547084264 836085579 338019279 860964220 262348573 838714290 538666767 767677581 695186259 953076653 566749819 804304572 572157752 842190067 839247127 949404761 804408106 970335279 556497955 561675314 279158630 730444807 138047954 202247330 444261668 551653651 470830949 690873479 550085324 876845677 175193297 754292598 639396886 936590740 419565061 519625963 574119248 807549292 9200020 651982218 737729897 839648684 946455277 978991331 510705966 747452057 785221444 865192727 320099356 380089076 826848238 935488285 964626003 980592205 126979711 765690507 657508031 909649236 723618006 953716405 978917385 985861376 811509560 851898221 245531487 447416270 336006754 371702130 954345838 967652940 669707112 840977915 177784850 490155093 458946307 494896190 52205447 525053366 879753869 880938558 850304258 978874601 285892987 828055983 394676507 519934876 477107036 541170517 874384167 979646494 683373249 831870585 874107317 985005151 345084713 722866876 359835049 526308580 524180453 653541481 830301912 870934829 929104335 959412195 955627560 988020518 539637708 815494409 877692752 955450560 356917063 714247225 885934459 921835582 131289857 939897702 918967770 975457785 652774687 763867656 625518104 692730412 309909777 342171540 928148673 983625655 380913796 629901191 839307669 875997624 545607305 866007318 320857283 434845613 104196375 635856593 461282591 477444068 808711205 890997538 948916221 980227924 220306445 812422718 713412710 757823086 153413058 591717094 533254255 573774920 688697343 952429772 263555835 326182688 363774512 683403248 843680080 993318050 557300669 962837645 677850341 991813767 459353318 923958660 583721806 892976904 283601198 584991943 723412107 885513063 980770799 984712657 587974607 857412827 759507312 761338506 259522059 460663908 89415443 196286141 26574524 922464441 122794291 691848827 788879578 986710161 371910176 898261527 150420042 443889765 898183592 948126001 2640615 112845750 345305653 942802961 26829881 559819645 937124465 964825505 304913295 312301111 109853972 525310724 481611245 535339201 927140298 948266606 279424872 650275938 218221545 416780243 250387452 450331898 175493683 861839001 242357603 974176597 659922361 751681885 77559581 814140563 464316994 779777984 326470552 771408612 189991633 219156239 953352249 973565635 494911396 963862939 909524116 947578123 57002769 480601622 625723920 739940026 350694584 907705084 493619975 582780942 166525436 721549838 607215287 762943080 42934427 879784372 505264966 952912751 44916231 715281511 619069614 769081341 720730636 801490023 982987794 995652222 316743249 352426046 973379239 982760326 459901021 895215342 145862120 187210804 955705669 983733110 202933706 492475966 50238982 654772382 677971574 994556795 619944697 978553128 291194273 974283583 61658454 993348704 985779263 994740526 671253631 707950566 437961528 574514797 553822817 831495829 975676603 979661066 715067664 954181491 159163080 696714127 784671103 967806220 24043128 261681197 142327781 159415348 473446995 763866301 638635299 845394433 887225993 918548964 511834799 583968508 839939093 890855786 302666910 434266176 167380716 320606478 820904933 900697843 84393895 516027421 305409343 848806392 212962433 790404155 429797253 642394391 170276716 861734079 664646764 851409993 235434816 648421288 589206590 845056787 342338087 937159727 573660743 764406621 361248702 556500753 45318775 987612590 835166505 928394433 266718977 973983350 674640736 997719907 769673749 974225711 17695312 624298884 91927767 231273197 731543317 986083242 742098926 866145409 421113804 896077582 858206165 945172139 615623684 821819988 802192049 916665804 132092753 946088017 673753444 795964368 54879348 80724602 956961018 972472769 455536125 641691641 631831253 872476231 718702495 750113919 645141524 923407747 629842036 941453110 811903576 964428190 256377941 914869295 411198162 750591215 714058943 822393907 845059158 971441869 22641991 637838580 257286642 515162789 302118499 433026585 108537186 917185001 703155380 919212573 423988753 860975855 319854632 416833384 821001726 988803228 997026057 997303802 567475009 725786654 562386364 652230064 172873978 745152529 597025989 790108381 982089904 991463730 708083215 904530847 859648546 897593755 352546937 390236268 988851317 997715547 899701241 913019833 292324763 843149469 402840274 774750411 60834145 453860487 590559776 632849620 890071715 931637386 481285077 911384650 475906123 800097391 772897577 937480956 712576206 971014428 432626477 683548984 151288807 745640344 700560459 714346599 663013179 990901886 367120643 512398537 510089589 675797554 390564486 779114428 712115437 974682075 307455307 801045969 537058837 597313815 735187877 748002546 751317256 880541856 111832205 846944282 610739000 648995068 897548855 975338071 192542005 746950445 124849432 789125217 632474530 695919449 476593331 881745091 360394012 775684340 403542034 780711260 483385206 664456055 140760091 862237213 505240802 812389979 353219925 559143505 105376838 661000953 145391415 955767368 539960342 855753297 92469006 341236954 240249097 765274148 660721531 899647193 267782514 388972976 923634487 940123408 992245768 994431217 32251879 561368494 503542963 644426000 726021453 800036657 57156763 834438222 213985462 483889817 809855783 859958759 618466616 795143413 591164092 907585012 373744408 698502445 40042057 268985863 779000298 898231835 444169965 985949490 228362042 350868392 214352284 914552584 70669522 628634144 244756270 270379513 240689345 602001482 219890774 855813685 349016986 773433202 865201163 905539741 870846767 997029501 688395471 944618907 707431681 936765662 941434391 942188728 792575450 929689529 835607898 868316143 225909609 375505396 631309156 770922983 694819716 884828599 177515927 758114675 854496476 918505279 754132473 760676129 536980246 627381235 663766432 707398717 707324648 707545551 557279636 629156721 449649445 982031641 279003598 526452509 426932783 674903497 461482153 924243390 222290392 599567106 954258112 971345929 107364082 265281802 744367944 998284539 970066252 986070612 893329272 920711199 521718621 981828410 347827018 733851170 284168875 571783604 960847693 966779112 526174300 842804823 77441624 845609358 459294413 693038162 4859009 439469516 636033373 838981335 718832803 975360625 20359870 229123648 54104945 530406978 371865684 763680312 362830563 389351590 139710631 205638544 690804312 783249065 3126861 519376997 99399592 480839110 335559372 410792770 700735240 829908709 894526791 997151888 82256118 677140890 768592502 997626822 413409108 937231336 840673345 995443339 733736734 912378905 953667904 974722868 715008877 749636682 549204906 578110564 318967854 626318312 953689284 988016062 957148061 991761541 172647999 482779913 178043013 198633128 434337305 453870128 910962119 979028067 783488951 797192677 68668354 229496811 80054638 270830549 841953121 883303369 246297734 981164141 501872925 852371730 101874694 653146081 800548695 908958908 225853400 953329014 442182823 981135740 337525701 649365251 391485512 469388537 764119463 894347590 594952815 933236627 96863180 537513303 880354177 907520554 720329319 752727531 733436718 841472758 370420407 895145028 920203834 933344650 840796831 927961655 632324137 668874982 876710270 877489384 78895127 527422197 695514868 801015588 308316467 316483404 147851263 996966689 433623840 838200928 300511577 739800477 36960532 892794283 782894988 990371792 785260793 845528420 978019243 980022098 645889902 977010943 836836120 889013419 636173503 735129778 269578630 466460455 786046405 819257877 166546151 197985650 886105434 900186338 808485275 942280441 433850042 962116239 837455893 993184623 782525061 807724936 346480041 846726325 747706460 892683966 109964301 373860316 525318602 821138526 219822247 905723912 366244319 975672041 854528981 999054790 370992786 465223518 29242771 131831130 903921716 940193027 260250124 405387107 414917982 506073405 138352029 584443399 434089148 719723214 591239846 698750312 709712058 794432616 886893030 955926002 732968168 901120897 23495281 25227522 473259526 780016879 871211346 985904802 602558176 972607800 715904408 754050557 93290331 423881889 315861727 683988515 10331293 887612877 6790733 33459993 867927039 944215683 711720480 773492148 876668710 988937537 844224300 912679926 39557331 132349770 281804723 491888186 438550021 618698471 617719938 760559667 24535277 851747980 570799827 991069084 912461720 919217945 391417424 471368459 133110559 416307003 110889946 548031614 243164561 726219127 491150291 510950039 148859579 305555927 919716072 930014409 142821563 414845431 710293782 873483657 907574032 922704789 794741460 915790869 104905372 773635071 688771439 759814638 900810 904440532 18696931 426072408 388811252 749043712 859690948 935546615 727907223 794134085 132899385 444537895 978740860 997189799 666599305 810112039 457152161 568694763 99080990 759457781 348324227 622746254 694702522 830811837 981143447 991380889 674559509 706629441 173510015 765082520 494295003 588368811 634184901 791407247 971289974 975696090 279660333 975012374 242568961 867018522 649318643 862111621 105122238 708200943 560156725 631250559 824063305 837726109 416941728 480974467 475992822 805356024 304664195 822462192 833825697 981214458 13576984 818187248 442140180 700730151 747199431 921627579 361373992 760528727 320621232 911085112 883536526 933123692 16477380 319993593 463789599 979291965 554089572 994845356 618091349 654665892 219539791 847057296 288720039 739855015 39200302 777284189 419294777 895363028 978867296 996188392 472728139 721160655 166848052 731253948 140065634 782566304 779817514 961025864 944661206 976533684 969550131 990701309 522912150 711763212 107514567 364875870 847521062 922147246 113318706 571793735 3953067 468126953 557083577 975754799 491218111 913624309 320498406 993677191 359384384 884782886 775111039 924432335 631664378 886684525 648517651 933073722 83939425 393544775 985175580 985777357 642722240 842388750 686179695 995238732 164185670 868385566 201743439 790371798 938482984 965616466 662603388 922195456 417114991 897515329 195529680 871215606 14144187 516784760 493785944 810593589 255320543 691724036 750293306 971803886 313785738 656994486 614386664 830290486 471433442 850273285 905626997 931982001 111557517 759569245 781640792 892850903 865742299 980304147 696492362 967248784 905735686 953157984 424127204 789665188 65029105 498842752 286841409 604434478 774618085 888814665 701144380 813115038 530745780 679304885 669480008 850008311 300396847 890817959 348372815 692401403 13319152 31535761 718526873 991191080 476164043 842411164 287582025 945249464 718280259 929660649 583816027 881339733 128870477 674151474 459103696 566914404 672848685 787536567 31949055 163430470 652413868 770584378 461770502 572536178 812375396 852374600 359018195 462259157 80799706 543196505 772630288 843827128 802372975 820926513 233211382 653149074 899269038 963120217 685330736 807375871 649312386 796081904 235193859 573177942 612805019 749882681 454201657 517059390 397681190 661509204 690827907 984597343 761792182 795949464 958154579 997094651 12331224 388368253 415134283 715941502 35738883 121183727 276076786 763745434 198550251 242414059 581621645 807375652 141793042 759501578 755570741 783532718 375642664 751764319 139990676 590730787 840980614 897434156 55264538 193845364 208920420 222974474 177041682 704717307 982277273 982437247 743395875 850752994 416893103 936677134 938832322 989236570 690080198 899038197 354919679 857252061 446465425 877629376 180959081 394531351 801862633 822557531 478170926 601056621 602934474 853072822 544320095 927894923 463092174 560671895 796369406 933907475 362703263 918721282 649163281 681027154 904392111 935310105 61718888 566092784 872118962 918441291 92858134 328873738 931690428 932000678 816862082 878428638 531987009 753646357 38630361 63193676 113132894 143710000 938233662 972145384 496505186 930014430 72509164 418520200 321647696 645756566 343285877 573295093 729992355 953960364 110932899 218172875 26926453 765189858 614724535 868135292 728980689 808745247 770359506 816374643 190734645 465541509 948386599 950703168 430319629 560555887 897162034 950489653 439804139 445180520 95934488 151239910 724290582 893773054 580164790 815631281 892493879 989915697 789561001 998846693 177979236 452757102 480889971 945621250 765365199 880446993 466730094 483540000 703592262 742198346 902356802 959258185 461918169 735471786 380398749 617579895 341717321 482588528 321872027 422142103 241514279 610888698 348529434 500045200 994053557 997877028 767710080 815694681 987502765 989782424 898681480 949532817 224834538 370547571 862258812 948718817 812475498 888962880 670193627 960170294 350986135 983751052 974581559 976482391 876334471 951218762 772782307 784334043 911544836 967801817 58794990 659480871 266322982 614712958 530606252 636673776 469790324 473336503 86447989 830459654 581380045 946226821 684662000 746846687 13772024 940163748 297725854 352490167 149372669 260218298 178877549 431718131 652095739 679281225 227715248 254084958 257279715 469463640 834756415 886740392 383019485 767228173 558164478 616784135 609989392 983142822 458034471 943805769 842640851 907956518 196855001 774763799 353090677 459051065 979812002 980849863 281612228 588460622 483677727 922481280 405366904 800988571 892257829 963377464 641079589 869052872 313700691 987913616 765107000 882240984 548654585 704098673 939957307 978286242 923501413 967008962 267683214 547632914 64496758 789558949 249216858 306724989 821688484 969314689 753340218 982449876 494576301 870799632 341943307 729098135 152429646 792334444 749662971 761118215 984519048 994116434 930523056 956249820 55029028 391825012 348736738 776001429 526427323 869557570 217442106 885517387 643480753 724550632 765634457 800667567 656560312 982490508 11211623 815411854 71070682 704731807 288440401 642049691 65435655 393377837 14675724 32798587 946330997 968033175 75826449 286500133 472301140 525392185 559529552 976023638 365481936 493476015 525036180 535135397 56418949 577068515 824989006 994038019 624409585 628518643 664896056 792861331 2221059 204168267 539270560 556847872 752468821 841630701 536067551 588600215 309044789 829833992 137368697 623140335 365408538 922680207 924266301 966513824 492157764 569033638 139712394 851086427 777226693 823675096 855742412 965012351 389343156 710256723 337784948 480423306 400351056 454810494 837419114 902034164 993810128 996690599 388064442 827053297 770989983 875433962 312467386 407438211 256134440 621976163 716123152 790110280 296528955 341282647 895314803 896526993 512745868 974244119 712458096 966907389 404795415 448855746 841104576 843152595 424011750 935551317 417624370 548003330 210263650 733254372 960387985 996814798 95425768 604890036 260413486 396656846 940127318 974652568 249867630 832341562 943956363 989440840 447870011 746463646 65676741 286744696 855038544 903116059 920219406 921741396 139148416 527738340 458317243 949214959 96416076 929865745 962376149 973987868 118964112 288821743 449849638 891941982 58273385 739550734 4382988 686518759 73880165 920282029 815262658 930262199 977555939 998637425 805024717 916089314 382096590 867811945 407792597 428826540 331106447 701645193 305179472 454043723 385577561 878489270 833152897 940622522 83074149 867608649 718756025 905305356 261413961 940717921 150796803 240195206 36597189 924123453 148690629 462914838 627414148 801860934 686875108 972946733 965427428 995609777 162982045 936010682 87066024 129618893 70437314 894435774 78520214 357539500 784663405 848467267 399995452 957517315 60336139 344683680 988616827 993321333 4241737 738465655 228468751 236870106 821993270 945138442 222354359 965739077 355203053 359785937 189111152 546167373 495830589 745376454 231572775 625175678 922480353 927449559 513807669 679206139 757893653 841936135 168965689 299910226 852224989 930108841 515917958 579873074 247287120 955431386 970296957 977176675 665582056 953314448 77307246 369642108 244619301 252029229 671675101 947710056 692865507 931430966 869838499 932387223 796376447 911918914 779646280 898974137 414755448 555459608 801054847 916998817 409410500 958447374 486746138 494125228 372674826 936066471 264356963 344288892 289504057 852858192 207345831 872627422 240714553 336682655 120605288 908477246 212393526 809050778 944233621 994551588 689358524 953662639 237676109 944604230 714125067 967330848 862290884 905707527 181927785 832123520 820484299 947521310 378782442 959569276 580276546 718993535 394700664 469451198 383939269 480091855 150516873 663079126 25245279 793827970 967392523 977168488 306850998 555992499 144501780 670758686 809325253 911816951 304353562 307550194 565743191 948794382 615456715 916835076 738092248 869732850 893702734 923244084 7283770 717048320 927670977 929993938 360967408 544327777 30560289 314257951 664145273 940409776 791002356 799616655 617925278 954483939 681486331 700799649 308116806 716304904 92835508 966668178 946861797 991798168 452486211 915496802 974692847 983721278 551624023 917490138 530131766 661352335 918097803 943217865 658591578 693726266 298239278 583035778 498296031 819387856 943786212 990037522 973380415 981832652 157582024 868357352 41448475 725396298 204826906 567625103 394391478 818661229 182264345 414217897 425091002 890730899 965533601 966816285 383610856 755869609 623581908 730830098 313463894 794939363 474253498 847836539 846139833 907760231 732059260 942232021 954373813 980408483 63956161 192712127 538164917 633520704 918582224 989264689 669971975 932398684 973146619 978795216 632395886 792956719 888277055 898642262 134480674 585923721 752085656 881473909 520287361 613425809 540058251 831988137 477382646 819072593 166076874 193594865 819533468 856529735 863086829 985094086 411843360 875883671 893758147 964146490 446189381 786372522 730432192 873582163 818145037 818830981 207800308 585252270 456379680 858260635 401621127 591230718 456822085 649755203 537235943 934774456 510904843 994748529 4244547 617870664 307159176 498205458 247539743 941537807 314979890 845704591 172848551 277368200 949151423 960401636 500685332 847825003 712792472 943703160 342960891 662087074 692263951 863879154 334797751 651694624 547318504 578629432 395768704 904464002 978693681 995383229 823917993 915868848 738389521 997427690 194418820 623469719 769952704 953116639 14745772 666993558 223852320 890223524 911050611 917586248 487152534 513355670 956654340 989698325 409440286 976908790 512333128 715956121 15477510 745275031 26044655 424063959 972064735 986190223 770011206 881558293 500992684 883066334 215489690 311539695 173121191 411078559 512699506 909312556 450220385 451151242 682946386 987477181 803525846 809143734 111216929 233170830 65201350 328904425 16009957 803846963 321698110 980810673 260268507 871732223 574804334 748682270 899370230 936459183 299712713 585717394 123277488 541355659 854850499 959336649 810656723 878725126 371329881 855421985 316817381 687760132 105510164 713732000 878874055 935028585 234606026 298140048 333608291 818749954 317792270 507686212 32436154 728031791 189891128 513977349 580937689 902262493 392529015 997469433 675914837 702891458 354266594 962404716 315876651 642802819 765954085 975536692 294593473 514435058 832763354 895063900 760425338 969613630 247391498 717415034 985982882 998981046 755262113 834993074 598182210 777375426 356094435 647070372 565221982 814218395 475215674 968810992 243074728 682063785 749236423 961819130 641404111 903243851 202558063 687914298 962485702 991425861 571898477 822535773 117804544 495180232 527644988 865243654 563410093 672454478 857775537 916104007 381156840 421050412 215246946 440529084 262636409 741130956 993450428 998525292 305505014 477415573 177403267 893726755 789371917 877283186 574533576 734880324 79664336 162660852 794867435 894808590 655481288 979120844 35396778 753270912 329469696 869942968 203340646 342525023 56068581 876316273 54035187 69148432 645018299 910906809 523715523 805191561 49985368 592145698 403367785 611052657 426478990 626518779 631811709 869512547 774740974 843754899 636950001 692206655 44024249 165396808 929663097 977068894 773066195 843866262 230899620 708004620 904944542 952093724 615692899 834973681 810449496 975352215 556700373 818104114 697774047 928456201 212772384 668244722 181806200 687124173 311721265 720719228 866572384 963933531 975091407 989105897 14144396 579527727 331871734 907202436 138997491 473748603 65301512 416416998 762634859 929783224 421679107 972509054 965432479 978039136 348482852 945105428 713589775 984856736 958276915 980284095 920134489 998192546 308199500 936201288 527309277 603861790 456489685 497406260 602812958 856440792 723922633 736034123 340906349 567698050 497068185 687231246 140390976 207656716 379723215 873836046 623735315 733369034 16879493 969521457 430526480 851086327 878758380 992531088 183438561 881725712 481953969 624459669 530421124 761346296 659862004 679910371 276838493 642626624 401442148 882025306 915135267 915545610 257496556 537604925 832365459 909411181 271898416 505715369 848246709 862739640 693501080 817749200 12254608 172874368 920213821 941277594 552206197 799923625 76539683 506192687 939931050 990256237 343597361 611759466 530987499 728356841 600212494 875748645 103468575 684566844 871190668 955044202 121061247 466622487 301720328 941718913 175903750 861674439 497512277 940095503 982502347 998375878 400137042 910569356 59358629 775147235 283602587 976400191 173055713 857682781 917293347 928745715 968273118 993823614 462377450 630096764 329213501 967852089 24322664 874384665 64593739 321801066 357981135 560934046 429628558 492374618 29563133 639058842 460021611 973296055 320326785 991612839 835377949 886947227 466319013 940078107 28361875 744029792 343041502 370863553 471511193 873010692 501186193 745193927 383188242 792145692 277422805 883672558 120511391 378603569 432075676 613940447 860795178 963183352 359090291 731959086 541280132 589549445 238049026 674799923 605004939 838588561 965029486 981234894 420236284 839173764 814222795 931211105 985760220 993860121 379664916 989097624 122184668 529313789 785476456 905280620 943142964 957343352 20562240 414104300 846939766 998594915 785011301 798532489 817586002 991133136 338159290 363064348 910917542 949106218 47283248 451828603 169450468 996811921 700859411 918048033 291272575 413701532 88216649 977764061 917393822 964398047 761868651 899852553 345571052 986908027 908823002 909273238 53870781 233511131 399076168 712240139 714110413 812306663 910457230 976580677 394201937 527383816 442697835 884550143 444663214 667126263 147320880 460017680 358927867 856288612 445157829 472812783 67577421 469269829 875585882 946084234 696328252 980300389 242845649 794723615 355189449 750319051 816175801 875221445 39542742 511527929 686275336 817318220 674411289 878100905 790492736 820863332 605185513 693135552 488209503 804578263 991404214 996028219 78992463 833415462 370617156 678748844 177506553 443718579 174876336 480459434 361039277 914277146 812177693 997797407 29872839 66270154 861854627 876047329 155586457 470079683 255238892 743909009 105362159 431203537 578110381 591836280 280531215 490753559 341762963 966373963 508365062 889358932 344932019 668322882 281934514 823869941 480281507 584099974 428658635 626754042 917176992 989105278 637691796 796542354 216695692 954625974 962734823 992370562 941365734 974744637 985876412 986428835 188395893 442837547 983107585 999034122 207832699 818680806 715185083 732424826 333220173 812454991 636587844 730229100 915827914 954054657 642285702 728302186 89866609 173597115 916589550 956320998 757802014 851936228 235693656 378647247 575800740 779804563 148218223 791517303 650344620 967406365 630262236 764663098 20774733 346632091 476183689 742539921 325108489 618446916 266303907 417489260 60133907 226447620 76871301 455124902 50510870 507215657 876725077 945626481 851062728 971162370 355557907 586148606 64893829 747526871 730391747 871844422 635312692 639004929 890836154 891625372 62348438 256840213 272398104 481674798 278782350 668276233 719986059 930429730 627085628 906148691 104839569 888479810 939234170 960083629 990465343 997107378 468851990 520198789 250520798 653681211 462946910 884709470 976061518 994114115 417140732 558819536 911817568 994644906 559027801 997548106 510908250 697826707 684672207 944072820 399239246 899531513 137842500 259206426 331446956 899286973 625668548 680957291 621550432 910492813 159510045 165505814 745356419 850126319 417796490 645427527 544123737 639752204 321319929 966709186 468479715 552562834 240440042 989085350 786078683 877970515 798068020 894652210 48806390 870797183 846506189 966397740 632466320 949436134 779922135 871841783 269451828 516836248 899707150 915767734 538972322 833571252 308405176 696576087 1092902 620079612 183235144 397639389 196554384 738605132 419850530 580003386 22259248 547916323 430955426 511344172 688960880 899241023 711480414 887897118 953508184 979068586 439286461 942531071 125812734 606506113 684986956 933815382 813305229 964244996 178071050 205147231 867619941 984099368 447898687 745072436 230359230 528053988 54603535 841414271 283492285 346275187 212238638 843664512 308085545 618811271 84446446 717160019 147624039 384439832 547004587 899043267 277944930 561807436 706018170 931724441 305209690 974360118 679466352 708993662 759449508 827720550 43009773 215670664 834164059 934428498 725639759 806702515 563280997 911900157 527063306 859446593 724224945 978176416 918879913 937240534 55297154 410211322 129528209 305111776 383433716 769646187 265101901 700663554 350249872 369722582 299869395 526073660 112921470 373874142 132253875 926797867 524038683 982215416 816309730 997266540 112263959 772140339 958945212 962931261 959942386 991090747 441481748 678080635 896369009 932908713 920471064 990068356 725298502 918094116 39387241 339008107 937943914 997891127 473302881 552844609 320500510 718455641 902887394 942631631 160472169 958952661 558352195 639208153 145863104 152587296 236952980 633355598 75695759 826221345 873130812 900323431 177432617 616055572 931345046 931997088 693620989 719089728 509535487 942606839 120582054 793394005 952719824 994706845 124381848 483125706 294188546 497769974 759934405 893105897 145896046 336306729 685508206 850273284 64274388 819082625 496368968 730850958 754934640 933195161 279580755 714275378 370520005 744185624 268702104 819838284 614043376 930757252 877083628 958626931 153274329 777140227 937374536 965781299 178381853 460222548 857779981 874337531 790847973 818441737 954758998 999347219 537512924 545145121 754282289 984797351 662163911 701955731 133984932 162911483 155964111 357757248 879655319 910617648 611024015 901137662 519165962 774702173 417445160 456378421 377907938 554978004 468298833 881885043 672521879 737556149 409831235 752722138 509084448 738717496 653967708 665499690 141790565 321747823 579817076 873900773 725062398 987119385 157128246 977161654 18441594 687298577 805541175 886711027 363724347 401815400 779045465 894826789 901353902 996325775 374323043 934909589 699495902 771325813 952118730 967476745 375649615 979761316 967838255 996487936 95208642 748242883 691751352 984141535 664459266 910363758 748937934 961752577 12699493 904208600 596681682 738597899 31908937 258698462 573610202 927951329 391682388 492130442 153071308 287087670 289324993 756134110 714870944 857292755 580783774 934406713 970627943 994327218 884476415 966242819 791115535 815779876 141250026 569317242 749381650 942135818 750869106 856880747 319662110 490127170 127899892 890289409 425265469 953489723 345606525 518836163 318229946 392232124 64871721 643831779 543556157 866672879 709976833 893817529 681681032 789248139 168179831 603912137 336971253 814984362 633237590 945767709 591040837 714412708 589544592 614974981 209693049 491246475 983487999 985697138 298144161 741087422 321379246 894373256 996233745 999348039 189182648 700931805 365203311 434463028 712571844 752208918 736700991 920824031 901228116 910509361 633565139 977275836 74929133 182859446 105297131 912123611 209033689 397328704 629454482 710179281 986473161 994325899 498971869 955726838 40116113 288273221 406210245 429567196 798656435 951173618 48739821 284126522 424899294 502193852 284984912 964928991 659424876 940592325 343368691 532889728 937940062 989963109 788135139 923870860 730789691 900218984 732435467 946643863 137899058 655662656 346969557 673468196 309212130 919421352 832875666 895448864 537530580 552709510 738161328 939996542 170010364 996274898 529352434 813367637 830886441 965006085 642231901 908971959 969633564 992251916 419177861 834469118 527251550 695002762 868563877 977172681 288070608 480930179 64895693 636575430 838608043 892940127 141751903 474603395 311289716 358209426 424809868 552679811 384372633 463634523 798855577 846624322 552924677 776846663 22787377 849764377 222881067 304341040 373606752 914873473 859927419 923174638 650495831 964295557 628905790 980211812 732121782 843103428 878778599 915060777 976655954 984075636 863489480 975753059 793018203 823388492 924864821 958748859 624925577 777286104 753585297 907425443 173718069 329520744 94272644 955262451 940585491 996187995 485670134 534925018 421440437 649306085 532417948 773467741 530447693 675760599 748756505 877176822 115989462 171776373 417994819 921374576 498003670 646951796 397358638 550894315 234441626 389249898 843439786 949649796 250906170 406678029 530636521 906274096 614684252 948377410 475903586 907987608 511655309 579109637 48883759 791017566 330565961 570903097 458849936 947842103 635580738 732755979 963086170 964172670 605763433 993043518 774017698 908480719 39586916 709922650 368982669 539308818 338589968 915747528 501390003 709723549 846923896 892040627 72036375 455979633 155808009 270389126 86455165 938480116 768025780 921168116 795850320 941297920 517162739 722560400 880450843 921966626 698259279 938369333 422253008 758975258 269862484 646237629 487899878 750352202 878360503 958347432 604300137 664399706 598579198 993835545 21136678 772469313 566145940 619902562 265594079 861733207 611137200 929782021 188544393 427135155 145793608 170259220 363141613 370433231 667134389 780350162 766687603 833408938 22070942 639544255 139681592 518901894 570483849 924339981 762664917 772599151 550330773 841725769 828301360 953487000 890118145 891294062 567577315 960916388 542891945 891466978 778481788 900163367 619099630 855505735 158917935 852296968 239715227 681783787 776317790 895149305 642788387 780363680 541096588 646262679 229238943 459477182 913323124 955582708 750986338 981751952 216959260 833668438 866311655 971446663 354268948 453257972 95066487 555106026 932554380 969079940 7406675 748584047 591946807 900163667 835260793 880196990 573307055 904687567 92449627 103153818 39587302 471481940 489577648 763094815 122737865 456446045 956998170 998504773 568444480 734611483 748390352 986996464 426030429 469355001 412421752 747759208 104622389 735356369 414880787 740583978 788535901 907374768 267685512 301888048 165921509 191159105 945131827 980516563 173139623 208691582 407841514 667288985 661134212 820660053 117264432 972966527 292193577 743775517 847857809 966346605 361665865 784137508 502871982 690061348 791170885 946184682 364185531 655719888 205973666 447953788 154403865 159640206 9035872 123479224 306960746 870125813 916255443 984298035 374589478 757670160 479120137 640718634 157213399 300278463 490061793 495258403 490435984 631937986 555301244 911423217 270200303 300579977 809441874 857463749 992921803 998477763 910402023 961385716 383879602 404468484 709656196 960686301 172699218 455125624 108651913 960527519 14149272 266774572 126081203 569034354 375042427 729752193 797909999 918372142 788611392 996727619 922514029 954045939 687049007 808814395 207901971 213600167 548628422 830112276 760872182 971258820 187948327 354994385 236145521 312616589 906701042 912326624 618089766 981090076 141445783 840511824 200313476 600393819 990338080 999170877 227479871 688460592 363040757 794733730 222896824 705248162 995195637 998893848 624945030 917208038 73056830 272619548 259592985 265790903 220487971 303569058 13820602 371154351 761975758 943439265 539549015 733016706 866214446 888689842 435663220 654021097 594162697 883448222 195210373 258316147 988294858 991743995 805075210 820285460 219718521 501636548 43589096 991181994 17375127 626207356 285653396 833745354 426536424 871374025 715536705 869159863 338680564 980713689 769236758 965623927 763651819 863577352 419090700 544466699 955575426 970036095 379217880 441657252 94621149 865789043 967746177 977810839 253616498 608911043 403259399 690428360 82656559 731370731 355153771 517691453 902117101 940048563 968607193 992955522 877811178 916402931 112926509 441469803 176609134 915820055 736612576 961699890 312277940 922189609 369591381 719096845 707590563 799676373 440688696 603465219 972004381 977557161 873958997 994263129 566749721 811722323 823842611 926100791 633049407 645391740 664022149 709097332 571906249 623134087 82794488 218283126 9744719 696552115 682233175 715349917 667055255 890212204 732397100 929654171 523653112 715707218 905449128 933985529 748729939 950727893 60262045 275163165 564189810 718414009 825499240 943849510 284105697 640504201 627834660 867748967 682445188 905834861 465038044 732745716 753201427 949641345 191683464 424896799 643309507 831158521 279091766 459481899 951079543 964390982 841590877 953277581 682443381 905789882 959016706 993154736 701103927 956146592 646018438 889574476 829124498 952212347 160197761 383848114 190292541 842557185 341943827 681649738 860886494 896381271 863130171 886304440 508714473 932990644 187531649 531684015 944543253 957535793 461763701 829916737 186465676 851408017 77245110 164622007 610508155 708853332 558896787 892989452 700782577 928935890 533885711 682497179 203261352 236031042 496091606 797638637 788028756 943154191 221852094 810049954 735204018 954755074 547621996 997974952 859993884 996760412 572569019 978205402 742382245 889772823 874085300 920267531 384507622 938168924 349423600 647776769 816976100 847605708 177776346 977520823 313593494 809887223 731668464 820730470 403512516 734682487 671019925 688997273 121176628 424182148 981718823 997809747 805509508 933144599 318412189 805343540 331132023 813972773 923559329 985849677 193615517 968266651 373476363 623053934 729863143 937434637 708522158 779857942 784428427 797292360 751284489 772868159 465609420 642884752 945555209 995674277 783190166 862251082 483577876 990892002 585308863 873096478 690105823 808319785 543096340 582008507 303222467 385181197 581233805 992456827 646365943 829160196 6851290 401007204 51900784 90209156 710951186 760475671 931451673 957858913 682977136 933192224 174816282 494992666 776674774 787249560 375338067 820966528 297300536 359558499 480805476 949933304 196690305 952555817 575374475 981489535 570879313 865484902 778399331 826244050 217905558 780746372 859058257 992665866 740379300 952223047 798631661 839638804 368311963 375125410 142389373 146976041 328739310 644722630 947239425 997975393 317119898 788861750 937321243 977646713 513851374 807866296 744597599 779526545 239783945 471367210 777105711 793885593 930160108 939847167 165836676 918872410 383041373 853678227 566199267 618349106 917515255 922390711 54091560 574775874 787411058 875959760 412674300 459425396 79229307 539072542 109285096 114995437 555798355 831826505 366992463 576844479 212106191 415324726 585387249 804282031 379503547 794497810 775201530 782542608 421195210 718868624 675591385 963310371 139479584 481296651 715359190 916391110 303813033 849987118 15670279 679120403 967832444 997060964 267230975 452284248 841471611 885640159 690698339 864310811 340296692 546709218 714547064 896942310 894100917 894657012 58339055 622019382 468434015 695279944 407037280 587351385 875609364 984719601 603546522 871250658 74457410 699671689 491034220 654148648 473414721 828107148 12493146 993801351 589092286 971615823 767715724 936319775 989164911 992289672 726745366 764499017 773224015 774482055 972435057 974569921 963232248 977263044 907795244 927688195 719291720 846315798 573143903 862600938 383903786 640696493 897677416 949134148 833928810 951074890 423173876 681817186 392114574 657398233 60254646 548341601 986342357 992986867 568544463 781493757 292005185 840015154 193569793 693588454 574111636 876321162 50119189 498619370 78477153 390001033 442144652 651538023 905107654 947671470 359180308 640878876 787578873 796155261 852246066 918512252 687157548 849633230 943188845 952432349 306821072 730513931 834604200 930898385 109167620 464409670 745913458 918428659 687531149 923580946 580099803 615217018 164474006 562287572 734549571 784428105 366017542 768939684 427717245 745953200 328610655 909433545 939703578 977052376 309969967 801288448 404207194 663468574 649073401 820429839 259700315 585754277 313648717 814997941 720643803 915143589 941064259 977896569 813048448 910823784 345356860 353743970 791866668 993686151 825040260 972064267 322662975 869530096 136731029 934529443 659256632 925920360 766220078 850626281 625255808 850250041 218858680 535370000 576670821 993432902 767154453 854094250 634675852 909773918 719617983 927938350 307489389 604615041 430279921 984621499 986541669 993164523 469847656 912868299 118812941 846112875 976047336 991928645 763947746 967853742 106794186 518508860 285052417 978419099 237863053 598469871 980583411 984931860 456077849 495625932 522985954 575581819 400263137 434790876 286084901 357127985 879092998 913541456 992002687 992051607 533719719 903558667 995009609 996093621 48862798 632127375 436447174 830853077 918164772 969184869 513406481 527701952 607665127 988529501 9681682 464300220 737026035 852539030 782781992 853983241 685641834 921362458 506619542 886956752 590925256 852835631 553884388 960078556 971711282 995535039 251139366 958363770 316109362 318084917 282455626 376546528 78603769 561126971 630224810 986743476 781009097 897614378 760282705 926161283 637608938 733842555 729269967 798228559 511199322 775864302 732838919 796569902 512155813 585173952 68446846 859622450 229466303 485728092 892311676 936949681 838365865 925372930 89705818 541812514 148615572 513903840 722473904 779427775 759288301 931625451 333390431 540903318 481217227 956862062 219304587 677482926 504116466 819623048 936036793 985779371 815729597 970789256 916420816 919482821 86149838 789452961 685979799 981339229 674914702 676547249 751356947 888876469 352394631 997412113 267876671 502642611 490913199 799665150 640291399 949690143 869022930 945305797 475326799 849370208 426120627 767611972 339534584 528812301 986422757 986958868 441039078 561531485 363681006 798137260 345251969 639562439 476756843 559736317 572796540 915764403 164504806 729232038 464768708 696983146 305967445 389487994 602237761 683525143 367701193 459134222 223149733 525115003 865623441 914448206 216066928 304890949 840038847 952275561 659132592 935949872 787683343 839360658 438885199 749251786 331470479 657428070 578463155 786214893 329583286 533915715 982476949 990809398 17486183 290057438 975145894 986758061 600085931 831633607 258210494 398309125 994650766 998887942 86142046 874390349 624433611 964905721 633566517 821325270 697779464 970665711 607618687 894508719 752802357 950065898 62339200 459532127 268639658 415156209 108981503 210232822 622645162 965866950 681804728 709904239 382589259 399184788 250215084 604450333 812647761 947233300 323333775 629548508 77319223 523925261 677488052 768249674 11149033 200134563 288938979 772135389 595616943 889889832 932321791 945448038 192993346 199455955 352228184 490215453 259782447 495738715 144410752 243549971 72252353 260767375 366544080 458208584 727464019 779788619 208286128 845445136 327427111 745922298 908906931 921030661 978872412 998091447 595616770 934794936 772517455 841998884 89723773 499541456 621796304 692236425 133807263 829227874 910322142 957447295 727268660 776615044 542346874 863492683 319493023 400597053 132249956 554453400 922091106 967322216 162138470 686865852 219779185 677878588 251178848 648739878 349586645 891715165 118438992 387683341 619745579 736782972 467393963 772302420 258286864 582863335 625150765 826163290 62648585 306274629 325578656 964942780 29135546 972682193 197942229 307882044 233113331 561976997 313980496 485299670 588603646 860084128 553219347 648905304 135240464 763384380 339098980 948943352 689539374 938366875 378390999 620435946 108613457 663494079 599321147 651009379 660644283 871478345 278008034 288338637 547857302 834197544 757106118 761189833 648582129 947690936 592589807 795893272 988588751 996398418 61508465 859769474 813275421 966513099 663657317 903971681 136129206 781699567 629037903 672170463 153059567 312842004 448113429 492049361 445900518 706755361 516883553 911036146 529531524 724390425 543659700 634197789 514621308 656251932 276649578 320926468 910079138 962490573 59927097 481660724 730444249 915568442 165517063 234078848 544739885 804454439 386382359 885443660 470591032 569347285 446192697 727399156 699596582 767475094 315640758 919360047 785904642 873119349 527123987 882421627 180953146 205527538 782501667 911075328 569599727 992098320 826891610 958770004 262567334 914096775 847936035 939769196 538967298 906446506 159605070 575994595 829178873 985027756 92362812 153562767 343563667 878593615 740141158 963020092 22414543 316957775 200814284 716362551 31510019 177135995 941184625 965848910 926256704 965707199 8805076 788592387 732329042 740021751 822137978 872549865 180048351 961830001 197253968 844083899 318560859 410032005 592445483 705876347 245655351 723099894 235720153 853127998 711114547 892674423 481181653 931912381 34072416 249819855 639427222 710586158 65915908 770696567 175163818 627568852 752930861 888168411 620873148 877195194 933033852 957081045 912640199 923388785 800517720 883402449 402892441 633887272 925100713 956167715 180434326 981309565 840793369 875755661 558489417 945309314 88610057 745839697 669383731 972454102 253537852 871823368 639967421 683659715 820544520 827700401 480580989 997440736 44765107 719488276 779076672 968624761 112868176 600242222 898815388 951868442 555796573 870182498 437006807 724454856 898421199 940161644 2298607 100961581 321570554 505984183 563591056 574553004 197972280 284833205 661378046 704410695 617698430 926117108 4563179 50412230 530813938 843565529 211943935 626423782 271920984 623408406 967843426 987544559 549725948 773530207 859228586 859495294 733175380 837745563 508030656 542041787 379003338 637486176 920302146 977399047 311160192 395649421 494643914 590775890 346908321 725912638 720540023 722206230 509856889 768080698 962308600 979581547 739238255 868750717 260523173 398267377 238153086 707963740 273882344 336501345 756942552 993993452 144117182 585734933 526790866 702589493 444484442 686246683 262113763 354531534 894706936 957977728 713594021 834328546 306425175 547566396 677672141 766392275 793739056 909347273 659228688 759693001 140169885 316472379 183710374 444039699 612383763 803343528 991800560 993789216 244256079 387962429 287732444 557902804 626302052 710122795 74452489 922178067 244210343 547545707 798362537 903417994 950070896 958267156 586051832 917165029 635954107 878779271 718181751 864415048 344236452 415715421 440881011 996378076 813210819 846703505 739592724 983985690 283010070 362256458 777303958 894550616 555412389 797261688 405825535 756035238 954461371 972181698 276369261 776678104 960704238 983437498 389502487 855538426 581495447 800147283 140898581 519592885 554049337 562914334 374261713 800397038 302229590 958385271 622304724 822667493 360288865 654424486 793794073 902328096 65538154 586902131 233855444 280617367 685412704 967537392 59690933 351435451 101007795 536464006 198946311 465805783 715992350 954184564 452843980 515048652 960817510 977057548 743191193 910874248 713580509 749271635 509246539 923460243 53854197 637664948 52473345 526406020 74138722 321078534 870666125 946977618 122856388 745488285 21365064 266055920 839941762 951019124 971422302 979686694 561311946 859313495 667367310 712497699 674977921 911371139 817838852 856061336 558192972 574845172 436022816 461352357 51695233 740671995 455601772 461419056 542623804 891177414 769291343 900205757 873508320 942450547 467491804 848316694 983378482 988973352 86275031 412845967 711145535 724383910 533464893 628485937 597231802 603230425 694906551 949782329 322490945 455342260 981974118 990981733 436033105 821209078 984592 75570963 433117466 579282872 854220314 882647346 627292523 652804287 135304738 498305840 732096191 949816356 972788931 987304655 601754648 719942375 452907466 972366682 484885586 775589278 178160255 947075952 304671870 815288112 315069172 597842743 543079031 916174868 493860014 586138476 697642101 750704347 280838178 464639258 86943570 553045290 949941773 999147832 158747234 994495255 498513456 686474001 749314272 768865268 711452405 865265897 790089456 885432497 860536178 968353099 673086738 892418946 426673061 802870061 675613866 781226757 324014820 630905401 294786040 881397843 74287191 480841188 91261017 148318404 8649498 487297550 708897711 990166646 277376125 724192747 636753702 676411784 59653705 844900767 984086981 997862564 509018 551210865 151738063 794496350 180113746 242256304 899848210 966150463 254172544 674856078 548491997 834541828 402400591 782480796 947589518 959858749 109261796 469378199 310372399 368329233 525646175 971693577 398353036 623406334 374443989 693877908 287692064 631485198 273392996 399660039 74281913 865191230 107669285 926387687 966364525 974068733 266638079 843247418 797147947 805856978 177412262 937778111 348318618 635868626 663501439 859097220 726842949 880351769 796324506 867381148 327286484 746511631 130825874 547546578 369166724 812089015 288830394 524377532 723978216 924356231 319903896 481142041 593592634 996338111 148214741 346962137 871525360 906475379 985507052 986236379 708953050 789303006 307668868 599260307 858786237 890608931 597842124 956398701 116032498 545723850 734424207 932122521 873809029 914005451 474604042 889073608 856885088 878083545 908839013 996319688 299999697 556496978 603436186 969405531 427910628 818950819 253703998 401855046 661983775 761645242 600446011 719150840 448984557 880599938 692792680 730081738 674851325 890026495 186643538 333084840 622464642 953169454 673327824 686803103 500945086 771896161 188349907 268761342 400729522 632965563 394073312 717690651 354821734 722068704 424504901 716857888 361159501 732300540 853444289 878049098 785555143 884969994 829150264 975076941 735541878 996628942 966070939 972592780 808230320 808871416 17029490 39229599 510478334 606850077 860822644 974552413 836474784 895342909 2558335 922482038 2216701 292756568 920129868 921088073 264778750 453667282 746986277 779015727 599579850 693900320 517211980 667691857 777417191 914159583 318543737 985913973 983586054 990178398 652036865 867673858 147835961 338826330 801159752 921583884 898802074 997862849 720050610 759976745 921934259 962153470 824276840 862527976 945794268 965742303 132891129 940847002 835441157 893182006 193064835 235259272 651368522 936387940 148630482 439066250 525188501 875131869 77117920 642847558 124139465 225555633 687983166 992357583 645725123 979121742 396695020 441835064 211833650 620256102 720240199 956651463 632392283 644442140 4100839 771122912 983047347 989134642 399063386 886484619 162889261 514955543 307245245 424785067 173788181 864319158 565102200 700533567 937784121 967898358 680718253 865507726 544575287 638393172 515812384 665877282 810847772 999157148 788650208 817230554 171093873 776927831 304715076 464347531 191033945 713728461 11361325 107011281 127650224 232270060 341637942 684640487 189714389 502112660 303431634 879217461 68405213 69171741 722732903 865521324 991028785 995492283 911522914 930925407 412277788 579771336 558409837 589851146 658977811 671764036 934364474 990482924 939354844 983878667 582181998 888005175 610659890 790963669 309317771 907749671 738345515 968038381 719940742 792473516 578042207 911415986 227382486 933291522 992436809 993029542 281215798 401515019 871416851 950842372 318084823 558329040 541696478 838414207 879779544 882099162 782384570 918502413 129656840 417461327 212374680 771523777 971145608 972405556 592363029 594749692 638470780 726984539 480503572 774321109 323636713 840128511 217703834 686560136 717020923 870767832 4805392 404352886 958045776 981670339 681718008 810719712 27164659 48024615 447998014 521073146 976124077 983143736 41242610 795024119 797977027 983048507 932821178 985568524 160327903 385723210 703925671 756672210 838690820 860294814 248703317 580994555 895919227 964025150 756554161 959030260 129292345 159314664 202461250 926468346 861762786 917907429 29650709 776064511 720829128 908858289 246215450 486358816 784248837 969868935 236639619 900577143 802478438 955659963 149116514 316947466 510160899 767387601 231584956 856032551 954502968 978967299 9473635 983485796 404161677 756623591 183313459 537652448 661086294 869837734 973611239 996860555 40531082 130710945 961073260 968535675 624813990 687187140 189947051 909374596 609682129 841512172 808290775 822815534 424514576 634653678 91945833 285454240 907893105 936890505 742599200 923326123 985345999 996680652 439019381 974362193 996588521 996798345 781526406 934079522 883211543 914404863 761061247 859245910 425083071 739735988 334779364 756742315 24978679 560026307 167067049 546079723 792758575 933682752 33620131 706613498 641051949 816642506 439896592 841369269 750544153 861468050 610577175 950573014 228528258 239198300 747181154 882763955 43112907 123510557 591306432 953021899 600160131 934154139 927808290 972410833 494659985 740998256 501642811 795035479 576264226 807292845 554165845 990066251 769459513 832720718 448713276 747462577 32385608 563532471 184864372 564189596 435955035 452799371 303748982 720893602 188864564 750355266 569982756 575752408 937091984 979555353 828449024 997531196 946709382 966834112 21479413 497516719 216195133 301916411 225012470 742981397 853662804 975180726 255327104 756499911 910918322 912972994 463245151 921709033 245045177 582133574 169176136 589430982 602344985 661277792 698948202 720183534 259099920 369262501 73328467 815063794 335857720 808774283 711028722 852009729 572600717 590252472 349322451 681492058 728988361 911894338 579366435 666466706 761990021 772977765 230391249 731729601 333230668 412279370 958740390 968499903 286177852 701887752 459331868 537655783 916702876 959886614 763676767 985677965 822033258 888134141 63156766 540617079 147049248 176727000 309378021 432609724 210594712 630785469 705148385 962231734 847415492 981461533 658761870 995550896 262388418 374670737 666966771 866658174 986119053 997122272 417216226 432785860 530058011 805380580 481562375 964058018 875000753 897775320 326132889 914888745 569367109 692030913 611284558 702370107 245527639 502176114 476351792 925690594 551626059 949789758 501312224 672967606 719340944 872538574 749961911 975399378 212366637 905194898 854710144 879798284 406983176 808973328 235845251 925576455 901112868 976016074 27713014 819762260 726951454 987860566 4252301 826019583 198865801 920439992 471735799 929766521 770249761 799732637 816511329 943627060 600830466 622094740 125320247 835633629 318157789 553801048 944151766 986869991 827289402 849496284 591061095 728210986 138175981 798213429 892138773 976891066 803122568 966536510 144133916 706948247 346642161 736835851 479212027 593695424 936466624 992924248 616836519 883220135 174925931 552556196 75806894 403384683 259589908 675870382 671347463 887829200 726521565 821331364 814471396 891315246 757506493 878353103 68597196 981822434 560638910 708235643 755606994 854881337 494401700 875391667 655671644 954189172 39284464 614888887 341619618 366600166 530735092 614692240 4908894 381431093 807678015 844972491 897947973 929779952 177128111 937708947 739082950 913700992 931378696 987062362 351776580 781879114 294812754 501129863 463513184 636985054 288318278 379808569 909425826 916123562 810945821 823101445 142737021 394915015 439883621 861500117 453102419 559332349 244210153 852645781 371745236 836320394 919700051 944005275 612004227 771838965 903875599 924781131 873309714 933152270 32251910 593949084 524175675 809141511 322589458 828446087 528532133 953183786 14085274 830710490 360134850 859029105 551855715 821882224 287131055 620320538 274418004 484464188 478730785 761521863 607970046 943287602 418347385 783973984 808794456 959295526 109190574 536583156 523491854 558652675 491100222 686860580 251038319 274349720 994481010 998264746 580627976 790531155 331176088 750435579 264710657 753135029 840682085 863499263 228157489 970871802 668401763 811234969 263874631 765143196 60670507 503429960 45269621 463550676 448068681 550326781 567817623 882069462 89188513 999164132 814808889 868228837 543905779 673022597 990488779 990883909 413819686 829762496 43955138 835464720 569489286 779431091 458644323 746832085 248210220 858251091 664930058 974156991 756510266 823935798 670334525 676543514 881664258 968229721 43058309 161689526 583475794 676781395 681549942 987475071 975822603 986512022 702103864 925890715 98534915 437152209 414140454 816659592 654224069 719379676 409117432 767092776 959399806 976194352 631738626 632716452 546992284 963195153 88935000 432686990 181469019 886053067 810203822 884886203 114370852 786457687 295225915 909954171 149694690 731350097 27766648 170384899 838730238 972179104 261582614 481613835 625338699 904224046 323535769 643051598 153618039 624695827 332679277 512339385 564047316 753969132 998762533 999122816 908085867 946248640 422940473 883315679 583913953 697444005 231673645 790196802 966884944 973608549 10801936 786528591 967434541 991987177 191743493 936543199 684368198 720340141 923535685 955634786 970327121 995411287 445493941 572737790 267117121 679231188 9166005 795155068 309286775 687433492 131396770 504288174 771407836 971888534 415114880 563906539 238057852 979377468 414602767 623831482 602074881 793249020 220572044 739841640 476972475 577816307 159845833 708083219 921350967 942679433 546003783 795758738 361626168 886464337 551847507 602948364 295041828 332149005 766949227 845747898 560412728 857654682 899887850 909126713 755220926 811839905 395596581 757795597 83064522 477869974 661208773 826000477 474932915 679968543 895577918 934532373 22793256 584026742 775063691 954003926 710040397 988055196 203862833 566500524 277786928 713117834 214943221 310885911 971448990 997609336 934975650 958627422 359567328 610702443 353625776 544923814 471637153 872921943 541730489 616015698 13959908 531853659 73709364 214641188 405843608 419177330 389525591 663974407 585581944 606247356 626329151 751380546 775835088 969705613 580357850 761439332 986156063 997797995 287453149 420626895 162281180 667569120 351026766 586842823 890219797 980045941 859307568 939042930 979792326 984664563 119287706 376930316 525114746 793794747 802606431 967061646 19922073 434293380 764448998 880930126 747858733 914539288 508638491 648212955 153699165 625843563 729689084 778315073 472589719 535255043 96600637 281626225 158537471 363270520 619076068 953266381 195205881 240419733 887547027 978026328 364046887 816996118 524974808 773615698 383173958 994183642 410132510 536977619 750815122 982898395 68498283 715698011 830460121 977598421 895063543 987854049 565770784 802923219 574775151 791149911 881319323 969683763 346158193 837791820 302499814 647125273 684186982 709884312 693860374 883718969 629180454 708400396 58395622 946598167 281291090 699248950 998942585 999087432 20640381 975978719 401545861 463797950 556660201 807754383 316619595 431610888 566009489 977868078 851459256 974462516 189022543 756638048 606729923 936552133 278294989 327939938 487691285 878138332 484250137 871172077 791271212 946383724 572489322 623748001 238472972 455543636 203974350 958058445 755698576 992179186 142061725 165719011 987735308 994302097 431232046 635617297 53829939 284632179 848076 443484654 841282459 844473645 617454427 754947784 764065678 785093732 866124470 901955583 411757221 548555999 48869378 573050603 710721105 855200773 823367719 877496593 249031519 989506221 3605388 153654001 293021368 839240039 918986908 932116262 648180150 771193649 828686144 900595468 594635628 945581204 608829281 655901809 963042027 993236920 534101541 740215251 809674299 999357256 353609908 475789136 842806088 959941949 972867218 988867841 775741104 916807733 851005569 955057945 113613598 260384142 822806620 959503253 969450724 971229754 60492493 371484764 935970372 943428683 546144192 732337614 188769993 261327721 412009524 537090152 166413851 800007886 347724805 364999533 850307271 857897392 332835333 651994527 427291185 881638656 749879837 785570174 640689949 653371528 573602247 872677722 919858085 931355591 511150358 633906390 393431670 675539564 738188539 940692838 110717652 748619268 343889802 959067819 503631206 902244612 992923970 999312004 476889528 813949612 417574697 756139943 407318271 489618835 337299183 974439727 26915255 167850981 404114912 672879659 606685494 609068457 947879801 991077237 627900502 789325960 392332972 421721508 255948643 457031704 782104209 971938982 169308100 823765363 459271717 936388104 163456929 835501247 442198019 868965406 353869421 634594648 775322254 955080963 740746570 812173331 346090454 849218757 907701237 916073890 733068215 925284507 983001296 986082580 488369532 956062383 365692064 611474587 64554852 303232966 369407955 464581614 503132129 532713577 552353901 939299699 833397027 907737436 949856986 954036061 467657253 897818530 600808664 958481238 166258471 930907277 753070809 800721135 262888887 459947618 487957844 758387176 567833527 808398544 385632642 762400912 898676993 926424774 851952180 924645431 169970395 734795415 825471585 887762130 178089770 853816759 184939072 310950122 710261929 742797947 945482299 981674204 875736594 983403607 769570512 800165538 382366715 507746182 225528134 364930045 84556215 579570602 270346649 980443106 421100545 544281176 479226834 939295018 55862645 472655162 479179184 685599706 220542285 721286510 844619021 921055969 350281644 688518013 172859092 363543227 305684732 944406404 477564352 969091041 332659556 732994434 30867831 454421239 322393201 511424547 443329024 687882191 730134732 782103116 801351432 914237328 910477043 974956311 199968000 435277865 339802585 427180579 575670222 617940190 684008098 841674399 55221197 328781830 684292034 954673555 27176976 836832294 971334515 975354306 388199829 484299191 800137084 860663354 495861771 837115744 444129561 762079887 9504042 31639623 701792257 857501557 619589224 876874398 117003477 197618733 535488431 602564096 46898979 556390412 923701693 952306495 49298550 190273861 113915492 971485977 442551461 957457706 478501024 627766513 437623841 503374903 490121183 846007684 664720612 955830909 95377318 108736098 281059419 582357105 166209509 965982168 209502463 814809069 524446504 635138496 361661384 720953495 32214019 901195384 858290464 991650674 953143060 959408422 330967835 769941927 956543657 996373097 781917692 808565639 538365927 909247288 846753819 899007320 283230425 544571160 94421394 759417405 844782639 886621772 633455969 992769004 192144689 359007671 516636925 912770973 165856826 607909223 500522807 804358712 874364962 925145154 230515181 648950721 196626407 724535537 56201740 861779027 183590313 377864497 331600012 827663198 906392912 926406000 938388686 945048074 303761641 412255086 637139582 933699059 88049266 719813641 229010388 671726979 681916814 866998003 935622544 966285796 818265017 901664624 68279955 561200428 463032568 550762547 151093899 310433686 444972922 877796530 737359000 807572206 510054573 743646957 444302941 840023107 718101088 729605414 409918226 584296285 330093077 602782147 238427376 453803990 721021027 946315900 760796063 809625183 934450391 973960531 139540691 352391494 294160827 987403524 877061516 888709429 41008224 929901479 904781178 938709237 767412508 808067955 161438362 869851246 443769066 562542274 453612957 603904943 910195347 966074820 527054206 549885262 420631755 851988683 866168570 956193375 571975489 822773837 557421046 730744114 680666037 755949543 634774211 807017800 961757512 973128737 256381215 736730482 483996007 802127542 103854126 899944193 77295386 532880216 923299575 956965033 831220909 911874475 395803726 598089604 394569002 808706714 786424972 787185302 113440142 155134066 481275057 868111851 813271212 829240307 935924154 966626858 445951401 610997658 348105347 657383861 530392903 872075805 604176574 897349997 258051010 848607292 910412317 930679489 943905151 967047338 916133726 928025022 573864573 879306468 473917280 666389444 856489912 923655904 808371658 957225175 339951375 676023263 588379537 882375009 521531244 681455521 875485377 894865010 702980311 825122379 183347149 656670595 60781342 158186339 369320703 967274763 531585549 553012304 961841126 962345601 656219170 727121451 886342483 921286536 629306367 805845534 223702531 490047972 288650560 303906938 515569383 852144721 280495570 957166955 292497899 774535987 761347800 925801730 109099883 184713367 425175486 436015272 78050230 194509696 630900606 704787180 245328513 957289425 925610522 954478304 264919600 958450936 512162057 522821501 448555898 941931092 985103477 988551259 393465500 471386015 596813467 766888779 598230232 905719710 702614956 843071935 374402616 723844532 298228954 315724288 174396201 391367884 709166735 831762143 344794964 770092517 737349687 921122742 686243571 878111110 452475848 559482028 166867465 836007975 362242368 734614774 854025474 941499043 353966391 926721210 272362075 928385261 658209248 766418829 359031488 987509002 406195274 567782160 830587149 929879934 839164889 922275602 914353468 992324520 350070860 568411764 66783262 165196450 803822181 900248772 862336091 946780240 63834933 987102831 146191188 474848196 365912597 780425752 431139895 442532194 142510959 242060771 399042808 786361837 328346558 787760179 331485176 813698278 55481435 913846705 124340567 208515888 136131996 974810694 658452802 842107631 602784141 646966473 362317226 457047632 78707921 402755951 871968072 937586237 482777878 865235485 774738824 993518132 14604735 488665129 566972432 643147027 416194803 507780374 143485258 749152210 940086611 989746201 176667427 273959646 868162597 910606594 49656390 827868012 77284522 820084262 522924760 923938467 792802747 801482995 783390304 790328509 877325077 905623336 81763611 279734913 2761123 233124121 585846666 948986729 379492113 557919605 466149103 597020058 2317927 374535458 908706904 940073122 966905954 979805331 172736520 834321261 298414596 717509367 353284381 894765246 22426565 232505863 977239808 989200178 806983238 976933215 571521690 981836238 685146326 735182092 606120241 936108803 630282760 767977954 780421309 889175205 112704486 597334968 655442433 840087751 185539402 644199898 438508373 938096030 671289557 944941636 787701257 889137900 92863212 583802931 765601480 787076369 289578427 294229835 511034729 557793706 210923670 711868155 659554572 917237368 46311342 138234767 853193640 933580744 13002107 521974105 49449880 210564972 560467457 637783308 739177082 977945270 708697938 814818179 948792323 959331500 130771554 228937871 201809347 794306908 629148034 965866458 115840591 149849974 891338175 936820636 607062058 818267724 572494869 598616330 775812210 911301516 229173123 907411989 347296649 878132238 142854614 580568040 57898839 225110801 10422303 915931344 206286391 501981962 90576899 720713711 782975785 927483256 473951858 841492194 524464126 749072671 753236349 945492208 536407649 918226787 712369674 924390256 500409884 859141879 851082745 870285059 88524679 559119635 949178730 955643898 764174883 988057440 222369532 949764365 849619169 860817439 115237043 786777218 255215266 623595857 209260149 993887958 529646127 758808441 103799715 298133756 505468922 556426237 879995184 944398149 82767581 345149618 142355574 918774667 569993474 572019826 596274855 682445303 262537013 700363575 59272023 662964862 449742040 729715562 629294074 978091034 68092517 351689989 18703509 658539435 906172688 985534119 943590779 993283467 335089609 516642211 270691880 716489983 632620162 685383728 193387414 890437116 271519469 713991781 901835437 916979741 124601166 305288373 549090635 682967058 978258240 987999199 316801819 858600306 237835001 978123472 419259173 948747354 375116496 539309440 539166735 569923502 940466480 966238083 936148612 989443758 550767518 581160483 210625289 641990954 783692925 905129599 474154918 554096172 356386730 848957384 530303026 726873843 386076994 811982520 264700033 806597645 57367160 773524699 273098294 514231244 690014631 727800525 221123428 624546890 770990287 923968856 669867060 821807014 654035275 788840580 97022248 944122258 776707946 904050301 127315566 828486677 379608070 690427142 126485351 911330225 253636953 309815906 381780918 964443521 766858022 789087964 446389562 711046820 661472643 729891167 993410352 996432157 509284956 870979978 253194277 446940760 469645008 645598708 265576597 284251849 235499215 897922320 79645326 564822214 654482171 776517334 880153366 937152843 814044397 837356555 454754036 742317866 52740499 262646132 732393516 959917630 804921721 917052539 682616550 956115146 803648579 860629471 957078991 997173115 186148397 718176595 567780992 608258684 316667258 874741212 836667338 967341006 508424322 829456364 637123858 939754237 145752148 786745355 102304674 508290751 918470308 950078873 450916501 525078588 968833168 981410820 852448062 914608590 157276782 545042392 953274816 979801066 870283205 997872445 438656468 609057942 783627445 824420543 817930879 862324374 81267113 438175062 85064142 969500974 558748186 995044081 144393227 734489063 351580877 534250585 724926486 771241026 264461151 285731537 41263698 574175999 743228204 759808642 302956443 918791446 241509332 895669679 634763620 859428569 211460499 288021936 988386159 997818734 69315886 486801980 765956244 992683937 901982671 985030171 648140179 971708493 486780094 860983210 318416183 867272034 594277342 741588215 258982944 598082591 703742690 993145628 701193432 910156910 537511944 783870371 491055982 736833673 510603260 544000067 194491367 329172378 412835713 584098216 437268715 593248435 130250066 307197235 444695135 530284834 969140738 989470068 58991033 904398236 568209231 833891373 580248708 896612136 284489921 632341269 712860834 847600301 35728808 197320371 39810273 124408512 569523774 600081806 189902842 679986519 382791069 557502197 373564311 617315882 878142335 983143718 238325574 614939281 949019193 981098823 53128982 513913339 818882834 821679136 962641073 997591302 491447873 933813939 128039723 390496842 786583573 968236003 260630551 269249893 176100761 922961781 566272833 573494186 804429526 899604847 273934952 495206326 637157834 678666334 154584527 342627052 381415098 936783740 419490106 572949366 341275393 900660594 442935022 856922761 625675762 850629557 220614517 238972863 718121297 907428372 149654424 256601213 796860120 924105284 370449929 415866406 81923393 754204971 25554789 734292964 130354685 683328548 818848137 981068855 668277253 732822566 927914303 993531619 772491202 852350418 662487593 921428494 332287693 464139802 826245300 873332673 522287353 696241133 72168106 511180550 549489474 788144067 485462291 681908089 827810205 885877245 593667458 716399301 291603779 956811575 766051216 972071596 917487323 948148313 930546161 989058008 685732197 765493180 327253945 347460915 182896402 896584831 183253325 773025015 340095663 566160871 166015017 450843439 241815889 599594394 881144923 908020205 940469872 980624166 177003064 435351567 559536047 729363774 67012313 697411255 18215554 955062224 992774047 996950931 601231176 621530406 580507188 744315976 721942608 922501185 658532874 869547773 789110267 949089881 874577114 961385504 762599944 909336891 971963520 993251851 317730286 344029205 439235443 536813478 260282929 377355014 940911358 961967302 849660382 954563601 746777018 996057193 369957361 559288644 734412363 767635331 53297602 225283318 283931164 330387186 245978713 682587650 71541871 575884618 420055130 425724540 59273519 795292904 385759629 875056981 340248045 671441541 468302324 763174727 96077838 533686298 780402088 838608563 694094265 704343582 433684043 622332424 194369589 816332114 119077697 173785018 102731608 396984236 756057099 832273528 809773849 975145074 899091401 912382330 105998974 410377039 965784998 998577503 242499741 497068357 484086156 665364605 117036441 716264130 37930515 481516433 881685916 899555363 7698916 233128768 521713928 987758214 173463391 469815532 106659478 186421517 392671297 579930662 708903191 930980155 965457177 975708113 484071459 516362636 238019494 491290931 107113247 585949585 737748570 959129517 953668266 971673745 686609332 744541668 798167790 892857575 617752804 874204680 466498021 879745163 586730564 681486778 228422427 846651253 102147505 206954175 149557219 695614101 34417776 822657397 31049618 113847545 680119482 904291510 702447218 705549448 505293026 769534724 3680884 505165601 268113959 535015682 941816003 971053001 565390955 605958446 576029223 616089703 852773469 974786362 59788252 701863735 448113190 854496839 943882191 953385432 367928187 845520443 252850551 571461042 596652471 635801222 163834274 733418504 371334662 690503114 637995572 707004083 147617967 765365568 704596280 865547916 252416707 829292925 233290994 532475365 661936015 932075451 963281209 975685823 539401055 601609706 974477128 989183716 824161234 989513818 672510819 917611500 919898865 934407456 819264669 902349520 385342677 464853734 328358417 862354198 391705556 628144113 893575226 927349133 297527552 928501696 526001190 810584024 713231885 795036897 987625446 995598554 949079614 981607101 726306836 771192940 971467869 986018221 967631051 989343191 878627229 993926595 709793650 793059366 314534535 664373941 334632951 933988213 531698862 660949771 330587399 671463897 671321879 745168476 141572210 753552963 934346097 967664098 200381419 799618322 737366093 985405625 814774117 867481007 506974395 634122907 264070894 294182925 560925220 923912337 652389459 836780517 646642647 875821418 474183041 898092576 764107653 796492721 759022738 789205436 260824505 443387732 77611853 442964167 934874252 958378843 687581612 968605269 604357684 778808632 47967563 640833326 230691203 903162967 323000093 996546595 601480091 841687805 584606945 603540831 165872731 698712246 310108880 900471956 367162111 536335599 645647207 716903418 737036862 827876476 647725273 927400977 714466783 820502532 802078926 962261439 169823719 262407466 808870282 829873359 845467313 938145601 535296827 812201119 563974370 653646976 630235708 943441753 974433906 990990122 175277251 487446890 991858066 996335170 732891794 746159568 154700535 286457417 354761874 406329357 635014184 635989735 821091594 834557194 769905256 920702918 983688818 991466921 683565124 829497803 957663896 965450981 418042968 435292823 452283925 548465795 826759133 957217924 181884472 879015351 239886866 733294477 949086933 998401440 542927805 865459168 934121746 996448280 140585078 762813733 366567178 818421857 860618083 916180902 632989122 720611628 100697195 578044396 965672153 972567852 446594510 677712050 443312901 580197584 833730487 955230175 232533595 443135376 727947119 794910678 457578801 637298675 929258415 995615303 412923573 729506004 9091400 909398773 266469739 551949189 732288721 818059564 785549453 971509577 784381164 954871832 481823100 836741215 275709585 672685024 88458950 655004266 905477475 934563131 390534970 808347154 914127454 936320846 57012615 765740005 679808103 986046890 216510979 985165083 902019427 950729216 802894742 957140528 717742716 798337367 996611855 997144022 491916587 764977701 37349486 202715118 550916470 946338249 490308494 987432141 119919112 214374062 405791114 771863063 703838551 769682255 916579479 962529677 617226693 796683064 30378081 110634702 382606140 825214983 159700054 912049422 431696438 504439629 280009738 655546919 489089454 996395355 710575397 827492847 691751033 906884045 176802907 413323930 170206203 791830953 24849216 184655362 655114208 947856366 908780176 922842530 259090366 920955558 64993298 93522532 748338601 823227054 373598064 449630024 524547173 852423017 64587289 153194624 953794518 988586556 267053785 497705823 77113107 257142634 263141498 753566981 724308632 883605242 195112280 648258763 899742786 989491840 888736756 895135782 914495711 931920480 961719310 983231372 184694699 671576677 612549422 628752815 702693805 865373572 700854323 906688206 807213109 847828063 536366098 842435310 117047397 942277183 795728347 875451210 492500229 572869759 128889862 756166008 435247412 729046441 568993026 633410565 407602763 932126742 66551961 353782558 911383338 985224273 421263997 887542369 622148942 820930249 600137449 859433068 727133910 943907110 169321421 812837248 481846880 528415891 96072412 292655275 705503318 969243905 577727269 807044131 635232259 881821409 612286777 843449286 300387112 780387734 940769979 962771072 962268656 994957227 716313604 912759464 139651430 197017649 924760578 959705012 848107800 987830441 162919415 685255970 719607129 865438522 526515542 768787241 909953947 940665402 80639435 479110740 86083799 485285803 882249676 911176601 949943658 989889567 51687953 285140977 943080193 989507936 221168236 286784715 725276474 741437522 520885241 944487237 239689491 694724104 842061631 898367983 327603384 435061941 682066347 851733217 52958480 195499059 537129821 865770634 980596586 994317413 684184674 896515766 614778960 791442488 474771235 494653401 171263455 801614312 133708256 609338350 211260130 346878887 831772683 845025200 687100576 693060727 118365971 279962049 245968638 592405133 83648314 623330440 120391979 599391281 500117786 770259642 774795881 927626826 683140304 763470026 106577697 801801674 965766602 989812213 987558162 996159984 613999553 664912087 25340288 984358977 613470541 702830790 8652690 787363195 202430625 956689141 22888996 295489121 698263776 864662970 672883102 860547675 935503633 995138618 342879823 729639975 828816866 994400700 774739408 906043970 600923904 810065339 181848193 292911458 497059855 842435279 887460752 927300009 783987710 864725868 758050298 877450710 716559278 988358887 201206139 394359375 162720628 590410570 950374562 996280545 517522321 922406631 544190780 695452101 875727030 896966833 386510535 527349401 878786918 980247363 610390782 915881198 43770847 810005666 169684080 190509958 850855884 953135062 801666317 918347222 81765684 313060562 654380769 708520780 847716879 865318624 202775116 210408080 917314651 922596090 672912174 760201005 726820638 855268869 132384639 666891715 399558253 510910097 798308387 902190769 867967058 995610155 737702521 913321191 350258789 817528702 926286114 985461828 335174942 494114245 625453536 902377069 925085192 934437818 616731770 695540407 876409357 954741497 55593034 431149047 841252710 845501862 787015323 840956055 170789378 265708278 918835786 994006110 221179668 896596523 440807348 516900770 430464410 973475691 191933373 924280327 54318867 779658573 359307421 918509814 158978346 690603036 175422521 910633799 515680621 558671974 418373548 559309173 572329823 699089242 881467657 940092596 611671008 725308708 477928871 733791493 127064272 372908189 26968607 295514347 486289241 509818632 672973693 692963370 480722094 971858451 420827168 637192006 965175196 993713253 338823313 556531944 442742312 947878140 734004055 989018902 307760995 795103637 755569528 927530285 328804462 903203558 740598892 909949436 968783171 981549531 441377675 943485357 258571728 496905625 92760776 379894271 263749033 795879646 107984441 871918941 964991266 991780260 323033510 774605582 953653368 957618684 193060649 237817007 355747183 880500225 310929543 800080422 38466152 267894126 236250826 799381475 218245144 618675062 604831830 819494234 386459740 752555013 934036912 979205874 728479315 970729625 239969767 410492818 247432120 355921642 445116432 971612024 967570199 990231182 310836052 667504007 583094078 930686206 714243451 816980312 759277210 879518977 325813061 783428784 698582681 857722822 634794004 934095185 704278042 799228809 529138182 796335175 108546858 540026149 858526917 887709776 531079926 903966338 818283354 966463547 18159814 364594240 717593678 743429415 329099356 932997540 900604949 960965585 462208613 855922822 596391194 663633611 378113082 470180324 337121602 767893582 593786329 612866827 848636707 918508914 26333403 471179512 758500285 854338109 639728054 871228769 585138511 943137375 163881642 719532864 496206013 570675206 47219166 165381924 697023031 983735990 120390236 604902280 932071078 985325157 327590554 807069523 792414279 819384838 522081883 526859756 268758657 463051231 564708 219427277 878454517 888484224 916434707 966208924 199938613 703144153 56862416 121290962 144805827 484446107 577064478 760065174 611773585 739948540 847345787 905252503 715076083 797773218 922223073 946311295 95164730 376428608 34395117 567597536 986306081 991831859 77784657 675503323 417954085 538120112 951362989 972449708 230093055 371415225 280454483 702837383 677731376 746288137 44045781 476115087 29198082 196329044 740867653 762936570 781800654 804063179 729743875 952532383 168942805 370626817 425001638 668393814 731432608 771703625 148205818 894127015 273104933 280214011 79971627 327698843 983191632 994174024 78204367 108650192 271053401 611983210 356694031 946191020 91553842 262730823 823893227 991548235 894472222 937084786 373145697 971566698 457870759 789282059 105573962 481347006 838511707 933747868 789391212 895794375 468177102 819943877 726950729 884978299 53796576 612745368 446495242 800382459 581164075 593085556 643256775 773286239 518309409 774190006 512120047 539892172 157985823 723212519 629556487 984554563 364791682 494776526 653610091 878406350 920310605 931708722 203106709 737794942 233576206 850580586 187247651 387561653 317414081 549012194 572556075 761150757 616501058 631878578 411783309 878160757 929544631 960845877 78353865 429629761 703142307 992367416 881451738 964217577 933618870 996168576 738127090 840796247 109856085 141450126 486125301 588335304 67611085 390299124 791657156 973567695 766268573 985010193 769229821 992878828 519073141 707385762 992211618 996980684 470177704 895333098 742826828 942482692 551776626 949726061 529170856 582500690 748700451 876551016 610498205 929499147 438049132 619195756 986815696 990385073 128674181 852489369 107602413 436950049 641219024 831247150 153669757 216288038 37453800 964549239 668460217 670564568 7018041 653864269 598232445 657383077 708326288 870802546 313419796 379550843 30006319 159360647 112923650 176536136 577860760 822280411 353345642 642039267 64617167 289924993 953051825 997704224 785844329 894975096 125060962 877932588 379930257 741675827 969762528 975725966 465207232 571294521 880964858 906388203 313625770 627219717 812946655 853396946 578898486 898597445 958876025 979530409 647259163 928181661 506545527 599238084 190635520 559702908 236674452 286429253 667927805 965299722 951404458 977493105 23667417 382244946 903346704 953864785 212786563 497497397 197685538 472290720 332566742 416775364 538846266 920092361 141756943 937304925 446432403 582912740 683237935 765824959 740687232 925347201 853642243 892860865 840511599 899702181 586265106 985411726 992015668 994214055 889902337 892366293 408830698 781689425 86199634 689764481 650623170 733842653 638083928 657391220 804220235 808179052 288357951 705167747 786274682 866974161 650060641 780828359 924636240 960203069 166208751 279265292 660614904 932845127 286533345 794983094 847203095 983991935 823273769 955455439 369144717 856350935 992558855 992976831 185970064 880633200 814337501 967537607 742158100 757832712 213015600 662381764 167651675 255346234 985374004 997559606 608566569 776003181 280128304 418867863 367400756 947569586 789871291 988420642 490140023 756519525 57832314 503229749 373999748 927458065 691332397 853542576 529501114 554657275 808675142 997701430 663446791 911674207 108913699 127786320 714479102 824742243 528646542 750806412 907098926 909350808 338125391 468391065 231307586 813122854 786326970 891870001 569386562 965224490 839011266 905257794 428621107 450167678 854957023 954861054 481259952 839069861 293526538 400491365 666175415 811206797 786335342 963024512 273187574 402903891 430626617 896154083 467312315 928481908 443705661 604499125 367491048 384400120 438356703 790152565 909161605 916270923 165988673 880373374 533936363 959807006 812332287 870590964 927826837 988783037 726824695 753624388 833528333 954103374 448336825 495190624 101608191 367455205 204548987 452385353 365807108 475901284 829367816 838949233 526240006 849998048 801497281 908418050 60132318 435508955 288518433 810192683 633963522 826314123 522647887 593130402 398241179 648620829 656496608 716549897 847460697 981038763 226283953 432773866 239181117 404682462 645168444 677252733 41599955 387810972 50557746 342339540 858354411 992451538 329288595 647819717 492876079 840150508 571163244 974964578 382358052 496124640 718183954 855778656 55326523 886679457 836444829 858638226 772476002 942145559 372901564 461768666 22668584 30388402 262272234 326403786 884953667 897571131 390615077 824820840 476487437 529793250 593356814 857891328 289848297 769139297 501521345 969426960 40209711 285839473 981282166 982491426 497085419 730648516 631018683 952695089 678059081 702297262 294430355 775106413 261741150 583613118 654155756 848092307 174827627 205452578 929805176 938394589 601429803 850142857 708584693 875681659 991077945 995154371 632928049 942135689 692041760 738969063 497940968 936294183 483419238 487985100 358941661 434683293 261483573 776527570 961052761 987755201 201234099 336085942 649192321 989268558 855954954 957979106 834213291 901228237 392258538 727064081 727477747 997670316 828942904 835626286 898540166 995336253 788873899 874684597 642519424 822482243 889557659 922731644 282789909 998899276 590150363 723578016 74868924 181388705 491396115 924416869 156367376 767187917 811466806 812210331 744700018 970635186 161269258 939499003 395717833 737987436 157327904 581320588 675437758 876797226 584689726 724351099 37381243 350789650 320152509 436953000 254112554 723931521 128481484 814430123 338310197 909161736 952147394 969516800 841354418 843942693 397200591 400639873 312647304 876996542 838800035 890887094 689301703 790614196 369434218 796026027 77196649 797202084 50063325 393319217 95897531 174246780 585864845 807819403 816208414 996553466 380113654 484943605 35971723 994931365 745153316 756313717 33182619 398322149 19009521 998351494 90775257 181063350 664113060 786062201 318783509 973504287 582494770 909182420 69248369 476780061 683804705 944808523 806924814 979383561 765999060 858034736 474999340 923624859 675567656 733749871 513673738 881250458 30292053 807412344 797903788 813849287 852983133 868404432 530114503 892368375 281973121 441030904 202023086 205777598 353060438 688279422 204534338 615840782 69831410 342699889 61999255 860458415 501860361 610002491 182075424 480422519 642059778 786709500 625896376 843332503 544478482 951820928 656549633 960677895 599255095 763017220 401530563 789111086 830375854 955587557 110017832 695290717 548851560 700396442 691382366 917923104 334483252 930645796 159213115 358806140 430757992 559128149 849901842 920730510 819401296 963978214 669746616 861099270 647201798 898470782 455870996 512410921 840840795 909435538 951801844 956207785 305621311 427937186 286712047 370318472 453276660 826504739 753125847 916152473 620125367 913520978 598665751 672565337 212286819 398065691 737894737 816469043 204016534 647108048 263391468 810678154 439325477 897407130 204136169 577530565 850745163 941621554 843701440 993371085 100155216 506851235 440385489 778206221 551199264 811027050 144517513 794976887 340826725 783643182 956282728 988834330 202770165 866053656 476221377 562289880 628634646 631438179 566848117 824118908 543971108 967599740 698089990 905467511 933263690 997177141 67553423 328101317 620234918 874548086 251369247 269551737 685181851 699344434 118737790 649928741 480593290 589664634 885053552 946401422 610434430 975788869 401789800 533715531 842436809 969525315 791992869 830731147 895535247 969257182 134096732 927536611 541203277 885247349 607400679 618733121 433767820 646805185 962824989 976476768 867677455 915939473 529155777 536884144 318994489 681702316 910909130 968957434 684341510 921358995 713125125 811802793 741594443 881450733 368415351 434666872 834657862 967606004 795586909 894980582 646471832 969319453 346455605 356502115 568880921 744175140 793779756 919291479 733556875 825232231 125251041 374310276 531727390 977918822 646968466 877717948 723479158 766449371 377517443 744752349 464201521 515433732 219968947 668090855 141339373 407579590 289764159 671663014 449026252 742884095 169676519 344858375 474154608 752457854 175771971 698532794 113356812 917463789 961400478 992570814 921690058 981629870 75569050 901898278 792706857 997794520 683843913 703111112 67050350 357557472 702905173 724216094 467011012 979267375 580825605 849169453 646606850 799963080 333062670 490862728 221557396 746387160 127657218 401872321 567859362 633543305 862248810 959021036 852914176 886725362 13745614 717915320 352682217 719370301 737316612 790129477 517682327 756305519 958973129 959335628 502364757 699875151 446594458 598244962 346786837 755208833 442844180 507715377 399166644 471485719 35071292 535773761 598964141 862277654 850656247 993852712 873228663 908019878 273419214 447642509 307942255 593765844 125385880 875904050 443152357 604619151 670702230 710694139 331905528 847880286 220457964 697599404 38490045 704664080 861246011 905737137 271570229 370178070 235287707 823720513 725803573 785071134 441040275 968584843 938000717 948003148 324028849 901482577 101110212 755342645 83156440 726236273 657579505 963848524 931895542 960639886 788233546 836368303 300725484 665240398 338032223 440739706 598900324 854970415 334758496 993901994 435624213 931039960 982668502 992156366 486271341 809079998 642120745 886050116 364963865 569468375 158265011 300607820 750053637 834163483 461942993 897575360 641449247 791908915 27041851 742786617 624063491 796531786 609926253 928683026 730200780 989955224 706928352 720518437 13642742 313467287 809624405 850406352 599796292 988008099 559618268 589390009 109099610 723955669 919197942 985952376 979420783 984903026 328169670 651733783 805501735 860356726 389000656 952503974 991353227 997591637 112622712 543667821 433694768 901420573 775623793 833488122 222058499 649553719 470829476 861368048 313189247 948128249 783745910 798125142 700013402 714236952 523644614 631923540 976579059 983364298 329815136 986741064 98828120 550356632 337098603 538559001 382529917 731657826 348426674 905790319 149144062 750871471 814572259 921236965 153209088 896864945 491878704 919750216 423716280 989869030 575260464 924026033 879282984 949787858 666593398 756644458 422066729 913644298 571365194 977573183 207505039 907963831 255384610 628459352 120520581 730179912 946634924 965100759 737640001 747919419 504663521 588064931 88275584 778280302 309422969 651058397 128882008 406311637 765563981 850049910 716778283 938014680 925471395 938225122 436622710 730206078 187413759 408208821 287677935 809922041 768483728 797477920 79517823 777255114 606180728 729956278 521113507 535350199 328430397 392345331 374447995 806579814 153155702 932373043 86656310 249605056 748021560 810212852 604416567 696977650 461209694 562323765 743261122 766562185 540489747 659708267 102439526 467483883 295499667 551342876 367059228 661030855 674842480 686938380 335469014 870530495 225719723 649110948 754428139 949168249 156306745 623985887 909922387 995760384 19087832 65396087 269694035 537125672 716959785 912315455 376686453 536351321 448342333 860468067 670024895 767593988 585462987 891364559 61394351 306939771 944627780 989606694 934902084 984662186 987294975 990591286 211569727 401961947 907675603 972939190 820552709 931733586 70872948 302137727 403842248 886694496 580245016 584017771 948916631 995863611 671803592 812305405 715705007 859742687 853950929 978830882 665461334 771162552 764541700 874484270 468812143 846426073 109464311 347862095 593121127 610584858 12807300 859805030 627699372 923305739 510849136 900480122 180632319 615539291 756634520 971148493 40256567 315545356 405188516 508887132 629671256 944895398 803499463 906647053 810906070 932321226 271994246 568240255 816132494 962645793 971293083 983686438 133890275 947198074 371902886 406270457 183378451 936357109 240463708 878175329 937233002 985822530 696114054 974362434 37330922 945274515 858055236 909161694 288353207 716176182 235437821 326890929 203568273 879915368 164203973 733894324 113923563 808619650 157801935 440754529 328626509 742235218 577782236 934983658 996445893 998579432 513063968 589565514 884710539 997019750 799212692 834169563 846555857 877571825 277191916 528413644 887169622 945664299 428671620 760526631 183800333 373955235 233333215 660468632 228330806 650279312 312354083 612145465 709033036 966812744 780400895 934807683 550960537 793549151 309213452 879414940 13144125 895873665 961387493 998154159 651398786 741573880 746973612 852452593 336803056 687383140 484925636 623978551 212958554 417654334 144631346 682752351 571694249 780296525 194525951 297351377 717711332 874005292 120857194 880548741 65403244 224425970 5036372 858009122 799489728 934292487 980000560 995217022 835903465 932595005 711494226 947943515 455603204 574903273 845506924 974301613 231726418 949452250 783210397 977745116 326781362 654301064 102246616 603944506 958168422 997598556 315767307 963374288 426985251 767991573 167831314 937694734 738632156 790099317 85085895 186317049 466585739 505677645 731542427 770647306 844081006 868405491 322629360 446092437 670549293 931838591 77610652 162154997 345276343 479456966 354809668 594527202 145434920 744219733 616006946 864428479 956775483 961736448 914341433 934061723 527372823 810563441 365929383 810158474 32616366 905373368 538032841 680947895 647214781 723211207 687355499 749389436 407648098 561819323 475999838 850893472 667032132 898841941 556909647 607314764 2840005 76442535 897980502 907446750 836101446 958024490 688589068 699859066 172055412 821871883 501363726 557652800 884110135 887204116 907617130 940694728 203742628 858562668 14868271 761997632 391156310 739078967 112900120 560941110 782849619 962341576 613319252 829865069 958088327 982082387 324664848 475565277 494520002 535302509 612827669 716372530 444549250 754933018 656955880 823100249 178263396 368965674 134381044 622163343 465993794 982367470 478640048 867570159 67423612 822714313 567798064 760468976 75924957 372228825 408913455 593166630 465764299 929012486 769208447 914100991 769468998 995402895 194320097 584647237 416078102 992266179 499112698 708690380 794372565 858919049 368097864 468464601 729707938 905755415 57223071 127886187 214043032 977677216 855684656 973811446 297565867 298503590 718528753 766212475 344013392 880502130 824903722 943541474 578005019 799391693 883514831 980600040 667072866 724798694 570363360 738738662 281436527 694889097 294510860 846720657 902650838 959834856 262136582 390703682 50114567 704692386 326372756 425438181 230755146 661358636 464529336 475683560 113782705 411200217 846808864 994407697 308921647 472503425 295694379 696991878 243750067 569500974 783081091 795185515 798688418 909687689 222970169 263710780 569108008 738052981 103717307 895769871 153934913 836414582 97241538 968021430 291976475 844271667 62271205 891040511 229516328 800522027 775335252 848231225 270618719 280046854 442172557 488673469 714422370 841922757 518921394 606944019 401062536 689668149 835326464 987687687 130141648 443856223 979953796 980551866 660814132 724844013 453552440 458838049 585805429 592441925 1495434 650114581 197136722 583492033 974036296 979135936 520417127 568481878 555644140 842334109 578891629 875744503 443197483 913358180 465980567 616205438 632056878 937433970 585738825 944394738 516643319 990650619 147094958 800227475 91732392 992979125 558812019 692481142 911305865 973734427 468687839 966892744 150711268 903499703 327822183 410041466 625985789 899193452 416273402 668779276 527229881 853691420 272974142 507320893 706401607 712834915 577220604 913531971 322555754 533820966 24722352 643226494 18591178 41209407 917471405 989232724 205106330 531663529 753195317 768662636 408757547 780338144 28969628 656225629 680947584 951207417 245408036 533064296 601313310 986834928 754243940 940573999 763572319 835368613 515832977 550464902 111964468 116948310 34797505 558159224 408579173 505740761 466367277 619309219 515845165 918349284 652545032 931751741 980684148 998089805 323492086 977426697 698121133 974839716 913255668 924777249 384853380 710823500 695151620 737331417 545907106 569757820 354113317 717337878 302333085 679647190 533755622 748411645 928588431 944913069 476400351 752998604 978501570 979882452 12819554 943114833 323388048 620689997 661457159 669780983 560908164 881194578 805745219 922575192 712519804 904665967 486885195 609385975 816179971 893789791 905487055 910550711 167274118 826515041 239851850 390533432 911021790 990420276 551252301 809467460 603271234 801520648 890905572 952346312 623034384 653628600 13872534 199720144 899117077 903312192 859805294 922687615 919352859 928955370 264615466 567604913 235871609 780530454 611654332 717616445 827156742 913711653 241664144 288923923 38740179 912154791 344051846 904301292 680045646 897371717 454187233 479284689 985149722 990601058 630510434 938725546 993056538 994995483 616027749 706207607 576035903 739287021 943602730 969897965 277943021 551483937 595281302 752076720 76432220 543868024 730270068 968030206 891354841 979096641 168584609 680420220 875367928 922693340 521623379 896968498 120243950 186637953 219754655 660233655 975408255 983460141 202892434 768455947 119619629 332686341 270478763 317119707 52665212 885181801 284306265 381797589 962027415 978924978 664189759 738866456 57417616 401986629 346134157 527717766 977683628 984243747 956067687 978796938 498980018 979127511 910687371 968346651 86926438 99411459 933312154 997981591 849478956 970915853 662334446 906968543 745229471 996335938 18561166 945940840 197132046 667157279 720363011 896176685 106449467 544460354 599737905 716381214 425613767 726897798 327129199 773682209 315758574 634691572 341240390 874286846 420184438 942727148 584891771 614675312 705749141 760162848 861447944 940427131 48564827 217512487 179610868 202884478 154055942 628795830 758966625 864586684 205575477 607130603 668641687 720134971 964696985 987451203 578936636 855713919 882773645 925577586 918672035 924223351 881279944 961826664 953947596 957969499 422850089 948811734 35096689 324843782 283123804 531336344 312528273 401509986 671171502 834697589 922680103 939917421 977579374 979058819 716509382 984066238 275091561 479924726 182473828 698038381 778227813 939958674 987359830 998173240 52629406 558238458 751651931 897788922 843386484 868739264 778279207 977667898 53418345 845079182 746828071 994561296 822535948 948607676 400108076 553892372 87788740 544512256 72262706 852113659 830060328 956196626 101783027 747042706 638140734 763315101 648099497 882957025 690160039 972200860 513858785 528675127 432843628 720143639 774160755 805722642 503417127 540555411 777887615 875591949 57130945 966194610 61227648 679970681 471125025 700506994 558942794 592130374 308371188 558860468 338034267 542460811 889880661 997309545 967532186 982248763 58102256 624962372 338241244 363604956 461011563 966535159 448788930 543363421 120963051 963782520 624141955 699069146 677542725 782638063 526173150 548561153 879911389 929787653 445828551 617447930 914405939 950887748 209807924 471628875 814874194 817122302 540631789 877042830 45865685 84269296 675981558 747401564 687736371 818217131 129982466 244356839 175145069 463578979 307639239 345508192 270408218 472211805 750144159 899253867 597547799 861543496 591266014 650647684 262043009 276422085 37850617 256843031 791209472 914721206 412850249 449600736 424929911 812625647 871722676 909670310 484302957 658286606 17090383 210984371 280394692 744611394 385719163 578010072 240446364 253207516 118597717 933180335 510599880 600388071 688624643 972224020 12907364 85899467 219608688 398225784 624072120 702631256 75197174 121384966 476568517 775275041 393981257 571202601 339761157 618887597 368893294 718341348 40449975 322049975 849099747 896561479 627333790 680415585 881252943 959282401 716212993 741014424 69630562 968032832 358880610 415376828 553589488 674899200 779794638 991481094 341185678 787918822 60780026 456631110 933034816 990975323 408451736 965697500 968919414 970475814 465658200 687629481 691716486 821007319 232142783 906792350 45043037 980022930 906177057 919847614 536076546 895899670 392436750 441804369 384304612 820163900 34872811 446430412 22075437 939551072 181005671 403350839 338606216 463686712 418042150 433904729 167481406 206854783 684933218 794836548 113564303 700910251 885444385 956572333 113933723 814862026 461036784 769212500 701735950 761369081 293559803 843859238 215223112 850287224 172182438 535817018 995530318 996042555 414062208 692609992 807209951 966899542 353219526 941124414 761326341 998590870 90957275 744635892 726277041 829308616 626180232 788592557 330813539 525898702 627675786 639932464 182814275 868872671 137922801 619380457 728428745 826636058 88343792 575714702 8019292 519162869 569083225 672879777 358509230 608260032 543713707 601737257 155881437 300118727 83461591 160840767 496144225 563875172 121787868 436382791 405404476 547590579 185623151 491186691 809433612 873644018 711300043 861890155 459413177 639415744 917419760 972798224 973243297 975765579 106678183 327294291 413272024 756017363 73142219 331510166 469899808 514125540 790353462 887512200 729956312 921341697 784657673 824843838 876351458 924588255 409121051 458467025 747524999 949230457 715469051 920358925 34474117 639215488 550865891 607872852 50247762 95159580 381161954 430577297 256786079 624741561 783185966 996644138 154952454 247788187 127515801 764623288 824995569 898814632 719215229 806620761 809561885 827538083 904365758 919870748 117239266 156869887 450107055 828258950 775576331 867898223 659134209 967481567 863953178 944077153 509752118 745373430 678975408 906615868 685709625 781147138 927585848 994408782 40766057 133210613 145541083 204434668 219808642 302217386 403532717 521089913 332510955 781118782 690355461 817165332 908747382 939724068 425651825 868458652 904340372 955825021 591059585 758610299 671415576 713985362 387586156 747705920 950627019 980972002 19466670 248946008 903923537 998152653 34426639 378911114 906704581 912589764 215021629 601579012 827657729 903253681 33649941 160296868 486894422 550958225 480275812 796884599 292462941 726990130 703327520 825250994 820071256 912857414 750209007 855463415 26190407 286288262 181635514 668957723 969583580 975965110 774334129 846288871 89129064 754274054 254389669 410497536 15635617 903345293 334107054 515794833 379057738 705266714 916412497 937057316 927693806 985704198 797449420 934772079 592895193 647476948 874667706 888727271 430468111 852160377 320072588 419068742 457386298 617018225 152665853 936207505 406007818 782694900 717165312 820091511 788257248 923665217 252035471 644166918 523925906 890966336 551139860 880937501 569861359 941118552 148184060 158132010 527692703 983565255 878561640 997788932 880941404 958290020 458424833 911621363 211331365 614404209 403982905 848287627 684535315 721327322 357749446 455411628 874267853 950267940 525113721 832227114 970963602 983483538 422998068 591230439 522634298 984352273 127844264 587826652 271454085 808579958 877677844 880357420 710169878 718299532 663926242 718920987 377370736 707209810 6420137 265825761 632581999 677828521 936853128 973670733 774474785 897057387 514450288 691509056 518445747 625290436 745339825 983080195 201800182 698867515 910083601 918597299 844382251 879795832 650597783 697237598 479756484 527352322 48652025 643101088 142662725 279265187 667463247 840149141 169194759 207851945 713170882 823128878 557809530 590566621 646746093 714252356 628944245 645366391 396983356 898069379 952578741 971845171 364812223 682172080 547272692 670538748 205625990 895605923 68729353 968065312 480680255 718213910 935408759 981090786 324813413 889824236 113124519 434931329 370730792 372210649 721188098 850080737 150882340 509042228 516259618 549286348 203833466 541284370 865669571 899672084 181768178 772371057 435900040 774096483 663741781 854133618 483975989 882346709 621609634 821327796 626003798 881528369 639660700 892051435 808834289 990407175 43068765 565863580 178718001 569104616 292670717 785344859 163998332 648851017 579610205 693829960 310442994 435237836 400745377 630068496 951459851 976177510 2148911 507297907 313975606 848659022 136106120 857291186 195938931 839416294 175467258 481590970 263366142 384465913 652809416 907245395 441365852 934441206 848493225 995000373 800895944 843792893 642166921 758914241 458034146 507682926 583768376 674989282 39289185 178676974 570581805 665046621 91324121 945129175 643918682 770066046 748753953 946783019 311359076 326217464 504058704 775483642 497059879 661633291 381484992 644926352 581225882 812732470 218663991 223792601 717574651 952935878 944498286 985410518 994203633 997778473 144960474 676210404 1689169 114006291 592215678 656528416 79164049 269957280 448544594 662707899 658550976 693638167 275594309 995719026 112649251 249683067 661201250 775925854 186927823 218541476 739208769 749911383 125511992 837509853 11232276 990204622 598330757 654264444 185469207 917154183 70682402 216356482 595901685 637777626 586906220 874907745 23056146 916008284 69360790 892944100 265694035 726422629 489309446 684150589 678415624 913776842 570290486 674033809 563068527 563933256 780983629 824435542 606117913 844395923 90209237 327044479 80351506 557901749 671405783 791849061 49751394 716676977 818009786 928650492 848118314 988770505 834874324 885707408 255035274 903954913 548599510 595056565 618278602 646648860 879075594 931190912 564327390 588989635 405544770 507168409 799606231 990180439 285708387 786218581 302704533 724890212 93779177 972213221 922402163 926014618 314447780 606168322 130695362 365284830 520594042 945820281 613624035 795519455 198069467 987518846 693122062 977894953 336392664 934653186 883993504 892921410 177719131 248405588 385288554 807508620 347547113 683886953 443342407 457655325 25783521 792711901 137006787 819310930 62609337 391990207 787116829 812818443 991702129 995289529 903223445 920873444 89599394 232109858 700501101 916902046 646598344 924046935 958865215 983340202 625419156 656229259 979783638 984178629 81037171 924186844 437526342 956587253 21087839 423876709 504400732 699152911 261501373 341376580 390622296 560382666 428020910 821185454 901758298 929832683 159040671 608553277 990790787 996477391 646810050 669062050 958427721 983313492 501420188 676442139 390955795 769372817 241518004 751774356 883505518 987100975 753470388 801891327 693106340 914926797 283711953 435358740 198559907 298216866 925556685 993576050 554084569 697329164 281210453 451948010 363063281 479544742 370226816 452165323 253150535 715936835 819835089 896247803 974542828 995771807 470863943 977558387 793802484 887794494 950102971 965854048 488861009 515358881 507107754 751789583 996840975 997232056 3824038 966309693 858945825 924284932 440906331 854186945 832165418 853340618 484652637 925556642 637054859 794257732 448625200 568917951 499733183 760806996 881610115 918668217 21692295 570243839 256500323 348574447 269968079 367938826 45237748 943789213 365792963 658474462 286174351 386799465 757658061 899409447 177522644 550705416 698886279 776843207 38106164 689484371 647022181 658682313 489771635 763917299 449590878 775058818 332137212 551152841 344357478 944300374 234235103 337830491 973054064 995856744 523355792 860791042 600743535 952829172 777872668 971661695 404292403 503486113 507000041 764127570 113009367 462327362 505652224 607194593 418011045 505808059 589643021 893386615 460122866 594024103 605213538 943649441 280044770 509994178 612995743 684871812 398143450 924745217 413267560 991897178 756981452 845561294 152083958 218768256 153280698 879872876 837482979 909506867 373168865 715159865 830306149 916173365 692837405 866019871 439072404 962494649 5587794 864264010 515035202 975031898 727538052 940622795 203820619 826461351 785412713 834214862 642197754 768008585 902144172 955792954 400637811 426944653 589684260 791768260 620255226 963574108 607146962 903935584 67894662 257620408 791968569 970572231 149403957 628642635 733403551 936696542 244200037 521012248 326778208 731068641 500717456 581466383 277433629 947387472 357032796 621556819 538673733 993610710 633102516 722583865 289385933 580560812 61686456 159151740 701477858 852750989 128951259 187035736 469737968 723773372 10896007 562777392 86498057 574166347 855105172 962037780 892479018 904512778 46426179 261187995 290687475 944479379 149630469 962731442 262254640 470302717 442419950 912110835 579302958 719066378 46827156 581761888 631041393 925469400 315745587 602689350 159933998 265656946 35647616 957762618 370629552 781971705 441118701 799182542 541258241 669426795 198273970 951112014 15499884 428414344 706843865 870822335 858752229 998779026 717434227 762954369 897020400 987187296 226585392 630462610 691201104 798033615 943893926 987007485 161870787 472544557 146922016 488813054 282628451 323332796 142645684 900955970 836602972 849055175 563704055 987593164 980841584 997873175 564142603 935117209 200887349 995221683 166719649 467284986 414946443 987813353 310310291 531974041 722790897 873796438 739586857 809337630 213387563 685393999 185868641 989720497 578402322 727829020 599778242 748059526 243026666 394113982 131736513 453239207 940806039 995895844 616433505 828954319 694239653 885284338 759491675 854872437 460519882 542507536 162640878 705754897 469339584 764767701 474932752 872781975 941152133 945151018 382255790 733453026 4375098 428562867 695096017 910362230 861975081 900958535 131683632 989885730 693011705 731584466 169322488 970914430 142791357 989061825 283112746 404024895 399710114 941601259 693679476 884304754 538462644 880453666 179519111 187082920 995961674 997425821 422831103 802951192 310592008 710955343 335312595 713005814 297585897 900029873 31168115 768837672 686620657 926256269 988434972 989157730 523028874 959013350 636097503 947141646 586468745 634587507 169401994 380075045 788357762 989373051 751833545 857780310 103776497 319262008 800762223 803167082 818911230 845468962 74064984 154429103 389860329 982984179 322082371 638656433 37324122 84131740 848400160 907939790 927738468 941381563 792717503 827224510 523810892 981424755 770716701 835289295 573744624 795279480 159881548 636886006 447776495 578309485 20069409 60052972 725858713 803532633 238395354 428610489 103951567 141701973 767620199 933243716 564353384 632138954 579258477 774837388 667740981 889229144 386719145 664811411 586052500 666752137 522913177 639070965 869951341 893573291 717443844 842541094 648293777 652120245 573495421 926426941 116534569 676779194 387511823 553911040 942912421 998257011 528300456 780206900 990244046 996026600 400005604 430367145 108023729 966758997 711430049 822122939 305928962 679138526 966733788 980604998 178709363 435662685 637710835 832690751 356493982 793655216 285645128 502323638 297218014 945611681 832669615 948370725 900557535 989413239 372143420 896542210 158854953 668852603 130713120 358165169 869006928 878420046 885589222 901979582 19562268 111078337 281396466 618033731 965352603 969645660 452996908 491088013 377617340 781342878 87281347 445858008 873906699 968526909 401958794 909448592 641273003 957375118 569529668 695549555 398360378 703061019 536244674 895680921 138840588 888746691 307477786 762730634 600223794 843521097 387071270 485881709 679848934 846641461 698935438 729084263 557580110 873521874 957565881 984923130 659464380 984511150 34820370 519576245 8039269 324800930 353825426 956629398 449488361 931741142 273115145 927121370 77625821 804901091 773594206 789290109 578931060 593048846 793793856 933521613 947877980 966810861 560140646 867285568 837773412 912529508 786312277 941430519 813333523 901085018 805857658 939417105 195775812 746912739 543863289 646946878 670570070 681877205 84603173 457369859 810131263 981366835 979596028 983325239 864302006 874376742 260613708 502017430 219950344 496517905 82819356 180885921 850230178 900257819 405064613 859673283 759271813 879819305 253736032 444209630 591567886 658010084 856474241 891602055 418557863 775547338 466783937 894443904 687695643 854241937 669659543 684570279 541124867 637191157 176242877 472572967 676241929 902711200 41734816 574822759 773165917 904000994 415739118 640265921 982848647 987001242 876634575 877901993 500833364 889434680 470100633 621518657 938951286 946268776 674807644 867524545 268748724 490981428 48242624 268280361 939082079 953185654 170369436 312616245 105547332 249023052 776355939 857707310 631517346 876378309 727387304 976776625 529737670 536532864 801874035 934827498 64420875 555841023 307101118 457474505 321886877 434309706 857231947 978977213 529298877 621992608 552112190 852353849 17765932 437468272 176257236 881385741 894143679 913879208 582341355 801472320 207065711 386551730 282623651 623325439 153739882 771288927 552146262 916116338 705239383 900051368 373502818 661637979 430846967 571119999 301223553 573954192 572578623 853202981 887514264 922198862 850877243 911419267 23298232 461389648 35779948 994932629 622039370 898239723 989464891 990838318 204089416 743658188 849603167 986037812 488125998 834033537 38775930 249878514 249090091 414477062 346278424 524712396 533256220 864089768 954484349 986452816 408186832 450592667 653948693 891370211 222293839 659946820 226669385 324365491 746864649 901431971 809484826 839039801 800638835 847276787 228611455 884195525 105382047 987407686 215173041 280178469 168764206 758564521 322563009 749200043 377152529 456403283 933267810 957215206 811058432 988082284 452261182 696004050 558804233 667384616 429447626 515425065 595057277 730622227 834418809 914353626 996519067 997502931 215634431 650662976 887672264 939543687 513166622 709668806 273534644 881532199 282042877 947061184 338354588 693214697 650334880 768246866 227893856 305847368 407686225 670090086 260617809 673257108 330911042 832066415 514297770 611187162 364007473 712677373 313663160 694270539 116775769 221385531 745439378 793285760 545851520 550380603 849074107 945597117 203688337 257526291 120312166 273635017 164970882 422948191 326254426 611109168 565140170 572332686 982520435 998172945 733722894 794739997 854156606 961462217 899448845 932653527 501410594 615387770 678809837 748413293 95682411 515525981 194284410 323615311 128121426 622020305 643967711 736838837 847749681 915398080 325097255 349386555 201716126 976621103 303306872 450041841 220033131 542345977 394816673 934036885 497074622 733683158 527491141 920662856 961232415 988110073 786653848 957440175 63244420 523810322 375150529 919831063 758501180 993195341 469071005 628784195 29291788 684146732 261534620 762660295 905703083 963835239 378157444 881964010 428139921 442364562 630823027 912568624 524206573 715532885 712320704 978146190 844476677 900969032 440237866 465630010 521584760 727004723 261298671 714846168 454156433 940747327 55085009 257729268 269031853 649016267 5304430 467805001 621733980 922969336 791955085 934769693 713380998 810280831 129722210 403855087 324632315 326731625 831905907 890762075 709827617 939549062 144325927 403881436 613677390 831323327 577194762 671807536 790402056 941623588 659584847 699804622 990119646 999000067 121085103 725513730 542697479 897972263 535650934 953029363 928637104 931205917 392853634 683460376 129621678 598796752 985853976 989964726 66420881 898795420 301547387 688811286 569423885 821630908 971789242 975343878 82955920 160233914 808583975 838414108 934131176 982993128 500563978 626073723 906151559 917216997 483586003 967241883 419988794 598190629 299481995 965446859 824492161 903346489 684350146 880740380 225051213 972644459 582198127 966832440 59077 421689512 659141910 865124746 96047366 273436575 434964972 799689388 876492715 933688864 753801118 881168334 600886812 728735694 570323502 808043874 348472186 879117333 191011796 984104804 361013944 949048159 975404544 997632429 645144672 662356048 827451169 905303340 121538632 777433505 161193308 960520382 758767599 881569798 724525421 855692562 868675972 973148905 345432279 619764726 534869298 667155272 58698689 585833861 446746807 858960943 556506156 817114408 669336459 813167034 574742265 976150773 197040114 511892063 874705489 955035421 235446285 312254376 160071071 252512417 826748561 970048068 839547919 893007647 757025177 975546466 481820252 646702034 130172865 303142866 301678526 410239933 725991552 975923055 30429068 414488381 585807826 767100324 898919921 965923330 891409967 926614444 395366370 559432858 496925419 706180090 594275676 653807735 471377250 872487394 758745547 857222471 380944409 691467403 49021856 754481824 125422288 787625586 461655855 900220265 893314319 914218452 219812975 711273477 944489440 957192135 491786566 603876066 433457842 603370421 879308735 994572563 675370626 995492880 921412734 949798915 840491412 887766605 380728147 482906908 492296365 552996157 141570820 532814699 378630956 598265574 542598727 705162526 929215700 940174536 813161590 886721576 922273988 995242944 952659059 984105554 954724962 962788507 161751287 726127543 709247764 827438990 879178747 962665645 276417226 776728133 974524827 976106317 642581749 947090281 766653406 807921621 228147047 592811726 906723031 979996871 256255448 724179631 475527911 977225572 666494186 875189565 231826227 909447989 334626750 853293633 913097005 931688063 969128952 988664096 180295880 221060565 720906465 849876975 962428979 981126150 276966117 962671852 835991714 861860483 860789356 978877869 234823232 944686532 287616402 994194347 644961918 887805588 710673772 785298106 155464637 896731021 605593160 767004124 280596079 570665308 281541804 931343982 537378565 808403830 539524401 824443820 627502286 844293357 178747068 570698514 592742397 923948021 485922285 687668188 373767700 909063494 319883697 700534690 446225292 889580259 33541350 845091210 117508566 318999317 910421803 968966983 776131637 996647276 84490057 452015975 595291067 959787294 263830565 509231189 171958616 985012923 232511582 966799829 208357505 308620552 660024034 894406079 651845092 798275927 173926814 306413090 621443001 876371190 188471436 689300908 180164634 969373929 367917563 656765623 473457864 575161189 125834425 429038342 745052464 844141924 520734452 827334621 341622852 632739958 964355616 996798813 450964430 772429062 816809706 906966029 169259802 774476022 716881057 961460379 197110997 547600843 606945113 926082383 358933080 815645864 239076472 651540934 855806862 927470470 827611039 973761457 753763597 853512419 233166674 342782230 922898418 925589849 847384093 965806617 129689821 751897506 957711739 962410533 925057387 988500832 384746046 951292435 730176734 951366991 341618612 626703170 72563692 626861841 402367340 811965758 129907580 920779258 524471318 818907390 701419376 894810733 438344962 547219626 815046391 854229706 138407335 485437477 365026941 833510698 792741740 964215750 537139233 624956079 473002037 497717456 677803725 861779853 132622326 259687465 503685017 965054408 361258817 790684038 726342099 936039518 947598227 997178293 256974897 890037121 904677844 906816646 548198679 755207351 978117212 987519697 50242599 444613909 776624457 916523717 486143856 490931792 127254499 850158465 156523136 491148272 519453913 622184802 540908641 594559080 325096127 479155703 921206619 942130921 595520827 890699192 299664831 363090120 317678630 409708378 497530700 864959797 507410031 927800134 835077639 872112176 42255248 502046736 837187577 889831809 293512102 863299186 235209513 600703237 979302427 997238102 962679330 984638518 388907440 515913907 603933387 702482849 252048815 652710246 221524440 928139877 314811538 360662789 206108205 570696817 178457249 728413633 320520949 895205497 293011051 816322561 654104592 741143171 199577626 919689795 859246745 972984103 639559786 918781046 638054681 978427966 965886928 973657943 66158471 787249639 790932126 936064088 377450765 700383268 528169148 979036542 967495857 984171142 721103013 880550769 438495917 845694578 294919848 661381373 496895504 850397413 592733180 836303668 674269167 787400449 766594982 927983559 296241340 529220642 763433774 800044883 246363117 827044857 972983051 995612593 853599306 990100321 200741582 399746485 868958203 874637849 78343851 901415772 449907114 840696861 709386284 724898579 639398833 989623204 610248032 978375541 6974876 361669716 526419359 996033566 735303041 946410226 38697717 601884454 918532017 976695633 7519603 675562495 343810536 768775418 314173273 588220496 557900829 745177558 377133564 509937680 722534627 754302620 723257391 869635876 447129658 548691315 279697716 360990105 411446629 685426555 578550228 951825172 701737890 946288086 426147944 508059021 809632773 844277365 80275522 716840211 947586204 983155421 917955087 941082241 826394384 981436309 614359688 984142378 329994799 981107195 919249481 965655637 266031305 670000070 355658039 833980781 346022848 559193779 864357074 959173701 639182396 958590548 914425224 979834645 154579779 324829001 577307738 680290831 342976819 356401701 908357831 953691361 864727704 931621039 628819987 970713149 228729343 815161843 501508364 766672364 780308961 879236189 994578488 996698214 378007055 593949246 298461961 969170879 367442475 995458522 414415771 670067691 575698367 758426131 485177791 628346693 474705984 803505939 138588542 653957421 551157761 781599174 798238095 843900486 789762150 902824558 441216683 632228058 307090520 338063092 669455923 849822984 708494724 831370718 197099838 363087467 275988390 701589580 52359727 71430016 399158393 401113151 720008300 778833212 731734357 808912490 295994446 502660471 701582671 793353232 537604364 679846056 910151271 966310823 459180388 758985072 478820645 990475907 723228553 981165292 873533942 986707343 464197624 692561064 140164774 376330946 308218222 796118561 711233800 829953395 417566850 512577030 519278458 565615796 135825647 348246739 27689997 268473293 404149738 466571709 612762577 741924263 464715625 590999790 580743585 764813045 10941553 873080990 672589857 723279559 442766875 469910310 772168363 890269476 180942967 226756589 185749176 220710441 186851148 595272889 738575867 910157664 20630294 990432377 25250732 953680338 949359810 995656711 831332808 922010049 386960669 537685808 180213855 983531070 16480636 465810305 297063804 710599249 80316199 97770157 222809830 500176897 45677012 346156155 95370377 959929216 137355834 585266527 506960313 976069889 173174477 220456362 875682957 886317998 37054168 790038174 145760341 839166416 327329550 384433889 711435589 746924488 484990949 789945210 517380487 609074264 193011048 295520729 269822340 435261796 332364325 582505864 472654988 845297055 248989501 358975601 163821501 692840715 52359883 324569518 601628248 998609984 847736136 954156863 745977217 947716917 280400793 522792018 905735706 954735606 868095058 951014011 596011593 864991391 795679437 896824409 182493446 258446802 483925166 860977638 872213606 983011828 69986500 497902336 267642701 884016556 85949382 282841634 632465721 972466446 549245834 824256286 499509767 588923422 422783438 904242863 230284688 415027731 211019581 471495018 726342913 878138752 920868437 979611153 958697305 986053456 847248602 975979134 471504938 990372698 826945496 954154747 84478720 850300299 976949154 989925395 188867197 657072034 963791270 967984592 722997911 930978595 224799431 255453316 707546236 875805514 128066188 574105962 92343466 373897720 896778804 922491310 400282738 777800837 406351792 794013876 832690665 962346981 639403124 654062693 359292937 983004567 961426090 990346859 895660571 916225241 722478422 876975506 362121983 991071571 199912314 852895615 714447662 824390252 132162988 904836750 320651649 996257062 28961590 285045128 851561512 954491064 567295890 805281892 951124263 997312269 921503624 936303859 269312225 528202308 933096708 970583494 814157937 816723840 830536207 859288663 834292755 963172720 507320312 601841258 99295904 710546734 455367807 643154218 906615079 975042878 69356322 528913442 981468527 982723323 772433233 820760985 586166483 888940387 240800088 375938705 994073933 995580396 90112773 958476977 43452244 831274599 746616317 960865452 746123858 808984506 956962576 957562987 345269153 960597558 990963623 991875143 510723303 726057555 554003246 754394317 260394211 824139167 935284182 945577507 552673282 661547336 864784399 940900937 422591296 578990159 759504190 884777023 256699024 699611955 236108834 373984304 622266686 880337434 690352180 963003754 428811739 978010438 275079211 792406996 218451018 599816704 8530102 767010415 422905557 636704140 29273580 531124316 217865389 827285072 875925264 943787579 500505463 741200796 92670564 550724228 836441880 909566538 151159737 701076858 446468204 898190670 943754750 979039074 908989951 953567210 409562379 934588026 941064935 945519858 416489113 705748504 553029081 858351491 431834500 888789203 218834047 322912534 116376440 942729109 632528646 742069873 494372042 904374137 657588192 961669640 9049712 304914873 881469478 883056381 40038485 737514144 580164569 876152766 429707923 634421487 61653965 930508787 15760506 195059580 84963223 168745144 646382098 789781347 45417547 693127114 89971750 814991520 492770366 993558044 624704490 789297313 711846599 836622595 80577747 217617655 391672786 673136795 299171395 531206806 10916165 129403744 111834090 674010383 562870909 706361525 403875212 954516578 805622409 975102573 711455569 980840337 687755891 701134349 379945615 757727215 623912452 753478829 547557449 971164056 519427079 624140624 20008771 394092324 60287706 770819066 139545696 798710267 913384551 987612067 727457051 994128517 534157813 657242925 240886679 831149767 580128374 696092872 964760195 975663512 235809157 688273834 360232087 997103790 647168737 893209828 54644239 450234912 400764902 637528315 503844042 898050443 8474077 520128825 710716425 962522163 539209970 864927453 405166576 528250423 982887420 984970596 625990072 717399163 466496643 685969369 30833809 47346008 851215986 900357850 90509145 722643701 662430018 744420368 776541716 904112028 719471542 779949719 878908154 944395002 743803639 762028730 611278375 794437503 441014222 622534483 621332963 755295995 572223905 622073930 961229212 972064072 548996539 587807495 213441839 335449044 382342467 530483386 170839773 621350296 691608777 938695574 973831394 976690295 977331151 992814572 40776433 338340125 202133961 457631138 579642260 671446761 79881040 739708291 617266746 635509325 605872816 864043667 692418753 750013094 292161122 413249017 776997444 894378538 434570285 938371451 591999905 643211727 312738115 736994373 181609535 939703063 448643279 833362975 340007434 675026920 35432619 719356635 216339516 966265758 258169299 491059390 354169176 600060468 421534696 942599363 707149719 730217160 280509109 693258690 898078102 980488329 699004057 875505543 53499458 873215055 339434273 759495874 925041656 936410003 562528410 759960864 735613061 960831002 653701594 785561587 232193509 345780940 452979448 627240949 330510383 581813763 928743400 962380826 126089695 220330908 565665510 966875316 463708017 909728424 671314258 948744742 196782558 741974139 303270517 317978033 417295968 829703237 106943215 660893931 978151817 995486589 878230436 924504572 583118027 867670035 101074207 826195923 421612796 472613042 525724557 642396438 30653722 297869998 674683056 837434089 273170845 776251263 585135411 649307124 215744922 224007819 551491619 655386154 253861955 839986793 451411042 674669092 118349611 447697190 626963945 627554822 54190473 509559315 834567850 992865741 164744908 557589124 653760800 788602169 647522604 969974615 723682501 804263490 664338895 801278514 800334524 911927894 251728339 805669804 720590218 951237731 623462281 779067224 403252375 652333059 305167187 426390971 486744522 553267984 340643948 871647235 731450561 861924772 962238237 970067838 567125227 620202518 692886437 851415523 208279335 807374346 188400465 407542233 249318646 572286902 670129436 928761126 870639160 911866952 144469347 181467682 765882241 798863080 476064631 801836601 327381610 376783052 396815672 683140782 795802058 968379488 594210994 773814026 938810889 957841239 626564229 686359120 234039758 496778093 317245360 395106668 64994533 285349528 601290053 886186144 300244953 669059587 933266439 937359757 908176338 975708924 105213013 205194338 884413628 903271068 45211470 53484156 908253856 941596435 452454998 737494726 747193888 912388968 380333226 672384186 972446114 998979498 409398966 717951299 854243864 976441004 919021761 974156732 422094761 862042282 756964517 824486583 812022918 879826392 510285337 813992942 966831792 989796243 565622816 593881591 107939584 716817168 176859872 544550820 732855882 756387423 194789946 864550426 713173117 808393244 145084369 390779382 977401503 989962086 788164101 862672366 31755897 541342143 364420551 759662273 279988783 323360158 229068005 742908861 702078891 911000430 14464603 421358914 114863227 889251755 754888675 901577974 165727557 779734214 39835065 810117756 362483406 903027552 104656793 479928680 94686444 705807631 585983052 606693922 825700336 998819246 983992287 997238738 237486027 538429234 890778078 993090871 122277309 544256008 985896948 998700173 661561811 977375433 865505269 927113944 48946156 928087476 324404543 490661278 786101269 803906562 464474411 762599531 459896777 905068136 125215835 914232608 86331215 596521995 90637383 898625790 714100057 984207080 893463789 897726273 837096133 859669643 671089872 992162101 741713473 848162698 766131317 923715035 843923532 946636021 54092652 935447373 430421780 587238955 544725308 795158439 151263767 667945601 613472454 769270757 240694393 996730211 495617993 673794146 565829474 923359562 703451773 798576526 516005831 757906385 9795850 381305340 660480780 868557539 597292155 797642607 655525026 666371141 994629232 997008659 46374647 586540218 618548207 815629959 530995005 676392805 273043901 662685806 163522249 717603207 211265148 389931982 26396482 913542903 173376322 359465993 820573356 854957026 159039213 691440407 453913580 892177897 583164971 727340949 903015880 983030410 193556898 593786851 792595154 848149302 996387031 996519483 260849892 634933219 160697498 192122765 653987638 798585218 117914920 584868029 111846444 878854458 603895562 881406010 54898159 975489288 645604852 724103747 141525842 523328352 344365643 402532116 911942564 975245112 87242758 975587756 174860708 792205599 360986765 658221857 690042870 725348505 266107061 677416727 106536513 892795498 618921818 850434332 861796471 885553105 347716271 632072946 519825927 748936360 786413817 794010327 877783057 924546884 173538319 887853868 246802402 305981203 529253615 928864287 480642319 689762041 241474349 557837066 67173019 439147804 383617248 494045023 350466323 497837917 210496939 675300595 82301992 213069820 254941337 453113489 391687819 961673473 979763282 986384754 245409531 820212823 607929909 630506600 452067253 493872643 820528394 998461246 326565466 973212561 744369276 796965059 84027343 518810952 48028164 622889422 277575840 639658907 837215524 998541500 367714831 947415120 111940196 980919131 102328621 809493916 992606053 994583237 461444881 702455433 950570690 958800892 388805756 586933316 734207347 997632443 613020109 665438748 847555726 849337733 603938843 699558782 405759957 859440012 874845049 985334192 824979503 995099106 841710514 929407261 73442508 264011045 417518048 637096410 888635888 917551592 747395864 882792037 468638862 606517257 83363860 667207125 466165327 795594212 856047178 983356694 129094907 710215148 626765532 693343966 989795099 989924705 873611012 880113323 612606538 772221938 408440963 942959690 273230030 451810424 132133483 664372116 398207553 756679654 957710316 982131495 137389349 649540130 944082000 970333931 877573320 954905107 533359989 901152074 840979360 843721508 134093666 435737396 186804293 248873481 742831630 924448032 953849153 969997428 433839031 942812735 850047917 994728491 362215789 482384523 918662379 939005639 592542902 903118528 808412190 848002992 602221020 818415771 788659876 870792496 796455582 882577238 186640259 266117158 91504389 696307399 317311839 409300755 791339689 990392963 634707023 996033498 646730191 928011560 364262776 887951184 705971420 831054977 445644996 941064094 936494705 954084492 67362588 876073446 806920712 829035999 531635964 644033911 462750643 696047319 238649477 511642744 221164712 925383155 456913994 522858876 272996562 985556654 519460068 607068198 434872899 532816593 34231576 716614338 685923243 800011193 134648315 209426638 576702589 748787715 667196285 850769106 160686188 819482942 830639010 955912640 544844504 829655444 482051417 512452929 689164664 695161419 92051791 113614151 332001858 559329465 72711480 383211862 651704002 660028086 14826675 855431785 946126961 983488128 625297548 778681257 689062029 953217992 80177731 154206325 799166202 926284930 927682864 945038346 798503216 980681158 646810987 676113033 302664123 831268958 596977423 756128021 986489011 998459673 145787429 294756747 507438287 687884913 918056544 978514781 523889981 744172558 716491884 931037758 852740507 980136125 831421214 976616827 475882727 801703385 338141064 883725268 615944688 637777548 641347088 827771167 664814815 977731482 18555047 341910516 416039524 820125567 833680626 998197501 790111441 905885812 538013923 781853239 552974540 680615275 935443148 996556522 817236504 852298710 346983775 662880966 909964139 969568341 827022242 996192540 337252619 893215750 388400858 685574428 356222209 622950886 96582584 838169716 1127292 36245816 601133031 700585162 176712244 192265312 528097025 616707853 969041965 987041838 124934842 436003230 975694340 986060661 998532925 998638608 507113137 618514456 967853680 971953470 476586614 495336687 274125171 897840147 450639096 821509730 828824859 937160782 384566477 403780838 843876223 965719762 854929851 942994527 619802002 852660023 137560610 305709923 419861756 526612399 48073390 453402896 902055314 942616823 435441776 506254749 951053111 981947537 348938794 786210640 434247346 483403447 318591464 697326971 8406864 394934525 974936940 983781497 930764246 996767228 753980939 979936399 101011603 433890464 499719737 566090704 79754759 747347274 489354029 588721794 221951159 937525353 609673459 674477435 949594214 966379160 932065846 956836555 895468482 977969576 495279426 664898949 861022922 983746717 249159830 354868807 331950538 493705001 523742829 931011044 654868234 892235197 699444036 851605983 81273861 680914360 622654430 849538849 461870416 555981102 295476306 340734019 906088743 911131563 916103840 980486541 755763481 871360768 146940128 268184550 177119860 223359587 53597770 741673582 970617049 983279338 807783270 813955955 643532608 916634810 568244915 754653019 495434705 940523842 716326272 815560162 142787690 516274834 120268295 192366383 614479461 887025547 614682188 857531827 825570749 923729980 734055975 905875924 570998953 883170614 121148894 971063820 716377571 888590973 334529700 661791938 127796636 269590335 820082998 877868737 52501962 687787728 909253146 944191229 585878853 862665901 458414404 899151406 6734755 571955126 124197262 845223323 959232546 990342602 559421982 796549973 224561937 328453433 41412861 158079267 309566241 730051512 767796312 817930418 165817478 590557098 624251127 676126771 592179107 679504693 274364673 931493239 272290557 970223779 869349447 944849013 879822659 920935190 596196453 986788737 512322840 824753346 252667733 533392624 323779006 347961623 494616542 833757348 88147616 909088954 905226799 978330170 228358325 772602578 713907829 757811713 86643541 194918407 580146698 955427253 4546960 117851909 85623053 375744533 968452006 983698367 420591208 846553003 242369602 831156247 356285461 768767028 830727402 921421734 943754355 966601421 316334688 460933474 990923567 993896100 534775943 695545455 465285249 997641452 48450275 378589106 228716956 961945641 470256619 821874475 19803561 863782472 420170711 793606348 566791685 622596604 610473745 982268649 832368771 898242362 138733413 382362752 616310183 708590512 844474207 938589627 74658294 985041565 729250659 983128304 87135657 579546126 402384003 422640135 432179205 904322927 439594720 778144617 817154678 831198681 203814112 755245025 900309166 995855328 877868414 930212595 346458602 954198903 536265267 670785355 94403410 806086346 879423242 903905602 402111558 688825637 911885886 944592873 354458562 684812100 830336467 917070621 263341798 452826797 31712819 937733990 169745942 458594986 83195559 650787059 983463729 992429821 23989879 867680802 825413890 920720302 244152771 606177267 11282488 682638656 746159602 901928973 876532680 900268853 527213890 645978745 162793257 262865250 763327881 919822552 185535427 501788720 709751264 941155966 187879753 843636141 384423180 585879457 501938017 608390914 106247029 381247125 138188200 798853142 868687005 931606998 426542414 877459303 363853981 397371260 484901803 880073627 953343565 962476820 231949157 483421187 921280066 929829051 589067273 906421746 492255717 909842905 39695233 181732755 166643574 943287509 977394344 978871859 161985314 804528912 60554622 288166275 630287122 987429694 225582176 533190012 45889371 769170437 759957832 953391314 102259789 672236826 613103996 815195344 614220683 801796790 221484868 308267971 236937532 835583431 194500013 501999334 940231089 988767142 528014830 766824999 129670999 448141202 408958157 707213580 559907665 845585454 473963189 831809855 82426220 84886069 776774952 824403113 407795578 855338220 541651810 635567136 294316729 391095874 579613689 932348491 890788936 965186779 519137721 938437470 406338220 798009758 882522224 959605035 858700777 900969646 57189517 62674653 773385337 820340173 976795647 984608983 953516590 965424068 517186954 605034114 649611551 885991414 965085141 966113375 560675313 621822508 418410520 700920355 457593039 497361921 256397362 319768604 701493536 717515692 905205476 905941006 815989633 900174659 615315816 643103072 498426589 619541595 699025492 762561902 16651874 280070287 461059855 838814074 977309065 986279494 677901279 898779100 429866853 949924838 761977069 911234523 560782430 796552840 902913022 967424917 26055496 366425929 498290555 538204146 124281457 235727140 766459320 898559700 611738102 617302493 741005174 806269675 389891325 600486325 59653071 314924016 704010587 753845098 305683739 951560208 213333964 624369044 611057651 697882639 536547181 859559099 68562622 406469697 950939326 971272015 803983209 872511083 747369918 847336499 362315578 986321959 378807290 945615634 550401667 967587919 412353581 788639212 15528941 94294303 598714156 629871796 348867014 373597811 275201167 970584157 288959532 894122238 68207777 800641092 564037868 777593697 723264244 981289192 979708935 981933452 347858766 960336043 811629448 845027935 927188940 990936401 628165751 720919380 472159099 996088715 294656962 861898390 237021574 451134604 872471009 958875743 181250240 211257277 735936509 975905933 681577891 787524559 540533339 612874779 528274182 881061032 64052181 145909711 345426953 924174921 754755840 944393104 390278516 748674344 5738100 655772474 533985473 942776611 813322873 946932374 413294135 607626573 775931455 801441550 93431639 520744195 164939955 424631645 605868679 888885436 273454883 587422584 448397922 834067415 867408461 961969402 438259489 920482728 286904560 674171616 495378446 817963888 127262134 167145666 893599274 921316609 566377535 914451333 319555211 997254743 882155027 980837480 109746264 805253748 710260398 965957836 464399971 696339642 977549424 989537232 633753804 888797626 258259011 683922760 908184515 974966477 871222096 895293103 120947813 270192086 611823686 845267927 297752135 913374311 802410243 813104750 528754272 998306205 873601347 911671669 187449145 982079925 687377749 781540238 398520207 811434556 536515932 734393895 143781242 828795073 344160566 790188305 798406570 860131957 223727489 922599645 596176493 876826552 558150987 869952364 647665944 984364723 229184683 811445739 256519369 976760111 106181979 319049179 27361214 741804271 460330608 574683463 309315852 990641097 594008890 781849027 513553440 964095249 68996529 903214785 500501801 733816285 722142901 984038712 463994708 636023521 86211282 447852312 890042032 993458495 325473665 555660821 194869906 440242324 767873837 809366712 723231105 813709921 731161771 786200811 79558337 427954422 142076720 286131089 982561000 992984388 796101774 914337390 3800764 677668209 606059139 612325426 664883099 894347196 658968818 771540374 600141574 956607944 795597558 837555022 384492885 523832658 960002397 983039623 618820031 761265229 256642262 358731511 570342114 576567907 21532920 529849454 988347340 990998835 381398997 698985346 392511213 718621426 621933792 636722301 894549313 989403244 217775177 919123559 260876893 597777724 408657146 450408935 975738601 984576795 903218137 903259043 397276442 803353324 154632639 212445576 963946255 984514910 141819257 740027176 506523288 836633756 315463651 722161358 260915784 589886833 644817071 882855583 128199576 946353936 460643266 767185183 94298160 396208802 701791005 863194222 176656928 927270886 795660374 855531407 253231605 862599090 694407772 696513411 3634327 248982023 321180245 997062436 225647120 926930454 917411661 922521248 867205018 957916670 360318296 370360167 492072268 818444107 702390336 926165899 158316146 165537019 209745572 618581400 300169405 381827599 162345679 660864541 32074382 624906138 666222788 753166209 90162325 411266076 440566638 820140331 179752817 272097759 355316588 693951762 703082513 941692888 118576842 995444946 227912594 683886176 577780058 770380475 827560653 872192888 772854279 916137761 830410827 841161051 773506327 821992950 320918324 750349180 820065027 960289111 126325203 615573941 13817848 629185357 431064555 852527616 110333198 939300683 859845782 936260303 800702315 870876596 340432340 487342991 595365376 813390749 997148218 997496043 477944773 543810157 971935753 989902860 861948126 904151714 580849283 766052323 319782399 869356567 326371553 869343853 675615135 987398643 742362949 904956223 393579110 869714674 494900110 830727851 257860335 500433987 366373849 535540162 379397298 398572740 38396321 237647071 919635370 943858816 409374398 972599154 268219018 440697045 452237663 611866643 862651484 903471091 936314356 936454092 645067514 911596506 784418240 967592856 145983782 574270537 918253320 927861078 986999751 993505642 290329711 860663591 735688127 801625087 146822033 956285559 121378707 327843120 122358492 137955635 904669274 907110510 57291162 416589426 176278507 516820398 324692663 645828003 946701126 986576879 19690405 983139902 201484773 778253696 436244030 864764060 926259628 966100772 337356349 505623343 573075439 648117658 218527 984942108 794281767 934725853 15418726 855416737 121095055 369151135 436709555 528351462 986721500 986965162 287952616 915860754 781670656 910051161 493405162 534891739 842394300 896598481 389816790 679375270 356940437 695899350 145761350 521074224 939223349 974867696 523650428 631886480 317679765 991355666 214108036 541697843 284846249 607008639 270330290 871388365 770287541 981053295 784592637 870546272 751681240 910681561 92602743 620672565 50917055 126092889 696067930 769430158 330867138 440065708 944705483 979704595 5970548 493872801 19173750 510115189 26646659 970452319 331458808 709761107 623400131 940176325 671939296 902711196 440817476 542519691 835959872 984666093 599413247 942518688 317065128 474944799 389935276 895567512 795685008 949461270 395420767 479471508 441599351 585603218 302690219 455165141 903007810 959330674 464592433 683472266 395219155 523902318 734094575 735733278 20804465 661618740 721965706 840333280 313222871 601781297 203983852 580507024 497831156 822325900 167214294 395929283 244991393 399934356 537544470 538177752 273086581 534719202 226466328 580283673 840809929 891948332 100448650 650557370 129730330 700599968 332230081 441870248 687168227 795093533 681192464 915630425 447425396 687641992 564314088 903371835 156267869 157407334 994079339 996554135 660981118 936776815 57527472 634735225 725295249 986309664 507216686 559035688 243925535 930384666 671151001 982402971 713641472 917103010 99208495 407237676 752685195 779605687 851416920 915968789 66048713 922056867 954411698 990683959 534188189 988463581 418213998 427580224 715798729 955931430 338251049 670158236 52936783 654063548 359352332 783230622 900269474 972945303 519903809 883495442 638458597 931847656 615057350 787572440 59503616 705235400 802886921 890569654 688191496 896487643 447264244 941556000 791145794 848716981 971512303 995623337 554832915 885824444 244554688 911431149 161737256 731808163 984281920 996696549 844069486 956859086 677340748 864294785 53924558 510586603 392030311 779022682 482943947 774010785 153016831 525458023 940765953 974092564 176327990 842222576 329441450 767309338 737246510 742879648 285560774 548480391 35641183 347073073 334534397 653017372 555294713 993204226 122231924 619429735 453944031 787159376 409078213 877473220 373817193 852639586 294237997 412384968 386383407 903737907 324057812 827646274 479374224 856613047 553825 840138558 108509322 218138370 870194006 975743590 765704681 817421729 310174462 900111590 265193832 369194860 615965822 660095415 576285329 614155451 447495382 924969854 90360690 866946543 417783997 722410596 590501318 806020713 725418221 743120193 66287777 467486997 513621953 613011607 672177859 816928600 13641391 92609816 75259596 75429533 716959074 727703716 273208161 335673703 91013097 437888831 377100750 994437756 908847706 996912072 948659886 969466220 291819884 437535660 765966734 927215038 264376732 855266362 976524156 982812411 229722431 798169304 878076460 972348653 575996164 614512152 480019772 985854437 61125497 915113100 689850623 755213173 579374999 735250524 284208713 488045235 404589338 566146873 813034864 987007439 420277294 492172565 357903312 573080567 932461995 938925558 78179628 545216789 210995474 533409565 255138562 423239694 855738432 972940716 730489767 735354417 429381441 707139084 548308369 845976901 935390420 972014232 682985445 839850596 499942182 761740558 818262786 846528891 126482586 959238856 666132296 833541064 643591976 752739765 127658737 359392789 689408440 932831281 36163274 317846482 904164791 943337005 896633694 980604854 28111042 183897559 84038716 840445546 993557957 998022607 677575126 932677217 403423661 870385157 534321720 888416873 939317232 951576945 726474988 945339684 881963525 887271610 561205903 992434419 82707310 788271324 830035335 890913306 184778594 455997373 207782416 610263252 126431961 816195343 171741963 634811995 958123113 971609324 487578135 521329379 652287878 963869107 292928787 412677037 99567593 130780458 899931002 910789462 953193560 964974554 847782019 888500365 942332339 998319157 761553121 854227489 25024859 197826995 184157069 786730936 281861654 294420795 771482460 869779412 206112209 560971506 134556631 152690142 719343371 968922492 447883223 546260417 115876944 862328040 399952485 635110261 187769431 504497180 183886013 539999313 153975723 562259264 545578613 879029789 801701051 997546433 320076583 532819909 125125793 677432094 974157182 979550956 703553126 795980302 836473599 968882024 649663033 895282057 294652179 951247683 617791111 618000941 156677072 829661500 728599812 867991338 388269975 955977258 172436802 594198860 101933602 638133501 385232206 601876507 286599807 912458818 62737403 980091412 536380992 628593703 870552762 996259727 701222479 706344088 234243968 471847859 412090182 517272036 896589297 900293604 993945201 996376403 412833603 487900904 644963887 852876269 393683608 634241888 208340367 467042927 718061467 738303323 159600505 616742574 440636529 661839730 825744030 856916472 353680740 664835257 183458625 191398449 508030014 534949435 617148441 819518996 978457938 994993656 762960840 912654297 310177820 888306114 97861354 424118791 972594256 974107814 107026531 124599063 537604430 769815378 837217896 975943619 492627167 704305408 966406979 989487491 536638429 817629915 785535232 834600264 851840373 909263456 114839211 374892112 362819074 378145796 575589739 812045431 322133817 420696820 519520956 944953146 786921391 961355546 194109085 531250045 987385346 994504625 200891946 811023237 12152894 881495064 233092994 322466954 275241909 844622160 13738741 403558800 992617740 993980065 194792329 931513028 324137464 831402248 53062560 319372461 886552553 940607239 66878948 347607413 852324433 866013159 645283289 861387223 551856465 937516819 741639551 813116890 520767270 738527065 638769554 842715937 973826826 981927349 407804993 773333704 973191735 979348655 910603956 976175443 603816640 616297611 344835373 863859414 884147620 973720554 596546762 685023979 833907190 884718553 651405228 963645844 981854529 992800224 695430761 744066440 258953424 818729274 762985791 919035924 839607791 841044292 617488494 783104980 453408318 576660098 901721605 963781676 542560063 971907013 598309093 686782602 374023981 986103727 651383836 668255352 7015409 319712122 553683011 838444230 255310524 769173616 476345928 561932147 216560470 584645004 765458245 911831676 104379022 623701311 252446866 593116475 720843655 952085276 861603477 923284267 81694625 649450889 745479732 811746248 518497579 984085475 142529023 153036758 507689924 990469111 356594288 894145915 374704396 435958566 114323170 388367528 392447688 656179800 471857658 772075908 404847354 747252202 553696149 606765726 504339254 559321199 357604376 807488136 753617743 811220646 442214787 503387688 189573619 571503694 127450774 585961248 301769916 954254224 522178582 798361362 943234285 970153278 672350509 844435037 145618446 445792054 952708228 956338120 690839800 879399873 562513557 944472374 175019858 654850769 912374084 967712592 786090174 801444739 643653 641847164 903151857 956789917 166552466 697927532 81674226 654531174 9564843 35199523 83744823 221863643 157365096 550304879 786306543 927961632 310259343 529600163 340762157 364542186 534961762 554297403 973398630 986157572 257931932 364826135 907206117 909516772 368974775 772823155 475454697 492592154 872391088 884143075 545103243 677008296 187478463 579552036 162907508 282327644 323196174 415227633 176243636 798679730 724365717 765630376 902002387 955719005 98478875 643992746 467078060 483941521 421414333 517549783 121658656 462063023 121541023 142843236 568967119 911993469 894774752 953577043 922598301 949402367 552991122 893641107 380526110 731658052 608634193 778890264 513619831 803721528 681480753 825173405 336595363 861565277 209360253 374202946 790188226 987947530 596193048 866235707 361885609 394093637 685233916 973064705 850546607 986193783 34192708 788760686 619271969 650425760 985974826 987817480 554388443 940522680 965412636 974852464 618926990 944614199 127323305 574919587 390590510 795590629 128447392 616493638 203521719 869385290 885927570 991764195 515923741 590766652 912860806 989923057 204490941 329490637 956119422 964424641 857258628 970069722 890696329 924936286 698688159 774990498 172231793 485529986 118761318 896156702 315389535 977295693 990229720 993600187 215058134 767331207 929209976 975637717 128885991 557379404 245948238 523108167 743671463 844250085 466175141 562464845 45256449 367276799 959430286 962287126 6758588 87372738 251593436 923736898 602680775 791958332 933402240 955723745 974023559 982368478 311436454 609430407 25917900 456623690 696259071 914459164 859146114 989766828 726261879 993143517 124288390 536568268 21461380 587927692 415428311 645063922 71530202 765313466 652070098 717148709 2073930 110283494 530707300 590950372 337250484 573886062 321658200 745426185 380054035 878207355 310036243 751994365 458149277 885728076 751546382 811288487 634447477 985714876 78514922 945424171 964736387 969963939 130301804 732213666 162122832 478328893 490045393 546045573 795814780 932252947 558780501 998830952 102229679 941599068 36175049 340654755 779060911 873301187 197717163 976441471 22283237 535523598 532529070 559564888 731195090 868163369 680919756 878434326 122995573 317229222 461309018 871345066 165870730 418055260 580810161 660923609 473077114 956633250 165422335 201760184 788550953 834239617 639160824 725016512 748677100 773419879 61781742 977488574 262696567 909700166 860607534 973470256 651901933 815245835 767733445 994295188 493350823 810101385 286779370 518496807 397044746 869722370 947232212 974692197 713159939 854311486 384803490 601228794 918327719 944710531 296115775 981080470 55143518 283917552 746446973 986598505 275393047 339933799 614180999 674614153 646992550 868018778 802358702 960478978 616401068 731558998 828411606 966921318 754730794 908179232 28254277 164559974 976552060 983757586 799986485 908243867 992816638 999212294 912649629 957924671 172236046 571637868 37858890 370093024 11581 206042851 783185088 968835547 403133532 752387919 579347401 812728637 26296687 333521070 779407922 979420688 959019888 998283765 887270378 933252518 737588764 743015850 379288869 449237166 262290333 661463042 167748217 653018264 129899606 506627518 581186745 999110291 619556796 730624852 437715451 599282866 334778100 369520642 305356675 386231967 502314519 706845041 244482863 707213431 920978482 925218133 469414591 532831435 591560826 665829814 275871406 860215346 470319263 835536877 701890279 890851757 582003436 653200680 928156381 934876617 867657723 882753140 656088824 971474936 662444582 918807529 885601845 967432004 426984590 576614352 140677519 395309768 790534619 821987153 589623436 741592064 146352450 538289815 165356852 762789098 333256065 863613989 193470403 413359037 589939704 956306441 968931149 986088843 875617871 923921159 455873217 800520693 853885729 906429320 959525680 961162477 480897642 985281789 355901843 477422382 980101740 992350571 977473372 985195157 812768504 889493420 983100542 985282078 580138246 662575894 747392673 977714142 381129640 602586718 717233060 826638009 871853810 973014395 77334081 471999385 546922503 996828372 500901133 719686126 605879350 627886113 131859141 406424306 948158973 972435153 813629179 900881736 872387246 940200465 64251261 491825470 910035546 917760322 156605363 870102076 321816255 675383970 710916290 913786725 739581969 984890214 426541761 819451823 50927064 724390626 897026000 905853768 102815881 382863743 152674521 214105595 20472674 142772515 197146945 375648136 849121804 967339701 816597211 911773813 49946787 86042841 314214769 800314799 146625187 758380845 256848744 955679889 236387196 881714519 460086780 589433005 978155372 980961093 142118439 972782181 269566021 871984817 662762804 689658849 131403413 774077301 741041412 894486809 79627215 347693956 797128961 874265033 398329280 911257499 245508332 554249822 890431671 962477162 542781570 891387512 685873049 938696334 198588977 297858140 877811194 943077608 926131488 971584924 206330388 649570598 529689327 810732748 177676308 912389688 704638779 991355030 594838601 625184881 87402350 408186428 494221862 886680656 263983470 833208813 129356508 949918150 732675882 807342169 543829676 683905781 851506163 865390641 94191009 132934679 195461106 214568413 571455267 610317002 415530388 865758217 225137315 567794015 778561733 810979150 99789313 394528871 867509908 958396431 465387655 504503150 598350191 755238571 229732784 383293660 646681785 942188139 706057339 872367176 49398961 980299710 867013214 919123467 895816171 921419945 376130823 920294938 887799117 955161319 764405497 988388868 968388354 985551945 695935794 856253453 132339258 744903115 163362030 663561552 180572320 293745094 964422620 993560987 356421580 464807025 417474924 675681897 224267822 235020111 843104286 925274925 911831126 980141837 231769708 567176833 957673082 996606145 150466477 930104934 556548106 777089684 578962632 851219776 837379762 978383080 806912646 876288145 777834462 834020069 105582851 445924255 129317503 426042152 464763551 758050457 181103913 779647002 210249574 540999230 63081769 240749932 254862086 943686072 866157380 908104916 625058344 631553641 378796509 672214579 168143916 363175926 277441632 350957900 492406877 956629148 202580110 645149403 500287601 883287133 442489292 577201205 254484349 367591518 333396245 490055982 691828501 779170963 211688678 880823459 399607542 475053161 834615659 938172982 32281859 757954845 100381037 692528099 441175494 549091046 424519115 550796689 33118531 549141794 714763387 915669060 589798141 920424334 884931845 993130827 101375749 174038544 395595074 615237442 44737949 691474176 21190135 662883122 227075428 940813418 949855447 988538886 927610708 947146748 429879250 888782895 540063766 849209359 205186024 408137008 417496343 727350724 298294885 638252276 943108204 950494942 571630070 729462513 876104442 926387142 990881230 997406078 489428293 845666411 724081224 803650828 17092680 222332810 901878199 949877725 767818536 986281305 401045891 401520413 286701361 470857323 793986534 966712261 883365331 912869725 892415905 936308523 843535536 967867409 8306874 398212868 379094965 768391580 399430074 563292348 780834550 905685816 151247499 155121264 846785077 994734836 238137983 881917737 891190406 936771761 179334165 578735420 770042758 970473511 702211085 968788922 165884578 521289715 480446931 724447644 344829830 830619716 345977230 832253919 471752902 685255329 59460956 485518214 769148925 983736113 676704598 717436186 467566220 584231801 712178300 745836971 458173819 801459807 832051413 913719124 651529634 827261281 182967595 890240869 13062425 28001830 989693844 991446192 83711704 725533295 911967900 990720891 374090658 693592555 795770024 955295092 684771631 982468897 416165961 979793654 799005207 857511544 613742330 886578211 115017351 905722089 222561238 951323951 27284774 84799500 811984552 843168304 387960931 460575067 560784145 695018725 678588446 761619768 815928885 901852268 133052859 352293398 754895297 941207636 64790393 216828166 781074164 968657616 495484481 961019354 269552763 993740113 47740255 137613667 436911141 709141316 946936970 996961921 32177224 313376909 925091372 979663647 714298807 962092350 578994834 928442551 479107319 818433323 534040483 834604498 578682439 618879355 309525560 597438705 866508932 975898821 370020307 524451813 964292010 990386937 284331369 852206383 173014205 369212168 687527842 722042936 380178440 530905568 353054323 879145243 207086953 461451156 347420886 470108989 240491619 273025014 841317433 942805500 105749038 735494064 659540127 938709662 110310366 362480873 230707123 273982548 206825090 880618766 885948275 894106865 66025161 688477817 231148843 291802650 139906147 768468500 561311317 728667178 87214633 265459712 34975260 481395742 82432058 845080715 728822415 900989969 603391273 780747903 706238384 817618530 501681655 549955727 526930020 985077843 14378054 469370328 758218927 987921297 786204040 931697213 555879670 785424382 842947866 963637377 553068564 712289691 847074172 942708639 599153724 603803829 164098993 649125124 363304082 962916754 139443301 994592637 633359488 865758308 901880287 912891256 271850957 319376392 8970980 517153765 729247301 729734295 145889044 597884108 693883482 707988787 85949822 494930840 6247141 787995007 972743088 995797685 931017589 987984895 672934454 822071115 666603480 720792338 635300181 730082998 970442346 996609484 557212650 760883983 855576817 886651829 687701727 975322797 315147064 439312162 419471722 759824101 398991030 981403776 653351638 690498794 212894070 651707720 394259831 570910479 223201552 725788320 865794875 921706663 522073479 726049153 866612563 914951021 127840146 837881346 593836623 884838613 256031971 685893942 378201609 689786026 573327228 678864829 667207893 978576348 456505056 622212529 618972523 848892242 92978679 581249948 451880509 458477007 639690567 680828048 623548216 778219396 502933702 632146934 123986591 132871961 74219531 598710156 254001897 277414090 179163288 738771983 132341614 599440854 282014829 925043826 966801090 978450161 512364065 939748434 620308218 644079868 708579560 735073761 893861221 949022594 991175628 996111114 786297860 871243117 218134982 570272689 832328230 960922300 671718399 861794710 755822764 918517692 711997949 825504723 932651810 993189847 938254832 950844049 874621804 926026690 753824680 877428503 135103101 583879912 978378589 997784807 351151641 699578349 372442171 880125037 530821505 681731450 766070599 883116147 570411285 699682362 675327581 945495550 22859971 748513661 716267 255379021 817703854 948310553 572506938 697121910 937115605 968335357 971937013 980914355 708054256 772274846 436122956 830500470 933397392 966049655 214011285 994972936 591338908 967127725 176336507 226675452 120044726 345296683 798218294 905200591 987389315 998205532 901712580 989257103 529858702 540679892 344130089 843547436 473798827 660883373 883598254 962488401 571689048 826936162 598601650 880455424 885478760 961543463 114064416 815085796 233255780 468152140 307195958 733778955 630753695 768457918 700228761 792439129 564317162 783574657 410804052 686217428 442043673 835817403 580099346 886959119 119492684 676562137 228529377 602080537 110753730 519167522 591448540 690875111 14897760 869756852 799582425 991392089 943919754 966058128 697902189 719735899 493186010 909102182 910633033 969807082 61736035 937630496 189478195 270852474 710577271 896586752 910524665 994612407 995188864 998876003 662262377 763253627 712577802 839123707 84318648 763786568 939556057 980493343 629641549 654989270 908581572 941269484 161059498 407424409 463699824 985900062 157270141 979092813 900004179 958462374 669648290 959871645 488996786 691552994 75004650 420464780 853413364 903146877 703101651 766563443 845617152 895194657 172673359 524360259 504694697 585199298 316030637 520755659 104860202 528955909 451978204 926585378 183298128 812614935 702327271 923549252 551650706 708094947 864240947 981098954 623702447 837655929 679270467 949348614 417670545 968992583 599168515 934412791 534096363 583665678 754745638 789243701 20974646 481341256 434998624 677906159 131232198 409729412 348479078 917217847 527085090 556420552 117658374 348835943 139506923 476306899 250142650 969353855 123292715 426337284 37055226 440010549 215750301 575610989 339968254 379141596 98351237 572814708 297859908 423593714 629587823 785792288 501612648 741619550 75727918 304976025 22768460 486542382 540550264 584318099 977970041 993368649 511203064 598448779 250122489 522743764 102154059 383680486 437278017 960598867 630018310 862916903 164270141 812669507 432018893 812999414 328721626 413359187 500887905 806299610 640370890 690252997 886376077 895645241 377328139 384942488 447723420 941649120 380332683 456164245 788071918 820861573 331494266 799119852 925164506 965638015 514403047 807134095 244381143 612497895 75430165 498932355 873482265 973126337 11304955 955775749 810584444 881677496 865262289 914299870 582885220 824627036 161996279 789587834 583963200 666551242 893571654 922647897 12432064 633482018 586943601 921276061 643717275 936556623 822409661 845822557 751106732 752099154 533526515 715322684 62824370 933933119 406202767 857447518 414624410 636598475 672459824 881950949 313657684 907493352 778893550 984477338 855688060 866018390 980705845 997017983 23575311 84058215 179410650 987648151 462961700 736810374 876339167 954645192 538202147 882460406 542760286 802914007 459075086 887425469 624522004 758553011 837564317 996691831 478357507 548607861 688956738 982281827 492463286 556993497 551010869 759637632 789399328 919724969 580460147 690388910 612167037 824763007 784622958 910801596 687866052 912629859 431469133 972585452 253526402 266368564 38342613 670054437 124363075 570527653 579342275 966619893 449065042 947158164 898392305 988323026 980555464 990399482 686468283 731789761 323825459 840560065 831166316 906542324 578907534 688348052 262200788 519703721 73413826 426903692 937557179 961295851 106786994 914272580 243425827 353729306 166317489 288833947 702629697 803840228 869043981 880816424 412126452 726834212 900985045 922163312 897391135 964134554 837225552 873538927 161718612 515248988 948338546 956701564 238996236 998624635 701416789 726021352 200313437 273317343 976271932 980785228 454555528 812258636 784908529 973724909 590306924 742040068 586241813 872082934 746079963 950893540 539940516 834031638 265872729 721338583 645614394 752270388 985781772 990292309 105591844 547448797 348736305 797257596 631648393 801941476 425691746 716973259 938560048 951898109 747754217 939517732 256128405 749724745 533448509 770501220 558163881 804128545 648812332 823820797 128759981 560380960 365847953 703011245 96933142 845263044 731286518 914614652 742606576 873843501 384505266 402759998 15071078 528290362 469247073 886682067 670558615 673465209 601075666 705005173 292079097 316269464 33142963 107775915 768360809 997210254 127187860 887588794 881762954 885050413 439799896 468709574 689044678 756561874 125000750 240819596 29596547 596033380 481539523 998968433 394432686 448116845 633614538 776183842 479779973 624484524 517150721 945699676 174515582 404730438 200736197 672023999 359846249 877372300 319222249 855457861 228249048 479021930 698372381 943633855 263917196 896135996 495641359 554332082 128880995 517669970 556988262 716340426 578260801 585063663 467954749 974355469 469495582 802784998 624457136 924339246 437438662 574904486 138485739 345046924 731037814 866798502 266208373 655663999 671765223 742906116 925403526 976721178 595913422 863200206 269543906 591928115 137829986 321060787 909471971 958547121 469759558 604197181 758386999 836910685 459217492 962994421 441608370 746303054 287732844 861868367 492581330 936042369 131550942 962721522 922017173 947292224 866098318 923796092 178952392 911433276 878548616 974599283 890844750 968625797 43558055 489436700 202336941 288181382 628850620 693682825 251346062 702656225 603383195 827951783 711363212 749171023 938532106 953186674 607031376 666423952 493445062 713171143 287567744 606273503 10343966 60603202 503372349 981640811 664366434 945793112 130565833 584096560 934984792 981085232 773730542 996123453 28191465 542215018 791372516 911743386 112618272 756343324 336517609 691035905 353370604 542749226 635420183 889250699 868448172 997800380 725189678 834905924 868227370 910982711 886492777 940854952 324803204 640300838 518478131 618660227 636743602 858126562 428552814 830686961 817109927 843625128 288543908 720540429 377523555 615874813 516998588 637834161 802123081 841084334 426415705 566558996 62593282 166012349 603900934 746591147 755748396 982977611 68569482 986292300 554435336 666346632 34110828 164611532 47041229 971577642 77095431 745529412 228261739 280542526 967792843 985532286 330655183 863472971 531768302 787385553 594386773 948690923 199473536 469867792 344198415 949336429 744706129 917349080 399077885 816856881 732611746 845682889 301534943 902078535 118656664 707217716 466190442 826209532 134802143 914267743 143813338 380825159 983182651 997560374 254814031 507973398 546579931 970016052 717273370 998877421 287791803 924044458 393494562 824531127 701301062 941522036 200943919 681581231 771258340 911081068 501291288 748099518 242043604 476339059 803899671 864583698 547060124 832128517 157037573 170153398 450706884 803955860 317070423 441565330 460154417 983334843 989236136 991280596 130926824 160357023 917245532 944081563 275507032 937410749 442621714 655367836 579052193 857334415 319265470 370666610 498294251 771991318 602687424 971056867 689020053 730307633 703597128 996380680 306616444 685608284 237094696 430306142 171224570 430636347 833428444 883724862 809297384 832498057 410253099 593440246 40387166 75918514 595303523 991181825 441032429 696243212 811713574 853446141 11135863 567882322 404620041 734894259 644496508 977335104 208846428 321227350 508384005 720070101 350042025 565990428 222693868 820315750 854491223 956360023 184802473 215129246 521683943 752831730 3938962 312472431 288401200 647732543 611406003 829045167 404620870 610258621 598627443 903630824 667928911 856015165 687462730 751711084 419414187 710234279 269899402 330848184 722849512 981915012 650254430 698844705 345388510 599280150 364477547 545311111 465793209 472900626 98647138 685663397 126492973 725141755 526159954 941692915 319725661 972689877 462540018 582777901 573136590 971160217 355418778 432508571 100221731 673067683 488524354 987580241 357384079 875151400 667231747 767921948 134394337 579541973 726608878 903116688 48717022 205233968 855947885 883199628 819884957 911209176 306545153 863572436 314300932 964876018 774373646 800518892 129903839 146654033 601417078 726463540 538728510 609665713 437252524 694021523 28437173 999144395 146179890 330845167 13638065 168467008 374326866 964610487 634579079 840955355 869224886 993463290 580178954 965101463 806784007 807264557 192180789 659609955 550983219 587907571 732895084 775216983 616151544 980463709 39492770 695953379 796514281 885821602 186900836 616930194 61444948 194039984 886988465 895277871 431505163 935687243 292097645 489276475 672355969 943286267 379383205 642214237 431816385 844811239 46339596 80350843 60437391 303885055 433107537 536604082 889898090 979960292 816485103 961649760 380055199 786233047 40971221 449232488 180900059 471023277 656910486 864085586 15987605 537897226 27303229 254856973 794785287 853711103 543351767 792032005 179810763 444374700 424080950 429295506 907152216 988724543 462423377 490073876 327192632 594314928 567585243 638713678 534677947 898645161 531949482 737551929 318743423 806296982 401041803 729701085 705125999 987013426 506091490 741247694 753243804 803388654 872218849 884863284 309896964 370488244 88257797 118561793 272677498 919053197 802778912 944559579 43472172 990885831 203691360 786177533 961747505 964714119 168855313 666452460 814920613 918607299 850938085 960825192 227237743 675103055 432862339 798529211 421759410 707806203 908153290 980222803 630694446 641018100 327049817 693788141 881352757 897882055 177025009 518931926 434412811 485072610 49817124 985774435 335326752 642655178 142105649 833843232 167517862 280054258 840595712 929236745 185362431 552902735 387320971 895285971 157971704 874814468 807492663 969297052 565543339 827711833 891054784 902478531 697644734 736649762 923078787 967438967 858397516 955770226 909216753 913171792 383560714 841704411 377968109 805127352 42980546 105257077 167678003 802593736 449033813 670458254 154455441 849712237 477627392 644908908 404330635 591640490 30842447 70984337 546666178 722821411 554015229 978750994 984072779 987701567 432016263 739175862 921718728 974484656 247596920 386992002 993653649 993968601 911769900 990923982 193345050 586044532 771022444 833672679 796640432 944050550 831403127 946512575 194627907 543749901 363297975 579986821 628654971 662642168 469637749 625117794 547851642 737704573 556822443 912659050 580701779 725717128 240254115 486128317 635732825 935163968 122047884 419578646 549642909 886995562 374215887 585370405 81941190 361782629 306506268 716365610 509567287 892143886 33887251 215803119 643896159 861273392 603260211 755382842 617947914 736208249 762078192 778183863 889151630 907424403 732455877 988189137 86684451 606945744 376586148 821286655 475174785 598028510 930116965 961568399 20048011 831650296 892391871 934905780 260077066 634029104 735624932 860636882 679975997 866766894 480737146 600016733 475446490 740266707 797320503 826106167 99306848 170174232 812997987 980268376 335100688 770956965 361023469 965666700 397004105 475535020 469424115 832918647 317099261 530882121 260672761 773816194 145824168 251198802 397475044 692863140 858207505 938812075 375053214 975704656 20786512 834499645 487705154 748369354 845941684 912565171 881802791 995194098 43809406 85497840 846825950 974901624 549663793 709204535 424743223 621682404 686034933 836259126 181069708 223474379 861401052 934220319 451798065 868873560 66884578 514865032 228992572 924376821 793373616 823186262 312762234 591476288 827072333 885367631 350527048 444291062 713759647 766561697 751247375 841064517 461068484 933972508 448465586 779839260 599816012 799043031 492383772 507483931 309760053 865068964 702022986 972649085 328609938 950156247 442611822 497848531 617269829 682724216 897938605 926546069 857529052 956056480 567082844 756076220 913610820 968144398 107868947 904683482 43179145 708076223 826681899 992634933 737641686 864471909 404891127 809200890 995189174 996311269 618718553 653948876 87994424 692677118 431830222 765840664 600312890 652812106 653315889 988508763 450554961 791575848 515702708 704319005 739869297 850644089 104409609 671136154 309725568 776558936 328634132 750322501 842825614 990191682 484707741 579489217 526917160 828690399 900271868 920084525 771213698 844593574 423651026 513557080 225280786 583616833 54949330 746328614 344047088 952560856 233645097 756821188 402899913 983205952 18688366 811288245 681803594 818168384 564888174 808627463 964557903 986652654 144999957 479447738 335014042 392450843 359218605 725143163 62676619 870495985 553548329 832882718 946261149 993156619 231387589 989248642 704505307 959571540 190765644 795597742 474859232 837048942 151981915 369214479 715177908 871477863 42640590 509603359 598445508 861726003 61633283 813749075 899932857 900819194 850247245 912199750 901129481 920356636 413379368 531123160 878536486 987166215 441097137 915217368 516902764 957753099 743948317 843956339 644509160 884168502 372455322 444294498 48460145 317953802 165251699 694003902 737408141 940199466 854020192 909017146 476947714 604311157 668558061 978901147 726482423 837750148 978791634 995526366 256811346 607586687 622603355 772409449 19838622 30518826 703604090 810969580 540623542 568418776 97130180 954919861 626908300 984096252 217431259 555001993 636128933 911052397 949728589 955024001 320257764 715950511 66013388 768701381 422327755 986153861 940223246 988603504 767654178 853898032 331981814 935797460 210311704 607602224 124327674 468518586 950575544 960590802 495009206 672291667 156863724 693148041 269899309 936936103 320549572 764527735 563542667 563575970 423213429 586446161 304250139 854707011 662288410 758554506 296516489 596920118 862386516 999164687 337623723 800902033 124113825 303203949 70432364 832635859 345895022 410599222 829062992 896430267 322015611 873165302 730579948 948892341 678451138 907220297 602365115 979042364 389806043 530272260 50932444 564683471 671646053 773486959 346096874 669563801 879559225 897317928 204863045 815175388 986408664 986891388 147507563 831765269 780975083 973424110 252146217 820729928 762978896 889676848 941892271 970942598 997180244 998473588 3743844 447672469 390351160 852527597 330355734 380903887 979208163 988386541 425981209 766281926 475760651 699548890 898221409 905975186 132048558 809398316 643844475 868457280 529381846 553895980 22120700 806717841 519884426 718458050 696743351 812073577 59099856 463437359 746689621 864012896 513788069 611548698 133293844 617833894 437648803 975314203 169995766 170877927 748929426 982748494 319384058 515550835 317350995 571086589 284582246 993115010 435243968 787292769 10174183 547832301 240126726 708388290 666823166 918397451 435132426 699460108 311583593 951670711 31358269 125699010 244770002 910132497 545252937 673503158 947064915 974330926 550657410 824310065 171095269 732994146 524439884 732890336 410439560 877385121 258994897 292027804 100969455 312468592 54727693 109723060 300119554 360649885 590072949 694772347 311439996 672119952 228343128 528649685 206841506 638402108 569245316 807427521 920968458 994642555 402109985 643016658 192904566 995746872 532540439 805733788 424267162 643534593 306127436 718201600 508955308 612795194 287330563 324432564 698893947 776056735 575010764 793038909 991340145 999315618 980383857 992414272 354761690 474538262 642326726 729551295 689408294 889031601 14959721 253017027 734349474 936389113 197802040 667763079 784669809 804650676 565686617 777427727 271559820 515441894 639814559 892402913 862485448 876549035 187197684 774703698 584304328 768005231 987700654 996270247 222594244 668988633 579727973 848600516 108466401 217945013 373861059 428028766 806209398 975193297 732369031 745277909 647194686 709309480 290298273 353183397 440885998 997339753 683981177 839485001 2550728 520835605 371911493 647413267 724283060 989810047 947266205 964578969 319272356 362369835 283452887 778957610 202180175 945187769 877904730 991455673 394993164 587534374 611385805 619482535 98282757 551020595 745453917 756862981 655136512 766762766 650606225 953506732 56076588 709205511 111440015 127125696 913391959 973787321 80795311 546543426 610447387 771640457 882965221 995720919 901474873 963923921 407607599 895678731 34060817 571967115 751861435 836530295 835646626 916346469 859694488 984501909 745610770 842557033 172945123 198944086 762026587 932838169 791070441 847513238 854332089 868437137 113371330 798977478 297406416 339194424 871964116 923137281 732658517 851056614 761494901 974754722 378345816 381191548 802302444 932703505 659125924 774709596 365565224 502566292 614790856 976531979 301935758 848158584 667541349 702564905 397127450 674104743 486804751 780517477 318504887 319430068 222666797 334854254 140852309 590977827 765999366 892367802 238730020 248513283 777052179 809002729 515814265 773931371 808703065 932473480 867844870 982584302 556202730 984172233 373845563 956819997 200909708 349086603 993696724 996664561 370864273 966535899 833034314 935168402 539621284 730769965 462626483 920128295 811310819 998925244 370193933 447359832 125099469 713095312 935144759 967341107 843873820 848719935 760014260 970227769 937711729 984834401 735667362 934161351 189069122 204466884 308851687 586726019 446966326 577641269 198782175 539010016 317423390 892475346 152612328 241832166 212612499 646129432 613646550 743551596 77790522 766062527 579701674 605630323 900594645 973822657 190020494 957540250 16771510 409471625 790449574 890484477 998236913 998434211 883361257 884911748 374245804 605709462 45373825 281786842 655562517 992044930 353153387 859399811 363662160 418864244 148580638 638295870 951399706 956213909 102018492 219019975 670820913 728027780 391355629 747807452 392017102 674983051 123786992 785804718 825330983 844266925 586752490 685654723 548773792 998461314 838160578 850957713 770995840 846043261 422717145 965617190 383379235 917338798 831769851 973600664 51054143 993719344 210639198 243608670 26473144 897073358 972493483 978598714 535642151 823879273 701617360 876507985 17684991 603986111 902078200 914013353 766386 975140715 522804838 690329677 706452811 991122321 436502319 664121478 543249622 680694868 590050721 734797711 147313913 240966929 470076899 843569307 218413982 478969986 50142973 438922697 536011867 821154439 837453904 852304831 507944091 706697098 697994236 706339189 628961073 775458719 440100089 545984899 214885143 986713333 62805908 88579690 847279585 948379251 218282306 943988703 51763195 165610188 46447550 964439733 30915303 194505390 424297676 962904379 413940886 718359253 926003145 942401707 668735697 734182358 388761715 756489789 323255637 737131576 489548242 537463907 60645569 183504517 584394568 621360139 611585237 681820064 362384222 368478677 425446671 590805853 789198960 914043492 383801052 561339105 428905260 740853722 958365418 981282989 336915791 522328815 71366444 265546515 814744334 846912522 307062153 551485560 294242813 533860969 745794846 915666766 173322139 426522999 345794610 763121121 467184579 715503516 875530404 897125477 544963106 900577487 585416211 690601737 596744412 871168203 146414247 433698203 484427477 543810913 817565166 895026916 65181853 871916235 766761852 902937491 463171376 846684116 243296843 972627545 38162727 911678974 636995618 644343189 908321934 981517073 6507846 457746269 146740382 188575674 918319121 987337349 916403784 931136194 850203371 986292188 395820038 989285584 201011151 256078464 822538241 950569765 382278613 848235905 530436556 597085790 918004662 927596298 611281036 642538260 735275648 816817173 944096583 946532669 450949548 807914032 962275521 968681604 43733457 371730756 397183531 476183015 408067186 611919399 770935854 880079915 803210840 818420327 977729844 984039793 803940285 817466287 344903272 883859163 891626189 925287069 565131132 747331130 219202385 882914473 362708177 425123645 366419550 873757480 236785860 842717089 311866878 725884605 228669531 954658736 916038126 930496972 43871913 372170170 665819524 788416277 258127336 778853755 140481440 428563682 585940524 939237728 986320349 988592632 345702295 744461924 325870501 797899726 641182670 937412328 692900658 713747845 495344915 773080060 948313246 976927780 254231492 560553621 592519377 720085689 391293948 834750348 787021406 916526225 443650867 954150958 842984782 857621332 5700929 608184306 42638724 375149035 379329358 811626019 331233270 503193838 970175610 974371945 550209553 788342964 939375899 971682145 917752603 976263188 426928737 710821125 992020706 996433497 322046286 373600850 744252563 801705783 554458062 892297247 631630527 987323980 194146362 657065183 63292585 519675968 425133314 812122053 57798273 969291962 956518096 971993706 83740352 268397903 852943008 903523581 588505151 902041600 666954428 939144243 31971643 914551498 344419356 712291884 724839386 865253496 452571553 844984423 767490289 960140559 661857249 744431435 169786569 211245630 567553195 856370350 913865869 980668316 162470936 571139587 507202467 846794710 987634020 998895810 649918311 666796661 194968086 315440094 78812882 535601023 466110479 942023068 3551974 103190276 195989156 645780152 115448202 789281227 335709860 716645351 258134210 872728235 962088744 981067660 674189457 799940525 275208666 485372804 952995610 988412327 820629855 956466841 17434740 270188285 22304886 999157588 938268499 997674335 805595777 821303750 834195800 937216380 957915774 981391520 318094745 608331828 339465783 538960456 598996033 635490428 597200651 685572039 942573038 949176829 897354558 967134458 896098670 952504302 145529205 903804993 28018389 435192710 935257079 986846873 534089665 943568775 466807705 945931361 526541539 697661636 893753418 960201861 590742961 759845216 160184800 362379035 466358581 808950474 492002066 964977676 965730086 998327562 875382307 950312397 13402832 408933557 439273852 654021220 309620778 535259821 155093370 649302848 241623255 911094161 445172468 978253000 549075017 925240339 648021445 881995103 722672428 776716112 346737476 572138620 252748245 530741961 936606957 972971868 978260261 989887496 314581751 506184130 635306910 800761523 271981927 598682547 211512873 646691817 806366486 945320008 666346425 681899200 251612926 865219471 227168846 826265027 112058151 675267968 738475319 761795125 752796826 863632882 125214322 320291303 383097938 725812728 636842087 808219382 943465721 983039076 187366527 799713507 125499795 894811062 708807469 810811860 434090847 526245035 357267419 720341762 220990566 325568904 334211428 801497091 133150528 709234594 187958315 769231086 705131852 756968039 476704575 643079512 168332080 865671837 631348849 997129433 910251150 990466632 57591969 622009564 370594060 500835858 655271195 899262699 304221693 653475343 68403229 743833033 535277066 889954337 659168090 850656521 338506124 824831993 471282547 556248653 436099729 635229189 109800408 589858615 159606452 782566038 470106722 773179825 312316704 313997119 5745904 812521086 204288579 868006184 577003334 759483519 289053904 562159531 684446409 885280194 964766848 979866350 635753981 723716535 779152134 991308632 52430418 388746612 736710394 736819253 391680624 785067767 98739355 374987042 5901172 651311379 594610984 901676708 811180097 856452605 660502066 807643043 805951866 884345123 105905939 290028467 358083238 613766623 244445668 534091925 887042265 910970305 580018138 878962902 466525132 733329756 869997993 950960470 560730838 766128421 548096600 711770169 439461295 582003664 310785744 429496967 279889362 724187240 743983787 791714846 42648246 69273883 659413386 967081928 867584280 883845478 972987538 982120985 479611247 870263248 315155703 633736691 186743838 792626664 893442728 996442833 395575063 873387440 617614914 624666105 711691639 712916258 911676907 950333041 673874821 927552289 457222969 592274763 13469539 888518763 227051217 438945416 552466641 715409408 276457525 566369941 279279959 807816460 982983536 993075121 97537417 606811894 617339149 797193392 789846895 904969327 607456146 644877380 66915669 145190521 907598246 922719240 920302362 943781691 424244881 635284158 439962340 959819289 807290609 928866981 96362029 590584924 990746518 994578860 550533825 866000095 6088759 625585697 25858230 990161472 7856958 291533861 155094150 295826340 654832604 775718423 111640659 386132741 446131724 484752206 559237010 854262169 445769462 959282350 493656199 742740744 704380109 733742836 135654967 200671099 142657061 799845387 958143753 981941811 504134589 515532109 51913485 626218067 610077954 703499598 528231790 915483650 15890458 777074199 634753437 964564775 653268497 906476121 222227838 556851311 648700604 684660406 33836894 941025911 900531415 941902127 806253380 909073213 804887064 834047825 114555980 487138622 903816043 979486021 815744325 933921158 935170432 975394001 163205933 236036675 7501801 324129207 758829192 848507382 721827842 935592288 905880712 957232088 436561571 593746442 199067763 726056442 78643647 869586965 541504233 869466268 64990859 892795978 445393085 613924930 886614999 978942324 810869683 830870219 87364217 600841290 583732799 674408000 516214806 616448361 618130793 878326014 74020882 548960823 620258651 905396004 840202555 846456864 721799800 933880418 69227401 463977121 40694771 311563791 569003336 696072036 661440398 694748872 758171403 836684926 686973898 779365750 988457849 992475593 86343318 722220476 167930409 341313526 136952182 602781976 408074835 920445579 316187092 439828431 73378840 910805076 206267622 360863941 630750365 751626889 984372514 995449791 877907022 949586116 418893422 815349090 760055072 764979469 604591617 951736103 568297151 933201651 608588602 650479017 721679580 894774288 877440014 960892506 26924450 533857857 267058191 977969522 313089928 406812424 922382215 942747661 247094014 355877261 359085531 764571764 445604628 514880302 101563013 598982053 708977513 829737803 348069611 695169470 220375164 374502866 892320585 953062635 931403871 935627239 748935303 919029131 765534359 782346048 76127238 822283223 334529120 820525454 584299915 853108619 2609344 699357709 237334985 741976632 488397360 916095171 331365843 886877577 244213960 359109326 775701464 777622620 313315720 745966894 777703853 779877886 32268059 689561128 745395165 903648239 178415946 208464106 202586312 698234682 676109945 755257477 481589801 717080751 240950583 252661263 22280229 258365002 328873005 819845702 154273378 872960881 295188584 444790920 233937584 600363575 613819037 860573446 417900342 462434724 431287491 697547861 745954292 788034535 513894357 927773724 100773488 201234433 146413837 942907674 728472958 829383988 51451858 854577359 451643576 875140806 274140492 865882595 823809659 979777419 883093774 894547373 30792405 156457990 821157398 947615702 955157809 985826481 135041637 909096276 361815823 751502128 204213161 691744690 791837845 992175917 295446396 651910668 202558909 647734830 823641840 844887847 498426886 984394886 352706086 869232252 574714061 754995633 375587179 980290331 340152598 577662613 521470774 852697957 996279572 998235082 316808893 545875677 542135095 550413876 964245469 977243870 45098336 610201450 301670994 648679033 317004489 958293140 325101657 747224568 956807973 978093108 170241274 436296877 167076290 950868140 182680619 912703402 297963547 823019466 752343716 925556183 963161457 980949308 634922348 997529283 124859229 903903956 552971551 729517018 929822270 947514192 41078602 220431393 670215339 845611043 616737054 971306783 691412658 960166586 968382746 989308561 97555226 202819765 507002735 563187023 511012619 883859812 241329207 351733376 147754030 528521323 306618004 568788542 573511843 734254337 62594744 398054968 784366747 942841143 688027176 958687274 29709296 497439375 19493093 357898020 177715620 929880959 250784423 679985713 817367874 893653183 628381312 628890916 189710618 442365148 155963299 585998486 703647121 959913804 324639205 466443369 278535746 954589026 450685519 973562570 900061462 977810149 130613719 437921562 321084303 403773164 173166955 471963333 273975124 769229402 573377441 693651519 168106522 780464692 349790983 466477121 864378868 923892153 915007468 959891568 794459575 858868236 24867351 473973269 806570169 856257118 932154545 965436023 339804717 669532667 666194479 883399293 449452626 707252193 331387228 661398875 121224503 897877613 865546567 874184881 95497154 261722435 162323544 175569216 544642206 567283354 521694554 530718606 966351697 969912787 795039580 933430440 20672905 605833487 413740985 789812876 222379112 439551269 419683179 960301510 830074860 882103265 423076513 818796795 599615890 826683959 408882308 855891102 96457119 998066941 942616389 972992996 132664263 816266875 935047084 957296505 701801759 972019396 529032886 632860173 599828762 767367331 916122545 954850188 856141076 933006059 464131851 685552767 815941375 857728177 478334361 787538065 99847714 204542972 853488396 926390990 982769696 986086796 817063181 870823834 87561395 160299134 922934539 956285742 182368274 764405792 844731724 883374404 225073063 411921302 130271827 730471442 428888269 995343556 200805680 357213569 910225307 963609108 548800213 940506552 54739377 694999762 458700213 953862157 596533339 839556310 71008438 755370989 564915689 790022538 867536334 885530579 901369937 929515891 593536150 925521227 803445029 959161934 544020701 851583053 846806213 957027879 589041720 673491944 275042959 651042502 391175713 844666682 660418996 789633061 224496964 838009043 35381991 265689757 912664520 973948347 414301349 536912321 347047486 637862727 775173609 989759791 939362834 985381179 53428415 966288129 23231871 590905763 922344429 925449191 689791679 920634661 442255040 619596522 710317728 978859047 423864185 493895920 536585539 740582334 712431971 862869919 431542694 538556139 667827768 885304110 822326293 868041397 680668094 718262676 883747993 977496152 559595366 886853141 198674666 549228309 516338252 976300720 822595903 967851675 17902951 273214107 353169847 559116701 551820749 663700316 548522121 938593292 185289609 762824332 169607005 369530207 606069509 800868036 525670728 827491250 957093519 974183570 831284676 833205746 551000218 600888336 711821477 731223543 967862166 990279882 453932505 732360013 762954744 862513464 518434716 971112999 123878376 700538241 461257733 567810543 208293398 792949511 548362259 649389230 90622183 370143403 945216059 971701180 955200946 984043965 531024572 592206836 976505291 997026428 147278695 416874833 858047050 926332065 18545895 664193222 691769203 875734671 780778419 938635440 404691063 607107743 176448566 947412565 97464723 532210817 490253001 805008635 742770421 850556515 753426774 842260229 19424286 94205129 329636803 989278886 281446175 475901702 972673763 984079295 249908820 976283265 519346314 624177426 637645139 912587928 799455913 857194052 948211568 974826720 623614220 632190398 263905874 982510206 744373383 955566158 905791653 963849517 227268785 907626489 363568581 699170594 627771712 747164981 37728955 698639336 601489394 762410020 144409839 705520383 732278064 774564340 284516002 422569129 14878777 28738683 129815040 639588697 942915656 968195933 538249551 841117421 99380515 897042858 202905656 799973577 712769513 811815428 43237328 154796237 807163580 955614445 753882902 800396647 384185529 947684432 185145741 376899346 880111786 950305592 440355338 734962140 57132451 733067947 195298465 203562463 151349462 332784098 518388167 935337934 949668123 967209988 141172232 589601004 193572812 632404811 381470311 970135926 744889582 843335399 174530473 518306958 374999050 423371587 79085070 939547694 239570161 862947194 838110610 928120551 962353573 994857795 423748958 615983994 705355525 816326419 419261223 697604927 172497181 261473788 608031829 942423933 240573462 409915730 309180346 445791187 455530511 726890411 778386357 837537668 316884381 946202877 992445046 994507909 749209495 845230489 825997534 988521885 931065569 954413793 806831799 946311511 335837040 721569734 965100181 990927416 397292439 667584187 521666834 692646600 594157005 783266467 622930848 767174619 913706512 969549048 821499610 947148149 513133562 730265513 248856377 292303427 798179155 976396906 136298466 866237795 14739626 231641099 807627388 978274256 126081590 650916631 747120650 948421133 575718368 940626759 300402829 591795625 431422044 900344579 477183031 774876055 64589398 374212978 384036583 655784088 447103953 547931983 103860778 764781014 248151042 600302137 384039241 940126503 279598008 793164329 602697277 653737035 371373067 616867931 148730456 292402161 683898778 747789310 333456816 958359382 473134339 957481579 97506102 771788984 343500879 428274102 749648559 935111429 609163412 797322770 718687100 996607158 500421814 827610468 701682025 797047901 863561812 924676925 623486563 744735020 946887812 957883305 589840434 965685626 811101110 964765529 756718082 961281478 797080125 804419868 89698664 868408377 295970623 666924116 364798043 637515144 225503475 931045089 519046165 975101749 683765470 995060353 124556491 318387591 701932894 991585549 754530717 945052097 654629222 723518592 281225450 921736241 876051811 914384082 933411146 935628869 107122514 768430726 282030589 569706910 753784628 915544599 233911934 286977090 307952531 621306342 32803626 401044175 430414392 634868528 264185102 447413980 560081101 978035975 404752078 451565227 544632059 762760109 844020934 943995377 146903511 500928147 143520032 863719197 466355809 651966268 211707391 774710993 251505132 424649841 542552997 865365789 889769635 963905037 699010488 765422744 288618349 914319283 417293941 490974272 26093885 555125521 513320043 688416369 299422281 757465150 504794343 721799683 180867137 517448215 775789040 954300042 135996528 692290209 169957761 536816566 734388976 786519645 842792998 981376905 562322859 974572346 354199307 461803185 226161103 274214873 790911485 992523989 555874331 854775579 949344558 956863244 896097170 988753897 16699856 495432531 487263979 552495502 522656933 622085970 959459695 991004179 837475611 854762654 885468675 918147674 865075643 989679696 76911168 357479697 411220809 986168070 531922253 755882675 939382684 965623686 113666056 737704712 745582734 832930810 202987799 899305136 677114387 867698126 568679612 769360187 111437622 807183811 944676714 982269880 909403683 981650530 65818748 559742444 95759018 690367725 967716463 990913214 168557620 907075724 97123754 349058901 760941561 813096102 955604700 961127187 384722243 811138265 292674484 931330091 346820318 954487656 80304672 675191542 525553766 632061814 760534499 761459145 702418891 717138460 991764530 996256377 539100115 728823834 964110375 993282835 440593787 528268190 123226593 147686653 392327213 882909868 596351986 869367419 241580330 673569610 19786822 961696759 683856757 989425854 583910788 804767521 473976432 946102869 68865337 189459897 7191835 355247611 909622323 921381372 938942975 980534725 80112043 982315985 29389216 435648716 105726976 689063057 368840666 487383880 174532406 656860905 698079941 947454564 14798136 646380514 87445437 196177702 916197769 916215059 837957032 900753547 292332203 773577218 242442139 249380764 435507395 567840783 250792347 629493466 927554983 947668015 183045331 760772912 424785944 559990276 923608182 982102471 601953883 733559877 138518440 966825339 429274444 897953081 818647354 893705961 504808143 647335806 171941456 333513457 948968438 987672102 983790012 985732981 870813225 952767235 900224368 983483750 53472509 696694216 246873881 715215622 516679012 562855692 698651843 758423389 436219137 557867038 743975636 870083358 986248342 992331552 768210003 919113644 397395078 656229872 170511426 725791598 298222060 405837892 333305347 699573221 510849530 751517165 123223052 771118157 530295676 823829503 867243808 905170683 59327121 775558276 510123812 979739954 917512518 990374879 513832439 782690857 207270163 953068518 961119914 985057265 104335572 840468421 603292795 693263903 103279877 172285518 300309292 548032284 362875234 623267262 582875904 772342163 826367648 853185063 677949576 741185766 73613331 589097960 53343375 885424728 473544525 979488149 890686674 925456322 22703289 93782740 510790550 521901277 784061293 794407968 837185946 844616498 368587922 464538178 83531337 745068972 431463103 743929638 122277867 693794439 460295644 870141285 634854185 827682888 282904849 474061873 768666755 810307521 677715928 921120741 846182455 996996065 273085706 370306149 844389523 989735507 500379118 557928730 240176400 745142907 367280911 758102171 339220460 480387549 10423133 848992747 732984213 877454281 647102310 852858926 195569969 338538464 874581504 876602696 87700011 525924785 173896651 331496445 39563725 975996828 439716391 761786886 912282056 923835907 122661839 210183048 44075950 195211495 492353787 876850092 685525128 782801962 697725173 816461513 602165990 842711229 585339084 589042128 510050455 892743727 656982134 741532705 637491639 830318833 957641970 994187973 702813786 917619234 777525136 902324315 127549600 651169193 986151595 991146079 51692833 875143483 846661157 900744237 582660555 965155687 429274927 931439324 532148772 836215521 876991066 972664900 18559346 679133379 876502386 981291002 713019991 790211697 891512415 973010241 436191384 967714998 59140269 114995325 650358543 736548941 799067986 874534661 963687277 970073952 464739695 661469695 706083987 943091309 299777301 327270462 591708370 879987006 406926835 797789717 497976150 700509535 340174126 618006834 445876222 736849922 968354030 994740019 859962304 923187594 838767423 959030096 237104493 712843749 896996444 919908693 751548629 832177771 554790199 577036067 432632913 717192688 354588756 938389295 981144953 985078306 156816768 953835879 520141203 879820179 76194968 735024337 716962585 790792439 728742975 862146243 619607116 650739372 508300168 837360744 579099311 867758005 605407130 851306500 863307102 978437236 913512700 967447240 827549734 971548407 68750898 437652079 423348337 660199890 803121011 823210543 614678408 695947969 582352318 672527256 514824265 765813043 107679463 765426588 181851613 855575413 117907026 453458859 207589712 905808504 30162073 515595092 562130001 836661375 650738480 850070000 491451420 592222901 850295753 952146321 974277329 987797856 375020700 479728940 823494326 981300406 912808658 936020124 667128669 958909759 721427167 925499603 506119512 515901243 332299899 752535436 974064749 987587692 874396270 933314267 954530239 965095460 524263419 949458699 546913084 548292270 4191672 940990572 589802815 939105234 322743063 630465071 808040908 832092862 819849817 943069568 24873997 936247379 197195576 981641848 299710347 783887474 871189167 962836363 655290348 871845741 164456867 218699355 35554300 869592168 868299221 939179865 870787663 960586989 79484970 419123786 159621356 733102949 441956362 442436349 615492419 625248646 200734761 280371959 105379005 724350557 184817480 300255046 959435537 991875393 407994618 735384685 690106774 983136713 264056629 956894752 340553745 346180261 471054999 805121314 669261159 673929586 584662846 599333609 175818267 749599336 706617850 781474409 225757997 755134322 987950860 989728085 462531865 525745111 124215259 504907619 904010861 955486257 504073471 668471387 32469869 479354453 927208548 991701532 454208378 608502958 120367451 318108559 473885787 805525255 187882461 768238821 566565298 962097166 108071303 207672393 72222091 961345321 559025166 655020945 225285398 295429668 124563653 691781864 120951398 153320949 967799726 980157001 887578576 993255978 175346757 573359353 719262803 825871961 859647367 921084040 751546358 768246013 83411089 713157734 681016675 689725103 641530335 920102857 946803945 995219278 617816982 656244028 930569397 976286739 912838332 977172505 18677017 533316656 842271844 933659850 127471232 395726192 402237618 581387472 213325260 744754247 338229338 513077864 620067848 941345537 853479586 886709931 99965468 996552688 263788581 505385775 168270193 913477363 229933143 640101162 767020395 970276514 880199051 910809869 388804952 775677120 988815139 995237551 600125157 674589657 231772503 490775719 710558274 756129800 456390471 458095016 724034619 877791613 632069430 921637183 433906081 846954216 589058932 835269903 806551741 991518268 355769978 984980654 50036599 134336893 637879264 734142646 545346730 662516508 996278508 998945255 356176983 624741206 943417925 960652249 960480127 965615079 198916033 563131693 412847674 745710659 719844525 801603773 193384747 477680656 69803459 770411377 843584934 915517492 694502192 919290810 765460875 798065062 126692072 391940211 566802657 872256533 181202038 287504655 680218034 900063138 994885587 998027606 867983682 992497952 960896601 984610090 777073849 970490911 914562010 929229522 130174732 740482369 103258117 854996063 898907203 964360805 282827672 352768062 466028778 717201349 225799268 701649311 725429270 972726345 772163618 776747770 322492301 763162084 382324975 443345783 597570311 682247475 979601517 991744857 625092031 868380496 465011779 886446534 960805799 994658473 37448604 764209169 676031374 686587990 2668776 207746995 560730479 676823293 261192458 776393331 580328268 879383266 743809255 814114090 659089523 925075204 610488863 982248419 739037769 906003946 825459203 912323731 394950096 458495926 474488844 820280951 150787489 198160661 712935265 907389157 385439042 622712658 191905068 622874531 544858342 773003675 510726011 895156818 680358293 965232314 348138492 763541848 430917056 707049858 698187155 866561475 972079237 978011581 689362113 783712178 582257243 686567959 613172062 706083879 729997349 748950439 558661365 675336837 748552828 781304212 51182508 219320772 594185948 789170008 893349605 938248411 637822328 987378893 95502006 544762720 770304220 967849581 492258603 642199558 508375686 600822006 206665134 805158771 206997816 787708810 472687387 869092767 289955275 833602393 291912812 414219828 179365530 930020291 453352464 937477327 370767484 712923252 166537078 584493631 774711025 870628713 76489321 589626264 381450747 707182855 668827481 708118917 417139710 914538878 614119728 857661477 443906160 621075631 526922777 962827844 595265633 754376792 318433546 812173173 206875350 834944096 85874459 979044284 343499853 936447536 675222077 678243936 673485310 860264497 359632617 889608140 700004603 837145289 915302692 929540712 438059364 570827746 33283632 128917256 396910527 529437916 388403667 911225722 98285073 261468822 34589841 564148222 167378351 182100429 539126805 798748593 536653713 675494958 204250345 409752682 284926254 748903338 251837624 381210920 94263541 862315202 574704878 909795574 427183528 582478499 89469784 780903251 176873092 740559440 87898684 500990229 962320203 965843377 884265038 929911314 38713585 932750410 437924544 615040440 891082754 989765873 994387730 994790080 200273842 666043334 744955228 940195730 101293709 705982788 686876276 911420171 744332198 916726340 299014841 932556008 298587955 966294320 728660072 926454916 155016788 398636199 808405108 884761470 857371442 953020666 905377722 956528994 526218450 664804713 480954353 799620733 418034698 651863577 882197605 982696250 616035190 842872944 158110539 247035317 858119021 983236874 775651188 951919291 417349504 944973417 380405341 516420303 827056075 853105507 123090852 476404103 598750481 726817311 227332519 954170378 652993231 771444010 955732621 992360854 195025085 455374968 969423014 994538407 602992527 931025811 46935964 861763846 233518942 946304262 668941098 740392852 972324082 979195189 469761489 810874989 903326986 997448141 259062032 795700465 430672421 968934181 808859670 813166672 620377766 803632436 10000829 299443707 222810849 634749156 750856895 913758093 848806845 957492400 493138002 666709881 945853279 968133499 489144995 503973725 954831517 981459201 721131812 966027263 393240208 797546546 79481915 376983640 115332305 462815975 422717193 467873918 828653080 949995729 181146141 563289404 966562678 991064632 535926127 713617418 383654206 398319115 109266206 937648997 543765351 575822726 247600776 751701588 926559818 934406799 309546799 600870113 255504881 747728213 780948348 943665110 460206069 516965434 133430511 897541126 353299089 702291895 76810354 92302611 930387687 943340761 672309761 776576303 924586333 934940623 707047469 999273928 748579347 761484230 832250295 966665990 887623556 898761361 465576986 976418743 435267751 903515974 253261727 556656798 510386449 972186163 443192463 615338290 108556846 678409202 235965431 312167940 141534897 391212755 849708140 976707520 970632849 988709038 326969169 622650869 825664362 891162708 306190089 554561060 602095174 656377459 251479324 821265042 813843980 813885652 743242380 806640686 936258703 969664355 934583369 979287353 118222046 640668217 838132340 882018124 718133586 838461826 151584404 277944001 868280786 966321700 354254579 372052517 216914351 421222488 971125409 978553762 533123872 686742571 273498371 847753607 740489401 817465251 827663341 827962353 839858003 931356410 497514817 640303555 622398837 654814255 310639843 385620741 364782552 758989586 50944048 777980908 144419680 260225894 515351787 694095991 947433421 988191215 580690742 609829434 380233856 921002357 661014783 968527228 671957238 856394821 629517043 781126970 668123887 983864385 448938829 617480998 118080258 639344065 994460901 996237039 295201884 487163874 739071665 875361968 523927035 722429826 449561568 968519954 35694634 63786712 559755670 933161022 907868872 946806960 875055979 966813353 656210434 741041748 827546510 939219028 414632672 571669025 606837678 742981864 370323850 787233110 408992098 987349321 837624014 973685541 402694921 628863761 210884324 332844997 988944062 989285498 809488061 956460527 615258491 886016142 120686244 745534255 394906663 521943075 238855907 791076338 62391611 935705667 288703879 416055071 892859245 894401683 381837092 573135378 920334820 997158494 860116648 996321648 749667224 858170263 984152364 989524671 943965019 951167580 369940475 543589586 413776276 470802969 906761591 952347739 70640874 441543151 735020239 876341509 399736604 483665238 100675152 555204351 279296101 353399068 461965235 751012648 771400618 852488812 841723454 952519156 546322724 826825659 606149994 831996084 813971199 894444281 704109919 861971416 221672220 447569126 566219232 599354882 485323741 966992617 41402027 520051565 487765060 693550309 939672692 954650811 876737454 994420652 272318001 477946770 268575849 349067763 322830725 415558988 773170805 895346374 834256249 911302068 251982318 803722788 854592974 954817901 177897446 900723711 490293434 810087209 395645916 952463710 19078978 719192882 598604527 856533854 385807438 466073494 624120497 751506322 974945762 997164432 134767313 745178872 63725455 478869147 375119264 895679323 976651940 994050056 64603188 658187322 677267566 801655779 607463809 935262014 352427873 402917478 315936969 518700133 996180920 996305069 473343720 643470996 970159372 976749926 535991803 608857557 685966736 734885239 913750335 990455875 935650031 976834730 142689854 568811335 643763046 858490895 750465513 936637194 409668319 492757348 872498850 916832144 543255990 846639802 766195168 847844337 449153713 548658230 178103115 695234902 807461602 987359965 670631052 964812033 430275501 516514109 222597952 365422643 825143074 832583314 370901719 914231341 887340105 925702751 590129534 847970600 77828610 555305841 379689468 409705808 160216327 774015622 836115906 945738346 632432631 752141641 952787834 966143359 697042956 738638286 728199371 859702861 335311499 439348467 298683836 358160843 898629528 981832434 750076074 882321783 830425622 858956886 707360629 909140023 650700399 929527401 119440558 492070665 995728486 997693679 206440142 568958408 130541423 954298152 938770399 963526241 829007339 891101535 667489123 741837180 514983317 569148290 412435126 456147122 67849226 838360391 409568369 795871259 586829931 998214457 255434192 899954578 614220484 978776381 593241661 993984609 596759494 916225459 970253240 992107820 42144719 124878821 568744345 841947585 814277396 882365989 16348579 398308720 824454585 984975971 692511151 718599021 87483376 701977819 658975192 893723487 658551883 703214966 285361488 350363826 938158371 968926719 70185805 234826927 243665283 548353183 886193944 908736426 275444085 280163823 720135844 834278503 204618778 976019750 369915878 942430870 363665666 982221652 351552426 467346914 779575658 918123415 700795274 877882240 722299233 938711267 222989964 751300982 439036859 593106897 430848497 766273705 254548232 896132809 362001888 508826822 290996757 635875971 151960358 480267518 947516937 978340570 955799479 976205182 30247313 648628682 959125344 966271774 412959440 985286093 648586666 976572621 470024522 521180451 614092588 983613098 125584827 308842716 657173900 766268724 420509066 798874817 777739778 867501678 479090204 896772138 840272728 878313187 754439680 862283831 200858656 685107294 980956508 993797372 961259999 972431880 676112433 870721281 813628024 938146057 83360107 100191040 859007452 927137203 814084404 986323829 433535457 723881229 681397229 767167488 670983680 952283224 309342233 493755154 468986047 746433849 40279164 862162456 9174313 426124077 354069596 787511769 621728435 758607499 846610487 905771115 116298982 888874951 397606051 598679547 591351009 651470900 310801682 966628352 461645028 562049055 312744844 873567431 527619648 967125088 106038494 630523541 711340788 793121042 941589071 983494516 182730183 423512471 153448223 920592296 315902968 734580463 969831563 998880172 343391393 603044816 898182 801833576 234051978 258314734 528729362 840420830 197208660 222592489 849676232 924186494 592986857 904184770 832769352 953294449 787202911 942527589 98519709 850921426 205654868 643439010 208336354 959807389 662021191 716730825 147269438 416695526 114650933 574989826 195614277 621703720 984341287 998444677 736299494 842015767 817935683 905125389 462540462 557327462 978633471 989903080 421187765 963326138 298928544 846973765 308078340 964329005 166302744 873463750 183704527 891505944 476332745 606607527 57006898 81894642 372389896 534157888 246359015 563966627 914267862 918896784 435738731 722988983 205349003 542300044 973093835 994286227 428217657 929677886 835130006 994720352 441594752 851635605 924717699 969368710 66707238 164361469 803253871 872729567 200735458 286420213 954001276 964342776 173810686 577238682 711030001 994627961 682474923 754813859 451011642 537842781 127396710 227817687 740517850 853845625 98845841 648524376 346428833 367444895 117073562 819461671 404423398 922164425 451845812 582365888 42134306 355235743 602652084 747740249 634087036 872659491 254813248 807575957 822797984 953493392 340553801 594992272 453097479 460352962 625111196 974937703 764630707 918670884 747714934 800600963 870225688 877864087 679344699 718747978 456950018 501593219 687891218 817772791 564601256 618943095 783872778 992613353 112317341 160765026 564151875 682711812 378821694 677633511 622773699 920489209 598246944 915544662 13521917 502019596 757188487 942730970 262877250 394799299 256206779 465098269 897793908 945834184 945819826 990243799 903473694 907423525 522257826 929009553 291026347 442576095 90495538 744486446 766926075 929820930 489541685 855971897 966136479 989709830 608461955 876463465 614502572 904384397 713379782 918103149 250170589 965343198 79852840 251950140 705734023 726967545 402288266 616431349 788189525 936997953 747172982 981551977 592135414 904557742 285579203 664904271 698277479 869155821 590487803 735169504 607518703 913932676 826494286 836558650 156816268 999278122 723696773 894714512 642145279 720299376 941513876 965726125 928210741 978448122 431982497 781624393 153511312 495790301 60777940 798476613 376562044 381058123 179059589 832622940 37842829 240917182 612445314 998039715 90717115 229352124 359832093 738981849 570397137 587734740 733405808 869714666 874462646 897495835 266725414 335062723 401207060 423831844 626981747 696205774 304508782 596117956 946246175 997489616 335353696 678955824 538951248 998384859 644550500 885883962 782048168 905457863 172589490 617100238 868555194 957520837 8979721 887052899 808984549 913700012 73756744 139807447 97426851 717179262 892678747 971694928 671055906 698199884 968536223 977801321 208775661 661173790 656066834 987463664 101789973 915722296 901439527 993804502 213070539 815851181 780721844 966698074 73343960 929082988 627357713 967273750 554031787 712610022 160191076 610721635 670735853 718149426 380765211 640939213 6551828 123357545 887682430 973092335 372867132 719082599 154227593 711449729 101901847 676346852 239089775 254384432 814666526 882458938 553313560 702179078 804899416 923741845 677613981 783366541 931576250 964416746 497855285 673197087 699510763 765186649 136969956 779483587 343702045 892109511 942681525 984003785 678314766 682862128 507412839 613413015 259212350 681490719 929879296 973816247 785821674 799554841 175313752 416281496 431001042 785284831 579489119 663373937 77973411 782251266 90541905 907080744 772193 91340052 739277173 922830734 919948418 921181051 428082975 886307947 797087467 813603545 628355336 786985229 44318345 291628763 960891652 983857470 566218145 759918834 843511660 939597015 459366493 727975401 723586428 792190296 710540152 976535633 460507824 921939575 169159632 978447284 845928932 923061954 706737915 937898709 198639150 482832170 536128909 628257856 425618893 621298874 278278297 322185627 957951134 981483533 259538348 827287458 353941618 803158152 612819183 842583458 686740996 703873239 485754952 638299966 704824556 958163613 870038376 990235467 574059080 914566628 339632006 626521124 165179064 451528600 476772146 774472114 379615258 784897177 951643554 976036018 234383886 280905339 282473641 744664826 611573676 654999087 730887457 988832213 470618316 849750432 240587787 960739837 294861699 485474058 502256831 623097727 156969095 253895732 193554427 929670279 531173259 835668175 10403488 358713623 550623156 964887165 654857731 731128103 613489984 654844841 635928457 870599766 964398596 990507420 2285600 940985614 600389187 600527348 650732056 694465050 650814537 833616356 857238135 976406065 183598519 731325090 932261168 940720314 529423203 998159969 112169265 324982765 832398259 978389065 893327980 919422351 24805064 157946117 84073115 448012093 91387231 422802701 255692297 929481892 509787466 821975509 22977039 100545646 228717184 896854257 487969819 801904726 117963396 377455168 367760486 613679011 131510730 359567565 697368987 988485554 745971425 983533352 887385399 959806961 560307956 580413893 506923903 968277242 170441605 934607648 341034165 480742719 862650472 915985813 725233180 763632171 177670509 506256294 94690885 628124388 771037895 818476488 201447797 219602945 764966716 794042259 178332969 847425398 506856704 751517703 106195605 612526238 302232319 495292102 36396281 679588937 424347589 965451121 731101633 736747051 650587757 843284280 382466293 981755194 897530711 964563317 97092422 951205940 174042330 594695644 326027656 654873727 202397670 791909668 405053581 661087747 312154201 984480411 65374567 834448030 486804634 618348314 822680181 880811594 619686256 772686646 841150852 913372483 880209634 964860459 453474575 986450010 717909756 954042676 828096819 959389035 690378028 936147989 288763134 888837266 666065811 769069826 817321563 833544670 188443719 211410731 846051812 964175986 273250256 951400256 400952249 508183169 445849959 509919877 652433151 767097004 184337400 285491201 877599981 977226632 241300879 698981415 965351839 986844051 705425405 914113897 832994546 930450226 605900965 761773554 137891708 743611515 607586438 979428568 30024636 981756510 217808760 939227816 487213557 786248124 638860521 736293235 60011182 774959317 911834308 913232151 564839975 925674744 764630473 981080699 44666837 655536155 35328407 704070191 159725300 587734758 538149555 756724875 535395933 867453336 704644883 897761880 155692135 878251324 460280906 579426528 337921036 884672030 481448762 715459934 178649130 353566451 952276264 968960726 451999971 480927310 916397449 945701417 263760330 535373687 341482085 899477778 597611573 683121724 441534533 872982859 67967441 415694560 294559767 567132102 430357629 434847961 993062573 995298098 596403684 757076596 779429955 823969364 620357349 743174955 900798918 990507865 439886338 752739209 256722222 378356391 587303751 677491058 914513649 927428466 724967572 867401373 617040284 998456723 800468571 895540549 222457197 702333385 326783341 795179143 713550139 902106801 426351555 776598428 946700784 947070929 757952184 787443709 476158612 666555726 168255909 971778119 188772355 790858534 372871295 379520601 596330846 715786075 727658651 815884287 551103850 683108206 513550179 562982668 529988715 720106418 397594129 687133026 188978208 609484646 871089622 981385394 567133959 584217122 522487221 656843605 687476222 839423733 794832356 919053750 835345490 859801476 733139642 888319303 436040711 956635402 581568196 867993856 239857365 568115105 382206827 414195549 449483741 910222601 473261924 998212537 776752736 950599389 649989131 701713218 814299586 870260464 366507383 554450857 76209324 719942235 826667652 868631843 137287706 337072304 617346852 751166067 874859575 879181662 908151575 947735513 66641983 106253571 275257524 560336189 959266478 988205247 289115695 694060521 614834558 770586147 512310416 742989549 715597225 942533832 335035987 654793349 706848858 892188579 8090195 526556686 726676801 729788316 502113645 941427973 760307596 963021247 798919235 886982049 92360433 888223124 396405000 958148592 744098610 827434168 687161003 695483984 72429325 74806704 811894723 864536368 723404984 855768732 979933100 979982867 921246316 994757873 654362446 819319900 461719027 703088432 943557684 950328674 918310469 985991652 324519559 703302028 329528942 336006901 389583828 863630799 124544688 232746602 299158091 725582904 830426317 949375965 285139679 463962100 838339947 933421427 220050127 775869853 381504626 579503069 630995124 900716446 140124589 256605111 731463902 818482516 750140982 807780386 781771359 841776960 347794738 469091493 882927624 971856249 701166226 983463550 39381920 272204833 19045610 543675882 140403015 415816210 513389022 880194327 346275523 432067468 462520333 982364443 861132939 881346254 367785003 447031650 541366205 788732823 368422438 541809166 725097669 740552897 478061973 991146143 740901353 991381954 916785038 952571607 574992272 887854482 336107363 572553347 702253161 974189486 138344563 688615213 748698329 770729599 985735937 985799077 289837889 935858731 712288922 899997658 403548315 985810080 625514981 884881691 763631857 982985126 914173530 934491800 332479100 338873499 726727677 944742542 151772012 391434886 735699432 861307702 25389716 176654541 510500901 802888623 259622961 601765879 906120216 926564488 127071564 565080417 517059936 639751009 833397586 847789890 7529241 991420169 738740623 965170688 195249812 754426202 394763247 708489560 174384434 902280523 996505644 998985295 662550246 694506783 135674654 888543985 905043773 981396611 855032793 943750634 33532501 397503523 109126103 529567270 473508976 787787185 888463825 917209551 366908284 528694486 721367587 982837958 508107726 518775859 628612431 942653994 448262543 766512387 638087896 759398389 236478830 909542968 917287407 936820360 545222102 692253711 66216053 411246187 126651311 801077077 528323305 903532753 167850074 446721856 768556919 911997788 213002678 888531068 486016374 652369157 54756290 592707294 709724104 724075627 392374650 463762157 872111179 913253946 739479167 757419336 886170951 999008284 91215046 212617629 343412385 455820498 233251032 772493260 142820949 866997750 507274666 746143572 159617768 468874174 987686096 997735214 516906931 691032130 24314634 828342647 832692696 903344557 661364348 878450681 29775714 630251562 615781152 687442857 388820600 546607805 629280499 873597004 546872796 745952352 118592380 153603349 367669735 970638444 704315507 814738713 871530004 949720540 224855579 639525732 559105957 852456382 888454764 890360734 395625359 565635265 324316192 432432029 263490605 505257421 531390640 821507293 555144530 604751267 202860586 983711209 418872507 520593840 269724900 334400422 778739101 816445123 187623934 456631184 342817974 834260128 224825165 756085538 905829968 951762141 207883017 465858185 785313066 798223358 662204059 947208267 100188752 949637126 349954391 469273629 750829720 870565446 742026289 910844501 902927053 972662063 550795114 638015257 380522831 456283095 527425638 816019774 268757845 411597989 375601038 606962454 28403538 583000608 497506206 527168751 580977030 897583705 780168073 805164828 958923490 998541175 155202290 309272347 495813043 828866652 258464562 858444467 756735860 974655157 372876522 659020856 836962486 909142305 808174169 935887826 700920211 891054720 644110056 663055532 93843850 997415683 631016261 761289689 703367819 908887231 711639034 937329528 714365613 948291114 528452861 568678600 561872941 812414093 319150929 437598030 72494311 454133663 236117763 436151352 881295776 946193220 968326493 997698542 659010466 839029792 308899661 750854765 77899738 492913927 788498543 828799922 819978270 973091182 466149818 946373285 615968857 797291688 923814034 996580762 998722396 999013450 285163584 459776405 296781529 513748964 3618555 526185050 500571046 695918638 403572129 718677201 424194398 940375628 182905040 891631894 511242601 802527217 221588387 373218967 706553138 917295089 898563790 915546799 543274971 657722191 96987632 549853739 319097852 589414485 540076376 771936934 489648918 942134886 452295124 475053903 929299621 931318090 41175283 984290426 920237465 984225076 640609354 713908724 347708218 536214063 498304773 794928102 206636924 713367948 566313649 903484274 62088793 821912593 856748163 993558578 327669843 378722086 523839602 994444401 209242764 485400449 271320903 428671812 380867936 954623363 761340596 983598045 59706741 247416203 312594742 728272505 580337851 870511317 434040750 784704188 145307403 438849437 39255765 411180233 151822803 764349069 738577954 983164997 65115527 158043119 551789315 625271883 612525018 929344625 799323120 975895417 412205677 981493853 739642707 811484656 321147738 672851232 256840348 390810205 295736939 606883524 850546731 886809691 679169218 753587500 584400389 843683774 386347987 560075504 262798009 464396248 64319847 64690465 843304365 843475810 908474363 926758071 118907091 380764683 288171515 566996798 791356182 997604125 838696708 991480402 685650756 900823122 181208687 308875599 329695838 413478121 370602985 986526972 983664175 994416163 711308858 971010821 587258324 737303904 833095592 908239754 481734009 878834436 733431191 942629366 578523573 593188222 97124391 504533029 655679787 935946178 110231925 586570274 381110598 796589642 428541316 758402427 36846422 496017171 689425599 941539912 88687961 119194460 476535172 487594820 451801589 727283391 985678649 987836163 399506584 675497388 642267321 743009508 50579306 806714996 264888291 840967839 753641592 903740863 350063779 863489345 271863326 723483751 833797502 936080378 920223292 931733587 505669991 535753192 727236333 752966054 574444714 784198709 717403354 997915026 540453174 772925574 235802543 677892485 992314559 994924718 402613382 820489100 979191170 983203322 361397145 541729627 741174770 776875350 166923213 708274467 226434717 768298876 415380803 739939523 543984040 957158300 571045653 784887250 122902696 344565792 649285199 786685143 268465464 377383630 301436848 783298541 641669903 832482171 476195877 792532192 755788873 936056147 266803531 727476493 848093919 865796352 731614302 753763921 835987210 871086503 736093485 879146929 238082515 627578176 362042644 433437404 738603719 929364010 391020237 774175294 764203917 813414503 938909130 998006891 43748714 225292353 43583244 133903044 982337830 995371926 118686073 471179765 920137094 977012122 230839138 453769519 632651278 767894310 245047515 982024530 548523960 625925150 796090412 978916362 693961557 699451766 688943508 724819329 843270826 940729913 252390023 863456615 583378310 837785730 646465626 790597035 632987884 879201326 953610597 956418202 64051854 971185251 329237043 626792123 213705822 410598142 645858280 833870672 612105978 949733447 630917299 880299649 877654739 957013952 629069194 675618175 962408904 990128500 802956353 993177812 335816870 389248403 946789295 965981713 276060214 336617556 864108626 952561157 431358069 827179926 135433466 336275616 443453595 836730060 704735252 913935990 452396114 619284177 536573178 780459639 205913284 512041744 2325651 716848691 248220972 578209390 947787317 956783352 848251037 952482883 628828314 826394445 127593842 913353296 695747632 892763770 168348847 843401134 676703733 904586678 420019267 938851708 760581906 844682534 771986509 798687666 553128100 989007320 872655045 996675017 25491588 848364286 579325533 598535887 486586019 885351074 678242029 834953531 273532833 919051719 789767005 852327095 294655962 565534162 102508431 291265412 648427861 928734737 679011041 965870954 818625151 859018616 895058589 980512747 259549209 337062217 774238577 819595068 173049130 706500500 97488673 749831658 808007408 870166108 790767362 799745122 564699960 964825375 18465182 483822157 168425434 563576226 832745182 850350347 494806167 746247159 821410644 982751088 856931081 957639609 893831929 927130437 47425589 864556587 518266139 668373528 91488978 518967139 915108298 918393557 818015898 986649210 647255903 918518407 842161996 997801692 860954671 943645417 461466871 680347964 967074971 975447783 702579173 843668099 423736164 783474593 932972597 977344338 283800099 738154011 604951319 826668910 498961242 697443094 166632903 193109433 120901709 528997622 824783699 948184329 806493600 932404982 945272467 958186044 201284103 270704182 587988801 631013531 723420669 810972262 618783938 776004813 973493840 973943812 486611542 975092028 494447691 694485619 43905584 392427243 907144031 910905160 9061983 555716210 460763988 854611724 576249471 731785050 584103644 751329004 697918318 782197668 313703746 529382467 846454273 872144903 819534714 904233885 362766002 430752557 128715404 236090589 477268324 882799886 497250571 602812727 350445217 931284797 700051602 785508919 576362636 714469184 703314515 844490900 406397470 808804806 734793378 788995751 907931176 975284314 915738943 927484701 250022328 331377512 145039517 977440300 50282621 196557526 369922357 878822449 884975870 995930556 334055492 826471849 621858476 848121758 296967418 860862510 365720878 407149105 565806542 587193717 416458713 601501702 604930712 956338175 761311268 785862737 452391803 873520186 996284456 997602518 138543422 847944782 687637160 890530296 335953408 904405197 952727509 967518527 535632084 624900114 724851035 973342257 843843864 859185602 476920396 899528495 594043715 914427081 310930867 696110218 235483280 698022925 174594958 276079684 87993228 590941262 698155618 979642522 117585391 763887272 500860893 746133775 28777614 59519149 841092454 957528278 412087247 935628123 542146220 664089417 177971606 927688495 470524673 830617035 80249282 746637371 185781503 954612377 390075241 398474621 214637039 887428430 796392956 854220786 340687145 522549319 976177505 990786693 169424818 552988058 606542641 951867132 858403757 874457667 668316391 892562000 797129272 967368533 820237759 963180449 639123645 845017587 585192857 840000153 847895281 867553548 392455972 551537420 5360173 996921292 557891650 947434098 617729410 709767605 240182554 949870675 654757749 979857792 315451901 355610654 943561988 949873083 884522971 929531596 824900214 982431777 218603913 811630320 480632267 892731220 790845694 813424957 232573819 412168519 746356668 900703690 561941625 626676592 609478607 616085761 282094715 744637671 49200025 482962661 116232572 450910964 201362983 665889426 777132772 786127763 223370225 318906244 653926369 781458354 909011252 936790193 217597799 671496528 196505924 215028797 182374837 956553755 988316139 990093758 361734368 945906291 922210105 987848556 156072194 277281580 664706864 717624112 447212490 664592309 372270655 619566940 588703632 711804405 514392846 598850894 732342319 752123834 267328056 880295295 805546080 899431477 526602504 744600554 795011687 866274716 187382984 586483246 724506386 726182160 133523598 141688287 168388689 273275885 325689313 718762183 92655893 894959259 759514299 946133317 675030669 940846321 152277216 441614961 358727071 621328404 866579395 931094609 33786491 230138448 904974204 980450267 790446485 828052742 139218027 946676998 767023367 880268358 613814310 634965157 459471733 794381174 115005433 168720257 805550254 985549712 536225621 612221508 686844395 716153876 40332538 614690023 241038123 479621998 891884972 912477242 134016917 430775468 530001726 761840756 565318295 906954452 134412259 963768049 891083650 905553115 924630149 985643094 863516551 952433040 156653071 820771672 652650049 772334490 612459755 691136431 870963091 977078932 597073268 776143807 935249679 965223988 302208096 353573326 313909956 732851148 411720403 849494054 860755416 895495275 618367270 956721039 774991785 868931658 657706332 670505882 374819596 745571437 694926887 737650926 820914310 901936507 586373213 587944456 574488385 780436955 699688109 933628187 314344274 371799780 384501266 748461085 158924302 875169414 1521510 996792247 6330218 966099816 274500857 365277004 436303224 534067413 570471736 878667041 320565195 976608429 51923587 896828585 196171339 793058358 58494462 237800458 5623756 554308496 444521014 962134452 306668686 494836188 420895233 606962056 454432759 774013925 475729195 972827413 4567446 683565250 562118559 579799111 455022232 927329327 676071965 711965074 936186967 972435242 132438536 460189540 530983795 962165432 187962024 356755431 136334722 750068729 997625741 999171262 350814277 462584704 260764415 817885206 363115200 777819771 25216038 684440082 357623438 838640169 735198003 925540906 495068017 815596299 935079946 968929396 586025215 636345158 824195307 883641830 420240084 985289327 946378504 950108796 336384818 951901537 321652372 778361637 752508652 838258848 273602818 835793683 376092782 413186994 189652722 699612501 739533364 939530244 728578682 745727705 943221188 967405693 758519910 779499806 815540713 886708337 933284269 956022846 707191563 948464308 787358991 890109525 436677129 697153728 897024177 986275894 826979971 916312451 246289021 437975951 595165589 681897999 185777279 391987082 276420627 520033154 717821131 733627138 775799775 831361736 716565822 803994599 326881704 413395219 440823008 551157569 978200755 995991995 27410801 141475362 281492459 784586941 886379833 936415695 51270807 996673478 515118517 703876846 375762756 579353059 978037951 993736740 38480711 387846390 109351766 768166244 580643939 742914112 756359013 818869676 957080223 974369762 715400814 838855899 41151370 975046553 992298142 993629445 965047600 975993282 713108460 975828989 476382936 554514477 243840668 350942983 937503296 939843716 315389219 522042193 680643130 690137511 197863913 865212658 289694841 395331710 259824835 702527117 585908753 667306419 130057911 335808807 675762224 696654997 963430839 980786194 789669979 904324081 791033119 974083131 553881524 899821849 350719621 921190673 958477638 971286611 85655631 150496660 361886991 907168428 152851134 202618527 56113642 704492557 582251706 667587375 4361130 988445452 250106703 544745025 19509378 593083019 2504722 448502888 435206352 487272176 725018726 833768391 497944190 929471421 407890899 573334216 383793238 698163815 283828003 430311843 377509405 424914095 585091653 636124357 905192151 923106845 468660035 807644463 193029826 775707795 567079473 843725833 739783869 766630966 539610509 542543169 626438561 788733058 832522446 959060920 253391827 679989817 425279817 911179153 306339014 336622224 233930933 670822477 207486306 965671556 215152702 906081716 107498284 574537004 702644107 799657803 305312197 554469488 42390474 773258597 6002270 668560041 489757778 959341066 304224535 752746085 315844691 693879370 967030392 990178008 483784749 672452208 877062247 883504420 458556140 905896002 190718362 702745739 235454007 261935545 628652040 899291220 276047017 621519812 948043926 960335504 876650816 972108316 180110838 562065944 450432086 995326250 466062043 719067907 432880382 846055125 570213783 617822886 718005625 817727932 240354141 931376823 668659107 798818623 97996379 740686178 371191374 897947045 592076914 619565110 105399894 783516576 430962465 950756654 572328903 675024011 123308258 922339614 678680019 913598728 437869168 881226798 347716268 717866235 70336737 660276501 70047454 989778025 606409505 701238313 720275001 771195299 304787862 613922243 220144871 222165200 564248944 657614960 27929741 935975235 192390911 759299372 794246677 959851291 299735844 817066863 453963765 787466105 527822883 975097848 427113526 439928544 491991331 569374494 612084152 792136128 903470268 904701488 568173375 663558787 249648170 407856958 314464265 577473151 552429000 562860824 652567499 904189472 717675607 793290196 952673689 994678415 920094629 972463680 273686488 443938183 513478412 811457690 819435900 917955869 77725618 607143591 186298471 977851579 778201150 912403888 19352921 784605877 865897303 991491101 830302037 967101486 274496037 304327592 348097157 822434696 261958747 688203509 175122698 737931079 957966084 961070742 610956700 858589518 377502806 540526143 483651583 815587205 812695260 920370454 904599827 905144724 702051429 845979984 653984525 742304926 575630416 953484728 73837376 587430497 147536286 789391404 239708367 740199114 646001935 742814056 592356311 627180587 628946345 707768821 988429872 990932467 609756341 635149827 333827661 785271994 340492334 440010348 746283398 921952901 358002841 708620859 653320056 684685975 284596965 614881672 895415503 975806899 426684020 858055121 28041506 394952087 759236483 996190344 100244809 884669668 971339663 972430016 725633900 916545057 464183955 790100157 467270682 557162982 681863727 750773088 250726011 835176653 279265834 309226697 510172607 947070161 450090018 637791388 724815240 952369249 711785835 955470089 739086635 878843497 776037055 788577941 550330712 795489032 48384491 185705940 229585971 412904956 414312151 838468429 892034850 941787830 105510379 212530658 320215693 595350829 456190400 833483529 504194599 641169636 343823786 475433480 759812223 932297493 219546784 514710562 236119768 285334512 9545111 550035460 190235842 778136905 791262463 798933890 582593280 659699615 29642117 304897273 450661630 605678058 958694794 984826104 338635469 747121100 898891637 906136420 567645503 715648346 861465844 870606268 56687344 677259071 114569559 270531105 428660911 742426857 610285289 922303345 721471429 879036718 497653188 868244101 157972074 673684714 647370252 835521559 374109202 726507331 153598435 232179325 795739046 884283238 323140637 928656987 605580741 695264901 889395698 944437319 817557320 941359159 894024981 955075688 548244054 607861974 957618339 994632354 955836371 979737250 708631763 727960811 608386729 990589931 501567513 548254771 652927989 934409031 288809730 951806023 662348327 721056815 319143336 471350984 196205783 462993517 669274204 911003026 960919360 987660810 13670216 575559428 593746137 711513913 441374608 544805031 114052047 271145406 973460123 976091262 371962689 558980971 848185426 917108218 192241342 941456835 811126608 951756651 386899991 763152958 927919347 954584046 44473298 876041388 460718200 836670684 241627895 257347867 435233717 533797478 208774323 360498371 715951211 786406049 93158499 949838721 330885177 685532511 794875129 831976076 5403625 592735843 153100268 890466884 781428958 862494574 538779916 804870296 163765107 629441274 477013655 763563650 31179531 947236072 242629761 813335293 797860341 964326083 74691658 678218942 173548868 846000533 91561104 943441949 487255725 728036982 419194722 679049862 798771034 970759589 926447269 941140711 185857208 903606328 95510465 134233385 12378894 350026505 164881954 769725547 518476546 993746088 867698277 973572838 98752723 312450573 274676840 859561449 972994746 978388500 575919540 769027835 74102494 213551859 789873778 934906955 562369538 786043409 312085902 496471202 801881158 825674946 478891654 504776159 526310298 874061526 370547679 614703650 213240897 223807487 670625712 805890935 154680485 507307007 491866507 851977780 755037468 888765467 19271897 726045343 628870156 972128989 544526478 549824827 603919561 803029629 390688817 435841890 314581121 886398709 696583470 714899153 708728523 820108195 568927779 729279857 689528006 841620775 164066002 573418516 322541085 668809951 771737905 901030382 155442112 585235560 326941460 388709139 271989627 533018951 43523840 465491849 305850438 628547788 753167533 818522777 405528380 760033134 14664108 609612161 635060654 856592569 60858791 283033542 414800224 978204452 267291356 901774917 271490601 838318084 844028420 947389927 178812642 958430089 92308846 885721031 350056349 518274454 846641384 950106316 957789567 988463336 192234095 251148896 541281818 804566264 85361804 198529332 98163734 552061874 744353520 922910170 436073440 770409472 135214401 758561439 71714044 879341695 432245178 898580617 172825510 268567643 959559467 975835324 802708609 945323916 411445884 414176818 267728959 949202259 10501726 811453092 345293070 892315417 230398065 909561989 852743765 869784673 387531416 420033276 339168154 828018593 803082771 915324896 113789281 414663718 10834281 534558811 528695941 644607066 478994872 735786090 814554048 881100041 7101786 570903030 50543463 865807033 61534470 778149808 469606052 587226549 523103399 680244196 432339005 797763576 429922048 901963055 708095928 711751410 511392746 580195959 363029394 610818526 946545699 996831700 108273825 247141730 614467280 633602405 224406664 937588143 821190956 916207477 855935182 914930935 47739644 466214807 607327735 782838656 222972248 242496444 407303125 801282247 998515785 999042899 239389146 317394951 135792167 329290682 915358103 976689633 443067629 725580158 272772631 820645194 484703626 694273127 944074408 950418348 688389721 689536086 671570402 906671199 907516826 938123114 642117083 856629941 976403685 989740471 239203586 310599686 720329527 862937604 560981254 646188905 288974585 581414020 196863916 896692953 705995716 820213855 898920270 902253576 641648135 915874215 640481605 771371224 181673953 454797918 20493877 512726950 675024204 756666444 371988668 709252503 966860392 987212559 791754844 962754976 895244338 896518152 600660820 901231414 373938448 603293497 526453532 528152266 832620397 978350768 554207057 730359004 29101087 233217706 884982930 922350203 271088591 640167938 803380328 867537121 9017213 151368567 858143259 870043524 904519870 938920643 885278794 888044679 977506761 982834933 600997141 679375356 920602083 951906488 430874839 650885193 114095685 941786289 467016691 755149147 473340131 603016014 458456987 769882422 965954252 986169273 261020962 281523572 671963930 873412936 655057214 730520701 815924765 964964469 781643551 960634044 628633112 725308170 241171504 740342460 977508031 987496064 880868091 901999134 176907373 291478628 556406954 992555075 262942984 403283033 390752590 478823202 445113579 737343106 983209820 995594733 137487674 415015992 338733461 765140552 188596970 668415067 591159496 708650310 51365723 516685341 117444279 805406354 263542230 853796073 356929099 357630491 878299066 900665971 17527531 679914358 370058103 987032068 433873696 441982032 20969085 904498146 773459376 956683333 867179655 968293197 129065322 564053002 500952429 526762676 932583675 992629059 859086419 908497829 936593665 960840528 333041302 638759474 302727344 850858006 882945930 939328043 39324833 612172299 2298644 297098271 430840921 579430923 211523307 827966969 412029279 967441537 970073779 997839609 567384682 995999044 861302750 932646775 577942982 801389287 454435685 917747278 348639230 700173233 15479329 787686408 624528240 997907101 901409377 992936238 704700858 762150389 608228803 954350170 377612565 985988174 485674372 587587479 935305886 983560321 580309237 723916795 489900869 707216624 910062407 985159419 157187263 649953515 504947668 745661960 224920969 463393438 34971405 104431881 249400837 579334603 505648641 580272732 344276400 786914003 162390721 989206020 108403168 311285261 15464515 53206274 155301859 209840587 467106992 730140799 50746456 877907406 326439933 597043035 723242245 951552930 35671176 724605117 516999878 658893184 69537136 981889615 203618349 535390809 616331647 982212134 962166106 985461701 89638502 662666029 665341996 732815230 389109179 422740475 126261193 299934371 654951216 991156918 627868445 666038413 156196089 567938556 851460778 924774686 647482721 678345519 438679534 689553573 875490758 879513896 766862713 795569071 159087134 984136671 184039434 763239278 222195871 748699337 898359336 973870734 559488554 650496737 191185102 563619996 259032951 480862452 165840804 948785221 785336597 948505209 398662063 544451634 686303508 930950728 762424517 932769591 338159309 451818852 787780038 937831237 484751603 563562012 436560271 511509009 35060622 169087240 966382777 967661242 912196168 924412362 490316230 820378278 464069977 809553573 875587797 972268605 583373907 664726873 23687204 867652218 394258861 460731093 877035183 996990795 671888604 927042164 525724016 966885239 883379734 952818159 13963740 136177032 153933045 989543606 502970494 526058543 647026895 667225639 782162817 950526009 713322059 826063841 769548715 972894326 521660122 586742571 772205727 817765456 645109618 737309074 631869826 878611057 962213184 981708926 308858015 767887634 850383755 917796623 994551958 997106609 135713520 914338301 74873337 257290433 738467174 932867498 666949984 750648824 642122348 704553965 899616224 939784736 405428921 576680842 627489298 992892194 263857535 490381221 884156353 930029461 357931369 775222520 497916490 524421919 594747411 626952128 499411167 647913977 170663388 961681384 492986283 878144716 67427964 796872257 210057681 711988789 383540118 794621968 938027297 984703840 58607064 150472200 668793444 750403980 493858221 800065496 132288958 836256586 26704575 164080981 462612007 622081185 194377964 611142183 861944187 940109472 669491170 968447855 85237657 270216235 707217221 818739514 722009915 799861794 132242153 920667861 538658332 885828336 867162581 902654515 844628622 922830362 598394971 728798482 755219033 813714913 440364756 693289716 781824309 802285950 813688383 974125995 784067772 900833066 547556773 780321505 516440727 650108789 58373861 145380623 961516122 987797916 696473323 998250020 74478158 429401645 372391403 467936953 791215461 802287922 703870599 821354592 7977930 486950539 465066971 737285874 79085211 139640015 939437649 981397224 246788719 325828700 431622620 807564795 72723277 498990986 932844559 936113903 496612727 802370825 49299364 76543534 254292397 685124086 529897621 810243013 387111739 573142805 893050917 934511601 64930146 644221426 616479254 990924284 864220907 895065218 456001354 538024613 799969973 967592378 770651916 854393444 48375480 232648801 156485279 189818119 207830614 285371606 796530765 867143777 560325268 824248029 329926737 409440598 948886648 954150162 348758981 965441290 861256070 946326430 738363811 910873978 257672810 706401849 930262279 988743863 443472120 492356710 924462296 947632156 574982891 601998170 393238795 859292977 867271981 890607462 260782657 993758217 6424200 651633114 211143753 900028487 27526687 357889289 560875244 654446079 729194042 870061089 195236299 494339442 144095637 786354990 370022269 427062590 28225593 153463942 537966331 606365713 714573623 846165965 779644483 814137807 733289970 845779673 163509826 279344264 853761749 994275883 676822990 941238617 355275066 626183161 644262867 904936538 10253943 306156709 348047385 568633725 333448984 948235452 307495334 769698804 23739741 874922964 23119473 552093592 792161546 824603199 38530572 202134442 232406028 667288029 34563069 754078932 611328044 932686664 935626734 951047723 218770915 900692584 28762896 86864044 511232735 773006925 917818829 966096898 760209564 937617004 41067057 446003666 809727205 927566140 755766263 930032736 561200253 781379954 944150326 972793840 692967593 853026282 591667984 867573858 205382415 385077362 665291795 941611228 737592728 783235080 885579484 942328230 446521798 454578847 620033863 718262749 858200190 906831429 33109837 89700565 302453349 359839404 395623394 429433800 248910333 564223426 584886542 754573205 743095195 801628000 592625092 602121867 311844592 858155626 601269637 758844792 265837099 625251260 214645855 480569135 110409061 322181663 791856181 804238870 801165597 959384848 615223102 818601533 798892804 859137231 832708220 974217240 45086002 662701310 141700925 570319764 480431151 760799984 793030692 804447471 213518383 380134013 974120993 982791568 331026381 983259908 522663884 661031398 608786399 766534308 948708834 972612982 43020093 194178306 564681513 966840484 229183604 801111225 264653096 320799224 749698405 764973320 998119205 998379403 790519282 996752472 458597760 563190018 456834506 583793121 568042284 851583517 807515273 981402150 91581872 400659078 75678186 76957721 24991411 846056015 95448593 171747953 440274842 654181545 246718347 817567654 709507268 732342846 600414182 737636041 48587804 595233344 931591035 944378956 736004610 989900766 385289959 842205910 332898167 603661616 265209538 669012444 294469817 510169750 17417695 174813131 141945575 496165284 76865394 493393404 640268855 788295895 323108847 451574688 97176415 527491878 237372632 594646714 642398606 901583930 806539436 912314026 179576603 683601026 667203046 725068112 466607746 987270761 943465475 955510184 835855529 967014716 343098114 483729771 995282586 996555192 596721563 988254557 631087839 802514269 730635914 795340199 81379181 333356184 846354955 993425077 251158742 966736506 633062395 902814802 294662487 405590790 748500956 803952887 619820338 633312209 689895384 764227859 338792294 856786650 623744223 911632789 579795116 968926750 311459177 724169334 15109511 938342739 617138841 904391823 168615335 569823585 154007447 928166086 483684867 723281883 318576996 907507337 43627273 318393925 564554774 582180624 241514464 837914602 458689953 811490521 773586625 914604745 762250861 987251165 57831251 916367210 808574734 938951284 514925299 921970538 46080561 639006507 514613046 745697135 493608876 949796172 260299789 641004335 606086160 687306995 101921846 840119682 913599382 977465640 939021370 980655380 577549036 646652852 265612197 417625313 39948627 786182340 287583019 588394235 804955970 910308274 890669802 985482584 195586478 957717695 115324008 526425216 890803211 986781308 836341038 962233550 513522209 975247185 92738867 975993711 575187779 696156517 70787608 833832361 518932753 933622052 200618476 290295131 770480890 922217686 262267228 924424058 923237186 984030156 865148670 962316279 774022974 862896342 285460756 524602510 196369528 304538591 315349443 608535522 502489187 905322805 549413223 871813006 602782507 890348953 369735322 749116740 15011598 659840622 821305016 832260085 858741430 939038933 789508404 870062681 988025278 990961631 763956783 984041320 895098196 934107057 885782958 919987327 291144437 687926823 289503442 954336036 683045223 685525045 46871684 245052621 271911171 647584393 723224184 724495376 807375824 964042392 288966 448738004 286997083 940039113 615721407 686374481 541838464 941974088 579383107 669941061 769120188 873230958 688750769 985934033 407206157 701783816 166221451 856406624 381007054 557770513 297335780 781228685 18146698 54529566 944813744 991293561 562524258 818400699 567267638 991216878 831559699 980916589 11023757 204260910 531934894 817502045 177039104 910677003 645288190 959925653 387257856 392307510 710360209 729608550 350346146 827730807 215744999 881706470 376219451 817961167 344994546 724109948 661003245 893548182 816612479 982395917 980161940 994638710 406668503 772576464 28792647 177785024 639892340 936978428 195496277 840835505 561937407 780656188 182256980 352050397 854775367 900640505 446311888 841115576 159969132 249033117 243285973 952294535 725274649 778841281 893953581 996235259 975517942 991649086 420261972 536402367 924967146 944453331 827065759 924070651 642523190 987783113 475904183 737193862 632318312 917267857 940573973 991946596 108689001 270382049 547576279 964767562 390983694 992444340 758732467 803793400 379811207 898710338 247718627 357763416 454025338 875400615 141517527 255554052 826087347 885154741 255138801 638506611 662791234 968769012 893870621 925783944 716682440 721129866 954354635 983303158 300692683 331934892 753495631 850712298 804184432 910706606 873971129 970538802 730811368 759346668 951199899 974545075 250421336 670655288 282465826 601523241 652285841 864553732 801251285 876305358 482599259 776726850 679154361 931402701 237218697 345895752 137017225 961623521 721992333 943154592 917499057 948661149 491395676 670000963 864770256 869702943 900220787 916018084 526947302 876337263 577849905 973861675 715148403 807026158 901678851 973001350 556436356 611907050 242763319 871129734 86580065 604683280 705235802 928256345 197478683 231911978 361932510 550559948 243852814 262850249 716917145 970173306 141790076 378856703 643227108 823580263 98193142 872616528 188131091 844617506 531493084 910277529 144283127 629662109 338618258 483270120 950860675 987987868 255289730 618241461 693456580 982260412 246143990 617459294 444804597 789287345 129278492 444345513 372960340 725263630 780344311 941452632 514004869 599289119 681729160 688050741 604444170 771346234 580906783 938814704 614467960 964144739 90310021 728750560 959722733 972571507 449652024 915485923 744753199 945376401 929515089 966044233 826953884 874926395 495201576 822062349 736544101 742879752 932071215 984498987 893184619 921676084 937871057 991995473 270415559 460749121 626401211 775063127 576913251 791618960 786913163 960646700 212095605 615425371 495691238 800111084 258117427 619741511 131923209 689771171 398973385 783843226 595477233 879897492 194164144 711100358 841662132 901926933 547170028 609437175 240502031 535463218 256842603 839988321 923626156 980513711 645128660 985676493 44202410 664314478 345060642 639302354 806966894 920670531 170808503 697085561 10642308 698722352 418713492 964089601 667446516 937770731 308363193 365287757 175992091 647927859 651126915 918207627 258261616 632014415 140860577 862455832 445783992 933742803 344394663 895854439 515412395 844478464 594921468 775900296 149078209 170237577 396619418 545926387 852482398 989316559 504110045 677300178 307707608 928343487 439326388 991913738 263718172 952816560 616224716 894678307 511020610 639594830 361007512 944099975 59443513 258049569 805689426 816071716 262380842 532250603 591777622 599959808 447170966 766191173 844763197 899643288 361973718 375864253 87697714 465256577 775751343 833320032 540296980 742669967 791955099 949906710 284265327 479408026 981839942 999166511 455912519 851726950 926494002 982736308 966925699 994104183 313201432 548603304 473682726 500703985 960506734 991691813 655582685 904434872 155536646 898903869 949870972 966308634 248942145 262512517 446669693 517290112 304090072 311049958 525821934 935816116 528363568 571428721 459930176 602998578 245272427 815857822 667644770 744502791 71447486 155786470 304603293 638729087 708237649 801444378 435196214 873486247 556763014 577451553 762163869 966992694 540400179 945444536 31333662 758792733 274128953 942341235 100611798 825368508 878640272 963262643 546939671 619701596 755139086 823232193 697736397 745559084 390137602 794149509 506961046 754659645 99878752 599434705 344065061 842353778 127875112 339219734 73051772 910323444 350824316 875626461 737250282 848312565 582749293 932238136 581801527 634616134 663571570 864288660 697676670 825182068 73174273 213299118 935132601 944536642 293125259 637717991 753242538 770462479 777375064 820849935 339698692 836718458 513091485 550841753 102251443 876051928 97233136 943633754 572034452 671989059 59070575 284746589 60066244 425312146 863767560 894430105 70075322 401366373 145850511 576105496 131210630 423252019 574497726 599562613 83315602 503811742 696850828 862697834 435813140 576835726 111439406 499261218 455165097 840035933 748856360 904227679 48379445 579817114 479313842 577237224 782765467 846618351 459615394 557890168 768523796 791941872 975660493 985629212 770944957 852552720 756743999 903368418 220379480 587591415 537058162 713595662 8601442 365061054 769956364 835578356 279520009 537472013 132604495 245728810 115781336 341236286 267203397 380898037 767594295 830760782 803625522 979135954 188272080 501515057 699271219 857223006 653673326 988674922 563148063 629468653 622517688 685040316 173358917 389279045 223108538 503517710 834948537 848686071 70572700 860902577 333759710 449581012 637346888 905178663 918078348 948298900 60131354 195594396 629448039 707612572 749960344 792781869 216939612 786206036 528853110 594283339 915098581 937929115 326745725 831847320 196735539 956406120 902908422 910543505 793964126 883254938 942455002 958536968 837502529 947083448 584828404 949814643 298769994 941173121 470656614 749024850 951996900 981097356 550517160 703742937 293932388 339049735 715611902 828855010 619866282 958995814 675295449 766350170 660531764 899662586 858679693 927277063 545686093 623184911 845871606 965420811 623652251 883597185 837186632 887572657 150838270 438608394 457780927 830283254 773234402 840040708 333624163 771697473 740145268 797651775 839422197 959752820 885998565 909887457 750577752 852376810 534279241 601081232 311496953 686746634 549171213 985324579 534087979 788668003 473555246 567470388 253487311 553032376 414141052 661869090 932247863 980572053 33021956 326330363 967238172 979824250 39994402 719015722 369295220 933614968 85765284 394773082 591668479 639114273 647394585 672107234 627492747 649953013 147346090 978475192 938787390 943859065 579983702 743557676 352727179 846380114 449873787 959373313 7211644 610437187 264687212 564568443 100606833 789715441 140114238 178840577 751066063 896229289 459172764 963085094 566840208 755753303 736295119 973241589 678864417 729882962 778088422 970126370 268546809 580914918 521232845 853394620 503337205 921454738 591109395 603635362 601120732 701845882 437845533 734259438 880337379 952595429 666695832 685827271 747262777 894580241 359652887 706652449 880036768 989677359 416929968 845856260 395977891 404414326 613358930 743027406 989289045 997451403 326141253 362999349 191514570 386461318 808842156 909572149 234080828 677318094 582466928 833703632 738285968 835103135 955894393 973664247 881745451 919631882 117249289 505290249 4770889 40004821 3526883 823343637 883912309 932819051 360676196 926359266 1984897 75712206 295359779 671663950 740091104 850295463 104452408 249917704 223923502 408758864 214894043 598114070 357670110 965535232 782978311 862275161 911493247 961956156 535569238 985143428 680128211 929240983 54460401 417828149 190360225 773309095 342000383 697517939 550124774 666674476 132647934 942480747 874940131 917136251 853769793 950699447 359296895 448090445 400040203 644677357 320522765 771629416 36045380 73961054 79315109 291592460 712802577 996822498 44672464 595018147 78992675 688814202 887464917 898777109 392049132 921950875 601239967 966560334 213101739 368645461 103764577 497929440 948478848 953841944 616776922 793119860 196519339 540844146 42332013 627318232 490423196 528793740 940446225 962700075 610176426 612093506 515537432 977054981 358964977 418516423 234270392 815471643 183672425 423467952 289660635 414408236 756553522 946657949 995251272 998497667 147698390 463423574 290125740 743872910 538892164 656028799 412606117 510104604 462525555 480875637 850028382 889792449 956235182 959449816 238020416 373605457 27643144 264748969 370088688 921653864 209307963 385495537 506171779 788991406 897789943 941301544 392792394 684187327 434073405 981851830 334238862 725972492 313684189 539698988 330195238 447189169 946427286 998761609 68273873 917768143 568373771 860264133 108929243 643246375 637677462 677291915 181634181 797192820 825135832 946609694 773418427 773657675 295947996 659438241 265616870 716591575 203419109 277963385 110685397 361770879 601477955 942830962 468732060 792104692 21666292 782925646 922744374 933637823 611879330 804315567 496327603 587191436 6754031 390598691 555454045 575360475 379207972 858966229 237621264 788364551 828671854 984400258 859060689 989609653 609939083 838532729 604832042 708053378 240023578 312056848 664236226 978309466 343707769 537995466 860166344 941725862 272354319 800409457 307950629 384037876 877116198 933187117 569870463 678569687 307209066 491247566 982423600 982746317 777912011 831855227 962691974 987087495 391261864 844242463 463630966 869034140 258982002 347982378 433135954 570637441 945406228 989714057 33711950 626573860 82125244 899423231 27112127 307273827 384889419 517869113 450853094 475309924 217756116 423126549 702038094 948596419 259044049 498936462 496944715 884336579 279986023 320949240 494334031 662866602 674949246 802241682 282268234 739303782 5847959 672913311 118241112 253259186 768088454 922852892 136049031 339365174 241952609 747682773 160198366 260106240 268935718 670669050 486253849 494140153 495897389 795596305 795513898 958005005 368444134 490053182 91060167 248379450 700192488 949721731 979577071 989188962 209686778 605060726 96401786 297791638 766558523 802113166 805002303 890372466 100515214 948529948 733653221 959402614 414384509 500446329 523619088 857957421 729046379 777075193 229037543 759696776 59522195 703927747 995561111 998274335 819573881 991867816 172185402 979828576 958238018 995399665 733608391 868161912 409706151 995177782 854330075 992189459 963639836 974554669 659766691 686436716 690252062 771802593 221882138 467273018 747907430 941221450 667880988 745617503 855164199 893788796 333914953 948899260 349432627 535297488 525101975 822978640 353437001 406151075 987471722 990764603 14977384 474054544 712851780 896674058 433378354 474302052 301822068 394047209 460508978 655801227 586721501 589181590 254981453 726596041 592464480 715693681 606147613 740889741 831581313 884489583 928205506 964060570 587193127 865099525 927233959 985654875 960856604 984228181 806693184 867479887 830300393 953855545 646527476 794740189 853143375 966023401 741410993 975944109 278969151 627968204 754214548 855368699 874046254 898998698 448327134 457048170 583554625 762807470 677616412 715939069 977231221 992177711 499561331 622003726 352421779 487270362 127819128 644949410 683480514 763161810 489364770 882193665 89485042 221688263 207578183 501255198 802647475 969381078 194675193 246778442 441824208 531037959 804468613 950555724 679220198 871982740 160841747 379562835 429328860 846450391 67222336 727290038 642865291 789088459 184944072 273703645 59628317 93581278 159959149 221454808 35605190 912535717 257691289 970113761 169406737 757115932 741150588 813909248 20021545 322015678 799429579 923577922 516109581 579771090 954866689 962165353 295525161 303524498 439495653 596969477 757639130 811467549 956608123 992802109 603871498 659231386 124657382 415827386 563434289 803175078 761235862 845058992 182726723 891015738 324628601 931588032 364603083 549323375 1326697 710977949 290508118 394182270 356041702 439637860 268209062 282520782 686108109 759477394 535646064 558063312 17805245 515692061 932484603 964199953 884874491 951267698 173065276 231084464 104906123 961545240 753026985 808863544 54909381 320238524 371425513 554938444 970366576 972537160 236869238 877862400 143215737 462853303 329827029 674319438 519121954 531136922 299275439 976042096 960439834 990132422 671317708 890792110 225549625 444263532 72826621 890562767 510150670 749369283 33212275 238679323 256467884 393620378 374646426 920760833 285132255 442224899 881189963 901404701 152949219 603196062 678100664 916426532 565865318 751201806 395361743 456808296 166113161 453771798 472227055 739385084 744038714 877382341 563285170 959268468 327118651 930884060 724139443 841763248 416487048 960551237 301133757 492813823 475716426 657653472 916673354 918857963 66245382 424443008 61475941 233789144 232966632 710480359 489005753 711964547 769952004 887008162 773585000 954057862 559569786 781468199 416136407 740403657 723647944 940075527 550749964 851882727 744611907 921423380 647828959 686802613 16546484 533925139 548387309 693042898 792216244 833041431 433069171 478536367 651379376 807097663 21578789 323075235 889824218 960740093 720274230 857820913 493284452 705234335 966285474 997788097 540184164 576399657 925663876 950409414 127869031 765404505 324314392 502183867 56466845 586589476 93422356 733477551 174816473 835108256 868916093 948435834 601558125 885742089 937144667 976707913 67732949 926490203 645310293 772151509 560365326 703455910 855123463 919251057 3145585 184905580 97375079 427977000 401389778 881031884 657641497 886858403 512308616 800977146 756670091 959050329 212947445 897374922 449419306 768429601 643043732 833061354 624842618 884207241 378560204 873594967 996527392 997323637 358369042 650556931 924335115 992380575 906343946 974724679 206148075 646705602 941882361 953126140 803480720 867423137 940866668 970607580 499297583 765346899 866538070 877775462 366244609 927560063 616024648 953093874 634382496 877117019 603796070 764984879 887645047 958843807 63075859 997007850 741025400 747387594 745825982 960096685 44877988 523286709 55066105 867942362 169292112 622599779 738110740 924159881 851237420 935355616 762761317 789987585 899056178 945472298 429168340 447744582 688229277 940768169 977704662 987742660 159355685 198754052 741526880 777877471 171205378 521590006 622611930 794916172 462327117 846194302 683916128 696529717 13231829 592143969 45808662 413340573 333100510 954120833 41329817 751230844 53134089 858702487 922713852 959918567 741600024 933768889 966111775 974192464 259544015 363470017 931376699 942087029 936211067 937162951 974476497 982107010 121841656 482116944 7277867 216947737 404402617 605947209 251216984 689286528 726247370 938050459 767189616 904915220 525958824 742050191 421344913 813929939 912450916 979392964 794067298 869038098 887754488 980433049 881505940 893209733 537991923 562322919 586597417 953497721 788019803 997300383 953943032 998419336 225367647 860417661 348445520 538448548 686215858 992631867 141644559 886176177 669364476 901712247 823140244 961712436 561271257 665481999 87612986 683285343 185552673 299837714 208860960 888035870 312336648 678450214 560728099 728850138 597192371 987392965 200959074 711800390 483137808 555744918 543470291 890219336 633867271 853377254 39245156 104550401 359819280 687483067 798402629 851720375 518827560 701311432 102760558 809259336 847535663 977257142 792188111 878116394 377019476 658876647 579081425 666055210 163761412 597671287 657010220 993250785 256118252 604026844 885559507 950381718 317264622 391493478 623522310 914805133 44154339 587773031 733990513 915545998 863154424 959585868 371037926 698779771 797365137 851710114 684747893 716048046 829349749 832534455 103844200 699418398 658219914 949749413 344966864 587651259 706325205 860212247 8790169 32200360 35882774 263683976 772019191 773925363 960545441 997745036 716567895 925783613 812002829 898496623 326650309 553299150 50893651 400490411 566189655 788585253 935619810 972873071 223886101 320513767 895370833 923664555 887450788 932903730 772508992 852331294 840013055 864332416 299369388 456702950 964590284 986664254 379346752 963008535 899868902 985515563 438316697 616230010 268764431 604658059 312774680 444134821 863844231 943066836 212968950 690593440 518469884 865324345 424317281 755889958 343892931 683855612 133194852 525035012 508364401 566299085 669689885 841638348 964849225 971188807 335671425 493175217 881769927 961784648 619180628 743860767 29713419 203310931 189295089 769940970 268512156 548337089 928773104 945903434 310672065 364661312 180334551 325876028 287446881 661234681 116676079 252715963 264109317 373863321 699457389 742241981 917432369 950772251 155046532 508532890 652717843 979455798 274442486 466344624 475070194 592536291 602410052 945837753 660843068 977845139 81417963 656654593 484776882 932002433 580590941 971178795 557477799 700897834 207897303 282323649 211279712 863065229 743740665 752059097 832998447 938914954 168592336 903645100 615574836 740508785 186288372 537195660 610876104 787319691 272289016 368442655 544037465 710515202 329237298 330742061 912367998 956970246 726700197 873816283 637616432 976399955 901864196 945785829 912853079 976308589 874311967 937050519 55125441 481755489 106347450 768931136 525616440 540134862 559632202 940695175 905396070 955237570 472296258 665117154 109551218 992855288 734817429 802382868 502820322 712501636 755384337 839656704 529696561 854305401 604873219 920637322 459494473 979034725 55450386 787667231 531166880 941027514 532537020 864908437 158041847 531732372 413700150 663646057 744893024 988103203 156037971 325586162 449608300 603050537 15834166 406998494 521229607 576021744 156702005 618243331 244564786 876825319 284381721 998285361 529603413 726904067 741290705 995516031 479171071 557037084 656616943 724989364 646682553 912869349 524849316 849041178 528390164 529650503 830912214 991076389 857371117 954090133 268522283 550729814 1074789 289700886 902289184 956945927 832418207 843715199 623663185 934660961 171124307 420613597 929436100 991740315 983945395 994139866 625103142 832339995 90425662 425146996 191329456 211973936 365689278 654209088 19850716 988153467 145824376 554088955 333900575 525078208 252064733 519137779 640499832 821842359 541504821 827497263 58218715 789834890 807232327 972301446 408683073 631303660 822254575 863602764 358117181 726424231 548077169 744423902 151282749 657499389 12003 639104172 600213890 756828050 693738829 809799329 802768408 830851299 601105500 943519381 105564192 720487719 529137705 670487713 421531917 938680103 37998039 45325015 86966437 919251825 114174651 859600255 925629100 980392309 601338519 615036620 463055554 621313893 239932890 250205330 87013201 838447843 502908059 846751948 27970221 529183610 901240044 975150750 372284890 708401855 168203980 926692158 604481021 715076830 993407458 996333125 761080944 839294349 693258594 697604577 809663421 962832311 567687585 918926063 791384461 798526688 388582411 896900687 941312609 966800158 997900267 998156742 404915744 415763823 510793534 621313749 600939602 921811705 193799416 628536973 185026267 303159214 479597703 714521846 879415391 888797384 253417283 897009639 315535141 749097342 994673068 997437612 520908841 752413555 351031581 632216886 993605041 995086924 324584896 772527914 976767303 999389031 779556290 827018725 182994781 946449380 598171328 848949041 90487801 212658966 159173619 352184300 152957065 844487006 558798916 890631279 171524765 983172636 319334315 503344901 428871785 525164165 208631090 955069856 650366632 812052219 719076946 954605624 286126447 566073852 761322588 804736693 840625380 967714478 758644852 941414066 121751316 125198571 404180207 526262795 15939857 877044298 803475293 928683758 840007934 950288456 775358874 850088338 483181258 755937344 798270753 826924282 51302124 243807614 163709138 591769306 700151622 789751197 171679942 784701836 389844258 849077878 259164478 942264422 347534535 577256111 59270792 669939675 940186124 974392852 498002381 707009431 974539084 994282331 487006131 914648281 347663011 526695545 759874457 783745227 160277284 760886798 297437180 520337418 312068970 849058998 34932553 41618436 49953286 603518596 368477708 757269117 918950473 927678405 347375530 782704674 882467456 918983218 456597339 921686581 188302364 205028857 890111101 920050996 435929284 713039256 777582520 790733214 470568452 996986349 418470436 828236953 642432096 646823961 981358703 987654637 103037921 356339410 834144923 837504601 493122932 499040605 713907146 823975039 578227888 840446122 829545813 970898759 177179671 758599256 980494066 989838201 104053089 789393022 403052250 768546256 986390929 988079337 727891558 833653936 704556109 812148396 354141282 672029908 505286540 657370951 43828042 637096889 46912728 798042490 643640770 713164856 730010167 750239156 799971764 843733532 933806236 942548752 549029591 935137425 466950230 520287460 664623583 790749838 389984928 421441847 552343519 890893656 591346527 750611400 900265628 993799359 559390265 981506289 855502314 975570488 451477186 883751866 883395318 924379259 645199421 914683683 173120705 618677646 109150140 305969555 29853993 979910007 642102932 820909811 480807869 604989208 152913626 312246783 79283904 692829517 925988260 952676347 745905286 804018329 442412597 783352667 292283092 975205437 246054312 678857038 203579174 298254489 521120583 756047256 824232196 954448132 521698263 970908411 259836730 870434770 845653469 996979673 944620909 949040248 36297045 450331726 366744914 875161228 458068704 636550666 374195344 875348657 179954677 396948085 764023647 841590372 264619189 351626621 56294980 105936687 227212948 945582051 669824180 848054846 9437705 816743482 705011796 982187905 859703549 985807737 680462784 718583404 44160669 912954730 483658697 835905095 314004298 767157172 811743912 968553377 408436159 620779786 641763116 752042629 917221867 936163840 926364084 935186713 697190050 718276618 119569713 334804911 136799750 490669036 244557568 430425293 214547365 838927535 240927750 733503813 656711049 696573681 199006116 235999521 943326811 976306115 242184945 492652337 236931429 325025619 398275363 510737956 920751626 939306525 824770584 847850967 775577404 892267654 492598645 607658805 43693220 242454614 70423081 302357387 722348858 907168502 362829031 680606278 325181199 780713603 315525266 623857091 214387007 896948652 121403071 689459728 815281891 896753682 879089915 991887802 165274951 361921834 50034991 90598884 647491884 667756968 56064470 700379800 234726389 844179812 192777980 586044813 841920687 868627761 220348170 689503683 781687329 895357378 627420579 962098950 306633379 395474807 282884793 515817464 4072332 310304057 384496567 457525994 336914866 981974445 376109106 643591002 195152419 982177696 259836969 628844007 229836351 291319968 296583710 372444222 853637750 933087656 761593021 844896662 387367777 906942478 368714991 389593588 465146608 787609621 788541148 984862043 418812340 839058276 856386437 979384262 450952590 604018958 819538056 867864970 700032219 718756707 337884683 877665003 14533682 620205778 274926792 707377684 960580412 979562805 233733311 343511260 25220288 846979451 948144773 966468394 817260234 911324265 839013454 851961672 845095852 960841275 767933774 840358474 321506020 885654299 498663991 719323337 884026974 956167442 53077463 645242627 843465132 891202013 533377226 610827587 229968673 444018759 506349797 713853780 148624215 912721033 983586331 992895294 770394004 830999555 975780831 996673492 51362278 647477770 108389230 193835145 928917084 942004906 346291196 840172846 286939986 345238787 580598425 755910188 156030303 271333660 128981768 160742523 186035224 909773990 59531946 293304916 157775531 294866563 964248184 964266784 110272362 224358542 992972779 993429653 724539432 735241533 329378189 357347732 316752466 365515389 798516537 971942350 462527902 956586700 442238943 670327349 213564935 950090494 567286147 931953217 241981378 721303001 965530531 985848027 980150260 998123886 655057872 967860674 547381705 990351179 308923066 860550022 326377675 634574227 496960065 508520284 33876646 474988605 487235378 768217592 610654681 687120776 67259041 621909710 624840025 714940107 969510503 994623617 509012201 964586977 250090257 785123455 5266375 136787255 773367474 951290831 249242173 885034690 611057493 834211702 686021824 792207891 257109221 689455630 491883562 566328367 19181802 40297383 747749945 933149585 382278018 763020659 120138988 517674709 517747810 846342055 285945647 775313851 671087512 940728020 531045680 767063642 211452294 258150212 255202040 411007724 918918455 945903794 554711227 994568217 481957237 724093958 8094750 529483167 188566760 725579487 595203605 877574563 155498317 577876876 640296675 726665026 382123100 450294974 79311465 799041413 717094162 947041798 364498992 755571959 708225751 942234170 281651116 575104082 759311921 893793164 967901266 979336293 228266179 623631425 290820314 380124022 426978361 713752935 487102245 615658536 522714598 545950030 139448034 329238815 723134070 785800731 511421806 661825152 955817903 980762641 290790929 635941498 228226959 308504291 24275989 379899980 287604073 553474847 687511863 934544319 957925309 980860016 62443035 301760247 264238010 871565831 875581356 973449345 367293730 616936940 799698547 962274245 271464776 421896560 901433238 955794411 840640165 853644219 75922896 465002870 794151534 810764889 193257324 519576353 89746072 567317648 138937283 769149433 907830778 920087606 565639750 819343367 97866703 354840331 43813299 484283320 918039496 978348179 875191383 931543293 326302895 345785040 986417321 988708971 444600368 654556903 514372496 990749126 276630954 421142529 575972545 968211684 699503027 994969467 682162349 961271232 359661112 935038034 715564595 834057520 979150832 985747521 458296375 867441301 685226827 748122777 673722568 860553711 951836872 985704132 653380842 809539306 893898083 963330317 596797587 600285395 793279639 809088974 796263105 813133530 781245305 948994084 914711664 953513934 453560319 468707249 395155284 566734852 562437206 672982923 269128543 560229397 949083635 968854020 194820548 693780466 159584850 216449039 940632362 976364506 17290709 479462955 290106915 822428868 210719530 753600059 665634146 707734001 788626680 804353727 769002571 773804448 402482065 749912190 989756535 994710432 460453219 578641895 868597456 950442596 436489499 938003497 289287025 967447056 336680141 864871651 663258921 860697093 332081938 660969241 8876742 828842752 565004205 815260728 869441957 899556989 403904615 937009488 682988829 720483549 927692287 935888561 287755430 729135179 961123875 975437083 813799969 817543124 715868001 909072795 904838938 956592594 866664501 962174360 979643685 990296218 22990205 202729115 658566975 688771739 844884765 882572526 588589162 651021610 556569133 863186853 54608187 645499148 117220818 438603160 508251496 794827060 212528889 374562217 10209717 252343360 240265871 433533954 639566969 960996827 421355860 616049462 886390183 947552040 769770119 893227689 422921109 822451801 244996160 711854369 81033769 444579632 91908800 446781550 84145022 937112962 140765130 965813198 813157843 970260337 126648801 318170194 790959346 922811409 832545469 978216939 852711212 863152483 115352790 222243570 196995487 528257259 759159040 991166025 496777 184930672 462755946 468895945 112696503 898337234 241391273 584001537 729894317 798495749 953259235 985500246 61326231 675024600 445199694 816873302 126693132 254022087 811946263 965942592 934939854 943422809 31949286 230635151 306454571 717120269 510934531 536407670 816125351 977161365 360196365 905111050 406974808 418485185 618295593 796542735 643499401 751262866 333062186 757389234 23150849 517198473 996840671 998440002 871250272 944154141 456843222 608533659 198154942 256603946 240566741 242740707 51318096 745201899 976021717 992658570 873830804 990899888 168081673 412517017 717638440 944741407 670728257 792967877 177281088 783153222 858458623 964488741 52619136 928038841 774817620 897028282 329905151 686013687 429231221 788228822 227876662 952839708 429835638 873874920 242114586 305562086 166257433 758514500 729924549 860814944 900736049 950622092 770258659 912951577 75190419 964028151 231080265 975468996 172195289 639221603 886672850 945714823 112520601 252256019 655715324 766437850 153179493 549544226 649261144 816321414 378205103 993206987 369087836 749049701 371057084 746202143 17408040 491598595 873936666 905535997 94111058 294449942 42538042 525150712 674414256 969950057 270657188 920307189 3723808 778192932 955803266 996646775 166606257 795460833 412215176 619836343 367587306 611518852 862240289 970870889 767012740 826395676 431485281 442504802 909598285 993958932 831705 224043606 988402367 997081112 942242577 953891081 57989633 881805940 292078299 565610328 887005152 991973008 797869830 803422595 430410448 598728171 341047394 529143753 542056189 828363523 256200056 854412444 746029367 895846623 377490211 833246771 318928799 853148370 851565840 925201143 739213828 819564639 75331983 909546074 725254024 837662688 116219447 950486100 334352389 941534274 824302887 961046631 639097676 895578831 252236261 856766749 596511281 729201564 99960420 879722192 331809027 558156160 90061530 450739514 711310798 970530151 798211145 807646671 373546340 938531776 359886984 861239844 870328586 933006108 723119463 754655436 41338378 295027510 786114390 835837938 404578832 871287159 866095671 984774283 285474458 336785158 225316546 434316007 392217918 744417481 465586296 573422845 893009765 982833915 741005461 852552869 448431459 517474386 175150416 635732543 302497505 563162104 792549936 838360220 814617144 936394734 994282485 997184389 472658041 649264738 197532110 811988551 896445264 984659457 506659554 702111961 810896285 919810927 661641830 919276006 98579984 896846594 765666152 973641037 200355673 294211531 314102868 716291576 203172779 436049805 590805520 666247534 220481996 966134922 206957295 484515168 70509421 359837556 91823767 480381006 247791688 290654983 900157280 935716845 756597572 949135098 705142244 741545945 375993551 711494362 925559518 993641877 843053644 856391398 984888971 988809726 889836421 997603118 313288437 517155342 986123285 988690725 451088828 508110209 290905789 672709034 970042764 997508709 244304022 506444283 298231004 374639855 921021283 977006338 169674729 416087994 517775280 642205982 670957142 772312036 86597445 172127616 159597451 437023804 933347656 967476133 960657906 980109242 119007137 451336666 76510489 614996157 207190220 281211289 228888636 309704431 572650197 619477437 624566850 862183178 130668012 517097234 20990029 92511006 638085623 667711674 844099737 926716038 813115710 942613683 326991032 670750586 964137565 998495452 358098958 581924519 649018787 770928300 193679283 277020658 331994858 337737145 756227661 798595182 408163591 978817670 35890545 390031568 51806860 765199097 882223742 948992152 602295710 714424887 474429247 844364781 912712967 997339967 981395405 986795435 531477232 696016105 686259469 908169905 12837413 600915032 582885457 974053926 403542596 628753330 702441595 953740795 53166931 354972847 98588940 976037032 154912483 535792957 150899765 774723712 927945517 953219379 621506374 850999062 563938448 839864646 593847979 964275645 963604497 964047583 956485681 969486392 173383182 675516741 41989161 44420469 328922230 891791555 541106134 883259370 395060476 663027850 525919844 965241383 831174803 934145337 275948126 562001939 980626336 989942708 705992467 727707301 467194390 839513721 489340908 764133956 449927754 574225702 382215356 972701913 964880993 970092886 14116667 713712077 839484271 847036188 503915901 511294493 281061502 986960462 302233580 781421586 871298691 949023345 317528923 966774089 72835301 633579011 699439654 963603484 260445716 445793967 990193430 992412152 704350512 837390531 436838017 561227499 824470944 825351897 475987310 961428168 850710173 864238421 880904211 891849583 351648173 700899193 329792502 738224525 471825554 867289875 832034569 859267090 966761636 988347429 935679619 971768240 194765221 483638290 692607335 912734231 89209927 241089212 402007064 593939530 113381566 489586119 328347105 819167848 43302088 906152176 351859701 680415267 997943874 999278920 451623837 706015141 221948306 852416812 742162378 782816238 599147311 889682418 858662795 934304474 549739287 678096963 702979052 861752515 115559561 377598523 765093618 866430772 793041631 991981663 546339189 908815282 458060739 864811611 384235228 895827405 4849595 711312124 84484689 267105322 761817755 869068895 993548009 998903296 879373326 903815226 16635964 196804358 775372567 872662214 630867327 872053277 814530315 894418795 961810770 994992514 499088178 665184350 6197741 679782310 760635844 892531779 204796021 889280774 385953221 902135112 840796347 927710631 895288140 932343637 443015246 645733153 344651388 971563898 674560831 708300497 652735993 784632338 526067031 694201521 587897677 947993742 888819956 899061233 459863167 535680014 825835323 994131131 21628567 870870348 200275897 330133880 462990329 646765354 500022113 795316756 918672680 982488134 988411779 992237231 750852898 948521013 459731341 939912447 410565192 992652467 888005330 960501714 320892851 477473692 491733081 748474591 108323517 657098779 739990142 771094339 82676078 814079619 757342361 980384199 608925403 987840900 112801538 620137272 96273807 517219097 693383391 764596678 613575922 796740259 93130374 274324563 729935688 876324768 60593585 173006807 75976827 398244365 927351816 986830918 706945701 749264103 817865765 977939982 527760818 817185935 996584487 999381159 416837922 573851731 875645384 895412847 541302262 751192090 973327111 984630741 19802806 279072836 440449218 550104377 531904448 695139461 51414906 417306510 141056483 269942289 396194534 490277168 985717883 992314330 628086384 804753193 798701443 996642100 569748538 683089134 47584599 367137606 589860654 656393574 135413732 508682352 446910323 455274906 909456124 992852148 5572864 209420593 106482974 971485487 778701367 975309732 934187694 995965909 330230328 870557855 296326088 930942855 83077980 786189589 540100519 818642601 720634511 722801265 958493681 968408509 263940043 508040267 716070770 846720313 40048865 942586055 333090970 977290461 196047773 926277649 703255024 791336126 417125405 817504103 723748322 801688285 458857381 971991018 212346002 295694389 614610340 941472918 104318552 269162819 480703210 973783011 100603302 455519096 751434144 915472876 321352434 613711117 797008826 880223365 517673149 855593528 681078540 712212100 367529955 601984370 285967166 480701082 932889580 948365184 900505242 991424188 954976121 958667596 218334169 513092122 569504063 940265898 411902505 881196486 123372641 487490379 67640223 224754694 651357452 724899500 377074161 956069972 153177002 309955345 476078407 938883772 166861318 887477753 747819399 787459605 207336572 881714786 449484865 590273438 162350509 775520466 720085742 952220578 173995894 712284177 884270184 924805363 872144139 880511593 714383406 902763318 301946550 763033209 50283977 511450951 402002299 804898519 556631603 609554120 175024746 564913817 752179116 964672195 731770580 925005751 300556328 506019784 28970063 641775234 205076979 420893984 579446298 955977251 838982939 995681932 988834091 994677587 408998730 739926276 106394010 234625204 567597526 765065652 541656321 629553342 64605134 549171421 841119229 895476192 284068024 984055123 234341356 793085548 149542556 770236034 784462146 795994984 483345498 682368278 391426656 933280718 83467937 667186311 547454279 937293975 661271123 846812287 569539741 937141965 764913657 858030101 111626571 992917617 590745467 813596873 899919391 940133416 461867548 709843608 192342316 963871650 362955737 953104231 168730680 357086215 136788358 409522194 484109878 566318094 331626946 460877212 501391926 635095279 125146444 868822151 256329165 339931252 808582625 865139601 562912823 704548803 579267166 668176385 20244334 581719073 952330433 983817486 234224753 917437577 964618030 997611621 751149018 845226634 359761018 942164447 409062341 594133131 339728552 953159423 62326748 628649886 606638366 825780286 753356710 920775649 41986335 758635958 829353964 966149230 257529399 667720384 661044522 740365950 368974481 965345681 142516942 806808794 305287495 476626797 421984484 881146721 294333479 598370941 164895293 277732375 266267885 934022925 308427812 430267805 76033411 311363258 961671276 985731059 490798933 503289997 124254097 891989853 198824392 624444865 407827498 420156384 977124283 978203142 333530349 454383205 82093628 237482953 301915354 824397697 456746852 680666396 289069258 915310938 234534611 312953107 413484384 555629991 78532484 489988020 319136813 495986542 11283471 705673992 988929173 989584131 137572144 307525017 102535086 557123743 214765303 920328435 279639246 442415059 819972230 934081504 573582796 609702103 560011322 698948893 271332528 440414667 284009046 290835202 884599188 907359845 75928959 718498949 441998913 969867059 261452777 372345149 86322824 762968842 402737457 945478124 977880242 978664210 680755030 965900801 262508191 688367658 325388595 867464984 205027734 917289907 220497538 428027819 167716665 419872713 92433854 248651752 589953603 861178446 760400621 847707235 325212289 758090169 110373066 645370317 904756336 925833045 316754902 822961835 792681346 997311872 118932751 373812695 445622834 549943002 124446552 948275338 519069949 624028964 103077771 569020213 410562668 592888560 59928229 176498678 526644478 815172591 291992097 553464372 264399916 597234082 61033318 810187406 135145805 611497935 295835903 400160349 592387131 765265834 467319277 706953962 610297580 638978411 913976905 955221345 942212137 962494586 218532515 703198472 435736829 933331560 718542403 930193441 982015370 998603688 240773424 785475845 819932086 990321963 282019984 344561481 995204155 998321939 49511071 418298488 633929595 817851224 736683647 986965161 367158806 876384445 39088788 556840008 869910162 911393110 669515128 969974263 488005717 957137104 998076713 998079733 139998539 613189879 479683459 836077270 579571190 705032608 590568191 814098874 856451485 929003955 587775655 834171761 856160541 888729430 772530297 804030332 909449623 989688792 415561246 471692294 718046063 833591198 735836457 770947984 989671491 992744777 551365041 921796258 620654395 872975386 539420954 925889592 435585942 950028071 86156721 393753943 613543157 822475983 131356982 269633334 604064527 850811721 977147440 988626654 416861937 645271092 465119633 630559814 705485041 875888129 879244288 930680216 764357163 819226618 300411480 611382525 104685314 214732789 266600957 632747693 889060949 892071895 340967431 667611658 470827105 844860021 812213426 909064934 225874319 723099050 716179084 915124394 855151856 972342228 951009204 986478642 265165355 501714967 502932014 935999052 432152458 728850328 465218195 781533662 498654212 540863036 721299594 923091713 113083208 611889423 494021448 505299234 608908600 771684204 164032165 518490186 775018398 803297096 985022302 994253018 806009956 945070450 842274844 847123368 958203952 982689205 230477028 792891463 869509727 924077213 689000857 797580094 533262305 635455155 909920436 926683468 475872571 513265987 530029628 993690832 634415381 719019200 642160520 798233384 735156185 927298831 371232792 466117906 364209137 757154102 59692691 406909638 66341515 971408608 528153968 574696262 263317044 837351143 393401462 423747411 550351841 738487144 298925871 542355499 54851461 847240128 297258110 415624698 711657985 820505688 463299739 925851322 5757661 261728390 424186473 987988624 246781352 602088424 389690027 864492414 731250078 818224276 716873052 873235989 72467376 897458884 779433827 871201963 277482184 675550358 427135704 492390489 508874072 656979284 87800204 858086709 362910671 652193577 391434644 933768783 970368643 982111298 871781366 906149809 541429599 870425994 893791589 954431254 461108006 790545752 208707354 975184986 91267838 547210880 315013997 439852787 215580439 558434910 961216266 961262631 656826479 729542087 87892817 154834042 814147099 973814388 99534862 469201787 328186407 897400434 242628831 713873275 282968720 661847113 717495958 997700720 779208087 853525394 324548991 557159280 979445551 981609038 783713204 895400749 222623327 861903821 637885490 647345716 311336868 755178566 242005874 811549707 766269213 863628767 668024208 900499825 61653897 553099920 553769898 943431302 595956992 696899462 678920229 832353006 746484533 874481893 247445513 973443248 918253321 937652997 858733437 913420464 324350154 679633765 365753850 604580139 663810327 779993090 741376349 828483030 980367352 989080399 242021465 449862254 511481024 606224386 243264379 891371564 658281093 821670144 366803560 540947036 716169719 863191474 663563842 726563427 391560862 731031877 361439279 929561164 250700975 393204760 886645424 904688472 364266745 667863744 108445343 931647361 811461305 859954840 776489233 998410727 423304167 944275621 295004080 327564486 293668145 362523463 902320902 944619499 518817355 631286568 252671588 935597391 110070390 716011239 315636029 321281749 605385996 875643408 471604490 745155903 934410322 998706303 390529822 626804713 615059527 672384212 992903861 999386164 587119832 592786961 654907935 794290306 829450489 903964392 34918836 279053306 912753904 940215198 717478544 720890877 568198392 587776127 214529360 257590043 965307594 974594526 828409942 846970079 381587687 999028053 277566360 833726750 605794461 611219314 34519530 289544463 421699462 801769921 988274833 988951037 82086344 947453861 850853328 871900988 139541453 815476959 34948215 721707381 73665381 893893914 368291177 669087975 23620072 475535238 571066584 905444754 491018908 893386794 998599834 998952676 539695613 689294231 468598133 505044659 540901329 887942761 378830007 504147156 578651443 854442559 264218082 965961197 227607018 330403558 259111730 601264342 420534201 965633483 851303212 883765926 693493282 773394368 323934299 967935828 672750674 918392777 433103496 798557891 134419325 912852195 474120889 584502082 539127303 565221648 209452352 625292163 859027159 957887584 270238940 358373422 928898783 991588990 147088831 469273929 134197910 844572282 185684172 621147619 632217610 880062358 751445435 778088007 46501339 178889967 526638163 687424924 85061377 538858979 469428561 509056122 207987123 971689023 954708942 967051256 59889539 255315543 412175392 889008349 640124045 987189149 697056626 899975089 404608307 871502008 987481470 989474687 844113102 990037439 718755097 906904202 232887878 519756830 351736184 754652086 695190884 732670803 539796444 572275355 793995992 830428866 129498291 791989783 656135575 985539473 673815931 753621591 839623335 847492215 794879368 801446754 47971081 530246781 576535378 885044410 7697236 709807732 43398327 228444927 210206762 264670188 636520625 748985847 256635997 911202217 209700740 967429840 698855807 726548847 634323280 804238255 907040321 946993536 43020617 393668431 135600095 616434935 71892898 714704434 975887117 989793241 16992584 100795666 971322551 984982976 743255696 949087943 453574283 567754111 922853129 929934100 467442508 972884655 675882311 929016710 515117664 548258898 973665006 981232485 315814487 484872940 922250365 951636249 325044090 464310096 102499476 694410548 565134814 714034581 445817543 774334763 916905603 950899917 368391018 474979518 496510541 651625074 150456115 229929275 404020328 904731464 835853099 843741026 894033066 991888416 556683292 950595600 313737423 324154933 335514944 399819116 865280078 969231750 291018263 612809477 83042822 594750238 512349257 567206752 380455490 858112437 573146647 943443116 361927854 420973501 972597375 990620679 939944296 988233488 988681102 994854394 455004132 693467229 107972873 129538998 533478820 986430847 370786757 711278195 271350560 519086543 864647893 958583009 432192536 829149283 804956218 852629291 849335314 937309701 142536485 961204979 6139901 324058296 242726902 573903438 600100737 845266476 190311020 464969002 194950319 608783088 772086866 918189075 297099276 928901626 350094811 814412725 19847210 340411119 512475696 961256804 678184741 981212709 819439303 981142348 777649281 908448085 118409187 413563197 196977296 340219942 180162188 240128197 263523346 778288913 597835103 996294985 317426613 715688449 681100474 764639808 816634824 834304285 378082275 560369539 730674250 876273682 438612151 882844821 861120794 921824217 205654551 830079708 692519947 715773532 53562661 273469935 844645949 945002169 677890621 874930062 8178210 841388594 463771260 630306015 222355992 706457005 842588442 960293988 278539654 306933916 689175463 794046760 51995419 840904098 791395452 899150697 340623732 751660616 818698395 938759538 788266745 855010262 968101373 973178444 205429480 824964561 769849583 875000204 310720898 515589931 767636458 885457179 987748806 998745198 132941812 640829969 357945049 566934388 998131061 998345667 650239656 825457663 252468193 274613805 575153078 885949874 203536089 779954890 606861793 669944284 981183744 986540567 341961460 731594027 563201228 860124224 41788067 923522803 244512323 579099672 294228727 612855360 979179043 985887726 531263802 787667087 226439119 325930675 983886871 992248003 569146349 968164297 705114541 982538495 606489787 694252930 560015430 717907240 647757314 710324370 610050788 621591639 997729272 998205750 545299740 670487925 603879212 621031580 557069353 963042309 261932176 559883404 537549183 668771327 724955192 847191581 134162957 405597851 367810031 378322202 779692064 962625108 413362825 924289687 94062987 217948096 701381523 893227571 643283728 844052433 410740051 987476395 607902475 811487450 270845134 787975690 821360680 876639337 327313135 975016634 913402714 931847370 722573395 774846793 149587379 740522665 109956553 434641477 326181429 550993403 29410788 430094997 549820465 649070473 552688963 981787029 100370171 307169229 864723168 937142255 651752749 899631078 640216929 784271169 992919266 994996943 577415008 916767637 302213767 555288452 171524555 502206287 484971777 598011038 561481782 768163009 829541055 865498311 119653403 920628341 127385190 894101560 436030511 886818016 881582281 947541368 303673668 548472836 597356497 665033640 866731942 947193280 225507552 885599338 483066845 984264775 218626557 611352058 578863016 996971607 981502578 986623902 173191190 301070179 343069034 619274308 986287262 987769365 578207729 701102289 288058581 671037852 87842607 149834823 232237821 430029745 372358753 889151731 587581131 908150378 940296208 958391350 651720509 749548784 928477569 962227761 94271867 239092928 267930673 758315025 157862114 969629598 601645864 857381181 443909927 736870320 46563281 693477022 176352195 497359542 648012373 735857267 43804223 767492470 790544044 816244710 350936601 963638190 621869184 897782993 750262355 922677131 181977401 703225693 488893248 712414778 182503144 576864606 22152937 336480196 624919171 902490336 70540991 280003791 152468806 553577879 447478920 745285837 183197468 211565735 456648213 717255128 228087359 392778733 267776218 392109869 52264206 580543805 708434825 820532084 665178539 820423435 937653556 985806324 213200314 874017367 983392350 985074843 584915791 847042672 626697428 731230770 755394760 789806783 218226608 645392911 35195043 505239882 579259575 659517366 108461943 240745022 895535207 983780385 488222894 777870112 321405266 639264412 135729490 688585948 656158193 911170856 319542005 734225973 268673332 640001606 706991206 722673108 761765936 834503952 259319998 266632948 966611596 974223953 69558454 696695367 384318542 391997874 707190103 993049512 944880752 971509997 311026224 736627737 19748314 365767981 841983792 871286139 559252584 666165387 693815759 845644454 216740404 812584650 851807288 878436513 460239295 881527366 286600047 531542894 276676971 639441367 57831731 719208626 627612033 708919873 595010485 924101373 140750846 326056120 673311875 887012631 639084404 705580689 78567575 599240857 871878403 956827719 231592715 326864380 517637011 732306642 904505060 927369814 921107231 987621056 484416900 792787564 660330019 975726695 318459675 336581679 105836334 794340694 72293447 622279397 750825114 751574171 67626174 313107730 345003852 464358059 663609586 723561909 166805264 449140265 351542605 989921950 128739890 907360207 286874439 617450004 350204223 991550146 68675785 373361686 15420910 450004829 657038588 927482489 54749494 495725223 672293535 783209439 164810269 872404782 810783016 964747729 709535087 825673241 480286081 616922430 508876683 540523388 805985476 973364421 916913622 981423686 869688516 887212205 560471446 773718535 840038047 881665082 8132789 607769341 544540544 549135594 335347243 747079732 384159942 931077966 134781279 269395457 902693328 907171322 266498611 371852399 186003183 556778216 207710109 449498862 301226310 321984418 974327516 983015993 332887518 803871126 777023606 966487865 584179478 978094063 43780469 263770148 220522969 735423785 962383944 989172385 601691505 802557109 803969135 971474468 962333911 967123806 454457977 970707370 516873352 659195319 387681840 765429222 52350575 57436491 125562309 318844816 461398505 745543404 714594937 800884687 663852447 767993640 62340275 514535689 478868633 664995266 633673589 716697309 400992590 480388561 8286043 614871068 905582970 930366133 71715002 443264983 41883291 560855822 820357817 957938849 123405280 218430686 886353678 952240342 3013549 58367349 401774650 893068098 461005892 553497868 996562322 998218890 212276770 799272497 669756442 687460879 71514502 342595914 759305197 827304671 587281477 689100907 511427250 836275862 304174581 557226824 145973948 567781890 694558582 731247510 362773164 707287831 24162455 215614740 540413496 739104431 294508045 299261399 863644166 991259834 528052050 692770785 798795058 974694540 566628611 637671815 951775343 963901638 611895844 876720706 249491109 266259818 348576510 481562508 268973554 489054594 114347907 419351619 894841761 959659369 969461219 993431928 574775500 677890342 305132469 473957465 790078704 985041460 300429763 606803091 280412768 952252372 175832129 508870158 63895901 771180494 578055788 898051399 873136351 952588839 124558590 339223400 914369635 932924943 611483006 687785614 859388811 959530482 899595576 973592472 760865808 994239710 707710595 758881697 680209085 827935879 63536521 432530526 129454483 886568243 886954166 896670065 104529620 954975423 5897046 141084963 403795684 637939828 708706258 740276107 161789191 181993831 845645093 872805971 754770456 971750036 290962972 356422562 858735936 946504570 168835913 537044298 339349022 495009620 816117053 829473227 52359129 734342270 305208783 792811855 834530641 972453283 522876240 884927875 741779808 981665114 938231436 955306995 222496872 553038192 330578754 509893608 935998483 963200014 750296130 824211060 497918339 700342400 934506792 954028907 683367317 856044943 751247516 916376283 479131529 844793765 491704262 637546991 809462633 940555614 153776227 327158380 920399860 938503924 824365768 918480122 642727179 728969641 117294968 990201524 560431620 629925466 85326670 260405123 61194532 119786980 4134902 373275352 734245143 924004680 756006116 887362264 838611182 975327203 623389459 636630673 660670652 701949231 393272481 745941404 500285552 577260244 840010889 882933117 95374344 689013287 407162633 897685200 395831349 838046435 879828930 893187773 281984086 442155363 60155664 429935153 11659452 454969554 657545247 851415735 613907539 647290727 673202952 751209553 531492350 651094456 939401183 991806721 699113153 792284097 700973984 711156439 406866969 801000411 630304006 973858528 636979763 894097371 794441934 824951050 450548401 812984549 242247140 336940647 678330938 972215058 329923446 932526689 243146430 554768602 368748312 485408080 544657403 837465688 419882750 840856431 938176592 946930293 32635518 361144130 301771338 729445537 375620306 429335352 147248372 988550842 157251752 770267138 814399835 995245276 465090618 584740070 59962245 500374840 267203996 480888526 213068054 297026915 580358580 774596953 656377349 718774767 141871261 322505278 724514101 859755280 72695282 163689116 596500697 763136558 28545522 219103464 400268675 862867251 254472178 590726588 525154112 922483278 755110113 930331784 776464974 905436509 439054139 579588573 348301427 382088222 815590014 933433912 719659496 770665424 835658465 889333139 542619878 680230922 895891506 902959031 57787112 255755988 800395543 907748672 954023056 954580529 976875511 990317432 530622430 581545648 750647760 966280343 814203401 922307283 245530880 267330759 414262278 682766552 954972478 996540305 102238645 944920466 398327260 850618261 513290222 584380844 252812576 749625775 514778903 757189672 571380087 962573182 814191291 999326566 22418946 756346315 823479882 985741537 58208334 77475134 813160789 985841167 480213142 860169794 590111293 950079589 643679147 745611232 404114484 732356592 16583149 155187799 283964831 985680143 829658004 920063043 664564986 719894210 690865339 917191405 932851533 986279888 688156767 931049806 574889757 724100397 843364585 946345443 588644846 967856192 923548038 966173996 206814054 530090894 429349923 815820884 810237903 813333959 672313179 725208766 477186995 897290800 559454360 978628097 940237456 960106733 354646871 564248291 336489455 846816376 707510598 814949618 545054441 548168239 115437011 632272579 118860891 637378797 878692602 999179298 961820315 988337719 42358090 503869651 331090297 843993449 4984746 96204003 495898414 805008396 882236216 902784030 331803437 972664058 683275683 883623575 336751478 427359768 520053136 959840666 35277058 279999845 3851600 552885651 50836523 950362408 178112593 435191978 679207740 876749535 533458065 740907543 957309121 972927167 930480685 959878448 688144923 970875300 545613488 754957539 820007265 937276812 743785267 769452378 74243226 923108249 30304397 494543479 811629667 830117123 478732151 745124690 568602812 911493665 601163471 645988617 449658403 883658488 843192293 932448282 767183918 931947705 581600430 721040759 8252009 142953607 749312890 899152717 919544150 965713151 853714847 930839302 814384888 859112795 162012838 777411519 854294178 908957558 164842841 828638282 221645970 974970487 875872145 926381508 988772689 993371150 766782510 969459996 521092951 672092338 165686000 634767815 765554974 985657646 67570683 200101280 546689022 890653406 637039756 838373662 772106076 925172589 997187238 999238185 114878989 563705237 749424866 783997433 125973398 255625545 704001694 762110980 508110066 627323431 432297250 558970902 484648090 963755476 542012210 860752403 467013259 664347878 705479076 942964944 590860967 746958734 748650479 981684754 226107585 333631197 698127964 849288993 87079817 488961809 323144513 615835797 576427586 753262812 971624512 980357213 510894924 712914807 505495924 947565807 691401610 916926781 811676145 813430249 453660190 703690555 195368880 197653899 320077645 944430502 759907165 880483269 77069712 598889570 949777220 957864165 557745694 789993598 946443358 964195078 441237393 726194829 612990720 882403088 189345332 423605472 599021296 984612227 247379314 655180519 766394545 998975935 801366429 876338154 793352339 803114797 924675379 953149779 546417103 842697791 838670813 881236906 503373128 817835941 447477004 458024653 153839222 946195254 906464867 986420303 262466863 318473866 682005668 786111343 702116843 730647990 456668873 520781209 14737779 503046718 307551954 379442619 801794696 925356549 491155070 993434580 194812056 558405755 201497976 843919684 335639912 787461059 462460433 744119708 893163319 977618031 809121543 857590951 219066732 657253347 850379043 975440056 586171502 833899249 488775138 783700642 693566155 803376062 966791564 979799677 575503798 647538518 539494802 852185381 195640947 898635504 988378956 992930362 727814848 923876097 403767465 455181029 287854893 760147885 876904130 900479010 201654358 366689060 235408652 964348105 803277195 828816531 744190462 826962807 355285792 468156988 398935698 407877949 667626609 969681463 423335186 548179126 775507762 911814463 465307403 657675820 858105747 930041187 298909760 303518066 782996489 872740524 135625809 275176204 793769380 844491178 129756040 226850035 921412766 988620304 238182545 543210989 959372111 992211780 845071051 880601069 394033565 866509874 987349267 993038963 633413762 671969090 747458457 798127066 76130897 675710380 13187293 854207533 628891148 712910131 507336264 707159797 646512547 883743659 189421710 741394638 319162505 515385396 988954611 992020269 698739947 874142668 562255276 598832409 171335583 788549429 162946883 508172584 12620915 393451725 845744153 909269875 921890783 932271093 104396153 817229359 827431104 845629013 92806028 430489807 463970767 474676945 9613996 14006774 512357461 988543032 100730015 628632956 523866504 571718060 546246165 822293325 864030364 892475178 758330163 887601145 962663475 991819292 347611080 630299958 120980310 690965671 335843605 478831003 417988053 567144060 621029132 661955056 470450480 625800703 427952766 527846801 179729668 394160895 508958534 790660549 710225192 930555993 29629786 657921026 224145077 787396712 114317301 475403265 503521780 922391678 989540012 994766870 606113074 971665400 304460820 564071906 700521024 823733021 805264817 818140314 449018226 623487837 287385605 406383692 83612428 141432689 304091868 310805430 293883341 359550518 127556983 753254169 261351700 532857029 150245612 402483438 675318596 835939388 398797038 422356022 145240424 199076454 674966764 929963890 925232159 949637109 214405245 419112790 324961254 680284299 24593422 50030841 284767866 522380635 729608484 783750845 229520708 534885188 909482859 970128266 84104552 144583215 326209579 981805105 970844898 990024590 240188378 492642322 200555740 257426455 928522482 995659020 904581631 979049753 693808534 780893480 168951703 242144329 289021968 897674082 173549342 763559943 645559152 841218354 898663474 910692831 304966356 778015400 580135072 869459635 210669508 599748372 408359401 915683327 626990779 862417627 140988206 612295519 334172537 428238023 733377917 964241117 590479061 967995256 73221033 780523613 538494182 581575546 401996056 436329351 49043519 571410571 993966873 994291104 187736170 474943332 365088220 627088597 254385093 264517540 866169649 925558158 834945923 863507213 917435912 924649335 585129574 900151481 298964667 960949871 920681293 957383407 290813390 834007144 521837698 585968589 968473936 995774655 84463764 644439029 833578701 920575710 409826924 854501119 749852486 923754143 162008859 922309076 6657207 845644172 948395638 978034565 751361668 871483303 891200598 896884243 864091941 965279872 432702270 721795362 92285066 543495664 694656958 961315956 170562427 991579006 779277924 935816080 306405850 665818354 505646796 673585270 222563740 555239265 742969009 815776819 808043668 847658412 72716105 516917771 142959172 594364729 608231553 837135147 455264216 547796529 827249694 922185864 612108403 632996930 852895482 896407454 798916738 885497908 723718443 833073188 888029551 917959436 686466476 745604928 79693630 568689683 28695605 641371551 97899490 205404245 288079130 849893808 972691453 985398392 22266105 954212282 232863338 278504708 487277713 688391398 907336946 921991416 948099778 964052165 132784174 561594923 408230805 408794556 418837534 692753945 151399237 630385961 82525326 115048142 683641123 887773832 536574284 583603525 523590121 691511498 525481024 721417003 79094775 566777611 949667831 985224031 919096628 950500213 788692218 974867082 40183776 412531292 699237259 973790325 433829722 715396195 14544008 58362420 960356638 976907489 305501619 548991929 319037368 555069071 777314205 851778304 301334623 919016275 194130082 200973493 704996300 902126208 252276466 432285206 622980013 650706343 308798302 921692042 261738809 976163530 204695109 925819869 321639255 842117177 560088775 969847124 427098961 616084696 346944527 413320628 888678492 912340742 266605738 353889786 792416771 948296696 834691623 852734682 665992367 966486829 658848858 893863654 279530509 498790740 933264945 966411625 166096951 981398244 601635386 840778913 254427768 570725183 773785904 828206864 894128071 931077538 68837383 243673846 251508348 840000186 921478025 966812822 132355147 832749401 508280269 579043768 758383233 858404931 888285703 897510188 793002038 809573985 785011324 951979570 417333137 441628485 947584739 972857574 69668034 970089906 31998374 308716574 484499746 705012055 649543239 750066098 271109485 303803536 691411485 978451840 856424808 976793083 22183450 676053365 527662100 654616802 237855426 351180121 819821965 965430100 542204297 621873947 15205855 79139592 105276033 137244622 613298231 802361781 707028901 980878629 585835611 623542003 995034782 995461801 441672807 756077803 595279088 716487154 617460586 823716248 60954885 452660497 186245497 568989442 793210546 906126654 860473294 897111197 492370735 858265070 902094531 937537538 562847965 881327055 671076310 845531901 670929813 989472730 902327728 956255000 696503312 862188049 889878350 965432001 984999869 990906921 943326050 967511290 192570808 457426229 566769905 715637483 140526170 964944940 702224859 785745776 742835273 871937182 718071530 784692225 77514664 221328183 865886094 886051418 160268998 998904819 72041897 491879722 32890777 670977302 545845683 724659647 38374821 959308737 253267591 896538543 938906123 949480448 722500357 861707704 420130269 427886889 86882955 154398084 7571832 164792088 163837153 921862297 263834129 672707786 819546515 892051110 781891661 878178912 857818073 975866871 750920671 765379776 4157968 144794961 175961684 239268570 21120308 581288957 404949372 482788998 773975247 911183271 120821267 865985565 577766149 933138738 638502632 791300945 296214555 894725197 115520669 886847112 95074073 679758275 257093965 500531670 951482339 988157385 337407315 389769352 638426101 948412599 415317558 415486153 617535114 867728731 654643486 959585980 117482122 382299188 590645424 597495492 97148648 579426358 919825477 946886129 99422757 553312355 465230370 620620224 237191438 673387058 491841668 748562516 558714300 909913216 223630863 619700813 14609044 221571506 739151883 917402201 268607834 428991402 644953073 805359579 970125206 991325531 375380848 599626394 133084102 647763149 570175695 980137599 425073863 977615777 990864207 997113009 103844638 881004588 52797755 563558045 470317584 537156123 963694314 976570741 591772707 679934317 360612797 431371449 581271093 693553675 547044812 969423611 356568346 508141072 900589013 922243598 970297100 983058904 1082788 981774636 766302535 920513636 891662418 991565941 388915877 845891390 260126545 387241960 291697604 407133589 249013872 624816040 319340878 625614509 754105359 993033682 628610287 755578442 382240329 638980791 276348885 543865719 221742257 856087386 240554288 317558618 196028549 579128815 503749448 758129851 654445181 851054511 959533035 986184593 56013132 776481974 166025063 296043461 239860654 503859878 115926890 398804595 452562249 817222351 770900327 852385138 643257842 738881148 686776417 796505374 25285510 920668357 396808947 995215445 433049741 650380963 298548242 749655593 209345075 927478396 273960888 689957054 732327183 934683264 94217095 398892218 329144090 456537471 557085961 965543352 724355738 770502666 874686325 989533141 2953673 923163911 148337181 463663403 627810401 760096705 676016731 698282317 741734036 971711179 656074399 708086344 946273917 968110490 421286249 442634305 111130948 137954765 48489591 49792663 213346 839752888 436418778 505835521 631107756 671482560 932359887 951950987 694943697 837149880 460441673 866707260 657872345 867023476 314688563 874135434 334663140 381391916 356616224 728540481 194599839 897341713 698843492 837496373 953360647 963453334 349789776 378619486 565181958 808113066 172521666 649203192 723102338 856186907 594044580 610964031 17212415 116451209 650365863 728786210 587775843 823181560 862230369 897137593 196491936 954155214 326747939 885629726 357463849 804220026 45571055 280294802 152302667 513725131 815932631 877050908 570615859 984240645 893371614 970288736 72198397 194656772 903695044 966490175 88244584 632939024 376375572 968505545 416257936 797504310 878324158 892499331 281241435 764170017 888138774 967157856 803817745 828653502 895271241 978833017 240032457 448068340 209652764 990891087 666865073 786991887 833520265 981477190 483898299 637111648 723579951 972088630 298161418 337052258 884487651 961431664 240311811 718681989 407824421 839389446 669811932 952227112 111788148 428232549 291285942 710115290 69277090 724853635 896856614 912496962 453939881 505838519 348799697 379176914 203028804 646096468 515367153 693700539 374871145 996257309 898348911 987050165 203819968 538007497 431346953 686732043 142227817 524892064 504725816 554996181 392023450 970155751 59347890 196178012 39651693 483447377 221182721 307586885 224610324 275528353 847185330 986800225 706541477 797310021 963063815 988200600 983332964 997125920 47085519 983268225 670866433 898238626 384888932 478387570 854290509 957974320 393861372 406412536 811104085 821860079 63676324 272976398 662723635 998356199 582266647 751493794 799680918 950705629 526699020 713606543 801724693 846472430 610474607 878808689 435570515 520387954 128813908 360874002 935789522 946839018 141764656 959880594 46154445 584720358 552941815 659176821 207515906 650426711 334466984 744095355 422832716 727259270 995076415 997462293 635027103 708056958 185601785 472327253 646985730 938599125 908362766 960973192 816233738 866167146 670003556 997789355 725730972 822375387 540245728 839077881 826939503 949945006 310955939 697764974 680974267 714461614 728554885 803785553 130497805 508649384 756177763 784793721 789689002 941736613 630376448 744776243 755423354 964616328 182939298 926840900 892449697 950864973 294194348 356974382 263600091 991981483 857469099 950722516 910302747 997030241 957952434 966094197 519635554 811077293 146904349 175527088 479390793 677102038 580727340 835566567 466010212 746729020 453352818 489446131 875498089 974672327 573841355 918640645 751490626 991995239 176157650 839375683 259513928 660889510 589968970 929084468 411061112 943815195 624744418 717928449 588923185 659738385 36743022 371959171 100469613 701328608 441005417 947613680 183047927 667726864 31974266 869906018 537876328 769451858 966374495 981592749 988441878 999185835 148012293 585212106 656850898 982982846 967076787 984698947 351276585 786131566 207794558 331801802 221525137 977244679 592757260 765950599 437549236 998769216 608471254 772362816 60737657 981417108 642203697 871839676 576265843 777844725 141946314 441220961 767065563 943118861 21232423 886303057 335003415 722741314 302391655 956990183 855076844 862873649 706094085 951935669 18863203 142046185 772312003 965814025 507854439 663559565 15998105 63494933 392116251 446316857 769543917 866359227 614649561 711441916 960845626 986034935 728371300 826978489 435110807 606630222 630036825 895500749 674454880 855843019 699788748 785131366 813133454 822904244 725614992 898730870 996411733 999110144 182224884 385221248 385585718 512838874 24144445 457029131 472400463 711471482 397974531 966690621 93225171 110989993 160124570 261231393 583480248 588748322 845971471 960500663 182507220 568773351 508290069 597142720 725924932 905199229 392665119 645198003 122798796 864861732 360069883 693142212 56541785 168381895 591858794 890854462 117329383 436256019 300061943 644627455 815656275 873432121 150341434 577323561 893898621 920978359 161013603 694820480 464330642 973850175 314783948 962464837 364514888 688424991 295778680 972382474 979839071 994148504 450337867 793873513 517612610 642079800 85930489 350080672 477885484 506089393 193277030 617828363 978836118 994365406 643135647 786138915 600291266 640878681 220577112 312753982 37556855 799836651 143012672 290430379 639867174 929404694 104305488 148404465 706183055 853139372 398890800 807040773 448572019 727003120 789571668 929591600 404354297 634282206 107472128 486405899 50927863 527834401 585771582 737513240 101470083 656325917 594073976 597708424 936013465 945068023 854331836 854565257 390208328 938254307 876467580 990058383 411833502 944400711 453006134 536834381 657827299 926272316 793667680 987075652 548186651 937624755 225745060 688747870 548066179 567988585 549363816 970250475 687873280 795003851 44866620 328677543 176950886 708135310 225631397 799227658 942860990 993771221 363840958 458306926 344599458 906255220 903661428 983171224 72023851 474326475 674249245 894006502 282798419 595775965 727942360 861333060 466813677 775262645 668055821 899991262 370261914 613174801 98440187 824561232 169826137 729086719 701845790 916053532 178333939 184561595 152484150 638661433 365832009 525978362 234848875 713113816 981764245 986062724 899033400 921010989 691848947 864967160 23364487 537927507 322190798 473062119 219903402 651870208 864234820 882689387 47038094 251672279 456329335 664589933 978318240 997262248 244872404 790039361 970779532 989955514 971865318 998999705 788228972 835593272 127297380 736183996 698362468 917472557 950550637 978099818 18192575 310711061 796869299 859435412 490322629 738501237 45368777 440408992 84484650 107789515 42764229 769266794 161270548 632242982 979935309 987835827 243232233 253160716 388550380 853139262 495616921 832793984 876541783 908328496 632352552 652917918 139394752 869593440 63040505 166868523 307900741 930852551 398225035 673304093 286110780 359904745 260159653 858209369 557521187 702278155 553776479 606826761 551777823 581632371 99553334 919594379 124086349 882981034 90765687 662874219 745291355 848715010 976619409 980133660 113238289 304531103 835897934 875260590 94561695 661549936 418172341 694343179 265146977 866446133 107897496 309781753 619327488 803809750 849756174 996346169 725292123 846603070 510455191 851011552 662434974 674208562 107709812 871918962 459554999 639032681 346535624 964478925 357085420 649103282 915505486 971751835 982089070 992506338 112764235 774101206 907066567 977986135 297538985 513620611 153777227 605580684 945051535 996089650 819123468 955744654 789984351 986200977 10354306 886150866 826890057 833009629 152410295 369212592 273264602 678975492 804396508 951943219 163831306 229282410 466994395 862637761 367840222 668327848 767051047 835959621 157131945 547663612 420230048 554283624 871483881 980036879 592228528 750373768 787588769 791972971 698020219 845679097 361123665 541734452 18823571 200234059 871251545 888149642 649485230 978072448 71939244 731810781 396652732 931283484 250110723 510603131 96411044 987937257 805064728 908528252 876042902 928730917 444208503 577319979 586493218 612468966 106005980 170557465 115357492 228568574 105464113 743542799 285042330 476044221 976540259 995368496 622856777 835487473 361227892 560147868 491014494 860616240 44038922 129701235 616875039 618840729 200589142 753491068 652848196 846995096 45650708 459067971 321137139 512062170 271133973 298093145 614545462 641571398 996994253 999090612 189763837 961140522 468969747 872850689 169765890 719796902 54034327 804204934 293195871 599569005 971687503 997334604 707996670 945031840 400590705 740700251 404876219 560102241 188070892 902606017 654134594 750594109 298578569 721308855 175719151 964304358 57447704 96103880 889075344 933647197 363821076 619852664 500977584 737878483 168903001 731670196 754285900 778616317 756263763 949933357 804751216 908047677 528894107 712095953 796051586 916132651 751626180 988512144 188410271 640452783 93475428 337107907 317733151 638746844 380999061 657664494 145966728 944722708 770800298 907915750 351709560 866639066 565928610 688205497 867330163 885154961 421378948 511766768 928981592 964659318 267227285 712328512 167642899 332188205 740460573 758388116 505538261 563173972 282120045 549065125 244618785 674461660 722527193 980735277 992298523 998866865 725168336 783505627 369603505 671539208 490882390 624432511 326400849 651110992 676741365 816885297 525953099 994703862 854918355 921198864 6789981 529341270 11090010 352276048 5552007 183665408 781292358 782294582 313490234 880557087 601860225 680244604 222030448 954806808 957648272 991661039 969810753 986233791 903110714 922054906 835023954 855741487 639893485 910217634 583862777 991564667 29843376 310806432 145610188 327822996 544276356 908965873 779385263 977384033 793360733 913266584 232252670 670924170 625343608 912086064 975648337 981017649 146724379 699506800 631107668 920434934 257073089 525951185 954050159 964485800 178116653 691383220 826573142 974243862 50892448 881951182 383831854 889247445 884766907 900361305 942547223 974998689 955563701 955831496 939707368 963373863 230848297 802563523 935370185 967571013 404319522 743289926 415110754 434962518 706399079 840340644 648169946 895682795 696441593 951120883 414711136 509544884 566876924 751561291 976662291 978196320 14836235 387216319 144552677 289601781 771769688 810632315 931699867 990443218 842338819 998122980 901332611 997888894 899069380 937423275 78367809 464727742 604657346 656557163 55527740 431971777 552878238 938875096 883352644 898444642 517341905 762790429 914055062 977356646 632859697 941142444 813339385 928986054 392191655 810242804 645680773 904952499 714777496 785961377 117796757 338701363 6987184 584957351 257078399 890549853 175678443 298847000 910315595 975752975 190698428 474122092 14787199 961857598 422767525 754448841 131194592 315736566 435071392 975580905 44661717 639698951 338454942 551418280 577729148 939641049 239247127 711215067 299723101 586869011 315091603 796780665 833533729 972900139 315282176 689890224 222079968 785715296 53857890 944314674 594675501 734007829 543668146 552289337 466593454 922304628 647229718 821218733 274746669 702445193 812016770 967528465 819311505 958606309 787514210 994485265 63625793 859169655 623224821 972980496 445250289 598512586 518382726 838487559 220894856 394650349 467468405 641565826 973324083 991735251 888816855 904664392 885883574 898451342 591294417 989013433 551219492 750352294 586275635 863104601 562684038 832980532 426218002 613737625 932739544 940235059 306951971 959175575 111075577 986049288 168280421 688064345 940146425 953354001 544332921 746816335 161553058 472327382 54031932 510908597 148815998 995375828 485496494 887954660 367284426 749972415 991053051 991840173 495469928 576611178 855826280 914791993 848050755 912543054 619480054 832733754 311640631 643563188 66932595 258462338 677415561 698954117 49898011 353280315 590603481 937941610 601924452 989074922 928179775 944750877 693903783 871148805 697850715 702798777 991820566 995344792 459668855 702409328 916711917 939347463 383898662 640057897 489548773 734790281 921840240 989015354 277713394 951962192 227884173 763736333 863191973 880197132 967747091 996992409 535837656 665179821 775732349 791689864 944795809 986966062 832975798 925007159 449219510 720041148 131339096 207442892 441985407 473326336 701849180 849205157 190260901 522775787 715878283 947296888 524502226 604296755 995678278 995988352 23059876 190063007 882666275 962357335 885993374 954426899 189332602 855298496 960667667 996129143 710155401 816207474 973315126 975855269 343762199 703998224 980623280 994997614 894810226 940870290 644695175 991918525 143635668 595746824 276779716 925655856 271303130 985754266 567689523 590311804 210470973 767931053 9563567 837629326 713651899 799259143 976892842 988657967 406389699 769796211 94432279 260363944 551197379 918728722 317572748 611779651 21024954 75348007 953476519 995458186 330382622 730414622 643773424 889289733 495022072 805629555 448228144 789850951 380865018 688938886 826011311 853066260 555046761 831207184 29045685 682219545 855505429 921315521 995766694 997870079 141006856 687707972 600000334 764218662 229085980 253688732 953714028 989354271 650412034 854381239 173021121 729895702 690494853 772828400 385730161 772714621 557039794 734661532 146386919 529467429 986360721 991609235 234822516 247100953 135868504 248191980 276829670 486279765 828031501 843939139 968766470 997519941 340267331 579740466 515262488 640509598 88667241 884619069 131313856 350969328 621827623 648713059 560854980 751263674 368842099 996982075 143129477 445580104 340178604 730553834 840498490 906696055 600976212 969282215 8697050 721746666 615873015 949282767 813428018 922930638 17739374 397582540 188193033 680453623 721710342 838942080 346404309 928754981 254621598 393539383 311539393 773405346 991091614 996278546 748830948 927233590 85464083 161862353 314613001 548632474 436337179 485919800 513701450 882218678 223779520 266026648 22175211 825093549 553761705 942867272 987324376 989383295 744615451 833495249 735211248 983804190 484229418 841742738 819085235 841308925 875671712 928789536 510785437 859591172 384027085 400921767 445985801 810540780 213786020 272231624 315970273 413852462 442654600 673332216 422933136 450751453 60075207 431699788 942705146 999346171 807267718 974808340 546800449 666106847 829970743 846955561 867071102 874242701 90245469 631404245 987326295 993123794 399844543 526634550 529944404 613834227 499833737 997365459 14028489 929649704 107546144 961108317 664435524 740721116 278547631 518400014 371231449 648476890 534301781 840635816 942376340 998389658 313466819 983271600 342609044 424210370 295373359 384931348 587988389 830460001 668610103 747945677 842853242 904768254 660502421 892214497 524233140 909699468 295867619 765576128 255445482 694239399 396929034 433763339 978686753 988164435 347799674 434491517 444004912 594905531 882880244 950237279 374515174 500597025 136795682 417589879 409768471 987236701 105391355 747865135 596164522 865518153 615790763 786498607 817213622 832461588 427764956 851459297 969990071 974289630 391029054 577405911 817230066 937452390 793989233 814112530 937769885 955563830 166939682 930381380 343405124 387954221 445669917 656327925 290342378 761229395 834612064 865990966 119161231 335927527 527192831 850409056 204012265 867004814 536105286 612203366 88149549 638361132 16689784 163821184 105472621 493173805 310934727 732499366 109477994 861500822 880840195 970602421 308550595 886692352 397986725 632056580 367471189 575661020 198533497 693124121 327356315 458861258 130584947 324641706 209200906 598305153 901561285 987746129 507744972 977522419 883482829 934422572 103612216 426607061 101045553 702018432 181095604 594036117 105141527 986041876 263388297 307463998 693365708 830045738 211448588 347720970 697358421 799156704 645404762 921317114 344649856 971828833 735801553 944545437 612973109 785958972 696741055 765179015 644700003 882698972 652924560 827527559 50666272 777796078 285857013 676715015 193679029 531316329 299104347 685590317 158056512 636004888 101429898 753865286 403590213 470736647 678507857 752908767 283359818 926832139 767644373 826959218 499310334 736763993 943652327 972884214 60026559 561224103 854793354 925369343 163753181 446973075 68124229 488723907 817928733 825907227 355087799 428685441 284130927 824499779 296782378 507934317 952025727 961829803 154945722 184585258 96859130 425222006 539481101 833507583 218763347 802605451 220997467 923910246 622675399 741190952 100647961 592292840 888813950 941473480 196212071 621137785 94373799 828300861 48969304 612921459 922082289 975124565 504814125 709114816 925864581 946830956 920595205 967623257 972578400 992861880 807413133 959102110 215088399 689999854 409325012 633580313 845053470 893377308 595497275 678438372 906556394 908685304 599645317 752218176 252522977 964943870 88722304 989982242 434194188 540173331 444784432 695661090 687044633 697827761 956126479 964370490 753624728 863889140 121149249 588708797 83936793 634759142 598262044 844829406 43274687 712885187 194312010 822562889 628636001 738424581 59963009 143968971 928865899 944008697 757420975 928334867 222412577 378871625 631890565 764823393 224441553 754391269 593066943 639996321 368631961 788205910 193842408 840045420 992598873 995074109 487576909 771321994 778791496 886742348 699190935 929743788 960646460 968004990 528073727 862257125 635308973 816718475 235452208 445652795 533537431 542470268 686319843 729216109 743427782 794271055 290944745 851774135 148864947 906182500 767223095 889685488 496111018 725832018 815286583 969160559 491568079 692935785 251092008 570018539 888549394 926920495 773063208 909114605 90452630 434758371 720104835 754917428 379917574 755821486 441205775 467380988 519921517 662758919 441097527 534094321 235378081 678328425 570920791 946992861 247022240 414542386 209949549 826972948 832223791 862885122 72832822 770343728 331802353 374819988 495842142 575966386 87512689 371410635 221516509 239729206 550560945 584874509 357548444 859418146 248920896 775135001 134919433 247928645 271793566 584474706 848878862 867420407 968482497 997511437 394277710 620337872 655610411 874771243 783974306 833800214 224261665 661570801 86807545 964863857 423169127 623535063 78302204 929600939 205924326 723708553 524380975 968022143 287261670 981948117 141723407 457630499 205857603 804424536 280450496 286888886 42276844 767773454 912154933 934157450 495937827 813769166 497276574 604864510 622284810 888400200 964627513 989784824 33482716 220168890 228804568 715921375 208716059 871916161 870554537 930242803 594824432 815841253 552460054 633936667 776721268 787902681 420864133 499657265 119044301 704141817 762830170 767332721 806772417 890525722 378144311 670643694 480180115 751847178 273452470 297018696 868443115 904067219 461697505 784679209 569529055 852838621 171706981 202296394 209668355 793667307 821916079 869632287 570832473 749924011 956633987 984453469 970472731 982716635 344439653 978893228 569239171 587529243 112258496 941176043 373514513 762007750 739755307 885097120 775883248 892725785 542760502 584716413 386253887 538661277 363170353 865763023 895804719 912806965 726111648 832804451 55246115 965502760 442020893 465620495 798432930 842638026 837951312 899572334 731340813 871124847 218105906 252940670 117019068 307439081 160991209 778882834 482880652 749109443 412118724 948002177 822736150 920057267 173808690 963611141 17607100 227911433 101399642 171591913 837011161 964849169 792802809 886849968 699141438 844079106 447615606 761571629 780819477 974079203 239108455 809650368 147471445 709476522 195681621 204432304 880727911 881872422 621629284 935657820 751287613 856834908 451889401 563055236 404890070 407487924 856215535 958214268 648795800 816561020 127137451 851416671 24860005 653590378 963703327 999244697 371662841 393952552 89787738 927979350 523851474 611209877 254942296 942780613 479300308 493129868 117690335 605842097 27725931 933916944 788611285 813332386 418219347 481003745 838698132 870655346 586199694 954577245 866575098 869980494 310482797 461377278 356719179 605801070 728031119 771752390 399900571 878348124 668867237 828503982 354196995 402305438 290092061 996690376 747944943 979580194 116675125 277796875 733518003 757562892 63868679 737283518 726111728 776643472 707246312 932109164 56679224 262947592 692330906 912898580 39704320 566194582 468054226 723774303 326103977 490319973 727354069 804332672 635935884 750533421 561011595 635214954 386560781 965027143 741704270 903597540 230867689 769722485 838737657 946549829 187982831 280614284 542968210 599682909 642041011 817303744 956881566 972191188 254397756 850588318 989744798 993774758 759903088 843078540 842103831 937423534 379121483 996214073 434684680 671788607 861244159 903535711 930534564 962341091 725304904 813790173 650302357 768817821 51626135 345695803 731565361 919843365 343573481 965165077 760354305 947583830 248822718 722996337 918534271 997716471 71804066 444144554 43094184 459349479 254844002 325586094 578728323 809229644 40645910 586166429 995967523 998528542 869366918 927203577 878641424 926731444 65606548 960217860 604676034 670802810 784778469 928515717 64987588 941246042 169060821 697057773 494149831 797722979 444522791 698278841 742507233 964782507 60047342 501519683 65828062 905475447 204963307 632692367 679869076 734774020 335063983 579506060 184034105 797224787 180952475 204175190 40868769 157261540 63954565 92074199 978940252 980931819 597783418 850100806 502493001 662098083 838606074 945344432 71575659 517770073 717355397 994292641 751725954 772075943 723423842 840536398 196910233 798137572 930866596 974805117 442873100 924089106 362022858 523541980 702815944 865513876 405669833 552972672 687892780 849967455 922014107 966575083 884421799 906288740 574321843 646159770 404521282 854442512 966540266 988772077 564405910 747562634 617859678 643144642 725538318 998235349 491717032 622185784 154787950 948649324 259838389 739129545 451100174 784356461 971770629 974558490 51587128 986469581 204669642 673098841 258333084 366341684 7183495 804074677 129266142 985872522 899167668 925917067 61982385 130655615 867129851 886271489 193621491 407536126 238352057 266591191 218855856 432665502 353666628 729608584 446602865 739153557 295902438 314215965 693527539 701518328 760615319 802702455 244628230 977917078 442249928 805568824 840709152 844106592 881069725 936629683 355366683 511416926 650039101 715918098 537709333 808156389 179723683 492010651 518184652 773477988 651523000 900333859 442852238 841612730 248840754 836024962 430410305 635302649 931988666 994341698 627185013 692911306 230411600 879569803 275134948 535658812 684535369 962250022 455974889 531282927 451851311 710543328 904171629 949036615 443125538 596688788 712764573 835661691 555435212 982046782 288915610 584311002 623072712 946130528 607000492 717158310 116886302 278839625 197482691 888487667 410134113 591515366 160862121 290170462 945472856 966556885 295703789 744116203 524634661 643173776 888351468 963065806 580251842 661823281 556263277 776566755 214152230 474324682 396707284 578816405 461058100 671856584 196332174 201319890 692923245 881057407 907539620 985131053 987793106 995625968 940276218 998863680 784378153 838320931 643995388 740577937 994163464 999197860 850703608 874543273 973002857 992358778 459898422 617882217 106702660 431268378 84080880 803420665 623991462 651881218 22532021 389055983 896856446 951285474 493325829 553782758 200855091 724488287 401476035 807737078 669643144 746966203 837197913 966439565 377461733 379889067 352093027 590054962 957844913 962634126 689875904 696033674 105713591 716404649 338985092 556953512 208583128 502004007 226444482 339623603 284287663 736434479 488355396 767877670 202142039 656359604 888806382 889406285 481607480 948905134 979055668 986442762 759467211 990004739 273146412 965647480 978043205 987331590 290655632 783409451 421345940 808543977 1538561 435203458 751386544 946185668 585615085 659832193 974183306 981930826 25380325 995315534 253947782 910805143 927233614 938099517 111484734 240214390 599811003 887801361 271265179 768651907 399545263 727009019 213679377 941373960 496559133 860585085 480862079 747301329 495633259 551696762 543591739 938940113 309174949 896335648 528323632 781311887 934657114 960807178 163274914 614844391 553731122 779009851 42085585 125016265 71786778 463433576 149754931 458393712 330698624 817854534 572927661 791324128 853311901 994084267 388983158 833638653 62045254 891897320 399398475 700066351 791722957 797226507 381909777 771772285 409864039 648447752 202927641 553127715 735708847 912268579 754556534 795791319 35683249 447764368 677432948 685737991 719420972 805307154 748361205 816035222 87292407 690029739 691992408 722596234 805735100 915888089 893120420 981280694 299970966 745193079 959285294 968691181 251920431 453629355 510543982 579289891 922061745 931399384 601307372 788984531 347577460 667752854 968440238 975237348 49315414 117862521 101726282 794682947 54404039 171176660 413424675 432731754 235423811 578725051 388808486 943809701 155249178 690268227 160693314 537897198 492917500 862714232 620523686 761656081 760273749 905711467 464769804 806426865 727490211 890738404 803743757 884960089 620881528 866449577 709133364 949676242 172959085 238673143 913477151 975958013 860744164 864175805 695947650 950078153 538391842 786556206 858151495 959987170 864803297 887038418 801105487 946473633 246228484 321100730 101535444 432663085 380938135 425697729 992834708 997500263 644224323 863440280 624764208 689205539 613292050 888046055 257939847 430317001 595935076 856808121 161521452 372061019 272621012 971537847 838337708 839063180 959953176 968366642 403994943 699944168 374112145 745133138 536483198 583143168 859540351 870100166 221945744 399738763 795200087 956532206 750453431 756650755 487958333 776186149 835401514 895690020 458843589 625353037 334049024 913482702 143634053 438279243 336321486 675233904 25770000 993302217 826567527 876030355 641978165 664368198 505461544 545765054 670671421 749671865 978445491 996312388 107323589 679309811 627790350 750220603 897003557 993934843 303793250 946350099 598753050 808961055 303660057 421947325 835952723 893381300 941186395 958315651 147293410 816967111 84693225 223062606 90623484 912176462 355887613 821991879 15468263 200740502 645242962 947533752 49973409 260846519 698209647 823400058 138739836 172678943 40153764 906050375 169379516 518367713 638055666 878634748 391974934 453952429 640202064 926097716 896332266 943270329 192227562 908564725 348433197 899964370 320517698 525256139 488076582 599919215 137782173 489392852 277866064 539278552 911299519 975445795 308419142 552841789 179226268 845221382 493387613 578353589 682233945 899041546 175163981 644554948 378697556 713624747 163904268 734790997 932171823 954406820 444312280 729149376 645551092 670256136 124348863 247529636 649315355 923496688 816043561 839570051 308083983 820285038 338872074 387875340 466095094 995214599 687185254 792156622 912707291 914505682 830074469 991023310 119181961 754057729 784937853 851680981 30921719 789318234 85994871 898903789 270822167 726365891 976187681 989986341 231027771 879733485 196326351 478176900 55188446 656824269 979755035 993654514 960613624 996555732 605765434 951978007 832191261 896417694 600748636 783174749 478608728 500533205 428028331 547455595 692118717 734021790 291610821 929161746 684812108 739236474 652363246 856979255 580688070 831945090 321653306 507799557 103004172 619198504 508588951 598340225 91311961 920962751 345700263 755528303 502992161 745013905 817692018 897855095 334287237 604521873 685636582 718098880 301073949 588361114 827395124 949936726 524658537 633584959 959527231 986423734 834333509 891184289 293981735 675359010 968257906 994641980 443363857 844582871 843408035 866840886 415039395 700449529 857083346 922829375 663657918 884800824 810104965 860191469 531252770 622987787 756655974 866457706 866244223 888949097 799541862 810517369 203114041 205589534 436142168 925984642 703045716 808329865 841990608 946464140 196422746 300258183 933987105 972992709 313508800 747840726 574347199 720135137 390614650 909736637 27039865 589690879 709838607 959949061 950332924 990028680 397574850 976118733 500349640 744399911 596395838 963987017 217260982 994847400 758762059 760739652 88068347 593175299 702968050 909778025 918409137 946889318 232438480 845587492 807244866 885029712 404871441 980265168 178827659 611096815 946505207 966957380 655257407 978178300 941889855 993665755 434671592 771248745 99388280 718860678 519233034 995919172 118833008 164444948 596859117 777480413 478824281 996158046 540049737 594368120 964101811 991273713 613277182 619388347 34813304 371852113 274389846 424895750 603032405 842104777 646884582 712762365 284931596 996088899 144260401 653469531 242951742 250818738 782946269 885362567 26924026 387061130 617187927 835938353 39627311 281586910 179847479 778345137 218731091 309547755 705253436 735861576 511896395 671389718 707266546 957461031 621459057 949030595 681191320 762837128 139166519 964191141 467276700 529904611 948416055 997871658 289942303 902453778 271569294 619201217 703983746 792239014 14461121 459849927 90322855 745095160 192888280 755102154 862284215 891485079 719284536 839819689 731921074 891739212 193236952 409137276 508792689 765349178 917190276 988833521 731343960 769477008 779381157 907229979 259711180 310258394 113433351 201640419 653780340 981600746 566913143 930404548 805912301 878838619 337495169 872814101 491393153 665803113 541669335 894632080 824721479 956819737 679110415 878293053 143322561 230709292 82948550 186617416 720442273 884495937 276686302 330764224 511577234 822737016 982435870 996292209 348681308 364513694 660578219 802093982 908994582 964383732 991027348 991363069 610369744 722934578 230520272 454339626 818446905 832741273 223086743 732505497 620503709 850622821 291688089 373439399 965924894 998056532 123284948 722620125 950502017 968535254 17533746 97898204 284814502 750496336 475273682 985588390 780189101 807866866 831262375 907034056 997209094 997540257 730767445 843205667 773474619 848856774 97729876 318359271 915977622 985607205 178003938 273599582 332603709 350038963 485657691 726113372 949921521 968211519 534204616 975015001 351930100 666739760 673238223 696575523 611210514 886181121 626257580 802986229 377420768 405301861 627764713 719717023 832572651 926674068 623706650 733496615 372471681 628622014 115165188 788388642 183062770 393199367 503405179 600715498 622575697 824444647 574911486 940711764 650996220 795706661 592733439 988911738 195969223 543109523 991376818 996210447 838117970 843243163 276375136 460997857 633690561 863759345 476798452 834541170 545347329 612244385 502325313 635110475 681124228 887076106 191606059 835865886 681250299 868354550 538181809 706495770 807599568 922878427 61667936 245372699 399521348 521604747 525139171 686572203 596784848 607898314 522641693 722960336 424323154 870435149 879150222 972671686 532211766 932483016 874827334 881123654 151535866 397165867 606541114 630094343 186594714 345077281 358717260 628974672 910119135 963897126 896866967 993720894 146774359 612333703 978936690 994616483 850235148 868371974 846925962 949604208 969297525 980656353 515828738 625318404 194978397 300184151 946872694 978142599 865970503 868331709 400202567 964167090 481619920 711433278 617989522 718398242 393933733 900984041 935590628 969871861 261780555 985390769 983231891 991227749 860160255 980316174 795716618 832068387 862342296 919687677 671162603 780688701 285226848 535083373 632944725 983656956 659062278 914116895 592323948 726718399 837021809 965361383 217079975 895401026 620477625 745614003 214890507 698469881 248173068 591325584 631954582 914369087 268327785 603439793 744478464 872981085 866758364 871793120 213049839 879101772 831005750 911104284 532754849 892432530 26303632 263252571 834044122 847175493 307029126 659062859 583693259 898258972 888542685 990938002 147924296 964066207 256558415 736425354 59396571 101620059 789688343 996108692 143074629 466922150 860995576 873372772 138272706 469998685 615289099 997168020 497240733 675132088 867528220 989110018 643100226 993292540 830844159 972523399 833364992 915983051 834577464 979376721 647958415 945435834 528447392 980580970 330331051 973182517 130815483 277881790 924765758 997282835 151923382 891198044 322034090 966110445 607081842 942259683 736880328 949740250 433708962 678214351 31021167 620030920 364125005 393581269 273590427 666246283 483593233 656105528 599260391 677346827 989597664 995932846 23583021 315783729 467779967 530219585 631931189 867340114 539114936 872545610 445185808 646443428 547771979 966215953 840253305 926676430 380677019 714634198 470414715 870107758 502829841 606965602 337305372 399570192 577426277 701236420 961548958 982645166 10426669 106079529 894346738 992491110 213248882 866679839 548784390 665185008 862079347 978046178 897455387 966210432 637747842 942913050 791787696 870100842 513827856 652374421 63459181 406989849 979971550 994467903 98046058 529338668 316099002 601876654 559648962 742826895 2133645 439721538 968959938 980057441 387482676 542288092 161934156 422019003 558203704 868917642 283097629 751138307 607327568 941353622 491756538 632639535 237784078 291088811 526907960 748081484 763875768 768414341 892598846 923003780 796030287 913181738 975202280 980677459 879352858 965595341 861592620 890206359 176703061 856985107 304871352 729065714 883840758 978353918 313429181 739111761 5723854 187765524 53098198 394846105 279845128 428583673 40496619 676997971 324583641 527985052 266547416 629577490 525101590 921377098 314323665 372901524 482053778 883867545 469976810 799670659 742821110 932905384 480414061 487433468 809730976 841380328 544212086 797757589 940150661 955481345 3704355 563832740 485219132 707820142 363667665 794669940 363248755 379735135 968961327 970702860 384206045 641585189 274759680 359242505 82299496 228344050 800748293 866445900 991189941 996358642 862837916 899862746 116471480 195507775 330274661 376559799 766788718 802721913 255231313 408550281 492920192 752589268 600587635 997425935 537188886 651105924 627669055 937766643 591595810 953936045 311095925 516241323 656720079 724308232 586830161 988487103 270493238 991749969 59511970 904496064 29056518 531768694 123698542 129762087 51036342 771167194 504584054 576629798 27015922 201939437 275140242 825180105 442699051 966434549 590271515 972964051 979753492 998223004 175683929 264639739 488872468 858547740 473529013 606182185 553630027 600258386 689006225 826233270 363643533 973495568 225143353 637355153 583603770 631006273 204655678 849076966 882856757 988009976 796027306 880957857 600718142 737521399 722753013 806317279 238888823 397847032 779937295 807925689 807391806 974848221 987118009 996658349 125961561 587013624 794147436 810908211 8440720 190695514 297835789 428122328 192396649 850475012 274526818 463881818 479200733 685589333 328059825 419667368 584283437 662134448 365363439 882892290 957459055 990274952 366114497 550436859 336240465 841436391 491534652 942280960 43346422 943948810 344821469 618183173 843145566 985754759 302907324 491942775 527369842 927621514 503986762 791318566 628907655 875193948 584132554 724215997 613348368 819154218 161372319 583627956 801661014 867794256 639921845 755109941 401530573 821348409 771973147 801825486 698782943 829921049 435304553 955303869 821742769 841889702 904417484 980234446 331952840 799290427 391280649 745992563 995326460 998228993 784247763 935175867 565180655 649606772 78749088 568957652 803280694 940820258 420122267 928028401 923039216 944975891 305588559 624809388 734190286 994235672 358097827 897355242 665245019 990553110 830166236 958268406 567867337 784827504 821663133 985942935 204510903 693045637 561693650 581373210 805023879 928443595 495386102 920458417 800942217 940757500 743756659 878771290 421570983 494504550 390742370 994687982 379505912 962729861 634259997 788681473 532659757 810281877 895234445 987889957 563463380 835935918 341435974 434551070 612951624 792253204 542396567 998466670 783422149 860639053 490278325 795622405 159885027 523877824 97774847 325068497 465074290 676182867 502542896 988261109 345173925 374907042 364403683 445696670 641418471 884112821 475161876 584565626 472214117 794757503 339172893 419816512 45619359 995319738 296750870 776049362 19057292 873954118 371716195 670218955 754637126 910394299 571856048 922496353 196963441 700979230 563992356 576053048 680147170 889693592 790779056 963470457 468686480 740887323 828323420 877885083 517607015 916604273 567093428 873669547 646027556 669081333 308869649 732069775 608827572 691798246 697421022 964852592 187993497 346312476 500762203 608995837 595928667 600194794 326520021 747845557 730596860 920239198 271943181 327759221 542218174 726175527 330969375 851568167 214020895 297848899 711924100 954907881 956703821 965993912 763891439 813820818 524929203 916553585 702579205 923728001 347695512 460141332 267904937 967582788 569046755 977280707 629898365 636053113 620394006 931887177 740817323 794601066 173860274 422240149 650566173 897213857 290413554 349850807 414888360 481342751 870434338 910517410 143381797 249542690 614454815 777891278 529370230 883743839 459828945 913057598 50674440 707025329 326339412 531587260 637025131 979038498 679196961 969920617 770028728 959800105 786730153 788697478 880284699 985618562 873417138 918865438 415984576 839748841 697188245 829381682 514558349 944336161 543657841 641435008 311672921 770346826 75887497 952736818 500980899 720081740 485987836 980154834 110091429 718639372 848846721 947622691 841003623 989333897 363380905 620719835 867690350 960431439 642052586 968737549 864806490 897210109 117826610 211064018 13926165 973686669 178911246 202658926 920898311 936869112 116682408 929458655 48088130 773935876 964197190 994238187 665257580 989502224 399175678 858751848 529877834 989176836 720758564 836660557 398858815 464840896 720559111 961188418 70889122 294009457 475119244 892142187 5092992 374756509 8390840 345469830 56956162 643468686 364229141 868706964 336600217 454949219 392403760 419598274 326042824 505960118 8975265 366260920 315192648 837121587 408126121 952117255 469143944 683204251 993885914 996938688 15051218 136005318 546435099 888014946 839628295 867280573 531342143 605373394 419408263 788830768 978036106 995789633 165128141 190964768 117639462 893363875 396833175 512206426 500935456 767688585 250078385 909711990 589029438 890670880 330088608 341280718 733313403 800970505 118884817 980490309 334127343 573577938 304937091 482476362 800630357 891909707 450440105 840187240 547258480 615499852 239559825 633033599 413597088 574632360 483051009 586687687 405146834 946447497 828071410 992448269 904183015 963039559 414981065 565056946 594473803 755294049 279527426 823971836 212851452 606727396 793131174 888584814 15939098 944864359 969672015 973244970 54097636 210692324 914138567 987515865 800050097 841242520 622130636 937700738 236943806 729272926 452619741 575986815 546748570 839145396 527416048 964555965 865357103 936109280 396477592 952382397 244280320 987869406 221861185 671046569 975500456 997326078 360311096 861236097 520350625 810059308 82524110 793302342 90408921 142740793 968773160 977603452 823916846 958162193 799432072 809602255 330923822 675364069 333456213 456426762 234332166 337173722 985970429 988623041 355076035 947879914 669122490 934230666 217636832 343939007 654526455 898214930 318184693 909433617 985678218 995722513 63184227 962470776 205450339 946335353 659739411 841559428 358235938 425206669 753184151 872135859 104347424 239250345 470954559 696381818 672358987 801755723 11258025 393537192 250594409 862202596 290939735 895566182 718747283 983159594 714375148 960079524 428152578 757724825 639801965 718372973 211709027 340751788 692307492 739457753 315179731 346903621 517057597 868296009 417300966 552141428 782305376 904227141 762640490 955831895 165699909 226186055 68955514 307645271 80955691 176018096 392350951 425716028 392092728 447247674 957512235 976279131 782097977 868081117 233409814 367079733 545309260 605062391 719211310 994929920 969756138 994463335 749802626 790768789 62864573 865070986 411531804 948613779 680871789 745692986 399442675 766154382 783701484 974454688 483859058 527022470 384869493 773857076 907011733 949176640 462093513 915105447 881084780 970143176 43187386 299811522 10195769 16375442 74328380 971517455 683286725 690772459 553850313 675291430 622328849 902816520 153522835 529430917 177244288 766618340 898612048 922482133 199938508 581562934 22915944 870103037 597600401 625248840 939664464 970035203 962375052 998102855 972681197 990681938 12633779 30230922 854193698 982926659 911242190 982794518 579719307 691744210 527402175 890142616 331294461 877427863 670308137 927711808 771454356 909900575 783173869 790506580 614173326 641302618 587523854 837944351 583468018 634452888 813257776 873638021 865249689 928259630 398565583 577017541 737348120 955729278 917744446 934582918 697348928 974383967 418295310 452214069 779157121 779965457 191075392 804908370 562382503 654595612 65198330 293065829 975776804 998909360 442992091 844843108 782527200 973458043 333659375 709988796 31801884 955321793 577682412 698661459 563173496 923873048 344656748 856553075 139270187 871668213 908879333 944714511 824197621 966366514 522175093 657506573 305180366 447443917 485451912 595242141 514575675 634789490 722621992 964767227 310128365 787550987 705474931 743045609 705071395 944382270 582809151 868020874 346163076 865472436 628540093 912700539 195172057 853820003 409105773 580808821 606264581 847395805 15534933 733670828 652148969 787901118 593343470 753204831 841311846 940299855 456580560 625067141 103752621 982632352 119211749 349562068 362056413 571073319 57305334 520962641 185805439 222034044 99161710 773364410 534387285 881767467 264915944 481413693 696236822 844853649 156648496 165835882 147227692 327077540 857485842 883668052 881721476 925715149 801169405 910922228 466619136 664818246 67891805 334881637 453294910 815875356 868054736 875821462 711884899 914983100 603763685 655679555 308495018 728515072 627848923 862515418 797695144 924659603 604795548 866673898 636907757 983621496 695797164 935878283 101889035 625420179 890779892 918318483 311573349 815759937 540681454 991159552 622477615 762871849 598569325 868520302 996985367 997656235 271996296 579965308 865611262 949296956 180600490 207444281 374993947 732970502 917464546 959084116 354958839 964843435 694598848 786927262 917322595 945494279 237261335 779662702 29073413 428767471 745803579 979308588 392913371 748205867 122230187 219324156 926467048 967289776 300892439 851146857 163259098 223023149 223044809 536296989 949720344 998660102 733675330 853629453 714917924 749950969 387012991 951450328 671978032 682729761 482492681 876625228 219166450 863950301 187231877 618065404 199002216 926399723 853143561 992799917 401293437 910775469 802551806 894066312 686069617 923366349 903682060 957856928 229402471 426826847 965374350 975941846 206619652 566898475 49043297 407878300 869240600 887381421 655093217 895686485 130836268 130939061 919271311 989486035 248096407 902629812 676006509 737366426 595684227 596537828 54487962 184646603 591273820 664162858 71741791 516086644 37680070 619592526 348624340 726483564 200993969 883489174 871712286 978606559 194924357 878067994 679999086 785653344 85940528 937078638 438620726 458446602 870311522 909374859 260603662 702921874 903456419 918681179 451357408 598320683 290725366 704272318 193919787 221608373 666965522 847136481 537963336 706195369 775537626 803766751 336087908 478111574 36562595 916747625 799102642 925523572 24568583 667365393 753120594 945331842 871674796 892921080 860538140 958373535 940229675 959932410 56774861 356388140 548257718 822396577 192816584 504997330 489543526 984135769 865362686 890275871 712418660 810947059 530147966 930122368 222367893 773381427 683829081 919374388 473487858 818035793 6237333 850596089 956063392 985421249 897036650 987911145 129160451 928556497 736329762 909523246 307231954 318850996 953875309 986847981 193184812 206777462 466369512 707105913 615349803 742522889 614638814 904916753 263554996 358335960 210130226 759681093 320722338 355907635 58569569 666120540 382384709 749072164 413655332 716356550 870160896 906625617 675231608 722052072 782533362 974491863 250313473 941121719 439078404 475738724 426033358 843959957 650061538 677811510 664510128 894331539 955946737 973731897 129653688 348194856 183723991 397239107 938437001 979171567 426204174 848768927 732318494 921964199 33266167 58006248 385430892 915554616 893364082 939895190 54179672 357681440 175737896 525567572 8873481 279931955 420034101 760932471 824886658 946781864 905812065 921140682 848117289 988312131 220688480 593145653 18642960 183576526 765262985 800913789 673497690 878069773 534853101 605828135 626842769 876293513 672639143 898921749 414960417 798770349 438628417 704647678 750812787 782776933 727568807 911741725 101742669 462361816 533768065 660286210 107275156 981908240 874191415 904308355 543375199 567988740 842556570 858104233 865922808 904119969 960062119 993366962 675977905 813241596 338252824 952392185 642650202 651706872 660175000 711080349 709597633 823316152 886942327 995583203 725644400 934357482 696294344 901292354 296627763 924062627 312251958 397978547 348229651 872513780 688017977 937709634 213975372 253711117 767017442 873425384 688011001 850520330 843412111 857525738 648781355 730610822 504828649 804956032 622289856 814668061 44699316 54208241 475489509 641111665 926774912 938349407 433239501 576574345 440181206 920201719 871143620 914008982 145741273 599982576 400197373 584680139 506600361 592087216 536952463 737045310 364913956 573909252 280529617 639015129 644471338 915078615 399032075 932308762 462307980 488924583 481529444 505219881 693102583 772237385 468372078 540210128 866023958 970211838 709558554 761222779 513884924 549891684 716386490 814827434 928205047 938196684 157137384 250734361 258236624 897104362 912490930 968112048 705424069 717460075 995351071 995656475 680658506 929080105 979898512 981319011 624877722 721501756 98303999 397023011 65723865 658152518 330132713 379136547 44087607 467540260 739171537 855945250 116493816 692336453 152553996 507648638 220199028 605450891 864023653 905109351 629360298 857832132 307300805 512472034 659494760 886637715 779104052 782918803 461962446 965492164 836314626 901255479 659866080 920116625 7965216 790647280 676248184 840745878 856275122 932306652 234929753 815195184 93860441 743181758 660089251 715500573 297113374 680024664 923849712 961956712 97206184 845694504 790161683 893414041 27917004 631288995 769472379 770436724 403254772 734520567 837820776 931988746 858696378 888957416 52667191 539110692 785095486 940440576 409727065 435038003 897357647 922293298 298741112 599929322 616114972 995994638 37656958 141071305 712493670 733557344 608288076 798298819 269438040 714287350 269438758 743963353 727731691 980506407 82946961 689886975 312631928 584576643 650965901 961486999 714689301 837125073 448080950 690465770 318128195 374102913 319936157 676222749 347875256 679266488 753356284 866391742 351559747 437335668 486099764 622727296 452554852 810770257 990660855 992037364 604208589 879876875 51694188 363331721 978838414 987575116 520891133 823485005 717216307 936807433 245397426 397152199 770048528 830016896 549120794 940752087 27886531 611356529 940701605 969360418 23974310 556193724 820565618 951745430 283098721 849122765 478671535 636155960 646146430 986210539 13241399 257145912 144680653 208471995 346911517 383492308 441250169 672035514 857109953 920019904 715216472 904208370 647082908 866424496 604808236 735562936 889730728 897044940 645791725 928794961 965610295 966199144 401980723 886896588 888341874 926476011 995183081 995815469 567761506 684910581 731214523 970761006 412054612 602144149 708109973 983927561 679408663 975694026 256102699 827910247 735969470 976314770 58307519 932386497 262939100 333505750 908306509 996550891 655039194 882740499 928371338 984416303 441500316 808141836 35022917 485240271 799877072 906153920 855585938 941754944 630517702 960956462 240409904 662796998 374325223 942271901 241083098 259156436 787921939 958014961 774514175 947001348 427422708 827921389 296336631 871727454 956746623 998924950 977463410 977853836 27495968 102729831 616005235 997199428 46613474 393675728 323595720 865172121 625537590 976322523 784787423 953928067 766200045 772453127 47540225 174878927 641358617 953329345 895536811 996842026 992862359 999257691 888621608 899330849 9261844 88967851 711567356 947261496 773648817 845340917 627246084 964660614 917676186 961714597 501801066 660008429 812969902 925092359 385997566 428745055 519671866 966784546 44544703 878548837 213389764 301240980 60390439 464983037 879975270 886273008 359274811 681900099 69609016 303974980 337422581 662390794 745883549 900313971 660521186 865207920 768624832 943748361 447558007 934933122 828396284 877611376 675053613 765933155 117661898 341770444 703413468 784757305 944480368 980085439 825634967 882591648 527301375 579845721 619117110 983104486 59683448 665267243 184098036 893959705 488938381 836041081 898728610 936747940 107889002 239203365 587563891 834664963 25557854 666582707 882045087 936365072 514228802 860925774 214921784 539708975 510911811 850585422 777775985 840525232 294664125 572888916 304991985 366086719 557542447 688802277 530028852 971448447 762780546 802064904 705262601 870277841 506548081 843749010 445132121 464266383 868839040 957422290 472913445 548646810 75874424 119902487 666487768 768304175 234240012 752743059 215873565 445468934 480167656 668526534 957698716 994392089 666607011 857996970 280666365 871103699 803717962 943605270 717591065 990615430 432730490 553556989 592515133 680984577 850549744 912913928 123346954 476658775 366722477 479937006 22252522 365718841 524131974 977507614 240068344 946699743 996657874 998139823 125293605 965152661 83244043 343623252 424553469 540150919 232817895 910467796 416346193 519252431 68699449 506347853 982942031 990035511 834529361 864411580 757788302 986534649 159917217 433073946 864950091 933518269 190501189 994972242 464402711 468740199 621482554 777531306 915625569 949901608 511744558 994776933 753665218 980238426 795394662 830953615 934628285 973532596 84661581 172422041 8569252 361731784 46531710 332915464 682686355 787533246 606993613 845804884 900908264 958555762 701234270 994225020 268108471 341912819 150749353 285256835 489802675 835172471 8435219 296010374 834013513 842332596 81778100 445366965 727826281 784224523 785335899 799879900 163685293 194221436 847709158 926519793 770932829 850507073 901468847 975642762 860165277 996696521 324836982 891058962 237120713 325633971 784935008 948994403 346990411 531611508 897497130 944849974 189810491 409203050 978203850 984374522 470687909 490984902 134929894 238963531 17432181 695028481 931218600 949826311 417914502 813360448 132224081 946019229 869928049 879360782 358867431 939372428 287179559 672643381 621533174 923513192 995112808 996835278 995268370 996811431 810982008 987498369 433693983 436272450 771443754 854529543 392075047 757869124 112619618 883412763 411326949 837655968 857420203 985620798 894813576 915293731 580748534 701026212 638125587 845117507 620495406 957324424 671476209 693408951 268494555 974920440 117825021 852434346 566929453 998121403 900547274 926935353 782138445 849267116 991198120 997202459 438638926 782927950 468005904 993094051 776574207 831263130 888898819 952342252 636685371 787004598 799470992 918855186 972820505 990840968 143498428 159974063 770918850 841895715 84663844 417026252 660774473 709538902 790090841 859332422 297964488 819305781 332155181 449638352 92580650 606960944 418592949 519287835 341945389 425684270 337049141 652495321 67379299 460478950 496682274 994859696 862615996 938156530 572264027 699400144 253874730 792739390 820496235 884783595 841730740 964847432 499629003 819902292 896923751 987542480 970575633 990142882 519759465 572570996 554243195 692083689 165391456 201213213 216109225 579515040 945666185 994129007 994672524 999172061 625612671 649934329 418190769 476038858 131671155 343430754 7665247 214201701 758543193 808698505 570372988 927777530 783804821 986395001 554547220 928082307 574262521 581545832 178135628 920740794 903402436 915175154 607390178 883471187 3495795 994639066 484217218 762736412 224175621 620904956 659687267 710168140 703091993 725491581 430226008 698570435 815444926 948321549 866353890 874637547 940361064 964574608 286716740 720651555 49210794 274273436 589735384 902223983 800832031 937290162 647587259 904442391 648392737 966189655 146300172 357234761 678056533 819971885 632586692 786115253 744518933 911638986 772072061 981341811 921204386 965125002 177051737 523472854 84753814 871945914 224487640 834185873 554586993 673652119 716040977 902517613 548716120 947111726 803739520 808752573 81279018 708902770 186093291 397998001 951339760 960048675 192321142 503777160 582120329 791139437 40875766 784116185 664109874 968290602 769834196 888363816 826113720 940795469 461177856 909267983 156474861 585823517 459460975 627378043 719658217 725018206 508668137 955239829 226020581 409001448 25082304 531224962 111318866 711451013 763562581 848026395 146576574 645322150 948573820 989272710 901568674 966345014 35460111 620574180 680587042 681819779 684287038 826392872 600859623 865290589 991590122 997237552 458898579 900888326 420416901 747016810 84622355 346760023 419024701 916556707 916664108 986743338 396456136 463900742 363055994 421297754 482820793 678922793 943087921 956227549 799621808 952502535 303983744 694552856 63035250 387530906 471718212 742589359 674978705 919240631 181567057 228241554 331734205 364809547 694942208 951236946 220371406 238792488 701207974 807268427 770773745 902580266 461227914 466245701 421759292 427346667 105796029 991143497 664497043 840284836 710349201 775596143 47513126 189291472 47801353 349217122 95538247 850140556 616516520 877843386 210913756 373654087 319925084 660922102 13314452 787617373 25870005 203734489 673251018 866556766 683207113 980750618 801085831 867067006 145357772 788429329 203445935 331776110 544144620 867884083 214419617 811746660 869915213 977893758 806405956 832561615 413449798 562541596 47785234 893431721 112752562 720686901 372311234 525448365 177254394 698263516 669131872 972263847 823500067 846777805 106737419 518223337 656224340 871831743 706373661 840879764 95198293 493303847 706727139 742692571 763611339 776444033 459118206 890598873 496729370 692895314 661667488 749012571 196754648 508631570 501292700 640706165 200230321 565376962 829904822 901058652 847586638 870875355 3827408 159087996 117330832 572737179 640173555 818869344 300707754 825941179 912069223 913594663 621242699 901643270 706351764 954086185 356121799 970284130 344900306 439634457 251926145 598303374 231871697 548064925 302952103 515445532 194980420 455556853 6641573 949976132 824866007 908207809 12834969 702864637 407863720 811387036 126202048 639948865 160548884 376472859 752981622 864617856 687689223 926582012 531224960 894718603 586224000 915890545 693575235 849804091 497233843 675259204 265440099 867551810 948946387 962854500 278278421 510527062 770087686 887062571 836318523 986130435 587832959 604612712 133983678 721097647 55071125 560922220 638532594 940521619 793030401 919780812 339316542 435094851 518595787 881480176 731617888 949483904 281449548 980587438 573105654 799145703 471533572 725156402 475180746 477712429 48065882 326620968 810490154 943979722 204273953 553618418 767257282 887647900 161959288 346057111 518782539 865764801 381904947 498834366 788655936 968192152 88479303 994611512 948434815 991410117 883437252 898743535 123516214 957287559 821159935 905181237 393227625 506483578 711971764 820276330 834151881 981321042 597391881 951157590 119114490 346770241 514504232 965422894 664811319 960151640 190880458 572210780 498383057 572249703 24663331 577259994 146070951 249880568 204033704 577656172 108927231 983222505 179813204 737250294 417310091 759152630 833574533 849219540 383984208 722511829 862332556 942562205 814625885 869845951 734898691 972971653 677639855 938989109 881534465 965744472 780313390 913881425 981005872 991401167 626046842 908794733 948795109 994669632 314278793 524868230 566712246 665541582 205258103 253118396 678838774 956134845 171208696 280774046 925912041 965482908 543014238 627235890 766191818 965054108 189160222 453180772 659296330 692177872 145474923 887048903 261613937 562238941 310186292 690661243 980887959 985657741 718828788 793679764 784746977 792310631 532645707 709077127 58268555 599179156 642861447 847630525 529676160 763198565 322027614 417633905 421447330 810399386 717365542 975387488 962533167 986061930 943864500 973355022 64047223 238206834 865482745 972054848 556859402 706790056 134193102 238469533 639610535 783872591 59913371 995116340 165390206 464895259 586798017 751433623 442751469 586489279 974587081 992161054 938093841 943504226 23971774 220928929 659702294 739036524 489679329 516946135 973362093 992185009 557589853 877377297 433962722 843280026 456065372 740295045 916173366 980859094 790650784 797960791 666794672 825151498 426855087 967374003 231841960 424278685 477265277 959866554 479709859 692582970 470151792 953161992 648836531 944568458 711137322 740130535 707892194 915824374 19622444 910240560 636693596 947332817 278103737 976340267 440561633 703089955 630763691 702492484 988311144 988752114 572238460 638360373 954054925 981450388 969016927 981462964 443896693 709294272 825322791 894642900 613245960 617844296 286949915 301513506 863290344 997187112 419595959 731686565 695082408 993746478 676253237 682594163 547557626 786524773 356824476 491303348 424545327 986926271 325934860 361870190 862850404 883237722 383508454 427694991 245923377 474758775 550410008 812145775 253431107 652754485 214103731 819067192 423381497 617731397 159078694 176333725 291874003 441647009 277113277 340293406 184375463 453147304 58621565 579923333 616713985 785090794 631478897 857927668 712530489 732137541 64226655 468777234 907727307 979493226 590785028 833982714 360347921 726498141 777838461 814139588 648785096 888442615 480951393 820177495 797270616 938651979 202874947 759679488 572860332 770226712 470318800 703623076 307378373 986008344 978187624 999119242 784695832 973320740 85716732 299109550 948608999 971111949 948498489 968232567 504816443 685786293 891768463 918297966 393764418 513152627 923876320 972280973 274154869 740943442 604472485 791628389 542753817 829392868 213939697 316494588 459122778 741404295 901001529 920476967 871494526 907313088 864792363 887084991 323906879 533659531 831109002 861950467 832869778 880074082 197963338 301656217 660582 260096280 547256626 744568563 713912867 735459640 90541231 629594744 603738976 938214749 907823939 924726700 481361793 862354114 617254048 913386896 989850547 996487678 492545604 680236946 825912317 858919819 384078057 617904132 513265576 696395600 775061083 841356198 169550042 506711701 33764521 988530219 501613373 711365128 504614693 762865388 576867539 813477367 812244124 921008267 543945560 857295649 385065816 736649554 593498012 758879519 316144477 408074951 738525451 796880037 258408849 747516241 656283008 975127821 820128821 880027835 251586661 589396338 56588008 423571032 703185463 718143476 222807320 734490207 890170208 931093223 822337643 909752753 788639221 793872300 216403741 969092297 761020373 804076796 256891581 337263376 726590960 764978569 166194963 623356859 559349478 962215645 767230697 856922415 276649087 957101572 421842241 854982864 269026974 281780071 818567320 850988471 149222888 908808000 316435208 881387734 432680536 890072719 23585271 47559376 167775112 815276598 581401874 829660033 785899351 897202705 96962131 554079058 162210160 636351259 931016031 982370300 822052294 995252210 592920957 986852299 281175475 488502791 202958740 935154421 66483123 907112557 881375030 931592870 182153530 743942014 948458433 974753863 840634108 851440026 436571780 666849749 728885227 953854602 41792640 558503346 618311052 778278136 638045714 871112234 487210146 895481009 917177345 923717901 973840471 977207399 154365180 825884135 858705713 948532239 508789341 523411634 584345234 923056459 763330818 972651902 336491742 830389305 446380066 710910696 651502626 868827237 139454553 171999030 927072437 942370641 517189638 564131643 762809814 925148266 564520749 884189316 696706974 777576454 761580634 962811289 721987455 770223014 879331584 959053298 78800931 645041392 138866370 401484358 866623941 944777829 828662011 966824605 754830694 917830423 745474615 885647597 954600690 988820790 393704369 887285679 530247401 994775783 761829582 892973808 277831781 974941659 219163737 518876861 757258230 984527459 184042445 562991072 671855165 867878177 837538235 904680801 911140230 917264564 727475423 823862689 662705776 750191000 859300595 902894793 942623995 970640712 654435477 891911019 270991626 729957847 402045905 737302408 745229524 746958930 403815223 769537539 827218803 939206892 712820968 726038034 836043879 871920287 481220320 887508608 58425988 711080270 338228269 592339690 117849901 555695236 869831773 881320483 31121097 60665549 78805167 847402285 895642136 963603165 838304825 979350376 814396907 856430468 262107993 548234637 946656199 953470051 782799314 806094977 423000587 773390564 875762766 980239922 922860737 996153698 566510932 972027514 535161387 557815476 386720915 415500551 853127908 932663037 4942535 33214796 121717018 654596996 910315542 964066205 219520933 357384213 237137734 275266156 619723150 886457044 534442158 752464837 355663611 390342519 247000765 297760518 187520718 385038705 794527209 869821539 445701966 982264823 864886588 873751216 952347744 955095378 121607631 679718768 614532606 807210761 914983246 954317358 56360287 461821457 358896670 972604268 23898590 895134453 463378986 796697310 173971524 190113263 455625726 490315002 440303014 666772388 550298407 779687613 41884815 983735448 351590230 665573531 582427701 839919211 784460049 926807451 186745363 338744736 255443579 988638774 838886131 857500243 527562276 602273385 206495693 250579448 416713771 982291908 44194956 740619820 982028712 989459825 133628829 898645975 290804469 466578116 910013462 998153396 732245747 859851232 975833309 988553436 298949016 399541717 226034931 332259658 42533992 300452059 264186792 386944889 724072918 874937877 359246781 922381874 869203126 934641915 935617494 985022005 817322385 945909613 129312246 214154348 937819711 945066489 872703587 901138282 619589145 965629705 57003179 404647068 734081171 896772953 372405063 740690344 682817100 998779018 984753123 986517199 976688277 996867543 365495024 769136142 462206598 952251121 882832519 980187656 489470756 835430743 897812838 949506043 766584662 876379022 142065697 386891392 418051991 421675337 514988490 951213700 974060634 995385640 632242824 639676101 676113208 799289143 795163600 906366983 642931703 957237801 205515920 528488043 62819942 250335806 497051625 652957501 347827244 855584947 852851649 981201235 577730193 860736051 362283935 996574000 284757562 838057163 103519296 742492244 823436502 975711714 822244027 989008419 770195081 992322110 378427064 491841766 584436554 843677875 150229985 921885351 863147959 873896940 694923458 711221544 760804081 829184384 226572907 410437734 450222644 935694394 206510080 754437478 261869985 407969730 651115894 681060360 169348409 563463838 442759696 492223438 151874988 655172484 771039893 945407579 208596102 949295033 882532794 967126743 486334660 667053980 730953439 855911399 827390096 851393642 362854360 496843887 866387629 890475919 516813682 984231370 514986677 708623093 114753206 692446871 297823472 475946546 823531939 871358228 946614771 957633116 424217396 784317112 725107920 837218032 473086993 909516219 145121797 244314803 894012882 994268826 981001706 995267963 125177468 545590856 978642105 985941212 474903691 927058478 531362906 532983414 899510987 935438241 405736623 643731142 293838254 449982058 811155110 867201599 592651491 785539482 883020771 927882076 174734951 453400122 29230396 139428839 548852392 882316261 701490768 973194697 993949055 996952812 172440446 728212131 731444556 939524061 635003956 980858396 957570270 994743266 899281128 952147889 991465944 997151773 594255271 840878942 406090827 738167697 617218143 898966246 318375815 367641181 789602358 997872164 539080773 809721388 800995 557165084 338008100 965251652 636914939 792548007 736321392 882481949 973023593 999362971 663346347 891139642 950317060 985368266 976836742 982995258 899640868 912959309 270726320 914360508 825944137 914034345 2576504 294130874 93645350 765834213 436408434 558642448 60897981 847818786 581553421 606673810 549032488 666685521 956209488 984944763 97361465 563136758 758548947 922090031 294902287 825747414 642607016 799037167 794380148 964159418 176145406 895165076 658768103 659756689 925751615 943873487 213180980 543142061 325256558 696273011 851658439 994570947 797787438 878756064 225042580 875730680 802528944 903505276 61057570 595908935 479793556 573883433 322067096 713278599 419762828 676757257 871726251 904542430 637567272 994528514 842445472 884095229 992874905 999087450 191689561 314857062 772934199 821397208 780995651 814696629 558441261 883953030 234751830 754409468 94266779 964292713 384147637 708237969 526272725 757008009 213990343 558414932 811674576 951333667 160269476 328714521 856762397 996437035 624235747 624874464 508173377 700760456 458726477 809005516 721205464 963804058 761897506 930470503 251337588 578154873 994305508 998945074 311479368 652112060 671762886 793664033 876319146 974147838 49430468 347503509 852958294 940941459 924756906 984798756 755389987 906993020 784317643 918095801 766973139 817011187 99424645 293703081 977462659 991174698 237551843 239721734 35764802 117071357 473005695 771015846 476748505 789814919 870357129 942805828 470031783 678737163 627040549 633385471 703956242 957241685 300663532 913432773 925003490 982981151 224706106 776493791 581317541 900685128 185937522 817378661 589355072 893756923 583720455 854221257 754614824 852016214 929161134 968762423 130013717 252811892 151315190 924553905 860313815 977135380 804300655 984684076 181646986 633530975 781996655 885792954 946702678 946850359 370584790 862780291 24656154 309720089 916615970 965582043 375028351 925266194 103896478 603734792 876391696 928322777 13881462 534618396 970284063 989540305 37586828 968705759 222652082 709481687 583300978 825290488 987553209 994824366 235175787 443293602 416217762 882896940 338586174 561471034 69792558 790076401 993350886 993424388 513757124 619011715 66469976 398262232 656814015 846389114 364482563 734335157 402118689 482328880 249743779 575786401 595290482 950354352 496746176 983120246 204736074 910934341 935097223 988613683 104302263 449862516 709118687 967083511 110919684 930306338 111970486 613030745 133620463 245835637 882453099 928161699 740183971 787042844 771473748 905990231 305240968 576361641 423158880 680503632 44162470 256290323 439934852 538628905 173656024 850395827 201372797 359758908 92534501 128341789 64912400 123685987 466423398 807951988 404922535 454605704 489939479 582333575 686080776 914543844 683444359 925720017 680478425 994039923 334608099 984848447 86509851 221224642 415453706 882266298 388993457 799547612 738687447 738833955 481817106 730018562 836576267 943957789 918227180 969196799 132260623 783320822 293122737 727669651 465309455 873132268 847470062 849396224 941545627 961268471 180213229 536038969 869926985 974870666 796883124 861932765 178820390 749484474 486719377 968664424 191307201 377139388 866292295 980684690 967121307 991881798 198589037 937011523 849592725 954363361 852942918 954475389 40178333 665150834 357302081 870643961 697184168 998239175 448557674 850668957 734830648 988443808 500349294 910461389 199217936 460708629 866043365 952121856 248424551 872299898 99575633 873849873 730694375 788142774 807127209 936289522 650573001 791119309 734941887 832929600 437278547 503509712 555480005 812324834 366626837 584861131 900648971 961608077 99294626 246787747 129486313 704661928 381766310 981708422 818257760 983363331 502710124 608275973 793534181 897364547 756695720 974344280 221078759 745077475 351781561 555564544 191493997 735923903 185572161 645392881 271228270 415753698 329303123 805495501 385826525 646824570 866344973 977048181 53586831 244181805 170137143 326238693 574272192 909248065 753216983 985965866 450631186 516800062 436547852 655089992 490418624 995885235 495604205 825320970 667804445 790126688 120148391 933029962 233725328 534833784 212896925 758243598 605683330 816053925 150618720 892311170 234203757 386788746 445646180 892130645 228570384 658671288 551929699 742858269 890571605 975902738 565882937 951234476 305797586 756269212 246534903 308040248 491881279 952614342 317035408 400923444 317323465 580394134 947912942 997727845 956428637 985063587 520840844 942093488 1344547 880681573 265672271 817761282 748425605 833720965 604347992 794078699 629261017 695387286 390073726 660056530 730133564 878100978 618098573 810724073 607877852 862463750 216686989 546814526 531699973 629995179 631349719 977501964 446421498 496540228 405367535 420843452 560963730 955145026 214126912 484453334 345961083 989795670 629558968 898782635 80005509 526998709 232755641 381584272 515532145 932564149 888277862 941183018 830057705 861854572 582441620 989034309 5040025 481401495 285669591 744961782 651025323 864099511 83093576 263485939 446271360 987020286 873546637 874381791 860394788 887539935 409178649 894682741 816621902 885632663 826291351 958757002 321246626 485222049 173638115 343247035 776023295 873458492 579489598 711793257 71048474 825772839 705425968 973575866 764674653 900175940 959828290 974417060 276265194 601771421 474765811 596246286 956193721 980076341 260755419 766729659 163125195 923411799 662682082 854527885 704245863 804093565 549480659 587463301 708632231 979319921 160585653 701790851 535201748 887215212 68154756 921289866 409590505 510524825 746170080 823491152 617639300 850609121 596252134 757037298 813216248 909126372 407463655 790847234 116737946 160861733 166225419 959037022 164008408 850572150 228417194 567231740 95389985 529784070 301878678 777883469 351836480 925897391 504382404 952095562 750002086 758365572 947195908 972023173 728035563 988386022 139866908 466916583 802528845 834932687 346990196 705848985 827351191 898130994 559460623 860327613 570156293 663871580 431528586 519006759 955010309 974008556 211280223 271847192 842644553 934999595 259740685 569094889 620381988 744231337 166405695 753912221 798621939 980942198 891257510 904939381 600535083 611558881 273031447 562137151 178090285 268369083 816753823 950731882 519855562 842128444 678461611 771391719 606972435 656512266 238997664 453481780 893727219 931622767 363518587 890360665 589475211 997102188 875495109 945937561 309109374 804898050 451187901 462923145 419968131 427100660 83142412 994804654 409556396 942931729 440727832 565720881 776513906 822129588 635051999 942953861 811015162 987641645 214728203 277314339 118026818 562822136 751221699 962012648 230270138 235139333 720703484 923517766 135897927 851197439 666322014 812454101 343509827 365970263 140254985 834503858 153562860 798112463 394190135 844365123 829950588 873880301 304394324 412080977 173655642 534379142 897919428 998924666 303392961 517284152 273741383 614343231 518614429 831226747 357998496 772904720 921204652 977826173 352936830 427170129 489838839 797735843 176534898 824655240 471034263 635638007 685620778 897350419 286584231 756206219 959154285 990332128 927474763 981934318 760820206 859493512 130753749 804093520 975060323 981734776 278846360 621254270 72161593 331143095 278420747 987749557 472576897 721945131 428124083 761728510 657504157 995430275 876850210 979301423 322275461 912253409 345539535 433194660 231183325 329770543 428723251 847383668 745433545 860355559 444109506 598995727 257537073 710237102 397664652 495571192 508649167 715177141 726787679 958432838 99741516 885041225 610510174 611578713 724893571 987997453 902814233 928330580 519586159 548323855 109599209 709466757 433374422 512303826 229833019 749105209 926475097 995747884 495474725 657377003 598683590 868038475 737852271 762131546 260688723 297729895 108888625 323999690 285705815 868535177 191093672 834539651 98676978 492716862 334954219 592926579 300699156 959374963 827321048 841554194 819315776 819822552 691301059 823230608 778032072 903381816 880776126 985338967 85618379 914419767 146782737 363296343 988984586 991568420 624283413 931816467 99170581 507015440 829357334 963912288 799296348 925945709 791766464 940822775 491369823 561484977 99601781 949772027 994892085 999077050 558021960 981126419 659829525 822434318 600119615 959813880 190975363 899139253 496548262 705220541 670669925 810888040 543554195 806810462 752119958 870524399 915475194 958928775 197494615 331904191 763836345 847501028 95327683 673628871 494974341 686800798 303096631 931407455 990208100 993642604 252581706 454629974 37573905 297706101 98126901 462961079 571265344 897897989 655294729 692649182 154760691 365516070 239545710 288983746 300593849 448764056 181829263 827125767 202485375 573270236 552382631 761359968 868001252 964593970 497807304 968344577 311197518 833930814 752866717 958082703 55225015 343085220 751408686 816639812 374136750 823253048 560933518 802029136 652253856 763361216 431357175 935330298 656813997 717525875 206618605 979916845 579288776 835786537 762400315 781225481 191564390 891358328 373809461 593399615 776010009 825813775 661732255 773108456 673946527 676370487 52576875 906052573 777432071 800115965 907007961 918437263 972006462 982409940 613902709 982188766 867897500 876260199 810543332 958517733 94941398 756874680 9392955 924551259 296203744 556769313 893682381 905383961 37454343 792353763 327587281 842265382 83091213 935874402 693990732 984415404 898560411 943920912 62114058 967278553 476959043 945362783 363521355 526188192 212838957 426549766 847082750 865086474 711660761 896735557 690931757 913596424 263971661 549235936 17683953 682055993 883082141 905825254 573881855 859068023 793760595 889708250 310420085 669709771 724331935 862927286 595052889 762642491 23267531 99573921 338055337 800530622 252294966 672772747 779267751 877598885 145209232 913198469 771667587 825851891 423539189 774169461 105445493 690727319 684916432 840937075 595295231 888643838 748823978 886427163 343916993 652158396 299808298 505364855 599619833 969942882 828708120 941741953 136764480 670007785 35204588 101266068 107936141 416651626 684829412 747503083 934471290 953789660 22324610 756552019 985056249 995532665 109541940 448294307 564494273 782364504 778519341 806852960 53813281 480314152 369167049 594457160 798030336 868573899 490539452 716344152 562905361 813560415 925807491 992537872 110594343 197647014 23076421 580077048 612453450 772373140 608128511 941380663 219521065 930130034 520479214 671116742 734544530 955061264 438982672 503560455 829079412 880406079 825259745 835272162 221312200 744069027 826886101 936767636 596773063 835233570 854438599 873352685 277074811 352358280 200396133 554026703 318816495 878222253 145142959 900141016 541301661 739576354 677550692 976386919 506490131 748632118 817063228 875721483 284185761 302065485 15178736 907973276 422177829 671226802 645887401 811330832 933061358 958571111 973280596 988797119 660352446 944906053 452236820 733388202 637925620 656713027 397386050 563629633 729111090 889326298 472725052 929624690 236558990 620613849 394344851 752347985 248830620 602576523 953417839 956202646 506634457 557899567 535860231 781820785 923133242 990412760 374312358 828810715 79236806 361103730 170582940 222805135 459415320 927381574 630768359 845262084 928268462 974742735 213327117 398804909 920609250 924718380 161617958 477995342 116746906 811297734 749493568 931502622 120727805 692677404 785057550 894136659 183933721 942993891 339941669 448347704 517458169 806554971 325287940 888276996 211851105 842975720 963404237 973262698 35250293 554495443 130277077 995573991 341946204 530539508 950425667 965883778 135427718 177544934 476411267 730646517 601681408 878235583 603396655 618352865 811266010 890102964 286770318 841380289 895576934 939210486 632040789 950567165 378306673 439639165 107621469 989987125 91606551 558957041 451148499 798538165 409817790 597077666 516979045 868659720 270013910 533650467 920293939 990294690 879280513 980148627 673773557 810589062 568817280 680584510 688157678 964422729 127866443 907597557 863117050 871845022 853443795 967671516 109577085 169004098 843876231 975724153 844149647 915533879 676928604 953844877 122783793 813048833 32676213 978953478 504562921 929648449 250234910 502315472 817970327 983254738 420697236 713896947 427834788 535624009 770865318 987945071 643096977 913053538 969546511 995632054 632470356 726953062 201355249 789808631 843678329 847362031 936590827 966865180 291682450 979436911 522324398 871049780 964315024 977474327 364052589 995888167 109789087 284520785 503095854 576036002 919112929 950711550 512333927 731210112 634280587 675000363 711813881 769421492 725367137 831316432 55575871 443441911 113626629 561865273 804314497 841398043 66166885 473794992 874671739 893692547 693138561 699570783 816343143 988366994 218780922 472238653 982496399 992156314 538784968 900546789 955516443 966558724 867469280 897509922 555190001 673217334 675415103 708823359 167209375 572818241 118934888 653327939 79498354 638313411 642400381 760053925 421641779 800033853 861049463 931686568 789433642 901729040 85582911 490578442 340168877 608741454 948535554 981077292 853244201 956514554 34562464 473066221 386300426 559116698 784115507 790040117 242952100 811661771 559117831 740230817 764581117 932984026 3175919 856611829 824012871 988067181 547556734 884830760 735564216 816597525 300811588 542612081 978507750 984701873 564309017 745118457 283141199 415711869 74191785 341805608 72056408 382189471 216787883 244734587 830394573 950944928 324863814 397346913 292882214 534265062 533408730 836956752 397683490 950502108 927241920 956550122 667799850 729114609 469809211 991964698 243301631 473593960 357285823 650525796 553406391 926594216 7244813 551904874 481382619 603530822 789953510 896147144 147547131 575983170 408128246 827369721 887432100 953869111 709385352 757205921 82684656 189076559 441883986 447017195 174833358 445110949 952740759 953441055 757650719 962914122 311944004 880721156 876796433 927762396 67894099 965016652 265393659 892857880 209135086 424073464 691360720 869547280 914045689 992897873 992716512 996691020 506474560 705552181 63200664 252811889 282262700 786986894 286899215 483025787 399136973 652334516 449017983 841630742 111723077 239108090 205416339 834082976 347781572 613591652 977349628 998445140 600677410 956760894 981359325 984016722 854164140 867313886 142658527 357488339 863201332 914017342 203870063 893124145 1402309 520045198 437911663 612541267 63016614 161823696 910529493 927012225 155372423 194345721 820524282 996966657 759671997 920259834 86717479 294745506 382668214 670084222 478673348 875055432 341733571 667864370 681679300 976999951 320383273 806976749 902864045 971372273 804760879 916431789 508377914 657257222 844294682 980326533 7449599 668265303 90361052 696209082 333453630 775534368 827628841 864265934 332591778 387576332 534761784 771956780 575685154 593108865 35846805 347019125 877969885 967417361 466001330 495198213 42899988 907689570 853603832 949464613 255118547 996367815 794711111 887265202 815281497 816744272 424584210 873670915 425665391 480802931 762562378 806392635 105523897 714118432 535457093 987834375 731675479 888386333 892450962 973551115 232367860 942469844 432757070 776749466 6975268 833990253 489120399 671932463 382503963 810555643 698486830 873972522 158529012 950962978 575273 151865080 108940015 895191722 35717 948527260 849895509 953449188 398005287 816897402 403351477 976792226 59763996 482933377 125894891 737625623 130961810 673559053 881908241 927460352 191562866 333484280 966506283 970849592 661055559 902088178 915671681 919710763 787886684 968361117 916965056 932149719 581474022 769284676 735824101 766922493 407994952 481503543 80070961 114621971 329311589 600342812 285561815 653345068 440401981 660956514 395454193 591421314 668207535 910644401 745203178 972541284 447541808 877763206 541731258 614116801 371301519 597178171 929557984 982590982 458349490 877512674 388528442 641628373 466220564 531616105 258655304 555524277 969341513 997913992 694640677 809744694 97668217 417029964 956915152 973913265 341003830 760273089 340260186 435526770 11666537 940567120 162809103 820140976 23799347 145152039 293543769 418236391 409160998 991513262 246501461 730834066 81129208 210365509 502327845 601335221 755359127 838541223 353714454 620584213 615390152 932053017 809509360 988156842 748681218 889634895 152149084 578523842 63351804 610197962 266855612 987516257 715861231 756208452 204313753 710501723 726564712 762065614 563340649 821089466 53881473 997880812 572724179 836719042 883658920 883834738 953962168 988607174 441128352 917783016 976178514 991814885 55215323 241307573 928473518 949925124 474056257 865709516 164254567 853562188 619355579 670413498 841780015 975228278 253920163 813085212 653305182 949211771 984827173 993095912 118141385 505414911 203154615 313733902 716327104 811973309 687358663 792805407 238362064 244256118 759862912 848937715 51940722 970290826 883440296 953046013 748507991 947376477 890604624 946996708 573405840 625653086 203189795 275114404 997880939 999351266 671808600 988699403 923797462 997065021 394041849 885905168 993218826 993264055 818124128 958752462 825796077 928840985 929021620 987736084 520105673 750324282 803942792 960089299 792813083 944937061 689446618 692963403 924363691 971022147 892975481 894923974 790939226 793495509 387503039 697914993 764091752 816929673 355048861 955833599 163162454 171761149 708024225 761300833 650995141 914895858 251676069 995150140 620608939 959302767 974438938 988268550 47810318 134767084 376884519 840430178 260107268 302427947 333590098 544580559 335511894 577334572 114313605 674498380 285409094 966381716 401251941 840951215 38694704 303304335 891131025 894562443 104138142 294926613 97098981 901510171 213438641 328466414 565923265 669126381 966265727 983424853 804081146 864408179 703926056 893841120 422737538 964806958 468250685 729408893 699807211 938598542 14680237 494189642 328689361 717485666 949225298 952571858 966928829 974963667 607572955 757870077 996943169 998276535 32495279 735726588 88059880 977242938 432954294 571785385 984326136 989195788 537755315 762248792 943949658 979971488 902739684 994499992 776087148 983450470 650016322 861146103 505614250 946544036 611826744 767877251 22570565 340255185 501634972 857832890 156314315 353139180 363288616 844597935 82269321 359538131 706662013 879506176 797779563 831204927 707128776 729466281 139500294 894701178 209245118 611737929 755003292 942156981 656307021 923656294 700927415 935326353 176747648 459752439 22323542 319005027 314798592 324148545 593380346 804911636 914168819 954504658 112009325 385470265 120776126 633363754 543765322 664552319 404094412 877461542 295111653 424192735 47327097 666587747 479952342 481488489 712082672 832855492 204864906 606355878 59670694 654406734 880750658 972944095 458275595 592054430 559254664 627691152 475087400 536190100 818885637 864422290 626937223 748045954 94418741 920658801 206432435 298741765 972352901 996386921 666299226 976442084 651374661 964437633 834643107 998740734 840010118 958651938 446067306 862467853 611942183 683317365 17978902 829467057 370514702 668403679 93666412 721020486 725426670 890080383 758823807 953582560 503286068 732917936 574840034 856324054 942794200 988030518 684483641 744240946 119811499 236438601 14016978 929017538 256041966 634466381 381030825 502091407 36590658 380816249 145445379 549775337 608166500 894577247 949612882 999028077 19407403 561559096 172995904 945527755 528844465 769821731 2839214 632588755 228845170 942576864 239291734 455279119 792520643 830281376 87740432 551211537 26583307 819089755 281541288 577598143 540182417 701562625 141623566 380042467 145690037 784400174 960480830 968184587 345621246 834327339 967859276 976751110 11235454 354952206 705399333 842560217 792389607 818415798 532952122 907024873 53896204 796774776 688974394 987347207 988027341 990597257 358424212 894142327 487810488 958737231 180899823 530895159 197408165 720741868 989131402 989926050 144380569 344412029 398767079 555524450 460788355 904931320 171026036 942762844 398047080 974358421 763990313 872632153 281592222 817897195 899801525 990403048 261113718 448701999 103392979 351216897 879057247 908500750 114360916 275554934 627466825 827102864 134422900 309848660 600126905 764477171 477718165 683829009 873128252 933857915 731506292 928731527 185035213 659386104 332102543 439944210 114819857 653027785 862069497 877115037 508055566 599497831 642224081 672203065 615651704 635070952 846781943 876959939 422173 734461992 545640687 840107344 137261151 504733890 739393543 876584413 706369800 795128350 645853978 879802014 851745938 985834985 665457069 680345587 509873478 737116678 222739652 605317761 845388917 985508464 425244591 946117390 90213963 840171171 130607732 315330024 3474941 383837829 371243220 375342755 796151285 995099402 762297927 979514400 783935728 938466754 509918079 793448781 381496377 496221280 290934526 658367451 742522030 909558969 501582331 828814915 873143343 932195158 671612440 771077430 557693856 857952326 948751933 950278763 10005382 215465767 721319481 998508463 666955826 832013655 519004243 746574993 850962015 909795061 531984583 993446672 507547778 820795454 731116936 974303502 330997588 426565326 679441737 854725942 257267609 292338543 863081273 916954495 938524502 997492968 623090434 879382041 748651200 893053223 792802045 908301936 311395010 813023908 152964728 387590633 908543785 911154859 801365130 890512527 328144548 663750204 250422629 388430792 184481472 873663615 709921232 781466909 415038085 422903247 341255637 350350980 574744472 840646052 612738186 704001023 765420828 961885144 617847305 957082647 436925834 883841005 658566724 707413704 329822032 858005684 994747205 995963038 987697556 991581811 581680449 614416452 918092007 927114578 618614308 662507379 818925967 942958984 451326067 953706515 543275470 584502282 793128051 858443272 707747523 955276037 697228283 962522239 433277663 698040353 679641023 711918074 437911359 540216789 785030386 895282811 555758793 642673538 937812446 948411214 686066371 691913369 286615812 593757783 448705520 619451835 536326736 858172759 162300438 679044067 824644786 935360155 595836080 998051875 95799866 395045170 32352221 152789417 675119287 812871729 575855714 603154789 699024528 971802093 953222317 954903548 724414026 850814504 236699662 357759338 112739914 262205575 192916857 247760639 240026059 370661185 734384504 780744453 777420032 938099691 676908847 800823876 520852971 625327781 165317832 701830253 313491951 601294096 562216434 680934512 588165802 739703727 282267317 908067994 455603797 860315480 216346518 514703344 420833776 885173569 841145557 893233519 914227508 987088877 549780285 628554564 98960306 426726980 691700088 868598123 337410101 762621371 926022601 989177836 944718226 997246810 695051549 864360199 244886255 646168619 843482988 915135779 429908881 508940149 818193622 898917670 481731275 827155563 682388151 728391039 453542567 655930677 211322465 243296974 611450949 777922738 741805457 835624396 232747243 710110685 446547840 876929827 714418617 813084717 587917031 982347015 62644305 480098105 681408658 763943415 350509551 552616110 40543828 49369854 487044089 728403619 905557046 944333521 627004057 773830969 640165644 859896048 856820740 875737156 880325834 886479644 188371831 910867794 588330278 750450381 796212759 796416054 79412212 727323139 658491445 836752081 889325202 968072403 723466837 974300124 930551569 964436986 425883499 496661896 869074128 971422994 63200221 725086437 605439647 703312438 252569099 448988049 30649389 84025668 976865713 982811653 474294565 688981812 129007197 257895846 800083049 892239768 830815623 997934746 741165961 858535287 434949282 739093189 460022004 620737144 423366528 916099419 729723307 793401941 72733605 77748415 348605230 770384624 577270739 976702750 101957540 233281883 142806672 703933415 847419578 944410825 208410228 634674488 568448463 936847357 568188639 697538522 526997036 656694520 176080481 904661824 409580116 822178055 644220070 869158691 688937570 706723648 734495852 806989768 820524295 924615397 164563248 727765687 623180826 710732837 328909662 517643975 606365893 624321832 961361664 999187522 306205349 591100368 508245170 820916858 851369224 853809450 432541822 596565368 186191702 419487017 873639184 974715994 340571882 553485517 879367574 996024766 490403584 669985931 358054550 922531809 57611103 831998100 377729777 658383173 222487615 913841233 886159730 988957435 859064507 982044514 482135379 972329184 706315172 729833715 377396049 592867409 113302648 509748657 997652396 998529447 214341244 632377324 255290269 859422616 886049214 910695591 702644270 916466785 723293808 952211833 158682011 718667507 629072183 982301467 799457236 820451649 97700914 486183791 125025931 411552722 275843945 584070920 734739688 767785335 847755053 953912518 26278501 337711921 325963749 895911223 998312016 999308260 218985064 749741371 655735349 914089029 84795326 883095915 981031215 986325243 666707536 955676731 886920887 909721184 39127176 499798205 256724246 475873002 617061634 959654282 327083056 776618602 807186478 929396136 957964357 968010700 724378349 884520906 397595387 533459315 533307970 614061591 745683181 777217407 612588006 700196059 218177738 464752515 624760381 770351422 472179758 747486111 26863709 933744903 860854547 933524314 997505070 998965276 782425604 854431155 853155922 929425395 435353776 888546733 731539246 798388840 60579822 807170784 223070027 856984332 633840259 909510493 820888251 976488098 410736311 948549163 619887028 996145504 724783588 860114244 224080235 948937400 497710496 538431043 408470814 975778384 402197706 520137090 201642567 345295662 927478272 951327203 22628639 813883369 186264387 674904366 187805777 503219530 961827778 987649038 338404998 584935924 498269279 798055830 552666715 677167231 754275486 804113670 994975818 996736306 58597966 82532277 205198080 450094258 446467918 634689079 910546741 933117183 253516342 887682486 3177105 240585845 642083980 682864950 461432334 528861412 324642052 887947440 307633571 664556424 824072558 856979172 326268027 557265498 616783268 674594240 971369015 976815022 575898592 744055615 48758577 937402634 3979997 758479759 111638539 281562705 89028467 268337901 618244003 695848825 77378951 922162285 751482004 831500072 111546622 405765227 180269524 529442990 661167913 780496534 636822008 917375655 679501625 996706903 595167630 980336601 429842574 969976046 291673072 465919155 474588524 658757100 794827693 869904661 274504463 821976978 586789619 785613292 756380537 821258150 182408873 829780008 718321337 961594856 521349034 640016835 586701994 782943088 322618890 745644998 734920262 778086369 318247195 913481468 181641121 775516193 929445833 952715879 738646389 815772994 991798988 995079373 287200741 922937401 281077199 584626671 573520427 595805066 829978550 873936829 771073763 845278442 567700723 719241448 809169721 810195046 599846177 761542104 466507840 835750163 844231419 969940128 926556497 942479136 104073125 579445924 449049674 940405977 913293088 998663843 304535932 936184700 161060993 652788806 748976548 813736776 71493594 591739372 420699333 891956706 296389699 917203935 823395841 963432546 189566070 200174054 54156578 797110773 448237921 746797845 891921241 992040399 149317325 578557628 199286416 222122495 960912182 985798196 15639851 122310477 962415408 971398254 22643255 817302934 300479078 591237840 466336842 964115724 232716314 879818960 82568311 708809616 529505321 839624820 455784609 980079499 307662185 815827275 527818206 726920987 759857643 902711356 124249967 792335338 240662799 880653224 368751443 945230089 908386753 912756758 187791942 959059918 700708749 890844084 142866409 176613769 355482367 385470226 145661920 879406975 878767950 944664654 232568936 674711728 892351247 906040417 344015991 824499348 352821567 463643792 257819090 719258790 271887217 883659523 446809046 974174656 140366477 211298435 248671667 949231296 902755683 910053429 443674055 642837434 344924850 439778471 706537365 896159069 307450272 570271663 212550114 825214049 876574967 947073194 526421142 938853722 380458171 724355189 136555399 193064694 621185448 878954655 54225003 72513940 799502758 848907762 296805320 318593017 883710052 890294328 894580435 919838441 996703726 997137201 981643733 991536808 731217734 891056351 16930147 125659293 467642526 958615303 526674383 798618358 78935734 200538287 120259791 524446382 39301026 702830798 759098586 874957304 228492807 389656761 586456259 944157068 871376904 936366685 540621525 587791975 291218949 908931719 930096741 938344123 580577059 610750004 16415844 312941757 767287023 958596532 431206725 809794044 913263711 955209927 194450363 337793716 359486804 648703444 687089176 744645634 676037333 732468511 974048260 983392569 625280164 795619182 630715441 631128661 922183495 978275236 163403419 911594877 683566487 702276526 612735612 942577067 490466716 663300599 682704117 982860006 617645152 671033569 35231559 830038956 616134947 660915677 509403237 958019281 800438693 822036796 40122873 80943210 656048692 860895219 223753120 472982893 536804677 635597930 26423512 594332878 505448937 743260579 504303359 937914269 266020570 430882428 183181165 235584103 351822109 901511537 44946375 979415311 18085014 600231246 918061018 921132262 217974148 530582823 420621401 480644650 499262827 846879921 389024330 839494792 598400139 608107250 166463384 995442547 706767369 935767081 385133811 560288717 401733558 637166696 175762227 984100361 953331948 967513273 398337229 570131404 545407772 877437614 106341064 831305702 607900051 784919490 161913431 461617180 388886065 706974974 250388981 695605813 567828479 727857471 408086161 626302370 645573107 921951708 723281406 937077550 126808479 174889397 919530780 981853986 565495880 751890069 306788993 495681531 344172761 985648644 463249066 939736030 449698587 591822101 157381276 731913411 293001228 505416400 166017442 609215938 316090125 414643229 538002095 539244523 22203370 207811388 998912019 998916349 65524167 716496712 903953205 985934424 687995652 784822457 450211140 885432271 998915986 999340266 444476766 589964764 530320597 579023379 739545276 865763752 796036851 951487910 64839339 427803189 178801551 553259620 407236285 857028842 27978337 524114090 105300518 679481756 233239732 703988778 869711964 869994986 568764478 741122607 127343313 945087039 39111200 359231688 616469852 988394699 41928721 154689780 796062765 843115383 737856717 938741319 432180967 930558195 88404730 488978703 799816080 804330705 775843414 922213467 503451090 549258085 403328471 466890920 817265774 943420900 496596046 880053812 520071395 574065110 555100992 881501411 904950548 952128866 944199668 980054240 962998355 998953876 403375123 912319692 61230867 586899850 371172281 648050403 976196630 985009651 975498404 984191150 114180506 955594830 81475254 419721661 556178609 599711945 747694679 907524711 399391560 450460663 752245783 902854853 865522669 906119187 180335312 741337323 899364992 939614031 197293494 381799973 712041595 930582063 931366557 954458350 948415788 971943243 172669211 695828952 847174595 854858836 705650262 761373631 402919958 580492837 879529761 912670661 812605763 980658886 492267524 739466597 229799571 288873144 752314308 900659142 585882527 871322343 843945591 979725450 788564881 862431288 562625333 937697307 255353138 827418381 796821966 894807831 928104509 945800493 849946957 859949859 214693553 812204587 85237675 806005776 468410974 476508509 348227013 424169938 921597742 965038186 842771963 894804879 582758875 988645903 329863861 809388976 466594905 625272576 35688450 830648870 738016843 803873370 986320074 995071137 931121979 973854748 71145077 877579952 14364342 320419788 741319084 959364626 705514033 739185318 733270586 809424976 10235689 114396127 697256457 702402444 459844166 903626865 779372190 797140932 934978980 979282917 689390119 899182602 206007842 928545469 149129232 582412161 302315453 679661506 540051961 560103590 910369968 992734558 434519815 766946722 397792210 901515313 942840626 946162105 278656441 777781902 645496066 965431444 360793886 668101063 350577735 681456885 984651809 994218816 34841281 959922753 21245029 779509181 222289466 980173524 781679511 953868378 1640839 819954117 579254100 674883443 582595218 725736735 162748182 282108784 503974272 948988159 440401759 494609070 181136332 508970990 548726637 877891065 162964167 567246444 301421234 625445685 340815923 730709850 269267337 444588020 16070778 71517175 23645474 661096700 80965943 410406909 840006394 984734730 444415210 692726728 200332287 831021030 768198433 950302395 415811811 685815572 500377439 986023881 160521855 543357082 668427220 684036166 30339467 782538690 883158296 991370690 725672704 912621164 219949206 548617037 165649787 649028805 182074098 216626774 430147083 577269590 845190975 866334518 436154155 490668638 297431277 800775386 104235465 197997511 29903794 868458590 273695464 720110736 584237388 854707177 271291821 867370961 893152647 912508012 343895755 827102201 355909074 583731071 109627387 930235312 204760988 284433368 287659611 312152652 559092153 912424747 258652887 428785636 500854386 969046141 630522671 761618708 677765023 958906512 760495220 994131164 316820542 467282224 272377547 317928704 694281572 987878701 489036507 489760646 907069260 959711194 820522456 979286694 530824932 645739176 169110750 191885193 877723993 898477610 225057739 676939945 83031427 846186322 731658530 946107587 753314110 886368061 418100536 724650720 568777759 954035484 897228631 918187832 845030299 857861289 469656312 623877262 611071272 801021130 497450835 880801601 761878238 979385438 538599189 842931343 463174771 915352927 714377882 761286810 602200383 845206187 719581107 757197303 710581640 866174345 779288248 838074387 134956524 495748775 847273608 984880183 31522721 276560731 68465605 378089758 466013808 562786022 217663213 917678597 347131160 487797621 634995379 860137710 862652944 886247570 747484620 992505184 515221280 919142127 257705939 438277389 132701666 225249755 746467981 776092549 894767272 919491945 28146246 678686508 809394544 966315088 850417635 882222695 262709461 302075733 518010474 869537761 692148054 815131325 342908376 896903583 707334129 743432147 598607056 768209648 982102275 985621341 529504810 531328577 545617131 853829107 874973329 955738037 871313244 954322686 551563259 641683951 322967109 454489147 811288623 990960483 520028415 901967265 104312249 731179329 947635719 982328901 659085651 679080428 626848042 633869208 535592770 571203449 72402434 932896460 815770601 941452971 414677808 700104816 64334734 751054159 312488538 414937078 526111769 547594091 748287280 779467981 780519815 799020795 703069451 785190132 694093478 872794868 550946389 587351431 473025308 529556924 877613088 895131882 570221193 808198229 333114179 672974761 177133798 824145811 134961312 688693606 228416017 313294801 352080335 812797049 510612375 889063779 255885134 308722639 344432229 376754661 173744481 335996358 357125766 958415570 186351213 775055369 783215726 917431731 528261527 649732716 846630709 933591980 629261985 950162062 240695500 713794871 633914296 782470954 604319879 830054625 323376183 819989732 525001908 808312250 462452964 535607215 15502962 268069603 299408469 666467426 935593358 959583775 69973713 746130843 35539537 549596009 22973059 216658111 30895129 899714689 452195759 823914309 320712343 457630053 716249832 869693692 862904718 893891074 190025749 483882994 462072588 985666865 247329694 509762515 99477101 484891965 812756098 818253030 744182172 978515884 20035692 862167109 819163769 836268302 280894615 560257016 243622362 978060017 758454914 771773903 960097524 986294568 759537061 811257982 376916964 380011026 823030576 994703346 452973095 842385651 297962813 823679834 510539256 999223957 356881487 445130182 243180308 565410112 363360826 555480881 231094488 888151703 243006819 518328215 301437122 511253555 340141589 937364921 400808599 487247387 530621928 847671234 419549567 963605853 886204802 914237835 2298475 190182772 477875409 864798716 806027742 929603612 228425214 631242734 220524378 819731907 983981523 984710128 31458429 115458489 202355908 577099559 618398326 698637674 360301639 619446491 131568707 752425291 415572080 471057471 549235056 835534104 718242323 784951471 298262538 855069132 782323110 926384337 218494485 602979124 507620231 948523032 101383464 808899613 672097093 698104030 843463947 847695875 134542829 382088176 972060487 979045827 784613634 961046557 134624417 913425401 958201900 970628399 660170558 805569638 929571485 962588358 717286299 828091255 676186639 783076118 876140998 947280652 395351669 561417295 968741384 988309363 641831250 932534626 637595546 673132630 471749273 624043915 988029121 989338749 63717029 756631136 745398398 959716924 459677618 870750595 634867027 986108968 145345749 341826398 876471094 991996918 339337431 962395665 44401575 847709721 528471497 575708231 116211951 366205370 992269562 995568233 540125473 668199216 882683475 924505535 703683617 956915505 989373368 991323114 24052718 326589024 637134054 939065195 346361947 607898425 957146404 958299479 546311198 582012911 895751871 907912180 827674262 888213134 825792005 907680824 357279417 996737502 77783371 167967985 331235368 767271300 535147539 936352715 529859309 766982148 516382199 803583988 793286657 879683641 585542042 966196401 444586859 825947735 841404242 854002083 671238357 755215538 413890030 629505617 639948214 990665743 526768954 638642859 602855606 769971586 833369679 880960565 186571494 618598411 124475275 930106230 115838571 492323099 85532224 612897686 322523653 673973690 545615261 695169096 959573531 970340767 25961924 276516215 899192435 919830648 469753430 884503073 539659934 612693135 309543145 415050986 369395734 781012800 900148464 926691944 93746164 156385256 96181169 148720831 119077977 528260781 490170862 609281495 48325482 905795889 864612943 958369729 862310200 953111164 194294635 543456583 258790428 987419975 57239682 435669731 364377450 788643048 952128052 960366121 732741570 921932293 663962571 724099557 310828011 729876627 887653999 988079330 864580562 956028297 438475299 970992161 535690458 858365186 968095789 991586429 734292097 960621830 72226111 417922982 933091187 955917761 106630706 899079543 848592713 923079790 425106127 899162849 484412293 617656405 871182412 914780269 879930744 976944278 888154335 984860214 742809698 816019686 958578084 969883927 295642803 424898594 588123422 687900462 961852793 998236603 748941357 878539053 12447601 963592358 590109589 647706613 68147637 635810699 835807596 979804277 936297914 981369208 540447699 540567206 550745996 649997335 142387956 262184957 331167604 683615108 103854349 734278816 614770067 965986007 458578028 917602453 229729193 986558799 113369420 802144353 432102888 810755448 82801321 715342777 258326564 957556635 292366553 342896509 561829041 975611507 950666253 976878323 360599276 375399642 595575302 969779787 808595944 817652509 247819081 782906192 479202127 747034371 838265117 934105770 494268703 614956806 676656373 887930068 772932829 808950756 482035430 827723342 888567796 918704951 583178146 602511973 563034269 602738994 637478624 886115105 364621402 978288579 318175334 666733754 681464015 770606421 100147125 863158195 88914119 687564361 868110627 974102291 325325350 804178646 707028267 817789877 160685755 792036237 596177690 739660181 224866663 400281594 938449646 943510447 27710258 871912035 55791578 856258003 185189842 776205267 921933952 959612215 751540415 928592262 84212279 926029523 92811792 560281213 598717131 932649932 516022998 945198709 49088581 535496991 694772663 749225187 180520010 696725989 618530721 753303987 819780490 974138560 177462205 234438584 973064474 973161902 837135135 974984519 752148433 936171316 56684542 156938856 775917246 821547444 855862620 896796607 795515376 973043584 970265618 993043984 847435776 952867999 591898468 988184326 384366120 644405054 392155973 875978054 924947257 989520331 204878757 314824167 580984096 627530766 339667241 775980665 443292710 689837529 284003363 497441307 486877198 827237457 869489230 958453112 995251435 995821562 610093750 980240864 468829139 887949415 554147407 735834324 614745514 845888148 291912049 733357924 670560602 836778422 255975990 513537586 288968203 365905069 982252276 985231506 378381197 747374290 127544661 240583674 402489499 709140870 944950728 968651027 201353471 420045293 994133876 996603471 44210518 873987845 220252522 918960640 595026603 674139317 712475740 845330520 558810454 777684900 384993966 978473913 750222783 852437369 888202581 947317614 639610896 815922634 796802896 982973262 135896045 601573190 563367611 971709355 309906021 782878023 805609171 861553575 61111248 411837547 932369001 960945170 609451474 892501976 500973646 612243642 689805080 969497466 399280980 854764570 408986721 990184904 563211742 809052219 915842212 978969616 56351364 432054898 464750115 765698521 826475851 958937156 906016000 970229822 833971821 995330904 531660687 833024005 391901806 820676046 472590446 513953739 951684567 969148855 535630521 592048074 65285285 433661029 347963852 627794323 720496894 961834380 378189871 817146325 465043173 491933205 175045020 320558946 432449947 728029423 948755115 972191078 497224454 929989579 177337395 312963150 658472904 799616636 715323826 749548578 808628168 954822681 687810312 705417241 754958006 878181732 635391493 650932871 952180967 957373562 810302049 860373859 492885177 777157397 630680032 998840729 989792182 999160125 199591184 795228110 641018632 761494345 582476972 815212596 880588886 933604506 836566041 853128934 298545728 322846937 292916786 732610191 609345069 907291819 857084196 950048032 260521864 792973482 19235294 383961208 277865367 292283783 136695926 959065521 770417829 843203851 997878401 998273412 95730047 244129653 821683201 870719789 732354504 940727157 888052138 966358482 592474170 785435166 31551106 939058743 221135080 587806238 720475888 812499025 937745848 970047008 512353742 830459411 69097934 786619357 332506836 670296132 336875512 387097337 456864300 767160050 969687332 990554264 438362309 871864006 139974064 714733684 459285627 658226993 838956684 951279108 913868344 958142863 396559482 878347097 207246598 984262486 243560646 745829733 820556597 964441809 567470358 873700972 178206604 914274083 167060799 880617766 210972374 417294014 102498186 223999764 152437380 823492076 629478169 988934737 559495431 689199520 794500293 829503591 192706241 968349969 186929354 583011236 766111529 779874697 475561279 537419698 827795247 961244186 9155059 797152564 612489851 973022787 694978196 963809410 901404949 903416719 994988297 995885653 480068539 751650943 540335977 979817765 506444041 849757861 165678221 671086149 968200598 986265940 629998243 715719009 447089869 938628773 901841176 943998295 756653412 959253483 619761428 843849690 642738314 689918854 426443553 439647349 769530494 824678126 859877431 998268715 824389357 853503021 722409505 800409552 733686615 937533025 64979221 248917842 734223989 864414687 142798885 832131042 562027970 864247449 928001969 989807109 778828322 907157886 562354893 595654384 43500222 523968970 953663424 981994482 817209518 957030333 216676197 260708945 580441660 972675035 521250366 689784482 31443599 618764776 789230930 982115002 425264686 681603700 518305381 940388394 722253605 780666559 607901941 895094130 673712801 963248179 588398912 598051781 45398420 172804317 755544771 906069706 846226551 957962866 867307385 961840597 375003049 860696648 555254932 706744613 624646104 924175201 698683030 737801600 396843355 645032590 703895756 811533357 648020602 686950318 753546857 993881995 881697755 908340464 776606139 809911470 939798186 987791778 282945235 427774267 57947808 882408494 593922407 604263207 142440357 222388997 512939151 556290722 332893113 452165474 254501131 306861849 832681580 940446935 899898709 922766379 10411359 919296962 978689495 987434320 372103714 845892957 604669184 951203762 940948919 941034876 440674724 583378231 616518233 875612992 137899512 359611658 628550121 825417398 566502958 625858369 253229533 889973955 590942830 739270075 110802727 529179984 687517173 762285022 42599264 995149436 445987929 796702614 549502305 679223126 413691898 985898843 908270679 915875536 930268249 982235951 439076763 800227996 346846871 736839891 291469657 691808682 111096998 881193294 323204935 377713515 415482410 521069680 49394920 334377069 884395985 971420670 477476185 838483744 958657087 961693620 168711017 679811793 585935582 633423654 237434913 534992395 764494672 901148368 38029340 817888683 453543355 658043988 929403263 997131214 278380909 954069861 320847439 600896008 625703735 763333553 674494725 964847562 113705637 423509012 915138913 989022294 94532329 318237297 82369834 166364107 602816713 901699985 187342605 625664919 330073815 772193598 199161433 975948028 74921176 647117889 533762763 880350304 36882529 798303486 499204010 836912155 243011301 688343558 986557083 996952720 809656468 848579811 854192467 928351053 570477989 609831169 524862637 866618708 554061135 914697977 857990567 865735227 745005145 972283540 511852936 863477987 278137653 960924893 442449066 734088967 72031398 795474663 335032174 793912570 5359328 881898724 292268132 756791193 694512718 776164646 731118963 959998270 560826744 770270662 862521919 925225406 668520107 705029463 680027395 754142234 410364490 802880413 541244238 682527104 38182364 523255347 6790147 869655614 846569755 909819562 141154838 320002130 722555537 952523651 326352805 374635744 835149670 837617416 432643127 636077189 873279438 953093927 935040456 979203992 184936156 229902914 509202147 779232930 406230438 636312263 577089633 598666600 792397132 830016199 415212349 869475435 586389483 684545712 962073704 964555660 948007443 973854040 194858577 905967313 995240038 997264754 258288847 511856138 734752099 983860011 997560651 999374300 876515414 926128195 780071546 972995817 709588221 951416717 508140979 578104489 484886591 931841403 894886018 993890621 406209282 736692141 817487507 987935134 326389090 362883489 763877092 961611026 701709547 950066352 195745668 635650505 602062748 897202602 880998795 989400327 695150006 934492105 484730384 930698559 772772052 953098018 967649432 972490712 206530686 700579884 883425053 937173940 626312118 700018507 950275284 971490654 664182286 962083367 3910489 348102657 766289511 833631743 192716238 221509323 858862088 864017544 894236434 952069174 15864831 106020292 923416419 987569155 794031842 931231606 540918522 662701954 531594777 723082655 116543646 393427583 136010939 659159699 114732674 937451767 526379996 568579993 160243593 688535970 451874940 703237685 627320033 931272744 873331461 879626425 934026230 965082988 425765638 804244290 280835264 430158040 801406714 958068221 144217590 328650388 979363635 996292028 634434190 723125465 192235183 630970502 420777507 914337292 354757692 687692512 756757160 959856894 777846094 873936097 714249039 927338191 38728144 726230380 720760962 789932678 287718664 987095800 399832601 805825260 821091769 954989224 916810450 985889861 633399529 703798986 462971636 739195927 482749893 677130686 263038287 340895042 403227602 938622175 461761830 485761916 973006779 994292013 684774884 983479242 98646913 791700495 779472617 822102923 957601600 964975388 153369074 886218912 65905874 179081452 59622995 895457173 608113860 713771671 83962302 216021339 261897201 464100952 761562547 866362185 252713232 433074371 846474164 935569034 436264158 776759911 800550950 838710165 510644987 975650266 766400615 921050077 957315821 985245461 849550961 926358704 214732926 604544690 528273668 598328517 105513926 845723631 300969035 488667823 883682559 997182280 536621531 713351157 604352604 944950258 688635557 872175930 616316601 833888443 609170257 863712894 438810130 621176054 92115006 239184629 355022276 546430006 347328724 965334844 782579580 992745347 306405002 908442285 756136262 893876948 653006980 884058263 194119447 347219331 887252144 962814718 791972693 925610017 527489790 846969390 731824319 825684714 810971318 832553264 256430611 281171600 727178985 812303960 281270834 751367860 62340094 233744980 151531345 415025149 289109382 873487942 655816957 748178239 675983349 949776258 311852549 314128025 230495861 963535794 995570769 996278257 518124726 836231198 643841961 810633162 698887724 926348261 166979493 903655576 434622994 533455244 78443389 998859732 392034824 431280263 954347661 959635959 580749934 975858239 518649485 886971839 621026897 958244594 318371754 644700068 574777970 969341423 212865058 972480292 473596656 655870012 840543637 967562498 289406669 945091421 615200580 796790318 340107214 761610411 547195369 700556178 272031272 557621456 202904379 893783454 697385293 729910210 823368151 932298338 696838040 786987558 87560922 564175015 135986865 515970408 45972180 761570861 898318715 917068766 827900112 994112506 569001118 592662907 128576379 431305556 917423371 969067431 211022458 215452158 877417069 984838060 84244275 798302015 569064623 886673602 947447855 983040034 305399212 709437088 280846750 822840671 862484911 873043783 970913598 979255518 625946617 847266103 711730193 860551520 374406593 414128993 854371344 938700899 764892183 816276434 945141657 954489641 153450346 440371965 428023905 599403836 346662267 558305382 577723130 877605633 208541341 960069355 170060531 604584720 577436362 956379628 112940587 898743112 220500863 897622225 639727143 899815493 913947956 968363114 253740832 465914028 403337717 535171895 377279948 681371638 281387991 363141600 988229020 988813000 966133479 969692090 955889646 984568031 356140724 977868879 70036983 331397444 236697952 249614648 323430362 789605044 358902924 817145134 57145528 452215125 867402247 949868684 205610104 344014202 324490872 359625654 422396606 741718181 317774628 709962514 821279728 896948453 681023548 895580378 980623320 996945720 425733118 437803738 127139416 771247115 801019155 862878438 539303407 987264883 448965413 701636951 942494922 977727061 658795316 799633223 459671728 502499312 313530765 959219338 15046800 939652427 156575338 948323343 650460124 875248482 593075189 906973947 897669394 920823430 396178227 655612505 715312139 847934139 737606979 926014483 536841118 725650532 624358356 758249757 274587778 410825521 478927201 794619021 510832029 735242078 107971461 335512306 510626741 729753234 691987674 751491484 91863931 376465870 794625907 946690571 227839465 497471309 140564329 388835289 650368563 681952207 560550967 901526855 988004592 991167262 295329921 862906902 101994764 357517458 913987111 929344206 329929543 958013009 772101033 943978570 581758399 828774075 558156823 628985619 321474715 571090540 583239211 697351544 911625800 961230313 127429609 582997603 458779383 471191481 162064144 832322115 413948642 663675343 265110899 551021785 538121278 916846548 387667846 635178653 465417996 639486002 238048034 813034992 487594401 910708080 402390012 620152793 10130403 471575261 178551205 785284068 584084602 725128183 269803243 691252185 161489735 913381954 61234699 360713411 849514119 912613094 8189362 332897344 787096343 913615418 829768278 983254030 433537939 875175818 112346540 340604317 477295000 832254894 302003687 345546280 296319257 993661310 995116813 998757749 28046757 433258598 314184751 400636973 110950818 672775577 273991472 629845487 364713287 728424156 291614985 917028929 319114808 717065596 342944573 955644264 241445963 886152645 862291918 970382348 921738940 940999908 285399521 879670966 914696191 959868604 173069122 374404447 446331024 476315845 532982424 827719272 620615928 679109426 259748143 441936308 52937574 912692519 197993387 390117458 359411333 621133395 704285353 730166003 489563291 680248385 310541834 791727807 564870143 863525256 476539641 536277940 94289583 441057829 839544707 924458307 498528338 656716433 897214738 977316817 556757477 772485410 447254990 741929751 196200275 508643996 627536936 696190494 112780296 787011012 374353521 987885302 96480781 574460243 653520123 704407158 416271532 560998660 231184865 958855786 352837452 888471207 792365713 799687770 815300135 908578127 976716773 990348476 134652656 413017906 903736830 973056361 607932141 790569471 214513973 592636861 111697318 508760962 258817004 840204204 301527019 938027117 480098734 790767219 114462394 505661095 374027324 598145683 389004504 521180833 436281174 858228065 59796877 268339346 298578912 474556867 833381107 996871768 851059110 968199438 774678182 977498655 468630385 482812284 331173802 754968624 470779306 484078608 297657329 444690972 279214794 461125306 164751142 949714383 391511686 452080263 226422101 888277385 881565204 947180150 166834930 685381720 835120001 947295617 201247859 212421104 861260236 893197980 452475999 512795860 328455743 563603437 853256220 984867359 412303706 582766727 372071059 791368440 500024144 584492810 132820885 171101289 504205832 704342253 990573796 997816686 428892427 747591540 437399165 571058541 366441879 614533615 500607282 973370030 111755568 309006261 940331877 960041944 729801334 935876193 304165931 861100192 196785414 593874579 929569129 964126757 973559218 986752411 121176743 471546866 415055212 689321669 641791510 646952205 488274085 503627955 787229191 865041039 420311430 570113492 295424317 491371205 846475762 940303399 362399063 480361351 814643344 877914393 391482817 730512232 9079588 278182481 814357398 836875286 722955868 730102497 608243517 735105140 898765526 927485423 588812410 813132908 213439816 806015686 586778814 646881658 300884105 701174968 11014666 881499370 322633252 679712908 424678522 829301501 587712225 966064774 842496786 965965909 542852695 685494824 692972596 821151693 951736503 976384201 298154264 619059204 423459990 899256002 589834256 899206400 868803895 922737904 743734523 953039620 919780902 977873021 384843178 601421994 739738328 923201277 25319637 496861816 958588447 991465894 639660596 835773117 949142749 958859458 792939481 923143856 955675609 973070477 273011619 679797351 563537054 960349580 684368493 839873912 165353311 548002601 539566453 777878915 772366101 843176418 324418527 948643233 8610674 198627651 648481775 809845535 347934609 684795751 331472412 544288839 88574372 529447800 107527355 388084165 292199361 697975969 39629719 195777287 437462103 603895856 448292886 497513700 953952444 971309685 589460701 786922380 113864117 848383213 409832274 729903328 112577506 361118215 770863087 961826508 787645647 911260848 48142925 81865190 492355618 759280131 824497334 925530206 629458457 830597691 150831271 745422714 321829897 960740705 211890288 455894123 974854538 987028342 57762339 929947119 998784220 999031546 578452607 768226067 806156735 856108940 926139423 983526111 788506709 903516294 643987458 872021561 142338090 766824077 721109541 727211476 916292281 946022633 285155372 559552237 721830497 946203982 253343242 303306568 293995228 674058407 991024096 999354945 855081496 942635253 269357311 719534089 766207711 794846496 549304225 735427835 123843461 468762479 614064254 822820582 776722063 911634114 192780020 361781966 199446046 487696376 474107921 818163244 845894847 892954014 820220010 844359048 486701119 953877514 515746614 976640815 55506173 152739419 95482484 213694014 837306802 882106254 535882724 601011049 547609834 694192337 952050213 976217718 475873073 942887019 84513411 569430964 720392269 756733897 92682046 257144002 293391356 567265821 154030087 243022166 332430702 383026889 543637560 791451417 406400957 716514191 766162764 800234558 336149173 354186125 244071078 845171383 467936130 993275725 307613555 640397301 660475656 856012236 256035115 729780897 52536310 384929136 63996867 104889683 561807453 867522364 243481478 655363894 443430738 964928510 527867749 831522841 251210561 597695501 806613440 813958810 383693427 527464929 52811912 330653475 443943809 858228827 242004652 722219674 542667845 873746056 802404937 823702374 481662859 998292323 639360692 959365225 362140738 925346351 964747084 972327195 14106612 194416496 828452260 929277423 338955548 956502342 635112672 758146610 620843663 865974795 419090029 614926396 9920476 467326435 668343668 722002073 100186076 175694169 278192686 554634736 276750766 813730759 60868851 735708125 267736296 771987426 803310579 887453743 908059465 993721141 304919445 881017035 956457564 991171091 156900433 927915415 726056128 815896629 54460665 895247313 858859610 944096969 780539276 948251229 920578557 973340075 212979531 877350274 62189421 112282149 745214573 965891695 493809574 699060316 118833470 423871854 267124054 661751465 110104304 115813284 22161858 581120211 957624920 994210665 460719225 599905074 668259373 738377589 793891238 838915615 743551112 798653937 425400298 885133600 708490842 898996360 199222266 326177068 112719217 326929076 512367353 917273782 193761514 317586253 594098340 848263015 374110107 799179241 646389189 910735224 2163895 343553473 577020383 685544049 370477714 759307896 287473893 953814795 143917305 652350302 138145999 359365850 441303906 818372169 484121890 738148594 801163865 835591833 331643793 957561559 454725521 935224702 52605905 886189543 617308157 933786094 215873916 283164058 424641406 991583381 678168233 821281714 342851873 477571767 621202918 723511170 183497209 872462727 791908031 965763751 848900158 897030411 24409410 230262615 800321582 986699862 961373715 979985910 407352990 939137559 44671924 742337361 389087888 736737647 336396478 386315781 674640657 836527244 493133215 923327673 104843866 676459948 703768154 884839253 194052664 883358601 311984595 627751411 775742899 781003901 925248729 957246296 500778049 674809778 708066906 964356637 859872099 895856700 508497352 763800809 885491868 919050195 437918258 884193312 83663667 236040326 752054402 822234530 684412611 704269993 406381589 926381220 555246436 858990890 760418688 846457342 39375676 118611997 443736574 985503616 495124794 534882947 207554298 311836320 929378803 930641578 16055609 748697668 190818522 292780008 723858045 919952133 537885391 681254259 379120720 953889327 939012810 996607090 13728121 303391326 663103802 728611941 910607396 991401342 767528549 898608353 909360214 943691591 510121988 777921185 160696912 308430504 554010743 915096256 369588218 788567262 788945332 820554435 638938155 886123657 435115142 504548031 606531789 954211578 692069647 850402231 610757159 676916093 241036541 592779372 47098006 612524715 585838347 814948329 588146930 686168110 740575488 745580538 153461031 705175887 750094942 761349860 250293755 779289610 516026969 797447032 356396725 614011945 931216362 939745867 271791941 932079234 624085260 977426330 336023770 463519896 67009632 700221234 999185698 999308705 115020686 898374879 433042665 809093484 658203640 914624617 322080686 979666481 981213087 988051491 963635286 998093079 443511163 460346919 463388420 911625932 285330587 833099046 190094976 644088682 899868702 949918140 670467845 798472275 877944855 917606048 588762489 889614422 881095472 941391522 668244193 746920025 725541604 795572169 545195959 638804623 395922937 965373784 333101726 646796666 136343691 338495657 956648955 988391305 385407390 536487759 898059621 912543423 488811990 492817597 954512897 969640116 83938843 919855247 62065852 758706838 179650640 578803487 291677879 398558726 833137207 877450980 238929789 967800094 321709067 989683506 838304812 930728139 677101472 780303678 867578125 925874015 12755348 234718787 982769844 982873760 158008639 197145116 663392553 812726075 765573328 962445225 877379526 973445592 843076435 870893588 723542718 879223864 254007465 255965759 913998676 942129782 116880907 676373407 110467438 903190984 440800574 520669268 323042137 553200071 102120944 683721245 951730103 966788796 457127679 534815677 391083828 532174150 461508155 485734840 623816146 680815888 497439304 579907277 466875685 773239577 245080787 684651448 64455661 359040161 51381612 135525747 194460451 202669559 474916114 701587813 590747347 671085271 126547754 689840652 917274548 965021963 387971878 863302579 968002083 983549895 993072341 993444532 908846203 940483681 2390959 372485327 558990259 846803533 107063819 323562201 626849396 766630065 722286746 812138202 274928418 385327977 194010922 364351344 308149962 872978357 705611336 743418945 119297320 411470206 662914146 706748218 362330653 456602032 601986937 605082210 789200970 885365608 265680726 897023991 896263837 965028217 518394952 622429293 776784791 973901655 718229242 826495353 220317878 226831494 34314321 782664099 221337092 706517225 979192911 991157848 363727656 521908192 991724265 993390201 204202958 363727547 413976806 743562725 389405945 829183924 600811016 966401589 18760712 513542340 611408254 878093910 593610532 792757001 163329993 911983461 906374255 937379670 95897303 213704196 339222995 465879176 633260074 902997772 485017291 946509696 712246396 913322359 634202764 995187146 586626093 995819607 336880798 343137957 276607405 366924965 271779810 297362296 807702802 919016818 796536859 968945263 29921250 352211673 721822364 849576700 928968443 958268045 582290539 971263675 224257441 696361223 649075053 851656494 716897055 902875461 207741077 714479958 442532087 585665993 74933404 495865231 970264210 983683435 818980162 847674738 612456549 620061793 684252474 727053032 507774532 627387585 152848956 424639246 952326033 984995614 779258226 945311644 790307268 792616834 577690067 583992757 85537750 900240209 47333688 761927325 8818059 496103647 120526100 836771585 560902095 898152935 22425838 241932915 664137766 780144457 854490334 947686326 229285524 500769894 655797737 780423112 326931472 410602168 625949450 964812654 205044039 890959348 315840764 668467395 631250462 830833345 758355119 806137876 200758086 938003215 445776803 897967848 227993674 331010560 299394684 852214381 92416854 259046885 656603516 740728910 375075150 515170710 46811048 264879559 287035192 846368945 750755979 780409585 355339852 968524026 839664301 937436707 876459286 962913744 356893115 888762476 275115567 807485193 753898755 878480085 855813892 985612479 98660639 194015298 212988165 997114205 352900679 582435143 94281248 143102336 729532621 802507293 460659336 884274592 771554155 837525655 818476262 909113062 625209286 693205200 221981250 563341584 352580762 602618760 297702497 753782142 427658724 925846610 479820820 938216296 696262092 940519434 759453438 813947132 733371317 800519154 702588314 861867115 94719850 732598306 369457981 887824922 680388308 949038237 900098949 929634720 251810626 587889230 75745369 241115638 423524816 910534695 203805745 442203519 714357464 782274548 261526300 622214806 928372965 983315947 583847548 975640978 915115822 965442842 498972657 742200612 612289700 741496721 798339081 809996811 541197097 730864265 794174841 969472946 621956685 658205917 294372951 893329085 130003023 243629803 218368826 880861025 647821047 992098233 506518464 539825044 770818825 934285432 675807360 940869185 554808763 901334567 620694767 683063950 781188427 970117342 724370739 876322538 97443021 819246572 949950326 982485634 16814374 633890526 419891507 614121127 49919633 130675499 900630588 962861953 68709439 117699039 122950340 669996160 761220234 789436037 456731406 900691102 193513331 462201816 475830879 476223915 542007896 997728030 988846188 997934285 922326535 986900719 408840341 409636731 503354940 915415690 884783262 980521001 139613227 561655720 629014920 710786483 954099351 979245248 379296291 791148804 984909783 987531124 202430850 958092511 259104724 857556882 352347872 938135265 20586911 140570511 107054532 193849527 794014537 809040936 905471949 992577245 172952734 980555809 241356949 306314102 40029686 299876422 279597436 940144995 352610341 906655898 962512135 975791814 834942801 903264875 731660379 876479901 153210096 835035601 992028413 992471415 597541006 642123498 137649015 367418825 251240076 705581074 317667237 416901765 736016059 968441674 879061111 908737049 401467362 665452467 149751591 238341536 760608638 965283131 20775352 67264871 411908235 884414344 103595263 330633361 485674829 979632928 620390420 890795613 909710150 921123325 24021811 444228188 540848433 734949703 287135162 687438921 237945871 845816547 582305293 607446349 238639680 419541922 828801644 995544507 108672838 824859046 933048675 940579559 115719898 217472272 53539638 713787974 171097235 574231289 744104024 752213030 290528645 836140367 338403562 613787678 20980748 570510586 101186488 282857485 190315102 334401749 740599422 943889698 407322657 862909558 857687064 973711937 939010232 956367826 95621397 735407209 346919400 861925505 357107963 374525435 631377429 903538583 814237370 946210004 485779789 618908062 229876399 513418359 302765392 675915132 965225111 972909070 34651119 964790618 526829115 719933444 484918435 724425881 914287886 923623055 80961472 983959715 909891967 974046872 204126709 825148672 682795564 902142906 592955790 826148579 138189729 664573931 220941672 643960604 525223416 788592565 689830662 893849067 673595406 706152483 173102528 411217189 442026282 477067594 925322232 959438374 844534975 903832696 775032319 818286962 204209809 732466891 155784546 872328104 351546326 911793475 348834508 578960613 696074935 854552860 323165348 536444844 960393553 971247069 276223649 482045579 223989818 907524878 998040384 998404953 455369047 696675922 448543353 519904051 105927252 984419493 905385071 974793975 669564031 692335396 992428666 993627669 529188981 854002760 276795687 999282138 572021697 908242582 462113969 614489972 15367594 326676997 781788072 903411728 53031213 951276719 459786839 697191772 795168682 834443729 831971470 974815000 515281946 876672624 689562414 726958303 394335254 701792301 981485618 984402252 552030814 784190204 58187434 550744174 577312560 916309614 863560129 997977940 604840433 731223261 617033223 937964689 767017959 800361366 891488648 909669185 997240443 997459222 897909924 939071285 331404639 477954250 630597028 866357075 573404054 832474439 322212091 346241269 195806874 862626851 743687330 990756713 313654460 347687616 971999606 997569662 141765245 430826681 496007462 925706464 632597258 938746551 190209727 918232868 971333798 972407125 352745281 767947172 492759873 736148958 593027248 815532777 763982905 996238078 112872000 659446376 345971471 543406437 9535734 953640448 944591818 995927109 346114846 508239555 936148033 962559010 513784318 775380885 561816093 764341943 397610397 760230704 793291309 855038803 437881289 671114250 105181048 644096376 373068331 423012039 266390086 275041643 537882703 963109822 966559299 975662137 385286122 715212984 873632396 998271154 26998347 110383921 432462555 659469849 727218638 938634170 93396451 939792778 656127593 887683533 925255535 952965117 836674067 931245879 143393739 927759795 916304930 920494197 119986498 410687116 370664243 804825972 406725588 855044145 774705655 826755209 638250744 782425222 561008624 881698476 329388985 479920908 933610383 956456955 312256861 592325530 261756577 387993262 460129975 960942268 983767628 994398596 269285548 934067111 619512479 925839826 20944256 69840058 656906473 738885213 370909738 845434367 367292872 832223456 920853206 957898185 927702040 936404381 822347565 919035864 740393563 816668661 221745667 473693574 627296630 959959188 347753910 421543877 548660968 820736264 429712686 786953835 31585256 741587588 736654887 862689345 79079725 123718381 728653947 898711666 985329761 985929275 844255614 982757442 463329056 646279448 57550095 246593529 231492491 514909240 663319073 887648383 147403129 439423460 38400656 342046701 45028468 769134099 840791593 947130965 574757999 599243628 286656363 360010060 922928990 982816502 665715257 680482284 101290957 274283524 740773182 910964150 745910452 819928204 560123182 607025415 288487870 815804252 880585233 928191049 372841327 722232893 739995233 912260323 864445967 868396751 827343125 876708832 296154709 368380304 637666053 975101929 824309302 916140056 145914027 853908395 643061299 807274235 529571109 763593025 919407834 957837299 211336298 754452536 141858120 699578505 682044495 789562102 631831786 939425405 194644591 926192216 763419563 888769700 240081096 265918129 415697990 918484008 529242686 969954402 194957925 627951280 323346236 821103306 618674632 796556593 376633309 887745888 660180088 713356530 218664192 920522926 305420598 426550974 594467114 956110966 640232016 765135615 394752349 840038431 342631465 966576527 20743084 433201328 317224573 567174439 63240115 939070799 951301844 978731365 604259712 845193973 429695097 699823886 671122308 823137302 648713717 744870926 587973378 847949239 997501043 998488058 813796867 890062194 480118205 899427172 658501285 860376916 82275297 456601016 777820459 953016910 763859489 813632533 167792865 668875240 712255050 760921867 77447115 586079898 7800671 534835810 557978109 843833375 425482586 702641405 235931769 667225914 827525778 983103801 366651707 493429100 74974477 727590856 239901272 937781781 736878607 945915371 13834501 751939620 840407640 922462912 965397504 994818668 940712745 952183605 522612985 718381617 404467772 588844201 754461224 821633469 463903346 809689033 223952390 862080275 117067850 336757613 258790326 505793679 874865429 881155899 349907260 986100502 557697189 910142869 607094362 624847522 528897297 970865031 411116623 988316440 952769014 978895485 808164726 838278467 280214222 474152281 549447239 832317013 242872861 701047116 148772873 730168207 194532405 923120548 342367445 910326706 220889247 326136508 425103250 508528824 685055027 855960333 34055006 777944247 796555554 983462589 45778074 117959027 535921674 705933442 988698408 999260499 850803409 975274011 859618027 963401956 922685820 945925301 766752426 974934155 87032852 275543985 244316323 887577462 809497628 964278273 115388180 336753982 25961335 386829389 239839681 806170958 482297668 723536278 139213728 210201419 108726460 666248966 643600567 848927440 180718502 768234741 754314741 998273081 352883981 577380895 778478303 981844865 912975917 970664799 120349124 908615414 915847559 961675059 844200928 931295481 672322162 821941798 167701296 782115493 56389890 890657179 731371878 978501895 119573535 255196837 377267197 530069401 66314966 547748481 2449824 197621966 607244843 708014302 374023977 390681358 347915762 384409740 546244433 988653266 174629904 217612417 475222920 930007797 67067667 137479323 349630496 796259446 12647831 829411697 153077031 617903793 755561546 813442523 439008879 675447154 564057920 880397349 837098034 892577650 593305025 824497225 169866411 238778117 77916858 833419726 507469622 823503469 680350976 854923665 308294602 470944903 399714066 963488069 747597141 782787332 76843559 751136255 757653718 897795737 772426725 880560179 932521645 968208442 367429372 792873913 674077646 997648761 586857458 895921875 418908926 481413535 931315022 937488126 66785814 351640655 775507062 792198019 546523968 966589188 622898796 758786610 156227001 162946674 778386299 976569020 487264137 926422874 704499519 964746644 413604591 754202350 327306125 769757599 216107256 493554631 677336247 706809210 418507628 461566453 311527310 465746791 174450205 199533404 594681514 659853236 560409037 849934771 972294520 996166049 291502058 569252080 197662889 910799243 225394969 762828545 473838096 735207882 34839478 564346158 635674742 680667307 621835660 734547913 965239443 966435881 826002486 876108085 982075360 984254056 512348506 957422676 896983928 992003037 49482558 423514550 434965178 528170375 296457243 925740532 129960619 222570911 780114041 901933387 486330239 921087580 105473110 426986589 180472409 242296455 728318000 745750436 488009903 560599162 544093992 832968588 236934462 380140449 642115830 981247631 648180824 887281208 281964411 371285633 537005746 603609997 48561523 159246768 492566149 807064034 966491088 977449342 629149266 833521080 800950366 879141334 283527047 602951612 459072734 852677732 609558976 905993251 543887949 859220683 638628301 751808852 554025624 574130153 692694049 764220322 563719859 591240549 71515236 682958750 452974401 713634726 359886347 934064595 377192296 913478537 163178389 323807089 335879822 729928960 54494373 91134761 245761383 894370709 551402530 857537273 728886512 951272741 514446149 517455804 485189201 817343565 111832066 327601640 442414221 687084291 462032373 791139143 653987061 687097792 585799162 704498736 673589462 797740108 985461072 986594855 916075543 969272996 871313808 985354172 583490868 604666668 363565048 464528503 317223856 324054115 626220584 920213814 987894171 989668125 504752085 792051684 338198878 849718660 512228943 806583354 682343860 750308663 876097947 975317887 319312168 499263362 438459228 598994676 955695303 969469040 793737835 950765918 291518930 980344366 684683800 777437832 142622771 380859042 652229499 711929926 960247300 965465548 767587759 832203848 642360540 880778305 959971828 998218876 98514443 828758766 571409086 963094220 385966681 941770390 830748626 964414644 2934640 253150381 603082580 977763583 237193683 851071020 818067590 959379811 645074619 987832790 611525563 657830623 572084774 757031431 271128942 732192431 321366622 644113057 237949840 572918726 310955316 431622751 148641830 727714518 327715273 413308173 351725381 644656671 609590609 682625030 127333365 523972630 569659254 876677901 286058067 568475133 498950209 860264618 927783964 982052854 792860326 846977034 564109075 804118624 96635419 455343034 557511326 785811070 922106853 996907633 411009812 796711970 765940847 903253785 64765857 635531596 652688224 865417064 440968330 509862390 303004746 421816454 427260481 690778659 996027322 997364784 256499931 670958826 89139065 713674630 55128273 584307626 772250734 979768227 356481672 517740379 567180611 934216189 581341931 926601439 769583548 834099870 396057457 433150464 571271605 663000716 443395517 546701074 828680691 868339821 684699821 943101110 488768271 615143964 712638188 773374385 417656335 963948382 619736914 811420208 686297986 834690212 785023189 830237029 662719185 937737688 258540564 328765677 477488094 896136995 975705549 977068180 95206667 383885425 557434548 787325280 484145838 743558500 177521680 460206744 804788402 953750948 622779992 627724794 519250033 905646725 186174385 228250555 40050584 171932797 222243565 304715393 69437858 354279499 178714170 842086215 683946228 994031750 922316171 922779840 638247254 981588061 628513695 650493664 661129285 799215335 922826328 952064528 823528022 950731350 694355712 965580540 827484182 968418312 693673958 824070649 989093250 995804845 550804928 811811563 898304571 983182797 102122942 272049728 430736884 813924043 87394408 278206691 27639596 475764911 342059574 745476782 376710723 668133043 543921927 998706926 610920559 867220429 290065190 575485096 871906618 881873859 412927585 542801656 513259830 549349064 177544774 650228975 948354652 985392160 404056750 761841320 46473597 303164518 80714315 573681482 996643205 996909305 44626885 586116458 732518127 999006143 158445524 931782272 681686650 891038624 220484313 510371540 974014958 997278033 988757630 994682807 460268597 567470398 774519686 929798026 415765362 594638685 202220692 885549619 23953974 106672721 125268564 213070826 831261795 901195658 111981133 160041887 516502160 654479581 741490300 872514374 650853504 849425140 115211566 498217839 187775682 665899714 263748016 542173291 608151889 851431868 4268112 393873217 221956416 259944583 742274760 759505319 281576404 342864199 808052273 824365600 661030678 722334781 857398920 980633187 396723608 793884626 905843548 949103527 575292557 784061341 669551825 792177478 567431254 815504713 819165441 981837161 725606372 792903725 26080155 910823182 826742390 893085286 932962624 972223952 788572022 911487125 934926007 944619153 102363463 112379095 384443809 670728637 73888480 223195544 126890466 222157614 963885275 971406631 870947778 953951210 770849452 813186858 754061322 899708470 814056399 815756611 909642768 973393481 681107629 854766157 293917124 899146752 154148994 741794504 214079725 799733586 458197085 507974608 526570236 709670628 111557100 249771779 879149309 981560962 989509758 991389588 712379672 997050814 733594510 828834540 725383577 842007246 674093507 816865764 660073134 708747260 943375675 955601665 214961296 221135688 298775502 589745528 494715806 896764055 369675929 858751168 567724208 950905889 949988636 998234009 585200202 597070229 904504105 943441256 546168813 772477509 753574528 846400811 808559529 965996605 397421996 988214181 431929459 476650335 4211450 58809072 427326582 558461707 908867282 932017543 822895654 865342207 464794207 655649432 913591671 945804367 651586425 717228656 779508330 946152949 856346989 996818041 867827087 975118360 962384581 965136998 212507178 218688188 674960107 720754408 384123707 831829928 153528536 345401554 313064913 363697291 898650151 949647782 284339066 288535413 641659681 804606628 540656150 715373867 666980897 784834895 263290066 584775429 624888145 886498114 730202861 860157439 838649124 885701768 305860754 830274912 803462514 940468734 489987380 684258001 429048707 742633230 702985585 714788506 372426477 618543173 268139405 785796698 156626832 890189621 875033367 990089183 760841432 938184877 714880182 993899302 435112939 612686253 305343809 870236246 7022051 181864982 349906215 351469374 247582944 717277655 817929579 932957346 85639234 286163623 947403054 951063243 98142160 602330012 32894429 236592313 929050632 942817645 665023698 714275867 487182008 843619783 729472496 810055159 527532943 683476782 413737323 439059913 262344281 448775916 14891466 62300151 268791865 577821836 444026466 918128068 214532307 900946005 72242390 718261942 624763189 912233637 486288183 769959408 204191743 322282158 981234819 981923828 102124083 496300042 924378920 992125841 537184402 959958661 415429140 478442896 960492952 966586461 472412354 985306190 572251848 724129056 322775087 803716456 267929775 422157056 866313361 996430839 423722718 497495827 688737213 973615448 731825250 877698061 987849975 989151280 486189499 867222325 465985564 506306174 369815191 744185789 189103989 557425264 794679161 835127322 953986989 986305799 821642357 909346194 900165731 981068013 713080929 715528108 177298509 366886501 231584408 417718008 89393639 770542306 157696460 727100257 840670055 887100269 792745583 975869464 445472243 635187700 503643285 603745894 8389068 84423278 939855773 971066659 538912222 930589359 907331297 914078786 62704271 515743660 504034248 989566314 660597909 680748197 518145672 981214693 786555878 983496953 917852428 995588436 904313711 955360481 905074477 972630065 293055210 536853760 934017744 987840855 923408887 951425208 142194437 517477410 375692783 741714316 885155897 980324190 428691197 949942226 486321306 663253556 511538722 928771581 393630706 897327856 728026088 893109669 993934226 998776872 547818803 592006162 874257206 876566159 39197624 653442294 304151443 788913795 735341706 825662434 826512898 883053543 539561676 710894632 606767 841229688 767458337 906826178 688891567 904068646 939775606 976792693 909256929 909811154 18815796 380776821 541989145 595494616 60215559 552160014 885237993 971493379 540954131 542273981 430200978 818366736 765550936 829732511 352606069 412454361 129082410 414536376 886086345 982154826 861830703 936549845 687880273 990915081 614949062 680929671 624350951 981384623 783212100 804511333 726419313 938842381 717367398 821562220 745340776 747446821 745774989 996643269 916063296 941209026 718506056 976763086 125299851 474559688 434068504 935934213 253329533 552113824 702552947 817684235 205111561 589626736 957583548 969262382 283207218 420289830 617084545 909639240 54811551 380994477 189849311 340108502 134958099 348869617 225950378 368470386 204753282 549719561 278109869 795273164 421741696 667607954 18107268 898029738 36494036 635132052 148328127 785054041 985337430 994025574 715679105 948143755 537097541 663469991 371028816 732261112 323765995 767443596 842726416 981401080 305241405 519544027 522263223 971970371 719895241 797948995 318116962 712364540 752492840 845343535 422057816 857759218 872097034 970327918 247214631 444637499 858689249 961540961 726069178 801712935 348791292 593628059 858904088 976705005 490317123 547929090 213555977 751313906 922134215 932264874 249690154 720409117 498779229 768603032 844349509 966367084 969095321 969569069 331279983 729685886 809174802 975893754 458502744 606517233 153553508 531577704 101667583 265832604 966328956 976525333 292427241 610240606 812690184 973400229 412152910 578454495 319557631 634826788 679551508 846200225 375534918 889147969 457787608 651877031 329407832 770078686 955642728 993360919 553548993 877808946 696073551 916851885 320826239 499717229 767293872 956816010 690030927 700112237 302920039 437610182 400749697 855723378 755028146 879336291 267647033 512747830 173719012 736419008 888271783 899195442 836841751 882749740 269650118 470247773 479697502 492512761 19568326 392079481 878274404 928366441 551557752 593798496 696450834 818000056 676733970 996700579 698070339 981191438 970185772 999241863 731867779 828951100 417142946 598824252 619652248 669819229 235912006 707017120 859944417 891748264 338919745 579616305 666855053 904669441 129228045 986645572 652676654 760028119 697295824 895710143 508016420 793128849 894649876 962064174 939701090 953927729 617055607 915547136 836617036 993545329 207371092 780431407 74976849 584839028 609769562 746859632 7694183 579425416 849003797 911549940 319493185 459418882 1660155 485670545 471918099 835576601 22755250 709092961 805659742 897467702 19368885 387190240 266343650 441802787 787984906 989298040 800417887 999280713 265694434 858360347 955026618 997835782 486418412 969487886 926836444 955103739 997398479 998125345 734792425 783016297 460362289 881810061 91763764 370995898 444139297 834803043 427249757 926474976 262031194 798961194 769666020 826920757 798049653 956279589 871939715 898872550 64148582 798629261 551865953 691157619 624433952 798588908 102666689 655960586 609980604 806767568 637778230 659288714 325522828 774569811 912669778 995111864 536758360 945514854 966191705 969229707 993549796 997302269 501714320 873283345 670849280 724850445 109247596 211941284 177991024 357699690 150581224 692947724 31283300 154484493 80068644 157606808 915536607 948997318 666253844 984867448 386083455 666871829 788361051 855439737 873589032 900291791 983879025 994591553 782354520 969168193 453351076 582825437 143155005 229391099 364684618 690735415 367176146 411354297 39160233 868263525 975235807 980410424 578410292 963925202 366493831 819582489 728758444 943537825 945172894 972679420 935093352 962813099 31393332 209742655 42664243 721461486 929804622 999158006 385526325 452842257 789832897 883044522 22847798 835734207 628538405 904422173 140030486 511750248 12985048 366592006 211172745 472065899 525524799 935345083 642467878 762392263 470324663 904467714 614469867 731787048 653351392 984250345 45746083 864258644 399352723 751952576 642513279 664294428 620815317 938043783 877750613 990047983 67156669 91900806 230444437 510658360 124991068 243212261 409420874 704588895 439368122 879988396 972368625 974951328 135064264 819897361 273596953 593765397 659947448 711231371 471800682 522751280 204610205 217136331 614227788 693922607 174595707 236233982 820110759 950091197 66999975 932854337 910236274 954427770 628752681 722947974 688875989 842192335 947237032 965000684 925113451 950523950 742974867 753690427 614846590 850926569 69545443 471914412 385895320 976483272 963267983 982767058 979684554 987318904 398490559 575267889 208209124 474084793 116130487 603995483 211796950 820564869 556118928 638798640 998457978 999230938 416929338 613582121 803501850 955797680 379815030 600900041 877531064 881839782 385152079 745877906 947519578 977427176 809845347 904716582 897322482 919517117 949714863 992502328 910814211 962690567 49437747 918803779 777039898 939113750 88639122 161334883 586925637 859036904 667954808 799878119 523071795 890446970 63624500 947674921 961075758 987949693 151245668 992378860 866630207 918029841 252288374 346663921 470148159 542887252 930677567 945814151 725182805 815696954 609969325 702646615 948515595 979499564 786218298 865044561 118495343 369500567 683163311 763852394 410139083 456313357 896250467 992254698 141691468 637916006 362426055 965889670 544865215 975454962 506153564 515002945 249005779 533861186 367215335 580501642 436559107 709022728 665752543 844629172 846224130 997076460 754715034 786309215 814316443 838044267 188691255 820800675 786383986 925226583 862456417 879663764 972088574 997083350 744569962 987633968 944794504 991547644 16329553 407784477 228609462 554435113 217282041 509364113 932597733 953930005 904296767 981083703 914147762 966781145 897863516 995908437 797053063 951791792 991110108 998901443 833197809 863153389 502947205 814870026 150419664 478094842 679984416 702458067 593915842 884934657 141150887 767931879 228832397 732997859 914569149 920831645 476175100 646186352 587525399 835588006 87295684 365234299 534923054 998240745 307649568 924731017 659834393 806530306 220399547 355274805 171188905 769684339 171604197 946017013 877692159 996987895 501733143 850957550 788264205 975434245 726777674 772019840 28959145 516599264 168373176 247253854 689384127 746788717 596710279 870135193 490696953 896467838 730590061 821458942 260782341 370954915 791876453 800717602 31468653 816928229 369214789 708384757 591256820 652762788 339410580 353609245 712409788 841833538 518104901 847267187 476179233 602118853 824785690 941539855 164032 611216038 566039120 843286846 80341104 648865125 150907859 808188006 22003793 643921902 702945337 707557048 183448917 492332819 749837170 971268741 694052354 847623028 624823668 753147750 55819618 509361348 441909380 914867429 184295232 352806473 346932488 507920635 566831921 859364477 330990851 345481153 216477978 690149126 333180188 625690032 84676284 455977426 24200034 628814364 371664349 481512414 172503796 673241742 920802250 969395121 112294557 786603238 475929334 750408907 491521543 851050795 142562331 364415912 362283505 909093529 603235765 674069079 642227835 657354668 812303533 821433989 164900544 600710189 591803701 634958574 643228984 751525477 667037228 949730503 100286278 166294684 234336744 384745708 752915727 967857653 970691925 993405363 957883058 985932632 915829938 919698905 905294006 984187163 432178249 473259011 40966784 706793819 701796447 884946547 949592876 967927683 625107903 832625152 104691440 697346209 834774476 884510259 777171116 923599232 740247481 921464793 331887772 462920727 266824213 619663393 267909955 526086272 130876290 537585043 866894092 959785304 652900169 664429356 184924892 238688034 719002088 923597306 454567382 895631867 847999013 901701072 764689873 964626323 768048413 880827949 976434620 979006088 1217920 186409852 32166136 526675013 737577953 796961157 510769537 562100676 118897228 665843220 701904157 776158260 840987656 999380766 486262648 984706716 146256223 871098393 820485137 875356691 35623273 965140282 657959360 780255586 672375442 762112085 699880679 746666976 309497642 833414114 948887463 961859639 247117587 630143652 55710335 657002213 7902250 584847854 563605240 572494236 52264407 354336679 174269378 792691620 8936578 210051742 571670351 626488099 843218574 869416906 163877738 576766847 836824906 916707958 597094240 741581915 850352846 917560113 96353571 769587543 562186579 607539336 123328341 386929611 318965855 970912457 799004353 977663873 827960765 917356843 97952220 415997578 938525466 965666334 796418095 888929057 158853086 990976148 789542987 914828329 394071981 695013089 966805597 989793035 137597701 140562147 543974202 705185607 153495054 551694067 811994743 942955301 328061579 529370836 353608994 624432872 473733227 958273317 209825342 777033826 366336448 628441735 732309013 848338539 936016263 996441034 966164167 972864714 42505154 738304492 548500342 677060471 909833634 988918162 295497661 385112970 326784989 704866307 74957115 401431749 524909223 998175723 430184133 774262032 946782391 959304763 866401208 977473907 47591292 193642561 720073647 853744580 127138939 738782671 807485134 860362341 496746582 833123674 229983936 417113031 894857120 923045870 547696555 838809084 90447350 907194588 102754320 392585945 536880903 814706096 256862834 937730968 123734479 204894634 695844988 853469673 464358130 915290346 748446617 847732174 964510191 983980564 960991358 989260202 614867836 954923938 719127569 769082576 389161550 397698136 565984869 866103814 758265678 867266023 669853649 724776115 273266456 528042053 360778025 652404719 943877069 960658568 596599685 945880546 73331948 466542023 852447714 986617323 998286010 998956313 847722401 978089557 122461426 672056741 531936436 579596891 459960326 688567684 597631010 804812773 675800417 750030797 615319529 937677717 780005689 791001319 40145293 587357871 276706860 829740050 839883414 903590677 129272699 282948675 687776059 807929427 621785035 726549937 668303994 677066051 30845526 456627179 297107304 879396393 531922044 823234848 217530634 904195925 769461368 811061814 783762302 939561889 618496069 801638995 290355930 576385007 46326095 104715566 294495516 689369392 49416046 453888690 156704776 688067197 254063633 707118656 126983109 740114403 53708102 618196691 778898000 966709669 580231245 939789924 996233713 996252727 297836277 564612586 478943716 589583826 14520861 350588930 407370515 419219338 610192835 816411495 554280685 858298381 298859565 954804896 430559894 997596973 260415340 309596728 766196316 856953363 630711158 952538241 254029108 874146586 763027212 980827045 954461815 979641316 507624810 969892594 764450625 977236823 493672036 687294141 625811470 957374676 107946496 471853291 560203772 829200467 320168067 410310482 557927649 779477425 551206568 922340472 506442413 624445840 907560413 926923193 11644128 696272175 557489688 984665294 937775304 961636041 784301296 818240182 616400802 895433974 247607307 547537970 811675207 876365468 258698603 646581928 179186716 239697065 25495314 418765957 729745358 960161986 499097619 909807326 926077852 944505629 868643934 950874986 299563136 453460323 864161539 934965536 581383377 968406939 140227597 895840250 459928747 684895840 665666596 789638950 953861276 955731228 489555593 816243405 643839711 704291283 557530897 908711632 554676456 597837186 962262976 977459530 567763821 654549830 984070505 984282609 257346837 292154571 614731979 652639160 434277494 711109514 256599101 289839913 839015736 950863351 383119118 442258174 998529231 998690214 564808985 594936192 652778070 835122749 236485829 983859035 618108527 948691353 273949254 950875666 491832998 714590380 518852153 958115855 769402548 852431447 60119806 262602763 406405324 808906684 28978780 771535883 586294731 873900569 688526795 913743563 139768173 274839085 130546642 219749724 554188261 582209875 889098903 987440814 510495030 557396617 119868644 645063963 718196108 776168232 734874513 969381426 168203819 896069435 94604205 668096269 590490382 767946928 932853418 984431392 472508259 855189194 503973463 858892560 915249547 982515154 798002313 827303566 914655946 958037201 666337638 939199273 552239730 737853777 847303180 948641122 390388136 976247867 449214114 878039671 27500243 319406340 123937825 907741025 995696444 998764672 975233148 997544086 554208939 590115205 530014529 808343420 586998259 896385561 839144604 841791303 59272995 974011152 515271646 866780120 323482181 572927133 308576966 679737635 239216496 396104154 478555977 557641858 392570142 613884694 46041420 285401667 809703074 943271555 493685810 528159183 936027087 984426191 420509942 643383710 29332986 610116179 668102551 905077562 730068340 795234034 959306923 977747547 703032891 947976742 479428251 579728652 939157535 988559779 126293996 961028286 113977675 771440184 858543187 934394106 914876981 964340487 686634454 986106557 529332504 671997910 649196085 979865907 35617867 162846751 78910010 449017605 14256662 115753126 644320888 961731291 239740104 557143027 827364131 956282901 687659975 976795864 230200444 452573922 5132263 210724343 704098269 755460912 396390461 657152472 830734252 871405606 859633671 988507302 689656599 945989815 686230578 738564316 571842749 930870859 379937290 823207192 668642393 897036211 910914582 930772590 871559620 976111833 458347768 776593726 103802231 835222894 933523466 957617927 476980151 948494595 411633308 858128058 28147994 139514491 587340993 635252228 163119980 418077086 478899689 639301422 201290208 971159635 200835290 557119119 32833114 767343245 635570152 931594737 128295208 886643075 810249530 910642617 496457310 704916426 484390287 916838223 846363329 970634551 933176563 979035092 562916951 917945841 230250576 461923673 927732060 996970095 435235131 579467823 338089856 538277928 309241299 568532880 134912906 641271242 898672979 904188977 432597852 771184055 408618637 603678214 461552038 705835292 426170700 794318770 85686772 784377902 342746034 778092964 372944411 431679453 734756127 815512994 185811755 406305690 492114454 597436173 743377926 768225836 370062331 555017642 105078785 329096063 33230915 972126969 609261656 619681398 523035606 852689249 813574442 899528212 972933690 989293705 276829886 677867249 508788405 511123460 962220059 972888410 460953230 532022562 213652549 350613241 108691288 768024031 923811629 993182422 370301392 453866222 688686716 914320760 741468382 864678991 228907266 322118362 46688012 174461559 468556267 503794981 906633821 995784386 33151820 726112457 586447870 901815681 643214060 867177883 772811715 857945938 735873537 932711854 330051988 656700566 236159503 408609680 626237852 795810607 351394702 979330106 697645078 787044726 523768209 985225112 488633129 767944927 116333181 466337748 73370811 724282053 430724908 678906744 109375791 975983462 633557457 947292099 334464300 381513324 981295871 985450413 577123064 784508804 423035152 428601005 682229585 783703246 820008263 913561120 140379528 780471981 242478165 482192818 510217420 960973203 464002071 669209125 868641046 926443465 781927876 911371008 867705002 932657539 276902799 484201359 667870116 730993289 192411079 325343517 465871082 795314638 667105586 936499014 262376832 418914857 57588501 958451827 644012421 676148642 783067083 963193628 957060306 991153577 539460273 588127471 758872570 958638503 957345222 974964527 163818770 731203817 974253043 980308976 248069348 746075901 270479272 653919687 628001121 933939875 87567901 137731852 385790427 856769693 856690345 929296571 841622517 991344967 289104413 592704359 212044208 747290823 584565874 995819562 189166662 952296376 596805646 953268724 602391718 933010200 928399778 954378962 183027568 358683082 823214686 832064747 14077820 973069262 462879023 668230584 109462267 169817800 337882850 925174854 229057721 878676212 556888023 910917326 39589048 467190012 286270700 299881740 394233228 461422016 476213868 555083255 705939333 982174947 544364145 980294841 816109062 925508395 941567222 974762620 85473295 94970555 474965132 613401976 719186840 770540120 615929530 719204109 973710866 987855443 638335836 726966169 619192432 621311062 244954396 785453788 34792091 290696770 514122466 669088731 738085097 965103395 493351908 698180565 274176837 424764823 764518351 834150173 197601757 881543659 822823863 924795102 704702418 712033353 794210320 967611385 11781025 885090565 670541409 702568215 7568105 455112999 394249802 936752312 766200584 811571337 524315287 832952566 804359560 927915576 876339283 917636476 65341882 131583169 760166949 833500100 398465290 883625042 741805195 773215429 182939246 960935238 992233698 995771923 17571528 873484107 427545754 807120267 752669017 892756321 752134945 864214060 46881811 497191432 961728898 980608025 801070361 959011437 167004197 230097893 216915011 599521566 673770963 705363136 840800769 872858636 348185555 874102682 746077541 766232068 461790694 940298210 862678004 896058633 154730927 234751976 912448804 981523912 749771811 866207677 168384991 569721220 69415024 693535114 418626206 870663539 259522849 261843999 603591770 916432724 80945780 573694760 430542819 443248536 32160029 504366038 103977159 471119398 282772737 707061156 258876248 911734566 552843203 898783249 684022495 810014547 166374121 417791194 183674608 621825227 613420336 675983710 682271805 912791691 195729875 536068527 88340267 536792798 251449821 879533555 931593506 975405279 750241587 786828167 444447102 465259706 616643423 758710623 652682442 943114653 814291742 881863812 88165177 251699698 302941396 878780609 608414203 932499490 371966657 496450446 197255732 667999479 664763929 673152872 975465041 998584014 541408215 852423625 878685907 995181378 686295214 871693581 636396897 954808965 27742652 47202617 896223362 911427538 393057163 583751214 941808485 957560477 445029474 754213962 436077134 704994678 685563092 845084508 149544384 884300718 371888229 815360807 57847756 188984277 836133281 978169622 525898452 657142039 831125287 923636309 101375752 809393771 845069748 898982874 603894181 875198802 415522538 647041656 854834127 951815886 684378065 852771182 198157315 864601098 841425963 981748876 429286923 656052375 564826113 604401339 802060549 999379285 199896193 583415349 448738009 530228602 386356692 798552330 840846246 870299231 77117171 511217322 782067142 855677502 965605201 983088175 340090201 580647923 218898811 435695084 275984330 860721959 663184778 956032056 369110006 748024273 365118819 889388554 305725666 654533223 507279203 513755725 640274051 774550380 627376604 675096276 987397172 990501360 589815058 765286901 372858070 762653021 270853490 540645954 477830560 677799549 802598379 830900361 494555163 736317470 505839856 765067739 23321632 866702985 387747391 954031130 135741590 274524361 566029424 782362127 84890396 221108756 270652507 598030122 169542442 942456174 768652103 835040189 404782590 781830711 736223138 746558005 711479292 833473756 230025531 862351312 552030520 763200799 226864281 450128791 333593962 985855242 241103502 321026889 83957224 642682746 70824877 667109057 404356357 693420656 998989730 999166030 534408490 847675451 355293149 663581924 116018666 570988316 289090002 710016278 409776861 526659016 619911241 735000442 950785587 959649335 466790398 472332647 140666576 160327942 354181400 424720198 751063823 920965073 190128629 974151978 918639700 965095693 35848750 143641729 565067582 604887883 253142872 462340178 397191856 789316560 287708991 346763425 166031171 643765964 738913886 970767010 386065254 908920430 71919094 633509149 443015412 476812583 84164147 394366807 474827794 754363578 209891913 626942324 415458074 601491930 784602852 956006016 170373896 770926798 356414668 725668439 332458148 420346261 970983626 999054043 538212978 937313818 203730605 701065592 358386169 660029271 557074066 609538686 983649481 999190745 55360364 413007149 622609323 676126063 344351152 523371433 764613659 890736163 561743189 972303313 393314253 763292531 44603312 518966541 476522000 847925601 982365166 998791403 489454369 663884102 127839891 619483172 257260281 605945477 493109857 496202435 220958250 356852639 622948625 810315415 675985171 783413555 795926287 956097999 351676353 569960322 357117501 904997412 35709875 859761588 739407685 819408548 687137687 702338088 67804702 567389901 875116380 942214507 305433965 959934301 445466240 514908995 642239818 857518288 357815037 580802163 528791932 981439769 836644918 940193285 831764176 992169953 416791270 687643096 545096058 907238172 528860250 899755095 353432484 667203364 623972311 735081537 180858060 277069717 544340450 928982387 705436325 942939721 527747087 728234771 901280224 941879260 229605284 319498696 199088679 921202068 53260674 949849986 351450473 598557641 373291341 911226815 98743275 204537394 656992763 897750185 828102497 977922189 213891523 988830575 621526768 867608569 876583483 881707507 648092501 937343238 434053940 863845223 630471169 888492284 585812044 635712609 839555161 898716904 546101693 554186525 830465552 893985846 594313569 988351598 171237890 547261887 319655930 482459040 603658330 721803188 900564541 976028443 220331585 697169682 278086708 478782334 414571312 674777974 259633904 290259416 707397771 850331734 272948234 980611166 176976525 265236073 565298161 933654059 912265542 988653620 381599440 680685162 133203544 496528617 274615719 633485151 859642568 916607008 710192287 813950597 32977544 124692568 925641671 985347587 810145067 923196389 463834738 731250403 576992014 597831318 926625811 981866791 810040116 954314508 52434390 93994577 850996608 901815983 724458816 827763296 425711607 775617210 666508224 856066686 79020104 593930921 362968648 553865164 444449450 578227862 980074542 980821355 771390122 906465851 662131552 815107491 1826729 334058215 695844909 820705873 270051605 621439563 245724102 252414183 540982915 873386943 266069357 695516836 257518032 773002262 847633346 902792281 657020037 660181728 965848411 968080920 410806743 699652149 179558026 839842409 898330109 980271744 627112866 751458164 256027325 624343889 831147516 860671139 624104483 759825085 75157370 155634680 640731780 809564044 707406428 716052952 61818390 418324706 50691706 241455444 80829329 892529846 399857086 957427971 7028770 405398803 637691292 652682269 833938577 852849861 825260314 950833842 348435925 807340787 775534192 816835086 52849064 730750244 823363874 926618370 307171767 881473373 523910701 595109325 691490427 983356703 485012272 686201778 80623120 426117646 36973078 166970459 885853036 998748260 412180622 434405332 48161217 890969464 493253952 619258827 71888353 877371630 862009560 962927985 267267460 297311392 551674079 900008595 211716922 306927220 57962023 814192649 660729774 970587204 700059452 875139579 293651653 395094081 116824527 336116590 266901399 272699538 705293943 984747224 657445390 815332291 114204827 842434564 988841710 997450891 749570281 985772858 319770099 676192897 363665968 761443370 815863499 938970371 274478785 522552021 343086233 642298320 687370207 880351303 602258605 736085289 718356003 940656300 659891279 867221000 142573044 875508771 482456522 568012440 317896507 478862637 459461455 739013746 613371415 860480972 729255963 736423297 561185143 686359366 778655152 992443683 67544198 582932358 948689660 982978002 66759688 320058978 797145377 818799605 936170610 997414482 536434795 624630493 221557812 371331762 645327188 861994490 818005510 911508925 369872716 944335339 280082429 337573658 696490241 908189801 3753656 430573064 626238131 824445476 921051107 972658331 899462297 929392476 84504866 409075580 134175596 641783974 535795419 756611952 964933758 992687240 293737165 463395736 931183497 970767676 100983980 289355921 205897525 344101773 681250731 894111066 423924832 788812033 611251537 780560376 935436431 995046681 796426740 991389113 799281792 976315557 360235460 566126867 264394676 878753430 460966067 703570573 868259965 899934686 206650206 257375315 173675308 725909538 351626717 785714394 353560047 383794477 447160770 746353748 517470418 651209465 589013117 793326311 421959414 455101094 969095931 985026247 301135863 494737036 856389659 858497680 973876135 982909199 167864803 762271049 706574833 772226561 176567386 391319530 834283621 929448934 955880849 985156427 855285121 946810531 124555398 352041460 673125703 727907536 347848386 834187602 618954548 787744139 499479182 507383308 780970088 901888441 918185680 951834838 39106076 709189020 643669302 817642358 601598818 771928419 957236699 959500876 489621941 612837966 538470146 852190708 535295697 677907804 993965776 996219746 350642153 847033736 808583330 880438879 810697689 937945330 345505983 434120869 967048812 967322555 547622534 708559465 693288805 721158681 420848541 922785761 117276478 674934070 252230613 909856446 527109387 966796104 991154545 994663704 916341633 982696216 564685831 913420633 257461258 339118762 441276260 657632482 18252036 357627050 182837276 367741217 790583997 797290121 984155533 992107258 491015734 631749803 126083630 452591134 80748989 132405740 539482380 948617454 932805686 992127036 663207191 721348584 407910310 699195055 450007812 994107395 423664585 971981220 298558751 671195526 200475319 496712429 583669914 904828480 775768567 795110006 598279458 852174851 714740959 840294674 167833604 649336215 639176560 886448109 742213017 827889545 359137096 751389423 79158805 950092873 75687005 983646120 326716411 985091776 754127694 902852153 276048082 444533099 343550360 438680003 139903380 427336938 479324466 748601615 137130138 632226007 91604094 153429481 261706113 548168394 698036945 994109007 126962177 493444079 375031209 724294063 807967081 808651223 469881914 956350687 403936257 727023343 118299351 953169123 329219952 933755749 578651217 954170392 157052494 749054998 613095614 702869385 900405741 917463195 590180371 928391253 57212827 616486615 739808100 986665933 19280382 95953764 583061468 662410637 972302547 993500243 606714916 783054660 325907025 460356698 877592897 978400147 731603134 861376907 734386470 759393630 688407915 740829770 783193098 845849194 302326445 606484754 114907104 516297296 381551810 561199488 702198291 995618232 12763328 966097965 63792566 391476947 42520938 405716954 194128468 597718089 668422700 869422898 239718229 766262409 417195117 498318079 360035396 732955083 806174501 919648116 389744775 407593076 358004993 637099620 700943206 936463549 335606931 349650717 808858860 973761174 155849970 656687696 902198965 965121329 181661475 976405826 339854321 754203795 321459259 847809828 508616480 873344795 901116368 945465466 363851151 408940703 522873280 565376933 15420143 545295731 7338396 644632097 163027768 546722220 635244933 876393255 271662506 768363429 512895769 810965007 944962483 988127934 410530350 836408157 732000760 778116644 768239737 892724085 614128410 814575680 272876609 822635388 919786185 968421406 563787519 661275783 113391246 709711597 843905211 877503301 955876095 983942933 611445159 733958033 450412927 729656234 537822124 997423503 899590463 939893424 874785612 983328633 786233647 969040476 699413650 970401777 319412350 650657058 104425919 224533563 928994915 942363850 672585294 783675015 493121807 946488398 271458511 615171769 509621829 624834518 470472149 877303903 444038105 948756752 975112583 975955259 292905953 329637109 145945108 488968674 26639915 885537185 737584730 808143489 248315229 676101884 703363359 780288342 77775726 319725545 48912423 97353246 31307824 80014251 675485958 792483537 160440038 391576235 966279222 990974747 316323175 654623166 547491269 588252956 211439753 831963158 269476737 803712036 197233274 499525438 227231387 541408895 89258873 922833891 254024188 450715490 398640325 928457966 931301909 976946011 323829339 797827558 992950976 993395534 771977055 917086521 883088606 951286621 407925440 604856855 760415409 781739833 990976145 994370646 514160439 877803483 453939154 803999992 618578019 945350354 124792253 596222946 301082663 376921840 865195203 967906658 461870089 925961741 873380197 892698960 8786423 293589623 112767617 455490955 443490051 758887841 819114184 881180216 271781081 663671058 462774667 870283864 561216231 774877805 597540905 762034447 988364456 991177883 379625168 773036113 375568376 689049698 149173183 356229515 826821913 903476036 642081555 991390038 817321077 992341837 469763291 756071016 619200264 728313312 716355647 843713303 273804940 924460899 106935261 423773808 136673668 539043497 49805705 202925416 722104479 872515301 195046699 962327908 163984931 545696811 847416095 877173337 377977106 787402859 821411292 953570444 633094710 792411836 466883495 837606653 892057704 964737517 892675171 895898310 466165899 827057604 441617703 562488171 507967395 890436394 419203509 650845776 729204151 982474525 392731127 503014918 501577028 582807231 163510437 751792923 348667169 473749939 331367402 599349790 834781272 883162421 822945355 858673393 820315854 985900488 773036120 908266651 994576251 995648511 268696213 588801736 630244511 912184686 223807949 237384029 355628542 705409436 926707081 969993112 649981021 865599126 149548007 527771933 746432222 831639666 969951454 981749596 397338158 582588480 441384485 951727585 198800313 749631465 878437314 949812421 886262766 952838447 958811097 989504852 394142276 599987794 772681451 954235219 942736672 982481615 805668839 848136834 151653598 525759445 735145468 771957452 14121837 696889595 149092992 546457299 21206053 390634777 544109259 888118950 828570632 832499071 921308726 990312898 247020602 267542711 267767617 999221358 509606975 634778016 143527293 548789341 293749663 521795705 856925590 880755173 550789278 668636463 920359743 999195719 207941486 500356580 251191357 318781196 878140604 951945641 146180972 667816189 756527655 996666615 375175084 978029204 77834410 240215714 325791653 483639436 730066592 903879854 446931357 907749322 311113217 684066633 809689993 926171810 999254088 999322800 722917606 955943354 720062990 800078164 401872393 708100621 69539467 936331647 633898549 713891746 373770566 664609046 642095844 702898015 946986716 996620461 584042887 938566749 482265831 580210670 896734330 998476540 541904508 917909526 5699658 890023113 732138966 925644708 215888248 653258364 329421414 743703309 19264914 261638078 923047783 934079850 353534815 424667105 259414093 397443000 11286611 92758064 193462327 246391877 472424272 565897884 948516205 954308781 788321221 864749192 719360525 851163196 965533215 977085222 870900973 963613042 960345552 990455229 177861245 885676519 612827483 739290889 594837404 805426721 328470456 901708461 158528093 600425243 816067482 817819074 220945215 243750790 626656104 719291805 991952022 999056925 994895452 997265328 508730285 867810787 415884586 794354605 138259639 531054824 703288049 812827037 831602566 974015434 999333846 999344118 101125918 643373487 666147329 669830094 738497751 811107505 745023520 904728943 629182517 861826532 579772517 583313618 453258123 850197839 454693513 485107129 565852744 812492070 800434285 944894707 212458475 522112273 531358900 925984623 978678307 996607705 448026223 635558642 490725157 814135050 783509644 951638279 856344264 932631745 507307113 678318294 59095730 576533620 93592276 131013557 366659191 407730188 805249964 984513555 178380871 423736088 443246101 558495491 481075768 756543541 587838866 643076827 590204440 769557757 254326433 970023199 12061382 556862818 247866647 733040509 298632903 921271955 287485788 846816095 485659069 847475192 83581980 621207838 324385848 649355749 865217913 987005434 697536921 822245339 289084012 643412700 520975414 594970557 518135023 542900745 749843223 769355448 344130365 521507642 356922332 469893691 656653583 825842199 194910358 662735186 848557758 998271681 527885079 767522441 312252500 476232708 643449440 866003385 265444669 691730062 203928998 456216082 962581861 963769044 364608662 388147931 25439974 714455232 924261992 944906987 701974793 824524593 613748702 757311015 278672727 838769316 408043047 479494601 54417455 240881769 991705703 993151939 689886159 806839522 501322529 774019586 715278698 908468519 889746883 964516423 97386676 439028634 954941094 968436728 124295594 342218907 567770083 811121355 625107869 967640008 444029377 722018128 924026669 952875105 399162473 759543010 400237525 785410248 670659057 675089074 277455678 521970196 220869777 853503691 213734041 649957901 184416745 741871331 978782060 992571986 694651865 868987901 977029576 982534230 464463867 640041696 873951182 936742101 824030150 949414076 442452481 907524756 397738505 882642688 423219369 832884794 537321825 576339877 69762306 646819571 730155482 949275543 413017099 924677689 77410582 963988188 732931480 769787997 10393412 178129113 271406645 861109331 580661712 844339779 315346750 802221324 178551150 536038453 237410457 490291699 106603478 223990426 132556583 429737869 110275737 710605439 682840057 768095823 583097543 604262260 914449843 915271898 868148417 950258539 607946920 874555505 464129022 687170832 761895786 958254680 945417481 990635478 388873142 423628359 478227955 712497885 672213839 672329479 295841921 357323211 985634243 993073115 869204924 874526233 362926924 783590370 298511135 609536970 734912190 918177078 717176356 879587142 723639298 848774049 133030130 956448522 408785672 495970117 756971274 945747077 751554540 767606393 70885527 756932186 737807502 798781423 58062841 605003188 747630157 911761486 822300784 896644490 886862827 898516296 696738784 745073966 504572929 925522298 341866563 744422433 854369763 884614830 290948915 517079805 863144718 953219860 849359340 911636987 812772072 967957389 450850463 542744160 924027579 932993782 164572627 933016270 991852193 998037215 763325798 805482933 128317664 871044850 730214696 831849946 572496412 649668384 85646233 649993710 364382917 724323420 497174675 897886198 362366141 995755658 607640661 725428067 648725253 668515546 265273722 595067166 222964456 582123162 148609474 211457461 277855093 334226123 39197736 854464043 275363876 856320241 153577456 846956074 387099939 905822586 307520406 333862487 32118458 342512663 754226735 758243397 988802843 998325975 49286533 358868763 592261066 747679095 942667104 946553745 689445526 737661705 248414080 355450782 244778401 389278301 931742335 988276946 695882710 990087262 915656653 988967941 789581344 999069868 469752269 988756398 538555826 659770551 721064342 924152647 892471521 982593202 579937511 614145017 622899574 644643938 616437540 911654595 166396460 414541487 188804597 284705286 263780681 994541244 678337723 991682504 362670975 812360408 721776589 898916561 411570087 678552534 638277044 673498228 656651620 786224491 378464071 423279771 475684557 953500944 40140571 703201380 706088486 748005929 798290322 897952128 723085261 831472630 242486158 434471011 102939180 532540083 966018099 996009313 212680385 696514204 566334604 588647550 757620626 826771898 970275519 992727374 683781785 808315781 123361338 733254455 552343674 827971365 62184889 788888712 438142485 500918904 747813549 770186537 544766103 796096156 353264223 488785906 883827224 962912827 847189903 949566773 989115696 996695575 788209222 831154447 876302195 905032732 339745510 741146648 435633823 569087362 210827019 803101529 892115808 903128908 153799979 696650408 660988206 710232463 410930444 928842146 598169494 951464165 960924603 975558533 544808027 900578026 580599429 749099412 99730253 725594863 550786433 683513414 4756497 620724950 957627552 975963056 48076747 241385919 705742784 992973153 399217009 536064374 911905395 912381748 767125064 817028357 597314670 835012563 707596525 952231704 630773024 879744720 968417235 972642522 877482686 956488829 952178283 958141442 858828260 879598553 510836234 896547696 511847545 687531652 415552553 903938469 444906389 535818545 193708739 904207344 474898604 687066971 926535068 969875342 540319709 940214590 916313500 923040807 150155660 825711622 719854300 853344420 163696988 201570662 328321660 521520274 376945081 524696159 249453885 472420154 13065111 992604337 158145691 236088814 17698376 540160705 382601325 657958873 152392111 784253687 871111922 932539170 878446316 970365120 321262150 411932983 231144421 383669999 534850693 870737194 16957442 966248030 350794580 646382531 384571346 801667340 934069061 936977596 63476531 327439167 710233308 830182120 979051289 981364888 945876574 966977814 516012010 812885986 147204926 349551366 888774931 996067520 233514049 638034305 566424332 923497419 196877376 314485952 544317045 827441542 200083064 582333884 696985005 964148676 496025083 784834935 618053910 686951635 899178242 905080977 704363559 733669068 646930774 941598888 252823228 311096643 768746239 858051642 443579183 873537967 455943888 723432467 248673147 788016075 528463050 887786355 401847479 954695385 315371803 450039260 633555133 968876156 611821947 837830204 560768662 716892736 589402662 767602358 546652845 936168174 933153698 949761797 580040386 668771115 899290896 934322504 700017940 856255023 846477811 964734606 277892228 693328697 98587980 108079000 631743043 723496059 7864264 366152374 120871289 583365377 191153386 384236725 617772229 680620199 352784558 833010897 609092545 864141132 230436890 654124290 961934488 973856876 340970740 994510987 663296359 950474342 102119834 586821397 371281333 868542774 167381220 693036935 963521968 979925293 182977528 812353015 474471446 501566508 512768668 792705921 349276902 422057892 465144178 760258745 207473428 584669273 728216026 739104685 772890180 784948838 762018801 829822874 341045195 964930671 766134650 838204824 516490078 972229438 977507344 996092482 351353804 948922323 299145969 411347744 688157386 700980551 709925301 979191406 620845669 642492647 148658342 765601796 758981449 943708356 54003475 374668687 964800133 971628432 120219368 386993291 142113266 426724059 283314709 479591689 888344159 981209097 271947879 543943396 181802097 850122124 171917373 340743729 136797615 651874849 163210162 962425050 538731439 718828892 882032436 920203056 179433469 745341269 895074330 988791908 492953975 928573731 844843916 902201093 210728450 778092086 73548517 495131174 682779471 890387724 625941547 982298863 427764496 602570111 732414919 869844780 676103504 931772522 531602557 806310054 492429711 579887634 808633366 854532930 16549164 830050218 112309882 787268648 731267119 922560339 530723749 615681434 904378878 932984360 677016298 873663129 519495532 733757191 732395800 800396385 573305879 662023834 239975829 403444451 378742904 836297181 95304797 189945086 165239237 788679637 840872275 922222220 200969203 455581667 564029873 984263035 139638511 497721835 337485496 782396843 137286915 948322376 146911339 149043456 830302125 951260726 809426202 888657142 770864441 957198459 988396911 991487258 136969884 250366902 589837937 655085496 46519667 574743513 237308215 501844909 450694715 676156177 404856898 521962728 25281227 195430846 927289554 954978556 408556007 624111889 604388252 949426221 924246940 962922757 204172673 385050879 656656559 801270488 227484226 742424040 293520976 398824768 404958645 445848574 495770233 955929411 13329259 964862196 496025613 879327895 592225912 793768349 294818386 872465171 466146985 907864544 138066312 308649104 401480896 443510081 354438651 395056994 282912209 663852621 480298243 613954582 940951005 987957442 35582906 283237467 531919976 574269773 41416825 334331743 96199965 611378751 931383739 946785554 158620251 237924107 792831770 889624515 450286847 644756826 406318086 482848801 342319811 423238186 544728282 668211645 521034904 918066157 37822371 410267628 558356091 864717532 49007114 548686803 828059382 848076952 626724475 965435702 615243453 926177920 694039328 994441755 652862769 913741413 532346143 963956480 811062824 835224755 109624106 543180331 807784168 985571841 940682679 996994497 609901080 736466423 348291956 398868213 239102595 382495936 265284575 353811689 71418992 823013462 837898643 853065666 142283287 797608819 606260872 609160408 934867848 938010865 262335957 680269926 898383555 913343326 364254471 864495086 683824185 695241326 88864884 889913817 880709855 891600487 611538932 963185214 900515324 969703395 772186621 887328656 279949368 648138649 505642748 825381906 793010512 984999109 77619818 386117707 322887598 895975630 134496100 624212783 152998559 296838842 876088246 976911576 394115836 553527956 857188533 880894878 750322642 817503327 425396961 652061065 558728677 770459508 60629221 173099529 114917485 140937756 308076460 824238766 466771828 795588348 344203608 727559995 528914112 770663136 992985587 997821118 392423960 981933362 680106395 702324939 310511865 693513558 155408018 411782242 533508864 567484060 719905888 931055676 621580136 778688743 558682911 594090296 28097819 329038784 814267566 951080769 441826820 944833456 74366044 962570879 550352929 777176537 86991359 535441858 665931927 671922086 684572150 950608568 842727188 960791478 738216651 963406621 120140501 148746707 542966888 647481478 222316513 246447171 889766351 963811294 832543282 958518719 556533720 558104005 896882606 967114486 900397298 961096375 351852470 511485635 492787008 731758394 509557385 642690395 87517718 282527745 843778776 881686654 511817273 576905549 475693673 905942149 815785538 920178212 715927299 720047752 859555371 988727711 26103250 792072506 432272406 910739339 201250622 683174498 619060445 814138272 419177756 489515789 507407781 812236369 862677751 920549746 328916037 516258501 789594446 797155372 403639128 950977352 752980261 938263007 963747616 971675975 564553197 814059014 706618011 889537104 305246998 423961104 914156291 982107652 332641514 869893032 585805716 847262841 483676920 742422793 190687691 939784692 831696770 846965078 429133944 434016188 556441200 942873190 688363696 862284928 970893111 978378346 662160987 704835799 293646624 451402601 969917556 988500494 801244330 852663589 309807517 328616501 773302573 949309223 609001949 963175575 825057870 967436611 454808404 905873285 234095573 537518818 802101282 966170668 715189089 931089066 986364131 989598438 151679379 381283643 371113582 778200236 56706765 804691498 799060915 851375357 899963324 909497324 45856383 113191476 869445601 963469172 65989787 87909428 38173931 843275177 78412072 636908995 828566866 932993672 758633512 783722009 414055717 643669600 79540313 226094132 530351266 826949184 240178240 391909401 388376881 883051530 457241099 989810464 963772596 987141671 609750378 659650722 122771626 508219851 598702478 948008632 730559071 897614896 98788742 685934451 951012686 974120035 366142445 670956982 504352941 707878200 55264913 457685715 42749246 78178954 10911410 479309340 430966345 814040193 573632557 745943477 335118200 373623029 817873695 973676965 812716932 931356151 930316305 947842984 252295310 616132174 535113232 796389065 135202751 552422247 614106266 886772681 769896327 892718089 288188499 835387966 276871903 405319117 846636589 859533123 300381056 675000125 705360485 987130558 808799909 933239895 743126065 895272961 411905225 569816823 553908908 796059182 474454603 892951808 550594666 913456534 716381625 733282710 648759097 872454769 742523301 855858917 400201043 986819964 757205240 897626056 210186898 546864115 306321086 442101141 573778646 712641298 120282837 869857221 120384218 658209111 489231843 711144745 333527411 403284552 142027152 771651164 131549683 926411352 200155565 634596856 859318324 979615882 317614678 982705682 751858976 808826435 38500197 899033022 753044440 837632843 411269884 732559095 821679794 955232757 90700527 486878354 701536262 982631232 667117542 704118559 412887583 439845931 645214275 751067178 607460656 721665247 509221199 631322247 252207106 296499643 466204347 603215303 425722957 647803368 306926017 519338255 623355334 989234292 555439788 906525121 796699622 895673542 809783445 948193895 887059544 948523900 440695768 682207871 585038241 747420238 697700473 998349540 733481338 889162530 421993005 986508994 713915391 806482069 119579562 746889064 487615503 605504607 90866808 428171428 587266866 708663132 177795639 995380931 391212267 792762490 345820726 434093240 168780550 199435397 235543795 814307663 608166822 702292646 774628829 798019431 609871380 678950287 349951926 566077587 474048123 571851887 624870459 849959449 176477878 526059402 750092817 888817705 174923251 550303833 25057638 974983893 30679584 88605263 918699817 967539479 109214119 940533630 777436099 880401173 368772400 419546145 311454515 661548729 225421638 368128056 425122657 741914801 181624853 389126020 409287078 989910086 647181477 921764597 806106962 815111912 54708560 642186802 70488365 690213543 840319486 898777429 368754534 848335798 547057079 907567377 804827919 979527984 993525014 996970811 319925097 392211272 281226722 644505402 758137327 955362741 444115634 589520934 431713219 584512041 319660618 533184881 826512610 880204877 727957031 860006987 551642820 627174702 838148362 888289189 853759584 968002210 728307122 794949243 348837772 856349149 89944409 616526998 596816246 991966845 957790442 986817296 290778034 890005396 662146496 955211464 776548271 798058072 5641555 354408376 470891084 906772588 614538140 737274674 159020074 648735206 134629238 245662544 757421778 953006856 211748209 935505534 220037255 636666513 764905526 904041082 608121884 990053873 97671090 139632377 322094194 731783271 405866556 408748881 21058959 595109759 815974670 873293961 541365968 735574392 900148373 958020148 755812215 828109681 114672575 556894822 973088577 981973291 436902310 864805641 220073769 347622145 40219794 478340549 128309011 174086755 784390706 897496526 856773416 967485884 469834142 721491712 890012637 894245653 850635621 857460884 810623265 883299921 481564755 654176990 79528739 911026104 523704222 801863539 722843448 967609905 61679928 546611926 106027179 291605318 657448951 811147634 407739633 836421321 630787170 877676011 56348143 136790259 413785259 614377609 464847823 695827316 989580579 993755884 566283761 918204868 647926860 773377804 970984333 988394864 22011477 754679956 137155132 916740303 205060397 719400728 989769120 991945316 907201846 915602882 422283781 720095969 24956527 751069507 583986384 647337577 353398381 623065090 215529863 922026328 941391715 992104461 787913456 880629254 280555234 569406015 903995041 957164288 377155427 981307986 957521115 994931831 126793428 169482501 333290550 404742942 842992779 905486961 572413781 931165037 837354776 848838869 173943946 793742218 247338021 977367877 598654166 721668945 762326557 766088594 16248810 20645635 239921224 644801276 429984749 743133137 92203428 526676241 533121782 603210375 530523997 837642864 59333653 291937056 64223684 540511246 42477263 945180777 614553138 805323202 545597578 819768890 177662461 358626917 499649010 995283989 71597842 252509717 523769564 994198017 726174870 963491205 84680738 992406742 365505587 586429991 710769308 941262332 622050623 802084159 467583486 702623215 370734773 850230751 440095928 708093171 175077179 498392994 934128106 969850801 320150980 466257298 821972075 985270294 163907547 579111333 346276309 493549142 372118576 436166402 47014406 548222546 205893061 649220075 486947288 511849121 185702699 812802685 941070278 943388983 85395609 291714074 436956345 762595905 544136169 552330892 505832685 696423342 490406238 897545341 925287716 926399395 471491652 996080837 237256749 746394534 866334607 949394574 459870235 608854649 158116898 282488303 110369292 635501383 746926178 930966538 656120637 697278830 424506965 857571184 116471550 933240256 85112378 353145382 776803686 845900328 248823631 530001366 615382420 769759995 848679326 849072014 436918392 597655519 59120889 650904041 891304904 907952494 845187762 912951583 362503544 900326464 381124304 423930592 50186137 85878747 375045123 924964892 74850354 696911850 339724688 547092205 982674073 997802294 151770390 813343109 440382164 929956959 16785332 919151628 410114425 570361513 967292892 996416231 328540696 798168080 189448839 891560508 707804226 963106084 390803503 899278172 73266304 89840432 499591925 642896261 709647611 787241362 75215103 833000405 362644865 832681033 353588815 528201840 953203733 960105412 638821569 745693833 900878413 919739109 347640708 877816273 695423862 995621431 516746590 730863055 888905301 932733367 978880570 980645410 938319958 984742452 783656132 930330564 784046929 955181617 204572559 695192290 757840629 996294740 84568769 272830791 528744187 934612480 956724721 979390119 856453694 861547636 910986103 966622930 237111854 502592268 204028120 935574703 65257739 368375729 502021230 733835775 747945998 834952223 481044772 824639046 491859785 799713867 944760443 994084193 752033128 809165596 863826941 888853711 177445310 991902509 544552979 563405853 359069067 573101066 248870933 492182024 930357630 988200678 967010289 995498316 340856031 418376548 193197396 692177273 185078630 327521359 950489543 952951111 635946853 709967811 784404148 892837780 200558497 684114575 110278844 694121392 280643868 305705325 935367451 935565825 537573432 699056579 165931378 593568448 595793170 621526760 347781547 434668526 27393215 408179822 208360862 521316312 595480288 734594478 626698994 910087838 760840415 986372233 532439514 663599227 816354101 992460192 343368400 675658994 824574902 888528253 611068972 818558503 861634007 885511384 506392075 868156979 898964476 904862559 710624520 815861028 777282155 970886247 582423231 763499735 688543468 737500899 286324887 993654217 911362422 934761268 700388745 768297406 216728661 572825344 918733213 927028719 488052373 709757800 459362276 693883586 600597750 798640893 660946033 869255775 977345609 990797088 394966537 734170798 97397750 340159340 953763759 986301411 671052304 792438349 174854686 320855554 164907676 557003352 831903820 980182267 948573483 957324544 846265839 908654653 297355216 775347754 332061 844200399 764717226 824357554 944560717 988476838 686381303 971823760 386291772 966150463 237371941 300123951 346160720 727761072 42320191 168408473 453048189 978001069 846365413 944709918 879353077 996212111 9788596 804611779 295589806 485805077 557500498 742192078 753848781 850627604 519799496 604392651 776667038 891141231 893526984 956069370 184582283 961315224 411863245 626175572 922000714 981261070 621772416 935746858 477858685 761849031 782231650 885396950 837584951 866284404 357049861 462553322 808705357 927086778 336075704 419855268 151326461 708889336 470120778 539184688 982254539 991460795 662286399 837897500 206047345 280159643 720058755 790040997 269927546 332719137 511826376 680850403 543261568 623332936 323850798 956078272 904477329 957832415 31549931 276143909 738418111 751447802 749089509 941759159 280456956 602962838 208826435 820687688 530966414 947837392 501594991 678126881 10916277 126744558 426470976 797105379 412647509 988586933 384804273 901650040 936526097 994330932 419854432 474949748 239107835 879374430 149122409 605465383 869076679 881427539 977376632 996930220 80428138 225921372 297714034 372836540 282828659 692722038 17452505 561642774 194248070 215462632 940782013 970904872 652150017 960202983 720430198 882612130 632853144 858657002 837538343 876162509 22312458 410818329 231692494 397999207 657896765 866656549 463875721 750008164 314789957 442237453 74707352 779653688 74423065 810072319 313174301 792638174 487035683 678260935 322774522 994974669 520001045 839581609 377418574 657442516 145908020 787682876 505408250 634254477 948951503 972539927 606355269 720393425 217247435 912651065 72178956 897911473 550144792 616599685 799425935 835465731 703210325 980808759 263517760 575359093 457038226 923887778 775840626 829065679 247725968 308855074 462909754 673782474 740693820 767443171 452216644 754089211 301745947 313501533 484107226 565423773 164067187 714898524 338463024 510669313 89141306 886789130 203833213 549924604 34473323 540754596 403027174 478745368 202157865 580956979 263069889 925505681 679069743 968094667 65172107 630496160 910604544 996423403 297177460 484947235 301855260 699211404 287721036 428020925 878995825 984351114 201528166 713181456 557980791 781958960 426621555 894652452 840865312 864862547 343436688 659048160 176254476 725084245 849099687 958122117 247506535 689118441 531639707 812254872 95588944 149505404 519384784 800811009 53910114 524693702 672581519 840924374 584209055 790946609 435074281 840687768 47343628 326090248 90439665 204168396 997021136 998422126 927935761 928320378 804187220 814530212 999261009 999269979 744896101 978671911 896064695 903182460 232993420 640368405 320927128 713059722 304741148 395077147 298114490 975949238 185243177 708011871 728318597 766802652 743713317 882806904 760503313 838954824 473235105 554168582 76039269 749834496 427686224 503310927 563214020 971515888 215553138 714750869 778643068 994434255 262928584 457267462 350044001 597527892 909203797 948903323 81210322 687095091 428241441 995089216 400313278 659385968 325376500 902942902 340723691 476187254 297884814 705088913 473768532 705998423 800639734 879215334 205280832 805094789 400808672 684144754 609495059 771459433 791091403 888973785 849350997 861132645 509167861 728601639 249980117 353638081 917359467 979960536 171268640 377901034 724331344 990432736 792632370 821834609 847627460 923468240 712166758 854140494 642984288 949338933 225142888 341888918 667811450 693035688 691675973 983158637 417478387 598586643 411892133 571261750 778090855 998029781 26065248 317650240 880903962 886395792 526855343 675889366 200622493 582122325 689805239 855908739 739618502 782073336 22911732 131243050 687612336 690295506 988690245 991338486 603079199 831286785 819959783 961912485 945007988 983681049 131029143 424590384 412157587 582302724 201086383 877427935 144519634 686096739 108666257 692528713 87101066 339821993 2865218 435274099 194945898 512972820 985731756 998979555 959090606 985417360 667791317 744530790 151335137 602378638 40653226 666619705 853041701 931164732 192824991 749865091 171446195 333976283 252085071 780475827 653146756 893024988 798864816 988326206 288741996 991192006 343169641 691132653 788384210 849226137 517641603 764636024 108708113 366328049 37552383 51659882 109259399 909193780 150247429 423308179 50864704 734870884 709295804 791779812 627397295 935325747 542088057 672540953 317287409 599390871 243646223 567849396 701101583 727070957 360228961 389231488 922879539 991614677 265613331 306668414 464965651 911921627 347603438 399715492 464426711 967132236 924675847 975998602 237910695 985423751 703630497 720977860 838478950 841222642 523305270 663743273 220345944 933400928 501325314 772614899 96472753 712070992 319302907 352238578 370456440 916643631 372433266 554873035 746946548 872444417 94233377 489114597 410600546 960540624 94250918 300407442 94323183 178804399 853321378 954090150 106210908 854050483 980348721 994854887 634176917 914477073 836634141 988099159 400371912 529121799 944133543 967592665 575559243 775358824 600658189 940575933 947775352 965654796 259821667 645885393 564548583 814909229 470363804 979502268 276909681 684017526 996390606 997846924 468166397 495711007 754406412 761189255 550580845 811670181 83099091 244201165 111066375 666427098 713601206 779359500 934010310 983329275 251635433 310240082 494723707 786430631 14984434 35729735 537831567 716063177 776587709 827798405 473832355 960554615 507586685 801119561 828400435 883023752 196192392 391860477 884178856 915496376 577705337 625547962 656723986 665692353 398260453 475965855 257516608 440191354 741321108 889876546 890129409 982090695 166460333 281217238 725052826 865137708 117617359 693000122 773785068 796186352 898716510 967880087 737011050 988157653 959343851 965749125 795815271 949019015 669675605 910156298 188748002 417036071 96192158 962476629 198718659 818926757 9051857 285176888 475346453 615679279 737436959 822273693 493071457 699141974 572650210 843580115 962022693 992947397 65320707 590975143 116254981 581188362 17194714 53707701 266741160 597859785 782181141 816526409 204365907 334203382 343386912 481660894 197331925 924014358 889443693 897320009 773314168 951677993 655553073 855135771 757228527 883535675 728855552 846041785 381481661 695081519 958145980 971306079 352929645 712579530 362467801 493664070 466012827 711820426 730427670 763015083 649594888 776933394 609708708 799016164 323772700 837213688 421430631 810669825 671719041 988158406 109868632 737424519 52900090 482643105 156370118 572524892 133783397 545029891 783958834 855229484 768104222 891624807 460764380 473437140 494579368 810444974 685847098 830192462 476508869 909423999 448180863 888584843 817762871 908545782 302673241 459185859 612152077 883547634 550555483 910897373 283320057 588673894 798118093 972313906 794965715 892570323 229761809 371684932 954320885 988867480 346806624 499835692 730652168 777142914 407539902 967818997 418864778 604009518 653621328 815253680 968437826 997388780 960459053 995049240 113773425 570033048 837968064 916181068 413488242 961454522 39230821 267529347 419998519 726884715 367545909 998815846 240855553 503521564 898294985 900965357 789245626 914652481 962755325 977709939 284919298 991273696 307529085 752923223 581328374 987203485 796036114 858124542 424029748 798117172 765471567 926019415 149467823 487270542 882150957 994619018 919687168 944665826 138744315 781911904 187847892 991144854 821650886 854712077 39584251 693554862 315855079 384775536 634464458 719284836 842393325 948311250 63455601 440298189 616313878 925893711 734189503 954757542 434694159 615445394 326045781 918825507 775456836 861502642 773467606 805456426 159547510 510582847 376803266 944327375 625161504 988028314 400866729 765125871 732577962 791842332 239314456 457529446 547957789 991489123 275445408 551569292 399163608 656421077 453155098 648318632 85159431 258708599 61919235 598386483 679860811 902956280 758217391 840816302 997970336 998459136 33611172 670892802 130490946 833467136 726866061 780193812 78452045 732082926 646004364 950923061 404119748 830396301 147057797 683376912 428442700 501360832 298198290 471646836 316988136 941144032 290684880 824518353 241313135 815709843 885119689 992691318 772817911 877737140 83947200 953358648 41487058 104728082 692509485 755265517 393550710 715705123 806931927 817632561 794126485 980289884 820217960 946273154 919485413 921495408 722432626 933546924 867164389 919717288 911033848 928729234 272561238 967825266 3173944 241971684 338541383 975745382 464234552 862634699 25821637 69506379 925795066 964244168 284375928 754093207 880887174 881973154 393757845 485359801 773106554 816283511 350788739 553867654 822407054 970391500 2086348 99170522 344515213 903785777 170363765 691293346 935740900 965227477 350203453 530466899 795391617 873978165 412663327 416275360 902804824 975813494 863194868 963272856 630051345 973322939 429770647 458384209 863432454 895871323 221650451 361346826 431138010 677232846 376456680 961400867 315902138 947630283 90675147 564492692 910098056 934121170 148399126 315621130 326838195 413013156 516872879 657946194 16453234 450031438 724010505 858821770 311176553 596986363 711710917 791512276 348702095 843369458 322233036 437940480 680652963 898732344 349292793 614491900 359510659 688725690 637482330 947550315 492911663 951289937 617166052 991343257 129755737 380930766 345062647 967248904 748180420 777539725 803203004 898187891 898161075 950554099 968188248 996308017 386757755 566356146 497954467 638703506 961861049 996120825 811821491 902207326 271488840 932300390 428664214 638103107 191846880 265396950 364062122 881240390 45773535 126666322 424264205 979798497 923889652 995959923 369119647 708373750 631505596 740730140 8102347 545036736 383043323 575473431 985018733 998493264 312079347 451446258 785069001 930550845 929938045 992294143 724712266 978459787 216303875 958849859 553612593 630460351 499313177 815887000 526005367 876752289 228245897 859246429 378916204 388514938 774830395 864427687 714963522 988672022 339904632 361697130 876026625 974543725 840981975 993495039 739759563 837323911 235846625 609031293 525727501 604835768 136180043 684600067 146128430 821339830 981316471 992423968 918036351 986759241 896866589 961213429 980206914 997968457 596476004 977803770 577735969 694453435 750829542 843558597 288120409 354566683 541600873 830363367 638552365 947414659 774568537 910500955 166963735 348129959 719612066 887603490 678634204 755084572 584369711 746655992 323443660 533066501 985076300 989151584 98447400 423024218 592649536 951715325 911391039 991078352 29056898 815543734 760570692 854637304 512752810 712024240 760427756 882090342 279136976 308157929 179048479 511116654 456230859 871900150 753213696 858814179 545672693 982840194 39735467 286170065 684181470 831463642 523798150 609041603 719455071 834001151 640700796 908640586 778054358 923542690 289024366 926936006 142001501 962950961 957973556 974828447 784502423 882895121 53807293 485786743 751769328 867076241 299108057 338071856 61465839 479713245 959340113 992462118 451433414 539568750 603119726 755703006 655248499 945890266 978008540 980216778 377392932 756232856 553619523 626054041 137123900 980257883 371068487 829166897 300435637 515621440 228539683 437825779 926201903 982986188 45425385 777033538 683395777 920799946 698524025 775185255 308691508 755707077 711030799 918110297 363165312 423965501 296998211 386394587 187510524 581846390 651789991 678990672 245160460 546591949 514373629 876454347 596087718 672674692 315399345 996348142 960443420 996010748 506051420 830603087 94877205 846720922 595189926 780760910 797590001 913701123 852176507 975113272 206334867 990785799 958961396 977458055 170005003 923762200 76617857 754250542 125872565 485087310 891753210 969184719 923830173 966628131 209899967 958445554 810572716 906166897 549890589 755592917 283983249 886828482 420204254 764001984 838519493 908053987 946085921 959035858 396319444 632121068 981060462 989228039 359681694 384509513 225464225 269915549 237748006 826051533 773772005 971024040 917461344 949520904 794535924 853167463 159850682 527221481 511225744 623304032 716761743 846313682 928712061 983231174 244790681 726339428 831474539 840744200 14409917 294234176 15485171 550933065 384568975 879435371 351943887 545553698 410054829 958800543 664548065 778424875 854038711 901356925 885669862 992623384 748136325 989935921 402086719 489202033 304347112 790805440 869031087 895608538 838933967 840794478 391996072 776581362 541135212 851572297 698749413 957048283 19799014 296999801 840016628 998906262 608358888 614451191 396773570 697537717 733391451 792573818 558905360 763557966 383031479 818258820 982251161 990541389 207251103 653986798 704842982 781562780 786424393 902749180 1918729 698145223 461524556 847151042 19944471 903526157 882917731 946475754 998256086 998842689 636806047 963513324 11497653 83173404 314635137 852515227 964494986 972848774 333335600 954094608 395251413 403269293 191953852 719256397 927055439 977009783 53460472 70050670 814084659 966369295 295959960 910293976 736997504 999085652 785414171 878597056 922441462 977695695 37270108 455526951 861427392 974731217 418932258 831995825 766762411 862869353 717307218 800371647 426349428 911208417 132065894 701161846 204632239 475795544 656839394 940229909 611673956 688389620 29699796 390581397 208747656 283784521 837303819 884153117 431617474 766486022 850665178 916913601 226070252 922494459 316735399 673722044 716560380 876553746 94425782 609360001 811397164 861282288 450292320 648277503 31550336 198126601 80929466 848428372 387070693 392377715 407083366 746366711 456833791 593107109 950831986 976854049 201567371 753131658 569401948 772312417 32296711 533572327 593199930 841079954 602951701 982604048 916354527 945518406 17201008 652162528 401184276 989842269 99848223 118756935 357941976 872636605 763459403 909107968 823342167 997884996 211998309 551213033 335891876 376958888 126552528 562762143 161272692 643709442 98446011 904831733 103957710 272412300 960000404 995791396 156996328 301461641 104000660 742386724 300168983 931427981 888454236 905550745 15945452 634291613 757172163 811482267 667812988 801487365 948759809 956492799 388573744 854740690 772613522 785818191 950244457 955753169 104768330 179054537 806076391 899959291 645813770 937051780 367571783 528390246 630545762 809827474 101292074 609799663 68275635 782584994 524019996 543224439 974293461 993521693 424603145 820263849 290535789 982025778 455481152 771442140 957900775 997792583 72261684 653560013 646697977 910403018 337098634 516041268 610881455 630834381 191280770 930462635 6611600 797004843 846597916 895196113 507853042 814201292 102433193 194086692 399500228 714383127 360856558 705951439 893943397 922129998 798300391 997620219 859835596 973026596 715889919 768545049 89073467 721336641 326101724 896517026 606031420 945487303 199079475 258770077 194996869 639618947 134894772 708648822 486312391 512017457 602888413 747925141 209842995 301206634 184322390 320066589 631434906 845669749 242415049 704373081 857165306 933966985 286772053 352314705 792450483 853631131 305428419 986514057 503268877 963755224 455436991 950347242 831951468 864316738 579286772 870951261 394011177 640356223 905125688 994080612 38384128 359207361 970190737 983056883 785334165 855763370 788041023 797593894 922228303 925502416 388886023 751734923 804741631 863070360 947408932 992627006 422322812 749418403 347399770 866865480 558169248 624924502 258666614 701589451 167004799 673280627 858435864 962546408 468563293 469294860 763964037 968919385 937620201 992822670 666917571 704918669 276582132 484591138 59633081 143770282 691364020 999014143 976073978 978344012 713812192 873249367 122677529 364582706 371796745 876890347 659552208 978768346 625839375 749066336 857245165 995223199 754049556 966722928 157655585 896013759 301818508 504020991 567345705 598540740 600400805 917200622 875460213 894134364 686771218 895061721 143875371 466820532 384713668 389671519 947029778 973625185 666593150 897720944 801032919 897091503 126721355 352967193 124475919 939985307 987728126 997270523 685915878 917314500 48205542 896713653 640274017 913027182 617061053 962089474 901281048 993729688 819021054 888515522 29963601 155272265 791575145 827219426 104195010 960666147 230254504 891850854 569855545 641929009 960890185 982612976 917528620 930441780 127628000 636520056 350024119 533463200 431753519 819038119 652151724 930912405 303184515 526202731 68174298 856682423 629731493 776690243 936479597 971929644 237162393 726341371 476305732 601327297 41181531 56284802 403037564 542325910 460270914 518056476 299249614 496024688 343483526 359905538 196265471 690886553 482587954 613844218 305924348 462827768 489818131 579362178 836205770 854683463 390393775 923874315 816961812 919604996 697499630 742617569 989062303 997701885 449178927 719893307 796633415 936835685 289264360 306116619 162028500 979890162 300126872 639912173 407680868 431238569 375199022 411625648 979481663 991761190 774656878 860903560 401461117 737089320 861555023 995913041 40807810 975488516 286341439 520829898 427889953 823797254 936799038 937209536 238830040 384616601 633446733 703953619 25864925 349587537 209477237 710681436 459215754 479285320 318303987 848530045 729086137 803885803 79833251 620116168 144556766 243139245 688331238 717888622 628219726 975055253 993489761 993866732 885886794 969741378 112423693 904793134 848459731 946770014 457166831 623612957 349006563 503622499 613721852 633421827 793057670 959137704 358166802 671378307 220311962 405270544 209406876 636642962 592791361 933516442 504691114 747878927 968841290 979067304 471119801 929421742 304370872 813617510 207462631 245246012 61935162 521253748 429320185 585668695 963345521 970796686 428037752 635247179 45168838 351396323 746902162 858545663 415930498 535936045 462510961 705461681 612796373 880318414 243370127 657164156 901249392 962761644 912927942 996578379 15619249 904619740 992327750 994126275 233965876 392761388 755168952 991684495 86789026 270701968 9904364 910148268 834510924 903880415 541240503 666098595 883696267 885056812 446606712 716280539 845345901 864236128 339643349 523512683 218023652 239149042 174968305 981375448 754237551 776402391 34108511 419659117 240995860 875382622 796958394 849237535 212227563 638168922 950037022 988219615 914960826 944285210 466941448 775704799 906392483 948886279 297016088 994009221 422008952 594902800 442186955 684463277 615644344 624420240 657622660 682995855 455903914 781815094 306881801 345497935 550573817 559424523 983121259 983974344 606940296 688402009 630873945 778538059 418130326 661279983 683947883 875316297 945915645 962985564 114533667 960459761 810046398 935473459 730118961 754989850 473095511 870370484 102073588 805657670 752585374 775701929 680108694 977385575 923445892 976113150 293105649 383080525 603529362 695112099 950766385 993373050 955654310 996823244 327586621 603185130 314309091 854956797 255561504 725844945 876636205 993060252 330161536 922712442 658055799 958362179 626906961 923846740 649837690 943385436 816230074 928202875 959885406 961023882 37764430 570996002 733989353 988097574 464086600 466618943 758125650 986152406 628766828 972181003 716115170 878676270 691646814 905503669 974518575 982448468 795593968 825646269 763812295 995202228 513764840 911376667 110668153 644594112 324501376 848865261 272646955 863083161 741905643 948609443 714195289 805838500 982050520 998029097 745465437 990782325 51062814 100259367 483362451 981904262 342871832 623499992 717357998 777431493 77675056 936342070 262813305 451848078 996361891 998963881 77320891 293398803 347292604 898460372 459236345 474589586 294467080 540500645 41094037 799842140 70133605 479100548 998650774 999351459 560170226 844909613 501943749 894856674 810318287 991724644 555909084 614848723 973994658 990789041 440804592 807647725 256846418 477277212 266265299 674074372 671371886 825578458 119638451 525137417 583437416 963787189 728700494 985359369 49148485 204803723 644568125 902428180 834713741 990224121 58514461 101937157 977423059 987558143 824659708 832445700 798951622 847513381 22174249 517613564 260136746 847055227 194507905 726892753 366028143 532561024 538046824 797552953 904864775 961125407 190405239 213422402 920189260 952791284 3846800 459023423 608375011 953267259 348119662 992420949 40741339 880449084 100524129 584095252 78179324 852355322 950437699 952682698 122194169 336427186 226866377 870761226 685001449 701038490 652298487 707526295 757698946 909760849 826596604 865359883 141095808 558724805 86118458 599537972 887326107 909189778 899829419 983429019 378197873 958153583 975280282 995734208 893261574 957693910 823548323 989873350 872046998 957986265 733706586 781087900 24612704 437681993 311220875 994519818 285504327 661412787 640930864 918305968 178079508 738910676 66953757 399831218 83765928 773664201 680799363 703117883 566707374 954505988 245799744 420608057 594381796 599509476 634222918 918576259 363867963 968270462 320116192 709740911 870807294 980492203 904036186 964617901 9728163 270457786 579718550 844921866 811188586 945779220 16503926 243032132 260262557 520315617 74600848 611969850 877418261 908276137 814801955 982855474 500106037 919632333 600689741 823244086 108695327 599845843 95858665 499756778 318182807 963434168 496490179 961159550 381859388 766255698 952500241 997353268 270804528 704622917 972527599 978642452 712969373 754609153 411157824 992367353 985246668 986960631 996206078 996971487 547209358 669389629 284613434 980736496 346069974 929389138 349150932 483681072 595752029 933071021 419007244 921566526 726740197 759038442 583192880 935380255 466276041 940749878 87337339 581715846 605340601 759577317 339766106 486376974 487123699 738816447 802701837 817098835 460865430 705387995 117216723 277482712 901107807 993060591 122814545 310636283 947028802 958865830 636099976 761520437 547571648 947438334 49941846 896474310 503156548 725115569 987452263 991887083 269552007 900506358 929412322 960441515 34825977 302281790 655309933 875069423 344774009 726118082 869534284 891318235 531757223 857668169 356018398 951302001 716045514 982142839 526142159 871394644 446722757 778199022 560980713 659319692 55712259 57722768 938215575 943508969 833422672 884726450 835813686 844626657 762692843 871101186 85562596 306815325 242432170 493555877 857294322 871658556 108261883 891768650 13007489 517521076 432586865 577839322 178837616 513328570 267598488 567954335 577651041 922501476 223439141 460950378 705048291 942927999 959521389 983067464 715646074 948916532 702649759 893346854 812142714 866164610 50061992 785633236 74565788 974094447 6236178 852328533 106850720 559955131 72062480 967719359 442798146 544783644 140870307 342556682 878363627 999085533 922569811 946267482 566146410 592300201 63990395 632671702 301944053 502966781 194714084 346053630 797868782 857323094 120290117 732194131 705671958 820675794 844624119 939202793 770850693 930235135 180349758 903642259 242038140 345445595 54518146 110303085 833974461 862903068 437716455 784828399 766897800 840820616 586053918 833408211 3736211 363787482 296078203 841764964 467138337 715776478 118632021 376506861 446677254 746959416 757764339 789490000 903823210 990330738 427208277 998813753 70637459 709921012 129703861 882160235 364176600 624111517 674886454 678034310 582258046 714255660 881942748 891621058 254356625 867372949 174161884 851615895 816685742 912991710 460083397 586201062 70616689 506273008 156205548 174837609 785625729 829779020 830378129 993524943 230355953 245959445 663547395 777221659 578653843 647861183 640411515 864555054 413586737 647320155 516905342 744599776 310639840 763707476 531205386 930210886 735594702 826904412 130887958 198262652 256152035 932996416 108462825 803117636 207647919 657384906 567931755 588623811 545019949 604841532 696341987 763916618 120599708 580158290 14413021 476709425 510313620 979381362 929887099 954800849 541257324 843312655 698870286 971983632 271071370 989733765 834463785 915157983 58113886 870880694 16523203 795434852 936076824 961205656 173566097 331296994 537198753 871818647 686298345 819973219 481708178 623039675 913225852 981712803 767711506 842925368 61192155 327344523 265310849 715550854 98244300 304940781 559788678 627512767 459581986 893259399 522974850 609880167 820879837 871359548 99161233 846960555 340286426 653405159 6792972 6988152 455955528 825948169 101357309 603722085 234152156 373808823 942240146 987137909 105694866 312349194 784062129 829598180 721982438 945989629 322289487 471413439 466394272 520373887 260142970 559311147 948959021 976793019 844796681 872677423 889922675 928408114 556086528 961415912 46353304 776821993 995959943 997556019 221993050 805455725 512141883 765241809 725342817 940413057 997515829 998774047 553551129 728258596 635087817 991240478 465827270 617746061 396391351 819000818 183480398 830186962 337612191 587532585 228130379 979410473 419888105 768389547 548253869 922936330 86355219 577170256 534718956 635859146 697662942 923483042 220496692 277988785 814307909 922471524 93505068 645973830 803251045 918656119 612101666 948742786 6462005 316793663 203257081 642800934 636102327 822595175 811973534 822119782 617089622 888109869 415801462 426196037 860697682 968731524 273317454 406328399 101958485 982043053 248209725 661525032 936087811 955444383 802902758 870277508 264133865 871559064 699736302 965338191 284403432 991391719 194343094 881094809 252816996 466365531 251140738 767896362 959677949 981143401 941190910 964727317 245206768 403661523 451441673 542494402 450348554 682141700 989615412 992113108 906123505 917424607 788490415 823463930 766892776 809434320 711098411 933017142 898466104 977157552 488553491 599176448 710158211 917180666 373661385 408820177 756830971 907626717 546576922 847111290 336541191 828097821 493452959 626994676 240529019 869065716 49463138 743387125 910310485 942194264 780197411 922177307 134753256 859371582 169606243 733520374 880463145 921646808 756478638 795701663 590125151 970172216 157880789 668096379 469879516 613950688 814301229 965536816 220065071 268364845 826164963 865697995 141800461 878552797 493845636 530870341 767526665 957172084 818433435 952871832 664780754 842899923 183453941 682752810 367556601 582203221 764727078 926792709 323401657 342687017 403370325 437760290 346387708 833830829 267186896 968503092 882044776 895868629 933602698 944651079 405566928 589316217 236634378 845739870 33048726 215610367 785591483 945663824 444398285 555711559 742027477 838071386 363174764 876246817 576843378 843729771 701481838 704092084 558418395 947287218 201711977 340225281 973603614 994178935 337249729 759008380 753561089 909059876 739452420 868436925 345386510 522518219 41254777 904346166 310917846 387124962 316082147 833841733 30110570 495028969 738762393 862373212 668699717 956654251 831057589 962214311 739478086 901725197 349001082 627494030 404316081 827775375 998809068 999257706 558341949 569406924 110606847 374442376 577335465 674188547 386571681 866833144 962082404 981959500 196751937 515561197 875894860 986218815 880453912 928627096 185808918 626654980 567299618 907662174 160187637 659795036 677404422 767377415 971724835 999295849 490535744 721106789 515856613 965914874 382411653 864355501 395922161 578842676 659360573 965086647 541346260 601004415 927759313 940427581 111085716 750038585 31306587 724935010 628584963 859243066 868849556 985274072 5643649 276777489 834944579 962153904 488107973 635838919 4014094 255585268 521356274 555998754 551280405 873356609 348928404 766612694 213679654 771816240 674923863 940726222 943309583 976489524 334976273 989065231 212925975 582742908 921063763 933273285 351544773 744987995 701959896 861966304 260146366 543446365 428510562 790587938 249111223 712907411 398870838 750967878 598543991 807084919 263403116 771056480 369435252 371347473 671822233 736667210 377096707 418703199 557163323 938981529 15951762 258375230 437716157 839747682 703908936 872988712 331924933 590529612 475511373 850527667 577824083 948969193 941362482 976174132 466516243 669392696 369994402 740650127 587301275 752375166 43211063 568418591 31912067 351067486 599348832 997467112 523618164 836227166 481002252 767393066 306427964 893209443 691567597 858418794 46850296 109917994 881759141 896293551 660546384 866571948 987127758 990821000 281191924 964010525 193869128 240608637 511897608 764608690 548381844 586504866 669106858 706873815 228598933 566188955 735519501 746574879 111475812 144968623 359201609 479811340 73798020 129315662 975727439 980194143 604840823 713509846 326648309 793800415 5943904 932672139 605443439 808567598 223030514 578348222 950540442 951677907 875547656 944580312 144120979 189472984 775157440 857381670 121832413 929839581 481928979 865371413 483637701 962677184 797308127 918962621 749704761 807328770 266551688 783871359 979930999 990147366 236287782 632231357 855796827 861035406 869117801 870146632 690471487 886964207 746581205 891423443 928452104 970108388 329781322 991185652 955164935 971659257 367237745 625244174 304691800 417717244 178079370 639811088 369682809 616970954 946367033 978256859 399646400 678312114 148894373 545738394 118458310 743489916 703453909 890742449 408609487 756908066 222104448 753477015 473374764 505661986 212142955 708014393 555665299 791869330 265371861 376542906 190101191 745092416 973851375 988160853 871081073 972568721 974408556 990102018 271864254 604099040 955442447 985339830 881273078 927219628 357536963 682825121 154310744 742153215 149309960 182717835 340784531 415773606 407473731 769640373 949422995 981353329 364400340 926879849 201727484 482556249 356341950 790080423 785219779 969772484 546549109 721708717 970437100 976196848 492527010 663648779 12140416 432932810 900462038 932200637 488129173 805979667 646754407 927195653 134723632 461115702 575794346 850776318 614435784 661767659 550504657 904430849 586624802 707182661 684731553 822807474 376147182 747901756 673449958 768473641 700306714 881323439 411561315 431973990 939520251 992963978 600111329 653423696 311935522 798654653 379066568 833454383 775847253 856962086 70535712 98406813 118210303 325388354 358309674 844199443 919546404 981360683 236715247 451653159 329335585 804446996 374069098 967908088 604579835 804941375 469462999 965837662 122739217 490691526 606561143 691982535 203843202 905669051 452021433 706611776 609563889 913679666 517627442 883721543 526788064 828044844 162017076 758690573 156900454 821450803 863636609 864710137 428048829 707629825 926341728 950732420 244725369 809440753 910865677 911514214 858381438 873588842 212402592 476671651 241809700 819019758 917195052 994875663 687721661 837353850 273615334 707523956 107653750 271660080 67658582 317467023 292130247 665089414 153595609 333119342 440746229 577896669 946287140 963860595 462836699 862833289 29495922 243807969 441857473 920343879 725879536 895281948 816124909 869917762 357783 461352028 1508255 785813889 803729015 843063175 260645022 350390449 285146309 383995341 469856903 530580397 457046796 821995693 300047706 622757545 861553063 923208317 318904185 366498726 971061141 971300624 165164921 464503774 696231612 866018006 640866120 860513083 18321603 283671844 564248807 786571751 494095093 805598005 356201031 426478466 316315480 415332801 947830534 990011815 972595545 986958407 750740206 882095109 621424203 732270971 384886003 920993250 329819962 846474535 727353973 729857158 754649462 757549528 807248720 808189529 180138174 757164388 893463345 975515636 913914613 952448713 133531691 813547473 913350783 943746673 328921442 945796016 412721438 878986061 942573293 944325923 33195705 507959630 342145179 773423810 540418659 884748653 233756212 406852481 62206489 358018164 898847551 919297420 122783229 187681889 922895197 981793871 763467838 864592784 933968184 981752709 104774477 763059373 904318329 975091231 216216378 731492863 316214486 561412791 297621959 641422293 443822060 543899040 329782243 623160246 944832699 969350326 46171814 368927441 281901458 607367745 746555582 981707281 791046314 994630928 260914081 978398308 63735409 553379011 164646018 834118674 506468990 878128638 412701364 995947510 747839424 872673896 50318609 157539689 341414212 494180558 103538460 135510410 477260846 799699080 543762063 762746045 649891176 940760490 553433647 752781850 805907706 925836768 372963386 803516768 870449588 951402711 271492170 631622832 254381072 419873698 139244865 989190037 127319592 307098003 370315836 807146643 900473310 919591907 225351915 504711513 635758780 824363025 881435933 940217520 366114024 778860120 562001942 854022280 509305451 540180367 390974294 947388082 382091207 558875327 111740021 193253018 147765986 738722824 158052382 342929735 186804119 580335935 873296293 950859743 89928165 273700826 163166372 248562895 189895988 967299628 659167111 867788525 474415702 548345904 925135046 982579993 183153254 419508562 916895960 969750569 403075978 468945420 900021821 925608827 392194987 936726379 878378144 982436681 660730544 739333350 470792304 850955045 323899006 747409648 853225086 876875027 283602625 378178450 672212071 879091089 348937188 768300298 361008188 473732691 489056222 922761957 718194504 722141298 685190774 907103259 742950865 845370250 327522214 724261971 316923830 527072971 636601733 959200108 30070887 697927694 641170036 658919099 47245416 412800135 466455312 487842406 131139275 379723764 886055845 950403169 744141788 973265003 428786338 576699203 819688995 959106461 300432848 697597087 502839114 987923436 968184736 987678308 140733194 761190727 754936061 764240627 481437510 709538770 374576990 453385721 184224524 418128892 779523521 891531396 782818119 900209390 988057217 991571767 346714927 989884380 709281121 817083720 465713395 505422083 47168586 247783630 644122196 897292179 343825274 504125773 728173020 897093943 509137133 716001091 377765957 682594911 939225750 972644041 404817664 922903465 690724066 816756377 768743549 837244604 142310867 440940428 391306367 448222660 476397654 863571529 918061117 965595757 910594617 937969731 991746583 997657366 738911892 830009523 832792115 835658580 765720316 815085724 326362654 976844289 655698404 788249881 699953647 943792949 197410883 341952022 736456988 816348722 269267415 581357342 27381057 773463041 180083024 388236047 99680539 300748475 496149289 552979775 803102312 902566547 97935560 220454591 344186055 928725633 291652471 365262394 510931515 837256066 205544261 881872399 138570476 249291119 798390479 929632666 989078597 992152779 271313995 794391590 588770555 863657697 795702255 958927003 729323701 882777047 521457485 620426327 778760581 949262228 966737291 974084860 993769829 995073392 335648476 990892168 762504487 980566450 772827114 782551242 759993668 773750046 776978073 906612394 435040411 830628846 334690200 765983043 758310254 902694848 331815567 417543089 800515275 906097535 338314866 394380353 632560375 699242952 912395789 927251613 841511465 935306820 501336561 864143925 113418616 663185372 604914699 781978112 230345183 992263597 631443912 738622961 573577567 616515456 706163268 923470526 174402564 485608246 376195236 669403345 432505253 835988571 258959399 620959896 974103646 998719650 750304183 972822284 490847409 845548207 812951935 956431127 621867509 919690835 909351334 997734831 787561383 829231643 365041284 870436042 17767341 646238265 562048480 890823185 174395194 406266430 311936145 592084507 296677902 649263190 498912286 818694629 442438988 880245392 642448541 741558731 803482990 863460352 640053875 987704375 640740063 690680694 627657782 998847371 73329968 851645237 162531532 291431884 679019331 702908359 122711265 531028638 701422577 909471649 136937100 682125111 331156974 818932569 192130764 616028989 783937020 997026380 254388250 885115740 149155194 682809384 880391519 890421954 875757176 889084929 440513708 935926717 475531294 588383941 191060866 549739088 504645096 718805230 518229122 630070906 924203203 954654540 160261385 914357683 759058440 844941306 438580406 935550972 598165147 870263512 973749380 975476961 716141881 763398304 885306023 965154118 249978852 990003437 212549740 806209881 186222947 749830383 424264877 890867985 935744184 995558682 179483054 725935159 900241033 968359591 943271484 988854647 849500877 861889374 832200253 975560649 366139984 689928673 919878877 980675164 370523248 543846967 330898830 875920434 127840175 641837511 117023286 994176221 40761569 874866878 511572595 961864108 209425558 353634415 652066971 820676635 264834160 538625604 495140965 702286904 922476237 927318084 309135630 432070419 857799243 978243003 252664174 701803973 412547473 880237308 10505521 457163276 322385663 699339893 635449914 945916927 528803274 613230511 418891029 834186344 654635430 931558244 858004602 874810833 651429789 679261674 24343271 249639483 62663191 647836262 586983803 941359865 166438843 782105259 769117406 817601621 220391735 439121848 75717674 484394457 522025215 844118767 562747825 931848278 311721087 834255836 225755040 318820014 194951248 329759662 283811853 394962472 208026492 360739101 814645895 855067858 375218753 818293267 704460360 739728972 729891020 979758444 554836023 594648688 511968223 790299194 126248656 547988082 129561517 459459997 113924287 959826323 385806081 804591383 500629365 776149686 724834223 743673117 778300631 948920698 317101899 911670994 144386119 515391834 80276111 144188278 421534093 787843114 935510973 978355633 981466950 982629703 433418255 658538639 32574977 202981723 800875245 983031109 551410399 948634796 902401345 987626426 486997260 927272962 264099536 616261798 378777956 982138821 818619560 962330230 607500916 636289337 421449751 695050112 362067228 795534525 316603829 722529563 209227674 326540307 88560045 376328408 884916757 916705408 678717862 921492573 557602845 737670007 144492491 904967335 687989160 848643364 996286541 998147558 114517728 326992937 705030185 730534165 277730862 876349957 665024526 894960108 910114872 986853889 828079909 934475928 372291485 793901905 290523858 433370923 693195921 956718770 674943397 826771621 228320245 447843029 557922222 992472988 676517757 944457872 565521815 978839641 820261101 965854780 832629806 966818621 632216391 747798603 298952932 753325692 286751032 286872478 966680145 973890817 48397904 248713225 619195733 886264280 124397301 488393474 366453438 664496469 271868661 713332537 407181275 799816097 120689155 383840713 65256546 815767642 835778297 973850746 836402518 957553410 412369953 852424736 870249000 962211741 386168837 838311581 370448301 625789996 271557548 548241835 240966274 871883101 938247361 963654287 315698009 316835681 925561446 977442057 478317833 606858476 959187463 996150272 543261282 846274879 136760148 985140422 620996098 856062827 978076491 985158236 668695932 770550046 167400627 750985049 525728488 786395437 462833229 507163526 629269366 641031532 924637553 957154281 672856854 909006730 12740080 993331738 622904595 728212226 858346068 982569146 527601595 773585811 709668989 965191828 536339455 869942071 440635300 636518577 778909580 851394198 952886668 966645200 13239133 891166155 679866376 744994679 787848925 914766413 715264994 795393240 2658536 977354464 757726826 882458760 389882297 969242812 566263471 872953058 814650785 896407203 188531457 249929776 923790991 983019612 136226004 848949591 234534400 961706626 309772197 477028489 902665406 984442378 8715354 760149000 506184734 836768212 522061383 652512255 679351587 925199565 973155956 981991253 338052141 377860190 48243050 808109589 399123632 670886547 587529213 724989936 923563060 961569678 333240111 880059167 758278931 928230343 235068610 250876692 208832882 955218133 897147984 998765476 716086698 832208222 103735903 477476191 519692829 820737169 975683281 992047361 880283538 996093819 766963826 990396796 329431006 801400388 680091574 838585375 285664423 341210371 251870128 502057554 45405396 587035645 945004767 976417798 42515125 439507267 474723188 616500069 36711182 183535273 463171374 909215780 842973820 886979213 235371396 951543561 256477071 594858285 927402382 974642552 606684608 751931797 85622690 265573825 793424774 913854512 647865691 751646269 442820947 614724068 143292659 933957533 45329613 147963095 739301385 971742471 297184001 398290356 988898483 996893535 737545025 799813198 263159805 799445945 208878258 213476274 2337586 968827715 954246500 973830088 874524673 877285868 82820013 132390478 916108968 937813423 414451175 449815288 333571817 719828620 727411808 948630607 4138568 980798730 539308437 916730226 468887076 628899000 252614124 815595670 393625281 836529608 729003706 903534168 472523398 682373939 51769361 200071735 107911436 386985352 834864169 834880905 846198794 952232671 821715392 946819160 142671231 725420751 241078579 959135209 300813479 869255180 627121327 997965536 498347022 959408280 359433305 701292755 764714958 842033500 11509204 30318050 776320635 949281151 250980710 517878334 863604519 998369823 878130090 957360880 45813152 777950679 141582768 991731748 436400194 860406790 42295889 989325117 304842431 635755547 254846266 541451300 996218060 997079578 708690634 855469778 660245591 925187828 963255598 982275666 990562704 998358723 316196995 634468431 965164184 984698691 814386132 969193547 109490740 257492327 312920281 489789519 9387925 728721066 730647508 862810444 699393273 929007629 549340325 691498921 592631910 714884421 370897286 474001631 188905611 364858011 247062715 586280442 447431246 652585997 573506070 979016981 569280986 771716962 319738528 767707032 470811986 737296959 844233965 929179270 742901060 751570584 890770615 908416571 936374660 989467158 766326573 906975045 307628004 606352594 397114126 709476504 214538048 742394323 577272631 733743297 641956693 982468422 189543006 896328557 738770571 850866298 15973606 473543746 187173873 420749285 88320227 176923772 164435896 605780940 109197272 282026767 429111978 555487234 839190585 878321068 505593762 629562724 126215570 346996356 198649786 351916066 480301106 671705851 831901502 988418503 718445078 853044981 234995460 768761347 623012281 845641702 611867518 975646125 752945404 798056010 923546196 966943739 318332561 831089095 539724866 767876692 780209649 932413064 528062587 660005104 608503439 854113923 316254771 778636574 968556348 989816122 560047420 827717031 613676872 836556716 203464398 480892447 716517536 747368431 3718999 717733400 902702438 949561258 297976014 976951608 659902289 808432036 302815356 984456574 511252500 988552684 232068940 967843676 508225665 713966455 255617404 523334368 601204838 766164683 283519921 723890896 892031359 936187280 937446855 981670142 870697381 962078461 340587499 881063666 826100158 941454613 154658400 333513141 596050255 899018050 427901166 701608209 794116768 878832384 412314585 413490139 49039915 732986317 503831117 970824192 55448159 276325489 702173567 813446737 511215445 850019683 330233478 427093925 325172869 725734523 675302803 706548758 849875532 866591180 981718389 997098072 292003857 936554876 482569668 815538319 366967756 517456246 775421941 965503088 635811436 730978558 926984783 994235214 690797131 845838616 182716434 321717101 809891067 968994084 948710051 967240214 920192180 955288743 422443038 857205656 498266927 660514506 285949607 601575957 197752597 789535250 2961262 739879152 994208997 994794751 367447409 872836004 549325475 939161349 584571454 771796938 150816118 579734360 168342275 705328699 890073145 899233066 415744103 672841859 574875797 749123279 454356588 571837160 331509963 488245809 837991310 923325524 367722696 487494288 405834142 768101129 970541729 987462609 382201991 696596403 34187840 807816521 990387043 996587724 519133412 693982128 131987176 992735635 842859602 884459694 510577968 841674050 896429961 937455303 908492967 955689103 81368848 857704498 179139445 708608585 752399166 821386204 225722936 648283961 861558031 879816037 401199984 878071796 538542025 747637329 394569481 400922239 575940229 791515017 811025912 983277654 518106852 689565181 456005322 524430230 59059461 701118165 361291634 452546351 342811141 582573416 580720078 869018124 613681968 971745376 780196496 888134412 15866499 964579339 983905801 992970336 110859891 931854681 60503231 787702108 678005780 970743210 142934729 168296598 80232227 907597218 30441890 338610018 360265332 899433997 770665056 806947150 361196489 487899719 86854794 446233707 844841405 945481323 130228122 488869866 208204490 415302066 91905336 534206088 245759619 960272115 773819454 812741000 6864590 726671087 121659020 435465011 373516179 936564298 736327412 842950773 558206888 665695104 304571330 735563344 455327378 877957773 411167960 721482225 434780012 817422342 782984412 884573588 980146199 998628077 805001173 822466406 899838030 970242312 565832267 915900488 471940617 576128253 379501573 938569057 686840032 893243222 217954564 373647607 618565583 761836608 183471622 823984416 197547078 552877275 173627448 910804154 954045835 986414026 208496060 334560671 149654111 973784799 462620451 728051449 986076689 990940059 148555759 338051341 193139928 398438179 989355815 991873784 923053721 980294039 873502068 926827368 96524391 185464927 658828136 691400801 214537189 657778026 147488843 308232115 934304562 962777666 676780610 840353069 394635049 721997600 201273297 982184417 812250342 943203292 508405769 623386446 675857055 930130445 636632572 688837039 898863273 917215396 455913646 499581656 193348709 419735462 516254396 810831676 837605606 914719826 772372413 984918616 330929113 783476280 343478115 812585426 868144210 911581039 314300843 870965730 187702657 350317365 457109945 594662241 970364999 982164772 740307172 798045056 404816097 928151811 492521644 516899850 393582449 770457432 706067525 830566512 489929773 966141680 245474296 667560967 846977987 922572151 156645773 315378606 894447382 907365913 44757387 700970450 930821008 952340905 425831002 898764675 590198793 910190135 669028326 856118963 830816780 963434246 456401477 814174427 623240026 967673800 189642227 227765906 114705041 672229788 511828595 659820249 213849037 505536812 76881873 648145642 944303459 956265297 75182829 639808110 70237230 468086059 654339250 840662288 980376957 995502224 338859597 945592092 282625416 918716874 534725711 818349742 143256080 406794260 83246293 921366872 179749254 308060798 352648623 498655926 361130035 636774539 756134244 814848612 157337775 731419691 593577833 707280845 580246390 772166948 515845223 579549970 474483236 877718254 939567063 968000395 160632974 234721050 587028349 925401549 471536779 950011005 471578225 958373804 806800150 923977399 168037750 717195542 163712147 378377194 228740644 667902350 853409261 863348057 786538761 882740708 145027414 999197740 144416307 422358292 474364285 889325404 364485589 430216602 638506051 782665227 279186046 660798112 358942079 430755076 411367319 901920835 787089477 936001862 184666246 233145910 348500260 384632485 971360306 985748832 453965464 848724485 519103978 820352176 810390605 847358985 548766487 745021104 836533656 852886177 430357165 753890801 755404195 973229997 251425259 726687815 226651106 309028907 485269905 509527953 38540711 168115216 336047179 984794384 543634543 991554219 358071906 802766376 126704113 644515874 339465245 896042491 339305111 939225732 780723643 986447690 259208764 794378529 53597703 563612114 850242995 946909454 193279327 376415995 655682931 723138260 548990337 718434127 162597144 362057225 227060211 644956832 869605658 977701825 635956787 851394434 539935997 866164789 199297019 215047674 34344925 140587764 92257193 458713183 905987863 980809225 866557546 897183732 275711515 916060380 218339529 274542734 172383751 692499997 483054558 614264727 405474479 910461226 173139829 686986722 569045193 644626597 404296804 625774250 70000061 970776241 106003768 846887329 836571359 911775315 47877774 874599093 678385309 859050750 558387395 826461605 973800335 994281057 441381359 585046229 659900588 782250978 925151911 993843915 80019024 549927468 285897898 851946803 72151039 439130680 506946650 788318657 182318570 425666401 618948423 861700274 479549087 497352089 586118716 796905138 792675288 910308813 927366062 984765042 847054420 925541542 631667843 990989149 201898762 494473153 843445812 938461714 296868456 734896274 548016825 972850749 368535039 757385610 498238599 607300826 142939694 419811490 71400062 977196550 582910737 738511586 887309535 975676536 73168759 818109551 216706139 893541311 889722764 934221814 9048457 84166844 89781131 904716176 96827768 643356422 699560415 904435612 669478448 919986188 124726324 430544420 345448596 922962826 513627621 600751405 710275249 756004830 225252455 792814713 511387144 658953892 353049891 988160767 199026619 345769841 953000910 995602755 873231353 920301291 351970043 437545764 825513220 975154565 755962609 845360079 722254491 928756907 804036669 931831624 475750905 614389644 842349654 882397569 796937513 983520132 940433463 944618965 432211864 725019772 106254398 570444473 64937246 853368311 269231660 683778016 679442582 697142300 889488587 964940174 574334107 991260305 924922694 987625295 314485714 732961362 410304572 569402694 49999225 194575526 84015677 455598385 595966313 631271055 867992469 924450477 787537857 937421908 678221591 943798664 768629504 968297658 515675569 593187135 312422918 885557156 634659460 960525527 420610549 911464004 797582196 951522050 205126889 630943223 303188966 568145361 711675858 746326127 342662194 925818187 335135228 990953963 672799426 848495811 282968506 609107342 952541253 964486486 675410525 800510724 62569596 673222666 763148528 846297370 314441459 357397926 863284794 969134992 517252049 543710953 461417050 759303278 989372999 999346290 240545967 445773611 254274588 979290757 852933963 872134825 377181714 614365649 402397496 769838980 229081348 955007216 653347570 805527736 96871267 379457938 643973735 915732225 713235060 764319937 122043249 752730487 458735463 864777411 872178769 931474901 573440426 581645175 731406291 984741571 736153387 925158554 825802486 990037110 302555405 622626726 225759065 476987027 993847480 996577696 621777772 755270437 592584388 640740412 698339970 814343004 702412565 857958458 229787244 381587458 606220149 747290061 669473976 691226959 657745343 664583890 477851644 817195731 676929844 728316902 147360296 590605488 730257891 855170585 904913940 936025848 801904019 997425028 40207295 583307918 950239695 971620767 40376771 68429362 73199527 839735047 860635351 980536208 752756136 890646600 497272180 828486307 896977694 984661216 488617934 856611994 859415415 908045945 839522830 856969310 371186528 741341327 275315016 781318426 293141822 534429147 235616287 580841416 929140459 952019883 234779909 533273715 367877787 637991717 514732474 620764617 170199310 670734177 513437701 549804203 304216245 644916807 237827367 904199319 986673645 990413171 543236901 660660901 967859383 995002589 972765723 990911545 141648954 944406524 727854692 768325953 141621402 875783233 362401588 598986304 776741454 930503740 971315455 990469838 944746944 958706269 233598014 693501745 445626296 489389799 150104894 497882159 779519130 865901080 114300697 525822203 970338060 973274265 538278294 570782276 849703220 906456055 175011496 609463516 235652676 569064742 103326200 570721892 708358419 949799098 517149968 935140762 810941348 922090850 326991215 674822035 648245791 890387737 199769329 240758378 148006802 936640970 205850798 629815690 151049440 930999996 839877460 977142121 932027021 980398177 153747662 679206652 935587778 968851413 203510808 884238373 852999823 934900506 590195394 773342525 532176131 986784339 3136785 413952966 880714728 977415625 791797000 872967460 99435201 628703826 230716873 973919017 232426491 855566746 262597195 992692625 50411947 571325159 122987328 511408811 638134213 913281271 101311785 566426174 205561402 452187414 818554708 932413126 510679009 986748555 598294090 730466335 13499029 719289953 54593752 138605853 735891879 786020620 443691577 494029421 124792327 258508764 877786818 963043918 671140664 829117021 793735254 825925696 350865480 805886999 238783194 777263085 249771076 458479524 852416416 940354043 579621009 960066915 778001061 837960723 367836664 436404177 27615085 192199301 254520488 600381633 573491622 954690471 469932140 710264594 978843049 989856018 66070151 937767763 614311259 676849646 433685076 951895497 626461283 771677056 85518287 348268408 654890421 824237908 949526286 953074464 17003857 948292049 525056642 887460157 643111687 974886064 395765008 718620746 176746610 347762420 272437584 636385225 958300578 967883361 823793241 970243469 879028333 992613380 266405371 630349700 577240881 817284405 312551468 863999301 512213405 752537343 508527390 703184125 832209762 949325833 833431773 904845331 986464755 989719901 188094131 505790589 854155087 862453808 958015158 981307807 848596570 873744622 33427966 148066500 898946693 951411472 245435423 951700945 425152146 709860466 368051161 603613307 44238803 133187574 519927265 804533212 796303734 818687133 670756066 764620278 273260617 616040558 452588800 840872292 941869476 949015838 223935545 314277136 393682817 956191859 358489532 484512185 227437382 788887437 597977899 668041494 290650272 961407416 437434563 607765823 775165471 962419672 583450228 920849775 977047561 988159520 659428431 740909425 972368449 989038413 71611361 301536540 361832877 821565756 751243043 765869676 883550184 948397205 240971535 326656200 690991936 817339765 927557682 984672208 95589406 138614591 28161034 936430750 283816206 474585544 105652132 128618970 286212415 807811263 187971354 358262771 851230240 962408821 545712874 811912716 736759823 760144120 204272690 443388217 313422200 940389471 501916765 856739612 297355295 817844670 552099463 960400579 171126934 650431753 986027623 997733717 817137820 839086405 482701963 924339147 53990238 442672413 344221330 684729548 653255797 934399910 425828189 752645543 122027122 729850111 440621655 509026037 506656757 745348484 908611968 985243709 550506302 748864810 247417394 300832076 817681399 966328994 913200781 954654770 816161326 927116499 866454885 907096098 39023670 282968375 573049520 634516205 885885317 897081042 357091133 656067042 426144470 566766869 844875445 997064193 152910125 501300082 448883583 665048024 152124523 604566116 857831177 897933486 212125480 990141787 366074003 580337251 387876967 531155567 818546785 983193588 869508444 945002790 358400753 455457776 903159797 986908371 201071909 445084026 749486177 888216301 178987739 823175622 450493376 984698469 407190012 667311878 853048597 854034033 868003108 889383511 845614702 854168845 197045046 733746911 33172157 71324017 620714445 698508801 722848835 754818022 499067351 666575745 282695944 700634948 610104221 826769381 74113433 769702454 434846753 942612625 97067501 691262201 203871173 657159767 189068824 843485455 182957782 263630282 162674967 260489438 194719584 328158223 207037114 349131424 332407286 539682983 999236547 999347497 63638522 714759954 485049223 879894961 437375213 498618102 90007172 948810720 446301222 539364806 475437737 962836232 853718122 897012531 248313620 985621331 990185801 998026600 123219876 919382804 622732693 706820133 76916716 668038131 975234689 990737647 284368012 304552863 927997217 969760050 5510835 98203285 729324832 926003920 545320872 893055365 936281125 967933592 354106044 866248029 24589649 455972959 973521128 987202138 155353463 994134668 638345913 690835991 228346290 316652680 716749673 917160129 747746540 822848921 934759263 958571462 106260445 587270252 781729707 782380840 426653679 435608703 86843623 970166034 488779479 606646493 967026146 989935644 792021790 845055323 526242703 931702304 823041116 949254276 378692222 802572392 507543617 953892622 791768679 943277556 136701109 929142909 742667295 972209990 424331530 628911699 27110240 897759478 83903129 819457517 801676967 807889159 565406575 917839872 225706856 266015742 457164889 585049588 7310217 863322933 164538431 994910180 299142694 945868145 494410882 872057310 416455369 986317583 657042219 922261691 146313643 363458643 958387246 991705593 414684823 527502104 378292929 727055110 155243558 173009189 833934050 995291401 258718222 365076615 855994895 884554970 764578986 987970816 482715436 531145060 46008658 394640776 281421861 350210397 246070972 646602748 340857464 467865708 76669223 515604537 679169574 706180831 298837302 904668413 818431637 994704630 865291689 955591320 875574790 946001119 575638902 674429709 827688638 962213608 404104526 703075331 848812219 904678180 197586900 208359156 809248024 892729903 872587078 873030288 330221248 518301501 883628528 889872518 792037181 940247525 227516647 821216287 204533239 517992778 371685536 770722343 563103505 707255091 629343959 631563100 48710205 836890201 12979861 693695862 273731145 446374549 900601383 942754764 571968612 644605721 166466764 855069007 689287901 780622382 271501722 333576928 579875942 909416195 519166666 839408391 222881282 711172486 979574533 997686108 397506707 977223818 353523832 442762243 319656546 896216228 619854429 986732506 55852472 911028067 399460487 917435958 392847278 721905702 710746862 897453194 317633725 446312614 532129658 998401433 181353170 215105653 314749476 735349356 24713462 712120047 150135173 325210545 781812163 912814907 99251422 423959318 208421897 987251240 283524278 359618829 883608861 890345556 48980544 157036055 519689735 998445868 120255232 132128783 2550673 736012384 423445371 651727847 684869581 972373852 373374945 973418679 571482419 606952234 844081580 947884378 519233900 536101731 278012578 400202395 739315447 789986722 945121185 961057369 436118436 958358756 803844241 915994329 98066943 516577967 525331165 736903154 835560639 853582878 759116486 980719455 475218393 611073881 782632386 817654119 610226323 798370974 183806090 648743678 798621243 940962202 718841670 752279826 650387412 897941944 975376067 979258346 6687065 302843422 485936121 976548577 289189215 406757851 818196783 989497069 144806136 183743709 442734510 828822891 204464704 596305744 802972666 954349090 546112608 752907470 111438147 396269242 185254951 228396014 659552549 787369473 431002732 973120110 753223103 759304934 542358149 968614441 554260820 687782414 854966588 960655652 791353539 838735018 527872391 556115888 36912398 741096053 887689869 945473201 297210546 851478894 986430033 997953657 867696679 884320933 53946949 317020912 807600934 827170517 62040985 542612226 233678968 784638524 49740100 223175452 698064997 849983770 885482187 955301385 380603386 780214485 10406538 362251946 790839783 825426986 980541715 987789957 325672679 399985851 328024991 588458180 206189774 372103694 670804319 696479423 629753804 878663366 715716766 837979233 68655024 652252066 992028193 993930325 149526397 572155759 64862062 975172832 218159933 671070416 318100260 431318500 89335286 242772514 465559414 734264863 536406261 635665577 400261616 812550392 630611015 741224634 236562556 688494984 499457660 546542923 667623298 765709455 482283885 989142541 864372218 990832604 601238594 754230647 564421786 784469693 793608566 937427241 599811969 841854565 468084649 819012333 561630830 584045222 398539755 787696872 886441131 994375350 682630157 933722600 39007870 764080575 305214931 483448436 399239512 906255377 896261884 998566652 397985070 674905654 361071537 841165101 673724546 831359821 700939717 873395846 958373062 981774910 433737496 658408305 970278799 992994739 651464340 829017501 782058371 937366213 321343219 459198742 481734377 518967961 643701714 833344737 157011251 481759547 887505174 981682162 352325737 877104442 696884000 787540256 183892341 347843632 835686194 838573429 690641803 912872919 646863714 678565826 60152331 791853152 230373888 957929518 715187594 772542705 853570374 940691698 57486243 190177942 683237634 933595575 948352386 973695949 627749558 978595952 740020211 994351388 425943684 854417249 302780766 594720865 597176030 843942325 186793057 625564500 377479750 755143741 202788750 246866876 685212223 817382254 345986166 747629783 281251167 347131729 927879222 961631288 245436612 655368417 738078404 818416355 340852502 924454546 716557379 963392884 566503655 588420785 858816816 937152008 785875589 953410886 965886545 986058221 375551269 674666617 90309825 944752025 335626637 853447914 946495213 981057298 141840549 972851594 517959119 981404392 939254582 953267007 936787626 978122202 345137271 776037198 979207483 988913320 337266392 519247330 798098172 864836999 942869646 989286664 46859031 363529872 10665880 553580596 934302946 991816794 826098698 952361316 820520208 895653549 815489555 882180066 943786548 974131770 63976052 478943090 456933822 640752845 967010390 977253098 679428682 712762541 476527849 996683381 990688641 996301317 810655737 996483893 455809315 492712456 302808883 469845873 373746499 601819250 763364053 914946294 55918327 502016251 488398820 646327204 743757778 846082039 214579219 540728587 863517278 893456738 21077792 917406280 288633210 930464955 504243385 941546776 904208586 975218295 598231295 660964743 568330524 734112586 706104371 933044613 475184690 980152590 317738199 718598200 580135175 727343654 235718671 654681593 632188649 657731296 440799132 862367995 892495942 897237175 174737453 234842658 915261809 940602237 40442054 390731313 948137328 983647049 474801970 524014425 470667675 921104231 291704830 595464246 393656933 587765980 10151046 239817289 788747441 887026968 344701867 584232310 735526426 991422933 600934722 851713382 116276223 766095872 2086521 931317213 387946929 516142380 34409251 954182814 644930203 726312141 935183826 966064644 477834530 940055543 79047869 703855999 725086905 849349239 812938558 907993729 772245033 985199338 163038743 896730462 248361723 426287765 38120706 451904619 851404427 855179911 907759676 978690451 247204098 347516130 933309025 964678011 181543687 498087068 730328552 804289102 823168688 924423518 112084052 116095514 56494311 857874771 95561511 896106467 244813517 794195705 130633214 540860264 1286836 805302688 478505001 850532295 54247583 690074071 403824543 678220785 188010228 407905236 72211311 233442637 527955952 923912963 921863139 957319234 352571259 863111251 220753680 907503433 910396332 969729632 321695402 500336875 724026522 821174292 935585223 949143213 392360880 947881690 474473870 879161557 765872919 850290719 827336760 839174411 515500241 825360667 150477426 521740353 488934561 702942329 329653449 446744373 467926518 500671109 368601311 542776559 651941687 657256463 609622202 853904433 445829625 878424987 1635390 296792662 348758585 639321322 353399746 475607874 903291416 939152347 72522302 541939583 973225907 997415714 742962659 936851538 905984511 965812294 28939511 974123856 690328429 908781015 766548307 851639512 530649397 812880993 578827994 850069080 952089308 978678135 4884945 903407953 629375602 640476691 540433143 640065161 596793550 692433850 201477676 665862150 667199485 722879896 519131591 699011824 380833719 880552932 596788831 921368800 807743428 994584079 370511091 537445316 561574711 889016638 448313035 782205299 926794651 996192235 772810158 829058175 760924202 797828042 340441045 603694107 664325249 690017476 515491696 964483090 308218495 808004310 876977446 975642006 209713114 321177396 176767538 819908184 300787598 659045666 252368185 766525414 412460016 553189461 387148350 566224331 646617121 838740395 478689075 726475906 888249793 898655190 658306048 947533885 145182438 502343567 796070253 950165430 801503225 834859385 389776853 791232795 783288504 982048310 500238217 516817794 795601774 931370015 661865466 904291985 264709918 856938016 928496265 951231822 213462297 492675656 8750310 260985174 405956832 734191024 885681263 952818385 10824061 534337038 693275187 741611118 966835699 988427536 487150545 765244320 345779597 464126937 801198540 808370839 117931286 612006516 789201745 979957489 479426540 543609959 522362984 841139138 687403689 875665875 101526755 586520801 523274964 733348358 785997386 955997626 822662934 842445559 858692286 965476425 297011459 904762720 337869239 667699988 908554161 985269469 428303957 594119192 586209917 621914379 931039745 965019279 980402631 986723742 933212831 989259923 106933627 315926039 807992903 967745621 605700568 973368824 51272162 235025796 672049310 953186558 188402972 295091898 124587703 894485493 789202566 940260878 127628198 902956481 968770233 974404805 498784610 711685205 636421149 953809841 886389780 896679129 707729085 769935550 846477177 963594454 966301685 976311321 614410173 789472153 850772840 927464214 558852348 675570280 307123463 440459225 782611870 887440857 435071367 441636869 522224950 585201682 492997629 680340162 987444397 987875275 632022859 987065402 350916508 422904087 457050097 888521636 989088022 998608973 114532143 490567421 645763214 709605910 815049673 972738328 212091057 289929428 417580574 728277156 45842723 628145784 149766781 988629424 938943900 968523913 640324011 715549082 678468598 758635584 134484750 252077320 587784053 801267489 252202431 603503367 456058155 479616550 933943538 939685421 613518153 976636412 799159713 892652396 169123671 355000106 448080946 535393938 508409766 594258130 141791496 848813346 213555296 464394512 391432510 600776895 501252789 708203705 600364414 688112722 245266814 574528882 510791025 611229866 575260564 707160219 28019636 660826721 998890120 998927494 388948353 647971422 739758846 791377402 17223358 312315283 674137420 739456232 994623085 995872362 606597589 849826903 134835926 647417745 846171964 965164480 573216990 640497698 481783979 928520532 168392417 758842417 781317520 820390139 401529923 458781377 995283472 997882287 864332869 936174230 238874225 642468250 345383846 833666184 292888368 717995137 100245044 198714917 793523135 893380722 958574562 959353534 358313417 550981208 557259951 691985557 673002267 961681252 233755551 528491514 454990338 583968486 888607903 932962848 658853028 917900568 124068371 309107593 373952080 963189375 307334240 379955941 599864416 737282842 643556402 751050923 485581728 867445855 451553053 700616752 314838035 368238013 179114465 552177988 585429128 884853578 573721391 688385318 986616154 989314551 520474943 693747266 757604995 875167036 840830371 842567122 505514719 691977012 467095009 661830877 109300253 751211862 148181652 547852398 930633354 946985787 933219911 981616081 150362254 367196408 855207930 874426529 606524202 974366972 252996546 352794113 119339245 625182369 834796172 982907431 550692932 648799663 974367698 982896351 488002792 901825652 949889665 958380896 172439719 778716432 562529521 640705551 344865563 948152177 868399468 957073550 73910868 89017562 338893643 838958211 256243869 659085377 444219620 911759323 874646508 977010862 794901686 805321145 411877011 618595898 780296923 948324775 375082093 842897118 333532297 338757150 868871669 973416938 109465804 139656337 201467661 606511284 339930017 522261872 347039338 839997150 18897180 303023545 611082155 790609517 346219504 771069410 156665019 804117825 467180429 670595161 865802824 980024640 831430509 894831637 11600362 537206391 898287201 910795031 70158279 617487656 969084626 972624846 285587534 366031972 636564984 848659681 905382990 971684750 359752853 866071253 598972496 904266855 418656837 518327218 423945265 875588139 502939820 581631440 588413929 703690293 119393093 681228698 249485234 410087270 552098025 602826360 145657288 345898920 350065735 425366725 356812299 891504694 2514266 476590502 458268752 488645066 477068204 508877404 829546259 985675423 193883447 519977315 481199441 740660842 365372077 474969140 917913530 930111034 400731785 635598248 55664314 620309580 716776788 824804972 783720322 786590253 683028214 811068017 178473311 812539116 37201149 673217058 353217621 427611796 553919347 640482480 712028271 823409975 503746355 905562557 270653468 571171037 606327351 861562433 835317993 955778910 942614779 969081909 140041184 763024255 287816585 776055004 822701511 882588550 807599615 904316583 633729504 826357842 500774705 800451826 489692732 492334170 273164074 601212966 598637955 729075240 251211839 411315001 80074206 581709578 418484409 564260796 240868686 462636087 208219936 833383871 400328466 772698697 195194347 416714266 389882313 732167559 99355191 108536191 892023128 932145350 393047114 618782878 128829936 835680594 931701797 992439859 305923785 558952564 800805068 873757403 899705589 906155750 247718074 343726822 644904273 976717970 335400952 763153734 537563159 657735921 660421578 794478211 435926965 863156776 330941827 380399195 473865530 828992978 590682888 960962214 648532068 721599047 931433205 942622136 350179917 884933658 85264500 179922518 263173158 362300056 58181863 556162363 693562956 921634000 901772264 969400860 732916987 959842682 300953124 453973948 760194461 925647469 461409253 847006288 35088629 720497940 105337914 416086864 64360796 312915006 453770447 631849172 982675170 996940213 158657344 756127390 676974777 880706248 179910550 496372693 976256518 998609041 639459405 901515849 784430634 885538200 260935275 798301318 374185060 762893572 595226804 665647147 459009001 846005024 628155115 685562076 923487602 935185498 140141576 987539179 968291899 979167354 739662004 827260023 770951154 808657822 352495672 808998606 759503881 887585933 469109693 819192722 960355591 971457879 547886474 871801856 569678927 667747300 409883610 972128874 3286209 644734540 976002729 978171675 872250199 970730928 65139707 184554644 76654015 388282468 332629212 380028816 197168929 325522918 259704489 787432299 350313826 513816679 324756689 786276251 619693985 866503248 601475213 641432399 962896308 989534558 148946241 497198738 874067211 975627147 336201484 987859027 78365297 455582453 275429728 307543923 808006946 979207469 692381930 995468049 513688130 770905856 490890641 702889766 184676983 864841297 839294460 871951463 829530614 873123273 228447203 397620558 333469295 554373683 611834348 948430864 490770641 493777324 292542403 882795211 930252624 997511054 215244837 361815075 576615992 974021175 881042208 945037807 751433191 874500598 688011755 884996642 248521208 595347856 411913557 527039269 285106496 308790339 418332837 456453995 87803867 280235534 146427177 214911483 570338177 914771103 809225224 931552788 40401454 184020194 566077815 673456731 604286104 867092402 788739170 835866990 417925680 686802966 518492809 783380348 919395645 944252313 375719998 562126910 971570772 986375538 733207911 900533354 649945304 719538738 458703648 900815485 381715128 474323373 415048562 996609885 990400605 991394491 824249495 952093166 374618932 699350262 524280233 575524226 866861688 895797983 288560540 643557098 353999361 797674441 374150482 851298202 242132917 668656132 8010894 830051637 264201700 953497136 722975596 745214047 696005936 971238317 126918947 796765528 985470301 985506921 439646659 508888468 430873733 564677131 204633689 496612764 873235614 999047460 922291910 938723073 810604232 949887600 939914392 998201211 743811509 786946535 595540839 973340015 777899124 950070925 588386016 600511300 257761412 697448392 473240232 572906768 613356828 991207509 58133632 578022915 663012666 800483936 650750032 727781679 476303345 613058507 549327565 808027249 351055671 956028093 801126060 915597439 918193318 968860700 459372064 909751525 534775000 822605348 581276952 773182420 970809949 987547883 919401642 976135789 42402545 43607638 447070277 544173647 948642367 994818185 16912877 475645548 458577722 621448656 259112867 370991139 939338726 973063871 746788953 985219217 120740208 321953204 896304481 994894349 63673919 625219678 905987441 960703123 125928359 964325263 71574024 98959377 64933970 736417306 863012848 934341131 953011464 997800061 270768474 320426495 252218225 582684083 739740907 914346040 981903300 982761407 487639026 619294824 200683374 359635302 989038284 995994229 319966652 654844292 785248017 961346234 841137677 898858375 809634102 869544540 175493356 596411201 75685016 575161676 78391963 670364064 48155501 253116257 105543600 200610825 44748693 168582928 586677697 669161899 571462876 947153089 946638168 959573962 69285369 872348394 768852294 906225228 491853618 898230495 374458015 879586462 102626673 902142967 350887419 897741376 105499562 757401359 745020828 957740331 837659406 898586971 161921584 824176321 682084718 697859221 624719866 712235554 560136584 987289556 384855926 704076004 194886907 513483993 383744569 666648669 868817740 945538717 548910203 619798807 301526904 805216318 759650515 971975730 111099939 353040008 21154436 445517790 615905671 735886741 569354354 592204036 636511558 693576852 906292175 958007448 642141919 770478342 36354378 96479183 375770538 545074017 895805604 921903756 23671618 324251953 724721486 814403954 119101763 541882099 498260699 602080357 882483713 891356884 977840538 992994515 129154151 973916228 974656628 996000544 686097973 934878701 247770965 985515565 100677113 533922411 836542969 904250488 504234497 568346275 178868396 458493624 958439958 977541313 854982388 948539050 86109022 302510428 241899586 386897783 972032386 990455020 1880424 547716754 359849586 659464686 484234907 799612120 466320818 681684747 357724563 462985042 797464329 954193498 118228437 987299039 399727970 510244511 689933087 914471519 648773624 720875202 405449875 905568254 425369908 632658161 866979203 873762921 881806482 977409753 743972726 770680360 858443338 914577770 644897762 747578714 95752099 855945857 932718149 997348049 316004097 898643423 964522810 997111524 43173044 259264767 927959431 997833695 241691814 756468893 57956873 384822894 622753989 979266211 172799949 839512775 317277685 906523617 277137773 934220156 579870553 849647415 961552003 994620978 911032126 918373802 274116182 778695398 318748884 390260117 193639506 728395982 850646388 942452278 206252424 256354468 755925461 867563537 67413376 399145983 870291881 994046625 866023510 872691530 927730654 948290698 790555659 985306793 904886086 931984212 947395162 972724892 616472929 917788805 33030428 129609063 866835385 890615427 454415850 602514986 503588023 891171105 134476988 259300806 648661430 728494957 921858698 933472963 241146653 543917997 317802999 920366179 534348520 605748676 707163755 970121825 679543170 851221944 592711454 693814682 170397098 299717065 112152992 619972400 246631379 667156167 320820037 894653761 480676208 983223044 453191570 896440372 578892368 792470314 660021797 897860154 212315540 919132159 221254098 546272801 663554365 834875931 341794218 924769439 361029926 541193111 735735524 866178347 707391190 874685700 219807089 457644393 473476776 509571942 609327688 827164050 942350697 998464975 442061570 943615671 293587255 598794912 816082871 940881505 748434780 826058356 163625276 647625313 757247353 804752280 940708919 948537176 981144772 983658915 231396773 859391536 932799698 993831763 846298041 919850435 421977099 754705155 353990246 391314688 147508450 909837008 981029862 997253852 563027127 877648911 831536854 835232932 903220424 928173635 536511910 952840630 325914302 409963131 277695144 417588570 498758320 989060164 952470750 978015506 451279457 664264658 966928909 991560454 964357537 984814163 748281680 967105301 215451835 287843964 768325984 845962448 767149037 983423729 73842141 472987884 179704904 421811321 441265464 454126954 655583722 771369209 603292185 758297846 845454183 925399852 203287092 334863734 888599186 949788591 716546027 724827997 900712507 935043667 296334241 775486144 899647853 985863949 294266491 551004962 542586904 750598392 580537779 762386897 657772416 663969579 455246740 734642674 506992883 857145772 460729258 645465222 929908691 974037573 855405777 956830534 99289450 129769278 919822052 973937017 466424709 921983796 822000099 828775065 452987101 685890766 370461009 565140113 214548496 258596437 665749296 779417716 403025919 715329595 506479214 668850095 285799862 556448723 191722426 324788836 765766097 778162885 552471508 764305392 498503617 837614921 346224169 582399232 199502783 253000115 128855468 439454867 503970886 786247600 661195101 882974163 852961900 923579810 458982351 686772525 357922025 673126326 518649050 695923141 740201640 827108403 444101564 894504198 626452456 911698204 401541209 779055273 891844536 958406413 443830617 685283006 556418021 724816265 451427936 960770153 749474885 992131860 944595879 955630286 640146220 979143643 285445640 557834027 813278575 976430334 498236188 923699012 1774496 804037220 42147214 158706316 162467583 466738152 325212163 989761084 473156225 860578969 27308342 741020253 456221012 916615762 152552685 345505419 305128113 778282909 620322986 708330982 632704440 938906739 227432373 369935155 709808618 934839286 633927796 892799637 646207967 776811664 806022095 913741448 982445545 988328847 535848115 802836150 544744314 613576151 101465587 426144906 282591008 868050369 560811677 691195584 843332617 867978555 771482828 993623477 944560981 997772175 633213145 888561705 400357537 421455295 2203721 273612499 551798997 867134720 624485424 788075566 335150757 394893754 300601942 952413811 765226090 849468566 767839585 881957741 958637529 963488742 295248795 872989717 43649205 905643433 340801814 914159744 885701695 934566983 660174589 761331753 115114974 133415194 485673319 889434065 109287588 538778983 230793164 486489582 581653283 631764905 541751895 859692387 484759945 774044977 571509768 703479923 687630307 915649491 28641098 354829742 886820427 987557905 862856342 985749323 650802561 709094834 255703295 872382314 504179330 822649675 648773018 841232223 126502711 595553307 314109275 607871472 789909359 897000780 828057357 937688075 539115422 867509092 325167453 497427057 988804996 995915167 465857798 866181825 417150640 965492279 385784358 637979778 619887114 769131957 69388085 286343026 637390606 870018611 931123407 951702327 85136542 566602415 715523052 967562427 164994084 504900636 202438904 808373471 838593621 938107869 370172997 769197678 724862140 919335946 999007483 999093570 589178129 918735719 641731310 717611713 581983690 839390806 239070259 654467937 339930458 594467098 512869510 989186840 808772553 836691047 367068900 839094734 741284050 948968020 374056744 430112616 318020774 906839543 155463090 492395194 590975630 911215780 675696571 776833313 778848874 854979909 70662734 510804571 192305582 311724517 478968420 985911554 980676001 983566170 105704104 299691116 464740356 760612690 425588151 925885288 338405685 770533945 100284526 609201424 90409182 221775884 629276872 670085300 272046687 412769796 192321446 906757588 637904859 797253005 483685540 562139656 235799400 846480981 990716954 996166130 103940892 484319074 550805142 789648528 359308273 861174407 789038628 856104366 895129383 917502896 83942995 547775175 73086952 162503073 889384551 913250642 3601378 710825007 590765614 909797992 588608032 647915824 844769723 967828634 132810367 253040932 177689560 763616576 538385730 691146334 239716521 457670653 252716660 260772255 94874123 654675091 786984045 999170398 431232751 538323104 249917822 942284150 68071198 476204744 862593484 957694703 217054072 535630394 966095340 983897039 535678059 917603430 111816154 790577131 658264267 728441022 714625526 714669341 495720408 831129393 378950467 897643074 21104801 77023147 486660083 823334079 598902944 983869153 654613187 786177168 134410428 185906664 934699266 946735657 466580274 792977706 80346495 840832361 805086754 946752662 43246592 468823051 511189735 595288612 201999466 948766230 970606875 994093326 840416568 932566129 100816752 509743727 771301981 834167026 257349428 610891708 79650882 435764188 978699392 998739489 514409299 594746720 755338053 997500314 482450130 782238713 462542703 716724385 385042553 588439122 377675148 566195367 796649719 959390461 621035354 680463852 797018247 843052509 115339935 589966220 345206249 897109577 245782943 688648191 103961255 399558589 236178572 311075556 47124653 860920811 551213483 646172398 638414848 769483673 581303717 613965619 490410637 843350213 462041026 923251446 807535053 807693720 805339927 838121626 752856283 861744400 14904071 643546799 671109655 821276808 112173443 586254475 280507754 288358696 687160086 713707987 813037570 963654120 855993017 942884770 213620915 695172591 711274907 818571827 927942192 994750106 472312572 814050229 384816812 710051498 321202464 839446827 849987351 856318841 723697331 914984162 514161669 965307346 581222973 677223586 115965157 472569239 39285027 201900602 989492370 998662100 466755724 991962046 369960581 965966413 408056037 946719551 777424537 873083761 87481210 91341267 885648663 900146825 582439468 850400854 632926961 988670067 775609242 870135597 820393073 882632940 65488559 923409403 969225019 997480102 371235787 437774680 7417026 317167606 137253905 756876963 61712429 992070242 433924154 644628413 569905884 943968632 840204871 859146740 729921696 969348273 363577547 727164456 392576387 759280483 345823057 482361466 968917483 990365342 643514609 819143274 576889381 983783348 644696158 682500491 405870478 509957892 235210695 702819196 274213415 423695801 640616755 723746346 237745951 866982008 605161292 876997046 484079240 631727057 356552672 958991526 821862151 931797181 87183801 432159942 631635238 636159775 555892279 789874170 76786662 637675285 797082100 912774019 277593076 410578967 436646309 733705098 215145391 462998800 424430535 740973056 876038511 884743257 609954231 888556652 241950533 475188381 39845227 845884686 866837493 890872968 723005921 955535498 936445884 952077756 190414098 409680617 151225230 637424770 810397969 820550182 199257318 870540435 212728847 444881875 334535073 661250029 168025308 287505338 78009606 391469932 630848891 879920057 365946778 729442684 285504966 398080040 31846676 407542355 388996523 678431959 1325336 711226223 715716194 773959456 659565788 682720590 534704190 807450776 920914042 974771169 712763366 810074556 627175727 731703010 845932900 851066196 505262351 563971257 557105676 966267921 777341362 817444611 151569747 384758925 617513827 888168194 579828397 856553155 886003026 903978192 714785533 802216259 819291245 890811324 883436806 950031083 285030218 799257013 365442307 986701280 227216346 749936439 582757251 872521528 980022265 981534715 837746778 897009742 972874886 997680922 652311175 952459050 943970053 984912025 184671276 970670725 91499828 270545221 215842419 346487655 211160612 525730562 858033763 908568492 407777804 449038070 181690399 491656823 778832775 899412666 463236222 844345516 826966432 964484824 907672946 937114670 805387063 816869015 43366434 466123341 407436311 698379062 874982409 960969246 98267937 318102257 837030417 940305430 741820418 893146217 156134047 497352233 137739235 671526128 351512716 376931098 689401496 781685515 750672705 840326074 708045119 993897124 267143278 660733593 726013205 902353927 832271498 933522918 567934046 970853124 233926530 996421962 354789260 437299947 296908516 470936360 393351782 958390386 25701238 303821774 893764534 965017952 686392361 698582472 21788454 588110267 787067442 870761376 404618652 662432059 775069333 848169743 197037563 199530109 439624546 552015030 775110652 915975385 927699282 956447344 412822390 843747888 50239957 684539995 747289328 884643940 640619400 681206221 600870896 730430645 218295526 517816402 463694302 665788223 31458510 946279161 279982091 849248727 71700320 849927498 187778939 546293746 152546318 852945398 908468319 940789908 715230515 994247197 238693902 782568933 530203219 611037079 735063450 897089617 567345983 623441970 809529007 842462854 574387460 660317971 203412281 650381465 476394635 570025481 670951156 851984433 226954535 631815712 807025706 984054865 246132929 669658658 181203494 287912003 508447171 775628716 255437464 869080406 911134187 972742949 275079944 535797918 268103176 780456313 459938184 784758763 689817446 927557660 739025016 974042497 641153016 787721083 785875444 831561380 698783130 976899689 20268881 234342448 769056583 940221035 202383658 885014829 374756227 988184391 954404473 978530568 258921980 580222361 470444604 479685926 1458065 698772952 976331698 981976762 654553915 838119151 40233487 358214182 867486306 962811781 967638909 986785949 261438482 427042828 184817436 834300011 513764354 952205762 8039195 471501934 337583482 962855637 836636573 903176236 45455789 74038137 742738319 977057298 298253217 346066198 442997734 478538409 457002210 833914881 995314769 997270350 893574915 996165857 755604216 803799507 81667670 164423221 299449796 703527858 114117276 202403367 987481491 990280443 22953121 70726124 796623882 797229779 785020359 883377719 265280894 505715812 639228253 746150632 288192493 376179604 266421755 334359606 306496081 917277550 514970084 979534579 645229380 965353735 726901177 841633865 743574384 969517575 200308249 784031343 657553724 878655682 334849078 433551898 93178751 276546978 954533415 955343955 575315754 691276356 411066269 974413467 551815738 651825582 876948696 953321107 407951207 474402255 494123506 528767208 478087832 802226069 873898674 882888084 841983899 843631384 502414395 606801761 191984914 744049032 15726695 190329507 379823785 768313111 301067757 334305626 992170780 998793476 475138207 947004762 236304337 803328466 668802629 711207862 972291521 993651724 534378420 724924911 19304902 296091504 401693045 901524213 284331346 454274056 272201330 633766135 545757961 559465502 946893440 970634080 197384822 265996789 265772949 341718971 67894358 488686683 961858810 992174739 820792219 909679535 73685684 748087730 374724073 383222929 592188435 772412598 303891712 851406846 132924112 536538726 272571282 608924977 192119294 812760610 782285595 853471756 681277266 842011419 692804279 838702887 579534454 782073228 118352975 701304408 350575339 983483012 661370389 882072733 454630901 585803803 905340168 981950238 63281122 460797869 28745533 418448967 904185057 990020209 673462830 769457176 351201845 523315201 945604742 978278655 818532593 856913681 811071675 974940627 768659917 906551097 62537955 356803240 746738761 852142442 144386390 404891147 887918273 921190383 931858346 965583403 221975324 383525395 98034137 575834178 989503259 990747854 685825314 825448233 253168929 842816799 645615001 645866238 434633261 467427648 291634312 848327296 565824919 794423904 520680006 636868863 55193941 399569591 385833558 515365496 623758714 688185899 790533486 961342710 833028775 953989007 947799949 974877046 533316498 784054404 421511725 532741624 328502321 402392001 135971523 209920795 199911746 449866927 804037835 956544442 231119966 347209712 968376243 981574207 142617841 800660234 948061154 981772510 791178140 958661700 985320507 997142628 520291491 641454798 734282630 750264225 387872074 905272426 499591379 781735819 714646030 970589274 177749901 467739434 166552738 342860578 136237748 710765825 160934810 864386984 342781815 974072577 619586473 966923586 271669259 860364945 995343369 998418567 276544564 752886973 75286791 678395650 327543922 345498293 625855230 865228142 803831842 939580087 480600665 957852929 722433781 732260559 549230249 880852606 81766663 713751219 467236052 784572116 259246336 949585227 651124025 693270077 24776299 807817069 400098638 540277743 981693359 993128297 217112586 451005981 347696619 475251470 575395390 930586504 431316115 659355501 802088744 851075242 75340002 140951317 739980449 796727848 152258721 877073123 617800753 998683222 768906156 849528035 652016122 891528861 527293253 562190361 264142188 505228240 718450785 737880827 841778246 945194965 496811449 715194206 123861035 306255242 299633902 951093170 72166149 464940490 995603871 997397611 464675479 707805507 509915807 764787748 89472584 818277260 845368389 867852800 998517536 998548174 24818610 242220098 601014952 995302888 486239548 496656208 932707153 988959821 237351623 563855557 138470533 492849688 995387162 995559446 806525005 965782352 112419906 602764502 357037511 984148590 550132073 824009034 97940379 745620019 443051525 857719667 561014794 984668127 359402736 952477992 869831542 885640973 331557815 822360861 12032751 290640545 359045477 537264079 858990181 863167592 781123639 978712159 557297380 902100027 793981972 829861808 55219718 365799524 508478815 633651617 404735228 589276443 749644562 900344776 809769831 967023149 278096530 422418607 753445278 800300940 2685767 770821507 108523068 168353842 848238870 849730489 52152791 240940999 525823386 591083558 680735692 684544822 531212632 641314609 739832419 752776514 522845559 940672224 338060715 466908892 334265498 564731577 256639974 297193178 292900335 590883275 730416969 855421591 136388561 202640114 80391287 360982181 587532556 685830787 755962687 910112178 183202811 907015780 448324142 481697546 199267568 940929975 71227297 127502878 881984886 884156669 142250488 625457258 714346809 747314126 959006672 970423652 993452400 996331903 768032983 888845925 399919543 844366494 361518432 795419219 882035317 940762518 537835240 718223709 423439941 660353334 85693213 283333087 627994164 842947015 964876886 965365472 183402504 799049550 615919361 905328911 139860852 794313118 519812110 569900054 218483135 833812870 201285153 654002766 905792796 930749554 563083418 586134389 73517823 733084182 761195556 859505145 136754605 683622591 665506699 750168386 21973971 287105346 719758513 947540153 753557764 874432236 825279604 942927632 278609835 456021709 520687494 959637024 856407529 863790535 48032631 661566216 819783290 953882746 629046018 728571160 469265927 741612686 611338238 640119315 284921387 941859112 402938869 860457614 529008556 779160324 216877841 947099319 124581210 975010592 391610486 693720569 297297867 334178921 952168762 994668351 407017704 597800269 524450750 983969864 255576089 542629932 605278470 975725989 319752601 899748137 559492706 810516898 133650142 336726401 690192562 861643807 178028304 425663958 489569070 768196718 696622618 752629387 10949186 524618503 258164032 678796466 126514945 716847262 165235032 988501947 60682789 782816245 351786614 574113618 865486884 933019715 205761926 378318112 510551029 870209580 505532005 619746207 742372830 951971738 284106508 471252044 336254119 984062783 678230439 790453002 218755849 565676520 838197918 939267567 277779098 941396447 195904695 903702096 648044468 704345980 860148789 917955893 692027566 897982482 227753293 962417910 670383116 815506607 495830414 658089656 170299838 678367862 11894169 515685327 357924188 851107281 611606937 883015409 883497200 888499813 493944902 910789628 994211308 995721487 274859254 552091482 147029509 410499898 698655334 859151692 738274441 900957853 35658024 887284325 130388376 340707176 933090096 979782463 581204389 947660408 750374456 959378748 530923149 835728708 351859151 681725490 511810021 818657278 905141423 979205501 641005584 949527264 840078605 998349811 353339971 375543475 560183783 738946026 55737483 752128572 36802466 718690170 115410790 133637939 725260100 775471123 292245703 499345742 801828173 879256562 713335252 822666084 229098305 595493500 563838400 917080400 714947458 761067249 983266095 987075151 232693637 678211753 550629557 597144231 693137749 893035618 668364368 906058444 900130255 989392392 768859584 802924714 69654431 492845512 846575441 875629029 194021839 706922425 940467017 980207934 981818428 989055630 321675012 463943584 155717735 596239321 560497081 721505734 590772592 640834065 832517739 839524410 611793715 886833426 178132101 594196361 417368634 571649816 590254942 978804817 129827961 539519138 745481535 907449930 369325805 445326236 755986206 930956498 463675173 768827395 219331902 751684324 972713245 977392179 288269197 639308629 313270074 777898915 114413328 917456572 889113037 974574845 663927147 727671469 522422228 550331207 512189415 778233901 454547646 728167637 585089770 864966904 183157693 648930827 492857904 933597124 375371781 406991228 668797731 949580105 731613480 778551979 309606895 984876875 116565970 563531842 629453777 812654898 983708195 996849888 42151814 237550414 213309689 405150277 520645714 604917657 734921171 989969974 501538124 711354651 815656244 897680395 976916682 990434606 232532206 708511617 763934133 778274790 902540778 910083248 718143506 855953655 737759547 934643844 432492202 888617324 978629050 992127269 553904009 608016638 503513694 535018029 736416824 865386502 387510654 906563622 368064293 916175278 137986434 714527649 466281013 934767608 560646070 819044614 282933196 505292160 841611341 868887627 102530764 744934675 431185978 569092266 846681719 898135128 68469119 404474868 455218327 907403302 911206401 954337222 764759126 965301368 9795592 631297212 557548349 763343561 850669973 961704579 85163118 498790466 97555823 820503145 964492426 984407774 728979450 753337443 293743664 635055023 443624457 638125931 607796242 718242480 998307777 998797111 720875051 808779420 262351223 921941789 349003018 805963834 311027386 445832135 135669465 911923200 285021428 935220113 291402333 689918686 438492515 998973743 914855475 939627221 467799257 727414673 954788951 978650588 735050817 874535367 68467672 119109800 321074042 778517476 380587665 796874169 425984729 831976809 673141583 694930086 897289799 953698226 345139141 370036844 950384602 986492661 517689848 661685027 935801199 975236712 196810247 566193163 680390623 935698749 476819075 491186687 457974483 813875719 207948848 938284928 735169694 795316383 843085975 938336965 723519604 895723102 586039498 770587816 930258140 931220851 661481911 718702707 406377066 725718377 734222211 839288115 464630597 802642924 965388762 985518394 986006745 989419600 774283160 811611611 211263335 678895433 213140937 395819806 75358147 329161502 13742747 543407788 1215351 811779354 626329830 877868058 606216825 773049634 451194533 515414543 545384810 828722729 39626013 562422635 429957597 575752467 945640878 989292919 49716659 356210590 436270485 517155149 441355016 839235620 72187024 602495544 894750342 898201739 16005610 21599033 580325903 754140544 150804892 162398411 543372775 969891017 790266907 830623958 605165339 658281507 399863677 933881246 739283498 807907818 554762490 563199703 180591607 983289597 745308567 941847597 152608623 456537450 522996066 695382789 681293607 977384871 355960575 878380338 923700858 953370591 249850642 280227566 385845583 508811989 236758628 562028252 79867247 508589085 237157425 343493372 791817798 876725075 861606247 917035522 117707887 597722791 515128702 996592153 788681783 891024155 618099306 991980516 197315873 880623827 329182182 412273061 131959915 847047946 951310456 970647266 573855280 655263760 282124795 589313416 424324894 881479315 582349374 836343626 918903550 950961226 652611138 937512230 495644675 709577218 526429864 621068809 279824452 819143413 800179033 936587945 744757651 985775744 809848556 827235520 456581562 566633772 181203426 639639059 663924075 687805781 161593425 508697876 640144240 820739641 656007251 736346670 591723042 931535245 514398348 748200111 846079322 888436805 961696797 984715503 733009338 853236785 210972043 472404603 593645635 850161914 144582495 409451713 588521280 796645187 227183984 360181331 737024975 915785036 310171800 534868436 706602839 844560232 689712794 798231417 323612141 666341191 546501232 858168835 705392685 847697386 750233515 986964687 949875740 955637254 776719434 880997618 975399001 976118598 316593170 783749274 801975699 934786622 977441945 990376189 329803107 654519601 213799056 972581675 201313814 662084037 427494580 518652521 199211110 578725171 623097070 668767210 221168068 919567410 217724585 231008287 179695373 352427847 442286613 860983314 871572876 887189420 904032741 980740220 260057434 985259529 106871132 304926820 493903932 850527455 494923973 585331057 815440004 857653324 109251361 813426942 774672355 992527654 578201325 705652227 208993870 681430404 103148355 425928586 225522584 403555392 913748312 998174624 253601197 839044256 958891689 967976449 823752171 901508220 833831752 976084744 514596561 803999144 620451242 850564004 554449964 946472644 86792625 992046613 944249957 994114292 560849718 875553653 529788373 891563835 942917531 994841905 600155396 689754482 456348180 506804043 59485064 802375051 896887506 986372357 914430877 930704065 710096318 988697139 233221826 486013199 342214627 870306430 201545529 870280662 544300295 572291815 516504004 538258798 456634918 496135009 512147298 559517694 965896902 973404828 810825490 918486644 110602876 631508236 761217643 786377618 566377081 871231975 665774074 862138870 88647491 718631482 871722185 992904474 567342090 772038261 210993693 618001420 871092458 913963482 275707376 546308881 230390687 416915440 429422685 693743632 71993894 157515986 884913227 990246055 493008295 527851413 888464848 936965075 650687876 875582053 705908728 866792982 908895295 940228805 922449945 981113720 72786721 499067012 66054069 323628807 438987443 725795426 84607037 860817602 959708212 987314778 467959849 907150226 8318718 427775759 265976429 583247720 567593463 636294912 778251259 806302734 879838238 950690501 918886783 967199830 347821218 837335824 69415242 806608734 276031193 709755439 570538261 866110077 60887487 554676414 885907602 943150874 121856231 465658253 264013438 713116766 366681428 424978799 34338684 698515141 373365103 777075525 969067098 981806728 298106723 376971377 319593474 676169945 797743891 903579005 306344040 601771986 660779949 680568322 626769835 972832521 888726666 957127480 655664573 693490953 103819138 748938550 814259629 837448038 617472699 914716951 218138312 604522314 927130871 957755795 838293362 986101271 949252458 960381352 270861127 834562834 990389189 998537226 524233630 802330197 928853103 941819421 423875244 797437671 156567010 222719496 362696430 378818320 97112855 326420749 27545269 797423142 909404620 997454380 537620114 943969511 597522662 762835135 866476949 918443061 789410858 967035401 562234776 741536945 720075573 830574826 981253070 987026818 74209891 952449377 949613890 995683382 121668105 156128185 831044446 916748251 683508328 774494331 560824310 920270411 823790056 934634256 643920998 776693998 378730064 922546362 95979232 905528895 579881346 706544985 239252320 688637651 351260761 377723610 712145450 961412165 367144426 768475558 294549708 509353644 730851772 820110316 856916352 898688331 85965167 321461954 86449047 837407956 751211485 908673452 221583407 257346717 947623332 990280108 956427955 959125969 453475799 590804435 502410735 516303969 691471394 901138779 964919379 991803310 683365665 876276510 110915106 927848699 557397689 978849433 315295493 605949907 854988650 960288908 258425586 307927962 325758886 566341465 774514248 995891870 559146408 579311120 363972798 630731079 882053182 971996104 276969808 794396477 648835849 876041860 933725574 997396304 583434526 986231127 231722217 431376740 185053023 912886199 711836250 980953451 472250578 886750611 697963446 832593048 146243840 851748238 563823745 626319748 741193965 747655908 712181551 803735680 417411297 902883698 961802609 966929035 827486392 905101162 226351955 703677249 877853061 913773861 194802711 955680294 827721263 911725359 330148246 627835398 65751610 997168704 781977660 947556236 203987159 311562446 185137416 385384703 133030373 616879706 541498337 967346797 121257871 635242184 837221007 931271229 504840386 691957160 358659908 575299073 194622791 387838116 924494487 994662890 360496174 655078751 100066290 129009501 802293269 936176238 581420048 956581021 852739054 971827705 203895087 237259135 877370099 896014591 337494454 911637297 32842170 985905870 622234319 975215381 506219709 931133238 305999281 395150646 326653790 494990003 890932296 983141655 893127510 982996035 951470344 977426871 143561692 613863305 250421061 339919053 764042748 833411616 805101022 944516320 87320084 343173886 243034785 656140499 265662345 379539569 667120084 977013010 294019489 619957201 33625301 814926705 918413966 942136691 811610591 889946609 842462961 990568717 92352762 150710990 54036191 464059251 477322288 504845629 117520656 808856949 419154347 844253683 550726219 835107120 588346671 820633352 189329198 499256692 382185365 623431650 255479138 922533056 948696300 962601264 21719830 731761717 282150009 421558611 7347081 890366649 765247072 766805373 799529935 931687849 798558336 870123437 225455593 542140087 944672260 948124547 806510367 945364131 575771262 592379307 898839544 959639090 69680556 768259837 575500559 914634750 488807036 936933607 190548162 555216805 937325132 990994547 563935417 894332777 860440042 964417900 643414276 916562860 204751960 906671720 285062594 742776859 534384244 674259426 573238161 881158242 916233443 977741835 584617809 691192090 898664481 985903911 120396927 616257684 549573033 822126555 963893337 997187750 922727220 952441268 10372136 941774994 807476960 828053295 919119752 984533976 152658998 551306544 246809716 684500871 624050489 988864963 620436024 781938605 802371010 812208714 782514475 829296727 343231882 460586983 126367565 277337241 358284387 735376123 416969393 652378603 393339869 585763695 851915372 913798949 895315210 900041628 764371706 921874541 460505638 586064608 42844527 773231568 450562445 618536949 498285556 766383062 564439911 941076403 124110259 536171489 261222606 427416486 998255305 998766086 5779509 580613917 391389035 933392289 453485192 920865388 392063010 983507791 506560036 633299316 959200762 985422141 692434982 715036808 296411708 936367633 315662125 812300381 4918203 46800728 743799596 945584233 825084738 914711537 611348834 758446697 108608051 533682657 576059937 906545421 17669851 763004135 630846577 730705935 313579295 478163801 762097509 866988564 321288765 631650333 858251417 883792704 58574328 597785986 870308945 875084841 161909302 236056326 468004632 843634913 508330991 886654723 568373683 739289620 528502761 805167723 559021620 829485129 373421841 533009115 480534576 825246259 733362483 908325468 245873551 803245322 673949748 960614913 151013765 656373199 499298990 892595873 635798010 894992135 239276868 927715983 254858378 538175410 271436190 554653170 813738341 826228692 10569495 350318422 424122451 732678635 256521469 291727307 433210901 771056719 515364702 974218215 877181246 975045543 127092691 466312665 774568248 937626279 526282363 536093913 239362539 418571909 164459128 246506187 80401353 528092844 286488121 660660960 618510862 641841026 150403226 331895246 936547045 971152287 648422727 922100830 479466564 876640575 858324817 951107494 904776364 914379534 153925796 737449962 601855117 614834281 465255160 813484247 580979091 788079907 648356124 879827437 976914025 982843583 550203075 820573360 416953681 441425957 775037092 963192075 304947210 454647481 380667638 603002283 242565331 258399522 873766466 943868887 793302187 799954114 382974291 559916241 418442240 811861418 803214793 911778006 112854784 179255008 191035392 935170464 24127497 283339733 871256360 982870523 602107236 913487421 801235076 904642079 594570798 676083631 416857609 604813611 500687349 861001796 511362362 710800928 809904541 912723269 648324148 803201963 117554398 812014006 487082632 830944770 465484570 577416447 780245634 908386747 194695245 635783084 387156207 837998988 293096265 882774022 659453150 988471930 868914377 896033855 332773188 503693723 946683909 999001031 356286794 945406258 850674877 933708519 191311775 197020795 294941557 378387212 752137485 833247389 958410329 979914848 780037861 904828476 574477167 662325638 823633142 977517083 857270005 994191161 165080077 704536610 850959911 898202966 272441998 568359597 883217337 898740070 371489176 503497742 354608221 535655703 647518480 876034391 780381837 951770621 401895126 812352586 913202283 958876899 39017853 169139537 948961642 967176639 233736693 985222814 393614347 453122080 501510195 526546388 271248937 560596737 746154564 862009730 68643983 330587941 648160269 701110416 949369947 993246503 579987131 771670495 109706929 455347265 774449579 829288535 268061819 580121208 487302910 978184007 915978445 941781291 131793344 425422115 413613066 645868600 403310903 518330161 13174179 769900709 503908640 630115648 320825024 691986456 274380733 317431204 241140192 435385161 24851296 780791687 940587039 950976318 48768667 336298017 826721396 862752305 237266791 355688545 195695461 810347907 327842237 470717918 80120386 699227578 584691321 752679762 837893334 873448834 122670806 670952910 244620377 542328734 863331169 871983941 742370775 863128927 204988176 410364381 145045032 595298662 94692922 118144790 21671013 854567738 501968427 919672966 567780145 990658854 405377794 928533164 794721090 934683545 708564875 984238678 432232654 819344307 326844566 521175503 376461227 378418216 435285576 935236263 993732264 998784036 347661874 935476215 330190847 918454292 439644843 955972524 649272647 668155596 240855886 558780237 946723461 969452232 446486539 477208059 895988171 953901791 440621035 932037500 59270318 397862135 779054257 954583238 820478720 836796001 674203895 767864960 742947781 869368378 346330504 508640192 848334236 882577593 424716963 905880186 869239487 872404223 341902889 586554272 212690362 443968402 798532886 946081991 876928859 897601250 718440480 822416212 580809236 942841019 955168978 992313229 404646237 580298207 137808682 481925199 603353260 889444571 727938399 935520090 157946270 572904020 38507093 198570369 546759510 999072768 133198375 503662373 452026301 684745737 348149382 635892422 323623821 612232933 197352230 604394294 129761282 211451757 289036740 587390350 32787307 726828610 33860958 637958653 617112226 900745084 977035637 991843444 680940254 776334641 555271612 700276546 248830923 730691628 232528807 544630413 236511241 796190349 721470826 795455838 56020927 686212371 269476548 781542114 766362940 920679479 93794754 867117931 510800649 580303020 699866877 884573227 394843175 413104884 980926764 996509389 982163934 986099984 90244927 274737694 222277848 948695232 811428177 978734854 90017545 744911461 587118953 948397625 950871879 958976640 457363265 486346026 824142788 982603033 991704839 992495323 645018458 887754279 650062747 674909163 172642785 505628821 46588878 180864635 716556843 883449927 205240060 852392072 664680444 960006456 162276467 274730011 167110959 970770061 268504886 805884452 230977773 605785717 330590752 768477579 837009045 904559050 157496518 947056742 890796412 948019138 695350087 963779779 305124206 446574211 8962131 476763720 761173507 993200742 533758746 730708527 439650918 853622960 740123866 870340656 182856702 322404858 819839483 887039632 630410641 941691408 609015463 977778493 19904259 319371154 245215187 292558598 615391940 654622288 422483271 787899232 699731503 938241403 945590461 955171565 879907085 920353802 817434367 986707459 601279835 673088039 110723489 410229937 958215588 979928554 188963443 602745041 931617521 996486315 413037249 720328788 641123480 707549763 455700431 504347908 110197806 444567038 674342777 869824922 521622694 994608794 4157426 681886415 701118848 800062500 152815606 957641047 626588820 864109444 650074896 889019748 510554614 607811609 359563771 574459535 1017040 222348408 41124327 206868982 860600264 867724802 649367930 674550976 228645268 607463797 923450867 977400616 87030664 495295352 485923388 486951658 190675332 680280665 433330717 551897286 231289474 713894912 321705696 976914313 288556411 814380859 106071192 683264510 575503916 894336378 802202150 900570478 911415847 925630758 766094370 940357718 921999456 930694399 609014113 695174167 169610695 600702201 11352026 727146529 767800883 951019579 387267295 826370998 693401127 701388846 351081283 549655689 876160012 991947101 662308112 950326763 370101893 678237424 522369139 730386609 210992783 757800500 659466732 726954436 251126748 601364025 807674461 897152478 665846519 915420745 245981224 420127926 460850407 527767735 281803994 688968113 567518960 850060629 608940055 896193700 85774580 163063241 885033083 993600353 970021001 973971045 737982140 878787606 748392394 813519559 261471353 703229053 209446391 913050153 495068590 553269571 823097072 825339934 475347296 914721535 375141261 695240138 217964868 492766154 744467249 860332196 383698576 511033344 332627247 784466129 451750631 988282644 459856530 858122441 663954249 990013260 858652432 989044343 846121185 864002904 417713913 631065875 673543359 990206551 467124530 681652477 50342304 513150550 194337625 319148112 521388660 835465045 885021896 973603714 315835470 684604451 36890395 431157944 301307446 668624626 130929254 689400115 541808377 818992999 404792481 621988009 133368182 885649495 140973359 343738207 680466632 737854476 704855719 903781225 986428154 994855713 828946393 863718228 582362711 863003845 775827665 817652837 338621029 853341757 406745940 460142778 730774978 880124562 317379955 638061563 449539476 976162380 730950477 804519396 434734364 474918307 20222146 159347415 576006840 781271137 619960968 684979053 215286781 433407181 457017391 864830376 242204918 779447714 615612418 907341296 923896521 944873936 31740969 880972277 122361670 782041798 656121755 690595655 874263398 959092704 56353453 955600426 372453143 490829787 836748786 933265716 691879198 954078315 851402452 954793413 837734320 868058811 563827268 589980581 790437900 879113961 700999218 978414228 335599096 452554901 242470913 656468559 571709583 633039235 142753020 343940176 219824405 564412141 342447796 782286586 446738256 680960903 916499606 918842860 953420940 981737964 576613345 799365749 238213653 353370534 916752897 924317734 339117821 410623824 25075859 460230785 124037925 478943947 632336164 856970875 259721196 337850134 841626837 898535800 289938873 760791832 333774345 471446215 320194824 594430548 183647897 670091381 804782641 863089953 177537924 178058637 537629732 940456957 283881642 344976243 142327083 911640732 808636264 883342877 801993391 924707984 358840953 745173532 124225253 874442198 586492569 765121590 930422219 947003228 150744572 409936424 298708820 692533265 738984181 826585192 228424005 302897525 793827696 899160638 504920526 797926232 661070055 750868839 257363091 367882314 500229292 919246819 969001991 970966618 82832524 228018454 858307914 892501948 665018708 677543828 883854708 974515217 237107220 778118271 585589789 693326900 693954236 773900124 255733154 568323986 324908872 325247381 513270711 654318015 317039323 344857035 62076365 917546887 541390233 546363316 665315053 796092575 247125706 924740375 951747746 969595245 522032768 937190063 716894807 748994776 125600251 547856212 538670935 850713004 780949591 906483064 147281660 973112938 836879558 984358263 758447319 828778764 25085913 409955076 632317197 721964483 290090810 781677364 960877432 973591610 397796708 901843726 751982483 908194924 969984587 987220439 507392271 965133827 365358083 980922444 119864322 318258257 590430322 665319484 496861647 892366336 966492807 994852771 628574186 846641126 749755753 878947067 666395143 915574907 443943491 640924067 552479761 763523404 744565559 989474665 739016920 794672262 433585738 867355446 725519268 994076819 435689904 516274817 67659011 167079506 783793632 987785817 5201500 164240575 840271817 965623735 231794397 901837740 686612985 972246237 458735289 920129054 280869245 750473778 161527905 493331103 393736316 505675665 886267783 966969335 416755158 850018428 445644565 492424045 214102683 634431487 575716065 873584437 707806445 800966163 271443438 489673429 562646411 588383057 619859017 790082325 684960649 982754098 894582828 992988520 158489199 405625585 32058752 468729543 849365880 993830669 222972092 835501008 598693107 670004709 839827912 938921403 404787141 530011170 448413122 522796884 144050279 235536866 454506589 594039530 540858040 548481083 908444398 931203429 841634318 981930041 757904166 935939059 843100558 903291711 84622086 591704462 293393138 916126910 271007075 789902725 35918149 513046855 296428478 380960909 983954356 993194567 69289555 992469692 562574857 608461428 939965816 944289858 704966168 878764793 519642292 750265798 888981545 958840609 290745267 976624109 835157804 957751279 324835801 380774275 204178957 848290847 956649625 983519307 163248455 735705440 60318026 560576345 670706167 846277430 179585874 887829478 445246576 651774888 498736485 836053045 152725877 618219514 548814 250895986 914717550 944430738 490162881 503273622 721594958 895331290 549845777 794369357 972174838 998597941 628403139 790540582 690146050 959123997 888840121 898907251 50438485 922314194 6215573 607585043 990647486 993534955 130319227 707691775 691029049 760548867 350457141 474581938 806458342 943573642 5566780 618423422 650399162 786670071 371484801 402544347 128709846 679433910 482983123 711376011 667037280 904136101 534579540 991220201 471723656 475637226 374037338 511124899 659549361 922688540 371117724 653213596 799415047 933956796 62259401 427650205 58609987 921976706 115852741 873508087 25931787 838168531 19864450 156096491 262233022 972917861 618925376 970265860 796879687 952831074 253659333 449381367 802892967 943594794 65042404 889440160 516076797 929149868 192874425 425897220 775986901 813301508 32467220 234270066 388227255 656014116 295023271 580005566 655523922 963561485 417625226 947345233 975258580 989108851 645374529 688491780 881497449 885227382 895896582 934128558 354768596 427382897 381613343 917454228 711195695 798045569 159995015 435600376 678588245 802557133 158544927 461499885 772906535 949980764 403055659 529451573 311525441 583250985 331833108 428843370 519615968 640474185 213172460 580109242 201817900 373948841 193381972 302660757 907626801 928908060 129607577 503161050 143912365 642054337 131523934 424576653 555492719 559404103 158140594 470075765 890638117 977073007 281333673 769881032 171585035 457424375 447393091 478866270 587028583 937172896 282560755 397142560 198787485 524850107 117315653 869367469 242142722 666130266 883522682 934657526 280053839 916985969 912830924 946720326 240821937 710082019 108461688 404762679 376604419 638391469 335099577 547637158 273617430 289046891 846354115 850028956 269259013 831694428 974480929 984966017 326298142 931249710 743334732 765000085 715455959 787792890 891892163 989352261 207536800 634970242 366407119 846187394 532313288 869925164 603279409 927531520 920954010 930403923 713999500 938165675 683972613 738437284 6165938 229574299 920216159 974118558 29288237 845259515 334337285 393794623 66581518 568552467 751788177 998977213 818449808 887382683 347997095 787770388 39580610 144539226 255497909 921745879 323418974 943699718 492613755 813125945 320525992 761469400 348978935 923418313 532954350 952890985 394887002 660450130 728264883 821932812 953298548 961477622 99129467 695909079 752547029 865429676 415501302 500704456 16875065 298212892 588249437 914673275 772505985 940307166 23979272 402737231 99107723 731590353 991390238 993435426 465128133 543874282 140238939 699795410 586322422 941422842 626107857 989862139 255381048 833813896 631804843 726912450 315131448 337514969 150151654 283246088 701980596 806840539 791122936 857551215 315477683 541734888 704832493 986824329 801446575 877342904 747167371 869737382 620928288 634395048 162251858 919561328 839148413 847703329 832819415 851752837 530900198 675391625 855583842 931588799 139014200 185937979 123841854 419429098 674664807 916716031 351595836 559262516 775488339 793434222 74508195 437398865 722915490 724271145 262528141 944295926 852596380 973818543 648691385 882740230 11397036 741886810 848298221 918579717 497113752 739348876 657710312 874287233 976889938 992823268 562588967 920602360 932513478 963686722 409658056 532263371 522211143 761386329 575314306 930570157 274247711 839585020 537501817 968229362 172837761 776858201 867012916 949670657 728919042 984594043 414337567 898806367 687150535 997091476 876384741 943746602 672701598 742327354 763285658 790487025 335907714 509035567 941238083 995090835 686266814 807389698 971519718 988038774 380555068 850632835 601599089 789338163 42642930 644919463 390834709 464477183 849477136 881044339 222969114 565705855 656355230 775928071 516800067 799158316 390730338 997641816 795478927 948119855 427908929 587720459 681055976 829088859 699998414 945529945 376584226 777031545 406274188 613864569 913739187 946934410 391705886 728301552 47432267 443713326 444019092 469060084 546523294 564991183 799312517 914306016 794147190 829434557 723616145 972215530 858203855 973361283 870486766 879948624 462276986 865158320 334001698 511230623 719625127 968805285 852072269 868345422 260392883 481624451 257627026 963639165 718452675 967809318 395865259 721121940 247132736 602955688 863293195 890266809 931748293 989027093 707631595 985719862 106705246 528969394 531562222 601134309 16122701 732274065 594505252 697589051 880930418 976655983 866726202 953988476 38555295 651144202 648597991 928554809 268055774 494614561 854485537 977397934 563936633 814301646 842643318 916786817 285343001 860726978 440536880 714021322 181493376 681622921 640251773 950397544 981338559 994588368 658559245 888191559 463011760 895719216 266793623 955358562 931731118 954784484 336137971 558887099 226474020 965452200 207173942 681477899 147119155 807548843 880607696 887035507 520551619 812196704 277478258 890730245 678507703 970557519 429225482 790009742 516090169 521640142 497599271 611918914 587402225 671401449 219667064 877751716 341430974 741332482 196345049 529000550 140792241 641701717 38942520 635665831 642090506 694505628 613135686 649686073 853882526 865077790 407886121 699639757 352824281 628344033 319591985 585408529 107123876 738153754 769728952 859684094 137151600 527971229 762054634 997952771 395485703 444094351 605330326 618162185 519881202 753217005 258568779 969144602 301939493 834365545 324506629 750972635 195030865 553843822 350892958 843125577 359122756 589637537 794801527 869660429 449469606 751651232 857764980 924534050 725909163 993748765 112413959 727900296 593438444 647567832 691569096 880851962 540392088 749317021 175882480 828183448 43619567 771033922 176261881 199596316 250405242 820126321 487628358 559084342 345401661 936000054 927320812 931002226 417330738 592225855 363830982 713745061 995525619 995877145 399119679 670059233 315641310 318825675 791617540 848301281 872872863 909598098 559749674 726315037 331597651 903923362 243424308 382782832 164417417 839647076 84215769 137285498 131633237 544617421 171512257 830328243 793706542 994381910 576756332 719787870 79172644 390834519 108407787 977396929 455524505 749509277 731849922 980035341 808414997 952739266 260209559 965906618 542060889 692640142 234765211 740766262 920811800 965434296 48420876 767907817 312831596 971352539 371671996 653334432 660820685 961756074 872574630 894261862 959648154 987617589 703849101 975793191 942882884 974299909 137626989 395666023 39798141 821006052 945121348 992836529 965313607 971341301 401602706 821846402 796311153 912737323 142514204 146831745 218489983 829893175 625375881 983796161 557726110 756262165 773188087 825935750 26354999 241046670 108830767 418882742 873036560 880044505 631029571 790415020 416296384 847860969 330093330 591094482 143525223 380015508 407770716 467760517 628377449 696202023 754766823 901112538 774318411 909911253 639037718 837300021 901632857 976332169 755086967 927424164 527024190 701772246 166109575 893112849 709388444 872432055 355932079 950964536 190124093 520441912 561359634 660293689 48189098 490462916 316755274 753159371 242329887 586978263 703919326 866574401 96663930 558983077 802140144 820369257 483822541 603488857 247410618 861844959 771908972 776468906 200448425 787616107 590983339 690147891 397160822 796926336 573975038 882900460 688139667 912570531 288406950 791722859 507142788 782171118 117586288 416270402 373185321 455958089 956116094 990566922 796563407 933086774 778095706 904042442 197244512 243506132 251484193 383150423 633484376 775734268 310885423 923964836 272741385 532686960 142664371 879312311 227919565 746299799 406771091 472142706 511928935 913367580 650726810 851565195 873969861 967419953 218859858 740573083 753203685 837928820 622823495 711894546 652082957 934943045 375300054 712521253 174835961 926760091 525397722 903091941 328475205 431688103 190487992 993288478 767379422 932886316 168285200 579155821 704948713 861316156 625044603 678876638 440141598 502798250 69518327 769088665 827981194 908935225 110057832 542397579 453263438 900602554 382935823 684005708 265149197 498996548 508095435 932605606 80198324 689835406 562832160 727650080 203258521 246321127 978415841 989439193 958530219 977348461 81284141 173057790 420377889 501083487 62587213 649300297 354299620 679341869 597328728 831171338 231657621 652988738 460541666 564038626 600408570 711439884 913398398 931506140 477284467 572935107 979611100 984769400 807526317 964098036 406437276 456923501 330762108 419188418 783572632 929620843 158873644 502023128 185676545 266207541 354363862 824940849 62302296 495899707 17271632 827460031 365075796 988066145 450437970 989473481 920089654 971566520 979521283 982533185 613207616 783911850 677736052 909227855 982701081 996959745 4117001 664954592 898874597 910712108 870717158 905271778 548716358 934146679 193037296 978617420 326307000 383324708 980429036 987132190 412057525 775853430 6170626 479520736 586245192 635253968 607189644 963315919 857428557 953077899 327910872 885355690 12362224 232440506 235433791 630328131 136700484 839588317 60320162 842877205 145833955 728418894 994237031 995253195 273215575 368394230 836639475 848943820 108825146 387189828 829061499 835939239 461776944 914999887 22227732 313666237 518567765 829774456 599161339 770618530 369958354 928846272 625357592 865264847 110833964 940414432 359146137 863154359 859629377 957544338 857442979 910980480 997725080 998318660 908722007 954141705 745330839 979047232 457884710 686839609 722209991 998193964 903914799 992109821 310352385 314769105 552767752 599990956 337353810 899583951 445642456 484673631 909187061 960180232 739360294 961404344 751968814 880237025 828136124 878034255 355256745 810921045 897285794 926198221 49474852 462421119 697343688 864658760 807025863 866863994 250340310 430729566 786497084 907398900 356585252 387080405 189446788 915180503 702915617 984339635 167427082 872061872 435803364 674524689 597400518 947999185 535408986 937386348 407697251 604768776 248686679 275528855 472145128 991863499 7289746 849003822 713707909 838843000 299927517 864442450 643828112 714166749 696013161 919065401 798283895 829190836 580652467 664340384 627126903 914973762 466422979 732307716 186034987 800586605 459959942 492485320 525997383 827663622 17204081 800115093 499739263 721094754 139654284 192145428 742377910 966562418 503948313 697753437 71804983 619614819 973543284 974660497 225571497 949648447 989134691 997599100 796426991 860719015 965524414 969705821 748424061 765829351 752374954 841018325 277679873 526837268 60449861 689411671 944503745 954957331 638505197 716736117 189489419 572851438 593768186 875082114 58568208 397341009 362719759 684598983 553316931 582831622 401286701 988658421 679553757 852283663 894951323 985902770 990234110 993947107 110853396 282578758 982770486 995280657 827316215 909601681 519077043 745653792 686154605 891682351 870194651 994058237 106594222 652919075 593063047 632129000 338937985 679857174 892468423 895336426 48463309 92488597 946015541 961264511 966185768 991021008 627295188 627970685 252855944 989346666 565358925 651526595 225228441 801916076 930053014 984644388 68215113 310633903 642181513 818905118 996279576 999354562 594943323 933463813 326784222 756626174 246703030 782506303 241055926 756060877 869681886 877814276 207206139 302448224 507562576 568368624 950270582 964370032 946217778 985602069 749444767 857374834 711483891 822355900 440174010 735536431 223106473 722584820 503639778 696988083 467142373 513950120 320602278 840927680 585961680 644527495 850702546 983391231 975937602 988827061 593396723 823705953 529715354 990210092 546333455 935783923 355799552 753865959 478505377 795251718 371673504 965927608 551639279 816304089 926570502 932003956 897046054 997048827 398257546 704860214 443038658 796654893 991712543 993713344 784276409 906389514 707644811 911580491 489937829 558906376 164743044 638068378 721119249 824133286 813616113 835276748 972048720 984612530 248615907 701337775 402366632 415711746 298864749 474329522 137671058 660042868 314352097 640082084 99899875 675508334 549912996 647143527 309380474 869411007 352648375 469338672 51515364 641737831 687695303 878817859 28944093 97902144 430618407 872049102 259682770 263549717 25155761 780074825 302105534 832206942 350084395 354117520 791700911 965039330 656658159 938329031 140247705 376719305 25330749 330887000 45658408 640596430 886679873 929035431 223093181 574805551 168742113 299605894 803382847 858909006 258177539 882492706 726746572 919572592 857773447 991686559 831915185 832498475 921964446 956147443 43131670 298896267 73477384 822857782 838691463 947929139 18961728 777347554 819030198 867433024 290843553 444768859 686169490 971382002 426099686 859861782 976535624 985122387 546921321 652150060 682835963 808389486 509111050 790684707 957347105 977507674 725385188 910779953 233955867 978549412 842360898 929949805 474129565 802615477 164982115 586346784 929712145 992061979 781666593 930508736 426307093 843705495 227609475 759320006 241040821 573437149 338236037 722177865 903609625 973252323 183603077 325865854 787516833 873353716 786078341 802275599 43155202 456655234 331891022 347219288 108202752 139056877 583054904 954411431 763793179 807874649 127230538 173681685 270920193 623620010 243737418 938658524 812455544 947897779 911405445 999109364 160528662 345230414 728988948 973350352 190010754 477137707 723909303 745996094 720716108 847586971 775934086 962184148 926376276 948254044 702401218 853767639 727066255 768884514 391849878 779029998 492125982 679972603 524057982 641009564 577820873 889209410 943456119 967468134 79081192 118360720 172534974 842627481 795844964 959769286 469031603 493504442 178916802 213029318 448641392 778264807 280023928 822287245 706987962 852754517 65576602 886735106 663727614 769872951 976961812 989914400 772590116 896228234 360087911 433785372 849913441 884171734 141183943 493429770 152324751 875868675 875013673 945708427 645611498 771558143 389570961 494700882 179019759 670583671 87311417 353927875 114752689 588039204 432156615 788079413 942667726 957337698 37347085 256350957 217766172 640891396 190234965 767679286 930622616 984543613 842267646 972542360 206453064 545371819 820326515 890613097 720608310 807392372 620603119 763969574 302246156 314483963 228195544 598513505 401145392 684155452 424304949 922880806 921947217 972860503 781916436 833692889 54764019 930329385 973587696 991030363 191023514 467784947 760191337 933773007 467871737 945579064 238167753 809894929 341261877 595874668 236950127 470180599 70575325 249549346 706518292 879986691 924648694 934238078 926070365 974993105 848847283 885262858 479662708 879130394 840720051 901282103 118999760 237830980 881885855 948836688 701759703 744807115 73277976 419502728 398584709 405262090 488377541 951322561 107491861 144586690 5483871 243848574 425532182 610641996 917970201 992650972 428263617 636635042 91224182 197223529 683666268 878685530 927660463 964157818 611896568 988780819 368470637 766519986 581108914 896427649 506398111 799574049 593235215 945065494 639990892 933411116 282851034 742840019 603830464 642341748 954187840 965725946 219499169 804868986 624582009 946639784 468272501 794104074 920525566 929713175 548753820 620088179 93641431 685113775 552080218 656084426 516277885 690833903 847872839 923697760 824851512 975677365 990254890 997120066 825058578 883522183 722573089 982532448 130053448 762088878 520613919 735820658 182343949 876541380 914901002 953393903 241184576 521361305 52723938 686913807 907444020 915631407 54724736 180179306 727539640 878060540 811551278 921352374 556771538 833636078 363103254 622570312 842409854 988218549 273763322 576498010 549251946 770541255 280177861 920150487 700186313 955674469 109886603 247471332 964786275 995745038 572835396 731404888 451309216 740684729 969595679 988932997 444955099 464245304 675959110 947093425 385825548 433803714 728111522 749081107 520686317 827026415 568046681 635894830 935266293 988725326 557303806 996535467 247948627 666522783 391468437 559755456 681924024 801063437 940286434 967942186 646080113 932651305 107910057 408322491 182856430 924220632 442467449 928548401 512225329 712018549 276117393 719318856 619632562 682793375 896037833 923739103 797099187 893097983 820172676 826391949 771950924 848054802 249242558 301593934 400249334 894487692 464144154 708937313 63512016 437511000 408857137 905133313 119325172 872091125 893622025 902553819 887376949 994797481 58171786 122378982 461929849 641744158 677525675 790225046 599675205 885580730 703728418 736275316 843768700 945485449 533290039 865052468 491707019 986152709 781711104 830873364 580055462 996935994 755850804 990550549 905731028 922614123 850416023 866114005 980117599 981614974 795994100 994816657 935709623 988452214 637560805 939887234 217024914 576191702 380959940 814955185 517569618 863198838 366744860 552341995 875356799 916698251 180234287 785221943 653124319 772330285 944018861 998101802 191889487 197174229 390201188 745440266 155809436 917211626 939480260 968599991 454637099 644892415 293056166 431148924 835115248 900457588 807473275 909488497 298574453 910721787 237782631 447285660 113996448 415816836 807583215 844823286 298106931 410942234 755027073 776285807 96530782 450061798 941487105 968823076 137773004 252435683 951556904 973757971 951819328 998816178 485416728 782576143 174883047 930846204 932015785 962815504 826707405 992073169 619370378 707727119 403924312 636942709 297568076 371469468 465903302 935546638 252990375 270948699 462740875 897372599 172655703 748910778 61861183 342460447 913311387 947706798 463871789 770361412 800140674 863581514 205120352 363383855 730733083 962325654 729775275 975836639 522267090 667959609 374564927 804717756 275789745 409426507 82267982 981440110 567206207 596900008 775717120 963194205 748231097 966571658 455542360 717339162 859306641 987398519 108279909 908014090 590488621 792072154 866468385 998265145 566786188 857122895 457583397 782408080 28202743 147811032 4474063 289465081 500518166 571674201 301732677 411438040 76658700 401646788 807676605 871996376 802829464 936296743 950752006 994404105 938273169 979156717 763373014 994675469 773312608 929157248 295657759 692902377 30483565 268054063 960670146 989011280 687064873 825852655 106927934 827539780 678290082 769733993 207200375 784372829 429543536 605106985 918770212 939908729 530989087 627986861 397697616 762111052 996805017 999362306 652844979 959844625 655941157 939053385 364411868 475315001 227788687 945909318 403207907 695495462 182100548 619189311 541635274 739662008 69163239 257132532 543724402 755731323 573126153 843392745 910396782 989938805 890653348 925012240 302975118 499450673 344964321 396108472 572560508 918497137 724945624 736139897 263488613 294050150 772182377 823158687 812536591 897414100 817172299 898149322 359868764 563884498 51297725 826360559 173325213 499516927 52140467 763916887 348347409 761638107 630004259 685398004 912433653 956569735 99923641 118212149 133260034 312837127 850817491 953004515 921295411 943348486 167137694 280616434 461562691 600230889 242125047 626084182 309244653 509793081 10032716 858285066 345761138 450991799 952763445 992030812 332904119 569233780 947530799 963076647 233307165 550853579 492690407 568928118 137202473 385385522 973017296 994268615 905919346 974700206 445790139 534448605 144527674 841849035 342179933 980871640 873772413 890985884 514036664 763918750 661037140 825356749 69425447 140859678 421153072 500177660 760802889 771658713 329563904 579844735 574394578 894557764 353963835 734158091 983490689 995335249 818772491 857457058 565896126 910569357 338611517 856616282 554373884 608813812 535733173 758069167 766107580 773140167 149239270 949171303 679224856 872833092 909089644 922725091 442553188 721903224 565489851 984923666 471439217 905225170 812033162 938676505 252302108 294274935 587390255 981188284 561624086 839428702 463274836 713255803 369805652 584019656 641155827 691425259 213325661 906735796 576736143 629329846 345766961 389691115 906036608 911723668 726085870 872423142 821774158 872624043 979321353 985125294 80604265 428199389 670904808 880121686 533518833 880147880 993687016 996602812 304692821 556401425 254016750 277831252 914324334 967239318 908670816 986167915 842884643 875236155 298150960 911522915 879496375 986823489 957947150 975589181 685784449 753088074 553627278 691721316 656068745 658726268 275542019 287833510 583592384 603781860 928175673 954790029 537419423 728679433 136760862 874260882 626390781 887981477 517112364 784267023 820796417 899293379 728368466 922575115 527555080 803340502 833484546 964039282 679487951 853949330 26802836 732006685 603367531 719112282 192112983 533852998 304212596 316110773 813899778 822322201 842676915 962127297 546133457 702522784 510985933 807387662 283300816 502678285 251756781 788329516 964849810 999306578 701513512 964181986 540620208 890425988 581831152 656528694 339534456 440554618 620783589 981984527 70275641 763326194 606587184 668636364 136483684 330139880 194190503 888048822 506507057 514933170 341563560 905827105 808528238 922275289 547276470 580886636 425257658 728860232 280590753 340013933 860026405 990053033 385038786 700230534 980097786 996615950 246678705 303355368 798086907 799729071 925333559 971698683 52639250 275275294 508206246 988993307 613046824 728577973 600897401 774188770 953806646 994553650 997879192 999169756 318947622 647251824 333567643 493958514 845411092 972743945 858164666 937274589 876582201 982527403 155329056 526232717 778679617 845630476 417198205 967862892 224159897 364367446 226183320 641032984 227334651 931696730 339492625 895037907 624659490 732034421 905509792 995991043 450946571 990683497 589169049 823936222 323819966 394225225 194388965 513895489 356973943 582523360 984581381 995490289 5900205 114058072 264055994 744158504 288223251 308320593 923442948 944321635 252288895 426812542 61600273 751284533 847324157 916422488 522418682 650002581 854099172 868343611 635499340 687028285 656672534 999070983 653340367 748161255 808693488 932112516 990929377 999186365 257739005 480701478 986659088 994104840 777889121 924194680 529181238 564757388 266376376 354723567 330618132 843568219 298223110 700537724 982584537 985656224 733769671 778909913 43649918 642956255 137711499 527295068 372906208 949049336 568712985 779384330 100115310 812342048 184129211 700451646 145813438 756018201 341931707 808341741 553082615 667675488 983665275 993387072 46384390 914226721 694259390 858573662 971945938 995966394 51288086 862980557 692711635 938624824 111481632 422216487 393647009 654652648 501305444 964386567 321277998 624255842 842533296 890878493 45440453 373561172 385743482 474955569 34854666 321601362 733488366 785315234 369616966 403593723 759263778 957711988 514078580 531308916 461676932 957025965 812319085 991844177 764778644 779624767 362286619 397121283 670598591 764694408 152968017 250822994 305230294 541730547 32145941 548315503 892962918 938351358 823890515 969982928 215128728 977356794 372444133 855567012 504764975 716022920 217508044 989203822 887843245 971566407 596501351 914872183 330005736 508838451 363142579 733480258 232505069 341540742 920998952 980014082 314404147 764055025 201395543 624658040 947804082 981096228 641861090 656234702 27493407 383717625 92952248 976265073 740239272 887795323 941269291 959813476 129216311 861403075 576334278 649593063 351016842 776419864 272745444 584673129 434354544 756778309 115269760 959293035 303434332 920885597 875159747 931056022 940247168 988029204 325284386 646936392 191469865 248980395 593506179 737789992 916397570 985278793 858423405 919476673 936702903 959440594 714073829 986957835 735499215 954129828 297541880 984711670 660360084 666134785 964585357 985268589 381717586 576252931 579587517 651219547 857973932 989682241 323493215 520758093 973308476 982064257 598207078 803448067 914461849 981807900 451713345 780448402 561928458 851019906 78706036 624879812 773550809 870196100 388756398 657542434 994738265 997146847 783973077 837196309 356121628 679576723 841305343 954677876 320272696 667504826 358896240 580255945 866682856 961146656 613643734 882391255 858257184 940913324 244754093 510026447 310102581 765783298 969612454 983621214 706062928 849984673 653346555 730328201 443067105 613204465 627742116 927110680 298946670 897613458 184671155 358900562 116269517 727829710 948574315 972036680 355588455 495078093 662049645 851538524 14140386 941909210 162889772 357300243 66278161 529398086 445659512 775979641 522591391 910558652 723529227 882913387 121773384 758060825 907295135 917264046 11916265 426816395 69654144 232228048 612332435 686895080 447228845 951669648 828847340 936113702 686686149 830500045 743261856 992066210 182460408 946047658 368982356 952873848 473884835 677361971 954669744 959769366 671164808 719245653 217919279 376951398 5349848 468701466 332718808 806853132 652172937 740096673 820804327 861944808 71191521 141567793 238152033 656056416 284349115 577169165 570212394 823584014 22087998 137546709 139557631 702864484 329754817 821241603 140062197 450531427 81670799 862541770 983796319 986598841 738431911 806496897 713463076 943136084 157195788 887710716 756062614 788685862 599974605 808294889 24464786 230563299 11760571 705582294 322216801 444365315 724345219 866893031 164655147 937971791 749974253 880992514 87536083 96024465 348846364 992754392 854236938 909188536 839310245 916502048 925292649 981060487 979483661 992861176 896588704 974756722 306654235 646420011 34285652 338201392 453195119 788106659 918987690 919059490 210316434 587401117 191618125 756958098 830727437 951202789 381339096 465399745 616251836 889121473 35215725 651783979 221050303 380502267 977698236 994397170 70347829 823315635 57678457 250287323 410876909 457769486 113986062 769193149 579600156 780236226 946171853 994589558 190269413 699822260 17263076 321088733 385655281 566702922 181661557 249947718 92803676 515264945 660192969 840050599 854143760 863598152 363394308 785323365 626476921 920386227 546479082 617558853 882764505 942431696 278754838 293677498 257715716 956585666 332261712 654631311 918125710 972775897 795638040 914739508 403498105 740327813 291470445 957330605 939237603 981143898 318017809 648259805 965526466 973598747 284422103 687183085 546456472 770914513 536797621 850983767 897855998 905450373 294923085 433255388 562985591 563151256 614152342 755530842 747191056 826231397 755734743 759125630 934501010 960249657 273838230 618089046 250959767 736332330 750588030 908829103 476939997 936534931 998778473 998819750 379344713 767921464 27906507 484777542 387809449 972770550 305424250 577548685 528939454 802079885 930930882 997608989 432942486 936423337 96990886 391891889 720625496 738542327 607613818 966553515 475025343 838616759 337045024 412775265 239455821 270226135 560953324 638628121 415779693 637786891 479839672 852843153 875087972 888572644 903818491 994495207 172969269 929966716 457797052 555770764 378741704 489767787 158008638 233718055 535765535 833174570 390151013 736333408 402555116 617776908 798616646 987017613 391817449 715310469 738834837 853213472 232928106 901475540 775319553 905296425 393132363 586122428 697076133 937600724 31410732 382016960 985254063 994642597 383964426 433175680 14842801 670575658 581836503 921956305 22933796 871448503 388623487 389628823 26407040 569305445 869196070 989313145 736398690 837686183 138958783 370642934 655547625 953145134 575624953 802084719 315334815 776121891 32600914 255946590 885899241 889066174 363762572 926969187 906931727 974408377 942741375 981465699 876667587 886527115 321341561 510833347 759058251 987031026 266169747 783481382 618341917 637398129 779243508 871735912 715324800 858680009 693987737 855304227 534089080 766241128 878699082 896841375 266169639 793113723 411038931 930405732 474433914 707063509 85463258 911360022 468780575 801735579 950214478 950444579 281632797 865652518 518988458 602621624 297938441 742496498 283698702 619507167 752164462 932714987 426917446 853875212 559493361 907134805 380527291 827184949 620340708 990610625 461210482 590169375 716359088 972722454 635446845 753508990 33053203 704645585 919797783 947598461 624332067 805211680 656831168 688946728 329849547 376565502 784453027 995713037 85459720 576210346 549519582 754915207 332525371 612890098 926189632 990065421 372539974 714568680 365755098 558820722 390821096 428069271 388940622 592386663 841316514 993489341 779175586 956815355 56702870 683552954 321357388 670749163 83525888 227442595 945684614 946963716 185662797 691869406 131152217 237182532 149472896 895342949 651129958 730662198 311835564 337468903 746444913 749380231 29448432 785974494 401720011 849363363 69913361 70887796 449135020 603216046 512807398 702814769 456787471 892722987 626347713 978218580 809498972 849541549 62285026 796494885 860425464 997973426 414175920 928371486 947508600 951646909 739138495 836256793 671020183 942456432 762306505 919111689 116509832 135878573 455371233 623384013 873705287 986524406 994564268 997221538 797585696 975441300 322124444 410691940 589533356 758299759 366801456 753246152 41338201 199927727 330609429 759313324 414272064 471062458 581146933 843793919 108601375 837161636 114654184 699512673 702792712 846843971 933930913 943242038 754681355 778401483 114645345 202431238 715702645 746099736 797365277 806629923 967421712 968494476 807502615 828996732 73337469 957595467 255462332 374948231 667166118 712852044 782003982 970593947 604790732 696489899 374958956 794875098 794009276 803999353 674212829 916644067 759382360 959854811 79457159 358013528 75249798 318895996 929956537 947479806 784332124 974164406 708425067 932175945 540231359 800130467 680592703 788663802 55166766 363255277 671872372 888459500 447800969 553547016 112933664 201664526 797911475 822694101 90227288 883552056 995231564 997603247 509155876 815595804 83148091 735565860 527293165 647863144 490690293 740301506 655471329 981653067 307207930 825695355 602776894 644095778 403996107 596689659 19614610 337239360 126211465 233731306 168202588 189941397 107734128 375243515 885443472 926572427 738849544 864224822 292067793 639773316 873406164 900845413 4422088 767378920 972126141 997815141 972849785 994355867 725323240 844629281 829491376 906389060 738402177 982549407 441293190 970394735 537216211 550052807 153684139 262149845 269814240 836331996 428733443 945851511 566197664 792109833 130878522 255798622 27760726 155369236 84497406 340906030 65950087 165032563 654847570 718207500 913782685 932490711 464744812 586648477 547065606 884295263 824418490 994520358 328541630 407605621 583344602 855753219 890901760 958670559 539687103 548972038 379676824 625610212 118775739 239840532 775050922 937469345 676306057 770118747 499046457 760739120 109150051 864317581 563357266 788840115 535536946 602462398 843986951 894822096 302396460 650216108 699873641 902076498 194110511 503982861 187098962 410273012 41798316 167128950 693096783 831233507 343003790 855249874 342635989 473449150 461655197 791221779 688686416 754889480 677701548 991318961 193997255 845746598 760800277 807985024 632958389 760011602 71549516 659962443 512153981 739154394 466869288 891168412 636981507 772545158 200377218 320057047 774562642 957895591 235633407 289171219 241290179 738317066 650985224 888140756 398028848 836729630 140215965 993583307 364753984 818053257 368420817 810014710 167935969 299003895 385841154 832167361 372280641 633862381 274944505 619761547 110900547 720842095 43542937 791753747 638620448 827679951 381804139 598417978 984820180 997445822 281643868 601445751 721274668 906018743 70701215 374803005 188110984 423321918 45313644 664559406 677685712 823775325 355091870 733820417 979512107 981659907 120335459 625905208 440718055 737622116 105396519 835200234 854229689 883888245 912888726 935807180 315144796 555585462 403992167 831940449 714420093 765461303 924070549 971676771 565006110 617893468 28768363 931914982 74695450 208109929 843417206 955924289 531064095 708276597 129875317 851249459 63047298 726472272 372823613 558866208 778426255 849144008 351531008 527270750 692212932 787457589 945460782 954127680 895280320 972982119 738342632 893563414 510171805 608970934 939760522 999292498 962955520 992823677 779555222 913929382 288064927 779570252 978058797 988305135 563135404 794770625 132855695 726803720 153477573 667509968 82455795 972069050 892414093 932175199 440220809 862590924 650782648 889028911 965323099 985205370 535961399 591938489 140367956 563381645 860365953 933415466 559111654 909722382 506866060 865398676 346695056 631528279 507587150 934959534 976426294 984836717 515309718 595432170 305194550 744514974 338018052 752696313 496276338 903053916 123489580 380069464 638448508 655875748 594679100 923721386 970686856 972205182 881887770 930116278 271472688 833439234 690020871 740481162 89837835 973855612 317253587 565071419 659686502 828856237 922121426 960966699 350428033 595090035 441265932 599360631 256633097 808536095 38875181 90147476 358714244 386427218 225315516 764812300 712636806 886021845 24216498 97095425 51931389 228423621 630404409 790435798 566143094 750765767 708350129 932435593 318278394 361119044 486360999 510649859 496629166 542827740 440704321 523118615 124850119 342682476 447990630 644784220 626489637 640477765 198062442 773440298 34090203 353418861 708582196 953214550 577145252 589346060 405171557 532457677 953914653 997294821 879811438 881464798 697397601 903144348 533604 936419743 776995105 855874316 78164715 329542639 726138867 738117446 174679997 411524408 184082021 605136956 749465268 807786530 909164823 974108156 75923375 180287642 711305241 921885121 60345455 139919296 636265922 825190214 694319212 814961692 99958295 441122860 102737476 497729491 717954207 737460013 384880395 979236064 370206364 687597644 284902560 693586260 30046025 790980502 220984589 697226660 325011664 656918277 810085859 871553082 597882993 950037689 494517153 522581558 768200467 891991085 170969176 320825966 693109110 813569949 438016954 526188278 76111593 671245090 531468239 838913256 366142222 398251959 716450434 757367102 507507114 829530430 792750289 820550416 75714798 765644064 328194425 495147742 340336200 722610042 516364622 910309002 729775305 925600607 477076423 595722009 363881541 966130417 909276453 986827756 105025115 855645667 644496599 699613533 272638921 821308002 99052374 99700995 854635548 890261021 9957118 189204917 656070045 873338905 985668055 997187332 213548790 703464358 940136971 996982628 717981773 905304451 263063436 654561536 850168615 851449470 267514211 559461934 959973132 982127876 703283810 761066388 999217987 999360864 447434803 798257100 272004951 778087333 392333515 701177717 541210405 938931679 830086337 895908399 511768979 566428202 329479483 870454553 765345936 984083749 691505606 931795383 539708838 579149966 417032638 767483182 996168009 996825796 342933243 913901876 584478296 819001427 923203708 924042627 681536430 969278129 683476867 816485358 76572796 911749642 341962807 342514041 530066506 793294290 240469132 363801830 517126289 713677388 623876797 915741532 98429526 777023813 386913133 989811497 74486595 902146920 571508510 709482235 705182724 741432544 276762488 410066641 457747244 944641444 129050708 971792132 103283375 923207519 106393907 259911958 330349852 947084629 466354218 956628427 473660586 684810278 619751066 901693752 277338379 672136363 360993781 999114869 732671489 931435029 298440344 711475125 622188100 784262865 49531672 634360864 525281994 785099553 21626202 83511671 941074241 957811061 208218111 585330556 483955724 869552959 999230274 999272460 152567848 875512522 553219213 993483418 722133966 788058042 64785905 707977110 477176295 509510273 892116031 893474974 523045856 793000233 595850343 957156370 209604240 424127804 422964882 701752308 323425316 964777576 573804429 725923198 863333039 951961645 71303832 910833656 893132945 908484593 29977042 171713535 692089153 881400974 80462168 461781551 554364109 902464557 343265151 590910932 96758511 698002772 313751325 394112306 467159942 670216946 156611098 453424079 814336405 994855895 210831225 566525884 623780487 715601294 206747305 663252322 520816577 933049402 965742222 967739493 130588163 377659430 635795950 639284924 498500081 710651959 83896302 922260699 117839560 828748895 389010646 834794524 702142857 766773994 748094388 995169836 251767136 842842548 524447086 703820255 463088851 732910053 539895612 601000544 405198388 975545185 459974885 580880493 177640653 423751935 1966844 350305241 14352949 132757509 67330824 303507060 669142765 695275255 130179666 596034151 910978329 969634446 923991139 966314230 143694706 391397954 784099880 871721567 566843961 840062825 150170063 322808672 69280346 409283678 696497975 944374487 524801130 760588592 630457561 993317547 795617511 869638739 112047316 669531467 697488822 995050433 100636985 644807286 228672847 900795778 195904617 521078295 442605187 900267894 675210747 783441128 434752650 711887078 355904448 639859460 622284331 909633030 400742831 679011187 836907854 946792110 889594564 929758119 17540950 776271317 978126357 988139546 57940784 549798355 759592018 808758261 991535272 997399480 367096835 591143957 636985190 685792272 995200872 998972294 725086237 983721456 919456422 963196969 291904054 969506846 257716092 301983893 807445645 907047390 672115386 716808908 22046540 427181320 522646466 982229389 821371322 983695485 705337323 752201966 948659603 968753050 181935751 778623581 374969438 574542002 750532154 801168656 155009272 502953618 664323208 848405576 771143755 992928327 458048065 513486808 114738226 644830289 754920489 814975162 629342876 773592150 188448868 743988782 843829673 877113059 646929726 766533036 241389918 254006978 441784563 696780676 314502055 333794628 696691456 860925451 381028810 621726535 286123006 549317874 286563589 607227648 443730890 979986127 578011388 731478128 108878673 724132549 407753410 998154621 799336369 896057431 198953116 834163618 779729936 956550997 35920971 65175279 383634516 709716164 75154740 823205040 618028654 927479466 965579222 987536878 559652470 900757677 278016810 345475115 161185082 355829934 981923735 986517578 563062217 988867873 7213842 873406392 84732450 543612447 827057532 958144097 319729385 347384221 134897143 897134669 489551274 810023045 422903594 557796125 90874769 857720042 15689991 791657106 480535572 790902467 494093277 892640212 800986553 891454501 888653766 974748384 417640894 645575721 767403834 826096995 308800871 924766482 69979911 153263637 945113001 995305366 270015286 897161113 537457242 766846482 377635190 886682119 371133261 877192327 903711372 985639715 823446869 876271329 567010159 654637110 957606088 977435311 893292313 899544472 310575841 786244108 705793865 708066797 925093843 929674863 802646247 902612139 920511120 933771998 586776153 756077031 857991233 931441464 530453136 971386748 892453677 944436905 777210741 987379345 945846636 962023254 699130627 795376430 128097401 272868154 799208357 900805885 370781048 574370805 628173785 965073496 209533141 849326521 325357020 399636322 956584340 995819646 791096375 811179295 526119608 827774610 257193904 839125585 341153822 979297132 565274824 863519384 423319596 649653647 147812365 687818259 981636099 982529505 642000064 655008453 201044386 664153357 913144266 944451444 396158288 693567317 130220609 647979044 796763399 875180717 550454551 886268846 554611793 843374786 108534836 263121160 585633953 915252416 567913963 796632033 290776888 410261886 865990030 944332071 599688094 606778562 380107167 400666970 656330822 773000732 376010081 942885779 981460912 987541394 126538386 876555181 472596031 899729339 684004081 980315388 476580006 837227800 860992549 955381265 762898226 988855140 884852196 957159032 773786614 991010381 179046402 816564831 127415855 744112551 900140108 943453067 993431179 996583903 704608324 836973528 573205509 854271437 24081354 939419491 264118998 788744773 68728450 78415156 2605367 522075817 343126359 985292785 709544370 961282751 157586848 358957876 901056132 909171079 443004502 686409590 440109066 716325280 79512101 126836625 444314500 842507119 623688213 959521207 429314328 598567173 106211559 734974958 878313042 894677061 505684772 959605886 947862115 994514713 329395097 909238594 629890995 661720289 584616752 750243699 750858652 900152911 781268308 974283763 337663357 482071333 256025441 956294861 504285684 955707492 209289651 246082091 893055303 940609671 57936776 240258260 286781916 907281200 438203931 822109527 31362433 563525942 822334065 987029842 731269309 770402296 989816107 998302512 899787802 899841451 957476778 967977429 597508693 922185207 186531867 202346197 457747802 967449373 433529466 726453706 190700966 976494087 574203911 589229837 556305970 704226205 941515585 975399657 404446301 552057556 936825178 968043528 615400002 640520866 376546000 436343656 965117877 986096639 955180854 988451398 345437591 356772428 811812551 903209141 864276632 998725212 968631197 970312669 74498310 789172412 28597328 498525370 527123628 989076345 474136150 891349351 365200764 759563491 543391662 998649020 802561046 957895353 703333026 955867925 456532414 649826282 883920613 890405041 190145528 901254475 215952631 974884743 380676012 940350745 394560891 822147403 231328085 797348994 656220110 685307160 721807557 761455125 806622294 959899459 688365406 744646564 527363648 564263131 180575452 532551426 88387903 214015185 115908782 737889094 975241983 994330550 628191891 876572195 654733925 855724732 998103535 998845906 154650273 907795293 541154622 582131041 356723368 672532703 607141789 955593120 616189584 658986798 457654182 767768606 661385429 735496302 612379098 677277626 761910358 987030793 747066277 784873749 761867650 928736992 900082023 954317607 142841556 350479586 229038102 626619700 809760191 827491470 598187195 848806617 139358032 868757366 612150867 638984670 349229013 353514598 135967371 428335222 854249078 954869613 461726067 533236136 671387946 743227260 362744635 789569582 821427283 850957412 33998765 383195957 666595783 778386543 396645430 574350080 203289221 644436530 464118126 577043526 979110460 986295819 222618730 704141879 172195222 770291991 496509991 529431492 684462275 746268402 412313157 531826911 214760698 514505734 208527081 309657129 839394726 937973919 18144180 796838931 36306086 446956958 777133999 940887679 534368546 641436447 422960329 524235523 477605081 807502347 161112010 919986205 703568303 890029270 449486198 593844374 539528578 816022521 346796728 722063299 255793707 746904649 911959588 933415356 356563134 644625785 121760790 358238024 132993562 942161760 328857612 774080827 732264968 934435694 614676661 617714396 914027771 980097075 152912679 340601244 2290781 852213416 891270213 966090106 964457025 981877160 971811620 979319365 934201397 959946225 566582203 570069202 328429002 934237306 718249529 782099612 342435817 832253294 765997628 912940840 183716758 585059120 185886914 291021765 504306899 838521847 5155293 585190729 930171945 977608593 659596819 702341832 394457212 502273677 320183794 572366386 353497330 826499129 630149077 670613483 150627535 652574377 829404530 945606104 431724307 667832373 376110550 898205915 471708355 896203850 982337022 993144109 606432089 916938808 302231519 660773439 548633258 736386748 361077407 450024330 382307568 399542312 173486916 388763129 943176411 989988780 796589172 966693010 109206349 240346337 711681825 907862811 148141035 413260647 225680389 928058575 138747483 753515819 815064989 825602197 183457919 928125638 630462696 714697486 394176681 515176189 117381847 704153897 849412605 992054704 865081638 928330704 493889796 625381846 669758335 756460189 514256839 542393079 201485303 239902037 662876430 845373630 239336314 863220692 410419759 695611608 102437783 253225824 135949517 500660177 988707015 991803839 694242785 782306798 270108146 538928982 769451354 954049220 349301150 578419833 277995538 585964785 220192951 845912923 894921254 903776839 378150828 533239289 451340306 789389534 963866597 965801312 216022257 925983869 168595471 553646287 241131058 552462004 157362012 842293803 815083419 906125683 235162993 447561276 888956434 923000365 956929419 974715472 471322491 864291863 853432922 919910157 726220862 750807739 70157570 610241167 524005048 592422765 543928483 693876033 846147159 915199705 416790713 602778397 471219620 729715092 518756409 838961602 869636803 940868684 570641180 899404868 294696777 915592125 259013393 403272446 570323330 696787437 331648372 627366849 667278304 802130460 523910332 934304274 786971649 925520622 829668304 978901236 959546852 978714734 968299004 971584255 746318888 935676410 179437112 627836888 600565520 798477263 944690505 946520236 315901111 669287558 149468468 495622157 970665602 989338078 861000121 914507578 935733318 968526308 65820389 327409997 709959219 804628831 669370148 822114394 423708007 605815765 678305053 683527712 838967607 900082317 663782872 819341919 320697212 366667825 905903553 966607758 62448419 445723031 732663009 956569537 113704211 793017164 206259456 965602616 979212870 990468197 498645418 880198278 408078279 423124496 18300681 468725735 873390408 929601855 109935960 980824418 429432192 606263863 623334219 915284705 212736383 410151511 180819176 973461250 79730712 362276227 644254861 658293122 86518151 581046680 588141788 864272574 151621576 218516466 569768015 902491059 807065256 969136954 167432244 770982988 507544969 618182479 461715535 602105243 481054744 621202129 579246140 707558392 400683319 785552274 402480737 519906974 827933627 968632164 950590577 994038528 15758840 160141692 914373973 936620818 945109297 965202380 576088860 885910234 516940752 917187195 573592721 647043930 498968711 574155287 9537097 450631289 993244621 997666115 225885360 619169692 33065348 420244593 220246573 969898851 664346834 668678451 139260317 793938157 128678014 183197744 887802025 981042489 871524914 937310744 76568217 510441146 637255194 690386032 277993250 955219539 354566394 521123597 824754516 869851760 158245886 583750780 816140476 841808870 677323949 824791201 579163892 790534410 769000397 903970017 453125188 723265952 837565688 854794653 176844814 399643768 640479925 759977724 245231760 913770293 960780489 995612999 655382487 860746761 758817637 826599371 679845815 685982770 102751943 207154847 899808494 928107539 22740126 682222888 8021726 277437117 559151857 751017162 592551436 623700217 261852778 669884905 520795568 674555270 404881208 542550757 414762673 872424956 816324275 998288021 384259979 659266170 907970507 913079094 679940209 683325526 659463728 857854518 500898181 608365630 799416402 937535210 732660978 828286265 427232362 875627598 273494291 807147156 544555491 650578607 387027977 896498377 825264122 852443111 181488550 541164535 991451665 993921268 371881528 606944521 12053603 668850796 80607811 339619205 900083247 959454593 192285196 494307055 699026365 847415644 603089634 793525547 925230380 970505719 616173047 623800968 319529179 338927538 532009305 534716538 39566014 976809940 800277801 839539910 753882864 896111388 111735442 552255313 463770402 525446665 258601874 532346804 808721070 837987758 533812967 793189751 348018209 886173071 678855337 855985634 703061851 997412602 828807170 858656973 402814905 535619899 421096548 433177160 657200036 660726613 959089230 966032285 122630726 573997243 605920492 644369071 324481387 894007693 235715612 387169078 152459371 161770416 760049631 824193518 700365265 846561891 779516740 938473294 441162005 943599499 895912023 929330521 199718448 638391981 240282505 427849658 79102197 134764346 317711892 404223545 802349168 882455460 36823461 963084561 757634956 790640563 754584446 903192390 373734761 476865792 88158467 287380022 429645537 628159927 671847741 787673190 165054673 836947298 300968511 583467819 897965312 976335636 26944750 263562367 484005142 487973099 629378246 873097028 667633630 773887732 281226524 725978493 67332889 538017979 394373447 594953902 705867421 785827173 540239956 822780194 269883188 634493000 342410005 619102101 184056422 457493980 360444448 771410707 69555447 790512712 668514916 730261069 970491013 987299606 200207191 771717171 3924785 463283000 572730088 837544835 780768183 878272556 927739587 986935318 117247487 676338547 578484383 688018167 565253357 863447850 297053550 814961662 720907208 819939384 268636214 532686695 805694877 923849840 47022647 628101687 826267756 902125060 675670327 760627158 447983861 481046636 87725449 879081634 665957145 777156643 882678192 904099254 746180891 986928814 505439421 616432209 141052166 883113635 43419915 337483082 265006200 279563260 195453963 959317597 917694398 926168603 710880702 967774435 984213543 991320831 127645297 414705755 661442651 985757500 670100860 696483235 806781604 882175626 382742197 582220813 706187040 884009538 389392517 482668248 630057273 777101109 709507127 754332378 868445381 991396270 703597510 824776339 456813693 817636373 740824251 762967680 197781057 830640719 997321742 998606025 744080232 953491859 357026912 593575314 65719342 942788657 653427941 898918464 574211040 834703856 727411553 744191936 446540268 495880919 668058499 732203846 494367696 858455204 123775621 989341945 21826060 222113044 723407467 984990961 885215216 942395548 403172287 879355027 888806393 999336586 207687658 935327602 19063106 317340943 161290600 842392766 6545764 752652771 613046708 646179000 63007357 111951501 724440406 903379680 711165218 734959575 722203252 831097026 377931005 398480696 902508857 929785455 348054643 959590723 348357000 718811491 463391445 919603073 435994427 556585290 143734971 358161036 846115839 912815349 436716134 644078076 634573675 696910590 691934513 718355543 684730240 817200190 607973383 635351302 473961646 645631393 491757681 530606256 620633951 836146478 930182854 961441569 814208065 944344020 527763158 951040982 559146163 640904244 124124127 473133306 615365448 927424512 41889328 809868947 15216872 791963101 689983034 912327815 99485492 592638690 319787687 713745624 978106767 988675293 127496015 626577465 804916602 855060487 637974246 826988019 348142700 900615025 969858489 993822144 76045791 239476543 390920729 535508939 521416068 938732039 457285435 599578009 362846150 600300938 138201806 578678562 34834847 941030593 914385824 957716029 161575617 392014387 405813798 481633865 736176928 826574968 33049615 392802377 687970163 718502253 375705835 430638148 887853200 969330771 233965675 277598751 335853556 483755981 224061825 829851459 151853172 277618761 641118408 681645453 229178661 706343201 515857898 862546561 828079566 982882172 159132981 770415761 602389605 690984325 125319034 671093643 167055961 497132750 534201368 890389796 822687181 980763241 685881070 924865717 909665188 915149552 93900856 266983897 591740674 892591003 521514324 815371999 358390679 471703213 505749410 767483277 189634376 529602177 834602736 952832335 268113522 474083004 402344335 497580951 244231708 676265263 542476848 733577229 341330215 869932029 913790405 998851605 432661660 983589442 676290503 859878591 25563115 799039021 187335128 675658763 420113287 569590614 382209237 535224962 167192396 780972958 92253278 824597698 914825619 919063934 494477296 520697235 677764032 739873581 899478849 980850487 812107445 876813735 235392734 950089870 50142863 624518432 407429985 792329305 958114092 993919287 477000356 556197695 835517889 840630584 488877169 942196782 515779974 858068285 144899722 585042011 304646041 575290916 842691436 895292695 805772959 900001020 903610647 921678030 668082141 944605139 848548004 911569568 434459220 683784525 941165131 971087852 32891187 363050869 883848879 888582401 259219147 472705314 394061287 583868107 229251099 570410087 62257163 511254340 367210973 506845948 262269942 511101336 199655902 522914430 697489243 814011634 839024453 950115738 816093919 980964818 647999949 677026352 792850297 914383155 361325615 802990446 997155974 998517348 429541984 696073038 232037538 909465308 985828383 988210058 19817576 126262292 491494066 550762065 911807850 919090981 857393497 885991194 768718054 829696118 858763309 876468300 814133738 879164502 106353574 331258787 906320526 968797230 230594845 418831974 153155774 218548313 33715730 34975456 778041485 836057849 102275508 849982797 199796292 843866337 319557686 607893406 192943949 220637196 177901101 585404907 676686027 945647303 40003035 637664951 757070846 930426593 414706111 925693366 661605789 773915479 69959208 448656989 472943935 586646623 795324340 858998808 297915291 484334283 283774152 551158692 216293827 787838667 599973215 612311920 376079611 703454710 708019270 944547176 973061060 975110668 24561100 867470574 58652929 368111178 499890803 622629642 504431294 935612840 43628551 651666882 29558319 781586104 469984116 794363640 456770469 867981185 943708000 972678015 608757751 874006517 984281345 998781571 953870863 969181119 275396363 432457693 126829156 611542500 381757654 988010144 489942395 787107459 294897479 921487056 733324224 919382045 917510101 958467092 875288348 885651912 665120813 731889891 788009106 862589671 425669340 654276659 753771752 997612382 841933750 866861159 446400590 742998964 711472252 789195407 834574454 942366144 669722280 669728153 666786099 865490100 214866358 881277312 20694906 444038144 881897386 935806531 460729330 563512218 833993058 978233020 822513108 922484376 546747500 931293244 725709925 823806538 279289581 811170785 408617002 778796450 846790187 888467906 621885713 859002319 453073174 541658470 747917745 915707611 483598940 521310679 359687413 722888417 334409712 434919167 524460356 546960261 444209868 796526510 769014391 885458419 210119373 456854833 288873985 426167986 627093929 836641019 537402113 685226440 412018078 900023790 810967056 841155325 513929939 901259236 29135530 355499414 555642228 780913626 368671573 473288275 646433137 729026796 626537874 883719752 694354745 987030372 682123858 779482399 789077109 844558429 992430952 995423551 14212719 291976968 643364262 736219630 170744931 178224567 22868889 878927629 103632 337285184 412282509 578122019 393605131 767058798 744951182 966614553 952327124 990270803 429535931 552119228 912687823 945242113 510706081 807530398 412551870 782923519 748319496 819107502 333771201 817367204 827612451 851810620 243296036 666528104 16395321 394269411 648322060 979056091 800601466 835944813 623483984 971321229 268046531 756774083 904575955 930371914 264844433 991368214 60510845 193532287 493920646 724122034 133825938 443803765 587863145 745857435 801295081 864408712 580750086 960699808 282289399 387220151 24516475 172130220 863445498 871572022 232564604 250932452 574549517 598617753 248212901 305546498 657690426 710586235 197059837 515811524 731407049 769141824 317702939 865989150 799638317 884731194 682500712 682769521 373533107 938018765 448061079 687669900 385180650 622769711 686177455 849379483 643399814 901583174 695727266 858076712 329786753 799234617 411568702 528173439 116767408 977983494 20619390 455935243 883960745 992969729 734264714 977328647 314419014 389868024 564743415 699210446 680800962 946261331 367703529 527283697 118672041 397862431 409844588 585410770 946805651 954985241 723543300 808494936 584105270 707228700 912739994 937948632 400225216 453919320 52696461 203286685 995510049 998197423 57204597 190815021 493304857 542867362 444720897 660895839 914733475 940590875 628516916 879445301 365710851 638650258 926395097 957522279 56879057 634126647 695843351 918645916 640890457 659686769 618888229 776075745 151035654 396815279 402774666 968148292 116225012 126735040 395750248 910880006 854582065 887723941 324005835 914347765 837009489 844745047 76720686 680828769 562751295 848088360 120352481 693758152 977234128 995471791 215188316 996277176 530778079 557358319 868066647 894261079 545257773 664034303 19460619 943894900 693246257 832112874 925226967 936913422 623081148 645712722 477710558 655920264 467775874 808945781 811894971 904989476 284981585 551822768 387793593 782345255 68092768 827819207 564006465 780483611 121937272 844013167 476654607 582857730 490313905 685983749 978203977 995623345 887748267 945266707 108255443 836129767 648927818 935819669 605991889 683343276 998700432 999246010 698134460 813230132 985273494 989159783 980821916 981869022 390408211 909152707 147031645 764803956 777860120 779570059 909144183 913912909 810200922 869605257 139090696 164563894 529887503 890360960 570543538 834626267 289719806 803287229 947308636 975074245 595035478 811197801 678116468 777402076 974243360 997285356 94632995 718152923 996705297 998944172 285394455 485346131 800916580 944584322 215797416 568193096 136604274 184852750 425020860 945172226 460991125 735673970 21204698 178972359 285038443 540853724 461685936 519514871 848315989 850994272 413108445 537359708 534177664 934117417 741450448 866112308 281979612 433030754 125992217 344726465 514343437 711964017 823838009 864236748 542373908 714358442 492350160 957511631 270476723 988945138 199779883 322954765 929406173 986570221 229858510 587074863 119118804 688852940 331338299 554357021 256208711 751316084 298481212 450207424 418693571 634307618 562707386 894271493 980659348 991659356 431652431 578239346 989973025 993253307 24955335 851460013 33976906 812315988 476615258 831876339 581772558 983909794 485873053 811680913 416066119 851966678 568715140 730623188 459960280 944692530 538140691 892316159 755176229 944822606 953012104 955675317 399140073 963663705 200072708 410174320 333454653 604146622 8988997 976248486 406230253 563233446 866198656 924162350 18832966 813244683 258321535 288780389 889551918 988461427 43040149 978795110 808489699 876940041 89261464 438684480 168383030 251580574 418578842 583976516 454540523 570806760 677496810 862608751 48265752 114732795 665968167 849446726 966332926 976736024 711730661 892562213 691054118 936423739 561892877 755072764 439912512 487154256 814923836 999108227 186774436 461063071 725183787 916350189 165993073 752090692 493236336 646759478 939183548 969605863 196577944 373853191 302164308 692396746 594868004 864990521 974224809 984284268 488751375 752370612 784156863 830438141 487475779 555744863 721533755 833590446 931852848 954456586 599496875 654783537 936150521 992013733 516014074 999376737 898492102 909434863 934029470 973862109 615911737 969515331 168521405 390655924 164333513 997647576 733913185 972129030 547168700 639975206 202367644 578808704 627869869 637891796 863902087 912994047 239623492 942440569 532904734 911396956 615690390 781758533 820402980 920970942 575265411 897050401 742762811 834953339 55717859 235134089 719458809 879790066 907491940 986888054 734633966 998719532 811799461 839799880 472868095 522326097 827688159 929625828 91567473 610367106 150955216 442617217 948927852 948932512 491600421 692294144 356358499 790720665 161767665 709773226 147236843 187982402 751820142 756457854 944583764 952030106 823637123 919239244 600087496 694312316 246298079 416192530 995883845 998144296 579883114 772651043 831712894 945286727 524639667 653070716 556428493 944996668 367358128 420230843 18437864 414766272 896756594 944321788 254458604 925540724 1977163 237926849 58448010 444545595 258958823 368969246 775867404 971707509 458925637 557601177 454738320 481488731 702769167 715942462 214515917 616035064 996998101 998774644 112353332 810869967 388319844 622804716 242105551 767126615 810366356 958226278 776336928 857575192 796711436 931607117 732561531 997839218 348176999 582422298 991242766 999374796 319906288 935034798 138956655 708271944 620592833 712694579 87921401 417337687 276784453 990420410 601645167 789197912 960087924 969813891 81746714 922944036 811733131 866071208 712350515 910772850 359673273 503198219 797559855 867689020 636400600 825553998 918574624 973264851 852891533 955508387 714621622 748503392 881344965 973726510 180028535 738820933 257685557 906687948 267331106 663901830 573072417 610494897 690120638 824081056 309650170 361735860 730298282 736852810 249086199 545928249 743293494 869477602 764739608 946021370 37140606 838435284 807779222 811467230 293049580 586840842 413918597 583717959 526991760 891101857 835215509 903122105 183428130 601192236 126682586 190735811 742748721 916331322 567052851 685898657 475007397 656380512 523776386 968921187 312435316 395272564 283292761 777488411 176859358 596619675 611151921 937778441 40167058 746731528 824365290 961649849 920639657 976864189 661691544 709829873 543962826 697250788 495040469 958371409 132598249 248759523 810463676 859433250 141454166 924823299 220999706 762326089 920804295 970680949 236327046 584215463 195324968 737962737 822339253 846401255 207043658 752262376 20974638 48206126 174677311 874849080 677465326 960083379 893028606 919078913 540652365 827355495 332905304 779051375 681239522 828947118 407417843 693406486 204685722 737678401 623484489 629187789 967048253 983174733 629058770 958087181 363647917 511631460 638649696 790203657 677124796 767424353 167999667 231846298 105319631 827294550 571723053 624109701 586933878 762526367 591053192 728862039 991959828 999377975 837697234 884029560 55439779 241096605 982407622 996318858 198215298 541457332 264380750 825638656 100402145 445545393 411352077 668922435 266529778 503030019 565061511 816977256 642229604 735063833 191112318 990687721 119499534 585926621 164248584 224559069 457492960 530476318 63539956 124172021 874841644 947108059 735905675 988549445 705000471 921373161 206872519 487509429 776233041 957615979 586203884 613751435 482791092 839919331 680187137 943511070 125261119 633572744 573077685 857474916 59897739 170731940 164243998 433497219 849037232 902188297 629021427 948220493 144618352 849174328 832447702 917768262 890443061 909672622 319030368 516629541 361786822 374701201 429864241 738838425 1745646 201849261 555248159 598128631 195858538 915984670 288774515 590244123 942228583 966617713 781441059 851840501 427399770 943730944 135621112 577992049 979864356 984505919 286959093 565864652 508268899 578541855 820348823 891639483 542213252 552066288 955721064 964521208 114708761 686622725 419049996 428903563 929987225 930500657 527978208 598813143 945763171 986762647 529320025 671315909 408669498 426728080 23995048 662810424 804241686 913011320 419359850 467234990 683657637 730299186 928185452 949103506 152919849 837011618 79608678 176298698 346437695 546639038 331242744 963283986 947212755 975846346 97363370 153448524 680139577 976523781 961739278 981420845 657323343 974550696 452987526 955152407 596859093 752775057 747160486 783580089 393283698 412849887 435038656 647407545 847224246 963515453 834089601 852254174 388775076 702115726 299254852 674960598 260708777 386076736 534422071 767844512 80217818 889928436 986926035 996712670 730544963 984609017 81040424 691107092 726622444 903421161 249293476 774436933 634921659 639302900 597162982 718429859 817994372 823584410 176387987 445379407 627301403 851840298 342708479 816532672 212430578 801874202 663947625 960953712 634519353 797685751 545679066 730802614 538822676 895916378 899640402 950888898 31607036 765863377 33503640 114859701 271911983 718901815 475801301 635794223 166569724 929320322 186138220 320768204 104857538 134348046 364347745 537180865 246483069 567622361 449595589 657804875 526802508 903405947 966421269 972381426 176053180 479374061 890546929 947038538 239678778 793909301 587528295 906341712 785013917 969299023 840126063 886898616 223019127 957423852 362899390 972997350 807830894 975651922 454202560 984258480 124803081 717365081 809577716 903544065 578258441 615588305 83852088 149381069 994924013 999203536 359033998 365380707 380660278 499803979 768753620 834020973 89712777 596007456 905544759 947331007 700780476 801633613 360486031 445281301 984969500 988113494 762634880 832735263 854823091 975976362 905152067 986291614 45102705 432553650 862154785 880279136 623720013 900353770 846972427 879771719 819657606 978461072 243761684 912368542 884592988 984045130 172883499 807871508 494198732 869253799 478392438 545740144 56552177 396956251 503704796 517987177 229087220 233134547 584052844 674346566 675620114 681428716 537447663 915071475 189201800 414984834 90930840 832530064 376690553 729181306 535440132 589614061 856261028 857754205 752162759 835825353 460945790 711221231 283931201 298253011 295622311 462546063 45188146 121370682 862668728 974276092 506800822 553420145 355865693 877253846 408198657 909969713 291197444 360691662 960522065 985417311 664305964 703813657 849307700 978223273 272334174 444784668 224164545 809098597 911797334 956632227 995353996 998321810 794545221 926409642 554822409 975246633 190277835 821457119 827682549 946009678 280872740 497416729 881748212 888013216 27995271 677929018 101301958 395240879 305092907 322821147 890830645 913930289 510041750 609953790 371898 862751973 298924784 448450998 463669634 721187793 314784764 383610688 527569112 912050413 274153977 389012283 25176869 993970077 84936550 123168443 733783449 831457590 170097720 698945364 13812403 713565214 837305312 897842876 903697927 926425518 203730108 503659395 794630103 998491062 872824116 983045087 194547080 709233982 276811557 735491267 966877022 989179654 816034186 963327086 301622377 516260031 26811575 761107245 600668150 701616276 432430328 774760972 247693734 976434748 115219347 550084405 514944919 715148346 907067332 969585368 575656372 634851637 800500859 817353633 200136454 535561158 607473685 841832156 670844438 743747793 978347606 991981083 196551459 284904434 144478074 922697941 268413674 747559410 35427243 794688024 517701334 670074538 246429506 408870560 619486798 689402679 668827737 882228996 280296130 482739997 962013445 972325821 160301845 320378050 60985974 364768435 776475855 874740128 945203004 951190775 9607456 756053036 567868869 618075848 859785022 972048104 406171636 856058442 492610646 559406549 547968143 928014643 599021435 856162231 4125774 214042621 71541872 925276400 237001092 865130935 651664529 988613240 358082195 841465976 44976028 271191034 553848285 853116738 482140890 780072920 695184639 882075135 903710369 924306487 267367408 489448957 360014624 773859836 314036892 806361632 359061701 659020113 511778516 686125434 362466864 914232554 240599481 858533385 888470770 973974937 260339955 556375867 228500455 482790417 585925328 834241287 998693191 999102835 271087043 419575566 144832037 422861796 454861574 559432156 692136307 759319056 599770111 813632790 945702854 970289283 216240006 648836971 204205019 348016515 745703041 899727209 362887856 772043163 243185622 664448333 307813482 598737082 23471471 552539893 117979068 897118342 693420911 707151455 726976875 931279374 693952993 933579658 438967529 642030323 211673490 699008999 442480470 467740205 570779565 733008795 787356167 830757464 80639619 523928616 161306863 433932540 763471961 854571103 236630752 315929833 593904655 955169668 507245588 831458003 991751694 998448684 75010725 530918245 185176421 696280003 936725090 955991958 42050598 337304628 505979957 611610869 664412384 735784249 610539982 667688941 45490539 337065179 636389106 802957585 994425641 996420468 217388320 844686074 650752459 735791764 732919779 890673673 347827348 947554217 53016490 292979626 438027238 687121713 701566427 938589428 831904355 932186715 269960195 986232540 526863770 656567755 69820746 120576885 57806676 778741204 824650496 957057789 813221709 840519109 970704530 973565133 345684259 514203895 762904175 946220074 209257452 523201546 699600727 781217401 642346591 962988959 852857628 928450642 910900665 965545526 524925102 808984137 568432874 894895390 146708400 161223320 896875150 972791900 883634174 943352783 206403027 565077307 878588262 945887187 46220890 991544798 741006531 889196527 322427464 786590785 494046808 513109228 500615348 960690022 493800481 640642334 401058071 952692040 963183303 979714724 400537545 610090381 558161062 767037439 66231586 833998075 851205673 949269625 653641892 739772640 398572006 620455254 899829047 929904642 48249835 898501044 855173934 861725843 537459460 696432464 741352891 744734035 674127795 690717281 122122911 411992338 623597609 646403728 604440564 863685825 341151992 728702880 736869097 748391047 659532022 759969152 350970158 534327587 293677331 860508185 428306595 733779852 530323157 811818576 382120519 959210931 403062935 727862076 981360201 981624138 558704971 945071727 953929239 979462706 573139078 602085862 188891413 480708059 394466943 519623963 644836833 891217573 781816169 832578773 498902645 623414684 263804252 655151330 488379262 827374665 625584854 675917795 8689776 905706214 375209381 876716726 659584260 691346802 210995846 613289792 326474773 583442209 359068463 869948047 245594729 565930520 970085882 992210521 817411792 960593566 581516651 608404712 451125248 521298758 831703448 964113139 141048652 469885407 843293039 924487583 892184819 892953938 448983413 481780738 418323752 876937049 548845085 707325767 885591332 935972166 753904292 859580904 683246896 690383622 714388633 945530433 854357046 970534251 999264080 999265618 534446387 906827773 589604318 648622193 334130782 576029614 844205817 919615941 607557068 944570850 244004562 411813480 665859263 671402225 672326536 676603173 930153293 989729630 511294946 561253260 607022594 995162315 933512397 961122891 823118881 856983360 425530584 924491617 778775120 838861588 293584327 760573705 212474851 847871529 616385225 816972916 24129349 127389837 109730892 557236455 818013689 923800838 124600196 859602676 917254558 932943693 15633150 360325119 443743070 662395934 336145823 623861628 408878374 480975433 314930522 744399635 214405335 686076157 945089176 969821058 948290842 983077544 900069338 904662136 389570228 481127776 629894607 901231099 787140174 944157572 878517001 947086602 507938274 614831068 23680006 193927153 89616762 602434389 937669005 953696735 104867544 609133786 570425168 882713088 839425307 899055035 534682487 577464397 545838150 585968129 723663638 855338515 894331219 913533781 259725332 688795185 505850754 844937401 85503862 683720449 48915004 812007025 559982201 606894019 617887117 741169920 584279825 872971368 99984729 407970905 7807736 628182914 148123868 721039155 626935313 945314758 518595978 864895193 958223671 970453548 547661587 689840230 847540046 923617986 320794606 696858962 415846037 888470058 619960733 737730820 874861025 892120851 823463377 995960265 953801328 966759565 711761034 936460581 973257841 981546398 548269201 602058229 918940896 998980170 775434882 963124024 616680534 726880614 65880053 948899452 892955007 979822786 374013345 944088555 838085294 953323380 541541824 672740890 649540974 701280142 307765496 968461588 259312356 483403851 209556732 619814913 386642942 995924728 171007328 730008482 480729398 764002671 308221962 843357970 899523210 971802341 586620523 991050244 348591318 932222793 37700959 188474996 545431902 761119611 212199951 221438194 51867686 272750217 606473526 645257130 869122168 921114701 643039286 834504303 425381249 716866479 221255125 560695067 416866298 509193935 945185177 962349240 16136818 207715138 819175990 870869438 387999734 794468213 358762562 850823685 516614832 839740000 440777226 563656699 618960363 694218346 162271119 578530873 17691778 407136750 496451738 500346235 304456123 952386467 281898594 449338997 581795435 879234833 106060056 928501273 523056835 971190771 834684944 997248910 725416849 753469641 211615383 240354038 621881860 677763073 947515634 948887898 71179780 240900093 275343630 333229358 305053686 717097650 779250742 900214915 488640146 873860004 970673617 979678904 494906262 808893737 130832919 591488018 343182211 681051917 723663200 953600331 555661388 906727070 280538458 802478847 614502519 846227600 538927724 540122734 729872537 903873412 583083884 588619227 346884353 878140684 473060567 605764839 311844906 562480197 862041917 909427920 578243168 754330411 597552039 927984144 783156350 855491729 846412087 958657139 715240577 911055015 27191938 667392948 583139943 872657813 258523351 853736081 812134551 955749846 751615880 950506091 104475110 691632697 397528116 934292188 22932863 948567373 612871171 758403367 598408988 784979376 425561525 938870223 23461453 867266416 485614043 697157915 710601293 727656659 85332909 209820420 859164304 946495103 64630350 959757296 778204371 803884018 479636148 801649249 882728837 955853724 430699013 476418729 628494501 974362642 773791072 848526016 119909947 905201906 475068141 839997814 639466648 751609832 171896647 286896872 722762167 907643194 400863381 656446306 806130876 818277358 435511656 812048340 299322619 416154998 687635181 944395446 438869829 908449609 978583069 988259490 91817177 338026133 903156106 948878412 721479423 906196138 96913033 967222844 523537038 691645108 476456883 636283683 327627889 501755927 383425428 850579580 446696860 889498649 142584215 237784171 834697061 963308953 527514471 670245482 615189174 737701561 688559153 976499056 581704227 649038518 7229548 797227468 709493880 771044030 580802662 660692531 6498304 630737662 254745148 421298958 687003742 823782221 821486857 921036613 854158899 962198064 753566562 878474832 554470622 951945389 759240284 886575242 504614655 610448275 237406451 864321766 169584481 948832499 693328121 725613596 42959003 221800684 824672847 943030533 529873889 715028597 900586331 989573716 723447729 767768460 790410601 937428164 579661764 863349800 438188918 784086091 650283421 729447118 162794108 560732057 499234189 514732987 412925546 844390701 334898143 822706849 998649157 998710967 70330521 475331474 55372965 265047798 577026688 903592730 967313684 987337746 40172658 508642946 276176131 530783359 289501067 867249080 289117267 951070512 823545072 848728818 79899086 620987812 881667314 896761990 4130031 546760069 306572114 379025331 987978169 996743694 786035031 994909254 364012491 368513967 85012755 312651616 96246533 906626376 42725206 247912341 800936607 962090780 967067270 980470825 93553466 133749360 349982148 604766998 274156182 278531161 550725177 578326219 135593779 244429259 99874043 505600373 392376300 798513991 463936635 639825709 44369145 671921306 189272898 362735328 762582199 995713690 233203899 622609000 313046130 314790802 495242325 863349782 775295738 977635011 769248875 996310418 316452568 845392656 898412280 976595814 874004603 944694994 818579952 974952486 841415208 850004165 63278226 639029326 748225299 786952327 957080037 961911379 598714764 817813242 328633947 489031871 289918679 694270278 442407025 520784278 363070049 524415335 337899959 464496745 568067416 763116315 856788566 966988782 597605562 874687379 341611866 460204271 601566022 894958312 873860135 950755116 584620864 887710745 801590238 842858111 315334017 732132418 515970703 768905066 57189379 602630629 736878394 927416085 74729796 479633868 458554987 479876993 419880581 456143584 158906814 281943181 571584339 938905211 295235061 688777414 872822595 946886270 933608203 983089649 676759301 980405394 202942890 987759837 580360308 913588987 425956266 927129408 613356554 758742347 636252470 811568406 734031940 957703630 210804018 832783119 989913738 991251750 254417555 908694106 372447424 877384403 141949073 893694370 734747070 956518746 608701155 922477071 756675750 805666817 775032230 873250388 684364389 791887502 360479896 531040903 330133041 938291122 534448889 767871569 466489169 593438704 377415101 546710975 844873940 981662482 72811022 199452718 675023781 680328663 987473621 992883278 560038891 759436449 684729040 916913140 924545695 996864076 472904798 983545742 572004826 830756616 83503094 742742441 805667925 980941148 88285050 750389003 608845164 900974714 107767348 128016478 147888176 350800335 8972605 55671676 181493704 446612905 935962328 992145064 765596090 894591313 696469937 953835271 730351638 975114904 652945981 750977697 285242238 570685883 489426364 658519287 47921985 676313010 967284019 969479458 519490021 576301424 982011403 994179332 671090153 911406061 939635816 954105028 571401989 889513580 560353445 654532761 432584447 872185681 723648012 947231068 102024257 649932166 891545594 915657838 437459406 629182069 533932011 822309908 539974950 558645633 149714825 885670587 176460424 543256516 2835824 494148889 977910459 988454379 761215104 856642884 266475990 497221187 387928697 399781289 503344516 529564007 163031934 355840403 243799171 257711615 543805556 660202613 695545133 883537540 385958134 496236817 303664300 681179636 250421125 269544638 104965492 760439435 179994104 949902457 576272177 706240534 428746253 649952705 256209264 348896258 237246426 542031933 68168450 622986242 412302784 507632562 439936700 724435531 791497720 822468951 386933452 546912231 265649804 329551718 644631278 843414764 317082653 883463882 68812689 895485030 252608952 384342171 915879479 938134430 676179490 964894753 85583413 768072238 952249518 988999176 669414921 977755349 974559216 996407171 20943463 346474493 161617090 478170426 34805116 126724899 805733964 968414856 925902236 999381978 862853797 977396043 156687876 784636457 802321703 854692507 79762383 682020890 722307407 891952869 533664062 991393854 888620783 934355307 755400931 965134188 143722587 427131187 702113343 892588028 674141496 686621761 959191517 962037507 593810186 842700189 721056518 884214366 806173016 916856816 350694470 446283182 119751833 558476196 685612755 962296502 334896963 950953639 213010235 289786834 835703637 912582163 208488304 673823489 313443005 549950058 93875268 650967887 235474599 537899309 416451433 709964627 490849828 691393588 20824386 966176715 880872957 980587868 416445400 536687963 961336480 970399172 720820352 962871124 931907950 953325933 633302119 900555123 667473719 821884300 122144938 273453508 651208304 929678997 204112536 594168657 566304488 650772273 570381366 629818434 833385253 889548857 600956756 964163199 489116300 560900205 566378533 633956635 884627343 981615769 1485359 589364097 271843661 557109262 840246450 915451766 795703201 998896141 221674937 477268799 346866453 908297774 139750046 752705309 219500746 477502935 547936681 845273265 470779980 817245879 132042547 218929441 842763082 880570608 693216066 827824208 644144724 944020429 822680641 844198548 123613971 342741379 752779581 845510052 442722229 696636680 283370015 342521747 331914842 949435289 215603581 391162534 985532458 987033439 273363398 456478483 48983336 151674916 599755987 845286486 182621430 448173273 19175530 585830914 717731546 752230348 61973863 369345639 39382912 816559308 121475825 750247543 186569943 685722370 687011128 773342319 526331202 709689220 679153906 704507343 65118135 873485233 39539795 700670036 792492410 872534111 72857196 998614770 55860234 905017422 280436772 382901316 580070353 813425106 76067503 212961207 108914395 346994566 797068831 995819281 637672839 893888623 931771279 978493987 865751152 979576474 689825034 898986486 50304448 718020243 839884188 998148154 935316643 963300877 251552993 328997360 965213498 990971812 315293931 367259417 889081957 957524785 575770950 885516343 456829691 675512522 440457303 565689763 920055039 949060448 237340355 674082522 275473368 299006928 984018115 990016046 245811360 771040679 443170559 602325031 580246621 623494457 58205571 761754232 969434114 972844698 830400395 836928597 744298563 754969939 101571318 503640171 793034399 954638992 796948018 821092940 653441775 854412959 429960503 727129649 508490877 576324985 856995192 959447210 739343094 850461972 639582058 722879197 449090788 479173599 879355702 918697689 394054908 941371595 968840923 984067750 518128572 957162617 858692774 959501730 895828075 984333430 613105745 986699438 509700864 974939737 613997684 895158721 409634595 773061163 148782978 440421915 971834091 979595083 937279642 964057068 945214998 957271467 933887957 950177489 714705242 835225001 613008176 639957812 505535048 919502092 883243456 972480153 166854941 802104159 648311377 755893951 43269044 872037291 433692694 845117396 622076786 878265314 88459447 344019898 24935061 731789977 918220394 951594416 439939812 934397233 530041723 911261382 439564799 697510384 951419813 975653389 855059295 937396374 259150851 346791315 169790556 671816946 580635713 881204832 642318305 754855877 591255830 694734746 252107674 330861746 842279552 983240322 509973126 695532493 694912325 772205212 33629718 184527884 419036524 435352428 506861473 988053805 958826001 963518750 650108269 930613589 163742413 833924887 194692989 838697724 370087636 401227968 728831647 872285026 873811148 938578144 986947386 987740890 640004881 910658589 562463587 707253664 60898648 792000140 921746744 997279489 571085 720669060 726464359 813332466 789312954 973554118 585051401 763560977 34181183 571800550 221095107 764322967 467050854 923162252 978118333 992024458 457514090 588993269 588969890 974457030 19289803 835070125 304231632 963031125 695982386 912193205 137915999 835726192 104544425 876700225 104541945 328065516 76537433 215759258 130454023 820725181 333760408 682438108 175701692 918079821 118248123 346318443 412199252 636865683 278557977 949588052 385250088 986648698 377561399 842599413 655012887 772278545 290428703 740243134 918086992 968182329 933984810 963535559 773481749 779893952 966349928 968839664 253733096 804766878 854082852 877212409 50785746 677767710 124798843 848963563 147234147 513112678 226407259 653999473 490488683 755326978 393851240 890494791 58255034 412761738 766329585 975129646 580469472 656149280 213864358 809889157 303177698 757523932 97710001 966171884 101197449 502948232 712882713 759770583 713208859 933005285 406405824 922723867 812411258 917624870 634104779 759769637 413935309 819684646 645309654 848676301 758443364 790967622 59897995 749565495 420858935 908956229 983537568 998345761 633376679 995542912 716934694 758970870 713809400 839126637 829888499 914223937 813641884 918916156 640053443 797389494 873781725 980705342 546313731 882984000 992955093 996040236 527430146 865270931 900748903 913134600 123427519 310854679 311197777 843138194 447059169 886547679 981793323 982875571 736868937 807776075 401740038 589330674 872719037 884122573 515829451 741489782 236813188 546619942 150177718 710819355 700252643 992850850 982908006 992844699 602917840 766231234 153706425 662610199 38611403 89611551 113555189 122480915 224732840 299274097 988896797 997201513 357275164 413698250 408906435 794234328 636529364 751320877 552343173 680687422 94389351 138981165 165393998 236289377 987559975 990386704 893278800 985235234 828223323 934706778 625535001 964651368 319823381 766334550 420449339 869697746 333972324 349079263 685166874 776026858 104134296 155120813 31838436 729920250 889992390 995311808 811574603 870141044 893698516 906391559 239776408 428002716 632472764 682821093 876713190 933270785 12066512 47829967 426783382 862319290 133643849 445951793 635559463 924179298 967637410 986533934 537755178 574667613 753648991 932516591 318428204 670812643 994667706 996809903 141613409 532580486 855414570 973890603 481084111 712207464 326088311 437214822 573954451 986096296 971939896 988025391 408200494 709641667 923292785 979705786 483278105 744905593 872566955 941234001 879497423 897786354 636912052 920730243 357597853 450557058 669996216 729030347 458176368 780551648 199527764 592892305 526368373 882075904 624145709 806914867 830103168 941418411 775657904 896548940 816305160 957503818 93470324 138977645 260210238 653244455 312271408 499461035 417379682 466859290 25253926 480455257 535409494 540345733 326321876 662020143 726571982 904750965 207564486 628380467 599789498 751957289 214324291 494346723 508632326 860073593 541742532 599964909 753961705 829327949 945003055 970175510 555084170 787362709 909364448 975796502 52590596 470062474 873759774 997429343 702465368 948325028 985623721 994371732 718358625 936572383 923722604 988477872 115617262 393295664 759638266 897503887 488810825 930093893 655399462 735338523 939257070 954207782 187970301 640622387 911779061 962884814 450990856 694613686 674829421 768496170 685860696 755200319 973177045 982375986 363277341 967040609 433784162 437473294 377497786 953067190 985634972 995807829 433863800 669692159 963724764 969577439 458233591 915609368 791601679 897389943 257551279 359611389 773981322 916884287 273513770 383483257 961660036 967209998 947024860 962224434 865095195 940201944 579499867 690358397 87683701 463659328 814468678 965738883 856464706 915580874 238057074 830392744 66835257 710279179 198745567 993236660 51028014 928151162 751723545 756905116 886957267 891228982 445569944 688622829 38799706 458442702 487721540 595806056 137896557 982116368 657045157 912477536 695115388 837881509 316863647 790559166 328023928 491205593 541046936 949828443 271308650 288546527 681222935 935522509 256364642 629720879 632160912 915994951 421212516 728896144 49481119 958899396 858720995 956222853 904291973 981405971 928295596 964957004 811517475 947883268 587218855 659286692 876906060 888450452 821725950 890720614 117609590 226195493 779405171 879992288 681164180 975764080 266360543 782284656 549938831 571453895 20678337 575296678 630284294 756910773 800459534 843752875 948408193 966795645 806922621 837284617 886742758 962708333 144111776 418496945 790546204 862455909 483381837 575256246 965758311 972772451 762671868 958762174 731527808 824819911 283626773 453410408 770823107 839804790 658156306 994222837 428508253 917584887 99868340 497073886 711104188 897422900 468402599 590170139 911765976 954441294 343393170 678821934 135958276 959146412 427603068 713078163 219293612 392105044 152713985 285267398 652961702 846790197 785696346 827847885 525277884 635276747 261142665 598289894 477258358 599398358 121824033 794769384 118242998 452921716 879092677 932764259 459818127 630461726 124122010 331848499 943798082 982264403 405995529 510307755 274639708 772569743 322877472 485498543 741558843 898493094 384434498 609100079 431303927 508006617 256630192 965348801 998624986 998967443 995054024 996536718 474486845 937280524 646772282 772071515 401885201 450309585 34050396 881051636 338966626 597566369 338515762 356566199 885151731 943137554 577478167 840692975 371399536 588583013 557151790 982612932 556657578 681888275 344328967 662156014 157505061 918038979 502050619 756451575 949055979 992699522 811867031 925680531 429303 687948273 642383709 889992994 205788131 881178292 699728990 997453560 756733565 898952082 719363816 944188418 487806359 542664408 281449740 416201603 657128728 830712716 924193640 934546630 756689483 954070058 24658719 243646587 497368051 680114556 784098005 849628948 168566612 667334186 159644477 722356224 391627017 554129650 571339849 903922136 497454644 504351379 337575253 470161833 780954190 825037795 887584909 914117892 743018557 780729244 687261017 959085941 226004197 969126694 393612177 850133556 158454197 835309335 261382060 837653401 953045220 964099687 143403691 266584766 761448623 954716769 872281545 924485375 211259090 680890239 935637268 988382478 687295022 892433340 219972994 840586944 759213290 911940662 929967370 933511840 541666745 978799432 140251932 624646234 568215170 877093291 607808336 860700602 880093182 930177161 188783377 642200325 152171960 550915520 179728291 939527344 732921585 780464943 542922367 772246445 191503801 496633939 594975144 686005074 859739519 976887952 178790041 529524106 261151128 887376678 280405896 646030671 837728900 881651577 65933376 504891265 694283443 890214151 629573831 968269748 305869616 654958720 762506083 903941747 785261075 916799030 656456014 943864843 193529704 574684698 648294077 936361953 34045865 717210710 935420553 956157232 170018619 933120082 460282728 470726939 881074947 922125045 429020395 579111117 68991617 169984342 91673004 954833665 508080107 685649297 530637272 631878745 434842481 949648684 951250911 970575728 455326835 604656194 977652069 986974137 432148182 654158376 900434004 938717865 632434238 988537446 695780200 908052959 41019616 672819435 153994236 996740757 852833194 932054751 958318253 976617389 572399542 630828391 259529406 531187971 748375325 940716602 193922424 488335520 225508257 526645261 502437404 746249068 958934828 987677208 336778014 662330677 309960326 572744442 869263560 908977942 154660969 574605128 902704436 929402031 13631839 504973610 283432159 328511182 642909067 860680667 532770967 784170132 197158373 383081957 403743635 781656439 316549054 327090580 882472916 977721024 507325875 968392569 480548992 572792899 409469099 466103004 740794768 838750531 545423625 859672061 717908071 849577480 518182621 919326939 682557991 709481916 901730253 925327808 519982206 912752120 233865888 552994658 292120251 374655402 6048339 633339743 355057548 461619719 720762896 801701887 348743132 611248541 782702580 895334023 785751101 985547124 108488011 794296317 422711938 461875002 872748557 972780085 402719313 450462576 753389542 912118940 618878060 633193563 913255744 930935472 289299092 474014819 873415075 987949230 332892163 937083547 861726871 938035295 300520475 641097180 789200414 854748650 426267392 779287256 693131590 977573089 863781041 923069319 760945742 795939617 860709910 901027811 223065706 363297382 189452381 520501646 236658853 451841877 835928034 993391365 949627655 989605060 554959995 848231786 825897929 963318721 123271517 684000821 984399207 985500054 920513961 985001446 833075398 841289349 1739364 106652799 566353295 768120103 378218988 736208376 44558845 583742724 698254364 816321898 897049564 907316143 634622601 777695319 578555325 751359571 18415167 893279676 446474710 608711113 256775700 895703548 20732689 105637868 212407027 520794845 826072671 995333553 995267983 996592021 975813313 989601427 722176505 747942912 476037309 784610428 956741259 961434592 241887756 564395892 780130879 947943483 80651291 950024763 211268808 749283982 318462087 693670404 778969264 858877406 144358848 489099584 75699480 323108024 635362133 710788806 86650216 990394127 20894289 640491520 894234270 915998047 133395720 482617455 871070124 923688368 263111349 648284194 314966983 648011924 461823385 976116827 897639262 967535566 497072597 707924753 809251526 818077846 662674437 920345572 914357248 958671678 485672007 772560048 334993389 634791939 82009154 493946543 737879848 889102679 676290175 715605645 465613264 650899083 473184531 999281686 48203857 939564906 214735732 549612916 607633296 680770029 676530639 862258714 309802244 818636644 980095079 989318838 47859094 864772595 415498487 640741991 285263141 867623145 172523744 544260655 273063212 959112505 925716474 942386546 87544978 969108409 586744422 602199707 280119476 924011959 560088451 862902365 740782928 982375232 578305653 968285018 206666392 247511644 192219174 656698929 139157868 693080155 370274129 646394242 775345080 796358676 821448963 922040637 474878246 603907169 485361046 628182614 963111554 967753573 329200767 938713320 751425653 956310491 876582835 931574347 361691323 393644219 832967352 847415505 655582188 992705897 761560377 833761341 5206694 286821518 729937136 976710909 384238093 646184366 102042722 230298275 963598855 982899502 568172302 863494988 481690604 653860411 92630975 886054580 179260971 241426703 389168839 643898091 614403910 851158016 52306017 215934147 809725239 882752709 846121710 905024295 875757102 917281775 974790474 979816036 576952761 624583887 78353205 401744089 295529829 499195676 149065894 152704307 141704454 856865108 313026844 937889001 784975281 957112695 9072094 897154640 991313137 997014456 790882551 894961079 557018334 641916804 3689649 923998109 669433952 900545743 472674240 960773260 139773106 524813733 804298425 904632933 137062878 967824639 783170785 904379450 132122888 682889440 834107904 904376624 472369388 679625416 897973627 944912887 811863127 927229420 926953262 965440181 154301764 431996932 178955389 951752110 984005543 995300436 923993083 958249361 993972332 994770149 114558537 985195028 991887109 997192997 890001308 996470225 859118311 948160199 64866346 369928797 946960090 970316329 367633644 981338451 980078581 995780983 891751876 896569737 337966450 644757419 892968728 925727821 566286659 572581339 339405752 579645247 612250597 880672431 770520077 939403575 898410484 958774155 91750503 885717125 367953833 882375685 327511904 980402047 495569253 983133479 46659575 771614886 32469110 139439560 624172540 895062011 708857052 827165529 137462725 141238636 389374868 816263062 390917710 570192849 563748890 768695450 337013428 815247271 43677715 917702581 771681623 850205045 443298877 736260768 131280341 395402957 32133298 723263353 624936549 759453249 73269779 576115750 617974113 798979550 85646881 122500411 324543085 447088422 209448572 711943410 518468849 552947510 46426353 466820663 477938605 909269736 829736080 970939552 295721522 553476741 814574549 929330150 131952636 846531448 314148121 506510121 742407066 909751975 100589155 953463227 148317852 392198026 741004144 852048519 83898371 683989025 679943988 761539147 875790806 915540027 912990128 940972689 935009137 971200969 939920463 965164587 861882221 924265768 581610608 730161443 50788445 299626833 528746702 635473046 816372188 849609658 777249403 895479952 309127645 753894401 847662031 979535692 521471761 600614102 912961204 943992866 137799960 541859614 682048302 984479610 538826874 970270112 226249635 751347943 246430260 893102651 776368546 860029895 14276490 765248184 804876978 971288640 252322046 282982368 222622475 645363006 427520295 607746825 305239553 463128005 984308100 985070351 647232561 983651033 288989339 366957436 808569664 809497267 323920660 887245975 972033852 979439062 202677681 952195979 595406586 621649906 893103015 953811789 59952994 974037010 218168325 945047189 391039893 679564927 183890937 561483153 465287093 798603405 503649077 553656914 305594834 806017011 708500617 739095800 371271978 842283418 386369896 580205508 454414037 803570111 578235538 587306469 295030786 762081596 767701927 895891547 944220287 981238700 101229024 349907484 974165157 980073273 147817694 677854449 814964121 960014600 727757655 882412604 323592311 957050345 546747634 779559970 742332295 753255789 251813628 712380694 923927635 957239452 50913359 315569690 965657923 995824071 213232885 393334185 598881026 821175866 320194842 565192907 170235187 438643105 660269360 742694437 681381164 836161349 972602520 973203936 253740714 643432926 682388867 951717245 226121490 865139080 393236733 462372308 324668991 476677381 2350649 202160131 517822180 845845122 700765812 898830497 212726781 485553186 661465836 775814458 214761968 601990313 855862411 956197951 152680543 592832485 914131609 975411578 582603357 937983134 839406783 932965593 494190452 713362953 776355490 942820504 55346958 685900855 528519036 801745841 494852583 712701621 880525314 980654573 110209298 680649401 396665793 481294956 448393856 609445237 288258833 350722608 406815764 606054265 90940757 390644234 949718908 981607137 685629435 936001709 206324265 267918536 526283037 977001444 351421751 398563385 43541980 985760173 747949914 803003073 764347119 947066448 340596012 619918657 448006924 970915764 589906439 979349457 820944680 944503180 746351387 835080595 64470510 138967442 351365244 448056306 550411119 673317612 258120624 833894195 93466196 638455019 675460354 950702328 606552509 982814704 341062476 416756056 659924660 983326489 900566050 934746173 480202263 939911993 554110007 564253641 761867016 843463909 550245367 906318254 142639472 609671033 754344137 909898241 329482514 895967184 766286331 858415888 829273044 963952854 589929207 779659415 288492522 818240475 229536383 443697382 118039764 638873583 543239278 948405780 902559191 952330385 671349038 864621032 516486378 770065992 701378885 772112438 606122960 819896507 447321552 979957285 243719920 913576968 366796963 867999329 155967937 271904139 341696081 679948920 67493895 717935982 283669686 551122380 891886124 939990765 930483459 948587335 847400320 917302241 532851476 960106819 183539186 239747083 627121362 861206331 536527805 831865590 474877398 736391871 485604948 591138623 497388629 938317411 880047053 889632067 151184518 395993681 769197626 855640271 757531964 945054903 960687357 974189311 492336495 802000297 487484109 823735349 346600704 480025715 271513360 692369730 604698867 890328202 288728455 731425188 708684267 986164871 541198911 756270257 868773941 899278110 191967668 386550700 821919302 882243981 222059888 924705750 67220273 232866463 782339082 835591958 425446516 590461013 581034300 793537630 211620061 544287939 409792252 780080956 824349463 965460828 961491405 991961922 303634850 759420228 687799326 759557442 362017541 594244324 808466253 826392787 299683943 576112650 956545635 995129238 986260449 988776905 650832610 919799367 402422979 982439999 989836776 992259600 729467210 866389583 133860225 229216607 778965116 875540876 957491635 982703041 663477325 742807908 828950534 852711606 839366366 854309147 922358743 968593266 953091840 973904642 47858051 194201022 817473049 996816717 397916316 410150508 760742955 843128126 578626911 691244503 783280248 822314785 131193157 742388885 122043858 151754504 640243780 654349410 386878646 781820648 240588790 716075942 938294123 976361359 235693482 549072948 3826260 231884697 970106286 978206048 579610010 596693726 705171763 848763628 272970379 345478608 81443552 117224410 347431190 595048953 631229642 715888056 701330959 904427357 731616631 838671001 968133635 976438327 809734100 887314572 32162727 505116476 269172013 737240172 697765902 794457127 241942973 843602268 441138656 790224290 448698737 993970094 385732074 520551959 248442687 803426127 346747855 526977112 4909998 435150456 59077825 287565882 163909403 229425370 503743658 924269327 746166879 845118932 267947877 321034210 245430004 441815337 967405015 967669885 604787472 834146812 905988649 917383552 193299055 866736055 315674015 616309955 649209336 795255199 884207532 964627599 904516903 949791984 621375322 872385647 415167173 977858554 529090810 818214334 489545270 949014085 490353806 578152680 322127950 737292357 794105997 892675857 577872282 713740272 600984395 951769430 563657031 646645253 422914036 908576923 370376326 508021115 484171435 543324223 527584099 726958687 820743126 828962629 737363614 819554268 4040620 33612915 749003866 943788438 458081137 490305722 508669055 680979975 530107823 887819714 726581280 888151814 802682043 827062656 743260905 989568366 283295563 763884135 827056259 848576579 954461348 957460373 40129969 87809545 57711111 827223852 426542250 891013807 466242545 761167390 477054214 717857607 462065908 928194238 417652318 437053879 724298529 861385880 362089727 609557794 307488878 456672108 520924956 770252667 449562953 484238032 442085367 451736831 765035609 769284075 330514929 755367347 812864699 880048595 787206137 854896063 837349742 930962766 775632983 889588752 561447865 587115733 773839086 814410385 234128490 257404687 263083680 318664471 417364140 840773330 102803726 905321362 162794955 663826797 375750054 783764088 707996332 911259689 230687265 640442692 322841579 362384543 235058356 748866337 904521807 906776025 277507314 470482186 970290051 973287716 347761824 713328754 561717497 571628290 546546559 657802919 19150921 943649663 298939980 907305642 428135094 768434090 615103648 704121352 255107728 968373922 805187178 979033812 530354566 615790425 814324663 992045945 687568576 829270410 490627841 807670002 812857872 927225606 87265549 995580578 265734458 538597684 225421248 912247339 440700361 628610683 328948948 729761586 904006303 906219595 179424749 834691506 771317701 924934055 607972357 696920401 633255427 798257443 472667914 900361586 670177656 961443194 711286254 987544622 673004827 944539736 23403412 874317342 119827353 254970432 614148223 890185033 220181412 678102939 106035406 951228517 602533345 691569201 72211680 463736983 348893140 438074762 502006054 680259573 380396720 918377370 253762999 363262419 139199910 826364391 973273786 985151016 278892560 614275792 888786417 919930406 838868969 924619516 691775005 897787761 390260645 769442010 927648239 983847103 464160517 567599689 791925935 980165596 741666404 908046391 965042553 989710901 238846281 756578730 481957616 981717211 51747640 161542712 297773906 360586917 546485776 604120487 884236404 957291325 395780399 566820653 482346148 613284582 492201145 511222241 940604803 958961064 794270981 901029507 867139865 960266344 892781968 953484580 935216701 976077590 532278325 785668269 720185795 944994272 958441767 979881094 400438687 927009599 461177929 593776633 930688048 958005685 229711430 441768299 907784998 950254556 530533796 958214739 896856546 984898187 285134280 544387799 347647452 444578411 819294678 853973096 896515195 921107902 30512849 385441124 568748158 972852301 780984828 902396515 488448288 898271577 243012421 932801381 163522465 938689427 828552530 867310460 661148626 965392780 282195682 634456486 582098855 954961852 238837429 876744220 890643297 915287727 611454251 817100736 136880086 734096152 838102150 994936132 692347875 992016166 809307047 873041054 147109308 688614867 666461283 702871156 719829725 988752563 187032214 431257022 728408118 800266916 287760466 815965048 146694011 644604936 307708450 795194238 731247620 787950343 707566363 888795543 148020502 475624714 566364781 601612453 328638973 774139491 348912114 447586105 911545749 979251858 746567037 773792106 213803022 298267312 691944522 825153104 73833484 534940170 432507382 868428833 578664163 772981562 697068525 838857966 168722223 958448201 244397672 540431246 305230973 347493918 323162684 660340110 142695042 300881876 613357754 717158309 143376285 771459410 559954261 922686712 184020937 685180372 992581477 995893762 57302975 289707920 133634642 825808462 689583595 828232557 794842702 884536806 438969940 473822450 79751751 164912291 970813889 988137489 995702116 998896859 28641936 923316851 865511283 952417153 376149717 820876861 284167221 346013371 464559627 747632657 929070569 974961699 186365583 295467087 450215955 491759490 146583282 372781304 929946278 959457884 566029780 717174896 534553324 782142388 686725805 848317957 930415754 980496675 727706126 909072085 354364895 603647598 164564131 165161946 777046758 854205781 547707756 698103836 624347484 985497832 760897718 790499305 38571116 87420541 336904439 618788599 573526888 621027046 376832206 569657280 22633147 89150955 394044429 551422039 131548554 319810075 216658043 306377724 237369967 783805129 270791182 767528258 35651587 610982669 225092797 639070851 102242473 483252677 881802319 981766966 790197909 830530103 253507295 516152517 810575948 951148771 634591227 721757075 893587021 988832018 448858029 898640338 824505006 960755920 460239304 747788952 557457838 938319952 842584270 961361853 882825284 912451381 525225864 860109639 682443908 689102796 476008823 674215340 559417528 996578327 848022846 901356177 215593096 448661700 229766986 995101306 33031079 758622429 407251486 513596772 649654283 722501280 425722679 738782218 275974425 662243509 297707572 634334090 326770821 715192721 589971478 965673075 462222498 964871569 173127835 199219553 171474899 437393023 428321898 927012605 701175270 799141736 159214557 662299580 994642790 995771487 213128606 218100376 312450292 762647905 404761095 537863582 25939365 484596358 645986213 709959307 811863251 875039658 926206047 980701379 213272412 612273570 2722108 192594688 474350096 519166215 860268104 980770389 822545374 977303560 685439117 977346062 819394638 961988426 739360175 807034828 805925804 832510467 429869409 901954066 794334541 962029433 428828329 658411676 833803060 953742828 575795397 897620763 167090141 984469148 912719153 920027122 195427644 717915659 813612754 987798167 314394727 856199595 253264456 983375882 936862553 952932847 344164742 738595161 423327556 690711545 900928068 984200554 45898731 427140080 147228059 942056597 309031852 409916795 158405156 946247335 303616281 652569579 72100351 754534861 268787254 569752309 210884742 945596536 93005794 934958128 39571432 686597111 955001911 955644006 659755258 734989105 460332212 917241758 259824150 888101529 558740025 783658518 547811677 641797708 274175719 593549477 164599137 886511644 145993633 209224632 389547180 563547713 758905672 990927082 718367222 886259201 311868027 368156629 609924998 689480061 31372204 423716006 138428633 838125104 430881858 771005165 529063153 548572944 10056888 517986419 785511011 790613571 205563762 813384103 180594441 906217716 338871393 544267955 893346248 901038677 549222550 895247492 437433019 988447355 670582806 821241734 660482571 837342838 38457983 43644822 338465605 557448437 265066669 795148934 183427161 403139599 566310599 664188503 448192867 457998981 940587078 947787325 269252784 985621311 809643156 861975307 764118243 964884852 558373661 926261851 948024517 995524234 652595517 969329557 173528004 474501069 545144604 887037036 369778722 441904662 47737543 896349673 789370323 883328137 410726825 896749682 992554527 995816721 194462830 309774636 452481814 895967155 824632898 858865179 571981457 860549513 199899793 364485450 196447171 842742114 279389754 947993224 580715812 878423777 351187658 598989630 22849449 466700267 159761710 675585679 48875527 853496650 833894820 903045681 67763081 953875763 268947713 872458839 819103556 880477979 92045748 268432538 468606483 750265620 655162067 719713321 654920112 874650092 670708264 734285807 892193229 935554050 892093025 981305036 213271208 957743117 521167864 879092122 25795888 499350183 635179540 823023486 604101323 703185200 492474116 694139109 229366994 968911079 400655841 558782728 327640460 386771832 651407971 820529568 132393976 439275365 756341211 846333435 714846365 737638206 58208209 932085981 423282639 627842638 646546376 975552259 129187802 517852859 835924959 983624947 551617936 848199547 663422100 930528918 589674898 812141621 208659526 309513056 560461505 893023559 496317861 519741117 180800188 186499367 85578105 920549175 234887877 337143993 488572276 749446469 248468317 477531707 750777725 969021570 262263046 759878814 92907291 803122213 996275985 998455603 445991144 715122633 318615316 972893006 425963419 660917512 513380255 760589686 184509101 757197521 70656363 270908653 739124283 949986417 878648399 952043519 693775705 699992329 920470620 995797051 854516597 887290516 221025136 902507473 3681421 827234395 98901851 922072963 910127672 975624878 50296872 315266310 136328054 948132634 967993389 971147399 312480879 850604619 672850123 738484242 662956034 675970073 562111308 898114605 737109534 820119179 130231766 804240630 458547042 603439630 257196190 872034230 26446660 925430195 381637000 703273897 759283992 765129520 934376168 955216560 646605157 667650707 722236233 880957547 912931149 948491313 676377318 858420850 796496007 868728871 756116082 908094825 541756186 755061745 54003431 577258139 404133289 521062692 447212289 697630163 49897098 212284322 672923123 725367740 644863658 789720044 366372904 508808942 928871624 967421733 456921191 722835447 793805103 864435562 28902460 813437827 289259327 745188418 704380349 923303944 381656586 625178599 665187579 960680946 462677474 562319165 404998485 803775382 880866483 994443098 290400170 372364594 843923922 988807750 685510515 707809271 201437066 339574448 329355870 900706419 117918541 555506438 242509752 457387732 106675549 565896028 990588023 994483812 480504707 493335330 923856567 988606755 752480327 781665732 273142815 308526347 590035177 790027360 921752128 961690427 647795156 740281976 59171058 162997833 855472651 862578001 321210502 685277997 642434403 923430087 5859715 456615888 718047156 791317325 854696826 987811860 102359838 762151232 187458160 641528571 577282248 759680370 484294309 825056001 913802971 955001207 699645894 730333706 671685671 735559338 721142393 841108528 561214626 945692171 844521436 934478608 604045400 920390647 726606776 984853475 86617938 812473664 274171530 615440505 463713792 886543739 713690005 863901670 536668381 629755935 711266355 826985581 582010182 599274998 208903508 508715027 33680198 842707726 74620206 432244064 743664752 838170245 636379136 692592638 749183539 909918029 493242584 510188807 732797889 948472311 107750890 316448513 799009116 882600785 270555617 830128391 483057383 786185721 731294405 866403229 664898288 745266695 628497407 682919003 502810948 724246709 668705986 968494637 254436570 835937329 408878383 826360381 458713974 614826090 885239193 885555690 740680887 803588046 208515229 728053728 309893673 433469086 975844483 984776662 50496861 764362678 540111179 735506501 275023623 878186080 752942681 804485004 571804965 932617863 635976028 752352408 537047811 821410495 961681441 969176729 152695038 170471773 347651648 694190286 996834539 997691570 984177035 991869052 57012377 763517318 198595138 873861116 911207422 913000459 431965827 630368505 453710518 995944246 403321874 652285712 254405031 373983469 100485443 341757964 848164062 881655193 154311668 951231680 539137430 691271401 526592509 665906811 196293298 817095656 350410664 688312410 635577557 828647815 426623228 626710270 822295965 955920512 619442624 625330858 964375872 998339716 896302830 974340322 98675310 760883067 540066674 606507936 778740633 892409439 710170955 942924826 155780155 869753373 571153689 917764665 281045574 900504623 275111336 906255132 481604650 826897304 910160455 992282331 881888921 926016260 714288625 799917344 921343423 960500203 133393564 614117182 292285325 358794036 89842870 925184225 578735807 767118140 149727640 315267977 861904108 975313718 150859220 788493128 245043320 703803389 669286235 815952050 473673095 717815317 903734840 937052579 499959513 719522511 851388632 893471818 591531387 882717257 590807416 722987587 841114830 916742865 885155978 896880394 462850550 852079782 994033544 996150385 430731151 687567297 601099737 968188703 755302248 823278999 829888478 945778747 536248171 547071516 264169744 297166988 942103561 989829907 722800003 963275511 808623472 981792989 65162154 658473948 174598497 250328916 138519189 275035495 975473891 993407078 347562370 697257144 989432225 997212908 354178290 959539822 169058586 417363992 445363192 661159306 535401342 726298250 878974247 925222042 883723773 885721584 878079484 949048672 462624582 730050521 328892004 935530925 155722011 928806526 87611229 562560921 185738010 911320719 726079081 883447787 129620392 563993313 227090545 975889419 539794911 983771140 438925860 470660128 339350376 641125421 1583408 638013305 684330624 758948341 117230924 849111772 797441899 984943217 951152918 951762648 521790131 966798689 251663711 300235866 400152803 848746059 398645506 448839929 467080996 484992880 371760604 514932594 260424493 398777251 177025080 378421288 369013384 647511372 630547488 833532181 34116477 433183226 477816786 849267476 897017488 926709307 542671837 693511803 979211982 985488513 991000213 998011139 431358461 929493785 459665628 721825481 104896948 680551799 992296780 992608291 161462233 579734052 751425114 838898984 391831152 698273022 94738460 409117537 744125286 967084648 998255672 998834101 563963721 620319940 373645581 720823149 910731764 967298918 858186097 976281672 272467745 832102782 465305934 968061042 53967840 109260726 446234521 915974039 159611386 239663858 659247144 810148949 540699275 838708114 374040519 604974525 491197066 691845622 872777858 960284820 50556885 372469093 761213031 998437793 584071875 986226245 348699740 749204921 125845079 389347693 618270509 692898734 56838706 229098579 370823555 507802668 875150953 899238243 186420399 819806674 933489630 969878080 517367584 534842787 629180287 981439937 149561272 780490987 382409228 575992987 61062077 917922599 201879725 928278730 82604643 442488080 402004528 876099408 769523203 925321067 378764545 626574551 157417591 587435280 121470639 381871785 922676604 974505436 931959624 946090192 169726708 207950893 708879996 851611488 373529086 836941117 565866870 857302209 803329123 893373409 897438377 914407538 646743322 961478074 826199843 933048288 87114356 431046405 437251179 853695701 691669188 886861797 803402254 918261054 208589139 287846719 835560960 835914705 644211534 889023273 293401642 321253995 45887768 594620890 596218790 754594004 34221699 343239195 816388375 978300694 69006642 582356364 16960855 774918488 920742709 955319239 61427 79535751 877457649 922645022 251175098 965145962 786908760 842807560 357727277 400844604 538465185 786477479 32065180 601203917 685658990 718376378 796166895 848739382 708958281 871084774 320552659 613566103 990969207 996190223 698267476 701423378 166207433 268174370 572098984 816268625 910960240 954176163 330596248 764361301 977461948 987219217 583523660 830518138 829832029 914000754 926758641 966169534 226796447 356372199 66787059 217832462 610293478 809984446 973783717 976525078 843933966 986193328 926943357 927809468 787887237 823926559 560634979 691716003 450257876 808435678 199082843 698778036 785334698 889824487 417346620 740697139 185076834 839153712 543780794 856692426 526996714 986629183 376631568 490697358 921048492 936837677 918355233 989433913 414517272 602408513 650531296 678796846 899626456 967603901 998858868 998996338 22497799 887333000 376257182 710832937 552807799 563548844 850473213 972315534 751719834 783139917 871207242 998275463 264529164 954685188 8656421 249533980 525716388 597393628 135262696 644192250 745163602 846536723 268013851 317325594 407910943 778736028 519612294 796522510 40057665 92893031 517032162 730181005 796404033 805263160 650940171 757760802 852189377 938902399 335357606 831386617 551392970 781328038 630700301 734631412 649620630 778398476 925123641 929074945 526526580 864076683 869926711 874869078 430049176 437852762 762757201 892211377 218093849 395508300 830478044 846901513 227069851 508886726 79375697 170523288 825256269 831424356 591685050 949741422 938389021 939265865 60177434 704617531 484695368 974914671 222326306 594814787 633556228 824070501 228845851 539369891 337734081 345106293 731644941 816208363 780905814 800040774 854772994 924715129 815210122 985259573 256995977 870325389 354542145 389150895 475570011 613238235 134041048 830799288 57438924 261389711 847153253 965182201 319390290 754274033 430271282 787154766 55076720 729942615 412126486 712735009 38625322 429858936 556653375 736448859 940060646 942340049 220920012 888427303 899748298 924873047 599625440 953496895 571617327 605517876 53190981 624911506 285972727 463189197 537709795 647811735 522590279 568178288 229908811 403155450 62407050 864986281 424125242 476838445 852284520 953378838 872405871 951838330 887726156 982525778 730789043 954219119 667360254 856529178 306465090 905910606 875317655 975401656 258538406 315436142 356505302 823785415 565413074 718764160 512225513 618984470 737132094 965112289 911441437 989641710 23275180 107002155 127108615 439482839 590387271 603570622 482050585 762219512 561407196 972459450 755906507 810912886 177861475 931602728 768567609 794901053 753656445 919851729 52686456 902546376 826402456 921395312 902504914 965698757 851422783 983157242 150742072 334610373 528090654 572267954 142212693 257783737 320285387 721023191 490501103 635571814 779683559 784130295 128454725 164065595 989947372 992546375 9720477 478051188 217985503 273751264 397280405 429342702 822096857 983770265 664460193 840767769 661579592 956798108 317345205 375574191 814840281 980277124 83290819 855336075 957454381 993926868 188620391 721502091 955967451 987073220 32785966 629504571 504554544 648683776 43189494 203450304 297609932 667279127 286891524 609193950 193224513 705806153 405273729 454842889 295108439 438008590 145348837 313653258 852516035 894107551 424704828 710301590 557535186 836119834 752638767 830372908 549828628 560588902 776828860 864363454 233143737 339309153 751630054 763685647 546015171 850441680 222321902 322375309 23612633 970697147 357873806 875071131 838016987 887749843 247322336 992011763 301682272 628571829 914620129 933320377 761703101 918148371 82775846 949992513 55655620 896848472 363309262 636553795 202971975 555628334 557545921 647846296 831408996 880073101 478625103 879683220 716014437 765472851 345326681 470643421 141735818 189078441 652312614 973494692 709747451 981465608 194154834 909295391 202013508 419029472 138332344 423029287 24472697 810301016 755725411 932500624 627759647 881807499 309377904 882686907 646586802 854431597 136052729 526603678 687815751 873870376 988865344 992119138 206979110 921381010 768328904 855136565 379954539 453701614 622591684 802034812 589562482 781221755 533000678 624053247 172648759 316608333 546716941 912438065 989543838 992637308 397083516 575649737 66039847 211796080 763616117 973124930 666255380 936076113 275028469 809425693 480168895 529408222 552277418 882602118 681029932 784385428 492712353 697771735 292984226 666954116 830196895 980153486 278963386 473804167 482778355 697470937 917915551 936995835 364619319 667542267 897686972 924253395 550359654 948052650 486260098 497840514 564202540 987013737 381608394 764452642 608701377 979914672 702629527 944169643 624258867 901030841 758654528 812784800 690367030 886405577 740848475 871424169 777934502 889615560 754587949 959588921 291328413 673567676 631218484 961598916 334796937 855343971 922194013 923747282 585922880 599259960 350420281 534075607 397299562 429290634 171252742 198658776 817760948 842545608 880137566 931063963 444449053 723155850 577141661 931296997 555792008 893681542 18321998 832174437 921451140 949437870 861686695 941282506 818939835 946992140 512865893 907222935 58629555 823250056 544313048 625849091 681460237 902065882 82437153 259769581 688953927 985387612 4037899 29469966 541874129 637741317 480047720 939164271 921097455 933696688 759829701 913488109 334749871 631090333 309081003 397874138 426105945 711848441 65959350 868864779 784704193 983611722 420922838 577786720 677472891 842123937 674780592 839885240 105995080 719694183 838256229 882731655 878581565 997053853 701856414 877319915 20177527 144466594 415186367 843171369 889448062 963379156 217823009 699053886 502783577 601561668 543390765 598342255 824629076 907879807 159054185 347713673 653182589 769470025 919559499 994943651 936261336 939453618 189358388 255888724 827867646 916220289 788722507 794643070 93807121 451057325 960498891 984500879 741840548 935452419 335308801 959994875 892840514 902050999 344096734 983992607 580748630 925946095 297645520 564898824 36067460 735056314 327071844 349424269 469818814 672891918 673905749 975842986 195080341 869449862 996722950 996787152 204940289 679398475 927881432 928512696 25351325 104851385 146462138 398653059 868014650 892015327 572225691 905004407 602427748 815959542 872151732 911938960 318728040 343270113 820067298 922015269 6203826 605184910 327649922 532084325 812692826 851417860 9289000 174264395 374809061 430292997 927379431 935053826 762492716 977543722 504964698 549253766 878358148 987951457 958813470 996829926 147759372 425777235 444658851 869227043 205409282 885855508 793732019 972747381 471931009 836267987 509952987 790533030 526611662 976016996 579305457 956696244 228934246 386743278 663234308 892520318 93921240 683131834 153655232 933660968 508214976 644685320 957682453 972697338 164560660 407390753 434759532 555403226 265880134 890809849 414134095 724107696 811634087 899820002 662513265 984956759 376363811 864887330 696764300 733242752 889907722 937745804 494563381 619616850 805652604 846416272 651473429 991708961 448743411 870278404 531639879 774594625 474909585 717501806 76463286 460125933 285856008 512974218 265787689 490282276 572307267 756663096 527733457 663299195 227660637 469536191 578903950 770830653 815212582 966555936 650604478 985571237 989234518 997853983 524172263 800978411 439945716 539754026 12942720 923013474 605981842 737909978 828362384 961957104 12743359 481486562 730013195 990625006 555666449 840803107 25939419 425940861 171061916 484469320 344302832 630612482 364447624 748380176 129180819 835810259 346450399 659985119 260193430 380887946 495539684 733268076 478371482 545785853 352085281 969382937 75224669 768682663 778477038 981995612 20793303 218376209 590330144 608052226 679575725 863442503 971013584 974249473 804956743 947204211 477319248 754373938 562297883 758432365 264217672 505466081 542364668 684443795 348924132 771682307 448647536 955476309 626198031 638359549 627850473 907008767 606282497 836080361 378589444 850632094 26217239 193796012 843973826 902232435 441231552 624391402 844725072 953206761 662734670 807933725 704175388 783548291 680637092 984580504 412580682 997194361 62422885 155331723 357704329 950253644 11015547 323939560 793385118 854868124 62491031 969446554 368096727 890085576 168445820 890435789 632545479 844179149 884107587 993511142 910708006 925023611 716993556 780883277 304402035 869868978 889852891 960826662 589675645 676724232 655933182 713664633 727259839 939495597 424550390 651096420 971167153 990078696 461810210 811325131 807167932 987883066 63561833 995784818 266070249 727314124 377084606 835313915 612250692 988874503 58761115 483941392 983799550 988730845 132221857 706991654 483353811 496495064 941362026 945763718 488896840 918803130 61582117 961268604 253748575 550273788 540677701 682188460 574568706 748958292 601398322 941525405 37124516 285241876 108057488 887102884 26014879 791569960 481741959 613444415 405723162 918807213 700870122 802082147 690309869 787894544 843064261 965547451 319239795 609659803 963111157 970902741 148778488 601547677 488924993 777369822 322265428 826318291 812210848 818731739 171142425 798894912 599049839 909796840 82932397 861445994 786725545 809355408 784839927 831492221 146575282 995893070 177783134 739490559 463324716 484694076 440550782 802780341 989248000 996984370 799472463 891944737 769849741 922981123 126402075 955161703 771648676 897722521 216151548 355950335 898743962 960664619 484637666 993089003 975227619 977670735 603194111 709254044 281374547 690327091 610446660 780074889 948221388 997970239 376430630 785652849 816817609 952755096 998081617 998492472 662451608 878889946 687822204 782747286 924887204 968696171 915684269 944201603 470959936 824660227 399139671 881514168 845190636 939072878 193482202 411750997 998104111 998990359 358301494 491896802 561934070 927064743 582907947 907764736 528341805 924627049 970783381 986353370 389088744 510459234 720087146 819252956 197582012 252976404 940133613 988914679 904937197 989680131 232147041 708206407 270896941 285020061 746818675 988226297 954527862 998327849 452171318 760464358 772204012 885917759 38003758 477337435 670599343 850558850 258701162 261786094 912078434 930227721 150455422 342218470 464487321 563435509 286800176 339472837 138929870 586438541 385871862 585564398 122771332 885337209 854929599 934552181 119854116 822963055 421422151 912714212 890388613 972934136 32412239 859481907 474439820 736855950 568800242 639743473 414382945 655609606 401093270 928480153 254346275 872059683 758510929 968883726 586901996 811330595 859628348 956802849 926606100 931081074 475222125 841111511 592300896 669294779 202576908 502458061 669697336 688445143 336176259 987524188 52245807 722323064 670286843 757087477 470835074 853237876 601554026 783158116 840531733 867160069 142476002 930351079 717585412 996859017 884733123 980170126 463518557 609190033 689494655 939165581 793482197 973218365 19641796 154267559 268939657 282694516 807593095 813499480 732692667 836670935 644726772 862507079 375095523 944129503 772512798 979469506 17049947 702976384 465472220 596277652 564342428 960482196 298012489 915849106 681596538 750060694 270477709 473534775 848210540 946106166 349008139 988763323 44384551 602697717 343863019 869580999 81016087 858683506 902843317 980547250 403376444 529330974 519282624 625064699 621517975 946433855 13931900 226301427 320650443 752555700 418418040 970038404 593058471 818840775 643060489 851904803 349437438 677486870 478820430 562721323 375194057 381907308 932100197 938563393 496318310 932796373 450584892 806110579 987366354 988285667 334995210 749352819 701298050 800297397 35257800 146058838 920983539 966540092 12812405 151693623 278300588 630174383 992741600 997848460 820921518 849470115 637523179 946906063 188681198 854750019 672179028 882007927 608044673 911181809 828334090 997715817 746036273 940825923 960651710 972071140 43945286 412249491 856810169 951452082 183439727 541537621 293949745 699303986 249033094 975771695 281935680 786983818 964801380 978437179 665731204 837454536 842973668 978920965 579825312 597685508 45122802 654067332 163620217 713888285 691090940 800007492 605408987 871035855 337376385 898017093 642361484 766503726 612548922 662671049 193692488 261246913 782231594 842382302 183370040 801908232 652271240 915049448 834315123 867604670 168980552 609982925 503264528 931606875 651258078 884424254 994220953 997549412 337817451 585565367 769289120 979471430 986204398 987514473 192616736 653953601 256247628 525045443 773226469 825268034 869138505 883698157 265883667 697897070 733262961 958537105 34663346 310762289 313204718 686337121 289645064 518745297 632124072 811729870 661613289 823123185 964719712 993046012 57980904 577828350 625070017 882848208 125450270 689671408 730704299 830000535 296966559 347902642 992920023 994744385 282381321 507715343 825596594 861030319 847956064 928502536 410409577 495163501 107271318 509562416 210324587 506838129 638474018 697016254 861778411 870582630 776337032 860828576 948094251 995779292 969713982 981629732 912494165 946545173 365136541 475315147 680394154 825165996 729804130 856224889 49825146 861624391 456432262 873112276 696215142 937333047 541509357 731558801 409181282 645844522 963408305 989208624 813043859 910239874 854570422 872216437 587408598 910711685 904363371 912662380 807406701 873724224 242871432 560684302 692685180 873246320 405322921 629638700 604248368 839325744 902742712 977883209 25963872 791313172 302382541 464074074 106036308 877289842 744021989 793208995 214399124 606162944 310940298 375794058 161259889 351228201 476509494 527719330 27782200 604312705 903520706 970731914 73918694 497260361 400808560 621566258 968933228 985513814 164040309 218068958 472171899 935744521 36470260 87065194 851005672 996286148 827371579 833564540 436324190 581625060 534092981 704607162 417629071 628843042 150085497 664185249 568403451 884733899 391211263 650492516 153432597 582373098 842433416 958807637 450281938 818653619 160421092 701817199 816380096 965912354 168836608 408994232 666420772 735095396 151430889 290994349 213893334 715158484 915318417 930203376 492190062 960862112 758373905 922134078 914002137 956604912 405329090 622712029 116532510 505874957 531565818 584634898 196685976 314825484 598405429 622336835 586163857 825707077 212005984 462288376 412219900 674175362 261450029 687102216 512312024 998029112 657947281 982980625 787827042 849468597 955634813 981014098 798276972 949912978 626879683 678371588 677274133 701241255 688261963 770184708 715269270 959135415 903438137 940086707 67339874 607321767 668092181 750136363 410172042 461310573 751879109 774172052 35062728 886356894 289208176 361676868 367828677 940590995 909162982 962864802 994399250 997915874 803939118 813774143 63223493 294817673 383591052 591827274 573166937 935379676 918610383 921439433 100492423 516633392 149188896 176611205 449188802 891250044 59070660 484451462 229686556 516935775 600414598 609857563 240795458 359133351 217571321 279190327 818315985 897821110 644524544 742846530 415686103 980475394 625325857 848684671 203020732 475536971 4734654 112625432 811416571 857623467 958062802 991028483 586776149 950792637 916729156 997545021 882833833 944449637 406542408 953854237 206227242 588469954 268869201 594299014 468837088 957371173 779741971 993089977 115923836 692810631 789258736 998255290 905351997 976499289 961307258 961394527 742638093 812780434 971410712 983353600 737931235 991089017 806919859 837103545 555088624 617003793 664169698 725300144 766378136 848704093 141011270 624969552 972077365 980593980 922255401 953414611 850147853 996190468 721389247 877970044 581416256 777527232 209226720 589408331 432247113 514788502 497744897 598425918 501995487 800608523 302528050 640542484 476473364 564242436 825894146 851620611 384169912 809563146 661680582 878399659 796333739 811138257 326061553 659736931 77444408 938882568 964026502 969833963 230435578 620235733 346973096 644037757 789254067 835960710 917427754 961359829 267738570 730853996 276491035 737421416 293625899 857077034 470592922 752102919 728532540 964750704 600985095 986984229 604292142 832541852 134265177 643233097 87921329 485012884 461787806 503614419 595945590 820024229 613576481 625969441 290152127 986239230 155101937 943597303 951229006 968152705 101022942 405156066 400791005 829145983 383407837 996955534 835230064 943596767 998943223 999021268 756423868 984593022 320641710 871742496 152243684 276101600 283357044 946549125 514426133 696069449 782434945 862498998 92944064 216189821 788020851 866586421 623894906 875701226 507133609 566927075 515617132 523603892 64016755 459621621 643908803 765824299 701390278 863639493 155610869 584283352 964361244 996601556 3805359 308286424 997530453 999223779 100987525 807411127 18414552 133582676 321589555 806540467 44024177 287852975 234287767 970498707 80063571 183103445 578721696 793058436 820733770 831660769 384261385 423019790 974430451 974513658 210120455 778767422 461246073 896271839 647779321 970154175 35923491 454342700 642875793 780144666 970672642 979129389 24872840 263767574 350561756 643513668 970460797 994629870 272101866 590196749 850944782 949303409 701753469 937281116 237233326 534955022 862946597 912845692 533415733 576485557 246570298 504389311 108246272 465518469 142025688 639058192 170825502 222837675 328545517 591602067 7599878 636347897 730909280 756051918 895960660 946067703 504495858 840888169 791794773 893071051 22912576 418452447 809007418 910646887 387540934 919072939 275142008 362621608 599359210 798943074 738895854 883707654 369109270 921287448 7708657 342580669 683990785 977739113 913399255 964802031 196421003 249655717 35231081 293808958 212321073 494448816 993887180 994030080 759488415 790623792 131846668 577736542 388252455 816447748 681850025 926904542 784274375 961611787 274680377 810785714 905702116 967193303 55854319 171246424 400822082 834730307 141484303 654975553 183249841 743797978 705191129 959126062 825902499 875347087 935063753 954914181 63010054 110343410 969673551 984251257 113059357 233460361 116790909 744794103 538304699 877751198 759878596 899736627 145582427 203118927 772646379 804336430 716779488 812074455 309986379 690718520 337340626 925405685 742745168 770653570 70797012 804771279 646462425 767875902 747201582 916772737 613233037 890383441 821336174 856838125 288892726 487891913 764891286 909842256 643958715 836858766 230358381 557257046 990347894 990908987 502954545 538574451 968819975 981277926 452589663 957463820 31383709 113044358 205463658 945024180 795508356 805473949 174670801 244759608 61591192 943985169 543415316 977004284 532326579 558228882 418003196 727156988 474787785 543991286 196477944 761830011 617511500 656141174 119990949 878264338 398191832 858177892 433114712 721161099 900711899 912703959 421658538 592545625 871651114 887927509 785527504 872504568 447777092 978230300 957438931 976866360 505751943 532249212 122950768 514262680 428588277 740023025 424583823 868112699 362225481 583275395 157301624 447720605 14198238 727517445 136617488 254491760 784655039 815133695 989141758 998449505 77148452 747193565 391458554 891380240 637026930 890333898 820878560 973175432 217944364 850044985 196596056 819419539 728388905 748452604 927656938 944744429 673231124 715209176 613936779 723322477 265230876 386238640 471237146 875080121 848060511 968129889 269200997 657281761 759515695 881967842 670346159 777398794 174537908 480021685 994668556 995893151 392208207 800366607 133787543 401434850 101626511 651771428 620863980 886484957 718145189 726582394 181032415 710933183 601946878 891592692 917066409 998591258 955353082 962028085 590607753 963879251 88699205 793057208 781406508 911416988 182288912 323558434 607776033 651323102 161613666 664924910 283103290 380685909 670643827 975573267 304430358 616264630 387037620 862784807 773050522 923588654 64701200 313254976 156058257 735172000 149568282 754232469 973466976 977244222 62033387 323685716 633187779 684236441 760008147 811963937 936555960 977473388 939569675 967593536 94047693 175744312 483227672 620799867 864396788 969329994 18116323 69078921 813931555 889845028 945345558 971509763 859345141 871521611 459984459 926047398 752396043 820665721 529378969 797794198 756330636 839424408 782120885 834362469 775215341 863653901 964199080 994711719 603266480 763877369 58255740 934105607 581433722 892352253 901714276 934393662 376532848 782214085 733479237 913495417 215694652 240560030 724262038 774368411 701907444 766738067 321590526 986448351 956111025 997078856 920752245 986647453 650670145 668761307 119070753 217315512 879986860 888241710 429805017 619121065 843783341 960348263 816432461 853743544 690431165 884105615 945010731 956974766 1138387 320979827 675128735 919356171 906807121 939535819 370101138 693099610 799830708 839765682 469165210 871141366 217545227 409923877 629149717 788918206 6570002 273658610 510920324 818724103 145248325 668283286 822415768 834672960 364723684 896497381 291641750 694798545 14516126 129365058 938318064 943466544 777859703 993911537 3853014 588086028 667126031 914472905 774898788 912550697 596117648 738492988 587826151 703851403 138559780 712091088 296656105 458194171 204402033 743511819 606915155 896107815 403015181 837528830 993608397 996892507 883764571 938192567 351017311 576470489 100710152 858290673 253893123 913717851 355703326 472116306 164516699 661334197 945570958 992112953 279396728 928085185 425654559 754991549 78026553 261855869 249922738 979554912 291596606 353760564 368795651 687284252 879186754 978997413 459810361 785253805 834791360 963223342 545692553 828429982 412988816 568286159 14099998 28622377 348284729 670732575 564942041 857202275 608651780 875838413 240370086 986291720 331239673 964053560 257547595 813696652 215898329 316477083 302406122 610519816 593382845 859399826 262145378 959285109 299680466 968279629 74754782 830212739 196366370 934734181 206489882 488776469 635219669 804223050 387279164 395770337 985711384 992661382 592955105 704380712 556953153 887938215 177886104 779503545 151803679 794696085 701271528 745209088 426743382 479640797 478190686 580533218 265723242 336017853 616788927 775445459 171280245 573288713 702915445 799548627 341315831 847795341 268095845 459652108 382736838 818651369 511904776 929011833 746005649 880234485 589100741 606427817 128977175 257092555 858638698 865531248 729349449 878388809 858736073 932188116 200523521 231632364 672959287 978028900 333116200 794641883 880196392 918309791 664795916 853685064 757813020 861610181 966233172 977304484 66941926 534572749 452896545 551323818 457351886 754379354 265039993 651209631 518056260 883829178 897987285 928463855 355966510 819860569 669488688 844214678 508851442 873275978 914775825 958622902 113367280 936970165 961634124 994916113 866526788 915154284 47059478 365452455 596467941 738025687 587707266 692180571 372287397 878108341 284114112 508564249 79824733 543999631 426029868 776467199 204826539 267565166 96860035 966922615 942422054 998529111 304605294 831989636 476836091 477676940 693254907 868676454 853925633 885178203 662466195 841490448 196547131 817627561 149779706 516823715 778798481 948114396 796316689 996388476 833498812 870474621 378253366 584764667 877953838 880039414 87289344 600896748 684548367 926514742 39280286 378344003 461954135 560861728 809751919 845561445 19441617 620165239 24545178 253786920 230232382 590876784 490591727 935288810 326784391 881132860 249895622 476908806 950914432 989205164 235454384 670362238 286605510 550244901 892414951 925725295 965548888 994966099 199992127 894465367 734323939 793043532 548397198 891849751 629222563 795543519 48191247 583251622 371167284 530651285 287073765 917531429 592915654 634693023 330262068 350680317 917838888 989656559 816103156 921319352 926122747 948583995 785623528 926609085 9201667 207967323 377019159 718710786 700988777 891763205 576458246 609925930 852705699 901144391 623697993 763249365 965139900 971929676 873301896 882300477 103322946 953608446 63500523 925467212 151369574 889355794 302688121 824760246 588733456 614887350 752994583 773036239 441342690 443446382 226687548 984301594 756692099 946552158 12683777 403717197 698542693 748530941 619684374 815306527 896031862 970881949 109943699 297814051 439412292 760911392 668866252 713737020 521600403 569508921 180952584 234269541 563068633 818467027 452998149 831237732 277177263 337276377 548537548 859483956 846975618 851277280 438178709 571316196 407541020 938870390 956791602 985530499 758072816 943887379 931906013 962434772 561832663 869146439 921644988 998051888 429607794 841469286 708691259 963737316 98332518 615394264 319327694 585884038 772523193 911019236 370824126 765284209 498106610 522300016 75622193 407679412 837949177 925401423 868237679 878177321 886513036 979356838 737342989 914388749 5363629 145352563 259083894 298890322 515435498 727918287 218454110 936665987 552494991 698338860 551467308 576732418 314139272 796532620 858164020 903006823 716866539 957135859 790965883 911773483 817031537 908016610 431662396 655868518 296846741 679363157 427062408 506770205 859612163 884453240 314832177 390137021 693741302 981845765 679646570 975128355 266382076 994546624 344244555 574073004 596694485 975479882 928121866 984556959 795790298 805394113 214678227 373041861 65940814 226053981 41207209 852293961 288244935 317759369 854714401 995607018 452560075 590986165 186691591 698379162 50917170 790675864 196248257 892712042 774228210 989953123 358279978 431737446 315111393 627994462 714004817 729348576 310373643 482017907 527456484 823457177 969598167 989896843 28143718 334854290 259329996 738489595 707951375 809219565 47022439 218180778 83799547 640113737 186754006 741325537 758948211 851864733 564165760 863536996 522379963 701282115 926163622 940557744 832282527 966394621 89657888 326297436 914468791 973724785 987617222 988073476 387204321 934560351 932259928 984624822 47126056 379685001 929496667 962885120 255634291 510915010 103789712 367888697 164658622 240579669 189358562 675937207 659373820 808789517 655960353 960350899 992721871 994680188 847897483 935372431 283912342 419056968 171108007 696755457 432444271 964030756 179822876 751731976 53282290 301972531 12232769 379136241 787995421 910529941 816549180 832779574 100848970 282017789 688142153 779273918 648903540 871858566 790506335 870571939 160477844 684801720 226362063 942970158 473888516 996388126 817106090 973436235 11202403 511987676 188567155 346923939 486913101 970052122 254075486 973180938 338944559 745313028 826864417 849297337 242420108 959298123 303258921 624082625 529818086 942986148 494815119 563440910 291170618 833919102 971080004 977436364 896150196 967050427 206086291 467474559 420321062 489953421 347566374 406664281 132944149 400661214 232106518 281273329 393310054 770328434 313493543 795641051 620333988 957686144 230731459 230798359 530963856 575453008 567520002 818419694 327825974 368144940 830203199 955938541 123311807 502893405 615559315 740882851 821898480 852647538 106303772 485204217 636738609 695633646 938556107 956077333 732438113 815806313 265135809 465182716 644624593 917571734 674542921 904586154 530372468 733259717 508140184 983936399 805497314 821539308 984202459 984281012 86999252 968961623 802595516 886423160 143485453 797681761 26876021 974055446 239394459 310489272 783549358 788903508 998618808 998650850 899138293 964217308 197904664 664519037 716216918 717206073 401139645 837369935 514824792 882207334 888144244 998165026 199248464 256042793 396391167 709730591 969812564 975577270 164893225 465054891 118605119 378227855 27206143 894046470 645034464 748183914 995356088 995898004 678107517 804647221 871598115 942519079 271779726 424794856 727909646 805419715 769277743 825660754 216806101 605527011 194725731 278751512 613898754 684692764 693565544 913312440 366866799 640657838 517803404 623747267 842243089 990221779 925595816 988584189 21839960 470692614 679018777 697101192 511982014 571996568 564491791 998603854 134385936 820759993 296493101 526582200 967829291 981867538 251237087 468741014 328498884 446009862 285258367 424138206 333660910 810398400 148408984 217358063 829282844 930964380 142304623 864155171 686573352 956298032 690127766 914940424 441508413 450341632 75510950 583278528 523770086 659324691 448683826 758335594 572836832 963181647 277172619 864142852 592895500 865219788 263991509 643706117 421836893 768117847 828758138 923102055 619293819 987141465 756276089 919093509 17626111 352499501 646003798 893619905 377797532 424132475 866989105 906817129 301168241 741173197 322404861 745729545 847670479 848743303 352770318 525772743 359023475 832163986 934837064 946677011 166218776 707860283 158390923 945601049 250874469 527314090 107455438 801128560 988283497 992323580 32376187 892307394 89743427 810589575 346248816 962594411 12651348 920381181 867321218 920071343 878287133 957358875 874563270 898436672 598726151 727331382 110887576 835289515 585196941 790312592 563889684 758801001 396017869 765785581 416285850 557157283 523736080 571345623 482194441 752258599 76733257 433205597 745754827 770394541 213436831 733784967 976414634 983772535 888059165 902552908 30338506 167410002 391440357 498616421 256904261 481029136 693491607 961197624 827278911 871584990 925706602 971789313 259372877 679061375 161250796 520526255 136938908 874978131 628720399 775199564 917410349 934428505 894955954 911078183 868514410 877879536 387297089 801302109 747972093 837883713 635934682 993750547 752496508 789254582 651685184 943169681 321080889 933839368 980616846 987693156 359046493 615876765 181818294 461206678 453440818 626134679 805099866 977805073 820505949 860021126 693635955 985683980 619633499 915363523 343151392 973689328 500249047 881172117 355648141 926457602 32491184 668967716 175335283 644254886 195844437 842205751 788388905 872998494 893262677 915162637 742132901 816754037 662668604 743420398 252601293 625901234 350258898 840928868 292976731 841057964 694293778 764160029 405506608 906257483 960114873 976870841 924618514 986756771 307613292 849788857 728331886 932806901 551578403 675106181 314110676 416822670 193919002 744270801 561097053 669983540 41839010 531960978 381358478 770144179 817521996 874043530 390514355 861510781 22189179 420298289 284245248 686429005 842311413 929872943 211652096 381832027 289367643 613971582 315902866 743781701 323452581 471528011 862120453 982491924 778197627 837389209 115391634 449973204 201511467 956256695 317767422 675292998 170880414 914106377 328077454 730010516 448754332 510490349 693866014 870446186 866876194 930591556 674831508 916911994 502089583 753114902 146451836 307332923 866827481 872217485 624782294 646554010 786960398 972981338 915168753 963809580 52245122 155091843 509687695 771678888 855707105 871393161 509619275 547308314 612435677 624261823 687537011 949594044 113681132 808277225 841517316 891062989 736534367 949513597 467245665 968685042 585403827 965076631 292463660 381217698 113865124 338551987 706468489 943201871 111143157 727959538 351049302 650682284 19343082 498447065 540784460 780491216 645019440 647834859 239389592 806668930 511338569 632268843 550788078 953596143 48381284 911072722 654157664 692687480 931633737 945216768 769907853 911919567 540413589 928510058 534449464 534521378 505461588 543531844 403028086 584861232 531050666 545458624 130987849 450596787 680227210 771916370 468955813 658190953 913208313 948242890 94145480 916947010 662913731 927174519 400988006 831135709 770137629 955016744 400646986 987563124 816108250 909501408 405446394 614742145 756472790 802682070 574417546 824686853 275127241 490493029 56356315 950880702 358997063 494704117 645715254 659542637 518901748 714126622 179572095 631954665 393849366 533850326 757765335 842490480 849454862 936843779 583210644 846713456 10900206 243418554 442423654 731271648 343506342 525679639 51891950 235334381 526102134 927365822 114971454 224076040 599302222 856670078 85356574 564539377 915959422 991036170 115655401 992393520 827170165 962282599 585068787 687327293 712321078 769765640 157338491 922508996 915792736 943879771 714197248 819279502 853756908 997851384 632404154 741779274 525986516 948514242 683111708 789577810 886901472 995643101 867873662 903849011 197575753 913439237 881309536 983679158 700772503 842120165 814840345 872745132 649582190 938482065 957420175 962129690 342782076 422104055 170435549 576562755 795644820 981098462 291007214 674910414 803978353 837789363 221729496 817681977 832352576 953167999 812394197 963069389 572539434 816181758 591936822 948798319 250125801 990146822 859455084 885890237 466946821 694683705 723971995 805270656 145744547 539880607 305933142 724143052 519878901 631252278 427717456 639752561 954476465 984298518 605985916 915896446 96232314 415514558 110849732 905586643 72007405 691836924 905169695 992816885 627643703 939396878 157951898 621634126 397451602 908540225 695928186 753082954 175849814 500348636 780173757 895584031 256353545 788939867 938991506 949540779 467536501 825005533 187164403 980341242 297419108 681426785 732453098 868144150 946491661 983404298 950811519 996618163 595243063 908412632 664926930 873221865 362630057 624555772 933035051 967263407 558054805 887976751 57088528 953019985 373383543 768517473 276334122 877626938 636893543 944775590 469943150 885346757 104484810 856752326 859475045 907404553 990202726 994460920 328348120 769184925 602289040 960094345 937130697 963830125 680918343 857101519 643531366 784866839 145111568 334556100 151926541 420933287 393658944 942680038 682348155 972859331 612202744 718139829 961358968 966702455 673224210 968785799 664064973 968499343 14737262 430858899 370914662 987048376 588042340 690282260 868128532 962441473 323653544 667419903 287780112 639139140 872296238 959427326 10315320 424706833 147765016 217495904 233073103 706371429 355745597 572232751 723073863 760349108 875153759 990722443 712585124 815555394 988791399 993564664 520223100 639118814 125069850 682984846 921909492 985074612 978172355 993977570 974429853 979645716 565442558 879915952 904166595 941878957 219961168 340402531 887785967 998704547 545016020 591353383 663368568 996054579 725612054 973735284 27557620 638490812 30143294 650833491 771195280 854314500 973829431 981614900 718568284 981103684 232075450 333254755 578406940 595980357 227369573 514747412 935141351 976389079 14967071 520425020 742075518 794536829 189150643 641783747 587539380 743328945 115807768 238295000 391181307 544095839 249204130 494478016 666932432 790011165 817012749 941093808 853853623 885173113 619618865 833605089 422620333 703310541 705009158 892602534 655393221 942744131 880183208 948919227 478184681 743758247 285636361 371452326 564791220 584875209 383504095 635125844 249213501 867727404 329819593 781792605 487411414 907534674 834660178 944027636 555777006 917611113 164711396 775616974 570743986 639240249 162454086 785355137 773611344 941471127 735404346 816098540 309535121 563287142 890243622 905660981 517150671 723636563 543621059 812895879 526081674 558438059 890257099 937420526 704016207 802273279 588102869 978872969 796034791 834443849 137555427 708845692 109873074 153633225 881218366 930718624 905051429 954852072 685278562 808906949 254353188 452799457 21900951 695233374 203344047 775454990 838981935 919349937 970474402 987840391 799162394 800222045 103111968 413421887 287387918 467666067 709018374 870397790 160796994 724879786 880073100 936575937 907671142 934241002 315891244 750963478 58976557 379082697 713792346 755411170 28472361 914660123 618415411 692130821 563830010 795142399 347005919 940854069 662385383 694996580 605329079 786703097 420854719 578894166 466522958 497265277 858146521 881901268 910922306 987813127 386840592 429056186 391977585 426866421 240156787 329789979 166480438 971466886 911606112 920885822 46763153 790569103 384635404 631829172 881225408 957354268 524305663 883462989 978516357 997156888 442342249 841422392 17526642 387398946 145252674 338944357 343198370 400507692 335416810 711422550 418934857 696982685 868435261 939643339 309617911 513898530 397103684 413346044 478057914 489216860 874533154 954734868 617021177 992427862 783806370 864054033 773318043 842085850 330107707 494315207 512353113 689097407 527669664 641802156 612731029 621492993 563783491 899334888 694822044 847862484 730824092 938540614 164328399 744309791 685837197 713262180 247831608 257018241 697774971 705114179 436169880 551409921 397861505 783466386 623604650 984067635 493548184 593654834 158188515 264049448 77517111 653781761 106451797 303744909 375785215 850581439 148721099 333403636 203461287 802098167 34231543 838659193 269722019 562674714 674052569 794123528 485113940 872379835 551832192 562228960 832768918 943118072 4132182 45970201 211029839 516480020 324319364 390808428 528810029 758785490 325178164 491115242 212228726 984671595 679048208 812448906 769284716 810193988 723885754 993961833 983698954 989100437 281115636 458708403 750540162 778130954 735663336 922416316 542437199 608664251 705256490 719166516 896026468 918184522 822271412 866945866 290801060 986104747 840580320 986252088 596529898 812288943 552382692 803924120 902442370 990758869 47388077 648670925 726577743 891809205 544257187 630105323 628613950 912827144 252642822 316747598 393522407 635408371 544148493 787100552 120876978 843434298 760113289 785692588 966553291 989814054 478645280 580016349 599516182 768333801 918498655 982744170 682184375 684604061 877708812 911486711 529637008 601422460 76246530 173744976 389178785 599019862 829128873 981959134 392433833 823974276 610714312 716071373 917105340 964265149 252549074 923382098 587215865 617884284 327579567 840118731 634147200 801011244 620717472 820394553 837963594 991581118 331528631 879609687 438399637 915726772 858898620 980897204 163328625 523513633 188356698 682731878 708096637 950128039 698167572 954152061 304768566 313547640 18971071 347878400 678458822 820413697 252246606 905429969 722370025 813267211 50883644 541645019 713373573 990776158 892873255 992088602 836537656 898985700 318417242 745075075 687797018 871332273 686882162 712968243 476090421 684222696 809312053 830920049 660627044 712761759 62478858 889812168 278959672 301505772 178626509 929099305 120630607 594636155 213875927 977973258 977591468 981572636 770316306 937355850 37764150 861154136 511423296 524204328 79551315 270633271 859719263 963900916 643388573 648779855 193285564 844426847 863761941 865879857 751173254 873326498 342456085 728681254 561189901 569605817 575952187 714846944 9925703 848894422 472724026 769553752 384167272 387306778 42766430 819230529 476352918 546570347 401662941 735878814 808445445 952506647 669613450 880617461 44190155 306641716 311689162 973078672 590557015 889214891 894416020 996371182 356211492 413259413 676895128 683507817 79479340 503348843 97696070 648340857 247360905 425943081 224560175 442931013 615643594 855754967 922352378 965152398 998467581 998562234 675367840 913982043 544748750 638733162 751138138 751804394 841502099 975560167 493192812 718402406 844250702 883415469 930889838 943210936 150561568 675093034 777922913 851535324 147586875 573022068 684867719 932962135 398053534 932027270 809277705 957297517 961528651 999250996 385396814 457582081 376186101 477589565 690733829 877401245 786430666 815410591 326046194 348807588 178949400 286834494 226382885 594006856 981728364 996406976 866719488 956376935 934464459 968724610 94976839 431690047 812305466 872784467 415236587 529167247 294275925 690096772 52037636 366776473 842653027 926167776 925829454 961378825 361685356 598922749 169866387 502802816 180478498 212807219 615996659 910447618 459688881 846319075 913091549 973550007 573754488 982760843 173547734 748249133 225190001 734886237 381911287 873355787 629906802 902580702 28322171 428532317 173862396 414110654 178659196 275225259 995132335 995976134 109704322 284898276 158087707 277138498 906627882 934838454 369916022 836645341 828565916 919392700 255790465 378398614 442397957 486346377 233582483 453767094 488159310 746468721 856908794 997723005 232748948 700313101 248897870 866552193 532134715 619117367 625496272 974472499 726939330 752178484 338061380 410140371 594457059 821991827 388196407 564408961 317730484 732275016 276857759 894019709 937510597 987553709 916172949 957712254 688989966 932132171 549839185 556842761 342654600 718766918 69267775 122960418 192065457 942443192 695558719 962147393 578800636 791519799 985686812 999285489 242023187 880297222 992650825 992980223 995962323 998725997 933844418 965169918 338116020 497915162 648846193 970584092 536939212 786869567 469377976 925522101 37677163 674643895 802842403 925674259 812680003 913209881 953820075 953903218 286201186 429384882 434800119 634746412 922325281 946286663 944843689 974957475 403607126 938503277 397276398 626222852 915918584 928884871 459895760 572556929 163307389 538042209 958704522 968368874 351339598 814425772 793373841 932773077 28111509 590296817 582341777 693926026 90898882 106420950 712817200 794133061 987686064 994411485 863924098 940722672 589891384 885107962 258415567 661178758 956653560 973522682 379168829 416221393 615004385 800666171 551091406 956283427 360019336 450884479 412376361 830279926 508196383 751452511 439072797 547503211 809474059 973668069 393432276 811451441 372279087 918394120 680577378 762716143 919154095 999167625 47085081 213410075 200217509 891827453 28373804 629873181 697970108 739798508 765751 877862906 468650610 688431740 486257495 653513320 469839932 471064030 703029960 994063192 591389000 827051388 423251860 469126010 70518061 241740903 111115746 942596659 585664152 688362180 936546285 959120882 153186057 781293294 961008410 981451310 856692188 953885743 424056978 799618268 23463501 824310444 56174215 403442856 646164516 902390404 932173465 957081614 470375887 801442613 185338475 943728889 498692060 771068278 662663492 847995395 876878671 987262249 727382325 889420478 135661511 665294180 487316836 788883287 119536198 394115143 866521049 988731255 388886208 917481087 938084311 991904486 594320942 792968199 827839517 868245775 300644977 605055811 447956742 858319579 87253970 829832742 592416731 744567532 779884297 968018785 554092185 760050245 10858598 425088851 325343634 417338017 693986535 864099808 871126373 923203551 615296862 997412996 203434625 578737379 494550676 731371681 229166754 612563767 854971058 978270367 971168466 972449307 522360594 911873080 460337619 755298283 193351304 434768523 339082416 614852974 124432508 899376258 137569453 315969295 567815301 901164528 204874705 696889159 540703019 981812540 439849831 750706035 457658655 751957846 288668684 704299940 422863994 501512573 142637329 724605289 302807885 679298262 841578779 882633653 466079381 760170689 942603228 965249208 895460792 967269738 470147758 700209265 80865438 303768454 360373020 982164811 972904040 977884438 122659029 399911363 944310406 995112507 281223070 610702029 539151138 981581642 345978589 779363457 832816677 993229999 796618010 882007931 722573606 801280798 557765985 666103439 165964625 471159509 336269191 452747113 811686858 887049040 259776326 548719978 67507227 117281742 975291230 992779259 498039040 745523881 332110256 547307279 866497554 885044383 576402441 936233382 446804625 579292525 399423753 541225949 659743263 680144814 28453813 711021960 52056191 766818837 616892567 986982638 539541478 586907661 450223233 637568160 912285511 969864363 533040153 855903463 360173966 511372923 529192911 553902438 493976048 933479512 101218836 616278058 742407392 918460403 106778834 436865556 203903266 920506253 342227241 434436633 448040048 587861844 197076807 210175109 896513597 961729083 100645102 879590317 264264048 965994357 223598145 283702772 146869697 499114916 738977547 765758231 390610618 729283743 843813211 960400876 406986648 796130549 395042488 555687586 438361319 832528414 620950763 811364991 499989645 746009235 274608297 871363297 466365907 955366971 703253559 985787991 644273819 815579823 247297034 289216121 334631815 977992125 646282237 863507190 760044100 853698096 925904952 974282896 655064431 730857735 838149270 895519813 198041524 560034837 91774099 851093338 453401059 828798515 741295411 953255339 786267183 935601105 947686820 953150588 570022922 786788107 11693819 556658599 553599713 762992498 870460182 941917020 630344627 638023160 734964835 820137405 673961965 773327201 125352356 953273876 735192608 887841946 561934109 992086131 419252461 961172391 885850642 960346359 440132458 920780418 811412277 826727781 652805025 677528055 392664650 996955464 392877058 728134642 859340727 899340948 907970127 955467593 368356995 690441110 48436089 170113687 773735998 802185602 122264857 124404321 111569687 169113574 824946563 864927618 574695702 609881989 97795834 259958385 758523909 992856773 727906754 958101486 981887449 984463772 145538308 550978659 581911421 940050557 27541332 142606774 645927058 893175341 834625590 925537899 64155870 807810842 905989423 967898709 343811930 557005467 271563495 736182590 213100123 500282363 945521074 960953415 634098057 713760650 987405991 989151468 69614553 187519202 617514547 687722737 928031290 998865905 714670214 757134123 721096975 974878763 67204225 998779899 10023549 878013605 34120329 924312159 168816035 814880820 587831495 906192126 346153670 812010992 619447353 815577541 1271470 929829702 335401470 803130178 132852531 250244965 278741310 596580666 555875669 861625912 616854067 746400986 986883173 997509272 316648511 887564237 560707685 566359365 455830525 739382721 505833916 602659112 799742951 897510301 882111442 969644610 621644778 821723191 542954987 749901033 206442995 266196725 614578812 646379442 727241540 896231074 952962062 957492429 598618479 941473328 39404301 370041733 585341803 647060021 931763451 991583323 768750054 909393806 80155136 968030532 463457043 868072132 478835082 887152509 33952995 654285230 114783269 691581223 692789095 942226480 991182487 992424606 580437665 678801517 564376865 576215130 772563647 878137456 815229027 891715808 632552192 824403246 490156263 578315109 708994780 782689241 842096292 919781652 285234922 739017643 962843609 979524449 142890965 491864009 828004011 935723362 950638660 959048312 780855211 937508025 445298383 973682683 107179663 251439654 509621001 989103184 811055798 882299402 242934454 770802245 571911280 900074352 238070003 498203915 426130060 442380455 85243184 149363210 724933018 951217376 125809760 923352582 692473046 768321305 916642771 942064839 677826436 816462106 132719447 133862811 79990073 380293543 876791847 987559859 379629657 756072889 991006812 992369453 929634328 931352823 924363999 985946026 859605691 976545837 242691896 855690164 515695585 880907305 345192561 743067402 750433999 823756749 314819725 406831430 613826002 617423348 509015558 963399994 702593471 741796713 697099243 874190780 82824428 599673033 245622136 700275397 12842996 555391533 11917426 810159526 308243855 944822300 253295457 593826683 796209190 892677115 813692879 918462188 783715324 827556819 439857984 652370979 973830801 980355187 374544927 637576994 758091745 943034370 957053866 990886772 352781077 491685855 723213020 949996814 672241892 832319903 73663978 211882263 845603731 981861645 760098510 914892316 312043583 572627247 96161495 408850102 869227852 957597349 74616234 603410813 486465536 562910437 709802929 744121962 924398560 943209130 224092247 394375298 951158431 962616547 986745043 997903350 242714457 782619506 823037879 847893091 957802328 981035957 80439566 761567565 615502200 721807753 972880625 989231835 23137198 128170207 322900913 961090842 308693731 827036869 563236634 805574245 697928049 846887628 599482498 831498347 965792103 991567944 731446025 940547008 368283882 751340832 82968889 155321746 70649412 245086120 646731529 898828734 293398482 461130072 540758983 579524366 205731117 840001868 277436496 797937721 952743648 997299212 434132995 681803262 587016202 866524641 761017058 959390794 769029465 905778451 723648738 735279196 719773927 864821000 109403428 979413621 679653379 794477375 448910725 991653206 897252776 941875682 822046838 977417661 129751614 847453302 266449480 735281325 903587611 958380874 464145721 962747518 521272947 724849519 30647885 415985099 974769956 998958783 972019961 979855995 945257834 969040949 880437845 893177692 777914475 997211583 907287440 922358899 458091171 985118478 108837540 267553573 727107282 759748600 207543437 659725252 190692612 472211186 274404252 397394471 451147597 703098809 331635018 721879564 333850231 482520453 58343559 759171433 242060682 277389812 957275166 990428750 82108674 542974050 842623183 891603802 946592290 970048681 740052681 883101272 975293260 978093223 694043126 717251872 233052981 659619450 974038963 975700048 143887842 782737243 619536276 679214392 183961818 474947322 982332248 983883754 471830743 854100186 715868479 987488397 952185970 977631358 149910634 420022080 696541989 743908908 736219764 813712994 928560770 934638454 4874198 537084193 293237417 821519460 910426920 983748390 117239425 885025118 219843254 610454429 863408320 913496751 950140711 974185309 907548666 972841135 845477034 976618786 920713689 967268231 373375746 465704130 905314078 958137973 354237512 739743961 766682595 929436672 261705228 443891681 582439838 649990042 859445480 924313493 940700315 950756786 182722805 342472675 648606228 946999999 864833175 922154488 359918484 601688157 431659546 957540595 957413413 965498011 987939732 998554012 231569659 479131074 602562526 996174643 489486260 605692591 831776549 832310522 653030837 740247439 308194121 791549654 883314050 988896948 236792431 712575829 955003390 993053539 7996433 785421938 408745448 576648501 295110117 358871732 349405621 619403137 575717670 660319064 947589288 994724036 305718499 865614310 728309236 736806392 192948820 267704358 428302649 981042772 789357359 909323161 889128187 958643699 304275492 484309983 569423675 946547069 738896462 833227756 653585709 929121359 853500369 943683546 932445611 995054139 238269062 560573213 747539853 775150070 711786005 815615377 414014625 713533451 182248442 628633601 960517944 969149160 491166029 507913886 570786414 842942081 40206559 569795581 154893830 435917449 645320563 780590165 10522584 598231374 394048736 602103756 339479251 694511207 828055197 938303804 587483105 679882014 262142982 314025182 289185952 630325204 554870856 814012035 108033957 755532869 452456104 558668813 597499370 682181709 184968439 211433481 972256643 982047241 8439966 86151941 526047511 816373512 215959349 266545727 924818612 995847065 986824857 994997532 249399637 286126212 211502985 882265237 714451287 758724638 192635389 419322528 343857380 750035984 906421533 928822380 21628849 891408055 692819495 713652501 172413400 506759489 760016490 805498304 641588077 974857979 14692554 675516157 538704147 608286159 977173277 996605802 221026919 807067007 967932832 974062064 259898832 962455354 15147431 545370096 56404440 444974401 192713926 251660874 240330886 483300272 253795944 625596479 687046060 909651463 633770321 947986566 927552391 960584204 579005922 875290354 50735094 663368198 941167832 959107258 341319721 833267208 94647621 352869632 568626422 978138695 789137746 968943215 804398285 963438984 359424761 960755246 371023057 524361380 346881438 532765716 216172205 901644748 813632963 867907256 873881103 942025636 145286017 943815851 606654207 949578470 991361455 995557250 462588384 875036095 175618222 391522740 901087629 993597062 377619148 707567457 100956172 274677365 294555534 430828826 343605301 632697032 623799529 654512744 374788930 872546529 134299427 679679450 189148202 207087118 582580036 949811211 890290466 890800703 285441193 554381137 286456610 710948150 599482701 845437046 502218160 689927661 499089341 626237064 651414807 667804515 151327596 845202053 206784565 403257003 261100284 463114930 97440657 237716538 840690657 887346558 57254960 352278503 10738612 852546563 305821434 349889798 440902514 639422178 213874887 454270485 324613310 515538587 560802389 683150346 325694387 493873739 131041632 379838466 574938089 938785689 760024322 845847640 265738375 868713552 306059219 777295470 265927454 821262902 204449515 384697318 391305705 929060498 972085746 976986902 784756722 903155224 467210226 862906280 49749313 980792773 889547079 906540862 788221437 991427745 934560708 998688399 136549595 971423071 894719131 917319457 889465426 904036486 795031790 985480203 161062288 457400673 778532324 992594202 593089763 969285514 202252809 731188753 258409960 384095744 758377355 919402406 181775707 211069082 657926287 695807119 695382758 922195695 184965452 310366735 640524207 902959800 242055254 561112888 786108085 795699167 321092942 369888705 678115061 809745607 243525733 591932088 235059253 884664237 245022082 889811714 115371983 938403421 12874622 989282476 858554281 973102677 954992699 988959570 837583071 903439800 954555196 978497292 295530261 398952711 725567732 930514262 808881891 849714938 520374559 726532957 829679714 941349630 297811916 895556245 108245333 245735916 289807866 346220377 708584488 821059119 424120639 460652203 641032719 688408658 336865838 768869071 609781699 612946892 697252836 900594387 719027452 776768910 593191139 931848112 479379326 987266733 679261844 935795053 9288874 446009186 411743632 482368856 622455235 803427381 307945346 638714450 190390959 409290151 996046079 996319117 561420657 795540237 287160148 573728606 773653300 970643715 598072754 790877665 348290154 912071518 744569531 904578203 983891465 995316011 630085982 949194268 46981180 389704630 854886862 925267218 894000408 957584337 9968671 783933718 531962919 800897598 434090321 527359068 753932429 969838196 931206600 941538680 244084377 341944988 994518451 996325875 182900764 480486524 413373926 788251422 136031948 150934289 877026265 923375918 503015911 806479610 707808065 791322097 908335595 972403498 336290386 564627049 369412666 976233114 786976535 882187271 102386484 884871300 307858398 687929385 957029678 976324751 542915325 997818491 815955679 926375124 965907864 970912323 594379092 929091803 383670417 447729926 974100890 975374957 251665621 873148981 934835249 973946917 434012781 852847729 471920730 989969883 938245600 990350498 477199474 536187747 807022870 807753535 378317549 444559554 788031073 794902182 100938614 967242264 290908654 878997316 530385261 874757790 13221464 943420034 745902100 845492391 800943846 986864996 4463784 875399958 469480857 698595174 887223092 931849263 541357664 825053482 696132059 873440545 625434973 704418127 66906055 807059348 713818729 898826654 434486003 536974013 28247606 386891247 250416421 687039716 963610577 969452420 231900689 260558367 442890991 627661244 829527560 898210226 375724051 980591570 957426246 975975956 422706420 917290360 317311960 966092497 472407955 694835053 168625448 482897436 484102653 540421523 333796735 378246871 863835179 983199662 294590227 689667799 107795840 765664172 25921040 760698673 339464768 434704973 848567180 945731628 588979427 919310193 26231642 60071100 21495828 642978671 619673213 695394986 28151818 283590356 412839098 812732382 835307047 861413043 200412986 731471040 126568562 285178230 50382994 474775030 832450519 869191723 750585609 927637624 843622916 863525899 137606065 998427411 736499727 950211499 385452456 930331527 342091429 722147066 170290315 756758004 859490142 977011201 68347780 512362771 516480907 830374101 646359859 738981925 454227735 638423030 35590306 505357703 199014388 596402989 321070007 413492726 395860265 452465246 75902388 481299314 174054099 873585404 268450790 941987866 647061552 694142742 345899667 520935122 288837580 292748446 750300048 919871782 633350564 871961741 452604611 915824814 64285546 604268157 982371079 997923269 672856508 776864096 599702439 742471323 521061892 945709498 443471915 631559722 687583352 830867102 270500868 541958099 338671146 723888072 539878086 680622888 766036349 800220675 406587118 825104813 917954701 954586016 501460919 972367012 237562345 718381843 366564693 644664592 401089280 759109517 852039109 881367268 21761316 135402039 548064635 608865056 466853602 803465434 257302592 806503246 721996369 991064230 461771675 841372049 396541752 581178110 561567638 918729788 751239173 772188212 637327638 805312106 607034080 996331492 809748265 890511766 284231886 353657108 982212605 984501489 644106109 822367371 110958638 737725831 408515255 476593844 618656048 855497393 683054822 844096346 750881692 801205398 519442821 989881453 573982532 967579468 805351402 866369294 272251834 875263713 865266906 929570954 182382522 623471404 91816742 617363309 690348844 994119325 53395107 266144031 250193332 392188379 146357537 651227515 838636146 944121553 135246407 849759885 715476278 788593156 16698394 786169564 145791208 656816242 996515265 996741549 568751489 833222929 35059238 310026388 959489614 969119310 127087531 971572739 173003345 587925245 686029142 936622859 491880848 811695616 275323744 417860883 460754832 811126057 574143929 949124350 70277219 657418893 668211804 852656212 948180402 991740756 443794129 635342144 161593940 667331907 355623571 712787747 418737050 558403653 956227335 994622784 533050495 715663329 973051790 974719517 307429370 797294517 759107131 846615873 59110427 691959358 265051786 862833033 403662703 587268006 658309262 965765170 235628373 613905412 584170544 975494393 560520144 717466420 895150458 905141905 526325252 681434137 538415743 730738955 825049604 939427720 696192257 719484940 643386968 846463502 222994766 818138461 971527614 979172082 855550527 884852802 948924169 950241509 663990463 830909236 277531064 755511648 206718966 255377090 422317528 829321985 924632415 989913569 912255771 940950685 409629946 731093351 416442977 416970007 613443450 872727847 404003713 662316727 117986838 662591638 184289972 846543718 399778938 719346903 691510525 914741138 958492903 994904137 502124013 550429978 22545031 134924853 277485532 722453867 951212297 990735890 554938147 925969387 438881666 571387534 804612538 988740771 651490985 677090971 6384305 515112921 581337528 931254392 195466138 343112769 939898953 990522475 353613807 645149890 229030652 698937274 26638906 960742233 803915905 835372646 645465832 674586956 102277465 222765731 835659027 888251393 591562622 624506290 332585772 962190876 430878178 965536414 603820866 691083722 341981293 924436793 468772914 868894371 711776317 892158814 941996339 987055018 97860920 492003852 854501367 877333482 586889857 805251323 972896351 987300223 53066060 222953554 888082719 934228251 815737717 945744573 678218195 924223519 89933995 941491675 391075646 817738123 164350045 501268656 454187644 831375543 158542938 437192281 527815956 895795116 191979512 478125554 394735963 507558518 373918612 531169474 99190025 375409003 147121253 917357829 633794166 758297194 196950737 338992625 781201735 888693776 176497114 575772311 153053156 180288881 182191760 880171182 532925744 608718963 21854621 423141465 361087870 786215176 130739373 594137520 999278611 999327908 25884158 641666637 2337200 924443161 354483977 423378635 986351658 996411556 744728177 803732575 440922528 640824060 684887866 802662875 912138984 982713022 687562310 821682220 502273548 814695994 932430047 937536517 205383953 603486290 966952343 968106370 877234769 931913360 793745965 996652250 72093538 312666098 417673787 762578095 162204482 780424261 180868777 410105178 701493890 912072281 790551920 846880935 106421351 628281482 455992707 585911941 183508337 978436434 910122031 921807956 724351147 736265146 124755961 563198795 773352856 998473608 212464836 951583810 271663932 445318121 136484885 392180049 579554943 910851218 98204675 991632313 418538682 924795240 961308376 982417998 228792972 695009438 45123809 630295156 734639092 972441169 823311391 859399222 414722344 855916792 461778351 843533293 330790939 579363138 220393634 709611494 991911908 993508366 861585663 909981979 80686069 230821592 447569518 733799118 869697962 926084402 137196861 646209147 883699123 941533548 613937564 974302286 592721507 623367790 230537079 898980301 644077710 856255235 151114494 872421846 151664673 826572230 763888843 786122248 376299539 975019591 490718888 898956280 733118804 806144945 533358414 724259242 634040895 754589328 346109748 506446238 368085798 556817847 775786003 807398255 913210577 947334445 282071379 415905672 632655270 701167565 616031317 667744685 816211029 997945389 636166343 957060302 320178612 868689510 617076176 644604422 71842088 812080742 959377037 980707856 766548454 821167206 962608689 963178133 304836600 545163632 528534426 582064843 105427366 207027094 712823078 951179575 503308849 693745669 421787182 557681443 456033103 546594054 226963769 971145764 893372354 912346367 909707082 996556273 749903191 781611708 639900580 831309489 570907211 781892836 553237479 756609549 521258175 818895430 916395993 982447001 901481070 931147148 587337187 681156473 10999687 19003299 604452939 782412455 386858114 583239583 672415451 999123383 561104661 772633497 660728716 718075358 382667704 734926860 540167280 824855478 396885790 594362495 708810953 977195310 678336743 900920533 71486772 865742859 628191509 730329954 366557742 408469691 865044380 926205198 619246828 789385850 479297761 800328944 344599731 629597315 904672363 927085247 526241877 785098023 393371003 561355730 630133721 714089578 802283518 830997465 216700141 329770062 926560564 958709706 918098994 930022319 691214005 865993070 91991469 127540232 833573774 947482452 650938405 961715330 194886348 651839801 210353402 806795593 594269871 867999621 196224602 789981721 356455074 966667435 343483290 468607192 266087313 802709301 820562850 948284718 258531176 553387414 54215338 995506105 534731946 676033554 198441136 672121870 926172088 972844188 278928477 973819874 59893718 878309203 87772668 859084391 568234121 892006805 519083797 990919812 843037832 998068757 675786193 822329299 966975937 975589881 911170060 958637917 897096885 971979376 201929728 781154821 170223325 371593407 97310300 678336458 287560721 537130800 628652215 709192456 745915460 755898248 284203222 586218143 618674909 735010561 334129657 663088403 954228034 979689813 244540151 678080328 178838446 534351425 408918198 926812547 138248366 245467426 804728868 963819585 188379549 620966927 509921284 537834007 294992253 803229236 231443510 630916697 120762410 644216826 823785737 979449576 852091827 893544299 347737198 713107818 397627663 650900988 49217061 150390861 472581521 879532191 291269647 552094215 983849618 985248295 667713243 817732456 475586875 610898436 427784710 893462710 316680254 481669190 128019826 818942346 95977702 575580127 663375395 686934957 858010933 875561099 679868405 852504115 59662147 574197778 279555375 294179956 263116863 578929257 475090894 630849989 34064282 322641679 559076117 660237416 771251349 773812425 331858276 835533748 403121149 637292316 753002414 897875776 455226162 543689299 498840508 690327637 272233435 395076245 804943356 910528540 547814938 635135866 685308135 920568895 434877024 683464466 434748366 927504937 391351522 763963548 866869778 997246790 33582849 766428386 726226716 790052626 25766748 399772064 654671556 668269323 758714545 795878646 555074135 873334221 611824770 947762349 202754108 385723199 997699015 999349848 534197360 699054608 724103225 807676002 91183481 325805523 242052151 830008825 92214975 471266300 475328603 606022010 454137509 836954522 144449472 369151660 679614537 829394252 801596713 903970537 337433809 400977632 62915558 557186354 981016093 981480165 335396662 771863008 148815844 293376792 950565907 985603468 130668412 914955018 15592641 668852032 708878542 769757893 160007683 223443113 334104463 743132203 224258140 689519692 403751298 807143180 805434446 844120468 684906831 912580984 508878444 919441764 433700937 811096645 857144767 860229391 347757757 423732557 787174130 851460467 331536785 494944423 479464093 705384060 751449971 948244112 658879446 840944426 159227695 593620993 707042762 858082977 416019338 758488209 913498574 970064772 761208996 902267854 513218011 695723947 640556818 946527204 541163702 677878527 953952928 992100099 997572801 997626003 936405149 993859359 949327810 968485228 319936653 336021381 836429605 943525001 907622620 947057143 986920360 997562515 949590677 955854735 858239209 865697939 331834351 530305281 325218326 586324867 374669722 912177641 302607242 833460093 889794556 916225227 427859899 579925771 217868390 438446623 430587877 998782706 767553312 800004792 273386619 601410484 208148226 214768837 758593274 925766798 461991942 629364338 219495410 875872184 53554028 61657247 423824558 834551178 461134146 883231115 258977846 461929607 752640385 901192094 434015395 834552137 979923241 986313500 890558105 971143413 28130739 226463699 135355564 653572413 336332359 917505225 245473361 844995697 406755732 692474365 780719449 996249178 521730390 952913556 395393870 496684204 665701427 694688644 71582197 552643177 694841718 784152776 65210135 906563373 342889801 643068596 227806011 650292811 976319340 989830064 131462995 911823588 231694649 918510490 273764028 745070478 774010824 971640138 493639538 644848973 25662903 558039524 85907039 610491439 444040162 722612764 25753212 398831134 476495314 916998875 728515796 878471538 548053382 758726132 133059920 717682901 457190970 798744385 792656982 929614048 482919288 577261818 129394408 483812517 347286088 423478139 300655539 492329190 801385041 832478311 4585155 371998530 867475671 942716811 937718805 995027905 536453503 907811829 346343215 587745135 133248885 982654227 678474629 772237182 292042340 826651889 480895343 516168014 436119630 903264023 314194592 894070864 892553395 970993467 835059415 868278451 958065026 961985256 217306435 321618911 495568989 705434500 517919344 607828846 996169174 996572314 727989863 744893774 738754049 854049946 687612482 763166821 529745451 910340535 290937450 771042935 578995971 998850759 789804863 851287802 50744831 515315143 913053203 981981390 31787967 823167170 568828456 662535277 44309892 869996318 963622475 970088294 12929855 376722108 65740354 715413137 932343227 958043708 77801934 335639740 490159568 671345842 564347560 836241599 719047101 949993698 722979556 786073722 669474369 880399521 214457771 250352411 364115134 386192063 712255136 752965641 130503641 846807681 915544738 944948821 652080456 732685644 448274199 579513198 837609142 948524055 408913623 636003582 637087127 869972257 247709616 291809633 2525269 843124406 433694374 686204082 630773369 834537589 116318385 792510879 836555044 870019670 863460095 881675242 510262729 899332813 35092991 225441721 616472967 646105496 21441130 181313530 559270267 794603343 242182659 551503431 331306354 805405497 652015098 941971377 81010787 649695780 812979309 901064506 416295202 629509740 461585785 834132697 435163810 664440189 347269441 683820554 441288458 834379038 391896869 896009069 15699004 641364878 922509665 941078451 819771201 932413704 473023113 831435053 715902867 781575535 189916932 384884178 885612560 936845985 961043377 987266219 531109708 817332027 880709472 949691998 666322046 960682316 977085161 993977163 349432732 373562604 567083120 586349282 696281537 978353113 176626260 871337224 340717781 583128844 825352090 997627956 946755939 958511053 778338460 931420180 151431049 252240598 202115537 294040060 74703181 869569461 979739730 993317085 629640289 871555574 307388601 523758372 692398988 949235632 477971477 597758393 798901583 862723509 309662717 998733145 702144248 797013220 781279514 937035604 63180827 838675777 997069522 998094211 879285839 931841414 469942868 502540099 853939214 986291030 779737297 809968666 423567158 784332640 606543537 652179715 197362511 376404777 572383830 840298410 768892778 926873863 6952799 787248840 16250479 662329738 209050219 834693747 42537699 105726033 536737640 992763761 992078326 998942997 149432954 386379437 24735915 471500380 204218871 618106142 830786422 946560616 204302969 598189570 345266170 790820888 78076701 752485293 222762714 740907931 196923602 241689381 984107167 984162280 608327564 679542263 532849345 711865476 404361864 791837448 124801542 698860643 54592522 111224945 740679494 839712227 440493745 782336621 990769606 994944221 995051071 996566837 162817384 532515251 288244015 574422346 482620924 654774145 610722794 679592508 46797760 814742066 964503041 969218455 351483706 484821605 13915307 537160364 204175753 882570893 541454077 648700203 948531764 978877540 79423098 558118500 21314084 117801914 842726306 904282239 432620044 782273260 756514812 884770858 737808973 991013068 852957958 870001390 616580682 921287376 229367770 648434356 614284847 696733526 700957935 831818506 684402521 761087486 321032233 996367242 996664024 998747559 18457122 598829298 485707189 714538882 539006288 756429658 694621204 735491919 49971865 678419608 645149121 741790786 498205580 949344302 342408659 565019803 109291071 518332748 440875265 552062819 227744100 411102377 641236797 790897263 533924186 841453360 577177797 780041164 306553140 919731444 516147118 931323953 168743180 285150634 576458251 670111555 8134574 575741210 519153904 687515588 635134001 965250183 279804066 905543309 876704158 947955194 172306696 643048927 494904136 628228310 471220419 574968192 778419004 961912087 112467312 446696270 573643118 729276255 42253168 504094587 532201907 797803022 328977806 395820784 234013768 968072361 502645354 581948414 599978490 653561386 418968239 592442113 56404016 514444831 498183298 880536239 16417827 871655741 430067974 510181864 400457477 690695072 185222057 987580789 614995915 943250483 21699061 466919069 841472401 951326123 666856267 921308312 219627253 789150673 70521910 704928303 184417952 803510020 344836218 529564355 833361614 878409897 365856958 945760855 642298717 875936842 624874305 643247625 942257649 969431503 210185733 672122605 87738771 576633748 465321845 964468045 402527182 560404715 838871789 968375943 52913444 990656827 947980580 977296978 988379442 995161053 881730683 978670951 256751841 491728230 855604434 987518710 54742103 333936008 127890597 539951412 509589388 920205190 899417341 931156196 585684977 694512507 818893372 882411596 254386391 382984312 324283279 860777246 349598952 933569460 459625232 541269138 287665728 513958571 47613717 809485405 107591350 841353705 37478412 732515182 79396252 408231278 90442602 407458482 877403093 928889748 980454597 994841924 86542770 836653458 587239918 877917303 954172366 955431792 505134094 953089849 778084400 788738441 548601920 910849855 663672743 912966335 772818468 921096345 940458011 992229775 575897495 787017476 318824588 803961873 25488012 334387494 524951998 756065478 844555426 946788010 117325005 969894647 450566340 580428795 448568913 696478735 657925407 743072804 521293529 652340111 125061504 554426303 888854012 968065256 870647118 900041405 939444451 979936914 505766684 859407281 978654260 997465464 857622735 865006891 778177925 813622227 482154995 930463507 916430262 979222628 982822339 991575887 763328915 981023262 638870225 969887006 280969601 895925330 470966885 992062589 878399088 911107997 434955836 557854004 141939198 776154018 547163622 746121480 606831425 940654182 793727576 894534112 46262611 159946474 334927980 790192417 726209108 913449273 949628248 955115677 668852527 893662123 509237106 564755485 132422589 150398531 786515741 837313873 319600464 656477284 603872674 811004132 801119512 862205163 903200417 963012005 970800884 984828361 109064684 601955779 761739917 994009738 521461187 844678936 394981496 682919169 859034387 949758820 657801870 918117666 218834302 454005187 328945030 585518910 612195744 670029903 211021870 853313472 451828460 863040670 317186112 777017944 739635905 761951258 389183157 470567894 699219164 912665453 677337263 827640278 61552408 759661332 912418287 938326786 673360973 788520645 951032823 969549798 623844494 883356699 661317413 970100267 197926946 729326765 507951919 911127647 292977825 311413173 553230341 841957242 216346107 880466787 679528593 759190703 287522282 488359926 774994127 967230182 614143752 984376794 897035596 962075523 791340888 870435247 472303773 855658462 548255549 888016440 120026445 675569644 587979245 804589909 43132954 986307909 446894966 758436533 929028734 970344628 568445179 696526231 775443720 870562826 684929488 909266905 343847741 814077653 442795471 769642453 690645866 882676774 434850153 840369119 274012473 468824876 453479856 546329044 39081109 741087794 712200315 887345388 556453902 628235912 383183900 921175198 353986384 710169800 325506844 443873019 475949923 657153763 737499424 975318044 84482310 226675422 565640388 931833580 790463931 964822133 344392348 875523068 23010427 857600022 195706233 482336173 226156928 987622639 441249940 456353489 346401152 546717864 580881858 740219793 988914365 998682006 208471306 869807149 364499248 867443224 731151286 977791201 262153876 686620462 445381811 611300668 918934826 967768943 27815612 202852776 665847579 874095131 445868994 502378586 696364885 920860377 412369122 559148773 406227044 924865662 964607273 973244175 392153087 960653037 656515964 848536316 251717505 283813989 91131766 317340148 245533062 612849750 908624934 936550659 231204962 472620717 467246304 824476127 351805468 637527251 784553514 968156837 989299268 989969527 236126062 845608965 954122641 961211842 832543317 949060779 955378554 987135994 556572415 982938635 10450438 546784139 121572345 867674390 645617055 865551366 916667352 975210460 586401962 781300952 451877087 920984831 107466822 581446531 164717302 484067583 468979851 472161956 537155676 997428258 749306219 754145276 770128798 949384634 565086088 657652271 217370112 265301568 641218780 924803483 786054123 815564793 370784911 507769424 990209315 990798997 774311356 953927624 616004838 938191832 20989188 88467170 696567580 836471043 195396584 938232207 506052087 826139613 291976836 346677974 704991521 936692005 46103613 647053006 745898918 842235918 845695952 850370377 541619261 939821660 609850703 965815329 771863189 985092026 336217964 831776363 797472079 871764194 56032352 260753559 930750850 944302678 650417031 868989903 611130844 877295756 200743996 947975496 649785116 761107787 304169711 371352171 471214689 529246643 115982657 694819341 144807939 146614300 38235566 477849744 130134734 568512346 491311369 866971872 164383185 472017858 845673807 984539384 642691796 843764731 322051715 542447200 357697102 380028436 305075845 744147142 856785309 927905469 33733298 45714934 796414824 950723210 118778107 191011036 876367298 929748518 674284999 816553219 626099148 997844541 317457010 969814377 855484431 928477811 149499860 696167967 622772632 703864188 249952587 394601279 672808153 920614799 924564037 955552327 367475090 453135492 443059808 879808486 965526313 970556937 298918017 759650334 408817675 475239034 384737762 703548670 146559822 228758568 204645596 502991520 730570680 887280699 132431473 443454728 343408393 582053342 71490554 998410588 546486148 681242344 480386472 652934822 179568641 384444501 241913519 471596114 263979415 471789172 779956335 877279185 33930166 574161008 860708259 890646524 837446738 900644895 166463299 862629590 73089448 453380877 263628575 473329560 661883095 807593563 712966086 865351403 142794356 372163855 351464663 653927795 484275281 824609047 845236021 909823316 713105006 994574316 714749287 879189935 519899483 567855923 594420711 801396323 766553388 932404430 503290158 642680539 245365355 698348635 188251886 701583130 703795847 785932847 944830352 996256069 822766434 845326720 474975371 631272204 995624803 996509467 520160051 847152557 695017249 707226355 709106989 925522208 971959193 979070025 640138893 799798032 9054276 135418453 305741123 765244571 247440468 962945809 946859603 969064115 684586060 777013768 249375523 448173607 745668039 817603100 229231388 685700305 84634204 904851014 220453944 556871563 662196059 889669161 612315501 913897548 23500643 392082598 909503636 978868480 812575196 932490141 73645807 618659745 742762818 911699521 711499534 792746874 661245736 760271320 95359686 746498298 876223104 989372595 351796959 694289148 141726950 760250604 89717615 339449393 335938735 993988534 666018871 876461585 675475926 845800639 153245457 391033698 842533347 960575698 618778175 712283642 48204632 843868607 262943153 441058803 545124386 879838529 826553819 932256436 381135918 493725276 70781847 484528313 697435671 754877591 396489118 493340952 717126115 758968628 897917900 981122668 422075060 901357609 429995996 894381128 267318433 912369862 368386462 917553053 859047631 927142474 31963634 718377851 838563105 879706251 125784914 393502827 531534466 715216875 421293669 994966839 792919514 871726157 829050289 836948885 401935215 984534056 540929729 763777852 80670597 331353288 54032153 878929510 506887381 958466819 586342548 919050991 63309041 212377605 741616673 788036873 666928013 895595272 367378885 976063684 618028286 822703717 613072806 901385417 957510436 999014051 51235204 443271007 33982851 748198925 303092188 595221538 749173459 974665311 509109252 994552852 859265691 938360773 811501653 930129287 66733936 869739576 978721566 987240294 138846183 608933448 446228073 920609038 458617604 625185326 535413758 748402203 539855998 717011157 964380873 983740267 551939864 630488061 85660964 936700270 404178917 858015578 293348227 297302722 727545257 756872645 702175910 779136171 935552576 949659564 711569673 863850840 320799694 973307071 436947767 643052252 73012980 137653914 420264041 744547425 212710001 734404002 168855554 950520205 639531642 767758491 68932025 405687939 24238367 661862805 27487343 329777761 431784107 515323987 885149575 918279281 708112191 896122415 370976376 380827180 950614636 988389693 935780880 936463376 884690271 920990083 811340412 843681725 205846708 677444858 428772869 689696770 800150355 915935357 166262397 851799112 55583075 460807467 897906622 961858197 693149624 766698580 341608652 783971110 118219584 582770992 443379245 891584310 262168450 705659899 164517517 805383567 285044868 727706589 684668573 862315607 577704448 595433167 951872001 985531567 890458005 999272009 14424308 382174649 284563703 725632380 525066419 565999280 674577942 736126177 836295102 981710731 75560300 809170167 895788236 980161034 118290103 729332448 465819448 526385390 654468795 666383809 687640585 885036472 34698377 155711763 317259210 624243020 592897117 798523223 357851040 418934571 152908283 630248001 347824594 940831133 299671901 828099366 388338548 960222164 782027475 919895323 311304726 367026818 601313240 876290369 418642360 907616626 613947314 713249053 465772022 708860474 597079210 805460480 572722293 658220882 479781703 633173066 303006510 392780968 346756314 440247089 545267460 633556653 590319024 785650706 509931941 956401703 18222967 477683429 436689614 913363049 476450031 701528608 900463197 943597277 431619820 830525325 241734857 516798800 895258082 908117474 15950340 677133814 329321998 889712226 455045701 545992062 790049366 821631830 488698180 641841658 563515690 958653792 378582391 439139808 261441498 880095813 283483731 739896504 898984639 945821354 241264658 298966797 990456523 993224585 620666757 908035596 553433216 648087408 765036952 806292281 961430769 971735932 875592371 969786470 485318115 490711428 754911580 766640737 627975176 681881380 472697222 893080294 616454146 723196044 788773926 992710647 732539327 738452427 374921667 769581471 500651770 774919456 664674122 847594822 350313652 634634147 963228178 972999693 750616518 822424316 365891141 523242809 915438572 949277425 201711597 544240164 721383692 869850497 323153861 748576556 128447061 660519856 241223817 375332614 287449550 508372547 943402002 979857645 14492502 235698933 372362903 412326439 724257158 817177862 755047704 989073228 814754657 871888414 578906985 904079353 137162 367852771 126036398 587638851 640087556 690232546 333267461 380237705 295806495 853681527 92128862 416065625 126646405 810288067 98735716 434950697 717983347 844153033 378229025 437433154 181416968 426696921 885691279 923350319 57738513 609329969 424303656 532974973 13518601 284079649 587696475 696259042 476747359 736483571 676112570 836775173 719049468 861019549 841542732 850866054 949283059 955357933 834158682 911475043 193683386 687699946 620100332 953337319 870062874 896454966 137977907 594214556 443338713 983578278 971822428 983527134 239844590 747262721 95966882 812527905 239782030 249400508 775318071 939337558 375006967 930108286 466555172 855511016 423897622 803243160 360671900 910997223 482033439 492668915 626134341 798165323 912398981 942612106 795265178 972140631 554880941 861163526 659810499 912901693 226060994 636330263 913081762 931901848 580339932 699210050 775663296 808748312 207199019 789604646 255513659 925217947 53737660 226103596 195562855 609299395 629806787 788247059 386036945 976211969 86329014 859430761 305896957 630029532 576339763 804257898 759756470 836370799 469518321 840885557 518932308 558385463 795318998 859195785 871940120 882667771 930077875 957202638 345670604 884166847 830963762 846020144 175489933 870149918 149866704 965290478 187710647 372865693 787748964 820141150 243265049 997638860 408578245 740617081 593561355 903505315 414920076 960332318 955135289 971742918 780378284 808196643 822941601 907212359 409855610 797305252 916819161 992671513 569977980 855778923 179570707 336988574 106782936 224741168 242949235 340902674 974402949 975685944 1749146 390737998 536079414 644383565 619137950 886757401 610848377 866553329 288709504 726664728 30927860 985186870 120095687 679775852 50384940 59226978 445837701 694406534 669257534 911966049 4438271 128794798 365414083 470947184 777116887 825472083 576049187 901987424 16512836 297013046 792496439 850405135 569240435 982935062 930104842 995642795 579110393 770144320 487677653 888189526 630757646 886091033 4824991 331605547 97343990 406288888 487184992 973743416 193311139 681504862 249565591 257795714 152216318 423852322 921550224 922985736 922026651 940820533 150615345 792979288 251495711 597975746 100884113 202433566 859378706 951110363 758288877 980441964 750336547 890132717 343165200 861466439 556209740 560889884 98078797 292835424 464879399 534554538 623616465 811614274 936085954 953373622 878523181 891400181 515414383 621265528 614492574 987574033 551579436 743875001 719105434 897536387 181534878 949486823 683797754 845480839 566889668 599742275 662084903 979759971 319664692 893108476 883745336 889578445 267436759 919102301 954428604 996357975 404977219 769038105 169840101 460526824 962550311 968143471 513180986 997280767 127304076 131115670 478944864 534512721 987983873 987993347 112874651 787862413 407139261 839100482 472976180 925433139 305154812 684265786 433334325 959634894 833430586 953378757 619695349 699090199 408930528 519325448 356845533 801106021 105786304 317530436 866300868 966283676 445495336 488081732 537660555 677512250 161245745 714608226 470880060 955646989 215849678 777242685 322930265 689922795 108566365 761024435 587959537 800878852 136173765 875620919 713591906 810629870 86246597 804963901 560668948 787867261 624803552 768948058 91656547 207463413 655160534 673974523 354502609 375864806 382269264 762000995 194037050 867587454 218908289 923163071 927501309 984034712 905908599 939201534 461349371 869144779 505560960 928185380 166794719 606092203 786593633 955172705 41705203 175946620 699358136 788326168 123037273 487325357 872818143 929672346 862831763 886017601 907536334 937318818 708972530 972318139 331463416 444887693 30444211 276526910 146700740 408591969 450179210 495271337 848823925 905655097 514461475 816921345 111242871 866892289 775117857 845912505 909210452 943194628 153518877 959002387 300717384 995020199 344923798 429402956 858643631 886221378 952614340 955578232 189893309 413657671 336683412 693391693 597261679 750277795 558344887 780110877 416941924 442109610 828372932 921497222 283110983 423335569 495472963 898103015 345637295 983386243 106819649 960071360 778136490 864065754 507264060 575924643 679660203 702835031 317468196 412132593 448771960 627422047 215267592 997847716 216802341 233248453 547097904 780696463 332678948 741407335 200630694 663259955 411575845 754557372 515630696 959916395 562249286 749438503 385511628 713399253 881278330 933660297 842695602 884103556 338750548 623409700 736831497 865052521 665101753 889330602 877151170 952548990 818026830 892618980 174179338 916722831 442078584 724609119 818257323 931987051 311556389 664678080 908489428 982136313 648225161 715906793 592797503 818326706 613697169 948395673 78514610 403733418 307640070 948389703 415611456 601503277 790458754 794549899 512731835 818374298 732791445 959291727 655054064 754149972 361345468 678280996 337092749 381055535 182721504 215535651 934087018 979535287 931370797 942007981 255254290 405836901 4382747 947565068 560394069 854866162 943490021 980580421 471862757 586755811 23410865 443755212 438278250 555412704 115708773 967896092 622022918 716020244 486215231 550325943 804067411 878996630 336342625 744549333 720477254 762990915 115574148 249108925 876518635 887965516 172984812 778729832 93659719 484623496 657224471 888932278 193059358 415745087 466403138 952955106 398817799 930499069 714317399 911335991 365591661 773696356 6363006 240656715 765579765 927215332 489317347 622518488 565120118 610433407 219322225 769259249 80873895 488931408 375463516 740021020 543156028 833386551 898196699 926490235 554229454 825764790 155681373 919454758 150077154 970631743 981421367 993695165 873917512 909991241 845136814 889739599 822881089 953551235 178989699 512564318 145368139 926839532 802788598 885220269 200023692 345112211 315593564 369152844 631751503 658309250 320823894 693109246 172616881 340774073 854052347 883182778 824465048 954083396 29830246 289719718 411334929 908501155 772582115 773042422 350974030 965392320 142478754 686594720 693463737 968869778 77027818 329553328 649606647 894764981 177198902 991662412 799763384 965155526 199710211 878369547 304605904 621929516 551743334 888422011 778568746 843333808 577205243 595902808 249609463 507748365 464414571 526350597 520515392 713998085 966727832 994760260 785014733 988931854 857705537 907149877 866764962 940598629 437591077 555319848 782120613 818084062 934154370 947270687 713320790 919697452 425928112 890425557 985433676 992600318 891624878 928743117 772731320 996984511 800997126 814162418 367103827 778578135 88702542 310204068 872352980 909815048 155924239 883478723 195440117 733056026 615144530 994657374 233129376 251380328 715698361 965640458 598311355 859616735 731136655 841607656 887605051 933415754 719120599 841483746 239688018 669133039 278401360 438566892 953723910 955171257 728166399 772281167 895169592 929730176 818267110 935160969 609076664 681888376 885493827 961529039 929421460 987702523 52426211 363879207 938694731 991838659 863709673 934430543 681832707 984409662 214600797 348303955 992095627 998554077 413957698 576440298 312611384 838865821 665838980 935342035 129534226 408941278 863393524 997900684 90903335 284366522 209248213 872673767 981088830 996735905 553180174 715502461 274828010 799778948 117125861 806988871 645531770 873384464 26930763 338764690 955332411 998006856 642683798 676648494 507071573 905692980 192810375 473367888 214307357 905280349 593324500 689036165 732200022 915858833 429577516 688554521 338727666 970490690 84331255 375471683 983051250 988423620 233965686 961785998 477717651 654938937 437195303 798149316 371201499 720628662 430011412 949485784 570340395 759661022 279007047 339330229 97631700 409841571 942482180 994847925 877300644 966994467 362192373 747667490 699199446 911768962 929373764 946765654 569760565 946016003 855888002 924005729 707721289 880377209 226287026 329009559 442023280 696376281 162445468 370924036 980960457 996576066 917696028 994141899 627237787 902085162 159769019 787614754 434897584 974871710 932955616 992721185 481691939 544525650 694692637 966254787 283555151 615228646 473824890 668730659 388941038 746306112 56965715 635495901 557850789 792512410 706533849 954348131 398438910 661671626 639523996 979492792 733651271 735695937 203250193 881854841 838153875 849913876 983990613 996449919 301418664 613874905 637802678 972845720 146941076 592204883 224340727 591505834 442922062 524878002 588801743 896471817 984693058 986241065 261339235 453463407 407989713 879826887 514586579 579312702 850696520 900863892 507720199 990221533 21104306 791649690 157015074 606331643 672630800 771123969 64856562 336149395 496777639 913072172 549378597 622256984 962344705 978664013 120557156 468015777 518351882 626469294 989688025 996250173 468978966 718543050 786263006 888701104 422664835 512872083 527197933 851535580 904714541 927260513 257098951 325498579 600183644 951865031 616889671 683225736 257154163 901232125 649223284 841307798 183235456 873425084 964201037 970436310 281091834 991973468 749129862 855118417 439632249 767786536 548357504 889952599 619395004 898053834 121568410 125971197 596884014 939311999 481450790 968923165 135066270 746850690 400004910 569168398 638231158 911099249 690938392 895720835 58271796 698118373 531910637 949066467 279842202 524609702 902269006 974766756 681096031 847091437 601472033 814955635 615380407 744501455 823667996 928415033 705739197 982659689 130942217 308928803 984641480 997045146 312900648 654985487 826629963 893661178 707678902 748816324 62640281 619754462 157540637 754205763 428589715 606321902 773920571 925404749 350502311 555462236 369694926 946816499 506892494 751529496 210550266 237643338 11104322 954458153 387469985 725898959 584930845 826371279 110918304 464832161 150662932 380316853 714802585 829070256 178663056 189569393 453729074 613214811 493436430 882524047 683409962 831976297 339038414 417245091 646744947 958364973 449306509 548200896 372187893 622842826 780255260 978695880 509083793 824546786 747395706 948253233 799807277 914599832 577690001 905073477 501855028 594856803 515816257 557911869 457207369 914021755 698940619 744966939 546597912 837853722 529859495 547862434 943684330 960661614 149795595 169599702 238147766 762060787 68378693 125449638 531755624 763541901 836051047 992330956 629532174 900204466 436011288 969379778 791763059 846186888 385379374 893842042 429831963 569506250 920633727 972133461 484117521 511059071 207329887 970390172 723318229 933133695 679613029 872196267 886558747 924129876 360376746 937028821 483592165 718790394 483980430 688558251 242479340 764021344 416506442 919003528 242517786 616684613 608043451 888076552 862243824 895277346 664519713 712610346 66426839 806471146 822735716 897744803 797999282 951942083 307161903 575648732 314612497 774885004 619956185 777346722 888251534 981916386 223039755 949273899 156460079 252051867 898991743 984905102 931481947 931667458 793150922 930991398 758175195 868243377 546492510 926470992 212437430 479605130 481992002 605196583 445004841 845927092 67854069 891645633 667281776 749257812 808701743 967808507 663650565 942593801 948712543 987170964 943054995 959417668 62829970 606090847 406434613 455827043 191206574 640785997 743102738 827575450 826471199 874720155 663302375 948794200 450011186 752577748 216425417 682704565 702507975 871094851 492200300 784581588 987449891 988851608 210228286 749319260 839458400 987430727 567062081 604889792 80054565 864311658 704643997 826750595 386942888 585637319 698212443 973450006 625460984 784572628 144864352 888195264 400165677 869656319 31887335 530383281 12895537 304129755 581476210 947978616 30147709 147676533 540745393 613506277 443708312 569814818 638188128 936135372 393295993 399712292 302718238 356098947 616154627 825494444 25648808 919923704 542524611 620843826 211861194 917030055 97562078 303679556 764856384 978378537 608245992 826184012 482930521 742400563 229324188 258492541 988880844 992682742 730269205 817227439 971629851 995916624 463822092 512428109 137848389 636176236 945804370 962083809 235197548 295367372 458126249 537053199 555965229 740624883 222626486 834233663 265810754 547312031 845885499 876641399 749472174 799498446 681031679 805949196 338156589 569722298 571312202 709990856 149716480 232781019 816668805 934093300 932526371 958170823 523802300 592895458 863252755 987724210 895186382 946527680 676171931 778958906 516604187 992075635 98841617 293316486 243984071 667971462 883247533 929797767 435583652 494809545 111965713 284107501 469454132 577815290 367876446 415027288 852573016 973746319 636508563 784063462 553149530 594771464 438097114 527202355 864934056 902174616 481048857 569217641 462818062 792724160 600606963 824117223 391903142 840413849 767558642 794575308 919091539 926343899 483432191 610478939 985317441 993739656 204986372 757757462 471948418 558225377 841505216 850360857 310446110 943766120 3345057 274251269 290904865 337386892 219405066 900596564 996650591 998757295 345585345 795073070 577548632 723588057 707698968 872996678 19049326 39542085 276695833 460598468 362429070 992456753 40637285 857094602 853040582 877813749 839375878 932560627 851219121 927198844 975216083 985125761 200968466 376912448 301711024 708575814 203983456 359818655 306747907 829143517 602314131 833016949 197731635 561594157 681817475 705131274 213183428 238501558 748152788 857199747 556302478 820049394 169155621 364913103 936325056 993875132 603165770 742228670 892345268 901902469 773492494 822764572 412322184 703680323 476512651 589476594 131240593 846052741 817782514 830989261 474211409 895451940 48709334 135223051 771305924 866476432 72463037 905727028 676805141 847409078 671549733 837147411 306973156 557774996 645711165 817320527 435099742 826636202 855639431 966990835 866026544 934218398 675654343 776339691 661057650 796243406 427484972 818574332 218059312 234080932 572192682 837788599 281786153 641764468 528032208 813977744 250477862 567678368 32821894 959842021 154455447 590152843 909511620 913871554 586528891 734432898 663471606 912396378 207477855 252700057 929858009 981070137 270145878 613412500 760062621 911344974 2336673 350543189 647550275 910503632 119488438 766337501 731323971 836139812 198380205 294936618 890203831 999297948 693691838 995160964 14524948 813016627 705551042 884319004 886528533 934266462 844520271 914672922 747682339 897429320 53933073 980055083 465144823 544083773 147279784 169001922 349647113 877348214 971520097 987294426 164991798 231559443 34125508 975415176 477890521 503907852 241086915 864207294 463723544 948958067 775438820 969247494 141732461 397254920 773973604 996940898 164988856 268874856 612803800 696281943 43965443 658569589 760150194 997260837 53414763 470852838 862977573 911715468 177895149 603792765 971371996 984166162 498276010 611368260 140401680 246061214 437109237 959133666 65876750 142456979 345389932 874412082 288395068 915434102 728721206 872997365 661771538 785007033 639539444 648452683 299987828 306728020 597017805 861995116 195652459 299911775 603233471 761721211 828493666 873706354 533046762 686224506 189660266 786309438 831457231 947957188 659616673 946689012 615018970 936491434 740534465 857837021 557833383 733231233 356102207 877453546 600782165 836194807 632107514 926154658 345575718 974852167 112189068 144004985 928687306 984564495 4667974 932948189 87807686 126404269 903616829 953917314 131473747 719058810 540597495 959985436 235440204 590476843 491542911 842244728 474198533 919639073 75001232 582511154 61565647 356881509 645716986 856552414 773374619 790830780 813552009 951910612 935244205 953848286 955992629 987992030 423494426 854596365 493118321 820687650 386083236 566976292 863820814 916275664 387832815 580629217 798461306 898364024 22325980 441514197 831546281 841109623 561473816 771929914 650934672 723761117 739057096 752761115 331905244 377146681 386045699 603581266 728145503 991106927 210783281 697524568 112586407 251278174 678038712 810109788 554720973 768965016 159164799 623929127 49418840 210564204 374237162 931751050 147548982 741225555 391656020 694897971 586741546 905371316 853861049 894309539 9189538 876724112 182201178 236016506 716293231 747301364 755772160 772588495 757840416 857597247 615798155 698347356 299540801 342851238 731514732 920819116 446083059 748757187 6324436 558194114 457517927 903253977 102041428 705471538 101979509 828969378 504635384 987398813 477348043 711792224 76088677 832364639 86538714 520517326 265930639 922974720 228032809 934245249 952883727 970709219 75324377 293145749 520775407 949391886 195824486 984014169 152134475 916270284 2813647 498025168 104903999 373790205 669908513 969524353 789343132 988097317 482167211 571006977 967345211 973428787 689336035 887148501 448206125 752158987 264294684 359686112 57173242 586689100 262638914 901491766 536382995 665167470 553211658 826213621 188683049 233353366 636138572 796136494 718419949 952180016 409280579 814919040 753007382 874310458 514738414 952135006 381720385 840578543 760478923 777092813 918404575 958886452 775131286 923965372 641544470 871667763 661942355 994107839 181405291 716799121 374066546 697742973 698749070 921811570 498711157 632765598 502783302 905081676 879576648 918131388 236252148 466830251 745371436 886681314 818150576 981393002 618427839 694808985 521050379 601261314 80149341 382362475 92681818 270890494 225613291 785834817 719242254 836349607 112885308 360912896 103274447 170878861 977902987 982256498 181007948 847098119 640818634 860577549 724657894 737673360 157701250 163938103 561756169 600999166 974353440 982752902 903439245 981798898 563069596 962775631 838724279 991161589 497716350 570492506 603186824 898119838 782858010 885562896 822476145 924445382 135715277 395685740 150480374 791616753 892933977 921667701 910312160 990698137 246938866 313215344 758077095 930515483 524394326 853939394 385599182 653426224 881710376 957989078 983338329 998752672 761002906 887800254 945219188 973261873 609523342 678822508 779395351 784212556 907493771 942256634 766899234 840250581 179351540 757383217 64120513 383258785 613411095 788260848 979310323 996157346 239572090 825312144 861727730 905747776 583000733 858773321 584718376 730566951 509510482 532059978 710869861 818586595 362257651 749476946 6345592 103689557 940426606 988419473 486842839 982045719 501228455 549654714 53133445 573365558 522764735 874895743 25655412 880409127 945551600 957930572 670402601 831399966 593217303 718487732 402798181 907953975 712570600 895826745 447081046 544741002 264981131 617174653 634606591 761914733 521667206 772107290 948806178 988034531 284294302 486905210 996198040 997258263 738654803 998032517 626119530 980196953 473070846 584303551 9149334 257379737 921079911 994698177 449687194 544572695 470231005 922763087 771044731 986874556 379978647 862150297 243936871 612186489 478957579 973798085 233440284 660347051 74729891 316987100 886924866 985192720 463594908 744662543 972200044 998084616 270867744 462690491 116456413 764492490 708508922 835185064 92598754 647928572 743576669 934014378 910293076 952394715 852716417 969013774 646852422 854989702 710633735 819211125 729210527 771974969 723002111 782476154 795143912 882157895 898113674 928367399 745872186 997820001 594347004 900660924 259159854 501666227 787804936 827647450 545828872 971200652 633779358 680058397 565665036 849437914 356334721 951184976 998419473 999032624 19906308 401042893 221052394 504558998 541613490 977466524 829091353 939663078 319744155 365924789 209720667 306931757 861934996 933764026 986069286 989208219 53158756 112768647 276102252 337924643 607185580 875261381 427856285 885906625 154240975 221868200 969509441 985944364 456063781 696770725 702436367 723464693 34025709 716235020 347767609 874939513 308823659 480709429 535506239 816960712 31132933 281435759 137467979 307394687 112157016 382851077 551984121 971926065 512510811 810747121 290776598 660023828 346323549 739250142 360572297 451917745 839510312 978721336 30766776 189849135 612552814 998929856 2627604 75338080 531079003 640427753 973737595 998592759 958856184 986672968 445182184 561136615 490417251 506813636 524343703 614167284 16005041 441346837 867512658 926574292 970139006 983558029 445617146 775813884 770999958 795849957 138512851 912022373 167208888 302871300 117681918 463356610 615956490 739170497 281841304 646510888 309488943 461682067 383366502 976842447 8752776 461156992 112204659 172494732 11374909 440023993 864278139 966814468 121936518 568149818 441037618 575200062 843838401 985752963 413642334 469189855 565948126 966999893 543079629 823593826 728300964 787487712 6824312 843514907 784371905 834455117 136293036 384175436 614203644 809007654 228212581 887714930 840126878 925725650 169921856 648296255 279835689 769565727 987307899 992572454 365899531 475339480 593357913 776606671 795223032 905246863 994756605 997398741 883961638 935295327 599527257 940274486 976036800 998589090 172403318 769980414 99264196 670442056 234985375 297565910 605812016 934379039 103936683 389851693 625817467 820924644 260762063 738282483 243161748 878726364 279317133 741516738 136736926 836155765 643527390 668013415 909567201 991241945 600857146 755760939 675487384 963345880 835411847 961518903 250686525 835034938 412354569 412468755 537798074 706563241 669057267 846826066 321830368 437696807 41430073 55272594 559403688 830318256 168094844 658249444 761934807 814190667 283895654 624683448 756826381 910499500 734618219 822228793 124133587 330765743 650460906 708186036 218916823 735656098 267164927 380187261 505418395 907045473 59561986 480902488 475635534 821956902 142688493 640571932 155616188 288636724 460639450 576594883 846779606 991638575 111255319 680883203 449554228 827803289 682372842 927836241 920256982 927380042 463093325 592213956 453819541 721546058 384939441 754358019 772545859 948603901 415898483 739410064 877575400 979406723 480309674 892469072 656139211 838043597 958475666 992467236 669333227 928391278 146273877 165969664 369906982 371008110 362390563 438231209 424606868 506152353 279866090 717319754 304081101 647933234 233453154 375779620 484895791 583280026 873365923 893323888 954914122 963498123 378219852 896422534 5950377 431269282 616297364 699243324 355428621 514748244 414338447 798615509 363242116 459440099 281472150 393332114 895364726 939999495 86904458 662049003 954761030 978733604 384369025 617470283 734857580 862410065 600931262 863988357 425513111 823470510 479068066 689120851 135941003 738595143 81408601 452677138 312872293 651852758 964586514 992410826 422397113 442779121 912416127 964594306 478079127 578096289 955630992 962492344 454223283 919934091 836877394 992129000 408794599 694092785 419712090 611080907 619699970 665420713 215962397 942645725 524173255 544463409 549506604 892274037 212043326 842886945 765155866 959299357 383964763 919914021 422679739 656314290 258524772 371716500 188179529 971505813 763916681 974634298 542009626 906909254 289150514 313671990 528999285 859185362 456159256 470037161 716343807 737961938 703554223 856497767 42120665 429221070 433647420 913593081 857698083 964940495 78372651 839193030 937518044 971395793 550007702 793743569 447037819 471421371 66555194 611803850 897389709 974650043 442510433 931921586 861006331 983881560 258349985 455900345 639538996 684641406 301189650 833538219 981758747 987338762 850874953 974666791 904937646 989420448 103551687 207263860 15960184 57402980 778057518 887294323 580541820 611556818 501631678 681041995 537350715 972471007 129383140 937063076 910065839 994346430 68535183 928545612 988815020 990267386 596353763 829600536 166332582 423645790 217679193 530380863 305671874 430846880 94234980 927450719 632756307 799892203 834950268 899017623 890008612 995022955 184835163 984406605 457053572 858337432 35190387 753794924 838404508 884291481 449160837 799562535 380488032 995424396 798264254 956511740 60008676 654157078 649742967 690339264 232138474 241219074 869685776 922406392 54895551 483667275 634856756 974005956 83134902 210664448 77382716 595660917 115305835 325150365 649606663 803249636 31556939 353350884 883750765 967841614 711017273 991189615 478734549 621260820 888307492 975208640 171637163 194268693 852030339 916161127 895529070 905839536 823703358 829174547 346455048 498919779 402829416 505183852 904152178 920134018 758862082 759615492 24046436 227183453 357925146 557726102 595219594 891237552 735423967 757303001 140349912 757018212 724229479 849698897 472108819 511952366 910261123 924941635 14064291 912090830 912638563 921851742 250129040 298104168 373398946 657506343 281637931 602075047 118014386 625558794 762037897 959382271 665909766 993516162 711870822 757764966 563844459 832560187 535204281 899984995 27392245 534614213 952152929 961406314 477896081 923268311 443226001 873033981 901693144 912935054 725827708 959280614 925853887 951528252 862288060 871966348 523191981 714278345 892567068 922319268 230499731 597019805 152011813 526865129 931825643 932400886 842095644 873144778 866321900 873994966 600781834 986480303 302915552 583911170 949235973 957638000 572543519 668238586 354995814 458447398 636266002 663581578 183292911 492406210 675474219 762578162 618316714 812575942 985350833 992815803 675973787 731470109 327082371 571696273 463240022 496040897 730448600 744698103 713725440 761230159 309328627 647805401 766016503 921882736 611198648 863182660 853813098 971363920 939477421 981141268 542940042 680536840 27433563 234732175 158216897 497996058 578747085 875924270 821431286 932939529 877643271 900935949 571924592 628920277 396764575 768827190 928586532 987261935 154769865 336084959 135962218 872013236 176995166 269518235 164782158 527296635 129819069 338034787 195990962 620503457 399198282 527750996 989132791 998293318 685537743 714268581 868116064 941841328 72009278 542629479 752652419 825514994 70437848 522472649 799100907 918035833 485319415 784200987 942250541 955360747 561255078 884324745 406552713 437784365 850463861 972879483 887569503 903599535 764229077 959155566 898347011 991734931 550325243 756153139 130939567 798657715 543956645 687916075 871462559 988060852 929954511 930111897 487739727 649275754 65419436 641115221 635340713 718392089 512270241 573005301 732575334 923002957 876345956 876719161 6026420 866826358 188334644 603380134 956874264 986226878 94292313 741667883 684742817 888247928 239004138 736087053 702192302 921753243 474419387 763064624 298411736 516224254 918833355 995031019 609129441 800872680 487039964 567645720 34095485 807590724 728275496 882141560 521717404 940561537 910747849 982220355 99443863 102706189 175371743 813306190 406483273 593458727 213994413 658337801 996636571 998006332 45255556 139492437 769638502 839006742 506403410 880789712 906675937 990643948 202426823 850601573 584121547 803677299 963204462 966482077 280580020 300095198 108696652 924084087 180415188 730831987 123712331 556073301 848100386 966962029 460190914 598468770 189866960 232209985 249082790 757879124 630761634 743790360 625521124 727387368 185879827 295656931 332949173 908219776 626733135 654147143 83641413 467639587 284275074 949893236 463313969 585496361 891551174 948435717 15505200 235376005 125629134 184716723 660755095 801611003 577430260 889881143 513354310 689578466 619659933 631795997 421890866 611627727 528743349 542604781 597909332 934257997 95576562 148030880 932965718 975206158 958003851 966023075 769329689 906656515 582422365 631044938 858569279 873824697 851450505 878908358 315764812 706069668 180512526 959309651 26043002 390268787 411896293 539766409 957452982 958955173 924440492 965713185 564871072 919680475 152432468 430224386 279434842 361859174 453471843 892558414 5443661 434358625 213341117 605453185 477723644 698518086 833689321 845435974 636134626 902283680 840705400 946156029 261443076 749818948 95529230 770168959 570928930 787278905 332169025 969059955 639100105 973590486 255083428 607362530 637297389 673430564 993242562 994829985 766050178 859602887 711251997 746151479 9214940 501162080 340698858 550308394 504505373 638898055 961248039 978249044 718192475 781475672 752586411 875476674 533547231 607949430 850149528 913246992 938972790 960047331 398613477 439343015 798064658 930518513 392777041 505823048 996013697 996859191 777931836 917330906 278868857 563023899 142234898 784405059 840388886 917457431 171849039 172376752 54951033 422277899 947353848 963159120 145918380 844895814 429920023 564373488 69864362 894858348 39311287 426787376 608791382 702976708 6569086 755594590 541332972 583150055 102908186 941459588 36157502 679357595 585189838 630089039 104599617 519135754 908600829 967554962 573397277 716585571 374829407 789036078 712350322 726090343 70241366 561267278 65239851 903888078 305147255 994061486 659302166 778092260 178792942 588248678 408372602 421799135 401838971 515480424 620088372 789842457 216193321 348380676 610264661 613752060 727652613 949590100 873721878 951346940 629635408 880710480 297234064 712331179 925939423 962964134 594803892 954812933 272816609 549334789 722813131 922702254 442467502 661268145 238500107 889158689 335196411 762953279 932351312 938274596 130600086 633095686 527521361 964726631 584904345 827780428 979908101 996684701 173221461 443161568 886703337 986658424 502812906 753277149 793828736 847146744 249939231 652210319 699264550 889377653 927429246 983421681 883441323 980576506 577239927 891162757 481854089 784384407 23852723 729306740 248218618 952504243 334794216 806642358 698661717 935622010 506780216 638582054 947270947 964921952 642240010 671197985 666318832 786743858 442581441 584487214 674580387 824895578 689561830 856919364 213326289 566512559 920166519 989623541 33781627 222345686 381017669 684161648 734479429 770629144 939674124 976458692 118208519 162695045 188426911 447441273 852567704 982072357 422831894 556104854 408575504 424266674 489806136 888101505 790323380 890272834 241359856 631642086 743802744 929962345 440528016 586099688 832886039 955259525 574958923 739423242 468811257 671442253 451032915 852975704 787900180 993411037 490425790 540040255 918111266 971574577 829162738 882349693 319218717 470088138 543949848 782985843 456921261 471606845 481693581 730709628 399145965 518860960 71150075 560705734 714488068 789516589 535682907 546567672 444609952 748718869 535430680 665419242 145892109 727080590 569034723 778552359 321710689 675231124 880245191 988393269 648651573 739272313 249168978 919865355 516419546 978357579 211189587 640084742 75784290 413252254 80610799 322611436 483105298 628489045 870795823 989497620 734197033 974758459 834056062 914821400 18196830 519017709 893658286 920024217 291310401 930608915 494889909 935441978 637202457 917152792 894591733 928820779 649681292 776230066 696003871 959369830 73091264 402992308 967597630 982160757 416649257 444590264 512266757 599367668 199717454 424315834 588176115 809184488 414856230 796346696 483109181 539598970 708157934 838784204 27365810 766508946 776938737 879283238 716832991 772189606 291497509 312533553 302012695 597063118 756609726 828493071 303897143 326625098 460418932 648535078 546399795 641398795 688382489 908077840 276463925 762947397 745876117 995999490 199592107 499455466 84922319 554735771 112111591 766561852 432066172 482145450 540085662 750649146 305840407 578847791 661035340 668092905 675295275 676484904 686416181 774884052 564141082 579695656 407581333 927646095 388669451 435636968 124954402 770444717 402516701 919039681 931975873 990103788 36188728 128741253 130429701 885779314 570938848 981470074 366351753 892507963 906772275 951329701 675419844 882900914 669633722 899891204 611402339 945443682 379049058 836831355 41545626 333579344 820002467 937065649 782922058 805713978 569488714 742801950 896864410 907995945 394775814 914933279 286510598 564843650 299019927 340679254 570766167 722856347 980410896 994519739 122457471 621648780 568137865 791484640 281839465 370512284 421569974 522863074 691520269 696905383 357401660 820375489 294182413 522316317 588252464 689265864 517841306 523551284 470869724 963736992 206666732 690568248 227746611 228350228 385892513 403751083 815472366 931818203 366811434 837499194 329526471 496279487 793136987 848895128 897554731 925609836 339369515 734644151 580931710 838286658 468562629 986814920 862245475 927924724 787213845 802542887 436853146 972312123 636210469 800576990 232279751 737802798 374036005 508934455 754421836 789569576 128660917 148295456 760044746 923495150 890900002 939105097 295440297 528537383 461367926 720426983 555773284 803108574 215273907 871792874 119783943 909532587 366098773 585696332 868709871 932177581 593167916 764443766 494895788 557550109 658092120 938361056 820781392 844511318 376072744 568330155 290714507 630055510 493967090 630226891 532103925 830165579 899623992 955301752 936971384 942627384 805900662 883791499 606419726 899337842 874698531 886051332 260862652 879860128 444097929 955251093 938967472 972551021 127835254 365569031 225671888 978670442 280840289 401965411 594362191 757593507 427739939 782228625 231322075 471601993 128691738 934881756 649211322 895522731 418555590 863870689 662018523 784107635 38550060 316888544 838033605 842984899 61607855 712772100 433123251 713139147 826666007 839348510 900114757 944112941 697603764 747955227 222061111 772646129 764862330 934513494 169765641 933483783 669514028 979223335 367692370 391837571 82792519 166635786 420995044 926323324 370096906 475963177 819761233 957084791 45936020 869979197 543634901 718374725 494879958 886628091 987182933 996699607 223804454 323637952 895374644 912994847 884901230 947094097 699962961 902535661 165395136 543716407 607366879 953328000 871343274 890455317 232304109 894963919 331643504 723306299 313706996 582233246 561563015 793259924 159519595 202619058 572939421 747895473 913827716 945893615 781879015 796975189 855921189 958976214 656867561 723543470 687705605 733019714 882523542 944381657 590842668 689063447 853880583 956809542 326524035 981323563 552701813 876025598 997842836 998501779 408974124 491014533 944281505 958061849 57701263 975671832 786803714 941165419 687795449 928955003 187858763 414981932 342507298 725878714 928172153 965049895 924317434 953535135 606576542 811427541 164702031 434241086 206169144 762727259 361422988 586236142 632289679 647183189 246702850 271004008 437488373 789549712 876949067 993541605 737628758 742581998 796211130 807420152 456138422 971306259 121717457 733154739 282420133 387149903 448756117 524660473 944913581 980337739 3893025 645906818 796686704 874683699 216083666 298496197 692354961 921076755 91321075 828968314 881811043 977516441 439328606 640621831 312115465 348817558 302891714 516445654 370314343 829442346 85298879 500754626 626446484 811425545 582902292 855130120 76368354 137555224 2134034 940231473 179638011 664085828 275961971 463524097 870418275 947747228 315026139 642550688 600434388 693691694 117187801 267179522 27543674 660067225 420451832 750013170 238506928 293271980 716750600 779014748 19705398 873256856 782463825 824785401 121047846 716380137 789913330 938218097 342768396 993966378 151900585 842881957 961168343 975127147 849173878 960126542 585752713 722701029 987774844 994517763 788311028 893257695 974064698 985077466 773741630 826098248 305943000 745974525 510796744 518434770 591106948 974503090 148332855 470281896 938299005 989679830 368126145 853436699 660078836 941978146 725513681 867427192 873016757 988953746 880563853 952536965 772331047 819859766 97773725 295273726 975450397 994287772 868982943 948947166 984269792 985264808 10377213 289552755 607716079 846833644 926682289 965216268 616710824 756476587 381797264 538646753 280115621 989922587 717510181 904929149 848738031 926995287 62271493 862843952 320019123 862094735 402242656 545339459 520291440 557163744 168225296 392916312 175784898 633189697 747980659 883883695 438436030 795484323 544836946 674713836 760981366 985993833 361231716 727833087 879915846 975393592 796060009 996732301 566633077 944871462 504135045 841021234 670249402 850592890 260585404 592319971 160042896 759261419 804400728 910974792 692814560 847006373 583509075 799375377 13261239 42619153 226783231 842303070 331478609 470805380 227301913 843655771 923388590 965550806 525440973 813600546 693974000 942014815 195695631 667406396 300569067 746147932 809581670 880041112 736793771 742277749 933792693 954526383 279232011 904269773 991905664 995437094 604040586 766120906 194085517 952608097 996728071 998388085 75747252 393319343 136089298 438834405 72570300 364479471 611261585 878664382 111452807 332630219 468321683 488305471 319317649 537365941 306617925 877871800 383718776 459175767 166258994 920611629 703456698 809476595 857313655 955088359 146302721 624016344 978920646 997537235 690905994 814989716 274791040 505271902 606175845 953177580 607497906 723768960 498935466 576722342 316286781 591477599 189903915 642705186 437547962 733722658 855737483 930643649 112160055 648316979 693375804 740716406 408324300 791022743 759663940 972538664 8760969 534976074 907905083 983411247 865584973 933282848 333408336 704812778 585260341 616469338 408703473 988966454 667626858 923155806 698727865 932828152 194063800 551047878 923987473 952673743 702381122 870089043 840420299 887656284 451306457 483047921 384600441 871115589 691670430 861247766 26213841 963836407 960019220 964074119 898538733 920742690 881665010 955391912 760086819 783735043 922267557 956983710 342619961 791494559 9993389 782447527 427018771 459383005 618800624 851782011 329625293 554712479 582867474 589721646 848576100 940505016 235038586 858231685 302313070 917442521 526534858 573188402 373153566 846638439 924825368 928213341 242613692 677980864 101000656 870086813 659054354 803257145 87709016 759426424 279081422 414820498 986442936 996162601 923829551 986215823 20326792 740706764 178069078 995003156 20324568 488214893 830279362 982676979 4186382 420537424 193470338 955264254 279285551 460052217 96710753 104592811 284345535 894601478 773790312 774898179 701822055 762571175 9299317 767968803 449841111 615781748 441569022 579715509 535648236 633312647 919085634 947103067 134506757 726349558 481156564 882271823 748788735 837528954 173355024 801380004 797708154 939290518 624195530 647617849 138078416 802208775 809854195 956707753 562739224 642436358 860246361 874869538 991192319 996047513 619560554 729974146 812572626 934425817 205618169 697950086 123835320 859528365 348414471 796646998 897202236 960275960 646035277 823578172 122466413 879457318 688892455 944348094 257743148 798620469 319983244 327282419 926395147 929804326 889323420 995038204 549047457 589469098 415339932 434258607 625362294 834258374 691498640 717938963 383781840 409867829 867711816 990710193 632086520 813042763 178249440 270248577 694086908 779717568 399025148 738767689 130988761 690765097 349042620 533489920 958948887 964761591 69956222 913998594 916585579 987296864 972959941 988759531 400321243 540458712 538349887 736466438 2439103 631403992 502584988 703113595 945613626 956011094 508802402 970132843 676070700 949647993 427415429 488656485 43678405 634408733 854988245 980524749 669798163 966710677 347250372 587377358 534235330 637451311 491477337 954129933 16403554 592066698 471146415 514100880 411835531 696423416 776228568 969118757 348836845 826447747 514292622 810360674 937265393 938838189 18995069 138847544 563056595 825313491 291581996 867202438 196267077 588856640 99977018 371853832 177320868 473686781 273235790 499412441 360069310 721708553 215690399 613985174 857776423 900424629 219229620 739790870 171085056 414034826 292532999 386348212 793784000 947849878 412565404 508610663 294188159 738698840 101079724 700347261 114972810 712633465 733018196 735211100 16658437 281336955 633731533 824751848 651446451 737968844 386011417 640682520 231731126 574149834 693883510 912681087 142774579 697641053 790577831 865912361 357870947 556946737 530063454 822060554 261132727 420156885 958449472 989673157 289259071 828989710 709132100 713876905 18108232 388605119 551637099 666997758 180428818 389970238 666090404 674309412 380207821 498359082 613800974 871231541 721977503 799707260 553017183 824663109 213507641 911045424 70509877 387434716 565853645 893251072 382532499 462353892 699448974 725471233 365685216 747114814 506597060 706592064 655089804 686260106 593165118 699710677 466862497 580038876 696825456 902518139 254601147 764570904 722090582 887369497 612954882 634492786 796447314 885575308 717476052 845123704 112293333 247785103 859879547 969176762 667198523 783128424 979216403 985381594 662947794 695280523 641860238 951230168 324730287 835195501 409194566 520273111 215938911 430528156 940248196 972838341 200018724 615878174 405157826 495341171 506671453 810148711 623590597 969235175 878725894 894946696 542855148 754815160 343087220 653722181 688931482 762220574 536109217 859945236 515697998 949331664 669334561 930817039 54573182 287062878 813556335 882535285 95075579 311251657 521990627 741372241 858654856 878575643 558122666 577028751 57749508 670008522 715700645 903132013 950967312 970122034 603364387 803820483 815122896 950161117 263899961 628415648 968838140 987822275 68824430 441452867 877612668 917013250 541641057 553313724 569234239 977489655 247761379 700954132 697908396 793614061 252248450 379780777 105091365 386602478 917469048 941100104 928724550 952985220 674638451 941747266 119794792 155189697 676794979 696781596 400152194 936168420 534763782 972183197 907973081 978525354 57064816 333034825 133661372 766676415 252312283 818742360 314105486 370393436 451269013 928405589 944153366 996075387 890279695 912720095 71811975 783495565 251736425 356954964 638023129 798985481 948854390 995559850 117730017 784387503 111457543 341712076 748953690 919490579 490517499 665139807 498041352 532133577 337115917 706031613 210357233 782546195 484051671 661870461 504119427 789935555 509320819 980634193 970615518 971667672 949218741 970054756 481555332 621835785 998613971 998973003 267808559 810930446 109145556 281379881 418963014 702035372 803794693 960530133 243223270 634487277 974166189 991407121 206355063 238807723 372258027 947372590 405605359 650496482 726845349 892007760 45870284 887428702 532964987 765913011 990296370 990781818 401722113 616289197 822792560 840592908 309181956 924097189 90427931 860389456 7233074 562765835 690125929 971867216 421340554 494834252 256225375 467033504 147503967 645076869 775890454 877164101 50374597 686595608 22928430 638305109 944088081 990304809 403048250 971152887 46806636 802397413 96912894 673350824 198320437 260490567 625423287 698615676 363380012 492493764 52900403 944705593 239519576 745413963 128299127 381005363 236140892 541768191 625106398 979019645 722071524 954999521 491850394 952923509 561995731 766079627 837306375 931774252 633945736 761916979 916941242 993757352 317483754 831568188 693549616 821970162 491804596 913761274 532517040 608694326 368674679 672681873 87583718 844681470 151157752 333885962 425110322 969416904 764319997 922862189 627260223 685662148 696177796 926533008 654751005 958107762 774853458 844527643 8432088 751818444 219280394 941940394 109079746 305166398 352786626 866579705 263153419 932765888 632117361 917973288 48853375 676071931 357510791 915886255 740704920 941915239 573954532 887057812 488807914 709103379 37498766 375918321 668097130 916569403 532748111 859176001 341318735 549554289 365797192 927783816 8514869 659963207 269994003 342711208 164429846 693266765 928213861 953462784 734036310 814822394 210502330 580225148 74134262 878293080 847041010 974103606 278533871 679833829 788787370 898765521 115811972 993172413 494828502 944866962 579794019 873879783 189661600 896611467 887767491 982745363 257418602 814381582 84968245 724559588 821291932 932540536 570345432 581677564 784783380 961201174 227557254 731762122 21655218 733314131 618213280 643239638 158100519 992140665 521196778 556037238 81720945 886739474 973041806 994079136 824707183 936880995 898291738 946624681 484521878 823421292 558897146 793347709 484723452 560400642 732316124 919853964 889144296 942390337 339730292 413024915 603360923 716390637 24095399 357655129 333560087 583660597 132981542 693363736 746471269 815209742 37402428 952261637 795556239 897638532 917789178 919252734 96529882 656327529 329226197 377827597 295018812 709698612 300435435 322429461 701956223 724669158 633048251 835900125 261058134 526806880 769484245 926403039 963790550 974421774 493818870 514011374 296272232 317577354 402491522 815414803 928166601 980053691 83798766 573228980 612467863 876944623 859597438 863121330 321215154 544405689 30466331 442678728 472012247 604300324 569162741 603598305 584111902 710900057 312291075 331191124 755599925 955719788 659797802 846553940 913856207 949781842 146725164 974704868 637423738 878360100 133323120 777973851 775493688 891370497 386132713 576852209 205727573 535157816 271860259 392827701 366584185 910095305 488128027 849584405 481373163 937398957 944427071 990377577 37984317 739421880 308000768 732163231 895917906 967879237 56772509 816315425 686188909 726754423 668676157 707191760 911933889 963737641 763509961 931968156 304874759 615792166 967684416 974901322 83864485 440042332 435165497 550645654 212543893 761052739 208551987 238993718 437036345 988807988 749001544 822339864 732551009 997213844 497388559 562419433 860121687 940758159 169822855 817922253 181827923 499815854 413304582 812148349 904371150 954663667 551947954 828997365 479435612 903774921 905386079 947287397 974508440 991590293 93550609 962389427 262122232 956054715 611945272 612059939 158609321 742531689 407564417 979504710 36296795 975529255 632802864 689662030 175512107 672250442 221778713 944489730 159203432 189130787 543963795 998125074 311235136 776244787 909841797 995700470 891118695 944656631 286594150 314298908 852488010 967401700 68076274 423218723 394554434 732969550 464502147 772280488 919966309 967431073 740831651 963740153 64671211 421057056 886036178 957752646 497951974 702866211 149081152 296869668 618213793 966073210 116254493 740734376 242636813 653653244 764434607 867171376 603463301 887315952 200093809 292559983 902442953 978190219 395548729 912643971 550070457 721071560 543429669 588033695 821028265 904344645 332294071 881206448 506207531 611397613 299557320 346037939 667600303 912431999 527067225 681422175 127556909 186460299 219955280 614205497 759041862 968354176 107847268 836307856 684953808 727112831 281091770 384379370 614887591 787016834 729736820 804070297 423797331 795163507 417847427 875792384 704627572 957048219 617975743 842514964 393978703 590508671 538090641 849457544 372351769 687851484 288611757 333291054 163552385 851192644 502995570 891554435 851681117 968164923 161429197 314789607 94093557 294614529 178167499 902146071 842042460 966528817 944836180 968259377 644536015 903064634 481228833 530905107 68947315 311063829 6999464 442043416 135502899 407958339 484538029 818333883 966662470 988780102 695398901 734509885 263208748 891778722 505530747 698488760 789536438 955285873 125338535 255027052 603059047 864664813 618623415 688351742 790238286 919934738 448043880 785839566 281384576 611670830 763250899 985106573 753426079 921109535 705213984 979158701 924517189 968819909 679041802 799686232 848911871 950488949 260129391 421150174 203844292 641904407 441723162 540709535 251161391 787539200 48288989 409050329 83894128 950289247 894353980 995227896 165595832 966404430 661514897 801693451 377867100 993522427 335002961 988097534 996976851 998518339 450712968 516978596 384945850 854726964 502384015 541036310 758652988 819731016 464294777 686384272 884912170 895519729 256195701 703524687 910017371 910728922 711129498 790121000 923545502 932506839 856802705 977651517 222945703 358906829 590874621 903666490 71290753 842972149 49332037 396534752 424182880 429255871 32675079 584434925 15128786 224342678 647654384 773310196 774558955 958292975 726734060 883815016 28846116 640130339 284592237 539787703 521310915 619923665 42193033 978387032 643745624 840586155 235008178 353289388 480956578 838720672 903461901 988572036 79100289 538234844 476778295 495378139 898263868 945622309 717308005 992567150 382961974 478604163 365527641 416593684 262036786 989511308 568132402 921511739 975595080 992915289 291482219 987555628 586359753 895443123 34346227 621893940 984462646 996059852 391177821 716301698 916875038 969051772 423342465 651409892 146994677 757898743 104546752 771808263 475897943 679205084 310062492 796760934 543309326 947726529 30679912 616006939 262818695 460234268 179717327 707820839 41082736 804622436 550384497 982373121 707464829 827851480 909532470 910167828 580448888 901269273 719619919 735990952 719149775 828163739 941501526 955265439 377254905 542381340 190055744 468828846 783826664 834176901 474713198 544735036 65608769 476140053 558218607 778832416 470501319 675863722 384454803 992990424 525730408 531498670 550822461 894603910 751762414 818520532 479476662 619594688 836113127 892272741 446237863 702843192 697244672 826555305 964638883 972487905 437013869 875056892 94665879 979997060 125798885 151727107 800155199 947167279 886116349 911748907 325663605 996408706 607780661 753395843 367472274 393236535 259718300 260335883 299995154 887402215 756426217 760155363 560453397 774318919 70837888 125198879 959170259 994910054 473732490 647633921 22491184 53619700 230528850 261474180 896117484 926824392 570952738 597920320 382865694 933056749 865938732 986226394 614526184 854574292 981119790 981698183 158494008 320960875 820330571 978796670 307333621 319884741 347266959 435377464 89802890 438722349 283764785 360710883 762027395 783283155 963237673 988671884 553865928 672121967 63339058 476373632 309779067 957923269 988105642 998999224 698371556 808506148 520475112 609857307 160782972 587498077 451126806 780274416 250863852 798566743 141444140 445734584 295079139 922904169 291083487 967809029 874406310 993816916 62954746 576245196 403297503 838538205 677908508 822951532 240516580 727792606 825707840 956850276 398015666 912135213 995715879 998189459 48900833 882348345 635567895 963291545 945662470 946749126 403296625 956702143 269825527 768399082 507804117 661715637 949878627 974140702 731340756 920466109 308044292 764930566 938345979 981695834 126062656 872504740 301731785 526566850 257207115 469725147 876629342 970913527 423912207 523789854 809768652 824019586 648361435 800490358 215188940 259428856 575869765 742864274 133646704 674572602 458358401 547466144 935837431 988732577 502570914 504219405 589700466 625367256 317042524 363959269 157427602 658456108 938999122 975485767 249874187 497476107 126418073 922733381 254260030 831389989 161526710 242593200 351361367 536715439 996027655 998876784 197232359 622052413 941197983 954422280 7102366 882150081 773507960 811092221 280385758 324146384 548080396 695699783 919824277 990205006 304656438 621197339 467934805 591736066 530610404 827754630 978846193 996927761 109601684 333070627 859569111 898433107 504188145 617909433 167255666 686434601 607733876 918816369 670956277 676754380 658579212 975090106 621073509 957783314 809119829 858711714 958623304 995786859 728039901 784717393 982186893 989505948 975281730 997428749 660578874 805389813 200678467 672233683 891240424 949993056 500921980 517511326 656363890 897692158 994857632 995257424 926314999 941331434 247889337 564021007 386733027 776293558 716487975 784681652 379316225 925232840 363051547 448591106 65091472 666485856 957987962 998615674 517740392 734820590 620012898 769553938 744744437 903340246 3831964 772158053 500494523 661909068 573506969 937467812 411571043 716727653 405881985 509903106 1737436 844259953 474440424 816345077 755117591 780477465 243106873 937182959 570548427 849399542 605685228 632198291 673313276 887878733 510938935 682535616 782719261 850651144 734178730 782102172 959873145 974536889 155407534 375141841 483859489 961207714 650245619 916733909 946403528 980961019 768563437 949494615 250601035 418546067 171873129 899725813 454124994 602208423 209702224 244611589 300354706 630252313 271194570 877507803 575244495 595811788 360319146 565661392 208343900 517307067 626710083 846486019 341020611 942724717 672183487 745084402 621275608 934518936 963753547 965807781 93107440 917147156 979085126 984647206 279033010 923217441 381741527 396079826 652290944 765625912 24270631 168473122 4771339 526751906 76363228 238877549 616349347 642554155 349376097 492091881 286538591 314493307 330638760 908087355 74311845 309018712 397663647 666418876 253156993 816632021 125695888 899259330 886353673 936388088 117264387 871229966 606324034 911457023 48642636 748602367 804140249 959488085 669875009 781570791 367969327 509236918 501565394 565349760 785909436 947336151 661722398 893322258 772304195 902124813 427320790 578683142 677824250 946118733 638916000 890701882 220668403 359355429 278040559 947850062 654580279 828453060 45746032 854939059 517435082 756361374 779608639 808670422 365433278 509439562 94580883 537946322 570534625 621487746 368666455 401631480 300958236 741712184 911055105 995594214 53624656 917556770 355497866 510732789 460599065 635212979 574278143 794323311 634896679 717182732 734991729 789161734 892542294 905643345 715031731 920082820 410613264 814350953 397309886 446139231 403237281 994071561 621502746 675690760 625778059 859961609 683083737 972791379 232589066 979559636 852688767 875082290 366095102 809717653 332372134 707875165 177056641 740789249 99315603 997331187 340609859 610400673 31592628 242346184 55877033 843914838 196139937 651525706 701328903 802106277 730847682 828555307 813447414 959538196 13422046 363159438 153250016 381379223 375449937 738553138 705426655 918813652 388803355 398529894 919061218 985183254 375744971 903537078 220581103 605655499 135424356 186773523 44824911 478514306 750450545 948529378 663948455 965360086 144956089 506515922 258139402 664604489 626826399 796312484 163211691 377816073 596641622 959034058 579999149 663654538 604615317 645179335 222880145 596335624 161576133 168040214 384173010 461283909 453936564 798534336 604839946 722569303 459475116 513464919 468097791 605005315 29895559 140258369 840009369 942025883 647267261 786358695 956052137 970920633 603874339 669923273 505036401 814072149 208323692 733829121 445109353 873756724 404470012 450964127 454059577 884594592 359709247 773513796 672183690 925137497 352262148 943632973 211384209 656266727 818093990 967826696 821541457 874945789 631177914 685309565 722907540 988949183 656648321 945711328 126847660 323485390 998380815 998547821 80079991 765994846 748376691 862046297 188802367 795516351 643401001 976437861 883422280 972611727 119103723 923060830 435306277 732072495 38126667 394557389 702118081 896925409 537532106 564700488 53532655 922236183 729875237 875198813 673778831 960379704 268919781 821070207 664090785 854680304 372214735 623453352 994790705 997480558 369706907 952414007 90017775 536354615 364555020 615426992 261129346 917342275 536243313 653234652 551169803 706242021 988942722 990153737 120667260 885486778 585440213 770766745 135747646 715599153 489070282 813173420 919075134 982408765 827070672 830144891 760608978 891269121 584249536 750456261 812250748 966278307 141587028 665381960 656191168 835838897 784676053 941443571 518298650 688115307 839487972 999078768 479582739 702471444 303635051 337023096 855526625 917358915 974588108 978007102 665554686 864305982 594101302 742912727 708830381 981926293 863458339 867248164 419907227 709410549 287920542 662885070 459804865 779590510 106448532 903415170 299690937 390215086 249736364 400561226 646625758 948969694 476516989 986415325 248033413 586304647 83506035 518005861 837817252 860981258 582700132 979289187 205711123 928059784 712473992 747007642 503447901 545837442 414126827 839115286 883170126 983471099 641048126 853711832 231559758 668410184 715654318 729013097 245619453 732401715 711979304 870103434 615517131 704129679 879275025 903783832 209073382 851373812 381287443 944060840 767721949 853994797 972687259 978628588 322761988 680486906 157915062 185075478 836199768 861336215 670354317 707833863 300266967 337922881 977565222 994068434 86131264 204722817 665762069 796321784 324855219 823967370 449931506 948931631 499031273 729564737 221965449 355410404 218523271 647197988 279525255 693467753 877552895 970457589 894224768 926998055 616487209 798790683 988489313 993401456 89075953 174955163 496486501 927902338 8728099 295388183 397152536 710706441 465755765 929767599 604455188 616042280 397687534 838370204 386314838 915452709 723232963 858591281 526286954 925173918 604547234 641952056 898939415 964209472 733051908 970247964 316065493 768840619 124510086 988448749 293868533 848414011 230962843 630779875 408976974 414418945 147287621 157232690 34548528 507285149 481397596 896208990 754217770 772415826 927926229 938437039 370778931 836543280 629074634 924775937 521451249 635606095 711729645 787118048 421487728 696104184 99045048 399920671 6207578 933836438 114813983 167548873 506078676 803363517 261440989 970688069 332958720 528087882 584075169 601095731 279284923 414898953 947012908 950511172 838402241 961085680 769843268 784690295 455608380 836123169 38593561 189374955 882865729 915033774 295213515 773847393 334348678 653576592 15371163 282144825 705833603 837150474 7535702 531693018 989315086 991258507 560849532 931611113 325990520 385827725 685865702 906367347 476111555 497271979 743950422 757136164 675966149 964703397 159641576 758907727 652853066 827331060 398178198 792230436 145825459 819087394 780661899 809220106 778360816 936312819 642059779 839835702 682462606 891761188 699230819 763371712 405562684 752096827 558668213 885082074 321067235 544739588 758555694 819816742 453264941 749950863 93145554 255170333 506333069 750948555 178810290 590752234 824481859 853273597 465327780 526035375 376105429 867087415 646206618 670189325 99566919 342013954 362858126 721657274 694520930 974634377 671280471 747670099 634611878 992516528 932533735 995855872 744028507 835341313 438986886 850160735 430184143 615971208 222334030 419912317 459586996 899859677 924279777 955037467 884774086 987281819 312578375 873461263 418481902 863475894 444337119 852970678 850878920 983438265 456546523 672767851 135094577 938307851 668145582 860635969 935774837 946919921 454485772 755037315 444006823 978028532 68069257 498305113 803990788 979994452 273571788 303726276 710565256 990770596 19211772 513769199 898207468 991482985 808503923 949233553 355178152 904401512 152099806 285696149 971410307 988093493 183964918 319378822 58744881 736302121 362180169 781287855 112778253 207442606 507770560 864878680 261759549 471372575 193790605 355782288 954222077 982615360 763931169 777728509 502459767 518445514 421719510 909245844 822862100 982507458 653032428 916116077 795764083 878474295 399578539 469148911 612461172 945405227 429920133 719132713 800333689 819299624 766583205 880248598 404028494 683237700 768416309 822423112 488817321 898417693 480100099 856781435 338786505 818187052 298530351 910476077 883180140 885288925 620015752 692220694 716275993 988278836 185270503 783013575 833947766 943143724 920083534 974007938 676216345 959433347 140623622 490131679 952393925 954000243 337810993 586993079 699344701 880597943 901784165 924630176 183957255 643100679 493638342 873030227 969255139 988722970 912247948 967255091 425728977 657574108 292967152 506186701 617562569 661124759 177392225 585389106 176906499 932907908 459207508 722179421 735308619 914969044 430338369 663032530 18885775 636644657 588770250 859490516 280058174 624301900 997475656 999259656 695021559 879534927 442786732 645791350 290733916 542239912 144936774 246219246 700658517 782343620 286787925 698917070 838069116 946008339 508287291 714295579 415132799 726475092 56104753 655380730 830608900 943528203 694683822 791361478 118130551 215228637 618146416 793963100 705807641 863432800 778141035 900790985 555882771 615944356 929387582 937211636 32169631 38191919 107990053 770849396 996060026 996106540 190917843 829767868 607241358 728470592 464513826 859480211 423836913 425493402 569394089 783049961 490122972 940166103 81737906 877104448 911809619 945615754 797772418 954114979 49832183 608068438 961397795 977853345 954686647 979586557 321700413 945879834 607568964 917384626 956843827 975384534 618293413 979407120 450146177 971559065 116622173 520372839 191617159 433565541 781466574 782364694 923562257 934767064 862571631 910582110 506163626 532071773 986843869 996703505 339128558 515748308 928433773 986499528 7470442 60569329 383418194 896905024 81423324 868951132 518830036 875091431 645788954 846348399 884045270 995467839 242070236 431478850 163404741 399167508 888489581 998753033 911686708 913744722 199722509 384741113 310484702 700258531 811211284 888350855 414747911 801711486 735811366 931792334 88595660 507672135 423864636 960791091 141169562 686130896 280302327 402467605 387366312 583161771 550588513 668744190 725344575 761474987 756513114 775341759 770672655 800501554 913920155 971901462 490806743 559831813 374284036 770211856 846742326 974006113 278940013 940372984 829395775 928118178 606234068 663857574 217163940 975844874 190391819 247623262 956342497 989305218 432813055 856430204 217101285 507318517 426113207 895684008 689127204 925320833 310929975 531840420 232715683 289236657 453806636 781186896 259337177 839561612 307013155 782056497 689708600 722832493 150911386 533013124 77771565 278989931 607127639 828994754 592697708 761439293 501504899 796055728 706246232 867148983 906445232 927320535 697934525 938604842 14241393 315420239 388736475 917037223 34503170 971313221 473425291 550714081 531338004 548797077 686694574 914481039 602177683 924803279 531432944 703825562 106580390 964772688 726306516 924064837 6429568 901360234 48947080 686003465 432365927 652294518 543530836 587146299 153812492 698116106 233445410 453634914 317907297 412355895 198963450 645630267 519548669 838523848 742107270 983562225 218740651 753912531 317536367 706844235 680404813 691670287 123179227 965281614 380077820 695161488 263522455 522690655 133388937 741333757 628313989 753074529 262188070 343877028 449177700 510966276 252761151 337939501 650183580 865092379 234090550 237607682 158721037 555289604 817236264 910331625 880025724 977524461 853156667 913490369 622247171 785418815 700569155 779253780 864395651 895292165 951320901 969565171 524976763 721207211 722686453 739935737 255745355 367668223 790649851 806596882 478286653 643150303 683537555 992556412 503483421 746257394 569244273 930399949 283348016 857560872 963466310 987748006 40298009 275132953 391852809 396205987 155317227 826854755 818084103 959869253 937087716 960180439 98095568 242077386 469122724 477223890 366775269 416193370 385115264 532831804 77195197 446041601 349558080 558800237 683739829 765676580 923354331 937311231 976185889 982016221 904009947 983662516 22889281 501482428 709729830 777098109 484365115 542849038 860308038 942948815 641576625 710798909 451849478 813227598 905594001 956857387 791036213 792587499 787176186 808081437 262698417 449991875 844042282 863094627 686781940 706077549 222515057 422179326 420931214 964670516 582914346 673954765 131279641 746109374 240820651 906334585 955029573 999272466 344177094 809802797 912431823 939464990 332534858 605820758 621401429 933913443 519404601 806018805 133271179 630545039 226433324 654605802 864340768 942894948 867346321 945110852 417082816 817834992 304154763 947869390 17728184 983916988 579650209 807449060 775614185 860810468 313786443 720033517 27192539 288968468 333358456 618983621 125359358 709156268 700872580 866541715 282590367 950129612 433225262 466549474 68480767 954355186 159075508 529794374 728203879 831615086 771083492 834985225 570212222 911878760 376702898 925914823 680558630 819986004 687968170 775035873 238355441 496979124 399121974 570274625 672174249 814323402 19616977 38915060 624249329 978416567 5449875 601573729 52788522 594077119 481969994 774458165 405624529 837451847 385172868 703890448 148817035 315583128 220510863 781604594 525471127 821089757 510022152 821719766 711429303 957029042 156868083 849190405 214943735 791795898 820011455 977965340 758623895 890694020 868281366 964776010 819451490 926532654 293450286 738864070 526173847 544956001 835746023 896960172 263894191 918482114 143372011 405910139 986612038 996241278 269707512 898091359 866908189 925438992 658875580 990280944 632600733 884465537 57423385 776921156 311246006 405281981 855244086 995127982 22856089 731719230 303070018 626656359 458195465 635550627 355500274 749489464 334719477 614974014 455542369 737397802 930687467 976680451 15262860 498364926 81256592 299457313 454139917 939752855 513984567 641497036 703245099 964906553 960245238 975791020 294190890 818359385 728932103 918570427 732666811 974881053 784723584 872902671 575161260 612702338 346297228 677650557 340143848 541686396 522484599 677258213 666488635 963295126 982620483 997911767 182220426 819437001 927896926 955009932 490921769 612917938 625940364 877402509 226234842 293892521 64987981 75188707 909861745 952467007 390237130 602325879 6838925 719814928 379216728 968425910 67943557 717363750 253700745 897787532 994728390 997393201 636926983 689110238 983232365 996128341 34697992 580134897 730227784 903745897 606042034 960086889 964410181 968269269 407713030 624117723 869216434 872313354 852884770 903772515 495689722 550351278 147055115 155161657 367088680 552590440 247019939 552261599 253503251 323009305 581253875 879608531 332813433 547187495 268299433 757083210 785061503 906773900 222728205 984338094 500709300 866804154 519316556 941934259 839942011 895638985 722477099 807180677 465916391 510165259 912631892 937004435 241585526 806741760 343712447 488391953 302797033 779369814 987521631 994092447 854368504 863774341 329726717 619919891 162295857 569071438 134727038 766397349 489235842 825606127 553384301 601629742 370676738 441441659 643869508 669390011 71015213 415810732 632507649 662815386 794382207 991818602 644034418 844940120 634913560 998230302 355826228 556831738 65296486 858063394 451801828 575804180 885907269 966931095 370967922 975333539 385743378 980522410 147237573 151882132 448188588 578354471 744319559 931387229 224988235 895796225 73905845 257915097 347844841 506885093 560505025 631452534 240900802 708071617 688580865 931009988 286771545 884487403 805449142 906855778 62933354 983229014 502487404 683645734 648114041 943839294 898124499 946431575 649301873 960669742 340897922 566378325 550924680 849092165 27926572 479755355 111803476 997898736 518202423 847552811 602868084 967359472 862014235 875572682 529796380 667306682 831611027 925124309 267682665 543829439 339352456 771541918 539769039 867783374 787669224 832752758 107848713 245010288 345297551 380112628 164350310 455054349 362381303 931627448 742923219 895453121 121192096 495461621 437085987 625976659 8247552 774761072 995379495 997688929 899146403 940418291 207276271 982439406 552056291 981611285 182015297 772526407 559274389 573936549 645271128 801342271 15280434 728382117 446201488 871927639 376051079 434159115 812245828 826204456 968402595 988289870 74773440 784793907 263601613 389349078 559876499 725090734 480924776 836070485 359269344 637041932 697722569 967502699 230267955 573286663 98152558 834423031 51820294 220721616 551593663 837425252 649005576 653374797 909749256 932110290 714365046 954629012 783220671 854607743 378642527 972905587 650020872 949667530 754086772 941762067 415067653 962642199 925532492 996529288 725901335 866192689 838203888 950947133 390268148 947937704 97842088 820024577 857660958 942101036 700443394 742620066 718803494 812423346 792737168 899973055 246494547 720636445 557106149 744390309 777678698 940275973 685405956 776069205 844337695 909298652 464413802 859742517 529309006 762806300 253591903 573239260 855100603 943177418 834130791 869764176 634094698 654372590 930304354 935446714 122327920 708144828 611337415 759881418 867222025 927437431 201383412 462772590 344775498 750737152 282060019 482889716 82762393 125589474 333126524 743473756 326137119 789132832 207195589 854182418 347026181 456304656 682976093 924694608 94510305 636947149 745707539 791884822 209290233 796876992 119532686 864582054 791073701 930493183 172714372 433874075 836132952 953586221 323041493 691239273 864340102 933786161 52589801 256655074 639334330 789041148 934348636 981766361 457335898 573529556 25443669 313358400 33114191 561761702 722656894 733419692 608946315 969249634 58565514 584656826 326683974 378859887 241448971 551378362 936976548 997615306 523143296 566692870 549256432 585220585 568715267 628343341 374940904 957515939 738962548 931173751 822537215 960656106 297908493 610264552 682513276 926349989 749122727 894057129 558898452 777480774 276945415 950219255 864829535 918623668 5111927 500011027 580157280 665914668 270717031 713925724 669884117 717042287 529662408 561076289 167360146 206762642 738399559 886815134 697109231 983404624 453422187 564805521 949766879 967269676 371217954 568612303 81531895 100522051 916541692 976676549 342578337 905618228 315546517 980657442 404058042 962777301 602921726 951473216 745675 402019764 151756365 998741953 366939039 986872463 786878448 976339516 797470568 906085154 397492865 909858678 689769292 778426349 245236265 431120913 605386892 813058493 139690210 503988162 950461288 988944107 124832094 898589362 940503273 943016146 548063253 885947887 234537631 882328664 744476515 825840343 324285843 491118431 780628235 782050742 296474775 775715747 317569231 353615980 665390016 770488910 935527443 983280991 369746340 542379745 504150003 721455098 313355481 659323071 363380358 919547776 314858346 550230301 898024394 998910159 207661191 265268239 916584093 933500994 840905994 878903285 911699883 930321061 734769231 813627865 128325272 367021472 329764955 565813606 58204908 945757504 811486953 931985636 604789099 902801421 421698234 476868305 876336863 938956591 261069596 552991598 976057431 993524357 675579407 940826288 234458666 923189382 173759843 549579449 141049413 821869956 269382299 455103783 982880700 983008374 742060854 939940285 511393498 838078326 387616594 794343829 15850781 736087188 780433508 853307563 417911636 978621350 662513079 714944019 562779885 747129875 459678624 781281766 138719994 615137347 522637037 545741000 929389984 952376231 455686271 486655801 367095056 967077350 855471990 992321142 946311634 974842046 285570986 361030140 707039740 898239576 744988653 811366220 334736864 669104713 957191413 980832561 913922229 944553487 985013690 993359627 32002506 975291727 142082242 987971559 107365030 693840007 815274916 973429579 491391573 520572149 577226676 824937638 600047154 714719146 690801830 787603478 256232235 389116307 928216658 935986370 215298734 217162060 865054523 931413377 146255910 946521359 615823029 751072016 600902127 735893610 153430087 724632575 299025205 550736781 363905546 854964421 896157803 922976392 207696578 717183509 261158621 342686285 86646766 439027729 504522728 808735308 172619322 639149498 834166755 952953543 524100184 738191366 164391686 822551615 372998454 624253341 974022370 985516274 44678733 459966267 392454097 787014457 140589371 540998850 919219384 984203681 124319343 220567822 434992926 878877439 528613091 921544601 758520828 954162210 546532256 966675874 390217847 898438738 527448574 571079344 47642205 227502793 569368550 691969564 91087013 178457895 67348599 812535148 41775351 233905211 855112310 901414508 66536641 745110834 325421052 861335836 339038542 421221858 46600413 667880477 110819895 178187040 783731853 901288982 460375524 885706699 550807770 936211914 909367458 968650121 431512378 495176084 714669871 718954424 915389508 971352612 680392246 867763440 349873190 425772878 609802537 858052345 206045871 559443359 324463231 751306016 537244046 574309505 571175602 901086168 520857633 892406098 24943735 684899400 299597335 668896242 718158008 845801405 220653304 928890499 494092167 879662197 955436054 966037702 923366118 957740454 806285160 933314073 189044015 243481131 105279620 579173122 867932079 880154011 699811984 925676964 581862624 705328154 502375934 537810959 720155673 978216728 991405318 993489628 344057983 682042770 917944074 942491226 16589894 274030427 4054831 980396449 274811500 818804814 603711900 668326913 401413053 523568402 807596788 902743600 903188697 949480665 683098030 783088179 459981779 663621984 313448649 334702147 606392709 731575003 982005556 985302274 957514273 985198077 747337283 853262469 121213818 871009890 130732201 818130070 354594691 889042800 180583458 194165940 135778852 431900698 221409043 874477431 417670840 479131850 108744079 555571111 216718311 953985830 662113186 950387850 123067396 962795857 18875902 367238296 838680694 840452789 218764663 521993481 324687936 604463867 131012412 260210852 600308480 725444299 666468441 751711335 922926036 987153245 18072612 731073862 118193236 534624841 880845451 992778133 471996443 983170658 128891051 236362631 906555353 969480012 173518867 688611713 199005122 959699470 798853435 811938997 38695493 47709199 595983733 993368898 184186720 294336293 109922326 392672495 498484446 670256715 817652404 932085133 769628170 788996487 257267664 889161918 700904460 922284254 607442936 803568137 725437969 824954206 823215750 851721508 600684278 880823657 811454438 979004798 269478119 396194594 206368607 657650808 307813427 954594819 988390916 994572653 626354478 776359682 740811313 955755728 666162536 724799385 684456516 830716643 256783735 961539697 418003625 420028006 767071773 914522007 258270935 889559084 528885004 605369537 628562855 715115401 361270408 529945106 151058314 964700141 732881688 756379189 535409123 923478072 742451157 893867022 874721778 963390790 756842918 976070018 795653913 944742371 67919331 757891993 55143615 648000193 437020406 819006399 991078562 997077992 272067182 475869662 320312661 723611688 94842392 898166077 48690093 875389686 217970089 660612934 463672840 883327158 414106793 718670657 529794778 764949796 409561117 715564944 718455459 757513012 937666705 956900056 428016012 628637927 964865367 988101094 831694327 943851686 840579142 861840367 123331268 195126750 315790466 757217566 894426875 965203743 20919882 111343706 929482873 981792680 413074209 882352223 366065439 387953692 838812171 879579538 468383464 807997938 11441019 81705988 565801964 779525887 845056311 874374544 557618615 856682650 838250855 876814547 43229021 912012393 225145983 642216102 213351417 789461518 84593432 659828511 801480346 816425883 578845991 945294670 322153277 937244094 681228484 945223906 425452901 934860870 84413445 484696454 845680531 953458668 458082026 693024790 213858376 854259196 728033 307213117 753621828 930897123 33590634 145205923 59707076 831395298 20319880 869179639 820198043 926372097 456895608 463309666 690105335 905677357 246235295 413132380 222836645 391116025 687331523 946021292 622638240 623768950 379495014 432699197 274835850 753331582 482089448 589366905 334326495 997315916 615108784 683609052 756967593 856703802 77848615 389959442 928559484 979826811 520177309 830706008 741249421 942539405 584686609 869763132 328084526 890159326 193010080 354723226 527006870 760767817 840521168 967285812 307033469 445266754 199280527 651076194 42875525 634559721 24285262 449971630 98073130 402686694 224888480 411495752 950828125 953096127 36244307 482966581 880250491 919448722 225698608 540505148 550849245 807813127 937256297 987135802 68848683 125840665 789343314 811201381 882392012 932145659 478859453 586186353 900994534 959051474 493594267 669875018 75147007 601507434 299548206 552451950 994553049 999237472 637245295 957911074 567079610 972170875 752064892 915622758 800089299 827529917 876221095 927042979 201648211 724122447 766148777 841567569 52998039 826490030 252609545 320858294 422252703 678179985 822552514 929394766 532777432 783803348 777739150 978938048 248445177 881423709 177016123 248793862 213923511 642164398 69484172 585319557 999084250 999360312 751292809 983844721 761867948 803618264 984437055 998914789 714026473 993316794 907139709 936574588 486910401 635355302 593132789 713864169 832391236 957328960 560177888 840376841 937450371 962605456 475356001 787785933 828180798 993084439 784844826 892545023 820440032 835941145 741140920 830201298 692741766 967989986 464698007 923141954 270710855 628106962 601920897 770268162 927729465 987170764 902177705 969920450 753113764 836854900 293812808 376344203 393556195 413645853 91299813 922505037 513452146 950421843 162844017 917464268 531708380 539282908 98904797 448217172 346311164 541809905 46165120 490722939 26014895 64522692 944864105 990476025 132778221 314780569 158377870 294747941 691220903 722625411 748938937 759579274 693316411 781570577 671891475 994145281 749091675 840739764 926651662 969325616 280965352 282018583 120043574 176213159 394610698 896443385 985119780 992891053 712402299 835784255 103492033 688403429 701324718 937179148 172305971 603931993 435363768 694319416 577925974 749652890 902594633 922992727 585893219 899195640 554485361 665276131 238229411 497930739 511729496 896853904 383447359 785419661 895181687 973021729 884476115 954747992 203346963 847454917 853919236 993924835 393757987 879832440 658307856 828118390 284652138 652779773 204731001 660087940 246924447 810729572 520485848 745833941 40988260 656037770 808290098 984668730 781618431 909713211 908848608 945065149 560055492 972601610 10784150 986389982 855349795 918195270 517707806 920886632 326112998 694879420 977492449 991341513 269691274 464784083 381431622 638900278 697403879 768291608 341789941 885771958 745092807 935009321 213041676 733299023 849249157 879452662 120644927 884225129 440486556 802782609 183211971 184833024 871351952 912754677 305425975 360883992 66618387 392672397 592113152 958551711 874240084 970913739 294790224 321920463 47628095 61149477 644569882 699480006 690575284 925139174 88230760 659898738 681919926 823423235 620224529 789247144 315680861 847934467 850510691 936203377 753057323 848289871 526991045 679270630 619088217 913151329 138022560 816115045 154411199 563332315 786532378 803728027 51764621 499219372 352107120 730538608 998873580 999383864 242765472 662674073 261774553 340994717 272434573 516046691 41421193 748727892 951403493 956836022 298003641 621153626 956583352 983649939 285796088 947917729 20406469 198154240 98306832 549457621 900246506 922828585 329025683 396055548 782143880 862856947 648433755 938421251 21740723 407675013 518544959 641143665 674075887 959434453 200253719 799995213 958543332 966170422 100497667 866199033 292642949 916612363 599862600 833106875 96582421 375704770 724725241 799527780 778054244 863365705 438543952 836726668 867596636 916555299 351838621 638110398 97949228 817242087 23412021 239272369 133643459 773937822 499707523 544247154 113199685 289362188 542841348 716089383 148022893 871427252 737647821 954490410 482913922 901931794 298347774 947999139 910378322 968945629 438626489 843251490 388439056 559320919 342740634 729725611 775733321 942067733 852912987 968292520 836106304 900289325 794094689 954336958 825869777 950375410 614864857 956372905 220275815 787574853 166814668 211886980 70948086 104039087 537365198 903238851 654136688 688673672 194976223 357234587 501962495 702782586 631508810 830876491 513980780 756221499 327347456 787477923 886763892 935120497 822198946 919809887 207421102 510087325 12911447 374941473 903282771 963960580 881499839 963298847 618970735 749149995 467631063 539186727 160074873 762726331 329502168 871885823 193859922 747326517 587839976 861108263 770948888 885522661 968352396 974488963 634051496 979483742 768423611 918183767 778340704 825372512 153084180 717042230 269246039 654025301 708501106 876949438 337739172 671583202 358846403 450540221 848497620 991369047 320623753 787719621 289879823 636858742 813676212 946775751 129726321 565351295 59369874 159320178 141183601 869234068 7821492 469436069 617463939 796054791 507385972 934106692 525740456 989013191 200388811 502372506 417377577 776199763 956932505 996628653 117144651 546682473 647049026 654606363 86174143 138800295 819694729 842556632 379983943 510626895 587738088 975815346 300029234 963303963 826670616 906134720 950638535 989491102 196519258 853167512 851112003 963999077 842530090 852515336 514518838 764375402 848766008 859863004 880179583 941621994 168290218 417500922 891142684 893265543 354421902 931615011 925863559 957406483 643172612 897291103 463761602 481328651 50764755 721929840 83900597 473007615 402766400 717705526 113187350 753913113 771215357 794712145 92692378 163692042 6493445 200502166 777977167 943347929 418278438 707367372 391205229 971882377 317807586 614370854 889294063 972329917 780266348 800186165 152735051 638281580 596308375 763878080 149691394 311007595 872459273 988361916 981045378 991366016 43961794 661703362 941126183 943828093 328895691 556004801 330126610 908884723 75187594 269609391 813413621 969308111 355888128 733992115 947233321 952580865 596147042 662729096 686821048 988923808 379636083 444533241 715988692 837997407 860092376 967603119 844335872 975469775 559430654 973462830 260666928 850996504 614624514 964873600 535224782 677181229 243477998 491230511 257202779 934340370 294047103 584073877 873921232 978350141 343106132 389766141 557543990 848741726 507016106 962313687 683507261 950404638 330645226 531667847 239598343 784771019 255244265 691571149 351937927 512222588 498086849 856428996 865159554 954351292 213040472 782759972 19090176 751559108 403755844 586107127 673438652 980616250 117981410 306960398 273065285 353387768 777763537 806338889 94849418 364916804 876504334 993920454 714384347 795318672 643775838 675771170 501022054 880118442 655885114 961409147 856824073 926822939 756265019 971005318 279726225 357069220 189770170 872206442 421057764 802504581 375451456 858681919 33015314 534991124 321505222 353332256 869058149 949027935 911255822 959310901 107431952 352325840 595497203 735304406 254421735 271289644 943054291 944621435 81543052 312458381 995170809 999361106 200335877 513076060 349680964 756821053 870621646 937602024 464062580 933977311 924660223 942931464 417054532 434961772 430648068 890865020 526178203 888364696 548495661 784268225 19296561 459820473 685884839 895981298 347402719 876004340 882988866 963758078 730219458 805354727 357450509 914690194 523723795 677881985 782252804 886658382 941812303 998885531 94233541 251949084 334289219 923620983 681250748 873146591 418749325 518614709 839534227 936229772 96973422 402367111 337489385 508558676 167042161 363054448 770185461 874677946 123739203 650828761 3343738 649813455 841787926 845522575 471738538 879843860 487178062 863568240 644707120 911361315 531739818 864957303 693886859 897452307 655384159 793596072 69850032 756809034 807111562 876657959 533311050 786708262 337950906 818189350 452671894 814957341 302737485 612769552 868591157 986888459 535805677 634623363 571884500 750552093 570202791 883511673 99968199 477331348 489479321 646944101 19030377 217863523 758966684 966502579 260611115 710163848 559160123 954881102 982457958 988665708 721219102 724300848 199642928 845320422 464358892 992723165 890935981 934149710 391219862 664635877 569906556 825041687 243848517 877727653 622065834 804899353 158389006 182992349 355321849 424668663 511414882 629500974 299255391 353095327 761414393 854513366 553998251 723186578 240490986 419619402 964248941 991234661 293563430 656068272 51790555 376391936 377546378 677330019 897835905 992463049 85781040 781007921 859718370 908399933 63022903 565729528 477386313 725580114 93896093 357204213 548039439 789160362 162113163 831621601 25190862 35627767 423093054 678792428 724965382 904862176 725198383 986301072 101224990 788082206 235528246 707801074 363625735 519107877 649852130 659038579 21137438 734757957 992903036 994921039 631315450 633616456 732309082 912271668 233463017 633092250 150832660 369952270 267580134 931960496 449928995 457619756 965404067 978411908 183910090 740369951 622646211 726535504 53605199 931865465 960246374 978377759 539859680 707991260 953615054 964971167 769774220 854046694 31420682 136950167 915758676 933146922 508997519 571808650 930051737 970580092 629331919 654684439 366649534 881430704 947028539 997842298 626143062 721064888 713872806 908989171 875323803 901175008 757302119 841122732 441736627 892876603 259443255 736063718 697492045 776073635 866980765 961504921 949480029 978334795 260200567 303067212 577125165 965642974 880860345 906265925 8363506 274912145 529318152 963089347 58525357 276424371 33535425 164220548 42163962 563432231 938443657 954589988 896777953 907108593 605734836 947294240 50874411 234594674 226892388 792130138 601387627 723468082 237096544 898283141 648999139 655866222 254309079 911810092 839396884 852441811 915690172 956024003 939115643 971182069 628096214 888447428 89866773 699567609 441413375 823011960 579471167 606787669 97446786 591726430 805333680 974640234 238727463 807893772 930320136 959607134 634975994 942426919 762253176 961836139 999345290 999384435 822158573 859770979 786364160 990689145 69109760 426966311 899962180 984570000 907642725 941010971 679552767 788029123 438079782 745605316 220602102 259293137 472170128 560987230 306269806 574427756 738574454 790933600 613185309 713023672 370088097 804672605 624188735 929977043 462324822 888267795 216783975 451783457 524696173 716119959 652013841 943913328 465209085 894798418 169173907 237957026 996027486 997633462 67653402 723584195 145319930 516994877 377786549 842175006 994431945 996528735 956424967 973300335 20688108 25632945 118444933 758541182 529968027 663490530 135989762 872902564 761238349 995184694 693438341 742572073 674185374 843942354 664122255 721799289 513373599 663014749 954275448 997821629 223892439 388318876 858066681 878326831 885613693 925840534 113099216 861675409 864420146 905268557 457438300 937154687 375381830 589125738 535026491 959365741 878150520 960175540 149947128 921007751 415121893 965645701 234009916 685833392 692621982 837076714 683892475 712939399 633131249 778047259 365780298 907424765 811463738 856364818 908128465 919333775 677812527 792900175 990365473 994675630 214694307 777545113 54133654 65014029 360607572 841942010 364481493 886245296 954196899 970481502 798991541 983586561 716403102 918170670 42003685 816906675 285983370 354953877 395608840 966726091 435409222 669523887 867693243 893584830 810263546 943614716 76333633 885701151 533757193 578451050 132390908 748836624 788215937 941141246 860958756 882197815 494290314 612976744 181598006 463459424 272702114 438027340 352042461 763788710 637628701 916234559 323277634 849327356 410423352 754958665 382281573 753237349 231579104 318594829 182171003 635564733 422802920 919209809 287573182 349843356 80041578 593533857 955631468 996245566 186801653 792757054 549178461 648244498 479792475 594645816 312025847 554202670 103608110 971976825 310305485 615202819 984494874 993521404 254889532 978918656 641837162 694008597 592145910 675755420 644317515 703286486 826759799 847678453 622996566 676451780 710527593 883657673 70908304 435369113 123453386 848329298 509854319 532921439 582233333 838701148 440386588 498070727 118187951 630306444 202491524 564675762 252763729 695942775 834102253 925556571 142885830 747407700 675894893 800749050 381137866 965679719 562450983 861634328 138939154 688381546 696533050 851377808 661346222 978132514 378400979 620026985 681110252 772632035 237375583 857294759 354866026 885569313 415647687 869274241 554184832 796442166 643100827 672076983 872777651 915571505 574236187 716291968 534763150 803224830 555403073 622881777 364444982 803266299 776870069 824865745 734050503 783923451 14454489 889693990 721389177 803701368 235996501 272955131 801419201 871367463 267120600 836153856 548668181 877556944 619545810 911411620 629727426 651308346 892712116 945298437 798280016 982176991 949047735 961586708 992300773 999036200 448595086 716916839 683405123 840335669 56939680 790311629 986784435 987395337 279050122 286968892 967264598 977275740 882733959 938677436 856205307 944099477 660807507 814340835 65797669 610460916 553706382 575444435 86584953 663245661 820079732 856839892 805248284 921287409 243333400 356943820 602585460 891143263 783367820 898830607 301924766 533803928 312022680 802323749 728069061 792916460 881674323 902867800 289097956 502224043 176295313 991532498 805848778 807699379 744235170 955457498 869936910 960738100 407506039 753238120 948633454 993673237 842676125 936059171 31851397 730746981 594290974 834766447 95550087 633668793 87799553 964875977 644153745 794983011 308098557 877398636 324647204 539968090 134967738 153946566 911881404 912819086 364215630 374590544 646845474 738038775 274249510 832636561 802367657 982855839 630787818 792265732 48844961 505681178 833992626 870340378 158784810 583547646 922488309 989496752 281191594 552421120 289980566 554359868 685108266 892620004 510391955 607633230 968744867 985898084 239030793 807964968 231963524 447266743 777442419 962123146 464207582 630490147 462747154 572294438 971793479 996417363 856582149 988046209 746579144 898673776 357350668 745553869 287708130 365917266 198167661 206734618 379738634 589639769 189190848 845760409 335690660 905789046 447016226 937856573 740034407 889272510 575222028 613795112 588801542 901158665 817153916 867835065 554525296 792933936 914123146 997019405 407131868 569828395 488037946 996693759 739931478 776889303 775003665 874667493 278143231 950926702 212961249 758528743 917443304 970004093 117216379 194335109 33712915 792207942 235235827 993419562 427236757 659316592 290888797 461218837 800631508 946348438 688502122 826463470 632469085 639361491 981958250 994120320 69334753 569194180 880123500 961614968 754636624 900272218 368198290 691782542 935442210 964335200 795144279 948521184 451261113 881942896 217142756 329052826 149548532 907276131 450605822 893149722 219841663 625946784 195054518 216844989 669866446 671875926 229483313 297651805 149487258 917644524 678490736 784805910 399661992 559600289 848819988 902106973 332397754 797009460 578186927 693040937 329301511 566873309 222589911 678405128 167250000 798811187 57095338 349714000 56187930 141945754 312956892 838136623 2070117 251993859 552670627 662927981 803194804 860148133 572107006 660222267 345605953 730958600 622729691 802590764 977403355 995986942 161415754 232155054 216012593 605278766 983536664 988751537 245711296 526037584 688331575 939452847 803804560 806479688 216647853 768496858 890453175 960460038 787511635 935548765 859763197 961056162 663242561 750050996 750974044 914906608 280940341 694639007 649660047 966619682 647072801 679570954 220648551 399932020 723877644 999382083 798371158 912527844 559456665 578559269 554164091 555413865 659161442 853013706 659683311 917025174 390909094 853642893 791464671 977917625 554575016 559668638 955627285 995252306 412509037 758856779 331121336 333688995 124851678 439117836 415178268 606372203 879158312 978611103 377275511 390711859 634094553 909774249 369078015 548921978 623828273 738031667 572396450 745910398 826489362 844260325 356096044 744336164 899272855 929936656 129159409 629598611 795743972 990286307 551579015 642511028 568478276 714572666 37060362 828186797 853644849 957145018 289523104 453762071 713125276 881479796 309991107 606401366 865244302 933055228 77717766 173982335 457906252 907368915 360949803 413558836 78756687 191134704 423233767 708558045 330488366 932015216 857061618 870465562 425997117 827100698 549452794 682384832 235999312 444294501 714150042 925817368 661314612 692539749 791111751 881241424 448946127 704257082 951309639 989730701 538293648 760318520 117868802 805139936 478021112 531933822 294789094 498464373 494978631 704157422 414029631 858503416 932947770 940401936 484386682 914379181 776399253 914295073 367968925 513081944 157711222 529500880 555810246 848201452 735097160 755351263 847754840 960749771 290303733 587968653 463112411 866341420 110793402 319637305 844425362 952748575 348513208 869905517 508333826 795979677 187704170 844352409 79963734 214674518 307227890 719552907 248187524 447669116 578361294 689862562 472648917 875695874 545361095 923825181 59743137 415357666 292926769 855097119 93038697 436483624 586380383 866848047 812240717 819232476 736705061 997573973 458448555 902480000 647214058 996680620 555812577 815547345 504142009 990238983 92845981 442553002 130814409 982936248 155871003 503387300 456470898 596279427 638718233 696660570 58277107 269127562 543707542 888764101 229476843 259359307 466295583 804253322 653809655 902855641 859425567 887314427 163787667 434499665 743304011 774155466 222278504 668715342 79420478 447086424 154805089 296868500 125194034 349220327 500004842 796565320 836963117 843714051 930757894 970765593 576425259 699635404 351923444 703868495 398577111 932857983 937337964 949195009 374060049 928530853 317843987 431652406 865915670 918336355 637708975 847898893 126438846 358085134 870827940 922414977 947950946 952473813 283109247 526595027 407501301 936165620 478830143 862091729 753321108 813593353 211700915 347023003 509428915 943573491 10500129 237873446 934182369 948737120 833406189 996818131 333656188 502725444 481314335 705603816 560772450 884680592 45809497 497650652 610314561 681406556 588641205 898865532 403990307 585391762 689461249 764427456 503322922 855099833 107987770 641350964 509845100 544265693 451506875 949562670 591264440 618240749 479381548 758639626 975864613 986085705 513864862 970568777 441243976 958799876 788603660 984485469 818513030 957068445 606003284 673518576 766789114 808472159 87656440 671424728 217397136 359828274 894636457 914916735 950841943 965249312 802694567 961839724 498084238 965170160 20678206 476663219 258951411 816401044 268450558 980180484 435613081 436139921 374399010 499072419 519010378 626562408 917976878 921796077 659588991 841042583 369540986 635673148 822897603 970596420 513756564 621118922 54945310 847069630 564127182 622585373 166731983 967808496 423748584 487952900 239940604 757832642 954790726 999310270 630110161 958596869 622491349 795302146 756432368 799702291 970895097 993409772 44791958 393284265 568669255 691182615 124109196 704496885 459850935 879885347 153743127 638089202 227456253 716665641 583167677 767028967 562223077 710035549 635378517 913537683 157483265 717671506 225864521 829710465 973084831 973508384 730598977 789367757 25122760 141966260 577569902 831225110 486518313 893530408 822818168 948741348 447470344 833110729 310056319 444607487 226766753 727805623 615817725 922930298 614416155 954219657 509207846 797922099 237215601 669623119 93910390 135821309 201520787 941790375 901237834 983100064 735129178 983209771 153151910 274772024 643271508 831232552 234785591 376723515 128956572 943984332 796660450 805672271 547283246 602356651 861947612 988128853 209344845 262035898 25705638 965487348 782784633 965277600 288025774 400177202 522479730 687285111 82672552 790739084 678780146 830161072 292728783 655841977 297867623 477323611 592863157 764771137 549549762 617826079 18154228 121864367 854595494 896275424 481543414 748898575 121833864 836426396 315565012 376886206 220670048 351709105 639043058 953559892 544141604 711703549 900813143 963402738 20444559 705959782 27105805 109220791 301226813 521929699 951765376 953208742 61258007 810228331 42828851 344830291 525182978 786141280 895735214 934886602 310628185 585730217 511098854 564338022 475532707 564775774 637373666 755695642 136778120 440358412 307089632 398226621 770326325 775602208 712853321 795299522 799700522 996469967 713656789 887944053 748459959 847747539 602430344 739462701 845130701 848785045 147406414 196133555 614396060 785691519 905484117 914259462 107526707 221477091 123598122 956930850 518873311 778470379 639259869 675676892 59554765 157964993 69182900 295035851 516346178 621859898 665689699 938466297 344306948 754401408 420759977 938967514 669201592 688060184 969403993 972545955 771983147 878855068 688096863 786867557 601610674 909449852 314808364 641862693 845926416 908237313 715768142 923944110 503182243 726873763 193868878 648031919 188552445 367806653 419748636 546973222 977357422 988110377 809821390 864452481 58975127 838389049 738551890 951419892 771418258 897397112 436081620 947470411 180056410 933208542 713848973 822559677 210605911 759795591 81901573 763845953 491083219 628743020 852877305 880021753 214547359 478854838 217235979 311786003 122021767 639063712 526063489 944761236 472087573 606342774 59553118 86481915 266033037 447141230 89152320 116306046 148721847 933507589 294238443 697004916 411121391 565250031 921824750 958266578 484212800 923687582 194250984 602880558 579119668 591396699 315182607 615257685 454928637 560736626 112544798 859338898 445922319 831409760 41338489 498784025 938410725 958949677 727221761 842166949 130989597 425645669 395119420 586263376 431734289 739309509 259359665 542405161 77493635 890709609 683935885 735853531 757988719 890373603 458236843 902618798 491965449 748003782 456035821 753120593 275415941 971762470 808954786 978257120 192140964 268555304 176725443 729472655 568649476 846887968 796832999 956744187 322239051 988143391 333765590 690307193 126325205 597563188 613156842 761370636 212402095 312831912 460776586 550055667 111866962 332437719 674073992 859523785 957243694 987370920 709443958 967788851 39741170 443632334 578726297 953389939 930313830 989091739 862301455 995986539 612855424 764060893 986438629 989804998 713217407 774570191 372200115 420429108 34372827 349456078 213987216 405048477 262098951 497602381 157889495 238778655 927574157 984487904 95593932 510579268 738088104 886576685 717905595 935184205 804414844 808650072 36423671 44510445 261945585 742363354 326888371 457749516 679478946 706450953 565403131 622944405 682214693 954195157 760476940 866754912 675782994 919481833 936202451 954006232 521638742 981503423 418114011 821561204 525949134 837719926 345515652 367027712 362853703 450469368 849883101 877332729 358242928 871374168 201729861 506015303 98510905 955060173 768569110 984649424 104061789 711808017 489295365 699213726 993772663 995606238 329080423 583099495 888106337 994085603 690507909 909556333 63045834 672021157 511375931 807723036 404128809 945544468 192607050 555486185 82294918 632778542 957021237 994234329 749955714 978653795 26396202 279939196 914592587 923217690 932951172 964474012 483239161 682569808 293717757 904467152 595058627 914533076 477016332 717968050 297767960 774742745 149120688 299102461 257294416 878495840 842522688 941888130 339447101 522827966 362073316 623529758 138894415 435043528 861781113 878313741 270468924 380267933 538047841 633546073 957176415 982818986 215663201 607665436 244585241 813204061 939803270 995125247 123316059 909130218 334751546 566146684 948496276 979650063 733553830 744109308 871438861 988886627 178852917 623647776 808965755 841380982 326364425 576852842 840005723 857352491 198613912 640107743 77991890 479812421 248991513 294046104 441600245 874092822 679292952 773814551 966176506 981554206 378556886 399027894 671414553 890796415 809542155 907616688 141398917 154062475 24111646 724015458 595824438 884951646 20188252 314733264 356338986 924066468 228002171 375504650 672214028 869566028 14128913 184856533 846169792 977604010 468474503 880566529 7034208 625425384 171727571 479094904 566958223 609386415 499047198 577719064 852156959 855980536 273779917 575014566 284575852 868063892 95531575 985711438 615119621 865547915 697999878 891636729 536009495 938289630 653658467 733463054 361821150 374467485 297680193 397248749 707144934 929451433 7976473 759474908 666959526 949849393 832914167 849462537 505489108 731373105 284536177 888337394 54094004 213797831 125932838 232221752 944423798 993616253 232934987 353142680 882318886 972665769 597140391 876887409 649973319 980899171 172932811 775794678 938156632 958065932 649771915 874381528 560408377 788861757 745744867 781375546 24602737 709412096 363057996 373392576 56098056 230565468 731835389 752628119 432964756 701104251 795926020 870387933 590218777 990784432 744023229 960351563 119688467 506382672 146024248 598072732 832371493 988188040 470023151 792204892 888823949 963669523 692369900 783462300 997483701 999153421 587859309 976612199 251447862 545705399 171930357 247576465 465894523 659388466 893512504 918718821 49179809 292491559 116865627 777994353 516318955 607776680 723553698 988768078 736201208 941324448 710940451 770522006 826927532 954831397 456452639 557123121 572548784 685285425 985305066 990816829 423448541 964404992 713147629 956085762 916559294 964292583 848362978 936158530 399791528 434459334 981015904 993452936 702480320 753659989 943875801 981747939 611750557 670544211 950723089 997705059 841812958 952055600 984631918 998976980 243981134 610409557 24223080 506280604 596011664 812556046 253448888 416092196 471434827 817481537 558604290 750047632 712907270 742242913 592739721 776713821 446065288 538753139 448242672 657344166 699894672 806800938 180160174 450061997 248724967 830058449 327006548 740521099 916673503 947109263 423501677 961783464 737956005 945283383 814314464 955162547 682182626 884578888 88236060 412762225 668316118 990993664 44765669 133829070 324880100 505988120 874446227 935981129 876759988 910263109 157593845 991158798 417635888 990885807 633547807 787962368 176085016 273466446 654000934 688030821 608958607 810054614 275184703 804218290 652791545 704645244 361598823 759347794 502400940 646377824 742947593 846005783 628804920 899965157 377479366 567336521 894653356 925075992 584723327 782804319 548480986 653073132 285376230 543291967 367255482 468522662 881120606 970844414 468824243 881265252 94731113 305618718 381686402 533740565 980386911 989305454 359425588 552960213 789527592 841359078 548346107 722315471 391924273 963717479 391921551 763512797 226301856 733398204 801079952 854448773 928685353 946590174 73534406 688946955 334504361 687248220 787088591 855026647 314283140 835189253 782300010 937745322 511627301 757777686 316957945 679886601 743748166 748171180 590836753 977671275 378983002 415104506 918032556 922917481 412922552 686281647 520762204 622296918 679873285 914783972 205647445 299188565 129723633 881573014 295910437 960553175 85870276 686132462 274264156 831492058 16204200 96423287 941329055 973551303 339753533 879793953 29710178 418029205 934189280 964318783 939811358 998376844 364008377 971172142 886639709 892005460 343999584 941745077 808401824 895277552 359471970 719595786 132289239 416165416 166587169 306953103 130914162 292311836 116201361 578590049 482579954 638559754 720425917 969646155 240341089 668524135 959357224 995023056 717526345 839271936 510301126 664245375 833550314 915321366 437874815 562325686 705415175 854701299 886762226 963668541 816488668 998097976 53669558 744511178 414495143 891237577 675728625 969625732 821105354 919943643 573485567 614924280 428274629 849014239 975450959 998923209 515169792 528576619 915124197 920696565 703763972 763836115 788467923 916281762 822607152 903611434 286281333 858201890 521723395 618173997 15189810 582463319 378661708 993541636 965425835 991047234 786309868 945027628 198332984 240901944 812608964 989692066 631824333 893327271 687295939 756452585 66933140 975363038 733081373 983043563 611792365 927579803 122771180 743058926 517847665 641171154 307067458 755584606 624578995 745265834 503469264 810525471 118672702 615529422 667973693 973841805 774368160 857847707 149566136 711984904 327765008 330962587 173292916 320195994 600779256 966351096 22403070 198229892 764780965 864303213 622069942 748171491 180550676 730318835 921698923 932283559 515715445 904812841 962913007 970066747 236611696 364743472 382301255 391754498 498088027 601183344 283535283 677376368 773595810 983085685 712887495 758894541 367370320 697645934 446470639 674081911 673240628 818291962 841719964 895505633 872238570 950101979 722636019 960617472 392031202 443605410 938968275 947133981 261714792 710882999 621846411 958120891 147348567 261611074 217769126 890573102 538073546 824224389 576051289 642521485 414857927 913433025 319623272 932920959 919979891 962157294 671294131 989022081 154632749 477999573 381316332 566287512 808588952 950042338 21523200 429612483 47240103 717905176 458938908 771729266 985729827 988250933 182999977 534832940 516257271 749292106 621660208 721012090 654665186 844864171 571986115 832575376 835227214 905445691 554903397 876316719 764018477 808213591 901132853 975394216 302066188 318008450 423059639 745584228 580273802 762950249 22356810 524753967 972645284 979573867 68812052 215700541 826111233 901544012 829246344 851508194 709384690 714672809 187267265 251993474 615084200 791428263 728728945 865216828 883055347 909509195 558131984 797630385 7885602 590791174 49840524 520173763 256879502 351284236 204848809 362617477 605532024 986605312 20971689 270804340 180226720 944046290 320705730 561273288 315448597 383783301 129923908 648095418 276961164 487519568 940555777 943633327 735341684 799061400 361046749 940805860 394166421 647822964 422864978 669681853 938787732 979165242 799097743 924993727 345295351 583249811 501007147 902837668 804164945 908490668 823024858 950511309 659232865 739672163 248303850 397501327 941062769 986664836 717290949 819853080 394219294 699303567 440393048 884966571 559036611 834357965 26202079 747896931 247831873 367939024 214524181 424420659 115347345 981759713 544778159 745602673 250189227 728776669 761263098 997014590 494488382 577209251 969381485 971791366 108478474 523957592 505362032 803930186 947340305 980623205 957253363 992814599 891930846 990175619 569684002 719964945 293165707 902143585 974235210 986427012 943404999 977375022 706013900 906932471 278162268 897309639 608208162 614979365 923684497 953413850 767138487 838853368 166093118 251175892 342209617 770280473 236191112 331570553 932478638 991340095 904078572 978203258 780161330 948620153 180395579 460503756 542934783 994866942 120122406 530559725 978988732 995308130 678985550 774224649 403554799 766375277 601812930 760966645 751204093 887871574 484239525 702448350 245155519 589098984 269446100 404919684 333743420 939004073 703713914 925809480 869132705 881257146 965734379 973810485 646203291 873942175 507536733 562533175 214559013 939107618 631232687 957958434 149587813 310232399 864985229 875831065 391105929 802244027 336943026 969308091 343807368 873777518 79579714 318874034 677728873 886035233 757079084 963092479 386433322 802020652 463044995 735850115 726627944 772906119 859519859 946083107 932879931 941552928 70946038 519030278 561410739 843114395 391211544 721892093 424682857 745148350 88066132 689205960 685549221 990850378 969744460 986061389 742346391 903355812 963026111 976596666 262592714 758665497 914859122 984334801 413728071 439678671 45499290 290919900 527313435 872641717 643802689 846472016 627648383 674469100 349266866 523047447 214507194 706888777 269075434 671157860 925555778 997569809 67860867 872730073 651503376 935212525 532646021 849187614 486498226 902267746 433350773 837528660 949540570 994440059 389372144 763238656 778914665 791177801 354943522 559928919 310295632 963518534 425656946 993209124 192994670 759821355 674519297 928299784 477304822 582218902 276378379 592786052 413691273 717380811 717372414 859668445 425850175 935315301 163897767 746115495 236059475 959315851 895431731 938264705 987032411 987605394 50169453 471639391 99954497 132942606 450932994 888688865 655605264 889114154 420284509 766565500 155055875 332510939 732317802 994550743 56151242 136672781 146705870 667359700 769598350 873774051 100277028 575027863 34661204 60215881 881655511 938257915 218633894 489542009 981524968 991460080 579339696 895074182 820409647 976450136 191983791 294559215 924619078 948939845 946225198 997255822 356778517 661023158 625937776 699650406 361385509 817357978 963863625 976540611 382812008 382922766 419376509 893317631 467120350 948656188 538403893 575209278 632670065 934486150 461294301 684334059 809442484 829000764 283336448 655254004 823334155 995347678 934543536 968581734 304590222 906047257 403544656 720947249 493270699 584323067 874000299 907461705 347875995 516024927 968377324 989448557 343145841 623536928 868712734 879609437 800261573 826832925 372126143 757875551 152177359 380784057 777190177 897565142 901074463 957861856 323402744 461243483 389052126 562815881 553082425 646769493 412051184 961223467 525272049 715259564 37945158 725603533 251367729 956697475 237034075 819979138 509715471 735061560 154639073 635102612 932845710 998060615 14024493 195018906 114735796 966254927 971658268 993216086 425260598 963218824 288994719 552966969 44736242 958307270 338204666 841604848 633450843 813553526 778797461 843036890 753825707 905123393 37286689 947643615 885753609 990328740 121212354 734947924 959710965 960581753 926552145 975520554 345486688 868063743 629063660 792849908 653897912 719502690 478404077 513622643 811219644 918918905 211255588 278440320 449915256 933112996 304377466 776338598 582153702 998829412 195518587 662488194 312742713 945489503 556779465 801366330 490359130 773734134 675775848 699596952 538817456 888927394 156783059 272042441 628462171 717520664 96339992 141387812 189097711 502597680 861561361 871430206 753202300 952529137 485284894 667235972 924291650 930052599 284880912 877980693 306449865 340387698 919385636 936340298 822112332 912859511 160754116 613343519 560574546 742004040 419222039 737497104 983012556 988826280 127031506 168952091 33842798 232210851 645993285 883842975 282660381 622690812 418112434 418187383 142757464 268943698 916882573 975618857 185640603 895305651 584369561 906182777 661091786 911651291 711202034 937422916 153685070 816849581 662740390 668858274 776334762 780457226 127843018 546958279 181207986 777144800 281732380 411120393 925297300 952515338 962214858 988469679 4593239 210432512 800505123 940055607 758680603 904779062 859769861 941338933 845423978 949506700 224617035 694965105 521255004 577526157 927649418 996607027 322104546 765041323 451496480 576843819 560877678 900672036 75208632 285407264 23201503 679761912 964530864 975227723 925405461 956511018 931398195 969980279 623905050 916082653 42388498 801078733 410151404 840079782 609421763 754238713 405145827 619801455 688753099 947533355 266823734 468223976 200225310 769601316 387977229 447911442 408756888 607996253 430930713 674269518 965783621 985199009 473101159 972720116 439976323 626189155 805717298 851911524 454019649 537368024 53397282 386364179 419181263 854723232 882958085 976333774 793810523 860248308 471488332 726834898 994082160 997269762 611355962 954710066 503580642 915211057 861062843 986276092 232723827 295645874 792091883 852627618 417361819 773793134 76011094 669961054 44323418 237977799 203701548 549707601 438437987 554933337 565635414 998041488 735828270 962720222 95401171 401321162 73804845 274786615 151090706 171559297 153729071 806481313 910135170 944584684 935919112 954319259 146592778 951675573 606663648 720513557 766878998 952488883 309741419 753775285 623860161 981788298 426837494 687393659 630103113 927047581 460895865 592594640 892175365 956969535 439302491 842860619 353340841 358603368 634125977 703943918 386305481 708713515 402725998 587262765 834407847 975242060 932833305 995116420 141828275 614055693 988012912 994192243 74430491 159262385 875372 148002517 407976067 489795844 59812436 783850310 541375912 798029619 618613495 844073424 36249034 466785862 797910906 800174059 448748153 783908836 944062844 970331233 530010971 665688636 728698176 740237995 426728038 785110479 457488111 716183111 739353180 999296113 768620327 893262505 954639418 978482259 215065208 754387157 742411607 994503642 626148998 640230988 235138188 831805030 654380681 789779575 581953217 956388577 86024060 906472902 101106780 903245363 619152178 876960544 501263424 882337040 789919573 820814446 523067658 815890347 44367539 144215876 575627445 988727962 952560278 962343814 220730660 569972120 127563280 663594118 782938277 943307534 739120445 811105313 327071682 991361340 937930118 953431375 885591537 923502793 959121430 965733903 978648428 982650752 251116661 890158868 497221214 500479195 959959813 969152403 551394714 737384754 947069435 988068626 581195565 781212705 78958864 337778722 377975334 497394165 690429305 716370959 749589008 964040043 676883084 898554715 113887512 523375107 112165802 329254012 912793517 923599707 482709828 714032856 592669982 651993845 736677840 993970825 878126633 984018958 599229488 688382884 261328291 933307226 833220399 969226274 114201671 283815733 86290645 881128025 103850600 996561252 967416508 989908492 88253321 310286261 89016635 176352606 560941316 741796957 900817084 997801123 180578898 520089999 388995532 466647369 670197342 942329587 219878548 242675997 530934312 874729408 324320586 556164709 12705403 693039573 108145769 953548361 529432357 690541715 789285492 866285522 112972986 878779691 514975919 956606263 855669564 949429407 98673169 893654869 98311767 961680594 292293473 352525914 494558399 897344835 251143543 594465163 24567987 884336473 313848292 855942023 662073761 971154475 92664733 413799006 107342121 525926199 383685094 610529291 465462164 604816741 758669361 806487886 680776988 908386113 83882982 282536462 342406741 480137817 918566059 978521626 187842902 444075871 116402362 340018066 623097699 719355722 915641560 941881783 118725932 822641203 179083838 699678771 894564698 976272090 567726867 712409734 174742493 790061054 252870342 949936062 107868837 739742738 846556562 928964664 162607071 870688340 742065977 953425573 671349812 915777430 571251571 773932269 353134977 545775270 301311505 782138067 76077601 134948941 452892827 640554430 421474702 529536883 757873021 845196004 827478910 893543360 561304110 986833890 643379418 918213570 381531346 935811485 902865530 932158446 725206972 863799447 525467769 672155882 691335989 915445738 123457351 775069124 338037162 618416770 101862628 381023653 999335431 999350791 541562598 978684948 945592011 979277178 770958515 953266544 552993524 843876933 735583352 903852949 776993317 803625416 895136558 900767353 846011386 914718651 303999424 980847653 712954995 809067347 119338317 899214565 969177846 993138224 231647546 383772447 49203807 692741374 621039660 684269425 598848203 738074085 798318610 923344045 520064540 541716185 265385590 572775681 823831028 948444719 531535394 984076900 815795480 875794178 549406186 767324298 816707110 903421224 165770173 828901064 17300132 236721396 149259466 730660688 286631941 310227833 449268325 591629413 888087848 995319561 247868 735512471 137715140 928301572 43212763 854664595 242664577 984850403 593841856 897296146 808903443 920146074 970992667 996402652 712784197 788290855 521227788 681877394 104234714 803680960 237873018 817035559 279779374 540859895 286400194 648297784 627843430 956235834 116933850 962394724 708876545 850072537 503141375 576352960 5544978 137576899 534631292 856533559 623982596 780270272 992882573 993851385 738153450 834937749 979273879 992464546 283685818 586324730 747149587 776794893 157012494 414983814 547718413 664290935 18157252 845072275 191962838 583110927 502912471 722037312 293378881 805092962 279493418 784434565 473860556 798958464 207527200 366090374 423804277 921269188 136799897 728524366 789978106 880572220 213047217 623025379 734643704 797021937 808427594 976401329 54404309 761505217 177422070 590271668 227757498 984451152 219291603 969219970 409728488 827918953 709615223 735623784 535390515 962806952 640753110 963271299 796589874 800251335 395617712 545934437 804262404 867308224 837080072 908723192 674135885 809161664 128292769 607842078 60007073 333487087 104719438 394949596 186392377 662801656 473962001 775780141 102744822 120221490 571218653 654266663 693591200 951816047 900320098 964323474 234189452 755495999 341283744 948280501 368166537 596641937 251479242 496884373 579925669 757217301 848934598 948807194 954208107 958185030 695186143 819570396 392810341 602639144 561266665 754535846 827672113 969384445 390354325 512248770 850289501 909406015 378899740 587347869 503200819 750882457 952147710 973505822 910210141 947736545 240045001 838159081 657058157 709697219 921621556 952347634 540976965 846379836 949483200 963432603 859148495 915585909 140863448 166965626 834005219 855931444 172596955 462551839 489165646 510048037 974508736 995864051 829702022 964635622 638101982 644821023 508384615 904682141 404661556 774685946 255261059 949284879 236291999 933326730 278604722 953064514 866285752 909897713 926261995 932663713 196571902 444353360 419318367 591226836 568562751 613504650 364497055 728250237 465977164 898114107 328394847 979392579 489157714 940200981 803842619 876776394 766520806 935678303 646467733 989310009 756597732 927572762 458896367 811121345 513233243 931781688 424721661 637338857 915899976 989940924 487040451 517652625 60292183 630097088 152487649 205803129 464513460 553996955 530832920 844413861 139939958 501424727 740863771 770395059 418188502 788554827 318290387 851950489 682242420 774100112 396006468 659646494 636914444 800326371 165536294 470672338 214015805 542516333 581668948 750372247 698760643 858791378 923513121 993951382 558661621 988933576 922371425 942110361 574524570 894010779 226752699 862227828 418890058 432651668 505345309 868052071 326350470 655859210 370955803 440806158 788239735 959550894 707298959 887208305 765241052 895233401 369302502 887058979 868861368 891152637 109513698 808572104 806612613 935409360 240986795 539984791 160177018 812834792 740170666 909798334 407034689 952902209 562919139 601269953 149445043 923061386 358366399 716111045 567410482 878329246 399718850 430600532 826487877 828805080 644079424 828548357 636868879 793044664 686251760 708119131 44489100 641742533 765814603 977031501 556729878 969512322 710906468 794140811 739344081 934645975 479585988 641249159 709620048 918414673 869877178 941378132 978249725 989132746 265100847 304426846 753013577 819458152 812751153 825555798 442217335 502938696 515572639 743203845 369603317 935412062 646160457 710748117 343256629 704218587 356255594 526151361 938154927 981140315 225988382 555508804 344370802 507842135 982091754 989609256 968280660 970374783 843422208 940059264 493129903 734502660 638256082 640370366 179840918 905243076 142593160 178615624 534299209 763199610 571604773 979803037 229262966 607260658 855063649 897350772 773094496 888498608 680736891 988110182 290942484 711871032 696220136 830654686 80534143 552125481 439502720 593054639 743795198 861454158 532486449 717829366 142780089 847640533 628245993 803199284 133655589 630551406 770334266 984240459 38683702 977878437 77296118 314275954 675573803 890082376 42520159 170961508 1913664 95852771 140995033 966599339 945127774 989440175 277314157 793602727 674378383 874078002 856646735 935262795 742732676 781242318 333580692 460503176 298034088 860446834 114218111 831457249 793262051 979612831 713274944 896468392 718386650 985106134 762710645 774024992 664563074 960060810 272283700 334216300 528145386 807321776 396185466 828415405 142120990 510417292 321712091 942996884 780468430 962670313 858923842 947440320 197790653 970598476 576816588 586565871 903585557 989779603 958453756 986914670 676128879 815848381 615665429 810145174 542838087 916895922 778445377 902522170 784028920 943636943 658159691 985203497 416891191 768986070 200487934 754526165 440066343 846959138 432951980 583800529 185165948 965741619 230473891 568619939 549079548 847908794 636620418 972639867 858272967 929242978 364372090 454071138 313845294 398411661 797271026 806804801 277718917 507365593 649791205 683153989 511968122 932495576 168771822 256298790 367163022 746916255 940428527 960167133 770243999 849645694 672772400 813182895 202748528 719576128 166497986 914621420 954084916 957286573 416616454 493671537 983651729 995559892 708673708 920080771 577990347 595730431 311403196 907257721 589231850 899268447 9618750 401274277 432113495 628539094 418107236 709304994 168274874 738998528 914279392 931094473 146733777 586525185 368620194 802424325 340703436 684515215 668369156 895441565 642668495 924211499 584272550 814216571 466730229 706852701 711175328 773342609 344216550 826165828 707291838 777776735 646499483 902456203 403051955 939967688 940821205 969966085 208576725 330239952 93732576 887799960 212492581 237626953 26071618 834846433 564944640 565636880 105742911 904753698 54627945 609397006 744494569 834560985 120903065 515605425 530995578 679464343 95738551 416186531 232082277 257356972 86870252 399536453 529167622 665962068 8105132 685419809 136148496 290838321 584225325 968616669 781231462 817917986 476593587 817130853 769933921 887511142 828931353 945737496 777196620 938657354 574730407 814879420 250864928 738872942 303885075 857998543 62466278 548266492 411169105 428000984 479516627 493055286 170252579 513457935 125221987 670299184 105163414 591938061 606548082 727288729 199307694 396873167 267465504 692325982 245847575 748706310 639491507 998080895 75725729 230240593 928431386 936119366 661264004 676097512 754752776 882272402 97658220 363759826 897428418 919515944 12249183 330953952 726478278 944315773 33298102 126586548 611367121 853995119 681329169 706603373 386029047 914199595 612323786 746567028 8755229 203504837 214605764 960663115 930687164 957195248 944872950 950623205 900230097 961911772 475374508 710016295 515996004 953443559 997337593 997970840 426815876 926638173 273421289 413180823 138345583 873806289 421740044 533353500 194847634 996188507 951369781 985709399 5390163 642775869 611297672 994391509 709093441 742122113 789034700 977028868 609761075 741232034 880241027 887870422 371858449 881079150 167729790 228055750 488134729 928083769 324171208 604181905 745346046 896350371 134546990 498581777 654035725 919171414 733872829 749063886 223056410 821924657 539710733 788751464 527662164 592387490 807873489 998080268 82183636 773293444 419377758 708838284 310132119 686964527 881092102 909783807 572605127 810199495 918112781 981108997 144292641 272168711 995015607 996139447 790245279 961085873 878913448 937946930 690702775 931839664 460444665 824201896 692697375 898734582 854863480 857067277 370461463 571128599 979941055 984690115 545885148 759507514 837804457 890687624 135460208 448586732 703482977 813414557 27446063 304363193 546494176 703493760 535849704 792799575 560958180 978263572 809332918 907170198 552458301 812111849 359992655 991025852 431038833 927569717 907099608 977648430 64646478 727189742 66356957 768548888 239843347 770861699 299096268 446049744 415088544 584937360 799152550 839307255 637042603 943425189 136224112 311097046 653236919 939045600 678738556 966699894 388779786 622202045 339817506 579678039 927600575 940850995 482408668 802229374 753833274 911596145 449998138 792761267 421137178 865269894 282182647 557447198 653661284 695293994 723114143 831158973 277925808 527267055 821525319 900005037 741405483 915982848 808594702 885376965 546753172 698889462 316223508 814350739 454594335 533676259 531124124 907424971 880687306 976225103 663660531 720977896 346258259 467049193 988640741 995272275 469795159 803740986 76863667 906143773 826935290 959162801 111850242 689901278 994839768 995345466 322978032 728874225 13396756 361753440 852656941 913154723 836252139 908787918 676060986 739605777 830940264 872561113 743616265 753130335 410879916 616212532 843554564 983990914 692521942 752278282 949967673 969172167 162874013 243092379 746233023 910256338 84920259 479097416 215733910 594409328 143910150 749884977 204219812 519529124 508856302 965222571 898668729 902857285 972279143 999265127 306539189 768210527 305036071 571596127 96223916 419549960 318484262 538892487 445441762 519393525 452526180 939182363 357040532 400536054 628633092 984187849 811584829 914187382 887995048 971110533 903273789 996147387 927473303 993667485 697911097 974743760 181122517 887073302 271364045 664760351 967867129 987540225 17449836 909708048 816514890 989127164 702232085 902018563 421941151 469323380 597584604 675425842 847024691 874794839 993195838 996811994 137122486 766324633 963094664 987184160 691414323 740015506 79163686 508188473 407599333 618577985 5093462 867032988 782802386 949391244 129896467 301547896 199633104 335165376 504712636 612133524 374577918 966262149 948549479 995622600 44327739 572270192 499532113 773318091 462377927 986066520 497951359 874090570 780767217 857138237 568274099 851892360 689378653 973287422 245093035 841192974 8773995 69408297 207265910 670523903 680279690 738533213 129661729 693294745 964716448 998661833 914773971 972444135 615548031 862085953 991085649 998817344 91875172 726695419 444566337 946075613 654504744 984245008 143449038 477516250 100033234 838272979 140222731 904816356 17309648 265898176 415483297 707557866 495525785 550841074 171488930 853609613 852341463 995641446 447678012 863421915 86688747 421714666 157095621 460114367 124405613 307249410 43837851 490899663 12281933 904654323 294533016 592701375 70120125 510030640 157298084 684940311 954464025 997576602 430647779 812645329 666564527 689559532 636297222 723093873 823623166 848127376 103144470 429949434 498864567 915917463 524546518 830437257 173612153 459052470 246027579 446232736 530255174 540544870 878341170 966083946 601127989 676312916 505598624 674210638 791330581 800186525 491347955 687705209 982782049 995360306 846612537 866369874 305054660 394307977 451923473 869129124 712162794 865877486 68261942 914338932 657239794 665338423 28546837 123555477 684491898 751750767 65734604 339806446 354261127 533017284 674135067 705931677 947190256 968182456 446510170 757700036 467220930 941508031 594880872 772409462 957945898 980373478 706393571 882660858 697590200 873293338 567180481 676472406 789408135 890491323 629209398 743481882 879545267 980428989 618870223 809848075 357083217 898951794 874097069 917302807 204724252 228955203 793430701 844152285 531880954 758145022 489825712 818096409 392483732 918087016 629922911 989436574 957455870 969060990 745065786 788508798 405581885 923565144 114690679 416708932 448147230 584905791 202256261 758648124 676553989 815640934 635207409 917878871 891766296 900072145 21716237 925571587 757295044 776983494 362200229 395520706 419022732 731250000 212560515 623851936 63961105 703434202 677544563 980649212 537939092 635923311 572935507 653130283 939715896 986822011 921304444 949273875 200924834 437930612 699830058 929910673 579590377 971990080 487661443 501291164 189044288 615469356 92960853 788553553 937009305 990656232 5607038 59738999 11035618 589552777 711732663 928930717 216359174 930278826 320829722 934234456 748726311 805783156 791819387 808778322 926383378 936040303 741038153 937435348 816840921 973249643 622674682 803873648 136656268 305270525 541397123 647936549 870645012 892809997 160603656 336680909 327053005 562883084 901909620 989867862 646356094 972620035 825916498 909841455 697500539 974349934 811904855 888776019 220825099 779877730 633103676 739184474 568827442 848393547 220899384 894700904 745144955 868975411 253645618 929520189 204451654 919049621 186229955 967723961 155420613 251147572 179633638 185906063 332570087 942452167 637681389 781418294 507135100 608588845 182464168 968196900 332964423 950545016 365816974 774801590 58227427 292807353 121737339 448555045 10494956 828366009 174910066 684950327 36658953 800771714 892330482 898775223 344878204 823823885 717914813 851938907 395760942 977855140 169633094 615899511 111291692 398610145 158093397 349346085 35634608 991949950 306618276 651822450 963767725 982109544 847493739 884768795 890517639 956069447 421513637 472767026 294988439 864489881 611939350 697249372 390967667 758974131 256784507 600210494 297473093 701367022 267137463 358635165 458235854 924575331 194506356 756844822 156281145 442152820 685200619 729756345 359913104 703313233 430695110 761492991 806293849 851549813 373819537 388024247 766122758 860919042 68401113 69868979 138819680 870724076 324045321 937512781 636018598 903877350 530497473 929091050 262202829 830451352 291140867 371332311 403926794 856114387 399027681 706520591 673482516 968183465 509645076 909167242 205141034 523580866 884970979 913766581 625864488 855218438 929500324 942347815 113462894 796341008 886968090 967872647 470749398 725245674 637484387 690744824 713772774 947808266 455110474 561484813 431815314 563929575 640566754 722554847 672977858 950014137 797135059 899279018 782165888 803712385 716992632 893845854 676263009 829643656 790907492 951724051 889021604 961859384 305926221 505134462 685835554 760662375 290043333 897868795 458862341 771626091 455303460 794729652 471290591 791028189 1280472 166289271 663785503 768371065 241074447 782828114 695652369 789548021 227034171 854847700 653178111 814139196 734567759 956719928 615051064 712922056 28977961 274557450 96603789 420192606 322248415 551564301 800857217 846023246 476954204 782050393 25588738 69537914 442101798 698554074 603162212 946394105 608864813 955773301 231563464 642559510 229113171 912881006 388734497 749778037 494924693 573062773 504205948 550155266 185659557 905943120 145363800 461517872 873029825 974996230 70005649 410737860 942066553 943751732 600184651 767443404 911731935 962733753 276049954 408373731 727587802 784258847 26176103 963791887 298354920 892540035 697325474 979909219 338351183 750843445 127534915 478317961 913309718 955353453 3289604 562298671 282525526 567961608 511256373 645387177 224458303 748597578 434910163 487683528 585537448 618071460 153095848 549006977 898040592 959532102 960572013 974339950 486591459 781780094 499325001 850797483 553554255 832838969 545208649 772880346 439268695 641497262 843746492 867031064 592166802 816856282 246236803 414604002 408261468 613782650 719024800 885789189 377195130 561693908 234283858 393035240 805881077 947751040 244398864 720140538 743031615 848328145 308193503 862622735 471356674 969367535 235173674 409791466 678072058 957673007 599951453 827523606 580049360 822779870 231150833 928629824 539222390 985586592 867696489 895546313 200613314 901266932 541803478 613717665 663867910 909599690 956829146 967486553 693694120 704356397 554417644 862133367 74987155 556212851 710945941 935656735 71944657 339859388 92541401 258380874 819353912 826543247 656549376 829275531 198868631 479808026 286536941 479535874 276735120 761694882 192326781 801871936 947863096 989566555 519519524 827353259 795962799 885374265 704969694 706828690 12796531 36528092 955055726 986528195 74971612 743543797 792996826 988740320 525313537 829244894 927794252 989096408 171852123 635714669 53814578 813834244 590937433 590990550 851610952 992271691 62919431 906831554 665858557 732051597 122037301 469151443 359099593 871451878 14817326 925099257 37198167 47681566 420476442 777055370 119897207 852284010 691177350 926699980 330196700 755529798 374909774 454215173 759938561 873223687 764815754 903830130 948776912 980375198 233084557 323621396 110344170 351379733 450249315 734484072 490348013 803290823 36135024 895595468 44907071 546697745 272994465 847187762 271037834 349999237 978068442 980929642 475549136 511521811 581278839 761699542 537204393 615634195 301465114 319335114 393280534 969898600 31328242 931274961 817654128 870052611 918468379 933039460 947295101 999079167 94545504 969333382 854662810 957689981 165542049 474846961 647463619 785345360 398575974 548829163 359158883 546901336 859009986 955954993 819451196 991133600 871028442 924245238 338705227 549184949 230923639 479075024 339507909 655445458 106992335 732460270 11846072 65836735 685562030 807286505 103263504 680477987 568412605 675851029 994734907 995547741 810552274 817830476 821347193 893451662 838637612 853962470 451794789 708806660 673270630 826892088 108213647 371419926 116239339 678417617 978465852 992531860 690070540 908170570 73279766 939800436 46731475 428055700 118977335 601792178 989112725 989572223 474437618 645965216 383381237 587909862 450459641 793316377 338665559 594904775 980285978 990107772 602802512 895852094 538184213 613802462 776566823 937721289 740485495 891307602 433691510 461456643 522358826 862900998 627638581 981749503 583793549 696349431 264909955 591601767 945358021 945797686 198573457 709993202 924927308 979538794 998585109 999227256 149729843 728835114 378123914 468083585 973172928 993193689 729252708 956577202 978036858 997504336 925509842 997996067 701155097 914797613 931358528 955272743 323250657 971455911 107612035 349716611 245047441 532749060 276371121 429832610 58523611 761438763 692211993 769709897 905508278 929858751 891255930 937416056 251709153 486036661 39987952 721533003 598397115 830270291 972477002 991013404 69723017 817778653 254702773 774251010 504144396 760877100 171265275 369056963 410347386 679683137 755649804 979885009 676415681 768767880 970019212 993494907 35412987 450724142 109839531 634637113 629060892 907427339 132426262 456354466 304240041 328555351 631254981 919304608 723280243 787039529 851996253 905061071 812057587 933232919 87998191 302023239 646879313 926344628 430091949 724962129 802075775 878790898 590537032 596073663 524505835 919710574 620663630 911136717 67016717 534537984 59390288 808770134 647828981 671130762 729723170 990992470 589844916 783961967 19560287 43439873 828208221 988462971 554181986 606438365 811398301 908850119 598481855 857999124 910823898 917973992 925345945 952711624 586173190 857427637 166373910 702799262 317196714 473845476 372324573 382430999 522195679 766428407 630201342 962024038 244943466 977524362 694555568 984326799 902704512 956880695 433378027 727111738 260694846 486720553 670350921 973203189 813344955 827428078 631682122 802409266 91815031 563505135 346782189 463299276 240632081 248990099 913167580 941901901 463198509 717056331 185275487 635509711 856271988 970524083 958060796 990179911 764661500 768532684 251358038 358897911 618924024 844316870 243398838 958556824 273735810 468545064 361594128 495303307 74513967 182135913 413286308 673496841 257775835 483700990 622736593 769238462 782508040 873282743 823015686 975128733 101981713 717878849 942056553 950611502 968190938 990709576 805564721 920103979 327561213 782616932 37313324 141415752 344644215 792562873 312381820 645177295 680886176 687936685 439105548 645528691 119263534 491106465 137568055 685455588 190089504 603478965 970115186 991133320 370451286 983750190 214655806 572446858 664614280 681845025 937818835 979985044 849352366 908013003 345705669 360824805 322897248 751772268 408745774 441403704 32926471 527576222 304139368 837145569 171013121 456468648 543980263 695370774 577732039 742395736 138992779 497767503 292837211 797350041 549869080 576567708 440537504 512436990 616000673 620020086 958108533 986365528 168330064 947340517 358629464 502745820 799557239 891706553 749368581 915745119 8656226 240195011 511738869 840265156 48849204 246635489 896587481 996529114 687549595 689017506 298206329 712377504 482652135 997556198 463094192 898943442 767135480 869780180 700937245 730301380 900277937 925085667 780210124 977262758 515815289 631686992 375525737 599320603 204177095 447021774 907999247 994832009 121993220 783101529 583051380 666049376 386110269 417006052 735831732 939624324 945411330 949628382 188954343 690937813 718927264 997967803 154824562 354710186 228259754 399186420 409020881 570208283 648260278 771511127 803628205 886594744 625754372 743845689 967694930 982441501 359062480 649619098 263114249 922966593 563428613 771236038 508207955 551479515 247317181 630124128 439349561 539790025 19110708 299497240 399273929 647152342 981694122 982358511 473704291 628261430 105392963 380982658 801427386 911671651 732970858 873299184 107242776 937946237 80689194 970930022 862078779 981591034 493520337 780236844 317386487 605142896 277553628 294532168 437911356 592374546 268345620 655431556 923703927 948948755 903763231 992743831 759857759 833427106 609748669 984956979 448953969 712723433 439611236 750515109 216667079 242727204 270242041 819642749 404495926 521636182 974384197 991795086 389967474 444759049 817045564 864995914 392208518 677518989 128515015 447541109 804072455 816167449 32651179 712870714 277253416 783202135 282041406 519181951 851540468 915124093 397524371 825703700 640972195 971270558 437128326 810129560 209259065 932264502 332139712 373259483 299453433 540620895 978717290 991650896 326524906 569527883 441543263 733811083 287269420 615892517 790346143 865151565 303680517 324965895 803036176 972618320 775776837 922222601 718636001 766142662 477371033 814957410 920007413 952434188 383659696 948187268 566306491 980497176 829200855 977702634 359952135 919908870 866585387 891075707 941957443 985491014 421276161 927239120 121062944 926397367 408063422 976715084 617654047 714845133 54486476 95827619 395219178 563083939 956675834 962178928 777941981 863017536 739171985 768067990 814370749 993826579 756781275 940833596 722056178 894196315 765600142 802711894 789690089 856151736 379089042 815315427 704504847 793843228 717690717 968964141 246431304 610499065 655961575 867209077 190529565 744102064 101941583 909247783 521527360 825508557 677474481 885475578 814050549 842057035 547757938 906009023 912109073 937721038 552924064 942098803 340977668 973768565 365495305 411884224 381565914 437305256 308992652 563975363 376349918 735899749 724419778 985380090 504571135 801921040 780991585 903198128 425810955 688294627 394152673 787649112 707748156 767813738 8890142 245775289 398954761 901139801 188896089 276711630 567115487 821993613 899181239 963689376 969667096 993735912 842716523 980945229 640591877 843412512 582134080 726680868 755164951 946420414 546441356 636943896 334497611 682531789 571316996 652361076 499019636 691932224 140505156 860052956 168385804 235409220 298189704 320829319 598907558 946105735 270737662 634230978 743392884 754446285 952136488 986931414 253328365 503377851 105386651 822695791 780134793 937658088 550027962 953969188 147736999 821527659 461278064 885177298 866821779 884324313 712208872 885760646 175113633 244062391 591865952 834486099 709465908 900586322 944129061 970582004 314866985 782832358 802968694 810519947 770941529 984553279 276160796 432676343 124312452 296219703 292569420 868890220 485041842 533350288 88769859 452659157 239414252 747442193 519548475 574350296 682567972 700309482 607392872 860651378 25270372 133214163 676297965 777281228 47519014 905704407 34779999 392362369 268080357 506381120 616825451 849986520 973803637 977249855 87190145 632996630 406770176 798677236 982661247 993662891 902052105 984187749 300397499 504076724 952035081 972754044 970033074 982524882 331795798 726992673 360733053 625134772 348502488 706058350 232578280 811086243 710785338 925902089 67917322 229200912 126770736 207311208 393717505 732020303 966626192 967794283 410445940 853587487 187904195 967565477 580897926 664678148 213942165 707921462 587735478 617139302 222138498 516394786 395896886 819229432 494522536 525107893 245589519 421645432 372989164 971785495 614974612 680053092 853974994 880943453 627327073 709308590 877910170 939887949 144731154 943129226 751175106 776548511 340758421 525575149 991013119 994081243 10324324 309026336 263367884 524959121 243332409 263889572 905363823 908205515 342939260 379508921 361434814 896835967 214112662 227517297 2102152 167481015 421078796 850977954 821738104 944047709 703957154 724287334 71281361 989950047 833348041 952124321 807768858 883629619 77708215 844953801 881744157 949588663 272836683 732632381 842859539 881628987 267436726 566329932 609729588 929024474 168718093 168900004 116927808 389156669 505345075 813808124 604695643 656845793 403999393 587022130 937528290 969592608 810217377 931917188 563402440 736443168 629990742 963929870 973865647 983780487 851325813 977711149 122420005 665207379 996241487 997241770 65493652 699255448 340435654 917485733 20904153 219093284 583607687 773999134 833760077 961623123 170517821 620443458 382188880 769302629 701053857 953523196 597208192 966088953 559344846 856290442 402536518 887829592 906167553 983731378 470953687 960529834 750387192 906147821 311120534 720668137 768198176 894774246 363567691 591785955 946399826 956622435 972790507 982137767 972173734 974576231 388211274 966040835 548019319 730469740 335617241 965630431 272884658 824970565 914360897 951120068 210893706 601186237 692531169 935166560 31075681 608247254 54072202 475445534 46240035 155469373 594437914 623081721 443597317 863661929 198535149 388946588 934129902 969863078 860316889 897709692 286503520 686361534 802021746 930684068 163613345 967357804 292053981 928887376 223388122 535584100 645787018 928872127 955742899 956117867 994151557 994500539 864845359 886028266 711065785 829113106 561900557 579428432 355248664 867619352 434559688 681623968 506276931 996061862 903044814 945754391 881937790 943259995 796327635 877174979 644568640 934817834 964442012 976949334 208974302 631163492 78108183 218913639 458153508 540508939 715561604 959451844 749757444 962565229 638285739 802836242 555283538 866876614 464778673 946516597 317296314 359994604 383134903 566949149 596503189 719226224 786718890 807553716 446856258 596126848 462446714 614359102 834247407 944445488 730575528 892769047 611258704 989570259 145467760 954546346 378954539 832730332 402278783 912768493 577792258 968689012 834375166 932146422 465267627 536820161 244101651 685889152 593836893 880549213 224891759 481761724 170459836 221476042 518801715 870324443 34949117 406339821 692562159 982721891 709690385 932810555 331365139 565192783 566017505 993739262 151535898 659424291 560540287 949720236 91849267 366506516 816595736 970974363 790031731 989147968 367619277 534421565 152569418 836311112 48872011 765335708 358510726 968901549 759552039 875489602 646525502 736878200 957882016 991699947 38608946 374653475 241048124 918796397 735054563 875147952 920325218 951243968 71053903 154435104 158607252 331583447 682875037 713185649 653048463 826886835 847502271 913019191 725695678 755768593 855736096 974348680 851708074 966027854 803873206 908076714 549869303 824511882 680286360 693180852 620830595 688000586 450926977 453862199 174349140 451589472 499388791 534100221 765613795 792803382 913116142 960202948 728865293 759947416 93696594 221934880 678779662 726093827 770965335 878956547 474697869 727540286 229239782 872622255 869805411 931876739 888230663 937484235 210743756 428656673 157847203 477990070 952697225 957974303 56167916 954843898 901412966 919588559 522902146 580742321 779982519 849418434 801642387 994188786 594124813 643813488 219319665 954441951 160327058 542420378 743017303 792926288 388336577 866259714 976812784 986319603 950177016 991770279 486226740 628810802 476294497 579939385 332864497 707831193 957859452 980938767 387927159 604092066 677545849 824675598 35097309 259475982 219547413 578400835 578563112 905306640 142667708 991046905 362093786 433110306 786234277 848219382 871768698 897509647 940917354 963373184 101746078 768073806 983996010 998686523 996866226 997366204 483394494 501128506 949396664 964633082 704729667 750211101 786155000 853687616 736169290 984967575 6266106 749174958 738865524 836707127 411092703 490349639 294755638 901612203 684811105 960388429 130330930 883490736 996367453 999259603 877938736 955334893 990430182 993190083 976054931 979690060 277894270 783439173 257452761 727383081 654610302 676308924 791152688 903509967 535824448 726321667 454525623 986824113 975429281 993342969 39739064 93741556 510861752 619068903 22352295 787745378 535862055 536965426 277467571 662358847 257675945 606450580 490191056 701620978 693125476 698364660 331321882 666997095 280647469 937297522 97705656 631951429 641369714 743156233 29893512 737382862 724641351 804499678 685183574 773977336 428911185 655134181 321571010 364286768 345193344 773777756 148902112 716826296 853024858 985799351 330457976 464904615 216139824 657900590 29228182 662638697 53080253 326478752 76528376 258079529 552780593 758324446 774942727 902005446 884148484 988286047 64566835 890795627 310092383 636847924 721620834 981059088 582101923 921292494 762713755 944570556 49596591 288607554 919958931 968371226 924905399 989801966 862716102 930793927 842123349 961887919 357435278 843882010 26750854 497861396 726195066 994078804 897714815 903831831 340773720 862972389 97994999 909900443 143204110 523407323 644990818 899594837 154861194 462061435 612349936 943120530 488943703 798284320 883226396 997229746 109759800 676372478 996291709 996645921 114412830 930484007 756565557 955691270 319828001 871871788 296691766 777295362 515437249 572857775 938980180 993257905 167402181 563352299 484496581 572558366 152219783 381332316 322563914 471570102 268740751 270870715 453504148 465065464 715461419 988206152 698997263 962391476 811841346 948128229 497670904 976358055 267360336 949091288 609629786 973635533 508350492 979694797 510267930 788675797 981058078 987658504 958072071 959547761 879238667 954850623 456245462 838517947 904248915 972556385 227196004 234511877 411323857 810191464 667647870 983210990 273518527 911234608 230633951 629996012 598427771 615750318 714060788 991721089 437837233 984132742 47227046 354955785 204422929 739075052 233989668 934896885 431231824 504231506 585637340 778399595 54038527 470348631 316108529 833765605 64074904 355558950 534160103 638280544 462831468 470068756 605672434 940151060 200783330 817694080 588212603 666156118 911287861 979334749 366936502 793899593 663551831 710241686 79418196 927917731 733498081 890878114 407585215 859830454 849073396 946974759 591934919 685094340 981724369 993087633 653567197 967091814 149891458 476845204 249397451 997463845 832147635 974935496 893660890 987805890 302557239 502945182 241207759 637486610 236732977 567545543 173688795 626230270 475582441 569357752 320543233 412983283 264939354 287283282 74006700 477452416 613949411 638211007 212713316 772692402 890466201 983517564 853262096 855179175 77663993 662026444 59029874 724024798 326323849 899852222 226517915 985373071 618950819 764196832 97287622 550680875 840926349 968025133 596758430 744768337 842139694 898081625 885043423 999285221 903492727 909282470 390096943 844477027 285530674 913544760 569674830 760174788 603569164 914193790 10486029 488541788 485047245 870956509 410274620 835617995 794651914 952531001 128321643 160668307 990257204 990884793 367139771 767513147 582555666 891882484 753150781 977578008 311033016 774007864 945376280 973859102 668122645 764545688 773161368 827581349 204132133 436246360 388421987 844317864 560061093 837924862 996811044 997181346 800777190 975828723 987030419 999291772 975532339 989556037 779739473 870055746 926023864 932883278 324417284 655076231 456310910 706182102 50259889 516621560 441444771 734528143 19410093 849384785 920130427 990666570 64869595 103354593 238272648 597525729 609024758 767589760 18904537 606840581 245799426 714256497 529091659 642608218 325768698 650859211 191575095 987622060 8058147 303062434 3389701 916229486 312973588 607884665 719589448 951583940 950171504 997738078 61816578 905123164 36304150 697872680 679319743 914995491 107152224 291704669 677540498 894023006 308076216 483619841 74567383 941479851 321479737 573153638 721848490 950875843 84834613 262695690 238663344 730428127 422204732 890581741 331205691 367614929 783430863 875113087 512283679 992975034 504962899 605428084 120569250 677282755 351888406 433892610 797239215 851205853 875357567 925245184 474302065 609727892 495546462 522322867 780346224 813079051 109924932 448948435 785691331 926320644 221552505 887392798 739664480 946476171 152882279 696910564 115217123 688295004 452190995 486656595 775018408 841457651 853328940 859461964 139659851 965808114 99862516 580946497 850457035 877006470 327823810 825311689 170863312 412431804 907186935 955950311 359046727 395963053 24446966 521829165 570787624 579739763 144430085 275734471 551220517 909395547 9063462 789468929 648431000 797861920 13475697 936757236 653844542 818928316 161568458 762844908 361924347 788668786 831171263 884454684 502767500 508732581 738905557 960330164 470886280 765623178 340071784 652067666 90915280 728586044 763133140 769902864 491358953 798251780 628219625 781119541 527052271 867927966 944255782 974003387 274018818 723137765 156374425 499588641 888992230 906285813 307339027 994120386 984804717 989245883 851871045 994539267 925114691 982342128 221730672 391731453 885408481 961144838 732992726 799549648 790736779 898507998 123748371 423899623 731638296 960042767 263141382 588260063 864564819 921106653 868264282 917239457 164632987 419641372 846526287 933706618 532990655 890859409 969768038 995112884 64990468 479583662 529181143 866771329 319764346 559254107 31951263 428244258 130860394 615855899 853153166 970920550 618943162 782769320 759403982 779590905 806714255 845363650 260407297 309193000 315744502 859486159 524213153 784672371 597789616 670055845 240409316 745893053 315249509 457045723 66261165 618648970 65570184 825502364 572336348 648283476 274074387 318123072 475040876 812137600 356666165 671285648 559494677 821428522 779924959 929972181 577633568 608592020 942093853 950198828 418271510 753946631 413064879 922845247 381069343 671355414 24117859 110798369 662105739 684822715 497277098 928881700 565615914 918804065 839187649 913475611 105203017 280784501 493323448 911564810 911360985 920237095 453249089 990694940 856953631 996506346 753961912 988132071 117552010 129456761 814291607 978466762 488812526 622963137 196703114 759582037 156203802 198700034 288856186 511126372 108158478 745303396 763355674 797185997 960663700 962215619 321802055 352059014 698014965 881096599 571009452 892537851 7856572 32585625 62509391 128235297 11780021 636067712 968941401 999095430 337985989 940239643 886446196 889353998 42321223 814484212 308933465 652229337 454746945 593683255 361683941 580411970 201419919 964344424 703136645 729745350 474354314 730881161 35747601 921152600 840784489 932447242 576751485 825559299 440504194 856206387 892031930 937612036 564772811 579745737 204459305 461097213 494598414 907879783 629593346 920639568 445624907 586007493 105788044 457905302 49822363 129907690 572478094 897261483 703121854 918783378 255794447 306208028 650452604 802695219 234351002 748421628 934924180 938773191 548161691 940069194 395978858 582141764 404338790 691432213 972210643 979067317 429524600 639738267 782656583 798599170 933301611 940017198 112237014 704871861 649917495 659259705 605788551 788811814 180911107 509219418 166258283 654843061 441212392 526428936 303654315 714779502 52891424 206584108 507579210 527366269 333961233 652512198 865786650 929786746 921904610 993497190 112247172 412152118 218239556 476515151 99485420 704409047 42807709 684714689 199975540 528427614 987102154 991273340 206913687 885345971 377618321 538857880 672182972 729424313 808653262 906708788 717807538 957749992 581642671 988429779 460299247 887596499 541912200 581264627 712085398 805299682 883567471 901342336 481994465 936910570 929928315 983264442 142436457 869839969 280170407 809306436 891153146 969210901 205984199 693962419 391103774 822468554 343377993 920190900 713666404 823091443 642591023 915075819 184678620 759952304 489776049 722326593 336566540 525417077 482262380 744039572 126612113 668562956 402860381 637001513 909784130 998864656 951056186 964943168 752022443 864943961 266175617 319693515 570003892 710666221 232920784 886621194 723979870 967814959 342017636 822116522 989741431 993635762 997830558 999256151 274303227 847438583 416931537 430537199 495689078 669269742 146137661 257959036 13588898 628629068 262027472 651009393 247411654 463255901 761566444 822030842 590598220 875852397 912181992 979591832 433857546 711907661 886363730 973709678 371895319 543836844 122784726 371525683 890456673 943786524 193249661 547221977 327812604 611584520 887125335 907077828 963650646 982188905 600445457 949803416 852417885 870191378 999109395 999111459 647172446 928648327 682736987 819864689 189502976 936332489 294731278 355364702 186857168 821936287 79967915 402006873 867835940 883129417 518379346 927830337 838690673 923860940 701424007 822307953 968755873 991425013 913990656 956919743 94830040 150008714 528113721 780750021 420584968 470280333 963731642 970672833 758023746 942280527 91148096 533551683 323987149 508375623 487630721 631833764 909993060 941825842 202945835 256548961 940938986 997400788 137342678 580928503 647557921 722240863 695861690 769389678 830585152 916752159 851844438 967976416 596221819 646379246 371556807 510678769 67079647 684102503 117388592 492194523 905271773 916999390 240435690 520622255 462997819 661283439 712553208 869061784 50804848 682548241 584434118 767493437 919315949 977525116 482888235 835646113 863851699 886315225 256185757 539510356 800076491 937589651 608535599 724942196 251586113 978670253 771723091 955058471 616821792 713867770 770401728 884241591 649769169 963566826 895559858 992416176 194857808 507740244 954423935 983562282 938362991 998782370 495894803 902818224 176873175 336742907 492034804 549113226 586012505 658587467 297527954 933808274 187396716 483889145 409291682 964653229 554697538 803376019 616051099 878522438 568144133 884306599 107859429 851687774 102297260 260630761 617101569 772210756 829966993 955285254 646961523 859094400 803999386 895511824 568438860 853279711 828816466 877912473 213991931 239104244 576270971 881040986 525918354 579480118 8193583 381998320 154448386 980014059 773616810 825128199 402326240 891423018 143535986 689248112 552806275 892935459 636219089 808825636 752776073 960682670 781841657 956011132 805309903 952665685 443182073 448639970 548286949 579669556 830037664 843943499 544565485 638320816 80194816 195393439 880076327 950044513 695559729 934269358 149043270 817667204 89809606 950658133 893745920 943330235 926433859 980648200 862793606 980224136 762589521 782563937 907907049 973685583 821619948 931927533 988053853 993100212 834423587 967000992 875654622 971104486 596387100 963980599 224500721 563653674 830145866 862787324 208147617 897531370 946262594 954299351 330449271 706955072 495574238 824441137 586225177 835615561 48083138 676253834 296635709 400083196 349386072 537065929 13632220 554004433 158174533 479779030 908138677 920684977 473960914 655561983 869576942 967649250 377350234 877783843 705257252 719679542 332483806 527707909 379783803 882508276 311810273 991970140 134941516 841102748 852491553 905287654 467398339 796715396 78987609 523425027 221181253 913036739 245461994 855630752 725920467 937422878 853632045 966523326 945002967 959512408 338189292 558726981 94367994 252697224 667959517 946158652 59129128 385866176 182115272 974672400 495848567 662550178 838220642 978069453 670203947 951886746 738959669 844144695 528702546 819830729 726147539 741208702 732075417 788002037 108769873 709239314 83781691 355275131 729390104 843349538 782930642 795359870 845177774 868778152 736242013 766739503 982799819 990544378 942644053 982628756 266794864 690325951 105259617 329576877 176323795 589404767 665310455 894735658 946940430 974891648 145049583 723817683 753459066 927848105 537314954 852816881 879755399 900709439 685699815 961206099 63098911 163900797 522749136 613318332 482243465 734116324 278749350 390552815 833828903 900310455 350959146 672158739 835315168 865395658 819490549 988664303 192182690 785246011 774290829 887972218 450493318 861785288 807245975 932062277 490254804 949195842 964523977 985546573 89203098 971745413 23231717 652468445 529562047 649963587 756421848 931911507 374452751 976992336 624940084 967886745 436365339 655648126 234744544 860734955 190369927 440317422 984353974 996746228 917251578 973912020 847686480 985008039 97919951 860896683 630049352 652387463 167017568 969868030 813262454 918678919 308058295 840400371 169373308 672610956 470012314 684728401 463347533 984058973 694069831 724305076 931659167 940259435 268429736 548275674 354708032 475563300 97223402 308922881 456019419 871814672 508283772 757466315 479294571 735858783 992692605 997030560 894949496 922901906 537506128 894477560 393869915 918758980 590194412 694105180 528201307 931244223 116159058 685394385 533789331 858967313 359107022 801365044 488199172 628114769 798417282 899032615 529927469 722942382 124450347 455325820 166932419 198674529 910358451 979183525 58397049 736446698 942028629 991275509 238265398 745693985 841756620 905880797 362227229 588145786 664307354 974772561 458523561 461655781 669724327 829389230 947253251 957527584 408352024 746730463 553261239 993510338 971836367 991621601 561978641 608007666 23021940 589859812 884721654 940452633 498603018 800040066 794503078 831970993 582812431 591354085 345033580 714187844 213637103 988452927 174967052 448448667 871480607 884317459 578328318 904287253 559707799 875619302 217616025 996422520 620605340 919216005 477427221 975235030 533253460 636879812 87615396 284419068 367618863 420474120 801509768 846797181 280235201 745511878 901039708 986234703 416313907 653116832 658584855 974933909 857638945 967861791 42695056 171928553 757043139 892188797 837223966 841268358 518561534 763866800 146895365 652750000 363368436 384801138 8510523 857271865 430635230 589781628 911020733 982994086 643651168 923731152 634215828 847107561 695910412 829075010 902560801 919423845 717659374 948083047 207418019 599730918 868052632 868459499 149069828 950748434 17443754 858847724 15228470 40702725 368896016 821287383 893234854 957748040 571330906 930072301 945088449 946669040 348463756 641105006 724443687 867745913 726738976 729485191 140757107 244917289 295595096 355052078 916612624 963173748 639195678 827682325 392789261 704049974 725737263 875712381 334336486 611842616 74084074 747144923 905277957 952688046 752383424 907087237 775592732 805443380 129196785 379481468 748729771 842699879 843556666 953698247 260289449 850762228 611290339 622365504 333890552 436280798 280272580 607326896 769862364 880540764 563376857 651553974 945330091 957671641 183557907 597588989 781552630 968210104 551976994 865757052 92575726 508406698 945050681 992971642 59895824 217224470 165502639 998618235 874488393 955714082 832841368 929127290 557509364 874075156 806836228 990532842 728374557 969283113 722730537 916001163 681646324 860844795 184285901 857200704 575375564 602929455 842963868 927623545 352831778 819527413 581295093 819921540 615568693 946345074 966039630 975093964 610683690 660634171 4114336 690909152 374769330 936427807 791407985 967112919 41635226 54469486 125118374 743494390 371108980 892838252 337499036 574356827 441077695 955135442 858654957 871683542 837757206 985732453 371139328 774068869 309673398 756019562 14700482 111052755 545880558 824606758 756244568 812244891 548985738 889056526 280042541 499185367 828124810 833837702 671124567 985097704 299338825 914940287 51497190 950160219 44346273 341551425 733393046 904190204 585356105 963316502 805379998 919273291 554730390 935185706 910954221 932086274 654692791 811276347 394208530 516158283 980187897 993326670 440928877 578258524 120320053 409354984 380398155 664697505 564044020 917199301 880937149 934806114 780009668 829323383 935780271 961170430 508188018 627983036 738206748 831257196 375521851 795388939 508180143 542674771 10015303 348575687 949131061 997334666 857994953 909996045 611779316 702047414 738627275 964228508 576246428 788808719 429275377 985852966 157971831 595977728 118574910 527911973 780814388 919452139 240407148 416526880 455745781 585067914 4294443 329386611 894839901 978326673 785343507 991050439 521605459 569651012 405781535 797860109 804134691 914082404 227908498 365787399 182461210 723615525 125412675 663421442 484008527 616362249 2291574 592175833 654557264 896743546 880617476 896779618 617196996 952611045 723825626 839209220 726541379 984518262 846391343 954848786 865320464 905643826 601802898 783934908 381268653 865166589 374060280 401051804 726394563 832649029 901074841 992609769 138012640 231053602 23050980 692091996 655206588 688528907 697481755 927329554 49736260 737178214 414052556 454712982 465709843 623329269 623576130 757793024 686208724 980620681 585437611 629777034 319275463 581029781 857177731 936756552 463401264 469440456 848960040 951842514 867089570 939905879 482649014 971067414 753543140 881889637 566523315 681132836 219155338 986606889 491711561 833607066 483779407 918627950 630939335 710196403 990400043 992329737 898895842 972517990 519379743 683676493 532418142 598657336 398890530 974646184 214532614 271821912 15803592 498246167 855393678 866396504 131768526 911613448 859488991 863739338 129313192 210903329 150166382 383148995 258137244 573839965 548074002 780534622 982149825 992966800 472706697 622695298 542973600 588561982 906203930 926367037 628122502 628340633 610107491 670330761 14206317 512363015 283045037 573316140 423008459 784849628 968375352 979719301 221150514 466070046 231480748 369653153 903728982 928001400 508854595 886938659 304765377 374991180 390349687 416645403 347077904 543202719 541769411 590386935 239253514 888860077 612399837 633440153 810340824 817695182 777183221 994061207 467979432 924479957 238436533 718536159 613734437 912134347 314266573 772281445 474227486 863174691 801682565 812232465 467793043 872169037 363729117 605393732 352613611 867396632 439281168 562042200 312409081 976632253 300889738 430674916 855994088 912590348 287999967 650252470 572823950 952899562 524268750 586116044 725278385 883238722 97283558 367794228 12465457 372376615 226992787 695583225 753160448 997917821 917542602 993654841 707226831 830443115 775610854 818354501 876166235 944153531 585489837 867075563 945744482 949060972 261083984 966679293 47710154 399252892 831317520 873478147 599407398 668440403 416818816 624378935 266611677 280611770 747604771 828147127 570102271 806985333 981465852 992082686 353061067 681487144 459561696 720333818 718559270 751461865 210059270 210920353 667535278 692855771 605869052 705216721 247918415 288429282 226511844 643461071 495622110 696600018 49022471 989236674 911193427 942924095 413236592 532543306 224939512 802349595 215396323 946317212 743187562 892636533 641362314 991630116 984866472 990964789 831884773 871874446 358070069 620023771 567411636 953007905 58586793 600234695 2826437 370097906 335776857 982467943 874620257 920888047 421378054 991390471 138675212 438618718 450090443 923938455 122126395 492224369 471354080 628536846 967915396 971633843 390998455 505783403 179689550 334389069 501779876 614537072 81597544 301028848 669563682 830058510 138196732 785889015 550499383 770763499 182776403 192145448 665752565 903592986 68795575 334969542 589492658 807138826 29395323 138670546 639331705 700207243 571085377 897986910 177900529 832575762 334915077 349110342 614648389 870438900 328157012 718742495 832458786 855084177 218788847 758439164 58242542 430498805 409327176 676845390 524671698 707734268 781730783 971649328 838461463 951651954 285995493 679160813 439349489 642052148 998100640 998716263 59102524 587082383 324209888 970625364 574299871 941705133 957027682 969239479 160129662 256806612 774272235 937557556 531861804 891073707 580903815 642962918 54980647 421168291 681071238 894206480 535124520 893943765 966082937 976180639 100711178 462290899 846130932 992761058 201742355 649636978 581228371 872979680 533682133 630688148 954543659 955219389 980379586 990652819 855035341 864736132 658751283 871385913 410559996 679747230 620584126 845723590 526641454 837401372 327227311 921823348 294912544 815465317 664655894 925663608 852303228 965582423 232904866 961437609 316304419 525930950 806636998 993874819 528075744 577551155 236558879 858184668 639522687 751636032 866764005 915830650 758509467 812813150 347075428 454476302 545310679 700832454 871959063 997333453 913041181 979042593 544059762 704216609 416654791 488102464 538476754 623349154 551826836 725425083 282691851 822437607 868123526 912802435 397772580 784667030 298732701 987148907 491516684 873692478 156380093 365937130 660397941 664621857 587252970 737585396 521830699 968176449 259889041 808792275 915508038 977348681 806904815 875041015 962077402 980311584 864578883 940994949 706792155 966633784 323316110 665625715 914984795 919300657 145656271 836819555 259904707 904511332 824677460 872068960 558728806 926082781 377332999 468623029 275928416 307172249 134144383 192489268 255656032 329574208 562433290 665201158 892648431 957581952 161556562 308063529 263322478 338381027 784679911 871057542 514753866 579159706 317206154 518528685 434248436 566720880 952338603 976569344 204200539 998041026 1587042 953767238 959609624 967418002 913081966 930256966 445858322 955470250 99101197 545208604 980393201 999384138 614379959 981784707 458951244 926651237 707019012 949450451 386162314 673550432 847121909 896035034 286288901 721971576 936191292 976843132 871417169 912097689 172212293 777968679 528778844 557586647 437137445 789635233 341200764 953651681 129045240 775800222 962830054 986627652 35952489 869183243 562513303 568092059 818992485 829463295 161668048 824862427 861350829 924924864 63894609 383787676 143328025 517489098 872874794 893804113 617412827 980271153 336158812 806747073 114954613 634217399 572445676 761115798 218870634 525043831 340331924 663329024 717445861 786287169 919467375 957748514 216401782 685263484 476394530 764515807 861686536 905723394 645472576 753613286 714742544 726648986 495788614 733490427 774076068 988770616 323066604 576885534 304926846 550966516 835603752 988457242 108906011 416552701 258281094 276721063 668117257 939526815 730089979 977878040 97909594 816332907 335558219 702334059 894691771 976628945 886491114 973631295 402694984 850266273 730382236 856392853 443670573 664944262 983064273 996854610 166836577 587916906 713371755 814371861 481230949 658130150 163222823 628135218 494728716 902390427 594601398 961740292 90292193 985777975 665115929 887892100 867188388 951925926 609773730 621090171 132109039 960639140 952484687 985099686 122301195 479927830 74442158 919050802 758052209 946314707 687359445 809839667 518879144 659386427 722318966 764878456 132175269 788640727 131971302 423873689 560597018 854956762 100094352 519221493 73883385 342426099 449901154 731738358 797075496 835448152 849009320 858965604 800999764 909257604 610733712 918974040 195928122 523186206 782762116 869630881 257680451 578596014 316354118 628638432 332962923 919208223 863496610 971986167 340726893 388784378 194593916 713774879 414636722 495958835 74529971 832134328 821656020 952141679 578418512 716193201 633332724 959669223 755836412 876914049 377719888 838658001 855291135 870237529 687066212 962636672 171641082 898024804 267957302 277461667 191946418 539670711 418939281 763491841 8403841 153913347 882090294 985207287 170342821 951233955 495184594 883961916 450051009 523047298 757901488 870632222 343377076 841394915 438323983 703029928 466004361 855620170 160386291 232170150 570597126 705144147 681690996 865312331 108431509 652429104 147135136 469772741 481949359 730819633 16227885 353146649 576697380 812532959 851113160 978446458 243833992 641859403 658681462 956278008 600127760 737051700 317231354 642889288 982292218 983015454 493628315 993844571 771461355 840783890 348070021 354790621 445260346 656617122 330644684 414021822 283573187 380407955 205503042 424463415 327016966 740147865 444624584 490175739 962285841 976652024 851607865 856241859 996577703 996914951 726757682 901571178 641144717 742323164 53501819 671485039 858971453 916258014 892340687 927772144 309633734 678496774 911361342 917524538 465830159 743668313 725718047 990920796 653419796 845465560 211024529 569664587 586227317 616978373 445068989 472509742 499153858 675405912 822181535 948048618 964373120 986414860 800172171 985576404 284102654 891885602 159161508 290953170 37349042 673442668 581024042 830713096 316881721 709301846 596515162 665876197 157523517 423913854 358175585 712625238 318319898 319847997 312214273 338238892 987368138 991446662 443729777 731030024 429334391 438844769 491948835 669803239 44228436 262308282 810844811 997053860 768515308 821711088 771141086 899232366 366642035 715608579 523512659 818308541 168610443 550716567 758533291 960226990 519257022 786539284 949691694 949947319 48627512 735633227 126754392 951224535 504686770 712333625 692411175 732546794 132922544 869099708 899339890 911470919 553919888 874931684 750501046 801425310 78605065 955771017 78076457 355653289 181145051 278117630 637406350 823405041 910912393 913795295 430343827 610266920 72379568 462267311 103031475 984611212 404805479 819040500 882415586 890452416 749290101 775078190 971123460 995488187 598266635 934533374 589420131 920210906 945579560 949828367 385720258 431122755 905128936 924197803 715297917 923440772 756187557 889102704 701819681 856994330 26596132 58730983 116200310 643857958 292409327 984175934 788071785 938339036 70691611 783101997 770258961 813528679 670320657 838901367 857489805 967988135 756974552 825614613 894033107 936322349 727797506 783292926 247262338 933382039 139624727 571456631 378334436 407865532 163381053 837279550 389817017 618827114 786485984 965076940 567175228 689844085 959743674 987174193 836569340 844978859 171271350 350125544 25240325 153191261 488175604 790045897 788205224 928340780 834983881 859915052 234668037 467811847 96220611 677062740 740538628 867035618 998570349 999362438 933321955 943361268 446060280 666766869 125821142 470680913 536449394 768548262 863266964 947559716 938193309 956213651 632588712 883374936 641940587 881896176 673993825 707511234 934756340 989735093 726718436 974550478 571161798 684112914 890415801 911170731 454272542 919056765 359722139 625195501 651084112 866006490 800686437 929680195 830418340 954882183 180089547 734185247 432855168 457491889 584547394 863198706 277998791 361377277 692336463 794806210 281029508 862885464 124489613 773909316 556773903 945487323 873113018 922250477 728374366 988970637 313448357 873166356 232295389 906576217 990427725 995273008 484290072 756289587 228478109 308089839 450944253 870712082 479190341 499008300 639014543 816419960 85127779 570619949 59101426 133787562 309286623 510302618 291149456 301482439 466781524 743340072 689864441 898972386 121009449 446170658 463800507 714574748 174784778 604881746 13017050 575559270 129566909 206171483 468667088 566606487 280523709 974616292 842402790 901677949 260859776 493401895 541954047 619586311 254945526 587773719 37504202 186498620 381093067 414787386 69771141 666784762 769348432 774332417 468045618 751546595 395836604 789068940 128499861 162040561 866432216 978556376 261873745 452568221 198954284 521741735 185971765 618967171 891116108 964874344 992776330 996010790 940469663 944975863 302592828 591527700 886872816 946966476 651266275 904347474 844052122 953487559 124521859 322075350 738147706 791556395 526376616 779391867 952187067 961462713 491752842 981409429 309337980 629383423 636062255 791437548 267566608 809254237 434656744 525541855 958602929 999121016 482449199 839050656 554943213 932342482 594789674 633370663 282961042 491756315 518524279 702158521 181553351 923053861 548928618 946397972 40931827 883766479 270060277 357474580 867894732 903949113 195750886 445478515 250016362 384558480 639768067 966104396 699678845 793130677 790565940 941899207 361156911 980191373 919222517 944955524 671694944 697551234 192761291 690794092 507002478 527550897 48737482 896266747 968973768 969650677 16911378 358139103 886120108 971047659 748169423 830169489 117046472 190729285 142400402 144497854 846222028 887826068 535790313 845767843 515407117 668484970 793201257 924367810 131620782 793068300 980230253 988965515 558462727 916206478 573207211 757806493 846451673 930962458 623096567 846884735 16130710 733088522 581946911 753477318 585231764 971332651 305749724 997180505 502575254 991819336 505841893 610066547 698153733 788782271 535152153 709078150 190290155 205414337 22500394 897927540 786975881 795535562 146688959 633525260 69919954 577475791 84654454 219966795 5220883 825205019 204680594 712332792 996764819 996883497 478830387 925772331 523849142 855833001 930500402 945216636 184521549 798253274 849435687 853519066 689294786 720648508 630768479 896538040 752556971 923045982 190436757 290664994 440982777 809954949 523643746 610794486 753733865 952301477 144238813 228891511 598411445 722397266 10733548 965385972 732636617 936631098 460371130 723335124 794165494 879313139 347326954 422361309 292019703 839088190 473501614 533004345 197593412 455328241 744247696 918683103 445364827 771155609 209705546 916188789 422338270 429061014 445664955 957684854 12951385 470884624 264602560 318608983 648628533 901428170 317924061 344358367 302856961 583045713 290447999 473672035 764251746 812580194 662158648 911542806 584509653 688965533 664614929 981414940 89559910 111394689 805555449 917149974 176175107 742541266 977869089 986424429 740992345 917086534 769522737 955520676 184080286 627893142 967705170 997593652 663828126 764508307 939460982 978295075 591764436 634034887 285807961 723939514 665242142 694531113 536237283 960091530 963220751 980071186 629574662 759262473 451469697 503818491 11347428 154618067 289645889 622321395 460330071 611720873 1542317 336161109 531313352 603083562 996082616 996155622 693856980 711419871 827145728 920124160 611120371 905723520 808945140 893849851 310732069 794573936 327675515 526008887 189063035 595525080 11565136 824056237 590826435 710925653 603917829 664784108 231983554 491486981 899275755 919292519 20529227 723665322 381107323 683298006 55628379 258159324 954939825 990059478 786837996 859498388 719676693 858250732 510792675 903565999 958788041 991733978 120909538 275082173 494160547 900301600 978338184 980921733 406834076 426766313 422079727 631142173 833964777 911157694 439538555 884714641 47175 107337845 603916677 745709049 217591573 847189399 725014420 903430727 510529637 549895713 492222995 925589746 684500017 723559054 695454130 773293109 732481194 993621743 31602921 778885506 756973771 846411147 270964145 445572975 774300138 839645876 895865253 986115437 586990267 870957264 708020709 831161970 796318720 955841795 563124069 609740026 671612872 995018367 742638587 972459558 303482385 427132874 820120408 967617477 474340455 649221808 968531242 987862297 918579884 990258189 769677248 944053158 799317095 917547982 930948781 972052646 40894299 589102650 876895999 919968153 423728277 900442753 470320031 856368219 715379370 930153468 386594596 712018393 607507869 907743927 694358280 698058620 562089209 701686813 211991880 756891569 243069946 344268732 31393172 946507921 480833815 814873550 22080222 93299527 359735670 374796334 253411754 597090937 961461174 963799100 823214741 934742164 163184792 565147402 665680592 959246981 592354916 966539815 914890714 937630769 60839741 305953831 471969636 685115834 97382013 165807199 590980227 769641747 136595801 537886451 810853781 836375611 106625748 742067335 982592437 986115297 427177980 985511670 973336297 987713088 802974648 809513872 44786172 943096111 757170088 914234739 418542221 490862079 992901202 997872114 958466227 975529120 708086426 748918000 261033923 805238906 23650958 363527412 215279223 249838876 589270945 783839485 155861348 714920184 912598549 926079971 426163383 565947158 889986717 994292667 789589859 951387229 134576118 625461434 736285292 811576891 428126830 714694608 59885216 589420423 906337052 941184229 3324592 428853015 928996137 932214694 186855920 678969727 368289746 960874269 133623587 431836772 119299168 621954905 758719526 826320535 166703141 668510853 671353334 847548285 289097879 492030268 562250024 982882089 898381888 954400767 381075865 699858914 594805254 995785744 803186230 894809979 123476333 861182951 770277631 891745639 671855660 732747514 424898353 832577590 406764887 750240666 806786519 858123072 497746486 666373879 199744182 501189059 611804417 629461541 261987332 772361745 146896142 528637824 423490506 592431067 591624322 872138138 126845106 444579367 147989755 200936787 96923472 105346479 107988551 814931266 16866464 88548434 602338370 684895025 647477895 890964653 161650013 341085789 395253819 411375176 776972643 964712429 137394678 909403878 636245343 979729629 97154107 529259831 422358091 995710391 169896171 940437634 470516454 948496055 817924542 859734852 355644844 436946165 97156328 594769487 196738906 298104480 597978085 950984062 777828227 861086302 654950046 997422890 663324091 706680337 112111443 666200695 921949558 958054951 643174156 950307974 828844769 900843626 694287551 989974820 425706484 778187452 344319131 442174141 680087272 745124449 807930859 895870230 344255020 702796168 911829680 960341368 155786587 244398556 904661757 907920478 274237152 403355391 223520538 616768392 670356908 694314814 633549519 753217945 627119742 743158491 329707657 870553275 222872704 975746944 895182592 925503550 173851659 312179996 677033638 966022798 584717315 739996517 452647686 525369692 452626184 553845457 848553941 897231795 116121093 345869383 373481641 995751009 144561746 855860365 669404603 856587919 894674351 930981990 231931014 617684227 475842966 574166396 416431378 469146014 908802273 921052242 457038260 737693712 414714814 712766495 673712599 837914410 463379556 514590522 587019366 808272265 665942389 901334972 819011786 956612962 620676533 739581314 873293603 921971774 470896268 883260742 97391644 231130153 89281414 214461436 847847296 952776761 975116265 992947665 631224085 877667069 741426075 815550240 506393221 690237325 146458936 583067871 249870140 893523945 203577472 229813324 845815501 909178370 842324170 887711987 67698123 475131234 478529471 648466595 647939043 820577916 226264313 774884733 686821916 742783000 790711637 958950778 561860610 997747498 135126426 404734410 352437864 429062669 378753224 480513553 508951190 987831714 500814682 782315868 83161464 188785339 663032417 730550946 921235749 976927488 730891266 883472795 153055973 526782165 659299130 946086985 961118370 968156891 691718055 799232586 393787201 471065157 947829804 951014782 148003865 571558542 182616092 728861022 312935465 734046257 268542443 288015157 319021843 622615602 943910324 983075729 870386660 923734164 770983825 882676043 490092923 759102294 244548334 921530505 487049503 955238820 13403808 841373886 885048638 951837763 756536894 954469974 124980950 167729777 567713540 854475115 283967718 551128657 633184883 714148880 804109305 917204299 689619633 974288040 984548304 991791542 875337257 978425540 856651847 887050899 741351282 877534807 704933777 730014144 226142760 305784820 801841247 946860667 698655292 845901679 603388851 995686104 681493075 992397308 737744338 961085001 858449242 943217844 815702425 821963663 642854450 803942126 840102766 995352892 496020414 983158400 671654824 684170961 118974821 722529059 837839099 883493729 489725086 902154464 161774567 717167068 716358401 914257627 581118393 947909298 142767904 913143673 120134603 856560175 385634656 931285153 655435908 874635575 509082805 862592261 940678939 969752112 915593871 987208761 857073195 971985272 207763276 938340632 39575424 537913813 313997911 691207670 2487068 129728493 375365736 463409010 808368877 870941876 745850779 838201318 132170198 184302381 253829128 852043836 699579703 778974447 385292693 554932600 207478786 492611419 365163287 442036137 955740197 958304115 903552614 976319528 322968548 468436597 146490141 505394796 593716762 699522490 337613616 928935667 539004237 786539799 268580846 591215836 896366133 934096557 117686086 902275010 326681337 935888007 375955111 430766464 401403311 734732628 415338566 808008207 384443311 729551900 692495166 961695900 15718511 766045764 733756759 893912849 808367534 820555147 774036241 881613258 482530056 640513408 508575911 579975878 867461720 969850868 320624522 475905383 234751479 829054978 530077768 793150758 166261867 560081313 453643336 613286477 736989083 761646264 686530153 848862378 605011638 620942899 801514065 989772946 868337604 912900999 521615237 626440795 699270405 740001169 474161535 951717077 826826468 943189230 199434259 692717893 80994443 825950206 904003165 906600518 545238158 565094983 242087470 998569262 245437187 554451549 333710113 563642107 87237384 851317826 396840607 664163713 995579858 996362846 884414937 951879140 587161749 846776386 507875197 814051670 486383641 564466063 745178258 977483164 789744533 876916640 822616783 943873434 770031930 953171332 791432199 915812229 774756741 911169916 243823189 603908088 44194866 765375603 522986725 752384714 455934068 721648715 352171456 714240047 943032939 979076554 150878702 251693406 914210314 959732615 805259546 821071474 839545122 840715069 701032498 918828421 145863832 747480806 808659176 818826027 705340280 788370109 778433779 998047810 531502931 719764512 235394555 597202248 888568590 917437698 827293731 873148293 647703554 812522314 717506942 875879485 4281553 488861767 541626221 634223132 546363563 564301779 489769857 929956060 589260902 629164634 67681232 481631531 52145659 297065018 474977872 655947536 501853553 698188309 846251247 882054130 269130663 793605652 138863768 468918596 881764188 883667169 739915205 818939272 557730447 616989990 165304488 621657758 153675052 459317736 891028893 967095155 859955649 963019034 534965168 758668438 326566312 496656324 37084166 427976571 929502392 978542215 543973639 853456147 998768765 998892212 845110990 880792467 603534133 930815841 439369444 959087639 766479361 912678182 906158419 997370837 877928180 959419950 567955146 745779558 453148263 717156823 880632707 941515253 730014052 946226507 833469219 940188665 501369587 691510594 442632906 810824320 304090821 601821243 989614828 994016938 451691817 551945960 250642657 377863338 315623010 620528323 650688958 714836241 102380438 923748479 29304195 305961551 601337708 847342156 285544441 340918474 808275547 985226986 114471800 275773730 46316484 57256687 839223512 988715022 209541670 251926784 940540626 958821876 673265602 673696173 115419016 837543613 577783692 886954079 611466426 645837013 622361623 722069259 765568667 982722007 225220927 294646591 757864560 804506368 612378597 746015502 401432471 614070399 447289084 777844341 282892355 888893057 78641655 305006650 5842344 347013013 57999481 947840183 208319836 950717824 682363347 863100104 235278887 731391854 562683896 873947512 977273642 993551851 200620511 652425034 324373947 689206380 101501606 496195613 401120906 703539510 754868572 820877090 314941457 501428456 365910788 693958905 939100322 959919123 713973318 752447634 323960970 613169597 553813171 741759099 45782193 678383372 389615243 733605678 60031460 232873845 315252509 904572548 79691580 435003256 126360910 666973823 605938505 710695950 738113738 771491404 298916142 862220096 169925755 457883848 432102567 860261768 497233510 857173335 384520479 531132908 591666873 680379592 78721455 119930558 480259614 771047654 372304214 416964851 293439844 856872698 432057442 575003732 586499655 854717412 281700180 745903230 877756855 957222752 916010053 958078768 985673377 994389722 675159169 898910257 89974039 919179137 476269490 488613887 895153424 989417576 109402890 898797840 47926024 222052649 108519861 585549882 292885569 484531087 230334432 939015154 9064916 591082874 451294155 729033119 166181075 451491996 49270916 754898916 169804130 485758461 866015163 920880825 957130811 989806217 978490851 986671259 411141840 878056133 767205030 923289138 196051660 505053808 292022456 628030335 937043294 979925799 277824208 459180038 525813691 620355546 294424663 617392121 296268 11641583 715181066 933768958 764446768 979212991 461859754 665037758 182925344 412202606 255460151 812766595 400501580 927641677 460345882 638853388 939151061 974886765 200184565 805376649 750426488 792611712 99419197 319905159 696599412 720069124 701933703 703096366 684533205 847335718 746773353 920795357 892568098 938302225 511635471 806417179 530070767 852209223 69133919 240735582 988224049 995166548 358077521 874956118 851432192 981430552 549518340 968174327 997345062 998279032 514641201 517596993 147039064 706719532 816285890 866520080 823556234 953448501 671189658 915592649 473245302 831660401 599127704 838762930 574033452 724834231 868950904 966323203 193967127 835140497 867061608 878880164 392299855 578216876 421464420 693384889 366536538 830263636 106561712 304890423 307297510 441875520 388208110 614178762 235776690 512592536 327385708 979301214 691993761 979881058 620310843 676893909 234486876 578202101 876653646 889031194 647947819 831447907 963967181 969368068 409534712 917077930 820806985 962147621 483993263 658508573 177455336 712590611 914116313 920292019 891143820 979698432 847047682 968153854 919607941 958915817 923382531 973424924 618234385 796275707 650602773 745217686 81420514 456048959 804795455 965183072 592361394 603721164 219283161 639812340 567719691 789626584 809191189 983646114 887299960 965917363 475716154 940948103 824314703 903853793 525990552 841429070 281937601 919371138 46423195 908154772 239717572 844479913 970686175 997469332 846970813 968618055 591395610 765548777 199487379 697652632 464594838 779602236 876726076 976912842 568782313 908976518 585084963 612630797 241744309 871504112 431775039 802394052 699248435 976305113 551348595 760022124 806224564 830421147 355126457 510893350 421538503 634102709 671621169 751772503 459031450 563970957 805799301 949908810 663313067 859818165 478531916 667217167 177121930 222863338 475652868 728949211 908640693 963054663 470950487 985082519 630633735 865640365 40701152 508932336 175572009 949580199 50225293 95687346 848360570 913722546 517803476 766992103 799368420 958388291 515215091 863186172 316439709 779823613 790228498 874546013 39966574 789862770 972287390 995851867 872214327 939364948 125184089 960803131 605691546 744368187 707506425 859943991 297607165 311833510 282539009 874513793 371773973 411588513 917468331 994103060 607726399 753928766 564327453 941446164 331183068 971001977 549561141 635083092 823530135 921640475 879956875 995341501 223306490 425432179 630812734 694142271 914733992 930965583 818003323 885428816 295116294 729381730 55318388 340886412 998945356 999076938 762440139 921854845 596678353 986333742 8304971 520019808 721271573 909356150 184487312 474370989 852094871 878771233 77027686 867798073 515925800 609798180 323177540 796666513 168354422 557966463 753600332 873988890 609114181 817133809 19060954 633653229 846723016 888152997 357612443 488911729 143067427 689854460 813347215 842026091 864138190 922814656 420773600 985033737 355299631 629464895 952385311 987860420 17755918 990781781 138561344 570745953 938410751 938431950 237920564 315326477 674322324 768468933 45769341 593536299 843896234 941250565 816913988 963964027 157714047 254102246 832416121 857247051 539900634 735582439 224796141 390060687 804495576 901494844 322953454 943742170 622904636 879244750 885531880 906995277 607157372 964064062 812520509 966490865 812311255 961380780 104869193 161291922 180698561 694666524 165904329 963266142 171411408 265610199 871361751 919296685 695810279 870334625 252366245 364926636 300733624 508737689 65426368 92630405 551807801 602148475 169481137 857577591 610723881 698685576 642214253 836376278 506684695 800824853 442441608 775545633 723054798 728189721 997036329 998993034 281833167 495847073 369209748 482415233 736967498 781412733 259049365 529420130 10165366 393486788 7910007 210057179 265559202 903843807 389383497 482466936 137029784 147012645 258804029 408946416 337440123 750345125 558189212 563245020 389600636 986889013 423400382 543367766 768320279 888510122 183674209 469787218 300006710 300995222 792710029 939038191 831680119 961975119 1612841 494899324 965355862 974240359 395102736 979323220 298047983 360903670 862034668 946167011 90846914 987167762 722183330 879911193 429632820 441330250 352187784 492583358 486762970 627865364 212186861 329448179 602706762 919964507 335526257 354651735 181342207 271944088 900787460 945416475 958128633 968468322 594854419 767524298 643305285 767508250 487188883 793193070 181034541 501181009 623581090 923519538 289017375 722331267 785808209 993201981 145097041 802671630 97956389 216436373 52153730 241353488 511637073 653547659 282114303 982211359 414478626 955545431 655934143 824196482 133459646 254109137 912496437 988831064 887538504 912649695 407126795 458528696 692422437 932587895 743862070 915538574 642666088 839427761 504943893 676115751 439335658 970507141 959777024 969501230 900629583 977482135 942911196 947730942 459065809 726900480 21484928 571874642 942208983 976798935 417899276 713835724 479419412 962192086 313788931 387343553 890855249 920097716 313349281 914046460 848613607 907740322 49893047 867198774 437060463 866537922 571160280 905424342 19753063 110906049 602289023 672992230 432991648 779964062 833012182 996563384 865454696 870583148 462283148 660916449 965276898 971000009 901316182 965207031 235534775 369871233 768971243 881495932 183977737 469702713 281495687 708235032 271894448 840653436 11997403 516190993 110831851 191394040 112677054 589289277 571621782 887511688 644580614 696916961 54772157 963584902 505730052 951665124 90424310 529343104 2760368 883205892 144890296 638422280 546264482 944752729 534464222 548885540 555916053 742038562 152650276 373014228 812027002 828394114 484912336 866651589 633194894 649584614 955586728 984414194 758216952 931002974 892990506 939746647 517272342 562898060 979290591 993306872 457074897 889733259 632102656 870526139 128294496 853912416 203721670 921155365 74902458 328640969 844002217 946637826 813898588 846294293 238614815 686827848 984528189 988073274 353882352 369771279 862228005 964502711 587526431 775821593 275305984 915903394 801456925 850723551 331403164 917661173 593235563 807866048 46042753 942899645 3199729 195961129 708202722 951479916 326133521 797329795 201136709 597272080 204630229 932950895 611854293 905421070 170313674 586589292 467816003 963311762 694578841 831107656 600333523 682108316 844706474 968053581 701199892 946716203 431758641 729336032 546959729 993447897 878707667 954180093 901226027 905823026 256316912 406984028 942039250 955102720 749189312 856767665 972972569 980067090 216692751 998102031 35006889 200082043 438334186 680280416 678436316 744547795 127342984 296963745 866051075 872353838 548328499 862431208 481466898 626020173 710814702 864801663 234365861 912419066 201036952 819428834 864069502 968675245 744536033 846370651 108503302 723140835 928408556 961277270 838555458 896764135 865734108 910713996 822328155 979928534 411803515 763375662 528166240 998981474 966296553 968930853 311223195 742502437 769392721 835758078 235003028 432901231 985117156 999105949 904274799 997654036 369547426 472289440 760430763 997865004 535751550 937351080 203847638 313730042 797855289 924718194 302360176 319936886 894518375 912658870 319003301 392816218 223136386 824355938 84290153 151309588 700700703 838918840 2684073 677340730 212418342 607653749 12579194 422809999 241831026 991987592 401854230 435395609 726566253 965153504 438211036 998554077 132797667 192528667 617522870 747654893 287756399 374311393 135754694 835798398 717501937 788389189 234859952 617200598 828486164 859458066 377269166 491890816 365557144 541973993 818834657 829153884 471771902 566633745 809416258 850442443 78421937 772012506 63421566 732097955 810993953 890589126 778415852 851851158 974872495 993248057 591919135 771548096 302909949 633478735 540879545 662106719 228865295 699125264 28604110 684211251 300249823 473157166 527661556 899385059 288916458 393585022 246022370 755960565 32751997 601201327 643416153 935424715 813016558 830914456 235695548 500582783 106591719 641531589 681182173 900495001 676896500 986463354 240030624 411473663 330627697 900382019 688567349 740299225 483550746 992463129 716977498 906830539 984509640 985068977 182506199 813056027 635145147 988344158 171349668 180206895 893527842 914964326 559002550 738508937 920331282 973745011 532656944 874755709 971965032 995550691 92660320 925518853 308482048 382746308 929273101 970631443 824911303 899982684 727612593 860113055 303793616 485245067 114840684 215314467 410569527 829668680 398621523 804814206 2642318 271536821 873789277 932549046 706545351 793516777 310453047 417634114 575809374 621223212 530712467 896951037 342881372 343187266 882678940 938393945 828887572 912619881 102449570 630972705 434524644 593738796 647856302 926963263 875179875 947817356 343972809 419182988 489339080 686569227 841421258 923147143 653061537 746262281 178046700 582754471 684018019 970331788 284359101 726084767 856034639 880288455 648113014 960297184 436467756 516425308 188003066 936451140 716717363 872697676 570839129 813826007 166680474 708668801 960106407 998233436 544392883 873887205 587240992 593925505 122634639 242705221 898488581 981944545 863534474 864287426 115856055 563759845 429112404 984707255 362530193 567790218 918879911 996540610 897676238 926550989 345327603 491374680 787436170 799938127 349684028 893427757 272994958 811116693 345085281 858822103 159798994 243880718 553678149 587824559 770760465 936028499 597067976 931787794 55181039 828606085 952352701 953906605 776724419 815941536 844563076 891536125 607316779 915779305 628738423 720834188 709261994 942112561 22723266 438932863 298796582 567655616 93000896 353875340 363651508 547158527 475625162 766701763 502097471 900159719 629647794 818808109 61336893 229916547 200169020 759795315 892944950 995380113 38654783 881380506 588444233 597056241 975758748 992974210 221638872 291591053 385244858 723929015 416202139 610034334 576473096 774996872 684316686 763541844 496250410 795125781 169297625 172351646 500206739 562321539 998895776 999286214 953424208 960410383 286602998 736032052 803669765 875562098 926718961 987093960 457937411 916377184 161116869 729564454 290642706 753562012 588375103 642495582 221740434 558306793 704072367 782018673 345263962 770644812 720445420 981988159 744803823 924270020 1924078 524033380 827369383 849080298 334887341 959099003 784688672 877222255 38110752 663067050 443686118 558877568 279557304 573140470 321276017 796315041 354220049 878040104 775033762 904100905 167804325 903552386 285417955 886515770 450353617 748381477 615258852 800243550 912580983 969009140 738670140 957859032 794044162 875143438 721426730 948296477 984894602 998880714 673133500 961705211 763162169 834887559 906719512 966762214 642916149 827271328 900521029 934410379 424729161 812375069 439614817 796635490 390507136 837148508 855354809 952725649 700680681 955767941 792557276 941043516 423782378 815942366 907198417 986663515 530997870 750897607 394233683 626485726 713590923 869328435 751176410 894352809 577999903 914879862 969748089 994493456 743315422 844808240 664100648 774087953 530393412 631208417 394949010 458732680 672464927 880954106 473618067 687518257 35291745 353146789 809443447 849669875 728766964 827031852 693906394 828356911 937465423 975221424 695623567 785717644 135286056 164884674 200920081 911300656 152949092 291525666 819782986 971219161 462993588 623115731 493795469 711109890 312217375 704266516 86366737 698971336 634594866 992067117 983511276 996515658 108574285 681435556 162568329 719422262 373315427 771786153 731700537 944413340 443686855 728341451 727513275 828809237 72354982 207917747 875560783 936108018 58305479 195922962 342241010 512590799 896705246 932366741 153615942 255862383 92507077 537196164 412705949 417322103 726441717 983624240 245900173 763900703 616987969 770476040 164072478 243114615 687499210 764087082 942264757 982762980 511465064 558949294 398906540 776120556 176989864 997203547 623366960 715019780 613056550 618756821 873417591 950250778 575283309 729931539 162470499 524016140 665131258 861229033 665729509 792710202 241763191 376904624 283905829 680430177 980909288 983183308 992767686 996123603 625396815 700186496 292640731 585628639 286706463 894584692 330220744 812139811 952789015 987461547 993271971 997901590 117086138 722344545 313056146 816060997 437447411 676309458 626466422 787416793 911486484 940176693 610207287 720344863 116641983 952163634 228782506 662773842 579949129 943837160 157006080 316489178 68687816 324288366 606437614 801913095 629488118 995209099 87774371 533290878 724994960 987162545 710382963 805431136 755907684 877994149 640982648 683697520 298148036 311134500 748337523 771105233 365901753 529152527 147643331 205284640 362280195 664231706 571754792 843888101 315916643 439266258 943571589 958059341 285754744 584600916 556393287 830174710 287773265 838119527 123978904 677567785 448001495 661333522 14879408 717326671 569693768 804709841 144872338 459616075 709754687 957117086 700961177 883506233 491521903 663307240 945430064 966119219 334615347 724661586 907034026 942645754 695334697 698078258 703952909 915316671 238114084 796393695 439842356 977487912 729212137 773738574 233159224 612202635 263489931 724412879 444329641 492866388 34011984 912379965 551225754 810899734 490438565 675063223 50856470 857326295 797838668 963641770 598020350 982854722 355883539 719010145 913702770 986183735 533905202 862720985 589162264 644559956 212343440 766224655 37175648 342958652 827055039 992016785 742375794 821833441 123214585 436316357 850144715 951041907 291083828 961620665 774227919 872693239 44770222 416235907 141194200 621549179 538700485 705897941 207837318 272049988 652033600 920611327 832299749 914648259 650854673 983582075 770059446 987842164 23633507 619663807 472758256 548483981 794285224 874882387 706236605 840606855 650256104 912449400 327339047 508020336 774007760 924496755 448324240 597633659 892054798 945584865 888901636 961232518 882676168 902539627 581308703 852302814 522109469 593816201 848715916 924715546 810508838 995053339 133548265 712082864 178205187 313103106 717183253 862527639 37750038 325342460 191942207 708244901 950272717 986492736 806893173 835532379 112252384 180714497 870038816 904580155 828904766 910816210 681464620 963090737 13246525 222561550 636352342 947012269 774680150 783979161 108369442 160829537 16608187 878162029 598983638 626944255 861223478 920495415 588143847 708198180 760979519 877366002 633348199 888558367 708932692 889977063 142579711 713752265 265319948 311850216 828839936 938392521 876996255 961743493 627394502 859128402 966410348 971208248 712232922 882067521 921807864 944497905 741925689 803614530 34905711 226393666 386384741 459695476 690350728 937057429 432559453 873659768 250805633 444321740 651644762 974185348 549775506 666175500 646618559 751782913 675224374 807188784 694100681 918333348 936464272 976934105 725518595 731047263 307235055 849575976 860549215 890196163 96571952 226869605 114336841 991261602 802468063 942002120 995476498 999279547 612759126 931875612 203917685 664171813 781083886 856644830 292075674 732164760 805152232 822235303 257937413 393807921 253176295 890306952 303748792 965072901 733565878 872426781 762823858 951228715 734639514 923389931 717878413 779880367 449852905 500043682 764134961 852547654 740748247 897318298 110543831 934161281 693670756 901616727 215343940 873545136 728819698 748943033 2592255 6260031 985311393 988544543 179745631 255575226 354446053 805996998 884641779 989181173 978246249 989656533 181941497 294566221 807600456 819469107 835736009 996093352 942375184 978524603 547521800 557227098 89222417 764100103 515274178 811573035 632011328 646943075 231365184 679672747 416681383 467300361 289322233 878013018 902340283 936045916 785309787 981803478 650846571 910632307 181273838 573978994 69543425 598759294 620549420 645437266 404994081 474954456 56155632 567470330 734913922 942713333 584673260 639895956 278291910 455803961 357043780 697136929 865949429 868532498 345743760 624922578 294556359 322035876 874801123 960075735 497346309 555366816 300190219 900549267 466531056 666141200 612178795 730218686 437433903 452268933 783837151 958012877 509910764 972003817 154244154 903922660 204278325 782118691 137929272 980934422 608768944 989046488 339957411 600561577 292050721 756380796 636190161 843744978 320729740 692166917 157706693 867638546 667573349 937570965 613654469 969276372 184703731 743954022 360724242 879627092 414283227 624705280 856453008 964035324 799737849 920470755 66252874 556374753 673108327 726272312 207531121 764104536 360204128 517626146 177050650 580668888 463575521 742251547 702154714 769896116 583416850 854009108 51694648 727630727 488027260 795637869 899316661 946762735 649992730 961005354 207679871 564881030 724627025 892580392 685349942 849820205 553460609 679944384 761437740 830279874 310017101 937134485 843744782 994406374 212666218 519542228 977998091 997462649 952633166 960662905 428331487 597905231 253091403 814768659 479655733 884160152 576555021 900072749 807902342 819511265 317852999 961633280 198593164 213007058 824803991 837157271 510745136 833706930 90934734 713728647 194783299 727184625 152194632 796743169 534913744 566757504 965333614 991024894 657211218 842124080 648241068 652472642 503648556 669293419 897051850 945284108 674981409 966288174 837476804 906272425 29890902 212529576 682157787 886948276 643678367 719165047 920806355 943335100 18286304 735968516 687762716 958203491 317229855 341586433 565110311 835379342 992650537 998620659 580658778 843076726 655765155 760126239 669944473 983299129 271017670 664724059 298445406 495687255 980003847 997758646 941238404 954323201 805755377 990749815 58224481 662971812 429934543 489515522 547726533 804053536 151769029 949683667 351640258 448092428 991802084 995683141 119572197 692442511 255134598 587676804 756304076 762380711 502396958 761421719 655831586 778376904 829053463 885455175 755763491 803093785 188930092 531266544 561751997 619641376 148299132 656654263 770537952 889969208 126826247 209709744 575075360 972079933 612556188 804465466 100487590 618249507 599165444 935575939 137471057 395717441 175562134 314528039 960103163 978089921 928283627 959025200 481086332 529456075 705352559 855000431 324985778 741845121 617270400 897840726 679033245 891943197 796260737 812845144 900785693 969679290 715882265 970229946 957309913 978189549 393938320 934657296 910765136 929549259 186208332 443583368 878237873 889981339 56221763 890602209 533678916 831858256 857993348 888598484 509743759 530274844 813443322 994293544 575145516 610430195 626757538 755322747 829776473 898605249 645537711 658861081 395185382 898399444 545683591 698432420 634175887 874542000 104608654 966867709 945300602 979238597 106339661 706600925 158840072 788793985 170233422 381287785 867742864 970396560 705228206 755307739 916039144 928068966 44030801 280650229 340648507 736333887 158195056 835367006 96678191 121710181 601936092 819342421 446745209 573220157 611834948 908687339 376970616 512589228 305712674 686913750 827805670 855435301 881271915 897212442 620596927 743820001 718313509 814849467 976938593 995842560 495014092 558121024 152757038 251641837 722679583 898872649 304399361 662978005 870709076 948361976 708799533 768186837 80894817 820994103 268868236 724570461 185849110 717216790 399995689 698767798 351317161 973622757 242428154 976939694 136844925 798141801 515594742 532666535 114413482 704401602 671121968 755863369 940861848 985392273 755172689 856927961 676786424 964360816 904345720 969382369 698002001 824558203 433100505 472762673 612826668 858802813 103693844 493997203 512582391 986480967 890172674 955764814 232295681 973501388 518923764 742867989 496958441 808753370 206706788 855191190 442210928 502224315 161230096 341123760 952574028 985514923 909848406 962618879 661010752 792064524 770219496 853575628 328961201 400781463 39049601 766461880 802307657 966481780 169289253 665214962 177390317 389109811 160185243 352199414 696343065 800847845 852295391 861201740 363799136 766135123 273942777 435454251 519286449 729453828 299348956 383525241 885906456 912553766 67856977 882974213 545762018 880895800 890472175 921562667 108323724 135226888 959078581 973703645 731915521 819303363 852767372 936833627 877930523 923715385 160787416 921335507 116070273 703849226 126666477 354963104 977423170 995971358 34539709 903116907 724570703 728030758 31328149 265791637 918167611 960861750 481866267 942042043 873101107 919086796 237484577 497940581 36178647 307850982 647433943 752313795 314228276 891947636 53051196 205968744 222885073 673400518 75198122 918942900 599405935 680429561 573257089 653111084 80099996 395603922 914438089 983387698 765909090 898251821 66663126 612719114 927324089 978244444 690427303 862031854 313721568 663980702 286682223 526010875 90884283 706591990 831851702 968824456 497205457 599495594 903462925 951103232 465715186 985583608 439255626 488091794 30874190 994760670 305929549 825970615 487400946 881776230 61558491 661998570 728943651 798271989 257442230 332799820 878074336 993938792 806506007 900035049 642634255 673394872 252252119 347455330 355575082 940158784 250569348 727760988 945658358 969309418 849782930 859369183 524877850 697472021 210810403 682713904 186300395 962120007 278334559 536917305 765653629 881337211 285148682 739990494 790928794 934436085 191120678 497301869 430691137 468754283 313422492 669837904 211630067 285959572 803093493 878075656 874042380 939144548 26960509 516727736 861345091 873902106 739057951 811703896 845041517 863907509 621006017 983865196 899879725 998827459 766171333 843652948 997863194 998742094 184308663 265113581 682726628 877760339 549328506 609795914 894332255 958431140 630881435 680027119 409869822 609674211 267618210 814299897 66649989 328929350 580379571 698405556 853472738 959529477 717264668 801933792 180907508 324073678 298655093 841988679 365381499 691291907 203217940 525471180 797788760 869594111 215192284 425910037 790108534 911373898 174028527 194993607 25608072 597034038 700743738 955486127 213999694 755653756 975762252 985052913 680684015 874601460 959334150 978424272 904963719 918025980 938399779 960794357 771192612 936218494 653189696 847060907 517687122 760552034 250878321 350055115 822812513 832343881 554380848 969701228 289487937 541628862 519045258 593618324 717975515 770580798 235653790 728673284 792288490 981061408 4322109 909505460 390559547 703382230 310187209 646737800 373929599 427403342 731749227 886840384 966938958 969170846 325587134 806481135 71181657 136573023 273724913 973813456 209882636 685471033 734825725 880874591 195171505 289537220 941435287 967943319 739662926 851178494 389292269 474278272 685254 8956368 961614909 988200920 512896861 693459646 974310803 981663772 515797117 909625283 139921268 383514733 469887574 494902637 149981784 738038752 780898557 948888866 810882321 950023323 221860713 708199186 679202365 841366401 598188332 657025091 754491085 827205381 637054579 924254371 70952150 283656475 12304251 909309735 148541151 619933653 411617153 615232430 306322112 341310973 506491179 962699847 786175753 866915470 311838888 439294823 275445574 809004187 451578790 671566388 593057022 730146795 475260152 697205515 232462557 981683361 369972722 514525816 990083180 993641408 36678081 912970059 333063889 511063544 64740902 811288057 41624318 795209205 489714297 680211508 475462840 674489375 51225666 830195545 153731138 843903452 709172606 859829120 136898179 243531469 608332939 965101255 876337722 885158519 23644224 721048345 231062912 539200025 234983138 801472830 323380319 676117919 521639446 605993974 626726731 921054396 766938351 807983594 443219470 998817950 354474313 671059537 973071108 986333407 718484273 824158129 125270728 206905175 253827991 537747552 481579198 701677320 69593778 914742436 279272423 475922687 477542907 551145938 23878357 839141380 924509418 962729523 401874842 542877517 779252364 860383911 768268958 959510810 20500240 670731908 529758571 910187514 267794904 408553248 881184618 885500392 602988915 974888494 339780182 751691739 158604771 791019500 123965382 790941208 679381211 934984517 131721794 782474847 225142602 646012899 527721797 574685454 447667978 600156769 488746862 851079115 384238192 820952336 54886371 539095827 935116934 943890906 628454407 939162249 768081173 886343191 475606599 896425969 383305470 640421827 839425350 900344897 71055430 908398779 483975453 925518123 216084337 516035503 134557898 527144550 144106489 452010974 189260147 713319601 323863811 381792605 530971304 901843754 946447707 978692663 867597516 992464526 881218611 886206377 630640270 921325898 107965149 628477499 387556664 501698439 720839563 730239188 720546022 744378093 892424481 968458104 342028202 344460513 40167737 625902256 153441381 414947618 891380458 968962439 862836212 995359363 804885969 859602085 6791108 656811852 532387836 634613167 920719654 966213358 750099690 794769469 586289463 775047602 279669713 699238562 520301382 897121084 694993959 955094656 341181979 952135621 310883943 668132254 761443628 814215127 701830097 808306929 377607867 937281879 931459322 937383118 697598672 729812740 283606216 509989571 976597331 984849914 683170627 864667359 946598713 946905065 23335806 352925537 116776597 763243234 156897308 967777752 359307364 982967055 93162579 699534089 666612876 718334392 113110189 818819857 752862963 854909463 771261916 877700763 176374757 671675394 273293691 299254026 298359933 867248998 359649213 970719172 388790381 654633915 314300748 367323114 907755184 914484562 910421414 912910310 132990330 710310552 930937102 963613472 263663024 377864037 520143588 646621580 495676482 591651111 338065797 764981559 171508792 783084820 360143759 986891022 4773902 609486240 148535276 467810848 31913204 437570859 725110670 905604014 858813911 881414745 158529797 397567467 749455407 810978281 194142776 708050725 43015730 779083804 462123187 740512361 271272220 635467831 28953429 148996216 75466867 552049368 300428797 476034168 231646335 796815950 719547810 840412266 555536342 649093467 257474846 747037616 793783381 955918490 704078368 855878711 356652479 688795562 797815861 878774160 288781420 340982389 979767329 987604374 105869030 833460117 835046158 928486856 331851583 533801907 678751149 879764277 933954591 943693806 394176884 676093245 284602008 522911587 238565058 461184489 798684481 993961157 769534497 964124423 91458613 631096687 663543830 735737692 274520240 858463382 920254272 998775705 24906918 61766684 291778050 754452775 445315311 924085170 200231249 482439428 204751823 622934147 380675320 997470511 743633040 842267370 689948418 972657174 11969261 472197114 201194586 387538361 228494616 572130175 353880771 502627759 37813904 424514539 762418888 833698935 879042647 939806710 323351289 834713247 545746624 651910033 919454483 961858987 636272676 718408847 814429341 872017072 336105955 866091740 26272536 592862625 789944566 955234994 118650834 516545192 873910102 997531341 198605139 598137329 354333003 679646445 623242041 871422078 472622422 889095383 861836763 908801012 234952711 707007957 171835153 880501685 641245879 881954438 152360286 823799101 865301308 997672252 558262051 895398198 371487742 444190093 111563086 144225849 331822317 764048596 39218749 896863418 11226719 307061067 61672127 696904475 703416930 830742754 77655358 545785721 648023683 940778870 260760960 982569061 670240855 829891480 831209807 966204033 491576041 869393833 568588818 753349349 239498043 741597804 536640275 592677251 285434262 902776193 757020839 790179337 897467736 996388517 40552838 817926936 274149395 291182365 742990422 956865320 101262178 489407016 406220639 980439834 959911412 985561620 186650421 820789370 54060785 614487647 874957569 915483186 499522463 666165355 768959455 998155502 276063056 533962100 159450160 638352891 582389024 930664137 436296634 545481119 206753020 806775637 129030797 267761779 56256999 915010489 506752869 938859339 868022264 907026741 816509568 909594258 529553189 944050857 633678057 829390494 706767863 906557433 897846098 912093765 507960041 780758001 414576451 460192786 600755865 851152101 254051192 355868195 698292349 923887739 819638797 953866226 231658790 802490444 151626684 764831470 10697620 354814556 473216192 969852277 191494787 447446508 610022487 614021111 29693350 865983856 668454129 877971108 366417126 763781189 581485631 811057397 244850694 334126450 682332249 905039601 322154413 597201633 427598462 643900210 673834319 879304731 875564311 967510393 763485604 822209775 545027698 958746118 572410702 675312067 880935144 967294724 902465436 946469159 775090247 907610208 498639325 981524678 199012075 548110452 791182806 991508382 26486846 706716602 233455466 337556936 395808927 414873229 729540156 758011798 365955577 617892224 718209439 866278946 91391786 818084496 140815420 343197589 957732161 969458582 448155921 661608694 669882283 675769727 385484135 511162375 259545888 961832523 834017120 890598374 436777738 743028876 439096915 562978482 709697967 957830644 789045882 916280499 733116879 909222760 137459282 538218851 268218433 432753874 140177737 577035724 767016009 940388292 369752366 537710902 648965869 918909040 334789569 511536829 46136666 642066070 577283875 828172066 201444919 333432430 703138495 875558143 96703787 783582993 723949509 825764618 32567587 915082543 506272937 561451543 833300258 919142540 704571874 734552411 82207822 250890733 321741085 891644535 220817827 929030365 969326300 997947870 407769443 507003381 740131717 909131048 430792951 706765617 168349450 351682549 958349906 978210411 363493790 834727571 385558033 907321086 599396108 988702914 649742752 709946024 488127880 950689066 607975666 841277376 342489467 944897774 977970820 984453505 999090434 999141616 944868489 968756472 321868229 983905647 946932449 969866792 915990706 998159837 763818423 770838479 292096099 848648198 241637062 401565055 174088197 727692760 925327083 965620306 401099868 846425760 697006110 809718579 257568510 499244092 635767365 998089996 561392495 973516370 675822446 713474170 612767387 634688161 124156799 502525479 918050735 997125564 890769744 984756661 530554555 779700435 21195860 698362102 251936857 969213256 613913469 719875100 389180907 647816828 286566053 494376336 666082607 932115377 326527310 566260174 284341219 555308491 54059225 957063514 114393961 166622357 771190427 912787648 666908927 810055603 100528616 245688955 870767919 899405437 174827535 355707324 311628300 706252612 504982189 886202757 610427530 911374497 100164402 520939076 440420650 682568959 134382903 271170942 443757822 527917840 413973203 975226707 801062460 815540754 653901712 993275288 544554878 981943123 546702862 646051566 144942711 719094013 379576336 819110248 146289030 749332809 307029674 677339467 605185103 675184781 289522492 577728385 87090119 526876143 682483290 894326812 860302167 947321124 950277242 950458882 153181937 463956953 362364277 865470336 568642079 696993635 318955431 527530712 461992474 650408122 769737457 871482832 492082384 890792755 275418872 850908082 475688347 756793530 631944198 862541966 758981631 826306409 139068298 720454767 102011876 554254689 273327746 291078020 985754529 989053532 463979366 594960013 481406875 623452428 36414892 735465659 194897258 715072050 908391117 950706028 537618103 614402820 672667132 806418756 579572898 715696142 924592408 975572485 662687735 883559925 937145130 996748960 104639220 298363940 434121645 562721847 961369062 974782896 655492910 815529508 639260658 717539388 347220960 560468118 142503518 900245813 30050826 35721700 603975769 953345217 560801536 600878895 343456747 726853884 868230278 972740152 12875805 331266588 477409036 582690918 109115082 403284896 442789492 984125899 363979162 667974838 289337576 440137378 122392592 924269180 925503161 944032805 378153848 495387866 929210216 947166022 412993709 656817536 981355830 990112902 872722782 955175051 419917614 494725398 250197563 405132523 459380290 520244038 279801736 490258784 491368671 588470731 596732376 978578367 149668581 447418281 532490288 783059386 684578517 836195817 151326196 248327774 946275663 986788015 96297023 106922860 908829812 984247119 425350720 787775959 719830788 893928034 376260738 878784009 356475821 578687550 938992334 944531327 359557036 498527218 689991791 710651660 670906125 775773616 552072307 778554726 133570956 457427018 40808572 729085013 377017863 477781441 652504046 890262286 389843064 711770969 454891405 675550026 912025153 976707372 769477128 889655337 961826744 970901547 959699834 986291290 283246204 992849965 691946211 723576227 982667329 994167573 370614123 536884961 973565781 974927082 835496625 919384809 76851247 321527029 755830814 967592897 648902258 702645281 572539375 914392149 64318195 771491774 6115701 272570737 371221092 927463900 551778576 929246412 888287153 962642073 891245318 900167496 573346853 928156594 278080084 370940035 729139976 799852889 957893085 980389492 98839175 319972745 711654 165235799 562686487 599576510 857688757 930193955 998497856 999255495 364797183 868912965 757647102 808178126 562689183 762617173 184257266 305585599 79877747 222862097 473900401 581617952 61558944 947036240 788663232 887357120 896663957 986535395 416850612 629888649 363659530 909756683 55513915 710438805 273195118 876837678 843990305 866240106 772667245 909917269 254608864 817467085 58989643 891457932 139287212 868953982 91252476 852873448 694392993 791057022 181438808 701652659 207629414 584170476 66907814 69822699 109846487 712464796 633588695 708513758 837088455 855080726 830758028 898383503 180639417 745291717 49476778 473631913 479267071 897452786 103775225 550488947 546999850 916196971 986289254 991680015 548469172 921734534 890299614 972368118 370243305 569368621 727359645 838099945 487209435 950816606 679072216 775543477 667043321 782194071 964784654 975572643 395794076 582151532 759290000 845643397 514955848 789480423 112015764 281035228 333836149 888822395 501079959 650319297 3681084 554269627 556025977 826094879 13420646 247581507 91105203 384237151 62664459 211531106 357689827 851052282 218408585 715208294 975096722 987389520 745391825 846733044 11349446 89192408 50290610 704056228 917698835 955861719 598050662 717847246 290819904 592217443 895365212 962831911 587058315 732819820 271358083 530101381 825816248 994170980 52666230 933645978 969593062 970092958 359235220 729685656 103541926 151894607 398623821 893624169 707745634 901409807 887664857 984816976 687921600 716027992 572043401 654225615 292735596 430678543 88824206 289715015 346382498 470498368 144829874 245906624 978037830 980775914 755664238 785944765 821454055 888758377 359985250 402584569 291162551 746443000 979284761 982525435 874492942 912958642 594853355 603591328 69209203 584170879 969456230 996332488 346188330 701752639 514865431 592232348 427346809 886175038 729400713 766090563 97324742 500445911 503706214 946025949 393164915 914973009 712945088 730721482 924648322 973109641 397550050 398433278 654001494 824161535 940603667 941931765 709224758 824369936 277825860 306564105 85545860 139780114 983843744 994601931 994214040 994701921 265931531 933298168 873336905 992012809 711306203 820918740 369824906 847753148 227023365 700537577 28723984 545810788 669743256 910334805 101879900 916962118 429794733 707914598 57185780 492743760 545932060 988834495 106941282 352574084 445077699 733742376 386977886 519591051 339643189 876602830 342981569 352485898 854419047 878086667 431099830 611961471 183701170 739588658 181847288 375604844 570250976 716294970 857531820 940021736 258722979 670413234 997066856 997968472 911752797 974905711 167615556 493687963 529589910 655225288 533265671 687338070 611197305 789181258 872138138 913179279 970098269 985312670 29243290 684292517 780689291 879315349 236924338 680485009 176230293 893498943 828647708 939671399 175015749 661020865 226244591 579133923 339767353 442558563 779323962 797765108 17122179 430682403 624366185 688495573 355581878 722709844 462231501 908773190 919047526 952064781 963972793 992733444 638568468 916218148 788633309 808772972 167900884 688786449 37332933 470321687 760336081 777649554 71584759 461775580 944027204 973010426 379546480 788562815 754653726 787968788 613103010 663748538 804567386 910500629 598375961 882017757 605215808 684248541 304915700 358778680 498723338 658903825 939689201 945422398 332712209 697476767 695321176 809419247 206969511 228747579 899986667 960725994 543645777 959626917 28212212 39761811 472684142 618256003 725289537 982271735 453687296 708654905 513068434 865416391 531962267 777675114 796049817 992140974 786780150 855448116 215568552 470776600 905198790 979459013 373296647 538372191 949481790 958081208 23250962 595195172 476018343 901327014 950525330 977451480 30339814 324087325 686016983 700195492 208486140 658320279 452670214 768227862 117574932 245959055 632112780 820339060 521515875 654498809 372438631 767077869 910518904 946410823 168771402 954252750 594808499 653362810 510209626 636539489 45218912 317319025 297653227 350774267 889708299 922731743 898395774 980504848 90323380 798777981 713311114 989856094 683903720 739276440 232853722 974850116 675983901 746581954 556351265 834693421 360232427 822253062 684723383 805375478 577898283 869580975 155442990 355992641 463645645 536200107 33669973 156576738 84055118 455760406 39388253 239111153 921795046 964277474 285728971 812383105 632777192 907180193 536333040 784621020 474974772 831337036 641651715 642921707 924925343 937132443 89176701 547455473 521972520 582039746 463468655 802011454 846703640 877155636 435094324 622261024 523514405 619141687 365456557 817237762 100711027 297912639 401669186 470769990 152136698 742577214 769546771 960771200 167869986 436997453 577566484 739672613 238637944 446837564 954646677 970424831 538150137 911323933 424355344 972490549 887222068 937691539 906727021 970951662 44018653 550763263 939054151 993638274 721723696 726840593 456882085 889608067 534571126 766965871 305636230 732609017 693548742 788731379 643134837 920523225 780901996 980238896 3455177 848100701 327318131 536089617 890851768 898737689 624961627 876675375 741613282 984255834 161378379 759345356 964120565 995756032 850309472 879542312 532547445 927348071 677008903 806780516 32905151 912612062 835472305 842476081 697483942 752977733 841313877 941682151 646793956 950933158 918774944 986276461 418671493 673785473 789041835 845296712 997583167 997834392 674667270 892085960 732928437 859590045 975207761 996635519 675697638 932879097 422320569 741764295 513182923 977149207 17897137 247124728 61989474 663140738 129418889 142867639 805397169 995835689 316575669 615249158 600599751 886053115 44111104 291101582 443663155 579241543 575388067 676275823 885470997 991402169 173162289 630206303 914150676 967603410 534720833 850314479 230054685 509981811 877891978 949130631 507432515 737223527 21222102 232492836 522611619 763781013 31989224 980279089 306721853 731732274 600460340 836201690 743876388 995423908 944411218 981017122 267197582 727758346 113205624 434249360 299199519 360238957 57192492 371674679 806371119 953607659 992626038 992722592 148320046 319053689 619462260 641622636 569710102 766106899 381265931 463387480 799894815 980735574 204735196 383697689 313411358 795432722 946687251 983980030 266194327 700638909 586888320 916768863 146889298 197502658 257779231 728142102 180082240 712897318 36656232 162807203 499066930 678021329 577827 146006048 614484884 764985265 943526940 973376568 308854859 590350787 675540924 980832497 76666616 200575179 871328979 942981341 914465736 914760818 601450993 964127672 15024821 188162943 72106384 166909513 60179744 520999285 159341664 435453262 519684437 877459582 656991004 921063218 169863346 375860593 167664263 496309899 294455646 607270083 957183339 996041880 753067421 783583852 884766553 989373655 959497591 965367046 937028213 992788026 651036584 785693284 273481993 800460428 769735609 891338868 371646584 403215303 576057138 665312282 774895394 792521677 916918324 975560090 437048770 963634561 23103270 783446219 845939118 947958225 550579790 824982173 869134012 910521499 69043933 438891632 694491191 787430233 431275106 824123510 74759871 166139302 361038804 505770326 136081711 857663231 140968569 516418652 50622245 262683673 481898688 885470434 744125657 925968507 802791414 942550732 364774715 636956395 728038587 957616187 539066624 886110313 75034649 624757281 633228642 938686975 604613167 983264717 382351576 431408361 621832633 681805096 83578764 831476497 167489851 523120153 482791697 696016406 718880172 796988977 286826808 855438185 933800809 971538244 570628068 628773969 28778039 321377543 848533343 883552314 618867164 634971925 42547776 866726784 750368109 953567084 297770466 811911900 608503744 634090209 960866697 991814497 501334853 744755807 752069308 860443064 578804347 812788715 853395932 875487764 66107853 740260216 60725628 733961066 7808745 505415719 223359524 422446672 11313797 134645033 199733522 644137138 838904775 931876538 33463957 330810329 660705591 858502707 403182479 912129239 871188345 988924157 490362411 981779563 12720266 701281438 618096492 909991763 420253545 880969901 247007116 544503354 875326497 890517165 494621327 656332511 136389282 366656831 513995450 850111202 346648421 641563924 19455239 575254144 937479588 952110567 903513020 933097126 416750687 970475627 546624534 835432493 898083583 968421285 269625995 690820542 152641142 308554631 648289864 739173103 831685891 933145436 308182100 831885550 726866362 845013743 675775566 749855233 720411766 962869871 753171406 867372547 410792153 826637615 175258406 644683262 268136972 564606497 352083688 578309566 548524320 816887855 392433616 515054224 689279959 883712281 365647567 859973156 992418611 996279428 148517678 995092322 499624337 533995696 494197015 963938283 804722290 939358202 925917241 988999397 759064788 957400796 498939069 610610713 22949036 995182912 536291916 988897188 342203047 995038211 13567279 363663558 579961579 903365899 509929976 531307202 917853704 993414739 425481961 607456778 377171511 707429172 507154698 733522546 108199853 606992670 518604026 804513679 870029375 944080065 894523603 908947589 782990377 926083212 21580883 377744962 127798047 882499606 484264454 850514128 343843173 797377643 905911205 983560371 988697209 989192235 108957121 495526702 507819103 633903162 263885022 784765796 233690988 454331194 705217914 708418575 869632355 896737034 842832165 911440353 39265622 126385371 865537355 876990546 414959436 796395465 731685440 881639709 154615268 621965082 158571764 714637029 227154417 736576997 916235468 928270038 188617605 871264164 540741241 692705189 146529439 596420435 28704868 984979333 769946297 996583575 701621722 811955782 960242812 982140829 63030290 982832493 109571019 952290312 946755860 953517922 300299348 386012176 684422275 694000485 282858245 752584910 794828617 926934077 196225913 716324082 480148025 845626747 440446254 876861772 964524923 989394525 21960266 75188690 3573966 28256952 521838415 935354878 726274334 876200313 805197203 921137820 191788400 386202821 378931584 415461430 848564640 987883965 62112444 302077551 409766661 772188960 804329781 804563819 513382382 977297531 888960949 922164258 942262288 999300509 971160875 998210720 28798782 957763964 317794650 555937684 316470522 638356022 681219224 905230723 975938681 996086791 208959936 806362568 634948859 934426926 762963503 803196173 721791237 959517308 509055510 872983150 574653728 589808203 753725385 992804866 85779564 737605732 66075974 954375994 310323736 862653712 106312721 932479312 322174875 618792161 996704748 997487267 645736098 728736837 600554823 893184156 680243797 963996237 622696234 907044708 166544794 444194893 984576412 990718279 421663969 426389431 112696835 992945401 368216679 954703453 456898346 571517753 379061360 896852362 977451358 981197311 671244004 937638593 290016548 704358806 537793213 947680507 970371591 995507614 652820935 858864910 350082949 645144450 976218211 982446447 47825639 716771333 235032041 940792500 844393209 973334754 777889708 851767248 626983293 872672822 892798332 907638978 839152666 867208950 529906150 744933740 691275068 743859393 51488452 343319008 651947670 948966126 241426094 947015609 548716646 580148855 119232314 137732514 572056926 740242039 911881762 995926956 513765678 667775176 997377809 997922100 158136519 916355388 846139607 972621936 202391008 581385554 756915176 997613811 475444736 790237651 208771540 861070216 403112169 584525994 558690259 818254338 955370548 992284006 937781351 989602295 208615344 657802119 82084349 87827752 705129405 894722822 234363175 393948475 822446021 985393957 862363332 867487970 389212139 464660820 851781026 965349802 303963544 773623655 16430559 607498000 359820 457216020 463911963 582417862 338501632 503987175 693145018 789204373 80979462 803351267 542058793 647190799 507985776 640356556 884812850 891272931 120613957 433184802 633639437 895159657 622031273 789914469 460049111 580174646 298744452 939049926 412892351 455155813 774256339 946258110 77896199 579837293 567393146 636911897 521795434 822235014 931845015 978403333 903107812 940651718 868052771 899347019 644978517 770952714 464746103 811017390 527523117 767849600 144308157 215723201 775478715 988421083 554935688 816004903 887019768 928332040 568614304 881683086 428794011 711453412 271516639 844610608 541911116 830900881 937908489 966446006 768813379 841086903 697976131 890145107 355700783 715642225 826009226 940682278 356479219 366146243 406497235 820328314 432679503 646255598 993002484 997446983 307683018 455344509 269720387 708896672 7360420 816814399 796256538 955319603 947074022 962284944 457526554 928363296 816777002 824863687 935349368 938534657 568566838 978969414 231806964 747402480 175860636 755712264 981797001 987336531 730151295 893070031 765206051 928147444 967151586 970583343 977582827 996729301 803947342 844890643 306989604 771467641 987838139 999271613 963464887 998849989 635931754 740744659 583556188 758600907 162887758 233928918 261701539 673720379 110182080 357614497 73234977 265852115 139884990 985599466 791217924 843351556 650453078 670130026 859975501 869207903 543592502 805335831 923335416 925153471 592099562 648984355 289245932 868044318 475198039 503307942 520354991 927004622 724642091 863154518 450015046 998976834 381979436 484952096 209687316 806414586 536407707 560335281 627447786 880507870 728832073 756100611 574583574 810525658 186674148 679168900 746053879 816563764 996171916 997912520 287840334 493438137 844992115 934352183 405122214 610571327 847409802 926872965 316901849 415485266 680994649 788741615 20598978 692734805 691963709 870006392 276910261 733267988 741615896 834241696 416011844 628884776 819504618 933247909 85219151 896328510 396937196 453729411 673862789 995859851 247893778 278108131 186283963 784739646 520681676 761745948 862769207 882155407 576535654 780718494 146932305 882487815 828047020 863354278 376717587 450862522 447635259 601033996 998409356 999164688 359739731 938518709 873072528 874784955 271755596 456380746 343593351 673162190 755558026 771702837 582829273 988749021 178843339 216329018 310149587 792173279 331867341 932325997 743735540 901056577 14719798 834992902 679205124 705559359 791227822 876511673 831207516 865680254 198880245 230217363 125839754 986100443 819470497 950159022 301221536 837839079 980577190 995059234 510888490 664691098 36836817 543959953 43814828 659074752 311998316 374170250 425842456 579654294 828487471 934532091 453417433 878632280 931541251 985163521 63574559 739294441 808660750 934714794 249409320 476870098 31885398 623204257 937733200 951412264 313110588 816522278 642953173 949675063 63417206 918260093 891160859 903724824 994554394 995368563 857861276 994586741 498478085 724680136 840819284 941417231 566627314 624333145 70590861 359309337 578254203 643607678 621245777 748861982 580072311 937113031 766695084 819772861 773970168 848710829 296768151 945440165 219703711 657088249 469226747 845219694 753471640 991144861 751266212 880069396 647686214 972703897 346276249 722198956 128980475 322665967 751419854 959934759 907755087 996271772 89501108 890447371 491918105 670773362 558339231 714117485 565414331 724118139 818900587 841031167 853214422 899028666 62722680 336596916 50213903 113121088 154857555 910942426 44789996 592187016 236382297 440972535 592491932 994983150 13069007 379261801 706140536 733747733 392929555 544702604 3936255 759318542 289683581 297977711 611145133 945089834 703196092 963533662 276057350 571502835 835773947 946311752 458293436 774153744 603001947 989371929 885944237 986942345 83750793 674489124 261981349 561995547 332752982 371731003 552038453 957059460 954971093 993099050 58299552 143436521 280763663 373984763 705158090 781027034 28936532 647908639 509239041 959894261 125958317 954761061 154462340 766535296 361601873 619891104 117057419 167033131 673478140 734470804 665849474 961055097 46301531 819582167 952441709 966470655 245023638 532309276 820097835 829569371 808629760 842043551 798025201 828432388 796780316 863881525 747192900 842541065 84374081 134886133 462324156 486026566 765572360 979068942 984323608 992473069 689095761 873781116 596288519 736824081 64530253 475882651 411888138 558202492 388799400 896117784 214960526 237965699 147060984 345963427 895485500 929787475 834085811 859015856 385451078 787576377 195873779 809169610 149735960 469153728 976481356 987894968 205141176 355550677 974318077 979597615 741965777 749216926 242488531 694798286 227352457 772645698 432659821 720020493 780240807 985538004 833730833 996749943 487289952 591514533 290676303 317147204 43985623 61363771 681983630 922902823 275781569 714727462 570221597 933865440 884870652 972529463 307433769 698013681 859390182 936173328 27292825 725129386 439025024 832388139 205572264 837105978 30117930 451350640 308100706 711717286 439186318 534390208 657081859 823497208 953775398 989720954 793391524 827475693 645033933 845712289 163866686 861231650 339458578 579554510 805435258 960822889 110151945 851012796 557989715 889688990 715485902 882692201 537857127 907163481 927404707 933015695 505849428 976098273 101130435 147159588 612657579 798746827 540467840 600198531 165413509 302804085 947003319 968252454 675679970 707498318 157580621 957830125 87079522 272059539 843826893 954023041 272205307 562399693 411175253 919354843 949302393 981663527 362449923 537101664 423768704 603228028 31947313 128739011 123183884 346203887 815259030 840505179 434060495 879119450 581386060 773130656 797919795 866733075 151085187 315877467 690507633 789001874 942962600 961910355 735678745 862358903 556857899 728871773 833307349 990141995 332926942 391581250 132350666 495696221 647578201 939568646 889419057 906448461 207270249 480859884 984244879 986220695 851578684 909933742 641184936 880298826 156823270 477923512 619125659 904177627 447995115 528643402 801697504 812311259 914035658 943786409 16805508 892079828 725427540 730662360 422598228 961741411 721156142 756182589 104647238 190391371 197743555 755475003 644183743 707259643 405833319 554366963 446586980 447956383 236822947 736148682 287978533 542514805 734953471 895775829 513988396 822731687 315601785 379693862 18855445 283144997 816015738 976287932 488788327 945405779 66235845 552008578 457967003 836127241 257790366 561553149 275381840 695942704 608147296 749068842 767033739 868145502 22432322 754513253 978877664 993534792 899596581 905928069 366521757 719414087 279463279 317071557 72013829 520578406 977099763 998827833 645080996 881223759 743295414 970902292 126581546 861375785 151760046 473145783 145203174 191812728 779411371 939821232 365896672 569356021 741241474 766899002 934943837 978590634 23484030 924256748 888206683 896447305 927813858 987875996 607744492 930958016 356935654 799421862 361666448 619004645 729585829 863614475 29693508 307870868 739352218 765053606 63125892 165149149 245111206 575166147 133175402 942476265 833373748 952901090 344566732 640172564 778423486 947550281 704599501 705965311 149062402 705842643 437478405 873495048 658617951 817294022 100491016 975230499 977816891 982000295 75238547 205090285 637669764 947623945 769293113 964626856 537441486 909857455 71305556 415237469 593369120 831060678 625320781 750397625 624307651 748038291 828244790 887491741 32470519 721851951 599501827 867155695 830050201 942708573 932614070 958883010 314860003 423828157 658108852 796679411 826824824 892378540 124292394 479632024 992615755 993939616 110886984 782090917 190815083 318525963 813927893 912047303 870355032 980239363 253960965 422073754 152884813 596159709 423165467 836612070 685579623 866494928 664725785 665356175 667221070 948036494 233581098 880568083 543365326 707894467 427992644 775956020 134588640 259554975 840658260 940640281 388855913 778333827 923399596 935810205 178444371 719057262 384413204 733096155 683241010 857430964 941472863 997854158 791453036 814585837 372459891 994831872 981974888 996903298 433581384 651908174 132698747 620850093 821679899 946334806 190975005 753193835 616863867 822783380 814216621 892596777 51054240 736218307 564637370 975742355 785711743 864431626 31749718 481739090 672868805 722128733 93918525 537831402 685226578 805736952 62802515 534401031 736067265 976145768 634878146 894564473 244907033 739939741 398871637 570649611 3970051 305793815 61808949 268164365 380312840 437773576 576688042 941558138 237037781 580376007 502837257 734623308 278662475 410393723 635437160 672994178 311695430 353146775 141850780 469291749 2747695 807658067 509483918 957455833 901979956 983406492 941201971 972390164 465250552 786041029 792768462 814664365 537557285 624683019 780087771 955309712 788243974 854577776 302242713 873699328 290046107 323042940 131164189 465930463 842106124 924699367 711558978 849390783 502978522 522075166 124158667 987881384 640605100 759075678 983228871 990847310 953849606 973014477 265253481 895575602 931411249 987181363 261729355 406070377 697017607 978212381 909327895 991934041 231236548 550907936 451603055 464905619 743086218 801578913 408899689 776681730 124277376 468226454 558041918 847101096 124810003 943965455 435026682 930383994 664080282 728736972 736577078 752208795 428164835 884077845 756175519 903382635 824057189 954544540 318097065 963626115 335924806 874253825 838356787 930107505 601740432 909115618 984622659 987580379 130690337 322985960 253541707 911536035 85585775 932969037 879282314 986059907 36399567 131844462 205230108 363480944 150661593 458908809 851793603 928265122 113315159 879652819 614214637 639646325 714794256 814739394 371540285 394612650 490720305 772282978 173567033 423503964 791424982 826218493 713354749 785124596 208568728 572797208 132972811 457243653 660135184 723216108 64083554 920074365 25782010 139835681 718477893 845581643 39044547 625348453 425990803 517402540 337488978 347884553 256511895 785411386 215425285 635367506 353386745 960447021 138511666 470847255 555254295 669541272 499066770 601346572 245773435 498399778 739575131 777902596 176446855 565516912 219856791 562917484 54465994 427317511 796016051 859448294 925031743 939292442 594473128 671487726 53842233 721665611 753227070 854233154 778798256 838404102 447740200 997513493 413728691 844507523 33219380 201309582 547107173 660557936 378940191 633073966 921052643 927625693 677123338 701207319 949208073 973443740 246297167 955499040 995892078 997262866 338179224 583048302 386116965 626319617 205636224 972292707 557663271 779014686 821063307 850171467 653436613 803308377 792767600 889703260 586834345 811734705 49931017 425278295 197248055 211929944 542817677 703427023 530259984 648299546 353779544 954314203 675805394 854683778 966031527 989372552 874671406 950617486 856601035 942275473 234580177 857751037 100539870 438259521 132130565 347606858 93946747 349812968 828228869 918654419 63793847 561701202 786421114 870454361 920066340 942452506 57802064 538405680 281003579 633593472 368813163 446147955 445602738 613559385 954303453 960794218 730258851 759749016 52997992 443417611 809520119 914430860 521980631 636050608 878464409 964129444 969925650 997845916 179435100 363288201 151909149 252988193 866347104 868913738 683008748 685488506 915792839 994738623 259440453 738478713 65346948 851469136 881592491 966476059 16219522 223695039 720449562 763219026 654275773 975110954 716881187 726649716 654477193 677348853 440639715 865416371 656754765 709932904 135721350 443490635 130815406 678634930 330155426 906991677 375233287 971227976 672789462 939306014 994549626 996416406 78395077 849428589 406843967 524406100 360604382 637389201 494588714 624376080 435858568 583968231 616862888 632450123 598168156 632036294 367675692 728935237 942384118 989594132 617212465 918772035 229609863 243173572 770661794 850774628 721920451 741047006 813754977 958670014 181653568 451454191 855437010 867781060 828956151 927097349 647123374 982454544 608782829 743110474 214839805 592361114 462562909 701033493 593177436 623849840 292402917 749345172 777723843 955967406 403316583 956929768 301264372 935563174 193580549 647563128 149991052 913056986 908199777 936969076 18616419 189081825 683754233 714476671 804467753 921571915 845255480 858213585 969110975 989260870 666084471 966968170 236640820 280060230 785171957 791747519 266812931 648601067 327393599 823679042 426427711 482608624 84715705 165519500 261805963 981538929 257098268 685098964 480549405 736862232 728843804 948750925 127790645 564980850 621222262 717168280 565491256 730450332 993504369 999255054 421767766 890723217 514479599 797031521 897665199 907655039 463917101 596878457 597550599 721678569 563432400 925245781 158947333 773882719 55527892 493186371 124561211 906961395 171127460 946166028 782028199 926168445 479203170 698815729 729473292 820278721 301596250 335147601 855844438 856664534 507409965 535219885 795175701 950578584 219120837 659055065 971974830 985159613 138664294 493444859 451327546 993739572 649371560 855642672 41971035 690804973 327798590 643172088 700367910 768639258 600561305 702151463 713856464 882310562 760113716 887373524 583946995 989395335 134483495 634317865 596064545 822253955 133661665 511039820 82047655 858102984 741804261 971824719 58849185 587979594 462765930 685728870 926030025 983430270 404026355 542266597 550739469 672745839 206574979 289903340 313478658 467958736 911634519 975623732 738762743 987574653 449614693 500829715 443087753 466816776 321068208 835101947 402303496 622160709 985630966 996473544 307221416 351777772 518950614 648823552 870384067 982673994 710704851 946644432 578585122 766135312 2510688 113671454 974892513 996278023 955268059 989673516 433687153 787756811 413253125 846966588 976735427 995221687 53171579 325927337 533237266 831001090 37477300 471762232 204027635 887177167 591191816 685554716 573679441 898028214 330224607 394614286 942402191 986468920 167072711 909213945 532517027 754770365 253461137 742826487 188413228 272771534 307873670 600335589 974535574 991540827 393607567 711924838 773884689 981856771 82877520 87350819 526927997 922877559 951865784 977072633 783367548 956857140 283544413 326066069 820514098 834014541 127777964 463295308 898517747 989633518 923240822 941625852 173991508 898588383 227443959 945527407 973533392 997208822 574214919 657819508 986635326 989694982 627386422 787778668 3702435 244344061 299381538 924847622 509954633 806530569 476753137 545686819 834112347 971746872 798993795 959974544 582483680 601981398 163121631 770908258 647745125 948937285 995448677 998662505 434272384 938919122 348305588 509623883 76584573 499657932 938526824 973976649 165699436 630205948 301526760 968773437 338402790 522269362 6534382 753567876 544728727 961230383 848257606 857009748 661602443 817200513 517840081 780716908 624113003 986824473 523953133 709597159 978325532 979194642 840779930 859111078 111394942 196928723 484409276 532179430 290684440 782608305 491000611 800331262 459848555 551620882 340524308 891161145 872054255 952536346 212798677 831659327 969440129 975003509 567162300 892173483 982093872 983536725 836173975 966322505 641580984 758193985 162839644 708455379 658777631 928722400 601103113 701436457 958097186 971765571 733371044 751306516 40710181 726144433 469028163 906231256 400702871 707131393 535828181 711950306 101818023 920327670 950864464 987955755 450741283 966524731 264572007 312989692 438871466 970096162 84229347 293364089 650266191 971560532 345868546 836959441 938169057 959616969 5249068 873197633 860338319 947319827 813190977 868482361 153349496 731670337 791715771 825826375 929782310 970147850 283021230 377382022 383210205 416994120 683540580 865483215 625268970 711831682 326024848 558956814 774607095 965501136 419396498 815941755 488389400 949563054 318604732 589299232 273668654 283150646 741149105 908171758 475442133 700704583 818921764 875675375 937161686 962554617 925981765 945028261 68427052 384581417 440693150 953424381 123995069 265948491 15465093 636820356 824839654 974195961 676671929 780064299 640429026 897156260 97123880 427826905 696240383 887732761 590383743 939281878 698654406 980962174 685598501 844099219 902383819 994530075 605206973 855784990 607670184 738594387 978928204 998503939 218623431 935447216 814807536 971574114 303789926 949309960 830887366 972646476 256647612 638061974 898536722 940139240 356884226 554727880 442803288 846560994 374808727 504727590 512067277 810315295 710526988 754257885 452356269 833807327 823889817 904184020 700495541 969683660 663336590 927006291 954280402 990539557 855305636 911401195 183679343 404447919 35345620 807512357 591796993 864665520 873332003 954441741 488560594 770279770 179793377 278873481 154308534 791329564 961823219 990442667 467877320 480564973 775634139 896219397 540284947 544227455 754384157 991857259 656312201 963812353 88423341 224145663 660029680 743185075 974009143 975957314 667731009 786513425 660504976 754389397 121291924 194655137 730449736 938805019 864362938 871983277 741870127 750497305 349383901 432364914 450667910 831478159 31799915 306162416 985333778 989007688 564974480 993577478 781575905 998009837 451621405 731580633 571276103 841811675 722663170 746487326 867497525 933615812 916423552 959795239 409782352 754968326 63685934 942416288 104947966 210095045 694255255 852767833 331656912 464870153 466674439 817351222 79757307 456348448 105057754 247278053 455946106 969214613 206987524 755098705 431141293 629599733 47866342 920641904 652481115 856382113 127301429 739359116 660820329 787690983 458483517 604097333 501400392 865868363 896095474 973092227 974609843 981528700 772360698 941558516 963222730 973072587 96766376 842285825 293811734 664618529 527537115 684361893 204542477 211441100 719876485 816321213 466640723 970302765 114494617 767493192 261723694 548431553 727878451 932465423 961436062 963565324 631326309 677766458 977899369 993040475 433035657 494734738 576173611 972380896 185357877 723371144 540560159 857199267 603016341 665347095 405971035 571152716 186873618 360950634 109027032 755253988 587038887 622262712 316547613 657036655 218730845 783303993 191010190 923864021 521028252 827059561 822496375 856577353 779572801 863918145 906522010 973773624 181670680 987250330 188713835 277854730 450316825 521459259 145936542 965772323 524947933 754780038 227002697 652254670 131869863 587283072 315611080 379186677 156846221 799147661 296957138 774483970 743022060 894999235 566603444 780636087 58456020 721738524 442074797 831244284 885913034 915654105 897815270 982700198 866962867 894973609 279752777 952247432 584239111 941382860 170636592 975021622 158744771 709699742 272860918 713681514 526843971 559516990 481859423 830284669 385719322 843367178 387884366 730839542 910204899 977636110 211399289 411089222 15539733 221696200 256599074 448926497 979893438 995413340 968651845 980263133 179995866 297771928 460055305 963742262 179055674 826903591 163696787 650015637 221955285 762526084 48160022 321082937 943477054 994030827 973996984 997158216 889622452 944641978 796325355 947896567 560699884 660768546 374399244 616453269 190705150 512409024 391475120 833034708 939756954 940947908 959733956 977836571 226621071 900868535 515411475 606355027 679511222 853259021 538377700 667088302 383455152 888376070 340399865 574387261 996259837 997167096 918605755 950347323 750724763 928729767 527748256 939849225 41869457 984461399 433786162 571137708 874364048 948057656 319249333 587993425 2003350 805965445 527485303 853676896 44956087 671380367 63610430 490106774 383713432 968778441 443546023 678996339 7945919 550046911 50342596 433190034 916361840 995306184 246413539 601599741 653829627 926299511 955622477 993736058 105713164 800824262 628108064 816744501 155062138 899167769 838497937 949779693 600404845 900077341 34698674 50694035 129922711 477962063 977631673 985097780 911189804 996460133 445493096 873349570 287768713 618452027 286796528 688140992 134851290 760269963 509208079 561625144 528450789 774276295 466882533 826650341 106432505 298701471 76909456 470186553 573859247 969950181 436802100 536872542 285586900 334722241 121371507 680845296 501667898 811800121 154949332 820042432 650387398 919631561 618572018 873777072 442846503 564844510 374520518 948309648 460701819 608528592 865941502 996774284 853973468 984042551 514916651 621369114 180414311 361686830 718143953 850577651 807425556 824900907 232590533 594229819 901340792 927276662 501418778 526401043 530889255 780549008 717102458 841646505 462914593 656648747 667908050 723476921 273484724 659863328 545863268 770870313 51013037 731426869 992719432 999027140 350541334 495129660 710909430 849750369 238926182 925329822 938593883 943512692 856108681 955938762 351400000 617914825 412167991 845438702 494200770 815262605 887662191 959097641 789368162 945487391 620600792 807775946 793109049 937372177 313377002 459991918 261595386 434499549 817072357 999142931 873391732 966979977 961043225 988355562 841265742 993488525 725627311 811628897 480631739 549245740 212504336 488905712 983594038 989648276 87915992 107585303 330031397 942260427 625387093 787181798 423642813 555969042 861323905 943959307 316165461 388988768 140183535 416491886 335065829 391677713 553027247 841900480 585925054 643922411 520430211 620347310 897477049 959971304 839445026 945388917 165437620 564302225 934804515 998417310 288979779 815835197 946111912 987549112 498710375 562533973 708934074 806968238 841123573 864961954 490153410 790768010 140478538 455937119 517164385 560787400 219489890 915295770 5948371 272711491 420171892 883703506 48018654 342116815 734622060 857117493 515635399 770729381 764899763 857021886 555956391 984155801 591352166 839622175 386068477 501171236 756876692 967403135 695035680 872070412 819390456 843504157 588183589 921490443 992294524 995250618 371389952 814935407 821457599 980838422 408311940 946480346 937508488 975900684 253385989 772710811 199750088 706771254 891606043 960929741 516269391 812747728 404014053 550952798 352494070 843818353 377881419 701338067 415412304 851285724 439234396 857828475 263927241 294793336 993646511 998974578 914518494 942617407 220583491 340877433 109727271 618807391 211958123 478528075 138133553 548339146 374991374 602536136 388176789 820398456 353616894 723030604 15726049 66219196 331426633 970511871 839680827 935807493 252977988 660182889 869837278 979278144 226938209 314656502 325275564 623050250 812812855 816669775 463024055 543896709 40275595 229112065 61140827 275900004 847376923 938238239 792982111 873624172 490357996 972254983 279345837 326929521 192141450 985306086 460738348 810848621 573156714 727081798 890486513 964024101 712614808 875724533 45075872 724176222 74065072 249480991 914251374 972925992 296115691 397567381 715680458 972873274 900567587 916091016 904394952 987326660 510813125 514019695 677569745 711668609 53490130 210265204 219786382 465223204 815255855 999172037 567717155 968692781 534567479 560641394 837466557 885528140 154773457 527104062 797981854 822826206 417253034 656113325 143220234 428590817 633703597 926768021 477433110 679578634 130310504 151264526 662514133 850813080 170577263 763670895 21960260 128238729 68726586 975357163 39005125 783007326 953932757 993328236 842730537 903910643 657473148 781765033 296503670 345757265 291778276 403824920 1931785 518370437 534985225 812717103 435297081 511912281 776618331 815612954 221502958 383369030 181089128 882898897 76700532 671360837 288881378 479543269 890477186 997106630 716606599 847394668 266655325 694313472 487763029 960582976 328121544 593975282 237215215 263717096 344778200 922097948 973461431 989877458 639461215 708992026 316741841 525975008 247352362 559876501 589115245 816463061 543343976 599303875 925063914 989096577 564130518 764393033 171439800 793304391 963958302 972380115 640752339 830991515 939794617 971362908 529101205 784109826 473056836 591768582 554863096 777652472 31292704 249428273 32392116 427076352 868475139 956043807 19966908 391881396 917046146 936180492 838092611 966613885 820647243 987361427 272064266 650926000 102369178 521467070 749540841 818986262 702097197 849669404 146281312 785684984 737111453 994233093 318805086 839791129 770258595 799267177 261168825 324590548 258038742 670489386 611346140 830168600 456276152 657067114 411710038 415528647 414690839 926685012 176273337 733830376 72836933 587714316 333507365 752676566 732584103 737214681 888702603 922571673 811048456 892493058 963816627 998267144 962419931 980923356 496118633 742053524 828673509 965085255 338009944 769968670 755032356 887117910 559991669 635647720 154268119 384037537 15582785 354638956 621963867 708241738 458434543 788390635 803082544 943966401 397783148 723438576 186673270 512947756 542866003 922239926 655256042 876086237 314193297 512150254 649065655 898419589 118183375 859640859 76613094 296207895 134259096 485332650 269071447 993068165 274739397 852410698 485103531 583567312 289068472 937528034 768648089 774799172 541706522 731692900 247233693 798726590 16142561 430483567 560800588 952726803 835193786 913463920 971644298 990434737 719251991 757213457 489423610 596277223 491287599 691327429 344582166 715945006 819699242 834486676 390699140 852321025 228718701 264005653 973500352 983224543 47211034 503981552 882991443 899528631 325206932 592791841 183244883 263644487 73201994 457685015 196635763 241170167 126063872 913936146 159131210 857071293 435878984 929685125 751896220 827824721 111211081 906746338 234582395 342648241 507182898 853541453 277819008 845061639 639157885 854985049 298633940 653455717 589486656 721602945 818140175 933648388 55615484 215715848 860624512 875818562 750806817 889131022 881034239 893006025 648415518 691505934 813886122 842000818 541076937 590091116 204599343 836562585 892517512 920447556 688801451 850839660 638477194 807395836 586497552 695133795 749780276 819086195 970116562 993375507 427462015 700188788 712873577 719128532 641638754 979894567 19533399 933282771 936568740 954868121 313062425 361226159 593492370 901217264 723067400 782460317 182280904 913488938 360509034 686155363 283398502 559657159 432839492 955225579 420475841 438388978 742520698 853374133 152984126 896040814 441513134 569590510 531112298 972882386 184346953 711597751 660893059 734777664 341623649 579632559 373150448 867515763 958950132 960092263 57343013 554263209 57441660 713254017 897899850 976126652 307240149 774402926 204271214 331524350 179055956 381286118 116653388 455961809 422147755 692305671 436829111 828148558 814790755 961089557 4691516 511998132 293774283 803460225 322049910 355114978 935931494 998069911 33786663 165429285 209376605 844879975 10803870 629535344 824436393 953272703 424135054 800846383 485139319 590043997 245642100 498261158 7986001 863699941 178267552 436746481 140400586 851496755 69920907 633396471 70831947 248421023 481199871 733455345 613980599 847451602 460780939 553156326 336134016 713579698 374425581 742016410 668408754 911543732 441678296 632257270 592270827 873374499 706339397 930524466 651242244 909720919 15471366 293834545 395638986 799867449 843215360 857798800 759621971 848093559 219933791 631039860 577127985 772416198 313603110 473075167 862060655 966719604 930548848 972381363 402882824 727818134 509115724 599195432 72883580 727812246 294241343 392170638 418118645 611427027 384542013 469910461 775092391 846096910 985619338 994630209 271141940 977478913 794254617 945376374 109502617 554636236 445203731 886808318 17660033 769947694 48063594 437389415 259724538 544603654 378230758 491923196 318087824 964439856 569370382 926029160 353274737 729682956 227197509 313760150 112977119 315953773 864247172 950184071 649775941 673470425 268413451 718928752 74214739 210876678 878280332 884096480 115866276 606895738 603289891 643690492 285895543 903938810 565513101 657478044 311199359 736694756 162974810 331639421 344046593 767365770 477500858 690594243 241993313 682006831 324345863 492953666 607703363 834489146 590004518 656522438 817911608 943377890 587576445 713405117 936673135 950894787 876756253 930431673 523185755 639933777 433975071 966890634 419959452 597471736 69621586 479834356 998177481 998999313 104719854 866689209 6199655 267933624 231002297 268517035 50237959 943261747 4305867 982588759 357425659 444081767 291967561 408163838 778730630 826467844 156009610 970555702 606569841 623628527 433950693 992567558 987750148 987950354 621340841 979215694 185627455 220286590 86196913 409968492 646294705 816385985 968216901 993306906 360809873 945796775 156625425 337073175 453522608 481179761 205544517 897769157 710713460 832116138 39242504 712513783 750737042 973488201 150669076 731099030 444726716 764843170 31059709 495863216 427857106 688178068 14363392 442073032 17248969 881739545 139832953 405184548 463439600 979258717 461295484 899474227 939844142 982522287 199936177 561356230 12613073 267780195 289391242 583953662 97809797 733054837 714886715 901371369 786228159 786330794 343253707 618945619 439156239 924671905 602561657 642587949 193525179 582131407 409673026 918218240 401610536 899352385 841316421 974972011 589437385 966475181 372047283 471958798 353665755 446514409 538736450 967020373 969295163 995978657 169156817 834847918 205454355 797351350 451890571 503183563 666556101 758433725 10695633 152398015 918169050 959528219 931166596 979002391 566608516 785208478 52972856 842271640 106836031 552170517 670206841 753582482 215689900 696551632 160492518 765074342 235241269 457367772 798850566 956268941 824020434 829536205 407475497 537124142 431698237 470238996 878756730 925576009 707735995 803859395 736099485 853189112 714212885 849589855 720250690 849662235 936629408 954452807 983648898 995764742 761555480 865249064 851230171 934047750 202908406 764576221 250988251 964139686 333763718 599382750 450940400 850729017 275234026 704598991 575690278 984833548 94418412 936544144 373141844 853232040 303953908 794002385 603408247 676407708 67433059 604600219 266560000 741675467 67597887 889770696 944924647 989964912 461054405 693469310 778243652 996551428 416302918 719537210 376185241 652729510 305288320 336686915 717182105 761386699 486949712 675197838 17340397 509770047 917767376 956654356 945143331 956910808 749810614 848195798 695311902 781899861 943061222 963146150 406696791 546486978 703333655 858006758 930500001 935260977 828918474 885399879 359887720 912854859 744375006 952251949 543711760 902822528 849512951 946906555 433187121 704999352 909073075 974444852 248176414 725288413 385496594 955328658 869684286 903587382 478078619 985129220 180798179 816258796 563354735 610383323 284857535 701477761 638339818 661228174 355454286 650116327 428013606 969198364 45086489 686112986 313472407 903596934 991426186 997117385 263278945 423224196 227978295 554237393 266640248 712270424 83468804 513809220 332759082 668444711 547499607 621544025 744214783 974875130 847491978 966227305 467152660 918995321 7118868 235115519 273780016 332723072 430408051 611056285 390725029 761079376 888572330 942639552 772944686 786893849 399720516 816808537 701476411 707091233 466329543 742723368 543276949 892760427 65200556 296385713 739240672 792287771 730232607 932885060 978947251 982355586 881219573 934992456 388687485 577541616 832915823 979040114 912319515 928157039 335603489 504019350 419504329 783972925 264080913 736477599 443371307 555564704 244217006 673303463 284887149 838892251 247993843 953909079 582553003 680440156 432353180 701523328 622055918 827494827 437073977 600070716 816052108 939729610 436493503 776032564 191695413 469574613 232739456 306902428 425302462 508541730 147893935 776008709 815132532 896126508 150166219 477603990 102231773 751346036 378945995 556405927 922568271 972595788 176111137 650049153 704115229 884058863 720599508 824662628 435080474 550069880 717390837 861091384 145964128 419301663 445312774 657088229 995390172 997475898 54164916 993086096 154214325 320851435 77933584 940891532 192815093 813428380 184605516 452267797 3261127 693791330 561674960 950575677 41125656 683278513 791268857 881272206 827427036 875088518 378281665 562066108 614169460 620856150 43920796 345830479 429249665 485352296 760681763 967905325 149983353 534733577 818251639 889460318 535179601 593619808 266565415 668868552 787006219 982796862 578485187 663356668 663982550 669374522 825488235 950590472 383405555 646328423 675369806 921337046 798097720 938102918 15478532 857839222 682672387 869943228 104431331 159769448 940122821 969509469 661325204 767302357 694474911 716323775 244612604 598147414 469712840 671760579 721338508 939216108 894262628 961872715 436483355 956372779 43898853 502926414 406775477 767503941 974396276 993560107 458403853 741083523 614910592 782833716 88610957 901196485 998123318 998515763 645325489 965205029 458834645 981215028 280312970 647476081 901708163 927319987 16256867 531217990 979709834 985660178 954290664 997811123 990265591 992304138 714564122 959068774 581196237 835014552 316790409 499543830 846812185 985114350 605499410 886867539 147207359 834903223 724459398 838651901 245346570 920360648 914196863 987389065 776353331 801409526 47570365 255746915 29752216 330900657 270386367 634861165 70294899 484456888 447960891 743224379 751636038 843795996 338394773 343236213 435044974 623281345 589144188 768013727 529832766 791666137 869635771 946159229 199713402 357899864 905937867 991065992 55111250 482685520 711876061 835213014 434256251 658127321 791896076 862839475 36941724 545930854 88872190 599636689 386605460 419186195 585859844 653164348 914584957 927378290 4950492 538701720 572136139 873699729 726344603 825780650 572813840 614201629 957826722 968665252 243215090 297285774 740695798 922557048 854979441 912594280 222968583 953059116 208488514 765080250 124438571 704736237 33319808 985008784 417555929 862701295 247348055 608754789 227912453 802682463 288679006 383958020 360993795 565043748 618284927 732369954 474469434 509175666 728694760 984668360 693356862 978689813 268977272 559029670 356093618 652524430 416888859 471327903 750631188 985437780 829828926 877393699 947287354 958092616 481302375 965896420 504268110 957589566 1198330 148955041 185016604 549482448 458466490 790364459 863765776 883345990 125423725 906573801 60879045 957552176 840112866 884339239 711377218 880687421 967936628 986020880 524190919 623570461 365778166 407471198 147833632 591458904 827197624 986331205 52923137 662203345 619363912 755968320 425923131 790514224 236812022 418768091 999005666 999132774 73535679 799070978 930624893 983189904 840152026 904769003 171073003 884698006 205672327 997199562 662885876 665033500 609374844 792125013 433849857 635833300 312068213 639883265 318592440 545678538 11961422 67478806 490344505 633036026 62066250 735842272 918437104 978395955 167440388 712931748 628323574 637909309 578364448 678096189 817533196 908592193 569617792 806756512 797742476 996291899 334710847 943077124 561908104 772964971 433027773 830526343 686969529 721531407 796579035 861177272 870002725 972628571 388777678 605697835 400865596 866928597 599837470 902080397 732191278 904349691 927986910 996808341 664968618 684945263 402670163 655085612 397473625 458598307 761211232 906140618 89827541 492292779 375970415 693068294 96650394 941207613 10915165 769243228 702215460 790443645 403963243 728032464 281206466 298756027 816983952 985032803 759592601 959689087 985234520 990793048 238786883 642614768 623262828 814554485 908468648 968612751 396837241 465829509 179109427 566228216 864011749 888317879 601173774 865609916 237140599 869472815 471846451 944487440 705512312 890273233 812214987 920491045 855103926 967145692 908275943 988022642 202230686 567743240 742689172 946702888 101443150 829765838 429615269 781934732 21862673 646818610 644049765 990936351 747610776 866516001 501460885 646681670 203900710 557037372 95665069 354359364 745777719 817256999 216598040 676376058 849762541 996409487 895779124 963736105 147865814 291484332 687511423 746297518 93513362 749021614 876598673 960594092 823640100 987291983 975845188 988507437 354609131 742421494 532816856 702778927 242008180 504370371 321048203 456243787 825705628 973945014 53058499 866219470 594632487 683582261 593501771 884944947 854915850 993918189 569282535 810711461 466774451 583889781 718656849 817492156 768754359 859832889 677412893 939626301 915780667 931380518 381610826 498671431 631421673 719221266 631097249 728542193 825724181 828616537 247570519 915390470 194541656 228202779 34504514 211417151 146682821 636653536 173817386 594060899 589644935 600015264 750250184 755647307 892370678 913984966 464106035 958237136 316428085 712399308 820999314 982176613 59133325 824650115 821926911 922993253 404399511 452749947 302736091 444849988 382639829 925935531 936046120 982835151 835739242 972558927 212436344 549714496 159827189 480908169 351427460 908323648 943282117 946105238 676530739 715713589 583400196 855022811 76167635 318763814 675130430 919281735 750043166 776887732 610549250 943026586 81948477 316115509 426112770 862951602 438549133 985534743 416784893 912568028 798241694 873399125 658246643 768217374 800370550 961721400 356106172 573734193 916115496 944871079 726916532 954206755 680310988 929914946 680029743 920333220 997738141 998592106 258422225 737182975 300305523 361463697 372335781 473825071 327457469 603089249 571088942 850639169 771100874 815917634 894224669 919009072 311144688 499283236 321432481 630521203 282458302 468798744 457960597 478006367 688262394 856283489 429718742 812029274 17691150 146781614 332585487 851981193 309748023 319021163 689899586 993394002 547372821 838584392 748240520 891787138 134705778 627787081 936783462 954713272 129438514 412379117 795878000 841410483 570438126 819110201 54408291 934064548 359206484 696322186 231675774 796705402 619769447 688711224 866317055 894103837 494246104 753763882 330018114 975341851 524254124 749673936 249083277 350495400 324765367 371201353 847697813 931115057 266010802 889315359 864710951 946248942 463150812 960258773 27415689 854459399 236954054 356036096 792508778 824886029 733526957 833317176 97879893 630431262 332201246 872413649 542950585 809113031 755265857 848590814 574714874 692353781 55035270 873479114 660248896 941031593 490313088 864153286 660961744 940306385 199130142 441619166 423805876 660788643 608293698 624516973 139392826 807643399 505917796 640750211 482597581 553471717 351347180 876869679 567409427 978080003 207213105 357947866 563987623 949008907 392581575 453575278 455790584 491382897 467726186 838800153 186352771 890823221 455532839 579147247 820573933 961985485 870529141 971076473 187058613 902758839 973320709 991532054 560028164 707223771 103009266 614990659 881870035 957681603 370442974 944687601 669634719 956927070 412905784 742690412 188852415 775893755 525025784 897652114 605487607 606935819 425045237 452532526 615083098 777612961 435333524 937160308 743781631 966565181 707086319 879049040 930968496 985931799 276996561 772011181 494324051 904440245 550603373 623240412 97212675 469642490 806883927 870217282 517734252 993851976 829798779 920793357 311210302 455860347 641750836 736771953 932437678 951229934 582463702 887593777 837437313 881449944 575852185 599571208 548282152 959743153 906938399 990615797 328633965 639277434 654171553 830364793 168627460 587656492 14557023 961723971 84983740 884184088 153426890 370946215 632601698 953328222 361235447 597277798 483678645 707729532 823057714 952892500 990528683 996747257 127902252 172237718 158081240 441575935 937087172 996129881 579321955 742139315 595984623 730000829 814777700 857157148 341896037 431352362 458122908 937846231 887717421 926992669 678472597 903485710 386852399 900894126 274568473 858202650 553478084 719286620 97868565 494017948 701667426 900289737 500415441 909716674 446076790 855113775 174425260 550388855 135532969 578265471 142483415 169696180 277402968 967134560 724428630 988728369 8974221 626931627 633715898 987207204 63367571 475648949 161741388 509440103 142129464 577485083 83221791 349657206 531316810 895491688 38600074 289605948 308667286 370210365 317243710 705403812 651130134 964621079 641397998 787075009 452243377 728392198 919721573 979120637 112059445 191093487 666369552 995464303 398799294 892318641 341544974 888943239 752305464 848950377 33525887 143349966 930197924 962503685 484438207 956886755 39398420 841612042 820636917 849311742 80890482 737466320 934605092 947328254 763648989 798082037 967652488 977304895 185066602 965379555 100937731 610990997 442072013 707158768 382566025 681413820 461290575 554985383 382621522 449774956 34167465 915722890 553830285 677950881 480429607 896055188 508192737 863839682 959127614 969347163 62253591 725272045 182951547 681533187 829846438 924347839 239075960 456026890 67480763 900956661 398169247 931511553 530389816 944223784 361679471 903820281 29586774 118174395 469147992 988263472 545437953 755855943 856400723 906826205 369475704 913730327 397318256 853786432 799099812 813754271 79716068 390230594 944505700 954800198 165209164 494031673 401976681 935740772 19608623 713785182 483634600 708332378 252936915 575985518 18704842 233814169 530876904 981670250 375778120 528034671 917511065 983419153 445507479 664860438 255231488 707269777 57380438 976551692 462101624 989549902 582807922 593983932 169523545 942235497 209847469 553792098 792319964 915037781 633054674 714895526 305868886 820355494 696115023 814064692 991561625 999052528 157978307 715797053 710281911 909709933 911114433 949448755 154928576 661800019 266883167 824713107 887895314 996872260 858006992 899000485 422216493 742653278 389612351 741626374 142482251 629748799 506769949 768975577 944643072 972646025 306415285 306712947 59621793 548882135 591227475 914866025 255601805 467601143 786669544 816474646 656435386 928818203 341081154 782659262 319088713 646900200 222617074 796117603 505531739 774949677 182513906 860855972 190244927 558505388 554768685 676260853 996574772 997050889 93880575 648057095 199345625 858543846 469936618 815788574 795056963 952166975 843449293 992994902 313995791 500588635 664708586 954381871 403739237 674397689 435376837 900026820 653729086 899045535 806955930 956875631 448428132 502944655 743114311 958431968 849016018 970815242 271883523 335731594 423108412 697559586 192732077 582291804 607363052 828701290 243139230 770202313 313554229 481299804 215288868 599413191 406746955 587020627 521324772 684947886 155647091 469913796 684446498 985545674 984184646 998989956 591471770 774069549 770259841 777710775 831506633 883726249 797695781 987977615 612526337 943968241 403099545 648784108 374406898 870346801 657942642 748861243 294127897 873447832 448112411 866941180 6872332 204931372 780343875 893085834 561286150 705628998 788959865 940455404 692364230 914811017 532403541 788892688 790322435 837344870 251421044 601546423 184395455 577540084 115753638 262517835 460877963 496465146 544240343 658084498 148228232 415757264 939527776 996158654 880626318 941036604 925062062 955111770 482281326 741963366 380182294 486520620 110279187 540367478 615954685 685339304 127994979 170521579 339815244 979868551 118377452 280046000 592897300 658990970 964248950 986334856 81093216 166542475 208504265 531179710 886776479 904851069 598818535 950405769 630414816 934519695 225114121 480155883 920404321 950996345 387862997 948253718 780732181 884122301 321506788 496691902 73482304 393793789 340275175 391183930 212908902 868577534 73877241 229744692 686965277 714690418 529614595 980403406 576647741 792193840 57872354 436116951 729645409 800604942 877034080 879689948 20734057 244193308 285649820 704012657 979446039 992045226 315140771 938723022 308511142 397882802 997129409 997339020 463417998 998001196 311807053 675851409 47047064 50300844 200120123 293326372 977963356 996327020 873918390 908986160 540526521 650162684 671779515 722379551 330006651 682626357 704959530 910872604 987597429 989445725 839842696 893545384 419678048 747457461 566701160 586510078 981467074 992155572 362127236 892304022 115343470 231374815 668284322 903389973 2967336 927310003 279787506 521755303 883188893 974966811 990052634 997881222 648100229 758842952 433342232 589721020 174121121 807911870 933901771 936119961 573917083 795426384 782488110 826157498 753320152 811117543 139779857 167395912 701170326 891861770 758558381 907911097 547348003 683418208 794185664 827542167 496123035 893251662 877868094 935483072 683143380 758618334 447053823 726353674 637716952 935546917 871770766 976930484 409961844 634437225 26154026 260880286 908685379 998941244 440301982 851314918 567047343 597494765 420578096 820578633 465519538 557923219 600534054 840618799 685042857 776339922 288959353 417017261 467574620 750438477 417552034 904675361 210116291 900331118 692509921 805420056 823442655 833408704 12795897 78315841 500304792 813136174 758760973 939516228 22421659 941730328 252811138 358692375 942816569 963593871 10472988 343591750 197243605 982503402 580424239 987330841 373613418 729189304 484361989 633473558 783352578 982707183 526648805 703360511 528370009 992838443 207152035 791915588 921859662 943923332 664408547 724121695 139609865 176479597 659653471 735579130 551160971 663450171 169842974 889896877 580669749 599267706 479033790 580164812 950804994 987585601 252438580 832617860 270710043 626950681 251446334 255568199 265705713 628716299 458854092 482676915 689396980 854829767 580569355 900999830 753472169 887654297 960056465 962486888 304909561 860135532 732584299 917087480 553017798 930735157 691231259 792969452 431006214 978061409 160797150 910350444 147636569 434956233 842011407 905846936 655983922 706538729 852615306 894134319 933815788 980591050 941778052 965366466 479439357 806316308 847666108 880907550 737004819 858004326 404745247 554216010 121570051 265520083 961054750 979455019 88066722 551877865 256314068 594419995 477289000 852721430 229195548 351902659 697525996 896290386 881396319 948153211 505071004 843257435 969929818 987131296 869811278 942525024 439030988 961948343 241722221 493043228 51748889 297704351 870741456 945782040 696009728 916812313 150847097 273596483 773626376 898152726 96454288 655682386 987987745 999079031 397559835 902526788 515181424 815960919 632434325 641096160 100491264 535758610 835554838 938396315 606448463 731314024 55850688 793448756 441132921 607008903 141302229 900151419 647679151 674193145 409223583 939531298 550773669 693892506 589757090 834931222 913694261 988995603 470969934 776100080 8548761 142279852 203839770 555324511 842398827 862312108 392562549 717475123 244072437 468636374 548518823 776168926 27702711 979910402 598620925 896594428 97567533 207630610 819562268 864270154 411122990 461951238 267109157 824805295 600589768 783071776 104103424 615556579 824342984 833840771 44851720 948406452 466631135 953690933 903254831 972225556 484899186 943248116 31148042 546853159 192361537 714710077 669223178 983436134 796078733 807292630 418483369 878892597 997829990 998301502 106239235 265262396 74162549 360035830 25742190 413244146 545795602 766505463 877247126 952607789 284642140 396567832 637157781 896617870 917235928 935600659 881199697 996342352 216901246 434021310 828694357 979939154 404354103 470014343 965596706 991641878 267696555 284152127 780892701 897673455 813968790 963580506 464537053 808501700 779233478 821566603 146491783 338599361 660635978 880848759 768050671 806950014 523329191 963167695 823772923 889912399 563108938 872299426 453031789 681476335 346059657 660529639 12154846 25943327 101691441 141811671 563168667 581916365 879288915 964852455 20455655 442201632 313452937 926415034 622470420 681900148 485008076 974311612 389862913 416886071 854617862 862618558 984837738 991800774 331739303 559241247 330183315 984020130 525582757 914276247 719496930 759022566 709417289 721360301 104195935 599299073 399781510 756255530 338125322 743847977 590588223 602014531 225260228 669506580 324222099 816706397 381322859 826781264 376922019 838378681 260377391 554216783 481184665 678412452 88251958 418929199 106592387 484413094 991946300 995755533 111578595 489146770 371056931 634361971 709459236 922943636 460977143 928108861 759866846 980376570 7265344 13776865 910470897 994671655 302420751 533299790 450325536 961011064 333072124 705996520 701205384 912004178 229950506 453776464 82135741 711864989 601064628 677036948 199857477 320541402 549043170 917365821 548717135 756295684 475521923 897695720 727333390 901853617 194457482 896447808 226887496 642222698 318680429 685270952 245631695 775474484 267551694 906615441 235771284 642876984 893497036 973444040 413170558 968609045 520742559 762243971 746331748 791608140 456868127 544771758 727953432 934435396 164874197 254833979 939160859 993441207 367230663 407388280 245948243 844717631 372514675 488966324 404236911 862313854 473384626 775306324 182495461 658572389 333465711 761618885 612472910 668083057 169088216 268319383 100990633 728491667 781069425 900438435 111768077 794928687 176583970 293332064 678973666 822782545 745936703 755708240 650186165 731853567 406186416 880319041 968835897 993485185 59789639 456920824 1567877 548015602 6807691 855890531 833740375 927006561 14449565 334172766 66150447 821427289 266828149 534177665 482726973 963986146 365704650 642999088 230531075 690741982 603165920 943626624 111002699 540092404 18275416 456998720 387492335 429280268 850495770 864044160 80768073 690773877 938496544 963153572 773205625 858682781 486584167 809725117 572373479 779851044 544199586 650074505 917845288 944596782 685158852 686260833 530708127 650949379 860596169 966143735 306281345 529059001 969592747 998834185 975276169 982312630 153157343 578267375 384359903 928866953 88461083 306551621 219696284 441484361 558936628 947281535 130122117 371542087 385670849 619882550 721641482 727172070 445937203 788595518 680938705 755591025 758494356 886477003 376873932 379197571 25676055 543945739 452102405 927170961 106345557 365175740 428837549 510234251 823765201 933729294 40004868 770635875 567102951 898612541 818329383 964655309 530139015 627834982 170615601 493149686 754703044 896828562 169272359 314433869 610366927 710339331 226145182 506489252 242718210 293374636 130312490 956515377 29837597 552251742 231534248 734761599 317161115 740940530 807497999 855966312 438924631 669577652 217402397 293803518 114262831 713358107 395956221 471078569 793457942 863200060 406003118 449885442 74763970 334204582 836353621 860204212 925186728 977144852 633673926 789737296 165778084 689022835 135901768 871937889 371054701 553941833 321515824 991389721 468423029 871518787 751927999 937030307 942976295 966408942 70801458 858785084 918626507 962043165 982055014 989155020 199432987 777877140 902866645 930657303 177401911 405169902 589679474 678802728 905834436 946533201 936713629 998811569 186922807 518519630 417948128 972469662 295378379 670886064 616216634 855172737 857205403 902729607 601917117 978271859 541416550 615413325 349878227 588410477 366868036 996149568 746063554 981030163 69228039 265086076 975121303 988633664 568480726 736817493 738034323 816288501 379514929 928942140 75455464 182305208 329437526 603394375 261093027 657677808 419734602 496561691 841728761 860138011 155292515 451576381 356172987 915569331 994431108 998785084 161924449 684179467 450458143 634900190 664216103 715488069 829873086 901254966 728474824 883281728 388747446 753752596 769417140 815414785 380947876 595050603 533936591 890189775 315197315 896560149 411847331 684046801 957492723 986965935 188434836 910309837 194136635 781342010 273917406 697961862 249841040 592471096 105540095 702243097 367991169 619596331 19423377 116640193 818072559 847579135 588234022 614210482 388560953 924185296 792520538 946271395 4402182 873552722 561269796 979686278 659441524 938220339 309161662 901249898 639731556 966740543 634735862 740103058 635401924 643792713 575883299 893780311 872650822 937852895 576451286 744914905 80963963 91702167 90654129 191122343 992132548 997093131 190979814 630109611 81756611 627670434 908741040 924224564 931926857 940073614 324460079 901668307 112676931 179782612 338713228 586980504 959051358 984762084 245278845 925155370 916772130 946182899 711678522 908006403 348553258 924889451 687664796 908317417 908447080 915510475 665574776 772687296 284146954 494712980 847187008 960303022 386227391 864685344 780303686 879901727 609247565 815545874 245617740 650261173 119307851 402885876 555567940 759282155 547421350 902911986 590519907 612311739 555083328 919069866 975642406 984014831 504436692 575754617 555269825 918732563 820531952 876655595 281724369 928786753 908247292 922201188 359397470 377795575 787060587 947195604 254878021 889126234 734405089 946142907 906791268 957542745 457371308 669371862 217411539 922945723 170775513 527402088 884474485 963332020 211291269 786968762 501623135 821435221 737588024 917521148 618274923 696073935 224316198 886139539 787406409 993869759 368572415 386835733 328942916 821209674 288742083 403811589 179179003 256825123 48812070 101305954 670769261 903389318 956279296 999357401 916529211 949284022 686656213 773322710 317896398 898761325 246323032 730552210 268793873 745149927 198568088 916475364 365122020 765993110 14679033 407149960 788791227 791638436 625571299 814555768 813067058 926419805 748118629 892318731 328646474 621031882 396778542 597024683 29244952 987282953 783097755 914602562 297770625 681270593 836257821 883306607 677802332 678141150 782792835 932210047 686764501 732656864 170767899 321055360 715465431 835329412 625604002 901966221 868381152 980339364 595295822 880166267 798880575 916925395 104407772 121120178 359869355 980524204 412903381 869663651 108529211 353955029 773788835 921364479 854838824 889063253 964524430 971910009 831146764 887541382 70309527 839536227 685687445 940394700 181866514 952135172 722842455 985470199 655584442 938691781 383440895 550998748 144363815 484701244 646403983 943653555 460378464 892616021 275157831 308720083 346795399 804936703 495281265 935105360 128290659 803175349 264731342 441594811 84212762 342707432 903885191 932036764 199869092 368534029 72172596 304588182 255238325 739277530 723139142 979503589 277327432 546525098 581514465 764498406 243180431 452465208 559756686 693981496 452216907 958884923 782820201 854867608 793366799 960765540 324678915 343415120 81272625 555367401 954152451 991208928 52305022 459483828 178787138 990873868 108178092 536953457 923157161 962158658 791637271 925921288 879544824 968531960 438786261 912460351 2573854 441772105 805754310 854069884 382499835 769686081 128052483 150065420 520598201 635232239 209405336 479538279 499562306 722362239 30097007 611514812 850891753 910429788 778712781 809367812 520323707 614052446 643084295 944022120 170736914 682464482 896086738 960306255 861351145 980893423 638748070 871637020 530227592 555134710 113704753 733765659 227198837 915925091 819609103 855558652 906913270 978141136 412460915 806826301 38508091 973687680 628359479 781096039 750711414 827548890 174862150 319258853 55838141 69500568 138200010 239789911 486465900 587056950 419183697 991935194 710194505 842072871 874010641 890233967 71393 459725210 564817397 956536721 380386454 455755442 790299704 970298578 634299251 825813641 682956032 708410331 443297763 692807426 537993396 894786527 400605396 487886544 799507382 955431763 421676264 887900417 591581221 747972994 410337400 551805887 402918267 894449970 919574669 980230891 230141165 263797170 454394530 820089043 347744789 443880360 433168355 874996021 691233588 870042470 90656002 892371159 181209053 204081763 828429663 867427299 743195109 830064503 91657005 598967807 380824953 692506486 790542934 937109690 626325695 829232439 457295274 790997290 218963564 546742037 938238735 972134027 154481528 884974217 211428435 929520965 950220345 996691639 907489809 968590398 345234369 737321910 168188829 816173654 899366926 958549019 343986052 596089867 769003055 994403964 92114586 892586496 115818790 483330885 20045851 669158282 973057209 981321691 676333327 942040889 356041520 734639185 640909785 655406884 38412505 212604313 194254261 772495670 805913091 821971182 52036694 682197922 242047191 414184298 638814311 699052453 408486856 865002425 903220117 952140405 107088447 928093662 87561834 635796264 145618381 732395767 464006140 716531684 79847508 436211376 224357302 999304404 97798764 661157585 571756577 674210093 716043465 775031705 354106618 492377230 420101588 957000102 404458669 494594026 466062400 757938030 204464795 425092514 296663582 701481695 523158169 531993252 797817620 984197254 995564829 997571725 767191528 860489935 635620240 689789505 361230479 693562896 110261210 821233893 147082805 639797034 976399744 994195968 407479957 848615950 538032992 694251916 805543937 932802074 556106138 695115984 201663118 871468261 302318332 919575586 99029689 169514428 342513639 612345576 675544656 762857488 792963810 877074603 222069076 650207145 41913759 877686979 732519294 814544202 310888973 359614689 699698183 712212086 641450428 676603221 989133215 989246088 442287318 659629173 598198976 857830883 814695884 850673801 323792799 412915513 69512363 207424222 340278695 686870476 573234487 841356987 110882272 433579536 302995667 932038425 544328232 972199032 265494179 569489857 998608905 999357372 63937251 538655412 884490049 970202272 242881650 533396366 213509062 959032533 307300865 993334402 556083311 778769459 895624046 910696446 148640449 389978782 168912380 387394384 457877432 482916185 658084931 860391530 447231408 777555844 508544795 950731886 231991038 994710862 797134686 929634582 878561374 921150692 815326647 885840532 171460952 995959042 709747534 859498995 43878665 747181138 279163584 403818940 701640578 865002216 643394543 841608778 442086807 677804933 979407299 993673125 468580804 479990412 639356190 850157181 327647847 942907474 204696961 768081794 4027653 804502055 62496493 966241139 74690662 481685046 958751566 987685844 951927896 964288068 123719815 839172035 147402575 216879289 440488846 728876551 637393026 975920316 137918931 571661685 251046722 633923505 431401946 623598307 342748588 834204762 985820106 993331441 854577028 875991501 587621015 792849861 572430923 882582363 777795803 841808567 128177543 462069920 372070145 712150199 826820065 923076853 441624323 846496798 51041206 104441139 675470186 837374651 225240758 785145978 221853944 333061123 421016524 928356989 376166277 464205569 771149663 778594471 321481922 798376751 119303467 717289677 55101945 403400242 277918670 322673591 183438977 713335885 706148719 974354807 278038254 841210753 578034868 986666856 497592133 916390424 19017093 233795405 316068922 444326706 898106847 957482634 350242062 568305993 32370095 939323415 924360482 934712943 492660402 504703909 771527795 969425362 77238501 469771025 135520265 252573631 528097418 749325508 672139829 790242124 407537816 436018400 271864566 892997920 210229108 960379983 689519194 983728237 469331182 933918398 444094652 555453919 135943431 970932266 546998098 640776484 348850106 690614332 246991581 738285296 847756099 862337615 352121270 417405854 184812025 817494208 155878460 710203487 178434080 302387917 494873741 861746018 387593153 710282426 989190108 991116395 967941247 975676809 146019521 935430692 321864337 509004528 630081545 704188310 262721911 366497152 189566096 328722072 597452845 912784997 77703948 653315141 516056173 981602616 78391570 308480793 814730501 822299618 65818869 793410196 499722093 932188153 460318804 656736263 784934642 792515694 838861342 884090969 397814522 573135555 687568897 881462817 845289185 895765951 918405002 920976656 871773214 881349517 88991764 848055078 298580729 904878996 877917585 970712363 905134741 984156138 152228219 225973585 998142536 998537866 1712991 93303713 828572023 903585115 931679718 993762054 317620457 939378836 302783624 793273552 605177202 905836813 529910303 791504706 175943682 285632390 88792575 187675419 808108574 969039723 454995427 695344942 400003031 627833447 965394805 985480889 178545146 925038967 783439959 922999667 213953879 687451032 355668877 974362984 971313501 998481023 783757989 864790448 962074709 983947786 973981255 995315395 933678267 969325384 608176809 947821602 801379017 865484020 432249147 930894046 170655710 583198247 624240331 797435871 93384909 656626856 880623227 906413868 677694690 862220147 140287202 233166262 227533863 278521424 217797601 639769910 57287073 545947207 86291333 911560939 272246966 984075932 197741766 445758683 913340782 965674313 400505002 882908337 815741 76228371 380956042 575782330 410279631 793952214 842845057 995988098 574615890 683134645 662946131 709408735 665346746 819534586 737345860 844072912 641136217 803371879 310205856 616172378 339024831 790364606 549550918 994534839 653257440 889159926 97892843 495044027 378628859 906176280 598594131 691991058 483706717 915491286 505204541 890350763 561449001 642256733 820489911 955120708 894868689 944166768 440370937 584119081 545391294 876357152 804247106 963992162 559032986 683394918 508183268 545729027 337942951 964246366 496917720 825866300 194791272 774787679 386472064 592611134 8329465 293351559 442559194 680782629 681804012 862938521 778893219 986739298 19794366 614254895 806953199 910787092 536522481 959768857 901043500 991073707 589700886 977133583 835365510 952603247 555086657 882540791 562239017 575309545 861985706 932822237 224296214 600493859 590446451 631945345 461817580 761954658 63209433 342619143 231281746 415961462 240833063 581887528 140434727 986123757 685014106 919116710 410300926 556219304 221007822 854905070 248825449 970545799 91659079 680936245 482216513 947473783 796934658 840638502 501362297 673453682 701769634 923295631 389842204 465726444 939504951 947927242 97672576 334651935 76990194 181491075 155038417 470604317 395411941 667845785 572498689 739224603 664454465 996776934 967250058 972070306 676672588 925368419 797211874 889452941 559292200 880332753 897574334 972787396 619361192 641155915 997379947 997746093 706830937 963343794 34748119 265951248 945971138 972429732 345908757 545546192 266891368 994715066 555125451 680317171 393853086 855309786 551597872 719138537 53274717 286759271 849728888 917630773 698650800 835783472 879399414 902101462 229433432 440107700 847803554 919752083 369387895 575038640 290006486 523636345 327754769 918479045 362355249 539727650 619878731 780137423 911966203 916299874 486769475 921119331 268096309 772426602 146836107 355318251 204390509 852921837 415295242 679895022 752597819 827783855 292107998 497498443 702252994 892303114 265480343 939045654 553959913 713619736 355989259 587631211 953599420 995875211 271378058 296086299 827040303 850566407 292075370 971570478 663335687 995298232 456877643 671771597 265828653 995772568 154933014 622616709 823799634 858338937 680059547 967598767 467038960 768788780 710886382 736757485 530318734 932715621 818294350 911713890 194138027 931046610 516366234 552957860 787040844 828246650 539333543 805635226 507996722 912596916 964954277 999337380 735642437 982760375 987557626 994772846 38570549 713596815 831261147 907131273 877410351 907048766 793660687 921093611 722109215 882027382 506500202 760053615 234313483 322011064 723745527 809919469 909587837 928491302 833653151 858844906 394389792 474671731 771694096 864498008 944748445 985061015 337073001 385069539 676205939 786355112 772833988 904007953 465989047 860938255 110491195 935899362 554410481 664326061 336391447 917927024 762409295 802384291 912648684 976102759 411753548 658035045 698055326 932576096 373081512 409713689 529804618 767887237 441282237 713331678 592509543 842038482 823486380 954838279 124878621 700308308 708358210 842610194 726971325 928636078 978483000 982567982 988074814 992853412 11560156 319454510 85184524 504729570 267499812 930733877 601533906 752876745 583537809 631961804 646141507 713652500 411898082 884851093 736463068 861117506 374835368 789170960 183295338 844570250 348773418 794623066 511324152 836593065 387938670 774835255 219554383 629385919 120842473 358701148 839493731 842217154 815144768 920761138 173778541 187409509 234493977 980272278 437570693 646795320 992690985 993834166 842825257 854171697 492920409 583184458 627755962 630722803 124298301 842614318 804004568 885764624 842273312 946710411 481767995 847321045 644936415 964783534 766885878 943282061 220138196 691418015 901571627 927183861 370669640 627290596 683456300 722243693 243309167 989914797 880821083 983168310 146574063 953311546 673689239 857753283 899714497 940162814 639299855 861891205 942243250 998237023 570201881 664480411 676076611 710806752 194212200 296771249 873996946 933250704 24028817 986506917 715040099 833749434 192751637 418157018 650364696 971421547 578656087 678040967 371771123 836318280 694934239 827985721 347865402 705224326 766200479 983324243 796318986 854054935 841650877 989647786 347230669 975040717 636472491 919617263 765065496 966521007 128228694 319011375 987325050 989382042 775888986 797338832 697626902 959873879 925973361 936390360 812925382 827310317 380923387 444297867 774719462 909021619 712279612 857264363 691737680 843464649 586858307 787713036 817054665 915018749 467328249 491949273 382716751 922823238 413154660 438015069 89340945 966010360 762795512 911902896 914763248 953514477 403877797 924454613 532861500 819379400 599595852 852527102 790090562 899293707 773969009 787059094 776641471 951198997 955314743 990782721 725958551 770284453 880138776 905817732 129411390 377126556 87634413 936112412 127188646 873273884 933616848 993197207 688514051 763954559 412647747 672567204 410162387 592971221 475362281 636461335 135388523 234795497 122618404 942662637 505335361 540837725 47839518 60354323 725580639 774765730 159352946 568781799 943799404 949192812 759528893 965386152 435367135 891334276 619046996 646546759 250019030 874130014 137343697 144742436 96426166 201779152 495341856 573295971 125908132 530441161 744387862 887842830 936389856 957089255 157450321 424591719 517030214 858650807 372766446 706050600 305782500 619330165 258572808 265219238 726728344 853709831 334463102 861851864 33028963 324898919 280642010 963781206 292589596 766084728 595952740 842171194 866298913 911554363 598334529 680230447 563574336 816457084 35608581 105596765 230477258 598620427 661201166 901832702 299555303 555474853 724584156 760791698 717766845 886640861 114157949 194412193 707691410 890459671 569828305 987597450 43093223 630007312 896140182 974363695 340439894 490289660 792559607 882502268 993425643 997073376 612381331 761911016 521851108 643806295 853364032 894341672 49924820 754372222 322639612 751070185 947826616 977847521 437891645 490498311 18992432 56772581 346001650 525145925 590768240 848305086 374501677 845436251 852622645 968609759 887901246 980729867 408479624 793356998 189353335 603529534 53973769 812425913 34475862 79154578 433072515 691574220 935667547 952125457 812710320 889432674 410252492 763312158 466053553 496751241 819301628 968077620 574439361 743801639 496905374 910912389 509144614 998505395 250641652 562218885 221408664 537156751 298426864 547938270 192996339 627846333 880741614 977959553 607721409 985357991 825968979 978417554 868357523 975864832 284504181 796839159 510820535 586566001 865789018 902311844 132792791 554757373 664908928 779693661 964464333 990500247 176677354 452105544 826438578 901951532 255349096 834604132 785116779 915586177 747648579 890868428 438901934 788440327 816785260 925213278 362723984 497070946 381526611 817065409 897467689 988187371 258568116 497561369 570619020 767325976 106755347 412955874 835120180 896489764 344511403 975042770 561427715 743981740 996088487 998293826 894489459 982308456 401915577 641121000 255636428 846665366 878478317 943436617 927402424 954434237 125666282 339627694 961061670 980047852 583055518 963325250 228467861 533825401 749973175 836439674 606893906 801390960 208235237 275741739 214612641 944836143 622915624 659586677 678694322 860672997 236267908 357898728 835428265 909279054 18101623 733858354 223919978 374983281 399808718 784198186 893788414 981130174 67427658 894992583 376256590 508111134 569439501 768787656 755246160 783313644 23099536 753993283 805208090 821448713 46235607 590772052 230924241 330457003 113626888 340636805 842890903 954159009 717503589 752054532 797345883 890643014 771621159 893053696 895200695 938414315 957699084 971996227 935450600 997502569 190258814 249013352 105783149 946221662 22366671 877139997 339275747 488911145 371524794 997393174 364125915 527509042 211303649 389433875 474106425 526939513 428913751 973372550 649819377 731203967 440547334 476044831 853815494 894183396 765145413 851682408 789763388 933985748 907741700 992240282 4210079 982489312 336279552 515322178 465132168 997840577 476394472 843556015 444633149 812460442 849071762 968401146 139277881 338966689 945959751 984688676 39842573 938799383 236550722 444627700 17159481 245271304 46423918 233188410 388613521 634029023 489278963 779873212 973918081 989455367 533937247 961398968 625741005 738182724 349179238 716356159 322231382 628101493 248899009 632630360 278597723 823138152 755153103 830041955 209906249 928801527 860956662 880452445 163287260 593018893 735257214 933295805 653483767 769755265 503893991 940064401 212061392 713895682 754979887 813861470 671106832 851430034 220349030 786949988 749135828 933754192 118458876 254367387 845465654 890312538 112195986 178461627 812265085 880804988 275758011 662986442 972870257 996610614 154360380 750771762 599909041 700314349 983796045 997408498 326993816 942150523 493408928 510657358 585889210 703937067 22282483 451269646 282564251 932011598 839764732 877009710 975207808 989599407 154768940 694313116 274411811 693181053 822325574 990636909 682382013 859928879 848780177 896984683 357827719 454715924 730889753 784251194 461457050 625898759 258486324 948844519 69564929 192439400 826344459 869678207 266384593 711120462 395455327 914921633 888805388 933779563 312142226 746306563 859681443 912228274 710579516 932411349 617098968 772902096 529715696 548824384 859128595 939176176 70803782 493134458 957590966 969392090 908022857 950816557 300944058 851282665 931659812 973461435 177898291 409149471 267461163 851209626 679664527 903782778 64217934 876978853 33035208 460692007 257157148 942963985 245723394 341922550 415818122 884959154 668362947 767363671 475038044 739641514 752718095 814272678 148080003 256626097 28912466 896864704 698106330 738415673 706783144 880719665 905147562 943725163 963788298 984872665 977854102 984045219 770651506 836837921 308982928 489627153 449385520 451742988 604752336 897819228 447654940 806060998 60900209 520312903 741876486 950800166 682684286 988166520 883672859 946988800 389485021 584422033 693716619 765654257 468928318 702180130 479274468 826890010 602463232 762077313 711858749 989242715 739986505 886133584 26868448 510809210 707951382 886507329 464299918 493187044 133221024 225783734 100717889 935577243 629529519 648384139 158733369 657062328 713291897 961377708 64251872 873945124 580036939 996925591 931562115 935254758 225798833 439412039 960827863 987063474 309578521 579973662 214396528 851334259 997573593 997613384 676904628 747609661 257043180 466739450 904560272 954810436 666029152 956899508 165930927 852740116 224295403 405656082 534704257 736770284 34758149 777856647 901282140 962734505 653736785 937056346 969698250 970745683 23917232 907107923 645748884 665552311 86926038 649673147 954716125 964751720 325302311 942279465 864315332 993233217 677267732 804375186 840359480 933543394 99702099 368990702 884370381 887124886 1772290 894960469 652196487 787050875 590293631 665161190 197153682 698897473 697860747 739983643 597414228 909331336 991452084 996670949 169819143 868684766 437724998 459111200 698611124 734617520 599716452 817584486 13872722 301088648 804038430 857900468 97824779 788905625 47004384 498630228 186792392 929128732 860416619 978056467 421861594 857042752 480174749 927399973 133421164 470241799 104414390 129053643 403370506 613288321 521140900 875016190 55211774 253755619 549908498 779168107 678761797 704391881 252212546 546939892 259026959 615213465 280544762 569582928 900904514 934476194 361434144 550381377 441449877 527094963 348808324 951595747 665938285 934528533 690954046 774684248 825151389 825587586 758967831 953776781 539038222 692057853 432039798 580589432 139516965 684954749 490913863 986305410 854235287 899821190 35078836 841352678 520106989 906606933 909406512 938976566 449552023 873980126 556491868 582036019 237686281 362736203 867136845 989693169 499336193 502485957 484462013 504895979 568826802 892109622 100372064 996738568 666601010 818149653 442794051 680794430 222534962 568953454 635290737 734645128 445053752 629396681 631128374 952717211 748592932 977496217 845381567 950944015 148346529 912007686 132989351 894422131 262209953 982002896 430777403 657142757 58209787 968065916 106904099 994274166 752595776 887493206 92046561 751965243 384305718 490566188 330769189 865942172 958526881 961167702 127676637 279516429 862623132 874932564 109551960 473783794 886603712 947105783 477638290 949385862 500778793 841881325 334507203 583034830 679765905 897375292 66230015 194882536 460858096 832201661 812748281 980195852 608590174 953907959 985691153 996124306 448082431 702892352 474769587 961985231 698425051 828803482 829676465 854592884 728449442 777606872 637184660 726819018 149518149 883082182 898406699 952434367 630434222 651860107 189922258 468681879 615300425 856871417 969840739 975815140 468821877 689828175 118631603 195575345 318737461 798530072 680954668 692665342 301860047 475552490 280388018 385209024 463606873 855745255 908522453 993806419 949116039 951647415 776711080 860769457 669307180 718750907 213312885 504055808 608170693 739056482 794136392 796270606 976407239 978810476 614166576 626126322 325658923 513511413 808013889 979880716 913941564 989751379 857915789 901805208 236809642 761090126 162786634 606092598 55738629 229572209 561672674 722652882 517162512 655609968 845516367 978274116 661711232 897225995 337039013 487781537 79043414 736734239 458034788 502277560 89037093 243824318 336243194 849578661 327161296 448111174 965522179 970944581 676824726 900398933 965131646 980165738 627840304 984538326 500471273 503722068 476141483 641904642 611241189 796309724 404508994 656631488 622732251 626635054 830886918 835336011 39866556 208063402 794864609 864931578 991436422 996656025 726802151 961903002 981190374 984144937 3851559 770105899 936279097 982318994 276837831 321006539 596152616 967215874 556077724 605737475 473118570 509523788 283442119 606659324 115961255 123359270 737892825 989508039 367085487 570477950 867992671 907050330 88356218 237415899 195228679 801809972 844691322 984887167 721385151 887544571 410725180 719759117 91102038 780869454 853173965 886649430 779067314 901629678 10807023 309437869 350302927 742815738 668967563 807149776 777693053 865585640 620561337 994295278 513820879 963547980 122624886 731972202 242714895 625496101 664082336 918452584 887816026 916818435 637744518 922781166 870116511 882369424 632684743 968734645 955915178 983482824 485547906 712078070 931261294 942339361 249030616 366253119 871573413 989003606 671131648 923061629 400456478 536117596 167194046 904098198 649425615 989556141 793996733 882911743 232732673 835129510 686453598 693705813 769018119 953868123 449941915 706557257 95645252 249636250 900552793 903230048 446817157 466892899 965829960 981128770 133672641 352492665 60670926 157424413 71134947 346870234 121830755 227630483 699188499 822005256 333640258 749945925 147598243 857533769 891618354 917938175 930418921 988566434 325929000 556056533 954950560 976192969 616755907 963026367 832751946 871001057 165695427 441108449 159352012 989350264 572493827 834150083 771651638 806552176 60569959 942791531 840108030 936365456 640662007 667124444 197477339 454404163 472110992 949500422 475468891 943817236 82327139 806425596 239734573 901256220 123326193 492561693 892426597 965135638 367419958 577579821 633544227 688626592 644775033 786565783 309123969 534160225 886944479 998089129 14324264 564094409 194718147 872028184 63006443 580709326 687294488 900376386 851808152 901386781 676533873 777884416 377455733 612205559 315592186 728485938 343520957 822355143 448642412 526334555 199057102 503959278 434435661 653363734 804340006 882611106 175399868 397548208 988227825 995255906 71056045 982773606 447237888 713840416 551100301 706698858 712158466 920777752 230714899 932653680 346030116 414495028 412149137 458978357 169316506 350821493 326482971 739085592 70932011 913426021 929807215 995147878 955204088 975971294 622708706 889351279 807802693 990291570 112703251 184528349 216453486 936020376 887294080 954135389 745629361 921855038 29224027 661724005 798723100 812589953 929307082 963290378 683695945 724811646 526995759 963104131 933481240 991014665 555737188 902360464 976230446 991988463 543852772 651545056 889074921 895523325 748380401 831297484 567194839 842268829 163595565 547521942 124324644 495499963 180225486 666865461 184445294 233937990 958578339 977722878 651749187 815282239 41282841 459006528 844543384 931764578 540868830 704295593 326884619 835760337 125889695 213214548 813785404 963732014 715133192 806646314 993967495 999173850 220806850 356522409 91427374 799956852 722860224 860093923 401314546 640878519 861307993 979034773 444081171 930652887 976336885 995892808 827834117 837372093 492359717 508263244 631131720 947770539 812280951 849778588 363441846 367042763 588382812 867999910 745713280 914087158 662567957 718920744 881885337 904006678 823297911 843011701 730144258 945241947 128895429 449731570 196237176 948067311 643196419 988599374 777361296 877014098 499200916 863517314 434431024 686725264 836175677 907975436 436614295 729614148 588641219 720007456 29677111 458677666 706108095 759032014 666332367 986780932 281716745 317328470 54188541 578211342 788123687 845940613 202894966 882864781 553718911 659123856 241754309 865938411 136423951 436693499 501797344 664423084 880119236 972251119 769873574 833662056 306353368 315351087 426186463 435043514 605183493 995032928 161016627 420371460 768352067 872380752 86061342 878823411 997904032 998087476 130107311 961341903 756492114 863200239 109997985 481885768 962200831 962292698 516962032 983516980 425261935 742807132 127777991 795520196 473484992 564060191 334195455 904868342 549379389 804773729 9232111 984943034 18834168 716724976 38990135 539442971 247768625 523683590 320916706 477702066 560224989 836263305 516797416 599584132 743402723 948956478 725678176 739865328 191584421 587352635 473910203 842835161 788350606 838672681 171254662 701825435 248085192 852527970 515327341 594095116 422404611 516188692 703804775 939447622 517884831 918065225 566353230 761104228 107902274 891452458 283365258 946575676 132066888 532835266 21193042 801921499 435438852 592866441 154271199 787837152 607263320 697075708 520360740 681800425 749159654 837178049 498196676 870201796 480306195 975449016 5918887 519483366 416361241 733527983 65691668 380829693 636023332 749302310 349385035 700737010 956675340 978702058 161302745 518889318 264905061 647488771 396752238 804014883 522986626 730132025 561425847 599598831 738098357 889403204 164771968 501303161 469430332 624354441 484720390 688806071 240211192 702120772 110080412 818118132 177248955 340207161 972504294 988597578 338221988 380003972 720969064 951092343 913642749 943313555 88927346 509578984 506576656 778303478 655183331 803710878 739250503 794278291 116823318 603800449 884894960 960764262 306627468 322209816 191057358 669694314 170310792 247459876 615450668 978996323 927826538 932739824 194239325 423031249 396766778 550286602 269590624 482786618 599725495 604137674 781910075 886939328 403248468 608407132 259935842 986201128 861548532 902179988 981955040 982090438 5461936 658978191 276502615 318782105 825080612 868173414 774141560 959535647 850494168 939018028 170471439 617919463 602518454 630554974 49897718 75686089 138907610 198205924 69182992 229447004 585476643 588087679 567746676 598174809 127418694 989035102 281892539 761615690 991773812 993576037 948504131 961851346 55586428 425766389 646273559 668652153 542026900 580395646 59410990 605719914 861573872 933427947 496193574 900634400 781329955 855743714 237859742 933531344 58793230 404837583 583857973 887133315 637848390 948240292 882076477 940587539 286544102 916866080 252488438 635964354 736780061 802119123 112715165 161224286 742691997 791481690 313978343 347365629 43778167 572160282 440767896 803644868 466680493 796636170 902553784 944801886 525921380 990676118 226425616 372685865 417128149 507468469 15678976 361480993 330764969 488790721 245358021 472139766 307648266 609342027 919545718 999049351 859229973 957713975 541479483 849277616 503874501 806624130 381038094 593176835 441931844 484260264 664754710 945183800 967118300 997763030 212175837 573136970 427947605 679071738 151756942 386507317 268058056 333299898 237222496 404954088 466361005 628530647 112472945 163101931 276325351 334019947 563305079 937324209 903037591 950429899 192973354 484206358 279098913 397955092 899779324 979734185 770101789 881493910 250891450 852831504 847545633 901169145 161417955 842248793 446836935 721367395 876560511 902032668 685931705 942166747 146555593 938812478 425038477 958601686 423408989 482649026 724928323 871366023 60265985 960981088 957173977 987095771 903256625 950266527 195979587 739070142 411517740 463940469 143366724 950323021 877960798 971844868 401883158 833437458 348478559 950798328 596003775 939330094 707065305 872872178 55655954 980044222 508496497 606985878 81602964 188341688 768563850 945121404 811700583 873058921 450050869 746470242 715027599 758756099 170101153 476759060 367773337 591708465 112562126 878947968 221683933 870350196 922582871 968039221 668214269 941436589 503893881 750021008 589621606 967735023 817930106 821484842 135110353 397362039 115548139 482407668 461116665 692505716 543922430 555712112 489449889 762178620 595318747 873386926 641957412 747492762 737205115 853906176 918039488 959018628 960447702 977939627 947203103 968211188 40862352 503826775 346956492 812724849 362477478 993140675 385814898 904777471 187636001 290089799 767283038 938433610 456105638 521830171 391326321 688587458 810484789 821827940 864231049 995099712 93254782 98094159 910627741 967515654 966668911 991892718 657228390 982734856 625562067 926653248 8552950 911779195 644600767 931881115 857263932 944346652 150372481 985966162 124254101 356952665 927543616 949172674 304341375 442320770 870499777 953333402 469725708 827708046 665467418 949421154 390239763 832238778 986150950 989358387 399025968 958157860 195466597 495490816 419395334 997793917 238002625 521599310 632680099 988169491 536810600 579989237 69941343 908450431 541625331 637537405 859763643 956027062 990532276 993795915 162923283 367616306 174140062 535045663 200886476 488475946 159592563 274751839 818241597 829310290 7745927 283438610 949203102 968216160 668330737 992543048 377954028 440769669 560937475 776406438 18290389 263577301 429719449 751777942 25866609 917186735 738289916 744837455 668572979 758727148 827620830 958538068 139867355 181202193 323348094 859324985 767962075 841762998 139798031 531716007 982533122 985520091 505180615 966271323 232731549 460260767 189487765 385735010 361506191 778582699 494410218 585278806 399665824 613770508 622628223 808085788 307931879 429653994 852249878 933696193 401128281 919758716 775260515 867055404 295792146 793621101 358751622 704813288 532820426 692647844 573492850 591681594 145466362 911762469 523063096 605724031 316069100 493284058 780971972 828659903 823423516 852258212 827301871 889109830 184587749 244154579 451002539 754609318 721361672 791789037 112312564 865717425 751174640 860973526 654953718 821276226 611646070 842484352 252697288 296536601 839207602 992380904 230221410 272085423 18348947 949572860 903732189 916320705 600292022 747985438 25828720 787616715 827715635 917356609 279655171 531086348 208455998 699413852 604430400 883543539 751832570 943338619 487999806 548591742 901953645 944531988 519942796 821224666 29314461 735513269 717939451 952479100 633457355 693091085 737319615 965482524 748561077 943865124 349647222 999212909 155488519 187216298 402480988 598545040 502992114 884417318 888951090 981079033 956593247 988219299 365205791 422113258 942104226 944248876 806124790 885710227 809050621 840920831 6015974 917109177 282583563 994369314 289128528 850640312 716338596 943829924 517552949 858859056 908843941 953739822 514880810 877810174 865668965 905554388 963767984 967808388 384284999 784457953 50599600 470570918 214799388 720990234 188488188 441797438 310296126 496674928 536221069 914949663 119117167 787069280 52442101 556389869 858436171 877032064 500642657 761849625 960810120 976001196 107450772 650193590 730242151 975593966 168006172 952554744 591390807 728562611 641405338 999019687 732397455 966387875 266437507 587986054 417376197 430613883 153933522 568369778 482506396 752451599 942653353 974509616 73182500 491453604 936541712 971984656 921704640 986408116 402750732 658887308 944441834 979804144 143267431 402357766 418097640 784672721 653643452 674176227 992745040 997718189 224201757 889475410 137740096 562178351 514922146 589089790 764797800 831503783 897745924 975800491 227460716 863709344 795703484 861783081 991196271 991757281 351141828 834227723 593771330 740419125 7407886 751619137 848663811 851356137 589335549 810007492 207087570 536769948 673618487 741129743 868678032 869198930 213189257 627769191 330050246 443791996 600490462 788819637 41414557 509776583 79325213 835346951 242823751 372687153 536437902 867074808 553071451 696204679 318526008 577312492 935727599 973335319 927056257 970540806 619944242 749875934 194489223 409196474 486256313 947353869 41343575 889075208 391222089 969201829 763401658 940570028 961006153 993551121 566388594 799674014 743282312 881757049 643147538 783192362 704276263 774206820 170864785 596993667 57853764 358296508 569495783 640810001 163242824 276477517 619052589 922699014 225937209 626765973 317779731 362847495 303662076 578113107 714989514 766110842 534845860 711141925 463192386 766060767 363421351 935342486 15243876 716748349 206124623 899383667 738979278 907393805 751551211 976358268 46712295 774630264 522552775 733079899 785829691 812084244 884618611 922038030 193310671 526197491 235963927 421184722 66479639 154679823 775470995 859484928 518120252 703612546 90258476 503171369 217583677 395469369 471166443 643504087 626920305 782249705 272098331 391964998 591630529 933706809 451817570 819934743 582621313 727964738 839906605 970700369 455059948 652435807 595818381 927764782 366414179 667382810 265881769 951987409 143971401 809727004 598817464 960787545 71679802 914422490 297908922 690835385 8008309 404822668 82878213 511808041 376581467 474039330 180861989 546625753 626152649 662149547 870315602 897974692 847774260 903141237 233075504 734394950 268042402 309120210 712475007 845312935 55678975 878029637 19080527 391202891 165228267 851804211 450453116 593575048 988746013 989570644 891659910 957257810 982590584 986335635 668211458 838453647 378515295 483146981 160616913 335176467 710859153 903797892 606560878 892292094 281578048 731959619 277342978 795178811 254279504 385888534 992480650 992866417 635873930 697240532 420617169 598518577 338625079 498097234 467737397 680947887 95146133 738459559 763839278 793057483 80766299 393691650 243456270 911746340 124083391 908926010 837760512 915667127 796689879 909102645 83641155 924196478 696005026 801480853 760628637 825905902 698627098 982374497 647799950 917433316 466672325 896453199 675596206 774567474 50607278 164224217 512045037 835368915 767893686 975681467 615362598 882220042 411002161 476899262 78860472 783318106 308910019 680705022 805208223 883476907 163222631 368095249 860412998 915598856 640856241 686344028 295659913 832256293 305388045 766314162 604274348 971317642 663359305 849449995 577910330 716181899 494792538 685767826 49957021 145010598 726175655 749712367 535678522 709798607 752627523 848214263 212495664 263556925 298406957 559970836 313084117 689360516 405217550 603561037 867437963 950990144 845868081 900401024 685669267 861675198 667373132 939721158 794897608 982276762 979391312 998759248 601130368 987678171 576843720 910140416 39153413 591976823 488905431 673870177 756607685 905058194 601088213 877896891 158936663 278917525 595851662 873312307 467525979 753833312 362451453 587538412 983479888 983547575 929975068 973834699 462865673 972373760 606113217 700590278 64565602 923119797 75939189 638380710 781204461 843897494 758553324 897305077 824587004 874422497 699742934 838262545 89118192 140556473 41816499 938058066 409102868 882793571 814447730 991346132 700186069 963951121 82095834 560919108 46482511 668768834 476921302 967512719 503772435 623267576 568294378 831605700 467374924 962612332 505455509 769074203 577928525 897686354 199413585 631120417 738787727 966811709 537517196 924418053 540238542 873580614 780050940 998293568 9961547 308183438 371544259 630976964 774057662 994694867 110286320 182331112 762383589 845444723 635530496 743359017 963174889 974699794 629422480 666082896 84501948 382583457 256421421 810329288 20935560 847378645 173022169 945422560 158234692 393645783 356627958 672883438 516850612 726403969 244508500 988087832 286910101 398578752 41968825 488083066 404045504 734191976 261483366 842312261 755968925 945145453 72906797 428489597 632061131 858464991 859190135 988325678 559858591 590621461 893977959 904993256 22120100 624381659 865958735 890460237 620424891 632317786 84885406 674435407 854251111 993721852 533831914 787588513 689814533 983789217 676109432 954382378 166078846 364052973 510418749 726386259 644391226 735841996 789354416 799958592 380779173 816602788 921261222 957708926 86047500 953280556 334537436 865604971 723584178 825260234 918123478 951454078 85642108 130800866 643366446 703640864 871650029 977676262 752932014 927154056 547299604 861450789 466516699 990144880 880567279 955890341 4400864 206544245 880760121 987387418 868688873 957564042 219614210 830989148 521056555 729989974 904528720 988906789 628940249 778613108 828683469 978798441 283663072 326507232 259835018 890508757 127717791 391956443 80276229 680955340 214423078 323773017 762463072 943146836 942977729 946922314 203376359 439407900 906011702 912801170 116975074 398640530 345217267 510206121 901778782 991955538 753914522 782206556 878812911 919662186 532598278 862338677 59779772 712931756 808558143 856864474 604242192 698089870 134388558 564814939 797193810 926286362 55176181 247192734 812789427 892007199 686334745 951452009 111260936 624152010 640664658 929390747 491957076 908742216 679667090 903102028 7655755 441673607 715481922 959897585 696515503 807103310 736471065 750272317 849840840 981652891 78944943 363321287 180529236 457588992 48261071 528411020 242183508 850734355 610017098 741615131 295116913 667739924 936949293 946460226 176846049 814856562 604702467 731850357 525728789 651236751 38181650 364796734 711306737 856132862 836997709 905074087 903182708 948756399 12710283 579916235 637249527 647448319 723997619 913612638 231952100 343436346 322883009 962189993 888611462 928219516 386516124 967381218 31917887 736040769 577570893 996926179 547255633 943439715 417614904 886332434 67493506 803981459 173500537 751810417 87807041 585428528 504016629 630405031 267968057 642314935 862720766 881935945 388911984 927750990 118644226 175693934 426555439 791886091 681285076 742638739 738715420 879995546 549433071 805515070 947335317 965066657 412357335 455070366 610563401 767507652 921234659 924931740 666089267 976680134 487624737 708706205 569678849 660958179 237353294 890630180 75494816 785022876 886551512 990416263 223721139 349003266 30442130 274654430 466648254 692100580 403004625 837510552 803188733 967043988 11562866 883867112 954483838 965169688 589709275 636987073 950655600 978512913 640112251 786496403 597411932 933431130 871958706 970636895 966184638 990095173 115707363 202418698 943422380 985047284 427630085 826823467 60618801 955840403 69989825 627011305 556167253 602593440 491450994 749649269 549106617 686334809 658059890 760071690 822016021 934267653 504437247 830017839 817630837 922941948 850212101 909086171 36391439 470487718 567008805 601478256 630244028 812248763 811452409 907632283 286800610 374795698 55980483 555673912 810948976 880346050 659243908 707283735 755701952 787116057 873080408 882595995 285505903 796556707 666755757 843622379 17580385 446032083 677591605 754988653 881937110 916733788 459748256 957595239 289097809 658039345 827001032 872917266 391284876 610986616 265605906 956707584 934502798 993388607 966832403 975568613 722882759 823445191 927606719 950805943 205793642 211220275 274183753 776277189 234555236 494088407 77210310 885918178 984560615 985660348 600996104 655648451 793156727 883106260 843266361 998320739 495139561 626349175 546918821 950610412 241241366 299186557 992366253 996857405 192994644 299940053 95729037 632512758 270054172 755739090 756967628 977989068 143667704 145890150 166828809 288803775 386064910 880379996 870741614 906963076 346719249 811974469 187334806 304879620 774864887 920897014 594824525 701923827 954893574 987108942 435593875 680393877 70146861 601612917 427630633 839622812 867410421 991105125 426231388 999353409 663285557 818900808 963271531 964082420 557372029 600597838 164016423 434231687 113653262 922857684 109181002 993068223 401533736 844522582 320586227 590578683 264733450 804898795 198809768 568488494 109614099 811836282 757783531 823036117 446060828 471345305 828065202 859007523 942619442 966745097 613788974 803954579 320213961 673431500 481852804 976703806 627618468 677870952 265140237 746542199 218127844 382274429 140248229 866967502 851243329 937916045 789272654 842625910 656099230 745940940 520505408 903629536 713382903 875599223 83869934 335233362 641838440 834487541 413126677 967075373 443748655 487872236 377350220 747032623 341684180 897686317 762075993 797780222 440706047 481600381 496428239 832094228 98247389 655878778 77435367 877417430 429669756 699155895 346173523 822141467 707867527 925130323 502740001 510145896 575341173 588828302 861366969 919216091 808314271 885260479 949676235 988616858 183401813 867969798 323398814 721938545 230292247 906012126 474357548 898172930 504386407 513465182 939790732 971022047 188955972 368713658 350263473 905948804 855057723 867300384 659691003 880195691 354501200 613433461 729897816 985941591 619625772 665713108 881681151 938791030 30717658 774628051 38278910 245271400 331470914 531699033 642881194 684726854 468274946 654202434 765946923 840749412 769869122 886576925 488707287 659890373 879357927 966855654 323815574 853839336 883891344 887700133 713375563 977658449 780817478 829368475 104885160 678744782 451692135 461191988 27766455 715120447 43110905 681113448 490683501 523474571 602713389 696370908 581752080 671001225 676704971 916700171 645210211 866813324 541554385 987702508 246666485 603908308 844236025 931337123 639911766 719244717 976462769 985336389 910248835 924481532 657394244 858457758 31379524 859745800 785404915 877634150 538854060 700478828 874342714 926065314 804025846 842049795 191568926 759043691 824315607 889586945 523577700 591050957 5989330 615955323 216946799 960447475 59713619 861398214 615796587 942322964 750914569 799322790 32557322 457976913 868766876 894096164 550912394 662731679 199246632 313361909 113318696 519419639 338818805 750188669 278479746 652950254 646864376 650923357 564945920 953893880 246009748 625868578 647518540 838474079 171737772 777926768 533179531 760617868 777017465 847014624 477789786 785686293 746804474 804621321 776881683 933725920 632572625 665834163 584741985 792230174 126638824 578734206 995710749 999255752 644795416 787390091 374054769 948011769 850420000 861516673 734674299 829634260 218664529 299758238 819583408 927049122 592337558 876672941 8815062 362657608 919509348 986628607 147711176 953801071 907329675 942197533 610550405 783135732 219657336 226566202 550453252 624795384 276024045 675510296 525481942 572681811 409466968 471550869 573765521 702680559 38931551 878398720 495366743 666658394 724937016 801795984 118504121 824242016 876230413 929862638 257245823 525985307 976056694 978254041 73710615 147959154 895157912 961986150 703171196 928480221 480688881 877328623 812388710 915615052 424279158 444524545 858975468 926463719 756208884 948989975 253140891 285492135 662740680 827885705 15886576 430912586 312194029 820024969 378841570 958061777 323994939 434960922 458666596 805138070 345464907 919836797 808206654 846191638 132324358 840801836 271821639 484913071 870074114 903866235 781197311 907618224 209970965 262819972 604807004 958380059 696626421 945892297 809691310 990835851 473722804 477508768 186464893 939375523 175920694 485257482 740686192 933620312 93894124 939751326 589682658 783879502 889620685 907099275 965154631 991999564 157989498 545706991 461107592 742739774 689047559 774343153 98504255 197404086 23662497 333498546 10366149 301524859 133420286 780746478 694438140 731137735 668569709 893351664 832903012 853388630 483042331 851096340 18076240 121755165 900874808 974838687 735024014 922814216 89619853 526083158 512359637 629787312 607407834 712974920 47905496 699672173 981847753 998396234 728231191 837628046 155492782 839297991 766060630 792518694 399127004 873264062 166346366 600507636 290443644 794743031 508846176 846742175 13205446 741079486 540261321 952132755 179141267 722481587 439801744 659572087 272079774 645592887 286942564 945250033 670011393 945512369 116012715 905691326 825894298 907729320 956050191 981575934 565013469 667531997 110121449 469348746 579276408 850732988 433604354 652110592 251633411 710183955 176442298 718174775 229015033 456809258 943271160 978901151 711310161 910677445 913874749 989363911 401540028 858983948 928902588 931120406 915564844 924400944 597363467 960694071 628054855 956845882 741029888 878944113 338316696 998405404 375247258 396793880 110465501 578861831 683522581 916506324 556492363 795676627 831527829 886772664 96442352 436125228 892714545 946482621 531814459 545354034 741587028 784514681 51893089 841997852 492915964 780039111 753863887 882376124 991891982 997627210 454885410 880119689 275041894 369536658 126938885 649290613 687061467 944718834 684490145 690920701 858388953 912994906 537160921 834470618 468425808 861659937 631388881 886144189 318309437 544510132 874430212 886751846 773260877 847467093 667328863 715657708 985204000 989714891 512531448 573303543 706421132 938935390 897528420 915391691 963458068 999244412 437494561 608985751 119232946 499198201 441077166 849915521 726393267 793996474 756747871 895088980 695129288 711881450 131938338 931596791 598679085 809367599 574496384 688523791 178608181 716403478 188944625 215069980 411731698 567295282 252976766 729250242 426260050 647839231 710259644 806027492 710574719 959541509 406363939 690340983 826755255 935863239 379606760 410939995 811080788 881243786 434756584 830771994 903637566 986170152 713394261 850103583 470736978 710652036 240894467 789424503 888244720 902956652 333582668 530214842 497285976 937244592 328410823 944812053 487349698 726366681 831371286 921467279 208597865 455705654 280735952 330403176 46535557 394173338 972798197 986545189 184414430 653073514 2056772 253878416 178603545 655365523 560742382 599319773 700694726 897852033 331438896 784996299 479900508 950589728 195075923 955751392 477345066 914693987 614491679 789292131 504137241 659377908 399258344 708568903 100041641 967652926 389331940 727311384 164607791 997876794 849799954 928889726 231507283 915766221 209853369 313181812 325197459 398975573 795509528 953867270 223359289 952207672 290748944 988508813 805044891 943190381 186992426 351663633 698006926 820322708 662667157 780883656 544682683 901608313 840457390 858694513 219692331 497305802 727492681 752928757 267442135 389241435 220844150 845795677 659811361 824467991 117379152 802821784 471562050 531205912 264220762 967408593 965993824 991625402 522569958 588248179 134985222 949166379 730146687 736211962 835841892 938638940 80140767 349994068 667334674 901558733 379929172 452766012 149936997 673852619 247696037 368741050 619962983 909045274 937986624 968668813 126867003 621584431 6127452 432773296 469174607 626336331 226684585 248585372 39645071 656106453 715617789 810677957 877615178 902481827 96235953 291716529 639604292 894867795 957201119 976073328 224227089 795482386 378126945 561513705 70914830 294904217 488991698 607026099 813391064 857327391 821943818 857686082 995261951 997437713 236344952 485804100 957494985 975791872 837812773 838780842 705737126 903189855 102993374 704633930 459959497 521622146 301834085 811334618 370099103 698736023 926350570 968533488 981062470 981634072 31131476 638358567 381795290 430987265 494139476 969665874 75275351 508636346 835585751 934192868 92152335 658267726 966575684 975927988 75989839 584847250 956926990 990393479 624276955 998952863 497285540 982424549 550588645 728998995 61301641 636844997 278992630 783111123 198692955 286126133 557611023 818464658 959924832 989369296 467675937 737763177 488394945 517449236 255564000 679357179 278644920 578388346 534747063 877750199 885840924 995972178 633196870 863583161 112873915 510653990 840605036 977161059 52982830 767897032 595639828 636417878 513361930 903189627 575812314 576917077 8013881 796976010 798762806 896484161 910786591 976171627 709539770 815696491 616951350 965060476 39716885 379177273 451371461 586731989 983398521 996931527 311259738 671204766 118091651 128697399 114539650 182320351 128018469 343902025 904861627 954216080 292728397 394224728 807406089 895361671 135423880 308526622 634316168 810424465 94679952 740492148 15279093 355819809 393952511 562058022 359694006 768322759 785191898 790435272 368368763 371519797 264893308 666824625 326887791 764558982 324747606 871158312 543891297 870874160 713731111 878740248 663235384 755264375 252934747 368767222 114324114 963512641 625411690 741859977 57595296 400707573 698475983 965000461 281469612 341501032 378617341 639192697 655143838 817543146 814962448 898381655 244501152 649594338 706783011 846049376 734662241 831881693 530004418 578573001 316142862 400912383 491875902 973528234 298582710 485947515 456334593 784406029 847809797 976297908 53204226 315448463 254836630 317478514 319828452 417933540 261323744 878115329 940657039 967755749 388143116 415247180 620534568 694809933 997508853 997826361 57018009 760730027 458743073 960445603 272009975 546882600 412699398 816564597 148299429 228643616 901355515 928616744 341098900 504645531 599697364 883229329 418818768 420459771 8894955 104202897 740226576 980468983 350668970 385682229 181907774 839875744 936920218 990773907 769107812 804768284 345781629 662460261 836017633 975701833 9665144 155273340 189052644 651316330 322858417 920694779 591013307 763894533 166468237 766029351 228191652 493635078 870323899 917555869 539657060 728731679 933147164 964336231 286545328 628613220 582852428 704883543 423713446 475745804 208092155 701134850 657412482 763589652 449931635 997618596 275727336 875920496 845498723 853863898 405145784 480648036 401199017 632877078 821601877 859872707 806284032 810829556 467647408 768897439 793097795 796602658 687727114 747791298 109903792 646816917 277634711 854806629 981839368 992042655 313496225 375695694 65631215 94905803 705158947 963082815 30012443 697193934 580257830 715875966 849600606 990803499 337007016 788448406 61840052 745881496 362109621 863154407 219084928 997800920 131101889 633785829 31154695 828393057 344677345 523519678 948652515 966452098 412348209 715533941 663215137 703537275 202246980 528832933 682599498 930909228 554210709 716725364 957462051 962790002 354043313 754043826 844765025 874130167 62284622 391579946 385362364 531852455 720546304 921587799 741558167 772348064 189843926 423244728 58549219 816040078 575870437 598808981 434230475 507020098 667449857 987528066 571334497 642185172 447624507 605495350 335533213 952376965 115365546 494581872 830530677 958008183 244360922 443570374 932201370 935190949 527187617 629619218 620629766 670054249 234482240 500273305 697593659 985876088 672265716 827043909 52603893 487807022 165271991 389143883 2687756 625737789 276154453 984833168 37202147 246410274 992722403 998069159 355897449 540869722 101270030 185134310 518935641 641638964 905449088 995355478 912728606 940779471 263481591 473120585 665832112 724278858 810447018 969292800 461482875 933865256 408088249 684903186 475504974 563106796 957941548 965164498 377589665 581791390 883020276 901901513 429000575 713561470 2017214 232676113 601033602 633373489 619349490 733035853 178797116 434741142 180352107 555273600 356341820 934836989 5507381 911177150 181133826 787626346 10420280 800184915 992696204 995859824 297086432 907760400 811689331 943576180 650958340 894251134 106171656 748285603 786922417 934129806 504743452 976478790 430165862 776763981 56637095 744562622 734055034 924543500 678977844 905000897 732978242 806966557 969499026 993059143 277573847 940208285 871710557 976247042 391423141 534234349 106018167 979009681 359191686 547473305 898745998 921260355 518588271 975863795 107355550 220971681 462651036 756714187 79304188 487298587 993651324 995185302 570625069 784411042 463095376 637706070 695191634 813471383 132073775 264344101 723730033 897529948 98964231 243125695 913099634 991001302 735561149 743976247 380197395 430701854 406308392 931837224 490857960 599223332 686299096 724436522 700674208 997990195 949544905 975625012 709024227 889278759 639858785 862460190 685220429 964692621 313056601 853439507 848527955 946370875 76570691 399173743 491074216 732715085 934172614 997769085 933700405 983181738 881586103 923829611 585581458 642980442 358449892 771772053 787674788 922425101 966246330 994081033 58662113 134417240 382136438 734101621 393169060 459489682 314994179 626972753 806041356 994733475 78868689 274723200 59060463 920974598 675997357 754631696 860703513 936455198 311383723 553683966 702182344 976701393 306179302 631119309 210805873 666390005 711051103 828870769 526294909 654113254 899259360 925084860 27899507 523820274 902799690 941907907 841970658 909595445 196544477 739831483 919133684 994115235 759416725 779806169 718103135 922484020 967350107 994225916 309286755 371109231 236876386 939003673 840587303 923586681 947021413 980423039 480294246 772389784 817326781 904455340 679372136 886450710 743407708 917673460 370065483 872782352 753915668 913866032 537527111 776493053 71988239 323191982 897059805 986740509 752107677 859750913 121524388 961984727 381209076 894032967 939648043 996980861 331670128 733440628 319906674 822292783 724754290 731295119 820810498 833718726 516296880 561349915 564022039 765444425 334917294 840057377 463186074 991140654 883312037 916659178 192594049 586124828 521591590 644907662 441818594 904535045 712962804 888767496 812945294 894250598 992384896 994808241 68548832 145231181 895953856 899354324 750289313 752591415 626183425 638258872 96058803 307539230 359798965 571186570 933443600 935324176 185785298 829239172 584340581 775315014 715201710 869871537 700208267 774997341 403260932 960647346 115737268 691683091 1663746 668620146 413091045 692411600 369516708 446741811 342646721 478257841 156449370 392304551 666748886 874989107 361567357 701163118 138323811 307263072 972798669 976777323 491345257 883864634 853447797 915841421 667184435 942881832 670508435 888067509 762711131 856614087 670728739 937682177 124113422 268614362 485465218 711588834 607267000 638025178 523322548 839586933 384701983 926971989 751188095 935675520 738799438 929394143 70987054 873060676 63327904 739373944 810931141 988015201 407964695 672082992 101198357 798087926 869414088 893417149 529944058 642874073 30340326 737544246 882902608 928874045 280847751 380434166 990265123 994389235 775972383 969217029 43532432 640569088 10826119 423188158 862210944 916976602 374436395 605574607 859172180 955645332 51417490 882690628 453380890 783992457 521678591 680499215 501023655 945347635 491571161 518337038 85445137 618031454 624933595 859570644 304609943 329875383 139150934 406261298 653165219 698257051 898418902 917569314 797332325 952228192 599282507 893291613 693899367 773612144 974002149 987228183 911627472 990320299 185271580 709335521 746029426 836156229 621397679 735898225 505967523 663228752 365927344 936416129 288451627 946195761 57339439 563014720 452928341 847347542 495767363 900162118 444734635 784859533 361445265 466098112 123645374 665335458 421922096 688206664 189015783 831974351 107741418 992652434 553796916 888664271 247205619 648960083 924768396 995062832 985696515 995893649 378895139 417524448 432413187 683563607 421729236 948806065 548940782 576473790 461844939 497086880 125200045 411532466 378555029 922126450 498442478 861185098 523685650 593753580 7475852 981524490 552389574 719584117 631352997 739673808 557945631 576669963 172659217 361100580 274129923 392179185 251047176 922349138 781697126 924527429 333062057 835380058 628957760 953752197 959926032 996438763 546916169 637683847 114375768 172020080 297929112 921711272 67365352 926169145 159765847 927869536 177006043 874991384 501856316 628559708 617922448 867137109 446958201 775063467 523222175 543624582 797329189 887112727 341401308 361972573 699935811 786699781 211122633 429760148 208966368 227487000 950520434 973334381 174178576 930543322 34583318 307012948 431600618 881057255 297712275 490453193 787377104 836135817 484650915 981420349 734778243 796387441 788723241 952565336 32373156 385718257 107460 77285060 860394871 995362066 784569549 805522378 781295454 907571914 92169784 566650726 526274304 877872727 463207784 919481989 459038406 978481459 134236626 865166510 865018479 901380308 137320378 750311120 551875031 891296766 716825404 831507675 921847301 989330625 538849348 671525577 607929147 692408614 759111316 957597488 631729435 841227669 407074386 800068395 210655992 739348108 951670749 991007842 442774197 955911267 179066164 317403058 186619785 976589009 633395972 837836096 302113373 476045733 107064265 618509906 571395626 781649374 155898596 418194630 11203828 572438451 753690899 806334647 606546040 744127202 43915807 696128340 911356964 997646298 526638771 761680177 922054789 981625014 538025903 629527937 842009556 867292315 214700732 415795468 383431045 858065171 752270488 984379245 196425433 612733350 986983481 993503729 980308282 994819688 323399755 384427352 459611566 780248424 420423770 989451662 742686083 804544207 312427224 591227447 681768492 955795136 179395217 513792687 324778583 889136013 743358722 912629916 390511162 618967506 959708336 990711310 812257695 934986809 665297279 947082872 796553697 869922951 892933223 949009958 266172266 365749707 441093512 822508316 544843156 670298855 7895234 409045962 313960646 707910418 213173514 804433466 770144666 867870929 318370150 895959784 953337667 992062688 295221152 892118281 698807501 962522691 641706938 692378837 183368567 882231390 620367275 900405598 221088737 589575893 97524581 714318114 163719470 447303959 269844953 902171174 40357344 942468140 142219694 742647952 466990922 689217579 126045145 910830722 229177341 961733400 70412280 482565930 75873450 119805779 742260045 783280507 323201141 419368252 571901645 723121947 922303720 942985166 638527947 998323696 265103022 816604908 357862839 866997760 918467772 975764560 529943367 790668681 630572932 837241402 31276718 429544551 823576028 962531459 557003226 615150739 440944963 955594764 878147741 976473801 49101469 173171534 577888039 792764667 484344531 920653649 79354325 983004039 486032589 511273495 911152768 923996730 620123786 825068568 628407886 889499859 119238495 560538476 962628078 990415086 692037695 786702414 890630343 934964716 754077005 832463106 609120843 995605407 358020402 720016738 22424875 475396990 37446632 840661739 716034720 807655048 898807225 917864597 837016311 898290272 593039001 693073450 742609690 977346415 307510764 930309635 736805109 796493148 547941041 857423645 399306542 973381331 22275231 203323860 391333617 929518289 949162429 954234771 419551708 451488862 480200059 775260379 20354838 875928761 257849490 684014194 433792647 927181841 996633595 996816513 747030314 956467055 569478123 904902784 718102025 936300873 901764640 960003242 307096259 799108902 978141280 981848819 497039634 568775078 23506497 186733004 462243850 471824371 686897868 986490570 119265740 472685122 878565221 897585647 832245991 974698036 574617542 641455797 183605745 735573067 278589487 909073327 241540123 450568170 606552438 796913511 641923869 885367453 493286425 571532013 379379383 439968004 742010422 950414808 274598727 563252405 951414503 978786034 660079835 925254816 147863298 405444925 595105865 813456750 408758081 940125842 470718256 678465357 659388015 853597776 201845734 530655749 91384980 185090759 283656745 731112868 325922336 374207230 846361850 897531842 23044246 469934383 915185273 931624483 610565837 961775940 240114330 556074582 297603823 723860606 293590125 431293737 605356299 605674988 463370073 994603598 623032430 702932541 71454613 585167504 644411497 894779846 710647589 930182779 536780512 686220273 387821433 666384762 971521551 993759877 820562708 913818515 151446841 782950005 741692123 982347101 656614205 747304958 444326935 733014445 652446602 681754791 29498545 764594074 927257938 971036879 513565664 580501775 392689425 395720353 455664567 679588589 58796267 602708174 189208145 262214259 297823200 888995780 555554894 829343656 500330781 840856786 801786745 859680294 639004075 697077691 639842326 786557512 632936210 764509327 583911993 860855752 10331477 102628684 942599543 975359301 732844612 959967760 302881725 786380190 741916862 859080741 960281694 970173800 857874130 964574302 814186529 946437308 595115446 914429410 7211035 515265100 69756459 547685855 899955743 922684972 689067229 913328298 575620855 697115224 643339210 888597525 799045557 940466735 315049679 783653299 369071561 990535315 124969555 923269959 204014666 418702024 858864466 995183787 811929750 889642497 476767601 894600600 36169305 608251273 911532441 988467261 997371087 999036929 895279514 958585678 334018122 533151283 67466704 319648718 185483643 941097282 481954199 961674583 825268059 889612388 67047588 865321300 564484967 846120915 831647273 883781638 862409416 890913225 472973474 975069448 828492636 962176011 588763842 863116983 358559873 604937523 197542610 350764479 103371683 433840266 645458555 758627861 689653588 832798256 881254661 993734015 303009629 847830967 790396091 853859628 827414988 976383729 808787165 826882181 947748953 966987344 427844858 520762810 775503006 942276882 267944693 891695629 986983053 990912663 651995333 769240890 903811487 928183338 631073489 870609142 819705251 986158337 125815826 155622758 106289426 882521001 545332245 707817167 98763878 633646010 331953874 752769875 797113919 972011426 793621068 854433570 834396323 933291235 554343598 810304783 199960468 898393256 563670659 959075002 406714894 764635377 873794478 916068702 794735081 825501001 646587416 805706823 188601869 879658589 578766757 885519244 619543494 951775112 132653708 452936276 288912297 420008820 540376198 703195111 947302330 958975849 453247078 706869630 728989838 753115567 542928672 974893098 220307705 992477117 347908699 606377372 187258787 244207444 790437643 836108207 980262672 988217333 345423199 522061735 575989129 952699352 475044215 963931953 321049335 441644262 762088124 791083604 90883490 383344642 35366871 402478199 220393672 316054729 512312040 678044376 38048364 890570149 425578487 598308173 489649767 766616758 76208795 248526100 638412085 729985564 299601046 449619379 917236398 998002534 693755101 897075035 2185557 429805858 160296270 833008608 207278292 528586448 908665015 939241791 918451536 935419911 532249060 802539563 107274992 780171729 229923440 722865608 187718989 342360292 86055856 293322928 812953550 995286553 788240002 807775651 514611514 941658028 75358526 437704842 797754700 832527257 337222058 756960723 709503669 842254401 111009824 752800514 931944356 958689805 766643896 785494812 673726213 939838665 436426040 958200302 864700558 928423521 529997885 605745777 966320328 966359347 930482246 957354507 462579431 858248623 721623097 888537919 644382076 911592512 108224436 311374252 239204112 520786308 737020880 912003623 272724069 674339384 777442192 921636032 211101637 700727973 321320539 752669270 258955591 573507236 464942315 935112397 908305043 983975444 298025135 864226400 801361165 889360556 951386406 979155231 434670979 609704809 115757390 313249159 360625117 785362300 28836226 135011508 231831069 361114668 605807538 933191923 161650265 943065951 653501455 810963596 169342844 953094368 4393836 573610643 25991211 626114198 630148961 811070783 461543533 974983810 33946536 651068051 655703151 811244780 793545817 964785618 214535836 888754721 259492230 751842247 73555028 126495907 676208306 703560387 363234433 714499018 537830950 728424848 483165374 669906312 76561131 145986813 499336227 987434731 725773136 804094985 327882889 390238577 248335881 750810705 853284293 944694947 750485922 750986424 629663204 927604249 213392416 921949981 29036793 129887260 326640672 404876786 212643576 506163459 374785761 505046404 53040602 850015632 844985571 869387887 633067074 855081691 883649526 971537844 169955903 338104944 517478367 836844630 177109654 257605586 702900085 948813710 933900315 957535885 538976081 853779609 364453367 407590574 896729350 951223293 361055388 581932022 269766210 939413402 339393139 822961025 5847153 118408994 454704186 775405371 298489923 843274225 302010244 754918664 30895455 87681063 933197965 969205183 785958808 848579205 217448079 300524881 949317682 977928708 936421450 942446828 952357393 964358271 795641398 909063174 464262351 818452938 17980683 658088061 852178510 865082214 860790672 884928488 783230089 951225798 375769277 810357953 754097010 838834271 742200519 885203827 948211241 980144387 700172155 914773129 732686247 752016225 399212054 635888875 639781014 653815934 165435506 420244056 197951977 805462872 311408436 552040921 489189446 944926980 930577854 985047571 51259069 203226425 444527931 477611548 836507448 940675261 696413859 893159657 984605091 993015177 558247986 789516173 137131168 312962676 832651652 916571767 333216890 636383688 298036783 521142249 784634798 886370398 952690259 955404273 561107868 587623442 920180282 934368511 35577381 43968405 999388435 999391325 590786863 988655202 48430317 73688287 399187679 718647001 777463920 926821296 16198703 823568353 70826737 263177910 61923275 770679755 911470187 914813950 719898977 790206023 813596532 919259180 417611216 444174093 789788786 949036073 522061184 719345172 190694909 256441376 262480558 679585608 446045028 945382543 837954118 938625360 156283890 242357258 354967203 888770707 143823776 609726638 507907138 894868698 867253565 948107408 660790528 794844950 105081002 432246827 114046755 358295900 334952381 588281643 478402976 793367151 384480470 804304126 61280657 195627290 830827928 862002727 197478511 383748045 860523256 910649682 976402223 990316539 333507572 577903317 163055283 511986402 586967810 745621881 242241054 980760628 69830683 277067655 292474347 387450262 632789158 707969856 477821355 865824554 65584340 80668360 751560175 798325586 104498113 457571582 41680511 845457800 513616501 891534030 293904060 567755479 759552895 852290454 213928638 414552317 425250684 912570997 504973065 976564778 509296061 577899937 47647271 210825534 738413360 747087585 838857625 852418485 915922217 953260832 170371811 361116554 529548092 810116616 770109960 862141896 328958384 868732651 471775024 824324761 470118910 696563928 527336671 958210878 221976663 345125646 724826517 927409210 11740908 439609398 783607054 905346190 290021265 526680304 949211486 957780894 806232925 873602044 224302311 840830163 947547685 993661903 978221183 978803212 299264085 699693684 662663471 900098852 129228640 884601269 675076010 857380451 342983630 843898241 34117904 698367761 857004958 933538387 469992657 684675596 577600239 854460790 575588796 840267964 558141 603779563 832708289 840157862 965994757 978726675 604886787 920740408 217804722 291821376 753515829 997510489 523074011 615514770 649438670 984018662 467910554 934429138 943721538 985115074 789837697 984451713 194341486 210923897 409400344 536550084 541340639 565010829 973495523 991202086 674753532 974007536 88684471 371480112 336344976 947066804 971079472 978344056 60524601 549640177 60643005 878391177 580884136 788011082 663683447 720532544 122926153 995572327 902181688 913878785 392190800 946824197 380170881 709394569 979464974 985073008 271574924 421164628 885309710 949773089 792386532 969615863 730197561 742839397 159348829 364926787 880502902 881963639 923877973 998369582 338869047 837199537 225259330 391588130 682411638 733807573 42891177 652734950 451929026 591580926 515781759 652545389 166966392 397136023 262296676 408346702 871047816 943935365 811169044 998743166 205585782 327207971 915301507 924305202 600922595 647301049 284460030 785684044 61201399 163312419 586042565 607711794 133925993 750094229 827744084 898984639 636005402 952302079 855806435 871946450 462594758 506741143 807592731 841914735 12495466 42962356 358013720 975462701 892167611 896119746 3961730 316328853 685278360 813624863 665778787 713187686 808674974 911778622 246370030 377433190 999372111 999379136 312975132 428642597 946587662 948954521 969286889 984715923 882078088 953644090 902304002 965821683 504294384 715403318 362671187 706990358 938350781 973607839 229927865 455503648 183917403 713957414 98307959 936589386 698863137 894759269 68715882 969488681 853866960 976985905 630805776 943294222 365470257 509957297 676383671 928239392 992979338 996408418 958716356 995994838 776472832 931010407 780709603 798859057 377706964 489148810 70750578 670757327 134712050 143151409 355199734 964648301 573981338 860702327 125777523 190280104 13837523 799138994 422833160 472998282 698496658 966968560 874886672 889060508 895914022 924109590 188989041 277987528 94462244 315444331 564763422 876928338 351488265 941653786 121460128 220197478 231172490 854070689 180598886 964353927 480722529 512565858 633603369 686925135 754970718 874294397 899428997 945244121 159353555 190481858 323290047 768382776 614743764 970369247 486490202 731416195 696693623 787907365 601019513 601447861 581121546 878703559 120985304 285499851 812594065 909490948 681600640 747480506 515033737 823840548 798029556 954264049 201729410 243010025 189534437 970602394 980972342 986791637 551328615 976576188 365240250 828374288 321321307 430865571 341727700 614547681 843861259 917524850 562393634 585662313 725690816 734061141 349270134 369775514 333629340 615837684 844386006 994634031 225644814 291603005 132402614 187260410 829807118 944803274 814798344 894935444 562944031 890227195 953207437 995286120 732646917 830056783 788651545 935373095 272028153 389019770 215132640 492556590 187480239 420000710 919185818 997624050 162328683 874127959 753209909 955614564 925160670 929546823 340948559 347386933 144976664 450398558 563876062 640007613 167420397 582826506 853427738 938387070 784672054 861096334 721520722 763975161 571295066 835505038 112777279 761067447 911489136 917085595 538216566 771773124 455104800 568674207 718608592 827778072 267483566 809521050 558002573 813467984 621625947 791746026 461883595 948523979 975911722 990097476 114696487 155066477 656684410 813608901 977653573 993090160 733319313 735958334 810883160 908471383 377609551 722608592 993585544 996502887 874757719 923640425 383269042 738355469 121295445 240224818 400859681 945783040 239548337 269264185 236938430 535899626 940115746 969107719 335816537 556546064 831648324 906977896 28193996 917485942 548005428 763480838 72725015 308751272 486854846 962021327 493069364 889878378 343238684 370710816 205592296 892738241 825156111 957818564 677033972 752278892 411872129 703547614 643033783 904732194 598535798 893683515 272498966 407570525 355235333 628337559 52614044 784117318 495276425 496613025 462913403 634299243 941895385 950883718 524361896 754798178 859766094 878449603 34951988 336680770 965804159 983716488 843130705 863814684 137002079 990727659 243556597 261509586 873836561 993579500 556165710 700964680 433688881 895166011 234116614 949102866 860253533 960470432 535281726 774146607 928525900 973698937 505129021 663558439 139784710 754179512 471704037 762187351 351540999 687512330 589144784 852223795 325686908 541789444 18906178 717238090 314345081 343436659 365789606 984104366 939028888 946835490 606521098 781039630 157347415 174590231 31910953 386092897 134632222 491745288 764121428 833110523 267766908 791727751 722798799 758282991 674664819 800746526 690514107 876147555 922707978 978799697 385442383 637427101 2131701 394045364 467217532 934741681 574395818 691547774 959861489 974609813 278007266 668612373 86333594 349515418 760959807 979276852 954124539 977130592 430085675 556792478 471918317 665268031 693641987 872299207 207315615 477357004 280887108 387351494 122360425 724794835 523391227 756614052 341852933 707974743 643243621 688415438 185017434 521156328 245436093 619505868 240936882 246494971 662954255 924359811 35417592 112252222 719371452 807524879 676769271 746697410 862066117 991612200 637807936 940332266 681713290 690084408 119254044 220371801 475334229 719125464 88409580 775230293 393028440 891055655 19070440 319972604 561811121 580613504 41992829 108739465 10124825 941757464 941064007 954164993 487405389 789639122 859348788 984924190 623552024 850807801 331855071 659781102 360866489 487736506 603575123 865378852 385878928 886554205 124488155 769076004 946482929 949552196 202534094 221487955 13890630 197603692 419425910 654018984 521678170 587276588 65179984 180531744 230145055 997692974 555821694 660012372 213113903 884587358 176718185 386860168 199022250 497807629 344353926 391359115 67178754 517879529 54403660 852997114 591965054 979978062 764072928 838539474 960291262 976788923 751487336 872812676 387749741 775385487 399434864 715570338 610355324 986527466 931929359 971509095 931837637 988642717 34651597 443809480 148498171 441903624 47031891 435229271 497617938 565097916 19548659 865352960 532096724 829766988 366590436 828527088 385364492 880597738 650327384 652830998 563175927 828713903 847236743 974379471 787312258 951909839 902339169 945849310 487259689 642706182 408887904 667848777 988230688 998938207 828890783 844738331 61131215 531942685 47222855 640897752 293876311 477953901 760177841 907965886 514253143 735573878 657042861 971484329 369450758 523832779 434238134 872328288 748708443 761980361 967788229 993107966 859250995 920719274 729617254 739911546 817123007 837623006 88424068 569247006 640937271 912746345 410277574 767801726 317928602 712157274 806159262 811158902 57280816 775248920 429550135 479819478 475102534 645672916 404157272 707053717 830355199 950119270 266084587 760133270 13804993 737041780 909155020 920266170 133219669 360009692 781490966 919987119 207106407 435294491 620737482 707403730 466039711 845904375 199981323 501631584 493812450 709821847 845478312 895571131 487673941 499436906 436415063 470478918 931506627 944558601 752231718 866146361 721547879 975836348 261892822 917834785 125315322 368412051 936445878 962945537 999333742 999389350 938770732 972008951 576291734 656720571 7037777 128130919 497131353 509704999 482358797 644901556 230087959 545612347 852637342 900556250 281294464 973570742 784143478 946775602 338486361 967447881 354227263 702039165 468668340 546328364 194017748 772131967 327623596 587612625 560225793 849972147 108014321 784843990 764845724 846653389 168793206 971311680 954843309 984571721 143625587 930747159 603988453 725076591 170462183 943187641 126931427 869177767 581535472 647055928 851757109 875404999 624748448 894361758 407269727 636394511 537003607 930320324 936006327 954842311 169429814 764766327 209044722 745375130 325572880 636693628 537851495 958472562 725228434 766416527 67184246 933273635 715548189 838102082 170103171 778146610 57356293 561803050 905726008 988724933 551520794 749282140 24822511 851096403 190187398 279766698 227508351 501721394 223966812 349178727 420231377 986863438 653218641 756392788 429080757 527089622 582443624 888746923 204175884 960101913 926487560 968489982 872918309 889899114 740825423 918741286 770570558 890099132 556132996 625091582 500788527 780885952 977966714 981898523 537102374 874823148 286108017 813381825 774735044 886617066 272729101 456854581 313360367 840710908 411323746 466152179 637125097 940009099 120367544 682990560 818743999 966231909 568611688 600536426 258595547 694956557 878019366 896414037 96632836 967171054 451598957 605652377 423148954 630007405 544141973 791533690 917908762 960049850 955594594 959505792 753522815 830976881 686829462 713249458 8128208 367861203 242306851 373836720 404186048 762287590 515597603 575014997 857456294 901996193 989056192 994025482 39147162 807225769 444690726 637746667 615876791 955096761 791049789 931144692 12148795 73379885 281113682 404623299 450193737 451127679 936790274 952025614 306643171 718350414 129536095 349817893 193459387 610821760 304072531 350758071 43851481 298309801 326321996 853490724 326416061 535596359 454850075 803582250 86566467 488892253 275406880 331391015 130296233 825574992 911859921 977090256 812289824 895755217 539879456 847083749 953718766 991808258 4931485 897805064 172653407 478325279 926807904 968002064 962754178 985530747 595344784 799612535 816365892 895297305 544358819 569277551 402906179 852352291 949186688 972436018 950225186 967585430 287345117 465214575 391090840 683715302 23699636 539863855 875737890 937853876 143722900 376201640 532478952 595823800 823739500 845464856 601637656 857398337 610647752 970954205 165531459 701682060 336398381 974139408 78268192 511454090 932319714 986664318 941153552 990692755 546043079 634797450 730843490 949282870 772996704 915832225 389125335 819646075 637132134 794406519 891902566 932430416 965473741 970608197 14507833 983164099 671473717 934824919 991339307 991503665 270800245 461735192 196573655 399849156 169043144 505337930 497820492 748559295 935353323 968373055 867171551 949617415 932384942 952157298 596230030 681974884 124886592 728744587 646029723 904900764 649339205 734419768 875754992 966491960 305740035 589315691 394319167 696587452 752181719 982831390 898099115 923047760 413553574 535342385 52172063 786099306 857160963 955449157 765255318 976442930 355643223 580145403 464151426 642041610 101185001 528167169 292109009 486510412 695237946 709817308 95184030 688689279 775214945 779109545 621070484 853434509 135862528 662214251 722643448 840273527 257573651 561652579 840395007 878490790 771131316 933178016 704370717 766285260 311504152 812769616 625780268 667782149 475304313 963080773 430935351 867708504 951893455 991106871 646341342 753891586 530933653 991297275 230180798 455603880 599658566 659284202 491485628 698024407 420336154 427237574 452070695 777868971 367632404 672319810 168048918 530402027 16715754 676955542 748096258 811045109 264384235 502717496 230582507 656909669 391074134 557296805 262276343 870201596 109133939 584509032 183591754 225359915 900195498 916635086 500437291 602689851 352168112 497591422 868369017 958082994 997513497 998007633 173784937 554163164 589888995 678784778 47548373 489747718 88910691 405601709 84384318 112444538 468935749 579425027 936148094 960448209 65704049 424842793 630477794 818261261 493724776 965625080 859063373 917761252 751628040 887812578 317678748 740186701 838515034 942281160 444274890 699709069 979981760 998352241 811151371 891168731 307093629 911745696 376990051 841265505 73960478 207509823 855786570 886030933 154124740 671328281 473205773 597122410 562923073 709562262 262320597 495711635 716102417 884142945 950028298 966265715 497925186 901048394 128737013 694484551 500700602 995818068 838178354 913376494 388682864 715644309 782298353 966008305 308254273 357325470 157789915 918949179 360069253 501278670 825598929 849819498 433969768 558141918 619671293 910250770 222562498 585007132 995172961 995523252 138728149 663960614 836389317 972798999 81569580 804584360 148394120 932202744 540598121 945525881 526232555 725733208 230448014 853450455 627759097 917615950 233818438 889603169 341354395 773881790 788568106 854589391 932633963 948534030 195574684 532152001 818692660 925011105 930227220 936881192 655614096 924333781 768457393 969865270 236944927 572859867 347606423 678587353 333574705 517102007 338971840 473147485 475806933 680911032 851391618 998940830 490578254 981043020 279962684 849974390 764655832 770266903 2002451 557046181 570597183 780826219 892100398 978200408 303497311 454541977 504678097 956538733 959019077 971858088 892360209 986608417 173058478 568193545 341523047 824869177 125418470 394295658 99536223 884994324 330104417 867995420 934387390 968222772 101916253 242023404 329908486 668339067 355019078 726881617 418004625 597651573 389428092 734760632 20504537 475932959 859128414 910660930 807766903 987455092 782722919 791379534 245876203 959412670 201121067 810935689 2511581 263112669 353328231 505371199 601594680 976742189 668688148 805986506 615922269 792111335 578657049 953188072 391602364 518355582 928854459 941054682 340697719 733073433 922070613 998530942 142490184 981381966 541731640 919088561 99658390 705942044 783574719 980995471 750836425 930428566 519421691 654206343 523928872 732576441 919173846 978410537 932671782 956728333 127991739 590668061 861540575 865828986 832786055 916779458 56905345 488039394 69542974 189210033 597090579 992819286 750649861 836519043 823715050 932092732 305470656 915093620 62113462 191044422 658451926 999241490 621411131 903695390 580420782 865179050 240178835 295857003 999070885 999254122 215191501 710556155 882277953 919154960 132603877 583716615 702503900 706207872 518960009 972082174 291757371 483534556 78225537 872862163 625638728 887264957 856642075 959416137 629559005 907184525 99437420 875727880 311875495 455475119 452469673 764516894 270884152 355411117 781958770 972862542 996621604 997969239 341675306 528153301 172885814 646049125 947540177 960826200 434264077 599948279 321070921 966669414 786760405 883214887 446018939 962297166 133337513 512178640 410974483 419488853 914141624 981110380 559461895 830113971 258619946 390679645 324061695 422923659 530306072 968115748 854399903 906191574 458558113 747463417 946117102 965605825 40736376 254486918 830661084 876804148 993613563 996335982 250157825 262955256 667551990 996767185 852343826 957210464 147895979 301101957 301863030 947665425 951617676 994130813 348033619 509769970 297565187 735968469 525695642 652219599 999358629 999382086 596938661 600322831 90115987 371394485 713918681 775467612 996746284 999064844 643473803 913571771 574206333 952660838 837784891 924273822 890376779 974343238 328038401 770119960 180459457 853049973 666207995 809380299 927533596 961627534 302084366 777417058 874429439 993470734 386615896 624368741 38882419 658613315 772542993 785044881 889550407 976183465 608962504 681291456 435180355 784367694 247163181 512740526 883206 465102545 311716120 466876235 132563828 712548245 239689132 848907509 129301119 867918203 487948566 529329634 629232819 974752914 701092759 871074584 219925914 715022427 740734907 845479171 784230932 845431280 547441172 885966989 138657641 460790736 905377057 961524587 521893860 623891077 431642608 738902569 876204768 915091542 964586159 990434958 914443593 944500652 139656128 764708211 855899821 915246870 990693392 998241356 25894150 405163417 267067805 414628085 689843200 928705464 237483074 949211813 303605373 723229948 484943524 693777698 745305258 868437993 141210507 198837670 268637989 404532992 45117746 776612841 532855745 696357456 963763614 969089427 68362219 935972658 882667836 931406983 647072996 872640073 382215494 784806147 113389944 706568234 263996909 988349558 727587841 967503670 342299222 472099718 188490718 789120508 392335809 839821324 55419442 198794283 725472671 957135970 370475225 950776680 940760376 942847528 648400256 774315155 904384591 946473516 892281659 953455425 750768757 925057845 649480556 763542871 290585888 663347852 744051844 771440358 195000279 429294971 376972499 734905343 897683968 979333609 685846756 948147641 86418226 879954220 870082777 970042693 45360140 339071535 502390046 656176144 651889761 925346398 197326067 478094137 218373711 928748200 838492280 978114460 717978005 965271911 745252755 766318068 163042896 353420167 18625391 691803881 105507602 426602508 522251731 999136576 604545423 672698229 393425920 552698361 49083869 83869905 132347698 920751866 401601283 836597484 366523348 906089748 151672367 329690476 941414067 989343565 695580529 706352313 127373751 134313346 606409854 985824234 948789079 995483297 958070033 993810065 450925442 888230131 597874009 741012354 757689032 876758903 797413462 882190179 816385691 964739361 560328827 794869665 611391779 776923878 950128157 989631947 612679860 640011950 527934542 563116735 821949864 992272436 792657717 986792999 278743742 962710778 245370203 886472130 85122215 90266989 461283829 724351759 772337185 807667593 600870390 765265485 638369073 741245406 688933690 834752366 629567954 791316753 649801233 842494646 743824643 977884863 434168794 705300343 910810879 957072223 262872299 578086191 459578172 708322342 894462651 939682884 508748991 638308482 540301427 876805775 782589309 960750573 71783461 466654647 773187227 949446949 6511841 557093401 556015809 645959238 45105239 645281233 128056370 132153635 636283226 849840053 887541694 918455270 994968685 998927416 489661242 696293456 390474825 650362919 910071998 915092966 449625494 980302024 507610803 729624059 322398355 932310757 590934674 940167961 218474480 855875921 307053122 838583912 480112316 916703660 968181644 981043502 477807761 989828309 812844701 842141057 710487060 723875828 596788485 799356811 399248945 622278289 377045112 652221882 30008857 930083941 860921321 964364855 792486474 863753979 948076277 973670339 43470146 326857613 189727255 442458346 970451051 983088313 304357328 929082410 53706502 579298893 458034202 521169800 796635707 858488876 742959885 971259038 555479125 602636206 170096241 244981646 930595005 982124971 277265995 532416445 95867854 939717242 880583364 972372310 687032441 834714232 310592840 485156243 661892396 780382171 633181024 684928626 346334881 862409277 584946729 965413252 503498235 809662891 914670016 934224620 877668912 901937682 318150289 869313391 636223050 637652140 939664399 950761814 309271404 728188910 847913540 933682174 185527415 796481505 909530404 995041079 839128273 894387331 246895864 503361143 700508004 973465456 218534795 497974854 762079131 978045991 712649725 774537451 121555792 594539130 691566474 852029661 782496743 842287449 820376792 898864161 553570858 823140829 354276746 445921853 163213039 853203243 675342842 733521569 14632487 94751126 83715976 862461402 855733783 955196881 717384664 997939759 795258153 902638992 809923839 961308512 180795078 388822540 153913948 555138202 411595711 637745994 526240196 869365429 580924342 901952960 908121387 934306781 289059289 753720944 110540689 523869131 511939938 706513595 254976461 641888684 639829275 907662344 259819595 736441147 975989383 979626344 671594445 883928782 588012298 855000374 555005475 912999688 148353718 398916418 537919267 539535887 787009861 944662364 587731780 663727789 350215029 544857087 957077290 961291122 146192813 198569598 94866782 511364570 596274501 770198876 453295719 770387373 77210594 183646249 114731383 736420479 510504187 993863328 484822748 722301915 954397714 959564890 426127951 886093082 30776141 518468450 622621346 771662605 152849472 309021891 716105338 821741188 577294451 950235889 81621985 946524447 190643717 810198478 168955861 749922860 905208497 918824048 761362551 965051854 961345338 970118798 419133687 639696240 312291805 667596536 554426344 657824496 947764541 962794080 926241407 989714867 781121918 864995870 815081638 903161784 655581025 910488862 394924747 489993966 24722755 172488907 383060129 729832455 358279307 616954599 777116434 846202482 858745309 994994036 408858423 760494153 485698705 891758185 738058408 999131041 959440510 982121977 100737090 190764911 973044533 977751457 982302308 989413307 251281074 995718885 373036606 857913002 602037767 991855136 291883907 726667519 462854523 871086953 35076746 659663402 278256294 799989312 523358555 664541331 550666918 927659094 896185413 958277856 569218627 638440950 92015392 503031146 290345550 598789033 284841839 544549580 841853089 869253061 522490824 704443432 988940704 994428930 268192799 821650920 395980956 715153150 462182118 719650973 706327636 756050038 395409783 578286965 692242273 985541913 953940582 988390341 143935264 639022688 184974473 208221050 272249670 437504214 406909262 894605198 433405422 942726659 257085210 736274698 417969338 508970723 243503323 882991865 401881621 845442305 513438374 790656558 906278976 984431616 974620037 980088967 74686282 300437499 932494949 943350276 493232158 501628102 647859831 991181396 426544305 767703735 938954055 947251393 729557785 949396488 327181240 763682852 93115526 642444961 870048749 916881442 401762376 830255702 420794730 532313676 46573409 965080760 955626074 989572899 283432919 540000646 859843669 990969557 608408757 897248077 906152347 962068460 68231703 218456835 213197270 469924600 387291441 488939377 454308975 835236469 276512051 430927950 291858837 926577674 934397636 956744515 587676589 666836869 308044102 667841123 422273593 690629557 197231605 638675982 137148653 400809311 156496882 587653961 371098033 551098042 128644393 611883724 826002298 889385061 778131417 975641239 973939330 986605280 322130907 873954891 254082818 541088192 352738972 799338562 329904056 637637286 721654704 735225933 685998229 821120300 383212719 879698104 685152696 840120117 850653868 853302668 690876537 978202176 612520690 966553631 138464635 967821087 778585122 940849997 762367256 951988443 817476105 939027131 35814276 551781010 326945530 693432973 771658322 973062324 676578625 954390199 855923428 978736636 461539421 936285300 95013783 937826983 256575760 695588012 422567626 930474762 134366641 410349812 519735066 643223720 501849253 839133307 229553111 468115227 892205576 986783127 950286155 970588298 418118519 886532268 906607508 954053603 864123740 991905597 894566532 979403227 813633325 947240873 673444827 862451472 557179659 707201872 211053065 329659397 746943011 916426059 925401305 939714980 246912518 966026936 779388604 915202143 317012543 997784810 21931327 773091536 919761490 995119627 561378068 601661364 620174387 735062158 639140332 736695976 596811341 864380688 92091084 667008259 569946982 794367374 263836673 282009810 28254202 70087424 652590920 917750260 147127836 313243644 354136818 457721836 701585178 795459014 581560882 673447209 657793044 780490903 235013094 609262971 315611347 564369005 888859723 984335684 396006582 660257633 104575730 309393304 453717291 808456597 619500812 881984095 872420781 901094074 635424034 783610614 744914268 939935397 692915703 741281418 145276597 996722223 997052683 998925346 198002636 418671834 404110089 462198501 768709811 882221720 729344964 941602655 380996386 470686742 646387359 985501036 186008442 768145829 688562611 881008147 16045342 271570039 634882120 722158698 166574615 967982795 341901795 685492277 131553460 750981005 128820651 175994940 473241818 815558645 274774190 677208967 840595473 930305328 110015044 832421179 919809701 989264320 206718308 516360240 455534982 823062961 596733231 940376078 487480616 631071249 556229018 993151593 580359168 701970205 259194626 481149594 862889868 975397560 911520161 959594635 547727886 756535669 274951985 371548191 208983485 520249759 223323079 567015826 935370048 991583732 168426864 599244481 943304349 972484040 650396699 979102729 517631188 544462276 192408046 491944813 824212530 896100217 893230122 960436369 318511203 585464168 602570727 941669399 486647943 897310767 140228935 373100707 159883362 934305220 465070919 631672161 894301682 903788033 988211529 996211227 821574775 964687868 649956072 674156310 381924481 385774273 279076459 529098680 49793129 77810271 90125687 796643841 293824004 620374024 277725976 775628410 99468380 525437581 734358136 896285969 643551352 974965902 98576616 766545816 390872402 854959265 566632657 601951885 190920524 926815252 417904671 860135570 192042513 313923648 449921093 481203853 295013282 786737518 987252972 990213662 123768590 611492361 227398763 424053085 726810902 744432453 206706568 827646842 11115064 611496492 791834478 980802870 844194242 859692146 289876901 325307866 926575035 984096424 619358341 814469785 895585922 975849159 329854834 789082141 867656855 911383641 516835667 660456939 882034066 972324427 356452977 666907530 397770140 730056349 127589456 422022004 614886255 647375901 134626700 794850706 365026453 510612508 498614352 897303697 188678986 304059000 85289266 843496843 917638844 940055555 220515819 667102322 738954888 980793164 909222280 996454268 382648187 528910920 740655515 960570432 769077012 827137788 997669950 998258430 90325389 845802650 686899652 717907460 663801636 811475140 493344027 910627888 195730962 443352504 195437362 904262932 234957847 938591892 731536426 949708410 318124037 600777780 903926615 954258961 219252361 487921037 525902096 726088037 359253721 819845550 721625136 955118168 762852264 819283316 446168548 963362285 221787969 667568332 104140980 158070425 614570581 750786027 290172065 792902348 155144709 566520268 369708151 507262445 246481727 293934581 754957654 806983635 356923865 374346679 276543946 527160024 580659755 857282250 880871917 949007983 916335979 926728238 315352038 734607394 463857843 486600476 866281236 883487929 995375103 999313525 514002728 895421385 608358326 931403804 263994385 505779934 771452949 963074482 904120371 912751996 454128905 665726627 295255246 982112178 884632784 909489099 372917641 661306181 332149480 968857525 841015071 866016470 24605394 689983242 410002405 518974480 424895039 650704877 736707502 855375866 586593980 950076933 731018991 739722496 411209951 616789870 91828279 701198583 808430995 867137757 724516217 942573112 21824851 281381185 915879960 919218663 396669288 630235190 130783820 943364421 785289229 946593502 238001394 417430035 903561418 970282815 951668262 969083350 257931952 853591430 819445751 934854103 246573083 373203604 598912833 804640028 147542021 595972926 75123378 338274614 117664661 339729722 458495396 866780831 294045323 304784854 54671579 963090226 512401117 878824190 749711724 792948715 423802275 875594724 177458282 210470726 43528695 411897990 479847592 518664579 757413443 914557178 9296438 619956600 778489813 864118773 807387412 861873389 894975817 914130489 571854022 693272578 311101388 795675802 237159683 829936573 307544067 770077881 809565905 915613900 126815056 318023808 495077104 734572231 631614942 667823897 874266061 904784309 41042422 683678415 836143407 849205684 8617543 694339773 65974270 843226687 56800742 975824425 963252205 967047877 894724224 950860285 960150079 988573023 127430829 469164924 32924334 494652057 583898571 661503733 35245688 966742493 297952728 488609886 159232509 229279482 75773662 833227925 840460848 922813666 463881148 780631608 289504724 532337696 240878799 859214254 288654461 816683068 31829863 947590266 14359844 162551103 171773236 746420143 280056494 821419948 787763471 861678442 428351471 784206715 756756855 846114961 838683341 864531052 72050913 969749567 94778253 675062175 402885259 887134310 931730459 973912758 383722313 514244634 609746739 731058192 133285995 961999280 955593261 970706504 928411037 931839212 16170196 86133207 156302561 252158439 628207286 760453515 154651286 213990943 491792885 551832981 916959515 990959456 462847553 956704931 367522685 467862876 244339674 543860998 558948956 875768523 906079509 970807923 708986566 831373077 145505566 393711849 339458815 468237558 538570681 861498650 737991105 979469734 837720254 947509404 723084474 991875053 441278371 979086014 850966561 942434741 786939817 924211521 722529681 853152031 494989428 521584377 959448909 996461534 614214031 812853654 950527686 997055044 107166407 135269808 773557899 844867047 596227154 751400326 702548960 970001261 767612356 896201430 17089454 295132420 64782461 928840400 964639659 979654441 318348396 853076207 630139541 977463177 232444775 790949795 441598978 921130234 467584841 788940447 933118914 953541678 392297791 996359697 34368069 274070176 89445263 741035427 599366908 880724212 791905030 891295378 552346079 605602610 404155263 543796767 999320916 999370644 927240011 960692227 141910517 852035627 456599184 938978665 809598311 971184050 562801762 597887883 869799339 893047493 349465662 902220344 694505219 863812866 518953591 620371885 134367824 574515065 277257568 679913927 845664902 937578657 446040633 766445862 685783309 845228336 850615447 919174600 331866134 719136843 568520332 744212305 587134457 862682748 9549661 70488883 143541445 551044012 331865496 935750669 10958843 867704443 888700236 891159479 766464753 926338483 562112944 951731712 952762422 965292109 941638072 972629782 115525962 873172844 704341573 996948277 20953494 774175619 173453835 275722230 658237348 740949383 956917019 988493380 605275572 814442331 399619409 495409786 941513786 966134742 53788446 869476103 439431100 994144853 167576098 601919262 538076366 685049235 638385178 845694694 209339713 483393834 745480215 806584099 664113002 780425023 337457059 367909656 340302070 679511981 41126373 452114198 8271901 439547785 632238575 785466494 214954556 929248454 226041112 280457242 183675860 184818095 928635230 966301666 359254985 622910152 399471054 832081555 522256216 915941559 414481796 834427969 824647487 889200271 78884180 285236642 549770101 860987223 874758897 966065903 321060146 850665909 577184800 765944153 607715687 893857589 946988275 972822174 614607218 749666264 43333095 676110814 897573861 922232999 936371765 998726127 666626931 951526020 109672438 590232221 701458771 704472029 900634910 982878843 475191409 587774502 163766960 205909369 839183496 958501318 522289915 824269128 308152013 701211275 937286458 952250134 287367285 985477500 620042408 689291519 838117507 921407197 449771978 841692871 597941250 629178550 31492131 871169580 265915132 896018776 819757471 944021142 759892867 842034936 601241405 989159435 56118210 746001100 347395267 848511688 376600379 468554564 480375615 781051150 754712612 939238250 425417759 996459759 852299725 998481927 504224527 527729618 456666889 678900997 872238938 984958938 219640839 322716398 227848750 436517324 642049231 849266337 467867691 709661092 981244909 986202575 402205497 516393503 53741933 377820350 730070969 942991120 998850589 999300220 557449385 799668542 891000579 982900234 653002514 887717669 742145366 825131254 938449021 987287891 297365365 732504283 238152147 252553776 451654639 755673180 60742466 766245400 16702919 432195807 426651397 458066037 6346311 805608469 886137129 900549327 20076272 532826066 62602516 413997836 908331146 955887170 484633353 589054260 200466093 921362237 458050320 854196506 371894030 778393875 107183138 137375297 439215617 878660272 868673437 920796308 797482756 812471350 821387620 990632903 942060402 981048377 492230127 662357776 742744223 886419912 810778391 861702689 313295176 603795312 493600202 522136410 314202272 617182068 903538661 938087815 389110335 871942404 188325009 469194597 123498673 495600169 300797116 446420385 986062399 992927882 427657511 711041743 130051226 719437893 839562564 888072950 532880924 775798249 734971174 959624866 570053055 967697651 247535582 974742564 196080342 735425794 59621486 936281550 431940007 663046342 759424587 884447116 520344523 564506608 382520764 858804826 623498182 876798886 546783390 809534858 330422221 781846822 287016242 899283665 544683678 732251190 505972668 538105016 491988317 684450523 187080097 250206025 973183054 976728439 833133473 975771697 470802372 825262771 165523206 254734370 919605950 957665004 479606704 888005567 522745405 639736618 967359494 976641261 465652842 664279585 772309271 885113181 739831382 910324754 163678065 269583203 782224652 923255571 79102194 317535991 522966681 942096226 557343332 821987195 628207392 628969071 551304337 702545398 856450236 894829324 548187660 930784876 313468033 456771142 263595277 861533652 313585585 988236069 966517049 982327353 82284770 95664993 63428182 370280960 468004311 512433076 268867406 308931587 640962819 953845411 598327983 652296969 359801888 878650632 711456147 963138037 39861024 744418143 348997489 967955811 409865436 843713611 960506695 968567389 454053934 603028047 651396915 937634320 240518537 595247150 645099685 927142370 470821193 596112588 831008069 937969415 655085112 851441168 811295475 946167423 971528823 974826925 39217959 849381454 580933813 646146768 270090451 861293729 287028474 425065383 554960903 799410086 659596498 864040371 504590949 995291810 585346277 995720541 928145131 950394199 356462834 759676308 100460703 705419500 469004997 928271473 910244333 997880203 949011229 975809364 676459991 761742611 194386814 503581241 531098514 941921661 471787349 537629524 425488789 981107621 249945978 856248034 420072269 525187375 58886287 664758518 867334386 930947084 586115815 810439826 558286137 954682416 676067623 878920915 808038056 881883004 309057484 435782242 786398832 880238140 6930949 199354915 193658186 381539851 578064593 706781700 551618271 875141760 265260132 893278882 579899982 792281039 642372878 831300293 81403280 550832176 12940106 981499333 605215817 694023498 532511600 795768656 115099844 823960549 726835303 872614377 377303694 557882898 528813788 798522218 570812159 780223537 252380265 493860115 486237596 531227095 358975387 739696912 178646463 232533157 663695244 953120809 486536375 691124805 425193896 431910183 328711283 599006517 943914745 972815157 287046943 938742146 369533369 573809360 631126383 995999927 769206990 986406142 48822610 683030611 288547451 967707197 620659511 749916538 714640778 993818451 151572972 944073411 458637086 695073192 971047345 999078067 945696803 983130916 253911262 335604757 990520392 992861307 240335456 256353724 371743813 378980746 582252022 941436026 338705118 798590254 879208594 934814802 615313021 842235275 398269544 449056111 283166022 386952318 295451140 551093387 77033956 836712240 67700067 71223469 316411 126928909 910578794 947297721 541084786 792044552 676419884 906479248 155774615 403656460 119181424 975914461 916984181 949350120 505337891 728873385 407057374 472247446 953593761 969602390 157342887 701545912 451910058 895385070 86851335 836285835 545963138 620180525 39519773 209882022 469287465 892522104 863835699 888831358 311421760 634216781 721499170 741241612 515606489 779653325 127217873 828290562 465183885 834893593 692453710 914192496 815179811 842576052 190200927 858707279 17223270 513916045 496217601 549197760 856699585 923415545 92536942 884063011 622850676 814349122 638698849 716958020 203198605 792859741 547409940 824586045 867781924 900209096 235820866 986047914 894913562 909947320 43023447 108850919 379363739 417064791 942710885 999051872 756253140 770960067 937942193 970388639 51080957 319397950 284346013 343867353 380743355 451266609 240465259 542798806 321207614 796774314 236037884 460433511 660931962 862967463 168155744 244134268 26671889 835091538 908553572 961793036 374256495 439774146 708128765 971056934 911179100 955928366 383691921 556520028 953016034 960293841 611331684 727953509 566288986 889868051 795087472 873724280 916210749 983131699 929012410 932774963 851398263 854379999 922674943 943593650 69088151 631598262 930213718 933203429 55218096 381387916 733051014 751596037 112119909 521894827 228409698 836641651 766725342 996802320 890094770 901243427 444363528 669350345 628386644 698956354 658489127 838898081 238849483 545494897 231717107 476624345 374337525 947290712 255961229 503493443 833857919 998008332 910293871 922506215 22358808 671238591 361928639 915420463 443217595 930825059 875341092 899532969 824317369 898202827 259221709 786457744 754575880 872376849 169374598 868771256 773559006 780768505 700878547 759013363 744052489 890728994 171477293 707429309 941108161 987150887 415673833 976071124 877030164 883251887 751131001 860508415 981996983 997213358 121629096 160398914 341207320 353923635 347916500 883790490 925135973 956699642 106272840 778253940 869979696 974191208 157203177 376049140 343312664 517479578 60057908 770512139 575293847 889902936 634778735 672130618 461191944 878462048 134374056 900397553 230741361 699024888 526674210 881104411 125495213 496927793 441149250 462947584 279924487 675369453 43092790 522152038 367435750 517841288 188983355 483361576 124299784 177303582 986909144 987654520 918530171 986790472 946672550 955191546 51567871 387287564 348249120 529055328 479255930 482383112 609795538 950279767 230736543 575399504 904688946 926850076 513705990 688049774 929431859 971400565 433827731 582873787 305107355 584594159 835858773 865501061 848945869 951941503 519194871 996563979 923687447 953676950 112814977 802126829 526900116 786017493 648050175 914661724 549536300 773707847 635056035 777715996 583773930 716761132 427407738 784439303 952674761 972236033 521886049 976748455 951414626 988689699 32196822 301073988 281679281 934378441 899467863 905128499 954366016 964168235 886475318 952252487 484373820 974281814 39933960 149649072 652122490 850449652 187858899 651818363 652302216 712214972 162561436 229312427 791392372 817293282 754903094 951333309 366750774 409932622 823809285 873695018 504321701 912628898 581721841 974444990 726460092 938008291 184370344 750893679 631433841 785536311 456433676 509135371 373144147 551490591 400586637 505439079 848590290 928731905 519940208 738576477 838807277 912751479 106600989 356970000 905937570 952783098 366314813 660477548 277675826 582601960 662090762 805709844 912617291 961084678 692804944 788330646 419858626 524541587 651839148 944295266 254594257 774156728 274144321 789957981 202285069 655429627 279925359 576402604 76166904 462804068 40550630 852212915 454354497 604580286 289197595 801577630 567884138 853654888 755462014 879663440 862372781 901341284 15796078 809944203 729564344 911665561 341437100 716815087 696712621 828278126 333288763 638864852 998472470 999266932 631714592 727460386 746177295 903759407 616586751 816006837 48382058 766407686 850861761 978166315 209340373 584448870 169868314 927301525 969750623 991962333 356810336 703507377 323438681 929708624 166117985 734131699 615210709 923411726 10823342 772962981 746396730 840871456 221283517 522590700 494444588 590078571 792617691 885247057 946512534 992506561 189172691 893345854 724936209 875441921 101942841 650548572 526866246 859607847 677438531 746397707 40584116 940971259 361947702 835031744 32374456 212970995 252798703 525478481 503393316 658595344 670208995 968962662 619264774 707269617 871990859 949458485 108563842 531018553 636414258 713834921 448493556 500048174 388643860 860111070 503378936 732165224 897168817 968626207 866721358 972571193 272010740 285885727 697996234 915203433 323120412 901941056 196492039 743686914 29666341 693150823 688079830 753211332 458829221 653910601 497173953 637087196 890184669 915570700 6598416 532237216 472991363 941958468 252166010 951567262 371199955 500169749 104887607 203363530 615559080 722679839 2781561 901584202 643572097 690078650 368941364 581079075 350892244 896887821 962886262 998360558 169373107 689856183 267837661 900223431 805073600 913642790 676701882 844240436 357645013 663116511 581959377 930677085 174789343 786098951 70995641 513163426 154408764 622234631 610236235 720732552 325736074 696794756 899946762 955370683 842924730 896639084 544306520 759643855 923130295 956593123 902407190 938134828 492967636 726223910 886824303 959759465 7130520 51291350 364940417 924038009 418698512 853498639 423638262 909901091 11004375 575220515 280906951 638036818 609214020 942871613 794039597 974556391 762917561 944307692 556540612 776521461 508114134 901328672 245712158 960930681 749811810 882959753 149181342 528970355 328892231 935279636 136061439 384802299 833097218 929517220 57782164 458806732 464802342 696728915 412430116 656024140 754230079 763769210 469916370 952726193 491575508 711319190 750084124 891519706 903747017 954362239 502715111 511801285 825955134 921282712 505720566 515231191 70640159 943426429 746843797 971715640 368955758 523166571 580792169 878182112 100414118 779367179 816611673 846655779 482475183 905926056 831474244 928178657 739903218 781312331 239049564 520526196 48251796 753191068 520675378 931117882 808775706 935193157 836500355 991033854 98462906 424404842 557431842 893182495 557831877 811533379 509559628 736771329 174935198 347160677 615855415 909037831 81382044 763520820 569586262 759225888 888346284 895684926 45272320 997034249 262217762 508139896 759440064 937576622 602953671 667022596 876562143 972595171 492178971 866399724 20545202 512536966 415221312 527345198 438276829 749888151 1107567 839368381 694954889 892178388 829764911 933077122 698832548 767409892 514569166 625988746 784861495 913831445 258857012 588506624 321701292 886629253 545082663 801296157 644842308 942013345 544123752 686330835 409647190 852716577 178818046 669188131 3174524 609256514 915128970 976028987 418132873 829806783 643282473 738892391 396318179 406905690 708782601 943958990 678136991 731724641 474307118 670550523 690411794 819850534 753049006 815466058 165202429 841013305 581264582 845260702 233808524 305673891 107849857 446146602 71570155 409040597 710914038 810615502 539475229 927042478 842453761 968963340 61339093 804205925 554237179 934059235 256638520 417779456 783022996 801001716 208264372 748221356 786853464 911618364 475230362 716788552 674641647 833642849 417275206 606670869 907495153 971537667 947927927 996266817 201537355 301544025 71551008 322151535 860624611 996566620 115632351 232724090 422814362 434925460 386238728 605883952 306450732 307592355 827806791 896540874 71590540 380332834 967062417 980793126 561391926 885124155 904380477 960886676 864440954 909840044 143218827 610745071 461294044 806247890 874662778 931146304 312191809 677175376 160930835 778538107 3068396 637665637 586804115 897848079 554014083 681795981 497236802 564085718 580964892 638280889 354561206 397541681 672386289 857819523 785806004 890420405 761752218 956801470 726152390 927257141 612838254 798103641 483013171 787649223 44389026 103077435 430997445 792553471 729089530 902449900 265256021 319665781 843980577 871179874 67643321 842242123 328524977 623338315 269197 263940972 718268535 861667919 165424763 836325219 130113346 446340087 627703069 884061492 65347381 856589798 105868720 282656553 717798189 889352707 223152871 420930316 606742405 968376943 723100374 946234888 626133240 626772269 764938937 808619990 601169960 805825723 680645750 976919134 226017691 439774490 639559692 650899566 875798026 980128718 636484416 964674586 529088842 622640225 649688941 965809194 336334049 396889303 247869520 519859474 633836122 663573689 563840737 915221280 607644039 735815536 469759166 914115426 218796980 392773391 188055208 608818067 785118658 907224049 755974257 993793318 492115312 619801806 499189906 546457403 26360570 77080220 504221566 643581564 713368426 963672080 34056007 239829721 328615637 924334975 953234132 976198966 812603904 974761307 155119595 492529255 753738154 931818299 601436480 940008487 891781095 939705485 311847076 963541624 356824867 428603663 263705662 994238062 622737828 813053509 338818344 720040865 688382853 935318854 929035267 946612932 728533125 954905797 705977868 710210917 565812148 690080116 941419096 951386557 831676750 899092603 583664173 698034592 40740691 166538666 799696793 816996330 848972773 939360608 657207362 879400948 66523785 701273772 933495503 986335634 933951470 999000001 468793807 809413820 62218312 698351484 788454131 884876980 185482554 411266266 126213794 192327588 210149413 993621694 863409192 931075822 984564013 996340905 404461820 579843196 433697687 673265621 913691784 981585014 256183835 679901351 17539651 757633335 478920243 957260876 291676364 834810353 597263828 816133580 956879375 974094769 902926052 938641081 623612954 912194423 887150612 907874309 371044665 910025516 707992811 842973852 216342817 445780703 809858461 863266481 516373792 605980703 343374473 777477473 951315128 971712479 609892293 721886413 41643293 346834685 238429337 714198564 774097036 869920211 56248447 301592189 186156049 238216479 81065300 538267718 466264344 577940847 587132982 764993755 321544643 515226440 153154482 937496006 486847915 884846233 269619527 565987718 399200657 435760218 240251928 634186528 841461190 843358411 756353451 815542281 331129909 538728935 232389904 453623797 896243611 974438726 579351136 710078102 972543188 973246815 389633225 987177182 857839565 958697943 902854422 915326758 807770976 868120299 728389077 737572218 461879691 718056334 881415276 884196493 147831030 264746488 734015728 967469858 916018535 974879784 37072403 442992420 72277671 640103705 562945071 632656745 327864641 363995129 621902020 676063082 139646015 872216098 61476441 762978263 305165233 785298608 958828549 988757043 319042385 332038712 660164274 687759947 16981693 218190294 953977956 958357232 36412268 95446342 706326522 724946846 940414819 978392436 731607582 739102061 791011952 801697044 961861223 982998796 384795181 945301504 611171570 923674623 813823347 935720689 200452748 439137766 585338944 923476790 596232314 636317461 69126928 159146177 724745223 871397162 112006359 361561499 119725316 408074811 319253403 541375701 69066487 601036155 942473018 987648789 878085180 994230155 664906171 696554847 79751281 831965802 642605756 907788920 301140243 368141551 712822560 916543850 719642079 840184297 2362085 173420227 88437588 546811066 101891382 840296412 669496602 718904544 498743238 990428444 885748683 993367432 110249818 212216887 513789566 522074732 954692510 985612440 882322697 983126512 411072898 927136652 53619817 813903836 797907663 862002766 846731672 948665805 403813969 726472747 933564367 964099697 23647040 371750468 480393124 790823585 883226300 992401148 369252525 437675858 911208446 951685829 671575014 974478885 812115562 916604186 953245955 993350420 4606340 869618179 276788006 821149839 534132179 851810614 568860747 775894782 643997807 878240334 76038275 383666772 108474976 196313891 117261927 142232544 559222458 896208605 978078328 988870704 757711434 985670603 537664401 631481220 272306966 976289252 872301989 959164648 527338181 961342638 137168483 667070076 222688572 836282554 433053609 981876102 296123877 619183341 865705720 895459192 133929097 356275924 868960815 987970578 98893347 167173494 805787954 923956042 221567626 234794120 145886348 989774811 628314691 732135451 944699710 996083371 781939416 868802765 618378991 950002661 279058803 360941438 926201656 976705447 33311998 533343630 261331592 354686287 271798915 841695737 606331740 635292644 707988181 735219377 140842205 746255664 287281740 682495054 756030657 929948051 979694239 990184424 37632206 428855795 387182231 416575254 474165565 614449839 72932583 269042380 772339634 798935643 107618060 466695488 262543311 273263609 324208614 373747415 755782635 868295738 402156114 909342489 611903504 807283287 717945763 860681677 526515561 562373044 330835786 427465746 557427414 579312002 479397831 861654377 922990281 965824892 166826877 443107332 132528222 955712086 48082064 99437008 539855149 898699862 809162873 927321834 176468200 344330422 636058105 844492278 750035729 828388086 29564433 322135225 683194313 747131160 934921879 948055160 145438414 794473747 922966294 979164986 188298298 419828737 74821314 953774480 999185214 999387523 311076140 727700204 549229327 777300807 80545906 761317097 2761451 105598520 989246525 994338401 308578425 571257357 516033351 770004138 296716789 581362678 976010989 979701712 341181838 363504674 307506886 547984848 755313349 981114158 526661211 599403170 702810947 787618192 107784656 269039938 168785470 423507132 399293018 894140968 12384701 67353859 79381910 410578917 440501667 633163759 749928429 869898665 424767940 712685019 358904475 650035142 25807184 338636110 632155331 846443704 752468965 893561473 326083689 848077486 483504671 925929592 708124120 714460033 354419449 591094098 743451356 782380543 319743750 380382628 722460207 981250405 267853156 959702710 982802731 990456173 568838868 721729200 746344113 845704959 301400569 883054041 69420075 541235400 224817451 504459198 311021364 494737748 385734019 606483108 908511368 927574862 501192455 773883326 604857438 675231723 227232667 896357791 955452715 997807495 509383670 645367500 39436993 94923509 685016403 747130395 141723948 844477975 126650925 635980285 885071944 972595787 626478024 798135460 455835502 587021632 250569888 953487564 828467810 995013151 986764049 987521975 665747879 749879453 497092155 977679479 261962029 526200172 564800399 983973071 870559129 875022631 629196258 840514030 244963597 694354411 325173287 480807445 607907294 654426927 296998282 545360335 16563174 217018187 71503272 152232881 653621031 729331253 637707145 999239700 576628999 584378368 905301534 994780474 626712931 676783278 329820061 995816374 377334506 768745660 551283354 990317679 653935662 767591995 435311315 847488654 648775779 986922115 674671389 723476528 992339439 996849305 844281638 970635319 11749055 683436391 592629681 988007146 442144759 471740603 367064648 856803783 391917220 402507053 365113359 916043780 680936218 984295103 145610048 429425715 790824389 809620155 551191327 606687438 898287169 956662549 135439934 868251173 130308441 969717206 630937899 700325952 439304492 646057814 228178037 847802933 773932811 916006589 35897750 748752955 686122772 845928907 779177320 795897676 924935532 928569336 537300880 888494283 486336491 503605106 298024684 723806812 269942632 305137531 704582896 860947196 616972074 972284984 301229384 643843250 180229678 852943714 554706696 599035518 857902222 976731314 851027269 910019532 694467264 883810938 624609851 712862556 934343151 979006232 534113479 939465763 935071119 963889382 295101929 300990192 167376821 896039179 896721329 971412446 276746349 528108063 278048078 537253388 548761063 918134211 258669666 473248457 828045926 894626608 905267170 944928883 432463459 857196721 70355200 829768911 556241829 562143862 449600886 720798710 510949407 862023486 243809868 346979757 233796041 682963281 990224484 995005095 302375125 937034386 308440084 496886000 263515143 401680591 238672518 663911714 574271427 631485437 140750981 653654077 626981689 910255883 468416961 829954930 889957533 984756075 811395387 812674719 268746649 350171572 62486016 708470122 917991435 978845128 137187350 589949644 299504243 790611294 546776284 643115195 620422194 740351448 518996873 848267441 753731391 992654952 590405548 649712063 176526409 528598793 997133449 998675591 614595087 938503543 724170599 991899851 747564054 949710838 946354314 959830907 945759813 986376406 190695754 347050842 395718534 920267218 625305010 660500013 618202564 774275632 435977137 554271892 266445825 963557077 212350391 223501321 103944354 792421502 697033992 803818558 679649064 752021243 437036798 475002388 670888462 969341080 863960552 922407664 753704866 837248907 294326024 842211932 406967866 798405148 148563638 393244263 433814592 694864778 412549550 510587915 550748683 777153002 186125121 557174077 157665620 989390797 667418025 875466263 619699803 673970400 924069793 953223799 772803192 787700603 95793221 626376132 917599052 973439382 605821321 915145783 559215483 889124194 768126849 855641059 910790182 916253572 395957181 962281997 983878858 985204436 248707383 281746539 242994910 872335724 832034829 868464701 474310876 524961364 551704188 644113870 553182075 701315459 754823108 992665314 225836683 761414595 507283208 876720300 256649341 435198937 236046363 915618276 410102552 962970998 214241176 331795180 228778863 297356516 391367135 726966108 521209215 709486780 915012013 968655074 794201919 929880882 739367673 965115898 793377972 965651459 80840963 771461989 297148231 634661790 884507485 949523419 17918951 629253021 861053925 940258451 411934254 902477756 54160940 927247137 180759762 705558396 573415651 998285552 27410313 195935129 663461813 704250397 654174118 858466340 918136768 983363495 989382829 991232488 624633873 946758729 532094593 549309005 826723808 952495110 101946322 695716010 358923890 611874986 288134234 449309642 48539896 920312857 643871075 686569963 666403141 681979296 245655399 465968427 84680420 547417039 191913977 871917382 808987141 845090110 777934262 806341685 611112662 777563772 103874971 110196421 484250414 825589223 639528093 851482231 999164633 999372042 601300111 673063209 622884026 849178914 807491717 924417943 626206148 842566731 333097418 609163484 654993717 885207018 329325200 827006478 961323020 966648434 740099359 928222598 844631597 916609586 372491005 524535260 91096392 835469030 366312672 451074536 628549616 932858107 634586729 698564548 805786541 961487588 918185122 991701689 464632619 668402378 774312724 923820275 208879022 592956035 850422786 890787248 770845854 884263884 99022538 201698738 425415501 828762963 777597108 984366339 954714563 984238091 204880868 222600986 120862484 305670410 962360136 985172175 269955391 879997226 62752218 496724661 943292919 997425777 66675919 221035665 107221147 743603822 320735859 540557071 653021474 943411275 131278658 345022395 790452984 968259379 186823050 508180462 221439602 547184304 625613587 932596358 918529531 969931255 130886335 640118155 417585544 602978097 180008238 728501718 489736065 700592678 773096988 935422234 349153994 619019258 862800738 954389707 303277397 730387837 182799507 842065294 711816519 855306386 419784211 706987428 654292955 766061137 885203826 964431350 877012701 906998343 303849779 604398071 725209645 890102877 769855656 826052305 899051447 949116254 542842743 904582650 461644851 769934254 223606568 495932681 605527027 611624433 187042881 279322021 910224072 980228921 535663866 554060705 368626814 950655914 324591185 540180533 62610502 934622670 180951620 946563464 187787591 776989666 355177354 631911176 402352559 992322102 388352555 830499886 227940460 852217255 794923246 868282032 764113658 862556269 548969832 855965059 680991290 984806843 986275894 998262862 915319345 972311237 719201387 921142229 137508960 630717547 945088547 952473331 132973445 743188932 870716529 872587465 719234679 798485904 716807565 938339480 578770416 935706729 325603006 510193103 508957671 905536262 364900471 853876112 352792556 963044672 788363712 806082250 625611380 908027399 322304359 463137696 821923868 860727449 671790036 946834814 537751675 996856917 49798387 858365872 639701512 990414417 662470841 902902507 450925294 551153646 877501232 997594657 953695505 973546714 142746416 177619842 832216822 963611752 229329953 563800552 776620129 956789469 847937022 898906534 526441583 672919816 24056082 172565132 211663603 819023388 928395654 988417350 558926543 855276564 874129875 898115287 972082607 997265808 130540588 310633657 348354742 980079325 873550438 909373557 817616035 856312198 306116026 827674321 322498850 370218913 903808488 952820142 974454980 985488538 448347280 830782392 478755549 964248568 648716129 733515002 546883017 867670751 167390822 640613678 757419948 811335946 24158412 631428609 448397617 992202536 53979220 237452622 328680192 585406033 781315392 816251906 893905146 992072061 772369777 967946634 959268771 965454932 585838203 798447482 274158918 590499878 213153273 763454394 951974930 979838364 724887200 975143086 96473237 286297709 308099453 575322488 710415287 795008208 186812403 477910939 928768453 932493335 404078997 984272681 462868162 754203415 690341399 813863108 670185515 763509803 49616769 212397770 395888693 692924474 950827559 983289107 739284923 772519711 792183960 859754987 79194349 790878092 707306384 894347398 783080614 958653855 810552575 917343574 832967915 891917597 687597334 983088434 407292277 997289150 796077315 977397664 833863994 932248252 745173351 964944358 559590904 736220253 552327458 692434994 113067984 663038844 268479103 906282612 993481414 996500281 502112708 772505428 284022029 877961082 679614818 890806383 484362808 496582509 342505249 673166033 912103781 990208525 766275010 987534918 20560748 906297840 834539925 955083026 830556360 937144553 573256754 979743797 655487906 784831674 124772942 209433898 332833046 737923933 595866511 737134342 717549043 907408062 110975473 276835140 557422066 637839508 400667358 723552737 485510079 957579876 50610940 990449621 596145332 818106530 818496965 933494377 829167428 954418675 580455842 730611711 82847867 492748837 728862845 988935859 44329199 112572210 456862176 515846567 96968117 816190259 505888187 754495718 840294962 843434293 916163052 938445815 643370495 903126906 559499116 948575916 505578649 861199306 253920589 539155268 25460682 527417424 898228156 996321367 684445147 979317127 636130400 931990059 851598872 899444960 159646948 322023334 374419818 617749977 226014576 916992234 49624515 612095598 807650942 851543253 559468635 853161363 859088473 921930186 115860359 919857265 681973928 825105356 706489899 776916348 337947310 493754133 137405352 285170326 50223248 208726635 374029435 914830571 345641313 562123089 950598190 957316586 915596454 988647087 476748392 607984504 95174221 296131246 487347618 779747518 183394199 970075704 249013771 619061130 150129557 663648760 580094819 671629464 711126161 768177748 172071126 714246205 454355727 868299320 39290989 719645396 251759109 353377663 3189375 797860777 864768955 988964022 968928803 969760440 964454985 980073465 898324452 927511152 859068707 878665495 987629054 989102550 63398552 131853974 627275557 770334929 389506524 694958261 738105188 785091231 967125966 989459257 761738801 998827227 180819156 333753153 735407404 788918564 83779223 804553604 666836573 888804912 281472622 529068582 800649579 843690724 726370468 849573811 882251999 912660262 541337629 880417828 450256969 457886711 121582228 781509274 627020153 680366967 163923349 863136946 949894788 960277507 966166007 990110622 692671798 750282563 179842491 685167087 36691065 230190890 773070659 865280080 462081625 655865770 992488786 998479925 146868241 400602869 444411271 839014417 591149495 888675225 178685385 856115421 843948344 939081385 868208585 942384653 786352564 861498346 866982381 901876458 941964686 977948851 611498366 630635548 223230554 562947269 853496475 993334946 710994261 954024640 950039987 994078370 716622111 914218308 903907177 985608243 620558433 953939145 40102605 902406987 972857749 983031118 561763046 915322441 614856074 866194898 437500102 457661584 947854701 991971726 480374563 916216919 991474257 993149720 701170310 774845431 483360395 806507919 472048494 798471929 223734050 689614909 605435973 939907696 521771635 951460569 156204425 597754597 682741584 893903639 796083573 971488742 716434450 926191064 127851107 682870720 158292852 806258334 820424782 884068520 139400718 342534937 413960787 686732607 644223722 770617342 20739283 697841549 962783406 967167002 265222038 805199109 540731368 728690075 694798998 928005565 91474418 219454470 579957681 846891571 840751912 894929043 890159390 895198668 246789810 381122911 633505690 927879284 201750314 675115498 480948455 996844017 67999497 75617089 852627143 919095161 986534934 996020136 467721336 717076553 215652693 704992358 61227968 381904401 963048775 991282321 928434215 975029327 432282474 523365854 674027427 859300411 165955223 750646788 999069221 999350448 33737057 545704671 763792361 980256738 169594041 866284834 162276403 838128626 255939164 817005740 288914426 354651062 132398659 950224955 726469647 816744213 226693452 330071034 473592204 812845501 408028537 456788728 337461086 465849817 366542967 930979973 978881979 983509395 698728950 902219558 434715588 603708182 615426306 803067022 479874289 932978387 715181013 861281596 795331747 931447479 666977410 928062966 601987521 630309066 363406034 636665980 703328936 866558101 755253493 936689780 477724148 699355919 571281437 634736219 685107019 707496360 665614295 728213346 979615774 985783686 471450977 641857235 929848672 979854199 715014054 728697262 276545573 763203532 664594404 876028108 714253131 928824843 929120520 930481139 366304960 929501117 657777748 846515715 252707524 649286928 844351822 929944756 518675131 783700327 212704083 825890813 809882550 975369814 787222722 961318836 501705629 594145083 940064507 960742147 459524059 485839119 529732801 868248351 154157159 487215096 124297189 488495025 266515351 963630368 53162089 603851413 797934630 991463277 547720185 810542307 90957812 945596605 880499618 972452556 719507136 880771396 139938197 559216711 920193433 991315226 603129846 710581432 345020668 962007994 343677432 474454387 117478158 780217177 529085327 974889433 671131756 684630320 943088312 957485246 29221068 889626921 792052027 981860534 245385277 283956661 356234469 825165808 990303814 994608230 168792432 848533660 138585151 688983572 732838536 743919670 432945397 652921869 88199146 249639106 333565285 617718154 998001959 999148024 277492599 445721687 321346801 715082293 260343854 472848034 857268353 933015313 791082834 820790416 259057252 700676677 57652250 70664128 520626342 886690354 954983604 993351281 682306672 725702309 158131839 287506719 49795361 227996561 398374138 823895917 728521930 862158197 573927230 728699185 364127323 498064256 666392287 855446416 218938034 449378974 804523145 826599320 469141154 863615450 345348411 565559924 761488441 790960335 914319603 961133886 123456826 974613733 55768955 826761738 680719223 733719825 109240389 717907025 522902386 857164586 191325486 516555677 465593963 601943022 44520400 493600236 481415556 924386567 497284589 904234510 817866673 882816035 132754896 196220349 676106146 985310012 475061789 993416123 696026235 768696407 692798115 720064979 296942757 400998072 453195974 848603929 689249196 980549168 42346617 562320431 95745039 416538238 569848804 587090964 484266990 627236125 118678104 617698479 707493589 950902715 498384175 705594626 720722122 894685776 475784787 538169109 39055098 426749405 198423544 357503625 988597374 998568174 898601837 923774846 898351939 991464494 441112626 934073354 497636444 830086175 112986912 421471806 949312185 962296132 584905133 811837711 587080047 667486716 217004422 284090477 383242655 433438072 79701158 510708914 285014434 673109198 446080156 862372030 737453137 823513452 198876324 440861519 381614627 387730253 80042909 974283101 38302685 205407061 979127738 979887827 790886475 938974286 845298435 884490269 930107424 974720958 724717871 853996791 798543432 902874533 35800783 363099711 657635298 934995223 494150977 698092538 859824417 963202117 931349212 953661346 185346087 928136065 980433046 993766341 735405750 757409784 394145955 481490704 29646604 439380616 581772856 775241954 759841908 973202823 790137465 977867385 11738357 152827163 928094867 939090230 667850249 905489126 827857068 858623881 826954377 862078710 526962357 659048267 87159287 457012567 253047927 372530186 76874251 965312143 204706692 789247731 883088006 925322197 626581154 661655659 602332964 612268518 893146979 912231684 612701765 729353470 537291429 950639261 652769904 919682842 899123233 988471747 581205262 747294879 116913368 709448236 378953302 644319390 966630916 995032492 99449872 900590439 157105373 765667242 965657071 969612167 995513996 996357342 811058880 866340962 375003318 900214392 497080731 509052953 593778729 710998517 680678863 924793988 509905963 771045733 225189659 669507665 595551027 806803329 204248396 459254751 433372325 627640413 493687059 558052594 70071873 250138518 11036252 280260981 181486880 526201698 913275772 990176471 954876576 975365362 366561147 544614966 471604897 525762434 112130199 365703156 994525654 998219163 780912641 897106048 4453814 945629723 822079990 865548783 518231418 853788360 912218082 975472781 916031444 982853725 140860379 263456458 290458000 960235141 356587093 566915828 609002878 653254868 452952779 854384423 493060662 955629023 669078034 786168829 398364925 596034803 267582731 334679272 512122751 844733998 434292985 964232346 678277828 757983592 426442234 461990099 314028711 523808479 571778973 856864749 660563517 749645790 181440265 637539342 662541008 676881218 269590750 590732513 183752390 705088424 367327289 708191169 56907994 579991244 350108977 713760088 487228581 768367585 139178780 688693226 521099792 884324944 819392887 973940631 48133898 855375506 53421278 242659080 502565533 857297505 375620934 564115356 846296737 892704225 701373979 815338073 125153427 623775986 394450881 789451621 454865926 473682422 13207099 256917668 713308444 973245041 442934353 845271871 420089262 838261784 838135678 897207431 306927892 517112771 501383946 750409965 633953781 923339401 497603942 502231283 256700800 537037741 55103536 938284966 914082591 995232220 623877148 662230147 570266727 782629222 289279715 790081825 939058609 986885920 732575502 734537066 266174447 403568459 984061267 985666392 742451137 844337662 868470839 980229698 346259302 968683235 11036098 991651818 30493965 257123739 947315788 987903265 818149353 951739985 728647997 770812389 601056588 786303885 663214371 943890320 231106582 329008936 652286458 667490505 176792064 864992767 823784717 952832701 572857097 728211756 830098524 940161624 43444328 920622533 534621511 924190232 36511074 181254863 488865823 883207351 51099079 606334738 402991985 556017256 830083805 872351363 559339160 682495215 337070114 404888409 535866112 855422964 450411801 885212943 445637516 671962429 555452086 721604781 841878300 937591396 348026804 726638529 828371629 927990891 217453667 288452765 281220533 523527902 282065981 698020646 792613902 960584870 478613607 489781583 83655199 384691360 373870537 967084607 454449747 502461618 73785413 181354192 185131355 861020528 33209818 560645884 531490435 592853654 874958556 965135962 128130445 385791035 993632428 998117330 841320943 959627071 721855189 995609873 262072848 529067301 517334132 760070185 219150252 552053926 260930575 691995438 530643327 614226500 933169551 963535358 770449302 878609304 44167173 719212287 760778404 942485447 391766893 905202617 428042868 979350160 338968685 648819605 179639634 722369229 318429274 941140847 670666267 813408174 395941855 848297563 811665512 969793539 601343701 705743377 405328534 573840153 410162845 846735713 929832559 984648739 983093263 983389762 986933916 992559704 194276853 979718223 79864359 608022134 211049848 796999468 171745226 387832189 377301305 638358338 822565361 993338245 429245328 629869674 777048623 835250969 436670046 761771611 834508231 839805867 956338340 974948328 646901282 762078118 457731470 821158473 450928119 670976037 536500390 730051464 111063427 338972355 253109550 571330697 850460268 993699399 899853072 923562295 564559126 652428429 633153322 994609216 337320111 439974681 443885929 937418612 50085810 487642498 764732904 868862683 26658328 416339132 933344986 947714826 205318851 232085737 343461711 695398344 894275870 922984032 641600598 759246654 515948309 814706210 144460520 418784149 793238717 946871785 647306381 958338996 766698479 976764636 710128058 821783271 351503923 525195187 161389248 870771486 85111877 508648478 49112306 275923816 409598500 697330920 711029265 904121426 663457482 687853789 997073129 998341549 187542419 794018408 848641079 977120905 630161907 799987867 866570206 998868634 418493774 745978952 789531975 826371019 373647432 594964253 562428177 846076332 441770852 483948961 558194362 811520837 875644640 991378057 16274848 239621730 130075058 222022930 93460964 737844448 634867819 682981960 154470412 347142856 682687099 778806141 986716351 995304120 746768694 886513027 28060098 970515345 738541911 991357965 905066143 936278429 632931058 763272267 730482320 735181530 440955399 577141792 592469231 935910119 149642043 575989714 130802986 819612817 681968792 969798898 902104767 922920881 634581311 875871155 882105824 946661309 279474113 983479448 686139006 858108873 116106163 687046418 120811321 219472111 281999959 388750359 169108363 744281275 917635640 952905745 434902719 806597037 480166310 786974735 55003709 375176481 431175026 458460593 458938034 755945834 137362899 233968142 115214178 651977506 136423287 656892590 933405441 994463865 287843233 473643064 16113995 471428970 339195712 398717480 153981703 425475029 753565757 921097562 977441288 993601036 591854869 861440553 942706760 949962860 287521838 445042607 890955021 901373118 73235631 507344769 774570301 871784917 492626243 603525259 502758099 708332643 850868819 885916326 558318279 719754037 534722251 878555642 318292666 666890819 215364031 669883695 895568419 917029919 382001123 699730244 841849023 983107895 120856430 840838876 26915325 520381236 897417667 921287173 441413263 830109707 634964094 963268909 337808177 957671420 652355137 920141935 763775175 849561849 951424519 994831295 82065076 127098755 992788608 997564983 665902258 777790568 557548942 817770130 244198517 484992995 623935571 753384809 234310059 699306116 378210512 624335878 405163657 817562554 904463184 971028966 108702071 390607533 810254738 961418932 760738651 985222730 667101336 849031639 140504317 755675878 808941743 898580186 860965333 952640453 389225375 677391255 384990642 798740649 479350809 782851495 893147982 973864569 307616813 676224832 764789255 920190921 744039349 944067512 814828647 881881745 892888395 978934544 202749852 493074324 9820426 804111726 984831191 995618433 461977296 497575822 805270976 907863002 145372323 786678305 386839203 439551986 183393855 684062800 196535748 588036478 225255755 809177894 496355074 862834700 474767551 558722831 119012388 837247234 880882115 906561403 84168394 789800522 186094886 917599769 357606636 962646689 792395979 918921987 433709773 821755123 653909441 737981067 563879254 961381116 354046144 376802968 406826526 605649146 561084301 631818184 571570142 858069126 580330085 643942570 122275671 260988417 124491650 247729928 184265695 397235421 593227352 658756807 391391249 979319486 461304505 574235852 614467431 864656882 151283063 331920691 694649465 785810868 269569585 800258453 518180375 553279846 86402849 811516149 929458482 983423179 138485613 422127444 292621693 635802800 698469988 751992853 446057290 811932045 721976153 997917314 775217648 860748455 196248800 426414584 196781071 773699895 942195932 957536178 222289516 381337225 96657149 157364923 478595915 775095788 804661631 972185913 888939379 913265692 554765385 732260269 159060073 227896414 202079520 768081019 554149743 800866080 673343582 678298318 818214298 846307963 936960162 944138259 409116419 545553015 901721762 984778839 526723987 956238253 8657851 953583303 478787655 772159955 280445548 623718183 896568030 976793800 862010022 941802294 493722229 549479587 122397163 776141032 464117152 495928654 297076520 979658348 747085031 967035478 427673660 469198441 226112851 981451501 393067050 776751429 1033884 775175359 723574399 742441352 382085478 447587315 961690483 964115375 812852756 906272844 837782917 977457770 661155719 873124046 170527004 407006653 597353311 818212012 639541653 937378928 73992329 495189469 244669464 947895275 277080868 291108374 513633368 983647980 752762727 903749729 103127414 592509213 80840586 419935109 374740196 654263460 963657503 983675815 231151782 566012967 837125020 901148649 12554219 191317410 838721576 947477892 683318313 792582480 796605486 973001145 682945824 998272609 691914858 845921041 343619513 843723825 403445857 769500243 576788781 639059660 364255126 717097290 5945464 14376853 832295476 874620734 774843967 792194397 382451355 401770428 453809716 482971724 688197626 992265232 710564492 743257886 563263015 947404008 187632980 615301342 93108719 863540581 213929707 415410939 910347704 913975011 873651647 979137173 368630217 846356197 849432984 977767825 874158693 919919324 942797389 968025747 831098784 947761658 454525828 587668811 935538675 953047596 980435820 981119139 720727474 971717652 57740486 357094419 945563319 972882659 465043143 794444419 454257049 851912461 603840867 889666468 300373548 669038130 63918866 753899339 802844685 835409156 586653051 638928510 976609431 998090853 45144663 199072381 94821849 953686641 978785736 991925680 225314068 938529304 542316498 968789491 788821063 964399669 984114144 989118373 90042916 526339699 413948610 757421938 332087170 816117549 492423613 786624442 285464481 637042591 567766827 901609183 739399007 842188313 990102991 991170323 893715523 901115100 123935843 870204865 668706815 721217468 262248360 548012355 42967518 918391782 986384501 987873889 807441206 876944839 335449 773003919 725262812 838088705 408283845 519109547 266968329 791903271 27419213 42001452 944038189 957080445 137522264 698738969 839109117 910916445 29303345 998304972 86283777 924581560 877473 980649457 592952401 904422446 190009251 281581500 333940586 449032985 209810687 706302035 790761595 979902853 572728139 845192820 556501687 912109104 231542502 317885126 69213496 974035977 394206209 440662175 192699249 619870888 920550367 921660102 370256820 674838971 74487765 255431524 453983508 891987862 740623755 912906926 70275607 982654715 326347723 636035499 306267404 753927538 18551551 220629033 175644458 914811723 157850978 525094572 770096163 944458874 957957353 990666501 667664432 921784142 936195011 954468294 913800780 952422174 947004503 979367542 882712210 956930606 945378215 977094138 162407302 380093259 414684516 918976004 747935719 753382030 231392858 993993376 216698372 234509238 578133855 599124669 188477072 583861901 434615332 983118067 554190655 684761215 932731886 991466415 258171540 582136512 963857172 994066623 418352196 478190055 547860195 916802064 64374680 440839035 231427493 727863440 547755551 719641469 274411347 748374943 623067877 826812316 247855061 650437796 873253885 962570965 320231219 455958852 120373389 748132530 817581428 913947898 817185329 904481198 5588316 696839354 503999308 827157064 573674730 630677258 149207606 733255633 857730314 915275286 336321704 602774780 750394332 923278032 119760779 405391543 231683639 251708282 25471602 643618820 6390368 738190116 224481736 808195588 769854410 858447891 894789053 943787111 453810961 776847316 694820576 731126304 955788222 966234289 193519903 793746245 65413434 809513926 829769996 897150248 541340647 719977523 752299920 882329598 893188469 974973165 88629736 515965344 687864389 704747103 43554078 375592219 222066267 877617059 717703923 934142813 399002936 906883474 657682729 819681519 457050855 628895350 605236335 968588454 959586673 988672687 737928996 768187914 754361802 919654137 720295359 898506420 326409302 921898904 523253924 682929334 945045129 955317714 837945246 951583742 461178084 969034235 269867400 871075577 648366122 912768479 560297422 995805580 943859297 973282405 619274812 706974320 287720345 351828842 678396565 895997116 313187973 960977223 208218443 225691573 237584185 375756612 660970310 758855081 878911635 997854560 953654733 969124041 498072464 710315965 905560420 990646171 119143743 630991722 866557180 913718177 78799283 925441963 106991363 176410003 865683264 929702499 661204592 999167670 936542316 952003949 78527315 168500439 540378598 607360871 8732529 180521243 900363975 969096488 678465673 707226053 926685229 942255489 486272626 653076216 858132107 945805905 118900828 815280552 795678843 919648560 988845515 998090288 755759879 869625080 973973525 983680360 819140486 942917141 751918951 826332588 596603288 981686925 354495423 913811537 674709005 948815320 21802769 770238731 628105279 989468433 982228947 990935661 425772637 724354368 283097823 422220817 94209864 882386097 696413132 786600962 586580784 862532337 258982403 930664790 589234382 944193822 647119412 825442316 556758748 568666601 567197303 654820834 11853331 761990002 727123918 807774476 354134151 797832391 261773538 730778760 322013132 784234291 188101499 477652660 787176497 890925917 42106792 271580009 826658092 992112131 100903681 309578753 451776353 684800497 669165343 947241970 50663820 943597832 913076481 950252695 887824992 966817776 880570701 882781757 848518958 972109083 966034765 979994168 939707786 944390754 86038526 146465227 914870370 951006435 138848405 387906761 338158086 987360635 115707616 947469369 745277835 889046240 955649340 974434074 560882954 741434402 587054866 943127354 348511053 854078865 980964371 989013661 419254772 747394854 893832812 896718548 964755609 983065854 43165924 212000309 459247211 731764173 611853369 829533114 528581295 544097692 557086330 616688631 943106780 943137887 244630068 300135051 120598110 149312604 341166614 591952173 1517085 687993899 459262269 899589998 163878501 269207053 211297845 554252902 849269222 979542984 600039764 809384007 889879087 970784065 118977595 809919633 755880645 992553501 617580367 763678803 71015237 306835760 119728176 540189534 971800493 994981209 246885729 382757984 759450699 973152098 442097453 746868647 684568411 919626938 380058840 715958408 836679345 895868007 560039209 861460874 95512773 498123595 919872930 930096895 568513267 588967204 861898484 871230081 230266262 564091587 31117765 168510008 235648891 711029999 423309796 514597309 440348331 579753980 775064456 903011804 679228488 768906295 999049755 999060840 837689858 957848330 157892123 563581063 360926869 745662677 284804421 453617498 892607785 972177391 151091732 775976411 771488262 993807165 689321917 891693293 731524601 948649971 820667307 973023848 86157511 358984307 968648139 975539465 375592462 910399948 996358000 999371183 110418131 176712502 674675799 879842953 829555522 925265091 412697842 524352851 678899453 797815052 70384005 200419057 371307849 615348214 786202499 920443739 551189157 857708543 717386449 979060094 626712619 910243663 910551528 961741566 806613053 821884621 514198037 711905772 897750295 958235534 154035415 310142828 930908880 964032813 495019086 852154317 641278569 970380286 224474182 752974252 695081284 701896883 535289730 804012489 94032338 974927828 299319499 532792253 118700190 568498168 434908030 505930073 94516400 389395498 893709556 925633677 885971420 913475134 529852396 890500824 354123327 660894824 930262942 972762986 933069291 978535096 661778602 786860362 622769822 897546384 320582359 543761513 749010885 815339310 313089316 581065939 411936345 631910873 664919677 942309159 544123685 606971989 798113468 975131193 847547380 882133312 107377535 964680033 790709424 798568293 115411613 157574787 804623921 836172607 101175416 241457921 45503836 84275518 304442024 695862326 337511561 563408818 773534851 935153335 505411246 533173275 157857259 744095757 919732245 957797526 630474634 955084036 828249359 981967153 456587079 747046523 27160484 165895833 572894692 947879359 632943494 767122147 177581558 759505354 954571389 964019087 836877998 838112212 629396396 864136362 322004097 851629985 90902045 256780910 728138423 940550310 956033238 977294017 587962213 986462998 903400359 989107766 571727206 874972340 635073725 914494954 234398258 968627986 114410663 439574761 223366376 962566738 875628314 909748758 649836198 705935873 6316839 950647009 195945984 952011955 363646911 568228301 191236473 621049487 873106639 957381049 769801217 827945819 172429252 410184777 637502949 644014968 926304369 983502919 767457496 974042209 14413087 70178627 320327390 477191624 581713702 612866292 293370528 902706137 865418952 887866992 844519340 940984330 467087030 726968438 400772280 895306734 164288650 392496505 763818160 814492230 622285308 847284510 709568537 863013644 878865012 950470425 38678724 527877310 996639910 997271659 862580191 995159799 456158882 926729230 184572030 278928928 556395216 631245889 574971136 836244808 360904014 567149016 995253196 999001413 57123450 815513682 159326113 451974705 184093322 774676305 216268980 987187367 987753552 992978123 548939636 612282180 29373002 172295203 5706421 244589162 114362624 619685347 616634294 989383055 604422738 611469089 177901444 502336451 959809100 976199590 539740227 936934836 214955448 326863000 7648676 811496409 427768709 801605254 608173817 635101539 526319 871456055 866775521 996180682 349379703 854564945 933947737 973992725 945710191 949939980 71538742 806381044 852240731 891258762 415806117 571820319 934662682 935378331 408542165 735474035 293360581 309521402 24743741 365920255 148885906 507139491 263569091 361148126 813899602 832702505 504417488 813191947 3651089 911364697 341834278 459250879 244941500 280334941 774780602 837528898 226997168 622981432 309177956 510089923 605173350 917455354 69590767 174088417 976445866 992823801 844818494 880575153 5665307 666854048 951788 325963419 805604765 907542768 576663857 736952625 827222727 887528295 970456060 972648826 113156378 505667779 424594194 746578896 18072637 708752010 369985654 434497917 559345092 677970940 525896134 913703778 594556621 852016377 243557198 745334807 250255994 631381363 755591853 854637836 372874871 874781997 158954046 339182853 774877862 964418106 601138017 745889385 123855366 697506681 293326827 800758990 957217375 965000121 67070348 878547583 807851441 836589597 467765284 721353345 60283446 752057542 556033823 760934140 699117531 880719119 923794930 962098888 898081505 968538700 739685055 971998063 948643426 992759676 201768647 285663525 580330475 987814436 586779188 620307966 135006779 811196925 301182199 867969012 5983656 293891651 913996866 953352337 45420276 523424890 323936360 551133652 953714916 954541286 233911513 697212466 207648401 902010411 280431752 738378429 770665708 951693692 843043235 993001614 845548553 891624703 879953881 995080985 418328099 499018388 921995913 984018351 124986655 940016548 161622036 708315100 447657802 764834767 501382640 665839884 194750752 708133935 473001373 942010347 373986054 627979271 208028460 456498783 982875145 987700467 413677337 631103513 703928501 757510246 423177440 595976366 91095905 234596627 94131072 155252562 331374217 583362219 576425492 586248308 425433393 594158661 844044926 893279461 889409762 964150644 161912723 656123388 463754197 629048950 991861168 996368377 264041754 874989937 134832104 870381773 15247405 230190923 611063559 829477860 526298968 968151400 403973584 590171138 22834262 716661075 834054676 939275444 623168322 685289791 68480489 724836434 745632182 882058683 134897710 846037757 564929124 739067755 769308003 903517071 457819791 942215049 762843922 968337297 77637616 957357635 380432875 960393349 800359419 928600244 887586100 921366169 732657337 795344719 675204650 943351921 619439321 949439742 340589678 950322982 327028487 493616221 895884525 972744568 614279300 802520362 721724208 990661858 732952445 817755492 599413644 772332838 958663761 994805063 50196608 376930303 468081255 711049167 911504401 918449199 305346597 819226115 59461179 423233830 83560692 564089733 278114011 846827810 210584012 305040679 746290074 854276202 96285602 692291452 782748638 875505372 623817462 951265541 724534608 819295534 594156285 971180088 425228191 553555478 863055957 864946541 288299773 448072212 537635497 751237418 129734474 899363641 854112146 982016430 608231483 701180515 328575264 924571118 148572303 304256351 172690778 460328407 488286074 734620165 72773825 552138008 23371431 795654217 26154064 296341051 371912847 915299289 498447981 908833669 350046100 993306054 542224533 733104879 737224394 761060068 109107032 233223721 179725082 264921715 986926501 996418050 913891094 996632456 805512771 888700852 136591492 770779951 614907494 750194737 184202993 521057925 33825141 959507137 460738787 906901506 255323255 974264245 389126110 958420517 278432159 808161523 423580050 568792222 929773142 968491658 357372594 475971436 54452262 374608860 419977665 881459853 847345101 924201131 568290237 655195216 596694590 613986580 937912754 950049326 480780301 674122105 977825928 984670096 226101902 785072901 154694712 471671548 793859248 980784217 275686778 875366227 993785565 996329195 122387243 488911150 492162645 948067140 929076873 938820798 210203655 836951131 854386920 923387686 738020836 757535265 755650189 913487131 975040007 999091237 320744049 718237765 815484350 871122940 429816584 556641683 823427931 870326210 90054991 908306992 127883148 139391992 85397338 727943446 967409014 978633077 903014311 928430227 296713848 943442036 527578017 802837835 335152563 357923596 805040883 924667608 709411572 811041542 85549317 621303430 174658511 722760861 45276381 217083075 970816448 978451701 787486619 800064279 929595597 991954522 191611875 974450890 243242409 816989187 857676537 975984996 902512509 953397337 292254677 676221452 2283737 874138243 9758480 431633061 497164745 543049853 372652333 824626551 850057949 876123196 798265795 903461733 158218764 731376981 208369792 482093860 479391345 501168614 429719206 622652632 170445522 581977418 508401204 540034500 689184940 809548496 60130877 788139231 419877806 655640719 355477835 583634040 666561174 826978102 798199231 949457102 884146015 934609185 704161258 778086245 493995389 952698707 763975336 955901281 512269645 979052009 39891307 211799016 237349108 278630252 477681700 686448437 812619841 886397497 686055084 816311521 66819529 425281128 719190639 996693422 135637195 209040637 92840515 514305813 101836705 118193088 315097201 929984426 518497261 572463813 980559397 987577151 642097890 901599414 862976131 928673345 129078637 429003089 963986056 980854376 786711300 791477939 459319028 704735018 227102290 625918894 386231509 947485661 969417469 989661076 65783227 178887741 492439546 559228897 112471690 891668044 394100743 657725903 141817650 998983497 787015913 925546806 744397451 838406934 682090963 899941519 97267874 277864572 891796635 966557615 147057146 448350865 309635136 422870200 996117982 996783907 361315941 747555783 508849005 648733984 615533893 695638454 29168465 997568218 272223041 940701493 350669478 882036421 25500174 568477225 431558176 456904182 260616278 527581688 894860049 896907679 114041183 406795978 155496237 365376621 734542196 753457681 388554260 673863068 714809971 935829537 627314551 757027443 583381673 763911996 227883945 716480781 958538856 983715815 727490831 909031300 851224661 878414226 304837654 904481458 426589273 894000356 738483900 850916231 240029458 919218394 738779170 837567434 708004460 914491107 687920076 910967124 145024419 532506686 112327147 512121860 659208223 871472724 368513271 682964122 304834133 757385116 936645545 989901272 196696267 269961994 38929727 477495174 465253832 550127643 224115056 375134033 169739361 858358393 309496189 758489791 784803175 896182164 716446243 992162212 116675209 152495195 150113566 750963604 235253425 357394027 991258086 995266110 30355108 319192659 305606950 888967877 905665220 954522046 554486373 993182044 114944014 447674682 996448517 996947524 786066573 882653749 830346726 997270653 711102933 901995659 522356379 540166198 864659564 931640048 758707985 936522056 760170753 804867724 442920789 780687064 329223330 575348236 218215901 488933048 71815332 606885007 252597997 905176861 763981407 947441222 289473641 858349097 575801160 578017683 670140894 723763968 885630893 908782113 775294034 946801892 97916580 839571009 627436985 761000659 200536396 964370349 169663441 848680379 165242493 366864338 307690043 672287160 690817920 696895940 615121052 799927043 205224130 485726903 831004907 915950449 708783635 711688619 21028378 498043216 417166045 793665238 175665628 325080857 75674590 148134945 292448022 517575477 850430560 959044684 188483401 801062490 816871862 840977180 435763549 437340009 279445704 421819136 585415375 710171908 199973270 948623664 930338760 947407735 836378279 983358453 228069802 384872979 929668748 974509591 911127833 964318767 878217626 914684465 704313690 802484065 16002053 355058491 501570216 875166913 986461864 993179610 583388198 782434085 672915282 678953070 916660137 950953171 638329624 678857209 499191693 775898503 800808982 868323768 237458144 513753726 968947048 996160323 655943696 786050341 798116611 994609456 188380967 668070814 960241909 986173647 488559426 779671021 195475945 205330087 841885376 903426078 726510524 928671608 539744560 744719809 207458328 976029420 784352524 807661746 549050019 987724748 336889742 623520373 540434730 774061566 864429537 922775370 301748717 490241344 861276666 888299447 634719814 874525036 793498153 839971937 820012075 975886645 885979095 925105285 577318488 757614879 911282014 974927669 794404882 854154158 801142881 920892412 88238556 723079939 614013424 682474436 984298891 990431142 270763049 756426286 786632448 937943635 998730487 999125984 651919731 803238824 315317408 622580359 311044660 409457236 299455208 759836468 342137772 634216045 341029149 849847006 865484446 878734791 263592565 715352927 267612151 748243575 616706075 731909830 552145153 955397554 762918377 874765730 424135314 501888000 44326562 955338603 330593883 645836446 119852107 577242657 145961026 884844327 481442309 636526546 52505449 539245886 512107411 642789496 848230472 989342042 336813559 399590713 929705146 970942493 168866286 307534785 995229006 998119591 806876445 999164131 136556913 714061243 437672665 653554775 912665385 995235865 494841200 710275911 467019556 702279466 63017657 69020208 587670194 666005145 668223150 686408158 251801783 989259314 591056206 733972386 209164318 860659966 26311170 174945242 917791005 993872967 386829244 785859978 661985426 954836359 219164771 640313408 830950154 893816000 111716158 904563529 247125700 594034927 892435460 921883703 879174355 917504122 715506501 907124838 775790906 972666689 957943015 980623515 242087791 485246997 241431181 559370654 148005569 733033954 135067610 410493623 827916158 907171789 545572273 589539284 916027261 925415174 451321638 754230913 302979080 633902407 644112568 954296761 298985255 768597580 46026127 809523718 78575089 123890423 335446473 472896735 807778094 959006610 48943454 612530020 175318242 982991220 678251022 835438738 790275206 814863221 596834406 632602422 862909570 875072345 16725859 471438931 526594877 993316152 280620759 385481543 104066550 538217183 478370109 918616074 612925618 823434640 762927447 924413372 235197846 783023865 86747197 498825108 197815915 223034080 664304499 856735580 960916681 982859233 31104422 768433629 217740435 827835711 794853628 855599619 328578722 499619096 610329817 849920005 486776042 663202515 756388393 787177855 810490063 879432609 105263197 853514622 160188762 351279623 663525078 997299241 175453997 620431564 833151260 965455399 876147427 984512417 782195666 943113373 509166356 890712882 215466165 908080092 603107190 967250418 892448831 895301111 621859534 762374889 16795949 764432245 987049989 987115644 81145340 156643733 282022967 859879382 66384534 723876180 751992846 902468470 269926803 878658864 35097275 163101425 184065117 303363614 488695664 574156534 318194598 457171733 140383055 946601107 726017792 927760042 752794299 884191815 509562613 512745214 639248756 771342411 459414254 970080917 115608111 197493251 70915090 153253977 611792086 779774568 977558791 997855285 41882988 897649753 877790328 941275134 41496623 549084029 354353540 848900169 627410471 784089009 623044967 644608220 624557451 749966034 419341999 581195972 74967067 432484919 947680330 994666509 260358359 885132528 740133276 814853717 740890288 771689226 757624632 819444374 583094099 899410802 564498627 865870753 976251151 987312851 788595078 993442163 194827409 273280069 772383909 892670362 320714826 577279845 76325582 632143546 48849427 873184981 334862131 819469545 249306814 370580707 120705119 394664038 461864656 909556945 152710657 577825050 206664820 871689729 331414134 968923871 257261158 781645539 727703455 745041887 916593359 984437920 52798662 909415246 504764672 834709300 164251892 460368629 715388623 743409275 933080895 959395924 789324713 933968885 84533122 351967138 477634646 723399063 505377950 925060392 649687297 951452252 886371441 953428626 567357842 928871541 703438476 714434121 177203716 491951484 810129023 860877848 537123257 594481247 895104164 937599062 718942457 943540808 760255041 802186323 718363773 882316211 70087719 799247431 581812890 940618751 396136625 939249487 707728128 834595436 366398431 878975353 931825614 974827467 285867630 301323721 118444272 561486068 248064563 851154070 918138743 997606665 527096877 826868457 300261048 343317022 490827262 975258265 56919161 694462748 839153259 897706819 485933763 989823185 223965002 440824538 349830786 745207836 684265883 922802973 402902508 754395294 997219885 999159121 772490826 957161215 829071225 963846041 179898229 441754762 836926892 939914703 689248237 917589300 582407567 807044964 139771852 977482986 532462148 820561972 214746435 523726053 726654014 886470594 768736534 823068355 926952631 984487679 327402758 939593978 350520253 771718517 827249909 929186096 766461100 842508737 900740438 946718062 193224242 193267452 398646118 645552835 658380308 805560082 604298660 951068445 554338236 861442632 256217921 901088735 758511003 868398958 99287976 814471584 397581656 821985867 12520832 929729160 163519269 799722010 169631306 812290537 797534916 980749191 690942049 793295121 307560846 628252386 189640471 612562808 478677999 847072727 318078621 351723745 233078004 329333806 267648223 911015250 231175909 403718554 918575601 943898014 188679764 246314720 241310146 456504694 998092739 998832785 558422328 841434603 884297267 997846805 677087573 978073390 706843934 809378529 141751572 773908111 853507740 996373546 893576703 907964473 741885793 988807955 46991839 143097755 52390417 99044814 762014245 790335744 674267485 961268853 188882149 356339956 923166374 968378836 794695139 908352311 825731186 898081553 106160481 210841884 138311170 568013062 977314478 991538836 520515414 979174480 637777961 916850733 788936574 961015483 918019622 989332324 736555067 977544093 298184821 727607324 243175329 925151683 390972542 469528013 47490280 730651818 915996454 954453576 594925492 987572905 357139287 598242263 145752837 613369829 648247169 853022619 692147212 829770578 336038470 471046919 209834804 728905392 294919359 370609885 822938521 994759683 548915129 831052321 783345668 870494620 316301245 882417731 727814536 877244042 647668913 949796393 506156332 557831852 809348761 841511043 772373601 945013702 146430729 302303657 188416453 488883602 458668846 983082365 639467108 672656147 881970770 984932383 43675633 110281931 390311387 641807322 990493075 991338894 177163146 617326208 281456996 695589170 820544679 888983486 456118784 707578355 470541478 479309870 512434050 878741550 391090558 863920345 593271652 622681446 86536335 405356395 700521813 903554812 807605353 896941766 704353028 869037791 33377255 908086564 855643424 855849694 81191377 425407487 268913309 850853671 597396446 880241669 947632854 980449357 577002975 775498041 839004790 855298676 6679451 126321038 211376935 734825087 412490903 754713216 814360969 833658411 120740846 538362149 943066948 982175524 941843726 968209376 313034793 542666056 55290669 305134402 405668054 542394883 399459797 562743910 27575742 426362750 63358337 954039654 910198273 979983418 571787109 951788000 837542988 968644223 943647206 949595084 903321122 980843473 400219135 637090602 637390927 699196189 312116968 384871563 846257952 847266898 386758908 942931049 267656649 533681549 527981052 534718752 351379972 824046691 600919039 906527265 229576058 671944198 120584891 817708232 873560907 902328392 600098206 882126845 240637576 965079646 596031664 792942980 134296720 467204834 366831105 436291480 74692712 810294044 606012902 851341829 735449144 779009115 912874501 987230620 421754905 616499869 134049983 597903894 631229433 973959586 102423796 570115238 652363720 833215331 769826349 822220886 539925288 571327806 12062507 508727738 186128329 358270718 72131131 331070855 31649134 863905704 316830906 614011481 566325198 772377149 88989283 532235780 431643392 787892656 841998843 861023666 179932240 486204326 415046460 521137674 583318765 899218667 673939921 821953932 895711069 941344028 231451842 746095778 821572345 871682107 861325569 944461832 12341837 204961236 727514331 731518968 182112845 424555921 391063949 890092277 26099414 93747063 767840423 999029399 231104370 249648403 474305227 970014996 250638534 772819730 53773443 465627909 540573981 627583441 626347612 813399315 302149667 822798110 848560878 955023877 593908308 993112695 164288688 541680523 804869832 928054987 827669188 880257446 247286483 553572540 421816568 946806910 603038382 729570565 659372737 699527468 315858567 675889859 159086421 754827684 611479596 653587657 385765591 878599602 124225216 629319115 24214251 561394220 793034456 956668151 193849970 609585605 112547754 235809534 416670291 694715552 346406752 680635107 603109199 940159676 463564349 948795344 852636341 970780978 470291881 660282009 315835790 378410876 692483095 714009061 375800856 692769037 136580767 987163784 963303419 983069368 37147819 788471968 656110081 779191951 418206498 585824017 290581450 979235171 979003332 995785742 313416756 857307904 305150046 643122667 30729465 221185841 940045778 988920739 792805293 964415229 767577284 875782190 669149073 782900295 308058168 379946056 400842962 474653079 693194705 971734431 5202390 17397576 1278888 486050490 220441351 399782647 955538183 961550190 755323709 760735318 111346612 669558804 819256060 840107958 505067947 765733465 878021840 974782063 52111458 263698884 114241311 899176820 42522997 267123221 782996083 784362536 91579594 572005016 82310676 820474261 900756261 954240875 530480028 972809689 615087119 744960912 860149176 936559506 639587518 918289292 459985727 899972122 210216794 906025166 635288704 749587566 8615146 979568752 254122895 973113424 212876276 678378130 586179029 724913286 186900043 359362028 974634084 977748326 840736795 986879441 12199934 853592829 971314160 979519018 384589117 508108216 149005977 578221408 658255442 993114442 872735618 917637897 88065356 110742723 737849286 951491842 47767674 142205227 486813896 597637451 225310305 558414087 287357135 913137062 935031149 980497933 570655399 581819482 342936291 797343845 630512456 989692862 43659550 291946086 383595367 913209523 627632361 811031570 294198841 720352288 690133140 794245751 714420668 972497072 377608687 405297894 659931703 661381695 623272713 971173597 110999108 643780141 583381414 835170694 740345511 838340637 705370237 787935804 470948020 955511667 474094286 862881190 164849113 368048832 763350473 972147117 923636112 961460013 411335261 480662059 38559872 520530824 292841126 543710637 597978693 898200690 24009758 415959435 505073687 710566546 190310354 810645104 658494782 901554722 947864570 959752742 58574278 120493255 543374450 827302815 436812381 681501813 753154769 998078001 940731261 961599986 682418810 728321759 124214744 812080495 48834012 578412101 400646869 710191369 645145776 880150738 179685889 786357729 268341771 747545443 627726707 671208331 13823919 960683721 390256123 950942244 127778587 487107805 185842812 367935414 3154807 53685334 777904074 944562626 429561191 449188079 948840826 966941305 803803101 970912019 398570786 984787208 60590376 668038258 403283784 919886334 338037908 997416184 341086789 414389110 232876700 404523407 814303269 932942167 589197708 710723157 859950084 864431725 721396862 799559998 247372750 670264594 19320985 726234579 371948638 943259113 918878504 992959299 810246917 972390074 322909851 873317545 970245977 994107668 603229074 967364208 792359066 980460409 541810085 875393032 701900391 980999818 817027788 915763504 420764979 528310563 126017876 529381054 839991474 982463572 467138944 537804731 213758349 712207231 593074836 675071087 948289435 967172441 514077224 747325205 522944132 773617242 115591086 779879448 273578302 553702332 669743530 758040894 161966133 394306035 835314235 852075415 859048078 927898164 609540409 900178187 919503090 952190766 555104621 683321789 690308317 815406830 114664582 504651196 79208186 912380443 257608164 934490322 235042831 387534990 924480357 928801608 695084343 764244279 914171966 917946407 584478914 644450419 594740452 715210223 252276404 913200307 439778987 637786379 132520730 333095499 167992064 170048147 332562369 944749650 628388245 979248038 849063780 918841596 474775637 735203993 602483031 768941024 384115110 731858359 484727941 497979106 507350815 876186321 262529343 927355044 33005544 463047336 94036395 982013309 14141293 81996480 586807774 958202455 336561769 342268536 775186227 947659604 165268675 958708447 918202260 921309955 380884429 791970837 344326277 433964987 945188035 993090304 643440313 989297649 617758393 634071312 345839083 651008189 555012678 566917422 284320982 850998720 128867491 566643704 783281277 869655063 190025930 483300066 412607871 689604147 432291685 666548268 459454900 674799805 746343888 975283824 414020723 736773255 563610091 731916673 976221569 997956248 104107971 695446685 623246518 849802316 115405054 914518250 465292720 642408861 739884418 980513998 667998265 892802013 995255116 998854324 858489571 922716971 850432597 931208468 421239335 794501557 406650938 461032073 32703749 270536331 131838206 661777536 91714410 205703274 116751363 816049318 674687660 717889631 962927900 997632319 967967942 994129895 658751077 852623413 78175683 459173626 783730004 858643203 262067433 916631958 157133686 822241413 123886384 668850964 835132471 904465800 883431757 955489579 668168681 712389815 274591261 973598267 333370128 415066701 830802462 904655849 588772504 802898384 313304726 363401133 614319442 942604677 93100353 156633735 572927788 618880745 763381855 986882388 601674320 777328870 113132980 633570254 79636550 538313140 830958565 946331384 837350884 939375640 612431911 915683695 396055569 578284491 460716368 698442687 602539841 691376883 889518105 932662156 617050362 816740803 151154845 727169715 989224859 990595049 27908045 621708725 34354543 759533323 4675658 112915241 862865538 866200023 819258611 850931975 913758444 938124129 663809521 763993656 890200028 916156661 505629303 629423605 412783865 748577262 840046043 888129024 194953232 340106743 503074088 983479552 468136484 560662802 226458582 831382793 604118764 718640509 838725370 921041470 216594944 960608670 353544133 854531335 175050654 231748111 95019085 167841242 483145250 504890004 627149872 655327075 862027428 876573251 452445528 974335260 3223600 623011406 385712147 659979256 926503568 985495289 39423026 234104760 517063728 813471820 306357217 346915953 948194671 993091541 869480063 936142524 292128176 542834771 910103806 948596724 938481574 976396443 502281360 595354254 614898164 910978104 321096046 381628853 119024239 413813727 573940419 978505948 111586109 831812888 706261864 955216989 768127246 830157932 141477589 379961910 650183953 931470315 309453811 979978350 267871201 970312530 413274988 564122826 785543603 863310281 105463912 971739042 675110739 810835797 815268942 837932259 515692411 712721949 794842240 995663290 218533501 290795471 510975086 928034406 153018663 410010642 839953591 990724854 218790051 234104981 318378923 891177460 827922006 967337657 130818895 738102718 879856528 983573421 319095718 880911617 736910214 879282013 247287366 657315893 165699323 609617077 247041832 435673062 525941153 623031895 294001902 581252057 438417869 699159384 816855614 856158090 859297841 885864257 611435721 676395682 740347050 772435187 179003204 932713860 62062355 119579893 495980739 943721011 581588893 908460624 887221148 937962813 368393961 976853785 281581144 797027453 977798737 996198397 963688548 993872647 768145299 775459629 548641423 901817339 61182848 555382375 205878361 386189770 554683580 846091776 800830775 969782033 398634827 870522163 70976018 606114563 655283806 826516324 684396173 826989794 296362214 931091721 90122029 485732634 330726159 806038696 271505108 835138615 788998674 961590675 232447621 988150484 203357922 741964147 404406839 935092424 365178204 495820287 67371130 211537599 356843745 904058672 56508526 431093656 682337809 756133136 362550032 941985280 564607596 590565898 559074513 987580596 743517357 961890896 574725310 975240486 276285007 985745936 998263784 998531012 475038089 513740100 639157945 756156420 718187059 752023997 289833544 333757294 4789397 281594406 708391598 719650565 299145125 639186124 123805725 201978362 671136328 723803798 891491168 924442065 996261377 999196487 297444562 428530995 68744650 212096320 963894473 990263166 327083123 574823849 770888083 930197394 11225703 326255680 790474148 839308410 337311389 675370213 300747329 990879682 352819593 834821573 756383372 841346184 697201478 892576571 669261038 699342537 367062932 621127691 36103490 710277646 731923863 866183768 871813635 984308151 904530313 988328406 928371768 940656384 42609581 570050882 684128813 870525606 380223222 718452000 194618959 598069366 640887304 779986565 806675837 874631339 78704286 674813513 379118277 874904498 392170573 829803697 397538347 529010637 378646913 476280917 437366502 766889939 482362418 804061854 937415386 953450690 392470750 663786311 314920449 532266904 550919024 632988417 204691634 449095197 207582416 456728414 37555946 81920395 643906272 742523305 418838966 601209008 794690867 946961418 792785689 925141118 505854232 637324499 588331134 886098626 340986467 579052147 12569909 204114189 660981388 708119325 325808113 460079664 875920630 920104563 525476836 688137880 105271496 412477642 855142754 983480578 78282325 171941528 286051767 833531449 230966138 594800766 109130596 556662509 214720223 832332789 427120416 978853339 530817671 970050245 1759378 442192724 231150556 834379722 503383107 853757500 898881898 982889218 238593044 522690268 909103081 932456833 360129812 522247266 674017963 676466883 105636168 646618853 265682454 359724091 975877297 980567239 990305974 996044294 135296073 949664920 33875574 747904036 378373461 578958028 396939708 694443990 720327221 907092936 599435466 745132373 739038598 866669308 30997233 686652416 872989780 964715022 639907925 778502145 467504717 608592389 352426813 571647263 732821675 958978110 86319406 676183487 466207831 920984911 875884412 932304528 103020558 887305430 234980865 729638279 363119320 391753472 496866149 968239196 262577484 864392390 272907280 514386525 294492267 345250037 461119669 991686009 996603746 999263371 903678651 944074032 217353990 392070070 708027910 756018587 279889248 811336105 590915720 734887878 626625549 706627649 634067006 899764525 858588582 987509395 106337554 496870615 153801616 404366919 431463350 665466117 824361686 924919508 314915634 395530499 488290731 939824172 978984740 986604831 452883709 737690228 227895656 514807950 513957558 884320558 915028570 954384277 394263629 598581857 133414288 506707131 72446862 414521626 776092156 909816910 521630257 721501313 133268605 166729734 508181599 719003275 862959923 962669804 31962409 600237065 463273538 587334326 644040696 840621641 822712566 970811628 47502587 228372174 245397571 360757808 339740417 963769148 476264263 483468382 557607181 816412249 799925320 822687615 315941025 446370639 828601065 965866185 63551336 812549025 676204939 951782336 3321056 132702168 936859943 950796014 918278055 930680603 873206703 945886216 198789630 286964045 742086528 811768771 147916401 699758164 448950481 565530759 422796334 436315922 554012635 624738458 72602676 189872907 81821675 608148507 273173563 892332300 487554905 646382365 178220421 918605335 963429997 994506670 741154489 809600053 102248389 391787482 272706636 675040101 809666685 861101097 561306787 935298759 427782376 791418971 827780922 920347236 661430845 998809869 117459299 672379150 311883733 353506480 217361124 894361377 130637779 242379412 776394907 831540854 269862068 571800344 560955173 608028322 874076573 974576208 982845980 990331925 735183239 833095822 821292234 957890285 14906834 418982347 288646664 446648935 565508154 728065645 490969525 511366556 414873408 725433314 377983249 593289081 135043535 453765216 692905647 742765313 61109506 242368836 904687030 955748052 777431378 955081440 66298357 564911338 467143800 789809553 764724324 811057362 12840042 321223131 409593476 554427401 66704374 871882518 483412189 747547542 553182093 758104796 656831157 780924514 260099714 836229572 751775753 786403521 578999423 818894693 611543088 970845701 163285895 330432339 56629119 919010767 903717378 916182637 953939686 990699626 311514892 372049503 963933217 996062505 690061017 976056947 462268731 703325193 831191586 964246097 799371071 847148177 18289296 407918600 778964712 846865929 579545596 661264477 413539775 753949042 754956090 958292921 785044890 791878119 848448903 879962764 808786781 929635587 488910283 868833680 999075305 999279852 705060728 915416990 652678082 827649530 778511731 803226270 511174904 751705204 896249549 940763294 79655154 846665862 484385684 595129217 905486648 980949095 19557429 174539086 505389525 864802190 160010022 477194081 612704866 919145480 215303321 715616502 666741172 897219456 538405026 833177762 892781709 936840893 161824224 660207589 57400117 617725659 429174031 538207306 900060489 939303128 132965901 777261819 866487036 875829378 822558925 891510541 626359810 970833719 353951485 611662844 895692894 936053688 920957150 937613631 367139297 594038117 49711506 557986223 686518287 952734764 782324211 811516730 831298324 950392987 165529209 403021994 617319860 891168549 28495314 894129139 985613598 992834808 940543281 975598563 69111418 611800642 998005161 998900010 403846075 522611995 509316711 982396170 591876941 898822367 987748480 991057486 220765368 930388031 54124293 150911080 681918471 950833272 157283504 975187000 804089700 998230115 116535244 144984923 175921558 522533087 229637005 842091113 259181191 909977588 340621584 598622543 81942355 406375295 65350363 997357343 43212892 856989782 855177310 956020387 444295000 907693966 316528901 642069553 247948019 472755212 808782661 988210035 342693012 622007011 20563902 615907964 645167379 848108521 357253238 754317392 132711404 447956936 661801915 916637522 963223881 966386805 54482905 569386652 300027281 610159111 754814963 798652630 205630879 351583519 74181973 840366131 979307838 988348497 559791212 781910518 466804957 924986093 631672022 856004917 918563452 935258636 783573529 958786749 909744613 925036667 874181113 929214221 762950325 776152127 255942511 268340356 23233405 43848384 42175499 191002110 176615094 219702193 830062262 859697852 989023121 993661426 76396357 720740449 203606651 357026912 772011461 990013646 987191287 990067010 905896715 942214307 487027667 607622496 865251490 868269454 896179545 982739926 456832512 488572291 471784066 591357438 431139466 866168960 536450823 857961801 940579796 994830770 440444660 495061932 46252654 718225954 959585007 998311417 289274260 622895026 729367541 776398222 267642274 694152320 686048029 775192691 584522472 895160932 225142087 530775761 583318052 736367195 673354016 719558806 581820373 948139622 764709679 978472539 788237683 924468363 997311808 999353115 760451697 912889943 374705591 839765901 868793896 974762184 861860049 901545595 349691397 960169465 86228796 362625740 126779333 437125500 419846448 915155437 119153671 579469593 680510359 911935357 885571783 968765880 301434358 724705933 679831799 718513347 907358565 947119605 756079638 852420309 276749282 768575673 133694701 447197890 533908214 852160266 843723610 893869353 920055759 947232775 304421292 309683996 703981046 974450377 647968790 886744097 422312682 602625726 573271422 756725357 823379880 938735617 105524591 435440036 491932691 956051001 378046011 620376448 18647459 721039523 336812069 359847709 51418155 529761792 185944815 528826602 833493479 901901412 424510030 429905549 305925596 595451421 103631192 532946541 834004671 957139446 249837765 460523015 365102003 718995790 347513977 468097483 27699717 697620398 696535484 783730974 560818693 851625647 397165165 667781739 92506035 454660747 642312525 979527160 520296587 874909035 997136215 999123077 797585386 838520975 410009766 428422334 134320886 492272644 409858166 860748043 527044269 738082690 253156270 264193298 658979009 679585319 444636598 613178395 708525129 993805833 927126491 997818499 138673152 460166963 883579372 946317283 986649389 986649820 663170557 972669140 474350681 921936959 366461423 467816227 223280380 765979048 422266260 438331788 935125988 965089474 806975774 845324575 581000542 717077292 573067465 727849428 563757803 677310517 274478555 836856032 698516617 724907740 604341156 770613941 32289822 856371206 991147261 992164685 698763788 996503091 875039715 938796913 70579988 405268992 444562001 684665799 89243666 971594946 611128700 913993900 917242366 959046628 518827547 671956186 621913327 990773982 676288579 811263771 867579991 937084425 85348382 287206388 868663579 900435014 39204669 221331864 315905688 743494488 713722060 742003043 501946340 859493505 532629716 766656766 484960611 694051397 731067775 889546322 172808879 683907698 441701589 607669034 634786055 763472943 107251569 650870578 725628704 874349917 607895152 664850478 810785327 886733665 21323477 384972448 121557970 684184892 155378140 616815329 955899676 971410349 519925071 598855680 11124778 679879846 867600897 994373946 979368898 986463622 478456670 489093854 700772809 766467305 920110636 993432040 619952895 782894389 952256070 969270172 188111143 976453037 93415587 968528486 235891921 392364014 214862299 844565256 463005511 510140315 664142620 882968779 323241438 395669002 530535158 992971139 282903730 785606715 310555156 459301271 613025941 809421032 20683760 755738904 281760694 868683363 195468695 605957888 64871371 838643388 251784185 772958507 646235394 770573127 252622524 799176994 364071396 464353820 233050436 823037358 184335486 666633528 643152079 698148016 894038529 945475026 611645253 836215314 857292871 978577785 523480068 628388126 702550042 904066011 278552975 536173085 250462717 594444942 330992231 676724864 428804293 521528194 794953152 975121773 832854130 981655917 106103827 417686066 957777498 981355459 413042011 456490799 850095008 885613034 220621451 330202654 260196826 651000410 539370179 686536069 487932292 510664401 48382937 326235073 237551624 249382891 338537128 405886698 190845318 900620497 965134277 976793620 80864538 200049953 692370554 825825386 221126492 728130386 113948474 756262436 315724000 340983129 146531978 533939800 51649666 194918348 98440038 215982098 207562082 927367656 425006735 830997061 490018133 523164401 898133872 967056337 284395896 608472894 509453002 875051513 200605118 473005887 118843940 853843941 3956542 634685702 639269613 973632480 119997139 696446701 639819784 942017335 530430470 816735526 718570002 777248106 532276053 668931228 963839903 987931018 543590790 728254994 826170990 883491855 168295164 644362068 143710468 910838286 506177167 877094879 234997376 484465094 478980055 650073679 346140687 999279837 958615451 988422092 545821144 759575085 402783280 891498320 608088304 826505728 911968134 922146710 413297327 428527235 864466212 881205959 721984818 828323456 59774722 926624148 239197838 560509257 617396363 768907679 309899708 886191420 644798739 978449311 660410767 871132733 518539245 966099375 982391086 993453064 790511753 805205995 318287982 846371424 254872299 874891693 914776025 964820326 871620496 985044978 658261998 968682191 710029295 837210931 338333554 578815274 77693683 818599031 54872410 307254476 429162609 715027049 579425537 909430209 695288501 726969054 560589389 592701908 319025255 471427048 749058566 751273909 398974498 945863436 363851321 656604238 295068538 432311074 802169534 898650014 677419856 907288212 557660486 562443947 813746172 886845542 664870059 805633290 817128342 892208661 718789169 872790182 595033434 910294631 355726387 902732070 681065465 960864998 177926664 678620993 550285106 653676716 468284168 983649269 704940071 773749277 63617197 825403925 876633670 883805337 697643982 968465923 59568600 589922832 595308628 800102880 978034371 993902967 805206963 869892905 479346582 678277919 354933507 914575840 970210127 982194796 922912929 958298250 120940420 159573801 40293906 164794101 381449009 965015371 125932975 571425617 659424558 759482972 651691071 926657375 684478968 903877216 387110507 504885405 286487767 405143700 565332875 758827463 310020397 667517020 34422516 730862854 285592901 656699966 783839290 842156559 821848640 887633501 843112494 934832056 960040929 996800936 605108058 809448510 725626050 795567668 306872233 691780079 82183996 815251563 110976835 714150830 406030075 507388301 40209840 929503856 748663453 815022509 770315163 974468410 61777402 925648506 113927346 766579860 805521811 902220349 716456937 839392870 815163137 874906651 860271477 980820462 658115904 805567541 826586394 956375943 408637267 939120598 737040941 905215607 303354291 575231813 52909712 990195284 812295458 941853848 229015592 551611559 602577699 867973382 595421299 649041097 521264227 627485328 658063582 907508423 340761822 735548055 927618760 971183050 267041294 356227177 652149819 673425227 535908190 848483363 156122471 506845011 833749450 878744473 752790334 865355487 344726996 445810046 902809035 932328850 969751623 982533291 225179462 875480979 338114826 458380101 837529877 963415576 428948299 665277623 589227544 952917386 703159163 887421546 170769861 400712127 705152216 826040675 689904508 757631719 142153578 594529727 111230041 531467685 666852126 963445344 316207545 352272622 579824695 920746386 151531908 248061180 421547126 829008874 665541127 911285666 572717069 832506067 672763492 928697981 509754023 522644385 361858217 837028158 139516317 931282753 637584208 942523046 162867594 685571489 945674878 949488795 398869877 845259942 675022325 893949571 108391474 686832592 731884133 916778401 167671032 234538620 939014457 964280052 153848143 531892077 751471339 944004761 894166399 895428100 635508046 972231326 524398154 608591093 906773649 941819705 317575867 878334703 242982421 766439100 616092436 732600578 587079478 949105946 115771477 547191611 803988302 877223478 282429731 942929646 199169399 554476892 62012677 678460190 214218526 860096529 82642183 920772509 866325914 945675411 695203564 818215740 878735635 880640611 654133043 659107765 120955703 882619982 609417250 918941792 635337369 993396101 965760696 966182803 62812042 984951015 714697662 849113893 492115189 679358506 19846399 754507015 305129988 848745065 41910128 547222301 767053445 948851283 55568233 384861492 569430314 680714317 625907752 942091365 896159878 946836020 121770282 746711081 513199541 605122570 932514028 994612713 18949855 895485433 429299960 432891210 471194023 934100073 872256616 991301146 841294816 920789905 228203075 635012422 856940529 985764216 712957060 926719241 114235389 643508670 586115848 722439193 487244116 637746323 363721262 804091907 783981604 809880155 962126297 969068179 603847886 797765407 465247604 981538288 337534072 457467265 840248840 880074171 772135400 793360038 775034001 894453096 879934232 998600876 924799494 964219306 188342272 330446441 163332102 877825210 402138556 666663476 991102172 996034578 68289886 444677000 878625471 952401487 13884987 538812194 968582602 969663715 346661282 528401101 454747347 827118370 692563651 931711567 878042282 941831321 234499101 523902863 777736752 825619534 459670206 804448680 43905871 957475495 221516372 468987742 406178236 463599742 470716596 678713775 614831713 662844208 580253180 730102674 170732716 385874747 538196582 586108727 617895165 994576680 772019948 849156031 608640632 823213758 932804843 979473346 329849035 582109180 375895539 438875416 376548922 990486119 616296207 794007640 572442920 880450095 377531040 808379867 649587446 878177031 368807623 716793739 264443811 616481197 575929321 730876707 958409204 963473468 740623489 917398820 496843385 727304100 441830848 939376409 688846513 730405593 70255808 191392632 10751712 124359189 280788112 414159759 20460609 745457412 93650429 664504001 380624184 953403311 878853992 958433574 976113090 985268126 294861814 905169736 284983227 742689686 602417311 858659261 813262553 945209641 849452501 963336877 567091501 606134194 80284705 989005689 181906534 787324439 537072812 839731560 307407540 702084388 82576352 98902497 184289906 779484756 335572191 919982839 673400888 891326431 509263132 803310662 31217183 288307842 997967055 998004547 3162835 121878094 631154016 966313738 358958593 738827747 197099997 636539517 329379840 870774284 280590808 936683440 984803410 997465328 890015199 962390163 569897277 648951802 970593109 976454293 108822271 678757792 22682132 494452079 860455721 997121689 81901563 593712860 913934045 926772763 183101330 554139460 814572533 914604152 230553673 985566947 343536358 721928781 294114827 622098985 386763574 934802796 573024332 973859180 496423553 814205975 303324098 902196562 843751992 906389061 103232339 664776352 273634894 629666736 766317929 882560997 943743778 947550965 1156634 53850572 368490533 977490102 368038577 693015566 722697225 877406775 890244684 896029653 718518310 791924012 464496608 961082198 791866926 953062132 513480322 997792876 130967923 712517502 505511946 515679199 733611721 747480506 486029939 554489576 688856944 696697202 296684312 880776905 362267686 625547688 148128015 315809534 168907010 466311558 147369580 705131744 490787952 967664995 97079904 351739211 655490358 739273047 43397396 137393643 912722637 972561652 198549977 440724541 44189262 258488527 972371683 996868642 197964630 286152660 466466975 961467676 889525545 917588665 826832325 864148294 669925330 881545441 425871640 789678067 427527603 766459874 409823592 973168309 105734164 143584727 323501050 899577834 432787531 744296929 897904806 907872903 964022564 998288929 131182429 571328583 646500085 959190647 49407929 586186806 146956996 238880347 512119974 633976762 961693788 998089775 853884177 948230157 955573639 967128159 108504016 693913387 742618338 957439015 407782672 688628564 239414697 263920006 819708585 842036316 94413829 910045310 331606563 566237910 832403850 947416589 394542268 444104417 751651205 757617414 277258486 516135577 400598663 777637439 777326856 924499226 126728201 938975615 219546941 317189973 195039132 661606468 658556827 950170212 341850939 596614157 38421827 441231827 292605983 967332419 513845454 824159668 356156403 821120590 925013370 931022758 310388014 486030672 438063295 909944544 17110445 906251171 711710379 872055679 227748099 237463709 949296373 988144954 815439210 889475049 394295900 422476937 570177693 704123064 460296269 762597876 731387590 754333221 627897134 737895175 501696401 573219458 41925062 687557746 104734976 667335220 620756284 731083170 577085585 804759726 605917769 885243814 917458277 947480407 393875967 764112162 66478699 142144588 438250195 722394273 569790730 667461097 520179216 930657883 978925106 982076619 943799304 970275607 251764117 953635977 16286512 198344086 210804816 712838518 818789176 836917510 133787648 398782675 727272886 913734106 4317444 245270332 924137793 982825297 615558269 669111169 617369017 813531662 480570433 496312054 675171443 783116714 723164186 815020632 400518077 649409292 297600258 750979073 867617859 919720686 592166405 709001490 856135940 868787716 671515521 822872087 570811786 761021367 357710751 484251764 793629264 950404208 296775907 301019377 184902607 286539728 770268202 997023657 206239628 772954240 558000681 680717396 16055510 498998249 385504373 494560301 873983887 984774567 794395157 907672546 913945658 966743964 805109670 994982088 859358128 960403081 443168047 944617730 783867083 865815732 1058782 914335197 41420812 496475665 509986257 779765671 150238645 454344995 350066272 594601946 944554670 998569362 444926143 680844294 152695890 881066339 436011692 890686885 448597745 566945674 840938236 964568592 121456021 142673368 325420141 514319279 285554510 688124502 477860689 503709422 252423153 434837119 81185216 903133469 477612576 889682847 110109987 210065601 359713987 669714866 347162639 418526833 292495797 952418508 866000309 921387354 381902525 447560828 968133403 988005646 513785594 803048120 423770038 525165550 410921932 864524933 739553274 909300605 470713303 890418887 474673893 825755293 953203779 960135412 469375542 897049653 289013900 696069771 427017814 597056863 259723064 407165191 667252798 937962553 490083661 731899003 348137378 871456073 958795462 974749626 903938093 959011938 79622205 418690827 1373068 94994577 317298860 946929225 480060316 854436391 680305881 744634815 645431285 795151295 319150860 342667539 852992785 868580425 945950350 952116537 759567531 790173039 623488020 670625617 886997056 991780609 141280360 951910828 524787759 704587727 339996164 699547503 973510294 994409996 166435702 924205104 686654845 749145730 963261406 994852413 284166849 529325116 894090657 933022984 901708523 947533434 121157033 236014659 731001570 776096198 584605322 640254926 523247357 887572171 382614545 483845578 673329196 797216598 250337620 315638314 42454371 629487533 399140551 423197322 24490665 214154012 590247509 806511124 802127819 817024293 44336897 272431066 950735206 971793850 100546146 315342662 177989336 377926603 27996014 37920963 83336770 448793416 779888691 857454033 660782902 986663454 350515314 910212297 462077703 708481112 508263942 659136465 215301632 449183375 835435765 931136880 662718172 774493248 840999700 879399214 35248991 334125981 770712475 873341491 501239925 592025334 505119777 775373972 121970421 875132013 884186712 988542920 987804316 995841400 379665387 821897381 142970771 246126451 908514613 974308061 66283525 319159459 286741153 907106774 822277894 824354186 28085629 577062221 433195962 462735671 187887907 483570697 233908638 859585261 859087693 907076085 701619493 883791318 41863349 300947603 173252534 243772771 732834166 758295814 759422343 826550391 239306352 882373217 725314303 857628907 397839045 558914952 575950969 829606866 84194090 94662682 801496574 826639692 374917603 595424536 839887943 857143042 344056059 753102447 147950625 458660860 120773445 409101355 937091060 979306714 338947805 493955959 646323993 922201007 720941146 847532093 945137977 951421279 765000917 856246303 524113115 807533584 364680663 435114048 7021976 378353307 178180010 266590517 253600089 688256110 643869710 873398262 247498461 634211162 97399291 591702066 425336283 472725586 878574902 936565753 813013729 850274194 960961435 963100729 801387553 949901011 953431799 966054788 252700906 661196167 385559514 714281166 645249291 867510686 919001721 961880533 987297474 989070321 669484271 952256489 810759321 941729005 985252762 995292932 680173593 888134283 581694130 599350551 347287823 407330852 33369470 210129207 117620687 253945400 938567940 952643071 624401260 982789211 103152042 687148119 115205579 790172707 296515971 780290985 589361368 792544451 614982735 962466565 793681094 895478813 586653063 862345664 533841529 650182965 392023939 871507150 165906106 987411958 807253292 881738291 901870568 970446606 330479815 852044982 417782814 984772372 732312037 890422196 500585970 823199959 859193103 889663824 651962275 692440105 520907047 659872138 710312663 940695895 823473123 904941671 969815249 974754086 679104796 764747665 974557026 991530880 316089941 521044866 106596308 342819633 957847511 966837148 592438524 819597149 874621780 930288367 223129231 939754772 94952417 714009411 711554726 870380254 948334466 966489650 728766201 787565090 248040540 506404595 89036043 710111748 48701041 928976186 139709583 406911881 298720514 604944053 898513286 914409800 739661398 823514037 444176120 806333085 722126227 914501957 128748518 536542862 415648434 934805196 776265882 809572639 444770300 830994696 342076977 460642348 800062486 880822671 539982943 541183746 16719544 114170910 766899645 984315186 155084221 502737474 422217720 757988412 769202490 862283801 753060513 891663187 21757786 361591123 833938835 961217843 672587820 953158091 165225815 483452013 549470761 685910102 36147534 748798996 679553865 729998194 290162198 305425554 724374850 737832592 754200530 965384360 178599939 829176307 33973364 291936240 512048169 559648827 591839111 750888774 709608952 923249516 419355389 967665097 609443501 869400625 698906249 809292373 526320038 721629550 940950732 952294627 37430130 507325302 203554842 676279377 324769038 329689479 648518031 700895829 908380636 998137553 885000520 954006300 659589697 777756716 614250021 809366875 936028124 987747529 567612991 614629730 538368948 707336800 264196716 598977340 398016781 705648935 418868608 464444803 297231243 371201897 908127801 916906462 435558257 643155213 788487458 908403381 571925428 689765420 159469672 939905892 817003753 987276941 413112896 605416543 452549677 760660857 6362106 147449048 54979268 822468936 834798435 937457205 433331063 558891260 21099768 726605486 260302564 730142897 166043955 906922899 444680147 487867608 339099136 416213765 852496033 952914946 213940888 397016555 575505755 964949752 948234046 967413949 628881400 698877591 687914397 775134094 822088786 997275641 401691069 487469681 163877115 732933750 219690234 455276085 827041244 994557601 377213808 838457089 121458295 239537987 535059924 841462469 853230817 882520411 856194219 886736496 303358403 984524239 677455626 854764031 546192193 635798832 634899695 946961736 147726909 405130287 326062542 330147944 70135616 970845540 146070135 758726096 93884648 300048537 441340450 814214383 182972395 866783002 609236047 957239690 900442063 990219671 627351660 919736054 269421835 502732898 580015533 886469508 563209566 902481481 106279434 275305493 309489931 412033805 564013098 622172716 631648924 838280870 541242998 732816472 895411833 935924965 826324408 841455066 550867362 730078976 181258499 217204145 210552583 936232928 568219740 944285206 742571584 852015769 519551682 687969264 654656494 693612636 285951300 614141068 204330397 874606530 842544158 948584800 283427416 842694352 992798350 997632431 288834842 813199938 880231804 892842555 543444686 673848830 22704930 553979184 13737077 357002282 41704759 945186966 338690700 384640949 427691631 770481197 509989451 947533356 750778180 806403798 330937673 795893436 639914180 710199168 354889417 867464812 443464408 988799147 464125377 969198116 111361402 475584448 594725795 779712211 68615619 574969564 130762746 845207527 340560863 450941991 335288317 716256675 502730177 939423931 689479882 949359542 904277057 983587071 204060494 296492372 172934814 505131825 246536953 476041227 613958399 690618921 897609056 923328677 724478971 774991076 442819058 933451961 679968352 789004681 280366465 857285697 613329721 935572264 246570721 640239664 405473629 785992804 877254236 881277003 985145803 985441742 633686298 922448866 86370502 476437608 975991677 982566782 992001033 992966784 933064781 962328149 344489430 643882414 164548529 981663541 917878979 955755660 199692479 202073106 636997837 875901647 603680065 908825137 685207577 859265112 327354127 581919589 60580658 597762226 635877142 674523175 950611518 976518201 217908126 948840631 809032841 880536633 665323770 704829477 730449705 787666822 353581896 759921658 917052409 961409827 804897877 905926342 55107047 691178756 263106477 418604583 83082555 904681570 886960382 906926926 129478478 606014728 537972574 888731841 974562673 981684067 257211767 519230357 759520143 984113017 812812651 845573227 378027100 740720350 908636842 941342385 873685097 910830005 85252210 650234326 920016891 972189455 128283417 777781216 430392819 702923166 86243901 611694501 999352650 999385060 807504135 812756527 27517360 413446985 572466573 858475124 163861583 497726474 951054654 969460403 718145292 955203045 905357915 917887483 12144131 12875530 194693244 702702193 249428052 824517747 302230677 945955763 85970799 740527540 166787732 725880884 968410695 970136801 95138297 278595253 882469950 984100764 402642563 618504983 876025113 990748678 584304004 695797818 767179699 834535837 998538320 999236634 401148827 986434168 824356993 990083969 519967354 988662380 96649652 566890313 116777857 497554961 298014953 920590160 44146984 192748941 296296924 311154601 153860338 185764008 900234621 998396088 468052864 471185317 831255586 950779755 902694681 964624539 214813351 662434706 933091716 942162184 782045 184220372 708086522 954426403 395579976 608547974 702492552 851251968 151616496 587347897 259773838 618525491 295735475 938923325 146927688 963440723 644332771 911950880 621370459 780305951 166880827 462820536 638035398 817575271 608060893 898843822 991904490 997419689 363464550 757462268 292500197 625168944 672696465 866347887 197308811 340964979 531393185 733133616 259345954 870730468 837053519 919803877 58956262 199817467 214730489 796703099 275466075 689349578 90513101 229808645 818436444 973401535 442756964 786585219 717230221 791237852 586243527 836574280 374735367 857176415 732568158 930137503 519545733 792244088 8929658 977240907 716177591 951685815 124300525 828009146 765672713 813953412 491230556 581924054 476777590 584896056 938952049 968658326 416959419 849250373 94434340 279179728 325012328 561771394 287290830 678311608 905909421 974951535 541999008 618715951 5092974 112169625 440913863 690421096 729027199 777264830 61061243 780570977 342156390 905481473 244882422 813469272 600076726 761899161 517674656 599703921 827020743 850931300 573236823 647931936 591507016 646657996 658943479 736861466 394475199 506090616 832678562 872923667 733061194 979914582 595084196 757495903 855592453 874469667 180379710 891674896 596348672 653902353 923218716 938276886 40148404 84996218 22222183 667346326 475968407 937943567 71933020 92053220 333092795 336492454 592956909 756959639 666125733 726731248 786043131 850875095 508551300 730427109 475921473 523520104 582342278 726969407 521322190 731592244 915107524 938983997 555947645 940261321 502760642 684591839 589520771 747332468 490874189 545217087 981000964 992303449 809532769 888384335 957772455 992337048 564631354 947801056 396406029 597576413 228494094 310923001 26369315 633817263 21381809 620210808 631723820 827912780 841778285 884765678 97281910 447424105 85423033 542967838 788936050 929064359 540201786 728445451 359899779 486128245 219289634 811979804 923336334 944783289 400313085 617320680 866939123 869118145 669009681 953415104 35350776 686536364 310752531 733826311 683483328 694422841 175136613 744375170 353988614 705859407 556517818 659082322 927191502 927610925 168262748 540629851 810727641 998456593 50274685 153246877 359664106 905605518 863649959 865589352 859291340 967451184 992446588 995349818 288689753 558896731 473068114 899996570 940524184 960743340 395252646 747112471 519984793 593583338 462748989 832029627 226884744 524478942 773816302 977011712 204459056 697941850 564387097 863915813 648410228 880780521 320015907 925764088 838298725 931068461 396445178 721977379 527565361 753444556 901229291 974336371 25555664 381651223 965472353 996097188 568091953 940458997 925235085 969486238 378691623 813049363 413600668 888797831 289896249 758004238 298434356 825349934 137721788 639283230 406748373 749404750 747158479 986989967 572712932 883531106 375620518 756256786 475712412 913433314 411055290 663448749 245923862 982128868 36564684 920404292 938826165 996432176 463595385 852635421 947401531 949890517 947329533 960484018 980938896 986039519 230370908 781971762 63881549 555513970 740817904 848932160 995556667 997404062 47182433 459009116 198673749 312122428 501131768 991237344 314709313 765394058 17620891 136658758 748093769 798204432 574246818 882823084 224931233 572647259 53542756 427160517 432966878 503736560 809546277 995417462 28880013 513189910 390964372 870688101 891441802 921908038 670285210 696761479 77269365 968280192 653061880 655457485 504586995 608997330 424875627 689326925 104231200 820445065 952336849 958260654 655097720 792165593 790745426 919653558 458539812 554504198 293942056 458561500 421044301 818431539 945706251 997617682 676419777 679678920 388544843 926166524 816215608 979157051 468825087 984386696 414837132 773671619 520797271 933005957 447322139 655530321 180990393 857024846 758805092 765201090 955271861 980540985 300507965 949003068 906444797 959000669 763666285 908076826 877745902 927463162 847235735 935491037 608629786 659650243 702465157 874124792 810285492 858078413 330404192 976920994 235998588 760921591 597828266 651321002 492692020 960363452 263578893 979735725 54619975 142385850 533254061 916208593 398705008 472494329 643653193 912680975 427004650 447205693 509529106 516966417 882414287 922908650 933922434 944386866 55618484 257770021 614942757 797115789 879906532 998443945 254796114 982717024 62781627 768372529 534891341 637515263 286561129 799824486 78791170 196591937 239450267 782611130 991796114 997312942 50897545 160597533 657308796 946087440 745820224 830053048 189761007 666120939 863927770 946664628 869642732 942498993 412860700 650075288 677579100 895171865 530724510 996409845 707093846 765708294 212672775 652249093 648934560 797318587 676723571 678552423 604699197 897652171 902250757 974481001 365177273 963770976 469582071 747318188 239889620 749991573 933182925 943590297 429131822 481343120 217510458 577949590 628840755 766077143 902038760 929304482 890945284 972347160 248403207 458298403 210539921 744352414 599945861 650397935 145576382 628519266 155142450 207293739 476868884 729509730 940765878 999360109 8675883 766681777 785660141 862411307 900798760 933196306 117335715 872032027 784077393 974488746 639962566 933445125 267157758 400558355 283809638 547116489 835659017 836180037 338746223 690332748 639367202 857519042 312094488 482230541 49606657 445191783 794421551 906448348 944857776 995551427 430996625 559222348 711474513 712255806 829966470 931817257 605193453 711918955 730667488 925166321 761820014 895874872 666561747 703365084 905035754 984894672 452682024 875787321 369468376 883844146 449131218 921214405 315835641 414472114 132190817 242655837 114327025 661301799 269397230 973953456 894012227 991342536 616397134 925595678 457330912 827255320 554551262 901262516 340831875 380434941 4465798 558710314 479091754 808322592 288157808 810219212 59878121 438369739 561567095 570820476 747857932 852603876 376839030 931284817 635125873 924731556 694616843 833282243 768709229 857408458 448303994 747724426 30665796 978615020 682331473 815830215 141806636 143923985 538163355 975205367 596385751 840446983 832521553 949207998 670983202 823517968 473015035 798846604 75094429 402352019 41657302 438460571 489353370 987792507 395381031 715743203 33712077 118844493 59362138 757883821 117338064 740833054 635010337 708666982 212727787 883559024 871358633 898879415 433484144 841055243 339050791 513249778 375259094 473193861 822339575 943893567 298160581 707719577 927861237 953562281 398601063 852192892 692526649 980086051 415687128 549385625 435091347 968467971 280436657 421005810 555659441 720727575 286325838 565310772 515528363 980496308 313406540 616746230 603811443 671986966 918320475 976394752 786786786 807522943 520776437 874449983 381986041 390050262 394013589 544126931 535662162 825172874 420609903 926122341 440495691 880667340 110511247 141061161 153515188 401598510 127666617 361642900 205163486 354258496 654049591 997809940 91512084 386443506 159793204 668043790 931191512 960207845 174269876 623907691 311545096 856476908 653502150 806856876 337536478 497837254 614755115 652637772 160959261 988549504 351814280 691413788 153141326 764355067 732502259 963963301 487626035 498948510 600998459 959444276 266890046 960399730 194508589 218052016 885981728 890996364 456819871 514405848 579053135 708235423 979770193 984726923 922272996 928556659 94413619 730501973 772652364 861327986 724620549 847048907 124927956 405719575 369016861 989381885 577785022 933373834 643167402 754259660 258142826 357998683 26319569 768665484 690588407 899732684 433198683 719820926 672662120 793272529 693218027 852926485 925125550 964945845 702889336 921362232 727805391 808190811 233991683 828150797 394883882 583733560 337499794 622436494 987166375 993794085 995278530 997531956 152469805 407109366 958874229 980305186 576735097 945794306 867031309 892306635 930507280 933265500 750093356 832762000 174803713 450428579 306104042 981082587 723258050 876305627 484990137 993437842 850874392 884429072 461202724 499456076 448515352 929975976 184340807 632188439 400514323 658251265 30248689 783969714 611026680 619792029 495688223 503205164 295504673 552659431 842810393 929735356 243023022 405426661 212095881 252819692 155175786 663221044 944415794 956854737 798082203 875554424 191587620 878459143 716088503 942300289 526212498 565774067 179844961 334007524 331108886 690560364 963125834 997807327 17230014 998091222 199729080 786024952 729724204 973942206 239513533 903482880 64425175 221577751 136154319 946168093 560064489 934834790 991867993 996260273 996198288 998751340 336073994 661626298 387136347 423110235 429240169 596542188 443905546 471291193 253721725 354575420 542018279 717185996 358266950 518299270 875620886 891743135 335402310 364163506 544930533 921827781 162697822 210050391 642363076 874760869 902847631 929433607 775256019 861499560 877515250 891915786 708021398 934449310 956298043 968414472 849574553 920247516 280688579 295660437 105787689 266606283 663095666 709433513 298143147 505231349 638007809 958539863 491944851 596721099 351808727 837891446 745347574 859949108 229309597 761113404 330895453 415928376 789173993 988236587 428646218 820894008 595483931 626658190 581194552 937238433 228721201 715585407 187938180 704648190 886369093 892434662 814442278 947173003 637636171 846434034 767574798 922267582 649078790 977568962 210197924 302023940 215903168 655550531 700071825 967657819 806009829 962950336 770431274 938514493 354820862 958956712 186419897 310525133 979080495 988072730 916016559 931597251 483669471 949194856 91937942 651439494 925790166 996950831 703802977 856748082 489237385 845170202 32784097 486496193 391642651 516384758 663876360 864613255 531321640 647681102 800605017 957295329 99350218 735926084 925932712 962445465 147385987 168345494 360820003 847226102 866454013 901268455 595228400 856684295 767970359 966158122 26331869 962444733 262191935 449462447 444631973 547802492 261849455 689976208 351814070 580899309 543200398 963829702 966843553 976369607 332461162 407962534 673691590 979482967 850035612 853268214 503443209 772144331 712952022 737900291 772718212 991288329 996226793 997665731 429601223 824847670 102227080 133820060 998362676 999311234 817318891 924544115 859023040 956030417 149862796 913449893 444424366 590962117 376055369 628774223 308753544 715891895 671197331 807869885 284680559 553425520 233701529 843572711 320266013 407674965 69895489 944934921 444374507 997500751 589292756 801402730 60990721 142868058 577454794 743657970 710639516 856471901 807374518 942943745 566247716 572960358 433632767 865948188 482259144 547796627 586932742 924150905 890470075 928159310 593081094 876376016 56385284 915635606 124210722 940023032 447282932 639680206 903795265 925411142 947576073 987559400 644666118 662143861 820258731 836031020 341644628 680752651 990817967 993727005 90245052 257128995 68088152 251544954 127102351 205028201 929872035 962274208 803863921 847016237 422254840 568875187 168672307 723203011 255941480 524885284 768241555 774537487 65996262 563859536 612648637 680662988 220364322 660205016 529784318 662288013 884084403 891277161 450349962 547801841 920062038 958759040 255940992 395188425 717919965 952844569 779592402 823478940 449736349 710670230 947926348 980494423 609188347 733359290 6575446 516384500 958539030 967956835 383746718 745628153 669472059 751819835 854915414 911619603 748313069 758467594 875040626 918362458 687281686 809816499 473275755 491065738 67128472 811505647 790381876 814828744 886791848 962795667 275502521 440626817 223021559 766451481 536990658 859832662 881039013 898159772 550021603 644989841 629673595 735046847 517056245 758509347 353868730 549728102 426198252 759611814 299372585 833473538 827984020 836909378 994835297 999311684 44238291 477877226 160446858 906402541 449151845 738979760 368276064 734993773 602313030 939824143 917782164 964695897 128674640 135402834 58115476 242011491 156821503 926747974 629741146 824148821 898419503 924245531 2720465 652038322 696231763 742408768 369952735 437619116 776815827 977983210 184072329 193984797 777783010 887716986 469557471 480268109 852602328 933118912 157588766 690186707 451417780 784465798 606248688 888656600 185920037 605878477 32079520 556670835 660167298 957676620 591847042 817649589 687487276 768234029 684019786 880976331 459871002 943720103 74711082 228225059 637084977 693723156 644160042 937525898 907341924 929844526 966416292 975807058 944444925 965571018 216224725 579419378 482423160 707731430 414084002 965020808 212560211 619829427 439661778 611546043 569082215 606118757 363968147 994529750 50173204 582952026 581621357 644011355 599343661 907419655 719253068 739492035 185379749 417976369 643880356 708345719 323673658 601247863 544827711 995360029 631000690 724499054 954911796 960072000 970207991 981841946 412589827 779204043 556656625 920347759 356571506 831291346 814410359 876919948 174041443 650083158 103950995 385785064 748435969 974202581 320987506 924058465 803895688 877944596 558683660 825307325 59024839 123041579 975208842 988402405 730177 622444843 115227031 765146982 735233848 927773994 266237668 861109737 418292877 846201379 682519900 735611002 188791030 329961577 949644453 998635110 953820578 976961399 213192467 809504901 373206630 653269934 58378995 481648191 182370780 235004207 313201457 751024131 426839025 826282872 130774743 253476809 611084100 785574457 403472297 892607292 677543808 747231072 866926276 899115257 958609306 962137975 671864793 699990975 356340142 360294586 164194483 355129363 184750481 225057867 236447136 734980632 118567059 361388984 6206262 94538076 502101148 986016251 55388387 902631640 743080186 974097533 139924819 684976982 195585046 466705869 615993306 973751535 310348212 416165009 588527717 657138916 111720406 527324759 248275843 292275552 795465143 956327046 177333064 889520797 642578349 713575223 246036224 679267202 293619684 433540758 262056142 452050866 333484365 917349426 542303725 806330118 504954237 507840130 252035311 461776928 240050483 482010150 709418080 840802163 433737365 453989697 790384634 918363475 952769054 958230913 174803851 703266420 562013736 741913313 734008266 925460132 132449125 745948657 410063827 486552411 985174312 996138972 283315121 572015505 595198350 847966190 393272019 411262911 784526684 978259835 490684984 859170418 726679495 775374940 761557145 933710199 82793256 845923456 945462485 977944745 642322880 829384900 307787973 728147289 994423551 998951848 933232536 958506689 480805676 916570917 661693211 779522892 224480509 718344361 254063219 697893260 225355670 377565988 109491081 915571224 358943786 845028964 612729838 656223122 126512297 866466525 284317670 322982576 331191390 781615370 636808877 724526754 746546845 867726394 729510055 776278273 512571622 859715427 223355543 543476431 55934856 916556684 957068930 960762210 156514335 254040492 266775106 991585774 526848144 577741357 563356620 600881115 104214005 435834271 31630810 286610553 452751283 490629025 48388971 796326188 246703862 509881255 476506258 660925839 66969244 701759102 99720920 128043885 666738125 907065231 376751377 909780767 734024574 980118945 298650355 876581021 871122286 881242640 347082198 830002697 345497067 538009670 611473423 815203573 157844016 380897207 208607935 467051664 913126661 973009189 863993849 953457061 542591682 942775773 609950293 742367955 476540918 675299779 539217413 983459568 333604522 656507544 842129509 935188882 705273815 993801982 742297506 990284141 831801080 924484195 842698577 874817259 599066396 600074861 811643296 946062418 387803697 730499934 52107691 364191285 362740963 484062518 200616281 930359933 97649832 809391490 774612533 991864947 765864197 986127772 385370965 567620127 658836725 938903340 601426084 684663800 798716174 929307174 390580499 500692846 332604440 889245325 922144351 950315446 626959913 846998619 596112025 765426756 490574724 516870573 383842938 925171558 666283507 677314040 232910813 863068776 417585943 675703049 283874454 717090079 402237991 810003846 701139019 788777101 73214665 422434775 452007026 880505245 948280407 971769104 612802122 982937627 920311716 967045781 638227839 997016324 669225321 732930650 502295107 574936057 496142873 960008543 567388929 919012441 362522162 799682541 671256268 783715269 395122774 627579380 881537234 972625987 683393490 928943391 495081154 563856105 88306834 778182372 958270936 977330968 530397863 600435190 144897347 831800656 385056128 961020013 794307438 861864608 559908057 713109637 844931139 921293158 906356237 937815510 914528432 933142184 815140452 964853463 490824812 960010619 962318165 962807003 523586144 737652222 109219426 995179980 732107872 950101807 819496358 892292732 443413236 584839926 774852328 812488166 145525519 487284734 913345561 999348225 907220042 934274646 377996617 513175734 697453860 736535660 852678907 908935222 680269646 717030593 980905486 981120244 506351590 940423016 780352392 914316992 361746703 887855686 366897412 870219876 187568337 661474285 303574819 825993147 741784902 891598190 196652408 638102498 398247368 559093053 126231621 898074813 621787370 873262832 772963242 843887258 73538303 933268016 578880957 745726947 206463757 345690531 33761344 318758036 634179274 984276675 104919456 587395999 586728770 593808760 646521820 672883773 45350592 873864173 808916404 919890416 953625624 972794872 16972873 607300882 518560749 756067143 63699696 560762756 559855949 687702612 841002975 883524372 286198314 941689349 216375652 264865759 691461913 907918468 211043545 400127644 861499313 982311069 559306785 892508022 6924630 799909006 429198281 869615889 268074000 585260155 453762110 565434345 22268005 497190529 816093265 983926135 840894867 876244947 772645539 995443532 319551635 831479426 734512875 791176422 599864014 692101734 911705714 940899126 364275528 533824499 697672416 747191383 713996734 766851090 601937788 866087550 697687843 984366910 463320398 622093294 474272444 615075115 82376904 283215705 951772859 962673559 850589674 860598623 996094161 997616361 788907308 921289493 636570067 708794810 716901061 774832338 440513363 960033834 750291626 965179440 724600944 962370600 830619331 896817962 342190852 828750432 971695359 997273949 972327224 990774157 87748123 548914527 530191844 652837084 58864116 220803995 454609353 756496648 617447921 834851456 898600942 937898595 584235555 680712716 681934637 827435761 205050837 888257675 445110372 516188301 631745360 787708429 113328339 242915185 368116232 878726623 962780244 985326727 663983700 827363147 45455809 807317258 797724671 819099923 937637063 944700074 397437033 929281597 995667788 996871316 444176351 792798840 982143988 992948134 634175012 849278493 333874755 782069381 129012043 200133536 855954167 877905452 11781684 410217260 802359192 960874889 324419302 721802452 40741566 116662531 70451712 436552382 190576511 391438064 387179492 753130001 623434748 764976507 815863608 910300093 203855222 322746508 926821601 999329627 590039766 795593720 877256755 959950595 17520574 422622310 558651529 628593624 60057999 911510629 593387143 657907922 572233512 944443038 705931389 853560854 221434734 261479772 549209092 599853090 893429516 970051840 982140750 996663448 810389946 822318905 190429554 716086112 533799444 571562176 148708297 726727523 700237263 941197143 113286327 921090835 920373459 921190310 980764634 995873436 555921446 960309770 314286139 395427894 138166296 843945732 687147067 690067542 221640520 873592129 784071021 798477239 638104091 938815314 459878048 681439450 520218874 748439672 825344212 846637290 952845997 976480807 385531728 838191714 512830009 693008437 674197737 901305916 173988235 690992985 667871250 701630753 472355974 641132432 639994167 801732853 872851139 973306213 389424223 644490505 62821099 215362200 492729461 711431054 932316790 933138641 138354850 754924482 398739834 726088091 317864088 652904261 258416079 346773430 972871453 998430091 105611887 614794709 430685221 778528353 836858905 889992916 790013585 888331992 788961415 893965806 603912375 694546664 831015079 837449556 390609548 943966656 710580831 947229806 814330057 820936948 93604547 629606567 270321021 605996848 970389340 971264742 886016727 975339792 966481505 984873347 11629733 850198365 434861198 746661640 723566620 908718386 935429828 959570420 578726202 727494151 800866505 881266921 210634338 714020933 459382962 828407612 993432248 998341255 691654941 977599034 901031254 937659054 200079487 789287158 506226586 623004103 877054258 934146209 252455226 256571082 856546125 907072885 431474375 615686606 857680647 894437681 97787279 269668342 869627663 909221572 426636091 623808399 992314395 994890275 508906596 708066402 289780312 576722900 598316998 638400857 287794563 641436884 43759634 956004381 11247422 586927500 523547920 878049843 14549997 199812865 233407716 310391401 78126699 141343762 580543998 961907826 705005912 957664674 377930276 933131670 333264537 632467808 657652137 773282156 433454731 779358892 896916166 913928505 873809940 956462503 429393492 495763561 669848483 898310939 321419180 947703455 760013939 888013440 594790884 808643832 584364791 879403678 16464697 985825196 190961823 718221679 936279390 950447814 340552672 686520114 586633207 642459050 997589524 998290588 394243734 751762581 480760847 656313335 226826275 912860514 273268878 804960134 454931330 903286279 486564866 914203456 987950612 991144136 130618633 905925587 787025242 822516781 460474814 797996397 10233901 235426616 276469928 446652854 730167040 911544965 119775039 787388144 805235940 949267930 457357893 718005355 911534021 937802376 205794361 215916473 35057528 311011912 192460434 834079326 263062642 441989013 408711121 502108945 739342649 786069818 970164953 985667493 115492497 646487224 852893056 895666642 499954233 809645289 475722708 621366815 395947561 936083810 600636144 711140345 248373674 624573689 442710823 701361719 238090365 684409183 442751529 480608213 516936156 611561552 564774186 712646945 882360823 950104565 228103684 887820214 144455323 478483428 178364705 178562397 754584601 970572359 98510108 243404932 883839854 925067619 828810059 996897573 60972280 661721102 880051812 949852906 603098248 979773828 279211358 484603183 716423682 903747944 397776394 496383205 776256412 879377886 379915459 475372533 720955495 925675639 684152645 863534963 698281900 975884198 869274715 955139652 788005078 937178876 497296200 716735594 324476236 933532584 963244571 967519132 239032076 276138520 632274405 782942315 375556829 965284713 809691571 916776692 696967482 702239931 715864919 967503025 258777016 738571093 329321495 579789366 456621237 842544211 61593885 73363777 478727054 588666855 522568159 522892062 393741391 572887941 841053697 861678652 646415174 692908408 121022399 286999444 860325486 927324482 571180162 603364188 712219094 826475596 494173515 759633033 508097799 714295129 92948482 154604299 184488878 431875644 910262343 966428111 729412300 884985697 69714122 477980680 806529253 838771672 375453545 751219850 506397666 538598419 955761408 997864912 897313988 928983287 477134164 727236509 807082696 851453441 552460633 977843108 636944031 996361503 264876393 450576542 511279062 730721402 68762378 456249313 432746407 991431477 557966325 593382528 609242128 987134868 266495359 886017951 440861709 610738274 712628268 926802824 555053087 966507847 542241979 883661012 935876571 982688279 480115521 823197896 930086168 965432992 864260718 957053140 361312181 925837806 486517833 565614559 591622207 741936917 935434693 971602120 149401944 993204270 893902833 907823481 78016243 250578631 655093856 911315135 836886085 896640896 275284829 637154587 760729092 931104230 664670306 699035560 225519096 463466999 851247973 977705659 517200882 829683566 539225545 764741203 310721790 888975284 84030803 326752485 711586009 911584218 690704206 694040817 352203675 955719679 589611173 951945097 921336406 985410779 311914379 334464189 905237309 962893202 277632127 948029151 964052333 992396597 806786838 889739583 617891468 759436182 922399399 992339890 25095090 745577864 624413935 694278373 688765795 737971353 962546470 964677735 564455802 605001481 269816928 930211619 598612272 636034115 214577081 278182570 415504680 947805785 867179328 969808345 886823997 923069413 520647719 979886691 299877525 735642561 428763662 883476631 643897042 968498701 188908324 435571715 333180727 856983379 146536225 210483561 703720736 836579565 412291063 427920672 604140082 802036754 671083559 737333448 650290717 892014999 215027449 991936620 996731867 996999321 938777341 973532829 785489640 945992239 358002004 363503077 524836512 551676257 272159397 891844357 846975497 893781448 901301176 907258927 3390071 703550641 763437712 832905022 996797839 997450386 963260106 985960692 595333885 816425948 188634651 823112063 920383167 949313928 282302192 788537690 283834020 840605444 975926097 976655768 162680960 864549203 231060236 693155802 238808651 903123312 386971708 840850479 607342779 721570756 132754295 426272144 554276074 558618635 222013886 692857416 531014434 726573158 124859007 971673826 13517342 364747488 327102952 619968779 200435660 288270188 542311633 991290543 510578353 889745653 43869608 921167513 726794583 904726772 339331282 436811410 720199007 882898646 749711619 944758277 213862342 826070491 168831623 328398337 54300761 245833112 271917556 700934852 607470239 725854651 874814082 948228211 156317445 308910059 799635465 868258631 703788248 819479482 147589949 216016642 430070241 855808019 662839229 725859343 112115659 827815174 654366155 948327159 675987175 879914497 221375081 260504260 324804269 525595112 558319872 991996000 681176210 698152508 696233864 699120619 835095411 967537080 750003028 933350641 94395791 416997499 538334115 717628444 351114156 683129572 968328338 979199814 254790557 288809577 685808027 997345677 43026818 462727173 805246625 991758798 281887237 376821258 813112051 952320059 219416491 968732359 834863220 837644710 406865608 911602844 192030185 815121940 44109514 661562805 740786195 780510552 101531926 252859537 22118098 335665162 184700394 561383517 428204589 465779869 33688287 494969746 100351417 307933910 651065807 971469805 973409786 980691079 959363473 993326117 107420493 816004300 687634511 989904885 83700677 145893627 218709250 800396325 527476084 701564235 165347540 340403598 425010474 862174095 89301472 209258998 895503173 910964746 833037003 887520667 14122595 694311670 865350807 866050756 495965727 891771113 611242857 904226336 901203149 945417365 837900416 964863456 429300671 699889292 129310431 966185648 714407002 910614791 383501316 529539619 674443615 870194447 314344388 979261955 740219550 799368157 939177673 945265257 613679753 740647803 591223479 780028931 316540042 988166649 13888044 36286995 682747583 934904165 117377255 843035796 768297161 921377289 832152032 835284445 201729179 320189596 600970900 958811626 340992798 605392018 759546309 981740805 20519882 987537004 722446330 901748118 829884852 830854119 482730962 740830497 911655818 935394650 770979953 929391286 831513633 939283020 860899434 919613259 779492984 900364541 51640445 729084255 285369435 298487182 222514789 315066032 716683346 869359935 674256857 734658033 707867195 896151238 912967999 973128839 27535895 958926011 170486157 219457810 709944502 966378981 128390028 769451502 664250034 957747145 40781310 200364527 122592939 723090350 918372795 931102255 981335200 988356868 477550641 680519949 295547861 932209824 259924937 357523867 416964166 774103302 220203994 276785006 129050290 434445775 599486590 758051456 887536927 940850132 161323806 382155014 510479083 696056887 774319394 803235811 564950730 646163646 550700891 640482492 786975333 915743654 641082362 763016494 89851990 520936815 694340186 732405528 600109610 918615383 403308044 537637238 733721806 932381746 550316831 831705800 191425043 853111268 348352060 376483408 629515500 942399994 173662657 438597934 501265385 721701593 796391677 978021271 697925333 886065646 333518794 581430705 668491110 746729831 297228347 876930139 650221456 944080906 766067558 782461846 13036615 144797842 657949574 921999115 598159458 880835669 504320608 696108714 229086376 865775560 612872588 620462764 873665436 982193212 51023413 416281290 653068730 912470478 217987551 926981239 150195566 600388400 805231773 937122050 314660559 884531120 608175804 614947156 833266019 907324425 384730996 393974948 493837487 916683832 249270616 667236221 122462182 356798823 29905544 765466158 569113118 787110604 450318884 685953203 293638354 931242157 963306174 970797417 118685217 792659451 933955276 951482886 765988986 989190155 241332778 591004350 164670918 879492151 702737067 975995011 486180369 906849258 501793610 804648032 228862650 879083175 460227358 964510564 467011734 891935900 351250558 768093546 379334256 512533978 91518632 887798334 990022407 998518429 403663008 477361969 60043032 622953081 750137097 836736894 509380851 823884891 835338543 917172625 119208275 952221245 557524107 591941320 958089125 988736458 21412351 76914254 871519434 972357768 194737379 507646954 391993524 709342461 186909857 637262937 219803425 883788734 288722316 491249773 200901004 572282636 514856632 701706639 455366229 799426100 229856026 255804297 152855963 909103887 697075297 830155652 667127189 997248497 259108987 482576280 522885851 648778257 905446599 913002005 29793901 740585270 461591268 571530744 509796126 703903989 801729434 977984924 914259736 973288369 96532438 739428802 92175964 375450420 691605559 887935913 891783708 960962611 696903737 852753334 907228446 939746177 725303492 760843361 971141948 987793701 549056775 988775617 351863470 805762966 955334811 991481152 918456383 966558174 802606518 893212689 837667483 959428835 34311960 967345250 190375548 619834503 25044355 486404737 917374761 968473445 155813507 988889299 869194195 982276027 100433710 784826295 802923444 807624894 506622033 619108015 42877359 880553144 378837413 839627115 664500501 704966921 685887667 733273976 749575779 761315986 31227691 599582963 197472349 484974757 109010662 701330820 150668421 633023106 733794954 899754165 851633836 944235900 258557447 838609335 74929691 681301319 553588010 597935595 115874228 908433561 182588207 584140676 590025182 673027110 241551689 282742389 683137089 845815119 990554949 995951102 381415982 830354455 222485466 911151962 143363447 653188638 775036579 812993907 193835129 623530383 512308723 898286537 954685097 980326905 432728866 655839797 248533334 615903602 372669056 425742902 713198644 909320268 95112748 947584963 50284303 416016273 81008626 432413606 517986802 672445043 845077787 967789089 779648583 948634896 925969995 976930995 119375012 602410614 145687787 362845884 141344892 198025530 168342352 721569302 728488814 839505996 114952842 725509161 359527174 416707925 731815258 895750641 701102603 818937593 104863844 804825824 174636425 929440570 192626837 802377780 642070806 858066080 234395155 367457102 192029492 592282831 315817746 455604951 380623331 723219637 151015873 503830376 636287263 734533385 293508328 877828984 449563900 674016725 210742855 602177977 304788282 610412727 846380413 906564335 41468914 497593408 702431239 925044986 209257687 346761135 746913310 793874621 534854522 660716830 633906812 921692054 32345051 471266490 716123634 719849215 349360837 570197703 379464910 933623065 112815710 598105772 830603191 903351977 502612994 906455849 288422086 928422795 302369280 429861792 820362891 930038024 196446207 861792408 190758930 403028232 886361024 944584179 26927926 446018374 502098492 555160784 417986161 718071547 879872535 986120746 872483468 952132229 775857973 802885327 84997321 884861327 670052796 678233953 868425001 972741097 309805308 500460144 862188270 934941860 409088022 443151937 177522623 198940515 586017286 714507959 635408820 663925638 327689755 370827307 433323803 626506540 541094013 579615898 33014965 341317558 412938314 620286679 302815354 850476551 90986009 138525654 821062708 952405830 259725570 298035094 466789129 802583983 134745768 569624141 591760490 760213424 927011369 962126507 226761651 806457588 224551254 588086949 274850899 989326848 288820573 306045448 506790475 830387804 696262580 919585242 272699399 457030634 474592591 579772588 854671334 890833586 490162356 509138918 732808925 815563718 354916682 804892935 515911921 622171114 91161000 216665739 289721624 779055540 66458629 791303372 794256960 885521889 269928087 448172306 241446438 759193057 382223422 408258761 769497071 843018835 860578871 947846249 285793999 306640174 851585141 994972014 633653726 737785866 374667533 498450222 627120406 718954395 3274905 209419603 541363207 868266940 516675903 726020681 703734992 894445403 724065426 970664837 841705682 859589243 190562256 314704604 173893110 644952517 139757011 220305588 349699968 434239601 865510792 910520430 429870736 441995703 216574954 791548363 660714727 953537909 328058013 784079052 17810616 96307069 306490857 458834262 65443897 411462572 693028256 891289565 652465036 783700604 752173375 963623779 495451832 850037736 727435597 961840253 363634271 768971760 208469802 592435850 344119347 608576022 948859744 956682054 993681300 993700897 704174004 816179832 290379999 916396071 268868165 895750997 108223718 686415266 585221307 808147287 738904340 880078961 57815844 903646473 972513210 987313020 242375364 302663601 215977978 294350629 716771946 749043744 9677907 314887950 832291120 959331896 632129593 890151207 875773424 935904531 887949040 925349061 489292457 720067834 423346411 568723009 273146877 609334076 241704127 836429673 261862859 477030171 281987745 750132598 719487795 753208734 138815638 140226131 675080167 738109743 123760695 589523231 643543928 740565619 436691647 500173738 538222327 736384813 787174721 818665470 477773024 717696789 1065141 724582211 661930125 768242591 827354854 933125032 203696953 823015461 146036741 203632487 312904183 797339446 876714174 949244043 100360838 724557744 29733526 603884024 860861375 905303971 685533320 960398697 967383709 989070514 438201089 608647689 519904639 978004769 835665822 836214120 479502015 619182911 564253315 872860502 613064891 928887917 308619687 860198852 913135967 920303733 322611380 394028164 554391266 779816949 913234856 926509740 763345305 850144164 299227589 940384884 131545037 315944357 50407499 604212124 944831591 979535140 726186690 886540020 640618910 824056583 529601160 549059039 869216582 955483207 121125715 421165559 788958475 803014757 111690592 173863488 586821034 896059268 450516692 668146920 140391952 299802448 271352991 863787199 585062860 772441252 796930806 841221221 297298239 304819020 760462513 781401242 277090310 724012794 688621606 882101110 76756112 739999211 993338878 995498754 519867596 660367504 177435870 269423135 767716222 988240599 461477612 866376648 808451021 919497297 437300426 883280886 712254881 974235597 774930970 906553627 917433590 994472659 95438694 808841562 569175015 938012588 486650334 598070011 930565024 993115368 60218534 971061700 533122524 785246720 422124341 772525878 211281122 693337904 601200263 991183116 855494091 989020236 799247133 952956243 222120968 623610415 430534975 662148079 434282747 498974183 63989174 199988584 37999444 896271674 135296355 315171195 483376965 703242904 368724885 465019580 930598699 981564758 780564681 962499583 843161752 856742454 879734396 959556922 827192863 986813647 208817221 354101652 396626975 521709695 502322101 960560066 29391596 829784120 956516067 986965376 780378663 822873469 500113288 912284109 712297685 858786738 573337503 609145589 831773793 922083459 856278372 881005679 644207912 669576338 697825809 761933082 249426760 579778393 364287224 769509492 330847746 420211094 422353746 746632019 131908631 847615859 891018129 901320445 414976219 966779416 759991110 782504618 641710393 739838054 774617879 980244384 586883061 784069323 985663177 991513494 341785587 386831389 698317057 776765301 783161072 982269988 482735492 738564534 507624079 581028180 487897304 938352227 103524708 425633190 468788733 567468348 622553297 726995321 552735253 660421941 312053465 657803761 98011745 299367282 803210644 840851896 141796076 312032798 399394805 851974117 912257239 926997129 604270091 895555871 182657542 791536581 616248028 937536078 522520393 780680204 963274724 993369867 409551841 620833962 30573473 403829397 872643568 923976483 924847161 977769796 142188886 188671629 952755234 952988283 214804802 329856654 668817584 954980014 722610657 724803613 495287618 515464109 532115737 683786553 786678669 962627544 524720301 637707934 768940239 784787345 769472461 936040647 404506042 574656536 351871820 372316263 484192059 868277164 787427877 893201780 596071149 610850932 164847167 832133535 735678964 972956944 687868960 739858698 904483419 915909536 284930955 461221712 728096296 850598609 441629709 906779570 751182561 863637039 271971670 915762398 41055505 240373611 174911274 806891581 57232025 989519815 846377158 912741331 83964011 942075149 267453979 935497875 400145770 641410049 54030198 641674564 401309943 962821947 22475997 319147499 169524778 995293040 631944285 689330751 211140708 971249457 38419520 165116558 629454291 848194232 599028810 907305608 389308941 513959409 822904986 857191325 901280234 918976130 113613419 402628365 491748142 941525162 270264448 944675703 710904191 758628536 55809671 848797738 851851448 874933582 381117067 918529457 750668951 976790567 455176323 709743370 293608510 565996179 564048568 638395738 866492614 934891199 421864030 713122490 21344245 727303256 486439948 861708621 553579927 951153098 910870689 991395434 59363544 634441178 586649959 844363617 856823310 999338041 154254520 642919569 260667877 751908308 547238067 925606832 353851254 523382279 677939099 771063462 441680271 474118790 902247806 973515125 589729185 943806277 92578463 701514385 6209582 898486951 541332298 673898121 674263085 901092459 450121150 792441093 605318370 861112985 20596533 733466462 174733566 485625014 4922140 790707806 431445086 870507458 281934761 923797317 829060771 948821491 692014294 914220101 145282095 753335461 625484768 631334596 612358452 852484612 946548304 993918578 887379339 907011398 603142548 920832716 881321133 986974354 798246811 911474183 764801067 854509968 748365567 754787806 356452949 400720547 487230070 744607406 976498569 986285862 845795197 877773753 16891045 996233878 299690441 638834694 868504531 963243880 637714920 869533660 184503227 982103712 869437741 937193345 970971910 979208222 52991692 894655021 52638032 953724286 247749853 488023994 159524349 855577555 540214293 635923740 348128473 357306468 225698937 765583234 822588021 968113917 666320687 776135222 499696115 550425506 229447293 520974184 267262663 479161640 153918957 941160445 17895489 460247940 368542928 375053802 696807414 699019399 888403005 958296533 904985857 938662401 274639542 555180479 390704853 446895848 489774700 753006060 800203560 803635211 576526999 837501084 957650655 990992590 171412743 706798621 559959615 733921108 792327277 969599470 912957848 922033701 986077557 991720284 212085431 598446023 788629750 919936319 33235783 494089390 653803845 825220053 560134707 783941682 8796020 235272266 713607521 848024743 875537233 979982386 122895098 676795205 698692960 939745382 451927326 893523322 963356974 970447341 442936011 964317770 893624781 998849595 94303700 156112368 998454409 999224574 430941725 850528837 6990396 669189490 72866372 656022299 856784383 878896736 148655354 330118753 570175389 841573446 58644732 844141454 11579437 840561081 386603327 512511071 713514925 879646045 548377704 590963358 623625898 716442835 34269738 681262194 788676428 948062743 24590501 341695638 551931173 803680744 877362767 931467522 396997669 574715219 815652385 867317405 427325970 856865405 88088276 663504134 201229994 318557160 735691000 894428886 891028386 914073197 574798583 938801940 496304018 633101364 240882545 900919959 469241058 971611847 16233073 937943698 988244201 997083721 921021129 924110334 910994241 975840702 412915392 505898051 147812789 550542073 337965441 814371554 248896609 877698623 978139133 988092420 25924982 722276784 80860601 337986882 715699905 740409981 927171821 949202538 541128810 570970805 590954547 848608017 560306420 718382703 877391057 967919956 487456024 505319514 905864541 915216524 11919839 702007090 535317885 694513075 592979571 831365464 441208924 695899671 466886267 782717139 492237930 701736678 958864790 974103872 779118281 917956810 354587457 818903268 216030667 711587757 224019953 580349870 450528017 594932378 928788173 937511279 329959605 926830273 317551559 946424155 427852840 722004029 432098793 910003892 702346767 772241185 334229910 910124126 324404271 468264100 343730369 901959345 526454261 550230652 968899809 970450425 62512515 816336136 721632246 810628874 976290848 979528622 178718600 707836721 5195264 403478221 946013431 992364696 19003274 241967259 644675167 899096367 575814568 872346576 59019715 577703424 988793207 989412040 512042125 779366793 936789884 997289901 294112051 300786155 832345689 926404137 320338140 843096146 515127411 596619580 212878242 505783049 344401585 604691529 364496859 589528987 676329490 908036102 390973954 990396048 680061032 815439058 978457608 980580475 604402159 868354408 895897246 971019457 937102253 975914896 123039912 927911499 572159204 831811091 166354670 771600887 126041759 478957857 292552794 929107559 813860029 864284308 511893585 719595364 463224821 762856958 209742217 646039818 287617425 807232085 956940744 993056938 376443701 908481290 540694714 705924514 302023610 664870438 537115080 746958654 73671330 800268166 44816205 919972590 753796688 808243205 771053934 975319188 640306084 968389698 124053589 853720041 690451560 963872144 20929281 977341231 855622674 894372328 586693918 830556417 686811151 926503245 526229449 814124828 277497370 624364807 905444194 917069223 686725703 794089899 737542365 795499167 778859987 903610183 334647370 820792938 852435193 962867111 440560522 737951399 152314212 625073331 887517942 920990106 697816469 959643383 309205988 721014119 418939138 732787057 728547037 993151706 732286435 751845687 863842658 991181350 185816148 963560128 937335448 942616924 743630177 976882616 627398593 864220350 770454016 876413726 626319690 751198436 505447989 748710457 663941486 730446082 210033012 301673008 703748170 769879653 108577188 215327552 704311793 808674518 18196458 962940005 309305661 953182154 891133032 956117935 719711698 803407282 756234346 820458457 45580366 67400111 797709016 952070720 949422792 991521705 550234930 998867943 591764070 768547426 129408268 258390885 181339841 762875510 853845152 959098569 616891098 765604096 32236633 299274002 821593183 925791735 229919948 442201683 760038626 985760652 63543814 736661910 951107206 951274035 111310224 865617852 324033705 995021640 374863645 815129351 775419010 903264978 105014916 180723246 753815771 955181163 344671148 415604267 807829886 998551258 594236462 674639833 949275921 974370246 103747044 500949629 885770421 959795487 843432618 939837683 813056129 872026336 743543851 939540326 752138182 882866375 281065895 427296544 944809916 982040998 379590200 448917223 494640341 703602816 55511457 354635667 59513364 63456152 349720434 771108310 33579113 537520391 806562508 911124167 336413085 796358536 814553096 841039809 54099094 963301939 942238500 964377098 889315576 965531718 55841236 287832957 65366139 521718863 229802764 955477418 705528097 940716975 543588597 616186564 50957049 601220114 402216530 656462883 575893604 679634731 203403438 384307835 188596686 856956394 368720269 549495093 463398688 464786119 981329731 992646880 362050322 946563987 980550874 981686373 980808949 982393735 376637841 710634021 632957547 781361993 376719196 964679187 77807635 964820540 785975912 855814698 34374438 635174570 360070989 392955016 654084646 798101091 128543735 208586690 757875564 987282236 692564463 959245686 281847567 532635989 115782390 298672807 674383739 876008806 434763850 873465185 701022462 850511106 177824392 694046410 161551350 206697276 519401770 683700399 90887744 988426605 145625825 679192313 234999485 541220025 329449021 975612173 365884222 792749424 379796666 795707672 392294051 779185440 881890003 889917878 858151426 901959582 48103001 557289446 584703081 595484338 146590965 776882688 434747475 677620840 35828605 971447271 177679217 429511557 848936791 983560473 3413517 662441692 976905730 979287558 895927683 966069521 924672720 970897708 167696458 329990344 216294608 594662096 323433358 753216168 143287905 953681581 589559371 890313059 960615407 971156679 439889405 467886686 102863882 790627437 690697694 985550132 996834509 997882292 354396573 993178590 236646611 827220589 20027782 784362037 114319318 511246598 502877878 758457402 339242638 808336479 979574906 998266041 433963204 825088298 228093496 290933887 468135803 594720978 802621512 916377502 714319539 735704456 25565239 958593981 362991587 957076446 915990001 974524310 341889170 758246070 676456731 766255079 540774326 605213130 981322393 985394699 555133354 619162237 81250517 514957292 308105464 540704397 910189388 927248641 937148456 943945320 874885875 919006313 334526154 769296088 579552310 588647270 707723874 882749060 833701297 957740882 973667470 996903538 660522539 795803249 913275404 941711443 992446627 996071839 99086735 653377030 674241192 693046125 3042712 836143589 779240436 936306684 423114296 728141214 991951277 992131440 148411702 308774753 257841425 462727558 297115720 551174097 448387824 532800420 417775241 422397464 638412808 933987031 953070718 969821238 274508077 623840438 248190065 688327537 385640754 813191122 221296889 330769259 46655626 353915627 803741357 951655837 347933508 394375030 130852135 448477522 529430136 664513641 988173871 997127955 23438124 213962753 233069034 331689914 345551229 433009747 403875363 925383923 826078844 931606987 310459834 832256812 217054278 760685223 972896392 991989583 824436191 914685790 319052745 897185047 20181926 839541377 601824288 668438038 327725579 350880745 209312464 800279169 339517137 922060945 942765153 976443302 217082363 634183472 629024421 740627420 890591257 945629638 555804403 677085281 106925878 165644820 120126415 239113851 317322669 336184155 649539346 717934028 84192049 910025314 820175714 945522462 553110166 916489770 818358559 957904452 650800707 775257562 22691327 22697951 30287103 721442483 267638590 569614730 744100437 911025376 370041234 731255440 550165415 603534136 396229297 785202675 183839316 978583599 981406975 994456338 712515400 734485805 44338299 499832904 268085530 425400220 674113247 741926267 47136345 276417292 597029211 827751862 882645738 987210102 252243348 506194861 931802379 945196210 568177535 869194833 419073379 484911784 803543025 900617681 441995147 914752685 913903795 988620625 844161850 970187492 677167827 820781004 545993618 739673740 750764994 780131353 959290392 993397298 359125755 420651348 36485054 66878166 190925020 529416495 705097519 713236457 587353226 895823667 299551957 565185939 596249874 792840664 562879648 592644327 646183241 766170933 335309609 820797860 780245744 861079068 900051992 985302971 48656229 869223522 968115615 975719963 791468492 804013890 537143643 830517103 345655415 370435582 541198259 938761151 34445657 72030645 91230294 903206455 845428103 941861611 871273348 960874212 168197702 956755159 343325366 763729735 475577396 977693482 557630675 965093641 105406724 735792906 470375682 889175644 94518690 816702036 988817397 994383982 996671100 997496802 574927452 935107779 564232954 774875741 857186446 933605050 413047412 962067987 847425544 936052542 86396801 618567151 407312388 815904166 36891001 173826359 782625230 865826479 786861517 906437400 247324547 354182282 781771133 959667585 568391692 884351104 142199647 156977292 959876675 974268399 476488279 760072614 517637314 550481588 917789672 982440658 396322037 930789067 26635266 378517497 564353215 757455611 66350284 435490161 485218989 883115319 176161955 844654869 953386740 957000231 558718225 823606630 773914939 911754763 105990848 797596868 790182411 852827801 641904794 948176641 246548587 735665527 143116273 180871778 881006887 976295212 202528165 582938157 484269230 975337640 635677351 813355826 764670263 824132862 133614675 360817429 231232030 606091059 332993291 515672563 493300226 921476509 621859796 733736426 408308715 744943014 84752612 731352716 250336964 539168912 57039443 712608258 547045648 835467727 632581126 981392935 935281598 978892521 191042340 715915243 651698100 938948394 925081125 957894762 652120302 976574575 152699813 746085334 718001648 728659047 458906935 573997243 242209169 284660035 628435417 708509966 13694166 27983091 852092641 957218430 879300128 927748206 128721455 858548992 547257994 950941777 946571075 983858470 309612939 352673610 658435485 685316286 413804924 614637707 54719946 813382456 868886080 982486191 309495380 687068456 157386374 979113598 631742611 638602151 257158472 806442251 236150735 754184368 196603664 473748559 958250306 982211155 449236712 964839454 659834471 882955301 616679729 947996285 1374547 959575209 350921246 512609478 115572516 534649350 869677534 921773731 252368394 478563816 536675664 780322402 1963042 905676020 482285424 825204693 484960426 743193864 109199509 513813980 188703835 534944772 915114191 966341703 472388936 795504310 180628242 432599783 436554491 725257455 992824870 998093069 15285174 354862178 776351954 917148005 926439060 965731887 74270512 684338152 708446289 928735662 538686447 897254487 705164165 748414107 528815869 843689114 377496909 391165279 298621648 932913611 302078938 534476473 186109367 452125348 662319843 743993570 182457759 940523890 813309001 904587878 556186847 968478695 569900695 919608724 305143739 917118374 635767245 998422745 90006576 178059934 681977045 974373028 714752508 775385478 950905667 975285548 845571580 874137763 502364721 764867375 18914210 902594425 844256043 995071623 793770934 871737242 283285486 547683799 526646647 812896145 571087995 890297753 842661865 982992656 727895312 737890506 374125042 752088071 31983008 610082613 321074448 913285895 236697355 549856019 944540005 961378905 737203203 971976618 547130644 850133701 228975821 238727650 694724347 733802348 322195591 442847507 826155913 921841565 437215894 459353048 402438343 477011935 6117642 613565182 569188591 661892076 194643225 351745629 352442809 385005053 587611852 770536827 281254445 816158746 167106000 394452604 864848947 910605971 37801183 454128189 936968192 954407162 748582739 774258235 171089903 392667950 729201921 789148900 536315473 941010602 888186206 980021560 719657985 940665003 768426874 958384072 620734017 675097483 687387951 880965843 609197999 708636722 904884066 946654967 502639480 637957933 275731926 692615510 744127219 860539629 525485340 594817914 417763520 519257999 638050262 787253544 447876694 937380218 536485203 967530978 586481402 783936578 346452952 448336869 145341871 229558554 578015074 746756688 686751669 883606334 359158567 906182477 657631051 825165946 787250584 922864313 555799934 598453974 790654750 847572044 422618564 892094340 275718285 821295174 666008017 970569900 611351080 636668276 777373641 907815411 431068380 886424527 500032805 541472788 374417988 556940709 559679665 999278436 314699029 786306363 790551690 841390966 174760822 719183648 290244832 759624098 11866798 70107514 237044072 599605463 92737434 465050788 856435101 986576775 689213586 959387005 444257782 708190384 614767568 783315754 880117080 898438938 902296297 903187495 636263505 928119468 845708733 945342275 460779317 760844059 200385488 859268444 116072126 742223183 343320100 665306327 240627026 634036044 203697084 595806839 125127234 591165867 20911362 977035418 545828040 648392341 396665897 580416773 592950298 969503408 625962109 630649770 904371309 923637438 437992343 441721614 56059007 579837007 202442690 331912406 342890091 628570894 724200312 970797189 254650327 645255341 519339252 784177133 347329836 893249199 196097333 716763140 820579594 846230126 420625892 646244158 951039664 982676927 916190237 957890979 722755900 843506575 60210122 721034271 344498556 418361970 272097197 466287147 222251659 759634006 81274202 822518898 301770096 892304642 684731460 983242404 267635679 284084685 556674309 788897505 500793748 982826919 533909734 600583087 892701056 990725478 760522296 895059387 338595087 995663902 465488110 753683065 943523581 998473751 162238940 244726460 188887944 674140847 250754420 553922098 146012030 829464253 425470903 974892897 845920122 959632341 426084316 879162554 399467773 457200244 806644510 819624703 982954043 989485604 30958836 299878959 886168595 985348722 661584983 997030588 216379365 300328370 121706462 833908799 949663065 995670916 671786942 863998623 767759094 772238413 703503838 977535480 347713535 514944698 943765695 947163952 349744948 744722504 108841673 298256374 907513213 932768146 394137131 692112536 634568075 871176006 682276593 939998595 468301783 846786619 613405114 655877796 102974929 901372173 347803586 871209255 816130844 921597466 991097 898377604 318472357 888113171 368087485 595810367 123440077 231146794 938426350 980711256 928961851 984304475 153047692 953194713 819738529 849617340 61343027 743737113 800896942 909118514 397856868 998464349 984888456 990717177 214141999 656417577 121007882 600036448 92879551 126041046 932844849 937937946 737147822 925854029 921928926 983753436 792956771 932526567 870675133 969597090 863533622 909123987 223470462 875211909 452296329 693949912 548745897 810918315 838089165 861964703 661520738 667117542 1309898 949812937 35174989 859725571 420124289 565385642 425172060 748367248 836289262 850560505 832743914 850979674 698657275 957590280 160150152 332324805 748686244 994723342 606029570 808179201 104885274 210109604 359613772 963864548 841523900 969888856 337158001 622146413 483978921 499971322 506903926 601832771 442633054 757275722 344007570 366623465 505393322 555448049 87067041 348740107 844001157 959031819 2778307 97498248 574363097 825703728 927367013 964774179 860410805 870494363 471694955 983980178 657577955 735961812 688823147 924419930 566375535 900015212 213456325 989989111 145010433 830483194 7702117 248972782 167037191 750913510 970850715 984303152 418092279 966741346 177268819 856267365 280224675 318727625 601463829 920811742 510091201 996450269 672416017 688224667 979585730 999126257 272687117 469819444 674558369 833245123 899459042 900440008 949880301 967811983 448922480 738856461 706306354 724931720 531480219 652810716 19698482 307849949 621849177 907269741 982537336 983395131 882381729 997019318 672280632 954682521 594115751 662240960 803478298 962114800 170033829 365364409 543889191 651980067 674603455 902630012 71817901 883199322 764878863 953053612 742230641 742393969 549640086 937411087 338825846 895581533 604280811 789713656 18216409 108500718 178135896 674303959 376239151 593902323 249674565 301790479 919935354 950091490 522192736 692349635 919154393 956415604 964507027 975178327 24899720 734567333 388877204 953172158 376273444 590372772 571107331 743117881 941160081 965872644 855736517 967952346 563601332 705876884 192189764 836106913 513212658 734858423 349767869 592186328 34821172 749869340 13197751 425817424 637508450 745714012 639907465 949038351 297619992 541925830 209344698 695225028 243295997 770326843 103594477 250256772 992943979 995867494 544259863 749334558 403510448 443597933 685148853 700810916 570820273 623704834 305931184 842879634 849846664 978912902 245795438 381761692 443980301 748296015 548098791 993200453 452373543 747696981 96264988 439187100 802967590 868596753 630206320 659703388 246691660 509581921 292727178 904392863 650500219 819673753 533193458 988718431 398410222 826943337 729754736 915157592 351335477 664593173 411189094 496849056 939072252 946616280 188286519 867589053 619142682 780402342 662334657 719334090 865990025 972372495 140471151 927059366 267938086 387594537 632632166 982231511 202436407 680931609 423272617 555208177 973713054 994630048 724402381 753036756 723071876 997119051 171768799 490042647 314195046 920058374 938446931 950858556 754050420 828165967 111301891 692161691 129766421 460836085 360942994 747830152 468657622 627357722 760370971 911712330 375987164 450219610 496065977 626968836 434642748 985452335 476363594 789425090 396084021 487477505 333348668 383297253 864727109 866489240 135784452 437427550 175125296 531082593 865888358 921424871 717212632 913247717 718115002 920968835 343494496 825747045 804827847 847592779 66686422 229546097 951391285 994131830 822009656 857132679 252901195 633838239 516641864 836271100 398162750 577225337 621565469 766096958 203570878 841432974 573600058 781786092 180620055 945805712 491779383 960941980 790187652 808077723 456807249 606999399 855997150 963690536 653764430 780961231 967250857 985724331 26756742 802324084 234315005 439611628 95731892 410169606 692530102 997108579 983517878 989454734 963956800 975156892 151533276 289455822 873630181 882600751 579618748 853710009 963703766 995314967 262797298 802495928 115539592 709764710 998112128 999263784 689840263 983733477 912685890 959556955 808027281 853781971 395760519 526130324 989185053 998987709 551536047 934194960 149892404 641301691 263152834 713524244 521494758 952161812 906572390 959832106 654235705 972801996 10063414 440769755 604382125 987232860 767401557 780561431 615089362 919778518 818635743 918543080 105916538 559352811 42335745 948742943 446432902 622032985 612343259 685351773 146496452 553071998 297005830 706967133 752150009 941595110 906074735 982850659 530206767 954625590 937853363 958432079 54417482 187741361 113330291 933346812 779157867 780353017 1288436 230946916 503884671 573662087 463132885 699171604 212821569 990935165 789654232 826951710 520190222 977967621 608476690 998214683 719612190 893716671 598571496 846104318 870963952 915838529 577568303 929622229 160678205 244917934 778380239 886381006 386365160 538276544 623848630 667964452 334712173 584033185 596919892 904179085 107761594 417710915 176007783 778886549 994275750 996247527 716554075 855534797 621573937 643486845 616037718 972298069 429974187 464269164 933667768 943532598 563632431 819724815 64533025 310711853 770277784 775791036 762066657 829261483 344599220 969019642 975016528 993405100 518214189 992114455 941463685 943374377 49090545 243640476 843871937 872065806 340216852 546656993 201319305 583676059 83909035 837463580 173640399 395355925 775041183 900447379 775309554 978975643 860533546 965255408 439238705 902057069 573527944 853768942 301156533 614011601 734545869 800945386 932349200 995972442 56177321 381486139 414801597 697102824 466301081 677502443 973495245 983226071 589027631 614814080 14303114 664283112 827498748 963912433 971918051 972271236 106839731 137276612 270402716 469923182 643845933 877051630 65492327 657097966 500992469 871459160 362680954 950818957 295641801 575359304 985147742 994417932 426714705 852298562 898427569 918334888 592032774 643481260 197555932 728837233 676128896 901264786 160514933 435721725 581678660 892191607 871441156 944338804 611055995 930372806 45432771 275113163 668342970 917316570 849485367 976724816 102508000 923760906 915030178 915712137 236222522 636029081 134572044 288676760 752684417 840908935 349926294 919709364 35782634 38651706 906269634 994411101 56314160 72880296 410803982 863730459 572435813 852414898 250114599 601981743 385596198 507374901 143503199 927333416 683066242 773205342 527113540 598427636 636893368 899518199 871380036 873417113 443664561 501289258 626266031 710133299 484431056 784353989 136841726 732869905 368151919 489246767 697075030 893973383 303596602 634314903 76933040 507793470 371067604 834246365 40397294 414547356 119320492 554171859 272974858 350029175 413372943 839679289 195220881 499287872 734715159 932763640 984731106 992170725 396340610 848339745 715040325 869078518 510336324 715588644 196085727 824884130 395561255 876965727 472570445 974091266 336268786 567561410 357643885 420672930 508182948 937460549 464818590 818335170 861830328 875865646 966203121 992545076 446574816 934469349 402126987 771504106 113363365 161209388 911318332 964123514 151266774 841832412 191616185 212136090 737494639 795173441 704170491 921290778 935093967 983486093 941560178 943161854 499154969 951624022 360867395 585495177 152451756 914434228 541103195 732143915 115846896 936302208 907608690 985814022 301394793 652747613 699550997 936970082 783634301 873101992 314422210 318116079 894998613 900909261 351196596 516439645 258251946 804623084 553635953 572182714 799489652 996824906 591305084 989824972 16111997 425481390 904945067 977964219 572163489 634409252 591011836 814672291 388330639 751141553 649278074 989045296 242194857 653339403 460541021 659042167 996853316 999224557 921593660 997591812 933418937 980235568 490988889 558699230 421589037 714876972 149086278 161157977 723629514 826987516 737840292 765182794 848772426 902234941 792769490 987271817 462155102 920043360 882773821 960830194 492802579 736553126 811891013 878368035 256680314 560229735 282771670 413065092 76742734 935352588 773260372 836496895 821373112 892914730 182024195 353891542 889377163 920374111 929900338 985329628 888605890 951769658 704657906 799079556 487821321 568664324 628018636 832182827 672694452 789208720 588098157 693677012 973830405 989653770 576996957 619716523 49082935 161780376 897115688 921061084 653992039 731526861 77998461 949303476 99447485 755720548 522849512 889369758 614987892 918476716 43535245 851909132 304630884 623849580 203466353 296134865 379968032 766790941 704215770 965577227 770473767 836598663 41360105 838799071 440683702 990242626 266532508 278303028 565923211 779791631 850808834 890123090 239463451 915201682 771303527 968337442 13909536 197532721 384602219 813222088 315777172 888335606 812404997 863371987 70473940 260713618 40935938 424147114 335770491 697450500 403372215 694003994 354656532 940870220 450321676 721462101 535014044 705853040 647382131 912395853 491774587 700163695 984307617 989403461 207701792 629530542 128600118 907447125 520292420 615539785 386339742 609867873 44110833 516214348 70814547 175396371 447673813 639746463 45429501 435678761 915784732 939096304 962358710 970255528 433895595 798221726 569060438 851474073 265894212 902115931 138421392 215622174 746578471 872649166 474090352 612923272 584632134 810598363 222494554 632698206 192663732 867361167 933639777 937959756 48837992 773880665 938308967 964943595 112947450 549566144 798507223 931699756 253432286 492057760 883604463 908163266 282077860 512797766 340788640 546857174 952984970 965601678 114757241 261274269 695259656 769195205 613433782 774225763 454505297 857002691 934039335 992485770 179063960 901748165 417191475 672656014 116527987 812762496 367643778 391365651 573215112 820266071 591297827 861413407 891995432 944429643 77166354 236353449 747255988 984648771 666598026 892880147 201550256 528862245 105376547 228286398 286569116 343369554 284888313 374599470 649536522 904259357 237999914 644352443 447561095 584362087 860760807 899269488 132882403 927677072 935573787 943101192 440121644 660801153 743406 655410926 239756776 262508843 482504977 975063940 837489587 977147146 135146380 973454393 13648622 794172222 143984609 756761111 414179150 744407329 998767264 999229966 458352275 574148459 947975836 966553197 529583725 972464508 654554759 798659697 325350151 695495787 715353915 737942601 141095361 800100567 136958203 161129362 634092155 658882839 468592462 545295714 688406031 996000208 884161799 982798646 124401991 927646571 249627340 413094046 874091353 948174870 380517388 436179909 268375190 372509480 715079988 921579325 938918648 940545529 289981289 867923087 789974935 946296358 404042033 426093757 905655097 935793233 588016918 901213289 157756114 774970226 356917221 406745521 25092267 619255363 754494828 778494622 471319059 708131586 668649475 875429129 276238203 362972120 764151457 822946980 850949110 917334384 887912184 984476475 806328319 919674225 16623118 726031306 335402568 877287413 964143693 973678035 748801577 825254628 804324670 915749022 17571429 715932939 908145924 981826839 104154869 345709510 591851383 904565719 933334963 955193131 930938186 992939972 635836512 942456990 302044253 389558596 157688947 424911664 49989829 110557406 839183162 860820948 386716768 564535666 309347715 613767320 147532255 802549404 343696569 516619915 410530389 621580368 5860027 476816547 129931561 627743381 207509355 435050493 650746044 651487761 717401062 858330296 914482042 918417825 336617683 590606406 162793895 729060040 10607928 458948971 748416800 788093221 771276659 946005480 592791787 823898623 409724350 425078395 657550528 701465220 3752180 263188509 787415064 830312037 381784481 746847260 554049078 832577542 262415087 687634318 60207762 280464460 959732009 984689488 727303516 893302253 627710136 729854554 628741628 783978474 767561935 901304756 696032393 983011273 770097917 972322887 521033583 768048823 625815248 944967457 35698950 234674881 455472852 930505025 632320383 807811569 322511640 495803615 395901003 870888916 321909093 360484984 451289587 666664104 797888752 837485981 255040183 261338174 365721879 622218507 846367579 892329126 204066872 576426711 65642880 370528697 607741224 761004023 413977891 808499525 332676445 829177672 70141825 687765220 19057613 298770650 349100476 493434966 859518534 870807385 80575960 963859627 626408736 676974488 591310020 619075544 827792941 852607360 582364966 922056476 947338062 992851132 38933331 531769260 217516815 796953439 343713364 447789083 784463969 966606482 640900011 683793482 341500909 867276397 559122385 840791386 224843151 472998629 359053673 411630283 38584768 265926498 573160950 655730575 182979335 374651800 378619389 759200189 101012260 189259246 896236849 976846109 454432832 480745846 739190064 904396151 996829084 998111869 326777015 390042089 896273915 951507409 188963345 428191012 626892387 918052069 895795332 948442339 97471239 441721325 748091450 880150395 85084154 756724768 365746942 847443317 113832216 649695887 399458902 626912665 404438418 926883323 642870346 928044075 446457846 789599694 931424677 959549587 107214755 562281129 246031801 628275315 924723557 992839878 612903099 677317810 861568219 899112025 976174387 980740625 489053384 898069749 989008246 993407333 159677714 164687742 136794919 599537724 617218556 838196482 546837265 931835111 765992372 996863194 19443647 215618824 5756029 338348632 157975698 468496611 887831260 992607237 163963969 767943082 30062461 977693310 682575986 852534877 128383692 308619504 423401779 849041851 158372150 877168272 133827013 739945232 23350971 256880011 739474032 828938114 718409934 898440257 317715741 524079770 537158603 685760542 699349214 977830692 607556648 955085056 473369381 805215552 609886764 748662934 319617440 932302880 712261913 993309458 120240488 979064549 738543329 858796364 648026806 683939630 363201578 732498404 526347642 789576357 612334555 826792146 307200348 654141735 227872311 619730489 223801438 855838590 402878263 763336099 724097566 938947805 53923003 465115865 120932959 174018335 7723060 488159910 754691479 974001021 236155693 450271377 254748511 731492894 136923618 464436146 646781275 783992910 390473300 641763406 855999081 998628267 632137517 980634809 910558730 934423711 189956297 198113772 570432894 865124213 488997703 595866670 405538973 924848023 547256099 796747839 614445355 748391914 746621808 847679822 271635856 491648867 11194767 432944280 155685857 937268201 823402182 950789445 169024879 507479233 969069127 994407977 909091315 973068595 747724005 752965311 61156033 861651044 157405080 782731286 637862381 707077766 265602621 701738053 558413594 944352626 720191717 831648731 786192702 966514512 101559946 641866707 161892004 574038044 99695755 441368307 116744524 125916523 955285173 962299363 20566150 421099915 298022286 900618408 186659069 957984606 731480629 905823451 975271941 986701994 173536177 561277224 759493004 903555923 229541169 923020535 491861637 628966115 535158548 634127042 662051460 954331740 838718982 903241410 351072229 468118908 765728975 874549664 782553570 926224547 959384790 996144693 758367 846465273 728057121 783132886 209116651 638969367 172340530 665943562 386089356 529078006 387818272 639501768 294012474 448777731 722844399 980695255 471605527 472829712 629891724 829036882 562502242 595089503 326995679 730022040 581547715 817222693 235515784 373314703 855953700 992111625 637768152 775605308 896972424 955880473 309628027 838314167 169593524 612066841 788540410 928857205 783776062 789476861 378844455 711036910 419926058 805729283 241364285 626746383 298538747 770539013 803060822 899700042 944182641 956147341 553522861 875696396 417864094 799737526 780340265 875204164 243890169 761737389 221944698 734783127 929803498 974160349 756652187 881508609 948629658 984933409 38393985 630958910 556933235 794163649 791025861 917558909 541802217 629337897 240034259 735851531 470251034 843832538 534079804 657571539 214967617 428043621 912371552 987423452 559163485 584320911 471771929 924156983 37358739 292429408 284987716 845214796 775348156 843766080 896662501 908788303 458917775 629411056 90930956 636355516 748830288 754936811 117519375 617593106 894456504 931518420 239671842 432933178 517907532 669555631 376274621 967621898 860244372 905282869 684497106 716778356 151327805 629523145 832706204 889409592 269101343 510031587 483044606 814782706 974836959 999013741 870502563 995329859 809309590 915710345 731299380 931370651 855375423 959896532 463204524 633996911 768205051 778830397 605919167 966449977 23114115 687621655 46097961 363457080 655134347 953034441 160985151 170516013 486438197 718968658 640574371 641007904 745031840 959889124 885007671 909890214 925353452 957196856 460040717 753691209 182532087 629757080 471619550 553315770 160622802 341055860 745664014 838140076 369383896 897429000 762928946 863431183 506371139 697718024 541949480 858523662 672311088 834590842 476503701 804653805 196872548 507469244 296632287 986553256 323388712 463693711 944683831 947328112 684043880 767627204 69090970 357915189 216905895 287829339 471249592 994753172 692154567 831505284 665609077 973531959 794299861 857350211 921318447 941926268 122798108 273381355 937370922 974056832 53702772 861382434 874785868 927779819 695792574 818946030 933772148 983091511 393910439 577162215 503042879 718686746 802476935 939435945 797039015 982120249 451025065 646344237 299403146 642113281 56896768 739982654 46577171 802206027 797453862 977396938 35228775 462245922 955396376 991203479 260883243 357911762 737492307 885971777 977369695 991228635 496461528 634123667 426573247 657760827 204643177 909867133 622585794 746604324 404199849 824457511 62976581 616314909 941982396 961596516 993953624 997170733 827450394 954332276 936549290 959189805 582613809 730674950 950756453 956341827 578952254 694627888 824001542 956054914 568333430 646033268 373902983 861396998 350708234 486492256 957212499 967895034 526625549 883776641 799678320 989906368 808037542 944296354 485136632 568295173 392956885 965903056 1697325 512724641 359970474 667825860 255986462 323201295 949884485 995940672 969342786 983852232 531372939 592568184 541060068 619642005 367719771 936389576 591494415 747145749 24782125 185300099 172113074 881770221 681303483 928346865 264670281 552096887 527396519 532653853 691063826 752332028 337908357 610221054 112971010 391268713 645032443 910268676 720378226 748263884 687008802 899008566 757559457 823102867 380516089 708110184 661176535 859670832 468999851 703262158 568767956 938177650 188168894 336266664 604820488 716834132 832748436 946856934 355433237 413207054 655496453 728669147 463440621 934415970 658485160 945104495 132982793 547192933 259656126 299025475 269224972 745350325 128288947 344981297 491431802 630992475 190172156 650737700 154525237 494021654 246867372 930258007 15326198 474883552 354612871 805307516 612385077 671343041 590494231 849405514 834512992 876385121 216004318 330145443 864831573 908556004 179983770 607420974 553591961 636323456 698314737 807422822 181020034 536121267 235445569 464447811 409433004 438633239 714246087 795687843 777217261 889038581 513676917 659991628 794901370 986375574 156368892 724226780 627761581 694079812 452705583 647203933 297790788 571238438 709233056 869382794 633560082 679948689 25823935 877190111 456903780 853217479 444221131 639068035 316057549 325421406 103930505 635132777 947135561 965097040 42563607 212177612 649817407 855064713 952336920 963417369 555540243 642720689 546615116 595118178 853032968 955651946 100871547 984091057 744954723 808803956 169858325 263927807 401517406 826897544 63366746 876515698 655817688 967006150 335040566 509376567 328836864 753683071 788778997 970445257 214536866 715035504 273741857 420457041 740998804 912390009 576684112 943462760 584858364 675606332 138291916 441772268 248940178 839419487 911321014 923952721 362111876 515778849 879880167 950515644 291390950 864723384 70219537 911879881 119623563 662357087 32653216 557402058 93310166 520313689 341098873 682166789 478095543 551796036 375593308 379548288 820753466 913140132 81466006 494953954 610100821 983242010 215081882 918772700 384080904 630276745 77129785 651212482 419020276 815725311 286069062 820010426 983295249 993537006 940895130 969559440 282103832 526456349 81068876 337200615 260262705 594593412 851589263 918466920 993590853 996862720 19348717 691413395 505946495 697798235 615201766 667491975 58498634 884342833 261365629 608634944 622162607 852238436 467443949 746042724 829035575 849926798 251687459 542784309 52385716 950948237 717888976 802654104 414144255 674346244 204412346 584646704 876086830 999064477 614472900 872645154 878463592 899148487 852458648 991511458 838093810 856513774 201666343 643670297 779972101 892119162 208020492 374273528 461710078 894734039 230191769 754376716 468729457 768495650 634542548 868461939 809241505 929089441 375564972 599187043 772237430 854064719 199296673 488759040 486220566 749544026 928377439 995688903 644783805 769513359 393875217 538600784 312490882 852581138 858070960 979550409 425935148 932810570 268867302 680186699 421602746 617727349 180449912 314743631 23996397 575633391 764027689 917547600 772014733 914067294 644909935 871569588 700944716 760069789 953824387 956016365 493335523 541997783 403904809 494132203 16821303 925072543 107339297 690214048 340572211 978897231 962121324 988705379 241454158 718516835 937497735 942594278 905851869 981764220 232851057 441969426 843665791 925375849 142899849 717760993 171304918 186205412 595099783 643216438 185007946 783440107 683960366 713751396 904465034 963460207 956594070 969453706 156375731 754049139 600290885 646967468 35776554 177423426 453821361 931429989 48944260 734809285 15228950 16849936 529126058 803959178 598467070 845250858 729467877 796123139 642733812 687821587 796635070 900858208 560320465 956816655 401225670 607250380 638188676 950052826 634603219 974647340 618372604 634335422 776530582 833913819 808868013 969073306 811537356 996894118 800278427 880196260 252422661 357611018 471380877 911672229 798138731 840643594 847421038 958590272 688821525 865743633 260468027 903577512 554685037 682014041 905474761 909440289 491250017 718475356 649456418 721160183 194067281 813169908 952793320 961496118 327354659 663820312 446930323 691729045 362633638 504458724 711384054 985628676 683209553 963485139 464079967 598261904 730137673 923655142 577041497 597270765 300619998 927034091 705266802 879814247 322633246 604925720 490015077 556172807 563089819 734105564 254662943 511110074 580966716 733305884 660696146 801423227 506998147 654099763 574471153 715454136 947796289 991238693 820882065 917204612 765052618 793563411 913810429 987844581 287559837 403477720 698460905 941503648 481539998 994148696 174754398 853372946 540101843 714993710 197068747 674170740 28928913 681344406 421688708 965056082 257141174 450637003 386214354 828693904 203673966 580981072 654233519 759044252 953496300 963659907 587193570 692606200 219052326 751125704 60728778 620884321 811714365 820151916 17847177 612283186 972030743 989792446 242947275 978051892 54222944 855983034 501840553 658390711 930582133 969133882 723799219 848353165 172985297 237846126 389543840 715469389 579634557 695952900 248027001 976593877 908221691 940627489 961745812 990314394 214358838 238319667 725767081 741672926 713123883 864332808 675858129 898673554 153653081 602476623 44030609 534284899 569083804 919746330 138099868 210398654 927617640 933576461 545593909 683346951 697913294 817510551 335395174 797262392 352416285 464816539 710987111 810403755 685135286 981066750 415237719 504762152 730087531 818759574 639563280 785126544 969115691 972674352 514510471 604725833 790798913 851258462 69386659 751932841 777997888 805453962 815331798 967921912 989760030 994165535 640121836 804304340 329460525 874837850 834212102 920284456 579138517 816362874 981534821 988827251 366592731 444681605 123016003 914692078 512079816 799826769 689859461 841534674 181574148 580300537 618525981 637651333 119533943 960733940 45904301 585765555 900459148 981581443 521575075 788302637 401493339 871802896 16855838 410263860 848193647 869092257 925474673 937084365 770715401 868410211 560666982 671757255 654133442 966817722 427201391 843814071 97378249 198390442 122629178 402261416 130093337 821635764 661474926 933575541 738086093 829217448 109753639 587294584 688314894 853027960 754254284 758212283 155077913 392761842 30208724 468269669 516511554 887793173 238768959 545253896 285465274 568347417 411828857 489082901 430464626 579989016 627839014 739925733 39678341 853678090 679512898 936363691 985176211 986365659 564849424 662467765 870132087 908254538 485373805 973558343 824333581 978527301 91755247 583160479 602384866 758215214 840366458 986054265 675704025 707141067 700525054 839644371 503201532 555244292 627324216 716851199 896808177 959540852 286337140 427169770 190788292 320248485 445302430 533976749 438661074 694051801 922636750 939991482 242561512 320957612 514286766 759848749 558844056 981528276 567490111 728350849 43570037 885474665 455467095 857880875 506325310 806024276 526289604 557242339 194459984 840999942 525931710 810676500 877505325 975909068 982341728 990149748 891198562 935568765 186028290 812783643 597427765 761850566 339009182 970336716 559865142 685985632 383710971 424088661 494869516 768065571 722547588 977315059 909983722 914328282 674444739 678550827 701775334 946067975 837073043 946607127 654175400 730499451 221903410 264430902 278174771 667350674 664486699 788025308 427662052 849241776 279470356 800998926 987361442 993932511 854819354 871678121 896127013 924462335 823211773 858422926 684860528 930613295 332144549 531847986 554631344 810809219 957928854 995690348 59656030 930727447 657737242 787592031 157835484 938704548 736789177 767121798 548473064 706912013 96214229 255674396 831402712 907977217 934730592 947617662 401635097 759611457 144255166 389003012 404842616 788141555 691518923 900064096 822817560 889917519 696899596 922875186 164838972 679912189 36423082 566156014 840030783 902614904 81344465 295979075 847691965 980831493 947239913 952746006 572860282 957131302 62742218 69996043 489969725 738731474 795361350 796048987 916124948 998451402 210553671 903842827 806855257 820583791 727034864 839175975 690271348 971256152 80262824 705778495 352607234 890937839 421208908 873562886 949755733 975228733 296403593 880145974 753122998 874110864 575013231 602430581 416445266 855217284 884462985 914984936 392487153 727189526 699434340 755614337 168329370 189927489 27746184 884865351 271740865 392743889 38715811 212595956 462743362 855210558 181413447 796115064 927970000 980107515 8295180 700656532 250822045 985325336 738947760 992373843 608487013 739939356 723411246 743366661 711479735 910514176 970981004 995892617 969183489 985452470 357818358 937085105 910561315 958709941 9544921 376974365 784763219 950547894 940366726 944227174 436846092 917234032 251820893 840030834 317793435 991068411 896846574 937266628 710064635 795043814 557417575 680127316 673104330 966014765 834500893 840550127 90433718 297103017 77587163 186846027 453098253 908080554 961966092 983195327 323218173 870004910 494675341 786749884 110175761 769274697 163629542 269464812 572775581 627864071 87333501 456530234 236473551 660562729 993181591 996424332 707468275 930849918 20276024 122246578 646220792 779231582 801283312 848644462 815793927 961607987 964751490 992285788 147206755 423315823 244540262 490647140 678066246 859289207 866690722 922000152 909174255 988501486 964904939 973119111 292763837 379404812 699639063 811277155 481227955 492713507 59378403 246724517 792820553 948506884 857888505 964391147 161895594 460150386 953577763 960396288 455356259 837461169 265225748 299785797 633334948 683588495 525100493 834405273 361781022 852308201 385481271 702050647 166758082 774976272 601967086 756409587 1228086 497675788 315108428 554575086 875876525 941185314 918618621 963794172 613576016 968977476 671664400 874073104 129252968 683990418 883907973 989206142 614473508 675166525 386930067 626372690 829804962 965540686 549529551 751917873 369977331 535056453 719195079 821322765 962017897 963036177 725588981 730286825 676415276 864714494 227816662 817528688 556290564 962913399 701814317 804030780 804241278 881815077 169176884 440092322 218905817 984453411 681579655 765096328 693938691 942342129 909372148 986239870 261520556 546486009 237537026 834473035 93065434 945988513 785622192 817776421 443912943 872578337 550270898 577923468 276481945 597748910 314855155 929233770 3499379 457047512 769575182 855506751 307331017 582926301 777581573 979648315 676552346 957278295 415143635 706821338 511145785 808120528 241685803 896515925 989861733 990431536 229726292 914343675 466435436 831149019 859952792 981877182 709617745 903384412 376095396 563159538 847073688 962851901 45456144 915949025 349817657 855149255 91362500 115438699 464437452 772775926 15953029 170692503 978489295 982056827 48737447 664489877 601974744 910025040 86326289 604589465 495315360 550300343 640245715 695714669 331088540 597199070 563262071 889669786 613220553 941999706 537817024 654635337 874526424 980079264 404660092 633015298 36170420 705353213 920445124 990587149 460391587 777895738 135491409 728890513 136821871 549803913 127375609 538757239 347375656 390961266 417469061 778640627 174125737 952917652 938693304 987621016 148046543 429861911 681992126 864575228 434137275 554205662 729542028 758804489 883196089 959097111 62303816 521604272 989605937 996644250 96486030 628687038 954350925 983169979 507603744 631659826 793928174 819503616 854325845 862024988 816031754 818964870 245623711 621098465 394901924 734456343 739893228 852334077 403109448 444021170 384607797 827773762 345601941 595726309 975612287 989610377 734770309 852461599 718129628 729003670 630980858 927643911 572829324 775481821 120981081 967968377 801593234 962850541 874292241 908865341 103791029 600734659 661806319 904669774 276700148 403890488 552928130 706878629 306086715 547670530 270311075 495281061 458529929 731281541 53980631 826543665 668630519 961333006 928672927 942527945 667799592 796328130 724865558 878404313 376927208 789411523 628882942 953695416 583986121 869966710 165687722 899464988 967608649 967990309 149073697 731328604 376557867 783065967 304851081 830749229 666189744 707017630 187042710 358554953 544781580 802955013 671144010 879338787 123621174 459742675 453840106 537315881 325824870 602654157 567529355 861431975 598532552 673208793 527009659 613159564 499210443 929613578 785480969 913987922 797156532 809024287 370130413 824270646 262327040 530093322 843990411 996319770 601191072 716449542 69798618 560700776 768036812 857065691 664398441 807042731 940459185 996588471 418069574 824910266 418881982 774316430 524482074 860964176 879844843 973914564 71078206 912503785 408319906 485248131 327185205 952146112 573302415 943761193 870478897 885630752 708258877 762045983 439184062 682092291 784719553 905246947 49665641 651296828 576466103 634240983 829422656 848630746 841274248 849934894 136183627 663086125 805454890 974909624 124471148 982135223 847943594 895070789 637621676 691608484 509867481 967624591 199301423 653549493 328136085 895821146 883391557 896551203 977304471 987338042 275562557 508716368 808222974 938413693 487403006 791605423 887997212 939306113 125070260 155931957 184731968 255129498 994980443 999359172 979418921 979618811 543129645 887891825 897068774 961258392 877676415 896269050 405467707 762906261 973882522 990153638 451573042 934140657 365074734 766089327 492127245 575645061 77515683 357031110 430641542 980199283 617758564 689691111 454147931 540594393 235432402 809112832 387907793 955970833 502704322 528110135 382883499 857314159 858705885 971473148 908670809 913305607 418327187 773255769 746800789 975307961 626930046 819640795 72826032 319005866 757053376 827809067 698967586 995453246 366617869 601742818 687845437 884822839 374635223 706992325 346368151 962382400 878113219 993980940 642588003 996780070 642473754 872919466 133259052 918987375 358926864 704790540 892674634 948388266 285615392 568066504 651113635 954696362 999325136 999325449 896875919 979565186 878762942 943357069 421615493 550423956 883702671 891205701 941634098 991831997 569073703 629473834 993050402 997189637 115407242 482811227 295262694 590977883 908677942 987986509 985975092 998352941 496727351 882256824 543224097 816547362 178348747 233273644 53050523 127142845 686363596 865637912 42090035 700711495 587909807 722230234 127706471 661429355 88788221 315382831 248795640 774265761 410051756 543424703 980057742 990555055 4292641 177340516 714564704 793677853 502474731 544021129 507550179 533308585 633476616 811960062 619439787 705243877 748943335 892620311 425719182 974705555 228160509 384680615 429481015 829085463 264551461 866618025 578769119 828035166 91844646 419887910 118410192 967190839 514145855 735311098 449820222 822824940 728552432 968816406 745366126 815675129 316690100 346897199 51647920 781361708 443520865 772053230 561527971 899323171 431704148 525726768 561249467 585841889 491355694 506955677 302402807 422226678 831434923 915209845 27317414 813241122 116330487 986287741 653393928 741435419 29889047 626576616 250526816 571021374 837250551 874608726 850091564 968240217 333862609 704874101 624563654 822346906 204561387 283683831 666611593 690960121 747537368 853928346 465332321 799664406 866336674 905270940 769850165 990331419 161749665 210505588 325028878 604359763 563201022 862704365 79833664 489509563 584660320 739382181 529344088 807286050 573920143 604595435 814647111 953495429 123007333 959582958 137447859 795208668 368883881 647222933 514730500 857388714 162716054 801968243 185521737 299193202 201868107 431207643 886225947 975325012 779875280 789669785 282674429 457796027 893399858 961196873 453736180 805951604 10871741 924782483 554636871 579614591 651183845 916372434 624330134 665250780 687671688 730180424 960320819 973519826 909993045 953703979 928632320 950132889 627524198 831047574 538959638 559196922 582188599 754289192 314238895 493879342 522896709 669168420 677130243 700542724 913494812 934584042 124926007 765855470 325844260 422759167 412545853 858840131 913014415 918713260 988447346 996002286 947868715 979970294 708155886 987833398 893072584 961644585 783357716 975668784 806257047 982334341 118996878 427653724 138384306 562526500 597198911 772089286 429398403 474508758 772522530 786571544 644018243 864638872 855115004 969449771 865599501 937175112 937562927 943078800 775343963 801816362 182565503 726907232 870409285 910424573 637595882 891717526 148880260 514094140 511097457 631666427 940873899 948568708 519018827 948866800 755190904 893034703 827518716 926015651 870484218 984298543 357701903 472040819 750089312 808930216 541744291 837266901 796910167 975136954 39479102 160952774 144524502 828065674 103628943 410632669 726098392 924834308 781265212 838485013 978128382 988046506 579889861 801744146 784934012 984766168 603051007 653658063 125975984 647455219 594306911 683203126 899158741 998875514 195851211 575023863 723247474 934071779 511386718 724797711 101780567 734990989 389882671 798839731 531611702 841502416 155875709 582324817 995851887 996799372 759940536 839724424 712367257 862353840 198164843 493866239 925981000 948723919 661213123 975816979 723860500 860533249 973512648 980086100 935320086 964714401 880697101 923984249 789613736 789923800 543999940 545183403 68986624 290301687 776052107 909193112 248308796 504875258 103264974 727834573 668901552 809627180 493772632 891756784 684012532 902600130 79894568 803780506 143263345 398887101 530785695 545633837 1286557 52230384 374733460 605682723 531409958 967185337 202467076 495598546 945199766 960217113 567813197 920537533 34807881 694274343 220897049 422273112 308076195 644601413 972461629 993802067 20218100 562873126 833926563 973781277 510176064 949855207 570841994 652289479 854504513 977051853 888057430 965600728 417818359 761946738 105803387 664830024 937082090 962488219 866286077 960532757 371038741 587982548 837954304 872367153 13460999 449715814 730525172 934859105 341381779 976913345 436553343 747518415 606264684 868578381 679729398 872949250 161025842 892678090 710741567 882006122 407962532 860509522 15625139 438271005 804636119 839539590 716744961 804076552 498721112 944389661 325905919 613994747 835906939 991552649 555357143 738673019 867135840 929132710 680949679 843386467 389876193 407345681 701156087 873067539 626655126 788832992 220642056 783426541 652362178 817381905 752388559 909618325 775748350 815844920 694917447 844099747 972315459 992064753 235131726 806562322 794984585 992720580 507083889 664242389 277597703 415153547 908550008 912655065 475857290 802943611 223799965 815995610 331792748 498653003 281771395 367934514 943205498 957546618 926127546 957007730 460141993 697386309 762700270 814337243 305616817 688308366 91873978 901976147 632024446 768530528 581764028 684031811 884005627 980237884 13238017 356601495 427945627 657055187 850382717 890897225 205699884 308769095 373338730 462043683 218393116 439565071 764563283 781556406 532962409 943178503 702038093 795990524 696084572 810897888 347435628 836033025 383388440 739885926 243390023 809556544 279716677 333200871 951358810 973119706 560246515 862834604 39535621 396923571 67941210 430456573 219807997 778379837 852032469 978507110 598336062 867888727 981624532 993595315 880788621 931130488 179676343 643879229 170094030 702338573 718643245 889145354 718944921 856270228 6053917 516780931 929083634 930782445 98330753 984439085 261492098 551063636 135859996 338331190 181223252 282240770 333677144 560495414 502086433 831444921 924797025 937587930 875920397 935055255 489898003 996308710 990702088 992603012 409914026 907063784 909394469 983273656 914387752 995615747 24728970 284671626 231286234 368883753 636581977 790430561 101447215 447379641 441788381 698776158 738308555 949023026 689175438 898149793 722839097 992642266 499598903 937852781 293642723 522071844 627938124 806285659 239822792 425071759 4151590 73518050 726731452 816950365 415605047 503364507 385281323 994093933 968662154 997802900 828350881 880379338 923974739 990222267 408378366 980834386 657051416 999281273 881670347 963737183 157165587 520053258 804848398 873874566 577095642 916603032 534131157 973482906 412739745 647383656 535663452 962400363 143503264 347324030 314553619 359452325 501559688 577785801 12624198 93432119 966720957 996656706 945502505 997404159 651193299 899161716 460017014 893883702 129299267 951666364 758227792 876977051 127612983 219146575 369928945 755992544 716060947 931261537 274588926 934596704 352570412 501856952 123533635 992789371 926151272 930852897 264874663 353939286 121323324 755741899 508725830 712626534 341360122 721877461 455490450 528504815 588094961 737843826 504933634 877039282 606836371 693319029 898272656 980820149 520839418 662147222 707455069 904220324 910621901 981996228 799576138 938666355 504453668 510832727 186978408 832185170 342994504 466645361 677966102 938192612 723469100 880267023 778616991 995664486 814068947 882076533 700977150 978590658 459391581 846955331 744889160 946307578 378952260 793442999 532349051 677989322 789823447 941050110 768479451 872551852 360177559 447918222 767516475 807346733 994489844 995936468 384756268 921574684 416126858 645669540 595684297 735641181 761292162 862223006 381180875 992915105 415014697 782985065 433850940 755134377 153424824 459697688 332031235 534960819 183841963 210489454 232273277 667586658 471472800 766358205 493587352 852586269 404947184 502777701 160241550 478956896 744743699 880959006 295008950 977849367 692521774 816179713 310491730 780328245 722702191 731593984 504865754 969527007 615488580 860357809 844577198 901239748 480961752 667595265 965414354 965776215 155318197 656392068 192124726 745242041 661034563 939450452 547539191 612694522 145800548 714088634 421155667 614200740 469275396 748509384 537808523 899815145 133731307 783726059 548648893 564851583 717636692 909162233 191324480 630206965 331522198 660351706 24085024 304253007 202998365 594970482 115587781 348760886 691153219 979001045 484669144 685560946 760035887 916864170 602923510 820483200 467601572 959493384 148876739 823901286 523765170 675979389 56152057 566776837 86132361 917753822 658587951 763787815 656247683 728686587 509886465 765457383 185215023 343383722 18621792 399303964 170821266 420039755 201128646 515143570 368665774 818684488 309781762 412471498 431875358 645784608 300028125 940659537 582680665 840757169 633595112 680284445 85126579 203715446 694742101 735342550 602097895 710153253 694521369 752019101 654869706 775864996 862953839 938229312 39164659 65709109 709026099 832077300 452697669 870793607 667100456 769927750 715903002 797947458 313733600 529712151 258281415 823212889 893516026 997580379 42579579 537277682 983001331 991358504 848116644 939064735 618476036 851232810 649615543 686649014 327343848 819091757 736583150 915805967 435285896 865220096 276245199 538811764 639256972 697050043 415745500 642940360 83085679 517334831 150624541 823802553 839279570 841764798 207384920 865715761 523932831 875318493 19119582 895943420 368886768 722145406 980231444 985302340 184026433 368572388 522508866 583343445 765785383 883521391 217537971 246040394 147816759 423682784 754520223 863668345 104846652 214338753 335912316 579964473 157701177 760754952 565025670 996209222 306314267 954956142 236880265 814739480 654342147 711020158 918878734 982031638 945316053 961630892 979191317 998898915 417674453 523723831 539214939 936507143 434158451 981332605 429471253 998066918 666861186 873236362 256716514 946341841 964819751 965992975 491006199 891506786 528364656 680847090 468233072 593709126 342842786 366533650 166909506 471967349 60931530 704406961 789893040 864153914 307274179 823511082 820752971 879419729 729375612 875953804 312829004 399266978 63338707 278526005 884092089 897337444 349508967 821374817 862643787 977369819 119818583 375617374 248653162 293960687 925739537 981848228 52101332 983682928 967525826 993358334 223696416 846437583 314941043 456433923 318638332 702549401 418648421 675816693 959707230 968553277 352144251 364656568 522224222 722968832 85095070 492319025 165129170 714608660 274649092 305285847 654308193 949702889 437729082 593808594 807980678 891679155 460967418 894706050 820605972 984675216 77074715 827125568 909518253 967692765 254796897 338849393 602169990 631304629 546651959 697487225 184103843 913368328 81908079 481859035 152194187 504509242 671728820 715626326 195314591 603978820 835991565 969953289 947909346 978651471 389048507 534071384 406306879 628571541 172678569 538923141 372340836 455775672 219463767 641391157 416561413 909802471 733240487 735388261 846521712 951394544 109501713 904664633 122764142 723944861 470501486 956693077 364648031 546784009 127500352 670513819 211788641 389502973 695883941 948652987 915015428 940290233 36031340 631630814 726259733 795164870 912955994 937173508 980963079 995338740 753598774 910707526 22393504 253627334 829039247 989156061 143456232 373968920 148274576 167960845 972497769 985878736 776368497 998915499 664594198 908567113 936459708 979712721 966487745 989616329 597804835 978857055 847825864 862523684 28731683 101491794 416830363 936548302 252263225 539075083 705709790 896573326 998507554 999204698 286824392 415703247 643781116 902193873 210697791 245568305 951714059 990080517 68268651 452035258 899113262 978129725 613551166 992618840 375714690 538738495 658465879 961136120 819669201 936786423 258275547 334108980 844159524 893529298 694634214 735779828 568246764 928529493 894856848 921295487 875740545 988802059 490967642 831552562 187850743 643927276 618331479 899399979 960199073 983346550 602615911 936241095 696485834 753451345 936425821 938102049 578677197 814737199 272027000 709136419 230002630 989449048 711320586 766855194 594997596 947705402 311343406 516966074 684997742 797911873 270247405 774598550 290062468 886156234 619702506 844486223 850161162 939592119 701824170 777812071 394843694 561196843 833115605 877490752 743945555 945878277 918023022 927567355 577907479 640746774 526541185 876579018 347023861 867720113 351205202 941949034 482360944 869986130 248770979 641094449 738352020 987601091 805583001 980947013 248428861 690045866 15793160 906484313 572699005 720345014 763121485 855400383 395840767 507017143 625214608 868859844 227194952 985321645 122305859 146729341 121259369 986517889 189783571 732564465 939673650 948963931 41972539 92079119 644701349 798917560 766381267 916987677 363218253 967277666 3298485 732573181 610811995 740964873 574823835 861530075 404361181 615278094 118615519 525274070 847170797 895273319 257181291 302579761 400175322 450224458 144404136 770397101 188174396 933017919 937999241 978793488 968399405 981560760 381451622 643804243 556726729 594422378 155353795 173547574 817078661 823549210 721666580 978510455 481551369 672888168 489935892 859761695 778938752 977188995 744357503 747130116 884791279 996428492 582385513 903304667 455741731 981788087 287733809 710622714 646211533 769418793 587238907 832527120 942387320 988319139 79450589 228828795 934374690 955264729 753486563 801731145 135292265 164656199 456624332 937135025 856035112 869011216 818598692 982765372 895543668 964261821 530752680 577997581 355300459 851234772 22834692 802640729 321666074 717726411 617022414 944125823 311180770 450501691 246686116 931153541 768747424 869169433 76751624 297096642 510291477 890828121 122365607 224716255 315939756 801674300 992139324 994025810 629125233 907591965 12747352 321327033 246224713 311962423 320852789 894136742 275163850 528738834 584918482 850798584 721197780 771510628 278206257 392732231 31555887 273176040 255256634 530860770 514896682 778654655 592715153 708505828 550930196 925054364 925274919 931186488 975881736 986307991 76564454 238241683 179490082 744513045 170930699 412630582 777241482 800369342 635048933 643074031 228977266 453836487 753441402 764651542 958168465 996455111 171130661 547091467 753861663 898847279 932390598 953132031 623142536 887377356 749279608 846312615 269551081 316953026 371484296 592691130 82440382 234662497 19654385 911606358 185610393 817501197 612769688 861805440 483868340 732320064 961267202 977929295 321477034 535198811 770359127 917520547 689077064 697263673 654202256 871615829 79263460 369905351 609200841 996198933 970812116 984629631 865067768 974434768 89085736 905569915 776638363 917933926 642807106 859201272 691574415 971570819 909704360 933442567 773970162 864851181 518089469 603782219 177632108 496705118 983651333 988240843 22717020 521776801 610847564 681357663 146787051 767983725 289668836 292060748 922293840 980033169 722062135 763706272 337865483 587190675 989851646 992834219 888755110 952871932 824098659 948065097 778588979 941166061 657679013 836292857 626327277 875827856 697217674 791389777 920954192 945623493 937859237 943236486 671856916 993376592 749878397 843771729 608228209 931865240 564125866 842982789 703319255 965272216 89597989 650692908 297226533 448053487 138339360 187871638 217782109 510794908 259223608 433727439 596086974 745383261 996921558 998862299 334805938 397061605 836202195 912061965 661173180 866510634 790829131 902827033 635155015 772205200 932862026 958074556 634955509 890335087 842393689 977190104 980171963 995265173 683728680 923746996 780020660 992638475 784144789 907476445 568338899 825581637 63809007 728189780 801835006 937626072 466126514 705737227 159170751 726296262 200481600 866860605 679157082 931274948 657569055 976593629 650729177 672902301 379209549 985583157 993391839 999061660 483011008 961471431 990904003 995311915 70239713 211702766 942498876 965664507 421488250 951962038 218259107 406730449 285291130 479927942 742670461 873810229 495161762 899637492 649882217 917371326 387065565 637620144 710773680 746833942 357615604 694723571 487989803 663171788 137483365 741829896 127287249 206525798 162441067 329085254 506282387 914572078 545731329 742102602 538621138 896840311 529430921 726704507 489941650 845349690 106231491 200652673 364890065 712525821 981056754 998949164 422289194 965606747 650804725 731736349 39663115 320920206 178998268 846538797 872684831 887239190 859115435 923456667 841597445 882323758 200214352 874751342 253916719 666736807 313827759 978156899 46541069 169313334 670057805 770760080 290228523 811564488 31322796 185310594 691040293 979056279 475034085 807388821 611205225 956225413 150246894 584825022 282771505 366456467 48426614 865591893 229504869 600411512 457033673 684100716 809434827 991833048 773838039 841952348 905463319 985859137 925581433 963733499 952017748 988599112 102736671 781884390 544827298 861038065 497757441 830766254 753963482 898065440 56962783 838312862 761668439 981987255 168718924 944393599 62191319 582080301 39625898 104658348 494786066 721009626 509699922 954959388 445874033 473078973 884694752 925942558 803453328 988074583 798100216 891851824 554015639 627623243 964439931 996050573 845647159 919891956 439786000 846610240 685865618 768283145 272180837 506758541 206401380 973084379 565606511 889327600 908267325 958457687 7843878 730988495 778214461 791607961 283252628 893574185 172252346 362768786 106019564 824846580 843880775 993440925 947531344 988823927 860852552 864686100 157921367 462876661 360492301 717272087 138355076 713468853 711359981 733450499 721550360 786508005 93536980 796348696 894060585 899885349 921558797 966358325 252876278 688353548 722449931 985440519 466393122 897302360 731439494 851211007 516261519 657950352 247285790 934677621 47128160 896420694 470542850 831817534 980487852 994886442 193250841 253785742 986578916 998651568 133372029 633464924 963284370 977917594 356974741 628423834 598158213 929199970 462116994 817573308 329858054 454843482 356903815 977855226 507233481 714861052 102351109 747615634 915834079 933383603 158776303 548960553 92803332 307195505 800550167 921952506 12491526 909506097 216734453 834478852 582875546 657909663 510664772 576728115 19310334 477555339 563335063 657204768 91135545 542964440 191230267 608231983 591782112 684237423 453585548 627146892 929418344 967535069 951091804 985858406 387093381 577581145 961139504 978062600 181986529 213648856 89071882 729238330 549002101 941876123 269573205 600911359 665476488 950620987 731053876 891988374 640933496 710875299 797372693 824749887 105839305 882213046 329004839 429884974 904310329 934081507 471714046 975522577 122841342 475977241 371825409 872725048 742651209 944981680 166301101 871889024 154649078 398384437 985423226 994854018 283625206 738596630 371448671 448176545 821450447 879947617 795600767 860844761 301043991 807022513 8149879 152965243 892135516 968525696 261456878 567441850 8135324 262198344 27016529 632655924 572477424 614133227 970688289 985807997 529455486 841184990 412219316 740487979 30430802 551657677 412855883 801134715 633013870 848074722 462671891 738870788 765932185 883182158 813819401 849540816 619065732 913423448 726118174 966328776 70264261 633154227 979126360 987697466 33562243 671013228 776659785 802705640 753059286 958980570 266596047 347172787 980443615 994747460 344313715 938663872 367548460 643365063 736550146 768220963 587838967 836539110 145540838 866943689 146543984 715213105 693121004 838139522 290696165 902297395 196233795 651797019 730019998 796680799 585215415 950417320 94613874 891193968 714996793 935738880 144708985 568859587 859199590 929622035 486664303 515960240 500015812 552644431 504061542 829285611 475421413 525868479 323292432 719801888 746409644 832832746 599006600 949564877 430705655 903396137 828839325 861969180 868865981 876201100 306864907 725766483 60409690 337312378 511717159 871565090 517783083 792028065 789084494 935561921 955166284 966577755 50452421 965654659 475496774 706648084 175777321 815497634 805261309 873839975 193029806 905960843 904564026 983472580 64867203 911012949 120679636 432489919 418975318 455709577 886759198 895431064 757498051 871249123 231439776 829088193 419068879 575146231 157770534 324515960 747140924 928789121 724540970 825397565 160395898 869030106 87010648 227354826 106705364 321277203 393555053 404285141 101637390 689644768 687316226 695952844 470554731 894461271 598907900 909369544 313196604 813802412 191822214 409411017 231360722 620156312 165450389 178075329 58977416 578620615 181402976 884775054 809325872 962719809 933821531 950914975 902852126 932023103 762428915 807637427 280507950 540265938 891068141 905385789 265935749 412922755 527419566 629722407 744198829 812834459 598101082 678011754 576276561 920125770 534775515 883716024 901652579 980759053 203208588 978435945 367984870 620213103 714292445 714411876 980937688 982972689 736929701 943362080 479990255 893086805 876030846 877381548 160385984 281807536 779488383 950622049 612992864 820241803 703093746 761526664 645964902 736271052 49991392 248060539 262857260 975129385 276010716 372752708 644802649 885110454 848946279 919853510 239863016 526894853 608805791 991802870 411491595 613215635 936286962 938454338 101003112 424286907 68706511 92304330 569162063 827056916 566682836 779365481 456343891 786723980 243627509 582374519 756383118 967473424 531796507 695037311 53744548 626806072 972849066 989179843 481888484 536091241 31230828 319330105 918096671 960566160 645196582 763086948 148511035 375589675 147687412 984800891 568947412 669034773 730755916 972848781 766470151 996859158 987054905 989631855 548765385 857641102 771565544 874848754 956546734 956562711 334972164 675361783 496382608 827928483 327526910 925528001 820348161 846211971 278398258 471505135 396318808 592503103 26279414 671948710 973050884 986815017 719753292 954743296 43246213 673061504 761792441 823571900 230086243 351454406 178820874 593263966 851148773 946820211 404105622 629338965 815393601 970399963 352152344 426612519 388359577 797322045 702253833 959937726 861123284 968013217 535389898 651386115 556129129 586525912 499982771 953433420 658367526 964574055 999037976 999092047 27483928 953593188 175940632 766658381 959892485 975839004 446606427 849531006 353399771 930666094 859805813 895849806 527541362 757687886 269641104 723393306 99161853 251769298 587061129 696053430 592447380 742290258 238950550 781585746 325105110 660656404 880627597 908233790 656027634 856369446 770913101 794184732 69446453 555039578 436684566 679659494 83622975 535428091 870001459 887265844 666975960 786023437 759767004 800743537 727833974 859337215 104804872 724974530 801453090 884220656 922777836 952814758 110597627 862292358 381810059 855025270 317451676 739626229 81425977 403929792 419827797 840864442 224487720 976092361 818012745 943572329 472337752 656066119 700109842 885868111 870156807 917128175 311053647 506114620 453153684 991968935 18396487 316449087 492101520 844997757 452612519 901721910 984060628 994331618 343345824 486108749 639795978 644162918 649247282 736811944 484971698 837576886 15883451 887908713 599827886 751026437 214102294 883471150 279321739 523487546 733610077 826780181 66290001 584012590 812963684 827188435 67896521 160802079 26300896 82124191 444162951 638301294 764239527 772640519 99096283 696010989 98101102 106175218 310728336 648444769 674936486 945011754 901740697 988101643 674501283 743160190 599221735 785770340 50314086 265096035 613036569 934395509 948806317 957705985 118659683 899403518 719910153 746025588 308497343 404311332 120815393 939311956 264612111 999153902 389938025 959074520 822613269 891953369 785905104 828677181 137891059 172597024 511713791 713432527 286667148 850888283 893633957 943159775 946609030 954053896 608411661 760031837 932902579 967053841 304290967 797291104 4674248 44688004 806760453 960539276 975171828 980596405 659043274 791317657 960097381 961253410 732299934 799245830 979904399 994848990 489512409 530212005 906699258 997551417 554711118 670067382 462939267 994881865 375001240 523048153 391142953 534795300 899231313 921852965 322537170 464773207 176009159 310880359 11165667 954442582 810324421 910489515 790571267 839914436 495770469 576439989 927545210 935837769 869677893 896418453 191288104 404163869 381178310 928057981 371364535 676520075 566642571 609176955 575686881 851668526 320942534 773309483 78464866 187000600 499694663 599325260 784011881 882837215 50783502 991677154 949490388 998723999 759716144 885624364 238963385 241426100 509270718 805937050 518044170 852023811 197474978 583024869 801500427 960629895 983174311 992598807 342014405 461530563 932442992 953939171 915594714 950876639 307868885 553721003 703888045 954627464 526902767 563395983 790194892 926888754 245910552 294344229 128717982 695671658 20778848 294309454 962743585 968917000 726482365 800645127 525635622 706378775 65916966 934184610 992181950 993203301 333210048 452116012 264664185 433591576 894334742 897529049 690574821 739824747 573765896 622136046 926148641 980083504 889844697 987704207 661285492 746944541 637999644 835158361 650277014 792021921 260301862 272228659 1937344 831904614 60852145 670013484 426069234 603425854 278104565 558167092 773656884 810740597 506770419 962795665 584981290 998759265 203082322 390079458 102870105 359629508 958698367 996895817 324690176 559592255 541034804 558839965 398772589 828888128 888141126 991740778 312828235 447674934 823008393 916485845 555100077 914343638 355432177 695174250 157058356 817688826 581262462 655363558 861045625 941021754 543534864 905141657 621983200 860832088 986366418 999057658 36620166 634622351 82647 33399790 570895268 997132975 158563276 708538551 235083418 737092228 835545272 918222808 831775891 979274286 241693651 296233576 864753479 999384588 839137286 900686184 324516243 616018074 834742998 926368029 898714962 974812263 62980323 920542014 131703194 519622093 761922625 975616442 211031015 253254377 998049557 998229071 744242931 795363284 812330299 827410572 581815070 681924411 841686610 934843769 53325887 263092980 468230069 939468865 621913011 862763038 202862197 513177012 779127236 878543254 769215403 789572875 847760834 878232444 340659374 715784407 57593191 220243634 472700455 824177393 284166347 471829152 993620669 996519203 636409847 924645373 690904155 826663536 149607204 805353883 490816597 999122315 343294852 478015599 793669198 944063583 611032878 972805579 568296355 957439791 140127417 906357628 817706257 880376356 767963421 805885365 154101630 628607189 320707547 345474185 522764873 577979714 50445515 427067360 489857017 894216558 769791770 817225084 485795541 907372436 260532315 695425470 412162291 892399704 294565459 701046145 128957281 566074633 189071635 551607260 32602257 988769516 810900197 908314760 53594278 87539186 864364615 926469209 437056014 755074861 393248320 682839634 97514240 213205218 24721825 123726101 943722479 978538221 976835477 992474516 544137730 859641255 572039960 586223104 143907221 814278380 944385504 956533587 59436770 176338304 734653022 839833587 850575537 884804898 185931791 259397963 109487976 299420379 331374611 660636424 120755734 942989749 743936601 908814075 454476325 963768695 518934069 865377639 446326325 472795380 670079329 965985115 187611573 484647905 575353823 653042394 763546519 888197239 513837459 796573102 151650022 650526490 797484435 823155695 759637945 934168923 845571500 911065988 136759614 582166909 519408161 523148996 137301761 801428674 431158706 525129706 44068360 580660582 279094029 872519041 641378238 855411337 607410004 960062874 53362972 422774336 137922390 525316171 333620716 631840393 160867721 510756633 592308720 933065037 930334647 930466400 728120033 998754160 447185951 644728155 506042909 879390275 473441003 525060191 271303999 699196079 797846581 884448907 105662852 238730895 392904624 771679961 142421729 620513269 655145500 972343992 858620861 927187864 2486171 623711998 564815471 577416797 275621125 420024499 475443358 553570479 155753635 773503277 860465130 899752238 83646903 239456495 767611238 780220223 959702268 978634856 821214196 941726802 54370994 268155732 666012844 770114206 531023323 877583841 265559818 800304961 922099119 989486925 558663475 972625073 783110105 798621505 898451348 941123094 867721721 869390781 278426926 733359317 853965836 966498204 203623868 481551181 400157317 465273721 305843834 429731997 688421061 696235023 660862484 798712106 238464027 531030722 731269811 906671483 801117460 928865055 468096470 805743140 271121772 780177334 227974920 668405265 261615834 683396740 620382886 935805223 61105076 781238749 179927598 626927873 638448913 769615889 261435461 641207747 291444553 824864713 819356385 992592889 58071488 267475420 15143524 490642519 75748929 925857102 519167499 824937498 230657477 241633054 607723931 792876604 679356233 882325598 338621421 368426664 155666175 561179154 36775336 385515983 996571097 996764579 329393367 926504588 514713831 857643555 586709539 603916340 203501558 579674395 34626859 991715926 797655701 852036023 536810093 972212365 950454531 968278876 57576218 273737476 791700330 947381874 241254020 409945952 435596120 753826914 206987533 887961784 201037894 757286411 311547160 692681572 709500476 744553404 716841014 958994826 59682409 698624596 464480206 513518876 563483895 626095014 100251970 787123740 340097498 823217387 914314114 978669690 194250882 923546540 995332149 995857145 763585533 985636198 532094368 626669871 997369342 998894211 391488794 586391796 118581959 997295728 28541243 446161414 562021035 607339036 875224642 906242576 689278530 718439515 863050450 968808618 571481708 573416823 104888703 827941238 903419900 914527566 835657887 962890193 827931966 936987794 767123241 983333058 449085208 897927511 579479864 921024754 499499433 799477524 59904348 730820241 299989560 403927341 860166683 883513606 923471969 982612220 142539769 685045753 267306033 737190188 615505782 985931597 328419175 571949308 507139511 811871909 165787131 486952398 576723860 636310333 799188179 811804241 552730764 934524320 181275066 412937229 890875322 977261570 58709627 649820407 730417455 745063750 588183446 661403720 863594564 972843785 784856237 824709086 627907869 791462802 523862809 984270710 329019668 333298542 217276300 874747991 752325156 777782071 144852431 230963191 828992674 988010747 240606085 288237114 504567608 633419896 777428709 917123129 529406607 892526263 898800424 960196818 75140890 563222927 784717947 877263640 718316181 783208615 878836728 931357540 254725087 866382843 818810632 900372491 875921242 916205555 816648778 955226445 594864353 722921511 648430707 783657187 729868813 955842919 401789227 837493480 403780224 498996614 557453094 988376794 64418583 652231343 628336473 734997179 125610946 949363018 529147011 661806708 206567707 989579021 678517415 905272555 850705424 864823323 142253265 189463953 475016100 614756686 636431127 897975690 900783704 927932983 997049093 998726611 98433092 166550862 368348548 924130046 261699372 868226126 287020405 600605510 792765203 938267621 934113660 960235603 39455882 432734173 140006241 550077553 742359603 771249204 13885886 785963775 679925969 810610807 112108769 895257356 262288921 783209822 793886703 863908960 68940904 583355195 264916296 815773795 841879683 991439844 923722005 926707690 579670037 677859808 977343065 991830740 930542219 987955457 380210064 400694622 805921296 898616575 743408422 790191052 656035379 771553311 934343352 994520273 46985004 246688598 765640854 772627786 77312206 323154675 516986782 903461859 596253154 627366304 474854702 580348444 588251689 857114354 211548270 721545931 825355342 979676399 938750351 978165329 134343070 331296619 734466569 753574789 383586910 574542793 571824092 636628049 59344825 66855232 130799941 278403888 182079625 845121338 121811794 188449717 483853723 724370239 485623288 978344624 437162038 732056845 550317472 863629897 736241268 882062420 473726647 753563266 57704422 304900946 215950768 546282375 924073139 938158195 675784939 894806705 117711013 443565453 113133499 285370848 68184713 175618093 988751728 993242795 794720707 909259764 902536536 999206101 9076330 70370539 847867662 980803442 115716010 872676573 740482068 916215790 888287139 962825865 709757945 732845627 395746018 946214185 676838054 867297419 689004716 936561790 217251155 885778880 732585453 821970999 955165011 983698373 27299970 683770024 43585192 522244847 507786610 774501565 33985524 187796240 651830416 747485487 258767268 867791183 675971845 768170767 852098926 867242306 149576235 608668497 578019658 971698600 182770328 777071416 434298531 499373952 519891679 802662517 606279465 685771245 834788866 967877468 700905017 975135192 964018320 993838798 487954854 931398702 746262285 906787368 182114201 417501883 456571819 602345871 60561168 911299891 486559179 878072629 72956413 977350908 747207347 947274334 837066619 900655361 262719109 621583211 446290674 926116598 16464163 644844216 185521817 606991908 915804009 988239673 294513086 622752669 892247136 966080858 483121590 546213790 132877571 274588886 745931111 913203547 551091420 791584958 741507696 828966520 147073733 942060658 515956285 685966718 737312640 988752557 911041169 924887654 288705527 995402930 406993121 922214537 763666859 770166425 875034826 877370495 282170303 635479903 26988094 342818763 772870962 971610373 107075946 880978731 834463442 993711802 703713127 799326157 806267957 903459695 170205708 485026681 524525519 615136044 980585898 990321805 572614773 751419732 695321117 862230575 613210728 658502011 363866753 916240963 271945283 686869172 268625232 914778005 360628667 964640491 734097510 756797902 718645948 886238899 171975540 770815619 476184345 584257118 844893365 885960494 908341029 968876389 492456804 836582354 649696322 724542259 164922850 923757814 419738552 451036003 604480769 950148097 737783538 857237514 428179885 768644175 589797564 757282760 73785817 893348825 307889582 870119175 818192748 838128743 802925055 955429127 333527569 365658602 689365513 726755351 250294380 372772453 490688437 749439704 867460363 924286945 927409545 948253870 390072393 646105004 171546251 356107238 851537074 855911462 97043543 768469719 248501527 295959886 437252079 902491164 872876310 901703125 898072669 913809425 285535306 545214523 129290512 334485140 481636212 929322927 720346186 924087883 937455719 946224524 869325794 900572278 533866222 860376989 918654685 949445835 565920588 730482916 734280475 976729931 7351060 740028295 509482501 849079430 598075538 797749687 91548784 498449508 432258752 623017027 319649898 788934035 275358976 445613920 267462416 388451449 994505203 998030622 955081406 969405057 714525292 777971893 375649571 832318096 950958496 993463766 501555052 568571078 591502639 739438729 21464362 864515978 476337161 893065116 779465898 955684323 93249115 740549914 723776775 757198648 133117894 530758660 358238058 526395303 259430 540432541 321923756 615162975 93321391 710572597 162505170 810049409 59965410 495054949 17860573 852087748 301237871 696204075 77669397 841664110 46077241 968777369 643332307 841829086 129225719 727442529 921883901 994002925 419357587 448631013 541395798 623148483 426339728 593004881 107809271 696716384 523560632 659269572 837152380 875086414 752213561 841676731 780809336 979863823 760980256 779314546 340347046 946020156 550788905 652088394 614700498 766648378 76964669 547204010 768575138 829822425 390486678 589281514 846120733 949075975 854720592 978659718 989101915 992828085 590429443 644110571 91500349 604830888 794053697 916738619 659935356 874570041 539113163 604013941 366192203 964627984 93793258 856950514 739395923 832122210 579532486 711446540 842377662 923192446 382683559 751422790 800293012 955276203 345999232 956979470 618531074 655426131 391221608 862506369 258836265 654081410 812895331 954084763 881420253 997875457 927245462 979964825 624725659 960405774 247642750 752360657 886008647 997268338 368596251 506202681 419928058 420975251 802991800 907345888 43163843 370347657 568036105 678734127 573688903 633239642 168682031 874968603 337100852 943140806 373052939 789712444 191428055 583966645 565117484 965366055 337251939 579082115 405095251 816107861 984343623 986806101 859668959 938666954 994781767 997868841 376659466 995470584 392774617 515881107 897508759 899379683 701593994 856269307 725766481 756490840 917169917 954867876 628247773 966897664 908287007 965292151 753888868 876738643 873150092 929820467 928472451 946592788 574193107 734019412 396641879 734886127 284834639 683533231 530235420 538278830 232183210 981437185 562764670 854403775 111704713 150430137 925120147 947773668 16805686 316220341 231295638 666700132 711285518 901727569 506358039 932548775 246132555 775160499 513434599 769167243 396770424 525664763 317413931 638827774 389744150 858881340 351427511 801133062 695304515 845621178 5326331 509781386 754380744 875636142 763607428 832603044 676496112 802190358 511026058 703724414 592455895 835155374 16731009 873324180 36497334 40712320 740609041 992399265 496113091 986964202 732633159 760687175 853833181 899722162 738166506 812546037 373744504 808332461 728254313 777269284 1479904 712255711 433889303 990486255 915635511 932221666 614738652 997245630 685574465 859710277 653856090 909968545 836049810 977489987 580526539 938618812 532971698 692960883 961339269 984257041 301479239 666459475 928203369 980515457 181099704 320964172 754815185 923982697 867499636 916872120 799601564 982470925 563258234 744617432 324659188 916410081 201106509 235413297 435749524 597429045 957510982 978553024 522263264 768426567 75235668 217166404 684699005 980119233 714138981 806534199 599935738 716098119 241367362 928401610 145854400 753248130 829638466 915517365 969058529 975523715 156602211 255738389 466167596 590914025 755542416 762439089 55147366 556025747 829801227 868869483 793124434 959816051 400639727 968589168 188924499 741870001 267581428 462814113 776285634 796093539 383231529 926033671 605345400 848161012 714851722 743877495 862599860 899447874 915534179 947273911 135615306 646476164 67820661 860511736 28367908 990155937 998720369 999363561 925138255 926574957 851211283 933219341 863169783 882586078 325789332 440437794 308853398 369699424 798677956 986865872 439952036 621504661 340653827 726750254 165390379 735643534 84196977 168516630 196886898 889003978 864255643 875827669 740194068 844526707 543824754 553795291 887958941 905697258 485505736 693007310 303751366 987847237 211573692 724430041 822834787 942109359 453424723 908466880 791244882 965650698 146165198 580110508 539640640 608450604 272995396 439660368 47261035 385185816 136385015 164990554 795445011 929206389 137735004 193619863 141313718 237288456 408360845 595993485 902683144 960522740 26409461 304438245 164752553 982282499 621706710 938513981 540352837 954526504 523068547 574799001 985422926 994383133 813703653 830498522 559162806 666170852 694826727 977964620 992902823 997409906 780102711 827845561 405999488 664133800 973980464 981218508 87674766 874346378 33973683 356927296 701286216 839059065 192863706 616550361 944677095 954225352 236189694 423042903 897137114 998167418 951229807 988169864 120466660 742008634 487769862 608325959 950338471 983637418 340765712 390889036 334550807 499660176 683000647 720845230 119056920 126262580 922706539 952322538 969447044 980904740 381262676 514878400 468116262 691479405 913871173 968094920 917602939 941040522 15627018 226173130 162124724 649481422 703950523 927223201 445428060 852231002 421104417 462334769 217584413 507090772 941892240 994057502 914223623 954475304 62019747 150528555 846361039 858493436 473673341 656710665 10938323 733241693 355831367 648454999 460505387 752218492 496174899 512369037 710278939 929975114 163476860 679202173 644418578 878425497 16152625 673666219 55962858 643388306 638860030 870085090 199419987 968805072 685642092 850346678 424961943 809229564 768865760 798518989 495169363 605626514 717929234 830351037 373276210 893901873 967449235 996681272 336252435 991350857 325677230 678024071 93833585 310217843 979819125 996609264 767326190 954943181 747790719 837851685 201825007 980500372 488374250 533483740 631293387 731677129 585417909 674734969 325186424 958236524 554411144 894504466 107469735 217161257 664496947 939391649 374652285 905943112 66700055 983450592 67886822 340792876 395743283 616934260 762677098 861272237 810524360 823405122 472803691 665748523 688826389 863473647 327893902 554468579 145594829 796541532 32551884 628165705 984232494 998126778 69988959 894852562 851504995 988557582 191270378 914925895 286560743 739280046 558787800 958415724 209248182 262319916 118159510 536537189 428764261 905807843 481409640 694398116 987477587 989617398 906630926 967658318 197143584 368949842 541496965 834870144 720612435 775544061 335785223 777431293 868752387 884315127 899504049 947092397 570886072 835616226 971493 84439093 350779530 948794532 104771632 986970303 727798983 940547534 65328303 962213409 903888820 951892465 270960568 985904230 496668514 904735139 215783723 765648445 992699617 997729392 703401221 775321225 419064231 625654285 852334285 975484936 909932631 927470879 746521367 789954374 676891440 751222198 397989373 434758135 906538970 949672929 955778556 985877754 850215652 912407306 787036853 978371953 848768070 853450223 448924780 728317195 441527760 451599438 429020782 859795582 197179568 231416207 971133201 978484227 18447934 961991131 673138944 834106911 110809714 698964074 716067855 966205429 568202536 961696674 455251946 581389377 925777627 951395455 434418568 969837154 786990627 870583265 264011347 983033933 570777994 656495720 691420274 951461241 531445888 853419391 434801848 615321369 535874670 551961130 337108846 595673549 271056950 535055585 866393700 924020005 734687609 924646116 108933785 266208841 932289201 938818587 731198018 821920302 320117713 850717991 98763276 830522833 378478090 695774950 92105824 624712918 290978112 303323179 552511502 773131054 531939446 802517035 113597422 954429964 173151795 868846503 856764955 972596104 762505025 795192766 621989338 730594776 904302115 957124420 113560048 523746423 870385286 872891536 586609840 592527274 516383303 522761613 256326380 954121077 390347383 554371770 17709057 244613599 891545351 962941028 778628210 884607435 534740003 989372511 796148161 846721983 176791731 292575800 7953305 324609109 379722434 624340330 59912645 520877107 196722283 528479992 903927071 961337776 963434471 965652755 149156112 780899554 260700074 761117819 487468470 758543777 291325825 774529805 318545635 355771552 118610603 795108279 687317667 917881658 413582376 583817364 609413714 749490972 357423242 818403587 118725429 428046329 760157888 764541024 248121624 258949009 495056108 824876846 49095873 103796330 234382467 442547848 763838364 910783160 361599607 551994241 181240929 360679870 523177319 784445983 524279699 684348246 327237956 427244982 523004566 612182607 713763853 934609306 416928822 908394232 716816549 806486224 787803436 959201774 717651070 719152882 517582789 912499443 940405946 973445036 373268738 512031826 662578642 696437171 625276991 748690455 148641222 383473932 280508564 306642206 116793049 849154999 363219484 498422922 42268679 169002302 942798873 966116125 565676166 973159149 305115298 438914370 725788616 939335433 654940858 740949348 442230941 582160055 484278541 733286680 131682485 879338862 22625714 251438233 876053424 900434238 724376403 922093081 543790141 762935789 668763283 739219784 528577969 929523169 25368681 718209657 122975794 268513128 490138097 552167639 95995460 363699522 229132710 452404262 806703941 893167781 320425613 493448519 683072973 880532324 272440263 895569211 11125357 359481302 661204775 698875558 427692035 698404542 823223846 873031879 29314074 357111440 867102815 917144269 653805516 869603832 492480692 499815267 689918971 962253116 876469466 998775709 241830317 724059637 824330357 827883905 757214136 926230017 51238054 79645112 240475433 592101846 830453967 859811951 366459109 400216961 682087580 820321268 372260999 670076459 163520765 594028304 818451615 854857413 526060414 556700323 561883471 820325290 75651772 627305421 16973249 477302703 517318788 748415673 433360420 441944772 361677434 887175716 440857183 939027258 490274113 894901898 249026603 465450697 56226308 463220430 265804298 934363256 779377451 897867145 534160585 611608919 17259945 77873281 948128671 959617526 515664514 898708936 68429924 510278580 691152051 946287102 743419172 835111371 806643361 856417447 902685241 971306720 545938843 835357742 305646716 734082623 472693270 971111498 446267652 595019507 455316795 711327340 350654467 532750572 203284062 827482673 251902984 835826236 735721761 811596320 52729485 545473750 140104513 464200327 40301526 112242296 171280190 209072173 29853485 939893529 598859124 961148840 139282663 374240272 227217520 774514376 434983205 740411279 752401831 936369457 246744708 469501847 360873306 505765494 387725138 423320408 23341101 220624670 175808665 875837435 400173608 489449852 103937678 435625492 49177949 57091544 174602844 909317099 918844907 966871136 841875182 913046541 317226942 765779310 249238025 828311171 156244107 530623202 753519800 785253442 370872107 938426558 778054065 861416528 66006477 803132943 839871888 946225218 182368352 236800620 798836973 932557467 809099589 912801195 857420498 882287293 509039057 832369634 645922475 957587522 710776249 998100781 471046159 740706535 458394448 888317442 499581217 950753129 666482218 887361016 29551503 727720454 94401829 918412035 472620274 572005786 693432784 795408184 177748325 915905343 474747274 588611643 671091937 739405279 501179881 711693515 677968415 750306802 810638929 854505103 915630685 938938751 559492956 688455346 272747772 784472110 484793950 768333855 184096961 761800860 440500218 520429705 573987986 646482632 745697389 948084747 599034366 998079434 278312487 339589803 164243690 755071978 91120634 921877664 817146222 910391231 721340882 972966697 62672680 213676723 322192737 537398907 861067200 931949975 21065515 952638299 584795849 657257509 678352349 881433773 962040029 980705229 526264249 976292803 123216779 776014704 642879126 978420502 598108307 825405787 651967384 881351000 213706184 845377397 928657995 954415049 121940435 648604125 615694683 765228273 839806096 931426977 706876047 758358921 838628554 976646830 785319997 948652426 82746777 399455341 316736319 401796932 945002008 950428319 876440611 928313342 889846222 979091171 947786654 948646618 714391525 889058065 996647347 999027055 785008231 915152723 533044540 556647961 640226042 842422931 869131477 952598462 966847738 974239882 994205109 998973648 697419756 980473987 139990561 911501057 12455012 692036665 354625453 646888964 415458613 991934703 217459800 705445689 934209388 964742429 633776788 965339803 154803243 984739214 543038610 779635480 208915748 518310517 588617273 747181765 463647677 971385302 920678606 979314969 213140588 700994380 126516544 183337594 817256504 991899161 41830782 871523334 85831409 260670415 928754363 957054286 825216243 901574410 199229278 500611883 288149869 923379118 392540144 604364413 85057321 597878806 869131598 936223494 442644959 958700852 673535536 810447795 497766614 734333674 236038121 368546585 991279810 998521011 411950460 444636866 437194941 481506192 459036003 743493349 200560359 767856663 211723510 299015739 177884214 479389115 261843997 290805805 955254572 966455539 596545558 814787883 555002380 928465116 585335369 741415461 553304017 683353983 633954789 872075791 930839957 979871786 591009075 992773053 277009221 969863992 663050595 803662606 466529790 810961449 253690517 991420265 988271691 991756687 755296807 861904615 701004524 880732492 807980768 823846407 899883063 927086209 293238505 812894461 327859447 608965986 140912087 987091529 440058426 856114627 724555439 915882833 627469002 786923127 591007509 664559871 711610738 896356693 295654631 597776414 527437142 933092679 669413635 765556014 448270808 487775974 839412290 986239988 163135534 562917318 862137090 972329722 526868086 783970945 489365844 799583005 997651274 997894697 140993837 792598180 642432327 900037664 123885067 880316657 987759855 997401538 769383088 994546090 623120257 940821519 236004793 785185163 814598509 865971801 549148017 616388221 673456908 945963852 467162892 913037058 179746872 377450835 526086523 891963293 456393953 704887836 300511548 515642973 766650435 952234931 709913765 870368694 248016581 943548070 240850879 900351266 892950721 903367490 273119196 600218304 559176393 622641791 14208709 569928710 350281889 710304801 929823552 948902065 178862310 620919321 959581331 986186065 507397271 598670366 730875296 790633246 701686583 943905629 107342076 308404867 732915711 836570496 79992770 861985445 19795465 273701767 543390269 910185538 465906464 778025684 590413236 645022167 271616842 373678418 876539255 930980265 895786962 972078835 102000199 840916006 713789091 761593878 595415537 811143817 845058316 972616092 576565920 890297198 936807909 999242873 224655007 536860826 259463566 864710462 735384704 829771219 467613556 842684178 390392778 939095324 248779908 849106313 564014737 869756937 864820593 903330299 789619392 994714657 111220915 507767457 400281260 543195808 275299574 642820125 376438855 880678047 265090520 976052774 16046964 797919986 65786145 852995370 499080995 854104808 650095590 867562609 269652751 774402482 784501557 896602407 993186842 998428448 827960672 992035360 321567288 653280343 502266725 601223635 86220122 338997972 337479849 539914243 432271213 448307406 608607113 844133498 151551181 447221120 815475293 958018199 716268564 901962698 522090983 706148366 507019492 512779524 262970148 597745812 848437164 949333871 993845605 996832241 579839863 599285847 566805369 657482791 554029784 906645703 413702068 533707050 304561541 582795491 848772902 887917702 165501522 822764286 231642423 375673252 112064855 593477415 803575123 855982483 641793443 745490679 550806689 744773097 831646369 878254392 9708026 174510455 903399183 935644351 712896624 717711646 596978934 799668500 209627142 906198906 93703652 920409716 298315179 770200628 521216801 729907478 262013404 816515317 97268618 965671651 409448499 980758525 686271943 820622333 264982729 314453672 38976783 961342137 990479496 997831700 995226735 998839307 926880349 960714909 25858104 359771421 966990989 985903637 137987951 378417490 739557719 807611601 579125956 709624786 402648487 980833303 69678198 474378283 194632103 516803920 574305593 774792820 427084634 841068240 917766937 968779395 270372236 514095161 115590659 736127588 447804623 514157157 652182818 720544493 815840921 855047491 173127745 558602586 261996212 650172923 210070063 494496152 356391865 453272418 915063804 955235891 956566379 980813203 165196351 325991570 566472002 684539803 92855462 415944170 60725841 812641729 587213411 948748778 294832713 916565483 23496363 217538892 892077206 972220365 379233678 476237390 485421305 714087766 216096493 707555504 719642747 915940923 62485650 201038799 325435744 726575331 127122881 530887942 870975725 994273119 181892578 907049341 326129053 550672162 9799618 909200524 261286665 962931362 956973898 959857601 455083742 622450331 915560848 935983336 305591241 910783542 808819324 930833382 523391977 800507966 431761489 548969358 658187385 810365490 91404589 790742333 875289811 923853891 116352562 543676242 628250782 859687044 803525599 812435729 869268863 875778103 800720090 851466537 897849621 970324046 654060895 656260864 199535708 306463335 526618968 672992259 820605615 958607174 848125827 875502333 775760413 874358451 348158952 745528001 332973152 510875589 554922522 965525690 380882448 739343596 453281986 921670299 109637750 954235171 785627591 792964312 601286496 805164667 569974811 981386784 71940328 119941745 505288623 938568780 929977406 963016538 92830353 429635947 904373360 960168767 965215775 972851161 934297602 943250955 377402781 563734852 757413960 931933302 681249876 895235103 885732678 944766437 723348527 939165009 951156502 999353302 187214650 203922232 319513528 810803038 382584525 574423977 736514082 756873622 931294616 961575872 883364724 897801487 108344188 838098969 635158832 774927897 217822776 334161992 720281601 956861199 658004163 972058850 927760787 982535108 805327304 914715830 870352369 928942228 530067741 794386264 746074860 862163824 729991595 900908520 723533574 903605660 930057358 946285104 744137416 917980076 722593857 983809341 2111163 717000463 249353047 803547050 520481699 658278559 246676791 912918389 458100552 505389071 485715102 858332968 33141303 701106138 201997036 705915743 962689359 965911960 478603265 537583838 574558681 785163805 521630571 666820791 629768628 837459842 320891156 946422613 431161079 694299070 370691742 792126375 54069987 450750888 926948212 985516755 514935941 538884933 562118259 812236304 721099558 791941854 936044474 973340073 312896457 673356233 235694611 712078819 945932389 949057824 293369119 873084418 352611945 906054350 164427437 771184523 86660346 97163141 33413736 854585530 927382741 960038577 971311796 982970557 532847643 868562971 284985582 888323555 552385238 784171255 240400357 740067280 231167469 524480572 683291152 981704498 613402336 790740707 866937220 955176601 689005708 710140465 398674113 945580469 505758725 570640381 684112831 960667420 20351721 187253352 745027453 870216563 961361933 963014309 658576354 996574378 99021167 429649815 682608070 703212910 348792792 636887027 264751584 317460419 448218222 499355169 90227524 240143373 161809968 928676913 714548654 898689327 423966 980941535 208719077 693673207 622883504 753670442 889313641 894325216 703641256 873441043 251125675 486364448 263740287 368557119 697210635 805352646 183057023 920156188 49967892 306522119 946192226 993915276 992916133 996206555 779884917 872592903 54875140 234872811 972556377 982542006 187995852 500304076 926513908 931610891 441989037 547451487 872864062 898931104 938216111 991984524 997087100 997728026 761391184 852420837 133848620 876024666 508276891 698725648 686219918 834549593 453772568 585687059 286082744 634922961 428723999 507399120 969644681 978304612 856808666 939604864 340191558 384650280 89038307 485826307 771458848 810259275 94960944 794546878 612843222 695363810 722509162 904752324 462489955 865543323 320150051 913640240 540201983 865219275 922400146 937756612 282238121 616066484 372566426 590959804 555621946 753795264 518852625 566791912 764342417 769651954 799849990 972965390 522364850 691259421 85856227 426247958 381613211 836615568 363765911 407589539 51859140 661809928 396307516 586650803 576680578 712158656 643832217 752269678 243413351 670796796 732172565 839755902 443508121 791375325 437862802 681647669 738887684 796222076 460003222 799254105 908995576 945517392 50493634 265087053 329081586 786963405 347693490 724090008 401274357 496800772 785766153 874851304 435140588 463002178 742048121 923977938 168905707 616548320 48690099 387315104 134903460 708113997 728940236 835069909 765609058 877799044 433081160 538626639 626654392 674886286 460250324 807211266 451848665 558718706 140240018 545835062 252024609 694701926 163424620 516486034 52598774 838697898 19955785 477219705 330770901 834140577 507491924 777482743 90073380 552407286 387131589 647688244 53941283 952415376 878513047 912271199 976047915 977471415 153267163 962273654 921580453 947394805 548414561 640944118 479070522 695710482 227477105 662427711 647277008 686984452 630808925 637174236 344500624 803636221 891913691 928611244 744654983 808676587 752935661 954279518 168906881 474563406 655597834 711023583 195642154 541600727 748914447 929726390 795326429 908874834 572206827 714372010 532934407 578316466 601157702 922490213 740255539 914013469 816552346 844289857 720353320 825471180 300378834 374795192 785236036 882293581 970868018 995863860 447472391 992670357 633201413 785313780 253039892 965539518 747436310 778659303 433828076 450025711 334084148 732406855 399531938 935261002 948024374 986475061 295222487 956534549 339197081 757546274 658701619 902529386 424675320 595064337 889207713 911613109 899065237 981427398 976134120 990180447 339673669 650683665 384383963 489298556 419946114 446680559 244391972 726315432 571771594 736495835 329688151 445065013 303956753 539011689 14215068 59199052 98343898 685554024 377268463 401592895 994079792 997099363 61442074 883808152 424016955 980833106 271489556 696136671 291196174 360947630 658434096 753348513 329021757 359356967 618462271 678342999 862559035 926204921 389890985 804463020 499538624 950117097 439338119 544763233 876163203 979125584 321709585 931024665 271984486 410580227 24118978 823119224 804360796 931120507 799817073 870124317 627309765 904472268 827149969 975459493 460028035 724273737 973050328 997352440 247682868 765055386 889081887 968629126 731756418 798490567 30041400 943111921 454581371 825716128 616166149 642798219 981876679 989577512 740105796 813382072 821975925 871112641 641592858 680869684 285210174 345589501 462543606 971460138 741974895 761401889 505798060 777209523 785839283 828577338 606422900 651113482 8012488 596040609 670489353 762759880 155600544 662002833 981558461 984613032 8490090 539085100 353797782 652686672 204470853 974799874 146614414 258726319 780188863 987528851 666359825 894381631 941700821 995812165 889665231 958342142 445849100 861220806 886759093 984933480 658902389 821492496 721177075 853327168 958469733 985616780 466261368 671704406 799498117 939235003 136298556 313966837 373718993 411288906 720076246 811495956 643362891 955042962 552343605 889052802 520131074 785034114 608673349 916927574 820517368 998874315 536533095 897723423 92392155 637875480 146255409 371470310 522742554 723737027 639697813 837934636 570706347 694324741 286326290 459222663 212007335 436605829 835062570 976701015 798421124 998477604 478813462 498305748 215724771 248491913 392330506 444199009 775128884 804240500 687103777 901008773 411569051 428044760 973740937 992840987 637085116 891858885 278329493 605810327 158039873 633725081 37700058 619697636 441581642 659026163 150851533 690737701 315322750 860240654 233755902 242192073 636159326 714612687 447317965 954705334 413676241 594343130 898112518 996083204 517782041 900296158 153268983 182006732 513808796 543266482 738030817 850784377 663107207 811830925 932345449 996405952 754654489 899385581 186285765 782376967 553443703 666909399 746601916 766891366 949774180 992850919 860026847 956721184 945803657 980819894 606063820 684498845 132339521 310837093 10967225 250972154 986950587 991329723 688285793 998226674 544780257 903337330 827227863 876043858 510047537 554341358 337034454 504289561 124453048 583099848 460713215 580438045 299515588 767207594 942745853 979832814 861397984 892301476 342788385 832943941 331578222 632886345 976307680 984018730 567637646 882567627 70686344 625234303 483399218 545638186 791935186 808387092 211947196 496683565 343194088 653963940 696876440 808885268 7365194 398040805 730146036 731624803 474992025 587794681 908301644 932509220 939963023 983948677 645058737 856449389 990098015 991214643 486113347 937123218 874302794 877583956 896123675 923344821 428041663 493555402 555483340 903777252 297438113 346603059 698921574 972920535 262576831 608752469 177060497 244008947 809793637 939414426 554906647 755135347 747032979 980286020 585536070 928093887 195632647 895554078 935822457 990376272 475516937 774976766 442131948 495457622 86837743 655184258 993213543 998603660 751453313 909853248 773019592 849132082 194593589 877230073 866357349 944790886 521961241 839651995 91080570 513994736 590260602 841331424 717962527 771834063 968332878 994561416 233452485 300349803 941695108 955041672 754786586 983258412 796246216 971570367 617778684 985479856 121400077 523838040 22059037 481433837 995254624 997249960 33320326 408976375 463299368 530540430 503547294 947212498 280278288 849981961 213916648 412731860 594471433 760372473 660395444 877657849 242689902 591503736 41422531 749336845 775049910 944583436 635834263 789362724 680857539 890531514 688900798 883987715 867789213 897122804 888157242 930206824 280750382 358684223 227699115 276071292 797747665 949593495 589086838 854260918 652087584 848499099 1989700 360813619 253641668 876261466 906888903 959797566 560003321 606239733 378813038 774951758 821412375 839549575 93127644 953067130 702677132 786572769 950636259 964565918 626932999 795666393 928083826 975278486 477675303 575525787 287099637 642710248 651524712 782238333 376466637 945301766 624674074 742508552 722751183 820708854 947414482 955170625 417281328 665220925 127743199 634662515 609744235 933040648 434897596 600683560 334243039 857688084 12687996 918424461 467017502 674922214 159764909 767448652 996469634 998088297 314089213 424561738 840881260 901837351 511040018 852109440 501707626 739512127 271715748 845289910 174699387 730380453 807552299 826886863 464033885 662707521 716406431 914891514 862624751 995488400 424905487 817773353 949905984 954758637 261810061 475369517 180466796 266684320 678417151 940473266 522023687 883873525 330183512 730933107 364190105 508200367 510063177 562696449 774349048 962459381 948666192 951093172 132953347 389113542 255142836 785131198 700938959 875473770 409984898 535364968 474225385 812218183 771675268 869171595 812546269 828157135 943840585 973574508 746609428 804381275 73899424 713977064 544725529 564884397 417233641 582340022 86632957 319675533 162343227 462486886 848020656 910145351 288116971 916530122 71898623 855527967 851371198 902921999 57918573 222274206 45066172 445596241 515621336 764097565 765578185 868140464 784979506 998349808 486258833 806437806 961501956 971100943 305317750 773013278 575185263 647148265 398319612 649767691 242046582 900547283 499424737 774916158 160687332 606631427 535967276 863106371 222005503 226063446 901523159 973794322 895037049 964632386 129311926 637158826 30459427 194145807 69577260 486527060 27380726 169966210 10699710 822334243 820499434 974492354 268408063 519655485 518866367 754720686 151584927 568182612 577352662 624804474 809978787 946491881 376347972 839917458 932248803 933494606 741016617 791033928 909497572 944648206 592199515 631233353 68474598 895038718 860717587 902332221 402168957 452223510 671098305 703273079 820537974 974902708 50766593 578827252 818919158 829095545 78726687 718659991 472215898 661353337 981947333 991782708 995962125 999294872 256456796 459607060 465789383 780782661 942740717 960696231 492905889 762689253 514915608 549142754 535401151 826217392 692596952 795958480 626812498 666213411 668122358 749684583 913998213 931496137 444531501 486395608 854588085 872713468 746351484 827104320 893801866 992693023 786431820 809135277 346569351 361556778 211238809 453495009 948155351 970879478 19281938 230872640 735805804 845598240 808998427 870843362 895953932 901934972 214112904 436492386 803684932 840330037 70525639 292606036 428641593 725124180 406504679 418559061 916477116 980541950 95316625 307370311 517758744 982114740 350415372 839700893 479842341 766889222 767139604 780011696 208358899 588529792 369262451 960867994 340304309 926186859 472681615 605636492 529754412 779529725 370756506 618308403 677675420 720114420 754152645 863946799 227258661 304014379 614480115 896622706 979075341 994659584 316424020 988164012 908385284 984718327 770883296 879789972 367190313 440460508 712023403 878806700 650355485 929170355 94843723 629225893 12895856 326892702 796794225 872794412 538399492 848064229 646696112 704821691 921595323 956908085 773891378 898763349 631914937 855706229 96562059 435463688 216374571 878119699 369618793 802051481 83113339 893103815 603598599 879120119 701862162 792916274 866286002 979568334 488281074 932374244 204711545 627677691 550698005 856729636 814728085 875778741 161988969 425461891 643761967 854162339 80855139 781286324 363893811 612472622 205823267 261655824 710561723 845874760 585393624 963729269 449134636 684161674 502316967 874810528 496368863 617590829 848196573 969830908 294331771 775776908 942467895 960722998 114772277 279101906 977451972 986967904 623105188 790168088 784923992 807554159 316100350 406094563 423563321 516341241 606698869 990978393 7580939 601789917 359236610 865459963 982393216 988760034 145280404 317350090 440797877 789095694 853074940 874844786 218125251 995681625 45962258 892732674 527754908 974118814 157941692 279719759 210387457 627052138 339444482 832497246 23256268 395075581 12262805 794950832 606962038 959527964 140296368 913247694 259006354 759760617 442572965 492001947 570984771 843663556 104775649 902300637 171907835 598863168 409762529 569348656 282287409 829204015 177853440 771721495 642632503 830051114 368957304 647986633 862674906 871347803 148931004 878334325 354155013 789201431 271968983 839669993 444658936 712323142 75623483 809954881 183217453 861723382 642943307 982158788 204660847 481794260 689505922 725153260 309924466 523678001 232937430 284142150 170012864 530007831 595459653 637063989 7514371 683437352 632498041 655508661 27094668 128525942 47479278 898699832 65630377 544243241 77254321 694540879 495945328 555477315 124355828 311529196 169634131 551968552 924191164 980717638 711884909 918042495 577950944 908271605 381574193 556582962 546611517 877005918 108464899 789131768 61327294 728023453 695633730 889621125 274764838 992632339 981887836 983613828 983744585 992865615 526899247 691788952 951731027 997659194 13888467 289830604 663938373 775534596 184873439 670038557 925402247 966053630 369188112 982828625 640616045 704969054 776515385 879078539 686770097 761676398 440192718 917031308 207540773 467067187 162419862 350334237 123412728 213473342 464526067 798746731 333117495 488214257 620794855 819014499 402888837 663290387 73153262 855893224 639253181 839680318 618508510 699901415 678434982 949677994 903717232 997997073 804176990 815548254 635248353 732304399 170738768 315314081 317120639 565605843 360943555 689621373 929734387 971635290 154670856 627595474 463518050 676237084 557840596 772611503 759270623 775186206 496070068 775030945 121127023 198763495 790001567 817220647 571319283 615049435 810258442 847554763 359375899 515052051 313889146 410153069 420898745 473995036 718271856 763147245 957436830 995647401 308770171 930516039 862955252 911803680 148921881 471450212 467116421 637824646 625342415 753486609 807673805 968691695 90972903 354674471 582617490 696928151 709101528 722262954 9898732 480544030 858204820 897525284 553264240 688595450 939603771 988519419 753403883 995584064 964371741 976036917 23207149 626603353 89958196 639018616 637885305 898291425 1668926 818501217 740040936 792154214 812947751 882853289 579322160 736420898 766656429 776391265 130526060 247772241 555981626 595662808 199131297 540516121 160844358 820731928 298630237 910111174 342134059 898110633 799469657 895731827 621179171 628255500 133781625 272986283 725421054 843385525 138901804 318141767 494143208 980202528 702033173 774451669 492233958 851923931 294776979 747216844 640235587 687903282 814760494 923930218 934048755 991014424 855349 972688572 151096569 190444768 936982075 941992240 804537146 967356648 894695878 950282276 363429492 474388519 112045287 677924071 140588935 199833738 215420310 505478149 154625864 578981599 398176256 862819690 596815041 691404286 565078725 893515136 265392391 585921796 546762680 835169858 697134701 926334337 285651311 438647228 21261494 593084376 10440581 494304444 179796133 521881531 50088519 596653395 267428239 877050642 240335537 442840299 782765254 846290766 196257965 363249839 968817917 976216592 21358087 573220159 484771912 984141996 232143614 339305569 895108075 907093454 728447892 736591474 516611643 648347175 227464293 581281381 657178698 659177016 629007334 875230285 794471136 876465177 366260976 404780582 664595911 723482748 791466426 959984102 809297450 929807192 738221383 764043214 630218479 794009079 290500584 524483427 395585562 460581736 821856610 988807687 285165189 619553361 952662905 963384479 159548925 586977142 965694975 967862775 270307381 458306012 782516131 810604749 63306904 538023500 633953098 688317880 768621263 814516829 934412 144595789 922990803 960799217 663623677 792010579 449254229 773171666 102701184 754069963 245228537 509556531 582178820 704536507 2402153 905373753 985200557 995025289 455903622 781913447 395659019 604085933 760015539 806632317 151512922 765012890 900367924 957462378 566819586 820009110 658316584 771827744 557224086 707234821 267851859 766297635 276302885 332578567 564801732 735601921 60390752 667696447 763162 553400454 797883670 843304711 389485958 513190489 20817234 134333957 982549832 994783838 875259838 983547425 358466195 949353376 557016100 730390058 508866807 972814126 109499791 528485545 440321957 693921714 884756344 921236127 38340043 153449892 441365484 757487753 663850554 711141884 371364563 972272867 257020827 412298780 679032812 689904820 27370548 688025852 272594739 654919163 815593276 979548316 934036170 940714825 245968730 419829028 792357399 908994293 905054279 943296621 517634103 973591742 46306369 660378525 333873399 468172892 263950356 619976594 121249332 372994694 879123866 991257844 841990269 971807670 396825288 763326014 850347907 891818498 831367195 936491227 902230764 998714894 291577400 799524218 838758884 865064256 821925643 967814337 199690083 919803838 901475729 964388685 129618197 810968576 280002471 406510014 826948008 932017785 53604582 345645198 730769692 754063111 376066907 670926455 549703685 856522045 222329309 571115599 972874609 973357126 736202193 795434764 86488180 88001076 453690837 469430169 889311551 899995166 964079714 989360611 209661262 696006154 850795345 963859684 877476166 891183327 763278813 808824236 216475758 842595789 475277580 513195561 46648674 366986630 815178118 902999005 537316550 868858897 991904351 993658224 188819029 823423919 775020062 888405610 698819092 764436856 340656633 953867607 266528043 982958779 798895265 901634215 18461597 41761531 485425339 599073770 601285437 718739965 203631287 634931948 847867883 962709699 372698143 398694994 778201634 974472435 443343772 508076347 611891078 733314644 719382714 781537569 356031741 552346131 621907358 702036582 240032104 944729864 729756226 837851190 924889974 987811252 855217270 897640406 627206654 974487236 109194577 930914207 828065325 951889339 949786833 971317551 523984551 983316696 581895115 938368235 305563342 644561345 843750798 908590237 907661294 982377421 279942182 374933841 194411700 964360466 855218546 941168647 772822554 797852986 304458180 481529817 581646201 696077856 918260953 996255804 866753359 950500262 283820951 497242588 268374224 501809997 105728235 383855987 946746658 968545996 925257525 957654432 259281592 317808570 591260205 664118942 26989424 195685712 308309054 527365059 453990364 778626979 34880524 689998077 243575993 714554202 804267703 846438813 697117883 792878402 959782441 980266317 739460449 976435471 362913318 549378769 371552148 895572643 561817640 711907495 938021737 993333779 756861616 864598746 10949036 36212012 145259492 614806966 314822698 973209055 425070166 982246142 329932764 700474724 689930617 746542353 460912948 765779977 447517977 824524305 182917133 355497987 290531230 683008742 943143280 985789915 437954139 994349011 453185358 669862227 643250192 729682272 157372625 421241835 779298585 905705832 854102960 930395517 485418249 803536306 178279114 593796103 403218681 878465506 431381321 448058993 515866413 739883591 896233548 922641678 51122649 183565872 832187917 850217838 857031076 877783624 772069300 920659605 914929117 998089301 493924972 797675210 30306331 649711074 196643888 926616458 790314514 825251313 785890639 918649784 151997134 876278957 623522937 759047531 327287080 620421515 107885090 157105337 62275992 845104456 47225843 330506860 90390050 308009022 982757920 988974645 482754623 765575156 161022851 948197266 78402323 728189582 181189950 527453495 304129195 319955997 502531128 618429940 698945026 989268813 312123102 388254182 739550437 918198332 40421281 268527269 71121535 819451692 117555123 449205429 531814852 811704292 603877992 768552220 514377873 603390076 169583368 492252073 25868683 965311774 57165861 653472090 745567534 996245582 976268554 998505767 984168630 991104343 191538752 604900727 629593902 865287214 853551557 863506844 63057927 88523222 288884367 508201685 693831545 768213152 783620767 880905755 629882555 839302455 580720300 823820184 48012681 877919668 598026528 921936523 654033026 919422204 332648250 381014936 762006311 811244098 541962582 567769494 81175187 935546109 923804396 957914019 800785779 882651224 656651899 990509190 576589010 806818996 884796869 925220560 543097392 629131843 121825404 945083916 563567471 827417009 962002273 988875964 760164833 794676410 213397735 311401819 283153905 518887450 68163467 754148060 308224568 327226654 321644967 690246884 772729703 953923887 547584629 807317047 644148360 867333854 285312496 637877207 64853763 427303447 544996037 729981049 681753301 682121633 167197719 870291523 611481453 742499057 279868237 676682320 630901340 809419107 249589656 413075535 322721530 814134189 641772836 799105892 140451800 154995705 444216732 905095378 593545598 759363398 225518804 353671318 234471823 288628592 827108357 923488100 722195352 915605604 166909437 621063178 417941332 809879355 697094273 948195647 313876690 529497229 293556734 995837592 261172639 385840961 824006331 987471637 459799763 584108457 178443743 789092927 616495394 967986844 729662384 814727276 615213033 713068740 821177232 854791322 545482003 813952800 157713467 676007679 961055202 987910705 934925970 968245794 808348997 848123235 161031603 626266679 989555979 989665546 932971255 995669326 754276407 828899526 520880873 843555360 586479093 607259185 811487966 815968961 566147981 945814995 596277452 943735474 912203813 915722747 38506219 473476196 106455164 954648955 319109553 571648012 931690195 967463580 517417479 692972137 246309226 675113267 849701327 904576316 342487451 957976026 143689858 337284203 506386361 546628789 155128136 590875676 797354640 981567774 664216712 935741295 826033684 848116417 46129533 246961231 64627224 262712316 286289141 728447430 853305672 856621941 439618353 816689093 445729457 588068480 878679490 934552052 809800555 923209558 737760200 816675293 97626250 559494483 707327480 895503030 751270521 776995348 266573988 285075551 844605593 994112592 584807544 979805304 335158409 609109592 334037164 660211226 662772627 728592132 658952120 803309763 462705607 515428290 697316772 841113567 369800931 597076064 177970812 291597746 13504335 156242627 489501977 754104466 62093618 688814933 654603302 979040514 849023775 885431497 331778513 484707108 101285158 960505214 444811307 821045259 101442209 519361359 228604761 464026180 974186014 997025645 641428852 812801383 531189905 681509807 126658230 164427625 147092747 199117578 755423526 881848838 596473310 678511118 539094612 636782441 441700741 952747467 152316322 177007628 7768272 152620690 388755381 572377722 377686708 882964829 765535298 786984038 386517511 912709548 7966900 692813234 267348353 408359696 781392071 952960876 181436539 334982924 549395055 662863528 829573599 858822203 248011032 451659953 247956297 919369578 777482695 970631605 937920911 948927640 739137281 887013646 978974359 979560629 197797267 592736585 494794503 847106121 419406178 608346708 145895123 539885689 470905680 699187727 1144115 86857925 107832526 316298566 124836469 901586405 309023721 410487046 673704102 898486352 544374918 966565714 849501755 864486517 109944991 528695317 999105842 999166509 935085173 986243443 53882348 80410644 82804166 569217758 71879458 314065326 412612107 815134030 445307898 548977928 467403027 571014703 722271573 770744451 229537405 324110218 790830263 823344152 724500814 971545206 111411586 260324403 651915962 876492986 782756730 875245205 898703465 988806687 474218444 957082682 210479337 824575760 228745759 951191959 747910242 830813502 994862874 997635794 245347799 388814299 78299517 127325736 120736226 788517498 456691103 477692569 871474730 982601616 399213995 523230553 863483361 870154880 21441017 713851956 736339567 990085323 324214804 817149687 166536862 440962949 219974269 907199486 533966867 607127852 842803015 954093461 841190385 921245500 774612197 782054700 626535525 682612224 164376528 984208424 821878378 969842115 754559419 891335862 8609251 191398459 766834678 903942863 611127434 755551082 129923737 849406547 511423928 644871718 110062370 320459434 40470863 709019157 652317150 843395737 54821098 806392405 244260381 884588774 474169622 803774774 57996180 394342188 70117644 734697621 956404538 988942032 203048865 439620228 957051981 974227643 225812057 727773743 870886873 966724316 384974721 621038477 635038828 908643750 176907678 427514913 95780892 739717712 308761073 974643031 101277059 987784006 113497258 846505265 333442401 891288211 906668818 924015002 894518616 995273912 295883703 463964545 40697930 92645791 714740953 760759376 525507297 651375036 61370702 716981371 271317003 494160864 972033361 977784825 392769534 792229937 760496790 808618838 599031249 764667774 529752416 756381794 156647500 589176994 393036622 961858835 160210538 782518923 177122595 704602979 66752152 661326761 616291472 895754881 933499395 944577355 351738690 503062070 60793299 855671882 159985837 832544645 468019357 477571930 94041937 768820204 453140563 685679864 158353309 662566948 631204941 633654746 648039449 978592203 178764766 630325004 495838905 713206573 829408720 927377893 854755737 933511569 667513033 922452507 628978784 903239385 264039415 935986688 435603130 763040439 207515985 319409909 678881475 782991607 462994588 514631592 285169368 467902893 286837171 659801188 31709134 69606779 393671887 719841125 251252818 266320217 429125962 559514061 585199692 884791599 85053784 702932952 230556344 534795555 693467825 973621159 626882586 880105220 472940849 787427489 702686483 745068346 406995275 675398802 289660406 326495822 400684510 587088228 230639321 320400582 507735324 777533195 729318817 827496637 161069108 285898023 90242824 152139172 551862544 720027669 39620743 398932933 85974206 398054722 152147675 617251658 445998662 930485293 917586167 936843320 87139504 685863064 373066688 679352753 166696854 500791342 994392710 998224893 78466804 341628357 941564915 999106194 914671166 980402658 599312418 767326062 172924429 640908461 330894227 931909851 556650104 739745599 131487608 586120003 927405534 985703642 313692570 791099110 789456240 803851648 159086582 191233715 375871465 977606994 665278114 911245745 632568582 672960858 72500857 283823588 992351660 998160064 468687082 938046523 595447407 885446387 952331562 998050708 449771434 957183369 577836565 989557803 89078799 426115948 145046903 291226562 728552681 759826591 74519701 684228992 623017881 959641806 750675571 809618595 113000670 615687177 680860138 795628251 842833670 867718777 485070011 935069139 483447534 833453703 52392148 432683843 267984870 878024732 959386848 961615261 792013243 996624561 756444433 863152884 500522314 790353591 377688376 543018992 930030404 943817293 797665463 964100813 411788820 811344992 105349457 489837407 96835324 517005277 396941375 937044343 649085082 723332139 295833094 606920523 877098683 911250329 826865401 858011251 384497778 661623051 498257737 764698338 834924196 899322551 581665732 612747385 648587836 773756639 462271460 589013208 404756336 640314236 299861916 744697829 193033485 473554258 683896514 903780500 303007840 721475323 483651737 600080997 627056808 756995625 380391120 604470769 361279904 475765909 329571383 537870199 25969229 822336829 932876051 961996040 9420573 531610560 390374414 969588341 209616885 356271758 601644160 787485763 521227721 562538281 624017724 878562358 459750880 924497417 670369409 807176693 486433238 797549141 528197770 788428887 800272871 828126025 388290172 693840571 434289603 997293246 343455331 769811957 144574817 492502918 273212338 742440211 616672003 706290537 885957486 900116540 665209428 723315166 276205522 910132705 768679815 952593942 458920522 468685466 385079944 734017088 856577560 858791927 873545841 927877805 495037899 885688364 894602420 971079324 250286350 718358834 531284413 563961281 691539381 729659729 703164051 725467395 659781126 848618170 466264925 741440500 193029713 602591682 134362591 859626873 525564598 850643934 879458578 921587715 233155996 278908983 35528137 143887463 411720414 706772744 843163455 920400649 100909087 723759821 116902435 321018310 525826765 892124011 361098976 904445850 74291160 991303855 139265448 648747105 39589114 915022312 320433672 941635407 983350497 993919627 543848596 904136905 626999379 807631830 582891129 707033914 683524169 989807170 53107772 105432298 61531211 643715207 430991274 666006270 733965733 931172674 458593838 531817930 484340828 537971913 176526498 635638150 760894555 954535952 674413528 675498763 607032009 894770899 217506908 518213589 418838857 804822334 467500729 896694138 190209172 203967258 586323931 715559333 612002221 902397982 459171979 541915286 12322880 97522240 109239081 996554766 286582587 496622145 803502426 897180480 710895251 765307117 397050932 844830380 136405509 731581761 631598585 806099962 311770418 781387329 299410501 335725016 600489732 885275795 992885594 999042579 341523321 746106024 65822087 429119582 398138262 414499664 410208050 875708545 605159645 841093088 12240516 273120422 126613321 474800241 624989876 668801444 979439665 988351349 285579664 973131862 393498015 581848219 270860795 610287359 302504831 947972983 586259315 656735729 400925536 958605373 400452229 644826302 37362638 573767130 295292288 811922202 28295769 423697423 837636977 929140348 75668053 935392045 289037088 499741680 973634571 985597012 916277752 942241941 831552000 941342117 756774228 797495238 687928921 896277337 479940304 909509771 480680326 692921185 994666859 997587024 566689778 945163438 339261147 759056456 739305803 742585062 516888833 668555520 516994638 907813530 485958753 825252960 255112204 725911764 68778499 747310328 889266120 968024008 701362479 798231235 730212682 912698209 372286930 866139593 421866008 911974759 552421868 995473307 487470038 899295006 804095727 972695230 495581204 946688672 537313225 819486675 862007838 893140724 856487052 859251752 943627122 949248141 525561431 834879646 277914343 997739168 359184213 564393777 464386860 660654745 330721867 579884796 607166493 699297024 887987152 945228456 699843447 843340689 270491202 322375252 561397309 580878524 48120275 985107783 113576226 954203318 462107123 728100488 443138002 602166973 355549272 429347902 487439563 927943392 521273640 606984126 212843632 381960898 921021724 966414139 562186719 883442879 273221377 825737624 554397941 936694444 27022409 679451276 82141182 328528051 43626207 792215058 759554920 907694904 247125484 563085859 162187347 551702567 1826535 169406334 346205470 580752744 822909547 840539317 566457017 634957144 102468206 697095594 967071726 998596069 448333988 803410871 450552819 930137925 924012913 985184130 765915173 793318013 383357301 850008190 455302247 636486309 67215120 232077378 960971327 985402835 647266982 904096965 867189830 910808041 651154729 882334918 607077979 810998847 709008562 862262259 189030686 210699431 46551431 320491146 322287245 857673783 520633928 576777955 334500186 760103421 590913097 799614137 786086568 937481573 326784691 501866824 318017535 449892523 323323177 850164480 429554467 844896098 143270709 543891726 989676244 998812422 38601095 457624736 67982519 593595026 577538184 922985413 196096706 527599402 78632544 517024993 196168316 971404638 310578283 574688994 838254724 905327549 119255249 846015989 120571311 675510845 458707981 885795841 457672577 551268688 970592230 983413360 207844055 996780309 525394985 810504868 69542410 654233887 294212132 304566894 546646026 969024215 384425704 998440503 463278706 860672449 968442455 987753410 935161803 983794468 52580898 121958051 114810970 493606810 735710489 838053629 140719834 241913892 807670953 993261335 299571841 833683766 816841193 856476446 827532011 977553279 457430211 568068238 483939798 867948943 678286263 789183534 160993279 293348495 799223610 991650094 91837931 226493203 767574899 877089900 701263830 723400923 207860641 548771983 511995666 565910034 131303472 613871107 431532975 809607634 584641918 880281268 527274170 810163074 18472410 367721776 188381474 579283588 620259489 868469180 410830836 873380460 289024031 583181269 541559444 790377139 264174197 880906118 261973319 567590645 191988613 680961995 732047377 867241491 718145970 863665874 667757111 849480094 197864669 310123288 115078258 863737458 778251678 925423816 42853290 615890245 439058508 852420772 536337719 776015381 105359790 532326264 736774048 953517942 731123029 891846196 767203835 813597994 21270056 401656468 279101268 595327035 262715427 486218498 702892117 727400164 572077531 821620324 65094426 923447019 37142672 432290437 319530911 860297279 16103151 714856690 683644641 988829523 689085584 985357836 857265248 979669238 415104963 553753232 393523987 637600176 120330334 773350042 619395237 814763853 531661261 651011999 275111557 294254915 227492794 460660555 531862323 680621191 126518235 939667881 261267290 963987362 560233542 642958774 923065314 942623041 472082947 932780589 4236896 336076821 484978721 513269175 460943034 726695060 178167198 787081530 970226678 993412421 754995401 915950329 903968467 978446196 854287113 886613950 103267245 440024173 933001985 953387469 783584264 994992550 19623669 187096411 458139404 831675459 156166250 386815884 490914255 522486838 82867876 987067012 283608647 861318829 345439609 545887915 167787700 683431642 627638879 755892793 222335542 303770643 932942632 986266066 902326699 924297998 274752411 353718979 593464577 996535189 183315343 939208733 360271373 598957158 478032762 975623945 302949370 345841035 459086313 639434254 161372496 254642334 59573896 688114895 778459459 908217365 705713156 944855082 701160797 898550694 122221953 730938858 19775965 581073598 684668692 868091174 646270537 683908070 690447029 968477181 686223022 911905226 34482876 935099425 802830857 922059987 748711709 780449920 465242720 948926271 535232028 628245304 453172903 840757486 269675076 530001414 886068151 931955438 71486281 971846216 874699739 954167583 976109161 978768829 785109014 973029341 865929003 923632848 279552173 828218699 854116158 872001048 34624794 272250355 498988170 795516906 333006826 510425414 556217746 629524347 768274129 880736353 62767681 487688336 323044528 760285011 571424126 892127319 881173534 983183126 987055938 987452826 458363285 480232568 818336869 936264676 892477006 963448074 872740914 894831746 514525557 811509709 781513713 868501526 805323309 931063520 974666600 987130821 124663533 789252967 974097644 995521858 339450683 578187350 180339291 987751245 116026550 484233158 942910554 963975044 951427383 979480494 92407767 358049519 29655770 350647236 220812377 971494551 610464659 997050215 637925905 920436113 520773629 617084220 338804703 343122283 275203665 998041097 901787448 905185725 772992135 866313009 18348283 974192977 106126702 482490226 255992311 834183094 396684459 600099113 231367455 977602892 738732588 858646927 181755696 896125693 540057372 755512798 518329974 776096341 749674643 900950890 896018474 960695062 60101646 967913575 267461326 444171065 567071387 855693599 574616103 875480907 149770258 878491330 772909409 921944942 711594805 797933751 31194852 265941241 898395906 969558980 733829731 991862290 847400915 985608628 12204746 60928459 689056447 846437342 867099225 986579036 211470690 812904340 974690016 999077318 522993883 857368468 856768116 906887859 306165111 533521137 796777220 873907719 287788354 977402602 439004553 754158534 812824307 924041340 151798144 359370195 164165470 339247396 220815 181655999 212407939 401899826 852863001 965155098 961310509 991650531 85804505 888132733 630526334 876706297 262231588 753470933 126782056 449182471 738395982 801752180 156031799 812339299 297697909 450930396 89798900 143278888 421888259 512365629 336046415 712210180 895133006 990549177 335156156 682756712 832156185 964815026 662710707 880951852 184723237 897784052 288754127 892186301 148057820 850478746 664695484 751862710 504632497 658821384 763351532 844098617 839376833 923189403 515150733 786972151 305918704 366452351 611017992 765777234 762759838 870433325 582159610 716458851 900743 953915568 647525987 648137656 817798692 962577523 300369463 646094036 734656851 849533324 201474833 662562293 8181851 398875971 73747847 417214574 903086031 949469969 345900809 901256217 626302400 896020437 446219423 675299135 82864968 550213273 281789074 697015265 978826993 999335445 596072774 747947088 273898884 644304604 139015168 570398172 95575262 800079145 107005563 150720507 270273893 704577354 479655954 824258988 484197291 648074030 212019592 773239585 881357604 982857188 377338527 876172411 611466750 992464276 574228602 846153718 660180847 819671413 544320386 870453596 947680963 989140914 160213079 255242485 509596718 884903038 352919522 970157906 373294265 422527540 125365673 954409793 767094448 866316947 430432601 912503581 796845686 854038952 542778290 970428775 224512377 771723926 828815750 877792015 168054458 760959768 142585943 243034844 635988444 913082475 753423229 838194890 878986570 957700819 911892488 933933772 674294194 829897714 571621431 716511035 153126814 801817289 581850137 696280602 310595295 980918082 646463776 915233892 38006610 517976680 390387592 962879965 848735315 910332295 691375811 994008528 609537911 985030434 120785423 138076131 848329217 946950892 780159290 964411045 828094637 968404896 720487846 994291911 468623848 629901788 739874047 827245731 852979153 872745303 407762967 501006593 433421521 886129854 735758156 847237933 481064197 880032810 35677831 836757443 960865394 974381580 911163643 960526249 974172887 981835912 210586869 752394821 201804291 362064725 475057415 631383317 983826722 998239457 660934908 802566255 69237268 406844157 245598263 528086376 173940771 357328139 774861400 909897580 28288263 771564575 878521352 965994765 801312007 839263642 552441116 812937282 917820482 961722632 732836891 943737907 942215759 992464066 299660485 787000862 248006080 669661326 655167732 882151331 542981085 770106199 199922895 687969941 440900857 769268863 657525856 839690127 488074695 659269915 769442820 793171097 550053179 987695733 887807759 925818334 155762791 900109311 715409439 991876947 891913075 977430958 713205488 947549752 158370302 242962221 624666559 953178455 74921146 958026075 309894301 784115705 941096640 990951617 54890373 511162684 593009819 638527912 333539687 821179388 441035963 793935975 482162143 956943815 645433975 987923419 88467673 811217179 753315812 975223530 938547692 987356351 807762355 894242333 607848968 759934430 468754913 912302596 370696260 672283964 283908528 860765245 653489304 705734355 462587819 803600131 281579751 552835229 54638756 219432181 4182263 193406758 219107222 756207398 406028880 934458441 475267398 613824834 647723585 779482877 548733290 963473570 126001241 289655271 472036124 804156015 204189688 696184049 425098178 980947848 572300079 779913684 439293319 980328945 284263736 660881462 439388234 517858657 178736940 944221068 318319542 553319851 138726935 571807046 185590213 566154329 140545335 880629155 802964347 964132979 270361401 415951702 405013393 871015512 300407503 790958294 572548187 701998006 244958160 386505116 106706913 202989875 662756392 814565278 889777487 927800208 284487077 297703941 306812931 712315668 626590155 834259501 149387602 160628996 178025566 718731515 954840829 954880839 60869778 363544766 500766297 662925529 827500631 893179112 931451765 989969750 615339183 883298814 93886375 804960312 2433797 180575236 867147240 914296380 904063162 936333807 522171850 773018788 83651747 119055433 903160624 985145645 366285694 602233888 444153985 704642567 675926722 988925264 544893737 940429150 626452289 784475377 136585100 985649307 857248876 948529965 953482008 966766911 706530583 814632626 631001707 641499395 67558553 590977914 824415053 904031865 71406841 588720040 235978724 519803464 914191557 979259207 703089139 899026194 221893578 697505078 606191536 917816284 607487840 953817691 482131230 609955886 758313909 947951970 196558906 475031485 98862942 362329308 459057282 967624016 251760986 511697952 642556105 861978316 275010495 725674540 218521462 625807799 116783379 649842968 395118287 406349889 244623216 875564979 228271770 661812406 466232187 952288114 924211833 985720647 62704506 421045886 258237059 683850316 167413560 687753852 142069323 178201657 774873396 883810792 506753824 511539478 177779529 962813438 285830679 998271288 774728497 851059784 899884102 900570303 996221849 996507928 3750537 248323957 616673093 841161312 894734206 949558888 760895488 831459026 987814395 991456726 471300923 945670060 48002170 194725965 81570854 614693871 398469719 699019004 400941213 710065055 551434673 979912532 275068611 823368679 47775206 510636031 250605162 515221335 263357792 500057269 677058110 714565352 37060544 903802088 155145436 325238623 621250897 621522152 413572141 806043845 299101400 601570566 141819563 469525422 121632052 919527352 55744391 453051627 560386898 854025787 93829150 941579420 580361181 706783834 998777418 999094997 611009348 890462613 229505968 792825521 892230572 987777583 639167123 755269722 612320955 629950941 135634086 232159617 624169240 777535514 50702193 72736349 117528196 178787889 327879254 911995653 961338807 994381033 411504092 830463973 242217488 896282835 631021214 789044505 298244042 312420223 125913832 473865546 155980252 725206162 285229586 634483135 564349332 731065640 892131871 962624093 413690612 621658661 498261464 569629888 445497319 776975718 716750052 802619699 624109517 746265676 279309707 676473826 495983706 687607125 410699348 534119228 837515492 865019183 771851273 866615326 354004341 641910591 202616350 760244523 162603405 929583834 412760436 497961756 618786509 623188163 548586208 640946276 803843042 939914750 717117368 728839831 267766083 427360475 508137348 777265216 899270427 988917407 104158381 725917952 4591906 468818791 3029080 160658335 795403791 852139664 112312121 382437441 162776178 508686518 749899930 759889192 371999000 956649698 577371491 799357682 71696535 444264657 260906625 952045757 632859924 649553246 653201118 791025561 875473052 891377316 136722434 595135738 927721900 970119386 644020636 933273897 730423194 903094874 659923271 929057137 700851148 950352667 300638003 795869661 309656870 387247154 641208913 793439394 200273309 821241701 794062689 912700064 94931921 793864142 890268374 905901676 456857241 524724188 447239762 617391972 910884166 944131259 542678901 769078729 17515337 320760929 368563663 866709262 202107820 815371991 93911881 959746777 733018157 980949142 486105597 856250363 176663304 837775632 598726562 700761573 198487862 586586154 237107792 672205088 485074031 696769398 110383579 635514603 67421451 182701586 966588135 972773034 678725367 903534552 125238691 895844334 168561739 352047323 438168918 985024150 633230018 842874368 862177381 989295527 571353920 881056049 608466025 920827195 158378191 265405145 826903994 854776683 780476141 815597163 736395291 888785979 920705012 965542527 857056220 994155488 807837507 903254687 810633861 966240601 538331302 636179481 74112510 99341318 849504272 968337703 236153647 826243131 518423296 997809685 849400845 973936082 49718348 210305850 669871299 765118588 574158455 959629891 182614853 546659665 162263800 986483242 160439822 335046700 296924364 867758822 127678284 477347009 46148709 845620394 267855711 953645766 986714021 991235247 595739685 873288169 566260294 960259337 70878929 839285198 773343736 905260384 223818295 806373704 936001886 955239840 378881412 856222642 806649824 908466716 47077286 808495229 357946706 482906961 340989185 786533866 955741716 973445363 185342587 335858460 532082655 780597401 293625271 857413760 601248386 807007961 106811731 976027784 502635281 921307328 222033498 779732648 179175421 754226957 27707097 689330954 642483473 835859822 28573816 981857534 374884680 587933456 704733139 843690493 951470057 986468792 292360972 353067869 613429314 882610109 846005956 915271864 940563654 997078135 842810441 971697906 522399442 652497295 983006535 992222215 142414091 436407167 628523455 960806365 503737430 664427130 311686593 713497365 935190800 935717538 570287115 746683700 113475267 672629321 433799170 778783503 589345407 789434631 854539488 890187511 960838245 975205984 140216792 147309487 430529012 727957061 359392776 710254504 783460920 980158217 707018433 714973621 907012076 909036068 350103577 352479421 720652414 845249873 619444823 776620472 915516994 978719314 826032998 865221270 317365791 698072836 841568601 930440356 78178136 559293338 79313548 733351923 113878445 668274202 227841666 328718426 631162772 873384884 117592268 843127340 642690079 966062561 173630485 201232882 234310708 652254506 580746034 767266064 622068391 640031570 462540128 969828639 32036317 181045880 215839721 316411788 107332500 273409071 841702798 859446686 912599851 993721192 983582427 991075889 552104850 885797127 331959167 775444437 865492023 932956056 468115967 940053218 967211688 988764859 211599409 801484316 45150123 927011823 238661716 534769975 358681582 387777096 566626059 750053173 271022760 462000163 361477845 679118725 523868101 858501193 644936025 854503767 505894003 835397688 176812498 768189209 861385125 986119853 200072856 807331074 957423613 986714782 453061188 694295965 826936233 993703210 482405378 978546980 626724889 719189984 694033423 805226846 450949735 901827396 257632524 648886311 217669490 823200056 455962371 736325314 880870081 918581348 177309533 350280677 661654424 804491594 567526360 960015570 284837278 331424723 865459553 907971087 194642572 276033820 447722601 569750039 149879231 800150775 945630819 965843608 356680323 536515821 343560865 705721057 286773196 390989113 171660957 659670111 938141224 967101892 430491861 808872628 798185082 799429875 646235188 895367621 122093782 678771525 205874247 590224455 421611427 460285963 542900205 854899249 742969020 787530678 603324283 902317017 179551197 721110787 205410723 366944392 124858921 886418055 502595411 878745393 111768753 747490515 30071968 655727632 241582396 407169887 973710269 988348589 102314440 150313021 957786953 967427631 299906107 706397128 633098288 909970911 836198789 851536163 913586212 969227206 387137564 582391440 627596952 799240591 539661864 607915489 74045045 971845327 976716853 995037459 237193222 482043778 220611957 451450250 304513723 793205053 988610739 995501434 335051266 369512668 697025465 896629999 339743324 932110112 903034299 995872017 858159802 880633636 625869710 652777431 584346273 901278235 342270195 982887955 862291754 959477496 655822065 867224205 90108920 113233581 173405001 894982776 954583914 961156666 223722683 742288293 17164532 312283529 846967422 913375729 820303976 912996389 475591909 482990019 556200013 974075786 115733737 127525612 629740004 736698923 915505039 957362271 992177334 998293211 499407198 568985968 293853394 520859607 635431073 838144168 51252506 857839493 428964173 587026199 334141025 991136190 666053237 792311186 963717065 972639513 475036045 971157615 596857528 782513046 749884957 806210899 405219369 440041553 171436843 382717954 625038476 793447966 991940263 997534110 626148524 912553503 699390039 801701880 141999143 521236218 376014779 545373549 882401139 950763351 33660130 947115504 566342834 971809634 66458920 332259753 992535759 997502533 565952530 946228932 2399512 249887988 389444771 639462683 346811960 681020317 611303635 668786544 734257083 845965849 216421855 595819594 918382507 928429990 42931571 252655773 57510601 725892497 566731808 572402090 194985338 981671385 608431212 963908015 749597918 775917352 858536680 884527056 168763912 436083154 859929562 875853204 429263187 773885535 135565791 767692127 865397077 939837422 498539183 718393317 331754399 597641434 415012244 610695272 104685462 855260084 466678965 786433563 776089605 932779395 17078785 178886001 752278647 769220000 451965693 820087842 294424918 638227059 119260697 927811241 136237260 896741057 826069735 871575654 993206308 999305644 287641092 917246103 722393171 995509159 646396520 697102400 574427664 932673556 957455728 971977034 830755123 914463508 181245022 515822924 817388287 912587375 897478854 904857964 80699366 453571620 183256867 938982419 868235917 973299760 163531120 830698634 567456141 567784151 829885879 835578459 295617601 997071797 899366486 979376072 446271951 646274645 293027450 426718258 402651458 668865653 91486520 649023198 924918704 966577640 421791658 789019548 698181595 762844609 341819746 493509506 739077947 824193626 474363335 998473237 400136294 825193491 314543020 672540289 888168846 975161181 454945852 917054009 484011854 793530976 208534129 596692103 155867533 477316594 587487843 870702134 2854008 447690000 129276399 483969315 918104685 963447815 174778338 432266563 95614213 876091193 550290995 656990588 466918998 914051266 971032816 994109213 670812488 904168849 988400684 988544406 155802723 655410700 94458270 713678364 552098913 607719774 762862712 850521654 374627429 644492916 838923686 936157872 542057840 550188678 581940315 827967501 613999835 728902359 297423795 713648009 593845321 604356211 513624550 551038651 893992978 950161591 701774196 746176260 276264247 976552867 509421458 635517180 979058799 982270058 106481989 557042757 812061516 821437204 387827835 946843646 299729 728238560 421963427 943151088 587412929 882738447 33006635 614361668 300901418 479148976 699968228 755195051 488407996 761644147 274173401 656264125 199555063 716314198 370657534 406856393 780953021 917730607 428169298 723843900 925186551 979769322 360059724 626518480 240715120 370692081 124584525 255335192 863673157 933458101 725368931 953328078 365536280 453625681 734974548 924325625 500524653 547164356 133106579 952820927 733481155 780720545 625260520 951330166 620214317 800335703 211269948 955197313 79962745 977149350 263278345 921026049 973681689 989589264 137105885 483164934 237357743 318561099 696673892 866904940 898334260 966812749 690428061 965578167 27680935 253124163 938920909 952200852 741353479 923069927 386922263 434133056 996546533 999326680 991763075 994003870 366230488 890444161 73050453 720753387 722882357 841010311 774212069 868002270 801747229 869326780 997422712 998621336 212946056 442065072 485912743 606386747 907188277 925412101 507121281 929950779 518629194 605010008 93961727 565429566 349829881 433120693 367888900 819799449 169229580 598361054 806732256 846923474 607782422 761333182 851378555 916297171 351364989 630741349 180112436 215816813 846544284 905813060 667069650 903778631 915393327 970756739 812984988 853921497 912994729 943682139 889166215 908535982 321350977 804884509 113179661 806523676 348207831 562397811 617095341 630576318 948377937 967880064 896751403 915416952 998332359 999322781 711492856 970676655 337150444 743102054 57869006 845546463 755883106 849774622 17902802 420658728 215164138 628020640 96517118 142321944 48689904 490196348 248590657 827594177 538909250 625574967 145492911 852449514 26288602 105382409 742945640 883992137 277791887 696099736 845525511 854219924 17098529 342127467 41160123 439636335 219480950 729441569 107738635 394573575 794347992 915886935 568417062 852879972 117718488 985971823 489656612 745295204 771943398 992827665 48811595 294451267 963714668 998915222 632569958 740404302 86926449 859176199 594816937 698778137 545859345 914981456 891668761 986177929 291069432 854751051 249667297 612100772 168885202 987253905 539701253 862205526 926813345 960095501 135576701 140636566 115302315 906826615 83207360 166203498 345610852 698776315 661961662 853493892 175421957 803360152 146756207 650606978 871011676 928232998 59165208 322773146 391052590 446684980 413998508 935338371 504882713 554844279 909574304 919905548 139737305 470244059 390131536 602055123 224951405 333246596 985378178 999182327 201932564 404238501 344402372 976795951 586332591 739649447 51912352 927584735 441246247 630585246 229899580 967448662 276308221 680143713 59496103 522914609 355152548 894623864 378237957 645748127 138357161 968390920 837765013 919193551 695039275 847123448 571559415 928725616 583401622 969106060 839374453 868692634 585220037 906820918 593511386 763489523 808454553 929680336 813618273 937322859 680808119 901183815 198921034 259984175 214630362 349575272 83460138 851345214 495094191 506535443 836197244 906044872 571660608 872933044 61920170 882458055 534809579 658902704 166406512 948199536 861781888 905357613 686267615 936657415 443720641 994729901 824914554 838886460 770110885 871382962 153138481 621923279 315385536 336020393 227445471 796039847 17743478 530627147 234475694 654215137 24769278 729159458 901602075 973193612 885845744 990946617 624701417 949342301 630089325 737298648 582059724 881932612 742926761 871409309 173886853 663150865 822058125 902524293 522851580 793074275 126177323 230754678 80217834 191636729 740422873 966418503 811350979 832530887 116676747 425192656 161961930 651352792 128746786 510678335 890061258 942687906 921789435 953650502 46768125 304042896 273849403 680532880 246841144 732492952 498013631 561576771 128523633 247016292 951508780 983135280 406375860 779919343 694443887 732107633 625782906 970185331 938590453 992286364 211188171 455534565 408508266 494935617 802043457 979345036 233262879 900912769 966879588 978799819 411544336 772044982 210174427 216572608 277678425 641348817 123171090 848557113 575427401 721066691 171169923 288650486 207335981 210782071 483731433 568642623 454011442 943836623 113692726 941145864 381060318 732141370 717610091 819251661 887157893 985763252 171974343 957952894 930120000 940317190 923410257 957259173 790586754 914633698 671764579 853015126 595762801 852512425 350915850 392506845 612456804 939332044 762590901 932201940 962077789 991771603 623540936 841390466 327064184 600182663 118075779 781384961 843853415 973144092 569159740 863649750 841047444 948542389 812238706 914077936 8244148 695932978 342005472 963014820 491199756 922909849 649726596 936707940 433805055 805094110 339641530 981370111 374575057 393674900 278486705 397242314 735590751 995534731 636613145 936056476 298323257 879795749 356485882 548972272 410096824 988065072 810441857 871424192 793956115 902141298 934385293 944713029 936198281 976604187 567400410 733667499 925507697 928063380 239292233 751157904 629530572 765540638 797818808 948607582 518076686 690230413 35754952 666154996 909567087 941833920 68242736 715064300 123593640 194765294 578028027 663402396 210179397 655646195 300198251 549821808 296014100 640638276 390508597 468541850 191683655 518891252 65006577 399224811 707773123 747881686 425495515 934119351 105244784 543467228 347796082 985226373 960457982 967229086 950963230 984726790 821674945 877452220 977525391 993770589 947160627 958823124 696593460 987928004 631547669 649506213 540463767 721532603 524070669 943333394 627614435 689806638 534355808 749794992 393843096 401627154 890596377 907155936 645131790 911518605 738754209 770634838 780788253 885082946 435369579 842459487 114522673 869066707 56498336 385292069 826808915 963719141 18963593 993600939 565345796 633749165 344662748 621908938 131330551 269564183 803571545 864731939 805945359 818851202 563870925 828130136 714219910 723629478 775692977 891070996 914009450 998001833 246755322 824456312 215238274 258268045 872893989 955616953 234404648 558043837 395217103 874090528 903177171 949338415 34782651 211853832 743563102 956943051 234271283 650381246 531755746 618326573 350929204 914657644 152558545 867883991 30810266 693800577 545687936 552790573 786252408 822828772 361304621 695683920 878079790 879914671 415173126 919322240 916541419 951459703 500460158 533426781 17237875 531352222 302670644 965830027 464282863 567672200 445161872 576519979 456089547 593249879 964271344 976421230 907654162 987988472 92052145 408013923 473968000 705055978 213828875 927654715 304380820 409150114 561053383 724364575 582295773 811433553 410858318 775451773 521089403 527781821 799771056 954527348 352767330 897704116 133146907 533439527 838839873 969938319 212753018 595602129 616324536 802160862 434597310 595880091 711078686 733473237 647477721 872162759 429120197 431154896 852925084 981948392 467816150 749270611 685765966 948486526 551881459 652945465 833422675 892216381 404844146 605757001 753093128 910860107 83897852 893891526 861989334 899085020 577852475 613086053 274068303 290599959 295682832 581453792 893839401 895352239 272420851 745869708 4959622 990799312 517596865 786975546 123504535 423510491 952940635 961881167 481282710 535421101 252385440 405411403 977023048 979786465 331512633 877717345 739145607 961134660 631066554 943094182 315769121 350349982 865571832 973971821 42762609 717995439 365308347 665919443 184147329 235036489 279387950 690107660 421683482 579062954 756800021 771896730 401639329 573910466 588384385 764877049 679680594 890234447 206996420 577173050 121813467 132678930 652869005 842037328 438707317 847023729 610712570 996651546 427609532 562565301 276943569 526980298 628706928 998127524 828748208 940378172 499428092 867507702 410368190 840007249 687006986 997900321 565168293 905248637 522541326 544818985 514089779 778716090 380985984 858740711 851098287 917045875 984506737 997870958 111104825 716592062 803745926 951114281 133558394 525108395 86688750 936291481 885265142 996755020 302391053 444895992 256202290 524098344 83410683 728530301 896029948 989926662 436615725 587210040 609019772 848088710 248213495 737806647 237991561 273283751 856658411 890201125 245148102 469710771 580918290 794211950 871015253 976766389 115133258 132750964 686391524 977198419 980496031 997862115 603518382 729048826 418656297 812319394 129958797 285116344 913042697 963011805 651848630 928801291 589850796 665022719 389783101 510025115 486986813 982481960 39734368 542095078 601524296 756838378 229863897 580133472 825588912 906758710 779400888 983864447 956249655 960053194 468865208 906697629 627913882 954290599 784742246 969481092 986275917 995760752 268861906 326629018 818386509 868340291 445493016 873782343 981613430 997757349 430763699 512457697 940765235 942886487 901244480 996978031 106106647 777481074 838121181 853502406 531252696 607328790 610608009 754975297 768043344 951793277 186569730 775525538 945264713 962145338 510805824 904163232 981192916 995046107 385938008 562250744 586309050 898584847 586068916 684986658 664180136 733331554 48877520 490104338 90508029 441605401 623927068 930415367 90675198 278241222 293017135 510943657 343894797 380180345 893758668 916569391 752423700 814229559 550899188 820947864 387428729 628385836 478347506 608135443 651690060 992944818 497318893 814391044 209368747 981505805 688813763 922948155 888172093 969592888 185853413 563644420 369981767 465504490 168986235 438932566 700001909 972443888 719160466 811125039 738172594 870176634 216237255 690665209 59409843 173832153 163102296 688830882 457036519 706220940 343902560 448495769 713089683 777164683 508712924 677950179 520037264 740636715 765089415 813620365 542392296 905371752 418170588 729573432 188951457 683641723 736556014 771996710 318180676 586387060 791686797 863918196 779478926 865885641 567685726 913874802 95004789 144359416 179797280 563572928 991505175 993504502 175717540 628612599 13381962 646334968 421021323 474478085 77293860 146546798 418223295 780897458 374555604 682917393 564104716 600762167 657429209 816062337 995198386 995727024 346027444 810579157 113264250 731127665 763195859 941094934 309531585 510130894 417083434 525828664 328343614 842538060 527090233 816550800 580505152 767826475 975109478 977712324 473426458 583119025 679121934 983663284 56594404 493187408 487346374 657420978 228035602 935543448 690429992 767167557 621483585 967283816 909676672 993308419 718988708 997694700 243981948 265605492 613024132 787866733 955543201 988803968 490923946 704157059 396763953 595183941 636694943 906380174 564200353 910564933 542067237 564023852 124277327 567516091 909573622 939289949 794578939 874768316 2558209 372992622 396303489 773836532 130257353 167636885 475206959 578456460 659934200 688250895 841031793 991965512 323826063 747103051 589734033 934377849 894962013 944655188 69138392 859658641 315352123 821419452 115487048 320165951 697496679 845291526 680549978 701842710 809578352 979338641 5266317 481948912 46734980 467927770 887410972 891617532 360482014 920243209 959274509 970077482 34512273 539388062 161270408 706527604 606459720 664955398 586321606 900160325 979190309 986081324 816599837 836753795 718241900 901817332 701761025 908361263 858139901 911801753 336544957 787137203 18611291 314604444 856406919 954264648 889436450 906259191 177946799 359339496 532219579 996407367 478414826 979408354 278103369 548980488 604294004 696994199 948438345 954792563 248809714 687388515 144941293 676529867 356968966 501484943 188483982 519790409 677232001 880025094 541889886 999007109 56126291 967664553 708092021 920861995 694316735 711587909 939722989 968308178 809721974 813757118 392278864 758312839 682150234 696999904 73498546 794208504 337310724 391989428 448591606 493825813 678866990 866168478 4145292 59703967 149139289 805944319 633547443 988031165 723619321 745425750 743203182 841891097 778638330 782754220 813441079 869840044 818898942 883407720 136971132 402293059 290319901 591517185 436039954 613883227 425945141 608228154 891337257 994854491 84171501 498767582 836452540 911314706 640431990 742111467 159355420 557904276 65846122 179700374 422431756 719845174 395209473 757469966 459663358 823442321 59745822 485752277 956561792 960962825 524712303 989689481 320483181 728174578 24204297 476699531 190176077 804662864 150868199 624874529 511849469 861638210 563087279 635536371 620399525 816598684 88799959 254766588 199729670 352947197 547359915 611760593 552671638 892809601 43028454 394712858 384019780 924803326 668893929 723889911 953968822 991700581 1899646 301061973 763989855 944232168 606725390 712989416 246351703 358224344 58634164 592966315 305000124 863584819 945564016 998400549 407816319 820891986 450620533 925719570 517485776 711449428 501190824 948385693 872572290 959526846 118511683 657983478 375008697 649218462 412271576 652192384 169419839 192526149 820674130 914856709 120520860 769802079 545130187 782782416 706647128 719235365 723381332 813693737 137126301 854040844 483874903 744175546 247976034 441227591 798335664 825541602 862551245 952248766 945216212 981612765 124862069 455839569 536184954 663005749 75320059 978228859 760500838 818524654 707645901 810998189 956990337 988639332 332238732 860815678 876695467 970034736 143176284 952431040 745228587 805103116 525461948 934981091 819720566 949470406 802122884 976372802 95630046 598300660 971269102 990485698 424891716 580126192 277092806 601324191 172297022 762727284 897950978 994494116 720833757 807989623 529592540 933470896 529514607 681912797 47606316 85847336 409582190 759020948 148197198 424098138 500624589 632651432 866184877 972834560 62287865 829378049 132402292 369944546 763281081 894634489 81030480 235192768 859184175 988618549 42871437 268431438 594233104 958495304 614554507 721148779 333713495 822902088 992482952 996609881 759003540 932606239 398596857 920534815 527070035 605012633 23324899 75711272 711110585 790788168 600725507 915762475 597982975 672432681 133450783 382249034 909225092 916755978 228257055 526845046 578409351 820519826 851129279 859340025 50820835 918875150 353600400 458023306 367399718 455446809 311919086 547810648 485505469 523838670 233270637 878639877 629469841 718842837 945056647 975179809 355815133 796700676 851842645 851888873 945623734 974395171 667530364 951604515 649801774 920403420 611479199 927605947 653991226 879208018 65552388 627130843 581292278 987862811 253659694 731446186 863439237 904551682 477144419 981773131 567067002 841510032 234247050 610819351 132119848 859453651 85681226 585109914 603630628 886891640 53819565 194910619 20190350 362598995 736260047 791274180 207643402 263835886 843930826 850998746 326395655 664013290 44458875 87948560 268943107 331812940 956424645 956896743 550051713 777838996 5701021 255285762 461286285 646455619 435329956 593579038 385572358 812504705 854046985 883885816 123926613 709916007 309868807 954822928 266801397 875575162 660153912 927125444 910491678 923789538 434075549 612250013 651220848 911071124 434736883 626515593 268519849 490023841 596912212 768750527 812301000 834842421 476558230 626776787 800143985 863478499 232285044 535654138 245494689 261330418 450369271 911897014 817222698 851772128 910468968 986562746 87808922 131821431 253809042 904034199 544232520 868917885 219071595 520202624 323959067 797725433 479438024 608127911 445645497 948341324 359111256 664361622 558966515 566332436 572577292 684680034 592690394 991353707 714004193 765279616 281749964 496729716 434415045 851476250 512112799 946688878 759502346 846188258 316818790 842476212 12426865 302334219 824184916 860898849 21901393 289224948 889302226 924570946 837093134 917283598 63093939 154547867 100546901 859934340 467380622 596902049 608199751 808705810 590579124 835595302 380798091 893458617 996701628 997024308 82296494 409957430 872340498 980265471 721031291 899424414 778747249 946199490 372732932 934643885 807289360 922699647 427530435 984251244 469430475 812987758 110695117 209642069 330160482 903686554 66889686 730467562 425982901 529495127 233776477 624160863 237475372 487208699 417543208 992912885 349935053 938145458 657835297 785689595 477375623 962718685 51084091 492426420 865091760 908036983 805724333 888315731 561037257 667672300 237751440 283881921 722720845 786574010 869014319 918827654 484262572 838318515 570655943 656795632 585908705 795146124 319251649 523706015 860605518 896912002 428870474 937390847 374676507 712373843 105551292 579686698 95841295 481600534 277666840 625810080 431736272 983898359 523466410 620986917 104312241 905352041 394128507 907696595 519646867 629482681 135380162 828812829 151676910 192551930 592999375 829768689 206803568 948638562 492822439 979244896 589186397 676747571 820947821 914336353 660102423 852580975 60611160 460949896 612126100 776117154 685853564 870193844 382395760 432119697 944952058 954753362 471642583 797608509 975648128 987023092 883688260 921689101 90145313 263980404 230121971 584441373 509971397 732234708 379248444 842847488 434842264 807386713 621844974 682784725 567737748 979111514 669334077 847020710 104209425 911836271 505754520 895070496 281310905 556388961 372724305 960878318 311827928 616860283 468169238 611131948 904329156 970611665 612793972 877172678 863048480 966494511 776167942 782125142 421012326 995713144 831879000 954762646 712327806 972344342 227088133 583447585 203584182 235908575 284967447 774328652 21652851 275473263 94889743 988333864 321880188 604542423 696990210 943394596 395713883 469455909 493563619 542769513 484496004 970641875 832794243 868730794 444174548 624873456 461463570 856448775 178644864 616548964 853817874 951657950 687344951 742292498 200502534 606242138 9412720 412700047 195177470 882095365 857415486 953940828 502946159 893034247 552457504 896403648 994537896 997543264 204633481 729230006 126313958 386289418 865007710 988058287 945167820 954499718 572239575 578527137 337768897 737228498 775056877 828103810 501913405 749208414 104325991 915879719 493287255 666473053 876110508 999338330 511688084 969611069 108415451 302512837 650935844 660892365 998644434 998992835 720707525 989787748 780247608 783138300 330640673 597855244 309289046 836388641 154744716 228973740 734809921 887267916 665454110 909298758 115301735 989108412 617244059 710287595 712960533 820514026 722716195 844318862 617122135 801373817 593782174 648233824 21457022 795310647 898934770 942596467 616353067 625338941 587451534 793925034 900201729 930619573 899034069 969137745 544847762 711832698 742647357 868383380 264986316 463097550 189700565 376312788 206162550 933078880 633248856 714836486 688290041 701253489 177911500 214784815 766376609 929201840 561265851 698462842 808402745 907066581 682628253 825428410 380367093 869042641 318208407 452926664 348425502 497469967 695382506 893505451 385417862 694767094 801793117 830105632 406904822 787551111 985623569 991859494 539733928 670112792 637758688 698756894 554619692 856264462 726578527 962648418 272358037 469176303 120991965 350514180 295160741 435947376 815691309 973176246 601520210 872806297 501973482 600048432 62218689 495472736 224199142 356036398 4687560 569082542 734729227 840865785 959901850 969204618 194467744 296680963 885898439 965721103 565630525 718353123 479346578 789514853 26047606 794698791 220624904 852283051 479446615 849463903 706890805 918785810 394556560 415507060 901839158 978753258 948301576 969624334 768218429 961890718 262650147 726977758 144200048 700288998 468069035 963813221 574886880 849961190 649516821 777206621 534740679 915594138 397836961 844199879 13255208 594403741 629365182 715757113 617868471 801312366 630264967 655345988 329741342 931880972 17930832 154249504 486812382 511269070 514105353 613074512 688102030 764685159 862912524 972921401 934649911 965086453 118992902 822844979 633327592 755270718 469397197 888384042 722011402 827502769 357709252 478126446 372993562 884856729 830248927 953908559 938989828 997563792 522827760 572607898 933015473 946952093 602306980 840635549 405460197 792752025 508142712 991938516 968200297 996734189 651593411 983173674 938290461 967030541 651485627 725090939 301555807 375509370 305998260 613965873 84890319 254603492 217415803 557015029 183171910 216596585 800837178 883736467 264824232 720607239 373872325 878822159 773218240 968848558 72270561 994047267 289250251 455436919 859443163 875653326 920170390 934827146 238664122 582474865 816876072 841825165 992764793 993098980 647445314 768914935 713805764 912008071 365902786 528697933 108512706 529867189 189918814 573881235 511115075 911756579 985759268 997153347 253753569 680868788 22168547 666466486 215579580 289965825 44938046 801499584 107028776 955517970 274672771 788064065 902706159 921916398 733124220 741245772 235265693 415631894 130565258 651803037 391012643 511682423 603418309 885784192 283122704 575392845 544777464 970804447 801823653 811778126 363436682 957234882 371140307 848539489 427856343 990739393 131263374 683429720 670974154 965923986 261036569 977463354 749423907 816638362 953439320 997016575 630910129 991269000 886557301 894580491 625432990 666679249 501492653 677187878 533498780 786630810 630342040 920926075 602610676 940886088 874133689 939205065 109160568 497324651 159781842 837024267 496609746 972887732 502857778 845370109 901046356 972253880 411976102 770270955 731102899 758482810 77617138 341931771 328479687 359530707 641850909 785240640 883189390 931902557 826210962 991938014 631809557 961481122 726327608 896986714 337147847 443664017 186372014 259685058 797145759 804904727 367498557 933868077 973093156 995086695 921226094 931028535 558723252 864948301 388312316 979442175 946835077 972018814 263351950 516312323 968038789 998040383 587146864 899222313 952346234 983368392 993757256 997659725 55663665 886294752 338620366 880301128 799635264 946104810 288599149 578160084 38691222 902975495 966753297 989311009 317352940 966860438 297880615 920153026 487076225 863287077 940783278 965084360 358368710 979157944 980777552 999001737 543353006 883534872 615041190 850862213 889123328 959035281 699846584 978952008 776147837 813724956 227218739 377446170 794519551 863350557 170756237 453594677 550635900 573288764 286283493 569966310 742724613 857486574 450148281 955513611 410933308 669643880 558410467 914865167 533044748 552728287 785507206 852148758 63185858 650203609 968068040 972519719 404867308 497866055 394070965 414504252 59197367 426370941 521256854 562442532 128833590 796257132 497542347 956517131 13893187 577057488 833352226 946077838 816929865 994310225 289763949 369711531 236702335 382660036 935038505 944846802 703202411 853039894 337000432 648804559 631615394 764475513 534560404 697166353 379261483 382709669 828465440 937958002 110337288 428910795 317680509 779802478 360732146 449200686 677094301 855675780 611661889 611844115 914757264 915787769 76768226 252384998 256027818 822660498 814866249 840809270 24313625 91283224 205810698 472286243 753939497 850744690 467996360 878974708 86936108 794504875 949794144 958104920 840373097 943641192 23932590 299592501 899730250 931480504 554536808 648385288 717985734 726864162 927639076 995543576 997174547 998729350 425063389 939521813 76377950 389757381 24389284 354263791 635088229 821332927 287694838 568141360 292002658 878335077 646165900 780882604 787716787 934573263 130427893 187422156 269530522 495655251 248803018 664004907 449601512 657984485 579345535 746744606 628010291 821994268 767705535 882433168 435076106 640099032 971332467 986032947 749406965 829610296 58286699 399895462 116628240 300916069 638650791 827914148 575787030 938203456 503902355 774910392 754214339 945866695 737628514 801405082 457088897 545012836 857163342 967286448 548376699 566482810 118143061 211697099 341868586 960063741 773275677 979136846 168083865 965091427 480887742 904293617 771006835 974976196 568562227 999075227 559967825 627849298 903314179 904132471 872581396 919064620 142139731 944611473 44075850 93347903 802742299 987433512 614519102 675930019 497515073 901393159 207690345 654547781 884222072 893379431 225687472 829047695 125442481 569845300 577542582 776127874 441633664 915639832 24881548 153451296 25833079 794868177 186820577 691276761 783057905 860361765 374176816 426122231 90344559 796373085 549213335 865893812 986576513 989337992 21212586 813253988 39525247 488948734 479240103 756824267 40485589 598960639 736503214 799687377 510330528 949660657 28537931 898701021 93137690 643825855 234242735 361695065 711691082 836484317 276355416 379171644 387513481 607481025 293150890 678372642 813639608 852863971 161483918 856141151 431427473 729908425 760490438 938679109 883935878 888563266 756212312 988430680 308070882 595842865 548560113 755254929 738863500 932586121 141559150 470451993 325176045 624327776 211567030 817035013 682393058 902262928 847773794 879140445 551740896 846998859 583620974 957826643 123648945 569713924 892105180 910269442 596550769 713481549 784622706 936084610 95407685 284390467 958974118 978391743 411008374 411655321 568643471 783743944 995596193 998983142 750299681 935521914 44354854 602690937 399952244 592529646 62851185 283033120 230974857 596027580 646622944 708199433 880570215 895362339 800949343 924828188 180281081 797459525 514813417 873563949 759544603 808211311 332822740 612363716 835458823 871865256 621201414 904227800 545981724 714327101 877338851 979374309 765252198 806768663 31972457 883115951 726819831 795044545 495058554 645471071 283234694 290362844 715372928 974951812 510943939 515624693 601495016 644409213 405040180 755141827 720896616 888278348 592358250 858411929 510865211 849407041 614206035 723048319 163817336 900897578 6747960 267179227 148008611 468232955 426207171 827123040 550388200 736736549 651625395 802178649 549479150 986044622 684972006 806091141 147923921 156580655 949568171 984618665 171260838 996195153 958184923 976798386 170889329 805306894 479248751 821679716 675037904 748812781 551973472 886610980 540446869 601795758 50856363 641101763 853259742 871619157 21653857 517106346 434104664 787865242 3170381 425800968 832834477 915177837 39904866 859841071 737635940 904005121 807542514 969919926 445991493 960761053 384532730 475022696 427716639 724808534 198440555 253958503 81103118 128706478 464206221 599748344 721930534 879444461 848972351 895174723 647520324 970121944 704981 329535392 561144212 787655728 796402947 967187365 193902107 682150542 521507932 646422104 267112027 961809078 753963744 950299323 341530532 855815522 618425421 819599357 990470767 992122788 850628251 885939086 376679238 658810895 711148920 817250077 936093146 959855064 592656192 785034708 141916078 866431203 77791888 669140769 161027904 529245451 30233595 894119172 983036061 991548354 742531855 753321886 188842960 584787767 99584671 920239602 671885665 782776765 303080600 725029941 682982473 995188456 587566847 606495102 184036946 199670038 187574185 658178465 956435455 993094975 846037882 912884783 150144809 933022573 363356620 665763125 459914413 771612594 774597780 966511357 287172924 439492113 216452867 727102424 395238247 807279662 217953477 682472700 59213049 951651477 633573007 705928446 975557538 992315709 435005602 488968794 889511341 982232575 808448088 943558955 724983217 826998063 278196688 330671394 521988527 643768983 211109886 869046595 369351576 616615328 988704617 990467211 220473024 259805824 540383799 881828763 13716563 283482254 586636785 836363107 76231785 631074056 805599161 911798501 711682087 832798797 869841547 898855271 173565775 559476631 856621965 877737441 43317693 154587794 635810412 708874038 861741197 947144976 559126649 909953073 860272616 999199620 214491525 252805573 427058887 990860493 268757628 293090261 121684291 831538784 656595724 680706512 689115358 984962622 614111105 926792578 685889757 848814189 495706710 813213504 312655396 924119309 528705810 617436003 338252056 936052358 557946361 865033180 806554792 840446348 100558789 998279858 841648197 884090483 221020967 589736642 106152440 793029063 195501855 473091792 397237107 818843269 832289404 850734130 369949644 581964430 810729727 883948819 456038393 595537609 632398255 768647043 569124640 743436225 367894559 841597339 8258999 53967895 92516231 551091813 950920823 994411917 803814901 818792147 997455120 998270773 929110058 948593117 405847585 538529609 531954879 991514790 527966902 871566643 940149643 974322499 837214171 910132083 795372768 901177297 377535691 653058947 823391390 845514387 257706065 673894065 708244148 968034124 730478088 745170926 497851511 977899713 40158586 345725299 625696557 844934450 706210919 876539773 264564657 802084410 786335783 913566936 81042133 346398121 620755178 954461796 130423585 614041840 489451457 987352495 968922487 970500984 163483396 808615640 848438841 992623632 533456735 777513103 112089751 940255675 295222877 398576582 155030938 954065588 710777582 980502753 974810009 982425436 684692101 992098508 103661369 657655038 211067331 658505048 625371932 931508946 641520802 666043829 291830559 704922210 946779557 996712556 598926815 713159368 175820426 495762239 663976885 943298930 720346409 829359344 153454798 764130690 989543060 990449833 727026466 731546326 688272152 894607476 831355216 869220667 506507410 904525721 382640239 614950939 767497643 846012982 194095287 448620523 795694991 944805165 524115497 600569310 797135342 938920944 87066039 462209225 342230730 470194521 942259681 943030396 180094096 883460954 542601265 730542039 983543074 984824465 668305801 927525214 224011073 386216635 242258809 412344328 555597887 779729850 809597368 865229633 664217724 971949800 255251847 609623115 352237580 698350565 815916760 927899537 908245080 955814478 387949796 840707234 484318065 975766108 544846230 894012192 147197175 410230556 231125436 603618779 29621798 595552347 648857569 703192799 198276445 761915974 897075781 959212902 67529775 381558654 838149142 921097883 305478620 649189936 88284069 252660818 289197066 586193967 671339471 702278427 198371240 749793021 868463332 954435433 860945415 863807946 770984800 944658416 525702333 623770459 202526776 338026432 968613792 968853320 837727949 971902423 602248631 890323954 700287695 908265969 263826180 802442748 526537381 696915299 435135563 974682979 637718682 743399577 478346488 886647445 337605744 669297626 788732481 909618227 435597146 879181908 256467811 278779033 635975332 699289946 315069126 660464523 900782872 981553963 645617619 653358010 616633518 709540237 779270209 895313365 204157896 544541097 489715748 758622804 648898790 877851821 441047302 852714075 87986093 545766704 19217230 607444021 677840757 755115785 333574442 503872686 442924116 650847748 930669976 972170882 702631639 852926192 972502306 988630729 753963257 995934992 567132829 826025065 114470427 200404264 700315191 860151602 373053526 495896227 424099942 528228160 397660640 854335717 735212609 919461585 82897576 861700043 887258613 906330167 547991797 828356342 701340150 736277799 190323744 324440376 122012293 525729382 735829084 951550564 374543523 973335661 146820445 380590698 507539080 553400926 906260595 993063898 971889461 979879343 264819564 940387717 249096331 743454961 673400244 864176939 77130737 870658871 962998417 980494191 387133421 997172660 275804681 289422464 863179674 998451745 119839777 671736662 139103465 697290421 644714505 981730332 345393637 822154223 564691391 573592064 734956301 761619347 825067417 981450135 413651525 878118365 793014008 932485927 72796453 252028801 604154271 845408356 870558518 930560903 610266606 668373390 690775209 755897623 544327011 771064763 671881417 954733206 228171994 298055912 899479430 982807134 719186404 733190045 541129090 729708016 611438055 760113544 992648187 997540683 869070277 924645616 950939724 957301350 129184049 180470744 736876787 852674454 491348260 781192644 914943179 947387984 497507547 809067508 638568079 668508451 650366858 893588407 220408524 841765750 839836460 918270113 609127456 759433596 716999050 777421428 922379975 992270302 245362322 402928453 421324017 829897538 751737259 971568042 71411040 726445306 64110401 941875636 203295252 277728397 763603237 955210707 359502646 943559225 812828660 822099758 726834172 778801419 96093365 366895440 8219812 148979565 772499695 995881675 176340496 268682153 254516762 671299948 466893529 771917334 54938762 853490692 583801913 724498322 139725896 861051119 283004983 754447299 543794238 796411576 85837121 850751169 982917587 998684087 466460388 985811443 235453708 644048657 395603909 487012591 943220074 952048487 756429543 877066090 879469554 992631427 500147222 762513964 140839593 620402710 174571289 719787496 317262002 890395016 520176010 648410201 237628373 615908032 226190329 295346773 148138245 974072720 303703413 495307895 546646446 797044839 274095946 359167653 276331868 487793550 191190386 993756842 706089396 859862305 443796051 550643707 226326447 249376849 591492547 616623473 330162725 583279478 274354087 869703356 179481272 793705400 119819341 740848382 467380748 554475570 263654423 766124735 975272013 980507585 822780857 886916033 686326162 707911058 695949442 864836056 664974246 706382336 370062229 844352315 456862446 497799361 920498164 995307154 126614672 631574711 488538835 843665015 142445907 522790023 420486934 932493099 24766728 872095938 276275016 365226110 447432613 938296637 172239994 690968251 214060971 316628545 281837845 855761781 330038251 348274541 57936231 970788585 947246914 971142037 513515702 699184866 793712257 828309803 893067452 910695818 866120058 886244900 751830032 885188492 22630833 458380877 32206269 719741822 179184990 438507433 230163488 312317003 151594476 577392993 421212592 718674467 307950368 955124839 115983972 310897940 378478671 694741248 441845285 914753905 72316720 971717532 430795406 875752812 759682364 863949686 143467727 434984728 97189800 797344218 252797207 284829090 217403083 427867809 247493664 288413141 528491672 879075549 713588769 755111118 586053320 854803443 168171619 599108490 255643262 682329098 573365182 855546732 510328206 539575483 599047427 778765053 339148752 634411696 983902069 989966597 191368939 993436061 366371972 974877549 350093780 692310157 500458358 638823627 574250875 953388182 51694842 250107865 70688796 983097749 675277619 830730874 683262339 784401182 294285552 760819612 421360803 942882007 843392904 899989998 571778837 859248295 334088702 729826883 515840893 560899470 778523458 786056216 936156800 946585195 170511741 376203923 267757397 302986448 384307029 769161121 401004198 795057416 4213293 568150143 586900447 700992782 255712312 617659097 624709983 894626595 97998585 163161209 736521500 913502526 977701219 989970163 197378495 599930215 466579175 558101701 916490357 953693034 964854332 982923644 721620834 909509758 156913179 514232821 765213203 844998752 370295410 378108169 911776256 959710383 557749490 754173626 925706104 971090921 973726904 996192782 768077291 784086261 382908244 733718717 664902446 804358044 633105130 692023504 86999918 654096280 44504870 930993948 747649038 786711812 699583431 702406781 144479875 191615499 100967367 685095467 223058416 451354286 928237411 933634134 742264114 841318375 527404478 570526708 549534150 815758375 529503614 777344085 511570388 558315795 963597032 990115695 584712138 697087150 481472006 602790229 466257411 608096851 324899135 942113694 440374926 457091711 813394493 816437909 441429268 902961776 54745516 579399460 735972592 763992175 122853324 349419889 937150923 947163531 340583775 498886788 791521343 945018042 990717744 998986551 373420797 725098629 670384921 691286896 345588489 658713996 96697426 397379120 79763157 948393590 595706546 814115131 577715395 690162012 111050293 832407224 219620496 831081395 358078399 813934857 982058852 992603678 938528738 962764892 580033554 886889056 457102728 523883169 986117631 995884587 497980797 826412430 472186485 906178843 835679305 953908429 880498871 936708933 359629127 919109529 527698278 721074093 574605788 953992126 61702391 306394033 434809431 594237692 910564038 911366742 939525531 948841365 203061264 684057850 6480134 85098965 959945520 973716573 216372310 221554642 310818151 563902471 290168556 407142233 909544848 959966878 575311249 673992800 595297084 817426900 886287722 950687107 42514153 644922019 310359452 515055753 177391670 712581670 78235592 303094364 953900907 973965952 462822093 925302252 978530471 992884833 754796126 820556990 872740605 938302847 386873830 950016096 593873022 649677276 810084458 956985983 473735039 500324647 546311282 588971580 44275730 712434134 545348175 614968437 954020893 985983511 40646115 211832975 812908166 931649428 398522919 770133988 540676460 613701500 802802308 854420934 665915502 796954951 505065734 891913594 92690113 769614351 716241997 884923173 398607768 679673156 855381957 882046488 908243353 986708868 25514795 447336919 936201225 977785225 347583322 714416763 672146932 769980959 779224085 913296045 900893857 987598695 982355342 991137600 525364241 874493477 313630160 932049339 678660666 695380662 986446872 999096884 972150405 979615650 944977506 985620735 481189751 521135631 779293426 916263246 22845248 272597353 548203977 819375100 139497607 649055529 827590081 978134808 617531429 759816736 365142806 757695212 183667773 885563970 360807208 545810550 184002524 958616299 419404709 562165902 995016529 995172245 377022361 921652071 223826625 884876862 471411651 562748732 447922387 627795490 761679550 866431807 548012299 991182627 272407645 677785681 367817475 820585203 167362660 187575142 347262114 852544158 258920069 549726474 230398660 490810892 856766207 925963260 988505118 996652502 567910567 670484847 299744336 900146385 679608614 954686793 778120722 965021920 459319255 604435180 215615941 962048616 343317563 954939642 5323794 521414311 34762883 653969945 266439925 867512741 682019689 755118350 589352268 873498771 892796618 922823667 828919119 854172326 339210281 847467105 695571916 769711666 245662120 467162981 630364614 776268373 808934894 969116552 822414122 851400079 952711435 972489317 529091591 597391868 295665036 837522378 786633942 999033137 404116358 992114663 882438307 932136590 665534085 879588571 179813481 796570727 811862900 873294018 126326828 713742305 335876583 495022025 524973097 531077519 501135725 875228174 602672430 903784165 334852641 455930033 541220056 732625311 895245205 980673762 471869016 685632554 860014281 860364325 826028203 918972157 173526114 315710864 967956945 970891001 765637974 985477608 491321875 771115076 33789089 250691691 69436739 449725521 713406683 793387425 524950749 727689488 866452867 904483972 388996169 658649226 208221001 407229469 874553186 983752361 364402615 814968334 121500789 545500765 549088081 951921125 280002082 755142091 377530960 604768808 587753617 857679859 771478656 782579526 535726308 785316060 462926144 878049052 381392004 752542135 778296422 793533118 140302221 464362584 869990732 901275993 434501977 955640308 316996320 675061652 537092375 764335864 857747671 919937613 670292050 860828719 365151690 678973560 317424201 406525530 513774292 529737531 644010793 666875386 221885517 412450019 755338980 781857891 330081787 855765620 552451090 894834182 656155028 946747557 361258859 808086983 103034976 290854511 510188088 953245666 670409687 806000093 984891856 993895351 495335496 529488403 100695523 917653400 272100335 752138567 338157601 866598573 853941701 930308055 301522219 494961541 995732482 999307612 212113012 846173315 242154038 363105707 741804891 854910209 54770313 487475505 98600745 286461687 22962362 916755984 935736433 982084170 260935739 407853950 146369549 454692775 132066352 705375490 494576424 878367010 565535430 787253393 816261702 982569935 429730792 768592593 889219108 915908885 948896061 973180503 549281585 863729642 137775662 798469029 746927032 883884146 952746306 954257093 231018412 745930082 506569487 912079995 416635573 655520580 72102723 583390726 794416178 996068451 333290683 656076373 880461427 966045056 906863965 985455098 519488438 642710930 381436815 576953585 335582637 362545382 643310180 770324538 452705101 528480012 833343234 917916701 961796433 967324033 801497525 993643299 966517084 998552322 728615260 834802041 30716648 740338871 746035271 963816177 580249386 679044669 780776801 898568587 962314630 980161495 440503421 991284880 369151777 804705210 754107233 911467658 690370160 707856551 784257826 800768937 178784377 427740233 863963845 888462691 994158900 998824278 890125006 986375138 111751387 176435570 992127891 996594934 384169006 997693293 600223351 798699883 910995540 917993902 140262854 753938257 958590979 985097855 183834957 906373933 530374503 931302009 206589981 396157239 487987362 593288790 420304411 877914443 779364356 849729588 25450940 145470941 985121780 989830895 605076044 727434002 890990357 912908905 11389275 864181083 661854915 956244724 600444615 795064626 156614812 862742165 137701353 210863249 919292287 987247290 178934992 822864361 179213977 655095620 140001617 366108021 878108915 985017033 380868838 617585582 604593090 727549350 729847803 833814266 376777105 541428449 631823080 786360967 145657756 867813570 385524170 636581539 703429259 908551090 817374868 985939865 174407134 212409790 110709054 619796316 46700672 211585810 539085963 568214653 717941368 816990819 129486031 885933081 28605966 242296002 278518497 373857782 370386102 731446481 598005515 909095543 641290133 712218204 427012197 638389119 689750238 774761564 516990027 826260342 782039841 812538243 749003363 930205456 492334905 587671315 156166214 229322831 362834478 804147910 240388041 427006617 917593994 919429891 923811341 949060530 503110581 815181726 180541417 682289769 604292212 732800899 363057872 883721394 625538234 724662530 421295014 583719669 121515036 902456860 563547237 719089048 364717392 558916495 665042808 935440089 585301297 815458982 802940073 873954246 515434955 782174977 195978665 334349070 715011188 826811463 866939825 915119936 740832303 974583947 961132261 991799405 447797373 635698593 766171247 936690600 149426251 211168476 335903572 993710181 104257845 723629159 315925210 839357446 897694485 915025665 585768128 857513238 574465339 908855208 539162796 876585947 441139376 592762477 614704065 871719586 946615603 960446775 265511893 638977919 250298740 909325098 867792389 890200405 749969794 901107878 596293942 857375921 172683983 229423650 382631346 555305790 757924347 805997773 265763440 987366083 34028528 426426444 107318289 287655258 100702448 394238711 281561490 550828198 21761690 597666242 872799470 896890386 159351392 176425363 707043247 837074178 484398624 590280190 308979327 625333590 161668670 289937237 620352748 918785018 412474975 595839148 139495542 587119643 375862785 507263580 870349546 958614455 724128929 752285605 15654341 458801502 746293577 845754382 10472553 229583683 319916844 829750642 472443192 958263505 203273175 388386701 541886902 644395730 331051559 896540046 927618947 935095638 690752853 914727624 722349319 740102209 543817182 906527589 695756254 932487275 163019598 947326648 337011439 577660900 119549823 657967307 327118239 685623286 66195045 761530102 785104757 927884873 103616877 307876549 526613376 686339524 936442979 958356201 798200088 854859314 153295744 209856639 570074470 800660689 664453831 981246864 734399931 858225241 25944991 400491587 51661757 560756034 530035906 984676230 699957956 944670088 263768791 406909036 324706028 797363090 63653765 633401730 373148050 984146405 74963640 240287450 700085325 958517235 973659865 998049779 208987066 944817532 331356751 334091190 594568046 618977467 339414414 523046946 203100410 981452780 854527785 891509336 929225751 995841422 996364185 997184394 286660083 761936456 148739181 311429842 628170091 661100107 830952662 992361994 22816684 620857079 603182445 645182194 47576756 998682700 41805702 343652266 449836003 699598370 69146279 515736856 289391082 520772719 474799715 565843260 397257595 931610906 366462338 889773538 165599029 308813275 772209157 916067806 284761567 550491415 284340007 725186969 947852774 949929407 492801673 569208972 496629566 633708444 53523974 912567449 850671555 955486489 912361666 981596535 837269952 882083753 431196328 788327538 754083949 795274764 526829897 821200655 820185109 994798357 600055170 617704830 303091203 384881989 189232249 499052060 869442576 919221941 570455445 737619893 285841502 648637596 663802078 701056000 73000068 970897107 190490301 190907048 893619925 973646840 492509968 773896298 430376526 703074861 749778330 944097729 597804490 879739622 758248340 916941029 997540235 998052167 676582698 731442012 204741760 675994532 179647875 993556654 681906381 850033861 238899382 385949093 135020234 863073743 144676985 350333062 199089753 805503081 336347361 701221703 903620770 991767719 140850378 996381235 292227662 744263109 603746467 725538797 484410134 755178403 117156608 612416376 108099002 413688733 126028431 557761208 537516984 593195764 906746221 967103891 455874428 869993227 650221733 945106522 907154676 994944765 148875359 433508136 320774548 959507911 823121160 892624534 422175476 453569463 150604123 207192660 578252366 860251576 981134829 981914981 837290601 946638531 415642602 826994507 311856969 432542903 755445767 831646258 292955924 480163369 362711807 778108566 447965904 711569823 442678694 937819173 196008431 957374475 983164872 998092003 620594813 666252860 762539866 927377971 97255352 893400881 854767153 872263767 805244133 889693901 689755198 956914397 922602626 925775028 494316761 551303805 839790280 972618368 379180494 983069841 457135437 547295887 894878132 982102005 152736096 265892376 63979047 340669140 570897703 642577452 648857077 666381199 53012214 420927445 455885341 902574118 566617594 999336354 342366739 701489533 153093717 966014487 49128133 881402066 814628059 986007114 420074261 989038967 967226732 968537000 81311641 311023725 966098665 997001883 430362661 914453942 309827995 654671272 278136393 564748198 925047345 927745599 785041170 943292043 307088980 389162047 655908697 766582573 946976802 950194560 329060001 928011205 248291819 769553803 125473842 955857833 475157685 850815603 417044667 988203867 943219948 975420990 556975629 735212770 504409284 678456998 873559813 875821350 414487141 616267068 43942982 122949466 705768514 826816473 987654126 998628817 238866994 570875836 112760285 737620047 744030191 815734881 632994106 780920102 554237886 914514917 751959865 754247497 278153180 632304428 109589256 363835703 486748816 698359315 416216288 623897321 562095221 690543065 442281409 510152616 332977651 685879371 892084016 934838957 595709104 995090680 484881264 572404511 422728012 721334516 410516790 531505873 734079034 828255577 460297894 870061720 682787959 961666421 608816623 989543388 479407357 808554235 965234341 971381302 205909070 709008688 546110597 760288132 563750489 720793330 363762971 958201888 262770292 803030474 639571889 651240864 191635649 630956280 968249460 979446578 80165600 892373457 922274982 985749258 543553048 891095667 517416689 635210866 628222944 658824944 531159591 793914347 477326430 777016963 141048452 477737676 401496681 671775506 46706007 334062417 793894460 977129049 349815229 968721870 370523953 761296161 861523953 980592176 721911460 920625514 832656120 880367771 323386999 961081951 376993788 838894873 262913123 915158303 397003902 707703831 131949923 947410701 154818101 307618789 431973826 638994974 331099387 795063722 247908049 671963701 552540679 827748212 139682039 237222396 785773311 902423269 208609185 685380837 109098912 708337979 637452105 851001353 395083617 683731536 163815666 592897139 719670826 775605091 718097409 808802212 251765257 722978660 49812480 704132748 723780352 971544330 442330008 795990046 951212315 951353396 756706658 840621172 193249366 760159426 526421572 602782291 384248600 397026670 38208412 646362985 70342520 598215914 275176358 603054531 353556039 763577682 793174071 897296961 623242699 729177255 561575456 674499925 481842775 555797482 433079344 954208407 720485925 906794475 972220737 985131610 275398769 520422310 18226757 184829150 47576671 128312725 863163468 893921550 716498958 827131286 871877233 971477821 656766815 990558088 356042244 800951329 27873659 111937448 147595180 527093493 385321601 661811672 344842843 965047395 691857010 698668012 253906221 361304962 758223758 833491929 182338309 806022675 394067022 440579485 759189198 906541818 280189114 467523384 986352981 995248985 347146752 897850194 349941417 659713214 986832210 989045207 165067888 448470660 74582247 677619888 539028473 863185647 444608542 590803905 568263108 706108358 908100663 959410865 696031551 959442157 87502488 703570514 273463452 967567427 952967515 988557885 346670279 502964313 502226458 913136029 988045803 996203246 242395569 537326842 357723733 744992307 351999386 955312280 914087213 946430727 134007306 445728023 831258078 911800916 543089372 882774791 777521951 814489346 674403228 942687206 845448278 857994399 662068863 763199469 152427271 341606411 991507982 997614562 44268359 151270197 249900071 743287657 904095733 982033430 173907767 728566434 133451703 618297758 344758356 574061503 916591583 984279165 473165960 728430214 281655484 457316723 424182298 594426494 284664809 676421938 85167946 451789030 490924199 752633474 914226024 930236876 973780007 975734832 620475373 734798957 682065577 700588667 128250632 876916708 588418873 817453534 59524161 772066878 574692453 816430652 614605741 860676073 808060897 827854153 212086052 881426134 135137148 920800879 713583841 723608661 998340156 998512175 891724522 895405455 927990456 933564562 576295754 700167790 401022558 524765017 826090908 856311969 536935142 665261150 291378784 416393242 97182909 939551220 668501346 854547738 725677357 915792104 727410136 928339328 792787382 823161551 749782597 873680440 655885939 738400565 479747147 995534258 600508821 823192731 822289016 999111261 453268292 678369995 216291296 524166144 496141273 724527438 920951893 987495355 781994107 975591823 542416232 916567975 329357916 471403698 526385776 743157627 243285566 930374488 146104494 259973435 159720537 382138792 686453149 773539258 77043239 355396229 916554899 923938767 617999029 927718124 569207754 817220641 209434768 368449300 98627753 837323665 14581956 848853365 68505726 359307860 904836731 936526265 188914002 403602119 722769234 969701180 964050030 974584232 252516111 530414011 778766957 915532566 264096973 755880379 1351331 934682529 2702407 818571144 787545832 863993944 353159968 604193057 554796231 965382938 744073312 844108168 669472330 968066151 429528784 676082134 380808804 710880592 159654843 740026273 456433743 603676901 362487905 466017971 679369122 881440552 631270485 992159365 315004684 433920882 198579249 818412478 241858434 886514137 507205084 956619593 316262861 419525559 276776824 777172798 287371823 728163996 112099018 212155089 87440779 271663396 12573610 973010484 119530692 967485691 411916534 514577218 430097840 615552394 60383302 252698083 575125794 945381035 949106304 967411245 892334078 893806907 750298215 833390332 816538429 911658651 444119082 637705032 869026847 905199733 905349954 914333816 239387061 462384439 98251645 462152951 604260399 800447790 859695537 899352309 540604331 711979340 565051981 833189321 473006256 501732018 524091942 913281033 631758124 864064445 771242472 917238043 857818107 989606274 854472246 965443574 592140915 972850937 737807357 756656931 228592940 681195507 965708283 991009748 313517472 375408255 652920425 685974463 812881941 983829345 543534242 956036931 134204325 406056469 905701949 976694503 524263639 871377353 699347392 936581227 402378235 654442184 254766850 853764111 396111102 526309661 922992822 957735516 336335387 431522415 324274049 539833430 539897332 819900415 945237197 982265819 665158388 679575077 392676044 522739220 526626227 854467876 751080606 752293529 596917628 736458210 908778968 913474886 862833271 971756047 19880362 618487957 432021104 498114901 701256289 981354175 597166463 896994101 110197951 164923252 905653966 953750125 676952376 764320267 992414514 996226562 982008633 990478391 661928496 960460772 349448995 872988113 313774748 959486298 784818592 838204687 635359090 931068114 940402833 985999088 643442305 861008851 607279070 900122587 826143195 991076841 613127962 830267486 991809910 997903962 595223784 636635003 165521361 716752448 49377903 296170905 420954924 804953011 516928195 528544479 288756309 581539696 403991551 408721550 233498578 636747321 423831678 894420705 600730778 754540208 719103283 948388056 719973007 983586877 338120770 475213873 130094297 686861267 981395696 996065184 453584254 478153678 237094334 380905332 470271652 900661678 344708908 454015040 30011487 517423039 812174081 917158376 563273168 581008739 135837185 351848782 744645141 819210085 187555152 642516819 831113331 875148464 980339990 994917940 76084527 169518784 260366733 939709855 528117739 772706951 187019193 840047147 402393689 903260026 892190270 976575796 938043356 952392266 282043225 875590512 816640012 835256284 447781325 592546451 508845447 594612845 496953221 600103166 416187739 532652192 927546618 985192221 977294375 979080304 217023683 575905111 201245047 955440784 193273013 539795856 720841018 738729117 650439502 867911847 392854034 794029934 239128637 584663181 445208645 700832874 355731567 569775420 328494546 613993594 587225100 937201057 427217450 884424226 210577344 949729164 734443778 790735438 872141345 990096792 318605111 801294192 768837942 824425042 909792606 920626417 184141646 596992445 63811431 241071722 409461218 413212723 845355265 880082443 76130442 963132444 682113083 807825359 530434297 680737721 370502558 649021919 697656920 858126337 46284204 413406164 294815020 859995289 776181668 995688319 231944215 848264560 205367397 378859321 795296095 814847146 369151380 967824937 506871813 691881466 70397760 489321279 698182355 701632527 356965358 933529335 710406057 837304850 38497187 922482945 986336314 986788015 504087184 718168985 463730582 464472518 5955481 641033678 903853147 905939102 231889684 375412087 765811681 918028213 905346517 914347660 522823532 755489234 64110031 645543036 519194656 773188603 423743484 739637319 633274490 803353508 807904684 873865819 955541950 987868475 628775750 739115102 651087177 908340555 171855564 656316804 100677177 764763616 290540318 997844004 966869288 994964679 242560903 853548414 50828484 112115880 745770750 821040683 733947653 949661348 969925343 983219176 163011759 386962158 355372757 814743046 640135772 960500053 286670732 909024626 465916476 883031783 80543345 506484287 761084631 980054989 652836255 774706793 251599134 926242827 758180400 976176114 190121415 503920349 770783583 773939674 137842214 232539529 99958538 259045525 502212781 973589196 543101485 575916712 871957853 901897721 187248515 333227137 826868858 953754360 760074297 999317760 162228051 777175525 411677054 790906559 4196977 317143232 72326222 789137721 943017058 985140337 450139533 837853026 384419710 950937555 419994343 967732881 884038992 894938006 957169821 973563825 59241557 371805514 225766922 252743400 581929580 816597761 79923192 299619958 204767799 286964639 756009224 922039506 139279701 950154915 634291273 931951367 412069147 477085758 258378263 640815438 38224990 945656979 634019166 784565756 581913814 853566645 800451182 957609768 795647316 920520698 200844728 868094219 11933376 256441257 434080601 894955458 888398102 909759384 94276006 696600986 423238074 937562376 68502962 92629747 173362225 728295409 338447073 498203509 878786926 966717749 958786470 962841319 123502648 494577167 760813692 846288173 166065198 515459924 844139103 960590749 729104627 944659016 797800796 907482665 224170689 533792778 701855501 926883940 534815447 582121130 905397190 918273977 423707891 824757562 320855509 726955348 563470904 592275223 119826726 940533795 82099215 692454418 120909447 210361970 85708822 751553756 577747791 840026951 800826756 852191972 11600073 237158909 678628320 835261755 117979947 844620560 600941363 982016617 295809515 849974740 73519324 295958624 63844866 643478486 757645166 962274244 833348185 864084382 373843760 935834740 243336850 983189580 99676549 698232184 740862097 778067279 161876894 719978318 401189880 630818911 951336898 997533654 236483423 249486357 528163446 843103162 138802238 816805883 883331514 947125788 526363672 736054834 785305880 988435614 140388079 194813778 323890096 873182915 786404068 864257250 369161079 749616926 66166664 326022744 623402043 998909450 405166312 411634835 855211690 980244103 445425491 913502184 950365032 998178086 66767062 881967221 318477370 990446770 670590320 821959495 926971421 965604107 90152670 133174489 653773544 731769741 671854550 975476220 176805726 855120633 611076161 855914673 438331037 654627234 846886174 887644975 563149029 780828346 674458053 848007857 88508363 220784133 311608228 445181798 46834137 784732153 291767460 305423923 816571891 997879372 624636820 757090115 456852982 672419311 233920827 542025906 326521078 622423981 487094205 554902271 996915900 997408812 394913343 711604470 383694690 807927451 7897432 753952616 840696164 964254306 913098795 939860207 909634028 992930233 101585572 786757525 883560386 919607072 586921357 679627909 242292264 635986743 584665484 864058735 663810089 901973565 593082810 737622569 939195835 983868513 879756493 978506701 748955134 866509159 395294897 677868622 101994264 492140830 945199925 949355852 2870075 423813468 804796053 922913157 213161267 861475554 481438126 778624914 876683132 936897861 322411807 753717943 809854800 829281346 858902367 882461439 677308406 759032347 733742601 837072421 518326139 777163800 648624740 699277040 711751162 723192403 718144835 908615977 573126681 632472050 23720246 46554964 963381058 979087618 415971122 691694639 703298425 939278692 325185062 560985218 911124314 941890371 318081511 908898866 580405159 762561660 110406468 282200989 92736082 879508024 113659294 362420407 82676045 916449286 494681778 561208483 449888295 751178323 3400220 780326823 806956058 922141390 318955361 922641635 245726354 850298833 230661033 450190686 958929360 965962785 6370823 537313613 203782321 329665887 137976013 791260084 694784827 780362103 690013489 853326383 210713711 258537468 15166847 897300358 346753442 426691851 283443674 944574863 575194106 727705048 268415994 342928688 129842403 381850676 792526386 932989961 536468409 566329632 415540406 691203282 347932506 562117500 142599941 756616490 354670437 607580344 521903575 756646194 836271352 874822104 860975813 881363152 95344952 854019708 655576130 739900374 450962582 598972165 840162067 979317149 68407556 948436383 358613501 571045879 355673440 771712803 837069988 970534378 57993323 402106632 404829614 967274734 141150669 684054253 564665146 965379419 746174007 818381518 494498879 633605803 133108435 289902574 79823823 601694193 284973150 777516525 393593670 803778816 474280582 491109745 886609953 963253918 938195965 985661785 482356645 947631456 843518780 967793693 722989138 812898471 530018219 889718935 692017041 800418792 120642508 190316645 782221119 794135245 288975053 917298086 107248127 815825709 464774385 540250488 419144148 680647511 783900782 925553182 5947858 61471797 214325407 327600355 984063553 995258986 45945461 394009307 382362954 485764921 739386639 973190059 294664487 995100164 80710882 321373676 725746479 918622066 517380401 699479800 239919915 479183202 543510907 777630540 868739822 987674764 792016705 936127721 608430301 673609834 155672433 290314002 756644121 762555359 693931658 752925166 375699930 403229292 865558216 971455810 548399349 667829205 683711286 854508161 519474537 584981566 14607711 799167729 70396197 370356345 313848658 417521464 420048002 711981959 950372865 974776573 891106788 942987063 143596458 637815977 278509623 425580249 787648449 986900823 749571507 756882090 356457275 704501606 595082842 831977976 124956770 681341240 511968311 939895537 34083465 382024836 687025608 993378803 709893418 931217167 657594619 940492324 316699783 443877120 865257155 871193735 550247758 601576914 695614032 787784110 88687202 625060548 161686481 837717786 327299997 727084344 887511798 966954442 352517360 713686582 913113717 977466803 149987532 509724921 195413379 404991219 799667571 849708292 969355037 997701120 276469545 720833722 621353121 908445172 923984782 982033985 791094925 997595389 63833607 349474072 624602481 677198304 143392015 752912568 657459324 847613373 942190442 999000350 653014534 785516988 411588136 554566164 271584331 299707882 205558348 292640381 774368317 906334659 459629859 501399115 768786718 820171412 652566563 973921056 204265176 526180943 414052544 495957963 714808186 971604140 21322785 40753235 764565125 892707926 478394498 779717430 689006414 998637134 267060216 465460090 761636197 763707270 151337868 325542932 334863703 541296457 919213966 975909756 568236279 800977818 706866808 979964292 452225585 924694904 152088684 726295351 572907979 802218767 178090607 184992137 871631509 981698832 87015354 323951239 215372224 370540036 778909502 874833618 585043174 931045563 39663398 168946772 14666500 434837111 730472376 888324275 922685738 984379973 725226436 821663516 675713071 741637986 332224740 983762044 994535748 999352178 78017323 604321926 229685632 760830835 569168663 843357519 760850026 765643211 982172171 982594276 740785416 764346901 668741083 841422901 915801476 927355981 568227743 974437626 993236659 997527780 270727411 450078683 611455661 915895479 166112017 642180690 772451188 953443201 28390950 599556816 780504400 875832987 48505571 56857499 763272101 782229892 202666413 390705575 419965593 852861090 268118504 345107413 85887498 893852167 818814184 972414206 287362472 895448740 993298565 997087740 200788546 961461541 606559801 797550649 710289609 776870110 972551886 972865793 966520173 994368606 460719665 892023443 919415918 926798592 77881629 704340313 452456216 795438072 349172979 399129523 849455286 954262450 211221860 549692758 841324956 974467956 110219840 543293642 204754657 286132356 574793624 878738931 703778280 849155600 991952117 995154294 832329392 836527471 176250420 220045109 416605179 607241741 810438270 817132625 685919320 708152355 117541821 680645378 393050147 627681804 575590999 671513042 326248165 651966498 998375151 998926387 399470159 510371393 224100897 641335073 940747082 949049519 4237967 157792831 234984577 668800376 645543139 750751077 467364869 575695009 485734243 933772556 782731534 823925415 924422082 938830560 230554114 555245920 973505814 974484162 921100804 957317724 892892675 940194098 127612834 944590556 826754322 962884241 382144167 739731624 960592399 970552473 321611617 873222009 51233467 854914973 351778901 803254341 688045865 873356134 740461728 906804285 312838169 529725404 83676628 406539930 613390185 794658172 102182504 436479056 783994272 861912741 400176908 577499594 586524934 678281050 627087859 637624277 281119578 888670679 455549148 524020894 243239508 553869058 236707528 997977263 135231094 334350293 177279862 835126190 720702164 782418519 161801694 894667818 771519308 989398613 126659931 245024165 102429524 917444107 51016265 53847878 220373136 404338358 772080431 822561000 708724181 985153996 628615181 877303476 90522100 568408062 255334057 466750469 420442620 753926377 979633617 986917373 325568928 931627631 288495688 439782641 100582580 748246943 31193148 641459908 250999996 540811640 863494941 987156595 906267667 947516665 202754295 878687180 62175465 836879019 889039162 922759677 975672731 998455572 388648771 677068383 181992399 284325260 893893745 974467622 923109810 964383727 953427679 999008704 636102649 992937696 679570976 985342498 37600599 769815325 72685598 806948214 724423069 846514524 301909074 994959335 998318720 998759291 374146584 816243943 83510445 196722856 961377626 970013795 481528350 566888419 670505798 878468291 620372702 757113191 166292155 541055011 83439228 957525994 352909309 357939011 519654561 797055421 171736562 876841312 584874260 611030994 324241290 486007410 351740025 688328656 823007831 888600251 157150530 744906573 669778690 767189330 30965619 459422869 23174223 931686865 101986709 794693033 94176418 850311309 552186517 572104613 164703072 888566219 840336597 879795532 393055474 549969578 667960412 975176033 369740092 466545753 461285220 515528722 993848027 995309360 21216707 587744797 205349648 234013252 336784453 925788225 640665648 969934351 223646702 890553592 734069734 801880034 138873654 755064248 460104384 576393996 424039194 825687755 593414204 777482177 601478486 940885418 962218300 980462614 758277149 834639061 712339361 778684660 967061516 989395251 569270094 857714293 265121581 426101450 826991579 995357518 449477665 514731814 602559243 911557977 565026897 926315502 772688529 856555026 10551521 625038698 960953342 971526710 774569698 869405328 528062250 956606750 115306332 432458721 927078820 985623223 728636628 870226914 79471541 256755353 814997625 817849659 959924791 969653478 595405478 688482445 793869893 865690842 446144188 570144309 390404033 892227398 490542357 770263930 209126262 305436015 449096978 480310640 265448702 808629889 272354688 676299465 89443677 668696504 85190856 845406066 853848088 958974726 743427954 847197118 439981746 900995843 551121925 863852287 495523343 991074564 728815495 926212801 801358462 959362008 742746097 921710125 225853506 939285811 202225108 516744812 216879284 675120692 844706575 933316482 201688210 955633846 58683778 903864948 896331079 989771886 371756389 677409449 655333061 803423328 472385991 603493483 636671095 827814753 550794113 895434749 261687971 350026703 43524842 926279328 880161991 983813835 355445768 548110869 756643649 914970548 150025848 973853303 630959914 642561473 688668880 888344536 375399423 411260693 322416662 836325496 862751698 917904563 597754373 983245348 924568757 989893732 809388873 809570578 244899889 665384792 575518939 806801377 251774194 562752286 967958121 986922467 425151479 795313475 203242208 463406944 563997911 764941302 378672267 553053392 38711950 467338413 831555493 846942976 768059280 778130994 788027610 862901037 118128600 987109490 949575212 968228191 250074451 976584272 200583115 502757590 400074004 471444460 733246004 876427681 665740070 956433046 221846481 359628919 331666443 838327397 425686307 719995582 595063645 837932460 924794708 932379530 98728950 161775660 998135303 998425211 573967823 950722019 961143737 975533932 79579615 578774102 80402217 919081306 905826924 916738679 78262984 437681515 398896201 552109543 444557563 630448834 498041030 715227163 997339558 998697219 533963256 934121228 690607799 963564519 833688949 946661148 16013748 354575482 169325162 622109312 481974453 546016919 444831794 846794805 804712846 998586699 327344524 708414868 680603645 839964061 690430727 964840868 144187074 793342042 807390588 860241696 48375538 968290719 379235445 946205895 13380796 963321955 444554854 693346854 889920494 959653156 511723247 581285979 445162774 617711809 403821949 852564422 233845028 322091819 864413586 915969871 735823857 936359781 937048232 945163193 168392034 866029423 774147228 928130986 418967396 969645507 21479931 897840389 907311239 968575911 34023360 431496640 38367089 647672055 483459964 728329730 68524508 248640224 716852637 992372834 399820317 502303185 522563425 570124587 89465078 320972807 998587086 998696247 852028958 896351125 345327093 534101412 528732115 681213008 12565782 64295992 562762058 578196493 661317705 874234380 841627860 925896938 309410588 615038918 144800922 798907926 954764142 962879702 648804654 725581673 380918795 433870325 153117157 808758773 649571279 968539830 732477456 820143031 213381168 658801176 787890983 913179483 483901977 926905054 792118179 871294056 581629864 631510047 741432940 881595773 199552788 885716340 655527786 713336908 283594986 803380266 700657740 971678260 758025851 986406984 906820829 934689829 543851197 743328774 182664233 394091231 181759051 996796310 843673628 907840775 504147489 690914908 211255784 250449359 491736423 534641499 217197563 436764688 310984210 614056594 629052349 724036144 961883741 985436081 375434456 528474554 483386400 859414520 756996227 843977663 356307494 873100149 593571020 912679637 91785489 516139461 665083937 982977842 982645279 985117130 419159490 436513452 884339579 995222125 605911140 851918337 528934361 582927125 16022400 25561842 265422493 301280299 494614854 562434008 840583451 887812253 629371133 983827668 949433072 968448311 51552686 519996870 39048328 293971112 570260191 741841555 600579673 922143010 701292994 731054525 84579384 342879294 718966029 799306891 461014538 536419908 240134403 359816266 841454228 923368991 408647689 662030956 746766502 916146918 576497663 576912022 468205546 753221919 228024656 805661380 657704629 841611745 612843355 652676112 485929483 604850139 378308473 657224680 696407227 856314801 616241923 812187913 459756682 591359217 632145394 869651954 272961844 409757936 992564261 997443708 211595504 606388208 56923543 714575315 859885943 916646380 79928487 855808722 357253084 778567683 139586492 818369221 704820619 809393957 201449336 301232559 24444987 521976240 727223980 738941525 642733755 815169834 470288970 474052337 22505298 873762967 311789677 685752750 14016343 728477777 361492354 845985077 672936552 857314376 315203625 420824322 90570816 678468662 885511644 920319975 150267584 490508612 404831705 557027524 659744977 686826004 5499077 472424018 347515 184089549 261275721 686630521 15880389 495536572 893460404 912899655 70689583 752521558 552730777 704055449 52213563 433773238 157734725 358881988 308586035 357732044 898766780 956154092 881146810 971546600 60016505 541412129 361555074 788567929 617051948 822496784 694077564 921473971 277225291 886211285 129295901 877801674 460369610 471868914 777923040 846876419 763505106 874464969 145434873 544633921 802346539 857408860 648962481 943931746 132358886 738003786 434504661 918198134 749603620 802203884 32632093 917692667 374214196 929776698 99943430 346164601 661704924 944481880 117043364 627376918 705839975 883010600 592093958 727843361 232706286 952464676 251481548 432906777 548912448 975482141 142558832 157369965 16934016 766540135 104477088 462143755 456103035 806480474 753950773 763059339 115599822 863894365 873192503 960063270 633415428 686640793 564256949 976893775 970140853 985369095 335085655 446150258 616097373 807412988 189401121 473862843 227067767 554568845 877100633 987877461 766291030 983555773 836322066 996231781 695287511 710553511 241829478 404808049 412307478 644658490 831395352 985646229 543860651 551168749 598981751 923184452 146677836 411413194 758257158 815211937 734747612 880036264 850383919 880398185 711370845 781544328 336178867 722003799 253098693 778668521 182422767 238304918 806569729 986176969 538319288 877256467 820371538 997021755 636713696 706315278 385496278 751342484 857607075 965502584 551276725 898175438 930321273 984835156 782826384 920333023 940377129 952268541 736946173 810694722 212358026 964333611 401839614 818485822 614168862 983365623 704228788 914293040 446660117 481891332 41881558 548136580 198466643 687781244 140275971 720344520 515389990 997054522 619280178 750402327 675939212 978521923 708834555 993322842 197494274 540269228 178071914 552153382 317546456 572770379 124988688 257044709 713279462 962555537 284670978 500315811 811544437 971021354 20752279 768053386 394530521 700629635 552632952 933055347 931258182 984419454 423219953 889854355 447211998 815596264 672960090 954370647 851037808 943679558 851843802 941761499 306924080 307475888 791879842 899032075 729856519 912279031 546076001 963210874 347365772 348334212 424084609 986022078 428365766 887353667 64146167 746174372 809965137 945767359 378048839 447761451 398399769 427504624 448799404 997276821 390601498 968381402 173256984 483509601 456821902 780843371 911273217 912311156 9475750 609968184 601654931 625987819 74774865 974177423 346772490 392908898 93281515 960850885 169452491 352668559 331059127 686338890 730091736 735434450 326916831 558850026 891984911 925030648 64393139 664705040 780483275 810648683 523144845 988430412 885005328 996520753 573128333 941805082 427241204 755569379 338818053 379473246 791401977 947890252 244577487 281747847 395265934 880122913 882306964 994576623 236794426 446704273 365495742 764407376 431197640 601507397 837545986 969899054 87143861 526411820 394554726 780497202 706895484 920463366 348999080 928289045 116444102 156267119 915747221 955022283 384405000 697652052 528851502 988480922 406195164 799057313 325219379 420576947 115511550 174234376 911205686 981142267 874762330 969266932 50667460 94227222 314039134 996311645 517322084 868640261 940605613 965829969 219864137 593667950 44343459 266102345 18065181 654536297 649034298 843278997 588799786 799651598 113707604 916380066 848749948 959382409 5491144 90008500 736163324 820366163 715384981 976135680 188307924 800351860 810112048 957387214 477566467 939707323 177147720 909724884 362202729 910601608 694633118 832740216 584847848 716644504 152570902 929374874 427316409 936969342 211987212 334927251 809979180 880989483 962002632 968658374 861404251 907362492 768751242 929492399 666847058 678345698 233364309 749176050 721879134 996974518 448503736 466255404 155906401 386792837 183619384 811267500 224545830 229144109 118543908 274414742 302606726 792095712 51104819 470019771 880938769 987778424 120638302 567092177 660640372 750449353 246791264 835191950 222763985 330453455 620317665 943152601 929129666 951610648 729889502 994305242 276823315 595667764 586771989 984333425 522306782 886103000 783395957 794527879 798949760 804167606 142784281 334017241 406133557 953875567 753174395 957905602 838625917 935977544 224086054 421123933 763192264 863735726 478086994 571091703 129851853 312744870 990461988 994851120 231882831 545202999 135486579 957994438 965901057 975031482 628947599 840548164 165157451 502194434 633156626 734852592 866494100 927860747 22375462 307937425 500498958 723561680 506171596 663882030 47389772 611711859 514330831 568432155 69890594 298299709 816499037 974715961 914310502 934419489 61923884 762691189 269825254 465405618 181406450 247073327 760684222 896660081 163685758 695595183 369705670 394992812 530746875 908811816 15273522 907824607 143195338 631837723 552802207 952917831 13238704 249869233 686510034 805390629 790895323 924913276 192683275 297412629 661150805 946726375 576516503 941702494 872475280 920115009 874083165 928245626 888847287 943954769 416758810 901237107 988659786 999116258 458719656 744846115 40552421 480631823 442205699 486363584 132019722 793340383 374635135 984959909 15794397 223600598 241644992 510113810 719367744 941835488 210047429 469647477 485810549 851779442 719477265 928140407 704133662 899094008 64247198 397162277 901860267 991046176 521993603 660339621 553207983 863628962 139645483 416670550 437179074 911057432 425743421 737322055 40130277 348879408 867496590 995377997 430588720 882794424 907040363 939816872 347345141 826894614 994892296 995594211 901829206 967578230 615252120 888448542 96820426 739010064 910630764 915703914 974282728 992893795 967111276 996007503 738894049 919028960 70315434 729524219 369716084 385028306 358410669 835611692 172145723 740729506 601897497 720333357 378563751 447541112 169612469 335828865 503793327 602818327 893964071 979369505 499123991 948959142 994379036 997713173 937942053 967972917 599783383 930255330 463141445 466163676 754301087 788710746 983996444 986853018 37595193 565967984 573946215 916978010 611137358 939242644 336314986 898587614 404811559 898110775 36175514 831520297 553684498 998549628 987205010 997065912 985782398 998584304 573859769 761004700 621883897 982445246 122609530 339244878 44016657 87717071 353315015 615480297 352261752 649930070 765041478 793932780 488224704 923268746 15263273 424899858 131562059 702755167 39454643 385819437 364794299 823337318 151722685 348744937 525189934 795539476 331521440 559037110 1151542 511561585 700731482 736270751 436143337 484732243 610068657 872671046 936742562 974623803 245240794 532373557 352399912 705544895 22144935 650730580 720567604 910514822 439857145 950792384 442535698 475737008 205294812 492519169 240764774 795084655 35733214 652592112 995244175 996791165 165588588 498321365 305136924 401077976 679708876 888669769 96369491 546548320 489586882 514583377 247974791 381481134 526547206 762427097 33958350 915667285 475272408 980140476 37253434 315362062 275590659 921604866 74643442 738573484 759970974 899617556 167604574 638992834 134675969 835211176 97189845 791266081 623472408 690529655 710044087 837896199 784307647 963501859 900909644 933359667 600089191 917416682 3765197 548536550 946667046 969460079 566211356 608387830 678151884 863912572 869213650 907999413 644613570 907496405 502782954 535944305 899605308 977874185 389672621 955071400 877251388 954270592 748054144 826341479 213622340 959261297 59597990 88408795 37859052 912181765 836042171 950542026 587300413 900521753 704752574 767899538 172363956 983750679 796121468 817224072 14383765 272809300 510782985 792634231 686343904 696475583 874766020 979174951 742134497 936455811 408109175 815204857 76108827 575015848 159641499 778091588 211023329 231153240 644820335 775485117 19485780 868627822 803230675 891015340 858877603 912221962 564903648 897058605 12830741 801708301 618207492 992552982 970051362 992473056 409186752 847956608 323539975 990790762 978301475 991226770 90543370 681907304 829182770 940515865 841767599 852446585 485925347 844494481 696589692 895114380 433558682 883514508 609374359 919135384 793194658 968566854 640580533 887449828 374789617 843462210 903302877 981547688 83920597 264878103 424016920 880976864 394391077 617115539 753962052 975928806 920989402 979192409 248982093 435608641 760113589 765691518 442127588 966709974 797151930 801332022 652549086 896428370 41939692 973560445 571739288 806671387 897972389 944323869 855597857 880197456 664948742 993698638 139044690 898562784 369102834 916912491 288770372 785366452 806913188 897356868 757446236 952201452 533397824 642423436 51347179 630061290 811374380 836963850 555312785 931727833 189140817 642685841 56270328 479295050 251341660 286600471 147434682 619238612 644942180 867364391 258330013 421783963 804578113 808431626 285763001 585761672 131085125 154927849 582786048 961089884 99393389 337859622 979269933 992001479 970897602 982961333 940710415 988531217 921127884 925869796 151811228 436466169 675425077 763761707 359695737 598588041 67218616 498639649 381084591 733275060 632175387 642277211 672531405 951415200 948929823 984439000 508860517 980370488 438066729 690643705 672057595 788723679 505872134 562626636 900668749 905588696 803560667 934701857 853282914 943559894 508648526 649979868 77656123 172117573 845215419 869971527 571010365 573429649 332930016 338167205 256631673 344219473 673708736 861972651 549734368 747314903 998020898 999381407 478948173 802031111 31047812 406192799 783759373 792224629 740942321 959440135 880759238 905453986 248456837 821155162 110963183 335667124 659211556 805760590 449907305 470121582 831472859 973401545 490183884 623042108 826571352 901579648 354665570 908192199 647303014 922913963 508994232 935009346 489733722 524040556 868020552 967505428 509943569 778299924 392000964 531595541 235285377 707067273 657914892 916046992 727618451 740810326 715153958 795561701 782749196 789223332 701549035 858526486 109794365 572887363 181736864 200014880 842856948 883725457 809497507 947660271 900634663 998367771 188110211 191633822 162611744 618440625 36507944 628855519 937240574 942172634 693611102 849645595 177895805 739158891 681106005 857995233 104425803 844513536 472336311 656847855 858654429 986195712 346756483 460628251 182455640 478249782 872112363 892268273 510322419 602600471 656783170 845808458 832194084 887712024 151862930 263774185 826257446 941992060 480423277 807769851 235336932 406422623 509147687 574807415 184573178 721224524 566686072 746573966 927071931 937749670 667908731 811786608 185645899 945036997 903426887 978716030 72783771 958865887 21185408 954124392 526998894 682582796 39307066 775265003 649649371 800183874 528660201 704024657 56958274 717523070 542295747 548243323 800665404 969558876 181571885 367326776 475770827 728117946 894573299 931067913 417067937 746547903 467555636 908298916 491280485 846404756 372067944 751609323 851700366 950606904 694376590 957648439 355667534 920710866 253384999 307661004 461625283 987381101 182138167 882911850 902399673 954318782 654278642 956625587 92538952 246852841 861059203 879546120 768798184 792454878 789146547 887383403 329845957 851180038 449304903 637877365 432922746 820240045 310194031 728718436 672595916 857519054 988763603 998747847 470445788 973444462 808796063 986886637 220838278 276295772 274201554 744194846 202511960 277960204 834974223 943686179 273693490 676866052 767576338 887463306 945822437 950654258 148849992 992892332 380414756 924646426 853993872 916040329 384061664 507741746 612686332 724881895 879213733 974570482 948069774 995885722 102270571 961390351 427838865 667725354 588749138 762035963 213526476 342140637 166814817 853849440 821276035 998176520 295654967 597985768 233533911 465500195 357630798 706307279 611075745 646659154 889671790 995378301 992851149 996588944 595715587 760510276 982599767 998442951 92762246 411382160 462208383 632660385 918030674 998845113 716089664 815588239 677388572 936128181 608045257 817789432 576150619 690992964 887082684 892198578 699814257 817715874 733714802 832750392 353772552 610658314 454001722 866995323 262510092 813986738 96355654 704650476 671973041 870927484 729728192 994083128 599169372 954164335 796842954 893154751 781270718 845388448 954268805 993543776 889045267 903923532 199874058 620623522 551726801 666308198 96047852 182660133 209757467 940121809 993756814 997796996 683645340 721070862 752978391 922235819 746673117 855516563 237068801 977880198 309233649 948773332 242932189 685510492 734407583 923710560 263157799 686567990 751601198 955567686 629274931 810311215 669355364 745429954 600809280 976944612 243854061 516814143 891174861 926776811 976991967 996108714 167092876 815929043 44580901 921202804 736070255 858857324 611250032 754044082 357793783 608938069 701914540 843340724 146149038 896725398 42799420 532065782 422503038 566531621 79215017 87967552 565182304 903337549 438737180 521077068 726898523 744368866 331406901 659989763 868568846 950956307 25420376 912545286 438799544 864867370 974794972 978755165 365712882 982470838 995907244 998744028 396053030 611224686 737694220 933407495 398579645 521228081 705688011 740536384 927418644 988825144 276688423 582478969 452279495 516582063 471867258 911150477 810815952 936537846 61551374 537262582 223726258 752896454 156924541 255296063 726708909 852640408 710769884 991682965 688619611 789070158 168321119 516637091 633630019 959051141 461027851 728397957 813899968 937408481 38030782 989409657 86445980 779279191 653088530 675523159 867754475 931765797 178010662 366397775 598399135 625639886 179426308 850800628 763433338 768959124 366401762 917986886 185456238 681380737 944047968 976135783 227685446 341079840 445290847 576085249 270789201 638231711 914558515 948709462 137879419 240443565 290007933 963652531 118431559 615757906 448588924 956290979 396462991 399796871 669495158 946908260 577573481 591865200 324215308 878222975 443038103 849980491 948939214 965029093 740771606 820442657 815443258 925553105 312138138 674267074 991279865 995081899 898907387 937499257 172538671 744161685 452640396 619397103 568861751 832699113 903134364 987124466 89870479 917059377 834101604 963879101 579132758 678246941 16023272 572707715 104526049 879529307 417771133 907836847 681677850 961002861 771109806 968330807 866947353 924649601 647617715 879618687 679604862 705571979 467688361 828395443 457765208 459093108 238103074 333211316 87913617 580685309 422227418 499475512 957368303 998547728 903269150 954879533 438180669 476169038 808678100 990278803 350826872 682770211 868147446 929779131 780881888 869055259 292225259 675482855 519394434 588449302 338057697 825228885 35208114 905734159 517252765 578596431 380101506 613300351 792231642 950680194 814228145 851462965 849752418 877678406 207794437 505021365 688746 614925089 745731459 996083719 833269164 833324856 191919165 501945841 4470465 110004376 183188356 779853215 547322201 744037378 277512788 904324816 71006752 820575932 375066039 841982248 810169771 887019437 424355574 926011432 29302723 845875376 859383464 968856009 586550578 695510949 179821860 667515636 891746139 961549233 597064878 821399936 159816885 882638588 450884728 894426106 558766680 918590992 909316762 954930293 630583255 982627939 764338528 858671010 802616022 877561130 804781083 854141303 461931198 654626595 664839685 954924663 194404379 836254122 268115371 970585349 23745481 375399437 113145161 368578865 272610725 776731988 171195781 734281690 456277647 610030095 162476359 214621220 949748402 985779255 722979721 833912560 914791802 984723165 236199653 742374960 414816776 862784319 755648835 876278182 960763851 980596333 139336888 624048196 900129308 928518168 774146849 937688271 822607775 850343666 760483397 867171861 658452405 928934301 316046898 349823500 368759368 759532017 795866452 928902718 356937667 938820066 212716627 740812946 335905721 342930880 933716220 998163165 823637483 963766921 175099991 646753925 245301382 573904087 123563663 595482097 687147386 734163617 205959745 878571578 518244136 794041900 547736070 579790460 508902548 918730166 744835727 826287974 851274277 932460110 352915223 466271433 782386071 826808316 286317151 478357989 995517393 997349938 307294455 696052638 165098298 590009932 686433692 717844654 772613002 886198678 812835058 862588637 992285347 998146647 521818857 621247337 218039989 722016611 270668250 605522759 871764868 874725993 224348874 560539077 686030950 768793045 390815079 910761492 867297501 927255436 984868421 993513819 638146719 934955962 64847812 298870876 330113731 980332336 541190005 778412901 770367039 889147793 885363353 886122923 741913217 744434538 595330334 933301005 181213857 533774313 621089128 907884243 98587066 783084189 151241826 246908564 576029110 887274387 494088292 963226944 747570331 860208720 43272311 968983845 155969540 275685829 893285932 961136317 120239846 162617459 260386039 727334717 270881174 795360785 87459540 417334428 18938334 639750821 469706071 533906504 412290669 561896779 170696383 730146746 736431831 969332811 41321789 350300590 552250319 920751219 855902908 953120249 507027987 681388705 879439314 913920634 383210009 516876046 361371528 771962522 75528037 279931099 179511597 660576351 89589501 158922080 395745073 651574177 795440715 816041591 431896652 673667115 476901611 669035920 557457742 998592994 628559350 683497234 600646207 706849367 614700831 663457718 33385151 61791933 318122091 726643048 633170987 805457467 825507572 848755639 276895452 582270988 873683555 993182092 463969907 861474705 467520468 967112766 341555828 592174182 104068216 169899110 224911420 866930823 806751406 894913444 218205035 801211965 391260207 951628699 792509491 950341968 550221601 689417950 113686422 387949761 42722077 644492606 695610660 841117773 716943619 995582732 702289778 980935487 479909851 917849057 261461114 879965048 445865962 651545358 850100878 933289489 657849621 750044037 713145009 919030319 119333675 134104576 336923202 434542425 344846051 948587539 422592737 682787768 373510058 756199859 623090886 837620264 37641820 463501606 866919844 893222093 206512654 901523333 238386923 930029869 190848985 589282071 461706081 688570831 882613093 898809126 10165479 421715093 375401580 636076449 673173218 742794359 151398942 789920237 610312081 715148211 757583100 881099948 135548425 529873792 870346636 933230472 597981502 667679443 837489281 988596339 663961799 839575195 486969821 818026860 649382006 744918261 515754149 879302570 964593066 975228711 38613170 913996561 811317285 943217327 982407350 998950204 109054692 914490527 800365564 988833473 632721481 905581015 993227890 993874340 155529377 932302237 217173392 788913566 564812277 766351469 432424724 463100731 257459708 925520423 177574739 954903505 15429440 885537327 43501241 484178901 975876934 993447653 870452536 948948765 522563113 684100302 361386292 791172052 449969613 672092093 257750262 839640876 560780694 779569378 104657494 765786124 33261030 737251885 69509710 546878784 120723636 715028376 301749077 766804599 453727270 706027825 775877883 873035027 543970119 844046584 473794351 532452850 497876647 720337618 772258494 876887627 795545591 836729407 591629653 714662870 134833119 636536146 956807565 983811394 131284851 451820696 960804198 962931991 876458144 887975619 868993678 895104392 830668032 964630622 824524105 975306745 711973593 820467700 624838234 934298636 472330449 567466948 58246843 748800379 878481194 938178144 378304164 644382595 331521203 678180187 898306065 919981216 208309912 934882080 900322665 940965551 317379937 497473916 473823184 510261768 396697159 772281648 279478194 641936855 586937455 917253884 381630810 579834321 217451575 622810894 982379628 995915426 358133147 672613808 420743306 734830842 563551622 767154968 266786727 654283540 750828447 880086537 80640723 173288303 291702075 526131539 132053285 321067725 357979025 687628835 579920790 945216246 734918832 873291883 310040641 884312210 139248096 378394034 33181007 319671320 574860327 998947589 864493805 945364882 112390737 430006916 379414334 923942759 948416445 988401410 397351434 513819729 344175947 959097248 908504288 977769482 950760182 975821222 63994838 486231806 624206402 647254308 63679327 839362062 705113026 772449255 841866196 923141854 730246564 856023159 934245223 971063100 433438234 833462407 103574802 608482674 782476667 829443922 783049119 834705338 495694448 892372913 350922864 581141898 558378282 772423051 62217442 649941031 195015487 395171158 934801157 944139001 527235047 815139135 637400040 996614444 778735252 897645811 879008254 977351674 781553907 974659933 345727570 587023738 968524930 990009332 951203766 990660144 731133670 732917236 430461084 726659232 403691091 758425925 670753129 815124115 302990682 763066773 85484642 942052069 91723086 829092140 603858521 626905336 720976862 785175130 508299009 829086979 406144647 876467218 396410600 624760290 366281128 426811646 551223825 917508702 681032410 978083672 616352443 986858445 413469575 460950344 765076841 911157856 289058556 833220467 858608831 966564434 176088762 862881775 267115835 291334161 802953989 818835001 77275953 347880585 300083084 659314820 183974517 313133898 301690876 711354246 647240077 889644218 521623245 862174432 118859966 538985019 39878050 571680327 249669350 452700489 106559297 135091330 92146441 252933036 653034119 748206873 308702407 883585583 310290911 974192007 163374673 467846674 724981005 913772457 412591417 758993934 741628127 780006614 552420834 847739655 745328058 920579031 654857852 822112080 739966246 907828445 351567623 471165125 158779760 529223759 607876073 717499080 744830034 803275308 88437266 957120902 710049159 957236763 391557724 888299400 285522308 821521662 36936460 847609961 932684987 987666748 400476634 417512720 928243578 977367928 353558672 728538192 352885285 420924837 36971316 212971833 392765713 760644180 420640798 638435456 794327602 893263439 85412250 193226180 107665129 811639012 981720181 994632332 936499330 986779905 29075708 159620461 754054995 894062327 790628680 881579004 457707620 619680784 300655943 825575260 837689296 850145497 357716045 911994075 704425740 956406074 928233364 956758775 140363160 996238534 978159324 992926085 37112174 553035114 693726553 940043781 37697495 595747375 888496610 897670730 425720833 861239931 736840548 855511217 111044787 278336808 947438031 958346176 434644563 824640743 928750301 988271549 138556179 780818638 308463586 567097284 985261065 996664944 923002601 937511875 836903638 928258277 232777484 335716456 809434357 868174897 776655124 943247422 487937913 840962339 893207591 946755958 888958797 988201028 376904596 707426666 668330669 676156089 22923435 103340525 843001621 974561015 801301888 852606608 524495670 701323033 13019072 624086192 164205220 946145322 78807670 806510379 773237825 889583583 284379512 511334601 837961733 868015815 59412061 471963518 969926377 971665907 524994361 571577476 157167201 361692608 429701297 739585109 79073416 518854422 291077574 763690269 69282587 167918445 512555555 644051112 997174389 997916688 784048516 939242468 989700820 992348492 911237134 920990997 78855838 540485250 784338208 947389180 359391534 838785341 418903667 616500538 230631508 546132404 790046209 830160984 633198035 633984269 111674153 363212320 374288910 720988184 283776737 469105560 473425766 982791481 216912173 392514784 606342774 902941644 992195676 993966324 953780247 993414664 851476880 853017937 126021194 362817385 53762563 802528141 596129853 731783453 344196656 690643340 3261156 269553537 712291775 840928542 869049536 887362251 679428648 916989806 317810409 447353691 71850813 753418331 14650971 293537005 110213172 599031716 651113726 989554251 593984324 940200895 580177604 861990801 532049825 724297022 797581264 830996829 684910129 938758781 581361005 721863730 92668536 727378951 87018931 561368503 661272792 914958103 524652313 954115531 294841606 989139224 586057894 685719900 896323663 948911784 392280418 852442158 862569862 922247472 737723685 860555981 725774621 769211326 964501711 987906983 927352041 928674917 647704419 795354422 618897974 918726732 241039292 358911858 875324415 975114766 686984433 877915197 703720903 886759504 462258065 874510445 517434091 518478548 126002437 350715192 985780592 986566196 639906042 887428172 530661630 982274543 554464791 800747589 245968460 728036341 817795980 849322983 896566605 984188675 641609681 781663377 155723022 450965940 150970588 979832705 304856140 454641720 253518717 914065712 983563152 989136398 149872291 334336284 245796924 439706184 621562704 794832009 38600931 309082508 167302879 246315312 901691094 982419467 786293791 913462657 743250799 935010844 379998214 657983750 17964303 300529703 591679992 974901717 923123953 997610092 398087506 815935262 45677959 507164152 731713358 732225027 839899340 932367521 550204180 869921421 521633390 813237588 305617878 821412303 12601798 880662545 860402563 975834196 754675530 937364011 55024053 539599274 584347300 840145428 996312251 997522995 42181923 142172246 255041204 330363041 519912073 819073609 217482478 819201731 534233459 963760084 587257607 975511489 749510738 954037902 366429433 440902753 458937863 692212499 672776500 701276380 532264754 792186819 715843877 969802843 795176304 997115376 415095061 665865095 114020337 168706577 78231893 640651540 345672937 838617466 969247853 996948389 935586100 943531099 120727429 165505592 648512090 959908102 387988492 415118801 935106023 965637226 608337068 613449967 350287495 987509722 16335153 192226987 13412227 661028651 650022128 724976484 226424218 881334309 758283843 908575917 169626705 779464332 573872116 602138633 815590752 844246139 602569471 924159684 201167263 823973866 112932096 291421498 287842213 899645729 734993258 997473336 719470161 747072278 727209480 924786616 616774572 838165411 347052601 512919231 155207277 426155940 884352726 911612758 501031885 691923644 794202228 951867456 543206474 992459217 460870125 545891799 90658849 877924852 621269812 909241929 217922857 944939018 381332246 540228461 978307798 990409366 786949019 904977097 963906616 973877167 300938190 718672739 214322190 427549279 872735666 926176498 199781334 451543239 608948030 990490003 889321644 909956703 766453285 776221742 821449795 847867598 578236539 789239181 887437743 972250703 578676429 758428198 367835805 736998395 151158567 535290312 759144640 830192701 993362193 997518967 520501575 644307561 458671983 900821928 992123367 998157130 555498178 722150528 33741504 351819407 856351587 961832656 681604382 811146952 596448294 742513749 713867334 996966480 644903741 739008128 862775302 913282878 256411935 690268775 244283468 365629008 336134703 470193981 527509761 743181274 825843520 834932027 574102269 610370110 630647061 947825280 125485206 851009183 299476433 379690595 496931742 507461989 162245426 230959859 276024787 842040540 635937537 716220082 617965680 907985678 559862408 873688133 780900395 856820324 826500959 997968379 932540693 967465910 497957755 833263615 421118331 485186375 473427065 914236759 52024335 542991050 310977969 902349369 439936854 535475690 12915150 882280179 718532611 928137765 51617256 459000889 760730716 771728672 393795089 870239354 234702722 956182117 219238114 767943008 711720167 792013759 891803682 904096556 943467441 996919728 700918308 856844582 99580254 933527594 519433215 861593368 57813159 871053101 558544224 710271561 638198300 877519341 196512809 471286969 403383321 495271872 151857305 208411827 65786230 851878520 78581676 764487802 585058090 995435447 578068776 723484991 914842457 980774993 732278799 853339630 378376408 642428737 707785938 907182719 120254048 209126718 211700500 855942015 378542434 542775805 148405750 254788834 4752092 796733618 500961828 855318429 958236094 966794776 158378941 531494689 632848968 730439083 15262470 812677701 399690952 672811808 656125352 720872207 346688908 916741985 381269524 712472812 189070317 822621880 633778919 921905555 337190934 436719602 351626098 963446093 863640262 956419995 927925140 959124342 959467767 978195620 474295197 806547052 84575541 945875467 212627198 892256345 252305804 726075547 533460920 555969382 260803490 979272296 220019328 739719352 724488735 970581158 256061904 589232303 979146668 988290238 795541960 805919115 914903034 929752564 673715358 753282772 31345872 602444012 645826569 863299296 675287953 694023129 10863672 37961745 23317682 702843677 718094064 996293921 104643185 302103826 699603836 959725449 37896349 588185475 89852003 876836548 288190097 772214503 631301919 812924884 284804240 736477446 152450343 366396719 150000753 422522183 880072624 947602664 98098064 568696688 284557320 291879903 511523155 842373651 343591527 878805615 354690099 478818125 528367405 557648701 854293740 858422466 226530855 354217953 618812518 780145082 382060452 450735571 708560753 857865635 475487604 494230346 340219889 389537983 578726886 819450163 872711819 936724640 243758799 677141104 139601565 689163882 980153105 984625304 752988978 779468674 31096645 940641539 269439099 745105765 226165791 646653217 690725718 732834024 319510916 973505279 937765753 951489322 552003759 583384099 588709151 733860673 109073225 412202621 15043674 328394435 551813410 709673669 954422651 990985558 599636072 894199276 702173538 753113256 978835327 987518337 891904535 977195441 560465097 911959440 679842961 682781851 765831773 799123261 440696410 782888379 183330976 502158414 52425520 232075708 425725246 470880604 655395985 767658524 326203217 446520544 580104709 767564680 26009208 882273088 310431567 507078131 178566360 805689444 541012896 775217388 598642746 836844592 997057876 998466285 661469607 768292371 158832939 872331783 787627027 935092384 993032272 995715457 126835612 805776080 947521011 971692797 732948837 991281492 735291392 817882914 514577881 663561641 872101608 900727399 2829489 121728657 629824348 862530271 360632913 670286075 365871728 884757358 727980692 826536694 189864680 523659042 801970425 961590720 301776546 824788930 129973676 945290127 603213685 791597550 688035256 884160387 581233648 612352464 190389450 926738814 998584809 999163304 853956821 857170311 449714051 883768832 752896542 862280535 922468951 938386828 732085465 887242787 501931007 547456770 170462687 489016971 498818157 661502710 760842004 980246848 978859284 985886170 496554391 903306283 347624698 366845716 805626154 826657060 357314881 811361311 570431341 670056107 750570380 845559554 689333810 908986596 967741995 992116062 853934733 998881275 823372024 846174283 736327595 739569928 500430363 527839325 890558497 987529651 763252517 815731968 638236358 752321709 342064611 873349529 246920526 854185865 60622063 143372279 614814088 750215410 72530943 672210924 182286307 300988349 77531984 423536942 973330216 978379443 900544856 928731066 323218958 475587296 162799061 470908831 375479886 762621911 312262938 617296181 77889758 973023388 922611249 998563377 652935291 947976255 521464359 689393105 790617782 895644568 916889556 974511343 248838650 467276902 387866429 857896272 506986340 642566247 690308964 982037717 22571457 567653164 200442682 496801704 399186095 421083609 735178480 806688498 180039103 807541618 907632550 951089857 585365100 665906837 692514454 828849938 718617325 901435749 45956018 179337117 768152594 911982357 906133737 942281952 76913019 281346907 827614498 984736626 994526697 996885755 995736694 996736658 342536935 716802892 46764792 80018358 325923342 547758388 663261969 781524755 588553680 688541679 621478968 646090571 985570500 985992696 597897348 867300666 205497894 519668883 620704956 745435721 99316149 381398853 923802451 961085862 643810140 805762497 430978506 777103457 706856431 983880233 294358992 386548448 652978136 747928808 789968221 972742727 993059421 996272068 941326758 989689743 372308628 887506117 487674504 549811852 186885656 247681375 981707048 991787251 632661094 637487518 224043444 686090889 987535741 997173058 120759928 988436773 748482242 940215632 586835551 776714188 757165479 933865169 537737670 547075685 63550916 652938142 303901249 836388820 621438967 731763963 905328088 991639170 341416636 480036779 448572884 595256751 866684222 998100777 812362463 986204445 702172259 793324953 158105180 261515715 683545483 871618861 842548217 919177051 422706966 580086905 776185783 786118660 278146865 572138833 527011278 544392247 78598883 83519783 191505791 473172361 576138107 673231273 76232853 995787811 936042363 978076523 494780929 797238595 331580502 923219223 35943512 139945262 819221156 915699875 526406775 836912721 290708950 678302703 781653532 863935306 850553741 963783952 988426035 991478545 518290418 848175548 953564205 995020304 692830895 731856615 884110457 971800640 420544077 762369902 461086065 800221219 511149627 899233084 430726693 571251275 504265226 529547573 919728224 920164777 154106354 549490561 239202567 636650282 315545819 720932778 678110385 842529645 852760558 998301285 260038025 654320184 373695343 592030180 545625542 859646014 611901656 851746262 19895660 672113923 194007899 805930928 507649558 800578567 94412491 815384159 939831005 994085484 464527069 818212412 955547165 982015845 489005558 986026574 726630158 851777727 347384617 764896906 275439311 904801440 294205860 355375935 199728211 631305316 544750308 572161217 476382601 573985097 656492589 997099229 926538992 983089066 838034165 868578701 962061706 981631634 459313066 753534848 113271523 593226453 471477846 845906759 112750712 622597829 481071059 487934436 505068413 804389720 897542487 961671995 252722580 869425969 40516597 109006712 207663867 438285804 855153653 886137763 131704231 493582316 793674087 968822607 920564863 957120760 873161811 908487741 641883430 944718945 723193859 921233795 541221311 833102242 860345286 939250954 886356668 936090999 999351768 999387591 866301866 986400271 680984631 726482634 143465751 763237909 416840503 470443093 655861659 872801911 632703926 801045339 963152595 974092802 659274488 685880026 846519518 988122087 696980383 775424457 200336315 369671544 794115806 931995564 537331552 724502983 176500463 990150762 728931885 966999669 377862342 404193528 782343839 822760994 375433789 741593828 36146527 76181467 8135331 695790559 933635849 971526488 255860902 978151634 822746184 954384364 971891966 975756660 893501516 936039406 677645657 850867858 301532059 925418512 594355832 712884236 493790339 556553698 729578451 797823352 451636307 933707140 375981413 534860420 104942288 304888275 959438998 979895476 642071108 856972160 785395634 819609490 104950058 381030297 836506611 913118524 415215219 570563125 583585818 667592102 654417806 782780548 29382536 510067275 990504478 992316309 845053816 972091144 679045594 744876193 854846516 982956488 372082074 895322804 500204385 843194638 819486857 833970341 88456090 874950394 498325222 833342113 687776131 858057672 66700134 288457282 934888033 990393040 183419268 776447576 32512355 802527113 154183455 578562412 955975492 964603895 438354030 681804026 865262022 869842024 193558588 424301812 680790238 797403159 895913338 950030642 2700788 329326513 443353554 644622218 823820035 832087712 418307494 419914597 48361041 244769861 727521349 993879115 611057790 954550357 960495578 980471960 13063118 568923383 570963597 629562322 967551463 990361649 919542797 932335345 271359851 674307661 61666073 930115764 787718967 997994833 623981832 650913968 593868190 671442188 814699395 883726778 745998773 828945581 366130404 646444160 828870542 892869993 111528170 711782836 652790784 699911735 400148268 934676488 393599301 652705776 159204503 601524103 996756898 997490634 91651101 396446826 477002666 724427774 739972403 959740540 1564838 361937765 254281625 809661908 171572566 279985074 562788789 714000960 435511967 862589782 174955593 959581378 3611607 533523755 265226439 667411042 814606533 889305384 478710959 756796652 177670048 833774283 198093609 391648008 40007642 527848196 98191695 103297091 635783675 827076930 865736454 887463220 505626680 939494822 729889358 860277758 752214440 767091276 104802509 799276805 430916790 578222002 749176155 878676117 926041291 967645056 210931489 394015929 350015543 501468613 386722088 563400201 119399199 128819577 110850449 243358659 398537206 857816446 255886428 864759901 484596865 673184611 768051308 853520118 192784006 461583627 548301932 642390845 373273843 749861293 120176659 816493724 355679296 838668515 618443388 961693497 973879027 999014257 632197419 685516514 338357579 787080658 943231121 960250587 375606726 435360542 56448656 103481829 146860065 357484950 573843330 655654549 636319388 746161663 599110491 937604168 46310484 421246475 691698263 722772477 281278579 704261303 108294460 219592620 674044052 836430620 173725849 433747915 713383754 759370513 555150083 622457095 305802342 788095477 471877809 938356207 16340566 858774337 413195993 890596193 731705269 859252485 235640930 598006012 274131052 771797125 738596976 838174855 395623475 979845804 268859172 817694803 594758086 626964368 909635761 959975735 388372543 618591467 185030490 689146902 304806703 893151275 409095136 798388530 582307890 774252950 170718506 522101796 778300506 827773827 330362608 789851785 743060769 753041508 987110121 998278243 320883993 761490946 102428170 136760312 871240734 901953005 303479899 697289100 14343655 301386745 385599972 579859824 919354702 930177170 315003676 627789787 738043932 944071445 417137185 733978122 917806460 989761812 922757274 940365123 257089454 568818376 669640146 744981215 559804475 666105989 444087519 917014004 931530539 940886178 733085587 899549532 74111202 993532535 622998553 662611656 884527335 924939312 28836782 910234077 15721202 122169213 684994884 971263959 126750770 673855625 644790377 748104037 944814575 945791767 23722018 623784357 860863621 948570211 418274741 766201393 163772484 352960134 641778390 910512742 832800656 957337333 887824926 943709908 551848370 960838585 86118665 993333628 127217840 409351135 269603899 319179058 344285970 724929357 784635520 826204637 609207124 844825194 615139519 905146523 262027127 296917598 308472432 438521087 826760069 912485094 219335813 309456328 887925999 896734813 76210270 464979281 796688167 893536779 649036511 992903353 136152487 184200174 645932520 678605297 451398863 857357259 578297432 688246639 594222425 835980216 19217268 947213832 450316201 682530401 747217013 990955368 805868834 886154405 928182197 995922686 69447044 701155227 983110777 996925291 222768437 676503242 66331234 748233203 843295030 994044165 98938566 923999907 696945910 845446025 953846262 984233008 839387181 978384783 186770759 280456072 660461229 739189694 519302026 580080629 47493057 759944972 19712904 922547824 531334459 760410458 515773380 950766785 317630189 641393254 341021273 540604643 20167613 488800005 469590497 786474135 224444811 923311836 456153369 998539184 513836620 997813897 192970810 792616511 935813085 990647939 629844701 690157386 535649411 894896687 975341236 981408309 180999953 242828112 670624482 674433144 996073634 996793451 992689796 997108468 578986581 896965598 923744003 954334514 184406756 336623657 679817758 991448832 888684176 904789817 736996967 896250429 488582169 556461589 949272823 996375046 386906791 869059193 156675792 741060513 801828839 860627052 831800736 967278932 436107536 576214905 647128023 997498255 834230973 895878253 41867679 616897270 709660533 738905062 187726998 556076796 689875121 825026325 408058323 801439128 799847087 875110635 917880793 974972971 37242040 838670871 581181141 955233679 767195156 785496767 811756371 953399022 363233381 663172098 961919255 962398725 409810827 514497412 178231136 480830062 422098012 884178996 830757191 989675846 230024628 585124814 583153641 936033075 925502388 956007739 375185097 554209983 732745674 825564847 593424002 674741584 56430525 741397841 265913008 981067328 241400421 350524301 437309430 497475306 442272074 747575734 727892137 963180608 470948371 787698377 911924665 987092088 81118440 94888809 147447689 254091352 24266690 306160073 982175828 990186080 829292989 971446821 601123903 978652564 496176607 945396434 604739820 989054820 192646206 420450966 375244973 608951112 415216459 965683992 408510938 950074380 85299004 640858742 103931447 532241966 241201687 322640837 407424713 743833122 784041435 914593633 413431117 840865767 409220127 961215303 2876951 85968817 480145674 532190610 196472650 428891672 95665324 853568977 646884510 718597164 629193135 964369913 587580312 788866771 401552161 850203943 750869826 872150252 829579338 959337565 203607639 789742285 330407598 651358229 326176451 851961566 175545129 352665465 438896551 757305073 594539236 801622498 140353364 362758582 146207445 534764504 143440658 934169091 459623120 644675389 898439453 956271395 30695366 981223223 876785150 947541797 826081968 969408989 815725651 938539974 996850046 997487921 677369346 877933516 320558350 688377463 309854071 654955346 207652991 707332150 207337260 221104530 834755943 979109988 318537700 530382801 700802271 959091594 969618935 980002765 828154548 836209783 889093396 935021658 211697541 609404102 561222485 737836621 683158701 881264977 62428627 537684255 310740570 476046931 53185280 790525007 665047350 898323818 280160119 469763064 571168580 913696597 286704270 893958882 467178365 911060793 237895700 950966667 698429100 754847712 598883390 642496049 735438788 909501930 500210344 969343087 598590472 669025485 21381427 717326703 395496795 844584275 678282089 719911580 175089032 383206378 850417179 943243123 77801025 165181122 346657393 814210870 865425235 934723078 143610019 917224881 313110465 761245294 55539484 320801920 385981367 988040458 343365300 763047899 903394083 917163689 500968124 952725676 368027360 453971688 686810941 884766737 512744630 802703415 464468619 819551963 191094836 409228837 420659968 798625468 872476422 936362169 428479097 881278806 601529251 914745723 826487826 969879377 365347087 926094457 866470991 896859379 986071568 998711034 669759323 706339522 456133396 878976205 882179263 954529886 614425917 741828834 309486759 576342677 908398980 919712500 932578004 964541658 466996155 611773758 491712532 574909650 428537628 866136287 437631641 450132435 93501119 196029661 270590695 375506186 338180303 970580773 213466157 569861288 147066787 501434864 782734284 978153633 556475940 876849046 370893421 678599152 38282781 416703532 254562140 566130540 995841090 996335810 920883744 994907527 284889456 686630364 362865072 827836028 10919275 804164914 254067821 936297906 185543826 800106791 647462396 824465284 386920840 947204879 232498525 745190813 730276963 949323166 637706773 917477169 995239320 995848141 877960053 968483104 690283000 695251076 880477592 975676385 274229069 375051563 129098212 509913313 60251432 969696811 74885828 630263898 488418463 934693745 836078063 947765723 477083668 798335124 226241136 739572715 57898352 340058729 321931667 785848691 855148878 935262982 903728610 924905130 513390780 556361464 165635846 620191613 39134379 293531831 400746011 938226336 713637503 757765654 466985317 525442770 239287131 964111871 701465543 977640200 888861489 920423685 70491770 333612368 349215757 367195106 128054211 455880157 797919078 987748183 207584897 767426217 395969651 513943581 95535587 259955063 302073332 822457085 37843978 847322032 572002762 610360976 505353041 713154867 982863011 990211260 954743244 981800626 806752436 827561856 963100337 979663604 980756707 994343427 409266842 893881971 617956072 648588988 762442429 803285338 616660374 874044596 675660144 981270275 938498861 960566045 18408826 276673389 272685324 459252462 402763224 965526645 514954580 974392479 322069231 670131364 211197048 597006589 584923537 673621781 949543166 966271101 676998355 751084094 824186035 879587789 933445287 991239269 853291604 955526104 690595945 861772129 225431991 764435431 640069058 965115689 648845257 686603380 451501919 924558393 682322590 830053307 930061797 943214089 786163584 966790344 445239347 733837212 866927751 926913674 643097784 842472519 702228512 748517351 722299410 870211184 21476208 206599607 185223822 482220667 230701681 556216293 483830176 785508053 848138552 931665703 355364991 442684460 988256792 999142683 2234927 20929269 589393214 824142350 771397892 967409399 642765647 768679683 515307243 893939380 355105739 571068645 52887721 193612291 856061143 913163115 467764448 943248764 998261370 999251522 929947978 976197316 577801288 804631376 506851142 551027483 943888938 966640888 515822998 583572757 117661294 833280760 742754697 968572633 93634098 121313684 437182076 615922518 636000362 712260668 934501365 975612618 13828388 451118624 459806760 704484186 572305473 765946556 334066427 538161535 155936788 876457302 676450094 879856753 467057632 741338397 564554351 896912167 248094372 740000931 340189328 590836070 564574578 678526674 473353135 648258583 297663832 699540684 76145110 771469706 104178125 211997280 696132417 839036811 856490585 856581740 8859869 92113171 133434148 329503390 44915607 115139425 902994122 942490327 523144375 911026371 392126998 444355933 197560415 868483763 191718186 997385435 887034617 904044610 654306364 787024206 230821257 583487200 60907440 525294236 284664434 593182046 922224626 950069472 836068963 918362606 609570569 957396427 528815147 916734209 603461937 940690026 400961715 860408980 311880155 843936941 321809570 341872076 166971897 621125722 557377298 631564241 21540708 649577971 455325436 676724812 806330703 830128059 845335394 849385101 292254770 560662600 564565380 862093380 422199524 483205372 548716518 608139529 65949179 274328451 107378696 822748368 353838682 873507863 225844433 692857089 701076660 718166325 998702449 999269785 324340736 426522636 581437699 835268483 400044918 835610548 15685354 201709011 244537419 838335309 188341953 208267200 133317021 886427041 768086586 864456651 63859071 207654603 851470560 873672400 762925145 879359638 121583278 755534176 727587854 882338620 245340583 259146234 435834625 757931017 544985820 830985851 640196673 940014840 891216517 916420118 313918319 863071031 221637660 755188309 517701876 670190880 358992000 702111718 30362482 264078446 114847459 908162785 581767438 959345866 791637420 959802883 759616778 797417862 302420444 470047882 148431013 402226833 60009123 375412275 401722004 797130253 141713097 374699784 877580174 942372676 811179489 939295777 62757210 327060494 291852851 452159371 136848953 894425312 86964251 521079757 598244752 867681832 258914291 556009604 206805691 653053040 928064482 949538948 573818342 614903811 293618343 565722345 548100668 722849131 336239718 421898691 432218630 631544353 287554823 997172503 222481133 467162314 405089410 617725739 833983870 951178633 372635453 503049204 32354682 441690269 832129858 912659034 396126475 768181691 992272389 995614553 943822396 950694968 948662261 998834314 177372143 246360091 83013137 832223728 834083264 853369360 842775803 958710898 997680322 998250215 486344921 577388886 86852243 392810671 423971305 852501883 612679507 808116227 394768558 838692698 126948848 715871020 719969364 836406235 337367479 399644254 28809253 243811279 609680827 622212506 156290406 534171032 683592031 733948343 494431075 923500640 656835941 684571933 113537975 465590702 123095338 256579744 501795671 649735077 655247752 991456634 170717067 852944748 461508827 821216578 885478137 987423897 349937853 736919608 287265729 420395540 141578051 228746411 862190679 879099827 523671316 839821762 127534268 139219070 750072130 914905176 505892416 516451624 274596966 451992606 377932558 945814413 430364952 882554176 56351275 146091542 548237960 864503448 301391970 621446248 246841460 494915896 781844736 981758200 388698399 536868991 774707400 853279155 2590974 695446320 544037378 986306843 480005996 826377441 649828452 866184414 155196082 158174182 350422512 446374627 360340320 542747702 284084987 388812299 703157550 772383214 159045792 489949809 979805009 993801078 840730196 963472684 745756121 836315979 419605907 607394438 655041053 750484034 986882812 987757206 317453667 353059931 680654010 769829168 748206297 907229180 160921167 619826221 806957773 923792293 44900450 110150726 446743535 449648358 261929702 276941327 779670178 963597642 271715619 812599797 227648441 243279394 960514333 990048909 441040878 744716900 960021448 962700818 160017771 722118980 729084539 907915531 602695488 773836244 314068707 693922406 903052708 962915087 749811603 830250840 94952587 391636528 648175298 712957799 802416766 957556284 374434263 856909330 335887578 733930051 178517504 612825221 789514183 915176118 675692318 891027366 311786256 691702937 229995301 241622090 990168416 992373843 580264282 825075083 714169909 837325011 300088872 939718967 869705520 924944907 569426087 802297681 397029012 819983528 878106744 957846360 83703149 829766387 359654400 613923825 439862183 678956212 619336145 765621016 58810047 213671449 527991088 776457672 344327277 732103044 768927446 815162091 429667778 791108277 2355668 944465395 798217898 952240929 561699719 907030043 215709802 826527861 959341415 970941636 707744614 873410041 582589301 614201186 710184666 712175687 442082484 872614492 7464210 181101291 64404105 176059750 463593515 771116067 506462030 605119915 713966906 757128955 214639803 243838016 69887739 698681328 609516092 890980186 604172046 675120427 789070265 878272273 364165095 535897551 762377056 934708378 559882213 877494974 91755225 740404960 64615852 144885847 197058675 704872296 456182651 684109257 556725317 901629894 364934640 598697398 151329664 523213215 590520597 868713497 3056175 909757076 720569403 780916298 796462424 986250201 97625499 808604052 302616611 857509259 110890209 534454307 294138557 892027994 182960646 898894311 630428676 642573228 749038022 808901511 394920907 966718445 867463946 942021958 379080654 757265071 203589480 460031060 929844866 950821544 750502759 967869371 790140632 973197847 32451580 834769783 893759459 910535527 564541430 718628119 775871070 950175595 462461653 498008428 405872956 562673447 724313850 857280438 90046788 817416933 654490667 721669659 592283365 981952518 138317378 346450223 923748567 924756407 220346001 886812548 788111718 887634002 515155790 517052976 796874945 838781410 404114850 573261077 448400545 508607967 946943679 997983363 989829824 994989016 774242378 858177544 29745683 241596247 594033643 883577826 789609703 864817821 616247868 856583625 794210311 835781488 227084373 837759101 608563087 808243805 663001360 882884312 980849354 989619341 618348857 878348378 166354220 760374881 972515287 988603622 303373899 511864832 788483873 910574166 368803056 408606010 933543453 943366316 462887595 500847365 877767608 975546796 743605184 746851871 234360393 572672740 523276617 578218243 486104990 914424015 501837127 778141821 984301030 994111975 272879070 371769840 893886521 945172724 648438029 708245726 96800325 977758308 841656198 948052538 51353029 168282774 396674742 659958032 647371503 713401266 972516522 975651003 273392311 670854143 371771305 548375269 3427398 63901491 707910752 767816453 773963581 837694820 475497552 978392595 401236390 577585014 660099331 940721050 754374672 832895037 361977925 772548392 341869884 438522512 628358637 644366962 470647818 622815226 619382920 749067429 434858114 693187392 791756065 820819922 710112346 721935977 799656061 868819626 764996005 783395732 866514180 958059697 533552911 954587734 203833157 348090345 880090635 903926107 320066511 373769997 746243174 786511899 950685466 954396895 190728219 346465125 681339938 915295870 589994573 645038611 553095705 604478286 612787145 815025725 233304033 503703662 727627290 968422581 279113244 917583589 280435865 768488051 93546785 93860828 940875996 971511062 19858456 46937236 538060601 929222551 518358952 780984949 442099685 801819888 912328970 991711321 860875587 970992652 506292954 642328446 861221733 866131313 744215211 835428297 64526864 902085930 598202950 718954625 472842500 677429372 878418076 964791761 989169927 998769367 219117169 513475589 941958205 977937434 859674237 889277644 355112611 362096780 939629287 972071830 20003559 318223081 4063589 162258735 75043498 481785367 860411489 917941929 25320866 56303233 282714181 623917452 201423046 720597004 852707994 973967227 36112916 50996716 497787811 966539793 29339682 83761196 875441013 986636160 65400696 198454194 734129485 876193543 742055692 885753571 385418298 519960330 925925063 961885647 883312408 966538202 791126866 985511557 424499059 760316759 885366856 949304947 874833207 997413956 684426224 969633217 720162294 864492948 563934845 892958659 441518811 589928500 911042768 920105458 142768843 260553045 117957865 129731298 903780689 907903301 108257798 809992602 500885771 804932871 165457972 319560180 430483820 578290536 654360025 671096232 171778728 987562449 686149579 704852221 322369408 936812007 285660961 793668861 680006834 939712136 553935481 888554708 990776592 992260649 719688483 772243989 488845236 948811204 692044531 942082319 389922309 940206539 778967810 819417267 914345243 926989997 16995770 939273679 34285223 956727356 908704028 942663848 83771684 875019371 888648910 934944617 922439547 952461045 634375820 928060535 766388929 926013842 693617797 935615064 79275242 923148984 150919299 725209458 112964010 840275578 576540859 867657094 931846524 974164024 977766566 990265581 210472527 575383116 285530062 522271326 950933662 959854608 248833137 798123403 483495744 674420487 776440905 796730383 765692682 945310176 622695159 995770008 42657540 979737015 335561862 587835830 781582507 970287024 793496606 830293778 322886889 483821676 619416179 695701576 889795783 910532280 116868843 404413516 829420334 984014275 95493752 561983195 791090411 872313967 911768752 993988506 957399059 973645254 183041232 905425807 971410284 981803945 304722949 404712750 795718078 908430748 428049999 924919397 418664856 653921496 172217339 192775604 74931711 232306904 26879972 772411439 236166678 524463212 965266895 976877623 98681218 122498735 697958180 808671249 317081928 452981593 670948458 984730662 425712597 995347103 674335701 766099502 155413682 458845981 375467361 757180401 346205669 794543534 355095923 671695763 31671892 966249053 763952933 793785169 936693914 968859128 790444872 884363251 833552664 954121930 320829441 331909347 384705545 752755604 755244152 874475595 120555296 858293580 943863198 991545050 102277173 107645742 991386204 994948387 657761175 936399183 398520200 651318870 91918711 810598836 576924761 686612100 687270365 807903790 284940270 470494911 929588302 949548715 464655603 931851315 485044301 864287706 797523283 970817984 761801201 905761752 323834962 400771357 512168996 577195441 330661805 631291690 658002633 987048477 534302330 698928714 584732744 789851312 580585525 915793040 942044486 951829739 905312042 916989233 853564922 998071626 185554252 889040955 162621515 741902493 257099698 558007381 175392479 231967703 52899070 58288007 570670939 961873988 172017987 545918814 129618388 917684628 163290887 257121633 674186453 797162739 882166230 890452106 407135373 635676285 710011409 878127787 74747491 601786677 700540671 898155349 273238209 683915838 254682873 949739008 941063952 997313153 383733033 994818111 939557662 941900592 810588122 834165772 523396213 791007317 586721589 760146897 117126937 611635320 779191422 904484053 739849890 857766393 54091781 645238094 355898620 928725703 486520550 784822523 504781618 648740371 541987509 928310948 235132838 823828192 799393137 913636855 971660256 984235417 25970119 872139512 237077455 820305116 92842647 381574638 430748534 591573086 745032653 863798380 424159829 471552254 897608426 912533404 707067389 993428354 597640388 833331359 398475474 882176632 555856868 949227936 885348490 980765476 57420855 377914568 386886604 858616128 300655751 611237251 189725360 822849421 515614463 562654114 589886444 636359561 704852344 981860089 709006188 721377550 805155881 827331210 867130815 881783220 729210323 786283542 898863626 968142122 231036710 374149003 290943237 381098923 731124968 969489926 225625336 403683159 193652783 737878963 161083373 594314605 127016655 706104221 38250266 617583007 867594463 969387175 903549411 932230109 349678991 676379147 105418845 346596031 521366026 997198056 419237022 861706436 61635076 750373355 326963335 866654921 16963679 918292513 35645990 919991358 598081543 689246026 945857541 996849315 838856440 911203245 122037505 445355871 722883190 945943934 767183141 994692927 778129135 962678868 856748191 874163400 94603557 497825477 94170522 754107843 986545828 990534179 59220277 851561095 756335753 881923777 661877796 890103166 792309667 852470587 394809385 763183682 461086910 862150255 222227411 695925042 93112204 152007749 459662879 839129542 866974289 877937962 533342520 991162848 830743413 905411475 517877015 723272605 655967263 759350116 33742801 247255273 917107691 955180520 862650678 931015319 839032956 901960246 709032070 841822809 19891558 489943538 44321167 791756331 1327606 771100911 860223222 913582476 396447252 871512350 748443739 949206318 743457214 934302071 757887535 949148236 666861229 798244595 1718531 711924870 715193048 931071828 825024691 844614371 454429295 881755786 930913242 944224194 505015952 864307567 707065022 899940475 905180996 962307697 844271881 944382448 841983029 897186943 608158699 666731513 850144292 948652568 44379000 469874188 280144161 749764262 297649574 439372298 913215236 930525790 960200510 981308755 74467207 735767441 755685033 959141441 846773105 961509934 408056658 675098978 344141003 928629966 412370147 997312866 791143512 918766241 550206163 907014056 405436690 492742467 715068512 803864689 559267469 869490520 820779082 926597320 524606646 635259002 408877944 858976383 678550484 979745104 242531569 856443178 773445725 998079217 681586067 969509166 347543322 843388257 270885377 564601739 58494159 907982384 665258160 721749115 109023647 634363839 105030044 819405167 433137564 894826634 840507310 863470756 254354817 744939986 997566467 998851022 124797042 674858282 671790039 936836298 571751039 578787567 441887386 694802402 250745374 666085161 383117841 954919200 724416294 801901481 815519125 862139613 77619076 472686884 480700649 784533585 490956812 534417739 906852159 937326776 761558669 768950171 642492099 693164797 674314777 687716737 755984456 969150378 574160409 944455507 206058424 879003039 427908217 749652451 266367987 859620373 287746309 600005544 151502400 155414029 968724514 979293284 897511863 952237395 898774572 946364512 389542921 802509682 424114437 639740837 519323165 648282393 974514539 993087380 822274482 964844588 560092750 766157470 455759523 586578356 66224481 699425869 471974925 919723727 86617736 494360706 801184044 962528612 832693523 996614193 650088286 937067668 959452393 978035265 606122018 913959174 707614719 891283746 588777019 963441682 806373705 972357160 218464081 311836113 288536307 681380321 145002137 766063875 927544355 938648152 335989927 566731490 481151735 744004191 267246593 888300655 70496124 980230250 720354057 821197099 298271234 568834837 26449276 870062455 17625946 639551201 616520014 877275125 587102994 923093491 42224749 66027968 911497598 991759048 839370960 908292478 202584430 965697898 83787834 847010303 627649891 757494679 234397968 263916986 573911444 851766029 652289282 884175225 884261970 997762303 209265468 644615030 773099949 971928957 329739438 808474355 723601252 976300576 322223214 954355223 969206492 997737975 747874992 901294542 859039826 974253671 553264899 806183136 763642325 885606409 952711416 975817902 465245033 906367279 423545783 507802682 558019181 755149564 219737428 838956199 749899735 846070218 355180736 456056176 673447898 700007345 417821233 522657970 659273844 773600954 993128901 994984984 69749852 359135099 194110707 306240362 776635159 979679728 846673891 887817825 271844359 994357537 722070232 894970030 46081861 588424507 807865143 953835383 328818222 789922597 413944484 983306418 670947131 733474437 824556961 990973973 791098181 972923318 213584489 596903922 156964215 418515121 587457731 722779551 956953630 998065944 264013425 981465341 159232463 322103524 904587394 947353362 520692409 668057887 794574251 864205720 478745061 489616771 1747919 21781043 261190663 478933242 475323178 713887035 357546007 431540884 461161337 870502170 536416613 857393716 456888169 710885041 737235321 768226071 13473134 355207974 56472455 886582417 769079900 971416524 916482065 935700213 959913516 981307391 763852985 956968623 309063837 897089770 171358919 497061415 859302131 936614031 125706885 479253358 484717653 488163017 428623122 927312359 208242418 836907014 283411746 736376196 868232267 960190784 982694019 993311812 423158699 903842829 899891195 978870784 82193497 325789436 736006254 787779741 165389483 731531260 962022358 990803769 258495834 487837358 612300574 740155126 932461222 961104576 301363251 812692731 173554881 198407033 647278688 809132825 438131551 923267738 933053134 963911793 277079540 576844694 14469033 550695724 403955676 850442614 593015475 700735031 705897628 929599774 172267082 600890430 277618695 417054824 246034271 731245362 958168759 963208342 278544273 973620961 215145693 347953460 914014296 946793576 955494419 970154576 46851806 492160411 786885146 856828550 134304217 766951421 452048726 789880442 703788078 763661412 24526702 428233562 148633001 194097525 447917319 947415906 60275251 727667873 733586937 830076033 160350425 841706532 776104590 794546334 327609646 907523536 326610076 370866732 452317376 536299223 62551359 587745504 689703445 783028662 254676412 409193737 875599592 897508348 837783071 914364475 847957522 983031908 992300468 993339371 769815163 807426284 683974079 705173758 557092781 639681963 601865759 795084650 870300138 932825594 218616735 876853425 202950062 613307598 566705699 734434811 394390125 980280597 613363566 922323429 727958535 754019942 741593982 747172902 246934294 344427526 661763267 810595643 114333771 700988312 571124030 948272948 410138319 970666462 630754551 876722508 310593178 885961763 190580298 283775915 792574544 819486910 567717910 925675369 308050005 974568642 834058923 905947962 10214308 851252925 309952349 318932625 941996784 954936569 335723669 574327391 938698316 953691987 683490844 954832528 307139662 433940507 292362804 708216642 23212400 260241620 766492095 896500394 198647966 923852806 974066847 985890260 40832954 886401534 478614959 791468631 453266285 765077947 901564623 934620083 278667023 992324713 643498850 868477084 731882129 917750772 531995659 532962091 464078243 981053756 189210082 579747375 917654524 950578353 818373059 953562260 51376446 166749723 241661944 693240398 623761276 978334375 955022739 957771533 686602827 773844265 543346138 954983759 659394072 925504073 505388051 727627740 435890786 680180769 11213753 137413630 729042968 817582605 964333547 968145909 121740051 499577159 388939625 959594294 450076357 651750035 75511427 246065098 400282185 837876520 359756466 926949896 987981368 990872911 406879036 619571071 459549013 640113169 175996809 822036636 918138715 988190071 95049257 262932356 537085500 600600793 118111978 564106293 479376943 507984159 249907482 951577289 835212680 860889398 950200302 973854341 926854049 953568870 836012805 982454130 955054907 973360935 72339553 175279708 854455591 941613164 7586168 660034514 551364789 908954902 150631029 280229974 866215446 881011730 918609649 922581892 459186384 850224033 268495028 763548657 777972342 931931612 30684735 792387109 569053842 781958516 462216436 724199390 211151039 501240777 697776240 753017216 10646127 27118867 804410732 823801188 396652257 572314399 146203079 690725133 616207012 995788795 920387094 960082609 378807272 611734688 187320719 192265101 39064684 560583843 944973288 985176372 398816525 832680065 379532913 718557749 8775762 757029180 947998789 948840625 635422567 798321808 516656347 951444359 544568586 562805224 709147554 964661773 66441806 916812245 196001129 335019677 449352349 734193502 887778624 909409156 218886689 358817243 382490557 722133901 49667495 932116494 248993739 571304135 727568395 968029810 794213864 954620271 340464973 939418256 789388912 830295915 16448943 618010990 953386531 960161980 683771933 976788868 801411339 832892899 851980029 996148674 449737708 750996804 218099477 872055885 192968577 920843097 746474631 856106119 413411754 981672684 114246516 287432110 951198007 980266903 338785910 926328333 563395132 606518191 390413570 946707966 707219605 829087346 137983566 672629681 646460671 982146376 195974318 742379342 725591134 904388454 774764329 819649140 602357725 747869176 449455956 978978598 238229392 841030127 713995993 950634322 54578731 446898400 254962123 607694384 337588560 965251004 887288055 937600352 901575199 948673855 808941410 985815728 387404309 521454868 840176745 907952538 59670488 353330841 721744926 952829230 562953685 674168538 742080715 765780521 530359275 852722876 824015570 877859187 517715333 744634621 777625607 795728010 794119229 847888895 584155365 839598116 883246685 949408285 781368909 922104203 486746029 591771432 192050819 223315839 465648902 919573710 411134301 832209659 221112468 640713072 295022793 423925893 705081935 994292066 46523726 347887475 819541072 828322937 892964254 976741817 681467340 916812264 841095976 975258250 424273764 830052927 717340084 924116397 112734916 357901243 774895104 838691051 15141444 379192614 184957497 422359836 863071803 935641328 934054274 967754907 797816868 881988937 732038723 958220958 142653588 350560953 657100602 782644474 583585751 935872648 930326902 932717017 317214968 660374831 432948922 620475260 328571471 981799236 231882913 906444115 393603249 634713329 118971165 916776735 287188734 929966685 323431572 688425866 150259328 392287355 819253020 819828012 524414504 853181000 710783250 793523379 99494434 218957695 45335792 848751255 504895817 807379958 905084753 923416351 410192249 802906177 671542066 973811736 595263638 909060119 943878565 990468764 466162516 958016217 525380605 638040892 610066641 875764805 82517185 964203131 455876079 992094423 412058253 663484010 575816052 994611692 732363924 857657048 716679769 905320565 720713468 890195082 517611190 767635740 586204759 933416187 937836400 952599103 370851899 808304736 342715165 751501481 24327719 976825967 158697934 980855372 121701870 413135730 536791861 922376707 215281305 825015273 667652979 671928492 675707559 751466967 708785511 948957688 741241004 979073395 884406524 993279340 84777551 223585576 840388408 892211656 367078007 508429828 59545954 727932812 444937067 640435992 410402006 778372493 414938239 981976666 292359297 453311518 522770856 946617760 964662245 971716466 69022963 329161777 103825169 384494164 156874769 429888726 366407107 541379675 606852337 696641354 338310651 853833778 129432663 595848852 110676454 738784096 301087250 921216496 52496826 438155319 814010639 816263095 717975790 907635020 731985467 987215818 898923670 903432972 667437590 971200793 862084852 971469574 441456743 668999311 628137849 931329149 561680300 946727910 860685317 992105381 988652310 988997857 367158949 925890572 319250340 466862252 696243441 817890654 785061334 957456653 472139417 689856695 295704534 888025951 640811380 862951632 312350952 340129767 548208331 693338773 835168555 851589532 616490652 808535208 321460928 389300928 683827260 695639872 774694976 975434785 46729351 717524572 876321107 890122144 204737525 948771541 658235929 807111209 132074829 686530770 463934564 595953846 970354709 988046929 30973590 416736128 94829435 617708897 877783436 940362819 113585943 513106667 736538164 786024555 112168402 819608237 956796074 982871986 823639667 846352975 459735810 642567699 488974792 931947963 347475648 517967715 952534309 979882158 465264236 606697502 709852629 716554711 573501165 589593816 748524851 888763615 771729764 836139147 31976593 967294141 127041156 978363304 869619620 987117883 875062996 951058327 824125114 926028447 938189945 951671945 17453763 759467885 224245138 744431333 865306515 905821078 686799009 936363066 453324130 938671283 446589309 637468571 595051484 832473334 700790983 806005522 314530625 944830123 300883180 781180829 211889335 440865013 88886501 102564139 267467155 374581167 454015977 783118894 850539274 899923479 843109565 882880090 408337487 635836147 981882407 990349818 309345230 702642448 452854999 974841510 852101906 861295810 475445011 800269907 458960766 778626964 221689770 823977390 90723652 215367745 900019554 963000321 973933950 994719576 331363891 767966493 972870415 985899000 542424086 860173918 24951177 661204597 274656484 717315986 843655223 869328216 497487651 696376332 694281599 941941140 365359713 690388973 877771259 883470935 19779121 291524888 285023152 947669293 228712917 641152588 887352896 927690637 467334006 673845756 388118807 496452917 99434279 516022899 105732932 188366158 195668656 462424223 4258279 446183143 349194373 886119571 395645422 769087638 980438985 983339693 922270059 959509846 764485603 927976039 239351874 328200508 804093228 958588707 452505264 493231810 74024535 885298706 30721126 828316885 697866287 873151377 281454541 489454517 928649411 953251643 808083803 856466670 927444348 965290031 353387261 402504835 69095814 352159343 960154856 994921288 735936030 860018074 164258614 991543871 506267298 587501201 610606310 900553253 158598324 503795841 349598203 810821260 644060897 777055584 695820825 769377921 855323553 972237592 634128221 803375367 979043907 995562706 37848957 123123040 965629366 975192627 354354463 945752539 661288813 762540966 679168631 844880632 358478992 922784948 693756810 695140802 887466932 914434901 875363048 985875334 235735513 420611544 51575878 158302685 156278519 280093372 337557888 441615507 530016282 755268193 65334091 995599133 222117023 557436859 280329826 798697651 773666949 992328845 357487538 738896946 980524474 981563220 638052767 861708722 444532752 640964883 829383872 881942754 588388679 960259059 372449340 549265394 312470667 736227118 703351886 760989661 767014537 941264911 286902080 918078829 195650607 708801024 226477526 345645113 800865065 820430035 525711123 880596952 286447313 995576909 267727266 342311987 537077654 566636210 375361744 691192901 557757031 744520235 730522346 912128623 757507182 814939576 330271472 931299724 775662086 789333218 692106211 723625780 565206772 864415401 109564031 980190188 462172089 480279233 986248361 997967207 658815119 877458813 945495658 976590064 825448586 998309834 581420665 985070694 291069984 837571467 482462928 668427425 400904982 730233752 881302660 913172327 49022679 152646492 575983308 798476321 180860187 399997726 40001277 737828329 637870414 824626162 933556986 989605653 849796081 953905313 955124670 975352221 853786351 915723022 824127324 937606553 140086972 656516515 1868732 49268305 253978774 749952262 863209666 911984417 791908145 966409664 103133897 489828096 598697956 979601760 158210904 552338339 736730701 924827756 849177298 989942473 285365457 918965403 982334034 991208253 55767471 100610485 921485898 934238109 389579950 419614456 326867220 814742234 184022377 863865695 871578292 895842051 897588446 941398634 986237228 998788181 722422976 937830367 559314610 770231541 562389060 858982736 188729196 938103591 133697561 333438596 51973633 991082694 265806382 613302060 780594001 954915800 406747749 948643608 161346615 364349073 200694157 709458651 597691097 872246913 856645077 940560848 837212024 938229062 187547214 730072555 868505531 986934115 559657674 605441767 752422270 772164579 629214852 919200937 906148703 952267642 476636228 735263369 319068150 954686278 339119882 660021796 649836477 986268917 325661116 855104901 1010712 544992249 829388775 971899002 731682492 821257665 205258352 958709854 728025588 810848608 59586625 396670236 523990973 800630478 324324594 829042629 158499357 520758208 337853414 626167994 51962012 768468740 180317666 947684174 426712431 921804579 35533333 55294141 2861092 290785426 57092559 621815689 675026371 764481925 538106236 701563939 227747884 859348613 340580253 514765489 592995887 847360903 553118092 697404797 3529448 752152511 347103351 690176071 918041163 986502665 527534306 823646534 742627902 743919664 744346277 768301228 388898916 681531634 977212038 993420114 1059753 685291791 626842601 684592473 173215971 691711985 738508896 875271586 849187173 975277456 998780260 999240167 269374529 890861796 646776320 841031769 372080884 567358900 505390702 628040989 222493524 814721598 352960917 703554617 297696177 948325879 137300868 700008617 982829485 993743027 28656185 469502022 191068784 961435698 803315765 836764036 924170853 948415877 483939352 801162244 772995322 922203519 480834571 741831719 320823229 320865441 992091150 993183217 269341937 269741112 393430556 549112725 219223022 487268396 131851921 973149945 516294578 702888701 71669783 683913385 10358253 482602945 700126325 787453607 335290766 782527818 812747828 953933020 734285361 790166718 765831299 840936290 25659413 397928348 460573797 471114814 13866967 269457815 3003835 729135227 785305052 981866223 507384571 669327238 904268702 960933313 262595518 943581947 553665371 995371000 25528519 247068597 153212422 444053634 615899362 745143794 524075695 938490958 611429163 780831813 660234525 753373082 530835707 595011742 197656584 418478956 947532192 951517281 865333845 884557377 637976460 641780987 371964109 895165095 232644399 379604815 691558361 724464696 955539379 959614285 682181711 729802525 803547009 836275596 267126142 566861048 484417143 865641060 306916130 313689364 559750579 561468992 525697361 785077491 59973219 565767734 410662565 777460023 610325213 909061753 617600238 971178417 498368644 554691448 108558146 627316037 326309074 377637438 220373791 329900999 235684374 790010370 407052462 831300805 866271317 982330782 381060354 726792998 561227420 820025375 189702399 861901333 777670851 974118719 589043600 937740865 826012477 855670029 262335087 572038071 474107010 667889073 954674417 960583967 645628443 790855430 183012425 802578650 312095460 572134616 466425695 817188616 474553533 954817646 499101178 615146558 297357679 401123807 502885209 860643466 186866716 243038900 927583315 953166422 811912686 905019426 319737345 454625016 678446251 959659922 994590084 998681088 544835399 903896553 440844489 979179194 425670765 769637699 466720808 865682312 662439727 748133363 673848333 723207904 872840736 945505176 858429405 864028432 142643979 487286082 58159417 121472071 916462 504290004 587091515 764565385 767648892 807220405 48852435 574708446 215705864 420199463 300901770 798182667 429474416 922983980 639485631 911805365 164455457 402235224 978025671 980257574 379497129 837024916 387999568 557399218 179025325 277275077 157298716 955005228 632497981 753101542 812987310 882912565 744649887 971624266 152759120 647881761 881599038 920691526 113067006 615405502 427149021 656693461 668131574 695832831 314642925 984154840 193805554 556276762 795804738 844467980 967694161 988742872 871326116 960402256 629345869 662113761 844421319 894151706 980992573 983454016 662705721 938377346 930540654 940215694 91378866 844011610 73953780 369944952 709266140 968767746 884685946 983196661 866890168 952219797 989597764 990962859 348590173 878483743 629167448 728821837 844657465 894968502 549508663 631436820 259107264 852118913 280555171 961335155 763783414 796537507 359714724 829157478 503682412 783515537 94686524 96359911 361901851 523713900 104008161 996778005 301717418 820063816 140187005 420305686 407603227 993024510 925076179 958383044 707410319 715710141 640362826 933431789 621497701 871034975 292266888 386736555 730207593 864652652 259856173 909905839 160292121 270382946 387429226 744719154 580962933 990274709 831273354 985823232 577015737 578290069 606760778 747083099 730622816 861622096 275953231 577511915 668740149 948082215 791960205 896876509 519850059 693366858 485894638 969570840 129623548 789856611 900533175 912844029 822384823 961735863 615234159 962869561 96894587 210740336 656869352 718103563 469297150 824560782 820303918 923785779 585469529 735769003 28695105 918307207 707162082 882741375 129208891 873288705 366738526 777790653 685216934 696680627 333145837 673473921 605289043 964630549 583737959 993431409 83177260 937318871 468162108 906132060 467262298 899590328 725599536 741740546 378102806 457062422 649875701 796277951 984875153 995104409 662503660 997536003 242529331 771625967 291662450 658418419 793278258 913746781 853379840 937079567 290005786 970464934 40077100 393334694 965375476 971835222 911011904 913290494 767082993 767429082 268297554 850867923 973389840 980460222 465266186 972840234 307046811 786964271 334018259 587760559 188683510 240958924 320950227 821288368 588245185 623657347 499754422 996526550 875640143 895427304 170410725 807984014 185046868 973504854 522664751 815155534 560137665 671725628 415621227 902390353 760235240 826076238 250111109 606104981 90072803 582459274 491364125 729479058 858858097 952986225 159414087 240174263 33151428 633953256 872441285 950961302 242054888 512752149 291036472 969468054 154542251 434443886 752264687 892852456 433812362 595881477 5327730 311295593 341812674 446674903 373860592 920731375 687367138 804872855 733333572 810827423 892756546 972049389 206287957 704766874 267185623 828856185 981923200 994396927 689275289 721589586 326552004 607497586 666270678 698889532 833672066 918183526 592311991 980914774 845828424 846622311 740413447 791848450 831983386 931139562 128687585 864259592 447092191 909266138 699856101 784110772 193976842 518032194 643352146 806041573 224338755 466136773 64809508 550102810 360937257 364110030 406582770 918254784 267271634 507394048 911545477 919485128 596743389 688872773 616318567 703161749 702527963 744630250 445218159 782757781 815060892 856426369 62258422 871291796 907437786 986537112 340125704 828682441 551567544 855059287 483123 792750373 760365387 828872624 553493802 896591795 215223582 251926551 291079958 816979618 404755013 766412733 391302986 831935133 271526701 822920939 628003404 868525766 579174688 648345684 782448217 845388785 278671138 529891400 374894514 579928499 475506861 498688414 649233303 727777932 851843166 991813692 109136967 550801471 689434098 692629320 909659052 999296313 378331035 562437069 312704499 633432443 14245575 195373001 853420737 855183839 201887021 206462130 489367363 715733247 293093354 576210415 71642777 652079087 641309408 699293969 370986801 873244471 597197442 910000800 640039514 658172134 942892152 995031011 707437206 731904920 381288080 738537608 775884293 980008896 777256482 962869670 558295559 906006503 429472169 785361704 25258607 180188855 495461052 765318809 257407845 384482818 32409587 358042361 166269399 927938982 185262168 763320803 506729319 532369257 612674519 751262193 871142183 967828942 118152328 816595915 764752562 801156338 394649469 410849273 426277149 627737437 669312711 812157818 749046009 973396643 225479300 954197484 423089905 993341825 767640646 858268009 401317658 496328233 382641166 953964331 280192393 778375035 484521982 802819879 814670914 864212724 76680369 548030915 61470559 714430436 50212096 462448775 633786467 657208175 237189953 468305004 425442478 823159884 122409131 893891353 857335914 958287999 225075510 268348477 948818355 978068727 998602321 998613745 68630927 636165456 580146311 646319746 634092827 977468087 904752847 905720179 496715334 742797086 918798446 967239581 637132452 639342197 403166095 586091598 875763927 988032654 199311582 386094176 269910623 336810478 961820561 963142214 900164722 912633396 902005865 917980813 153628906 697903794 224002468 504611325 794248472 852692900 772277617 870854911 605372716 939457183 30133476 165665162 143306429 735105265 581983517 873074209 419843970 592636161 280142658 670112704 361630564 780204660 982214687 998669450 167247873 782198924 756025222 804326084 198529047 545750788 452093194 584795809 880995300 882551933 806165144 947319189 184174018 952399383 575186235 597671047 181783106 927963059 7930940 263446477 634924846 637595499 736717299 878681744 312395893 537936301 519001381 842573977 231786569 578774071 44913405 244207027 22650653 106680203 136176230 894955137 579154370 750095508 849945465 973405092 736897893 977990963 245328661 249345757 893495065 992070485 532599039 773055605 928112723 962269693 225441290 956840915 672303773 972014744 850836498 960535267 456246552 636427026 936717922 942955833 255786715 846567376 108826216 650010910 936612262 977467632 979702805 994906290 510732050 896026380 303205037 768540051 194868997 654325117 453788788 883420121 617464699 884896145 723213435 847892569 972305066 978614365 360156067 458706765 714057429 785138101 423049798 661508749 746605883 978672272 381533306 529670201 162017043 674025424 677137380 892260179 286002981 715823673 672242540 916486518 374344123 982771542 817729891 930425575 525649040 973896356 877559558 989160347 820900074 846596117 583150591 844808073 681506045 905589196 114978463 956121969 899590658 921405737 207168734 975092979 469820459 887356648 925346419 940918825 916807122 927647072 14342273 230252664 696623528 902115801 460701061 773449470 18019484 367284710 729987694 922265991 54169635 291199194 567582120 647552563 852230402 990915494 57345297 328645354 280007363 935189550 909536002 982741960 499310746 512769270 470889692 492908480 196441158 925849626 505530720 904623503 509555066 912868216 160634 56504200 517637653 832543740 735735741 968038852 692075390 746375047 580662601 792165720 183119712 254502770 886281375 979041081 421711260 568960796 568275871 993112601 620090752 813651997 785322281 897772811 914082289 983005066 662241174 825066637 466104359 901841656 353524422 525642508 305205400 638732758 519154355 931903243 584940268 708191523 182426475 932836189 198287872 453441084 848110371 883216635 87827865 600781423 452266093 880714241 250147281 591399854 39765559 791726575 21428129 740020882 914518151 969747576 242394272 754513112 700450837 827945515 504012748 821554326 609279938 953784367 51947235 406119193 912277196 946991315 397742530 963716137 629043377 958624959 818245218 834247701 800359296 877809921 967700214 984240426 141871304 185580931 247266348 722640864 285898101 691607440 189463543 537099436 875573880 908077851 640475964 741314219 300150965 536355928 27229837 900392605 703872010 841347133 789969376 827398694 380734746 904135123 291391554 795100693 888180842 949100565 594729974 628632089 311342212 572876165 60659414 711036285 778044244 932164659 918175485 927519897 707936501 914169037 713028870 805441225 68712985 470768691 65388091 339494681 152952010 615605861 958141070 989001729 378594461 902075586 461584661 800057525 425324551 703037085 80563654 107796587 485722153 729799143 405808807 928297279 218509788 932376577 130200677 833935785 905370033 938224570 436874059 789493885 8099071 33032029 713712756 860230097 589003087 797869997 984077221 990797692 872762448 930647363 70101147 218281426 20137389 877634463 467161075 783805887 93838579 919944549 428577494 466497589 893409433 962869607 568270647 618001624 975834582 985604168 868290917 996009826 103321153 468066511 751849110 770419664 299754726 836432192 872766415 889105259 209899241 451946552 912661138 934767608 528096034 782682951 412326672 710858682 91364262 376765021 403252523 728433469 423842921 818655145 949254681 957673112 580343318 763429330 727669969 913808314 733487573 798771190 402236240 986079338 988318158 996872205 897988821 913658502 76032074 486938298 775246675 786853739 834992876 992587413 951401897 957872707 128683294 325747691 543296569 677471879 906185694 974009887 967271054 989980463 4344649 919706044 717669688 774543673 34801465 996663215 812872140 953372710 733244359 771595740 687880876 975312889 364592242 862847879 792788538 905667573 86983072 987855079 9168919 108031868 112936731 276009121 590612222 784379471 636461708 893009021 594775780 709766171 590702357 622120308 218664097 344663795 303306886 593949322 900810414 909292917 385454926 862372669 406796852 559906773 195071512 275843120 586724843 651632068 601837916 736572040 27049344 337187650 186705728 708376597 263614942 953376276 629875452 917287580 134047201 296339736 237911241 299082472 698070632 858174922 311118277 973333627 448917664 893271432 337060346 988964181 243574410 249582374 692046706 890434889 552696572 983604357 588241742 639795152 365912176 683679648 996819465 997775536 788056794 832970204 716233229 980047146 761043397 802379282 906422346 959229405 26799475 782538139 550380639 838828253 456387147 780734555 792219584 862139541 435632035 968449209 263006594 720291456 939983859 984858417 885554055 918064803 716428080 898036667 851814182 929853466 285537994 523867665 214276018 396604337 973047138 975228432 356748341 650425140 108947538 275476112 324358601 948388636 319635412 348671993 50190961 478858260 560688342 711709858 385495528 942912364 501730707 610659875 204440266 823878218 502532526 940863295 70571160 407527681 886485211 955131474 259690269 328815274 871012616 973779282 767675534 802894194 487325965 625440645 700881393 724206271 232572043 547441736 464354193 628109471 396798920 565828619 629908041 675937000 418063973 577000041 470096563 529400099 135158001 617735739 447488517 606965522 461087004 818775932 328736931 856836469 349460123 962185610 154619447 346558504 285430972 915391605 525559935 871098413 611102728 805974724 945897213 961512246 493926925 541990570 182479621 446115425 583769526 886013300 316362423 316860764 785143838 866276144 912579818 946435803 136036598 249579629 453044786 554186284 862975183 913437982 252155728 339846288 420411882 672210424 402011237 745743834 563814617 952761955 678764121 929994007 96405041 695470788 885902403 913833156 73034409 622030004 212226743 709477335 648348429 762058255 166411125 299157376 237359948 330105978 564814256 902723671 324299689 461421443 693992184 823058318 154542143 895116655 539135076 841083736 707053717 942980071 533920612 567057438 752493682 805556050 271998514 765280963 255573099 596407311 787469287 812283041 40276772 119822808 930298938 948548704 154706058 805416340 96463112 957509931 105557101 396076185 6855172 7216611 845018973 968450959 227501747 473930391 838803927 899614702 536069991 689267129 474479810 483415459 870810229 875834728 880030415 927849585 95590260 590575386 27467670 320608178 818828816 986469543 512406776 822261106 702847551 956501603 933318759 941001121 364856048 820029431 859446673 918661397 657831708 937035711 549996529 644573848 395787475 517622145 530539785 608276219 254566594 376446225 171199562 904478317 364182065 836977752 605992373 855354643 594583404 916947921 376746985 917482117 381029341 702545292 102215265 175762406 446808214 671253615 660942653 894576229 669674308 741651621 29189350 724463955 389306571 792157735 79380213 772414814 557852862 900671203 845910100 867583086 273876098 576526421 423017288 614748802 172422287 842065042 309669770 657111598 716594164 959081617 133753651 740736727 510886428 667148817 655777403 669044639 95230766 628143015 528683381 761941497 46392306 847041632 772043408 816959773 341741392 818397206 169480894 541710292 612131897 910028039 696051751 854191979 459000862 593461852 289544100 380225730 749161935 879016125 575066389 843163562 789186203 838463806 124800153 286475785 536163698 573459351 665500839 687179613 522790840 808927241 599311753 965346595 304352210 760943277 452035041 854113094 625395039 810773134 461386730 570725543 163301687 463382235 490512374 610901513 14000484 464373474 121566361 929573423 526521176 942442144 276261736 307487997 253788628 638200316 568627248 860891128 888156051 911459873 198641718 387728060 141551369 301272618 960331937 986542486 197692526 931070578 726085604 999106183 756844285 918906807 976235078 987292939 211785725 274755518 583812086 623247939 563251277 940269097 200651237 243381542 289368447 301409765 265560184 508854886 640803982 850794165 555642234 782708305 276013481 712865853 121774087 410478046 733545094 751224180 995004208 996402909 799914823 979339695 464462624 834215676 386866113 820460493 427799571 529496728 183460837 574779735 754033034 974993461 711525495 840477119 683328911 885969293 159160267 655666961 90374417 813719302 596349818 862591151 570894343 649100041 327883582 795472192 417768499 488850852 84882743 531176921 382049347 813645864 733733586 899009207 991736396 997990799 750531289 839243190 120826841 378077333 38665153 499180330 853016318 905072108 308555780 512211490 81211051 682819408 336697409 885389065 278684285 647318056 371937789 379001300 448746419 961029932 379509838 828706661 294436595 743046465 408771931 926127947 501160867 767015218 784590375 801966785 897453995 906910762 167746015 313445322 631923371 857688592 396264952 801377709 402923890 464791134 680624945 822492145 628687157 713636255 316352582 335282829 176516292 232719328 749394273 835086167 368314801 924151634 304954931 697252660 690229053 751270510 666681508 952187021 195204280 661591511 669263960 728805497 254143908 647645294 177925395 412039643 880701530 911997645 335279856 737027839 695718163 800444630 329285088 902948324 401572870 478801135 582174206 783735402 256462007 685952472 599870084 781629138 686785957 729055760 251381702 943468882 146925357 483690948 984761750 997280316 781645303 845869035 212739926 579011701 757336736 761383251 813033152 973570050 193642139 969966184 820485496 861700676 869088337 873963073 291260375 777217847 861866818 905439082 564126536 968381750 501608201 560228091 231660477 576817176 53543132 876796184 818295753 895524517 734839331 988960048 421923703 785548564 567278134 980268869 797864307 861527504 893075855 928606800 532929437 603702219 647636276 814554942 471667791 935980379 641800404 921259735 960862218 987295058 776915787 927312871 986008801 993557716 960650296 993228491 503920704 861715199 532986585 539275843 582615359 682381076 608439205 871121493 185778195 891065118 946608811 995984001 616662554 974298300 369545923 535464629 110312426 340013551 490060969 810437882 575025277 734278408 811621880 853447179 650034101 789435975 404168745 635107492 620084292 637626790 631380245 961863306 365271253 608930453 334269842 825410513 328311716 814005932 256767240 675814008 941898469 960740512 413004406 749302065 603647973 752054408 849196674 858261244 792191618 960432219 147256462 345035031 649805634 669986459 700683826 722434337 103198512 929256160 537768582 580683981 198250773 254183081 203146270 337737578 30780390 967126728 381529302 835180496 212370976 864622773 215427387 563868697 530040074 576485603 314551264 674177212 214578487 432694391 866334755 893839095 48585505 508903287 519601404 786331465 508574433 755200818 822067173 959112388 332978073 564484132 10979666 990078389 153190580 942967204 421324938 794575036 135268136 276013177 867902900 948212509 433297697 617305970 373948720 828487412 602533985 842015658 840226353 937933943 652205791 917758483 922393419 947392855 306084289 608057988 162132404 314933415 584075217 857465455 261870679 589378417 922906038 989629608 319518246 469439399 776959658 865132063 375980311 847487136 152798635 183554377 220310684 893379897 720275369 731652581 704671852 735791317 784012801 939641714 964713028 993194123 252046883 331000236 175409974 676497325 317190002 514025736 911423939 976832571 921573169 995925596 986038727 996738673 781737793 969923304 810036231 867404191 979805339 991300139 784647798 984037298 89275744 437524800 181811494 700528131 844545395 912464334 700074972 778956713 805091118 866005458 838323520 997481999 488562519 956414176 319552386 729638091 826456404 868155432 714977097 972885906 844367240 994901892 8466405 672691880 827566051 893865959 863072467 984019675 181133402 239832183 32150885 205384690 188608971 863590339 991790900 996167717 675861269 854298030 14198622 615250818 488643224 945482401 559342840 582802920 835769289 962282604 409661845 644998443 182915666 475958928 723784456 964962895 82080529 563848585 236561277 947424757 567940157 951566629 658918734 841563834 479095654 496199131 487268037 834554264 589468595 921614275 816263159 962652028 913340962 954619762 771233701 833423985 278926884 813449107 775039720 997255110 944090905 973945198 721615303 946636453 941666732 988828221 606618714 683426276 911168816 987122705 706975920 976225493 95187293 976046724 996490575 998302627 296701461 718852982 774565933 868301896 588886034 844650978 669880907 725469280 53708434 967720150 194364471 484328152 183160544 890723087 878079752 998676322 601493477 617045116 136396801 985195489 111576033 967864879 683851383 837779850 273721708 524351688 171129604 296159943 937968349 980358490 399707611 745988244 442389411 588317732 147771931 930300825 98878965 477949742 363067634 794485353 990790655 994720673 594277514 606460694 722015258 795807562 851641628 875759355 178600503 767689421 266561760 308940887 422262482 654132880 32977941 412253444 944307465 957628583 994216236 994416366 931456210 997695272 826408586 878985227 509647070 559163310 901407464 939222895 724481735 858038855 478704288 576075606 132111002 769005290 759193155 904423052 71299263 499236544 234699105 345970827 240918095 661299316 273607648 630475181 92018729 281406354 693320032 917758373 341326343 969780544 983477733 992961109 431998562 916799832 99528615 780777592 532472912 588504095 559897351 832958885 874966515 964620882 918838623 925104337 547669282 998262325 979839397 994243101 211562048 990469372 595483273 805142640 647501896 689032564 659186547 803497395 367614664 490462204 105976794 695262933 636529035 954483851 153500153 278331908 303148037 984268203 381462774 736240820 981070505 985764912 926876203 943585073 494074176 883529334 341779331 342974666 485561826 979907540 517379070 887549601 161950393 395672542 204464886 440351702 743357794 931070408 525829741 615968174 63604430 989433616 795424559 827298631 575665995 757142291 504855044 978451665 804996019 937256958 409903157 543691257 662788473 886248414 549691477 586989508 465610830 732260271 442140603 462475461 65158191 82930695 802603901 885470398 1911298 345538038 719635221 743840241 921363433 967955510 681062409 871497918 547315584 840839005 563549110 861328497 716561225 959048276 735251264 937136286 570273623 592890898 897477414 941512747 321104065 608552349 246070160 258378092 691228099 884796714 815982486 964810568 522394800 863724031 368774772 412725386 153823864 457940432 408321038 478618790 698061202 932608728 799714514 928809441 41162865 280809376 325936548 871877077 142725713 143054062 90914852 257826086 324371157 479174556 139174304 253895737 176563312 967904695 423161055 807701392 73571393 751079848 971079654 975901228 900569360 959346573 503990053 583132245 574125851 893439140 400112019 562747690 424539132 564834009 366102982 825454187 628918732 840776470 85114895 899470249 444979680 789380838 864610734 867713619 706460497 923926833 654375815 783028633 500177947 912268942 900184755 978486385 32453613 107279202 2348932 542662719 653687694 672464886 569202590 938652858 915464641 957251968 342351890 998960303 515156829 691089674 739848257 904898320 786569110 846539539 384064989 979225349 201456266 421623094 453600306 757979565 289720478 765294734 894328195 930334454 555680847 672860859 858459775 943400926 225762575 652368296 468259828 931573423 81035726 593554916 187474091 754174276 208247030 653597255 549831466 888379586 259391746 821357880 301531277 373488152 532163697 982859837 219130407 516637583 951789469 995893001 179009290 290058683 248064904 969111387 578443556 795750601 773242031 961846987 396710919 805007064 50494082 822916698 829306159 959933733 333985547 718472864 569452544 996313764 590130366 812824774 616426344 887510646 847749383 929721945 450108315 630155493 590188923 741475310 235137854 428159412 664548906 960652553 660434712 745601498 105617581 687353126 884966052 903066697 150067490 284063653 737466190 953224338 425746994 518335495 935428010 949209505 879384866 989473048 736062684 744382449 454074394 672318700 929232350 943604514 46523145 754277508 7573201 483642313 92366384 243871099 867303781 876565991 435120192 860833922 728241612 973028413 758046179 918682380 928464682 930195637 110969974 295239013 857520294 894398355 979751928 990510952 990332932 995643249 68387598 399292279 622754373 798615809 372901811 483955080 902842079 941105198 862208245 895798198 51464513 898939269 733434898 871272213 360739667 788160933 72743763 996979761 93878638 152197135 229603083 956554818 39641558 141455160 335890455 773854237 468359876 583428969 780602039 887840533 184192803 193538683 892574731 895378099 628765929 860228478 694638578 921075175 918396154 919088671 898325691 970942038 187834418 486933674 359826731 913330399 507311417 527740938 328391768 909367184 697492523 915105242 613034185 790314303 512772512 660210281 421165368 879267131 919344786 958165606 386427162 492127694 980692233 981937387 229321445 453543488 641298419 875204209 828696744 997731912 328795702 439478889 968166209 977155847 791602860 996694511 870674509 884217374 477164272 627177494 618099358 645413998 759787285 932883834 969512879 997350119 961714753 967828043 477144708 574505764 16052371 170686778 680423180 907449318 965160230 983643554 859415458 961135019 73892597 880432103 642024181 756146840 316489485 869667687 236085024 796796845 8099258 522246127 838781496 871522502 921499315 925797921 468822593 976412191 523472638 748206995 340612096 447764009 75699901 807402047 640488510 950356525 265196912 391552561 904347112 920874017 139416767 829772460 617461889 996498462 920582573 956581910 70096707 719472514 389528409 916575963 873379541 995141137 816326550 941166744 862298042 996085957 7166115 706624427 319868091 696166755 664818633 955279795 520117188 829958090 455724455 744780104 631762299 790800277 564061317 930244745 8913396 57085801 564262239 775659946 966314460 994012867 872237336 949819829 631101848 964504324 176358611 461512530 295209828 327892646 259239492 380073533 176449969 804078603 842406917 875659854 257207640 555910146 493908181 938694606 621514551 671307909 16451017 470746697 987741280 992055307 850849145 915526845 182610030 203946371 770180767 972684489 143711835 523650662 787889531 926710577 448871516 473702833 388984553 443502259 33323865 747510920 296950502 486887504 58797568 721941086 443774702 569831250 661474664 938533016 403264390 550799361 204059282 399963791 372953347 430397989 247974802 587724089 154887104 966928241 380180993 491181634 432101951 518076375 856907380 940728476 682768938 818859504 645485041 758396267 658013759 800478037 967265868 978533701 483156792 889706212 757411317 859492613 864572925 910330300 223399443 948441373 686478900 895206951 26466049 151731281 940586786 982960171 347531742 941909391 186922832 871732830 445750666 516152685 954659430 963758015 684344364 752438111 555991910 693853164 49920291 780638352 935960297 970091713 269402203 577235485 529771773 621557993 379182980 759360467 99671674 818165494 617611345 832511398 973688236 987218125 316709399 501496732 5455135 223631178 417582983 759727331 149146983 755417507 740495000 859454356 151734363 325789205 542775272 688209464 33647469 976037883 683817885 710762301 710762799 876641150 168934130 979059117 18061216 859305141 489169031 590458624 684967710 829959311 175763473 524669177 193227545 540208616 709331240 916022696 884399488 947529382 578951444 641183535 864558446 893968308 715056082 809035848 191191741 755017461 248233753 793727727 913003620 955339383 682382443 750009011 859388090 949068420 656716294 776403276 589400208 753938876 860230086 926028189 545709074 847473150 149404923 635018426 537000261 936147583 122890760 549886423 349297944 658371744 341928456 754240464 559500797 956250024 601310796 963205713 989087423 997695505 864550417 930675460 883827947 889270375 461070250 821098565 181037657 443125085 201303721 745727970 781106297 956839536 688448776 723279590 705817501 726191592 206247248 952578282 309343950 387473961 730547198 761862140 978397770 994309491 821446287 907774358 681831728 946573099 954249584 958415555 18550399 858840176 903302861 908352924 590504312 841099197 889482663 896911375 339427820 545905456 343256605 792342681 92760719 115540177 540114569 853555988 249279190 882347609 624523970 818410432 861285760 930993557 213104067 788605336 588599215 757259668 89284462 659213334 477983409 565091974 707453750 804581065 931162910 931926618 487725759 494755032 822444777 914227199 153006728 945102073 59039652 353701944 988444547 991657645 917348835 962536930 222334445 434597098 142532076 517327406 360778172 852589031 179752519 235386141 553622578 739939424 460419095 612953621 456142701 554377840 756377924 823831849 804064210 971329036 538316453 818382752 122870809 786366978 128956428 518066930 568104011 907160764 861527632 886290871 641381268 834480623 95674026 220975625 382098146 871022312 976717827 981435992 751297038 788184694 531796348 600384252 770370423 957402015 143513132 747927299 441021071 699485607 41400915 91729075 530097202 967682227 765645791 955859573 937179031 979152223 646178455 775779923 146240836 704961285 889323212 955542724 866840958 868973457 974595754 989744378 280192395 311525381 409763821 667507158 26102520 614322163 276410445 789079630 503664864 584463073 89229935 952282348 33252727 435401445 304442198 754361809 925723257 967552250 667246807 947386153 87180160 927928200 543435124 616241608 515144412 788055269 294290269 524974598 114552829 513154786 101605700 811794784 719678531 757995891 215542887 893304456 767699098 870156268 444532516 983997285 908685559 967524791 779930938 896016429 873664907 913151912 350690615 566878452 38351261 231864615 92458814 507774954 845185440 887052043 99816775 405934628 906415575 984433518 733339769 752701110 887804823 954326610 625013244 826429122 313939389 458772747 683096431 783987812 331327817 501624526 699181489 947759872 458116489 576240497 911799900 980936164 850690108 857024985 596193042 756673091 504746781 575271288 283244057 484954614 696727947 829646839 716837646 950021566 686141026 860446254 148230084 572174499 277190712 760533599 619830004 942315102 155552227 790459375 42597984 429000108 994434786 996906392 712544423 825812312 57686475 512905519 765013967 876505461 475605794 652617859 905079023 967657185 40217517 828117807 835251214 948809185 772391613 900908993 369037764 996583194 335210187 802507964 221357867 676187448 62741407 697823913 959914628 987036670 520697721 919830471 897929087 935513667 101946038 996617436 367454476 600345351 256013193 322462820 325641803 721525505 241422770 934271260 325643842 716302194 233273327 928212918 24320754 77058765 190026779 376849065 509171630 667446762 808795004 877061684 101073456 943580798 884345857 953637646 270697742 951099477 980022755 988586720 527045796 728660200 224974601 910879516 541328099 587615990 109087948 246588170 748197830 887107167 99223950 777339699 226741972 582695102 374687266 578183955 190442912 644460946 491449683 864499217 775582522 797687558 659761191 782112380 857186543 927471363 278412871 904195975 819302739 919145701 245619241 974854731 451140311 937714617 610982075 660514168 963371309 983903499 207582428 851291162 567973866 724320366 888029527 956525164 915028336 999382067 639935829 689085425 29466274 263584311 231349985 604550230 477547291 617266883 395466532 628365507 374107971 401675367 977419189 982097285 534466544 643750114 832714897 951361337 458766861 614109133 46489258 716788776 342491414 997275989 29610593 258283478 924516135 961717665 550900280 685000117 157136707 258672684 273643765 696228276 907843828 975281704 933961954 955943241 607633480 729764321 704772244 969179333 853153280 996658358 539858139 970522774 265759716 503942113 363802213 797114931 318360658 727145920 766907493 855481662 919047443 967121407 453011289 474495894 227808056 897135502 151129615 633446820 272147025 875656063 398561754 670004419 543528911 817337716 262340026 813716930 218265116 730057411 737842274 993094471 969677910 974473318 154719880 287005253 497447421 617471377 658684825 915087900 340133150 871202672 443564564 702227312 649062220 997828537 266794931 660529614 398015164 471995252 176783904 885475537 26597924 956829070 574272110 683522783 152787801 617784871 946749494 968671384 362424760 884547787 936728176 966349175 270971505 678698958 451807671 515693169 887713211 979554277 947455244 980964073 880790732 904822838 246469816 782056592 213565283 553054903 625486001 886769188 408353191 663624306 803395121 887638450 683252925 818135990 905283136 976650930 552113604 718141136 193186241 354995517 859327381 943007654 822455110 982331609 804404488 877716447 369409507 805886659 742062997 771911596 990319422 992873982 158311950 742037678 281795551 777172022 669023947 696207986 914512613 968629429 423430257 536247433 106819390 372044776 29081029 89238601 906191789 990765847 792054520 867940343 617894254 856820382 257272149 552353399 224282388 856058111 83263255 635594219 134641940 274131742 378988336 611865318 487235258 813608016 557578881 598712513 798893064 896628028 945651971 974193074 952361117 964695549 611840548 979342925 286698181 580808700 132954941 150112531 417452095 952271897 326489632 460889619 961433242 976902637 605135874 941405639 949044380 955358477 889395748 981811716 45716907 112273545 115656464 993313545 873230952 904653120 925907812 997539713 35897501 361343645 834759257 857849444 280148778 406057366 729160627 762050514 29727063 229512410 704829058 744298706 883574302 955286237 1010942 506653426 43893009 944823011 589568682 684292636 285861796 540421725 325008709 393020608 310130531 856674779 959773174 999026743 487111122 846168661 950379369 986847332 986669187 990748527 942780494 960236746 428789027 738334415 693027466 875772920 813624347 838574131 876357227 914293260 117104365 706189545 801405363 923959516 153112632 877483756 63933068 712129405 943222368 990325538 882323424 953485928 91736689 962206442 430578327 685184342 955367744 970572948 995227817 997577593 183380852 403052733 258291675 287928459 785589166 976786285 535813563 787529687 228136197 845994514 868457599 929608798 390467427 414455258 138818619 406153322 778473877 900619024 315640605 844595877 563909139 743211450 194123826 829202235 389586424 655451087 34379125 840049426 403080379 425240596 53183812 65083473 731992568 805866074 343192240 434020129 343016115 795783010 107709476 698618059 819706826 976619814 211429563 854025936 75138453 482124674 57116203 393073055 190374965 275840587 200593167 556661658 149442948 350185934 679683493 990276402 651954844 719034737 576186801 693541375 360373130 561429459 123574576 459381253 291098882 544374741 683823021 984986594 414243611 907052489 598259289 749835813 298324461 687699753 320830717 392223519 549597245 885284266 89944599 214206133 830850953 931490716 214748067 732704991 511563375 688324361 286850806 379819132 572309601 732297042 174331875 754834669 547845191 610287895 52696382 841531315 228334601 602526098 910389207 924623805 925377258 936279256 812454505 935090661 913794121 924246272 821657178 955208789 792031571 862672583 845356653 998889243 520872051 705870965 821206070 981151947 541130927 887167956 421360742 715611632 154319080 236078278 271390114 670808951 365648081 637543283 883532410 921657483 868673680 889097872 726398429 751437528 486560184 893477222 258126152 834616891 642341889 656961645 589072065 666302815 922400077 995686980 154731676 649222176 304780538 305182496 699072611 893010905 663009002 773261589 719387498 809305166 896778635 968602770 181658183 362358248 688045357 768333220 66523811 804874286 800636701 815767008 493544213 792867052 337555652 416775205 246087122 642614923 517351667 957004708 103008251 405232216 229731145 284521926 394658430 940106682 976412305 996412789 656068203 839089752 283457718 455821627 646830992 886321261 388058778 864828999 867629188 966528745 733089171 935836921 762545441 839212313 42886068 878200216 436857005 593806878 77153455 89731996 157308836 326272063 572516378 985916363 272156513 677209865 667882989 762024543 421512887 689149228 334522221 827159696 582536103 711104828 577238619 633911297 523838584 850303558 536291898 663992608 298547046 611203136 232742881 889913224 695064480 987408890 686401993 976501130 642400210 650813858 128749713 941887507 726093905 831090171 650641981 702400355 821195766 994452547 898651779 971866404 899867886 943594563 910485175 973731351 888707714 957625627 929348941 941078070 686334118 930003586 611780144 998426263 169440184 541711026 489564848 848617024 450695668 478738866 761925976 908650610 468219052 731228881 699039682 785853556 34832514 798333086 507095438 788395285 447685523 867239772 333038199 339352636 367626849 686796968 854098077 955044120 158665746 273431738 583940766 584524505 833110503 841350784 779453026 941930173 173473535 476016285 566781022 627840176 394073645 710327581 813544550 942424862 375481460 511286609 331598402 604297845 848301770 850317001 953576530 976548619 177306609 639942391 184632883 426771562 528606766 823668827 92443376 434836712 474859568 693895480 771181901 825476844 255765003 484662756 582978063 688734324 937468208 988530579 879626024 961657328 203385948 975439584 846257652 945679180 639149949 824113669 474430004 992857810 986031679 996305814 569767131 588772837 386103807 987336964 42012347 436946702 556520132 973525839 116535566 269713934 787788177 862686222 608671724 815997253 494782476 598194309 63458704 976146178 232208430 351707296 48189471 615535632 535001843 537017463 859878606 990820589 426920698 860673977 161093596 510059940 720616398 912561794 701646025 977396552 313033955 506804255 888931928 916258736 821780196 835226722 196388642 380773120 756016659 841158256 310318186 607371432 403548023 435619546 800905061 951725900 285624826 718130036 795210386 867007535 332675157 634796204 222095553 682759356 195099169 249312900 724214728 971702994 266839317 624189263 221118265 353093455 476939177 549274852 477556364 749852001 123595259 603783787 81770363 705591183 172262786 395362884 747817762 798934261 177872727 329584428 958458515 978282410 126974989 454466553 294506774 318684384 721578341 850490417 779314218 801166717 897309667 974359801 994758276 995599759 623674546 942997885 257625440 787732313 934473891 982188392 441756109 473684493 818764889 874128844 391276591 980016656 370923699 417657979 58380259 688294709 217024773 867265587 965457740 969690671 390083924 986805782 450414068 511345696 795170668 877627520 242857709 365366493 782934766 984334749 742371035 857057724 528442427 915010350 209570312 894909373 434328519 503782524 438970353 651718634 17978687 129329507 500910839 509845892 113866833 959390812 810644105 958108702 605438299 773898718 477368528 528310105 163101338 809984202 161293088 960989741 598454405 714732526 434556238 546938824 486525649 626305699 157053168 291587249 186173559 734836135 890523585 958304668 505289349 733807145 347466756 990055855 37304585 363725010 460480316 511116322 945294419 991555376 612373986 997604714 66726767 188751606 623692998 848864366 768607787 784347357 658543954 765944843 515744102 974788240 721614712 829997754 88138218 319874911 499107715 613279468 908887965 917853132 204053890 309900113 387265815 856919143 204259743 643576868 199125872 927836021 471192454 894501856 925819652 977402876 48812734 876448234 701098936 809350194 81708807 447589001 201534666 971617883 813185617 978139667 913154788 954390138 552787953 594396634 790931314 811647954 286769441 826288894 153226701 507619515 31141777 174695103 573032312 992714575 418098859 487297896 927619191 964802397 752454602 945722169 418458943 478699235 828790409 858282413 158675362 420964344 115319062 422186583 233326698 591172529 516949630 579197209 687541108 838991141 279424176 694442482 197256558 385395186 501770798 930416456 644496809 889413899 91455388 370659265 926004011 990827174 104237143 699771459 376089506 582643079 838694679 954936160 105720656 771632058 806022446 981534990 570289008 583905255 285523383 829440275 880821127 900978781 648367219 963267264 232559701 353825917 864872971 934444758 304230865 793664720 9839115 377288448 941402273 993227852 349076002 836117396 871134551 962023321 818432874 842410290 908931152 918344160 366861546 655533898 483274005 636734055 665478028 845793179 983879793 996683830 983381979 997739137 76038023 117687222 225889879 421514287 608558929 831783587 50529704 815430232 738090726 957552956 379239820 481382599 946777620 962198783 22202959 274177271 137471732 610113825 39190445 606737948 278134852 446114493 588427707 879623862 619867141 979597801 13295185 926692328 741355236 841913466 128722299 536156105 527758728 983078215 745366524 768496470 915802386 977027933 838876007 857689782 146240462 703853785 824287941 829648936 935909294 966007306 261854221 680240411 275924482 477428947 576612783 691502908 653216241 974928821 462394844 620040828 342677126 374311862 364468035 729269717 686186832 957695529 857553452 884211062 450968175 476923778 893654055 977822457 191351606 678199851 339854562 895682753 71730493 198805560 786452266 909387273 433051060 792062907 171683196 674108865 192554902 621963931 266857002 284955372 654413829 767819309 951412191 986274605 71740867 705354752 377021024 534545867 3606746 683076427 131146807 979426983 598732573 705477607 509416094 655319511 786138249 901848096 730035524 948824656 144649244 953163958 715388021 882130480 38252023 595692287 537130155 544708820 134129972 205284380 225654991 443622692 671617053 914388590 480584725 921666992 848090666 943678178 414834886 818049770 832650625 981651822 7059683 914293235 948807391 985176896 200350686 304134289 669147691 688428011 677784039 717992287 188676338 345706082 85297851 637265742 935159837 937340302 353826173 380271440 132437392 294044737 692248728 821102190 987239185 991825653 485455018 611954855 658779821 694478558 745393636 890681551 228278583 455688639 520651266 978184183 355663007 493170486 780203488 954270019 210004949 816488557 76051720 109033249 497354253 784138441 508374479 687992454 568364918 953122010 320122121 439578415 604728969 793969023 319679416 796881386 331331210 527035416 15791206 575135250 626264523 966538404 793991813 807432034 77965533 157891009 131172371 415005293 856215616 982744908 662179441 872156650 962070847 995005495 519705733 821855478 807280549 846790874 390584719 866788397 917946417 945210050 159108888 983183241 408066727 694121792 91121286 206727998 957114198 980266494 597091721 787926598 327273510 644038142 587184949 647686668 761508963 778021850 703152626 850205984 978662851 994095264 135373799 897022880 408107536 982087602 668576540 850866213 816925451 871152693 998193551 999024889 138561327 799123696 489916086 555110132 599185196 876175495 849702758 880309382 776183543 990231176 573524438 665696283 958611915 980348062 392049293 842367589 621303263 651463648 48710483 854276876 602431028 689826452 770203171 973246972 354049375 919998301 488847924 824303006 489868621 916046003 827407887 950395515 293961261 537922793 211677569 635116574 569216564 784343514 751453234 871021284 182163111 934282683 212063218 885911325 874730235 977871589 549701901 656974422 36278604 479560193 577674966 642521828 267032618 989962492 136246848 253244903 242473743 656083251 862858161 960799637 73892487 781088819 736289298 749727212 3904683 177307455 145075820 146721388 908403642 950232921 554385983 643292919 666995706 810395564 561012408 706240771 197663907 398140267 599361246 786526527 23887497 261162677 501335393 699200234 925837451 957459418 485496559 487879143 138540923 699834669 538436180 614100348 74024245 376508090 359864274 765793525 544345708 629639388 307773937 844892305 606593158 885290127 5411769 909657841 631727909 660850157 610866495 798821193 246387227 298833965 525290966 620774830 725685567 884905359 57095473 125680792 623185983 713708870 409716608 765024501 547496974 712536679 966059456 978167198 890189202 897422738 962439733 966889920 442156377 996459038 495511103 713249370 652524864 877916703 232544985 560730956 299437812 346566691 741668964 851219360 298345157 675277418 932382352 973279311 518169764 635049916 666410354 874389632 454891099 683711282 284650044 783024641 925247983 951838268 203223394 475696887 440099365 810370367 557724484 602319223 467618804 888300849 629732021 834459001 488654079 600223811 485077420 964912006 170773093 837709483 913695065 931707834 906233179 936835116 46162938 326635602 238526706 973440130 983448368 986798194 453334741 859134927 118705157 648484508 814528409 945109606 160772108 990692315 202301139 498766240 802915965 888006799 372313900 818565947 39190513 572515918 716930090 804124754 635808944 670952179 366472953 838776975 538461610 952804618 961284968 961705964 894169397 949892914 243619810 954665775 2054004 87898653 131083030 969547763 970022407 979192639 86032373 968116917 521831705 753111426 61510699 582432122 871934342 900474810 425874601 811600623 30154029 714267783 338582116 508178172 34975204 575667007 814424910 979846046 969854099 993110357 260522832 535741227 2789603 235127534 347069122 913209323 361091611 586001387 162660049 908566634 495758719 834687466 253109939 754895894 998833300 999324450 992384960 995314072 860439561 863904538 714601600 810629537 362109219 383946790 921530041 935253189 940539452 978819382 216550301 785320225 291727878 619603376 57988041 326653301 804288670 942483311 878433541 994451739 635817351 733427273 662199550 933125346 649804742 705481331 218523949 693218468 691333298 946509700 486727156 511515821 678197448 942741570 953049607 991953755 922085828 962721525 431477957 531884680 560429756 753473522 360329682 680574455 301124362 949159563 695471853 827520427 990774127 997509872 926763737 943046395 276282982 887921435 896873662 951955864 230432199 444573672 616835067 947945546 41387725 451150584 683865803 854180007 241740849 793059095 813389750 924390701 570754986 780991195 634333094 839691213 930294118 975569120 385034802 731586365 264283927 913500508 227148192 821416909 477407255 840160716 672799212 776264005 157813168 752625664 118450829 169170274 189288678 392070023 638602914 779887414 162561114 722866978 395427365 845051869 90924992 304712971 414657892 529011751 598189611 718672625 159767376 589713116 892361705 905049111 15779056 402590830 483088573 580332308 586773602 979041643 217757948 713819215 759012342 870763340 734709822 817299026 456836251 734301073 737434170 771089880 954996797 993493285 146083271 306952000 363193114 886427998 923073931 997144879 374270945 997357242 847845677 951728845 126119609 808397692 915279920 997157658 637360040 975236764 403413592 996523289 762889930 862732371 108652289 446612894 403461011 860706774 37482466 822015580 225869413 655516293 689362260 939805237 85923066 889218339 375922765 863206696 508104379 991683065 744776047 898202505 115579616 815032202 895126088 895533988 566776153 978384463 815203023 977344866 617101827 884371927 902800517 928735803 755031839 768351585 671004534 899126450 33730168 298431380 680389953 846274859 289164732 796704833 298289143 348853404 306022022 612193191 951547976 962418567 819193249 839946812 144377809 463749960 853551423 960272387 89032155 361355528 348259861 550080222 178787145 986495882 998267978 998720741 945650949 964736371 274087302 883831298 733096421 830443357 583358515 892864479 888921111 911877786 240979779 335146270 687513322 757859127 713884298 977454719 295275073 813882855 259474578 787522089 432618347 760443599 646866221 934927582 283864724 856974888 174382334 698416722 874714063 977124109 441605025 842872173 497084753 810311644 211542625 507108294 494303975 494602010 519836925 751304151 943697709 976974526 648308260 828455762 680705652 938576334 741000601 960976642 61518850 524491540 957379322 975914171 92286720 299187809 106785776 271815164 290270101 620747490 186053967 872841741 69064738 108032828 413211398 918156944 268196029 980414168 965951040 995123850 418879902 565163615 98181607 132195353 634148604 703791811 445148431 805217472 667228874 704573691 170074808 850646686 807500283 877626671 405036097 851755736 906547045 907191954 533452911 585767663 902611023 915276344 103259352 211843011 811002493 880003423 797510438 836764868 276293110 721051949 269417746 775712824 656119203 780003785 856908970 977609852 310775639 435184597 734033677 847222830 15080628 737892811 104455607 305755240 753001756 992046479 65456626 666754642 125199005 973469524 535398436 966827924 531286453 970795866 634254287 994676301 843445864 858335031 136573533 822969099 622456445 768524810 973412122 974023488 549914198 751410701 35513960 467645835 118700546 437322554 766451163 855425204 566756106 932351413 383427537 544424795 425582958 569114475 828132416 855171897 79661392 608899890 290859004 322211903 982018737 987104044 809147360 978935782 796626776 980738958 731005149 786494321 809497801 940808223 277830074 593705891 130256125 173656528 214523398 835916442 738183134 945528029 399954682 821695920 98098377 192943276 395564314 814574536 356642667 957152745 437835185 899906501 840040421 913872690 34716799 627585899 854315895 937300408 664202487 805079372 379287559 451620901 830946631 891911471 701080515 884839474 760225643 847800419 324146201 785457877 63848550 456293662 588078017 780031149 520812933 599318178 850029071 935941636 643196489 889113197 41311171 301910555 242358648 440198792 352758366 781852141 770488979 896656499 293721141 545938193 515641168 812226905 988436846 992642087 350039603 517588601 170223387 181996822 438793049 885687460 817325512 995525128 866397780 925288812 768192123 868422401 830596545 894749524 105763437 939568172 468936780 557779780 265187967 601671400 802913146 958129391 612404356 633215826 870368595 898965446 388276252 972289856 325460513 898406927 349308319 510834087 124632653 674956710 825142236 843426958 929926839 988805426 873926778 929222637 300855167 963407012 114731490 781336705 303226611 986615909 19042221 117435318 419344372 700286452 946259529 990159721 318782266 480252111 217883749 490118051 399730328 705590611 419201865 514988147 835762227 989814652 587636099 838899003 822244646 880487826 941793570 989878188 139522063 241476995 289322284 900420832 773803480 861083609 190481991 952519782 264382867 987496168 110836995 888347840 124176500 769569740 743628164 850048243 292137952 535357628 483227989 971114435 978481434 990794857 449050666 713399952 83598276 137327834 538930945 717577612 453102595 785395957 523240073 548040224 275254550 368014236 648775723 887831775 395420585 946208479 299948718 975794601 622885900 691254392 775362346 932892665 417466815 608413318 632887136 687719242 839034721 920408092 994185333 996215986 990787262 995050433 160171353 655175374 85676147 651633198 495110502 605717188 864755452 962704630 272223235 466654071 682736999 826035555 300268546 320918552 737843023 850010192 434913510 740253081 438560596 456687231 333435102 513816500 737357537 925494297 868596138 948374443 850488294 892604447 599697909 673435742 217536420 762757458 151331320 688931712 54342172 763515501 315440639 397289986 981898700 981926648 909000876 911176429 613248431 948036810 428229459 911144086 39516462 780945972 807768017 881072134 392271556 814036700 283198976 982436847 107503757 391825441 987889288 998972273 53135610 784650230 951547593 993652314 470605578 588280010 856751548 862332967 350044251 682786324 131000099 410128353 212579525 995520076 353825513 665030279 191256934 354763369 454819311 572352562 210830001 992623110 180401105 596845157 526273111 620056539 146778752 394070839 786911782 949949272 485492278 541039464 585299502 640936467 446061920 485595330 419501814 500606672 651983212 998203370 473124592 744302135 49747785 316695645 252733283 623396841 133122940 908694311 193012608 693283160 821718719 926520520 806738100 944845748 60345020 642093568 320572064 775710496 809685685 955631196 646969288 909297228 69363069 265831666 622417885 823600167 822965549 848605091 420336381 437400010 775799904 976257900 792569654 805436330 187271031 200852051 696963108 975076816 656245028 668015075 406495749 552781426 525802195 606066513 444785649 625104791 198806482 999103427 998208313 999013988 772292439 825531253 11008655 678287960 628720433 821740978 663522509 788516688 437143207 740288741 79924957 849922343 403747474 497880041 657753659 774910881 773744549 947498210 969592703 998636707 89295443 517991795 976598344 985873115 280803097 402912380 673137058 689808667 792585161 987730327 696904685 815017806 133236967 480481998 523079874 667375913 505149260 873759191 530866944 991158706 651881987 731618756 367874642 858554301 689124291 748041919 350166212 888325958 310653240 631244634 763508294 795746528 254167996 452702552 423117839 813787782 245810472 650817540 585513202 800325664 993836989 998190124 86233543 277394353 194176045 551209407 367305934 641202036 692038003 808538388 845985252 932351092 765869224 971363615 185216858 675618485 135556680 920575239 231486271 676751720 925800006 965602890 69500100 789293441 88180780 944108545 170500030 229803251 20034538 924225769 89650745 966537056 685561704 895362522 758805282 954650313 860923056 875805778 250146513 473634988 294592595 751173698 731956332 828062891 573014319 790364809 586395507 862572327 742632714 777083913 405156785 461431891 697073246 788750607 353685099 772549059 984822295 994770543 448741647 699091585 293064046 759668965 562051883 994485307 464836097 792169238 420954134 822829905 101799977 762475611 45209056 434978711 601412294 824638737 741474471 836806402 915447611 984297859 137881793 671886804 597417964 692354237 111198975 580004450 610744262 629849207 81885007 790120585 226590375 252763224 889428146 904630671 994752815 998488623 974766878 983765570 673440960 725265231 351785688 354571564 722902029 836775167 522118191 751711127 777747065 782023609 196592332 451327696 390930801 693448456 901820213 907429509 568328623 795274654 175336403 598886748 335805052 741531901 127691648 837357068 360646773 388756875 252752774 909952342 272091199 356372803 769651173 840481186 32219604 378430898 818447011 830325980 821507895 953800907 237761736 318598117 952338595 955413090 546012192 734750188 912549850 971371640 903787193 931566643 498074645 781673021 705444156 764465170 88604527 437063603 84617384 933028352 721976962 855992209 52284214 927559853 722112826 779023568 482702443 916793225 163752859 542314186 977329870 996399957 843910665 929394845 80385573 261702609 886877473 951317594 891736136 935064500 562902774 870628975 702421598 795343925 931054999 993324533 344291259 749168940 713926829 807721664 497902931 846010414 761911249 850186088 357101618 437436916 882129586 968869205 71290437 504793125 318978107 781465662 568311776 800411121 579362331 907063607 277733052 653961854 898257050 995435527 493685289 902992588 790436614 834791128 860339036 924788291 27098280 937087721 144440270 867283155 991940684 993529103 876516792 961569804 107231759 585030999 812816167 859255146 232802225 997878488 86333941 460464493 815377885 855849750 455044669 694856821 419335038 635460890 906737612 940896918 259369296 512790750 703419313 972817675 638033678 975868049 875176758 951444866 765383129 966288860 935493314 998581276 744333783 861977933 940281165 962438218 862522353 910685409 653199137 952539552 336551348 428240712 792639301 952948171 319127243 598058404 624915613 780724603 834223763 961654547 884420184 892268032 651061645 707442096 471300140 853353789 161607987 586349372 899829522 976196070 539991168 904763772 239429666 266991801 376292068 987292118 361661362 580354316 411833946 959829488 113103445 537123802 348120374 877529707 232046524 982320559 620692536 973560969 34328484 394442799 397166532 508057753 546073255 802374843 469542510 984153288 851317067 943790124 225974712 739861177 444578388 720899470 704143299 711726064 8668407 483775348 867400753 954370152 730319978 798206159 800198787 805084731 891271673 989240735 344038246 526730768 109532413 448187942 661048898 705610130 733642306 892451164 403467741 600268832 960397397 981154628 852311377 884571839 625886855 936524669 164892300 348014372 622937155 820448755 790921488 841542463 160516586 899384722 100267874 586951115 82086380 477361086 167475102 606274422 688605813 749378207 577930268 657842929 528805545 996236164 104475848 527147125 962947690 996223911 905019279 982678531 204267150 432496704 312329242 572912507 215309254 602491404 534754291 825191788 570748533 929506107 693581174 806485748 151737490 755650660 825093500 903161526 692543226 744092373 336489405 655064498 993674053 998936574 971493057 995357380 79467658 582134998 12317108 893030820 350652005 797767723 65665229 232555077 531547347 748506424 425737487 907305317 394152063 641555416 430370579 904677538 772807833 814952841 302203 928043743 74524777 872926096 790895615 891124170 116251440 255676451 943694628 970399040 212739972 410246849 835772341 915172950 11925494 625945565 31966283 409889760 42732449 696814058 275660944 665839056 251437834 740509125 674425442 975929980 617682586 837786639 969832750 985605906 686928289 763091725 362971671 389534475 340243425 996383095 195316068 668722901 582675641 660367165 886653962 950327323 529777012 980663652 680580387 893932446 184551930 703624131 305964886 393488776 885936300 946922915 789794733 908960511 505655991 782973290 933735913 960015331 231909732 334824886 577210753 968588813 381303600 580649814 153867580 700012568 526668749 677477189 625325127 833250906 139599535 907666530 363567932 568670764 413933104 930480373 641859460 955101965 248135517 256863825 456018195 771500846 902181497 905152741 870098696 883688958 8565411 496675129 278244910 537888784 230905076 297613691 554256145 777575722 254417105 909516026 711792779 919358663 984334419 985366959 518916447 777713688 934830121 974860890 27477372 108221051 506242613 919787782 575156221 987338565 928625322 940859837 697490247 724944855 857408945 897272068 872245861 912952817 797616096 970042211 700211799 973287830 96293835 564923595 373392634 387596232 521318575 898720720 239848586 816760805 844199563 929574226 82885354 403426594 890528593 974611561 602879861 618542833 571856391 793991287 789849350 919757271 189240336 551102770 185850194 912174558 445593163 751030669 243283357 302274615 240196086 282827800 281768422 632997715 290771559 435067692 83405126 543566589 190573256 934089570 967772451 980728044 903671468 953367974 66241098 919541470 235731876 686375976 313840821 337764025 291058796 417171053 242527534 340213329 9959304 687084620 536877733 721971305 127863406 459598994 244070021 745635869 288182313 713071939 552930244 943209666 200712787 276333931 568558963 915795990 580683942 790753892 356243197 504745495 234112323 572533257 855752495 903598028 23855874 549042863 237342539 733334152 940389357 956783261 305327925 788378088 114833343 617098833 525718220 607261271 98750464 801288300 705669274 976657001 43474431 62630608 71263522 561093843 145442769 392317040 506527182 519248041 575352067 615898663 149733787 631956827 197747052 707425395 562969406 949102049 491478451 664639284 125639652 769199701 370666906 490798543 285760720 603488999 893089642 936819491 325804055 787503558 109680102 739373486 408408545 863783637 854311517 911304885 88148589 568621441 990174306 995475637 418645926 908061555 181887087 845484861 583149379 733381245 807034625 810416479 39254636 747320015 456396844 845211045 444830715 720693254 736119524 892772026 402302718 809971819 344140089 798160353 985810447 990674615 784430717 976442629 777187972 955444588 657687931 976694253 599201243 628203385 621619665 756669450 41630339 655672789 48985837 50961833 457327548 998636491 419250206 721659702 275144183 804809705 716153644 826074584 310924765 978461348 194404708 990418592 235288811 472347331 804819805 953588086 278851737 638966297 921170434 952091018 766247698 945252719 168997602 391428822 677065206 734335744 340248476 535585464 550529581 883976664 167831698 700386410 554987877 631815847 745438426 816666564 138192047 272020799 323831324 695732422 602400129 920494805 669694696 695071786 11160466 183170393 279126595 935766955 998964162 999145491 70969733 106062111 679418224 970840498 760333331 823618521 337303806 553051885 52411493 879577813 320506610 693654393 733443757 816826464 553042416 864811039 255003386 821302519 722409853 813320724 196988709 378340054 142573673 610398276 682695107 753704521 54611229 559919829 473988432 733995607 845281953 899901925 175484938 442953249 520400945 688308019 905947917 925741105 865650959 976628394 321122496 897371936 502798874 683979875 148758984 356686517 710460036 851617815 336918292 965601084 464254851 695925367 147907887 230422819 53016705 762947299 408280303 520375269 854384831 897112324 658427436 848449361 578118856 676338973 355738180 860607856 316539687 578416580 970648919 977982159 997280714 998160681 389020317 868258574 816814847 931775896 356581103 646062425 759712369 887151116 365846126 624664914 343817466 361122368 980317650 989369365 314391971 870614157 401524660 778074682 682449548 796149898 26609655 227926704 590794061 934321251 867114491 876444711 455459335 698660369 969361181 971329013 697954237 836580741 581160749 908326903 4167058 665608309 744910251 925221348 525934072 842159281 514076748 950989155 461159770 595317476 897813852 924590331 907339663 974995305 906341675 951771819 758078483 998582176 105390699 873939233 249270591 396381212 100607120 134315413 925369899 933814451 287220104 940973745 362735147 605487355 538278962 779963032 105676729 618184228 677529139 908806967 797975419 836348089 625674245 787094495 135291460 837134353 826558116 939192460 724467800 945016228 202179372 761326662 301520587 403315112 958854152 988820718 512234081 685758346 214891986 723998203 660595031 724836527 335313565 683636061 600480393 696633124 861468286 940581730 146973041 838893557 311394624 599634110 649922336 886984011 76695342 928758747 193887715 538922074 747830938 875573016 279891493 561691311 482551840 794671001 679542970 939796463 377569284 486430089 292959016 483458200 490748396 723593062 121504668 169358842 555098859 636235842 956213138 988696179 382000058 738609756 226084686 243318026 862945704 956589100 615851190 758774989 291668340 841083634 938049382 941898287 12604724 208648807 699411064 738572448 453401782 642074254 566136697 706721135 251883019 299852610 44763966 624631714 841772744 925805428 10188104 666074953 221567065 622017521 172955906 403432174 484339662 628662415 141870312 759967013 988573383 988881518 218715676 917619613 169441247 514182483 864493764 946273450 332206876 799025586 208627434 849403883 401450485 938856809 207191180 691839347 698821959 745946053 23336153 693557561 292099128 994382280 256979287 551075781 546253044 833347299 953243942 980630376 860971096 923035257 315352177 940307312 322680855 895863384 747397299 827789625 19994621 311089338 788387910 826369550 377276710 429415083 805896521 928579692 794236452 881526495 270855713 716855124 820415573 967671557 261386784 811462046 31653003 638203125 202353312 857852410 611424663 862631304 901819476 993022513 357687832 554848169 520672838 875545294 363955996 662235938 66022011 821091437 78909516 601168749 413035716 903215748 882556545 991270055 649490531 730231572 888134533 933365288 573436202 900497595 368672526 467899223 653360137 976870887 387599290 860533593 457443259 700970112 913009785 932660455 96669838 666096217 353233546 795739493 274370111 829045456 396625456 802714224 748473294 841488995 683197306 791372386 707955557 764374976 467176050 675672456 855796452 890915893 95560285 868565520 753825369 928797595 69354539 217656699 582593011 630062752 967358495 996681798 409694233 437123919 543401537 908633911 214930645 960107837 33897386 514313853 381079112 837215858 99120421 865378753 947452742 971314505 506905348 635994151 411610038 636158002 979183594 987559476 869616017 928918178 143626460 674178856 719020966 873191191 34483307 898099595 762988171 888622514 983849215 985093472 730168464 871500182 571112004 580071950 328726463 399500089 528091912 633450855 229399127 357298022 909711994 981934029 468669969 903929243 237170309 917569865 963239864 992373303 106915376 654668543 29466170 81237629 597877945 753554375 264264396 872072611 37668759 255854820 440781112 653275283 223084339 946121838 253289846 554372576 457875813 568045081 228190936 890246562 128946927 886368677 874659185 965789577 648012128 932355731 4957118 470185083 234534137 563253834 686254752 932381936 240020478 302531452 166076373 436128306 904820303 958699193 707295364 903315949 427313692 478882708 454377693 643545710 757280459 837228717 340534939 551643496 387002206 418911717 673145182 712028519 118412617 590017821 922062165 964613876 87763959 724730143 551753010 784832768 207352711 350056373 310288440 932287523 442360064 856882156 456365574 931293565 448722759 498997893 242019171 750792875 284783093 940767350 45819838 191707379 41088387 438342459 7204845 905403841 744290064 762934650 175072885 895124536 534855305 895271547 97041789 715667016 735910917 876924885 800217971 869124946 854800198 887104691 771492090 807342236 308069904 347781188 357798334 682434402 930203065 970758342 297979970 631650492 410947673 719889436 352796505 578371873 668102849 806707602 112821626 702745492 476711961 691811297 520831644 655186786 263397311 835774745 198313519 834203145 429624742 498803948 718138962 794898728 683980845 977901650 18775593 691373883 908664898 919930329 392806325 984732424 614241108 849170976 818458080 826175701 167124392 478837119 296321896 573601619 140249697 817733244 373442883 524531083 675044592 949178975 730604997 919758885 847570235 938827951 634691013 640352657 772270481 844599374 955063897 975318834 519736180 818928977 760513965 985026196 903331575 960555569 960180764 994703163 447993892 916709448 628392915 806242130 528233371 565636369 126455514 496527154 726883718 773130560 508161039 539714597 230726949 794269628 524612328 888395513 498633504 528369704 299806658 459022899 790684833 876355065 963750297 974847387 302937379 379434656 883155652 931870976 638853035 796771313 614451616 631602458 1409809 158520932 646296451 810910918 33857552 886504531 157465252 668010563 328262459 519911347 243650286 899884361 195137583 243206174 338947425 817716322 561886748 743970972 320557474 859729021 392341692 397512973 168738625 302759760 965949238 993380801 193915710 759748308 396986159 889247801 862752092 942771686 104751425 488892640 974666212 987804327 726664044 971315926 17192650 649952760 676164660 767085485 224280964 696093280 405646234 980370026 523307835 787091012 621729371 782176027 398051372 469143975 836112707 910699727 618224270 722129932 979550447 991112065 495825435 841137680 75748273 440298419 215914865 288729890 826024776 867104142 164251946 502937996 555851621 977291076 928845392 968922919 466225388 964085402 771222541 816454079 347023159 746617259 888222073 990347913 686690642 843193277 560556765 604245032 254953049 389118267 125497864 718278012 598055026 911529409 252684557 671363148 895290465 895712003 135113447 605774804 129727730 459660229 488146139 928172134 607763343 668977640 813419940 920459618 680888538 687647633 609461693 718312202 590618049 680808573 581966433 913045284 891532628 947596225 561399284 926096562 642773395 904703788 703868838 866168905 180614010 961442991 262819040 721825919 336316465 915481119 974559946 975967380 537871948 654113733 169101119 835536795 344134176 491919975 23216273 58010180 512756566 690432319 954775441 988924405 756785561 948468701 142437859 949220810 783686489 860891499 732966413 981678752 155716727 156376813 330824042 332600941 836013138 893891914 763614768 988544227 781533536 817125913 309848813 517677837 41048223 317683279 929643460 977585245 367518501 697514387 988216945 991016180 855337919 862035239 376662304 876966353 859611793 950491802 332170475 359275135 749807367 893503338 491075043 919042660 726217439 733101445 998166389 998667566 881694561 980735343 708498723 890273740 823120205 841589519 797071091 905692073 227033970 566966771 554943607 742551751 411777600 697351850 635508632 806773466 178925203 377648273 359633041 805531025 234546656 687692145 27534036 933196041 755654378 888469284 249532460 476047725 874778262 985479735 740444325 816883342 662684083 758555822 896557929 966355651 7623780 882525719 580279965 711538114 505418557 868814461 247241164 510281240 676106420 806183602 693881452 871464443 958924948 967275572 517703915 583336831 432067674 876571140 759426153 794069300 236576300 467681647 670434048 935865637 23682733 380324838 577279183 692075135 426030571 442823781 915107216 981964901 661133428 793053681 121913189 767249451 788301014 788539872 274524591 829784522 356565900 372416430 977682227 997997212 208556975 640209777 847083158 878777820 79641053 474854700 856856907 977936259 590650679 920040861 851525588 968450200 862344948 967404755 718286514 923182417 708632160 767893718 115981618 407595062 30948166 776473886 284642228 665028255 147078152 979686367 741576064 851264682 553989158 730016707 132419060 714390162 856792725 989779584 648190663 862164757 647968087 879757558 453414176 746974794 248334364 827885997 20164844 939141016 938282270 987920292 294640061 976221400 52461865 851983751 328675405 558012827 170858838 539759656 958444889 996939948 470374806 631777891 721360645 807083003 120475933 499249414 948972746 987529593 414714535 856371439 542136983 836836221 9682019 680455995 294407094 850298910 696432955 996607452 747032457 934162145 348800395 436802030 193158897 612870603 215969448 460990032 25688101 716144367 34761504 175783295 782018932 914613846 978772767 989610236 119956131 987816662 293908402 514097588 715997138 843905731 963364716 967639545 488015533 654114455 142355811 498740101 432825922 997832995 58562783 507113083 195549953 699930384 89605938 176225175 645465496 721249303 628011899 988816751 855788286 949115186 665612105 944564278 551034638 860606161 508252794 861753708 945288838 990794137 965868443 983293451 218844422 941566997 444191833 578129851 898380 458423588 410925428 700345735 936640182 978951992 101567601 146040995 252250163 870203673 748057919 965181541 188747424 417287260 174252993 303246778 312500715 375719892 132472713 384769249 527742940 791212714 469413114 595611128 609544681 857988418 655507401 909328434 112050410 867545460 272540740 725731445 372597456 617072289 289085308 929467313 901392040 998052228 459202057 839465110 499530915 695668600 118611609 495583795 269990798 284980402 965716895 977526710 719656302 760791387 694797598 710675444 497647596 654525056 827933137 896397948 502973404 746680739 395353161 861754273 214736132 905049325 186641037 685637408 777551682 911788171 771619024 930533136 835696739 859968719 625564130 755230338 936950472 951422701 930453180 967289092 516987603 674727295 61621833 696356825 335190778 349288860 646287207 950683152 127060649 190994698 253688546 845674997 918445979 970543499 375985184 888528896 400415985 608284145 261119689 700549558 583960169 818468009 14323771 752477594 170005664 651095530 336804893 455112469 78114630 410097599 693470227 849825598 245743926 704083576 495548187 691270916 288253606 534501558 20874122 668843802 259236055 458494569 276564121 549439321 873816112 947414943 859767445 998387999 477902158 522109388 629380594 742578590 375048676 520223973 945117240 985662896 832328084 915535797 987168406 987436927 625465386 872703726 226537737 581084614 794272709 988878002 367349595 860094136 870686519 904923514 831451908 895425647 269068926 287278070 951368026 964313132 518943268 876703845 714317528 718118563 650788332 894075274 372330499 673156126 287105786 655145829 586830661 877626329 3929719 826501347 973707867 975609661 236893271 468727814 261003070 710341497 575167945 701370113 360640194 577042583 557888606 777982033 34749129 305961997 768220576 963908391 965439136 990486949 291643088 831617796 675676999 835179219 103200849 763040420 333946757 919506099 874405668 970891311 703602268 905051352 538359932 846714463 366163426 377841543 825118929 885654293 248835964 413068951 606805269 886817551 751928289 761767558 616900328 844737972 33371389 799048187 369899461 550671906 294190754 351904642 606951605 896212993 948665437 991730374 730347085 974047818 32410328 974167156 209987691 763069354 674881499 735893738 650054945 996190647 586368674 606045116 468431706 738323412 360749841 583264984 964848752 987815954 348808888 664050665 183539444 503686492 372035031 657533092 764766504 952066303 722339598 814036259 531169723 900949738 221451473 390014018 862957514 929086869 410846137 940858803 570069357 599551930 690218662 847998645 841307439 906778775 470348512 559882374 976663190 994749241 875656973 945299690 176745855 318054090 702869640 842967443 499008089 713288604 739097080 826293566 912920785 984450524 100287531 291678167 506091132 718975984 192862971 409136227 950701534 951779561 891686628 937393902 57658833 850649244 972087723 987674593 372135920 936793091 716606251 904606258 302361648 742428413 531144442 963242873 807949074 982994327 574193113 997627998 63980912 939841981 840172104 950168883 204001018 385338882 443573499 491111139 609587510 661924604 565682642 760764950 186489828 810494996 297864919 530804660 204283237 407856109 951511439 963057160 436381902 449147364 761807980 886948163 975304425 985381855 262262637 790354754 111685959 236142665 390975294 538423912 972808435 973291407 447405036 984467047 820777849 855110901 619458338 620642078 117560297 288179985 650828898 875700102 449931711 985314366 460520726 579121564 257850797 382241328 6107674 691265493 458814158 759384691 747369774 982922303 879944430 994415529 47730591 637272798 117992771 948861231 399615806 501789257 412777763 441626657 61126510 282356963 411876688 593361544 702536762 870909500 314257975 622353468 868640547 954666119 712505156 922188436 568721492 882740317 37402572 149208709 97339986 387155317 329437577 343243517 495285758 924133280 757552814 805074725 997957982 999280029 19420728 793541454 808223991 862329132 380212958 444051762 958444566 981906056 958518541 998212769 347456940 911959325 420150880 978059084 489855260 718479670 730591856 804450278 577530792 799658960 978001227 987459891 814972320 876821361 622179258 732739121 966378616 966997012 500074226 760897756 396090036 909147660 966018957 974419140 96591640 845444416 933811293 943133721 525467837 534372025 168669251 619294684 808185421 906865383 91828186 607694268 777131023 832835183 545979301 571573829 532736429 655053972 847039349 959769626 140680493 813295685 112301995 934053038 940982561 944318182 710424950 827747122 480286835 659414119 462014736 991885109 609259693 695744572 301334530 382778559 980631458 982097663 129823067 657293961 761456771 863541931 97883894 131534927 961458578 984227737 278762768 453952264 516256593 712058531 368951202 801010163 985790990 989399406 803986576 853552484 347627378 519605544 444796918 964600548 941236659 979688270 887552496 954114812 366950024 373675651 276603419 411509073 315115089 462190541 715510132 942279352 684198791 999022169 509506632 729520713 591140180 867276370 123500936 923101005 73627432 105129805 235528148 345553450 949453576 989644437 69766716 976529386 136645995 235867949 842484459 891896565 550355717 880222883 556054304 678734100 603961404 816556788 428162429 799351917 863994103 927281594 76003723 862281295 452637188 599832582 249207018 346895973 849377399 869933433 217503223 828254930 420523438 967817923 875006708 979553413 827176238 906891119 532287556 532823351 314658444 622246975 604969326 951558128 977001159 989856096 209911632 383625127 198948346 707856210 749882998 880768326 279548822 697711213 600210849 638161998 984565563 989866691 563987274 797204835 113348945 685081789 676168117 992585085 796970025 829291216 206197267 332836129 481245821 516210376 715291199 764594849 639645171 946345914 124335345 669222218 196296538 535650815 789603707 883109872 962035477 976246938 171655784 622155247 416667169 977145714 185243757 337654441 11580540 375255420 785771586 988934315 452082523 986778498 903936547 969686082 484195211 716810305 416800468 634351493 485808356 719429214 422897432 953046425 170269573 811126951 277032789 601788506 495050760 829297530 254578791 405074864 326520204 867441335 474119230 900539198 841068146 895438224 513973528 921092068 427431251 693129693 20376916 71895040 639763288 777088795 237178069 471491642 75411650 575463370 162352808 664022737 284667635 440367105 890163004 914542648 334124482 649466657 768786329 787033965 113568041 746555333 395326485 895033096 150527262 342156036 862251940 909364388 483808903 955965367 64828405 196430300 617805864 740473221 697282907 727630809 54129520 151439978 885144606 942838124 39920645 574575629 851204814 960637625 215141134 526480017 618734881 991544389 241264100 780321089 752260219 994181309 730412308 738689910 37563719 333149980 381698036 777799133 513031399 687479888 918992425 937392294 392789244 882800067 71955069 630670214 910001929 992170656 965050110 984810702 93451823 631890826 336026780 425600121 785804191 894963561 595313379 650164305 821521364 842849674 512272508 586177322 770058324 889178240 174656380 821587950 448315689 488041952 972179269 976845437 449323625 839867258 628255453 902059250 830334443 967169423 982004545 985622928 950712737 954341122 601977363 850715377 142684568 408125835 411140770 983615037 651342015 838745274 294762089 875285700 558608785 823639121 609600199 954922070 93230044 953591450 906143218 952182927 216008598 760177655 699522033 994348248 207388203 679554656 660571763 878805945 862537657 900526508 405551415 416847496 720511934 829533104 824789529 962014659 614652485 897645679 471443527 653679608 800416451 816983333 331174234 336078354 48907313 561995613 558606047 883999125 555621005 664737539 333789109 980504719 372004354 542103144 88024409 585213840 807342653 946875531 115718259 122910772 613217533 676270745 96012692 433346065 582174901 691843091 112894274 328751867 491278067 773058047 603070610 932795897 105697433 395505209 65759062 580648564 875912743 913029928 9146463 476080916 4663931 606630920 212079412 869675833 14712918 338234373 576898775 901891537 31156068 298916285 285498884 709095950 777415570 856971275 351459234 669449969 196617838 450628981 483473637 937084014 251494377 330661614 389289310 519999897 506201211 972000754 1636450 203534461 760550176 969086025 56094282 820201861 411535685 605309224 251278701 578438783 290661191 860338618 289111256 759891097 526637104 774413418 388226502 693446118 333264475 757340980 947093009 962815110 941403567 995693108 885083605 936787148 961141948 988014433 988241343 993784400 154674875 618028618 753909772 873718568 179211943 242772403 417244420 942211920 972778353 980037233 908805819 961274519 2826395 735595526 207076698 836754836 824430289 933330223 868682385 884292510 773165772 900380902 692744899 998034407 453874648 520295795 947262926 992700025 195904588 499528618 497888317 924930368 702810947 824799627 933954395 977088525 909912260 970944048 267188355 404821524 21536716 313740118 421740329 799610381 936568952 948382504 234477713 804808686 937312865 940530449 261784896 934735850 582777974 687137747 60569209 937126749 557163089 807175858 269202283 692043304 976212539 995830948 728340274 848016133 398730246 538756733 237743815 627477805 441318971 603999927 84352190 291617818 924291117 946897024 689501567 728319629 166895377 302057199 18276882 452473484 385667492 641728075 21594058 882904879 771427374 973951585 893038203 936369434 828551766 883151638 558625622 876675341 222456074 366939263 884901563 948256885 137630228 508252274 755666402 937009526 449007437 788378172 698493730 904978015 960021257 967661794 302401235 323927726 166961051 828770177 977900440 998726301 660224565 989533484 347856679 596594589 888286433 918282193 667812352 788835091 615700944 623700888 198947067 818436717 499300981 664207579 470953013 556976385 474607279 671596593 553729478 747101067 437167500 592000901 761682247 886527840 717163236 944612782 440724405 889619754 762175969 776198108 796291520 813687349 925398428 995315787 78566518 891036333 553099663 713403611 291713167 652682789 287544352 883273089 338522683 428298690 85558902 429967304 233033931 737031592 395512713 961757450 792830309 965726174 796610269 854282339 140740907 828264485 952770114 998754963 301366317 825363794 627664677 950610245 985897803 995900855 192878571 247036803 885167903 991480065 172343721 703261167 36955018 826342772 200549393 997338434 254175689 543889344 420127523 695455362 952958077 992376081 917993951 933057013 772523267 888754846 470477042 956265459 503664742 767401469 846313260 901157277 157159331 825540328 350462447 840567747 263718578 386529074 677964311 802961935 396085438 897351910 74243197 503460078 421188494 426635325 810466133 959401996 236423614 307965603 894279029 930304686 460905482 735121842 697273156 911964576 55780311 868153993 320172667 679936407 718322030 971194058 316074508 766487439 174198695 247438206 248368065 859397082 7564186 277534928 436300607 884315799 617225157 945332009 973522705 988234513 453517660 500411718 920428116 939090529 834168202 923745888 712074619 996837909 203871646 616315094 789003766 978726272 110878697 429296439 363333072 393883811 738918481 949193790 322042314 811829828 233007789 314276492 605359033 871528190 981965511 996676041 385725792 485365083 445689007 473379220 534539639 839892468 151142956 973317985 737577015 995817599 120893278 181084063 194319453 968943416 595080170 815373018 471829686 658682644 749656072 900384723 157952553 251718695 881155901 945743211 496035501 846568009 880494547 921182631 714240611 978541804 701771456 755271298 582121102 917484970 631664765 837777130 280749213 890011684 697936637 709061017 668478292 959258621 294049171 730753401 494583041 666938957 470278430 927477016 781097672 797838352 329501877 623300435 126245797 763468088 549296662 799063665 105135947 466081084 480778508 824495181 851850645 969923283 141528403 316028424 744077311 834772370 69721001 546724999 557995995 597257745 666596366 931995886 679717200 770809378 519190919 719938958 8655266 339353093 739037151 805134638 985741985 991514780 220111834 536421968 119699023 315577053 251954064 466851228 506918513 825075234 971897416 982968751 629951428 746256095 183896479 741457658 258497884 280582572 302196622 725721928 545027580 572033665 980844904 991314656 201681020 850840718 910099942 958015164 794472432 811563364 552332489 632458556 395344187 454039279 439092108 664134159 108690355 966157421 151809870 282376371 596248597 854618784 64155283 844340634 69461355 967410817 201999759 371246817 853304768 958228395 388101702 488838846 845263287 868420128 754286063 779115453 879495969 930973994 675738079 870226208 583614962 848864677 756789311 973534228 599654339 872448518 128245054 302472738 909983208 980863679 918121596 998970534 921230770 966563027 608731456 901188237 653292761 876766408 913444703 963628494 543521081 857461199 618815625 929702846 686668142 778571901 760876680 806963872 925037103 939822833 273294491 913339520 377240059 761395787 581887133 728732639 733143110 801347001 728154970 951103048 508004179 718547770 75660420 301148498 951196788 989033641 687435973 916722605 467467866 969834374 466776529 672431193 602116260 627025548 535764467 791300051 451023786 524951993 596387543 670782389 654896954 913267488 12157629 609251446 714281187 739760266 211007959 638086007 618105427 816764946 696646091 822355135 126669782 664982438 229613938 865554120 142358316 627132339 416895221 847378362 521173157 717730955 934805656 969270560 274611306 355218349 915701993 941279553 116482728 747340981 727277118 997843456 438316268 588541587 602235517 626454950 962806366 993682182 69248448 465206354 355719321 715769678 813738051 935401458 786677430 946090353 769432419 955373750 492147219 738519669 320721143 779673541 430157586 904645214 770788179 791395374 16002231 430704064 369565814 752362295 822605477 952922621 680681848 772742491 481669928 840726636 259275245 856753341 753097704 910694383 892979990 907514513 190013413 557397980 542146299 749115216 244131872 588105466 505435507 564219122 852188396 950052214 241522649 525293154 531896498 822332740 275922185 784112639 128874607 765529506 816848836 946150991 83286984 158146818 432824387 572837387 594862580 880549295 667492438 900940152 446690841 682499928 698983225 895966296 855729399 943345983 983996443 987658101 622302575 858659614 173038409 332406529 18905788 842135389 125579254 863300783 192121828 377400081 201492080 702716668 837511146 906492222 831381843 882339831 506548204 528875527 714894204 831191634 138913968 808724664 765837818 965427868 974969614 996676181 441750398 926040457 827278392 893066152 718908327 940322368 581306121 678800973 657595199 770957582 9346509 773213042 434759782 554272118 264670357 975540483 217632870 373288473 41352285 448860882 887231011 941845999 913836780 983542968 441159040 623216533 775493490 882937106 511224510 976321110 204277709 697189672 513256856 580525428 767841879 791882294 192967121 725181314 975950497 989569945 168270891 260670272 862324778 970582945 876089921 971703100 122076723 351531764 827356607 951031698 878991657 915044594 771074377 906410390 950119612 990651418 871655399 883894120 498512701 504997887 454132028 775016131 692589593 931622295 357167529 932889555 634129966 668334909 301325268 548780194 322105112 405710056 272654842 911258843 948035799 966413084 25462325 391313193 665767993 833138183 941567728 978202673 604376543 917519487 786233118 806453750 964487119 976016158 508250333 666407198 950777337 989750582 594046426 708891460 598567555 865215508 60920071 291105209 940782878 979547609 822561999 988074191 440579427 656676192 793082281 972889860 663248943 953621735 197244144 339385386 290350812 666111982 817458119 897086850 823285695 913768412 807411639 981912796 74536334 292476837 179956225 850068430 897783817 931232430 820844943 929726405 226414075 795913361 495890398 782627284 901058437 994532390 793007125 837222479 99491033 241520584 271636012 827092910 332044203 762475992 105256190 731019873 508153177 555679349 452482202 591096653 90288756 705072429 928084536 996287520 134165680 204180422 886655152 973736807 190809194 339697860 49306942 731421814 895571052 960309022 806557956 994802093 539588364 657974495 656263643 876491744 824476234 921750992 240553405 330734832 602399894 733395851 226013601 503406066 52172953 678132576 808516437 823967404 96075937 321499424 478392898 710094277 45652443 495089818 297832888 654393989 224780263 815706980 296106778 665379911 958716309 980067332 271658592 633167000 99250137 397977119 537390303 748960747 510609798 588245286 200363891 477066470 60882467 601759195 121828522 813083235 946236490 994450304 126931463 260682893 558175025 678386087 688214294 774901912 197839013 377628545 988251057 990196220 860469016 908140985 315913503 581038600 923097189 981037489 94668826 546387275 21019570 431712171 351087540 418706774 832362588 981012090 66170229 198008665 457921199 764257436 329345777 912002775 814130160 993502733 42938907 338698117 231815074 316814393 247144294 973167715 538349301 606582398 998695900 998757712 312738875 437545012 325350638 582853727 518152505 992538722 240355390 766757006 507479141 630495565 975550062 994976559 492937049 712586489 119670715 770098697 592922929 846170997 830497463 896802117 494876901 498703580 946819917 971447780 380914527 671370616 411665803 416001782 723202094 747366434 485375201 985840882 43503900 382298634 596384721 757131486 92788353 590406970 913619970 932947298 87322676 759761942 157421589 316331626 713339590 753541348 559822584 634124128 78362583 534896663 499909335 963566570 565159290 813750639 245616257 726880347 763081977 912883009 570343153 574602071 434235350 462411711 190657576 453578175 976275090 993479951 16959505 505744542 4947682 287870990 688403853 837622239 941294576 994809306 994137086 997385597 343101485 345167202 112517617 305990589 25022587 827546083 91320971 743265976 473064688 642687699 465393841 803134406 83335631 489672661 958640076 994055364 372823382 541765029 135003767 311469126 151750946 466774366 502034599 800066305 725174186 870957204 510854584 863205304 58985072 586818902 623213429 738349199 566735672 986078081 572627001 664398279 936341394 937624798 943269219 954393127 24632848 28733294 636805071 824705664 13088774 36998183 285315631 514020925 359331819 989227244 258626572 837324587 217339600 362173778 27028388 735502592 818833036 848054535 599494648 971834609 960290855 993658070 382051532 586930070 205600517 515593666 611822359 787900920 110936915 609076219 503422575 519327142 188848125 528786209 120325629 494412375 237894603 652020885 639417629 709305176 850259363 945006305 545444068 723971598 401769718 421553417 682993721 841258538 299020862 836545372 167144465 953179383 300010458 544251991 393228553 772850393 414059272 996164988 950194385 957184505 275624957 384191420 681674906 918317670 799494307 901986963 932054825 954267371 404004677 849577676 678861897 898119295 578706632 995520078 262367698 697961786 124612834 506219206 475921389 550929338 333733810 446275100 552953376 922364111 881665409 945298314 102877664 701057459 63849174 554850295 785146535 923026879 243473858 336349850 723578001 980114044 457999869 782222594 327108249 871271190 861337424 927202071 335195733 717839565 576149677 804941972 727152401 816228479 345102624 884002860 174986400 602067187 594813529 820922901 87385755 415457916 804845549 946974344 615355671 994487479 197632114 232254162 188956568 299806419 737429492 914820233 356406046 934082570 392782106 803457277 772564609 949799658 491434065 821030456 870565938 875115668 994709982 997124756 547575823 991948009 917659694 984156751 111975715 981663586 829191748 930311959 694273580 970340206 854200750 977402517 758884145 840815059 735331742 848774416 359461790 574157315 98957545 172635122 662314861 766359028 466188624 727231096 551290157 700568240 600773402 833160655 651884808 931829722 286347048 576164441 649311995 893559744 69538795 784138875 320296958 444401937 479068537 823573015 231076741 396938185 859860880 928136902 182867225 962569420 509098308 720138248 506783747 922946207 784374300 933966141 75523291 857512513 268372063 526375038 414355673 795189772 929948181 970950557 548279406 912915767 157990688 592735771 864125808 865057780 287762750 803083456 130462076 393498219 868431517 950599464 336561032 517248132 162809872 769630344 668665658 782946422 261378321 452365523 769103475 899623301 454900872 660556997 605435295 681596685 462032650 728773971 709261000 810293808 802587879 956511890 37056409 950901037 125463588 361307351 816824471 839665882 74087294 674586927 93013565 676584834 88499903 349481768 463693146 926636902 596419829 963032616 996723075 997609332 343851735 837327022 855551903 877404328 85580807 96116266 556820251 782087435 834129472 926016279 92600804 476490633 624405110 815906313 22620587 119254026 666620952 966988265 449392761 604229194 883839168 884995500 324499718 443992256 664928269 964182821 614065862 773932883 461175473 854898521 955229367 994948590 840333430 842913200 922679613 997986752 786626119 968890766 546911141 728800410 788041591 863501195 345863457 666202021 811919522 812526992 697339543 745399047 836764239 965955512 64835959 880958120 747611756 795298749 417899630 521245458 840346640 904735471 730371233 952117611 519026899 737617904 22693447 595418559 765684208 963583242 220491211 626713873 972959389 990228295 332042056 798415373 210327378 483516909 333099232 757334912 562940149 867613952 882917060 930428759 416227526 604571930 831443220 907987337 665341791 811034406 6465304 867955977 638271790 989446674 650086515 811666343 726397234 911522179 97476012 100657655 35449401 482581673 972893992 982999664 714492598 923794107 414077980 754205175 283739909 506948354 451657651 668739018 567354934 800344644 314156603 840465752 843738466 944800140 26768723 827603410 56061220 795050230 391372468 616239920 652794355 931925847 303462152 597838998 342020741 621818093 112308723 422483525 970951574 994078314 379805873 755637108 882472787 947684507 16238604 294351871 540594980 793193522 652537634 942497201 681616135 734320104 283670593 753024359 964292591 969883220 671199496 792279526 36476959 653010235 595858519 995541665 845980992 944277777 256437651 952920437 784413263 870258249 647355642 825856532 440630340 907296036 259229545 920102163 161786872 206575470 525221358 896064584 53655089 60416725 394593216 566685673 14814062 532365349 983408204 992417378 156294086 593503802 446341501 760495650 39477657 93420037 616475947 989130080 659055206 738345814 573538825 662775449 302756985 678363638 632308199 894943619 691214810 866747795 186948234 835172021 730532002 923574689 605596980 688714038 959140219 995706511 952020816 958097754 477683200 925931061 857885944 871326329 640988684 729506125 30957326 661015185 87531724 276353003 37508493 323877295 969024964 972228518 740869046 845826924 74236030 256654965 214814492 555971747 406825011 482957947 237848273 583813294 533174395 790662294 994854774 998085156 126907872 733502004 186867929 825918061 471370733 831937093 759747217 843898049 993147227 996613217 434691924 703424520 11585969 213462750 452862755 647273572 190761098 707629439 998501685 998962829 28992358 46229798 357985880 864515916 644554639 707662399 854723831 998884179 652631915 945781551 572169994 643026127 364881852 432464621 794836382 827560303 90465510 366571866 669955167 717738649 132878610 801654978 825764610 957478817 665321226 784009961 715448336 921157961 552369278 912046895 478444512 666915044 35356437 630152351 721456232 955273211 233568247 853634287 620257376 697034219 501943627 997269587 747672208 792243923 763499751 797480188 469615678 859214560 893430435 940222284 717325674 865823327 902589270 909387812 342646179 629506870 55303189 108358907 623626811 903556326 443490909 848925652 507171422 595476056 42446845 655799651 197068191 770291798 160701323 206553496 131838721 767956278 74758663 331242687 397724661 447123339 709324217 838202238 920042994 951469831 895658457 909578509 306131584 772321216 864341612 995767781 868526813 925455124 128622186 718454899 571149867 610747502 762432204 849824291 8453979 444964830 505865891 658827824 510223480 824055781 552149472 898394272 547728461 871200436 183657804 675503947 371245119 479989842 824987768 914371625 601385492 908597230 888063890 933683243 666081792 853499594 48346102 157778368 913463717 938521483 23770352 620398914 542942379 553554214 288212023 955590965 485403582 779556035 173267005 895950751 117051964 774548457 871451981 930393404 694775165 774398270 366172491 731649056 710755769 878939291 424899829 873270697 663219028 746845087 768004198 972723572 926342731 987337501 601123200 653335366 104449709 812289405 498336527 884040878 282788365 667175758 723145880 771191444 862968959 947595243 891002678 947249187 450053928 665722093 823241616 970921890 763357099 918310012 338446685 677450058 694815177 843674705 844735955 904346416 246264335 722526913 540408169 705528167 982498139 996488398 537550241 554295089 304015994 332540022 862404527 885888367 630104511 762043771 335002288 693588779 435773552 475940340 943891749 956514849 228903454 252311553 648922306 695603143 952069608 967681441 151786358 798863477 404963708 468729985 827285222 827875216 63048555 357133370 106910915 571962246 309109784 348841443 81329697 195613825 67651060 207499515 802655821 944370939 685889775 932532807 507395018 693208992 815371054 866706199 73747959 714218409 235966467 654620619 439653151 576344511 755791226 890001772 252594292 402261635 880812053 996052239 899717371 970339781 421501916 992067264 424403441 671989946 691797122 907821500 17704549 540781385 474053830 872692218 656740974 859265398 456442842 826241936 430703329 768344059 472895753 756548853 257378831 383227078 452694250 763799581 857555836 858829894 686591020 953001668 851788838 908471336 376318890 476038873 655880332 978934326 10858205 112918805 249087196 460355946 534340773 846095338 557153542 936113216 890712957 905292963 443783077 621905640 915492582 951086880 137950309 331625339 150776598 908043190 267633327 396271132 430484138 650086974 995914463 998824198 701557610 763015319 213976563 625856780 242222077 820279541 214910790 929986096 768179170 964648894 328153789 643067047 384885072 398660072 790466506 928109613 689116673 689767136 895733259 916861678 846272970 910941973 576422856 838759989 864250046 964678519 202565857 271937334 976782809 982856401 979186503 980898384 636164893 898333124 739663598 895197953 739682536 815738386 720537286 822911504 143944331 698710712 964350498 997955450 172226327 650080878 734650547 899476389 360397255 481656779 292131277 788726780 849696628 937268965 264016666 391212542 623060672 737305125 395977552 682899951 767278194 830131828 507514254 793967496 344613588 991234566 569715137 969799257 317293803 519615039 65346578 431576662 448526937 764825240 242896064 559274333 736225110 983710041 832719655 939815489 213045921 532682866 730197533 849863113 273397639 659151553 951312571 991444544 400701567 790159278 290241294 870520595 225293796 781406345 17531485 110446163 266872932 282239640 676271603 718847189 892723176 920276502 534692553 618996972 812336171 863806653 790781380 849779792 445254569 778351015 828144544 984375232 712185812 871637846 637185184 696440228 878889561 943190403 362917651 910864507 95570303 879220729 637723460 957114231 531512966 596775353 393888933 838509372 433185269 507712240 728263861 870640678 103344997 213054324 436886643 501546045 500499544 794907185 591625614 859012597 18972886 703977041 21627166 457138052 935572528 985159749 693015622 737437849 857304979 972183792 937645385 973761648 854306428 984155369 288706720 314026887 942549389 944078542 861365149 903792887 851050285 924267784 819379345 837732839 900352784 924060159 196524700 516345074 328602248 833904912 939845706 972628599 120718897 491105730 603080295 882369047 413452924 816069587 83645977 129187075 14849151 512983827 709272274 760959154 460302655 563470703 888193377 942287699 659294280 872850787 372480455 823316627 212393417 574389170 228147933 998566736 6394253 905250784 646040791 913996750 873498511 880388144 805279285 921410197 884991492 972106498 912935060 929303246 510176977 662250249 416253172 950567569 836006829 892886975 340076094 795038871 633973833 897825334 538504092 762241956 919038110 971523037 218246246 499509922 95605841 856515632 290086330 775443718 558404518 731565443 189800769 705469391 602014392 986549030 4246128 586724970 880892859 893921168 931525002 943183973 59257792 497781858 333545597 815925354 989450266 996125601 840972923 876873046 851133438 961492472 473504830 579793924 181469996 983884360 986930828 999329966 500647733 721063576 227392519 343351192 636250358 859301921 512852226 555500732 624898632 638476396 776808444 911821616 101502578 693315278 703128557 885025333 336730468 424956382 62686867 709093161 416653586 810606408 854247534 925937184 125172884 940941446 453538087 556768353 522382731 950514408 14961849 496980847 308482101 419712001 206559812 738086712 462083847 497896289 562032889 926252610 62822320 173350840 174989435 785969007 431012213 561817314 918176047 943184907 290851493 321764276 987915698 988031125 589437037 885646392 489090895 795880950 759212470 760393750 269408700 623685714 261565872 517904154 308506033 861668292 226777604 895356315 305820681 572398392 917181919 984901778 215331398 251346965 293720887 809418849 173651146 856483179 220157948 994499041 182546588 335276771 156006911 267175927 145684058 370947541 254391205 519789253 738692374 950358124 677909300 692226313 450888186 623446549 595814391 835781552 550526289 551428107 11797091 238379645 720917596 928008299 336763574 872267989 990812940 999290158 460466891 727897132 985232459 992911650 799837674 929071245 330354357 533027399 971216127 989658176 324368344 776940758 853558907 919157614 385028452 385549217 723491371 963131738 222153270 906574722 978655286 992531934 543272939 739071861 148854143 765631684 61867652 322372197 964208795 997568594 878543626 950707419 56152360 755851734 562559557 899897023 74749570 956678764 508903473 845400027 212697326 943364746 165083974 820300005 18104572 993771502 136167746 451541951 775877729 815401188 847247869 922838969 777018298 969910373 72214716 150102820 229629673 281796152 63782905 519376734 621578825 898111761 143868065 785607383 447585752 975639665 654204422 916698117 155073233 405183972 653683345 665597927 216863603 337709608 419494397 761883321 28174662 475938862 522651533 588592687 811395542 983057720 670625635 785349849 306129824 699874954 587472047 947840910 20801235 29828258 692062094 984453432 286870644 957414781 261171054 446992478 888364794 964214971 282284778 590139366 401652417 556606176 509595147 628773510 505042498 737612791 45451155 886747485 794256877 922497127 941413125 991214876 839978283 897000877 228163118 342743156 246959271 726459739 405308038 852569749 503640851 968104561 850839659 979077381 885079000 900834466 744402170 971876643 334528684 568278232 336186730 779518483 206633752 578421929 195101801 248028596 498811137 624749933 289456796 534796129 725689908 783545404 740883820 935051153 642825345 783789322 836498742 882114933 403999624 834546057 295943516 355262657 683654039 713575216 75059388 544174014 856807908 998158096 129878110 306834733 346043037 610110227 980598889 981814781 508885758 772102767 975317789 989624412 619069969 844960214 83782248 634012103 985548738 986490474 32388271 774506754 702738239 847260670 234164524 581000436 47155506 950671844 482520881 727143056 751256636 802094446 678415664 923463547 551228005 623407322 284017553 326415309 256878840 878692841 489796927 522964666 561028663 852710070 934431895 961404301 299954354 614446031 81338791 815680490 961441787 965871521 435625601 806150494 219253863 563633919 416531131 459418596 843311047 961572197 556349567 570680349 180403878 263421384 637229207 647682201 73678905 672955582 5479940 798058329 913885873 967849916 705661135 781588941 819497070 849559872 192253850 471970972 165066967 479130855 802452254 947713289 438294814 603478678 213478041 408981459 928610555 961775327 788879492 888024876 332300129 732589212 451114168 711439320 581804436 685954122 883752958 993659542 377279226 811046323 366106524 610216677 582737242 833729539 509911427 898837294 281594766 969630427 504540241 583987796 704911557 960415372 748785654 988418088 425650151 813208106 802577391 961204682 142033024 480960871 817350810 892499478 923743340 950426092 42913874 673170320 480947286 605710083 196586979 803390270 844823364 959826569 727661604 866558637 983409156 993822986 688086833 870428019 212491594 816170511 425701709 968800094 823566697 852044170 543906453 691755882 501735043 924048545 801556888 826982097 910504231 933964733 946146358 951597004 743379165 787329952 406804601 620826458 702165789 844956857 513674328 752894398 151644112 366596738 293400656 679136552 446329775 742896783 592680795 756487949 56999837 700634605 758987644 928377780 811165353 832390317 817555020 829040661 649035907 757262646 929393856 978079167 718309736 831210541 3256299 330023999 113102440 411272061 35338738 244442594 330143661 812830418 454811974 489013447 344130103 595727807 787667595 906697542 641893541 710287656 757165454 855028356 149072633 676602263 139225352 731243853 364436595 576479429 356725047 848407662 95424994 772067978 344353838 381023783 105531656 161087218 359855745 771027376 276400827 743600678 603636680 643781599 724156705 956861517 68825614 727578522 929310716 979283667 665143843 827938755 966727241 983214020 930843528 975432401 340317019 385365717 956762480 991742602 467853434 786340337 807008934 982171358 344304713 697500589 607035535 879767824 104454752 495068462 863272321 865692926 645598432 856553425 145457041 372821274 389343578 767122736 983642785 987785784 688685678 968458638 572467580 599246241 420112332 529272464 780241054 793877278 607733578 738835179 936258393 986519924 487554766 762664408 476896951 954855847 663039290 828149601 457458860 487777492 208404907 678925021 767699928 848129781 931885054 937652519 868859151 974593977 679113780 958271635 411592494 440222397 363724769 657711921 116826073 463287504 544300475 745297740 451878332 702828153 36171151 439867940 680911289 744335574 128374959 421862671 563263325 640298673 30444107 443217824 21841494 72187498 521934036 569618522 34160228 518403002 831882342 863592816 93795748 375253121 766378740 830472733 870343911 947502057 625510821 815302679 627539430 725879803 625959264 970427344 339954784 853972759 765449162 840123970 951246270 992513642 626481020 914047066 36849480 927122960 142420283 371456381 209705020 283977010 531064749 678103926 973096847 975008519 30058873 984461548 7695593 182006368 186792965 984207839 575001264 786878553 88120295 867176569 299303688 581163990 403952887 437217650 27287015 895455145 743616263 824478038 74075509 347595051 9218180 306491132 657366861 847127875 517871536 933381871 133933204 871939465 694453946 841054365 342131645 490879285 52393610 577942993 797027629 855143023 654530405 714545195 796512953 985447702 220855697 554697668 178079911 615980354 587805041 934122433 982275307 990715324 171012633 194915708 535309173 983859917 348515351 473226330 650131966 777431852 706467941 928812552 925692995 991519408 959317985 959648532 108894060 426486603 959268754 981733443 849188804 854189522 537541880 800145285 736734399 767270898 826303111 834727920 16516203 843599042 121138510 864952230 129223321 542983696 901862002 933967101 366288922 677887119 806367693 895152082 849747670 965107795 62597846 453585577 209895415 283591861 320874238 524503381 306687802 415722529 978274008 979440905 890214161 990375470 800904536 977280826 770981748 838284044 108823802 710654004 196800749 980042999 718163435 822497219 156329805 210333770 803447991 828498551 943651853 979652245 90323832 497460339 931403614 976915084 625217053 941006192 59243119 870071676 924853425 983255676 309478285 663976261 442258993 549934971 607492898 766632907 820963953 868495479 508758270 723845832 708124553 935160012 94615193 636031217 120330994 302086043 504907134 712204796 496184107 703583412 43885775 551283028 779944483 824032473 582657928 821730648 394102016 938814689 16760290 648776506 326347558 457187903 117116384 524841829 203417869 678820468 247260949 380226575 972528875 996177413 526185724 599317646 868859002 923706092 13477506 608998137 504147693 923993907 534382957 733419460 128067972 758396967 384649351 898980957 579522438 910078853 13761061 793951704 160648072 943580650 844272099 964117424 235878675 495751013 143037609 507862191 898134424 928658851 311733291 315431905 150141198 413316505 787185522 828411881 547859464 550681865 599169452 626803584 292022437 590575634 911309624 973669432 981844478 994081437 654248723 778750525 647908646 784673972 900603946 963564140 751351839 771454184 489779046 642194032 786992589 985890284 4649969 127887537 428282940 539222162 49986482 214711611 669608926 709272509 560746466 858747134 371491558 574364847 520525738 770940229 431538057 890319949 934373248 996003100 778821688 980760000 531007623 629867678 426541314 550089311 509695957 566333617 503709596 609508735 72976753 341459849 392159089 902081838 38655976 192999123 823339561 860947449 604546763 825400229 771437216 865227138 783667297 948902700 688560394 777963492 602057776 810747098 707874215 962802580 373639905 565725657 466008827 764991312 811157355 846212420 173738407 196509854 136497556 992122228 54556152 175489585 745931237 758656086 359334545 415509187 126816070 160323518 563533503 761380723 298922108 481806486 722183454 807328127 770464502 773318859 800379008 986728271 306465787 696859899 76264317 827472725 15425361 545701054 38556386 985345147 804559145 812528028 687549147 881703156 430600751 869454365 255394190 768062750 452579905 984017396 497386426 536657542 148816143 894903225 846730037 937406618 700575458 965921545 354906787 660710219 387907393 770317927 43661890 551989982 946158745 970950551 909276383 960421941 945925607 969268701 112965076 364161740 658851440 786452484 183009255 745903792 681468219 801001194 63494486 404387470 923043842 969138939 671930392 685865887 818827915 850607558 250469660 525636192 770252228 792052637 371388455 674066474 75275655 933881992 301228267 480504310 734545023 988885436 396564716 511571649 265158169 324937432 301819110 506737268 179767524 623582473 218910749 861775511 25109089 257664046 425189056 468699374 947382667 975808131 98628766 180104158 776339091 782380734 615843398 750660770 595458761 617663089 670112993 796063828 440600430 885904465 972161199 996081110 138697076 349413635 942296105 992503821 366957775 526019269 800833052 985311430 752613337 993522974 941263649 977879969 25748674 120818317 597474112 705379976 536756725 545762791 72596891 190776509 253538162 862813221 259199198 988931537 865632678 947097463 920616066 948101827 447150014 905796566 960951232 964020078 557006551 723291626 372834507 547317371 657140090 837721011 798703324 976530806 392692973 919294383 626565263 741306152 370044686 467070856 696457 63763266 482807787 970385805 730080966 840877261 593185431 948204393 177712694 237219029 182250562 951765449 60725724 846450189 408158793 538376608 42484500 97747033 412567727 751106516 883666859 977448933 826288769 933989715 811625216 915037102 998738048 998911714 19691226 176615025 228644250 579523563 116957432 490702109 829170647 831811865 314576117 606167407 209181708 566653926 218345003 582141764 507640028 670266969 517193641 518445789 393953774 431160648 635157913 772010921 331030101 765343843 479742465 714424619 641685635 929241096 627748251 706783736 815476443 904898461 815771589 935722518 96113699 392171597 399889808 669543273 535828024 724267488 958846248 995865920 978899986 988901809 275601331 635120222 366948868 641412120 833124321 900083642 672555480 987314824 606919605 807282774 484966354 827759022 933890940 981084592 355159931 700665333 482637168 692650250 435647958 737386339 220534727 811384103 5995363 691072795 723710625 883943298 559944565 818002754 580064769 682541423 884221659 997813396 147012558 774098301 968232498 974768433 769356571 862099097 82362665 828461735 725249036 859015006 360697891 744129121 210339515 580029133 641071643 872577415 994309087 999050315 605086479 865450632 870131479 908815082 644943260 731137524 695572051 750538708 43001948 225546122 871256086 983847034 240695843 370924948 794063872 998271128 155709793 948640829 385096106 946954667 963298650 975670743 238778199 290352873 426437700 674723668 165977803 659153244 702203724 960439407 384797119 555215481 40465635 127760765 448528207 750158304 848447711 910966654 4409797 467632385 390641469 829475306 754636782 784860000 898037505 944982874 784908850 789964002 38685801 609904307 931682690 934574643 630272279 953847378 27668085 794260057 311596802 840250082 348815749 739362421 894432334 954314967 452514200 811900519 28511188 498596785 404005846 497452199 268338003 632955017 985580921 988900518 412884406 637255681 830950930 925031817 516810796 679850216 513866817 980595599 293934501 964908666 113942294 801048420 658513889 785196708 301042183 517422844 922097927 990908176 722884446 916309858 872003837 987504219 651353637 907046439 775658852 800519660 844941818 921080121 62689902 275846536 495943235 745720405 484557980 493677405 453400978 732228324 999022741 999077380 763765486 788971544 706761999 774236890 495162476 514460419 289458298 394365805 802394552 832167637 386409866 677045988 536159875 738559563 179825026 748994973 101350133 239260907 950052369 997210045 84226484 552243392 161246205 603497621 99855290 620840282 159315191 974021093 378424377 978927660 726855662 939155056 165078330 804297840 299903198 399243515 829853445 833345772 158617172 217331259 86642511 151329583 31082311 848160396 716670127 909577592 65280760 186325250 675554886 801656917 378918063 650584084 302103400 731989678 831326860 891469851 359079301 397355082 634958009 704065611 677728435 861073438 37362835 558766793 883809432 967498965 961606761 984181892 942969941 944398089 787685284 787765334 373472433 754266334 647339653 830801398 254894757 989633647 190630268 502521362 470535251 710608898 704024215 950854302 232955014 542377594 324992696 839036032 699569507 821459002 205004297 823104346 462248240 933433889 839215673 991086028 926017624 982496243 802562344 841383686 605121191 630760888 224824980 483903771 243873298 526459249 5765204 347986999 711948804 996464958 791639894 802172189 762142171 857072725 465638186 679319301 253180964 291588809 315089534 887838821 202102141 769975419 993218608 999305389 922823673 933613777 834975104 895500088 730496504 786793410 324976419 918329863 927230866 929611569 593637618 629700859 650443976 898435499 814499997 953622392 923271873 956535106 314282659 637875348 261661133 493586987 494088771 558069772 114368058 688482741 498220631 551199883 598511154 703224514 702893272 840890936 678346165 772221228 704021777 748759617 359998988 639131941 165926142 973738416 630704377 996932301 504873743 593034043 918461436 993930899 392954775 596628363 112361165 344601042 332043551 337864489 953649447 975532596 79888662 721248287 175964344 803927460 833746294 901698960 513718782 699294944 680856691 914704229 244835740 553364818 256847840 793029575 375194090 960920437 111499540 265459520 803301741 963764294 19944294 925588123 742734819 981935305 270446119 291835274 895466030 929689702 182652488 497233548 48103609 791835729 172564552 881830705 826342017 865076725 975512281 982928175 77718725 131601755 325077934 763402744 755870941 988645652 990616228 999242927 635769248 659434780 999346698 999355659 804901922 867402205 252654405 693788189 317855269 714025746 618354225 954116982 762828474 865767998 241088115 251733550 645685067 687580613 315556234 723125955 527733995 870472909 407289864 993003680 290786098 591386913 579032185 906101763 535011503 706968514 601988809 932891284 6233750 788867086 308555966 482410048 41432306 497436443 587640888 980137114 538557769 731345511 392272567 508482596 818713559 942135556 963562358 984169688 524857536 611243133 524550401 686433599 780108311 819011470 143268957 879028474 954454674 991777435 154865611 997622822 712313485 717649431 540085432 831248027 181076178 756500629 749624395 930600496 896067134 939600584 731502108 826594616 210324080 301997030 963250192 963677461 444741809 575192797 287373042 707874692 161109098 918861333 181764196 985031549 561065655 916983326 319206243 339341171 510248995 673478972 846810429 891109164 904473818 918933872 508923673 509959015 748474387 809578911 371512945 510384877 681564137 994740551 862924826 988065573 101991980 292717687 120118368 639055608 659838881 924485583 812261490 970678745 559453029 618169750 140821689 588011583 615189217 912685484 709354024 755187012 50647862 493376219 673333421 770803045 879317642 883177718 875778934 943433879 33265617 365029322 898105128 970070284 54022920 340169093 937782397 951266843 750836720 965201636 4834419 781579635 84407176 151926392 595607490 610052021 708505255 977906412 896677169 902227715 113799520 325630853 860338273 967477789 726072499 982440143 883560471 991266305 992228844 996564413 299684396 849468068 909458428 943750809 970700279 970792147 700802848 716539312 12251892 402817402 928357802 981004136 131430761 767234253 965122957 965954367 29571358 209143906 635402599 779693546 247377900 648511880 577065355 634668866 403455499 453516140 377038198 658611585 581305733 928974946 594090653 900375730 444679881 663255769 163157492 517694299 159794232 413692307 940304185 943082832 613337320 842401485 163189864 995061381 565726852 886779448 80877162 712426238 332583646 857954773 261973445 934369624 399599833 756719023 280638046 986979320 657509754 819138578 648366738 887617006 488571054 832462008 15312263 334601042 318477645 450149673 477018945 990890217 438689029 960524523 340968196 991722111 561911760 755460304 819700457 876219078 13059064 513740678 989978766 995232550 785694310 862535117 899853088 998783838 517637877 868753221 726995132 811472772 765368903 944872303 945033056 960055828 499217314 673954767 953373825 958633346 632349413 788032796 161885036 249088793 391612886 471391909 827898615 897177402 924168447 950591041 154313323 424454630 929890787 936954136 877297365 995170326 283187967 978275393 150406197 925219233 684600664 946150055 155383452 810896780 216789560 531605885 581615878 778114958 578381357 838632143 917015247 990796379 35359250 358063739 987570032 990625198 35823361 723312388 563466987 799432255 125526778 500323948 154069034 630304071 371750461 530587659 808584752 969233815 898374122 937070230 23426798 198507812 872605125 902135955 327748827 437813905 126764611 980026515 464424932 632769653 716357875 782295292 831282733 844361661 113428944 602357376 770227569 978295518 874427347 948292024 905537802 928101453 75014911 580897770 195994825 518783134 671336057 898268019 64526623 712433025 933855984 950682526 187225489 239967715 953701032 993065035 72633771 209997854 172250301 789608555 159714629 562527142 780207429 878663642 893254071 987427750 688632893 751307248 742252149 842376578 125161890 711233468 761403223 808878952 237159282 312082204 229990402 337502451 860607817 950739264 726563687 730390072 973977574 986395827 446099399 590150615 132723010 580555525 204710596 667500078 284918994 671466567 231005951 255735600 294205954 569080188 141568982 266081032 116213023 846523773 311674668 354524099 649188412 816129613 133129991 514216498 646460545 712850960 765781411 949850480 826829667 944575940 249200921 456956185 748402060 901573508 84986519 738381655 914041501 938688409 910623189 934459979 421151829 688667101 83663196 116817554 404948874 426834768 345009048 778759931 497151281 497801672 915478225 925921213 423005460 758357153 700601553 932462149 8765670 206007402 458105644 655382472 368106323 772714096 420040400 429085723 268002871 300363345 769138759 787872694 744488880 946554899 376025614 450092460 503824160 933574817 354019426 981909826 875669079 909838177 508275487 743088366 415986787 984864069 608658450 777131579 455088527 771911484 480333155 854214962 799015426 965785487 135038486 136627936 782026101 968576162 387468510 916982279 777096870 933572080 398891056 497604849 827706483 938231235 536548165 825091159 434529803 959639570 946447100 995038194 971612238 972563339 875103656 959012137 989307676 990201697 171798478 668086739 841146313 851652010 100384558 446543074 108735149 473956411 815772789 847494149 14706090 520978465 84971237 918159241 682316500 980920983 561912193 890245848 759558499 841025481 561744970 636608210 303025576 831640759 472037500 572712078 958289021 978336860 450233494 913319640 367815126 916547512 64261432 607953512 187575825 241867825 705660232 919082475 109846047 293089574 712016598 958648132 258160610 829081376 585503967 887055990 968173883 998665606 544057385 680032854 815945357 918860334 489383171 572014929 971075603 994340489 824188999 963495135 412576987 510761112 8101684 536423749 334272465 816193488 732168686 885250651 463903798 553647523 582475618 803552953 969405137 975935934 705126026 934495661 439387604 626718079 542581345 877056991 681978829 697517051 163954916 854946019 884878918 923328210 995879394 998529113 493463514 509992382 456933268 589424096 409824022 412212778 554847161 570905733 287133747 385611644 565586058 830096032 86888239 514991546 874734098 883895632 806786602 875514986 205127271 352077136 339070522 345016663 253941838 322422502 830368193 903482580 217539295 247804959 235523326 789842661 796869137 953568682 795159713 946343850 348001880 899470519 389590370 655722498 707556009 940903821 628742355 877329538 449428802 678295516 628296114 784817260 322457103 618910351 401961858 713110779 23374619 697966533 453644324 604023277 225751966 808437892 681167570 879428946 213915285 229717914 30313242 504444882 2074859 368178889 91264830 538641767 78894153 879944247 908175861 968293525 14692837 575047049 846255982 846964632 254864738 352423911 706240412 877425999 67047694 140654455 934638531 988928484 587502869 732205115 93042181 184853422 612797171 948801473 453152458 652865357 349802510 712178917 688178419 814704077 86607435 392452577 756210231 829465824 514394991 831053194 489549778 877514546 962479315 980229874 343606389 923830088 405211455 541983570 142053150 811863812 722694439 862242016 934354494 993800889 924571961 974257360 983603158 995858483 224897256 807143981 505407043 539219904 621129560 812786900 228108147 264009865 441192212 473021733 516499643 520738111 230777010 669884316 231049101 661468687 64018681 800496484 399987532 799336790 804775219 849847396 460945794 702382124 937183340 959603643 365492656 799494343 204218173 488766482 779806928 869459396 908938383 937816675 518430571 761465508 840599600 918627721 767297177 824022089 644994803 893754616 298289842 781984495 418309627 992363365 117418880 463184992 8412922 584143120 249410690 305685658 509516338 879882681 27981795 560283231 715987107 820195577 896705212 989053511 793913993 958568789 450441106 860303778 400706295 945323860 636615958 718625353 806573200 920920029 800860815 817131082 55347048 867778260 212510055 313897287 438563875 500742308 394052415 814913716 935012722 954081244 977105411 980009945 414007158 922623639 651663174 973333207 324265683 696481801 66650220 509500597 301901432 767074119 676420466 694428322 82222368 95211509 219306594 468951213 804430083 917233507 289426250 371584276 175551767 932548940 261695045 748107166 835273750 903284389 558083827 695989573 897952061 970526067 821773843 958186517 564663119 920232669 842338056 875503908 805830331 948653186 429583404 582952141 45524196 338832300 706947124 873109818 419046945 941450144 724727704 784934731 769857156 875775048 343865099 847432578 696824803 903550853 136639497 589796288 292917690 602852121 311977843 349832225 425558533 548933874 972996922 974019803 686466701 884996383 983605528 984321625 484010684 847571466 676916764 945200996 812517118 941291210 723572271 828269982 371711206 646210024 924311228 929697021 63134480 535122789 545841604 676144955 478637289 496563924 314079630 704175595 794460041 955427986 964820090 997191982 826253836 964508026 825278202 906156234 339434665 800912972 924267326 948671727 721736569 933521472 261549316 693946069 398469654 584657094 678739700 716182190 457080011 976051359 751729864 828997864 205671112 635225433 314685924 409814888 363534753 614949194 455685931 690489952 103330507 349131149 130546613 852314974 152525011 520681070 575458985 681569109 891823244 985628736 569779915 993450406 707896487 809373106 643662470 980156833 974050303 997569766 386047863 428294677 912466387 980501188 573500860 915152952 392381171 869122463 286869294 361022607 292875680 400867429 320925633 337027195 624753450 716842137 473661388 993496346 293737240 513585803 178163330 181737559 855725748 969064766 597958185 807203411 465618821 756237781 703323042 819690210 68548835 120266687 287442500 646817624 275708215 747128308 884845167 909140634 648281176 756010493 778821206 876908178 439101584 652248701 519071161 826511806 420942447 742350457 857066537 984278524 805863317 993277915 674399245 769151282 754725100 907133058 829272824 958218887 806829498 807610526 947991006 996294011 488864583 591950971 532847522 655104556 975733867 976590786 408131122 515347360 548896337 861584428 998708414 999006306 456999675 664134412 420275274 462886040 803886676 861767150 314962480 589431565 691643783 788995457 286575409 638375501 381047408 893951144 981030042 987351036 936453188 964390097 698211996 789189036 791937276 922128405 418119633 556626051 293738755 496040813 666528795 969036389 932443630 975080732 361084943 548222459 560945921 592235672 177261553 360696617 433980262 779957881 104133916 934018597 423446938 428722504 155780594 868422694 21806601 322186620 221892377 325236884 137521293 713785249 904414812 961737541 297724375 725454617 549675441 997179094 287240903 995680236 86437639 911053875 311758274 520078989 181338183 645653840 972860758 992392716 743794277 942063221 552498588 864409577 791169300 919947919 759025964 765687416 66367347 895739639 355560120 770506374 919936772 972258541 760250272 851133969 451772155 966166029 377164646 642979047 542052309 757912196 785863550 849558223 387597258 823812647 86030033 208916424 853344697 891461091 491876976 891985834 992868200 996107199 462977710 937412947 757170431 777407818 924680677 933104475 350802397 633284862 26892868 804127807 61621974 702105213 646041568 713182989 605557482 952180296 706039844 988006803 173720559 612651215 123303115 788915388 771736580 909201495 536632277 759494338 304251044 495661899 270682225 447106533 278066814 580447624 949897339 959693842 565085925 974052130 980503140 985835126 364583285 404170866 237710555 819579040 594719966 649530490 293069612 505013231 793156975 820402014 487851296 782297719 719936105 986207025 785118850 965316481 563173040 761665924 643543921 784464098 436054381 651700208 744855034 951039771 621308875 686788153 890127142 989606553 968238937 968476227 847010468 960361738 481660228 699366691 14506407 347833651 486093046 604076547 685164103 994950663 552251417 924147343 488020900 631374367 138816222 654703906 221925525 751088345 573947013 815198209 971317305 973691510 375858713 571088790 385452922 420319783 983356150 997848737 412895077 987671405 731370932 779051518 604896379 701199960 271299518 488102372 632860510 929689772 715343116 836554595 691810156 774154366 442978807 789939478 835315747 898506773 216399593 484754577 8240394 673827206 257505669 958893426 19728823 764210214 152498475 392046163 115318458 641213657 352651436 468110153 658271556 749881377 703693269 776700285 727363836 889638877 443151800 609357524 254075699 597682082 776763176 937634997 90185654 330526682 351213537 916351999 879416590 976578171 490528811 498166481 916792032 991412648 120348623 216306693 294719734 492456325 465245189 753834093 654568578 983411563 19996521 233205020 573784699 980460349 106149998 424242388 213125304 345120300 798642086 976388467 477447331 606659471 567166218 649703328 756104030 825894204 158895444 878627046 699960714 986663466 292909745 321727354 533852117 990947592 660066997 933595170 956786217 973489467 625318728 869577237 407779595 464982594 739508700 938583738 723608499 759214700 143461613 529865384 722143388 815489530 16944816 954982943 554029037 892482430 192554869 671752316 1170333 441424721 375824280 924654553 255123224 944560889 347740020 970781277 489746780 996227935 763864921 817922431 810957811 862344630 3584646 939967280 230751036 483297299 489605458 989593206 99292491 400849316 103185354 870247424 602760935 820023546 684998821 846128332 187251877 355642173 16015682 87291958 1914200 843278823 245368442 575070082 858303117 949197876 378679997 435256773 862765339 986462646 349873644 914476578 308533956 328198602 249539365 615819582 201087207 801007399 487427937 513460809 702060725 824944607 271700407 956449704 517707933 547671122 249425831 571656787 759618705 815042999 714509240 734568009 215876068 576340932 515606063 849535715 612579588 794593903 781560437 835158012 1699840 616871034 520161284 749100579 370527946 552826174 27012701 737191659 3696158 674266671 88824320 349738132 559750697 632166446 909082327 955657784 15856621 737899561 809997122 895330301 450810260 454576508 271462714 353611009 456327970 489911757 594704912 880321394 333602358 567471540 698476636 974582318 848520654 921896366 609560906 990644454 287900105 612307596 266723123 807096381 549728551 784720418 603380018 887301562 44321505 279279378 439680252 839895705 64733278 132070799 762686194 848122021 970052737 978362088 210813004 346224165 859357750 917051889 844969436 997006189 514748869 943983688 647707783 932717170 562589382 977244182 672054823 935139250 903579848 985426691 805649965 842673855 738162000 916924086 387327758 834991426 403200465 896071947 366161129 953838491 165303015 511694190 362537572 729250030 735524998 748621319 855502436 970119651 853543706 877653531 634510098 797077225 672493469 861134616 390196732 903303978 418826773 760533734 425385544 560532233 945489142 991538882 890679733 935471002 579676717 870331377 92593671 563043937 10238575 484806896 417551029 446997124 145245636 695682161 602074449 614636686 724638687 829565484 368416689 817716966 413744098 466425242 908847201 979587230 859206030 960288210 900066776 972920227 137214080 883795379 543596476 824604572 847238423 973964822 924788063 961801437 238557788 938526063 972067548 979758415 107459816 948560447 922446125 982881272 602452358 772945942 66023081 948430841 256386202 272327622 521843180 715682567 189194056 540465464 414523798 620167820 777082155 924239503 811305871 899355123 262379645 843100009 90497022 676592094 744371826 745396972 475557522 649858520 73667437 713101509 124283964 620387850 849903575 874112515 806375928 918426814 929044119 992008849 287861809 665326090 251288563 635107886 316883739 739305137 96201664 717812278 904607849 979986627 810690005 978429488 439143044 784542409 554920101 581892900 240172875 978545269 92411046 153056413 984178170 997355427 42006528 87894449 51770733 693304661 94019041 692144378 84760222 926445098 207300471 429347554 537360466 985635988 185445955 853132037 421613646 945963800 50350695 823962747 320768982 849712479 730079407 771207157 174071340 989853162 681176816 809911288 517997817 845258700 739175294 907060745 743094813 831035882 627536929 724875651 719735495 790186515 623593509 678290966 63935954 697195652 48733956 309087927 969803078 972369547 246688818 792335596 779801325 840427180 260758398 414345081 276754682 914705498 142376173 346635767 256250109 715061570 253262754 299196430 253860390 975018585 407599958 486536778 724714499 868681800 670478428 760108633 12753468 429234373 102846742 596654368 420631662 523938248 361644491 569003705 57203479 93134582 938864513 972941317 772965752 924122275 344924866 473635253 345146919 870888482 332562866 559352277 298976089 731147368 753990883 780401768 140812348 291589885 357842277 615651062 649092315 872647228 883798566 960129881 974357579 984249886 917333173 982604352 689472056 895054066 997517041 998624322 21357889 24815974 71636497 875107865 120218425 341073434 650484599 938388862 296013602 552752932 60601136 136141677 351782602 696701082 526700945 817214328 99316186 617042339 937143883 979884937 68276572 113565212 617128076 824595772 637427229 724665822 643511494 992684994 352776471 629164181 474095704 604524016 779158959 955480308 68198484 718309397 998400206 998961331 874530290 897927875 995891263 998665089 454981640 563747238 764532100 873465460 135255783 216725536 28277788 952452838 69735784 470253987 760302628 786066982 836219084 855116263 649683595 930059406 889371639 943993367 49805218 414266360 762735691 980710430 78446019 677431088 120573386 224922732 682135867 813478242 803341201 948574409 470583617 876970102 933627071 979664718 10975034 667992684 450771571 999375494 761247410 834397391 683591573 692101416 841446955 934330321 873860181 991186930 585454226 802492123 166501132 922087715 92635755 133985995 651270794 900175691 320477777 779909220 799804137 857278190 375010644 621258496 310619670 449248969 759092594 906477435 847755947 917578667 362708902 823745400 266403410 559040480 315384106 754324943 453087621 991969767 742677702 990834055 616884467 684124901 598376584 894362803 534725186 997733311 153718356 849210937 400843515 552924663 614747441 645876130 910449356 934332421 83867250 322985020 407768156 963200429 624755335 781929290 855145156 972121131 8475431 475565205 190014898 257125508 979804239 985040595 403538602 544521795 777342638 818948909 137142617 345327064 582367682 643190377 91590196 830068047 619957331 817043735 937167282 947346923 378181486 956026461 106796812 502348567 573170855 646253793 20037081 150071724 598074250 608959822 276756688 961634796 495630150 713707461 794875526 968552995 42392175 265023289 142937045 604923880 15745440 796837818 725750478 736032340 849891862 989114402 755518957 843251533 620892756 669527794 711717558 968453448 576091537 783412340 711937167 808724539 985780256 988937246 999339254 999340009 322664751 961422083 767879919 808442221 323211087 720489036 769339697 792383260 650036919 791974583 489927199 714512167 385845874 496658755 677391207 713785974 76944708 812210296 903242774 988249034 731384225 976500274 796899056 891897035 375330628 949161797 225926560 492495113 686887062 735474047 322013701 832364294 644960306 842738449 172333825 664632316 528962150 987175846 818146900 987608894 170471010 829964907 800588163 902151295 252577460 956006732 812112029 816389619 199442799 446370739 863757884 962283571 616244890 882643248 599775536 960642759 960000148 965902064 587311447 917834472 516832054 775135438 473992895 828147630 392267432 409664430 953505908 986109961 534889116 989980319 856933944 997123353 185877919 881633518 100215576 470055629 127708991 747805540 744972835 914389613 83589506 113177128 944490135 981812958 72942691 166593349 783071008 823372872 608208891 698797294 423401303 462369931 930128265 960602554 308772611 408176188 894411027 959823971 800688480 873595656 46832719 255608991 346603426 445915440 58847704 264815867 289846255 357608166 569020385 663641305 700367574 982365994 479152331 550190747 497190273 581821128 519140403 709929033 549984155 841667698 65431724 554457679 495965158 988191319 283151866 912104819 651896169 757994752 797069580 957931642 71984071 867334609 907949933 919885811 913497013 936016462 730537256 925599118 43148413 263045119 927191245 950665898 446139352 601165769 493393632 875566643 466839583 763887633 335737561 471469182 787527507 804509086 247644783 844430697 390435498 915037222 197630707 345600168 447315547 859485393 660871745 684905497 428169189 914291667 879658684 943968419 231986346 908387260 218657690 272379375 613175128 690835200 888915098 960082887 923310157 932252162 692533628 932072058 974984466 980115414 813698110 982097946 877403868 962278483 286349297 666452472 85049573 997910714 210537605 802181576 317282590 898477726 184764228 655836284 200516723 640086858 688303061 918525598 555333795 566870720 942681311 946047932 113621535 567558211 752645921 963591910 61140154 815129367 191087914 556099338 63407007 431038541 229929706 608428028 330754609 748564630 934197789 982541973 78064349 154250879 578457204 796795693 13868861 575260863 171849978 723971440 879415656 948911831 595827277 803143922 488386861 709670210 309570647 669607010 407312585 601025997 553425988 947031357 155962928 894149094 3194998 494234625 705400022 995350104 487933680 531118114 520684789 895405976 512122733 737793388 569200209 766518082 752157477 930410974 979124501 990981431 988567292 994968792 920098561 966341273 910812365 948346280 291747316 499356641 601652528 959554393 825356882 936127234 945867313 970613175 882644446 998785510 761870339 909759300 733831217 908703579 596345077 973650506 569135857 731346736 945368385 994758467 51161130 430567107 444829569 588137327 381735861 628417443 661117757 992941538 71525403 181782406 239661883 755570602 712054940 954506451 847271675 887620750 276177979 349634065 465634738 494767078 646869901 656684550 111539271 497789401 866208618 954212138 840744624 937507842 530279440 883739657 162248130 694623776 515187197 960048999 595948816 680992619 535630123 607612233 891956555 909486560 389490852 604430369 412390104 484014581 873836038 906599804 633966555 968910502 532790392 904787649 964907413 985294190 59246421 288610404 913689455 968467989 820542037 950702658 957960587 983526336 969025860 997487018 326390821 707990602 900710430 939492130 480277143 607741159 814553048 898909279 655343754 749890459 972335181 998986559 634169096 940956734 957070752 973319406 444339064 605363845 590203677 625185191 18140726 778144193 991670666 992867466 867516633 918231743 511103224 744736744 498648079 555244339 698176962 964359621 231836843 723336002 370014668 825121822 606598177 887302333 417315326 494004454 182290920 369672354 670973990 998888009 756940831 990237898 133100998 922292480 243906533 885878274 379842987 838800561 629577593 772940100 143407614 431218611 369812475 431832719 144202564 265155191 420216548 697117261 46050820 853729671 493957408 579061053 713015154 880857459 201391873 416655262 581857726 663333367 721613082 973803900 123553184 198066676 442844747 621173824 478046634 623438954 635003021 695001438 168092440 388650023 814241686 858680959 512364516 741660852 770934467 920992431 381735786 977365785 562495541 889083775 117562278 939381567 522383957 539024504 646765782 925072953 397910912 662950388 903838652 956277366 78585724 778375373 811525311 867674892 471758747 482816008 595973802 632173977 869322711 979347441 58435982 67315077 233663993 347976101 151718069 494220682 502998125 907073738 883653870 897365701 505213756 629625902 108454360 598187054 792686064 974114193 736281068 914461978 493800113 670860815 635940492 804786303 687985948 753754906 61644836 655544150 664795399 745003145 106475098 323454243 34310541 811353244 968318163 996031826 740027628 948621717 653875360 822715040 489155488 491862695 373469546 697698509 798964222 861132729 69051294 980537769 574593255 652365761 512026480 671732331 853681106 997897235 146056298 875506669 508712531 927653976 52943920 736807706 813252293 997767685 550672738 998510514 614167426 853439766 923697641 972590318 37519368 105419592 100432538 288688632 106862282 837418039 953086850 974761760 978328559 987123254 944617435 972997590 380862071 614564175 769324154 943829948 823056541 849369499 874763719 996780001 731554257 965538403 870051776 872663066 996149207 997579788 588356899 767664694 787171694 839503496 553938754 826253373 696551219 951863552 240151827 371386288 322979135 689301713 815200620 902072037 661079242 685484356 302351470 798089043 753335462 891634569 632936880 845875023 606908079 926425128 359859235 727422462 652364979 993603619 590029698 956062738 479888463 481160264 868745257 900101779 432869215 790145463 52880274 191252337 79166314 357363528 524496273 738697859 837937778 847206482 651155104 986313684 485761070 752597256 238947779 812117056 319927241 709160041 632608965 726483429 257173077 313350744 784323583 965961415 283743621 788630161 682584359 941295491 450993354 954524143 602273241 699151134 87639391 523369515 183239049 766444722 202636575 418083110 174296844 667687888 72424269 794117384 115184140 371906667 146457914 683172721 392395982 499599312 914539131 957682860 545524805 620132054 167733378 959153423 84778720 906622189 285583034 380729531 20050932 353419785 510642215 769603178 986878792 987550547 479953924 575366510 124783883 276992617 723496599 818457148 858315101 971350638 905858422 979918969 57802600 262781419 28544306 70080341 338424528 548016989 506912474 634720383 666526259 737807184 995181018 995434758 508136231 947550504 776694747 971760250 925029825 965010074 852176052 965410175 106421062 341160521 639861176 798273609 927624987 957182515 256557936 629920515 200779320 974745448 895175823 905390441 99780602 456726629 426155878 783302964 581906241 595815780 222004355 554270303 425928720 976309856 17107808 826991608 528747638 985646898 82634451 309675995 684304888 880304230 38233320 259943594 63097833 398931290 106340167 115561086 171063132 988978219 361838554 840635973 479874231 571242626 448386345 789428088 668537524 850274635 511817842 618392210 919871416 959943069 265160061 493663450 24503324 466159805 340977458 586417179 835960370 921446948 31649531 968189761 4340358 816656617 941540164 942295476 63933404 608647310 109383027 305504216 465926437 479126516 727878860 938290254 911706508 955763895 607765231 728211744 85665141 315095603 888923921 942065833 545467147 729644905 196897022 971529992 219634025 635823986 491879543 601920883 221222027 984227639 933149508 949633142 391995302 684053281 753162131 857003415 438655809 681754535 161311820 940916825 268680186 518770378 198770774 686987308 469911163 716400713 221874654 709230776 806193855 878346923 537881130 869028221 250597706 569040060 140330449 657239048 698666278 745955724 633959739 976608432 443481711 932483579 400631038 493411422 273822968 539424065 759329094 864841168 244841494 689764394 649318016 697481591 962231516 996134991 416006115 907650870 761404850 987545987 139993218 360308687 185851019 908371389 853301128 993965899 261172097 485913741 52261615 185572438 459732921 940786048 405427891 594586133 634554700 692119427 34125859 600314898 974843675 997128875 436170221 681024744 353361565 830673023 584925621 956582184 729697481 736981349 363747541 439558957 121442975 725812498 307881034 537649664 128820151 283308433 684887285 759316690 552345856 690637659 790885963 861083421 811209025 852446647 605875871 639085010 230667815 635426485 255382017 863515056 636068825 691768489 183536486 440879096 276829325 746065382 439079511 547713696 777256664 968192072 83329524 751202098 601881344 870397374 245474375 934622611 787094457 876744156 946665860 984835685 504425178 604488703 111067320 821182257 579670219 849531915 87598104 253304136 281240707 663897843 772495940 983523095 270904569 454989321 619584908 808879047 726555261 769752371 608926024 821761883 605639836 955115570 257982148 390359616 878129764 891346538 903756789 961813854 85623750 381391368 518244831 969769901 655179938 731456729 901559398 932150611 652964795 840572886 935477367 952514707 355171706 650417873 823417254 904954505 3313590 66408435 516979653 965624360 149969604 650605543 341463962 614753221 351778043 868954908 692728452 902138693 690386525 787787559 364126671 564975986 590746168 857541560 963343333 990786427 792499348 917556069 418654889 748395491 678768346 789231167 212576557 774069660 327528530 523039597 17874196 975641751 589587562 593561899 844419456 926769600 268548618 662885728 977360344 983337205 197356818 821474901 921559461 928791968 268863855 555231500 402105674 603157897 627062124 770180000 724473374 724556010 87324920 945171796 138898489 539329104 646651837 934285619 830993793 934938686 224870643 893782813 508656900 904598328 731614064 853424852 137078871 333053562 262794703 828306537 10172635 792776021 959945413 997044433 841944616 859015066 188192401 281980862 893956883 961155865 894249577 911013240 24355738 864038437 614452799 980737990 141711938 658388804 642727690 765976332 864554803 987988410 543806021 965387426 986622114 993906208 47184676 251774046 41648429 178363626 269916937 445974513 635390582 656034158 569638397 572473071 569151312 920755636 799290449 839964534 748465386 860377290 326286996 512104951 847462085 987831880 770166302 907803624 495225251 607712643 501047613 838624072 649950809 707838707 331748433 346501032 113209207 519578549 90834358 947121060 657522677 662254062 570891369 575813142 377000496 840261927 293234253 604234261 395169947 861154981 971472210 985327216 514729688 562624555 209892624 793144213 126883192 496441645 120020968 976575551 187081903 848606544 836855943 862006203 119651008 952931358 458828869 834436871 246560383 852092377 934887654 944125361 581909641 894161555 894468253 920008997 994380924 997476913 414213301 966857818 146794035 885272685 195116311 343243197 354472738 542103381 243006563 374865857 88920278 464260046 236314254 533473815 33821277 783243758 15427211 499812155 825165379 854637832 423032964 534323758 542689033 655056157 4736281 406415854 309483624 790324659 563961475 886788265 569768474 869098887 711253699 801089710 206782276 582652733 194258556 442201448 909802973 951375524 412946636 446666684 367043073 410817398 810410410 877224774 884639694 936107562 257704523 538712468 202544718 771039106 144119897 536165836 882444578 933842270 981106252 998882767 678424203 846956128 645181016 708129915 198754969 794586228 933411788 989785207 181995521 412866719 447483825 454463157 938050118 970076000 669936461 738058711 200201155 881585281 631834994 790041031 166929821 430079457 589753832 968417803 699319078 990028813 90704085 768080630 903466018 998051876 905653803 947305583 193630775 678723952 326762562 748139688 833519557 972352319 793928047 839568126 947618535 978499538 917485104 940405967 647032691 941347733 64577236 531800384 266991392 286596301 284376531 870826895 166086625 940927093 24853197 935626629 361584392 975860587 283797032 923506312 236734720 770868159 704589606 888274508 880150464 991596572 903620901 924567135 595406980 904191943 170175852 448499270 166301366 611975984 921560558 971463643 145305696 345218697 504264600 605791030 703634485 790573603 473104595 856721930 655586529 746071791 802035309 897954007 794871443 896701985 911219149 941154478 777139277 819139947 902311188 913289989 546108358 879011539 902450685 945003026 924758758 998169398 760584730 876054652 904212843 923339818 826043224 897425922 43872670 887571834 618116569 815283212 983117757 991853060 51029533 104368004 142877952 344882798 952941695 985588436 809924492 821913815 481591331 619754347 699248716 943954656 396519913 407964318 664559102 966696665 388702591 418111012 558130993 925850736 625671430 810118358 72616097 497382236 12877529 962467521 468293876 848122560 357395207 407958238 560194141 767292306 631320580 817115663 757222837 849799461 634958322 974751069 27612332 703613709 768383905 811576248 949822187 961710437 957047548 973452547 164716549 539903277 791130966 858615907 852425538 911557862 930442792 938011976 4747683 38252369 650346321 994028616 782705696 913654863 621270806 896580117 280534320 524864477 185615219 948436403 992254079 994037401 935379222 951688567 398077337 729686937 478838255 881448610 413056339 557425516 652395613 717425372 697675103 780089705 354179349 671435617 533281298 857997280 491188295 909978665 827518018 957184325 125715122 461902807 640792195 973742516 612144134 711949590 755201364 792064937 506091767 548622739 235389007 833360076 644645779 793913956 197340066 538836992 342815648 668152435 124239144 837328406 621122417 788182907 346574191 436981991 207348656 257367366 438116739 888559352 572819323 964110618 346630251 845587042 936718350 959226878 591431443 731806183 613901984 889015085 879249364 924630063 893647292 951170451 811956154 894254386 33226690 148352426 714144552 734978763 555541215 957308604 472888455 514025569 866970467 885374094 911779261 986229026 710522501 885916404 705162748 848392949 55896539 335961584 379906813 808450177 701179458 999150557 663830599 943741761 797652683 974619038 209531264 355957638 130392242 199732725 657118204 717952709 673944833 950950495 629315240 937321518 171610275 797897542 776366619 918478649 676133509 986153852 469793512 990238306 850591950 884320980 167434181 191783340 844323386 845977536 518070084 840178961 456908459 516411021 229694178 561732201 207323068 825814467 788688102 926396859 876529195 881706175 657528136 794265861 78959418 597757477 125249558 270838368 632294908 635316140 316127172 430803266 461776890 587458930 213004919 647930012 738577826 826476583 582426995 785366648 765108135 930011547 660337783 949702459 209505908 510064513 251594151 894439409 132526986 846904049 797336489 845834251 930545638 989886854 486150350 644894533 315359956 769129201 971623099 993118469 832431571 902697664 54535964 66902427 76715258 745586663 657509034 734957594 500234471 675589452 802620191 889665634 746613870 966699501 542917053 689899628 456163240 511351572 986310481 989708843 564965217 663859101 198182923 217056588 540497846 946338416 865089876 959380010 41015976 397759648 364658498 455424425 213856323 311900610 320086180 672655293 123340099 359243955 158281813 767268506 493871878 995993684 192952683 203225331 503885043 900821971 990412916 996294050 654528968 729378038 915395744 939029639 190287719 672213959 960151787 974660104 293037067 601502290 911872830 995047227 966241079 976768210 31353329 346168796 84134311 626372519 479108514 603851105 428849160 617121260 852889793 861952592 846427524 858744371 133022132 324089662 830068109 945943643 295311022 843666179 517769939 943268017 421752977 540382879 709217616 709619030 880137267 898649732 934170908 998138562 311721263 901835712 2498224 430760887 92336868 474836843 799125828 840353369 685690221 691069686 161253192 719352204 273548458 795552269 351063857 646510349 121370313 353510831 643976132 795414911 155927100 570263184 495728066 751499092 113542120 982578354 978506609 987955448 374363495 839723658 45942010 729737708 154756659 853700330 255842946 679233665 388978870 602181351 201574987 687056516 896137299 972598387 835607299 874945739 998329395 999322182 687548234 689925676 724600341 880716008 713460731 879698237 78088439 395315813 886181497 952920156 443494617 748426592 162745549 274643434 965015029 976784488 222459391 901052240 785734142 791588382 409422501 806967995 355600873 500710529 273822086 473806152 946151478 980058029 939841874 946325911 730261922 895587964 703716678 766160881 940966362 943619716 61632702 777355449 245573545 326075184 893498256 909867997 779143474 971262159 328418015 830012718 66570347 852070008 905151919 933135513 24273179 365229272 876164421 935658140 91554689 871979433 982654456 985438510 442740433 505861427 981995611 987901107 55207525 987294718 684260758 946655938 356210191 608417737 676455 195423064 585051130 774096628 724804229 799854777 790835748 988379737 306688106 891109335 821137660 840937726 719060999 984743555 240587528 588330225 580038871 871139293 470135924 600341469 398353385 524958834 239799545 403990213 422258297 688082328 35095627 63220844 660752984 810199524 442637506 518046171 684164525 773404128 794295358 843284608 402898501 588838918 388937396 542764795 486658003 690364015 208890230 944634562 331735017 730305543 797546068 825966122 87562290 589825972 680207074 984523961 977145313 977438456 501249224 796765484 631329871 942888442 146680867 350752851 203162810 667652133 925713396 982015312 807528589 909585992 334717262 690319475 605904477 642686137 710445079 941851403 88061957 313396838 442125745 668327105 770882591 826500011 291466984 527885247 399459871 830969457 810469339 906311938 459765597 641852415 407866891 860753322 973289978 989016508 62176625 147392185 234721498 821411845 757231009 789654471 538654078 848796438 120186676 220109352 789546765 964741832 58013302 690355392 798705312 910688703 850078446 904401216 872826295 944222384 895688441 923010373 330805693 488043134 203577467 578233471 377727880 646453603 776086537 973857612 458525762 857523976 749157577 981817943 390829885 616596347 142984817 622677265 810600439 884155548 542766925 841055955 81281321 292823495 374964914 666607024 782638817 990196046 253176209 879569098 613009529 686242895 5436193 903081840 797050690 924571614 391599866 780958408 292187306 342123692 272346785 334460962 519181995 832058668 541349691 881471979 599956377 965271344 846868635 958345427 451470185 630411142 752925559 901564167 828337953 855359948 564618829 710937719 276213800 813134945 202147334 502807166 624548159 897935217 483997429 550237873 115670455 834451200 407292894 450873357 133379671 960242156 971135652 985451064 464071421 808682142 722366842 870699449 784670309 789209655 487744833 984194959 373521165 527142242 548108451 560659751 326704305 547717849 22360850 848585143 165927636 727917953 803200366 824928436 625159515 654722014 643797530 735405060 783637091 833331016 543966159 662068779 246573460 692048859 39518010 156020399 582541825 597071874 321884310 982940139 229719510 323472789 268793548 490091350 140193729 221105552 15941870 341318093 925582378 966869740 38695562 995103277 439772192 506976753 397778330 793449619 941045404 973134763 328999126 388353759 735641611 788610868 485497598 493556758 180769399 335623318 987881681 999086693 597299097 796403040 85748028 127626361 382178396 415719062 186064731 641307936 26654749 456703840 541313998 719805959 105093604 496621110 317465505 627982274 487956946 754884581 431330534 748397032 829045285 981624197 855976930 916871725 424000324 877146214 468081154 881672988 357937485 717495951 467784762 842325344 116889413 414444656 854292242 988524623 933629093 960224087 928150299 948532884 390104849 811474637 493351569 512745785 961419373 980970306 137447557 304691706 268676152 282778906 305325133 998120913 154135263 273830036 433626072 565369401 269562713 348215747 944021551 968956673 563379195 779326966 174403659 488409479 730705931 982825495 196519483 651149435 221703275 627753964 83179776 922647411 482744636 502618317 246606939 442959055 710541070 840233833 224387687 791192089 610592533 860335739 379653261 706425175 374082914 678933002 893495347 903978064 867575046 869140618 199278013 384151759 206692752 459988980 495560705 882158263 571118899 606823450 414973960 552923013 711570711 890635654 655381610 708617906 87879734 162345791 305016845 317100097 222154061 857619247 192398401 604922828 662863726 802299695 248707643 813655008 159079261 228446197 176579002 886465140 548259543 566743678 75241137 936949448 832502753 990730326 203303176 458250909 867818042 933746710 40007608 253003375 676762596 917021333 601797111 657412707 728500428 963700873 907825549 927103085 243931842 769531634 924285761 980207860 92670152 294342949 633959793 776391576 63898325 790495771 130025163 480328798 646923534 690460289 299195499 522487358 913057899 939605051 715533514 937841289 984467360 995396318 710065697 716104684 754167039 773160871 686696194 754946331 410112107 686111574 699304075 726771872 313244832 693817735 317964231 572871411 443215365 886208694 685309504 938293537 928310017 995072171 208403915 290271219 214750948 403119528 807141128 936982040 826055210 925694396 236618650 478421816 612467648 834826177 261552311 876167454 86474461 626170045 96141287 406759669 796046300 800891272 774175470 934734316 283747746 891409583 925567354 948528138 961798605 979465965 663491842 982366564 390825427 463423129 345973481 883247142 131927464 877956380 760800604 781012259 741756499 929314296 640159907 871100506 737880737 765377340 580029570 850750078 327233812 691758075 739011639 843571591 627808928 799306720 791942930 947354762 312446256 970024924 726274534 929815904 857903825 945788584 574757423 950378612 3310802 559110731 762813787 858645615 515580978 772196307 994166618 994511817 521516745 834560277 803103109 917121699 782988082 865253678 969728821 971726485 129241879 195876837 272847587 877859263 813475405 816107465 647218015 741112787 865149272 984709210 953386133 972037911 344966252 803946208 528045130 855674816 113139769 305768850 210275907 511066315 828124617 974374226 479200801 834901669 340096480 580023750 174027353 962416555 472412949 946947612 233609933 872268695 288748637 295288909 966572204 975347136 176758564 980356626 797363865 870216411 506230352 923404639 592770692 888209999 15520930 153955537 302383743 709844276 764100913 843751971 848716747 858896408 75028645 923979569 762383558 848053216 349610671 978992715 926275024 956950897 500278445 630256045 211531252 273261933 785671900 985314568 646071334 778315270 96692185 569079771 518580711 624755960 895275402 977523673 836192159 888430225 378971149 592440790 720284075 798290454 59591426 590192191 202517314 957323059 179909391 690522431 863819346 890968611 250828050 349158562 804323466 959862399 316100977 775551395 957947971 983530346 309443696 691678711 978151699 988475663 186184194 526377118 213948274 218947915 911223614 932014051 641532501 858668224 601071276 751474045 323119835 768636324 217487807 723859905 8865318 977677356 167247534 239811765 184518635 306127016 250177188 543012819 378872748 988786140 472308911 710175556 52774400 504920864 739087964 794231689 315776056 654273937 833993274 942314547 532606424 883065003 89429803 879165407 1688533 91179481 737958532 884465805 522512180 793860430 630297488 775635079 997955726 998745118 555631197 877448935 413823718 556947044 90782532 307067212 773135643 906701588 954100939 976623072 624912172 749117330 341141780 566316986 523697467 939073137 668394659 837611513 367077191 701646440 300081999 941195269 286642941 842099185 523470910 584769835 739293321 869641648 106766336 276680237 420954200 597878217 161709158 974907816 401883481 858032059 635285347 692121136 317179539 835797669 247567101 627202229 586602669 750635445 255737542 580851618 696104880 702866570 593820131 851118697 445499304 945982476 579363065 777308085 58875211 329446685 462742423 774368879 289345660 582230746 114980511 482911370 212510800 776631655 258441345 726977214 531502291 859952699 620224972 776682623 309886201 947278367 883555423 909895751 958959751 959566715 829440650 915725444 628232748 959735130 166473545 559213802 415716024 996436152 562853070 965849865 556096695 821337517 531865906 900852694 490205493 790063565 40010105 982215269 291544246 481000186 470182847 967929634 196970557 955320735 569853246 783033483 263012691 501056697 829605517 949778696 342128416 711082090 346167625 488040824 564350037 626074044 77172713 842029753 547980446 843936859 357843705 732523370 608676399 846390643 204204912 744958230 103508706 730930182 327412910 505664886 111279346 721394812 193882689 435764692 63234608 497365980 217484079 336098032 898320437 982332746 717567561 738123767 424926734 909317160 588955747 593306296 551227866 863343793 881404215 989920394 50738118 364435343 282317942 859913703 269012700 769291529 540610157 878937699 557379463 838693948 923013307 962964107 798688701 932400814 193903950 587558826 150756673 920962573 219341176 426246012 504833369 757437893 494061015 666026930 826467869 938169422 252054681 510412454 176447946 251076920 129856236 293667110 718040313 901321924 70910996 881125669 40848163 923764270 576241223 755423869 519196318 625696517 843793807 972566483 322231037 838277210 306384789 876786048 985421536 987881091 381989643 448111772 768634527 815464072 574934030 714358665 544191972 621722312 210403992 399364492 866487834 992458961 904917896 978399082 904980878 962121660 94674755 858256341 960789501 978630881 298606300 304538430 409297021 764676599 923054545 970530101 472882478 798994770 140727351 756732334 485500006 502113433 333204469 566886805 929748680 942750616 372171651 610302638 555371768 577546520 531785452 770089463 83105271 571720079 289875429 391613416 234454064 377061452 105710296 349258607 6800035 915090396 187297263 457297359 442901643 895044268 705385452 897788021 549892861 904763203 640676941 780238085 25824102 391916954 606532538 718449162 277861071 893579313 592440557 671687877 314321881 828249246 183444533 897194816 423129400 501755094 526464386 776129748 540940347 792510849 426620676 677346044 167561253 625075818 87324128 177245259 472473814 791412329 725295925 972423421 110948254 583451744 568251700 766262019 647371912 670563281 957398228 962744612 955827025 996506410 690043046 830527321 146936895 548376504 652199699 722403055 889627456 890679929 241961386 780454367 415052236 415736864 696785849 983482968 564703339 754436331 101203417 434194398 675452493 726409804 851968176 950824865 14406040 727988682 520466398 902829932 622212009 769990172 187786237 917550645 898862396 921850532 239720708 804156478 834751203 965997053 235342471 835873749 856157236 973890616 953257604 963047742 22442066 69710816 155734489 674707268 435143153 544931259 701896285 788357426 318918804 503892491 180811809 854896712 397057761 742694205 379000269 897518130 991414881 992978722 130275754 840521163 549949480 598689824 990312734 996400128 199817091 235472792 554400177 934600745 977297943 989543878 982811980 996567693 465057936 750729298 857395584 990418672 918786740 977921743 505837150 629153932 413643842 645717608 142025099 660898283 797577791 873095016 316408329 499614743 653410687 985706319 98945519 136011458 919190511 932455950 443222771 659097023 23535624 226265997 195084531 521320643 435079461 883484154 992453222 996016430 477642266 600350568 886421855 999062822 591934875 630563048 914199395 972707912 602257145 872654633 933036875 958066842 35485504 333224291 907411620 992004581 664497875 897083818 363871362 561072480 79132930 917770139 176565244 634011340 301056128 540411205 646366983 877199439 1042919 471757865 473316655 699563067 204781374 400247540 584568896 883394071 333185629 821294142 508642253 672711344 799251834 941637227 360747367 472383775 960463880 982166155 35363923 806663801 817230174 925246285 718042076 964178322 204809634 456949189 288535926 358176795 783659418 956916460 831983816 947334926 921578050 993308071 781347072 839065621 731319077 740469669 816330080 825875303 918131755 992549095 362456092 509731370 716673629 980103933 796631098 805498767 556914878 925996532 887853958 904060068 35485705 655869198 119701428 289232111 926131827 948656514 89134561 857069314 865315949 881599644 533075433 900864497 475109975 614591078 725640813 728351662 505894315 868092193 928493974 942077468 283561615 837837664 404885939 730537654 365881460 555365168 162222324 578090090 246373485 833936246 769414708 963516918 215497236 662146303 67795421 753790019 541320716 686418506 114051728 477895545 423785568 552647196 579439013 755670234 573982397 631376341 898615701 962711747 190324725 514158633 267273759 315251710 839563771 910347262 224637122 736370441 854669783 899395518 312207706 909528518 285078336 713948220 578916202 829251897 643740314 675326676 764310898 971922261 393668180 967868714 181343121 299864721 623075256 726920868 249328238 526411620 17690651 696441306 321538120 425853820 963784870 977576703 884873885 969144989 966930651 967461024 567644484 956166432 954248168 962048856 51821563 361603022 641495519 677561198 473433048 749601006 946395054 993642203 307838271 596173893 946483641 993685768 983430413 987532653 540976798 809542570 94304804 403203089 191815623 904259863 980800832 983334313 433662593 747818064 385106961 534246158 828134724 865192011 788063575 895626549 33852080 222691003 864924624 906448525 211510690 979309037 10816534 705751946 427355688 843315896 475404569 870996182 966007622 983562725 197509951 648556622 267079755 434862701 781562694 946103029 999194129 999225382 501156286 749530337 669314192 707066454 608141829 663320671 422835466 751456292 142761641 960472087 362399830 547203130 678183682 943742749 589372622 867923387 446019203 727633898 899552544 901088806 614259371 665558300 880216852 886058845 721590685 776092635 580344072 805259955 245111681 587214028 990529595 998246652 778607755 918699459 663929504 778018899 735423071 753896843 374908016 736082713 430803346 760613649 778329106 951071828 740006421 920331868 859010119 929392787 958083303 958684840 700139190 910026393 484980188 968996698 6612153 129686293 950302583 954272955 930080210 947934177 20865072 465345995 636365117 824634806 349916379 821497117 689130441 708420363 270056939 322923376 692288107 860735126 388222016 860051145 896960022 897718335 705747012 763492132 9452343 781580196 789493176 820012587 293598617 732323099 794799168 901679147 28833610 421896331 362516977 947836533 735586797 749300319 133630915 467796404 208401161 255379083 389513598 638293840 77610132 822308592 748825645 754052777 484709560 979786766 558712080 774042562 498372614 726294818 621309305 739882129 928775573 971991376 125588564 736489873 486201762 988024584 539878657 766595795 822009780 937827283 399157484 981213583 409554828 535994513 109403970 602605424 863893180 890318203 408202987 844454986 55738181 172988072 586650401 858764366 567655872 874310279 860339455 903047797 767947222 995154052 833936260 860299996 564592271 946072408 525756215 635394657 708550798 854149978 545033692 595367778 211457935 643466655 416613266 438231855 156661179 329175470 970588425 972445436 970818879 996638840 405445941 428794280 184159516 975375429 209742150 287567036 346651579 769372636 337548459 586297963 321058246 797734058 350482931 499683541 757944041 973825942 173780808 476535924 653851830 880506618 511378826 707519004 671562596 927640410 257218131 620713663 226819505 578744100 663993143 940396371 635447939 883725003 671837505 726760902 565216670 607827202 749317595 784648090 516899735 887125759 158137242 543651694 717983060 937734609 868931304 987808268 693167011 889131985 991682041 999114645 391294359 405327236 747940477 970344804 584236421 758644931 410639061 486425723 80370388 530593554 985263851 998120956 386061521 439420769 929515498 996286956 310940894 765364282 86482355 501992023 796530574 879659644 446353054 516370525 423330214 492215726 819948568 966838809 683085608 953199457 121901770 371741296 368996545 457609850 133696315 200818187 284326302 413707924 680064374 773367764 189241626 749037605 683199277 735714555 625886753 812986345 282125975 871786572 902942457 952772580 943177057 953612504 863057197 881432872 119213635 766521535 996303691 996340398 106696088 458008760 824909105 912016771 235332172 820598630 202820315 939266712 580568684 669101992 662032900 828635200 895996296 937818026 481771942 859048910 823148042 851253860 991444176 994909164 371005508 784827062 568064385 785623001 341459994 451139425 46051512 732209409 394613962 421733702 716615412 735190386 664959262 941138240 806501509 818778862 395785668 696092364 183905749 287526978 195775709 626132099 558128040 597666197 531548426 857910117 785554029 878922575 532572173 678868095 620851540 806141632 675984105 924873554 35535853 680826790 900602130 922512614 109750767 334228180 431360797 970411764 924467196 985534900 43259315 582325090 809675662 824709918 190860881 439686428 7755935 599776980 194188283 943398094 88803289 99209808 207223844 992041936 886303458 966046949 365225946 642350232 283203914 393058864 579256000 625811205 76123489 141586158 857007869 987516913 7524487 589265649 873711357 894084319 976127115 990369823 643018972 914342897 52644285 734295125 981895018 998822526 225463570 525072611 704706998 980768823 23318416 973652501 657998657 762405414 967911504 995012008 319803789 429719390 971094794 971322114 313187515 771423179 169244957 973181700 67581244 101430355 552792521 703513440 647392544 916424849 651915744 909080908 846387215 887561683 479840245 637326043 194355744 225845058 474823441 938079801 522659731 947665336 701118121 870972298 120824417 685220970 511051907 512102520 232001791 319927129 44058172 917637182 463231149 907339742 941086775 964453798 684779640 845418784 802425875 939334763 505867495 539920169 214126456 948197404 367866815 377476227 818243573 916296554 872612355 930484557 357031338 901462431 793124316 934028560 175752504 923077000 284290913 663575544 220254623 858658204 894018045 933895856 304264861 382470821 13720315 762783838 443602234 486806263 922305673 929015350 800906622 817870160 669019687 752819540 886594984 995569202 833731507 910635094 733096559 785568465 799858257 979199715 107626562 467961804 364187405 928641106 374121457 827273812 130763413 461133851 892986447 936697799 291915716 727292908 15666029 874175648 447247142 554734335 450345148 690181348 720265715 895270140 230052628 655755802 236442198 669410274 950475195 976774544 257933642 938234221 854324900 870485457 353728831 803093540 100577627 626676967 283993276 884225322 998975830 999185534 819347801 933992193 271945826 605315777 295054852 680438248 198911095 624447468 954112203 958309622 476802562 710830023 454874973 925503939 765542566 963306790 761351780 986104184 373686010 988670950 509918627 613078072 753220926 906979790 603397053 641100452 909038248 993970205 649395549 981882396 425321405 704892286 483690088 985298258 621182974 919930123 917611233 996401251 763738890 955632084 941119477 988262861 370260785 969609244 552876771 565189018 432399261 910685322 983315102 983355627 627688704 834463697 188522045 552881627 530694300 766285620 713828795 890625021 733090438 935898347 315194124 436212168 183755476 249637473 739664999 901427510 354854233 525107215 974652318 976399284 182983646 753377841 465569413 550177696 620707096 974127090 673296971 913693191 216697198 712382583 29704222 527874512 705507304 892235681 785609748 945930469 210002810 600866575 665862515 962140994 490509087 842622862 330595191 504006188 494046842 768170862 272266017 650617302 843760378 998357737 992513367 993367510 715409545 919083483 451240276 888804701 554666334 752142379 769327230 801406083 157541255 895506267 179306324 212104254 759868350 819952540 793260434 992881597 349433621 772573848 763245295 806310705 44062036 755657500 948311903 983840983 63178191 806832308 704342737 846898973 279997099 475681035 53331722 470749057 301231146 468313335 178913199 982351901 932000575 938402900 641820832 891973134 739744273 992365069 136987401 784771154 645695668 929521742 28765502 793967684 432346696 503198045 422222197 625579691 822520245 919828971 552355494 695734786 463687153 775031023 141337212 358736197 692191927 757843024 253599794 565103503 376529334 465157620 331467401 774854932 898306494 997917923 809544982 976722973 104046256 138607391 627317313 794618135 833576938 948269123 629601048 831203682 199446320 560600171 688239800 775279630 497014261 666438429 474802705 936270481 460603859 815903292 203522442 549147981 384447943 411302087 777781968 780874126 916492389 963344793 357037347 810489173 739889707 788825850 324318547 850601363 393708647 406869277 257556498 747943565 87724706 550845484 10320644 577990497 211414919 869485055 234783966 294078146 846625488 852789357 391409185 926821670 131109127 271321273 918008022 921007232 536509166 593180864 838593436 860758495 376943538 995910227 34834176 311824795 100540598 759658985 637460889 758950450 389980882 652546301 455405001 828573514 373854913 588543293 820667365 823378110 507535954 715164434 956436462 994825660 684771903 895915810 857565978 872931664 691391981 745826166 908726904 913765039 817414348 895502928 337426603 630275660 813036991 944191864 9876490 958127063 19453892 57804052 882228822 982041389 84759496 288460480 853303300 887252748 615667355 866871845 998720584 999170099 94186669 768589142 620088074 623784786 656029557 728394751 857141874 884877592 213651405 223853957 199872167 819669492 521511160 585533380 121918928 600907493 936248013 974400716 216104158 800656090 582082732 724532314 920415544 990118903 809039805 968321760 675543278 974793199 687901508 943672327 579381955 753085684 543243258 915469713 591512038 811625242 803138868 997822025 347761907 994322980 53678545 974344786 809279573 991517167 804228819 933571641 918586842 944775341 304327982 431329539 634195257 843715257 602124402 902544676 543441510 967191470 920067442 938465067 206765049 846741980 795923620 873268846 813748759 820070193 375888165 418083185 615774813 943298313 577183836 965362334 575445488 701723318 94547158 608832790 746356376 976448006 917662934 948160721 374378337 684441168 363820003 707672051 500506415 912175116 671989547 840984456 226132424 368169068 892828670 929016869 183337877 696880132 238599643 969391015 299297077 397358208 376459824 491179679 231900527 978284716 880556338 933365255 964213571 996419995 1229338 16464332 112579547 400981757 253878894 586180192 875200560 886013920 938907428 973079917 81463212 569950292 805765009 901540197 371383611 799513972 78137805 619400307 398141489 615371098 725553512 949650703 368071561 895940994 846954383 985998399 559669906 948483146 859778273 984085982 510175422 548953466 279683038 604169967 652698468 956426961 423552793 527863729 318967632 626139939 853766350 892310802 58949024 271275964 446616937 470558989 956999397 978532621 720878076 882805940 254794019 331181528 293786010 791953685 186078713 373356155 571030066 634046850 838664700 868815280 869913313 965743606 622328527 988326345 848133986 882044590 995100391 995179737 898796645 983914058 60572598 542545365 23701073 955939236 927521951 929167876 168891664 616120998 20631832 149658423 414497903 421599473 837188065 907512791 148643546 282548168 384066435 524062315 552099029 890988037 460615161 650940044 885917074 886010283 823117166 955242749 618888986 997212828 329378730 393481929 618283805 730951170 289428384 670851206 50123044 138177467 849225825 885586352 104956834 325551495 35317172 55738423 717726568 837425727 453256477 606461575 623725154 816745483 709922359 812712512 532522103 832604598 327879953 863957714 786078726 899210242 248790493 412097076 720167518 799567753 734586226 972113129 590087914 683604156 55223327 492007847 533967437 942878082 650545578 723638922 987677408 994320391 71958187 328110516 705091995 872744404 713461723 779214957 774369177 803544525 352111434 773779754 68930662 946225633 56983156 164330816 323758623 953766163 474188156 672171151 885455127 900500423 451153372 485965664 120151789 392772733 669227785 968928558 787103941 879330183 688583254 709685646 965464123 973889545 163860457 294725433 164946506 401164944 867478046 914197197 65712761 827543329 570938726 954278722 529937708 680345798 977845748 989913416 617441663 962525347 597699435 722389204 303914003 604581642 848663865 866256699 934403709 985909822 519021793 894049517 564119229 673837445 493783055 832967841 469664533 473989197 936978040 972336211 374160457 407692947 129713499 337029390 706297299 948861510 225284584 374354576 500307747 590080650 664956025 700978480 47516127 57274466 417274549 648465354 843411883 937013290 612045199 789667600 63524057 672022533 114765498 291100946 229831234 389527081 516486463 893355023 18618748 711668134 862885556 883510544 228007936 573944742 560325611 595640688 835756853 937244772 104733429 348492330 548164093 926176139 581927605 970064668 638344302 952346448 587797988 614897556 209445000 640113517 924748275 986285742 662664090 959118637 507943433 887245704 851222227 947906257 945919269 989126377 776193796 777015664 523499861 858561024 676389938 940605007 879693281 911979213 948631812 959770205 594441398 775087042 174432319 239394006 676131238 697630924 426389816 475576376 719442698 770471147 452363027 476274302 321755742 383047566 230925164 850178737 892981233 961916115 331720656 626905194 799149723 987841335 931772107 937344093 665843749 928666380 243540957 573380037 548842069 621671960 603092530 891211385 314683919 974535831 473565673 701012937 854379145 917373583 540848093 759003679 514809755 682655956 656591072 686295919 995709980 995722344 495992746 601037819 996725548 999298563 626270530 768371868 482328049 904074298 317600091 655887525 522691972 530588995 455828168 560880687 416298104 966974204 280005482 874121448 25962390 155883395 657746854 979991304 499345712 501382281 604319429 930405623 535274799 687812888 194145678 416650091 537992144 922130093 129575777 431027590 35134204 923369607 757189009 948065067 188599815 858967430 604964286 893536208 704994853 893673136 546827716 877748913 437548359 913713451 991556329 999282264 419474494 540742198 195742723 390562553 218337824 830075998 953671104 986897715 532341190 661974803 309138279 868460455 817077530 920178240 372058274 527297457 613783378 878916666 832983425 840085387 96398618 402713237 149064417 437155320 667789796 837921776 650227673 898224212 767343180 840513072 914232077 993013357 546636785 847493549 816424660 898742702 101788950 275502827 556253406 576180173 46199555 231324391 578735068 942885412 43393285 276788721 1626148 680251182 913559951 964198943 261979297 963467771 424588132 513718607 820702611 855456251 560746031 854931646 526187146 574018186 894075203 921696196 984163146 998710419 806749879 838917460 317910490 814685141 401198031 824551451 942187447 991862028 154253189 767726753 145900983 708119967 526407022 701667385 956612312 967599354 696506314 800088571 713776051 871953134 242442115 825579350 255108057 650248527 174352600 812672715 885974362 890796039 877937306 947281970 403902158 437460101 674456506 750059804 582237636 651954579 944206240 975789106 869670445 871878022 105197734 231151425 645388025 942553201 729084768 836621144 754015303 867748161 261636603 744198052 103792146 568076532 152866737 893042160 333282481 933504054 417107920 978305014 872811240 883230404 214716977 626027379 665491022 817253413 336025151 467344796 355126125 620543700 940957470 962509772 5227687 430902375 239190202 378368049 598739293 750827263 699561635 959341251 253870829 770097780 934465480 946180658 470762681 865214948 552354349 789314870 366736488 516170440 569930923 814664574 223804093 958577837 677867669 976504529 232150415 815187155 149639678 739373258 455827794 857363614 702727912 828999919 280636149 338465050 27403123 984223428 166413216 170953366 572289344 724665543 769779667 813904983 249693659 303660128 531380870 576033559 994128896 995202147 959037651 981460426 308734211 953666378 245829036 933964677 501714514 980805907 335673665 666032408 474104372 740865631 301424533 695056924 768606832 844560470 727517939 960071484 588873728 908691662 170139680 823286713 899048866 938828641 842048206 909706111 877188230 928879227 392012634 481487703 853737746 880979612 229884126 482002889 939265252 980401892 48893942 347233215 276011339 794946333 361018547 426598805 146985090 288993786 935797546 951035338 65298915 737069552 589341961 643041265 121868419 513536703 566462377 982055699 49938532 662712522 892492148 947696333 756116179 923516809 795530811 903668946 320276098 475523912 605460952 892945025 264227618 345803993 334410418 716865722 310017201 506140083 673294534 895966521 479233389 981329250 420340405 710950380 181979715 980650873 628807031 928866787 503181913 952992553 673657809 749475483 449147117 950336254 153747991 230027137 898363755 990795279 510679434 519786984 130916575 464956934 150099110 417329375 171630482 432933406 385323362 492554501 37990948 576448538 62144226 863458885 859685685 959717960 634980341 802269500 106552887 333855872 93608543 717242652 593701497 787271493 476579339 629363450 13151253 790322080 432917519 438568196 323967628 784132704 965902562 978002939 277239520 325297246 748993507 817308751 665552037 995846150 452632862 773243711 920993991 970338509 472898578 991923434 637143662 792433585 164825885 326513928 598290189 887037998 337471799 872249214 202272587 650849984 971032546 984739811 519116143 550863451 445028108 881046973 731964939 747390454 902194773 969832825 983222303 994243966 946677814 988903805 683287120 979411807 776569344 800856403 625818854 652580985 318297074 707051223 396558966 869704469 263612719 566564185 38959807 921466555 243937504 701579987 498252903 687283392 599416573 981456390 867790137 941496887 424289607 715798211 75027833 735844249 200615998 512179086 124772068 536252670 849098875 899418297 688933215 805512492 524964320 756038909 799101822 942674071 555515940 837074914 957146944 970419132 874076317 929864402 728754970 809761474 193224151 207443451 434186513 893086580 317883505 959344307 920391377 997434648 656696667 866551115 153347865 461310547 383080457 666198775 134345872 181250625 894875348 920448258 533619511 755532406 896211310 932321658 347853849 979597090 898481794 909094594 92419675 547956361 186952421 872537203 603213983 782953338 707121478 853500669 39728587 551867152 774909654 908102163 329032165 899087049 615455088 989284454 526484323 710945485 88197157 755799971 839884336 922624734 51387697 390644346 954816061 996228218 895365376 895489725 146319085 632897035 315155452 948781289 596994800 773621476 124622944 504484291 852424297 962284389 324656516 385604949 417606325 779720224 544810954 644847232 97809546 615985695 555098631 576720541 728142677 888024920 729642469 768870664 480950272 524671804 186126566 432512345 6912372 904667357 771872115 788609020 727793783 983727501 329346356 902165303 75234449 268310419 263585699 747381650 321446790 714781019 707021026 906268837 150758697 760006600 698906317 796884018 255721194 887790385 929031318 930048676 147433803 622751838 113904757 180220279 40587130 604537669 160348476 841100526 720275746 990770401 522125746 703304973 962141856 996180977 532900534 679488481 133872409 970896870 24595053 251554513 647444607 860275987 369854326 802150900 378529300 595665456 662222600 779342949 976459006 989414326 604764582 822137267 45572457 63624111 664058583 976910902 379744433 619387691 567705155 690329860 399780845 418572473 547251993 593655639 559616188 565863908 111702788 279118128 640572027 880155089 190569301 734713547 206020311 788417973 252078314 323757717 780623773 931640755 369810864 928518496 208660220 718269360 456750365 633789358 189497173 577532938 241060258 520898862 582805442 971823842 634738183 681831962 421741731 913327772 806117526 995237930 790403991 882522395 861775222 973451204 986267727 993476022 104594746 923292034 472603179 752031706 662684009 665186235 825986123 953992020 124900693 393927178 674070168 879103776 59022569 525915267 582962397 609775720 580375659 889342331 78290670 695130741 640298352 694650410 810256631 819919825 861321509 915173980 233663858 523207946 786221438 958089473 275916913 481223878 913151075 919639655 748073042 844254659 298950349 823729535 1088920 151860149 878674094 977742073 241986139 525016253 10003579 581704160 507973517 849814405 971464566 998768628 913206503 942355012 243682515 435519382 300336548 969100443 748485884 878545645 162092029 804874513 613202024 661294998 408659215 637093986 350923401 758695370 365032924 831955841 927009657 966157320 837864926 876747155 226180733 879171382 630832114 847662463 139542621 783981488 694766474 834028121 736789573 775665857 304893760 987319709 937813301 998547996 479142940 938621055 341926579 968977395 468486025 784107572 101287527 346662885 665418550 804679566 117998373 690539124 113751800 321330426 637725765 931168596 9683802 198452133 981247842 984938608 540017979 583260054 115056039 919471709 973823734 981268718 187715005 589511462 923660650 951827494 466559470 761496970 754450688 938166093 795204261 857787651 794872090 809686662 115484713 518419634 854066980 888429983 523757684 763315035 631461704 679945960 899462758 982958499 321670898 377688920 258966003 832551469 411571565 742717258 524237962 638613361 355033534 904767517 165398233 600243524 476043595 931371180 458915819 767231993 630990231 773551665 350126597 991082298 767563144 955788719 106315848 918293859 363780307 574676215 505928964 885240033 870535987 933283006 543961755 929758507 177867600 226953542 52172004 105346444 592253295 631419728 948774150 980714136 587733685 976974995 975618595 988620420 433510806 825990294 597060078 880331683 223008615 651396194 18779469 892942860 483379813 592083385 92660175 593372127 40733075 286068047 789784386 861934498 351600851 905585500 321066638 522246875 936606536 976938438 58985804 214204236 616849460 666523439 206392731 939508563 378576993 522850142 289651231 592951532 553047734 944986243 417879018 428967031 451867988 702744210 35727853 510121563 740526048 954577798 861487556 920082642 250338196 422366085 3039659 775932416 641440225 952845559 896328464 963784996 310675879 373245134 507697498 650158666 137297041 733992928 438775635 727791029 719351552 862609165 341326888 554206060 423667939 497658868 333156228 651043377 959235116 997318227 706854466 894044616 580492437 971305384 133627463 373043292 763839575 964810790 41258584 167605369 385412987 558795074 694629471 756405495 228603986 940452710 678582313 800964536 720026843 821875026 73299192 245220629 221503868 455553571 18506848 504874208 246585431 537926238 472004360 978579786 543654457 830442364 756267360 940039666 96050680 400122936 733722318 875300513 594840168 945312113 311834992 778308721 497329911 612677640 311978027 970879766 500142425 765367880 902273755 968279677 189974323 995424070 856213166 983815921 64491266 416188553 257172221 444915927 524088394 850539906 407028038 910742871 278432023 397998286 162188530 585837051 26948111 239259076 55379036 907776496 89099356 612954405 835863238 902030581 561892508 963599472 573319133 899262688 399065120 887152729 188659970 939281998 685295427 989496067 315406736 364696941 664782487 993335243 327365589 367814246 448915230 637725992 322744250 717934512 72444214 480677990 745557641 864848024 81436193 963574897 730729842 937401177 319488611 503233926 507926383 724961021 250102214 577685346 274349109 965760834 994309933 997975940 823256599 980255637 230622775 710592041 720837414 737381447 56997773 788318969 864255893 866106685 16505540 32190176 861659768 864590850 778389921 998701553 177657333 606221284 270769490 830603241 306279343 903997263 84737743 306089966 727050224 867591861 62392665 958126356 46701644 977972450 569183384 646284637 291479578 414000906 339234909 387235735 754738660 985835974 444813836 768835312 274638072 589225379 857614146 932066863 481786177 898557517 224110696 348723724 911232610 953060847 894665828 908473320 343600093 536791132 736974458 763958820 878558054 897651023 276377075 424413141 579427865 825395837 270417164 734232176 141762686 411156041 299234632 444974193 181597872 510316666 49118018 264082515 702799378 774914217 734727677 812996266 513980954 867001293 412935080 783820908 112918402 716104428 787711093 879752302 180744037 450869569 59842175 240366298 934281135 977276527 775532056 926836455 834020187 859974913 108643720 472389633 998847587 999138504 875788184 927390291 878112188 980142046 976754706 984497512 574009523 957750830 413566235 433726859 550815352 646607538 280473999 584895578 129977259 690192558 584266820 810498397 854477205 986886815 906695360 962834286 932200549 988024193 638148241 914598464 284797004 549048206 982983668 990335311 625266893 863800595 792122689 890827376 193873571 340580906 203426504 353264765 518545673 949493580 476018462 721816611 848399611 894709074 176460204 460954929 140553379 402951574 555689380 948684064 389987533 657189782 235512560 764412686 751640918 946376701 179534696 307221295 911980297 925879112 194519989 870858948 837735401 968440910 812625174 981206565 605769942 894331901 187224195 393374996 209682911 711158314 797863436 836107335 397689863 794384276 680378464 763042324 290158123 476297981 224661101 317634675 917794918 951786623 427075219 536653123 76110938 594698856 514225785 713319866 391584058 824983214 820134828 849627394 819847838 934955863 490788914 951796857 218403473 442381332 72728598 269776723 792231914 870832045 993394526 997293665 636419067 956920897 582868427 770389587 386436021 483656646 649374011 761126566 876493950 923239719 518041932 542624150 196585386 621519904 796052394 986001780 610365799 946511541 959623796 966296855 33075413 929223244 471059756 779086925 661909509 750830625 637707292 856286436 769932732 876745411 210596113 986892343 501555949 990989916 540390000 581422656 139579518 571830035 429838475 688140381 964438291 995452260 674808928 755507381 426144886 648610982 357575146 642546474 257518195 925713993 525762632 942083807 369034937 858393515 179307736 931087728 261195226 564175662 643409189 808482219 731380708 956542910 218304316 308464438 369280181 514727917 755406445 855935322 636414558 704137009 598029118 879566237 164436611 807809222 72190029 661662613 262979459 283989132 902261460 917900875 936685962 998767144 103760155 359590095 668801081 771990871 998222872 998479970 724836682 981380519 795372207 912720925 26499021 909784986 232880783 523002593 481565459 892234151 462364616 846369459 484999950 592508809 737103988 845333771 470746449 634485628 247341502 484704564 93450489 645349460 505612266 775406638 900825628 987634913 312553527 857554848 965791114 977437198 697328876 714947313 350310109 614706779 198127847 595748599 132732128 285975243 511685821 766902391 552881761 804883271 383392125 671853072 786324962 835492899 584734653 992246748 887574023 949107303 431120388 915941328 517525026 675587902 664763093 809832841 68340070 565655380 979243056 996955591 906783478 986534728 18584921 870252606 17128580 638155116 515025352 998755136 593438014 891231803 338832883 421739606 547354824 667453077 845204201 876217272 760864736 792417739 506176008 660534209 174833968 287236476 635276451 687503360 165163756 926553576 151223917 312274153 483593128 951749565 315911886 856826801 984392689 998661697 536058351 703202693 727836339 779881141 36491532 782340436 814718365 910756814 462765415 571024925 586828117 896162842 464817016 733165475 920336112 974684719 232573107 453781257 90820611 832862313 757336622 804469246 619387877 773062550 297828407 319503380 124596328 936518907 585110770 806658628 303010273 562705574 793526735 835445974 943662591 957005384 775848610 987997080 962901660 966553673 498629385 846597128 636841236 647390974 248389756 652556146 723492076 860450095 319494797 824135333 404193568 829981715 560083111 941587334 932788069 989763760 313234989 976786712 8432237 837123612 92033388 868349607 682504588 743151535 378277267 627833699 839812351 978579328 530890889 790110175 356538222 590255156 492498329 989750380 51716017 325109930 425803616 639563528 64462761 373743280 184094208 726425769 393259646 463146228 682936945 930969163 950205012 961506242 682058208 695730306 370457030 553831171 657061772 938704032 848366772 984420413 848410161 854331554 213708923 237426823 57158392 526455605 11200479 290022110 238123142 980064379 588322786 604907249 142652999 663506703 964727634 994692715 595493782 670997574 661138649 858494531 916490013 945905993 318735077 379889725 322199364 727383329 505491575 616355605 975163880 992765491 712300987 767948166 242361689 425843027 873072414 972455573 894673755 898064154 153527205 613283467 164325818 805724991 106994004 510935284 229720169 861257443 315743047 626136267 722045501 877656765 369732291 932969240 904967550 965900924 25836319 535080811 249540107 301661161 909423888 987651785 625624423 828480697 419075035 522132538 679010359 698924108 378299172 471492144 617788645 716193031 669027439 747459576 982668740 990234232 896985416 968956843 202106020 245043669 20949669 440450697 712260654 728543422 544944920 749996911 799539885 905750688 163964780 571860765 765680538 873379501 648779114 946952418 615233679 696025839 153424149 964179631 513773568 848107075 315954323 958025625 330118949 706309218 509478258 726979308 817270108 865387537 966923740 988539695 40430916 804323130 959758965 972301819 446025280 535544848 324254263 347950458 920850391 943224899 741189188 916844169 835005368 969462166 464153373 935319842 749059587 787134493 124283049 540050667 986448229 992164429 828997946 848266393 493310176 641057304 857809411 935655417 272525731 607806754 628398600 893101002 53103377 627542197 872939482 908626107 241947423 802982936 604390375 856672912 850082215 929210546 491638198 670895252 728001926 792675054 723058021 784942100 161943596 830438414 800455123 988769150 229957461 687556307 756060872 866734604 224573358 260117831 67762236 666060497 312500520 780060347 653851002 654141354 37212281 876107218 957251670 990831318 937984226 956181030 247527349 371093715 705035364 882289748 959684052 991361891 428960587 890517454 910446146 939931089 493415899 744795128 433462127 851848529 152674725 711640724 203897124 543054449 395528044 990176879 487544382 742284021 573840321 909676033 795401998 905674279 979051425 988444886 845904181 953587893 552581010 850931147 974283352 996167521 262541066 734043788 634290199 821258671 686171008 966413643 184520913 670015668 5833726 130052374 65353059 253245254 730800260 790653303 663200656 964298684 333804126 514512068 726872577 990431846 298384342 620356274 978519873 983583935 922936602 960915937 417175456 994481966 621876462 795970155 110625193 560253465 532514983 886060107 570000538 923097306 482183359 611151133 610084215 713905309 966177455 980608227 756165799 895494424 729744632 979037268 367236043 697802830 656744596 974921795 545906545 735521779 745780411 946505560 11043471 824388739 450770339 500053475 206558508 811401671 710644030 988297574 8050957 121397932 911538552 951817337 601016982 742742415 916427983 924468053 588422833 899467528 611523354 735884862 778511323 801784829 323233150 766898041 606251700 646390691 28735127 806587732 316899295 383975493 65666004 262142440 507612431 904750761 364377729 479135496 657628537 844286378 563301149 859809636 190649219 916744488 787269581 909547447 963018466 966641069 189403333 689620273 422390486 704049287 889134007 929734223 151234555 510963082 474466273 684254363 225610070 951845365 263991727 347532037 977778729 996177823 253028944 581963649 261555076 307236075 199412309 317147658 579208111 960690555 377315207 395049978 793342346 953954622 327046741 535742239 631803469 992593087 947128612 978551242 810803403 825531699 793221631 871623020 740632051 970933791 7112554 486683157 177614746 429201154 275314478 313233633 502474850 660876313 993502630 996855789 265818641 753562196 461143069 736619818 156908215 568223134 977940235 983962161 57339671 329755750 475019063 959219892 589388404 871823992 793379872 949958431 51860449 213311354 758221384 815230473 536679080 565204958 474648003 784782747 894819298 921020753 217566519 917772294 815286032 952921836 791498498 884020569 687630634 822357619 234611473 643646409 725006177 752918517 682977637 885781862 101345279 599568302 78120652 834687685 87360449 237147541 401078414 534530887 614282197 624979239 477582859 510571674 729361453 919772060 753194013 952014772 598762313 610251623 335967849 621659390 259274343 348502281 823858273 867419442 427125786 596520809 900515381 999298251 274335234 744625724 519726031 629984703 347858846 518255466 685663865 868313698 900070718 976370812 233278525 235151051 901528316 922275681 713805012 906502401 490037745 559578911 781992759 984532338 87227902 668231831 27095243 695620918 64788121 135967066 435252447 563917984 318487347 940846940 948199281 983675967 20290029 409887558 811653061 932333820 817262489 849595284 296895082 837546190 297222115 737769278 91033600 829791889 333139151 557453545 125251864 138109409 47482120 718971555 678564038 812550917 381625800 977061043 218311580 750997476 41789961 771769105 479078627 850799906 858973618 892343365 219119532 250991625 36737010 152686463 38572286 378237123 479372729 507878065 659089436 761778206 69534666 564824041 149296594 739468925 405149927 936727791 944944673 974119427 400018711 607099329 560646084 973008957 268218782 579460765 523935149 882615491 565216010 601862980 842196411 930053738 43712454 239789865 68653104 411918760 108113718 476602184 581869365 637042518 552218938 956168669 569841294 900369691 777564072 863609920 299683947 831652528 166623528 307446724 22269534 568461687 510370859 801494550 70534020 452121190 68381578 529364940 305539043 318260743 83966413 315736439 561298814 940674979 611507652 951935723 896134760 976278489 38701499 458797666 696566682 759769840 582848057 829553230 41550963 317927377 605494782 849752404 251354654 408539172 10886184 391682034 302796865 912543456 523187395 828544044 939369570 964453546 861433149 870989237 465416013 985372544 959889570 967891782 73153895 192413998 89694349 724077108 994505280 997138903 80323552 547152653 831310289 992673312 849397655 896781881 299919711 618987226 460269741 767755282 386550372 486407153 473166520 602412472 196063614 459378190 512099634 623157046 225555898 693851219 574803760 941840087 187828259 210584495 578199336 821449433 433830632 810107844 297514261 522608793 278398916 745043775 599367045 821843775 635125564 875948222 757620152 877332992 912716046 925376712 633348905 779745209 144502283 665553431 268384537 625108501 747828393 953973301 166387290 989911904 664297609 666081766 113958864 499183377 327296788 863007788 631531266 788041648 136914486 741434064 289271992 347028486 751091323 975534487 872116992 885601722 195952159 444833424 871747016 909031188 236239408 731500382 375328375 905503653 439975277 516610119 834406099 955999479 839057819 906119849 219060655 355395975 908716365 930795706 919141330 935646355 889887261 994602765 12168516 590719862 367865398 606178945 56103157 267542938 239482562 621586171 428057495 483066837 529645333 674602186 752935578 851730776 326209531 600814813 225205792 579667409 870831097 975696475 528931345 789725719 241086534 560735785 223781212 901772782 473910368 523744880 676535860 775614854 304670839 594304267 376187015 397462048 275018441 908584459 775641198 911357250 515147453 651660177 193712216 274796805 503576652 603304862 524078631 537472613 653912215 879067031 299988708 959730517 871889739 906052980 39042798 256350977 667803487 906159558 988792820 992268010 323928896 719519541 679534553 765306319 842955582 897009281 393264849 763809810 826488693 962503553 366685371 962119920 891474873 903046245 200338516 961326916 617797156 783386662 193270713 702417590 862610525 880218308 500391611 738184994 555497068 810926812 185320757 563033251 825709413 916509629 371071892 433889412 612479462 870324491 583775737 665329349 887487305 940049462 140830377 373706857 645030130 804591574 171481780 962910802 740008787 813243604 679024884 849161278 902228785 911064684 790592191 886715300 180341216 238685508 312406136 431967151 510554172 613872818 319236065 506195088 86677981 721933611 704110056 838886258 357155336 862624076 742230915 749231512 959621079 977120506 934985275 958625760 705937434 902893483 496862570 855150567 219535161 374183943 846692402 873516731 974255141 987096091 208928055 485867092 996962068 999024037 389880138 783353183 183295832 813265774 981357933 991410379 548745161 932992049 244800896 539268232 416144810 725297947 921823973 950150295 494427634 613763520 525998045 799554441 185492934 275386521 341687704 715429371 51872805 116230891 298588848 426669351 917544408 940363245 150933240 881728158 574691751 666829404 986088684 992773947 102285682 461677429 159037536 372951209 500944339 901405273 499180354 583469671 945983992 950642861 111377268 139868776 332959465 698221351 35631382 525216967 956832695 970531442 622933939 958170164 617361862 660311216 909581906 957481920 943034508 993645277 34326190 661942161 330308360 339823667 136122075 214199820 640455848 818077498 872354331 989867275 79489799 430531401 593199020 702200264 457174778 921299759 734229224 899441171 401526926 784605386 211817966 300897209 66323253 621220696 709088552 982960082 678199981 763325709 206614892 381523750 762835706 921334160 533561936 786375224 540286235 819696098 95582248 350282143 465056395 890093262 124745191 805568707 493083476 567410039 647346660 722982866 392591037 579249340 164427131 632807313 70439650 976520166 165845414 538296813 785360152 803159987 612082870 698114468 13665687 858690833 621335598 718088502 357533492 409772678 742063143 764878598 173898578 746024301 891416893 941270008 548817663 680059238 370357289 747595686 769695241 924714422 482038781 867273592 568887753 807663356 613753103 862179852 659987629 819428555 461626824 505507629 99495596 501374529 651787238 949486234 190681228 373796270 226822045 388684115 445444056 758293168 853569192 995577485 423764123 880733602 318376377 645248231 461692293 897740964 284460457 553274190 173980818 201499370 881047732 898986916 266128983 994549286 389580928 427366472 126691415 402557460 802673801 839249707 450158295 941825224 798436932 895700943 120196704 572155091 605991288 784740156 966917586 988517324 286510750 521269476 735708219 859843941 433243668 827900454 175535639 889027393 701971226 919666909 108798856 160431029 554391817 868790368 131973220 928189374 134023420 634058850 157781350 880948059 844512982 851439646 190786478 655258524 876869379 976917213 639065899 867289150 604664230 759836737 758842209 948476203 164715549 567017951 985950001 996321253 226356326 815825128 284501844 562015672 703304991 894608621 307084395 413313578 561706710 622379699 155520657 986179929 270673024 481613715 311755503 553264009 372223101 625287762 620154663 652870167 143620141 603455080 249616878 750285614 842940144 978399348 567818420 873160745 602965123 998651645 990223433 999024983 803775749 911948418 253953373 702701230 627517115 874616393 49155997 859686579 944136749 963143895 341934883 572067600 252036745 635787003 344546757 427231823 123200525 994816705 598154109 685707142 193899102 250306521 210019340 239597186 380453966 743073076 957296652 967959729 266378851 942719067 215109703 346793274 822872284 931451312 490523738 579246369 475559166 651664532 221114195 866391289 131645782 294571558 20448129 902531120 739277322 932987538 844162246 977113497 956907959 972654668 606014705 841242974 40542026 930245286 782731778 849507479 587652891 680412375 628021619 956790209 803311363 897712020 316943626 606359188 813333935 959162783 774923589 893425540 717078407 839690995 354498865 737149026 318689528 397476302 577290756 859189088 378550532 945457461 418173332 795900712 218869271 839655606 972065643 998908917 26972187 965406277 764268240 814849278 179068602 183302146 828684619 894601025 72979942 501050962 973282450 980130024 909625633 978835196 468289188 753283020 233064607 921080673 238415909 709999028 917182456 967153959 475542432 893637433 100156669 713955687 451425502 625408957 238028757 274168880 413546397 715397117 259981295 838350158 405592253 413507354 65177589 86677756 166329516 574062217 583395074 976678119 883285729 935795514 438539649 900992945 112184450 399240008 467067874 558640860 696734812 967727439 628528127 962410655 940582193 947582710 11361201 773413059 407048641 885069797 297011369 542589564 492310374 587836215 804503385 838841811 276661664 579344822 366287391 479509231 232202044 292341196 727400343 989382721 62274378 562719224 828678988 870187967 383992375 934175834 695346302 757968944 666468599 824147388 478991182 762429003 442891807 674186437 91247565 514671121 677545325 830168149 543762377 716558309 659339823 857705595 246518670 385681516 86573523 319004074 622909810 679093745 806886414 824774371 934657446 948534275 920546895 922864869 497422486 941079624 466034989 717360333 42358132 486904790 186361989 385281053 61124948 160816154 361756476 550298729 433856017 508319934 186017314 657614059 792705530 941907940 705413585 867215108 685501209 974991632 319568586 887524631 902311142 937268783 589233993 927967823 770211623 783083540 668501075 702120043 305927219 699960464 179606122 428889178 135891492 613027204 906778668 967965057 90643204 204726385 442457630 575987371 708046110 944197947 860493484 919425264 447204972 681374726 811307615 954926703 482229596 992697694 165437577 881826780 929444935 994186765 883442016 952008901 909791544 982393688 916010109 974679600 708798391 849561029 362438351 891382865 775290975 877028244 60883371 615756672 730878548 944454893 840526622 907673481 262412567 687709303 219134410 665060363 495885468 633049900 384020434 538598621 888933125 942590952 559293930 966445993 289671462 611545559 290223850 309003756 449285510 912044455 173951012 395916168 357070863 796880021 52202155 579688489 84555626 885690947 145923242 436437040 217621139 916280082 640951253 642928911 107113802 834496112 47076545 177896405 976050071 988130025 554486870 755411911 281387067 706464721 128462236 300407217 579414599 598498427 914114494 941421951 505146354 571997527 312146299 627937090 683772739 737857865 951062017 990622392 626695213 709645435 95328212 180503509 403984680 660593315 549331461 946025736 367086357 452807096 798725953 832550450 712397488 754558792 44103344 141581609 263330062 502201999 776541836 835338795 871760752 875667243 846616364 939062186 912335839 973347251 997181388 998747079 862062089 913326325 729899681 957865168 769252543 786751566 915571029 921772650 522968404 987065608 184650202 796400720 37112202 835948407 428482272 589674820 988597216 992457430 690215372 928765066 968536148 996495297 183320628 762559001 838518829 940152220 319665734 382917896 274677947 402721756 915566050 916752243 456666880 566129813 163859900 685527572 787012904 913797977 753006163 917435171 510809277 939223412 68471201 455628188 746957981 840954603 234477241 630826609 281492926 575250952 56399185 815848598 330593325 686014423 779137312 972359359 232432435 857401848 170502774 814949030 436356319 543619582 763979070 812403280 559471300 765207772 951798987 992049939 513384047 911806886 867589349 872739244 448645372 600238592 551837256 563717556 433283675 767123038 473482933 720436176 687113065 918088237 614379068 980454351 55782166 957339927 674119629 992526646 199929042 476641136 932519773 988980415 7700617 84547310 749696529 773884575 66930057 244351662 78169728 388019657 861993701 877694437 742422855 858636324 151373009 659027914 942197769 970001182 147613609 712414883 236834488 898598912 341447974 758427595 390595200 936830624 484624652 546645057 739585940 768520876 501202445 617467565 118118715 305136343 850517590 908897693 800228187 995506803 82651362 333291812 562860692 870160122 41327214 982073914 346585928 851098162 718712302 983674805 557293264 608384494 791703311 843642993 834991699 863012978 552938666 951109354 346406629 405367672 415452507 584474262 347162233 965434270 270122391 994955948 408566558 836758822 696610612 970102858 171911032 436276674 735255364 951192681 312000675 787654502 933296184 935157190 756088832 943459366 837920453 991951576 752356052 778894769 236214791 682399833 607001709 884544110 857049829 919553806 666196715 774452338 599765270 829736261 757739308 806101008 197270790 987516031 349232912 801096098 153970978 630434177 579783525 800679246 884811797 907452453 916145288 973850600 840205569 966464282 249051932 980389121 813075090 872618230 789757104 824684359 92577738 941678352 723063637 809943676 390015732 736870818 255745602 298663667 433405860 524589106 26607077 658147980 936872389 950107617 984901151 987656548 641712987 960970756 701033475 995351045 28550099 458541327 181659252 701299329 91728283 378478308 619719839 796970216 31544246 75649712 38799006 405453336 522974655 931213021 355736951 446727417 206171350 659204404 123656047 233355366 397430806 727642602 898075507 957353507 219859667 291177263 670897885 718713532 145494063 265320045 427076274 760043405 784350713 965469945 54656043 401841228 268242888 329924027 562976505 783212293 788764101 890677816 199046174 836796719 705852130 921148891 933437372 964422110 766171259 868158707 59697218 724127954 23089141 466522194 235826036 808036034 715307803 983617923 482827553 958326074 571942573 874442728 809245562 957153548 803174940 813961312 50794654 663775711 336757305 522899615 977086301 981754569 419323165 513884727 646447400 871505884 336513959 395582745 765037633 857304223 81109378 757896757 217410287 790854321 322245983 939116239 693740114 849332787 988848933 994039030 806376577 932779725 565601768 749099259 265486646 673102507 65663939 310465758 718835809 971621685 139038412 926468935 611515647 636826493 215677006 668260519 460846211 798184644 381941592 778903867 387219016 517266761 668154563 863837413 665782391 827794193 973680613 979222823 56083664 325701475 204590235 565237108 724197961 898481224 494485409 998407664 517269449 734318309 881520427 883940947 988638084 995289734 43525900 921423489 564005622 819711571 681184793 705139822 554495565 608092240 622564770 852773679 663585745 946176242 724979035 728867511 377592242 826491367 94105235 748747506 695200765 901938554 789512965 850006986 909663546 948926767 805380751 946772460 431864376 526733365 868969286 986706015 870317143 941947102 700065377 723208187 879524028 880188855 988854690 993556379 653062726 934242899 875756338 987008221 104372579 115089784 342641873 984788292 668464274 759477592 736720448 842832240 435917754 777463435 113786788 313363859 998807626 999008177 373145101 602529176 601366923 817722957 143958898 158662933 316946195 811946691 855954739 878323603 74124450 889141258 239011297 341137170 4398422 550736204 403599137 933681404 99736420 497355698 43035144 557341745 788761639 885802558 854938297 968900908 356717761 975823679 833176815 893028477 126287358 508287663 738386311 918150252 648279413 825432338 119693721 561212124 781058496 861268921 808051838 867460809 621720419 869072749 773237122 874560122 229685476 904768454 518051374 937460939 768145491 781906219 56926632 893584583 408168353 455840167 762159533 947721223 761951918 816707059 339583817 902032611 674844257 830668469 920087539 964820565 409544052 818113063 463354969 802173631 881752734 922165897 720464810 993742514 297480498 523667615 439077419 931795490 125239508 269273954 744871809 813471337 606740959 930855742 22036109 409365133 524586678 717940873 546724726 874869906 219634731 513404131 318406511 739170489 816474908 961512842 200953856 472447022 116620175 449166164 868787233 878569471 851634070 925440504 698959643 701695121 441844083 814117451 627049661 650850630 32767214 608607548 885381887 942667957 290471394 867137261 610918833 864600253 819068270 894733891 811238550 935898277 701198594 755293083 973737973 979061558 431573441 765908844 212944185 892417218 576125796 703436986 403640454 530995171 340872364 534419490 957671397 966623801 625412482 980911323 982165953 993507735 444718986 623422164 741420581 996098049 377179280 612501837 655860743 987670474 65947639 420819283 583707957 758076824 406794539 762341708 432242990 536295593 148965918 869542936 97575038 731699796 835547437 871220339 433508184 699438641 587815938 677871291 894200049 951539852 233709291 705203355 596301993 770048002 318873600 433639028 536717054 594264718 35157839 639410580 830693455 887530448 248722709 911378864 406214796 721649022 148465011 722769915 348504734 456881745 444441281 860856514 48684021 981637050 546242587 787245804 184524565 579970764 442489690 827682896 919492533 929448622 189626098 480016753 853603081 860128536 851096860 909601112 13124787 162680290 498947251 984777797 478087424 533272970 452113852 539518909 383343069 532203622 937689379 953412629 801714454 844894056 184325870 706356548 599542981 784994941 948057486 974724364 93125664 424914311 965839817 991748551 276849423 891734983 588933098 663001189 939453273 996962374 901405703 952051977 954547372 975623796 374182524 959660861 905346164 968540173 550087396 977015746 947236176 975229151 712648261 944646650 422145371 652043430 18627522 630091935 954842297 971545019 257925498 522391867 661416058 803024398 564919764 913421935 370023005 582918533 223779048 567863351 607326754 711125880 850636511 866023233 264157246 750789271 961384601 996410583 354822159 756122114 549633656 668822183 458448663 860527687 318458378 400613158 793861931 825321670 297653746 667860216 186706039 300334063 945569897 975710583 54689930 99194190 589990552 983548044 601738243 726288467 350066684 740094026 508614005 704460901 293668676 738764365 339246081 397427161 773960001 868586125 936521342 975810867 339148667 435223846 435930333 594493398 976616168 987551778 486540904 690788381 267033047 938895432 502006379 832694426 278890575 968193884 966841813 997796443 518838359 572729836 805158337 898432034 153989362 544300073 636405335 911189993 916485522 920514663 10733003 123055127 449128391 760777574 601225947 813142450 270176696 500056013 137574138 193977103 517326050 851964704 538450984 823326069 927239257 959446671 349393265 673322656 527669575 814636606 327200080 534151157 478661757 810348560 246703431 503639162 597069718 631120241 150644556 618491693 812412590 970447402 810869876 888715443 315277199 987854419 253491366 373303229 430214997 567856131 954590800 967187158 725886357 985660367 943307252 978507109 439112874 675856130 178160585 638645227 68977886 918568281 748509344 804831381 809685570 835820573 146327660 672561696 897372986 989357356 766809114 836897839 573488863 802390126 564618677 971030520 500828028 684958385 224264988 464727005 113156000 735918269 968436713 998736981 155712541 688259369 499581198 973002531 4412385 677671587 53476695 178156436 681911042 916431126 708269361 852636534 70441194 814533949 147546526 575539271 767605246 872299759 387980489 892399927 593141092 938866287 412435143 766939079 13962863 185286273 708466168 874995816 984043539 989510494 810182815 947276783 916330529 928992692 813172205 887829556 252568743 398676345 543886477 594420928 554756728 772864894 227347818 641710728 591370516 890735465 742750295 843165030 198727414 794156117 69793652 887921146 456696046 952479009 459592607 822043323 32578746 843925528 67523977 92769635 860524880 951400496 164229473 599992016 964711369 984068602 311506074 887915174 755479604 791547698 947838983 960163678 702280411 769315881 92011311 623762733 953559802 974307055 367792525 820880856 415168238 609340670 712213547 886860590 370288107 584205753 789642609 996014342 381103131 942514760 89923454 441041833 5028645 712722813 169872019 668365724 151605390 258037933 125572857 763374515 543830633 943303579 555484497 931890925 672019472 854974682 305592948 464474395 981218513 986468919 819063140 841539270 506619130 685641887 798496387 888300547 24423427 181631028 744101527 969555365 959618030 973802930 219202061 576890302 296208343 297668972 724247402 842247045 331402166 884293626 895408516 996335356 275095845 863371514 679356811 846168087 768266751 945528205 997861755 998120378 197237112 506165735 416199001 639820673 243719373 897743442 892413719 946422096 459098624 597418726 898812819 917732587 385257312 387511655 689187400 921374605 905326700 945063517 562939082 751451933 200462693 941475019 8978968 635834287 377692376 561675845 278355255 975471883 22128232 363475800 253935133 746817600 963084947 982743222 288677395 863042279 283663693 831889864 88030979 957147162 401882521 946316936 797249499 972471881 225968423 370753388 336495319 634487194 772473386 864573532 272040191 557462285 171773652 929357768 850236018 970386348 413273470 725191513 721795455 878335487 401514091 955582357 336399365 353827554 548992695 959164790 704935937 739008948 651055681 904098006 54145412 544215393 2586576 735697023 293394670 333856896 558252216 846132328 659419165 955660290 976724939 998161788 691374365 703621137 422928711 563606952 711359572 987511836 599985971 657354502 939425951 990231865 846655037 919572836 614358298 958862504 369939772 948440038 374246088 521972394 551783761 740335466 853849866 904698421 796902085 822447163 922225104 961189507 129597994 904210982 456958274 556850574 871365082 968662801 836739027 948846475 457857148 709311507 839944977 889232557 164803513 687176788 744031577 797620424 440986388 666366443 631361751 683879043 158076705 306252087 196740033 655711958 128756632 304815039 906011966 906669542 683198480 811868348 102334 815061161 196295915 871310377 670729542 886640432 96232329 678313130 164450568 399528184 947447771 949590644 547566358 676762690 685454637 818397782 386769572 870367121 216913242 406501363 243515436 536370931 326667396 995113305 16698398 121073423 357431209 807705430 535626359 763710670 787585066 939054237 147051571 718341243 286938436 615969738 20407893 985383059 113424211 852275073 982834343 985698218 853442548 987602629 440185217 544874040 151098609 285716915 157023051 872220948 621402182 825356750 288710272 758519702 291771530 564649555 272741079 717891656 946854661 958686265 794741369 904220498 201467177 249715666 36519311 689702443 934500148 962158676 900655304 952950545 738385734 798725601 624746764 718538482 439056717 752147839 990315297 997882833 328457995 920042715 559552399 814231471 740481126 925339536 534161551 945399917 194015624 355508649 526227388 991005690 761989630 874184270 407056017 642340927 626769095 704019157 997648429 997829646 156230525 451705833 194062945 534743684 38197584 294672949 366105935 840982589 616547432 662407279 272425070 972641821 550492464 728380659 206633822 452385807 168187205 273970276 319824265 578763111 119137806 785724515 289709757 660935902 102444143 716684666 494612480 862054069 899520207 990625464 993938305 998409125 370207253 773525542 243105810 537557305 862744605 993536451 577914869 711191373 511969866 887107797 729013515 765279986 40714468 291270365 979932598 995595243 728922785 759673943 777362553 828459626 976581575 982729506 347621689 964682378 842776686 940011228 662647596 696465339 754707028 776326226 31674487 606753364 310534047 583589958 786186169 863527418 79977658 787561118 131159051 819112652 113664590 919290576 564159667 591396674 509583720 731989911 93144779 284655560 496302456 761162085 946202320 977325698 599057908 775868827 904214982 996220788 844700249 951257124 237522314 444130351 956804623 979972029 606309687 938280141 915913975 965717116 740637407 955847755 426990110 446552279 823003942 887215382 374186856 575389122 875430316 952200892 634387505 839072695 388944916 890182520 479454675 701721762 256698231 820928231 552813084 958934892 975935365 992088336 343378273 634425520 764024504 939598650 343880338 880446713 445868380 941341454 644511639 761282802 430630228 733342309 337026258 868704143 611528556 723438486 592290642 808435012 221014951 860292898 305265975 839745627 579510016 787257401 246964525 919213925 852328366 873152618 917890258 991731143 827532825 991018842 70284013 565033948 585996645 941141884 66795833 478361223 535940319 890898158 779944907 928974616 847869568 963207008 377828526 670179272 680242056 893255753 325066310 449048307 449177104 785211142 137118516 663554311 549179622 775815396 7426083 775156999 451230084 599868641 983399835 996301336 589729626 686124703 710070186 783798527 469921399 563457081 461831579 657771779 188038448 263027549 609712042 997191335 730835182 800726186 555391202 966513908 705273314 957970114 655308570 669869489 839549727 940146720 568588413 757166515 131252567 858683611 4101248 876453714 485058680 587886557 286278017 564225476 854811392 973316405 837424256 936210284 293266889 945773653 98716750 295465234 147633042 968868308 237375787 748521368 260797414 683600020 583888273 917943755 702315297 858459517 510287571 894866338 732306249 922630113 271075258 693371116 11615829 134891357 781769891 825942033 69953752 344028531 462234389 969313344 289522778 667272402 482961180 547683935 367171941 947536214 873387008 928322118 536193954 748785621 704088097 964261504 270708685 537268774 255519005 960707761 92624656 220287634 586299941 940607034 496631364 768197489 972585110 976331906 21163204 914131232 444944618 510034723 759579393 911774852 190095481 236012910 773823015 781354335 98470801 818692704 649285150 743893242 325301751 326394369 435089430 795160008 429023813 620342855 325699236 569031045 693606901 904850573 863921001 949869369 995476512 998247384 19356895 183735833 93997661 578062332 683295927 949425274 351522212 680488720 841998802 842460300 478043125 790220138 828886639 941600201 346229550 569335846 531396935 711867771 841196159 969364417 915566865 922279368 664051032 887252920 450753039 864329485 200090155 784866619 128842527 148168149 837822673 953665141 998116748 999234810 84399109 809836531 643198918 718975234 331861609 660434187 253448574 469757697 437078178 730231073 242876789 456206203 382167731 867405025 905206795 945466757 849467848 863251586 277594394 850014051 168139957 975911409 978672011 999104843 141040574 719157666 417461950 516871097 981590104 982195759 152601217 954780276 913502060 927893839 571217818 990451208 742765402 927947328 619326502 823268853 303481233 397196541 536982291 607159338 495562792 744988610 621888505 806118994 583435194 645939607 748517441 811711118 459489639 884737304 303738302 981693014 312057756 312925246 806333428 958320347 182472782 307141766 228293172 816894535 55387251 919971752 838055949 860400897 922461797 930102359 975434710 977979052 661960069 910996901 686620515 799237547 502948531 976184008 917325880 998471769 136607632 499972552 165917762 637948155 218703742 952525852 300438494 983515647 10392822 575413281 8820802 825555436 152250687 347957965 691081371 767487985 316440257 612825387 26446221 565157368 659425939 978232279 933925869 975062989 335061964 365310668 926985271 951212953 353972941 698121016 820452111 956366569 91077005 774872049 421155995 886958679 508264764 762674235 201806075 302257451 490335052 896770186 758902473 813604739 46052685 448092783 619010068 992991552 104657077 659395083 814286796 846138508 319449690 321632260 522081952 656445986 907444145 987830830 63981735 236441927 124115244 979005510 893457964 939612719 166120588 514514204 158355146 228241748 263555247 348314471 943341203 963615230 340193778 665015305 309838413 904670989 434920997 653292319 475309378 612940962 14115038 99936022 860897253 880402985 696475995 703558160 957222296 997363368 493390467 832220506 847462397 867858482 201076243 473582669 252996295 703706488 499332640 802604475 390888808 554571048 296981621 693331912 761456819 821853453 903003267 944816369 845273985 992246953 440992808 957069915 292215983 322346647 731270993 813720118 120672290 942905403 593265190 843213022 408101541 943034053 756927716 780334620 107876527 793536458 868022434 885643904 282089275 848023580 91329001 627663068 176516227 691602268 836510107 855768573 877668701 969934087 688427959 956732491 554963055 776605763 110275867 263910842 120596851 765808532 860631403 916416180 979666107 994223619 380600295 791313665 470369975 619894743 769816992 988589475 469603478 767015114 128201176 402110869 856208712 880288545 885497040 969507217 884057666 944188957 75627617 904648782 656698353 923536350 230973844 636090058 711036046 718390728 685865684 699311793 888216747 935585898 416596668 573450641 545739129 647348254 80486098 506248580 686005405 902056256 82137719 131766377 745429418 894273765 15414729 132439257 391801596 540421635 180414055 565974185 328883396 648496461 929512317 952142114 98814009 179804635 527285510 755680685 997630875 999212460 915303752 997690454 603305212 709280049 511503520 880270444 57423245 315285580 895912961 909591947 894761191 917214004 715462075 854855900 940689109 967236245 17395200 155447406 273214239 934736305 553385180 629605652 320734269 891767319 85892513 750848269 199580247 534081303 200011583 589156521 426366490 453435910 249908752 942555801 566585998 845083470 226883029 596697695 653170444 733564172 703628138 840440354 171860782 992946737 468063348 634146031 890991246 891591097 892925231 954166861 370180334 428476191 277879917 971006656 209640340 938829064 508842225 790519303 790404026 973341822 666442961 726715480 863642718 889120136 421494626 607704025 641409115 684463413 871446668 994991143 293051751 581129676 854269229 998026352 523874387 804125588 802444935 916613705 2888354 233998386 473578714 778978614 168926364 170171832 863051964 993636608 324662979 576368636 465193472 829284388 747059717 929222027 49005952 128353383 996890023 997021519 774168087 934877879 867252586 993224080 599035271 951714786 461352857 892891491 525317005 793860636 935996822 993119999 991022323 991572505 487847544 910301951 552599059 974915957 214692973 319272630 542334896 675785613 160233513 218090885 851534715 859017149 325369245 805010979 41540623 525364791 460990984 743000017 293200961 822229115 721702684 995602989 877138741 988772450 560424588 747319200 647992808 738841007 904906961 905861248 459019226 996359693 597824566 712391223 474631434 698629292 506560200 577590000 564559627 763541173 307336216 899650524 507398786 596794097 78487889 814035946 621071348 630258307 303542115 718631603 575017413 634518821 797201174 857383377 111058196 820295777 399011915 913558889 269446110 442932335 83415363 977784676 346730208 957559550 713770882 936686630 292462438 472044565 564386945 685881450 980243719 996243001 172008717 747239736 661891067 844537418 444282217 948642095 800117792 977583565 502677742 973702322 246710604 772783121 537377223 997582219 135603940 361042551 404229474 977970949 494567549 704729166 771291889 827083835 831120030 933858704 62162690 810356748 446667960 804082395 556623182 736527274 939667972 955475150 102264173 936357264 123618288 949038080 617746829 836789824 776329110 904631743 511129104 718205456 214796627 447837027 849468878 915605615 675728822 782983338 642750705 924636232 247104602 434167525 289179596 625319780 725851520 882388156 645605598 820171300 570591212 996327813 303383685 313905267 859443702 960958240 803456771 886763530 361757496 774904464 579657257 683665334 136656972 306452394 852969120 974717740 985941484 985976177 293604414 479950062 240058276 895136878 983112295 985155548 552931691 842588435 35094362 85330233 8074449 521226006 804414866 955409834 218096129 235601139 959644414 994654387 464986203 790258719 664826331 792794306 217906476 789199194 690201266 709421712 289499558 510654981 570694051 895595650 417863974 778135123 416010422 500957367 210545846 845530646 677943653 693540225 520652229 720436006 614547116 646044289 390071141 649083504 417558819 480519635 521644509 944461597 372863789 854136713 184967512 762353485 367997567 817144119 168490520 883764835 636182843 901444563 811171062 823213296 818720448 871637558 455310261 590953741 640866342 643149639 58731763 153538751 638913750 792402514 729648265 752260898 777975374 811260612 40567132 623497773 526894909 654150458 268897067 734189718 820785762 823641344 356093654 577854780 561903949 953192553 790039033 886088241 769912980 813643723 488587942 488997676 803323306 975088325 558942374 559866761 890777292 931900102 14147365 867542823 373609024 433777422 473823937 898270723 432905249 984718808 751320127 782416143 94758385 183263954 540728296 659724511 749388563 871840311 269939465 967624271 231465463 982314652 322598778 488593961 749583880 804222796 491933472 755376041 368882861 574502323 707094101 836371368 198086835 469601597 344384495 889919647 944966687 951256645 236574649 543695304 60717539 374969609 533569532 669938196 940868986 964516566 538372017 892016906 267499051 880666717 625285010 923469703 473258102 902788513 110836934 636387522 327497478 346065348 219633484 343354022 42365354 254337461 271525569 773062998 768128525 927632089 90497531 266915464 960506350 969501805 861576470 874706771 195170023 775933275 898776785 931412264 859452364 981309175 283454770 832739534 694759572 791672280 59363844 216166485 989056152 995026020 690322329 705426209 503121112 857916096 837278298 866932976 525514957 836821700 482157488 492879589 416037447 901449442 237930819 574827788 501971692 692368689 116723540 179989240 206445624 688397406 144716267 629863240 947736470 948445027 839631164 915586316 933952547 977305893 428589996 449982749 478234236 716970288 205639947 602953611 224796175 562724994 625952391 645400042 760645311 800048580 47178248 623740999 733954606 789517782 571674250 970294968 183797962 900461806 234613532 960317748 366382180 755210447 397678330 543167980 704143281 775529206 359164560 995415245 841986279 927231843 469893387 844791779 476160756 668372325 912588910 979615397 300925213 565964479 347505753 889891493 740645791 984786561 376781887 594209796 183617939 795763918 143241136 535347322 180124994 217683182 705941461 778152779 199493611 201243457 245945957 817501762 382001636 610261216 295673419 386512388 865100514 960482562 76023583 707495193 65939124 513112345 658648129 695446650 615317985 635929018 156317550 373291505 456750651 693516025 864038074 933156471 131981899 784802186 493520136 822807592 382888924 683014833 90824180 809282842 799112029 815232661 758819561 835455200 692274761 905507667 533082637 871507773 588108878 811766700 871109859 940042911 586343492 914265457 760071512 820986013 141862896 880838828 114961217 949580654 146372474 266540097 154426251 441049036 340720889 585926725 25420478 298231275 257755444 317082700 69915835 831681423 892616849 979316144 11020249 673949246 97893839 281308079 125993131 814032285 382752327 635054104 836702687 992662175 885076060 904529852 255999878 867439219 236478746 964601228 565847382 986862108 378215869 661355134 755597152 783634312 982621753 993579712 219621055 769141783 883016793 942102024 47767343 894620819 176198004 241457196 43940545 825950211 943831794 947321594 583171808 907300183 779083164 823599572 419984164 844227288 809898268 988854194 663217 868532559 115016124 231203449 708405503 981645554 901741524 930835454 664128954 954236209 522285340 604708034 451736138 781673244 473860253 827827271 642951750 716368594 339019722 879678813 240840720 578692373 242247378 452212692 318888244 502901266 308562011 774295259 36096702 927409583 509685510 511539571 555334058 723631300 906782601 992793784 513114855 663981202 295287292 988634382 13942271 33107370 365637202 607547934 60589022 413239889 699681004 832784636 741246679 836093159 123960716 406035151 95632343 161795053 339499164 822209060 105627697 924022542 238210271 670748536 695428806 950423428 669383186 682594249 279662844 774758477 582537221 878536262 419461610 783126785 154533939 175209097 976465589 998193290 937441592 988827296 605583418 639514294 171705950 764335446 430066369 842332389 815511625 860337399 567808355 698512425 146356711 907962720 456054568 595957101 867995373 948418523 449800513 925858742 403618769 649216679 129981649 504580637 848940635 998934901 304605046 522850584 131234311 780321814 27153909 101594625 991007046 992734419 423736046 462263631 640922992 902080795 936260740 985951013 343890917 732023283 260648415 586069342 463052179 739340358 325739935 921802584 392484124 630258040 854544138 892914781 718699312 842709743 781591461 923995534 901139511 905657581 300650771 391004145 139409215 636876199 697839561 825783704 535928336 804595019 468462465 759868395 66151286 610689664 511435895 572800440 831633966 870594530 764193302 859543286 316584294 358677875 580735184 790408068 152105637 394428837 860338065 922098081 257831669 850216819 119719236 230773000 673068906 947758176 191358173 816398619 903269478 954205641 776085740 967860766 510005172 910497317 768887319 947091040 692415917 770093619 858487841 919275082 882513770 953087211 489749599 878099942 720404268 929829411 845970992 875914925 831687253 968908545 70981181 931605682 186632143 626806317 90719050 202281810 33533711 33681812 656123297 940697244 511873353 760769210 35053119 423195471 919027166 948385285 275112476 431980888 795386967 894597004 770745756 936706718 489806630 822733137 720617565 828734473 272984765 533782350 293493967 671177886 818107860 993455556 247951728 380018117 153383861 740621752 183473373 247864333 390446761 935614537 908332009 983465011 972163193 981217692 532629849 860241488 259993819 805517019 39772484 668275205 574368872 795990835 97480140 430474056 303685940 587523822 368289813 944154494 43042696 352345624 57724866 832790918 202490505 256941361 544733016 592810002 882240224 911741913 685680708 868568395 951788247 993006506 762866739 903990438 950918194 985061732 424778439 979849562 50046210 992631091 625436268 668845914 340679943 610778932 513376853 641953059 474034518 854161420 505452192 904153771 994173687 994590586 138955253 547745568 402390438 851197852 167580603 682676493 626140059 967461417 154210663 729726959 867101347 880176581 993658229 996552933 208336616 386106730 952204417 995789736 891520836 953042817 350231069 504312337 691618377 992938691 813253803 836354008 958498701 983936886 262773167 418882370 756472707 769839998 127081367 483219775 891856716 904313870 611926478 685518038 833562098 939395129 817673157 869780298 408998293 533102433 147814782 691186524 381402424 448522591 608044559 938669819 991317933 998885442 316104926 894983926 82093373 213813765 86204345 927632097 153829882 512301616 775507574 974625389 924042663 991935778 167166889 474149352 85777261 358846420 483662289 512410521 803753848 842210377 451848174 646157023 391938196 893660611 582984046 927703655 951342392 992927449 331252367 629356884 555157304 949204610 406152585 782357416 10028667 537342647 797645481 822858798 317994344 823132959 719476057 865066903 500177991 994673626 688098001 856599833 149339031 862737144 733869101 982472441 291630149 749797320 233689603 396960497 191736457 479309474 692344507 945466747 579923753 830849471 71771717 374387173 587156627 976480206 645066475 677089635 939673159 994037752 271173725 317025014 52820707 842433802 319599273 671417203 33606196 895095374 228508598 603464656 560009426 836473944 712734026 876890844 489535073 679943488 113532340 225916360 324341812 358912041 737521163 839579952 923522456 989032003 5201613 24698814 762069797 932642272 510926295 708059331 799348968 945215966 551599695 751175571 120261512 191199590 980165438 993626459 339796517 670539347 657404422 842554406 89581850 249357950 241106690 954590115 286358576 296715591 221462910 281934185 782428525 859206058 553140095 928972287 86983618 304610348 779059023 805535601 386427556 699573952 130054573 820987881 682165351 767353415 202266430 847835251 603031822 994463922 135033953 950621500 39172358 42141335 646587505 911209935 885966620 928344659 437392508 681922221 907622676 961965798 164307937 934918467 326203047 955714849 890684855 960300179 240454731 943816050 779405078 822317979 107682780 654612877 736514163 977073099 163356011 609645987 971992436 994791596 466135738 849938934 747714345 885830766 354008012 952808643 517597550 547271203 10041351 384786346 229699761 909493619 983900791 988563908 910762358 991920547 438201393 563226677 745997360 779000951 361281726 464569833 676015314 818654905 502400811 503214683 318955052 922266489 755333653 935297910 80305193 330003391 103231969 182045009 588181587 814205537 948002652 968972459 757524725 839364491 409115667 973957126 861233842 939478470 708903497 770094676 239289325 992296818 769222257 782999790 329629191 598254091 443187938 759887836 76754962 826707454 112808971 657509224 816152859 866549328 76175041 861255761 473064799 619974318 688380800 779567280 671003891 736395732 164680861 989199465 643784878 944649699 644080713 739984367 604568094 783658169 590835312 791132649 466290062 510823218 566111260 713923601 864925651 998028334 514101060 523124984 816627172 832424400 250478755 649229920 6760646 190448781 709171570 857204525 768720760 805364834 358215951 414535997 98365904 291023463 809997336 997284626 402077687 583825068 795612503 834969599 940698110 987236429 69559105 79367374 798558555 917152364 67121081 701923775 336955325 721969472 673265248 934415518 881061531 961223289 856726695 936061554 988996812 994189459 541204250 558250946 877365697 901866346 735743580 785266570 629099770 897981365 919381988 963030528 108582850 749777235 832183779 948479547 605722603 850390937 928633835 935499539 875379518 997689351 710835637 933232208 495095798 900493805 354399865 384577150 340821088 564487064 766884252 811180063 180049559 900213856 684743991 950221021 761390671 956534262 423937731 519864797 516275178 894798456 962729029 967604116 715022987 771816513 817408968 823051615 760098940 824488097 856974873 877242806 567520309 582482297 129412804 560283779 944898057 977592191 705132748 758620738 676408055 689696423 797004162 842451738 751350268 813163194 624225876 859787363 194978295 649136077 776472497 920197101 372679924 775487068 25771885 202784096 109704282 846997982 269602134 297521400 732059331 829526438 184306760 234332384 635025355 702722767 699082798 918555040 562746109 636401717 100586911 847234679 582782038 741732320 606024891 760183032 599665674 614736457 190182847 252256709 321339851 389867171 142625747 267020687 200052468 647670026 383238166 883962260 662597834 751664426 477436277 685909820 411854950 552239696 162606679 302153688 230498313 772284868 573820720 989035639 593962579 731787704 121460060 921102162 577685204 831075934 140709178 411674450 975601928 997074842 349896858 603644005 200578471 867619899 656844779 823243071 681601416 685450706 342309324 457458252 592986585 830846166 94952191 987649164 385627998 969796678 502202788 851137573 974597795 976226672 369708135 996679926 688094020 726044859 33350503 622401043 317005327 905187182 555532659 560196442 738279062 844760156 157179831 466688557 29614717 229070137 936064587 951087521 554402401 920152009 251302967 479650062 698465681 737826713 326911111 707527574 802390164 960735284 727680168 923247457 441149507 690585329 10694180 253437357 760740511 955951773 609938276 671038332 975907935 994458641 297043423 513027457 673882145 970437193 621535952 653510260 115626835 524487426 179198501 569856896 548591350 670977474 340537698 922096804 634231727 996176836 190965830 512451378 256114167 854665648 811900873 897913511 376476511 450463233 828603710 990768801 793415781 956940499 642131557 851923578 169374999 284977038 935402018 935403424 961738157 982479124 855525234 932450028 138167857 575776333 189927940 603882271 423554031 854191258 824949021 958083304 227453655 677984503 291530464 406822095 720705912 730211492 353896299 698889357 461162175 588587909 252477569 356494635 846876282 851197085 224626473 947243664 184972383 398229452 563860 802291895 603392629 615626592 541332214 742766680 64176969 471542020 235563228 491782698 213101379 326281759 384262222 390520660 99982513 894289911 375701045 872742073 372028311 553280240 251006706 895003470 162804678 559670982 489648289 800784441 213371594 615534056 995100100 998932322 174188885 830980558 265909957 429353675 743854529 974769434 842363046 992263469 302662483 693426139 880904816 906814833 188724960 582672197 96899512 770389417 304408146 733582015 647198597 793108082 636577436 829133659 311342029 903897321 942506573 949414227 636479947 664933218 133722438 700841465 250766801 605825348 153983043 620921644 607870945 952652640 40697584 390635349 216498051 770289867 480511766 545662048 181186582 967723985 45817839 186371613 261591972 442205549 260656714 639989413 688011062 711281265 939262601 965359372 84201028 347198627 86267783 289132868 163034595 504529635 124498191 657876931 400418750 791017893 565095552 692921357 906016356 958701678 690427055 818504581 339704957 627982125 879440693 953477168 71676192 663436121 113791254 349342788 505308346 610520479 479923738 893466695 817479166 863719862 691599989 713926982 480928768 611663864 621280937 711144723 866800448 869948435 22770857 369787912 686006003 904955814 33223988 966011460 877893522 881541839 314194040 323657305 662809240 710217832 988805758 993929239 35379270 955377822 763464832 965229423 639084100 840740521 802292517 900199046 227266706 472588390 86969368 551852476 931356925 994365775 899834554 939884080 434452455 536712357 329286074 630330496 889592411 915275322 826875701 833599085 958241556 998761595 864692789 877159359 418623243 810508117 526461655 700004882 410163532 778334235 406299199 773575073 178509700 261196068 358654139 952513309 755578833 765430532 169006745 634556792 219517475 269004360 42160432 261776921 405948974 548566205 259066340 736358072 3064865 595563722 362377080 370178507 901880607 952438940 193357864 977004212 208765604 243670713 537883286 841794356 111302824 353317213 81091728 224122519 14616175 625396218 866329541 868809411 962632246 975772451 415144747 630682849 298741198 783395498 293420265 949553349 515046236 951889770 10792645 953938876 587977262 853578915 977914201 997263617 957581953 999329517 760339001 832732927 240102763 454390247 196551773 932737298 6179260 791896279 518755275 519761234 375750128 448351142 277711347 428159820 46242753 833607576 725971295 742497065 681868083 875753707 122917241 397725666 718357393 757197255 886273151 950263866 32627101 869866458 368941490 829520184 750943484 979193501 785522873 831563759 648176668 919536946 942924310 990104185 543607286 911048863 565298071 610273905 678413097 692906575 113537860 881496541 781644707 959197466 561822616 983011539 906336626 998697845 41819059 801188109 172062809 465695300 371534991 622476183 59335024 589522448 822330708 824170391 765574235 986637354 908131296 912871971 900054910 911580251 206000380 896135016 710202291 987771647 386121510 552486559 191231171 856873119 478117440 835433755 510277176 873424618 984541680 997764265 295709090 766848179 308805928 366327416 682011309 906628334 70843257 990949719 136737853 422751191 42014774 223670189 630432835 884865524 742176689 848560846 598365664 635449593 597373020 752535307 918056045 922156146 116346753 789636541 877384978 942547230 84632649 570638222 713625288 824156348 778659013 888072123 373635681 904822259 574612466 795943138 770185113 859330520 890914204 958864779 550179727 762725748 41711210 444125489 664385778 717786938 336745651 836443382 875750926 972642240 558682991 873682379 891771066 996719545 115085351 857337078 238356515 340208630 640684545 675050762 33491534 438835343 497288805 594167840 444638865 790328381 387363700 792297276 269024998 775529397 14682551 678769542 264819794 497007959 777293712 899195738 69339143 836863998 571736563 647937917 364728533 955122010 189918750 604611503 521562600 568461979 736998800 917967947 884448019 898182323 177154237 680167859 592746655 958046808 816256203 889645471 891975162 968913521 14432088 540677766 693200543 730447153 268614250 658860391 463632522 586063147 297500003 890270085 53070044 952096520 834038626 997451782 463232152 847929767 255427518 807138313 795130775 936520889 385268136 813839432 517297462 980868762 765112618 956173055 149247015 385485083 784675299 809726895 589310482 738494011 771454055 816842627 901568753 998724097 646131435 757941305 4214830 67763953 30037996 777484877 739466906 884108251 437092999 978380792 305952611 422540909 691153463 739153811 391831693 996364619 986469566 990899410 104710489 623627004 26578772 905708939 119542354 807835549 380448222 858402641 112465648 453316734 386832480 652007788 477823188 750177134 679807237 751397212 778545645 859310249 353259224 686577210 671654857 930603239 127450952 361037371 406191281 666220591 268336612 271015823 730186113 743052029 66706400 593222628 189256630 350250114 264768511 268171047 705949079 856962620 134132492 174999538 473675512 765058678 381990579 525496459 890934325 894173328 45354639 175414876 565432147 998383159 536215906 996982664 714705974 726011896 899838979 928396056 424080682 604172602 206929798 925430271 209672620 814975976 715647739 779303343 535639642 662233452 11436165 975376909 532810617 845291510 414656863 714728016 721200361 804180455 639887622 926675853 277401013 794717098 90797870 767170991 99259759 728723525 990328539 998823469 241282606 513687283 264707422 830764950 87398124 550362041 457509673 557637395 616231851 980541027 255168728 373898122 712519451 806576179 882053356 888753145 754301059 786140135 91474557 276467460 681754750 976947089 728966472 840546538 64195331 274405893 503327223 572879227 350957157 651303957 866513502 937496173 176318855 197996376 275723688 509811328 137545489 234111008 936618057 967183516 528234244 659350950 534493493 848430981 730704813 972620104 131890399 659864655 922282474 951591508 399798032 465923266 337438843 384184053 237684090 357071223 476794470 765795789 483758377 961861022 968841897 983354410 688423413 726725414 337649595 522430695 730203547 924798314 870339957 963269329 260436106 446964363 21627316 557110567 601454080 981396024 583088040 840009579 844860757 882931714 775972482 855756776 164181067 714342196 747305445 824040825 247108649 637690206 842525966 889430789 70568639 838468921 100288126 258921168 497490454 681912322 187442624 750087486 352270224 992794195 982307312 993885493 61008897 462713560 864655190 964868478 572592236 655525227 907474840 916548536 526579402 612906312 788710186 904176567 743576328 749490632 982616080 984601481 111775170 155589344 652869747 715738383 705712530 752422516 528625145 867894771 961808278 999238003 357101904 934263959 372808809 616948383 839497417 935620982 806699306 963750100 285933689 319702382 456231329 650545045 516835693 969070422 572562970 730553649 643391716 896061165 276720977 945034339 898958007 944613095 607207296 715436684 883521232 898436006 492744073 998309883 337306771 479610662 537681564 603922096 821432964 971601046 947349048 993235599 422221661 439979855 475078878 974910815 6390517 671491648 440644657 769825357 487110618 823987217 56902234 537702637 73615538 815934174 638696123 946702187 289113039 850021263 856468145 886474746 197469570 232317977 452387825 552270212 282811439 319460799 725461578 965948697 319696333 627141833 819394469 882565072 303464871 614503652 47052205 512556830 706455763 982921479 160002800 860010525 367174649 465576056 832465323 986221475 618933171 971707683 155602940 366587260 840574204 985593757 249317503 986120215 972648728 998948549 622559829 834674116 620042116 999270417 987459400 995553705 975063650 981343172 380614310 778395282 173908261 741142534 856574375 993827832 751113633 888477192 163582551 198851098 28516105 889771381 146799139 556846398 430331552 734644359 229210306 609332640 806907452 955320491 804186835 852388617 886902440 900789697 985907009 986063662 874780201 963277831 812617912 839531613 428196888 929469585 118811638 817891699 551566184 944271235 510240348 547441604 648462998 980179750 953930914 983963144 888016454 912404483 800173087 833490105 479908342 499814963 165472044 649809218 875532654 878891882 850329684 982849542 936486025 997273278 654611333 814747488 481854237 580649824 814716532 898236906 723855048 906758283 657255894 677957042 713538244 784202923 228243314 432963633 456843143 798017315 280487362 780349870 413405530 753907973 487935014 574409680 24130877 713957812 363683491 479374562 437019338 794693146 160228934 814274981 685518677 947968963 53471993 472103781 234434410 856131164 405299108 879718078 857073525 915126103 40104202 181850768 727188507 815881603 997566501 999257732 639080241 787206506 25486713 635565004 501767131 607087312 559322004 988648337 814954296 838158011 102657436 840226108 126070587 804851755 667361812 969612206 595381785 815375351 157689817 500336028 185320185 266389861 512190311 922033732 828121214 896355939 9242830 767870038 505917801 598386455 169036136 535737738 151866076 781104354 627890892 999012797 901428854 930137573 830585223 971367334 620663807 864288993 606567272 615672686 882187314 973244829 869004133 908375807 543175597 789361393 930940646 935994321 543674623 818007537 467734493 984540302 86303242 472807009 155886948 354761572 891473 382190475 282819868 528062732 834840951 997826924 729792485 913405186 607337166 776981522 772573172 871576567 813770404 835344869 848726357 873726769 756982621 778560031 689357343 778849760 134605064 608445533 541432428 679728424 316534395 412732775 160648229 466395028 242307066 479949775 101747909 650998349 617175741 881835667 194951363 481326621 418844141 906499075 464423938 465603502 831367333 984674655 235922125 257585343 547952125 649457071 220014423 856457398 348352235 381215293 704811773 799736013 204003873 581508603 810099379 820536455 90270224 653156287 163268332 639341901 589840265 852776339 449733417 559294562 415230426 726382166 992875382 993355801 392188404 850035382 146722978 228116422 303538360 943651288 782551668 811934505 146670987 809967913 204905413 726872252 713484076 826836326 616809376 689522900 149115283 774333540 284544746 834560175 660130961 935335432 165947975 688587455 987843325 990994949 606547840 660986582 940872416 987849188 510590497 535382644 531228362 957553672 981671754 994560664 87970352 107719471 234210663 884492766 35222498 503645321 529859041 669392076 282816775 371810298 234760115 909647650 587296867 795419550 473507646 779438460 328014491 404989142 939360125 991755207 777172299 941265655 246438617 856822382 746521469 977542676 900765454 952701399 493919955 774994199 602470817 861132695 664750643 776982879 98976748 915809112 601738927 669243216 809497881 849835784 318875690 865866574 809157623 826477036 392608617 844123839 651416152 907382300 645504254 795331723 767381887 901073597 967560244 994081748 519155255 880255782 88187992 587390531 593902974 600616931 238728399 982091026 775266959 820700977 448513397 707742492 412874443 900960784 656436612 960953939 280859897 975581914 904501302 986609205 216998497 712911080 428212526 726646470 795341166 801228735 107093518 237254479 787575984 826726327 415430768 468724818 581383124 877069221 578361866 620046247 964690777 970759310 505829576 581725845 752010929 819709878 276594646 279890277 371122045 647441854 207578248 288115241 366274880 960447459 355378312 443987471 548369372 779489308 710850263 720662603 913291441 920218532 295387254 817863619 932723650 977531813 986795398 995364924 557305589 583545016 778426639 792686015 984874561 998178200 485816900 607454787 928722351 960994165 73124479 923554147 368277695 749108845 895861744 975225367 214265398 215625500 149567946 211415056 816650362 913866657 359666029 590459059 952460440 981699099 337891814 849083703 636640219 665927980 714403411 761463183 235577409 272464868 924508265 933056296 873565010 982448177 628091729 987469720 984033775 996223008 294116909 438890535 713502879 755242769 364877682 920290118 87271018 215183193 801143778 970473190 489496523 596952355 485680508 491760999 107623295 326399900 384414307 940710526 639833337 657142178 887586069 995958734 536146446 940587928 219787678 707730866 919216604 945092808 927037930 927406605 194578054 389506680 311271612 727786542 299024124 398299680 618166435 968322531 749544660 963453441 938448830 994134620 278880768 456754482 477577405 726464124 635337868 702786416 677929819 918062552 315787577 993048915 324962427 758991241 369149217 546788436 829181809 840638983 544379358 579363820 240376951 431447319 411357557 811668230 331609744 752390100 793849495 836167001 573337116 683233191 468639015 632236923 858476668 980225139 162962926 536538762 237910102 267908696 779574271 934807769 728305353 953687238 556452175 900709919 801423943 849768631 906914917 976039412 120239394 248733642 877114214 981702332 28718709 746832504 538644269 801206259 607421343 616750278 448383985 687540354 44749258 101321711 473034376 855421362 842516965 986615139 483125667 804078374 485303437 520436400 533783688 732189848 437922055 509756747 842403889 996808283 936392186 978404588 21505169 536581321 582830626 773497884 139163054 460044778 938651243 953622108 996128147 996433713 245101380 586681452 959599582 989801281 839682123 881828877 114605592 497351826 757737456 928946739 85307813 375006725 863781381 902374476 886617834 925350856 661592264 924327298 374920930 678369981 198655285 974439878 811952898 886410090 177519668 903009484 66961354 262391635 960625352 990592738 862798006 892395339 312846570 641020916 235046082 324857845 725949135 799162250 519691027 607549003 386006495 415863022 674262917 936773977 445801049 858165504 89893197 316917300 955982046 984631155 403212202 526558952 92899926 386423880 963916753 964326439 460885939 919468661 425635226 686693764 10332745 15392377 183935179 417250341 943014549 961768763 552653778 757075289 885889506 962630155 826973695 876639997 382834970 457032921 569216321 815028924 394654223 901816219 99642252 868122646 539920377 815036435 676131689 785064561 279785020 344307465 889666379 893410610 564979688 774904379 186902814 710064193 744243252 817421388 867692391 913771594 109858919 352267610 426623977 640535654 415059242 453219034 386014504 398622948 945654285 999241506 714331853 901017093 247846260 888305183 367800695 373229098 135840856 634504415 158226638 847749877 102266896 827782730 956530821 980202331 187533262 845254554 977116729 988061751 55318479 577296597 157089523 264870632 896149895 953582544 528234235 615395046 107829130 194065180 55855632 309588828 234118924 521896088 824531597 825023330 847360314 971979476 600172305 757738018 195984683 655952223 397736073 905803757 947442895 996923349 578152940 588191107 454353999 767586442 701634088 902195542 472217276 490072233 152594695 420439594 276319156 806018905 111073852 821440199 350580054 729625672 922028993 935393200 206460994 701743949 770172024 952298680 165907818 423066067 902389923 903943683 676088674 940256580 301173205 321849408 898777337 926716260 210130307 890181044 99970475 560053431 501560527 778261699 223220097 473641869 642078349 818823263 108025414 914150769 819726374 952335960 359519032 479109697 389644865 655444589 345794229 699685505 198830819 488796427 528640481 531618348 198200038 510647279 732989528 934529952 37150858 293525357 367434605 477321736 27456597 642463460 856665500 880632372 334012523 811533355 3499308 158117428 1015491 5010620 319758065 452875015 292611 393013653 547000803 609031322 630042789 914975400 21322998 815990246 76155285 261762174 341901688 765922126 520219386 818587055 169945920 679208807 977965112 985888825 20384757 312183443 186602827 908805665 312215779 451122508 155338751 808900614 349274203 384891600 106947653 380032877 425620109 884565432 467122699 554698945 337793781 395145667 365641507 682081895 986539863 997114189 592094123 996802974 138383215 449230664 252157545 825459418 648567612 696828415 812612074 839403432 167640019 629521686 290339834 583428036 140020776 912295899 62408012 100656825 327392289 470616402 686349405 806432779 308247201 537185431 335817919 653971094 867994162 918018052 33518722 930731091 617495806 778487297 513138242 574025798 161378322 512372121 901784465 948712623 506527770 543655067 886950032 948691215 987878611 993712852 728556311 780424544 248801024 926914546 847181847 934110802 112750250 572351903 851535803 977585958 507674007 776190253 41737257 941846434 227219665 647477606 40630843 310368966 653603610 786383337 418236108 960658361 239667384 437187797 32283385 41471250 733603716 970023933 794188930 884848896 684027724 982334248 293170753 753583948 149327648 878236510 384339261 504875836 990761093 994137035 281201247 409887960 403294609 935059347 372908725 465716023 891342780 976340367 716067828 865078532 942921357 994033250 670679114 693496656 525516188 633904146 928135929 949271460 596314070 607362830 144428666 789171713 428402530 992951300 963752062 963904171 347108331 727302848 113202119 212169830 284273740 734235456 873977543 882222526 177560048 350823494 596176659 825849501 536828579 563320705 187089467 471545032 418288215 830304942 97387290 397408820 900971701 943886705 786301988 941251213 251990276 938560548 515118310 969440384 675841244 896352418 620159445 752919502 655874393 777175951 501871548 716482892 587479972 651497044 879525368 918261323 515894185 692467613 291113492 471615771 637772060 868445409 611677662 986819646 258250109 334980711 593465381 781959263 905733221 973191460 256999804 698075787 334740395 594382011 522000139 951056483 118744959 638400633 861470698 950372932 485195280 703785349 730561525 787588842 176181244 384071197 265218839 275974412 750173072 763339375 689923394 780488500 126553355 128915422 186744217 323992903 977471794 988258990 343628990 408106366 509127716 562076376 32350574 112695628 644855769 881030885 248767310 372970146 148793851 869788881 8995277 370952782 533907771 734294661 895679311 966514315 519704982 944593429 124515034 446710441 963544815 992267849 832958041 941445737 466969692 624412137 300297763 961792353 980079590 994132208 287265516 452506040 179225149 918149997 86921310 794766876 442651145 976832999 277367363 958872676 532369846 825289656 61028805 878274092 281151917 518645615 410372049 542886082 400219259 798036316 891394825 927062799 463793219 563495272 382440166 550407651 5210896 67538245 947709263 947721252 524830820 774844404 261469834 501799717 120778971 330337135 987474706 993258064 833843417 890358518 880317139 903493723 249119090 618276041 406225478 461302281 729799525 972675137 433600878 741952280 835604380 916406411 722889507 953361636 595027854 855065909 253224177 810441379 281525777 306464071 20192106 513246824 602547249 707046602 244346993 907124470 181913060 827313402 512194756 756043953 666471270 758651317 971701956 978899423 70876047 378343100 243566689 779525023 110793577 324260109 301337670 951901557 137694171 984181940 931094496 937545500 734943753 983659965 933181216 993678091 362587583 489292264 792603672 921176986 446031517 563877932 18484889 355315786 395472577 455237695 923190558 986242564 781619047 983861877 905941405 979222536 818427592 860225873 562918905 784033029 972931272 984727046 155459764 223369520 266985880 998443331 671854184 919605136 717779361 912303581 971125646 995468312 770001431 771959652 760239048 794844281 795398067 893965005 464624796 683775770 987593874 997472584 356600168 751669890 204059979 333312518 325711908 715306927 147360480 369700475 501166575 760310154 565630617 650572013 947079757 994058863 800758768 835186896 732689645 958884013 221080446 693998227 914698819 937260086 800692266 841329757 742935064 905158774 140813824 228137239 470013731 719886515 893363960 945760680 281940820 775959926 434989657 888618229 409864684 412874856 259705883 476430425 985321219 986336782 964052595 975995075 451784033 883791698 747704882 971602949 403751973 827092191 357598849 598964248 177923155 308948080 71030374 944611115 104805638 503535822 985123137 997858669 90180177 255128206 99988772 615853419 160206512 771287823 67737334 160334714 752162841 830007454 493568680 693424706 814011313 916922758 883563345 914471156 738347434 781212008 374252974 667261589 659143418 770508847 44905076 629129696 810719084 925260501 905295245 925587727 430526269 982841703 142501821 862154003 866700994 947503866 785028811 868394768 828592365 846352435 923207493 986222502 547846024 914836701 805293139 858212693 739069463 873687358 14857417 556865591 165604234 659490549 509700415 971408319 407275133 643660928 478997371 777471729 432114509 618081817 895612084 966728505 904224672 959895412 119835193 580489956 945036751 961267673 231333642 760596710 516790379 752401681 891053703 979697500 554589194 955954408 585227379 680028067 983133697 991620351 705350242 747004176 721215916 923160795 852953933 913263145 329283504 424979524 877103090 967131978 658955154 751059911 159574586 648260244 751309967 910734592 442495107 726854096 148756594 973187086 567390107 819520876 310922071 355095891 590476221 736044076 582085898 968444821 224178905 270056908 753034487 909238850 424054068 465428559 583063969 764270714 976850963 993388407 696416569 702526150 682876075 715868502 849100002 977705381 175239529 308360104 687876063 835726688 109753868 334303062 568896984 788961537 884618437 959598413 154036863 177513218 937347722 942110142 738920388 826818162 479978634 562528493 772192387 875088478 79209261 766766466 666747819 907337821 675817702 909895258 593712160 831922261 739742687 797516947 580738226 904813349 262221661 983199273 476912973 834343996 678099393 842595395 849213850 955011558 695595008 909289983 948613371 990273132 34681785 358246332 774468590 782611492 125139289 767988993 856346047 991511902 79338588 366823688 34454912 370978207 602280557 908555584 177180525 241044771 803077773 945476727 485287857 981442397 539645753 923791827 349869715 670423285 251716364 593628606 289774198 477233624 901281027 922725123 5123394 599340805 981105781 986696854 95032177 623404128 181106757 310460627 435364024 615183693 146558363 300840047 425008755 614930114 294140088 840658840 600260481 741954529 504645307 836751198 36776331 975527737 477978082 535214605 559545532 957042698 402279008 737875153 906314036 978270319 291128928 856415596 996211891 996346403 742112921 846207759 411292605 891180571 91399473 699827061 3665351 390165762 449771685 789527189 112054525 883599307 868168820 884194538 53695989 514617063 830579344 907972449 793666842 845213480 572984911 977158200 447611842 966177202 856014703 885864827 387580651 417874414 744279126 917233568 251405380 321475532 199978150 225239131 52591200 428627248 143212641 381248219 697673352 947544408 6496489 587538854 789406059 973971171 697970774 834925371 437579689 741415839 696119975 906884610 719154893 856053021 273647725 675817573 168601233 728528123 778070215 920988326 791519812 855545580 843048891 888362888 587969751 872541365 754599293 759037783 200566520 516608328 455621544 804258314 734783011 957737715 90962499 981843087 777330241 896670186 710949414 908273765 253174785 354531555 659044085 873295671 997865813 998253765 16392723 341601076 843441518 882838059 250121370 996100559 486122701 947017795 843903148 849316455 720441652 926293118 447512326 613865931 241188942 580693996 245963191 385282109 521811337 926565506 7193692 235289475 752805958 965088392 876750228 982410062 656121838 902843216 416382388 859905214 133135605 643115213 515691700 795611726 140622470 490587889 942452024 958929285 236459029 506087847 923448195 926058428 464206943 746420008 838348245 890214546 318072853 487642300 288759762 648345805 924528052 927845993 349819112 700365013 714155138 741959441 466895300 534234274 230641968 913274866 379477469 937134089 326751813 790146551 293147530 646603838 67631795 655987649 584113871 756853762 771044175 947037753 517483631 816444800 935827582 941441736 970347379 998691380 145794942 375599707 696012381 878452316 878928673 944602412 641152590 726077008 944274129 954628585 127191488 616538706 405526911 444572247 475460823 565250613 834318258 885258870 925970731 999097207 556233876 834286102 111980211 427115719 782575450 944474800 249146043 819552654 367488060 441925255 167668726 675589863 986959314 997972739 685334777 887617391 606927121 960590816 601519928 800446267 510828492 669718976 235003320 505312403 638150333 724662878 333528633 482864007 581019556 707397306 867092820 896930330 76726082 689426530 728115492 962045285 767141091 938453637 66871336 218774037 410477427 413155962 959476761 987333670 889100337 974625090 716740499 832589600 883311641 959965920 821205149 940078726 713144035 971048883 793121405 850117818 514183423 527942167 811161826 887970600 870487271 967995110 223377724 405162054 796363608 974400012 768990813 817043134 330234442 402607970 199288212 851859939 537777449 852641060 440013655 805583915 6358614 132910079 552523452 658127736 886776689 962337677 799771017 872941262 522828215 731888721 592406333 838473037 513392317 870763925 845911209 935388970 925834108 931759597 59723066 748597142 940049545 957001655 929652521 953277786 826501780 856488740 626515975 661429778 883696712 932060443 349112633 848926874 733555678 825072793 22862411 481681430 339439627 935673776 61296372 536740917 420427918 789240983 682660656 752619792 205019582 792572850 176855408 831600570 618534370 831690661 710738822 727566171 932462164 965668024 88488774 878327940 575052538 917232192 830939058 857292976 188509369 259788527 695243931 838142658 828235406 961030004 540765115 990335926 418198895 491989026 140758394 895720217 994923049 998972108 607632024 700457769 435442742 738426404 613790544 776881660 164280211 247495885 980347112 984045735 943242111 981565706 350564144 953859743 71084333 790896393 663578717 767277055 927289268 965155021 374127271 467947458 538719682 946130926 600453027 666786634 781258321 870879479 627491989 915791872 232431204 676524267 521405547 578981893 483420174 753254017 510128445 657775779 733665673 761002994 738674232 819730548 387386725 875647099 708853918 711039493 132999093 589516720 663300517 745786957 604349149 892069305 941003586 965569687 465604189 731997594 699971002 831750955 2964645 23209701 329855466 376968058 674815814 789551554 69188270 491274906 129358657 251738100 404582747 612389296 547415420 948281433 767390130 885704284 61232863 829497573 543290053 899061111 637632506 934568503 146927844 250394507 530268712 733056273 682423663 720941022 1433802 33115577 785380581 787724214 945715307 959302808 718183128 787227231 904313524 957594140 829536429 891250599 4581868 560924464 809596043 866190489 526783063 558270610 953161566 994221968 30028522 551271896 620029223 714258562 226312890 480416674 487941412 553853941 832894883 839078670 867921832 933497848 597071436 692724107 547278565 711293778 394089289 718636008 783408260 932806857 722599249 858863464 427341731 993412899 217272497 957894618 264984937 883503664 566845298 655456444 993622909 995120318 454183916 586097202 776171135 931273552 973868283 996392059 220948450 414335350 884437215 954595304 534384011 707920930 338749176 833892013 907645762 955748394 76668869 677810380 346605035 786271936 28654501 232167302 320248896 441808416 444793222 737518698 988005419 992828995 194728889 615792905 199155660 636132111 620221000 869964646 505126932 988158119 547899298 784774075 951458924 960238051 291042900 627084193 484744699 767600450 219505913 884751033 201293363 310282237 814600360 867003608 807992072 867793869 962814136 979158705 703970553 978556757 803160953 902741018 294494907 663341415 767538932 849814978 480934695 918966626 480623751 640665838 940156773 997437758 381564258 538632977 721662029 903731495 32958003 886543889 777741142 875297735 139536858 596748622 704140030 882550426 561971086 875396987 556874710 610712828 508466229 616619515 908449308 987132293 340524166 370808916 640171721 669173479 142300705 453089377 837715303 939531890 177304260 612188871 60518614 652062058 16912060 62046631 397402680 470242347 349499718 395950699 569247703 650413415 754810434 797837637 198913627 542717993 480827282 528972388 48267243 852105663 139663114 634679199 315905340 948581813 454102975 913584427 266826578 424476420 498728590 652299266 304363150 989734225 651016261 992899235 419396387 490148748 158726156 515476864 427612847 836166718 693440629 934756841 46158161 161615751 108066702 374827154 369275760 695490614 965938156 983980396 825558696 895357446 401168425 862902924 365610266 578818249 339074451 389048817 401828752 937839578 822030403 942580036 980826189 986118420 819257360 878674319 370078250 648424089 614874799 693692797 634267991 994163401 153471802 314048143 782797705 941779712 891009571 961896383 604428026 965934704 392100511 736583450 740521153 826254605 778705664 817590021 846969184 927689863 50584258 954585408 135544156 396740837 226916735 607644352 658381317 857854058 954497546 981186974 896173031 936883581 870253993 965898371 13830374 227589597 983734857 989427019 614298143 867261654 278633482 352249677 13443265 864781998 377118250 747099313 90391836 195803639 451455814 596576338 488461438 967782605 726951587 746281733 362359937 428449791 20729069 716898696 494244831 517091071 877593223 982279002 745827123 855973486 327113180 925788719 526331958 576315314 43928848 855506444 904377906 933231295 680005438 953600945 903431828 959518535 835323208 978296608 998718142 999119114 105932532 857026056 988476602 994744655 545758672 905919790 672726322 794889198 457659069 967524521 992769467 993034498 854269799 955486705 914129404 928219283 486353073 523710584 220503192 392279624 939754314 948649808 658818833 977730335 617142942 665900664 856962053 861906478 340798824 774464292 229850227 551396040 541698170 819196303 190941960 909875486 512387112 549232464 766250903 790168988 594392788 634843005 449466101 910160113 301716617 629508306 844066411 906359011 818702070 927539599 996949956 997754738 14179503 811429524 200174339 311955491 533030422 810853044 357137547 782721032 639770565 774713151 730110914 772434110 237640784 955291069 527595268 540767740 53541576 789613825 346168910 640383500 120844229 525279300 55918519 221548484 352017015 716920647 761825118 937571761 772480166 979458680 854498632 989262092 223759837 791373582 865548249 913848560 849118191 926948890 676857435 706132551 665428781 807952968 304508900 979383935 236723001 785369982 256852707 483635882 783609715 893081202 210320543 806440668 139396811 920823525 643710353 787446048 306128379 742863200 934232975 948255526 436013202 870348991 103205443 949166311 48703746 218152288 843448110 868674035 644098805 728134781 48010250 416896743 482999660 899211377 333556401 504358361 365065104 399261403 888391133 981006941 70345388 688761577 608265289 923158169 631425937 829748981 31821878 296448536 262726537 910605319 786950349 849372040 232929109 585686936 484899021 945797412 783788507 836058537 639902653 897022858 483138993 554145340 839572794 860474308 853744370 937587671 913900165 964880243 251651919 803077206 820620429 865322830 546645016 571256026 961895395 982904355 339457435 980428860 353745605 851811827 117656820 873147722 326000828 738085470 20983050 299546260 873659573 931462717 142359875 267952851 477400701 879138789 957105303 963423506 429799475 921206299 818463537 929012937 967755958 984328453 659316342 876336778 325072836 492119529 113657417 364343176 547199818 670710916 831091884 918598786 992542963 998401503 304677605 415436459 736473103 767284696 162949144 283358181 917857279 920091829 825060676 864662824 754291691 918088517 849388098 917332365 731421232 769257999 935943516 983630963 416393678 591377828 570606602 624479370 83319762 916931295 821297138 913064727 400271199 512645318 365974966 696609299 679534213 852410350 376824126 547251259 523030096 597342048 984408620 995826590 213849884 414093373 638235967 903977721 915380210 952844262 559511408 681020063 589899124 837736039 656847968 698063712 752808819 955638513 129806209 636982844 159673978 967823621 368992158 395660642 528416451 799616745 438524240 483708557 28717665 818632397 274842933 804591277 391969841 468104015 158330956 858257735 727430464 942342055 63511198 189669601 825183516 865854266 378197953 699386729 939615109 964573343 261182682 931111067 394885839 961016761 725539600 989621517 634234599 994459286 250790982 611828601 879996826 895273842 163307973 643205609 736864435 940103785 36921655 493831728 341449308 602508909 147632282 380890758 890207184 910310693 62147522 907945737 655189678 890661296 565862519 745827574 693861376 797574108 106694180 429050597 160815372 744478651 247077930 755954084 859634535 990505834 500301500 594711525 770715968 977223717 905545759 938915715 708741136 966207016 209839822 347596612 862913683 975794629 98023901 463614479 487313520 970976960 202686980 974106687 543164240 736555890 953953370 966158507 962160624 982741884 845173629 926241286 993442324 997906029 873778045 962268975 446434838 560720466 269896492 835654084 790570777 859574373 662082824 902898081 307801651 962568005 528657778 867377992 915855564 996510439 214621476 989219382 833963346 893793224 299540401 497145516 744281398 754361946 782400638 922853355 239095675 929388299 595701940 959856962 898503975 941859817 581190542 643648335 37240864 46225630 354339337 674664214 579285534 743833906 805357465 911881941 462155381 603526027 289638239 551660112 600053826 930375437 161696347 921306418 822038733 997444691 539027855 673097141 923449194 932794748 602378439 673254975 497046422 605429410 90235588 827206735 480194991 914223791 558560672 703499437 529562016 692397503 46995429 643445204 135678953 703754140 727157654 898330931 328764524 387040354 112016456 861722949 881423762 912443703 388746632 770600636 520057721 911099315 224329738 669093581 978014211 987604417 964867810 994971332 116733497 314203480 979257150 992631356 110566081 960878232 221628140 462968292 453596309 588971554 761741088 809440666 491149210 622631489 822813413 959570025 283370613 818815711 498840270 886777086 155964451 627322106 191455286 935904618 347099764 828342350 494918555 842369028 941820829 989677637 780729797 880428014 272168682 626958732 646926035 802356703 935374104 961713549 47542004 243524306 44967149 395245480 359326077 712868530 619043927 852496351 222308220 921376976 757097494 768326629 420400582 548150059 823689369 891995410 529249382 722286830 222196059 225973816 704102916 944469657 218072471 998839514 758805175 867029602 349417124 704665963 34672340 363861137 181493740 962930575 359477203 577797807 935337573 991650215 473882182 993748107 448578020 678107662 107398212 578315230 483358413 811741158 346930174 470237385 872235442 925263586 197792847 699581043 706654774 806720936 306958860 526838666 120258647 696638937 826990065 830237633 646747550 755994534 43970601 954890475 412839978 452868280 283572346 320311128 912474727 916166044 293387167 877764448 324320413 956679409 940934930 980835573 484123812 921881053 272613563 812833835 52167976 621519635 807228334 978854263 347942153 845485693 964485082 980228253 137372013 567452236 29420591 82232782 756637348 878481784 764643413 804930300 91139030 607129169 918767692 977160650 437637424 912580934 328037278 332936182 472786862 901482155 938868332 967030294 841713557 910664746 220251318 500791750 102579872 174088048 544628792 678303758 856677898 936398738 887829506 927360892 522329538 781077380 715202347 760662561 737171365 948902156 568025780 584854412 320041583 744331095 4175893 862114892 4145757 875580546 726633166 752818087 471248129 891439949 523077073 931686149 11178521 432511397 79207166 525169460 751629142 812181795 173090689 738425915 335345132 631242059 90607690 624242960 608365386 971452283 889777615 992198697 46547241 128464878 748612448 878037556 857809490 915908782 383339842 511215224 222093565 577351652 381374908 917323832 317275598 497417876 235629614 852640658 182650451 842863611 620160836 899571975 351360521 670392063 862965515 966695078 208895687 970248158 319945838 679820670 268962894 473354421 605071955 746745698 645357983 862686871 254972142 943692786 924270200 987815329 763593200 830857481 764598621 923734138 392991469 533696706 301366241 616496351 427609558 871063423 831640248 843903076 423856362 590316216 271912474 281898904 203183086 905800241 257543496 380710730 294579389 754690665 154426420 760721243 585515946 820608481 66536591 664756717 791092080 955487240 895758346 951467406 6058966 595537322 157090388 749629273 340820666 959025620 294665375 487796679 705273272 886393924 156100237 533651345 97824744 492354054 64227399 565455381 418527904 578070047 100491145 818199810 372412213 422559288 203635436 842549230 708523985 852613692 831163903 891950978 644856834 969724574 227173810 798051887 76348519 738326340 75458569 552577673 410645342 938319494 385233933 900613536 466488229 963384927 389812884 544797574 239297225 291681064 21668184 40044896 694691473 700575492 152669086 635809490 312452009 427724980 667345056 856478970 652338761 809287828 647584843 835357944 937267361 985205552 682167138 803483878 686163586 890665786 73434723 820759415 522816014 958075428 614910712 644741850 411929199 877533793 433269511 942358368 671899353 746263376 748278136 906687587 493873457 499638172 873836488 907071432 944829985 992298278 45684730 64805132 394984901 875274573 811056008 914330747 183221412 477100668 912755413 954050309 147747236 736415960 26958845 170568137 826242966 927388810 701994699 756452239 777632997 990175555 813844096 817312636 90407644 261959652 475262286 639966946 848672565 916047870 763100507 797227104 121913961 794247474 180022266 451213830 964521420 998166148 801601181 998502976 553925995 557444983 638869263 916860131 890371624 895156306 556961699 644587502 192247430 244870230 596732682 749679411 915268079 959759428 940095671 985474968 476123322 886602531 206747426 670344511 126058004 571299845 976508445 985865219 525895375 659532435 91632259 153649724 798904259 910424790 986435503 991657004 353236506 606376941 827230079 865243262 654581374 836495129 681070400 890479969 979601394 995756786 834903348 941015480 534868154 745276155 346327402 661052142 23585312 807433743 285624260 563735273 25901177 872500116 663370234 923078737 106736102 770381046 276025722 950273058 222179008 757653976 431201651 876491626 104331715 808605364 544623705 760167890 219193022 704173520 797472663 872108181 736727915 944968308 261560471 726602873 966858238 996047118 705200339 843507574 987648141 989888534 255546625 804634506 788104910 864264796 131625656 499002837 768272565 891098075 45905405 291012535 367217442 591154223 455625084 924066973 478490520 989443539 522325367 714182935 583569844 802271209 296183030 970868119 113912906 744806918 978016003 988388350 367486861 583486452 902278779 991638346 561939605 880919642 470440864 526191826 386320836 650946010 814169172 898077887 185428612 494276641 169415161 414886278 576079920 583695287 940353979 947345373 284308369 339007330 227362016 576885490 589826178 858133882 679779068 960682102 1210734 946573014 383675140 498019747 71012632 613958646 402528489 849314950 227873434 809669225 384734957 495176581 744780741 863966619 681960617 721449111 971595402 996462883 800268876 925587164 501231905 574264943 379289365 769410301 880238061 991749693 911986494 928649037 789614252 897727772 951191057 978879464 425044878 773651614 619802460 766086780 182713956 692229747 536645102 790043396 859367377 911712700 943141919 974190786 193893543 599378022 121889187 941147447 26359688 182943932 340083089 350570340 59804756 216612044 513466997 640715948 913092070 930143833 238111000 499280371 664660641 729091242 606361320 881919995 44254478 671183254 587339939 943900621 361006553 685610392 48184054 651523670 925070948 948362480 561803340 969294188 482095704 872786161 755367743 785355906 327578420 977514054 26016785 299383625 381032346 544704259 465214026 500963007 313913729 521973347 955575396 957872877 881205698 948893524 978237571 987137272 218621143 428179365 101602031 259206688 130073180 196401934 385640588 579355511 181688343 707590531 686533110 849533376 923199067 981501987 233691344 515251847 960102289 991607599 676966920 824413112 698258355 919612417 769413914 860486377 552354952 910717897 793260437 940406190 973314869 997945054 626396182 669024333 427015010 913129378 684946225 690655934 12986543 153892226 744922144 896165662 225856201 389145984 382261216 981703998 602943533 707823506 985643696 990373591 102575204 942294951 425672115 868165954 74038987 83001541 722048466 868973038 885871628 937933645 572885411 924074462 203724766 888150121 282491206 775425733 412391003 603419397 61333631 493588709 353807664 622948922 981469154 995688164 165507100 562911436 547969810 665808874 366138202 712980909 426045876 432408939 627684589 914674183 497157985 933584940 163482598 772216909 57793511 549697850 914371336 946628527 948650234 995403529 272321852 357811811 386295207 802768126 98925807 295429226 703848430 867510072 938874213 949639365 761811069 786266575 994490099 997792064 485517040 876996230 120450055 618483903 473158339 736431823 559742646 932434853 420261393 941482273 752644083 805912998 829213127 934865068 657989393 734557529 589432585 770557752 687156974 799898245 372777641 664574096 485221549 611293760 654268723 775389667 631620295 860947472 160188932 477169722 554483444 751140372 552426736 909325778 706465794 825830185 31994646 80938555 124992115 198376863 56247580 497359431 31410985 616157835 379478982 590290888 666907914 972967426 75251656 752507395 2311192 437807155 144179875 507356978 476072153 665102233 366609970 597132469 987690334 988797071 67217811 84373494 226420971 950542238 534927035 786410723 544572693 555824854 847972257 919123723 449056910 725241587 328555364 837600542 63757191 400239260 286362887 568876936 882616907 905155237 37544680 627616374 196372973 982317477 738831159 933643999 468777611 642855321 484865210 645294684 213519941 599861608 674803752 868661073 920767995 952526180 931031056 976033022 762363460 787181045 863469485 971837689 407159107 584365190 63883001 861298361 898717117 958276999 149957819 281280724 991623505 992870985 383031810 815077950 803876769 955153403 226144210 352208337 172711917 497327965 730172623 783945169 497672411 819037978 531910698 596618768 44354037 977891028 159960651 505894293 254207345 744977189 268998544 552181390 871360299 934239482 414724245 517148709 922392622 971420513 472333103 625697351 125167185 759735960 193424249 333753117 784905364 818942403 356104760 637161823 449178118 457328892 519417132 991538850 733317438 927664252 179810696 366419919 901071257 979538104 664305596 690233416 720651524 866917804 218814380 450491006 886144195 894316324 78226490 541489895 20533285 679794574 125402504 833885608 302235620 506568904 72424424 901126306 774996249 938487210 414232169 791025430 285740990 784124493 303984545 524049193 595770082 982053117 600617037 817572004 99188017 354554576 139540785 350549366 258762842 536728388 285456374 465454965 530846892 768068426 7060833 431412264 359685669 869042720 149094004 438827964 131745625 862261887 176502952 865172141 538558163 733968537 578366912 916010877 566114943 692471638 900012908 956509897 59431246 827987059 224505048 935847844 852559941 944151236 932035675 947898517 417142657 657297469 87852457 760804647 452470164 788008064 392002220 493866703 693955603 818603645 418462182 562986060 72930571 823415590 412961047 683960860 160367740 731044419 773167712 835203202 399056436 916014398 513238721 626214477 805735438 856089362 82471833 935416869 363983015 386329436 838261919 977303913 894749064 909017314 805678216 899254547 833306451 916601642 528037314 660980541 887456066 964647966 732707363 787679063 141426244 526318299 252086616 896283175 790412113 914170981 161751049 825780710 120847576 125778434 711766275 732457043 685711323 867103499 969824084 979771901 927551034 968454530 900835945 959595103 631295588 765966753 991286155 998529707 681407511 873573442 370295474 455438078 316093005 909522128 732617504 930196587 841981318 986496332 329558475 847286559 359942264 932805533 55202344 253781504 263431694 642668397 242738952 685105927 314049697 351914249 170831480 571489853 51473939 995035075 786382222 878742100 844405636 861635740 560697545 927037139 242901859 521238883 435150768 842166351 569825679 634477577 860042911 917999313 486343181 718943334 605001468 941394142 613915460 620085480 568508095 883871710 471333595 732100241 419457850 671290007 527170571 830692978 336157676 349514842 491745602 959566487 901862865 908964310 877707348 881214686 118208808 320948315 963803981 977650576 81977841 807150852 604829064 758415301 506702935 788218868 360116781 532738334 193273173 816805481 863084354 889079882 355148478 502131725 723396061 967618527 965549835 993942548 30854476 320459146 419760013 907462944 981605704 996279293 117055553 575821781 534086558 921472769 123794106 425809676 156352115 616939621 885923323 975494987 910600435 955140767 106591119 501175264 672218217 704746008 505289199 741437987 258789999 476807164 607350161 805276484 777628639 876460023 160105510 554149344 924279940 955530400 351149746 562249206 869047199 964668572 201393129 513734253 394488885 933736315 816043774 920723318 281908512 743383664 694634478 812993527 401729936 749569281 275954550 471730256 807641556 823865497 485642782 744789620 646693706 771870868 936694774 971860580 56025664 967615989 645443219 819343941 880202784 941725840 25092387 504964605 718813079 829296233 10276863 843043845 973824434 983323665 990108865 990167529 696783210 891383652 255707348 401267978 620356850 880366211 880751159 950581357 32995608 153397167 247219612 909009040 131461931 360958691 329176381 441392260 189330011 827258558 69041563 670833510 34675663 891975664 770862718 879438663 533416515 661806387 325347443 594054237 37624054 241012549 387330825 444413867 696009792 879618337 646386536 807868805 926823767 978827087 859285294 902055960 80706677 184331583 175317310 714369911 863275811 928931679 939457170 989973951 793067382 861447004 700415682 934489047 671749475 744186598 196313772 217238636 326513020 947847781 350837700 850396789 679769796 998478961 186079472 837252522 718793915 941721485 8126183 937176100 33432879 974787982 541675612 886609186 537613935 704269490 671310961 943490314 944143272 981726412 895717448 899222914 570328621 943062447 340288651 505281542 336592662 789561172 766512228 799468054 846220099 890703547 843725484 861543225 757418613 772788100 568958298 920269425 855670938 946749299 45251832 992324819 848758007 891274394 901495333 953342840 966453132 968241174 56180100 860079425 961353400 961609151 664841480 734118272 26137637 46823324 282327454 918969030 654378161 660647979 279518817 324238881 969235574 983848791 284768060 845761102 24028930 108877706 952018565 966896473 774374323 946280189 323291403 952292679 806063003 931453935 343987021 556481840 474505054 782498760 290550277 672210376 636700700 794037896 974198245 990247887 84235814 996277864 148336412 562132555 720457731 833912885 82221560 233641104 765348724 955262726 78059431 738792906 163789652 930935741 171004548 248522356 596877157 689853836 69337386 977255777 498154262 501914186 323530119 883348514 951870738 959151931 640862679 666024816 197711128 763604433 218720575 501688812 99868317 139272490 49519494 631963377 21412956 894587349 482000625 594891125 683645366 717956411 153758326 579429060 652046822 728001376 295667405 504291917 128394503 799455372 406328910 857483815 774098385 937413730 806321233 836157521 137668284 704009663 391863859 621981672 671753371 701140622 215045521 864972690 746798047 814126655 798006647 895327152 197849206 273379245 633303761 880236358 223932706 798154337 394468263 486514798 534045330 632409678 690545733 973900917 207472000 636068999 693325418 740507393 833396838 966646022 538659837 846069537 632592862 982019840 760773724 917566568 284932676 953751589 634821651 710520571 498004747 731390027 129829565 749496059 814993287 950036799 436348606 529082986 472371031 976930144 866130179 898207266 329456374 722363156 746002144 942106890 397560726 807362162 67372039 945929318 257533323 892278155 778006771 832585746 281505614 769507946 864988438 990670453 120787372 337154379 943021350 956922643 45873362 877639304 504866809 509664353 904376903 924196921 900333906 924811741 891941299 928183408 84398855 628917069 261300601 344688487 587609915 858211204 913366383 991725050 823011276 971392338 378232278 416528577 686702630 950208897 519055388 673460908 555549912 965693100 571253102 764835239 317164845 936955718 526175416 563026874 849682391 987283231 279122535 432411789 751673587 994425439 658982934 823462062 488924513 774050395 224008087 925287294 911194987 985965158 593395 898412362 332288230 370248982 394708108 477875540 1810 342594204 171283775 242780967 105625058 224382914 401301685 588702119 125029674 454990771 429387315 924673137 499582357 529207009 466995391 927139940 708291670 884090481 534663586 830727826 921511704 937642060 35775047 631689426 922083653 956007520 926409145 971058809 776444303 816550932 739317538 792242993 613147110 980184401 694413009 853089569 690392234 964990906 639865633 787103379 376037863 485938852 310976056 825132736 935507779 955147473 994666735 996608550 654586416 933375080 831308882 838202113 63430325 906949190 182386062 639116272 559051800 974674881 425609985 829314413 382201045 633843209 245208932 558007619 871339061 871851914 952383794 958983552 842413095 953620340 672539548 864856181 832994293 943687379 818958120 884940931 671041142 876037946 906697230 925312368 75153986 840703528 299457675 903405695 950832517 969444263 985125885 998631420 247081363 409421659 492938945 668856575 453218284 604891340 16719303 440833059 359241326 869346275 900134491 977334716 161145300 481666256 859240846 925996887 91223026 454914352 456285834 521522900 672725150 677617938 892634806 983799227 265072695 901869453 412623535 497378806 808701241 820767150 150476098 672131586 37594477 925483087 181198461 929421592 259899799 942027976 447163990 940683362 840122376 952997480 142310961 352168558 820318324 894196240 616944358 961425056 770325508 898196345 690240284 850559221 496328663 921099928 47603331 885237663 787909513 925780835 97727259 747718867 436521029 478566487 646208067 813626642 482240318 694582568 559733432 971397028 419686289 733784768 399379179 767409018 574004178 695643259 85342423 597639684 795736896 864128668 654245008 964918068 830317907 874313960 435290574 632389604 115837940 332966298 172132043 937252327 94300911 500319797 990060153 996681696 903919657 978342067 698627614 885211267 252379838 919307472 389458487 642303108 173599638 421148303 31609154 526009846 500198068 966847055 94790961 898289516 140303294 531366287 378937245 648753778 940278699 985129820 112997093 821193015 362484831 867770485 287237477 648695371 398309903 764197270 595698456 727856805 523490013 989582631 266542593 751292910 291356239 666975884 469704854 745577201 105878826 238537591 524264149 762034344 795340022 806971491 640832664 817671299 168899108 309721251 223759417 731691207 470866152 885266668 2959323 449028726 176995996 692518647 290130578 679768434 883557113 919826362 202466144 783261407 980158607 989338376 852530850 994380600 813529047 929047191 192610492 544646872 571573881 711398499 768784449 931955618 203739337 685129114 204107897 441971335 155225719 647637048 904540889 962392409 601847200 751935601 760417594 930388616 221060755 586383758 312201772 719969643 988935946 991840575 151882606 440293901 330489345 907160220 871685656 994960524 799823009 883964452 26698878 384711096 913793246 917469604 106796528 197259016 454352110 962280959 278545726 883281175 928485256 940346279 385661493 789546271 270994969 422724019 818592099 952058343 201933918 877587861 761615325 942946388 109142001 847881600 218346582 237875400 375477735 399333789 917896822 999378276 672266865 998793147 18159750 971838848 553221329 607160225 40285033 205146575 677370070 819867753 112920052 967354171 173916577 848083687 284504834 304034099 241838183 621193274 759414415 974510874 560202757 905737564 524554118 539665240 582211313 824985925 116806421 472164596 838141218 900659530 771302445 933415900 604051182 972225581 678624710 995857175 858302158 930880080 829020044 914728088 372197450 934348458 747920971 850233863 414584830 972114353 593983129 689368461 985409385 993360617 826781861 866849527 387704455 712322956 209409632 608391757 421196343 955760106 769928909 983466721 373811576 702492071 309795534 764852170 167818513 792667010 877660626 888928280 376986910 785571667 931987702 950397268 605267768 798406849 660192632 660233323 925992127 929384881 851047721 925385015 158271508 538960396 173867465 343432081 406456982 643952663 427649054 968384175 773611124 940628923 854710399 933251422 593719399 878220233 368009159 940635965 899318517 968876635 114484296 986315327 14308589 69629795 574345269 817819908 373861518 718899126 119625445 799477481 907358353 936744308 986361467 988203021 916812750 967969851 313074425 373290949 64297220 315150460 395979039 663224626 210584900 867917473 359195493 437033461 979926224 997411338 492597573 562137922 849519841 864883576 599416712 789781035 969421588 986628296 917047777 972991667 898753228 930568296 698024672 963755100 148125679 895354402 853104430 937452267 973231804 978047261 220073036 707927601 979035589 996193612 896943713 943247398 537917471 808673982 126758879 162560230 915605808 980148342 248098831 963875947 950597258 990995576 339765927 754478589 382963787 535012549 469757936 841031941 47672096 868446349 374810077 448254613 785532780 802520037 516557969 584122573 21463371 716239481 342186691 636023590 438012406 570588298 165229920 720235098 863469994 883838414 914622071 925857108 626253418 639507714 451133889 954026737 990014844 999267998 409997829 999013004 836989404 869991472 640051082 884461229 268515530 749200585 688133057 932496595 293925887 584958344 596926134 878321101 581258362 632940106 725955137 892314305 683973831 815427519 338749429 601583944 785406716 928581173 586463328 915026823 479862437 708238576 437883158 463389398 306976083 721224393 442628859 915519784 345877732 483644280 22912887 388525292 750636110 916511346 849104840 936110867 704967943 879976429 953106107 971593570 162783559 978336247 847530782 953373665 483252126 668689057 364432871 935659183 690802467 904954499 828527163 847433845 70975172 227304065 647294431 673062087 393656426 930091317 869264725 889199005 110959593 643838782 773143806 989632815 787961103 971110527 757087859 893143744 126931196 823747783 907644274 909742522 65573545 480232239 766412928 770251800 846099932 990671618 838707723 843578307 184871436 534901066 166742511 318704994 143621250 964570599 183410989 404874058 714290181 744751129 919030026 963443331 911587424 979268992 65468884 786052900 974990468 996826424 361844129 438526392 414610800 891809138 664561454 989160991 470698862 501902693 926549643 996345041 625723833 983860640 757893778 853227766 448028293 688399366 708775280 753179614 117302042 747390980 170579954 993021735 689853690 957605632 234641841 820533124 899718342 933864778 854982450 914889644 205445885 682221528 611434766 654264184 905297960 976264446 349022621 982811259 174344179 506606018 724328915 788633190 266891120 793424183 75063294 895571249 72430392 260110513 158680305 364867787 963813015 966308678 833224706 917470572 728043067 925039298 568441195 955601387 724125289 966110527 537575862 983023219 381433401 896672347 1427007 582488555 42359247 448395553 867471344 893508692 253871077 281696982 839867750 983802047 72312945 255739986 60749132 230381829 577487114 686790002 109387828 306929364 824121406 890975102 334100013 608937547 343055283 666720359 960350653 977237708 520318402 987575471 967594548 980842000 473086086 692290842 30701673 388937815 968801555 994549526 29114371 719364417 822550411 837771126 452915191 917355081 442068418 845203987 615362449 702182422 84508663 206315240 364101981 411487692 39577510 618073771 193340759 628596777 468827174 684938010 937048407 960112202 570609971 645062763 215313480 510578772 437223367 978249909 102962917 568343605 806125811 920716993 173928367 528577870 816167546 909311689 47893191 241831956 31216824 648189215 556897855 881065598 187753031 461271495 232055208 512872328 390391746 548794553 196612131 577371488 145276681 913488149 192427159 522998286 790395504 906720318 109010628 868071643 607992168 880165457 898538467 915378981 297483997 689893675 97652127 260684272 132544999 447508161 389995231 634799321 511263680 863371218 10124369 223733669 544586689 878131079 260160714 344480563 770023746 880903488 21003014 49089669 274002658 395627598 671719383 696786819 411989628 724784159 428268950 995656745 725182831 925735920 688150179 929873813 378562169 565795410 752089223 811599721 354939404 883096879 152047303 572935813 119600109 640511393 286547594 925473030 559231125 985482379 318784059 954608856 73573748 986547259 670187649 866765556 397925500 620601724 846322810 902049503 883933196 953258032 21160585 823038826 453636067 547256900 264081983 685913190 907423057 942883883 633216382 951182241 504898937 764631039 450725257 716982181 821727823 953398216 797815323 865994952 286934231 361837537 968596194 969108819 103566041 921132535 77246284 803074925 60651980 686232202 869240015 869642554 209006232 558519319 263772521 691871653 633657597 673232586 117051416 224294788 526367689 930460690 63820443 918471714 265451698 697787398 714513055 715135308 745060314 878424263 648698785 963860377 251248338 355471709 240434526 670268846 341524589 623341745 931605076 957885675 337679313 584701953 988945341 995069114 311124957 620438854 181026986 516952670 175855590 522302356 332313627 501896529 590127944 682536299 684602374 810652180 583148230 873023176 996763020 996816043 911807507 922030111 696184568 874703379 311568545 578458307 439537254 815126504 18973441 921945161 23507868 53896950 62996475 591303634 807806751 906427501 996052864 997083754 317452385 355759538 10824112 822485084 478152825 599804262 2693992 630771537 52068270 940161061 831501139 904371398 162884524 717553783 905525032 937568249 540392636 896453143 232718912 731278116 969790897 986304048 112134370 926280469 472712318 723530608 669333589 825263522 113287864 830287947 701647462 799614598 245276571 849006646 656996660 698434956 864361528 970715310 718537599 900091476 122009322 916758070 433212554 667572135 886759897 994404374 28477871 397501560 862817040 999279202 685397426 925222433 421116407 931763736 316489725 835419775 114939809 596120862 99023676 184242705 139984495 232822775 309234415 846161395 523896366 700662901 503298103 655518662 870274552 907117656 507711609 646723643 836701224 872819536 702029138 748036431 68674013 140409758 437052170 650700633 459270657 920420163 205568978 798439880 784816318 887043459 988444428 990876521 227955669 532845642 717194176 757153517 870990454 956786752 222290455 715122011 953094830 977641120 143701696 976187643 666296505 829013424 70552928 443297580 280898290 422375763 667541005 813572614 347238036 389564542 492870784 643808211 830645496 968170237 201638441 414503030 549825486 896091434 655615304 758287380 210592604 729963230 91314534 659341025 982751330 998057484 983250906 994881800 607128339 612142740 419622467 557968336 302205839 863925928 31957737 679819218 759227558 826190476 380381468 550877559 717802853 853821705 21303033 249578848 297175900 477397457 206576988 627484567 606559533 670601225 148760096 437359588 647046262 871914883 2612982 318045130 903526559 965664709 182156761 664491452 786650770 949118040 199036103 600736951 328595437 891508941 417480331 581721048 794020104 848721644 455450915 907990020 772173942 833625765 848744023 925799559 825910906 903203790 373098004 645506843 340296675 680960293 302832485 883121101 332056240 834034014 636901851 944422895 183519436 501338213 73891836 784266479 876601012 917963409 173190442 334276481 183497638 645190759 749953433 895754665 619498097 736562198 463774614 751963527 842801882 972749889 536312374 593432174 335639117 585902151 241103763 255582714 360640090 888268466 225451666 273363676 675923594 689803316 469734519 941326205 992922981 997754431 265933909 583760189 416653401 433954644 124314484 189553453 679553512 967251992 951839346 966870294 381173135 799384336 197288753 547346388 547478545 657542052 332715038 950508462 71255798 290289753 777247620 874927283 843827261 915716924 51772726 659156632 343561609 586707055 631035744 946658620 465910146 775477356 907539250 963012673 979299294 990323648 210389290 530969903 582321438 707236314 445579451 504118398 967490248 988255317 980290581 996168331 787581464 833336478 205136403 718970603 936862229 991746476 540117394 643416114 319580376 468885086 640079945 838889319 37774137 472361267 996611568 998482714 355575619 911107170 670423967 782532251 729488677 816491468 255911058 402659900 622522577 808578706 954936941 957244916 499915173 548069083 174974148 350087560 761272373 855639585 510188562 558391178 218496825 592915383 995244252 999180467 533648610 740972204 299048444 837145572 567518494 908628656 683065675 705910001 785769531 897271221 22394937 91237869 25045724 792105212 486611454 850863249 76980393 201605348 768980880 774382562 960999289 979484218 318996721 788280953 53985394 703730158 994618387 996140739 679658751 922426352 811545853 951848360 240371013 972090806 621830955 948338427 301351675 766330651 974195635 984283304 310111690 719474555 202710896 768536998 703381003 988554996 307362176 656879425 808723306 811604692 968811510 998940453 961960240 987613648 355048165 381995036 656905935 931741583 553743402 748958563 165352300 594932726 969818705 988697770 27153547 997695052 557021604 881284307 83478133 636189723 878846990 952678131 4611686 640480639 902091467 972696657 259599949 544980577 914241339 986836772 405171068 825667417 451951760 603387321 701613199 892931604 465607227 860662775 767687210 781708976 716955534 781822389 455564188 873611836 89411277 407484629 433936194 541934417 424184718 954014839 330428889 393845494 932649066 972003320 627558441 952373991 565460704 712812529 139360600 962066219 218568362 937057185 172930580 232868220 766791967 889203765 641118029 686690857 222329327 233665461 186451978 539412584 544153581 834340372 670859243 847252098 618882960 674957835 491220053 640212371 154815154 858352688 103979624 801381077 498202605 757348009 234387397 517511282 870114151 926040713 32117620 455751392 684947814 932940842 568977122 878742421 322550972 573031187 701391267 720262315 483780692 689237712 838446507 921587150 880564336 900258259 608066800 654771796 844663485 894751669 110138668 928060424 125445799 926351053 316075423 756574211 919389750 941200280 481249715 677469903 621297402 811757385 52490574 485837195 296933519 476924758 553932027 687089420 834724002 873805396 54849548 360811878 96558078 678334176 179792309 311049173 987545671 998771891 514035137 549103483 461034106 914957138 367501871 968325629 660185155 679262044 69517296 864315421 981981040 997298918 776942082 864930747 706221045 973090091 479119547 912136558 65877005 87344842 454286782 922262854 786524588 801007879 736527072 943224320 578227850 781473797 472242970 535324100 645535027 791455066 383108511 672010182 462580833 711985936 568085211 703677786 199645201 445040652 887729177 989771188 313835869 594907577 390551210 814656092 551614421 872204530 866402076 896805220 446887472 576619407 307953261 796652597 873636581 914863847 43600022 408435749 133105953 439245853 994333772 998008652 74052785 484327112 163133653 419070665 702025696 742447258 14758568 869568334 381644946 760855892 299598994 401109533 469656096 856987023 621282683 878079121 929715099 989046416 284068765 779840800 918437145 987014312 63732679 138226164 808360320 994142792 318867140 588285783 881713793 957756103 430340740 840329408 492009219 971999595 853095611 914644118 175634435 830091662 139875499 981268466 360901920 634171880 590165246 604578356 633500749 668515014 920142432 969145178 828849710 887781198 445406891 680844943 302583192 888602800 402274900 828252223 377325492 771870820 907703289 970970875 130045519 805868980 667194992 829257652 615869525 926336932 635030955 911820953 792718672 876454936 438258420 575845209 762010018 913499086 530360260 583724759 175603716 743340953 271046023 378522091 563256364 649079796 931231992 972854566 257088149 795320691 133158074 833769789 735860114 770585464 784882845 911135872 97154858 666981971 370092154 849530924 308740669 678081967 19557579 605541147 94019740 738344956 577718311 790554515 901126539 959583222 238660053 264407455 863537449 949322959 969225094 991819363 35344554 392940624 377276188 494995522 862986891 864415655 606988511 872487468 282540776 597918098 706361249 895364140 578315184 696041883 340702900 905774070 688029656 772496858 763626979 836549384 313358725 432040399 829942024 864633260 984540021 990161867 566169564 697416284 986620551 987961270 902912304 977353008 66918682 91743901 839838842 948459406 871498458 942001807 364729763 870016342 391565549 543589350 658324484 808104717 882597212 922371964 608134906 654333180 410753910 540737427 716534404 901407290 483073764 611589861 365788259 558382375 199107203 819345628 323433805 414424851 268671922 444251314 505815921 897783385 884094117 903303542 884506535 896616692 273768689 470636721 569374009 856241796 443012576 814966389 310926106 468490394 10840278 202406280 600416053 936431724 864800048 917201707 856545014 930017743 920662480 946711036 954612714 990931308 52504594 281372014 866414530 959739831 535078717 569384356 621739387 835810630 353664259 928669825 184677740 270768222 818899952 938830146 314407967 354281527 357123375 382047411 683069420 976358227 352790153 659866343 971068608 972335134 752757528 800253078 338610530 645741652 630862475 877541870 488445578 733089196 776337157 910780578 507222750 759172303 708095948 733646260 476584306 814072543 189121814 362441310 655346757 997613855 105881258 270375071 693661345 894907251 816527773 966797820 39473765 787432432 381403477 778618435 402160302 715048208 343482305 970501535 688242295 769655840 1971539 723701107 44144836 59554144 181101262 363178136 476579192 862901193 33471056 237426913 231500032 578511149 589888665 721587955 914712522 962211315 508879839 539831756 276021871 635878507 926217474 960465379 573937305 816968680 779556063 997865806 233940501 660974529 814879459 937037767 124720457 531712847 997879777 998809647 485718023 850257970 918210665 957439207 702725915 762142866 93979340 857236248 438996869 756766486 314323704 349867993 552030656 839552098 301410157 892181466 652472115 736470991 731312511 829395980 700784527 950494068 665246148 954144702 732544413 754530974 488596329 758744213 169827988 766369100 837653394 993433313 534969764 844165585 383318408 990915097 671827081 925693432 552692218 907926043 219382396 694031985 956401343 988727782 527216812 565184887 929797374 982992012 159860283 393114401 443532883 948918484 713126495 890874394 179243011 768105051 927862132 995358905 248239967 353037728 957555248 984377304 92113906 757760486 905882604 923838877 188447149 596971361 619333299 722800284 670060669 696017281 363768684 838235551 390267743 743685101 682947125 899645499 680363569 732738288 282320993 333363618 798570701 816091780 805027904 889228898 929445009 963415923 878004870 887674579 95860960 793588421 667226879 926618797 321649195 778361317 16309240 404690308 854174000 957298635 626162647 932066506 723627952 931993568 708928846 769436957 967831485 983591228 993844215 999094527 43822569 965335859 780838908 794979475 504181004 777582983 630159540 653902390 479143209 529660185 890797172 926846367 281786579 832266693 331297665 937709224 959312381 976746235 133268636 149959095 53048472 818350934 867898352 988335016 903453992 939907516 752252787 827027839 657574262 853962586 754203966 903473097 241408636 961861355 217119357 371052505 689305092 870450749 48962341 934808134 174748675 416784772 762103014 932392527 975528559 978230698 444421971 755999091 717571233 860408344 496769831 590039300 914621762 980474232 469525323 770828887 208174899 488269275 415532493 810644314 493020956 778795714 818921633 897586974 251685448 973149908 744091315 926843148 461069928 462321171 401930177 901783675 618656660 812995361 670120138 884251126 403605724 803756865 551151402 746184370 513433457 609856421 910642110 924398733 205957744 878761624 407000595 692114210 758514111 989688917 562125353 939883237 231895135 529876844 854672655 905222026 88493298 557178267 145688588 720364315 341763579 529483738 943078410 989716657 354146350 892884933 3968687 159177652 966578112 975336835 378558930 965480348 902357719 974760791 363348158 541378260 392252426 900183044 686050469 717203757 262871995 560402803 27249302 347484430 413923945 735002289 925063113 964435650 571230329 951707480 103400898 706239943 387807117 674906119 422556019 781934766 289167580 603784429 137668221 620695999 625544961 953349686 731986338 750596454 604845446 815127157 36393878 894141764 634604062 662281742 44849144 718178040 834060502 891146768 796683845 912289660 31578163 869222142 915035084 972084036 149861591 736909713 712094898 931546180 641943492 777918731 632825575 824888636 784324573 870208593 701283998 830680988 108926620 942269479 940978951 987497540 575563894 613192584 623735861 637282486 304274615 777092800 549085309 813061059 695669915 811065545 832401421 969663345 202113889 366240677 467961287 635766520 738686801 887940831 485238944 774123739 846285944 950821672 82615427 819826921 340203220 957963969 879570031 952943801 889492775 972631025 991125711 994490986 709701179 716390487 441814320 547230421 466690852 694306837 421900579 809925885 392076792 717541249 413330046 936332205 272626024 307092958 840045704 849936557 148728647 874448267 651274336 818559570 282234864 361088395 662609599 723647373 442734195 497378649 540598799 966795637 122859531 382295591 349644415 955802046 317361645 452844145 590789705 943801831 301890766 745232243 823921275 985720296 125751848 452134880 721606069 765525252 185313543 636541015 279442743 497403832 513225162 901189678 637368416 777435131 562171479 734489720 237555354 833271406 494034924 882417019 376171807 622037514 901721614 963720489 15135699 542477150 516620122 630719777 485763959 670896527 854086700 953009608 613507805 803032099 895501204 958550998 862639161 911950353 762938632 974711063 651200449 980272398 264787672 824239770 110866202 305235732 292002035 660236527 277718339 644946149 111437059 645163265 437999788 887636242 575963691 686473038 390562606 993747804 327861269 481691348 332142114 737721604 140467382 780833431 201436583 597302281 317578720 493462261 29329875 585006259 977986098 983971669 855647278 867247767 188835742 311603262 212002117 795914333 369443183 874576127 165766685 313262403 856816774 870611740 1808913 90952051 6551940 832198665 909100051 929017566 160384675 398581021 546625274 875995453 255275815 906589552 960405924 980780720 599696484 780262441 570692585 682761255 986993105 998464893 645138032 918654296 242260487 507214700 64615480 768672736 603275090 699871070 292386239 609777504 29813731 460166659 365681197 946975655 857966351 963077679 328603173 880115427 152547516 351742533 857193772 904534834 653147120 779461112 150387952 593612349 614054662 633995240 299993803 674636082 655317423 818762654 257984603 671796436 39699572 755494304 877724113 949077080 129843161 305295329 342803930 447425313 974490731 994698039 146590719 208119003 878601627 933771093 349244247 682674169 948941288 970823978 899315500 938590541 939302255 985636444 692935255 724403344 418045690 781195076 198862817 285636393 873517516 987274438 729483988 923930654 42982938 906568522 200909191 997879180 347273865 952101640 941045023 949900124 959639561 986247013 793475198 829839129 504160554 699783528 347187953 411367830 704223473 803906805 850344469 963634995 842442181 956637249 717433151 772733696 325370989 565114034 24960412 182810588 15825273 974920877 121705526 774751590 825962264 974342412 824617072 899685742 367871313 639606006 119096157 337409521 81881956 368214069 590076549 949032951 879997325 962797010 371702230 440989338 52998504 671589764 287527845 687530744 163683790 617853478 122306482 996313960 682368044 986501480 21063959 40512598 483702901 974510276 134555175 471382564 426298822 662674209 758947460 828974899 968372117 997431719 208625655 210853240 126266060 371623964 643100105 939614413 644425231 735040760 896501355 996833171 93748989 157327519 676203821 814878713 368208872 504131993 916943244 975523095 593787537 681815979 483220405 583049638 644309980 646651150 665821690 877492996 874831723 968725955 227742280 626637078 675120845 711727823 229820138 490961252 373735330 504653609 813306195 924237350 429153587 501162511 703361795 906645204 985367305 998300444 512005223 791056242 724285846 823848023 569302652 705823656 53460426 760857818 261535941 512455486 402132506 706105077 381112953 686367217 317417391 688197274 608468287 705211997 633152392 777186726 964684665 973608059 865301686 903106155 868787441 915351588 591483564 765836611 761796896 789389779 293566550 630751180 297165912 653679365 685365321 861898460 402873947 801553047 729386774 843642414 701845005 866134575 758086927 990609735 534466281 621421890 551521955 908625385 793400586 905357389 938406476 992149880 855215272 897703486 471366805 948818417 408463628 602906573 401027260 422081830 366993024 767697006 851461161 974382353 856441854 914294163 183119958 892320332 773087707 861280890 296942645 648650935 142662202 598908088 823370543 901497284 840295713 996189502 332551691 505448869 139596489 251739376 664616061 957624142 704839301 716978321 705780893 906651583 196561273 459330754 256685842 605544535 676496535 707554758 118169415 789837609 693237043 912007079 545886029 667211090 980574420 983530136 585861480 974429426 944124619 960988764 895577974 991613836 41679432 665068852 723694501 826233099 820067290 869644075 481144391 718815841 186836629 846163309 766152268 942004931 59097392 121252951 52847765 605178451 248135566 354153878 434264472 893463674 496311479 648612321 848641682 934947586 658363628 707343496 437369138 957965251 78995709 890317567 707297176 772746062 743927351 871502600 122399961 457747719 787479062 975574465 227940376 541697355 597167675 707788345 65352043 936675347 463328552 502113734 593326434 611217778 160793902 509022433 32891585 753001116 39124217 92397046 460291438 535596706 607646354 938828380 328655472 729686426 588116532 681945783 449710101 611272483 426352908 520544420 849245584 915892335 345909363 358571459 420449508 591377059 165838594 281799860 985273053 998374727 415547662 925330696 240789613 633015291 450345605 831427446 995423738 996352544 626213493 773810158 626606699 993775501 422590380 972232464 604894180 834674003 661297758 955801447 2381540 486941791 915484489 954654163 514363184 951662585 642899921 794109010 816273735 834462520 530538847 866478650 987725152 989088888 580454312 984045017 892678817 911833333 741847544 873435992 292804878 598792468 522125347 939228187 5956839 984274544 238985169 952560932 273987308 367450735 293919506 933491495 886515226 967679210 466499662 632247512 688212104 881265541 493107151 503506118 32820829 552223182 563460241 870568233 664377610 710654257 228708549 407759022 491661038 572019943 971288623 998226185 755734895 881714763 943157900 975872168 82571460 868526087 983448623 999305469 941609544 976971564 942779351 965616097 827969041 953155532 572603552 986620473 603659955 919971512 286755722 324192250 156038075 832939380 169041384 886330953 74563059 686567908 942951636 962947902 318867844 448391625 854544408 911026943 10577683 237295362 69352762 485677912 416870351 778281446 345083560 448701217 251116280 301308103 960983276 973946854 481535978 955660926 602958058 756764385 997279928 998127990 691424095 990053440 41090642 380225514 846620617 929693462 214420131 546899973 745563605 806542901 800949005 961350181 941767579 942525085 879910168 909393528 760222321 862946909 207548030 747031792 110608202 545353061 605170080 980394697 359065999 610159244 792628950 988016220 213626256 644132093 310976995 764694306 531004901 946146011 463231629 937449002 827717420 909041225 710124778 721973303 867347246 957990171 31706402 652273135 999224936 999388578 452468045 863932011 249293445 620597435 385413517 603655382 130069964 387870803 658403702 922591930 980832491 988977994 633181755 826663692 519213379 922849174 841077811 873048054 572366764 702828504 58850677 240181192 120916763 262247323 819037844 985482531 883798439 917793409 276843382 295987266 46463400 505065965 278950054 783330105 818062212 903865891 85578221 476035561 688802346 716256114 693843499 998561776 875357562 882640202 88634727 788258824 685224063 850497896 509259071 728854789 477017245 796112270 604734291 848768834 109266164 699255005 105320402 709247354 77545588 333836389 1866278 814779458 770382536 870203885 397172892 501198538 737675401 989543169 6189964 83270504 155929215 346591199 789611022 866845410 65885420 659402999 441785206 673535133 510589208 583703685 161125242 587126491 285276193 925494884 144548908 462078430 973108201 984888575 950780692 988137890 796372762 953090954 544930958 781595470 209492386 885580009 870171859 956680321 604456653 964868726 869413576 970574133 173652203 853903414 78906437 755409774 412516653 416406050 890376934 911131267 422925780 895384124 38606395 313044029 126288880 492769198 846122260 924720351 240697245 829207879 707329180 924595570 30238434 613285085 312258143 838834391 459892163 915793955 610100944 798372462 638149958 868497702 873818964 988869399 296509206 490890112 528545368 895398244 21472051 327107266 907612614 996654181 392095308 731794087 414187242 701417663 622558904 699931902 675596243 817764649 216650742 694500077 684555415 829488076 41963425 171948863 783025418 959255687 172808731 626957971 372094063 389406389 625890703 982092228 903585608 908488080 396962447 650017691 767053484 972716689 360767388 440227757 421743596 798887097 1679281 10850476 407430779 913461488 16179603 695293729 602477695 820409479 144495002 679451773 513302677 742261580 67020383 381389741 766258871 877899113 673146764 998199638 589047650 825651573 798685966 853869588 35219926 819249126 258844881 951776113 947907286 948208433 749103887 908612567 708134626 932204843 132731105 817953952 537588928 887238750 142707128 933160188 662316735 867213971 315260998 991104827 15318307 826154049 981269813 997478741 682395013 899792010 129927942 330317980 518488116 976438795 71966033 732211615 225208753 491802301 418103338 757177780 626596483 795199273 394731260 544873142 263661599 541490025 652065605 817460137 474914515 992081929 810212203 917360770 458202892 938642363 747410690 995353295 839221499 903810325 457714219 983868750 956540612 964941618 957530743 981602275 685219040 966505154 249881125 279096517 572359204 734406935 519180448 605376931 742533612 896673798 357145957 863815352 33250777 382277618 444073819 723047294 397009918 980380301 348181562 764221177 443570782 700705228 245808438 982815768 829051440 865460095 681244709 818839129 821099947 868327497 959860601 965132115 350807311 653945196 784138828 944494834 312931267 882443778 848996183 886406297 337022989 888546083 319493976 697402625 563209684 687034783 794537163 809091821 531229720 847088438 241426144 255994080 386696992 532026381 380101233 563147261 943224155 945892720 874380903 986720930 880318349 933742649 324983085 495284071 635712561 690811917 285702294 298739320 9670136 958391772 792894862 896680813 10677199 935715706 628946403 647731491 120270925 354732764 433928835 484280981 602221928 936213237 535858229 751129871 376153434 807849118 837672264 917531985 721580442 964660122 80502260 214242128 611845121 674891386 810284803 884008139 161958444 502645242 977791212 988577748 355251568 944980589 601181088 720784603 791914897 895190832 359328036 513474103 978682574 991937714 899621521 992307899 754764950 857563124 427508522 755699989 888961957 990058564 492637071 758403486 190605664 547362602 501411691 775389220 435801059 529797580 800632239 889963560 271604843 821492576 467610387 625013492 379515490 580287448 615286389 845283561 705691206 768894516 12278747 699658835 618503760 886052717 39336844 714270457 156057401 701949581 915014142 949800709 630712711 929177095 878825728 908412115 337963281 714203119 845573298 951811486 626957463 926995607 56816725 724605047 641992758 884493317 665095350 768588192 728353011 897550476 708814685 843968122 137263861 237558617 860950051 987517580 813539324 950670822 936455306 973299237 77838322 282606997 464606331 942059335 423965178 571458624 575197526 621164475 556652668 963349709 874797804 917314402 406391932 519102714 184767671 976492586 207975990 451087489 798006757 976984640 324006840 547232063 758351153 884679777 122429362 938426849 444111791 750849820 654234251 880575233 460545813 690085263 988894813 998311470 758140439 823762274 390589079 455716587 746294317 748118817 668156787 708979989 510887405 682710223 885945296 943231851 228979337 559865691 879388968 958908160 32332609 575687277 505194942 577607795 691463084 744976539 800720677 864644075 326435736 412425059 610940161 753532077 763515517 955562759 243677330 883765305 643762906 966251685 877888201 991357074 295954642 686806405 449862964 776261125 251975380 330714476 753431276 949114779 221056583 333053577 104100783 128566784 807584081 995118720 810664046 974178102 655719338 868601548 531876390 628172781 407516812 800109731 984674878 997129159 674848210 875434798 334706753 363492237 1334662 256357024 459100218 818113036 13065235 129954310 944617691 952905892 625245383 641026905 947776991 961125015 684572063 814810317 155786214 679870511 724024986 893805159 80197352 503495841 796218791 950018849 431189450 698313148 380099256 591908061 554967443 704273593 926459022 945960843 866086992 967865812 994753036 997917452 601112163 677050625 438025454 617804906 148919526 429321785 226665744 241790317 336824244 611121817 144703322 666204709 324623228 517349453 755305951 952455434 237280484 942555129 448188975 636522888 209578639 935240347 742539140 778128539 245840476 702010460 400589455 973853408 127302359 545153283 55908389 284696882 270185968 493493209 471596680 676414672 522849383 745305319 489613534 698200626 993276630 997005762 823405607 972305005 331401436 863617349 937634941 962658802 141333569 405214042 911613016 987181136 598253126 864732009 74256021 579612952 180832691 182238521 393236812 648440930 265108688 288889746 621801386 796891126 646348404 916261100 752808972 784488616 545786763 614552961 57320386 582502438 790473641 791143938 286511199 916031594 719348401 926559562 83672569 744293402 509359762 699034416 643008684 769254134 457380314 807365765 319973438 925266587 717327626 944003939 897894444 930102506 533466771 575499959 824824650 880964836 881595970 925805120 594666294 747781795 34238499 687732523 105089159 628262341 710988757 915911783 449527763 967394574 850050461 928331282 576897928 656491544 976015205 987563639 922417245 988976819 673301627 935935299 780803526 930660140 591039966 782446523 676062417 773068506 795883587 964412211 373207547 702611178 283675435 327907037 904987397 957964504 735422791 747206441 807633859 909331281 792157674 845088346 809062771 955580123 712412218 924402255 600207238 990163633 2778641 857834413 369440633 421205306 835961770 853902096 509065120 979679067 602568210 822065361 426512729 963704098 653489180 817247343 18865861 466996074 90492286 95547935 523930678 769217526 574953239 743618200 19495847 927762889 93439226 382451815 248166992 804883936 635698053 922648116 942968677 944540128 1493355 415078142 476250079 747288972 605949085 958917528 896880488 897380297 191300607 289293083 173905792 413756276 311223914 825708347 156698476 771343912 98285082 548923444 49426072 568799868 838829081 890899872 964144411 982846756 233414109 722492434 206070396 268600606 756835909 907143877 64959541 758194908 558038210 965674032 439775929 760632991 742985801 970507558 474871778 768689610 375037859 468223104 94192824 379457945 541149163 608400142 781428449 995351196 730017024 910122405 559211257 904058345 437593587 915817474 399459337 488277446 704642418 760910237 147155369 819047824 989860674 995401554 802731738 883775868 587667782 597684976 827369221 838339962 162306674 394823998 317786007 507230531 251494417 506784917 603556944 629827463 557418128 662240770 144615566 785680873 8756027 135280604 793632019 960671399 633886896 669121848 416539065 965222381 723660359 969797009 445343378 648870319 571300723 914916878 404272197 869952309 908966865 971483944 586296949 689908441 765713085 984578456 394414869 646420752 961682000 964224065 180772018 708815095 422889636 978894355 490889404 539756702 118662782 779484498 128935465 874512128 341178255 969486348 270729072 407309326 521172951 539241089 965217355 983283720 178158441 692447822 671592526 817871237 193253731 377796777 758644121 825728993 88091542 371040133 43940802 626742422 284484276 995196255 681771419 998179556 647708473 943543897 661454046 889391290 532668740 569533819 347591359 639540520 361019320 381195204 725636864 962876531 615336021 805129415 661251901 861935463 160732204 491577880 600932930 685431380 658552983 750868152 142012806 734133416 881779361 919766590 938565591 995037400 621238210 661678168 570987283 965458550 617089598 984149479 628244653 688197955 133865493 643854627 539405157 575439706 620377202 625575025 185697115 287602919 19461513 847349888 366651196 603243830 576069537 744078276 293162752 525987596 356105143 590847617 104459451 343583789 883286988 989691947 161434453 406569777 498826961 810978617 601594984 945858200 736915275 811677825 70630942 748327473 772932352 774057659 423446365 635798519 237201560 723115000 326322621 492594316 30123026 514476391 523413181 887722007 640956423 662141971 331541753 631145042 194284036 237868095 743259391 750499404 963104900 964142358 926346268 998852462 192551525 842677105 431851602 631665318 569996256 847258637 613890493 706219860 84757186 697461119 414164241 685222242 198243392 482103033 539231933 867655453 332949712 846273269 294863067 949211819 770970298 931841062 510537615 523162418 808617709 909232507 749014157 924470163 793527207 888259861 159179421 383436568 552847503 921052754 325485767 909145979 389796511 734301352 323721143 735851560 998998388 999308561 122940798 570798999 506525321 550415646 128842202 634861162 767202299 988673593 885961061 937201303 831532489 939678442 109076932 201557755 615616831 643835532 759283417 837232151 595548730 664306005 165390759 825076717 371920123 860361306 118439894 856097541 847444698 861418644 985753611 991893125 852241794 952770157 128686942 444114601 76898848 791778405 252724186 580412986 728326990 893057181 406434779 452043310 968308421 987303874 865594017 888728090 572474143 685090382 282524214 867242292 616674707 753938403 825806820 932081106 970895249 994819285 507521201 722666774 493149069 667654052 274682591 649973372 379855472 388775796 861492530 910233829 866063836 930789660 394788111 690431489 350667310 801586106 250895462 274735706 995262388 996657698 466495796 927995002 671374625 721888906 99646421 763686992 887077785 942583186 964619485 967846930 3469764 448173034 581252196 831647724 383666196 427329738 138954661 199966761 186763381 390511111 535639235 858722128 966339157 987129077 764195211 883205599 34789095 177012232 242589643 637118008 857508371 996201730 319999552 519134938 502397695 557126258 600200797 967791150 984151445 989383890 498095403 703024802 752191844 759594649 85312354 958271638 73747007 780555815 935236814 967675601 794444823 950486652 947527968 990819577 499220267 515420108 897513043 935426818 793331199 898407819 417942396 534783229 668399327 826284104 357771772 909787685 23324892 740070156 308392282 674480359 283675621 673488207 131722436 775909364 990796503 998818448 78609368 579295173 482421665 591628613 477428723 787159648 802709336 848584433 791945432 953595935 69943459 177096370 956033585 958155931 728574779 752112928 624646563 727900734 844376809 923057958 292007532 841946978 25894520 902798240 887898050 974689225 117178920 776948683 345702589 913287888 433218031 809330242 836350336 902624607 922178558 939432885 155336856 625368754 307985697 389355369 370062867 632046209 237081566 661969305 335497616 732468506 818533480 893483425 69948867 287546071 84729425 792232329 279787062 349978905 273368764 341380393 585934086 937204779 14297044 877932322 664548202 708643164 506877736 886150275 235158247 392959423 155538951 813982244 859710124 997880543 181131619 274242277 24363494 814865606 441568933 794614637 373699000 970794890 754375782 900304066 155868215 756677662 362402809 551594598 48254223 511318155 499583726 919677289 476559543 544525635 212563860 235127578 418236559 615123385 176420794 555593189 515923301 698260801 809387050 990971318 806430205 974187434 429865775 880298764 922401374 987980944 540836259 711214211 812809040 874020674 676895033 724261490 793084586 883479126 848987874 913215526 408332943 572746754 992984799 994244235 575887665 976203432 322480071 863839958 368828548 452771132 691248722 818117115 71396610 471843653 548622082 709361995 756779725 869848841 501452820 583204253 186262375 408586582 839860733 859163261 946966672 971148071 810045537 858309160 170891891 521182704 68893439 426458890 961989246 997198786 502139654 611564249 461944381 980642939 200425663 426660253 666620523 748559914 617338504 686864015 633528831 789118889 32213766 692881755 985883377 998474361 70385787 603982545 378598843 461025864 668543779 919560497 818509000 843028692 448141201 862435326 513429442 736621321 760551470 912568608 880557097 886488074 457391119 815621630 34176999 993550529 645660444 762949547 376649478 752374784 240812341 702678829 247453520 300492392 595065294 763405731 253096978 751036835 953301784 991698865 582594263 938348939 46300928 407185170 245420708 913799455 470363403 950221564 270224335 829526500 112883430 596143864 41523318 908383160 944173190 946243162 37303588 327176789 459317633 972847634 417863446 481152113 256887770 965391038 873557278 900398415 199762947 513349118 710526790 899008470 957194203 962755450 692980785 879982165 581584948 583510319 463503543 658941195 458599612 515484877 862316097 929589999 636836268 654920334 219993534 743406331 138305449 701068458 685381804 709936025 164328410 306410776 45516865 301593842 105911134 128085474 658563863 803071721 708486687 843951051 826943179 896896490 488610775 624383482 626217092 779328649 606734150 667569206 444916764 680240229 644948067 871733597 511096591 682268638 739339241 967723848 548257391 962560923 494352221 858316565 928546579 986391394 996131827 998582434 242513861 653665100 256952546 346695316 189745875 408367876 204577876 312970169 715630492 833858931 794959784 835750607 454162259 468341121 883240928 906395029 859765696 890375684 224983752 427413062 501066889 957128620 685097164 954492900 128698398 160993862 645754745 729983221 563981207 916511558 512342757 877400302 235968709 546339017 214754956 465413180 591565510 867239730 132357856 741237505 382811047 815913936 203750397 753136820 215750 737465187 204993543 960793409 664395102 908207859 583298864 922881983 386091455 858314957 104113117 376142830 768107493 841607504 812167636 987135352 278196955 935522992 75240677 878013726 497230149 660362473 979515253 997326954 179773852 441325442 551314253 674448530 406522683 959295436 121206973 513478010 168306321 453922099 789553845 832811752 340134770 863745740 570097862 842123517 116997350 620830149 669494048 917954528 881423393 963079858 697074293 754828863 400149899 976836007 669057286 895929806 478071784 732007390 34398668 589401559 319531340 514896519 748417068 947753188 558473507 915105398 517128228 863170907 255209512 808920183 290584018 608830742 284232218 496961982 243893963 288280963 713760182 918439457 799207313 849041846 777693887 780737825 286000319 599034034 176885315 923600672 659606008 793430940 470914939 609088407 385978739 547821174 692508580 826137795 793920352 930121128 723253129 779436855 526415411 774746511 896324174 912798744 267050011 435361704 923352706 984590836 445846993 893226131 149543152 351529084 286676787 888973539 617551340 885029386 991256062 995802131 887157629 986552880 659336206 772071483 13406974 318362732 503084134 876752619 694340423 696620985 805089300 938538473 863149913 959612404 105958573 249814521 188276786 957951231 931165329 942158832 275028434 547296355 402301537 786582137 591571505 820781496 601217672 756946576 659755190 864828637 31630194 215160419 507560155 598214259 984495306 988808941 572021927 801943217 736874053 951663717 275272781 662932680 879953150 931211436 106553485 774030079 80678822 236132247 357055718 958182663 690100155 947061359 359563531 699074439 111425263 930975559 560322961 891614414 172518573 333353982 667122182 688083116 595891279 713471658 650121806 844300364 379726663 589364941 894597183 932908208 262156348 916960631 173582538 592337837 738505789 978711962 805496669 929052414 830162428 842607278 416889909 901136052 412464969 565281287 588211576 670940208 590668487 744015243 145518455 710308891 777087032 880742202 219200285 476533306 815932003 961881440 535241765 811954355 673622789 827666011 235332707 742808209 354817912 414480955 15225159 553242338 565512798 683935309 686133974 742031483 358791948 477963346 79491824 111197133 870402994 969003375 546735393 623322071 419642261 811943749 312841491 359754080 960681797 998158686 647317256 866836749 206635435 516158759 240349181 359924738 812660906 991500701 804632593 941284155 432720025 617511004 579314113 959690937 323815858 945140345 813648714 932299769 682067079 723775245 827368242 902470956 476426908 807622091 326888085 584216694 627826935 738491051 118865114 962575445 820552460 937588241 156634452 608287451 256300998 502043318 910976427 996466038 744408596 911383730 764432102 980205279 258323640 755610965 87797614 922334718 411887897 456248403 66608480 225199559 603919587 785118592 822933575 933537066 56013011 150276841 994202509 997508052 419974879 875737194 153753737 190595953 79457435 137692087 578266454 862075437 702406550 995651769 160421452 521603977 716152129 862136035 758544853 942133858 751649287 868728864 26031927 480991626 582784224 875650548 66189375 775600906 979300932 989982958 215245199 277316449 403630573 727714245 335154110 679847725 793712252 832948602 940092050 941636831 288189897 659630506 729631553 858768318 352095646 560343177 350737826 915062865 76321899 791525436 572599805 883899280 586274187 792742688 694177064 883004688 206245098 360312436 256765261 832362128 660574268 707771431 774972823 843048327 277093817 869584919 753972762 815789636 520224666 664063991 363601824 949034820 368404594 646473163 235137480 534000796 169110459 716481489 9787270 675036842 829684308 966174209 48988317 545558412 754215168 904968773 201539050 264637828 768032918 953976231 251466317 889910817 603108808 890973601 941693672 997433161 498402721 691400589 154148292 456138494 693928142 806977095 403738733 877855777 506987003 832942353 60667416 817055845 89255498 574012277 732743967 939548896 306795738 859455226 374609155 542406482 113403998 119578902 761737986 776712373 531857853 617878680 135696702 778430703 54688817 430942704 714607105 935269148 696213800 886142842 631118484 783770151 308705499 351247327 618405973 675045673 540080087 999173545 898568405 976785967 728428566 827720336 560363000 605875499 249447686 392565844 964838672 986716046 283933496 433028426 886621436 998353810 425298007 872968787 938970515 942508001 289466620 557385083 182629535 758140854 218363754 515793409 271111652 739817737 49676063 54219603 863778364 943370348 639474205 655313770 276419971 784801621 733425132 981259782 256018684 331904331 584641519 961499128 645824759 665298427 866346741 932620964 907853905 915681555 530115279 907618087 784246310 903164745 465926808 917199333 216196892 866050352 566548453 573988724 300212112 356717780 190217515 377477953 9147059 817239243 225096498 639835564 905990481 942204320 979943799 993057162 92871399 927767869 451645735 812995981 196588225 753750908 175291491 295585963 356845078 392330706 258548215 426208698 684815771 975626816 437582411 721040306 543595737 995954481 659723349 946340450 423916064 908176749 503744416 952776301 360628810 666734575 608578460 886835543 864465187 971778455 498151626 727879171 979874987 983367228 296528641 807126470 104854181 361049777 527968770 783525829 74269930 254710109 323843659 747311783 527575502 712468214 411254428 465278465 165128599 345749000 390031386 423935265 277893108 283504074 386631144 596668593 182085711 626877161 540895579 820903180 843395240 900457146 158575228 786145870 737252275 766819740 987173866 992980535 67158288 934941890 366443389 874227549 375700975 571272476 218448575 933671097 891032364 892674858 285704203 347433563 327352809 665086139 141021822 726162303 320693152 589024903 922599089 928541205 722839804 824737861 335251610 634089895 970219799 985919855 632941795 871922197 3372833 753323645 52295344 596879766 325453966 834605524 218686371 589976944 471694397 538488675 454773230 689461127 349117829 474209093 29625518 174303837 239544545 645925199 420750046 850446501 12687816 397267498 751358464 831093294 772732382 972252876 131652648 335317214 426847511 539548890 977967607 994092278 880364014 943995371 46924821 419662721 12625192 155586115 7316570 285242193 752750832 969399595 801379965 945174782 733848737 911808767 641738463 948200115 157265582 520662919 615414046 780689779 133462286 853667972 544492479 818238390 500796083 788551544 725455923 797083950 656351363 707495691 41682539 694259103 674037201 895543450 90398905 861099186 476555509 997625306 135856303 874261249 900236559 986397179 926007510 933702291 398357720 409374235 225892841 339266047 160561396 161244992 325108231 338425665 812382362 908456950 943111527 954983441 117368345 990219141 550524494 635396762 337389135 904235247 892252847 988241750 699790364 884234760 962333515 980548891 290875952 597898504 55104996 68118249 381393346 627375173 865140164 898480713 929888309 935102072 607684312 770947871 754427111 965803887 291310959 771654849 484491053 581680423 281927716 721677156 967836760 972647975 91047141 178820644 688234684 786687077 228511193 235312659 777389697 865331702 468970020 731088525 557997374 632283289 402517676 495987190 129085904 377458483 777262091 943213221 152874431 745805136 659554322 866726058 181854441 587032467 940901670 970416844 940980376 954229372 191348334 394291926 170208504 267967275 699642239 717865123 906015476 919331699 889888264 933310774 300224890 786403540 491083678 802359882 160383102 385938436 893063197 898409382 510166552 609246997 727983981 947650477 51459374 783367432 256739617 480765319 499869895 909283102 384575633 994690148 750543375 863273282 749801893 859552827 372239619 437377547 641140679 773591776 946830422 970875953 856205609 989798735 752636862 896776883 564676275 944715911 323173222 796957458 447093148 672736297 266072274 391485137 800871296 960915073 330366621 960389191 623453983 768260772 445294936 549945457 492658141 900048514 978474761 992279045 969647889 993224092 184302072 857972840 111124871 730641433 42752536 460764635 79889933 865486958 632126110 890826305 910043080 945317328 868200002 935446166 606445228 855464511 909250525 945736412 849271926 888565864 588562942 806393156 315875186 515136942 183485131 985604131 113886716 762677578 586253472 736400439 786188068 953253687 916207541 996664233 914943798 956708926 352441876 518875646 5914529 614974942 502645300 755341299 397272102 974953260 979051355 984855640 541099432 741152543 591838135 921000638 858855992 917780805 536278112 563778893 716326036 897517074 59606179 311830754 223428849 665880586 225990335 772446674 858498355 986467313 457523811 711699720 584199184 657697740 290771334 554813859 971258130 972720052 644572137 667899337 47974429 110229152 77186781 598544611 759256094 834544887 254555950 792142620 747637096 763270511 395308824 575651612 699373730 848531618 232021400 641928606 272145667 557403633 24331319 335119102 625307814 835579896 262865184 979835324 549569196 562835355 376258752 946096033 47061453 281624552 563668932 639839247 358262218 551739750 448821442 750158692 524350110 561405923 735916921 795160158 289099529 473658005 578096856 753139542 960148735 968763764 327028712 351136980 229795610 745624213 330036439 726063156 97695253 214064578 412536978 691545010 31960660 254210064 991646735 998827106 929508162 945939480 306094139 791863565 639274384 698696314 636434832 656658925 294541024 479410091 649729623 919000475 473606707 540621539 409977742 603083984 938308200 987753874 614766309 793534080 742746413 994157345 187829765 502739035 15184470 200980547 284472498 813066783 789476338 827053915 167810494 507226402 491558479 752846558 284556677 338990373 247098558 950979595 94997143 250014434 576945887 748185955 943568718 978256308 315255494 763206903 118023417 753857733 621487727 750335698 134352631 993366112 236663660 689782422 543025582 963955280 621026566 666172341 115416218 661313059 453366051 811494333 520175120 653687066 530679054 895854579 384627340 402949752 391500911 691621350 230890924 710254161 871898529 897019877 336226841 861417107 635685236 889284243 203436022 963189303 591450483 704193485 816691090 966041975 4741799 353288743 520782825 729575987 95258102 610257786 291845408 463850096 868340394 978135906 84187887 116114733 835285981 848426717 92286967 568360237 113757928 873842737 853990604 884127445 171382266 213984256 209605218 554400430 886440981 899484076 148329821 737126975 92221100 366689491 402473480 978765411 676748085 745652628 551438917 659815698 765109629 996269751 636233848 836815240 354311933 493080757 489938152 861436643 583809655 872049261 921167847 945925668 753761111 797935002 455703746 959596979 233405036 665719745 745283413 976623894 369777752 830271819 907190983 909704818 410320381 735582058 86495902 700496777 169808049 343498545 630908261 962229777 305535065 510995785 83708462 699996542 709774929 947527811 604799509 849047668 433787346 626399151 91228149 381480244 265146401 280289480 900880259 933905920 390533128 797596085 430341719 791693143 397849042 449589519 551169522 879061066 397584515 526319883 915435791 980277068 890425659 926983792 46509052 480117207 751425183 788441383 62397166 568224168 804299466 822720763 142663511 911616877 603137603 659898900 199710598 774611221 357699395 588520255 687796745 741000692 457771433 693977608 308914848 940542071 417607578 834187280 100165924 800436096 526546478 789714448 121447612 912542942 647945336 923059366 363373804 494151461 587079185 922543084 69539885 735847892 121679502 609367003 621231381 650079996 327240809 831268707 66088982 566189551 993948120 998886482 283139672 445977479 66131927 934820990 189401972 250830153 486567748 622000932 814997136 830689020 537164308 983151724 527950535 625812583 970664267 985698084 304055872 665113439 361484544 870571782 453324945 680093627 575011122 694638991 832819888 923930540 683196249 969926120 390073433 780425069 390674565 843277312 510303939 886047736 234634588 972612785 765885654 836407963 109831374 597003674 651167392 856315344 677488568 720647440 621934983 858340072 613413954 839933989 411880770 472005628 600607174 935365804 714791378 855878183 438566394 974082661 251067267 253412413 355581452 404398885 133954634 342617671 45571757 635161354 474545175 963736836 653023388 708353748 347024529 388479137 901237457 941715865 308425780 805057035 886882176 964171236 512562384 726584185 285701115 736398091 647134045 726818360 619079182 949848803 113490751 892041634 722743969 886929735 986443760 994281856 781653115 786040260 674258582 676541241 443426903 998720456 226732081 819427004 244083455 615137071 984175933 998153186 167306520 767251904 168683176 690350060 343229415 942199852 747609499 949119493 915432620 987273691 469276683 769597481 956756809 987572306 344316209 667304420 646551133 804039724 63659595 436462313 574769893 993143376 571843225 704873325 710191549 900513609 634044938 835583586 529023062 591643352 709908350 855599332 858534479 971357597 955502211 971427861 426140306 874733860 17340428 950732502 363002406 850256320 230171055 709230240 734788479 917881823 501675872 811673278 202009367 580825052 400486149 847890320 794236494 921488109 416399269 618863368 386411008 551182883 367735321 457380775 415637370 694069114 725258423 835816866 99278034 560862065 860481630 919742981 506204745 660219608 671977764 906516264 835818130 941211774 343637933 662560612 773673182 878457522 331187579 756993408 746802541 818937302 722298705 956512644 859241685 892574735 163764179 663022587 997707669 998934102 924844955 943413499 34175321 767392922 135610440 543828085 648941329 803783241 413552140 800821928 809972590 908488139 866450786 962339981 900598335 919726572 253438016 917439021 812723049 914207940 558657917 676966310 70582513 474836689 949005322 984940053 768375840 972267969 674683479 771097208 779561424 799727244 310433734 916767164 347074895 757608394 48492723 276575782 41308446 846098913 285847994 460089976 884850519 964203714 799871464 936648524 679323466 754034033 868299138 901643281 270428731 644110262 507610472 758811828 934852276 969834373 712699011 892015019 715228167 815194092 841204491 897043560 620363088 842152375 979468634 991752122 773593705 924689289 148015159 917189495 107654208 816738124 927034317 967998716 168721056 216822908 2818039 854933028 796158679 838746259 335826255 964889400 86332920 682280974 962029257 995814176 170514916 234064509 44763476 86358642 795678726 880602587 588017565 757181610 352196102 793969189 355120178 628643655 149045993 370780956 448634187 787254783 452871638 770292625 617680509 828816764 249255516 347069114 129269062 531533456 940185789 998522855 252648763 649283164 775664282 787667714 593061204 605292820 311089285 631969396 239537681 450739502 290314680 671182074 89764831 646592225 888377354 973926002 45787695 94347887 82058396 637319258 733978183 795566103 652828237 702360574 667916176 923667757 597807503 958058635 792306024 936849624 906248883 998100700 158963839 295571100 352938448 545573075 544423914 732874200 465638787 668114087 775682149 912431908 328961298 856223802 462221485 484663567 857899365 942362030 36478639 247708769 827741786 964802128 542592191 824375058 510873228 764527670 171794930 185549914 68737317 416661995 630668249 729205201 431341388 676682058 141466160 267676002 684673440 799938763 904936651 974120222 990263648 991662577 395433013 425213614 623046170 669452123 706659432 713411060 191053935 662908065 447188406 614148630 536816545 769035520 919797063 954288592 529492206 726639341 234836248 849813542 217514314 601536962 677557838 771777360 307492421 817988401 909631003 974382240 964622627 987700069 412542691 571712073 614220056 716222304 715644404 717140745 842981585 992158796 589434114 678021879 966720625 982933496 267557406 444864051 765153996 768918364 886328484 893034786 836560240 983494483 208801397 816480321 259513061 544818237 708602259 979597291 145353452 343526106 793415981 976597384 672765598 894346069 935510001 994388162 349618422 752682558 974118468 984613109 932126668 971643198 77078252 654496392 532938069 701140078 977664793 980551237 780937950 803997215 411279995 926541040 415770706 545053073 217548136 635039954 489184560 914883020 142586926 251373867 470150135 734797803 777688480 919306149 5939853 436133700 803890647 890499902 935520643 990627451 326688967 629521486 1592453 690899507 831595451 989232653 903196123 936413156 690346621 894974890 983265993 994895109 381493812 805537456 5393344 597067914 7046256 633346910 795982486 974083671 200758088 805525465 208211744 807452794 562481680 782134924 843285329 879081655 757699035 861074156 524162148 873301642 812933398 850538119 260391429 805262166 970914384 984002041 193066537 317725585 516392795 614931624 74303359 424203610 553699180 713373264 107198118 128742264 303453276 928076803 133306172 201679104 43329305 587023048 198545346 824474642 881036054 925500427 188399577 852192710 669452785 713957578 423562302 816631099 138387667 216709277 399340577 668267514 822145144 964018411 59000028 406071401 747840664 756237055 792088191 821263578 813337297 853324177 834681608 906968996 422984251 656767287 479911626 570763677 745907516 863303664 268546241 377118862 643026820 738444345 472557516 482051956 960334870 966561340 158769585 906581004 469288895 981047905 345970491 688490236 67507928 636017374 939232566 939972971 352197177 691217500 806651251 817769556 43826603 469287432 493066228 848564069 85329715 476789708 384887457 600594999 296074004 540012596 48044760 720978821 143427311 191517713 880649848 913665770 724959604 790936695 392570656 490728280 239758225 736282833 590447773 915390319 73468341 197238557 724290182 756258251 548838513 583724346 3877027 735212090 217140526 960604518 194355605 926943909 560399566 609242066 687165893 973916070 834480161 906523866 570210984 912390969 861509399 950339541 783953661 971588626 363250584 653212882 635660190 854168116 178263224 586239174 433678126 583676709 613295211 769746938 423324105 922580335 839548916 995907774 579504666 720987627 373857308 462062541 558645559 816874776 593461174 614720029 231873951 836703566 609457996 645877306 471415364 694251964 293372602 927468181 542639670 736322197 910307893 922853989 337107770 436034159 369998056 919976997 641806148 726198618 259966710 460303880 37682922 553340937 504250224 658158321 124622791 962406049 432184038 732231570 962094398 974052013 994114815 994694126 585125787 625212404 498786809 741834116 186810151 983731970 900848897 993852551 527831752 746308235 482468521 767164688 527620121 789963141 491573618 862364562 574297851 699445189 10458545 185199127 214782289 568456480 28722373 526289198 247623620 507282707 611132946 846839271 423915921 569928710 926747695 939315950 557937161 990877316 933017737 995851677 8540019 874478854 296102720 702140376 84356755 823513114 428509845 747629976 700079058 837934712 82318338 455644621 453262874 723362621 745780782 819404241 644031434 864484718 379027700 949276215 124435477 558604488 704075875 803444399 633775784 972834017 422721282 954189065 284655097 922613598 779946260 919826594 806597986 939538947 780638917 951802786 871597745 911514188 448362675 969473664 332723362 468743853 915417472 991172028 964176233 983871627 680653651 876891572 324223785 835773930 632581016 777392268 208552019 414599762 167907193 878134412 148142358 293701486 583834177 865564476 129724026 618591855 960657881 969120404 226950855 347120867 360287510 813796728 376618928 924151388 596001901 992669909 944691366 995564777 174097060 707066420 301507396 818006017 352357399 358742703 62093675 78921322 957709150 958050640 909703256 963389153 124605765 274680390 45062224 204386466 217630763 458957327 623266611 837241941 816543039 990199012 352666354 385602344 597645293 894562483 742437876 855785001 877823923 907738852 802156918 936932083 123317348 772193246 185251762 278885563 837097441 932506678 400438983 986508334 496371858 864541754 355048900 421563406 240024116 950692954 759834348 902678572 35298278 589905404 15822304 368969893 615474638 906617040 545297892 656558101 236211479 984135411 371451673 431469042 667870154 844217715 691146929 992557377 747297762 762176658 542856318 815463837 518894433 762194037 59173707 221540449 308524010 314581360 919916108 951235956 219476219 390612878 937422122 952987358 256135035 635185394 310913315 954009252 625884820 830650740 697020165 814217048 86106557 697115266 634842350 814045768 540809776 634502662 165708072 302661003 159337125 639554577 590207495 907256208 871892591 877402547 64797106 720076141 872188270 948352574 999304468 999376656 819130202 972796642 433404880 794984633 365038577 840318084 520990681 792079691 674972898 773562861 205809499 577160637 178767781 718260391 91242732 801677325 402819002 424782353 179168319 390335394 403585770 937734174 606234886 647237650 107603277 538464170 620873890 721330875 181358384 694304147 131763323 375360046 50333820 325927937 404842409 448327819 284173880 428297914 410103872 715050853 982057562 996358282 809671038 869705850 295892350 733939138 47453766 750127929 546765603 600710455 156345534 747373807 987043012 999186861 548776074 950430849 163277282 870268218 438058401 464587834 605282254 654256218 920178346 969387854 536100237 663434347 296846767 760019774 341494193 813514457 353377962 809286120 734838603 913282144 247264266 738676793 506997114 550449145 918147768 992754815 886998664 990106328 165980939 169152082 727387957 768008944 260111165 712917307 391995431 405103761 723032728 903097701 674360723 825705053 893013204 958596205 549828792 719078577 415206332 787521606 692086488 787124129 733095568 984731747 490003158 968066045 927063607 937373719 780221076 827450633 171884784 200616352 374563905 462324560 784997387 899434728 228828259 732036797 907378401 954743753 860136014 932925122 651793099 753096005 323213094 965918366 359707217 744522368 197325027 909179701 280506953 892386165 19079245 727550425 666952974 742918673 585160196 907575541 274809364 646815377 397489185 794863507 19041662 383756821 485741205 664490445 104719383 601276924 820372015 960655591 959062674 990345926 268754485 382286330 244697242 849675356 665342967 941655992 26529527 698111302 87143723 554278808 590084331 836072305 199563387 760791146 339255758 803389292 885025005 921161619 893476809 917187015 927158741 955179170 134328288 483703348 916305372 979386844 637689603 666667915 77195843 353160508 576047217 705342000 17208604 791569666 86502583 882515191 769105439 910236829 682450697 813297596 715424267 897703061 576197432 750921937 36351016 644095181 362187817 741241109 957647523 974025691 868651565 995180896 449192158 800080765 576907147 711806466 170903504 563311658 581574714 839358400 191172631 460938490 126760708 387875675 7135051 284257770 467332443 976667725 133955110 964623791 242814399 856776314 45272413 215480561 42070103 63340711 408553637 408624706 621381615 736938614 223940871 961695977 27145861 80949956 374231914 669668785 747479564 760778391 678097513 775695646 696791364 847001890 890944736 910988268 609099368 878448995 525612751 704107426 615750990 745219102 259642246 750026915 678528817 912650154 230197184 741855920 252327237 697754153 441820661 456964063 493924041 494281352 611633073 619841298 803516200 915993348 708897863 985846668 329615837 758113816 154722524 246248238 149066233 446231708 283464715 950533640 878755150 948507224 683347614 862526471 299892466 370778449 554241313 877538308 805524320 909471882 499693572 783954801 599293654 700853151 666136385 856738944 889665427 950950149 190976911 671431925 514295668 694071014 434903756 738822921 751667809 782488675 447063035 620068768 255798810 585177125 91021623 910956272 690722203 767958654 92580603 380212519 747309068 906015086 197709931 591328561 38974825 251575666 81376726 398241046 469272538 484968982 628758837 682823358 616523247 762578676 230784565 340279938 694143294 823312587 587905738 730212100 630441027 729818163 780680262 829722635 896808928 963129254 595553636 978500509 513168702 559125276 215291228 238536655 194379748 807320444 981720269 982654042 667876186 894110635 240367999 643586255 734512961 908318259 285986469 630149756 599313394 640832411 749385339 869448090 681730515 710251348 847733061 915140674 608664146 776959614 289638224 769375489 355555763 924920662 910895200 994329974 136756210 554195553 353328140 392399862 691213548 850297674 903723656 952428770 211972765 846540699 443460999 799427784 40350488 473159393 42960047 598906038 265637456 991607577 312069396 441944539 227159040 301797493 496105357 769982305 739152876 831816278 905323916 931223988 270278714 487904439 37301799 48250768 845837026 927132158 552278452 662219220 217171294 704158961 488264583 719835695 379671556 625798903 449077126 521307842 368126518 946293017 508546215 527993870 386535906 820753406 365470507 411794716 439213734 550501793 377652211 466056796 948626897 970719511 676073789 704303796 918006475 962360014 140532119 227328430 780357229 946907653 843395239 892550426 608688567 667240669 932054229 979567525 173306862 532836223 764267435 902054543 695565948 896718929 318790081 437293890 47605946 870034098 307394804 919447004 461212490 604135789 75299432 107785035 434983579 883581432 609371883 857851389 464519051 855620689 430589806 927940914 543379705 860360379 60404418 612208798 505797997 896681225 310033879 706542422 225464227 244574576 71099828 930589675 186497955 992192782 446945270 870424008 118807982 766445426 448264302 867155449 856340066 946582163 703316412 889098962 67248968 926772445 413186384 960525608 375319534 467738679 479833436 606595308 507533259 898290022 725909606 968622941 358957714 887691115 180079875 335515040 456147717 460527331 541321956 857180283 786178388 985601859 376939807 680970276 136518128 440181157 65693572 883817317 707832051 907621403 693422387 736123688 428781785 870974717 421353102 433845210 226912062 340775667 356654945 629171889 208898862 853131961 609817095 765691094 227960707 258791069 576971832 989515025 491149911 987051085 663342859 695355857 70733708 352239457 597272592 916313131 827171861 983372068 543283453 710137278 636380354 882558497 718869923 817336442 747763641 981901545 568103784 673515015 964776328 976097654 799992311 841214135 600325663 946639762 301511808 635193450 655470785 906710889 502524336 589874639 398728321 794968672 452266793 732798055 453023002 815576788 719678596 857471344 386236090 738407788 67393855 639745554 169214849 191085057 177408254 485647710 204069153 302213481 112308605 830820883 894993744 996090937 948065821 983071718 837327369 994462469 910088556 983697270 194080354 704613381 141182961 451614169 455813240 713381816 152508334 524336207 194772028 206268783 1292263 397379146 963106683 993554887 659144892 753487053 179773698 585345576 466569311 970825686 34958284 618578803 884263713 950808275 729417557 798641624 106691599 383618216 614243168 983103192 526370714 640499307 195726393 755261886 921805111 993296338 438085376 844218751 872159546 992507293 851839763 928539835 59124737 562648382 353053401 792969643 770180938 856552687 156712973 665596520 848118838 921351649 312811597 856588075 214154317 274196668 921078523 977631217 430790859 988917428 25855332 290453011 183323604 402938347 190118762 582641534 666790987 938865226 389654232 763818835 331835142 481403783 673256634 858450240 287395855 606731413 778400340 993739700 241469065 924035002 894599215 979699916 630374814 796268552 133774089 413457012 405148484 941722116 872471691 890780856 65093968 232131239 931290983 994749371 381372739 771102746 417945433 906242548 818308488 874709315 761790181 868031847 781637641 972918019 214982866 350018918 321960038 679777298 780619973 801583543 50790496 932042937 322922207 455759883 448547955 815092574 823468523 923017496 31136458 362810492 336401732 595878530 673347497 764100385 206900086 841329115 588833570 846927511 15906523 293673223 452731221 937467451 501787113 978471324 620085688 905489225 43976364 253625905 889501165 962401085 555355675 711677132 341970840 895867474 721158023 860784114 224638051 328255776 576145453 949931895 383800614 821761157 575523210 770966058 565318056 792265976 422533519 605772455 911211407 965128427 718919284 954340154 205612366 797755554 478181891 829436294 324945170 407319406 532944514 730088617 680220801 908733532 173045244 667459469 546614647 625483825 322792644 513281214 727052986 986828219 37270740 154699174 366237694 777863899 361987694 685392742 408273919 924766938 614480498 797909527 648849175 965857932 55455535 642277828 729671162 928342020 279419231 396455272 608193939 891325589 780854344 932466344 652216873 890728991 227451101 664006179 161448683 542362644 586943804 998512678 584111733 806777527 600173768 890236747 788936909 828666686 226920614 300281035 724763632 744004756 696946065 903355785 924831324 973476287 288582044 336298999 291982016 551714393 68473178 865397862 214446150 260752512 101517375 732058505 851365549 901690944 251376850 331989946 925845039 942744624 362205745 517676119 318664208 861382524 305882545 772416012 272938842 722141002 550325216 825671492 209025012 333199691 176193800 953302946 426898780 611743614 858380990 874287445 811608161 967096574 526231123 624424484 307709954 615335260 979684991 981344487 281624266 991265356 587151767 599806027 210428190 367364739 265887748 989261574 172364568 966362566 811665339 913594257 526352276 724198966 700408091 906121447 118364823 365938314 646910239 785283723 119096039 805397382 210562201 931590203 181423845 527467439 256445714 873388666 972749960 991472095 283280975 446588899 685976796 953758470 236271737 409567092 933024319 975021438 273637169 838979535 13001917 70562819 549061386 647313221 322389683 979515356 786253435 978329443 858980679 960092099 208008735 403324372 347368879 379459213 585345439 913987411 251811662 725568309 655117538 878191102 641807268 676735400 623301135 873153507 650631448 896451923 912196950 972548529 584857865 909610816 282902912 365898749 4070688 595000503 911868212 958610966 196429193 452118035 18343308 586332775 656981597 929528688 254920593 701946454 375547960 753846194 465999784 780390492 412173604 780046767 704486090 833659532 768047438 928618170 909251468 954440097 363404151 955860611 502606497 832069590 738908988 910612331 856394925 986386318 681287447 913001755 479203879 704869550 949840157 966700834 558641088 792002365 656015205 814535196 287000333 945282179 684210373 773193091 20136726 732889460 870911771 946597660 835044872 985710261 17347228 239123429 531198409 535736314 403214441 870439785 687905680 810279456 921579550 965634531 900856879 934433641 535310100 775567798 985643327 997335424 823775078 857113032 344721952 384554205 721562939 887541114 39824413 252046700 785008457 862056385 144842896 948617092 881633894 972899501 400529547 926563421 803730723 854444075 258348807 651292449 733693615 811439802 883385545 997436104 319525055 537546448 778796587 913698987 560185927 998635029 742359843 799930881 954239476 999201672 17048887 414550844 140686085 711972674 673077830 851217205 461983876 632168869 858550707 905275501 685431300 879463818 246261342 374840233 312228076 866422547 581656073 852242834 998865311 999295881 880495430 967304196 340675718 503353658 15965462 221784783 156003706 977660959 888998827 929558496 428330390 661143302 402677275 856220114 764569286 902281038 970244239 971541936 677503806 935537289 530684171 960627551 459773336 807514200 756547739 779712125 919856362 929877558 531211616 666238817 855963104 962001099 411939442 920324696 97946020 604374169 109349338 373891984 938685669 994675440 712296671 831032018 361122339 765014285 569022303 930717795 660429002 763116162 400281354 605896805 818040823 936552092 325869924 768797160 829747690 842905313 422239896 530772942 169789600 174020583 456135435 733490911 556367047 825147582 706903481 785533732 890878617 937961242 58882181 706433495 776195537 786556355 649110214 967251685 572203985 930814742 190527818 303267204 19160873 55860315 757379001 997354003 173552898 883900529 537810138 827187327 575841601 754358411 720353002 862670101 16526319 217222846 12891595 42942501 231772380 255364976 499580138 674650473 77989487 764814890 472415075 828160826 383556269 619695692 872910926 998121231 9113952 570329351 482427018 878675577 52784035 255128895 294495348 642233135 528345193 951112749 244572775 583893182 778159646 919889917 191376273 566422535 271582313 929640518 461443038 683557867 404750241 906060541 607021339 951220232 552577317 656117794 661031007 909733376 638236699 980056469 880511226 894132716 776283190 912528891 624675346 904251482 760553547 835626219 644056324 788673248 777374732 976271686 608850065 853829796 949966610 959406816 385100598 995116930 696014349 710068233 713586554 981105472 889173176 922408487 529635324 949111068 547278564 926462759 344791779 445404656 148824849 401282507 411566581 441457922 969718856 971932828 383362003 570771108 784709459 812701434 88935311 860095281 217197256 307420129 521252980 588482558 533799515 668742665 364660936 868823949 754196022 924220529 296306844 375403702 554431291 624546098 954221795 984666939 683456441 964887330 56108838 602782464 97239808 749494947 675371379 798700471 704665499 930338035 220381392 365265463 479113724 951720448 335912970 436719933 694657604 724722199 90298633 766954038 160602560 955738887 751273704 790953508 429265398 478569457 786744515 874716969 506413387 507508359 942752676 991392078 747208671 800292447 692114484 796553318 983173274 988752247 888504094 934013304 390474869 610285341 214707759 389839384 174570540 394863262 848232715 986873882 503506187 727014914 80667278 630577629 951762969 960566240 579460736 809421265 482678722 823938000 696199866 845527260 734703062 772034970 272282223 580674817 752805954 993186834 546675991 673567799 385874826 562778476 596519465 923961531 589228997 639069362 326571200 611118054 429098653 838756857 736824540 760835823 95244490 759771023 436302186 681652818 335810628 894371894 447967907 456164062 721926888 819909229 164634300 390676243 48129569 724015253 648184712 927762740 269624174 448140849 299454629 317180553 568137393 643374430 976815863 983024006 872672848 957682515 100367750 377818156 749386482 817479468 92979509 270924728 480449887 786422401 359359056 682803474 630215612 742777835 403912823 522409562 892802837 966248639 899911868 943894649 838258009 847737586 146615373 435125210 590267919 926170037 476375783 895586357 193689406 641408304 70347361 458822711 673730379 731160203 913373604 986336971 352326899 957582800 970704962 979251673 663606487 927762037 629721398 689520314 581820976 613573817 630720464 667539648 817651669 996886066 575238692 710262930 282086064 686942182 557610827 935671484 826854703 921627840 203464778 361574232 274977366 484667348 446204713 479578414 716160538 814617775 120606323 830304051 845874610 853404540 781546821 963831076 449150112 745482375 945010871 995987138 479537122 633751946 532221518 904422113 131013519 869727994 65012978 921381120 262605473 538333915 738131177 838144474 545428725 926723691 769511899 897131283 938286493 967717432 614381777 887915056 79576690 343398357 405802524 936924445 352343160 652257601 301906006 448620731 151020037 605635969 328294381 684263362 867867035 933492375 303515262 510030202 115756840 858316452 546813706 757469291 368594383 492581396 473149265 789191893 32464370 479466556 433152931 851406459 471048385 541946608 307338179 478457110 413676235 544269162 149694387 652218212 581011448 887056019 961997681 969941312 315518382 554610725 515001689 985958149 929914334 994705269 277238350 355706684 520524382 566819368 798011419 836680647 459971536 621652811 432802232 610787567 880656884 974068365 971585419 982646148 687773693 799905561 226440921 677874879 790344895 917542823 179788771 351894188 637450622 764602613 555893740 991123119 291584163 367289866 425686834 790376023 60739705 375929109 685937060 793409321 345107834 927027000 962296909 977661973 407663613 411687048 884396544 941488708 125589018 709625345 438797586 611355529 879123346 996398684 626502791 996463606 627861652 798386903 722289673 998336391 919784273 940586840 356913558 664047712 615356777 910630517 916851677 957027919 67376087 577410077 464798665 608735185 833496525 890685091 211572226 251074978 53323716 779956760 67124072 384684322 325580662 736813280 415462127 553079952 306912204 624662510 540881282 981665241 125772116 160470515 279427792 823710469 399213441 705725525 549437218 684538749 343619512 769605786 377200046 381579326 587876533 885527533 993574225 994990570 12888664 295032932 403679053 807296974 416884108 728977078 997846854 998294617 129725975 869341735 712013547 893928576 461695815 990418255 32858754 147133473 757643023 987792033 991143545 996126867 610642790 627072291 310980462 523839309 470995866 664575455 931958823 960022758 703277340 981284882 177520807 193527351 245995150 345065104 70064990 639948675 642230325 871298614 251238436 350721295 465290320 769471305 894468629 925575884 917096354 994650544 364991227 527427080 223964456 486330439 488058386 557012990 358588806 744927869 434486408 771662723 387321487 637807108 562221673 865139682 366406797 539434709 221220356 463485888 425430072 540722243 551130526 636736305 776635196 780534371 357963972 571292092 716680429 902934348 453594529 730750497 492481275 749910280 496815037 550124572 669532832 954958915 409316165 855994111 929768377 963768376 884079835 992895133 518562378 915343316 556728657 698452653 161556964 369819606 703841991 981284514 405788658 406402409 763897448 836388809 415801307 792537853 878219597 985404319 966715074 984477414 410582976 430103591 370564107 584856497 517415573 802576716 310487340 683807137 591439533 769962099 761579003 859581363 885825865 992483264 100858526 637241854 547359392 996177030 823556825 945254252 756188375 970437241 958737086 987192961 223948351 239204489 740941282 978207486 570233436 826836896 441528763 879784213 442205120 698283154 725784650 778128527 847497563 859550267 446298360 838420118 647543523 805664311 293513399 872219516 755675791 888435215 82886707 375066216 345019707 491229458 244258862 968981822 666631386 964911550 924554160 963716037 511239111 929380825 551560273 748425183 367973552 459461271 92353319 657575295 242210053 719638036 371802501 897689146 763371935 814397479 903283058 917117870 427173118 601880988 292612476 944309760 349177040 468891133 302089504 699053189 198444885 630211013 44557713 951746518 391469407 445145573 134504531 759278330 428838473 840659654 299791564 809494630 520137517 695484383 905275476 925645770 668712383 731361714 723395377 849027458 276586500 857948089 996576064 997252791 338343112 555914779 33918984 555716232 510257544 803147584 327363795 786043565 255224156 487913023 761422094 795076938 577049409 933448254 358039781 603021166 194689169 335274833 731332024 871357179 157350375 560604306 105977546 271631172 651097728 895777074 973679844 979660219 628412675 894558365 335964036 566640178 536728754 691952634 112225131 457510915 467762460 492551079 671170486 953680037 344015992 862995111 592592822 688687120 440982195 547342555 436436188 526458455 76281312 950407625 996258546 996898435 561437916 752573612 133758443 247663155 497091192 538331907 133936216 953069550 756340481 841165265 784570789 855646061 645629578 797257009 701853866 755244584 697658045 703834075 618682400 965651661 97075954 690538952 695220018 774257171 321254994 655141699 917633388 966642098 294641497 440576387 151969261 895859246 86934970 412527471 767504714 880968659 230261313 603425699 668930021 827604536 966159548 974433871 57567761 586943355 925123174 947532695 672043121 986511704 771467508 794177946 606998239 811586339 768092409 973997690 213543572 819390773 190382825 831461442 725462859 906264954 753777825 812330042 368878864 797847574 322725626 637497214 532586407 641022095 217175132 574001227 763582673 920971153 353362009 656495579 620162672 668610209 823083506 843716745 55640626 156811296 749848025 945827522 965267593 979827201 9682963 726085531 383170591 702571005 545718383 811826511 865266249 880909488 78626045 153452478 247344270 358000730 85744934 442166457 707062507 753512762 231792393 454944517 197724827 712950419 491888607 891634868 130057308 928388244 82720903 602897671 979146581 997728087 24134659 203113327 211649628 918694568 528732702 580149160 297678500 326549139 415201881 516186165 707345970 722011377 711181070 863189563 804046914 907160689 946676433 982999608 521294192 887469037 162900214 455631806 44389499 363738447 921928490 952022295 14278959 783101463 944157272 953799153 478041005 793849737 504122881 963712717 251955545 454829952 911738777 955492263 258737648 382993652 447375236 551641468 668962824 846023346 481349400 695463606 832350795 982520031 977369415 980865508 173838047 380175154 905403996 921312635 713317309 718869968 741691308 969766582 810291060 939555268 38129771 640100632 276551325 403111946 749698234 914482659 344728627 976485906 558309122 663366894 584282729 666328238 898272244 996594364 893946484 900892700 509994944 642622732 897093636 910784657 324756230 624153910 899576865 964630599 271174180 456265167 973897221 998633110 615887036 629370551 259907776 297814256 339551820 498636548 676155349 995221401 887297216 954615055 902761079 973132421 563905484 767433745 458463424 500685346 538141446 612552281 509028834 990716810 18682780 517545987 761426714 771679521 895534666 933689382 426500564 807219213 478165705 715679677 293774436 358499599 719253493 816480248 295420499 778510387 1525440 442074851 147795088 392875109 968006549 996531136 408653909 704898894 728821275 969027080 830058035 973472315 581999356 816717819 879169681 990755060 890686444 897161836 238744218 340269098 271235415 709775073 38712296 42431544 518823736 833300267 980797627 983800950 16377191 171727281 127943400 794783833 799376668 921528088 630552639 833630379 190723967 668854957 844878812 976236759 381622734 782298972 286059977 755002959 949783555 959270954 436133868 572795964 871458577 961771238 973677088 979627018 273288485 353898382 129333894 881015835 792227931 941987829 31804132 129880080 788047110 803760980 810220530 827021593 373885610 401221305 64303464 110820644 151251584 721816632 522331279 643080292 168902136 860163550 804441747 983918499 576779129 945106334 774058858 794991913 626654289 949971601 105199964 788062278 353914332 655690523 217274677 982534285 576572039 709864534 488861834 645649732 402762930 654630371 190470956 869948725 253009661 543744212 382615197 715842587 223388021 503892045 921767287 986439296 806455317 847965535 828765950 887505714 902701195 985793060 689094034 803448447 226345333 578317475 421300799 842619450 990282593 994125460 107931319 577747428 757042853 825338624 763716204 803153858 83287032 898620967 976208339 987083651 712324779 837560515 782634658 813355362 396603114 809864133 770464345 957371795 557251999 574616168 324576709 894189940 322885283 766206935 735072351 802407040 170211035 196231587 85367962 474471559 773571957 909663750 652756219 885525588 992194725 997579173 384556676 902108230 987528829 995869123 119258490 494323929 307895600 517408883 842543513 856961139 527944396 557863791 29182815 758138535 282099421 803955962 204197136 303560485 674982338 987566014 867930278 897509640 539259268 835782610 517859944 733517063 565325202 973571928 2369702 668197445 791939034 814825156 820423833 944572159 516481724 716010440 229696629 436492037 977268250 990974792 364287989 542042451 722812363 923398328 326650463 769713632 777619327 790495837 412336652 973966666 744853933 772893991 604948546 992511069 265423661 723769934 668996461 709188533 140969420 621534040 278217209 382659889 705544760 722961339 804888622 948846644 646049641 933418997 263989745 863335321 468080039 524889178 657128609 775442830 494068479 849364676 216253736 403299897 472567850 918003039 350113215 858463590 686161476 927565243 702759359 940404902 798895111 823316047 312002477 433561603 882095650 970772560 586718816 807687856 435477568 620360649 133997645 390129812 962701086 979811099 424491257 790361004 332203501 925626849 539968218 886419912 600980225 980031166 856400891 915081226 892506249 984129969 343286816 604847078 210169966 657520499 968757394 982926710 30172417 482047283 81306574 516025849 81266865 600259857 211708994 555443010 379185206 730345477 380918397 645084063 983349415 999203500 689912954 773890011 625386897 858041039 370901261 394849554 279438837 495436384 942721160 957491859 829064071 944935347 419608835 723555621 311276684 738391644 60688253 735300446 601204174 713479155 277401767 475279083 712888663 927508168 456622420 975730679 920837042 944133026 683411684 857219582 607743887 706524687 740321569 883942777 2988343 630462649 29574812 473007113 518491508 902893573 790482978 830963477 517451882 806952511 993722744 995192630 474375993 925600447 58956451 234866521 371195787 439662473 535577140 755595977 817223903 832608311 535463371 711015699 693817697 980738533 723991309 894848857 989439299 991778908 662755997 801228425 961545657 989218180 379406464 395243273 453855896 619558899 65696881 188986140 458172780 847477108 396536332 432712169 297416048 488865814 427348179 672193880 530978253 565818998 109538561 601811403 770106265 916866019 536418117 722802554 478209146 762906408 967958233 980990552 460239768 583136782 924804121 988825556 63268194 965702062 868514662 920528017 525611588 556482976 738368785 969219863 43092882 510387074 539511208 794790972 904586192 940359744 39250106 638265058 444188061 776474272 563269006 891045124 938484017 990635311 550824232 834090166 8360187 497184527 969023864 989643806 733051871 819214896 495621750 633144249 547039748 761164582 937748616 990235455 781540738 864433783 808637910 943040025 489122929 537966857 168249264 666340433 492269254 529575443 583458725 744843805 755357616 923948276 777255277 828024463 530406004 833337215 55818494 96910826 281797222 861447410 622239949 761233421 296687831 316500545 442898791 889732962 264619566 760970712 100802002 159039279 794002634 839328271 111144306 314866581 989945623 996639919 475045983 833761317 289346196 314712177 70156671 356092314 971552196 988346769 147271831 691906472 684256473 798807713 938456759 970208069 635586781 739450816 474933394 904273279 773862894 859300826 845545206 923426547 694399714 761049488 887731223 985136415 857803509 906642941 969022591 979416998 489783318 725517917 717870500 822803173 705269028 950984218 479906223 973846598 613448314 955118531 548145513 796513935 874397854 894866395 240443549 729178747 825982656 876211099 267684702 295640645 777383273 826254265 759551469 839223286 475631300 818437147 506613892 742025743 908514625 923217491 97613922 180868601 799296484 896394409 207573836 729139683 273037821 989928364 924537781 939791530 326844239 456460855 675146306 826872652 863181181 898178876 265308665 296615582 739856196 767029711 678391643 684187199 798000661 984851904 785459778 845507502 402321918 597580095 175189217 903298390 349627939 569942685 579673821 916929667 331517338 932111494 730626585 782175393 124920678 158262755 609356417 795451025 350284034 467258626 196641517 684246257 264491345 463797713 204313744 614183608 124101665 129385580 470191126 488762444 891070947 970452979 583759390 929941289 488934959 534626621 72056047 739244038 162370694 201903140 185355604 400584172 468222083 923606275 297800110 996011492 875978820 962579147 114495383 441877618 195786314 600029064 526706987 568385487 937889424 959908879 117573270 597390381 636058151 748446409 190901860 296465980 92991288 173977737 908476090 997168915 462241514 585768278 103437588 671787607 707281218 978092350 266635281 778012600 774323546 976591347 792218744 981307195 54288313 532689549 108414519 825374268 925638133 938725856 272465709 466387653 791820183 964705218 695109098 995921458 220286171 844213174 512010571 801670727 682577181 754734450 625498730 886813623 224249476 851273488 704521980 780862116 899435207 979260548 568995706 984845790 700669692 701787218 806337621 984727873 560562624 773300335 919863068 974121488 667174134 732281719 50026257 645438683 454605520 604361434 422496087 811329280 19822386 724908362 938018527 998340002 57863754 841696719 406386698 549868912 271549024 541927119 483715658 952036132 580023772 632930847 61693594 400267732 14241726 512653073 121359582 356127241 92758213 465450151 933322988 936266892 323260439 852942501 331374413 790044610 533915631 986987789 111567850 461352255 354640652 521213256 881889636 953160764 712837465 923318440 927431230 976734907 980727544 989418266 860355511 973440684 188388139 418855856 725547659 944796773 530626860 643612391 801304020 934671052 30918800 393211910 559197377 762203432 329141769 914294148 797905371 855899322 156836490 946247752 370315709 510028539 389704056 883898605 730690986 983785197 550720541 579257246 107331228 857188710 527611573 768389472 679949790 929366176 595342252 974560094 690518903 805285955 256442904 443733205 857306459 897865436 745178977 803782809 588737011 798561594 528898932 623957251 605828310 899277003 978362081 986360006 911945708 976747239 608676542 709366365 653693643 877112829 116210970 401375990 387018029 907411799 910698760 944841038 987393324 998346666 928437214 993651951 515116112 578802073 52656923 830143589 609412925 765730895 120073255 529708589 659674704 866720237 831191241 958195620 669648160 747877944 403474446 512410260 796630512 807470318 744403965 915378437 830448689 865484684 799655161 854648967 720750445 872022988 316905872 991289906 477444980 577058722 354041004 402392584 660567279 741765675 371793068 390544626 419744266 776193001 327567392 890089482 353352441 418514486 321348200 422374792 293979667 381861256 78372037 151216523 920143089 956456447 464702484 693354269 64370565 705943290 325148478 546129340 215573792 326593484 555745552 685199743 570431196 672702513 621297422 874035079 605787727 822927131 550626538 917256117 7076722 451241074 523223458 566499364 333161683 553834868 878240516 941823419 498072175 582173917 805014165 998704019 126733910 247451999 614816741 914352424 28415213 688184943 869875489 998989508 973373813 973796274 250842160 615335920 713586480 752725544 668001606 690688360 348574196 911226727 365093188 711098991 290246680 845789145 614314098 759531297 882329248 948783564 640488084 907709863 208511874 311180614 197753584 539572523 680247210 818727009 292252983 563680697 339080461 718484703 935820319 941508441 233204196 485832571 249491500 429566904 50157063 304109525 963176687 983054511 39462004 956911016 242626887 778821418 931899070 999102464 352521803 532269150 60389420 737982988 322394632 690214625 609832077 712253154 549645841 783012132 177735802 342360620 903115529 968289546 372369509 830656126 827567009 827947805 824018896 947519795 372338772 945990260 653362563 798083305 183253546 993821011 71870498 956596362 889760195 937306821 321458720 919855950 890552238 900719686 685714731 876936243 173075715 191369646 469748761 516989973 497191361 986397396 307908096 743744557 699408956 745262222 969519881 990068898 74613881 522075402 99127125 512210059 910615513 960254106 115492744 542636080 195564764 244252688 901470054 918237850 330038046 707654815 611214157 674936771 564881468 725757554 271156124 949265915 364142792 682909322 35618267 626122295 995301279 996946637 667840651 709624730 698087001 860810950 986407184 988294059 79047262 462100780 168504601 966464077 989236988 995219349 313996825 322912397 818812537 867714107 666445285 753410625 322340935 976807997 245815537 768245476 969468359 972567480 579378537 631028413 100454294 534989047 355225706 555158634 215624352 483554743 795457818 812179694 834021436 872144485 148965826 651911162 87120248 681744916 54992345 773387127 118296054 506770271 490976314 612038222 445148944 954699024 450908486 453578294 647604763 863695429 692146189 774940226 371011495 918944561 607546968 759267408 556701028 708489821 314483943 995296661 459766452 725646569 207644243 478876642 40089469 344101140 212797024 466346928 180323917 562246017 571250698 802519710 118805001 627757362 55639542 322951778 595158802 859346169 622161125 722115530 627452816 974251934 512207567 901577816 687884001 924241199 978517489 984690535 580172039 631508154 31469323 701822697 339917776 353870226 698104001 943785369 117441149 480949963 560572511 837295870 766169504 836258723 956745150 985255072 17606128 25156802 508140633 799018249 931361173 966038910 674693605 945446193 69427626 903198173 213924005 494527513 156517822 452157194 544207282 685864283 371674099 984602827 228202485 671731441 477061325 754792610 174980137 442348607 442855703 478950282 197678382 889499175 595052705 988064226 457009768 465925485 387866193 841859754 152309178 845278079 810150985 996943622 398829403 758016401 819722885 884809817 625212255 709329894 719747830 930565778 389799852 632230333 405135149 755928957 145856774 355190784 715606456 922785585 346130892 713833740 215289931 722843378 693963237 981242518 587129913 802112961 657934021 759211451 601236682 604077163 573697441 755090837 148419583 708667300 803361871 923853822 321994938 746755538 798538937 975450213 11703677 248261072 702136955 775911614 354379863 474082458 942227195 998331564 389294070 437536366 911629885 988830239 236965848 607024593 855323596 982503529 880560809 917182207 971708571 992265024 726718348 894535781 564672684 862578735 373573490 737219863 372168714 606483131 251080368 613343519 869073106 884618355 802293922 931705419 332202564 378899756 969140389 998174138 242103041 457652688 284041570 682993303 426174634 721356777 253993831 255523918 597662873 777875293 607841990 751378732 715205836 820073066 401741154 658744160 565257908 654747359 309955970 429433047 10188579 507203720 596797148 952562459 320341275 625419629 211642898 775901008 848117121 996378640 833681305 881198001 676149644 906154731 705403830 887926773 801019868 816105945 787292798 941391614 128985571 269328603 657969609 887648069 716647303 969767907 430772691 659802057 726124097 866901152 465519075 958655199 872061318 943439338 628396085 960903820 302994136 736177917 744820864 911094224 83898076 133808821 807382309 907630312 634428921 739769457 991771365 993642543 309579138 622074613 621687356 670016992 144354949 802910578 442955379 611872792 810000839 837128182 536105534 671929281 655979564 697856934 779673339 795771192 162111364 947874024 276626122 277484293 265177957 775272994 428753612 948819262 726212286 963282521 742703087 809388832 188921546 201679134 75227242 373088122 96798638 889747213 859724790 888447812 118465613 344391351 854526024 892753731 168325728 932724850 694070826 787513022 565015457 832715404 297548454 790832130 265445486 893787383 926114799 960730672 351818589 449024518 673553794 934597333 540678843 923811982 878379313 990187326 735864411 808939131 153995449 333608046 113348446 641130862 755256386 868492878 458621394 480240521 104102875 240203015 33940570 556877235 414171404 816660250 380459593 896660431 655124546 832808910 618423359 716736072 827376230 935045178 59023186 918633373 565463845 937481322 855418121 887340498 610093339 885761371 483091334 490382532 434785869 521396486 948140707 959155473 445122792 651708992 243518849 964377159 275365323 649962489 918278536 965542625 580494234 951928186 501401729 978783305 67737093 382224784 297306935 538883902 408460840 481679557 858287449 897922522 327367141 820295416 793987585 969117081 960724224 988215268 670626262 911739623 546825737 662410187 711349810 984004257 526854058 975840031 171450078 923640790 559095637 811598316 839824540 946390264 709594923 906475764 443868682 719408430 113283581 256593117 291472816 614698762 639563765 731849952 370368313 602242350 593724310 842790194 555295012 846416655 17112718 360384455 564098160 779142345 486613261 891606064 153553860 325572346 640825543 804347664 639482574 671012699 772891826 849020897 195870405 561852039 436800013 978984222 852992874 901336300 622221187 797068472 862425318 959736112 289406964 673446773 62644751 543767921 695927401 796148412 558326516 934183020 189196380 964118911 620781345 812619482 241035555 615436267 252648623 802098811 666512734 978165143 409814541 821284654 976584924 996741699 736568603 874479348 178829341 297932318 986041300 998536457 924373123 944886870 946312313 966010625 828455580 889287984 1409174 139849929 816841089 817454334 375958582 714175655 453425711 541534412 345900991 454241020 756822885 964260263 358865881 373258061 224043894 468678033 245165596 444042662 382761181 959026119 420201485 758387857 634411383 786915716 223383103 596926726 20477659 133154202 982644109 990099348 697782381 884010811 611133593 987981061 93678192 934297011 961720135 974262511 455753237 931938369 730552962 825128357 142583405 635710831 690563901 939966035 622975096 793281178 373266730 749344231 399372752 420750642 524953245 575960756 724527896 854151751 216792062 238543825 170303704 500973160 430699791 760893016 146308277 236003691 819377253 942085689 358931895 881299114 720722328 984457598 798133140 885569656 19329713 245090615 222456045 719861054 754185001 936006229 519532109 583898075 927435232 965634899 935026001 958305735 306088702 929367037 807027866 975643860 764431187 811016580 594488954 821965075 3819405 292744352 957317440 973819309 762899262 803791444 146891691 623248059 280582749 989514944 410869089 866432288 242455246 613931603 863927879 880100174 521980814 957798953 360871286 571618914 412371748 767664661 63654657 196251973 746833399 833339938 719359143 993333926 506325561 654416346 896412967 997860159 542906077 987567874 92462196 869548964 57387185 186081701 880433389 968147822 335707949 898254836 342923361 961223687 638140086 769957479 677844665 740088475 791900453 969755558 201741485 802669195 14813344 337028151 141555739 476510034 994320559 994688197 594786681 884421990 683427803 903426809 388103336 960665567 151124803 550753715 549826217 778274823 984911583 995471362 847550562 997422945 211381032 641975405 973484531 991247296 279626829 713503622 93853620 309357055 909660615 997936860 71321859 741295313 133362115 151091022 644271134 728925635 327562190 724063760 688394387 752293971 841818441 860853809 217111894 705711754 448391496 691162658 785786169 789360006 479112384 606290046 683716331 944229484 584609226 944235265 498640203 955419576 885153791 990912303 192304175 523448783 492212576 679040039 287713933 519854533 950038196 959562422 244742795 343036431 785223793 816662779 565763962 671253072 546618546 863573032 394117951 841064829 112345275 910217361 102464388 867141885 197977241 370169967 757639562 827527173 873752172 888740803 953284825 963850422 360620466 700085277 164811357 299916030 756216993 937500363 281807760 703541377 48400490 907781128 121678147 347038521 871171525 980676130 738571936 978739366 152105349 855069541 871204230 959675317 352866977 801147875 135455 120942400 952550703 972237272 656635945 818126749 355438134 644989124 654025039 884297410 897894408 977159596 355246367 777136948 84023221 771174079 634585805 955982761 736163442 798379506 495319709 722304758 323005987 517223630 669898322 892954953 541972023 943929360 887338820 888787071 779054415 789716851 213963349 733150436 273794892 548923615 420021717 952960233 578832619 619842907 302674036 429965917 37640153 326271032 503676865 790938663 377004873 537356637 453766270 699547344 592294175 620671131 297296766 821773798 1021976 111810626 528122337 600960957 231342144 634631624 454924462 798563181 979724344 985395532 328431339 907114666 120117862 517892154 133482452 175664409 212983677 913027089 913700392 953652757 527286748 578460335 730195364 918782427 632673094 691205206 211758786 341428816 640971041 964832608 192541840 529722300 267194712 272790750 14574391 253641820 822038205 827953163 585436523 926100702 525162650 889401371 349339208 994406503 423820677 668159341 627823639 849267838 658645304 757898196 711633085 797306838 695580817 899594174 810692923 913263045 842895618 923142756 581424693 817680882 216186543 703233791 470256459 955176438 256233425 532726270 226594839 969812367 568396452 586177583 328076925 881640884 875458943 925984603 794582888 860078083 195531353 616941406 801937970 950352578 587201411 965217323 140782804 380330355 583640351 719817576 434932306 719945631 680891317 914295685 312694540 325573190 264148089 680934964 220492966 931988345 248072436 516729122 503476648 650377947 515915637 657686212 278685353 321827036 335253023 380322014 414718861 909236876 484650388 673507365 714611563 788531523 554757173 562901678 616572106 905084396 824043774 997044126 169199955 814738234 255700807 521453372 637475061 759101216 564311673 763149337 707598177 903671991 207518049 757696951 892493915 944398019 917985470 935987213 800896912 888695182 718873715 749123912 328070656 701085693 865410321 964068809 3893084 642029977 673627567 861190050 61046457 921165859 289574121 523287116 940098600 942611500 517901230 620730325 334244371 658884771 55028878 457465478 283015292 743264090 894531515 933470220 655335892 976528611 109981288 310957311 287182865 649420947 54012939 553258872 51170998 68713771 24786343 423411061 77161612 261486469 67192304 962222267 433477992 799158466 493165483 944163534 460964044 658538047 249228680 839398319 535097184 714207695 129071213 670510233 393539462 557764539 202239553 475369406 869625996 987559224 502639523 525512739 502158437 744716653 247330319 840616494 452852108 998122031 797413841 913639882 479525666 685427471 103188837 538469801 99973249 540863557 739912282 794254600 345091225 836761009 435061396 986386226 989414757 995558584 286261980 736239031 973499302 988103360 316442702 683242872 99062847 650372766 164277696 692636433 601241422 992867563 900858687 955268448 966648281 986652646 506782638 559715758 376782032 567824264 225094776 875937314 828933815 998783481 102519778 309909415 287431601 441148689 419407385 447297790 46685083 52421098 975143415 997714897 711202522 917270629 474800513 577642044 162364207 694335913 79069768 980027727 617165431 793264407 564593819 842996566 742197641 985423190 914661361 992770627 786423005 982081331 559086836 738196256 435110897 865079651 166374010 347175778 683151760 847887905 953240925 985804304 238184594 731897909 764970047 844082366 371900544 629570317 342188319 456264249 279683328 288683764 192433627 323921593 36420293 244014138 22007984 317714862 662177439 906019893 128043839 711836713 32747954 510385778 366212805 496258180 74796368 805563739 663003786 966395532 228435601 564819175 179848801 725740824 167375827 449698390 695196998 964098384 662062479 714017755 806944016 940477192 288403362 547971261 839305836 914430582 677270393 792421251 947102289 983170070 633971780 805830634 476449931 984974961 732358712 813588052 709067720 901618802 885170090 955638955 850349973 926876984 673538412 967241000 113675235 918749253 231911463 602855681 392622723 715090242 946193132 994595941 675910268 705282910 667732314 871915938 634274159 970230305 109989901 323037922 200840402 743968531 693634838 998008654 639710340 943793103 287032863 644821484 893191657 990531520 877280303 931372598 232004951 341268272 72213343 941926751 909021416 948451993 520727 286309002 442630973 826537301 57201413 62669494 827952330 914379424 499840459 955673271 141174690 569723983 909358799 987636238 392128404 993823125 762516509 795540778 841378577 849916161 424493588 775315703 164027879 871955382 987701558 997397149 663186533 973514370 905803493 972449807 840385 638109331 728777952 963510432 509612819 592679980 843535772 965549522 125242257 418248780 907898139 947235534 634606228 721152775 376869486 618625803 563292422 861633967 581772518 907515837 557588826 876613016 864070856 908091794 976858582 983808450 977300921 977953968 142342386 505773202 841273065 938480885 868454383 983633382 232121881 305661706 584177379 828523890 450121060 532029056 961409443 982630520 741249348 875561823 388751146 987428606 44451312 336813763 752147031 784909490 275948487 455060442 337112758 710482244 480491303 946039299 100429077 937049081 363606091 850196029 212991906 875796150 416108538 686530127 399521559 688230268 932533126 981761770 201394855 561120870 795049499 952828660 910822993 997959182 758501906 962435378 271332146 955899361 81009089 808572807 77696069 419307026 628731504 692839940 36207038 733168471 690721706 722213282 265554360 638888483 961352280 989427678 893086606 898021316 348040057 632322956 877066291 934114112 472517410 853599342 73309151 469324374 942536573 948326380 923697929 985823058 837561873 901750278 656717889 802473370 908127859 939343972 562007939 953268505 666618989 926206177 910592944 951475714 922045988 969959718 978027493 978117613 273097461 350978014 448261004 902874084 917428125 951648189 444728286 671726777 212847013 641809066 615386470 765232496 370707355 747395820 807788227 963475516 613158978 820447508 169974276 588449220 735813699 741165745 787330729 988188973 445398993 589591933 554363783 994372170 87929750 673478833 458448896 870853568 158060038 176757599 141418708 291420987 196137137 329920830 408626045 728528051 408313631 750672262 267022576 407560038 76627966 636132051 238302609 429894693 901682704 948699604 533833721 592555729 333580092 942838240 997060888 997791783 386074476 569355758 747018869 878123301 801250654 987377100 171896847 720018374 398216600 488181352 642881102 997945473 149691533 790051573 226188915 281754213 617708363 625500008 270045712 512956911 639243790 811038301 978920498 992714006 625167061 944767079 857567496 906258881 748964721 761957256 746135937 827332362 206348604 659294320 373264151 546973415 186645061 828743419 856860513 954218693 997231580 999042061 531150196 594992815 576877890 996809925 297083376 533694565 771632758 994675060 666397998 809433589 486163875 857454502 592400837 693142494 297949104 871025781 271380058 568059824 27529484 978104468 126359512 452300521 376441865 948987098 794319877 987678563 176629768 414703562 845914172 921356023 667895703 739676300 724930625 905408406 925641849 937511928 829125509 836095684 11585663 166211725 17065445 740129551 346188002 968874283 339003128 356800524 632579266 902927123 936823432 988027360 710559144 991475098 709867106 870009858 790389048 949417142 149974758 262517762 818417413 961235606 165010634 310141293 258327056 849825922 431542762 739948848 910599206 986238129 956358703 986297356 585134797 889995765 774157469 886380038 938478457 979277552 509212360 745458986 652633958 775259745 733598015 746093706 523661709 548876088 980429004 993924355 295010769 955413591 541326535 970665797 111773951 635854192 76773131 77111369 458835416 960014995 211646751 455135537 904756428 916747203 716922920 925447587 309565720 650123956 740382406 900174364 141121627 359023788 753721740 797467046 496610454 523333518 773707277 990167240 153173800 932801331 755891600 785174203 623912081 728035439 887588410 957624300 656079822 756621074 593932496 693266615 824615522 974048502 141381072 900588750 482709129 749680786 665081025 994057493 683458108 995935108 879191501 949414623 742770143 921100725 494366742 658065257 553936473 673801828 734850490 930319424 308248123 339524821 426803372 649503570 541416449 974128804 843053752 860611659 698178317 801933375 464927721 845493160 518968014 533350256 284178217 504286951 22576107 328570181 523529556 668899246 97173914 971280551 353404051 687804155 13829484 198138130 639004651 994009447 630576028 871654104 801262611 989871907 982412347 985457090 463410192 987204425 50852212 235829830 924786585 948047487 387450852 549892399 841833760 989993985 579864189 897782556 569615715 872235454 213144609 250682012 726516776 835650002 370201298 923866570 234890416 506133723 8133369 70158678 536234330 677393930 103426807 223975490 455575392 925948537 705571752 755730975 294899915 606590959 206986848 890634326 773378864 834509967 533039889 687179610 699460333 817822181 689827387 861159425 532335423 911832255 253500835 401229217 966613003 976348488 540502995 660414278 457595438 582873626 310449960 978218906 344385387 369572953 196008055 388935181 743168605 951514224 991608511 992603111 981373313 988406832 634541678 708343430 942314949 976126754 107320020 963241715 413301624 803298705 280255309 425533038 684709983 738577454 866340981 885299182 290568668 377969145 251355361 494176686 147284161 931360028 942558541 978780769 354286855 763559740 444206305 616214914 237509774 977999251 285800616 351339253 506471474 706620371 635617297 736180256 785653105 800350517 133439809 669979268 266298268 415381031 832861564 873876597 250818129 460899766 414780023 746136132 525764495 671083311 175265709 698786963 164953481 401366165 329034415 493227854 397480737 611234600 491400017 691485686 804971064 816713514 341320125 721823469 331343678 582948773 310317542 502543578 923027051 973666669 514697281 981297191 743874234 926202769 638281772 690064628 464287596 857184385 985065273 993764508 660968580 770910439 974026538 992710112 836158555 899974862 907359117 941964370 229310383 748827147 690423282 830504334 107143646 197166871 438454556 533393713 945217438 960036735 927647100 996394703 707279994 831155309 369071431 405371611 238989812 580604572 51657472 873081115 520426961 986269047 335425636 560411500 274157168 955784168 915194701 921208711 804474824 939767738 620614648 633211351 890015639 919313034 786947343 914719094 271773743 613502319 486461335 722642135 868763734 974156415 916050668 965479219 48710202 479410054 998255845 999278560 441975399 606389888 575298488 581233320 278638480 600733076 374938481 464835399 124985140 940435920 203552661 477605192 595633184 685628276 901282510 986033539 713991078 839541866 556113069 663188169 64962781 740658564 270102223 420005910 51219531 595838026 919799937 999051670 113199115 627600551 291494024 991339363 871609867 937367140 550076446 896717677 370802605 390365177 974726347 981432142 138667131 446722877 124454727 246362497 222756975 523427510 674138507 716586339 666736514 943873122 944874436 951361167 531677724 764660427 120106471 716646798 130797741 826430668 70689941 784854803 984762901 994696675 937322885 972962227 175704243 643097049 243134268 253225624 40261006 344999300 169636016 560023359 480302577 601471485 894460983 963780619 286507393 667892506 635788688 643346333 84026880 742915903 593462158 848293950 494646749 753409802 319642622 567351535 797347680 992408963 147130731 310974889 228691851 452456960 183763166 964062267 119735099 770882655 917762496 959425190 556157212 744498029 647787604 837905894 806603655 955216753 815807253 964304561 504074373 697518532 250856802 640511627 13392498 255280677 656371140 984791420 428715155 919604505 406976424 638028588 221303449 387999173 778665411 781268332 584366597 859116106 658373232 778693185 578685143 968261382 858935672 918200900 814442946 971175301 383075019 778484654 887650464 992173591 615243369 701070755 940015076 957011103 479334499 942326943 177920544 902361157 978355459 980879847 593195349 594291350 197080042 499306941 426871715 601165366 548283593 957272540 603534117 611335413 137456389 472073329 20907635 794479346 695753317 846049730 711664590 741373703 469822569 558751047 381634505 664960087 459506323 805135924 93224495 913613247 496628618 818272996 744636798 791764592 526560308 531831204 725968162 806582578 218532324 326354795 445158034 791581834 582781634 856268717 948814180 962661390 17107833 149156439 179665910 422924150 185207554 840464120 544203913 634404726 577765036 991305503 682074894 930388823 738662197 997615576 32586816 866348034 103414725 512286330 91594387 338007606 765525949 802692771 930406159 937298439 805780168 910949196 405108596 529501982 756046694 811990957 991613777 993572790 148022857 268551566 947004769 947738885 423716528 695012017 744246559 968344903 497673201 709087874 515168427 533191237 769438727 957480388 589666036 690825906 42561589 118916913 368601421 702294185 422523393 961629896 468666830 741691381 16576176 685722156 237989809 870622703 513112620 700329680 66366473 140547135 66059611 631463595 209026280 836674100 389240673 473905529 382708190 672912123 248385063 857297253 913720 806722912 702989541 780939766 733789019 862068049 815030441 996289367 918258395 980482808 410038425 493240542 332707906 590988344 355578339 374599360 417021065 702453541 953678815 998782388 890231061 910766086 959929911 990983122 410984672 498410703 699418041 958962675 839656447 873477514 111596002 779361721 464325590 942047653 606187185 997612850 889525765 954959767 516616859 869761445 747634491 933555271 811553867 908338477 131053501 993972946 468239212 930147670 252054143 302903668 460975008 574093253 729193017 914872107 700521648 740645213 485114348 792120167 799082580 819490762 397121926 622647618 675609871 712454554 842770166 877135443 227071159 872704832 279161086 900515150 229244953 834520878 286221181 615949641 722710585 907946011 924301161 977810619 637704682 787809082 318003844 660412084 15060909 295873298 862310794 916290944 23191769 702724817 246664899 719455625 689123240 863960185 977433504 991783131 366526373 929056463 459201921 515515103 83903366 592871643 344579041 722001808 549713696 694038569 423372074 764068061 459206877 778472770 317784057 510924983 156903879 289394001 903991335 995139411 369402831 961757504 874662905 991190096 152535141 726315100 866580353 890263697 793338240 793606197 916844347 919798560 975684716 985746191 176344635 679299171 748044183 983771341 663919360 685877066 193296094 837217956 258672336 821217852 917793275 973253203 878776966 947004375 717496787 756044384 471599477 630990746 143532717 381203998 711338443 766862519 361742951 931755353 689828745 932299434 309918020 715648777 918262470 948588117 164004742 441088201 31992854 584372033 243739954 830484393 359235367 399801377 948312715 954719551 424738731 610655055 928895574 933883014 417642077 495298251 532249196 677124751 47498811 733207653 333184104 543732936 222227864 395270406 722347583 978508626 582072525 665869795 17933338 702918550 954625765 981227488 479552672 655802120 468806597 978140420 173338708 893901024 516570446 731317149 101309721 852944561 836140062 916579742 609082130 668782466 39623895 753349456 578124525 965741109 341479589 941245277 926533385 943573752 421394306 852748831 329743367 862276688 671812396 910769687 716376579 920146236 593987650 950472933 295097433 915096445 643505455 806707138 273626375 930646778 913499879 989454835 869745955 915161712 204544526 512516003 945132692 986392194 448264535 745119468 105646116 468855156 813942397 859689988 616341595 817419207 220669182 517343858 996314627 996687330 71291076 168839559 105271964 440791253 553262347 846116719 507126187 677605537 538628716 689721899 556634128 804711563 574579784 728570248 613051565 703708599 463378502 638511527 648610096 996877326 433353084 746459486 118052491 235333520 655081107 676828151 781839292 825653361 289132309 566717361 708656817 759809568 840750283 987855661 21371922 583328807 179254781 345762510 345272563 594928654 191202327 630265628 184649114 504163767 717798602 975694725 857688614 857702905 780210533 850543754 924929717 946739671 678541386 737446070 24280653 241689165 656736449 700640716 651372862 819464793 667622470 857078255 290485032 875231286 290201451 508251490 316549003 857882372 842288212 955238718 928219952 945656692 284356577 329517344 829253260 843978220 338125942 845497241 369493520 678182247 200980145 686214273 458654405 768204289 747151659 860421767 389317477 776868169 258062059 940437608 833712729 868385353 845686319 846004019 313759290 560685088 574139532 837533459 780818133 828188831 796004299 874643758 169646439 506000492 795073223 868271604 468304453 776504134 307347917 832939624 326630436 598693698 249521476 426397444 968670245 984007010 463394048 896163531 184977402 939528632 499584643 628000732 522821381 912460272 498057130 711631399 353530575 506016437 273073288 901952515 441518830 732782975 671567941 724931882 539951637 640485952 285665349 422141105 828016554 956462710 182062651 653510773 271182899 975706017 132180573 192075734 43637995 448970956 696332048 937077640 65213719 136564119 58178826 808761589 476163476 950074441 66286578 851145215 478721879 508477503 903663641 980208117 428711037 436245993 561625525 774821472 80477116 729428040 494187013 860290115 839116385 881193706 410479051 693199962 699465876 757457327 119848502 829889104 295238486 739979556 280425620 497363214 517649551 876945714 342229175 535501721 355865171 434786689 417998177 483503669 898871019 922360672 635431907 868639786 474981972 476248454 579157673 607176432 738946393 990042898 625792546 716656316 607607941 951305222 523580613 616139520 224230549 860734801 293385307 671588746 872922826 903959797 814984464 816439574 786393986 843467732 295652608 570066695 995136320 997590267 431595549 624176188 982694778 997963830 643455206 690294395 108060436 123028849 117365532 918030960 108811095 674540070 152631689 574453245 708823793 850123700 442473847 569346497 365787013 865156240 333628701 520973515 456401978 681088419 204477019 900652481 243227944 558867983 498057002 679585565 25528465 873215059 527106579 742870871 64465160 731129412 468227383 540642878 297103154 417938874 953530452 993522054 57930302 659052135 101088523 713763299 751392287 870848975 793058765 909306119 668960160 690214505 89689640 781015752 828535062 855539855 415310119 903339767 48666337 488041698 917255282 928712188 938275987 989907908 528885132 848075447 569169017 880429631 107728317 193983385 74789660 678358551 976872982 993774364 315767684 580537778 876179971 916753266 832849698 917310749 646054088 987495466 511374473 610866792 507253495 885004246 100618830 259088576 715801862 936463604 412970771 481853863 955800721 989325936 122162295 549724227 112002615 411004997 927882935 931611525 148698024 672433577 349485073 622932315 175084992 654170973 139985931 845366142 739658707 869611457 415236123 511982243 621683119 710391525 995399790 999017929 740881614 817012636 187256546 391971503 517078241 682031136 863391093 957180762 868327454 954223483 207354123 456812054 35291632 896020761 181581687 662068464 480310462 937428003 825559238 837275990 463502493 903937563 382926409 826660802 125900049 393096432 249074757 532640034 676204255 942860960 847069794 908039835 300647079 568625289 457158647 794088223 866572017 920832021 769303671 949650636 864747199 920089317 352114474 818985760 36665906 984357883 454308080 630339020 974467405 994391862 544435445 958224788 851360162 933935504 103086631 982739290 162530185 630585201 902497611 907434198 591529170 860471901 974910754 984652229 389509106 772216855 215252297 653399116 809183892 899930963 109479577 746861510 209759953 256729650 7493680 641285424 337583875 397879384 987975210 993771761 523640013 873612148 834419879 995447142 447058592 796983339 949403281 958045477 814454916 947942530 357796855 814335545 475453999 766212132 299833804 905121721 745022125 831495944 443462892 885094933 162229008 337540928 418918896 786302071 755192610 876494214 87299154 654525159 259100696 621679780 698258579 986257001 616216509 895796848 313892173 344559443 364720876 750854607 118614602 278415698 948388979 990882480 867803508 896806223 39237537 379169085 614332899 769488470 758688164 822939854 7962751 144235557 158040384 645216582 109361624 150620012 624698126 631219239 906925106 931013397 109949902 245248221 498113692 885972938 745712983 879529292 663898523 720985628 493382401 807522053 88070443 940032428 817584752 920414839 49720759 678221031 561866698 971093940 582861196 915384802 753208416 836424941 370278806 439800991 634061676 857139883 569059822 870361649 566461258 874667061 718256568 876211685 699986799 770997946 762568887 836047735 683864021 896656926 820580586 840426925 597448530 687880318 473639606 918267522 206199306 378884631 240037525 900791053 179614061 926566375 256945405 508110672 801381589 929575156 891976055 920454795 601486623 821822999 394884008 977993958 868158934 989996837 687584505 752729161 902927662 961154246 502966778 589970739 469759158 908759367 684814644 823205869 531738242 741435559 640449837 953743258 695627417 708366262 922145876 957778797 107282453 148616737 487502845 725232794 576715600 762568707 682855130 801087619 963220588 996991356 333280096 831405523 312461252 950220013 127243308 635415555 936465985 982810668 812486347 816920827 797424238 992314767 42714112 360802532 416254731 466541321 694602468 796543459 272681581 859908974 691181249 797373410 23246101 519657515 463485782 995479629 793859715 829497082 806542974 980692955 186225658 477013418 164721630 782259795 569200213 767850383 384123217 532114963 583113910 859616311 372178418 807685950 158911415 268165373 62634287 252946923 266303126 879860731 534578219 893513438 847397899 901409885 474480984 983648452 771247691 895371138 638881430 704473030 929971293 956980694 653903803 907251331 949170722 958319360 640310260 672948432 134406427 844691386 396153695 579834095 325183759 950141728 797797401 984127025 720885834 980869552 382582257 449029345 209123025 388852318 257794067 728247050 400193520 653769998 929108239 981243023 124479195 646558676 106891307 755464105 629676122 907540439 132007174 810485059 200734980 593889073 398129454 513594795 766825617 770242982 759732275 878773194 650682965 987835393 868628121 966427928 659573492 858527662 749693433 998512008 738904669 809164268 865511635 983358304 523763706 742949354 783620271 989718475 190249914 305690290 305832749 988743038 272425694 933808112 290500878 595447468 972254930 994774637 269916433 893415029 135129185 326127869 411027867 555396223 777201605 816897634 462106406 918372676 595293817 677846022 703855075 844195365 638914170 812397006 951495060 962303667 876234766 963962329 17215272 711617366 854338784 898260983 974969941 991376668 637663030 654479089 67127989 741140851 48344340 173784197 639579532 833878617 572972779 981539954 426541844 562301746 927677914 986258331 928228957 995805448 474068556 517601293 262872415 294810955 486192699 944436016 890506639 907109317 542639666 876091594 624826532 731852453 79052027 427007059 377901478 842931376 739382792 975262970 783855467 979327264 329652026 828266779 444769411 973608221 789958459 950752403 253598445 667302593 449866242 564046490 950072271 960847112 918958317 940793334 506561993 704185333 997829397 998913483 304264433 539147120 588869913 962933292 788696429 794836697 51153027 399255896 558377413 582291882 465969868 731148033 214733150 513187984 67061121 417209470 810320869 884444714 374089024 779654632 418538972 701140447 370720562 859860857 368799710 779639696 657729782 689277194 88611542 600331715 103796373 510014974 979179422 981746533 633076121 840852094 927812611 983047899 887225090 891743551 886524450 963454780 400912830 938084748 338099414 476255181 852302065 889408505 201423612 669269124 358509283 618545413 905038117 927508383 921840501 947910850 139358784 596766872 937694612 938735805 372499267 602290429 14188695 650684932 733317545 990913034 988600445 997449728 756047782 922975308 758783782 759383675 473834032 765800619 283521097 712008107 247520902 762350809 990732873 997951873 610141209 754237181 479576644 944985366 464900934 708527112 990454403 991925888 776199451 969343633 384046414 582686708 658825837 696424145 414415536 415602848 566445817 834153184 602879328 874866979 434988694 813811681 735226765 913689233 300772204 576505456 455520154 495117218 851567265 914502248 435097618 962075782 699639119 979012259 908201905 929409707 629770041 953855820 437262508 985434072 958175154 980522283 553691043 835501639 670779987 831302577 170627026 458290972 863364045 951576324 885516193 905944773 506804738 694256545 389574634 741431124 909666885 978086148 294959269 402499837 539677226 893343370 791258612 793553995 920250753 976245242 448479345 729307328 607545026 920846418 311411238 646743549 741758240 859208472 605754818 666615839 634217127 923766566 600093244 895415506 548385398 983758830 93247760 206448776 524566909 530040652 643759255 882087651 433302084 448591929 711224644 857164970 808992156 825759038 562184057 751931742 919817799 964207463 715915236 792506339 789799228 990910558 215496388 432653631 365952673 475834890 115586 21855769 714734540 990443154 719180216 897203315 577229199 753887548 498962989 836003649 943191225 968510274 514014307 695973880 569727671 785745649 531126996 674226816 152442856 219740225 657481331 734371799 642810928 697126004 238336660 537646452 64975341 592665750 290833599 838087451 163871987 420500684 337075285 897756724 164158218 295302352 725594026 773454921 370360046 731778397 185311386 234732625 760052729 846559133 970465259 974074024 30973079 106829334 645085554 761360983 657722200 942777140 847252275 859465472 444074828 816076496 452864525 729806942 365264046 706944968 872290833 885680162 602670674 682127396 920667134 944944868 126745663 865489521 348138246 448287951 307207261 516508913 305922100 455634368 552296842 926913857 883299534 926147370 788969296 964824415 95932898 581581461 726890077 982489682 297933173 985129524 443620092 690837048 945486285 956689428 888125622 907715089 75428039 486989634 764441798 842294004 931345592 935286236 333449114 736997430 985753903 996595461 33090419 220795354 257626129 276617314 227131424 359833893 777901772 791074250 449018327 522537647 444217302 903581452 976122386 990885578 880297202 971825180 352589008 905694217 489357227 899664989 605971232 808893802 599727990 885952110 618938387 783296285 469238850 670195690 678466604 852862350 374281429 550417506 603436322 805878755 25915166 501558071 330238067 632602442 368873794 868458096 234944009 933942723 74132774 654508480 190770992 525616540 78217948 657141432 249555022 297755497 987382365 989377912 399998034 828512276 96076104 951630808 626095836 696416719 16565823 34128942 684683074 813589362 364957393 788190218 270591569 883893896 641969426 904292165 465566419 631073634 891015724 951766683 61770615 251213823 424790193 490447856 131003874 401898485 17887108 399257574 910595815 997486219 904303110 945113722 47680408 874978542 117871712 555616912 818897236 900092681 376512994 630395304 481564071 487941144 43190377 112592526 984087829 990995534 900597746 923838432 735751442 814361922 708187867 995353631 895984161 959769208 673163763 733441146 30198151 662660965 393325855 484565799 872242142 956800045 986415300 988782861 263723011 941941048 480096737 898520430 113490434 855189751 251253773 595163771 247320920 904775956 26893058 654613619 935864676 985219212 607892058 787860010 945202531 991368692 622866324 624342963 722745428 898624033 197815864 785564341 285076954 617019435 654077597 739688238 579658340 629917273 895000740 904440056 576475614 841819230 791773844 937238950 564370891 781325428 693592376 795143048 898760401 945700631 725157567 781889727 108276112 138958233 680189665 977621178 540771708 541189528 660998930 964380669 31650399 720170347 652018041 713126871 212558830 286951304 389279609 452005575 625472346 902775339 130837326 306705187 753925979 807633933 993643561 996723175 523651496 600739368 614729899 746813972 444281992 481293023 245770672 448698461 678092762 796958032 532403721 812842297 702386013 794672098 998713401 999070180 290379 130521160 507515945 718005338 643442887 658096527 901114513 990953759 196798127 270247030 506969346 983110470 186872846 452719661 232250158 455359546 396757432 647368874 77920009 306813893 757955632 877647934 331705996 967456830 844599892 912813858 899880725 945790412 911236373 968011294 572929488 887005199 692110933 803666038 612546202 636104078 375456387 685941977 90747529 719319477 592448824 596754649 420524524 549567773 402762103 699487613 112466699 618099068 233601752 245807832 958209165 972619158 81731542 719525120 774032949 941046407 823942728 947771987 852188538 863900328 311831436 667045389 889078703 975413434 438250994 482453197 132767541 499484558 845837692 863923232 202671328 805104977 221887582 784614207 818626963 830872231 144615067 406225249 711369478 947276617 592183856 916700038 701707438 955038561 76739336 482258592 378892610 398785144 901808472 916330468 396576721 718707284 256747554 309777099 266275084 596988637 108286403 673601773 989083069 994873564 68568535 788280746 935725120 947153463 419454169 731867564 412286022 833295700 424896894 693394823 317233614 620638073 305907482 908091039 818379674 989894699 832255843 924202266 162536454 354820798 102093348 534319852 443392809 590725490 774327550 800663914 671396257 806782037 343490098 851261285 818820785 992782524 496289477 969658732 480458269 878276058 464211059 932474919 504537972 678035544 625758277 878751670 31914291 116945022 449332284 987838834 897550722 962514060 17827258 175032943 617557649 816724299 321547522 817857687 425543250 566031831 132228756 297278471 863512319 878705638 533905966 724221156 49881557 425135588 709692419 811493358 704143113 729099177 149110440 431936092 665895752 672218497 861104196 913169034 138586583 777409236 240491772 689078008 634676641 916152326 759512798 841705433 282121180 655614100 292663097 989848045 566984073 963721700 468007996 660537493 993279517 993882979 975412676 986970644 309890522 578906332 242359615 404138431 209475275 867557308 893944223 927718771 944545424 985700031 218174311 634635798 501057123 603911579 263781869 287010129 441282281 552277375 660673048 711116629 99752287 853944972 268206068 289882122 379202732 456932233 5574352 94953463 719095247 850072944 41339888 877135464 164501054 536853351 769966522 984533828 114334651 323443811 169469945 531218633 852828756 979374497 865477095 985288456 792273105 857112904 808576318 837597100 756673248 908032389 397764668 532170504 206699320 313289521 586130055 977750173 392094747 535507648 117807508 319626606 22439846 403435692 55771759 235649723 271783261 682469348 522071785 804093822 447709509 778109391 564109322 577154697 732369850 794558219 827053358 839262914 586599808 848466931 888252593 973031892 617187463 771448975 823133692 888801294 502870017 625410104 620754808 629693064 304030759 750615755 981968039 993149006 242346019 720505065 27355617 468325429 406566220 978511590 356448153 572166118 791423509 880166625 990043238 995220183 625432325 720607531 388554849 485445467 330859779 508703536 463203059 974681293 672190182 939595741 769894864 851622029 608259754 637447888 338736572 990153096 192439024 422265525 244842289 329410602 22940311 465734185 717997097 778522143 512181545 607660302 377194793 840872384 339248630 535206486 656847829 740807976 326845954 367559465 673164907 699831148 457336468 968375729 540840978 910746735 329543025 817950206 931274956 952740531 238281514 373562376 110152119 848442438 334234714 510756358 78475443 326516832 883973555 886890457 624924748 687145865 361597839 645095751 854919228 938766881 119966966 601001319 776332805 979325183 380896420 384513270 212879425 508451499 997273867 998210326 408266664 524025316 316727356 605711222 510992389 923043508 32684863 89278646 439399065 708331378 896743086 922501518 106781338 283430540 205396481 906277165 935022460 959538339 458459228 938673912 746632564 881041987 10514725 410636884 569779906 703750704 577252306 789223635 915455153 928494623 734353994 920028702 239110377 557629303 927090747 949068108 442488741 762345330 845109430 920348420 110657902 280691325 186916766 584984589 101268165 740986927 981170438 996007001 444425160 743966784 264166261 592172923 149788242 220556908 243732548 626968773 686428513 938529681 385799088 897927430 883603646 979143774 801739581 960517680 624807983 778410655 499303762 681059498 804409890 856924766 85002140 771028486 198908587 816605796 264008408 562193664 30943139 432346383 600548686 981207503 56236657 540315999 969595368 974494230 864897383 963283586 129297472 388640814 194567268 916417882 777936883 928050843 664194240 863868343 532951847 823098036 719770391 796370190 948060042 998794044 707539542 922954331 21608263 378290024 420811713 495778498 184903089 262021814 945164453 966767263 15219027 983667936 257744277 735017489 567831628 888376538 369155941 708341991 946306064 982899720 497825918 734907701 334618352 486281164 127857533 607250189 311135750 581588885 129598125 354544945 250445102 399731970 505806374 567794721 275092380 653487466 441229863 944820925 240616935 915749574 748276755 850797066 382791439 843410851 307037733 749023147 505740951 587112652 79862981 915767432 660936482 664710145 212850874 243200663 720675787 830817185 26709734 921153298 347844776 759217472 415586384 449325063 787293570 889117861 729192271 798426656 402339888 860309270 120340274 511424310 24806440 669732465 175555019 443873139 486260339 489774732 410069211 975872406 886468372 960844472 238545303 441189719 185302711 590473666 128410585 809642880 33635166 881003961 137393915 421728690 736226679 916559625 229197405 742838479 553333558 744693408 763946692 777076871 333143486 988029833 197653166 636552993 683295658 907294829 390668472 652494574 570521648 812335302 913533883 971326540 882575381 938825196 409945312 851307887 123309405 261632978 862855759 950636932 757561081 824911142 462318328 724827425 779011280 996064799 360422437 673324408 595585441 834097914 68764135 710219959 34685241 155423682 284757295 814314527 65089 162356797 166375465 270536710 196249906 312322502 486904041 673725359 366926726 712092314 589366622 635078418 225397165 753061145 93262237 284996229 727759171 770719688 57173344 633267355 529271004 879115045 922982660 966524434 692268380 705289961 409823168 763416020 207080381 615803198 898596949 970762804 174371384 292185613 210084301 404941340 676146841 776303223 598053562 862090125 964077765 969720025 146424671 250760960 91050141 596912987 584364566 624412229 585266117 795622723 191572974 248199543 679482841 923364771 183820422 333565126 165298421 522080644 784061734 812215907 121220256 595224664 770678115 877183157 376940122 395832061 330998252 713850548 522123570 856119612 926150188 935857441 244960159 862981068 674540138 931067015 271435406 629945126 340827634 472024309 185267631 645774199 181724682 516340164 266115406 806385498 969044176 982816057 40168545 253390817 913262882 942277470 19881040 368224115 912470722 959868999 45162571 680316609 22352389 744554507 417855992 515417767 770418416 849429572 900743949 997100396 726146200 767110913 161383992 179990085 672017046 851203035 116427459 575389023 120596935 511631517 700878143 967130744 307433626 924117471 919857821 981723055 629443626 658302010 924370540 957264957 6982732 276897379 575437619 656114583 313044088 821612887 189478027 707781775 382734486 587437253 751959869 928698728 190921836 837138378 329302352 661535783 717205403 894902236 67773977 375009491 244699494 317053011 694301157 843704438 84071400 556508884 380313431 619892167 128700839 692140080 81684012 656876816 182612477 827472198 330771305 657964092 139896145 446836294 236596141 354199305 134463893 920257883 534469973 546720786 638830419 820525059 202554871 534658454 908305635 993344052 788445187 926470768 610414149 924151425 31257205 942429912 285912991 781087084 339043442 879827585 110182824 356814115 733311928 820128149 853095265 901781684 158396787 611132528 686042167 791423292 742355544 811718283 666877046 739465439 196925227 543109842 152952223 958714717 431629920 445117988 377961512 580513985 26688149 145204891 843140065 978261281 453455680 842490868 449655850 627773900 118416510 553443882 576989948 951268888 311967137 519142757 14516541 997922409 421071125 628325678 131468536 191810857 314565996 339927015 428580777 704640448 180662812 895925964 487905687 537942806 568913152 653733063 838663093 956098311 717845633 978018578 642353573 922448890 905180687 909179914 767273812 837203804 527384205 788476689 472087837 654745083 710555090 723255557 872390114 977114691 317296781 487998227 953356413 969149269 658653812 661153802 77318286 175995441 869498612 999131418 419263638 451593793 559632988 646454581 6297103 256078928 989079715 992648038 956166023 993732881 160203401 928390669 413908730 659788042 996948699 997785624 28728078 833306320 969022491 996441617 312215982 485157101 826078490 998357927 65254790 680633945 452003668 599124130 766679477 885617497 832606718 925765763 938886044 989226763 77103320 686007496 622254154 977928388 385015554 817450811 36191556 327188217 41466707 288523024 427944916 944232418 775992585 839561077 428981328 852400626 498701799 890653660 724221041 959284743 426562391 475088881 314052461 769126177 427468107 527932060 826425620 839206616 264474245 563403790 728981920 917553425 692806638 868547258 840876074 901543360 739497820 755720027 992184279 995659962 14981333 15645679 620465389 969487122 251270802 882459201 43442843 906188074 443509495 618582204 989669341 994596650 410816974 414712801 284678882 889508459 486948284 842674186 163973650 251950961 588691648 938439064 492904889 511211235 101293307 935531333 277580275 332104205 301592408 945167651 384408367 881518920 779759618 928320002 128865683 963404604 714093864 818521136 637759248 774887303 193400120 496287670 602505520 619451772 288068074 817465952 358293157 376385588 864072728 864871560 115076605 474274652 461592648 706985119 331637967 349926940 203204613 700616746 571019933 701110445 813042947 861382354 94497102 397385472 926056178 997833552 410910424 808994593 615757140 919297364 284451000 923395850 814990801 973329568 786875645 913937186 20359403 196947295 822933736 911079061 174112404 542711748 267322320 634093873 408906627 858874190 303913412 575409948 870561389 992575171 855682551 932696595 752210275 798811155 126452924 296723200 525877580 671590078 951909703 957032400 68370936 272062385 74040739 609400624 481442842 910829745 791427937 946413369 770698331 815152004 792564451 958167962 887110247 888900465 863859479 948270131 146177800 438564865 686325113 961596877 357554444 432425512 56793185 431557357 978584575 980881311 900344707 997830383 71419464 613624177 443795278 598843058 565117196 934807251 884987456 888804097 988843545 991008049 290547241 512680687 814963749 940287562 169108607 628378217 170336267 872819258 208637329 393588608 973859935 997349357 584142628 776339978 168446625 410729676 510023543 760521127 730659763 990056209 801779606 942320259 245386697 652971253 74320549 854485125 232245411 855952700 19479135 253022689 653084496 951940326 744308111 957683754 740501901 805922988 747457934 789439284 609765961 769365913 230898614 798225619 147128695 552410596 699691710 750237716 120641102 686398384 561290546 788759906 518165771 603258898 351690771 507934197 773627811 864493211 725349308 855953377 404235625 868885246 127599105 726066879 976034712 986773173 192849764 462780014 790020637 939269165 361584451 405949420 21288987 816481413 333724597 797992196 530312481 844343692 762836233 763288090 600418968 891888143 719653771 832918023 666702698 928585051 617478459 990202665 41027165 257615399 401287393 459371589 483851412 865722379 333876665 648931596 567072800 856626906 314041441 720814144 567255861 789847483 970723209 994714977 36138578 816496332 949559978 972004770 525923960 826926576 512749231 704815695 270966664 471877424 827712703 924915634 461334315 716275852 476425584 820048014 394103867 917507142 115929115 702092724 574927200 598244154 48188915 486623712 183802772 588684793 986458609 997323984 270310466 542641496 284197822 926077586 728751033 820428803 865476072 888750774 213473501 644112560 74633455 256936798 288699195 879916836 373304870 864744857 147903999 956014993 29265314 266070738 922509800 939620806 679158463 918195082 9684857 272259301 393534167 809206600 497834744 655634340 324021700 444933232 983786534 983979907 776673675 849898281 941660366 991317209 846163743 907127399 827402370 870087333 741600093 819477842 905761106 976044990 583618831 965760707 854518797 988874218 881212012 935273430 841879431 858876116 84321114 870852517 537513849 862545158 800637835 955504468 967295110 989414722 695755534 936664009 473055391 689169577 202801187 882265067 520868800 745007387 573011982 623368637 269815070 506694434 897163355 907852303 39711253 150346526 808837440 995268941 786645060 888746498 51346893 800354282 446149397 834251070 351545703 983809209 448104850 884825712 984502544 986644588 96092024 609832817 415503440 693127059 786769446 944808774 32817051 323721386 345533734 556760928 768012583 866160560 802778155 980375102 759186379 811831814 611170802 619404361 50630789 190765724 870002924 890436603 80515591 734745596 510357956 703316490 624916356 972662895 231100015 234749940 568054104 787361267 224241092 851768790 431460633 683041159 773786722 793122885 937924709 996396924 614365921 654601274 487757088 760731028 400093815 913366688 36350686 219997696 249388246 596015209 5677260 998939704 848354402 946974540 443698320 789523959 213237063 869361388 38155066 146810774 323845712 345202642 190232491 735563229 654533542 788880456 799969527 937879266 238343391 740015246 656045318 843618439 654685629 773523354 62928841 994449223 979166855 997166850 194078695 387496892 713636488 999112232 852701979 951858580 128275679 957564357 385486546 463578386 280900395 360146516 463725912 660709981 2370000 430536523 66190977 665520948 990306780 995231091 198348433 824901404 262238891 577615873 124014980 848152320 543639906 853306805 905288924 924453063 10414011 35432405 722885889 860509925 720673994 730562987 168467480 326674112 519672993 565013304 233784023 879086723 939049020 953961106 862738832 944128486 511689701 844166220 389813317 442943891 156536522 949814287 610893325 840032229 701910209 952583086 611996726 636080623 991258364 998239207 326297918 540620142 533813777 662048637 510743729 667129374 983001070 996113512 310321147 870112678 580944124 687250327 972964642 993239367 121398106 145587765 514731326 518411315 165018517 266797565 827236986 946516166 674579719 725139678 665655830 939284307 278219195 599063628 872680558 999344506 402764371 812716770 788830471 970367417 387111884 454255683 579875276 705415343 700305101 983287801 854803112 922122905 249818599 779017416 165877385 897148778 600539472 868589810 990544401 996479801 454755973 558380939 880917190 947986279 853601883 904085055 639632020 798642549 398471335 647513915 21519414 298258158 301913551 962762152 597143175 839050404 432929086 539038880 569197028 913542466 172820245 179005857 237021211 645567902 292411254 408085426 642235915 877557438 921152140 947828962 315065457 950140331 910391186 944209319 555671617 809264277 854905767 919872347 623900239 906656652 290739239 687167467 446548721 987594710 30068514 108692054 977953591 995831818 479599957 679720534 982940321 997619841 667933770 815198188 708011544 818358473 270162667 473639160 387742601 566699308 263006788 634018623 93234654 95763357 963190751 963558626 103783602 205735489 327610529 401787381 458093997 655138756 680720350 734131396 934342551 954812765 907455179 917613391 365699631 809246556 757338799 837241713 365850477 622660639 80537722 354401873 642049882 860321578 644229338 855152023 154439474 451020811 675608329 956355254 37671654 129061216 789590941 840534666 420697488 958842169 255693512 569175088 985672113 993185395 943481162 968984882 605437463 946944478 274634404 605507400 255856156 862588137 810429613 985430272 66715669 371966015 941704077 948163850 816528096 863109174 587499053 990298741 914967334 922686817 309116734 938166650 81411093 379629178 294889643 711813037 639097864 644055807 698101164 817222615 974229731 994888470 792483699 891912895 313646562 451576988 425987562 797854097 987222476 999261701 105759750 718902827 201034357 441450229 648018674 649090475 262828926 347509899 542560155 852491834 702138740 966895301 402967011 692667295 643154471 936730748 234719849 824695243 237204174 360908641 757944629 875624450 914217714 981566217 642736988 879729448 691796708 845389238 951733317 963499477 726328744 993191316 897014727 946546256 598030764 856523843 554020150 884699297 126745262 893938742 667552357 856579456 198759924 278636969 3728928 737845807 651814299 704725602 496915727 570290865 360681544 411973145 635617032 672907524 593581811 843665739 418938918 465173578 392640056 804796940 535386098 697959468 713610239 966995103 413470629 857124345 201552912 392794704 33255146 214343267 507959721 961634079 278951468 403124851 825638076 992798656 309138458 391397743 986117371 987535791 416645259 464586343 39777941 380688256 189569234 745486799 444089251 811406218 436954511 632694644 30949949 118275870 61520170 695925645 275627208 786475977 305983617 515395642 516627128 822074926 893796689 973970831 148143709 213486397 613761824 718210589 381934633 809754951 272729091 785196779 431398342 754921311 158616103 780963164 512981763 862271394 820302521 916341030 725713368 796328210 425465951 601154527 923314552 963591257 484240033 884424420 910718107 978923788 998000799 999241231 232558808 258488798 5501918 122850603 423530096 562101907 625489583 846680173 973091851 982894713 500994026 570904722 953113078 958735718 436135817 490809811 511137847 976859198 983977824 992401196 482868031 882452018 812858455 983722464 577634630 843353004 391117351 463427474 953579862 984622212 96261109 600197094 678437526 910524133 965143048 999105857 910608526 974338359 370218121 385449720 393897862 810246959 919249586 978829929 247068845 289344630 664547564 772786682 793658460 920362396 959057295 973663862 871863178 974076362 617720631 843654095 392376302 418545231 970594955 977533305 610844306 728241742 565090807 595102504 928212669 977231969 413491036 487628170 27017091 703043794 308866708 708400746 347268305 449290561 754749607 849495129 339046952 662529592 964030982 998489595 405372546 991274916 904446971 960137201 574690711 837311737 294594586 603631402 572542323 674303949 941245291 976102184 163325752 288047983 873669511 894284590 430862213 676072264 710101402 915479851 534572219 957808275 53319528 74854999 289316081 428192494 884865117 901689518 896041425 952754980 867106411 998199387 57750376 548238200 648524426 992081246 524313704 870554210 721662968 829754525 789254736 970178261 776561545 981085381 317620340 437691354 170229561 217738929 878337396 984015986 69558228 147312540 176100885 968923034 13194565 42777387 21059902 199358599 668710313 833585659 6194876 947374765 611225979 876617100 376851817 979055899 105045090 840882114 568613471 733413762 533788943 821190922 690261296 849556883 6035258 551306817 308046551 372352999 756068550 872068743 18096691 481704596 447125481 590796425 116165239 917697625 555420320 560611394 709646535 718020224 848142057 883414668 257187792 433269624 421796617 558580922 82595634 321101048 747109251 756199451 79957210 451428689 623933450 700134478 197843842 895124812 957907447 989959200 393922021 959514299 102053711 804189620 462431763 488542367 223211219 412696543 578112386 667409328 571027784 903004943 668437703 740455274 26553331 544409282 115989318 662193847 609637595 794138320 264322475 382122189 372566396 926911425 892148372 936725932 370264461 887849359 624241358 725360196 5817237 95233342 636824811 841609597 899288872 935627262 559306492 850283745 993980386 994028318 531176699 694380636 534821153 747230829 809301627 928510518 866874121 969105692 298073547 597428592 758017301 959724673 628902361 880704893 602805518 797813684 842619503 883301285 830972271 867936074 133142437 589551329 25990767 705026980 145166768 994913964 474435887 705724312 508775943 957674334 898430225 955124062 117631809 528220959 830734547 854463550 877538408 940030313 697166236 738178898 559708060 751901523 820799242 932138507 336245003 352768309 943579301 998212858 19706852 78221546 24528258 117041443 269477196 296960026 430130011 615061355 116850924 456247985 273753676 658322759 390573065 631340262 218013897 882100582 603531371 616254947 233433368 738314058 372611684 498400358 426541207 517276592 554917267 642322338 644800158 871212154 123657118 925574055 942276819 957855997 632596114 976501686 247883884 537039400 714724578 838215109 475558266 873182733 633199015 766812607 228260484 686648275 754648751 896129110 556813367 664934972 414475576 499390328 803008530 961211876 688260181 955898061 681744305 864382920 67064232 968773276 303386464 308155396 673882096 898161973 661312273 868683240 699464964 878362845 716855679 978448645 813392998 983230654 513776979 764369642 832666800 898182917 329144818 957469065 283387132 950100818 863374373 979210345 662802484 685335079 909635259 943670234 363944156 871367643 676802246 874134711 291403599 553510082 315900809 852933927 417211870 417597098 970764319 981420647 43131132 305917120 1379601 818940269 80698247 215366503 773309067 777267837 9347655 656763659 423451630 925546265 409623056 546746219 915786292 958052326 242487001 374247172 709226080 827181191 972794753 985096798 353762199 860447596 142273262 235926827 216699405 854137333 61600222 200167784 277961810 998601430 962145703 971037732 841477354 858009187 90126002 265748956 860786896 963426874 262867158 515255795 446424078 837155146 790958830 951819837 760586913 909992965 978676444 986688337 335927127 985741700 205298024 297353630 920352762 927297747 148435651 754597892 592256850 874318172 893670584 936121723 333946721 765392033 564167200 939007352 13259481 206260677 506419379 609539070 767343050 833799160 918730766 964980937 260825628 496373074 751982523 866652905 324953809 833202705 325395002 814821083 870098951 947655802 63076783 540699979 431123326 744485413 404083453 801201701 705827922 993906906 340783930 545999412 725103772 951719990 563279566 872163836 700444929 779589967 816179513 997899543 398693623 522742855 311241802 654049159 250704820 366610989 950856795 951652720 953623062 988065359 681240939 974177023 730120402 978461255 445665130 801153244 957967408 966421304 709564959 929426240 69514009 356996713 937063914 959299415 73151701 709568534 3480009 849697333 214023520 795327351 367057931 486089645 264532518 975562866 669522885 798887941 785602430 871440703 482576443 650676120 576810968 956780857 942347503 973736588 278725175 603010166 860004643 862535348 809136387 897914970 78187567 837995835 834512534 981655472 43792048 990482158 305125815 564114283 614425238 990626421 88178471 326104830 981941616 995741730 639707270 978623088 102151102 150389145 603877054 617765663 599921134 737130408 44734215 753656536 605552168 937987573 152164771 825165968 424345633 577889944 614823421 887314272 280445783 364473294 973711423 979583477 58614655 783106029 759499698 823581795 7397964 867788004 875558096 937586028 342570195 917462273 908702964 938725876 92202189 904820578 893408210 923243821 841687851 974061300 746690735 947022618 743809710 978273635 212107490 250692974 320805380 849090671 696989723 843313689 568786576 774739918 681152399 889115763 891126166 910121807 827312908 846981468 58216014 818399709 373931393 773244760 10682702 414931106 810296209 918211639 853518505 965146164 638914371 742487767 605450457 834566866 524027038 830689187 482952132 862454719 270442236 654382404 732384182 971277824 998318248 998890208 508659237 803654127 395599621 478414170 795701265 867046526 269752963 918296214 677818845 958566937 963864863 993176783 787139092 924185853 728156965 974004250 917748369 949779273 259363075 610867598 731629560 769404011 287966332 504600858 306441910 422659042 64806280 421176846 727198296 952969334 648756971 732101959 155428017 888722709 410688110 738086180 555271527 562694876 854382068 975934619 732117782 983451702 227306235 654517568 457169173 633258802 314088732 445347063 385112698 690427908 445392580 843580864 83331732 211855007 278239323 668906813 939485928 991312409 280181248 943495912 476434071 730138339 58958315 940894378 9819107 131404608 974193153 992357161 719749894 961974058 399476488 927910823 898424776 985238683 402368168 828830580 14233481 191009910 204329053 478097746 171102369 543823508 534520007 802306032 517812883 978691569 674225329 781053081 529090719 872239521 775895575 935746478 289526225 952579378 499833070 684667693 667549314 937502830 923324515 964342003 150315915 698265803 121014086 457343471 846709154 925160486 982122219 982547249 178442389 287924329 275724731 621517452 281553257 914573142 347456326 592141828 192993667 506825281 409987811 974356904 561327738 997473475 541846440 911281580 270123519 432437323 71363835 296944318 124003605 942714644 841792366 906782614 779825051 945396332 14208382 322867151 880124851 891587340 637986517 815904876 519665791 800074145 376935427 525750302 809338928 817593285 977252333 998116579 737327327 978590216 29635667 496388788 966908735 975381026 633986125 807659276 199664509 766691295 242733299 587784055 307989671 554311122 487080535 741262204 749180569 867597007 167503108 353346308 919221592 976086182 38314066 137747798 287609923 849327985 680225987 796658739 345931378 895097336 381433321 681835278 989699068 997387691 396962808 746504486 673228981 713856410 770117014 907797352 709989773 926325326 604930749 851112014 316805309 510855262 978317448 986132503 325449522 512460893 803046925 857916059 411810949 797452078 264267921 859100642 494521950 801487512 47297531 350217647 359147246 887435299 73349023 913699611 656229824 789179210 494255827 928633088 724657151 959485597 954174475 980133538 410503680 969821663 282406804 940097827 985165949 990794495 512904636 768392830 714774337 776923886 522409795 833046507 816668781 980302373 306902198 332620089 758848135 866562300 752720996 910863230 527277182 531532065 334855368 685341438 868189636 917089189 784793651 980524405 12241759 961124510 571348440 659977670 681387046 847234590 870305709 984036185 393409430 633837830 917096314 930106810 645789661 744849388 387752819 652437289 122147157 778225727 346947087 853809993 331423810 414509367 863480971 943040871 582700129 784979369 322638873 559702906 894385249 959959668 628823040 979281714 642242684 823831172 405604145 497263710 697365597 882205886 156085268 286996290 871246026 943393128 995054117 995875571 312924286 514675367 992028663 997758766 598294523 819399744 793777387 796286901 721435456 841385602 314482162 988122051 86910069 311726727 681424247 799615144 512659312 845237035 406286618 752841500 642152039 741956016 583665044 671086165 993352116 995885124 826921794 864806022 287347651 903323907 534134189 973995711 634705672 968230112 948629739 960166873 192778927 419972906 208912971 424880665 302367607 619967456 909916951 920985000 775036805 988450286 765110257 969782354 196553005 204885655 493019191 677578096 344219499 852170110 766380046 810268342 436144104 630621164 611007519 819637390 715186444 787393995 416664328 496398297 911245055 918511363 823109419 879905459 425204447 818723663 627102590 895886533 166058772 460000319 3329576 191870329 79138727 176608086 118274754 651290633 463793012 985803280 293759410 603808600 118115846 290538207 415585772 935509044 501637477 529984300 741678279 945972899 644366514 958427314 807912085 868853756 960092021 986442168 164635121 491490819 360630065 954529794 816899912 894796986 193777415 462459963 905872944 945068681 191542306 784336778 35745678 899778023 997916934 998500064 341313625 656174773 766928069 985899674 25912656 689806120 72607050 716636768 687537944 933293217 710203724 931580594 870330141 979587675 251389092 836033321 848020046 967153259 991287686 993467704 370001573 440079892 38662442 203845791 263397952 997784380 826073880 971540095 594553592 760939368 820586184 843862489 198128289 350101655 475523166 878073635 657894258 792863674 731816244 906546514 452887211 592731904 813649902 981564058 236190957 245336566 621689572 931177110 824559606 981085740 773521428 948110981 625792461 928664729 668674459 717741983 491092806 538317716 790857306 817144236 663760868 681751486 382687908 702082507 95997505 311559773 352088923 916681399 877000915 906180719 441417962 925057189 6093834 669634376 31412039 929443325 21678187 40164929 225968079 915430348 677304014 804463601 128879000 733304015 384729823 442709274 327215510 790475915 770627693 942351364 327526924 428606686 953734984 963346995 580711007 728080321 629674952 922848516 197489417 654049723 802108698 850974976 388717722 886696370 842552052 886712223 974555192 978135429 79213390 720327061 263142688 810264478 926887822 975447108 942024889 984818445 312628360 490351087 752195938 879300683 127786166 988813645 264202109 617006922 489350667 540827015 749066780 988551923 997975778 998725131 463341262 996114235 255107252 655641111 951167385 988936837 750998793 944117649 666987796 996273804 893400523 971548898 746280136 983077625 391367825 760313424 92411839 117439939 785775404 806171435 40832099 277596343 728986194 786671524 861979636 982490005 541369690 766370349 219917733 889107740 517398713 979849232 324284798 351565110 454002323 785393354 367671058 690343173 791421476 881035089 792837736 912806257 357786186 975020869 901209306 946014744 386060778 680611314 952340992 993581074 305397671 592606359 749442443 802321215 291069178 512979892 913391203 964875708 981490151 984181635 895294167 919634359 163137077 437281384 141629260 874759421 966514565 980221071 412436921 484145703 557378687 770786771 743227036 893106671 185722991 478730134 105125592 874977087 931902769 945779514 790943171 986873405 690657085 946893222 91941722 295593646 321423490 979885799 38281482 544160387 509477664 972085369 746941392 954347862 246514453 645225422 326594545 790569401 866643086 931079230 23913502 578778079 790561996 809088450 432553381 931417438 209247356 713741827 545136167 901633462 563030941 569381860 532700549 809633588 814805002 857464683 535339167 696428079 162733392 890621410 350034740 797678165 869051479 916776665 977566356 989310596 602225183 667905350 5988219 306738977 571213028 670954160 753402020 866943245 702157609 996893779 145860405 950458917 778096524 862504104 710452389 967549263 733201379 797665931 789048700 816659564 328478526 850828226 81115659 307879895 569467191 695116760 578858841 843533594 923791032 968082742 723467980 864415909 508427759 858620476 639474507 973025550 309552171 484777386 294887932 623626015 10789040 138931654 286825744 627259045 594746404 656386558 584178507 945571162 557654245 952747889 506987176 598677719 236581074 462973620 432306148 645995180 490355896 529028013 937033617 966335644 448865072 629200167 273364657 805668068 589555798 797166484 613331655 905808081 843909808 955262821 985716124 996412596 430075943 735486307 715578452 784783941 749319834 949017649 517796197 873726517 924897759 931871674 178917359 994125562 576479767 861621737 241523580 567910496 212247668 524229404 951957832 993544670 766243266 933064232 860096859 940744307 259464646 420077657 862272040 892038209 66638776 769149788 557959592 736514423 579144996 749434315 885846764 933968018 963536350 982002856 55842696 773217261 722959954 881112850 910025746 955628414 455882755 657819724 324940098 515424998 594331233 859045991 882866865 896043298 566711860 929869359 966609957 971299914 482889879 933381256 354369768 355840645 904932192 945011898 766097772 867005654 127225944 391537368 704202335 814304550 549809983 607487979 361847173 963531525 879747759 940504264 314905390 422248427 418002912 801838544 15665628 973582185 623087833 647697884 340817960 773172940 868586755 944443856 388592547 701817389 487853120 526313159 433458076 776323195 117754774 379816393 281918017 426866877 852709824 875193912 332975332 908214220 460587933 843565584 815562467 941838257 757265031 917056076 845961046 942883247 172128110 424216953 996101755 996471365 254386421 562987751 292930829 830692029 159980841 232862247 696416088 822040834 410544039 430846571 468607797 553154851 511520186 662586784 173581566 442561713 848615518 940649380 444083236 819607389 983770102 991082533 674060977 845878650 638423404 705619184 854925120 996306544 367973494 503045552 342576697 727066541 125968173 782511678 107269979 863916885 225614458 515019575 272512974 941017860 505918462 784771417 145216126 675449725 286762536 829770373 107092856 775649644 402389527 514200229 408998667 816455747 586761216 660010144 923406773 965939820 453873619 571893138 561263318 897278925 283792093 656029849 868943360 869998047 331872765 942062535 470764264 622407132 66591798 69051842 852298091 918544312 24141912 925549518 889703378 939544092 744084701 772991000 366593570 792418675 750270953 888790393 675550355 700572651 259080709 341123127 94762467 538279742 991496448 993469939 169921834 852847770 289286091 807978627 47576675 929724696 717296403 955508641 149570929 201642700 74002558 342290319 726080043 832264386 35808614 823812214 166744347 299649636 725718484 837903711 959690651 983052353 330227430 569554033 526150911 981549379 841820221 897558186 623074084 785649408 414684328 551143195 866730746 989916200 499622087 540355332 845752944 985886438 42794198 432973998 13110579 761193926 756034055 951193589 189596259 310035193 974590115 989128127 786741474 930073214 544215179 832488693 387968215 867115623 400760045 401287799 243017333 634115382 309526970 463667446 525085395 623351925 243445323 399001596 162548530 419849159 263301843 604998834 608443514 635034549 310766907 836382971 121793634 216458781 351418685 703958059 330276226 821688051 629142983 740220978 644167644 843036064 636745132 792032190 777947952 838457099 450094418 992624475 682750081 688130451 773444075 838209471 894673211 965839170 720321226 926930155 340578495 792127501 596455199 968013248 610862974 775367227 748781958 902306255 298883140 718260962 548897540 932076956 597804002 971266946 228501537 743254803 663853297 884146868 124416806 710421229 801213940 997992658 743443545 789386184 632700528 968123177 997358041 999071834 900737852 958825011 36814608 735487707 750690402 792050531 113240084 443681734 680533137 973546241 38262078 701703124 310337954 453214099 986083522 993652676 348453486 364007071 115751585 146218532 491866021 550225417 221814894 679697241 843547678 877617781 948577762 977042739 866883698 991242460 378309997 705143529 222870419 400468067 318615566 421934970 592538186 807873418 155591008 698769290 95105738 641151470 3028926 362243543 579535804 745618382 199737889 984141565 513370661 915255968 926589293 975843062 216073685 242489617 276304582 480155331 225325210 708445622 592304565 919108139 687511117 972286473 760014755 899830960 733675550 940727364 345529517 738365680 164329687 864771877 369106486 377634704 789470584 830328341 44075500 904732127 273410834 971279223 732122736 843167620 359675774 563580755 48379220 678731365 904637914 989078463 502771842 954897454 500465792 755371121 891773046 961049477 592900334 835099966 758298759 849802506 543581312 883798037 612384604 616551099 586073237 738069121 626467158 630686854 218812635 470507832 713367272 983969034 413700633 617292318 64117537 535723274 369255736 730847375 488381914 550857359 568503863 653252384 223248972 243097413 387956311 714596620 95417127 819311536 993360584 997507374 423456081 834959373 958289296 977182815 846544892 978299223 949986002 966700038 763905566 771611180 368880734 975229359 595166567 666463478 8095770 721512329 132858188 789178778 280125970 991337825 331058751 522476615 724296943 841631835 764220269 897251363 661513774 742650112 976629125 984289401 638838524 806934320 982685845 988528209 490068885 889984714 187400635 930764456 413951349 416361598 551452619 981603193 819345668 872624816 596107419 746717219 518096334 754204492 175721089 760390425 274310208 721144980 51851517 271318371 835500316 870443122 37886673 965271783 37648791 763518818 840245367 987909727 591236411 967401539 430069285 538866516 370119451 958655199 784235080 942554524 549028348 746462812 135380818 636212873 961459356 984811526 82403977 892582897 385553898 462263124 681728337 711094357 69982963 516188125 672786994 740878194 754023680 827226680 789778086 982156587 969795269 993931286 103370434 662043254 487269599 898822868 746585707 953216934 605734581 940649165 723743480 738473370 682980339 715001870 785269711 955337678 610086901 819832467 215601150 248486464 791242974 960597896 827985747 843671571 299385709 871852829 480528256 727548768 618712719 910036335 722430100 732124388 482843646 852763108 743235638 950045563 185942350 998959134 760214537 794689451 197665077 786668636 483622930 870169923 432516042 802054401 522957449 979625838 86733428 421516514 628916217 914962310 105984187 323584601 208035997 806769106 18388006 553367342 77604506 691280290 406623354 433929732 572414777 675507726 251309885 466388826 206526192 970713876 280935634 860958953 671430405 680737095 260086830 790967728 396118077 424267518 900107697 937040545 910073135 988930097 902012027 967212507 647930384 661607155 332433635 395727875 205303799 600283603 676067783 694950003 657167321 858558822 793294525 946018495 751633888 763635334 198638029 369074470 571116571 862343594 443788896 922184575 769806265 877158770 436692059 482629219 699517887 769882724 840458628 909843227 539950751 920575969 278988159 392033031 381959968 864897378 352442076 968293603 840838153 900931399 843371887 846508113 865935850 923616237 987138376 996293335 275584435 849798981 490207242 717702108 14869564 374292874 312536287 452286367 248703179 543225533 200214737 359441298 137860435 364708849 656232783 955546156 616592292 643192682 690978139 980752626 433430043 550357854 508327343 956396419 802532430 805458390 460493890 813060865 122358852 861613852 642879355 997864159 297651496 737083353 949376578 978644611 741847690 849902845 170700995 972777240 450019491 456318879 244354003 993940180 263564703 608672319 317656814 572618769 671174982 748040421 328494272 715750354 299704534 677457735 514179012 832146775 232305975 850494454 476021570 921110620 82344906 654116678 250445195 854640144 63449359 441955952 537176114 680425394 985276328 998569727 716846430 869957074 287478127 539742340 388967062 820422370 771273016 934732696 664244992 743992643 87868477 423955177 254103229 893419312 306002462 419355868 946480741 975255683 518428146 885245942 795068031 875753383 273068651 749037698 187231908 696775127 401682516 527505129 691769519 891672114 774164272 888741907 221666007 913142715 665166162 864868449 365355918 445804587 406008169 871215046 735290357 774789762 97658802 444491501 539841636 908460953 702735194 770240285 981412907 995287693 93570353 104809586 872479151 942114721 208812522 792985438 947118985 956473716 237972767 753750942 937494338 985821426 713186817 922281706 920927491 965799661 881877311 965293744 398781892 697339274 395135277 961944324 170646644 564915118 523449470 722277351 398068772 566900234 570494336 999363679 516979622 788816273 552754883 947481574 602360871 950298722 446621426 540691316 527073527 895590006 242741280 287869732 433771413 918532827 735966651 777270513 879502603 968058908 252096985 927962993 787913190 875372849 934820989 989690569 528285041 539340495 27217238 616611468 826268400 990813601 754470512 834894021 410101797 565091771 7743748 222090269 262083654 599535431 829667088 903863109 738481210 833543843 23460882 529913090 829997065 842552902 177588222 283312050 936049555 943483455 210895561 582257059 487286721 945182108 774511551 795514696 391052534 766647423 541794303 772236104 581302484 668443975 352594703 834654316 919602336 951839055 534606784 679414721 506337716 732219577 495685524 728010773 349085941 653354635 11321223 439991174 275499230 958984672 146247638 376640756 23850859 785519995 998528333 998907035 567384951 646673703 953061936 989874469 822314527 986541385 152258433 630863299 868366980 869592403 526588309 927579086 669925898 853753334 425232208 528083408 911059061 975780298 938767509 957104669 439241391 522069445 386158532 680392893 829417387 997878039 647591725 844235824 603617783 946666489 544462136 639549007 555481751 612093716 13504750 757060996 397337978 498229194 740022843 798488466 309634926 974781636 222096748 270132651 146366344 982656192 616292804 969208468 806698116 936191393 480468113 728977729 285775368 903484584 82923762 269691216 524636951 558834646 438345578 771029620 208696508 275995314 994685504 998259236 632834074 717774123 645082273 743318475 577982857 776717680 432145302 669939349 10457726 828546174 89598834 962234731 26771542 376097297 163665920 646889788 155555828 512797647 923138464 930265986 294133860 829908210 136508900 866882795 955587004 975567002 393402442 998288249 546720345 840308518 771633849 922916633 552540854 624855937 889404041 988535434 799045171 868112441 787246601 911377477 774285889 779664565 920787053 990315274 679141547 693557960 249030528 900926090 927476765 936855578 201731694 875750596 123057432 972212089 955341431 969229599 813065282 940624858 138400789 717776367 986303186 998366206 913252062 979247781 44820617 582718497 210517111 872218516 54371344 286390116 633427724 765612223 343785427 361678792 49905605 855347004 885817314 918018215 965451638 995131711 194340616 567062406 120348813 259068812 380789278 703213808 835976683 840309456 664510842 789156299 682958335 761373806 651808028 665134613 927613945 960446335 738886306 827287250 348628954 679275984 73344082 89802399 514621641 985625860 909942969 959449618 808247999 864068036 126923175 960080512 463933850 952901728 843915339 951083832 685865477 753616280 885931901 993366080 658019726 967691367 863162971 908373814 574438806 797734290 696522171 812238199 910786878 930411783 416308205 626728005 411118837 641291178 510744752 656009079 344523471 516417953 896450370 912571467 170458542 472915669 117029090 752831428 381833612 658736027 961465035 989277839 382785723 671892052 993133284 995226863 989609645 990803564 767665392 887494395 311084633 356674866 195228965 674256270 177390670 212916204 879602437 918497388 288706568 695463738 308462010 980977690 943793972 972619052 125898984 235337842 521366944 971849540 290627589 314620696 302840822 427996280 573113355 715168778 590283012 706602030 849354529 860164862 41574474 818569897 84592329 658175406 669101370 948865338 758780096 954626188 705542829 814679409 16921995 603155839 283367344 705127188 570075135 637405093 441858537 849716366 613104482 726797633 446877754 646852437 757796717 773486829 853653630 915266936 678327574 993615136 210694895 731278854 166556523 905164097 660480746 941957111 231216131 496142545 294889386 460191035 172704581 571314781 646849203 984379592 668384040 901010920 960642953 984716439 576194145 889193284 838547255 842241127 386883521 707860193 263913152 396766146 304743413 551690874 484016879 909331709 173268003 905651623 373132914 918189588 106265446 127987706 649901595 819501209 878801578 892000617 21582610 623098987 141519570 191841664 91600731 686294423 10739430 528945104 343609163 735475481 812143618 899751225 156196271 886531558 684988516 735768080 969739184 983143140 435547418 687181530 788724721 858261356 124843573 327272990 921940552 956137206 172959086 438336819 280018421 783764972 496646416 713254985 778033767 815154659 692768805 949518569 611731079 713062751 111288416 821702227 691070138 983979320 918873049 939763375 255668901 858680072 695972101 821219360 614375310 831006766 363565077 870575173 874853557 966311876 572014604 611637890 688234232 835312725 156494677 626182305 529802603 850071186 159478976 756102653 586547188 610102102 598269149 832842977 86571692 332462305 525235133 746966823 908299197 920233276 706757069 886361736 366849551 774068394 53037640 669640913 569970307 658247561 221663141 910194566 534498392 585508925 903675108 998909665 131711832 315105591 730273939 967741572 21517229 481003560 618893248 873804747 365418246 425621394 832716403 978389698 952815981 955954611 316636325 939924428 702948559 934455559 126342797 451668092 134301134 808745179 536770518 914700975 414737757 565522112 403975067 834757072 12935874 599285927 862289408 943767788 380347832 968351726 231133458 492888004 428008140 898349163 195832828 298632857 74002741 243747311 494526038 495719717 707495996 759375178 129085198 889404615 932075183 946875758 964910550 970765878 459800774 957710557 731862064 861820651 447078252 638149879 508379587 939995975 514990055 658135986 671133204 908980391 657349314 996788562 883044251 930222109 275474948 718322285 98201572 525481395 281755062 734992743 809218672 847544181 342170157 499581602 960121997 992462647 774498593 883866410 336818158 587401173 906409257 971519828 492210218 935561913 180479365 577213804 301946151 983606109 261289486 998512027 16006729 535128032 508027300 599396948 386193213 548276541 352033388 571719303 740888722 785583429 400477342 636064881 97186094 510813137 156295506 245412184 872714405 896579084 948029956 989706899 403023143 644977599 501124357 564875989 9562961 660421661 509735581 574562874 651189393 798900705 787062057 975222860 64266958 999138446 807034627 970112883 270056178 812389312 877380116 893052526 354270546 938337671 985944312 987911150 686232586 917930121 425473456 430493574 970278896 996139735 925567743 953445728 668842093 784373541 502115584 807218704 8876379 974362967 978364087 979075467 771483288 836797749 591193041 818197585 306907353 918581055 751936670 824551730 814636141 907144584 215503835 562008562 841990028 866381949 549528346 997353075 696790562 808845406 876425127 987626352 202741722 563000351 296914759 705217358 107267325 383314500 96583385 412269486 741050532 843914569 964599221 981650175 356057373 633360654 785389103 848073824 248166658 516413591 449487468 749741027 575049690 702720651 334242872 672684146 304204380 599649686 775802473 922918886 24904660 861945485 89001822 505166818 232465730 239862696 532212202 607682667 992050122 997979502 636783678 908112123 910243547 952747136 263076711 638102360 687983280 978090549 339301402 753216818 438424319 793919302 365023031 496909725 811864485 988873051 77980800 453279764 552953804 764155178 528339322 688457145 601813085 893323089 688545561 781130805 834738154 909981119 258861106 310469173 631292840 894785825 766570716 962940736 767706683 876978711 492926975 908433208 438476410 914329171 645267492 845638222 784162803 903000494 584892447 799814183 688208519 976788214 57078837 925326276 587495363 803937760 935314193 990564674 790047515 870191868 682426407 964731350 886089490 979890472 680692390 849165823 451967996 608032096 437129484 650832159 344405087 915641206 158683042 986660620 554569562 614512447 390203255 511233451 525264657 668337411 868813205 966687594 808801501 833097658 20191079 392973722 480585004 945125145 587749459 630266308 188490128 308677073 93720679 134451294 607710442 812873161 990126808 991046492 743682400 998186326 93591482 739641705 224254546 391582369 647613034 999333555 856545142 931547415 806653183 917620408 591082456 986953739 22447488 302809137 841673320 877390911 840897429 845455662 309409401 933394235 110567955 548610550 583964540 810215670 944163754 988337685 34876771 734573098 674076533 873761705 879111410 956554900 846970006 949530763 159228400 619069299 19837166 772921817 122030051 965445879 317616903 574695994 420394519 617423793 958004332 997696156 834130461 850540539 890423543 999352243 989346950 996130254 939951993 983406980 337036618 482329533 789151623 875854625 137271623 145859750 13276246 763406587 549247919 593719574 621934682 951028374 218370557 955894875 89094855 978760337 868139576 899150259 704397335 754520556 810491974 979719557 626229916 875115758 433578968 898691927 824647396 941042284 202473725 431898253 174690825 833827474 820322080 872906888 216952248 457120816 319750582 355722272 548306788 835654973 554314496 921393852 16042469 147247793 180943029 698116527 876443081 928928461 830139913 968572470 1536917 938619468 190265974 885581799 456003917 969543370 849198835 896047433 538819593 896180249 578620514 596175197 45585103 276914530 200201362 664259205 497860101 800336324 659255298 748268770 19841522 564342283 994303375 997421964 388154051 564066425 348612765 511738969 904404223 912276023 898796869 940307471 826224819 974435766 620622938 864326476 709505907 796612122 716753295 814617757 511711060 991472361 396104711 609368570 66061371 529272635 983466974 989582459 700247854 833182769 437164566 487781746 694019645 706122770 895544965 924060525 5973416 949485693 486755642 600425253 680242615 984898647 337655421 847726749 984729863 992124316 284719302 473353726 6668867 617717700 390751738 513578340 951197975 954245730 677601774 998106204 631817102 820426718 113037898 394331105 362523981 710490435 18573960 919334169 996297004 997140452 317455897 815201763 90088750 816241289 76251324 297677579 158483812 386798138 716411169 888554099 263242030 391879030 922507474 997053131 931244474 965953638 573333992 767569725 920170566 980420118 174185238 602741213 537177195 945194848 645979627 738755700 255764039 612173716 271382840 342546903 423486767 941213307 624086079 808095285 135617903 276103119 840211906 905308100 240917688 307736731 2171341 966398587 969955313 986357568 887359842 948730743 214670325 564545845 956451004 967514607 708896438 830726299 989809244 997905481 770213432 902740987 429416459 968562313 727226742 846992210 378707587 810486541 199337988 283484583 741145313 972921869 216883622 633732327 885827886 888939328 837763357 977697262 439200098 769057890 60406318 449930504 112139680 583065536 15823162 234523661 365413719 594587239 14311489 864533393 596635883 680503294 180669607 830629207 787841148 848626706 550991429 611233897 614281825 646108520 301575865 695241850 416075231 559687489 864365295 936717065 745701690 974173260 698445340 744104537 656069251 823040582 214762257 283628991 53055517 377181739 174051438 759083737 585743404 858146180 80388019 268282607 878263021 978047600 392483810 688933381 415549032 444080166 61238938 274888358 393512083 714559457 484838578 701751386 971535383 993391387 6716385 946383699 242933790 282465508 251838676 524927933 132472376 305567159 557312656 776288337 52330666 858805384 711960556 779899310 850732507 992688971 20318706 572732633 16055696 627123491 691915742 815810144 198789511 266857945 657656810 799576601 356846792 836962509 709665646 864186676 969225350 971827163 398076306 805917004 362902987 658906897 916251128 974773381 736222820 783527048 29315645 375182501 30942427 380314816 476835443 730357289 692162581 859340607 332506441 584105628 587274365 648945352 396497540 858677913 150109138 746291399 885917196 892418884 309010007 704758443 18689532 229337334 28597352 178020157 676543758 778197783 703844253 987580324 79704595 643036760 33906769 903435082 211439941 293859815 451750494 930702312 741670253 850234332 418355054 641129496 38190801 998186154 531161571 988912841 406530625 791373643 302711191 943636204 338039026 353391674 670101256 986769566 718726434 745199940 697667792 704670478 301804143 715479833 391746727 936301621 21418189 186080278 605450796 827288291 48272680 63904278 718705583 801376900 416642100 564093785 567679137 861062529 24875443 969996620 187934568 396780179 440704338 573488300 623234305 935510283 365226490 477920768 273688320 450305345 187694224 393849075 97797286 434810272 25018547 558941306 713426367 747871323 663081249 703848770 559275536 748965674 761351973 933609696 82276234 818593784 152209438 600281577 686438247 739551340 592766074 635394200 574339901 713329207 503603907 955107453 552316513 730468772 681912096 823708699 998962144 999173442 160130625 491890822 189795966 865379843 560399438 905517040 970350414 975202544 103784389 538086795 652507507 786215318 710431855 903204902 972686580 983660853 177997914 603505607 383443533 748410365 62044277 357511826 304126750 904778895 595052370 775067535 74257566 964193632 855855175 989101776 218278236 830951627 781210150 902579813 541276962 787323533 287231823 772387374 609363340 610787611 659846909 895844420 146713417 392325101 622005373 947578905 841438038 857107710 256175228 899283895 391990564 854829058 365401925 881221063 469607321 984332437 562362919 645068404 562104302 978753979 75608727 699147563 278533664 309500773 687218291 932472620 543870050 562887703 642705175 784461053 177090305 266694805 29633256 495514920 852862891 957246713 936085979 945690561 173342743 439524272 683223747 790133298 510318191 840616390 109544900 581310619 905469066 964112081 798858673 987486494 634672484 852306433 955848263 972561880 355443198 840399700 91537329 212918509 405247205 933072633 689710172 850638813 97006441 297214923 167027930 594517674 586790848 779682306 996114913 997219011 953007727 987160745 85256903 160478435 374631231 618671465 727427406 885270762 620691462 623043706 271823262 394185817 668525353 854574543 68447510 697787952 413938980 444266011 614898991 752152802 565263385 748248207 114162939 379936443 737667007 888214575 742586204 943440944 911581839 934181468 742960253 926057068 952313893 973658504 402999542 984374254 888484173 985215011 521839976 980990533 701767861 861048350 214471760 990728267 606393102 908509255 386540999 594164212 875610731 995359922 842851136 907068546 374762208 742071666 22687607 564339461 131687588 972921883 541153070 868726080 496279254 802977419 910713137 965986684 976636177 998339788 794823000 895638916 551653637 557422010 630929354 728936531 758963779 857122570 841996835 951902979 64258352 847212832 553339712 800335875 428040474 943485588 414894358 717737452 6779376 249425415 19693499 616323417 432722067 867533634 259514218 309364934 587589556 645696626 120330163 923168005 111539728 522009489 360686926 712439025 354582126 812005830 980021559 994357953 44212718 901347307 480391716 709476017 870346748 897625289 556780838 850921193 784603259 896718413 9839597 659531250 967147932 985781979 811208769 864270398 848888742 857065573 359398018 930515459 653305828 914542011 341255168 999108207 690099281 872453952 899824426 957534317 912639207 967906736 706340998 760394641 451924698 936715856 828466766 993489161 762703458 994551639 132003067 585782235 684516429 743143377 956326486 998539724 226021380 866535034 912245955 967085212 906013084 975809329 463714445 894658084 856358320 986741935 580349522 645134399 413560953 679327810 249815382 783815540 811518614 962192097 81553118 237936671 129836978 281163932 108007834 297816360 819441870 901926364 394014847 427971762 545521699 839107616 636399492 848029893 629160892 736764437 894277159 916030151 786491357 803756801 117560212 930391548 742347858 967675233 679274166 938908090 514022605 811332433 237487661 693218367 591222313 970974503 820688715 887636860 944289025 977251814 828054112 977761725 774563944 913257129 566310533 620358662 831814536 920887479 11747774 646207288 740832105 886738773 967561033 997645769 902057093 998776632 711932984 979649159 814692118 904422696 697740118 756168770 686277427 922253015 274640792 422731059 999098705 999232775 399455474 815448103 55691915 756134969 996162688 996944641 324461734 484606017 382565981 464096885 410806891 634401205 220608364 542915996 666949723 688004981 210056111 550926752 234583876 437172978 457102757 798171405 307223153 691196025 161230778 771951011 308268305 947142841 405285103 723094004 446462198 600208522 722527847 980088721 95009788 869504491 207121915 238364398 247977821 788252345 53349433 827348492 256104807 958847946 227411462 802128492 152278666 184588190 482567238 679320219 664842619 755043669 247274819 952239248 662309522 930693920 438636582 873967537 501394827 549813171 663390077 670295654 48078546 685695146 681724044 824447978 363468485 814006717 58650306 583083643 139484205 762764677 347796581 395279778 416777708 521889718 312981630 975077657 607660961 915009022 652043097 842489209 530412838 612119762 749061355 900094573 528280336 952809341 189287904 712245657 675933804 680236702 476080017 552256592 448011384 673497453 356601835 569464808 56248061 283064110 102428739 950485550 13148493 372303767 334746601 936445993 58189179 883197387 37325561 358293076 718114097 789001876 281007596 986031398 110486447 679089937 802731269 954469545 959700270 972626233 691710721 967916291 799876904 864897462 940124593 978236243 650848546 960620371 349073784 941683970 324086163 828092916 514218274 688776794 927119218 973663366 431462300 555848016 100405769 410938772 668207033 829589500 139535907 173576818 685461920 913158906 262535630 503234751 531755962 558965045 549754363 903484794 420473438 993383163 278300887 619887252 557275479 742448126 24803834 185480957 844714005 985849396 597788366 932994870 253999728 688829123 553436629 560367663 475069818 512808536 580515928 787266582 256496357 397171041 126028295 299355060 623067489 707413288 521606205 558792037 332879843 979570997 279686894 436248678 651341100 693134058 816429513 860957491 519622080 541803125 367203160 688490342 271081834 551812779 774277928 969151989 782884162 936006063 316487890 528455912 784532122 964463787 48496222 153641536 543164462 961738501 911013455 992580555 189561942 446258054 90900882 868473661 558247027 577433938 64935641 422578849 777521224 970818008 424194155 784643961 812436182 841235188 749181324 844701450 442627063 911557443 328907453 576349891 951572337 958157729 655350162 793074766 698881192 833788325 534870283 856910037 702631938 723894121 526642636 827280238 596433192 776295462 555513416 668450652 96155649 237631883 863717623 983806283 569532265 782392435 590195596 788906052 928329337 987099467 426250411 672558142 853034290 986211855 191293909 755675800 246893004 744251144 491412307 628849320 646987562 884439590 81510120 665644919 677480924 684258036 343141400 615963971 817571619 925429325 549145098 906472581 179471006 315808013 551896728 720859398 436284107 926823632 652000075 897334600 970545104 992583677 126922410 938899276 831014879 862027144 580878840 626168676 943802146 973487220 851935696 977121324 527492489 824554122 312197154 974681511 401108787 587031150 508176733 818486398 479654587 843928029 794263344 808339386 541274743 943654832 855737637 990686378 599882312 812702200 166784008 185727732 317785442 909557914 997791889 997965777 487433402 840522328 490987368 806349429 226422926 682654958 265800399 675306559 732129236 922489306 276142268 282309398 851213201 878657170 710965847 852586724 943696716 991111036 147920007 722078077 593844199 638359602 185970753 737169691 596511887 952981912 223655727 414793604 665289791 757027863 907130397 922795256 730934332 958234335 891900897 984883950 871713486 874714617 698745626 724606828 931528674 962453711 112767595 625956047 713594462 764944743 152087416 314054429 197240576 377750431 653162464 938137615 536221969 986636205 753181254 950860610 186896464 996171751 39414219 624195061 352469575 952089488 542975090 982289858 851737523 877373296 739800467 803364816 507810158 899456459 902107254 960061647 278055919 362955287 110662482 294857874 565899595 971262216 774262630 889229212 966837047 984470589 850219865 992969584 708636365 934946523 498010289 885374605 549941770 783272680 995971777 996669308 582577064 738564481 876664449 942744270 524527890 561953334 786964347 908587032 885354869 982781015 220649561 873464697 246279149 921659818 537184947 948562887 432369035 743168637 726694597 744233006 816495434 909726337 195463728 763519705 682219264 712731855 546073784 670142734 889540784 893062585 565521870 595152751 65674606 378253993 669127250 926967223 209806526 731507713 695794334 828912438 604667875 778122522 566245009 888052462 758753828 840109055 89858288 180819542 645781998 833592315 765645761 973863465 515233414 990079794 590370742 968348042 419128654 458920511 639825893 769169683 837200146 892596653 303313202 581306120 766699926 973097395 612774505 616762836 157777758 930165418 580702993 762282899 444983034 801501790 328935308 744028767 274528828 693381594 649715729 702172539 161221932 358865001 978148419 982104911 613256804 934875095 616870493 671539747 181041466 241405559 821222796 929406597 96180533 564102896 629860264 864057948 157421529 429321413 158156634 928644139 599274443 673207138 784664479 838690294 810358365 870450187 441153668 482928000 352154335 821508966 950873310 975862893 69772821 441056964 984700645 995912949 97465228 484463496 226086482 526216564 919089836 949649630 406961014 887581787 97368864 718062180 441275789 857795862 158159714 525758710 304639787 862638122 293369917 813177186 3035530 103269789 87139270 150576968 739535908 797763460 900566642 965691863 167673992 509850483 959981127 996139835 642718802 981879216 237349328 919928986 250972401 685202543 116004860 929641702 659780277 940389363 87251076 190618527 466915954 584065800 405240457 968881113 962979468 996875723 951276587 985751244 238285376 400110199 972447241 981655666 621474885 788888450 868293597 886067895 531845035 890542896 311836310 537038219 566538468 584385058 713839481 944409651 494221901 761017849 478773238 590586704 712262544 907295525 477261688 594311326 667045085 819678242 788117562 831858324 315502550 384546560 663273894 857814825 512379187 949263777 113283098 848452635 397975417 783925340 612633772 979911536 144639330 936519923 998440304 999260967 892585162 927121108 784402002 950152177 754599452 906578278 907354360 961242951 332033375 612222934 405640723 414517215 122236735 996525756 329936027 894535587 792919004 897489100 945666450 980815539 749911208 985128960 623089779 970216940 57148989 599422596 598436892 890266714 825198148 964526773 27751979 725626798 634805131 868880462 604778985 698528322 238503290 457948005 546935010 643280030 883721151 998130140 350458855 919654751 790082372 993748350 150621790 566318437 935185753 994992605 806055408 998889356 477319402 515356139 388619340 715385947 248466482 616050346 62891753 731274752 704074812 798391158 450650624 854366513 377963381 415818609 847102277 947970122 685354438 959396909 162580825 670412315 42164902 554449387 906717428 997925674 492415441 585319286 801140245 912375701 497601757 867353154 222780707 910617034 807582232 826899395 179235123 558438965 875888490 972626893 818364241 968487991 933302532 993997432 107826138 987403866 32436700 178404505 183986154 223456968 852498801 996126523 858996499 931809176 897730748 986638378 505032492 914068059 875714810 959123627 310634438 425077113 189587743 216859116 931282079 962057235 41139150 569247929 342815057 729095974 643549201 946518391 130212828 898424385 107472769 204285093 155649952 771437425 650796584 767335438 226965203 459864097 737391434 780808170 223085722 579461293 686554046 869995023 749332682 996015686 639866406 938351659 913974562 944955814 566344892 952487824 190051703 710787112 165979214 237657790 985471866 991353427 592347090 769724588 861992886 869818040 750288934 782978565 30279906 461345687 107624053 529119675 823665379 985428825 194843211 892450337 189381305 749365508 3245562 359966164 443637866 955155305 800847176 979906493 700262473 942546909 274072008 701087034 675994051 926086457 205176978 932213437 750904937 928246476 863869113 889105492 477336676 636559748 543729284 872799529 509766501 674209996 717138368 985668135 895660521 918877237 365451467 845972796 109820587 153011254 924750297 943151980 746269969 945298486 88262512 930538850 612161639 715992801 989966053 993888958 457918197 666161999 273367420 967620081 152786030 288102398 891329225 918792863 603980410 961044345 453424917 750894305 916297711 961391086 216953699 435479697 929831472 932589685 900186200 950819171 546059307 734455951 952635218 955663221 500763155 628803435 148190685 628832482 13274333 247362711 606975803 946589872 421301484 968581562 32069374 847904072 649232892 896202449 243252566 853340837 471273565 499086338 717751951 801434432 70186550 215266683 781223693 894561553 593582084 725907114 110122998 568780245 111432472 649362573 375442164 492828286 76962511 417889074 17219403 154330181 901351485 912640656 491033956 797746532 204946526 713482465 301250125 690192609 111780721 420173208 667009640 876122170 759981202 781768750 35124564 530066321 847800956 930962258 623340084 731109069 763530228 839729328 737280441 843544179 527247950 575226997 639832303 775645353 608451873 796337441 734142576 779458326 272200811 364975170 71212828 445193560 477032076 782019193 969026300 997313131 873306710 912547785 383413122 486306279 748788205 985671780 137419783 788944705 340751376 976357902 434499217 935267956 56068503 332306417 699845818 820786502 629196793 700776375 392416273 471792696 797479630 825250082 444268213 890133248 981612687 995736999 490435671 696873050 89976955 567544681 580708879 718202792 700543930 704908737 788193801 809293197 130374981 493086345 92197423 515287859 143623182 771064914 611673691 693491805 830126713 910492392 843474011 914901937 711029063 788755119 663263444 914117381 428710468 712146392 307815520 844443465 673369579 838930932 855206842 858727705 808247872 915404746 256123507 452018383 6455335 655849637 667450660 792536725 429813008 530057192 95184877 891470193 39363390 671303373 19413371 829200043 389550736 722171138 465492247 885675111 255943397 834064636 820029068 954565636 223129852 407103652 558629134 587180200 477907600 754085105 860744654 986394699 248992788 360043366 626663874 925065537 827883557 958175008 5054730 963452225 158900961 437738712 438755512 515065608 395949954 709737126 943754941 952949789 224965485 240849793 798769913 900117082 607043033 978244436 733435048 810980473 423147136 754650627 824698612 940193042 379694615 410909613 873140487 909729213 666221269 994377563 3924419 621429839 265821405 586317866 870465679 889131034 327181506 528847185 702959962 897309250 372524396 471323615 478868470 539181352 37158510 931234466 530815274 681560337 36339874 813441342 201061882 563177083 174415366 368904250 425147398 960514029 414551303 545529757 282601696 326041104 187004235 720400719 327485558 986947119 629166800 692046426 576586784 675327732 933908966 941354494 242625280 738112528 675107956 828510520 994583874 995589458 378671240 838819675 762008425 839888744 807330981 954965021 304231193 345758910 51997602 941540183 251538627 684301393 507460989 647357015 413090610 491193410 646389780 922735073 231787970 478043371 760047214 778575907 330118828 607059762 436896404 542491287 682598059 765176975 749376563 868521686 600764780 994733481 972738990 980054269 727983484 819263989 719059578 847756942 41826865 622534220 703237006 707969357 852486609 880397955 318180820 978396384 554636785 806931322 817591428 923072982 84659365 153621166 932022291 938720937 966966694 978878976 582943020 818652085 427330500 678208178 358570236 773136841 988709085 995652279 901683336 991574285 911128057 994204484 535925324 757327895 628796414 896049002 666792964 727011227 507737734 742287382 851281103 889536819 522132973 916281783 533346983 592090334 98914415 688248140 829361390 970403389 393045598 945410206 279956531 752128745 164834760 673510337 561147872 593103688 520921590 949571880 314191670 773020224 471021196 811284469 898921973 939266078 12921541 519868757 341424684 979289030 549911893 911527197 675259416 736420674 54153839 268860504 300785849 742542228 506714499 684960041 305148023 661799378 953727082 968194682 62932591 251075429 402888998 521183237 807986242 888396936 143511694 752803683 838072288 982647018 667683833 818385619 142085035 876326408 565741235 808957335 164607178 176866058 102353596 883678872 902944019 944226646 268704870 486372442 917060349 969734158 260533799 644332935 621813841 657056942 186770753 623075621 718269082 996569209 746106659 877854192 880047589 910856864 794411437 865513252 796306112 867722914 19664531 267120943 875809588 900265512 889357529 960567122 295206132 999080563 679656151 914788497 797760650 817997470 660609874 798489437 394691895 566641456 172200982 246275989 736872620 798397327 370755218 752366323 36980846 342886382 478757250 599394742 586692767 900908048 899320817 908679245 170795559 456029500 38631097 223518493 658554666 699828285 249214245 251338087 125389633 195847628 370154288 777818653 349336895 533928364 44911888 752673409 529897342 782569298 210453755 404269605 57657717 748240884 16934305 222020816 983384197 985942417 970599950 995404759 56783175 247761070 437518577 537862762 442583450 730426487 697345190 954437619 415717441 754366423 218333375 492519239 6726214 128369265 679540473 762896663 337622516 561395036 642485436 894210723 448172702 793493245 584779241 763395200 569459886 893385929 933727408 947036141 279932299 922701001 134046820 179221721 346143378 473793660 919267221 933410287 274343474 465073584 604302305 876571191 468856864 937752400 129317443 403410431 701766771 877631626 118729102 676576430 171303288 421132704 875132965 875704272 153484640 312733618 399081571 665930531 746899541 787009995 98321612 256261202 479674354 609289930 134643984 844448599 226301308 841252154 146501370 302944398 68649804 400934515 45224326 303452288 358402250 936723816 373442981 606035382 554165320 875662026 808075330 984622814 241479864 854682230 797943634 835680692 488424731 680113116 164721493 983302579 336621667 634308243 482736152 708492730 752713519 824832049 258513023 405166856 640356800 748420617 967796811 994032751 401585080 987314810 562789907 936581315 513310043 764604723 570335044 760542894 183072815 609823033 694897776 880150596 964139056 969879742 364480175 719635996 493625950 802715957 942902672 968050959 26922841 458783716 696110278 942797148 882058560 934245680 752079480 931174383 668228931 933227446 973225788 986601780 114377794 823550576 733240198 860473236 769898068 865824362 856818839 948408708 105391408 472692971 660701010 690971412 565544255 889308413 664943122 778248602 681682073 781700550 950191179 950704786 500181019 547214797 76224984 285098180 634623298 894243626 307241831 890192365 479947531 811566269 801146513 893648558 152271071 287621076 922703669 932196871 922850569 981567044 40544528 944462705 870032524 961774429 638584393 788068835 341521083 640369871 716271716 737697806 637205449 771836850 43946500 940217317 402145046 543561235 456419279 667001907 431211351 583374743 398437787 559016945 240439320 434169239 672876374 769402518 667175257 697138914 298005637 893046862 326765798 342009186 440685635 672508979 720173106 883246640 401364895 611194570 100190074 915812694 70703058 923879596 215099383 607950665 717758251 930271854 883141535 957600590 316035997 338147084 938985433 947013461 657951308 737296785 862317877 953943722 500573042 505840633 749185390 769793282 395547221 758527249 930164452 994260844 785326654 966728789 630720053 696273171 507008421 709853574 315268509 586501361 869588801 917923649 584499186 777191446 947221391 957129263 649155694 943771480 916289887 967316280 98876571 523043355 647036160 901832729 355962640 727771865 724001574 922031003 846828869 948120059 115044620 949315609 418470893 776413327 698226160 894341787 435951767 693835508 73177593 259177697 94756668 338009733 45094087 457666697 31267887 416136058 127053878 739350062 395742042 622306626 405282677 807989454 72251248 74132804 45465095 530648194 256714641 724648919 321113584 504584553 286180153 752201651 623032877 707346154 252144613 484369010 734849344 735926828 404336336 631744180 489468921 930337122 965214982 966321715 925294847 927614463 357317426 996172666 178737717 806219361 424325039 565555008 637022717 654344996 596209994 663588485 731051318 838500744 883355647 986146354 262707102 995476108 167706836 720661145 843263164 939471835 145399189 723928970 356728628 459721892 61485011 112300316 536180454 886768674 283572179 794304003 684224745 987370208 94100043 703466640 41646186 271105700 16563841 658183423 763853156 804688443 263719222 708811701 174564388 724136130 692718793 832821622 178252905 241794983 162481892 991661730 935136360 976264278 972934959 975180854 556005804 622099923 129113739 217862675 775497066 911940714 436858812 879003940 254359582 770116893 352426835 959539646 479022517 854868536 922475522 955518618 321417120 567339781 705471998 863206555 219988742 893024968 491305832 516646448 257008656 992042241 104214760 968351195 760763268 816349253 338007505 947446701 264709442 996609003 881925303 997912150 830341446 835456541 924300746 977289439 31950619 727652912 131879867 769704379 269812375 333122027 254952591 917759174 760193433 780818728 936572225 958694378 71413454 976930168 316120788 380835683 797216039 964224110 774735110 950261875 472427663 607115637 527770272 994366139 526835589 955467179 329106685 573946594 61534076 449941030 483617643 939522175 986286669 996294668 345305728 512872170 121396157 223748752 658078073 977320709 286178554 730819602 263812250 564219990 857389831 962581118 706304039 932659904 420193459 844063333 88164151 237653104 734344329 950753047 252025367 470486971 725312074 740644946 43096560 404545814 167586132 350461839 782499127 820266941 376049325 782961063 751540314 865857981 49012237 605249422 451570178 745655043 150284738 942757403 821155536 888899883 785993987 847484231 117981017 822186833 54505714 263372918 235419920 552383943 322354445 921985859 115254597 689340202 724955722 796055012 218310640 487588490 168980692 729860950 932557548 970756853 780978027 978799874 235947976 255940490 452965000 751524936 53526591 628128847 237872445 802991292 913037797 926037634 973963704 990459182 129796390 250872229 948410345 996100774 409887723 645413179 250135429 928959903 229088568 747400238 495628053 519160797 910190317 913391289 72123641 231929389 756295912 944426922 163665505 742385531 63186318 838929079 364301265 740804225 612755780 789823824 467678982 899255930 770850439 920256546 18276900 950990266 524312594 738660957 550914991 594609276 182539005 800084943 292001209 427928251 629608677 635952415 860167220 976513422 677162894 719494323 624312529 968625077 892359632 897391677 317740682 974475514 777990744 870539250 54691178 408797848 16323261 760468351 749650166 762987539 658220625 924250649 206936404 642780550 488282801 591677042 297779485 982118546 180204474 564369268 898713427 901218354 52166504 112822556 207664254 377516555 664571876 947491712 19630356 268481352 483727145 808659193 37068404 873259983 962259059 992403721 236061222 291859042 862867052 885394750 205100836 932536947 45058077 438582625 400281903 996020074 484302566 689506141 833157130 996532560 941207515 950013954 171404277 886033712 337411730 363620677 756319910 875687463 257130768 514148050 645484822 727830487 850357816 860563889 862483840 976863538 58614961 409201120 675828220 884004355 642688067 844831430 749104964 879571215 517972312 690629219 413784585 874503695 268506853 595305536 218450467 942157733 566246580 849979305 421006663 523584905 580192889 850699166 834433268 975263948 383454751 543821418 317561949 882091834 480415118 575838153 306656414 486851140 81035946 842657445 233947002 458169499 727479299 962230485 269987223 615332859 105425108 313079079 143493835 688119521 742110420 934251624 427117657 669613646 382328654 624271524 671461810 785189162 636471546 793734836 188393172 528756875 967313308 992737113 475057010 900163657 946100333 994271580 909844053 984886805 612297031 840281149 9587074 380053097 128305976 713261074 549686352 869233127 720610555 787930151 350718524 523165011 696584539 781675651 377297425 525848338 772124610 787564122 955016693 982297615 250462258 877317841 584265741 853244325 800208967 807061717 350423205 711521922 588894871 924783044 367705547 952162430 933876618 942129857 395591152 933168546 337935220 811446991 662134058 873620434 783501891 878585335 348920574 444435437 8871688 512420623 47572472 382695325 815696716 967792252 283434110 313130392 584055222 886392050 949222796 966587980 545910902 753950039 355748524 616837678 730729804 754464922 407927524 520021372 503531473 722316912 872342382 880088718 269567863 659835435 15608184 19788327 636905372 883901786 26641460 88930564 652868610 874558570 556033968 614613764 913903953 974097767 170266727 776420864 204428827 488753379 270852710 418214506 448979029 931509450 113383693 200717056 955261419 979421816 171030580 355985273 6582339 613491933 343850535 820523384 850976746 879140951 232408549 955338830 459363582 693408367 582432169 805724140 487971441 517787392 490404948 965705805 761877652 838189782 992179750 995870196 24920829 914735696 678099947 725290628 774902029 894243546 342471755 617198134 248739735 647338035 252506439 768521336 34128855 182846861 373498734 769719640 110040354 209767388 370870329 666746563 432655812 585559363 416318443 540821680 280578528 780854325 883060754 887276453 78386535 596108897 682550938 974401356 578918126 694846888 386172801 854205701 922141889 994718846 234902788 607063560 322602938 593626035 234800303 736170095 165676201 999255540 923414572 953763297 302037296 497725311 381114933 663027951 137225403 431822980 915379287 970180437 589492728 697176366 148255218 224278890 144733846 700654781 927942572 945188624 980912057 981321932 159720163 849948125 425347554 708658091 739559355 985406233 763436906 787293027 200583215 594631144 460442182 785511750 923739544 991759022 264357376 786121089 973060696 983410935 995819284 998930361 151210091 924185094 421636993 623748064 574186534 988976709 715182114 863815125 806763509 880364459 343850875 584360968 704327081 789923852 688617990 958966452 386281388 775310347 883160953 971826987 21429073 840956835 420667723 749863634 263568863 879265747 506255924 553820409 261942859 308888905 420713956 655653071 690124452 927084143 452694518 883298024 644207975 926149122 660437654 722734009 256199742 325718490 498110413 666038925 61359098 679863319 50973328 747084944 53440919 204984435 41833242 763948931 715144465 774556036 948161152 966777425 310408009 549036270 757764729 840471979 25216999 547670178 19773193 423637492 433054998 950794785 274358403 699406456 337888051 680689465 440805608 555568714 303675521 821214341 348318293 487009470 220148532 386155572 237398301 284730122 596593915 952381557 44224619 70422748 771594822 815249982 107566700 272068454 37228326 849884502 262453891 661907038 812643591 900490694 603742631 722571970 941865523 988756057 34770913 172671593 174270001 574278060 824915759 876290756 663486837 698023683 298184817 714530778 497239558 915928553 134251729 334469410 437669950 997851344 248349895 343379757 147795602 834496331 176337513 762367525 69356552 750500725 743135590 923786309 309517812 523882845 737647069 799791470 477258060 728189013 663881397 961943683 611184750 918193826 600510528 864698045 477635609 976544693 824573465 888921013 952413898 996263736 330671874 401863124 671838767 938332682 264566273 962625059 866750635 992735848 105427363 735020918 420831807 818629587 122841679 289606722 249844078 607788488 352421668 694799014 755081928 861908136 708609511 929798416 520753972 729818281 709922408 856339561 787387009 858610336 194400670 746869797 2982573 36676415 126755582 700765642 30906552 400867680 59599505 864359807 446274307 880409770 422324036 867882538 96363497 962496633 578291730 679316023 731644764 970234988 705923581 883293745 585702933 977784181 373180050 575044807 386898508 444803617 397471030 657471865 93258408 580712754 81720574 843849264 37146461 228134573 401634724 645313868 321505796 573750114 267698526 385979207 217430108 299210382 333167431 443302713 260051188 611249125 550421291 789960407 124731587 246354417 70999670 243555289 471810139 571161815 618095935 800787146 195950140 665539271 518163428 887286709 313583614 999028136 390354749 708673720 709090305 872686806 27391167 663629136 387748219 695960287 454387267 485913059 925589683 961875274 411632006 551148763 296827320 949869679 751054631 854845394 123420989 820181194 358453105 728238262 645434485 890687491 869981603 904263387 502379534 892207574 629953127 824390296 3400131 895173310 377782295 762953045 487680151 506667142 566160923 752117675 270724770 676449890 331428255 553432897 148599828 248992816 487053035 578511592 235704348 638367210 158792819 955894729 873544962 921782562 317888242 734130669 892754778 910908369 672434864 767995118 297022470 855863392 54718629 230470648 847237100 868926812 956197564 965059981 79786026 658625876 411400583 636141311 176684000 229333218 725873905 845050569 436974218 701266890 307286551 559484318 892130440 904271482 161508130 208028212 771449331 929670575 619278570 696994424 712049119 769409696 512464599 591183750 49430423 254825434 529325126 884324233 490707084 919778133 366282313 779479705 3377823 663654220 247239649 275875734 37617079 90365513 391885367 766886320 935853079 994726179 442347794 647287044 146651978 392294624 605259099 726990676 114405142 789230525 232854999 614346346 942361578 947413759 79550975 819864546 554014758 910390182 319382025 855824855 277125561 503804631 563508768 923751718 839860602 898732501 750551470 987679827 89977407 667496383 722371275 966544328 369762610 704888433 634828772 795403218 498646879 691335160 56242842 639172916 814619028 999028795 642738067 932265459 982445410 995107443 1689100 293442956 485470411 561195050 988865115 990561890 600644224 639607715 535559 367861638 577512536 630416894 695934294 744345982 349974650 785727274 362273871 990340310 354843202 724624807 129878482 579048651 775822934 907455232 517648568 575429981 206868123 283169787 372261341 554716065 149757448 791399926 55485656 256191120 852802092 990269243 38345502 933436360 135867945 278583862 275662135 834702059 820124878 870503297 455453654 833159150 491208333 791316336 181056415 607751140 360744837 400085553 725343720 891607071 546912793 991353584 867670059 870833432 261546324 730534062 571036300 914494281 650673997 974081480 36990394 371979517 636612592 987575793 631392951 778146308 198415390 544344312 668628597 680612464 81067147 830887813 595135230 775939743 45002777 48832410 164225689 434470515 179818387 899920761 785536088 932737570 43177477 749204342 394310509 521743478 3080452 905526676 673896499 736422903 694398794 747846729 358951341 634089066 242607079 513397616 294444259 669097155 441529661 880608317 506063249 785876561 682749733 895897914 439923912 571899607 735768629 884936075 755736563 981217684 50555622 596727387 612077430 717330132 360419678 488149919 21828311 780734550 52289425 724371528 955871324 972822482 451421656 731231977 704573328 768838327 506254980 822206481 823409941 871429765 947107325 979359693 888827723 999190421 139185898 161617610 510062826 554781692 849417998 952570679 505655438 987471288 261091525 289629319 950179986 950431018 229516545 519710974 805905082 881010735 52531281 603733036 314848742 317635411 702238467 946086468 619420987 681634773 880347359 897951190 152933718 670204823 55837964 150942931 245408979 952911557 15105835 988542085 15516184 604744194 226058824 320760653 142711859 581602150 211716162 595118598 865190777 914236520 738441414 851614011 442076046 941398055 847080309 871944339 46381187 943816419 661061446 957943338 513192841 939535356 779670047 834914273 629579537 674053230 706796926 728226402 105608324 131889430 359324395 528213173 449548471 480240370 920066605 937885770 452311362 567789343 696617213 792601926 830822437 888968742 212747202 483293938 807125629 872575279 855539088 967477017 914462412 921416797 479522751 498370788 873542723 928273843 603656534 961003990 73906321 497948749 348924208 422030586 162037788 663309663 187286809 193818819 257831723 263966978 978308641 991111306 158977623 351022527 81746509 521085513 281103261 367111988 961533965 975031386 585094117 894509786 687360049 891560944 172988569 998020373 98471421 592752486 574189365 677650148 711882385 862475082 855696971 970658818 155403917 947548758 102761438 494078815 95542371 130591246 204282466 925982097 831463287 840977310 29889074 583758549 867612059 900728677 597213550 798890149 561078579 696263831 71907375 967930904 330153349 793472413 975392243 983997869 744320770 886071571 442788778 452157867 718469871 726407491 957479624 959574973 413516246 499994602 435795278 492459157 258521091 711446535 629842458 747704807 968043418 972077745 106905970 826009287 412130829 901960926 443384749 501232519 889241179 920857228 321778807 582007106 978799297 987760932 123783946 955599970 136556774 993078102 220736419 523710780 407478322 445461561 267527213 827748696 590787267 829358393 515010773 622859125 171530247 763645503 907387805 910018028 516643021 831973630 813449343 846330175 424404143 817378141 593723053 885128782 183234088 500622948 507495829 731926179 969905877 999029725 96536512 462870506 614368485 945220083 971327565 986164954 735386691 776596687 319267619 857070718 394913346 560059795 220451195 790517375 337925984 682327962 272679904 313296146 979065839 998290671 462411568 560030528 518775195 575729537 857901618 893631910 283546426 312888740 137088471 218411729 741838443 957458510 373719551 466213091 289643758 775105205 805196703 916693414 132524564 881782203 410897168 894775861 502296358 804406782 240268797 536541231 103183143 854333613 900471659 968401631 633252161 751333802 711226417 717612881 845100826 947154605 679343884 759444706 176790996 783927991 730380394 760408567 390020244 881773590 798418372 971235192 141270286 655670305 416678741 883739848 37647117 519002432 586441946 996339093 187267116 787412543 782099748 903569427 774479383 809640577 399373796 569850831 380028088 538640077 343583492 845343216 62474549 680450412 862711001 976427135 155799054 211562942 470000648 590375395 9243475 235570261 384634120 417910523 356370564 813589388 107759244 551176541 572214412 963361430 217557051 269536457 452563700 640500894 87783773 848941330 353146709 651539150 286563082 620496961 300790682 660230655 931891169 980729411 628308920 887244032 859672634 937395502 183180628 455796775 520209215 786662302 433904820 731332016 722696054 944672481 315298670 687863040 816994990 944575153 464938559 981344563 501917949 891971965 563444266 900958140 767752 174564374 986387884 997437914 894558436 987467822 179710947 597764827 306840685 467090883 649745528 716574987 997273051 997775933 723702881 986345143 164861413 680073914 528941729 996878372 374198052 403914212 395722423 613269327 780539225 982640516 450757513 625573589 4548368 678744376 793188937 986611547 9162228 795239274 859706158 947836402 435491611 914275793 811381854 922073993 389443849 484643949 804986889 828237363 108927845 455511998 683594585 807974807 75445031 982659565 39264635 244094729 249256483 829391712 241706149 776867326 365825937 621832787 173919346 705942742 232666237 941199912 105198445 687423930 744106905 825954273 930880059 932111299 787848877 894803788 147650379 764228635 608568234 940958049 915300516 922764924 813893836 853357074 494839042 928120440 192247212 482655597 298889520 580527952 182227030 551963811 358432507 969142137 21229045 751740844 300524531 648528853 843326572 993748387 754262364 868102782 576444177 744319511 191035514 475327244 81500884 179018811 627673072 671470911 209908527 917307092 600209449 744770933 166529381 679635097 55192996 176137937 402428132 584610664 452098369 787097013 509498262 554127081 329651613 470358110 498332559 587224174 189854873 858924704 422172896 891167611 643966777 834089668 112005305 422298555 219735424 423200024 242151127 926154341 724854090 976427115 658343485 988736684 236799916 714554676 558675334 662570525 675527338 676994752 419709563 853069179 272005613 328866096 700961427 943770338 274913319 453847907 785305558 800376081 499802581 533803177 834253325 869656099 645624059 875906945 132422372 620035683 634772728 859812951 429075065 758991351 296498314 828371429 788418608 918936998 808386670 912047609 969786523 974573424 130937090 727344677 582058059 706203364 272040137 583043875 80347865 933637784 173425955 991243634 91767793 504038073 537604111 667407232 856649525 918752368 280552833 629323672 751388018 974313914 593694411 794470818 839632231 969720309 455569501 739906971 71829650 765292550 500609017 938325032 712780923 781085542 344868057 348353368 167728906 669332660 471994129 835725977 412685609 886697517 217771483 265765979 129116134 458123562 908350276 959828883 569569506 877528830 165941207 565570648 49235827 140303414 200775284 499804370 730424210 772396877 993163274 997876275 112313229 926160354 910706372 924386932 269686433 703316473 692033794 700291043 49651268 692572699 92173711 350214326 224333665 235037973 402872933 814166823 566971598 734500230 138584472 588522617 89903579 699084188 492990463 913848881 796978308 814697219 347130631 431910610 820707110 916127902 62334334 936528693 192799276 317054329 128137575 956605001 93740488 345867839 808109540 819875515 241084109 840989808 138593314 420340964 687077867 864614227 549487913 826773841 164665675 854454369 774514537 932951236 834692239 889135382 53247052 829608449 652183171 813848229 729503665 836346553 399072797 775227696 845701107 869133841 753940395 802288274 712323689 781558432 548552255 632553421 863142 351962119 80271713 505115934 601334456 620130692 379201074 774382009 901748301 942761798 662229052 963083322 780433016 914323268 84291654 863150585 336678313 409607425 761034867 765686211 586917612 906611582 336525391 469011358 109258757 287265483 112787098 783747828 976260606 989501007 917197483 929856363 103606201 421349433 686272885 977752110 767191710 908529671 894117873 937472733 299144654 894086983 886783502 971513743 215502107 586330265 343493102 394907286 458741182 901334245 777896812 974690543 912953591 960138534 632771246 796679476 770386367 939669141 247404600 599169677 1848518 268177135 72710589 241609979 3453002 155581338 922979810 953571655 898999653 922637047 514384647 967695690 51305994 958273328 449099326 840840058 579395133 651646025 172673693 559615807 625260708 757521275 537208381 877223364 448026525 907630470 690851438 911458073 999050440 999240038 708619876 884317662 260441739 561978708 41621252 600666375 174797716 325960670 953558807 979155485 487629503 807451255 878624948 946319027 656726746 678996957 647739599 797203345 508341078 887827705 166900840 228379620 433996145 651129174 684871890 939326147 332253224 640412824 122356831 802458564 698550224 721690168 678422270 898711181 310222657 925813450 996616968 996681550 540608173 704989267 219329603 488096801 531409151 540636048 744011860 757498296 805136166 809810023 335027994 889805626 457670320 601808368 14656281 238087994 501679106 624665057 823331091 991173501 480557155 757665956 383814942 931766587 677962627 955049926 602197220 936433678 434245143 803696913 288429121 611218828 915364339 989518095 347202492 506843879 52554516 588408346 894129939 934124905 532270631 699818779 725932795 825515077 601441450 968692039 479517199 808445466 411092892 870591005 510985807 956024461 791093182 919585295 415675316 920524860 79708604 709013880 714657761 926341155 305339285 948295377 246862360 813538206 889039861 988082081 664126211 846962833 474572375 541889613 418707596 589910121 135254329 275812847 880607979 954904202 402637559 492425603 335262560 484012486 230086532 618335732 22648912 777299955 123347236 182847565 770322964 975592605 591462756 920911473 358588135 659183163 594895988 796055574 990486458 997640751 948604279 950917728 847221247 866704271 75942146 159141454 418343452 644161108 390058339 915708858 670245488 908461048 326486536 900612412 20509956 770953460 403234394 525507400 489358051 637941043 872319099 937860671 847195959 876309034 44687747 619942720 107950586 396802144 443385639 610763988 915420764 973493232 393842533 546408408 864941004 978235487 966390692 996887985 369102307 603990004 898274435 942806231 120543605 721274448 674494806 719145100 750852905 786225974 791532016 887097529 19187720 989121215 684952776 902746708 557025613 893604465 437100224 579325726 428290771 920346953 467404988 631224030 162015668 700449331 660821819 893466777 135435379 626866937 983616321 989840409 894584332 993597819 339966683 372382054 69667525 420759922 928137633 946028568 970077392 976751371 438431691 480924959 823648878 961711861 4685159 699204053 27292967 619984098 593290050 971590341 350846759 879169677 151679 186937646 280800637 405617573 27906733 455210685 318237346 614718994 208248310 647259995 594880416 743938077 13114206 297483663 116397899 763426247 151314540 207154287 343399033 629496407 396509135 548463920 560931367 969030109 607150200 775813138 661753384 853019883 701624633 857286487 868798378 886978308 74753764 429842062 329605344 566753112 530268263 913051794 446805846 735489783 840645627 986864706 859398096 987884550 505374735 623149110 899825468 910448629 52613433 745635001 738728079 755593950 923150573 958061157 120630662 599982624 130272447 179197277 585167704 668930094 570933710 674034581 630438479 923583367 433702417 603934301 584343460 705645526 552752129 711456913 54748017 576811539 139995836 676104676 475304742 486519232 418109520 644121765 632822816 648121298 686507812 948243755 587167291 972963033 453323796 654383666 270662519 901642646 361804484 576404108 426043967 526228415 480930471 749529750 461339983 827316993 222512334 824945702 743874477 867377166 555754218 623650014 607136930 887416655 159856226 648761110 166857335 594560797 510714990 534927532 272317627 653063130 974917263 985167079 13100717 63728388 380108453 815054013 209931751 698067206 798650575 935051276 922482501 955724752 555858514 692711599 816150646 965976456 675313454 952713706 550245634 732192889 435758494 495448300 977058180 983724491 479534629 592783790 724456987 897293427 179964408 839527182 560638997 669519455 485678222 502871428 38179570 921016753 869343021 948582684 359538425 540098829 72938397 516539707 630460469 986683934 153510687 208099713 384032423 969424572 407395693 581332244 906452357 938157402 817140064 873063520 284580386 656052135 959064972 969561962 615279187 625962794 307036833 790142325 397807213 468987893 57350767 192276126 56900152 265637606 581855334 985232811 807794947 835249622 514985046 803065021 618909328 742747302 300643866 844031447 105745773 881928528 876538503 924821616 576793826 936733430 613693159 989961195 357233425 892785376 98913670 158678226 514653262 569238469 757761974 934551437 819680423 935977112 928768192 961227275 147911053 930851908 262477812 601665561 897424346 928201185 30277131 511948097 772223227 805297683 198526631 246139493 871700704 911551525 581047411 984829440 167008335 475171456 936481112 995427762 73536691 269658365 517872968 934082735 434629037 794032785 987476635 995343108 468800073 871165323 498857053 577987100 16060527 628506739 844487707 898194443 969992816 991738271 470229841 715600000 846152479 971403156 162138972 596946546 259992937 938404501 742053993 778004971 143842690 719723356 260989972 289700494 748489568 825712356 729936214 874229287 234921016 275916508 755937834 953845152 61870471 796601444 993428130 998987906 713788046 894026324 517839176 854767902 423964058 526634894 310795844 519184734 188929646 316568177 334499418 903386087 546787978 874030004 78249673 731333730 831076634 966836623 833351283 926453996 860247563 959495135 902678082 967389502 766883160 993451623 5888136 627825636 993579499 999236924 40606350 830392858 240943540 366437724 434325291 477018528 119911559 543596389 108248119 859580529 811995849 868401833 110496555 881829589 849959626 852099975 751611776 777761590 973268838 984646375 600670222 867873196 777900205 998926832 77832792 682000225 158469354 312553657 7924648 230630065 57010890 658741247 865997445 871185787 274690232 544832118 959824383 977551299 917218715 974410776 266712605 763235181 614413362 734714623 447273523 629699747 656414378 800393002 575755483 681443349 271606868 851878796 929552541 968052952 303569813 767844778 777166343 874576406 899089362 945711666 361632026 559758315 73982473 125899813 26232161 509378110 677768230 948099550 448975367 845764973 447727091 959282130 975461424 975964115 821218040 998747239 171856375 900341697 647634918 665067378 357732038 794528404 632852002 824519801 558366754 757655955 737285460 923874461 325740748 587173163 631687185 814305506 457614033 960981145 197564887 720821703 791158294 847148153 921261294 984282439 137536952 935483114 702962616 713911058 743657119 754198213 643128621 917739786 426754296 505176910 514569103 811226350 159131929 905570674 191986354 869752842 756931912 909166636 602708402 746116074 607803156 609695656 28452371 546690879 115627150 936578749 745228350 838091099 816316600 989339540 310840984 656311383 745939877 946796198 493335865 515492352 142923152 840046678 25150433 259253273 917650040 995764703 375329508 746787187 450464921 968415335 478993465 900936723 160328381 598981336 917059469 940013145 168781104 280539691 620789231 800963128 959693283 964721633 532374114 563090059 885202348 984056461 359658600 754626265 170156300 494444018 554104930 994585998 670921661 874988331 88282340 648549562 787210063 854866605 103326461 862973425 303630316 642489279 291679193 689795852 331178026 566560557 203300672 332754053 768139241 922563760 457502029 607012460 568549971 587278639 140753156 308086635 385291810 905990067 953082667 968971822 544928287 669584544 255910736 914696133 142729323 356667779 319113988 434644824 103300032 572462944 397042538 869501293 412200058 895411415 745199990 957463825 996834422 998272538 1380469 725547829 877635365 936857954 678551381 957953168 673972112 804012505 453848694 569832819 237601053 858719087 565297773 774489561 782007855 987613290 811770691 852193910 870724174 962573379 785624718 986331746 704868033 850981251 318454323 573580530 104791142 192819609 347581170 707038179 809696966 933497594 144737811 582199572 911571772 951809875 388748936 512241910 680495392 758592959 661123329 680966691 561079043 990271670 806074985 961049398 173220497 750280168 624545881 692538689 670908944 755750738 892546263 892727338 24148187 880806955 880905303 930612200 765620835 815598677 498048390 500346297 406156986 932585875 443609861 748562345 447414686 771601052 677140212 934884905 181733412 455296714 287323726 609907790 780127767 958728007 583139898 924320222 264089785 498875762 451685658 653732333 724190890 869589900 369914693 781185360 525907145 605005011 306531980 566527694 553494607 803801610 497136012 654356393 721241832 885877687 214540716 630430962 758165368 938502256 946160876 966320418 764144992 812917143 958243552 973480142 548776995 798752283 821065230 921177988 670822027 794384305 758617384 884215661 651923025 846714550 555926338 829914387 147168759 468337174 624889275 894010341 104410219 934124981 177079689 314367850 685802511 706486391 489802029 983659930 457524218 842678246 781015 941377827 569249271 708073447 169370725 348463400 93058537 190436779 665188377 765353159 10017207 681408253 933558341 935661430 435455523 479410903 875369783 900538838 927751214 977564983 777035528 955716726 606837651 871768215 552676303 929273662 436430438 798821504 214067725 970397192 449985579 638919377 476611090 483150058 389220628 914106277 741272278 993417597 259945889 467957412 190843335 718078078 920457954 935576237 322701193 717625110 460624977 912960624 258506950 752187128 18146475 608365218 818616222 855754923 424903245 880883331 341642295 649890559 454380904 964339413 841369393 918095498 303848771 328413535 419183974 437939680 782160000 989016135 815497967 909111348 347667047 902776261 92753233 432142014 198756250 419739950 911296487 999236306 785806545 896687618 820553603 951891057 165170697 512101840 50539410 733909392 947175413 996616147 216291849 592397818 33722049 449390808 597897165 776123265 66889796 367504413 168915213 568691822 899276149 989294121 91348581 637194295 301879696 346624852 222551391 304334342 7145226 825341342 229209710 380495408 526808981 847128680 137627416 809241670 803405095 904168084 836878895 932130604 557083368 877327770 587076370 803629842 137586869 326217457 755940597 896559356 331361893 730852805 867518833 894141709 878528098 894818004 465657440 879503978 91743928 812700209 265722138 267688077 640111493 648979124 947632694 995219292 491364736 736974553 243233259 803781912 302511963 479180203 163083537 599223503 292637050 444060387 151981508 613965205 592669799 751178833 479800213 918254469 629352954 733875497 371504410 768731426 87287988 246653310 712311945 959213242 75359238 986997558 784370217 812116730 142854623 170572718 598422878 982329298 389967268 941964221 873036756 988108830 430068903 771329766 380683584 858247008 171662036 829675927 212102302 526148468 175761024 603494721 880979899 986750548 996328264 997701190 635438976 778029964 746631588 781447271 940840581 955500984 403780357 769031538 860765146 972550173 384856456 981322019 196301794 451020078 784366743 968764375 649511626 676827834 255603958 326467810 912675859 923872075 101096096 196461132 109044319 777280976 800728458 990025672 619314409 711525131 310535066 400741597 815411965 905311522 866339322 977834168 710907764 871558818 684505419 839164605 57685776 284113141 397519554 748878013 949476153 977087540 389530882 490203430 809378953 974166468 384018367 451742398 12404291 106211520 272739127 878989979 61659055 878872329 234941954 754674851 807296557 991829878 192023712 600541627 606474209 661088537 821468119 911286377 197201385 826155788 55376536 580837900 485681345 731495834 827386372 903767288 532252751 758625483 381814936 504854603 850948613 934605011 827099554 930745947 969811845 974221174 747232852 855056240 634278425 775169880 189068051 721975080 70132858 350218201 462061503 580212302 556769556 912205513 881471868 954937716 635405509 779036039 104647382 460909000 647755486 773136249 49676047 428736762 319003779 355123412 59930050 826988455 925213724 971172759 522870792 896426029 295414868 793802702 362505543 500772267 972043086 979258149 816401656 893308522 563738993 675516613 898092079 911884760 484472758 741251553 808065839 983276241 861885618 909667540 537610466 677043227 991026005 998186428 909088732 965194708 238773475 899861713 385011341 396939936 246837397 311132101 433045584 542697437 202473102 961193894 594272990 833123606 128891422 970260269 312144769 584303009 809239252 948353131 730139825 803820022 792613448 911891565 644790366 909888368 42506360 478865067 757057051 924591157 617913213 619624571 83071006 212538134 362594119 656738621 215988691 904088735 80908705 917684852 346221226 807074154 488773063 788520065 82992295 525415038 729271438 752512955 29159941 469704742 61740483 747666123 792199355 976048733 905309504 977543127 400003337 750509509 245950246 447541166 34808040 432000696 730018274 895902395 909699505 949417044 227530671 894268027 311832741 539041930 891309716 917089996 343257392 607030013 961817287 989779023 51654558 174801698 819108402 880728600 41854662 470928908 877250706 938080570 444867711 852315550 573725865 882779804 791106495 853443768 690514567 779232043 577695481 675608895 344644030 838395312 639708766 711716023 976952356 977887745 948660965 955065480 391179419 524376677 804744872 913240712 435730826 572390572 704449809 955704621 83004833 627947139 750302766 963381306 523264370 921575539 718303034 882959758 267822698 321444275 401998325 944124654 689440736 701372955 850323604 897842070 402826504 604079408 461575497 700595926 897715990 947230871 326186678 684112217 519108081 591560455 755572957 787971525 322332108 714477079 72911641 489433840 365931523 560017358 833367471 967344396 920434243 924281843 493864528 711867221 125534888 477525746 591025606 859475288 950996069 997996145 864553854 974321065 166257610 213250471 365647746 505763923 662784442 991220239 565615883 760684308 967028281 988579195 385721454 387735746 447396470 618676663 232095942 611224249 121719018 972706771 466300174 504349393 996441466 997498543 486637204 982472001 272656689 989535463 654663796 915265305 71733816 980472775 658315037 950624205 859551439 984840597 636690339 760237026 327331923 477987171 262165487 650920175 704820850 764269775 56732162 76827249 429362364 611703348 968446994 983038373 882362203 886531980 267948860 359899382 813492446 846665053 837606220 883720727 709219543 883131213 646030171 742599635 506867453 605196050 617912367 761864413 693808130 782900216 896507599 913211508 408630792 438639268 544796905 989778570 549436344 956905786 225943507 802590114 571108377 950355908 492460537 971389342 361873607 994700850 542419142 965024993 108974947 373868894 592731062 655531076 114908049 557531548 766755198 898645043 215934070 444130284 106420193 517560951 564862158 625621846 808483296 866215298 304337495 821676196 910802850 980556721 731192725 829656190 797413317 933083599 945717477 976184020 486075947 656608778 911491745 927252730 785678333 903011413 649424192 958865999 737594104 983347092 155526571 332746022 171811640 922895623 464570179 985137921 205218071 472102729 164712460 176596081 848263778 857171386 710552011 961225825 678647859 816564352 966885762 975598014 977026750 992681489 168143415 506822216 175234633 484934499 841702917 980629201 368506290 653740759 543417912 752506116 670984221 782791322 173859636 386435454 483718357 911773879 179059652 994009070 166996590 859224584 129804564 585639078 877029608 992401967 772798535 942890276 660624610 770042493 370907629 410403812 280981880 565301986 105843140 692165165 694053901 956949833 564106952 917970629 9547292 258141200 876070416 883179775 161833180 294600053 33396085 505134409 476541075 907527201 421031864 464609548 649010736 803842095 752539313 856431037 874844861 889284868 107834112 167204559 186876929 996492278 50177160 712843627 876501523 891770693 823123074 926985509 621775579 795362453 857460980 975355408 349863390 904068770 501657037 767160663 484449462 565663242 176783641 723852578 84327536 424753064 306356899 313700339 93359523 537141920 237811371 578511834 372469154 475564185 640097337 686568045 630520224 728831962 755350605 917954970 175131540 368722589 657839842 801080220 527656941 778324097 50076948 666883717 451423982 926758766 958894752 995432490 606067729 751092282 822119544 913196785 287092245 474300902 373096794 917793943 515852234 746093701 652448446 957406502 409779286 662244878 875326563 889699891 154524295 365654107 658468050 761003640 933816904 944781176 67275715 466735232 929224597 933726808 62559300 663895114 591796843 835286714 379511419 417126239 64427993 353306277 716006863 857446991 742939550 902567257 533725687 615338208 812983718 882787249 738231597 780140495 902591802 979974063 210496636 213818016 898392277 933199887 251437565 859829877 922851344 976066176 246269945 535053843 976424117 986863896 688961577 931872565 175262264 464632434 419138233 970064610 4438924 133219771 151329640 782055250 520142163 718577546 15727189 374161537 449128051 837794970 961954616 990656318 561157226 783681159 673331079 926072604 435020272 653204711 998560661 999297407 379055585 950084665 934507979 951851253 361567081 401393838 95462852 325871769 404629079 491078101 730955397 988270185 301936144 568231413 737247950 793452241 376069967 860905182 374729013 588393451 111250913 547766352 944712908 948391007 306449573 935625484 709271927 712275922 28362460 844306547 318721851 589563026 165447690 684031542 358059674 649700334 702415360 853814177 359455525 621252183 511645620 563859944 245079382 876543665 450636072 952291973 602975190 878195053 419774773 512319545 54470135 656067746 962984550 975390740 295405352 849953733 809611004 994441908 113778545 257999418 5909827 699095532 364728467 645284204 385471562 877053229 572122652 981297111 526316846 630900001 487986378 987868636 495116051 578917314 526632207 541644360 94152531 384111919 524921119 885557936 508850627 820685353 273744656 805365673 551857684 749342356 344410632 761598520 582516416 706971541 280278946 604348031 960999008 991297577 715651358 740655094 216031507 736801923 103724604 385829498 779339681 997528020 251876331 789688084 625490754 937597036 510544791 802124314 457136963 783037175 960807067 964446663 720877276 848258175 341971695 346956345 141688882 600721571 298193685 819246519 404591235 799916821 98478536 328010606 26867622 900737687 38397668 765421444 451071598 877075775 611735883 844463293 42549277 344874569 664325739 852884005 946536067 973540710 886673677 974610965 41869484 553452614 473990239 568344539 552245820 981945627 698704430 790802432 793746969 979389712 8033261 166901379 775184914 917106819 104288719 362731618 985748229 996056267 166798102 802680943 78578223 274857483 312833040 781720027 39730864 370459425 167494695 919386276 676060219 752844826 885918822 937260855 906803782 980904580 139879324 186659426 433982426 791910876 209051511 298077352 399087846 521268704 657082826 840241379 18119371 25263028 443293738 829832405 735700083 970394520 462578894 723677413 202903449 996743130 534134858 703630659 172802131 753489257 730540558 980898126 675773294 984487041 576271652 616786600 393381801 617889037 487495824 630637788 448517402 804607661 41636517 318163155 232320491 234520205 790199491 942677263 708260495 959273507 714924043 725386800 817145669 987570861 478376796 839445743 910146889 929678033 25065526 940773218 397237926 477811892 40428222 679572428 424102952 465797330 313524465 699021497 134424562 761175470 589111199 854378838 683761533 757811745 341395791 379851306 987835161 997693383 505118224 582069581 888262801 936487464 313993215 609832853 24981644 524250229 654840200 954749698 733302213 751592476 416199624 624189281 303491059 376022680 763529930 764107178 276581942 765038745 357424770 797434331 810848941 951130529 454790657 607069698 383829661 782257676 763759243 928522750 467003436 717750445 160256079 409199381 59387329 946959164 293539448 932773344 629056640 735511746 569174209 912502376 994763426 996406124 863825653 991276659 30813563 352700206 368295103 630575079 213920166 275077771 899258087 905715226 960097079 963319505 145638249 150456457 901639196 972515768 44115225 318262054 481165133 738404964 153752889 989239558 311147325 585344478 644976804 950565903 816628095 893470657 274915268 711772896 192395177 694613965 836433379 868830975 937128678 958565126 42231223 694110852 884326228 902610467 435645552 539822566 93268791 621903715 526900062 556750622 731221060 790063917 723593835 935529907 53333691 926454537 650501226 839656331 164871530 473961215 183637123 396260705 319351497 889894537 418344738 694456789 838577208 916612127 624837172 983869786 295481760 429326804 674910205 958294637 62565854 840694301 192170918 446241973 837827669 996951274 213604981 230219409 215730136 824264756 394500158 822446632 968112518 996945010 34345307 388609562 121574069 620736234 519995876 770816847 580318015 871681026 473313603 745517717 144853765 258066000 727750720 824025205 216257220 545023824 587515607 979835704 867087090 954032636 824548507 909444114 466915926 945691121 597293487 835517900 341684204 427323044 567757035 570168884 898439641 967508324 28056567 318035438 461291827 624354010 384035819 786077414 684623437 750158613 848987711 975703843 756783244 972631141 871837579 917616377 93039910 974065899 137754239 823284937 103994565 755103523 192704725 599684310 859053368 881812253 271583759 286502341 291881656 940026576 626292843 949474386 979929224 991535751 488641053 809321941 930191506 992753158 466905086 715866320 574250347 796151621 144881728 389318580 651959597 895939401 705442984 826976738 754796862 967604180 959025292 976508035 763270349 846902038 714763201 894921242 287447137 398441589 923867097 971246547 750336462 910845492 191910638 466676494 630934651 990649556 358560705 648409682 205113453 691622011 323411756 823121198 603240266 783416799 129461228 607210858 343955692 675682282 594598490 877168532 45263557 433231991 742558805 858752239 619644119 976567019 289639756 831824230 1876062 853695055 926454090 976649544 395694131 780746127 802702282 879011607 462128595 974728501 438441321 860552805 156736788 814334393 368707251 732005833 738816765 838852989 993792147 996817664 662338354 904245577 775892160 828669956 942863432 966278383 196563131 575685774 529574866 902007576 61974501 788416250 798336448 943436513 352448731 460791040 909421676 987318764 864542381 942210549 374699786 909207198 435951080 924591357 519788698 934662513 76354981 594172313 579545286 589228442 404892984 907194908 374863814 712859222 237560173 654886508 779768825 798868008 246202279 825825875 898953804 951687508 507135834 538003915 757353493 832342449 761317513 894285222 673629142 972492779 52838491 114772779 171887065 368717193 376274502 786439799 361466497 383556509 260536434 711832871 16288244 910203345 404080321 694179678 207848976 964447423 576933048 631576137 770860242 827174533 889195139 939661868 490572749 553139327 909958631 919562868 378926688 661093894 483263768 588494592 300834816 377598935 948877857 955785892 533525336 869075255 975101847 981066528 62102408 626770295 430138255 670180754 811842404 846795182 806409482 868045218 479871884 697537759 20989046 73936511 302190073 459282004 842636484 875291431 415345685 709079719 914297826 984500553 510456827 812016850 532740029 609929585 8157825 696280746 839954505 882832900 56342542 954694727 935718022 961056588 379008175 730192174 526915085 591873235 737066341 997207937 949310297 996146586 125263966 861553832 976322941 998521933 536965307 942402965 85790464 322356315 630060817 888669595 897861044 962431071 701632232 977548806 904906819 959187832 587185968 924655563 851699486 865868955 777995146 864825287 684320961 841563221 356501795 739796724 178434579 655979587 42140702 529795593 952813530 985300097 154281135 845759491 172330271 946671045 358766100 871953865 33616962 250901179 752500961 927469865 266904218 714996188 428429240 646120424 702036050 957369301 30716920 390304858 312836807 685826263 358862718 755485714 327860756 410678021 710773028 791977643 445682794 789622993 29848570 895149947 63541670 912415996 115886540 504368228 413456214 958511684 630597301 662229017 304720932 538795217 876559279 912148663 596417303 940550194 319939160 565618868 819073105 844798863 870344301 957495184 709225073 876952338 911852229 958225616 196109312 316655317 946290143 983629674 696902590 714918555 764881696 766403826 392449546 662350323 966918226 991269549 670838385 723667975 585904761 799215145 830766388 948965008 102100510 608613891 170444959 552973687 905795439 941036550 637383394 641050020 575263742 890870910 634954639 873039562 519584255 615102122 652549004 760012401 36984727 847744668 982191025 989428969 804265777 955179440 63310441 567244132 683654643 962811965 578836646 969024023 500930017 973965987 38545098 502568398 891779572 973316917 576253497 674002051 548803439 816225321 10628066 902896441 482407256 919607126 176445703 248394755 368520230 408903761 179304108 967777752 818076365 863210492 689662941 791916990 928566528 990187350 134869791 744352891 698945263 827230882 305347174 620136019 192951602 715705682 650039749 817402934 361564319 688791073 663153185 940593280 389094980 900812838 708501848 998673776 878489091 950456578 705955214 799114193 553157572 895054205 164590192 247474616 92054925 876710642 545719375 929587576 722598722 966491936 260909525 934067376 894484855 910624765 371153898 651540774 993013488 996512510 469979046 491035436 563203114 904218255 688046911 807670731 910727967 943141892 591192033 908789033 269109348 598068670 781506470 826828065 172482208 953949931 408576491 944530184 489967560 684300493 435512256 587587178 127649465 781542301 366390877 634940890 607790057 875120165 476912454 664896678 977377311 983078878 321836593 853724990 974812738 990446170 740732073 892689851 151807398 977188841 294129917 956452532 585124331 703029999 403050835 434053153 789815548 834632119 456824560 783621092 95828087 238833257 626946692 760451626 557287715 682414763 410100002 950420206 101705854 548471603 800403924 904964930 974597297 993169239 385706748 983151834 126939917 241671053 543893658 770158631 641963905 925605694 227677116 830910030 204043146 484109008 992313848 998267524 708753094 888592684 574805390 682905266 230077703 352789248 840713415 999050042 196034157 334209793 805179475 983376934 834107107 907313611 154739597 886875229 17284744 598745442 753799203 822927005 917712965 979871998 327866566 492887031 51656132 295107587 987417691 994503069 127113474 259063110 367751859 841569249 82026412 334050985 513402683 946326753 697046047 861750410 278682173 523864968 467824137 747882833 614419257 647195121 783845377 870144099 536080929 959134377 166642419 379145903 205220239 944585407 993171089 995901377 636849853 901049115 683446764 855623442 726748566 792514041 166644487 504045417 800055895 906619983 642819974 992065930 422700103 442668670 845388620 865157362 175919156 486040994 154053324 230905125 623805362 906892313 320623647 623082888 996755799 998785648 616359937 737580233 55988264 173394005 867531232 939382440 416001271 441768397 676735766 829830446 288176812 726082597 126662345 416871962 585721372 638612797 748455488 899201710 466766639 855246231 403859762 653089868 827297655 952852962 412472502 811202937 114035755 706740441 479482206 774472851 398461246 950527731 431413147 568897021 188689730 829351970 168504354 529978863 793380809 996501589 565867839 634175160 619018158 632639385 61211924 180643224 181391669 441123258 725401019 764849115 460528734 512688479 793160960 928861962 55559256 866067483 354042774 628385096 574024112 932673347 510147709 663671844 795456638 816969803 276902297 814544972 919859580 944666959 685121733 994795703 174039911 802536344 859180164 982722793 538613650 712684819 5708988 455623918 288531445 475580291 120557820 584508357 303516692 670601522 443794147 860273324 83013589 90024637 762882063 879426761 94302024 520933158 499957106 929801536 201649607 884798504 903300205 927876334 133178636 260544746 804373629 973725605 797820197 948178071 563409747 568054213 467456650 898841941 788446949 869103490 745000388 803018316 719728784 828988461 775713658 917463578 123094404 257000738 96257605 816392918 57098210 563010059 347456014 741030541 583171725 719194595 155053090 399713990 689837695 922028862 141106443 983666091 743272595 799328075 425815517 530322845 93602037 399948088 149827230 259120997 881239253 924260093 19615730 954617601 913810797 982862870 113325819 165923448 180657230 865036384 927154058 988924377 533876883 779713510 634881135 936255841 566042223 842601771 312805073 977924651 696085311 839068299 449132018 841834544 813986590 981743148 717847455 731771039 573202339 594970438 232718832 317435320 313532684 544083405 114773413 852415965 41034730 503536790 756355456 788082011 844366980 919872134 486540270 884461845 227698124 766597165 361661879 860247295 419925925 694447352 122701169 932050273 698817474 756232598 642318292 976162641 601245493 856483659 388915571 416702381 378954062 849447482 450096900 606682526 723761919 742156157 406010445 598533993 543755774 656480806 217718926 957454025 16024838 27352178 735833275 875715546 273366774 661146090 163713779 757375502 403419255 537382763 496119433 967933111 257715635 551166134 227095503 599009660 329242070 840116949 481256992 776517812 224206581 704900565 364806091 462173834 45525869 351445155 29213017 454912855 115561382 312317087 264115247 367895658 998930723 998931941 143664492 193496563 199327799 698702893 136438009 142610176 382927382 855016053 446024302 567546706 789487918 923316297 880112156 910936208 733963733 937572640 798329876 807438214 446298812 574228496 730049578 965214327 725017175 834448035 836009508 959238507 406310942 681478221 773003421 923333268 461708905 478084663 553347618 931775585 866230634 997998347 235190415 809071463 60533005 930825782 330239349 818474787 683283006 855769170 837442475 841083089 329758244 919993330 776311720 917597408 31454537 315970217 555526696 967937642 746777812 853687728 680556554 682612882 592988294 863851934 732911136 913489658 65729798 857856420 21376218 842657095 420279637 886332998 175467003 215176824 302295434 855914985 110799420 842628410 209294873 971060962 894775933 985804231 429517495 554634295 315796932 740877924 783849715 895626452 337720460 671218106 575346497 586883336 156521194 762659528 424791506 874305656 494638708 681209262 646921418 860655861 4665166 15182732 336667292 597230531 493689754 860556714 314591592 479489490 748590399 887602225 20892182 634202089 318858773 575940407 407216044 672391984 199198916 894518127 17943453 942548739 316007108 990447749 16122373 403030448 947735397 967979375 705243354 934850422 432042474 462378187 925747767 973436373 780488930 956296129 933251016 934226840 3996783 508087228 207793940 829527745 749806271 977215564 51159929 907032125 522005321 642346645 309919264 706364028 303939608 755547667 236950769 595317296 359108228 492324792 245332315 518199534 876648305 978348945 515240963 999299569 275293680 830170020 811830363 993958669 762199441 972752905 609098673 712058600 252371969 492625859 628584539 701972107 740818362 986746081 428267639 548049146 881053453 932284227 462928059 910874542 983114035 997313332 991442838 993562851 277797619 465667292 259930022 389344629 398105583 478061910 321337785 686637674 872081111 872251472 130547031 567782001 841649808 850986476 713181910 904923089 830742576 879564990 271549069 994370066 15826518 882618996 506667927 721637097 58306008 942046251 833150535 931167807 218264547 561982645 765132609 909346532 890002179 949298927 21893450 628591827 576701825 730982384 906963601 961427985 269939779 785760090 932737996 937214215 765851917 894582616 614178529 864824436 835931763 990080354 511100683 699039959 110238295 613905989 787524404 839112263 222082888 437761147 808197064 899910154 649186222 781470869 549593051 913507290 997214463 997642886 180473955 479770498 687048565 926833499 210872401 864806911 678181257 874670140 350188700 847832898 10414193 495947443 601999155 620091638 355552209 978433960 394760314 904340338 171051004 768681029 916814166 957140582 634388102 660635809 286963561 433836431 824224560 993999047 456932770 939900233 371993029 549598085 728509917 802221172 480807435 714111995 750470236 898909893 247122861 738957363 741772787 961355536 485369991 579182466 266577753 414365345 101663430 691861729 370215365 480984318 65616429 775406168 964148146 986215601 744958002 885955898 757605167 804409745 428673089 646520291 401139311 509479435 900065525 944951437 354165537 790680390 822409760 996689652 151467059 650227644 355181160 833643025 635820832 899660204 561450915 673707502 69246167 133097753 951602734 962254585 860807382 951231782 222962332 761014039 246435461 818913195 422184814 708035166 712060073 798328461 341529455 586269438 679688489 806887992 596190537 698651995 234246061 823278422 235876548 306872185 601284680 992312731 939485181 987864739 293348578 821464505 605456657 691422035 869586006 990838947 231318992 778589854 36642384 852692059 234463205 967014596 246513331 571037933 426184196 497926599 417772908 494426258 304856304 871228514 526906083 888173994 983982066 986659557 79411486 930023382 62448839 664806723 464179326 542749796 590836030 597294626 508844153 583706495 319413019 397433108 531172281 858349456 580796190 630609346 833977765 883719225 62018276 797156896 752903886 954167481 30850984 820831184 421747304 869041611 889090281 962360700 421984461 786039577 161168396 378112599 637694799 640786626 340781920 384054206 919701625 962075563 208084155 629681263 110759893 700198550 821519407 885659188 908138677 917535073 959233232 988213910 998299664 998400474 314884856 490271716 544901343 599561983 313712913 757450676 361334603 638894676 101842943 841997839 801877830 989169543 898817960 985361399 144175380 550755794 928429780 932907120 411980328 958143559 207563319 820044595 974290190 991517950 171239862 677008453 611510226 829311355 849952263 991507866 377951744 765972141 110113657 630090496 797256774 837749282 623239073 657116515 359646720 944225447 662545139 936020848 461777080 643054116 34346742 470510723 276164768 424280007 474320746 503844326 573667255 612622468 966472856 993651764 771109665 930748042 9977077 824964943 32447884 239344655 753995324 988383004 37015732 604588629 968673390 978792834 477397425 715292835 23388436 671449046 828056949 977923367 248405666 658114026 355381120 587242809 152831642 482581746 161040495 585017925 179475174 365656789 413306308 841664442 847389265 935060591 312144440 782944676 236743806 518695617 919949277 947437074 315255235 726948025 277064235 484060943 97935479 415674555 429026950 733769592 694276113 818283740 583983580 822702311 950487012 956941909 42059154 629760361 804116538 813607093 654099443 922516853 301764939 946768176 707494231 777001656 130471349 693449053 790504144 956715082 739719435 991547019 400560504 958943221 83968881 398885431 647754491 776417849 269230813 307562149 201479953 672556506 101293980 545662842 206865732 674606648 510751955 900902602 86406141 674320906 151019280 557939862 791792084 966185730 593655456 786619226 277851621 877505817 220003529 479457573 548864472 570701523 318235464 803941081 819434395 824692159 277715734 534705642 725047680 970286441 87629477 587180115 845258192 893649382 858335596 891792385 130506687 642416762 53431225 856022969 837492236 981037654 918048590 998162033 191238114 201627082 500197223 977162417 644489054 854608240 931519419 982168066 65179382 136556935 835907285 917711294 177575178 292463437 514790853 707828255 986271809 990492695 365531683 693577831 92850343 406929265 387287665 974410387 766699768 907853516 356566289 445938524 879995229 977402125 121615616 521393087 890635593 984748020 710143951 929291234 866363004 984512017 964778999 993469060 281661789 714854804 234905128 470674334 505701760 673344948 967895256 979201803 293625873 794072531 873360927 951929371 671792498 725051347 214006371 936934707 944057372 956801349 624294491 966654361 890229763 977318094 742977373 996052383 326606759 769401001 905818973 947619450 509007849 619329022 492003142 814007944 863242267 922776435 556595676 689228423 852224633 983216684 400383141 609304886 128218376 615020879 980229705 989135207 851894839 877486220 315945056 390805593 894186501 984266941 985963711 991318954 831581168 952655236 165450551 172309070 95571208 732371679 774248640 909792498 778867029 841788970 987395089 997169893 244163818 899032847 771077240 959800850 39889368 89097918 939549784 995236366 122137876 447178124 428558401 567699768 928545232 949333460 721628260 840118526 395964759 591629317 4100980 700020762 346766219 989983528 309605790 829622578 550156793 718628048 734630776 899940259 375849733 990038668 79402546 160619853 480038568 786409595 712320831 743780455 145134152 312017829 702363304 809745701 174435424 276901139 998279246 999306157 290884608 604028106 626812924 904553530 730573635 775170634 840016893 964925839 88632192 598651775 549048979 619094706 5515831 840805563 777507692 997896047 428655253 732626384 56525544 324435797 70218675 667705941 821025980 998018286 586615038 839784539 186772635 774009051 295048545 981796162 931632602 995166025 21200401 822340986 488416220 657090144 236651890 935709461 536391060 591762167 374344124 624979787 628938430 722650707 575948196 654435961 606015954 789942190 866316870 909262171 473541824 677444312 957593403 991122342 606047626 645991768 325846898 339645212 224246830 946552086 980225415 989194265 281605702 839296479 470868604 999210780 126264933 753533181 287377159 965375324 316280222 584848402 573598456 984381928 226779258 916993785 220799631 363289536 682827684 982346826 956059883 981974457 674402344 864385342 953745741 969271234 388408947 578347013 742729486 866068538 58968496 533057840 401972597 992171960 656960439 968413613 32280692 446352402 658198599 678010472 629691404 769276224 563705015 790094596 367306839 737679963 983319943 996804254 267405143 544532059 998957014 999390025 43375447 86921728 953686979 997078501 687851447 979069717 523036142 937468406 928526377 959567477 487862176 734556928 18993322 307761696 613030150 858923698 222674247 269207586 296747095 572031530 483273063 579134883 344269478 810768328 797430575 844882544 739817303 935559480 987857449 990868778 77022490 508549655 401790102 930993501 454449807 688662047 107358137 876825683 730161170 856086626 318960468 334484610 324518749 427911061 935387282 941239215 41732396 92808844 841245158 917753585 542010341 565467903 364491730 633786415 641018867 828103250 114514058 926746857 300548055 737079705 911121490 942699395 858972845 899855509 363119156 395447382 897120350 965834928 237510744 527351468 914959658 979677223 611095797 791289872 487470795 890661369 535321566 920535625 544619747 696062933 257784286 683782754 355964998 925754611 304036281 504923790 773269800 950785940 559157539 570336215 223352268 595829815 499369393 649583824 815757651 825819556 965939166 988867899 918329900 965098658 776023673 890390921 219604874 925560203 919262022 922625113 800748983 920571215 463079945 653916433 233190018 949831634 588984757 611975036 220472202 875746298 281789444 340218214 67345307 518903395 754552558 944904490 190453631 975267754 252615962 597285452 548909482 706344246 266390624 584864715 140668359 264594505 643893842 670020355 650656182 756563475 899948608 909256464 119035205 470576750 378977843 390037076 794994823 984388836 727019783 886402068 133329289 719631154 158967256 946737398 543385358 594219842 597290601 600597024 932526373 985006816 241739400 527812549 777801664 918226018 539766979 790591386 739493835 742997845 440687515 611162160 276062489 330801855 72847620 90566785 163517550 331185835 226589443 621117508 755286560 943061299 477804510 896044284 283223303 852869282 25204970 104720660 140482231 558858017 385108089 470400535 966440574 972228786 572548576 700296922 901583300 914964661 639373608 828687520 771857219 890067830 610747804 794318645 108495676 859781070 181985526 640367383 862475106 918470091 865813393 998243321 305446758 923132767 884814877 948116740 374546984 744107658 990476032 997311036 379205974 629270183 534039370 960568414 145430993 386327502 654877734 705798388 65045586 733229069 714321104 772158616 495373958 568231135 428936236 537264229 814263843 949924164 216183545 506656373 175407054 407004756 772700092 903907740 733154202 741949008 648799347 878370384 73419354 151804580 745499359 969597884 661038017 826215732 636335746 776352978 781824702 880166123 164207223 573454317 894913874 956590130 378884162 864717539 974268238 985040015 138010568 614142457 989016508 989859602 578582619 847130168 93266293 691789681 869735038 901846496 357984197 664011440 991193117 994793641 903771144 909072280 198505391 558356224 372608349 388686331 859537644 900976551 138572684 834612031 487223436 548126797 695151829 861019772 327386241 799755184 722849818 944852068 788072846 901565713 421495694 743830238 796311026 869810883 802447159 863896651 977358920 988692136 277565252 549387460 135460756 938818280 76959585 268702096 1109877 462050813 541553987 912989401 931317528 944624410 119456927 162342955 492683820 803450812 893697853 911237860 975671076 991698623 707858706 998877978 247830596 355111597 532941722 932327672 937685612 971624749 854697362 971910856 672169734 700297140 918551481 953896260 856434401 945276328 325382415 846400529 270317811 499349451 324113298 469895009 851073326 864068083 432736431 952060741 339057555 344473067 551439548 779688334 44311281 957144777 515978312 697358382 858015597 948226252 502888984 955740482 479396137 890976382 484985699 978558156 727751972 921685173 234088985 886820389 270270838 372335697 131435890 695540095 341703686 470282170 286677503 299976097 532275882 688183836 590131120 902381834 111284073 337479132 128259747 173870636 592204782 772704742 827986974 989028797 274676812 970599480 397261598 548243273 930088997 955971751 366479598 675161937 89586622 629972508 417722230 700198321 734456529 749860256 785201944 807555312 98806829 942101443 254501038 617755328 821316267 902310379 919064804 938951027 172595773 884285652 865280360 948636663 85953259 588857242 933511215 953132379 90605811 381934897 135189056 699363918 480519377 513206805 417477387 927544745 110392378 984361570 57921865 607584497 91253564 909434551 719343651 818012494 603658650 949207900 992139380 996601688 829172576 881889818 438463789 913485344 120758023 543654538 918846774 920492246 740234834 814277961 57678054 358976664 626835983 831501995 850709930 996924933 861419083 866778777 384910273 539990532 103049174 812385950 975627849 990331424 296790556 404303141 733392715 941839879 287452374 828066500 163649542 249973717 563497311 838148347 40594081 488116203 538692061 767044425 976799845 987392128 779524766 941299410 560974475 675023594 228433496 850695292 88030683 905509978 916665632 974690564 908297617 976867533 513527304 991870202 446277836 881784115 509657897 812763789 388367334 398997914 233798409 246478247 621920297 976884205 545922302 910108984 479617213 495563217 997413592 997819105 503071089 569322862 346007854 978306163 172156372 785743980 145410175 429371498 361080121 744797502 30838418 708531633 973571512 974511642 614197106 795232442 813335412 921324540 960919945 975360766 667620034 668069465 636144368 911191094 410042559 437093071 3253529 769026248 85535923 130887988 636983583 672679000 646743357 666926526 85525518 190205467 319459988 556480837 544629891 826123095 735256338 943675792 270944355 931883340 432040014 645378929 687224637 846760466 493042306 621319479 31002621 261098422 303429817 957663411 247989048 730973247 620114984 931466401 658153438 884451316 649875894 977178823 14569481 152258942 513848822 654829909 36922277 770120100 108692973 257826589 538061295 792600851 985640598 993311856 363812318 722129146 341115619 765551135 382596151 980778561 324207918 950864429 805989854 973978690 45015853 74937206 500265167 862996189 619617731 822266180 67818696 875437966 752623911 997459478 282417272 778777957 809219686 820363785 755023688 923532394 345878487 921879159 928690414 974076873 390209091 912605201 519617105 807975603 851524875 913059900 271635436 363216207 131275459 555184917 425808803 959131869 312772149 368885540 87490450 653166168 637591991 738804349 167150588 541254010 959596372 980865837 842379424 997606856 832771439 871950417 139347056 864643790 6996983 834193841 601375247 802270113 318275634 416044302 523533180 665217795 393110488 847066981 57937149 850448412 714230822 795664562 22565706 647959940 494045270 930438954 381748078 954091983 367203375 731594167 432290652 852886619 608706115 764127686 297692780 966853792 181741599 844224789 79797493 99381650 887501685 989838773 99179903 814297450 625024482 648431686 774813337 890713600 250447000 921569021 354311473 501696592 37643616 175703895 997388081 999140576 21210586 335318822 694964389 787593985 451597753 673596518 409544277 924932061 94591917 116754382 411633001 970957614 762986990 941419491 662736634 876510211 679029324 834898297 980854051 990500381 248201489 665805790 42039399 469984149 624160346 844952865 352444272 575821580 786563030 848204445 221080487 362587653 612229811 651221727 712475641 905976728 797688789 912589529 234192436 609209788 665423209 670330279 328728925 925225853 411865283 415248756 644705919 800784548 98115145 838750135 472603654 933976686 8561374 457588276 592014274 914376273 505288051 932527355 685813820 769268856 566437435 705206619 303286937 513216046 21827199 896535370 790702542 955220511 812339596 845693975 505191550 773665314 691969540 986786094 956630811 982168070 218226745 785600348 422542422 637077297 697386107 836954904 719618245 805797094 780785757 959449074 866392953 978964061 138333319 262494718 769859762 805932485 542846426 899777157 20354480 843059473 531183669 812740103 96567637 719638014 583797524 789595686 1137771 461362847 390057844 973903330 661570618 942537997 430316916 857155710 647016430 680200581 32426720 49450066 909118862 938543722 225545044 249425284 218647376 558809049 140138058 715824010 593235375 786149494 940802475 964077288 56097796 939602121 306556256 653618304 903421764 980027564 302551046 866253851 732542781 808606110 991228723 993067086 927632443 998857932 485582742 819008939 96226925 116771814 499519729 510057240 3468957 231115528 287030263 830557222 582549298 841129555 827661505 961124992 418952390 659941995 686018259 832965098 128602259 736657013 992101013 998836089 994298609 994507241 588209322 804233777 768362629 959684026 315508466 898343827 707577871 927893028 312370763 605066456 324552295 843389204 170098211 863637358 43534086 855068976 61452599 445393951 695446088 793029737 518974742 871604232 673006521 716120938 348010592 496689230 102454531 574545797 440923854 902518407 843046782 986514611 880495787 903265123 304981325 681819918 38384647 372047487 264661188 577958924 172406579 891048201 766596311 926316550 101586173 736777664 212146667 344132717 212131263 585540688 445359204 481383199 922344269 957894778 425064856 713835828 601013539 733915585 410733645 451868264 140323151 408977335 837879289 947006683 630780838 970052106 5472637 704961411 217396321 695366011 348127369 515310915 715941164 888267678 745480250 908767209 163283617 318131498 368572959 720838167 287991081 754500648 916264699 954050303 658239217 895159944 532316290 934090834 833044802 891906013 589329940 735293061 269821899 654090706 380477561 486146005 684642508 835580638 939004423 971102584 685304804 823123174 230047672 332328843 786494298 907207715 448876402 481695141 761373545 813608274 672080322 731386423 206700822 922608734 142637580 461953453 458714956 685201714 434664094 703251909 847038566 900087853 917534754 942614287 199082555 952558114 391747514 716726888 139619481 249354379 221354407 289905460 533189936 892315633 655830487 694387724 721234849 931387552 834372046 854604799 622008388 924175026 872461469 913796505 31339533 513173989 57676216 681416668 506217846 933062242 10418787 307800359 741503502 925708187 404631236 813069693 798772188 827662154 986278545 997081126 580274516 598458894 387576347 832716821 439397214 977895903 873599840 877652647 292112649 935776870 271423668 355632659 936629533 997854867 558355466 708088131 987009182 994110510 708034073 846594499 120986817 515802382 718011632 741317755 911664202 989768683 242262809 388896304 455225479 516531871 619716559 729356622 904126388 912043754 890588819 975784091 997763013 999391500 574270684 587814400 243229392 757546311 238653302 399309304 941397819 980357671 274720374 745217653 595769055 601459366 337972428 908915182 677702355 763405597 774671635 837793324 506302265 997491770 791978507 942206580 913271517 955710779 976595034 995366629 583665262 628313032 811927359 949226994 959090488 962521906 57117788 77190641 71381491 510178968 426109439 562666298 705418845 991760817 782847996 994267166 415460690 955441486 180137804 496776905 997969372 998972213 724372812 747650153 480659758 608002951 670250029 707651450 210770774 407700249 438652536 683810349 655518123 844593589 206742089 626684660 367918616 377940831 216324890 218355733 205352436 216594578 394099225 592918631 485990995 649193026 609336516 954630427 395471341 784811678 759986416 809180182 87084487 181861351 732241824 738991081 977458585 984892696 946462054 959333367 935322304 981533399 985284501 992426737 727345429 922337098 930489186 950771492 476232361 840185150 626765233 641292421 511961963 704012779 253989506 833086925 515996721 740325878 394172870 642900779 454798804 679490377 755926681 898368872 224128650 376802778 257132384 434897953 914112169 988564265 432278030 459840741 564337044 899186385 156512527 923344202 157717968 857377445 589762029 740006162 881894049 986943601 491717146 746117714 555215395 698845185 616021438 933612291 894600824 963801914 35861822 990661217 624547974 864027446 109070766 565689039 223418689 336513666 588912240 776314865 30686762 847879560 860847847 873921280 411963009 947196814 378503401 987112902 216888110 552056933 926970840 980507607 444082318 734098090 631965657 808311455 828439524 925031538 633746413 885500983 134543187 707741086 641479734 646654134 969376776 986855653 17235029 555635673 24823267 688694948 684075738 846101829 677860971 840844263 262535437 974689696 204152974 261923034 496851648 966075580 994691125 996887886 598788882 788261599 679056094 717557976 316632249 375313899 780346844 890029021 718360891 754821789 699093327 852000907 722505633 752215549 255226413 313235602 897147585 947683032 120673163 790293637 80912471 449080135 783979042 859444429 689644937 772881461 505611547 547934579 847230386 868579745 52198615 76816720 433649396 641673620 35648346 304862442 779155725 958838612 554749501 675447883 437175886 464544764 514038968 772777853 912423152 946291342 201884303 845694512 334899794 375584816 820176351 822420486 199964958 397242361 656406622 656982249 46291157 486410252 645286397 923622900 491927191 523198174 709335400 724835837 169564446 175721330 288119344 817317871 628138982 773490287 22211815 184021391 745996699 914727027 50339166 906946831 685714333 950232314 439290115 788141318 199034851 330440224 638138082 910182253 473614176 959420613 987123730 990635836 737891660 858203334 701614630 918718392 14586146 354075855 141085617 742310008 48189848 935723547 571050645 928194167 304784466 681560213 756183273 768623439 859420 157086140 299079579 833859150 442611556 632865088 3486326 550586461 680808445 971305471 622952976 739315850 897005947 917064372 257539305 724987177 755516541 987115548 976083701 986123029 602073319 814175739 818873758 944854020 348323309 620451831 746930229 795455199 684748401 905133131 357681158 410176260 593206729 697830041 353111144 374394104 622694759 744423690 705489538 979100630 124277590 757824976 475549152 657043505 318525986 361496217 142259412 357368461 936146949 980738049 885552789 938982420 345254236 982405653 37769293 736832620 271484156 952286749 579330965 750055951 420416659 594533814 780032619 968817722 985623357 995961277 963935740 981294460 607918963 638015496 598827749 849045059 352342760 767861329 728931697 767999336 6696818 486224419 445995355 971445356 526079548 827011174 700009824 994600098 830056030 842398006 97475207 964311188 338825610 815250334 525925560 809859984 129653408 830934636 383547557 744701170 731413669 943139944 921995958 974008025 343842992 649938578 741710974 818464957 805046732 809846334 708587063 746544970 443873919 838058609 396783867 521237571 915854127 956642579 231326362 355692860 971795760 972828672 736817347 749885771 82937952 983409427 299930187 422601973 556549649 707012600 73600651 79637672 997468572 999181190 448650243 896614302 292278013 907684174 847205418 876579101 960857949 980410288 923859564 933466875 910291882 965985146 472841910 830334262 465624389 873997624 692904421 750204917 895016282 927864421 861578752 917693269 36643124 230182239 880705585 937777308 215350681 440047066 800443602 835106938 363656677 692963304 110729578 237757083 257774202 369398850 333079944 351073669 49214908 474170413 25701982 150455429 573889210 644069788 249883012 578744817 310057049 877110307 604253915 928743447 638672261 819869111 978280418 994618716 169454718 229700118 215772776 689800493 311002098 381838710 468215129 985423262 167937085 586930852 732995551 830588131 698201904 795059875 806762724 893615105 904052483 937595134 584346160 815531119 934692406 977218855 133224106 589212288 46579107 483662793 634648930 973655361 883392633 888474856 948093632 959441428 670170774 737519410 211884964 500010288 675029347 914762122 668439515 920492701 345165505 652699760 267408488 476987920 732175986 855543274 837124633 992318752 265560107 483239862 619808404 845179302 870146267 927802974 665462429 719782088 147034400 922276126 740559651 909406811 134046345 251471086 749086697 775893818 802968486 919039001 174448366 372723407 368385077 391224971 594700815 663482857 971410337 987274462 688157412 855823358 344413809 845581992 107858934 964748238 587410269 801554323 225374578 700577198 235187829 930255429 606395167 700425195 145617103 509674318 216007363 542114481 251305951 865418250 510032960 618939715 793384661 868486755 688152041 899312175 625202256 825766324 951950117 986411753 42407193 634078014 841948997 922797340 91706619 251132560 345751771 438174746 234629442 824399357 566919043 733231262 479781045 987824424 538417705 983916972 446700933 533575741 432073865 761135743 198382416 831833918 459989210 863740601 620573726 828970602 988414360 992169648 554620686 883029037 27553088 881270000 592783316 791797378 104736022 561869823 501393108 842583099 839477945 972010316 898550678 951111951 377607409 392859345 359173305 890226235 647717461 906395261 175628086 179929222 173175749 431916611 534268326 638408366 572873644 913983446 816721524 966118529 124581987 798639293 457292875 609863211 37895457 218285282 624737450 817357484 238770 585228890 260789734 742874161 210781312 269172031 432130599 842085468 280808228 462616138 936037477 987340961 49641969 422065089 639758239 663039344 964238270 995787577 495920413 561731665 147981379 906596228 204955552 711325550 829914187 962134322 68130752 827426154 540532661 721392073 789762353 895194941 319768033 474519061 224434240 477978516 796445398 986898152 666600198 692992516 394340437 792180145 57538807 103229751 131756805 763895543 133310516 168142571 885800777 907183383 948129082 986512135 128013196 458486957 864224402 934941640 325193820 560811746 394642096 955577416 484594927 593397260 839494824 847864650 15966697 31684715 215536820 526955777 544844433 993237490 978688832 989994316 863821416 964590125 177608549 851520387 948710819 958718069 562758710 696801058 653196781 743238798 611639353 966325996 258596170 994658239 162569004 294983527 278766215 982894265 562423131 871737663 731785367 817915231 712593723 928749458 762887379 779437336 789552194 860662003 715776759 788077949 413890546 945006483 958773783 965583559 468705029 974701930 818206705 959239888 165868859 543571441 654828517 740021732 496454901 917000121 657322081 838933692 399858969 439131442 111082568 727009869 279686754 437734270 872431760 978357825 366408611 508549665 402964713 657073088 639143396 974640582 249478024 873638167 331061495 809572243 778418257 843563197 568957095 740003288 328517454 454974262 916862601 926326618 246932605 667381529 976466110 994796969 623358759 986634571 793995231 844035331 514391072 603951592 161568928 953219155 327102409 527332782 69315996 970674388 710295631 743508634 825522226 926810447 198742981 661118385 452998759 698373174 866914625 871028549 308190987 759871409 326477400 563868809 870325912 982448559 456245828 682237965 617084859 882681447 346555059 555004788 330309404 780505629 949944533 972105681 185849153 335755801 417287352 990874307 753367395 882259157 278892518 860784535 376051832 820394288 201693025 215925115 676781764 839510724 437062833 530058751 695787462 723912778 791437394 818086212 200497942 783607109 947183149 982236302 745437950 991887735 886951489 902592103 289526028 359002210 985296024 989168600 613436247 660327530 166502173 851975675 124001652 220885166 965932498 971915527 542438045 899580876 134556310 170043620 942453321 984962860 217233469 797606654 33765451 801876370 698583675 917084114 327301936 809081683 205474767 504067559 484280649 681830981 334138952 478029855 55197249 627653838 291427859 931363103 729008274 782134448 190326270 457936829 551698861 690108031 549667292 990341848 339771565 681332960 446409708 766416279 430685844 595958495 327512234 585082660 205271132 919272596 407625646 977850536 446321349 847064892 293407411 635879903 805063715 809017970 395789217 626065989 711123462 884958190 200023268 440776562 211692635 402210792 139760838 477363879 331486907 539086509 463298615 552665900 461246292 797471008 594401174 910256410 985914833 993805115 926936320 996621519 640198006 923091214 644989319 709979494 452480772 808921497 236865356 631149180 452547069 759406286 222142809 730871820 822893775 994880084 712798691 887408125 896993090 988956773 488272177 894143126 510868362 907229647 179068038 773058062 830078896 965611934 60113656 231174286 74266852 218388812 468490294 796603556 951109583 971385243 281981695 414706444 236206847 483170304 411467243 461480463 997859862 998188040 888748125 970222624 522597844 890958824 242490093 529869278 178047224 708228708 897585723 913004142 557388364 930630394 279031433 905980689 755723360 929290701 788247217 819783778 286953130 409926475 416171280 773903691 40896176 603423767 244223681 969158812 84493167 416096075 340076444 413640788 4021973 896233893 632299936 881344406 417575841 623033410 70925808 667804968 439128227 578399638 414271333 647445876 971298759 992249758 581878837 690497775 878132209 896515760 577800980 667894438 162889 492006758 580866039 891912149 39156050 543707731 492121347 593575574 483465942 654837465 991379904 995805441 736565288 963147311 152809525 531216826 958780297 993589041 542996103 846272478 68288258 919592903 624469257 920224227 126299738 877072156 887343718 952483525 130885000 428515323 974979660 998774763 44219056 72075618 820636204 984783084 448211224 787166660 893059540 914309916 963501808 967738517 137578894 910619454 982440554 999184813 212984458 478180572 882436797 997204817 338724827 681604451 888670588 980587945 309588877 990577694 36780587 190223382 791657706 844224259 579056615 726911795 347528116 414060997 720819721 931620856 824031817 932625275 200070952 509798215 251169106 883273567 553984231 685691938 637212740 732796001 591194928 619492366 193824423 630318103 574095419 595136028 86348322 867483389 62005790 431730946 672958196 828277746 186678940 876336493 540410627 687631240 950334783 989932078 123763011 657807822 849177322 917338761 804550733 974923610 951534086 983860368 223662654 751116018 609907484 897028150 202447949 931573007 595406880 826083105 168964852 615182869 889056283 911257200 669284779 811863969 33153220 480241501 742112489 920129784 408738799 924257255 966935528 980933882 410155010 909811203 325262152 569322980 391535165 767274098 342688756 666474714 62545174 972499945 633661104 792786930 168266255 718145471 509379129 663738301 13132828 722698870 864744287 865603376 851067340 872688568 887352853 942630788 408843616 524311686 95843047 852314000 542636960 580033954 272213821 825749800 20247890 38836789 584657650 839112719 77638485 606990411 70512460 615752383 275888917 359724301 798755608 960525514 317534593 462370023 906633926 931676262 74606232 512142298 17873653 850539210 484560735 619578729 55256031 340885376 342912003 871569634 568194626 898205214 48543090 589203005 359146648 960675445 576745780 911162471 834893249 939781310 383430890 603313288 45381413 698617236 674234979 964486523 350438898 434718657 597321051 971031051 542163751 801741609 152185572 175965544 560306788 875050551 923574460 956218209 186995941 308634881 965804212 995969437 560608247 816611324 807362848 935330160 702063468 963660330 111192646 675114630 353286561 515863226 700294153 823441291 214474000 384295384 867500903 937667665 50723718 587785113 693298438 922825121 113372102 413295990 494325208 756677254 117956698 479027236 410180403 574111780 650517626 738393338 199975536 783407040 104242280 211744238 12899158 796546106 451549802 858853663 857351058 924751940 577416305 590726561 248299364 413683617 482463484 642745443 729268575 730336448 542175570 607811434 957364670 958510096 867981749 975929373 740851988 765435977 290599309 300640996 895954717 922161598 141369582 642690336 704810820 805928003 607862596 983707498 453386296 755568697 308895443 639455576 942964589 983258144 989676218 992519634 280233781 378523540 53794693 636803160 887875160 939689411 841769448 991587892 947022422 951872231 983757073 984462051 163945289 572033392 888359004 902295047 459963029 904998663 827353088 925759971 870753208 927412691 545250588 597695469 755674954 842002087 962200898 969314419 555548977 905625777 265494603 461057500 49714760 159733132 150027195 982984363 524179113 862771683 506352903 522317733 940535399 986148171 94448297 718205905 295607528 552226345 680934808 817606179 499841210 820634806 195502514 865385793 225786165 464793877 711544210 973142907 594766753 773315071 335222806 597072647 603048022 739330426 863515581 950764332 627016830 960562671 840918658 940547741 565069088 812201645 218093008 784232917 827094122 928234924 792277240 973990712 210899068 626257265 42090848 765809306 276918813 945815065 485594838 790282384 529737338 788075852 504044921 634600837 67355074 162607206 989670276 998706964 571750587 603881432 404786239 724992674 193408457 473275738 862801180 883665011 963032713 976091365 735809365 812319846 289788892 506188374 192100363 823817997 562549884 891640292 524466243 602356327 246386021 707733776 78771648 785436194 157042806 966023187 160470473 890160418 722807054 891667360 731020918 796981443 374863320 455070638 58894659 573666470 394149162 602830482 729716850 798226967 676015132 862942192 992927124 995230252 758509112 940100953 992473515 998978095 42576707 556365851 301812701 785059023 61977619 841608759 699483513 996241899 627892321 812073356 350540110 770896004 114613517 868959145 851924225 905184082 627364397 715787336 53819578 497638912 903794481 994806214 63083194 601161890 360249618 536759381 676125379 866650971 641098828 649082015 778498797 921865514 106664049 792714834 84709221 508631559 766253820 913944794 342774113 371359764 389600514 749844845 936782164 964162803 757027847 999318893 212811367 552486875 980406723 986381066 462652225 630333611 798019620 905124155 362230855 455023202 810616037 894920063 327908005 663758750 871897087 974991923 329977114 385208934 962167080 970549306 97574407 199405889 125234401 236719637 174700581 244073284 423539265 686301206 169726691 429659434 269374981 348962748 903144842 966525824 990735519 997079992 827316153 882702497 833759060 886584716 324579811 416988895 327912401 599420855 505989104 580915281 983618877 997095387 746231440 839214783 285057367 553289157 253255028 637458318 280679695 987563022 960089786 980529736 312355686 797859545 123734302 466893583 555492263 878985456 986405296 996624487 182927704 307082983 63121901 582011771 932469737 991775145 572639587 804225924 320563125 765885703 293158218 762588582 866339518 872189571 775280458 832631898 74930849 660277986 885445040 983258645 1378584 764835933 906923736 947534271 646929160 980441676 811966265 864950171 998128841 999034057 988600382 997106983 900024394 909204432 696422937 810964954 265379162 589908877 376847889 452320463 119421778 429046701 902026372 925046694 113852621 673187000 309280697 896640309 395126461 639159938 968583361 981251739 894346219 967513501 14734191 295242763 276317013 416856811 689266454 801184210 923985337 970842818 668028698 926017056 326700171 926648371 195912253 458243250 298894335 528566510 93533405 932938421 689423041 974449270 123178093 505800096 415791755 740372370 701512950 742611647 780124244 871689477 709458245 944812305 496614162 860678322 861456845 867631838 966052511 986795889 543634010 931534845 450620525 646899445 990777680 992075451 979184454 991980400 760339820 931452704 818820163 843919558 961350676 974359668 627086518 936383943 645178397 709424704 445512861 645041136 662364397 726386769 432379871 830811494 212240675 528389894 846416204 915450899 887208218 956370073 146195202 747641939 170243382 825677789 271784071 884444041 99391794 837216793 450113631 756516327 725795704 820805129 382046799 576560341 46351316 255824425 155777955 878889120 246792705 604438871 928382323 957260403 191170113 378546607 229052813 741260762 518259658 636795143 872779902 908819317 894696936 975189743 441415432 847974328 425577639 946838376 687978775 939403206 947352271 965844031 348807234 898431054 908769370 936758512 210827023 605190202 785699199 847904936 664754520 872537051 252302303 798795698 416420146 920415595 963288715 992842974 346261842 445732816 737687347 993769238 787751686 994613815 123752112 572570919 736566139 973619033 644770307 841954028 606635813 633783000 572258638 712492680 956038639 979971205 593847366 681090007 119123450 555528014 23635113 190520205 872822900 894932496 714849152 775033894 625602718 894656534 347517790 870478092 572540021 731624497 3182965 20141443 644071474 776728703 690725817 731222252 932034662 944409844 487849391 713329713 864228976 908269675 555868074 903437063 256051856 919037878 896271053 965918528 174555592 503473720 585264142 673302329 485353607 916839523 947029658 948681534 672458055 883379598 715566412 882585560 386957806 588245640 686506866 992658324 945580149 990593103 410626909 818072852 193433331 976268263 928585787 968499167 531146009 852928118 284304133 670920399 586563936 966724287 788190951 963591261 987284444 995591533 802804251 839237151 157532765 275469600 338863007 578247604 677994920 882470516 502788694 582446135 272454872 627944936 278458616 944340391 366125790 972447380 811356747 923615648 536823561 697676783 668501062 950576356 998580100 998714518 564449403 710105290 99606349 614037280 196936291 579835290 312081001 394249814 288557807 643281099 139267657 199148642 675396619 707681045 751526139 970449713 335452894 520112955 485892217 742172970 97100492 268554504 570251504 577255363 371781096 901462238 1269202 651373999 529935746 729341732 356589805 976896367 345471197 835535654 27715719 76116404 460872960 471207647 727684768 733627839 402574868 631649338 205481577 976917503 890216180 927032890 938527623 989186299 662156084 700338306 647957678 829159504 265932214 905151244 122826684 713358791 610172198 912058854 360707078 471655676 592170426 972513949 64979494 626018784 361454616 894713034 189231962 740675572 69614739 74925119 98787126 768545454 681245010 857710860 272989880 826033861 964027644 997902578 602181067 610158002 393958613 591826851 785291125 826665574 41978021 995386662 25877641 509669943 812458271 847514920 834575223 908355975 442727757 921542786 648590375 882761265 147706022 537028068 495195036 509217254 97677790 602719562 133287200 891269053 265122592 639156530 193647680 844502010 190705932 825747195 390502072 744116552 212128605 310098698 153210524 925118649 887620899 971632227 744506564 804987762 189243722 218755177 799915676 882145203 701817415 840171089 173940905 459582927 564127946 649535461 700744390 972270798 396047902 634721588 876606981 909084415 912427802 980111881 391477546 654038145 128502606 467774667 346681022 654037995 110168762 624354493 528646184 540403646 272248114 581675714 686139733 757978031 924485017 975560431 297216951 585980425 931000075 981351358 524042269 692191398 692927376 768269502 852698664 990638982 288582753 972705020 90161810 993682934 517369831 920481271 648680879 752734556 827505944 983966899 570903417 763798251 706771581 980297168 524136124 678062258 981067080 985821326 222656485 395261857 207461480 214065227 687285810 863545037 862788408 981765894 514111132 782321918 758674002 765453077 115805807 340206450 113698496 784147715 519325389 580403253 289155459 904156316 20030022 56305624 622368762 673752467 487133058 597019710 884463954 979967149 235643629 513964982 303194267 625572146 247633726 536266244 250865687 909480148 350876006 417974722 624327008 711119522 125610753 433240252 782341107 817681654 845749779 954830230 686986612 997843918 177696056 886582012 868134903 922767216 213901580 818480502 261351199 297761041 247786593 306785092 473229428 852901390 196847898 859254005 483772897 768052594 187523494 867279825 131620397 736129386 90324682 899491761 122733266 164098308 633988703 776538822 534843059 674375710 193760079 349435255 530961578 916039069 392000188 982999634 871817086 952161783 537881103 783222079 75433956 752579672 54893561 635143649 430514926 492821668 316255015 872097567 916180831 978176814 225121386 551117040 512442438 612065101 903282847 977549175 273981968 906784281 85599274 947165414 562960719 862661059 689896567 937732282 973314209 990420519 492330931 645725103 625883379 707895137 756455587 853756222 81737242 520908450 13249339 18124184 595738239 617307840 996960514 997205859 916207123 988823672 789813444 880046058 426470405 633244280 2246302 505634017 361048391 526944117 958709824 996053542 415185178 989255665 564467581 997073759 536197513 624395543 945113643 991896256 508362689 872336782 959491924 990328907 725220009 773819813 48284787 626075046 377791414 814998409 645101453 991552341 765462111 885471930 901231318 961986300 460035724 551626630 773331239 941955040 395567327 707575708 400490754 629020757 679948970 891117744 249184609 620000270 287453617 550228406 48775900 364100331 114883810 387966714 982078685 991300137 519795141 850361497 426013114 453813825 593317761 812050116 674841691 853980055 534694783 691194849 351715774 694392929 965488126 979522614 926068625 936463310 857965258 883908270 804100647 831452842 123254589 470687904 402805918 589367894 616976886 666429732 390598941 795154721 526018619 543444116 535143076 679440182 870879592 930784033 726594480 827786985 744527235 786522418 742063692 862004157 3124731 797356510 51066451 220724290 289769370 617081425 957846761 996575165 149528334 714083406 700708487 915245887 413548889 797171105 603079455 902020196 932088040 964093479 881413916 988537791 874476239 997107825 623520439 638900819 900501148 986376812 797820323 924398123 678932160 963054113 839614173 925720879 160958725 503340382 745116059 786770179 855762657 862077660 348580963 504873669 850326937 897555649 915572515 948864775 983141458 992328251 384797092 407016318 895399061 980051482 167393899 461361871 891625480 967600333 730496958 941441094 636596370 718713201 206959633 799959620 849599565 939100798 354112148 918161130 440545946 894028553 73812598 894373347 957687956 970136430 300988345 569255839 881586932 945507355 759308103 829462194 316598466 977315598 390849225 608006196 334074431 896293574 753449279 773169450 372680623 414659127 197353700 483527127 684838945 887383454 564155231 638497147 721134505 747649157 600463466 821167861 293133481 786605510 244909042 888810313 543840759 821623708 768602050 929512370 655328260 904130707 978507796 983164540 639270121 962172731 23690310 795338141 203054854 558700590 781560917 789895952 897603516 898441060 545991576 992452462 687505508 963760387 950114090 996575733 34572034 323751457 241342895 906074461 527091961 734075877 916503270 960831365 320555812 513082680 747377762 808523202 687907159 742896777 705853963 980506228 373038883 752664116 571919018 907899703 856494594 951468416 368967968 750081354 470872527 740824630 546982882 976911543 64709682 327620692 883971610 893240441 662357565 842839551 352541018 397575144 69528541 133462547 291280392 316179900 967765886 988181284 411525802 705439819 508228986 905849688 383032480 831668897 944111207 960959506 378751012 801797298 93655216 521180038 39525704 130572789 699714062 932621539 985938975 990956615 299984771 519962773 581036719 957894654 298410260 362982785 263743247 440289908 955047903 967635331 392370067 644598286 571175343 632461125 967980690 971262854 888084558 978185188 536391259 998836431 319101724 619351969 250924228 480553308 497664634 596881390 970710429 987409530 772198296 957022470 23260998 50828481 751315707 822398383 382213921 790386618 230470645 253046355 461476424 722997763 66436443 460018935 974236996 985392632 457612288 640397497 735397861 969415647 444385347 558583498 930728568 965250834 437387137 794974534 745848274 953973917 928586316 995642377 276234756 936064903 437711164 614935511 908966226 963577514 76516500 982123979 898390884 901036869 446399348 475991848 742404882 837189650 870446521 879215277 442020370 758745990 837787553 870635694 996986967 998566347 872166397 912948374 330789508 588826750 781323580 864438273 968015542 972292881 901702433 989581304 565149056 736849389 33508357 785079279 449567012 625384360 77237674 886020147 563978732 798489634 661856828 788773663 323964724 598458242 322401379 796664223 446962737 759179310 353966096 426316420 824495038 990098047 739017439 845989687 758324243 948773968 84702336 112124444 549075445 858591038 144006761 883207007 41663052 206878133 648494943 679341169 371473623 942975930 604700582 763962370 734156654 887832004 747559428 799785400 395889756 678154494 776944842 967603400 186647404 452880269 16704768 459404522 715314131 737941814 356252693 718237472 698108186 732479880 419133397 441555642 784099892 853818485 84945601 167904906 406837336 452031157 607069765 886903863 501848056 549588080 979921721 989396954 457152035 462333895 288717411 431037987 928168505 958517300 495190366 845193237 64698244 928706111 500852850 559019176 968353220 988404135 151970412 368249407 911398014 973150643 557478990 630292376 241005908 950143210 890718897 953857894 290772277 480771959 720872798 874852712 473419054 591770712 769060306 810913265 617949778 648919620 646435619 991310167 81387297 98760067 21694230 656252267 27700210 858945691 158184107 455458317 88632202 170780013 543771951 915314692 710707991 729020023 745192158 855506351 471187264 952631873 376795617 745919273 27731059 138476868 478386098 550373842 11255873 202527265 519359669 703600714 69820193 894923260 212469253 582780960 467165450 697564512 974885771 982394260 88703441 282839326 645079302 705721991 157783086 872024192 681411418 709347478 315421400 721116554 447439951 961411314 814344330 989487019 580982465 686330759 615524363 970491992 503012201 920976642 42781895 527530474 893530634 919047393 683992037 907042208 428341870 943198075 527645268 607007457 981117722 987178227 811543707 937101164 684186152 735073214 215769757 394596548 127074870 528628756 654894664 834192257 272981811 652620619 360590024 988358937 477061292 681822673 852722945 889914389 742148919 805498196 354593950 358102799 907869406 976462552 750759450 759913291 20061831 349213083 113953825 132123361 591449007 998038724 936011772 972245503 230600985 725074917 378116446 697892975 500761971 692149229 30539661 784343594 288217556 929731327 906345561 977244792 784534 545318970 455813320 619281642 379476914 642492431 498919092 564281000 508309242 770795516 939880579 973166362 644438813 798731496 425080943 624092564 42165709 861615490 232682463 639018084 448252504 775276838 444703485 487579601 507185784 895092183 28326075 900438243 640540810 957379658 187733836 842977356 318302608 351561385 439622661 839079690 634260443 791530785 883189553 910771080 185080710 439438836 262295301 333494303 644695720 834244535 753852311 774221922 604933940 671797757 887194 380075559 534539518 810384041 226829241 304055609 656751469 834414410 377321769 624892451 415461366 456655458 586499849 651796845 414609471 496507339 232246930 601953899 305716078 348735130 666393631 905466398 493730010 695142657 447082622 854318152 775410898 905394202 60786605 672762571 666938016 828007148 765585276 778084956 231406318 928833613 794850268 825072952 449458154 858371706 187537041 394227983 154602490 191718313 913426111 973935598 471782781 771208481 464699104 969797282 605411656 816609033 472132481 577506061 685194845 868123913 952720265 957958730 467864246 634128619 842875181 974429712 203276869 831949828 170528135 297710530 956296029 979138183 99575157 306635203 286601608 561166800 348083489 887802862 66237561 272789960 871559798 973528183 282279858 884343455 726242132 939899257 107595111 909059224 259465155 924086061 924920315 927395659 731943037 824268027 833853109 985689497 74523568 917036098 875014716 972401254 66385401 747980393 958207273 977998082 688116953 784826470 658019116 667364536 356236424 596312800 936721301 992835117 279911068 913966870 35636209 193935952 965374583 989008851 365537939 648296647 478420512 790772290 528042238 884806756 939742172 986820745 722165213 732831020 980283121 992856378 619708171 821882665 700382194 928495511 276687639 977547794 585848789 849804665 737901190 925744949 273095383 554154355 971926451 997163569 983094215 997275249 376250306 405554685 509533025 599512608 253346347 475855232 601722038 893480167 160730231 677224036 157990114 719765815 511215508 965403412 845343709 911239583 578413422 733410980 443789456 777169721 522857423 580520641 946644804 970361130 609345643 792992796 51061698 182177268 719993879 750671460 952067564 992404601 900413986 984104015 90615007 183066135 889802296 965866019 800348509 802465692 86661452 389940238 287561454 760298312 307818497 394720876 253544456 939747911 163980086 827645794 860496384 874031657 608785187 882108907 335328210 923779988 325269768 696482625 679887277 936319122 521307067 990987858 356930795 422731233 777681281 846561002 510323661 680451347 973701471 984166900 182117127 815013087 827804906 990012248 640512529 923794524 506500579 940055404 662414333 992960417 610741015 853307448 642461625 781407579 706892180 907411001 412986036 475310165 998653134 998710745 397395908 752430000 975518919 996210547 223789649 323801326 187601062 435813453 147569763 192053882 980898633 995016355 450356515 606703873 36824263 952756556 705236729 824121731 683754945 853067885 29840180 813481087 558700247 983584731 369537254 514128166 73874634 662668247 934018461 946062213 283570738 953478713 551861977 643888604 328793844 520605507 692983455 712041139 675868045 728218721 865400761 934106634 531942435 695717260 265121485 559297333 834313802 928617965 149277880 255466243 846884692 889666292 324402257 431431810 878270122 884149032 494521212 789090581 207255601 795738507 436825907 887838033 268498603 515066232 252133457 466190944 523473748 599547169 6065168 659613086 538138611 583268424 777298652 938378150 178683785 397207051 398596460 739189339 300126821 875459919 63700994 667099128 531142585 954765997 978804227 990166808 693026229 828395186 693656833 963186725 171554648 216070489 662681147 723658903 789628633 827824092 154074508 975619253 349627167 452179027 837442776 945164652 352419647 404097766 172729834 266222396 940493529 961555819 30448711 436439374 910830722 916105158 634877921 978981234 545740246 848364589 509530992 954167328 618694052 675002368 689695 403695702 234520393 479393519 565319637 973433415 819576742 825788800 378456604 945098035 648950329 697380383 706235434 815624606 909386877 997546232 886468890 981593619 267976515 275120072 455709382 953900145 597472084 885583312 873223044 993273625 765846177 921746234 420717041 768087969 540047687 841625332 86005866 203618439 351836134 449808912 829891334 982579315 602072053 835080451 942753032 951490175 20144604 584484307 300545940 538065382 447123053 656802818 122826747 173158700 710733534 811995443 834023057 841190133 687341626 688577640 789944963 998252715 475136820 882628259 167857332 841448339 905036421 909163216 411166361 825588911 513168750 827201689 584764304 831677053 617928475 961583585 16584763 799503907 831937884 955425926 582149027 925502390 800457429 979193015 1386 595720515 113986624 997448816 680398245 775977324 508882236 562406105 447738591 905329003 643959586 656471041 773288201 806944889 186760410 984015628 486134660 682731960 77076443 863706036 988185608 996083229 876690392 886931544 975478433 996288285 759799738 787790274 428709630 673317473 578792263 681103939 748570463 890044333 245441040 278549771 982286313 990546012 915267205 920769046 650600819 953838589 149942197 919506745 372871484 397686047 62042514 258599365 458519897 929784159 820291556 906246609 560039265 735446600 553424132 800385794 23725755 310333586 289174343 588202137 723972850 794985078 304314139 484388853 673521388 933302708 260607875 433831352 82031155 685987888 591201054 667286883 131248327 343415158 863815868 939002168 66244446 972593308 313707761 606459504 67112422 98039160 296045526 861282705 741364752 742555106 448554349 548051294 780677805 873316737 606110986 746816808 654447567 677733277 415728103 532017038 627514621 811788800 124832626 195300181 954845865 988435489 735180165 874955263 453828785 777595002 136841120 179158428 140553064 715920309 787745461 798799697 698451259 941481157 531150255 536396711 950774477 994036676 451287535 676852195 222248822 717735092 898828984 902166662 555829077 884933051 203003173 587144096 323239840 473032069 899736557 963318326 550988343 804387388 294589398 731722998 904237029 952872610 162102301 168018226 641044557 771240793 690616107 973002634 809881315 953662736 414482734 653857599 119920173 348436636 875599781 925579706 644773240 932710470 412203269 581933397 103451522 560058026 402651539 487905912 86712464 956983869 374267084 943923121 438859155 760226537 696086716 708844141 649122703 905415309 733742315 816367508 708587136 891408334 990872268 996443159 81994724 295776060 304216298 741003992 730443457 785198845 438161322 735114279 222528281 656941896 329347294 743124169 482526227 670518014 881131635 975645448 513754902 955584543 75069091 654653502 120101163 151637943 258130975 908529043 193196445 852016818 24469879 459138296 684672639 927444491 670868860 747073286 290094844 845385894 42184681 318329546 803096450 823213888 965427622 968206028 372502854 690461011 361645472 837438596 956243910 971868821 553082498 951099964 281544095 859039571 115605073 888430317 932693901 972380719 885299470 996122805 545610485 813453389 132768224 623988808 489896551 876585223 31262837 413297638 371304909 569892401 220437314 577885583 178059067 347055440 716751539 950926211 140537385 273805693 272973900 280149057 970700286 990692605 677479644 791854860 623333834 850167167 180862629 538772981 806959717 985109544 243119482 922007530 110124255 178688600 113993818 835292139 648005688 685933500 87905112 712241834 727118612 859728394 230339836 691666040 691760030 834762950 334856911 774102881 429958185 641977525 848141552 930797548 886759911 929914186 567377620 798387788 529165644 596798752 705215171 859893127 197666326 413341724 279486345 655093776 431319066 514146841 658637898 877888002 240536939 658830613 512469314 749623593 219636024 234061324 180756013 446385344 521055602 993162531 469798649 948525479 894476235 895393545 384176097 859450566 843127784 882315140 539525449 785834932 992334993 992698722 347060140 929224664 141379848 636772358 687638129 689628135 378513336 765838049 305086790 401805643 163315840 204090880 751258090 824918013 752712867 803034307 249618156 758740032 889561208 983437563 781585569 891900412 432125753 731026487 69132488 217082496 917594318 970764917 645400914 966908634 978491009 999285196 444909920 907790547 774114285 907021522 56070023 346349215 410550626 954588993 344975604 941607847 953083639 965896389 169376568 950835459 23786623 891577095 773514476 916509638 537880956 609861660 834896788 870996614 958738852 986795898 575535362 710177357 153343316 567842598 519612952 743196489 154367526 371523282 631083956 738957626 683184559 771458746 841393736 921994833 790412537 816766184 792276440 795815853 289448735 981450679 767254785 924132767 789804057 974092800 629134805 888614856 997087057 998179217 63424645 843317268 688635594 899707604 310548203 810709598 16282228 413549033 975104457 998324579 806858621 837589390 373226499 833698575 391419625 733877758 330140187 674243338 435506059 758099220 592939126 945319606 73565346 442524694 936388918 948216434 149730486 539436291 416261074 771334155 31726930 57451540 173931832 984388476 765806102 925282512 914518758 926200977 141942514 161937407 973744044 982611689 556665793 732386900 73306439 172760882 366555746 715105704 16316332 966201593 788071521 914150885 779158781 901240896 720197499 847886218 986156512 993919815 41559436 859542259 21047445 116204238 216925557 818290583 356867817 558893212 411600595 692306723 942705757 981816787 293686405 335000862 97217901 425918381 707288164 813151968 752668130 800764626 297025981 333134516 915441583 959500220 589386998 862796846 908159311 991210280 612360346 774821705 970684395 983505348 60031606 461736700 660601385 828493804 995384673 997852965 183326003 604045653 74756941 542359669 539790315 635372305 199261472 302971283 843106727 951308200 392702139 444779860 244482754 908777645 124745117 956360785 88343845 581549936 660928364 833591835 165044489 604594153 375565976 387198683 299116278 624106832 411922073 643068684 481123114 869766608 331616014 953869112 491469711 916796421 679139676 970201015 959092632 985914220 423642750 560017135 236213688 327806648 905671551 913091074 779742437 918777483 116081209 597154685 760574686 803330752 846875208 927794692 260472219 489297367 916869200 969006827 454189681 666375253 888143523 980682236 481111438 610747509 326958514 702396163 832650403 852485699 153157971 824712985 142055669 586485262 499162660 729315671 458488304 611114745 460289743 473778740 703621975 788595294 530543366 965134467 897830669 959123486 852892276 963077707 344875806 801109018 357087634 527306712 59278829 142709071 326240171 787397829 784108354 892246242 576955363 681896937 271149052 326571354 605557858 666854995 909958337 929907756 250458579 555992942 933048056 953887815 62642163 979730502 213900249 308281620 98206399 682311687 412650387 961876338 602452507 782023053 886652833 983988535 892357293 998548958 872912752 951411333 667936311 755224195 736087652 906479009 611607089 877029626 730751198 859136213 231825269 795757204 14964776 446300595 699950295 872851563 625961459 854664096 123807946 552526548 884705770 932164174 695178037 897963662 570714985 745553275 500203044 925849644 203938647 880254373 415416641 431411644 970783043 996050238 144209579 552149352 204855297 211664970 148396071 945501673 55971770 548864350 503142980 611181804 730673202 763351540 471914536 724348003 824046400 989197341 582237093 860290911 466354445 598683253 763166627 790078340 268411108 653023675 597318689 712440850 67546716 548433450 748778296 812156443 645538594 993968717 528303172 679245424 283144917 400225211 49222907 605529942 248639478 744298978 993253075 994068569 896999725 980874898 603225630 941245508 8241366 437870605 823803273 898290516 28658415 298056013 273804335 908053212 196258795 483263942 425050033 785037766 151825527 672100478 871800475 966239829 113083724 267575226 721371887 734167227 872918553 943997614 329789026 816035080 291728774 614799784 744241736 942136678 861503006 961842120 565831456 832178768 183048922 528209150 277235825 688834590 592488325 960244997 74355041 968404326 926485678 993002118 579458907 872633346 943975572 944126466 527284564 835511920 854649544 893150741 118739755 984309097 641041649 662509562 936411408 946142243 412461096 822176725 438118315 998817909 974897034 993994938 742617548 956059980 820265122 872573051 377053301 924602430 335358514 588088554 558596164 807225097 30180256 760963654 984224402 992075974 742668891 959078868 158511258 449165840 580773967 734246008 128456978 293888395 260544956 873873710 723902571 844474720 432731956 747819823 422127002 777367958 412171633 634955362 703875615 776156466 565891089 924782376 820981094 971721924 589984834 770214916 663560604 773851995 318531654 630606004 39004912 298239446 973296007 979624755 288251845 763917036 75138090 942577228 606992139 759305777 514737509 522456001 683135827 739139227 286275605 942854811 458514945 815351342 54277712 926980023 97070024 793714047 247800925 459127722 932456721 946375627 460615928 957297116 79672964 476264126 957381395 958381570 131491036 754046756 229353780 779145809 386776593 996340982 204189473 743453545 476908202 551468928 303052418 810301419 906678326 934246150 887997225 946080474 483199549 752152948 175092182 836625103 363013984 821882549 845321037 896050045 734479490 862812613 108895416 402928193 609337831 971437602 563247271 952202018 623770162 794874242 680145159 697924669 707099047 933930434 545862663 790276504 274700070 873211594 2400436 818170435 768804515 781336298 966487765 993205152 918550839 977799523 514593449 571612602 241300856 844927604 385492945 889015896 61113657 228746997 468611157 596796739 195281088 831400583 896286819 917668707 134814409 913174848 118652981 446968040 793645510 853661875 778834541 787164042 932014904 934348507 77945158 309632720 87770969 932123683 698240020 717028470 643434758 718216982 281804543 530574953 936559898 984210832 618066791 988736333 874125331 881174326 821109 266607270 274615234 865494539 254574167 897342414 20950008 227076697 681927057 946872123 704244430 811816201 595724311 758148144 546624236 725134301 840049214 920316541 667474687 771859826 958689949 989687340 335195145 934694726 627875418 828001313 258603666 798449005 414195146 592469127 47925467 591353842 49129854 84501487 472151963 762576322 583346464 906765256 642634345 904826060 847036807 975361640 304794101 620596227 579764936 613549963 379534472 489548255 364968463 831565392 998221731 998246744 19788380 381683427 570254000 791194086 710172951 726306504 916430419 947346189 360956451 436492970 477394465 523031246 581502250 908283048 13044044 42543228 118748034 319229428 805274105 880054147 475698751 520483544 818531155 970719937 562584160 761504477 701039427 799290750 853822924 875748665 487096122 889294695 519962723 859071854 751125077 934223547 852396871 912557717 208888111 583261649 970283777 993793337 621357150 747303582 783782189 981059163 815295094 986112065 895410555 911066551 572288021 845369263 226492434 369423248 881269907 978136320 166509564 455732516 623350555 855611634 173477622 739407566 74299342 211164590 129458815 795428611 118190178 250643476 493954780 856397294 422000389 839304387 851251180 889123361 373818237 736844641 24647952 325012447 688321623 866148626 805311770 860161934 622301155 684386248 209666958 957486225 990061537 991022284 923101711 960326134 45921935 145887055 90890665 865556961 835147596 848093709 503724021 967965652 642590110 839547305 167186993 536578061 155790619 882080221 93590000 963235945 361225601 886290363 533766522 910204611 168552148 804600574 28150879 489100882 67314705 380837221 734618889 838864181 178029330 283790051 414950283 665792739 572023231 911882222 63087592 429364095 891906349 928749759 302772561 378848839 356268092 578569036 523846746 769600790 384731558 433554584 420127411 560858330 261559830 965506627 177000890 528957224 700133377 773105291 787427684 925530447 345029356 445142266 349645092 738070685 218608502 521034579 102721762 343133659 259106239 604960586 751220891 892276694 835418862 849748822 825838813 905290950 978632072 998629668 669495725 703725658 559216447 824654975 627216755 812140466 93097020 808393130 979590414 986392309 414739700 545416497 242643677 474776634 910635713 978145033 182816600 783968058 906491342 906799538 201340309 617571918 914083537 959099922 338728815 375291406 806896882 838747896 776519530 848025186 336186912 629165914 700871268 865616212 438993993 773894832 147418353 448456058 257626273 763310804 74266768 803173401 393298575 817025980 527630612 907514471 305439206 341255612 438104913 528483745 728927541 826993043 482017455 762124428 504302067 734692822 331594522 398499572 969374127 989139441 578310665 909221801 991169232 991197598 902841631 929686032 126459111 891224653 204373123 620233438 31058221 717574460 974505343 975176547 89339739 597889829 507755717 824926835 675078485 943063644 162018585 820558207 768181260 893911926 957825464 990403715 579270734 805169284 588607291 713697332 71853594 356749393 547014884 918387937 815347655 824715859 584368301 783474197 641354275 983824629 225088308 616615479 210856395 368506505 180682340 581949307 739439646 842448129 612971703 728518964 705549043 853576380 919158688 956342070 293577501 719195325 970609408 981969183 755089974 845507282 596826839 904423227 89439078 682248259 655907028 968267064 238249460 260759289 985970310 986203739 218893947 286606984 608833638 882279190 912974150 915946531 780643207 881954203 435775763 513078969 56667514 591532228 571469072 594285780 850369271 948769484 898357532 946535639 593236817 810535463 94703791 759567878 9035083 9965380 729313794 831671704 953772467 982172695 286100327 477544872 416552913 892105913 218768301 986179448 752981757 885551432 479634262 963193676 370787730 495256681 227644146 802376625 332813379 753449416 188826015 988566275 454975275 817985187 431274459 665424298 167416458 491891319 702413427 702641574 686239146 803837562 264733474 821012407 795097243 828558955 471605132 575110625 813887374 961179163 322300795 747706569 112026576 411420033 690498114 706592346 427760432 532343279 437014072 525495906 683482926 850261609 598538903 696574788 727740386 786532952 8605702 365856586 182662167 838362583 814801095 963974390 267169932 547161734 124484752 580031154 390166868 474631197 75204308 420069011 251203249 678595694 284423101 777260971 290458081 713833109 540550808 659692269 937887979 965792128 813043734 837907221 405233325 405460986 446668088 636885650 456888668 663696461 288175398 746282209 223701070 440103692 360377491 417152377 224354556 296590753 561812058 615477259 916194343 956118217 304124713 607085938 192428370 950566954 263024877 555751152 468307990 998823279 67825432 670721045 803160833 815339561 977049919 987999514 137785391 863153230 259034038 420601901 960753575 978080436 855173667 924148006 789092568 895284878 360079776 712358357 10611572 440324282 392721751 738012516 949773627 993401509 576831860 801617924 249089727 309421013 704229946 711071071 316968697 643629766 698058513 961220898 880987951 975071935 689238778 719946228 632541646 974234188 426669408 918254563 30455538 887963804 223342941 953707178 452349657 637082393 50744157 271693120 583381060 708280874 156893062 921434650 736002082 937976130 154334680 214963012 572639746 680616229 383056131 511879628 78185425 515587824 32567451 639633408 536022975 842055747 454356308 583646572 480177562 975086380 381291664 750292484 347297167 465490165 725764289 941282879 414017527 942078471 387051303 608337711 894027003 986320207 64024767 856571051 139090233 816735549 732100704 748188286 685261089 699978668 494523538 616167825 318158506 883592213 781657200 858589731 594711246 891248468 490838586 959315614 482189659 860455274 98714665 922103230 627704378 946431999 71532386 388967649 999216812 999239869 107763737 181092523 96286006 436549396 663046018 677466379 181898826 512996182 171725359 978800853 705113825 734345319 482599796 483258388 264941568 760673373 532429788 752676197 304621828 617335920 899621457 945909236 472237721 747549151 564435636 956620320 280178745 933181868 613447892 636854449 274454122 517972265 744953655 949811738 438234193 902994342 954720860 998037698 643975031 947835491 598495224 909823551 66853015 676526136 926322403 978207333 774583323 978492864 48281897 210105933 741762227 769477276 99654463 434355443 962190539 985120244 784115603 976081102 37972679 369113025 54490745 215371323 268726572 416009920 162188534 242211864 418138976 447601316 170120688 795780431 124802774 496371773 669293371 677143426 534130308 882736353 775322029 979907355 670957606 992441282 436987683 762620385 362392196 929040759 945828153 965798641 54065590 690572121 824490553 939720043 540897214 616948529 583294057 747322405 253239486 864234835 167290630 359639751 79132616 713296454 416393612 894545176 771168842 807145753 602623301 623759775 553017541 693549810 694089523 800832183 468137466 666346574 279396901 621863675 974880551 980140449 295498603 617907702 477889464 609146066 50248466 395505106 363263641 761816018 418998492 765836035 793453244 974933376 289726008 992887789 482758352 796692054 501385889 656251214 862961655 918880449 166956125 946853946 899241318 931323786 614519616 643889384 451741485 580461274 389626953 897549104 440582233 635585796 798385779 979867935 206082691 513069151 459735601 628065014 740157553 800238521 901539630 937375931 217246440 670796116 469326424 516981197 95608607 233334083 369689364 827792347 406458390 438002330 298362498 730405374 147717031 570381037 139003755 706033811 792677219 937420476 706898254 745358137 480641264 977582123 188769911 827970009 282399688 918644645 461924164 632330931 43264095 546268160 800167378 807201188 745742111 763526402 821324745 881145418 768434042 949954763 587361881 766010020 48874973 601640879 834515740 840444506 394789759 951495082 145828879 392318836 317696484 880132927 42039141 466247784 654539913 933270324 823046685 953518952 138611660 577860596 305392821 928024276 710478213 960836984 858687851 968797587 709985 611173523 497498262 679025843 23666751 477414996 732709329 733673101 37301655 885523992 364680074 774783136 45416896 147994496 406091761 432178232 651464252 654497712 632313286 688541351 518492134 754195821 218275489 995815679 968061887 995416645 741293454 781231723 606474032 669226483 320159513 662319655 834469773 900973687 261468101 299092422 617243306 628282462 922667964 942557000 882235364 897916098 910372266 940356180 383135196 617946811 58938922 545055520 165765067 945832874 154076734 514266496 256274705 982353940 528668461 654633108 68202267 568208771 967222858 998237814 970642945 989884465 666332251 812970391 927377526 979012546 586183144 767385552 363780332 683608349 858547997 887480565 144934270 498755810 989816810 992695728 205962486 317871386 657711968 715999663 276030115 988129481 2621738 528125467 118555601 953504866 750174459 791449303 554617716 720541145 142416675 629839984 173691407 787934725 845100172 969664838 234093863 298712781 346357133 750817223 441216136 944583565 39528547 586081915 591521635 623215071 785228779 846577788 459089078 814439797 859065346 885862113 17003263 711752392 346169211 588764711 393908770 623562312 461714780 748669174 906375716 994440937 90252923 838120520 445118145 883604702 140562662 905209994 215309224 892581102 824832950 963125046 68801947 192586996 81499616 641445408 672182089 941478325 585840501 609421988 451128538 910661664 630896208 801460726 886668938 932249252 502844143 896482465 504378588 570592377 694158344 703448207 324043255 716234928 226144955 368999928 282258663 861367241 739956523 948491238 98467219 515859333 123510456 486151787 805809217 809944577 200811539 971938666 184223305 323671673 490475284 644029796 394729410 442309794 332297693 928961688 423405122 996552323 813916217 979273326 797444204 870784307 453884715 965982004 891775821 934178849 356718513 750456533 500051023 691024937 6465061 354123064 681024771 798939961 126397464 137111025 733951628 884774183 431767111 736688910 316061090 998682869 626016598 692028570 99045548 980663373 637899109 923242036 712807109 938460085 206382934 420618127 16446194 691941520 985157644 994502143 405506090 885169174 842630898 959791993 674296121 925348886 41597008 832788515 104798156 969070523 805082577 983869104 608062437 709224295 517789255 688305005 649306785 904172804 583385870 666284281 157482014 966665220 586034703 827561762 828710153 996178059 59265484 169834590 931401187 955986729 363325178 491369482 634769878 823785585 977777834 981253391 709444967 759465798 794394671 974637543 215958032 382407789 704431237 946630881 767660807 971576321 577772814 600370683 455662919 987180297 220614819 320052058 684821468 797518975 593237907 990259558 46321851 476130045 849156253 867397006 743266614 787486288 587254118 801066244 110962981 566389924 421060153 651461208 826888683 873653439 477435302 594004400 658904584 957471256 53142344 833035621 499390468 683739802 759909859 916815964 620687626 642311183 567895853 899301790 692326463 856851232 791840068 889873916 130500937 164620178 740676602 963267646 930066216 957289110 869534031 952766884 175384623 637355198 866385575 886466601 126525571 425639613 882509618 902488585 255496036 777942019 902124489 944386920 472061932 879541150 536030603 563707134 124468549 631724772 6960774 28252692 200985993 622732896 338452900 828276381 574116815 981592504 406490234 543009385 933442430 940578529 553473256 998344959 453530305 497074346 387753033 574496388 891802726 934608147 70992049 997253152 581095495 949282000 722405621 885615586 23414967 815862209 388355345 659261716 902530780 943554241 59339212 561709610 280592152 400317377 570729479 731092243 501380760 783408438 618022430 647344684 942641876 970269641 513762548 730513222 765822293 778672046 642240476 647326116 22116682 396367714 157414885 185152709 576376635 630908907 754477321 874273038 617586801 949255894 460124748 705413339 255026771 799266021 12396445 37530923 496395323 716391578 402027283 737139897 93459977 366209999 953555711 976083993 707720213 850940095 452970017 549900243 348412720 794743192 971481972 992998985 507990322 638759527 654389020 861534482 844187608 981213898 960951104 982992845 255871518 475119230 959111889 985586831 648476650 945668528 582513733 998549881 972367046 982622561 48441606 138325650 157485118 881389364 48593193 686445619 817254839 968354177 135268269 718925843 146367245 705741526 211728125 297504140 435218611 797126302 996433550 997681090 640832463 712755341 307032797 720464426 137528441 663959101 933257132 989002796 722260758 764329400 886653860 994279721 873772656 989041461 528986126 627883756 631862695 706557697 439441518 698044383 839913371 973590771 822903940 839979358 490276771 645594766 845315752 977847409 861075044 969498080 778794446 829644068 429281686 565665944 577968670 990118849 78365632 873022616 457825273 620745459 635755983 679478330 685766276 925618335 985314505 992080378 836795827 891592470 712329531 887272384 513597426 872420031 935322559 938152223 279712487 669738820 767049094 926863667 586025581 747481063 366438800 514785595 369599369 386712438 311350037 998633880 81860475 566128365 21098859 604391367 831471069 916075038 111626157 134128596 919968310 975468274 231118360 732458046 384329503 800636618 228017317 760005784 764371353 954404661 804595104 838817918 796285609 894455324 993880653 999344175 232425574 696072922 683750527 837755990 44569519 846714373 145762376 263108897 60725259 804699206 410334450 871654811 547759672 972857288 3537758 347597323 146708463 919179772 30935140 880573108 918842687 920040028 396982895 402977046 467476770 905488133 358475023 473937421 64842973 246208594 454750514 614313947 19934382 741577322 682258838 957447017 567111418 574760424 125209131 364563080 210343758 608951597 109598565 306318394 88501593 334019270 637095984 859664697 519911240 879729863 412364487 723906390 802912559 812858460 27700754 471507426 405256037 600110850 54563961 884935585 490698244 568090797 749055802 936429487 680164682 734197418 855705282 934989814 717767858 728969571 981553668 994321266 405435520 537700191 71428371 418223347 441221744 889295251 295446966 544502696 82446726 857179440 857156681 913812323 410144427 489976736 869816553 983149498 157025988 298165926 135759366 471537009 465170001 997846757 725737626 764364545 413962049 521127707 907403163 995324952 129026296 232888260 495842181 551457811 684786537 777679058 972912278 987681282 477171011 924172158 132108578 135721651 754535064 925215426 573973829 700151796 60829704 778446798 815192202 974697059 345118256 863676561 272063475 460172019 643260373 690625552 467646778 737754679 650690122 945036378 113735233 496998824 734280764 934628344 829796189 893425955 125979672 740477914 477407949 945697388 698374701 963484109 446639333 772964243 460357957 602860692 622812401 934282420 956188367 969451961 351443602 991492384 412824539 905555345 579410402 986989952 509047952 633505861 871252111 995099912 851132796 995793383 531467136 560211659 746044369 800084180 122442082 249323147 595563387 631589029 593307525 812405502 314550535 553927434 346802969 515637795 607213924 989960554 452102446 955695931 62607750 107159608 376698779 680200723 79220539 457965601 169029797 645929272 347815717 859933205 914844400 951237553 990927483 990940725 154265309 732722014 633146086 738676189 432680179 708867283 1149175 132978733 696284750 729762388 454652104 632021548 388524169 624694029 193081073 806499863 564356875 660532931 12622768 909079896 796385459 859312760 264622835 335642668 546585237 625044557 548785213 677124897 991800184 993289643 457025840 519814969 950739096 995333653 388142414 411018032 31394478 369169430 241488046 965275438 431625390 687312225 76685248 919658862 604862694 619661286 626656385 960958845 449489145 588805017 32894317 223038930 497350473 580741892 128314159 572096657 944893108 973433887 295952164 489680670 222311934 520559245 995833998 999377092 582277436 920570561 883859818 896436314 150668503 308100088 771289620 872497043 758796049 765498458 768747874 848942581 606260297 711828568 496235393 626749721 837624029 981341740 703925432 734412232 895867850 942027397 366262057 774044923 328129240 644607335 342617221 836818567 994287923 997153108 10471785 27075522 287751771 478703170 820548929 972445209 179247498 562276011 201368082 309682762 89530502 629192632 529163230 535719228 112734356 446511595 401640995 883248934 18476574 195087922 647367209 675177226 225514842 681236942 945830392 993818903 904240957 930425718 482533076 635620973 379216931 680223923 209610558 739581995 43700007 860010607 390646812 428930651 87589752 542329619 401876674 540274847 72365444 884023959 479705881 524021875 624575949 862362026 812531094 894313021 765397805 796869625 357720534 739170305 848759277 999375445 155008364 619381225 382375423 569470948 272280862 723492518 910648420 925058710 810810501 857971421 140113056 267717323 853292372 902502288 670161223 852829801 804319782 946442012 96377563 337904126 313089873 660698078 28732043 362566405 340733670 970684256 337021515 788020504 772712225 974061875 93686583 535111162 207885658 649039525 602714628 902777995 200311582 977481882 565983783 588526729 250586221 574020216 352715084 784856082 300850202 593815537 473475414 492399516 145444927 994387966 750102215 940464951 454756436 961223043 601194922 877937305 238501680 604185235 110804017 904204054 325394892 513388008 320239422 321970603 447086336 786412264 988102185 988601371 373631354 892194165 300772630 326697428 927488490 943529552 274628697 781023443 678628964 706505006 608694388 755145779 200256182 791231609 468150532 569628462 782062119 867616795 847936242 892163127 310702438 493252361 330005138 391228694 494605441 699846342 259046886 286934358 830731483 956332930 174020429 657768289 447644904 824630346 113312882 780516185 736645546 920824291 42608936 206864697 156045392 442050839 755027197 872474074 874452044 912863240 94794492 463630959 90917881 574023916 628539386 878132380 509320218 933470524 426758568 959836226 38989975 571711600 823089957 866131807 602623430 730153428 99196253 145361169 536614304 710768109 382063661 658936623 855962254 923144596 379065089 793603810 847470964 869581216 93472619 853982978 180212742 288711989 835193299 875003034 980168460 981312618 90592372 763263206 582996530 760469450 413542727 464487201 853136720 950456190 859119137 870565616 331174723 910850087 54053174 103000260 171735567 506065616 16232642 139231456 808553376 903841870 161483680 232532123 56087270 914950305 404832914 644718718 350918363 670732577 741580777 779994833 271529391 325040275 910644420 957704322 440392711 626933283 223552679 407187066 49371836 261483910 531562885 573439477 591355851 795540930 206821031 869798195 204676942 306636654 680094065 992356274 645786525 866227912 948678164 998071756 864887662 957807756 725934155 929383245 370315174 793753118 972200796 989911426 667745028 872719877 550837669 962106351 568709458 808797050 489318400 881929968 523831306 787819638 411882695 486444544 863031714 955095020 327764764 600635062 338051937 561351032 562538259 831728715 702062071 789460946 861647471 895891192 841913487 960137159 674586557 777451553 862389672 881081701 176207024 475326140 378335491 876288980 355635650 630430694 243138446 973282237 234901583 962626679 353027410 993305254 32534767 924992461 193809606 636578723 505791405 910410720 761862141 918256519 848012935 987923248 325194718 560943164 366663877 724702565 767895003 804781684 242583218 813314040 851029213 982828671 175021219 770361930 616184156 846896142 323170500 762062655 367766431 442354458 666597471 966896039 118327124 955948033 670895118 860878369 546275180 982338296 661685505 736529266 928530965 932889550 508333645 977420451 714584025 859342273 869590804 974351142 518586526 930040561 364719984 697595217 670373712 963525450 382275079 395275995 968177257 990046454 161428581 572031684 842796269 983598304 576035720 920244789 988050640 992679528 907907051 944130160 840842433 891079020 294583920 807956302 501660189 710962230 874029294 946462203 856022035 904780330 32966445 675870057 694973808 902663062 867227656 978079812 274424252 490164716 788941808 955629677 687343165 777682202 785486575 984924611 338002440 398958588 106522341 135769817 631037522 637001721 10367491 386564178 429463509 661286566 705894302 952552066 913312811 965486219 396542578 975488016 962225155 989288247 828109582 956838438 644743016 903450338 779792632 845531214 960959808 981719651 851252375 956078254 935487128 980815029 313233450 398605520 136129176 963339631 646892205 685798031 422551659 963143068 598427819 972450580 519757426 802194371 197709055 522340472 51024597 932557084 662708829 922938430 96929821 428428773 318762163 844688680 549383426 631506747 901014013 941731483 498206353 836461192 489253314 649888690 303339982 773079068 673885700 840739851 640102217 855311414 532219409 830273160 683568190 845826124 223695743 748477007 587864076 740182777 783932548 997216144 332266006 981973086 946633874 981845904 360237045 863174866 651901463 690813613 322520644 330251115 219290817 901911282 326095310 860352965 325860944 796214490 994249171 997137248 505766708 671769081 767990664 813742424 84425482 236135139 874540515 924764481 328065260 785981771 570592625 718274802 852557734 898408363 782738589 846625818 995365948 996520206 181784633 221242763 972164282 986143404 613177788 707948872 887189478 938715919 966071205 989691885 408373291 851378815 377030155 688435750 13934714 84920278 909789779 940547235 217954734 605657738 706530677 783070857 29011555 591719079 531757603 864217554 62196266 734444376 558604993 824995026 634105256 923815319 171047486 762438964 943543087 946079762 21587697 947927599 787688760 830730019 814667716 840551404 473654835 770251744 350851878 662383941 750244636 798437477 892925545 975214560 267102505 443983608 75940814 218425891 818480042 990808479 412900831 713727621 899008513 930018711 522220464 729327758 187812462 616378037 530596677 774465194 439597948 904606293 929143062 955400334 790044418 896653404 741371591 893180040 729620716 798651849 355015472 856512463 36270091 637160356 142787278 780979871 761765833 938390341 381966069 991520590 289668739 739508151 719554501 822030088 144776788 319061667 509969392 820260713 864570330 870259708 319271633 631751153 190422158 334272969 470329099 657753744 215077975 362714527 788371810 938298256 425020410 504841623 433609953 930082564 93666149 690900026 755322751 890308091 139326171 481168624 949504034 959822430 269078351 734936406 41395624 525925513 471136339 679743159 773674516 827522457 401149602 521989500 243886526 434498992 529086374 807544972 963251759 998005301 633340841 960702579 341018507 816033442 659210769 841216768 482523493 784753084 453663622 771982484 625828519 635118750 425785825 867756551 254002394 808082750 918610693 996975371 914830518 920157951 580067721 994156135 468372552 570850605 829286046 877090917 347164633 556790893 487403397 591292250 795498563 956697974 378977616 645561998 312902580 731497662 79180530 467207846 931893526 979777275 540977845 667451591 64406815 208687183 703384160 924478086 679346705 791682266 387098269 727850577 278740619 498824732 716327349 926743767 149769513 986900361 989444411 989998025 854083194 962114359 28707701 510663091 277172162 913634201 934301090 993134247 660375659 817307866 709885982 813490626 226315744 706360091 125979648 577309265 774076793 816517398 924254561 996924806 692261338 768393568 441046356 715732992 421235577 966030695 805109308 989768589 258744581 701836011 483471219 670393995 496579798 909462153 132244295 308263345 617012832 818573945 216826710 583506049 281641880 318263883 945429682 975493499 137985060 147211177 329363801 363010254 742049115 896783138 723971251 811394394 483017623 567360526 772706018 966747940 507183229 795025067 995155401 996947561 160616520 293040552 195676795 496167681 99764431 329281409 239887864 388331171 781047239 844176048 600438935 663784629 505010108 773317336 764342874 866001871 74810616 422686421 361442037 472906847 874560479 975173903 339777511 378461781 715997153 848589027 624097619 999187177 373742028 674350019 207792364 373905686 466248615 766110516 82165619 361243567 808408239 817218648 23669585 906039613 778658314 897243826 239883267 993320270 64305775 956594816 863038770 885426563 274166717 353963752 841315359 938358937 422285131 432683318 553260430 762839871 544954080 569130689 668139760 974217705 600794465 953948637 486721027 793168121 881450619 945652306 162651279 235671075 558076941 751046578 860976948 937895627 64365088 840014622 703221375 883543570 401271670 504988462 633865979 842203686 464786812 684121763 758885526 880943268 960753464 974975327 538863930 662544640 779787635 820051273 116654332 302190448 329856504 608792713 332083385 896548489 896811597 924590425 586649679 959855920 311602611 636391703 229001526 643093266 596685800 825645839 896829052 930158397 721993289 824368041 950843076 966427652 723935371 904053673 537308504 666197062 612635700 892898972 333198927 994355815 771653583 873798580 177933448 909440465 639235562 715827746 58349605 996724029 485450539 973693836 462173406 481908061 146519222 504042671 721973986 891033657 37477686 732494132 374587630 693103060 677681532 727482839 96780005 695226157 822160868 833848097 575148641 973878714 406188046 425583674 885326651 887310542 311430087 898725546 752285713 780575278 157291004 987482784 893043871 922295722 706861660 852993775 161203324 768133524 950092893 998354083 423169191 712440510 420272584 925359469 632862203 658336977 130088549 207163486 618484880 787231287 89286819 174335834 890822477 952216674 304756926 683673385 121267285 348918126 914983259 999344668 251769249 795792460 733780942 796614732 527567725 693126273 265846211 317417012 991204256 995820905 424045862 815804142 445335559 886827554 355455891 807736639 474214317 861052411 680504459 949863696 873444241 954407548 800108922 889147374 98556320 177939672 185278860 866014976 171537439 434625299 960429133 972517126 466658685 760331407 829820786 921210529 892804122 895134975 553456814 823999290 911417260 951262250 820973849 931057358 728516366 803933360 49922968 712814400 107562802 264650863 896268018 910340659 330404817 425139097 914785596 949012577 320663225 551507852 825486337 830975470 956040527 982495933 27557766 431465007 43236346 676835104 81080074 488213276 707741533 918781859 331731896 462883584 469236002 598766846 189916653 236787422 813872018 858250070 760520969 977481597 17939143 74074041 688503594 809107135 853452796 990669757 264547498 880943182 579122219 805713631 118762207 167529909 993056009 995366150 804422889 884094586 665554892 721691036 580012711 823706541 194390850 671106942 686790128 992273950 334733379 612942476 354139509 733842586 515596270 701038211 577639471 836768287 869804973 934044947 779243641 884086628 353034783 816390713 78796840 873191804 920695734 929475190 258863810 490634602 735648899 833896010 106987261 290347897 504011172 975080513 295338335 458036401 288364530 764332432 418214603 628186957 175813766 919620737 683205306 850264475 328244378 561204426 872363290 877615400 592199229 953925099 868355203 920849729 602989492 995167218 333797023 955251368 884333882 984558999 507235258 588873093 544196709 865283952 543331515 835569732 475411556 827213685 114638449 536470608 563589618 837362891 180127981 794924869 372715279 586205439 974184727 978383237 625650216 791701071 387675961 728053499 583539479 595535882 119476329 717328428 327330301 565046511 155017381 391370386 138670905 197726981 443352643 844960712 879089213 967695815 962790998 988559429 7303011 139530062 907398925 988392385 932213210 974035799 625936804 752053174 337172072 941840710 633438661 877266696 22009587 865076731 630415133 823680084 41552009 569301357 175983431 982326566 736222325 739246202 952488668 955776555 749710816 932806632 288913479 951918926 622985508 959129056 66534815 405366363 407935481 682210887 2326805 226640816 120218607 770989494 903767643 910149936 718706391 854974887 515609565 755532453 670703373 828976080 714441010 921500803 390736151 450691188 224637939 532757811 766064416 866881922 559011687 679143550 6092427 75953697 472918279 841915149 200526824 477342204 587121107 639620948 497398202 965572932 526514345 811361401 664428493 765449063 950580680 973979266 387401082 862235205 864861068 939903680 976443565 997048353 56914811 425047428 776665560 892765327 834099834 934326417 222794166 573148904 158666348 244938261 776008942 913696932 384633895 833191737 362273102 866611409 400396600 561247898 562768341 794766800 337288585 997335268 884827407 957447128 817164033 882904963 699795254 833289009 44915223 184498928 966813127 989784419 599358169 660186589 5840615 475765641 327330129 902438120 94841443 535265724 7871939 841530703 789841198 963208007 673221389 714011084 340725684 706855141 394693001 534408579 139199446 817422910 814280023 895502414 417434069 619363742 765722304 944515141 977392732 988346811 95698920 614054912 426594726 854705180 986723768 989098703 263818779 629478066 495805965 595737760 153804613 675782858 369670467 496219035 313960270 469130750 210638909 893102671 578956963 611128434 436710494 836977019 704673341 901355583 326651080 448104731 362166120 483180045 544865335 943223713 702099453 991307769 344387474 591007609 956823104 977698079 761073915 840732480 13254869 554917412 157628878 606320025 203597962 842993508 396646819 768967735 950265693 972283579 405762806 528333900 472267864 498588798 183150554 432255115 50043435 408791591 774778998 947666634 703931926 957106019 973026149 989339250 573720903 690630530 266453777 881791890 962337849 970948264 432877779 440583676 764002557 779046634 221324098 295926147 621303745 930648002 54469107 886276837 237737996 384888667 832491340 832812742 509431718 530454321 174311189 300627903 299608321 337851918 140427052 927283748 524476147 608000904 7144112 97558518 211340188 857195227 332937756 481750764 444767665 877999917 261928700 853463938 360609014 821333404 268413244 784761882 160553065 802001657 967664768 979405596 328364921 541633813 571383709 701088230 943868216 948254421 104472403 544062611 439389848 615792390 882706538 991142497 417205785 890733071 102031333 992932106 808782162 935250437 281412693 299147395 515468349 548019259 797457690 918727630 801239373 822649475 238814676 914693239 299706495 461478928 456037649 937750580 703254087 841805434 13017587 145547221 177597620 690225004 74353662 722426943 691014174 992696230 795731130 893814351 10791004 444449475 467455309 889266585 737359088 825747618 298597375 616260576 335092905 899793233 208383978 645362103 122511510 891490918 67036312 138834529 941407876 948490896 482780444 483949977 522464116 903232144 914692657 949386714 161961330 199626415 35486317 966714838 826474244 840867439 352662693 521310174 88324187 834397800 123414611 446260742 556104076 983673123 114787904 548258021 55770383 905729480 398444954 975714573 887196946 931449178 209087096 615361286 766832802 979681406 575050382 959691560 549858182 805219554 120716272 135786949 268015417 303699099 957384513 995545383 107524549 368436292 978842425 985316025 928979557 982404425 529428703 913586645 286230956 748760111 378657082 586045215 354332100 480433344 506114691 812890840 934909815 943206431 539619882 850580274 390618520 475539538 995660641 995732303 897868723 981825417 563148792 922710095 623644401 955104837 937694581 991040262 385144961 503418006 525309786 884806339 33371517 599861048 399650168 951004108 859229672 924497953 152902401 373100781 456102331 669493370 899846030 951311739 228473987 421816956 722563488 831158409 358314057 694220333 715266941 770047926 63188823 613857764 742760587 842691615 654439332 681114606 488918975 909867728 751261588 979362882 182669395 502009809 715332512 720155784 58189779 457543703 922719702 950051465 250693537 880103038 89184027 697904294 110409483 646658433 314646141 436979589 555544982 863518072 840355366 928952729 210770006 399455259 865502336 907966323 867560173 870398533 578541142 705139101 919034211 953723976 363245856 920023128 154661797 401671671 842408223 962259985 587991609 768587417 21175739 628710874 864822255 957066572 830880157 982916697 546715062 914935705 362182943 743398709 411402449 952802856 389152638 665416625 523750435 592284724 342128606 603265968 750664171 772608119 732227389 796772003 414969887 844487307 399652082 567897571 193921455 840073732 408236856 429058715 706279029 799705572 829489168 997544621 463385281 512784011 945048971 946330488 110230865 344553565 596536688 906430761 85660114 693799316 614877032 686682781 744231338 938661234 937393475 958526182 471437439 568557960 513276302 997266650 773563783 918318685 547903198 986203825 763313886 991723320 578601156 807970299 394435681 579037325 700494325 700888435 27978949 777643969 622434769 671921744 831318559 886573876 511127373 755130869 320664593 766350447 462547963 741489021 823025487 990686256 271567880 700475602 405358106 667724789 355682746 501127369 792867470 828639040 646167649 748002654 198712012 807078499 830386716 889290277 179779594 978204134 634914715 758846540 876574789 886530214 500922058 670067175 590355953 817770755 717878575 885568128 640685970 673488021 656980926 962916177 507660423 901123092 221822739 857491427 496976680 975650898 649773529 760140091 47880945 874103381 569198728 655413551 263250329 303146773 782343162 834559252 350380894 783009334 624920589 956048571 592948284 682203139 837034606 898983856 769991310 811215207 502877125 661618160 586379607 688446422 988158961 998001718 681772695 822888066 922309088 994364854 335791686 490656881 389867181 910065931 705646569 854383599 31262056 671808876 466264646 958805620 59313598 670149124 303047799 704297041 945972189 986042732 497253823 667134789 48682894 543272151 724982039 753056543 670981769 740017887 148507966 492158627 925703568 957051618 83121791 330196600 387466977 735702469 428522547 618219306 541652822 720651583 61849479 482354533 979976828 993135286 46171425 791329721 270589368 616913918 282583132 666574864 708202128 748544497 949169410 998399713 441251588 819485679 196449865 937155386 571176665 676853469 734978065 739136013 544792037 882183951 302266118 738071011 901284264 939399392 459581338 986992123 154335674 723755275 516234841 830111751 77657568 302784095 51654468 325030454 523972535 536509778 264742573 925998683 818158836 925377756 396966883 952351514 189862364 972412210 177489085 453664104 564918937 990557698 148650116 369610234 556444012 563836441 727491736 957475403 898345690 938318445 670518009 839389463 688268606 903975519 547537413 735207319 151894027 938377876 169333492 605933216 42102235 940794328 791313709 922001600 520010563 616258199 681930689 863824312 798714893 863834964 586084200 625676430 220966011 266871183 834843523 911268522 645197953 925278465 546538301 609841429 290522962 633937384 110208344 169521330 745546194 828860976 872309281 907293418 252174131 300451018 337957040 378394737 147116724 323272432 549084677 989746290 224108140 993847694 101377594 199561634 41788993 538467678 229744247 326883265 849429674 853442233 504135057 689495353 266749090 867358165 783176385 967765962 736904240 998500512 768043740 885965440 746140241 968740132 895104128 984518559 849514461 921053184 120958848 442624084 688833165 831727498 882703200 922844823 794883971 873710143 12795630 19970873 660517613 962693315 431071646 474262909 491494346 500673503 451827753 563972254 605345042 666713126 364907599 461464150 407882193 884587279 610633823 648162759 329228304 665502117 626476587 812683742 105483098 661417184 341027621 515239504 180996323 287051677 308741092 863267524 255270565 750283717 714035032 929229686 414382490 768687709 222698364 719784005 886203231 989510898 252297530 753403589 164095421 825093163 682220034 792644479 292696768 448660098 797584009 887005191 930886275 946353898 893661366 898092174 720774211 782315573 835164568 853167956 597908857 983908448 569430463 624315248 530251172 829846645 210809650 469269204 235261524 439066542 528888989 981339759 4415212 216055710 963844544 997333010 293993476 312581151 464043772 744191610 315143110 373755959 432773427 751141315 238472050 450270750 520751014 702987242 634254850 750029678 559358479 754995468 104664645 989162772 627207430 711297215 818192106 862081113 466251929 738582262 604701341 816848152 530174097 928554064 455615826 790812221 412085408 415996397 160566935 402168689 208348354 842346348 906523673 959101666 286719569 297176012 606889235 913869315 990013368 998068422 172236386 854663349 299385994 997994401 613241526 637188025 446871899 657306195 270809796 791745731 737658869 814849090 118713395 284298077 957407120 972865950 842186598 991243679 99107108 786827086 116156781 760517085 152599306 545663737 712587975 969611469 298108050 889983201 316809061 757158348 75016188 218294866 923024937 930003724 766002311 992206565 883822545 914448334 956181008 957250706 20049778 810694724 992985317 993516885 851403524 956886022 532382103 810944347 468147929 854272267 304883689 764940176 405437085 909732030 910736484 939932077 985589378 987596354 780863624 800471299 990258534 996075972 57750904 505321842 207208337 379570243 295803408 580803652 412358262 500338587 924181849 986834299 446561716 673977609 244376159 474185740 755539132 760218311 92118809 551818803 86201351 548726767 642552093 697923533 962048167 983484666 153725354 321289320 51586894 73146708 650439906 734286648 540793758 676219059 952694344 993051850 706301953 742218211 908118362 911646054 346662377 881995918 903620118 949178517 125343191 454332446 997770437 998093165 141017469 998805216 579884550 734306179 415890397 721787513 360157082 524681597 245136361 400642619 73794469 379576627 845667062 988409591 590227 127730620 527680842 552780921 782143791 799773687 438450193 843928615 748049714 775195964 263677057 967536692 200020627 355673531 24762994 641887689 914257656 956276049 762308968 807518930 351341876 491080447 759245188 929181593 962856477 996564109 78979820 510208353 976873314 977000645 714313748 931020169 596641530 669954669 108123411 487510664 620229749 788536538 960147482 974314048 811214594 821227065 817478652 991901668 42367405 901585522 442391220 699199598 157318961 757045545 342444454 357507540 727463338 923321961 173767283 413361572 154871625 305053063 978850663 997285842 41146989 232829346 794132042 894353178 277934918 405608140 159325450 992656489 339917559 991933910 574114156 648926741 92198533 213114878 316881849 745035307 247752535 304617450 844146316 880119644 712658178 777544462 139974561 701525724 675367087 985628169 391619380 969016737 533614243 721657942 470275754 906915368 819445214 942018912 718168368 731985679 540609935 692790800 338048348 409156340 69287102 985663903 367053314 719131781 862425206 994958309 197478530 418214931 758624127 870681266 426524737 730097997 598287027 983658539 38170455 91899216 78866917 215862722 941604685 964328395 854391518 971256326 352760174 768989355 99140678 230360658 501023677 793659164 149329522 671377675 263585389 422141788 212955228 576540484 733657225 948684088 171491326 536106107 93265560 979067173 597177074 814876420 805258145 904812279 628446796 746417202 571671584 607616814 419235633 589509950 288996726 589886467 932932745 948112094 934372068 973994421 965705423 987699309 83273125 101176974 549658073 925087759 77161260 487689677 807741014 902145865 537625055 623979185 231253169 344826975 440461546 840004887 862596683 979170056 305276166 610921630 473309938 728638856 799911147 804483314 997041671 998669677 652547323 962929024 800669800 991305427 285932285 593938081 451307595 985834464 562761843 605430196 6824904 255588560 629182476 665069356 18560468 551439520 621904176 767924501 905835637 915439407 551106060 991901468 583710629 633032083 10496960 71857709 79142554 205398215 388985945 794297840 881321873 972418952 357085200 834973964 729836156 822155920 623024218 785367434 65969154 830449767 928014382 956201915 509754509 652398777 875357204 940415572 415527970 694461834 240079183 918806423 627562089 808224587 94602125 469139634 774844837 876450249 562754469 755374108 819990878 886985871 485720680 494237408 222836241 421455736 934505225 963268470 79259055 780134176 249188204 545787654 873891042 989077010 492161398 598043648 690837317 798110956 892335752 894938629 640232558 801664916 977949199 984068147 615659689 644746820 254707060 962402346 263222948 523034224 166315829 712938370 898905064 986249437 716099008 805853204 475704821 598566409 799995052 821171115 874743653 908010309 621287050 729243120 21673326 197515450 545668434 873569534 685561774 691821800 764947349 768296482 995320628 998940867 440376816 826156933 13149656 965396888 38300260 94089826 267055757 833957906 923272292 946957868 577016387 982395628 322679963 807998625 594438425 686072544 231304079 701901461 572435723 767302486 140499078 452325916 186595978 596768791 945894167 994629120 329802310 456470558 735734186 885044703 641893157 784387517 975935746 996778564 944689342 996443391 187901553 754538703 901232865 955823645 200793323 438284328 661756212 828857717 247132876 543782127 150166425 823700867 267118597 901777902 181662909 613205556 657012083 914762688 834268176 926616691 782043378 995484997 400892019 772404628 805082724 839778856 93764127 149712094 822345773 864252117 998535596 999338107 287070116 555717110 299690523 479623254 961796231 977140546 179682101 330488349 643602368 929991331 435263837 678627280 481328680 561527239 777139937 796639169 690607982 970809127 794905246 880684630 498321147 979627684 733937634 949200468 922186554 987343332 540267036 622093148 489985657 621083175 606227035 936923552 401515872 754016893 873311202 983947824 356362970 926263476 688612410 789863309 97030565 982491153 492371426 826184856 730234254 773367119 39585951 300858306 140162481 988214927 734821908 920708350 65882747 845932907 500569545 898072863 67828509 528155121 341698571 828448169 701196804 750003245 995435772 999367261 31100792 880437304 918152676 927336113 102416831 921541105 632497995 734476682 410262690 414279599 996081445 999307160 755738116 785465153 20977783 537143308 898110470 933097144 297491302 631883398 876415267 943701120 268266412 377293257 171290577 440231906 538043053 568503297 29585159 89063479 324701742 617936580 901947195 929816154 30186598 522312787 564789546 614826547 632247421 697475752 4746474 276234110 907243417 993522839 95944251 665717391 960609948 968935915 739368070 831434450 991268535 991353202 545935276 645211643 366252951 737106096 409733191 834071038 603052677 641768128 213172268 662669236 782472732 796245631 152725400 943749126 238269824 782484050 863792740 934049988 182014353 733676815 795221285 908177138 787259016 922744607 89005425 210448606 259493422 427042159 959279580 967487569 550233957 631313338 661690047 766210974 686742815 845654645 861360926 934310478 99407951 359160362 542389057 619596743 632849607 802315800 421480637 948818400 4984006 495530300 99177158 180625151 979789493 993570457 905670622 951986081 84128006 518705632 508153480 589956547 101753786 261975810 470483064 499352837 822115422 935491797 118732120 389979564 223129016 238832680 374814160 681240642 607626719 941430019 648629761 680185168 37223691 119274100 749166304 868146385 14440007 886505457 394052248 515267499 229849445 970628176 444113463 981737174 361956744 721952331 234004688 537840923 803746803 945511546 117692263 781696837 283117351 988153009 353594874 944108444 769150192 961855642 96387047 511500937 161129696 207083823 905490681 907386136 646882062 739344326 400266816 611041405 376102630 522041418 387193463 596360772 161317257 521751097 785939378 842716827 54460042 291546465 868852031 886244001 904668284 910080376 250457070 951657669 964414141 980652352 89356370 487479936 20097181 887078416 838563354 953072872 136165198 983379714 20352160 73600392 583803161 835644428 861560382 877448237 480434735 997190203 914709964 924972796 213256851 410263914 234764125 746804851 690362500 707721781 643104985 750993113 944504394 997048941 465764514 792570174 233570809 635830078 598281508 796194999 948117578 962869847 898928167 986255851 417997324 514681837 978249475 981290219 705462582 845223354 419490120 729064771 959608881 962118438 80010797 83444460 100156604 205618514 752069932 758755029 483303568 697131841 401833747 762062065 140207117 408856622 434848817 551347126 51084462 876018704 797132792 824436760 33013908 553712078 625372369 940889011 716431083 961209941 308260540 833741949 568897916 596110419 947825729 992214400 340843142 710329190 379211152 693641019 141061460 963680012 95883382 446898747 34153672 201374491 380018087 649211832 535238272 924638795 474591775 719164583 666822166 843981457 450116043 765957564 418693094 929194619 806292980 908647950 241572785 474725498 176566516 533399859 693977822 735283627 49599486 214717066 282626290 957834296 585051823 788120761 789540227 951766108 603953403 822901442 860267034 946426387 419561161 987409583 674391183 806165492 371037640 886462296 957983356 966753025 341339141 957856441 945079003 989914209 111152837 130392920 675427272 762928153 586700754 724994583 532469053 947950884 688434340 746044723 387780905 839539719 930595961 970579370 538477071 546094016 243385679 452442671 860362197 911379241 769204510 786206253 20486661 338321342 396019734 978520101 565235538 843639511 535523022 723300342 697229172 913207464 382920183 439267507 432918895 874474541 134210205 677106837 105722077 571728508 930185795 967560668 824566317 871335837 73414443 224634968 460803677 870365480 509800383 727433135 337485538 934003110 205196400 722304458 805572552 995215781 569443132 722704354 592240499 931890732 407262648 634590617 9350090 234745596 83885358 763852326 541487903 697121808 103066222 144691143 851977014 983893394 135161884 719619208 608187468 936737545 535461098 825870909 212175534 910446216 202479961 490345643 531571656 818394359 573346394 671598575 891690146 978486450 186965807 445431857 726395628 968180426 934649876 963400756 95826540 872491640 766526418 982679118 825059045 959803493 977908288 993403404 757920526 793671231 214140851 625986353 699799630 846458655 9273272 704363554 773414618 872116920 874149956 919018116 697982038 843018721 560269847 772416210 496889016 853116834 933323982 959161691 820876896 890403820 286852658 310090152 93374058 286017401 126984520 877064461 319575305 811912613 534861051 764699918 589261209 747118225 662446316 729120241 175648516 374649764 204370764 780112390 512529824 569672284 697635769 772833070 972964291 983433377 798540040 852711034 68975104 513600303 297867163 497398565 276440265 288060152 38347977 207815228 53824462 587558538 902889890 992380055 343396410 614074051 474875318 807378956 993172287 999046552 119889035 719967225 32715589 474076173 311892140 623898197 402935074 666992006 110097134 355745384 848979503 867653405 690673777 774804317 314625788 809562483 636549723 783623527 314512114 464834014 856873390 941792627 961079201 996580578 620912828 843594111 736465786 863288643 617380062 728586652 908013945 921695689 101948435 267141309 456707370 508865352 219579805 846258877 725273308 965329320 581132274 726071694 210009911 962479692 191398015 646795070 959242137 966800959 218723113 911207802 249757700 832741344 126245556 870097605 716112558 958010538 730861926 771381230 967764473 975219616 489004534 632045601 25486091 894166315 437248990 968463944 29953369 315145507 727670975 977640430 632612109 639104036 639657941 795931499 572778068 949463134 732417384 897088638 897347496 920821133 698438340 910781211 618472046 783173699 336720938 523972352 929913364 948182297 847102584 866071671 485645019 692281525 834279932 992625793 312619405 369831407 106279325 368367956 331968488 342237020 44428599 508528311 78122999 865973315 64007039 986414024 931507719 995529636 911483457 913070492 257892801 932031232 533251561 614235386 557895278 740300656 945042832 989042217 596961195 858124280 770725596 781475916 308711625 836166346 560453772 804971089 586057788 910045136 698664295 961697419 949949055 989933030 189520945 512711597 270618120 553136310 330965080 395339388 611534019 845348895 26000206 583775973 184001276 894024572 390281118 969018842 765070225 851675940 395197467 672874195 807843345 943765817 772330168 800383292 404841529 489245680 622049068 792183094 909065208 939748774 649575294 758962623 823223280 914588143 496019836 847169099 217891644 366165273 515542326 956854594 614879280 663022501 93015900 954993748 440439401 939539885 286793546 926950978 376162492 464899225 902992183 969633744 920000087 994878009 136784346 376158417 419465279 479157876 77356221 566476565 554787415 591094159 196557410 603839159 850404729 943983436 853777773 898545625 341777095 739652953 963926489 979338588 210494704 661497441 322178586 674186900 751315311 788041063 74844127 889701287 904618998 957820412 369852178 427422094 877802826 968876623 560749929 897663166 43448175 407534126 353231071 707501649 509348671 848571258 615053610 788826906 852850659 912384315 341701970 807145471 235653910 371117590 852131916 940678806 179057546 733433752 907915065 957505639 827877538 947385549 3173660 709284457 375791057 828725651 569590300 682329903 704864121 953048789 404367950 904259950 472470639 773737984 566986475 910358971 662021052 694369835 208568962 831590095 62455419 573171181 641208897 959862003 605474566 974142414 192098119 252469496 668830034 690406004 581280970 596627788 242050946 517870077 159628923 988427487 626973402 884058120 221302472 618102916 443723372 757649110 447610688 491028827 982378553 994114059 56234065 250744460 118218196 658631088 948845922 974500268 693183458 758221613 598514048 647819834 582653653 940882373 651875250 853992136 264312887 878845643 842767548 854113730 570432596 612639038 261673200 531569448 501303230 815592387 13281838 966211753 478373300 719652729 186990612 294918656 846940329 967374175 330887782 573846093 873995878 975944078 79295660 900804953 455093420 893159635 71535342 846413233 458272656 820457872 87141855 830516110 856947090 927614428 652100935 952547711 354036196 596968330 385284951 484260843 527528137 950073257 854316159 971083942 721869855 758269694 916185064 959911818 68563824 588644656 907693166 964612385 764123647 931557508 680746022 797918158 835382301 907473606 750421949 821994817 160197770 671153942 960328449 978513705 83767675 570548893 243837800 586002684 462473948 607711852 245258140 396678766 494328215 522219345 834627237 930867442 199486352 928636125 252948969 966747744 707324902 750277110 100279169 409434084 413461441 419822470 717820098 757461202 404009505 916213214 646489576 693511351 307003284 696494967 351455888 847185393 79852509 599231697 809406119 984087835 885695861 998069899 988557443 996193710 987194355 999147478 469491241 705734351 309889048 913952217 373705842 630311380 845501897 986259460 352289978 680158867 235592491 251165291 748951803 927700841 219313596 287514652 208955409 375259368 670228920 893829861 556795684 748352323 141613543 161012448 312492657 440225894 592439256 829447603 347321391 417208298 892568062 966191979 317794590 998567820 190144242 782756033 192760659 641239500 479580310 745740527 503576986 818429183 684704497 880818040 557033851 666740147 312145568 515721235 544179575 577451515 308845893 325963325 358674943 947253518 76360084 754881939 498893615 967137079 273825250 772199074 757361187 944092647 728393947 788689701 33557336 325186060 988521 39523594 907943680 908467649 168457919 465462919 321997671 466431228 248910829 854628959 453631066 591787341 995186826 997355089 776191247 934188389 800653573 853191567 338834332 757508407 293053384 831633692 211963182 745546023 633621027 938036966 574763364 891784933 752122668 782043297 375636881 880412022 117647524 147310405 246757852 558585236 14002048 385751494 507776238 511776678 279372829 927947042 501704922 600127606 838265612 982168603 984360820 991728169 187296171 782038776 511749417 982065215 183863325 778319294 865066120 934377214 231944105 254049649 873355965 953166978 435737860 661941525 359394502 833577336 282291560 860833567 699085523 706283576 20173494 193742278 194165289 703285815 432819736 604238652 260851691 649471301 718940329 834465704 183148865 451969908 460502674 969064203 384994508 580751204 228535596 440599623 768461222 910922156 607432439 934999327 785916278 978158150 861309189 916803847 890309788 925054422 885161188 888134022 317734510 522985031 629102666 959751323 330876126 425501921 614335093 657879548 128013483 628236604 475290595 946823150 370531176 468408452 824885608 868665602 573492798 794300125 476856696 539211311 654805447 873532196 753411984 973959724 912043468 976755964 681912164 760451232 475706464 790303081 636440273 683551473 365336685 606448667 760809095 957501036 315198062 416458787 344043875 511860127 828894783 903720932 918512393 983531037 574200881 596482041 814896634 863548120 778433153 856659596 739919877 775734069 901349866 929118275 554756113 804764101 715179530 956374015 184204746 590067728 127050955 772923839 297428611 930398842 604871027 690088306 808177343 847435717 380531936 792039114 287381094 857527419 433327345 967458422 562372934 951436720 791810991 835067323 193508452 411253082 345407887 712785457 265435845 575059649 148991386 470006374 929837370 934302883 210218671 841422129 117285458 547796014 652915921 943038415 514763099 939404283 139264876 162302473 974507268 981160213 198170674 513533295 995745119 998978925 29442584 984977528 658921182 740975783 854288780 923575202 986546356 997901028 846370414 951840922 211993087 990845324 465798066 739539939 602943767 622332276 639429216 648844971 804196037 918967788 632473310 712829534 816836935 818724845 17173926 79669978 943451205 946549071 347178449 733803414 456627312 987121037 718912206 824188495 30317418 317861611 746790413 774772454 242130736 979174576 529730602 683663904 683963198 961088696 638437827 869862583 129901432 247413905 360515301 953218069 915201308 948394859 884750555 922783450 423354955 485917806 914571708 921049688 835241784 874032006 863211001 898189741 471512867 623816122 898210052 912549891 318030813 430953758 134829202 277562579 898600214 936494077 507687055 596913499 615543043 722934662 781886813 794772953 694434282 788997934 408694765 919270025 349253572 772227679 223714246 635140246 951733030 990196369 361924327 605883783 457222849 781891321 65611297 253704530 192159754 390856021 398474111 714316424 554141775 862517646 823325004 935089903 320593471 966428687 441748978 560235415 43570306 980111320 842888324 991930680 439402771 680310824 31851095 308125196 443959592 693207383 812241049 835639200 386023930 588152883 553209752 699521338 414203842 579965544 924269866 975207900 245255046 428215602 221663663 393833570 675946732 742102386 727051694 998350601 9688465 745749559 154771618 375644653 224527461 962997207 877934185 904923463 82509140 416326127 633412758 777462233 552879024 878425125 972765263 993356822 284734460 975147001 751696784 986298737 805302943 973378584 736370605 893406534 171932612 172615942 513612608 654105265 352929023 535413840 3528710 922101698 927223898 992246431 49862552 561791560 969793318 986634704 42027228 891206956 594328962 799867067 244117395 919418346 304218930 952572496 242171974 742932633 583747681 974468971 117311748 441581787 147149429 680449847 82096747 952239199 168365197 192596418 952234235 968947860 512401770 732522784 557415496 944846566 793649667 853816571 777674662 874080648 632499395 835095246 229433523 341869035 342088510 768922811 884833571 981684145 980677255 990743613 757265586 800236831 391680467 806162297 967331205 969301649 391197915 633666169 524836121 642243982 52773730 613344570 919238779 959407537 222441760 681231640 291620847 426449126 606975427 896322941 859801983 954120625 604975266 826365939 208092461 307795942 167510189 890667711 918385685 974876387 367480815 414808889 397858776 817942201 32540132 90763252 988272723 994298624 907230656 913074137 333136120 704755371 289095415 668212736 47145754 684431476 207007154 713803315 978834038 990300953 660288882 843532867 239799213 752781762 218402303 402479403 751364135 967637698 542922799 827196819 773453110 824289171 723671832 767738730 999161461 999363120 632407073 661651071 50353022 967189528 718541641 752828257 739009882 942239186 380837197 856237811 673699649 909473410 87990740 802331802 384087267 613114703 948987223 992266668 62993086 476853315 667838688 917057113 257528484 952065748 617262666 706253320 174391135 428966382 482504786 736396618 862629612 967392124 559271768 694665561 596455736 804498653 964808539 995883114 28951837 121172481 392864104 519720636 719484712 998071291 644510456 818164720 200252314 417224436 525945266 871868426 956999105 996864294 8003197 386088039 234072910 633535688 379673947 381583970 472122756 706162081 840790976 965773372 778356101 900855326 656976848 881530054 633906904 766277184 430690432 865881020 417717549 727733822 137964816 644480086 363903755 872305681 691826587 948108190 71663568 501485425 880438851 925349340 498632209 748224856 146891383 784098733 546468996 831679777 890372179 954163458 637494158 890872456 121011937 793937089 417552968 511395014 415468966 816412739 936221104 956870264 76861973 875449844 637197519 901009432 890771704 916899371 752003023 923499134 475396326 712475340 61601581 663869695 969290158 974321948 905914768 997119631 825797890 990080677 48101434 93666289 903356933 914147670 300938940 902033603 605089463 976720468 750335468 902193784 128818928 530019090 66465727 182971102 736343038 894616487 69372863 512822641 946511598 952792188 233611797 790503070 418601002 811026222 671351900 946061519 403940795 997011104 467578581 651049924 795181770 879873898 904625267 939222717 381552686 874062816 744716776 936414617 932840152 997971745 670793600 858186835 66553425 956516375 959464427 993321953 484437283 922353105 366008231 937027769 587417932 998608216 710504911 803439476 29487791 225529515 905595810 931222435 626795797 885856935 756349595 809152718 114222031 245590275 605048637 964988258 455635387 958016781 607438238 783795828 705276336 728841254 237421970 906508054 437193476 677017394 484006078 806707629 120501702 792556678 657365821 751686243 48504087 72936322 326559834 336980742 473902239 776118684 12204636 957450787 570693885 763060594 510117879 853520533 897179525 925212202 43838293 301362363 69472702 503323636 479261036 991027281 953893269 962257137 897430150 910661314 139285051 218651326 524407565 910354592 212743531 226901785 771537016 937611825 923695385 961628470 840867297 849853585 387577667 643675293 111394955 632835400 615516991 954467404 575408509 828295528 322597518 914696930 721321630 955053282 324942274 766471993 255645808 608105059 28167306 636500035 970404235 983014913 752305250 777334675 712639731 892372797 68615953 456483752 39917308 595050414 658876000 791249823 48665847 211537187 467435187 976043728 52430905 711266464 313325766 674628289 398680901 533648498 340147061 574438550 461915288 564381934 778977970 828673413 169987725 814732210 437730509 503309812 371714995 632344474 53023169 949361822 602819077 752657074 565832493 904824109 693356726 708538024 225375377 628310336 142672584 970962910 47926647 282150725 621254351 823488391 742356120 842588201 612614852 815552602 407106111 623257638 691802776 856501086 976513702 982683277 251264365 942352480 824837027 983212168 987396434 992375823 124749977 593934028 500964741 807291972 433936604 462199414 996715841 998215782 658602966 914556793 196275886 814329163 563710285 728192935 42405411 270365921 410149987 582821516 614325026 990490800 885045059 933572807 549234275 728117675 992349101 998523878 503766531 821640015 638817121 813374796 446769606 922432289 922221510 987220073 381181573 381280059 92810119 352876375 266505962 354626078 646157731 700772953 688517425 841229227 159702728 994864940 965756644 990999564 647434862 768342893 687646051 702946879 283460246 566779754 461234991 859884038 663457531 749818931 662157945 892406747 651276735 706678843 897327404 909258993 622628715 921102814 500013116 889170318 257945879 996356400 626949198 799045396 549273734 742871868 398964465 413175638 834309333 953798498 246128457 914020232 884733133 959472273 887013249 980786346 972727228 996803599 716916191 735704977 24506969 194621382 90429356 737959671 767070751 948892118 21235988 541180807 762304937 922395740 3238599 532815413 290258482 487352100 151390575 212238445 703401235 963722229 217681771 552481551 276845303 992658074 275665363 627565236 735807074 763850751 804075209 984440166 599995050 954661995 936955823 958089899 457871128 751353825 416855356 679167944 66559674 504857650 341712157 629790138 529274107 704809740 938776578 962071855 102774065 386191036 141139909 694417440 802628692 871274627 716199229 823301935 280236066 917828783 526330957 545079401 697069849 916591207 877044997 918711943 68953842 289717484 248219609 483875510 909384229 954764633 134446105 561513780 25412065 73834621 835352426 892801476 549319451 844330705 448790227 978154383 576470145 705977689 259100775 502938241 548864830 598738333 797160087 997466477 843648671 906013215 83189457 297875048 368218642 651799064 693965491 704556072 742514576 953276752 590767660 672615128 236624217 880546529 478888843 735733212 561590033 737431268 265712407 360472676 873618905 887099670 264414784 395179868 280749931 789809645 223623988 622731556 412789163 736234959 52191250 238403702 235771489 476523293 134308698 473003493 524640294 710295561 198815754 884770391 663911625 666130725 870033594 978140948 26949284 288917955 961723140 987390204 23016290 430772706 292158894 533988993 167896208 523217893 113399332 725854324 320644799 549206047 396750788 989699027 837239306 958367870 917621971 980285341 388989046 970343887 33589105 167423259 255577958 978459740 610822797 823018498 16025978 702839908 70434671 807249771 680161235 917510699 87185708 802103067 406732173 539070287 965536561 967422867 631291245 975283459 933590225 945330266 508940567 818059181 739324167 882244592 213577976 994280851 271581284 907689343 714018582 720904355 429956521 715435478 452785944 679459598 102403778 716398337 545972965 745118801 54726270 536928544 32688288 71760268 839561697 907814852 181207691 952516331 403140761 826614473 432694663 869898086 418528801 631252333 888716302 996599910 719745080 816187508 937164324 966763603 152091414 311393167 522068807 819191696 745149008 838823994 738888831 791789411 598136140 833498981 268574906 757259627 653026076 948964614 580888272 603287854 975676020 994946040 531363067 843868536 148911181 561112098 990683864 999237764 782186670 817690052 887555140 956246121 223799167 428509769 184543499 221530327 436107476 799673943 712429542 977742480 102723314 957771388 945982228 966380381 226036593 791501997 18359268 824222815 274731759 454238692 351353339 950478087 787511591 911547887 127855693 388405160 346972134 890304199 960754429 965889095 581876385 740376534 745580400 960982121 685142836 844843529 33495027 256182774 999316254 999317186 414852875 911571411 14739517 839836543 213759833 616050957 794261691 915449554 425648941 430182077 865941796 966541342 994656837 999025554 276653077 711143367 988585721 993497026 723866722 839929910 981448698 988577711 381975657 564921927 148539656 407280379 333030315 951042104 134570205 178364432 427873850 921846539 719872690 869713796 579755110 921859295 98829837 146855162 331515946 889979205 255490578 841647208 39883532 770233039 576791178 919160840 187079161 655038417 876319765 901590114 432462580 793936724 703298656 943853343 417267467 759694385 969949314 997917503 291563812 986009161 767087375 921330452 96714279 930729337 297336163 796245730 465763813 550335335 2056745 210921776 664741063 931056720 729533928 851192036 98678242 421907365 963729770 971471647 187577656 627813615 151608406 626275387 182246179 548582782 187528891 417832076 393796160 851127757 625098566 973618297 517207691 580102523 728064140 970272278 435173009 448591201 793297370 858577210 308809884 838256096 837387458 927186893 692086195 982287427 461887587 492676022 948693486 997032895 930849233 937745369 275646049 766184451 186496188 744717369 395352854 768651625 839709789 933703440 758899073 790145223 34836598 115921656 619171243 908057435 217197969 529128172 549315889 761376090 671564880 785841650 942117025 946256490 28649970 786655829 779885916 900270280 920144906 924946367 560559115 764237686 432751150 659021019 352835827 910115104 540665019 916341023 344468605 391165822 807684953 914968146 319417164 453803773 236541405 751150208 502125315 677539661 890349650 901807384 272399692 611269790 242398992 836283012 86138534 932121916 580741514 942712396 303426374 676924768 517666875 977167748 567127912 621290339 94750706 282578982 381510444 897677514 831814522 891344503 660363679 916940317 28876353 107999341 717966029 823265172 356279491 513985445 783156385 884132327 574980514 641156024 390769757 644881380 166810676 998798952 462610884 551462630 964491859 977796274 397187092 522802673 731824615 964279808 316936653 942212610 554407366 963064693 912624275 971286930 377092806 918828686 281023085 754609425 191647682 826264594 440757949 540086954 731388723 777076378 972136653 985823809 515073129 946633017 817215545 990063714 499608012 942635316 947859317 972010005 262340498 535654689 662236393 857673237 473190447 742937802 213426684 678099662 766600738 845855886 315549947 950773690 664243875 856978626 961884288 968944085 704450728 756855579 50050769 775903716 53055255 237153382 4558148 320314094 991834577 997069866 204658800 265621955 603781378 690879318 311043320 311196672 187955048 479341602 785467212 995875536 15519309 270556425 587451669 837422556 487682658 639175355 562025225 725907792 41246789 404341014 408729456 722542173 849423198 940495241 250303509 578633706 454821603 692187906 7870013 558862878 659506945 716528302 984289752 996607568 614529296 771351246 316484995 332587886 473211427 947282074 379198661 736876556 436902335 832301845 2180681 74976375 270610754 982141402 108153512 711492793 17859500 737643478 578406367 848839176 74999379 82959895 672188796 732476216 19644898 193280422 798600643 948472042 244343580 705893305 728369134 920722519 883499298 992695623 563843591 777602877 499407735 656748957 346568905 398294483 112917569 424814134 448564514 670855362 401196178 553784599 282451576 543365384 277660938 752753985 280437381 366973374 550902332 789175354 787174055 832666333 873064609 918536596 423075001 558356844 38812915 124820164 275570454 474307595 157101832 668544507 15163008 924164417 325761571 488358698 624504390 738348136 64223237 494600715 996925682 998585962 723697622 758616103 412125360 853006858 365777184 896785022 34207294 638080235 365974980 397347530 89514144 981669236 37489443 526061396 907841611 934232154 873556673 993099698 717091195 781679356 533339434 810489102 919839823 983270216 737801092 874695761 388739244 590266034 138319771 464010163 739166081 935281988 872496168 885982179 829424134 850653199 711167813 792556166 946015803 969370080 851182929 915270361 72546699 891550204 747164444 799379953 334470689 786770574 770869930 879129965 541049582 699083031 5837529 63050877 323919601 432479059 140406267 265345745 61949302 746173560 107428561 660797056 483151438 586556615 994429074 995543554 687998730 717128865 698528927 814389984 270240403 941591879 750272514 837674459 602941229 803477996 422498344 475630081 54616208 224189649 994866186 996340725 807487429 894966873 444366138 546534344 731535546 890943957 561053255 648147078 399212428 561202432 603920639 900897480 206440429 561426385 886086197 935546287 93590411 939704638 425161095 888598601 681764278 990839219 896692694 981115548 704018202 898669122 996530378 999269162 419123042 733422555 602573612 811724626 74723199 148235669 445135209 583787252 628915838 664104463 961881643 975101082 94920115 275726592 975202557 982837410 833535211 833721602 905943278 980774583 771736494 856755339 422529781 996241003 170630829 331753384 456336798 737673582 581852821 917213123 421160438 442513805 529654344 835468581 162484469 210822215 926851564 941448681 72024634 361834045 69655921 434985642 712270442 734582932 483614918 773770189 66177333 302555002 419302927 603405483 85565015 143517116 114959667 186316690 434619417 962996558 152629121 888683456 240647337 841114849 166791723 754253963 873110343 981384550 27483227 410541465 814264678 980993229 701843716 885991976 879488657 936966584 54298990 749575802 355925080 961754263 998100494 998700600 759988234 797853699 56107168 168661650 120518237 696837373 19617087 805078885 854586230 863247061 913520077 981031239 708933990 790740428 961855272 991570881 881200860 990213252 218871586 540574090 494462645 750865817 659824234 761749750 733171532 898326875 470109826 782210947 952647474 981303583 608938653 986694760 514159600 568229251 62058792 905974230 482815017 984793225 605633408 727672667 148044386 166251060 651541218 915440150 12105107 173239334 781947601 956867678 12362156 637194694 99848408 319744667 20570295 408677330 598921186 734555321 15684576 663358540 982045700 985100565 614085852 992781145 205597436 509730715 752022612 905960536 421799991 633000388 947043544 954203261 684312012 915109140 285788303 525855240 917355921 973091833 515933855 611735741 510673337 911881579 102420009 981459180 701148640 744247486 188038775 897621124 391402982 646733578 462221491 611643706 259879207 654218436 700283207 959482859 961736937 978725999 128490017 731351009 68673689 630026566 728030877 773123994 418579074 461610666 91138526 874679244 983540941 984807547 509121065 710666889 30022231 601855570 403184832 998379646 665597137 782431158 960478160 979960849 556802894 571887863 603230440 909382211 291745513 526456580 908410474 923384011 379174259 629204518 361989794 913306289 682950160 990742467 80472952 429688000 953230827 956590880 687143143 769757142 713593550 764423434 440631170 791431212 835632992 982084091 863710846 998895666 247893782 252101767 481843239 708150149 678943824 708448525 101133875 433832151 876755372 927277946 894242876 958369633 196522829 457970822 199811749 760199636 908823542 995881390 559721516 613263543 141699241 820028481 260788446 288446072 981895122 983616881 465004031 957406392 868157981 897755804 268533568 358003443 315936072 411621570 49209350 918841852 813063411 932954779 801307467 945853120 536734060 843745008 349625368 367927390 99215387 597753410 454119189 872613434 733652889 772385851 576529856 624259301 621491162 693213816 892304350 995703338 164393842 654742287 639042087 682442385 677904780 890710474 323359450 427181693 98600169 193251168 607134033 968962506 621341437 953613433 227768391 839318711 958532747 990008467 915454819 942515232 533781752 757993269 112016716 870775625 226504418 952932389 96056048 503396440 337824808 995841867 497363596 686545731 837153373 963620224 817485026 831581338 399764947 739979993 889874771 928325065 415360814 597387205 158276651 996499943 432341690 940797126 327102656 686469136 975725922 977171679 612578113 966669099 629634603 798298147 723216149 938166961 579172347 657322101 315342842 699592508 914679678 967451845 250707213 469523161 724326253 979067275 773924520 991067858 494721846 521102410 207158619 952656314 705564338 775224256 323776875 733804068 217574945 989985289 984980471 991974217 214609481 397907320 374387598 500313022 159362822 376012684 986748732 987238746 41282079 893360647 551800157 898139065 919061625 983320804 983137641 996423292 139100030 332959174 312051546 918783784 62331946 95860417 50127904 237543258 428213714 646069915 624784436 987820919 434011103 751656415 667045509 917714055 573383409 663915924 352237350 561626985 169815614 502549115 668955690 939208572 682561920 790478307 481547241 818000511 937899070 995808808 940490235 950765741 145958804 826714754 831975815 950084665 503947122 676769673 396318207 681922438 554387563 574311722 888970671 975362150 789908606 807018342 346831253 849831673 811523118 989400955 290785222 980538069 412737112 886257113 615032452 871052784 460489788 639752062 581398937 643244953 98652976 786649379 132097020 524884578 658712482 887225456 514960489 943954778 307660231 632765533 216988116 381326707 457405411 871663157 885917826 978920508 946292645 969532403 997161747 997471826 201006957 350177152 737872507 998516286 668007453 704151448 128071529 180433245 533860951 714366385 36259629 218511643 951149204 975044700 797555736 886264077 600388390 624119128 930920948 935581654 955032517 968831903 633367208 680485050 830158699 977884525 623884567 877021484 539828343 972610469 546544375 749733986 104491549 788936173 931858903 933147891 917849063 953907099 8363122 239390173 566849536 929249100 498778891 545414347 103534963 208256130 709426015 796113115 68483424 700598798 375753244 774448041 952574168 982557024 13239784 822074345 27848496 187290882 155003030 575149160 427536024 480027154 808590313 899260496 511629663 663326695 183302130 484881039 948205848 969406414 906648336 986510230 422861759 859486258 1609819 410391972 131296028 924102160 923738740 996551937 747489930 921639277 965607460 968557636 678465001 904840559 432636323 545395892 987310025 997738031 858016806 898858996 267312311 705233469 581883444 704282350 755985204 852289002 387483278 603961438 448741401 498651885 916274409 996464282 944983835 985398694 210177278 682433791 115328526 990850599 461075668 925603857 191632630 573643453 742077695 931074479 974401072 986015430 555162082 902759159 7697349 277819814 837698532 947179330 198172731 831334960 27845155 824277793 351313513 495399427 656717957 688492758 373820575 571965037 795914255 800077494 756083985 979398604 607547624 765837706 113194497 781419105 504032535 651197778 844750966 926550797 261502138 893699400 683952351 884715895 706016651 828517773 213501527 580250078 761265455 832009194 182539001 541504254 956135692 968490369 914858065 983203292 204829951 349574174 593305794 777247688 204427941 280652927 382260924 751560932 420103767 765152109 956643069 975275285 63307053 965487374 766602909 947791275 591999020 804138698 623395121 717190565 170968282 450660392 59924543 257017885 59360135 648384192 658531915 782412450 315860430 611046923 12384864 200774343 235893525 292563183 679426034 835782845 210337631 425001218 471118298 709796600 54073760 539005309 570878816 786702587 731022885 777032174 428439794 872996968 314611515 632916412 104223677 164982072 594514871 629277811 906519835 975656402 413802611 918581590 841762450 935740680 255607096 594161808 903957549 950062950 726217664 911596408 668225396 985605236 559737641 736043266 481254327 750814979 519611065 677808420 513819279 957729040 882844611 921058062 762844952 960892834 242754296 951276936 732114956 959737606 971439004 992560285 530179818 571289543 918377216 928313553 144970896 158430179 481754838 705775929 713296441 957182187 480980436 691919397 252209669 333115624 418703593 750911624 43148338 443005507 900074601 916807052 245057348 288424599 210522302 225609912 619767808 701954415 739155406 904354191 805502698 951135385 553874689 697779335 207598370 208101477 395020034 780878039 458351236 876612078 692781051 704289530 260725101 949906436 591968149 829889267 20609062 82166413 964927182 989402477 99394246 594795168 312365612 730467197 337976935 697830935 844380643 852178603 610161783 769945877 905369780 987741649 772067044 940140635 501265742 695481030 47592853 201841161 849644398 890297256 732850930 773066157 805394658 816890378 501807577 586516738 9800225 937631129 632332319 984066465 761453667 955789509 324203475 925761413 329547091 452518820 94609238 922364171 839499969 898555385 849160893 945214077 712657222 998499775 119951336 983848434 92111214 766386593 93340871 634310989 986364867 992873039 643815181 667643553 315610295 866385428 226691976 509886997 385458020 783116085 800942457 842420557 308062706 401904951 259011519 832208650 20894390 311202091 191037251 829242903 106099614 513460940 171925146 725955089 224373461 482658203 298229981 955505713 896467399 918248934 960143381 971291476 67436765 80759434 304939399 310326163 530209395 902760391 942519201 949983992 715964030 936859001 7088318 601457246 48734269 679902550 611557915 699751032 241569912 645156084 487074175 551512348 857491665 885628347 729578895 910232450 215225062 529897264 912264133 997633518 255781006 572134330 654450005 870099401 471380974 730595440 912323380 962584435 883037567 953913245 984809693 989749517 464059380 509733417 585436168 618378788 151884089 216311603 204720073 597223809 871538177 886755213 29291782 258981681 286829248 485531122 245722799 362930471 606091996 607185504 147730628 878971997 540578459 906576227 183230540 927180405 274185885 666638311 816568060 898981936 128739217 453398752 411188588 707538522 188982229 535033577 324050073 723635519 854687174 872843943 558717547 853862110 965904989 979128310 673211938 805925396 661736137 901981584 272202912 735434522 908622280 994622246 403572766 409303520 583467886 627483961 488985012 816234320 517334605 909481836 604905029 645620137 821830239 927458627 334619099 488728501 318639530 777101966 598347165 766087154 322489146 909581893 55490189 382852964 890042788 913480755 170154312 275248583 387146697 795913330 920358953 940566522 520295157 596347899 887059911 920439505 433758172 850882104 456459511 948211599 461018909 947690757 303074670 782978694 984307148 994345344 160808519 987866310 910462792 910825469 44113145 731358307 789423762 898580231 730809049 874988939 863313302 992034785 378143594 652502889 494794439 573971912 668234038 878538398 591734568 625798956 194173295 888526210 325765514 968998904 7186043 898181854 339594203 916783593 763019029 914524337 479681033 790613487 973738336 994377784 402195981 882838869 434348250 595570561 3367872 816630037 444140230 492206010 935522397 996754542 261011956 680541203 830753850 956698480 905981792 919182243 403850479 705317164 407019937 587702663 637224091 664651242 38125908 255416795 713232580 941303431 819505026 916193611 443874886 486413076 698535590 953828904 484507295 872757351 192978964 747985407 73393970 917717516 440554451 469869881 949571039 979987600 83707711 465359361 700638032 892192548 164582682 795197283 488285331 546795525 47215272 825706723 6657678 742298486 504116979 874911718 9708859 793037598 52873725 137987594 801934357 895749853 421831420 537860131 943424215 947375112 273062353 848068746 426747992 977085717 165655854 798073644 519014035 758163548 117137265 482832170 157608995 854236251 191827094 609903087 843134444 991900587 923386884 959049446 814708444 991704782 800859761 828225843 204614933 968200995 463798571 602106344 76269914 578805952 986810449 992372644 743835748 909036720 662574033 896035396 572276183 756203072 266094292 875273782 41627326 540218368 416226965 814119342 905648180 919264667 944394116 969360699 176704101 474964508 723250619 775231814 563560227 628056703 451792068 855120372 595657969 861581635 772152402 817173498 479528193 960841705 206115579 478140209 664231666 855364545 787776356 998608227 643606516 858673045 246331869 357242275 896476209 902608149 843871672 886184060 149318378 398447146 541847992 624729274 270187484 987206752 897141598 965736220 33878055 618199221 28281421 841397104 401265923 713022106 945918598 971817093 158122366 513263236 625363480 941889880 706915919 985419089 129041171 441623823 957483919 989084349 215323522 480911320 950093906 956909396 623072339 815743152 755060166 832167369 124716215 335095095 932602035 942770914 966639983 994076730 720015643 930715378 339383215 980116641 624021322 689373121 148737200 559311391 309309797 469806702 113408472 210734567 565322359 910215604 63367663 885309316 669647702 946509919 583907354 594911035 590873710 656969898 868711972 966971775 787045820 912339239 515429537 987207173 179167799 917551839 80142994 534602158 176235873 859511591 530227397 571290801 565252111 686816644 773377137 850847696 125807123 346501872 637759442 884904355 302082295 840716883 468528582 872844450 835273764 962663275 826072934 963355250 456155552 781927905 828996582 900979879 854535355 898242018 277077483 430640242 956824449 976105673 716723135 868917520 217665058 557194408 381252810 583544008 723575813 983016702 871380051 987778058 631733088 885802085 723932755 868473807 99888604 120939248 530179307 716016777 109079346 671178319 590129452 772082275 356924215 697330557 473814474 734240035 180522661 197735319 664440275 818865788 783038115 915054595 930005030 941434024 873549480 998568781 95876795 252535708 706755543 726691755 948864310 976165985 298814328 902679325 699159521 744788091 754397983 873441603 715711300 935776550 848211891 879718870 868033922 905036690 262431502 934145659 970716650 974635748 221318684 465256168 994996958 996917364 961357030 994974059 443839656 666917687 778662840 919328249 714629534 997666401 943374654 973533912 531474808 578733225 451451621 798617885 420123187 524400708 319885288 947078222 787844450 890660323 536016424 650292239 345048266 920927450 352955000 991928637 252477570 581066838 974989113 995615273 22733763 265930786 464833586 777542691 571764504 824797346 586869931 838311844 856794991 872355064 574366586 859962538 961321648 979791961 997318196 998721954 424982068 527408289 924505310 973612122 796963654 885663541 128376346 799524271 27312256 371149392 240945404 449776440 524695488 676263380 349067467 350153870 514087970 698967352 506704208 780030246 724765140 855030582 608721219 660649038 893223373 991797845 93980919 649736343 858422666 883893697 657782949 661384440 611703542 907691262 753695388 864564531 693072278 910346748 573492283 895029141 984554232 990741226 217186894 948717106 61658023 334655795 802966416 840196494 379028676 481991372 126470612 985091084 139265724 345296555 222920613 606839271 11091054 396180187 998771846 999323483 820546675 998535451 144527444 758451488 819393812 835869230 135762630 733243823 813580857 920869747 686949729 965724065 904202489 961102051 625680846 740361527 391053643 659175036 150584119 599271243 690923932 816866778 858988076 974315345 933533646 972819038 209484248 647792177 585203476 983045132 106577087 382226327 773701701 830784166 306461910 834982078 39828063 575498289 444197054 631300426 527037831 635703474 644680127 889329581 425474238 483744774 83113728 617630622 528508106 564702045 776344621 901092614 939485661 958437531 116820010 420497665 791776226 810907945 410019139 685727824 306386154 503852373 895987423 994764152 454743286 959179057 995400559 995922951 483913904 513869050 886068863 918822707 485529546 526938460 367011824 803617859 270467912 769294805 807312739 994529482 481892644 993844129 802150761 914535540 211417269 391092097 978055684 993510536 254573140 592113878 602863002 914822698 818451523 933594673 908491333 938001224 552958508 819354957 587080887 836703887 361686158 623525735 627320075 815356706 320716035 697532216 914832390 950929920 167716173 217374376 568294349 697051929 268181390 957527659 770720609 899921412 136239778 613223002 562656345 738775114 747582149 963479068 822885763 963774018 127139443 689957625 610171483 685943497 624047435 878302223 685518346 951348267 110848440 754381277 857821127 972356970 937433854 945785502 699936789 706183430 619398427 909985672 658253472 835990313 214324640 305578853 107829465 272747724 886993885 918061062 378497193 470842523 312886897 435133451 841088511 901611897 900399513 994287023 66387132 185858739 470440755 721480166 87588324 853305143 354676027 380636496 525961811 568055097 293803147 472446988 998662876 998766140 919526350 989664465 621585380 801080832 528794197 595742037 87622761 343192704 62644649 901250108 156590164 649215499 746032976 830567457 486397911 522420436 950546308 980638958 909145274 952995910 232146635 920445780 60896194 964672530 466122948 539690079 662289192 806925326 638852213 915426767 910586078 956951544 509337457 559710598 566005195 956248424 23273018 283697605 277476327 948600312 140433578 985226280 851391189 903291521 80701336 201364633 647486945 910803779 986569196 995163667 906984786 997694885 568048903 907440776 804121185 940415731 591669646 827262685 327574884 559675216 971646355 995274667 219089634 354924648 744215555 987959748 957054506 981572338 789040547 800833505 516522542 972817947 482365666 738311821 189240629 609334629 428682754 650697059 991565299 998654360 252440072 683540044 469395843 694389569 740392848 988641033 416775670 748418201 440863498 865964670 276303083 891876710 834882187 981219487 421523734 575439170 257555807 623301824 451304631 961398726 419167375 860405336 319724400 421366936 752916550 896284311 545619100 549705717 65426498 283615432 717907029 934974206 253855226 634944966 971941483 998065615 948010736 952717868 67290993 172587219 651291836 794433074 736115537 899662898 506232766 987580895 162347078 367878590 842387683 918178558 55757825 927223452 540657266 979229494 834957443 993979737 315885978 631098319 14576390 116436261 624966972 993193609 85048149 438391108 661565536 871251235 990500507 993247561 155945747 567929105 366025405 975503891 77442885 116636404 686116173 754121512 791195778 939723284 603832141 658950601 59455865 383146813 553409805 651061381 718022719 974027030 167359789 380161309 429321972 680369165 231728708 317157346 373575050 937703273 884299692 974918098 175689214 903509736 981617080 996305136 503948600 537964693 702393026 784794670 599300276 995454107 433185878 527228835 541825613 870935234 232021726 840022753 145720970 530066993 766782262 998428067 232073801 730399857 283943241 921723023 416052480 493954889 743263814 750074954 30996454 277738643 217175798 822284023 848691928 959926611 251107290 477338941 167958476 577321293 29783 280352278 793084017 849362341 211387678 627736156 812414034 828532990 501044667 809061134 497468876 772517964 334098844 423055551 930770731 939142410 205092042 888468719 403398813 563167052 856422463 876279006 746655766 984600780 622940951 990173858 32543913 101124996 943412552 985608233 696270832 994203434 848578661 910401305 873598956 925092645 522451210 912251858 722583380 867823066 106719568 411527622 734454279 905412402 731838873 807413216 480978528 816471348 872356350 946245595 714048120 864935553 642901110 764419824 526253910 960600993 294082239 503281032 157616909 888874090 275058112 942830362 875373234 988590701 568609789 725193226 179583311 974958393 645438596 663002159 853973486 959139829 476346686 567192611 495354409 567376843 867371207 983308693 431671039 738400575 278587774 447682891 182914309 748542352 643231306 912644303 938917078 995420389 466988635 777471752 128791503 497444693 619200473 804432788 124774196 760085482 268015389 835439030 229783967 271631147 520706408 623171457 308659977 620032982 100189151 604525517 50677176 585273806 464130426 733781216 922365593 925853139 112344701 807478262 58454904 318231546 552798470 748131327 867722236 936040814 423796498 787513557 191861962 958910693 180410557 595055288 202825603 472319772 729279691 813048397 68602488 391767637 92761020 799273034 318735851 475213109 834923787 908297584 32820337 437547920 588134802 998861570 103430674 747525219 825218308 839525174 952208705 995128943 123551957 377597042 856479328 984286632 916916051 965253862 967727777 976043797 48171532 723577626 162350843 317884043 104662863 842606833 296813530 909468799 415913872 689061674 464551340 629027879 749249296 974565586 956592737 989568210 572741441 972144003 333713909 746553296 75387455 862646917 460784803 834375366 28087657 946063059 368324011 549077517 455226022 575321635 915517948 943899814 969846470 970884401 4336616 964639008 305106547 749511268 428963362 488636082 58402574 333208741 184194830 737907917 877811281 958088462 528978309 821305851 70401325 436646866 713937386 891005528 364694180 455698153 508295138 787834958 445772495 700156029 513467920 912777796 440590533 504289389 873236020 895377992 388226769 408656607 632387863 688786797 673315634 975860100 648252272 785038808 214300086 621307748 470814823 640887126 776001798 945979011 398611782 863242072 438170711 704686989 961494929 975269525 972174300 994706283 487506011 898368967 125291681 265754968 795651805 836716064 133860536 529042198 69582045 641258935 203889139 714058540 792442918 828038901 73226024 830451440 391461699 420404812 114549633 292546403 910944745 938166616 95901898 217475542 498256004 713498181 644113933 991364980 559852519 862201755 737743673 875941207 74809131 229462928 690844529 848816489 488851544 733004500 90487601 355444704 118562412 914997441 277415192 643967282 225592289 334267644 595533804 860981424 301209035 423293532 298521965 814044187 875110085 930549247 669936916 972257838 743799383 749841865 171765103 237823223 86980572 276631013 634915987 750161707 214610253 609061482 666277862 963213377 927165406 995017930 289285309 363223400 639967455 667184849 734783892 847899788 73651028 389008724 475427673 846020608 500137988 911800130 311375558 842465338 517850737 562906136 921435459 927803159 235997618 741528425 14574808 148895471 876591154 966751353 180888223 410238714 222071819 825163453 669095230 843839145 660620648 752437861 581896646 978716763 300140 333526483 760326864 799732716 895728210 900127123 302723551 840130957 446324616 915061303 261041820 929399329 425553404 635560399 795954764 809969610 806520455 943852686 961199822 995561740 54882225 185263770 312146988 801978748 290753824 653120701 585432573 869840103 493621696 647594918 279986943 515197658 354497364 841979242 250208068 771717237 98969477 472957051 168334805 782657191 803176918 835304077 436960551 761704409 84885980 122114617 32718326 262617901 983087061 997081527 380196772 984034345 720578767 910931085 392154478 406891080 907193111 913904817 144789815 761625016 344575789 740964293 736002597 958147894 580051086 888470043 240469016 625827748 434926337 936117611 464233439 584957211 218612071 458225602 292791001 313203151 4429245 231552147 620066115 632234353 864024735 979405134 798154470 948978629 241536675 868303677 941018522 987193609 503130456 925942566 92075558 496745721 382749051 422898030 103231381 701295704 808186341 897095550 148200866 488644243 285481161 344444381 13768527 237808026 295109993 425842980 346837975 584227453 662658533 663190591 787384265 898930547 872558305 977758007 734606599 945093396 721441846 828232177 641915337 746414472 937172321 939820590 724622297 924386339 768064193 915386788 337047314 518008717 743116288 843853930 392755839 872299432 187743512 284765062 45897637 721923609 474966239 571886714 800202538 818161842 545975864 739954430 875124617 970261016 964289770 964540551 3075582 963427520 159584334 279688504 4494547 639270978 686779167 837655718 41919007 863622421 535168028 605150318 577025302 677455885 992510949 995585613 698905075 783748016 448145407 937061318 94363757 502861843 18563316 47703268 771336166 891724281 829548728 971618004 324721032 738705269 895388369 952589249 329254956 795015050 83949112 458312035 325529319 347384704 754772338 830409482 67674152 267589855 886121610 923138031 533163585 986636980 292808620 500162881 696281557 797044690 580492185 737513033 585098854 807417437 106003427 955618148 755223989 789410586 969040530 985125597 128581953 673234960 868397620 998477890 729098915 868445499 159998175 727852130 572887703 810983493 808277901 981094145 116516986 593870737 536531632 602476844 587956762 682613246 609432447 683851282 432537612 553256669 213826380 576966886 473395188 646518686 720990165 912051803 229847529 830334299 797345276 837560973 631511100 752826792 757684427 898923825 2950266 428003292 484931462 735680417 40138656 779210064 270037353 609842719 424617410 921605155 777103384 779608392 992907201 993078666 388638476 454943066 970389898 988360130 247152802 463862765 941569434 962643142 596850838 610218102 2436037 381402847 62994512 782802131 655005095 769228350 893661864 937633590 134600832 962248578 468488012 481441811 810330379 869725439 933929082 976909614 61269171 949354295 549216362 888272667 515875485 867886208 879330679 882965798 306054724 365575939 952976673 990655130 851116694 993057607 410468215 763197714 551423562 621185923 990956629 998294798 382896390 638847197 505266145 793882726 703165962 959830167 362581815 766065988 895670806 979642651 427179147 492417926 969435502 989175803 800746429 942434098 579509374 978052157 474646413 524490100 1640616 871018801 781112394 918465918 610256054 794150394 958182895 989771009 637983632 728817989 150897740 642897454 545813235 887941852 984950983 996363628 911481505 931856389 683496595 845986095 762999306 780137796 983691884 988911593 648428259 679081070 408910375 537975633 763804352 891928306 304259189 753697863 176782218 312359627 991812754 992926565 489832833 924375131 333651490 967288896 876968585 970652386 66875379 787596173 234102155 583038507 969452284 970741168 796445295 983717347 485718469 998683816 483933176 552639225 587934758 612626138 787591437 842404726 396895490 640565142 704254684 890530525 665995578 932176679 301772200 723248183 235485325 712257301 197422452 830147547 229351836 483184273 746872114 807573081 504462659 763816216 216483685 961927828 688633565 911886201 343751381 375696743 210669520 587440554 718781812 972253250 558806297 876346750 312657953 616811450 180434144 784068744 18717660 910061683 53555700 806483005 248723495 310930050 696722880 895739544 768424266 850790631 254843691 378320712 130570439 827414103 219623124 553747575 108503886 208117194 916481269 948592187 827198442 935264273 269934284 298386712 663470912 872044601 486984848 639045269 313369712 791128151 184285128 332466749 429565526 981291888 660266216 787165860 710866638 970931550 476414548 916009985 909381166 924940128 936536 963631682 352997704 726897028 708678058 852935091 187074950 554788111 550797055 980969828 706852230 715631927 231306180 385186211 991491270 991865956 989709719 996712742 815144861 847692189 285928736 702047636 919891339 962253334 255146259 892979059 286264827 386627765 730913496 745504734 277024584 541758210 798841849 954683435 854511177 953436790 410660702 777328984 888544987 889849265 951732591 987819020 498444389 542147288 318036579 683534761 755730610 947521173 897797917 910048188 858504035 906326475 84959524 528161587 477837691 554203841 981677661 983567961 14534154 557667294 825217815 993184004 829334970 957182644 147678203 438552446 448762521 756254859 847381868 978112967 13667982 259432250 221376893 263114914 491120075 982997654 295414805 647747748 771966672 951458144 731436042 898952306 189138023 646735715 776377272 987294483 152854108 348004599 579523146 900235323 626128373 899798158 245925211 320554885 425567013 917002339 887341263 965154639 835699517 924369954 768942653 842410137 510780175 926734940 871320196 966443155 185427069 227079161 397729135 735923162 279796850 548600990 874137556 887611581 38766147 168629517 654832602 960449255 976921589 980242268 429435945 724088911 317744136 917427892 292717998 924866200 414800325 635492706 771192024 814804843 577880839 581224852 16877771 783919559 289558149 650805196 410282053 492941144 645015322 820048262 689533097 944923592 878692622 899592865 608195685 627500860 960697110 960738663 47139181 967632264 757313188 972381077 7607139 570990689 236612651 892260683 888150448 998247704 361054855 402136126 161125037 928582204 951690914 979595656 160738 251321694 974213884 996112951 128197558 490878704 695665832 846247134 952112911 979895370 570993481 970964823 579565391 611688724 730260210 842860926 563232184 860835026 265554533 418315218 212602158 446247760 190296335 930329042 822680564 975488012 750508524 764455764 724305677 822821645 492283163 949806697 19450824 826800705 977526436 981160140 69464488 496648705 99788717 697957795 753458267 782379432 758132467 996393561 613711228 989940505 479962226 998548446 988803725 996937249 824856851 904399354 972394092 978876187 962464137 990384378 487174698 710316694 362567785 968200356 795009937 923767904 395020072 855352156 4103816 711123054 991485555 997232531 509271822 904239598 112543758 739203873 947349121 947892595 223723827 488261303 587826919 834509934 114901085 888580255 242323758 625153237 298388902 874188131 635473981 762589153 517713326 594460359 593685774 767847154 72569301 916071331 691811468 815863045 135285757 907262744 930081816 997638912 578169273 614929313 112769093 723411910 651655247 960342954 926031309 964601459 644076520 718958600 951823657 998339528 819095056 954795809 919855383 920850555 354987234 601291772 715788702 988459842 274067649 578646384 247701415 291420931 788759906 874606631 605154813 921651497 810409175 980815917 253896562 659427680 550863614 843436409 252924884 257960027 683646017 772479058 501091709 843677158 5736553 601683548 632466812 859513744 47671066 980680068 146781575 939788928 336479249 551033001 430486355 915858500 258117485 466017551 573466559 722269678 856944071 961526763 557241288 728203309 494278040 907484675 733677076 838675308 460162467 543688436 584863743 678910871 565998395 788826333 933765785 992482985 804781997 904818476 103354269 837984812 192767789 664448613 934773061 965245422 126391652 883613177 384763009 750462112 157662286 590270371 199681200 368885810 165081814 899469194 595162743 961833378 862456989 969947555 421365361 932613940 647885157 774227074 437879896 548332906 550843489 991413144 981746024 991813257 676646949 701247754 602199172 997220194 517312200 939630853 966715716 979707728 64963268 600734628 59240419 131488707 18432384 383485686 470675908 876076936 370281556 982625194 531787631 976592222 272519703 728374992 110846122 961864935 715052139 995871614 661989726 668777319 564800042 721682800 153733258 836325258 242529658 739352816 542049498 754466356 318971601 493544056 127851425 654801666 554676466 675847430 942511926 950597738 234583237 813143302 460485609 864524357 191831443 200522382 843404711 985500557 106390878 201024175 555149219 871380245 7258324 978737962 778314737 844497584 306933237 412957772 910291987 959456574 372199663 984694343 600304300 632895741 906575523 982227111 241095227 747948207 552184881 852748394 561647017 656627117 459474491 880010073 888528762 970012979 366205156 923845319 189027704 666135575 473875018 785431196 542970388 618525334 303870112 532343488 813300038 833719275 823519017 824203851 611397606 670766191 519551176 654831754 212244892 241954704 601635912 701998228 600038151 829632331 168426705 828228798 28066513 813858675 256447166 634793190 230036571 869075272 208675260 949925772 198179571 609751706 211109758 784280026 450331569 589019826 439694741 934490973 984626154 987610601 200479020 344837424 188665207 609234599 442576445 953570445 49093295 682114971 672051158 894125093 418259717 555115531 661492858 861662563 121678590 421623793 793217628 800102569 413941534 462451878 377995751 436622767 879038934 919051659 682489700 824552524 829641933 923538147 857830684 911186065 884047336 979428791 384267739 948389103 961888005 998282362 861425120 872926635 864215263 978801701 905953642 994951470 342751337 599841841 978541252 982885808 630333780 888998344 730692301 922775430 248868714 255077288 179876072 693410173 355621318 867821108 992391320 993222798 936605565 984008098 222365514 449875541 745539560 922378959 462354807 906730957 605642414 963113765 911831828 930339156 606338304 883224378 805470946 878250813 91521851 831046109 772513827 773848667 538023764 829080181 185426659 519059620 869759896 961013284 701966932 827200174 454523319 516276449 288660366 625386257 949573286 978195708 382609199 806362794 795739810 895091633 252172546 638621649 831833434 986459998 852712713 886106861 468404714 865828575 545978628 758947058 707654394 821350977 74245786 339881593 84239610 777583557 916554777 932339738 644401707 674624246 646343899 682181560 376528652 849606401 475401723 564930301 351913232 775942728 115122387 757788409 779860823 951828167 697499655 760087372 173866093 454325550 490706037 886087473 822100170 843968698 630636404 914965159 863260112 921142690 224427102 951621191 601196369 685602277 606499386 961073937 45649768 925535937 687736015 898118351 354428013 879937022 702701989 891403796 44811043 814991503 209609253 437984949 772640013 812486038 413788760 968233744 251158954 641724272 752589425 876920360 764838315 964579841 571497497 688148157 516865619 862741302 847505426 997841083 897680005 917253584 630178947 684920548 862832904 919794855 803382749 918014951 33731196 327355747 315903970 406249068 804198452 999314234 416201827 890039875 655610026 816133686 544660191 763401245 980001324 993770794 988063582 989247434 630756211 990106694 473114995 636576687 320187155 377882545 599882213 993531174 539151740 993256476 561489907 567792294 975146043 989472718 263509783 584461440 917069912 947884689 879163131 905223793 132543578 334531116 286897828 532821991 165140287 868747772 218211158 407378284 39893171 251227748 763673173 849301711 82913364 796291218 218610928 722370639 768006938 868931823 293421765 802564407 382565322 908117280 545007030 933212587 58224707 914239449 546609884 827202759 551927904 963000445 291021170 615478170 435638804 783982875 859231756 989905826 534941232 969459272 413182240 788579750 856909685 932972035 149712932 366260214 75423664 837584783 861273177 932677053 159742512 307476481 451754530 945551907 254484659 604173913 639604859 929393753 844989403 978049032 648503845 842868796 222070294 239670930 401152191 755071643 23987762 179136350 729250093 765845221 141093723 784056676 534688405 650646281 189465963 413412371 880368117 942171177 924019136 972988656 465936581 638750016 1231662 799420704 269584205 652044097 713667174 899961352 443512813 480438111 979150616 990093228 85852933 676536864 192681686 247550657 256510062 663037789 304515904 516280332 1531615 941761575 587218472 773693985 871615435 872979148 945638911 959352665 98546880 517273380 532827256 895240699 151760316 877214620 44758756 507537876 589816847 808768018 117916014 692760686 65075049 490603783 237670966 263473010 750766945 846258049 518854197 811967646 510082581 515857220 364841003 687529733 779560686 824215687 362223560 924316517 83535118 228347221 128793074 414144602 33183842 205369591 869277882 903341336 389047446 648433115 624636030 634987638 36498994 628164576 835987935 921060637 417681132 669577827 816806783 852625815 968363835 990335945 664133718 763112727 324349319 563484271 722963072 992045633 694218044 850432703 174448337 614924675 555913463 986266677 205978878 572792442 362318020 950666884 186201527 457937596 748061417 890008090 774084261 892248545 842142100 880332480 474355669 544782742 490633251 913698102 404576265 588637155 707164910 860974064 890329767 940823486 319278030 541684023 676016255 812641833 816141796 897380035 906669809 953893302 563523065 852678607 194531367 330968166 409764047 817740611 727033231 729083085 2986908 586673661 17933895 557643295 758000978 989983192 508271875 788986822 69237696 82558295 643105265 867217285 186310542 781176460 148760626 250180945 170877812 518897833 870514583 907012460 517137708 869814591 565046588 732643413 48686736 231846464 738267909 977425752 201481205 880459430 366571050 955213189 966130278 974420237 877713297 956520120 678357698 800223523 144053558 195072577 404152235 412978127 569010031 927490374 175688169 448341021 905794665 935718319 609705466 635521974 361814372 638344541 379086018 607535835 890680074 919636721 944299863 962853054 532711875 847718073 710304952 832002900 605504088 956929532 772919195 777743701 152083197 934646049 44334384 296498894 438572860 757836697 511024012 719031340 739348758 770497294 497383156 765099564 23784417 184411826 440631061 581628344 814432833 988804949 947802590 955497909 813873262 846044725 44312079 259779035 96914302 628947099 880831682 989880242 634964793 912729422 538866831 580985673 55927656 625171513 870536156 920524687 9558603 155240934 519288317 604229525 794552961 896162083 508883348 683135229 94414145 726544753 94416840 953156862 532748896 574647494 622495265 763972874 380840832 568306123 592426852 981733229 271436417 716919098 396312802 547386310 570506882 879720569 864223898 881140489 467657506 955254558 307400245 975459033 469069349 916394331 700221024 883244250 884157048 927399153 370966077 429983066 493082473 543588624 723205779 917037599 166737077 598531407 316729836 635981231 494683007 917047285 671880907 688024552 305397361 402921278 531058788 603791168 648774889 738369331 10040204 408870355 881904891 889841069 874961553 970848600 926048827 944715842 648195772 662865243 830076057 878086222 743338698 790050620 897547173 929913553 440142377 641982596 94829978 211610496 375236261 764254449 605108092 634718407 869083606 946099090 932427681 964348481 557819094 897641109 909338319 971631124 463007762 907925934 290346581 906943661 595530817 851453033 33011214 555733449 648603547 962505455 932810679 960756195 464132093 862432454 560894487 767584057 972445156 985332019 452259324 519332084 435058989 435925405 798023774 986849439 215082040 334089607 300458505 877697522 833629876 843978589 478158604 792748672 938426982 990978711 197774526 947108387 264295844 791212649 515265169 672576628 621872021 893700158 88365294 240321733 836459882 862899321 967088250 988681877 487736545 939737290 679682203 899843365 942968743 962970564 269829877 382873836 728039275 782526472 545131872 936506813 786827217 911727691 75723022 732617562 642135135 675159803 368914040 998610061 775929640 916075792 465009970 957775064 8418082 36306776 621688021 776143544 265123732 520719772 839142908 964324397 971179995 997307084 352242463 417575520 559189208 822453330 940200645 960441150 992261220 997318392 721385546 886852236 600341712 916514876 342578849 642368944 456474726 630151244 855077456 892566330 747770668 752362439 269136671 421217734 173202771 949082116 178826298 660774847 187003284 592640455 490270306 573243276 76864217 548743937 766028919 822713212 704403170 944944745 98873235 195876787 104860389 643704557 48115506 390317564 792635635 927465085 458398506 628864531 563083030 842794819 926694970 986430334 531494347 993982675 385593467 873526346 647238614 957467077 345137065 487869541 418144945 605939540 744700658 935999625 541381376 870735040 165416061 399936063 740834042 771439777 169327481 327086569 13811961 932419792 220801770 786945287 333258465 606043165 897333077 911105128 450717910 976379914 454629773 687759209 238982083 751004312 567418191 958824854 870674828 873315259 988847329 991332335 333032100 865397293 535287557 570702623 380333184 747892978 530499066 645316739 12500933 767561521 464391555 623702875 144642678 763103645 434452535 692728974 301931545 828026776 659244953 909341354 32747719 686508955 272847023 685999929 305840359 316437079 816923318 886496751 487362004 612994897 285397450 783129097 219741595 548153822 971590209 989940414 669735927 734083808 479763767 484505816 295776094 424519615 15186342 941638485 186185422 399935389 606109535 990874723 465135464 814894562 870854624 971858318 926972190 971555444 79616102 713347011 68476185 924709784 460595803 880531890 275093394 475289351 448075309 719711775 698918237 957217142 585897265 610509674 763265620 830700233 618251431 964417518 29574072 456705792 399530980 668600810 418178708 620540480 417981155 777198109 74256091 641595715 2875642 780857061 199259017 460009337 487733703 493620148 567017719 760685615 714492382 862654054 919048724 989944538 169449811 389354173 19466087 62952455 440615907 444518043 433066428 927188386 211032644 565503348 92948492 692926358 243964967 739982184 935636315 985045943 169759771 958749334 351073675 802570918 817849120 842726928 378361943 420983086 606711977 938320598 948027365 976052962 764420644 863375787 447702107 625107824 890450874 910770768 425622973 823286702 913176128 933743839 480653511 815446627 386579317 762746203 17279943 224001294 665033161 734093410 534316691 637524580 876905068 892206585 423528258 862879261 714190646 812641509 643167973 886315078 185949180 188888500 799922943 832216648 737195200 737752853 40049867 55173164 326111107 902097895 693050170 860609286 69107647 597521924 929268909 965069269 754163705 853572368 71173281 350269687 172396462 255141799 533057552 841618035 762924684 886423871 140436127 408278811 721471283 843040486 904711393 990921330 937647131 989310129 248041508 969786731 563758038 643283132 62117631 672934367 713137230 714534279 504027037 967725377 633323223 691825231 293832137 928287194 789043690 892897405 356346179 450795194 210652394 230946695 96202375 342246711 813242148 831899430 693595361 984527954 752057010 852731845 658797459 891860284 107639660 486832298 190202785 979493586 123030563 511925858 760497246 987173849 550752170 613586450 686406205 829538133 619997851 853657950 833495350 928384895 549168645 987392872 816333769 920378971 427903067 768414308 97729684 876550316 717708204 723120336 812948000 941613273 490705296 909799617 622211659 973483394 302285117 363113781 159229440 279017810 337006245 548891079 854967401 953878520 241523599 312468836 380665550 761188993 893137539 994352705 846499832 974931986 840173517 988673478 471236243 643933944 883808658 960756806 311020858 756344286 410508691 515028092 334882946 654163717 466542991 574689229 906709626 923357840 620333270 881874997 172590027 886023040 699216303 745649072 655022589 679781738 968192199 986494133 863694469 936998171 792664329 900832206 386795415 797518618 650241498 905482241 792992931 963464029 792758518 896235955 175961169 384801928 370254674 993441181 789797952 957077665 260721673 704008330 322408703 450954819 13579901 951363503 536417263 671634302 977607980 992676073 533368372 883132557 299004136 808275847 297782136 416368131 392635306 518071401 117282657 540821158 174235006 355663951 287795442 693492331 552452807 983650764 902086794 923557316 613957842 653263799 636314419 928156196 163740652 291448769 726943391 749564244 593291100 773553568 412159523 907197282 820136623 948911274 723869791 960786092 811028587 979760528 708009016 887741857 958495245 994567739 392582240 755838829 172879626 806017860 489744803 720111477 748198040 931267071 905724732 988194424 52426789 890198075 153167154 658997833 615995570 628312925 179059858 861324971 386241037 404858893 344095554 353492120 538349549 840101076 465163608 832010059 674193144 785042066 272122296 864485682 310314114 755840351 818614245 883990054 483804098 841762963 465636877 986004398 708928171 796152332 138324982 769144554 528224813 772809866 202684226 368951395 386740773 937240268 777268554 910580760 706469941 756224631 494572889 535647720 746527839 763909470 161990151 238519806 132175245 556851167 56178624 427656095 920081282 945229491 414407343 688339274 438799199 839243092 568501019 697036360 654790848 755332786 699354804 718442765 165141317 462296708 293352114 897998015 832168465 940149174 963256307 994423576 637849098 879516081 980456692 981820383 131116130 610417374 522757261 720195142 252152858 612167944 896550282 937756150 885300328 981173572 148460226 470491067 864943902 984892187 203840246 568533161 484660765 859304910 291818189 533624523 599675021 947848939 987322376 998956251 167901565 488474885 937035086 951693486 668275270 939853438 498125060 730173837 636811099 701620323 558294859 719408321 325949816 900077204 866242113 887261261 289997692 685025073 219386872 271891569 641088612 677036533 238036858 626292337 169813482 930800362 712000165 991650820 414447255 673518091 172676071 695022789 399425915 648177554 49820197 501047424 121646688 286231575 449378509 651766344 358748384 360495652 328198089 758921087 452698126 626988332 359780864 541152384 277245299 541181318 558443594 840174939 757799553 904969722 805590056 909348350 583001760 834678845 244458708 784191517 324033610 769209126 138435264 232057938 47711194 486012116 646808197 691692999 482615330 902769834 137532769 229094794 472577785 592023572 473438382 529373403 213341087 937006358 646390046 800810028 99623063 403643864 303352686 924864226 99533157 603591123 483239394 822565396 466997498 888042253 337352997 833202567 427839815 939665514 572841606 914675268 463967923 756791509 944026021 968795879 552988274 883623594 626994934 896861307 843870314 844042140 22452973 552992834 767719281 985126453 108869516 418171827 517685206 731123358 117336448 508748852 866381318 881580197 261013455 890459172 996631907 997256820 183192900 413600139 219786342 356659428 89325399 616004862 951568481 986039394 409962045 430166160 597997886 942532800 428091360 751924568 528062804 804579655 963194620 980255785 853389437 994584882 473680085 687456183 611264040 653042599 784569887 909036422 76886959 131437847 871126781 896919804 22201078 687270433 524267302 897033941 334247087 647007912 321409218 535619234 388746054 452106506 697389141 880081405 651821272 834198497 232234636 976682401 885741985 969952052 807611134 819286646 553599327 871234184 986667803 993950232 806713961 984807263 356679163 902294025 377840274 749162154 722014161 822455185 961262857 966724842 797983120 887790200 414069262 782363593 587202122 613411474 202047483 518524376 447773500 712041551 95139116 628335391 290604909 414536992 929697294 956803977 126182950 240138451 865737441 963318419 594302396 976202324 726175653 976086436 908236938 975561553 874621387 905909505 451385687 503357249 221607841 876658451 438184087 768228693 511865753 772036592 717465856 949116071 102405005 454897654 433560090 441763529 179182246 670601113 45954344 897659394 286571465 315214738 184665201 672727559 843099622 913043448 122593372 317427247 226928023 632730555 584058846 678218637 864155652 971991419 758891921 881060647 171995481 340416070 154665276 292940993 231356030 317988137 706724967 750983477 238774739 648907502 818964408 955109029 653271024 897841465 967675241 981019432 4405379 771202367 891540098 989797129 547173618 760103998 816923154 830730357 901091641 907576021 641060136 697990812 698254847 896121091 320144088 543850313 932122533 943741637 329121709 714572336 938914239 962845099 93909483 562216707 956907081 964142151 242934717 476994933 151661166 209231023 790187747 952849237 541162066 801977529 240953049 685535593 461073571 546643398 444578414 694009574 111905849 127172999 439351460 977155834 276077532 287144146 421788891 813547259 272654993 913489647 312192815 928238583 598742597 859990861 63374924 576744845 581231304 583124138 104641771 592763841 812753287 907709473 471328240 891070906 324033685 877890244 940034494 989924280 11230193 460355903 338615857 757430257 392598652 499930392 80266758 616413461 576127728 733554890 343265644 392187431 298034258 797544073 169156577 500619804 362968089 882079450 621265585 932224920 96058266 509195388 654078895 870838379 945664528 987553538 185081717 782975251 112354937 322583935 816815517 910919210 872496035 968710415 665896880 954048165 985094346 999102924 936674338 978762607 229144151 358868404 663385145 960721309 233910657 993592771 752581833 877350526 306756054 391778970 827200135 913491855 517614918 853696767 686576318 836824299 934953030 992966878 558706298 921625995 592114761 698895067 356494893 599561584 214029316 868935512 282219173 675674131 201569101 772779658 281403765 653336019 612459156 768987350 557566647 898449634 189719441 496847562 461414712 769628776 889818955 949821068 704794892 836712128 896434818 938694370 437623872 790260339 973262649 994897923 576919237 612023310 112899624 177231556 742413952 857582903 136195916 969392238 68493883 421339002 129603780 210490008 601879162 712133938 866957219 914291413 880439261 888517614 313774577 843586549 486008707 682489581 351687134 909300239 164954124 620550274 681710685 772094931 298210812 565494362 299994592 387870790 829133872 857839916 339894523 881448328 905043646 949930559 282245869 761591681 413224143 537681887 338602920 987208842 577080489 933412308 733219244 772946208 795375386 913015628 31076715 237977874 889899531 957733379 16070248 726377896 901521967 923907282 9780922 325968513 118577338 906421446 829724103 972099297 699480015 860188184 161194011 422255534 455916698 848338651 497159066 830809580 149313333 294560721 436135923 437606093 348529039 520201153 601081529 787847702 928942410 992268513 58271184 804970886 146791223 457721756 872164247 947934903 459726725 910129207 295187345 843630897 106677347 504224079 655979769 669788388 868448068 970680171 123364534 926040196 852845414 865361788 889392357 964094621 79540759 965481296 22822070 188499550 213390942 754519907 113793586 800320651 969526804 984833886 409693360 783492093 84110095 402492484 289293136 759939986 972782596 978958047 506617721 709273201 8764397 481243077 188349956 198774706 470256569 609735739 582191144 686235589 307197850 463816251 68124500 519231422 712178056 873696066 618841107 661539901 986756820 999117808 344159059 714385879 19527611 223449071 799568114 849875067 62712646 525850061 180132400 872277602 838949652 935590004 482220636 499047506 922243478 950872612 742308513 744743931 492305416 712782808 230263275 715670048 849280735 885533208 592502853 821861966 95387320 192204477 649650768 752154645 636500131 843903151 449897695 914049839 448957917 623587079 735190209 917930340 37533341 887805371 720308739 771050841 201369854 960340979 826448093 947481225 868365177 939866487 161229092 756113675 531591446 538667277 699216915 733408489 192756108 443942237 659876909 857491026 199764240 206900994 539915215 550193007 218163648 951483526 440043931 955911939 582008602 979785739 998564076 999082268 413079222 711851794 448993732 735509431 290764196 924786474 519809022 887728531 372415549 382976771 156432641 225882706 940493900 998761254 352534228 376727479 923265049 999378214 473804444 827834290 532251721 816135129 142627998 896354063 790842115 830295140 975050057 988904683 285477035 390521543 95564771 351128956 835561292 866133723 903555992 926589146 834903891 978010963 981727758 994527040 68104792 683013250 522707131 716222364 233268834 758836368 367000264 610508827 120753061 238453818 169420236 970762883 181648210 557706919 355572560 777360270 568864923 920117765 158193469 711945466 703209854 758829336 223790969 965821165 446975332 595215069 638345594 817277443 966956584 990642719 82682679 188458020 926738614 983722704 1243436 298228435 669241814 917182100 203865020 480167166 237622333 390159963 261908329 747051685 757788797 894271780 686120816 997179493 646517890 922806270 537446711 975607000 530247117 593023865 208790774 940848283 223157708 766045502 616217818 906365902 6933515 454905335 764278058 926044444 283733471 602478819 881681795 965536171 912811532 966035737 424165075 845034458 68740362 921910334 433697765 462013453 272056359 816251391 440841136 727671301 453427144 975944520 370509187 703052646 17281417 647284701 424983496 819275441 382695666 547697101 629971671 668694950 278827134 625574761 363096597 836503947 138436105 217405730 803690581 977915686 815571979 930018177 63735090 199342536 119896481 132782805 587619548 793063790 530679632 797922606 656033200 763561040 804552829 925084394 947030559 984912876 47229609 455652537 699719325 969422830 844030342 964762414 34947185 746583967 839617152 888822036 313390325 335459029 704857223 803715507 658031383 846517622 724455109 962202388 90242431 604439569 277061029 556413338 682526287 929228520 581224599 750336917 759015572 892305317 859916862 996193059 583862530 674300296 570129961 843507543 231248773 866908014 645636942 802447091 387644074 880532544 754769272 898194577 233747351 768016898 132849163 296292182 505202163 762345273 284903100 554495394 546436767 918709529 175766472 993181067 52893836 152436778 363874882 533563618 622496882 793161605 817676783 885110341 399966359 755849495 620309800 946903587 745871719 941067510 808453611 841829207 140737997 409256660 2392701 370496500 677097482 730126185 521979446 838425465 756111967 758940129 771880366 950124337 486377066 736768902 880983663 907201545 527170262 646246288 54998773 133751509 454987363 535166017 119290740 198810521 726070363 749898089 526275104 899227826 566694298 734108327 259550860 569881039 101912739 855070459 247309348 312420473 271788052 946221826 491343782 754031432 867047167 911994045 866586204 955819698 10963065 100685735 431937196 730246303 839624878 881389817 520309339 636267352 787106676 908324199 372725345 724230572 659246569 781967607 556623855 677111009 802423926 989892288 758646306 898598845 120646726 799686566 650695629 975094263 700405833 798206024 100351903 676654116 260713900 621710121 539951575 974339513 107761923 697722462 574443151 927332666 181608080 370887673 560731425 625268559 950046137 994557661 375808874 919030139 485632543 843905055 170019292 773711644 977540352 997398798 784495634 911542838 343600255 392865755 158410638 607708602 574068268 873031073 568240380 988440783 335105477 410124197 790027091 857268035 523666495 792121630 498505163 873723600 365853570 652983771 884978704 990978065 872383834 982498525 303080720 836803606 169407867 201512412 88340120 182761022 13845658 33378487 385497567 769332754 826574611 906854932 860804289 959920104 379137796 830936719 589671676 628451801 967821425 976243823 711049411 793228301 746663118 950936590 56162378 832119709 454795405 739446741 823734114 861482105 311246847 999075567 919556467 954849847 991529443 999204166 62312963 145610109 668268839 670974383 479636085 985605749 724494055 818666466 72674489 644705958 307512916 960099856 385991264 496560845 567465208 852231786 970680038 984763185 510069479 604895584 523831503 785471779 987806420 993299989 103157660 452989152 410937651 904355915 487457592 706254058 787405743 942995927 330275733 671811320 699317832 734350566 674270882 925862323 826717630 951654590 803239220 913599664 790275286 791270403 576214304 630023751 508543343 546149306 220559311 311625665 22460355 409407947 244726926 929013405 49784249 225597374 610221306 841929647 995055241 995727921 246230829 643979741 820477943 850429796 702069936 929645975 353974860 736373430 108035498 233711631 102616751 834552695 490962415 744009836 93331671 892950110 813655972 821096389 818971247 836047914 310934313 658414304 695668680 840550262 695886889 906665023 796359227 800551458 501264394 515828092 843725344 900907825 164038595 222274316 38310462 904175147 324696987 450837089 582528116 612179731 18412277 205005317 769154690 995649656 58778775 930813298 766912243 998175527 657808023 955468240 720226411 730027325 927136838 961020774 691501015 866750143 946241941 964058567 452069024 995359824 7423832 564223336 864186174 958685410 508107261 851697441 498681439 896387577 575783206 766499759 207905021 615773992 110807926 849765547 885994916 938417795 117852379 824565195 286898853 673887753 133584197 915747272 385263985 454104243 204192920 897512185 871379006 930405790 896600055 923398105 254230110 813573436 528418813 733911240 261717811 359853262 611404695 942358796 971036630 982515458 138156251 916307674 155334969 981686400 524403737 884040300 939016010 982282696 445146630 622432924 118226040 130809927 684229828 777876558 79444817 752293151 808810981 961130459 425281827 992580418 29801408 861941270 47095755 325639761 490359373 861782094 599658522 636053527 758134205 910896478 488032454 985913016 150764714 543986135 923004427 977317308 766807452 854882178 349695462 669536128 714977834 894510817 663376905 761567095 973307103 988166476 535550183 869524240 843595236 935138856 376038701 750686180 962907055 975486036 37284026 251965803 666405848 930030089 900715501 956313461 410700847 508185510 54204704 904021748 897139586 923848074 545982065 886490049 215504730 795581959 195453247 596925824 152492665 388887498 391766550 503321209 219217065 965301444 71928524 488907870 168905235 818660039 185339282 803521183 278529486 899038045 126406649 688129456 679826157 765357131 410204530 924865866 626854975 651400290 263007958 944626661 781803752 828623159 173551611 545818301 424097183 515388943 59101098 916515563 191152489 903970858 568067003 700436655 58440359 123393385 819442504 831972562 920903770 944624328 930994736 968069719 463935158 967473894 705672554 998257193 381623505 845564892 921443185 935272004 601436018 661072145 947702107 986643560 794717448 963232978 536766483 809361691 3819996 808309277 536624006 846900658 664167664 977108010 26286651 465208611 827524376 842730969 385050925 673423244 503433025 942712505 626235275 918695196 678350798 689624990 794436738 870219542 935405927 947911468 130897331 158679006 243375476 648945419 454266251 956466907 234737731 646249627 543774761 582431742 383059445 450107074 683071902 751939609 416317160 946924835 177891342 435522334 291212209 923759386 218395296 687600607 191228645 982869250 858749107 920175993 330931323 447403478 232744796 898491099 443766188 943013200 125822429 620194520 574166926 732542932 613711931 768015625 812403755 957912932 225626063 649414281 11644965 101669818 126915127 574358654 183403170 279475683 721598108 952683025 350587272 581553894 121043476 277274935 213833190 821735141 308907801 566326058 814195772 918882064 308678299 615118549 712609708 739174980 640742402 873923557 410920317 908147815 742710 251630284 689011386 875741347 29949500 535460467 805789693 849021652 520525434 558279131 395918878 893792956 676435266 827992305 121335297 347705699 331155509 437492672 696317359 719768372 563244006 995696671 701638913 980010458 864808549 955446953 146541869 653309934 472267331 716163056 609696817 919818913 691635387 795006591 873579153 984250189 334518779 863678319 528064348 898127344 326491323 780726983 372388004 523897487 597772612 675903422 251759180 327675591 973343560 996929127 878598668 955202297 941571033 975582335 172054088 862321588 955590168 998259706 475729016 839119819 301486498 705024067 380275253 553244156 41662841 646339820 515592547 583390553 585208026 742569796 244726640 773255973 898842273 922985147 458586485 711893886 117255215 770470419 269332899 817428201 395167163 532816078 992732922 996566472 630193981 671203676 177755505 959310214 479842730 497862425 944029302 960289170 473303790 623380155 732526318 987877836 343016978 977961608 936715049 943632982 612437098 868194945 709526010 954392683 870437111 997570437 726764451 960835172 215911 385931648 448803694 639509602 709690366 761889468 966573402 982717604 430392597 444783586 41387959 678858149 342646859 796895409 838766875 929039205 354359677 392113879 924565794 961607115 952918445 983384903 664992116 992461086 236661244 681639427 920087672 953713648 620725776 850401399 588073378 712445268 573985257 878412820 55027423 646046989 150765287 904774117 559614802 852678164 545723533 959095749 458539719 888503307 821438595 906653699 428586832 692030870 33782161 965760566 641390535 788159648 784286798 837432798 988115783 990128702 44054936 331382571 3925594 863323103 925575257 949293393 382509151 714225090 111395105 697222813 644308595 970716971 147121302 317801969 497373306 994004203 742974451 927028333 65062179 769417577 62355081 334560137 410412732 481645264 91853328 279662555 866038265 870444973 610225975 794694929 489885406 960693140 811274297 841775730 483483186 997003389 997516156 998094019 989124473 991601666 596150269 752066877 939479547 944965416 650381071 827216572 727870475 998314384 822526280 863799156 45907184 877327550 473881483 823337639 632801509 772157023 305983667 925670900 396824878 676507031 621984585 658321772 31825175 861593872 361092602 739250341 82069749 407166570 566657830 831324450 872495179 990887350 925531859 990533358 829431890 956071608 492288607 660706975 795452886 900635382 250168593 465080908 371316812 641134536 206382951 845508788 825999275 957562638 15790973 637860107 436650934 594475226 391025758 541379681 472582038 922345800 789433287 956653174 427731329 751700356 222485195 815587786 288828201 589091535 196091683 870137117 621884016 651534993 825776289 933446846 362611882 748206762 816329788 885700995 609286243 819091307 293098035 910922950 763880170 937507442 997396857 997628804 670713923 903982015 41673302 288571618 700027561 782426465 954371429 957368911 98272640 987324665 387235415 935117447 109467585 912518202 371054518 517467502 138093701 375262988 104285693 448462259 179582754 910202307 316876577 560487855 712650037 732862025 902456057 925686142 556278999 966721735 193500730 712687089 814359461 826047146 726136080 990214141 109673620 257855029 917856734 958844984 135454810 446479614 925103369 966933945 82612264 698845693 770467114 780691641 172494880 788382649 300019649 762963304 47988302 588489844 580159460 590094070 544629021 746286944 351276432 673819708 617466075 978653004 157224598 664321320 873474576 952794148 681912681 786536278 44495610 628440360 201227939 556914763 865673372 893289917 837772778 958084760 54964787 168005846 409627048 690713406 98713393 572792065 220220557 386238513 691849041 812055651 579043814 639241609 965006792 981542160 895724620 990824953 795847444 952209087 509086160 786768170 880039899 883949076 872716883 917036585 101064107 308714913 387966890 996918157 563091445 834535448 173562461 773530378 3372636 664179456 892821353 980240938 481682199 509780582 516009188 541180225 33139912 209616685 205041686 608305198 616379335 893640939 480009500 550181687 63171959 851630068 237204139 372804819 982598175 990921828 916736770 969429252 205898550 957666290 488598546 498994082 28234559 511755512 240775662 490294621 143075534 615002730 254461767 442367885 698064258 794755931 992647933 997580045 292792747 725345718 51384419 390059664 601811021 609488179 240920433 289994740 755137540 933280993 980586291 985498196 378998020 775111138 863936430 881245406 503876245 725803393 271287693 470168409 386030841 537848207 249691497 995229187 691612489 914476072 538447760 582631186 865548437 933094867 927428773 979469931 651202811 699652012 101613335 440702970 990582468 999079795 653617260 989739690 272399979 406469359 284776531 453010384 93391091 689249109 644777016 821566637 165948768 701204980 815045687 860551344 1901820 718208328 293374796 868048679 202422150 403358202 447202755 960294456 540878289 926838020 409237687 935398841 686927189 896335661 410347681 578093554 825468656 977898538 402101205 474526592 996402309 998087762 883431220 939928112 279082054 621322607 959082574 984877273 478031856 712273829 683163918 988255563 259745310 813793075 759202613 809589148 493371255 658130188 19609674 963930350 25693380 632115435 99382134 935362066 830400872 974478857 536315923 715465559 708712341 861243018 614695596 752754999 6533305 894753238 6161471 614257203 226233328 472068220 942053315 960903940 298377175 434743896 527094991 705745912 851452680 909068000 456052832 540230695 864445753 874341693 528516524 563608130 227727745 321267103 873377580 960790641 200451177 898111262 832700318 878386348 445604347 842893186 383903753 440995500 295386255 691816615 537928466 799315316 234967590 784137725 453779064 612632408 456278484 467833600 678007075 732671114 541176466 659467351 980351074 998119354 471729605 588428535 53428933 521564232 920228965 951744645 108380141 344977762 103124900 718247259 647303268 684752768 817088336 961408462 604405889 754586920 808894406 900238060 296567852 427934578 249672157 738039921 804740461 901705544 353663095 402269818 739491825 901242863 209459829 881569167 395861218 806972288 307964017 399715996 663210479 907376546 868027776 990954210 902055575 920445932 225655980 763704640 68366795 485841603 164698084 929298364 145378690 367609727 180705504 531990922 424405955 795715254 898651279 949489447 293018094 529561857 880774699 898847824 849053309 947588525 474801773 803570397 596290602 725741130 775744306 996457418 989873912 990439224 104187679 486203241 464499470 880256690 251923794 741981822 970400734 980085016 999328616 999335416 326646002 494608807 383802975 837297323 159129387 372471146 990819669 994453923 395518943 612415249 540181851 862205543 344147920 604622265 405391144 473604524 636765534 917535790 828553708 918547177 614098727 743908673 351214369 826175915 590071784 626787665 436222409 881378457 681000521 810695289 15810223 138189871 519657676 666232166 818163644 986085225 180020844 486813405 901888088 948020140 285180180 559588012 594890766 860845028 698447454 822632998 581105100 773295684 938773990 989081802 471943864 879735874 906610723 980165543 212316237 661740022 978660059 992070641 774585803 819363579 15771740 896171877 843597305 972527723 754318614 917689940 185853758 199245133 585175225 766972445 573628439 807943008 519835654 772581736 375437690 822781603 842571908 880957295 589923908 707127166 899421896 934238395 706862991 917753811 910888199 997014458 879333127 971596378 199389428 606794494 688839730 772337556 189569235 961281880 56893951 704393122 813769577 986544638 628761334 929926815 744164370 849045100 54196882 750160090 876468972 987876031 91536747 573885911 613891274 743211650 410470215 521785589 225495338 495587005 119144035 533536106 681318582 786050250 73928112 268956929 656149187 784572212 82729473 286311026 871254393 961723886 786817783 872193934 556392998 900901158 105764710 291259445 40407258 921594002 602880468 622416758 540035374 701279340 789038353 948279239 296151214 681389754 732484380 847990695 444560118 676294714 493210624 829500245 334976772 577525012 697587159 940561634 576962281 751064902 663349430 959663028 213742474 705688647 717690166 945933594 275374852 316457322 558354249 749495787 968709452 987640683 175499373 374601558 539523632 776510240 527127921 670572429 8061704 180341853 964191244 972617809 222576704 590028665 860496573 945836639 494425729 941129088 143774586 943796561 33663927 86418097 842359059 896913066 809100968 970603880 508293397 948907979 492832775 643367379 518859517 849511917 985617079 988339143 791152015 947195978 503774068 901253326 741156254 944184333 469563081 565740857 794966535 983959365 90228190 484659296 34251311 807868346 402289970 587495673 495402897 871305976 649777189 764441739 278738505 908569981 200477480 414417315 264122626 485387850 362173289 818236502 979260826 989445622 20700717 382232609 64169710 563252627 729885520 797982834 899982647 958208670 66463200 166344648 351891285 476611402 310413626 411697513 600257473 941509512 923603907 983488603 868877444 872534573 928662336 951392899 265759328 382791859 354432308 928635275 871957107 925904444 60295615 392378917 227272075 996627005 973749220 980189681 223287000 473287815 137076352 890153517 104351103 188384281 988553220 989754674 855740084 888664667 605929152 675146772 727045154 735599080 33327043 924485209 990815466 995724591 135619458 331628430 934060905 973362846 658067043 925190662 881011528 881066621 864146836 940915366 966718886 972718460 289219095 973381569 295998689 576969989 618183712 749866461 432715627 895740398 858023931 929978520 477232279 517067765 693066208 744424087 120955782 181503109 146286385 467790458 456401096 982332483 893141047 946699399 766471322 997590734 399845661 445697818 657461378 680503328 309458423 759529040 258473603 288164171 419124416 880302621 786744291 867662483 533703504 934390413 689717237 711504316 24615851 149006711 865822782 954934306 442957818 809154578 266584179 323356230 120241631 898283566 644223194 781136838 498209834 885204330 923727546 936347215 351916121 887773300 350137095 960019577 610013584 639383457 500262376 705025368 428779617 442437056 578933430 733243258 439674481 911571726 846028277 923593972 272469368 707864693 818527936 923184322 413425673 838913550 997985484 998120927 546496410 843948488 719730692 821859347 842306266 982595157 55960198 310944825 687762451 853851183 571741894 673299410 550347808 809512471 565649316 947932530 385165681 786272513 870575716 871923595 195443819 278095316 182102525 832674750 932829289 974086437 846321193 965248201 348926782 419255222 116081365 871139092 799561590 817332640 658661707 929601458 519049007 716861292 727395650 989402437 365508403 701269026 390868723 966759295 269464350 654810509 217957311 696281108 917651466 928723757 37581390 461217104 381253995 948621976 822267616 892392373 927075026 986906795 547889573 703449176 804625217 812006011 108400379 720154919 475350879 846163154 681666462 888036325 414561170 446093502 740535254 843442422 225759073 581636428 89543432 285674010 350019783 379621596 583548394 970052819 545169751 822407448 350143267 711444576 158639820 290994176 464301952 989650279 940921922 945501509 418791779 655022219 899713571 908569830 215621670 893661432 757644149 928685956 619429156 981382287 858136421 947292948 918687223 988211644 338567165 431458979 613593946 676245268 845899158 891529853 720993283 732926608 262710520 971997866 631516243 979149658 42003243 938130848 914850904 923047738 628259039 782237394 339592490 850373152 8399335 849032958 999254135 999388171 870100171 947057558 566085121 974945873 86828070 262333018 320521053 943595944 215110864 281117559 228138787 370925761 165635886 773716287 155168653 677018182 292312196 537178822 408299302 476563880 884147812 999357340 285790131 760374418 873392534 969544729 982978842 991019165 841199823 936446825 333918478 955027217 180650131 882980042 792233163 910566923 208957440 407340465 341612369 875515964 653760594 960248002 560615247 581408352 87876121 194618837 987363569 990580676 6870867 945119649 969643660 982506943 417676134 422595481 552425537 645860858 134142022 139738053 672158488 803933875 290150775 787282350 589487999 853336000 318470171 970254244 895441213 962745216 710118387 946787796 934719428 972742315 950799201 954167462 676262459 809084515 728492988 977126549 764422549 880176296 748049984 827400835 473562355 913774601 786717353 868056411 143210015 537937596 668130828 793804585 854936442 881874305 663223748 982488520 749103674 813753153 185656264 838249346 136315851 959360638 223646461 284708463 185383558 267281177 635438249 974226534 9791675 447803934 986488248 997622748 432862640 465522587 793658550 913685835 224077356 486005642 820301784 945764916 683852283 812622427 52661626 228556932 338747343 993938648 236146672 305639202 810561996 965349033 748273994 835251854 940913711 969784485 727949927 888733290 768704440 924728990 376393852 410706086 599929524 855819991 357728289 454619493 696333423 928739050 462145802 567394954 419514130 557801402 38056653 686932866 675748041 964673139 888195721 910339695 167585958 619523036 137981894 904901419 608677251 973117155 892443447 983058861 493601998 706026557 982571339 985168447 172433438 810638219 985162093 997064148 512432188 704952793 544595780 750970052 874522856 972441051 684687526 843173212 437679399 537984549 607093935 668254439 991913044 992587962 889876586 966839956 8407356 777613003 11623361 844370256 654563468 714630131 617779002 692554720 598531393 620880987 181498634 579017750 241230913 892080553 568557336 993573681 626409153 916995666 969200733 979404786 107409114 193570447 818733440 904396076 510864096 999348806 31429541 933447329 824422051 948596745 832307175 841983063 132637055 658969284 431167367 939069388 589582044 994776040 98882 421186523 624185549 705192494 338766764 950299467 815400085 828718694 176000991 372012097 907362380 991858108 738315272 773256713 308714860 753421214 171816523 178847984 504305266 659650112 586356857 996525396 140069634 364907207 719150982 744878677 156735780 174712915 286053719 712287881 609619036 690801624 711439810 928651378 554356219 751962140 743922068 873645379 379336855 568436600 821514488 910625002 333442215 703023386 418580459 603641400 88424119 774443572 560760302 726789546 537809641 777872046 937953478 938926276 763309330 788677416 5508436 444969006 407048941 826359450 64720106 605882057 81641112 426044821 482082290 979352594 801723659 827986849 183097886 683129495 821590382 920862289 770050960 927697062 596541528 707189550 378142955 946121290 265924549 352209223 22749099 955062237 353016653 357225880 408832799 807669760 424983828 575705885 98055925 632966387 37953343 329547085 219571351 947584429 893835079 974641623 544981187 595674827 865185698 967997225 554516505 572352697 951173549 992363277 418993101 925442243 919965598 936850781 107201794 152658417 427772057 450788439 532224227 852327028 543243599 951369610 656573167 901210472 873924913 949266221 708746321 772074532 913315907 956530925 855577691 863992800 17344155 453973482 798008269 925757031 267661326 788936568 494237130 789317419 280926863 639274903 314848809 458576483 697755106 828457703 336854001 521396150 521384914 921626424 796281274 811243507 775549372 869956090 698996042 873728541 726870590 982686517 496493549 993617222 909313008 954050451 437795771 638232365 794277928 842194177 442092862 952192161 432768191 895525837 186187295 293471961 598488871 797305061 315117315 779118938 887016028 994470493 699956275 845503879 574130758 657521747 255275775 432461204 986049618 995532430 45058416 493896065 495251689 789862777 240231126 491963348 809003783 957746327 382590664 846040228 106820462 683137115 190814337 341162634 584018256 853806162 586315224 643892916 332581872 582442913 957366699 988042603 540589682 541787110 32167557 836113751 198149773 354462205 639043500 701521122 884268891 943237496 312061013 762511015 100591112 413009709 987082408 994016136 105500485 768599561 461201407 993865073 45083116 487995722 279947467 760462500 555504788 753184750 106020985 796812870 949478118 977478368 578660496 922123203 817078297 952728456 534050630 695518555 312613434 653580035 716803901 877642731 766548770 935602570 943593551 947291697 292658702 426351266 409889955 806753828 470301625 803311979 58362602 437607618 687938648 780554016 768808711 793495656 75547293 549191072 159882991 368772613 985006221 996843353 123488391 427483675 455621556 553929868 476741079 621832110 479138867 759421183 11064162 584065476 892769615 902012192 230315625 419038055 527921622 882324461 634296406 757757045 142323530 692386382 882478732 922285667 738876428 902597309 187994765 751282805 400105945 648104333 47326904 924892642 347006910 883460109 602330816 764314744 216094738 665824647 387332231 849344395 605300794 703457000 453632730 912945460 335275913 595259830 363542098 709177980 978830420 982274884 39488347 971646731 93406603 216229995 883567358 903376373 965671760 983222959 230200902 629445002 877973571 935330735 863157291 877095319 428667990 455968777 707889117 807493317 218979369 887512521 862569534 864734415 111115666 926881834 437346766 841033481 486078779 734899824 362062454 532638905 48499685 799126995 833814608 899402946 639163416 991906248 361973546 535075038 308989309 865936909 634516975 861321707 156734985 557105514 7987966 518297367 721581114 950246082 39464456 776885218 992208300 998664341 872105892 953457071 470069485 930687255 312687621 855074194 686027526 920192804 998256189 999365459 718399403 991733004 927927044 942688043 351800276 839132300 276444271 897703296 393939354 670688242 117264666 212837068 360853907 618625614 23223455 617290440 717733987 856719908 849713681 881123085 357999560 647193157 714760663 966353769 767192538 860337613 664348887 815812653 832233595 916309298 795317188 886673372 523920557 537053924 987901238 992995383 950661338 967191035 353165178 656068688 903130835 960652712 896716115 934872498 966066505 987010518 148726145 852960968 392448588 937560914 87226136 402437656 506378520 635815860 270166785 789229185 708238310 948488308 630201989 834586177 501744949 802263712 547391808 841455586 287701922 385483173 520471622 801889916 182464581 253151464 122172549 281248291 199992288 651949216 75255799 290960913 507134373 605590961 22455948 350955707 855651625 964942087 979015262 993788022 258691411 926555234 632279183 704302926 609751227 711491979 186195458 974182934 206503320 570805354 182759002 893869640 755077105 962719941 611949912 751969442 674283448 746530121 425962864 645862381 311036616 763586794 163611135 912650371 660511505 785135703 635495992 979860050 124592197 365945985 79758392 410750336 530101563 878217934 551912556 594141895 831790871 969304060 61692879 599717625 809873208 849159075 280847125 514022100 601739740 741411326 596743318 920220586 154693994 910028262 317240454 995984665 817228029 928718344 749276119 953231347 348732365 483323870 562239277 841480039 475789329 563581031 352889007 508152155 794094637 822026058 465668636 784578931 824152788 980669243 817432924 862298574 547800818 848793164 238639960 615380610 818618928 843115428 553224010 587009722 900196812 909134787 298130333 394703100 376760067 976910574 772189471 790769304 100449553 660323747 425315838 636161686 455537416 544435763 810827077 896082728 653656592 953984452 933767063 989970596 722383769 905560505 812076599 831491025 569144419 955323321 357624193 703140023 600862587 935457173 503515617 868269360 137777390 797156904 992074783 994146933 818243509 892590572 385423485 674378570 676734547 962965839 478743595 702870631 306640548 766764336 588925929 902122461 124718687 796351565 93993919 437037886 591159393 597656676 142796183 358493456 394499065 862143006 249473279 991671459 47681327 805143355 900548376 910197988 456652337 658316970 849108054 855586783 8794982 50156048 439360262 742923410 33846855 477501591 316512683 373073225 521182343 710492893 324091992 453679284 480627344 755875147 809430337 940604172 977405821 984701615 400574111 460284350 32249423 128509380 477886244 960011963 328633453 964489503 336031949 852526225 85072831 737624070 389055804 716848356 917363920 939557133 908935441 993729549 751277555 928987555 44704419 233425180 360388169 960549108 442553771 613059724 300122311 446668967 415468186 925707666 565999883 608127329 802980721 831489454 434632659 924827860 296202055 523349008 637607206 687409767 444501891 920305938 101988414 810150448 650591354 750075821 921694731 960029522 885755019 942087699 135901696 234662476 934789154 996942285 140162526 488345393 738713065 939338384 606087808 772032284 529382312 683544133 760304695 764732716 870578267 891353305 126243193 804679513 322921224 477700674 98317700 829083975 114975067 248317811 96555395 489730154 679141838 745453236 274575662 680241966 540203307 757791520 455035987 814619969 8727691 420414060 317878419 670909819 951857926 960916244 236193596 910474918 249944677 596085293 996247911 998755942 267721277 426439675 356605467 694903352 901211999 907723626 215230339 800344965 394753281 738484590 196825838 704184783 934104250 960647745 577333059 858895412 858713865 961005030 644569958 722974595 580661418 953848242 134453626 706371519 983485866 994664410 23159784 884340447 128888730 129033973 200830543 552880324 503917678 987643046 583819691 952251971 635409840 868163728 602672103 605287461 28312025 483877673 404652467 967575760 828794271 945530602 519486889 571948059 139197383 624557649 148033160 763470542 871280980 997822579 295118260 748350625 234200887 741556320 428356547 762178637 870825510 920786943 60354471 820225848 650863343 889347441 381001096 720030327 469756043 838139378 537838910 909132519 988809842 994443368 906647317 983766047 743109165 901992359 564065966 690975161 797730898 955907212 589272524 713297946 539625570 993120135 749993229 859672640 446746784 874651106 706117127 747256175 899676622 990471330 517018866 846090471 485640523 891093229 755308073 939163692 876984339 920099960 545638324 618650676 941112247 994616366 586945193 907938545 702660153 943374314 211760050 436112883 32922984 77365542 702857066 958946686 708625697 714387598 670304515 802074870 680679134 993391742 457582186 930505716 827947975 899516418 10889145 621044745 765780832 873225144 110458714 617436800 996051827 999352223 895713798 933926160 252017503 262877612 797958267 815970763 940236706 944336219 173237249 624988561 948405028 967634028 308961170 360534963 753506600 762879906 783870450 805458533 843015927 927040907 952831686 976161587 5565485 791878221 289828834 544721926 498244937 613121596 285370853 739277009 239937902 888232210 923214479 991744280 622027768 678613659 550642463 769143097 276674553 671419155 757819878 953523662 938715358 962985553 97648995 470134051 252730815 340973723 996993029 999075532 719175851 835840466 57535485 369782920 557791907 602919419 400246120 743701835 350801669 898760515 105161981 980650104 285157188 811095126 257426429 346372811 474717393 493227636 502738074 534643930 723518840 812699925 655687477 740156229 26607987 152744881 826202258 929329657 789889923 942673593 462384891 949217759 415368108 649032111 810378463 875180803 705353537 870254432 76526257 543060203 315305662 594482202 514966183 554330093 729129110 792738317 884362608 896426981 555742631 742719350 117214902 399178207 203933952 616193308 637659047 903220290 651428246 746897739 700710456 844338746 141692664 602322664 309154797 786662346 340339118 963820438 653093903 882661087 991741489 997528797 469147785 652154477 302127051 783728106 756708885 795103190 485394278 551365627 338132913 389183827 731680818 975178443 834564199 925709176 432836090 837779345 791439304 794751522 607247480 978371126 732354636 976992204 827557500 910503366 942513670 967265112 488906547 595480546 538166090 868463733 200235032 626684047 847102170 935594280 897149564 907427915 117438520 830679246 251843775 401062826 14614336 241877983 580878505 798720443 961960580 982831800 209350333 715699045 445316271 988104120 130015490 304405981 399602418 508934445 238827903 931834170 774490342 827809183 762504785 804945234 219352880 436429377 443806041 977677410 689915023 824420055 347021647 464689764 4701761 821835343 713588932 966499152 351419854 638231847 225006679 377216784 176322047 592335188 765181722 908868509 863480614 890096529 668095851 740311516 497197821 996065390 375337407 830833816 365532721 720767231 359377659 603479152 730102996 914772358 201515074 281050916 265474641 780760439 890845230 955771074 676537436 708943072 118431586 181423336 150443845 743919873 618759538 624837539 476855747 548317194 632490661 946190999 640087325 840725938 85884503 361510020 649461600 966850999 242088957 310258448 509821407 677235692 993459424 993966574 256633389 679296811 294570618 657388611 158865126 796470498 93968285 648627499 493076046 750434962 32535882 593535130 526029621 602546464 656192523 819921097 891930236 994589398 155895806 764659825 843547145 902495763 263316743 316901319 767054411 785539053 494450507 748613257 693320303 966395048 174630693 728650533 893277075 908787857 465911824 834143293 874984189 893758438 314820504 849149425 734951837 743676480 393608311 571254834 529404531 941183067 340952444 926701342 990473032 994412112 660310353 775623507 105583355 533753766 313571787 861853792 154680654 725066448 319073448 552101260 352319277 479944241 917876767 982524402 944681033 958059599 372027517 475070857 285465211 819311824 414568708 463098654 656805587 673635666 575299398 750230325 198709345 263465288 313588572 710039788 604086491 912007969 268077054 304339673 257327615 944929963 610174392 773987373 794848344 922750231 390368455 691908780 857995247 903079024 387868888 818408488 380879155 709018689 239483523 754309334 891228641 989705639 271669740 909942587 108241650 485673334 262052621 468334313 560957819 783857249 397320372 962643993 543547756 807901028 295547002 585889723 852782142 857469253 133263982 707835593 861468276 910222071 728990644 844874668 397342508 948122052 905674245 932021176 611775890 692420520 26580277 643466085 689104536 694395699 634109084 731985250 940034482 959633379 790005184 858234073 173891978 797700626 41278483 269880235 339506364 455201440 65165135 656029288 892857554 985221068 646750669 830369663 960964407 992234429 437529049 954675328 616848840 642901322 665441421 692239999 133082040 942673371 888612192 949127376 243204569 472577666 322718279 733651003 420326537 709334745 444905203 447555703 438902973 870955172 446134043 567153177 55421656 698999762 696219639 994066813 205667550 845684868 583918804 884086312 88016056 571234989 797293580 818541637 826925871 910726707 306884495 610983070 306956715 375353213 238085754 589410137 149386731 991840906 73057374 502785102 407385405 529136309 528511205 935793806 173655390 928772240 384060561 861121854 884657647 891727523 331760370 740945760 433398976 607692179 112301984 618178637 553682501 806900129 654198602 737741444 456532451 584658848 151043325 445687675 77364226 437718893 24296858 192437470 781961357 877409154 482808580 553713720 487154934 514663855 790048062 885553378 310573278 872793598 282345041 723636289 571230148 633574767 609640568 732841608 361400920 993094788 363261159 910080915 231480797 530045586 366951642 842502077 550831804 562679389 636891601 681923582 725760690 947349650 13825641 267281094 720057630 896646019 87553016 750427304 148542904 885924457 978800008 984510504 29674574 81180722 241267947 936094309 922944268 973314297 62750174 505930646 645784127 866542900 754076087 764233587 58232583 108560354 401478427 935530171 510194513 731661107 587977655 629102492 236047720 497857956 752718417 938383669 668117296 757312164 825906461 946925355 675914342 865346079 985136977 993617474 202434804 646096052 520079707 552532962 566673256 590809919 533364409 742395356 321464389 735431140 253468056 334092706 759975862 873964998 256637352 781252640 96737226 770635261 970492834 999112333 289936086 352917988 557194545 824416498 168171536 470735474 124619585 362486781 418790052 972044939 835978836 876561787 829116860 885629800 348535207 369279842 579214079 656842405 288486462 711714932 797255523 887320845 768185297 956611009 609739054 833685598 493241691 776276898 667548864 686523152 370168327 887824923 157682817 707378102 108508222 356589422 225179618 416336081 46879432 239416487 234501798 575745392 758404270 861243678 647909859 831270926 310185401 547328515 532091691 639036025 807338980 999033977 192868608 279198914 853460817 958586354 486308024 870743690 451969659 713681658 311126438 955116443 892777533 930446132 186424517 503931533 121963029 845567102 403575627 954818299 599036684 600831425 388817244 698493852 87209346 110559919 859686710 897086553 779066786 992547548 652587638 982596107 741223839 888574226 527791444 673633675 121107823 576691614 75470867 780668376 922188672 980476940 62713150 303956965 81966428 966017076 909609002 946107863 903772174 926117835 212759209 655074839 342603368 496268122 479521687 886128497 505208757 875448047 342633210 657445016 196289675 776693387 351957607 983875460 316640126 678370324 925413494 952349954 22056817 75521352 898065990 969583355 914629254 936488819 599866735 915797006 616127554 782676909 320118863 865567464 99084206 106442107 268300872 567715729 521055391 789990902 589064334 699512321 165919728 896047804 378879093 749462552 314133957 567038468 957721290 987427137 203600514 279811933 818159562 911048690 977401423 997782928 99060650 328025316 948479537 977959438 656282509 793183364 566193627 801490706 344124630 373989045 30176348 989939566 800903418 828300118 494736669 509024422 237727528 294126028 127004869 933170839 680718663 768347520 681645009 910528431 34265784 590901844 7614004 106384996 525178235 583297843 896786720 909999730 506350561 543063196 737231143 993270979 341041263 622108526 990110739 995951383 162704873 646354069 681733893 699942056 669300107 807324639 478033695 595988159 995422264 996100289 91697838 394531339 44448850 837245844 723504985 923239026 343714112 623525783 438614356 699849707 751390760 824570067 362902204 962406535 94585109 176076353 889956833 982275062 987700184 990357395 119424807 217308464 997392699 998695836 364678412 958713054 859804504 979692837 648383402 884258962 717342002 924739569 411821656 583049856 294067808 810097082 412981272 643424817 989979029 999144336 638233819 671636022 66829241 649954222 321057549 737011083 998461554 999039678 895870430 907329180 664134446 909845237 59100714 185066752 917238531 975672737 422187539 434942005 374755633 999188949 618150646 848561421 37352417 438972124 664883292 824786963 322261828 812072657 783746720 847861225 765861592 878918366 54607822 519621593 352163873 465739012 960265742 962808813 154469818 604152412 609090387 837085125 904037758 977555990 902801018 948399391 941917206 973620520 906743788 949550218 598511754 987081931 948297890 953122156 157926137 682011573 792011842 827558163 959918958 974843629 223911067 544605270 665017215 876846533 217666408 613885216 494422709 717884238 36231586 48766613 149061317 518992494 409209904 531942034 766581503 784340049 46352376 936525895 105691914 268475171 855598706 995966857 230325251 759948238 110409888 244663943 144643078 161069830 524640372 753595759 309415314 391930516 453611321 562031419 762785492 892828504 124699342 677436109 198023072 516453203 530259895 594891851 840622386 901203751 114454575 490560222 284189221 470401236 82493400 314084176 923133388 924564132 287132722 870086616 404939231 860658033 412507173 879980987 32943865 36897495 200867533 357847791 964059432 985692587 203025257 521125286 529262437 791047696 762779907 793308843 766297235 811097368 242186474 897921369 706333279 789705669 380570649 479517259 713424941 905242694 991404752 991956535 565401744 868823823 888537084 977551148 881526992 945147082 914579565 972413941 622557683 695755351 907000404 952522740 290648973 295484084 484593865 706726586 281199363 401601470 309580746 617001167 196263002 706466606 535088344 748974161 57517235 227964221 451605890 897124780 355638820 368255877 902690094 970745649 242069411 859168584 623260079 667133576 162884775 474870898 851114966 955189863 137849594 995644568 317167774 691915475 731575208 751043360 422488956 592208381 441255870 503457433 815884531 891958699 99396648 669787687 887735169 909167560 986551100 989954564 362777688 403122332 937993297 982384500 569431298 905990294 882719035 909478005 708091859 758382584 101604082 828161539 834366404 840447715 323433434 620104357 275722422 965904191 266716453 667041915 521905049 909768000 243017177 569370733 650272239 924798621 942345377 975748811 334687667 586892818 675914375 806246575 932506040 939455736 382846452 580767111 996934705 999300901 380484377 848288597 827178544 833007405 797801092 894749526 788855761 921070521 963759163 981415601 261186156 333701416 891071391 994503591 208885663 433166037 814396513 910162433 24638666 958421876 391253009 537787942 512882958 871990625 312434705 958243449 544612691 795269686 560291217 561931381 979740383 998687224 234144442 305375927 29953843 515063718 170357670 741397730 849031832 904563351 440230574 553931616 648247865 914551252 946903362 962362943 786837743 873105251 151309850 820286664 722554434 963942418 416648821 901624716 896415488 994838346 865141440 888738791 722877737 817254216 877547239 900333986 845067800 913027724 861190890 966510057 934931284 943655320 196029865 483627800 618336089 906374925 51777495 998267701 550904680 641556852 118262876 930159016 339139271 633071744 232893244 852205509 836102358 921143416 332046327 610209164 299598851 742643171 560397332 934758712 406938698 636318693 109436045 706391266 286446717 676795029 798589451 871335062 579767687 859025446 867594716 875458146 987633767 987685091 296544838 630725822 702523823 799394763 152542889 630147328 178760611 670095203 711963353 773811841 751680553 967220825 821454069 948339581 908552817 954688564 580413128 730141446 319983069 813170883 741943503 792891999 255065205 899816407 151171822 714435022 596597631 882779053 918912059 961328592 787461560 900998576 515820331 720757143 272753807 416284042 86229958 361394721 66956573 578820496 774255468 795531588 66569001 818028340 753071019 834976471 56690581 831071411 909755583 970643036 726096710 844010695 318800680 924275247 797802964 966607935 650427997 725809448 995005189 995240515 292793491 766229090 922845293 958778133 370266931 886251440 2072262 163027160 981402096 988186916 424353613 861918985 433258674 760064136 175657006 305064876 618720299 889564793 407342442 897123176 257252636 341603261 476225423 636270765 369520608 448204571 589322804 995583575 819169274 834752792 500127186 517451820 302368964 366279181 648131402 876466832 677651647 682951499 972647163 978487724 465810285 635673685 665443248 671870598 496298263 584437260 831416471 909721290 963337216 979452950 423948420 552561872 339568006 703914384 927866846 940373972 947512526 964942320 583291478 894142762 348026735 946445070 494243416 754512992 480481289 586126043 775009397 888758128 237050902 841811304 143789057 307568801 345476780 816243617 102408868 295535044 841441958 852731305 106726539 141335924 93230726 624009531 478574677 834795453 193256676 734218273 27682853 850087548 246327523 559370494 263444811 295339447 203296861 584981861 575408030 947216969 426862625 610929322 314358532 406928742 286498070 778207931 36227997 371215739 180072329 956516088 389052662 491841192 55548300 563645024 957222633 998323656 770175394 971280869 602583780 681127136 253264714 537719467 646581016 709634552 154696952 385800351 354594250 445728059 863903601 961299671 609629922 915947434 627601398 929158280 728902544 992544004 353253544 691496873 136963423 301309424 671536415 793701604 803501095 867492193 91544537 645494543 716861663 786285396 826816342 949239699 585519017 706825447 191541324 477480598 822505642 868752551 359305774 988774558 423973082 686103871 147842883 843037720 690093106 701816277 305750519 776906782 29435245 430707679 473309812 556393689 11517195 797177508 247778357 810713519 291628900 329854971 165292489 208351858 574807619 893509946 568087268 827131818 600022699 664342967 578303881 651338695 528393802 728650190 8040658 695286801 283296492 651453415 147581844 375901441 124582107 936827649 126167131 426016676 476510086 679196582 988823628 995482852 35038109 593146818 673005501 903330245 79923473 113795030 517212062 608652306 400482280 648381664 314399545 861035617 154930171 325283323 194226110 969573536 17197217 182808934 617746196 963166485 664787710 785959185 813434883 885931781 16895029 750557633 858959572 942442497 758730057 854240395 877603847 950999245 626691773 677248281 426321048 430951671 78330287 746652063 294839422 601265744 258087134 753191103 470530678 673139003 989850460 992132394 511561588 889438019 316850926 983450926 717924039 824537417 916152171 935409573 632037528 919051174 985085286 988218453 354039312 995003990 772699327 933455342 359949750 435716269 822390141 891534297 138470147 383688976 954663079 995739031 309522176 815346840 335370797 573406972 744865392 955935727 359898383 767633232 224390352 493452718 351295718 524817546 680036533 849457878 17962103 281232785 790870451 897403382 206437480 446054605 91257 912168538 729992083 860411837 622590137 841327374 663976182 930508708 771947462 916759149 327647301 782408760 662403809 813623357 637894975 891771227 723517310 810768616 762108644 952930588 777816635 929284980 468129049 702143070 807703031 811146599 741786700 877081752 752599835 792493889 76854498 453221662 993021437 998714652 102549026 492390544 633168792 905532445 94761730 718077591 285746898 985094994 302119705 563371716 155585060 191400776 612704305 768685121 818627277 930593866 899313133 948863050 147886844 192716610 190504256 565227093 162448537 864694244 325274589 848477734 466920894 518103509 648200325 791519638 38678487 247219770 82409122 535240222 626253370 868849228 454343789 534132535 829507137 912753679 182156188 812250042 108582674 782156765 910701932 920303197 473488178 748031065 358231515 652815312 832424787 911305754 666536609 770620362 109876858 369173910 200172643 971889178 968752483 983092283 620646098 640090336 924018081 990612881 995933916 999018867 973784432 980666872 208442574 815096064 900164908 954167452 919133105 968069408 874932094 997630944 350878133 618059215 553356409 875845406 273175772 969910979 54242200 262667534 152600178 795106592 811519747 826677700 170684971 552225072 43162242 946905991 276372620 656022551 186895176 479842666 348398902 966375959 42387216 499283022 231279307 269857289 285305687 921689239 980636712 996013005 566939080 921573499 166653955 767010981 425135881 859700675 703208275 887259055 430566866 878415543 166767309 957375714 645738177 858926795 824755709 905209270 381944185 749720514 756755787 917809895 935785788 954551267 228719862 639782338 703202894 918074471 659608503 666022006 636460489 744694193 345822255 797799214 645089430 672747775 501383616 658052863 294043817 527040343 558723784 813928174 739128626 956233911 941337880 941551094 40279171 309915759 529646860 751434583 775191198 907956343 405169873 480217852 344235828 774504745 437466263 573677233 913189570 928013016 592220745 875998065 462082386 515814146 911648100 943913785 868200225 945927649 886322613 926682042 779035208 886379311 46056786 296576719 665496478 748439845 527342828 995530121 369463695 412857418 710469456 890797857 718807730 770407233 64790387 269125616 975145805 992586989 254809149 260751473 78251486 733572564 459395190 918501679 369276389 866717018 620001173 859827868 916173912 990333793 953053825 978996206 527739532 591044108 222713248 755651626 99814774 295653373 996786007 998260796 268358314 363777795 175826536 434710680 639584715 700581671 681318376 745023868 822699244 896157763 648203875 907601997 470520570 682498840 866455362 981512650 38574026 611716747 801554231 880706945 922309773 945560072 838360095 861943350 472276154 592162949 98447914 138505965 494092462 977436926 437043863 703054127 991386371 993029936 64248115 151398066 783472575 934530676 903667843 932077320 260782278 310431191 311139183 536592270 949629124 973672664 671158964 892665034 754117280 809470865 571037585 691904938 604261522 773505898 657972037 775520942 381776081 508830435 578204423 994700460 221971712 957420900 519869264 670742368 337776615 780961439 911211848 917511785 650760738 906927585 894511544 941414729 206504812 332424837 468893083 672012797 774141268 963083426 372326604 618169977 356684698 448241138 687757556 882684499 185458062 954657096 60333914 285118833 410385541 901104384 522247968 934794228 105834200 445869013 988870916 997246317 332810029 639180580 407005617 468781560 629483952 940352283 585371320 756945112 496606450 590027842 923938822 987287011 890839486 963798953 284858400 541929807 321070408 697706456 440484356 949769792 395439640 722250883 585144346 876841623 732964271 761836402 289144480 833483360 308775198 462600780 113201095 766111513 794083624 850028342 606734626 783313342 790408522 855984718 253107429 792043220 966683440 968691238 642832160 888699929 671526963 879324071 324790726 821942352 443388010 583511579 287523922 848514260 46514277 879038776 939979533 955138014 282104517 334493048 163688977 569631604 66436122 238549403 957706146 989411582 163678934 725191181 844762901 960072013 256453863 829634045 988733936 991233298 884169938 923659145 582961280 675374194 230728547 467164188 528720270 606145740 537496256 903846553 653556534 781585724 660613736 858032351 830699214 921232472 863673507 947033472 480526703 764326528 64692433 701112119 869761984 878004460 471381600 509881851 590468450 641976416 302953284 926303912 174664791 323360133 621793935 724337205 992544069 993702798 85390174 187290246 532400253 628074060 837578301 903068626 928776132 986371174 415819322 763187790 819182287 848350427 652335443 737683050 836771974 916396340 832859948 994314695 41570633 149403685 724834302 788856144 301757605 374094028 624112646 707382141 815761408 997956923 100354053 573942475 253197598 797711477 111295251 358263109 71572928 879155138 794749453 919631523 6175806 434603882 713783764 921954527 635574721 704557851 198732665 930842523 376069569 507036503 323320514 947979946 165061366 793615798 267912564 795612488 406127870 548236842 275995637 408518265 312646148 665256617 187449663 751695829 928405587 940583338 373706965 690887610 938307301 951033599 783656732 831776094 592566539 950395398 498795607 793906914 342446533 894505262 55826781 217629481 437332237 535954755 972552136 984015031 133935603 965811863 486632238 489853924 225935520 336158079 977698981 990792484 625477976 715261768 341988719 710422677 504200735 639821032 545789685 942537804 485036821 652257999 410439904 654864383 887896080 960180532 573229990 618218201 25834755 740063824 58832577 905256813 903413032 919779573 792870958 848869602 425254796 867031363 958866922 958868310 681062305 868330528 558514731 590130217 31167962 972091738 499170137 845160914 994217131 996713649 867162244 963718215 665498019 909041525 741577064 895505012 858257169 990828406 620079919 776277301 826216416 988612003 565362150 651521126 573913964 998717384 106347197 601923690 222017224 946256127 914552096 984800121 395906394 433359966 328412802 373717214 662476407 746411549 797970672 904919562 434638755 766730554 801915926 977218336 103639593 992279735 69776607 955097184 177305283 392823431 648024152 937894513 255014254 571669058 293681591 342391108 276841728 372938313 406633286 746971713 784531904 840233578 206026517 495017330 402696943 753122923 687604088 934465188 310993945 876060483 224244053 655833506 929051287 992278841 499566382 742381746 256082372 267168014 320413064 673893996 105977010 563892088 861911710 985128304 402150793 891933386 12057434 37211961 935213106 948152379 396464466 926105149 200179114 650182509 970159086 984202121 200369035 771556202 756136173 936971282 984040254 999270054 235523829 682933611 817358985 962848990 737223444 866077718 824409909 833562725 75453884 608638231 436521742 842259322 406956634 556843105 329008338 956993638 353530522 876792184 103863643 511451447 376037244 847778168 971141201 994764273 389442705 519889444 439243510 939002511 843244675 987194880 164816794 533308055 273391838 574901079 126784643 271887254 197743955 616916067 834808853 852764939 274727789 880848806 441015528 977939849 315797443 391321867 848494366 930895837 725453601 760981472 504482160 826119609 182727687 215434293 187400929 533803288 826097347 857196691 304733426 846782665 376287803 569677685 350927469 352668732 532536511 774667792 422306060 466827763 113864588 876423755 880256914 948013892 125791826 513844797 527978053 888062325 289022632 370771540 177954277 449575094 691286510 770649784 393051505 561990475 413543360 854867853 82956038 672567763 939172641 970598899 983329201 983531559 316538742 717201796 688610499 789403629 343717701 836503915 994732595 994908281 80079253 579925999 657227998 926936856 783492854 847970402 786355463 803239182 822146750 980066298 874180204 947279692 285401047 355486400 928121667 980752844 26314120 898124036 840220577 970351087 932290673 985178553 250654263 260167547 907734460 965678572 203512732 909551656 373922331 758852511 828326996 903723236 5765404 767106091 695274034 827606711 699396185 718316490 529870396 710043054 389045451 848888132 859099331 998268127 194670823 882907964 591456092 641386210 499082240 925505718 811755191 855178295 42625697 414648404 148601302 525647551 506138397 916077018 489830397 698851420 216940043 355786664 588931237 964912942 896063437 989366966 639990790 936956326 268523410 948446792 546813050 558681343 624854252 891846035 5524988 846417426 526195360 678864151 664316622 754030898 115789797 888261315 844952666 939710727 513325211 624448359 132874605 964062455 954717823 958889830 26444467 84598235 506904464 876129076 249062731 688194850 525892191 932470486 697195064 763390200 972713061 987997047 20463989 870323951 41447014 970384766 947446694 990502408 778068795 979047566 551706997 938959155 843847672 848282832 926672419 962264163 978400767 980169265 190177671 265886476 969686489 993059117 145963700 402135762 51454507 400523243 966316761 977688508 14123881 908484131 173662990 815991859 375082360 675508314 985986402 990326891 839758604 941600195 616810049 667816793 100398020 698145574 461987659 716588684 415971949 684095418 702397623 791733451 677029534 845646365 187498226 737938556 46000968 817885031 441377459 662364617 22761496 688173650 802055169 832120654 941257286 973681320 456412835 550862021 428619951 618844477 34712024 616618244 468964173 644832061 292668738 703728093 769830090 945576044 836585468 892466850 447392949 460328395 633534769 721804295 344196438 774747548 293600324 356025943 2989249 260278583 195214707 344699074 558818 177626873 922838601 948799660 695646236 836124054 260567658 653029618 347933762 585374453 659854597 978130354 267611734 932533046 609904114 910869864 614402701 640560619 607066886 906685985 867038159 882020960 645072575 967097231 449558878 452085173 663069349 856873505 284779730 664279348 569805024 962972402 904093829 979179985 914719847 981506148 30275449 41487707 873808713 992224203 796406581 834386926 155205066 836872199 156887689 600917622 112561296 916887536 313942626 776141630 774809435 896476001 424312019 900681803 779776014 873258882 160894804 631189090 125027410 224186903 178537272 299106678 95511485 765534867 284357530 622363143 894413844 915583607 856325175 904629850 102939674 881881528 480264767 480694086 763667651 906970145 856887907 975752030 644271940 869181089 463347602 581852878 258052911 352332672 773468087 986775104 710243950 847590719 432742503 748949328 375561697 549558828 508120947 614729876 102740641 981523212 859128040 942363052 401458343 622781114 677289030 835271816 603608113 802240678 620803081 704436484 499996974 882387823 484929452 564502127 345223839 638966352 855508884 861818568 6728948 793869038 390126020 975043464 18530901 508773622 635017845 760203006 335593138 383717253 932957613 939688404 156365342 262515552 893428211 905976659 39811974 464820003 634433960 917392350 929723427 950206136 396860666 869498269 685525033 970523172 359118162 372385816 311888702 482457017 376048042 710552444 243953258 359332812 551292569 832420469 532612160 873835081 785043407 837245920 524433251 953024655 292500942 471660103 46114199 754772696 757801585 771261153 823285936 851990644 700469611 770902148 670053624 905665091 923958953 989916899 597008283 599062992 891643687 920937480 749245422 827652769 339189828 807726993 401179690 729567393 75729609 505651065 932625201 957424971 674243132 881792892 267126843 615101835 232283957 588331995 93475078 240072596 477378613 772673918 901358236 971351215 91902810 785842428 230527280 674524430 127151293 695823301 357658502 901537059 516373961 929786426 616541858 707057266 890251590 939687842 212662216 800395670 386584995 593720544 290802393 995870353 135666230 576370494 905674741 992752598 349688174 763243288 488640537 846077270 710960220 815530461 598397907 740143071 931069003 935829012 947843401 994485501 150640803 863703459 504560540 552999124 782286799 893286533 537119055 887450942 333986083 577781721 818332845 947855239 478485232 554483911 721045280 881694667 711772212 947912447 872319898 927062278 888774815 934682957 3353420 754937239 92106379 898570104 944553793 964586779 721024506 844810331 349276342 849995587 830635230 977372926 710698634 767495799 618098286 684204428 742799909 819602160 259046714 460586234 963798178 994255417 501609436 613942030 480845865 946446432 305746263 576294106 669077745 912008756 630116613 752396635 350426375 688051786 382690523 440617827 607653002 671160275 828106374 870772591 224057955 313688262 601168284 711481070 991967019 994125409 459693040 488903618 396657201 474152226 760621045 808971787 481980321 590921955 523428799 747774989 601372434 933595092 503565908 589895440 120480986 367763755 360674357 795173902 823234086 856429104 763515377 840018847 981887734 992778514 424441848 891579500 56347942 827263989 810577864 913159425 250737905 580109413 957946130 987347866 418521898 447187653 785174187 819471525 142960828 490341649 497008690 827203509 687849182 895102041 384828321 820063660 703728630 731778834 386732572 753826158 271712609 499955869 921710582 933382595 28158962 877626596 81336168 439686028 168918472 178354813 334390079 939128787 74618725 536837572 469856902 927669181 348719752 479414146 354024104 493170845 966449315 974349177 948855651 967683608 160900108 378737099 745825646 901994330 303504804 342017708 258858839 304861269 836785535 990603335 810910961 847833844 756484179 900116348 582996314 837746994 998283364 999155059 184115467 474728200 305415867 538620741 36078260 793903077 826575086 854179419 158867065 569730396 216010257 267073051 526294835 610291104 50509229 977444680 121017581 948977407 502987781 986865892 414263314 754501105 815985272 851451580 342171640 713916764 50916573 74540462 13483814 725394451 215976018 846588217 869156693 895635096 865920384 942095779 977575826 996734037 598178160 639169428 79760233 340820211 449016191 477708591 997161711 998814643 854774530 974376570 921624266 934071535 305419739 667184551 62684192 524014573 296592867 466046767 102592953 347422654 236192498 813448538 799890093 955307334 115811152 868868030 484784429 859592004 762466201 989099154 427086575 580190139 412492500 481384781 595516212 998598699 769369934 873738151 492068983 750135506 570800532 773750324 687569006 763307286 272806211 980818570 531185249 819828209 958512037 991111045 955738546 993218415 94725647 836069035 579609806 919605324 30903225 915983330 958597165 976268778 443787403 782979056 807742821 904444158 146682493 322447669 583329662 709395446 583018907 590120639 374786090 640676032 50048441 762118882 471851000 489953715 430936992 794769723 53890664 921837423 388355090 406725366 604528060 857441472 644303939 946336587 389692386 818852777 823759345 830902774 531517978 755349678 548609991 768379901 781419618 915834662 268371393 747078698 544478080 766289931 801643210 881100433 519169246 850809083 232456593 305966209 326606431 848746708 858599498 902434823 563928999 932208798 369743041 852987068 803083475 965842440 725748669 752356362 952218511 989678864 214936200 475066301 602180420 814100455 390691794 521031452 826269538 861616837 429239484 909235046 425663576 431651083 196654291 240012185 1534816 743890643 783208461 804005119 74135654 371566725 178509974 751606757 135739814 891312841 409265875 684417357 634146369 799525164 567863390 680830363 407779253 561019182 575783553 787729548 404294083 615715743 71848773 328234199 746001515 886117581 619287602 775872399 694955696 875547646 497833382 777632430 729197953 919424360 483794924 706839770 705399019 866505665 329241749 678451828 565770932 771350072 86286613 538429736 35116739 973624322 524854007 985682677 648496102 811627510 453233640 580053083 967055536 980855985 336668256 850455246 373520491 908150155 344394865 441728579 165626014 685742363 93363574 303799462 318228293 365731843 49121572 535731028 199964748 328177271 65270062 96611329 558963284 627326224 894944973 964787498 336202564 824598483 47777657 563431421 120728411 467230456 446912599 946396930 385946047 768761222 453654248 546294492 242766230 632548499 529968234 965157736 26540934 387858084 570640931 611127103 631775844 894080489 598594486 837391179 782893806 947023338 955652030 955916006 171162971 986880595 935037352 940718406 716892672 920381487 474961166 605528831 468316940 789908471 482446075 924778201 416764363 532104255 860687281 949920890 192648166 589916151 704140192 818410312 836644954 956145699 559430858 716083298 151259370 317479566 368401 438447216 664696662 903286736 888352310 957849294 182244234 373562034 158880456 951905540 47234429 580906672 328799818 582589632 384855145 530773604 15468430 101685792 844463116 994230762 917153804 947241246 101824387 310393052 914893027 958069350 846307284 939672276 546981468 569953126 288041172 789681344 616166215 906184991 316876273 599134517 895923606 912978986 770048325 978335626 281348622 512310675 45258107 570304287 759823886 834526385 515653757 544800282 266097757 602434169 371190579 958019516 352317952 940428052 392663686 636703526 245058059 601981635 199722776 509795341 877095039 882010372 557395239 762698626 845649399 983411998 264129678 334442222 335516414 753447456 955763731 966508055 912250059 923541109 644252466 712246280 431992445 906211625 453485367 954120163 551058776 637314692 18341599 486623813 165117680 935980271 32946747 319579277 998748544 999116450 47252404 238651492 284447856 312361582 560696304 858122176 820128568 987336663 614367662 710049973 704539750 979027757 839131805 970039874 529099182 881617584 567956430 664402866 748606151 965986911 336427810 720895079 520700202 647028782 758769427 997107004 287260123 533991458 885548886 893610629 900993930 922656579 415163443 574851721 14639371 694851826 978040820 989361733 328466638 865737669 341008302 942737057 735616720 737988332 382369508 495055555 290013094 655380096 13179719 673594051 26389947 730132776 278744675 603923458 293944938 973146051 8144142 518360346 877727538 914070560 611891863 923100771 55221391 643875719 889956102 962576623 385093315 404302611 329941236 677050799 884227271 889358713 30962244 714314207 243665379 955221653 84033617 435308371 27793085 867640080 376839117 755535351 997916120 999335763 979595155 997272004 196982035 828946244 602759847 845255100 541713786 867941679 634151868 961576264 823073018 850013464 153164901 422262152 139552718 229645199 383835252 590337544 501035462 715264925 838827869 951275330 891499813 948109156 891511439 988821983 433129288 685619908 26287999 150768150 147986531 960144423 795314969 968637531 486256613 512823471 590069878 843636065 273491954 894016936 100163657 126282805 27108782 752330371 56014445 643912544 465714321 880436382 110880177 136448278 623411414 773637315 561636200 995533310 878985929 972630802 466782926 582090184 918381264 966005629 712878173 774271687 433012073 677269724 361093110 893658005 676354717 933349325 123620968 460358791 997590352 998624874 811749343 854990901 266083071 413863711 432593086 489011491 36874963 704962166 574382057 753437475 247920177 582085327 294594633 914127601 920203221 993572616 232778739 573283141 570733967 673183943 943549121 988969297 530028128 679324100 515571110 831605237 113085317 484957911 390756015 753419699 682453330 695181785 194944648 663326465 349921188 488192603 847781826 849266721 76680948 484988576 671394662 874091709 317536821 560732491 496423747 941247714 780088423 813382660 521340179 831434330 105745031 932816154 983239683 992591661 66021814 595518047 44691162 964721247 104410428 186504179 893216581 972528558 299478962 667131569 734791245 825232351 38418291 857442565 14064372 85364200 380873730 418607495 789173742 838175735 7699461 603906988 158660638 506638451 538945625 811538273 376810417 771940078 114263802 141549086 159689077 648282080 600554766 986630333 511712502 942134515 411155770 750569694 575698536 847208403 229720501 591891533 388971058 673281220 60239724 299313603 920880601 938969356 719959729 826497755 158208023 906975643 448860160 993860050 972360794 982038286 211543285 724167043 491306384 796644729 662343374 843601487 872911367 873659712 122318069 647354332 105851346 522795827 142705310 226013698 780891404 944441264 858449668 985474262 66193199 843729974 555558510 919834669 290198912 378825543 110284970 681224996 842484558 966428988 672252979 982980999 827682932 851859036 383347230 822596251 100190730 420995109 274058612 460224010 337615290 547192150 978926714 979929454 948849920 949844090 970085997 999122464 286309224 792870223 551694810 964446439 832750276 860056447 458268382 894098168 959274934 997913534 390413512 505910480 726471375 815027663 996812488 998695091 642630248 889704423 102107757 232304297 901582568 961084860 301895207 889757459 944252292 955499561 23872923 840305581 814201646 914964586 786569494 998747911 924809297 992199596 81502316 182290506 798768348 827838808 384312229 612431911 607640141 806378294 20428041 410530806 692280186 956724940 305453770 824263223 155901402 473891793 299061539 367081175 367207515 505229143 900586556 914837519 535470917 940065079 956840469 992938199 980552103 987500358 408586667 424845511 155654750 316107775 793705364 800501035 751645166 837720708 892634408 963249811 9738672 885292419 434210194 642525756 850778495 943916895 517474896 642650353 479300042 898457115 910451628 916625492 831886515 982607861 266587304 833724639 349234454 897326332 454434151 808602480 364104471 447129190 212128775 413850724 895226498 941735612 89140575 214611336 646107603 729487487 196247269 307331795 263756259 614564818 461813771 667403038 507254111 805103180 21326953 413081626 585550264 691905466 525975697 707010965 738827958 982606747 209873755 955362105 367560786 691964053 419956250 692254302 812093558 950467020 402858568 597269487 730618970 858346785 229041499 430261553 279965963 467991199 635195163 944896960 626346079 694663202 272605414 420165131 920883486 929117648 370157951 829041364 504684293 643346599 313148862 746008440 691525414 845389384 525614008 863518991 574592550 911435707 46272090 827868943 614855208 794533340 799474390 874134615 492706559 623372593 712111620 767412460 816057377 890108620 483622923 858519692 161323644 539910076 630346626 731669517 193674564 394746641 96803325 721274829 954571034 956544576 265316380 609795650 359098811 985247353 741145657 950408278 298573423 964982029 250587205 283521832 703930491 827220894 72328507 235275726 206215455 310604221 788679672 844039580 793026523 894168754 594601394 662443283 254238935 683350518 569473098 640552105 902147897 952379771 169776819 802844859 426524432 703555379 894349443 939315683 365569275 914152898 304483099 679577798 172727359 508695767 92330013 759906510 85802616 448904997 596413378 668993387 150803105 646504627 461460336 783255823 279312624 731064802 121482122 271408712 707042183 752490478 701031241 722460697 445205857 794597097 993880351 998500301 894160464 970660950 852679654 918776326 953297633 982517873 191262268 958482031 333973101 618059636 42905327 514831763 435141483 606482017 870230717 980913173 728874698 772255736 675897898 844034587 829430757 975375363 161467567 953721316 945258611 952432401 759960079 908723347 280518339 314237860 287058053 442524399 495651017 634257130 181343975 730192301 193217991 492795311 792559762 937387503 877557829 993635147 44166546 800217951 736061600 765432236 857695203 958347875 210923219 540073828 764775968 957868552 974693573 983388871 784161796 936388458 743019568 784053336 555416521 881972831 396934421 962641228 679350362 818925341 343252817 629633062 345790609 510237222 740426712 892456145 883877344 885474275 610338929 787770339 178579785 993990882 113113168 269713889 219545747 982409522 765808234 835241713 827672183 890083709 646023185 878636605 540698343 978669291 526025831 771650767 788878133 814721053 495074929 818421872 735700722 936676527 494166992 985667900 386349556 722344431 67701198 819641776 693049700 900301400 806931699 887611632 903396899 930358510 615930802 779395808 435414888 508252500 461634427 477913214 397774078 932691718 911550582 948459024 163492991 414613575 905518354 938686296 36744873 634996675 9296525 57044218 213483726 889927974 477029666 938873602 381479915 542739092 86388335 626909493 573978419 746643335 401000600 529584090 599823310 776509014 411853173 885851910 479672922 557963353 142225716 422814922 489148707 886714292 385597845 671142054 641485895 737461703 813650028 857008341 347033568 589379151 307892918 898744343 24479285 260098106 295852726 826280732 548836609 806341577 76027386 800250101 253002671 745561916 781258779 782208364 510771429 844142381 800389185 803263850 150015989 942986152 851602485 954794170 938000380 961804401 624186623 862664058 235345497 785885213 949831496 952360248 725162275 856284759 902296195 979224134 500387610 630643254 220870506 895642862 356891597 398012705 130896498 359471322 188625894 984681730 208207394 693832253 815777789 871019284 876094540 945620721 245009014 547697792 359016762 767678267 285605198 436873102 375120642 417850897 959989312 989272306 967079589 974650445 708414641 748182524 381734891 860525511 511835309 633333360 33592430 228897057 950797612 990931351 818057733 841713564 761033079 805583250 820058053 854598756 648677947 925348386 3088338 563543840 339811530 798975129 917453414 955914018 284096480 643601688 365056937 940447799 763038439 929207239 293948372 611745403 149627493 477016695 885257220 913937304 696393782 893633185 274350307 999285754 434213161 605399790 900910513 924682390 697693098 767567442 901315384 967339988 903995382 936804100 252892541 557828575 814309256 889938786 80361083 181140367 249306662 604262581 527274979 559314509 800840906 891391237 709587947 897158739 24258899 642455475 531105504 581764290 47327243 568108307 342593635 900506485 604342115 887881974 979296111 987347035 272741085 817076451 592076022 952858174 473468391 909681504 870717371 913396688 380974323 727493023 663975258 900633041 517243812 674227982 505326456 908233794 729529564 752159413 641890544 727759187 517428236 668016052 436224908 771011811 83220338 854281758 434198089 601531090 823221889 829023904 858603239 890460438 301636844 608682486 540239566 580439387 105574677 529148940 125812656 989745198 472601144 994911880 781722659 791842434 754293130 860430783 309593160 710871573 7297227 677419621 79147636 752376117 869496689 919281332 987860562 989969513 404204546 722325443 726200126 888124753 668779581 950226600 747070521 772371903 803149912 951428446 638481798 982463190 576056132 987350939 419594306 856895091 601898183 703924506 763230836 944810804 412460320 853961023 218886169 813855354 443592336 663858367 124906 831403454 25367422 699864499 432370542 872309379 585509165 903139005 847240120 912251594 810752743 871870175 989058276 998285358 267860283 768718214 739527277 973490740 493835219 806231784 135663064 406247928 784281775 830785446 867628547 895222912 565063503 863151817 489135455 853561319 398183495 610158891 250818264 266263281 30297568 468758962 154045277 909327112 297608387 729331000 242452452 886382254 317485175 843583291 410627445 869062100 424214572 771292425 899868402 913883058 788010389 805430687 423392567 784718599 196356980 740929067 539121941 575580833 524414769 805655922 411093449 952329084 237117530 767032730 772846876 806726094 732341388 945880587 400051856 811371933 225193454 713019616 403991361 587002246 374157983 843522365 365808074 993152600 127468675 164069511 285309208 381537770 807476243 834668663 704835332 741608549 73324112 284684687 676573178 869655108 389473197 724239030 384597014 849628279 120234495 520110674 326984204 360775626 434059728 669531590 275246071 434582583 679273864 766991100 893452560 955384484 355583447 716892053 708245736 926139145 472922214 852995472 482526458 505587571 612775820 865325425 650765838 766228745 695853460 991813864 409890763 525980916 597227179 888293239 586280735 912844342 109948151 210620577 987752923 990752645 65940529 687349346 241204790 495809929 376086094 997221135 698217629 702017073 361042945 776732340 365146335 839566559 314863733 743197352 853420802 976435318 38948066 656060385 898363096 938895094 526378543 825471735 614630582 711260796 965294331 975026258 990089409 996618739 459170564 687792997 361084477 865971673 709882203 800251278 169457983 782930089 943384568 991639698 799576113 918751491 727009743 902830719 536810901 719416329 575523792 906146075 96180816 628384576 715759800 895637508 884136198 996942010 264395459 685891902 988326601 992619809 53589013 967795504 651319755 995162556 815173992 825611446 935915845 996628939 36610651 944803940 237780690 383147423 955827458 963308952 541123255 560084147 329358393 722607762 958269428 982885015 67157754 526354690 10680 501597076 968395301 973403006 815253778 898016009 832733219 905939322 742936815 800493066 718228364 870689188 792062511 969694730 491749506 547552266 678412166 911001054 478451033 976361607 704923232 754536512 632310423 809917378 671900744 965476908 189279429 822311749 320552920 898746089 139896476 859310093 824933863 877519287 677241896 968571893 246902193 435534947 546827039 567333296 713933626 752791096 990139562 994192442 119644062 645655117 943103353 957532240 13297039 714536106 903745829 968734593 725228610 962167396 734180246 934528365 33435557 275554215 898612318 927569245 64030777 89440079 831183959 842996149 703587325 956741501 327963841 629413079 17855470 598518613 805349751 934484566 776702193 963963392 657000095 854621866 881540526 965620179 82415316 557074267 61277331 406951005 845387837 967920940 420991843 707104826 577746730 706142794 848128806 866428485 317097062 622350729 206423219 350393896 602281875 919169493 546762087 611961092 509389451 787057642 40535365 763229310 991010701 991290035 276093493 706003612 437023747 795377467 496986008 974765584 171785958 253638540 147194202 221881556 402395972 621395066 149619137 990247232 566446104 779676657 856846089 950371815 801115972 972025779 9487183 363322234 546844609 645602250 916955213 989965481 513593796 774372482 831797093 897878160 873943016 935468311 853145628 987414313 703077439 994010967 171742424 894736852 303412521 803987408 103845783 381508402 132380064 552399334 243580524 587877703 316753238 825914041 605453684 666702844 81143620 396244224 772061576 793849585 219003701 364187739 399493901 939407805 256762159 833613025 58563696 458566370 946874437 990059666 16757738 99067615 872551319 947253744 492619047 793755658 614594232 764812162 33602303 85494771 998458046 998781604 759756451 874443128 905437202 907769625 97719064 849998748 48694024 604822669 140045091 229504620 383876270 619414537 758891919 931287230 675263877 785020353 475549117 796804434 884123870 994789446 965543901 997786503 329623992 896967197 878347994 989230206 436842252 836737013 256753904 782241186 834616302 970525893 645882427 954825411 466628434 635576199 180251623 512989661 378737477 720348857 266418830 869090257 559887846 633234655 779522450 933951603 884393671 938243140 492611955 969953068 652607088 698251591 97005406 698726749 183363372 601576116 196534815 884483110 564154717 943783994 47605999 775704235 948700251 955293192 192339892 732898893 839919930 960782622 254300696 555259960 247856350 629152086 588560620 863396899 512944506 853133976 836056289 860898549 804004107 885580325 832218986 921022145 155552983 927635327 697260002 993450956 286350399 304923758 622349158 676308493 456139111 590922177 157660161 741516939 971819801 973056800 435081321 959090293 877696006 904642730 246982555 490981926 742535706 884613979 129394155 255556313 896697096 988693165 418756676 738142361 141869008 178178198 840212957 935054152 417919220 628521407 327205747 334363125 954911555 981846134 111600055 205768431 947753832 952741999 673482931 707518743 328497899 435679841 151932447 822396002 873283945 948560145 428862110 904059713 228014051 657472798 106112845 823751733 50601485 875506052 661604682 745484925 369802317 849274291 640400738 856293839 221605260 503704083 709066162 995640105 914083120 961051590 411635177 890777228 536517642 932904861 683294876 950630271 73734657 364680274 555439601 771352685 31224057 362029875 424660345 687280512 80846522 214432568 538713396 762268037 764696608 847854460 432325723 494573815 583631989 865081478 807993932 954275091 823783404 960563960 462421993 695472340 336345611 687578911 563914943 846754589 846727966 908135158 214480177 889620248 322944310 480580516 211419233 458802329 729890287 822821368 633819649 709911233 349330017 802802543 738716882 868013334 381537723 406357767 957458175 969187000 806816309 856617636 667274852 760757040 590563199 903865967 390019884 872905072 51732911 136384253 122123613 860408202 672743655 729826602 883975741 975280558 309675730 996224101 586187384 689650686 709596537 953384223 896036266 962260911 169366040 837934103 485486990 609363100 345915531 644570472 669228933 816021565 685984275 744384193 235343336 607101159 471516779 753663519 653173791 971082939 100758177 714546693 121316913 149931767 166737856 356597569 559354417 723893371 183914709 317437719 24280245 392542020 7282087 808981231 232379371 689171600 463813542 971585204 795482892 970674580 751905616 929155736 261066699 457830772 616071441 748353920 128806240 521397131 804267687 810455079 535459568 647049162 758710416 856608963 56712839 989859908 100664624 644771806 337188080 802657178 278249923 453098592 834027688 906257329 909911378 950382415 145748798 297047001 48988288 191937419 941067067 962633952 270071542 678658018 328577703 436682506 983229103 998147898 286729938 790364221 361257583 625420049 420519781 760889874 920811980 972450151 134586496 842221174 43866109 86242211 969596799 994391534 379956339 683730302 594101880 757149154 517695373 932080101 172539622 828860713 149097300 834579630 800772082 840575689 415733287 648140481 645985292 867116088 919198852 960721778 923918045 986328486 235569281 943889841 236126936 527438731 681510193 888303621 269978671 893042503 981423381 994736212 922195062 990453492 398325083 826006595 869129507 887109663 1103789 970627537 537326137 778099786 913721696 916466856 446643099 537121276 822078836 905413007 132333159 172594991 688581130 695225604 53978592 951160382 667385913 684646084 221490951 703994593 899221686 983053106 82838807 305902657 187539338 545264685 144015229 969554054 649177787 884369698 742403214 954802565 643096636 698427448 923425880 968742352 19575036 342356962 341564615 821149612 887777496 916111191 540540155 837849594 857792221 966509280 469245116 837828879 986116423 990773096 531655634 842191444 153491403 540997537 51776279 211362849 437462845 697073239 796314019 869949460 648789008 704887044 590599574 951457415 838122336 978093964 961082589 980917189 578083721 849643206 986773013 996437019 353547247 904232635 990909832 994602307 542333955 799535594 271012462 765235096 172530733 700982722 736293335 880581943 460495141 670946136 30262178 461123367 890270214 996158136 6199414 712734886 227232315 421556778 978658786 983405695 819218566 835358695 651594282 722580469 263766202 347278323 366244073 956507077 370753228 513482951 966296106 979400201 244224789 998142314 561223381 609774833 229021770 727093214 726827276 942819159 400334291 594419752 605622571 853386370 2566672 750215655 207300836 213294307 861075868 884437770 579929248 796121598 474005306 625878464 732711130 750395335 503741533 833482593 106034559 271070813 428656745 569332299 328958021 441863721 433243753 599790598 664224199 911962930 798970970 816476726 58735384 558434913 790131105 874347068 637139078 835537903 146832998 689598177 899512783 930679220 53204357 258074372 545821219 765282905 171444702 918023642 510805354 925470087 453324359 525900845 689638126 753718297 332112934 927358020 725526967 933487188 628931394 745242702 558030766 786897618 417313149 507915398 430867453 850703210 99180031 770146739 943563066 945373132 361594714 921708515 552360451 983858572 783028853 880595513 953662413 964960088 113836050 834706371 508881126 644925811 95744350 679582740 531889127 706328284 706879581 743311908 718497078 881927280 600176601 682452531 556071074 944059977 9060491 165097239 44916814 84884721 472181020 699664023 915988161 979435898 667289488 831624038 436417781 732421813 934628812 948644257 580468451 904551602 862527280 975588870 700138705 976225190 756526459 803310066 640130579 921253255 828636788 913242752 802535918 985286282 821259863 964307274 385825323 620350983 946183454 990933846 738445442 996919678 880324000 945510933 314387151 805441005 276534138 622985622 232776712 871457083 420142217 957836862 898053277 954343018 516909516 972380672 841754196 860649802 328187741 462179597 711449937 787387212 325716439 661420824 21897103 38763662 644130435 990492604 297206229 502028018 337993174 663386525 537896190 683675287 815231109 858309078 857038253 969481968 759582381 961756883 161856843 969388701 193048536 776800872 956293539 964504588 540290293 956958535 569740800 973091078 441855714 635005032 753605358 864875677 594409017 890757797 449541231 772387510 638433 47931592 528129672 827567834 430815200 467577246 729493735 818377056 952537625 964416380 676390300 829861816 827518947 828131186 40908900 155344289 856177961 858258048 978682270 997140562 82293138 644295748 751021588 786462609 706869521 771029525 836793872 913150107 764996935 829715847 293371889 664749188 173418063 185128629 200943047 510984102 523475903 780449905 45305807 151154758 325024297 554813445 223753865 423556690 405028890 495433108 484442797 911271382 741457150 980120035 760297270 910302542 660476970 740743272 193612853 829497337 191748373 236415114 35661652 389207992 816714658 965933746 388220339 829735288 570722884 582301240 81293581 975548903 721118211 746407148 524527505 776933792 435796999 868762475 659388393 678874344 680453201 759419548 716851542 755924586 82198580 750962167 820049009 951677695 718148179 812799104 254039849 927415543 413072084 851185280 26159145 182572963 231195648 720662064 22506642 709878370 8034615 727623032 471856848 857356894 83032455 950435626 774761330 956917400 918184333 930409407 93128308 682444865 212208977 525021240 894684918 952581417 818278053 826169760 549880334 753427651 528554455 962126981 456711688 996732454 920330467 949389040 780826704 996198351 785963397 859881388 350154993 491765961 543924497 970002169 235832603 676622650 466608727 697435744 466657124 910501149 293477507 494920604 359740825 471629066 596918617 638123891 782708091 829822016 657016012 905635258 353500124 569839246 248970699 992817437 517345191 853101828 78527062 247545054 409761624 864584537 484710431 973515635 973698855 995557514 808221745 959969045 790531370 847531400 589076834 657213482 438293654 757003043 99347989 886194085 614781520 992954111 634906769 950970268 164190513 546786453 375893970 817152373 884509718 932960979 405484419 697587319 394582727 448836155 584621990 704603412 72526052 778626509 592021981 827485374 407417215 906339801 664964283 688426434 260110004 284466460 130992565 498799943 888428630 894526831 494924968 872821030 801821198 894793307 621252083 743193252 993272828 993304513 662003109 833191043 316330741 403178444 775410833 887500564 40015183 679790082 440114838 935224835 673643992 692442739 140816662 149109450 731873662 959233325 239494337 606279957 675632919 776119246 602003959 941149522 638212247 725344869 856416709 991915698 733638235 831638323 78787559 287992304 507790201 689202131 973725898 977128007 807433114 896527420 231572319 255614695 641819957 925645331 13097663 104624931 708781200 739953793 209800312 897509244 41526889 125138595 159091479 739402078 975600099 984633689 888740737 968661629 600749626 632909362 851870343 889174449 402222212 949841493 753404139 759881681 769922502 828724092 670918088 944918032 957771599 981826345 815010922 861106939 602419837 982568953 339858264 990673586 520410585 821318515 722982896 842666647 221470499 567673177 608333349 811855873 775863949 930162329 962220550 982729975 304626282 389867872 82989988 933482538 587040189 826665175 436316193 508830754 343253842 541263669 532497502 934739380 570509772 676963146 567375732 980602729 599963956 960406537 85346132 251102022 33139470 372262764 720252231 900970628 502032880 988536650 231398044 804447030 47247612 947432670 756841236 909937201 200434132 802134959 267920011 294369002 371094937 738903156 812466618 987200208 33187673 800570512 420915376 967438978 673561954 712371075 51407393 262231368 313024461 714865232 316758938 337934889 706934421 842390381 650833965 795153567 78325489 831562774 574298993 808392870 803396030 851882060 682822670 771649307 31746071 602136497 500629461 817140958 450554175 891393899 498280777 498347697 476389786 573920980 551677872 738099095 65957349 176937782 438528471 612713870 1002290 260825311 640096333 949945898 312460766 728511114 571866771 808814458 805223110 902909125 811848951 892072579 246277084 934226235 320362454 690599128 522536532 524364022 169608105 876206585 155153235 405596740 173497876 785781262 128750699 635652729 512748921 719744409 614336416 635988535 627847245 645549934 278289108 901985511 571292981 719248436 143198378 369230893 966043664 970067525 791976961 902945499 570271544 867740753 409329248 656247432 717400651 870271087 760355525 790224719 352341349 927878736 99023638 374036727 784068085 824577182 366918097 692811778 373066415 589963311 372188797 599623942 82887338 735854185 583845569 853755509 528866760 873012492 513590190 588113300 908372385 926052071 83421606 442278079 906396714 918674079 344094918 964255752 142917682 733386129 969201381 993457881 236601076 683184024 661741814 986089261 598606507 956486156 851438099 968839111 700861053 880794315 823824211 824458509 433109781 754987890 756696678 884409638 319351110 798274156 307969496 677479764 653224907 859740946 947468699 964608801 707929242 966375429 810070399 870230643 135985714 667562056 778357976 878649509 175086488 519388608 197990452 929995039 729850313 994527321 120798458 203662667 42069432 768676772 836606203 996155202 641249811 959337100 928323650 941350404 449779368 512452891 231822648 555298223 981828884 987465613 13941578 169898911 711446900 876622528 728983073 851887541 293782330 333090747 979641984 985040251 605906525 636769041 268183447 536302741 79734887 764046295 481617034 761434746 831691801 944016876 445040715 716202672 755434416 925878011 443679037 624293131 350651741 680359683 723892877 748890854 417472781 620449864 170509400 844700083 836286569 958792542 785495608 792656155 603011581 674318456 787189895 798507761 411107246 713869682 487882494 563161746 156808646 197126630 648962531 904268904 239932402 504703131 453094394 943496512 456018035 752799808 298866317 889445055 421490985 423018333 517618304 632032777 858304272 965412847 118028842 973121840 997571872 998149236 823697801 987321112 755040975 853108744 701394675 998057003 79709843 891762642 991086567 992369592 272942304 591958298 219916746 782545163 607739378 956427509 152840779 642690471 83454594 708654836 973255058 989879910 612756316 869751745 283003286 910988207 159869564 519838865 118023851 888760511 566495908 617864411 415760324 686143011 163798596 327471865 945650748 949723670 623677468 879022621 248014516 453545583 845470608 988423781 503253867 530740731 576139123 891025565 450804056 491791935 888167984 923176046 897223893 960672876 559322898 867029545 870165180 946078642 309037941 502291763 772944713 929115647 743087063 865369094 125353477 739585007 827153927 958247107 12065253 871790337 419793148 995243636 805444372 886158666 967956043 977758100 931349657 955393846 937014020 998908254 984994963 998363525 244644096 833570677 539800777 733219322 107355039 976819804 74415908 718514456 40732773 397021637 334261318 368420794 428662357 649870275 490349482 673248000 410898787 580501580 825247980 857023094 295997513 598274326 810135398 905763295 922122269 965429484 229775661 440199443 282538220 725531447 727173617 934545199 142094520 534385668 711145070 860196891 690808496 978689345 225139176 254498631 144872596 263938491 492649278 813848492 959412811 965096472 976448107 979221234 965176013 994665559 879007329 977141330 487511408 944645358 83394021 492599783 869999098 914831374 881458965 913195711 83344107 355068756 418446795 640779619 199098142 609768685 596809162 782623147 30656701 803093278 17718259 703290444 153185390 292635635 324043272 651477956 996662235 998694390 425579178 478873633 812777162 932832553 784260468 794594209 519881470 585129445 587848021 769404830 425433979 808540510 245253482 605366183 797038888 934516564 783798820 876059888 8543382 219677593 528972620 672890568 555701446 691312337 641122151 779628470 79248157 185571275 185093246 436223358 803054125 981529748 964985619 988224660 981681625 981932864 281159374 867461356 598219412 966713677 550631154 981457930 750176002 823547395 723489935 937429028 474092016 798895731 822856502 903182037 461272111 995827399 562067211 661550702 745980242 775934852 517310875 991889548 330203388 726635532 61360898 236051649 105888002 241541110 702543499 839972794 73760990 746850641 793642001 803867254 67683877 881530476 452967293 701103368 580781118 638032106 276016662 465101984 661050186 947419321 714120673 971042972 659604680 847293144 424666457 663424065 575738684 822987630 744772502 960707815 142491163 338532552 284813167 937821474 524980504 910111235 41902413 791463847 655595376 819317298 343854306 756553682 931341341 934530182 751135991 933240375 878846518 929369806 887900930 913929828 469937843 894471214 423452086 944729704 72450415 911244770 847577347 951422235 606398645 822118124 856641745 891435824 817528462 854368126 805388885 831269715 49509635 547854470 570837520 826601617 930462168 959176099 508786516 515341431 418552038 531276620 412820229 531307470 951699103 972950635 969647350 975447397 319634845 707851983 418325701 732182799 83301804 823729272 960072653 960173590 521445345 737612667 560785994 891494745 578926425 669189620 993023588 996855158 393384788 464761055 589484351 603000089 484006250 932589727 794864558 829332147 828771340 956133979 593560843 601684395 286310315 556088507 703572684 778533850 174253107 876247055 431677970 862378413 390770988 399358670 637697379 733233151 663437968 750490880 580487363 717254728 629223861 777655942 609658635 789132031 608467412 753792921 262777045 328418299 976432415 983374018 513112037 934349102 10996961 987519395 546453413 667840839 611064963 939161979 244605841 772450417 95271821 596107826 831764077 940399297 790405323 903499419 2599244 345498727 563879259 653865905 879034949 934750817 345421474 871678253 4970196 366516085 582550748 743376438 16299806 799095395 513512674 570228283 843979831 855947559 738309226 862951335 897139057 911186233 757708792 838951881 760257527 919611683 648125440 767351939 836888702 975205896 649943737 768203560 555727586 592573557 805357914 868633936 43464691 89679809 962872882 977128744 721061008 922527570 961392189 966402998 679838695 979869175 622829752 836560862 27818953 805054740 804611840 823180988 622791973 901864424 420752283 489165100 672377294 815542133 952700929 970475483 400555033 565020001 752071321 933355850 520895485 881378371 366798533 940269020 702902402 791468440 498202362 738439722 653080706 939260370 605242531 718753484 826893334 924200013 876850806 944027175 264658398 331233732 567014017 600807436 323345004 702473196 934447391 998454377 253647448 358539336 92174257 694804550 304461700 778801710 808669731 977137529 740993138 907188804 551281287 854367997 945915871 978479019 153263185 941462608 633305098 873685493 13339851 26940078 156788479 775116756 470552249 525955718 743646680 833458251 294079997 312844292 749785243 829165604 597676946 880348632 422282079 652129580 797514574 803053029 34385471 681446051 19766259 990031673 658299821 732521792 144231654 269394928 193524551 825761979 17822570 348399590 385622256 967158349 707652040 823607197 777794262 804150147 868831782 945972590 332401423 418491502 318334458 995288914 557513013 819466372 898998246 935928645 701993385 939533551 752576903 767254680 807994881 931725146 254906880 711323601 856123285 921742685 529629586 537546027 466471669 881734639 584725937 966170354 27232469 506846515 171274202 177066279 147485005 424180551 715093504 869027198 311564535 849579989 537016647 767751890 135918243 421395712 913939247 984286488 443583909 955403548 521694452 551596389 968627151 994746758 328081690 715179086 196182399 271471627 556029654 646820238 601784602 733634697 871642287 980419317 433497915 827152346 140868292 743623952 846689366 927815394 812995321 948779268 202980248 613901285 58659909 104578915 480551158 563898194 924798556 961327326 677704249 743575989 816775544 925160975 838083288 972456500 710372290 988904865 751443996 782395703 146488943 897327920 420927159 741989443 390362723 559748211 912551648 962703066 873622120 982510769 731368411 791468264 472948201 681835036 682577699 694214567 711931835 830321523 201927516 817561387 794244676 921783208 104463164 253282611 396796681 930913359 660028287 705012550 177597175 187663633 279986381 920521865 611268676 756129147 555494606 604502201 535542967 853974673 697139997 906375969 511299830 869142887 456776597 904002756 744199147 911339272 482412186 953276472 79139941 849180461 823459569 989100652 449119473 982705517 435282902 547471223 760808498 945531351 473267473 853318893 77216327 459677183 279953064 364615737 543057748 555590091 995852885 997782927 181193530 751863351 576873721 790741590 639471607 859480260 20553765 565297817 139424191 218225921 760573870 782335901 430837174 855668487 721485415 803601378 287541150 509548603 371409897 929815172 113269775 185786454 833129713 841642528 939702721 959429471 661906466 674264694 139635432 337916639 437857809 536037101 148206569 835210901 20182065 30228410 549739372 838160319 816712427 996851541 682626967 987820379 811179150 996625647 2408691 984542213 797414837 857760797 7170623 363993558 612451664 870619684 466096742 897310712 917801118 979324534 557683511 925318223 729030038 866560201 52661629 212743500 775056820 983149167 950467419 989936792 364849630 409632537 711879362 718938698 121219222 698500877 556006272 748824318 358045400 533133469 669893540 735827398 48504112 622293701 253883999 925789698 442762008 683895176 177512184 828836149 819768493 851015266 305702578 404919930 165528342 692474301 358288331 947403050 269397418 293567568 803489419 812679605 595891342 885235018 29799762 776774476 392024214 783913716 22569471 50539036 135544309 464592231 306083240 841201959 227563697 767931305 416825974 705913829 658757623 667155158 668691710 687408430 542429151 699107153 437275545 923517470 85101035 542620113 834668110 967282134 437522376 773343419 810277804 944190400 325982632 819703397 242905417 902378466 989800994 990680301 359631924 380190794 258779022 677160005 830654822 928794309 500367874 519906338 236991157 832375817 404698518 431305064 235640115 704845102 720575179 920461858 833372 132442502 82314421 926303710 280937653 952663941 956331603 990770443 759560753 789699758 904973586 960205895 84165374 195410794 532780124 918745634 546712006 567710212 709451349 966608968 552244189 646254466 315109454 362164149 925830331 960113877 556863141 670510459 9573536 779255549 934972925 979480850 537229905 958891647 327165931 834693180 443931016 949074378 46529127 717168460 914203324 933332648 17228757 995087035 460007020 506524637 255196182 686840357 429012647 531076461 896333095 968739037 623289085 644008296 873229811 980638990 409632664 592871516 571217675 751326975 870701768 927808106 825136452 980473710 480922064 796763432 469448355 718251991 332821634 819651139 43168589 497545866 300767282 578068107 414521872 547155047 955397199 991941431 493778920 497107490 724692131 857092765 237655200 986548243 813007158 888890175 581473067 831899952 456423848 466122221 600058222 681500506 506851047 759128635 683214391 909375727 884264549 977876761 984756900 997471038 497490918 605684781 706207225 850014685 171390066 663741186 584045975 976923498 761676182 847770155 342957238 706191445 747309147 914942242 724099525 980921574 443751318 802933883 114884087 301175697 17244179 154687731 670195706 670859087 582424339 854505288 618191510 625326427 884575931 914310719 858546605 986266094 943594427 996455885 525256049 607137849 331012772 916208611 265866475 826661491 933126558 974297583 837881307 966745239 499770642 651457753 220453705 542084453 578550445 833520857 998747768 999329332 205090011 594711518 633518630 803615786 546623746 657269095 937659397 958051005 758286395 832605878 911939513 919950220 601508487 939775332 751954134 901657326 201333059 405904935 322326907 525603985 782867784 968276712 318670067 780352375 866600637 888134382 430865871 942594288 182944916 645851950 292602992 597694173 341398694 952348983 891082874 964654383 599040785 624282854 533177988 978321593 432224857 963532034 823466260 880087195 232498928 314886544 302699550 773459160 122423499 317337401 682924985 994120819 320067248 859468488 713046600 830149863 510300871 542510225 683893968 882946284 18149778 376596254 474906594 600129509 891555779 910660278 697760814 798896748 787003400 925386169 50627007 161216717 201120127 340648325 875025450 922138038 527605184 628531181 688375881 762802118 218463549 400318052 354762447 444208601 388379352 740685141 721796668 795766136 566809239 622909689 120015268 473272390 427675315 466352266 826205403 992883693 494878942 888014537 462378063 851168776 393733505 468759009 416288453 955843289 651930898 878820510 899846634 995309905 122706286 950679327 113891529 344051132 476889506 846635392 754052833 903902778 434302473 571154491 24477329 252900552 582973122 861747131 253532398 588275629 102475783 272283209 780878900 901572631 518407556 661923949 721654532 868053759 155416843 214861591 760502802 929615151 716273674 794506496 524179702 837320920 611876325 761575916 313542239 994551725 294856129 576664678 2294018 977209111 891167618 993133017 785536111 816188604 603693419 945509569 327797477 413847393 655354371 885854770 926735081 990196623 371045355 889480641 639130466 832651477 532385865 897507790 152438793 818211364 210257344 296086107 896752685 915541525 580341818 876656585 807979270 860398057 898064593 943053234 245024916 987814273 99525717 736632017 368411047 919785707 304874318 778405946 998909158 999104237 573078855 765108156 214496243 978015991 18434709 531574507 459995164 839132804 91586519 959832027 78743357 781146100 174989514 739249361 869164072 947812820 704064946 930581896 486154003 978793856 458829118 851233631 702530637 954028063 540204225 560698701 34270803 582145787 698226539 763212256 949564644 980192760 569385211 724781325 363195706 536198834 697204013 816883579 771605502 889951378 958066415 975551063 767209154 768692754 910758496 932631111 76141628 715123918 34555142 481111107 429399197 556922865 960507974 968849921 40179785 322456336 762818569 842301776 570077899 949170522 329337379 509243239 851246871 987168690 670157662 821233528 819094623 919896753 523280393 901058091 781037517 787895577 284829513 466279606 569012189 810904581 14717982 277856910 946273781 954645687 862150134 885023117 384172203 951194272 942868210 976271760 152214588 753732573 869267633 986178037 360834602 758473133 230941108 364188468 377833300 739741977 65896832 124171018 37390059 790389524 184533094 979723857 363416917 994578898 332570483 532245600 972468927 988239982 615087135 847449606 308822541 370666117 49716571 721962679 122416132 407628970 829845118 892755350 387358871 410922863 749767389 869000580 465669954 650710993 723514533 947238176 285778744 398425736 866219350 966111921 619969872 697701908 39681184 317483581 654505153 967505928 307866997 974011299 725032525 888592799 273906508 357240990 604215159 678303876 868523249 988104432 319202314 634490047 994791228 995448625 511137075 869446814 876041118 899570484 394623907 825554905 559492102 742811902 798779668 881606719 466907404 880341052 490245424 597821213 672242186 888388559 769296156 849414527 612900455 898435205 204515859 421362328 864410119 959872309 398121622 790122583 182052851 984471119 117483174 375282491 692832041 804933842 759553415 966396683 945770852 948679929 950714335 986489186 68707483 189654871 172446772 390788255 131927300 671950514 779001668 891948704 632430604 887565628 410320739 494088546 981742815 991492690 624888698 857655196 418352219 841441007 408708068 663352119 764851155 839012356 244176028 363730731 540577190 982172108 629187999 702027501 274563439 833435777 119903697 306919119 964920767 983732916 271015177 372680419 622209202 917422838 324900971 821451761 530429913 802072054 47656646 225824550 251525541 934516380 892855224 896248418 739470669 752953726 890506450 974902554 408221695 925722144 193412364 256218366 997001561 997052052 886825937 948462921 313238401 710416126 343134963 970134234 200921702 412510062 663402606 996596523 199589670 943459453 733194177 967385547 835268000 853868957 707446431 717996351 6344745 867325712 828187333 884426145 406763225 504255850 495801058 924719670 127123738 554865549 378631296 790029811 849110498 970661542 140195655 152136962 169694154 826701256 913935540 953444564 993120380 998417527 947015769 951839793 976361283 978503536 252009692 694529378 370393812 569107203 949066872 949988037 567573668 968347825 230760320 828877630 169148206 641431553 359884738 725924455 53001815 856702094 597101975 788134775 362849386 748901722 410448274 416320326 691993896 942022465 896596748 989426392 497256867 539300710 333291789 949378827 432386488 761841927 373808539 898911696 498869910 957573968 756764001 973674266 880451224 944220110 507835869 517947713 452884091 733378437 141571025 943512681 528270483 759124342 534393577 561268666 731835460 773265243 297504794 990355235 716756877 766737369 704684604 778140348 259614331 679619617 964770811 986828620 550164603 607645745 327187591 720891681 905789175 963590173 47620566 493538102 74454010 177164228 272686639 890776465 365626244 523271522 330784926 758263959 989270433 996981454 145329152 661322743 515466397 778735681 271226820 433612473 37240674 930792081 452969628 861544386 614810143 983270109 17416239 575498917 389264690 665703783 614349480 756849588 478549229 493786538 813578734 997513962 526574656 861221453 31529372 252850836 718365041 744236470 665594309 989957132 846562805 900972212 773895414 957933931 120135385 823213440 652690318 696007252 760099004 913208830 108578662 829679367 343641168 735097191 991448662 999224138 460796682 737710432 190756869 521929341 436163622 652604520 181025181 566241862 703842322 753897026 880994948 993664620 724599059 904955917 492488585 535245179 68431195 238703341 417603037 955083060 900304312 992719371 758961407 812328015 790474262 943797285 946073637 985425558 275178564 409796130 94568278 501947879 458920968 832949762 877501334 879568909 953676339 997868370 904409902 924950287 16567455 731434026 853019570 923816292 948434802 985263606 352515541 780760155 95845196 901664705 688720149 897382079 180788835 550257205 292379103 912460997 766028323 923530652 677115374 949962659 718197285 782239796 878980332 878989370 964327991 991788012 389238897 929289327 559876352 787340501 16753480 138368453 399529127 612481177 690117865 790856311 747933834 864491762 323694135 667144100 162291384 875361223 455850582 739957313 671527319 708239827 847370503 872895444 427228157 861143932 594688837 736093673 925332884 975014445 534205761 811945669 311593058 996414234 386644542 842974958 967879724 980057141 134265871 831670745 324667900 647980450 172640588 832101142 386084658 503104854 675326502 783670859 935179999 957853991 831438410 936258563 940696910 969402255 524719140 992975648 229333015 595764945 80847808 940077356 172983338 958409818 158143251 592363321 550135879 793633758 749579896 844410314 948810513 990715747 417499627 717720623 534229971 766304443 818118506 872379108 603696730 654934719 800014041 986409738 341907102 687256555 879390932 895577694 449855372 925362523 601509070 885282911 301200813 308872395 192888826 729225979 201208581 288483453 847095567 944118597 975259874 977073044 679709693 774345099 918486783 950693675 198519244 790382370 768056496 866849308 137526614 991447142 170354888 603484199 337585112 743395125 674458318 778438275 527244016 974195850 610840839 760515783 473520095 660137770 796165979 913173661 617275275 734077449 173037907 405585903 929558358 932246945 110433939 923221108 219729551 767002724 981902221 985023894 71649327 917795314 721033730 928662187 842752402 984365917 877424081 979223881 225889902 457054106 469990382 907249352 785339388 847150256 870097924 964951378 77178758 89993854 432374465 501803122 404578357 832571809 576204446 755237488 79592425 102628560 827436824 850151439 366842754 529420495 64579721 301569132 230176644 630348693 545163371 803292264 387544384 667961611 612646684 831706866 322659991 696018584 386427600 777085949 92072660 249946986 512830309 644348738 813859612 829728775 970345696 996956992 58863734 324772529 486257801 732372620 824623797 891142650 523490086 874694119 400541876 691509115 432568394 505727691 445003500 674485683 389211968 908392301 100377709 421449683 323177813 997785877 299332180 460261868 825369181 948130847 185709377 603172309 602084746 769854485 257850032 804019122 719996380 720960769 926153874 952120288 232346888 760782919 108763209 155509574 434466463 515745616 376504747 419988903 872648311 993685108 492868713 920996873 883976103 944737788 837929426 963257527 96332002 987012278 922546129 976328282 403787656 671531194 275774538 508589766 125118028 584578925 237772352 602085811 664083602 684290464 191502006 404160364 565958075 974949125 578319419 867388086 943500650 952308755 142164419 978217854 944312507 970638976 857686775 933310281 709966691 748275906 7210688 894529515 598997647 638822983 378244815 403398436 34280277 101114412 369467390 686841175 720501040 962040447 946007505 985094541 488413640 861308598 834284451 915177105 813746812 907137606 507267432 761801874 444321325 971250398 329705929 909707605 387285462 691111652 86735004 929572045 529768294 707525583 385140126 470768663 25098322 530721982 757815559 852681963 498590875 992328364 917421500 980824459 387516798 879221413 73557484 403154323 493933569 697318675 896333618 952195862 159860008 693081895 201331590 384320130 447667360 955880867 471376796 615136318 371132431 731719689 785047067 805038757 647399589 752685754 514094007 582197071 994163487 994715263 307982703 608282750 84346731 419132289 634456372 907452289 41637786 165782535 891101827 989703192 49469984 818469673 377843228 450292508 757750240 827217100 37893729 613551493 872274445 912474652 574454114 698144506 429419686 943249596 594152503 837362901 79636808 919162609 875636602 952483412 66317574 468573568 612897949 852711478 70848882 998527203 694267869 884823384 563652812 624138655 9784798 126952853 629013568 740857812 516197448 586368351 568149581 985887653 396691109 447426503 793099663 983880574 409219493 765215018 142282531 270773539 441077969 628320526 539908669 927763387 96322398 326623319 89332726 184104878 146553707 175695222 788763811 869667358 358164118 495391642 859403764 957699497 743344004 883827150 790612986 945700820 566976061 597930935 144452951 542868842 972541397 976922044 13506980 925536277 644831396 985609236 89281352 881429740 650906237 764927380 631319525 757030145 389934716 558964800 856258381 934855244 233791571 573582525 664035044 803656986 142856147 238576994 474801080 566931344 792534113 910826148 418634297 633543835 196989324 747826972 627788830 889182651 286004176 976203850 101373189 233389579 988567555 994001826 836129917 995158298 37446066 126316350 821769385 977405580 810162431 828449352 809352445 842154050 520891188 905234017 128541457 832065643 782805180 818151150 998345900 998990245 424187618 895259123 565814617 889863404 820797989 984266092 697852176 915477421 908338201 986752010 828286341 864503590 15340326 238209849 198725650 630751470 596594146 710622533 614138445 899233341 449736252 608282112 740431414 986071364 991352298 996010278 236341 185222869 746440468 759271581 980973267 996120005 475150721 712653063 664908777 930676955 648073540 892175795 10061686 327969632 616290360 675694599 871761287 966851958 167352098 889214324 223684111 295638109 22312562 295558343 123562755 373453168 391839647 918155254 745774172 964389604 310571601 681228397 126088985 749267377 349871369 632074468 588879500 779847473 298837032 717967620 635419504 902492958 291585242 392537380 382055142 573134418 779437514 966499586 746382137 829843808 63142330 299327434 213186722 619556408 827157242 835145517 670423190 727145243 746508078 753940784 463999137 982784903 971455773 995522268 521911312 866404958 455635548 745299306 531640740 785999399 832133484 891469967 554640886 987018967 115921214 495226582 561434531 805863717 36377519 816808004 889092059 921833915 187792181 544188157 920049350 967550498 301746681 433218612 823868999 963572465 69098584 166595356 887378541 931648554 165674764 877668530 271466189 334216648 45619972 320352685 898584587 944193911 311057290 311933661 764051548 848164004 802307722 866621608 465408447 923057583 437743974 590516420 640436054 987095087 390720186 414701905 14461764 446687652 281599478 283182751 275897794 429410686 334660827 700161881 91411301 556989230 461342895 830561126 596595652 671096620 834280166 862118540 538937946 946940130 515252215 807167195 613189344 636313960 959774992 963490716 27477638 826611901 500160946 680558562 397125004 413615203 133874558 323583155 653616364 853420207 622397993 847263580 727681692 994902804 692070713 892682386 236518125 724696193 420810363 515850184 114759476 747262531 360363325 410364465 304050611 492723721 443353147 547069443 301118626 535535443 539482960 627919080 342149258 562087424 282020707 667179925 902917623 948224623 108668579 414864332 421676649 546132855 739133839 828621669 198618633 587868214 852808408 963783036 625714176 644288904 672740488 727617338 199675690 208517690 292163465 672158930 522362676 945385487 73549909 901337371 624404317 953104812 218294990 611128501 188124437 480194899 721232303 768882296 523286263 523568115 166114612 889246201 184098593 833337219 179179935 678586281 750171587 926156340 152189945 705436598 21178494 84482292 976962721 993677409 793472492 966138427 594591008 735591202 646821011 691878961 9861982 829022411 787348875 876370934 667270689 968007285 433843672 824989042 388721206 990803080 768577851 778636790 902561198 924575110 729838595 856525874 48535481 866568590 452421409 672249174 811991644 819931740 172570276 469151310 414913636 458229412 523728970 606096933 7563827 277555049 236999659 918121086 724083558 747628738 860957604 953491950 615346319 806468080 254870875 792410021 833934613 923164739 302315987 538197439 311663887 426591124 675145872 870272725 349820962 544480328 211333246 613001482 827530060 883224553 879872367 903296258 617745720 726515353 638476520 762539406 839407884 868675852 26464373 837022491 674919471 727590382 404620582 977831364 988034796 989043147 702202090 726633724 270770352 419628749 305463410 656978389 506150135 948777098 727393587 798572265 366160270 735140531 227778096 432343165 270194030 570765004 716065439 886765293 36435204 180793986 221239152 885187079 332848275 496937882 524754846 811610066 295172005 669263190 527365416 693963663 164335700 393155585 657747533 966248530 447449590 830185753 728143896 953730484 948810313 987231005 659777080 810588706 659827773 740817908 676668555 695653383 112873885 341985898 677576156 929454510 129786032 594809970 412243258 660630595 602793308 777051120 211165377 355187757 540709476 834203140 610260908 782453542 311779389 789803540 99360858 614617131 738073328 935842263 557345096 692065827 974746043 980755017 176643911 557893376 496887317 973197967 602246711 782817471 428608072 710002251 489995427 623347023 303749604 466597525 124751345 261163680 535093559 989625305 766851364 985965764 372308075 519418252 444734681 941253137 730072156 928975065 788701502 835733023 917360278 919245102 19982730 496970523 666531359 928571855 714645678 853050844 373698288 776324582 744375462 788900626 477019618 636902006 542126162 753333058 981194456 991500880 47492228 141598686 405310990 606377411 828202930 914355916 166466699 315598119 58009553 895068617 910477496 925543858 726742036 870383189 379595015 565396347 353890446 724083035 385831190 719232169 376209334 960001258 500734545 798116457 83814160 281963479 263649404 505839244 351928640 505681910 376663363 628077154 444382983 664202924 977851104 981057781 475774308 990111425 449885093 968261236 169382176 550191082 790184517 929765097 46003008 829934472 780112053 922486660 620541551 642627547 584712383 646228400 86682756 332809908 796780691 842747967 520561944 746408368 160512279 926470749 819978270 969021094 363638062 426998427 335788881 688897035 53702790 136032908 938599943 956290834 902005035 993455006 282542022 389850420 935913459 960740570 316701891 652273222 968410709 981128500 480014773 651840647 211553331 641080029 564638187 901044854 998202079 998419461 348647933 468513804 130347811 312748915 668263980 668658926 32430662 652887287 187851615 698296714 176046942 599710845 435476071 501934565 226575338 758063370 402963767 531948242 224774244 872054518 238149933 762587139 782792755 909745123 87189601 678899138 122864886 805863458 90203427 777930669 334083799 895239430 122575068 831467303 15683671 624651505 617076114 901408092 909182470 945856278 259329178 697870735 915769250 935602179 90155734 912837380 1433107 809969921 97578895 487734620 887103008 890838105 484473666 918964595 222807353 223367912 899215457 924772303 483741289 970075319 39584511 47708863 757002201 899658023 101982500 681420922 795215181 930248347 318958916 857960455 863628223 948534599 546704008 571455729 921749343 956819773 459638439 873359394 279396894 347845203 921621657 932719373 559712684 984312292 8155149 263503319 242117922 738408731 335615342 425968133 451746210 560161268 436811204 603526441 892100195 921553639 881879644 947493289 641485180 706984534 583846809 708251694 749929060 832184832 347444458 885919836 928216400 972312578 751393523 922745751 952621323 959677344 194326557 582782918 300774044 315970774 733866454 883653915 52310358 435721618 908958996 952428295 843114947 918952258 300573215 761931538 86932045 935098705 403311041 680023343 515600493 899819991 986568825 992960442 323017004 829197658 501069670 847100036 314784855 995664163 711515602 922177428 586188195 668954526 258116591 404472166 124970724 129164174 690897655 938789630 650746936 939729031 981236327 984254750 474755082 532457619 35898959 277222211 13708917 245767870 592684737 797634988 438388807 923430271 230725116 992399141 330879247 363718283 167581759 478273627 409335090 787576237 190969124 812219111 461991340 748854743 978967363 983868433 122793133 391370870 406028704 695192182 116612844 358978206 250925747 801838979 432840309 965017417 294685837 536256176 812432975 862931017 126094470 757757453 470912486 642744409 558653432 625595779 680167232 782978721 563125354 737751680 211071408 404035543 227632819 640938710 951726469 958956833 145014411 269556376 471376715 893625019 54963296 433843791 796677376 907343864 562553814 768629234 450711818 697153380 908568930 925463245 286695496 395462120 992373040 995422918 830940869 872227569 372653990 526679091 678153312 760863606 589534465 994557254 836731100 867443659 364364570 806145753 691046510 697998573 349563083 722724677 404931189 667834447 994509429 995885615 711337821 974131600 129121298 586093981 912244588 976870087 669186131 830884216 400027242 445490677 79533998 361321003 797979849 898823459 381911979 994174681 360253950 846014719 46316626 94793067 533435225 999152955 539565449 681925096 724111589 815725743 236177970 611986431 934513576 994581378 497527484 910077353 807818506 993434787 780538594 824514611 91605476 566267662 665373587 904207579 102036023 307688708 738406236 850570509 323613446 971266833 42941423 846025944 42145087 369662703 900201517 912285675 469484109 548039388 510315697 688623830 307919851 500081719 843272575 914569252 192996242 347511589 803152730 995846391 800274548 979116233 12424230 70096233 446394204 774267276 528056206 919424413 13470155 928596650 409484666 566347062 303289628 939283056 351042632 707519666 146758872 597645015 598689240 782957400 165192516 411884121 744788481 865231418 993904506 994153486 490556359 632633246 766043659 909191450 378426132 741997168 440488041 850927746 483090345 726772575 569718092 794476413 792638780 962831887 757801781 931874385 666175600 980420914 25639324 652715710 237970067 457735191 696583278 877658583 777486776 977681923 465078992 959990257 371945378 421463436 539287517 601723115 611642431 761642105 603203327 665582348 521880287 894766350 635444832 954037029 500919811 807241470 150963284 335359525 814248171 842994169 870942161 980546992 404927478 969965576 511129040 892380610 921550510 941828615 107146201 776783177 870075474 953440984 438481410 933162878 961172235 982961391 176990930 336818637 59231319 607083065 441710589 762437312 971099853 976804959 486582491 650620563 912622965 956199127 433545355 834994063 28368831 717276151 571971131 757340118 566002806 660025482 932067508 933130171 835600881 975556561 873303800 917167201 69310024 466801081 267063238 447279798 582982550 615823971 596333592 901171178 700073251 920838179 100748807 335014809 170208634 850281012 512407085 575728272 237813015 488842854 143184609 673381953 552087947 673028575 509937390 765840710 121024894 149162170 74789297 224051070 491220363 814421838 690822762 756851263 599757972 842735128 140040727 375242827 201972360 666059843 389900545 783117829 611151604 680550046 164735036 496648898 776653221 891287574 484346346 660662168 222554639 716594095 943649981 979229176 128949928 253156795 708098915 901798201 682098507 914815333 923973117 960619685 831626118 946486090 448109100 470240737 684555516 796286678 481206958 843741543 805589667 850182872 537913708 551656832 107460510 688937758 991705441 994960018 240276569 381785668 545236778 579864411 308395868 962295032 721892910 824836479 574927357 743723711 740177423 902530296 360152198 979707255 200869092 481493457 1876306 378963902 499082328 596169903 257763033 499266886 375854150 567101051 707042933 863716774 782556640 994027790 804618639 843419219 543266092 604274401 179634422 905383806 803892785 842522377 396248189 641278094 517355552 932013875 335637772 598335355 415030559 909969509 728911409 760010566 951429676 960494148 954664418 961925363 894956435 983438378 129874520 986464589 357226870 941156130 732039420 973588462 716835227 955598083 818520811 839081076 347879956 606793942 111880005 729492087 333538262 783739318 294055650 795346805 104676814 259308044 102168658 282273334 169997276 212259594 735597721 836670152 437981854 853573532 356071993 583845328 78080367 661519304 888152609 977112037 960064621 997834040 418617290 783567410 442087325 624744889 340500382 730152232 501223653 775076918 834608422 998334856 101571994 172248794 11277525 489542841 722465681 897667077 780757742 889149880 226724143 914147822 838865 958205748 637851176 813631210 303499724 510904376 641508295 664681487 222665312 979235191 606968781 721853449 70507632 568452281 551329796 595877745 842846778 939363428 139789908 722203996 145952347 826116881 874206882 897293219 675452605 860477965 578460781 860770942 794485468 865821735 631203219 710770638 128485627 864350616 644863485 948097655 32948041 930473587 292556131 684896890 868757356 959988742 304282390 367254595 742751285 894240946 569862129 714850749 623295724 851445151 779375893 910138523 819789650 832962852 862176514 994319966 847360662 978937371 316917568 931055796 714401874 735777389 429671056 503056939 604599734 808141135 810924644 862688575 889468822 917436360 248906497 624496427 889727157 977108677 858120629 970129651 714637960 842700968 361139530 780484033 646715453 979307264 532880566 610693491 28881017 452227371 394750873 662091169 670283096 790220578 78586338 573392310 867155105 906812388 5809428 306328220 569961447 984140510 2210714 436665247 98732100 409491831 103437536 340809500 308446278 680977255 131999594 385567022 266088514 963540292 939496902 981973952 388346984 794753799 638219173 656650068 625389214 741956456 735162077 992124572 546220473 763503608 135605402 457011282 384474239 810704232 150671916 290311493 498186560 887470767 321060692 744491767 178857456 547708728 896867401 982539654 716359274 922448617 947561358 948520161 66585411 741903949 792392928 792809162 204109716 739477795 330126931 434880016 440050157 780467619 289024004 719860484 675433258 867533235 228587124 989512151 40827287 423699157 205595496 403524737 620973338 954534231 734047953 890544594 469143296 870002501 959472595 994402007 892261283 938745970 378008240 542271389 788308503 788516556 256656869 658473206 363362814 800842914 515939648 812376840 524766722 544644335 121973400 689471002 919551118 950608900 349007899 511175548 299729355 790809328 648342046 858749494 792976205 892124778 814120608 933996029 412679780 940461132 858086041 974873824 350131544 632680195 324200371 886263109 917223026 999261088 338686257 723934951 86119314 223011715 793013931 856414612 490059385 899920675 452510410 956578176 782565995 907742513 742766528 775151535 680582995 687972087 458094770 845087937 685103017 780330756 650632593 896960940 423801891 659213132 830895923 884746587 861744716 871968355 870990016 974851427 900021633 918004468 867941391 917031158 418247403 616113660 215924680 697976997 707950509 848359572 986622734 999195938 292831412 756554991 375615923 676401125 39069877 848058751 90584254 486273857 871782117 924319301 110746446 246506674 669638421 816988268 606135500 735923500 536862043 914192159 567231185 681524771 981616804 997348787 345966696 357439099 475966817 879532730 138402469 510076587 671040582 871035155 442745477 612763774 562744908 777824374 747827379 932252772 253423497 858738210 815470110 823406234 10615742 337541522 21491560 189499100 579476880 786106233 448892811 609199459 178496238 365983714 210369121 920307702 739149661 781347804 1791292 341656781 414913459 854706649 248036558 375830057 976728227 990368540 708557482 987352947 2054855 747098527 51092279 820834554 917477571 962266855 98885700 306986496 5176205 47831029 257524155 384208239 626410176 779941792 471953094 666451428 273523173 852726242 286735550 963943895 824351006 841322494 874558750 923741763 765192248 805026172 515613033 791732179 119034097 976965945 663774566 759470419 74739287 963549594 238472171 649227998 702453311 749079035 321658436 892446254 286209962 618625932 102404645 309492064 420785129 960906181 449761641 838745099 84323900 273975500 761371486 876602614 25048581 181562208 694008608 872703474 873628067 946152463 639332827 805914212 589324087 699345913 303498849 790399289 690533846 953034231 67976129 940436557 696746916 842649743 26155206 206609925 787067613 825381595 50231087 112669861 535198142 996818485 433665433 555609650 265314109 623665802 566519208 683678958 867492581 923669429 278287528 736304956 535520596 621766394 529365476 790597829 123155285 473570204 641933141 750462718 626791474 939792703 176434588 638778589 501427767 582613511 393596048 894896390 615273385 624931320 981759485 998365005 725246193 864314287 269874486 884658401 969233395 978855040 250835474 613131302 879345397 993895404 212081348 603925965 970317480 992220336 106589407 771995258 625991384 693111222 508373232 543428769 953148461 997395472 91174405 575683955 328176297 350414843 426612097 910484738 378350392 604493903 741156488 854027989 370377491 735445084 151365608 325960894 532253433 583615137 89003576 761636252 931604602 953836294 405807949 459806136 158737935 950316355 216978656 334844129 18321167 929457219 263402434 662514838 753249618 906102384 480339793 780934701 246847924 831309808 550915912 700621156 56522678 518083293 792929248 941790015 681460930 938267532 11692743 316761769 361915414 792405562 101623965 448638821 581322999 778609463 308575549 738338858 583807730 781419375 625989056 897537493 492627106 917751201 695682784 977165462 811038587 879346656 626107491 696584424 398132716 970211453 498839679 634346686 255551024 685750539 680713761 869098238 806398706 851519835 417054746 704737247 339354137 441833299 562989528 870801454 589764885 826797117 334225480 714744546 88010541 887202830 902470814 946765438 249702287 713103195 202175867 570672364 117949484 811262253 483690862 826540484 394686629 765105715 371078023 659227654 309979305 736714365 95359746 809417437 108772542 461428784 104483957 576032491 190944647 690436068 211560347 383264854 726219633 941198733 935526556 998348438 152730456 979649415 97349436 285710286 175230602 883013579 593994140 602886943 375853023 869646012 606990806 827675526 360527843 594130559 638669841 728323426 974525228 994016367 567466427 644820877 236461917 278728382 66813098 71120970 400709059 985556238 17479535 720444989 30434888 764981936 901906449 917375135 505918949 704057823 530640698 871612756 145047788 471525646 358959919 666202781 526395700 550186226 370878351 702194994 691403815 882820532 614942050 947984234 147957448 486218273 401328797 663622663 998784156 999249180 900917319 901270387 931153275 977207786 134805628 323201031 793571129 888333248 366782424 639029898 664079711 888392931 654685014 865121766 694059314 702805256 244180556 750913070 444480886 871363172 927631818 994476923 837288355 984633304 481223362 642609608 325613322 827032655 243444190 567713512 296398255 713139126 919183031 935699164 304180310 325377413 549204798 683244268 345834633 914086954 165518481 995175709 735937324 780753806 38649134 169505354 927572265 962206737 91488432 813559773 131066064 419692695 364642772 757049492 435573937 717584752 812122718 871767416 934183168 981083046 422087064 867382956 670747477 997336629 158010710 890917245 185059109 185809077 99627255 644096990 79345965 287846946 246787105 683941966 328874361 573417785 967431243 981839389 203343093 403561649 297500992 473482095 82229792 366931139 232947457 341141831 620005276 828799794 964999498 975949041 595978052 756902140 739855256 794010274 92528700 964299349 459469161 592414847 141959153 487395767 998749926 998758165 903254678 971159999 843717360 867970809 847961164 858242049 225262860 946099972 271662630 906493511 328842717 447759760 253499921 857961447 894084081 894278543 876348191 894378775 748234710 904192587 786983247 858778498 373136286 988619687 947718766 968633657 825013739 986331791 903734149 999143224 540499227 637716165 465703824 868598511 521421621 571660282 117456556 578968826 302570444 665846932 808637783 828561836 517017741 688798062 657414514 799341783 220366432 927966877 196190929 614951756 303056584 338103421 228278451 362697458 322213136 895966218 741103698 762851049 261486340 747564222 339511861 524110385 687730967 785648561 417320192 825201049 546766076 793849232 53826652 230175764 533553374 798807790 635182669 806091871 852669422 891659933 505681719 644860804 408276730 758990518 338482689 407877289 370150453 941664950 281280740 351586399 172954370 989717638 885282218 933710774 330780489 424374226 268732777 564792604 746999668 914197984 295194949 301550291 819867831 820630899 270453036 535769392 499351811 773060459 668440001 912581729 957358346 970150656 694375372 994440166 615438907 633418582 439718047 838102479 469564084 769627554 847780550 894793538 765133800 825460008 45856672 109709750 741200648 748478231 782441999 936169410 522575807 910969766 483679338 908387381 297544493 621388764 620497307 814762591 162303217 461478891 355215938 733251259 248097004 934200455 395932842 730604664 534670497 571110932 35133837 200949936 666700514 670872261 599642218 654067233 401897111 589469345 717860573 993217658 936911620 942757428 458740902 639422464 527392966 701324617 626933189 657609466 353900110 419003846 484634375 734171010 336721502 787122962 435608101 764025571 910552808 963353878 153744735 874519601 110628481 271888584 56481078 226799185 527726584 990446754 504537082 618972459 508065019 862682913 236353380 925620826 180485055 618179445 442191858 956380399 148900462 329398980 57629894 399501426 756643266 956022077 476866377 588681387 446227218 717464619 605665396 723565427 747755684 756771585 837328385 957081751 809917495 899455992 516077685 789043233 358144891 928516162 238691339 372120853 453382089 798829574 971377703 979791834 459591125 640671064 882140723 897237378 369006653 719728592 895877043 968412941 867465367 869215620 242939678 665807202 289730070 562212314 732587057 982751365 753468886 858853603 356201175 362149627 838958405 968100878 381590372 650576449 597077665 876077095 716942203 961823788 342360503 816864294 112529871 574642103 889038997 973300671 478370064 957269314 644014878 719627280 887473061 933044815 964711431 977702057 768018069 844941123 717066392 807973172 167268725 398137696 657448573 974295793 323554170 686995630 851787864 936478414 75230562 560352928 430058959 948892687 156657240 643282115 203153444 974850765 208535493 457013837 635775739 690609262 592993372 669934377 46784695 469130047 646372729 892266317 58346764 971752782 9592718 104037168 527858638 927219642 272889525 359570150 123032253 475456374 772613844 870472112 591913679 785552686 631785114 945041103 576125131 859913843 332857965 613928115 223716744 387092262 410534696 780530370 182725285 939853938 831635059 999175514 892991722 958566484 899564832 929305828 953112597 997045884 363534610 432369635 222241033 838692643 972187735 985820071 332334956 721021203 478466708 588278351 247354597 982813738 179834200 895544657 523096818 933760407 853887152 955609292 619374537 757562251 912640168 918026660 392484466 915809877 253440698 589242726 74873171 617248039 35017853 41810423 327101280 576145986 69409690 363760882 181992180 676135921 785504470 873517174 306207803 841510267 28793868 515793415 544091067 975272166 858872380 963860284 219271401 939417245 160879059 631453225 402755118 842419900 454853041 848112157 785031368 827940229 169514634 426623647 112528313 810034067 955904624 986403025 42084311 119620857 210021211 481792887 210859142 700607303 698418810 731133691 297637103 714526029 532305720 812047774 253218578 730327320 492028683 574861808 131477637 263717515 166301331 207188280 899402372 983748835 504070314 635194711 891193686 915052460 678972564 880223594 262142247 320863682 767325493 992345431 26676229 834285431 639488260 699524974 974007292 996018194 882878385 969810077 125810584 428282934 867567901 989258793 674993864 690405015 507879556 800764790 457589745 965690105 558510973 732258027 579407162 912994040 733860582 765506173 856517676 997443943 861243371 924342506 734409305 986440360 882608356 959300028 142760323 474718259 495700494 498858866 160949842 165899206 892142849 960368611 187648227 254512644 529653842 860573829 856978284 956390589 86374309 921114226 111852807 952293671 514658626 609588286 77261959 345280388 226216171 323289188 333051437 792786924 539985729 755092171 178332349 671791518 464162616 498251663 801332141 994717906 410248668 602161541 848449104 943943975 910102272 930447583 706648757 909207212 207774798 332579209 273100311 964548083 595831310 906934849 210394139 627501888 802839314 845472068 715902854 993456156 327719146 414630081 960154459 967016298 858411894 988301559 867316540 989169871 733354226 978537860 311955109 809447491 748916657 802495153 993542982 998870945 629981936 653617842 91227100 680805499 766676903 988002881 442418028 994722292 368909083 480102511 885230805 907328927 211102701 318797122 309012746 990014898 165448744 303533102 636526991 693285100 576772634 838252144 702365175 995099581 573193489 623223195 630768174 805390969 993216294 997863383 205877347 916195304 807106852 824292296 213698688 843436087 523375364 588252950 253336017 848906406 482977136 976449200 476686839 809827802 726498436 899382470 298409743 994161932 91598299 417164648 332669657 435002608 967657587 994725206 293829907 707013222 118491193 724845766 766022716 899714025 604130562 668112828 966549992 979265242 474620079 999317472 434778067 568637963 642262165 841795760 951444330 957018411 38431520 596041571 313492611 824895730 857873029 877201027 232477045 395645469 649041542 878405544 613936389 964794020 922465450 951053615 738922552 947189865 103710875 585153460 216926663 579372297 505971044 988615832 264874927 704831562 727023169 771619480 669792086 671922242 213781057 637907872 561178456 621576912 360613445 837968686 593861713 863611572 495680614 579836343 733299328 913844880 135250408 893418462 897385028 948645809 549629145 786973544 261445151 837337533 918128183 969545877 561421289 584583817 647921838 705260903 365952686 454986797 626625560 837331247 855599625 908710853 240643549 418255014 318671329 913573001 72817752 674747783 892548670 962298900 596235789 937179310 283391691 286245087 217116199 929636163 415611523 927899986 174709290 692763463 69859815 665033509 738507804 780668664 776909137 995237993 230003754 973515314 447622191 844985662 474653314 771467454 11001983 849613536 422216404 690154669 852578930 922844637 160599596 250868432 228754970 926811964 814332182 880167372 165743764 714438132 977937153 993226009 704031906 709619241 425432394 741671260 539965305 543830713 227897734 826826846 638079893 800223370 367539940 445319863 521500898 893322225 363578806 776597200 166781309 472362586 859674850 879563937 528107403 941086955 861167646 892045741 584833415 799412722 769191384 886946944 770033995 981815235 175221810 922206161 177689391 763268151 183284877 603016436 327255916 825182966 52867655 429440745 335305971 922902312 783184360 986173780 272823459 447475050 466404244 588238204 919496307 958905022 719749283 883973103 603769468 693994752 887737741 996048066 279515865 335760350 438396440 476017432 33503165 370019922 447774337 823781375 489891734 841474283 987416842 993790542 601196960 948838751 716678518 859437194 969694718 981878859 725480526 936239259 434959039 983659926 965073750 969997094 775451487 879720858 57082580 389946287 196637872 229484841 642740809 734269998 131229196 664852855 759511013 921750990 159655928 216823547 54875674 667931573 207929150 562951177 711467241 830781890 905447306 915712345 818095796 887277119 741901618 852337980 509400363 862892290 342909329 705368551 508775502 665968973 917384382 983712063 934170424 980332185 979766663 982101328 398672235 578851428 432730583 562635180 197329031 306336065 236220500 626903557 888329811 928498858 863849261 867781887 69572041 676601038 560850021 892815733 533303350 984720002 240894698 626541283 15061457 247770134 694529398 961494534 604507111 622033350 676221088 830651577 298033920 542865490 914096445 968324590 137228592 739620628 546816204 596960950 552912632 553852962 675771403 938483247 21329232 947387552 50120792 830262161 281423078 612095015 178631610 787200565 882728327 905714511 476338149 899099957 595218942 922029008 880392670 934466483 722065891 938466532 270493250 517323504 376082869 410959282 905689088 999154565 183706392 366555654 508235464 695218873 696137174 789548458 505260005 627316757 375421877 833638142 16245386 427873683 153857200 836388061 572938694 705502411 218131113 693899946 859257474 861541972 518019765 917905428 969142632 980799293 92224236 119369783 303715474 922493676 359027495 793042169 964686980 967990568 254163250 684700334 316785372 526944356 122114378 454408543 140117248 790126705 937449898 991630829 416000091 586460838 538110818 675297609 285847008 847966945 69624780 422107176 964404041 990057140 419879256 622927411 350248359 501183365 627281876 880357299 417264048 466203063 211274416 501557669 590846557 945789889 583390156 696382235 628809530 713464061 302325550 735924059 146417577 277572767 698831826 992119431 865594240 932201470 768195779 903457681 62264967 243009127 399271566 728812198 453576161 846097575 907668678 986218378 733527346 842942656 937802549 949882185 845217580 942001084 385934665 399625912 636267899 954958012 969517670 993960283 553483197 859483576 949724345 999157397 41436558 744640952 922478401 993657972 753795110 935634912 409508764 848336853 654559022 935531152 455128556 710790890 394465536 784480096 864427545 942456188 508417809 909352292 679847392 839520907 811717806 871519690 815651845 936651050 139384603 156378101 307465301 769074781 464473949 547752885 23423381 538037477 707916397 855520534 958096127 960414383 452425511 958908585 50059787 706424285 917611456 981566199 447371692 880962215 525892164 951418483 645823273 756051170 859478973 981306958 266494099 949017914 652323715 945949314 234138312 285408237 135975380 612823993 302170649 765384433 917825630 928409927 50168175 951649800 850883263 857490429 558296568 711232551 478569434 764335827 22927247 585569500 1110873 906345655 594090288 825793483 563042693 568632693 452880391 998865791 106528697 520333295 542432902 774065350 923470870 941347269 9004759 127183026 836224138 942418588 772713880 919572672 292071938 363483122 958549311 975159846 911949941 980981463 707151024 786453042 705930943 941364727 244229530 363042378 364061533 800554002 929381039 951167155 825425489 983918287 763471009 870564420 98451276 819596451 727269761 964490800 706257567 920845307 52103840 379660870 336246814 813553305 25388475 949992860 544939230 628401602 494217869 637826773 541192222 619916300 442350204 659305090 131628364 394349998 466646675 513444874 917042797 975507706 62074492 275006335 935616615 963330370 175550091 206215455 111715672 755430074 394921207 481648022 846179382 986891207 507525927 713825662 407963836 888136224 790185860 810717669 503730510 918100698 503177669 698713710 312351918 913278023 781857278 849465962 666968504 992316543 572361973 987391499 392101855 673799085 614490300 929156920 949947219 976613568 685696457 765063293 689191249 727098905 164233342 568385834 450957677 849522093 189985079 680161367 91177960 872635511 979508452 992453122 756600134 838909476 28271567 434627901 752116658 924344984 611028521 958159004 88368773 968504537 766957694 916867763 531059142 716197814 314470570 597811039 436787548 818370847 107506280 861282179 97559856 497134359 97871196 131170695 873040463 879642790 640363574 848029786 58040214 472054534 36688732 624411606 957675412 971119487 73752759 917779432 911163447 916050461 752165853 885187987 377950228 904660680 596791938 705330314 347493371 471360622 494863341 847444523 169556603 521590895 863388995 867075180 210980862 517833822 850250724 953482668 248243835 521530208 255420633 880820871 114427342 830637862 497909981 702218680 146472492 721956908 321148434 628313759 559691363 811388309 132879418 684413897 733937869 790099101 153332421 480168178 48720534 913282628 479127874 947667707 477894909 568935477 683850979 926757719 156414415 509071509 1882734 608760021 6194586 908809943 936370164 955722406 251375543 960278858 671179907 980456559 602892246 841959939 172194750 461169674 403621207 597658626 602473564 607196318 39546496 424207358 480905009 731303157 530802224 691496596 352982650 875536066 434035500 987435605 110956995 434495127 41450364 705552433 753117185 839686735 525171703 905089232 134082137 646138000 436310305 669076428 828752295 829272737 664160390 867974585 974177110 978616018 99559605 443829553 149342883 860653223 376551251 926184562 386842795 722997506 575868843 822065770 593675204 916921451 408732816 752471267 763079272 935447609 298131147 632863201 865692623 901524155 19261180 933708442 24209860 978152152 10276868 947418991 344351855 647299830 25640175 355694358 265506926 632651935 941853938 943102233 935717004 945784504 42640409 320670120 566546787 881264959 289263567 672667841 176042934 869487843 790472602 867318604 450234844 867500983 52383106 579362416 849104588 994183890 742670827 929220297 327770512 693614045 34084033 165113802 41458352 788229072 204697238 403996151 695750324 749694808 933130492 935117243 750802018 771334642 984763152 990416997 248347564 605847010 799061806 821180201 735066830 762654124 550730936 632665463 29613644 757844211 601390152 918082211 57169760 558716326 580812263 604044437 69478064 394214541 200585452 850754564 452036778 571586535 260891735 696576761 95436421 724690455 169261303 343874330 228784319 949916670 209332619 847623682 428408142 767810962 592659149 758096983 749736188 940670591 135093906 898935858 982185172 996759440 948080005 987742156 925849689 928530200 380681589 470449968 313564359 606011159 117675556 858191667 437987744 907889644 67650210 314894606 995602966 996384945 974242017 993041972 942994113 998740819 666230734 860493842 442528090 900261496 888086553 958006397 111438378 136450285 535652246 778124455 575112938 853704714 868308607 881006376 53873472 581909611 152188379 188291796 4171929 726334001 847245708 892225605 85353456 944618174 785327664 806493444 901858172 965981369 52530515 285551509 903357452 925463058 418313699 647900600 497788584 877711036 889977457 926175428 323752704 638040376 89164187 885172551 179765448 934994519 107766227 284888297 683790444 723610743 146979859 339715209 692326216 923626099 308632360 399148179 84881987 823664465 639117213 916913478 254034853 621238291 916060058 953345589 365692264 990466107 677529238 962509103 899835349 942698684 703329895 940843757 344174090 530000662 614096289 708481012 503013103 514595534 10265693 522475051 645142610 812815412 774632927 928625847 722319404 873536652 829241649 906590993 734226821 874581312 118714915 900845474 103879863 207789547 917022248 918901177 202854893 847741968 577338277 881729317 308350875 815549949 158616095 324473542 482699696 810250410 413922920 645382701 811038010 974381450 330009968 778562631 139624338 792782937 438166612 582879998 335970991 536346862 29836556 852868847 793943535 829449642 274335169 377020202 14901396 428073872 818798687 905748281 267826516 798178290 969386707 997972367 187556343 350588644 120072244 954533786 515029874 678571879 494593883 586111055 566675643 920706754 121966739 337655923 712748318 839990166 311482787 333645641 304999911 390730719 574842703 994667159 952382931 972070949 528517411 600838753 488083337 886550806 692600254 791215159 219656350 975673660 797663977 864529834 727573573 747061743 122671071 554136892 973777244 998671523 330171253 677049464 508979524 987427101 619903624 863317728 369595376 523209323 86630640 760738967 829087422 985051657 317788573 935712100 101169798 628118258 741845916 745558804 267536238 927701506 967826200 990701171 559485620 781582117 542911186 580880879 485378429 620916079 409350560 967515612 655436667 657608959 519364236 667561603 428837011 978417916 193649602 900231520 246112821 687104684 245564159 370615386 336734183 878046310 737399056 874483260 514400481 543413168 276996086 698833674 283748045 976986340 115824987 395661293 339717609 915038131 551430481 872388146 927862648 953964078 361517919 805332009 328252825 692881564 441040041 575017955 373189986 828966002 795227120 858653115 516404745 657610810 747633549 757177435 781871175 988163152 180282590 504587611 414415360 770267319 490807453 693526232 642044115 786617264 99384780 816753876 235508306 711966822 254331172 381881506 646460647 987443562 191157490 567757710 275354598 355053693 791613969 965748734 438490776 507577359 334115448 533336712 201619157 482347789 431419070 690020395 55089357 614215839 463053711 559201103 259959207 515417599 518376813 688253418 483414624 676697568 111685544 736015796 617311968 649952422 87021634 219007711 695288847 988003577 391240478 600555262 730028866 910066655 86060239 119179436 177177916 383352074 619033829 954186416 509075832 617331930 681222212 792660006 179823694 307242767 866150873 875197541 743756316 838455726 845430965 956519442 607017174 798878126 911332283 957590123 919248225 989212802 667604258 841736250 340995969 539660116 324876662 645965450 416801414 540987423 135280800 545519160 843166752 968841811 173359571 254636904 77253232 899953797 421370392 968495310 143757316 310312088 827476009 862762770 923488860 992695358 424836547 792642460 734236603 770949694 788253365 870907133 947239199 981884472 914307648 975285618 890568703 902749041 608476562 753278223 610294476 646634541 67898735 151456940 967112307 993401492 820408701 883535647 581585302 653013484 532078925 671342203 675535285 736782914 953732473 997288836 585998973 802396172 878945663 883133232 180536317 539328974 587639030 626909056 325103641 726449110 501691851 874440137 840139670 926883159 817162892 971903643 291963085 400943428 948832453 970317369 631618994 794562164 867033555 981703493 185950839 896493499 707668367 849418945 883771543 941865462 316624339 813783496 322275588 953782319 240900374 773201490 839220584 852300500 505884610 586393186 920432551 965833799 428539625 541040594 59162627 594393926 649591314 791247654 903985334 982883711 985066797 987513304 164677749 208002079 37725618 485971179 654404604 859966351 453780084 963035407 17913282 904840105 329188135 910523738 610320758 763349029 26546753 346847725 261605596 475279270 231272696 238240694 148413917 375843952 704009381 729617837 334700569 411532376 537794945 913094471 226089359 468623710 673359157 823600189 509287329 829509441 573070086 776503092 61970848 623236720 887241116 979491265 91080244 924652035 407990244 736409259 896934292 984921549 78503883 104513310 371556013 738402627 920745019 983855706 198345298 428949876 366671684 735627399 105651358 956352655 471508877 728474353 837864252 942173140 48677127 918170294 852846666 964578604 931305156 975414602 341398783 722969499 265617491 639324775 427946827 764760622 205607691 753800153 614080505 657487364 447731432 886652520 516972069 825525793 514877501 944567685 727381564 859085129 366298079 559502594 405972723 621780182 289186866 351116824 189019117 234202084 109867479 917189298 267169984 648379116 218774595 849979679 651160899 676350578 631341812 856630012 424050500 492560414 566217698 994033295 591957311 988664087 718945154 897979631 842473098 851085516 161166501 555380069 237912878 391499580 16870301 99439304 190192752 999382469 431905531 861515746 915379788 991071594 600610935 771299535 723428251 748968525 98822606 726186142 952710650 970723953 369813817 908097973 254382766 479800418 992096812 996864064 826414582 944636066 446338843 721944999 288836802 611359158 789685286 925312180 520071700 993881723 550423240 770448120 67745546 495651385 117499251 728630578 885648711 991364574 842039703 905585687 117473525 613509212 802444991 951651177 745948759 857851582 939373863 996890971 964110233 980910497 744932842 860288944 188522150 963554988 193209559 767506074 54105823 498317112 43645781 781738053 656899503 948882730 518286247 575698428 413405704 679301891 636767349 644905090 128216810 736672041 839554301 904782857 391228470 737233431 523679905 926533097 929441346 962058555 35253776 414742676 541055136 663817701 941907791 999334731 122866300 302568993 225001813 388986081 465891513 707754554 187285139 614544717 74111255 258773006 141209338 661735834 501821303 917202570 25594505 456948751 839794527 845600294 196779272 904863355 309957980 563142017 509639770 639456199 468577838 759569152 36376090 802050230 243418400 297820847 24046801 256217877 625368702 720178679 764802782 797989729 369741931 991244419 246214390 403501587 624988653 716269598 126860751 250073382 57425225 963729600 728096598 766040823 733784191 888415301 632245138 683806753 211611157 811301803 948280120 970695017 866254006 946892430 857433661 899015803 126705177 816459566 664189852 779612470 398056408 925888041 396255382 463585350 525448692 871118822 534113364 604908595 204553460 219642491 989542667 996934399 37526365 445696041 113944253 863796375 366938339 666377636 127774404 317121615 997398641 999126378 491888587 820855299 858897316 946023050 229106913 698720272 23028706 297545130 224868827 697464566 126761130 141439753 447024449 533850009 320285315 599580485 825843613 891116299 500578289 839894059 373095502 387365859 781599386 903216483 216622673 280524413 427057319 966323289 735305589 851932415 726618862 772328483 627691154 682454781 966542117 994003081 839824436 897199943 217824237 902789855 260605631 731610783 960339113 974538915 326108824 798005215 688520817 749836905 432801850 819969915 284508701 894753233 224927706 566349717 419940789 907506422 453740169 669107095 704292490 792893962 921588423 992587897 406474236 485492827 262280441 513301554 124929777 344827598 415059301 987386290 46146541 136514432 953353074 987960506 381870544 565458266 26354477 171417862 508879178 627536854 665037185 792767290 45313550 683545850 950930895 974278273 468746332 925893794 801964160 908362815 303661437 813770933 198983826 705806516 461734350 871140361 738030957 891910864 680143707 955168445 821654388 884991047 574723419 649198908 152153433 528245299 365392660 976531051 324405009 864808845 851285825 907978493 119553767 390120175 220724915 894040332 460702470 997104249 87777729 299658876 71556037 375600250 111612242 143009076 541962252 944476011 747153099 787181391 199957336 378096198 307096989 628205498 825945695 900784830 884542637 949749386 91546285 543843824 478763514 770582365 528189628 672541664 448446206 810673270 135790682 909106590 955354817 990635577 674007410 961292588 579134714 602932653 391821914 731827363 561773442 673713507 450504810 492162960 20045220 961450024 464576642 481400988 87744417 735402369 862281819 906587372 361130347 843259800 725473929 921417959 636721515 637855293 636003170 986871421 870410305 994516495 423250275 842229629 299291966 905318847 338061957 748049125 424802461 712688300 171506748 192715347 141807899 187863613 901279691 935077182 798035340 995721527 283884289 316343589 407981388 619905258 224616202 687499120 299948393 796256215 867061720 906588156 990490756 998432487 128913448 233604387 949045411 997524486 259414611 358037328 460265915 818105452 403291879 943148816 82261259 516968772 141653454 937148508 836605310 950018433 91113680 760714541 248531413 508539440 950735199 994996860 738246463 955456065 76730214 149553509 616217893 820187560 945992110 952997216 624052657 993850965 580344489 739729156 809912090 984185969 210586240 973241321 94051818 430743296 402731498 845726992 540848379 577976825 15794070 550258805 751318630 948739981 857283024 950010406 227514657 373703361 677021939 843598115 558139332 941936581 377585086 607912666 342028920 797120391 116721211 954851281 619477308 933570619 94594653 824917838 889810075 945723922 304758898 777409208 90668094 771908764 86549992 524039183 117701041 612242243 19145115 784450801 689089217 694693298 607107216 774068746 285020536 290087858 20148562 140471769 576364546 980469379 48238898 115503598 82618379 277464863 488283809 837089624 185965108 530483337 552828452 755522706 384141655 790487515 196644462 459419922 326020118 406238678 87066717 335886203 234280850 304601825 602119591 991004272 905803931 906487686 176355577 323864999 788650422 899766512 359347313 868671828 173550093 372557000 324692481 467486239 558885270 985858386 494861792 615868725 145848097 828333681 867371896 950531065 244277353 562767955 794189863 821019164 445261179 650272257 253259835 710446276 505404870 837189216 604909561 691827729 480847540 756816562 847116543 890605021 396887195 888527554 328699255 573852290 168675465 636307549 809488475 838345958 785944157 826825300 501480145 565207308 205705632 718884300 718382954 910654120 150675621 266500819 770692368 782008041 344633988 850197352 582862486 823634089 592903539 611741961 657343225 812778814 151160508 751837639 38903992 829556018 354748158 929074019 9615502 671055786 890323834 915269052 163379168 520718503 385994367 627134456 466305879 708736784 720501466 909299147 676952130 930601733 118433344 993930338 638494435 702925195 550510944 927723349 426610314 771845902 699466628 900116898 304242975 490805976 127079909 466639333 385059363 924305832 324473749 538651132 193799328 817787978 723371082 796755071 565422063 870059246 619597679 963330861 575251734 760862426 580997383 717974106 712820914 714974281 374246819 722915051 431706029 628950569 661507743 767968718 322012414 989208196 743110967 949378051 848627385 969681315 545821376 741837123 965173442 965535601 810086528 980441495 786932727 931138816 151362798 985542220 804179750 876930230 256362928 530974786 437991438 815231983 725071191 924369837 941617705 992768715 982922938 993135129 520166539 713937620 137417362 504578323 812413688 977313226 940886939 942529194 286811061 685014209 571633688 590779668 923221185 983383120 416286062 508425043 93016038 776680567 688729598 973697062 455175563 760893269 650859677 862580442 242362050 990749814 137734546 398311465 766713951 874923952 270236650 452462594 308262083 530972174 206688836 889025871 959405187 987727705 991839095 992861054 814403289 847205080 174263489 248830936 118286778 250798405 701902144 763273258 83306922 574858184 433073169 738470187 414720823 658975902 565174434 723466030 103686563 560876730 29848794 419558829 924775420 968327163 505683223 643977168 515455901 541223532 290039413 534914296 498214137 923298158 205723055 565293826 618202451 627661713 886469145 974550303 377834938 518894809 449350870 664292262 784386248 815570836 745126521 982644996 775121887 861722303 269667742 864194907 987036108 997564024 815895644 874520829 582839774 697411129 643527413 980759171 529352896 658733954 369209704 509580999 231180289 787468104 755723733 784021663 750490189 771711175 174113615 278723388 228808975 362700718 598270833 815915138 7572715 610759031 923926994 940598312 980221610 985857910 449222869 679124327 1929038 790188662 607806737 619486580 969667418 989737103 470180321 911137197 596348645 671030158 603156895 726121410 767243468 778123102 603319557 621576801 395153680 434699456 542783446 587855747 91680700 743686017 14629433 625439812 311239477 978778818 471723950 866192378 36336896 342318472 673800444 902316764 99973308 561448387 869149967 922102209 278490277 976316436 181552836 211306889 10940885 451601213 600528445 798218073 149040269 946846765 292618789 789936205 167776543 623523099 631049829 684992993 450639131 761025376 997058770 998098691 98364849 996989435 174554372 241244212 872648333 886421100 507594440 796534756 855450620 960464621 512245293 990608687 637322802 756759721 741131007 938555351 886351981 968549153 18929566 234274988 314317044 505627715 816773693 832497484 555259005 768253898 130576546 899370978 121649735 459995904 256692716 364781924 20418262 797576380 172963807 843034032 46885167 518104561 504146891 716511973 85778412 482832209 601017745 979056603 816813537 921741621 71454547 150171530 340425160 974781967 176630786 189724439 935118566 938844125 492378393 941952647 108039575 983883606 346350078 802015590 547154771 577667991 135348777 731343241 326276317 864644858 703356112 996267444 23788521 747696757 478833919 731291918 367309143 840563852 327483020 972303457 357859312 877078705 876975714 967984198 56327708 100508103 433657511 632636758 950846051 987867852 644120780 977826161 888196813 973039747 105716104 440823013 983658796 984930788 340900634 986152561 465402638 945120719 276213816 468863228 676391946 966729168 899135393 936737260 722127294 950539940 793264266 958850345 862206427 962888888 759056318 881840144 538466482 982214542 760018390 885597654 979116024 989404753 544600072 786705016 477185155 499061567 449313164 907606164 636683342 923837408 581774506 765518403 700699257 828181827 599053298 695830119 786339627 876518040 178478942 336738520 641180072 888562069 968184895 986269344 518894072 731801237 971708775 988051323 587160988 835696744 524470449 731884775 239214960 255526906 51579566 602778684 907953483 929917000 264923813 869681896 891115335 895286037 699462390 829571161 961433767 986314294 936190919 979883133 954656849 967911203 216195304 304633609 247195193 575714666 368425411 545355663 647805842 918273127 247579138 845950357 153572848 231335158 229913268 819475594 899997435 927362248 787793707 902286218 673371124 843972098 749394553 974314338 725229967 873104494 382480924 422296986 340512988 473969986 569847127 764658402 954933028 976464587 241613401 657804055 411950989 839340760 443160296 696390306 127197819 507546068 891244403 978739450 101272243 826233877 708737136 949654506 730451649 827165650 610263474 824228452 958074013 984334791 724656119 866487346 963305117 980227880 2678877 8357654 154846828 885303803 734082494 900730774 120032794 611036860 60427510 287126688 151514779 748027011 150413299 602219136 992297543 997783385 52803741 633547840 388529412 840151409 633404449 987724700 212706182 997923904 606980736 716286800 126479302 669430017 966944124 985984487 85377501 876230916 312630211 847332452 906927492 945643284 170906681 829243917 788372472 790858168 910151875 977034037 522262998 682164685 102687007 302918056 439919058 737173302 325737907 879632220 226325549 882296401 21236415 63425424 749969105 820842855 318428879 750505793 816876333 850256818 410732002 938102647 697757167 836325934 451413490 734376281 812973989 844063196 42465754 994283424 298944336 736725498 861892883 874188223 194433521 624539304 748044900 781435534 40086964 344528388 805965715 836693102 44620192 834714001 455235315 933949479 483163508 657652797 76000300 286864920 852994220 917262096 305636249 778467148 113786902 528135828 15575734 664846437 382658727 933525725 109709183 834678065 114567137 624222270 987230479 993001656 443539059 473656976 437311354 532197540 618086826 820780928 211510691 344062886 510827989 753350407 363806240 915511826 782545586 810585162 412119844 658206246 633581019 906633091 143225021 301477322 105032336 927575141 334337066 955102616 923767926 967277781 861533905 897551816 548064121 701407307 103853028 743160587 25764053 903359175 913323409 966881930 837691667 863390864 63794836 678123226 865470857 916376467 390398030 986896500 499389785 911856750 124417634 459926850 47277821 951539068 334441197 798444725 660975098 936313855 979168468 986216417 240859585 563249814 765402513 994930373 976258450 979745709 59487957 568479119 108399256 902208190 394712941 790916834 531093534 713315583 729143851 952161762 36601146 731521996 270172224 909772149 264820868 707653239 846354865 879924737 652138724 703018684 580914127 750647514 972607169 989748673 876483807 974465455 373125675 865895161 954715930 991156734 21587305 550194173 22680478 560711252 609855190 684314216 604082962 622902941 587135627 721656472 830317621 947652077 460353640 769584165 454149685 672209543 658277693 685250232 600258256 694942888 722229848 731267900 758848828 802360340 900733701 929340609 248832001 842393419 196109825 683204682 161827588 687410051 954749060 993852362 872535914 883295423 653572945 972878677 845599706 924715864 992046436 997538883 188356210 452263804 743836175 916631786 18221211 426338782 36570355 152494996 771086025 986283259 226722469 464955688 720195194 834123828 408670953 486267606 164418315 253089005 845568058 860448130 973958812 989966637 799008379 958006531 766326128 818001633 858785505 979909689 266057808 915669082 521320174 674064176 152536667 729896342 55279447 197799173 777614717 899121484 696209860 859449313 189921586 535464887 693769327 696477042 158644953 468598613 873968086 990453885 792077024 941433426 300134938 789068673 525042060 785863255 568048135 849205622 546984673 748719459 312916975 410932054 204702806 752101034 562739542 714914039 232479199 858173268 45239229 71109157 651493273 903566074 984608274 986653367 461907638 549853817 118839084 413751788 14873632 695166004 924375059 991288822 230700121 291064730 48508007 227899070 303351423 755304072 383671690 482578298 985399731 990880346 43535565 172207942 931720772 990788877 780239405 913043010 740804649 856024798 439443335 751081730 570805497 617458868 838366579 890005881 972311095 987041810 28681360 663948502 89904943 316924064 565196447 841855515 911740511 915398677 301261947 915663012 162020265 232992635 878795158 927959201 498673701 999000746 657453387 925076381 646136116 854697960 263658122 748834168 519620840 986797647 964306883 966140943 974653938 995694750 68196698 742411892 629609144 740242623 199935906 990332561 226230598 368082724 709406477 901548639 956712267 985682440 670679300 937797348 245071540 398312240 243759414 553019750 292032577 695240792 490802461 612842639 579158761 625173465 830277602 985891619 422374121 839516450 916866682 932565603 771476853 849517634 458503518 632483474 5416324 801689709 145170804 696053106 276099971 576531198 154278965 827180683 173804621 231193112 503491166 646215804 833356992 855989726 236078639 885523449 78564785 648116411 377883957 677161447 477752344 868481844 379659470 498821659 9399146 657864882 350779052 885114161 810441205 998464020 344213814 509125313 130560547 928458857 285608836 968641322 645508711 809840245 953962693 970858871 45227701 176487644 821048427 953917042 168991519 984622462 29917813 808821212 975541294 985247342 399667006 618974561 79682526 99273174 681077104 943038492 988798673 999058597 569659098 913673022 380628856 473604626 248756045 653537558 696953890 734078956 636545301 910275402 840320529 880582421 759082009 792212421 246018071 481061356 461269751 532410966 36802701 269478140 563564441 583469952 592777838 889419319 221280992 243412017 532852513 997703191 337185786 855913661 901417040 935938350 639765564 777565020 734342516 932953461 178267573 446528812 52484233 959661419 281648620 843455480 555382352 899384109 171071133 296318511 946836248 995786946 760321279 766997455 7798634 247800486 323802642 980025231 201886438 989382514 166798014 616446590 111597787 948309902 125914644 533033522 401985415 988778802 771472437 888456207 947809505 998680216 638494421 665435306 313039569 788557809 381983322 522499259 281385281 810643383 963731163 974760467 108563109 847341713 166977789 201562573 490921958 948863951 217129962 328322476 965217013 965979621 200548715 633311681 952365779 966532085 478945508 948254932 388108848 558990208 287709295 969925671 867616085 986801692 443567611 713215081 49086432 967106149 412003383 414964909 496474539 573467354 94161128 596221221 409225153 444595989 415564334 535308088 797301914 919445197 899979089 952898327 599436670 852783319 653416862 742564183 3131809 843114513 453809580 801116002 339091143 817210888 325463249 784731357 696931484 858146036 627869204 791251752 243207220 429406288 79120409 924443724 578046996 631026801 613424943 818622086 632309531 729802297 617337474 905650654 10223945 742813158 214316827 655748140 565001377 957036354 276308518 955473337 212878619 654838951 666025581 677021414 853892657 872248546 150712822 193174061 530609544 705675004 62838240 982767390 915074163 942980792 74086673 289013687 350024064 640758634 463152742 526194584 820706635 932104402 541490590 623570177 413780059 498361674 544550279 845072563 474200171 681715713 431299578 725423173 809034970 905017451 917109134 921908968 950647514 955291160 487926471 674324392 499053978 619815547 658821703 768617030 419161490 596046541 776062091 862018790 385257862 725861938 860456693 966777756 32888701 101489963 239050069 439638107 641548801 869786368 341256934 559090104 852845795 903395060 711747846 889719613 403495197 889476044 622974687 865652528 343700663 500122614 339211582 958716884 760353630 938020893 473643202 675699761 350533739 761326958 896825495 923879467 143388337 235791723 837973709 911617859 33466437 522398593 414816120 525233604 630787292 852941912 345003145 718854773 336984590 865155857 573850501 865195359 981848780 984532008 309392773 373885733 517959609 714908369 317020594 822084650 325209329 791441278 134030226 441125566 261317827 569104837 581911074 592227521 25642062 898197809 771930220 970678349 500501530 705493055 967887169 993183201 824359531 924189526 121676072 936611905 884977226 978616833 525163608 555585968 831782687 912684095 649859822 816679763 834603391 986258124 108156314 586473029 764713553 841861105 804713425 941398063 56658251 262110858 859862769 949167231 555799215 588940882 698255859 940520305 279231766 635777807 375068918 824162122 475184859 908329701 982536007 987761026 331092737 516015051 909789695 963017919 113760432 547723692 525036834 695829111 97914348 853766692 128632560 870975599 337688634 795687030 370206648 609939527 636158089 645583481 12264030 680906854 646442294 838198701 909540938 961317530 997910784 998978625 349904005 807817304 613753551 692662878 155547500 377324596 59185757 618923502 480905333 874033877 542079677 802909324 419160377 966716316 459422039 919986170 953508197 986286400 600991089 642261036 836430435 907773424 6569991 824206854 619969832 714359923 273978120 484240811 974774898 995254076 197558126 322036908 383810719 803195505 863787636 960281435 282197174 985905269 644367426 700944691 262693654 377002443 387400847 543520575 879436535 956366057 590644078 863220543 685886780 925792394 640473403 978881579 714199891 765561502 196285032 931958365 155656263 712532774 401643769 443241768 451872376 938160079 408242166 948035923 164335750 985243677 969232048 971874147 679689959 706555715 645307744 677704686 28843644 983272896 271867035 575527672 503499420 686556030 630500690 979577422 711074524 986138026 958321453 968673467 391137440 699124036 571057823 754580503 217426565 839989956 923321417 968800140 442638929 972894430 243583402 491179150 812136338 917479631 476100450 624919450 875682167 895692668 993205111 997593125 623785258 667691050 544144636 669500785 114237674 419024276 157420256 697327754 144071694 724328464 716309821 886725514 583831978 624484515 909462664 952158177 975158158 994357622 705438900 883350337 93183165 888355538 343947465 354990363 441878813 684756629 276993452 897573670 27631697 318815756 521654675 528383081 501113058 774857888 103136500 411000906 667518771 970685238 810194867 973132480 870533691 880013190 443789090 959386537 921134519 942198485 249642411 782276615 841676432 855047124 223378922 656949957 109677823 278267921 761138500 978336904 311746248 463508244 102085392 109356942 79905919 849914169 84116377 858954912 746293876 930876366 176045965 808596205 471753137 495256153 570015864 705062608 6854492 814269439 26965066 179577817 910730384 925868280 578011669 978836085 791292833 955562073 31644997 794632552 919175180 941297236 278455695 857028283 20456241 521364586 300799603 514159624 530137437 657879962 242631585 867675647 495870490 614213818 884549193 947991403 420006866 681329845 787802468 968992377 570918312 611107427 204149013 291828576 942814018 957981610 412481043 817713947 2359257 763668536 301881211 891693251 943547209 959773324 527985143 768021063 636484035 785362164 711721670 988894982 30788384 941900118 791979230 914393744 710601967 987528075 236288651 435878673 458232322 827086329 486150840 728409054 55425025 421562804 165450253 588393774 717752264 859679435 692770914 892419536 751354901 909768768 144793065 254286311 529949451 649028483 64986877 504459109 559599977 568354207 298379987 526277002 748322037 786245723 795606902 892462007 141907419 198384271 342314862 747784233 908793150 991856792 88864506 477714637 137986918 652759615 273028062 362018207 541223524 972083452 851735785 993432034 786427854 802207797 971757150 978856934 338179841 834438877 627846638 923357797 496658012 523364408 619116205 683552382 651981254 860329480 443137820 458090289 346253415 752505429 265635424 847534934 788147487 918954816 784539737 972490455 597880040 767495427 229629653 279185591 477435128 571959201 532975259 616797724 317216572 489713842 341111788 503674658 74897815 497439283 61678279 882513257 440817049 546654987 775091499 877259426 187367584 187962530 443545845 832309716 225488664 319782800 115050260 473495540 173657958 396889409 714755374 778205268 538781278 855453567 372548916 541038561 154657278 189513691 597329290 660418297 737380428 932142236 308460659 985198789 292794967 869787676 573899004 860461096 300348766 446808512 942449120 966401284 378507210 520931880 313935500 730629477 802605473 966419938 767345229 911963019 53124567 114178004 269222212 880213972 927765284 987498251 706196295 889914402 626746134 994832387 54521371 791114396 202543252 627756758 566171663 812227540 146556540 461167583 317023928 730120767 856727008 909960623 90461766 478897596 534718639 930996439 772449291 839111561 669823670 948054620 963024914 970184666 943961529 944949374 770518847 831203054 33053721 967981723 628170059 820050874 591138045 614651536 905607185 906149772 664267507 899722553 670755590 690079534 79744591 747276539 421188442 509924832 79236936 528662680 464294417 588738138 285061637 467235000 398835207 706165638 980493658 997671236 252436041 306626379 440615221 903350776 403942365 860753051 712141387 945047829 424015013 695541091 218159512 503060960 604598256 673038743 765894702 898439244 225547656 478621988 74925380 142706358 961251014 964128469 462182908 722409661 616274059 918898750 669495604 833326967 841421340 913263826 754789697 860577565 513111749 905837606 259868127 641107815 34601613 267277037 561416593 802470203 691739762 834601326 107115275 706177986 895126784 934018860 364560719 507575701 773093336 953140073 19166746 507511028 712498538 722114505 416420403 657485345 488309560 647823246 631488216 935502817 593498074 706649948 882263452 892723502 650066643 666295207 510519694 783405916 468432156 608138550 552145607 752625176 256296564 534538470 238572599 257129029 317733838 546320220 35338961 775818278 494683697 980831868 377168369 545967216 598348354 971394920 492271936 866148010 226021161 826945149 92409645 167191782 434858390 988369666 847042488 970388188 975967243 993304198 547399152 601291408 903366829 929766677 766033915 988537898 626313963 822820360 461379939 550603603 733710412 928809957 972717374 985277208 856972448 876747996 108805071 938391263 672698841 934016921 451346976 634649249 998384908 999123265 543897364 582423435 662279692 788357845 226180572 511104578 262647903 354060426 550905350 714529546 781801088 909844470 196149891 598477035 926718664 966667634 319438592 763537490 803418350 844101514 407908600 558251557 262605108 269581335 521271015 666140682 805519968 935984295 818736300 885505022 379487582 852084340 456319023 707829406 610600459 613903481 957022248 974100832 151155445 631432358 932697949 967293354 809761585 925780655 476227088 590635520 595942339 897846739 740922091 766433587 690153933 894894837 884837350 932402230 192611351 436296207 981544519 998798615 258748400 738294514 867049733 896242117 220707124 564684878 902043518 989638125 834525114 906707152 496268054 633880440 253112771 690265584 800461041 804385621 40144239 214506732 146116933 209769890 134217033 578959890 283402974 569351983 698663354 798615693 770704159 895511984 115948057 605633652 383452685 557453814 838387738 923687083 863246162 969299356 320693334 738335598 469470293 836496811 636140715 780219440 229588827 268068087 449464222 637866874 300251641 737901436 550369998 778381186 529018678 892706464 921938970 948246326 553432172 599664668 848079700 851614201 557760491 598215663 210122215 902392959 599151959 871380258 968410936 972308853 236691609 979335337 756905466 897459277 658376759 760639884 927884109 984273684 606526984 665238326 551606395 964058119 250221250 428808152 383937951 607752927 502944977 860442431 995284073 998128969 27194062 393663000 789589770 858991621 984097072 984219948 525076620 827514935 761490845 903343939 990351337 992382527 128491078 338703707 644881891 794773499 729022240 921138165 192867008 391478491 644029482 746733904 494876808 530609822 59802721 85243305 472610729 580720495 430802193 628925113 848871271 919289366 926881130 929514080 545885781 731798328 130487604 921984311 655613245 857767418 559902340 586960479 583341760 935119383 98609519 955047584 875666303 895864164 552633862 579787837 637796148 650560896 757172433 949931351 350308713 669211235 242161195 566007733 327078476 443543942 95801840 571458304 648641603 667293741 224709754 352325680 834321209 862209449 533299693 547487363 96126115 423091928 941937895 945343255 845673100 906356649 133243583 607905989 18986384 546154464 575490080 664716640 767819662 782812925 424709439 903134215 668373195 852664975 736170129 959226673 271940540 603756220 998240329 998605715 713483380 960371888 543526543 973404854 78501760 699997503 485213757 813242122 444395384 989724855 357539475 572811462 565459208 939985025 787516471 936392679 273842000 806358403 547226614 903049313 191911809 809852749 506925952 687864022 533862263 879658258 21023417 529606989 716134035 846123085 232826807 520604695 99478639 379510457 398895623 627521359 376932576 703369992 980958515 999322934 227064519 923883011 155588617 852475424 598393115 698645949 138536720 742050302 681887333 951098208 476869610 973963689 877806379 960135154 274253582 312147985 593070270 994725277 740598693 873895393 392234741 580337664 416697784 853602730 836785968 879214489 303703400 733065987 366661770 472068547 347295894 506993462 347037578 731642368 920665486 957519707 558351445 788987975 618673604 644534113 432853980 646274085 597312685 739608824 732684683 872684467 486229159 656407053 980195393 988940958 950275639 953407285 350970115 662620291 752004104 914687219 209340723 953751111 699287736 835352222 950617264 979967388 79504365 310924679 780092733 937817794 460764914 906377236 123112246 453561422 265049364 506428921 649482850 760793809 945838974 973485281 982930599 992850236 444306286 598806925 109337062 878231963 76051163 490615272 165501524 494606029 621801323 850293607 524619819 866107937 891813223 932272011 648263363 755325448 631415572 997386107 414641204 751817208 209286384 630082270 420113569 808968248 71833704 793323528 696026877 976287508 40401983 649379903 293216990 910326799 810313134 854221168 154351172 919516022 769634961 939951988 126427067 879450158 389363541 535508983 610013144 972816291 121670602 994581094 194081407 240854318 1626400 968528440 934223100 944093813 833845952 924196009 981374535 985186050 93340368 674818920 822077014 856742327 406486119 529359954 945533326 983062173 247138910 448010803 579662820 696132802 106819494 955890443 67888353 126513461 157720274 572489221 799918430 829397307 496139894 966323987 899496355 925310200 832536740 921711539 14961498 829239124 437182182 616187850 232570014 567842883 309858751 885246470 502118660 984592795 31795296 281713154 871041659 899696360 925374458 958757091 974708499 992192358 532812987 611168020 701647693 852944526 759861234 837222626 606276805 731467133 24388043 517582923 486465522 915386098 481467025 882474726 114418407 246512509 976379226 978200862 816878606 860092250 259297724 573947146 819100478 837571118 955041269 986616396 688227345 802913136 42095707 722715055 569415815 799347364 414901937 515941914 110575033 205517888 673677105 953479666 653152028 903066692 385997129 639514276 574431765 672776306 451301598 873266368 926357922 998716360 404432817 907548429 975350202 980124797 37631653 476705044 117911955 882411819 543981716 833271816 738751883 975864143 747487261 905140752 720523180 826166007 718711238 787855651 973568134 985648627 53282079 602796277 918925189 976512793 855900770 953801806 726065836 731565688 280639908 585856087 418753695 967888346 476810537 879412187 468943703 984376736 42539655 327355226 202943650 926037038 713199928 846494013 564651041 869571046 593005309 950948639 802700936 835049052 69328225 464387346 437378430 726614372 23260362 549431306 975340372 996975805 891445446 975291615 324656084 631350145 402315058 498572006 236804315 769247399 221347059 717406252 893392643 968948935 477027260 809810249 762856526 940749726 848092301 893094254 645208888 765575582 526026422 746181357 352004686 979327249 618444578 729027317 206602895 599969182 320393634 428395821 807919527 964708252 898208759 975904986 976261041 993597941 924893391 984436359 399055 837580703 902659988 923127584 617049452 945649763 392595073 789619078 421983627 924153333 552640276 848673727 277256595 332392847 859761685 946028239 686850103 921763674 447040469 654200099 46972404 218203189 163148778 626304748 211614699 961427259 983932351 986090808 501827651 531843220 432598721 712400531 950533824 965568162 164388720 629732519 80851585 594676274 874143641 931169526 958772429 964306925 851602192 915578913 766011791 995171516 437006118 635741316 464719368 965116192 956510986 965584624 189274139 611510079 751051830 902754503 664846957 874417425 538066043 962524326 82250114 197184849 742077857 778940171 700368841 874632355 350077551 995865167 714895651 831911775 344108033 827261523 254191108 553228839 697872748 804008140 616873103 887314615 820261857 851898391 746389715 871850998 458792024 914824935 112487361 405155849 817071212 827561576 950301744 969919580 503599292 854231301 969484029 983440173 982384310 996096284 884011341 906683570 219383196 586362138 749066710 807553533 442862075 465289147 283724773 777130123 843084009 961027810 281598368 587435403 797703962 946947691 490901510 809409832 69548147 526625598 579791456 753275488 274584623 419598145 554132561 671828778 109381278 260216490 773264174 977653622 107320570 983727112 288617307 580308974 265225449 559524602 441380351 865918372 117293578 488061728 753264406 993780448 472317222 931715937 673061426 935753008 157489253 574081431 944978800 947774418 323971682 867163128 260482003 717976389 604356081 831002367 777681733 884046599 877583636 930561692 632704621 965915661 857788294 874727377 81169392 667410457 942903089 963501153 623375202 668548620 989613648 994026476 697096946 779843993 955529760 992740022 290228614 984888022 586336571 951149456 253575990 423266357 948220765 989654857 715532257 966653251 38554710 172692739 428971606 598996676 93045786 663157372 473890832 959357798 751068637 847421489 269332340 872594016 618963141 728422750 260953464 750137662 424408134 774165547 476778340 887126175 971922066 985776078 8316202 869664230 783385248 853639536 742708447 878822194 471384433 667247789 677041708 913345127 737620591 822740955 116827740 404515205 526229295 818988173 251990011 820113751 312686887 637042860 38736233 345970842 617758433 952800856 21152877 651057026 65599031 917004894 700675790 950262205 143485336 839932825 875063386 923353384 777021041 865904728 786201889 902141620 208379895 386360837 223862149 554066852 633720422 837482225 183543475 805617391 393735012 641895465 284990233 508234547 91397660 279605163 639553890 666755326 242654825 830835487 79625211 668257191 559244962 600145791 612165691 727786809 118119945 686579979 179722972 476305352 436149340 798904330 629332065 632787492 283160983 825597503 214081463 257471030 701593009 788316018 93582426 762407851 592044953 640479944 681957786 817594762 57639103 781356913 937355286 942985048 567233370 991284694 716899613 895285655 49363283 183923935 251488915 729899278 385432248 862594804 829388696 995380668 331382447 590532972 684023661 839482001 133327106 303598111 905608075 998774417 134198063 565541775 279526081 619014592 752012308 797782582 26543177 427862347 162508568 461161789 953706485 978924152 506207952 939087956 772812262 923379513 692101038 723424540 644276754 942686276 285127628 349056135 8223052 27340664 866566224 970716623 627898342 662801981 227618324 953694406 454616760 896226500 395808570 909888212 755112822 855212535 521975369 637175603 374900973 858029623 896711061 951644108 960881471 985979661 225823302 405314757 810642875 994715040 692313670 793197530 406886287 802746948 813047848 850182985 318227820 351853919 34431500 555239228 718907981 893331114 337866685 702531845 205400818 978987824 150895712 279610783 131476069 481426136 832449677 858333907 400974043 635520883 43771176 420609887 11338868 623590824 736931455 969024192 178351916 475372733 150223416 973984165 118538019 143715825 655850060 892458738 369044948 507705400 905003029 998263308 354902887 663319164 599028703 958341771 791766633 842844700 245054546 851941759 822616053 995451998 453368115 474162772 737852775 825387039 460267309 840052841 550073216 755912071 89044674 866809130 133117622 219250526 26743848 605961706 840713942 977007945 747091242 964638477 688965481 771681123 45285593 881895355 644558536 796407581 889926440 903125374 253679471 683564390 380395137 911021282 763416472 809914849 532848987 605128849 681606293 860790256 678588708 794564105 176275169 491639317 457889941 597714001 883238960 974056624 422465562 996325595 828801982 991438832 662384297 905838609 894360388 976143670 753963104 887258933 355342358 355876294 497196160 670305538 383526447 994969396 159573149 445663901 248084457 465053127 325341505 893334087 784439245 930771861 549008472 849582057 445700084 824870951 649123099 802007185 887210371 902029069 986381245 994571012 857293691 918167940 225018393 585475507 105703821 375618330 578449522 796055363 852384515 902082019 13078648 453878310 590149760 927968977 763487136 783771613 69413565 826921485 131484561 346282628 942167394 996385006 439388587 454611221 127480321 726013068 573947244 614846365 837534714 860367113 144857675 650241284 9555669 913637340 290675090 686276494 880559774 965278801 547523312 683226000 423213422 485669356 211848390 386143967 795207154 925455194 384409950 928172561 399985381 870704326 663950603 967520028 241837226 616379726 688443788 711269570 242601563 695641012 72670886 102992394 269399398 573638423 253581948 608533154 366527849 951502878 686279601 753977051 924842749 961650026 270307030 298874877 302181839 353753654 283550695 411911829 395286289 495002842 538825708 599431338 445017696 736241529 929816303 982583813 618901271 709857564 7847784 106027799 871270096 908741477 186398118 695380128 958292935 979425936 940376230 989678547 821514824 919575366 160459012 800048978 909495148 941265843 939974464 987477766 8989379 90587650 38005639 136830929 598125692 711536382 629159668 922998194 730767748 899928077 24878483 642336948 500976917 837995489 873779425 957869240 937895408 951392991 419222654 482036977 314606486 508575399 160227078 729147194 140775824 403529524 111744466 708880591 591612851 928190154 587581049 711175616 676323028 707308761 95819786 150699449 163966580 667965675 108759431 402008651 128780836 327971913 497924372 662961943 681597635 819340412 754316348 940175862 151071537 887641456 985603807 997384552 38727354 603402327 399729760 702483305 347552497 682273164 616688779 835211549 319047526 638586437 168400355 345241348 371790887 713887950 474688490 842628717 322564266 357578211 961581418 992895841 867436506 990590204 737007569 991817167 326252295 506333097 357920143 419643854 233144516 471647393 261675784 761996229 105940631 907596874 51660562 987538153 498811681 620933973 734253410 803112040 542859268 711120607 718800878 818755163 112312666 691467595 272842246 620693988 816228958 951714553 544191410 861070270 995098749 996749335 180785633 908585293 425010414 962841054 4615007 485581054 5960409 900571487 942765620 962871268 434223169 895482773 338378190 811959784 660547300 677422568 95950143 264828060 200776345 827742346 54272454 812376506 3875369 472775459 953355526 955704753 124186950 483461469 869919159 950810474 784290545 911670261 119504721 985301881 950436909 953027907 309922868 388182919 135022938 804593695 963050481 984671029 592245785 916127815 683761156 778773595 647017075 710183394 55153688 471716384 842778266 867367041 967457594 994681471 522492630 958389946 725186642 743981088 923152501 981295913 510859026 745541077 217838987 686944646 919012990 946364465 867509908 942769418 64018754 533787801 595202918 834503332 33348405 447555186 798805894 871108461 634954796 745173010 119129748 270523208 703372536 793839335 903884021 999128343 293649599 920146389 306583565 347528384 94554269 413170813 887290955 963875643 497218021 764696758 867678582 884867784 259377119 386745337 507906658 757003860 774473029 937863666 479232602 817976651 568899226 627038927 659151184 700910169 696727739 956527064 923762584 986078444 785057288 916272039 120979840 610903041 987329785 997972873 633593138 850140994 837215782 911825166 514179225 769564466 815253723 907938115 297724997 601798661 788555 302024541 779761955 799725809 608543658 965049228 441080798 965285326 364091972 917590142 426960701 600994117 655676668 756989452 258079924 376273301 244812726 330291327 3352023 919532035 958981079 993823990 14330144 234884754 172296522 736121443 512297109 738198365 641817823 900476260 489139989 927470209 38523089 775500733 582424414 777719127 890516488 968903234 50859108 581141239 823675815 906059022 196635836 997910682 741390054 897805648 394885956 725219552 695214058 945955489 348299397 912203242 69506022 463243507 664763666 962166185 909729707 941712659 827065628 892491030 880360881 991730058 906269585 994297183 46877803 242227981 540089837 739731214 312572133 900639852 687790922 769262014 686483866 905876082 23006260 251186339 756862246 845171758 695459117 965487717 742085830 858144685 823336822 955702211 602985176 999148333 76433772 817984444 22101470 471677814 571260867 821376628 504418225 690989338 27284710 149685863 754658586 968209292 707235717 755558181 362339364 919611941 447152291 529595384 462258352 631660869 608936300 865391602 18890278 103489185 333582798 443255988 900113817 956266449 729592005 877399681 227233616 679405750 594787689 659156867 647348521 866989959 492993696 665425676 424803198 947933698 206189433 976047429 417553956 945285699 362319839 371861673 301358531 715151866 675475240 900958645 368932807 659676714 131782781 325062285 589293082 701628842 161326970 763038508 706103183 880040866 115477948 744910180 530579831 951228928 434315457 488760615 286443465 863095655 948907108 975967843 520200329 598867508 377683408 655752825 531590033 873517565 178194981 641204395 356766803 637854299 42621341 93408036 569058994 877688529 552089509 829823917 97940089 300750527 963473403 979866168 210573904 854970779 310760673 883523132 125312483 897604495 909173509 988697527 695102177 948351094 71235219 859543509 705069098 796206428 2943208 7854100 842746750 889639209 302938333 814512105 107153827 550398428 532687286 795458255 705719554 920706930 941037529 972465940 162479952 643027597 526605847 925478232 364052475 833352910 130374828 576069900 795909974 945319196 880820228 928990822 907218737 950945501 897323390 999288614 53033074 197758113 362449219 783298239 985832174 989795477 406395218 655681478 108974924 372274758 488494588 870674472 862096481 894501418 117479539 525459891 342023739 455022227 119806783 909416804 956547993 995479523 700867027 948614363 314804511 375467116 118073315 868734164 423357484 635867739 831773563 852581712 828119931 862522544 195407780 272692626 576024627 673940779 396429560 945404066 894355002 998048243 759458208 940631186 309086142 594011232 381421752 936638257 873102579 967116146 88529829 619342549 2345734 797290564 973242110 974274640 88874332 692494552 411655425 725408466 152740373 817420427 879259671 925880101 529498365 960637302 512475158 723551571 263761967 293484137 713179577 993758043 839845496 867397999 896063223 899194267 707054210 968342538 94287822 990336553 596135225 802393991 913743848 915779216 579243495 828036028 279735347 848231082 250607044 910695884 609670516 918468810 395559182 725439261 839807103 939660367 429217751 463875723 18040819 723899820 284247042 504941926 26955472 452695059 593836266 800326311 232241029 289482740 231844531 242278141 724912213 889165447 883357429 885685418 149606557 607183841 563471976 628783295 423305946 956171411 86253480 529105021 876191046 996045577 400970736 925978614 578567168 913642886 336769245 689556364 536977824 974022530 573569624 987270963 836487915 911495810 91955806 595090092 246067307 569460820 609903415 795814326 851672751 991425060 720178982 787399039 982605005 985701302 201955440 623393567 114732355 244951465 176260179 565302032 905697225 941631209 715189464 926668466 784192761 994431390 575994659 666925865 689583354 772533643 919741708 983778369 15153181 80002079 237706775 611738927 196848339 347760170 505972023 744437209 713424815 873410494 402823053 768121778 725708904 940338998 457102565 805705116 623465506 767028981 477001186 641043135 589994652 932042497 371472107 503410098 784510389 907447526 749158476 889433561 586483657 730279063 265382649 833208682 621333357 884273168 713710126 932867217 68035214 945414609 856506062 884877340 231014529 621178352 69379724 259114745 127776470 676964605 745063211 805091816 569901956 798597276 890661553 968135974 839654999 851185894 649552669 832883438 595803029 693394549 548008548 742216481 543021803 624233053 717117725 974629544 896067940 980120736 325506729 555654446 631627570 924510631 265274816 815691053 436297583 841530114 235172712 762133550 298269690 796771081 288851776 406281330 913854774 959367527 944832960 992494862 213210923 964355666 998283445 998979508 646119656 882530762 906879881 955891376 673568249 906237047 363237 308984050 291815455 736834857 786028389 923105168 846023915 930469318 594133140 730646135 773305033 887830044 94198011 691020347 699446797 703631380 737478487 972683932 158327396 359987613 630352296 867893706 855262931 934837248 163896082 812605140 195201456 712672100 98507460 287992996 279031993 899601610 115494097 604369797 974692953 995654240 751206727 820085215 650571205 687254249 360702194 776498535 20090520 670844073 202206076 776468971 438795875 578466925 332328629 813492278 463943312 512709831 992252668 994251131 492375499 939830463 334308348 945401036 567068766 684628190 255983474 716987606 900366321 913736106 132512409 552881378 224224910 457949103 843470628 843630751 938461125 994530028 462896496 877187272 440285177 652341884 25459436 739566743 533026582 904088193 310595248 440307665 178106019 738533498 87972052 864675561 286480204 586523884 579971452 726345291 538718382 662233936 884441777 991872269 557037634 585447037 60773156 506710659 840488273 934797843 60266110 213107427 66619335 684451919 704590622 892519929 550042992 780330205 895958551 902129041 961539839 989134047 831541484 959661572 91583249 257613843 221471442 264861078 605898901 999265366 916455046 919331078 851817648 872385171 584143442 685362016 889704267 950738517 439286456 987102203 570590653 959325360 97631607 478383904 680368286 936574491 892310539 955129674 78567787 105693806 405518575 918458620 794453159 812061664 988236788 994111556 2455914 516530084 906814987 959687395 241976568 741591971 206326673 350887288 892177398 937065421 907310343 993587710 618144899 621516243 818253645 892376590 843458859 889122767 441761084 889362564 515308933 655670710 791301868 983798309 167147170 323285094 679479810 975934680 480406314 796232694 479726406 646365789 658112669 661130791 52566882 837119266 168292798 903921338 408970786 468496839 520849155 564650437 813872322 861422345 220373114 797902462 202960559 950583600 117115439 993043806 240593937 424148778 668971726 881652965 853913577 985242217 321859082 440838716 735092435 851066157 516868995 893456893 507933276 784965288 696056110 911182590 125726057 976522901 728490216 910573065 809803037 849407202 51854197 360064851 607323869 887031904 333956346 379272120 977242797 984730830 961483898 982962851 421210804 677299996 783508123 789725372 157774901 485204115 147755776 281821808 676132224 799818679 545325585 666366488 670731193 808636476 635131368 932326187 386444159 414902996 282334970 981201696 652654508 848310759 126259587 947770959 9892392 41541954 828271660 919190664 246599143 463297921 410129846 954227436 937416765 970933369 366578684 833617956 836417200 979240703 897834841 979397537 742276371 815557093 563929987 733408949 563888843 916654413 119512301 547923263 816150360 904214029 252203574 959796859 440125841 629483650 203693439 781646933 62173451 222947919 152216612 373038768 238609266 807643885 696244704 989105455 295001810 551887099 621976555 790422975 975899821 989064114 256062165 529490283 31095025 546868967 40616402 182156489 303348036 699777131 37982669 382936713 733686429 811600211 665298990 881095454 771226701 940440604 428930133 995751126 124995639 671052746 893453207 928390615 386128400 643652922 461384692 605455625 300729224 405054437 813793875 987537773 483259446 737828701 698583826 914836650 690443678 849694815 669684136 996372821 203811494 857321880 519472399 981416302 808910778 884858065 998602874 998722685 202960761 842414202 226212452 516185308 17530749 924222384 470827372 909404460 942982137 946113568 179820471 435851218 893115761 978023841 326156141 799979532 753800029 801012778 159257747 348635986 446522064 533915469 123459018 465742635 153258484 987213522 301056291 731012274 335959842 853035546 646183101 719800153 176904301 401449124 395782969 606728421 333952705 637667772 262482499 370414628 802856865 986096530 260690807 516238725 188470270 702499557 747503798 888516064 187936276 719703472 992497481 994212354 253930966 618812509 763720374 838454547 836620579 889447993 597068216 986399884 663775287 984188741 711756168 906341198 348385708 783005231 538304548 619977580 214254577 377460409 865605882 950733836 171589552 210608891 407125126 790074205 35800227 406744107 131470264 140065196 765004472 849161861 380574174 605762935 126005306 264384602 679153929 772712294 443549913 951046184 309869245 940135241 763548489 846442450 460838018 524884243 664515557 754177829 719657727 835958688 231457999 686539811 214002523 666105816 140386790 891307797 698045967 962272460 461211982 508226131 659308740 764537972 59691284 115788950 237237543 870498627 860706249 953281026 592650094 620173586 235166400 770129520 569313382 906802869 94234702 670101309 856811399 857208461 682824397 857781991 966395266 997761736 1344684 795106148 680269564 862990328 692246546 920621113 572311638 719431552 255306267 285941949 654020403 737962599 219286354 896774959 247393950 632489291 644706747 916449263 61410799 337800843 889577707 986356259 433581063 658337273 987656444 994860153 960549510 969837811 401300756 448109541 198003827 966407707 426559039 462954965 2409586 283118803 943838361 985803953 608151793 758869749 363006519 696311283 487471734 924649703 658263380 972031833 341765563 551194360 129510766 238155580 456842562 477991513 50467866 415456271 318995996 899046456 178310590 636667625 627890438 642454581 522669046 824121242 79924795 370685146 832169159 875412494 788293688 940254882 219874418 963219292 511626810 814046082 343301780 474424428 308453226 828224409 371245433 517129885 222329634 913363015 937597541 954742495 370873868 615922323 42557812 626788017 743630817 972379531 524390429 922165600 844965789 892759108 789022755 813213562 714598763 765216738 670711201 861895255 775601822 989759575 720832290 795215552 2114700 62528465 294881480 825418422 521439478 537851616 650023752 749764816 636919489 683674811 66697896 121151713 597953809 849449878 744495126 923717980 415881625 547637405 135130975 895829862 722979591 744778059 852816724 908220640 937056246 984474040 938560080 946744043 196785692 855574793 482085840 883403305 622878144 827798605 196467576 883204570 915018172 998103840 354348580 401795589 129954871 187254502 379866355 719896945 205760819 530753774 28910815 396273309 64429164 774887017 922802448 991555340 877208735 977645898 357144635 429280813 288263806 623927049 38188031 473813940 234123815 666175486 152684356 524716983 271655846 369433486 499748238 940841377 704757852 895295677 851551027 938089211 761740994 896622758 863290595 948696640 235456180 511841503 810913816 843453169 225183647 582735585 318661052 573390637 903774047 909637154 329940817 478809302 589958791 684538832 301489532 594168960 376546473 934032056 282425161 346893423 791970242 895554516 248498203 331225939 759109443 762993056 267951732 897175261 130047069 616493993 956862380 996663040 647950302 684616020 68597102 423625170 777227072 991783667 637469615 644963087 587566387 886387720 564713727 788207610 738055502 776008729 155025822 585303172 554370305 713033992 226558169 364367796 481136405 745335391 928531905 981550796 51418247 63261509 938707200 950257541 746418719 992816883 413523841 670539226 962613807 993137259 33458600 563701422 334106031 875593199 61562814 827753216 368135016 472546054 910184405 974007696 715834828 831235727 898824353 959387143 591918661 682068440 470902133 533043544 313559248 392921984 733705035 957395011 257261770 629964630 876428239 950662880 544759926 644047046 622184260 918089734 547923714 622649326 107550326 546164996 64162116 427960236 930526261 939021113 537177791 919470382 903000130 929042173 958931120 960625052 50846280 274332246 567175396 889565566 46215567 74657214 59306918 654063920 569042877 908215330 254446722 764188023 1923908 881086993 429825480 965452554 114276037 915728309 912382254 967558683 733190489 957022160 995447174 998589356 473400186 764537591 990073429 990796103 795068477 983856566 323780167 734366923 671773362 704006196 263801881 998132093 482471488 513376988 939397050 952925323 487849550 935970472 492665360 874185252 865029059 988260179 506513044 843703578 650795297 772433407 848376765 941313309 86292440 688056340 608834290 736590481 990765594 999183417 831970962 894847975 532815559 871870163 246574734 591948905 874902510 966081044 913297738 954377165 453462716 727915379 210328750 366307756 727016342 885652304 510671861 924222504 526697139 894446244 176065526 575870296 505844695 671615051 301634071 980388430 47122278 439710522 271066107 510176555 428381074 807219317 52099646 664649755 20628575 390467585 280488769 467827014 324868615 354810411 724013778 724777636 427730900 891108259 634550105 666219824 841621171 958494930 274588368 833059729 52944563 267031763 246155447 593409429 901510535 988337486 339707682 851148039 387995206 672093098 730216654 852699407 879037954 879460329 914865116 952773481 650735448 697429258 606331253 612185200 364117109 438623427 602385685 702748399 257791130 707538063 218525482 294852439 191335859 460600940 444533821 964416368 689782991 718906436 731324541 857924221 49557918 982922094 413171818 476204917 332778260 917444751 17143651 377737094 339005992 913997779 55883208 421957979 121002136 545273294 114274769 227674307 842718443 859443116 299168054 988810937 905115495 937527710 990823449 997809336 930247679 994838622 201449969 834337544 252136024 777516316 844617150 955566103 82366289 205910641 902336451 966073636 301492121 560185469 544689800 726292870 605722703 653760794 695907643 976870838 838485262 879000403 882138897 974282466 94127461 629877154 498587577 978139242 14510474 208005059 199987614 625973181 576279171 839635396 567983353 757688735 896151110 903151190 176830120 520263165 618042039 816932256 66584566 232850515 795456180 855267983 142561646 729316703 24772349 400608798 161440424 654103247 871539514 964124719 613431515 882261107 712798599 985606264 39708427 455127691 772100863 901437326 65101473 773399456 874434318 960353037 707656993 727034991 976219763 992668969 844437886 901740709 4812015 633770806 537283502 916025098 190795868 554142745 35622882 722769289 387402214 529803464 67834529 919068860 188046533 998771447 707019867 893719202 814928071 841989679 699454499 957979188 692704048 790094391 171695624 697058624 232235792 451179359 151152348 514352000 822118667 824213488 299715455 323642106 503448283 576515119 88527461 572140584 617975677 940897263 571795231 701510195 332325984 839628040 771304941 792951309 323061195 979441388 846775100 914740986 609889822 967618224 989926384 994747409 225976056 574965072 171188629 473210146 177668120 396436509 948629102 998935807 989796890 990120854 905786194 928582852 454319138 462854725 313535997 555471714 49604010 850331230 674758738 688384860 85775353 634830395 924246525 987036669 291101769 367538211 39487409 412111508 308152637 502690612 383226592 688140135 578398898 759923789 170808947 961427063 684283887 894287897 277300206 654085664 598246852 666158954 200023364 269528195 906263166 922991445 201897730 368239548 402297859 425943293 57673848 685542470 686262293 943817545 270798056 736313418 741340081 772468184 759923829 992987382 762466501 978256229 306758298 530699537 369411486 994103570 636913227 643692819 850910351 897659349 860611478 867130568 529177679 577859037 423347986 911169582 404754135 897714248 153116565 944326318 732337742 973672499 292110663 722148790 297448933 593673145 498672064 512551000 964202296 964276171 944262196 950298491 568362804 935488240 367678706 778703918 811535944 844988152 627253142 783499553 886226870 907577027 225022735 995451176 395065541 883083842 77529370 86458662 464205017 905726386 757444624 929608873 417046413 807571496 16630920 857304485 651816932 842072905 612216421 824121047 452749534 584607796 890607518 914806041 147838389 888366092 149274283 797716584 601849013 684789632 865969383 926333062 790258637 910563962 122950713 935363618 18255053 66429341 704184105 932789205 251154448 680546837 452193368 598103777 143389312 709986102 4997446 880389685 105269484 598895991 566689888 900034996 893029174 943238075 476127123 563607206 392569393 522091457 687488112 702269849 132149218 137435429 945080751 956948083 139370303 462360690 697425816 898898898 52267278 548217948 177747167 356433009 33164336 588941734 770374577 799178560 202917947 970854685 220366521 737163669 7716781 8784104 235997371 371096589 843266497 960263049 699429 797405906 912136069 953107171 351890474 922175710 418842954 982110406 426265371 984141318 486595500 579103446 483014314 662589090 155667329 539641230 821512208 863143192 96743194 380024038 486142929 834122763 40788490 207345416 515321248 920649137 546488654 706620682 745456065 797813891 63840690 110754711 863267428 929846774 567352556 693451736 794842392 863739172 142008252 236304650 773421220 831150690 116689506 510419573 752195596 955997265 222893185 279515991 622341464 991947817 619454310 836831684 388677130 682181626 988731233 993805164 168250005 816759232 232117830 823453398 414622918 936008915 881340117 887193810 172508723 515168267 871645448 991827371 845269192 942509248 962437331 996512077 857609663 987051321 981940148 995168169 964232690 995150626 94810368 440675587 59588258 354722393 273060047 342077857 399097076 815675136 242366335 736464003 432118108 974617738 394312585 608668613 568070143 840282546 872210189 880699373 297723694 506400122 233103763 453010566 163175842 733367627 56864128 342368740 849212898 963979869 468311128 745101892 563401141 965468448 414510050 743068374 873990929 906830452 858661897 882859673 905541142 975008357 981693401 995116539 333233101 963176308 527236909 814850231 611392260 643311343 987535628 992896103 25721326 233019622 782330599 807167709 609731126 899603949 274708950 708229809 326722051 533034015 11930621 444389105 190340107 694947676 209599997 635889531 95095713 265460694 818756937 952066437 21537192 558831026 590521660 983866067 654041475 917246547 461492440 513522205 149148134 863366643 622965509 636155160 253916111 321096280 190928210 698570821 268933349 807453926 557458757 681103850 470052030 888406072 709535220 904371355 803721441 850390829 747388082 899801377 784651003 935706702 719684171 749324538 420848266 784620319 202579873 677401829 354092500 360767694 141980633 849265443 304868370 461859834 314464729 668505069 201876450 873957602 281096311 858841454 856552847 930418553 39272461 906001865 35941614 209723551 797237983 871001904 548946952 959803537 555736752 849199564 768467260 924886566 51082707 951438950 399176841 400889588 934843412 944522662 181461373 342773469 568617844 699984683 795103559 942567986 319786291 329202600 253029586 976031734 574491075 726664754 579536181 755242443 853907868 874694467 465547869 838534891 259236701 477647587 173575664 579742757 355920571 725160314 682429005 700021182 49826675 921780503 468946413 679743912 56409698 258416483 971968154 979490860 395862486 446461866 87086108 775829298 738245068 904043007 644778226 868530166 887626643 985897263 242268436 660357485 172062768 692595320 499984380 788469854 150918970 458114985 724810833 860231325 170819277 594949789 199829072 239150805 578551175 881947391 456532921 746113425 506496756 910237129 571644789 958807248 905075712 906185744 528248410 768595659 176275490 188545556 136118844 968112574 250880507 527550523 232841416 790032733 827883361 854864389 853658450 868760396 637875079 655292873 591803446 724104709 119223636 336185913 602667289 933626721 125944742 447056910 804195359 877355874 251084802 804909845 50563783 780387779 44299195 728413470 645281501 700298165 824750836 880794181 985172706 993302500 633503423 981486608 1656604 800990865 119230344 495059215 978178997 988192637 204967566 436194164 617197994 709029523 108564794 434006616 783278756 900325481 845323740 865423070 950583536 967067535 150517092 556932249 239027049 750607838 923108278 928129690 720332843 902320811 442985424 654734178 499859649 683669950 432045047 641584337 30416602 140980738 338932922 371568123 640795248 981169145 281744738 459280986 297866435 306299264 512691814 715178197 317562931 390852705 180102944 273395530 342694748 586115235 931611419 936129505 808380832 954581973 792092810 868228772 605261130 845673701 626393768 962258661 723272366 927922413 182392925 954574566 977434776 997794699 777097182 849294699 13196326 880765860 724127074 937035956 816404408 825538281 349430052 872298581 802296019 910781819 127580457 672855364 776467128 876722572 329482316 437685542 876953860 896812364 965362066 992148754 148147856 717221309 322597546 632021793 252564158 367035042 967260002 974350905 512734868 760119510 179118497 416835993 973999316 990669408 263659984 668284387 996545080 996546746 203222801 294886601 380749358 418318143 951833465 984823859 817962725 940307653 240242077 874333374 862055417 945061308 869357290 941888603 956057313 963600114 865201605 954474409 470868594 495315776 574251760 708105925 397282516 549916314 998439783 999298471 865167675 997411255 683606419 689707621 13444775 158227996 939768906 957720403 220643020 662167180 398801286 639813924 543233702 866979463 959031101 979000607 137576348 567935569 109963102 774331669 284065486 764576241 134630372 426916053 279691753 934520360 547575552 708084503 546907837 706967093 757143577 832600726 571410377 675174571 444842093 866842158 129276086 805908195 24518788 547567026 434646187 828414956 299081046 441373247 806333567 854936268 363997801 714662242 386019763 823267848 318416852 674583470 720562523 746359941 379154733 720956190 690495096 812737241 814496731 829974510 773916466 966348376 979375396 988935684 772301543 829958816 840029875 869671066 166431868 713753912 154671464 462327505 400225502 711286116 781536588 970717649 358825760 433729269 476960837 558825891 68555510 971620004 859251579 863441511 966859774 993994940 187990213 826795448 261126911 668354580 143990154 542147221 733227168 782600410 274497740 608513760 325640357 595326245 717610032 879655637 919330941 943878019 621129120 710389462 440178230 612614433 895383183 960004999 439536600 638843358 633105685 868095363 333370939 865484416 254220922 348874173 523632851 921112694 55105589 61209932 953010216 996283025 736700433 885084219 720867044 960008717 593518221 961928509 308072425 870047938 972121711 996051651 929406125 931508730 77592596 362427211 503719156 663339718 297068055 506595404 973962808 977779508 302215966 440924390 821975727 888148134 745810231 900606346 311692631 567639322 491926377 561445232 931560970 995531750 414585575 602231336 570742824 957985621 28046693 597165857 413063615 862229055 367545166 511979996 323459189 600828991 805015499 864210847 171835144 343981823 654129345 756082210 403762426 764750198 252920936 765399135 319449009 470063487 962842219 963159273 868531879 983457225 991007093 991355614 626905942 978583591 308929188 511165840 202854095 489740971 254113717 544643835 638211316 902844205 85527155 315149194 742376564 862860633 286742313 481258747 480109100 489080394 980092732 988796866 204063165 295775009 554730958 655623841 214321268 326441878 942623103 988367137 521373111 820299720 364900818 916568818 724508762 895263699 473187895 656000757 385552779 845888612 244661394 320547149 281568354 589380970 8161719 623518785 537564449 853144419 102542113 356533180 928274156 964773021 994678441 997037216 186041458 375579223 746808630 855622193 971922887 993041462 636491200 984567592 37994124 732486750 276443629 964185430 445901850 802302972 322098697 602408568 602279443 752674021 837792746 915355318 250342148 641749285 325776433 453108706 484793324 743679212 553152271 969586895 908156555 948138928 427297865 845247527 934199615 977612183 415160354 591980966 288433291 653224008 378662923 826574543 722994654 915065989 434388840 932481283 759518955 975752410 370080845 408078953 570128521 926184129 466462283 700871847 843474587 888075938 239693753 817307064 472676412 791344169 538338707 833541002 389054792 503139776 699615564 964467389 783766946 865628417 834844933 836980679 506467672 517659503 175660013 499555603 401190213 580428845 35374682 675974631 835613147 919290759 440772482 981547715 834572390 929319302 764287446 959599962 804164687 889216925 764914297 924173746 994086264 998920304 164672347 734561919 177036926 429054303 949984503 997349243 582775111 774756374 508974096 978956440 884291373 995144861 264561355 796746071 849427969 867244234 412662634 749034875 821173019 896045544 117341717 368713710 646108258 663110008 830809300 885787526 784463813 827401824 790208244 961816469 92682168 854760935 272997596 634317054 64058714 641205128 840164026 883855035 16591321 833516566 468222107 736286892 591160802 802310219 362890995 499358050 834927683 983771719 842162203 883576517 681073980 742527082 339725707 456218225 613272166 959059309 925542945 937882112 125886823 141925891 504044466 589800496 154413095 868826805 191159339 535967043 26409098 875236094 517919563 702346748 652279527 852058123 148195095 315983781 342004573 371384659 642228410 861121574 13349295 464456815 413780631 567246448 800197241 909369008 150869066 690129223 372945558 713883422 787430142 938121644 603459579 799695268 99128436 818699371 998119406 998765745 158339770 813037847 18996654 235712122 811274012 864794507 135001259 829756839 898810638 953792695 987626317 990886793 625060733 906792410 325119359 668984711 428869190 996035054 549891153 630329237 758837134 832768854 531162488 853276399 950374987 981403705 12302005 933394011 836228711 946737756 322724291 836469054 338068935 485654341 565180123 617881599 89030196 387671131 651905674 902696415 387342533 909950441 34423533 991979523 206672517 285159246 963851838 967029297 43939203 637451934 200448384 484806057 666674792 849463243 417032544 623119903 277112155 918507232 965959049 978834109 181081532 638235567 836353598 896236005 897118 918012524 943259372 994098332 437747346 981082156 163378819 976937275 788502182 988734627 945450514 976639473 558568106 715895456 478216559 648368369 295267239 859224053 308015824 496194319 491950551 621244471 143801025 258259672 836512853 989109232 546484765 555135860 273518661 364893703 597536139 756224656 396454882 959895633 833512636 918725911 559746509 693349374 286059004 745981987 411454341 612969290 26398699 406671425 864163841 960546357 974526200 991245895 422839208 625390833 804357156 842419997 567089352 685673030 104871262 747690576 485870493 797756303 140684122 509430613 739989344 832552693 626760283 785400648 21697617 838755146 311347084 531558573 273914115 597798567 669605607 931425282 758821210 893941718 538162954 951515806 258554404 358481714 540331450 734371350 397526065 516386815 17846766 19117658 280001532 728095004 3288209 897934879 860080404 980158689 911726188 984571079 264032797 915391993 533442697 780528784 650318647 827499279 466952175 522163085 936931266 981633361 613790072 677537675 692598597 881379286 956662247 980913847 293681754 721867935 138835772 836805377 935940778 981235824 998485596 999359104 614969513 836062959 209865231 249914711 482696020 489100627 922792246 950267714 458451345 568560658 886475702 968301898 836015753 871288183 227867484 887201839 190251109 487500098 588650056 591521296 975736079 987180337 528983043 873748042 829047463 862705767 860287185 921739669 217145065 289271671 941870034 998467595 689491438 832944942 637036229 812177384 668453380 933725270 648218242 904299783 200540355 578374986 338166991 678324238 806968103 837279553 499995367 678889896 8927827 108898561 443354577 722095757 69005480 583269299 522680777 525829199 959599935 984287085 441980453 894047240 427798141 525049906 551980629 996901389 566677579 708441678 65884814 970239567 639142110 707027539 929116627 938192255 239542228 902886830 94764452 293339353 23131500 868342370 34462082 926439359 350505854 995196100 49175615 415802437 583447927 718567588 524545834 791705355 135857699 631156147 503787234 987126151 954259432 997373264 619725894 994170998 953678229 955586796 672606406 824322777 355985979 910376366 816697242 959118684 293690766 754069024 792431075 881457782 761889308 961502608 251402682 466864746 229397334 965854445 12669589 134928517 395738140 507039000 188804040 959011336 521484765 623055946 573321858 586701937 320789953 632726294 936273268 993393202 452840378 784264323 385825963 998510147 295044980 526701323 543253028 736953312 824843482 872257138 609215851 628288019 911007451 941676642 143272803 778493493 881707182 903813881 511048639 951181555 893520330 895927055 890053808 972125669 948633704 981891600 508037231 780558968 362986325 830158250 952042163 953425087 616987980 897381097 998766315 999065600 560428490 633818971 413827067 728546315 258570295 742428730 760948575 909946853 602404713 833909983 164743629 249223596 950891165 972218233 454911110 947394567 823562918 907446485 478845678 668916403 724174118 973930847 687762813 801211531 914438515 985598365 904513669 923193923 90940519 193768477 690275876 721589000 916860731 958144274 240906824 929433966 277067075 564301864 788423503 945601706 160518840 796864213 304223035 311425980 221795616 472634317 626585680 989469483 88875404 299069338 727164390 810138251 460766088 535866373 891352808 894019402 626599306 726109920 304770412 591564769 151613615 656976291 456918885 681431345 952608338 954226643 693661288 751242096 730805365 851508157 138355123 425923421 384876564 919207580 312597938 779928983 107424825 359696573 371738327 458681882 30729505 985965688 113420871 430383875 865136354 884286015 490888044 547284949 721673531 938691560 894118558 899919478 210476917 979561449 399143344 681366701 759331528 860340303 741326298 831057285 282511365 338421324 710233378 881538815 942800046 981108242 797887034 804098109 187518325 558572681 287260388 556712172 981618195 997603666 22502276 449214149 446973468 478137364 852232171 979956530 76758982 862173633 838928767 860905042 384312851 763943950 325006034 632591717 628203026 894436994 508819371 526140660 932685870 982454367 722648119 790330446 309177258 810129354 49908361 91547923 663399858 975069702 364443712 689828995 207055880 392775178 663067809 832821980 237219362 363032690 732940244 779941935 825397190 988948582 708363031 906153088 351782846 720483900 714736381 933591971 451661556 704742264 363569253 590177052 593299090 905629532 31625850 148068478 240356734 664647101 463073663 622197537 685832077 701151145 98138293 327165124 397866029 770073459 159640353 805910010 503515817 581614087 6386805 38775690 678681859 962794677 747181732 903230962 748936892 835390218 798849616 810340472 568175098 948900460 943297035 959237823 70235388 690765894 180792030 549798960 196663168 482035352 926547653 948223144 251023660 580743292 477422300 939068533 553815944 564342582 34489791 644060395 650401354 968090100 478776960 506048187 347979238 894440669 625745787 730453599 758187742 781628681 958079992 991692371 428027235 533372577 359547411 691630781 435091277 713272229 802098619 869953273 945877350 985750397 116832835 977090027 434046958 476640981 251228343 948911028 745030103 851226262 499457835 829668990 69117439 522996543 698466498 818953990 939420659 967149958 223990472 473887113 880583748 972980267 773425735 832319911 631170830 914078245 466509015 955069858 936355197 963665973 766323191 909848999 533849220 615944651 481494715 751976268 477068274 658665392 499449005 780162155 448674159 924932261 204711879 681254665 399275327 594756740 262849909 683991574 655959741 723981929 943634917 988323554 94492542 165166967 51370969 832010669 650860391 839043828 771580324 992154892 142793195 376583520 358619692 522026225 187212521 401466372 925555699 979270440 235619526 345472629 256293434 881116613 729353504 951193239 566301040 702064159 668385179 977817692 711881582 726468294 213165460 389794620 655340737 899577679 712827211 753871967 414793712 565599873 41392550 159482380 927059740 941661592 748855609 955252260 981633618 994781444 990078055 990478441 9873096 600575638 645437539 805588671 446607210 677735862 535531794 590034453 105245609 156931878 838599296 858362868 369746767 724192225 876410516 971526961 76915799 107172711 301275053 832800471 622542322 840638129 553270008 848909434 232888660 497646616 451130429 511308861 660884277 867047166 886413828 981416659 353103703 670056148 827849055 853070037 607735309 826831078 629462705 757831891 215438316 270219097 933096457 942573971 134221393 635138500 885549418 966231106 528963295 776096649 583658431 768700772 800393372 957382022 238835507 688014343 245873927 590116291 421648733 601106402 347278670 446507154 127832181 319900931 507866264 983875322 738714984 972958670 161097881 973853718 968489966 977421567 227936670 285042346 239734917 396412058 371738322 600122817 482478862 516114993 895103974 913557698 845964627 992530267 678119887 983888931 664507473 798207986 23094717 142520718 284716688 971118033 191798538 638975940 281779808 631822351 73635632 623973570 227960848 531290649 432764624 800663935 324156733 629083010 953230803 982350662 887028164 981973395 618688168 874605615 767989983 978969940 956164563 962440153 817567559 894423800 460978271 907326103 768603402 883605049 333292681 659358504 342002425 404125899 666018868 668264417 821992689 896185258 60410495 592448048 982232263 994661826 774434621 905063206 957553889 966852586 606805196 782381479 554527630 671987569 812491498 836412614 420963855 444278532 447340179 694626816 718150033 995678406 167883689 722248665 385470445 903017726 850070000 995739014 919363989 923491494 187723135 795630744 114304259 783131057 151893588 825698737 957638162 975520187 147262791 854263518 159472517 629482891 237089778 852240217 392344210 455083847 211252328 864725275 347064605 972787337 249244268 374571325 826497422 850874941 385568282 879855342 789457968 804507748 519894217 879550688 285994129 854078144 903987302 966523768 736397903 913051368 561037546 878754120 736080009 794357134 438942953 727151243 49098408 406818490 829014072 900229585 410511030 921200810 116895507 317523645 577777616 956728722 501878264 972454527 830197180 931602218 7205116 802491404 848849947 950328998 628637294 773425948 519904117 848383031 875435942 878308934 717516787 897680087 72921258 870969670 954512049 973116865 122135238 293212713 331293653 943308903 88342961 535748088 266900134 764583863 961803627 990596156 735862615 790311768 804642555 889918699 933464339 971409376 954139164 997057055 193436900 873391435 307788750 914625809 285096841 298422406 105730560 920234267 940406342 959640519 664093010 757947860 230472155 879450893 255594591 382260645 292513378 572574925 976481944 982986531 910571726 968853705 866620529 948315679 98223620 377031157 182001896 314160113 203338955 720664215 312412672 778488753 484677010 662318279 115797582 626252938 806612059 955958306 686219921 707068641 103580897 664432530 936550714 978763740 134987757 884808890 186849946 484094606 545810043 919074172 91293923 386534057 401440858 647215502 222180191 232961570 389137156 507386455 716441638 739109799 6994755 788705509 477693943 485410929 771647817 919084303 322711420 451133175 919934199 982355036 212961431 851521633 106126101 909503511 335374847 694289009 251895851 941940429 9920737 874129237 997793917 998310898 917418377 931705640 92503571 589422545 248389705 400263098 997473729 998074720 264828940 507478985 308223234 536545080 414461136 426096641 464969012 567085956 991114797 997733054 18808720 350935002 147275889 466621509 196550398 215574464 108563624 485451049 827575597 884366789 450623053 539385522 501252261 570170649 379368214 567668238 73526359 400913416 968573839 977547153 114849097 276283378 602458041 978170667 390746504 462069041 450769935 601995622 926879599 990358898 791753108 978774278 24245889 255893197 546300086 901155460 95586843 651948548 594855713 851431751 327419408 850487028 230033078 776681125 256090263 516756739 933268067 962265746 240153645 373408388 462844413 473667953 617161 391891127 57371141 704309231 888967786 894150284 178325849 764148849 427623326 850646222 722584592 881263934 146613025 521958090 313622416 356155009 756246770 998062493 77655178 750877113 932704463 954644836 689006632 951949612 969047317 978126630 146756540 368027818 920013929 972059043 305673024 327414592 329558566 333292645 86592030 126068465 964109629 987830950 175490280 203948568 658389342 902250284 723471482 926713880 98975904 309934537 749543795 791139449 544699315 877393447 538279726 780061170 54533562 920870373 848431306 904974859 732938028 758937780 31519465 486894765 617317639 790598415 418782369 767292902 527178126 696455768 265794944 832079256 42348040 200983471 699220142 799583012 334070513 839985251 665165458 860291070 607718298 737941977 372358341 985778461 547395645 667845432 284729901 506831474 805257245 909139665 672267839 945188929 948507199 998441522 731462761 771985668 510268753 730102926 835608151 868019489 546527368 835037181 153049769 385646089 138564505 749990138 699735283 887800134 799404006 846162604 367710074 549207939 915578535 932008660 837788111 882235925 896572196 900950663 815698737 980452182 312210551 609591853 668448301 803914803 287539683 932388190 954078229 985644557 827417401 958147711 925007324 954147966 230269053 956341023 538843748 853243376 393829127 498061321 429616162 433110758 911275858 954485112 849005916 851558407 969815918 986142551 765037416 960059963 805010406 971104893 745879445 998628682 257502115 859989935 667854008 690181784 513665689 976778450 985064226 987774376 314920165 886112626 544639168 919623349 95453398 181147894 662966443 935192339 395954511 831653031 388750412 868476560 549358311 562274883 987463151 998344038 348222551 410978402 283087483 361404280 775257311 887638833 829030687 914402794 445029127 550745159 73605626 941061666 809262627 961660039 735092150 841026811 346808000 619806176 668592017 949152761 819302103 967583915 949908310 966837154 527386228 728173774 757715973 830290333 763550326 998713672 922296674 974936754 741432475 891515333 259857182 870570594 306189503 518317494 344160980 897222756 174070173 281495026 291172168 711228164 143518446 287085637 192527344 235558785 297619944 937306833 993806179 997832830 585834609 978015478 73139711 798979008 714584893 965336055 720281171 912239519 272697360 426800889 152431193 663316374 757107135 853871738 886388686 924146360 398661667 966830039 549719097 599670134 286042913 420388670 354405362 450651989 973565103 995089750 308124869 880572825 424402672 648267856 165910933 831027157 616397725 711064137 191781928 619458137 484229290 697647434 232128992 631646151 180377991 398926369 746415955 919943321 3875260 78060201 7606454 826884715 893168182 934024895 830576711 962454565 79506753 542388302 669744352 808684938 562226481 741501646 640788343 786108459 573449892 974174139 534219881 846397546 860619461 967927361 424186840 522828041 174891719 838213450 643133447 933467127 910114476 995089890 434059522 830394640 520438946 871244111 963910946 972701497 833551239 855158863 448932713 588835122 209278929 594263186 386689861 572303609 751564261 839829666 617447808 901887229 327711528 421416057 571517237 769499712 409997412 493112154 369886253 585334686 869416358 885871293 851700104 931741738 21452188 439842425 547071283 600226509 835074136 948491940 658545100 802469395 768729387 949909802 713903749 944017404 203851734 685979292 492674155 963730966 824315552 833507918 251745096 966708457 787129166 865911564 911866923 940324085 739825989 904109146 493455509 622953548 397866631 849694419 701612858 795469829 551463581 882568150 941224978 968888195 663366399 815277754 965742981 971095056 522449956 721331938 614837869 656274735 269513063 374358429 485029870 884881599 605555262 611091480 26363081 458530879 612369872 789422084 412050705 672478424 196371313 778677153 351201856 826164787 442808209 543685694 362858864 714908050 784111442 831404820 5158787 261537629 358817453 451264284 708804803 887361429 427969573 642957948 193046559 446553132 821893126 966726220 428643694 675358822 359246612 476512435 15835100 781169020 331760582 924342489 946962857 998549103 961367264 991010580 45059470 403855074 560950448 826122971 481969781 631316722 836772581 921835018 47091869 121051278 377594610 707022537 62873165 434099047 533995922 621152744 107944305 965683070 442640867 865243472 599654516 784577182 33295731 426327006 681627703 774822765 82717604 965654995 675715972 823353278 423806017 667298777 330034337 727932970 564864703 575029234 72258504 861724093 325616981 479652865 384024213 440289337 570335752 645592268 55651431 770759936 318872730 616598329 727623353 825970084 211148307 520427144 492788710 525641982 59144985 144535550 320957068 693625437 879213400 880643960 282492066 753769040 297477791 794734090 514059832 683606555 867945806 987505539 988536191 991565274 108798996 663807741 623685352 712289335 97895638 472447014 560206015 985604261 237768424 559879352 273519483 486546937 173605479 212402246 668806602 936818881 912438044 914078028 260398372 311481803 513891894 530081619 817589665 852110914 14551902 633495224 336095180 926943543 816977128 880028464 585749406 597938475 117023239 653438415 361943001 669399526 814802840 966941755 545582621 936646106 104202149 533579724 579385589 696153966 254314901 930306477 955513667 968084327 290691052 431032147 273892950 791397255 374388797 480647657 826244035 827376028 505892081 603330617 65876388 510107167 824502496 827617645 281657370 964221761 599673512 982280412 588885455 806417950 927838190 979774459 653949881 791490217 481493148 909870267 604904075 664685525 815926523 877352914 95138722 543085387 740689880 791426363 576795733 660839534 422221117 809240004 124876200 555516686 75174577 434433567 487861798 584004898 123000571 684865148 668739346 924661308 241887232 864484049 374450718 442622284 167250586 520930266 583309508 820782545 354041617 776629035 333218807 542460449 85176703 148044160 380808451 528566587 83867774 674470724 429098038 557730053 864457718 930611616 575918149 892780759 382960921 932377203 649839532 653169241 360526579 998703133 72284577 640197860 230967518 860172482 212455300 753284749 141052732 563357943 955744267 995359275 204145579 932919432 814228434 830891686 423695224 978819295 601607034 779553935 977120631 985685586 665961762 977002353 51289542 484348226 78391291 664953111 698695114 789274970 314723544 606806250 534438627 553582457 562277659 757920743 911098257 977436527 150852746 805574420 497575744 649179268 844267184 859001061 575813007 673322999 874479969 886301620 626942602 826622057 489365988 671250992 418953829 569567122 179134884 894342053 312749596 516821153 840362038 867088111 781688458 819933700 730909989 806341652 680317600 743700897 688773072 812929521 278065581 968089830 321197238 337125580 36271410 533291077 200107475 730490042 326859857 926333891 677074190 778218366 99812567 622224423 147864279 827808643 187756556 345751673 758774936 938141843 885058391 993240319 837589539 971664334 151451952 242739752 265342366 331681095 437007470 542265829 544177831 580255935 446884189 467682487 967931646 983714282 437564163 610783682 716175134 943616217 875750223 920963294 449774495 680490622 142218652 760782793 396917356 841175354 739722645 982262619 915877369 976052453 564660635 982753579 456784533 760289692 325884794 756899806 946333453 948200904 184018108 468877495 966058080 988368411 485586946 989915865 482017124 592292025 15127103 119353744 389496859 757289166 161669609 683904838 618624069 618945054 87853061 473615285 1255559 769501813 581378280 704175623 959345394 973527024 914114198 961156076 772337552 971152576 523176383 606029461 212516248 713487873 128966124 267521224 140666564 224536549 577046544 972779134 882252329 947139956 87823606 558041100 141490479 809332992 716029595 806806572 416365536 891763776 477807794 677269954 191173738 614354962 357059416 737658671 900956098 912214576 995382809 998370495 767436014 908336192 189941569 199552314 600437192 857723105 73691856 562614002 386508783 951150409 679821915 800883014 644467298 856903589 259467263 486152569 573593372 850840128 648162421 725931990 937542808 964477274 320334988 529209896 759950791 978016129 575905222 821844610 234772549 440681888 82925495 886681000 72187700 256023855 490602581 643283718 916118138 953047045 607372721 849442744 75842638 360597620 633743936 789473902 974244103 979971288 835265049 976804930 376483407 629257793 105425386 186294425 885398104 919335893 692002057 916685831 233368450 776741372 243558177 809706324 343905178 799478555 753833448 898508454 657678524 960615440 877129550 958819464 158227368 713944844 170868501 631688302 383568647 387562681 564756452 659551969 37649886 750872545 863301294 946264918 840912848 909916896 922126681 931892649 564355760 794406642 659781264 889509976 388594614 493159278 845179372 890902934 481327870 714641571 278557095 601023218 195271370 298214564 400791123 705671635 877210783 990962656 8438454 239696227 981126043 996135507 419228841 804961248 152848793 771753696 139685524 748338009 966122618 994451711 765483797 796055459 731276262 831961370 945943278 980503636 700610003 751767368 987004049 996770313 722193433 971269000 533827378 796766700 41396429 589130399 962529846 995840618 189272529 954907744 684345756 803177120 361249538 562880490 975777875 998607698 397357855 429740453 264971678 351718702 601940775 784989670 251220118 609442103 348451505 655224302 626408467 866469685 919009406 998005304 688637937 973858378 455558613 757308390 474250516 558824719 945841502 959285933 420148851 661285768 508011527 767913719 84671413 344831006 352052896 589812471 509279570 954970051 373179864 710047262 992753863 999088822 830251605 971575178 209954678 628746853 163432986 514327540 941674160 967265060 572814608 820962525 274296742 863662380 732464712 921932199 248633341 253604391 963764383 995644988 93002163 760756607 197863399 494721495 97647779 221182305 233136167 386577354 570938816 860984316 642273989 663866472 531690960 854841323 726422191 922969447 703892796 774878559 877559929 967491430 711381075 849865472 197933552 433937939 164495604 445487439 305588084 603100070 796984770 839790908 549735558 944345029 521897010 745467486 387303279 951487189 961663416 965937164 199146488 346654383 920759481 986055085 806805104 946211076 219451121 244987609 29527516 740852564 455766005 671362933 26211327 976472768 518057694 823078914 756979289 814746218 17827129 807828499 190481282 274792125 454358597 794992421 879292397 987711915 562629072 594612410 173741644 257329203 861561319 974209043 687960595 873833038 758001548 875577576 717516537 757232615 277549467 979244363 662995052 793125993 811972085 909479111 173434000 389839702 222209140 792716459 592028399 832215127 104487667 808468635 736609305 862309824 277618144 494960203 247288978 792842487 174200556 965566694 494773651 531853854 58017295 92994209 463711414 697955709 565953043 602694590 13154684 806784491 898571228 972099137 994781756 995740777 149115371 703077914 829841013 889092009 671195050 960066905 497362268 746304223 108949418 276499073 248218826 495645989 828182285 944220210 923743781 939862670 665598197 732735500 388025524 839756018 937423889 945784292 861434918 999381546 691211261 860927442 38268807 96649924 846281308 868699166 463442712 758675087 562489948 627944513 265078032 280688560 398639037 731748743 927239615 927340950 130280035 383741634 603215410 697259304 8061951 750658415 583204254 928696591 864165345 871613755 301740488 404927368 593512209 830201036 972342219 989381815 106996134 472587316 813829281 861807441 516415706 814671913 182641490 270774066 626960313 757502483 496808578 920723094 737015659 830265762 224947694 358301000 60370337 253375974 291803297 940939751 637163737 713046892 825124082 879388652 787393717 818042219 694474557 916960973 291044697 411007822 148497157 194481998 258887237 600786603 597370297 650340115 242414358 947594599 139711447 679850132 287845166 690932622 303638689 967597927 688314897 993705884 735006990 804954504 722278949 917522487 503708224 813465477 946880132 968849465 880005663 937547669 468397317 993581559 914414446 928720801 577973559 742630230 989759335 992351129 91951865 374075090 49209596 926974843 542101035 558648000 222044205 239274763 875278858 998040987 978977604 989299641 323619767 763998205 652507665 656935053 833014141 981057784 576420965 865164900 289683165 308775375 946764304 953320597 402789635 505613398 539838807 944695692 307859914 665255755 217583863 922233644 490262471 940216801 164532857 182881726 279283304 828892009 49309219 132850483 602244817 920892161 529532208 580319741 177228905 920746006 609066004 699051625 335103571 892360404 17038713 162255199 600656154 677882874 46721703 835756319 497957218 973836895 220350538 423697326 839837772 929598473 296575501 415056401 254397492 706304974 970566927 978402403 463856521 995363143 343517248 636246326 463557129 634084143 554014764 788233836 469060229 652023285 329520060 919066642 906622348 968960249 352270542 758299324 571464924 639830122 897312190 981388031 647687093 722789134 463999270 958495954 647044140 802366895 588606325 964732583 285445727 887106191 300312015 831093669 846143159 988127400 336340832 952821995 391619041 703926613 17453316 305722144 715720858 762492549 847152087 947351728 140232726 931376241 974157594 996035375 235484250 926160296 741991648 833614983 773964237 932393228 399274806 905562784 26624433 95388110 930498324 947850073 596446211 769140991 731216029 848615239 499676642 571837493 467574252 617880661 948806467 992871758 20090814 753027021 713072568 744012125 499941496 526755388 848278920 939631337 394010435 586741020 14253680 846453613 166443115 419791333 793800916 800363663 234346137 963298741 863876983 929276814 345667009 511449535 400917063 554863673 578460942 585483186 785171144 793080368 616114133 744653828 666732150 749059863 6245368 191966100 279938834 785909288 938769918 943143631 759403483 841431616 631823346 632210099 698639221 860592119 462365499 482731761 166808194 483477874 77549016 990095199 832489249 898864356 390120226 490830694 873643896 915365843 644039341 786469527 328872756 764857111 73618702 97988152 125603546 513549428 317342558 856659498 566695534 918590566 700833746 928886237 749882632 849042654 703172123 782243399 89986494 856428477 472665058 916717759 329733998 690815564 851961791 982706861 129276477 790776381 783437347 906652145 357930683 480945265 974863068 977950330 867635263 868948528 794990367 958009378 851816776 910714122 837696417 863765342 440374703 953411975 726260141 820294093 369973604 986716574 889456805 916362057 628050153 807192758 983426110 985831939 58667033 526894922 98409905 284041666 301211164 621858162 422471710 507941850 913402973 975357167 472072254 884112565 387270789 716904721 592842661 731824811 807667126 948561653 125457414 714667776 52737509 560040385 144582785 656563480 711299766 941688709 927090041 950886636 47461671 505830220 771766989 881967927 758085448 948395724 805738343 894804885 878991240 907873196 514424773 644657574 689606483 841572152 481399595 595743739 177715449 947285704 430406065 767120556 461270469 854955955 854153648 954249797 113450428 827655982 118364801 153663749 357004567 991843328 401029734 622727292 426921845 787593089 60592117 725254628 560192257 637893378 980216498 990030488 302222246 887837517 895814734 919286335 816382118 945571559 384750769 835481818 604742499 901232489 271664376 378681444 696004731 869417748 532421737 704408880 735539322 844278138 970158371 971665872 869621377 882820853 735523807 823052820 610657714 972486187 521856367 644253237 756931736 877354295 499661699 781507136 754102812 842817496 947187022 974543551 448563844 835017844 540137072 726665878 245335819 347911191 701842114 735693190 544493665 798895503 604071686 718592319 502634658 822662078 75066710 924511576 29339381 185586878 491468577 663867154 301919919 580494979 182496587 436520923 701922643 745488630 605410857 741262064 558900765 685126997 452964626 963150929 191417402 977624440 107795952 712264782 567773193 745485334 934115408 995243777 364041151 790058087 8988876 843939217 496617395 919365872 302110895 876831738 285589879 505589008 698649669 873942147 670723467 782730541 148259972 993454777 242878310 416965177 535726238 989307869 339014373 626548666 230671113 915161364 660184567 815324895 278542027 505825689 943750046 975621717 551808716 745400583 113600448 864463858 567185056 572272117 723244885 823134477 445191084 946792150 388338538 501643131 20490288 829999053 30295377 66574374 926542633 987183645 548776177 915923024 322754455 527262357 896754090 972130498 851666485 912890483 661572131 717127290 725740553 832144585 716299074 784345393 515020588 640786031 425358902 773759975 188722766 516708641 69089319 834002518 239783669 247829014 662967011 724064352 751013043 838928505 552036758 741227918 411526598 970929357 485455436 816080525 846905387 964125669 976790586 987227873 237966894 634623967 390569900 789618209 696873061 940457126 682406049 908153669 19031933 231324976 66995374 296837187 878231881 961305175 20600433 927608620 454238823 598197369 116477871 801071382 874381740 884418838 562450948 777621629 943534752 963124926 203812706 953143652 673759434 856876584 593149133 952865823 555917033 923809054 811281104 997918925 720664148 768453657 349882309 591486848 199543408 532210834 287733126 952919790 818025609 844725747 255758090 842135699 239052893 602255931 523064295 890646674 12449462 125124186 187612959 966820513 380345888 782081338 740568672 758527568 910364570 965927503 637783749 817967738 967414337 971220721 812787436 958104594 134128453 886313147 398235596 588093962 542036222 557195028 868631563 962488212 180001913 667558735 771474449 958971228 434876736 525145400 125892078 836091632 526959565 702374864 119155016 677480162 183789906 430101573 797570184 871974690 597581337 945903159 984120398 996286170 210495437 973804015 208551194 850851041 990440445 992515012 285041476 779683411 434631743 589402056 871679196 991876659 940496639 970481413 10265145 964014765 486088974 536507631 356473885 819257479 33204342 501532088 210234254 485938637 250726683 649737634 410123905 958284612 446617341 997950251 502712690 554055265 107035358 636925262 356828261 409620184 957565017 997053912 786144562 808071116 351989498 706320566 207552400 769371921 780856171 783546599 628426554 880928973 409468978 615262039 773568289 887319197 702194700 975799043 857419833 945441633 393186732 608106671 631017338 705566453 423777027 499268140 486515991 531361398 916138998 943847368 234087734 425033093 968410557 979445990 13095560 744817974 52691580 957794447 544226488 833752536 174204815 839696820 223252028 993522949 279020762 428754107 695626228 917617480 682101506 769396744 719705006 921982492 314806262 573370183 431400728 872768331 601582468 835712530 783023749 918598118 906480776 922140703 456135466 739188794 436526066 455216739 972635646 994412564 980448420 989539959 986850445 988095660 915569857 918346535 978890750 990414511 968280004 999081840 911034381 955058723 35078530 652565551 66749737 486284206 865414659 873682186 389151601 578121963 80788181 204548680 155391235 424288424 167500481 371746644 15133829 930339071 903234938 987047341 868263544 996022249 210494838 384283065 88064150 531327104 370437983 675587411 951283402 993734583 452018797 516157513 619051023 619379796 251962108 929239510 794925545 883873211 314837841 409467401 858355762 889327982 939492367 945245742 219804358 393203868 379706560 934235174 798209713 848673711 824678005 828476887 158775940 421111174 698215575 919348436 612581255 812661702 180387019 920316374 630064994 822862445 424139732 545014978 969397209 973136026 839302479 843247106 568401998 659055810 926536470 962617056 739721117 817435823 139842100 376712809 4493701 545629559 375544093 856928537 444401763 531752714 98589985 949780486 516351908 975087448 488757925 499359086 188579026 824345364 473582173 543248976 177318079 916762934 244887439 381213248 480107925 863493555 785624338 961664194 783860854 967869958 989386687 997586697 571943894 749354698 853393699 863618262 76053963 367208450 293573596 409911239 583005732 760399067 605587264 886986091 130660356 964369079 877848166 967049491 71709203 883847844 323406243 971054924 766927411 771044876 181430534 601945082 906784167 938055679 343755665 563663499 150247174 944283854 245507775 313745001 510718638 893505218 73844218 552339135 536307386 841865713 814229400 832727622 109977954 910277448 669028024 991611284 570180455 663470501 397706367 951034282 416004501 977521168 29615052 416875747 866198485 897686360 219632893 919689399 408499465 896077309 611865810 631966744 466766270 885781930 531195808 720017550 450938043 575110195 881263506 915587191 527477005 595710567 294416820 801450563 302263920 539873009 704930020 804016551 919557700 926619721 89017139 552600751 880562233 929663072 808992803 950718317 802880015 965581082 344746821 502296738 923725405 965817428 958298688 984994359 605326267 704694767 689704759 975873751 413088523 563756773 80297575 902652169 573678406 668352698 543983018 591753453 792786989 880386006 691723672 870492155 700994745 850703763 905099448 978066041 459969517 627950664 763437832 970977522 893800504 975442159 945427064 993803807 596302157 739513666 491497827 646134664 83972387 682989632 33735376 90109564 145222691 230465810 110317692 877709074 584816489 994353060 566838033 848017835 790253492 970528785 589777479 711099256 544168765 712243177 338340943 817388466 788625714 797841686 751158495 801220466 416331358 427054669 989638220 998823452 934827816 945982945 575998367 732683029 665269051 921205804 28090313 191016541 694331738 995864036 486889800 559659194 917949242 994336969 310247042 978385146 603718382 866436338 697723504 963157219 741341105 979723361 693438835 706617814 980343499 992246417 770016664 861630262 813203607 897829639 174210900 969994372 987309220 991797004 57149109 937759495 21915132 691185289 659556059 676337434 64401709 889106915 58929033 550548813 656740958 998340335 473250405 771210991 26059940 661444935 173637679 283756756 590643211 694325767 859730566 976817357 124974826 835911200 46987050 48140130 104900264 827284829 478732285 481402019 816665428 841167974 359106093 880839578 911345494 984139527 458592149 463815778 447011851 920096371 73612531 888940360 820722937 855996547 143456531 155595335 865376753 931620534 289164562 557303828 845871252 919462661 865338825 941073667 473958075 998444918 159057487 472326752 558850336 856751777 470268969 814976151 855747299 880132390 367373126 936479485 489623192 601347740 70775334 737879122 141585217 791137607 769633501 939839403 524265802 954865505 836523661 894527771 290650374 869483381 737866199 964387641 718932396 864237610 204012229 365839588 817869496 993512248 171838602 438471344 934494640 987443181 489699255 739694940 165371272 847649948 471183574 651294556 118498069 732758385 784656899 789121447 512421087 709261668 518174172 961002800 66510243 859245268 954160581 976097987 247368439 782385498 906658643 912944917 574043097 814368942 435573251 613773622 172486837 979760348 730308819 923208695 182398512 997739942 735518295 944640220 886646658 967297460 207282824 524063920 986578699 997986782 896497385 964192913 538309137 658090045 52972099 943763371 175265022 895129165 605724602 640549410 345296710 775137124 940160926 994025281 520489336 668921974 200152926 234898148 175951437 902783289 76255325 198060373 409906220 771512391 859082828 903153851 271869600 994970594 262754771 493754476 33560032 676987712 325915439 752763449 166624476 522986373 948341351 989027441 41222086 958306497 280496029 719768424 625376724 743528018 279643268 468678305 387056416 549777824 956567492 969381431 290917062 671552181 534634207 621412027 948607988 985853546 138377446 903879676 544216996 820275399 735863036 815187993 928999374 936889345 858834157 976399164 259644187 300804580 469403221 566674591 102558325 391989588 13691619 858597813 786879643 877137117 825990175 978351832 763006754 767820810 355907846 434919749 433768772 616506191 778037191 970438694 4479531 170685286 745842081 876273726 272049188 420379199 189323446 753620230 85668104 296688329 928416699 951374682 814146958 839341776 59184514 355940803 745858990 795085511 515463979 992881664 908701962 974967208 690429423 823082015 418033651 975529232 194084271 365476259 245618198 560111054 507955202 744455960 945484318 998920208 110455563 336836943 282090055 452211264 553239673 952766472 719977077 808941475 191672091 536300953 661314565 820223715 255619970 697883814 544907583 596381056 589022304 977743291 34115187 783840012 995081548 995945956 224223570 971168477 562844929 827658053 197988421 341423319 165068987 945276388 482545429 752530765 359226253 439242465 797558795 823366197 399107699 800005370 136938097 408119365 723628228 786488116 893961171 908124724 895932236 907359094 626129156 899033531 776403787 969421786 889437256 930517075 157286394 564042354 340609293 763025717 2288572 56867080 503530106 644845726 988229490 993011262 99262262 373826645 793480015 856802924 246566057 404409583 716297289 759853625 241666193 773245919 383640466 782362899 347576174 761910317 652849995 759135212 873318622 943105292 798782536 810128141 524181517 868831142 788466667 809485277 324466910 662226720 993359066 994158448 93679341 638351313 385579153 777404847 389025097 928907796 93659113 531011778 700868402 996118705 255130530 834405268 838885720 971139362 644112361 827147298 722109389 950634547 289294131 894474973 168217563 317541151 540606614 755507520 977180176 984012778 461879512 563839083 670423874 672959334 226507355 680470492 601840257 626007098 359457956 396007671 119711864 779601276 366724897 877513923 462482778 766424221 762864423 969295358 892384724 981511620 106825552 396550062 256432279 751473833 36068767 584699320 346815469 376043570 884045283 958513798 820489738 972347624 215130696 454669435 714049449 801811367 569060766 801555984 454307568 946599253 914374126 975659267 746118945 771900874 415000852 445491715 85300022 196860097 740319651 940164087 165881585 887345008 496592761 942207821 745298018 979096532 244029277 770422604 371970885 439864225 498530436 569663156 444260173 643293688 915010555 985531658 163257567 647539414 258218066 407269387 423167025 513318595 273522662 916019582 516710583 991886525 454913591 788239294 297077006 437966498 653305175 866253761 534629991 606610940 358112436 692729397 661295495 924804488 781484393 817396996 965549475 966277099 598439397 993709286 849725220 943115760 544020946 552021220 315431766 570969200 395707059 671732182 564344658 981772656 334890875 547243081 613612304 994205209 662633204 712071859 40317950 855933268 450578405 688232859 311254844 366964080 834323140 892710291 311290525 625549785 421798755 563919506 55824541 268842301 829229109 909126019 82144403 396132220 198099044 916146270 940218976 998149988 39606877 157498550 997923527 999000403 989482120 995400464 863055187 926237434 242267799 411824507 402581796 991468371 684146198 876911163 149775156 182555516 489303277 528104144 112501219 419225578 611499339 802667159 56808646 952347740 934611919 950904448 719891185 927070516 139887141 392130983 410209143 979178034 359403907 933885675 170153821 500434406 891538435 896573172 856068171 877675188 891523383 920805891 765891414 833514934 670636972 996976831 198821383 803882239 444222778 894630765 636036472 928486885 902707707 994944377 197363777 744539849 589803405 772839122 560010765 709255361 960307202 998434404 848636618 956146520 186901449 437800923 878389108 935748030 741164348 896376243 970595251 988563602 537819660 548273828 921372212 958957095 321864292 337007374 131112770 628586417 78514781 84388652 147597261 703378535 655374550 915313625 413369249 883749306 554464844 834617910 508736783 628039591 799557124 847952478 893862660 947382616 89554039 727676600 887644021 942871483 321151474 506833395 844358299 877886483 530086586 910801570 28556932 379200154 410211438 480941178 298268106 416569204 406366268 669533451 790555170 887439244 289261534 300613490 245869858 603479410 68976170 643212145 173624657 457832342 445582792 975500145 941373086 987867594 491942701 542355232 399191703 852507410 601191121 824033387 90825283 399856105 671610594 846052264 183055062 357580615 49814348 113361623 337204988 865030823 447665404 823415575 508675326 738364359 624012904 971093026 782921207 844947622 740459876 938903872 388674246 760656647 554864703 590123442 650340958 988222281 112164040 122826871 444323278 846743562 139192764 316337259 86372958 406212408 7042179 44469415 527500136 759598905 447241663 958702782 678652871 787810970 245192147 829412114 570939420 651979039 726281352 950714693 981362505 987995484 367592517 436850354 852654669 875529358 55480709 518794120 482461626 982338804 285529524 538685469 755665069 763292643 109421682 773181107 548757843 753906053 639867443 692226808 214657847 843661437 788752251 964725429 325002897 713185657 902108124 996182447 698538710 945325574 392902150 705195847 66185992 206924860 474302660 854073605 148517937 755856786 956834450 998937631 951138297 985650714 45626256 734917631 117975375 832380002 75565865 770774805 300743248 774372080 459424913 586844391 877738678 963729358 515322240 872131382 313394097 343686729 911861154 989110816 672680934 832637596 466528204 992500117 822222842 947863131 251471560 682025470 903381247 966728226 514307410 672055097 14643071 551824222 453157610 929230820 470211939 493453260 361834184 515741629 231770287 328387264 931298011 938640425 919500186 954237762 56277490 70805488 238414157 338814836 985597850 993809210 176067167 434641946 358328521 882757792 258680521 658908470 633173753 857343511 667966571 709748186 557673615 787196607 377592945 952475270 757880450 923776787 593712348 673243847 237340043 443463149 465825883 943541315 217936185 912815269 660071974 772915568 471970436 949143345 193857390 387122333 339892285 951064964 660989729 821598377 274132102 862377926 173047413 519911661 139202776 329505041 948984310 995119943 673552540 813038489 538052331 791187134 664816566 989441265 77823229 593319046 830280148 889683756 259282377 442794419 916205116 972035050 523661853 738129133 19933001 954257123 272673220 326223134 562437329 738749403 687292959 700728921 16668315 968755709 43452232 656944330 532987030 576511895 842142399 928238627 368327253 672847147 587746319 952414553 125623919 508046188 995329933 997771424 868497170 924368590 333162714 725984560 473022448 886457760 566589550 741662010 413889970 851913201 62766653 636569385 897905827 959700032 962485265 969521896 63158977 536432762 627570078 980946960 523028731 587815886 28416850 333091629 882747457 938445694 644168509 950660144 740007054 961467078 7803311 950968801 152232673 350438104 873689130 992375014 88153898 463366971 262667037 528346564 271297253 535090439 555537038 954809217 577056962 930360452 614364007 826548373 615096982 826336177 466886096 638702131 498157755 729166008 936323021 995134969 782442574 939135870 953508870 991839155 111952442 281219358 289574356 790743231 287108149 555274118 484799389 970244141 459066969 531066260 193537424 393739791 605847536 777962815 984213281 993049036 802338856 811268545 108326384 567022075 76671865 910379723 279241881 338117277 251662564 540157785 32949600 455916407 239485985 364198764 476798269 605254555 48814247 451971775 574405940 591963337 957045366 994805232 286720854 937524074 531030330 988644043 384671201 896177508 560531456 911410721 56292621 653120778 305433599 651624073 94046610 618413568 201179675 782801350 10183764 728734335 421421810 495688477 33472155 982426856 529916764 547492963 502638627 742298175 44615102 986747375 927303182 944112451 165644682 285505253 813290006 940865461 662613651 997451620 531939951 609197914 980075674 981044916 313640352 552264339 791788829 814977993 147528960 309540996 494340658 653501727 192703213 523750745 363532577 859352424 358304606 877979509 459074272 760176212 918162489 955153053 147526495 478167615 443747227 643742402 971834020 976290107 164899303 922260277 663286735 838293020 151015602 847431419 795172056 986987113 858851357 959310287 604541311 714464212 368222648 599441660 87660106 333018447 184256545 623132040 572783384 866851744 602089139 970562664 593155600 704188130 217841392 340907855 119528083 391858693 725948746 830455328 732781182 863999103 30941182 44082316 483377161 834082840 372182482 439085521 967558657 983981226 504945973 740877420 381585716 605131232 239376646 841206535 749873371 782792327 737675207 743950731 359827591 546723031 588224969 721019289 177360058 750473242 721461043 856527494 336420375 764606408 654431464 888374051 53076699 130116387 555142979 870225018 398440944 875400054 788081766 824833457 303242177 461142639 502319003 589935962 913732010 915809985 948542595 993420475 106706243 711199043 901434669 930354462 418669634 858485933 860994963 907134054 866282948 944195567 625606602 724045770 96747532 361882059 628987789 870220990 949385898 956901167 547647262 700972136 416059620 885091840 231272213 914856561 895541875 920650903 187179905 489345539 589186765 950756442 747904451 812956456 424914784 623345970 739513844 789854470 808725545 846563877 682682101 939088214 155910774 968734741 430412940 709001687 863526538 980447756 816429954 885036070 165826960 944329151 732659003 883510167 402796492 886427689 477247708 735190419 376277298 892951639 397015577 859883750 816056387 919187600 512379540 947397817 434619251 633154936 311430628 525674607 81693281 372677343 797967117 904925464 660224869 666002428 855111050 995970508 940642362 976301196 85153654 734406616 884991199 949776880 590015530 930074873 121281281 568992646 50532 103487620 91234507 184641444 22076319 670146436 207570075 907993623 766379697 844321570 640392767 869392613 562741432 991095996 311956420 432760512 138734633 977929326 222274062 796282796 983685012 989954829 949790718 961492188 15564133 558508821 134053504 737734150 91812908 644884001 861047741 899332210 476420070 718401804 790079363 980496385 797915248 821861812 763390543 909266273 773544627 953833244 853238469 955899528 879078857 984150429 17788524 561519020 90812292 321392279 468654853 771263025 899383665 986907845 233903586 550771057 412341048 915748158 466791291 733448244 700557918 967245009 765156920 795122919 249420845 756835970 566959595 863756608 252954976 837402264 396429006 719464835 600807591 968912372 654355811 928630293 915352024 921318597 155293414 505378917 866494699 949223140 156911031 518334233 711642127 755892328 987444112 997191758 678920400 956952245 329529682 404338018 315433808 396021279 309243436 881434217 95069935 598104321 289416661 927433201 670678219 864188329 244510183 416874052 193215904 312638253 254102332 392015137 848424271 878426373 280828972 689023003 639925599 806518765 94742231 235025761 322449441 357683519 295007139 735683896 660820948 669368641 823885610 881298873 986798348 992374017 771523624 996837780 604091657 787308579 807021341 961419611 134585045 548014053 732669508 786250738 831351941 876578370 610152584 747452474 746613216 906655282 262102653 793686481 875890631 888731566 757771780 945628263 642276150 991328551 876135792 962138926 411132474 511270561 966025864 979187466 915296244 997098061 930560912 942394706 414116857 513632489 363760823 581121267 837715249 990620418 712548161 824418602 855564083 987450684 652367041 821085072 6895601 192623974 639678740 714599486 772569245 968219363 558922175 712991104 102537805 493681585 942136220 989130250 469320320 542353508 339258434 897718197 290149619 320097283 675807087 910691204 981312071 990528891 167811933 525922092 612737223 743270198 93928006 244134177 444606212 454270101 100764951 366960861 542802064 556034456 872381649 872977502 20944583 767936221 288764326 456533309 991036017 995115277 627930175 970789992 162382266 491795930 691641040 855784266 509394588 604390690 708754152 814086094 377360768 929265993 699772948 947753421 246485264 841728017 988823142 992981427 98803931 178193264 704948464 954589766 587611507 768653578 529896593 710822243 172512577 964071361 910072873 917182930 680350227 947398863 734864644 909928589 857899640 902077227 640671695 761020661 932947970 997549003 709464874 954759196 140638384 698840058 78145472 600989664 509160076 794717840 862816821 994373676 601580396 835230361 119154311 640639764 703255733 976542572 392905472 997079246 49925285 297807339 340949504 544791444 991069199 999316784 986073351 998694684 460125831 616831281 846050606 885890345 933122325 978967861 218249420 646178143 701988893 704764720 839992433 989858703 854380778 899728341 381305096 811276549 760882739 785812812 182141572 998093933 723953920 809652745 525556993 792421691 425448817 664583597 470609975 610465328 716966602 774509703 523600510 588995720 126203619 516380844 839165684 902791934 714529009 838146200 250470910 411379359 221809432 853945532 81263697 556771710 190310903 699822350 878227955 947122587 60595656 831961295 563905975 866635290 672135187 967030784 458252491 725262325 312819599 970816950 1412509 707836835 592806686 909996569 166109188 720015620 143504044 562243196 209533025 730382051 700278643 789834470 549887834 960619287 180183980 838185877 655825225 854379632 374778493 376119114 902280692 910864354 133879950 849945072 296861998 908857436 779142515 950837650 522856754 639092987 912721348 939479943 610753178 837297839 449053876 558257099 708053009 929626278 940949838 964268244 933845854 981497668 392146497 691806498 896569488 972979655 211985414 495219200 911829542 936972537 886488021 987971008 612356791 833846057 509760871 917753412 295018307 716329476 378708620 824578211 591442855 630633371 5442253 750638080 297690145 940905403 446645903 741925034 830217490 832256836 240299868 394927737 857369565 950141781 290811896 334989006 979627319 985538494 254303013 417961951 954778067 984511627 555963688 632182328 306955026 459036910 180064400 222805672 790866439 952472864 759981296 982250047 908505076 988033570 57244738 473418860 517932434 992512135 676422765 764464589 22889369 681409269 416241085 719148508 430458273 636662396 204401002 575414591 11817045 246442698 18939566 740416703 948073544 950849178 141707402 704877602 565777777 642670951 904627167 942126343 608287159 726118965 399936952 900523188 60990467 477120861 13136343 444749516 857083102 995452868 784744285 986091162 283547414 658425625 28462594 788647880 643060167 708232060 959157373 959601953 331754033 739631490 156642943 203972900 292890780 804999436 937605087 937830818 772132653 993605673 304829629 477054838 165533967 907337307 551141548 602584804 571410030 766051477 568253141 574756613 387373268 626543026 644145900 657955281 835724573 866977062 883996448 911661388 234568257 632257203 647080208 650764956 439335259 590634594 771725233 802098394 933671362 980121429 548184760 577709344 637490866 777094668 875880120 940226797 230387775 388618836 330017346 943113487 297767523 932914114 100633523 776590720 647195193 986852043 246626994 265463085 458255192 478445201 202744987 706575785 477702313 919592132 689324262 709511620 887013598 898801773 246474107 679138307 320349338 732901522 496751803 891034948 374989717 632529358 630025131 928571850 316051027 940922192 420817512 606075486 927694457 995478832 975431418 990178519 23767172 699111269 19524589 798788070 709366368 805739097 964886098 990278197 404341110 461988856 991277619 992964536 495113621 639798509 20790301 867125059 508063220 544479874 82757335 848089897 786998851 914621052 560121068 599282632 780946044 918680803 927099331 965156012 398731983 777816887 665996226 798279756 289982309 642164790 324137070 634999791 380163366 895060936 647759356 709216128 38436046 671445468 245005059 823693280 636378586 970470065 816483714 845493223 112905353 627073146 664876484 771303672 746751404 808806256 624757530 934188402 795289963 995672255 239965733 490764317 530395345 645544717 238537334 795455996 650999367 937527672 527221718 759935243 786639738 855403174 94916264 397240426 746111005 947100877 388742075 732387759 901148424 961942851 442313395 635907224 866342335 873174316 715060434 799559922 782771851 785644996 839766748 995258983 364046114 402072134 48012420 883066697 147097826 291311112 325768173 901152310 932535136 957280200 321627141 523014483 266458902 513061553 84422732 794354731 226895808 844818792 266845190 800691936 510060032 755754607 100130735 613838021 737449894 842529281 855187042 919062891 969511904 993446934 6963807 703816042 700888781 785991416 389667492 748280741 578425541 987531590 985155111 998104521 251310248 697891248 438835432 931370245 68258920 245540655 699506271 786162837 230029332 438980325 445396335 688176987 928548374 995912226 513230140 620283170 866539788 934964738 732350169 757551976 587098558 688205939 147127141 690471096 46145242 62427575 406423556 848906669 320086676 510764247 836741065 854588358 38559545 467705641 722575269 939974872 345318616 956910869 285237594 397502495 300445197 661164050 549295181 838924603 200541939 389956262 637780419 869021716 240975044 962179522 898848036 947581801 396011511 509408936 571738530 912588560 340513484 558152022 360398270 771247688 715544265 869784051 25372457 463794475 185603967 886801692 12547222 532472890 816513464 825644267 263888608 551343611 581912964 615267987 322607659 584643374 297517252 621514105 176841927 328618154 406901372 960494072 367456429 638386124 38280257 283080730 1675005 541054243 995731836 998373472 614318204 885924696 116393862 949433199 816509372 974369965 980798677 984417844 963839630 976152055 739766350 852229503 716816918 816200629 864720523 925883046 482878434 646868690 636752163 654166166 807971015 868377035 407293839 538076785 143751971 147224855 973837752 985711888 934413944 944809007 801251625 969518371 7269805 347833064 16917879 144347723 809118443 938272822 279983119 890233035 257616405 918278996 235020341 429686690 546006798 809493965 500988981 830368262 104276034 460484016 995679253 995851679 945325089 955054998 758364777 812508030 370397840 629204919 259027760 710094244 502357631 704320390 74558850 760550291 187672142 651182031 908074543 925482031 855757763 917249651 752891766 771126593 551284872 722790742 685040731 723660524 675185669 823124309 642540895 667700774 227103946 365377920 240868518 560447217 958734895 986680028 442944756 815270228 740313245 838250053 794101828 897018854 745641149 919570455 953697162 987560252 755594233 880900315 891879328 899059742 892292579 929102338 718560067 951087869 970342558 994410185 573259360 939090553 791374170 848089867 569857121 664287438 716017197 756898522 436066300 505639585 87790065 962052978 432483772 800257468 462673847 840511316 550400641 598261350 172919060 643688217 739123767 849075651 721181055 998352641 453282036 991919047 206056989 844764128 955248509 956536075 537470301 668307479 780000496 822660604 665853482 869262894 424167565 502639395 152944235 175885901 40938882 737241458 863656127 962093872 372862555 673693777 755470615 995503341 319996302 740911607 153011976 463130548 447781180 960957892 937173605 969369959 438452859 695685447 144579349 858089265 277249255 426000293 271440816 527689276 455452315 741796202 970861119 988038707 560688463 855962816 434325893 708877659 119736385 445120827 456760889 657086459 540454052 959504634 339332085 421075846 301352403 441870563 440641413 633735665 586217610 612086027 899759330 912122056 355499421 588108511 318468945 738401869 811206961 956573492 661724649 702940946 16532921 17881492 418027252 702024399 900425651 926609735 24747620 848370551 798923277 855074454 494173430 939855409 653037496 930709419 558483228 927299046 941120256 991923689 476647800 845297521 585798410 840300382 263190258 579327086 390107753 587131858 860266287 875551687 939878272 992335967 889589885 970176545 150033972 443390097 307404184 523612211 117545678 485411293 399130012 417058096 539918959 729985928 669602077 670716921 643977384 751189733 135696985 934510979 62169625 444903972 754700174 783094962 954420203 983085975 794188353 890904813 236659242 636692369 980915793 985780482 436515072 615123421 417041155 836067919 387280877 437900567 954535433 968059363 562309098 834579885 622828435 848601641 13781506 110056222 664300905 688679465 971791748 981001603 431796295 885373559 103603793 613024593 223972868 702238679 100517996 129873790 888875330 903209916 83506716 457465207 110970011 653124505 528454030 860416726 631083119 825279839 398075292 837691124 762563064 801086561 156110258 948085154 628256429 676638592 149609926 326249725 963960477 969804991 853555116 874998437 190606598 486817825 75342357 212218685 955894981 974017593 70700040 975687183 862802996 863715491 723810800 901663376 9213261 392266090 540092921 833022616 223825012 551003625 284917051 979004733 859930504 977830396 488767576 825829525 53360113 295788418 789818174 828969683 836230844 855850449 218587595 791831957 24391840 441337128 176957806 692937529 945500991 955719230 892756279 910233712 199179447 712819426 423535463 787199284 192617113 573706802 7546095 109109942 907456722 922302144 661851926 855108796 913606460 966826020 928028141 941950383 314342028 719064625 201068768 762681863 862900887 864484862 694268095 829617062 257928198 973771709 118879551 367460918 357966137 366840194 151066664 182573764 759610014 854796163 784052152 867003844 441738468 731418175 837379170 933972789 349560419 378456759 209838465 424527094 728966898 784297079 516869743 534883295 229464982 240906501 645026666 911596126 601325176 693002122 729628324 768425368 802930272 807788516 503248620 565112438 384295008 870318013 11892475 302706290 998467608 999002587 828719102 939608839 541459162 868129040 438648756 708516616 861140069 961376210 970604192 977910380 788461492 880459156 651006628 981415144 645031849 697618555 951185110 955608475 172970800 821212891 255677230 624752419 38440924 635232612 157201872 438017108 43057916 524213888 679947606 740087930 197883473 242640060 545447694 697920469 773064760 976008505 357562658 817111680 256005789 795675541 441191131 955887928 535482968 863667368 931558166 992093767 50128645 118700536 949417648 988537698 832284609 935413664 936830778 971940812 61783562 135536715 989068198 991566513 259878387 304473188 362644990 869144046 710998713 915812955 755665042 770116305 40093274 771018153 540502563 694596694 711155488 854801176 683851903 958783951 283491925 327734291 427090778 503474062 21072201 162427928 816783028 868946764 277574027 578136776 931951564 931981254 812971675 831005378 960510368 963055379 830267907 929731351 639927327 669273496 38736502 430677431 249655878 932034243 683165666 911438225 138235633 853849158 931753228 964823220 330656453 335659605 346298064 653210489 791206647 979785708 518463401 592335168 466441494 572360759 568975039 894869809 159281044 244117530 656878366 941085976 68603129 418812597 389005400 864031560 849411020 999066165 472260394 645007996 693904202 719896673 36270558 366392855 351946581 675545870 579309611 922634031 564657591 957563317 191981840 280788208 169983661 573056195 402056947 848448519 486927333 546658059 269818063 845415344 759128501 837166278 66644885 505778533 384257403 396808174 537987600 777757110 631521320 637822122 278363297 989335395 998844565 999265677 556715973 695028541 658077867 664340183 389355366 472090583 335035707 601126300 350970525 741766950 649077605 714174298 906609643 979478531 425631331 938014137 644983800 878199952 666623779 748644887 739906725 871155907 997788398 998828306 977490177 995965250 167970913 246944651 538259530 971682153 60357334 923382939 139386862 827321951 293990543 659790525 636184013 940279386 950045240 950304154 336693917 772767509 847367776 987376799 544160547 994603929 192551034 865897269 693570251 970738491 392133746 571118823 889769158 972027474 192474083 580940156 319050351 470388360 478619729 777553982 75629436 592570679 732098175 890216959 258325754 722996897 253252869 466575390 570348278 681830799 969460634 997600273 38175465 782790004 992142391 999313480 260126475 368923840 363586399 450425373 859989168 881590797 899151727 988137966 305069449 951495526 707405129 939283508 270953014 917616108 601404021 645264051 647024789 955808915 813996615 847288969 628167365 974370521 523433526 714238428 194551907 455003765 12109939 215159890 120064590 814608177 304999741 709998569 376520093 495377831 426577242 623875843 590257074 840272229 130479857 493513179 167800510 513740869 879187317 983102305 616213493 784256535 73311221 160448313 405493363 853288368 293203153 555643019 965364198 967432836 824399518 976506040 90210630 824182750 226500299 969628919 710396498 994656317 337668739 514016537 59388491 721323775 822191818 867919083 396819384 620428178 176733496 711030297 384064570 751184006 799322862 874256695 633307774 730059540 214553601 264182560 108103801 132664454 773145733 947906891 116877885 702424734 548977652 734709828 432070750 444279965 216847138 568486151 196927195 504452047 739470096 827564320 432261530 559723739 157422808 721185137 192199089 817951865 390538706 967437246 377727856 538650175 201051515 213626828 799655730 927878063 976914610 984618895 526554021 949131787 108240714 545833731 151504106 849292029 153891782 508325567 863351716 900822876 791933202 896770469 984036250 997597360 514261416 734481497 413102511 518021101 52149951 405241597 713523192 906395211 964462487 973639632 880619688 972033367 836824583 920488138 759164311 835727399 819407360 832489705 147675122 177417269 163524235 851566120 142623960 605805610 399230603 710988753 517163594 834378731 880025846 909263295 847822657 986844958 362112327 611060543 582153299 891995365 996340515 997009482 522932504 614293837 747231691 865687890 284727362 730368228 218144935 517809268 987853848 988545423 693232420 915809725 460668966 633097292 834408430 837954260 241222679 820516446 157906977 771315867 464911368 824601607 266363332 922112355 612358514 877108218 749763137 805920738 257607784 654434989 349582654 722164669 408185994 788343374 499729717 933634400 711291914 736278724 481709330 577409997 689468333 783351449 601480971 782813849 820911643 916273018 334586748 460615613 269913021 906688371 639265079 975047686 250974169 898179882 612509159 859459862 14566283 818914215 870549380 982391646 203671957 770151775 820853117 870762241 605178339 926198087 912653560 971353838 596733603 884078915 263241570 535866168 508254900 596988939 131768071 347165426 806141273 814987444 132998666 699283148 321458230 666395088 978334444 988752348 605512950 828246828 510386443 719770919 394582706 756935876 371687884 534593860 791316429 887570558 820634759 843104613 68290107 775569458 297225479 407550439 831519863 939838862 923058847 983561090 111651936 574448859 248560750 489870217 896089309 983325746 934692958 978806502 12977612 821778077 712492204 827082994 968217500 968591046 305519021 884274588 413911580 575835837 835866405 945635986 494336235 768824059 248891369 703643916 854157937 909598388 974249434 988153063 588993705 838255258 582087566 638475505 927270003 997231838 556831510 987099295 418047156 589524222 255347352 696475400 56132338 321965854 43257748 129328857 307376204 639799805 986831825 989355475 655295930 807776910 385742595 409144927 80189119 740001097 184284883 782733776 399319956 575124463 350638646 486411015 622102268 860657739 457779248 869712350 397826462 808217461 811546508 913828737 524572280 850746530 528517720 955791896 628441805 775835935 925407652 950813857 318729201 680867649 618099023 658866596 238987211 832706735 572322158 699964591 569330630 649218682 573645298 947124665 535382333 968916015 643857022 790215386 962611854 983569907 198157107 605124297 768533369 936095201 427918506 754386351 12507048 85018518 471174317 850347274 606850824 885473318 885301185 899361501 989740485 998712282 337143451 434095913 626544592 693200277 303414336 910306704 308370916 413060412 922386594 925815236 247817276 345890063 228719703 862726011 469932397 578127271 636730429 963293317 153018737 888737142 627761669 925913778 776251647 806682466 918377958 990182939 160104569 572131823 128782582 767971291 278579164 509346725 41812753 244299596 958707445 963812663 270499083 742323952 743594898 794818775 567819082 984963961 319459215 410315235 779489246 805185243 286368853 428967699 581492349 846690355 755833719 878165818 320881582 466525933 482489385 780472806 303982647 780857101 653357342 718890755 94220103 915683807 751489031 780743545 703415270 979234992 21550450 123980248 729320914 737386170 485757145 838088404 702794577 862365116 174399886 873115935 768420393 782589793 221131132 506612967 443449727 446140489 476506521 785744093 812800482 880229637 376354502 900581563 529005626 554390614 731340303 941502156 703541024 962316712 425408679 485303191 941469285 995898381 594729768 632824023 911706462 956073230 891934961 896268794 554864671 946023609 209405524 881412648 329659867 951643583 233573731 823181996 256631057 393614359 918923395 959407248 44974667 163800346 81976978 876571872 642092263 763514256 486773687 884511381 58881045 980704766 199254672 504131271 822086074 992132091 6310306 955538276 581827096 885365712 750537327 808138832 725260537 959995386 93055953 361381774 558902876 873637334 693691892 992975954 129764648 185232847 700537954 770841489 376174354 627693904 869331745 893771310 329849237 683732463 790737823 795536760 592741809 699029396 672244885 756818165 539186820 814537293 816905905 995879031 170446053 223829476 791639872 991572890 802719201 838536571 606874855 751200551 249555316 765209158 226597075 804506416 46557566 577070602 923237114 965710763 557529877 979932820 422310176 622796346 198125901 879956659 366606226 419637963 408294442 976364881 417960004 444333813 317826241 901315793 678709235 789204206 620877638 709427775 742030950 756320061 143360594 299251064 860217630 969542527 847537904 985939112 947295227 991740064 369774767 898673237 649473375 870507660 508763764 778618332 451342134 894117122 602376737 944426101 385920976 732226401 52180564 140185444 789886257 873914660 50293762 349526904 340298620 901130897 908569931 949081708 284228135 806513928 457544284 888905428 713479950 794647335 195898018 555417705 888099587 983691139 906627141 988721522 307946166 560515249 422179769 663522294 866053342 871443976 177344566 831756511 671623328 763399386 807088823 897331114 214444149 376593314 693872133 859667155 590979374 779742315 785837797 858218493 195409824 816912638 105146779 804741946 482382543 658813298 981378139 984538948 507815181 905223708 47880336 988017737 189433378 772370990 474173811 772088747 61964109 672497446 343625262 990090200 446196732 742195141 203618698 399315628 658709258 770848487 608529807 746937092 928366022 933023023 25672367 874298501 364942622 674181159 477037145 965656384 580949028 805172963 261865899 778314153 661188305 866266129 6879752 523063628 589506234 736814626 844701336 923207572 859490703 896364224 51549270 829431739 524544187 859579506 329802418 597724876 702455934 909779087 404019024 590388945 590490451 691451905 196123636 227226774 675322876 969727811 497933716 698944844 451865759 919600296 392157580 856055627 713265450 807041519 963358532 992716201 748828131 793744822 853279814 894894137 629379102 653845752 787749564 808462488 585280068 766439884 4528462 428192899 543189885 650549882 377333471 592660671 526449246 549710901 579931201 796951541 234747716 571875063 577558071 785818757 37702684 122522870 49842726 421790748 396507785 480198248 187269335 280855803 114668315 586280613 538007179 687689810 567121788 717735781 677221141 964204472 387902039 669790874 847916022 990491648 98153322 976932020 958471695 998196398 43874631 217948174 556826488 775361049 148176234 787203090 886677354 905670039 924020617 939531379 517789126 995520137 264154444 968380009 76098131 233076864 563214252 855042819 588987760 665219517 894524795 901676420 8831674 468700694 506870085 840446068 772167826 952438191 637325754 889037074 246302602 848593399 641814880 882506718 803984472 851382947 420452081 550674188 931183177 951001000 720142380 952708488 475526397 845592620 308360599 375335822 380862750 593983954 205560613 499874885 365199990 815285510 394070455 486621679 627480694 647896581 492476424 942585160 327450764 816149655 34361350 459961759 403648463 824563029 859692936 955571798 490713219 756586948 362257642 735621626 156520924 836453314 15926694 286910017 612589682 996985656 668118257 734315645 247847594 580472538 281144690 625152971 852565232 857695091 582868577 620353216 189514563 746589899 204315966 892713465 58841048 665011965 697287422 992278293 133829351 650722676 916585010 961423845 598463036 757143530 355203657 665288333 786888572 932717814 515789844 919575085 52868637 273210252 582501351 895739101 758014680 963841266 332423694 990426913 100719226 122356820 564545758 569516525 128240520 276024180 744365173 991879439 61181468 424814548 724250926 751232632 760215630 782557877 487421944 508475741 735279416 834923904 209677937 708567785 766561997 880053943 803588678 808329968 621586193 711186364 431763975 793135448 794747601 906997657 389369060 998837169 302174994 777205922 295037709 831314335 566340433 804660392 426043623 578904721 633238305 914562235 235600638 624448235 179341801 511017107 360441271 420590591 80549860 978203372 954093013 995375644 667449151 913145249 3523145 906008640 671638234 942398824 63607083 781798779 747830634 867795137 127942141 620501434 560312456 891229413 325530364 835053702 377860982 566697111 406025825 841674235 915278185 917404601 244854483 340990141 755242577 783357353 79311136 929227731 106324668 934767318 904733516 986782108 747313748 770301747 855610598 924003345 100433840 355444228 17062214 808008923 972792760 981686019 336875785 542204577 13142292 234605207 117235890 299138761 232092541 640725279 950467814 960017028 586345307 991790039 475209361 718993801 876618456 879003569 762977203 837936488 361667650 674212878 656836471 776155374 799712050 931955013 33070267 344640684 607595355 609798213 476158347 687798734 4711012 543434442 353377105 655717792 143079931 837881535 197400057 870624587 221976164 659760312 513323230 924056934 537890507 726539962 141992416 747571392 625949563 877868774 95849017 569208209 404921746 580826415 139386346 984347293 780829441 933017979 531943156 844117349 193837962 929621312 92778197 285390896 191941220 529242718 66329439 895467060 561746094 574260418 789558720 952600710 299793620 742855046 251296772 779894174 752906653 783798756 328621912 946291366 860010098 943313363 59572132 309486814 525086259 890628093 420020689 734665591 344768685 987556764 871135828 913020020 764056909 925265164 70986412 991211186 611352418 990915799 813516043 957659960 62442647 742066369 967804574 990175642 73193910 913189890 566424687 736111192 355316963 928935843 188435299 281942386 931208998 935549206 225686138 436224621 777886934 803556087 559343974 641652140 672872701 838279343 632564546 768495725 95938424 291854184 857840987 885411140 34519083 58890623 902414028 931503167 251069889 688056336 650089820 828585640 828452722 858370807 378446109 545143620 693818739 906633482 465534651 684198280 978854841 991582246 542883856 558969649 693168609 790784634 131834064 992546238 779637410 819017057 744914545 875516220 710469164 883921451 929401669 934210271 163788098 602219581 842178587 982878084 697125633 788003354 710402957 739849167 209497304 973819298 494805218 579675896 523366193 550588636 235979006 469576968 442790243 915977855 693560249 726731631 275274537 332258060 231759971 911388568 163939420 187266378 477492335 721876895 979770693 997987386 344022330 553826728 302574847 884890088 140771597 333779559 550505815 622466869 663874523 745028244 916214536 979927635 544150916 859504780 184437468 812293343 74066337 770388052 216669405 536422338 132549231 687506808 459434347 736004910 443908524 606778949 363947336 741919950 374521404 891523295 633961626 726900987 197230919 878210990 1465363 396073948 838475590 919650318 704540123 767716597 997854291 999099490 987739475 997161429 186274670 485880614 985823890 993809442 174236072 176801669 825079207 910984491 808491020 976577905 762559184 980365512 839211231 914042811 519181355 712405099 576352358 807157641 494317494 707316138 687488992 974191219 559132446 829864397 957754491 982274596 624111224 774105917 768281575 964441541 668039770 859015912 764558481 919608887 641416332 817512079 340410772 542069515 688397156 893759500 463887758 700218829 82199506 543618000 654960122 934021328 661193942 775251607 687960511 791344709 500200079 946414182 674645642 675435641 849853445 987039328 817138206 837893780 187832462 234013308 110767592 751821504 948436683 993945043 460146361 746930374 435543352 438647169 401972122 555165843 753721909 972925199 825198758 911112376 547367486 582139739 150606105 975395413 676120776 717640346 449890775 927869878 582883397 594662935 851202468 909437658 947592548 959492363 435360764 647131907 264170803 365188564 379351601 513497664 448624179 482658622 419212936 995974762 696475149 754378299 769542354 983641648 600685402 929706257 391553140 895960594 753265201 835548183 986527875 998433348 633471795 677767796 448958018 815806813 753439244 841067454 64508969 478981613 216711827 679093554 956513739 993960095 182594398 608075698 167816664 872495952 537245882 809675289 543693977 898325369 697960741 753578723 684572791 719722403 724153510 727457653 294584372 888565918 115592635 883358028 835579668 987264268 410528054 668625254 600352929 924368969 406398961 888387734 828662326 845505616 964836190 996957823 58292264 648476549 844535733 913952053 535609074 670716655 178033258 866939495 552330758 853343502 531898729 841816610 143951043 583655164 605031545 767584726 894441811 948834414 69598915 628864453 577353837 800362894 313234639 841841840 943135918 954429010 197016633 315677171 337741070 719759822 339803646 884664312 855996286 893102454 567912857 802650770 228353859 608096933 321339062 430015035 158997745 564758235 828217226 902983018 532393494 906096058 88760062 846767856 965853515 967254740 117597444 378824154 163848477 693692043 257927336 563860847 723683644 816677887 508016979 554027308 23020552 980787591 273461037 944949447 132011967 530507484 380261578 772789021 625550535 870833208 804244779 929457211 990605224 997221409 174968940 643376486 16722818 679456468 957796847 981378679 887454339 919629342 644660 447401948 245770555 678371268 300445301 722024394 898368515 935056385 34955811 204523985 979100508 983147981 452724852 496290052 989742288 998674587 923197432 978595240 446334887 980769882 844323902 917287524 394178937 412755175 678343670 885273976 677567678 778402680 884977107 963563083 325334239 819489496 376391664 525860848 349421733 629572435 192612022 992772566 572012844 658691807 996101851 996357887 133020694 591625138 5221980 680519883 849604703 874862322 483838066 788497302 866272379 901674606 609718854 856085395 237593201 588442324 559519119 927941960 280011718 776600206 42339131 393082093 945661586 960165318 116909835 399404179 736551258 764351872 242603973 312714935 942843984 963782550 512969843 524643017 639654032 977699154 511835749 879107624 945448840 990185069 220805855 960792602 870212347 989903509 752174390 901195546 714300448 879748742 672469423 698013855 789224651 974956837 564310985 866582646 680406931 819490665 793990483 923350071 151431241 336258962 117167163 979341536 293403099 348898241 281123455 671597810 5111396 621390443 309585284 467377209 626602774 881621777 833902645 858188354 342293000 931333084 211301688 947552227 101621720 448218914 35921395 133608073 981286715 986998971 625188184 666258340 374537186 777900784 804865651 844447034 357886054 970927020 423221102 680609361 908090504 950223573 462667150 905982821 777051819 969189984 377634763 751497826 982838414 983461496 307752599 756595852 31653055 213742785 511102719 890034667 418938032 806280337 642941045 780284519 605078966 704990165 393104314 994958381 549684234 834847954 657584670 976372034 535310131 966926243 903389576 960751756 308533528 386505319 248045268 505264198 274056138 731753731 365517957 774427672 872147643 953698062 640891069 966021944 240076211 247004247 834612956 848541800 801268442 983169775 942982590 960977266 918361144 962434083 169647230 335863144 146454263 211293048 26679417 571110367 391353510 624489142 380664425 644198752 387869468 575016331 723982923 769018772 389810669 800433510 72790048 347283712 38215698 87980636 508586302 882649416 165924269 945555883 23732016 941148357 225326644 683807062 807896850 916019743 283227193 777634322 334095435 713469902 266432667 895048179 684020912 966398180 649891797 822195828 232591971 741587366 209802732 505581105 153493816 587615076 568342699 635922722 248637841 596822615 293214249 678099505 138121877 888258413 252387842 447651238 806971498 979279402 165884540 333631065 996377721 998988497 526502677 704648605 864789551 959877151 923946826 964847213 175126308 874355452 188881771 288342159 680665028 690622465 796354749 909867165 640056111 696442271 141314963 847601835 203023780 291346266 959085669 998336149 830469935 880410576 676788983 906655562 98007978 491162801 307386106 738060892 887952521 901243426 23542029 154471578 863255930 988444452 104987314 270911514 87508779 826028032 130580069 820981007 609202105 885777405 792733692 967404750 435179416 908368549 84924185 286343931 230705646 691770600 788843221 963511416 554960343 934160821 523220574 888473938 345750500 758930798 870050269 925398778 729761740 883761371 483037755 539577654 78540117 459479063 983640302 983778616 442060323 566749289 841549377 926396769 315424914 888694983 686259933 920783107 570388037 909462258 519663955 534206119 957203826 964070110 229661344 752995019 391900138 476778862 679605060 822562956 212974902 257820999 986796718 999352442 8694944 261175783 137800374 518267924 651413535 764109857 735931035 941551474 576027768 578060194 547854893 943207217 157948314 197990624 119722444 784732436 170851031 803324341 940228645 943031402 909571715 951748002 514375146 532997771 573221377 630852393 905154217 947817391 561193951 601005782 970809405 982675364 863935847 958866642 595805156 606823346 80896605 182579711 600515661 787932263 975246640 976723723 206255849 438485964 609048222 782719434 141334731 918386223 152133042 889685609 610535641 950629827 827362976 983619004 494460925 638015885 463958004 585178713 574100437 772811651 430227728 458883308 935207051 993484877 622940859 673037772 11975738 698051384 912898502 963292415 81949949 273464703 304571972 404210510 461711947 534164086 179746339 206857874 286996429 932159019 331220511 858926234 737596825 815685034 467769994 717069898 89266816 328462488 127402159 217963510 869798228 903262513 177504779 563640855 311671598 484593636 715084135 983744672 653607039 977532298 247698598 940186685 595199505 601022118 57602850 608317984 593999423 675452586 947188192 971674390 208272367 711887382 294605637 819914945 558611485 969905637 644346508 868310202 665263171 927512431 836765406 921161737 737914465 922747317 693125595 822284891 473079050 772417425 981240852 995863620 395681390 635961305 198355113 588349854 709331300 832932530 113174146 638988650 129555960 465428550 234241274 607937789 281882560 959551231 812994470 832926000 615464194 816788771 944855312 987557506 242077800 628590127 299204652 375070935 650796920 739942108 847341254 962346256 240954270 268169088 306320646 759878982 675671430 786263030 357023917 669561575 638708127 676845007 480997544 954476116 30688187 217362430 315813340 926496683 576185150 934730930 39385224 997296641 354259811 562357804 496320671 922506704 293090888 981670185 540055788 604740137 708437098 955941025 181856588 201272182 904140585 953705276 911675878 987890841 278086073 518291520 426513653 944735815 794647155 948638213 124899124 948329462 875170447 975007164 359343777 403436303 357263922 509840725 702595108 830156894 528691706 928241707 158125024 336377826 782897030 983684418 6871839 178660106 736700212 973645249 890524160 946737213 149320931 179926325 329412084 877833765 367004682 543644426 471023391 573738942 163365475 596402012 609136216 987317801 83908875 659624488 845417572 894575679 116305619 507478997 882647395 998487874 151619593 235070135 559990668 831034667 658671983 838725122 964069060 978739985 781771824 845622462 337458564 341478488 291575435 729723749 418214035 657008738 655198531 896894480 814846755 843038103 58095904 490015231 648813937 777483674 495227191 942033078 862739524 946908173 392256983 999326041 484553935 507392287 408003734 592949190 993533755 994689315 571219268 988814069 529689297 604075157 676345106 719126408 199155279 811890924 613855399 955583748 649143462 796143433 125353989 540650928 373300068 998716998 915145446 926335778 660030858 943394574 635239667 918910570 807018149 817108038 382390521 805589936 127905506 649715470 403927208 592403343 923319699 966430168 444706935 487016155 355412983 523735414 428640458 590659093 976456328 979258841 846616163 882490394 544423112 982176934 143972637 158075492 797503009 870918199 895149667 960220805 619932125 966148675 490569343 691166936 926921885 961781017 493194643 988940884 548573546 982090383 597550398 946636319 419289685 467197185 862283386 877117181 316181642 405423887 177374379 742996105 535828865 831072627 411823147 771964361 892306012 931025858 686077928 778657875 427494065 446677755 218748590 587959945 879461871 927508164 340447487 377415811 594944798 966646901 15616745 792718947 432865620 776306778 167250177 765295979 882160060 934992869 39097462 55142261 402492951 443834481 943473881 996087988 81286396 405033740 190967968 418202054 505828084 896940082 804821267 951807636 249753798 926578889 640498713 703548619 752832825 834344400 227719460 273236609 683686435 744355371 219149068 800713575 962786411 978588928 813627220 956964308 257418005 944943989 413117688 994312668 194253129 395785800 788154542 862641654 208700120 961952177 8018394 779497747 869141925 912905263 181358714 931975423 278209490 969204013 65734073 817471658 193603867 514089862 670800119 885279806 798168223 888271488 108404334 727716199 722833317 875955167 995567755 999016920 627432442 811592129 439646030 952459223 856558331 893006131 123726086 621279320 157174771 857998538 778519142 794443106 430144323 595973734 930234163 972036288 233451834 881638275 114367978 650103156 297421502 655650171 638185346 638713739 626354151 947576755 676314199 928336965 458689738 686616500 597183479 624851861 947166032 988224473 414726296 647700265 813088408 925832569 341440627 938305958 665502563 707749368 966138178 971918558 3447415 267358081 356479987 941691657 491592066 704868711 548419769 856813714 48890902 373971112 745198490 927957761 277230022 944280810 224548618 992406232 697235554 930738516 496121663 658779363 340373420 517410859 260443061 355098021 470023635 599012686 119822514 323630696 943197090 994669420 130160950 706211257 924059706 982219228 230594861 989285762 997668869 998196012 828806724 864589896 30363416 743087759 839456388 969939915 185070665 640903123 501034720 932904707 831095138 834819106 267882774 612619337 629257713 658330805 102604817 425593574 121615556 125704708 969826610 973491584 982502639 985065001 525684895 986911827 863698761 892960507 539879395 833537019 816708722 910237260 872319066 914955385 855411402 997797347 473933548 600064375 96707024 595311764 241256438 300227038 557914105 927768932 640344340 799739148 331994864 683170115 867460048 884391237 515733596 585423204 137215034 921470601 889638915 988292051 903499117 918062497 77791806 660654480 972280490 986250373 984951164 988152755 134105513 241771225 240853264 908921249 459693467 812335160 164833800 621600097 585938689 975175935 153032105 327769996 859296365 931380577 764336294 919760585 876363333 968608184 284864023 764593811 858058199 911260502 26426529 706225195 402458128 857825086 440739049 441770580 40836962 257500684 730571007 784648338 234113345 520238562 324935923 521719652 330700258 702101006 678636989 921056005 652220596 995906293 635759436 995527974 676120537 903847781 470774696 692934660 490272973 939716148 566818843 991337783 416644312 629766897 764721810 980631122 949400361 988796815 699766094 952375804 443505026 928707262 930465610 978259264 913930878 955622090 430769522 966426658 542823862 866244162 379608912 680709614 650460856 807227065 531529427 892082527 426102634 899130746 251580019 518077116 723957784 932858197 780999268 994926169 515848602 615430688 402621562 743475296 551591808 735498508 545258377 566439277 415467674 586910407 630929170 702135265 558083418 881160553 146697316 594530084 816646134 854739537 765309241 925927653 116482180 795885507 194332316 447941513 313227199 755808189 167675160 317885120 944599912 972452741 473378901 504128812 439105405 721072624 473823730 805278440 608510706 829886401 937245453 996036800 66450936 385211708 195498344 297087915 466371630 527827127 199162139 437019897 363034148 736757040 335761754 568808208 509833481 976820344 736485101 960531333 861643434 997290473 867340042 963155308 117685126 524253700 193067741 539599023 32935210 161425985 892252166 912577026 718535801 759917882 321371045 567918114 657175700 792509739 997869092 998089899 469367555 789955328 708281033 869748484 38637993 779216059 598583227 713766433 728020497 841153866 268149671 469395511 934017633 935052158 825413421 978154192 832676168 932622994 166673545 230726776 24433240 468000360 174840434 458448595 444600877 493820819 824135487 886499172 295098201 395796758 375126574 809223843 487846708 806828892 163189618 482119368 817879990 946580588 671486582 725756226 190274519 584445158 231044543 831247032 374906185 400357435 763536861 952606311 280174319 347354110 231454314 775119915 850605062 891165746 643647664 837145128 438848110 441635935 529582889 595454238 937439183 954653527 766810221 960206402 562908076 623946315 219961516 233748985 797265215 813328845 390173553 885555954 412037373 851278944 913540372 950872340 291302576 510472160 408834269 969293357 483606074 567579423 211488377 510689842 629122661 670061442 728608596 736082765 767589278 841309391 33820992 250889434 539750406 689757442 932271169 977802092 900630797 912868108 265722117 506469896 437266953 449956512 640725533 855107631 679718582 865091809 589656814 992727770 933133223 964812909 524425875 949631220 205200761 692026771 773761375 786555972 731704184 890910157 972606297 974070276 266443824 880392033 524384058 621090738 341429982 691561712 125193830 882074354 606656569 919366108 722801725 821871531 52979536 921415003 126614058 342507694 680947614 792281310 718568058 863980128 450645697 677985632 448103927 982618209 656225087 701753122 105812023 807654492 198942654 545267617 906942233 937354618 461779972 473200673 266612418 458499527 249329832 414049784 233318565 458517941 442469193 583022899 530650972 631870890 624217784 812866825 849423578 906985282 286178460 474520701 980216789 997548574 375460469 401928922 769022871 789746034 991459210 992192451 762547514 936771196 450289679 621911609 939145745 954917630 776812114 898598561 84048625 845212007 373043065 461983108 405898537 680037953 50491270 616036499 922129804 986390998 379834332 559468392 985043707 994074246 372656488 612687186 600517957 853122941 915450780 948113265 245990095 704762885 679264824 975043153 13364937 482816274 17048256 632439103 204600591 643980574 877231129 902044689 91908915 631256115 644054076 666069717 853923256 877008576 78782992 348821856 537785022 938823423 315899672 881467966 808594589 930222824 503299013 520268178 411555700 476072866 920431096 931415866 252030363 552881660 909287471 917597860 527433698 529342269 48428102 309674491 665594028 899513447 182398977 288330985 703143957 794901290 151740635 849694317 190582072 727953729 574391901 711234862 327988948 656796118 391328252 574697116 230102481 821026993 576553270 719972940 771838408 779477560 579110091 756385814 433599400 742495363 499309822 974085127 907518586 976689062 857544671 875781028 739598570 785491641 107397805 739939876 177311339 570579639 896420703 935320021 119494177 406278839 395885151 729524547 599460825 916490810 946850392 972958303 715585166 873194504 492492184 671775185 949318099 987926942 434430876 620178285 439682060 826523162 278138146 623103082 250000910 577063512 413802619 600789001 90831799 627942190 226526271 997707606 918961048 969604849 895308953 996332305 967099664 993992270 226439498 723232937 4124447 150716168 219041338 708913422 498628625 591997589 598630126 729546520 291005486 507451587 130491507 620200149 381877804 536928636 964003016 987876234 884165497 925692608 785068983 852921364 118564620 511432902 965724658 991394420 381444103 741477754 736109280 775246090 698813732 746062001 479303619 554144858 772560148 934663867 845198296 977288843 728099177 965111558 66638675 230717475 654933616 801893851 986314293 995758006 559735491 865872481 156176549 248390466 509609778 738741052 831452440 907931713 875430 226115169 120699793 535725253 862213371 895897330 939892468 950827925 407524678 569909380 378873693 628459845 971939879 983234555 119492527 595824641 238819888 691311614 489769918 688832345 268256727 603145292 700554222 953227345 793325786 919831206 179614061 828682627 643154474 788823407 636830307 863605776 872969836 876894509 115994556 403038154 80315651 528603630 577421137 791595229 142347841 222816471 749600914 963156274 803914951 924019958 909540110 990951253 289093461 714060307 776758069 922592769 449433749 739864830 821194392 997828823 18159181 284585319 881226073 946323053 793074673 814332712 579999099 901299780 207710415 991111012 541659175 775120556 991121158 993958997 788092383 849968456 311053806 918204217 4170165 485118632 578528199 731664473 866461550 957303934 256870201 574775287 522610413 988120449 368981813 961677378 243578701 578469100 216404380 384781465 247539048 513005090 833791742 893587820 999287025 999327284 527106052 957688136 119665259 408985531 222549279 227758578 205812541 609679966 614868150 886461856 31976893 421061561 767320915 956083095 814268965 943633934 579990270 615520668 297185054 338527714 402337216 595687184 344352264 924802143 263060893 871967655 926600569 933834969 263869015 600920248 160899674 161731847 169444327 218653767 826893099 972883654 161809880 328068245 422361294 426119638 48055248 92426938 465715103 760340553 389936231 688543090 482729917 748314155 948605271 991064689 742354319 981901685 764944024 855142675 711571796 772692701 9683998 513378594 706383789 846492281 950469516 985972264 514441181 552701359 659123825 922974282 363493038 600271511 706623479 749013702 744191769 864954953 551171580 659811684 382594321 491348476 437267984 880725328 754237904 951143364 970995000 992280254 588060262 969769108 398396365 821035553 120893307 320657097 242265601 358941814 413972381 887066414 985472182 991121168 933500877 956652640 218880781 870315861 749790563 856865676 199856067 743576938 469361489 515018850 57490036 834212238 940232873 949459065 619060585 909096617 438846058 453605180 156177209 173430179 705024999 885060008 90621605 953234468 417459824 520991455 929162571 934465521 687532842 868926594 453952813 766316573 355260507 595921863 945283726 981506651 129570454 374222228 246335633 372653968 305094943 690879211 344885145 813006578 684123700 876971397 807008067 810180730 195314493 945447030 959397776 987099252 584353427 936197327 454769632 562807051 300155067 558082722 472292499 996047802 269079250 441647418 224492027 782613234 13857152 676209381 369897593 939190363 213744287 775876772 294183026 881911582 125052150 998745561 601055856 679775406 559083816 620464732 424332568 688572992 995907651 997511355 197099385 792160691 500371625 981708255 781240264 957833247 545267846 746293803 42035692 677299175 29384429 264427836 302175550 787256464 426096396 967453117 332242264 339932582 666020220 974468254 548951487 593407855 334773554 618284246 897076525 963220037 943264449 993616460 798963320 964806564 150493072 535983095 452856626 812318827 572677610 710418311 904318049 930763215 801674336 945657914 384759064 929587374 809589990 953865109 665445250 914649098 543306021 677078661 572488362 641486286 522807952 947316100 224507601 832179849 862408021 910721704 885878425 934882591 639686590 915523917 499677661 971185028 332711419 647089898 786917993 964071920 133988185 469863200 503002053 985214847 775362583 935814753 705274451 855991925 701718716 949789749 240927683 515833081 853721274 979558873 857327109 882483124 501855827 857645629 521492390 919657829 72512069 135863288 567650803 818129807 956726012 993123888 801896364 839835566 800595351 800662979 516027073 519897785 527746299 833379876 196907920 746550387 686544279 817366712 775587610 985232374 273192708 977490760 255648832 823311821 545428175 731115801 760685706 998801739 584057608 843449771 171906908 252603798 713071166 720953065 436377440 894071769 326106414 442646633 287854929 772565805 806184041 999323195 530633194 604883531 949568906 984473559 781498794 979533131 248949735 359451097 338268729 596038444 926369243 945477812 473888998 510470056 464714908 479080991 41390698 165708390 242985978 720263430 942691535 946482787 227681775 724600492 250695699 969243205 225885100 660067784 625237014 822060640 421554567 704754720 855287048 971218802 478259691 645930756 760412163 773050605 315818041 690428133 558027018 970788845 742134946 826102641 927420042 954974378 675663267 827559998 717613939 720042962 893587152 951105855 447044413 912684950 674629460 677242321 225902400 232562968 751728644 785059512 745750437 934699411 196843972 614279898 712890536 987533267 990392964 991976917 813669935 850760612 524612887 912405046 296667436 465245329 544266650 628089109 804197590 866318269 710211403 935345501 690552359 838911940 299900306 415369871 596842736 863405558 716707855 923254136 421169517 590110022 125095891 779625555 978673027 993622765 74107958 765214543 148886339 631883698 300078763 757913827 330188315 338189260 83994836 365505499 837186118 997189889 716002682 816758072 989395289 993592127 55395216 59195762 779801426 791611209 968792596 973467089 92998380 796097194 57469893 619624920 148210691 887014503 862424151 989928178 942263838 979365640 672896450 880083190 904318890 938765549 527119099 895035722 467585967 939494649 301481827 822302789 958118097 977670234 751251669 923796388 646573540 791207074 240188901 535212538 93890910 648472770 447962615 721245890 218743161 710826859 883866267 908124731 898684039 936793432 59017786 294743897 401299761 552195528 892342339 925906069 205529687 722648134 942225759 951383331 385243973 495335926 60883335 135567557 334477420 810403129 787012983 887288608 10299858 894570955 906712912 936523795 872357332 899862150 738672720 770238073 899674820 909159013 761377457 819632681 114218129 377515266 180962243 991117706 920975389 946490051 465125314 650543596 717245182 720434477 742437999 907684882 373839777 809013661 172704633 197082738 389138141 690736960 876706127 957202245 829619655 836655033 816144430 867961313 592061163 679006916 352567489 436199442 712170478 889426266 814438533 942823118 375355579 836765859 459869804 961547203 107288704 162402670 561203927 711288393 80011060 679422958 936178690 955092842 920213076 955628135 479084851 496196675 476655453 827132666 58229743 463205238 41729791 763071746 334874385 709093014 399766369 960918511 59494562 308743788 633694001 808709609 279945307 552353923 678906738 788108251 28245059 809723586 70313639 713618979 876727264 906443499 159251798 241202565 79255577 628328805 819878096 936391835 643279373 760747307 776311489 864442371 949431148 980297139 110155214 566922041 438403378 723055643 898155654 998953376 641301493 850090334 660436713 783040761 955020423 986454766 412060607 624288689 793810766 866022670 723076976 771037493 226910062 322399309 822506581 949231438 50090031 81800418 577210891 775134153 16320880 470032636 138814018 884890310 930830367 940366056 906125131 930224301 369146675 610146527 172802029 772626536 386391419 582244604 384832547 448500617 907499590 986659616 138925067 570971119 184126773 203016784 308911288 481126065 703493756 875826898 907437348 917629942 923935039 930516738 81574525 678139394 519118910 727553863 827954260 936252150 665915936 964800818 377191215 543744898 920474201 934464476 555969019 911935792 233013401 799675869 417809371 419357106 495140478 521916884 877390564 987603655 296618071 963693626 844138956 892977245 872624476 970896838 277732172 816284467 764679409 855240409 942131502 972782609 385862067 881201064 835507514 907838712 148365456 849082763 410576767 590917918 88346466 519132059 695982638 954820411 465831124 637946119 690250205 745044227 799443375 936384565 312771591 537947244 881890071 924788579 489100744 805260533 309056121 496895315 711559572 808342095 338788507 855097988 606456712 875246677 536107376 658259759 554736300 750272418 482835906 722364572 643579423 723278314 550662780 694899276 215939565 382743009 141201142 688335671 265042719 946804464 23301258 601811226 713121027 942621395 253319310 609824527 4694315 691005110 427854948 893488329 24310770 862774360 572901296 573397794 975933590 996055004 2270210 912353892 751768612 989724278 358645460 618696738 647397264 771548452 335541032 670776836 435777744 608653153 991367528 996539504 292759406 955711566 518798284 749481891 937951504 988795608 145646503 716613693 835558785 921498690 628994757 991821559 846458240 935132786 172333577 748481321 226031147 310056140 20504966 702757291 744886723 934844822 491292932 825192970 285976217 682022251 77087059 802108054 46667024 301669197 965159299 970783928 42114609 354749925 213127135 917385720 226017217 294148642 36361890 326056287 406267027 778401257 81915418 694374234 668769368 703967321 978400674 993968461 84252014 443158402 441799574 735296618 613617704 636618437 70562915 162846130 803530674 847594528 284242878 880315663 236675132 949739601 220446444 896651435 786608236 970725489 174173629 676539613 416006499 696916026 292467042 956355983 953345921 987867729 908858013 915726352 589873814 603626371 290319968 874802921 880651978 917158431 762022818 794508164 335821480 392756756 514201304 961979115 101821241 219149767 605137780 754677082 535163090 983944123 678234751 895043313 249486280 989844614 722104096 733155694 245810118 859009843 133854587 905135226 879713474 968324550 800746378 911433713 465424982 584213275 40704731 282170336 243717658 804028353 325922846 965838024 836884656 884018071 809510794 835468727 579123030 762489675 493181082 780114559 908135673 979420497 424816810 876891133 103851830 401295676 297704396 993781339 193295844 360180197 22428967 436129702 339595097 413135606 203533094 332136245 718705927 884228460 384498378 485707224 569944203 826111589 950182730 972512210 670583362 872846362 241842805 242749142 958300773 998897453 671477051 850675712 76718395 314672135 430555859 891715552 622748648 929466121 366335973 694260970 751297738 824784406 460254926 482159577 448533670 757623135 827134718 886421672 366000605 839705655 832437845 896567425 209008146 511095525 253114339 915197068 842808015 880011288 652964487 944708990 626833955 923352838 106017507 353285105 440994375 575123434 915253673 918601147 103709843 455538697 531954553 976667179 205215840 428924365 47894379 572603743 847139393 964788076 18960151 701193585 478040280 846890436 56861014 480161348 233887977 913145080 133193595 258994441 184762848 604887602 918949388 988700113 420333417 543089191 416371008 433425489 796973674 864660566 821480944 908135666 207486277 532520215 932084810 983899639 925406422 974914916 120155722 356826650 478686234 863196078 236813717 304604987 825866819 915102040 19596389 196247585 745613288 972997679 955159965 987164140 677615078 961053837 23625408 44438824 182769673 811613326 381881194 598481546 385610739 628794948 568519120 979958421 351459151 832024360 962359578 978064033 356573944 532691017 964618450 999298480 825004731 901931256 232931008 691238448 567804965 782561685 928190954 993537896 246228771 771453784 343763778 560390916 981944855 991700454 345329179 918381313 316299281 445266702 696009852 700741200 545362485 911576342 942282692 955255507 164653308 673706528 613369080 885621953 719222672 750790962 398578487 820046356 932076567 945416071 27387221 596838866 415554080 838929215 837037507 848182813 492302263 812002579 713042988 797319213 950864476 987426569 392509381 556943423 9292261 294071466 211224708 285541338 192092609 471098447 881683972 886711622 898106692 942225913 162195435 894109661 543597147 637554424 103047086 829153715 372086594 475903654 495752523 557722780 81660229 806628563 937577256 947410520 387026594 650507967 408526421 915126997 450236788 650805284 147967684 363237902 589023060 746320007 299279169 760463057 494423238 631882481 386049701 471637521 979869172 999245995 372808993 948000779 982954295 995371482 15100303 531598445 699646210 922470447 151763479 774419301 576351241 937075287 204546817 920655970 468209674 600241661 798983878 916074463 711744481 862589442 508140571 752808646 358802361 925796536 344762357 360747743 111904108 839552463 643654359 822314714 735635137 832432894 597417570 713013796 755623351 860585593 604409238 730311153 205200171 571696612 678623684 971425640 379305063 561677788 220460400 836393589 338330595 521849269 764734813 909866564 391220473 562018285 545390527 832227173 944421514 971866961 699416088 804278118 721741450 882411365 655143285 753496662 720744223 834554578 417204306 605695705 571216283 621738370 842029002 940363035 723222396 979082443 618856736 811180823 662220449 775972488 953810448 956943213 356792443 664607910 542882536 721764085 436755699 437164909 627543529 961917191 558663047 650168035 70175697 539326201 891126781 988678553 418208448 912536953 562435539 809381541 315735011 608564278 953596449 968107242 347744452 901697887 281692076 997155112 961014833 984460495 342741341 826288923 248402886 703420877 417816001 957307747 686983881 941195398 775531081 987103323 752360543 948226458 987438976 992921058 957070326 962911355 642210494 961554330 930357750 947337394 844405084 874479702 483948114 484643184 167975587 628174561 581060294 637384807 853187155 933507145 532039571 678437447 943300298 977147725 239968150 255210817 523767317 672472751 174993388 805775397 161677600 470472411 21384106 769273116 676516482 842726802 102192459 896565431 382071824 486698045 34313570 52223635 891205199 927738377 105000091 483642993 7938641 379309919 442837988 842939152 285903300 743978610 637594177 949093617 43938971 972603935 749678336 994934617 842034007 866509133 661367203 662217880 587037779 983117370 824627986 846781486 648209044 828669315 267707252 926471222 378616032 551264256 845297247 964864083 420432990 994929902 973415212 998428255 400450375 866723177 56115242 967126564 975127395 980246057 966459728 969132738 751449382 891887229 808782970 830704253 117777040 962051316 230332439 847627164 820799883 892435689 137620690 501639809 563483633 774049751 126913728 336363857 121332089 278417932 769162906 920273596 594080374 856117570 548963824 819625200 570403117 803276233 532997975 905004247 326939653 330025226 156809461 289239550 73452655 522273226 429776942 986025793 985687312 994843228 233857732 392844832 822807890 880374441 124237004 146266869 155936013 472752124 271474887 440543469 929926944 951546499 854948842 897672134 228657949 929834031 719668580 895195589 370254270 998010527 369152508 618033376 34737300 260565178 998705704 998947124 140020855 486948397 850316709 930959703 391164267 979691277 942426165 947785465 350854525 848900097 528972099 905045778 418820682 695282479 140791318 571278831 983801347 992275286 259767557 658276803 6679315 248266356 505895028 868307976 782779527 998786465 986193746 997235224 584341185 591815880 922117397 927016937 218856237 661259251 345223715 704410176 986747373 997968653 65184870 251026191 711174478 771289615 258725346 274169952 450234319 821985463 44870653 435598168 411774106 778549102 938643543 983658664 756452114 773230873 985847742 998554063 87962113 620043526 661864717 977345338 982167715 983075765 156453547 261301373 521585438 630569007 714459528 997219871 766051830 884152323 579825908 825412505 192755927 855407758 518864937 547627939 256043232 480382937 880940657 924552225 407058465 618631548 481633067 578649833 798939153 997808928 150136881 596659445 351435548 380434865 979949262 991068000 462537607 863339039 212668041 658496890 929688368 971084899 806021841 895546299 1241813 783614686 48174908 733140967 767043947 947484590 848645435 950546456 272108242 931666412 392661914 666737108 482088380 591598455 19984839 429403120 963859852 973693308 588769192 735369052 847496252 938310702 110691729 236369550 106630686 525030172 433644622 923117820 230181817 707555349 732614339 747422759 524165315 821078292 824020134 849503634 637149806 775574819 949863897 987481851 11815521 319467614 405296726 838120469 374182765 731759254 681667346 930574549 808339988 834517853 788164209 961668999 347792916 805627026 455044078 798722286 281227509 526557776 859114511 874913171 402457022 493443766 55537032 630271562 548059601 834683021 13348624 497300511 749472439 857773849 10908938 670755044 792090298 821610379 511198063 742706682 71867531 730286008 868129582 995988675 619540221 916494246 573487790 859630957 996877233 997215519 57560744 686837828 447150324 862700095 301594504 635637347 885406216 984918627 114234478 215321279 581676524 842799050 807560349 932514726 362760552 940559631 253169214 522228785 798656002 850501739 780199079 874376104 809603645 929153251 650042657 682572461 284560746 647445009 9676901 901269055 129135643 780697572 277870632 817589257 843509693 957096806 575078704 967651038 361144733 527791238 113247130 980583276 816056507 942043198 911502735 967004884 945103821 973118985 53919921 460473655 941223855 987666210 542951299 678828952 25161198 377793523 930643881 937347109 817776147 984732352 969933948 972735352 131144093 956615959 769326024 853792857 185171172 551736261 25070390 114852822 487854803 561249442 9520411 873612447 244633549 890610781 327392236 999279408 274167103 819613664 832908856 875224549 31530953 379907203 692195826 822613984 629780941 793110564 39895248 84050774 797634916 824404699 344749825 661515228 383115148 577755614 458740586 626902631 977414979 979294207 132558813 696724250 716024849 998978664 166480969 544812069 834199605 868855910 675278606 677670394 946930783 996729199 462253655 883798172 735354669 948208296 235600607 795784504 611783358 657279386 122249507 542348218 481083445 729667123 766001438 868134882 735239173 877765022 379801695 483895806 315614643 588463797 936734011 975099557 528316583 742910227 233519807 552325625 198471640 592637393 953994834 971541318 863516438 980648127 608084057 688707672 166485751 214246146 930166078 989147443 380783747 479082139 546946332 893478617 364936486 707088150 675224182 988680589 797544243 806402843 966018625 974281626 385594941 412572800 582593687 738467324 87314271 102914749 435903207 807304598 410402347 451513936 536810788 886436401 702379240 988958242 88134296 220735415 481123716 493023631 912128833 979483600 524761981 922188796 532607808 665420029 702051660 933093967 721242118 948695962 461387246 757238256 764454459 833314392 544269412 613538948 838079953 935971849 694170561 789526872 483171127 915088330 163342504 974007749 226231463 296301717 929433765 929672014 523109298 756798918 183645867 660220247 564755512 685297284 665098288 737750886 496533131 886926363 184236295 557880180 984753807 996657913 623670630 893897043 81772698 234859618 147465556 561764889 943694617 948071466 809566341 962921303 70803384 858465903 48682553 610970530 715414177 746111011 897497074 924408793 664579881 921989907 430041448 862914191 392723945 720528855 767726424 913287930 683980971 884037576 610345342 852004856 69234956 982318419 56065767 292875255 642324349 655025744 734920248 790141236 389272971 562294378 624338565 731184916 898316818 922793989 376136106 665364161 210792255 972146809 813837695 880246502 178184523 618260175 788219455 889012473 377586552 410059256 266654168 678605779 777902750 995631337 57404619 78206714 505686947 955565706 851821201 982355902 602534599 833781825 257758094 287165762 465826431 987630700 512903496 515316134 666395024 955799876 592483584 751112116 648713454 692982123 509571001 930133498 519802248 944939945 522040623 782214375 237271630 828553077 747660118 982099210 519775341 721911063 37581928 749258269 732499989 792842864 267144674 673664854 348197284 983514255 190328997 269687859 669255293 829983751 451572902 989334096 94132307 536696529 108252428 969168133 895209215 908916380 502977609 742582173 519833989 641793962 366095942 667876977 209013203 744624327 948550220 975785258 306305002 546726946 916018739 961712929 587715062 764610452 284348081 508331033 496401067 648615918 604707023 729530082 773321714 788319667 514231884 642108512 676788101 740659589 410383550 706879158 100123962 554193210 359719999 484179248 886746883 936829766 391068118 490379616 56088595 785770403 623999158 711646747 128370837 354797187 837721620 851736067 860720240 920182937 756506967 774642280 605623129 667947137 592290516 937830713 335229376 852974859 684148502 830765885 80159154 271050004 731909190 798089312 94502740 304951034 183412763 944907264 891938033 902335857 325442029 513335240 968897944 984522233 698368107 832948681 784609843 927700349 119237882 795228559 275601052 788076596 654441207 981603720 342996634 662822006 912980173 948921451 440815810 546270038 763746591 855733688 724104044 853878356 288740233 367324362 260485570 467189007 153394001 235977967 890127299 968160255 162747443 527145783 339998201 897650580 11650558 140068783 577588308 600649869 851206441 917559315 66756696 283219381 264019556 670190486 871487656 997230748 311512594 946113072 341633259 824906430 35206338 272417099 241237517 575176165 194564540 949969231 395065079 408294792 759420270 932966873 193993016 836517415 577933727 980723336 252608531 594370556 108580513 332685495 507259082 792951374 150367571 155596073 231550132 324725748 66055717 166515531 910875461 981494045 641167246 808767717 313296898 873290281 148710368 958124349 253463346 342585718 982440020 983431832 348964339 558468113 997054783 998611848 306865688 337472643 740071450 932628686 954122901 973479650 797153742 821797803 457202439 562768306 537508171 812794704 805928237 978262439 399484080 980767918 596680787 842302224 668682546 890016709 379975411 579048332 906218261 945474429 340666914 961800818 93986628 795284278 804937218 854773754 164081685 327036666 27121613 829246832 435794428 491192033 746708090 894710860 457916284 893008525 83711420 479277945 565379035 804528677 831132097 942028637 815730241 996389315 659849430 880888681 251582254 915875470 277558756 699481348 388664638 879320258 223045223 834595591 538963475 800982252 274416091 907087190 10155229 618338245 568994213 777648093 32358947 165636886 764164221 948127566 73171171 475888118 815429407 896006233 92293377 749099251 594385048 663365045 449624254 493100786 878439190 967269815 203510957 365008169 849643137 970586428 564488348 590959718 139811719 911380993 336182902 811462575 180903549 548104674 428497902 936523422 618182070 701528996 666854680 998488993 643741901 724210408 555140348 669628505 509373426 995087443 665227374 707679597 181977706 612162165 750364450 793208195 708856644 925959915 248727582 702318172 582626323 706615526 146345804 588796505 260349149 270969066 743270368 768185741 897342741 959254151 585706530 721064258 633488733 773335335 675531061 854088872 224652215 888982873 990054305 997842664 827660650 868954442 879619687 919973840 369431381 850682367 421168873 801638499 354019528 841027810 959692007 967940264 37612354 393032296 80405938 366166271 796801023 975288143 340391540 852945642 756066380 811422276 231272695 776935510 899273025 990750278 141396027 939488244 499744189 662153987 669520004 949783059 472841895 640714145 387927575 737716869 891938105 964454399 994771023 998313673 134134449 350305352 773056673 828087760 257624953 338748744 803725764 836908219 268653898 937115251 384164690 652905132 568477556 870346712 382244341 928759470 900596365 925689637 593446760 669665668 100106567 884279282 254472414 298773805 858067481 933166878 900449168 988269210 434574838 575002734 829511399 954178567 548913571 765499162 476575327 709124412 577879256 703269272 212710067 647585823 266955197 699806198 615889763 784843535 343081540 462009000 825599158 913428886 601364730 899136960 377382306 926641149 344652167 878596473 884258938 993564974 275860892 938248553 264404531 414277693 558866023 577671048 73950945 628307891 951338345 988635276 373667853 505240996 427163306 770715857 552176332 712582230 207213632 500401800 438811937 694588281 489502896 959790344 302231965 602326601 775104181 882813978 415997175 833217836 132694210 419486699 966463992 994707382 118535003 921004006 701858155 701993354 807707554 832524626 146503057 548852489 546560439 809499243 672810685 713028747 357449952 452465342 72707347 837962495 388216274 647277134 319291847 341007575 273735568 300076976 258049565 620402782 817865810 930696680 288440140 996296579 212769859 588777000 86743536 141969934 537660501 922891043 281868140 584692074 754179754 794323398 949324808 983315288 58812829 437837907 238319748 690534184 66921922 795632207 820447994 997669211 30358421 940002403 778811514 912151229 86005078 902427235 845075714 974363818 36394702 762987899 168853114 952853849 877877044 923441775 861997057 868133017 22225829 435154957 554132640 877206034 423929279 758141982 20501810 585626325 996371373 998812833 814910646 958246800 10036550 261035045 994998116 995309222 633296215 674116593 159654844 668222810 614978281 787431433 383622354 665846413 21901089 834632397 280558842 692887408 76964850 834367834 405535976 966328102 923046570 967159618 273253989 820155316 658274255 860440313 303461645 687919070 59490763 682612667 718130475 870524168 869206488 991916440 892044271 937159495 393368614 866509616 42869066 490955774 93933676 916535615 611561028 620925658 745125247 915782514 157294535 977221582 602811652 781117046 260407306 554113518 845551559 921055798 752321989 945673619 831227025 860768071 511665627 759157654 730117938 798738903 17220458 507412448 642813578 927577715 157797576 214838056 970524146 979233015 471897867 476536456 875259526 982790021 787646779 872577390 522838206 869840124 656251363 684242973 696115429 968807031 213773788 330655936 332838609 896976182 936804093 984300892 302104930 642085592 626191356 691223818 315740296 882796295 295115708 988955177 60664180 347628676 775234919 899128104 590394641 921038854 446984661 951398815 731739584 754710928 844136452 964074461 700857546 735484560 733557867 757202170 519911191 800832815 559216598 560090982 197532035 407525331 608859644 844939955 483350607 959576462 788843376 937445411 113887015 230858109 663214135 707931677 639059139 767424425 264507290 358318546 477921549 633101952 15368972 341158898 783738920 856903674 303806836 632677579 997182154 997585543 142123117 698879102 153419382 417516459 251782754 328918021 394471953 807617047 560568894 698825311 613017490 772007249 964626540 997422188 566681353 933428156 560426871 953989161 12591730 356140500 576562329 954647361 403943805 562048551 309640041 674461581 33620445 811189302 560496304 601973331 731638933 887041735 448397327 981698350 383532093 804455930 699035187 712883066 838763408 861977772 361222696 555558500 544275210 637130539 202184663 591332488 601109766 992720683 416987645 600334559 406934575 995280561 436011628 887390707 668681247 915568432 21165381 751331325 686256512 744769197 192184700 224321101 958599890 975528332 50566000 302774028 731437200 989869213 787117742 857061032 936573740 991287686 709831233 847805867 473106138 777465124 958246343 978071472 69100982 984949877 321047756 447605602 575028010 723348939 138548137 506354773 79838120 667993132 258640044 690864445 674402447 876821240 123546172 396222125 391853232 909082922 47695342 557576143 934022346 972232605 348747141 636109190 265886165 489699533 947134913 973255145 904463512 909893721 939180328 998317198 657919877 972712038 744002250 933176458 822920812 942600959 962178 699234570 957611411 963033104 128813218 877885605 460189763 956569398 64048086 304302167 108591026 668432895 123869304 826387796 228992696 536172002 993492764 996512873 828548416 944928128 481181745 904103975 634705942 720769223 47394799 371481292 76196466 635353429 759512546 954073758 701239864 918576488 208028817 224192428 956675583 968132956 323335752 483728364 509596390 743089355 91986883 856077538 438837758 510830345 34922105 559737607 811669030 861513784 644785944 907658719 78338977 457293298 641907956 969673645 147125396 631606697 825324913 972809521 357789837 895219830 111965660 326534791 257398487 740095044 616698694 768056037 219514662 344069982 341327329 467406121 710835634 760050998 837526715 851671968 547657531 643567125 773801144 836175879 658132907 930202861 357706197 377270644 929822739 988582789 53804701 990852111 35503427 114141028 446051677 828318651 906739444 961838339 909598595 934712888 969543580 998130574 419487706 781741249 281940280 560334942 568414704 574894240 344566595 572997078 33920936 670160380 326103828 374207921 106692805 982090947 727192361 781029952 672999469 687304542 571881676 640251584 468258126 603116275 354866556 712211410 531100094 896656867 93226233 865901012 114797667 672955143 981901070 982523634 218544596 937825722 431651211 746278790 74811743 76506968 27453414 149346654 367164219 769740825 505683321 590291725 687968140 900964220 164186040 622834494 961858467 993010868 79809964 165969568 263149298 818901054 887269989 991464652 33453861 921820307 461624508 978100521 488392776 743525509 227529118 554854384 266664139 358180589 68805241 121992145 263194885 328654751 890611363 917264506 750666878 816385223 693263024 781059931 960974195 966604793 431263190 502655743 737465422 909262013 748226021 976447351 195941777 886430315 220356444 857535027 793701678 865304802 212413439 929910137 109172295 506407374 99483101 364848957 574416812 709640122 206729720 899215392 911447175 939117076 221244856 647325405 104980073 906502928 228682564 471729042 263345507 795784717 454487296 810172043 916427064 969565603 898277194 913889268 248338575 706031019 311839791 744015992 208612036 467344571 14389983 722397684 292285118 529734577 89255281 532218820 112025552 933441364 91870854 148461927 135636922 263701804 9500523 203074473 958023998 969309310 62401373 361709926 354059807 490361614 612365172 703077312 664927181 687511583 867190498 961654123 540927381 816177656 542530136 958210970 571223133 877702776 613324976 975356668 654754488 895018474 87039114 448600822 571170955 799474416 663560862 919274517 552924541 864326697 639369079 694394582 353994414 530827311 974974079 981691375 126388117 983028897 250125552 980728033 786085953 838958799 516241201 572505500 117763339 255026538 159262481 324571646 393182831 944850658 763785478 782837619 763793525 859398881 992849936 997217189 138865390 284539700 171395062 744907928 266018386 572060615 968841054 982432888 481291905 969023876 947258956 971565706 329822071 944832045 851197349 956094830 564291376 960265232 993208802 999097407 155120900 843178176 102302683 693051192 730790934 757707406 431435056 486457520 59530587 654422493 506538645 967766449 144993295 384643069 374164935 717485032 208225278 405982833 185958378 331843817 738846420 788766594 436289647 694880360 539073700 563573757 776012484 852321478 333083738 395384256 801417097 903627490 325399696 383637313 255935471 559932146 862090872 983994516 762905496 812850510 234387973 525113478 109689331 433880463 896271613 978179077 719216562 866126599 728551032 899590790 19152675 235773877 501028273 823552177 731244703 970911370 453077448 907180151 512201324 863371408 532268400 873262225 260745333 372402941 316339357 901612442 582846370 749114339 625418536 777629679 543512625 983070150 924214739 995339844 825405480 923630162 134403318 156395612 213379146 358584294 509715416 995211811 624832284 654838868 35457660 697046747 420869910 673652062 816566197 875059620 582494099 971568540 678982782 889200875 140772669 890644985 831766800 990762458 278786648 920822724 376960614 517544308 739712609 740595912 108915220 346461145 265285797 551856964 493195786 747608639 432190471 920384908 870676340 934226418 405286377 583782292 971089334 991385889 820366944 950415206 993976697 996658225 843349642 970458356 853936219 945395691 552791759 790316438 222217352 623210511 236604876 814064554 205206455 977218225 457561457 709770157 853619727 885971997 715260584 816864432 533759550 824031169 835955495 846981060 861397040 870820092 293441688 340690714 881432053 988060747 187090046 612267960 302552153 369045264 960127429 974450642 226894203 666607479 513073737 572587926 86472244 351926047 275446752 278360885 784247669 803724725 187368244 230425343 374917351 753256275 437388932 605708668 142710141 253684326 584656914 745513063 477322675 633675592 922135485 944876734 111193495 519032587 848344671 997698238 262468241 821031583 757055054 808237079 563303476 911567038 441887715 712334047 570385153 776689757 298108466 585154107 442260300 627618286 280768363 308754691 552751505 904470709 89848431 130772947 743186641 761794293 180499881 530449629 886688929 929080758 839412861 873792722 244046390 495215594 269339118 922313303 847632295 956176494 213422975 935217929 149517553 178668870 31865041 818214328 51222904 91153080 449845792 952137106 631302810 687346447 551469622 802518471 822447026 992152032 798432658 888255354 84237462 541388078 95239033 491736226 724147111 867649839 215118567 877938555 120087293 805294361 424743408 854171246 873402084 948977195 848340321 862682616 606831706 956961217 601991267 778881765 315065203 701271839 20600644 502399679 652741151 980370768 691516360 933961824 688690159 991608244 521016258 578385584 512269295 745329527 726701732 934296707 618918141 976962405 753070190 984728254 501643865 758001321 191198542 564196552 101884157 241511454 953972741 993884510 114017778 948533831 839630983 989604351 843427175 872141111 91436486 229144651 582067512 687489733 604043643 751331220 963428106 997002677 818858422 855135048 131003933 191242545 171796605 235979583 971031024 977215035 151916132 344475845 778828567 807686412 487339229 553225171 450427636 871249517 340131252 925729615 444028987 916438688 550574613 612013744 950980417 979027476 942169214 943846928 970026042 996416521 551409983 611565885 285728414 474278298 823296823 952976387 419064170 459164403 208163612 751387687 685978868 687986599 230978581 534193945 987321927 997238967 426597544 496357488 408356490 987762841 10563137 766728337 742230844 959448164 532945741 794666288 9328723 109767171 365185627 673610906 695655416 815235975 758749606 955490858 178590287 946461863 762054588 803312583 796249036 946678404 705239661 715616881 101702044 622914685 360792659 554222761 599153809 615373852 132289315 608689285 930693624 959441131 763063018 847672242 460242313 532813945 628751272 971035301 244762024 744290171 92789679 253574346 785094787 943847416 49313767 424567165 699965632 778003848 612270569 679620590 794447908 855079253 429175667 441657817 687288935 926497646 112623322 403213450 573936193 594927846 124083589 305657591 793742441 830455596 656039505 916349384 11791781 916074269 618649606 670816280 311562170 573738389 49459366 395472658 853774266 907709326 263728622 760478465 490013892 632670809 141930049 914091354 415494807 733379842 374776650 679468226 823482208 970277567 565667378 652195485 472494926 634228890 190631737 704664624 540152233 739726689 901555614 984878349 818913595 937126569 145937431 750330922 781544893 978525678 605045809 794186056 718653475 940894424 967844986 977087360 543517792 625862306 410932047 837127988 921065461 952258765 164983520 503278115 642001334 925369287 387597913 475255803 271717399 684451007 610310657 743498302 563134403 686138906 149828691 729301464 512797178 647513521 530893192 700269319 590690578 754526360 184292534 917726975 407134838 627170761 563833578 655764130 343166996 860121774 797743606 879579334 284337574 688026669 131546070 841787340 599709100 875749319 710566283 787529097 13505653 781962994 788683778 847496340 438891689 664494907 64004233 491616270 739763199 841977736 241207199 569161592 951215524 978934517 619940255 682438209 613551092 858922515 425892683 802835808 710072983 905718309 968211101 969163893 246278108 550074226 656911849 734599756 126914824 832855085 494914490 991766974 804689830 833477535 737496728 865532203 760425118 960329376 951765267 985982327 307055845 412558159 690372258 873698158 173582023 438909546 874117023 975910067 403673939 902196423 671583598 712025391 952696860 961254152 875402928 951015937 335855666 575954148 509246904 832360912 956779685 962140717 352780953 357891176 366930568 479376232 318252849 489682717 817145390 973328782 511808156 575898027 248649679 733216177 360918126 967266265 242222284 534083955 2994864 648985313 634813995 729335353 406178229 488546066 57683379 400025752 218714296 940950258 817889561 974096311 545873630 817625665 994885926 998249862 722188816 822000922 344509954 931908886 222813458 636857201 452000418 544628949 637137277 946791027 613636398 665114167 804475064 936718853 585576166 916511094 758315022 776124619 148577898 865712962 267715527 581678872 480145710 946844361 514714219 978867794 229867051 784955234 502697802 682630794 99929305 841196730 180526193 833897527 906973146 921204493 959313448 977210011 32272820 98334114 826207292 945613442 230853186 457194091 595449546 885154843 779830018 855684605 91013389 603297043 410068592 481698341 670403057 852825770 806578035 983212323 130782716 487232876 883742040 967105470 753202847 797194518 948172752 972877454 133412079 852157193 483349187 874334159 318589670 911756418 822201367 868614493 686223127 699609386 115225293 141588080 852095569 920574971 692391714 861917318 148083480 743149253 998706593 998747099 432243006 809825171 435366302 782614445 460762953 477022476 889155916 989465385 773919964 915312884 544656942 923888055 534332066 917418217 449333378 646195747 320706339 450502942 119137653 862587937 585778126 801909040 739722330 772108478 604383864 635603827 136648851 538056095 436714959 795165281 756614181 807646503 926538058 978578165 776459461 992854335 531790889 878346520 200362506 214135131 284407444 821253374 984840101 990171939 60117050 490536596 437290659 991195377 951664601 970465991 777429184 990255323 649364833 884663692 359335472 533973371 193355815 589093133 916665086 989580417 535133275 948890867 44205680 518705177 338151838 439235218 613415519 716502480 805097930 865804321 619479237 850748752 946161871 957001913 149305182 766704516 749437671 756509241 88734981 789271430 244672022 618805212 693193635 831655772 710450170 748711225 777563155 851966676 668701506 975835841 80237162 264669441 838070167 884044143 542243130 619025887 964197302 964329139 702488836 898925993 402703407 942403227 870836576 976568376 865911193 910086800 65324349 199715891 698481382 706214844 236543044 589874055 613401895 962315142 93081384 879797246 197075026 753259576 206473510 337892280 410311626 890712521 375786020 924946778 112744260 913668253 17971157 280230640 372436898 957829083 549769857 810670245 377197070 853504774 521689224 589581069 986033554 998019133 735004566 799868618 158416254 534143551 711938850 913098939 290225709 344543633 187149001 992802800 625793905 979223608 789787985 932454992 851581843 872614799 153612964 564462038 922823639 988161915 491806788 845200331 827740977 867745142 998401488 999069977 557650064 814589543 397455906 879499725 209407889 451348002 236611146 373339863 266899793 813293356 568579951 696138727 772781236 977712800 611462896 725872489 320436143 383623126 865324825 972677151 504095973 691583483 788184501 994608858 45948431 649502740 954227116 963139159 157529977 400953280 664912078 687562296 736976729 752161153 468551721 508702018 802290523 826964745 125044108 387679714 38361607 931123801 202767182 578001267 456530347 734947510 779169915 802595708 134928915 750931424 628216890 923280579 307158835 321185827 430657025 890573117 535906944 838636553 227319252 809324922 809895130 912033883 671765412 991129665 255657911 467639065 763713504 906219099 735874998 937563217 501805955 947122620 331271482 791532194 976827320 977575215 707443654 899719006 153960573 696450112 768471565 981659303 44247648 695129197 486252975 683547202 829398311 959302100 240387339 458930032 902324985 981211187 997634017 997648893 229158696 988776028 791530605 933445038 569281709 999214405 482775693 942359708 941199840 993756896 219881805 756276433 742291978 898841484 32128976 962200915 577265276 763677418 786917828 885518975 170506398 583716146 138527120 689252324 756690709 939065301 110113775 181936826 620816201 686966020 141216415 453318632 570027598 995589836 922244573 935917924 818694577 957560696 572993752 972927184 233399560 273278414 820451693 822907992 772020375 810366020 18650166 208573310 893788487 953484173 252895822 741425528 846335739 990146004 296322626 419266029 139823868 166917979 337661912 606176460 335070485 438709504 591143048 693721731 321475887 576686561 796723638 947223725 985984891 991539787 106319586 318639506 990482452 997139137 687257903 955841050 276144164 309569179 787742759 820825921 569896512 938932329 160904555 236939705 313088621 680359999 609084499 757205631 918496707 920521692 563898729 698898968 538327102 709057479 426877234 779009179 408028979 681812078 343194460 951775979 951906262 989562789 451179173 534754189 296723139 714469345 297590000 906615912 223744870 797180339 147478666 398359828 219246775 337836855 508760745 995354890 137341292 957096646 333240397 934700577 112332720 473539223 651249848 841557585 378847373 941180208 386874681 463276958 989043942 991839811 308530087 978891506 742502827 822273532 337724758 989721957 155929073 534289349 740833366 827710963 778076044 809396344 50292368 158993582 827883881 876019103 924424436 945860705 326778737 909298017 660832885 975813916 955263275 964458457 741332538 797302567 854942505 892540171 505514910 507359978 940475965 989646115 718322182 804359121 57572741 759147831 87034796 206343420 338982347 845957425 673787367 846776537 833473587 922831509 69735829 996399033 956354462 973050581 888590126 943771498 747071710 857876704 728822271 954880826 311667705 989272834 394761070 723329527 108273900 271577213 608112064 711583233 640249442 717865909 921661078 932174953 392705050 549956952 919703880 969196411 968063122 979417782 947787986 952688885 781518904 874689202 90742096 143087810 652698950 895896125 664949181 716699596 530343281 718709120 865980991 937487742 784940576 863061108 219782255 895131584 270369345 529438644 452414814 630964389 661000428 981609928 682966889 884699880 53072010 436552769 967995400 998923699 99851938 621533803 243000637 844514812 560522658 576446747 513628125 858303982 753232600 871532913 372419341 414642191 761943362 895143859 447623778 474395536 275084518 787105398 346045938 469842729 412634986 616260669 107722075 735539217 844570596 844698247 427296290 926571879 887729162 962148764 262815577 833044512 54795773 629971044 466432530 673082832 151390863 459696091 838882524 956979989 589698131 666064278 61711038 362463999 178200260 279264135 950006548 997044597 125596658 419811751 228498817 387876103 869680458 944024065 896023192 939407487 569280995 748920973 850043392 979849549 887263835 987799259 33357270 954097647 777608576 982747079 929650048 987160267 748515631 977439292 945661182 948298591 16736000 256522135 445154556 534902908 251331123 597113681 683083790 764026314 881588101 926862837 452147104 646695959 461067911 842245184 338891103 382758995 349633132 781382886 225387442 899567363 987806126 995352378 391166073 427785951 108188245 441758511 742452773 796128402 494855176 617355113 533082760 661459493 730464141 907529566 520174857 823010814 66514002 623627691 634514356 771819975 13370164 984087463 193559590 278957050 958789703 996462548 340236885 596609511 563539604 942534733 660853228 981856211 238196112 303187783 296750223 959691098 312986519 675935424 302950585 650448545 642523816 933610413 814734575 921563030 440160645 450515259 910849373 947151432 619449183 902995716 253188374 385905674 905524840 987889993 465713647 495026991 434103770 511866487 632436336 907332569 493484079 812484617 788588838 922233286 715795447 907994443 81067372 209842136 479522443 665021456 221677105 448308145 909045267 922176340 805653573 905049309 837456021 857620719 805951537 953832472 976231040 991573977 725181143 934538709 73055409 705447216 184104012 205262293 386649780 722939893 294208792 922880732 576702866 739167301 239823080 290872864 317516649 597085548 5896641 173655252 876079784 942777835 239131524 474428818 333461229 787817023 830420053 955054300 217637272 853789020 901550802 942068863 86212616 998792888 694146211 726726375 323137126 960164330 522415047 539983612 405074418 654460295 618894761 709996067 651940357 888212304 678643152 728669007 729117224 908691685 94172379 677307787 755258546 778150016 500298696 571551172 898416513 951510598 87819096 176527847 51286559 545430293 683161361 916673290 82608617 724240132 353347214 785379605 386066176 981366913 561750758 919914042 885796620 985997191 68852857 549003096 347686338 442904674 329124762 971823463 921735233 993759750 652339248 937717699 702096367 883240390 62719232 602439448 314926747 850626436 555377835 978036199 312410501 880480702 387017067 977219561 50773424 354632905 183220580 751671193 570992653 602785621 407339842 524749548 449356673 864495851 568421389 731370274 172858847 791141460 182468313 937238600 507400869 526094928 268141583 410648293 576536092 946858544 252274545 940359997 906135636 975278863 213836579 593012893 858586952 871408954 221823608 723843253 384409360 970865160 447415530 467885888 396490567 911615102 201672452 224484477 163118075 173001994 671517869 842617301 30175924 908556324 177174938 179340834 314762656 522037234 462761367 707016920 408095457 827217459 161222243 333867682 319765225 921727652 951488750 980785817 250501161 755130002 406797774 686247739 378269140 714211359 871226022 942239117 144925972 375307505 190307442 278240131 30386625 54279381 685564967 727479774 599479932 622246380 894557481 990212570 711086424 788344526 134232257 183261910 45505778 644656599 223826967 287513871 546645397 830942196 620263446 952940695 722563839 868245664 820402662 981139291 827867846 902985436 939292492 946351011 770992412 960244400 259519393 684822019 33783446 211272980 369353190 375259520 754338627 827932290 23234148 856790390 811022131 881569502 71990407 253841725 96619182 531905654 109753382 908143069 160181836 340681314 325051311 750943035 181482368 998410181 370844352 813106151 595861401 811593127 471874915 897118105 508045422 706269461 459681049 875426035 917816442 978522539 44805508 458230337 995659949 998090493 441137454 712148677 109665588 700894934 479905816 684480541 856655071 913091568 237040859 812871634 73502525 459980620 391930918 513261499 622952359 734238799 369153463 724910836 330139332 380941642 139476644 472364386 716515414 910655604 78703981 337099566 598597835 877515071 90632561 460634804 640626145 994293007 925691573 972216912 335102488 650483796 609274358 808411462 320201374 569742677 67097087 919934621 363046848 560702544 248058009 970051598 127001530 651171548 221612940 969394275 368376052 561359718 197678560 219717422 529904774 615799251 257228937 699865554 227785652 472025718 799203489 998619339 421621763 690948100 560987153 626135246 633666368 903518991 595883213 972802784 254744327 286091034 904881281 989951172 209805200 992111084 928877523 960699380 452948341 480653004 733427717 952875483 717451772 905535075 808073338 864616443 896735605 955768836 572229806 952229907 427529326 792554429 446785633 861697852 574945664 579486955 977797216 986177367 994172675 998292849 258624775 342903718 213294129 929136009 329327319 796605731 623540004 843463060 693257146 960808373 260209427 634058948 663478161 897473403 430701405 763541831 271822330 642629868 168616140 365008896 511777848 527342749 691921962 934068595 84783616 112014673 191468309 673105630 499574584 869839383 463073917 845865473 141657238 673383646 113260238 336512459 163716037 919282951 429604979 617013579 6039449 746050835 494718480 810412360 406117812 535929023 372847159 844190269 408776873 894269819 472690069 786056847 897214101 994893887 625278484 636792781 511448041 741879598 564915059 764341716 436493372 978748599 458958039 744716474 809090205 870591831 160518889 905457873 843328541 905257762 309581430 866919296 756197787 824134166 687300320 796462435 531228087 918865864 536621773 656494535 242922687 819394140 325600804 635765473 465489560 984432336 180063714 763134919 116454195 750125902 791605948 963880661 303680157 317609188 106465977 226454944 25604305 134848351 870401916 950776033 201881682 494352133 42656488 136291746 996724182 998404229 700783769 976557992 766850881 943316084 981406041 993183253 994206331 998027767 194376223 576135103 701687361 787091427 291092213 424926837 34976035 910159436 975289762 985407943 249820154 423298141 763235614 877007055 334828023 575699177 559814048 915989061 883686921 986220367 20160118 593989516 48625177 765461433 203972681 255100769 670038706 795368196 997135797 997724848 270512725 870342072 128916624 841060142 226389668 677228507 775375979 842146723 177981787 507344229 601137277 895462514 33528248 941759048 130542074 435737272 207037308 350603848 816814460 866119333 877789760 970469921 22244942 350692139 645138639 911540375 12011228 489307325 656305810 674725800 491629962 555657403 180104600 974017540 819029378 962064592 252599781 332373795 194103356 789076432 438518125 531984772 29096642 351252372 394570877 677133169 318295271 786037622 486553574 833591276 808674652 925647478 224138225 984995765 610325901 765448790 907793907 970671323 869130859 879785302 277602795 947084386 235809497 707499137 892178020 950146792 617237152 630715686 361533901 576490525 720061626 755824918 852921800 931585056 728627210 746474560 737781086 776403322 813719608 962504998 525713944 913469226 794650462 938085154 65993892 687014418 415166662 630730304 297435706 419211429 404553504 980143190 120361525 834963567 510063699 703810198 649546083 739101513 341455719 855375775 753677569 814071573 735864455 793451381 910434139 990930441 841572086 901412429 96023077 859201510 960110215 974620661 634246022 863302654 941685294 955257068 10054838 665146323 705159882 849755432 855982145 932025525 477873818 756836557 133013744 929280050 837851940 922823318 813403331 923140862 609058543 698640337 195234163 683790854 567199329 659623508 104513203 379984115 502408726 592756735 392313186 852098449 55067632 805353327 657713691 990818446 693507634 703008958 230065996 416240630 219672516 360813737 100149828 771167446 573681987 765895656 123531544 156392350 269008039 357133436 68192874 200979256 150879372 611681527 924795735 962399902 764490316 954684895 626499750 831935607 989699782 993459203 302360 758693701 872552177 972143749 302404067 590659084 737653829 966241542 757516799 794676307 612368544 959018993 144215205 492279124 444885313 957021622 641478206 976997335 738069373 830863186 15750913 809200302 153950563 922051430 312005186 442888571 310984359 899498560 417746083 427265725 886683261 992868954 558024909 803079416 555744397 947235580 445025738 732622041 928947713 964429844 330275809 750077743 543844925 896187295 137914163 360824488 332633997 466171115 16269307 387314044 542684452 830625808 538849716 960864944 543796166 855240394 485566465 572563160 391164134 548375199 7991507 868190169 121219148 816460865 607358054 715460277 573875709 974388644 504757366 633231783 859016650 957041755 520695978 737471684 383136142 802282230 805313683 922048491 96268090 844730252 11256334 772241510 423735850 831795791 864384944 998142908 909926038 941596484 678978273 994676257 861540639 872147565 156406790 665266401 590194859 762238829 948982567 969949572 756638540 771580053 239398540 981090527 177516638 695156594 508410890 760988380 33851949 284869295 592077747 890691287 526229718 738797098 982383485 996819724 763650711 945579801 998289791 998860442 361444527 685107642 642557043 748636782 156004729 245538140 966417859 997683244 415644583 702125733 720543814 928283135 848842212 943096959 277095895 903866772 536217893 746197665 545922441 796751071 155862295 753048051 998309015 998336740 285927002 423017499 208177325 406096766 406689651 658039188 825649513 936151052 924640750 962786762 654358599 799928650 237523816 701197304 652289907 947336298 784366063 998801398 82418822 617553492 542071421 723791436 826284003 986500715 49263806 450358109 993816193 998044137 581437032 933212529 827195906 977877625 551147371 883169753 666692326 737753259 427670714 660030080 685452761 756715254 357946752 941144832 26068501 305574187 316986077 439446294 736993373 844610560 854076591 984437142 397400073 963385663 731115414 810705169 951767345 992914880 119522886 799623286 194256218 848730616 603353995 967805194 701294526 968010868 849723553 933939598 535795451 855769425 572581850 748334606 566736852 614371942 849833377 861497989 191423017 454437762 633251493 710995287 863061278 941643815 973390051 976540540 739553982 851912134 373247004 751989989 315907013 535742848 988672303 992908151 723754040 760169085 78654506 217098582 833422954 861255384 188288465 550282634 299357 220604811 931924179 960695961 22364021 610690509 283303095 587173347 663712556 894469825 666207152 808077681 143478243 945935435 451655513 568477635 999103861 999279708 861625109 922018041 305066007 454490534 691907855 973946367 608014849 641107542 951783848 973153970 272089376 683991864 638454322 946573604 526245403 988464185 970976486 986462883 946230486 983422693 649390293 667638120 852545068 857995196 217932928 975195986 120687563 916097105 106681572 530839997 183734470 782501467 330320263 849375917 516019703 814511303 15822203 825409657 432814801 524894043 232504743 752745410 363970754 681202673 372857340 630066873 448627758 852852260 863074497 929868683 564004756 837099189 795645164 996175603 406403857 652944452 961883944 963743025 254697161 921526826 629425930 924262173 374245481 503654241 360727541 856879183 153425855 819185125 551361802 708268966 496220375 576280490 290996389 902806627 100607814 285154544 557043600 985730694 452545330 688899171 458890395 987340981 312246645 778209435 981758846 996376335 346550251 507309744 921653130 979094251 173295401 183359920 752882683 979771934 124928305 560513399 773529252 828147529 675924524 756501065 676497375 841642081 177218984 194417122 550328894 994903930 292116616 746048611 454734564 972478663 768499633 990206247 713692045 825663701 857864824 939013577 106940016 597379484 640946304 900301391 141640530 520354377 51666720 894048921 49393770 361797290 474838922 894922460 738381350 883517095 768758532 935238006 843096888 949809924 244592500 594554026 956701561 966967691 623615000 762753378 830764246 868302743 815434111 852999921 942129692 961849730 960255847 975079120 920783000 943853538 244981486 868727845 320795896 958435068 796165916 814065164 508832674 680004188 51202368 101569945 786058445 904911509 526447727 914526193 523837484 790530737 37959007 278077247 312948365 482714289 753599398 833418428 752720752 878251695 250110870 831616042 987080597 987913364 547653453 687705485 928330035 961781330 951081262 965882264 540844837 735893390 221462025 994967076 856785480 869968791 45734080 950536707 848199857 973150257 407497797 628187114 89901951 928253381 332508655 941493482 255344416 646868882 737725442 769088186 616201681 843085166 659959294 765495088 162495183 202994284 61919621 595201434 245276491 588008907 494944572 842649229 998046935 998570071 968940767 989687572 718120866 932349973 141737599 149650212 237202898 919871228 772616496 824018018 893786100 972230309 474925772 674845350 777576333 943796629 85152869 816672635 717420607 719957540 607259041 963255112 726914848 946633895 869514842 924704606 813363899 880712466 315332090 882476424 628320240 635934106 280074442 375643005 282369244 487876090 951579193 961264580 804700965 806415827 602239107 720755708 608202488 651913750 571726501 834005657 236036223 568971013 789510700 897988882 695880757 761332104 189964866 239987950 120335324 347375471 550615573 563050261 700585003 969073482 391113241 879856633 443882678 865721309 609763607 952094828 928417485 984844943 840631762 965231977 355724658 690543777 212458439 904432309 94756118 878376607 755906405 917959488 584324214 961429336 680354598 969675290 332942297 750266845 92559394 862776208 88421794 299491175 808167581 831801912 260325596 727876388 671897493 821271346 405978629 563898486 153622561 982468649 417358231 568241657 677229953 725113191 809390529 918338791 360189847 423348819 673041035 814495349 556212218 678878150 646837754 775664167 39022528 359419772 968500008 990894784 578684148 850560770 702670123 940840487 701804620 853396530 457776520 780041525 353762073 354118169 166417689 202067426 277756546 300204920 343142218 561356327 209484263 283206566 75903389 993284417 204148433 909674909 37478277 546624515 119039392 909635947 531832604 720687167 624236027 973149423 458962203 979096164 275566734 546982747 878163324 907462392 480794284 621559849 812385480 926241686 759502016 990171560 597260864 749357253 70727922 140636633 683189221 829633455 741197720 929937852 777693307 980239278 285144631 466603773 344396412 653964485 171650014 244512152 642787510 977277345 632015689 954752072 495853204 607719163 257973544 824137835 959457611 998307004 987680587 994863542 638965587 639274832 307446139 378032924 791876800 993768065 473174263 847364820 381792488 540745852 228368560 853949525 930691258 938438597 922868749 959348644 285375982 808863424 346397942 362040202 360930831 794217085 496373222 617171619 312094276 863463273 427945863 858121148 254262512 975459779 45500267 121022298 83945330 828499308 511256978 744900364 646500301 983433598 592397141 737607584 282881626 911524927 252664614 595980044 790495430 794842661 621767457 681817410 683697861 937943153 128603710 378076103 751717310 952804925 594512045 886450097 437660119 704331323 868258085 904853323 446652667 942041280 777652628 968687844 984376059 984857861 141993260 286912859 244722615 725932127 876865883 877558063 506132445 875413465 384926460 711903201 295994658 772257424 189753184 408138605 674953419 910191663 162055726 888164363 394150252 737078298 654509624 889688754 882715449 927264705 851007781 877107939 387114922 417915662 284830698 526410541 836817161 862714093 992434998 993638137 651587162 891113350 777691879 993208113 997131273 997842553 113261342 916588277 531412163 627998679 130733612 886470604 982892142 983419736 456153451 936225092 415577805 920523743 679448392 760920864 243793038 307572397 554974051 690830805 195828141 247152727 839341636 914147917 536270856 650068293 684065651 862845462 851842452 888835023 351735392 564152902 906307055 915089859 910410001 922265611 783274820 851034393 530764952 587086256 752528602 847292285 663381406 670799545 77963742 163545601 915237665 954593390 686227913 810295549 524554 99423605 727292998 790250368 177691385 884055405 359632165 460274515 81108346 959221352 33012933 753736241 435189288 858379577 915703093 966062414 505580505 941251177 847217684 863592124 486583873 634910443 208868330 628951733 309492188 846085302 828509248 980643340 852161164 900016417 975524611 981758618 933533197 991344535 813413902 913451570 404884482 486388823 993374556 999081682 57204071 149602978 295275536 821632746 998521942 998688625 33040845 466946977 573533144 942858461 729449696 912351631 392136261 696694335 900021732 907143073 635964302 726272044 921591180 924857181 825575850 942084423 530219479 565373258 998174604 999161968 60589792 511025337 58605283 292603848 733588302 921811531 880646030 996265771 992249171 993291294 357086397 741521431 735502260 853151702 595708975 800961573 233102731 527959932 357651973 519389689 797004048 956355057 36950950 738817610 219950989 841893906 267377465 997470638 358246192 942149836 806239494 998251476 888755931 970729842 537982265 952469708 734447405 909260528 331317841 706309939 794657905 868826650 874573694 940392133 414783404 671239508 840995876 982703274 838387910 940874372 984059188 997783875 832099253 885798154 304625761 313849168 970712575 983190872 767940396 957116148 998318115 999285336 983800931 985495894 496571146 881655290 923994795 980608029 996092482 998040239 60726324 904483576 724944174 986100530 403290221 567135429 543337426 999294878 538174856 937257352 531410780 708313112 227649590 295873721 440079927 529358138 342686667 359773801 139399474 836791313 592434145 960436680 306240159 459963691 728379358 970500323 738975042 972049914 968672031 994954209 172756588 339775001 764949990 925145885 8755092 269531901 745824033 850990659 220608575 539028909 441241732 812347283 49070545 391955544 663205436 919175789 528319138 640233110 559647281 597949244 251352178 384453378 493176735 619958882 567644754 676771500 389521467 511020536 123799976 778811320 389111180 891794038 285868773 976468810 169497819 976762103 35857081 289973130 925064772 931435572 307331300 620738883 195190605 340902094 563127940 964123353 551501407 950598252 274211739 842116551 94143566 718388170 115034340 476363742 425950088 836339373 361997265 880165562 634431549 746621246 790286501 825346615 431443557 788069373 159452317 765970250 988802375 999063335 416233970 963144423 563982855 889077480 793543761 945230981 912538784 940012923 576337595 936476760 702236389 804743060 163703623 630231062 633302748 696267338 430684798 467820822 336703123 749579399 526401112 929222744 670538394 947562520 409914525 653009060 341337259 754318895 639820931 759390874 771309141 925399055 509586404 510423191 106044262 276414191 476241246 639260397 167049518 228327913 602559676 852430335 363782233 900250080 922523683 930235914 4794407 194590543 243965910 772694046 967312304 983295719 133504709 462883070 178270285 437733680 381466254 485863413 703654162 854042163 19460020 557875242 152218089 931415161 937859283 996521727 742087197 920105985 649666459 879107679 161519945 412243949 681816653 872409790 718584892 989861508 65769652 771303991 266806824 442514115 747027156 756359514 531679157 928525159 74349059 208450128 903723077 938181600 202602820 252843558 482592367 784743912 695610343 971085982 12670363 371159832 946665359 981824582 181709637 345392055 324673832 703149094 529750932 914595819 105119511 947433899 717347875 825070768 255144401 854306478 464046014 663339367 621887605 919292794 456457425 477046085 208203970 534199611 235982233 368453650 626758766 692719262 704436440 754606787 741793082 856778110 113437056 501501994 482396780 567682012 751808741 835464046 575162552 589524436 977754278 998909319 848116189 943339145 788775880 979480909 80880447 214788508 40045711 946852596 925221087 967931814 24622872 931309344 814555004 934386700 231485230 697426744 281354744 306860326 891856498 913292613 553923150 912623087 243309993 294651434 834603063 975700981 174925401 372572177 708540673 783049953 715614704 901604165 511047115 685433449 505615078 564670329 677235065 740620952 135613003 663106166 35259446 535943518 571862412 676823737 116778884 976152758 118063418 432746814 826554614 906244952 502098921 741556165 599201690 831682797 354643447 830711517 25171365 225501371 13031293 83573547 477138282 861592815 981756659 983387271 133865492 443452513 410851564 863937109 614648713 719685702 15046888 949770230 719130544 950729028 868236871 963981012 374633119 901746915 345423718 816667192 482600811 717678084 528493615 951995960 301335857 756259090 247479132 456900572 578912365 900443080 238239909 436449759 112626493 731998784 231721346 508226945 344640570 857614799 606943331 847844661 706744575 877077540 640615509 807492932 625622044 674156652 375887144 514684453 675957243 933177024 621430606 970687769 845717231 865095911 215637294 343753491 328613839 664741349 768785495 795209042 653198547 765725245 845971675 996299954 530734655 535385032 537405388 699694295 196135525 647842795 633120460 925109422 397456703 581970065 552105360 561648696 481743709 529527409 397439208 415299299 354560214 818219374 852204208 988055871 487649607 552510246 799800158 924946761 636670784 796477864 325973239 643803862 511127076 976015130 693350856 878351309 254967347 556463215 919982488 988740882 740859472 931880156 432666644 653160956 620648790 844254211 810426377 905869937 936763549 986073327 64695349 703098514 293945487 356792389 925158169 998900676 63523085 876254546 214969611 222891500 204060688 582893657 292833820 506419263 805976997 827956095 174988912 651389805 596581813 960814475 568283098 978123827 540569989 749130433 572639557 975182680 468801199 762804102 181170877 295055971 742954116 969890008 81578266 431481000 844029687 877443301 654437842 951526305 882073384 947184864 313125935 773114120 72290111 543330163 909753284 959985078 90414971 650538687 551656888 835002910 494333233 791661762 976307413 997812991 732407673 798581778 279916730 836017030 283727391 786791004 435150341 644130208 775471085 875294448 292394068 921910910 487021548 717629005 451573610 950265867 525834363 952246195 859618363 981146085 621647217 712993283 973249032 995703105 138758192 349596843 711827068 999363989 510946902 970596044 390109770 478574427 501170997 583006375 279077133 381753770 872262169 881219200 687313580 728236737 816022343 832849676 410007475 578255918 364912725 372862132 243433591 918670800 451616934 465741538 894593043 998318375 211698854 863040036 96630938 525891336 748058956 925211728 385792922 498603286 737647990 868073607 447274821 485313627 400280877 824992883 538258513 884686040 681201315 964905998 967611551 983783410 995582355 999245729 164743427 515764410 146433222 505109381 510419665 685297113 7330257 757528881 557558153 833601397 720754629 992077304 840526001 905373349 604423640 740765351 52280958 72423626 800769537 827528415 223905334 681333764 684788065 796771666 110756758 801285923 640498891 839986527 700556281 755119621 766340279 954372292 825291992 896885401 208344639 832764689 968886032 995993195 269983656 874587723 640962536 978873165 809212879 961473236 125567335 524904627 571061661 720442625 610804359 768727393 266491256 388897889 832654743 981093819 473981199 871054633 376462337 505313212 717995026 796201591 296288007 919843726 881293938 991899069 259481479 440430132 516909742 520731084 186290186 336499230 397256023 945564930 479740747 857383667 343821959 924044652 27969716 146747906 811668459 825014292 717472963 902310210 396100035 963081867 149587767 548170244 796066854 966608304 149500283 601850445 511387893 807451952 879301382 918934430 834470870 990531686 795498085 885526386 17740857 255724626 626914020 854500966 499205785 853278743 39269646 291756117 538818884 798469462 982316398 987015149 962682749 990103032 225329611 613916800 861757026 907732426 677524773 730807118 888787677 965445599 38641357 609484285 699492374 840197707 100057393 573318029 243285329 869347036 336730974 507881187 76015801 299179793 280730217 475256545 742029680 780998975 861798373 972083418 381497514 526195223 657356388 955029789 107042301 781989190 352039352 426808421 634508605 871850429 3701460 742165259 554481004 851650083 810746929 812865603 830947891 962839022 74003181 912134157 336130997 618737787 374429478 866589293 558784471 658749722 305476846 693028647 485594592 966647856 556932992 782031441 467031747 967949061 902896890 934075488 950082491 964644410 750425015 839782802 833563578 877570145 537035326 924474602 85217933 771885144 886629012 996818581 949671758 952716377 939918478 955554643 696595201 722922288 439216820 553253971 833390372 931480760 704237098 877975475 358813780 540852743 677215263 829335853 88786441 598922084 621770316 727167844 51525120 278186823 412260811 796293986 794704885 798438008 497781012 908382227 381304226 567707985 835949582 960104602 922233308 937787564 609919065 813658124 638575939 666328498 299060261 677857958 448045690 601099284 128623528 483627801 353840454 412147561 383528827 637545819 987910419 997396371 720806578 741620482 684846988 905412736 226098390 896781523 319234534 601734305 578652310 814578068 30612425 225912567 451240411 972272243 146363127 541560200 951477772 992967395 241942680 381172608 311578069 383378934 4799111 524652239 623383736 770798819 172602779 401310666 713298645 860139370 115765418 295094030 504228294 919901392 520984386 673489657 790463691 894976182 323468927 624129581 19504973 399871807 720235088 972553186 105648592 254831995 343364524 685645739 965279846 965457411 389140143 978273077 154144443 692326439 560473912 909911870 838701966 973121094 172223102 732527025 559272057 756750999 792346261 907540829 156521057 764951280 337382329 676691752 222032878 869263591 620931479 701745467 555665375 703842159 614335543 615310991 528593535 791955207 412978948 468158638 476485500 881751481 728765395 960745058 965876963 990212711 780468577 919011155 574523496 854077073 689370896 934108660 429632269 803835082 394187197 869890612 937302690 986537181 672432552 723275426 958759204 965937415 448209656 698313435 31478117 256825821 904278683 964575242 151102307 779439963 171443601 177381193 894939193 988207842 692960429 912424302 595526415 863750095 604852353 745955844 504173555 969704074 131081665 390332795 440091420 996098720 22122892 599542530 974499737 981384576 327311189 386133757 277325821 897506811 729389404 867292852 624025504 757441615 369697310 951487520 59659597 282252024 378310612 399937088 591455690 705695922 225494398 548792505 324590247 925981822 606928645 916946109 445893791 549586405 322625127 381682161 82879287 831982120 527512967 874278962 696166893 882438640 630158232 686450145 114386820 629090729 254809382 524272222 532641995 587439238 312050494 833939497 714128348 909001230 563602399 733441079 908657339 936120709 465092101 601051467 956640604 984111009 612330377 907079364 66358238 478765289 787856502 938494713 613989862 980738301 872763094 943475062 198251809 521871549 352419819 661982034 111075468 246887086 364782555 747391807 821247492 993200495 871020609 981671152 256369786 344994811 251792182 607161415 46132503 468922484 121458760 898712609 969011648 970165479 936214755 969507968 747214315 751152676 722581767 752631134 241000834 592661971 496998043 849793954 372383587 968280722 204569629 993530408 522102726 870886496 88870009 276926523 538050075 966951630 963252309 974227011 44984498 96761808 119301133 640305853 411114023 761704585 490738562 526224637 814519532 816171956 210208388 693001011 67138566 870999314 510972540 897840183 599540936 603476872 752050564 785275760 526820327 916883378 814392586 863712500 309996099 558110713 979090842 992882928 964925802 998081313 538878963 710492789 770344184 859719106 875320681 913242747 482510596 867680344 875843217 976038542 516150002 824906221 788710547 925006057 131994446 539108092 68622005 672386943 84597399 883265325 744858938 772532517 83235645 252363339 45604400 372155945 435013549 715647424 26379948 919432980 498253109 552541971 301330109 812990454 574926137 631409959 8328593 440120684 572024915 919105277 950524204 951879107 39029358 261529698 341550683 750559698 490025312 829630856 113790461 543390814 901879151 957472938 256337314 758231100 586076334 714728119 868346375 884969032 42396572 679031940 760895323 818064061 483150112 862947841 790509390 972426360 669999304 820645071 790853421 892727184 834523089 868581007 633984006 841654949 698171348 889183610 744232414 977147489 172755723 802439229 973770228 991200066 845306131 953793369 818030168 929296671 266518789 678981844 971014645 992728979 326113314 926523434 540287957 690268069 499269655 525128063 9471140 886032781 840555475 933081307 317025185 521216352 528271847 598127561 727165109 970840817 187946609 809215181 462733183 959171901 420815330 623270657 134373092 614338786 573006454 971528475 603085436 823627565 381404507 874131413 772089714 933707350 180409683 869418775 307338389 541456900 409747235 504325454 854370960 994503532 275594256 521272547 979471573 989047709 12901041 93499424 917069651 979392488 745086999 909975601 834796285 915947242 246679532 961395790 151474609 504943300 872419507 875430980 783882017 992375115 875955478 930800426 399790775 901950300 796823004 938994834 875762850 914443962 398986790 939241496 967714534 994145261 21517414 639904159 7257922 825894971 615355847 639268338 906558993 963034581 830250769 973607542 191857366 528990703 599074628 826632475 536745090 912464920 688819557 855881094 299734480 363376653 360638089 516113698 809881539 910034414 981156696 986867934 931563544 957249607 360771558 689300030 319729535 343849971 142589188 296111802 652814320 965838716 903763214 980153222 566307016 573230652 717053926 772928959 482943350 691188039 124017486 495221376 467704540 703815384 589624780 938913076 53271524 818549859 599327086 930095229 717894072 766253953 441494483 567554749 440258542 796067743 101603223 428887201 908278445 922225624 476621605 839912033 262428291 953943918 443455300 833622696 849682346 920099165 662307738 898542642 373905001 589823086 886553118 893405755 891260191 981999908 292036217 855884976 37647133 106503997 200781830 933892039 943467822 976624803 908310457 948485628 765498486 920901014 842921844 845649279 455617556 962213623 790210104 994728782 68451341 448993923 289856798 486599419 112892660 171516456 715231914 935730925 648261695 884522087 398523554 833391720 886119156 948018806 106303066 970461157 689910715 924588246 318442955 616416613 362005560 753325840 878828248 991400505 621476442 841233680 372589357 906989837 111978789 609003156 154363302 522755880 694065064 734122838 922581069 979892521 484030849 797852845 91097728 92781157 372225959 644854402 52129636 488010524 204619135 529319646 570476846 657278575 787251842 861955986 650119106 890192703 921021981 967510900 14822388 691329059 637186142 954085362 871558669 920760452 852614085 976963858 659893215 921209516 755697130 882039140 419373665 699758425 713267815 809945221 17209752 118063412 293417891 984039036 853401413 963590403 18784003 583655320 234737703 432652042 637258048 884009780 392961280 732056975 900613558 957817440 563064700 778569009 107688943 185137619 694133919 756828452 779239116 837981486 860524940 958749383 300466391 988036728 413219875 809425650 770308335 984796695 652978254 720128731 689205545 803032479 631411866 743261109 990720355 994669563 30749803 425827527 552644733 651695095 698064302 776119914 685432794 897407083 603231582 778860382 255530837 281933341 966857381 989205898 771813212 830919171 53092369 503515407 500568703 755180732 195597425 356120495 93402056 529806924 722284486 779599246 340028318 575966064 126757266 874813017 139068194 876586107 886104666 974381631 342892297 770040228 810064197 831942095 288901933 413028110 609532263 708715760 945039895 990529258 237142852 368903087 227698874 262019864 165300309 276457817 525999540 635096306 523396106 566167874 78143570 227604110 581421374 756358637 250901988 398444110 307114463 940497929 986943145 993203623 491830710 960598258 642462248 691391801 27669460 862239872 765693205 830678306 407399095 569570613 684576891 834919011 608560601 623788847 791224665 851089789 843440177 966030546 282790614 734009179 840929887 896505024 617823200 872560873 96744244 484171402 968722697 972368151 659887658 935181354 374974369 616226946 72699023 997150274 290570217 483251458 683753700 926342636 921060423 972160362 808853222 883846200 838998772 953919360 233946892 398487424 991790393 995986261 598461099 936101492 322095156 623414158 30586263 723393070 623603084 685370184 960894964 995488311 5054673 919346193 98616635 488729689 254923281 604940735 42571146 744780429 303699637 937500996 893004178 897051772 281947616 597441191 412452184 665699290 201868252 260647493 109563392 707984668 280435210 778808154 322123246 623129418 279544331 995338166 531571516 965076877 973302020 978908711 815520172 873691681 834649469 862761584 591405692 881548783 505805764 984427442 798840887 808012958 121447076 260175715 548714754 966242272 525641262 528178877 975354555 984249364 809098838 923331100 792301959 863547924 31662147 236000615 328435724 771969488 32637041 136570008 53411401 374329550 636046200 746824455 829788694 857032397 9695621 684795165 143238651 414811299 705900927 970135184 318818135 975531938 764475585 839435232 78942933 521825887 449155303 850430459 668872007 987967465 301606361 410041418 578037283 780030765 982388018 983965047 355848954 583410407 245920285 427361649 74083797 323265793 776962515 939762058 943560672 974031836 5860849 696032990 523265117 928322727 304433242 960464590 572061113 652510959 81207927 897183970 471380167 815236710 239285033 654614289 14549987 387683771 678812803 915554477 782955780 818794522 280488104 387200240 305154945 827035868 841111873 997489657 757778117 967713444 344341934 376770681 727146080 996125885 396306259 761007467 917387587 958257302 402846473 545844763 156238310 601364998 442294261 727185026 821345524 991360157 139748096 751472550 670561879 870803332 976566771 988486127 116567551 264015230 227301837 386645118 840973473 937285976 139128728 824925220 19385593 144112385 605862008 946759117 674454667 741327642 837699205 923523521 289340841 746972915 527187288 748775839 727947685 948628345 583325979 906878924 395284080 436915106 227671602 406337718 187901043 471094595 293139827 399979914 944653066 959031705 956821637 976877437 274483014 369957451 312401236 658369275 782747802 895501702 94542808 284862407 33927457 550552633 157477218 600147297 916482601 917997918 500976193 628348970 658497269 741584722 484385768 839660265 27704172 928189345 264238529 551952299 430903098 837325243 867323841 901438184 439684790 698173402 72133671 184153430 7237041 947770077 777707306 873685478 713408562 896661373 608815102 879202700 730000792 993380945 829932250 911898495 287850391 664894594 396333820 619035772 407020033 595261361 594057348 968048978 403093562 425166016 128115981 969619995 480449705 994565902 534756209 663711085 392128857 622322134 258886802 748264645 208319321 758898828 23715735 754077138 867933000 986383045 867376437 914711855 818135281 869459246 642218491 869900032 839911708 942376007 668549031 969074926 396003766 997020519 45732901 775340185 796338899 856776266 416073353 538649059 636304196 986638657 254061098 439200203 911439905 948944561 608928459 936044095 775096160 821009306 518480432 947017318 973244913 983455296 603729075 610241143 757992454 936104374 892723278 932128647 870156571 910906262 833803692 955307784 799993793 953993088 160110591 229046322 365949407 532206713 947975873 977488044 567937894 787318289 560556824 843015983 805523035 992692799 942356138 966482815 793210172 946769735 870952484 962335106 620557716 723952499 393173426 411070259 854257106 933879973 453188155 459868605 56928512 226286082 524905216 533807839 197733555 844906766 51774211 536970943 374385275 979218805 365574570 897277178 871202714 912525527 734381463 816913898 981218150 995735441 645132454 659053835 184482773 677687252 766384033 842748537 270655750 509861853 747058309 885057866 459056763 993639808 632498111 739298617 156675142 290778241 319017699 683208890 359319495 379548478 701932388 837473751 828815610 953095362 89979666 172487035 255077596 589426126 928508543 990394895 505658429 705479882 50990818 535983365 12367577 281061849 613686406 618200766 392148670 734465130 617290923 747826665 343652210 771020043 953372535 953718306 790202743 841578579 338737745 441977587 922481406 926559508 728374428 908340904 664387930 785994544 409860607 511836909 757466219 865003092 813408272 970059345 95046286 302617171 534231444 802502724 660540358 782217539 481839398 710735268 691770403 784188811 970649848 992476164 817087604 836540132 271864514 791192049 100954828 314035638 508403171 880122508 852775082 910560843 686043619 870139557 830911385 932141790 744696140 788890730 985365587 989061218 735939051 870653113 132181611 759705713 606681425 638700924 854476308 954556013 966446441 973856407 149379520 537752442 479570570 519466369 670301341 709766459 476689963 718853202 287679913 446077297 529399102 861378332 930984948 935415259 921882800 980209131 811862846 868110636 104290776 593262826 649267008 995076872 232129524 413025745 590709348 878217718 209615671 873481797 739675816 951626571 844677940 976128528 221024360 466525051 853307765 973530669 166652672 426109811 828182683 942476704 739187555 978279030 527937960 620099361 257590403 589670719 587639440 692451905 899369862 995430215 360051276 390935103 508611251 665239629 437488522 558464574 293662393 366977569 498843206 589766128 57502963 280092190 919099648 945065543 657998318 933102904 114502276 226098094 338715289 542960373 489018181 561866895 425149200 438819489 805793134 884106732 98200312 521170537 389859966 639311165 312749128 812315206 92943505 812010760 282636030 796694037 646996981 938856291 748303250 899989512 183266636 907311819 669551925 776172830 503811219 755007896 11236462 739636481 233677192 667190024 900368623 976466445 94812692 419085717 943691893 971007485 666132832 881855828 694505497 845801091 790264383 936818343 60387301 117523358 738951372 890755615 811956933 869920693 491669489 886329623 3735438 798333610 326805045 656913469 492298374 624264883 939437278 993443635 315271086 491148064 875645238 955286622 392225419 564370910 378099488 870623741 169335083 655148755 618180021 718934528 992601762 998445805 585923727 630124887 115582454 552462214 127477779 684320614 709892760 872369162 534186871 550946500 611152758 744574999 204647849 807442373 315381111 648019313 215527019 725806822 483621213 489536861 788026733 830447827 833214520 910158074 718503755 849249142 677537839 777241938 748408241 878374715 93797602 218140356 956824345 979712840 841400824 996391998 433720922 671621884 419371853 538794462 364950999 825524534 194726791 602988441 486987231 751608975 299755312 595657784 619762812 867021057 510450934 968644640 635882656 869847676 788094962 861133573 292665326 836528992 632525277 721809775 779869662 985619742 607035632 794331831 702299839 904022098 796233935 925852933 143748520 319061698 383112103 716315733 685643245 803487352 523286690 687289438 200118397 342700754 563512683 801291762 258487943 757387175 989621235 998203767 362558637 364929606 570828543 910602469 901770821 976215383 847477440 885456599 690034628 975036508 517179324 976095034 840154218 994511410 411640831 412591413 13164948 304420130 967509579 991369286 543560946 746484258 662893021 663231057 393365581 993988608 605475206 929119369 378952879 500999726 440433203 784276105 441250545 623108766 126551877 549959596 489061452 527047850 452601431 492323279 410722921 466542886 192753278 203084898 940085741 945159917 310834071 805903908 32802978 585929653 309378804 792947447 164755502 855758266 705435055 986942334 527840477 824869923 501921865 856117126 392642301 593144870 675513634 804394077 587140646 966920237 747153725 807402639 515189582 658030108 708036803 885335046 178427438 707051994 608975935 667258045 469058951 918620378 261912988 446334320 677910283 988211101 392004564 413446129 324317298 680447897 206363613 713500326 473938221 691045187 7657900 425521443 840706909 886135846 263339025 463882259 32217252 161273047 480963400 827830666 704451262 990577624 3721010 475422248 977192590 997598811 874634490 893663547 363822712 716256026 941664377 964665593 657066062 905897270 49431559 400806760 583746401 935736093 459085316 728248077 546094591 838843248 156956086 751291702 197874564 992986640 286541186 576088528 931592821 975080010 232330122 698147247 165740473 796948205 926545825 969449113 932996070 978157459 69371172 238092458 414475424 628361773 616886976 920535879 254129310 770101175 881361996 918156225 531155896 976991096 649230180 686855172 779500499 986665480 824863258 940135382 77714615 568638419 359150101 907771935 659278059 860617075 948536002 961599990 285821995 487218405 218579356 842913484 337982391 614652254 27758833 478057424 60736196 261551600 21715884 934199198 228507885 447591651 326176415 517419199 887679010 958080347 180819921 819235440 629072091 836049699 637645728 831080035 576876123 661534319 243211399 410906151 995032431 999007861 664976913 727710514 485830869 974695844 250899331 829159564 282910300 321518718 875984710 878076889 513267054 520626154 316561203 894889073 473939083 638658024 618723941 675440115 544076990 996160508 299274805 933216777 761590603 967713784 363518405 569874225 252602037 338264444 689114622 994888230 980346707 982093564 411823407 620173706 646336491 699479445 120549415 567210491 673226401 833696052 902914641 912000733 854148883 949967933 248241120 640160170 479574416 916167114 5069360 290422771 54204878 291470493 933670386 998804008 144852218 754301987 89925889 605971026 160706684 681646954 250948509 370083943 489839719 582890610 598371614 649123570 617081183 731013755 790899865 797144118 283580773 615212599 907008350 931411138 562030194 727910285 948620733 994749305 541133940 554057131 493982564 796065442 111709609 124264904 415260466 872919565 118773079 965493727 781182799 959262613 571298537 764897111 796046311 971222479 506977041 807118341 346397696 910493967 662407216 874708914 878181030 926949185 573416098 809145104 547562737 598226178 996022288 997003226 181983732 798169890 827342993 832319899 161929847 665136349 879140643 995141523 604802102 822784891 733739161 916535803 592301975 894686067 107730574 815952034 835171732 886245665 203060566 335042392 993407561 993814254 909178878 920778229 940257300 996476389 417503353 803106132 635827631 741114944 952207524 981574962 466660423 908251651 915601473 921740959 58231930 383206734 899559230 913373957 837436802 975510444 694628978 787581200 554662973 673265362 738419742 973337200 858589494 872786115 12672152 49007891 971707558 988250663 704416954 985614759 823006569 884048837 533115763 970675362 947384461 967839621 619744196 834417689 746118357 789097042 765229935 847417405 336709010 614208364 121326530 789172715 105252129 924391549 606331622 754371592 313190534 620762466 108136457 256449239 498912818 539238630 530088640 996868626 820651168 887737598 253043176 445286597 641017746 961235325 695574691 794487386 319099372 764625169 481491632 647134542 46963592 476961908 732493352 804039857 813196386 914585381 787879337 958794280 220960759 850940450 827310233 886201707 858643850 893201231 376532359 495661436 731496573 842951978 705434619 838182740 200475159 537817645 504722926 643298520 673722207 741512580 552607966 763551339 420265289 495463124 475820447 838784518 84383228 703859424 85011126 483423979 836974583 869210834 168577364 556005347 705511802 804522248 628553920 821482746 640557689 749014244 395634315 744134211 270881152 886970096 366919378 842326227 409294098 574879150 331663477 352648240 461558732 566673092 583130643 692273546 259420577 916780461 488609372 542395090 992789013 999094996 285490253 518638161 827000133 998722571 116284772 741844338 468348643 692824246 677017863 908249105 729044573 740817109 63964057 937853056 524664179 651678636 279458541 910549408 680393847 869105356 88025202 992560760 369159783 655698131 896863266 919960690 821250171 936482225 435248285 490727226 480098555 725167690 495038771 574019640 473916449 611519137 870228800 891249713 28438496 585338720 966028430 987378462 974775215 996002180 590296897 978875273 424168393 711994538 930201725 956886013 935153608 947746909 103207278 460813229 704421231 865264324 331408197 766317519 106809969 500959652 275488400 575654377 936984104 995734660 880575507 969246410 284858935 322473627 579011078 711714061 351865650 963527840 240382201 827428795 686837662 921839798 14556623 343366804 710296507 808154405 555895140 820533118 905344189 910821727 929084698 991415676 235120434 757616353 257370884 520259013 254493070 837002532 846916768 922347378 581615474 746638857 421070681 542395725 237624613 729314228 600689147 820549925 2631247 937646658 122726765 420708715 809533353 930366540 361742771 618614696 162552164 287184336 103114191 875031499 300851905 824562961 925401902 962163873 521652588 543021270 548668411 762806734 115089523 625491286 945574697 959146139 224957077 656379977 563534847 748266254 528076957 731039643 845211750 968155343 450360782 886933453 112636143 942121102 811061070 980413708 723163786 877858045 362627512 405517512 393997803 427389576 475621540 751990634 182978211 730793583 249489114 407129016 168537820 175591129 269575628 862933062 43591597 528900271 774241229 893203782 959509124 997409788 505444677 617023669 239203844 826023681 419332402 660845074 437948004 919372431 891267114 954704439 474288773 726265730 216989292 468027260 430543935 890475447 753579848 908022972 870366640 956743264 908608826 963693036 64143184 465295424 989490449 997060797 70412171 543949808 518076837 955173714 162703154 511123145 923830076 972229297 146746673 913844683 658690128 701339284 841324786 884101821 456630188 652166278 78362370 859959301 708421641 755542061 688875709 822801988 290488953 608142402 932922970 980589538 515007788 768818231 119341934 511883566 750865339 896556730 481430131 745842225 991805630 993612205 565631982 965325887 169816001 596947824 355576610 771836493 469776149 718618235 138191736 423717470 803765317 969031283 286488175 339415436 740945130 947544655 898258015 898828270 684052563 890175124 982996872 991600336 248046269 941136681 856790204 963448643 135976254 804001764 789824674 946739740 473604493 851929617 851056555 863053046 748287144 849016918 440614074 682925453 56687124 186628251 351496612 988710903 637789319 902310713 101443993 801105818 457535274 557505942 491581997 596683414 418402390 599971720 769918300 802660498 187816651 731749245 182092788 440139724 140925710 156174686 117937523 759284839 722264368 904056260 577820436 815226823 896726549 989541510 151136286 580139248 11522200 743943762 528522905 535580988 379011885 818490708 325939519 392131900 249856953 987114367 696736821 825341903 972696452 987898878 2232190 212316755 145151010 948878622 61609825 986634002 392990162 642016997 954846787 980576565 4586465 896587366 536140029 826145413 756056949 771518523 993547320 996556382 703613585 861896334 436302676 975523795 366473132 384635356 359380164 868256711 245743775 687580855 595838929 987438050 338651031 612449706 213643143 464173724 509488505 812443867 302326651 461901036 65369342 422841092 796297223 960669121 98365330 495337563 124005485 891646911 719315076 964064516 475338428 649050042 73716778 394632486 418165565 671708034 470246044 531701966 144099453 460656848 962409870 982952805 50777993 951971220 683289588 905190948 410046324 806032073 907660957 938905704 41304649 402607383 346537420 359520754 471126552 689690634 534894849 886964311 333296999 503019219 36867962 571852926 739233390 815070093 769898802 821382042 873781998 908463203 314979493 587986935 405848928 704072132 908879829 909350758 977395228 985312693 432613042 498814836 218416278 313843698 827610102 959074748 978911219 991993745 567507926 695148548 407785002 409301682 539958848 985904688 640158676 768765396 984883169 994681065 726191834 773549790 586351517 939800267 524615724 849432223 201404909 645700664 136400946 399536390 548515452 604576486 397475097 783313008 826260102 852897395 962830555 991136126 297522835 894373900 536369046 875365839 25822925 381507325 908739975 970314155 391177377 970748981 776317025 963352059 342787017 780347027 439721461 512614258 503343332 716273045 740151419 741899830 65724723 506238943 428555325 474349405 921668150 943958267 715662119 968244919 389726038 898434539 697758403 775556820 981343955 994901402 133593019 844518610 636634917 872843914 550028093 695661451 103155028 976246601 971205670 977166085 348573309 648184600 633591020 782459726 627420088 824029119 673983250 981633583 897229729 981415693 36608417 860458363 865818771 874862587 735295894 926715900 430307451 511542359 19313420 242694705 473960078 641007705 603590908 695132000 590057205 604905177 924683592 931785850 286132730 319671301 316327202 540629311 101113555 655717293 902812103 912269649 256056919 354764883 175717532 525447410 566133287 777766001 668956205 941133459 327861246 883904321 810552814 828049326 71222790 585476904 198962720 829407295 255003333 797731804 81498000 503797186 724338615 916367539 512101416 579597386 206353721 431808934 467182270 471440443 796946610 995177760 153234647 671162413 61950833 604339574 879064678 920382788 265718571 698969767 736091484 785367315 37478672 167260172 190780466 764113558 908042964 981427738 707390267 745707686 272754972 450271164 805325431 871924328 245323979 824552713 42104586 165738409 123184984 329592221 724832069 787635218 635853376 771507960 846021249 988495197 444239224 563970936 403987631 439624068 969346642 998248265 445125026 992064200 164915365 338690804 796767218 980839262 883392021 994181567 327051376 809758324 945930316 972329718 139092812 145995742 479171021 725602252 977317596 988331225 800382703 971882338 454395551 981329424 12267068 908123668 414462909 865801585 318522493 891881177 604263424 638190569 916308165 946224686 256237460 844421366 65431108 236725073 672808737 874698979 142320748 439968608 542105561 974016435 793608732 960610646 471250025 856148286 797999940 927849553 545367242 659000690 553259233 623701294 341338944 342088795 651927630 685918217 589138261 942623706 184752176 506085622 69863009 959373903 458148657 617610141 610874824 842343172 332615112 790690187 273012147 457114142 344050702 619426960 25499251 571967290 851458177 985038702 506742298 772540000 89928012 935378041 720130674 923376115 270166372 360236166 423098928 702823683 236318430 770993897 670645285 893912449 470829141 971333132 187766016 316412762 671219570 975593708 624453483 825696375 733505075 899223544 683563093 981003820 38847818 341484605 306221402 536617121 883225293 965850569 323337163 446900171 323045484 482608612 520548994 837347206 252590131 977986192 158411675 479928991 562789076 789396700 363872197 854233934 13316024 176270746 947479952 957251369 168246253 206708285 329407895 523996165 182236043 887938525 962175820 983782951 668091557 956027138 503729728 712285663 306281933 715669742 334642034 695080326 474733543 744240193 128249633 703049660 421524143 710336702 798107685 811327745 9797591 617662606 896135702 935977445 314197676 430266877 662892456 939906996 204864996 777761661 913510156 920900294 571340927 913660271 639249155 970787665 303114717 876153329 348578503 680682871 877366003 977839907 979079294 982296934 299555504 966151551 580784857 999100383 918256304 966091738 351974439 861348944 48224290 447873153 230594604 300849350 91536789 862973731 194253912 725356160 4192458 487915922 725969325 741254770 728088680 806061782 298619926 516620209 397307018 628604842 807469097 946582514 787963397 997410281 663670080 877204684 467381215 541945491 620382179 819110246 502161510 526682352 894534063 933389483 716998874 835335517 775773023 953940851 76831668 501304593 581072854 967278392 122791203 406313353 166482615 258070074 675471975 702350112 322522524 497276989 955458081 993724259 437669707 549088602 523317576 846056090 669823143 851869361 251339289 311444276 976053731 980323884 685110771 925027612 315177998 993023385 587271078 984885911 596797165 732430207 560467712 806473860 487833857 888202368 691915260 902660917 205979769 463001612 22677944 440630680 489201416 492050511 431868064 828776152 571736735 774109141 936116258 942903519 667910591 760047871 52621895 847238003 773298719 992002306 837931152 906940379 925200689 996406467 454970339 820685953 873578519 970928600 779342395 910303465 115217482 977398254 558356461 742799921 805808603 902390061 140212589 219688862 784671893 894156624 837940109 890777253 53265437 733303411 145568772 606875571 803799810 998824856 592136227 596046301 398954708 825215089 999357536 999392136 589924740 980185764 417288498 672980207 217266939 238026923 622688969 728603693 569723443 733692261 75039016 388762675 586163779 766322520 98592358 450089400 407889775 540170090 353727677 485862533 306485768 794953759 323129005 448971732 354480081 402681005 394920699 811131120 621812242 665506564 314095770 842857561 9929466 533619923 492487235 560613531 956544290 968274628 688489333 888216779 381022907 506047297 986076937 989336485 189601812 529930002 947242196 983632400 946751672 981562512 199359378 868749329 354122303 971224015 827240560 860619013 111676621 395814846 512840221 520876121 582131317 758261168 643141546 898027247 525283967 597650466 865828846 880648224 709249517 799555454 705932820 945875173 471817747 832998751 234038835 600384008 288235041 465999551 770111621 826682339 310409452 742144373 162515732 569723062 391702648 709358350 416742780 909615848 70790827 454680401 186549277 277838022 658304075 791466114 341587664 641918051 97695433 976001280 275948799 408015171 92614717 983847705 454068438 814750034 141901732 623513865 43873100 353227529 127793252 310403032 994245551 996335229 698823178 968436296 287238939 523157699 889170594 986057385 872310058 991201892 171470788 225908985 776160224 933560015 803539119 859681607 684099463 991152561 153845557 519216735 174850574 593252182 432293339 825793030 318763184 701242473 261091002 831749529 595082757 923731445 194330303 984348886 618068569 618740722 471544173 749694741 778578874 890430872 490314273 942743635 858840924 982181117 865697418 924301794 890198335 933639559 535408725 977941875 473187009 658139252 802372186 972759776 319245591 995694598 438411477 986667346 242435328 751529734 681175463 811659574 223701884 961385635 647443122 864335438 380105501 884481898 235953510 555861506 564460318 845143616 573772399 644854466 896929921 956666014 26655670 916509111 252716853 615356382 403316033 614432204 497091783 892588636 312140541 525208714 605767821 720839042 513851495 686929011 284063689 908716065 296385570 410190224 185277323 316331803 98970629 190105292 321932390 520661658 734275801 907466141 758768085 791685772 165672306 506491552 825105922 963686123 582283730 722904226 188148992 438500773 601349116 632144443 94382663 316888826 80555389 616719036 259590457 773980103 693417498 981375259 215783808 551811103 333172212 416035818 343194051 371547086 648571111 660178777 758750224 808624362 236581990 857683305 90736399 812837212 770957546 973240865 954544938 969290027 111761018 239875339 743476464 931817250 929972865 955723726 626442916 696015798 478897870 938522375 739474395 755158672 339103234 846328119 638813006 846108169 216371791 534772577 318256714 691802803 495397812 557199572 957095 13482067 287847562 883215111 929072725 977426400 421054605 993775926 110753269 500078861 406630262 536588691 893259260 940479612 96397257 546466092 360510382 612825176 729879829 791408599 725737628 826918555 821195246 920804914 949780694 973235842 71400431 583098942 456063203 532725794 735282353 881820770 810854618 896054417 31576336 373388062 523874677 764462869 336787973 367610505 893858195 905709397 319180000 533412631 693009661 991237442 728732133 782111884 791173042 904382671 91463152 780877265 16448907 297858566 25862690 855787696 323216433 538142741 523480699 637484831 371903770 527739373 685368847 899605978 91841980 221889507 81194133 943272017 325565129 804263969 399249901 725177692 539517438 747881185 765341802 770373329 559723049 587555575 725648135 947448258 364044493 772258691 105923116 757014371 556392113 583382189 828413864 836718734 14092877 908551068 4320258 174920341 98253299 733542070 552885137 597276651 440913802 676916385 319529067 970573925 464346304 824556528 842582210 890261773 280321626 731505819 654656477 660702548 920709929 944281446 975677442 976586856 305663534 527571905 74052728 638087243 830500248 910937431 614857774 647719666 232629378 641192952 39123869 146249660 455947339 955755729 356233200 730360586 709469019 733942346 240523822 532849691 425773528 818192027 518615322 930959307 595379168 990765982 594481826 894606545 361153472 366202049 426746567 702796668 458674420 668471822 452885045 829632391 409930072 460441896 422080832 996755801 75922389 230151484 329324855 648222346 419331169 791480532 98605979 611556296 686175964 973104144 340346009 699503966 409749307 669719103 80881189 277222637 825870247 970448302 71475975 166110557 229976853 238028345 727838659 775067616 450451050 481180294 324386038 596703005 784379435 794580856 989059174 990379097 219242738 782350705 332316313 919416490 134798431 149795116 752164030 961116054 889447132 914593472 179625218 744758254 48374914 967615381 567881327 763913427 545506218 974821344 586101085 707292922 98422538 696364782 426518167 668520366 498435646 600324249 994457949 998689616 841057810 872069332 398201993 931583094 381718173 633527103 729641380 947021246 248418644 888724354 168501329 728879904 435648385 890361822 983950276 999191351 573387030 719920275 26821850 998189178 91629159 719126777 186975787 718762396 730796283 915364969 264087281 561847732 350943462 392843647 991662109 994184488 239882442 725279470 166317591 645457267 631364904 721435475 510056124 743133738 469632903 537262027 323587808 819974553 287992516 924315482 71424066 228454800 309372460 404964003 732523709 827801526 114677220 278043046 923691497 959461535 655966194 786355038 857528538 862695768 628776289 800314435 817604556 824692671 458315725 593715404 457859012 702589416 645114865 697406926 71008722 356520898 618864492 890563183 965017843 996068744 795785153 966695366 156480475 995703046 460775592 481621715 249045280 687757529 79612622 875594397 299581772 327598525 485155733 682308181 457620178 564775166 816369805 958393447 438866877 718301271 861104789 918022138 982394001 991930071 592256724 872640085 817755285 887999552 574521822 835031218 356810662 780932601 462587482 923977698 205519897 749717147 635142838 754314652 977587959 988963057 301186247 837440157 725168610 981274136 566656327 849926531 148135750 804020136 946505494 962985718 679454255 842560383 383606139 995561038 196202279 360441346 775285823 976221567 837663993 899493205 452380302 832056397 636322258 856675884 882631305 962581921 150034861 315384223 950401641 978950944 765782017 766064248 279005092 343234021 656804319 950050845 528761110 916981928 616502902 937154804 404363720 512588926 229740947 287821907 27165535 216523176 893705176 950891118 188370758 826560390 727846369 897187223 535190308 843057020 345078579 633714677 804455800 995896153 398107690 533968067 847136427 917249210 927923595 985065270 952708589 954500047 250424717 589400117 847686883 898048865 207219863 655305741 652478977 887498594 237344646 441964937 73836678 377264077 813623772 830680324 897219955 904837452 732076738 957304499 935528968 996723442 967920779 978227912 887981552 985253931 826853649 954477946 757313891 873617200 334719494 557395057 446564833 861753030 66315318 116000326 115400294 997727284 880352395 917380112 756342058 758651695 329817586 392541172 123700140 683897772 800466488 949218520 828278121 887267631 880355174 917483862 392884753 495000707 593511887 717544903 482985531 680649367 202955114 813250190 144596297 619461578 974430775 981792700 395271033 779346487 366812923 961461833 242745490 769678804 471293319 602752570 389832598 586173277 993191238 998357990 305569037 986696486 926077182 991603898 109731072 592756383 149646968 490040875 796160539 809463654 968128466 980109763 338569712 653934225 962869421 989513375 601301765 819822752 219101966 641456089 238335444 267314579 192252057 928431794 410567973 891573119 937338540 938325590 589731680 761084254 568487409 871084156 495585769 887759906 183176477 699808647 626285702 824946469 25576777 310539390 246848498 779822150 61279389 746763021 984543898 988536582 738555884 883683795 257297617 279293038 303809763 454360288 212405568 887454540 865159098 928962789 345038720 887055813 352417942 699509594 74188652 896589570 138833308 262897334 239562453 739944101 681329062 740164378 787036278 794224470 364117425 529973089 575494844 955678270 914877632 917743527 645144960 898243705 466138872 568164559 556316614 949648108 41768758 373003804 515546254 841805001 230275816 478053074 686255096 761560711 888184128 977025382 863996813 880389803 560631900 643681669 399177697 765581005 784545370 832045014 131463747 700794932 656214094 687544266 206457315 803136764 716400500 961839410 540600150 839273876 872159252 987267337 205388910 755449281 666942332 675832977 221544680 574438146 528633338 875354736 778866250 780009556 756721717 975192786 726839984 931126934 353049814 863553487 172761143 838461738 123549882 693795501 606250181 762962122 758172340 854120144 412957713 794509947 640220309 769136182 541368304 701270931 352452723 827927869 441156189 652783373 714779656 996431513 750240022 946918501 447812561 859778552 89611579 785323940 537274786 685820380 631776847 759534887 843837969 895255978 674064154 951015717 966310183 980950329 434145915 452352237 573632734 926984181 9593414 821672113 993629197 998849910 342661791 749919921 87783236 543897147 772395235 895579074 396534089 795255909 907854373 917649521 425007338 785959788 90699530 415997231 778060923 874249513 668592433 935754417 456217562 890121856 539857790 577861973 72951621 695759285 642532484 693559931 469792272 863466937 983515248 990013469 233392449 553346953 134478820 887316529 215293212 421071556 362743834 889403007 596842438 936924720 339746871 987635734 477816477 837436386 5459730 147349424 385761262 581618806 134367677 368465631 284958304 986096400 193528416 508818894 140873469 450056753 754859837 769186816 918615563 975945527 384167500 983508065 245095688 780780398 204756697 492000416 925551228 952873477 936259053 947132569 834385535 862300661 452328179 524341981 515544701 669850405 843018952 851142713 845288129 883415910 462725591 513763990 741152086 905568761 21415801 144343031 703369491 898754989 600210285 767713971 834359568 954570851 443251123 554811936 631911257 764156927 421177134 453017920 980549830 986815171 351878308 913787429 590522704 670303254 624769047 939150795 530172921 963335221 346412808 532682249 181339297 268925247 421813709 779273862 313923456 821370796 431658444 988650538 238025569 620025079 995547322 995798607 358343874 920090834 566813925 881432764 95578263 280626833 281487346 681255622 929877580 932552934 109373928 977516316 141124521 820809662 815595310 885466895 195934508 564938024 760061964 945720744 894765755 932964226 342227193 428765201 302893921 865551518 352079002 706179305 581519592 605108143 521181626 912207155 222611324 321109163 100798331 684669101 693598674 976095246 299930264 564203292 761571457 971542246 612544187 751233590 618027613 844086977 851884440 947891665 929448796 935406127 638536359 853403358 456849990 965433600 336928933 459648981 606625207 726254335 566776395 781859805 205777494 487769880 904615935 919656497 758569270 844159208 355826442 419633795 469762437 853447944 549142293 976196617 625256080 654422158 916636710 930732810 91585505 754915122 32054757 213765611 91362724 732280003 142712491 917966301 891894506 966916486 889187775 913013785 961616612 988055705 164814305 772229183 899485139 919235507 552271540 598759031 909969118 939091973 236373717 320875875 842291600 856603388 404012254 737801169 691146286 987923460 746249535 800547225 201982379 216100041 196029568 323910738 667389457 802771477 766063357 869101611 79685350 218661591 864578853 952913283 892596398 976794793 470772652 878497078 67733078 502064552 464547669 742787552 562994857 677079718 746601943 755159322 384784558 586063059 521743306 652824207 822680750 970862090 850022393 961058181 775925096 883143215 41903892 712941922 192494088 429492319 805782985 960632356 282601573 388453745 90816285 440697650 309470215 510633832 931910621 956127953 546687219 877227127 86985929 972134851 212934016 564174835 240110946 376507971 948371963 961244326 380210456 854326382 956701084 976968565 924343632 975482431 953083625 965670531 6266034 710330169 116664090 681670651 369170453 838209436 949404444 950597120 42808272 556713561 440266505 868908996 960187487 994002130 982506706 992637853 968178339 969496560 124425021 410616878 262533218 594165092 158708078 567691876 348863467 596523166 264200235 422183244 831102742 941497578 582420094 780164613 707368427 854729417 886898517 903298052 73985448 887689889 973707647 991413904 903502398 955932878 917340406 989562052 920285048 978450531 254288236 530731815 748210014 941473484 190328982 991401733 676540769 965912104 388988101 400332763 535240251 833043496 575531215 931595807 969558555 999198133 329913403 660151175 364035302 819321052 136732437 428061998 84557041 871287351 35545834 977571867 28525835 725755988 181812727 490285046 171008451 868331220 774756875 973473416 794999859 839440375 887090260 917420610 80995864 244783090 268743195 972879817 684198363 962517889 936509677 964096824 388162525 746979263 46794907 945325290 815274912 914928660 980949298 984521703 932469420 982989658 252623594 256465753 265064405 366642279 455445499 750390429 447046568 524089148 985205430 997168652 510490417 528220321 707684590 962898757 673099475 806012602 765155221 895791673 572815338 974259840 908610452 924258353 57873334 718000836 624115816 707458687 643924020 761821095 917000731 984306299 799265121 816622722 211188 876701303 481842827 709754976 152197230 417745267 947912778 970749901 576934675 786571585 989424575 998414153 347142762 416603599 705486154 953955936 70250115 73674979 470782197 685363927 949012093 979189640 427786254 870688435 567625072 765251058 103257247 715572659 483806503 617860535 670518830 932223207 566090466 839961015 570743660 647521605 377857562 782357996 221239020 649043475 633401698 663213374 834818425 868789857 533867534 742314206 793583519 902815270 368668087 649822232 533081982 797170861 922869280 978731312 723662147 823508200 867826499 888851686 848550050 920456104 502717534 698835796 61126657 650754595 326808813 705702341 209225728 212847587 64149898 335946777 191923686 795364406 146798238 631330669 427623985 813208716 42326820 739566335 331341770 339570819 214408386 921352733 989023421 989080737 936791031 989162759 923337190 964636423 731326459 734543366 403686125 756161606 329067247 566096114 53085355 676622716 620990625 742846834 636917936 681977350 739899937 968317162 996212207 997161947 815918425 845714770 796193255 844403665 269512332 786221595 920202682 989696653 663956448 991430438 753656790 945633813 944475496 968259328 471235710 742405870 760198230 843307821 745746526 904961003 817486364 933895746 853858060 923790620 954592026 962392963 885838563 946477645 899059607 962470516 235828965 613735315 176578936 470506069 199628456 384829401 468850595 721694163 874765664 924523306 378585404 418612294 100897450 112591913 253168138 636562859 133243894 937729320 82252507 532966784 470786552 925439951 171181494 310091113 236813564 318234406 707062293 913924151 499506934 800136876 927138107 948885134 463360937 821558522 881175753 974920692 376647737 428453974 665813418 906431872 361078451 995930818 633439049 887113408 150704594 712250030 494561133 995621524 831389822 846808340 573487094 765483686 451009720 995772236 804608311 956711856 310050470 327560715 861211310 865723420 874831117 951549746 514399653 747441628 48740259 715351125 456220403 752654141 476764976 698921560 871154487 942947461 229245502 607767888 138001329 146611676 515902519 581170551 553546456 648380351 859278757 931272448 578394673 861793629 80048632 263918714 94148999 398207444 366793309 996543200 399318672 967384262 442195246 816113633 440823170 544398977 132981617 564877019 590586529 638731001 766988174 962842756 234158367 396980436 475403843 762404806 854851478 983439657 62672239 90206131 810272210 926937029 228441801 824980662 18797140 439545314 236000243 329330674 375218353 642396251 409343977 602758269 118765934 443225636 723128303 876898851 209828394 857263849 613677874 916475556 808021556 908036612 751556104 935507765 175996095 648099890 247538558 915923334 396450116 772446595 364589127 929643481 669076365 798784905 590784932 798821694 562150428 880148811 955124288 961806580 183997033 350782947 440958594 985135659 97401227 114159193 478220731 761905570 989633807 991850332 742362310 913498775 473549148 724982988 313211992 730070691 830867324 846403942 438073665 892013886 734483210 976958393 937773960 946537887 249874706 750619334 394380957 596412581 370633879 705410198 970248630 972841571 657347859 927515565 205739055 583823728 951116253 951729975 107289591 203864554 609500484 990513369 748050017 922848929 235980144 520588209 907534165 950956641 428848783 614396277 380031253 397302829 150311384 767619079 698473204 706552821 284296272 497939660 903666438 904747769 393401231 706110791 68483891 959919723 223721148 749025843 895625213 910977846 952712332 973034514 67004186 461596546 484251152 631700989 836584080 877950812 687818209 688879275 165701431 234980229 529296834 764669560 30286118 929200028 903785740 962884775 366083043 941642179 943696618 988942172 513939412 914656465 247383654 460515117 716505915 806443987 876474734 946187962 331304415 923410633 940331739 993193537 467925330 858772411 612790944 842621999 640626490 935232445 876297448 939252999 240727399 604680271 917772075 926424344 979373241 997884560 782133584 950217924 60877587 96308707 763493564 994489663 725157336 893700024 36145610 489255344 705804001 834497999 419777300 448388592 936306264 970916371 874084786 991967055 104366719 748983310 704622706 877316114 909541786 944107568 8220305 466385273 930834866 967990588 900785080 981385953 79689529 621928167 607435535 968293987 703707194 810873238 200324669 936770672 659058786 723301293 457061848 907677688 70642648 300537746 167130523 981005546 210001634 280688375 125093693 912663865 292930817 324919169 22261400 92855003 42455433 451642751 186208682 730954978 2378456 400010370 766053382 912853794 806670131 903807306 577942702 791684911 193434662 383897661 432825278 949321172 27981419 883140777 326051692 807804202 636191311 677116637 524352290 735736540 941227607 942719033 164872515 440670691 113628653 928214703 328804367 745379085 213591948 617244474 507958833 556236469 790028812 881309102 979464249 987800416 853710756 923837702 583355862 811110170 295000279 830139824 768285214 899051169 681001789 933045167 319097626 737346257 173183349 367924666 996888897 998117661 2090672 367484173 270812572 310695938 892926727 909937382 936892716 954790915 880941264 921546224 821656871 911987326 905313116 915693490 366183307 467625763 419512758 792627893 698433888 776641985 682902187 912964503 102054198 682362551 243001058 257904619 851826224 994587086 219783194 536822624 818776289 967883239 15357655 932219605 932678148 958689615 59115123 982949850 879503412 880631404 431063483 436228532 98625735 630578327 556219970 704197946 697220318 951582502 869024008 889677369 951229525 991744425 638597815 949830921 921158017 924184873 371598031 477122258 442392171 839613778 385660855 739803945 2554575 785136784 405629268 857952855 36865190 650826842 173846639 880534750 663096444 940368613 604093667 943405781 623281853 747690520 41647169 126945867 358428554 757784392 92211478 451204429 863434045 983962735 424420253 758361481 428151078 867281704 771924429 846589644 621828513 822610155 110380123 494836912 744008679 952280334 436581427 660227000 483067336 752242667 541502756 678618443 446492214 995183324 32215963 324713543 55540481 944280461 993184049 997346906 109750552 611891177 594999259 731208733 408792695 975140501 908397694 971517406 720298116 935808136 459498346 664846226 423494954 584761973 175302551 347352081 989398177 991260616 785239435 945380147 661806519 991331735 773914521 973866926 49880766 673083822 665762286 962340325 159662592 299275288 716326840 966385769 860163593 861129764 962340577 965542312 513181272 549199728 34508150 858726385 722624053 724115220 923568342 980556275 59187305 133676639 279362552 642565296 546736976 679104781 956882498 986941923 332833983 433236108 910343535 958295367 395660812 575071723 813256046 975184646 699090726 906121238 117391683 162982363 153366923 712296132 996391302 996700230 98859880 795235195 40066715 103631829 287156975 711058164 401170734 856295572 766026321 876093387 507011225 817188856 960840777 982557616 631930597 887264295 69904187 415118809 816962600 985879653 636767410 689449859 887887733 927658021 184736275 827126874 531905166 919502360 629085376 781526804 789724567 794851628 850643084 974433215 799008974 823100782 384503509 599115169 158974038 514776464 617862581 803158615 703716760 794088664 91954579 620320984 293299748 592011504 357604230 580051500 76571522 580626553 115921552 678146038 157548933 946445455 937317662 959398516 280195449 674582448 678576182 766062956 316854651 722555680 138872305 275258215 879744478 911774533 693023478 832504091 432231918 474723626 117556603 528596174 80172438 761930843 81167509 783987351 788568339 981682953 737339008 824833702 944136493 963211161 782629097 988919767 245344135 436384404 715597333 910966558 356913742 885857541 314121329 946005739 436978228 623804517 135179741 348420223 553149136 640456563 761324147 923642532 835822191 999186036 804493896 916555096 614608703 665460409 148328855 312479706 21041759 807547555 732576671 864274847 469146714 584700936 938315174 947448288 934601587 982384172 297233075 370442965 362107270 981361630 24137595 752622072 626723074 667758070 980273540 981104194 855144528 911165124 136240908 315362818 42524516 561285245 379788725 567751186 570612900 621494920 465703212 802832448 596716537 605228911 159256531 993142115 118641497 476246744 170022967 715747954 679997851 756334217 129013580 446284668 911751561 988404705 656689284 824965827 627678582 658320671 946857426 961143415 366553340 412816884 277710784 932013430 720125203 992799014 616599057 693698531 602427769 826582737 402528838 499882602 123444554 344502588 327789072 494857289 93932345 746789308 290983786 869614390 779414496 973699160 566157137 577738295 419990075 756687420 71238181 623144618 451078061 765716102 957239414 982839395 440744494 553438705 646529396 863469302 783031444 830907023 20746569 791939258 929729259 993628777 912419485 998645237 609520589 881640899 5493812 379336450 320613820 851616894 840873142 916916185 790233744 981890373 197491371 198655988 952325623 962602566 106837151 670658551 136533370 770136902 283926778 611943917 985181483 989523649 30544966 535457455 562703775 998047334 751488467 795762927 75380855 381779325 361462291 944961753 227025179 726064989 471196686 530729060 939137289 959809370 137717294 182129830 453662986 710873336 664174213 853361661 246069624 591973855 920977065 924997851 882656617 947861844 54644312 980867155 564604537 663936024 235839602 733085215 655802238 995100205 871804194 897972810 96360479 143438318 258854358 756917130 659556338 663355076 675343582 708167052 38052872 47816250 609424308 981796067 519036928 931690272 182067746 539306221 712304906 962344996 476203904 477958936 42289176 681056856 323055219 421458657 156052011 932129556 828130969 838182920 839853567 967341162 302733294 641208269 937006719 943490680 155158066 327167922 494882039 920254958 185668816 574001925 556395014 849998615 716079883 897471631 332024914 845927867 916894519 987460178 768301686 945282155 673651813 813838493 138666368 373891044 24558671 634529474 384060677 968010893 647516672 909816659 35088949 488815055 484723990 734619254 111718974 978129906 140280355 302641967 492333 624141908 344086663 412729905 69174305 491474373 579977276 867792642 202813329 507611095 66790414 86321362 741324352 781938310 488485228 515642122 179650672 209143078 136636652 351821287 102128027 273527895 285244511 944041455 621036709 813458417 573342129 586665090 671346223 782145959 833906551 870944736 561711315 705576968 224673068 657151420 372518838 876951665 110375106 671030104 807120638 840788595 529305797 739709078 880100966 928497449 16656701 56148489 542323670 739089668 892454665 953642115 773165970 920471476 639517678 988590239 56881373 711324264 486915849 677279386 114183687 744384921 758640613 795066560 834614900 839279722 473895978 685645224 925680225 975561635 356605220 866697006 59707857 991401887 607561078 675383857 992913321 996239860 919636775 948337880 642279201 719501527 725935843 968865010 536003894 653425955 758281405 993248845 863036339 919722896 968973135 969523310 215774864 711087129 355097369 921370482 993304496 993462503 820368780 973065450 440825015 718687093 972862602 996141576 529791987 610948011 578582378 641714757 262339379 608750532 694201194 901091883 918370664 971729492 469369251 677325486 802594978 951564481 322104610 359159906 633941957 911990109 725101434 869719488 148984675 330341417 605002075 973468988 789878157 835274288 975776769 997566682 702232859 914857723 292247633 878537751 684138532 840222576 361693690 513970672 83149090 413572381 244198146 718465009 226569206 255571578 382893373 598178020 871417451 972300378 693024925 975508192 937847351 962885746 650480183 950104690 374800870 967091750 897594986 977000691 10087739 515778725 25986297 920233721 161257785 263656604 871303190 955369823 974011449 996064696 319589117 576484904 302619296 815565395 132879160 900023466 972182360 982577353 345546064 728043242 379543105 855487623 438470041 825464530 786690596 795352714 979078675 979519298 454073859 964539830 306971923 710077010 987473443 993523855 938033330 940473007 858442600 944780957 125396760 636164463 770863252 803392449 594466539 933042128 489009506 687640771 293030801 423937817 165712113 968428132 971165815 976704299 486389644 763173909 242740253 905057867 265599025 300199140 933611159 944257930 701675271 994951435 975552881 977519160 916906568 942929986 603053033 831293598 130510699 494830959 408624112 805482706 765102495 808155157 658600385 775061832 856513054 907416307 82162439 596511848 755847113 798957523 107140811 664629085 419362135 658387295 354918582 945126521 845546891 921740649 845815436 954092246 992629071 998616752 59004091 886311102 246360428 510715339 803982130 820789667 842730369 993989756 675940210 765706971 31526181 541000575 808660070 915654090 234371354 744372948 749065459 789407684 105649283 455477104 505922449 924790827 858060199 906609233 683182111 969384321 85616409 406741886 179148510 201220623 13259660 968777864 571492955 968951720 23144719 931069807 959328114 989197903 825135358 968836793 476383659 489217042 758909631 905712927 567056516 639958733 423295898 623522029 424983046 692253714 482259383 767048865 484194565 537667682 23063587 327068281 697793145 895953221 353601704 653222433 306094743 782310577 587453604 748332052 942416648 946008485 122001841 133640954 358003813 993436714 336533540 406996906 757981909 975516084 245871315 367391948 83941879 411512075 163882811 507224137 113202364 753750166 562055967 633350695 783385961 896989642 165953283 345587652 111569273 350869600 163925295 661387300 277001154 772003975 652335671 827695857 779918770 852745468 829211568 968140117 308967625 822953666 913654240 969605680 745518868 793464391 806382725 994936640 285229901 543491669 597839928 653495896 654920545 827834646 352594268 839235362 296240186 659583139 661264418 886858108 965357140 972329744 758947439 880450875 782280820 832904818 872335271 898721466 743129871 830568907 685657772 794459503 562129880 596985163 22914957 35765964 296813541 596561377 165951797 225318521 558351332 680361706 672574138 918656543 836809986 843954596 638602 736394953 400345682 896668416 499240979 756474882 759827008 815005004 806056613 979312317 603515297 910200978 103381777 915850023 467531314 755016375 909831455 960000764 846285409 853663254 695689126 803950933 669742548 735640064 782218326 996426711 245889097 910535501 126929660 297849107 595487667 743090269 1349975 541735781 525226203 732851338 395736237 549349315 306294553 500786725 297923498 588150235 285735482 943580580 535408567 790666929 132442256 400497199 217332709 708567731 14953260 312170795 642187744 780773623 696794943 756314666 233791668 396093267 842223010 897404792 992368400 992735220 362066040 510036002 931090922 984583140 501523561 575101359 918919597 927710215 725000973 793600803 465754575 708258534 41814573 294959730 7784264 688927396 472384948 823672790 171978199 827450627 88569530 338343256 427426301 660178448 825554886 998770350 259004727 676484511 999095116 999312229 589687689 618205400 718423897 955823950 981239245 982586370 949054764 968178330 68242644 967311134 517737891 693087156 227490294 971294239 504415234 911266046 904419783 911964783 113827931 797346444 500334783 730627571 692898913 789772465 19708067 26530481 468323208 622504218 205041567 298291372 284359090 374870349 991961661 998725969 385190416 439829566 775644820 834572962 558747482 681584958 746911111 962696940 798439028 916363865 786489495 868222332 857862440 897824497 824408064 958651329 260039445 312203353 625939123 704216121 986187032 996978367 653940108 779908216 496952288 970902053 561806486 653481461 58743279 91533868 644099069 858986465 841466927 870446771 569168742 696109812 348901132 635086074 199429786 491719212 562936747 581222979 849323010 893220088 350256208 626163615 531438697 849465757 546094346 958510909 888543006 912266541 352088260 962476483 999043579 999313198 451576455 627529726 633679422 671270013 252609655 790043638 344817138 447795813 195682781 890842484 250557773 661712370 388933346 610156957 308220616 562304845 779658695 978520775 58051971 416848563 793549066 858562587 335110383 580426046 307172505 343296314 529544813 918143761 635747825 654958356 318322317 895430163 842441704 940804412 733964369 739130685 315923670 974185699 578205918 817332860 374306932 755474409 199049180 702321750 818718271 955837654 721709629 993043217 380374762 841585400 348614106 719350876 450084946 964674561 297119522 422975406 165701531 380905964 668674193 685844554 303757816 726197550 536723708 710954384 829452134 956304798 93973454 945628525 581713448 783274557 381750512 403304151 381367205 591074636 876259046 897449740 175102632 860659839 909585492 946339029 301265578 987995773 844144174 929301524 762469383 904313009 524792505 778674904 902707370 984923351 656134162 988520984 89062832 919053381 768969071 955653269 456922874 884984038 201811230 507821507 484374281 874140071 915128972 988458636 780954242 933676692 751127524 897531976 362905365 751160144 107017052 651985660 581946726 865481234 809848214 907184184 918162927 926530802 700696917 969188161 21344671 969938493 104239798 377906664 258435553 715470490 149877593 565702800 147147635 754888904 415073227 780185197 175391630 278034060 574495583 591754942 990053202 990538624 229440183 314299911 320368830 365066617 310420964 426828636 782966354 918514303 960640785 996789637 891573817 934702745 687193843 927469613 907409929 989965356 571846386 825891228 905611539 921527731 704908635 936863067 278604318 829179911 793585923 965857932 759374065 847794477 787361011 921835384 750967719 849118015 118115932 469087690 666350079 985561717 107650771 387656661 300429547 928197835 456082222 467184932 819792795 995904511 395097740 699920073 501763062 898393288 571472751 817335091 727171873 932694700 932125800 973902947 450600526 470623700 612303272 979779148 884627509 920607034 108927816 502159961 140205613 506675194 818733240 961351946 439661719 711251822 744341182 868141583 762436549 872529194 810327450 847597747 786600301 842331745 560479797 689919455 992757784 996823678 772398218 822557684 651633783 979952632 729129278 911904277 666480720 895779668 156277605 504781528 456235532 774082255 109639100 162658955 686267353 941378792 180031801 687375208 1484283 287137240 155012002 201151619 319633937 794246764 354830310 774473207 369438767 564757790 896873057 957630918 472063227 550606144 730488069 984994031 534809756 599789151 119193969 474249335 258439129 954460789 228815911 389070974 660101697 746976057 831797796 980164526 882259799 969213203 775475229 929872543 288335417 849763051 22461462 927748382 163692590 527684173 104152658 560325406 326207960 544046231 429480882 956572475 221466209 375284359 680855973 713509090 998389811 998625642 21223096 856134044 976880925 996199790 908917728 922242860 175636025 890201210 207689766 290752144 429620772 614523250 72892518 803464460 22065463 754566874 813023747 958665771 889783667 955557538 356973659 678024898 149310009 307034805 965376302 965620210 367567966 799361992 485399074 842203613 166369154 638224358 879623435 895583447 769118660 906511331 666906905 747688754 238639855 684665748 449062114 798977996 517305003 683238466 997464107 998850068 222346775 893823138 670744492 859292719 337749877 669553295 356268573 921621621 984906454 993755424 246550880 596205959 822019666 954441499 677137978 954650529 95242548 114469954 683964667 795570592 390959603 516877199 803496578 890714190 429720166 564684824 971822768 979609297 807197546 810162803 169863921 339853274 542504875 928457983 974957960 999179582 631340072 668659900 733066901 918578219 350321630 944491856 450891679 915258249 792014427 931467964 734549739 949684196 378687401 946427649 624309379 846127749 585857543 825123980 29008972 546224038 939891276 990015353 904263734 947988065 816065075 933321223 561743717 935933796 905563640 981844184 83914898 875187850 194654397 587488434 425550524 792610074 759912224 766485537 61608166 567166385 199300545 910928047 629823728 667244506 827969589 830339893 810132421 948419012 46326922 452537239 649430691 914713332 139317903 749712796 323974655 784986574 998224952 999263919 38414803 900386414 987216089 990501564 891550495 948256616 758336024 813735382 75389615 273507318 469469488 976410881 89859444 867984085 718904134 832025781 961249418 987016882 955159639 995705253 893209075 944576363 403197483 781227489 756106813 860950024 609153628 905342898 115934902 354577941 281983703 720842020 399412753 802690792 751700854 909328489 183113679 936808415 165768957 751344684 575221126 833553895 288175449 459916767 942422876 960411664 190330673 686694977 78139338 267255379 752805228 971596074 300961603 918768969 36675038 488358730 63643933 200549016 667158674 947812920 507370213 602590308 387585747 956085247 92577579 321581788 297711877 304164037 344706561 758358375 232138725 836734692 333601678 606466922 271524250 418903357 699546578 733420903 629914531 851662939 946286307 988592330 199142680 286199176 439226767 462305527 232781640 742955500 995169475 997834617 50981681 406861831 973661430 978080067 21258651 686072491 781990959 935888292 317948892 378303944 195739716 719034174 773734192 987409164 133345188 942662210 541906314 548848159 879061747 949892813 320688762 594468011 512983826 821584638 555301142 998879766 614395606 672959290 697525809 910657483 388069624 460144713 475549835 759720112 817977426 948526318 328533935 743533780 64152268 810637389 473690938 822826705 884121465 921644565 951573360 980610152 606331066 795373878 415495113 517842482 1377679 923718585 865286874 959339223 67248534 757642431 187403276 193172544 79195917 347616365 381417772 989313416 88820645 137775821 696634671 731510020 550813691 738709590 41672975 493783735 577549444 777050259 685482739 705146588 417381921 899752791 137791485 526894589 655730534 695984985 248875477 995176170 626511865 790559215 219578318 346823670 753713829 814115548 59520963 380824352 822891769 963801681 865224022 912042609 645763857 734462182 332518603 794891141 918787777 981264314 780277916 829069701 4442381 743614007 922703846 925071864 669684617 809390663 474462769 558534359 821348774 925362241 884595955 913317379 232811793 914314141 304875092 900875388 377848245 451289664 911774796 914913155 843930986 853548742 208998893 963804334 988061006 991863756 174809129 182212730 109050677 186779319 773419178 967566296 767961060 785474589 542096652 728596161 537488371 978393036 194172511 423944328 326540527 792275850 372845884 796531375 602214150 934703203 371750194 799914212 834580641 851959525 877985983 932516346 170375680 972316297 634545379 970261358 431805409 995817077 519371615 590900625 296245045 483676470 781210786 898398036 158920198 753557852 474708710 599967176 842118630 931612538 708704807 895997666 91363828 134843580 420575621 494352790 27464827 194832076 744341056 839454536 187429882 758356385 185476723 484090421 550084208 835688435 320839149 592119511 658553664 934181361 976443329 993546688 92675618 98245229 461798514 662780806 351052972 948354643 241567787 508059461 544091562 602404259 751060032 943719259 284585196 349379581 322241558 454477559 611157850 759080305 360823964 646038070 949423801 982147328 789046720 827924422 886203299 977199480 861044242 889659136 403240489 767397144 461017863 817487134 886164108 972469280 745197008 889585102 382847035 662803579 321551858 527411559 134929041 785893811 936252264 981505757 719041757 768173099 218555820 849849606 671424092 808728367 931151418 992853234 242623571 523791410 17951175 690142748 384628921 643452888 377316294 863493360 597623942 685507617 207342746 944848292 420383731 810668148 821752111 964881966 913411746 968629666 814535836 979014236 743517008 907622887 836929731 862303542 846305057 865528962 620781000 787740343 357064443 507930950 314250262 663742891 102335294 923958500 19683809 333463767 222600036 378124902 228026019 807121794 484653074 773413175 355589309 938805662 85861609 646828589 920085988 931694258 321904522 926829310 810389858 992465747 235028834 475180458 981192833 997701615 719012647 730296475 942592561 965429900 256892200 410699595 891519212 946451964 637438887 796497543 714592685 887938838 56286217 586219259 430339867 633352798 803654336 825510823 807626042 890070299 548360737 782332471 645902883 907306482 431813290 800507103 297836021 541949415 67319166 166943553 115202986 363892084 865165795 946510595 395958383 768268696 975517468 977282541 180009192 849895016 513146939 701942100 770857776 930408276 130641522 362229304 770002747 961477478 436961536 977731998 203058302 598080234 406335291 962570915 310310778 616383049 34193451 964026933 12374360 227349799 777235263 817616653 724620993 738144046 242859334 631188158 945597909 971274521 858562291 945890596 468244912 684246932 736114278 847163665 6809296 563187304 294715365 915819125 454641866 919678451 15544056 853846800 292721620 350073123 546433687 664963309 529598594 949504389 373831112 548346931 952831407 998123833 305296015 460973360 950318011 996651787 210951249 772997385 982216336 989707163 329045183 528990248 857213888 941615180 325201881 625572877 476183962 629859328 56839118 64560110 845562236 888939945 665681959 770151366 905840144 951646928 541139812 558021980 880888491 973317339 843412803 876818236 960753481 972732929 99237728 233928841 219704714 794559178 389522858 765078467 737961581 844080808 329624841 350586048 164973639 859258411 270146947 442699257 279544604 944274181 700835697 731372751 526085734 695951437 425960000 606524953 484142089 591468203 39815318 271367318 5605099 179706454 570969681 935507309 342050607 675979894 160490736 651912727 247640021 981349911 410056186 941219677 394881073 793650548 477665803 774199695 382202492 479740276 925286175 969799522 350354648 472901723 421949717 826723559 849642444 991386939 923175142 988849172 148388670 920432685 673862162 834235856 585194023 750705169 765353358 998553175 171775896 576806230 102285244 507130874 392811153 885319877 230791893 868931817 372283858 569635482 222885706 827794904 170062932 975801650 234405090 711547551 838377091 880576291 837982444 969185274 307013848 640410299 850548780 916891827 546048517 703838462 239584485 404069289 128844246 262260422 824658143 827684591 973158311 992015481 408208848 692619298 18871652 644291924 261690307 673560604 109898575 578047928 199060269 560044914 719098579 926852016 443989037 951676052 922298615 996165790 764345595 771979017 386145364 976645863 374218032 829622310 405867647 652855392 767510398 818300452 443634010 931952841 547110537 821837059 213522382 405244073 55789044 826700342 571647433 745119516 855808602 905432450 670701646 701567536 329609632 742794912 565412599 886447068 588459021 768315538 157956428 752809317 565347946 568766910 870370077 888738463 835124237 906669604 809445658 951537683 538130070 613211820 438925519 802360909 624294576 634303646 878448954 958475321 393286817 772231298 973748256 993097464 208390399 908701518 10684252 193309920 90309320 358042424 644451125 723976228 957681131 963836456 497735390 761534202 919536241 970149743 349623923 843865492 975405068 981962725 414109877 471516335 786954779 843227347 9117727 923035233 854290225 977239672 680128772 959371954 791670762 893177775 362771157 827147946 377260676 754445311 444488459 831309437 419900196 543299976 291875618 349912154 935350515 976167746 984463858 994523547 611586288 976826421 430666562 661891113 937074386 939812537 88089881 573721585 678968929 904239017 283549199 937938164 376636047 629415636 159191120 744254516 138690929 950318968 445060362 976321825 134009503 400692607 427146575 494661291 407868665 619040404 897842227 979899516 469191315 515177569 987843133 993095438 92731629 171866977 993843187 998450832 430704354 715263811 672683028 785736768 851982648 961693370 861640314 923104991 810693171 880573532 527521578 736558238 677966341 950844650 884115561 937986050 179808037 290261303 291834643 859741839 307863778 423769857 181380301 678804882 991985664 994347486 80017230 477364465 125487393 216311638 921541983 988991199 280887253 481569681 983920256 985284881 489763260 509533453 711680847 902884198 142441420 357392533 230309004 251297749 112956207 434559096 725479652 986309439 150813721 806280056 454357990 927581340 59527377 943632902 263742918 368218793 115192400 577491436 959624966 994328705 322782137 836111629 27715550 985878775 847464261 982482545 852729830 943990342 827859424 949708139 649318659 881022336 950580692 988146136 296326530 560459973 829361434 926201322 614413870 760481819 445118245 648129226 745432610 824978158 182924194 841726824 986313355 998746287 647078586 737061320 469406309 753421002 920997487 960707712 897689841 970860406 258312034 909538864 220688299 620104601 401801276 869826195 638619464 823891273 786855848 923944915 326403814 440170127 658730033 801738225 356132526 551368807 921216211 932921953 239165509 716065664 944882425 948469431 45024027 287619148 308201051 457479660 424187178 575519533 268998954 882389118 198871360 887711918 862844340 936380673 737789532 931459581 916686925 964434698 78147441 689107464 531442457 556060622 505807962 836458258 34469269 628441652 196094614 669887871 658766376 718244878 492125302 667334560 572850859 790502587 245609003 461320019 935062630 951022227 412078592 846212463 631664789 755744742 396473475 797781052 656247737 904044542 565991495 600718513 312674668 755751034 844771563 937486170 374848724 586548969 452099442 781927557 466255568 904969170 422148789 554200142 175443772 246926931 379528345 474018588 481503385 586236262 19068267 647917141 344282130 473737036 506925579 991975200 302602991 919441142 467318204 692776863 80398293 719022653 483319530 550993085 189749655 869870760 656153183 734221007 234881682 317371470 811952158 828345408 925017821 939869927 929107708 945883329 241467980 271080347 287408473 891874382 171610840 681824901 892549810 953828560 950336932 971727060 504338264 900067113 836868107 921802091 860810998 937180629 836661732 846703226 804515944 936456123 1048037 157982685 761942270 906512057 5963951 856207809 419651446 619843673 550242027 698392366 217485924 233584923 754310718 858829756 656977266 917077762 175889081 825140436 847656787 984834737 683390642 801428377 369625508 675854087 907193663 986949196 422183360 724147331 113335547 741936123 503704882 512913103 669836539 833732188 288667066 632175406 285710828 825108236 937722303 954916456 639757102 696126990 711017768 754100858 49964662 803368754 416598153 531048574 956129165 967902182 937152317 990804655 922919840 994663675 433557673 975228747 989224020 992613941 75662300 993775789 308927789 558778014 624694421 897377324 834200424 852109250 897393032 899064096 49133371 98706474 17955384 32505038 788407911 866874705 170413882 443602694 888429173 937984079 397142633 466612402 859685693 925387348 142371269 889310762 247618136 487865403 638077471 672939763 730504742 851013051 652952281 959723510 898510797 902338858 802024735 958765227 799994874 935331041 375346701 922566913 706496169 808759004 994162303 995077688 168082984 889519675 617011205 709108307 310083682 584532527 594162612 633600221 626914483 826378978 744217235 758907283 749637816 871408196 542078285 580382935 285363317 518326558 561963798 703134945 679003699 830919671 896086752 971890156 854672468 859117521 958017158 972680424 746607738 804481888 901813171 988412529 987785562 995171431 138949824 433626729 249507313 541771002 354206065 794866723 437479709 986064724 216143616 816486836 827263600 957834117 397601981 954125756 519651319 816668829 261631244 432446694 170968672 634699763 557246270 726637323 939842255 977229118 756239617 782803411 348573378 395123232 634220809 754261371 246102668 313382839 711664511 805655428 565385124 680643648 476267921 665546176 346181528 415417954 10008589 196620743 714655838 791227629 816018854 965021782 131884706 467154015 213443632 695616876 216256301 603832885 970972119 999062553 527741771 685565811 843867869 892545074 845866918 873472318 664137272 758522459 911389882 954243125 311250275 764884169 303072436 677875894 675047045 719147669 109660897 653455172 450077710 917064539 671240683 860421564 503341458 994575103 329238370 346288562 669754309 932925119 49055445 245365463 470014946 937481267 201612188 636765600 334806991 346394299 263116600 771596849 586267957 913499870 330210137 999038800 159827245 925872638 201181643 467452293 796911850 965709587 347439888 762727579 831673975 839767086 248932849 575416133 937057759 978474652 243501951 366751190 444425063 751442014 389611646 463322278 584757130 964627942 204702075 403871289 433439496 674529356 875964958 954107560 167125588 434517641 129812561 958676657 209784285 738610725 409519636 818845533 522493155 938710817 788221127 992925166 601763517 857673575 39556818 775577132 677922997 965262079 322015790 864686180 606586189 916482277 326869302 424383884 915892142 978290253 837166283 929057383 229557999 694941927 562515162 862593522 488596138 933511308 821953468 999082412 28204118 952041075 355753652 960951637 617187560 630348862 491809750 641973576 50261819 322589627 73346718 922662427 119998911 575891526 817251751 829358973 316796155 563189719 331661858 396762851 313133722 907331305 926066182 955544259 877087833 978045856 742266832 930428042 184235737 470436461 853947785 902220723 935672286 961160278 52769896 658807987 666703359 981431676 153641128 449683874 676368746 832692904 51014125 264964520 703178395 813561702 600125248 993709776 993086985 993389840 517226356 657302956 563462918 693059416 543212728 709313418 810079372 960858156 645208045 885319324 917505846 979310278 131272704 822952503 506639805 855648984 264827135 613726954 990218449 997952240 441127901 448517445 446517483 654308444 809249054 937447147 444982842 996688853 658154946 858329290 277729294 516908183 561051494 584563638 622163129 994618497 568655169 604593759 137687738 571689516 98501799 143879893 51182614 181968123 251501956 898763532 722187820 755398749 136488304 983206571 976353944 985126951 363208181 732461900 803997729 984982462 45175790 802686074 472628050 600680093 658935212 916159882 432656219 523793894 509616265 760208345 481823475 785727479 90158782 505961539 352937112 875685884 91398390 697061542 152265909 257550622 205828449 669229137 840934572 877970033 699220159 699344108 931156742 973201090 114802118 584270464 797722085 877416905 364773963 761091209 266442471 862264451 577344140 913480532 820079573 862558075 217107930 971908742 194238931 279779449 931222185 971225200 701566121 920098617 97337346 956333544 901647847 950595725 78506221 533776905 385541031 591518955 949096384 954821509 107548883 467453529 361642483 906904580 302928265 488127534 971920927 978217023 625580490 716039308 834512582 948862993 826372497 837698685 189893597 914493952 446858343 568734828 295249793 712402556 20383236 935086226 518454021 654303930 776075265 957442410 833830861 866685978 243603255 703990958 289980339 545113067 273981679 442287099 619087399 743338846 935989746 965645158 264410273 990931253 642104958 921204524 328880664 460268435 877594916 945524140 217526192 267654642 352431305 569655701 998268647 998872803 603992687 834709588 658893978 879588133 405579951 500747909 936876316 968127961 778459076 829020685 712101935 878830580 515955490 726128698 451988008 499497902 695591940 766041993 320610308 403910628 69025072 453654427 832951180 907713159 535086481 995968228 707172732 825690254 695487651 717673738 611457359 914018231 686841039 933524640 551097432 940830652 233350141 653270787 248356006 936754144 98733675 368406640 193050040 467618618 76041031 304097492 708018100 726702305 267057220 886798399 262669315 880429455 166226821 687386558 102224276 654711133 378020795 705832996 366020980 479418396 863819510 998129685 14954135 895084194 153858596 509566577 639399905 770159905 848582915 861518190 130082368 483160980 609601214 668569416 25728592 250615851 627651848 970981610 300357654 747069294 290631142 930201279 106347653 768467022 339229624 586337628 286221317 762677526 306915297 742878741 327543308 715814334 561465776 719969967 362894973 779533220 782211315 998181773 388616950 865530626 991997079 995004701 703430892 758683298 16437108 763184176 266781432 954517501 264255802 615500088 53960646 614581701 869717540 934938307 650611413 726944703 35461365 436720125 456790954 599121770 950168993 976972040 190944991 888224391 458731148 754571445 962760281 966672265 649134594 956290156 426298214 874753575 487687289 733451467 788053183 791669280 418509795 935821958 415949361 619682168 219096896 725522312 192737968 585572099 155771567 902221623 53186517 381503151 299885733 463121829 94677131 252387061 815956108 924580364 364289267 724750897 24267029 998689541 7914218 840263105 757630814 830623143 645955228 728236360 945874362 995168989 897026291 908045085 876040885 940861653 923928394 967624843 493823270 584588454 226055329 388591427 26567943 393703641 326259546 659006586 14069379 89907023 707578964 833759512 463646295 915307847 341030735 688064264 955270026 974191253 297407221 621216493 728430278 795654977 282314780 589344333 90783363 977858881 936220243 944484385 55807300 901254488 830706491 846117736 787089882 860347414 154378355 649879861 162953183 200726511 888460681 969137687 649984452 731973208 291765216 505259059 509305208 897622965 465471166 507106623 622301066 840895411 197022781 910798687 52887476 455611838 279487842 997860665 614918356 724009911 525654159 700416490 808060072 846252385 593797627 779498204 77737304 976029195 987766711 992127606 33424141 654797677 350866988 384663158 194402367 536581209 744597749 761572193 360677266 782994504 199006425 415686695 168110405 825996753 889945200 909138588 950449818 971700160 792455218 873079964 126995069 438163011 658525097 699265713 321287747 607539969 694236065 777154885 314882028 369958422 754515480 961353797 446329236 480179070 292514659 670169298 66927709 363964200 250194832 876669300 945166166 977470329 101923421 429165841 146425504 743489636 50372370 939997767 222572334 568232195 790699780 904194726 897512128 967286265 734314822 935741770 451295310 893063385 879074484 912394191 386846466 868922058 104583820 522026942 366363141 689062646 185189408 791974680 403119805 615500537 980134487 986970510 75350359 748503626 575056023 680033355 919390331 985599349 447034622 859576744 884950177 949762491 288517039 531921638 632650205 997395201 466982429 915521731 365635120 531400811 847549931 987794610 372501660 868717366 74504445 822238503 916785583 981709912 399184284 717375470 362761426 942917495 227284323 542136743 778942867 975900405 667398185 969024465 971464223 984115167 196135558 857594407 235998894 352979273 804540394 905686645 537128240 566568200 872733120 895224531 590183252 861015391 840918820 883435507 824798847 998872596 971263654 988421503 766266447 848301179 698837332 722401683 330701602 753145272 233955693 456489241 756540849 957156131 682901163 973200583 591948472 694048485 739748439 828903882 24351080 616374908 360770734 445866566 994720642 995763211 948140314 954992221 535437851 636108184 922731957 974966344 512630455 844731714 397821464 809110135 815871207 963156763 614200423 767097081 350046413 393954677 763363119 884607823 195823993 764407618 791635666 934302283 227868878 952993114 28201963 397562611 630620960 871761184 321793295 910536942 372258786 809770374 177586538 330154199 118114243 280755808 479678313 762812730 682899365 753178474 608334952 650551959 815639250 933229111 258541167 836875008 458115351 627988051 810781684 918777403 431375830 871399586 195344457 827608862 602800342 838763015 258152145 533525491 837365566 985904328 268412701 380816303 790388095 928472601 283797078 731642685 892695800 896811191 862819906 888330591 473917406 805566636 539564733 845806311 229951697 847126857 781307745 808218041 919192935 983835449 450359952 785473902 768086849 768953872 244408828 523103210 813536677 976025226 92426943 469786441 279375249 629727913 465412393 963842569 854757030 982633539 455234057 761869476 119537069 792566593 157979649 255599531 774749164 831862824 798587638 843984659 720710043 808123309 123315710 985362487 739982749 799483547 419822403 956196467 687903833 824003231 751297445 880103696 451300146 836480819 4818519 813367273 832920321 936933063 837631105 921172070 419497822 854976154 263984601 353576197 505523966 943888623 103931404 313972431 909305081 936996012 139120033 303151651 36876929 74027000 976431793 984735376 935652773 943382034 183021027 595779247 916778058 949804227 369497415 953206494 215655735 328005884 857920364 992392457 525355747 808276936 732026126 780360682 946763253 974125878 864835296 974350325 940691814 950941354 453807482 516140452 813248396 842657867 229981241 707435195 702053270 873507487 778002432 889565708 317215169 682552665 140830484 251084444 354223565 899826288 128006667 557196079 50026517 757913370 50774096 235793364 610561241 875428377 36492855 367965899 574713977 796459125 217801590 550190837 235760307 533838598 677686354 762239634 366125886 424607104 281707112 312049341 522874274 936150002 365687680 809510964 81107506 522083856 500619890 777150509 306393209 450864251 574674554 597268090 541155408 891889963 64836477 736651690 616775886 941899829 153648204 634652396 928721891 968108517 143951705 983569837 960500800 998372029 740321569 962581028 410887743 967734182 797363368 805529638 561810454 810764061 212582617 535903430 932756740 955509799 298657513 974266242 839310029 918104488 152355025 833454464 90616574 970656022 507521658 984180136 830437297 879294056 464942970 568931215 965021644 979911798 708968676 791218884 170372610 484491538 734550235 984600012 528207708 742091232 685937045 782714970 108512176 848807778 919862996 953198531 918941993 967191704 351361905 820883917 406922695 764724036 378175480 965761031 51098335 930401262 442016254 863934450 175048865 362410854 197155508 244551064 609345187 745350939 734370071 995752510 22962869 269503734 905988058 966158099 878141415 911519601 419529968 455787274 372223354 967338637 701931720 860811562 718520907 809661910 885396775 963865976 420720993 701992348 600850099 933417120 396183852 421508387 943834685 950659535 160968552 847261778 447287269 454297780 776514715 807100512 951681914 979038063 417955653 679642826 729920458 762553849 849840081 940584010 409119412 453326269 853924687 936001645 578861567 628970818 207958889 904005986 768900676 955170588 187813124 257781980 934393140 982635424 105405449 948762986 245094939 862972861 766323383 917010546 972255104 988151056 273104771 400710263 717998142 888735604 408093297 462811755 490460203 830599540 738862668 778990604 102112974 118107991 502444005 755859791 215140679 387559501 34986586 629731518 439956823 701191925 904667144 964016704 851300504 870231043 893433709 915304497 94631242 828110861 267034447 433148237 361503094 456141562 888397209 985724730 754347921 770439584 297887299 454681787 923360867 963214856 10754042 870909548 994285590 997961531 304104240 909170688 729404235 829295150 668456442 812255016 992065469 993432956 59462228 829401808 601507904 655526735 945853978 988032958 93024728 303336999 892163241 990840966 997346272 998790737 274668188 625289450 843198520 952527220 578530753 793585891 931212205 963629728 876288622 932048441 458572157 765148913 677837900 933857441 578608886 729998035 341597026 727432402 296887124 323458314 527403399 923940243 203380160 623742767 593300969 605495065 263783514 444672838 790372251 816278341 937213565 949411307 493943408 646404715 82939920 199722769 165494688 316796619 432037624 438319778 475665260 977631399 468116203 849252849 26981486 67678924 883084058 927193341 318746692 433499404 743776382 873871182 503550453 998628753 986571887 991771982 289847454 663472179 103016627 912505226 79710778 630203443 380394427 928150700 635100747 916378287 982883105 997978956 188719784 809092766 271875467 477747374 667248322 856225535 446739384 989866695 494650631 909532811 772147282 786558864 862112006 976510014 162792225 774710156 281899705 392535716 587965343 883351451 414198454 575725015 399229352 640928412 555278851 794100297 669851213 955420970 473902217 823515792 913356780 986360615 637482901 778235986 329837517 835437620 716865953 894347302 257388120 303412895 371792460 706981343 342848489 519692516 717676229 988610600 80173198 670069874 19146133 222884679 718814013 923143758 539369041 726298377 749139465 835209245 496137476 995583368 106913441 929466250 834431194 877618675 746664530 902285273 779219904 958986386 945703118 977032838 717290075 751934529 769335438 866620234 105895057 198734186 873113286 879990333 621666230 903195868 588339091 796558233 801645168 825456832 243877595 897957006 594340739 934853133 250189894 862581383 594525284 619956845 641025681 765245142 445404786 976999535 412269892 550739968 733870585 842834669 127020703 437134743 895726953 991179370 485283665 635407733 142747622 726116952 409892740 940642597 370400932 474985457 629824213 907898503 872632599 891538754 410989396 530044584 159345468 302703938 29253952 262183673 838916912 950075701 193479684 958027651 401783416 658557690 75715813 960688314 630614199 731292801 741199182 874682331 286199027 911035363 721370759 838855158 261910344 548646908 500381663 797676842 25671975 873286076 77994457 597591013 87081373 270455156 421836089 577437571 130249856 998230428 951377851 961207744 923588477 998139559 844331606 904867843 660904817 801892328 546598445 718698981 437016816 500647160 957288136 984959727 413535479 553373034 280844442 653173122 432144809 578620179 496341865 602742397 211215126 495595926 391947281 808986325 919051094 919619040 934773802 997919038 356488141 453517580 423689291 858456555 313988700 888451796 59577407 789054383 69136530 74067064 997045980 997810526 639049711 822743933 288844821 483574492 588557499 636127219 744266971 910864365 14004385 565550511 933400718 998816676 775025613 935838063 348230973 377983897 851140655 900729545 161634677 217006665 471500054 817637672 659462086 900603153 750515396 902212205 99987331 576617216 715248320 811988575 394603684 529202329 40713865 461449980 177477125 782710939 509565733 725201471 788842997 940678625 428082397 587374772 135100857 527640854 444546992 799631624 833835470 901696866 724288921 943929968 431041465 839309816 559260824 790075825 861979446 923539112 380612599 628145199 748968740 814892031 102019341 673085111 226556537 832666482 597458957 769228019 152059740 591962609 492852195 856002700 553730051 648147741 991416350 993632742 652485019 898495159 973059038 996999524 830890737 958799317 719257376 946578133 127993766 366618737 709049715 982252222 100203220 450809229 366060404 814824304 480922501 506900450 573667070 852730016 900524848 919624876 642736441 651977993 266274556 538634544 696435730 866833953 433476526 633198230 878916460 885405688 492256256 656781854 863868044 992006246 949810356 962627977 300623877 639059586 571284744 685701871 103381928 649532490 994940378 996364454 766653414 973616433 316705902 683662366 172282211 549948716 564976315 737901369 317768965 975604058 503570882 861011709 185731444 774866655 528377778 756853060 448583269 744014177 307405016 528710662 915592372 976232713 373975479 452892604 77297410 938848785 395104839 508694869 148760447 261801531 345116508 714085901 147613139 803860025 284230791 302246348 962536554 990396589 999033065 999173729 40474185 155411732 791192107 898182187 105578047 930715802 143112765 563061151 166626834 405242602 889534253 938887358 106656575 991442242 647213530 929480780 481647753 767022708 363328588 373026021 688319317 878198934 671385346 894981012 970804329 982261077 644020527 921528314 572901734 637702112 323213529 412936581 667595703 668377205 604840290 910726539 907566838 932935729 304426685 406396274 529906364 600753426 814371031 947407945 347608221 412083375 194191653 624791537 904938607 978170865 472390056 984897246 755199091 889849784 155221306 494329367 653191635 679317024 132328540 915203928 30877659 496700809 865519638 913796531 35881938 532957890 861960821 926616598 504237660 664725158 421671622 438070504 548990029 802928684 92522051 723966323 690215565 906003259 537327583 855955634 832474703 877640237 893661413 970569071 577729241 609795116 519825693 586278560 930248641 935544935 279620013 761637911 261246687 945388199 599496427 979460971 805690746 945131049 617048021 858778371 468457220 553543656 483836203 856221717 977218094 993911911 83428954 448959903 279772628 981587776 196773985 288660449 84999121 465152937 517977992 600283448 127584378 908212294 849428283 917460257 920231723 931341231 740437803 828779960 746219651 761640025 837906404 960573727 259710545 501936749 66207951 184140614 445771504 583251637 160894352 359539723 1692935 834970902 499166175 678582658 681924598 930148935 231988197 769050901 474776145 886735745 480652567 484680725 493025708 611089325 596833177 882473074 793290328 822151299 462691567 516149133 602824685 897166899 292524424 408804413 62449643 446108736 748851287 930788875 808073169 956725563 957548715 998131734 3337621 573017245 3824672 722494142 152671510 205635079 342363658 615301643 142347960 609201430 715028092 908284710 129256348 517267844 810360484 811692360 71149347 411837878 154943859 271000685 352747737 862574157 647559089 699358761 219400683 762930097 943988571 991823893 300234287 908431236 448520231 844692812 671397306 821021934 959345910 961098969 747433122 972508792 625753276 738311928 765200184 897580484 486009652 877965463 639085484 899200568 899024581 979028526 61595196 750345796 120782059 758884013 482465542 593977019 63615678 827283139 737149525 899576523 468077052 992889002 396189153 490989726 715251374 828105476 653763017 746300456 671902285 933395069 712343740 926789728 513730661 993866641 917900918 975506852 861859778 982901354 281370919 770980072 788500388 964430754 162518817 183530749 473884410 818477310 411974328 733443334 693050631 819287872 629332582 692142928 448907137 757735395 309145738 496519564 851406298 977071509 106880773 881169469 612882930 828042917 395300560 621717829 70997579 879081898 285872321 669070781 17646691 933975925 475483562 920483859 513069272 741808242 485854485 869231013 298728838 349757543 291720602 603963021 302855300 631579324 226338098 817407993 647852544 718834212 328334354 795974534 360027318 919424806 901325976 915695453 81619088 333374895 18988505 61059863 23096696 227013404 467162422 716682793 191711580 725183445 58452481 773757348 517351628 584895135 553539583 961003587 360122860 617660626 278355880 438575318 517777223 658244830 572739722 709259130 14165418 664933928 210248825 600277056 959634025 987912051 819089697 841754638 29145049 975710017 38656033 929438467 96816826 466162404 209272248 310632591 250987461 586811537 645718349 697906969 135793049 588650611 171477747 412003571 441285417 628184790 117930266 672853970 699236088 911608592 443759549 522927065 459155601 778443538 77395687 779057137 575873586 985464775 823403995 875094286 931986429 937241987 360242618 587435102 692557161 874908051 97324316 389235871 508176787 789031576 400723535 621140501 529936668 891119943 320183592 646293244 153898996 998885730 378592020 988366397 850655761 891451231 466155689 864655005 509758149 632570305 879253096 880006233 997780811 999221367 576900012 995642540 99880056 166072232 732946965 796430125 224426900 957728005 797532088 973672008 147650650 559767734 469094534 547601070 393107592 641138512 892491231 912681454 538953287 552047047 743740165 866594324 13330261 557896087 577165062 883564877 305098578 650703697 251537005 364706368 554828479 951810044 474402264 847683255 447106449 911338158 259876821 406386502 563889943 806227064 865566186 886798798 477202106 844028615 850793097 952408668 620234492 854137456 996648887 998648092 951847836 987097842 784018448 846344350 156579278 879468021 584270887 589519892 782449862 835534500 224606617 435113127 48309887 806564034 639641262 991761571 435621761 711076578 227372214 862897689 383560930 560648471 546306941 926490833 452069722 681620022 33594777 914172012 552550951 583455142 102931583 762267391 885655592 984327104 185290636 763760668 68507903 719377984 330851441 945258734 192530272 317346114 209867285 440357742 711110079 856920037 11196497 248157986 24813158 863450936 103961802 488509869 525494181 769183431 841358664 935267449 698681581 865602881 509438489 609551877 92736061 382745160 746549448 848002048 263979578 637164820 88657559 112485120 889595229 975157705 255536209 656435074 776480374 923901052 116114622 866620571 715295798 820494649 640108237 941367175 452234098 538195484 267478698 862447722 35064955 980471122 575275905 797974189 274099648 988228877 871254818 944551260 859511584 980720171 595297388 638230368 477158865 702428569 944287724 995738321 674964568 710444491 185248014 527674909 268284540 427013346 342435546 364806712 150569536 980070082 590102446 910935804 235508332 826511867 918851171 966762461 548059793 640055743 978410569 996237183 920504914 966851510 260735650 352933834 887399976 932559025 688810630 788498281 553922086 945883003 926037723 974839685 887947092 894014553 294559948 354986592 296447297 328193846 45116282 973363593 755800475 896217523 737467858 895546145 682973671 815960138 848356381 916884657 60447867 759510825 237781413 616433450 194642410 939121972 426757 331494211 832577788 862446991 750529217 984444674 327221429 674265712 281549919 317416060 285190430 896433475 868821915 899551465 111925701 521757674 590380019 792254709 721599625 770129236 383626817 919647006 8788343 752986394 481888927 998683774 110400880 492573261 500569600 685769276 209137866 755231086 359704455 829597701 258070883 691412858 521102650 799498123 888248380 988169474 401013050 930377372 874413375 879372181 493749971 598968792 400116482 993960405 882342694 977786587 293705777 977152079 575282297 681269343 371323790 752395244 67547577 948260630 566743966 883703975 180320632 305664371 471857512 679451476 857177160 946449274 359453648 627579595 698269299 898217895 430817740 523879156 355828191 472191798 283338225 691142746 849291112 992944506 470324244 750916979 85382795 186965104 448559653 918296103 242276007 396022074 808884859 931871617 43579030 366791808 411259038 530447954 624945055 735338289 995187359 996278118 483434545 818364362 793949859 961512141 305919293 471369056 110226140 949553849 501414435 520199669 476382076 711155714 914933401 950393537 342317095 613661332 966142954 975079641 813427552 991381080 604592892 909995382 177192408 206686169 757177559 947678427 309864361 672035485 243915813 578441120 296709241 922294846 556041864 913394698 147201847 221858169 88668232 524701011 268712081 597213511 827050163 979933207 684163487 886077449 780429363 872034833 549373433 604625454 657849148 848929818 49240316 454262915 714297385 963684573 433765932 905360421 628221254 967435544 284572828 852626380 795433610 820709334 133650451 663348390 589792647 681638332 974326147 991820877 706191960 773285394 431306497 549582811 821680377 880410401 669159 393925957 411596571 965804084 180616733 467087390 544394738 999006471 481252981 500678245 769307924 833644295 301204000 409521268 83126773 652637450 533807865 553623384 447250018 998005411 742105852 836345592 929801857 974613960 911774395 998661786 702903379 943830274 299820454 798513292 452084296 504274217 177330615 779588545 780567269 802617783 260669378 264767050 321140369 461407265 967227278 984948777 255312064 896571992 77614814 254213272 791581405 930342197 862078040 936146370 560539343 786262385 975269457 983663793 217880524 236583576 292758420 752828875 510678040 967793598 700811300 968341368 943638445 971367160 297067414 958809200 932289430 957668757 761904757 821504295 44842337 547263073 316544004 790116953 830320819 839272948 580627379 608398747 909038542 975920943 118914667 718443195 464349603 892394319 76689560 151692252 600041438 923854555 382412084 689104284 746971285 936396626 681533402 721960003 330764920 741534479 857675763 858378253 577382005 913038960 765392781 993665172 171449247 326681606 136440483 937899010 390099957 521666721 651681781 955852927 358703621 630002810 878629608 981896264 662795847 701659459 952902697 963553992 656832139 763778425 599103901 942703633 631939454 827992660 386987886 796497064 384601102 722491826 209528383 699846164 961271598 973938337 937402891 940717379 217523755 393696582 133703178 931341240 38705374 848598598 15091448 833596758 815213624 874270305 849726089 881870327 241854366 589449408 52759758 535697956 330643732 761315282 616617487 956275475 856491559 878624097 104152544 360657155 414293049 904188870 579663536 978116340 287655152 815879371 741872408 861048961 30895514 665764365 994129509 995591042 354020882 902737763 508302056 922924446 585687520 723956592 747744078 982382717 258706165 727863485 515197264 623525512 912355802 973009291 622361607 865688565 345116217 353069726 25216661 298328982 421838144 876373339 28810841 256320961 17779071 605215509 931060115 979960912 63219457 382835871 324448044 354079431 130829249 547413852 92850672 211979839 213246253 458709342 415990148 440166340 371712020 591710947 746107321 746432085 802540966 992008741 484292328 871733021 814614711 960447085 410812184 722786582 20527805 370076046 180278403 676238113 85231389 367890592 641965322 861962862 894601464 941885245 896703504 992047829 277788244 429656495 824553298 998236833 22946234 358113476 488467371 689353082 599435578 722235607 529354775 798675561 616971385 921349771 187852617 671173502 533248144 731375537 62186157 782785583 148528380 357730422 167656204 705543169 411145930 896240100 430393021 882279906 75263540 197703815 796650460 895033023 574195763 597250761 745678224 920339836 785183644 945037511 519175597 814783345 761722286 793639083 739581974 782980524 889574426 909316657 850039176 974100211 638578534 837567457 830688600 893006655 493610563 780771713 624925049 669441517 817406378 866619348 642653770 905490859 854042265 949979492 349195722 501765503 821772458 908128901 356563377 751292623 611473544 805775596 104093469 605939862 269175079 812855300 386222477 692695112 425915720 562055050 673987971 699502259 452321643 618355406 681903601 896167824 769239748 901642039 838909874 928941010 738638156 879799540 439937853 982853413 420836440 862505790 186715284 664281191 814452422 944790807 49648899 163108117 634059499 921941587 215641849 698122829 772826078 957812147 237662318 285121755 509395929 901966234 872283747 984259044 718624883 749666221 393712352 601602651 321421543 962339729 625901282 972624647 417824778 867927314 910230550 998124673 962973794 983860210 387504341 823219690 781843687 805430270 662020597 662166077 173023830 558774337 160422268 287731519 934661014 956399547 614958622 919802854 859246882 993301807 600182135 923851118 911920851 941185367 474662253 503409431 369052478 883404398 712060972 724187861 96314252 558560935 646643171 877672320 922989563 961045607 37182434 452034866 113359300 496864021 891122978 902976491 919014521 962783421 91617590 687780368 730324935 933279463 423358344 864807897 880023975 938230928 11357743 735377682 834662994 981636399 393753684 838856889 674286629 677894148 349862983 527877911 883715648 962008404 195216858 744309375 937062228 995705548 823656187 853942167 407703574 546099270 320903759 824911679 201912319 452134588 303064465 459998653 705255087 931446365 321666173 787761553 502197051 514837618 549665536 967552400 923501011 998443788 740197266 921591412 389098801 705825494 405088603 754655416 107830832 786743696 50115821 103808251 797149635 832119379 400751221 823083993 714367438 850169716 1713859 30021927 775290991 801345238 292020798 781932369 212951843 242340867 561794412 745601318 625652507 744760960 361443766 361865398 328478105 603392669 950785198 970289910 980770263 992563694 363385272 502335525 298673205 523675765 616225182 743825011 775911108 928095924 442820685 806659782 550641569 982656534 204131654 306277050 102983115 298157480 468276268 640603814 100883900 151699021 724448192 784081202 825640896 939867586 181533110 285200284 916561421 956180968 492331866 649799303 852975864 976293653 633095129 912143385 613326564 638444862 639817852 901897207 304337413 507570370 273241255 776825997 709053430 953469437 533359778 613926528 352098700 916254338 74807793 717078465 203614135 305186055 482013301 759527503 743733843 998666603 40952444 769496089 419838669 427667735 414152859 856224756 85797466 639998462 383720450 695723809 73277925 172448733 821165887 953644455 133497890 459507244 357559358 625449447 967690510 984187348 265523632 415956857 817327286 925003733 931510282 966658800 854982064 868018359 822085084 955806142 279581698 370069386 592490922 746421026 174360946 201168276 60051204 607903665 111574544 235538171 168071876 314758223 693565909 848776130 995685240 999200139 6660488 559189521 95495639 160370060 751349191 800253474 438951414 641081489 29867926 647460966 894300326 938926169 581619568 773092005 15294078 800329304 430520179 979677969 826117241 894850911 41301687 962715673 821448527 972580247 932915710 953795693 370489671 959700305 65184632 911258456 214004085 924782204 540009091 939786779 740429397 891324886 269467131 441043359 347552927 735312005 819046349 968342684 884349579 964153574 804054190 845022984 273518405 473614272 326789487 945326890 489840965 964903121 669487102 938007713 528144781 547725418 167987115 418783450 875764342 946878824 379259403 563806814 443870948 952452291 772395508 967222474 704717987 813307255 980642550 995083220 725621159 747948066 797439049 900649473 354452612 455248066 145334635 298138543 796820718 891109594 626516608 801609148 66449062 68002074 162640137 187239674 737161767 759197852 310256967 904607624 797516422 808734734 512160212 940364916 658571 882780981 618250970 709233740 499457673 723910210 957178736 991686222 222265424 766230214 882483936 943794582 784579983 875275150 956183568 957874107 709909524 824186067 1940416 71224155 610529774 666860893 96709354 631641670 312131303 558004422 479317355 646211102 591771193 722062818 245869548 783192742 273234921 472145306 44534942 811510092 601213331 830432675 130601621 176505478 159758148 660427291 207907228 866445992 243335305 731116030 745261581 878438623 91702981 110892002 512307341 608251185 773011101 849214294 39203529 919557394 597220117 695891847 28775585 929009725 890706047 941132004 163581436 809802786 374838996 776070181 916057981 980788853 424387250 698146098 195139724 972488166 332460904 626933472 775572768 880873168 219456745 915313670 733374201 998752607 480063100 700040739 260383744 961692633 666348441 682832482 49673296 316007833 339766302 999258874 836678575 959517086 541135537 631999927 594349959 943409957 63446665 396363861 17256224 301936210 972107937 979048284 337578712 560507332 260075351 871605815 682145868 813216682 50882909 420002204 902120644 970841334 372786216 935850510 530228958 832112508 698616126 792207911 207686526 738193499 569935679 630693243 106745793 481409664 652650895 751896950 250205219 815029419 621075908 846819652 166692272 629348098 240666703 933099366 987415840 990995089 664112305 831024849 918169049 991126149 213464817 934119846 485351142 666478718 902268238 946607692 515122717 884220082 810950927 865815769 950210298 966338148 112201617 892432761 711848436 820804817 435507126 865551897 791214568 999329516 488036880 548951928 847135873 952218771 426577387 522382248 430157649 687879678 932201382 958733931 685503337 735416206 658508954 715934961 518331789 962780759 488785222 611521554 557942355 712023325 998679203 998903676 965003125 974936197 506859814 949063865 945293766 975315940 150546797 394707448 701209968 996222014 549688251 657356002 500569305 777276642 471381 271401326 702736226 828784888 208749185 855910043 188600732 729969342 759650651 896906607 39966214 675644560 272863661 461948041 769156339 971252955 65331355 876693740 974435674 987671959 894284678 987020893 255462186 324378829 436935075 641697314 774474878 887772010 998282126 998529392 634939184 920315401 287991410 987529401 40745283 951694562 257727464 345713008 225215523 388488237 783935177 784039497 405203736 593961476 62003383 289803108 490985354 578563892 944084366 976190199 949731231 968842305 775901307 968663321 301109970 887342960 53567527 652419500 520702395 528297283 782764946 949967050 163256840 553205185 141549495 797113272 544247637 810876551 457188087 923613741 777731783 942915644 110030161 492794465 798454313 924409210 998573583 998580024 124572888 665353455 628742166 796084378 681722180 688133406 874707588 935505008 742805096 955921220 860399111 965107222 942241256 968012056 742328574 742391473 674075771 795841976 187199772 363230733 277311283 855878422 419956361 445441972 785320621 898150062 992479128 997174654 44903607 746457622 883865490 964109429 550868690 868413918 93873567 837062215 97921254 758849066 695230159 731499969 470120970 493418165 311574131 746025961 709637088 813561587 177321182 884282196 240707235 841742462 987732125 994679346 309171770 952442302 398171910 766491344 120485506 664424269 515494969 832090299 605933501 772998014 799864014 817034569 34455580 880854742 214988462 955694622 638786104 736895841 513458541 683380463 34379056 677115486 574416576 790601482 5257926 691461652 970085156 984726614 318669466 773877095 660695185 957124652 170133474 660432034 884944935 939707084 161335778 737520112 778913103 786714965 415201093 437134154 745534448 965727791 967334583 984173550 512032728 904505386 479670481 541387759 286409391 412120730 834548316 855268006 53559123 931601957 38808841 337720303 98369580 831761510 338065143 342048986 675370821 819004843 716955750 902777019 546403905 577680614 843038071 867708600 286658927 693164361 646779228 700367713 29986838 354885887 637926138 747865281 215710136 378134937 486716600 672245287 961707186 964348019 294549696 468498624 673297979 753054412 634082577 745387837 730722136 880979664 176025498 367830048 613975241 769758285 449810061 484741707 497119921 763419434 550885432 835272450 503694473 987438398 110517754 483814468 178128879 912160737 753805869 979862421 204946377 408199310 580996476 784099951 311780487 321755437 460675370 756775559 843685731 902754665 980106693 996291020 154035530 829043313 234381970 760951958 694699058 960637256 179015479 866329076 895030587 973799718 304403193 325659234 491114737 828465903 133779648 403345135 380158742 780954119 909061364 929012629 648474279 820482951 334785417 350551037 555459508 570269438 908188052 926025069 117629249 531720833 43951669 960717092 680477076 926545836 270388286 707199543 104064173 910058847 353530617 793645950 252701078 546754823 960368891 982100697 590543651 678090100 100342114 464944206 784289880 891300183 467494502 859857586 849312066 854093817 358367432 869606326 973149943 977300190 461136056 560519712 798158006 820083877 570634053 894975363 424852644 792221673 172661866 391708436 388223821 741394020 498320437 784312620 992570827 995415935 905426985 948231457 836508466 981869073 778452098 837772610 915272436 969367536 122718902 244813572 69364914 432701560 896049186 916605784 171347396 581577517 152232323 436066828 457945009 537772313 499125563 689722025 288762374 833921302 58991812 303102446 130581445 757101859 310411169 357686981 585443211 858950018 523401811 964411117 146285323 951006616 306883595 976122421 281470253 632615441 899497229 929199683 668330558 682711786 834882786 973040516 314068152 707110316 325841730 799238194 356476758 569329929 631475390 835083944 130801977 334959449 432531650 443248049 15530943 633857675 472767293 880397948 764420808 963121964 515296215 721676977 947818194 978175454 766405109 766450264 488148212 753276327 519502607 532305355 356362623 538002357 347673210 556878261 929029619 943069165 57269939 607585622 10437984 26368428 678252696 940956568 786711535 805402524 875935157 911282401 522483361 760272632 5124135 639455662 100897466 311077915 860981237 967310083 216022576 554510837 991993992 994111106 311029230 956738416 605782786 973586965 949741102 959900905 862361373 974582922 654089833 998074647 301427135 614517106 979668421 996659425 659347330 738917271 334413478 614229264 18837339 146805868 474526054 703388606 273555712 516622268 660704891 758910494 191618310 530121855 179223013 857831266 304110246 823496026 381325114 838346574 111674199 254253087 836705532 960078383 680810662 942749539 371251873 851733118 792657673 879325089 155283311 256482048 958355160 996218086 628763159 743800963 24915955 329044153 293033129 653616947 258044128 534552507 457444272 692019720 488914844 629617960 883336340 942064212 237732152 512956132 955940006 961977265 411534931 929536456 959313366 962886442 801599577 857209906 996881058 996951302 485893344 497419715 658878143 757397016 935011675 970956936 718632383 997946735 101513530 216932886 790472600 799334273 312576023 495613403 29404859 154202915 547996164 955650786 406306409 438720483 254698408 329871672 166475423 364829751 370419668 580845215 154026402 442741630 577112903 845436907 509462086 747182187 540167644 686633667 613513196 660873341 93115769 356120583 338437466 970589671 408355268 598463956 996109052 998699802 325314136 551060854 828361319 883570882 910657503 976114957 43702441 871650294 777108847 782901912 153252603 945819269 113165303 467892343 571901632 960184137 492155109 682576114 471462137 926815432 15525328 775280884 270936894 894413398 213424486 551043451 251729800 337334837 717653007 894927643 89627388 785664502 524506141 565580545 899913673 944531817 571504897 765375787 582876346 606984110 881315452 977830220 625200880 638157175 520609499 535673339 994307191 995230246 19231360 116860190 240899971 694050362 800616410 909732962 698854710 708805867 782463935 977420130 92814653 782647302 48538874 77328937 220223384 787345841 648749990 730580215 938905862 945450172 903706351 931840370 871016227 957299026 132833917 318326289 409208782 667394826 798071929 958227762 846920591 970519671 625221833 967989986 505056399 818436247 598340925 648179936 342024424 416836032 626522113 631066367 68459362 175862093 228634364 440956242 28946436 718790375 846672597 978497876 841567870 973699395 725529462 938917468 587571816 791799957 140375046 457485031 683458082 725177418 903607959 963954807 907702508 975376403 309777437 536419784 812917540 849634634 83769186 243727157 573709150 627709450 386059204 680334940 296617941 374088621 18735375 949936736 193897716 772023551 640626577 843947793 595628102 932935405 881117231 993898198 978981273 984179072 227479873 398072574 706493544 853564580 748254382 808332010 404570206 791966582 556757279 748694854 571732948 775978790 841124265 893042898 734344200 948591695 884120260 944816877 407528607 845287583 583418758 974811167 359854265 613124563 589379067 690328417 140077326 238796955 715901614 943174961 214822594 252371276 762013856 892419761 848538618 903297722 584012597 653537887 623717911 913192168 224613960 609360834 263177686 571830672 683980983 867027231 111814903 518280597 330023511 354413881 10802745 902742447 731350747 895895181 498437103 870375172 729029013 785456994 168064158 608285814 46299960 908655863 273839664 866240431 159259071 718469124 180835873 901303389 279238032 614564159 369932988 854785521 373728557 996867815 142566196 863863121 689711118 897951308 665766405 685862314 343971331 638917805 557091035 713586825 656619383 827314005 356070279 732954102 793625471 794592229 765588500 952065354 999107803 999328125 773170553 945921602 928912583 942072509 74021028 572322513 759350703 810951112 401358546 830094737 977949744 995409594 59870105 300419547 886201579 894897648 636777407 848483499 155703242 680993887 862681643 941226742 296941152 686802060 64769648 618166259 35081015 109465304 654710541 950665318 518047737 929391820 653932836 718073947 415776781 528679143 510683055 727811277 59094711 390960748 379152019 484310479 649465718 902403911 632321671 824314860 746366101 922729296 976501449 985353154 919385904 919992896 415461452 509659266 259045838 757579417 33913411 810726742 993458638 997306138 384349459 555227394 394109826 939074831 30191554 535758090 8932119 271862475 57372120 849763916 524107985 684489173 809192548 917806979 408234038 469493904 383773497 907638450 595576655 609794240 722940361 911757993 650124006 774003458 162499844 555297100 607705669 652252783 671460888 735028733 653598997 662227261 506107393 888878735 669964389 747227979 932768183 982582471 404459100 511223781 121511324 972967413 361056301 888724245 642977266 902761902 605014414 685370633 325351769 488250024 610528432 669408692 221615914 853500152 141336079 934392585 518349397 608977797 805614144 973158175 641265595 655277241 303814228 789096085 873114349 883359908 331097862 347755639 120916843 588761596 143450433 895383568 271040940 390009711 460076382 500343256 444162564 579680405 833959955 941758599 95951912 106628285 73348465 515549612 322330097 913885826 825756745 991960537 564738800 747993413 159933782 320007530 33622844 211825638 694421823 760050215 359580138 738159375 60008596 553749617 656893364 996644001 418570878 889679089 393412644 603517629 443703827 736135078 568188719 998987348 822021550 941888736 897783449 942339741 310604880 830239023 311984291 447845237 723420722 786369758 728812979 870698914 677379355 818286695 550544983 826902250 988666014 989018098 658871890 812776939 312028108 628694267 71114697 633031753 980177972 994445841 776711025 935930145 145528345 835135946 348521183 854711873 731022220 806435077 208868886 638821736 806155148 875356363 243019773 842227555 380391802 607179270 586733327 766431765 267533944 520307236 507403736 542319149 973062489 984197718 91761046 679744020 911488240 993971964 380041508 778970171 901199434 934154669 163036106 732856495 225511875 571347066 368549054 420700072 271366497 611155659 265389273 307387032 59041570 703903538 754680965 760646873 337290716 446129962 210196680 670819898 997982473 998929896 377688160 886230187 649584433 808897359 524969714 633215849 9208228 265154701 971397857 983890145 533615540 615201493 531509185 895296614 842762533 957294304 215456899 242180066 586508022 975896427 312696824 380136106 997206850 999377744 817606664 962405951 747029360 862983384 656325212 712877193 627544069 866433485 525564210 549217302 832392824 928091961 881013729 886780856 109439550 983443747 692700944 703751421 551178614 643239482 756682083 784304633 833176028 980419009 459762486 934130569 63586564 628279986 806075335 982499944 363916095 814106196 613551428 949764655 904145893 940526067 857417751 868718739 587346618 751087935 718046302 850909873 628965464 890784089 246616577 368892118 53737122 582879660 857248205 967477644 650358738 814172169 367825919 569269231 503759005 529650627 247912688 505302847 929919976 929980750 9664671 513053298 383739410 461286930 621238183 710766615 303504014 478058460 812041060 997010223 681508991 696561217 260354887 691850459 159489503 295022837 517405669 525991485 40122983 298676362 788399425 853072685 463858024 866144646 195555569 411868545 606864169 758599327 978132218 983206488 539938176 918543036 8077210 395542060 337704620 577640106 290687795 540211022 142481613 714154185 818720188 872131308 929833004 973408106 928192021 937276819 42140801 778826538 505299499 796740519 127132951 375526397 431769848 551870429 724149516 724701789 160019677 646455818 303735354 581158756 961034518 995166043 690246958 862746032 112377972 604493147 638475165 744007927 320947207 601625419 491388568 762977771 946586807 982024866 58550352 383767311 188167138 587274851 532127208 748298870 83882399 510422935 528510452 791100050 331201795 892088734 754155765 829743205 103289635 152224370 899958998 993580187 827267538 971784306 788536998 958607674 265316757 938688721 532749153 722631110 267163796 568566498 786220954 919912532 965357333 990113244 55912697 420382385 269821551 941228641 741401312 907769743 677472732 797138657 659781840 722909250 694852069 726225338 911960687 964451599 793706836 835961059 6137327 731265082 506864472 821569170 886534297 888614488 718478061 784978445 718292463 951902803 825697335 990518440 906522171 913851440 214909218 448436235 374351237 544910057 162516108 587548703 875801850 996980745 110327340 186556036 407621685 849242978 483048744 978224401 120259025 995128957 862474138 997784526 291735355 393581686 489924752 828957653 618039635 871068190 723335730 789782028 803674090 918903125 947021518 992546148 15144752 857620655 936979232 986712868 315979502 724657494 6214166 580400313 930803328 935003689 410373603 610371812 237323002 375608213 944676163 956104839 296411889 701562659 532288940 665023211 391078155 684471778 928703751 969331266 20604841 117315253 135824201 893709901 495329461 683112464 367366505 703579463 296980676 346427058 769240096 843881903 57381903 190833438 162419116 527567892 527734891 584406017 119128592 845396190 4104371 11421625 115468985 466775259 913609341 953698488 222329722 787038062 787376027 823158309 462753986 832082703 179838078 712898420 582450151 922437076 70726851 815610344 609649698 750334190 12280565 942652149 274316313 509545054 651195028 668734533 932629870 978323636 438540819 672718890 611366085 878405797 604189642 748482223 426445184 976253938 288846671 699608728 892814723 948022654 75675821 514478746 351846673 633939972 203275232 662151510 677086101 835742127 97882273 894451635 408267528 639625788 904676228 919441708 115204417 915247304 195376936 768037133 776581625 802267124 603876654 676337388 855373855 964441425 256216461 299153803 992543813 994098040 658067594 800438148 540130099 661392615 849836966 946783164 637090411 826294789 141540235 909973537 869010572 977498887 527591854 726178233 882087180 938535272 193795807 655893338 494677365 639413164 168351126 266768448 545975044 565765211 953418037 982059093 100859228 307683298 535914962 948755285 543074647 714980521 418023498 947492544 823342313 927696796 47492338 608089702 767970650 940810200 935542963 992873497 247197381 594314201 93064406 526212407 809208621 818368188 288727913 563269225 162179496 665964530 788503032 972393161 223338925 333270726 95516984 106246433 669897172 835623527 750300440 805150128 990489666 993149396 934268756 963393984 431577774 495464237 68340964 641611348 808431603 868338432 421562579 855216197 21303499 688155584 560001253 744951994 896876887 986621911 7899148 479094809 547625851 852604422 486266987 707386791 830001539 984415301 435546800 492697781 369100840 857448807 148212400 972793373 443653360 845165065 68364635 127478894 378174787 973785513 436966510 599861249 79594117 134132001 673569605 757937670 505401043 654191116 921333222 959149410 769768080 808186847 590590243 628926403 916668908 983739589 164115876 436077054 608052162 925700355 678989305 779939599 232838359 817674183 727821669 930013649 66036000 901681319 729138904 872748546 704893339 826479798 736660824 738311340 1398025 392068429 699052792 906072634 228011350 521305458 174492566 507178094 5546838 769769640 890932532 998412484 693068356 915071349 31198424 58909987 812953300 891904934 314652464 358401158 324027874 351432741 93218063 864401281 316161803 525190802 778754493 856792118 808444789 810774661 85091397 994788911 183210373 979113518 838674355 901833653 669644545 959110198 693678100 718064174 176960777 286848287 550841833 757386434 970207493 972300414 341620469 580572244 955254027 992409436 149609382 182890358 221638522 684992473 418878445 882821056 572137499 960245037 643017407 802676811 45455731 274220770 169741951 565967079 566171799 996506206 385728730 995813933 842737221 962364666 192928228 298416544 508545265 642526409 198515895 254130980 298986465 808215107 398514585 469177698 344609772 760798751 449427740 456691857 560911070 590694249 913412553 982491145 237678917 921616851 284318915 761736925 209475210 246119628 448330728 922365560 183966934 236582576 614320998 984848043 42506715 743222175 620544493 841061785 104589751 937775934 949640479 981816001 373540874 583594094 497343647 984159302 408643972 543585244 400515639 989855368 346440435 592490951 795185634 856762952 667284827 826827989 263627497 823397250 899892243 913634827 432494923 796034791 537093734 734000101 268294552 297949546 865603104 960869798 780375427 932859019 360745017 436418184 141767344 713270982 750516208 988041312 770741834 809320219 333554947 425847727 878102473 909110168 195284160 880280940 325698725 483328050 26938281 645969384 242655362 825459810 243229836 471921039 656269771 726624685 482479385 933482579 611875065 703424816 953801871 961316876 203117169 680370649 509031275 601499539 747682091 863816745 898709149 923587280 6103241 368133244 37866993 429002285 550492032 841221535 834651955 924954090 767210627 992921447 510854861 620998705 192001749 916306018 376211975 447385006 204629490 663767904 883825627 958641204 788108829 882508025 168653615 882898813 298876982 872648291 960743973 985765018 470338966 926006735 302982068 459137357 640577057 987776478 415548394 602139010 837178122 930229024 253975132 774878887 161913436 294241178 780027002 921791982 951522532 987467594 771511348 800440536 847554162 876289133 813869964 912508610 495990542 895549508 502922989 961301891 976366952 993115438 405388180 970029727 686255300 691591944 667745408 788892856 926131288 966892479 101982271 490456908 96047969 655887809 867601637 988796283 287056712 808545892 96119413 289695366 174192157 274110036 73439423 453528725 183973069 823457072 207734849 462717257 761455604 959703746 134402904 515023781 539606821 827753620 130956006 367580053 614612688 688871327 403734347 742385283 55139143 756422838 606512512 905443169 504288746 987464342 51761085 270496565 728664155 919613994 931737456 956919078 930715398 953439328 523941051 531512657 637365214 996802074 461589287 585008820 368375497 931859342 379855656 662750545 34877513 950233819 613314708 869380142 306273127 421051372 507922833 647041808 174622093 565840385 752721683 831641959 941845618 981105089 629593340 753305691 345462520 542261428 508609913 662154367 908727432 939178938 24591453 999092430 261031971 273508268 72769580 354377453 804826388 929450349 305880763 574035120 758947083 924343495 713609209 987446323 489325275 861651216 409794226 793793309 388503392 522179348 281632478 365040580 62741885 91936473 730630696 925234038 83090869 414430228 261662292 904461743 526509688 897777288 874077671 948517738 658281990 865997477 227549312 731902812 907973352 938603141 491076025 587189734 260996719 316969478 897963094 989815706 373208953 628204939 346716567 392741480 366505434 489108069 201736439 470164502 976149429 981349317 923414805 988473767 344823283 553837679 853117665 994636897 636645709 929980012 729841140 939200627 403876469 806133205 667359022 747464414 891510528 967859553 466034388 928270169 663079977 696641651 460166552 493053693 127346215 897610396 910937401 977104361 918844538 925074563 833255254 991195414 709883597 884285721 34433068 721286385 622622157 984314344 226956509 809517447 44805341 512973200 105842 621110222 394618936 480747092 609742082 757182676 590862249 654869043 140999733 384110999 451759163 735365918 10926268 887097898 159844368 653379142 367065236 625491698 806410228 960320476 273959115 820181975 245316558 852950604 82045103 777480795 146013570 758868876 119115526 124057345 992782566 993211634 144251575 843187905 783978029 922463473 837433341 941038483 872908973 919667700 353840823 375085478 581648343 863455025 86143089 148031526 920452081 942165262 698286845 791963307 522457607 998907822 882845755 988905010 859385735 893028425 71150991 705115161 714696339 979703253 420638350 946155229 959343960 959425521 53099161 983910466 651223410 879282446 968799461 975652941 113772331 953060242 661231511 681926037 718627031 899015365 405881060 951249199 802331490 844140030 731394298 811369807 750728019 817098688 896485326 904745773 537285133 863682087 401425198 829511861 266826764 401395840 470819024 594383707 309414323 801287142 219753243 407123771 609122371 649825237 463706600 768606478 368075552 484937782 20968007 431960995 320465136 733642335 69742180 857068124 357401101 725403029 120313291 261598282 653103500 748508661 768068552 966470113 229872160 426091031 620271889 794922206 946914635 953240021 653007857 962469521 472857488 799657854 404080156 408666666 817112928 875425539 780807867 840072487 999086028 999386729 343931024 601835574 761142898 892634165 834802055 838069268 707762119 785934357 470739152 471920705 275645920 858284213 510429221 743030745 520297228 531551645 811828832 830457695 31887232 211242081 222037893 941126286 730782234 987574038 710164131 911718467 907335184 996863417 99282029 250337161 210203320 335107028 152155666 685895910 446325965 448304198 301081415 748095617 352039063 644960322 873331746 977643582 51696155 630769463 52001899 779864642 889995266 969482175 548156943 938019045 854374621 918411502 586969240 910138836 626275052 697633902 10911204 692748597 379079987 702395538 428573872 569960617 567360377 987133324 642352999 647583915 534407480 568115971 918920942 961676577 515168235 667399493 722500333 831585977 715675510 905562075 195671355 734871115 22732710 771342419 594934326 926829319 728858979 788626344 239491944 338184777 932886521 945638653 656927244 712750118 250066234 393838286 505127423 999252063 455148525 498731276 221335731 903260499 192504787 305428548 940275104 964300681 16153089 192355385 589185425 879963767 378566664 626905474 492937510 875171890 233594779 858237503 486622995 854661294 976575803 976658708 840834900 947548914 797936202 927993906 967039447 982577990 690112297 701109005 942136743 961517056 745805829 989913353 778393682 976514636 882124186 971841276 990398180 992428968 833065364 900022456 722918840 974872290 649473471 888196179 807443046 893291585 967200477 970971251 667543932 885796488 467006997 589617845 313561995 503901555 863544294 918923384 24135178 442757058 695463032 858429880 289546603 668973454 446939576 640071600 965032283 984422735 738709921 953438258 484210818 867738932 146542741 702413960 817405254 915501076 67511436 847961749 541662272 705809898 458452973 619053662 299670612 697871773 158286551 965601310 995535341 995562565 867125736 934549728 748336326 838485658 581537765 977483686 713856489 783681102 87706616 654100830 640956922 893756473 358283589 583860498 235499040 844523446 553380108 579452911 680690719 686341967 178662264 297546087 106052848 601001343 180261509 689831505 351693356 641576173 937137896 978521044 582330895 901113756 408694715 573966182 157483334 305685259 240178068 599547321 700603356 924086446 705143912 726656866 919267234 942214632 142071696 588122734 366823539 728846315 678447634 956400393 197584251 982529982 5558012 774788000 513907909 953439935 634287017 756024559 694919928 827480248 822279417 976726180 702138002 961507325 148173651 949561927 929450026 950430861 291455954 346817201 470121083 782415876 122075854 636358704 258659306 902684696 298179895 689034466 422802999 622418697 866201825 890896907 812873135 940681045 361284457 914882420 512840889 989529193 50310361 806151014 72627362 522547046 437070027 751681045 170281193 222700109 87726810 415337276 993376607 998047295 613159214 770596322 579761032 790718073 130043789 493573071 542074226 676183126 362988059 980372826 676350553 826203063 75341344 955029735 17556339 827672940 718443761 799759204 719630264 984138254 436713286 687385455 223406905 373902648 526384305 970869016 667355101 797590570 348174178 647014991 182348995 383087254 41938505 281471627 725562823 736160372 565630729 868044586 510906171 947835870 308214725 696804476 290227565 310865126 904077199 945225338 157010929 517296662 57810987 968949686 72941838 195429688 700024081 860049739 789622419 976711658 897332502 965316003 467285565 578221344 518557276 736343754 935354945 968855743 199759976 716602024 69497292 377214951 7806305 448886951 470167324 969889703 518906014 553068354 73498886 631847067 223256809 866090257 27670171 794400003 536131999 725835214 691273426 936505519 265444568 574963562 17323926 507262840 2123771 27470797 122980205 417653779 580689408 581353993 566187986 753597511 252903100 715396267 252198260 634360092 199780193 392113491 226523102 430899637 691929677 941030265 274581652 784023255 373616545 547301317 48754217 75857979 22696274 706025144 347928639 954090733 679277012 700844873 790760018 835296740 95690641 443997734 979218721 996824009 961223829 965847190 831500659 970133082 150434468 193207688 131391370 311421047 555087215 692164076 921175712 968874596 139254941 651460436 701867406 912463043 545405340 891846843 251290718 428214862 527588758 875498823 314411466 531601182 443186679 744434347 366232394 886152139 486902381 526340092 502513607 744974504 30250530 199281333 391911507 416574982 738325130 744760536 133579271 173194065 272553572 727538390 592485250 921280311 846508003 984840680 248057933 404292479 887643468 996013850 256085915 616531999 851073189 907400695 146298479 320710524 208829885 959078753 360094791 922201579 878065918 909475291 361521552 858634496 587172836 648500489 259287759 868051221 137729430 974170630 21212965 667475198 317492212 619802486 950154370 994914136 718803518 831706800 593153734 896644146 934988642 962618811 661760504 888457029 252583216 995633102 481750622 824338534 925971524 967329554 165210199 732730703 945254786 948040355 8345226 320476757 764292000 897709596 879366709 965092903 537742866 947269436 797954259 890248035 132387472 891786784 49420460 598291414 893926526 932815626 689421367 900107193 226273413 408454768 399704764 768815966 166706539 540560457 959526438 976071046 187226026 631990426 138083712 655704958 70403536 802196504 565396742 934831967 994495214 999259165 129038985 550097441 620483969 818657738 447296752 516128262 190004914 324877579 426325722 561662391 18789305 239802224 460278166 481150643 413138380 578227555 985871802 995996554 517221703 718586390 450617863 718750567 659700604 776121408 5187448 45837153 373619890 403560191 911137273 929160813 740765622 909713202 471886139 611469167 948612929 995236891 787011599 978315679 908649619 937630449 240493333 336719375 220945201 821833102 727929802 830397432 138416767 248015690 823942536 846366398 483500883 958456281 823198736 848702041 626535710 819040196 605132393 826962392 236981119 895013731 489568679 606668001 663101804 716720885 831712439 862319938 928252382 998853160 56160409 702886317 118793483 411653919 375928446 868434385 480790111 937887857 689021701 962962902 580321185 640853228 451984775 916587830 352156321 866084915 438795004 725915027 584950612 895834310 566597665 832083987 359839932 479266783 871080832 903172350 779891343 844617216 935493567 937425047 124590487 340685595 675607001 725964793 389026917 712414835 243741184 842061210 635899530 954085504 918005344 950605136 272019294 677776315 388492341 900818407 104410540 896616910 659703497 737275710 716537943 753011997 651049534 941274073 342789719 879693890 171004999 397411575 254603273 329084783 934041532 964871319 238390154 263857052 567898386 662101648 285417881 960471302 194760206 439504473 777186505 796346356 683977488 699566347 97223864 860585107 691798712 855965887 971453147 986687299 134784898 361106143 124819375 808722342 972755124 989411818 207412677 788035847 623996578 903902784 316967571 676782139 500634097 729808372 133631976 195272145 882014196 973073210 745868490 967991546 347296043 355839255 56357793 283331015 336328252 826387690 478773060 931838941 70575225 497433082 545712537 897049616 204300826 993474730 651368459 896511841 204388412 404350503 99719070 981898210 172349305 515793057 331235381 964351424 338223963 663120985 13043698 984209710 878156713 919837625 448234919 897183131 614426938 947690224 444510417 983626885 878023699 901281629 981493102 990360428 806125087 866941575 134724646 827021814 598404160 686075408 600106737 692996068 453951185 528064246 434248472 778666336 861841244 890438836 961986401 974235918 899907331 956565377 609397962 670964090 774952487 802218176 150907510 434953264 626477143 971760375 649579176 976586246 524438747 932906769 393711144 442633941 484212161 962003273 200563655 919196221 755014516 854468460 293625917 397775920 858663599 992442916 95696308 899252019 715750205 792272952 342233138 446874412 733733852 912121040 515982512 844374342 843388714 964138813 621559010 964370035 374048966 512380515 351252452 779688205 34943608 973915822 653768398 928255453 252585411 771288460 137303773 878805981 986877377 991025731 390386138 646787903 558150294 801167989 161459730 934713003 331323289 808920385 624112046 636439443 482724587 745086728 117346728 666692975 6796268 875473031 603440154 868725885 560162042 865340715 474543468 677264376 359213532 799051073 610510559 960295807 738924459 818511693 31257170 483505954 419842141 611212994 394773930 644134908 353982129 458140304 445702734 668623901 33657299 290036804 688746401 689242417 942376053 951453610 532577839 622787757 75926814 793521335 924560804 969260901 396642438 978357255 543550079 825233548 206680853 833396400 242628010 660587564 74842208 485283336 190903845 239710394 75326933 759713338 795564057 969741507 34497066 202685463 123733018 934966086 288603591 409607257 854352320 880133129 178719118 698659788 661604757 767223286 66796994 931522439 460993496 922437684 401393281 943518560 579467956 939163759 865474847 933827957 439248139 670124342 262452842 572071820 69036520 897946208 368160511 638469479 429155233 906962403 125439049 748185795 903574981 907208838 745948713 795276296 49637642 822829772 542486207 950673141 878600416 975381703 305544658 977711384 611913806 617291510 637609908 886251779 444892456 524839161 660014785 882197896 49017821 573639827 533715611 641451086 82770815 829877683 842104499 866164823 976649730 988080540 972131852 988008777 293002575 562417820 765899342 925634251 796826245 819330326 594465810 661535105 610968389 741738782 267567302 870551854 455105542 864682497 97925853 171157728 498710400 607366960 552881953 938060575 617085826 842422944 150648946 365895704 911778510 956342819 190059133 872836575 168693525 840503474 226470708 237357003 507279017 675256960 977603850 992671343 438603371 899218767 74066515 283252612 486283379 843413153 403643640 793833078 518075197 897505688 704313163 819661061 965132043 989987195 636992570 889748375 962378363 965831285 332885126 973958709 869508093 952588311 247974848 691787063 345480195 427912571 235291578 427663671 255945316 916653052 543166024 577611849 283589615 370058409 200762157 556071604 201321634 226582638 100268132 477236521 901246649 961422560 629784363 925519894 22278420 970103233 578464583 864435807 799838547 878025172 655155523 833860442 324614812 681219363 385848856 937351059 280532219 304264213 271369624 431363670 124138128 782046217 568984181 636365837 987285352 997027487 397473366 849254406 766350623 844527484 762627438 856194145 968361250 977336820 102641474 496258218 859262774 944779427 388786481 504122622 685071856 781405353 146275113 812156986 910048067 998528882 335154496 951241649 846688644 867100180 526627473 982489384 619128180 834555878 448016850 790348585 173951710 731545045 600542252 941474018 822005736 959773434 450876128 868868657 867487437 973386247 208034686 549548360 140760637 303324733 221578933 791365350 489700792 528438845 143833384 795459338 536401665 855126485 750795561 777664883 170289071 899121827 245257160 302883400 103591496 160623343 914320229 918645223 130041642 593095949 720007101 830520834 934623969 994263723 680443837 840323820 11859773 148227222 695669433 745448507 239345758 718297028 846887805 894523427 266102596 821421564 374011052 530544248 11266199 159725319 265069349 340228361 297906110 573496347 500533913 759169986 985074553 993916778 435877384 869273613 175614997 617719528 251366593 279813367 869986392 912448616 375227828 898776080 358757345 396765322 192053845 358197977 742971512 784811384 587094890 738428611 47080767 231538596 883998948 893833096 42116096 977573511 187714886 662158090 630272030 943908583 779500844 900550751 711671352 958371258 680219515 684579657 729747134 842602694 700268261 876910546 835032945 967095868 232894463 318101967 455590444 685087335 180473861 451585375 793770654 948235248 10579016 360178026 922632986 949421259 743706595 940253221 538762420 565239948 723252132 935548996 523412801 907869173 242943670 622577757 117084464 522231350 665541628 776094632 773755990 895513624 192445349 717212284 355618737 741950364 361853443 597121337 266134551 409688988 794426074 871223043 206947535 240570637 712499175 990584556 240104621 460627651 653797092 777051967 327881640 918319756 983149324 983899697 521073053 578187231 553540552 941167466 762560898 794719191 727302129 817432080 350885526 443249683 640171579 709646408 928847312 943543769 726265737 992316360 514009670 675277502 379876811 750824425 402930441 753028518 212534192 547616893 59726447 668102759 149008665 463285468 911046896 987203249 744242634 921770871 192622455 562665156 267592341 843050648 992462015 998487697 294229380 824493688 333175207 734714605 827071306 937031805 291413825 708921290 232389140 834805326 116517778 352819907 194332325 420992537 660280818 765113529 908492072 941988027 151442303 719093290 631259784 956158447 310102173 607319138 427345712 901576775 540410917 592743591 158133625 848010440 164127545 310503481 510563827 568677371 546671730 575601228 167543724 967134225 780138124 919220534 383704577 838399195 59234441 523517661 658945401 818584118 624542842 709570759 346290152 526646327 849407960 865998665 252751187 911155829 82077889 506334174 563940069 615205590 550422471 947037259 742406376 759216009 306512410 346506055 397362299 943824710 259029242 371433453 349659044 813487135 903097004 984593919 4822914 436627176 906631639 921250576 796886017 962688339 129435920 174073189 579579063 670263700 743856680 867274789 722255102 892031374 185562886 490582639 670159206 977895325 447657116 752770755 414902935 698873661 335095531 339390076 965185214 965734341 107850298 246975626 562048716 604295806 16508171 654315819 494357506 551855302 425334555 571484882 213055590 273504523 635991535 975904117 51696708 944148284 368776287 760567785 876988305 971160148 927585781 984270339 857197784 926820544 395112440 712208726 497658548 736064686 77495111 580611771 895885806 899888319 997943784 998095142 152884661 612063162 884104836 903082112 160154025 908935646 660508766 758326911 730920447 864106224 873499017 883058295 28307545 885425315 750233645 956601716 450060829 557378454 812231987 885831605 587517171 934326129 744703758 992495846 671837517 863147933 138547238 660254671 234659045 488853342 326110675 527135931 399437924 854304166 109216950 716569145 162251483 711959490 120821633 814509149 820439050 823243855 278118000 420058118 250260698 904348960 294818861 769290092 700809660 777621127 421429591 626284719 935043178 999261105 813000975 867235526 973222142 986492441 855989523 946844169 690900452 697998455 552250191 783121155 974209954 994147367 139271215 572474270 960387042 988246938 305190320 500122466 381254352 905490066 906845402 975153279 117504088 984258278 400641278 959652704 745847536 804486112 797240727 984559395 874613409 971384112 627745022 954488321 634481242 719258923 588035515 916128952 420964581 955098617 116732129 613909049 97130763 322173883 809844422 978967255 714280650 892633785 267230347 318363035 385616829 641254465 212806291 772575587 77498083 453726373 516231770 686455052 803675661 965861881 10226587 648761087 466099176 694874585 268847941 294163005 805325968 876883332 516481324 549023054 108902051 369059609 661243180 990354747 824256684 993142196 147898543 997991935 814668875 874866998 706814073 775791047 797731943 798440942 281454313 797722672 83517130 504094797 892710594 912117696 53218168 77230318 172239107 927720890 481213212 590085063 421416608 626221902 51882698 716935545 225791206 497337809 990460439 994983045 447455880 535081990 795131495 948003973 306003498 811152529 442783662 949121271 921395353 944221368 441066720 942688130 244056247 834123139 237352232 561039524 206115013 793475172 197981249 785276206 322033932 554763376 369480801 414671082 77537548 195054748 781490476 877373056 928188534 993428780 574250987 853868014 768313089 952709412 166062752 950477194 579506648 837139530 373209063 869611158 366529601 739169007 289367836 577150140 8641635 954818685 694489232 841852284 348994711 494089741 966879918 983470301 860356122 872325128 960228469 994614683 127749523 953998585 947104174 975097674 108018330 189887300 981349500 996458442 191808934 852786221 520267827 821353088 807888901 955595713 809405603 937145143 60553365 933267372 912722398 956990217 487188953 874316444 976587368 997537125 134381097 348933457 761484148 771827968 449301691 830188604 518138990 670288806 382944864 698299184 31758376 99736168 747895517 805498389 224303001 682135139 318367676 673679200 154071477 969051160 483173702 914841938 930605748 993229313 238744647 329383344 638656214 965343276 222210774 640444914 228151702 714917946 197149149 283915846 26070366 697129924 315415573 492379317 485946020 786057282 812333832 930248193 791402672 980615488 543473745 604014660 625495556 813097734 998722634 999001561 140610883 650194722 322788974 927080962 726300724 988513470 94895454 443428083 361689306 661819616 266084720 997725195 41986088 762712536 268589667 485895674 64783876 695925681 849040650 913548956 574889966 946343444 725108335 932523522 481814455 558581455 262835774 790388445 740356924 864317878 938596611 989206509 819603424 908035840 644154805 951074847 126632454 805137733 921195532 936361607 129341293 135340121 932715554 961563108 408112520 806840980 421623351 679377447 944588072 999016886 670132984 927590658 722938368 779045534 253278047 306316321 740749208 936591939 575866303 963461168 666686035 855842448 403184130 668559473 150774188 601655386 651174498 985989201 690123178 967101815 231978302 287282572 351766980 848241786 395136181 757113809 283961357 320844754 687296385 899297756 295344939 976562858 417825167 949961405 270105692 451660189 602998022 722099976 634999199 835520181 702024636 912359382 711966879 839510900 940042999 975628376 860543476 979560753 823199895 945121017 762327529 767669086 805722554 878396257 312686163 445252011 155888454 732503773 128112392 691093366 488881821 585867409 421043636 646530305 711017677 741500569 495654911 744132317 944585248 994971353 867191462 905703369 178940629 716985668 603733710 668473786 1018525 689124291 828641379 870169263 86270713 626259786 830202849 977505679 827564596 985219231 439765517 823803402 45685025 445218286 865219303 943491649 741897445 746624711 621799655 633599813 359644264 359996385 249576891 819593991 687790686 695640515 69263566 915361042 980498859 998576757 901509065 994049548 449621055 747769677 314005891 373201506 391816438 946865120 910675030 965548289 175708149 977592257 251930044 813752918 780478196 862272061 283023646 985941421 548056036 752443790 891361862 968725776 90574931 154002615 603523790 668027716 435233578 939737344 39447888 349148078 177742749 249965162 363661563 595104566 880769857 937642115 610959755 856251037 833745655 866106907 684778869 867216972 777579313 940408084 397971877 398054816 121892769 859616484 350641476 659290407 670545865 682216705 405445429 868165425 526219388 658476858 313423486 710384373 371871424 422289258 944808518 963290289 57067342 715179728 811392829 930018784 467211767 797776009 932487304 971742811 348050923 453034225 152887918 329214410 733294418 958728274 576802977 619662583 302087098 481843995 447949152 817839038 358718647 932792107 966850715 986180516 26713419 768800905 987068782 995188281 646229885 850909500 548108759 953255396 810518627 830182156 247871336 593828270 624086109 890507485 719310551 950915553 948010953 957601998 181502976 962282192 622867427 715073481 887657504 897409387 73593983 110755268 676218086 840811576 508553532 522640765 236613173 989633634 847597478 946733797 584804928 829316019 563551186 755759321 606176070 726818694 164552587 720652466 299359556 432277528 396542626 540455079 875127404 981397098 815012575 984025958 247728286 385398241 6097122 523001798 538261966 622960992 280434488 351367019 314746624 340949960 598230838 839119853 464854138 605566209 761494881 986496075 507628069 686317918 780439972 946291543 554897028 819856373 106888828 368507169 576783938 593702172 863137493 909199231 473185253 641700595 607416130 693076658 616707699 805885735 823291987 835841092 829145165 945771926 877135775 892754830 757431328 782763390 846094319 999032432 251489979 663622604 768900896 957825661 842477692 923472806 68169131 94476419 671120161 926800488 528499919 917044871 670074078 706940821 410827146 600934226 377509009 854058769 252150577 534268349 190884110 895770406 787735414 932307850 776167262 900577215 791349009 824983351 663923031 706630841 488297639 985498128 127913219 647125492 27693491 904146590 187378447 498200980 467059162 946384879 4064861 614078733 103530099 942228009 160638466 539575172 458234481 794736129 654673585 933332737 481317998 905394855 187436222 733767844 239392576 344879810 578697924 877823726 588251758 722468774 404501047 413466785 884364241 903403545 116863900 386538937 65918325 595504187 974585480 995502177 729911586 774903372 160482402 689582740 276981282 798226296 425491199 971014517 734694024 847597483 642856897 870610037 10475169 647825939 944520239 957141134 144196305 149897721 793212037 915103676 297470305 421698377 496639473 968861794 913108699 944026360 923236337 965720691 809054990 865822199 199160450 555911695 482100055 691283700 274763052 827877573 988933898 998945949 598293805 664076523 656911978 941719618 983304166 985684223 817842905 859198577 199557910 637347735 707836039 768599539 985104781 988943914 170508434 205217969 245762784 861684240 434998567 638168045 203050565 396156995 460567750 713809168 757711461 959637432 745412700 938674442 54846566 468057134 646552996 908257111 870915819 948905655 564525618 960054133 191027727 545770941 989336783 993645597 803158535 903839614 464624540 587583127 170418310 571412226 192929994 412884233 712566967 876474045 565168417 704803416 184006149 211521678 261985022 378900464 845132671 887577010 104756907 445263706 699734948 893235723 691361438 847065513 34628671 901655085 482466349 485091449 651498247 829147315 808160225 997227538 683414489 762849052 191145704 758654031 996160367 997375103 783955338 977876876 10606946 40375235 304526912 869483437 447123726 678409601 114795031 314306450 533014551 733732626 19149006 840474425 995642569 997368071 112128043 132032721 426069664 645817372 810823524 986903389 746073214 927785848 346304010 411873919 484331094 693395601 830262739 840871598 55445462 164286513 649490262 725311348 642851342 766291759 413485131 761227835 547286557 627789919 106213779 273829516 369806539 957367889 265323756 415309088 717943243 964920005 441345020 567295103 427714611 879614409 244878752 676494134 101577880 862957062 700555433 957038714 580496472 945265172 695377590 793921169 828980560 959435501 921627009 941718382 15979500 770536471 920005569 987779729 884885073 939281382 488454437 816362039 569898399 994836299 256038566 443337017 223972671 399177357 659402925 787572341 282258529 922655521 125537260 230740251 850726179 943858723 852484464 896196442 922335568 960138106 61437791 132169826 602363565 697844227 446182062 478406984 385640031 917829781 284221417 308867362 183211532 230897349 679090367 979136577 596060796 704361603 861293946 919937621 867744524 901531920 862281682 903779688 905732963 944379954 311602217 806741380 539438916 748141322 124956156 298448207 288147689 392022836 293664361 971128524 749663623 806258087 564189505 755454550 641983386 649466608 788016512 792061828 79134451 592108067 16283914 62479933 28947799 941453520 174470419 746429642 36571865 829763668 490913828 587307160 221368699 343344227 853032425 919478409 344731854 455737597 878745204 937816983 26910110 931442309 106413086 731259178 803639979 898516255 793328520 807977007 571926451 776151322 167659864 916635722 86677723 796819853 161053010 886808633 681931264 742649793 570510686 674120153 127479690 522755228 221216764 670598447 59194327 684091162 890542893 902781082 665967949 686967070 912531573 958738635 760974051 829451050 744653123 766325773 851931980 855914609 443809287 650423400 464335303 813078144 920878828 992502477 816770416 892267231 996173304 998820634 909645250 985133826 164272067 464768691 400457001 798251750 278080522 734157335 565267509 696912752 212981477 961748910 802272455 828520083 84569242 322924935 315481493 569620570 927187885 974074126 997309064 998193234 78188244 519197148 706421863 920142145 39467245 483159983 24709753 400014751 182868429 523781685 479574945 800389717 788024580 894756227 938533597 976962634 848272775 861476511 141091929 515737684 456285523 710791008 704437672 966632609 395638750 551096512 336827549 862056243 490216769 608916201 475332235 955380883 604231208 684778481 416806915 763405968 224085457 854876359 105305781 468960160 27224007 248501476 44305245 792416308 178546612 466565606 34834135 571111775 978937783 982904973 177664920 580374732 599194514 817325671 240310594 718448046 563350350 766944710 25515229 388949391 16222150 817108952 692196030 948146067 762491532 771781242 333692960 415303422 191018449 215446607 969791689 978014815 274136821 648806873 3188089 246859771 92297471 322447890 789473215 995684087 525790089 940590764 301903626 371682261 176942434 446032957 260032981 990520352 231205566 798282000 56060947 766321221 792843771 912097515 91776594 618866239 369973783 788981718 502975810 931543517 446257974 452426655 985120129 987309568 91783456 456779113 702935780 910005986 911912842 941320745 544205139 910902508 790760498 930857253 474751045 735941284 570238671 753719526 627504816 773775965 299231294 969115084 310792927 350970290 820148388 980884912 616296808 775444400 140982512 464009203 260685042 710528831 928849011 947148341 570113982 874531637 741146249 789944479 756797108 870031037 752889352 928218755 848922076 990318480 523500473 817540965 784667186 994690388 633078642 758793660 602198179 907032951 645551731 645999993 170733043 339704964 87305256 493795308 163233962 511869759 924286107 963183548 332478840 943670397 382845297 733025036 54584667 521722080 196570785 251231221 46316322 358479904 997012135 999321070 204756691 961493926 641745034 726592524 704174908 910238326 326815262 523181671 425174020 666245326 164203654 491085320 706697554 889661731 810746790 948584553 621660577 802080532 897001381 912607588 675762857 792691008 89343522 925874231 204713891 475390578 263521064 894910519 763129716 823790449 333045950 665548517 147284691 639080268 293312395 848163971 169539689 520410634 953614982 958306422 421378616 954517665 928691053 990772557 325384930 941066824 408939871 605640494 216501025 833375710 265758936 683939693 924364954 961981324 530440241 885901805 448615728 804110923 146837036 433892229 685035310 985546890 474013270 868095491 985087078 996077256 12204827 206830543 749741204 830170675 134305793 484566234 228693368 974588537 527073929 981638319 500425648 594598471 67034265 115531125 195415210 862719104 727082334 937717441 391049840 878228331 275157798 794117977 139796538 789889754 52252472 479790000 908170218 956621052 917167066 923604862 696859805 741316331 808280495 891970574 918942164 942775443 882627799 915790947 644071679 981643143 699823540 871346344 744661631 864339726 579956544 771882901 781568693 948188051 974670463 989657298 621017268 835554664 863011738 947115556 16743215 881693552 329498093 441613506 174619147 914960539 826592535 893884284 387127144 729903843 875601845 946152924 755822833 797679968 139646367 665713014 359867403 536871445 147904352 198484805 764229714 777642398 542621767 692818425 599843630 623026934 353796953 537976727 958550012 977829610 435773789 692546596 881923351 896069773 297305096 390831422 930729346 996484102 94234819 938806334 892129405 898174755 675034892 808081958 125020520 157904523 253723747 364529091 935789931 956768868 842724774 979540015 471059831 512141392 327433875 337747805 315735977 450593979 746239371 750266007 943726746 979256246 513579762 523489974 930755845 980077842 557091671 850495470 336653498 551853189 937020772 958620201 907223630 920032759 712814932 900873358 788269840 917810214 911038579 918105132 537368465 856713953 843176348 967279653 26476100 492579804 374131932 906512106 441165680 778860562 782730400 872362535 167624915 919182235 474028709 755472670 88060334 181250973 787407113 957404845 244371447 401370712 662731770 763694428 596270591 832589047 368118409 998048632 346335116 998011098 250647713 917807152 410423295 469970380 572162705 673640730 460154309 524929210 815061314 972170062 621428361 787409322 888104368 940697963 928624654 950912147 466271539 641277406 445641018 688497150 828325874 970085283 826717240 947876997 616189611 782466221 768861298 888988710 22606856 168503823 342513337 701420318 283098242 380399835 465371641 821361291 975930370 995157047 549885822 904032306 253469432 310847358 904586394 983271977 316142499 817541018 825770059 987661981 265141268 837588642 366561596 432339257 715772721 869130183 270811310 415152757 137493476 383694239 15036586 464155615 595392588 889260342 509060652 840356537 518065996 684537381 396319117 977846475 1913700 311265593 342462306 936699943 899440208 913610627 272493277 292732546 252196244 674027905 806378237 964205028 526971783 600356188 932704430 972284283 819902719 864258510 790197909 906137297 111575253 399651189 205847313 651335261 420354751 682318149 107998564 304041093 195353426 209260668 760748931 992895921 587602733 852370787 841911834 961362557 367095172 666919893 400332911 514103782 549350503 982387890 758478548 903379570 645692089 883395982 578745551 892730775 130747339 172184700 516740693 974630636 281937295 804159613 880246478 971695525 353193266 893954185 160587096 473559159 845566995 958409065 407114578 574278420 608545715 821699922 602819055 905834835 414666570 728790677 577597194 788653168 821671886 944292512 711298514 998560663 794991320 975597863 501321583 679651489 87420425 383175198 509166213 644051664 803384467 900020552 254449022 915027586 637569020 903026070 382870628 552585377 927906409 933181367 472352501 936206180 579693122 950155591 836639060 901016594 289867928 762772715 767785179 891009278 556122354 594841497 410289946 505444401 854735441 910100240 871806101 929629199 458903078 698659034 67821834 902113702 476953997 806606900 47393135 441371949 235624916 956245904 520269231 556233128 570156017 740017131 835391429 859693174 518790 921039301 966744033 972028834 51439466 150352175 121463685 192366234 802743630 805248946 440306660 746799602 31752210 431134218 343150424 688498723 438644638 996414662 648644858 696217816 319195965 422962106 329501012 554767600 194727384 808532387 13125130 178252678 417332636 735758283 260157315 405762467 71327978 449866436 476966085 789750617 280329963 640496144 88743680 892799594 364461676 426458692 720510329 765633916 535097192 846223789 920181729 970856709 376084057 937647206 434883357 629375972 744770699 827113500 272082681 307817682 689718168 826623394 9188698 931550708 11056297 317360460 19101296 548339247 260284971 729938220 763487113 876290151 455296694 549443958 53216662 890384971 127319501 646947321 93568302 464405727 121310115 295792604 741394579 777075671 496973883 894369722 669144448 669251562 574519034 698407936 929099727 954843492 781713817 839174060 943367994 972024006 465249288 591082721 84646251 690683941 666179891 682466323 156485778 886213163 567997092 710038944 624763260 656639892 440220644 675282033 204288386 451865373 363721881 808805938 959913139 999233506 459786928 987639023 193213099 959861273 571309716 895884779 88145766 340255267 843934311 861837262 830199830 846275780 236824480 280404057 186146611 386104400 165346340 400933575 77732933 280143450 383059531 717792343 321102441 330983385 519519755 635709512 485358200 783455600 898766011 997820683 727271211 887814762 953961449 971197401 635351779 922914670 745501736 824213171 96088992 240540817 932149494 959580281 849307176 914283669 490550202 969189387 347042606 979745233 535775927 699318618 164933602 236709915 270091882 780251871 975732071 987222782 266258790 485888580 60412440 741550436 134272243 163021401 694663287 734391548 439220597 960177568 580953463 944023749 59963832 265171540 366346692 872009949 67213524 185001829 912513727 952711868 127202756 415816270 440433218 601699485 876840259 889509916 911694700 954084620 926671854 970515024 1414437 788547823 775398254 881361789 986450386 993559697 440103595 570994381 43579976 537910169 285713101 626785186 308351717 513581010 216521042 610126581 976303169 979014954 360138167 951921478 611231462 724774379 39915366 955242472 603812644 650349436 260470054 503164128 238021919 940386213 740430734 943587836 512549761 512939669 311269331 653138484 811459936 983913767 147603450 479667337 508318458 958692159 414271492 549220166 903141253 984256096 86219814 687353785 763386250 981587002 296746621 582263312 436224087 515297592 632270701 716414357 722845700 854804864 163656928 949711604 417336142 665050359 888092094 959214518 414301841 938001419 902510032 941263472 388364809 648953484 412337467 803208558 224225206 378967002 207309328 537804552 322288684 628743652 664460923 766172653 432717906 845335419 64717401 773879039 561383964 736858169 476669101 975714243 748609740 895396049 33058126 144476124 123345025 956504029 202018754 646536466 187153816 419031326 568376171 839044142 557444727 572659213 945210360 973985402 761253262 798904272 671593251 695977149 672936525 818512522 983602020 989615286 74997702 756381263 986129329 991227579 842838785 949369274 417172517 597776687 972667721 988012777 907657915 963933831 221865723 713736382 633136256 943643850 65745146 128700385 413744052 939362432 227927605 299306836 217120527 411891878 624925999 982816175 956663033 966695232 636904409 904587096 982487218 999165980 916177889 995869570 413814129 638363564 866828263 985404518 980208924 992788892 812872655 926065058 829168089 851764157 94284832 143956284 59816433 696246042 310070727 385549263 538480955 625172422 676799263 962321375 828397712 870473884 978417163 990799838 932865870 953671575 633325450 735916591 275168463 927558221 488901219 664956405 580192916 913507719 513945746 775702722 77139372 414361612 899153474 957513801 356919624 987875373 839800297 880277380 357521656 747921183 517832988 593768670 51984314 206169762 518790974 870834543 301365924 652340518 263402706 471930955 445386211 572906914 605823206 839841309 802001557 951009172 519957325 902221985 406349872 665946397 271470814 805636897 833777325 998221477 519984546 786865132 183341596 844470266 465886573 584178481 345617834 852799463 617051052 734623320 785117190 816416845 828061627 866741052 410595972 991749735 564233875 647326877 83539646 421637614 382633120 844010561 448249395 898072746 7919909 918995765 12246737 438497371 855968648 857577225 18556610 481735887 396313136 925611530 889421170 892341038 251828206 625766049 21401516 503014474 331755441 629479009 906217223 937080243 678167541 723989642 643164771 956867356 271673245 340325607 800132862 820777601 281141654 421534551 57097351 805203535 488840210 601951534 984940859 989659866 687547252 727302017 984607403 995866178 83359538 203406997 903034104 923743587 621184173 680240571 665113780 985558173 721863902 914832467 278628124 578862978 638206069 881760768 429890043 928698664 433080053 514264139 606934294 637405883 951708817 964909753 520956815 525062597 98382183 176959146 463971282 576621305 82694419 798188143 919434719 991227844 187518376 467593426 42808233 831970892 940611075 962242118 171154131 415131978 428001957 940373996 132950699 314326210 718584932 774490352 288759911 970592656 129870953 198438999 401992693 614478704 61362142 321994339 228943375 828027993 619438301 731604058 820540957 991376002 619564596 959230138 40462234 314641998 620916322 669409848 427801807 990454811 688148701 824945866 767675653 872669528 306083589 465170742 748324420 803097690 654255524 917067786 940855209 968126335 97996933 102965680 656915886 794822351 610345738 868614700 59331929 314727449 240171316 767798911 485957635 752786723 776803296 868279176 616562643 881130272 325620852 854658433 165885283 844695316 479733575 644005600 976096755 986819444 782724824 790555403 140727788 780279663 290242467 895502519 306925410 870775217 926521454 992662726 32822199 695787128 943726541 963667319 828656756 838913234 485912968 765812536 418770745 427139397 702090015 770862003 208153961 822941416 603126154 922421897 800801264 892862221 133940128 675866208 626383676 661557167 75551186 828875460 201525203 224070734 468255423 773092925 474310543 562545416 601683252 633373150 964022427 982108897 415878987 571104768 637827340 650733232 979361617 982477582 888995880 926498227 422110147 966290072 384284869 845071162 961716203 995321312 700268861 989128721 983183058 996865505 963494492 995728818 663797516 771731500 204680870 218868273 53672726 324464955 144894420 256782678 264231683 805366972 991461613 998396079 312659255 835958230 59977940 464571116 431085593 996782483 37807081 721524609 183819393 642162893 640554314 846388923 394990425 442814566 976314739 995904153 424060920 831408295 894693940 925023934 363211285 483794720 888521814 905228881 734286645 932191077 672827727 848203508 772712911 905097766 566789620 958361501 260369234 311047960 435949659 535027173 232948631 796909634 614273895 625745563 136526596 274026116 545739267 963497839 985420839 994676153 435043199 811014290 280994111 685335688 281564065 905965678 342994282 549872890 462036719 738930092 634480849 952542597 935725452 990338898 16233390 748176940 500164240 532890403 904269380 971445531 306676556 347116045 237876783 328035363 957061693 980712291 455213122 736139973 863169160 991770210 388510880 509152514 367991315 376159636 636958812 970990650 135438653 864553001 390594377 979025508 114946688 933789755 145643553 776181011 638702343 760875708 890892818 921620956 229206303 278742816 262742606 925946652 628328666 827241707 693237855 863231652 798138328 887842196 954622267 970401026 26524163 222701485 386176251 548069139 162270939 444800413 358135188 515305776 928241862 940434835 109626531 671015499 379841179 673297143 83282812 894161349 565003810 774438472 622823496 739400499 18309839 416980445 76970011 149449103 413861299 984251290 239415882 430967784 30365251 384212674 640335704 642279840 94201730 594024260 842988229 856761817 386021322 409560513 400859848 993832159 473119134 805567028 753353658 784803185 137534794 529866019 451291923 704433010 571194761 573588204 429852023 553914481 907563380 947249227 614253911 890042739 496042655 814292162 343482838 516304976 501822563 619858677 587004629 857017073 121158678 674074159 633973908 958563116 741946327 771096907 59949633 275209103 445910153 474928455 74694858 768225727 338853811 371664657 703778334 941374820 821195623 865839189 311815803 796204726 28332021 671341239 122299670 988120144 119896378 959433189 554929366 986185763 478053605 992572946 230272692 806234144 461153519 763200914 614009622 690730618 608833780 744097299 622505179 634160104 651206967 779963593 979254693 987254950 968549463 986603221 226061298 605623194 769554814 799253518 917994592 961744881 327121555 377435199 202183014 798158926 491134575 525155518 532233099 894323143 727446114 876988385 538211703 561760812 244503202 486177744 31983693 823222550 982346918 997554840 591098338 751354319 617304759 801738154 135377609 336104216 323527767 558118001 864293135 987930006 55923057 262652571 44476592 616311632 43603747 160077853 659929504 772429287 291275882 413240666 981256099 996849136 705850614 839038886 881374343 998920475 567896344 818986037 166303999 708432186 158948069 176486738 44818362 423821141 818665040 905923754 977864647 999073513 213363588 872678460 781165673 846366131 108005454 903295816 214592831 515060191 679645527 941350378 531260448 756407013 800121744 941959999 808253353 967961108 300438592 353812187 455001106 564682322 311803881 742799424 574904344 714345380 6396123 626305434 764931566 776383877 230762674 756866898 859310505 863756665 36095952 631576689 893868411 916548600 247396127 424261633 837472130 939329971 38244634 302211452 800129423 956037509 825479893 935111176 540059462 777890787 179587641 860587012 362247766 983005131 806481949 847030373 164246269 911736365 741809098 852589810 35537635 722697514 476472201 886582267 792576618 926789253 529949079 643207087 682137006 741768966 311252842 548922499 805236174 838032414 369068639 599853627 568463040 786260487 481756283 881584827 894682016 978762884 310286494 385512188 812914699 825599445 605647107 774140927 372754614 748992343 912536592 935725303 381992560 743227244 363586295 766163518 648751364 845764160 9391842 822804962 42233786 550675763 624017828 800395108 601044694 735420473 152637539 395472499 930176971 955056811 705661135 828992877 292922896 609543858 676005740 877995330 239530563 316942949 391342757 644427896 737531761 975308480 35537882 442129102 54266481 323698546 748454246 979165644 884239289 889637380 568003201 944555412 682544769 807943260 214260589 922808672 96624096 777450794 597006319 722053416 296653535 744606530 114602070 720652199 587972907 937933255 119078914 517107359 156550648 587053551 86690698 814853894 611852372 771986245 432078670 482493114 87883579 811328169 70842285 975990081 524663195 918996710 322257493 822920781 952261861 981442744 601203996 712795561 383990680 841336285 495118732 670858777 625725083 801908669 620225617 668391773 194741183 797216532 706038998 789517803 171754597 589973049 497564047 608892725 600298684 787074961 335735033 384976692 440850477 572497596 245885873 852905406 174979386 976238689 673147066 744264477 681626449 781743465 16137931 721922471 311915231 889962342 957976650 983858390 871389764 929345070 310564880 885148664 710888942 749088648 136043348 281261865 564345614 819367755 220705692 674563179 962422230 969176118 143734819 405797661 659875794 663131194 222996896 343038861 760984791 793966347 908672577 943470957 870249758 949042805 921996210 940833921 296546313 651556481 960844146 972099751 544846084 943236676 247038364 740507204 950495412 965321034 118259457 595732260 461540359 587390393 864966722 950950257 149496460 318257653 975097063 977963742 216610975 337055871 677796126 761395688 620827846 758730728 538398057 600007909 77910021 212141037 748328436 820494868 208077561 885094484 114551235 267842924 99563241 830107403 372993346 653508754 354333938 634001483 637170369 913213845 404749868 834619516 777486143 851194530 205495111 558322448 464574226 842080090 931382142 934755286 385581585 641075243 59980750 881887877 655172708 949859619 966606249 973679418 47320415 171438808 616949349 626142955 420277726 814604823 506275232 838769097 905593679 961630905 440230410 583391157 176860800 626307465 448343692 725029261 660075811 783241134 696900198 869682064 198044444 568476964 732474597 935449685 609435583 887900036 555672505 949388247 540756454 618374319 166729263 258917940 626949799 947028718 179429194 876598239 499164414 563979151 86187372 690394823 834526966 852780003 171454728 473943510 778870208 871223842 161227032 644373335 652279938 900774680 367892249 840308563 846582485 905290741 127291391 289421920 268988441 317839230 383921432 914537059 864771254 898953387 730208707 898160097 662773925 850499167 149198496 591290775 966167442 994759313 433149037 869218650 492270917 897927148 85185012 652414980 323630700 493729956 477058492 842537675 634231836 914100630 131990294 466769018 192384968 696471924 616396202 733444239 338576290 463246381 301817433 740357832 931485536 966782494 321792125 439770915 78416833 981810123 243127271 657468098 307419344 313497856 550855215 665820791 421503132 519868547 635970772 939800484 132583516 449383149 159327133 926990629 569984749 941777380 813271974 843027326 493854821 905173887 175789872 319901748 527998724 682471427 612349441 750962112 686625030 823183493 415860520 515028401 7776525 622452153 591450189 658028423 902824572 913706717 984562591 992422308 40706082 527796880 713339915 819869168 129565485 857924162 465880735 534210392 580980142 984857467 111369303 863162428 9313090 643503345 753183269 832368412 473291347 944588295 468100956 552818477 30700587 682407351 2567239 150028869 389388905 522075572 56827548 369888673 662921826 686488738 776003790 830957296 285490930 833661646 778580967 991149071 509011510 846609946 208642018 256423271 974579283 992563994 60291384 210049197 625914190 910762961 123895116 375484654 845865954 897007639 121439548 595359814 634303527 887850190 473580878 895610036 188623077 740007557 674046099 807779400 714860302 900488157 411134617 580164177 471264319 749571177 567886643 814102392 640481608 709939639 517767609 731867143 358764867 721117732 784009723 823081937 792324272 812115800 618473959 974060134 95990511 386864277 914089830 977276672 35865112 973320943 316280017 998895257 720912663 741765330 185099954 674442101 564723012 714586889 634761309 990713597 30899462 234440217 505050778 703593168 177207752 760283337 811715124 877571344 124989705 586553637 926976820 966357350 339225580 953747715 250021925 700588693 696555207 832181445 892958635 972550768 411998711 677850779 765782484 815867956 768666885 859228830 193576539 507955399 273622550 914220170 375781067 990435779 321784184 572124476 904158861 998207514 750737150 961739701 532028476 562271750 523360476 538858131 558625120 630693309 385308905 872046660 579274990 743888069 106691752 116263853 334582368 878847326 453880317 797702518 232298414 735837097 263888027 978116587 26362515 732417521 419965594 724766177 567869401 912136777 232261815 784961923 615491214 956798438 850056884 999278204 264937795 501626742 313032320 365219646 527400595 848221040 238931972 859713559 949233582 971605135 751494534 784624009 158339848 737043861 264075527 950676640 28248496 560805045 908624047 920357238 925878266 936931330 233281610 630660031 871896180 937083780 94392492 702402627 565084741 709842036 79720504 640246787 602795653 616135996 738361816 824635896 421869947 534731992 828380748 919094228 946988007 972911895 954975260 979547538 145239365 287856826 688393853 941871196 579572776 661881112 482188743 871226317 673182887 791223383 629894089 762184941 832984976 873309402 118481866 789299075 397058969 969685363 891776771 934117279 766215570 815968499 396009710 612168211 925387580 992182971 722024395 860490989 661416142 705330391 902480409 941318970 940635996 951216368 165337892 666194619 219025263 477376069 496297775 651216524 887158656 945893060 749325834 944361169 65875906 826355980 230363310 296905242 832708526 881685617 749589606 892487278 443889224 734519308 13691590 93667300 424256725 775298193 978161411 983768965 584801028 816794982 591615424 760378803 680875063 877205888 955383331 970338127 208467066 572826073 354957004 470791969 867107913 951493518 553414911 838788203 722491210 724253548 596588337 737035181 788743488 796903612 484634942 822744082 686282768 737533379 716790078 878540722 672866405 832971452 822719854 994224136 54119993 819345516 889707551 893977041 845960336 947533250 453436593 546741290 448359340 515542200 852271534 998845166 273109036 860168791 146543710 259922424 708480995 808941204 747729077 765365071 93682892 899690491 876502428 960149234 59253600 929633435 504831256 548977544 130858756 838597387 494335377 901981100 323093571 615270467 103744782 796222207 288658427 587880764 10896023 73905304 461035056 483206932 155186815 599596723 860432178 906527837 943877224 960908690 652783791 981729267 887969365 927345546 702132272 742550771 344761725 923398580 798344817 867747036 650310683 677753245 604702111 708162119 608680982 962623533 403112622 774099104 26731104 218820267 461734836 928160837 485370643 719460804 50482869 362974158 269428807 271805605 6248323 635283579 389106167 446877655 199491230 758218244 846365920 990264839 127512827 167340231 230263788 950072779 880626365 958790280 593123903 621754548 447600292 639759128 209140591 712238674 260625861 949316595 610577490 907434642 289611859 935807878 158479209 826614343 522982273 929207631 599230158 798997594 779192338 893912082 322186452 374485754 563852521 583364272 880715782 977255895 611258258 877695431 12419348 553872439 710166909 902304960 483947142 881796051 183932655 392235934 201341552 256082973 250861036 832505827 198959485 700403165 940083245 940893561 437414874 460009889 568237427 844018142 418202199 792409355 714900114 875236241 938691932 986668519 111283599 177445005 810204518 962212491 39692039 401923405 870370237 944013891 848171647 958996017 883010558 884792383 33549553 440305424 230244608 739326446 266107570 385658815 757241158 824536157 335115422 927502713 113613953 463857707 496624249 544780420 125851416 457156049 417256419 691360543 669680380 678472682 240294667 783385094 974284230 977977773 230135020 531081681 976588420 981475301 209474171 257462440 317947777 782184023 353102217 541412072 489839002 756960494 188858292 383685110 23137264 283587814 321615884 352507019 129260327 410167053 326479103 912458232 889823985 956258519 395891031 708898485 531188900 935059935 22193487 195716940 743646482 809412656 817552288 981211117 186164716 812133011 319110446 687296599 169689820 563875765 671751021 972915228 158788423 874567820 326152942 530419371 575319651 952621891 886478069 940669009 66810980 653004396 297690491 437113815 250306092 464236405 444246411 561169492 844177061 996264121 53310142 97874710 232576873 996879507 908946422 967295314 460322219 797637466 21458576 796322171 543609309 641476004 368693795 482884611 981706075 989421916 384498479 999014017 459389007 531873883 42112527 441198520 766125567 818737643 381361183 771605180 303260312 640300294 236196800 241205618 439389695 513539481 470060914 657063847 574406679 589619963 209286795 687859000 188164941 921172334 39494115 320366088 887272306 994067497 598862629 903689522 276990176 853020467 18090770 78284900 863135822 868426300 322290259 590618955 889002443 966805198 363194679 475979932 490068804 732231932 581915943 616159132 303922548 572248350 140333912 574107552 381916687 584776986 764640507 999129086 148992364 211892896 113175037 387591487 913849942 979558083 616118383 698422211 327656190 501619244 658936371 719003662 627681968 627753096 892202944 968268171 71624200 127927424 646812360 956498325 970856300 997329263 287475224 651727334 488508502 941049596 238173217 650136670 583337315 938280764 12539307 170742809 150271554 481190686 365599878 830188687 953199492 960495905 853119411 912222119 745743871 884878519 533716966 768168721 834665482 851169473 16743168 638426592 891850116 937376074 139487886 809557113 437694307 841836923 319591413 607446907 269768075 424930921 812548503 823342211 480712519 598233734 723746249 845364804 419430264 473700991 281876994 862856805 120677960 817540412 440416634 826519967 42979058 280559313 426386592 982402714 310062525 640666611 106907981 772648578 542506125 753933313 382129241 703062595 212894488 836204916 598418604 720455240 52649606 296556762 749548665 769999758 162004671 248713633 54594881 652468578 739994420 962207489 199937189 309823446 170041911 246130571 510399351 608232798 685287391 973798537 164530326 590258673 63890332 292337176 601285161 697153022 579160331 794603031 721577583 880468632 932708182 959154179 858455814 982888322 403304366 558959625 688885654 918110364 125581341 547986977 994991250 997381377 869706249 915172657 682221292 828721381 928307743 944958361 299854902 311038232 503395483 920826035 953572443 987534467 584393912 750424730 954498199 998717615 13148807 679674036 797733545 963051957 383349870 615096225 814997271 973113873 745540807 948705178 114792974 289203253 367515827 501309416 715871873 995738895 676061226 919657576 107185665 454267840 649285934 790583134 355263399 508499311 486729234 802618561 88569519 914841948 803399508 976741294 811143737 978204563 588589441 823421386 395925361 417555441 548976682 684997550 48727083 188847367 517464713 621705736 985016984 994458472 285788891 832522759 250260746 430860011 736165319 793108356 384787235 967091206 829315450 839653884 445961135 564596040 963554172 988768038 13029450 436546570 18248181 655144568 17638909 216629560 801061191 843056713 193555021 592545168 973251414 983241993 747168449 792139902 478337118 520229577 18767439 27536554 833377507 964454372 690725684 742507774 774663575 975496922 851073785 859836024 49628956 959583329 671375528 883144378 180236591 894852455 954267379 999114081 564126014 861676019 946144603 954172332 898288086 902855307 842460746 989396677 686798428 939306209 133319322 240877278 102122797 341736301 754583349 859838361 321069994 407385864 698194561 980263071 625626124 929439995 302083631 324493639 792586188 847115217 355383303 752566974 28972462 847620889 351415803 746361990 113525034 452560991 224516621 238460952 39131298 709403066 809740498 977836766 992956379 995762066 909954655 988552189 61952520 218553756 924818014 989212306 136109221 160266082 99267861 595377477 703053644 864301162 501566680 806021101 36803465 847301828 920013615 946939119 231212765 560408088 323878649 491138876 827313 211243414 990551638 997173131 237565128 659234241 758720263 897114455 173443102 773069570 621913242 734396812 620749735 970775119 989997181 991260807 833838946 856636525 517469559 640494976 821402850 938148465 895864985 930926037 431025039 833957909 681384428 782647351 713486390 969459237 805569907 992768134 760539318 936368370 345292986 951955556 273174002 789120507 620777595 796323092 574057823 825333868 202963766 696418731 756937000 861177782 870327860 998722484 659208587 744254050 881931149 956524575 528930256 880628186 670961780 827527829 917725128 929673907 72393412 429172185 269805244 643130656 732816899 873222428 828769351 925037595 192512194 364882532 916977315 923492392 457163647 713925179 235126024 786088887 232175462 829822785 661649618 738984142 584423194 891273193 267672165 541114675 839201035 841254741 916260611 983085746 716630250 760704913 621610726 904637686 863579510 904836212 992062862 996690105 325262590 382404566 89761488 198341711 501998166 881438199 216204191 455086261 269486685 554018102 783737313 915108935 615190024 954638708 50370724 831001230 349606623 899030734 96015876 899937287 422145842 546336558 683248186 801285359 53921387 311416973 423922845 870497849 379810819 798218147 69701092 157983306 888475960 976266427 540231617 553708931 334771732 606024090 89988268 566663748 176888333 598843465 518283584 640159259 896576682 933611082 250155567 793314290 482923642 786738186 453274863 776404432 310320511 596608138 299968016 735890966 643484496 826505468 966308161 974735960 856100655 985288692 480387876 757037436 650768524 770892665 101307221 226086534 602589155 901453826 11599271 553169031 309008174 418173509 28675394 431041693 922879386 926114001 662095318 845101277 60847312 809760274 389188077 999331196 611734776 857257407 279666386 732395656 19174935 796978028 343185406 998332934 756459285 963267643 743123604 747082822 371375461 748766058 841583681 991276701 325016736 546536105 710920646 909337480 55504878 943205135 331026949 998098605 305397998 528916678 287103538 719613304 246797099 529105094 530116836 742245039 818508118 975028370 321568031 849699621 447612413 876438755 721521789 965544288 789645207 845695116 832818546 910216701 911581679 986262568 595878259 627672058 211290312 785595871 454717574 884574227 266061759 452556065 527191126 827501654 159193026 893511882 847983647 874427674 707629821 740308116 195722971 896379043 938062640 981495353 591337347 828206930 922375667 991083577 437747803 967312022 179594972 506401993 250050338 428555629 185463548 504502002 119861949 849404080 942090100 959974956 702874871 729978083 422492651 992751356 846579250 848568083 355119616 947523089 326280950 711504322 45773383 279843410 218518242 467267608 749471641 766056864 754456759 812344809 278463962 474786840 647316699 961271215 948665893 951956726 458986457 966569786 234929627 279425401 972625741 974576810 32521414 332983122 387529492 968232280 619284084 628720021 126299020 635730789 575156098 613176705 378878281 733247498 563772446 915376456 504851182 961787509 659450091 857795102 698833722 715644244 552452237 612198419 589921402 842449549 534789139 644189435 777699806 977116802 578160328 739932594 694823109 838508563 108111120 903206980 466537084 727508429 123683019 844242916 317544576 453596313 667313582 964787186 782935495 895243662 217274754 417241712 624240228 877777144 6695416 403661095 673936501 890373597 556728122 852952229 405786908 921094706 628715712 795393812 583441345 592597082 296788897 873195828 501277963 882846703 229565711 820123330 527292133 643471186 981827111 987598772 186269369 453565609 20375495 128890854 963688972 965758805 592407196 721153547 193703700 898604195 423626882 728145588 676891697 862240978 752535050 926410322 306453157 806261395 361606907 916538325 511265981 512704205 552684688 795842943 583284641 987946365 295040818 505969486 564706123 875846628 525820650 652406659 553743168 571962892 758077411 964186513 869646808 918836375 434783650 996935397 566570321 756679877 768289076 869376671 399865500 402746601 729607120 881255159 263336401 877881129 568082691 899695933 850113490 916716585 54780040 216396400 454056328 748982490 68376479 107796721 725189107 908460463 463404908 928289604 798303655 892767783 181714938 397943517 112234909 781490537 398207084 722919383 822450403 847782809 149234726 558497155 75010862 444899797 967770869 991481257 340777749 459009409 108505023 867373806 636799412 791540965 701265095 791135827 32482358 483980285 695848412 817511103 445365568 912301433 475433842 705729004 755827335 921311005 554112505 662207253 759351995 837694267 326929796 782325528 84561685 245197336 963539924 972139124 375787555 969997906 178250387 317678455 606880443 736252544 829361533 938042663 298794727 977289441 308567899 672127391 943639174 991432221 132194216 143330644 305025481 919001696 564516182 706751543 300472276 470722004 754943316 923498246 180642628 586446144 114338384 786421853 65188542 977115352 750632487 757040984 452933323 579162319 387517661 834996719 633570642 845782905 334898216 437209059 557971584 672477459 97914458 545480546 535539301 945868981 345120391 996185883 189927790 652337059 473915920 789928215 543101255 767168612 107246678 237002246 824690515 970147919 76700048 286071541 105651844 155312822 287742118 457967518 845367305 954684586 870859552 969891074 19148580 979862314 508998295 963060231 918241623 986888539 998431044 998559678 310451296 797689973 379534295 662411753 776255487 844988160 343073541 500569974 348252665 952942831 689331857 923711318 557743889 953834816 60725908 194563913 776640620 884903277 549933061 822863136 283652304 521549092 574352183 684923547 498156604 742566911 646660022 817736299 950819129 995521753 868208859 939566279 238324946 662532885 70924231 486458976 564223470 774059885 153773 914460078 528865472 752110603 985252598 998585214 871598492 989365034 769846093 971885472 523195579 625766457 451871648 849068629 489974929 943133788 598342803 794847972 631254420 697025616 237710502 758542672 677401400 796542388 601529595 838146581 52149651 228355467 804140662 928856163 286345684 928640847 269420252 420285142 734311762 946962214 502119295 828817219 385615624 951093052 450658427 866612941 964737832 989127046 865886142 875090267 888517239 969595401 741179070 779290348 538978388 832109830 361477558 479931771 819488459 926524325 379609148 987269425 786620191 934812851 726265314 879476558 161873273 311090339 432494656 470746858 956036314 982139311 657648111 722294122 644924283 866395766 711303487 902105794 476084368 947807952 802646549 903707292 898389929 969092609 234168107 281022910 44142804 407298117 56420232 910825967 997202594 998923817 270562238 519260951 995033865 995646577 915958489 967334176 43841198 156139305 33002893 465428515 268730431 964695184 85058941 264078843 996017352 998248190 913746697 990794553 303908329 443448662 576366794 911824334 310297671 483120781 321957266 692793119 771580434 977164443 159780394 501094872 792960685 853592173 348719419 649546763 893673237 921212112 595861156 872949871 672459182 722244321 856355921 877208873 139534026 177217058 80396665 537456858 940618105 994077776 891090538 964963173 284504704 287570112 298041991 406145763 475386272 671387120 703618423 724177696 582460376 699773001 581069763 965414074 725208103 861488048 183215343 520630814 34572001 225038193 546045055 920129294 220672747 741738820 120751195 352358742 675214476 917728503 624843181 738089978 304111978 888664149 634612063 683400411 880711800 974529924 481005271 698986961 347035075 519422768 330384136 851708052 349343619 865878199 82930381 180336010 232988264 666975395 295033887 967068960 243533215 659623267 733269193 830049201 622811651 683097118 80739609 173141989 192197183 764366086 458496267 703269971 210175461 567553098 390761817 817706186 847706202 983650997 825501283 961001339 735178948 765573831 638452478 800403084 204947570 864025118 222339093 819148435 618237254 712356793 192127028 390740389 478670608 926039669 245068326 726404149 179380698 761351425 584115119 712852483 935420187 938587565 220440878 435046694 805569712 968465396 750032031 956167770 551816452 939242372 121961227 952930398 791886681 835027853 891850003 945649380 837647613 879437488 433805412 898610036 787225754 882850180 167229999 761973341 176881587 236433885 327188000 336116875 426444159 618429541 221783210 568116858 600378892 605995034 186736679 498991028 461613933 835949870 480346440 990998198 289806768 850983932 667328996 756860322 864958204 889512408 397956634 580862282 370393903 578253812 981520447 993602065 730629866 801327338 613086424 737402773 442932374 900079695 706924023 809735443 961589155 980156535 412336742 451412586 541184294 717243308 948912197 975206783 558852443 884630279 618279185 948320317 942932174 996399948 966073311 969923294 122880773 951291476 470403600 550898067 349986508 579997116 342236131 671200219 974058008 981728486 980400102 998849814 14986082 382881960 77938371 725406132 317173606 996324035 448151823 751040846 353744186 725691585 55929695 269706873 385626445 740785189 600881434 681994406 922923736 984914830 465348683 782139895 716630768 803872789 412066719 584551700 153154537 736892353 394428102 546600638 774824947 983681463 963000538 996796050 571256025 917685279 283003194 864756644 259416789 374040429 407866859 578941596 896197461 930011377 311012949 373538395 312487251 478955757 23389694 609392006 748510408 830701007 127540250 177075609 985421738 985870522 411710742 955597726 481464914 580647798 382278278 814648231 302180749 496200209 548023392 886635023 641207463 835713058 454117440 842622761 868672643 924164027 429223847 994641052 701015920 720318504 191746934 332389956 517286947 543376321 570990476 867457782 398199953 620892001 926067177 993502597 105890486 776356040 4750659 329173543 111552302 506375060 912807019 947250813 367412339 405464240 379728473 564997762 808881601 949408155 831927798 991788471 130807004 200244749 544864555 714697681 806176264 868181150 400627035 521813540 546394964 823393637 274642967 639131099 209096938 542927339 73009322 680366952 447412112 996332981 137425826 799785881 55799738 984759536 77859269 486995439 146122061 182364162 475277980 810000517 447158412 558050551 678752328 833498337 923245633 982242982 401675630 875914098 987054999 989438092 439367981 926523853 546915713 610639641 615339623 788125974 735062113 821219060 461676050 804984242 373657942 500579682 560244871 669368637 756742785 954703627 958915649 975490559 494731104 748262456 191698203 763367733 532945466 969517620 305221927 924161287 33327124 331721456 307641561 981274477 445090361 529198616 246597101 719143763 563897486 912474596 159763573 336740345 336423586 341178468 772037681 814798188 177062543 380784204 50086145 309162852 495896537 507697636 18875964 94634238 790243633 875100372 996563232 997752204 597328962 976695368 428257361 813044894 361310264 673719171 719789752 993124914 288430610 536234638 382391666 696763829 323779404 775094899 807561740 848137236 32767663 721360069 109725121 810712985 872080344 922944237 268173616 781920075 694582361 706156639 60112313 513430616 902526140 989036540 389401224 828632012 47682885 435620370 656296024 920837062 405364685 979906283 852068474 917218069 934020795 971989398 14395052 603220879 615040513 776286754 969700398 983342647 610242285 651469434 242524243 626806741 245269104 514207674 959948461 991253213 910178384 956413852 851248283 988293626 844814247 859174644 287305553 659308489 981004696 986884298 52071988 691494541 69056271 150902017 243146789 892716771 892040318 978629758 840477721 986050526 544455442 546405080 857993953 961875960 313361195 731129682 548049407 642046532 320318675 394226392 312622460 891851194 146872667 439170531 33081484 450225836 685391973 698742688 454125250 734275416 316764829 948179548 246349625 463869031 838808342 866592161 891978867 965642766 351865023 663636008 324357278 748135794 329242120 608545803 339866374 989680912 244671311 569227427 439823317 947533254 448024025 589567051 253123677 564914806 538141047 836751738 707967152 785241758 713979520 813375582 846123652 949596586 51608517 710766859 397069816 963244362 997871081 998181523 194908427 697832352 318933904 582288327 831831106 993325412 926402399 984345394 368880240 426987434 584584050 630397437 222843561 832842859 6636463 189093221 254655169 756705920 53554664 696518559 932150505 964341851 954127921 965556184 827621230 854106448 405866695 854874439 357936343 840050699 989728107 993290238 187116012 946441881 273611766 950934182 389495818 407326796 851883852 984410517 155395558 388754851 864125204 903590825 562310481 655945448 358075280 421695309 352501221 753746330 307146919 505284057 77877870 481171154 733047960 924820848 19304524 915801359 702326382 841545371 722317585 740847254 30288459 45502275 408049189 924225061 599440550 680325918 258869088 842918829 817312347 999142953 668810533 704742427 100093118 353286416 471408319 963693270 609329855 992806818 768435660 991253385 164909203 571664813 466663552 679954137 863186662 923181283 334051729 783725916 287364184 557174590 940843584 953690458 258676931 715923445 91769146 230742258 816627024 830290247 323655254 416866871 813607521 880301244 372916777 562092377 341476073 378195416 26915019 997184564 995463176 997024420 957943322 996818050 470932566 958779613 952808716 958010573 524274177 640126160 560291956 578570016 339646074 799168392 886329572 930745093 450692358 744240203 893980413 910334802 896199257 922985085 646875104 753017796 851388073 852088035 573907529 776663080 195588378 637814812 255143237 690264732 692407070 848843314 751995351 880599699 279315456 285757819 565071089 697358645 543867126 809214625 357295273 463692622 743943164 982615704 7654287 314599433 891455558 946285954 961168891 985276604 431604603 924024602 932276794 967371935 294352709 865603494 577819839 969884128 502871367 949885514 346823203 921003852 916365097 998768585 930593156 980379756 742062555 916179029 799745775 972945889 699278758 784312078 231079324 871659892 25083645 841408766 460939447 600703288 407489664 829444311 209296277 494385900 19227300 338574534 112156900 801342911 282514701 431335264 791323537 901857404 147832303 326108608 417642152 777684567 638892396 856802821 554729759 879114714 190496702 386824980 221711852 518146783 887506040 973472042 26855461 396457416 233629897 266950590 988716819 989147252 263144611 872270107 834989018 928311593 709456584 792088950 710677190 884383365 709465474 876700096 953320698 979018919 276541998 875428748 543481648 547004818 555706361 694192661 906817301 987228396 846736149 955385125 25337379 98861317 361077387 468083802 171950317 769917119 229197004 786575262 921000826 949735865 153378606 409989659 102463910 796522491 202907236 610408469 774043231 829678802 229423835 431123745 211175101 437615445 459158446 501593212 563754836 726256598 590821002 817123675 208461071 946038554 157813703 666079565 537103532 549264074 540171449 709256686 454168888 858028809 231514894 313541112 763055407 801064993 645789986 833324163 24336673 505180844 141358223 327592630 986854351 991638246 168890997 258049020 333217409 932698812 770546629 903019133 432540059 962835493 942145931 969154853 534967075 879555127 991827769 993365586 968080899 968986945 10533970 311075301 568686189 982404558 490507322 555922965 681508905 684049944 264397753 358180595 343855835 903905681 836411811 881622979 706732972 730063269 115275057 171650273 859081044 939481904 771686286 940087551 944835414 965660052 329409403 517116610 461094890 940211658 554747028 781799317 184196015 253413818 361766428 790390130 975205317 984499791 190694104 822789550 493951014 864913067 880759705 979252967 594192137 814872343 74424423 941249870 294790746 548139901 401163372 476101423 633312506 736220303 600523045 632661672 842848126 975203726 359361039 606877776 835205758 918775401 824087276 849872963 179416212 579067037 616655081 861997273 742439476 955408769 447597207 851725264 540902312 725512844 620337888 944617166 180545725 542338967 398754187 564149271 209049136 505448895 69677588 973697343 971280568 995586793 817304940 872266482 235267048 289260781 238846992 604388548 434570787 831450885 927730507 993205405 331502503 696750741 685270774 956074648 576160742 671459406 711714550 740688915 726063611 842821436 708539519 980863932 971916166 976519588 597770300 881390510 970654629 972321299 206141015 586263723 533412321 622194028 469111526 771399837 17760103 180188072 189756042 348850177 156039833 558773572 652480475 839528993 607805162 948500570 805203710 832192630 338481352 886040820 165994871 806132520 49371825 783689845 763559955 898566800 633406834 717475262 592909766 863359518 173695448 729273319 608571562 663556472 405410570 714637698 203138435 729526281 657839986 698552743 712260875 842400604 515573480 654243555 935325747 983415474 165294963 311833206 867427183 875702790 663602868 935861080 283841215 641240994 705072590 735488441 540531391 697649372 231996502 558122840 212745281 354174234 706478955 970096512 9536944 913134170 106385188 771640428 879273004 931847687 622894666 926950057 208759709 466229779 459821268 984021848 290156743 941148454 516510037 622778475 503544511 936951991 612789229 820139544 866525518 885926584 694348286 928011776 339958119 949590303 28999273 549684344 218710802 850984159 837753572 945523050 780798147 822760693 339409368 762785051 876587565 950232367 145523432 710345251 508307595 976799496 88825470 512243784 646543052 813876888 253929411 802245599 333755262 399909259 178566147 595417123 502734925 982709748 717734688 893350957 37074500 75667079 256201678 355483928 617651295 755770527 497176855 511316827 442742267 448201625 305470901 966979764 35593475 586712111 682115115 874497219 523403895 794821676 641944856 847905060 585158288 856283903 946091846 978526354 750509509 968538612 645438595 876629242 544440592 989904182 370830019 794806180 451270464 698956525 771993433 781882150 725865238 818901724 517748231 928378992 155056686 686964581 822154074 837742781 35705477 709242081 315831524 967650210 47761494 369056065 626769325 880228244 187557480 495436083 904724317 999146577 383276332 747227894 566957491 689965016 711794277 911423622 438277686 704546738 313263213 337626421 383158811 738244412 967779848 989867017 699126109 927220253 634707280 796992053 33872187 748876400 425404575 488325534 50056893 207645564 345256844 455188811 289193248 370615665 968334253 983826522 597424972 968901241 372410832 758161821 305292784 912818391 52066784 499092716 613587750 680794781 699031859 922775668 289939040 296495167 743341021 778998895 769743632 908993420 582176673 813926473 43576146 326494873 811791853 895959819 44977436 993000357 326452164 986458898 361632720 887729122 645765203 793048966 344977571 662443287 9264060 809638777 246419576 258299159 494701628 786602970 24604073 728492081 621237487 632551383 326337501 488148551 398862475 858800799 462529102 762614633 901679266 913649761 122392365 124062694 228659340 849323388 205023397 558759050 277884628 717276223 743729136 944923890 962861792 966516564 382086253 684220730 654780421 822317975 709135223 894556514 537227170 627390854 625679259 683466101 334659890 382128811 499628140 570640179 93874240 730026171 508361197 946503462 212212509 449582631 459652496 618475830 67444873 903436294 674589675 794638607 767428180 816465591 277539842 428148280 864904796 898847614 500586041 698800495 110721560 843104291 490257761 668441588 751043312 916188772 952971444 972211298 336974418 398501827 509581750 596286284 13435231 918847253 728710707 762746030 489324676 899844769 210238051 728308370 478849604 859675938 430770187 810296213 678225156 822451956 914787260 955405512 290441722 984204603 40294368 753381030 217177550 563441244 859362805 944835852 456170656 552404516 445045866 707020802 460370712 836500353 984165186 990634142 345226673 793897560 934225858 949969513 919485507 939758638 296741189 922639905 80429359 88909552 410887602 411422007 712350382 815295638 209453197 551951485 255406601 372138812 142344324 870570727 456547397 894127321 873626337 885423284 961861593 993863585 859083707 864910921 349522043 900544987 290155500 537084911 698844558 727700721 626687614 772235071 549479347 987229364 410557190 531320854 594388018 796394436 214652179 531847199 697409276 968002815 559957231 656297225 253611131 551551485 394164120 715582764 624127150 957188660 464127359 749926943 621339130 904619788 869675943 970021375 6203100 960317755 25283380 805251207 29280664 968005544 800464468 854648645 89873384 674205526 572000103 665250418 321695402 724235105 180628246 370756566 491798496 713082305 152735623 163318930 727012267 900146628 455712457 736137796 979419400 980104743 509947386 635627192 579754374 808782612 339363355 745428294 88502789 102343859 636001403 949380440 119167728 825421900 954700091 992385121 104174074 147776513 62281370 300784418 684074699 712723950 929064371 989903202 613772842 950986807 48810851 944215317 828031234 925070442 371227891 825452986 779748567 780434948 8766792 672525875 373479331 598002845 673669585 987363686 499032164 794329571 54756460 745735034 22076531 916122933 645852341 779447458 387590637 470025183 917653786 972855272 770897781 889046027 460423192 960740694 492862994 835516378 717900691 909743498 865721451 979386464 531281097 780560009 358935590 659158236 806512000 932729846 633562075 750475516 868474747 888707579 972263790 998506516 687699664 732182349 985798577 987963429 169400238 292721984 241301251 498356746 454884259 738016390 746941779 782102842 370781135 423053632 666504262 878053246 281359815 830993350 809821657 876514046 540317710 733041998 673936084 691577359 499784188 559041509 291326559 738859110 162079531 432098436 743801532 969028528 100142188 747614389 22365975 749441929 193154220 394743109 362913602 425963961 748866409 963781269 821030472 837664117 901422678 915222061 516842728 553239040 327270678 471144252 826949845 993496551 236282834 679283156 965923098 993093204 121852414 419091179 111404197 150305448 784215906 822360476 884694557 976271568 383495417 700904875 6870012 313235030 189377553 309454774 594332338 958310306 1305398 801040036 883033093 896245707 844529475 945878174 342739248 846583660 156525539 971378232 611095070 809401343 592812515 659995163 80569084 539937450 259155429 694682123 816822783 915040244 622587809 649356880 721971159 972686150 994875662 996735267 129224034 960022597 436337112 926129787 35566065 625438560 880058789 976069891 157677398 692029605 318789406 617856753 221312381 288272822 169821043 856403272 683966288 861917755 952364352 997945841 189195543 636953169 145332700 157992312 446457631 512988660 298819952 959364848 293630005 752423801 701829477 853272049 767990950 804914052 32370810 135396732 341176200 878226837 774331569 881295115 73823050 160209354 78022748 751586889 345180590 931649722 528997786 562108479 332191206 722117031 963188602 983707949 345655344 446751956 475436425 786271775 80460528 824165089 160636908 890501464 861594654 891211223 431596291 724376218 177943812 206045882 328642375 837680727 895615802 905633004 238670869 346115397 249286726 341022392 779687976 973173944 688987522 758435270 710857157 881569304 612660555 654862395 613553115 657894159 229227762 256763300 69933451 400048365 731692045 810949948 905925455 942326372 893330798 924737531 893107844 933778894 43561093 269809647 496414303 547341333 501908786 849530985 760828303 870236124 433398117 568254656 828972079 996174151 207042941 980651054 99139116 470799489 423516876 589295391 472887068 814600705 775417345 978976353 411785314 706650262 115021162 979221700 520356540 705990033 119876562 706124395 52919170 326095004 806015281 851532281 381588423 472388371 342381724 361246311 497312997 776303986 10388440 127550891 4562364 57392210 265213589 358173525 201959627 964123307 396546960 397600021 897338069 941498089 862501624 988071591 162295555 518394232 204866976 302210564 578464190 872983556 985287106 995436252 507479315 956862021 891436652 933061093 527820351 662474244 270018195 801397575 602707138 769202750 344240239 947832981 919631973 956980696 631339914 971399510 427737287 573597748 758082447 963269403 766085291 956625370 50441182 153854502 670011841 681724711 335171788 860769547 509053261 802313619 400320535 841114782 827479020 896970501 817453411 939079989 926153592 981820708 114997918 650701575 842334482 855496045 380311241 537715692 664428520 704871140 651288103 794072350 594579414 831647583 468200665 948183775 425918521 748336632 967188194 972762385 620969495 695811609 626617808 994028329 998665912 998863547 285432902 591462292 600679953 801465923 176200287 312406470 965453664 993426571 267569526 717521573 928931312 932402915 86169667 737933983 709907325 714688822 809650732 822033224 217518913 865508374 5589366 50548372 495437543 919212585 494422561 752031676 546519358 820695645 218557067 971178566 407213421 414924411 463358101 972895785 248437418 930635508 848908469 966603295 912067639 949265613 479619023 839068091 311783202 446626420 410579657 612716867 967733016 990492718 635371726 885764975 171734665 900745363 541859198 970152035 753779170 948913256 306964707 713860197 668261707 789029612 692090554 998730768 172899702 366244133 419689816 786754677 16779095 376319060 555248049 607425840 970974281 974111281 580029514 917155251 633305721 987202208 218094191 764794500 100063790 453919745 959505979 981677866 600339501 923872164 727102549 975108018 89949465 144127172 798537482 868089126 720419520 887538335 533891051 916564804 774768931 785173514 249068093 420895027 844407258 854089699 629588947 735255704 664127085 764822537 266846289 621115371 613330530 916224750 549057228 727230537 10496470 510790060 619589437 987409562 158977889 696297896 507540268 745587209 498138628 837089562 149821796 821299693 254064234 746704426 23288865 249789398 172971931 823613088 244685528 904435468 428586380 598403334 203254683 297356393 277923902 432339579 390537960 953025330 346458114 492831176 795025339 924500648 732449729 927048929 937920490 998201044 945395151 986873908 993032388 998516887 296035199 872088323 765208552 960781308 526513310 797781545 9661752 789552125 538517981 752665301 423094051 988143099 683901381 867741550 521318301 833450412 814856488 936526906 969640943 982916349 250235710 807261824 128773255 529949189 351487774 990948828 784292097 825011638 927302416 937413963 106832258 659740604 963640594 989133586 192300877 379393041 609017581 713598590 119395841 144642596 323485416 370304225 945635231 966704113 215087241 651187160 351514428 656190306 251234123 571578893 990705602 996565825 229586951 325030230 694180987 794742982 702137241 997149275 492097600 752075111 882793067 947155840 356742247 763097012 538917853 574270776 81200103 778987774 64977621 210942747 484347492 648445290 597234586 760728683 613777992 882992884 209493775 940250713 831498781 831608145 57964171 690953892 577700989 752928343 696175393 950728313 643160878 960620894 764189062 777416978 623359484 666476829 492575314 615328241 405154037 815108135 176930268 444663129 679197354 844317403 204856797 665685167 126112790 378538667 857209059 864337149 56755087 436019634 962978162 999163811 628487229 793900960 377004812 540601105 995057511 997776015 337364187 851137292 69218031 439255188 118466125 234555471 685530240 711140238 100543162 349877248 370041002 679627862 221245602 890532744 28268877 825148787 157048500 952798481 153195507 840609176 715466767 807488382 84849747 591022167 337921354 719776431 907651352 977728392 996119562 998902900 224667480 816646324 419122776 574580304 50966857 458243388 196614014 940775333 319991618 357502463 623388829 869604234 658536681 890450963 495467886 768671353 557995828 903880865 991538334 993355352 907143540 927256686 406954140 788884127 482442620 791920605 72491535 612863111 535203181 866248772 516137256 985497121 376401082 450734579 849335476 852993532 402293941 447585842 258078895 776477852 872632363 949653023 614100928 849187064 962854656 988448836 232247795 269105738 224305925 952259127 441992575 632633241 866456604 966394617 948536747 964386647 374997684 601913282 363043063 953668176 625129204 878442184 343311750 760454445 42879370 381984748 215732782 753121212 70192965 287145714 535525525 793642969 146306195 373653718 873248823 956011912 225562297 953925693 381724378 382303760 946382990 995535842 828665604 889516890 261541933 775821051 956709610 997025043 73608576 432730792 742027040 857544554 667119072 714028937 30585560 739274162 464074886 838925955 877170887 998148269 572142919 752121085 898260051 912586296 837597120 913442210 846596512 936472498 921076716 967492657 653932292 817281091 490290023 622878364 700204657 942718758 578993708 584372132 379262856 979486618 915711209 924128798 298863394 441683209 296865139 966138876 688841317 756313799 656510468 799789188 793652714 964095870 24106600 524159229 435381971 571001542 166905248 443461304 381456564 854830813 898886756 922012729 47860975 908515424 604206768 869094907 244113124 521843715 182780893 754002453 418196352 537053667 629828969 758680535 788916668 979302490 490598898 647076926 500309573 505402295 368610704 997733684 368402688 797345701 713193444 728325186 131535650 992583657 235179487 322381521 692164278 832529928 85132769 530559358 704918034 995817465 985688978 997921511 439754474 747540961 558150937 666061706 901150966 938554830 781011158 854785498 438827444 495133043 944918610 986759468 776360238 873131312 731653189 833007670 697677780 800790711 502044561 570764002 798407412 914901540 697106842 904139830 943735017 997591391 243504108 556840400 440729116 892526674 668010880 761167688 696725295 955489244 947394300 966721476 951975399 965969998 864902140 923941753 770416071 953297526 184029253 821390597 478901289 493257307 117582844 293425269 690970225 999320543 978966518 980705006 388801057 648056246 930757470 993015747 283016266 352426753 533505128 889582334 702326400 929002881 790352203 977507196 506289422 848194321 321476537 964256326 657910935 671984732 852627223 968084799 603353362 658823325 251965863 640318183 582385720 846145050 398941769 753942080 756457177 782589709 469018953 828513899 420215881 798219938 920418211 938950562 75443931 922272961 106346337 618783979 687041578 757546463 582091517 820234762 724030088 939236135 561948479 823194717 552471393 699947976 922371212 955036547 554245769 912685606 393748564 714783744 324725125 825672726 634776713 954869214 482300743 598372763 775778161 788589792 385221071 637271201 814908592 826233641 309864423 639565767 51757845 294933999 266907189 724376490 909998563 939823079 682377773 774967508 639037390 865763908 413201538 826050711 652591520 744697313 84656814 695428994 435447841 474979244 270972092 440552112 653265118 828481064 176248202 726702453 186111903 206553262 600223467 680529489 626077284 929979070 702916947 819774273 604351771 869349576 822232370 981106976 923780772 982146184 827751164 915399352 835752994 923843487 813285398 926725529 514102064 665062925 81304991 239085450 935097660 978683880 901154555 958650557 605200180 883762180 530372208 982703547 592784094 631993066 992725198 993816413 402973041 822058550 951304140 955628050 316505667 919017245 768408522 949016801 767858516 825005911 158423019 211729990 924848643 943166576 249792073 430198159 572642264 975445175 926727388 953529517 597011286 686371600 316134141 427351022 345353911 957188796 568174773 730092539 949504694 959374929 214712608 440484900 212434149 378201199 223344205 223813464 731220351 847342423 300095429 416270374 856218483 957121478 596625213 635920790 247585067 720116478 481429406 851779754 288246944 773973930 347773129 580764514 206997869 732564357 153467784 821648325 777684896 892434212 582100420 958188650 837963854 852943246 485071013 914894774 140078429 735025092 577271093 809222088 272990019 804895707 988916741 990792424 551290306 928325028 58202520 329301587 447073807 651991590 731168707 755775631 430315751 574351643 921408276 926245692 689822677 865687878 412834764 517857908 826980450 857147009 306640666 424417378 694891125 882843196 98936187 185502569 356460124 656995429 985847055 991519534 660739219 727446602 715446375 742439704 684691219 709278392 203898142 828686991 38508228 529318522 621511351 793455443 176724165 923647459 114184216 740692878 942566295 958890322 408630218 757556574 794157721 912430804 612884333 855929863 10484837 902690261 758237408 765777943 738595514 965230213 777057267 893739675 974807066 994021321 877411818 890891998 86818039 481093748 457568196 849232244 211050175 993621350 771121204 876820655 610696668 811128921 568468940 593546641 428768292 566402717 346875400 868284113 77851091 258715016 685455218 799777539 699897796 825131982 751274880 899796828 685439835 992491887 943181925 992191602 5426802 49973591 232395945 326754103 646548275 783316518 363207250 864160917 731960469 953644579 702712779 713464356 867004999 953504733 989292663 997645188 301093205 396701933 957790390 980611700 942527535 980467025 326863951 554241173 752620249 785785151 604856406 733908919 726419705 967660652 59084978 792289196 303330537 924645978 882651831 987127643 482124795 735016493 330416684 831545830 162370585 884562033 822900627 911525593 875549575 927748352 698009686 808339918 295785729 334261148 623972663 893545377 269794411 388937832 655437835 968649042 885711849 950044864 773333807 903275781 894805081 995376938 98915126 902854918 883585169 913902392 758692512 884945039 384348469 834693287 796852111 906042774 856248439 862569864 903905810 951028657 607741275 779945086 223312149 320406666 439644999 867742199 384254159 931929253 24705017 969838459 963213830 996294048 92213707 198325330 698057659 884095193 614919539 854798553 943136905 982573726 243040910 850188823 421932955 661889174 917762385 923039632 577058549 805452156 212682421 600125410 936010524 989559194 716120011 885501436 146291700 858963314 835922508 930511219 433271458 556761158 153650251 387936190 135102686 283833098 151751837 981512370 539621701 945642080 192631529 221147206 608262308 910924139 27619803 509834917 960547676 998420216 909170253 977056519 291773237 516595635 462951307 940976292 72137164 675322894 542863354 620531187 574916027 866528642 768271440 836781613 29557492 573141493 239560849 428006782 417958166 939300345 490317516 980645550 905961546 987255347 155172084 339416738 763054078 893584580 116108972 933257179 849972849 878574899 927965093 985808077 85801066 884267869 23131952 822249948 711373044 816464575 390139909 784050172 262461984 950162015 826202161 842186825 270262907 909005092 16881049 886488721 647492411 998643055 269964267 309221697 379510905 522483365 498312434 614509318 770804324 888738548 849229500 973817764 192057656 689704084 545707684 702600483 646704167 832226471 173098795 322922648 395392762 684269723 95257285 939453189 390770929 566287795 353547132 866720840 827455324 878554050 131532822 953160285 736269273 891619338 794200655 901160736 413205457 833891580 329574562 747824811 214798440 988727162 65155892 935518686 214886596 778524009 325756749 467372389 3125140 916841232 12960830 337635109 335791969 459630144 781673367 865544540 975688701 987600314 965359672 966603454 724994030 779092543 445105397 906391047 240134259 611324793 334463926 666640592 907888567 998032827 834323679 958220800 112378305 861110650 296025991 730378142 535858685 785337547 122228500 620795782 769430076 916228916 692110099 865655302 308470658 636906147 363160997 615990393 467511310 734399746 786385516 813108905 602562725 753652372 187967677 946433140 418586498 976391024 499948454 731014417 874524640 908028868 871339695 986537908 351521885 806414504 52246952 182588869 939504553 943211376 486774076 962768489 59828652 554841312 267447377 361924986 535580192 958442285 954349997 979759259 563016604 985576740 237780427 796933682 318705209 513813693 754200034 848827382 880508373 954585010 647925780 995741487 175186739 307283634 806040379 854207888 458907301 975438540 391868613 650717954 239500952 842455231 488677070 795628493 417870366 598770379 569639488 674266463 489747770 831513194 471203781 905257982 9523582 516462550 224568790 655988025 545991360 979910863 619748221 966784606 474272689 832551171 241851618 744437195 308087048 783475376 98403771 681420793 952986428 984731690 564647784 882182621 551231581 963029145 517869766 683558628 341960701 852707476 303944929 654254352 820547252 942725744 554080945 688768215 240302571 887154850 63896358 158108810 226725523 927514294 398609732 857751562 464045906 550943403 263267911 509715217 66007358 69809794 309163501 950341372 273795553 899553649 361065799 400601829 463978365 945894779 730457734 809485151 141815192 577744794 280144457 409382061 689632163 927196793 183005473 451943365 115521756 896894412 740490361 987576220 645442245 653143083 302978693 894506394 559593939 584335304 233657893 658867450 368704854 415172753 760287390 807760030 233270752 881433210 330926216 726497079 650762690 981500560 953636966 980456957 780072650 976002979 547153087 863561403 424712746 551949517 725867232 932550431 645107362 726713838 440510168 754219214 190180633 598814192 236629680 945402575 999236613 999297040 190646930 253962515 991339703 997430460 913103048 941849939 11733415 639048786 966268588 976619785 335229807 652354036 294473517 387775283 494972967 800641189 383794205 837640614 752712165 967538039 834594295 911014088 775081192 956919087 665333625 954996034 810063387 913451243 893746495 990958974 794786936 947293809 226365957 530707619 964118251 981355809 623484702 635179497 449054631 599764465 420745708 687348289 51679190 182469152 525785928 789888880 103687998 130670752 557233935 995220873 262400395 540582842 60422896 864259589 69800853 730588658 393797025 571733369 920252181 949635349 514212313 926001638 758038315 771482393 872934686 903174114 755046299 931196328 698363925 952101924 490648141 675428632 486158605 823178249 822130616 857450616 814859700 992026917 167488029 890447819 712762364 937245505 486351008 761729085 108739712 658005357 14062112 612732211 195453603 491350061 480358228 694590579 607855901 924403398 660855155 713339876 915435617 943886143 740787220 839625665 356597130 677455075 204399233 959674257 84697761 484949924 209883327 450255715 540407142 646771997 786318038 859602267 850615645 941726676 879319495 948408650 336912804 584577495 120023778 871693666 156700306 727207022 369770158 612274932 826540192 847016733 822395981 937511508 140029110 507494242 289334047 369554572 636428406 834613157 300013445 848083444 661506269 827838842 98614330 951449238 990284763 995293653 283600854 454621260 446547245 694776198 26000851 144748042 367534237 399996610 460639291 997438145 827500031 962823915 782017143 806389712 138632495 690422443 555448794 614514533 6103782 775653243 256407320 752451305 445221768 967893741 471818146 793366044 78336062 956452547 391487600 453159468 284109658 772395195 493230267 634210870 594339050 612072008 756821460 993222184 543576747 910782055 869937811 980433818 64803920 912964833 818835240 979108755 458894847 756389233 362185145 926307059 951700244 959230609 484059024 755952029 618252719 917295231 63644607 755681319 402057946 815275610 252757752 385311699 117652256 746735693 955998658 990192789 874794606 875238820 217434935 584611725 134961165 491801804 190829213 957378002 891278317 979414095 790565337 825604865 990453798 992960007 520633219 594113321 296339162 735698068 451825367 825958383 257640738 359765954 401988601 970929073 410080528 642801945 686244093 870685528 271203323 419780749 818574001 948600685 423075388 971834707 601819236 636038816 179650334 869715224 222872948 963212246 814750212 894727769 125175152 351901674 8700049 548034595 882406680 931084154 146445463 418608972 695634299 925740381 701142037 732811002 576321287 977308638 373074333 521913407 709305804 894627571 151987335 465683480 39275352 761759915 113178349 206790885 726347870 774414860 182573897 806849988 959767317 998568806 507111865 878490614 476172208 952902843 181071828 375767718 100205509 524585361 814374785 940990406 611909267 980600554 301885961 810562969 112124094 619694567 254108655 920002161 77661907 824253366 154706140 601465305 915275386 959593117 590222723 627174152 122033409 755905261 290609872 865111848 114063581 306424713 249172549 303926594 75771683 327011605 228011691 376847742 915903998 953133146 54157848 743079710 291910211 988988360 408328659 417741758 426899178 901705830 125632636 889389530 200920044 906015111 253639847 779862296 971357675 993613442 785775157 863173692 543599435 647086002 591300178 883260134 940237120 957082869 984543964 988746683 855685137 955633649 611387679 631072493 428647671 868465624 177970844 710746825 553665771 647170597 437262710 494822759 132530529 931700734 631563055 680832451 806797645 875395526 15426886 34740744 249234344 347399548 494414122 726103789 711112707 987511064 92893995 994081206 739989865 793326295 999072310 999340515 825884752 962610146 445199902 630113559 886069686 934256430 670128923 941269442 920424551 980456347 473015487 914462325 948165090 980114587 689462210 694841060 74107297 614386282 758739874 981795108 232586349 532594360 175994957 800986479 27697315 453399234 377119422 950001306 435552930 952966898 300835193 926459239 917371123 966050812 60283582 514933202 875355041 939713802 487442320 960289546 592234490 806008655 476504942 595849899 190641930 707566632 663130921 944391759 355158816 722612014 601054637 857431549 991202905 995522302 597544386 859555006 869758711 949247905 210144372 212222225 616805908 807742958 229419961 976933822 881212113 992838534 85760135 689874937 167645643 458657688 569566230 927300252 160092609 302302236 3792793 337412858 499998697 640995931 703275304 954392844 321147686 609004320 266731542 794135561 649710903 910295790 150991185 819366517 531078151 729942621 25474657 772491450 452310485 460611554 359154332 851152944 653667670 699775061 898310462 964192931 797381932 974704523 411542381 702329049 775945114 818559982 345988067 520042656 341551854 451111012 140584243 180662275 68293806 447606308 266739516 981233146 785072481 864637564 827433486 839602036 236521232 874365463 78833530 691598336 979460384 991939704 286749431 764455338 895186510 964723699 759067791 960088396 82479816 787825750 663224187 834161186 299463779 904691444 606338979 741182458 937531776 962645468 826903561 981592686 987122903 991384385 273675300 859888182 263894283 566401487 404265771 593841277 796040211 826531905 775397071 776008707 316572345 594849951 983540437 987438820 39082618 949950956 178647869 831573429 85957821 237278579 705775383 966309595 882698712 967263517 306133682 829577097 169204343 364444196 726417700 866514184 918757279 998447979 200147019 971888375 581073480 998299569 346838200 948050023 481534875 871439560 261423305 712978222 255791453 271360758 100745768 594910664 110392014 939617419 834767797 948161894 130258581 246217493 798060956 829068426 839200716 904416233 76260581 242365349 615900980 749350508 151312099 850642043 56817121 464224897 882631185 905955401 39659259 869017251 512109525 850770882 824282280 966893924 894810681 973369120 407993345 501107605 449442197 788873872 227744099 401133774 434107452 589096769 881883191 926168636 839874029 866437952 151169438 559224322 556291439 696440162 245146592 751841424 532197974 675879378 744238665 926379286 465542843 535364421 429563249 806930134 916203204 996483404 960336941 983628573 5517288 443531368 570799177 777642181 415262685 818898963 42286459 819137513 696012579 904897279 74167159 660569932 920306870 958103902 700232274 818032814 681006227 877939470 837401018 948736723 847876733 889965464 933973077 956165942 350921158 578878043 393428729 939711412 659171790 940069632 321503812 732741233 257601317 716346851 322485291 901905024 815341370 970064340 681384966 837863576 573996238 999088228 622298579 788835117 138189811 328646326 396107690 506716057 447577158 998005399 217762180 872170885 518201582 875073243 452836205 968448091 576233759 965422861 596650169 869507885 471361357 952031545 682237933 970998263 740167271 980105990 168916631 776541915 377312367 821096623 374458728 452142512 187209925 236294433 793676622 841991854 745605279 951307133 190945530 654634776 997921805 998840440 703891965 753842930 818515284 993521859 89583460 833945231 637488144 987786169 114340731 862202276 200123616 316862179 927347911 958317473 152804843 883532983 880790758 937964930 942381935 943155788 813240268 919541982 850120689 969352055 419806031 428353020 125459442 466307784 679889271 820994115 310357844 538122789 829141925 986344122 811724535 956014209 476017065 568962796 830370087 835916129 53247382 132624271 113181917 266528696 808315739 974488980 622920342 883170198 839920759 944412259 890276380 905746346 462671429 854785635 4098640 250299843 902457631 914845658 273982410 979880180 210413510 245708812 484020955 530896571 976030367 995564969 740168277 844629222 86528803 750620295 798537298 866645748 254061327 620004620 516644839 819009467 432470256 859661417 473331758 921966467 82160967 561033123 562190736 744423841 868215500 990132551 402177749 885428663 956858187 978951066 244434476 811769175 219794443 759906483 982297836 990476987 676751148 720093748 455556971 672394478 338069032 933116444 238292766 582249353 966064184 976114984 23536667 540018646 679890632 779835660 980864371 995873455 662324387 713875344 289520518 692148195 176346771 680206753 792498447 799841841 999068879 999360562 869084319 878457064 278500203 423474807 40709458 488816364 896340783 936188763 778022405 988817017 877967206 925242811 209465177 662292990 980196765 990334120 846288338 942033199 66956117 111887603 432021694 946699055 512432398 825262978 65316021 152330244 556945463 614073118 449240053 787127717 677717362 764437450 423013279 691530739 153670131 568184156 998144968 998934035 828570629 992336128 246120657 971079234 673234176 962032752 709459409 797589552 830788246 922481249 314198787 596939764 688205437 751386644 35911487 726035639 974560843 978115218 880432145 907865001 35203140 451448845 715750326 805499853 419393863 470004908 624454281 998627476 949063006 970965418 24387228 243421788 779588699 973925302 448611315 534155779 866616382 926396569 508732109 673008783 817187227 878280853 502884707 919035032 437762715 562669208 718868156 830597544 364895487 675409509 683547535 945349097 814248711 972487209 478707943 993304465 311037757 337124614 228444446 357260154 27851355 89007806 453785502 861401036 247604700 424433671 506499258 537575745 111022036 811621779 46092253 117658426 960347263 978746803 410566417 862367781 732113421 790916106 645690531 659848004 115858822 562189452 916910672 960338260 506164810 890386040 769625974 804149341 220098770 668170447 436276661 569002980 449052672 467968639 856762982 889213196 676888564 919690377 232600569 603438106 998548510 998940094 718560359 930041222 446752997 929514174 24181925 899328353 208473934 270794811 88311510 883126772 705745619 896461444 318065712 544939857 383397161 969726960 799786932 978909581 562157638 640930519 632638889 724950337 846104671 973292837 841371442 987452616 664631223 815235540 517769291 804306104 823715996 827497143 210733121 628247631 988240060 989855172 844905020 903547587 471742249 877883700 482585118 759562608 753158743 967758358 817929598 927128796 851788032 904391368 237255236 855467303 874942969 883813819 228149815 720489877 105434261 152577638 96882226 529762201 991316822 995070377 626282706 995811346 815175098 818041817 602380648 909376687 218968760 792869753 431973186 631903377 763611931 901034648 75363741 828497156 659324563 831570430 985880631 990067316 627212284 790607266 460399332 899408108 96464082 371892110 911216311 992742844 921102308 928832583 276306847 306765581 452454482 909620788 835711366 860214368 775946590 896071144 425567093 715425037 578054818 602665072 34195990 638534877 447191655 934253829 993000485 994735566 827243846 995791369 230061252 303606682 117723856 292563321 378356372 768161139 262266916 922917611 205298554 940985588 301392725 714455669 576781510 844567217 7072485 397976366 397795909 665994787 937231072 986258828 725976418 903711310 388673135 725916945 264581808 910782466 720613859 889539929 92380637 663575189 609581258 688770479 775691218 896503509 966504718 973780301 227743388 873904496 826790335 900757458 795227235 839063265 781627647 870884552 6886954 624973121 516220025 867804484 153430462 980997576 940256531 977824236 484274108 559118208 72976299 978136243 327619360 730447287 923162880 965442239 209052757 964280566 291424817 494745147 743428118 799437430 441774910 651638400 527703594 722753764 780532619 837697961 315233679 470937809 825737598 975252915 647643764 744726898 99019893 641677726 710227719 783379050 859252004 903455266 529979325 814961260 6904131 48313365 446385907 764779778 996873788 997611420 297642339 792475408 389480817 432708513 693029508 922177959 41612569 853284760 40449162 811427259 791498890 873387512 483593154 982431572 197555615 522461088 578549254 619590116 960978255 998740966 990417383 991863682 682814447 800913972 828366373 882197248 40155824 93843194 590131696 673496205 556654603 642881386 95816265 187430355 912059424 938280652 345756955 437900894 839334362 964052970 307334892 506518377 678885999 923565099 557098009 941183244 67075682 502625360 715237350 830741766 688082791 821206454 107087559 947780280 537363576 816566368 261536048 672691712 35605210 141722867 354796410 732477752 345840768 984685631 696993525 964968883 222015911 960632346 79584239 386094354 412580707 728430894 253259274 727793823 49526798 999349810 781181199 962801183 994570249 998508589 483218240 643764497 492499791 647632033 4263368 607117054 911383066 967634471 229595936 387639584 286331906 717242182 975624497 989676438 491479972 814646734 714292211 964480748 674988004 804384832 558427409 807031823 543476955 739304034 979534665 988970591 627197055 736032502 87858341 564964810 964505647 975852057 600181057 887150470 43491183 389522391 895419936 943822581 226553030 427338512 289872664 932125546 631123173 798352532 685896781 781446305 122302370 700020609 105810302 289544842 701370732 756123793 800466514 967174597 515077949 640905712 650054079 706025501 898720744 913716514 930287015 982473698 270559413 271364645 859548689 980799308 323982968 750691718 805899808 988388199 584966289 889802355 314469409 618243066 877568740 973972727 392261715 497063942 433932112 582804506 310227923 869829373 700273028 842678940 150133548 156952228 679209676 826477544 957585803 999338516 385277998 484901332 111208358 398480922 578143262 692021861 170648681 642892259 985615370 997212548 441792715 598243672 223647292 802646359 763580332 850284765 880420251 885460563 119773016 324981706 746715769 914638418 481735631 725774542 992913639 996211496 479052869 534663208 199028381 349701567 123872843 682817303 253602173 779926817 308032497 760676164 310052931 876439714 824595411 830875844 907631667 924977309 711618382 956226286 796239299 874000324 777769006 928771548 947851394 998639044 773020953 799691246 878311089 889958209 779985118 920996326 331243494 585494323 423742576 560577476 586921102 878718106 390770103 869512143 293561156 835837244 60849478 852868426 538253111 734741536 598237566 794984191 541718500 907141864 905201653 906658629 849570113 866706713 502291453 922990086 990050314 998221620 358417181 843680405 828615486 945075186 316463502 534426945 520574936 643797316 881043052 968155460 680634418 937421523 462271396 988668852 974482049 991192628 235066905 947862001 580757953 692494852 77280196 432440614 633393795 733260788 293054963 848010772 603609362 918934470 285045861 473531106 798071203 941478066 425434227 676975575 671387791 776225577 226381612 373714150 603035484 831065326 218354165 780901670 237272343 770165095 451050416 557244961 172612670 593198837 86643964 779159356 719508492 797411506 450117289 521515517 492007287 693145985 462746094 718537289 182466945 699186680 912105403 996778005 666631597 951706661 883841928 910086905 735356988 939549487 71113227 823060642 311514325 992004565 756982323 936684230 262279131 488885786 917261638 989389670 420087621 762125164 371565271 923496947 705558747 812097695 583334742 981667246 876892717 981289586 627937596 751642542 616032624 863419235 472189243 524718850 646500565 828739048 580578300 755797948 406889951 626888356 606027769 901431596 476957875 890151973 104019550 660599000 868657463 882439365 806438696 909378741 845399899 994567219 230551008 424931881 935340388 998337933 968600901 971109610 650414936 814325688 298572750 437711658 478209021 760472205 536365257 606793486 850480535 942304392 465477839 736429143 679166485 814045229 634129631 993184800 992800273 998561077 835948105 867824143 524886521 929834343 930520111 960625672 330699240 451177630 593542655 972349927 638677235 989403747 283134648 991339385 43016626 916023160 840088109 905968747 500344696 958862229 226200645 550273016 371325734 463201548 633864957 776249667 41571893 622725134 953235739 962565493 382049139 515839385 585153457 854951578 683489703 963511768 370374400 709266197 126037244 882770823 188481963 608195343 219201005 791346013 481570068 482677478 783079273 885524710 558675898 760306601 214321569 680698869 544691100 951902451 151229626 372285750 835805151 844586783 290106949 734223247 78464568 373566761 256843553 348852550 129471868 781844529 772766485 794199115 223527020 405928274 483189821 625419318 268092613 543549742 755241383 960228636 365191287 594420822 360114111 923784581 298794400 447222410 577185929 958569152 81479922 587351252 97250818 315852510 207823360 225656213 884777212 919301459 914301434 988837086 484063128 765186912 404892692 898915081 350593798 784975066 731424677 830017065 867658186 871227452 755458290 819519815 100139357 530373446 314484322 732992942 335086666 877598291 314947445 696338743 958339296 961592026 976573848 997021565 331602040 918239952 171038267 283943031 154399967 367608363 828728830 991826691 209975108 428225126 287960738 611582352 872940435 878849962 816694076 860328916 240464310 988137365 609789583 747440067 616907317 805545924 95663525 737745724 470913548 821089565 978973513 998446651 941732002 946590240 652580221 971190498 184909734 551728864 791840035 981537458 851200908 986349683 571333890 737501933 99722877 203003684 293234653 391703872 479673480 554925898 287990709 383899615 429399770 987907278 100509777 579379794 255505721 587092158 530492773 584137016 296322378 754246078 776651985 832048896 272844968 369020268 846687739 957348282 536429858 612950876 989389267 996690176 996563862 996717920 867694327 930323749 82983432 312588056 562613135 899907787 242025373 532484904 621179043 720856461 934843137 945071956 515689622 885148022 521740574 971605013 78777583 757288776 862283256 930914318 180732161 715340881 915654816 967658073 893813055 944671608 775111221 890380265 155175031 293973903 983051138 990804813 905953107 962219992 934366763 969550016 338094988 769334671 337000951 676359077 39955980 870951244 183274034 945632169 64900457 909161396 354553791 762928068 840354252 889492324 289384155 374620067 944744833 993043550 531041401 701673633 901045740 936719950 88042513 842501490 725503542 948352416 410396846 511980571 206933616 836049661 948590743 996967481 242630367 604750050 441458879 780785128 717795693 776476714 791959133 865595763 554416352 700427823 454480294 767055058 277971115 348067578 490182823 500266499 582552929 981718179 788385431 936805841 449088988 655338304 817022301 987586218 881439649 970165506 793325879 999126940 31855895 175107170 693290145 811365246 507086180 662954240 673950645 910366350 784152619 847428621 463392602 897439840 946358893 953904609 140920895 547933048 511310043 804780002 30905003 856592275 437300559 466445322 22870869 520386258 940069907 972190846 669785061 755109719 679833813 946928201 811819900 915120738 111593361 689126094 88021797 333456800 39406747 185368364 844020017 877271423 55355575 231164004 423796215 843339815 203963714 319637943 736938835 938468019 419996184 737163058 635861218 853603690 804419619 810025474 666544679 697203198 688211246 712102021 910240802 923676465 585212492 970223698 672019165 771234257 710947535 807098145 745419080 781346909 316597293 834835786 361908089 898806789 903406523 910372024 643420415 670243913 821814755 971859958 791057298 914692025 102009162 182583378 980502790 989735362 80668211 448761426 264032065 705104313 290541099 979162378 473841024 735303618 657941481 832283098 16807176 832364016 899849068 899973310 969232989 982649346 904776242 917884493 473815994 758054510 791641441 981941993 615090071 903204300 513144229 951312390 322381187 651678208 138572815 454814336 148699502 953973558 28776564 175255227 794039947 839922844 735611332 932051899 486005743 575538219 643787808 836269358 433058860 802438678 909877659 928763062 312284917 961187955 294022426 713008070 86063213 213050260 366901757 819796135 139249253 319901302 375391389 541696286 448609431 869354377 765459795 780561760 748771161 993565940 659327845 984998613 438270882 484740325 32256191 203525040 5048729 479846478 34590138 208437147 89156495 905748607 394879717 916546215 967227968 984743319 132714346 980894172 808939685 967242639 45852975 954121194 229137779 723301855 651022048 813527989 792984145 900394767 138146355 204374656 382098261 415555451 156329283 181584869 928250730 993094998 767047028 948972659 260924724 308500703 182613830 312609775 287454383 758835624 735867683 989221107 75627075 774001837 666801298 971165197 854063494 870459501 399199178 434712366 607138459 795695615 582447798 920437129 200960774 911033130 360274254 459808256 757338212 949541550 621905355 731595492 928187520 937990713 794452210 805149528 555637384 610736662 8743282 276263584 185405413 876953644 102309815 615726807 369607757 744451382 839290735 924219768 828402082 857270579 583940832 821459914 63522070 604138458 140300018 941218417 64174391 203029812 805055999 811700344 231741713 441093575 516296173 851014588 19257989 944201304 196014656 407039810 526506270 763677256 228471073 922079798 744155790 759253049 411047631 861619899 683702688 738502216 303851449 389474506 320413777 454602704 974616692 992350673 229606446 824799661 502624271 630229517 169451799 465842329 518566826 527859124 669193499 796766804 306928240 910616962 533908400 749961272 891316607 950119650 479643809 760315671 636341124 644481461 884981138 899827250 38313781 139388967 110077777 849117136 723677886 985133365 78931853 390042772 128172311 917403358 729056564 783328196 456232541 607859248 938870405 951933390 275227070 836950966 722920959 769001242 750947334 989691256 270786238 755579191 78941444 996308048 853038244 940555269 65878861 743675114 758190455 878651830 79565352 393401230 885075023 907204100 121153731 522259003 842758105 992708268 250779607 684572498 703448928 911560232 28798535 983318147 880542589 908477510 21445200 538081520 267618921 625696101 919985413 930723104 974913157 978811290 283515189 732386428 923059051 949098030 657056863 994588628 134248250 283497610 861989656 882674450 703045465 929998838 365569265 381151034 839122548 919201650 226965638 720850833 551777875 763480108 119188607 341089114 16104323 61980536 749977542 857353908 921241511 927792385 584451525 725493102 8577012 543884895 29924434 717456651 387421779 949847556 534181829 839031024 921388395 998395116 182709047 209630058 522400359 706206886 4285019 410633725 644779654 857716890 181519094 720616436 592044559 711023978 731491577 990280955 351285688 637971165 225177292 970458516 336013771 582789514 636364616 930286816 773308589 894026246 811859005 923315935 795181776 902935863 717860085 796203351 747335357 854628319 438869180 791773635 274861306 812949263 612552070 985359720 883190198 966150698 639977894 650402658 604077176 650069510 453192330 560741455 699062606 917377805 218497160 649295980 355247683 935783452 333043681 454761585 923300496 926383297 865892014 950852603 513392155 698565524 591580189 722731525 428720367 628740463 391842716 730639299 449691953 806367397 955848240 997319373 454880229 948492214 670109143 904483001 670569906 882285138 807538866 920623242 207989518 591468602 794400307 864326654 738806475 795377173 709863668 870741529 481035000 673966267 174534977 868414030 309184928 636003122 43913613 171227108 112280270 454946913 649639906 792594258 650001431 691295202 325064445 530545069 233452206 235641318 488874711 555201604 394243842 594780353 856180752 970650614 246014220 569998448 780791943 929629845 977198800 984268173 110152570 820149844 237391776 275917177 955289373 994277484 33248832 285701870 156734573 424807434 440735282 598711156 752353725 872958464 955598813 967731375 603528493 969105360 648253053 948874759 790316744 791558677 479818755 535994405 332535359 717568199 430294280 836553441 748130064 982630008 691858198 823369478 640440828 892936486 697476801 943568441 191060410 858471769 841986817 937985228 55192355 728628089 522242249 966114049 575699603 779385474 322731111 852997537 235446758 698323290 620067223 712430257 174793010 316865659 270975622 453467075 398730763 625284492 881345589 950644137 198482430 985100092 101981605 317954707 148246798 548609237 121632954 694614388 556921310 693538266 752163566 988583125 339333734 814906537 154938380 207665023 282109589 310917174 116680464 451442148 791103049 809274844 858147634 997920135 38380386 71765932 828521353 895950829 994195103 994923750 1540567 444189052 596366106 762306443 770298942 901748114 955788158 959109655 732583734 739516813 154045640 204590872 520925730 876078446 999302766 999304446 564091554 585735312 725208539 827213690 48223777 824404087 316504353 468431481 613679290 837723560 622887916 930614716 151089744 575893157 85140174 717666882 407974406 476863059 614386829 737417868 338335986 712053876 49003782 839996475 315760965 630606000 477196964 947251842 499298199 578658423 35154079 136603008 925499065 980465024 14192742 794758085 285066221 415502482 743069366 997409678 602558609 826435917 571351186 910653003 91680908 736347490 660583643 989196190 133026424 975871345 489908278 762888276 164659464 793516193 162460969 611630498 133775517 231701046 422236049 582742161 17201934 561585003 141544021 864209353 546325847 628010450 50497903 499921758 187673132 593064709 491876293 498753690 193660913 871860017 869441688 970467990 22269021 578809676 20179047 387436693 120602139 693462617 955543230 968427079 509651906 998652358 266512703 312496528 416020730 671382693 135445483 690322611 311927998 434199332 564243354 889888912 249401043 855811506 568634730 660706752 351046864 903283144 195802784 374844805 659566562 929881430 516296237 583468659 41578100 648498607 351557855 991527972 352051523 874002742 217346450 334473538 259121607 553995909 451161494 474093856 617350321 801003104 626719335 879996496 331321667 646065985 637367771 762941157 405972707 898835653 160088015 914920316 873561416 915447327 464666267 923652684 620957686 780413849 557288628 953916842 564741857 604684027 80018862 521628656 947325134 949025536 44886750 421179637 752645550 854132856 960523485 976622716 232065498 447819768 988626024 989470753 151679989 609260395 114953606 627981688 568082980 669322913 686372279 694978256 226628714 447265070 550793321 968734180 96038913 672138486 792236917 916169408 907245939 958823949 17671844 279364909 439136226 566096704 826349441 851587565 814433841 927871947 602490545 625153257 232391203 627968689 600903525 824268212 932055065 947916888 17817485 327857893 438362111 578079978 435737662 725074590 626153487 805092789 888290901 959919390 536286386 937632747 232899797 624034959 368597898 583031772 548219905 819347611 72566100 321715764 243262071 279682252 227804687 655026618 700844425 967516323 502974459 948120734 560746824 671458949 56747149 293557805 472902885 603443909 24095514 479373480 946068002 953722947 348010582 454325715 173073004 548888947 84534054 953824977 879364077 935023564 369725751 522132063 579268498 891633155 307913522 415961287 920348430 944324864 859401039 996999800 447708771 483253002 329875804 899979169 323494829 879244288 650395089 723871277 777418937 875739623 188315063 480552098 838422810 902079248 356454624 693330848 347926227 625745756 263407857 486624300 898267682 932150339 435862907 623680551 451401311 946711164 586469362 852726605 242639990 747259932 155836237 521615346 805649250 941855584 599493066 655524036 278144626 661388340 499363218 869238129 785001305 866463603 628975437 752366945 577986427 809732449 658647895 811562622 429249697 970578325 927022932 933069915 124886569 812074359 404853623 493004499 597977972 997541567 114297797 915593884 222387229 460780132 631401547 875189239 489863727 992132461 861357171 952568873 329771857 712586819 685161560 896783650 808703545 968474502 881377529 933858464 291954473 844413221 136824809 790845692 183687915 385915914 211995026 706619947 322171812 589413673 674437066 780869843 741700433 920145007 214075041 467239594 692605677 930359677 40329442 423638592 138178341 704937220 961748435 986048712 530518623 840475293 887139294 948712578 12708163 238385515 121923297 865463472 196394679 865418926 278997829 609799450 694117177 790107594 872879614 983804305 786922153 841751748 417495450 439884116 40112281 705416395 391080755 890893502 99190010 976024361 592558297 998803491 126548746 644008335 378680748 555055012 331146224 910684368 449744540 795762598 33959503 999164491 774977082 949563487 466982978 515433075 331829287 734671933 134475619 742830323 846670409 978129472 338653704 903813375 948746524 963499356 267282970 730536891 612844827 951702414 883325030 988335791 913911544 980782201 586389040 960509886 825935447 963982976 979594202 984223276 535020966 793524525 761515694 792654547 209234723 305313459 596599649 948975598 560396055 855211340 731105980 785922057 95110298 249486019 100477054 874827149 177246019 901142679 162325998 298399103 56552396 301786594 725638443 998251071 845357902 979406481 546019848 701773982 518662809 711375572 665800750 907743311 315888667 785874970 24999013 823450278 588133080 917607317 952657625 965706469 837157838 876835686 103601231 633522703 533673275 953914866 472690160 529012344 575133069 772002410 450022138 989190643 285991577 581809000 315061451 842873084 749436148 939657260 635874878 862661107 34467271 411688780 805931149 929308369 515955923 888276213 346651400 548894057 368191068 478107144 109147922 638904836 215106177 239921551 847521563 983201016 380231534 567754789 369755750 961770580 310165015 797343992 715959220 964505569 426538822 869081215 776411044 896697742 506825463 810014686 303807668 742223868 197434167 525538078 744427646 908290268 886337340 948654477 226752489 710624751 964114851 992652039 621653953 777595410 915812064 989139129 809306741 882102948 402350732 724799635 701431744 842009927 980294429 997078557 773301700 833910020 440247013 529135442 833722807 846805469 971455596 976454780 309551917 542833153 317684522 400337873 931542497 979442622 605272526 909432079 704989444 905462864 770008401 817034647 659777091 817731977 475570734 802893063 415724536 493127996 412744110 436540058 558168342 749003669 88478365 172481318 242335414 857989379 279169773 400792152 721262149 958970032 108288690 267891936 941869305 962998215 358315102 657016067 611415012 682836043 577939558 610167507 61466094 972136058 525854500 558489365 974489964 983166679 444751352 445360176 13937264 944806213 794593253 963489516 126121049 885015478 111125544 907315797 521477148 648568619 267757012 667020793 712160448 951338094 150929847 937377904 808071479 915803316 715754096 722023184 296053380 340931337 387889578 909932777 297239677 543630268 321862577 866409286 330460929 618194726 639071783 936617048 37619615 257281217 835212136 860699340 109840098 390575963 616674087 809518110 317437535 767473320 579075178 791676097 991062032 999077888 455966108 548809458 902684442 933005643 31779293 273403362 445430493 772483659 846299573 938443615 959788894 996803185 931181977 987762476 387570183 870521937 411993239 589556831 778670970 891089738 404761469 495666638 782381342 871574294 633739464 714129062 236902640 443093816 106913561 186303928 504446615 884928465 82077960 111101226 7577214 188940460 680816443 858748207 192091117 195435960 826891783 921776106 625937164 745283268 718980792 924067445 859090934 979631765 105518725 287744245 634073363 645497165 807730014 871034150 637321183 995501949 109041021 577679428 611670356 772672078 884700107 887162318 980505052 990218735 841384821 854440440 640217938 679350393 854825284 929998950 769300426 869796491 279286042 671173094 665603755 712413117 220361157 820222608 904467597 935280647 759315201 837758530 777117372 817151848 93903210 866939818 260288611 457713684 940384409 971797298 460949795 563458639 791178961 828869935 714519470 953388713 10917161 169338326 198022975 858088908 492080601 532838551 491978693 971965623 705874389 931417413 89981996 619661144 198813092 531092482 521390664 784290526 612146670 652449347 97845875 546290954 758985240 871857759 700321760 898105619 560514875 828677858 607042078 846178234 636189606 754598880 446060597 539709921 554403548 801923199 79954715 619462591 842524923 847063978 518379710 771249412 743905730 946315535 538573551 603692411 484952682 826219593 938299501 978286915 272778003 453872501 629087524 786932011 794460268 921444109 788179883 912988218 895164338 988105109 490575131 641951293 851901485 905178766 699939378 716881744 156015367 427227171 556110655 813930787 275358337 635374734 74764328 101056065 302377988 489158299 321947199 824756582 353352838 704365330 288753468 903044625 647431624 814569753 335760532 788507177 798651476 997549976 776549221 930353253 933622840 936342151 510016232 652963879 235261004 451809982 735006428 813302774 764238873 851921198 559267597 856466217 857465273 984179756 865088664 873089556 630296912 986013515 952719652 994050185 313502992 647057556 609095750 922586684 805221250 910773739 476716689 599182864 469863437 565971127 822988884 842891892 388871055 747304841 405072669 835197061 526025328 765392144 244249749 909929584 183684064 423604936 384865011 406779047 394818056 966543692 416733918 901773313 217463527 448741059 93938930 955384846 520128821 737346403 774289886 859640031 737063139 935138312 659984665 681185530 965787537 986740277 135587289 138108497 23001983 443104046 330070386 886931689 806474581 826358175 355995724 418370066 119510642 153513679 708201961 837374779 723135025 892086320 817745250 837882118 108837027 553659045 982111954 992773097 690686873 784938971 524894023 585733138 828803470 865813333 795179877 964054940 812895749 905738091 734801377 893010310 279071988 596157965 777737044 859008460 521746237 594788030 212023486 998633536 220962575 376177131 931204890 971752192 775460041 941484781 291514076 935526261 406103721 605165718 833737240 959549735 970969285 990230455 399878151 822093626 281975860 340701646 762762281 863721611 384947340 753490789 427746720 770644559 563046712 635278448 64405810 806645932 625812459 948158035 915473554 944007052 765685204 865514761 358827547 853806577 519889305 719473406 469516660 899706078 576421033 721425510 815363392 943662078 912779803 966065117 85679835 912659257 824768849 827774667 732076499 968956112 588230630 591551167 435310032 709040022 172289568 348322012 432272952 916008831 721561526 804589761 111648994 539354152 250957144 705248689 288021226 366345982 617326916 804775587 976473999 997004163 930075091 943345306 814717700 976214400 571457068 928869962 479527597 496315925 565878879 809663772 13423416 261100889 27565 453500231 754577219 982426979 953152277 979364862 976929877 998141140 327127816 667758482 991599045 993254237 661586092 905996032 295095060 573034839 218559887 272456025 458693868 585710332 531222177 743012268 469290904 504921205 919852972 944011732 427353316 806046602 152904122 892295283 492796200 632354405 598821314 800468613 403632373 814716991 290246929 878309883 95195848 345977700 988284215 998236962 984697183 992879542 141536747 203805288 746317221 760606785 63135197 234445573 430244961 454513149 222553321 701867856 666021171 691050933 330257598 635547171 122166180 883720930 633235696 868622213 850472683 892151866 160774581 741446088 537275484 567772409 506166045 659676526 547973334 892756922 69044064 758111289 356598329 482237959 28734060 871614167 392570658 827409235 737691865 784291667 112028182 262817402 215608137 836967460 904478719 998285845 349167818 563911052 226388226 426327756 475280590 477385318 275821521 513666137 527980300 797442856 127372978 420078997 890372745 894033065 188237141 956133955 188661607 321913095 562224866 662499538 978891110 993522700 914309418 952115541 179401231 863715240 334450192 442389521 625878046 878573099 857075077 863058040 885303944 908121145 361844059 792855299 349583289 988871964 427838100 661033772 772994557 926818657 907601517 911191350 151296703 563906306 582409724 763710527 145521747 823169648 803617734 870500619 446989396 888036724 685519325 695792003 498719224 570824831 614652863 952803718 977775400 988783750 544174135 632085012 37826257 104216768 786735752 901147467 296020395 999167581 958375995 966858323 136820844 233861718 41638357 820913939 504352591 996385684 148979845 794023461 963760156 965313206 641566213 925461307 699465649 746881624 800159097 869578970 698262125 983708542 264133421 398217976 875787246 934917195 382932553 628000179 309086674 330548695 617047096 669862745 91647139 800797642 236029478 998874511 221094481 602150529 617839354 988072816 927204556 960827019 729744927 850541182 385391997 861204033 111038597 128026095 498920814 595954323 222696691 395078417 470760369 908112036 66322633 591255881 951054337 970621115 437419341 483291456 37505762 627459876 649918520 662574556 654458896 765498546 988045947 995775425 406198782 577558391 267699332 476253056 688544742 800903742 489098149 712319820 224080174 668365325 935391483 966951260 962466694 974595901 469474512 844734665 608550222 834194776 11632659 492931975 196944679 783400521 929555537 944480856 987716981 996260186 811446886 970868324 798946078 925116445 842138455 920787052 647725104 881151782 315406095 552787251 705351016 902186214 864857508 988360772 326599083 717487660 325357455 445759012 588165257 726296328 123111763 289217993 495733440 867696309 658964559 669846775 288896052 758526148 738777012 902241842 872850136 902394714 64190907 363754537 871760638 884828010 375952355 785268691 642604061 778550202 948990413 971271419 638272427 813066679 332774899 843475142 318236041 727458541 334283812 420811029 756635487 852830004 400721968 433557228 568941772 865338699 544343643 618395980 378831399 489447257 31646406 813019395 429814966 860413076 35903132 418265620 78913189 522892563 684642058 912686358 433067469 818877334 192612524 431220019 107110928 351870686 887747086 962834491 695582913 796881142 821937991 859202379 465065170 536796439 937401053 977696911 284603219 771172967 392025301 631995496 766190171 791360991 521934258 750009889 265769297 443350279 954778518 972042160 947070879 988812926 771854062 943489137 621383160 834605535 322690887 821029389 644320980 839691408 303219954 800910001 342022712 936725333 5621825 186504386 277417379 289072361 633455677 981828744 929737256 993097362 863230741 938560903 123388738 222941117 483683676 819261573 495117519 977485701 24866476 142359719 638945586 763700645 193841948 903637164 980331174 986350150 602038203 748577668 628121516 976893916 354728041 795254022 677104981 717175671 762168783 841887348 639775044 717900659 194087721 807836559 816543735 821573380 6659603 478097618 217079079 642678684 839413935 890301360 912296784 979166189 370031678 930686009 702550459 796778750 375010303 783234454 290962954 518810419 33322052 864748029 263288222 698131297 46368872 138333575 78439208 601346146 551460738 648305127 788474939 908911963 400555657 450772449 142508454 590639288 403939771 871948219 242080841 255962353 949351523 993765726 557676961 881666502 756292698 771702671 114579930 534222520 392408309 840524423 669647842 849853863 407193345 826298491 18356032 122741849 652519455 809086015 847652788 982695209 555981008 682652663 948969487 956392458 450487830 988073372 197058275 830591825 396810165 403676187 168391845 646738819 983019612 989220407 223259087 395189143 825216541 973738321 190240691 482893007 199569270 966648283 487566955 894026217 22501617 124206177 530019240 859734413 439148015 726941630 117656257 167163105 78089794 116071947 844531161 921473434 789652913 823803510 74180128 663631487 624914592 854499684 215949173 994581414 918508750 933583789 352708143 722868885 227064556 543676642 11821545 349507441 280063546 759000166 625137740 994419037 73289868 666367022 701519643 823761649 298368104 730131275 694575669 792290658 647046135 842253364 387073424 583448953 196232354 537534557 753482651 817419267 368342122 369292671 337921296 923831034 288076641 783481480 243765737 715040181 242812729 938876538 759132567 898912131 302748078 495746764 910542576 922286101 978999545 987190084 45688302 301623847 14084546 973875620 52310320 537935407 997434141 998066960 946780151 964911357 670115301 768207284 261577939 282131515 543844587 748074130 588648589 782726257 148281445 280291366 335410920 617625522 896960746 908890108 377331106 677931755 948499491 957934774 52467524 912138646 687217969 700908103 721737922 862142909 83757921 243962939 37800447 930063536 873880697 982773441 63736682 607894254 956287971 963793231 782185709 992409295 458401068 652891210 981587228 984715000 543992731 886627682 624371082 821047255 350334435 421185454 750702474 847202924 38383110 984483130 43936518 524081117 334191581 534276956 777155666 875047301 857560983 939693063 193046584 306279336 218799569 387861387 578168561 819521168 878088069 920322905 359797512 699030625 76909390 618632761 962492105 978760263 925728086 998729056 578185889 604905040 239276060 314118512 955564975 994426304 232342089 528588437 49334292 520717335 567720730 761779628 511456302 715000839 892846511 903680205 163898900 382287768 17752583 381229498 467423778 886189007 331759372 943195537 291077038 775405885 804806086 878860964 216067334 779136031 162225019 418071510 619396988 707345045 568439570 782333734 734499810 939228729 215811347 956163314 745324256 799231904 450349680 850911418 876281025 987390467 139415513 291716546 480943732 590534231 398124484 515758541 523006783 526497011 893850461 913622857 559749682 709521452 971851389 996925804 867368035 898739997 305479910 439698706 123750834 513412439 845314814 913010198 604123222 932137345 394153624 435139915 324406415 546135371 831437978 896049532 463313168 804790491 877442819 950558576 798666504 860990666 873540118 890938579 458435315 921526504 185324136 924079582 877343582 911685547 845538911 885476540 136046615 242257257 659732711 927350356 593151137 787825603 295015739 504091061 78572662 463338131 65216229 120546805 58158428 586393629 900090411 952952492 811097816 909356232 874228073 923266924 133532808 854853349 784373133 819553361 676400197 815906750 602238391 888835712 515107649 552469090 144067481 221561390 286000342 575124102 517404727 578218046 254032464 870656076 155158971 651898458 791007860 917914264 722382546 731149617 887577493 895931583 341817780 363140718 72387592 232152145 848363323 850306219 382010879 763842725 944895955 960778101 40911287 610486031 720183743 850650796 357433794 771473372 183308305 472660297 613763501 635250145 638261298 668774093 756835206 934416391 621920306 790477464 39888027 291190833 527117379 938031062 618991992 933261369 906796111 969365060 78242385 705807280 938288699 998659938 604620825 854546919 332936746 353414411 774468571 857681251 576591682 712705469 171026319 849625165 811023014 874309610 575362135 749881121 650770532 919901653 27294290 490562003 338518671 598101748 28724053 581044430 304492996 372319378 493195848 589905519 628675140 782436558 595695711 771547951 524599880 655333065 658410408 892247098 546087163 978662196 249297588 409351786 661937987 935264831 685317072 838934370 747822842 865360989 812981614 934761697 587709466 588399380 396527861 397336692 508013122 666511277 586694847 716167541 853354399 866183555 180642280 533065677 502997414 960816666 19203084 198104726 627942910 846796365 543528241 593444399 876472143 991401338 498975386 654513754 507957237 685510802 574018251 759577033 482078354 519970823 282436401 909657523 483205682 813204513 497564805 800383290 219079601 763130663 361476264 419717334 106517847 819572413 56124636 832703798 795978178 882687461 807138664 855201992 21917080 817035636 216542728 454597866 460576055 675549816 453914842 985311058 645230344 812677954 359578345 445144010 952941096 994902391 888454857 917489552 946817823 989852852 622465557 972265351 772938382 958857506 9828583 386130280 761365595 858172655 741438655 769093336 136012964 713897755 348425942 502038760 169223898 802998215 528809726 935326987 884874389 947452429 260760482 622324835 177649731 386083948 47749851 361052273 859140344 983532488 917743238 961743532 609048103 790038690 606360232 830155006 691341185 817142771 214172483 252614102 546480574 861398335 126747185 159886630 106500925 123681233 135339342 514873015 764842557 771088416 734126337 901063843 628307987 946478295 378345936 984273117 549577453 865832750 102798845 972771575 866344684 893434223 52460974 799840057 962563854 980190766 608453117 938182446 272028352 997213163 107540156 309723937 982768429 988487097 113927465 451361157 88700201 393480357 381503370 730356455 988716416 997588463 871793097 898219358 442142733 891396552 703459119 932105969 141478420 841102482 904930416 926672287 129236578 932540691 539909758 581737363 679844560 916137158 318831235 434583731 720728689 742898013 84433746 857636408 206506862 644883182 634033940 744389285 637257907 804707645 975238424 986923492 955975458 979034849 614956020 985404136 476084242 990488381 257002227 904153014 93906434 401362956 498513816 731940816 706991895 736354622 211675642 700290703 413121152 605046362 657660481 678708671 753369236 949927225 788007122 980270302 383842142 512053652 800636467 902807109 241729149 844517061 768577256 996488800 573576910 761557165 362459662 886408249 160741558 500247950 986276136 993570909 460525978 736643828 948522651 959643372 885412117 966770915 22336217 354615668 389809516 683074217 137872116 865738633 414631762 978486571 716939284 993526152 261705769 683980178 532425961 703156428 224521543 297610695 973297018 983567670 260993259 782282897 905825210 971525616 162176187 538552276 387642224 580274728 852745698 900428914 286536549 828079207 467030482 887878094 730136533 857142756 176874759 721002441 306637640 419371143 471697469 805807179 522231180 830269390 32009135 629866635 1488448 328260607 675010998 935848375 224871447 338350505 152133019 579778294 339133065 948456531 716812919 992575474 382286425 666610589 233291025 607786713 862889773 936897851 810780334 913314117 892551140 952881994 591152489 972526309 783622499 956630303 18542314 187198488 932094203 984451923 485964923 711287670 656311711 842167063 616171975 631509433 639025606 877656596 187783983 896355418 909086152 925885739 860461104 958913579 824094864 994838603 223319512 686548911 970199091 989616070 743925856 778174335 606942318 852280510 497103885 805314803 25851961 606697743 309526325 611235864 157561910 598845926 394033320 977988914 597517053 739723217 873973392 971397987 657913794 931880772 369253691 675471411 239919431 628012338 544212260 693389070 357099056 521246755 707531436 891464055 873295318 959023778 988814174 999158330 471608763 932725658 107343303 653167317 327584829 351203044 563053608 576108079 823479581 824902468 284611171 900811014 730447288 762001084 590219832 677939426 995423898 997594289 383136040 826231499 455402289 859315402 716542709 893331668 607495474 628874971 866297467 934131727 406525178 655573963 989227525 996831084 132403208 190233976 403501098 977756840 442953557 502186534 600171082 804188365 618361156 648358868 653391591 989399950 773287428 990022115 843853951 958951507 125244214 725133023 622329502 861803900 536544848 690862822 298380788 636107767 888435182 975035146 134690334 179520104 22856209 734573024 966941283 990805607 482030974 504995727 944822380 981523638 467762964 740741146 712293709 927577284 950310431 968837500 206327078 992040843 652134360 912867683 770427401 897397225 206517830 912293819 830549758 899251547 552146595 617660895 953852354 954761632 189150960 693340395 122204268 514580625 191977219 651421443 62929654 97765888 904415584 948207192 573824646 761417167 796064822 962015201 878591536 947096223 967210174 988098334 703859277 756369713 938402158 961010803 856694299 884953565 415652390 625849033 993579656 993878499 259440973 461258004 462252431 865371457 570615370 598905891 218579498 336176074 954672095 971891093 151638089 473353811 860105315 924480320 13231106 359677676 479415468 878062669 860460481 879664159 468401437 945278861 541128712 687312614 137549050 891897046 786341990 956234438 127091082 839240636 852781984 861386879 551959206 736884841 24095246 103903145 382180806 724132955 966217796 982940160 260085213 442809851 926853271 976568250 157045497 545238791 82253583 909403773 697107659 841933435 226658895 861282663 977577196 994041136 300422516 889046042 24114215 949905892 700219197 831172265 606337573 889066310 48091761 525225407 127815014 583387767 268119671 772529255 261535980 850767123 78194727 418986762 17090384 982542716 362222531 391761518 592818181 685335703 318283719 801963188 99999898 484207257 728900247 864216749 777102284 980699734 383064007 595526880 454671896 489762050 442926597 736971299 524365628 920609197 776062917 968077821 793349021 860603290 467868819 841159516 637967361 890850084 451440019 949013039 488012408 930286773 994145870 999384981 641444022 770714420 168674792 818149947 532601162 558044885 707753175 938355586 814511530 886284546 762168584 793619464 94592552 790328675 233559148 452204356 330683204 412077839 507572800 629280313 115776111 806812664 552335761 910206695 832998963 904005437 181593813 713980142 108215330 267481321 819897588 954566403 280664620 885843359 608395849 770374078 144015622 428571284 552172544 777196464 165736596 920936799 736048748 764625570 177053749 182975538 477851120 703623943 933265727 973679072 479406551 581758301 737606977 936785623 762699420 824798373 604745522 814109308 514764947 764439729 505620911 831071014 68071162 658093682 194225005 736089158 646343389 656806887 406176981 894564396 935028438 963189528 528701736 872756030 560227961 741551175 789250753 950855593 447351889 696300446 72990576 781885415 953094039 989900064 189692332 828501807 444225277 481779836 506185655 656949234 934614644 941880010 533720403 888446158 730161875 933111722 202123406 336976004 107036300 737716822 223977502 755694678 152532105 824745037 246425011 725928779 373678304 386629663 821156838 914492914 120640575 799978512 871416387 880814225 672033839 893706316 117746177 689017392 210954458 318721151 886317825 900922236 748726229 852657095 35240301 880841110 127245786 915156683 333602049 683309711 370339322 699792839 250861510 265634363 238308460 835710039 278240297 841273132 526674176 611520519 161761036 869853154 846121477 968373208 188776247 717542662 730207332 871198019 710405092 935142316 773884083 830675695 269531772 730730766 836867327 836982415 954499669 956081788 86415290 563698634 681786232 777609763 520938203 602599964 198131944 896864523 410059769 784791207 629663372 894625766 942814551 983950527 794547935 885975181 54130075 803555068 16181662 468463269 811860309 939779077 249164142 696471335 529419104 961159599 562055297 695737223 341379240 599258030 842104690 969127151 812977441 835424346 565341911 857740728 750057662 993997152 506496830 561243249 540743483 940167480 99072234 348271969 909523129 936840167 916959182 927436229 714375557 894626223 129478278 612308117 378697979 984787258 527086820 723834300 33547982 729895718 104650231 988498014 840811487 984195775 790773112 982530322 732955697 837163509 957307574 987953385 446937657 842388062 922867455 938739027 677595361 758185265 34761959 655687639 67919485 508424733 330248359 634474591 234265650 333547042 605140609 929540661 179351820 631937638 176762766 204159510 834138307 862863178 73675380 618360518 153595423 346442478 650800311 781110960 959186768 961521218 11753468 668548557 949615045 965020413 692745446 925183985 947683501 986669108 97884973 785955481 833009963 893326646 704111868 747526804 406662910 936643772 507531947 587383661 972584880 994016233 220301685 266688788 252779518 543860749 469924248 629378095 735493476 774105641 874513371 880045303 169748241 261687029 553098134 990861504 429232677 706027015 75296226 439697148 176846284 873154169 330797500 416478076 636845542 745938165 32700997 49411776 104834076 853017327 471692011 872347034 140591048 787589388 210098659 749466450 518354538 533358129 350580096 753516287 643047914 658690446 881943554 938951526 842372332 962214160 289757597 319373711 426290084 925416573 735220526 891690099 603595425 825189137 314676816 717377979 802567091 839055139 601678899 763663676 780724432 830721237 561176397 952809554 943723863 949988383 348950710 524534440 990260144 999157964 113509592 468711133 991179680 996285858 868890008 924250928 424503080 456285763 523932542 939827924 183192638 506337528 158533350 262416119 965439141 994292262 505220440 520690489 267579151 576052773 373611762 996682380 693764696 979815117 920135194 920320300 807192954 825219004 976898544 979086769 702107541 861690187 404299452 741557099 455701688 561329467 908091923 994225641 112630814 382909255 524513476 651501421 19906530 199680570 625112938 658741659 188199135 407237645 969912698 994238329 25663124 964386527 930960902 943504353 72929487 476151923 6568034 228017222 903904700 908672902 166976389 958807818 636872576 641945087 292333102 774043197 214191938 657700024 457632493 992302987 380189185 838723512 843519533 974764623 656647447 830382538 237702938 476966971 39530629 455217598 610888664 763178858 754548465 828883879 178583201 874511891 376377580 594846162 269827589 753417773 321686959 889680754 332351679 965052247 805708521 899020663 701099266 879082667 749450361 961153756 538770066 564765922 769802577 821129418 969777684 980910798 664356201 693745285 127999639 978481873 745781762 922940197 259446553 405872704 148289486 194904759 761783167 853488749 173164516 475503526 51659889 182888572 719791104 984035394 488438555 867628998 721638655 874774653 815103364 825298339 642978836 888875966 996947138 997914838 558986263 989162141 670267797 879908111 450921682 824973453 848054341 930436672 30638178 441512712 233756027 460272357 775819976 809175949 637147718 847226249 668253592 780585964 93313773 911486468 902062634 953850572 234998662 967871256 962638458 989768892 835508933 922984937 208526473 908262704 1481651 624735369 337533930 611746360 175732661 564818101 695574519 739413542 760842814 994864045 56416022 657719665 66870661 895977287 687330784 688577060 619413275 847497194 872589991 896308365 496712708 553154125 287440739 702499513 418856766 958255283 52579842 81253840 136622811 349342870 15684889 232216437 333523630 930680694 249366954 619036490 670331002 804434234 292638642 863523508 706358286 923463757 504664820 650732269 998107321 998451296 499665523 942235623 75201837 395955819 992327390 995861241 935420394 992195842 375859225 814679111 106033430 493592051 155499572 379476030 145352306 787036999 857606717 867264305 36215057 708267984 405619679 602831299 225197210 347646325 940213427 987338497 636514072 823801019 34769224 203479954 197553719 563097106 181760433 869033475 158166199 947825404 314291053 904286152 100984970 261397550 360432150 525985549 272661132 817640224 533923204 814161799 485982164 860992879 253554340 784978332 139294020 695969443 811398633 977109931 869870817 948652587 594338940 876788647 945464498 983409571 495913223 968731649 135973085 744460539 864971657 979036825 895640193 915228457 292702497 923183353 634136897 962527579 926250002 991213724 187369137 296850397 519445884 704426964 341330878 716322454 562909653 847409721 987219727 988583551 923207338 984137587 120468857 267763604 605731951 952219757 480233477 623902872 892286692 956193515 550819438 953849119 70272394 556695875 801535822 865162421 870725144 906173384 20042888 290255955 746469950 952826016 510326437 946316507 537906792 824858477 60193186 643954258 686746946 765712111 547043070 648494268 439105038 621977404 956103481 967531587 743947787 962159824 344121410 907882834 90744344 205550680 290939404 527396625 366918787 674102011 659524617 814253276 856992366 931569243 69119476 193291554 635281958 763075553 208895464 567548253 495224936 715843360 141741775 309889445 184994804 714471795 106942811 612505881 347089579 761883080 651115210 923769983 273899435 708762985 429359712 732185846 140713103 187567820 327290104 377278579 839726614 914924617 467645237 802778819 176560757 590607237 386562531 994737133 136333484 481473026 788027809 954750945 150643483 482338541 797708797 920997524 60708513 618102083 222086881 230799959 428587628 958080953 111138499 497713693 209074724 863454391 582200368 783405974 355958455 599030987 607825396 903613453 586026243 763651594 171275442 172389183 839637011 943036323 455224281 563823742 22922597 739498669 852217933 914262230 984220264 984302344 954881236 983671127 381491919 721798358 415581077 723533726 91344037 178616893 209142038 405964761 489280851 523391302 188276465 678607851 214046088 403241713 961433332 967947682 101523319 893885101 355497003 878527177 647630755 664689197 675818803 703641626 360365908 963593583 32056935 641189267 615551008 871957482 260026918 607683176 888449074 914754388 97227620 906960816 611225117 849043213 543395706 945110950 657570855 875296000 229312969 620776857 792670683 864824791 23456732 720608946 248781754 308630455 647759461 713047002 463838927 764596168 603780276 805039273 483002101 694473644 177430568 725109588 66668254 233516901 21697012 733487668 19868870 231498192 831559687 935352827 454703791 812244350 905451524 905701332 967323592 968259850 698175458 930528418 411088860 522705181 421989363 458493033 712804797 771040380 180324734 878262990 774765007 956909378 588531109 951120217 917686958 966008704 645603006 841956647 935392038 941183560 533705946 886359294 727081514 911680300 335660630 432477791 950726709 982425979 811950953 888225313 909487597 977159905 667337562 974208342 531761415 878603892 143790786 489542156 242670567 247284909 920713472 938755340 751986045 772575848 304783577 556610304 687721180 752176398 322870190 601951777 979293599 983356921 339902720 402588910 362255707 976105495 489397075 566049330 204898587 935740080 26186326 488617684 653950116 656494281 264703982 413439272 245939850 651644108 11710189 856337540 54553883 631677946 458902157 767819971 210992937 699651876 848269236 910660129 723289243 937320134 115679773 527917591 419740047 776755544 947590296 950454339 104900684 374815377 417369081 535008759 429078864 446469281 799614657 806702459 476727726 709128246 332910753 736701656 556693968 610555009 515498529 897259818 563202249 944802483 85458931 643156023 788061262 893782325 934780627 982231554 732126456 771049985 787530154 796172712 201417211 752712023 95892330 271767051 891165055 945323581 582968739 793049400 589826355 662275354 236947708 312607623 246875485 792605848 420759589 793749750 689724599 970874501 209731399 738589719 363103355 830704603 554119765 674096475 82369741 676640764 963873202 986212848 64481480 919352145 329198850 336198555 892049240 901576124 873840828 987809098 993977326 996400883 689384974 792306914 408561780 871444960 89202060 800979202 349794164 356013711 765531248 926670685 985779328 993041614 689296610 952447925 507831080 686704172 549843982 677120659 41388819 731347462 272031947 854429165 570334799 830882052 329138447 913892251 712135713 893331625 858468475 914454344 250266504 592288635 995481021 998245166 761377098 839071139 146239051 532116057 327753907 870199414 79114187 269259622 601228580 991227007 277461732 899835544 728638083 938846105 751795780 968320372 131783967 552483882 869469160 927802979 647575054 939719113 812406160 981649705 494796715 743058667 16292561 980798416 187201757 605500074 126576546 926872608 401926138 686633788 54539088 681269754 251195263 901246643 401793351 867628437 418114107 845800298 596911353 970520049 200161986 974007989 385342821 928208550 530642830 995351339 306349951 702586216 17783183 464422850 490422256 970941483 152462493 879272033 512121654 561724490 388619430 924229389 38098910 510772159 374447534 970519826 195877340 757765204 725008064 950314606 973236044 987300449 882165722 933913890 519400505 697733354 199699731 404674025 342829071 619166947 745172571 910742054 316702622 424855328 327939163 878119791 186338266 656403993 254133096 898778084 50525264 510468651 404599730 930416751 613069677 883705977 421428674 868935583 384289080 843016892 937733927 963417679 975269197 999128501 444349133 915617005 645446296 647349104 522295576 763253066 322824668 572232787 516876479 717467669 480752119 972144817 745947449 817472076 108175583 981987276 623824810 885575359 119037328 238887183 255547050 318638725 951456666 961940536 941931224 967746825 392824020 824713209 599676011 907678927 61035695 348902662 81446863 882268099 83464518 548618714 480771292 557002506 244475812 779431242 566770469 704328149 460498591 482327224 34120662 838690062 388977575 701789717 576232240 985917880 963040642 984416835 658151479 745500487 925667304 949343914 438656632 628616896 144805419 326432393 114665936 531064307 455483702 677911999 155015126 317018157 407725112 883674346 259771256 362162514 32467973 139078640 602491979 604038391 605746719 920398272 694217279 772556645 962170826 993160368 532095845 830939628 307022869 907295042 648353720 750830792 318256494 548193198 59237908 924952321 966697514 985165253 267578235 446011194 26113785 433743763 269337034 857098275 592805440 627901169 321606742 938648942 446070720 859499306 393811954 426416980 584958714 739285121 799663770 860668704 569308005 931799282 120709471 348825895 763903807 958299618 872588516 930331734 294567426 673331101 519852627 757504282 523811640 543729954 192265312 890493045 182048389 769875888 548416033 702975361 591661284 707805102 416995349 623706536 551186040 733460221 924000986 961526728 711992598 930293250 428216550 527632823 347477916 728389206 985269716 987300456 859560495 942948524 748970558 828561994 816302295 830148128 661708 864433558 601240064 969317025 828869203 897420254 817746214 876527381 667273217 743184314 790657465 828696463 15293150 770653145 404213810 972423570 67783836 356597108 931010122 987360035 296849485 347923215 965133002 997116114 912436992 921548592 57946401 663000481 503978322 881492709 498637159 558346764 32238622 437265626 858003339 970540447 321812907 925152547 427223704 486948277 84450941 406534810 912327543 992452644 549932268 871689221 568951611 646673816 911293197 938994200 767704239 898259974 998139789 998956777 251073904 503704553 863206297 973913561 749997221 948170443 727750630 982425643 794146517 865296932 900854579 998588404 420879647 426522911 801271560 891438508 906965681 984106917 140559423 746115193 958120247 986103661 359018700 785261387 828835041 828933489 210115840 821688231 925848347 957138874 515422437 951229732 259591933 423059446 438744697 817749750 137157207 730558397 731105565 755846150 767183011 815517633 693788521 915533479 580748134 959144329 384799337 850186675 824405231 878810786 365853759 768155836 345258476 786192249 338120252 441972224 628062995 722707634 402004883 444520257 185943708 448156380 178831191 611215293 611834522 625165542 337690700 635965295 255096561 904388947 66279188 118520774 70043831 934509556 91505873 795884857 93406345 848258808 470416670 499840771 328469805 393958217 544672387 774544517 746830739 786652466 343326774 438119458 812199538 961321433 744670874 811450486 501037219 775663131 783350744 910664639 143454215 724493995 26509803 544196667 704864864 882071697 598348984 818950959 42334143 142437100 108672496 408061774 726541476 890086324 507279783 964373330 546589562 897611984 677873949 813501855 646950817 672006205 899106098 911681949 7858553 943100577 610393169 783468102 824864004 930247248 372166031 568380409 467712664 583681916 27354351 816745617 389800555 721151990 506159268 673691129 881673310 920192488 450619312 735850518 991906403 998211659 971089726 975037981 240711938 546681837 643505678 897547508 959804899 973984416 918174362 984624974 360017186 393253742 508815654 835038206 593058823 938872954 850986690 977784706 634412773 682375889 270886378 767927189 739394043 786829945 651467763 961963372 675089575 932214158 387067469 838460425 36660157 700881339 56249024 211270169 363329706 394929437 675815127 686740105 741750498 954199400 833740803 951818431 494822793 713405887 957244081 980883399 197969976 951611091 965387777 996047611 951272826 984023450 159750605 731021808 34256076 274847780 200045804 906397034 843159771 929502624 537262294 851264391 722392707 954803523 558922510 963028321 926098484 998194281 474730233 899791356 180204742 878226389 30093428 779742824 287017992 927398369 574722941 859414653 785823421 806833409 155396756 563559828 460422683 675412478 192782900 679244900 638628523 948047828 376492167 863456939 474026403 647760919 802656199 812905316 384781972 397947218 411341819 768957340 232572145 795100685 666272907 694201310 800966460 810339105 834189575 835067166 303723910 324772686 561392520 897566507 241165343 887575879 323878451 564203718 993544719 995214441 794054512 897298351 482135910 590326437 495082239 604230180 877119155 899795287 581799828 920298427 958581892 999107168 964912675 987535509 879812071 912358327 362184866 444436059 907942282 931412112 844406712 913127555 147412158 465341134 615891245 656513399 340575196 811900226 653357831 666665064 74159444 825701844 674847063 987420589 578685675 872816640 227403121 620597950 662889601 703370143 60236413 698953516 317304022 614732215 654646422 921889565 267137990 976026090 80266930 976439855 426967242 625144944 760195236 841107928 415796115 580501268 713443595 803424121 566020910 730342705 422650832 516158384 365672136 502659534 58754334 693402107 813001371 978999037 492662413 649128574 224358226 268130295 192683282 280011373 382585931 677377114 942297524 967078253 588421144 908864218 566887315 657986913 91782493 604940360 777854434 919680550 126142688 708383583 26806015 848269565 511551549 880744131 87859944 880941064 220837760 549192033 993924260 994214146 358345901 657616577 547661608 775145607 735906045 765981209 461512319 855899344 268112592 758901012 776258850 940268306 655254027 682447145 824818323 892746747 876040950 882516370 157715975 554331446 5305716 205138059 556731150 707048922 75610126 133721357 762110601 855554572 164566522 707036542 707716926 713114479 588276860 724626539 491710007 999065223 839806095 872510851 651534740 677188507 532909521 758789610 507878896 960051635 227846427 519152601 403732295 802553948 848652142 920062983 234073946 622931396 308368867 926393833 280056094 759065656 317001630 425348807 710422909 862479511 314866081 760015617 380146301 732017965 894636361 927485075 42020740 615106685 903832460 931922696 748266726 958404476 265659784 677878968 142213164 884684890 3879786 472968713 956829326 959357151 365607084 923460431 650819792 662714170 796844077 879026460 700245712 853785042 286849937 529136922 533352934 882213255 296307186 454581221 569840735 587563352 409565725 625289954 179313626 586641381 832892927 943537556 749727780 903788417 180191749 697431355 353231044 521934774 594753831 938007824 920610939 954819433 90765772 584224274 467980105 709917617 576120361 911053465 25171027 511024835 354322581 881325726 962836549 993425463 459887541 655111110 832744065 895770627 725088445 817561244 423102952 593448094 364550415 555653543 30136038 550802262 449569360 955718053 357294990 983252447 269797493 744419835 414986850 424670670 180387742 732805259 909205306 911713917 236044945 410018563 876538627 956194762 8659894 671798993 350151352 921190635 262503310 555323626 521209237 926379687 958861661 995174665 39095242 402155862 385199786 604129050 393790823 498920409 956380368 961194481 246799768 500124084 84481686 565806392 655148714 948127579 122772068 562067221 959241024 967271373 893352407 968301057 113699129 660855972 13306883 114774762 1401693 40348983 835801850 904085150 514788050 779710213 911681316 988327621 696861148 703345431 575628533 838379898 247855801 250917361 133208975 512888724 395075803 617862601 387445870 619026842 793417810 973800131 56685645 132586235 917563811 922255588 601907957 934992249 295732903 575061681 539807596 985098322 132267861 443376189 963490653 978198262 598212046 892547161 455280677 632728322 632590617 836159884 423252727 928714946 90996226 543553091 370115063 822335829 438073028 852464540 959567718 989531775 809047620 976894022 961189988 992251110 290287390 819321212 540737235 601797665 899311849 989521081 672046652 801175800 181608615 682329422 365932184 418421459 389751318 768232868 286667 733624351 488853856 917729501 310338609 502260732 275836951 546650693 42408385 670310016 178447446 181831407 570442402 878371974 535871599 851414015 300295829 312873441 677922019 940503413 689897999 910184049 812656828 857517170 285349712 856065983 209602588 820326869 239982822 648696496 488038235 599600480 332015195 631740777 201859823 522039147 761813062 989070692 648948908 655417027 314787535 969142743 439000900 761004669 148100983 768766756 116162259 808294206 477763525 841638550 833429853 881238456 374675794 814630388 437302296 603889976 899702833 946720297 404372489 571100026 145916587 501230577 306773490 850214291 131560632 806527377 281877384 356240829 214451502 434814219 326134689 458245367 514501551 865390657 588674848 797048695 352835761 689966495 320714038 347397938 23081906 359143748 400190204 489321728 362343795 677591618 44818130 930255301 447128152 747477182 257513104 499663045 309591598 903359780 873660319 986730911 510051129 872368848 309623143 414615019 332662270 665090406 659459925 705707468 708034492 962715527 877164689 947136268 469307596 989367132 437126145 865660965 83263919 138487392 499932358 757114271 247784935 615036879 931503271 946013370 938614724 994029566 676930501 801665718 892881898 967806827 416293062 883085351 802323118 815276182 36726313 98910169 958268997 993437152 662168347 713188219 938079385 960069926 411283224 968832266 992067639 994030302 810605286 916742390 499114976 502574956 792125003 879204961 566296613 666935124 304943996 447472465 536294910 689818457 95963191 883159093 704508405 769831861 169085518 239165192 222967944 564994504 47045936 700825999 497544436 726334604 641892527 960526269 352437450 442341620 770411168 909201655 635810949 677206785 920934087 930027778 914470398 993943207 552846147 915728904 613142534 723821397 45152724 865421510 746693236 995823167 383165398 766806682 628132000 754967632 7004555 855639545 154411731 509337183 704037968 859765613 498377820 612197143 780751709 937361802 402800220 835080037 311427209 525787186 373067184 831184434 252520660 493515057 188697176 675655825 748487142 854262690 842736640 951714653 942350005 978189370 924044726 980012821 833461007 963959666 933627281 951675076 322300696 426371486 331300072 427476664 19123632 596386954 572182923 595414548 934573575 992851184 133135479 592292388 408088452 453001413 784498028 954333437 370961584 462194266 75446633 214248476 963813504 977767157 244743207 974206929 898467819 993015444 376102433 550189451 379692542 825048739 825183870 952814855 97146699 707569673 146118621 934934080 888258937 961641364 383178000 757668710 867675327 980007516 772001947 914020829 264931852 529808839 383267849 824085237 502135014 932708079 488412870 862742399 399633000 658276406 182192578 701142865 413678862 933174232 234472558 732599104 859678769 999215917 691613453 826314798 27458175 819809742 449431253 641596943 694583116 972053297 738209726 926710079 178772024 182669821 342526648 614849756 193529061 533564463 671688878 781487655 90908567 641372396 643682403 753163207 875093092 961498764 859658835 908955065 413615712 519801541 454934611 644460970 954009703 982423897 976919896 981041500 734476251 838935110 447653427 851946917 883620236 898222803 859292365 884083512 206320286 910257445 735394489 988821134 833339595 884561747 845285585 948968636 215816100 965227054 597191512 748249579 744846271 800331423 671841594 842880821 574594048 652739987 618119547 674317250 289162624 648401803 468643107 509400676 203283408 675128570 171950947 337342687 167669649 762317020 746620551 927221554 223124420 403805897 557775100 743628303 330341588 914837220 878545888 977428362 358671313 866326524 396223309 664774310 411473256 663943403 446414641 790571739 534592850 737454176 591780747 842944841 161870915 553819749 684263517 698799667 590030885 963740766 603947600 858153672 74155933 395862200 158208403 263720704 341739255 982473602 567292385 754676706 962835353 986673770 7303933 45720950 686750635 949895354 898957011 976194326 23748227 838280641 480893449 679894314 46090299 596857126 719874942 884977918 567240444 738866144 748721028 755523171 735415837 818467561 604335857 859130597 984686134 984879750 143417367 850340833 94496753 314474959 102993442 324124856 752529923 944913636 277629207 430516086 614281805 816933915 732130655 951935987 606948681 928600132 123444405 754309773 246700869 254638078 196648148 805918427 731644047 848724199 714218722 915613066 271255161 983343083 311494666 596231567 294924212 680839443 585232815 896760764 556277493 581957478 954517184 998442803 814546973 974169439 879423365 914198110 985177580 993423260 880237798 903969770 518407981 633584425 980020379 981197146 120014726 166931016 243144575 271281556 395907236 425160768 987441587 995681057 416965737 870037560 797330787 958454339 215045973 928666921 19627953 206945970 894403337 952622600 66656377 462927789 316504272 382554038 798267793 917934313 243123243 859397332 748226235 888019187 14285111 324986443 394266425 434294593 496996636 574219090 997928216 999017253 500535351 784648323 215701643 244955357 910157651 927245450 960094186 963934404 362869655 984421713 960060284 991448975 440219584 895904963 689217683 930512520 437773620 656394218 229110807 301398575 525150940 940568110 748872292 949909191 938144607 996143862 238315560 694118011 919355391 976030825 809552213 936388947 568582156 648115921 992052650 999365870 976823749 996774796 43637624 85382894 415508398 523484146 261921717 525380989 332484291 622722863 116483074 223040994 547446760 593927011 830370814 923908647 14508723 358069547 758011574 957441600 127571847 893915562 905711290 997330569 649088971 992922415 595551611 823582485 982726628 994051221 742914485 781770600 760020338 784228807 326079246 459062612 635232093 921229862 680482048 791235564 302775977 568890798 465802417 766683893 86181249 643264807 995692541 998843097 99041182 643953366 575032416 787364211 828107016 938607764 642443022 958239140 647420781 750313551 463905005 971104454 981539803 990259917 270172239 633255376 722512213 874976806 518438839 947124032 102255210 415449488 69735952 479360409 427422364 428578322 20362375 478270498 210783619 586643564 648750151 975528902 503131104 553999736 759179633 989474273 276682189 552776806 681095203 705336286 135311776 807075712 232930429 577612847 181102908 773599621 142131504 276216949 479243376 961360730 714832611 948008128 405188718 660291617 760751826 796175084 617806491 778045471 208685724 898905323 549442921 865504941 785642661 945428646 227546975 419436286 465006917 940469861 454961959 818791628 756255642 976471608 785629960 985981419 333980036 385318956 14565604 452387475 515234474 933601144 214592457 544114375 463305881 994415633 398948778 744506515 966568091 983945361 106556701 291474368 516696103 937863490 50950687 160864490 693897194 706780294 945614259 986893947 4320309 475400400 538753880 767232391 894159794 990899755 250369350 601386382 597499497 989152766 961539475 996867475 196675102 660297036 788203029 910843000 761337913 836059422 351649910 856233290 547133250 734836548 585752094 596838600 635676242 963694352 291773423 465815383 318928197 591492501 821240103 926696383 219699839 437452591 22530249 230577898 316839500 757009119 641211964 967082505 243042736 335827082 717449387 721475825 477117308 979031075 578422460 600283061 924077404 997223962 465291810 996138754 584345329 743400083 634014881 943150485 291738252 877240897 323261171 335029260 84170025 644917095 715500433 864071016 936362802 954040449 801501239 815869574 251448271 334799246 496534238 501913723 495157252 805212944 609575528 675860391 929056263 945213495 726823058 931711546 592204558 906226429 486133820 648822285 964864837 978818780 978593638 995533764 158541973 763465627 134677171 348656641 711720708 868012090 315468572 648217703 715132996 801456766 582501260 823183849 422874374 999012479 984651506 985963196 95768020 753856859 491118342 525117014 608354530 673940647 313111204 788441812 110336065 554356108 958606776 995645285 656122790 757282003 923449023 987682802 274394411 867645109 880598409 990455303 1522888 421403016 619080016 628413263 370913043 405846904 13586920 974616783 281559425 317969526 634456399 665350287 989619507 994267391 115480423 633283066 897861043 978638823 142745217 966641599 102180276 139100595 169940649 964917201 802686396 842242652 144236144 161171543 640563937 821058431 580277955 905262763 201966985 951488693 174203773 978094439 558196470 878944353 429058754 989228712 442890058 491032665 439745822 877556654 500186864 731101662 684139206 728723928 260671690 940188920 724037567 776273551 19782918 59297253 109578835 604212765 253513595 931505233 321279528 939507021 426649644 918680895 432742175 563936835 477895273 592453979 196565054 480876744 829783471 836489254 796974394 887989390 247724813 440657950 60308794 864382521 622098441 958243733 476445362 966387029 482386528 841332399 160964167 471281862 159887753 468722932 710559573 991936713 649353378 727785905 471804555 540760817 348251315 636257311 666611683 822354791 250577046 611543228 9258493 865844550 947790258 979773529 508237371 734010256 994461514 996695002 535948641 954601667 74016747 285158179 114727456 169693723 22212898 782455059 388215115 998404249 211681795 508597370 494966733 803147314 822734384 976222257 646305504 881910952 37898016 217383073 336792448 716727030 300166540 817585854 87058100 120949573 527865869 823220566 833951340 845523518 206927711 623579538 27695831 737193241 727795676 883498357 353885722 751344523 390838020 910764453 779893122 819161837 180925109 642624079 165522634 839805773 368187609 597391636 540757693 928533806 985289957 994595952 764792875 838741883 449564895 612473064 906080655 914528615 68345816 244217404 246525405 435632669 588258575 708164821 945423252 950366562 53967728 444292224 453361675 985550348 833294067 902439995 617741373 848201029 112218769 732015968 679477448 737262050 672558182 774443405 580691355 738969974 342819566 625701995 668861684 765853200 369322892 788827785 959729377 964900071 991327293 998943190 226981617 702836067 905526137 974694169 605882067 968578539 881377705 961038787 96964822 419667949 721753642 773596226 893465604 952892540 289065782 926163935 872754756 918657332 987201044 990354535 521319230 950123019 244603829 407564299 376401733 582080127 228184079 599593137 797016624 847737575 274828518 401607062 592775360 662934631 372683083 688276912 138827196 321664472 659133096 685400545 43051559 523103788 827654806 911671970 816465606 930105984 282773585 816188067 957090926 969540757 666157734 810283291 708221410 754970699 341536334 744898318 963072546 976308458 635231747 675562740 764920788 800908129 258201332 673699462 112096507 591036373 598378596 875886601 969268221 983533020 131049451 957644251 666984881 817962120 372115457 774414679 947800137 950378854 603975519 695009395 503640453 876481862 510919315 902111302 91326499 185538999 375376357 412246013 242193167 803751507 139077854 888343954 732607240 917749291 684806269 795517410 299522177 411498565 152612938 791878533 426182912 571519897 272172534 979438798 693948014 835760079 269033718 989886294 580025860 906881376 668444724 785403612 744708411 828915597 150090413 447396030 170939607 506992017 17925956 145962365 771392882 825508596 570963548 837820483 251459963 748894240 439683539 728266400 429279924 647936861 69829556 879334431 930214087 963120506 474325509 533041248 870429555 905356899 821459362 995517451 793826586 951894718 944430133 979619595 949109671 969019995 372597490 816914649 191647367 450726067 17902929 592040861 920966297 964114975 265870868 659260656 466817632 467536226 728796351 734199161 637046865 718793957 285070200 828192231 549980480 756173719 426828212 559270819 955106875 993926378 82146930 206537913 879349487 889359057 934721297 967345619 796236810 894114394 366196333 526619145 174901510 421525361 354951669 593679409 452324620 510231805 176142817 664969863 435563660 753560119 821697468 869640059 186272685 873773922 219372070 231189470 76170687 965519906 243936069 374678996 830991287 970058526 512018249 775119167 863842500 985409992 495676445 662352050 676887234 936204867 727254373 963301621 798548451 965621478 985722567 995663494 378068837 393765199 407647365 459537112 136951910 676199994 102609638 322162715 922620971 958066929 899820591 917543097 860933206 939555600 553654523 891448496 276825033 948764244 440092878 652116722 557393362 808171193 533755709 829514451 538723328 558082107 697717293 726856411 824167643 890277851 617424013 922729647 449569313 994417831 317141041 471650276 369216123 371858691 538681393 609587596 247544773 447096148 247705164 774718595 598869230 965307038 167158330 599631620 859891820 902869903 666196974 746578171 484056342 789941132 49418851 403119345 734062639 958412099 300971348 376451501 404506095 594318187 872286424 907401576 598401322 671996620 671658647 771912967 652144902 974538631 911460472 935951309 768345308 864452027 398184354 551006161 868133251 940377170 664094539 796715469 422905181 661697947 681210453 690474992 380137469 596542840 152309215 364347219 899746591 984987550 69485028 491787335 916104373 937855128 355592209 606934429 483780783 510131412 563691848 772436472 124585966 488976470 392214683 992462494 550091301 925170058 261953120 875569788 871750686 894799121 593147341 695247127 471640630 533251420 256789960 549259432 403272231 629182936 633196106 679128636 343054819 719298840 114729402 304945698 292969208 553081014 672984066 840610738 384051811 515016591 314232848 767988738 249887420 938067534 331694324 497587927 921011710 954869045 924061883 925970727 961580407 998874157 737242104 867346780 490528597 499495645 162007904 253594444 233790336 813440576 688975941 696375412 5991679 585244975 352093769 973688562 757383862 974078552 635526029 846648218 72228016 641022887 515861444 824934163 107090091 768126290 430344775 677487098 74451332 734747762 930932634 983854391 808125615 847305333 343012164 997078800 218461936 464483821 864562340 911137103 397827882 953668189 234446611 835367660 575353560 906143478 146703161 807109917 277663336 501244647 560373682 990389447 676551495 774395727 187192769 755990651 505070922 584885005 601593643 868923837 149980207 805356550 185733476 707113006 790602475 936515182 267549836 609255888 224708178 278326848 692993785 706617832 782258306 902321271 228523936 934275648 758066337 823698175 164718809 636160861 351516017 850798622 420790352 740534056 567988524 607055955 937896887 980481012 334815703 989450826 959733550 988999716 696942621 968792006 341240542 821985824 240844850 723133765 196135082 696513740 568586922 732851824 822848226 907011215 468040395 665470440 414082009 657994149 622805949 629560319 724491997 932505036 413589269 641511007 922632515 966069764 762980220 833785747 134376601 457339120 477487018 559094921 435323658 499866564 712788765 945031953 960013948 966325913 916598127 981699584 618689118 884218578 153372840 174281092 107790338 921602889 388212913 748976269 452594264 879512059 786847859 867397315 512986661 722948087 855445432 937937188 40859200 642453971 74310638 552454556 894080971 936216908 152354283 931708951 325522819 871622122 401682386 425735735 836525558 930111326 882643339 950164317 543439576 563680688 122470015 664644169 673918042 967363577 591035890 698021795 334522638 373597743 47336528 388741996 617504028 669512252 611241984 860742524 425701610 522960459 151338300 883074728 603140305 759017253 416918291 473854036 436608600 526876325 337700684 357149833 455018918 458125700 24637811 458455710 415981431 909425001 441267462 540259724 680163507 692478131 245226192 944527720 183693308 522539859 569482525 834113242 590679395 781645283 390844767 809461427 129309736 755321671 533027595 922311932 443777207 569929086 38082317 574693115 324246239 444196302 920969155 957429499 732729479 851530038 900031696 933966771 320152011 985364068 711435949 771042882 78096066 605639954 761810069 843288643 966155712 968148852 422702928 805822740 728776593 972584124 869953385 941714559 981904186 994850656 326739637 749310579 244489977 286621952 436514340 811762208 728377118 852106526 268538392 394258911 301753237 324099614 451160635 602345870 57328244 220596675 112532763 880250283 690358854 910277894 637920209 712350022 783480238 869762296 153474837 269987593 612218638 869447762 843915412 924441940 515168111 596847757 157643365 859065414 588027752 740463595 318780808 370340096 277630802 807269904 65234451 897841299 440180667 807849587 778545102 803055352 582869052 621485333 106079299 157535469 39531855 460232626 919284105 929018503 630195836 681968608 279101312 639340769 934041067 974615203 726112643 895957167 1757370 195307619 156144241 443973620 18525993 398204067 929755835 951117730 206762739 352808397 532105921 563400013 43781857 585387425 752496544 826434342 72105397 271933836 718643438 930411311 106555748 219960607 851475402 860373677 860619899 889100179 17466700 540511069 307505338 806259601 795417190 804373365 291729900 393294966 920230211 929191244 675776121 695536683 430671575 894603211 638857677 965484140 778530727 797978185 606992679 640636888 55226257 861328661 838097258 952106750 589364965 890237505 412230279 481808196 526193369 610675210 681686870 837500718 661462849 774886717 719984533 928084794 194967791 725423117 752256323 984823145 903260044 992135136 768644093 806157508 8256992 524621590 557287354 974216817 711048825 891535415 557309824 584961884 488206322 603307792 332788099 512248774 287323590 345241010 840957950 979101292 965057071 976971984 333465959 386517073 655795006 701185090 851969641 868567684 339394810 395399139 135240362 533449224 171469454 923349308 932154426 967716152 213076497 604069604 60268442 788908257 669605429 949168222 540660185 995548210 97185578 372256094 513759869 847932872 558163314 638368306 163724718 677595688 500939403 983070407 475367807 659074161 424468159 922536620 803133951 946913209 252218225 393615282 2441562 179039025 188308482 896245418 951414958 986579130 923491483 926175011 108937666 877071539 902939801 950171291 470088368 905060637 59055132 353883025 572982589 584175079 995193126 996737160 196447025 329240334 891787050 995204275 397355264 818737317 668690537 685922474 540845854 673342130 835463568 993592530 517014045 804993688 150086174 316329628 545337201 718840986 250546738 580130166 321327471 903905638 170970276 399479413 578752096 912325893 356431681 543799854 429262086 998569984 260807205 647770347 242286332 354298076 850674176 969867887 372989433 743089746 910854240 971952738 718358295 734997138 536847506 998805548 122997647 844512012 48142420 385872597 672735699 902407981 127652233 492347127 172413887 334313970 134939280 373448542 459598060 821900004 328663921 576548498 375090877 935033343 235359882 241260652 586788146 962766264 304565957 669634955 284004407 453699398 105709598 980951438 487631732 724306885 951279895 997858217 736690615 959096691 146525087 550458154 48254742 366302746 801534781 806543658 823362435 845035957 427196181 633480042 55070864 607589895 869654679 997432417 606055701 982890876 133338104 632031636 682742200 703410113 533282314 580485549 99194145 731965805 260927945 954960444 560552616 768630804 524241438 984612347 592352818 792140059 687937793 819232031 192692630 339287056 526610520 769959805 17493321 63959482 688957629 782357612 1285159 896573763 246566027 871985877 764779947 835358803 731583939 837608454 771804364 970432890 330577747 925590724 717497864 909845273 562023449 968126953 959813510 996154936 383870122 892790862 5167089 300490055 760369814 913196300 399162020 689040070 873584039 928756267 301416727 623883837 273883553 390885655 854040911 937669454 735533712 860485639 923405588 944145567 900641004 916403776 853598488 931520873 597795295 938234893 866376099 871033011 200367039 665732243 492967684 558980168 215188858 312600678 535400765 665981487 508883427 677016187 593375089 922017784 808554687 935043958 20676558 756942479 455490137 606036886 731768835 961157542 422192826 546476992 913765830 918544834 250714343 940472254 636648979 947495077 57683160 946760432 631779535 918607940 572802171 759504451 504364020 568896695 926554315 971909101 752250121 831131032 646571362 763880423 608133640 747185553 288285001 839747446 147200733 939889336 532633562 937253124 223970436 861107677 181326581 595874588 502758904 735187349 343269307 487214165 804163048 918617490 631967288 913953151 704817487 852056155 639152149 826080208 907673271 913425073 642123180 645170510 444148876 703803306 548099280 830985218 79563812 687327322 100123695 189268080 917586426 918508886 672527879 794207663 373507939 821514981 276971087 300506843 120803796 525143501 582851917 622433813 21102869 648490573 433844428 469273626 475526289 513287749 987214606 993020386 689476335 979435774 224561117 465418489 189150381 356687073 735963878 812544060 993007695 997844137 851767423 960583091 965952316 971470484 676531058 959223173 569791435 810950126 184523439 821980413 433317666 627976014 825314034 876243116 508368233 682575325 727411616 917923959 781803600 912558548 718193848 739344191 237625463 314339893 855020134 897931433 288656161 341985044 190430855 271516150 723709647 934681501 745381332 886092708 445942538 691306997 838465192 944491447 887112911 934099199 295297348 696184877 18630315 807008933 717287984 838052988 307578542 386442760 652109348 747641232 623652803 819118648 834567768 838310341 629744441 635606405 134283832 812738097 82627274 736116236 428970680 540481681 964207501 982438198 791611030 810851295 361474281 734212397 695854741 730916855 744452881 819090906 724565180 950627556 58819384 716175262 491184794 826001311 87428190 568316079 564548274 672194206 364830386 801236406 758552100 776595038 435888086 703454037 512874397 844014082 721896917 867710032 859504370 902923539 67694363 280727733 455666244 727931531 164220962 367760101 830384144 948925206 552078794 872144442 147562166 388310010 822862055 878800253 986471435 991951829 146842927 886808559 801254734 852566600 809762253 859105802 377405327 918762725 730064597 980946046 315628478 409036178 408012775 678727535 461885976 965909729 397840208 563084598 910913915 981659176 49077974 86488839 731106702 869322878 754511360 927493339 717534671 938146717 727906541 797300605 811965163 896331936 689881167 693770090 476493306 737529038 713374409 748979242 222551644 399731691 556379266 935938952 319024867 998519054 630319078 924873839 806971095 936343830 710179211 825590412 868223901 903823366 143110133 479350996 999197675 999216299 810080175 823215168 905322313 917116192 57860949 378770821 790374502 968806324 287804016 692684936 135291689 618727564 110899629 141110717 163936506 217171390 81714174 283875222 826918032 975057357 652576890 858816332 855867249 887972736 157567575 723187004 317840642 996744119 172929197 542366297 431806165 815117508 565841958 706793750 221057091 263528876 254065544 340738539 77247754 330431062 215972977 384360130 297924889 997864866 843359764 965238486 253717769 361202622 561501981 716875467 272291155 855928892 921498981 998966017 551213983 910766506 574631989 763381610 583907007 892021103 471271720 541861832 496235139 872023556 614658038 835717925 961336617 990382043 289825574 453875903 319538234 602837771 269920853 325164367 325378729 968791883 94689711 100719036 153738657 760665354 753310631 814877014 829044831 982626960 801382640 995281920 258373306 798899092 910609432 969634585 781933958 920977279 195835746 218934983 708040047 780219661 391236499 791835944 191975512 684201786 559170345 960428832 188854495 634107315 142374151 178820958 929704464 972053667 12081026 872107098 991911403 996953464 445921827 550641364 289024727 928081122 42602806 232965194 797157150 896610122 89989260 339268253 57959745 946504005 574393524 626812299 348957261 693203650 515190943 742901501 4447218 422059394 195965750 366589621 493873030 716167385 560222253 998454718 646974537 934562914 973027180 973430223 209255315 227002811 578530010 720126833 525696650 975002719 530837854 970901601 644019806 881424065 225741822 847120154 662099528 706887403 166523260 386087266 783903796 978970450 812756609 988448548 809233556 902085755 573244415 633464650 272290442 501160459 273950253 967592881 813601837 855100389 871745094 979366965 834436412 902562217 155332541 172188045 635754283 672290348 529169829 541932214 543921022 833010044 719587020 915717811 704905975 767561415 451102965 877512142 606887996 700948138 554721708 584470586 445468647 534383415 503146437 601655400 495771628 526281263 912750071 924610353 157230895 389002037 701270719 800175797 662512363 794769761 533523006 808456826 941025777 980056292 746405546 876988155 502166082 904279609 744343602 840421160 577054202 894051233 711093110 949452075 683598861 977510924 514925037 659382403 841140451 990327876 606266647 647094892 592346879 914844179 619583365 682463227 264239764 944882039 691102163 740637615 85687950 754501654 957636485 997863672 224240864 911275486 569600817 771248379 495449266 859140880 856603714 966431734 300380718 808573546 893579866 989735322 826151918 998937637 333711710 793750320 891186945 925182102 750781028 972177663 854753386 912031940 235491696 364154762 880511373 960061317 813918065 869302480 360035046 943074872 320188276 987000666 495940974 666218714 801378688 927660535 862034127 902684191 694506170 753720278 571593207 711198501 875213804 986434638 409097285 950847777 811612357 952475010 402370793 795932733 599501315 616522505 108642728 649560156 459771409 567788041 627436217 924757669 563525034 592460182 450756313 620650450 292431040 658177937 8658034 690633429 668489425 770736911 927974969 936328161 690296867 846352422 183019554 702964756 280130874 304437899 880289595 882335761 862425301 868717539 930723946 987587241 344092913 461619989 149240631 532416369 631460778 748365242 157732567 948984358 401595162 435437352 701086909 854192484 851803744 895821318 906946574 976787852 745706029 947198390 253243920 454340307 414076869 531897885 368243330 585975213 25436844 925814069 476231921 992448925 639824756 713774562 218767850 775440265 303323195 494760544 4762964 344875904 731028788 961821095 906837344 983453337 455998522 704215465 408310655 867549320 696333429 701148890 782936209 795252792 60279395 935993965 250186330 497122742 731890040 837411858 539023777 649244930 615450139 779540686 505264322 907596988 508455526 859483300 404706900 781382560 183336640 950883840 559323860 734119691 255051980 698515302 956233430 958849159 957669456 987877483 67884373 393908510 588184533 617703967 358802929 450168803 340406953 799301088 569497527 859037227 174356510 624742067 300670728 972155884 727844171 907879754 683319487 793921770 704230134 890279445 652111828 893710260 788372669 882970302 940729267 944708295 564345030 680629142 36649284 539160040 839497155 914948225 18589936 714309848 339577739 747890197 640307268 853239439 522116924 975522657 648649920 991874977 667301201 875576668 681126186 900896956 433388518 639409459 623141621 750561279 897606041 990691838 966016403 994269234 483465393 491498741 685336645 893301699 413479057 435027994 885662941 895699489 154749507 355295078 993146044 998120650 678854088 876083683 37937463 582078354 410667231 631094628 278060695 946577460 667398961 893626461 692441350 861617586 697795407 750683318 248539414 537495335 91582727 262544627 68752247 709868105 415879776 716361376 17512939 457837919 354553199 399027130 788548864 946105427 889702733 930478120 769465850 854354052 511940624 730448755 94339902 807570505 672059642 764909640 682342577 784769121 619079547 982303285 422658193 793388589 545119814 947222910 508274793 862606213 704274574 875535382 784487578 951961020 30348339 789082352 537451932 774388188 876428235 944673478 970559746 993921860 502979944 679790309 249292603 902816534 456132473 744649147 504623422 820635034 305699689 620008490 252549068 569204528 527232081 940362945 644859167 942973148 879991549 962263118 70949623 217785675 734163003 927047472 481690492 580733509 587560838 787590962 44725447 697414470 21277148 642039806 595842999 751889985 863571393 950162376 196587156 294165487 677765570 767238890 772528864 795279702 214399290 790152671 742043620 812379170 925793870 929190504 953006289 964068373 624977841 844191989 462956638 932769388 132080311 267476361 494258390 866790222 844113032 898903792 368537623 472354472 920709858 982555810 341663365 478069024 867080457 993339680 25089202 26420281 557413063 877440625 291399114 767796915 411395849 850707204 631649011 722455902 197957785 737861274 989524089 996238486 657060759 704389855 853477451 975409346 503454172 994145034 821058640 821965275 349138133 931614605 437199922 553888215 559489389 952883405 146246813 473923582 296160969 570637999 976881105 998574257 542040693 969071067 454765667 897397243 146099300 245600973 906621747 944594665 523384362 948142523 883469714 975941976 539687600 832874290 254094026 298060135 201531832 249958789 419552065 612037703 653078152 734233263 652184205 996346909 353759005 367057194 264486548 917950549 507996246 752107505 259234945 672668715 298543880 410861962 493140323 835567893 641208844 950231437 328228855 710370093 426168174 687610602 849691950 951385832 222331212 690584113 460997021 868580821 760687231 780309038 350791598 381568610 869176275 963405823 56446590 827470341 162213943 424962158 596542252 830952667 131539784 954968561 81713577 256966137 956466096 971128671 745996211 751359537 673289489 894657813 755883398 817159714 33901843 113670180 683325652 839242327 143265560 526039350 843384481 924853146 128507935 159340100 775625801 871089602 537764338 885098758 839376942 845901893 444191984 872236713 850802432 970223071 626509126 662323723 318050496 983152629 87828517 742171870 30054352 993868744 340422756 837489499 430742025 830780770 702008374 716116940 651843172 973830677 437575285 788377188 149867003 398351936 586360896 969022538 248034963 348955587 514234067 602979183 33849585 859254792 473800416 593970560 818923044 884083306 432844256 925085642 540583738 660825816 201007910 937564118 508046154 975743102 948689002 951482738 740225685 760461890 885400581 900841346 568543114 864078700 783227811 792512041 134016505 433564343 816780871 918329412 600127794 800616491 829405043 865991436 449108362 582989319 717753881 727329267 632504239 783531156 216781861 404240044 947751186 992177543 257438353 956203855 554447059 770910653 620186823 697044758 461037352 908153340 966609618 995507241 302741502 367829492 954724284 986811682 41970496 306637295 490820261 881943456 383288206 480543542 162729954 375675407 632279534 819331925 705797249 987167599 923987416 996104506 657582282 784537395 609203693 748133080 627896361 953286319 448131704 529926191 571321951 955260139 475506096 627363295 609687933 643891072 744163359 841029486 444795008 545237694 38023776 365113167 675198057 742400654 238945165 445045723 837906990 871309198 341697796 430945584 677291358 980853640 153810269 233367817 218291604 714056072 499010561 847851520 769934423 824030766 83536128 262589150 664018895 938168546 67811092 957855024 722180495 952669641 853298934 908488302 882565177 936350053 244361374 831951641 834306437 937131682 386257473 563873624 972386400 993144881 507556289 978603450 438868309 673483989 663938840 985399600 547036588 883430309 782812613 835605324 84564490 465003880 870593556 942629526 432971795 434393854 936113824 986861063 289826647 806959760 786197433 822865522 671961622 956609962 469059820 611798641 833675599 895873747 671475062 716053229 822134432 977649442 692245421 946309312 32705039 732618609 298021664 492612776 936562841 962901029 743883038 773284813 168938851 635515970 928107537 959958111 843595947 934347496 142657556 358610621 327512875 773278449 791792780 966881843 972875090 983137054 53655843 882015356 239016637 906365257 359793216 647360711 680054043 904667527 745657343 818532682 514319777 521489442 940551607 960759520 339594870 409632410 989320627 995380901 620286863 751986250 761489456 839969091 761216228 905717322 945217036 992043282 601710093 757736418 169380569 704278283 729146849 868500443 730489263 937136423 288272293 481883167 377389402 447054278 862635191 998001216 785020964 960162953 431751232 760691916 495564968 527582626 145170215 992688307 667698711 784815738 199564906 568864291 82239153 143411720 923696656 970724956 682883477 724383078 6379953 496249225 851725694 903523471 135680582 857215275 210764670 319907970 549566268 785872532 910766462 914442565 149929138 290251961 690051801 840405793 491986451 597394146 33323621 299493982 635111799 838403097 634810603 708166403 175018374 575307701 120956162 455925112 72718148 886735595 147443867 254742797 805123248 877515326 96816422 563701273 589541448 884764066 186670299 618172742 374869500 717973644 38683969 639406301 38236251 555707900 315680303 604199697 298650787 636724722 802372762 965491557 3939426 604912644 605121184 979252117 589948727 891869093 9130092 880384839 519941339 614066023 73113024 820490476 827964695 888423287 673772137 853830580 237711647 358573844 864859364 912494712 27327421 95114062 296752188 884666990 506735041 818520112 483156958 528880146 656704906 870653359 433773537 487734324 327425108 858108802 36140872 915287447 924083875 953498952 338502723 641456965 43604991 237535477 234960659 477795159 678021993 947857912 381540116 570447802 443507424 865650818 275529487 416990524 430574050 629677100 809641532 896091842 119160362 203657138 977624172 987674913 419305464 784698893 735353433 934803470 650278409 708121851 267360115 674784280 372425447 733107120 10862362 623104610 461091222 641461746 959328773 970623299 179138759 870240181 392880462 799569098 526498195 968058174 171663973 858319841 93027895 324309013 660656791 930667286 131792809 318523417 205860880 646771821 620322156 856535716 550554726 605171972 218282484 853649390 653125130 925581117 886374428 905805442 168500529 978370252 662684452 723056237 468568364 588075454 68364851 252581397 739601624 863670855 503694445 955328146 746941171 921758507 375301692 540428613 76099478 965238909 412141142 474384811 633555159 866155210 30008194 775824432 343619683 944282972 710181599 812395624 22912059 962737744 302423556 424075397 98352697 161435244 213032832 891573207 909307425 993328936 748370655 876054618 433287844 881503776 239891365 967190450 809137693 832924935 870558627 912507722 278993668 601311422 38554895 582945927 829690200 905808489 27085440 854356516 796404435 864742937 192895900 629032045 153104908 397952951 352310630 608889154 203103135 915201524 297379971 837269173 386670637 427892678 862290297 933747113 451423951 623532570 58637565 369440192 569595641 971163767 444441854 927520294 521222005 740725403 219763813 428998312 671770894 769987364 144422162 267785641 84021250 307268260 370387627 531346476 1344425 388403795 508215609 680114057 365702793 559949610 637881996 932250784 312459435 735340952 709816546 719316886 295906500 983316075 944419143 975053137 669177601 985600316 54128836 466939499 835984221 903384289 274601792 320259630 423971770 609230147 714813000 910211197 456191890 595778444 695492638 803698276 211950109 575318436 464536848 809520561 44557606 760212935 554946819 705154210 716939407 851805210 111525617 784869182 177090966 465752041 453344658 989383351 685633199 811800206 358365033 560066518 517984340 711056717 64487482 534156453 31847772 743572070 530001467 997609872 442321362 551605305 765393457 963810773 544584966 716726520 484372167 493477280 864294067 902659177 336764206 870051577 581462571 986997046 239946729 612635227 843925446 858267517 397341816 498651165 358049059 921651716 885586822 929261485 501427377 966042223 153326438 627087132 331711108 771367422 585839714 894571038 721115829 802034662 544317785 802468489 390423967 646882188 627110898 754052964 895325548 944315569 527500982 669810616 367174198 798527277 634719614 738868644 19106425 491957535 912801408 978427193 325847708 582578287 838523859 860733247 565489833 837388864 721113483 868584713 551634747 865580431 851378882 935454764 211618075 969967486 902418972 910363313 121752498 938615691 242861930 898199414 506411307 905603984 326429314 666069662 242605995 307676518 485018611 601354541 794261259 984470730 541558104 805154883 102398 37240827 317910056 365825502 840220151 957490831 634246405 932569629 471160264 970160472 606456702 696512742 971296377 973802133 21679740 278924432 210690008 536418888 435609699 753242109 751432181 978325540 545957234 723156164 900851938 958289355 385938923 807340961 729335594 817847605 965667041 973993013 472927629 803837070 800530884 996166311 996103456 999189922 128994138 901182043 48169689 368747655 978319640 986688703 917858884 991451896 105815557 550470463 211190463 951492366 922045490 937492354 752563378 841337927 199864953 566184464 591029172 813105436 812105363 830752630 727778214 749754713 791591247 906725111 33072462 883653839 836557080 964625928 6844979 148948377 7918201 136790450 971975046 979819392 637063200 984365369 186413099 574824058 926805121 936416355 655855481 772468481 34560471 647797373 994092941 998549758 508344693 677817323 994523894 997947558 472684540 918159368 198086874 660581756 58130601 247712383 936716074 953452249 577730118 711544468 234130177 415818138 614670147 811974811 818867894 937249768 675933182 854531031 164267185 543740233 284128402 969429474 842407615 913940030 226851911 362887002 410391634 554722051 462849485 489632373 553082224 750009372 154154963 696666336 849819272 973152527 546126523 710717777 723923849 814856476 306559069 716111953 872262292 889622234 56628727 319142856 892795727 919660326 108311221 153873820 792793682 968019186 581943068 963723284 874436128 994971526 824118950 917492380 755240508 855011853 454779084 851583679 144870554 728052563 594392303 691723607 637905635 768340466 539172542 887799277 645543796 879385194 938475836 971161902 380585840 680293201 697126383 860767248 964397322 983281466 886909677 941984299 368643981 471754977 447213107 576925155 839329139 901789295 997693009 997751364 624020179 932667520 632486532 993937420 34573365 253950429 83235361 498430318 825985562 921641277 905255594 924538901 427496439 735864970 222759219 515504600 981337935 983237743 958311589 980370833 65031953 339862681 743751413 892097803 22887043 678689451 345416218 721414337 316476912 930351327 975812085 994581554 15559166 637108426 629734189 737705827 390651402 607561589 516059316 761185746 281120107 611596656 36470342 791017153 279940980 620463337 979626785 995162186 444592006 966885892 499057854 912286080 156377123 260158108 130870264 236831019 441904222 958426550 258514798 421906150 255112927 487030736 953800145 971796405 872478870 976820008 996541670 996814265 916645582 959726143 984690206 984909559 449215285 540516895 975669919 977256146 466031745 798574943 503573130 562911903 412495884 848731086 980545450 997135303 876567174 952817880 652484082 866073477 205020337 281500193 877635739 882893794 474844842 994460516 742816763 851185312 804598232 964759333 931201717 983374854 617404999 641672071 781705605 905390055 642353749 762985363 621929545 796752792 992487931 993209959 988895801 993382532 153614604 312119499 377052947 711068960 130118517 657111544 986077163 993443292 95225833 652771008 285388011 986898351 843450356 920925483 342944868 441012304 218467100 263486834 589161075 786759984 913587479 971759658 429816076 631845603 118102566 179135025 417533449 999037166 760779626 862362506 451093413 458577851 90667167 600656724 343858238 951486474 850708084 927921447 352045127 927365427 833979394 981613824 319966311 898202330 988442253 992729676 50335311 422535646 98639080 543849894 944741040 958138266 389055401 525136947 433116547 731824967 842832169 970310601 881650804 893407317 553350652 585498822 120043468 955942610 82233612 669127820 219311961 795965619 855493851 976423977 732787414 776273546 560919952 673524559 173291061 899001233 971058327 995376813 269955452 402953349 803274546 996297530 584413144 992071290 657583537 838436235 216389197 672873242 14368335 341936234 967945033 979335772 978497214 981614347 700136165 878844948 854878742 892139795 791394028 888068620 318872940 888957525 416200659 816463051 157982957 294607444 388479440 473279603 419617851 537467967 26506900 405395499 94826759 122715508 712120781 860027753 455961035 619289524 991897418 999091737 580896325 792710051 236740315 781694984 279187532 737266595 148270755 195385198 995837425 997655947 265296287 889214507 553620768 938007565 235360704 872456051 100363016 780229128 661531346 927331041 29540334 821836864 175195561 774184907 127218848 620029486 743741657 977310494 771383464 827317282 679733658 720069008 891081065 894850289 592430541 739137486 443519055 927086716 411046578 679147051 912357859 921451859 208062626 754995765 918510189 958083028 916593383 937106220 982336193 991798802 858301405 985187764 823417351 898822495 293508210 544291186 786180805 861726441 781589746 833917059 185009473 497721647 548932778 756999845 398984004 411853746 863489432 900359997 526886073 578443407 289855954 472522052 613632082 731971888 470740811 756245598 34252805 757797907 95133925 458202290 175652000 368256401 870683128 938097286 651184171 994033975 635728906 962409249 82328573 473714533 795366000 901810506 92028776 466894789 200395633 388305607 859538347 906839072 335761675 355329976 918091009 919773757 198766743 647176994 360930879 716697980 49022483 527656570 490875042 816734661 997383815 997987083 34607388 628262317 104357939 261558543 273997507 482995503 304329342 914705189 777541892 930724100 699136748 953446165 887474845 920308664 13093296 371047098 202525636 891850685 931378211 942301404 3547193 879181214 546768746 974651577 203246341 703886760 690137408 901106308 820796561 950039700 293148675 757126514 324275193 729863284 413777117 600202001 135198647 921667780 670579799 946838294 387196920 870002938 444635805 825157319 588157776 852444423 655615956 706602111 566514956 944332334 418893836 795562323 935775408 944784939 455636015 713576961 392146701 988613108 610012269 854170970 743184950 802491597 839689839 896729621 511910328 873446216 851640090 957315749 398684579 658365881 116967779 780820982 740440876 741437778 260346432 600363081 48616454 659334533 894197731 942058516 83645385 476764155 655445256 689197583 945639397 967685829 905854397 979573542 133278274 315349496 42505011 882446813 191687495 259861161 256075549 931038282 880022255 921553052 848380386 890753195 326309188 481460158 854543785 908298171 218694010 837121411 734376406 814571013 506939507 945054653 417549501 920282418 500704995 600137436 613985069 716387134 11039528 202297725 465929529 566255409 714109769 872295533 376869098 778495326 40911772 553575413 758910772 763817792 3923315 46270372 105501934 972959552 55356681 599239133 586365970 869890311 48171511 144541577 982167047 985792060 728693164 898807990 460553 743497415 115663863 742386567 955786122 957806142 580875669 589163032 581408647 661777704 106401462 894365111 844642605 882889121 822364807 885754478 98152221 816005874 305032654 479780356 802451351 876491698 100548795 135864780 634943916 976967132 953404759 991456650 840400372 843182172 717243269 806272568 481804231 968354595 148931782 674746824 576684710 933943067 220718562 793174831 240438213 625562933 960221721 979596443 731302362 922139360 927633054 930118465 709089604 792037013 191932195 656147732 550603118 727039296 12742450 234534324 86904833 145482894 430420564 480574581 936488541 980121196 336440627 749634394 674658048 896603922 572599764 748199975 967267387 976922955 334312334 553089147 107856268 646835792 221935863 312464687 339836354 816461437 377410577 496485874 278260042 911991033 656928609 905244527 279371827 596027210 205567074 824833322 642615777 704378042 442961249 622782847 271499408 872747336 329364025 664025986 767893121 976578673 784429919 998047463 507198640 899256158 858759203 922929313 587635698 823752257 281941558 871499101 11190466 779905551 478087114 846977990 379046229 814196369 488192676 880676598 683578914 868557021 535701994 847223218 753699096 785976214 579695823 675732031 705103791 875647661 945200411 962611176 460598287 696069010 41655579 348526413 854273841 958550026 181275173 988662815 303987641 402557857 652022937 734793689 255198705 309256641 325489760 559596909 385592764 487595418 886000430 983382519 782186403 901597673 390466465 447970723 502975140 530869372 910778086 911433956 226936965 649582746 929039710 997393836 162948905 907730406 450531192 854400718 919393925 960399652 460666908 956262929 831857033 944418096 198940419 719101939 327300409 386037589 533322994 832553903 569813437 892917395 100612652 719969127 583626735 953264180 225130016 958024766 710121642 772878743 987313851 994447248 948037587 949979391 880409708 897046426 849310870 964180041 409074085 733320556 968370766 975191944 29867578 219206841 531461893 534367594 808986518 993937751 77930412 620656288 793823343 938887019 901380408 981720375 459367647 591349922 715678225 823404078 14716217 425231351 268540735 354434688 453560856 758451001 357088415 530399809 615425447 702848592 147272272 959489535 741902191 844933731 844072780 877045094 91080275 909451873 178510108 860365099 932965787 985004804 117227043 367573428 593889453 796485626 540649104 600067092 847470207 974428940 626535969 861294993 945082657 997715567 500076219 894449299 43332557 245541145 570124148 645919205 293924413 793509801 241435385 279877206 233939785 749684366 63919008 402831348 984146891 986452349 892870690 956235556 979764828 983610565 3161972 634442513 511168711 809291473 952754514 977529143 237509749 836482047 812767138 903054871 960799761 996962973 148964741 433297248 741290727 967681645 718943990 865578122 476588521 778298843 365373875 427012925 828992425 979017540 754362554 879917499 245910334 697532921 767101036 872054243 875001650 938195620 51236334 548404504 10244321 906931621 701206487 785831336 931440484 942897259 341643798 362708289 842265575 842330157 829178285 833047323 730558568 797720987 727178398 756822855 578709290 658095634 733966838 880313325 847370831 900749624 903353568 955725698 278033452 592348051 55348650 451195254 6310058 142929915 106466362 214348668 245200500 333520257 436415698 469408101 141366138 170386639 818288982 924832708 787740439 994609461 350754196 888060278 369570206 407997802 563532337 776172308 283570680 701272168 454286917 605820302 172660021 201428201 261357841 600357263 783057784 849632895 722749416 823953764 929995294 958360221 396716016 841422664 703161989 970485481 376988149 751842114 675153345 709441614 663998204 883175197 509896437 761833074 153894024 410899247 931470537 987782786 163230112 998437562 895416532 939190954 580894122 924585750 20044394 159628916 919218952 996783664 889625037 967216292 348818656 899882354 569563527 978413175 267371641 536602390 919057723 956471676 718580687 753334449 489209862 683966900 775492634 935101211 300695372 610673102 291870359 828271665 965402036 985298437 683972638 773155209 219655969 915490578 287419951 994908121 817958895 946068202 200361814 862764372 761712922 913523023 206943423 329452415 561439378 974430579 953586385 977814279 246810651 658397742 839859736 892820077 720219411 881263972 184748431 704419913 124195786 690245448 94150629 718672931 157920286 604850291 732099998 952085159 352689698 412177188 583860110 911328935 120578184 651094641 365792199 886040314 32333839 468794597 865858832 920916306 775315005 818130584 534872529 686599546 517162757 544471671 897102054 953033651 728683498 821444798 904028225 961623959 52690770 486779865 443088727 635181673 836861424 878201594 754025479 878751858 508052317 805177906 153419216 761271972 314713773 668583995 641743872 663455715 409528997 552251288 484561885 539590527 919968890 996848303 987341092 997063530 453974392 521719165 278247526 364204226 788401053 996003195 628595792 878814444 935556477 971702714 820315372 963506344 841662678 994529536 173630789 725122354 573703695 763830917 906277075 945036819 625196326 925882615 676617362 704107255 843454947 979857689 59433785 751578865 861001773 890474309 900025869 997347424 434971852 666196449 950989201 953031754 929963608 946267622 958264220 970756948 2214588 870548798 890669192 970950800 230511941 992262799 918869552 936669092 240034887 735508344 529324080 760150603 387454771 542809043 988376717 989604443 425197002 724258072 163612178 937173120 606767499 981675201 742670024 938708090 329522477 341430785 724236405 957425821 406848185 513306864 450523736 489276587 545381772 819427672 636626623 809635074 501304837 543843015 38602839 204135909 733290505 773287938 120610849 152472224 603775015 681396395 712422844 878163907 726653617 867097556 294362984 567203664 644013391 922033978 14378713 144251997 860117601 893580970 803224695 841366454 969141503 980057702 550480963 808275382 359847459 616779505 393729921 438850709 373598056 540333485 128182439 921288730 372231384 900856414 732819571 920823695 909492449 917826690 833244433 978480653 998689747 999281839 293376534 584464196 920273918 985465732 124225437 922669350 180989810 900269763 139734342 571855961 375172571 817219785 500484185 991835338 15275084 859110131 408450341 546571245 984513562 997246577 304644984 951044212 912288091 934915377 739176142 954858545 300639548 791830512 428745915 716168830 938179616 986706868 666652721 982748491 83811480 954824487 580537374 999245676 372217988 509585072 182664016 855952148 847483027 985138167 236695117 352323661 785526912 919298318 690931073 954292320 77368573 989059223 796002417 896648944 429535995 652486190 85833429 894622862 947209096 985272965 213807592 259512051 882553868 913612834 999356056 999372225 421425588 534586843 455153715 948743377 612560066 821055892 662227700 945073118 17455248 773306299 82454277 769235763 415381288 455262850 270241070 368840650 90518662 280986182 407959677 972691777 864546695 924643350 997243692 997407602 814471799 913147024 297036175 828022516 97965198 954139639 265914324 723677539 507800729 807333565 744395383 948610559 13936864 294978994 752711785 990412584 453922696 971288406 330816345 689604049 696455540 807114928 3995911 69848182 588697129 740139421 557071603 739038906 770171774 854894517 835174689 846418440 421207072 817690075 25858007 827360761 334172830 490432344 685611859 871239291 286412666 987071206 730219307 908788297 706788047 844253396 776462509 815128882 426069090 499202319 316682240 891675892 117466574 631527280 168707973 486178474 161717259 386125626 892601466 971475743 430241815 663662408 916989983 918135194 680612594 960662344 416143685 482723568 441801177 541704491 52042717 103955490 787620949 871077707 346159153 956664109 621497458 975507802 104622842 947079623 962149943 967365718 38137486 776234943 672268249 691810325 947945888 963609374 112134940 372276935 879915770 967064460 823860087 871952600 418270217 714485872 643509396 840614725 906703028 981628167 677783986 820130978 124158832 921984530 582203317 912618913 224227219 546509740 760864615 795899405 92169407 827869424 728280881 742574468 200978942 528832695 535145858 573299849 374648368 861266396 285022052 320506851 989103131 995431749 453762583 788070590 294935392 731684813 60439758 173521885 101748852 321523649 852414493 984656889 378135535 985598521 123100365 560141136 615036575 816940253 998938407 999101211 312556754 315302714 785514376 955976035 864982498 972598044 160216419 758984118 143083896 631366283 667281417 688355384 481258377 802071641 20957440 870453439 23827785 870316416 771118527 921132321 60305913 236792743 242668276 696965974 551076676 666393471 234115375 693469872 253773440 579465697 934681237 965976285 232036773 975221134 962988544 967524282 120486016 944311810 360395344 981578176 116717384 981550704 956091807 971997670 377023828 761410232 472045112 695875256 794718539 825872275 208478214 544817102 437395425 528851732 534532709 657818962 271596962 566805948 744540808 947107941 284996551 372058360 324981114 604869636 62869785 710636025 615855421 756334195 210485812 266549523 154228870 636168899 971201567 984453719 947288773 990454541 330305128 595765733 731736278 972567976 847331618 880848291 479289326 893408694 44799437 854052740 419128976 715521802 350021416 572162676 608239195 932760749 325326089 602340068 919061688 954356404 535892521 891010948 247342673 319184024 720787702 853851853 720719236 876792328 590203461 751878506 119897081 861204886 188449158 870145264 630761269 630798208 255204881 317769788 551121299 808341155 818516362 868171676 142055561 399655024 47287202 764289433 840438776 942099430 163645821 606724197 387837455 489228085 269442845 957296634 803716346 853570161 327563630 884475734 678797355 967187124 761494902 890388566 971951497 973011658 751699759 772246928 387413752 921046797 158669979 638375471 831913563 882708845 826713829 961620542 540525986 963926153 926133942 942459980 15080139 972555093 308428823 534738359 734300053 969259758 243244496 983548371 422335808 909509862 736735945 949461701 952265107 964685014 31012047 594240999 723407993 816976314 786105551 851689953 339158981 933843163 623327951 773087839 99567584 974189915 276058710 730117137 268086836 656934478 389627092 646648422 770596779 885908587 477985243 857457506 905455569 990468457 60902046 474087671 372679943 907993686 999170671 999322298 520500906 672779544 725196178 941352974 515254501 641900987 610789027 622790309 443880259 758025547 993172282 999366789 754840153 829270796 473236329 827515939 111186570 761975350 743527835 953413959 255934561 908889188 385635581 518326496 652897638 737141916 631932990 944154793 597277223 744989838 695669627 953847111 170915326 687678623 480785904 828990009 98182855 285658053 55447993 536247382 891301965 908351237 445164505 543104613 510836322 554419800 242205709 787379230 560790045 737321005 40102077 261828269 461358034 748558993 299618241 741742100 655421711 977112426 86286803 820023185 315692802 354940992 64005840 459438512 479718359 979331232 440806320 552180762 870550833 908099636 823534792 985375066 708453623 771144121 569704964 959007200 973486540 982105202 94314698 943671002 78961496 312080536 438637224 975794719 365645982 407255844 898687109 925672492 337234138 763374829 920602441 987593522 343143128 833853649 718002252 776513110 187911198 777756707 968587465 986915799 817948261 929618322 945016130 974236385 673186412 848952922 8806470 416345129 279292580 560639118 381861940 944183634 879194387 879348667 305556572 819895899 727052528 793729569 616929225 652716755 11037161 828527982 329826620 595586667 629925311 669919538 492661508 535020105 592548947 656873219 792039523 885027822 537910797 953462232 209536775 695361846 85266830 287041669 143504304 325327732 329840157 694363036 527788114 977229278 84215388 667590903 931926270 970812938 620904500 916331449 197792832 275485790 290826774 616096439 157681998 885021984 524578632 927927525 764215662 808430682 509550927 857685362 609830667 893403491 142521138 490634234 927905304 979231353 585982495 918097438 200899934 372124913 784942057 953943465 650066846 864014387 972850062 982981488 763034993 975168885 140971819 188341589 929091030 950462377 327089190 764262473 577758171 926806657 535419759 632693272 188950915 775798733 921423312 983137578 461572844 846281509 198197146 678987240 452748551 714792536 748223325 844847338 112041150 733084290 392241780 625043867 50024486 752759516 774230116 963141378 674435456 846151067 491487694 587756768 244854502 695771707 516054279 604691095 510994306 554766773 739443313 785995180 210425344 402323794 255806491 358886658 662066012 851304703 954273723 993435607 903543718 972252186 841609561 994491279 908519442 956408757 507690071 671197333 333471552 867804150 984675056 989299159 805348081 823941991 90169970 646679680 178657951 680976310 4095446 538964156 118057438 200633262 774775383 864068443 846227279 948195363 265739801 493851072 435297603 671929883 762607818 931518625 166895832 843845478 131601171 978549867 20926522 842729728 587682788 659121316 201516787 285449815 915681920 966001303 948517551 964717693 210363508 256493141 117896114 432584258 188810819 240310256 119711728 847931960 762739329 879245503 73366276 673244423 450336 441828901 133109324 961268595 121456223 488663819 9786221 393839008 73046599 187523502 210906110 830579034 576628478 851258234 690364221 946015039 413113904 972926684 470178485 610351266 853417518 989356865 35004787 277937303 911846716 950970773 206721973 885410518 349845443 644861366 46495695 705123994 180100354 319139866 634653155 873539057 980873409 998777525 947041641 964724771 975363994 977997478 423401471 700555889 246625920 775950180 571700366 641420301 613558859 667342747 932939265 959408319 721131318 906103382 516922265 921203421 755643239 767295109 802178621 979892690 710842195 794791624 161455311 334342211 425690294 567972265 593370548 834342716 307840539 430134878 647916535 766962846 983509134 993027981 49800311 301439012 60616262 460036550 472750288 922110972 340494894 692156015 795339002 900217701 813044368 908328317 669023939 823414932 901058529 926430353 999306540 999325223 253218421 451533633 724549797 985792269 47533073 644917914 460670900 855327366 959224091 992542551 661990860 832799900 303299155 946319260 425732330 860962965 555520897 866579258 458977238 969468874 244144707 814922987 347641648 445736795 632655830 997085405 140294970 953124619 113345812 839641938 275935401 799049040 134873509 474736272 404130237 748180998 566443466 900145170 971524994 993615256 51694767 621607607 432684770 489583419 757984916 826626732 169808235 320253440 503698130 840383153 580811955 910844812 694106620 871464735 621013966 654302315 681809661 692886820 588564222 769283124 503182381 595967672 964382768 989055110 981979450 992070987 665264811 876474116 32958219 350497398 31980942 861759067 214751701 794066513 312583545 814098007 285397164 897053082 489722435 533343896 180495746 867451153 45706699 794614131 640841796 873077229 700317350 988193245 332897164 811785291 857188470 945428157 731002478 882576961 673924007 924959065 640813198 732078473 467213864 701247422 83532390 632340823 455098944 899773562 237934181 746463141 519286485 711958452 689491500 985277603 310546919 545509934 201223455 848165862 103662910 199176463 739158289 871499476 291652578 486473866 187045161 581642799 29748219 903196056 993484272 997292346 301107361 818858574 782692075 908391232 880847366 911109438 34723798 291525785 423999990 732828457 548545339 840925977 6712608 684735626 495463200 904908008 272011738 853395810 12890793 629322619 347487935 566009894 426747231 539003871 133889954 832166242 649439689 981040100 615658276 848805400 214829845 757513586 661656618 996028545 800536913 915487154 503775468 987127557 357480044 695857738 93403823 925584503 74871222 849719530 169162390 414418700 936522308 990569143 979895439 987748980 614866208 923394934 809062047 876494062 145328271 631300146 172983174 868459619 400719899 720646389 458905664 614317126 82096223 343708888 860880962 900817302 47750573 862307480 343543362 927579715 386717080 661798144 320720615 376541516 35231094 304968656 683270531 982980530 35770541 112951313 423190161 741690252 487232285 666308797 347724186 710024757 848934073 865610599 906813437 948166394 185550139 679557341 475701417 721447508 773237355 951122582 78313428 915720953 152302292 252359495 15695085 741552322 779565875 837796349 399390424 867107825 827935495 958157754 414342143 934683417 356517617 414242176 890684198 923944828 32751386 236287576 114405732 781617285 168148235 876419093 877130477 979006848 543186303 588894561 641190449 895433662 470064055 918637927 868930210 997035770 800430278 896337772 183729034 802816313 235209258 313701356 827712644 926901568 732021736 930301362 494539625 692865937 434490650 548653921 714033999 997375961 219807949 284664881 750281100 875578209 27565470 744762936 836799722 850119901 936212209 974702220 265789853 735907364 663143752 764044048 976764247 985127838 81898415 167494565 254701826 606378663 826949230 889287759 138523510 984254011 409895505 509886865 713181984 764913776 207871792 390058536 983326489 991122526 362364303 927854807 696357627 741661530 156200813 204777806 78545876 760248972 378147582 477154776 2744307 932234480 802822994 905019184 200422988 804559047 934409212 968146557 534531388 628984786 387178265 942411143 529271838 869979304 842759545 890386329 457589358 507806495 763808571 920472975 525606457 554391879 921678172 955205589 268178600 734854691 297366597 445976656 27000669 870536516 824895304 840265373 246822558 592651335 337887549 587690194 745170423 776117462 762097916 980284169 72522128 611596270 56041391 875986985 448785556 729282848 322035330 816042207 681558229 748770665 959348621 981478384 666729717 732195580 468603088 913832578 278218087 773458497 574318579 935775285 893301537 928522020 81127511 692625821 6509706 379706863 402408234 923460793 767588662 791912140 627426703 690718042 269079227 839095810 380303190 664743833 67463597 371150751 198882676 362029643 152398121 299720687 26741056 715530780 69265532 831395247 465108212 967521648 980494549 996078092 392346524 477541974 690703716 740078502 690877503 933908515 241100976 888317739 230194551 493601534 259001583 557928226 589711959 832208007 177059296 317626067 504356393 728476114 955852138 956859793 371484428 646053975 986927989 990589840 656234517 836322491 970718280 978749834 912616084 960838242 486318189 562461066 376017214 558547684 570548135 995486907 257316348 467811297 380297925 538154963 333095280 831928751 568416354 675357464 248168455 650274405 159965916 428627578 323987520 960709786 585294812 673679386 124253770 712654189 40927612 390916831 500999854 622921203 483694332 567760233 741825978 751145377 263818801 446184359 222318773 595646972 323527966 950924517 679848794 745249581 959807202 977120668 942863781 994999432 835573065 889435201 422819388 863188232 840667106 898601595 336591065 429883437 22650924 121047914 836102950 959050111 10782364 62236062 72416871 938253009 855059991 893468665 194184438 653575381 774819321 963086941 179127498 231244506 891829924 923493701 886987005 892425588 149380058 590376966 33262862 190797761 248996252 548662855 261265765 676824108 295730720 891099406 700362952 895285102 434902075 751241165 571489099 786917776 837517157 852987732 95392963 988327051 578900262 654869312 313689020 694769550 197641432 687359205 747934233 939281217 970389110 980034828 155575821 882479651 574900228 752123645 416055535 675752358 593476795 747545710 490401993 868131761 267970133 975334480 95853738 311783371 161408294 612665520 20662112 452882751 799595714 935402940 119654286 868179287 88324168 164737415 62698030 868776978 132034170 839338244 881385528 883320316 180921034 936353401 916882418 934537020 346516102 432310395 703425481 935622522 886778040 991206923 47958551 124533231 943026558 969543745 335874809 352949243 894939035 926277151 253518067 740223018 407270075 637870926 102597052 949693396 314400939 941911923 248701538 770386339 98354093 567699388 699285458 755211350 315431162 673690204 543818269 814447505 22021353 211468562 445111048 476376468 669783970 754773438 419934739 702030072 760759619 764688891 949528687 958291255 988828837 998435449 466357984 901104941 741507907 901480294 979556427 986334474 463479781 602817541 500552456 859733624 530479667 746965070 491404196 678093074 468414080 726915324 290867721 853914754 693294837 864285031 852653758 904827661 177141626 245263687 120655409 825338921 241917282 680470503 485208623 866176968 207922380 525768360 566650797 947376950 465014265 770768680 915711630 997307802 288004211 883943289 745287069 922006389 369588085 639979637 424942918 755708197 70573532 326057369 299457551 769917105 247064499 560264843 532959889 875573829 470920303 744909168 330074008 467867938 480948698 563545674 536428475 678571754 709889031 875047570 956928605 967911336 285640671 778187863 374085642 816296896 36821425 237298011 184988001 547871494 199947181 502847946 767769469 864424603 745915240 943085957 610083795 983926359 269176886 468217168 506994013 718481827 596089350 827663234 812859964 953614516 139363417 952673787 535722398 878846499 288344505 860221348 442382378 705882340 498136189 659465232 290752793 356090330 495561315 701337515 627559845 963833370 930295759 939904537 724921084 963388164 499907061 913623487 974127192 986262233 584710600 592875809 907765248 926214845 874342698 960324963 533819124 559220677 842552523 911743655 30051954 160151792 333535449 978773160 56294013 813750150 11784755 157948046 920011288 984762474 121185054 473026469 79235799 938765592 485380709 575232448 101210324 248527623 442116629 875367009 348367561 730636648 461738973 682838183 580635931 832010546 95593880 833707192 509064328 782098339 106142184 338172791 959276287 989081303 101791847 311163662 375010207 862552108 380032275 666721739 911238651 995428710 600018264 805621905 87322083 717836032 241598699 364355976 266066862 309157859 530485709 762449016 539203394 665138536 433230431 536320453 438787972 918478186 871033542 897485534 289192246 500632082 368088324 753510865 36620661 874015088 734883313 971752089 867653612 874977317 39164597 288869462 257890084 899800831 104080876 980814909 904966190 954360134 33413932 920811840 469838900 992276013 337157576 637273677 384745401 621150405 261312096 504976732 733891702 902226509 840156176 896908633 740902067 873159501 473333372 749838496 931760735 937614185 449155536 905338267 511013376 976501905 669922699 988659003 802092293 900174949 737502214 904854624 15135809 130845525 65157774 291786383 654053769 709575925 737239111 857542291 432195075 865420683 370423902 651319021 58919932 549157842 318620369 740213259 572505688 877250925 298523458 836255841 66040706 749274403 664021770 737295620 696023652 917342878 890098635 892471998 192374982 879260465 251289088 412534417 388620549 416697689 885327409 912274466 64971616 247780262 271235460 467283939 390736643 878401364 363815079 659736873 902715167 910590787 711233731 917941852 904615828 993368760 401353167 548338836 121927598 175831688 751080816 976688483 667502587 801578205 705239476 812803301 594585970 877433806 157961578 429152512 243068843 251890349 993258546 996125363 702506834 804607650 521750941 573610044 555519146 955949008 509390887 691745132 824663459 980090811 848667120 979583366 387236405 700745163 499281724 765028595 505837599 879282346 703434223 892345282 666195048 776294352 502225553 788855667 525769928 570002631 920559072 987998585 662558764 762932595 478133177 527973457 424925415 571958307 29155602 130533736 134203656 508659933 448895122 585001396 930867757 939260192 682718331 972433802 46362614 689285195 820882148 981253197 802182001 828159375 710103584 842353272 387025976 664568194 110854845 455569990 325811680 535718063 207985581 961735886 953328459 984535002 440772249 632351768 562060773 590495230 33928913 931857742 583697278 621544379 928901989 984405846 33031354 998109048 142062917 162444058 200966803 319333902 447186267 737906564 746621721 987770001 809987589 887811821 507809309 920099923 225547176 373415860 442910419 884776719 121940297 945034014 678622063 917893542 387778234 867428471 526237334 799776708 129860976 501048967 821816544 974477635 274737489 955934429 644606933 816128119 848500814 889621536 440536670 786613057 729535536 787350717 407440863 448264381 600692514 812624203 684756524 731525583 390088458 924340319 546940850 950398888 979995926 984072619 535373316 996473108 495749631 670244856 551676090 554969934 364053466 395882497 73949079 235482226 744099253 789849576 813099290 833412218 126365685 378378412 24829787 839525686 520468637 704997251 899721467 964981859 580002205 774103737 33580590 985668802 363546000 614265465 430549341 526888539 502742993 623108696 698007816 718926548 362788951 735762360 559966502 696790037 740532666 894771770 613104495 719650997 458469891 863964437 684287279 945171370 2094539 944586882 177019434 626215450 638559358 733060938 20717291 756604436 673193534 975389429 752757791 794180026 377050625 558089907 239277911 418359583 643337123 873804947 809180867 884835646 859344839 877704517 897356410 974869085 705121620 714822542 336346101 342480292 496528920 588269173 922035183 962275203 427459755 658931067 747220279 945964376 147652867 619811783 849850244 886418837 980608412 981822445 465824910 573327716 45183477 320555704 546239048 546528249 377984557 503672492 382208928 822235233 643571175 780191317 92353273 181016360 949757565 966352619 110965312 179820311 332591073 881012217 59319575 262265765 20817488 884459017 657918200 757494326 692697012 924644614 260851738 571309364 517574299 669205224 998937011 999247172 898882490 958469113 976641956 984079654 182631304 240850695 924293670 989480236 972567669 990366425 424295846 583388469 807372721 923671148 318060096 608870229 450756497 468398834 745326310 786729433 426217106 979987692 803133074 967926610 714057727 730087607 304135633 409894378 702116591 807380121 868011571 965969887 134870195 763539985 911122213 996945836 627719902 809982188 106819065 928132107 130283323 204672815 175000666 605790273 876308871 901623729 96553345 172771485 585345221 746358570 711575190 783298131 914197784 946334620 929697221 963174373 696546538 816780297 267980142 940533761 618538749 886156733 401503697 661459331 607321473 639164802 482448006 703543352 393410074 539427737 278377335 647598936 995194762 998436924 721111188 988722904 43535818 656810227 13872526 89356974 160759166 251668581 888437765 890551320 8311418 143526100 951454111 987545546 533211630 789429300 216923889 291123531 941685116 957026669 742041710 793130241 852555965 920311625 482282203 907647015 626514897 866805675 139246384 890175939 299739360 685962208 963752792 976511396 61141879 516576199 294094981 540619874 198254559 958998000 687532204 967394099 885539773 971679032 960760163 994334667 13413500 544303762 754497505 846070927 327362211 639029622 356854697 734024556 201516592 450007453 907378601 991870706 876136133 879484756 176514404 533912985 860861255 864155366 615519353 841487410 936078781 970664164 404892148 867531927 586709922 861151781 260936655 354425375 604223045 933850152 798701292 802765003 77657638 659034438 243257308 659846692 263016607 481390499 111742026 335655758 349654908 472672041 903091474 924194793 508462256 897043949 178042622 504171514 915966089 943681150 573914662 688077595 929000290 935723185 310188378 408536014 454604214 756897798 728893735 863820601 121463810 703497409 949579713 986516518 600262650 889763371 349408860 887378145 502140865 557509598 752660183 824887267 105498139 675865193 172521733 193964347 425700671 519504552 237510238 542339650 637934982 810564267 235021483 454313702 896034552 929908664 514246176 657630756 278738216 376365752 72764056 635443434 766026903 846090546 650067059 758918422 355482628 810417081 851869773 974693713 265754245 323896611 136475925 768048213 993898392 996141802 714822206 844762598 874167458 921604926 417147801 927731516 428079869 965561617 834553881 848508701 926894584 960001650 837035421 873404097 516715282 649536213 311812090 395825379 318892612 363620524 55182518 412525382 778009906 789198409 931143516 973961111 191544072 411392881 363694696 882240235 486187077 908864412 354811312 978897490 762452124 887919098 814711584 839766068 761819420 855063561 290026342 751224619 338247164 895406650 218424413 727902809 892252841 930214927 968427306 998068817 298140289 685392034 278222141 482940492 45532515 419668551 108578097 544462187 221205908 535649974 671214055 949269692 732479029 856396389 150752113 774908437 587127864 604097881 620847812 757228655 698175070 840451016 450689105 985574145 998992410 999192618 883456626 944842807 923733491 951961052 412700691 719006525 533586139 982859642 933935856 945381535 508390002 822432558 980909045 983937910 247529008 434788615 506829517 805745723 192490403 859191428 827426981 859674148 280541294 363427378 223314172 660609948 415876583 543996561 603553022 861079770 179578893 946633178 173357099 826524494 845722579 918996587 385296368 860130403 358382314 664027532 13092900 534652541 545794181 934094154 45546486 401467961 239383595 330000067 148880197 673018732 137190284 908900485 778354868 889529897 578566790 657482800 855695181 977646838 692262194 778678162 877074827 987856331 314039657 459775440 900629552 953371018 922936510 945146117 885167773 891092501 514132553 532460330 773374498 818210678 804916486 968514594 205200511 250199321 962088724 965215382 467621651 760360428 918926693 944588773 649319428 876012863 63923243 794264438 539190090 559654862 671845232 950549744 625253249 808817938 248377131 967571581 222146924 938423795 620907389 664227724 994498061 995302300 177643125 636804119 501403462 622813922 631669691 694164232 620151376 731171880 661790716 728860637 672815583 893102540 612237759 716579425 834006257 900334417 327955960 512654613 598189763 616729857 348053426 495700010 390663773 920557294 400318887 742328099 651011503 831125849 270003495 719030791 596548020 959565436 964030844 997670727 448443698 700639018 201627188 739080377 912938441 971318418 624196993 780945081 6914162 471680662 747976202 893998782 400286625 512507157 218230451 479633618 71277681 985807623 333249804 482037131 913326987 958791951 411373556 839806727 714696204 737327800 681598913 711198969 277207006 374058770 58810835 450354970 461442583 785028690 750689813 979996435 105042323 497987320 48024644 942456865 686171421 875896919 943045010 952894033 799022203 841251998 524029712 618727095 170417981 851969417 811446789 897916846 118320441 981315535 943601840 997178367 323772660 433920326 155946584 812469588 906323997 984944717 268492758 466463250 248333393 602236878 503788624 939923803 397811970 987748310 151120000 396934629 196463635 381490505 994534947 999006082 535948776 961988148 617185396 785431352 99737501 603315046 247115154 326298478 70364809 559483916 458307281 776928488 553815789 817218455 549293020 933488123 322506649 630562523 332681458 911219219 316409476 460804158 715338032 748631260 223466562 852120933 595081582 941299180 580749625 927854384 829407932 910331443 911379729 965057287 5298602 946385066 635155033 804770582 800052519 861262543 145781082 696120811 915145640 955683059 625822128 801536570 773211655 873546315 832469124 873818063 184166721 457002390 312918696 680298472 282716551 302445408 791086039 960227649 527948166 795933768 167814052 634674235 931032741 946259413 45947890 74745685 685040192 758821874 610640022 783394805 28893735 589096582 619954834 821326198 93165685 384454000 316330418 905375827 392825283 720958964 245212857 982959121 65681142 478692249 789029834 916481302 72256345 338164759 825204053 968793408 224738397 444478249 701381342 717416027 514163129 600588701 595400089 754663469 934451836 994415200 444003582 519559944 406476646 853773300 649558141 918027603 676876630 979708250 839800524 876131086 849100969 864120533 820799698 904817595 982432066 997149848 550595393 831340873 530484788 743843581 456674059 920881881 454175498 784388779 875314252 908640213 165127166 889713664 376392548 676371632 632962196 886189247 562384123 925769989 710857959 746982895 960933768 986571050 690769985 762974007 177064474 201613166 651382628 686890892 36691570 901865551 913700919 988520105 424582557 475663640 212831368 413428802 325602338 824753392 153848126 966408362 181886093 914497267 392044148 495983117 740416955 865030306 228231085 771409658 514911659 742037756 871968653 993781432 542213980 745925845 270097391 876854712 918141088 988199397 204900809 465765023 647682503 749112352 947980958 998293475 680864809 959295139 150632871 791918932 301329356 961571357 980128678 988954014 86291566 718067751 632142832 928288173 381351570 703991285 25243301 187339270 803787764 945111756 661111088 824319260 567889665 667969770 828530057 863450187 337137370 406473659 88228480 534523969 61684460 71188711 77938331 201422244 220271460 895138418 468597318 597445470 199984668 909910319 210420552 877893394 270891932 577500237 214490540 417394931 648869552 754714149 67347665 976625392 805279886 819313889 673398273 927431448 267521169 891542089 498414803 695980174 240067189 582793891 75921273 240410353 907948873 966178975 402692254 602527426 933068457 958175975 24510694 970179678 789542284 835844746 8600542 900501018 123071118 598881439 679942164 806549081 518222624 711847049 445645127 792968695 268152040 481316396 233323297 820187862 687799313 802077467 318709877 556626302 769445285 772719344 654884501 767734945 318632287 428016908 179757133 728113534 74390134 433251706 219215216 428474896 562624284 596402433 339221051 389937918 858796035 924675276 576166225 635032741 546653454 881759728 572264933 959220304 572307476 886839720 230868513 929962672 585478821 886950539 341076441 532921304 382860367 785283959 439431993 639208650 819199270 899964984 549572324 676290468 634659586 690187428 42073681 728932352 35378234 744517407 199879009 823399835 664733996 932500114 294592426 712375203 86729722 967756992 609767330 758379460 50595887 788099144 405849577 982059629 149530900 302685474 310354229 409479704 951073668 975671086 842834943 966363398 233690895 562678602 156032836 983106588 573196450 693692877 43978431 796971744 95710928 855190454 770815223 862888717 845417757 954313256 316602970 316902663 277517715 866123453 113086695 489960225 781795628 979295542 898425762 997161296 464804252 705390718 832115410 911577419 708233651 817375463 647304831 760099559 753000526 766494838 317303146 824650487 950109348 973783658 662717088 694201294 144966287 767567065 533609778 643591094 111249551 877813977 13718157 573054812 483341442 657875294 831970467 900549700 779504802 959841241 619344394 846003684 596230792 887265730 781851825 789255935 762066624 875215742 487568974 889062475 844444602 868980708 570512557 654664477 41624536 258188729 587295044 645951716 218632072 897826144 980579895 997544261 474977554 942124157 34651453 368473229 26402582 31512435 493559169 618978356 427477364 493119248 84969414 315537952 652140679 697089402 189394951 603808246 288692694 527056798 237387195 550598725 696812015 869938799 382309437 533330350 117142663 144969222 250209488 916516473 806211234 988646020 345647714 538394505 882256020 900501543 401062780 535753326 340370778 969583620 18574095 349598111 12269994 141058732 718506223 976508970 853919173 888591255 665394670 709587477 314602136 600524792 760674621 866432349 977546531 978158180 571403796 814062114 866231543 981676304 961618274 998337727 616512258 813579795 162251144 294275888 145967218 536835249 23657291 136541379 21053181 892516252 649845648 957414686 327107626 719297028 470055453 662219967 29086896 390228508 118115721 153319233 770126140 944929995 112442658 370335501 287454650 595851136 118754929 698999605 815248498 906557419 669116820 989409069 657701947 911805251 616366757 905673312 630374744 864688948 682843003 796227336 804945291 982190770 405274887 582965601 635742541 679487695 657281450 766479035 235613645 371710362 275444091 748267139 59595250 166544540 684948327 872911856 29784141 342666398 239515130 812465382 295898378 855132771 463732477 660644615 36915069 51211770 43470575 963399004 562343656 676540304 554349875 741864538 179198011 300010117 414921293 836320639 441294796 645363364 135077251 997950424 363368005 485863206 443844395 716211149 311543465 950548709 735263789 808934751 372320304 443616720 156953720 739097667 691708634 796612711 188609606 829428909 94796042 505152654 757122607 991925227 375685287 897103494 674832324 923348796 915963652 968099015 969464549 973258754 549350205 688145962 87545500 888069446 557768663 629014110 845072856 933208415 511809722 749424343 608089205 809555044 320888029 945181023 507271360 969378044 374787208 461883513 536637981 764190538 240210116 281828368 632540958 767169232 85645134 595735411 203225095 759563191 972638134 974343642 355580073 708614534 169407588 919957510 506959437 761291774 480542355 805498682 799259435 816872024 431875360 914864411 599829316 622477095 373487277 971152743 979591505 989999462 851593465 926626736 251644622 451607338 881665524 991609074 687968026 921026654 922856476 939912084 372109028 518602364 844560604 934436510 419075372 821554738 419940815 581418801 799625508 925268334 310260787 824637079 228530483 267256863 287044910 544633882 861086059 865829681 260979145 828605549 523656676 867082662 1188640 840434479 495516366 550003892 915924289 967782509 692308190 836281453 940492325 991092906 775459938 789477253 723311349 751540482 710211950 711589036 851153246 960605997 585109238 756906028 616461795 942549720 281014894 802163887 390274769 487723349 327231211 560973607 210816769 513573225 285493846 907694544 243004977 491682293 714963987 977199924 494349877 669277100 929454985 960025699 72758284 885454977 945302031 997744421 954017201 958213541 683981415 897458599 102882385 287205328 787784815 912731549 489585985 898916712 958674231 963567482 653812830 734368638 155313694 866404077 711643193 914340667 504598455 656218036 8561244 490580149 659387098 808989587 141780948 828969992 322473874 931432259 776928349 932161841 989896593 999311680 940599563 967845226 667224779 747736515 797354837 980824039 183853279 872252713 247622784 903874504 414896002 785422483 969133755 997813658 957529241 991404002 558137865 642163043 648922143 692581098 873272153 903482818 655303296 659517898 855872025 981286217 223143467 926883567 306757034 888711104 977901867 988301250 635502853 650672155 887428567 996619676 543151380 640181390 257873133 681138938 558435441 750139896 644663130 919517955 644895553 814799836 958377664 965262424 599844685 847415827 205185965 209092183 147215361 931764324 719694536 770703466 663232838 691141743 854742192 901720010 950403385 967091007 599113094 857218203 275253766 938510622 255181226 771950507 634559730 835399754 603100096 762049741 892204890 938430827 527020602 773670754 399111881 554286749 332674583 790844224 531715698 813326138 528453302 971165274 923034449 966216033 729115629 937231401 311922064 401738112 654700987 816444115 138546501 635019151 142766242 185918330 732322840 995541427 71243833 409272628 791298108 860440826 192291052 800706241 237748276 930282229 585780006 806355285 873843001 942190936 80791040 956859353 140248127 737329195 336434153 409325946 66683905 231006552 89583235 301577781 583199874 955304107 208169016 661548779 551889930 653084970 571022279 921544060 265702784 809650783 610441543 737616970 282614474 650173013 728864472 955222476 455424349 939134020 179512131 547348408 974858587 989065446 696891143 935504585 420046447 587848527 956583334 998622183 503484827 738180889 990603650 994343182 392053035 461859976 23268239 381115059 614540223 736634217 587663553 714753623 581649229 983577400 646132371 945629551 793744820 870264680 627534532 989219787 862495627 896854974 334943680 756662243 761911410 871106643 202772245 853665141 495123826 569806615 826198159 994825211 455713724 462573426 700999251 742827728 174830529 730257418 950538473 996492650 686742764 888816499 292116033 312276564 925532290 956420739 559908078 683097970 280490076 403778907 923987752 967360664 644275405 858515958 958926418 993742739 712415382 973964535 666757722 994092700 395556660 685871238 763465309 956932968 340438781 379264726 188783328 874714408 125760945 621679668 168329102 808173011 8481789 951207230 141980454 219095035 485177501 587490525 270409095 682950686 284818578 837779002 302435213 653722173 954714342 991690238 507009218 599001492 914828300 962374855 540182174 783076983 888344236 890507028 150733411 350003132 480624809 614857556 290098764 311344966 90187400 614133949 110318116 429859671 465456368 684335920 858667614 870812603 560914707 828560975 216773468 338595485 899013188 941509016 267292800 425303843 984879693 992578408 123498784 254725285 459423274 710817178 582624588 641946346 418428885 566998238 309901683 800825324 720244828 757994436 748325517 972619635 670530529 742480158 42460500 216159635 476627648 613137049 37978218 870499483 527358905 988936821 393207450 947593931 811148739 839520513 893225760 927740074 573318259 618962663 836651442 873909685 111988314 800357364 99804489 143460080 445662349 913361707 844483039 910131435 787678932 815892267 283923974 683810254 118387890 158855364 497117152 509325274 146378644 427883571 548658917 640729943 745150660 916556738 943959007 974605968 890027563 912341982 296812214 755553392 874808036 954641872 46184447 266829743 643545018 851744158 919081641 976411137 231662125 613671850 7284092 338282639 169377427 707918975 409539133 529820452 409367474 498452782 317371259 808036643 383119286 707540543 686208492 708120739 745720637 883248803 451673068 537357466 548652360 552956027 279596492 839597939 471655788 541730248 852188648 953717503 241246588 695830100 532913633 904981162 260495843 645101413 454100838 517526394 783530875 955896798 510016779 524456694 812270061 898956769 230852749 785217812 371725547 446958395 252702544 524548375 286464706 383890041 918305391 932880456 805796994 944122311 631645695 793138461 813852049 989531862 681662969 854288258 989091274 996442842 438371407 882742425 964261079 977866714 771379835 794143659 921231288 944760880 616601647 626959274 245875012 925800318 573181929 790841808 902423123 989429468 486262730 875897021 655381466 801255509 254320966 334720032 301378532 388305349 443898530 515089002 777358510 993230399 496028136 668146792 504524380 894027432 56184856 809513860 940081535 971343861 379311098 916616858 169832280 564376117 831384517 856423365 242899900 370105064 303182672 907146987 928483113 963655050 188475916 623915021 790328067 959359081 380797218 804975432 882943696 898056286 51492848 741517218 174513870 744098555 874930821 971994646 505540293 792743591 307622201 622969209 755854001 923862129 146660248 600377528 983197742 985886291 930026600 954411626 801397701 952338753 784230342 929629021 112996292 760691477 898047176 997711406 70588177 880636395 665309809 922993353 528702928 980388980 220028191 654051524 660039334 756941606 658343335 783198985 486763165 515446468 99001085 109852003 656697725 947411609 484832872 707545830 382863266 631417185 802055329 803941166 107049336 485539347 588679275 879530443 952325529 986704523 489177075 661714713 793411970 880514704 265727071 734160558 667253042 901561406 863199279 894181900 860797043 992501037 694423452 914715107 155194045 644178542 865069574 898982394 684686560 841378672 502396761 681769320 793892475 900825343 444841269 763153248 53363144 427711538 912805860 921248414 949455715 970960365 991995567 994567226 694716191 763249500 74191450 731401847 316207365 600510788 568934067 954637501 911318047 995557287 830056999 886171239 56908696 370854324 851133709 963373913 78974904 129064787 701749174 953133088 384852132 950658453 979187600 979191178 57041961 171708375 251040322 786448585 811012583 895035668 638030043 697996500 363805232 704498844 113571722 829813616 648232485 655566528 920663984 956143636 571490050 684644208 476476606 898217453 798493009 876921018 36328955 982141691 217250798 435020749 267447375 517539408 738804302 867216638 403166007 797379470 582550801 692156636 285840840 528227237 314764920 857614412 348300357 374228899 152393812 390457720 937038407 975246018 527915994 999222909 203684687 339241550 488563107 714068099 486032659 600467819 945977796 946655968 757809524 861759501 950561915 995771731 58529624 157123367 632820772 666617845 286570760 795154338 92551392 645474501 805001843 873442396 494666520 905283402 865522286 945287534 745983820 926580077 971811610 997592939 794105483 935505883 89616638 326849715 164243606 718195549 410174597 670543656 326972757 880621416 792405247 830751301 777116265 979224721 986623193 987740064 223426830 488999221 108013534 415470213 842425046 868435012 247672911 571861026 119889978 899338705 300962746 757306018 303137865 919254240 106302020 534133885 729735643 959939781 626558154 966999336 465124059 535197124 551913208 989134719 181245377 238842077 41711283 960862064 643261808 990075552 838618653 921894957 505438496 807831052 211464764 263104635 445177126 808776786 311813933 362674395 612349712 822867541 405260013 481338657 656509076 813230320 170518316 328350107 538380336 810857371 502556371 653395404 408690573 965657926 404686311 544176007 23672077 346012175 358237731 727100076 809206254 931533983 433377464 450290830 259608707 940453088 997790544 998284020 230232630 415647973 253976529 979676606 776720636 869477008 246320257 302065212 819295924 829679376 16277503 896110555 953513437 982671735 124590817 333759769 780328375 986115675 361015981 371343229 65513065 652854632 706792922 974045836 528977833 894978604 217863001 390238956 889258770 925181977 824281608 950322779 828675912 856384783 698171423 840900922 653763019 947648783 31971350 314364549 484304590 540355773 232466452 857012956 803623624 926559814 191547420 755745210 405052360 949853291 143908694 275832047 107760942 711071913 860559218 975868381 892386988 905975432 791183181 840204423 634997858 942220892 401653659 967159300 937211157 980370680 564460411 623126016 949447938 953380301 621146889 891509342 326055635 783035678 126478009 900362347 874268686 970064743 695339186 755179351 681377563 839805595 373554467 970180651 794777596 858748316 708221038 931902070 842255182 868065595 498994799 789686904 518546168 526285022 366160240 580911903 986505599 991342908 580006124 606772463 822750102 973157772 413523910 726974696 412083096 556564919 981225794 986541525 532218603 798395000 301053595 748854779 992828985 998326722 107173421 599838092 288267701 326079549 10829077 156903395 502882110 680843282 354047677 928657075 773129798 998984389 339242600 658627794 503904948 817229578 963787036 974725633 992001898 993282250 409903040 860236952 156059561 251495289 104321892 791812720 314766060 731787313 715234299 958286338 34943879 445286391 73654056 113646511 754174456 976057427 304619266 643867941 883096886 971603759 153383336 888396468 774073179 931112596 372453481 771924737 814681509 822121619 69685875 386831358 475990304 747964030 240160544 949104662 691245671 878028634 530521392 869275863 590092623 609817464 440247349 642608213 935928264 998599299 266095532 271247101 277085045 564983497 127092823 452578282 563469350 843698588 670541460 916398920 536503207 707299725 20224640 755002943 581292492 884705985 627427364 971468729 914727595 980760574 985429114 997702774 270943917 525284993 860887110 940405684 630214609 943352003 707191210 710221702 434614856 727109034 970443624 996729436 833822759 918852970 481297422 639890841 439853909 759987264 195965631 575544860 649741139 982670165 197716432 265227986 871318557 981462143 24569077 432346272 513150172 828705894 205693684 908582335 949652179 952141737 140925417 867374050 590982443 614669309 475660037 910143713 857199342 991200869 599354581 825407303 298113901 578481360 873228535 915875924 912523781 951280060 10882242 373647782 841213853 974430622 922446523 938318098 846064703 967992588 175330635 665408251 743233393 769753265 870737445 873118806 338433689 946469678 660815601 667489338 826038465 974705875 996592423 998241696 499605122 701559401 300128488 974376463 754404459 871616692 872347223 994563985 877685461 933847550 200622514 655994098 188089250 399067408 756943552 929675348 214405563 327982875 505119052 696435356 873132462 885132788 433134087 613500883 226504607 992496897 976077437 979810845 204340333 382515424 945135987 993260515 438215425 721234170 448695948 775758555 277604945 681296542 74383884 721433523 739707112 833865733 349527199 818304417 385068901 592858689 437346206 819897594 502816212 724254095 344888051 528541210 539568556 970415282 765316256 792159911 240801625 579440274 615425379 784916389 65639670 937941755 221001618 596477657 376581366 472288169 7729034 779677324 86133014 218652939 364554045 513541629 405505971 597673140 954194441 994125832 811985941 895398809 152522715 710621633 904849280 981827904 390093343 524610973 624860988 808596305 564340228 595362992 974208102 987465163 595117394 921756108 864582825 985127027 3022687 759732446 414999737 811393347 396688862 558351263 286055291 508135497 392940257 453022738 687670451 828015203 928838424 990981321 140052504 898294828 744544886 898643495 302729991 758263142 48732615 530869855 512080629 526864003 904651417 992841007 805996638 867334432 507909233 779155485 645196615 862016924 424816579 927146538 636079626 913636315 200787127 653398861 528971642 584359037 844064702 867880340 596291456 608467463 725166209 822860986 8736089 978323148 688380086 929094987 27345295 94869322 586569304 603957588 991479472 993109982 372655839 932926458 256495621 868432818 902203459 999088511 856358133 889472670 178339670 362483554 449592378 920313348 859900453 897581218 951479378 996680425 102436465 607068091 973858251 984825312 227025550 489482690 526724263 725624010 161410657 406087191 635070699 731638790 725180768 851886514 564783801 926674047 349897426 845421448 683387435 845276868 905844708 921460233 98430505 517774100 199556522 575261135 828249563 848797646 880844746 929340891 666820112 845715247 42664504 878809224 98949831 654063698 619949666 925448264 643985348 730250388 737972239 866765399 67618963 555692830 81573566 134483250 808737442 851243175 873172853 897626096 258810552 640817115 269196342 752567367 930565034 989865542 958990808 961434377 192983989 938498503 977955877 995331581 891222338 996307333 115314642 509448560 934517855 987209918 119988419 600523434 251497866 975737016 648246865 654960161 151226265 932992075 886335819 934139536 955446091 984140759 502716149 520464586 212927353 713151281 512796336 894450722 95873963 667471290 11110741 754798067 848639757 920009136 877657329 966913986 698494130 965748626 409110656 532602337 812440370 855141675 681001984 933079264 348944417 781498604 219628677 521821694 54884690 303192764 553439462 609981803 224834860 735738824 575315587 641642506 375415662 380733881 328162778 469629997 694739126 914888908 159270963 238903281 591276288 893996413 329709788 367560236 800355374 946344287 507643049 694498546 650958157 763322006 141498006 347685320 575645699 651937079 588202966 917900988 446096857 508886569 346544534 944395975 524716329 847450848 451179230 519486143 139707076 853324135 203391596 741272251 576018812 854063429 517974066 544644655 437884154 720093529 639701073 718975657 998010217 998508523 489724759 783352133 968660463 996628425 987348096 989546358 962493601 986998414 759093464 891054142 350949683 626372831 741335087 814277045 281939781 916294320 11649797 414694453 178817438 892537994 263757771 653184643 496659196 528752652 360442427 705771086 510183264 513869580 704678534 777579171 973836350 994324194 579492294 982851342 902038936 904572589 670522919 775169369 193439756 820121016 984288635 993906486 729894245 801725924 445030558 599524568 653926383 654925919 136333656 734909545 906187888 969402303 435047716 586423613 727039902 738284988 41008584 856183035 544900422 713300031 440158343 955218922 245053048 736833113 7796916 95369671 733964635 957133034 153691034 169539663 256712360 716687347 746752203 866091673 236222242 889400416 221409488 516744471 52473692 860013570 150537403 883162313 901290718 917332415 245635556 352413595 931348086 962218395 931548603 942267371 216036979 755787895 370863322 978681207 99070867 921425166 428980082 458920747 858042177 945793123 107431951 141430777 942802274 992043632 860904985 893350691 759288498 779437484 524220832 817483426 20746669 209552912 69570438 364668581 181533780 761837712 659445171 763108812 978875522 980377313 5000097 264202313 312324458 910755521 56564371 682110990 602582386 744504219 410036385 923878116 88313822 806438578 260529931 513199104 528827089 743496016 573455296 953718787 954849666 978668338 320188174 358859408 285003721 576839119 622196716 754825191 5866140 121900982 729074541 912787174 989603482 995377728 862163417 957858526 544189538 997191943 40886054 529254470 134631301 852291786 776231258 827483017 216951196 290667998 574579620 813689834 180391390 950090380 917307201 938242236 997036078 998656917 270127213 271685179 518743610 547263926 713556937 977561178 423743939 433368988 798095991 876003773 249995962 270071388 729392202 832912315 694183074 816824148 487979257 508877464 475225976 644592236 876912189 909131800 315673701 706152213 388082876 453574772 490378093 690099828 171146006 226615279 869052993 977624211 483255359 544052754 203390697 536454033 603541845 811909394 635709392 975338397 663436817 745689081 855171976 995082986 78549716 452948788 468944581 594642340 928940823 979491357 316874170 471819709 991956799 996913380 66347976 635044539 826406417 897712505 359603343 365632305 375858380 948502561 311777864 634138494 645105201 900531019 743586364 843793035 524195166 565231574 268190161 628836740 120253061 519425706 26271503 571590037 561188419 735672439 303756264 704655456 393197841 806102437 211584322 985473125 477959847 613503403 819971354 984886144 891111383 935974414 532014647 670610554 781979850 899340141 572801094 689559820 627187379 813135079 943994363 953947065 151064691 753838197 593552687 976701719 678719292 978171290 352650430 815181012 898983970 949175072 943755406 963240321 834741402 936316856 878199086 973788105 952550710 996692979 561578827 721805159 565515316 731464304 15259424 561879818 751150129 881045957 485005773 833020280 784934259 983349151 660511622 753532529 333792607 724490509 903975915 952565908 910421041 935493893 143679720 714990399 735951700 921898157 539703006 604812110 643446879 734969317 26083849 261429690 118816805 864834623 383309917 755920593 202659280 421297123 535837041 899723719 262488628 908289936 809221572 847060723 719535205 899128226 846903999 906710075 638875895 949196396 47278312 446240028 894351045 974582965 502190373 793574097 55571038 935478400 610391133 956521635 720028302 889247830 724616310 762471936 703504198 996509891 514418914 704219378 738505378 755775541 559444404 959243384 254826153 677744813 322772562 880389340 156208134 402942712 919397839 954440476 157733942 452320797 813865 574602848 989047115 994827525 724027968 946684868 915008316 958519794 950272040 962291192 619004670 737164141 480237199 556751983 906322993 999324332 320670351 625941859 547751422 677498356 103213148 928037118 912214110 924134296 752162743 851280830 313116896 529586134 802143273 854007084 134092657 762703299 286868255 605163560 970586959 975215941 125084823 561480863 752349278 868719793 438966994 457034998 192384595 273439224 96739368 541217506 211942710 237886443 687315800 953226801 756385530 994017609 779927052 893777330 231438250 446952557 795486469 962288418 76688434 420626749 599293662 819285209 948847049 955448486 96295178 467425026 386302806 456536312 273651454 525124497 531268442 757633740 397430618 490237284 85751593 333873412 712696742 936489924 199927376 374361939 863354003 898882530 879166923 986332816 373872107 481486265 919102302 928169088 26933042 719449936 703473584 876287448 615261093 977690317 121274605 529843635 685274609 847513530 484942985 788437668 210235849 583376323 683635671 838120035 492094913 553748870 377836093 840772816 702837079 729085458 632128335 871408959 981400115 986811628 30037796 313683449 561615822 806516891 162440960 369111398 10200574 870688876 382226845 868982302 724600428 761090975 668887855 965754728 630829537 743683745 224102752 432203506 471071999 488709639 777648642 962748339 706109680 829639735 843487181 942516214 558290238 877993249 688894487 715292911 331637842 340667958 566093599 702897748 733350112 955266679 588274688 875719413 706454269 816613908 187293386 808509604 16938752 715389849 209947404 790824087 290535715 921330638 566166683 846221043 904182596 953357132 769564557 994509898 557561535 595693983 319618586 594240451 602107083 970353324 124354413 721349798 48161374 998635601 920128030 930983115 969302105 988802917 542316498 750083152 564893841 724083196 268721863 853833831 86723099 844922336 285249808 783364195 954817100 975956728 488177417 735672226 342916145 735334417 475710765 972199058 96102025 722390068 416606547 781963069 15143904 962967719 2977128 630955219 966148821 969239064 301104669 573150065 807619927 818919124 679302666 682175364 546914486 653254492 483211713 683248646 34517388 646411230 167475757 368845934 673672244 890631005 461673383 709291383 908118190 912524407 475012029 815330903 861303189 995636715 679298211 906455191 598612639 812981906 665381731 665731423 382601225 759317609 855487959 962871137 997382373 998064100 972059217 973313924 166177843 580094262 847934214 906781078 339497143 468296310 586770046 633702729 717849284 971595118 679692555 724829132 913877003 946126555 77819901 379216753 613392000 890973305 534127436 963781476 697067281 828544302 38121629 326696010 97812990 569437201 207490277 285205802 476856279 771726802 618541117 683792920 598244132 757524273 740110760 875254316 890886515 944378602 908429579 947650536 643147162 688922498 752624801 940053997 950817213 953286406 714250211 906290350 963477574 982113639 581462055 912522156 35475842 200772944 807036005 875922420 837251030 990514377 367169635 950467633 570039124 574040417 785403287 988854293 390441129 841472140 455595083 487718678 562783581 880183295 419796323 713794640 916775469 952668313 110653619 702597650 711441975 804570922 6437941 910929592 32661544 231895772 19929734 447087232 256647589 681807858 887829961 939286909 868614717 957636034 658097438 676057962 861591173 875339760 989789960 990722762 301426626 327081929 110685260 511004800 542869821 878821745 19275701 876339884 314633145 719352698 796651657 958879495 960361911 990851691 147580854 813249673 812640946 847849702 948724685 976444413 209747994 768113699 852061854 946533347 186864981 246318730 949041239 959635870 508000104 862494829 801763425 818131423 218786296 951770791 836907407 945499769 17483272 853196298 389892696 905162192 906313845 976274671 865147231 931149346 252491373 985624621 369536612 652459067 404730718 903847744 451976101 659873112 537315347 645781758 93435952 276763528 354480733 688700241 383797176 745233753 145213740 598730128 34058883 301308883 767994723 976495832 205080825 310095637 994343956 994892188 955712661 977270686 790892785 863662355 587646865 668763354 317162978 875592522 265666060 448203166 829961833 879996428 801212691 986141735 634907084 874954414 50821993 90064828 956220294 978299956 689726355 776363008 378662629 612125637 409808640 465142318 735407902 841203343 495692353 586057256 485622577 946424569 949907881 964850901 515641366 575158686 47983297 804678116 717461099 747006098 219357485 741887116 798726104 985881493 139693676 755315863 473136546 630011628 332982600 379637088 577884456 633694064 241672180 483636639 532558414 596129069 317835060 864614273 384649453 714164833 862886192 933229837 51034312 351977761 769736944 886627708 605768285 985121143 982534943 994135701 427459411 942820179 358402245 508725409 877730744 880192523 172730698 984248195 633025656 682401469 552796121 978600490 382475346 630949685 737736633 954603319 574342470 726719145 164224682 949173395 126523984 654229501 38004714 977490592 104240296 370686749 937978007 970802793 251638853 494345177 599331786 689033317 919452677 941956460 99207173 915135603 298679584 798665988 383908659 830194704 132820607 470811419 942773261 963257462 861379574 883540263 741064900 761568153 375838329 863183604 219830473 669634588 658695587 701912725 570080813 840223684 274670770 636018832 53006564 538051258 216833744 633291650 8938232 911285775 151644418 971085583 393339736 883585248 139568416 298364662 805769390 976994218 188594575 573574968 247178253 969969448 78513183 895482461 371371035 810290967 856321960 988516886 278763002 399122812 578224053 996251027 195846103 454090187 688512253 726281588 735657124 961796265 26654187 984048600 937795304 970812836 258610936 646846976 113991115 133433367 187954198 965245299 663374765 758119977 426070122 670959313 743015720 856334521 884944436 977523326 717456382 743822434 624122735 631256695 634809535 981638218 818061991 960816347 177901018 756943739 3750482 803961137 89340408 661130531 619679737 699825024 771991567 810379960 263910405 575337580 699777809 910375289 147094339 211911965 404878432 941116209 71333862 898360020 642130774 715139736 794362602 959549754 346422544 680695707 357376970 901496399 30235446 877424527 274620870 850113515 234191971 481424218 816254887 820262376 223333797 275192613 424697652 666434348 480329935 552722635 981128104 995149153 305852028 874260082 35881841 77016186 193624450 256792631 640015245 991750807 963135445 992516950 812275584 850852573 339961795 400812064 557306533 595714689 112965993 669506156 377655303 798221056 596424182 698041223 47658199 989669859 180444597 285557966 705452263 965172478 419729066 945660433 362044878 469067381 671124155 812074738 191102365 599774380 540593801 802315667 528857239 711507305 64732015 875839669 840033169 908718343 474230175 841469408 918127772 989722320 461727796 894855043 229468378 614699896 927795385 933330582 334992827 733980124 908908278 918236541 311046613 558651647 524029735 688761653 759643878 862943273 988756984 993749719 62408493 249741193 687385955 916718206 85042821 767261941 663666944 849464457 507264834 743044140 396798896 657804045 678067638 880319129 997349725 998504065 617841473 747437962 572726678 694253923 541021113 617705416 403338427 848042327 328680884 979578759 368460313 707353649 851252044 878641678 885641029 888997824 145760168 172105975 777207420 983781625 737496939 922357514 533343002 813562507 515627664 702172484 324344661 706753833 479748810 541847494 965155687 991561593 618997659 881716936 444092967 477557043 933647321 990892561 308182426 912527562 775363766 829864107 290997871 416055700 420933943 523769545 711963905 825063973 693838509 963872189 107122722 327235859 570160508 939093441 525419056 878938718 726243633 800796687 760550878 774596610 640986322 947115929 510169920 804699145 893454346 899631599 349429718 777506552 163714566 817236828 411567736 809593428 197380167 511376982 128211523 268462291 555372454 627914328 850232962 889966671 420191856 831334183 794062884 978052263 502059365 948962708 813605644 818766755 206692082 796285774 748275918 766131298 42699053 860658883 297141961 964936054 875908932 878279520 357210446 525728442 67186304 512302641 84533198 489837322 407444049 509846135 774470140 892474153 767134161 858069049 132013805 538086553 771203850 931761837 628525368 716316387 496877943 657708245 628347521 829491352 841743127 981479639 516610324 705839049 108581035 760044917 282306828 615798473 603446683 658662762 783257701 876566775 394194776 442526733 595740980 869211546 877722264 959869156 504249253 760335764 514038548 957621271 303067429 333877166 953346997 990335759 624594863 690632760 425699441 964442348 335279474 349787726 881204589 945998587 442601324 487990991 227951835 228490785 220095933 915200658 954932309 964549307 891412876 898361057 678249757 999185448 529020313 690711338 181970797 293244603 320692599 560030114 460585552 657400153 781354326 949079304 312484927 447506520 90555189 846894330 654121703 684265355 306084732 381579497 771006791 780497614 346536328 403039429 293452918 442889584 854559459 950366193 447098538 998603146 908010662 946262887 234745296 680573831 189626835 470407235 826250405 891355831 318075440 778289140 148443804 776095764 413524385 731355565 416236713 487810354 572844888 993660893 242087684 563547740 624116394 748240274 254040111 720950671 174532262 902346197 762166158 842958622 835545162 968230703 746218402 970415238 766901931 820940454 56325869 295272568 298387979 900104288 734595839 968138700 63331525 79293026 914112407 973562478 699482302 748389250 70596992 243261373 479734981 685404900 306259201 531642278 843076751 958826675 712715355 828584982 745780023 817134396 833905983 873668008 964321 833204604 504324216 537387916 426382441 543287127 483261803 511610714 540233824 620163303 142263359 165086019 831240137 840190890 594669658 788953100 904919877 976669422 148509538 989506470 464967432 738845631 460009515 736567075 298993698 922412578 804334820 891902451 644777343 832148083 99927101 142424984 926956438 949041181 242281992 689290872 270857331 841762274 930006399 998142684 998651315 999325669 596870980 933517457 510158614 794044580 484872480 630223597 965597318 973437019 880221274 973936986 536084572 796713578 751210073 833979415 682722463 976108832 664389603 680953683 773033961 820517100 359228207 510484462 119248750 802133100 322696080 583011490 787490450 807362578 928129778 932103146 713300635 906796367 929474952 986844784 544651338 802652147 524026714 585618532 546080779 726650734 756518676 986387222 714513711 871441654 930199285 947196330 19255610 142187783 648695523 726069274 821542656 928897987 401172776 650942810 730925326 963868746 11037784 54418075 645295740 661796730 266783341 344171076 565163046 653399098 759166593 910062035 153617508 385780885 977288524 980648615 393969562 981326647 787397571 990645171 986530283 988069815 597846574 794721318 681606253 780057089 632427903 989276422 201921749 426778194 215359337 552258595 166625103 939380425 76663163 813179596 447980483 706029648 880802442 969455675 709329218 808398687 573739691 926438867 627753058 890622424 146054176 969461246 872598544 959232010 695934445 895509715 54842788 374899986 481919570 629343356 47488976 933592420 516580339 677106728 231344734 838594874 187022404 987913761 536636508 698625346 755872646 765192523 233528031 691261384 356242644 513082731 255195839 490816580 997861518 998411876 26534030 253744924 823977592 831396715 291174391 441327061 526402207 940354475 270458061 552174311 306399766 665798197 174554490 608487393 812345061 875113788 45771183 171872117 428949636 751137498 577296618 583361822 521696830 767335625 681908830 974585687 889122024 948761296 165864018 766603988 104254578 826952639 908140619 950861095 104373988 306756709 12630943 336894599 273335246 592247169 175424926 417682977 698582518 742564319 709762487 899711784 351147800 692029508 413886887 725041475 309153348 359373793 412526360 749064794 135734177 823706043 418256107 975823382 409395273 853809189 294810461 445722203 30596343 802791211 164956991 558671861 82092816 974824632 758304177 863143839 516471094 719730208 953783633 989590826 116438689 643165510 780189679 799468145 58206746 207307483 545016363 630446200 953785556 966372401 64175807 929680292 963937849 981166767 352108942 515894128 762639547 895858822 307451670 741168942 601596223 909355955 592115173 900781271 631160035 689894229 309582597 444091427 28607910 927201148 403244536 567075207 245455787 431262834 401946878 467836994 58686980 242617400 509299005 924819249 185657357 678256685 693224451 979899833 261803819 726624869 806916343 928020956 792706527 898588576 138483734 366572264 922571853 960163590 551839366 696644156 816558947 856186554 146843249 942894705 721449495 957035752 912510025 941666510 927419534 949811701 232946446 985882363 84910216 442444583 293299948 622572830 704784052 738176004 519693567 686879269 577214711 840278147 27456956 590913143 518501373 810608409 958427383 966429611 387462000 800434222 931642570 945993244 378787625 831626320 829283849 979425039 770619796 821728321 399583278 969594337 621590667 933700502 644052325 692389996 93040513 277054724 529388410 547754419 979015335 983843205 643506254 774381860 753120001 829759703 286148330 415030469 773797188 995400561 640772375 895656654 90973849 514099453 576083083 662600366 77042677 297633191 742879466 930534552 503953448 778668125 224229119 569289151 609967971 908992319 621861554 973984309 867258780 920054533 643702735 923692366 366764329 808270657 753288591 957329213 901020869 979885590 508201788 726052924 286803900 573746053 229044366 846754118 415421394 777939383 785579771 827971464 227627687 436764986 275703777 968228769 607120361 960715995 354160537 443291593 301423023 433209216 9439689 130352829 75618011 204487306 755013483 989451780 313525861 733956532 485922141 604145084 398019422 680679641 934715700 985137875 525366663 744390049 496838760 576796402 28764077 605315698 634976168 984970562 818168713 975095965 601309042 695490195 462999323 653660131 775812095 783424247 960106946 989073131 240286544 359042815 274774244 821509298 851582870 891429992 414831988 957188178 208236917 872945460 414805436 797285878 243135344 679080425 426208828 708076783 270651092 377443403 763574020 973401589 912541969 961977857 440835285 980573713 2388923 313817783 999035714 999231216 369390448 468972665 854455383 994570570 850200082 854187151 33702319 872516834 518669204 895849417 393662191 482544414 1796700 104179161 301763674 987248358 462780705 536029257 538375791 984142184 457411682 733145654 956880716 957642776 11214408 494925955 805528195 808627910 463033257 605515511 368525391 946176597 873941032 929010159 485835303 899910101 330980167 769867831 339683578 560608306 85744732 686510967 775112630 972002044 862110884 864323732 138748249 635055620 271286352 939830359 629306169 945211204 752877338 865595553 650949210 852616241 420792257 790406087 960335269 969743117 451908847 981128509 918044803 973808450 283910357 941528801 68602020 331412474 832655207 912906066 148671145 460347866 721512584 960508626 204582005 755085324 241934680 540679055 866433826 919796568 239129411 396967785 21866587 131514577 993507569 994776802 231282616 737651927 373269339 611975956 926422473 958517275 930027106 979950278 684277160 887144101 652109283 659570107 782083633 852974476 854792239 955261596 58351708 479320779 184538967 609436202 131440230 693527476 691538930 691685620 44195984 711985468 909085734 978324662 902358598 993066489 674116353 690829893 575887124 978888832 483485109 598633233 379549168 859825469 258398148 635790573 788939200 933384070 643710255 672924106 78632634 445981209 678576793 816170532 50156696 650229187 793849890 822405698 28493686 259017779 675605952 775116585 542768175 858773858 467766150 838568244 424966820 816491525 617963882 810314216 93293868 208290384 58491218 809263357 581406410 811183580 861696876 981237651 986435920 998533209 197621 674100195 371294689 631750526 414284573 909001316 736448026 794434697 498641100 694954540 154710857 592063992 758510312 835162530 571089470 858843933 257037991 456707059 10162184 237512911 206811138 735650760 179687231 946197145 484485503 491421337 937482014 959928926 175917616 386019656 273791697 925119865 143171530 229993568 480245915 996164690 611811510 659385204 415199470 907508401 186853234 770547014 130385547 611089592 693530541 834988450 969938657 994519362 25707071 431657071 735305875 958083423 441381447 772678109 227103173 866742582 934975329 970712118 355260231 499195939 968718839 985154788 530203257 906815460 180678490 830223667 136619511 736112018 178134377 249993390 418085820 946493459 206235762 470333556 85977267 640162643 498964957 747206888 597982543 925994664 43352597 938896729 876433924 883105136 907135883 967398496 772713393 836642196 443613931 931046666 37900504 75728978 47636292 858165516 944197408 964946720 617942826 904063881 316561601 653968109 569939970 793879214 960319905 985570824 210409219 737117928 652794100 970270756 76344734 727723110 558928792 829299298 173296150 584322568 845418544 881797225 51778504 195824029 115388294 457875971 398814449 487290294 801940985 868089690 906234381 995967610 40682015 605427818 803422593 876391105 383419782 528635553 75382330 118824295 386328560 439133020 279306956 294714094 584179733 636240601 119196134 377092855 71983689 139248048 334808532 679050838 767683558 950461456 6339446 880580633 192433100 230383901 836071489 885390945 575960605 621044590 990853536 996917605 471184125 887682295 556421552 846263187 113761595 529100230 93282657 598113674 403577583 755373259 323501356 934664528 21625415 856813768 220380071 485652994 213723227 794757826 862960483 903578917 730171590 759799383 310416914 739848910 569330323 939666076 25982513 692948035 778732302 875978806 78861889 853969020 232838377 348227665 267593624 274314071 140562381 853522615 408530552 409064738 398213452 651225165 623944019 839777794 792624453 821725140 210621046 814470753 604668759 686558835 314581508 404615826 900066602 910845298 258333066 908051217 223623718 445850330 469427108 804246862 699670801 751679372 884444279 975626254 211555429 635846275 999310550 999384553 929574001 959497374 935300694 981831520 946584493 976897710 980714764 986501001 240677001 731279120 610222154 685049025 190563634 759022490 674329588 964255779 158904552 458592532 493469318 830973068 435942208 437708220 590263558 980920148 253350702 661421190 584299229 787288348 508392458 974724215 590850012 937920664 137847470 402927742 554931812 661245844 944094053 977950798 749580485 825596087 792566244 865720866 55966439 112981095 707183596 951203730 698229443 847342179 735223773 996853779 538726771 694620588 712040696 774647547 97398463 179996014 969660394 995471482 344272313 880102633 30789551 408529184 57686470 417933522 104816916 162595676 398649344 445755960 584654429 901812978 420562803 633773406 554875953 845804740 421616049 447574644 511697475 546958014 74962783 750174846 736171908 932030899 222345836 231493926 805685643 982998413 27575422 350056738 192255709 628513580 585278341 597592764 445401444 759081485 518464347 733596575 11039611 146231319 155589330 260981582 401513160 426370791 745317410 827747271 366633041 778886973 721326743 895772639 285871004 567066614 128009180 659994587 829371375 948624771 674683257 871386968 654175144 778961027 190655891 990167053 447723085 759256130 36758132 726188669 95004056 799757643 499433447 875251079 364150204 721634974 15866193 901903164 438167744 705221641 302947695 571610995 627503062 981809021 898724001 957854126 974349637 995402659 602046640 940240857 324820487 524414654 769676765 808695805 171985248 828038188 692448756 993019772 20489108 999083354 436395597 450041343 386085891 521732983 144065582 364185878 367444258 632093801 294006993 425957973 960408616 974119514 243578617 720115783 97668117 623317286 750735673 901189633 804627685 900995131 989248838 996981564 415596148 486712421 85401046 177742101 934449646 970953120 874068091 915874432 917725348 991417650 587966056 842224692 109161650 137773502 682774305 970678630 228439374 231786625 175878831 760641936 802115616 974938305 652878623 871358105 378919022 910623973 957833225 968445394 910045820 910238436 524343363 891715078 514858546 582792638 144517027 479153668 538651247 648672599 779375430 990577602 396571152 446553077 378616182 448790837 351124693 571480128 251464193 678610635 168155693 422535477 424904207 783572794 12971005 903529653 388134394 422827553 318284634 636846909 644336883 840398217 273936636 933997180 686035468 710034461 995777315 997230671 579550321 790424087 15597453 188766435 494422424 625544065 212306664 738170892 632391329 960535227 72992423 600051992 483638990 512339949 895156421 968542600 191315406 217552377 399293839 583360416 181638490 312194690 362553948 797802266 873306427 873812146 429388099 829865174 496457327 692731344 962024555 971312817 34165513 362609706 681745309 816952215 689114055 790798484 205087631 783850128 104426024 144047312 988615683 992544550 737808126 756704267 226937939 493386135 117361218 506782421 412702432 618075106 987647427 988565837 823784306 870667107 753214436 846553804 341597550 821809642 663240179 672711484 107833075 424146132 242386271 881461738 685026133 963437635 153137554 855581570 83566881 990542879 529479880 667948484 267538992 612676768 854561136 990323885 368903690 416609911 995184434 997478473 172977992 244103095 470654704 685450953 266426537 969346912 842012891 868109737 176305965 753210644 182972425 727847355 504015956 786086664 921516201 945901610 385978621 808201403 115501928 969518838 337752938 719776102 205165479 435377764 377931716 906435045 793839978 975684317 789093890 948334073 65637448 832916965 32656143 61765962 477308491 748572467 955634590 975545152 916871217 967525064 537713165 564060796 692086799 769637979 907838508 997830019 850915088 892096651 912832285 925538006 707853524 856033842 188047710 601358779 908498489 985803136 864443271 986567045 96871699 270726365 807474462 927674116 158148552 997759852 5408669 187736013 846210675 925583042 937066200 941357083 119009475 959934851 438295993 806663305 638168096 794673798 440360798 602056186 635407607 940411104 524553528 708047621 27747984 558593525 473809945 534949609 778979895 794569020 397626747 845837477 926941576 966115905 692891823 962097999 583619116 585162735 911081175 919926615 667557583 816853288 813176710 874875849 920002600 994743402 199751874 334785709 385101899 675272785 309290109 522442621 47395540 721284946 427698111 918606356 508388319 779070471 31926169 981774072 561635794 844694402 689198328 802042522 166467826 858264583 257115483 566442009 546430486 685701666 60013 769056866 4511526 902526415 944947784 985165073 598812380 715687772 901527945 961180268 941898703 959296593 315744469 726960764 333835700 952870475 522144647 805501840 920810677 983575727 85840784 484139225 898149445 932196843 223283888 504490370 889053592 983659084 957113940 968322667 7918785 720494294 506492338 630756390 120737152 498635718 70371413 161968849 916459165 920868536 449678144 978863419 300246911 758264189 409691137 764158887 580226238 815402747 359471572 832547901 693365822 866438470 989737054 999228287 391390665 484561330 857509989 991326502 606790332 876855395 217310250 236488846 454771135 998779857 672396589 868261955 445426662 716267893 895995148 933445383 160440962 200869260 766590985 881262212 714919694 853299749 230023146 611411240 832901940 926200174 834073267 939002451 870570764 988648612 566186568 862176152 981209246 985796536 740276421 990647297 691224888 723983110 60920912 792860710 18021854 55516538 45534986 700306784 814016359 836212488 88136608 311728714 279485350 913200420 595636838 824594185 655294870 878535754 611645620 807580238 806295394 977558767 175071291 482556397 885607811 958687683 257394181 957909870 146390252 947890615 890453445 957503034 756390140 932141581 665548966 981878184 9900640 517469844 772306758 904571256 350232792 609678231 776759706 848062172 830498596 916529687 764620026 850485123 671325882 776604360 563205959 663262126 58429139 741302007 163491168 501902229 367995597 488520983 137844432 254152432 680970434 713984358 597652261 793039574 262239087 678739371 111082413 666265453 782665924 902618405 536032016 687857846 724603586 934991235 712503861 852071832 70206563 532725113 402820337 487525889 936328700 960336810 681144596 858386496 348851583 740899461 19114414 291398501 263169510 853784164 929531554 992524692 105784140 872660674 650974074 925474326 714900002 962833859 634180570 648566915 767810988 892699007 478350419 845727503 385676097 778723950 617381787 980899156 102718155 535798745 798921609 972177630 625152948 986895168 253085876 320149712 541065759 636636590 512360325 772578051 632399901 918673808 154920241 944372495 886780211 972140858 34228198 399377388 195247575 441745515 672367479 953403431 638412390 903540983 929602262 996862690 985796626 989224176 120144730 933022749 402938367 991688632 603953758 858449615 59969027 625105813 893319158 900278264 336702561 444422101 906497348 908037012 202086044 578942137 250394462 416734826 294703491 748545385 707713511 891800638 520440125 570026359 894086779 899554793 301281574 639504988 552124140 590311684 3718919 548448756 16747292 642837215 30256467 416647093 323417857 929495428 834517810 959062363 521022320 798230668 297777313 345563686 624863463 696152211 695234338 722038095 614517248 665110086 820280058 883090432 91627622 195487850 413717195 437550737 836862115 885529272 180522897 343225092 728945647 933304416 549301695 930973471 888493542 909963218 42318129 387576981 375263939 540132469 644689165 879185994 337816631 495445695 99371962 512215253 440538351 761195005 809883975 910757286 6596130 253889918 581852342 885694576 222472220 862903950 706695119 786527094 923579872 946188792 213375606 296406090 228234839 876341449 64109467 974245341 431974089 987850920 74835740 464365258 268267934 578067190 431456705 772604744 86131462 465052740 270528362 585817139 33626834 114524858 236468122 432553434 568910128 927843382 950573570 992239312 149497801 913134096 677583862 678295925 717033250 733291018 978798090 981829991 766742641 780590104 895788324 917014504 287340862 981282001 258073851 901243596 782547622 852011374 852502161 886687336 884135044 967760141 142069540 826340483 497900832 790582145 985870317 991143971 199137064 893116625 939641881 955069486 659373350 742095760 432443938 889348993 649930604 924501269 710886756 977073306 496767560 656261539 921016432 934247669 907012000 970078589 544729922 993220567 608403978 654746805 403375047 607773048 518843060 993341759 855263552 917575336 996400430 996791344 142370009 943527929 883825480 931604786 112069302 200343266 708003127 923867105 62668869 931052581 775935320 867714645 895396442 907942845 426895193 899313121 24577825 170422937 411383570 828464228 334701909 680816557 225540610 824013956 408901298 519267108 379821174 976506108 116795464 708759686 114990641 475927748 353151187 375173953 340325653 463634257 893768172 986681177 737351953 880125699 770545139 958316068 785009888 910295672 749379493 785986112 208845451 517445140 842147335 872047429 753193087 787994259 884699154 904589167 401636756 951212467 90686485 233406165 198077653 548277661 668190175 719733230 234234175 949765542 640231156 813729394 257423672 780144963 766088551 820879771 13354593 246571193 406231380 798944661 1785865 621256320 429172092 540210797 110250066 539438573 418775404 805633257 62206751 533557225 665293506 954413462 689694273 848759602 935447233 956341590 612883114 629157018 403687705 413344197 658395489 929403172 410051362 654530914 144222037 538888305 984380617 989263921 365462678 869889044 285545060 536317076 389506339 797463789 617929292 733590824 28465541 722371055 627307660 752106392 862197080 928852012 210985762 534757420 938062935 944454136 403319694 830499234 572665688 924238272 6628118 125498614 629261915 912524420 523308287 562335051 222645062 442898243 617069503 765484636 25961207 416949718 249608147 706346573 614956525 989612881 518090503 586593448 33950417 635571342 443608542 846640586 451885390 934106678 968150373 986825829 475529343 712954064 372608250 448329976 217456678 358884794 992413793 994591479 593235524 786598710 67178707 153067223 220249184 391293631 735524207 764051746 80782610 544439148 915749742 954717060 730444942 988290597 928882173 954180884 917102654 990397430 28731449 76231739 277286144 810125751 302735856 468616706 577509293 771662493 166034878 251827938 644678847 987200502 747955553 981162935 722820323 790322321 49935684 766382514 684712347 996194378 527392723 622300914 159939861 600850041 615517086 869159672 352447352 371633942 498341190 972707524 687431523 912784365 992300589 993758764 518217126 696325924 844004214 917055533 950285635 969963744 238303349 784911640 124435123 528488863 771353888 780956957 598889855 741656099 838934759 910914612 27239682 794562640 421981760 662597303 276505300 808390501 24189737 496383819 355907603 382787778 897806397 956467818 718320408 959856980 237787266 269965419 382502011 426571265 288982051 794427574 8343859 431560420 458432245 610576185 376812161 734668765 976997493 994732140 859070167 885372366 978022739 982679382 831558687 954947139 829121527 949094241 409953832 474732564 512483955 874900532 290650578 300511289 505552332 842083085 31181160 774158806 236692946 731850024 502340373 759962109 891112265 919056935 175481405 458731532 204809190 816047451 338499301 500886259 146610362 930372711 627424013 869595726 568452842 757025947 723473948 778926316 27378510 230361964 12701209 917039980 44045904 142107755 705688125 756092800 186973009 860078616 855448458 893320069 295631748 677370905 418740666 528137716 678956544 700010146 9569218 945621396 782640615 810983748 678749610 816784999 146540791 748888355 394036963 701521846 698159380 936940513 352644817 826683920 442107810 881593918 384837503 994094143 488576551 821752269 538327958 985982446 988524035 994940113 868609323 939273361 647856591 847593752 201850811 461123228 505032178 527920350 79257139 464112873 775419233 954077369 145616443 361200853 875670504 895552133 906467870 933559686 995773320 997719838 278718051 906470128 831711962 959814614 683066162 908084537 845570381 907378318 817775106 975754789 813756078 814468030 577478594 950528799 479474692 788973166 765899910 786279767 422004133 865079989 842750331 865512725 78606462 618035205 397436768 495054072 282947008 944307680 936745359 996369581 608804589 753793880 276989813 901900581 87252483 715113558 995986062 996190728 910411245 920447320 836110606 948748148 591359268 755554776 999145018 999295138 454212510 466392768 443736456 556436014 76922186 904320276 491874697 669761404 558291774 744748135 862676335 979640472 705620796 897579530 563134840 918605669 119105138 251116693 496659893 962151353 978652370 990189188 293895970 791628960 2757720 891145299 455048790 985996764 916398723 997906319 508316077 791435130 38082525 650552268 132683605 516981673 367688566 647385481 449624004 997094031 444058699 778640865 915959875 996286839 204897540 893662841 545688647 720349762 705870469 727065758 937570040 990643378 663481859 823891459 91657214 465065001 125152176 561792396 294963080 758579447 741254933 995116146 283033591 555625920 934827362 938990457 231088172 498963515 334298925 730612380 196773729 512602384 88848805 974419050 235196785 312651409 444491844 767811781 56457545 671606551 322067453 949307968 46463917 937777610 953873612 963326680 262632477 586946517 779985457 941210525 1110873 442009646 249652522 785338586 15423985 171866881 816089087 940646999 583462664 729848072 618280491 691898580 938575170 956855488 617067525 704498307 366917520 389530526 664764949 887454215 783499712 838713661 232234407 614057634 349143921 791715756 515560683 990928915 353551247 858213209 994744680 995629248 962068083 981070871 905547250 940585001 352343075 957760801 600137270 870960942 83505549 348887884 111010476 436237276 90176719 674435126 232899354 638650231 320092806 346232891 125761863 559657677 992252219 993877065 685974997 935664436 265454575 422843440 525577794 539830308 467179139 940775422 832296499 982551030 891996745 998086058 424268053 623041820 859619852 993884060 278660093 798361632 472451025 748788988 553325147 554426311 857291282 941219059 580511621 679260212 869459052 932996261 610145136 736294278 872228713 902670312 645767081 772239068 678841945 816282134 699205883 969102735 229462067 425365310 657228969 953548784 117648371 622628096 221531791 586740497 180784738 299082897 857380594 989317705 174079511 408163801 518516617 584009093 731828968 887282008 511940063 918514648 288846237 726522047 263888635 682949846 622637668 742633827 617568987 876021485 106056086 266756386 407067820 699027023 683736428 889117663 608457657 792641653 188495115 221812699 996001978 997659167 203310063 954874900 728399740 987481220 16850528 62337783 230360062 568567119 87480137 893755615 971784616 983089156 458021795 541313232 773536492 893833778 308835180 401906667 78068717 733983422 465935605 936267515 60702563 405365056 693581932 857527760 463289356 803383667 771581631 992437910 474944613 537456148 742198435 794344039 324291614 620103712 283168708 653098319 428424698 662857204 654971644 990018901 642778628 788963164 806882940 911856174 861855104 870227170 533285041 821908527 513342980 932848301 626080849 704590017 553807941 876729842 321562776 590849629 206482179 776454198 870422498 901879355 494805773 824529485 86574881 374113627 643577416 729164202 855632852 881806107 969783427 980082410 237913935 528837275 513188379 816782536 799641335 803465743 941128871 956058563 962586909 987574021 791848426 890279892 411101361 737652338 634866963 779018761 474498943 638699735 796775419 948417351 440061300 989169451 701434780 764107122 470063246 866764789 82688882 457445809 629132960 898765075 557565299 632319836 832555839 859818485 711701863 899807842 132084870 624474572 566826542 920709506 816362312 825943874 726326757 909424770 343330684 830907480 790876191 932263101 64301106 610162156 102844625 302946023 690157576 735886601 566607979 787198460 774138327 861987947 616376748 902690986 672270228 895139816 612623592 645672380 34380784 845931684 521665620 608091506 566420419 817068856 745123447 754919538 627884719 933698655 878293979 952205001 354501122 787153999 212394040 408096815 646369048 737791555 405096929 919528992 927419439 966939029 470587462 731875903 439573881 898449518 595752936 635831625 858826983 991104758 457651129 688069066 577871744 598146231 439217236 774939746 205016229 807499617 356226493 777265907 480474678 530132013 203946016 781026381 251946922 280192245 163027845 433956932 517520180 577052791 787335112 892850213 807423099 949928729 532117241 884361640 531999960 563573393 398093589 590850498 249870885 370621047 940816845 977798873 848182505 902122369 759081885 876936864 6371089 25997088 260489574 405351001 659206072 703368944 793412197 937768436 950697074 991375244 630867236 825393532 688954735 856470280 551515771 727235121 725688770 741330793 755772241 961572420 687266753 847886955 891956292 919713434 66309871 614612769 723976283 856882892 724978578 930412446 276236049 575595084 155442940 595584685 849480859 998276458 221413983 807632626 515375913 602749490 652139737 739809986 219709409 341585363 845056938 902843042 90034416 997298861 167581496 968674363 26116569 455647025 137089628 512108262 933646815 953288917 219143503 364781155 74800089 87903811 137468934 620536568 825819598 971791821 665765645 990324641 949331935 958800924 504143712 892464909 214321149 337994418 125501844 264492123 344118945 609004009 703460244 733012886 864231869 963896117 393770834 543776525 482068430 713857161 771382482 870839772 207440421 930425519 418073645 424220585 718126137 921687308 826570428 993204655 981395303 995521678 808488830 851492739 39494031 140580192 446201885 813555283 207419831 540478853 174055571 540151424 837835224 978676421 804684167 813702232 326425136 514087285 96663523 858608017 729012565 849823231 600706643 767492256 546490133 996281867 931330855 959745597 551614207 806128911 203305230 511137709 766616881 812343736 992256252 995234837 947601974 983313628 185602306 286896163 279817830 829863939 399351996 797548703 986777098 999370935 488889939 955235036 981713917 981780509 486752921 999214925 148058579 330032493 86315998 836826095 347490695 726770000 309050848 625948969 356797762 389886010 577725156 856379230 318212213 477391643 938281771 969817914 329967571 847246701 223515173 408477072 550727304 882866206 823444233 960442031 805872385 921616090 451937739 838577380 7178040 77586899 639378689 652783174 831190258 919668755 656206943 736307370 835096886 941959566 525040483 605417235 707483199 889396272 139821928 449322450 664033338 951544207 593745158 930357284 294181282 822073935 848189015 883982625 688990062 812090151 30076596 177225653 985585824 990945335 459572695 575216743 584700392 823361847 743709834 863875616 34470492 654369791 434530156 596186189 405301101 947722282 842931456 894642772 420763811 717578774 642973814 826052118 666995050 721642204 403391134 896666548 869063734 876536090 495507446 538393243 556831732 971885081 34405977 190854913 400736977 446814685 858462890 869661865 71861773 239107601 910379594 923898076 132364761 929764027 564926809 619728971 438915798 768434577 362992550 469003033 140037038 166726959 571038965 820081389 583268155 776993109 18520382 160027512 159785173 448576539 49557635 621096584 113875970 840077974 858324230 869399341 660324998 805241699 587850287 722914799 518247164 782612790 518587319 528664112 160038987 459146749 323650602 427701543 368191958 637721976 483126786 985199739 816509142 985210942 339510711 859789687 416771034 741216169 449608077 669558224 971180960 995777270 266876617 771305459 321684712 618697739 5186114 624913846 390094346 842069913 119041008 626855682 570309105 603789718 216931044 673541590 138324497 986844205 938503517 955182189 661852728 997469184 446041530 960975583 920443299 923292952 990107330 990772396 269704873 948594512 841122039 907582539 684187766 788567637 719437975 725458969 927424424 992599891 750483141 899067359 853383062 955516939 419689331 964006474 82117093 857281530 361101881 917433341 631519905 979595725 974309360 981413584 66048666 589360919 351662189 400789531 117225828 281843566 197545811 360786942 498683063 575300395 683933885 818167895 919615559 984984927 423264378 920778793 262999602 457740062 190041427 292586780 346774401 520889744 103704750 738684069 562886830 824415666 697102236 760801005 66749361 735262277 791037611 867939562 953153099 960466592 800288611 950678361 965318440 978556959 488589423 946405231 43955847 497757141 681146679 736228683 136152645 965346004 744232875 973082637 241803137 537935918 340049400 472133314 123286039 654151942 166768959 552665643 708293801 936134590 542326320 854532585 627084485 630029262 705994953 865612472 36705488 190028065 47337355 745717283 195487669 960406526 170369967 285610172 397842641 536547578 809616726 996425062 469966252 680356651 396121722 737285379 868820516 877484082 814945272 874975906 250766517 578516458 992289729 996583626 417128674 574206993 185768510 375649065 440828439 722746952 823184552 930204769 773266336 870608945 412436784 996258346 842346928 864375488 336920048 348284152 557886147 619098918 993192982 996610841 743295500 908569971 821163509 899477214 380769434 800727577 404238046 822175441 561681663 848710994 490238726 644556314 680705115 903534599 790324863 806530568 349315484 358936324 772726858 786883040 686144118 882548397 950735348 959088237 339516288 938052411 851563647 947990152 572142493 715609826 816376279 896903391 714684915 943878227 819615066 835382910 429151265 466429607 993469074 997549244 239970992 579497613 744872371 984068147 671719052 839738474 434121918 842812386 718053750 888548637 795716874 917200156 553583622 618330414 78272019 638282169 328414786 423572379 998897931 998898442 100167470 358514860 417383364 804421789 918329787 932125001 867688015 937936620 853804980 889682081 301721728 588452255 229198738 609404424 333501391 459166472 486631252 720437351 230542065 541756505 883138832 892476784 3599866 268841711 560251269 816535661 213243906 807535852 166398521 744995614 844330032 998795075 333295103 721545049 484095027 995686961 763286098 768212635 787234381 832856255 398091349 486919293 450537606 691664493 540617052 708975406 558434326 635380148 958553489 960988215 167917468 238179604 10414250 471618348 134737048 251631598 740586287 898439645 128140065 610860599 715676698 793252004 174110465 437831029 546275958 839249101 548294095 626241553 294912295 912455721 430576560 628777991 106856364 209890022 146571188 399204725 106477664 687392220 49019659 363179546 940812872 951383129 124307854 238369996 839315775 907882912 626305076 916862712 487244567 596597331 861246754 911010646 456106702 755945721 224423712 728650823 856232155 949252378 501329337 652241797 693059642 725508503 882342054 958319957 651493525 934408589 312915901 597792034 841885225 951844769 295993568 908615506 342681724 860317516 610231076 844013258 203791860 849064730 808521187 998466824 820964734 956145631 276337579 558696247 886442671 895105318 2408721 502698149 560843957 960181941 311001620 795631027 650826489 940598617 258724383 624446170 30315727 717383652 400964373 970277490 188343457 884592963 993263779 995530256 775656263 826391539 147660069 205391467 999262116 999308230 646525630 815968623 7448529 559397283 484006729 737843072 378651942 534531016 932829814 950643634 739903774 941480484 734284752 949432800 973694436 996487065 505814205 664041513 106444391 731586691 795892511 959896927 111177821 401391193 90157384 798487619 981748330 995964173 756500174 820354390 726804351 793269116 852594585 866286828 985110233 986240736 650263248 877181730 666375336 772581674 659368030 677416194 60507655 607934779 189898860 809450873 170428958 948873337 192438906 348281426 406440556 836479341 916991616 962687571 10926184 801500117 576557243 836291729 338047407 541404650 645664268 920609329 831326665 958222158 194260093 971814394 609387033 657290118 151693884 868906831 480028366 676748950 619985231 724227356 779333734 940982769 481816752 962741712 289243451 619765585 152865770 353392479 165316570 396462846 63139385 164487479 53495213 309698156 737530822 802346694 90739579 427690822 132678650 739938205 673341279 733132607 174022598 835564477 780434744 886359904 795760160 822376558 302384498 805682313 833316386 994457722 14150563 627382752 257888928 405075778 716290214 848663705 940439362 976744583 996960529 999246719 902240210 973063800 532205519 818526606 370739693 825013931 823574520 940994318 212441180 561305775 903690254 929731150 107064118 148290674 400275964 931420583 379481341 760950170 549824490 794363562 379282659 560725711 42588989 478281867 127241496 198065986 933373041 968195908 216716683 593898418 930387334 936719589 115618275 679859370 509602833 811350851 534299741 987901532 106703135 910907617 795388808 965089427 82720732 874592547 786815195 891246096 640378631 652753737 917942451 954944503 967866524 994543411 406749088 850097319 359111239 779235260 407631857 795721148 557459567 613773372 678018178 741357669 648848106 934399015 921952534 952053163 342858887 944100291 574399364 831850551 135378027 783642003 581594930 780776855 535108491 626290352 857646619 980085416 175184663 369743826 879463421 948124843 706604889 853732916 559152420 971062317 453473050 865057196 82641241 605710091 919994886 931520194 626472246 768059994 858248919 995431939 995847537 998632109 971626145 979978636 571616093 856302575 841327004 870313454 462205215 695348257 589911362 950455287 411486074 965806471 766615031 909999544 196407196 475281777 20195996 678747848 301676147 459794009 869963680 956690326 210673896 396573025 523716762 561018275 620910666 683895868 311356306 547283708 683131428 987572976 577739286 698944597 651209995 748187076 909533216 966961125 891073628 971782125 223337807 472541807 868958836 988027910 51548620 115781517 778947198 852099064 439699421 457393158 988668946 993396672 319866410 643627790 504237990 580814776 159673023 652740497 186093539 405756797 846810096 945071513 706050049 717960164 764582571 921914627 664619950 868214277 938711144 983347945 100229038 995883869 427630526 457210252 800090096 880541458 596716405 608326217 936718140 949505949 337207104 663516578 267433801 873027720 474711902 866948374 960282615 962777364 295258133 956300500 491306751 942215972 218816073 511727464 295509804 571579649 749509156 922706134 457351358 862369030 414241477 596360504 665335202 826787925 571477360 722153272 397637645 894641609 973781474 986477282 493380388 977368749 782705752 812596132 822229220 946246318 902251024 911345272 440334975 764072031 478465407 655772965 122044064 400422250 902346987 981306188 800978595 883500002 546788594 911640987 325023884 681211715 501720492 690033912 234310493 722891560 798238109 858116104 433796305 462400747 25456749 335691814 67093240 762819337 424759761 861052828 628530113 932562632 496008996 663728264 761243627 949393311 978351829 994018764 194659257 253159048 848012704 986756311 234085919 383839745 121795035 744295930 902348614 961761857 770437039 998023878 270479743 619422556 314919112 492149373 114083885 424128687 10951214 151217286 123448145 902350067 691226557 711572101 944931330 990820189 617475095 876136490 216593295 655879437 867624101 963010424 457787422 907733670 780249679 991250645 264067638 578917269 441614379 648747700 915635762 986215157 976358399 981983266 907661304 909719551 382059373 531901269 444676222 707562110 470181814 768045996 170243195 278361678 636754313 721331217 628894400 888701954 725026509 762537332 436264244 935183372 311404762 551317756 390662620 639653420 68066505 510403650 553511422 617318203 217716547 377367712 31961093 328217392 740491342 989343903 595222869 876674936 385003073 878575141 428891601 663935249 171313939 817079053 725743725 992196282 64148792 853561307 77719913 534757125 752575632 997785542 560543222 691795983 135600970 613968031 548240379 992998343 841552592 873687836 924211767 944714212 910519674 998285148 573245708 573517521 274112401 806059247 909167906 959091704 524678605 953647577 915774431 918954419 246017078 700357796 217603671 960085059 200382684 988875057 718430258 790718498 210436527 338550821 821846434 851375537 428626050 507777207 833324722 951531320 538086332 683991207 893364797 984659760 141743982 884681841 844520339 855738089 598616881 643289164 863071824 957658220 974056009 977522632 978989904 995020405 243599504 505610974 644988354 678844603 497682766 692394618 153468117 704442464 390725984 433597468 187848140 790202203 122993864 496238848 195192879 922365806 841660222 935551587 136522815 444599276 228544986 691633107 420829094 856886234 219118900 363858577 836653964 928534888 724599868 749059126 651772869 771024512 365223860 850274838 916451646 965909579 691028329 761830881 308899626 575041119 119148919 937974857 570977368 645292830 822450197 959721520 813522139 987860877 622178490 836931668 498672500 616124901 10862260 252773133 154077169 397644212 292310521 978735899 935302944 989733426 296089983 540803350 338843498 379130097 449141356 702336310 7490954 621136650 880224542 887250323 658234756 826762341 995695989 997699940 329942185 598902856 57100221 771647420 319598548 937511500 221469811 530438616 13533512 537026998 851223962 907233845 542603408 780641720 488982870 973637272 941020104 972448435 903149053 922974368 859538516 957176797 492265121 682567804 907428181 967941342 496057481 569313629 939993071 944603129 336281029 480754801 423456555 797134519 324359885 374765314 756905294 898164607 710156014 868309634 348769580 524796949 312687378 701192624 454768749 849526820 137275556 835368356 195033569 719655053 613139442 912420518 780597759 963662416 430811748 498732263 132900899 338865582 292958153 426048810 392008786 486569672 815396887 949595342 970753801 992674344 490815925 769037440 411943491 546236103 973100386 995433639 202916516 209133050 805018642 996938101 277905920 517092505 332666358 795846628 660093056 935774990 907929450 968681847 409435048 825063235 798520336 824229051 893691980 975938237 647040576 784300034 164914947 685980806 853815623 984769116 431218185 922067071 737250739 775169249 704557776 728468267 714101258 805038891 54130565 715004270 983523269 994253656 347983438 917904005 17619966 141470157 818038872 859061989 742156361 870652066 997907566 998450524 616002093 660055452 679214640 901489680 844839942 882583182 4585161 970702810 388225374 796739031 378920734 627516986 390515588 874545660 103354231 113167706 773383153 920289720 760458412 988711571 234972123 248654342 249334013 669128054 268100569 512784720 350260045 670003161 938558706 955463477 759593397 840821592 289407037 728193172 323369603 543292719 299429994 923309910 51193649 667420407 914078643 974253141 148459432 376890944 445529224 466997696 827658535 932451932 654818543 900282888 48900952 877885780 386373564 659106625 982878196 987539922 918137316 935881356 119437374 936544912 602331128 671301301 880878388 959617719 78018953 189207325 840244638 919388822 181882757 525088352 102558470 165016166 242559272 274115344 224833364 413864750 995121235 996407093 559624729 967092936 126071931 614721697 169597533 464986124 288351133 769764800 339844169 935091890 866657856 980865583 85118743 151981750 823000845 932420652 935529459 956891959 794536133 832448771 633861204 915179432 341419975 584810503 794020885 888962525 135039671 786151460 373873596 844466404 78425270 521994343 687528400 790858838 293290295 430543871 881609528 920257838 432464293 936500377 341136971 850332594 366996229 555843947 264464469 971066217 54102026 553373605 825346871 868597426 883488019 902819471 483791353 921595820 351726225 402212960 765171849 851927363 799278763 966750517 49861657 406869980 8893562 263664875 417854175 772276110 709361812 763183351 643578485 872318684 954213910 964705170 560818020 965215766 689250514 759930735 181485824 804265842 847331934 935261515 154701988 790060812 484901493 678954255 849652404 954242057 931510678 937423264 131703850 774584671 524083902 952452853 680011259 828795031 734472493 879527526 979284039 994293031 328203220 400509284 535716471 796627633 69100771 458777814 438854854 492687461 763324744 796528794 931634301 969359344 405254782 951852186 567154643 737919345 863391090 941069900 862725631 949444128 653728376 871525752 628847394 845047182 530251557 610191612 752760627 778270096 933568291 973664107 900761775 956751257 261102690 786867741 808606090 954121068 22591945 394990559 389336482 722115663 821908132 975677560 273702218 347946851 114127229 306183205 367196580 490320818 719489417 858686622 507526887 698073164 834838040 897476314 223774801 775357507 648720203 667421324 611853884 820228081 875095074 986332298 387967364 873383876 297273119 479847865 981447216 997716847 237796582 918476149 554793050 793212570 690116414 988421596 192977078 551475945 373133714 500980719 322871083 848543221 924517615 965669943 469770304 879033879 613719214 887599058 684750410 931558909 655070932 787526608 525895389 693022988 980492214 988790384 423013290 974292015 191671431 270134312 922853470 991795351 306243103 362447534 989888156 997504923 134119671 438238146 25409456 315521543 567591815 829695386 112345001 337445559 30631292 756439791 901687394 987135327 885812200 987321138 374210209 581648382 618369971 917481744 691291836 844253410 47331602 714163936 233750759 536825117 106301930 181550831 162479294 702403543 811749667 974509280 440548610 757080488 804737312 874500418 657479340 854413384 10017897 64828173 713366570 735028964 827403254 990492911 956130367 990826264 946384200 970408337 892079092 897237705 99596681 509752780 814011200 884586610 46219883 134021886 987060411 989160456 522513890 757655872 174851551 760104085 173604585 371966836 152504947 784520442 713244366 870005585 603702999 835996806 500225451 787131886 117027520 255218124 607655037 896923676 827608941 899886834 28226231 168647751 609378172 845039071 180508968 199655091 317109629 949682121 881875059 902618501 898837236 907340226 161187431 696253149 980674510 982039581 216114534 312969286 856999312 992867920 110928192 585990156 933003239 972922739 252667830 379201846 504711666 541542699 28723852 762234203 651707730 665251440 818936106 873144468 742504018 807741927 409034806 552708397 778995292 878115943 339378167 639276991 970768403 979186383 685851286 862293882 570294003 798142707 363631665 473195180 707734652 898942874 868989879 957363595 742352829 997013765 743449076 941252525 46032963 149078133 559956559 811721863 713865800 768285211 86154587 234433605 530717532 596183309 642964978 882556898 166975106 516690460 212498988 372621987 883202541 996521849 174793764 219797201 58550067 360991951 158174231 510632739 473937362 660564641 536490748 622935881 905732987 943793196 407938055 699177389 544811011 879006202 208148609 481084788 659801673 967362679 441461361 765115267 146875084 759403876 479110104 571291763 540379976 980159537 586006056 894957004 229474016 679104145 440717670 469656966 365961303 886650923 491212939 582742678 417568649 659982477 735740133 958585321 567680849 724837461 31755214 698850887 376174164 606037813 821503738 960638338 504944631 568709474 652578412 713318560 179677919 488489378 399571509 634584428 319983855 943173933 431538837 455566606 978366700 985885035 15721161 952358927 726689508 959430038 532352719 788211417 781930679 995792239 695821016 954986869 55035092 227917353 539769785 695149994 660457863 690261817 720147955 893225542 693076954 978137057 610837162 878972402 425047327 884655717 660310534 992209806 189167316 824852607 610990154 942840627 488971967 786401420 346511857 678685038 164313112 679524339 328175892 420713962 928027117 985942167 343709187 409772593 214114945 733233517 393720580 768519401 474650993 892299794 102552588 681087511 712543739 918911097 165396234 447384949 897989301 899561853 270485290 587441181 844539924 877491049 200466089 358021246 598775367 776053751 911692098 931359458 120284272 120992400 618855889 840134548 305854534 773144063 762538274 979212254 468036176 876193322 336750444 517631467 468108107 979535026 526157398 907996821 835413768 844096121 331690111 464724226 314395303 974319949 781600241 989532878 844226815 957794993 684236309 765011209 782886195 837899146 841489460 962726451 201232444 669276338 837332495 919536956 324401996 630867913 113474643 740526277 446601824 718064754 295714948 862625547 76150225 588630515 140365926 528948176 342241477 897760030 558556603 864877764 734786030 974295768 936425229 997103468 5396753 197416403 615793950 664021904 936820657 964856812 882373450 905687581 464456661 751288788 822513488 860050237 218684952 260814794 768453181 833867966 721227371 830681631 750285720 951190913 438227594 467113191 780798969 982510011 760956516 793120257 713138447 862913503 400437337 992139992 209488251 563580341 11462273 700665022 477513778 552392696 14851970 617403358 213396072 572572163 351951857 862370121 608083507 990344000 317909721 419671371 508629923 758285045 836753200 923251909 503100901 851740254 717715975 897379961 95631509 941009493 449654429 815416293 581847673 958733550 928157726 946288187 861789464 944539329 919322393 949250851 350982454 756529784 535978186 966901778 830640194 971056599 465661288 988784536 792322702 865449806 513222814 592882833 498385846 855600318 399465004 921098561 842392471 949605720 116180267 599436248 523374368 958782431 883723020 984030208 981204160 993701505 589635009 658151816 724178465 725277376 511945931 800571467 573972879 639491569 151675651 458167903 758440975 954273299 734559007 923859850 955682832 966535102 258756459 752021237 469150070 496552450 442223250 940333595 380363667 423859607 875654718 934584983 101157833 393981812 393604861 789629980 176306909 216491781 532775089 797051531 428551250 976507872 606131934 759155626 173751842 476426808 815793029 969238338 607047393 987628369 678400582 768931126 896189208 922262905 694970555 720867379 288435903 887575604 536520531 852413350 180516053 854811863 526903075 542077493 668533890 899637693 119162008 715661479 930776869 976275311 416782868 538435538 153154304 399748872 885721377 945616992 277787079 637100884 39736380 914184404 673527098 740402170 606458241 882649293 238712647 684468626 879562432 991220634 570577987 613830121 218376163 831071583 125783203 845892334 356773597 919811872 166108181 499947394 67337758 961218818 563613216 863961908 291878732 712654490 988330601 990244636 215792388 892894887 698129106 913015729 934967071 949369105 734377553 931786805 868056149 877354994 904928987 936812977 910026526 968479920 345756640 651806152 737166742 794210316 528938456 867091993 389175363 443934741 602716459 647751153 183971985 766083395 623972009 645935045 593654311 936095219 851480884 938229269 466116359 734351454 229888106 364053371 466038210 705893815 388678169 711225363 583957888 833867201 854865129 934861452 23109955 62924286 568644647 719746475 175348741 475406656 294451708 751840221 262023549 720146187 935795324 998707368 509203939 904276139 99196285 215402359 693135599 974996565 320741613 575701323 13832625 486202326 945571690 996715690 476147510 659999604 462421268 567385341 692528957 983644028 356406166 370501628 179122534 899964373 149218493 220094965 61088709 209204769 521347668 539824792 38748995 82949634 142361413 385012942 399627470 676938151 338708124 804027825 727470127 923986490 717605397 778367957 187328199 627882456 419458710 764884840 33057538 991855208 492269552 583644636 42035518 942618961 694110307 744763523 309205794 956387506 217847397 681843157 290597930 356411900 563215008 601277929 108808383 859394713 45710837 181060033 455952780 664677790 924726013 965272701 447039470 835401703 551326808 868596881 398872713 912893688 886212205 903040613 626460190 663269652 635319866 758158531 183826591 782344079 840074900 994762262 612922570 631085108 887342786 989321681 724742845 818967201 379869996 859733652 652549188 933176548 900319739 988585724 134841563 441050349 558163037 637887905 873710136 874513430 147670789 165425619 724127396 821926252 512611333 635173000 419361228 684148068 714306910 932430973 191975913 855096169 442862489 632865707 107316357 601986217 821805712 983650251 682082908 765292621 944236951 952837965 119011789 526076601 979322458 992899736 508474260 897544904 723481803 798671274 189624198 975820723 864501588 937037978 413047075 996472414 943463302 978884911 376394606 511706387 133027635 933404003 46240257 675388204 132729531 421036508 21407851 662001277 962969604 975310042 750419636 940579835 984817292 989671779 359905773 607576108 618903134 689376614 44099932 492116246 673001383 826569474 378496668 533800212 252139973 282761651 693446397 835905076 9401639 40101201 310608842 453367863 438856718 523203360 350270695 831537944 67762624 673851246 534339361 616903953 353085407 996491692 647196695 900062622 985566044 990739042 36281441 567391864 789141054 812527331 404984135 663367525 880713732 976169666 331895780 345319939 772836788 845421852 679074516 813447578 583135526 873001142 253283189 371723255 882676332 896831443 655729430 843470116 939855101 940872172 949430819 973886702 709019734 781202583 589600794 745035058 202048643 788370624 924298142 949726899 503589097 706725059 940391146 975155355 682051802 834356389 630832038 878289879 894674535 957888916 963298495 990523590 546678321 974744644 539177438 931194512 153087830 353344952 4622455 226564835 742352563 925034334 909997058 963808712 272438240 456003533 980883625 992906366 230669756 914767039 434429868 696026349 660846988 769549813 347356055 920428923 493180546 910824563 531030572 634755244 801637344 953971613 201553866 587690306 48474093 702513631 945715764 999111588 494233193 578107049 371902930 787631721 515747683 572008802 31769105 805798559 141023833 891333322 818172180 996340488 929616945 994726553 155372555 277626328 933813916 951987643 352346423 791549453 537169825 970822802 859913900 986500619 737134940 759794608 214815036 893348996 585222846 773840401 567198717 672630979 689072042 874901939 325236614 985436853 53662667 798440161 475482228 527460453 773498816 906315241 369371059 578740707 675150379 883185788 152893023 328712612 310914636 799524907 597661270 891262235 287954822 511723317 874056144 893522808 944318378 976656105 961073384 976551464 983038105 995337754 953264053 985284395 950206257 980985120 513716928 978971485 997653634 998444187 995409062 996573104 226398904 678628560 756510269 949844667 693858648 790806594 732540708 944254375 771124766 777164609 873173365 941217334 836639781 937477735 82140866 180516163 625193985 837199422 420012864 839815614 8997453 649659567 295632715 308495996 623966457 873539140 78421851 616625857 782465888 855005557 931648315 995447328 470278177 582973102 623096582 939817363 211733518 633719987 320621609 815430832 513559369 599977004 795472212 966918370 987699533 991035137 777600792 971243320 82620687 551629144 392515485 667063544 721408812 850802309 479248844 864483266 151288946 325111579 213287563 946861282 414528541 488852817 351176878 431167646 107173028 120607584 941642771 958052960 978376217 993169001 679613632 716791459 496630328 669801126 593265436 793881549 396997356 999060865 700295646 763823759 348216784 980232820 346597461 493186663 648772964 692994155 888968467 956443079 245763155 979381369 601094661 700068576 848276173 884716483 157841927 875286027 236289602 773043560 984081366 987619382 806266305 896788234 138178421 326046607 964744714 998037327 600096764 788221968 666320944 996654990 634205727 969237954 689774323 818940452 221339814 836729804 667984289 989882505 652215428 766022492 699678425 904643038 998067353 999378495 258722921 620763987 528449138 794974455 530047003 983561866 454721795 471645015 132965456 205608207 130203837 986170315 13187729 959244851 471715117 887385002 644614958 797684063 213821015 222670859 200893319 333527585 981285585 995103036 821669514 944270516 794563849 925296560 566479464 785431717 322375866 802934103 978827143 994772353 635918119 928816032 25665883 542691381 881439906 913487117 519801680 681541117 613994491 931343348 107519588 319108660 582375011 999036320 429896153 731171098 932527204 938328233 558062492 574358697 920631871 991990360 9597917 708298819 32884913 470697422 288475051 875918587 159638149 746119394 280363096 394054418 491170329 688727098 94849304 766607306 777128548 966760058 942989051 993274287 200504164 511698851 444479604 606959731 161083751 559340083 20910708 51217083 623798969 794938444 248008610 384393824 148593145 163453211 917694255 959056151 116341110 767605696 567655955 921209165 143003769 262351248 804097756 923149449 932198086 989473870 823020127 940763219 583200123 997603560 726020119 872192610 435722467 772716335 852826300 920949055 559500913 587819528 657401636 841477226 477042552 760096855 473579096 741094585 899817834 932596696 97846635 108777308 11419647 344828386 704154817 836531992 220360816 589821757 622883603 862736886 716268013 844352371 24500424 761900209 699668348 964247765 574193652 577494046 384530269 679827767 482660019 790502625 532124372 790462534 119210610 679510982 260639467 572774707 784858133 785658946 991411203 992219002 748519726 780517575 87286400 196786094 50367928 679511079 103139902 144977853 886200653 917927405 591759888 946261415 566894057 992564372 73651192 423834822 806975216 898645259 606273540 829358875 814882099 832501651 229615005 583459380 727990580 989010789 237082380 767467451 945112618 957338096 641218796 771628317 545725855 683091841 751662638 892373812 838330022 963788142 487191352 687339554 990137577 991842088 467627674 597532436 751953745 793151833 948631872 978467861 269665242 478641677 234439527 276461891 843004999 932316941 172779983 971418035 204726990 996014446 123199803 436966065 602756336 674913187 872298144 877208968 743991060 766611441 984702880 993679522 463978215 820771650 665781705 816036970 747711357 776218179 673013317 808626879 824088516 931936486 984361567 992464679 903663489 984362420 256389615 315092854 835498854 940918084 604712321 803232084 739262581 759250059 232812751 338446455 318668834 436246789 106670499 293234772 290318939 860338780 15842457 645525777 10149425 252914298 620660999 634518589 257069839 532823697 52306687 843057061 353924092 477552438 313268802 816210451 185577107 457084296 700058919 895922269 958246158 967455102 206694664 545192469 833207888 870535785 601696651 731993564 608595333 719964864 951516192 981183022 943501706 981045864 54168561 241315359 783938442 808912719 883119323 946593844 135724477 611500369 22901 785763535 990210521 997868674 157085519 330169464 351403123 936630203 190936491 697868259 533938880 627704484 60310191 714330013 799951731 958161687 786554100 802962959 748858025 945736848 665352492 971349911 993992361 997538291 441067402 546215092 495686587 759955834 776151752 858778350 52835157 588974545 978858142 992815197 169241021 271328554 713441222 913375322 609842540 744967183 926566576 966414899 265462520 358790013 726295325 815787192 837277398 870344685 959203167 966289348 303466406 569294325 488487951 690442349 658831560 793018200 69655168 944129735 919211436 968649997 881592241 934756882 650942894 891231161 672807894 743038255 694447431 886381114 560042020 772790112 816353009 945984429 6100861 990605660 836827031 921242743 850339330 984749865 220315148 699414179 13597893 900367664 664792879 956514982 730179109 950245463 17538672 935228750 383348514 793774554 599179054 613476591 881502893 956733870 868583651 998125498 988229843 994881794 736349221 737623398 914162631 992286781 7106833 350031419 333477862 506458752 62117347 566565351 671108756 721327771 109391843 784035162 982043949 996506061 580622946 780640905 894668756 962223575 716231236 829036673 993983166 996868501 848980850 989463840 589711443 822832987 415966563 449781195 452797538 788449288 490329552 886745178 269211184 873548285 893681812 964583739 355701580 845282510 862359848 969101837 604355559 717535916 119727812 241256413 487798299 768249726 801785494 849034012 727318540 915914464 359123616 806572541 893437785 917667064 59175260 783305489 557657774 576568719 323166628 829268893 807720493 850748047 757853984 990564123 958861843 964058089 809986066 973279931 810500447 877337652 960591475 988279182 406703517 966312461 904857571 905375327 284960388 718159289 576873875 878991936 201137001 883692791 474270150 575723066 593022012 772005539 566263103 647102451 172475213 898714972 611967143 818785310 249091485 560103492 860634291 899562356 181869307 205630557 743913481 947563734 184000778 750695613 45324405 924825089 442670042 509688520 218841202 462969570 635802760 665044853 200168242 490822158 680958366 806152535 324678715 389610632 437093957 481598197 211223083 507100129 843907851 978547966 20958497 591142238 879188342 904536584 189901650 560469248 382021670 535360104 251812837 461803563 375895359 606682115 206391117 890590336 587642634 779696699 269599470 516588415 339742427 747195768 799512451 929087863 858599159 977604947 578842443 979579622 537698102 943845716 414189229 416682095 748451999 957135970 421866477 574375461 403651921 611814650 223531555 841513514 111105531 563280979 463811888 498866281 516053053 608385478 950710147 974693096 89283777 763073855 526305573 919792300 12453851 509511645 591468765 789000231 693596553 760911389 895600540 967171691 308405618 471673420 749067358 888278053 527718554 728753223 564829196 790989314 11575622 801054461 418471965 451180135 526978892 820560660 139698122 249297326 107276152 723502605 628272998 654198204 633399224 847169119 682099547 934712409 705131265 866789153 598661584 759103561 299178524 967718071 285272392 524135452 17529125 936683579 836720120 977226600 538530535 600734459 61985032 490197467 2474039 835148595 4493625 667578759 805127916 931838656 333738754 919676660 409615342 423018579 354694072 512756555 671121241 734738896 737068352 791232444 719136162 915533185 20094206 89549485 669293241 994552584 186148142 970283105 723265985 749108522 356793697 743359698 220972148 556156045 981274976 992477278 338306669 889778231 417714875 475406111 547814634 802459437 55724655 293563831 688852205 985190821 972369627 989227984 299513452 527784989 932721024 969923043 170599662 881184734 989360749 998485796 340843810 604056011 11036571 447726553 315140935 850518456 442547070 654844158 424699020 591855294 402391028 946761762 29588679 944124568 758596627 872421375 998230361 998635505 510805258 791956795 51982455 776399729 317440059 342034734 661211260 973861250 55801994 976283724 894251482 934205998 63473831 753392983 326468917 419070123 967977946 994297661 144441849 461483561 429308253 682061142 433560216 887773735 313181412 627786166 142352239 780342579 460519332 530878355 794282611 972008748 478303183 703648553 776887239 857226091 834238243 876522413 89699093 799734968 693321506 939547969 944382790 972323544 502215484 513450806 83380350 185139540 228295592 463846045 873290541 987888097 599869718 701237781 366503 762008202 930974490 966741900 108965917 850366924 172044955 225518250 54922495 598343764 710370568 784006104 620747034 968876915 459953960 839773754 321065045 616948313 752159041 945638371 362301495 699082084 897170143 978610432 927939424 964882839 890370883 973912106 568887459 850311529 413560382 764641868 126032943 314594784 389706678 947415324 952205596 953016946 102270977 530357320 822578263 832089899 579861827 789584575 96643027 302256503 65028715 142840214 693087999 944358701 891379416 995641882 647866727 656245629 246440690 928741815 490907448 926562487 769085561 822849090 704090218 969383113 970025664 997166521 636657597 707263238 687117813 992145347 899123863 920626722 455136286 585650851 418398560 431176934 179467759 342511591 894810675 936999836 774196719 887113266 967000506 997277973 412743923 529510866 520910692 730649862 325905703 496422200 777465991 946290157 1891840 406932998 82698942 296734061 868764786 903187337 936199950 948329652 134553216 719274799 238330551 956917381 511024476 727435277 692640937 781014090 403548233 748865023 474286742 620988478 573038160 657214617 736820457 967734915 415891425 832548476 341448960 800343063 958563882 996940965 748436702 847270664 123761317 668368642 64567295 386871949 781371235 792580490 369895362 523856529 212437803 647430830 104518364 476082814 475491918 921846940 28838136 267055025 606876013 688563629 695255448 781373180 101449786 257386887 124288770 650847204 258658307 672076170 556676722 639239243 502377644 658205853 742943046 971932892 15054633 213550036 727430824 748993767 39824793 788873703 380126746 488941480 862001358 901996466 536042341 595493320 330289217 503537837 910210539 952932320 655698500 730167102 925925107 962100610 80847769 461840720 820698162 892345793 818289859 841951626 400856497 785832953 68058956 695948780 64348523 298956288 696601027 733736942 786291036 888994396 388079530 892918956 954283694 988853348 974803085 983405409 759232074 943326106 213516107 417961364 783673041 985845792 620880989 825849244 723971853 983985585 497601045 523289470 332057521 335210783 241351576 379988042 400802113 717450543 685356038 835840750 859579836 905098295 1348383 981623445 221556090 426249623 420712669 564939998 529037277 689419479 311589511 891929517 693317963 781462849 337896527 802785261 522206647 908490882 393760092 793969755 439891638 553974006 273793642 906380526 511404807 947947276 825377398 862671988 600254794 788975876 910096319 952965625 967386802 984138199 39780459 432872213 644151055 894558516 898935405 933973172 668157379 777809179 660315811 903565920 697099281 781239382 979255226 981392148 261008643 600408733 462894840 833419666 697130320 957023526 130779337 249089949 160209019 623261066 340779821 731867166 814900725 818096786 786592013 927952015 116641900 820137705 731154898 841139269 564428727 957095065 478637720 499010387 41056474 312508681 181585053 933405342 66236343 560813731 438575118 696980825 664363399 955679668 997787577 999342828 974176551 986045907 97614840 314803602 32807832 301036399 228785221 781924064 694422044 746518487 705770530 779604422 801226335 895994404 97401602 800066338 501595668 821286814 55855333 265691916 543062111 750590397 827061736 980866632 214848334 725896648 616196844 796394891 206613886 826701425 918993151 955865365 562972348 969892750 279173416 433353019 410032571 984924606 701645892 875836166 68208827 291101194 704382468 928488360 861000429 974895923 372140557 596950531 120649867 895258441 735214335 763741008 68278722 583988827 634498897 831640293 420179930 566046270 326698985 419073475 357424580 896719600 778116323 829342227 711630637 947753318 887875423 940736836 686643287 913955534 315231193 772915281 306074660 785787659 36618081 737423156 863165478 932020203 768023798 821176640 105692862 306088751 524102582 752856413 888138178 911956771 797770881 826396294 39887245 194988583 723428562 978743391 774048950 882693794 602429730 741149139 640541541 947762938 772614835 847495279 17938100 906991393 152957131 690465555 672381253 819167117 460652140 487359120 787774925 964232059 683747307 996445006 20641392 631051216 923619984 932913117 192208430 999109155 287420818 646226909 761519152 804162492 188787082 903525846 328101791 646834731 317119449 347209784 678002664 899579588 49728077 697394221 680175984 874348084 522341638 773629703 878664718 980129535 303330820 329760948 906169321 998028217 332771611 451056969 606629909 635183053 147097377 841915620 238326511 911661673 65625544 215716964 578232802 619256067 126094613 524103861 774862668 792624803 999266480 999281178 992084169 996653699 582784698 666964690 960448745 990886924 356125959 718801709 828892787 856061536 345676544 923458562 825504134 978637053 505224013 819564401 509471136 680093054 370694890 823384487 697579208 762540967 548329909 928689085 124709925 150025721 330762271 798454162 180251309 724559474 512307613 769331816 87295517 180281841 722233485 911905827 165955555 567236591 975400613 980338039 808316684 837173541 95375834 346682172 150851684 459797779 559620906 756295843 845621948 899877305 750289376 829181339 105361821 881009221 805885366 845555871 208530575 618956274 905977755 955279514 547694774 931940537 581902858 848095256 901603992 934560939 784602439 900862003 702474653 941302055 655556497 750827899 689095320 767439771 590040919 941691099 531180350 901044052 555257674 636949370 657047824 767300947 468062758 854350038 614166747 655453277 914625898 970119498 446453200 651751315 687914263 944680937 129101965 779112261 628372733 682471543 45353945 377744809 738179784 846822613 525755379 752944419 386334110 741768648 105176011 825046548 93471796 878643488 446828575 793968553 41033144 823327060 149630 182985744 593573523 731956833 228649119 870156951 54808873 755749764 302715594 805474781 646494797 657061073 213715652 478991559 712073746 917614885 984103720 991479253 706570656 837931707 657315375 698348314 50290965 368546180 71511799 638497621 906835200 909091002 433826496 757706395 728446852 764396210 372181614 897192929 662461450 827231415 385449001 655461554 865860523 969163921 901044635 995701983 662787289 818194161 695495933 745672044 323631176 978950640 288050056 644753463 568840385 911337513 218181310 953062562 323067693 630372706 451406897 657099952 629194574 827418368 908258834 935273002 388109096 628523697 534371852 787596120 422387315 938083937 661713349 739986078 631633229 942034916 310249358 491440918 535249092 596763394 608499460 999248498 705227947 710257580 755639730 935994849 192837818 374920620 321459624 749630498 205975368 419714194 599653350 692900040 880696895 890819527 73665821 617835366 660531586 807741279 867262889 927141394 973132101 974571473 763872804 909527418 645009660 858748033 622882933 782991344 672262886 896055606 371165020 663583287 572196790 915446204 674644204 708543723 765952765 933477959 159498660 342596562 986282694 993045619 521009467 829624000 165425665 175616023 375422754 446730040 954421907 979175583 19343593 634636636 425174394 860350208 219805068 710333236 762181696 949533644 899547449 944985594 319847562 473565643 443999173 519519598 953600824 991504984 516940170 628647110 223795526 282313338 852398745 967386559 316465643 635413826 651242923 686700959 751428482 757824549 130202270 975364334 33634692 657997397 341061391 373392470 148063345 217257886 581311686 979801188 212385380 454051214 91475920 710411027 618660187 756045865 339756849 544198765 778179463 842549805 767511728 881249302 827516593 839450666 677483334 775413667 831541810 957408422 231404969 319831927 456138083 814632664 708619470 959025442 72287567 488211014 54008487 281936145 530089121 545069997 801132414 989153071 365613790 532222696 494899946 847486961 783167763 952750894 253953320 442392838 895768375 984287336 934174238 960910453 462916605 663586618 533961071 572088373 495824947 955780850 693090479 898219427 51225493 694695820 626595226 921877734 240291275 504916961 195784870 781303418 20010603 46797331 916501500 979114831 332208177 664127226 723363250 771887573 77324650 104346079 128082116 775581399 249240026 302046602 192911701 255877774 780583762 935685258 834874383 992549443 69382715 945547310 653298050 679527815 972990907 993813125 416085728 832547775 164287244 783425169 887383721 940853844 671901457 759376987 795623153 871186157 229405946 998212972 348017563 910187532 871056362 989059171 861225245 913778963 917088641 944255066 816163778 998081617 101646608 498704112 518431055 740280780 325047568 341279223 498143105 693382109 567722573 795286009 582111358 588083767 852338000 965277870 697968146 830784200 742570104 791633214 943988526 951725062 570340917 892105809 728138654 754174123 11650498 399649687 349231190 375690216 156728528 612895733 782769741 994883034 204525807 373491360 745513528 829427336 192633134 752023889 37185778 163326815 396727598 547690623 303444096 404140657 901996837 939039985 995872481 997389918 205403246 605217570 279498918 449223221 212785554 411635340 676859010 844696305 237066241 796780385 744921720 858833488 727761764 827147523 906544496 954654646 748354687 827360229 555325967 777438163 479061108 803692570 651061672 764080470 171391696 822879269 130723387 218445396 602913580 884357657 239729155 664574695 727705445 757586741 492961250 985096307 614018371 638783465 953865988 987894607 941191864 979234229 535372743 693859995 40890928 532442521 694876880 935949939 303659268 474535193 73451197 924601804 7481756 766075997 67655541 375154475 126931140 452638073 932021305 983985099 850830135 878870723 536347937 674868996 335874656 695698821 81086274 139394059 497742232 549694690 285163515 960387120 121533052 136504200 567434174 856814042 462240613 826297482 471002975 529311342 424898897 960335060 845375230 966153289 789189626 973348694 765783281 792985443 935422945 981936033 758311070 790393164 756937701 955544972 314492273 530944872 714848936 836301138 742556036 779220302 910872350 940064903 408930529 739289341 818135013 881687438 47815296 494378510 326172892 992789947 526998294 835283416 941463572 953469950 937130911 955681485 809156959 828265026 484616150 871730606 137885848 692382885 827908741 941863519 933061658 974520412 48652702 669418410 84307786 132250933 485785039 763658764 680762159 884715854 647248866 817661223 79351782 176215735 610985672 913173629 557171988 856386116 693043904 810327222 656362099 942571002 773602310 809833439 864089225 957448025 871286162 935480482 730284057 765239676 931725192 942168127 983913509 992181137 743136027 904653702 994890193 995849994 173724678 979739438 584865687 664428141 931119396 974392352 957405402 961249477 649206431 899421587 199752539 243263441 986658667 995287869 306378041 895472305 872794790 902591687 933611847 989727296 824105247 908223333 490575946 694343724 364255417 461705056 952621780 965114037 651224379 677443416 233394380 408755140 169721043 777352103 300251571 856408707 504037836 524486008 632338966 812061029 181172221 868577906 461160405 844846629 988684250 995962484 224038995 626455692 468233220 762225591 5714450 871819166 910556089 971908301 600296837 891471855 137332487 344875658 578491816 600731081 502945592 650437574 401887540 579478283 895967877 967715223 990748722 995096559 52416377 120458292 307832275 698401222 288489917 725509035 489705911 669564315 351128145 497625866 373010474 431715533 815452067 847375085 581978608 891860225 988199995 991991025 409503467 429134559 495777332 636805311 97458892 563499513 399852832 676233038 238635767 374045425 366774151 870282692 133693798 567248382 622495226 827971599 761618622 912418335 612076423 792137977 205295574 312977299 819594090 887533103 996534911 996924404 182181663 605256058 987902921 993563697 11528829 621140962 954987979 973693481 114860733 978381071 830506315 981602414 812545813 924728260 945745967 954919708 76123234 626766002 948109861 959806098 283326579 880380405 21863821 866091657 134745155 857164541 178391390 200260896 90396239 694164666 864406665 967395415 140881917 309373389 756925064 969973375 707350468 966951935 863341837 935093878 469957758 957190362 120889946 529313942 644639495 654554616 940187435 988652447 43729238 337020778 827450507 882746789 664718291 815945789 7359938 864197861 379760764 572589039 594992161 719518495 560156272 753531336 879444772 933675869 794782810 902342359 879006077 935830842 771772468 873754861 989741130 991586406 252990066 544231538 342255883 506806264 217344076 239624296 43782193 331780300 468162091 675245852 160354721 694127931 471421220 918063192 918420743 961198830 730763362 848308587 185619807 457178069 812276818 868414575 299075224 452962462 64906945 136137293 540140268 957479323 378426436 649276682 631189320 748331892 684654302 888743379 462044137 785099814 65327156 378588927 835756471 943946368 515769138 545914016 412880346 916271194 883877591 927033374 859859192 915151452 346966603 942840416 738400544 875101359 715163856 811579767 1336166 422451884 65059170 476141724 758523801 787479152 428319757 551946691 13035628 875242354 206978162 725282601 79963214 608975542 614448757 939583235 876957706 904117138 614454516 855093039 693184894 719159331 462575040 952573786 392199298 531339747 660558120 990654855 922617940 950247510 741445315 888577093 415933770 662223951 866050516 894479718 658005899 897923639 524147154 858576222 468132423 757390613 293317829 441549304 574283122 709114962 281187036 385797243 358704521 978680611 535817854 874132002 845247907 861377133 572360220 739093027 538042431 590042120 886003668 953951518 997267721 998166766 741591836 742442398 118254148 770342505 848465645 942043118 380798164 497299008 590743733 946245315 528272721 771840528 970564769 994399987 57553024 156208392 275473296 732703995 707077503 860782584 393141231 710962567 907326816 973898173 797626799 813250575 923795149 963476620 912639514 963703458 798691888 998764332 296704943 603050857 618505773 653156777 253486668 623022739 526317113 738401310 655919331 699098057 447216860 590825575 671729402 704547595 571991324 851153201 839944472 921566130 119578739 417453301 532169446 682176384 422221630 592778045 764383002 878974904 198037448 597672275 272066406 682658362 287268582 932193746 747656754 798673883 931126023 952021474 208419693 687614689 227335569 488796662 849523682 908931284 912234177 942048485 349217655 859962661 888261033 934413448 557481810 587889516 389999964 967552352 734004982 987322360 310637961 756311987 779959718 814285471 347286501 491579024 236500534 537234907 218681066 901565456 886797983 973870193 222802405 396590230 972294604 975569250 879080656 948208716 646404131 860831716 473611091 630264950 218630395 271090909 64943492 111748290 938401169 977166017 264891245 559481400 867315593 882510965 871227383 885556702 977030358 985569166 909199325 940249423 690568444 950429663 437998212 579446463 860434519 991887698 336556138 569925346 423998708 973731021 79710590 903991127 859622604 945538071 12587105 381578580 53941442 72692582 976731594 994090838 467453041 664733096 67554744 680216517 948238694 994564384 348491439 976410722 288495008 758177158 941622759 996320820 711575994 835837370 862212979 932086774 791783160 946340932 40647076 697349419 314380542 809838108 533127266 757962604 952668833 994914838 759522409 836684504 599185565 627756545 124515170 513536124 527208187 572622972 355367872 407953839 568338667 627864403 770877670 879731947 559123921 772201375 563956710 872276228 463755058 530787482 564349346 633902108 365677708 500828806 585942393 819251144 439659400 513185668 658548627 672075833 110617629 634854377 558787019 646459220 295290827 437266080 125029029 553358602 377619079 620897145 787437729 960181103 136710082 493036928 790788887 849536102 96235687 255646969 934997455 984077512 417134273 994363955 917420301 957779154 998373974 999355429 612414923 900194244 435431566 535325005 129455184 778158559 543977205 631368198 656819893 900643160 986284256 994970300 138879202 620328050 591059333 990689564 363796971 429979798 728602085 741005811 874722280 893189234 231355691 291197226 351174565 949778693 759270870 936262808 156656529 703192684 859277227 938249506 405573110 671970371 997507696 999180321 470011933 753285840 969656756 989753671 223201149 543675112 42028564 330792530 775362672 932500952 361858057 378907242 563663859 853992852 603800375 909933617 804534288 849548387 615909378 865390254 498795542 818832809 367570690 630242403 35188983 799322291 482293780 755286857 122275409 330607195 739468794 776184089 660957727 883852012 301493287 564140398 348967305 946187921 133046162 607939554 896289047 919517429 477586445 781924243 560540847 855482283 3462435 538857899 317227599 720779729 736855182 943144409 740719821 797737705 950543335 963279391 380635153 456601840 175183920 343721521 962101654 965534782 402488687 474375074 836663618 891531398 641910903 926128514 561689259 572012045 544085854 598844272 976523197 980038224 692558893 933479376 685198038 685324754 110585245 498031841 385253075 409160090 502087857 543875593 539122695 961624244 64761591 106862832 899593184 911002235 725374288 735784525 843268081 942925049 104511534 687925194 20298560 919844920 832661451 933848958 965815275 973872134 176945229 586525818 221442141 778571690 258179520 757178359 189418040 797588354 303696946 567165111 905777844 925510367 745848435 778433253 494779016 961481952 646460237 846443392 552185515 729425879 446246979 515007738 254255253 386545867 636081067 747978338 165099508 416833259 2815228 982511413 392183751 885428630 277337158 362299409 903959252 973881430 131519037 940206399 228323677 766332865 692396070 932180671 819056401 953591505 298319473 634143514 652872277 680315853 968691675 977151863 358027266 636193100 980007862 990217713 632221309 992473029 61491940 472236087 295000570 637409200 192534882 856949305 501724669 808498923 402876147 813437698 898795153 941666293 736440279 982152942 679814239 765251094 111675103 986227375 302988584 493492331 850969614 942797119 670891583 955197546 267910715 435644118 230020691 267252022 843373095 909806377 155129564 725123935 961284087 982730030 229655063 313527964 547133640 823969124 212088666 792343527 793405915 878932215 517251959 518847253 678389169 858839088 319909263 378309702 119011811 352773194 544132820 715586318 96041857 377651633 104877414 800478012 590996711 912338092 765065327 957545208 269012244 569801754 48726039 353905805 361890080 821300703 821233478 985537659 737243650 770400307 68253042 186538956 459406028 773372656 693806482 719202803 133464179 860758712 98123114 395613595 690085805 941820351 286631693 596772507 918363669 938398989 884161195 956808353 39726539 632293513 742710431 798792908 830409157 889006717 220427809 299944553 926654881 948375255 434300558 587905563 176026320 605019463 191147462 790571725 244698839 448980843 664026038 971598863 136668225 787666054 523502441 555535573 667109831 859129049 899123175 982446627 59439012 281933117 806769099 962968542 580130370 627186942 494294954 922359822 503485118 569878413 946929057 971131318 820386590 820735916 214283272 569711758 126371794 443108337 868214521 970163432 342327122 699280204 8754695 458827636 589252703 704644148 33672982 721177353 417328749 540755755 613242980 751944262 566292170 905100294 167448362 448004776 925346809 974033718 471194572 496434896 228542853 304063382 387348399 529603100 733912726 987907279 422109526 623091050 360983233 861612877 126200198 283166680 4727840 46164641 980763585 994141631 126627060 945850493 2793415 477569023 296987664 688379911 763308773 999282374 933019733 940028258 601874324 763196340 300398215 670371812 312674969 522868528 901510148 954924442 547938726 560624647 111054037 519980557 99272095 911144107 338619578 535983496 593522378 958245821 511616320 562172636 565720653 820180947 399983443 951233815 498191310 761163412 183767096 886795321 354072326 431624096 971786266 999036886 955347223 978441972 482185660 805976868 65492753 642339476 274015333 958408366 23848781 735402297 807984228 895963226 595593371 813520206 695920984 997730446 845146580 853177604 15641793 795567948 52587658 113158394 937860063 943048494 64747443 688405981 970964223 986498580 210895227 852182810 572438175 704347720 243347365 341722288 886635494 898077853 468902994 605197470 927417761 960195396 4559718 299474738 861221865 921693003 890969914 959834572 513852161 715814576 419516100 890034453 166519752 744245274 334052719 684276493 277872627 304045687 443753954 861454374 769899572 973692325 810602426 984233765 416546540 545757818 373198836 627915518 756044110 873636964 768181966 906067238 150368291 812590281 333126169 683450251 122656568 206743661 871151370 912490928 833475470 872866804 754083989 998214370 353280305 752208061 375264092 613277813 356989122 381049300 549632004 977251976 142185486 990913046 94455570 674938538 437219392 976597121 623726072 931597452 791131047 948841948 447932425 978626682 819153175 993026548 171883087 544180739 547594871 747209517 270005695 328411598 469768278 990404937 490103629 678775772 177737272 761637917 267809066 368287588 103364509 423917090 934408173 960679558 314028784 509989297 892516854 940591221 306842078 318349353 480647754 853705870 429541284 958320253 479589337 942062757 329692084 908061726 812015450 922711368 744264655 973791582 284367352 784378007 87867966 820485840 170973222 984506387 796286851 979083625 786326947 833032798 786588210 895422960 373232647 696736749 507723998 633672465 462586657 547357846 218186278 934808587 182644120 978353384 753724180 860443610 409178885 579437562 112383984 692016757 87771071 336134563 453624798 521648739 388959074 585724226 318375761 669917300 592540331 949019757 831446140 994673434 982948385 995062670 228471445 617217814 281293299 302262245 244814128 921162083 276446187 503712521 649863080 908358188 397543730 630452678 125717994 648388943 56546577 183316269 237490844 265338759 422349993 557886177 960003035 980440875 897900356 907641369 345582727 347179357 726750571 840663203 635772053 734776344 372050501 567793307 708477344 782824076 474585119 909730772 765005897 996490057 780920238 966283395 390627854 510662809 474503872 789693898 26291646 214896957 558580764 829874127 965956950 976519557 365706040 881898267 984188502 997909000 759295113 862355539 160825846 439687328 405451384 846182418 301914972 754559586 479706564 831850835 552481422 804610868 820466209 838621486 480521802 907735334 966366705 976584453 918068128 974040127 787488883 958464657 494292585 545684938 293274074 932231102 35268322 58351319 7086900 89639264 566987090 993130415 771738784 986050037 721724132 817106694 603821328 703002592 891874091 960614506 763055593 974321215 940639329 950081403 301150575 602277600 436673053 860641547 692195012 997558715 467784859 797625736 558656056 669054543 70605511 305945838 612162465 684998945 941121996 976217175 959574553 983249663 126185807 138869120 122247554 401391194 708379880 916122853 738873074 841124036 252311228 830955776 315564025 809134458 953223322 967518484 136611645 742966345 301731609 536075832 750605407 796936795 470359257 670335482 972572366 997294662 345786527 431840438 810589085 838725269 585905517 727242203 389747377 909235902 398088192 782140048 336655484 653015829 908652553 973347962 343138055 805204401 140516485 962832311 10067456 590354977 770250416 946241506 687602776 936568223 109662362 292557240 207050432 550195010 313929328 615272820 53019497 294875731 221978155 624428547 592749875 707124566 189373459 387774361 905378212 957514788 54557384 980283059 535183987 566380831 867957892 920550956 960223261 962851874 4632133 218084935 626981638 912210496 454505509 489842561 683074190 810734237 827815212 935174256 526427219 671285541 204433463 917352275 112923301 817088024 781432173 848240940 354563930 667118378 918581097 988310997 770413723 828183267 266594012 931841121 34519346 104372279 119819695 665001656 890525595 957079046 574323368 634829283 850260963 933916520 722543906 928279924 340372605 831426781 331781386 557872720 555318113 907414024 475355851 490889990 702802157 995454393 759690214 916552716 135267075 243788260 293072398 898758902 19434943 616309862 469841714 773392497 477038779 563731190 949912904 998521959 470221350 770586896 263005183 416067393 689289247 845316855 641793564 921096606 315903885 974607185 642657886 894555120 621273663 987013355 881941147 986577735 146858699 816803822 56824138 885976563 361641908 696272276 102111371 196359664 949660825 989316750 212437993 276549548 589606020 883533136 875869562 923579981 461014987 921692718 700746396 823214480 368063189 865855074 894405299 931760175 957153651 957465603 279768381 307085796 690025252 843126050 263484516 750626410 951349368 980231345 23460343 152056577 667539477 839260369 12530989 182791474 240208066 761707719 558417258 658632830 676720605 764869777 182029799 347770782 959120362 964676476 968145939 998980789 162702404 198592699 617105821 634620840 327965895 466361514 434085752 586890429 922843529 992291067 361807663 415612158 191524555 550104973 824910358 953686693 496730960 921946107 225392120 265773757 407856808 917549802 342757360 947941393 909219780 916388013 437378090 481785379 226816653 650335689 157030125 189784195 56668879 961486956 162972597 438353191 568250148 623592836 449414792 798073872 84707943 793144960 567345731 850810486 190546942 546346727 372955005 986890835 478924252 932080895 286177357 478304883 308611933 465757474 127294043 400564816 931917099 965512630 481840806 902605104 404163823 671011143 873321819 957293710 56112147 360485814 553623823 778198815 496445580 781491092 488451014 708888795 683670357 973362906 791126087 876498331 753672278 781650360 962829641 970151854 716158793 821202411 923998278 992210953 898304366 949151393 991326632 993878614 13425173 844154719 902703102 970340167 95722361 856845486 419949041 961116520 128550506 569933271 823993995 832347998 757390517 958268512 148341585 343590359 148540224 665033838 938007236 981503730 832386621 850572265 228185656 544436866 30501245 777128102 843402514 922254487 459141711 697923179 429563607 604684553 511171151 575851582 769006063 936856694 420946400 747083810 443158784 753264191 21099572 428285858 627004634 850066900 683912932 815223590 347276786 813434794 100639210 508754909 333406405 785513120 558846579 869869984 467814291 739417011 702662759 807161970 994717618 998085034 830413232 940019750 981287963 998934077 68683537 270441709 663604038 752919291 544231335 966321489 460772959 661810008 129717603 384840152 627371047 820514470 353997969 695786358 629696496 997830477 551472145 814572891 416374223 726484602 537340677 817673394 743349854 943344969 921967859 970892600 894587202 964111215 469335987 550021757 612994298 713859855 364403251 718100967 861070088 980810377 391464149 627189425 536133765 551274052 207589716 482442374 344787230 471548273 282264059 515006440 586482728 667250731 782800921 812389314 890787278 931004857 147210538 419252056 431423549 587963706 418199402 954298302 969327044 988931317 790715574 941215087 964670321 981125960 495593726 684410325 45862459 107514142 441262379 899873823 181517599 512489861 195510605 705503608 473839731 993059830 56197271 233149463 784243726 976136220 492311496 624579532 490285666 736423612 318507076 593829196 444870493 593841587 590948491 787447487 959956011 972372339 777000591 998072223 752347027 843799507 585479888 937822380 88002890 345918805 31077146 468334978 339425447 692102826 911416350 958516556 63859471 725993930 582021354 893835541 666297570 773214684 743957710 994261883 86107410 336596496 237511890 727540774 602120267 803573866 723976864 947874675 938305820 973847524 735662774 937889903 283181948 916103392 829256532 874840359 509397224 932434402 298672114 872963836 756297785 989368255 884071539 991154521 310204054 352366651 509757415 516230890 600390964 894062710 91760026 604246315 731834825 756564705 460945870 614910674 155403319 247749546 673350177 817378234 358487903 441508907 385789039 826733652 701880359 725632912 144994507 994740146 887183892 926969132 890197076 942474038 326261735 708519908 467430100 721526548 838184120 925544615 557874112 583997061 114284104 977898380 34516702 332594004 329383707 599807836 123131512 676679700 649687856 830942661 146065803 166683738 332724805 952264375 848921075 916435789 653781195 790933990 687449415 851192607 641409399 785693575 79828104 875462383 352434766 766287571 540632093 759003015 832428614 943209449 29906933 307900368 765387282 778545598 762649598 788855505 660277350 731704187 798842658 902545317 37104557 120685019 821736085 967637163 790282241 794855533 447609908 578106717 463522344 637334703 939326138 983073848 166726957 837483315 476099091 887502736 970080918 993745258 369475719 403508167 716471956 829820016 280533639 306546294 442940884 975946952 774517403 918738296 113396635 330081773 744823028 837104098 453170711 483950738 828455783 904490604 715314606 851604381 290146347 786503776 498156224 667567744 950554064 988938388 352699009 597779314 827124081 831721357 167892031 749363501 277311574 371841773 303733859 337299163 606047322 785125255 859352142 865231857 569034611 809763904 349546942 614634033 45572256 817113012 307580019 875824949 22592629 637700752 337434302 584784930 367609308 622055945 273384474 295987130 274446460 947367694 950363686 973092114 910706260 975587557 495901903 838947213 359932423 969155191 226180427 903835355 221731646 285970796 168302817 949143536 409262467 452563913 273431107 493940030 651993589 907866654 111064923 886714999 577848367 785617018 307854495 433214492 858222218 865894426 787077155 970459899 792409469 923497773 245114138 494402045 653844806 851715210 457923634 542710141 318218401 566186492 828084512 927477690 207891258 803346504 640837301 789593700 334515683 776709743 849327234 928466802 852757156 927542580 238640464 351847215 914813375 919439748 356075601 768534215 410780049 591674986 416009581 673219771 686812714 816227832 265545140 397380010 913605978 995116483 450656122 991629487 516861807 548855579 311860833 691944561 504352469 855508097 431334621 764745878 294010912 828904764 572924567 677338094 277962897 639433646 21253938 784480638 358641068 628328847 274156244 702295564 557641789 654549555 533585604 924776615 505205985 626825145 949099967 994557968 412295242 678988913 226307206 251146376 242315059 689716698 732944088 779535551 38945139 205055730 862228575 874300609 286507153 805396540 337483220 705691855 602819681 672813936 438501559 721305851 351719190 476531657 103756680 435051705 636780747 720122953 585732992 658381533 68234501 364365498 634480089 827754903 761642036 884819007 211194694 933528087 564808353 805512508 226793015 571561578 620533376 911542258 23651103 70764574 937770187 980326713 123220481 625314508 391870090 779800921 40576979 265771329 195794014 893049053 322888963 507426021 641051554 837610407 123667794 675467371 608321663 627524268 797426835 800742272 56736087 961891283 533274100 629000654 290938036 605308325 696176134 940917201 171823847 347435392 20282346 775043273 738150305 898009350 197146513 477837536 341341395 898527301 469794277 705743494 915640323 972788899 111020580 217222272 270357457 816185671 637890036 831104432 734047362 965651438 694800149 975533456 520904926 554766529 386308662 729126760 243086847 758899459 93355572 665484924 649404388 790943306 792571080 878972988 893064445 996327344 664847167 962898275 79011913 557414819 601463973 803515301 386234663 500547414 256692183 777224184 431599654 507640382 12152705 306641916 229630773 679668361 722932385 765934876 698177796 793064387 759968273 848128555 36580914 956360983 470237659 495184134 16097134 374135848 841610649 986421734 301753220 872562972 177111999 833015530 342725713 830342914 574844250 659058817 802433235 817233340 374652900 548824052 682552374 720842082 485969440 921979961 541031571 720948951 903656283 992590426 29137432 87553494 362011089 419337564 579033515 928964797 82229179 504274280 783928127 866719019 454876974 913580938 142058370 906103717 386383367 575214317 239615750 557453643 461831512 836994224 952369788 974667406 109760833 495868369 249347170 943654617 671739330 918511767 665278388 893748955 312502757 347058858 837758444 884981400 283452826 344271367 376390064 461981142 524676680 652015431 23923986 214806648 640106964 947763190 643924855 683826680 393468516 922931277 649536027 754513969 468718830 673264705 228166611 689879293 785193166 786945189 741189295 779895786 873309887 964799907 230352919 393691343 829383887 878140608 598239828 633069296 694098807 872402140 803847119 905901388 370329425 400595197 797759157 976960588 19054258 456551851 995668185 998422531 775513612 820881741 178895899 367772835 554445010 690207601 471638137 761263349 885666415 968080586 687060242 906963720 169379364 845640794 796057362 975494456 415843538 676177864 615285537 987045807 912758393 932001847 400733054 811326972 699283148 900572486 243063721 977752930 122735482 621341111 293673245 883573877 167745750 782758832 334845213 717895456 548219897 560788788 887848004 957488380 20836996 692972978 742836090 821673439 112341791 551222829 640602517 744987520 791807803 900793841 55694053 308794954 996816744 998412135 499884434 989791390 990980063 991352737 991106643 998800365 608644539 945667146 303130649 995246973 380424915 607474044 5809588 376096942 336187756 615411585 196615802 446347283 352192435 777528827 867230105 900007200 171915276 825401274 961570553 972652599 289091068 703954960 385405087 623717741 990177446 993689536 548364386 669366060 829661577 995212001 391173666 515666562 510731572 866823879 563080132 985641608 320083832 341353356 66906853 711571696 465888601 974374055 561720560 860515046 255475620 784045409 953546886 970590636 979832140 984316478 93975966 177036338 675207037 705023039 583691500 957418029 495152106 648736243 926815711 952391710 409022190 886502051 929218276 999223207 278961706 586143640 590517189 792114629 78725201 727256224 746928829 902528949 926298621 950679166 8502914 877469828 916418629 984674973 988854522 992113489 960628058 979014541 216766636 677908864 608291040 944389518 774134687 779072457 718431977 782976307 911429073 915650737 304568847 391645609 930330518 994686159 19231593 693314390 26036990 712638541 113829017 501120768 910285102 973548560 89552663 691325578 701754991 907318149 287023096 538656943 118054111 802944654 132052698 532644848 990470804 999155668 778241119 813724819 595467991 744815401 181276774 839806400 388423129 557010574 248163861 853802759 196907053 953213918 223352684 930447540 217788203 621197266 512890297 548918582 447014097 902018810 503255961 830733574 106410588 921926695 922986156 983413622 337278423 522726661 988653846 993661189 698480583 949026765 84246199 206245181 320394452 663577781 631922966 831253598 384331838 477229921 777010638 955071818 546714894 882015096 370984633 382172625 100273843 254763806 185217036 402526600 207390930 545368284 481669139 808716296 639728468 998884204 884636237 909178671 409558971 792035173 538994306 721585519 847209263 990180794 929210424 940297769 16372035 432167092 708424606 805716184 184004176 292868273 174298031 380899448 795303635 970950074 557001638 968246213 71991179 395445966 45150348 941155446 920636883 978882890 659395022 903823750 407184560 872483972 91993843 585183565 201166583 815021916 130498981 771002744 810984031 982807979 677634290 955980695 665337934 867265849 896026023 915500695 988461585 993828169 672892095 709715212 958146453 989422098 619849066 691406830 763938119 765933435 926648826 948762777 425135460 880714048 882890721 980814998 746508136 888503863 467354276 594998609 647847688 738244810 117180485 869246594 338035313 957886373 899111050 983896931 360354534 733118074 815903172 839770471 661279162 884093150 125388911 163109229 610472596 988352606 382315457 758650610 28906748 268707659 449786868 980117163 803993794 914203086 358589507 640577198 336435795 682895966 389436603 613130696 413212434 596346483 495551321 777141050 97876099 925216463 561477995 762330898 55344604 929453001 900806840 958641390 744166456 779265926 666980962 940106455 199624380 803397009 244727610 334956973 218606685 780221277 162652432 381424072 42549519 621188702 139407894 544043281 665243010 785277110 419913735 798887685 832382222 948085295 123154210 638685225 922079366 978721588 754813646 927819437 293654832 836443450 44773191 94312548 662992958 865192941 995070239 997986286 621131403 694113619 389892003 526881221 905416214 996855445 656328435 923197660 639778927 801782946 210742072 284580841 87314332 300952017 710835917 787211203 889573858 914803891 30319912 845621292 596024171 868268107 267814232 361543137 191329695 541798282 634536736 957468144 119121537 925916565 686217076 846791982 302570344 648907198 811466558 819214511 691284651 982533196 223997966 737878874 674030461 750365887 659916011 882275992 570055873 917568525 596865946 702661132 336060561 905734000 869953108 956091407 559552187 665124929 518511936 545451609 546685194 570924219 763518933 973893957 59473035 690599086 951837199 964185410 358641194 490764575 56018828 582021693 123222268 466743411 534878825 805554688 344348070 804114060 856809936 936224360 707680856 747678651 420732098 872651023 371027273 491563423 781946559 801801930 124292132 814191331 814283572 973502671 344338476 508129183 958078164 961472023 888085334 901147646 678298308 941174234 487453062 488237341 653172946 808004583 833171210 871476688 595179668 833864690 756591623 865312531 801900781 958339060 840645089 929959898 285566113 939696476 726218026 920655169 190742069 679449204 481955993 506143871 186856612 302526762 646629824 828521403 552929673 626219669 671141492 731845431 467481574 519992730 559431899 937709668 400644775 756607388 944968494 960110676 941836393 976882213 140966671 495455934 766796492 885164128 73445272 417599536 108853992 974433319 613669519 814367896 304360219 411315812 347530195 745646367 313970932 822375264 356786630 687894963 567745563 791919307 414328335 467802429 830631812 977842750 977407027 985903923 793011834 828392535 971985689 992845602 518061989 702891713 366874877 789039003 20692169 789451546 658680436 769524659 515782465 805812435 528062475 777221817 563448440 676026795 717990849 751679311 539070922 998807405 16055468 879314317 474065653 579625660 457960922 601313659 398783752 811287883 14608482 64336568 827668404 980110482 241987612 373109058 592806292 905626600 702714267 819833775 883384315 916344122 108696271 255272681 860961459 890868421 949708753 967043250 319177567 959465053 773954033 858744611 880946865 974065747 26514744 705275698 956507166 997432426 422195248 834607152 64679273 141079531 492561065 551584449 203112782 613772923 615447784 719741753 558307999 746234183 71160596 669044028 515795780 921358423 233187206 431022484 501631777 675472252 506641112 667586977 472201408 808603415 254920024 805028203 37493533 370381988 881977495 972781263 106973464 594868045 252862962 644448087 835905379 966861654 93978695 900783538 868247726 923380923 406590452 724753207 723784592 891710793 418815070 828729309 63690671 192324467 770836119 787624122 85723247 527169990 796860445 850005701 640133349 659626581 145692629 844912239 476513039 983790408 819960859 868637197 757825145 993824578 830794015 833424115 709818227 884984739 586497003 717064725 155099552 281156975 165467742 470410597 495249601 707321160 805473416 806372902 178452879 831890944 881109567 969891956 854691253 982412959 963887694 970689483 804047149 962333749 472917103 988684199 780441569 918250554 996619851 999071266 651471280 910905364 777931345 947791773 279783 679655594 276160675 599348859 903377413 996935123 789866961 976300159 491287616 907070606 108096978 598032831 881284558 990267771 827969682 870736938 597180653 646149733 342380312 390449753 772301870 865150035 475432970 897943312 712078667 789298626 249612901 662416940 623252350 939040909 489435673 609566298 708370462 752819181 9261048 783457881 318965030 564125623 298028309 739930462 461055165 727809574 740801369 758859607 298394561 398502496 902547036 980996203 530154576 811964384 211786587 597972131 160441167 708139483 848217933 895245687 482628212 705191139 816793397 858193158 971396630 994128827 362888476 726942622 595380416 626454389 288546585 438775215 828533071 872182126 889716515 922294165 160308763 902065993 697714257 815259678 342448466 425888062 795933938 858253348 461056362 806062385 475458785 833777708 210192346 502405099 222616419 406711598 647336165 909703969 845170170 910004254 855988330 949619423 292256501 589178905 553613835 871549381 361699841 411400575 735352727 982016478 658156720 754619948 823931375 926483418 383950339 853714682 332376483 914414809 895232579 958147587 906350413 920060174 497246185 950334127 886417983 908562058 875443171 896157032 792567789 882175183 362716749 816979715 139318737 200309489 802430558 944087943 393516110 706562396 661032650 813134386 726457006 831484495 229237840 304529445 346724161 849114103 894461609 976606929 86008025 687984280 195200531 351977171 392244377 968597878 302385882 551648044 773574349 938639152 770600277 937490493 969989716 985098517 909261221 939196214 494504995 699015858 541454938 939259445 765371710 893633424 640186403 750788275 686209003 708590271 730232384 879155240 364311914 973489538 667666317 898613706 619389560 634000442 444105707 594873815 53423848 660875338 717354637 872534705 957786329 960516922 37273236 998152233 818343345 850255301 879131260 902964988 612183948 714398042 357930449 670147436 363619652 617140224 297403496 821187534 642369530 937611012 516538258 581417969 358487747 590602158 926175097 941810929 627154058 634133512 863899705 977045438 250960320 873992665 60920751 892744612 425845429 847002291 850816624 886667226 827143520 915635390 145090205 607899737 822484360 969209310 935252921 942345417 413857240 618242093 907169588 960422464 276396591 624645953 101811249 555708880 281264489 741155840 31893801 952472046 693656066 800451000 3022217 299513879 622046641 956903088 168594454 880218544 478731792 512934931 308665621 505553017 523791134 597406453 231136018 574623535 703236231 735425035 385669487 916753713 393114303 532306956 125997877 430064116 898154661 989751015 369907285 416223056 176811851 573160664 603163685 734821402 351475036 500490571 519243821 663621158 874996643 963436380 155635957 348160962 574984142 634291164 545674081 612757157 994534472 995063071 193705634 535350527 77950855 207182347 89919337 140741365 135589110 824114548 103156186 342504261 728608595 789134746 733728408 802881609 793785787 877035207 589806778 733696780 88498927 576280939 211697443 892721280 330375214 826297142 766155337 940249879 945792268 959322942 989884753 991540508 403406643 945772705 871793584 901034703 289122098 863803124 524985230 720006119 218593096 240389119 861335724 885143918 828619763 943616844 195352297 586263253 524084650 777002623 982349062 983907474 178470435 812490226 352336979 641053488 695284397 818473298 387069883 503614923 965749162 976800682 901436650 954621564 822753129 880816842 984966184 991399401 845655043 902554853 888869295 952293081 144497459 648321506 188898876 462909891 789870997 873716018 539228784 742444640 976261579 984609323 148507194 561220456 794247733 833934207 663173134 962495136 179531762 779555028 229900849 427169991 446589756 849631428 19915040 416327988 646675944 948344680 500263052 624687555 382174931 445719562 691292217 930949322 149316794 516522455 409634206 923040235 109000725 638858593 851902485 928725678 324141361 867312662 716601850 716947913 835487928 843378685 870573942 919343761 83309275 828529270 235940731 264423117 140283634 568043022 493741899 613848598 703881894 800034037 113666877 841866026 24140455 860083058 185988887 407426082 86833127 184774692 608653165 746995078 982089526 984541434 149337039 858103148 919043229 955527232 148263736 429466737 590628688 667864113 658195123 971817481 872184711 984653853 163437194 445042748 23934592 529770853 330474083 947758480 754348324 759044817 282531920 710026133 530931087 949583503 1779811 201511507 717155205 918767346 118063879 755381551 673786218 834430495 285270466 799517671 590784040 805608926 414625234 822907440 546015498 867277502 339866401 642543345 342454028 455301473 741589200 866291695 32272768 573020923 317055975 633673803 206263800 635803931 887095510 956204017 833870240 989445378 684074146 997298072 359937082 800075078 733344251 957921104 403469081 570562334 481066467 814080185 814194473 921662308 611874624 755529932 77996250 900384694 421724212 846326274 729353623 774896890 142115891 224476417 556151090 872077635 859602686 992049785 283834155 341326245 36872066 286089851 269873325 272728512 122704060 773581480 368442104 455763672 642021129 856090950 146728417 749294210 56377137 548604101 729845639 751949949 375472418 701971041 758709083 869839462 654412466 933510532 274843705 565818163 460148493 734198592 782143921 981110807 173288225 784406288 855165802 893839767 370758322 841739739 700628398 937250274 122656949 708728770 803026390 874505847 42490359 375668278 449270631 835462623 239706355 413242049 784449355 962916639 389506536 778376654 905691247 967311879 399036004 628383776 535670090 541479957 810118306 999323782 264472452 780623819 305783943 760404280 481990804 980733792 810247536 978386114 153849749 594070355 461201454 959357161 64908758 509919432 888667635 898895000 600437330 903760295 709340430 820175167 128020523 579839413 151936415 615243456 676492097 726132362 464602087 970656182 201117310 471168100 331051780 776988793 317100861 327926004 84351881 416252193 211939808 496132120 721840278 909957613 612892494 795584006 418326084 758557861 153766191 964657475 88317842 827691840 814641409 957843623 76402243 969618059 254156403 876160163 829555448 955204461 306822836 829203684 67091246 183357179 255096255 602550611 492366108 647753691 835789728 886892535 142373942 149611044 800913957 930183942 403566961 635613088 193533674 914223759 61574756 946218806 811800011 911992990 590558148 913696352 397049343 696534467 938659571 948210247 18313663 133147414 534350151 961465276 846767319 896815004 141046192 262095383 618380268 670184134 594021193 793809111 864775006 911089111 747772188 786308868 504329542 662318396 839106359 885964630 543854441 712773269 259925666 357851483 802380536 838057588 721715697 975068771 219100971 820003195 731168205 929732084 992053525 998134627 281270982 330624023 981773567 985987817 774012205 895113353 453388080 941522084 512745596 785753363 638741033 713723172 660182074 856359447 913629248 925641966 425459616 660250880 847798286 931571596 300002653 306277665 848717289 992847385 540959364 617781060 324209441 614524449 620902345 985062384 834362122 936309018 833942083 926903657 602452030 647524842 75903924 341939450 63285971 804685844 980841390 992260776 103045678 420487236 59297557 712424551 421824648 574837951 331740725 965834178 597133898 838158759 724128239 773668823 399749610 913298630 227726461 522973189 920392916 996414070 11533156 103164620 664397557 977168967 417421069 874990736 549949870 810805758 258101364 899097693 539436610 798285710 365195674 814502238 719180682 900940798 106232591 428404794 956203277 972744828 473997495 805426316 646522505 726026239 394061399 578724880 686918972 905765922 801487290 964102352 18936912 387072959 906029638 909620671 230623990 862809824 527271924 731703693 930813991 984285371 564818166 877456957 292248900 351168925 3598792 136476873 589434482 971077914 804677801 886017845 351707947 667868005 896315533 899892670 922487816 938740849 644538212 692603099 917042454 930776814 983231190 995953237 343526861 983315411 762785783 893542051 292814971 944634349 553037710 560515922 420455219 624254514 374934807 553721087 12451312 223390140 227552066 229794530 118720031 953793455 809148222 979442757 518435224 779098789 666628463 755685766 740215685 943319110 293335389 794970503 479351178 747097804 662139836 905716889 116816968 223594558 15793452 556002616 658251328 804826506 662026224 856944840 188647218 470965054 356294883 760242687 717704745 993227253 371252318 382626907 921908819 972436968 771622856 808496799 358054845 495782462 349715207 905013387 237197849 526924200 443937911 855071834 221470175 413161012 642954890 993890289 16952015 400782292 210354049 423398977 538362663 658568920 924665321 971915612 702904493 910617271 949648055 977394056 876075483 934270308 288492099 952654408 297567974 808120037 969830982 971856398 604456478 972748477 109927872 259119513 330641595 436921916 796333030 938829910 330230645 644027176 632438929 777292841 184396401 488437795 524195615 797280753 160381291 628576457 339999726 623290210 806299845 924123399 894501114 914105877 353731491 744024108 182879100 218315162 40043089 520419493 409641524 861965080 829611948 964618920 555969359 902432001 291681294 957334961 703767846 869416635 756351477 862043228 935732395 990465384 797046382 978545583 733140308 967096554 7682822 759995932 577039851 599293446 766240268 874758905 232316959 963542389 527841213 593070414 625463194 736661445 346660725 666203448 952613997 957769273 350418640 843379147 179745803 847042703 533168733 813412775 849211790 985682554 197236523 307959827 37922833 392232427 652480893 750337774 955557662 984318194 289800338 336227101 793280394 812575284 301880265 702613819 313353836 839115789 652523292 868475956 818285836 932847466 229670338 426525713 535663748 994402010 574344844 911072318 720141912 827806145 978939385 989892300 624784463 848274990 687025219 954997916 660370963 762680116 744350422 991734893 883850887 915656560 238310717 500541511 944584673 984307179 351594794 491299979 619444021 909805113 94939217 970893901 176652796 467066497 365580372 784164222 257398948 615788714 888611319 910120603 592622556 922127492 524404576 913814565 436292837 854659304 160445879 826949580 790138279 817498298 411665949 598086634 391560497 480881300 387104329 612256457 797495877 809778757 417761363 439158317 40907611 944366555 52371532 218057684 527619347 801261965 569439296 624398701 928663344 980353267 956359254 969944007 891439599 930673452 253333826 443441099 831397988 946270706 605620546 777765161 680922974 745287095 549424037 623806747 192158505 449895504 135836702 431121901 251497573 367663559 969744593 992457213 626953508 734829169 901185474 968923431 383633124 553341939 159082077 741184355 488225817 816347036 492641798 889234635 481777735 650151543 654091478 886019472 446394479 550516182 762164666 803343847 324509202 990332132 817604369 985813549 562356628 702534059 516461123 785822726 539444319 716837031 590039997 786595114 653855687 987459761 391261442 817448679 440558678 592542607 867201669 876746286 134511619 676690220 528817208 741636232 372731062 706001443 994482539 995115406 720870067 867247632 930288128 931134423 657413080 870279787 829090092 936160074 837305333 986700664 956301597 964281029 176761159 685534004 713416165 817829202 689548568 844138240 816461078 979193349 387497225 556561239 517431859 968244304 471594190 502809084 416902553 843860392 440331955 604020623 902724058 999072940 873567356 996284706 483131614 760296414 361583512 511995254 884237118 929917705 442419370 720663143 876119579 884007803 967873236 985638973 323184658 690849852 264875935 625711321 353458622 875984305 772890161 925898406 920883468 982138297 896741697 973381295 715770586 983668250 69628877 285829642 394379560 396045249 797555725 805074579 441913471 520809236 736273969 847252997 111357173 919991457 299264350 441989970 547052032 553930953 254701842 606939119 642046425 729132705 419068406 482728796 510762244 544329583 689948168 916336167 644352632 901552040 297004949 751461696 559307854 575922616 633409324 843911655 87384546 520215506 509337785 863702567 153693891 211727425 311165857 880433329 795897768 921986116 392799527 914804504 588917634 993262709 65020391 859020384 317545391 908007594 531345137 868246537 2524235 859303814 283199667 892156180 111298192 304736074 959023804 977439414 15877964 793480447 59495665 150097754 497654294 548055926 691995147 844525597 535958518 655214292 686529835 930498093 640678336 733798573 3951359 76587257 303445019 733477439 162887491 447977119 856788771 917399937 533944639 722033783 661437226 740902413 228242661 297517715 981565147 985830967 937165755 986181463 882428397 958935400 244204668 993548034 199783779 939349233 511677006 904953132 260581203 595792095 459424431 894151502 896356499 979226365 192305146 351755206 808829340 932207339 49318185 588297653 488979702 739645436 522803721 730266971 864239217 911713986 144099333 620853275 130656135 607325439 731282388 780742699 66450960 461085835 851936090 865170878 428432367 456283491 880334003 960923293 10852371 407271726 878710361 978017774 869051836 917936308 601824792 653258319 837386501 966000233 420787142 640871947 297101137 839787417 139620099 768061670 130149682 340476664 674149165 966128030 701027866 747421865 446868962 756502900 169482005 918384277 499718793 582755372 49483428 85424545 709672003 999174744 134941465 369343873 574432356 977824212 758727783 937429890 438959358 790050951 717590068 719973120 51002460 221007226 6124547 279649254 549598532 710887967 256912637 668071411 146046195 726092149 334592704 857560131 682039923 692960087 249314171 900937820 138137164 664218714 610098174 709411929 161580950 375177242 697517663 742837802 915524591 976217084 741449847 908886587 906404772 953315098 572805100 621457917 565500777 773856072 758065394 939093353 294025484 869898340 750143818 922494126 83058363 485678725 857068530 935053809 737237276 812754311 918221820 964350853 587535152 923283425 482487296 781589660 57659486 211431899 622952714 975872727 869814215 937937919 771027241 916204423 344779898 897666947 325373748 497993421 299434675 941960490 793197904 884092923 715904275 743581711 798832715 926787209 410104699 800012544 535633307 616389886 568200659 759875468 364483408 935436658 684516498 913481034 808994664 850655274 461938060 657625778 286375793 627773898 173498269 598238385 998214905 998446967 766245023 774316469 439274637 465483695 423540588 479977657 627199841 678594913 795433935 985811362 441129152 585974613 710775177 950694523 427641614 576145003 411330822 919480500 275950640 862559116 369002416 395074297 179757764 445805249 696448959 951579114 288076257 811788865 658973350 910860366 461127086 730561295 911947556 988454531 216921418 266705483 843149532 955845727 37993080 393100206 878578728 893605212 497205529 564465760 259665498 739909019 692940870 872427629 146774128 171355723 260829366 862028038 334929115 813855892 57041957 226154551 306321738 898195883 256814455 575689187 2403037 183914795 169069528 876293659 159816628 983727775 782860483 819793924 313781846 519728144 325887611 730210307 190743668 218132943 657966971 982699916 549148334 848981563 779771807 977945674 35429751 394174580 278426798 895241327 256428910 987969312 513643747 759330367 324009374 581716547 648956995 945641548 540208543 800460156 978755333 987495955 530966479 830998101 852041274 855590537 247179037 951074952 858871091 860213407 300896076 569793210 168940724 952031384 783270042 860665022 932439991 991171215 415170273 598776155 930739291 944898762 151115316 726536756 400432399 447575969 163721623 637576909 932458459 999318585 377328743 931964719 446731119 709691402 773748830 789962998 552358693 721789443 206401073 364765892 837833496 894274628 657574303 904897100 179347676 520221660 458886381 541829903 416857368 902147122 938542358 989454647 443555555 516296343 97391926 203085986 359122315 657940744 970882830 998500996 255570138 660873584 889887299 921260448 518555540 816403166 10869098 937686930 733944594 863460396 30373125 788958490 221821318 356464430 701564127 879918898 609110431 679591574 218541038 679721908 898207154 900593904 123761694 160350281 527964161 598505189 74258720 627368823 650015652 755785695 64592221 169277691 431191516 887125526 492215358 663303287 124049405 265189138 905110036 971157438 164627458 425548666 919463828 942592316 874145913 887444283 525527575 931997787 81045475 102664189 407915027 426171865 947610789 951679612 431706173 920675083 777215253 956143876 480990290 760676418 717332992 775232253 752777987 837381560 840895755 858231845 482327750 611739469 85518214 834032345 817407368 996623296 510907166 895635262 593862774 937614236 218241324 427352859 867226796 882626803 380925025 812084218 481681974 689522891 134277516 572890707 889625751 953447967 786756891 902947274 644605323 764079391 459800187 642558525 674682340 979335050 3021601 358625658 87669651 554928262 758497845 905125168 803782442 866952046 891323153 902405872 638699976 729450768 113000775 477058239 816439495 943842325 980000905 987241427 958893741 982200430 538946103 837115883 937501615 983315158 640225814 831575328 955451757 991957353 172906367 876173145 370277614 591339365 388573310 669164173 276584829 933073703 894504808 909071530 162641275 610814749 600518590 670802261 464393991 941698287 286010826 612860793 412685720 555292422 478709805 902467777 114267107 901594680 860778564 972002245 867317706 977382267 183335228 208553906 602364702 992953266 170136742 614108038 531173039 607906073 6271904 174580257 715283950 759655563 269549390 736933413 672997509 947615317 791973094 925673298 32081986 86530904 478570597 807571801 342282505 920316071 564631208 709190602 887852019 998344004 575661210 863124491 635803474 944462666 827100234 945833790 419990987 540635355 715673766 844447458 123516400 851044266 652937330 828987175 963323799 981835873 360835792 688639450 241763742 701047669 856560033 871353942 302055118 839266713 469804148 735753357 218455578 854963038 404571275 431853882 116238946 575221444 748593690 930892591 42675570 235248430 904915690 986241867 546922713 779973521 1423772 501026466 459416689 532542098 683346801 833634700 8655410 236788730 595635084 876368431 656366156 918564796 451129733 636909652 910901590 950073662 989889691 991096034 82153322 160099186 383405804 789951787 261273556 563291989 829213126 863055801 683266847 874327205 623854042 997690135 889539392 974613466 73628531 698696007 554045441 797097095 187467149 700713946 56971805 799015503 447795303 487232818 363414694 488656282 104921523 793799488 287740492 692146633 162849861 330105357 306502196 947289114 780829157 990676096 422645795 864654491 639183794 916571206 512290952 625707430 320175100 476292996 759552141 925819569 335442351 541977772 494290484 901073880 605076882 694425835 787360434 846280982 122886557 738985322 681986721 815863377 703764805 967336169 515384860 914522093 612484132 887653570 936203806 946887846 543492389 937542129 669441113 759108316 77764831 337895721 417257811 947295777 914181820 928109058 142839111 862138217 26845489 640210637 725132586 854397202 955139138 967851625 424877586 783493196 614937474 929454722 722073130 846166492 798073544 837286733 909917176 990040993 888169366 918168101 894220228 925260840 168018198 301746178 681835909 745416099 247062381 297083160 623212576 669713045 608747185 631391938 866583474 939182462 931247639 937735557 234783512 296384348 549734927 837620497 13366551 841239179 405592106 879984288 743479338 778327171 623871435 767349887 674058659 769730445 442114625 877262348 423801172 666957340 736997225 758244174 205240498 397606923 949005348 991400456 997383088 999244946 812834616 927640746 815728690 899520685 424566615 617207528 415647132 709759001 194027378 662291662 346904120 928762672 971582791 975589605 684016530 959703848 483547423 994707821 608310718 772396395 703557341 828680414 171480185 314865827 545449190 831261990 528076401 950707631 131471132 230865463 406313212 483204293 274914631 627148175 562979757 966310777 877303448 932081114 427269794 626017398 397037220 719468514 253680452 796749251 252601188 903392112 467753099 782926231 819937302 989623589 384427483 739613709 853212805 943096555 423343642 634558183 883205453 971222632 816164429 906938413 584243160 868127981 761905635 949590599 168929504 896556573 722497547 791504012 590937927 955516402 404112070 459598248 671008468 700872249 119002018 793178753 644362991 905659392 731594324 795145952 622881413 964452141 883306822 970230082 225158082 547920790 536987563 616848288 593564493 800988266 781132328 884418162 156101266 463518154 79956544 768425652 470236973 909432445 109274803 575748077 196218180 904341185 948242721 989980068 821745638 958394074 406962997 986672558 254359167 641745953 938825998 951674875 38151381 422524413 656223471 691158172 362659544 651583333 71844540 382908848 199360463 492210141 521734694 610776599 150683108 374679667 934346106 953059023 562665925 575942069 447511288 547354971 833823913 838306940 536135670 766848929 332760125 355055501 738915771 772962114 388552543 638936815 159490839 177038617 546998099 904400488 538760846 814305906 737434205 922018605 30854300 791311696 348409116 377178582 292075145 615955009 514398278 633016481 810279156 940075913 905524139 908645730 817376556 919684780 387102006 748661621 260081891 509168737 582363375 740244174 168857564 926001464 263662145 968268089 874850680 878788019 507954301 685509460 849423456 998575422 782488064 971965319 811268365 872062165 514420848 903957713 820927667 995913314 554943397 864704646 363635005 789188915 616586468 922810947 880614832 977582075 20843067 667146042 333124585 672898006 252035687 531904545 204367946 311833498 152099347 348655074 753006362 817361730 288036094 293841677 27421783 749795291 376774435 787883539 778541155 962782693 983135920 998853203 159137465 418492280 73029271 836773050 488338459 572485602 174044069 600691960 583795848 759776031 761625873 822625611 361249052 975294933 742947862 842126894 121572618 918927117 215170164 793505313 14916000 398896592 578038748 890638090 548952365 966028300 588934214 960209537 241264307 919227417 586269197 625509211 48048284 631070885 726454841 817534575 85043143 205921148 552621481 869805482 809834038 905702100 133308286 981530803 787596531 850962896 908229581 983859597 523256377 635998960 261195903 574682643 121691556 849358499 186091188 651352813 492529378 579917061 715714483 814726667 517218795 669642394 584017212 808181700 692509851 991643594 861489334 912949485 262338018 844042159 742822779 796576008 736052468 843390953 142060387 814444736 261379312 708104496 920289670 939737396 160394889 690190912 171326387 461027957 967848834 977529286 722277588 940371236 659002271 997252629 83736037 921762077 787913405 939709722 737230897 767873805 501885608 693857751 988711377 994480383 414554377 436427184 854047922 929283239 652121400 915710530 360367072 881419451 870300993 991377546 368865629 611692031 947430498 956621811 188419010 941089106 332690680 840454235 758516754 800779833 619665795 901857720 587345990 973540469 393504697 622343429 225510490 445188267 893889609 894445186 590979346 973330330 532834523 973243944 61882320 437990840 247824507 734012326 543432255 664728419 729954625 772459913 263478723 405781773 858179692 879726464 571583386 655321938 662125558 781536608 306511903 955899489 529554949 868552734 442479841 718613216 448287542 545590971 580175326 993909963 233489703 738740671 911227148 978348239 564648266 966032239 413251845 830404282 532143734 724904822 227793369 239224047 329488933 940490480 248790081 732897247 680698590 870200786 489425788 923849962 514248851 562476394 397207117 934915641 934413245 980739107 502429564 953381980 371519584 554789128 616978057 788578073 839417067 974958150 369088144 423555068 491847786 515287156 965774181 998960260 583318530 926986031 640194124 921150297 941359554 988186371 882499587 916880905 266593633 268990167 912518274 929842842 871671662 894718007 363111549 784517052 769070980 846329847 462715915 962145163 130730603 217943940 933042836 994526736 233469135 627677262 102334337 588034030 201206770 675342232 823208655 904953858 48177652 267671864 911466531 914357018 807560887 903773559 435576632 815580474 864710938 872433638 566621068 869961092 570407937 824807325 109599527 791716171 952767175 987398115 120161118 944787463 119051812 989285970 450375415 958547336 459343982 652329378 936024595 972687545 166378929 491515709 11047764 230413249 831139175 891541399 264171542 972286100 875704681 917569347 913093887 995519737 6730896 899348708 278030198 557179296 156718733 639034220 123096427 944887201 195046410 611148117 403412732 981990692 778548519 779275594 559944648 874471326 318579617 680089919 655943900 997755519 948549515 980097517 675571330 831453053 575817187 863129582 824557409 942822394 210307947 775267708 463482697 470195839 381246657 414618722 422978482 862476563 64322145 979194386 535461351 696519083 809373251 837498068 455159162 551237614 833140739 917388223 605287895 729868775 956678419 961235147 527141538 726535212 610785972 755853381 872175074 917750400 33051046 503124322 707378680 738278858 868943752 946016838 418696232 775947909 882563429 913359106 245065074 284517851 891949217 900842809 468837115 963929013 821643952 900304330 533585378 611878383 967600034 989045481 117795354 336969257 169240540 738630355 503449881 656140397 376096904 663867021 550288645 558923363 935263462 968636514 479815048 501279786 621596057 643074025 467286875 741201885 653388972 869378812 402239094 893697343 221089069 583590070 979149557 979926772 977379328 978519057 503449849 840951351 381478541 784503929 858620836 960267144 852830919 871777288 128784890 831951429 113426594 482970745 387967791 578372195 863635754 903739579 965919167 975812298 259359725 816529066 658067456 683959617 629644790 666911720 877548881 905822514 658487668 936384949 245107252 365142782 454838757 590170557 725664008 974902225 80424186 514242419 85699568 889614250 184324550 533895864 718707604 934663261 616442858 905546563 187750752 333338616 463437890 542845430 90475964 900105137 581177154 831925194 23154595 646768733 797354798 915706984 200129660 220922171 213828102 721427126 316531781 908869630 877248516 932047429 464768753 748174308 64341433 112123515 884345747 996725494 635528196 923225095 276011905 311040049 502879451 864593998 250677129 412472867 315345811 613214557 404054347 578080245 772206663 827648401 107149059 839400508 921454008 996914154 720789604 984236680 69597774 656183595 431870953 977817623 339444019 834338069 666470369 737815336 410980783 875175393 154516882 984344940 806790845 900562535 800389780 921776921 322293597 664347173 222355506 845642652 176612576 907737193 958765106 962573084 709935458 927767420 548594232 703867423 974609436 998515868 132411076 220698752 282960738 663820422 637736936 865204368 633232635 679163607 795563590 824262585 908084417 927552695 589665408 603294420 250828874 284438044 161869250 498433227 296410777 476148064 831103231 845554298 241380909 903581921 245453663 850063847 532628394 824565736 822319068 870875222 55310415 706642756 202568251 961381362 801951614 952953010 599720244 761426917 164973505 523227492 256465746 338358615 100871144 246736177 729100853 832972496 490795729 663808158 443479273 474562187 273507494 621571658 456938637 890304259 780980957 903178812 609391526 622144126 517600605 753622748 447630242 608483659 751177709 940850116 482586526 785494557 751560253 827672737 448736995 666707956 285371517 647045509 114937590 836057119 52214920 825500122 623921565 957940307 791197470 928484398 724906800 812139442 541224455 569995724 286570673 545047813 187994769 394723036 148998563 243846241 817296547 946284582 374054659 712753480 895809360 976050388 148094375 235345331 981450715 990288102 171848464 670944394 796277160 858170614 280835065 550456824 208594420 466570840 583228254 638985943 855222356 870411298 939472112 987186576 876920124 926567995 507081454 970647137 233506640 739070614 125208258 394834884 116691876 385548818 764709272 817090428 765596648 860216139 968558152 969591065 224774357 399014695 367057259 383631896 512405499 957251599 788529450 835115073 606335474 787784607 224087522 925454165 141594230 412807023 253889586 410832843 583713578 808393504 982787828 998204717 964017831 977423565 626891443 825909113 851807729 941501421 510257470 623101294 211226189 708225870 915925229 944358548 256626596 748978532 936352138 941170036 856083854 910013780 464085424 974334349 82770143 513276401 933621294 952893643 37708362 97946523 223667671 750147585 560772616 565250173 629972621 780718254 19887550 908002717 214240261 783407352 246285333 593463037 815885874 839287933 895090608 896976196 68219960 237890390 164678433 935605312 520764600 771926947 479142273 754300948 100276222 546499001 904294374 973449262 817368967 925435914 375823309 984263517 126211908 797141884 841643385 891096096 859089402 908041962 752222777 912265114 257803559 876396128 937884422 964150522 202304276 406970657 663946858 895957539 477927361 582460162 964661843 976388125 570249858 875871082 859194848 989468430 435845568 983880010 121953015 273117331 294249130 713773295 799684422 905244980 538881187 763293604 224003741 398973249 461761595 846729531 498125664 835656354 131987864 996457614 26824441 91953660 520556823 904278777 336057086 809827226 145323607 856098685 190997368 203462841 28261890 680069956 20715859 169078672 727676467 840718355 999229976 999261710 991311095 993677668 714844183 951685290 612644203 887636319 476218231 680100353 166143293 478970372 192049521 660426023 481060181 635829050 599708104 760049249 578330291 765673086 669985314 859059399 274537704 458035630 862289182 883852438 204118320 616224418 39280725 306050153 18194908 926891730 907268937 946733184 518162066 752906522 155536928 163209590 584432257 827499916 832668987 925758729 246393517 945142484 708246847 785600234 877368518 988168672 811857447 916549317 130072352 137481372 704442149 738341050 668175593 855247536 319103579 947996529 317435929 848767792 279524511 335510228 319090194 776397007 68015056 348877809 391630227 865065782 422610088 983371929 896644207 944824936 670962818 757347951 434927226 771450567 696456659 733710039 457659755 903891595 478322406 566488583 488132320 940573274 564707938 998603214 500163610 518268694 141741 652674042 537226201 935177003 792637112 969634082 372743616 839584040 690108119 944745701 324158721 737212285 111666190 468741452 387726268 987785160 977366056 990899484 42940705 600837876 471647361 804784877 985123929 998790953 20699556 954222795 579235369 606497865 820324876 980148217 970969378 986055435 745652594 963543078 626998898 719369943 789657900 938946459 373242050 433932012 168137722 249475252 823616739 962964565 135306012 696537895 529592714 993349337 936356541 955234340 66131620 456302471 454682679 495725262 925377002 972623239 297492559 550041610 757857078 818735919 546656254 574226468 863157404 918426727 479612295 672025447 267234078 511712916 862575756 933405445 39666203 618601678 908236676 983720047 15184932 342041189 172860234 318983680 130094176 941853407 144918859 319976721 878855508 913339879 202451703 478923530 296284044 481567592 339751488 547495805 453878952 473363924 939646059 970782420 439739796 765111028 239528434 801976771 105456006 799023552 773487201 856224210 438544681 730726918 852612730 967012357 270533469 287507000 505047343 555488591 511270673 664549976 604199332 610808045 465014312 803486486 552318959 865105226 230773190 342276880 349410985 682332880 829475944 951237491 154223406 655950130 626155938 735264452 453492840 779457984 376791073 814310109 925744919 970037021 37430449 889084512 133520270 500037045 379316271 437664241 115620219 690544268 994881644 995049052 973773429 991345552 494167897 731082475 810938356 849040949 53391733 978280145 514443562 585991391 304263 410551015 420657566 712708545 822476772 970290900 623030565 977217800 773862541 793553410 922396885 976135280 285693608 886372758 497203316 707112462 21262780 814592302 297813586 438444602 597711967 776895910 232651043 376139055 428581082 741511627 579040992 915116482 474805887 876385283 576005870 901848208 534238563 679678191 221730973 902722745 900832362 905376199 346120376 368755133 788735525 996522090 519178635 890019036 453497333 863107951 660885809 753005278 114472528 610833672 985959039 991065025 247017328 450410633 156924653 535649605 481022068 722471531 341351787 620631346 783912291 808611451 540825176 608521943 67988452 700262997 531483671 910890888 992500371 994349365 297431227 431175815 746081579 806701295 50606707 544145864 728152234 860450852 52656107 213219852 759895741 815374600 162428155 163276871 970484142 989345853 961930767 993750423 469157495 635410720 169090665 440304438 392299852 483951187 106123067 662745192 833248127 884347556 928581779 969592500 36124365 291939307 597495305 931131336 428435258 842192486 64765383 231726903 612564354 645527285 614620754 832343106 821757434 922292604 639605791 948075854 622833705 718906043 705666983 811405414 902688098 989073908 602516685 862687362 34634708 640433580 102148019 968459287 98380281 308809977 78616129 592323822 656856453 897986226 213103553 736163641 985471405 997904904 86806350 910817886 324463722 487939867 762153353 903495099 923542906 957242537 703266365 852184418 103544785 207667482 819107546 920931569 407155303 644870089 683718548 786146786 967152255 982425936 416758744 849989908 523080495 704934748 970845306 989503872 187943665 288484642 540882221 745238984 697531507 766627487 490893963 787968091 439523271 484207787 217007902 850785502 894527714 945878159 565064117 926356590 498004104 741131054 313128850 727646201 194878863 442772759 95130437 229725143 311550003 910062464 761309322 972618894 687476375 881753351 79061789 476236303 527666969 949413084 652847802 684602474 182643753 307910219 538892201 862327313 192936138 924309229 275093043 437676650 707746342 781306239 720376102 799792563 158462970 862949471 636318005 703293124 944805906 978994565 115263091 889284724 585604262 914117911 899783331 958376887 772218211 785781050 179661424 947428502 515846668 555178381 746595926 863773126 102316184 847441346 145165152 410990064 14618773 275516468 20777856 110992151 803063703 861441140 312323087 871656149 253821647 826254579 650578862 963542540 520500145 713013638 898187571 997371845 487786666 677378056 579566654 833539073 575059721 605058585 718592595 795371379 301952563 956159334 161253256 490930223 230069206 287988837 689999547 914473762 904850038 905238846 93594754 237015295 160598861 957656409 249665115 321652815 36366867 824368925 547090180 715930127 306109951 716614360 631426465 843621926 736801922 790251896 521216928 886674547 95541122 696819557 880589052 971342141 254056421 617472783 42377926 799246413 886914722 928860355 248147674 291104914 451052146 530868112 503802960 697569200 761445209 788014392 505227049 754346910 831708496 851849809 265416851 374585250 740953455 971665023 154428490 752922558 20102598 583812999 193085228 352257629 734592419 759347418 647984929 880314905 345076068 432067149 137349510 390776118 182708197 472846521 87892833 196990713 781443362 903511692 419539881 561629623 918078917 969623201 88669525 373827691 402029156 951628236 472470052 821819019 783256660 936511072 799082243 981275954 103823679 376624778 945515819 970384621 922713732 998681948 715940935 859010344 3626350 512810325 128930368 415240709 269318983 441639469 52988619 376947042 397531070 652815957 987442953 991518992 127186374 698730973 894905329 919593485 752740734 814360611 436521177 976446215 662181570 989330137 872077464 951753328 398221758 443842329 622418478 768153032 825627228 953563165 497859990 747083981 965498482 977520070 936739440 946610619 61065901 521579931 24771913 350849926 48999555 478076828 621412606 721157554 522541025 754899942 69399762 105298462 599818469 818371616 288440717 917196884 975608181 996566250 826209396 963012788 760641803 939359532 300916378 502939774 632333395 850081166 654688776 831831213 707362204 997856892 997381118 998558044 455200507 601711537 936698029 961151674 809340622 874828167 190929620 208174914 559733357 763043253 322733905 532721621 900515895 936146180 285640734 972167095 331937920 417654815 860541850 946732711 275864563 685779726 557868286 992588121 813653196 914771929 419463345 852600648 99828836 743990421 194044655 648836195 13040643 428464595 462476392 544227045 413443682 816646174 974016900 983108670 722980579 934356074 849136190 994468188 154946743 943357232 925921279 989382123 939227692 960072205 383450690 432728728 610903369 836059285 10477709 147025691 889394941 950953622 502758995 509096350 1080733 781303337 363957191 876522217 442696653 561941373 807545896 971730254 145377828 858437003 433752520 543789137 54120745 871668149 350384613 598690086 156499878 306377087 231593783 412703643 608703502 902874761 445819896 622682524 945654584 979652660 742891568 790347976 628517317 956921102 673927966 955420274 51548359 166728674 146082089 342696987 266048074 312990705 976671866 979306227 650102896 792325112 698540196 700475748 6578126 380020767 172122954 904315198 353396963 676117534 872529682 974838663 136787998 500448158 760357688 945304926 463876039 650949678 26361276 913851322 327845639 861456600 98080226 538588344 125170510 431644118 816253477 864826096 556779653 964628460 35030824 521091810 396559479 477903813 44738220 577697015 680670219 935710993 468316215 537928005 371143307 951588602 9656460 560909903 196655739 726727381 135797047 541660193 152855593 960848913 772640256 899407268 836325493 931379837 653843569 788628164 654076254 931884636 193501838 796969106 482016655 774273860 210661985 814633851 932806476 968791016 883609078 914225632 72248072 953216172 300270491 810995351 569149429 818405853 407719635 715684440 933673198 979614960 293275334 946763457 68648986 175096836 725538082 937215814 815948931 887494749 360070168 470277791 606513680 736897797 114606138 187536839 321304509 718896857 966284329 989352732 995308803 996568463 326563965 709899911 365361304 962758845 61906223 301429960 945609511 995734495 60561558 671244368 477756309 789023173 359818723 945198411 957314959 964694456 145862918 615602851 2334284 427524503 276383234 922491101 850616423 865082184 381286684 456844017 114227337 492917458 568939042 830053459 840631999 981280275 179329611 924606380 494689248 964451029 662910605 873312145 501098846 957494473 352325696 962856674 42712267 931805178 502151352 710617939 796049748 811052353 780504472 875578506 333212160 916314275 739522705 967821020 619171281 795228548 466086721 482725929 471785568 499778728 671172278 849609517 66066379 561471793 321410733 426227908 576674702 708001525 138352495 146735534 920988927 979207322 504302050 583443154 228728113 946762543 417726794 773030233 465695362 581971835 920014126 955333464 401127403 873192447 963726220 991664064 770477287 850741190 563913404 831796792 188567028 820600105 8716162 45966687 806043296 870501894 214431689 220918714 524567290 673590090 106283633 417505477 6750930 945486325 31648927 812542244 578023814 652181830 135537339 561142353 522330500 788915257 293870479 976881160 936324360 980349220 947102384 978583844 94608198 343804809 301222865 691890731 643230940 719916605 718491161 933691247 736071656 963571693 547558830 800552993 424995699 623857281 755649272 823436175 101896088 125825647 28013992 839227631 974072352 974547869 567987796 978570521 147220679 855906543 429575477 942192654 544387180 729641681 104974449 182419857 726773162 985601833 86265115 927241809 813680033 880398559 827426045 954212777 867965085 914802464 287879773 738743782 962180798 998130902 357465185 986339827 309666642 313544990 804550404 886717802 355849305 920628420 301601103 439853072 605771280 708569497 454316966 578047469 500900794 600503013 369123988 454372477 248133377 331008382 597486834 699216537 794225065 896869734 705861439 714909713 930400415 943393527 514590782 752630476 925077795 981812405 473706328 657475726 211473603 905838611 240287878 356467786 54025010 507242282 353783153 371262571 916431421 986025168 362822335 615225663 361510453 537111067 327864128 623076127 952235440 952840444 501890836 761176573 189607290 380119909 567804043 975372733 930596244 948110597 181538041 256013201 623730467 653523479 137330883 829414190 693075814 911743174 438571653 554552584 188205473 369084309 671412724 754019838 59162727 467734308 432925643 512369483 886815218 957501684 85918838 222284416 969161649 976639272 502591200 679938907 6190764 62553393 484738901 870667964 134437376 712339184 923251380 969851850 340037804 345790164 964276801 992397431 961900686 967550570 515314231 906601553 681735896 872567034 327822873 480199937 37728967 107077787 654499265 857220720 132946228 828384564 968739118 986596997 111499547 749323678 781773235 848460506 4600681 244699887 864415609 991043516 588347879 631495977 594292031 696370520 697769643 921084140 144553646 926512426 716558332 798006856 104464210 573334985 181627711 691422317 567722390 728074986 199195017 747082466 511723179 707667626 609270614 785978263 831600181 960322571 884527130 938524935 243661917 308819635 874748470 935766265 507684426 870521882 177350756 444560207 199728697 723571944 166629689 947722800 37434109 964431652 325504652 616600144 897093452 928163038 490473229 673013907 358051089 550091358 396088128 911203994 561010504 566672410 333960374 810811521 596680899 822715784 292600304 550645917 963615903 965520061 612175015 851512515 509338576 974150115 836590142 978207158 431736474 942701731 887082299 965599535 758955881 807890801 277525960 306811574 691907848 857862024 362786320 398149546 11411192 885579779 294299317 938754084 403747252 761495335 177614786 195783339 92456804 738013004 90616939 767718411 814809924 979305982 633077208 800443828 248827980 951506748 325116620 565833475 55873470 92404330 789075745 847920495 106503368 129588774 479416751 959406053 794937132 826040277 962052728 980480805 440074435 584433064 352503415 927998776 348924571 483027536 84675201 355863693 439379855 940298484 179845166 339748372 365303757 655410157 492483448 909466181 841950538 996728687 375828138 966131637 429739361 900110083 896484151 897241521 66065758 290537323 827050228 865189056 592356550 845947544 388028377 844873037 503020636 636799462 78589603 756157960 862742756 871987572 980597336 990130787 196900278 411962163 962516034 999236428 982680125 982709122 795266843 875185857 161952645 261145822 512450644 745988207 839125968 947435097 101989572 711390566 686254850 837834266 825039490 943064875 528758216 591196564 445380733 813429797 636531955 682151136 502787824 944064404 27845495 931027271 53395883 416658617 383851964 499504846 453258715 510590109 879660820 889715307 985584264 996926379 571230113 753099382 612615595 954764814 671964085 731625285 270716020 703678356 214817056 599225800 220925228 224718820 917169963 975939491 349768766 536915183 768117029 847374990 603370106 733867337 745990985 829466064 690597151 895359560 883752155 906456253 660273863 931628365 3553522 609241379 452234912 515909833 953046769 967624954 427714649 501000585 927926430 967593596 928960475 965016668 166289225 792947436 307197973 774706140 940727890 973899055 919651244 959257265 494636054 707143980 599581292 611232148 278774560 930960359 409946176 510603874 211915901 974693729 766357796 987929322 661546321 918259268 926877249 959794109 762537002 997661935 462818687 531522418 531662193 791058056 425493043 649218899 91052281 850550823 73020364 220293943 506593948 811579579 337598104 902074667 515080436 620703405 905452987 905962892 113461764 341680154 271329620 592979293 976152760 985742472 254755302 968654780 915745188 947999609 345103331 348275547 387856100 503544194 693763965 799863246 871307457 878385739 90524867 829786584 425180941 770352594 987863330 998719662 749254206 938590019 366630351 789569129 493428389 747222230 93291155 295385173 370488685 780019407 286853468 869408074 768707198 879419736 914901948 985163468 440914062 462556956 775151904 933709217 108572202 823320450 988640411 995630282 350531517 838844263 96838003 417805226 218521396 897902126 635767643 636711780 632021641 945707495 543059625 575901877 857669049 919236441 114447659 316781496 938391821 997635747 584182351 860770300 266275467 811489283 178053757 463607355 963462588 982934393 332557005 943786190 762996267 782321335 48274887 856885357 358029324 387891004 309288832 968244320 734681121 938433117 608447857 777427985 860928678 886947835 158974570 490999896 77980826 776582381 955366427 971867706 819518078 921596811 843918622 945406990 51740208 337562517 834987574 971410895 578857360 733672544 761621393 988515463 479795644 680779116 119073709 528066771 287469320 703589631 945331466 977592188 729504013 927551627 578977029 819340034 476616545 721718764 213260796 997680736 212361430 870971565 151068795 282552091 136398630 844545019 749604054 781884699 88503302 339858640 440077098 919450796 901685807 986546621 449484419 569468934 648613431 809750818 933665743 987661585 525837767 901032063 772607505 833672748 954001228 964370770 817648501 882376516 68547419 707307419 963559142 971644028 28756865 470036248 412657094 475117695 598959726 682053717 176932559 602751171 755305322 791280373 182371309 359037138 616520360 722643084 380475095 516191230 808740507 914006471 853500492 942681151 57428253 720996803 365363835 570440544 514184377 974326153 920000333 938744416 103735104 946100791 604402511 907787914 979345506 992643269 600849536 744036478 539863876 672762649 919216014 952872069 204855045 505557942 76278494 310402271 737933925 773571664 460854858 488010497 689803947 715780156 534907689 800414765 132792333 503234510 404522688 972838754 130081873 219260174 902360203 956246021 111032357 804819586 372436906 522540926 364609998 543587460 333645282 541294835 97321576 277821870 168566263 635825620 880032194 929784301 498498473 909771257 109013305 450900346 277020556 487157805 155069405 233557384 222986550 361134667 600590497 693754726 719875231 922603824 19956925 672997426 641892703 985086029 418150692 908175755 428813065 990198659 79983685 211440822 772803511 813844381 419997749 435594530 484327165 659613409 72212319 463072647 184058053 915736596 752911359 971066708 328503732 919276564 349300213 839703765 323795950 571984829 273262606 969849631 847179275 946094367 520942551 806034467 51179670 668551734 816891124 952360153 789623374 987459460 476328971 703308028 803116050 909535938 424950144 718475577 114496681 973834917 317063320 417235184 829742092 992501162 646557701 884345337 973127192 990444214 583671329 691594551 949356216 965212364 921438577 967028268 324202167 454697582 380675613 499070146 220710470 805090005 760028550 804497892 924471306 994420470 696028123 734794638 644890389 674336739 853824307 885964212 364811610 552029637 436257309 775528785 784360520 797950883 708677002 789588840 468274366 766670071 660332430 924868848 189054025 386306995 441487634 583162985 763137905 840578430 116480040 951818877 428671605 603741328 744202705 839025418 913357494 982273034 92371844 460453638 664792214 856107145 103130777 378048358 695333489 846170464 729874060 767007664 127506915 348046173 992404647 993587739 466192196 582204832 463293652 850990784 819722215 849341004 718778911 969393172 306499636 377834592 574212777 782265692 970611556 984350301 445653614 992141481 169944048 974681295 858363205 995268184 842673407 869342024 130231072 206268414 796974230 897588364 536833577 860279150 31227150 649932825 884127349 947976744 956998919 975003104 374448326 666499246 532094547 671833367 453056387 957424426 800199132 949078675 482403248 765381230 424070485 569215211 509031069 776815413 254950107 622290824 478588846 504371788 374560237 474145697 75427825 432856130 944106366 979977704 754606649 791149219 418365045 871359916 811096704 936447437 370798322 595484820 567370783 803237383 191577402 833633432 703241799 963977652 694133842 842999735 819923085 912544258 929754868 978707976 937847797 984961535 100197761 826110371 900843688 937253410 290760049 291203327 648892530 951000894 631596756 870148928 81435782 451304714 491981894 915492917 41393361 870569321 73090344 432167109 244272556 702721861 467556795 773087448 988317771 994089290 688313707 728017211 491121344 575977810 462741162 565014860 407745512 741221683 781907668 932867785 597436135 773121502 637552207 825397975 172105911 251566326 818562485 865665640 138047909 941084913 877612593 987004250 31291312 523126869 882176459 996784697 950779782 986996158 16265341 150168371 868565109 897182751 455678889 879833651 130556397 978421795 181163778 360197735 240731346 426653290 705556960 820058778 236684662 752018897 215225281 572751596 688098944 778932014 56800889 165186705 330071734 595915903 441795182 670842243 742190197 895149441 141191236 509406782 835240342 973702683 710972785 942182466 652371385 674881719 61072287 155062639 592240434 823934928 876751023 951378338 743841872 986748864 68263996 319829524 388135796 968246991 649466536 780630466 243634152 263690499 988271722 989408470 520668263 525879747 166754434 841599330 5933006 793545232 166427941 774357541 998065849 999357045 900178476 946380110 752951294 966728033 551932430 561222287 482578608 845614484 539105421 896364401 388657464 546701972 663701430 745294497 724728521 808116664 918441648 953451605 722835511 745496313 745261394 912049610 791618021 968306508 86041337 660089309 517320759 716004397 875438578 952999897 848938095 892492231 316728129 958074570 755003480 888239805 702692058 803144679 631927077 995106663 253179175 281507011 582416376 840073272 23181050 553708210 671873844 801405888 386616647 767792053 773722879 831962915 513178131 673644873 85306708 445732828 734531994 977422298 298118975 734144909 80386001 709545887 681792921 849461621 101688370 752803459 851806269 880397207 263617934 919162830 972563481 975488328 124857605 799501274 957675442 967639215 298935421 555199673 337313434 867974871 294066208 477718344 398796123 923352776 54173935 768830534 474583797 898631061 599010427 828014722 126179546 734294307 277385188 401383420 101064770 480716520 703420560 816615716 355029052 757364738 915507031 929871373 103944335 293219882 701610802 815406441 523817959 778214333 433891983 863584906 924600876 998736244 344218164 753737105 477438085 889454519 454736401 620139545 283552761 822571105 991739249 992851228 236233808 586609974 506390535 864146223 222101011 600978714 496456999 811397085 491033238 614712909 136959094 731770749 570728511 688584100 568573441 712511574 130983375 905957263 937713983 987448726 594108000 683231128 164550513 605501515 302463140 850772157 201944028 561836936 904606502 981150641 899349672 982354386 139083919 567400173 462583594 881932968 855097205 882720636 306725091 713084606 655892245 932135966 717153914 932571235 303259966 459247104 179271619 369728729 153554133 931574577 693237463 857304132 744140694 758172626 311797748 407170823 967949652 997822412 122364038 515026979 403771181 823815126 329340054 821269468 549523726 709610384 175556374 806507682 470775235 674593571 223090263 702523756 513720832 720289434 704453259 930368902 814880361 946007798 186939532 462359690 415351601 765180109 533596295 782734464 537620021 710785154 253542077 588965849 843533882 981957000 715741439 778549075 340460391 554207413 557170815 803985901 600369738 647363022 70320930 132623741 971580519 993764377 145812757 862976282 154634613 867683620 872218731 901100550 604500152 746452934 921842177 956880038 233386608 637171372 793212456 885673624 922390672 977267974 320068145 909301445 546224870 568723514 123549529 538200165 989790230 996630707 406224670 949386556 923732311 977479867 54216091 861793706 30529391 557978602 627657150 978059699 367002211 726348008 748968375 794470065 916542929 992554148 19693430 111109800 870049529 943513184 584464191 923052325 909381477 991476009 123610881 972757079 419786001 789351269 343196546 498081985 277775103 961885436 577260459 651510953 335546271 349229093 752851122 844470408 272079394 685651298 37146686 737164172 904674369 939563748 598370685 861055181 445458413 446136601 346466542 956078560 497242812 592823867 860621967 993260927 83329181 982526188 3271376 62444030 392358126 981921842 813154575 885031948 347523408 513946309 704926978 743317322 740363268 767614351 980115555 987425143 462758425 562262856 863312469 913604314 418413765 972049987 990084839 992830699 436574384 762766559 205296736 526545077 702362907 853915801 494681674 640843802 808458857 892234453 565062735 943112184 396125573 581715458 923678058 953066188 205204695 528547131 978586120 983977090 338908630 926172408 632752622 696557733 95060604 509314587 618447633 988175133 773817464 802217510 292354576 926202438 469966180 956919791 796748539 828379031 274760960 793404262 183369991 317604477 325654889 600414225 517569329 878714440 706754785 834204188 576607741 915140494 789517186 859805792 245719619 828390804 266492939 596096860 364974954 989642719 854672739 885297774 929979427 970521798 579076662 946275660 274619069 748571824 909168012 964669427 406928130 824569917 979769322 996287299 50763563 145269293 978120148 980571620 489883069 562349300 387133484 975863484 439875637 498489532 324531709 487827280 860644862 872056231 28275897 732268640 54963652 844364867 149896230 682457955 35552102 939242575 117658383 674210932 347715749 626220359 538068947 613706754 162710831 668490166 973353657 995732280 125838737 197956534 960443578 976659056 420792602 435563298 377946159 593812603 300007153 404143150 139618126 916971298 161839927 322229348 650662256 861094233 424592722 516389807 335998864 823102739 137108930 880381954 15257247 648925617 725771099 989991735 32390820 128204461 336910227 443907954 189084285 682084039 477514358 655878692 383057631 948867242 241814464 455027195 292898449 293239396 178746492 786473538 239784781 746387445 534280690 881580697 474396958 809850366 663283226 865385862 754128140 963555577 574791466 598739799 136719037 785355293 835666336 926824100 203131424 898660838 824971338 870738433 649492966 711954121 60545824 557227664 626887140 717672303 218248567 451812090 79641902 114079599 539494954 697247854 727922529 770186247 246990094 302208091 975404683 976291836 92779798 415419792 719817767 818682799 98344197 481236185 274036984 711471385 78547427 159103720 559648511 950269690 271325537 515012437 777769151 813787512 673898173 830020816 104316061 709879834 934499856 935458334 179963763 732312592 432400189 808226913 281638855 343630540 922082174 979252973 434653566 893155202 299401969 561008605 225177907 831647906 897588634 902296103 814779229 824498936 804767805 964301502 904380556 907964507 523770311 618794371 931847729 954303856 85329882 801432212 80917111 998324886 194823754 931258655 795708593 879608509 302264533 669875819 844189027 867732944 818576027 992348821 710861706 722200027 192332711 327364732 116852318 704956723 775199155 960395705 113750701 531754176 616159652 912403553 967133760 972191641 225552787 292597489 516906623 692052960 709750206 918096422 391042789 883931270 683146101 855598771 482172957 562353442 706676171 721820056 208903000 911292019 347176230 364015072 989883629 994329103 860357795 969401252 503538906 971494971 403406678 827004508 822508573 875837135 231669210 577887735 766408748 900324989 56507827 396619068 37693604 680892674 995550315 997153704 161147490 916747179 213867017 236253251 17704541 538188642 495989652 782001526 590291199 983106813 335594669 956113514 335180236 758277375 9250496 902277840 738278542 918623607 158494372 672444497 911077573 964812270 371890516 423216326 30730142 984853016 470372972 656099412 901497246 923054377 326622576 520258854 278935094 739140493 169056027 874159663 781117005 891220385 185573813 704830446 406733157 846698330 276169498 610519028 665003516 860118711 681449871 799764382 700080042 958728139 480417788 505298552 830000635 844143570 621732329 647388885 657043882 781703522 163015064 600044842 110457253 341212200 159957013 851983521 513862829 863676792 520046022 851158385 944989055 947920465 991464591 992685436 224199427 439329683 905993825 980341545 843309090 985438024 184767253 882313011 18204641 32091597 484452373 646569215 550974924 857458072 56469965 969143796 864359819 932331164 498660011 561924074 16798750 274052475 997919640 999139685 221526874 516544198 64437105 355370906 423108563 457933841 264159672 655521734 47580553 931524317 818917634 998114301 785584281 890280385 249998992 842498864 246192637 546773986 33781347 75097369 680827873 758045703 677667121 851475289 687284077 837382719 595811392 704746020 582494623 741190073 303069901 343460187 912937421 928976779 301714440 718198451 173978454 569570579 959711357 995408389 665983054 944597618 625034445 998663530 185763174 746674048 56770077 316620384 971159171 973023878 870276938 913941825 60204544 543143355 316013616 370873224 786177609 787803836 254130444 290782440 770940420 810268902 590552570 728260827 453005001 959390375 526224796 717969555 208964565 638524599 618074112 897758037 642005904 713768818 830934805 883013086 342728146 526886374 757919489 964187460 247484276 257103587 533417323 705902381 888703789 968193424 945053175 950146534 527371910 725086253 22007829 293666242 429267116 469650684 110216139 373298419 172468358 429198167 627034836 768254866 124845511 781131560 993941821 996883032 121926173 696320733 993665136 997790000 628670297 676409050 625408463 785734753 982031997 994804067 722198897 921962719 226231476 969629068 795332832 905347002 973392631 975107820 718362976 891217521 342264789 640967810 106456792 413193971 854172416 915098752 874978614 943923377 976868293 989854493 899731719 983649770 139444483 638551022 813067418 881468476 681744750 869860860 763840742 776593494 994337830 995411603 593586066 956389832 961519266 967569958 689232183 745699119 235910034 236941568 168398849 917034520 262606844 934419218 737391225 869257485 781756745 995679410 532755611 594456102 949633616 956554673 716820765 977199396 946464846 977144889 666468156 907318369 499296742 723943290 612583412 621836382 770766993 956658300 191539916 767838475 148475572 501441375 160851406 561629912 894692302 912237611 779420771 963591904 228126791 863855044 190610280 452178040 790929549 826754616 418552404 841898705 155095769 991287765 529079319 771666697 245984521 583155927 848809115 904295978 923482822 960841088 716392298 879905437 903607756 954093553 400139229 985341038 254966689 552722480 77628199 930602783 879960159 918562237 742418259 982013004 275155355 934579583 681529362 873561855 782871512 995816628 981717473 986396718 287694126 767140413 102138097 139634840 544249699 961101509 639313687 740603137 929472922 948137969 214283013 268924371 890975215 954730894 265666923 649928017 284796486 362296654 942172450 970345131 426354714 706649092 936019736 990905060 389225496 513626703 174930582 455079192 192849765 347423308 748398688 812531426 114601436 980606836 274768641 486877378 238333727 271201833 38238029 300636638 160981885 422622951 209102584 324805255 259974335 643715289 516759602 932142894 942387792 977896040 955505704 985836590 85304383 800146398 20311214 592884076 191949852 415608952 127795405 232346210 241088869 478049544 254271501 324841112 873111781 931128040 221819641 526863823 197716819 289641154 988705387 993328643 677293330 746922246 246445675 379334754 714376685 984021424 239845627 972162131 981792798 997218851 706374417 802080112 65018592 893417120 885426505 924334378 374315965 960420714 506476511 549608380 160375812 990744269 605972760 645988563 773863505 846898941 369623679 552250097 265428133 792270039 847387518 934884329 464848933 787572463 643989818 960236908 382373177 849434144 819308657 971279700 844874677 854263879 36348780 990894102 215908451 416887343 723073293 991243645 870282964 945062476 458118061 967288163 64019163 136565404 899034253 938336402 902597976 920527364 261963536 494167480 440242066 971207093 709469369 794566862 237938447 283940973 830838370 978114530 717805966 802426019 942507673 961535123 174328721 757197657 304570366 930441409 603671344 610073833 953372741 962805121 286480332 632759679 459826872 881325636 380290496 644413397 969896110 985971588 883500490 903056396 687843368 729020951 38495251 244240096 761942273 849512454 863871208 904848114 245074273 670430223 56055413 561952576 676538038 815747599 729913893 944872237 413382976 596812153 200803628 937310341 844098252 883528096 323880978 959878297 832179551 861964927 754413566 940544637 222875015 694621909 973692713 975421450 796298346 985707653 384144231 846979462 624955405 842492371 683925067 822332722 896072344 988453497 459573423 487269134 544962313 938945997 51431824 828970475 601244433 700752963 153565628 968936820 730763539 974291401 961000162 971418631 618502430 674566448 101520794 334617522 375236494 700750447 241883005 655660219 428670286 449244155 477978578 818226763 767400968 926312924 784302904 874805423 899124318 941096699 235501699 954272219 868467725 887497518 239308325 762136172 854105785 928864689 664935489 992416882 480655910 703511972 453812583 991346271 596318531 745929960 327713364 981881244 388142425 847942148 832404148 851238013 333812055 454219925 250434723 980067872 717624438 858564453 302842027 872496784 565147679 842532182 776591390 979515986 505363117 598844880 199411090 396760755 625007948 833028072 866605515 945671077 513535889 988516544 24258836 391526697 644253597 877013078 383587995 659367450 649190705 812870520 810288646 910077316 43429359 757680908 636731645 854417032 347370574 777374708 384897494 862904591 369740209 901729036 661213343 981412445 959558287 974241718 681210252 711262189 383291559 809217227 355817100 699084850 122120127 754104250 537756928 836714274 192446457 808352310 422698728 689510998 601235595 896656614 116656226 766378775 875714034 948785948 282695513 643910351 562120283 837125103 880627688 937048739 520323452 685975253 708920146 857687531 807926715 972597778 334913094 977478041 693171291 745698115 356547988 844996998 515921378 617541835 887798173 942581338 294431928 579023206 170065008 898666305 324676718 362061461 389310974 421193209 902581975 984533092 151144351 385555635 307378662 515337314 826600289 849948774 232703715 693301517 131834598 913194498 986340374 989069484 340802053 541242558 23206354 594728423 831472844 916414356 103694760 335691823 696545802 893547026 613098730 863901777 59621852 392270595 988734177 995509275 758091275 984637768 685977874 940033305 815622327 928597951 93016516 500639265 619869901 818199886 790610861 890352665 967989534 977454590 196098126 928154050 802992913 935125142 998705419 998780315 865035479 894614794 618699795 786603871 685183842 804100694 122485373 781127048 786443526 882669969 66024207 784402357 569548821 844168358 107713682 402513526 771001689 881298605 822379451 977223442 754480589 866954973 405540505 670108082 592976771 998099476 403784222 751542038 889005893 965918494 262842196 970697471 226151284 446097628 355853536 946998322 573694637 971128291 411842225 498849812 276929654 494376848 880105339 923315011 359344468 901809253 667001329 869407923 839136986 936311581 243644800 501821912 469347653 901567436 874783491 934727455 65543470 989924795 31164393 69100465 365069582 646508968 982016583 994250573 407691497 869221766 841573651 906577604 128080017 387188131 21908630 93504007 184113896 975133505 442777959 949368716 411504141 734015776 230026691 682292262 33137424 987315181 994478195 996940487 536444053 840756455 516037867 613077965 15783185 337142891 703366565 870067971 901012914 902837818 597906479 803424574 964909991 978370595 689884793 709434781 363918321 862214656 308144701 455485493 267804044 306934674 742051684 783571391 777945679 832703174 207229031 864559542 752218587 873367351 718080419 907417075 418992854 718101415 801999940 808508149 952248926 962059609 764021609 910580545 226175850 546252569 603201686 669951331 495326390 516985021 777198079 834852203 261480117 904603292 299860073 507762898 105290956 985397188 773775776 991058447 428113065 616582610 58741691 316204297 110402034 892390961 834691821 968214256 451727992 510434454 630807354 652906873 107022888 270244605 533123204 739306635 76362784 549452078 780291965 838902694 151545774 292474307 903558615 943541486 424713652 891225137 493880327 843792447 959417769 965769278 908877367 986532027 386322604 529897381 186796112 564632400 361532032 444995650 845685049 926512734 923956269 943587425 270989126 419264921 853724224 869297679 201482819 391936900 529886972 934738395 385139578 423736822 242417551 543964789 487430592 496449178 602351762 715875323 816702807 983251633 986407853 998360179 374752655 416088053 911832263 947513833 196296087 983575479 886599336 989750030 541586355 730904413 498590425 948358937 929658076 992981056 305905789 964363837 524628320 747522837 222993853 975612352 521133270 568843391 374098835 595925249 418710439 738694279 64558816 596100814 312955666 652838314 83155729 946987688 635903555 954033359 336480898 844515321 301973022 792345256 467337768 519320686 720366877 942664638 781285160 823812502 810482101 880209640 897189798 929687417 961338565 972727273 278366439 684646501 175627595 400955386 877930510 883878165 713738316 791041169 946788657 983871885 858011928 979126452 198233718 443233937 493063976 961780250 1877183 482574307 852675393 859921095 535197294 633591212 239100449 848476104 223551898 412766241 750777503 777297773 187943778 550968816 423245009 993713615 581988471 683415434 290449584 624447546 686122489 912947778 665568746 755159025 580546840 595164823 510832016 927593244 586989495 894154851 719688439 879604933 873961584 977824371 981985292 992097563 766810088 789003116 607575904 884217842 361856393 576901175 171347912 436248485 192585384 526362371 982302372 989856092 253382354 335369363 591511103 637261642 35025141 685919801 528574091 836132909 87842996 932599959 735399251 906222950 148725207 403406180 599500207 612925323 839363606 863108054 529452248 939111404 362255590 971969279 570094928 784125512 61728336 443860463 865291416 958875329 470491357 735720239 516763775 820212677 335677491 772465639 864633600 904107753 405121634 785814058 785315543 789701658 149150324 660636527 811313019 913947351 465612315 772527328 117379057 909551317 744385020 759218268 240566395 496395715 693809980 743098781 42884725 320088873 835658253 992307020 112255613 407782932 160817402 503107509 839000494 845462827 986602740 994109260 539023282 809811871 324262182 725027622 982927655 997280589 738280768 781551370 292017175 994234101 389224660 906638599 982296083 982318547 932596622 972304763 796128701 946409360 636242871 864738877 845653702 881468417 955254394 979493882 777537393 936221769 940532896 958713706 247111052 827721641 515967192 526568192 37932359 350829216 512191124 725852517 255719519 500521334 682571497 848240289 935024203 988241480 209936175 878701318 606699498 892075494 208601080 220699802 719512421 735181233 151468295 274056705 620142257 756522065 324613344 381862090 165486870 489174362 799292820 812106151 929764014 967195994 144356505 232104149 200244042 351060669 597534362 961189858 368994664 433501667 148399350 414571093 823348156 831804291 750369042 858381560 869156225 962308018 12029462 421587553 382745797 739445428 393005772 533689442 753829567 799378020 751974095 973986994 94238384 268491383 604032173 764986835 810449533 954046814 495262202 843927867 415982802 894943465 308072192 767543651 933063358 992419564 183296276 323176680 483435781 542114174 241892260 243639780 861206042 958719715 955811931 984559545 340592054 628406998 834791746 882030523 430375925 593784548 317394585 886168479 207783612 902372055 30897357 127656253 484053707 556848144 973889383 987192328 513014534 559598985 722808013 898601363 123176085 643842782 883363487 919682214 607843209 675415206 842932768 913076508 752559105 903955031 33562211 944763197 810763357 847524693 259698791 791319149 970605077 992248926 705437965 862005509 146807888 703510077 757774888 790704074 909095095 993495085 587645657 819938441 727472500 838000659 896818247 899492698 217398369 587212270 810226783 914120922 561487944 924471144 380233279 480809517 297627647 473817383 579831673 989305967 363942727 768722448 449178864 865946661 893498684 950753129 211393947 591845010 574355358 966502665 26883060 996557067 441845568 929604514 64780167 123800872 672558287 873780154 323711042 793710589 199832106 488679662 442164278 499313588 892885463 938820379 66141437 255218524 571101431 927959369 6550160 365023427 227444218 824609606 800137560 824024149 812359114 906742368 539070293 682757387 498320765 633488068 906839774 995504595 133484262 303264730 150247764 459559519 676556114 798278116 813664395 988550798 610435020 986457682 137870858 407750164 111695967 453703233 524548924 721234293 687707249 848170026 235346092 783664971 233053746 951894565 819474046 882178170 173237091 770821411 783566539 900628158 99705380 178826640 628920348 695502182 695909613 735542178 814370692 915016649 340363093 570175208 368998138 978172338 216593749 612016513 854800463 954478916 698213689 703227978 465589234 562469543 272466960 407071501 476264531 706960896 365969177 590975816 688314688 965370441 186532061 791092754 854912872 972015684 295028137 511014402 690226777 916340867 473819656 987061433 974248924 988056202 989974843 996405785 729899626 773392385 334498442 797245438 298763071 880292962 240234549 716027078 502061889 928987378 384455135 424795462 208105279 574067951 447342330 697267191 741014548 994802881 300278164 843929687 78641105 514377824 388624655 854631465 157764815 832757177 210414770 521523213 406217104 830598671 106402921 225401325 211417961 346332824 356867602 881702876 794909954 949109597 523022517 973334065 55424792 690781645 546390571 621660960 742996884 965218821 975346726 987784983 638333373 860297536 188407587 455569429 956577108 957060575 784777126 967033248 147173814 951167643 125900675 436677709 156224437 680064654 729677325 886425814 921282543 992485731 807287969 949907283 20393335 223764397 44896946 607885994 807297062 874588880 964874564 999125682 344298499 599143757 111224386 604348645 853791498 885343924 843362740 991756346 769817791 920022956 864266914 908164203 991123280 996437803 231457832 833634001 475627957 897125260 895683840 954252717 893369829 895852882 931472346 959591318 52865875 645381743 415573571 666123452 809052738 982103725 923480807 933777543 573072620 743693680 555671812 864961337 992277948 997292780 479208609 736645105 19435978 817985179 752895080 895242195 675918386 960389476 234125238 532269260 662676163 824041586 34149012 428213486 416340454 854675536 453386808 867697993 499367034 511827553 737206541 868460251 110061826 641417175 808433487 998439280 428736903 614331199 868848945 902452517 600051188 697094373 613869458 937838636 904500901 913533906 136787560 910760063 346610150 952695599 531290323 630234240 684796512 852439759 67181588 830557979 884148445 907880662 829782475 830619592 613596022 941561325 287309346 336817815 381715394 392525682 440804354 510912548 919927927 979833738 377018652 877296722 816792381 886654699 625706779 691293182 903304727 925686517 898984869 967442668 626248187 873512268 69138393 678418932 395118368 733131730 458655890 584675239 269455282 868173890 337996132 690924144 826082844 837107362 149996293 785895410 566436733 834706953 846996542 925090641 830926821 988660534 126732376 245376913 403898651 492857071 901253454 949345360 654060010 673788812 341634837 970636445 928129858 955121133 649348892 659592519 165710864 967356421 954065921 982537321 248971879 651986250 899903103 903308745 965975200 977250115 37948437 279899803 289420494 323305645 28423229 994620702 520096242 787030896 710650972 988508359 869434850 982701117 208435893 903962075 33230950 835728113 168108459 909784941 228183048 917570153 345284791 848006019 350644680 593204165 348907610 987008454 1737173 480433805 410691017 837028783 9051203 574917527 504297950 918193048 630741342 901659062 474151647 963005608 199661237 922578142 992317698 995374395 603397577 804921722 264018487 563802264 462762465 598664704 80708715 658503470 606985456 706525085 361402214 747761294 927240083 958485381 112939482 590321383 233003837 584653301 971888384 992219763 627487901 970650568 66229881 239838916 1607025 260181246 481843462 851712374 779491727 920956649 5804956 109224759 965526553 971066389 602766800 922849313 46471985 971247410 126811831 909375757 250457640 917728267 960411714 961354259 656381053 818026880 51802636 770033687 508902002 582693538 238899013 431211499 92210912 216220911 548848520 952473271 359106335 587255472 715090076 768773487 997149708 998259080 266662242 726690303 768105445 950775934 790503644 905210253 918418689 958367085 365834316 728209743 780318619 842000816 198112945 780224466 861081864 903871692 459167336 905580135 226709875 618801862 783223815 938454642 527789095 682764211 570492035 728877855 75243142 460115147 181179517 980328029 715181528 817398808 75206111 807720697 111778879 909825848 183588654 675808154 231135805 277796241 29254334 593183844 406673267 693979791 138815373 525258149 960752878 996137694 361904078 513095140 478012041 725420638 82508125 131826249 762666890 969232501 579843546 734682898 546692767 827895970 737328027 884960316 584081766 609626149 244296145 673480492 804516505 966448372 260412426 958711443 899808081 995691220 469617304 617254247 519971184 565802033 521555428 829700179 633687685 816745551 32205929 582959991 775798028 846503758 374187746 863475585 537071801 952116237 931782241 943206821 123783047 453288571 380847352 995773857 721418791 769214231 313789072 660449047 907348918 931750532 67550847 93653122 756484280 872474438 593472727 671305327 555992802 562346355 316020044 588271953 167541805 730474349 638908890 927314538 41459483 108749858 29647162 47544335 992742527 995795922 537886799 786743767 350457218 608608425 504574245 530013866 924254512 949325347 372186839 680923523 613604407 751210126 611195657 724508419 276115743 296035504 70733666 880198744 723021486 785933533 180161995 812833311 911177738 983773819 890877754 975252493 580396011 983279927 494967758 555566898 713055414 829346408 694802209 964853250 806816071 996551244 937102376 941237164 124374724 280404630 389425674 968280614 21997843 607825736 679478520 715399817 547005503 560801218 207817645 332706576 236446873 738621024 437733594 459977034 875966570 900522015 863364237 872215203 128483358 811579593 476067943 669476392 379911328 987409209 183164268 992666146 767590675 851510909 198640730 506451197 458943359 646617603 678744049 963519419 848411750 888214610 57079882 89534478 209768940 293071369 702653964 716804850 468199730 954999347 879255136 945333371 187059431 840249305 370119687 982676976 14616449 135179215 676925454 728559254 712963541 816838989 543340742 739339815 24253418 511358959 793167310 838236941 965150187 987867628 464659205 676683274 571772274 812553048 509695369 563288152 533813971 712106441 206617897 779248077 368229455 608174770 256157226 352444174 413142462 496118274 843350881 900127483 758479597 923599610 15599080 882787297 492736548 758922084 815178682 863244429 731324658 849005251 716776397 784549901 366831902 444542804 824432897 839551660 753940074 883177779 655112306 768867398 138613252 844560627 369691063 879578768 424752799 595819279 454841754 586032585 830668693 906723678 277284093 884340111 192344685 422729162 7109861 155910239 863213130 905112940 375059249 466192844 320563329 903158329 310940685 897989676 799855466 816535140 670428929 736251998 492069009 556817136 777088190 962806405 293529991 793321444 220613900 825686891 639348861 952501642 442314724 546857012 65374564 565967046 334722986 338557078 799026919 824624867 97380836 429365520 547216115 812755127 931645879 993093058 810327362 922604181 140552910 465326052 706359037 722561808 104160095 600803764 508905064 527768487 404038112 867917196 741424480 977019622 704504696 724054589 947388602 974315003 828871225 924319410 87061804 685414191 80825889 326233921 419138002 563159113 790006269 810921500 932429980 962208642 20436183 177555495 708894609 775259021 935018034 981227074 482835164 975975689 639071205 933405303 676456812 693023001 117115297 368637409 876972756 966545982 14955229 693141010 156483507 779403412 761982681 897450570 515245817 591408644 13001428 279663431 563292875 748107118 434141059 740145617 675266945 713744612 303194880 857684328 661012630 966702681 677156039 722998325 673839978 714003909 832374050 896150170 760023505 884613343 663320451 823592811 66290633 460801068 282901115 765703912 368188524 471578136 187423869 376173357 980294740 995312940 184524747 772502376 122499845 136303543 234538839 688107781 246198321 321750760 212785744 963361879 114406534 962682282 61249501 351358959 297660203 943381303 835935831 868029364 569438240 635299656 20746550 904724251 319922362 403086622 665691961 796998059 881882828 914566509 834865423 874455148 40403387 668220212 437978989 738114935 296390686 957855735 797543515 904916146 450317431 643102553 451583432 511501626 185240015 637702290 555702870 610933357 45559231 331889213 558442856 979729907 283324688 308756597 709742760 977354541 775288739 984677761 731286251 900278261 641716273 679323543 995798972 999180602 947226881 987788352 561143449 605000313 447514584 989305521 972003633 991289389 432938201 850964724 464613169 867521967 602472798 629278355 773847359 889024520 558032724 712015840 703583278 873915469 91947235 375822389 540440279 679937452 44869919 484317229 996334089 998926549 316246135 768786937 722158160 851661868 234020437 316906500 284395054 985032304 182099151 954117203 300054907 729951113 743958465 997751406 56619258 664289759 275694099 987704487 859085721 967954110 837881482 979549672 639597007 793288737 650455232 769641375 391549235 528104032 635024171 832478313 94707768 569164662 162860526 784218675 923460490 934489627 986848360 998551486 584175381 968788836 88077639 532226401 11071975 215688611 958529214 968747955 292027504 422234967 261010279 992014461 714951983 755320904 271347754 450985316 88023090 381185907 945764237 964846362 288621660 621663009 163089383 439358785 505160724 982779229 960770969 995336971 605428603 795834193 476416354 506893842 912551155 916501971 654822892 731835454 681273581 879842428 202342100 457546533 134959434 638808784 901574564 978110473 752247555 924167399 937416040 960743067 230421618 431074127 833421170 973601618 157367820 268667684 770642798 821420859 22596373 86475236 505548335 594302569 758789261 837365743 485086418 651730550 583460452 597212857 491890746 817955279 341230719 539442140 208294404 559445652 610664224 996513313 401605773 506612654 79398574 689633770 939468125 978798282 750595001 923582970 133341258 786202373 183747078 558154303 278351861 674141417 242680135 390427162 852553042 855358602 710880493 894747120 138506198 394615483 989548471 998721086 907392947 968129759 84884250 696293431 995543590 997479114 552591912 632039678 218524043 757333295 112004459 551450507 748632490 793808632 297103130 509203163 950327154 986034963 127718471 756005837 408906808 560415609 260545498 935270935 213194798 683789638 996675386 998108141 401900585 484824022 178493526 577468848 697675637 923559282 864962872 943602913 373081210 633502721 395951868 874973580 652905813 808335194 904692624 967019624 665960858 793246918 341819342 435090500 729754471 841191579 508258355 761078981 464485293 535425714 427979606 822827313 787286021 972784132 455624435 806974867 781375355 877535070 900075548 967379626 456230275 646040428 54840946 383385806 675093196 774274994 450955442 607453856 607626858 847908459 366762320 871191953 608017031 755234892 387813380 479761562 12161484 813214568 771023409 809070819 922119252 935693010 906989947 959767731 53435645 311994270 870755356 954005182 888504835 959199877 696353657 787842618 700191391 726635212 189122414 364639332 184070448 586556265 30067979 655943242 911643293 984551134 32231292 43257300 698653321 707826764 538248872 822312566 537755417 746019977 118306387 823277245 300646897 996175186 924397559 961452983 140524494 240201886 106072179 457664186 393195693 546322094 912083691 956387648 8329397 847209131 553296306 965766946 996666798 997624649 209656852 601707834 78202517 940893634 621228932 799231378 77998631 509765254 573493943 662295259 400937529 408262021 374528823 953371546 416558845 725073618 754400348 850644793 723570711 723629737 396612819 985942808 685098083 951621043 207245848 431057298 60826685 746304613 662562658 690372051 525393321 996054745 632328049 862286711 200796292 459728368 825410868 841850342 937259104 972659524 999236871 999244687 681150226 866393526 120372570 616878200 391798884 496201402 420264495 476760812 331206344 788500735 764835810 948452097 479476866 617068374 96867247 362591426 279958519 860330136 706697122 985939553 473321566 770042236 211846702 649162538 633995881 762229884 75675113 709064586 957594535 991954894 642703979 721944829 249636943 825590770 763368188 952671130 819421584 855382995 257518103 696258362 120031854 375217457 428812744 547885563 780907763 991405963 102471803 505011019 643787627 953346485 780807034 859869193 617034926 708360813 487994466 855883498 243663294 793673437 332281979 428142131 889959834 986387890 349026917 623688318 885966876 983988332 203123872 292421294 39420332 184468947 440699508 458360443 309342039 570285506 206782937 651439904 984268014 992855165 793351279 956310978 694566051 902577335 138796379 343360722 243354326 487428437 146528998 670277385 860410401 922373909 731811211 802122765 225338530 581599083 143749490 952234090 808286463 898937336 344726763 610368273 368052838 455454775 332078995 793660377 64819776 162846193 265059635 676522154 438017327 953241018 264938024 607231208 10383818 118733304 864983915 933779021 554522315 987450227 920664932 954901799 824633392 828659801 385720400 827899404 859992962 875422949 409910303 510169542 9221259 187323091 598223624 642703744 300448803 734491734 462040733 753936346 22103884 521412028 547043980 605672050 256338670 576815433 58754525 455639575 693604837 723650297 735196056 821541430 964009853 992589780 308081262 581628831 34899998 794607808 427496270 561760504 514457803 528285650 897457105 987464592 64445862 476833526 543745629 737492468 568319425 849358726 219097943 835004338 641132054 934137540 124178921 897853645 91414045 976206622 116864899 643300519 631812077 873064343 4721438 47125503 663569337 989440763 847491629 969606548 8902251 607882059 706230507 987021947 627471421 757968283 112808144 357295973 438319161 647297897 357514666 670916473 30940025 159446412 708030338 906826647 996357078 997040737 99806189 447953915 463004504 863716282 179069702 195440622 244546653 982450489 366127372 481652325 896057354 991762507 134545252 908477786 319231801 367068304 62715749 106930104 162666530 478910820 27035247 728176006 283986982 647388987 215134408 972395595 710014717 938300722 136868952 813287325 76829023 878559214 491482076 620612576 694935206 980845669 463717538 735910821 638324557 946576913 749489230 929889786 329144167 811831925 4772577 865867305 893997952 955063277 403142466 877574560 470458417 701532300 97689362 697505539 152217696 681928042 191611613 660833958 752920243 978644739 655482799 985501264 444714039 702527288 192550748 644090363 933172539 946646437 119430794 786693038 55696536 196721770 350959711 942734533 451998004 996842497 9338909 341324460 177104959 807549549 112551119 299073543 326565297 677631881 712872481 738153068 333633181 795948655 493260305 904633136 384480969 614295917 143833224 864064347 305155722 403578801 703659950 965064344 729026053 800335246 163976015 964735581 743731951 944769067 588960367 636411343 227065836 967029254 515683090 575938154 128497330 683032630 706788844 897065518 121054436 565283010 46252491 136780257 984169526 991374304 101701652 282176958 602935910 839308664 45204989 430072290 500866773 695146110 319842856 698756926 814100417 918409978 383090674 682876152 269894171 771871880 503664719 750512490 862719325 961936956 461573492 973692304 831521951 893893609 751776753 797296355 90745045 237831647 202851456 413623874 635655013 971551500 702918554 909377451 427470864 495048651 278195554 874570026 250508453 441203755 559966522 591399844 113633605 310666318 749355444 933913805 831584091 920485184 60677544 906314249 945113887 991450717 423898982 677616316 735169842 953120859 65034313 641058820 408387939 874497084 123573113 145284326 531925992 540564262 856319312 916103204 241247926 825740762 601024696 715654512 35856124 381562596 815082554 942754738 19348437 916094160 501757949 821995830 600510858 667319791 311726477 817210247 70616957 535342490 429203630 830164686 967594975 985682890 159258349 544253260 418414006 987755936 415914885 475266711 72485231 722885531 855458752 976225367 3370301 589242386 34688441 249503887 666755876 893029765 387330341 605044090 744667237 906854338 857836899 997803183 546369871 934842039 986552190 988506802 912233582 930061660 150024494 696253571 389356438 917509887 654103953 712156617 546139342 948847647 85972294 730946607 43693649 441534987 171171568 536061676 434299848 904544968 415550978 841161013 985965387 995975949 148192804 972453755 721688113 826925967 115511429 318223371 937145893 998953970 717028012 902042355 956656445 973193204 146834222 406004649 929661155 972716628 497906244 689174937 996824641 996944284 434753688 466559200 315165699 866230101 734992477 994909326 627599440 707012095 770398074 824531583 688936038 735914056 790716564 991512653 649462663 959532632 693895749 740159272 939593738 990769003 776865792 909388618 916266458 983101557 972856166 974488539 952609979 995913545 992734675 996169945 444193560 948821741 467845444 763660964 459138040 724106911 98055899 516629517 799721957 846217726 6695499 460402054 972049189 991935343 326411463 730541835 999204735 999265698 515973038 757162009 783393050 851029562 213649367 241197944 878646361 983729415 668512251 775766031 272076592 917897179 769040395 857623465 577375094 620164058 379384801 900792788 118496464 254852993 222769984 505112794 67809511 637084107 810786139 981672859 323022239 738180790 765767078 957190906 65912086 417202951 824664419 884322363 636349696 892746254 718627156 756174327 332799630 349175202 341708110 475779571 233178015 512858078 265525416 955962284 714627951 936615068 745179020 895409023 523195544 556018227 978566148 991972602 673427587 713430006 91841345 374013652 253224614 482394875 935182607 986750285 297631245 516277367 184764335 449150295 911863643 983111243 6718581 591393718 280608527 934757228 182939821 252326468 912699537 973422525 492817047 506980066 603030806 746886702 790407430 823615360 313022004 627385377 446683201 985579822 692314114 880097502 166125990 618231571 996845895 997154010 53966418 275236034 443268892 646334466 488468257 860481579 183387447 330350722 586935217 997996382 812006505 899546457 797904708 822437459 246695615 548154100 50892635 430036075 427678469 455015514 340316683 882423723 589126758 783867144 430253252 977505944 445628374 957334911 303271927 474700820 492044536 605008105 242243829 815970820 149775824 950147595 993882306 995380169 598835303 797921172 674185635 884178806 99982862 176996119 871261475 982920037 565544590 736399377 94855256 817116388 33597695 300736520 422936898 832867480 21383704 346699722 936089769 959978211 866775020 938415762 714598655 794981075 75441929 655766541 331919234 386909289 661518960 803249620 643868435 994579200 227614327 717255177 928662650 944041010 876512072 926498722 300793102 983221445 738833339 981913947 544035491 674484258 785216876 838574564 334952521 836402444 780179372 926781000 982125821 986857106 38183357 745088380 988108350 991919584 857183410 953260877 520468771 818160534 568704555 659139856 604235710 670820616 69639277 980642186 846229935 946442128 463964820 726605989 59665569 427773860 172830061 342558888 266087955 436236897 528788339 810272345 801988203 915797580 261670089 388198006 15196521 652942153 888354605 981262533 903366671 946333281 875851 560561691 653658467 980096418 740324458 875583692 598274618 863090241 724689712 737932437 944371422 963652197 476217457 809330240 732148377 812408217 133224453 933517937 355224202 994905516 891461668 909341146 394339850 828994282 989198962 992365325 170704563 791617920 473970510 519706587 933653232 945897222 751819144 880991792 311782282 570690056 764770324 954358281 120210157 753509111 768237299 885895527 93511219 164052778 344993263 478317031 227641695 351327599 31100160 599270106 630412109 808425540 894224713 956261821 188031731 319797863 85156651 423245388 374580163 946122900 304053832 809587456 838555878 882709525 691605006 836729003 626637588 687114756 84925939 194945181 139266881 728757795 693755156 702469711 891351815 944044876 615280573 841365719 23799055 819499390 946752017 976021283 984120219 989498615 55023064 583707022 352701288 988903218 359855045 810141186 214300299 745849959 301223072 504041040 925290090 938815368 317944191 852093110 564751245 576828133 795418110 845669166 43076575 169797487 814738673 839427629 756129121 952705713 301630224 918126343 3454491 638666207 311748155 773464843 923487941 940747361 575869033 687316823 186065471 596351022 495044251 868044179 504364807 693695388 664056396 699214370 443689763 755867712 476305951 869627319 744721751 912963369 52458636 375556356 51922926 431041630 832281176 922785291 211430355 825402728 361204951 897389875 340426604 695379249 929584673 949044512 125814278 740352875 253500424 409257404 345562474 452655423 805755933 875413075 529720581 662702391 903743268 908247471 532122357 946703971 97660731 343303293 626007320 700289277 982696957 993879900 323611466 829821689 360951630 899527704 630473284 810499319 779687565 786274551 658568453 986610397 584201661 633153142 476204326 553702245 389118496 544991504 572721107 899696655 138522522 313595818 650584024 815954533 586030023 905121462 654638225 939476622 810872522 960320948 342923011 634663726 145806258 975921025 988977438 991612707 234446495 526513887 379241305 713125370 222571715 982891173 747925836 928543307 56680846 920188963 416707646 668263214 998489896 998868563 528852481 754231086 107776504 484320198 718384934 946804710 461472712 485057548 929963304 990710775 106036043 794231324 64770116 497345528 295237808 373661764 116054865 650408955 862288596 954346911 99655865 122994924 668011739 993311642 713805108 778426432 124712495 304472675 249408297 432693210 129435604 688254307 531366948 639537596 882037229 985589746 470581995 836516257 982165474 985255652 960688290 970181975 137170865 493881008 534179621 713291345 984603633 989110424 208865258 828368315 144801134 496100173 752346069 790176279 95044694 941444563 187035597 971363583 208939432 987648448 271810265 373985132 319917225 823772912 174626945 625659084 674598477 722660668 924607444 972273829 703552396 940428802 391001339 436096288 778218602 975354435 188889768 568233850 65568808 653945026 389556154 728934139 165063454 977284869 763091307 870763976 43372952 887414541 448366227 792962499 237827268 352962763 158215732 648048291 66488036 515746826 186324208 230998864 592357468 985818101 918180838 941697104 263379228 983542258 967359472 979858164 230415508 301690881 280741676 536704159 765341545 961363026 158112701 613722495 760402199 776288054 272288401 714508223 550719625 699991009 901792811 971321055 329710763 364017738 542256169 990393275 366069663 926654602 44120761 101208426 628751226 699876053 426873776 720786950 362516296 912608937 222640367 780018017 102977733 180898312 350884096 837255696 709068912 757207140 370228345 493012443 318442765 680088388 651800116 893110955 609566824 660769343 896994588 926466900 765497508 776624694 316135296 338546230 619755427 892055427 289723808 791516942 789098872 794819210 454685826 986184278 545095081 947244627 702131523 979631474 157520480 254047240 149271315 218351713 763549385 789522305 246767894 928568588 532308228 778316328 416856577 872045702 795416496 985154210 449270126 486637446 112913105 529979438 873775083 945255793 102390655 133200988 210686166 702309996 212371880 849145159 868491689 899163928 890820806 954063501 235418854 530227903 623969452 643069723 837511784 967528169 445489247 670388405 588397414 931238336 792895885 985165553 462046864 658907778 888588049 929258022 386663353 387073366 122655216 996988310 686102405 778748356 748673910 806694760 116195114 372613587 544486017 599357994 169960275 913495295 110108638 612539712 237758987 808724763 661495452 781471999 125788176 780334708 4702350 485896628 600855940 806805660 358866213 753815611 238873075 900558272 332008602 594794005 416926965 873182436 25466478 265374565 292210970 488114834 12051492 157835522 330190177 753257586 373100138 877166826 697059897 758547598 495189866 577960274 774000300 957977227 444909151 960963354 756998261 918396883 666707 550005413 168544282 777356036 43975694 662726808 414151769 928215111 604472341 705033288 83249423 410238343 693271713 699998481 334743658 379997356 450488282 700959858 363386480 981443225 910638787 979282302 896262986 965206019 892954730 927744852 131595278 629686817 498614431 786348620 206582161 608499700 194435234 510980830 701781952 834654322 678378876 701752949 685190508 986025834 14961373 452414810 814079729 820127522 942645125 947435470 286549838 489354047 94109267 786247522 516768826 868362595 785639824 821900342 158056057 874157470 394804054 742616316 164013233 490270910 791593577 977239577 786291660 945948485 328378870 944798338 902472583 945236225 181964543 928381131 216538860 495689962 963465603 986142209 285316405 773297289 677203282 813349670 560556686 877289251 819430648 966773750 991650285 995767350 217298260 664487718 921079793 943411128 89821786 904865517 561290703 742367051 91358216 481370050 362144783 778493726 11774859 671800538 774133221 900956845 739065748 799219068 247634538 347313749 29829810 411135187 585380266 930953349 861473799 901435602 279297531 989864027 781566751 871082539 957023422 993781185 801006404 910656958 387088480 569154238 961644992 987348648 37155996 425250010 348594234 569174585 562008894 811304893 218721614 993100951 772417050 852139464 24883554 507743927 369169272 627811788 53881702 341941509 122963847 805335551 41457195 179182656 92190876 864604474 255076149 950078980 589229569 810635322 755431058 956905840 863632541 902124575 210049911 499779719 69655978 744242508 755132237 762738404 415007786 828243841 656904280 865957757 253118332 292434880 862155406 921660419 171231661 234367383 177562995 693172289 150709664 254500387 780045520 967306876 809605976 836174608 992198908 992496180 686290108 965237330 949373756 990219074 665661110 841224472 291181751 618396304 646835562 843023803 406199422 995269068 484706301 868467988 124890986 403335387 531704485 859032509 165158751 706006695 454434016 498720393 97098364 631165137 442031301 996685964 680014353 758461731 715665203 757023522 170374692 819051877 282174020 644112847 310590038 492755722 651079188 838266446 567037809 737916047 574098207 767966186 478437543 946889717 78490449 139323911 795701542 827665409 705507597 935621025 391599277 793645801 617519783 937138454 557828379 918251128 751442281 922672113 472523971 735471471 814316440 948543064 902617081 965641002 983097688 991463263 267768247 925585666 830669629 860481100 275971636 664484052 792586682 909843367 262026684 908802968 809057742 978475042 998033809 998634795 41240134 415107985 266237704 386839306 47690709 382291464 753172013 875417005 361482379 454970655 938105918 963122861 133004033 478947010 373359968 452321833 909407838 988897155 815019636 894970324 991363294 996064775 388735715 701680860 10383703 739038740 45583822 883258157 4028848 867325761 336231240 696596605 382384484 469895220 122465404 665256308 949033672 963744760 287469123 549317964 132080205 226094886 992092133 996998135 839014110 871986928 308847558 805064662 584116211 757081059 432760729 953080006 72953046 206388498 201773896 939880542 340364487 882791360 997027624 998063064 52417194 920721522 975473966 977616893 783017732 948722637 300627397 754788231 958848051 981220825 52611625 192654952 13208699 682426631 538004150 872902871 79455953 229057111 179358783 322856057 23463712 513391556 459673992 999082226 555458855 962623073 500421207 598576309 909175263 995120298 790100599 979760121 453179638 792207963 185200008 831019367 883444047 987328366 663665554 895758326 84858675 919485666 141833459 444658086 182839637 535472473 110965530 275214752 993203531 998618798 124403601 772797451 716476051 894629978 557927073 738631923 478346521 512615297 41117812 499940886 490733280 534847941 690651027 891038686 979093693 986839396 487758787 563163620 554662510 860030459 643693686 722722165 495779869 952710070 701783693 810822608 242634540 378566248 59117947 958364067 687012499 951008736 358594360 742073486 566378902 832160236 317348953 711987216 490357659 705570488 632692428 813300617 85563785 903327249 936684298 939344796 846072226 954020542 249557448 313640617 826264390 973489035 837712068 912794865 598274901 881910919 167239633 644892691 403804554 992990038 518566244 642977164 705136102 875386376 723944408 857152865 927636834 948517445 672779850 770697673 204458337 275242871 791254748 844851483 540339454 788139022 406595035 634624529 752915589 817205243 133293105 831740169 412030145 907037481 991218323 992521420 565989854 867357742 318253954 506395795 627194233 916165106 296313477 557879143 733435878 984312857 98326285 604823177 48507215 999132392 22530508 900975907 489602277 538891532 63198702 820445990 671904389 878194196 206928001 628680442 392542201 853261801 701088879 703959452 553472712 839630110 644053272 752162477 637107816 746511106 548190475 595008320 930389331 988178411 642894365 772714655 294056235 672782114 64659160 74741761 287569129 986238947 257884795 690453072 916141700 999256252 368111351 476946754 587953316 705388914 924614822 965871567 702517328 870463252 565715502 674780825 961944585 986511902 108484929 291189600 725124458 750262999 312586630 534865988 158681942 722593112 571662989 634237185 668684444 914284590 790751229 992514313 116751936 593685026 635401455 929532594 612871280 793150002 842514194 973359735 549967308 574402058 766764151 977782123 711324389 793562271 903092407 937033974 60327928 153291185 403776020 602228075 439438450 514360977 139491849 508398536 724434508 938988005 180757824 389602875 821370521 985121258 373696570 540614739 335002961 617112567 771417102 955713195 923519429 955479535 857686216 979838474 572344249 958580067 19135659 357952549 229849163 839081159 16569210 147119697 266555755 445494891 314047049 585093454 810716010 950660227 753902996 952865971 72754098 644637592 105829452 947064176 532691657 909982111 924413481 929929800 456882507 573566328 688208172 842471881 595117880 958647082 66959190 216538171 796815203 927227856 898196623 969304913 832644376 886398115 358621451 926225213 207730283 874366792 205827683 976884976 59061064 885701830 341251935 555314530 873542227 952247688 229895273 245419833 927108049 948217123 189723778 782313985 571725129 828947409 58415165 429414235 869951464 993594389 844540985 965911732 585978541 590689441 341947668 347591643 724354324 769434097 177009610 337568045 918282016 996738439 93138420 856678342 312363184 639872030 990940187 996430912 797799244 903463157 981749751 983339299 763206692 958712793 92148612 272709780 892692418 982015812 961350251 988600826 52155845 334989567 447459598 764760274 664597997 667056378 263884667 803651059 750266049 920340871 381545188 927568746 568303993 891563617 946422019 991748580 291661390 384933203 364122864 977521833 774173501 824015116 182058997 222735690 879273097 898756243 991556449 996711762 697663510 799564112 360619537 950583162 377512353 658261049 871070925 970392828 456263124 880494646 35555435 940723701 891663776 947153355 930866184 988148302 678169347 744817977 168109595 883273452 397290031 719699630 449624387 736535549 215203758 778656064 324207622 837506845 978240527 991402534 413700185 687496325 937429307 938087282 827862880 919939453 425699443 952690671 563422256 736962775 944913627 967277076 586648621 975854458 346959664 785218133 230685876 694329769 309619100 898319162 410345372 723007851 741330841 935240552 905633958 921159173 259890124 337291790 726285634 783244785 352938625 879312099 967576731 974336575 950442214 997171139 76298669 350075658 607665846 991645302 640958629 801314665 990532756 995938655 887047252 904169932 587466065 766749010 755508389 809539696 380762320 385468940 548472155 756409305 735412129 748046654 525323560 932705995 806507059 929974418 989385208 990601830 176365112 467933879 119609178 379633173 237805122 899602613 774127073 817153365 902614326 964281116 90166377 809587424 850765166 994468897 933128383 989224805 653908956 988353616 541179878 637729997 426695292 709705322 984414802 985089720 290743074 992379985 688862311 992381719 530301133 663617895 677638618 986551151 120405915 866069626 271247538 895491040 542171279 837998774 757201898 832070664 635413555 730977649 159027472 739607441 441172546 758459453 708195957 819978860 316192262 964406995 98683763 185281065 933714937 940540877 451984980 622256027 315875644 825527645 282389791 562046675 183147032 296544802 858487838 909822048 969957699 986627063 151149745 303210855 810743070 966169584 95662664 524734998 681201344 782074234 874707776 976644443 839055972 897177390 361438055 392551803 286964729 827112563 55047316 274879579 975580756 996293786 92377405 754158375 570777954 968726025 780319776 791149796 110366045 138613345 248304019 856813781 466753131 695138739 472884719 667428844 498014304 997587030 279482188 714985703 382019480 461266031 483782954 966067793 898209479 992621659 460404427 826573602 979495454 996786243 27580813 314226824 125240471 436940138 998267579 998662000 544375657 950744959 153102574 308152827 116534124 561345128 2533929 477149680 357121879 830657194 405729972 527439571 922923710 973649515 182006819 902756965 893059438 919237924 439547148 629643835 546508835 606575551 685596143 871792528 802624188 915404133 852427759 992906825 738750737 931751608 156875204 399897142 227411428 322072468 643842225 974285009 518013881 585197242 742531328 744215852 96999886 169854431 786572612 843244049 428570529 598419554 988767038 989231170 9268225 294861833 992018526 998166880 940053309 946666689 873199041 958359784 952745414 997097840 104237246 106132785 438478324 789528538 712074565 974861933 76002648 507380716 453652081 813620418 411413268 627011882 518084649 614012859 352666002 432420109 294910956 766302923 132428559 750486898 749414452 947732871 674382668 907866953 99355414 570582636 622102446 653874321 111682739 207577547 100664146 677503559 368484953 837152804 312112773 693835907 278399428 558424235 373554213 836543417 139351368 517097156 505304542 806416235 762872056 923571701 951186261 983670213 888143890 890188732 687119296 815211028 774320282 998762503 234270713 380291456 428305064 674859921 366818274 869702358 29301563 901620305 674413089 977414558 863577511 938953344 257546099 582295234 252763893 601376435 346068202 420428308 232353210 562672407 152365008 802548059 450278657 888809037 115326276 699540476 518709309 532330492 893488141 946254601 15496489 392033762 343806073 834952634 882685444 992171171 416125003 759321215 76492636 387564175 296127779 719977549 689920110 722189558 910441075 914532332 976762777 998722574 667891748 869954594 795297979 948780877 489851046 787363707 885383748 988542384 73383245 355233768 708147425 958048729 684381809 921380290 586950000 597205457 217074930 462582768 851487938 931248002 496976497 847408623 649724839 923551369 350654538 798117541 768724969 840302070 961806405 987774989 308076801 942533904 731791622 771616763 572263937 887347955 758219578 873817725 844090024 915856874 121993051 551779540 129543909 870503537 287466772 748484833 792972411 906242836 39186062 384289405 933097651 964962275 151406521 938926858 317896284 688049094 747544526 995741625 436719310 971632280 94329021 375363177 484797063 528111857 664660908 692834559 711105717 920267103 257321297 749403012 745422774 789323960 605606966 732869127 10347079 718970815 557411067 709947322 640335786 716146477 217305747 995788198 818356291 891295926 25662051 829735273 793428577 804821240 877345546 924387809 16309952 167198118 617057754 727882335 549580083 913554842 443616094 778126668 123584052 194104800 822011292 899115219 719236381 774567854 252797593 352948853 691805289 999275558 180236854 766897947 580403901 925826047 908182589 954203516 488128962 739143260 161319859 248624222 282149699 468387857 677314396 974412300 27013985 92084666 933908694 937716768 874961540 890489758 103187520 296895185 277326548 388496369 273471785 949506308 115579430 978874812 704677350 881495065 961777603 983280673 288420060 675758095 973031931 979592671 565363437 886586864 662661391 932060873 677032543 901932622 637877661 840461236 238113685 990879775 418195891 790007512 24735546 238181085 612703801 854735270 117060293 515123042 316520967 850156978 56984248 346602651 456178566 787843383 850797544 923601409 490259490 724563465 166905203 418883396 157963196 277350231 982740257 990109015 610168605 788713428 803932445 998860499 920579851 999155840 278052533 884914930 896662609 907052674 902566891 966498106 175849443 966867956 838243363 926483239 910771693 998405215 525215699 604416370 298977157 333755207 799116795 893988034 27205436 991211549 74546269 485534936 835187325 965793216 727529941 916477616 185749599 720738725 630983057 889939986 167932477 797610247 859035413 860750482 11025099 503775428 137015793 518549010 289847534 528872963 10600279 405379918 78944871 196260113 767970202 966405964 614778320 743402632 772537155 926186940 659424479 837275857 838737478 850680492 88109424 715485727 365805043 819018518 687683484 717989501 197473137 471584369 42272651 129960413 110169151 676161563 825142005 874547641 602827093 780939888 317270856 425638673 15372153 647499893 727336404 915219705 492439640 711934315 422680657 857303161 813141667 816401422 43426910 909667301 246178531 680525034 607101138 756471236 442459132 517407464 994368965 998909027 872242306 936115513 394693011 459626502 363146635 789126196 566326621 616416951 265362272 564588574 719122068 915586174 271578412 694909293 335707564 586751482 938495153 970351143 339210476 769837387 611479613 691234798 275127649 606436448 185798098 568036692 308467180 960299469 894347165 952745004 114206733 145858118 652119176 842721011 380153865 762082129 717401708 953809296 822768105 846380506 198255863 294555151 131956436 372285354 332825121 548503324 257371046 631307082 160262877 398774193 933626253 967467183 203565657 681111451 63381991 439332850 154381090 556604111 329481557 756411710 34797228 38678878 353003422 883622151 686596511 892183917 237535260 963554216 388718849 484070336 347851147 430236801 25352299 623464032 361120821 775097531 920017205 991158578 950736399 962292730 299870507 517535303 878722849 934309436 850980295 969376655 764359111 870483743 843651709 993562842 498958245 533975227 880682 81826949 199031259 368364456 389666488 644032941 125312978 358141049 51714647 454164366 662005909 782167767 584994830 626393339 640859868 690239420 398640721 901620594 934689601 973881594 419094909 891143632 732995967 865109206 559489064 597415186 515950568 622986655 703843741 723980190 105582159 372761360 363043373 395037329 394824499 927370702 950831440 997993172 227007775 350041400 61829569 512192854 960683670 981890917 975715168 991990872 446770614 481827103 745953712 750308293 288049380 845115745 394432392 546192427 464911659 552735833 199306362 547435776 623351622 883585619 384012955 889378084 511325372 536987213 416917347 970460167 155045691 731971481 445009106 617095457 572503152 899844229 236520581 277223883 846059455 989939781 524359915 636499710 741072866 997258376 321552648 452592667 988025020 992158278 715330085 780619507 714252465 747220045 505609790 942971181 320460788 977521019 848470852 907777516 423268212 602311463 760641604 920279395 88316674 579411463 72618435 80488606 943624686 980987754 24035053 182761124 646711155 753728092 452514074 811847260 894459945 902039108 883954506 907646917 788354175 995209838 517303158 721710464 654418352 673757748 595913483 925632143 905519191 921840240 188300182 988087782 851466372 994008273 142967011 201507655 850764592 975043467 404041351 877669747 113357235 608634593 178571358 914776834 792886363 939230930 894091458 951815571 478945308 810728179 230762837 239461586 253213130 517008764 659973369 941018452 322475882 511708815 980928744 996571694 126394120 592064102 431553121 846243803 155491254 984065145 478540522 782652771 210396823 875284421 169637977 461100409 397659933 690474910 314550532 975327154 189482774 531240661 497478708 923799048 653835387 955922056 567412598 726784148 847213573 988578284 492523624 815859905 890843965 997997844 791175449 820900225 474207051 572106380 743946891 750303048 311007550 657765606 842170098 954348428 777432388 906784608 842711229 883847516 464630126 832952856 863539128 880894340 549425660 921206587 667871558 758560401 155618228 172109591 70257261 279259097 539286459 666521249 644631294 992998602 616090682 645444045 453515701 630612767 213300071 815034395 555685135 564490376 141459546 671458353 822782226 901558058 688968086 907349706 283553792 305335067 726778848 879080259 257920171 796674222 328808292 945468855 382295432 581050175 493231873 707236299 344745150 650680557 932456714 950809916 228776632 553910868 857035198 923673509 68478750 776238989 209284281 364598912 224943167 358877432 870015440 915879678 881424219 884247508 877351030 982090077 905006559 969092581 422063523 640559360 460841579 986676762 163840365 786572012 559607222 895210871 633273584 925015888 696847270 925362486 729937327 798694300 933538824 934251872 26876500 461098990 638722194 721908557 852495189 905255291 713953669 857627913 14137179 692811976 73683724 896858999 815517025 912108091 100497023 713578390 320553510 748890549 696736605 938756504 36973135 406510741 9474663 481254177 221480102 780324038 918528664 942354008 414141930 609172921 593451947 826303402 832384146 966969876 271795999 958300894 240245640 609310636 498501747 551855560 508825664 980825836 774283373 852155458 324978465 792966972 426984589 841878037 162510180 271129596 251457761 472901024 827771088 916260846 883938609 899519543 666799955 682306553 243743109 903385442 873429006 882861636 822812908 962892711 441324907 844520410 545649501 873376732 612422618 936325869 569625957 703022196 962810682 984756950 908555649 923423919 920477164 970683632 473346985 518399660 873974312 927990625 576733652 811661160 715747847 991389765 865667658 922322632 123868942 448312474 912395085 933989668 26577637 164938818 755339341 781477046 486272550 894508145 318083548 351732111 541066347 973160376 352287649 559414126 444165741 836124364 128319392 151992795 129376172 380801692 840289975 911529986 437815638 578317951 647322272 860645600 816092581 854171452 904313972 954552161 504227460 908992294 288328989 525323489 963416700 986072433 807452943 894018289 665544228 878700045 616537558 798558505 229650971 681587604 844978594 945863619 555162724 796237350 569299467 724434509 86893654 949476255 9172135 983040618 955346774 977719443 945141781 951644230 87583545 868556189 333573039 887270232 658792425 692808406 869355318 923018292 736064787 818238830 571172708 628482385 103806374 346935562 488110073 520845307 527175486 633341942 377164971 497111444 541458804 870631079 428783159 499605501 291769495 672782031 818740475 990235794 279833582 494302491 528047964 873282426 330475739 937514253 645003152 969714782 38333105 832313349 715770502 922072375 130287368 982746018 691858978 849271821 538418596 912125424 139027594 682864130 498803157 977556390 190529734 931100694 710078650 788579791 678950829 860725798 845689535 966757862 414911429 453538969 141681016 550162459 214555545 633145187 217875762 246923882 748512598 969977521 960034790 985450455 88764057 751093980 794638894 995824002 830780252 878456679 172322276 796106628 854300971 930796505 758719752 831943826 296376135 324872817 109854332 694768393 907668166 948923837 961927853 990402982 186994905 482236920 374784458 925124925 107744582 584220339 582750905 686588313 662327750 857579394 160740324 756927908 469935134 903967095 694541163 892586804 536279323 830590185 644628938 710838050 773866017 843694121 309311326 504584027 308958261 542657388 364540077 742883155 359675822 451130575 170853124 256201974 39622681 682091002 882165242 902299385 367829639 682909065 703487926 805455726 609741096 889868599 472438527 990421175 461470138 718229893 798620553 878329420 58057406 816356029 547951306 757404686 655154228 972431402 270155177 693272055 42765561 784256959 400517243 802527732 731328277 779753626 495657267 619698914 560934523 987867095 968771213 986883103 521122975 735925738 469855256 776742523 821159207 893546170 763617253 988097613 651552182 864698998 357638150 951763036 448695290 826770034 149193059 409032471 916936533 930917596 458448651 468474495 649922545 780037081 80123913 781915369 792302808 881093593 513824734 788524176 300458542 864909675 512763468 943140972 733347052 963135036 171831729 539608086 17717513 626289815 574242135 671453559 692731789 882529229 112878940 820581047 142495377 921387954 600891777 714240476 684164658 895722046 587854701 877376691 75434683 164588231 168181451 899291345 348539343 813960389 546114932 612882310 224338216 451740624 460050417 800433883 124682905 524783358 365836354 568081531 649461611 794567294 246837357 556152386 486281970 583439582 73008657 89245459 229941215 322622259 347788272 706677747 79658359 211648425 45162381 808389810 564197607 742883456 863950668 969058641 40253125 617388959 89476584 397761372 430047307 979354028 674733697 789970581 233763288 756603012 666015740 832339275 213623965 361039824 827578701 909785530 410974438 659337087 980162874 987689212 47904983 427130567 418055859 543463975 646960682 974624337 463891767 754876874 247090466 486145870 284714097 962345478 432177838 758463342 423097468 496351657 43168157 857279589 849674662 913987049 205293772 905991910 426376842 912296187 12156171 941706588 107255631 827774739 463353763 922130937 796823559 798401469 339589664 928193197 58437955 849203857 855969319 869890460 166837029 836909775 836818497 972307729 460178084 875690843 800336472 902625136 352744480 440638768 714094379 833758684 677073006 836603020 128571770 678503174 746854275 819155209 684546515 958899688 611764035 735577310 297881714 673747795 380701621 831376662 367063573 447957303 295258925 317958266 58404658 560437138 594818948 936380631 484011024 825017061 180719624 182832706 808497810 904523615 492415947 917114962 615025964 888391202 513028635 880028677 464446382 726912973 197621117 239728468 465549776 804446950 185826282 852495745 46435935 311358694 613613288 642455697 985820980 992786187 104638181 413850866 742100410 785370714 186038153 376689998 190697353 953706811 716971090 999211417 185146928 236202756 338676511 788390039 484485119 583379747 825396471 974797435 614029385 897520551 475007489 577754559 547857 832156368 60726987 669106361 202192163 882886148 806485121 961240544 214342515 388164278 444924474 778907782 894435110 997740465 799704497 814135281 763077916 887984595 388170653 519302994 274052300 305512588 327049918 746621268 48082318 294839997 4887344 442619193 845588520 925960376 592335223 816599956 651103329 743250479 112745549 612457534 770837752 838367652 572751193 993466642 326428121 517969274 26545960 747936479 797206358 957183141 943166921 958881046 246895656 286892655 702964329 893717759 553887039 681622449 936652385 986517876 353685804 915913346 551615664 951158363 257017262 855609822 507571645 858344108 131307882 450544069 821790217 974975215 522710704 976560834 488396721 981801624 4590844 220702055 237554643 492353230 185413379 194079884 918972865 933412987 708633703 954144451 458859601 574526212 142983632 568793404 216246180 757800421 37577815 943329484 718784423 827176228 848362025 937921769 737129160 750206718 961824339 967372866 675916941 986936419 130433470 682769945 587418326 899077714 531250896 860668640 472081910 802637208 416041799 458842028 789175107 910463577 148696357 728763814 42191085 609079745 580777207 886272114 203771945 262155656 434280817 676106589 295078733 948047087 824321934 921561234 900200981 951031425 612588794 767012815 704282624 911340609 471450047 597246846 962420429 968789668 118101483 363040099 283550733 821271250 807307996 967454194 833110988 836340075 727096248 988004471 162160998 277611166 880107052 942315014 504462225 599330141 656343710 672735149 711011122 712811727 436661672 530273075 175397703 734367380 903476014 938157667 438187201 520535694 766152665 822673907 146281903 916039860 345311673 628871950 895285712 899855523 826089178 862718857 996060398 997536940 89461229 426706913 63459499 861142345 400006703 901206324 422354994 999390969 174782841 555879405 634024617 636231463 237160636 864461412 419517280 994517313 427239646 678452558 278724388 313378860 851284025 970611369 20688699 789924505 409015224 836686924 310606069 620710209 94269765 421703898 607503238 896745295 727661674 745006775 23703686 498741010 859667795 862004897 208243850 350450851 235539842 909271115 559947292 912353683 601904759 645892280 746176697 933325279 301607342 328001760 470030427 498162396 76682123 798621424 566337163 625235454 257173868 960173065 276216164 985718670 125231702 502812594 888614284 982097681 529617894 650893846 401237043 856660384 397782804 448059266 801011709 927881025 539824154 558477451 311801328 749934519 888691553 958939419 362251546 601694565 186274483 601110736 14269598 405888793 903001955 988324516 46340750 802582064 36758612 708227848 943713173 983476410 906775845 952552660 474100149 524989889 927174354 957630052 151004782 151175110 937608414 968249959 305306428 480729564 68146176 755132651 240803670 555718314 230857800 960027919 335142947 918528228 369481268 698874811 444088144 586749590 645623592 863417887 92497863 230064861 588579407 739986963 402819470 673174971 237153429 377930928 933218921 983542745 907023386 932261430 910391647 971983101 922838740 961288783 180756889 204463986 301704136 413030659 157747101 355253966 857757480 975715127 596414634 784202107 442171551 992982649 376155083 940595028 498728624 757348723 721660684 729738044 849940710 861577590 640483901 968962370 587240783 917830492 607819285 694170398 581783019 936123869 912310567 987302164 16109988 982676586 760075209 827427765 770198171 917674799 872013384 995034864 89166638 498602385 295377506 882068945 213477740 761415804 324856119 382246584 993993001 995063326 225445937 798342116 572078633 591234527 927364486 935172236 77128336 723923238 658661302 813796759 607305926 944093781 149502219 571752142 227673911 502440640 171689426 195432364 606120828 635942155 81139899 880808524 61443039 479490467 658824190 890672964 817516072 878553723 538046510 970048457 936550398 963045441 947622884 957582902 901562669 985232830 246842236 917741678 873456949 977496086 402274856 914977215 475491947 855370316 817003504 927214269 964013759 969652604 926328967 968215688 772207110 899344154 589802895 830777816 741798753 789190723 767402254 898123373 524644402 681289463 68990315 316380901 870371399 923945490 714934369 784507363 93804656 305689064 92602168 933688185 579640138 673759862 782835505 829000463 354265644 853356211 836918978 958480752 235158002 552971854 326055034 789582456 406211930 766172685 815331733 986905552 569476997 959894178 936836256 986835452 746836067 908094389 888801983 971860685 851457038 945017849 935674082 944369572 409695429 667140118 977836389 984442280 796196922 913163638 594991611 958631285 478917119 995480249 53407833 665494679 772886384 955866437 214919138 769400518 201534378 597754471 965525489 972337283 94233178 296658216 552440393 980351083 992249280 995476213 17421442 392887987 711744867 760355135 14530593 67112747 358154780 463678072 199106046 902935454 584377173 897180023 823453120 835510231 669001643 871773687 353394370 851494821 809870381 940717493 478393689 507853416 171423763 364331144 502635824 948377432 211589232 484030143 26354607 666620376 4034549 880156156 874043589 952660341 731021482 943631425 466296874 806889412 431379265 579709613 706293166 955867970 52459674 437785591 301082783 639849556 972795986 986855239 158951036 207684812 256974622 893857868 463255144 919929192 218562075 378637554 613846008 767539855 181136570 349466956 75254078 659809516 64172793 954308643 138540780 425968486 278174231 386029361 83059664 192690507 940976579 998813464 70021614 105425211 754151828 907523179 483836358 825017931 190310781 854167528 724858200 916480786 869297992 945131922 86924769 882754175 558003365 686903077 6327730 873056547 525012732 881450884 376022332 981240124 456091545 463961787 607622643 861559401 456265273 861673730 658638492 670671699 997438539 999360694 509587418 584312647 673542462 822541118 439750501 646904850 733432475 945543793 661114355 931472446 741405999 824266622 325402183 718449649 28499549 358890385 718935004 794748225 820864157 927172055 663929820 968564401 425083401 811531673 760970094 900230570 655715795 964202885 264354211 875826705 297575752 582060520 469431759 870378712 576039847 916282870 696716635 961900913 342555259 365876765 381049796 586419540 285987954 839999606 859682129 926487255 675435193 790221059 95801986 561280101 77610536 677646502 49558310 445418671 73067900 335218517 503027042 852442148 737609769 964205373 510392229 950587642 776114292 876847209 932910301 996431814 637765806 691176655 379109361 565830917 299320505 778104399 433867082 806709396 766886136 990153264 151248395 586035001 805984029 974868772 504190929 929101717 593534369 770084195 703148421 841735119 508708896 933158414 276183971 568901144 300918608 445945091 339391543 630426713 260458641 418012532 993809772 997349942 146903972 772909313 765013332 768037260 314002608 394134124 701315409 789506921 535785293 858331000 115773430 333129546 593332455 950337310 187007368 940003520 187959607 428415274 135494376 335901984 702566308 846777522 584368889 585529907 354692003 836770430 259934206 652813400 914355339 958765869 367479478 916996101 65913443 103360448 776391935 788415047 490572422 758176886 221606298 238044301 907975466 908506319 185530377 249062854 582726851 987451527 636113483 743232820 596721081 713621751 108888784 637123119 573396255 855394802 271368131 329486607 472340849 764748555 621911809 883065925 851930134 956063053 990407295 996676713 133864956 889358047 309570032 477260632 93251536 351368327 319688784 915947145 458092558 995002281 604322187 673751865 928182098 960411074 661231007 982026674 636660803 715350794 469798165 726897482 408688091 971454533 445967186 661759307 674419101 841221866 553227482 666458404 61401480 317592802 371483951 956742749 178420849 762866011 507133972 847815766 360528228 862184473 318619112 944022446 865221526 881143664 614981899 798356213 570189541 573859709 28979212 263530907 616720886 899926184 36087273 257134630 205460278 645136347 668040941 779966039 740400205 862900661 423553641 718975966 657094030 904709263 730921989 918989035 253854339 494308275 386615402 802417967 433768483 518589095 667571199 868785936 219234777 938398264 819337657 988327156 434473332 443975624 110895124 366502484 923079973 996652851 444629697 753931867 216791861 561493062 196375671 512798211 521828789 839355717 176946137 771773832 220646099 954373211 873651309 925946485 453366996 997508015 435850997 971823057 558210115 745016359 644268269 882247319 736252973 812787734 353854863 684115404 459959276 963467837 507761782 893331969 310948739 374238625 699858791 703187689 852885712 906481220 220643373 546661704 64427452 158095447 448634193 770554303 428211072 921413876 459489571 674814834 599978664 959753521 781592767 950399173 28753286 279836945 876517020 941547869 270598073 385937994 16780458 526103161 358456554 940038853 156920195 809595550 133934420 220019858 571121245 620121793 247016927 381907712 536262907 690484734 608058569 979998373 994356508 996533471 365927824 981673064 835809001 846566209 449658156 974137104 543327241 662507073 568831003 975858442 328796481 973096219 211762771 844888793 966710711 992203244 474602404 811468308 504622388 596024865 253198557 900440729 506687138 705015433 564262817 577255923 309589531 616433337 130231892 824453446 251703042 412796931 906451717 934130073 913520526 982956443 392593639 917370047 775441549 792821217 343067956 886496925 788004904 916684956 478368703 580676142 243023132 623226412 623621531 876366805 107747074 269281461 576762818 947502262 872772977 965025738 225598228 826020358 252305297 772368919 843128576 978200445 572986396 625989221 659593670 774724103 84723714 225635724 881681008 974035785 959148939 968963353 229137693 751501632 926647115 976571782 480194287 820762505 281693883 638617909 463923611 810800320 551972748 942009983 216561469 727939742 722328873 869629506 419905885 922759378 119973781 218356280 897426033 900597234 413020098 997892858 490545911 865435868 468492822 571634467 398207303 483527124 164815920 412882667 352414718 838282659 216911088 717900706 24580789 604740615 54854653 114293441 378702721 915319663 490654565 695697353 913093168 924633464 961776699 998114748 87300954 130485340 311734660 535598943 853654717 943947284 694990464 887327487 487876363 769831579 275895073 711223483 947461229 968792703 908324001 965210624 678719472 763170544 198396755 729151115 631119915 903215017 346445124 651095502 181325201 521316726 559076654 594289590 919125341 967615616 275915123 928358116 107852001 243309638 630732179 808158719 444220100 686765394 729823098 819506660 400280376 685659131 475210293 973996636 629802321 827525197 454377233 820487308 349944498 430309918 784056625 826094280 784411640 961602150 920262033 953437856 957072958 984136760 220221342 701273339 898549081 993821880 47253616 349342288 348804531 916849034 381947577 571405507 344866796 490795183 121292243 373752523 784684965 958847296 54578099 402995572 272751153 540987784 798746969 809791762 568580295 676646039 842066976 973826437 828466845 880609522 468111580 693300448 434065737 781388029 754583695 986887563 236068245 576843171 802836790 835037103 622590806 888711882 157108238 568113986 891588836 899946899 541114932 903626076 680236292 931111709 21739015 351402880 435449656 603342560 572049650 694969886 508209201 552644388 265713215 371550880 497510078 610304973 798337485 917013515 802006823 900127727 181697222 790885836 16830272 176929758 935138898 944903513 818724163 964108006 780994718 907481389 335659884 352743411 127223560 646191488 587883066 752634784 795815330 967369943 208467211 331990948 412162851 665456087 86951359 630813856 162981927 394444315 560128661 737943596 201132762 985813841 75740284 152325271 906750607 935723439 402803047 824901475 128295773 962256258 823106257 894640630 914461261 972833474 544837695 943065642 196323488 815808052 967848495 983429831 774624675 861837387 280853317 288433532 50364895 416876464 228999705 311110948 306808494 475542046 57916762 535746509 862568047 921943845 846960608 905384345 433277611 751365846 644222348 648246228 300500100 754377675 349817696 566380825 355340098 508762767 470328975 727740869 202281962 717238917 430582625 504095193 605873706 979939678 48429655 661821759 316461369 536737005 581278901 805883320 205380779 987509108 150356240 273306078 798422457 849469569 235908276 500404029 2846936 580143787 967211215 972258695 840390595 908344619 516802189 731822183 110005825 863363338 306833268 975799766 438000693 755288783 450713099 583614190 306231655 529137784 681154272 753478757 450128138 490732932 211207274 533544804 139121335 295126172 238426047 837290355 304928190 974329169 118182003 591691401 258068483 526975709 597148890 907088061 403694043 900796126 334258883 566268717 491790123 654200312 780451030 927896037 974502769 976622620 857796375 925748153 216797226 776791606 871177369 873406687 756081375 813136942 555767527 557232728 607956414 903468059 908998759 958392961 452475834 942708821 739140807 981331202 413275158 525186748 317171777 776073393 962805270 995857958 856493278 950918459 852997710 869687593 423249415 920588020 481009940 678266890 780036090 917768738 83396825 967970031 780542634 945068092 704106773 733271548 647270189 867890201 631351095 871527953 905077449 932809998 933045754 993012763 107399599 689869289 137415951 865760143 190128613 711175476 374421754 527574011 127288216 783211580 734949182 735417617 588710010 787522218 794186971 921191847 729657465 742913639 172622567 686160426 3145122 260806314 407984178 775325240 729075802 957685237 912999415 922567314 829129251 984473851 882334808 893778818 515214967 616507242 62094155 707211599 29212649 121393823 437095559 774117328 359839276 729696407 434094170 856868740 414336523 538231456 281997546 773735832 104524824 941613800 300304227 638199150 41037369 172232599 483227491 935298303 185240524 917927772 939503421 965330678 264502921 277122156 873210647 978428676 615423058 915582740 714601943 732931907 486960106 557465200 116789268 617050087 282102195 663720790 968804847 985293512 277028373 379055202 83214386 912851836 74084544 955865331 960205239 968039436 130622869 497294027 838993465 847388504 438207143 778824289 207917823 801675536 330573270 525513196 636731254 940374804 967663010 998754893 446574125 780944546 604409405 684763958 643765520 689813727 558843985 654744635 554521201 753049568 72532175 929114233 80571726 720396025 228349736 392279556 778927920 846797592 842634328 933007916 304989464 805697041 630830266 653263678 938960844 974416219 777786025 845564754 896544928 985806874 690440115 941685023 748367812 941307932 427432221 927817804 706747310 842069512 995794072 997752555 560924956 668216738 722751850 843534212 182678241 458491921 623140148 885888337 813036842 873957813 817749926 832659278 120496652 251137929 454193065 669235977 972475807 982246627 30128258 963968491 669791275 789040206 96627606 358879578 703118741 854365478 669422645 982512091 456075569 689065480 766319186 766355263 467261789 546373344 303799388 738810633 87637624 146778147 919822861 947916518 602769013 955782323 744420656 968162786 589752828 729907461 175800961 824972947 243796762 832567834 245896560 727880377 877750137 934493900 922478682 933119665 445613061 913039341 331079168 861053441 451400949 669126477 973969589 987852305 249489262 510332192 314899772 841639912 500392574 527280086 494603244 943970849 731662664 786140579 832922222 866989821 147958726 692554336 801375074 976619035 761441885 850377550 712364772 906837765 311135148 833745831 493825497 504135661 572181014 725487856 791838870 856175864 923823180 938106403 886955000 902693025 214055801 670902235 55437541 102840961 811859511 842054126 233779364 746533810 631551775 909744193 698353319 994238783 94924783 615208892 833078456 858718670 546074049 934991000 985017451 993486354 130361756 760090949 479821402 835616511 572956886 873682017 691555421 842329301 829057495 918886123 705944701 810209279 314693550 548643297 771563829 940810041 426530871 967961551 181322525 514773960 745880102 789532174 738762420 876273829 503883092 623237561 575183291 581697227 543129387 868299219 34258078 678029870 8873308 810148668 136324014 593949662 994004375 999325149 859084088 961560737 914900361 941863802 655787313 667088945 920960718 937822391 813526685 990254033 572038303 884772644 819745047 959882988 831591813 902524383 54336827 354661314 552480544 559136277 47798104 78689750 604090223 965732995 668324399 712264461 984356010 985966933 903502092 908256802 944685111 946726632 728409636 792651448 656244775 961804221 840938415 884906744 364959972 443083041 321018310 709122720 794278763 855655735 971299999 991473429 907972662 935646792 142346742 205421579 907395069 964451092 595243798 809446370 879845627 930227373 733498694 871564549 36828731 141791115 818344814 830032278 546975920 794826757 710018570 759870114 512025879 713552117 69835360 190778402 59941688 962766278 422618180 664147640 475884652 526108514 191793031 929174811 394364123 977030724 928804913 944875008 528213709 622624335 635013042 882807306 724119441 928590355 228061005 403245956 957518786 992235119 985729998 986362062 165200018 458119235 263662050 359797231 128847316 997585998 808285210 844562266 878797014 961181561 137186802 152031655 353020141 710530216 991162838 997913035 511456491 991802821 573056820 905719211 46385673 810296939 937534331 962987265 748165941 846812905 4335199 969909785 871702834 955393680 47623156 340447458 183119054 745321263 834660268 877491786 561063820 941282962 83167622 992852253 359153437 768826027 13997380 353787432 365438061 604674473 710599411 921554235 566955203 702715955 189562346 920245114 553094822 603105238 411304119 736648832 269696552 922421057 322212693 845910155 266888121 643356124 518973318 893725544 883811737 900937804 459058439 921047020 601230826 997726855 786409356 959657560 914175152 926675201 852045128 944109551 688228120 979102128 76048699 605127423 934855064 948596729 912365338 923354879 769263000 969335219 480395252 907211523 969394998 992112944 267346869 672487152 79430938 844648084 186885055 611109563 291622850 650848799 689472416 896584279 894664547 980529320 496886087 509974670 33508880 282383246 52356454 247499727 75641329 990124070 20052520 183228824 378336382 427217024 460596 719193627 434653666 816710848 120019854 953964005 99523320 293782049 116379955 751147271 552204926 555294217 926721340 966889564 633013861 701463664 762249277 773239253 658616173 833632276 190385610 272226141 253238996 291795099 105475146 247526359 667582882 907209071 725087052 871982727 346973605 481458332 638833798 898443752 683359074 966796581 944771590 969614640 752295212 862072730 884951078 914140819 81632122 545260185 663546334 680411089 593671081 961795631 41496567 265398433 104991486 572005810 541088766 719373745 16066347 782788148 2123549 462136578 14449279 615565450 479529428 967229618 917253216 951555165 401563284 830748178 213874406 324205387 453202984 567090639 190741581 511375908 529802990 598895745 567845597 672685968 377904279 443886969 232409373 738202459 788133540 993461605 17465619 999353541 658255744 691601286 384601837 581460843 642689758 767224808 256750340 833903245 618104522 621349687 143051842 459502511 609039119 643285283 505088796 646197793 353807876 753272307 631338896 728148358 553175697 738418066 457131161 959559168 171461872 763757757 706337865 797849440 992626461 998917887 52202558 838906068 977941416 995958187 361067714 670405993 270173313 281842942 668180593 914001110 760105202 846391511 64585391 126945985 753738093 997142177 426238315 545987052 824718337 948353962 972541666 985534392 150047120 494918247 430012567 593192543 886179268 969266946 882888623 983291678 246452890 263502303 854213322 876314999 366455989 557098282 937318876 993263224 316450431 652582746 808919854 924031798 571105754 603144486 474451647 578014721 159865303 417139146 275780611 865934698 302220878 872177027 262273072 331413242 464285463 491387990 822312772 837419421 401560649 423739254 788465464 953690460 285989259 647050922 511319862 892439094 655562881 865958387 82833801 600291301 528944885 902826113 408087038 482849239 626947326 732681429 609991556 734308290 440802957 601575542 517584264 548926437 715605479 834594383 107609517 286256922 781131193 805439495 31555283 223747372 526834239 791703382 683558134 945332848 725422577 855289148 424408080 687669955 432901945 778051352 337524688 587398541 315747337 937931059 157025067 255772223 865682140 984732614 456958326 772870775 307409546 757632654 773399990 824527507 217392709 381205380 348571873 835605832 639183002 773195849 49641236 366575419 456731539 786684955 659702574 791750661 43093596 186173987 734465503 997682098 261315996 726945878 114403032 332823387 402499228 591085433 579761863 648174134 380478404 581401698 549484060 646281124 901756024 968075380 30243814 508020789 48919413 399961632 180450957 495146472 699741077 765324822 680881592 846420288 155802848 496985517 2065698 881347407 63665417 660702313 286343947 968559136 930509183 940540734 356561187 460313789 344163293 961209601 732132831 847726374 528279957 943743398 313721820 423377787 868068328 920098581 664789709 885849659 861342593 957224228 311085640 437622596 331726819 586836873 617549315 997425714 205428481 622435795 10854416 574347519 678482053 797272783 902979668 929047750 407729670 550957220 359988658 947568469 230009172 465605213 466052611 916426708 229288183 783124343 949844344 958416615 59070580 569268267 459850470 675836401 731968854 742681348 524751591 952030631 843263792 945194489 445426518 735609407 589523012 609124583 647925753 932806859 973522220 988892303 619312940 952157302 829703420 907036878 728647727 966025444 56975626 590133347 78570990 477108111 444304316 700032127 273127880 729173761 636689636 855176487 790233301 847289108 210513861 721102935 309509177 883742703 517494677 996723420 798321403 932144399 342955842 986257488 265450587 807881598 2401574 243616348 42540210 383768119 14978026 969448260 74823255 827918003 126515275 603908263 769875455 881862954 921124974 927953390 906484067 955515050 832267577 915639722 140858829 410065375 123452771 363602075 168989908 404508459 685141601 739613496 912594392 948303852 419339827 825187866 407045939 968476344 786572034 918686209 394804044 874941640 145561203 505287264 968917229 984237555 28464416 532485002 247929438 804432703 10370719 599555416 50084859 830524255 802788445 921201660 135923987 156440719 40175626 160945332 68927929 373292964 101293474 834606645 967907857 990000195 728586506 835355486 428730543 940601488 325526467 727209424 846161052 967269949 653581099 936257044 31922129 38209464 722787577 855965193 670790647 840558794 440846348 822505178 795831910 917516010 114846820 889211399 525360280 607836546 780768895 844017750 895620754 971630097 598702641 645681367 518147270 698996145 841847756 996753053 60924307 516910764 402133095 532391284 952791318 983707665 158347010 291102067 339931177 869443522 2821470 612710847 726208401 823658432 145965885 222593326 630679344 825465603 500287631 611350592 805622096 981653963 14136981 141907913 603936170 773201623 710207186 967057277 248950733 969557361 843557669 969678204 61559361 375574692 212996960 646572046 745104976 939322901 392170877 588398054 293806813 717379641 16074622 110529052 284757961 577329503 129790220 161668768 788499606 884363797 693887021 990091794 21701441 188252085 389558077 948800197 526888965 741533833 612542119 830544137 76651223 341018109 148202924 814064578 873341870 961081431 350951195 645284071 150044606 433374933 685068640 808572403 13766530 439521523 685334796 885837274 489540893 713474796 175579089 943108012 613408927 907792421 229706219 938155568 605454859 925080685 548937572 913027341 856791896 928381150 229646533 788789070 429024486 845076155 306409431 650736893 70958602 412682984 638455564 835886380 342403627 672239570 571608934 873540057 226638182 317999122 735437954 769449201 576137216 999258925 216224819 398256683 736798403 943207155 887221971 974232426 529950296 680550525 808730621 911832768 601286068 628341740 734407279 857766824 423487009 584610773 205836652 244185399 718477966 964292188 743586729 816667415 603648995 848396663 713797650 717650389 389843440 514528845 485333061 791167509 575326926 617001744 77534638 791945834 366441924 475210306 180452658 283114627 180759085 312222627 996010380 999043754 241330609 924400519 63140377 654062952 218737347 301906824 501539454 518175985 962970 640104680 91840341 865800887 416445896 846784044 736332972 795364589 872937497 982279195 965814823 966446512 523096067 874462905 648957011 768555305 243201787 862619549 953026971 974232475 392730075 837197746 809455938 929766426 380992898 409338491 781378309 848086095 271593429 456746658 291757388 563082369 626030431 928224856 322756402 558514474 865299037 879335268 29422551 562564999 812523038 887489094 185459764 764509356 890217301 928993152 247047 858861221 375087333 641950898 882143121 970023671 227560313 535031607 625458745 782831401 513206770 974331489 157651286 983617729 467573830 908528737 255542839 309069491 448232317 953512917 466775699 932029705 171969024 511114373 386747963 895060766 811685210 832072004 413299873 641994983 373453056 942320792 714922382 903108479 991677638 998089287 409758832 606944895 135543072 498046935 453153302 611086685 272024844 643459103 325185522 376208248 501819219 745660203 605141467 790264560 854582967 921763720 675708847 825357781 485379855 767782167 518244395 709197461 20892157 648605949 566968350 962668702 758001143 960794180 344950351 751180363 255187571 602038676 817866028 858444279 329904795 722067011 545565034 868616706 663899581 894794506 858642612 954759674 398649376 972678788 923634126 970635657 693153419 863106376 312293736 377240314 47635509 708352207 270212670 422624760 873718954 990222371 981209646 992062213 267270827 630682521 444804890 810411461 235221138 733333940 201990619 983149706 747627931 795139888 666731852 793845885 936627160 981854056 981375835 986788231 548471970 847434098 183300801 808579424 826448198 863885086 91764965 711380368 398377134 610229310 583661256 996275490 161113505 830524334 779127864 789157191 161768734 853758950 845717422 994466347 476694975 725264628 32352631 399803985 268849232 900886341 263061498 738638188 346543591 930689155 752274627 757905861 497518105 522635968 634979083 836626131 455204918 692764699 899525855 942604155 194974498 569522247 906562222 937342509 8165423 387297224 248021253 255894417 714867332 989795235 398132225 717228654 189161358 957866512 982432751 998704388 165626333 378916125 493859625 591979663 19773864 176090413 340147362 588702001 303271988 679320800 594828554 643524431 996172468 998375619 911028200 954915228 115311728 235901837 655751341 971751031 759800486 792006896 385133734 488187528 253208614 800141667 370778094 382377016 739105221 902045696 756793958 863975127 587997228 973824236 738533602 862881483 436971301 836706986 315794513 445922735 739201196 996907469 1822047 532467842 594892365 871391821 14415857 153754570 200131257 721691694 501196674 879385845 984784356 997065762 492869181 669927009 351186739 983333479 486146836 504178870 962744763 983242259 35015806 184102979 184153711 884211313 699059423 872932982 711953814 840701676 439396521 785966119 661243144 674835700 980466318 991118591 708474604 951391437 99903025 436618220 565327222 640520220 20475558 671428925 371762258 692466644 228483631 319182268 5607273 919892455 871173249 967067712 289290600 779659457 981974069 986417043 956433143 959020767 844271214 945899052 569286584 578511602 573299423 627784294 659098036 800763586 92999107 651017910 510536584 580298238 746546551 873849969 380135419 580497886 51627935 776233237 479548847 835499315 801159160 829355590 935891629 956545192 722567255 851014639 276087262 413760618 516081454 533998211 837806653 920183766 316868069 836001861 255733849 347260041 46337731 392492316 429156125 780929994 628299051 989720444 185115695 889102863 67269384 761034064 471666005 859939503 910715808 940874240 553463435 622045007 116953704 826655500 663864420 971337394 587344171 738208532 49173495 350743475 666267335 922596604 238485146 256742661 177823443 985354700 550493376 996330308 207781571 722945938 401924420 997533362 739225806 867027421 469933185 691271697 197396088 911705401 243655676 857713165 435086757 621742600 674249638 844934531 744592816 983126889 298159600 825384375 623911302 969315715 294604922 883305217 839772309 940316098 203490797 833161471 50183053 575983678 908904443 946982426 192719317 294084065 658131445 775948148 628107837 896850808 14322550 82422659 596019884 920071420 21575268 527427433 345250747 409459337 749700671 817282345 341395288 457761472 423656598 758380682 227622016 362788266 368731331 444306767 540409045 904433242 400908145 492676643 390073030 845986160 519181558 996263654 768795497 864222660 826166946 906063875 248130454 869292032 125373582 800658213 39013438 523547216 451194268 940394399 533077296 704941757 678579940 984075064 251683645 885019851 544149644 601488845 50982269 666490216 505314310 967827532 711972063 751985174 476896758 650840173 745548676 909304255 378779793 781196725 242544790 623166915 805659790 954503019 780891251 925428322 833997407 938085861 457566349 545245447 816481057 869572644 864356217 999345447 78355048 948463192 730986585 745447652 750836128 856819806 354890937 723822448 125002728 803159509 775052660 912052436 209026124 353450640 847497929 963731562 341303314 851054355 137281979 507018870 31693317 935911313 351109092 839650110 892970382 918029899 466765051 739220159 981862007 996401160 59947688 772664600 265165688 562372304 41024247 161637798 64636510 512307425 136964882 806648625 802143087 889123555 924275494 998770968 496967116 774755451 528993752 674402646 844147707 924137410 838225653 863562365 428558879 693542065 139834949 434527339 416177534 770265604 154802646 281887152 384424004 842773335 819731972 840095929 521702155 687418152 170162391 349307478 939642314 943591770 820288502 844154691 672741261 891200827 191367282 205167559 451748231 613841458 256444353 974076004 693642613 776843061 963425959 977871913 103264010 222161978 421910189 798313961 717137966 866414225 234332288 461006483 980655453 996489686 658862259 675203576 708769402 827357304 948547730 966074512 626495708 974594865 526130904 973905809 574185632 917587049 998991738 999014394 294238953 890380142 258326219 509639693 132128420 643915828 159263760 747563469 112004680 835161408 958646773 985537118 137630806 215063733 513757721 977458055 642478717 834678222 451738684 584590443 724462201 882514146 775965156 962272541 927005624 986368420 773080429 943091255 16035654 115757848 952516206 978141983 13539961 617823181 144580612 157419224 714215914 862328716 840651890 982203847 65239029 989542455 122883843 937884028 706541257 932169118 14055685 546358806 520961268 937024550 295820668 705954778 665367517 937252493 548868222 760218495 668650944 930046048 499271564 626671136 661216093 900311375 77160365 266770496 732293482 834310827 719831507 820909582 508710574 593402695 110506248 393414812 193259691 890370712 548205181 998101056 460179746 659071107 382418565 405019820 389608756 595859272 761144320 951117943 917212212 943311181 93003703 551981925 135864245 403912394 173926175 791118972 582123358 881326963 647606791 960962198 149080311 222156247 144692954 619719954 135095746 487748536 795069303 931327082 813610912 872626329 981317245 998698837 323057910 667902171 308700851 351875850 60804556 616144153 734895791 819626093 184743006 545906622 31676978 871638785 327498724 683997851 996360626 998449194 71230915 421643889 581323355 802597781 33365515 866663074 369732401 892264824 118417682 412296805 778481138 787979223 567268818 920979747 599124445 927174495 425271447 897168019 841248355 988898871 184276707 863083691 633790629 998751253 458423785 587748853 570812550 908235544 425523707 676521431 673203553 718465516 77508947 426788609 884715220 940240646 364160734 461103059 743880997 757239303 43826788 800826794 689227321 731580330 369744898 990135209 879023310 917319400 370833948 453620165 371207226 546617113 82417720 153210395 695664697 718206268 782143187 913381114 348651124 381487598 409879404 496752993 952376486 988036727 79363282 652098737 193333590 303278985 835554676 993155887 90602925 907806804 395445846 512828021 615968342 885955600 346615446 461130248 707273634 803239479 936944303 990853963 531932729 666852906 692048681 775970855 109894746 884224509 136442978 419169340 460108605 487239396 40350004 814475367 32822391 161144205 402046190 793046283 830940800 923111623 353079200 590190100 563783274 974131317 428974894 542522463 519332157 894903747 411109489 632451403 511456125 559682804 80532352 659070106 513590256 818775620 998571346 999139456 484787443 879806934 17467630 450737317 572101532 708809147 452861698 828776187 191755240 450548953 715610410 823699294 352878757 519285999 275157110 486333713 184218387 274831807 202593795 546361311 965317568 992642133 456134633 629236488 49530072 767952266 322920106 597242917 947449854 974595769 547441352 775467040 568605880 972400745 992449685 994894871 285909925 461999180 245587289 312567754 962920916 983750132 613776205 931486857 196518968 703932119 179239069 976367156 455191900 878767081 474095230 614170324 967377145 987998313 858114644 960466064 967583471 972382367 893626567 919524032 785480734 917800806 12748357 474098498 168480699 494546816 348710418 622605441 408869019 560643877 36696005 756030768 571003364 922104711 277557422 840318827 755503664 884763693 105140537 725903385 650442086 924541469 374734419 993995962 234787395 596874582 41655068 775921940 260219802 664464231 585633417 778546011 2826215 11720353 148000247 423879618 278385627 962081378 115589292 446359872 869612593 907340185 592522732 772206460 981671147 985928155 308170155 509680015 649690574 991987867 660561738 689716522 12843716 428112197 648733937 672483374 402035723 702923808 432747937 694884559 918095407 998635960 108505667 244537986 895136699 898711121 575436145 685896663 59509147 241440090 55322408 97816720 35814259 171449307 67138724 751732272 449594988 844775044 142673998 358796067 282963800 483203290 367394259 404740394 553729145 559035294 66350962 167004365 102060190 314995448 408804130 596067954 766275627 926717273 104634066 191703994 443951121 989719172 436496245 678698388 731466100 763818424 870301547 961722683 596840460 984523892 806583832 964054862 930180085 957956864 135339144 829006973 818943994 902223817 432568687 668470740 858962828 992889154 16445525 360961440 502219859 653858717 313292025 760801819 127238967 862514823 563781333 736000258 856647088 961153129 978473775 985724244 740521713 933772334 492619784 930081948 162589313 880221292 843222016 896998018 575534820 979205567 589484556 608800922 721504322 937177804 259133754 730184515 195504195 672509067 450715794 928580674 974159794 992833944 319585387 539813220 909063440 934252976 230483609 995110297 386026312 809120176 369787940 432159105 24064877 385311341 799179176 954908017 409836316 704937424 166250735 492731314 199697963 989215723 457465706 639084699 278660917 454207740 498696623 993811206 596622001 712748209 320003566 773738062 18346583 550406090 337850121 422494995 41104330 905369618 459788654 576427947 638392940 956047480 165449872 703863504 748652946 775856794 854210451 980421866 99547163 884371614 976834198 987119041 109963852 435487123 639012245 996839492 726754746 947096395 445011359 646006524 538104945 542447588 217042735 456715948 329859464 438414729 946068880 970926374 579339929 782898007 367719856 426316878 210223127 889308977 344488595 982596401 442655832 628262690 973236402 983310770 362959699 414359355 436529618 786968807 138632893 913867809 251450992 954070552 909394801 992596000 461244380 664176268 939247982 968544011 606551721 745975724 597982624 845264164 137226405 959229080 307648195 781598087 417376702 955962612 500519020 589793287 270663656 962331734 980235971 996637656 633658498 969812113 92198753 396643812 201461324 844378878 680086406 731128988 902216674 946816659 762935431 787577046 674344951 864594376 317130972 400687136 507455937 612241824 419614379 722492335 79569828 670693916 596305019 693643296 423230317 616680358 583158195 889414803 201069544 943342927 252501451 289919071 992330675 993848870 248696079 570760993 428926446 646820702 879666910 982256630 170755962 789936587 436967028 480728500 842907832 869317258 824053188 910213911 575535451 706757116 357941746 590048135 551268830 962208268 19341793 302445034 840083658 912245916 826875210 851070144 535881320 918324101 164147837 375054592 600360229 824988226 752904434 947618292 594957888 812212885 443771758 796741812 271544848 273439606 886452185 906744262 321820238 725928871 441367773 794438584 392923646 954176483 581091006 632871853 651419142 695383001 118991804 626989386 889882538 997181267 57973074 868795860 656468178 992498646 55908550 853670378 87499158 966750396 212307950 976909183 768198174 933247003 278707980 364366027 575384750 924484704 441978513 945604944 269618402 451973689 349792331 922525618 516578842 723551598 309287278 816562647 216382705 229733387 577915348 658698947 797209694 921218989 971590055 977800773 585225306 605248048 706829200 971200764 754716129 883529707 375491391 745493835 443907344 822962451 372577584 879272058 852139958 954501227 673093158 715489063 732229411 850622422 332869602 626344083 290694330 643425008 184240970 413104126 260173036 912413053 113833925 743816352 262830227 869906047 487434867 566292274 203980018 772146956 997620475 998179116 375290635 864533050 715427447 779512208 673959767 944235807 350953351 665394104 68165764 142268611 350826793 724033565 643615914 938395251 765669190 974179102 171911287 970325454 380489958 538441173 399010000 698086054 702232379 774824445 459486894 835876112 62980095 228408833 486661345 520579380 562366048 740320169 485348733 777509237 476151558 593272440 347018890 815500507 558107421 670036354 611811979 935359999 239146623 580644339 839855955 864324632 497720960 927537834 663500787 989107389 128516662 839557328 400730641 828749334 948434521 949825673 47418881 977452042 740456201 984201656 318850560 384616350 106215475 944563968 796312331 862094006 309222276 896467045 950384486 956467951 473893964 714078310 369161581 698506893 244168902 799170098 889521947 942283023 895255684 899007312 333071448 593111590 7418503 323527651 176168476 428369599 805115298 808721218 623168941 911089045 172978617 419008418 483314020 686371596 416645076 594317970 211981137 570680544 948572550 961570718 724070369 907318682 738601038 829488952 771901301 893656051 475434178 810656217 878932764 889367591 862588838 945550642 269037304 531348009 877156552 901795672 333583927 485655895 567582135 809058237 660064729 743980649 233767575 759552161 767592537 988955397 429491041 799131749 118875899 811557106 852996482 911063650 927857270 939628749 410853801 495326575 887323067 915874001 185069530 873435032 816963810 921037128 99869447 144128426 517385376 837112508 371108705 748880788 967104793 992316361 753092509 921854912 721277678 851970635 538131486 700653287 515978774 981486149 859597579 968762418 506582843 834276922 871562449 929979900 70798595 998311396 128887139 979545721 337639460 974515505 572691516 671233281 285126516 805245312 436634544 620115658 44262081 949914633 989834038 993290149 38605337 707648993 977064089 978124009 541244029 667980558 681079015 790273227 424458884 521573440 249291348 413142128 44488867 348909306 718055025 923166053 793214707 941215985 310888788 982939718 29999758 769804749 774884149 986294366 35281672 682067748 671195528 934336714 477742016 715435228 129572372 247607684 40063400 446228364 336854763 694638781 641523657 728477045 35549868 193302578 920563371 966937784 679713449 973806683 13013269 50394395 706911122 944962811 530439161 725649168 763986301 848095940 918619323 992855953 984368135 996882841 681957306 760897014 896157357 943769059 340552975 998379141 701351008 955301420 292123892 724114573 579188401 992595267 970932117 991050772 54451292 924774352 631545610 927922697 495036540 587268958 7749074 713787294 880733395 964433941 689438644 893125428 468325343 554893879 424973192 938642310 948712389 987533658 567547829 795853801 875498569 942968570 994462407 998872562 147275664 182466525 557152073 780602437 919034365 966681080 178161785 332480849 844364842 907690316 618034263 951198265 564854422 926718550 568372248 785969801 69361558 618847318 970569472 995853380 811179935 858591434 238117528 557642687 373751718 837586866 128637068 799764363 490534082 524351139 934022142 990064235 443446933 792820563 365302200 373635065 193268208 837228977 827445522 982975743 992196471 999307071 938812317 947520929 720217246 863841118 89662980 932412984 256871805 761351232 29400540 689232566 273304911 949370128 833518782 977387515 195581886 302872475 506380114 936551629 633374283 974529627 9906088 828142055 808221642 906733927 355705261 735385405 221836630 708392745 726604134 813700858 430291021 965194068 847792291 852890583 574304615 840931826 520250614 926494778 504160595 987840483 959606171 959812477 840282090 883087955 132043420 310820621 26984099 79997771 775251437 944207185 109143356 207080987 748165228 998690163 57517760 232087549 205750824 430704788 157318430 317555508 602289397 707580895 473180395 898145543 871402267 947591088 615185675 800242430 115010759 747309645 533480120 966422743 277753711 830836620 912453293 972992354 716723730 872259650 503109968 821542790 353025194 964439770 993679896 997465311 70380708 769890626 556866020 801199467 827197003 866856261 107012564 737941377 496292557 962967332 89524579 680826209 20656226 672018571 20732032 924208498 362849574 533345879 92865312 198028062 656235851 826543624 823750652 848221980 436675694 480505508 395306245 761154237 832615711 908779381 563448003 682609558 351156424 599907115 341797295 806225910 460225772 540227358 224085968 510163779 266830756 539857161 554493884 624400250 463429708 946420809 303081887 862334828 85094797 247756851 676342114 683928821 291766113 848570218 43216198 678002894 800893303 895061303 965464842 985489892 780813132 935098435 511881682 615549673 561669814 824828008 53500718 958441406 240751536 365444421 264508702 623598572 362869034 409829643 432827335 824345720 942048087 948295032 155620586 760742216 683788196 956125852 643777225 991384199 682492566 794387487 350908415 948982518 871079182 936416759 249786706 696137328 458413607 466526094 468506426 517677174 96882498 813335376 462135950 636838054 69716682 644875970 219835065 845269409 795976742 955868158 836833690 845846772 490391336 725953110 795399265 809626093 942876355 951016684 824479684 866880853 653099553 864205465 306761106 944189351 294292294 556270358 336563409 660652769 56664275 725120443 699240102 991592090 886883503 901405106 630351298 899384758 136838194 191985844 313433367 915371044 872346689 978806815 638776944 778892538 221734475 795490714 791377819 982789433 962227752 980884425 591628734 651860578 714451308 927229196 645753493 867747156 967783652 986223024 343836027 634741084 788738355 864614439 791934987 902391087 800833850 813717409 302813838 979140475 66926741 695884614 578191812 668291280 138471194 490859016 352348146 650386891 842827058 984079455 769060228 814134084 589872875 810559698 929875252 982248154 603112795 643091483 455622160 491736463 962532204 965751768 564287646 636094967 544114525 811056062 753599208 756284835 11496945 166574220 167015287 653311257 507233278 914301175 214579356 229826526 371639100 858295266 457388468 496688959 130976240 564843363 406395899 937593900 955505209 978799130 706360719 953857807 409003612 917852747 781051355 866320726 665118176 736684265 255614833 921403669 351432103 988073245 886371130 892467417 303179727 931728625 150255785 369081339 636227313 990642420 638426529 698230413 584097159 917569203 304534681 310019062 126039396 811888885 931855188 971760986 182409468 875809591 356030920 905630405 568940941 612505769 912594124 967105882 66858428 677454161 392732080 405288454 748154158 912275188 946399366 984697993 121262921 827169995 281765614 643826429 738857865 863197217 810955599 869256466 797600153 893717975 589036692 772165133 605678942 622988243 845167836 944163702 765739235 874322636 293528036 903569040 238365727 841669213 172943320 694584806 14851105 623312871 685701734 881203783 792897554 835253515 701143104 948808203 692483351 836093796 169934539 467461006 205789508 927483246 83437661 572866223 501299518 787729185 923573483 927523272 422527319 598163480 619044823 746376883 691204816 987933963 643637091 860190772 735754924 854583396 861567 873014817 25969801 824654058 108560922 990023778 244713102 402301684 972761327 998424793 942960113 999298235 915372918 932326650 967667183 968773880 344061748 488465884 956246604 984318266 780205352 782971187 775261655 952646991 447514077 716567106 43306281 117206832 207016111 970208718 964511216 979334315 323212524 914188299 466583328 509077238 333496364 521778712 567852401 797845878 463033560 773090076 379338292 760968302 116938274 212374089 690883828 740719781 362112948 421085106 744303810 972094699 396532948 811641061 519525080 664677945 780862234 930613560 506036497 636367192 816472446 898362742 402023280 602007014 747473325 818442027 868000949 933803235 677161942 892942124 414374523 580846095 31156448 212052308 325533575 498642640 566699337 681948682 159778153 882910936 60959523 711719904 507629287 847505888 40782330 195950260 687011412 998009436 598846189 858106059 730008506 940847390 564218294 991303228 964966865 970108621 614726391 895579404 75025787 799715024 976085257 986186969 227662267 450760568 718054211 924767941 548576357 595530518 270626763 335917146 135597003 226534643 900385548 938481496 934472332 971542265 849623388 896517406 737122494 994267070 24766810 244309693 977669438 992821236 974370742 977397844 100946529 915372005 999180254 999246194 39152101 520673428 187169385 315263142 764476832 792201157 733618001 767734332 427298054 710392066 616048629 801461398 856965929 904461620 968477647 997024808 181530450 831900120 996148155 997478254 507936552 977386895 898822229 931158398 210502263 286152318 214360144 922343433 363777183 687379385 300496725 646950301 907277936 962617852 377012807 588428482 743958815 968186083 691861602 934377614 474468993 923333458 642946921 720379678 138161108 971781452 3915962 417001746 919025148 958061563 318895831 935742377 781987277 828228872 556904460 993137216 293795414 502015224 443431364 532186653 315964449 735777807 719993169 759384324 150941999 785499532 513030651 780516166 814672664 982302349 370500184 872181316 842441812 898971653 227365825 606325587 314020981 908881860 950264513 966015850 152179821 782636632 708080105 767932201 43651733 663454153 844483895 863547671 934429160 980416383 340306840 950881149 915822873 965707892 797310445 942126750 2138654 989895661 817774724 947629324 117692618 922007005 318632943 446602905 728947435 882734931 536156216 904773493 608310645 877882198 16761842 623398486 951781610 977054106 568556978 881823016 689154739 968809344 796257196 925317882 231689933 878455001 302839808 813754695 337209836 448111825 629211261 985758775 745463969 912143474 316912098 704280069 383523035 770594757 120797882 836482030 449482551 779211933 831017042 891175153 753655938 899214273 579089806 658297710 239517103 730578753 125145621 260342918 618555338 670660593 187180617 611722619 942561708 991636613 738180514 776061807 159260351 676964735 138766836 490764875 596715420 685765660 321880731 593824000 644630094 800306509 217672712 529219645 274789546 689339912 81846409 846564012 982245837 993781973 31987797 722756081 414405837 871159803 500494558 535921073 30871390 89284181 954273409 992547069 949047590 993943808 850155172 939486481 862397904 937806324 140073603 761655048 308417784 491846088 730729962 791668493 814340096 928265763 139422862 814707483 577958431 627791329 127538085 974204856 564286887 595918899 494073668 559175039 234710506 711018525 302833408 380972883 389543275 469839303 126367658 612135483 45202251 446743928 803736341 922330281 489660221 963800727 219932072 451818938 808097340 946641778 861568556 889592502 672662728 674284158 519325409 599916905 262991555 917494540 934447861 967367863 991372284 992127276 784512074 989128486 775794999 831322393 636287618 645970288 276462801 710757807 461849261 855449342 881562898 994472870 133193610 988069590 991771239 997788817 382939501 422433276 613190196 973318249 66465175 928519315 370497141 619970662 804619718 913753629 652082974 927812075 898633991 906414770 727581185 813740615 241496513 806016208 664290251 863255182 594219362 919654662 611779692 851928831 948291523 990260241 30193255 700359048 241979987 435564783 370395988 466085530 259429681 986259263 121116300 697133532 801914523 944920178 393274325 395158956 844034105 932196865 86217943 375937299 984032741 998527954 440969856 615265072 514884630 843368356 833240001 835229890 793086812 936288547 9457709 926008864 122736433 639287361 135745805 801276606 641849205 797144919 834212777 913816047 391871958 484598041 715948641 784051364 958558356 991781545 30753790 646528454 326827530 867116867 860347179 902670862 616202150 847205787 882692687 922632281 540397552 798159492 140147835 671148520 322572855 395871713 562616220 601616237 829898914 913501417 784619899 977475540 174886999 601040518 966741481 973995895 814046010 951118966 519646119 602728855 637228321 816136691 377231850 425755765 257886278 288436829 894542119 895584767 984130111 991304698 320111437 350845896 152366710 515159963 93649915 595494932 832757326 939444500 205181037 743822053 861423293 864653143 611777115 913681498 832638347 857339627 401875180 880772350 120582012 367793110 335227811 462718139 484351065 791149947 495191452 597245006 194438157 586554566 130077995 428968336 629863523 748705661 593191544 808972986 312419596 929972069 70545245 150720187 26043858 89122053 530240204 857451386 165163753 548246301 430981222 848493384 599955266 824890371 92209190 632068924 489300186 684585498 313912413 440379931 87138674 884216495 373557662 516874658 364391010 573878572 947375953 947990278 444377433 865015704 52268376 909495132 898541000 999184596 843349177 881626328 889742353 898425810 327152266 859332711 725848587 901270856 632059902 762290691 851421664 992934889 794480546 899612368 192159738 997012280 762482950 884862299 395366351 459033616 162249743 302288150 739155322 981810950 43053160 609060415 673711843 875058329 555785471 877463774 437941367 629154633 230319245 753445865 991623580 991713598 777571937 966429841 337018046 787465321 301755877 583488105 911513661 939978441 819927002 864038396 343983855 695817806 654765030 745164103 357557684 862344491 500118590 770787366 467878683 474919003 949585436 971117954 826415601 950744614 123148212 704776098 47843439 148844331 221045167 998645313 716194082 789613467 419204389 763845654 306405925 574966611 164173732 718844552 544015370 649754897 24557261 371631784 45507822 80035216 531403048 537560666 122976306 666231659 127820199 792363169 485963014 931636489 305189851 772560270 947412411 964183566 939646933 940409271 736495055 946641858 559923023 704433813 953947527 980956497 637684156 743056044 499988851 931617409 633404898 681922122 873421350 959438755 360637451 874290555 553448169 595777066 90275672 850908222 721219004 764606268 662112389 840577810 754576451 996753885 441066335 457698946 744615996 921955238 670667477 894532085 982448093 992995862 901817125 946088246 366903125 949578082 199693579 201167603 890667166 892989501 612863915 971597190 903886053 951547117 524454610 931246830 840321944 987684720 500748177 984189826 145168396 382494950 438547027 613070979 324257426 866714182 780282270 930968730 942143381 998251459 865284343 981108431 984743643 992629731 386226398 433955066 495932903 762839742 970576257 988662630 660216161 688878368 627913647 947996219 18223280 423617874 900859114 917033180 884575379 934858586 763706169 821752383 25212525 631054277 466320922 620891551 122593514 387683385 772560393 783684591 311304327 755136631 86017095 948149364 732955473 782474690 440466328 683257430 846363564 866350857 350034645 823838488 135645547 633071185 473286511 743369567 443109384 555735221 128651360 920335635 575875398 672899863 189428154 258409816 200308586 259403983 371858303 785401398 711957609 877214519 859315762 968950454 326338226 698611709 429948602 978552148 875747679 942749811 116952986 628369637 404827896 790846121 720589376 782328619 289201003 874483579 817745930 841245256 540806692 963072145 306257782 585360804 590223833 715549315 147973644 717703883 489636736 797467146 94342987 779187472 855982407 938548622 965046382 999120860 512232558 584593301 861344748 887718909 23501558 696195668 735184346 898922678 886745469 935127702 771140797 775828501 722872077 863899322 691746630 885779814 699294942 827910400 519221853 954810730 970445485 975197735 777222322 852634903 860692800 989857126 718029929 840975763 540235812 606254135 600452969 746151978 892922756 937827408 685839024 922136596 19691343 151068947 380187394 820568931 338623557 577456166 8622872 181854208 301276608 344405772 445185214 801994855 298048026 580785244 523244546 547118266 569272198 662384125 398681354 409225334 529427605 889906312 823934720 970761933 454743069 946589688 860002198 913961351 449421843 827248316 892816731 986995753 902494265 984873785 822119668 826742913 421181181 654037640 181962130 226647858 309461427 655038850 557280917 563549562 324328068 514033852 883296273 990390225 317984377 847631012 983063357 995274970 675455009 756935020 66884820 281540865 191154986 223763274 464788240 780860556 186053924 306674563 521819622 870807706 675561776 788687023 968236444 989363963 729250621 839316813 975543027 981272198 720614196 885717617 855774538 995195170 455089114 793751547 272911089 345165731 986257491 995759463 351499631 972657214 522806783 584086826 931679475 951727697 293828720 402733571 561791265 964468580 627601594 703372328 984752671 987447188 735148585 952413566 455509713 883634896 930278737 947056751 603622078 792578445 653248706 879959020 645940216 879072174 531934058 951635538 53733681 381564756 143787121 518730411 732114496 985322059 335037380 745966711 942227371 973947283 324483648 653734138 922591509 976066743 689280309 761332331 411974345 683954453 365207253 595304666 702509231 934980224 766660659 939451266 909447102 917461407 430530219 723913987 255070835 957096501 599943646 813123199 592393320 844803986 848168690 988286817 378305363 403026973 170926311 634245733 659194287 763525862 144492655 846673998 646847015 778848918 495374718 555521547 29304067 103744333 787079840 864059763 48191014 659248122 642779759 691832804 691373484 839542744 597590250 760393062 292329082 992599388 82745080 182702900 80970747 842322744 875112875 989262244 138899788 273452153 382678052 842209351 74365 101563365 356322062 947288691 637746323 892459732 58635254 756292293 926794786 972528582 435805363 944462495 267126748 445933326 666269669 832806493 896573885 950296777 320456476 447338903 394541115 402830424 96188297 143661243 278992150 942909071 274649734 852093069 151938067 429172659 965311266 981631210 180272701 502285134 819895269 859622088 586397405 846705982 418459746 435367192 343444225 517016372 332086743 469208956 573453510 613065127 943380278 990133126 716731082 787856655 189160506 759938794 529268541 747852848 531175031 677860213 126321416 328327138 340160572 930049287 197231934 943951739 547921112 839696442 517517662 830186622 858340586 923948865 193578632 997660431 718544400 952658160 175592935 997516566 785148201 928384704 500296908 645229082 20821940 955904562 570213062 777599348 942704872 993635499 59889981 237697530 410545959 683755083 512911664 955926742 503553055 745626453 571592251 699148629 558835353 591849979 432580078 607022560 158115156 465273905 524017050 632576215 423505684 827763049 73062042 939137082 662397317 877814833 777611197 788788380 848001235 894442982 151399031 739191280 129095601 306006213 973653317 988599237 862326393 965630324 78261928 158411707 256944649 533191197 799316574 999098974 589460499 729862358 142736030 909843593 732434311 865584292 511726792 903698807 699413907 855031847 941262666 964474933 132154600 276839086 282683056 831277578 465595613 485590742 787819437 896302908 379503141 894382188 76948354 946535995 973939339 985750712 389718458 759001774 634375515 660131590 279389932 992426731 872564894 939385120 983539992 992122659 371218801 869357880 141976866 894397185 702412125 968322857 697254896 707445145 964875399 989371470 706343978 961764593 140220691 550021798 167123214 235325935 707923466 735819790 887037356 905347037 287390585 311035156 661563406 933759177 628766847 960673015 521163859 876841692 900190347 943035185 594392586 693899676 655718242 679834581 151703271 594778467 557753539 997987396 174394944 297320218 605448976 815067358 550443737 793521786 168618807 572471001 314133570 621701636 3809196 676116864 869952732 929028225 238824880 955763330 524121865 700968454 416315857 562567574 252594294 600014429 989659519 993288756 849974471 885864016 400920829 605801411 612321013 996619659 370635781 402295345 425604638 684200652 366754503 984984577 520992020 668576814 263478682 964269463 187639817 285098166 876609834 938477213 590276406 725421311 285599499 636223776 542670484 623813176 184886220 208552497 531821097 854287087 447677391 844484808 37641451 545170998 488390295 858578052 722040853 800766080 921828423 992512694 798839585 805193736 268934336 723395655 535156444 655508564 945522664 992385010 657792254 997330110 419132747 881023215 980000001 986750092 386093287 550963875 808396354 909929164 810944836 981600201 756762511 956514995 10720313 959326731 925431173 933348784 181637334 485297676 750795045 935101747 590260422 695672080 288946098 747833659 200484185 709278123 414392780 548142651 859690071 931065944 449537091 871661398 288299189 780332048 107368334 785728688 820636207 857276350 772376873 809580582 15587571 896270728 387195163 559193871 439065849 641027173 612901677 734253287 936899997 995118867 757175498 877545256 977968866 985320847 453501750 461223018 268359308 288975544 533064944 657758679 103944300 621409585 302107142 477128488 305399975 813121259 797721326 840920736 774724900 994071961 861850967 977565792 181491705 552419241 527581634 857529009 815562322 896477865 654133899 700276177 375331124 807623583 471732421 845498863 541307064 793474480 382788162 869743625 159037645 587897217 831379968 873176849 807877537 822708485 608877641 965496000 504423520 633694754 440807266 685746787 779890927 918291393 125888106 553787340 210366205 401767754 863643596 965980324 416644325 639917065 981795386 984861668 395832285 423735775 182828828 505210235 585619946 879824418 307043853 938731744 700248406 908439947 940628421 998082019 67796766 680656090 921931465 996797226 679510303 729201820 390380839 422594012 129456751 391848207 136788325 148542126 311665798 399316589 362328005 934697762 709519475 846099122 548574348 988516201 439198172 825737385 648198833 717517909 280318347 677427275 468414704 600037058 982128178 987406082 473211680 853970987 69486431 421290319 624468540 871355579 405840207 929581273 935252403 997501650 542566635 740672125 882911942 901378951 141433603 412567148 384292805 484867692 232871673 615991075 174567162 277871364 907515516 995935401 428302880 932054905 530668146 885762578 252536249 576418894 791957515 890181537 908823256 910097931 12341676 579072205 988666580 989731328 202335796 982833953 187053816 300404871 190894385 351473255 750235229 981026170 91947017 156921805 392771584 967199009 410194684 620379522 141491684 828284858 88164218 389170176 686467791 725094451 545761740 926143176 893692267 956251290 73687856 667819370 990696935 992139267 812793304 875024647 289846579 713345322 340008493 879382549 830442 262925625 997925765 998129267 88549377 299624019 443374028 701195488 554812403 624686292 861224845 976231526 710318894 896262223 788425618 798222166 286257229 387784134 510012792 570888622 414207192 582449487 907501632 936203534 99095655 706604111 732862286 759022603 918016512 958886739 150737460 733898555 466585 647037654 339501918 461459926 598219385 753886874 831157551 895388007 936269091 952721433 768268867 780287135 164278439 583578740 644821553 726817400 342130262 503018662 780985416 856601910 972818751 985142002 653019287 689002215 522774622 790026697 606860161 708738913 360976897 481967800 51754175 843130332 448552580 668823184 358903634 918921914 856881308 914251960 241202220 762194931 681253399 725227241 891352552 980357674 626414516 654158983 854887237 912659108 146908214 946024733 933838472 995632490 857369053 936271291 251725121 255158625 329714245 864851834 569330503 623853247 150535605 532200340 154285970 197147235 677920713 922602857 538650562 921807328 67967681 211232921 101626393 713890597 821428684 893444473 775377915 880707682 270156032 914578532 331090218 990655006 839360443 848656735 690327949 823981870 793989918 929967693 122337334 904051909 890206640 894489926 531983271 700470541 339031389 778821824 507616901 625650298 602842296 969170918 769911720 980000710 810197874 811248967 550593956 731301276 664002213 937817264 316484140 819772182 336886171 939867104 941654240 972324186 232767311 530277902 793423408 813665516 995179651 996772509 927849022 980277052 804976145 850416782 966558763 995977278 32127060 581039582 826442544 958216730 238681377 329471443 305228107 958634165 882458874 966383069 907734325 969225460 41894081 456725100 742992538 787657061 956797402 968042627 864767339 996844063 948617425 993791510 2323850 421291840 778758822 927495662 205247989 450352973 340851451 467705636 176840475 826732132 437058164 875571862 981874514 983008793 775163059 915340033 148492751 909116634 247761574 370287188 556013342 591088364 23496152 977417740 865132375 880308789 394399130 991852966 479249325 827433877 156323729 196767905 553981455 799374217 458156604 761649312 651484593 708976168 295836644 991139898 691698739 938162451 169208406 389966143 358429242 950005939 314569274 761624695 670506756 929977575 577820969 784119407 868241280 935589761 124131919 837206237 440112758 717377912 794449113 816325339 618718606 638344239 321780252 678479863 58558357 782856671 254587323 978487684 331260932 631693203 985251635 994248196 94243644 678182442 60332666 223731947 990555251 991932843 259687430 812287878 83181646 157611060 593882085 655215443 913566707 981264935 782753015 883835602 260553221 888012790 532918797 694754484 319973993 601886665 103388187 252742062 768224448 900123120 829876440 991030051 363609832 757664481 293561006 302756752 574428769 939513536 747872011 996037309 526745652 960203205 584497992 956900710 328800464 396113558 950536749 954575293 156961355 243776893 71288630 825773949 725628059 742540691 459647792 971020021 525597692 960883713 767915231 906479835 94042385 304879551 390814084 588698052 344118953 603731804 539559206 574098867 863045977 893155491 971397386 978720333 75479511 500477339 463914084 473826235 753009200 891888948 703444234 732964752 503868924 664383071 156949832 294288803 535345362 644401577 638630344 699552876 194975746 455022033 816052628 865485947 28308377 366611776 812104333 969532744 699244878 735253429 21405838 866539030 243447346 445789247 652857515 691977123 494293319 714939400 715174960 957979633 708018795 891718428 366218764 810628869 287945796 499551990 34115851 191866980 341580350 900583729 648932199 915044873 707495569 799795252 216844371 415346455 821844912 997723350 705094809 828753430 193863493 318969938 125884193 891894689 699406707 933202801 508690631 854882873 585426121 989103261 845007713 864395265 880565804 953411963 379429660 652880848 534828103 697812219 1380408 387355822 276590791 665135491 765072160 917562473 611900623 739891116 151766969 930468414 936648500 939324271 619300848 914694593 756295255 891950827 412206967 531578070 753553238 773102748 726697042 828527305 74599567 956116085 502536051 943638672 562548991 653330389 622361169 957308504 45391380 689074787 745354866 928335446 402513216 672957604 490234967 563247368 198367760 456028791 813933289 905600670 487524684 915758261 858362506 870938435 948001678 967147457 170099519 648479017 744246899 798386492 876299090 989337594 77250761 360745671 283743229 686871965 351098706 567452789 462265907 622057034 410555969 912186708 760399847 881673072 216591355 424226076 726737422 843161215 748535474 906592608 761344509 925828651 594014981 727593896 991644466 992723463 330152121 705482305 838489747 984880365 753635026 790795728 28655140 402810979 559664622 592304648 365061567 915668047 37415190 146847631 981347239 993877072 784622895 998161754 282350100 892560436 65442588 652554599 520451997 625253138 22137733 578769553 739615722 995759146 812338486 922996506 400043192 981745324 365919802 789769699 312093281 590672744 127261847 503132759 83138258 814450217 458386013 829176138 539016249 801175613 161814350 881357252 839607077 859493555 411525699 818041824 839556360 949432089 606825236 715909308 961724243 974138972 349814436 685959863 849591012 907584965 656579573 848622942 613224937 853247707 90664419 315458386 299334251 774382351 839843550 847002583 531773910 887378906 147897395 225194866 279319235 671961205 618734352 684454465 919568813 936198773 122597652 715683324 927941671 948330986 476342515 866455739 665761196 730193749 892181718 982117115 197750543 436135250 22081098 476289982 87388125 330203480 968371596 971887684 535558306 979729491 609679781 697304624 275932797 512410723 992082275 995788018 844884574 908928301 377111012 983282350 153361942 173491341 61409413 450606438 163536703 499036153 352967103 513911073 523636858 792987404 630573856 814113149 911010532 925162206 82229494 220490572 622983551 973360908 148856678 748932508 361319730 993116541 830613992 903769160 561247088 684903261 454814386 524878994 372924925 897106298 31230550 641390738 466301446 634984155 722013088 901355442 656755335 819753501 183833362 904284185 78695959 724867314 45410035 299222599 317629442 470526915 465458322 620044383 898020575 935453601 215217889 778029706 16113607 705477246 883749034 901194112 44215216 417763964 390606347 392515985 615337282 805503057 504313865 976033077 182818680 738544602 601583392 637277652 61757536 930522794 765064522 765770939 378984410 856328802 632639050 678131361 426176829 604214140 20268784 788006033 104776210 591811020 265143715 856454884 416500151 899867142 588307549 827060444 43632834 119709723 732831122 930427736 274893211 798996213 996887061 998467493 70245288 455840324 450461489 611227927 583936062 611756327 273589886 809595757 375517275 713297016 773194187 851696343 176578815 504438111 363948886 513604234 153378544 659651039 700140030 896444711 273108139 683189388 69509934 236976108 759839560 768987590 69718857 416067958 406554656 518005071 328035432 631489727 67991389 890125373 206174155 712506591 730252749 827339668 308710074 419823097 84095193 657730272 502839341 971709064 10297339 755371745 854509147 892158425 13565980 773799855 398901441 878859008 655700418 829757650 784073975 951061294 285974820 427843823 419162626 702987592 899904306 974707413 990989207 999062314 639249760 732982534 375329156 734266022 101387011 992049958 523508816 594697651 548450974 920380980 684223857 846604666 221305307 778563281 885752295 965972440 460947243 781212952 878164730 975091139 971131833 973513060 700984750 724537718 915529772 968907212 11131556 491790669 717478679 769951202 404665446 781101227 806330374 940295317 301034198 406678520 968667579 994819257 305896910 634610916 542853356 812564910 842424447 905252727 44698839 538759887 165429944 604539243 914238303 995483928 823283542 966403697 51854351 980160812 987329463 991370216 232142344 333189946 760140722 864877705 638325519 837838474 35515395 146421507 722621616 788331540 694434073 933186188 627384295 990197183 714876252 937311444 336188386 752118109 963187266 968148552 11820892 859188243 4110503 757679873 464875743 782067973 42854695 943872903 910015083 943692354 457726748 624436073 427653680 973937203 451227685 559649629 852594686 870802157 232270523 874401431 376145975 545767815 716914351 783221912 90313798 358859042 202129268 644662638 759784176 881513993 946608202 972743708 716035962 777599213 919872396 983351548 30241539 604981087 106829949 829906746 291347373 397657914 809896495 954613964 715413398 831238558 421768534 886722731 700476943 923106137 271268813 542176774 698174216 841703292 405507317 961788896 929742293 995509847 191796164 707809896 33985989 954024147 242582065 487401235 477539068 775381113 51372630 674867690 401358564 879263128 153043333 932550005 573070559 750790336 912011873 913702482 386221163 400642553 274396312 884935969 231775022 449465120 49769122 554566756 616900492 622745746 295264686 489599010 753385665 966540684 381557265 815541663 474072291 739386528 929619862 988176356 268536093 790214194 392446852 400705932 706040260 707424940 40246230 552015960 476749042 677641371 897624485 900939784 800595414 943863457 422165658 462038694 303399507 665580485 601641217 778277595 439672523 818210292 44011929 568447075 477316544 573226273 963141831 964234436 996039479 996144659 76972425 993972629 198757749 532386893 37460164 643848948 311113692 494546773 555304337 878720596 765268133 821725619 469537957 821187625 981337128 981480044 54916151 838781432 555249369 936505641 981723673 998773310 527343302 695303046 839485646 920441916 426702723 797769596 84218636 996747571 260305656 913654056 781543653 850115437 443643838 976373429 884751133 947085995 924222143 980048488 428127264 654514494 25834940 250641780 829536680 838561487 97557156 692839547 60595963 712110481 620715868 829530133 81729615 982442018 679500489 879853575 133776140 740230663 310104651 345888327 566804916 789377090 292158241 455341872 436894517 710579041 698364608 914303514 632415155 688821359 846609752 969500162 984751065 993441580 830520149 962457718 274500599 659573965 678183166 734029357 73923341 238699367 973400232 982810894 213764392 322099613 491438576 599958218 488028990 521069766 670130005 903364118 876672658 914607243 855076549 935402373 599252483 687959175 55203104 600304849 630531307 853225290 979911999 986851767 260563068 830483149 47848148 454612308 98606438 348751422 503338748 737797336 576219364 715141375 164416147 607569105 416892696 667856041 415684412 903512649 748836022 842587401 613859872 813510154 578114949 632091929 101516785 392444205 14677318 145941220 111828560 826751091 213994992 967321708 577752558 932273399 137585903 873641294 433549032 773613830 459417276 493634594 865933265 943771378 812137900 861373211 39385534 636345948 38418836 737322265 355489776 530462557 75300483 980290065 925010424 973900110 655311705 986446531 811075568 869144144 579164311 826810970 531451046 667298154 390437519 991673199 728634447 991491259 382865016 771050624 55198145 458843350 569613304 823740374 7405750 681362324 514158787 733005726 664337724 902796774 312512309 372792281 38682014 346079134 846134321 918840792 675532670 808471872 131361572 650777508 226001349 544924499 435555755 666911672 277443179 929651784 502609025 561798353 289598633 383796185 832375071 862652453 599587373 636919899 981415033 989297456 928425307 930861511 636885702 688247023 604126239 873287607 767890911 834833608 462390340 769420288 88204540 241457385 165505583 730227022 774521785 970377179 714490703 872294331 796306362 947672904 957582813 997411404 501964736 749178318 74490663 234418135 64194294 837923850 609089759 741902944 969299703 998911071 473051640 634317567 331495706 968581837 51496187 801925538 953077520 984516372 372043055 757068214 961150083 965889853 675921525 911576013 763411390 784465812 789726149 936158722 300748484 916537957 735893157 902435397 574601078 953676855 913541982 926275256 531985080 942273256 15251038 32887904 130872593 328588755 2071769 299394634 614735402 959254136 542309932 909379424 538759508 750915801 855538301 913745709 787714964 929188197 527413652 732687429 495074094 527666134 294560670 927381470 59823586 472166598 354133546 606925308 412690743 630809774 274290896 678892928 858032739 870528437 29692329 98970992 251597563 508119683 596262503 934702590 96756991 505612227 638899146 913123828 807949966 995153378 738124926 794697052 761891038 802595845 669806697 850635292 854156207 945167048 241835163 389406748 190590674 790850155 124119850 945541111 343105600 403824348 156966422 901719428 66486434 636607394 221603292 784832326 280593529 897938325 624147588 998124477 47794722 815268560 400026530 413525614 833896717 980913416 98631407 246965899 336336846 363678404 594248343 713712662 466142231 784565889 47881786 475276482 145465187 225635546 502273539 855778937 483082210 619654844 496219275 945076048 214786929 326246198 243569910 291606151 49852162 109288274 258647159 563279100 790995765 827889528 5868633 323824944 647199439 909448012 95957830 712253465 965085025 991424251 870501229 895700325 625812174 921430422 915069336 978577202 147924783 387805655 694280882 801842119 595755701 814354598 792688721 796278448 738284785 983316748 612027840 903656714 591259426 903327742 884290841 932805687 483770328 976084383 83579167 667503087 629109599 932834610 781102424 801361357 569646618 960407481 334425049 530022157 840693617 966391775 983043998 994124347 706874155 896327086 678275292 893861550 704584988 772007067 308611269 937271074 622372447 882635695 70914334 446531274 412383034 668606022 872079240 975677909 96123422 988958343 627670454 632724452 102915971 263986401 641208153 650406021 37817462 197975950 32684649 561448478 174886738 446376204 950171713 993057723 462252052 684619130 11477272 48253943 659734840 846431832 968625771 978976529 159526127 328128873 892329328 926405613 124881041 364814138 721586606 873842070 454612567 722396504 354905800 672732653 12674794 697655965 80294914 668659825 263085294 964535580 50439877 430630947 38055127 741210001 25450891 306026728 61282234 672985570 74447016 467678119 595277183 849425761 94222388 603738110 807608450 957121610 426550921 901346502 20869060 375745923 892762429 956146489 512714442 913303627 650543184 988708417 459669126 479536036 45476226 216242258 941933658 991845168 261693289 379624283 359429426 631795097 600221390 606653837 842825244 857734061 291841459 351127923 428579014 493500689 205679300 971980865 67480409 103105163 161475339 350256135 579219665 874224895 798684179 830906730 916462967 944338249 835066578 939373492 100869021 333549899 691113609 880469194 616257132 844309025 816338097 975272627 981470306 988051356 5292319 139324827 167576390 371121024 938308480 952745899 973578902 977929607 110851029 175505353 134733491 447789193 671238228 700795836 500543429 965371842 749649132 990668773 13132341 706829281 539401226 930693850 295523379 612933404 964409599 989179110 310835834 816392912 563531804 755181835 976928099 989639992 48068077 847659958 921729851 987295402 394166957 920417993 87707186 402775232 759542200 872886653 228566989 439000745 446983813 597018676 6346959 638356481 805762644 832347095 239333036 587813126 119521696 817874449 947153148 982093045 996521274 997491848 527521936 656346365 355282925 695884187 316888692 398404908 151389693 716737211 509081327 562290723 713870577 920888067 365396599 822295668 288485718 717736831 646977449 811880137 572531939 930494156 42416527 886130066 554010927 770224431 892686832 979055142 551407693 790061688 837831626 936995297 973198951 976159203 839534218 896201668 545365824 875654673 191357148 628967312 882154556 891263908 583123797 597519897 46281296 779591852 983862756 989328722 301678318 375327887 500082112 810175467 331535858 442183126 790495522 955068305 494747608 608832122 165924137 963679735 83518304 769445164 248299262 313319697 698532146 727260724 777356565 810914450 519968119 732988181 383635204 714147422 160454911 402210206 115017516 332927703 564262386 666980157 93729483 120765472 722259789 783399074 73072729 229905496 610360181 979090243 209230525 475597263 6167175 792434035 523425692 867153563 249142717 900659049 733409824 894453994 160333273 486679365 98917427 150342505 133804664 608152324 686231664 743427097 323021969 521118073 695009970 797116990 75126675 977337424 757636736 909091357 78941673 740875691 845143313 874493167 961433176 981523412 280322138 668021628 793550227 930816996 521823237 845381937 509506592 567852100 314872068 825003048 807575418 879444944 823904209 885126334 996457531 998510979 443665361 522750369 476176175 640961837 331101034 812777214 800328953 854868630 144973001 542122260 157204961 861862260 260482788 288622764 451852991 837466372 479312845 641089154 730620252 735872834 561735637 578954770 228903437 397066202 409493249 513160547 329909221 425944117 19561835 668536166 686207651 712824470 846262833 909383201 498372024 985663673 284749138 456466065 394659261 842833775 518100537 586368408 776833119 918985502 272778003 594282376 37386969 237258849 985086050 991085775 646753142 886889374 889949671 997167697 11853508 873304589 300902427 755600643 182833661 728834990 564002238 653551558 817141070 830292605 357884037 955820770 946413432 976886119 967127342 982197004 558635693 570940926 16267088 146921635 437751878 568268811 252301430 897301689 702006825 779183434 48712337 243484947 907677491 987154498 263395154 816955138 427421616 701371091 286354340 962088784 196971765 506006581 248750030 377540217 785544206 883493495 344684803 429598451 397038280 864164416 318223919 874197124 434999002 852681973 358846483 686751434 574886259 946458460 53299653 167548062 741544988 801108554 442390901 884728941 527384180 751435780 648463286 779429177 505938170 772167938 225033175 311062300 472867053 889957216 848641191 865969208 21928346 831876775 488620634 933063621 927837878 946667509 587444439 641303632 234257760 757872134 520077357 629471787 22083027 755255339 85042195 393036355 72608161 550496212 340446557 722410611 758926586 904098871 391014203 704471498 499613818 988955130 581348088 806936677 56494842 547742557 417317194 948726546 680649941 952463491 515109217 953412951 898991163 977712078 882671179 910591476 481363260 953647568 622449835 893475656 154149911 609120156 216116810 964708700 365883022 755773280 151856483 297621761 257511017 718660234 955295074 970297725 288652278 379987253 32431999 932932786 763857521 859813462 63468052 514554173 787440500 930856403 647321837 820170277 272813655 443335980 135122299 848752695 271792722 518848510 329815119 638577314 60516277 271429215 181679530 525228514 583502003 661560930 31371439 657197525 77858975 526683717 289587460 535388013 942548104 956595177 780968832 814812964 462588001 899450843 387623603 481270306 582629076 816526783 745131031 881792932 11174549 79910993 748302562 793666751 558022351 846848226 299220349 781044425 101753891 220315989 484050061 708626543 878618386 975834300 128840704 762935785 789765074 835346246 29888514 246622390 144033319 275329182 630213892 826285377 801709877 814384089 142038346 364221764 265611329 341714304 300671233 690621210 715141076 797724070 741174147 800555303 401524451 695715176 395400048 761929843 672794997 959214948 636143069 791890069 138482122 600773881 375685856 808235930 116875766 773341939 687384640 769946158 900653136 908864202 799709917 985682490 603581378 889444290 201766376 555727555 495111691 846514965 41893632 536829947 131802123 304867449 165579049 847421980 389970858 424612357 8886557 288191882 858368715 910003681 344307987 581191756 5774644 334317608 185364707 456739266 633005960 987990554 808431575 998897614 563069400 809523914 685496764 726589254 484424154 942469918 986952223 992957882 20900686 653818498 472499025 982497903 474399530 776388379 662612400 890806649 956343022 994569504 24784193 646140635 375696450 939989324 79186099 318351644 51833242 88761277 696028564 940955556 986429216 986694132 262443231 266955401 707913974 960818638 394237037 669749811 150328533 629543359 6297181 725600223 510899532 930189854 409147298 452000031 666505116 926775639 535225331 755730787 617458499 868087682 599706374 911929949 482856099 844368077 789488018 815946153 474584370 667476184 528042502 565626113 587886883 735212436 739487064 830661196 718794919 787603761 648957217 823706543 234226251 996736547 956811735 992530818 145861943 550767193 131363658 577495576 201156607 645078416 577191428 721428286 3080818 673074101 247618901 863529530 276867504 474431274 910275675 960932629 924033219 949130736 54063540 929307654 659580756 729598834 739253688 999097215 914422470 967067145 152005479 230501256 766846120 872893783 167199127 747713410 134045315 456004217 160461334 478660423 611148498 853086318 554564777 857715098 922656159 978522641 70669504 85211100 949150596 965892403 390287024 567221303 509837763 797718151 957096998 989200963 769519123 877500501 767462904 905919350 343087539 664870586 321816004 496474291 644562734 836570233 790762390 920490509 70634697 658115421 634988033 876726418 99722397 106213008 690296637 867007427 655470031 656615148 316555800 596589312 364422180 430756481 265255979 490884219 599918248 702640895 994914032 997154622 82433832 805906429 405695666 410125168 901709583 984417068 938180498 997828776 472105383 756072831 428037608 857924112 647090788 649816316 675436455 781208799 390821854 674163763 828844911 916684517 660578373 700193532 512414447 629773961 682065534 732784628 920743241 965595446 767296822 984749580 35760102 716578073 753522967 996604627 413102071 423335126 546349463 934188739 543659504 949053983 746245585 861802520 921337080 942751747 73007093 181088073 963545328 994878052 383048231 998582999 508030642 649071066 353839806 738095047 708621336 710890971 146664542 651882469 984196440 994372017 728771267 854543184 495431712 748502281 237500937 524913722 289610927 935115827 594592457 719623370 56266858 671549986 195455897 243546721 68086345 591622997 926587602 935848044 563439737 606604395 235603709 737282810 510683461 684434991 661673391 893723405 153337610 807119603 728302218 945769311 507794561 520887345 559324539 924483106 942797026 978234155 648481203 786825195 304281264 690920123 289934935 841853098 866954676 903638296 896126754 905004170 386815208 955411420 253634369 666403463 227591947 454453947 557671199 729164396 569195782 805756435 897041910 922881072 737888829 918124760 983232351 987075451 608091604 614640905 90166923 171694921 187058849 428225024 825806380 984026977 434644127 763157998 738195971 899796257 371982967 942892942 546105459 653598455 68124579 324647824 329785324 685581887 71926417 259520743 272153781 653736215 433204118 483729476 418624167 550205738 279962503 997122191 714296652 829460805 26228359 287196411 224397549 847881690 279050931 743824325 95226724 303420351 862358292 995872170 133540754 249017132 513866227 607209719 51007043 943708452 972491413 974412307 793161397 845471902 175616712 596710358 20096995 521455795 691711542 978783427 764893716 896312847 981603882 998227691 540613565 761240295 128500953 962397699 564811442 581936073 81888662 340398490 611509880 927138910 863955782 971004147 527409865 604924745 38673433 394483543 870601999 906936195 867903839 912941657 757840367 804302114 397169753 742295286 463588767 610938983 758647249 902348196 593549853 902834707 880391010 935053475 509947654 655010034 774178720 950819137 159154978 554580820 30906310 344150019 468036694 578888983 937491058 946997925 348354299 511252601 178349118 691996010 229273412 413622912 27291169 237348418 569952111 590544775 384519838 508721869 612127285 688384028 49161282 893783978 616873511 985640207 839822508 992693579 26558178 122523074 195014948 758802019 763178996 994001664 537316963 995709875 860664521 964918717 88706590 443807799 716167941 975005983 289910273 846339200 648357013 896211115 928445930 937791285 980221598 984792654 269335583 954327881 86074281 896580995 494435556 897330315 90391802 247777824 542067803 803166793 334044622 865617804 359116517 404733286 836342971 869122251 939932550 961704086 947790225 960317193 525977047 705188549 966981987 986493207 863053963 956748439 41992785 751520714 510179333 826740024 563681283 873935474 724967333 968455192 703811223 777845715 201127976 804519004 215669269 606462221 476051056 621881601 974930362 996569889 707935625 860635065 891598913 951054342 109414556 433777526 495287184 606806941 490485759 666566333 24406086 287310690 651909652 663881399 869623581 912663967 988285477 996235654 965781152 967008701 277380116 671702126 555862312 941059068 83422086 537993862 269087229 617149203 390620819 636334790 84993074 812241347 367459685 657165668 789061433 833183228 70727235 576238780 179987975 416091933 881147554 894479587 400273328 958506707 779925200 797312868 288913123 322111238 90699764 541134099 373497265 402152505 311386891 859369406 488447768 864919959 85326238 254519259 774579316 811586742 725289798 974430032 552154591 740223932 245692601 604446679 633262853 934661005 63959435 451172339 621819149 981721566 253147435 855819582 55947852 82838748 939404637 997377359 961418359 969848372 997357012 999309687 171424934 350459930 498068863 549886294 533858797 916819856 835804680 842788791 105912046 386334668 390037216 945715143 939404250 986622822 960647284 995863458 41016948 573520389 514363369 855864297 882121077 922791688 451780110 804557993 569726781 997084579 527454075 846327634 570161789 579824634 532829599 793199078 216470856 664074282 544030345 631584147 796206867 834463743 696034039 909244692 314356899 804845960 824671931 954199524 884264805 988264893 255736031 791110031 450812545 816407054 997661652 998246209 449461549 999376504 216172899 908444823 440957767 751380308 974059892 982697861 384211927 485206745 143866809 994093934 740896915 914675609 620596881 876063026 300481537 418453916 659287295 963534917 911409503 961209450 810108297 986634059 338558368 504164628 727992840 807878562 317626870 611358058 858255189 889827110 702746612 799533762 700536729 832812405 289025342 678809161 390256949 786767023 145953109 817693663 312514448 552673561 791510823 899602522 782657297 910985320 500898018 907179075 50902209 619868944 73259179 93397035 703698287 833453693 107459260 137719537 436614195 872035684 105867593 376030294 794388687 838954361 55343874 463102863 499951923 561574109 487706748 835329414 514015616 703142633 828385794 861173307 421282442 741687544 815862468 881912866 474851786 501880499 961601299 995747838 6529312 896105204 351914851 810242868 282349909 408562161 93028777 377430738 592334306 647327375 523331300 636084487 304870166 333909391 169522393 799605716 863580602 937745386 259559287 500156989 884684215 915521054 997574999 998605900 558433613 785329746 284743602 328431638 167202969 223811168 616952682 773977035 742466643 844763304 700482377 936579033 231315052 415504942 174104903 971452505 474935354 627839547 851225585 975751600 577316805 801880238 197147511 763695638 408668707 832235692 493960841 725651407 630765688 833778011 791901996 988978341 394987581 586723308 534127432 908711725 147748357 184009129 524736674 610127359 278390957 650646337 82266921 676747447 973756122 987590478 283579748 421534374 202435823 976171794 814397480 902308437 951452000 956470811 368480129 886639964 847522911 871900108 937895933 995744680 591609873 859297679 713914379 748696263 948617966 974219306 17512473 155034593 235023626 287146599 663315659 682775617 506552263 535421737 337772088 460957069 835466633 859455906 720820041 844368344 547126825 752348586 645717513 812566586 81114370 867617250 76535257 158400817 331890511 994698691 718722689 772328752 763710835 843541373 962780608 971593783 380465419 698646781 804255962 936613226 535099151 668200470 757841094 798004407 817313341 957709296 636260212 860847565 551186100 606944632 658150176 700104702 415426306 574119696 70771617 350981110 781180726 967771674 987353970 992896025 377089815 738162511 397825592 632533594 448803471 738918546 901512260 926976955 684106158 948402638 684441266 812678427 570770240 895345273 995045174 999374585 245986769 259069533 39802220 165199479 231382848 796139159 544879462 597901938 606615481 897230506 552186843 787871053 915153076 972193864 376955007 952081726 315498641 976063367 704815169 982478290 671106977 729225850 176192236 393437225 218501294 353288020 669002970 735451144 463716528 733714231 436710270 634439351 50732459 251979301 803757745 829223966 827589799 976767487 38198643 362533914 456474906 484960082 788238095 840474827 834319384 993990714 483094793 748079381 140551028 967864943 987756222 989925058 346598448 587873475 472387081 977380692 760466873 955452330 110026920 858410783 176244655 516879679 301310536 582182095 753078816 767409648 135279311 682796111 427856884 956619685 381326253 752880695 165687124 734389589 514462382 581378965 762856608 863798551 413944173 785691465 45279523 242425676 602367346 842139569 968537452 983681405 178725316 985276378 163143367 983963513 341178824 694205132 869579603 892496864 87140742 135658749 392368020 492807917 890377584 953824552 275885956 500863927 363707564 844737625 421286775 793089566 797526904 813456766 21822007 534586793 422182528 679952860 661908854 914651886 903856663 946432154 887373017 941224760 590724722 628391004 756155825 922921507 658744098 799174865 10365795 265285162 864788926 945875450 397348341 894373585 709887220 851350054 236169992 893662981 378499979 941699242 240533938 278220352 752133561 848501524 199753728 478046558 868556491 923505710 822062517 964240336 799606994 945643469 704803141 787650520 419849392 831517169 305271979 832038431 569170538 875377710 567468624 886112961 217418278 594443328 530969696 732562305 16280986 650766875 787116228 964379237 105615713 766085301 890183263 910473025 254934527 926314520 106391091 382473808 300295084 675791789 628088029 754778195 690512204 930972265 119987731 568866013 212467281 934098456 547608915 838751765 79009704 765771693 881152721 980477886 640445706 802241302 423845909 777569559 426409636 761009882 977818569 984083734 248820996 271718279 25622798 461099424 13677267 518974278 776951819 839178735 251608025 349013589 256949683 622947058 293072078 623363168 230430253 604378543 395610271 944195798 636719069 898295294 409251731 919173988 831446676 972712556 347599801 950274675 887748272 912996507 386125514 634401482 618680243 717245043 204904386 797627633 778353344 800477595 625570094 900607908 564910959 834122607 157848430 244403431 568741267 945829564 510597135 606204507 666431634 676242384 155206481 863632020 211393536 225801749 357244197 433886575 714661644 908571418 943132220 965560465 546731418 677732591 507618681 571535801 912727800 959468677 82162772 372344463 937600248 990070227 89095002 263518201 645566586 929427353 103189795 187722823 726010968 746078293 769113641 902333747 451745490 671230424 110513482 129911354 408070531 561682279 592300372 843995489 466914284 953064264 455320662 750324949 865849512 896975737 725733733 981785750 501012701 772350128 477898918 654620848 667224812 938112108 623476176 804932234 596358958 615999453 141882018 830743609 155549311 780830856 647767022 956423480 237415354 855172454 735628424 851156772 531624194 960998589 408754356 502608525 106121958 448469074 557705698 559529003 185726305 738352448 597238759 750357060 612090869 977798499 422531715 504388649 87799872 961155752 605404742 755290360 434757396 723544311 171800145 414257810 785111900 904625452 629868623 643746029 879402029 935304282 615328033 784544850 780752412 995563603 558407378 890100208 742763254 996843497 185932313 595449686 304078362 735358140 124356821 621547032 326948890 677114159 224585313 493976952 981684494 983309029 1468821 915036940 889902138 946468159 477018369 702011862 221380110 681243863 209722629 642946324 669245973 950195144 842024378 983238254 328634326 458746559 535773861 616929547 615638656 653391974 66108715 325644322 801217059 900588651 695048364 955409181 364651014 679721756 677304396 982604739 153400145 410512747 412920192 954287609 235949047 925497761 855593220 949160634 335454845 965253416 315998960 879053634 499092260 973857169 36208664 421218395 589548563 728198909 886497485 928537373 994876989 996634511 817429994 847073004 55617415 533595587 897568421 917011303 380995773 689116263 477266961 551712424 642059334 846913987 91103160 891208574 311473894 936855502 146172068 590203360 696831107 906029466 194037156 257827165 4060818 560581787 672194780 815475207 455991976 579888877 36979733 753419429 836311057 858104787 98878740 684184371 924141683 983199183 411376163 708154709 831766889 911692472 769939047 895414051 57584035 555514413 675592492 884653939 924565751 975164081 13361106 398521467 701069582 916685825 829731564 878458166 948939086 997083577 790467107 885556408 474033942 719736293 931505492 963456254 938930038 982609009 783253127 872045766 627577302 888187726 152593390 324276932 239044856 562738174 409641502 553026120 445750284 610227261 161074730 288912997 614169120 846553911 134495896 404711690 272820253 634684980 324600999 651911743 962795597 968402546 593982078 879685597 190449108 377543610 680525682 770714763 108845017 270093144 544571061 718796418 71908893 915173274 652684108 844441964 338836568 938368049 773861612 990651911 362902046 407253114 301247522 633170862 692572783 927375647 714130187 984856033 828132968 893541155 790969455 961773568 889674801 958244569 879545898 927965577 27810734 133153676 923385604 935706105 211740266 277518184 640881511 813529737 474069321 881883758 159922032 178686676 798907013 981459526 548451960 747341063 35169885 391136238 338541868 820224174 86778677 472800564 1696895 626413203 420922317 502766279 856750694 966693895 313421434 540157256 947792778 998020508 860836811 890327401 536820803 897346686 202647015 872291169 808141486 985308756 637755105 724987916 865667152 985035332 583637217 760698911 526799918 532987525 554388368 620411686 674715399 729714595 758215911 812895719 964554666 986589285 879089688 933146546 736164032 877807237 780842821 871073823 719558607 795100896 510146618 963386183 32930518 514306034 327140863 610630340 599110167 881971744 647282861 882190829 147036321 411183569 165419362 452025080 766721085 998025137 60563507 702114152 208349046 467643051 276417503 585543624 860768342 871949509 729316501 849687338 455766499 659068010 845664273 932936957 709161656 805525363 931170657 980100879 23461949 441151319 553884912 873077887 206295845 348540742 681474047 822759012 608342870 751723182 273057718 851844554 525290936 610706370 816571156 871656483 713920374 782006704 306009527 579881283 157630250 593987331 324026560 511849248 651514682 901973570 389997277 980752829 4397223 761230415 978207620 987261376 222004337 533820704 410586153 771498586 488031238 784103760 786321777 815070313 682060227 888007522 533746011 612231483 547423814 679423243 113144982 378817799 111812134 537758114 632765213 884469308 171809715 968475984 150940801 932689989 524351428 638967511 281121291 946090942 578878978 740905767 999246286 999272311 483486755 976635332 455300630 798689418 759267705 844949995 242489870 573692387 147822001 862066991 700003206 885278887 947965922 949151825 354866723 978966045 533460102 554016960 62452477 535688189 957937268 987112394 672859678 722397764 108846354 408605828 601328112 795290554 108467319 512642885 746552137 908880242 296470671 373775228 806756980 837269328 310733860 463878388 300218896 767395380 217779048 886497457 164356001 572437174 95058007 233014560 372893481 894987182 824174065 934773056 483323219 933292949 616346585 852747435 231675365 665676127 457211948 539042858 716173460 739508151 752865568 777395581 642372088 977325762 332200079 352679863 681038919 730663121 230464656 651312844 692651846 711388730 958453835 966470807 767239441 961899384 69788520 793325497 876337778 906188128 797534 237389435 233843538 283980084 778013114 800199302 700766691 736634906 111974215 188618773 739634264 981283918 227340407 798076764 752840590 787193611 962192355 992313920 527249902 894646098 379578635 933847087 815813643 931876165 917946155 988555282 567342193 844423682 857821739 864101565 457392165 767365446 787262275 939591206 918907157 964248061 416204541 770145499 151588003 887303691 595838335 879090409 369056625 589067975 369089002 512385034 530033734 644496219 942747532 954357097 56236815 822025970 418285250 644446248 854314999 863956766 213783847 814872975 637317243 719020314 881334247 977306782 527174700 763799141 174194121 250084018 231308365 235653388 233094097 621181570 669846756 935097774 380251637 819029202 718851864 803230685 406874690 777602000 99706363 269110733 45115272 296189769 237140993 546977468 900647161 935757273 158504106 443334913 586940870 713765804 868304484 942284223 9571695 729096262 490138052 905487879 700727924 818074288 291243711 618244142 852894877 939526989 408658894 705846648 771667439 955095694 353016645 598770512 980691486 983899331 971859267 978525095 949858344 958592843 959804497 986332614 593814859 744719059 648602535 810573195 143493235 364719553 590559062 909585689 666085020 748092781 23808462 958641388 979741898 993332247 243267827 909114178 65449633 240260994 42850854 705902229 41777805 346744444 218889209 383886333 847347517 861415002 930912641 993143277 650898594 910564897 251265767 920069075 228868073 509523521 81160501 177703944 719881759 722704580 597340462 893576858 719296374 984721304 782989283 938341010 891600529 909457778 362245568 534819775 866425611 921577725 694765520 875206913 412093107 603390829 561127342 855837438 402915350 930267105 265790770 878399679 691448501 777847001 964648269 976439350 148899467 535680389 191491850 352785084 135381944 987347048 77072459 762575063 237884316 649056294 214088593 299060339 474649174 740335689 877517555 973219877 539940084 834536925 329315191 958422728 81191450 771932697 956492835 968752794 55931775 520575555 998644253 998976818 961557781 968963860 82665805 542319775 406935897 784753683 269729610 277444213 184590557 511596642 211612518 521317534 623306233 954117158 184532194 195008874 107665515 446120220 310905530 544420462 962048222 965650050 872970917 935842654 813498788 974376911 745753220 809861776 845416875 964466175 138858094 169838892 375429018 753108817 108159230 241754044 525590214 960653670 514396193 737809344 283790543 993115771 237823772 924992074 915400529 990843854 731838093 844197229 796693143 817951417 744613067 784835312 643337871 869050841 779323296 893062627 314461975 513678375 894186305 970563010 776613579 842626522 970413558 979164397 92618326 268137261 411793491 773714359 107831221 753453463 17555108 244855489 576711111 715360526 747020905 807878330 238840691 386965783 105214587 442876031 288840042 679394376 499773514 637730567 166578083 806782551 584178291 647411623 771176811 959582075 38309683 677940046 487699598 729076867 773274067 996470020 860542051 922774315 960333387 999369242 894404402 902304413 909087976 948345400 561848240 652990547 911722851 916230015 952222204 992461803 559217306 862593545 270659836 380691319 263313145 960241479 883447144 926815988 43472222 460297072 379365564 479342637 199185482 857865340 808865272 857663216 327479070 822919522 301756114 982424968 851509882 936289396 581977210 917240642 640072592 732715263 979763266 997682830 263089683 332810832 325611734 763210061 474774794 677187873 795407652 997314659 94375330 761153418 880161426 949143070 491298129 965951766 5398782 990866509 860424762 889453908 533986546 604767388 723886831 975633469 621544011 956338562 747855322 880847947 142566592 295004888 67523331 255919081 552911844 769486353 698633122 721925919 502421542 584022121 156153829 528447755 213640539 985676392 854497793 980844280 571297270 985787074 607957773 716735718 866007405 938122390 181577669 750245401 874209712 877262040 43123926 533202335 71463199 363312595 852901918 890772145 774522119 910947787 306921514 318185630 978009157 987019123 182749015 919301970 216421596 590249650 322517742 605687500 511571686 894242882 999332414 999364384 832963403 873823601 617156896 958564638 229896726 881979282 339337818 965207394 760695253 992799749 340010828 671209618 93116827 731466128 485158268 662023406 393521714 457316954 163383475 503024740 510511564 927024263 684908578 960443636 396688416 771027588 662455598 801416246 640345240 717716881 972179042 975906307 280817681 541706363 524699038 678458438 121985817 724653554 967457903 978876751 152130734 861718866 134202759 938974229 832712631 994857907 707442483 836553978 70795575 580335947 502900295 736318582 238688074 498335767 289891078 942775568 692887982 788628259 84195276 571870132 840870697 869766935 271666105 642479116 329046578 682829711 542401026 618404842 234545102 252918659 487097657 705867344 638038915 753317549 214743463 262710175 34465051 818688989 392530242 919594000 461293692 824584840 533408362 876231206 488071750 764866668 747763933 865406307 859479069 962060744 457353955 883135656 734857068 746950453 695815748 850252468 212112023 506262835 807182130 932161927 263884708 630695822 891947884 938348581 79082300 452441283 276327021 880456302 593027521 874978414 113625819 914851360 847814253 890367719 319759257 808816743 189691499 748000727 702298488 860763263 94293196 384268168 630790821 770196127 404410950 996413876 164246703 827766097 274188450 400278668 257027614 536826244 720433513 987718156 947495554 996085456 907420578 967718254 317731681 844091446 348009560 517555475 887171100 901725471 21371721 614240651 669560666 815274069 770031200 884932385 104726253 783013341 803751591 908696947 691014336 907134641 444157173 823386735 322826292 330599957 259315891 965782642 857456595 910640452 1820654 94365707 919231143 950025231 584132088 852419757 361832701 496846559 220388018 682541312 748267515 945412940 154682827 747622000 585768126 863568282 899036268 992891444 65923668 414337510 101114312 996362986 724217546 927582828 21214692 410040698 66309065 259512807 297130381 324149008 974425584 998706742 835105687 921158963 416369421 854314196 155491395 933289574 741265017 972518710 706688332 868719310 895663537 999270305 608074641 680173830 92623223 198395510 247008826 348954887 350155998 566000409 967493381 992737895 264143483 490227290 178189923 656951960 950508230 968020093 995945545 997150460 764577746 823584294 635483974 837875050 477078231 516566070 145198242 477330303 594122737 653582200 790272185 914088253 422642922 969464427 499099017 725163366 388708009 863277798 672058555 861256882 524837926 609777057 45967965 456521411 354979479 926386065 863764978 958932444 541317828 944351618 906696330 920040354 673398067 784779208 677634506 911686906 314649697 647067982 694277913 717013534 868655414 932375932 254003409 694696335 235407371 400938872 881977379 883512926 170360759 997519973 425400539 575040412 101554292 714547770 378304427 478919886 986265622 997736457 288471799 426539117 354955833 406521365 692611356 803684861 49192789 244808707 762498574 837785686 338973181 793738657 285030828 989873189 857249714 879848192 195141031 611319722 222259001 910451555 501758636 990998415 428132653 951229727 534353909 752352337 16292934 725853885 876948809 894861227 432030123 567739279 369530688 648197810 676872300 792837036 963107452 989214480 729023954 898423891 110846826 581649047 5641236 75141300 547203647 902268595 25452062 499246003 267300972 830002480 458866305 500172802 194676326 904589252 407293198 459165569 377990922 849021982 950642999 986105507 320571170 550461140 643949358 804346287 913230061 974149254 616379717 647040940 854685222 861392785 393350480 823590267 150022181 407116065 985344898 986912531 226502884 974935141 971772928 976519656 818928072 979392708 888213751 955334040 954896234 975064212 883665091 930410685 992944908 997255551 580439844 791709378 658335714 868687724 762342173 988723675 917519537 929361213 117119910 741106564 965295887 982170497 41004452 371022671 156479547 233303073 611992443 633106067 35891556 475842093 256204448 270569743 761497339 960645245 497562828 969342799 509349291 966672331 358026057 419760291 435548935 900693567 903694982 986421799 927901265 955243697 514818496 961978406 174612613 889851973 794824213 945243245 717925027 812907345 327518208 867611807 269996938 331321530 276491084 478856359 10254104 729615250 88523379 956387471 621879242 769055120 740429152 802391324 165058952 663057062 396149101 889634036 889655851 988017510 906191941 959620915 135914699 236559680 273279162 871269668 532276270 863442221 116225158 728103281 230373852 730049841 398751584 475609455 833791891 934960881 523456466 861005260 280742109 356387184 497634410 829067640 819689967 990809105 17452046 346536054 195138686 388828009 413694433 496125451 981798884 987730093 549022900 678990221 682692004 782704791 564116166 792716728 638999991 670115525 766269565 782633182 597869508 862053693 31144444 72063488 169959862 533163584 577061411 708492577 141285445 396240847 875084099 908709646 454266088 717496921 693192851 702559688 492569123 709345407 296347642 573360828 413022606 589046022 644671344 830239138 295241669 791086105 646586102 912880870 440391305 896110407 558490576 677227988 820361018 991468014 291745533 797875961 230625094 282981355 684480460 799278384 294351452 677860236 956294484 993909192 987553664 994546841 768815864 923788289 803404083 919336910 101016867 527957998 156682206 509011179 521033430 705444346 656291910 936906181 799752834 819097481 668662604 768228633 357952400 884545504 684625529 788968001 830159446 840503879 243885658 306003967 561772172 855784602 101777429 142968853 226702868 294590170 639532255 937733401 631549931 817865389 401154980 752534274 483279391 689624028 242307598 980889325 537388830 909130445 982164339 992535862 884668927 985981558 89624244 224509547 805529420 857662587 528937937 565784234 243124230 414674674 185481591 974919115 791384616 889784116 583042760 977816122 791347116 878452688 303417984 308412641 376971857 687864364 434307549 973751932 478966506 651630456 842014425 899109888 304657596 694031537 238290059 576362747 760655733 931712159 726606898 808878892 626400603 690395638 97184143 824510499 765382299 943341060 628788870 804406356 496361212 542584376 738069154 859567548 819300339 849300350 582633290 832364138 628193092 692615666 383761045 609456359 9864070 543041609 736083050 884444499 50424577 821031573 10874794 604437791 791729538 956357400 515539854 725503912 470664604 764145825 245251156 783964924 722288910 785204337 677447301 834077840 402052472 629699113 457344351 935559349 4618407 570150872 3727890 112343526 400413545 983647547 870867086 952103744 89073195 720846250 580599211 943261472 321945511 466539293 993545927 996361476 343235483 665161921 965842705 973567229 80337012 542255030 674054758 827735662 191830667 507916147 953793649 987091431 346102425 510763312 888796165 918685038 354225679 608283936 712095301 948765151 425869167 600364030 448826268 474389062 445421040 601603527 471019715 923632034 353637189 998586087 319919840 377169536 745597140 839275258 797108712 992645188 767278239 946859849 76405218 373670086 299421558 402170427 455418459 477177418 36730926 735909342 502492242 773716490 383956776 815433666 297518493 673520761 67356841 435845644 974085734 974448278 980614987 994447842 130100395 594378254 532776746 968041542 225660654 521797481 418515024 520888043 626284677 780745945 579075077 864355652 695514770 800490172 872068277 984419411 813433100 828341498 887767732 975487636 540368963 691091114 149912318 233269867 429207071 907128911 226487139 277897075 355309877 569726433 935794893 973059201 452404585 711321893 149143389 692861673 404875511 997576285 605134890 692738945 440869647 797456773 975204413 982582491 768324395 876988557 556532424 781002338 657835290 671822046 601912658 964356311 725343046 992318048 532394528 880978955 255201694 399059424 68200127 645487514 489365643 775193050 463743709 560921383 862906608 863442753 669669227 907713704 741623847 913492710 861531252 938232330 870239062 912321238 126341608 244397388 442655326 454930305 186843297 960910346 173688391 631444432 633820101 912127671 340415514 609686544 58460876 899464343 790991353 907713341 731375881 946217039 715592653 908594729 127254474 198649102 689104617 797320745 16408225 940988732 678111141 740361201 184416679 611031956 576250146 842102129 390180761 723649334 231831626 990922031 678954102 708533171 793444709 972255841 229108574 734614271 340478202 870982676 147819601 427566357 595445087 671989106 983361134 992719550 294612189 439580394 842689308 955605575 408205149 722873387 686292158 705141980 859833297 985400743 889177658 914252995 152361733 841746247 67576384 355084679 882849345 955818299 630099168 897657722 227757422 690375161 242844396 703212473 804034765 900748436 50274512 200939369 663223877 716666808 790269040 892067388 975843915 976216681 736248960 910322974 587677059 947500967 432303965 901080732 340386783 415355414 16067649 738839035 705726847 935242132 86597579 388447337 686821013 796141471 290507348 319142854 190033083 896774936 294998186 418680930 803158650 941701264 777330373 974773055 316439060 651178548 147209082 954492015 772287966 869970692 507290836 916525125 424289189 625495130 245034241 682028804 100525070 193984005 28162945 51228529 675455962 990490237 923267855 952801384 326248679 701410656 209465688 525561658 810909085 944640827 413591053 852997800 162005062 853807516 558148297 661075918 597227796 771760192 815750148 965921008 291548186 400119924 848557605 848575540 636666818 910964558 891696994 940280408 170369702 399628378 606362206 842668247 951330345 979318845 519981260 801759297 964433968 998893440 921755287 983936335 610930639 947792916 743543574 845484702 48042338 403283982 139334517 923851786 843980537 854802806 137216061 579549476 584394053 655546839 117301386 759517330 226773215 619164474 913326812 921659615 303725736 570144305 251485278 848123358 519520881 650655141 465631346 559013230 39210130 397488731 6075095 426490057 632594528 653571007 372087780 610766737 370801410 538549521 292951573 709703661 198669239 793337993 780234322 835877705 803234583 993083041 257813219 767990338 703275945 778994274 489163266 542751210 876475296 968367420 930793652 930934236 732375107 811243840 239959126 852205952 191633785 850860528 125708963 567935496 31773960 901070968 122614247 447215201 338275099 779307236 440321032 853874235 718580383 988599506 447659297 662757633 875147573 894645726 627390472 768957029 721980356 749500704 918555074 979444546 327806831 888362435 499707899 692191909 548237691 693285725 266452877 770024778 408037357 700911748 352633919 831984404 563678416 965832263 737011603 892776947 232495868 721652503 533749218 537800838 760140039 972467095 391306649 804981554 915545520 955173618 48873025 686982155 428953574 738272170 208689188 697927133 913219511 978933469 864743131 963761310 607855950 661411518 677493386 734257576 429430785 847077649 641705728 915221584 874171927 891716407 629609937 872710155 207434887 320128141 930256751 957749318 578360410 976669768 472230369 661903356 281827457 915607567 966972686 979936273 646293594 812639250 283568675 529748312 397641083 754533718 231530072 997498173 905561558 977551783 117488427 753977526 532877798 533906181 215398756 527030949 196625667 644822328 235964764 376842430 515046179 654537057 506973921 939267366 953555084 962744794 947601943 986141212 96635982 740453964 165768878 945308719 928351146 965695356 200615695 369448847 655786099 733607249 768469784 997693920 148856592 649480730 845658854 967517818 95163 639777985 822876605 941892558 616408633 623520869 844346979 951742170 499534506 677123934 785986584 993282221 666309263 740867245 944123174 996537604 504243321 980249592 975032980 991361534 341733200 825753306 88157521 101012577 483210396 837596341 287488201 860068572 416594596 738022362 716374684 948931987 648864468 975442245 942415476 995845933 881694176 911654727 766822686 923255752 130527501 211952256 493442992 844897677 559960395 755360131 325488483 770135829 133925062 286535640 607415474 631523130 669014244 766435421 839253033 850452944 96336496 597501236 902769103 908969126 593592468 707761108 21300803 952993742 52855603 588761970 712066866 841793441 93279999 395743211 703838322 982191457 998613174 998756651 586006568 718504123 207857988 584385391 759759002 769271153 526986643 932385440 818862744 971600286 96124044 263845143 862359569 983722863 477595770 816689549 872047455 945441034 461837928 742450487 972954053 989326413 484246209 863971238 776618056 788975397 728176969 756514047 453405636 850636601 779895846 878622352 458321390 559757099 19607155 767936298 359137216 679411868 609545200 812065656 987127189 989148295 479218899 962434267 829871464 971361129 359981705 959409247 255467555 875625572 182420734 375604219 568106446 897607155 444255893 663842625 804710609 915877181 565603358 965953613 772002619 792942577 711054131 863894878 779344605 817049619 403611766 489477667 629467211 805518873 132044090 262151673 58900868 59001176 290581957 613294912 422279892 631627932 844226580 844462484 649242707 746019944 743342651 849410042 248899832 664867781 239972513 859495904 812781653 972644208 603254450 912648409 975026513 988985854 823156429 845168345 418003394 688275362 795419179 861545077 794642822 962370401 767364638 953837521 844614833 896171994 624476959 710424406 33928518 750014725 405359990 487538256 734165883 924309957 546675337 803887775 187556109 949464389 654356249 781348772 186858242 991999546 673522005 983303361 587044444 726064186 830541993 947700925 475119398 763095619 310216907 800727468 357623940 443057464 954007035 957097117 976669001 980790826 221358164 693487884 440526201 617642397 239955185 285740635 904877918 965746219 153748228 894652844 325287917 832728814 526918119 964687827 209093151 720357928 187334385 443887977 548361856 716076326 725601196 918881144 745450466 818969452 1818258 362454642 180399476 593485447 86706302 206581954 522169001 908483447 527959412 707633845 144439488 355534106 739887474 742019965 860166131 968412102 153464803 155826182 919006775 986961778 936792235 984124969 848126438 958493530 538131966 833934696 518734489 762972309 22686611 840271391 218780881 952599312 101082006 376902823 330589954 546698945 895859875 984304491 20785256 402283355 825331583 953082053 359649643 773665911 905418134 937515327 381772254 919569494 809450938 915324433 242606567 915519458 317136358 416023072 103079750 823571648 428577926 576814713 273355147 654471164 78878085 428984832 676366333 714083700 63028095 469529204 702328298 843313440 959706375 987055754 563594056 914343817 256620560 803217562 399346038 520735434 982248075 988902595 283590236 289036444 138786347 900153201 130254612 763072375 443540673 601735431 65248242 204374617 94816024 400836262 473716083 536730489 91241127 201185929 932696975 947330489 333306644 551009473 352932611 800935104 588374400 613195492 903201539 978523170 577971718 704602440 154861621 461483619 30218356 345306450 315437028 810889372 600928119 904059010 855362546 957618083 769806543 784235248 318747093 442175181 997222355 997679212 778986940 960192647 553821758 626284605 853392100 930299411 190825476 740343966 462321479 965268074 569946788 845704316 602030408 782240605 134682873 590278149 471182964 907225162 288227115 690155059 354785806 366946949 519657213 685062319 479195075 617839057 833771938 847706109 362490589 967479312 617517776 836100223 102207745 792092106 322602895 453403578 434559189 986762614 297296343 948914086 546798552 848766842 866578413 958319408 711146428 945856657 532174084 611186940 558415689 712308878 375475416 861167458 636837915 845017966 139212092 401044139 439226225 949828706 101003196 732165682 220758413 264828649 27404210 701756564 425977273 809384839 244917467 335681626 661941644 787399798 125258954 960677606 781332323 990110641 476550489 769639228 360308832 621271845 504730102 948428112 281697791 895826712 330256531 744421546 944835263 977466085 709577326 748904842 706972842 733151135 811358982 846664894 829394369 870039836 712852492 729699956 961585661 983833787 735101859 789773345 393293329 513970176 162801627 776381636 26247852 569552963 400022412 633981051 886237921 965543405 144275177 745697144 791630017 944115671 188684607 431749296 990175616 997336463 964248333 976041790 617675771 820183113 794176465 821789597 761560341 811981099 522774657 843043995 87266917 618761662 707144012 758157584 771898573 986217355 685185029 748629004 306443203 696314747 165614180 681627192 430169733 543509691 638710273 689544646 409049404 784658920 106751040 708407737 126351106 333786063 410399940 504578947 468049544 889354943 57713784 602663696 631762179 935991856 207664547 492969459 89061477 321276509 918714034 946712782 336319760 443082923 533897501 607307826 228680208 524536574 484401631 810885607 143534133 589106614 164789708 910812602 569198286 906085683 585321836 952374828 260663815 456217264 370585325 667456133 267355902 890981533 156433905 729521704 747351067 910821582 810925277 866320871 425696148 896126307 707454141 944092579 252258291 417657129 882937291 952076837 120626741 645037023 110467891 721361688 394724320 585275939 986132353 993375654 155217977 990463028 158976830 350287348 113697933 120523369 660830079 982938771 105209534 841210094 665360593 691673056 263511560 295768302 840528648 958295474 445496815 605555675 254291700 744232455 397108139 833406166 244632307 759989036 247948643 338493614 530117523 951248003 607659790 633922976 631123565 815260509 917487362 990743054 183169246 721869520 300364936 872915123 497382801 992905044 158827833 980201967 205480698 599888124 5554159 485693417 564769269 767601164 611407907 806905732 117476490 540434773 805591806 893396665 83707581 741985181 318644726 342836001 588075564 788136665 598252939 997357553 819114491 856463093 14214328 368663695 111069141 821353434 957403249 976365930 21206759 977626322 792430508 861585900 815716313 924178186 530038772 706653696 985102108 994873119 536533818 951484948 319582688 849936081 565749525 886801234 385042834 454817889 85119660 734772212 706430230 974388108 101535855 666848580 175587203 418681361 866508629 892741244 364347566 998315196 310616625 623378681 820072003 859633676 179509449 956500785 610565962 929548820 389181736 868409219 904518914 921555552 1721068 613734440 819871572 932971651 309378266 864473530 521905101 930170277 887586243 959218012 342821157 978654337 160731313 653572676 226867476 622457386 344273237 606921530 125468462 167355986 357511051 957160628 576007707 689821535 714834422 845549321 115063102 706171566 984381792 986305386 166236092 880354199 289075535 546360026 681403345 900977709 366876022 469933458 283757031 560654044 389177768 918314378 334556636 986695575 851310489 999370216 686089577 701402265 86234873 351525026 324808570 530320856 582781827 869491009 308784325 459677600 975548290 983682302 195989621 380641876 257439611 499443602 166720061 755336671 828349442 974085580 890954218 926882401 583461381 652990746 263891741 605343008 318060138 808349736 55385086 633349905 438318037 837924921 590556193 624675122 165378064 518491854 491975340 755430033 57466433 604921832 266640954 349837997 772938338 941417000 16631866 249365205 79795905 191053904 558376904 570833689 950698283 951082891 945988232 955249084 788546339 996731573 783776764 925143296 537158652 658152678 907562910 945095711 322022630 746118458 874756781 952175524 123110560 777978581 589186774 916011960 79154099 283544491 212961270 785382831 646342660 790857091 225322671 389715730 674357541 939133092 558683913 826784267 930670611 982908406 165435530 922298138 694085163 900051090 33159428 41863485 641594902 878393114 798011970 967987522 756225976 863857437 147409884 423192708 908880210 954523053 463071025 798608935 14654386 209847491 965882858 986448586 280413690 732320375 267246481 576672712 77946141 485498291 267310219 848288137 566512917 925494892 197011378 598633953 758481700 817970564 165386626 527105684 912789558 967923935 92025165 613833615 907140125 973641024 433356359 970955641 35701407 954788521 95133645 194366325 841276033 920422249 299612660 982861745 828279655 973927418 379397506 547335676 465856011 994550551 522229395 788844762 654315533 797454925 584945647 600552165 257290146 436569820 977279053 983130001 183990429 300642417 459245802 616156426 449237135 824183893 697948823 958471456 691237637 983657384 671204122 882695348 816946453 845825152 547805918 604493264 324076141 489783291 556799859 662919633 419344060 888751550 537081198 785381498 453848384 993242430 677991415 939415214 478818273 740011675 70953322 453052084 693918316 983140881 2645076 434370095 576192629 873897013 384487182 863096715 214368502 933924722 992073196 994886507 357856709 824620951 907519983 938515694 362374985 955184019 425355416 977874365 658905412 717185073 981877384 998348329 613131693 719608994 232055883 338494598 284948694 849250259 438808502 940376800 154899100 339308744 558429738 771592242 871015633 939718659 951972818 953094062 919934120 995493448 245208844 314118488 599641620 750895576 424672595 686229730 946588981 990582778 362817546 898240831 80217251 394348898 521487569 558191393 700156437 903576139 820681938 857543547 392459039 526704903 895727815 899646848 454757993 906363346 874953934 922621485 875869076 948324997 750478519 894916723 521220044 645969146 97073575 977513624 535561850 638178220 678258510 856205021 138846751 400503618 164805228 272506100 832047988 888764169 874210239 954763806 922253289 972356886 844989488 950399844 264611126 534865139 824431141 862884093 297375162 568909549 485237489 616692001 216934891 967128119 223839506 454960819 146338547 839656334 109449533 129447006 357813 58118912 963593977 987289268 333812399 883349531 798866919 834273104 809112607 822454464 878161067 896914762 724588577 732140253 958361303 984523269 658678920 887091680 323332093 705945522 828741772 834269351 759684784 969437367 579450120 765617749 829772142 954424667 439004262 735836066 840113642 882521612 999033979 999138478 537013992 858282838 29498189 968386428 844258482 930460696 516245604 824646302 553179832 837087818 793755999 876370036 18495556 159047131 791276061 929910553 99692806 941128859 787881677 902993675 985658474 989260180 690062599 712985188 30786963 821756121 628433 445557952 908968980 997087088 210216922 746946980 401585266 567655464 753617863 851195548 555529193 743162010 295845061 496621470 670798156 792482342 343351729 675667100 374284256 467593273 709485043 920487944 315149189 701865977 828375761 883328327 231572126 563208661 208139533 786400206 753275384 793478637 343849050 414265015 13392063 971842488 864444674 974529380 814358616 949610054 822074851 934991415 897678830 961592006 573698863 960335142 588645662 876361393 621809276 967531183 738123970 792896634 993868377 998444702 97012486 911281900 148116580 469362084 363088972 645821449 243388881 917706519 622004639 850071046 60064883 334219918 381411764 965730130 901868151 943690509 119323059 442600103 24184140 371583192 273780185 448411043 880381885 932975874 599638923 678820731 592667299 833499159 433048767 650778585 5394483 570953991 343820344 975261575 924646748 964192159 700989276 807970566 540608177 718332395 938546880 949617999 610415473 661331752 951134130 964069716 644747266 710144833 764767981 840795680 497069956 792056693 96297844 405460125 418075301 722224041 295638993 767715035 836455104 996548954 23535315 34202923 744628705 886265330 938350559 973199119 102078742 791379109 595336421 940185902 686378060 771669169 960348230 964519900 423425867 480665327 524839369 828915704 725642269 943299567 980835960 986232689 918482534 923125208 127654451 334258968 525950419 650840483 764334704 794964291 513895998 691183870 464335093 595561233 500196592 906281292 205270425 801888402 390848093 518328592 897735603 938506250 755619000 929346364 819321581 922968307 518024171 530304217 532445040 821184227 718628719 765850094 861782004 930868736 82702552 959446056 386018221 397270533 988437813 993954210 823589437 967322028 290941287 402443340 721091360 900554428 166112394 443847584 980358182 990809576 841631429 988073255 382429834 455437818 589231752 946932607 968207759 969245861 918702077 957369475 944127059 957120471 26627841 782773164 258087766 966309378 350208041 711293175 115729507 953367750 465961051 741105338 74552633 482622287 343205533 702272412 32668452 350900857 176177716 849924324 423325238 919356464 796273299 843506328 103340289 544298610 325967665 583940970 962039601 989728446 753327942 944797780 765610928 920522263 257125859 317059853 287046326 695693821 656703036 989775252 500731130 896018448 978683895 984878404 107594608 939633520 797864399 968568795 428967089 440881720 399540834 814071695 929317043 992187932 213109212 223061368 870488504 971933324 827175298 990352007 912768829 970061992 831803617 988524875 746212488 791565295 694173687 885426319 67575683 440316157 953270356 964056636 410214001 478987842 790271925 873422544 698221546 777898509 128284777 319991253 486924015 881543459 263641836 518233642 128921330 768047312 98224656 254547368 509652751 574269918 208206324 848806934 650650717 963328738 86540750 895640156 131750174 200251644 731420286 765131379 443817347 518095930 476711392 504329474 764441505 989641001 997242484 998658598 359023163 578025726 658014352 689686920 414930209 658707240 631614720 953162554 941550165 992701328 654811730 861604932 483484202 719614519 545811580 622970866 426593639 668520516 908185639 926744719 49858945 655316735 631051035 822180533 965470653 981785292 493674080 905397481 737184863 864089707 220617422 953404960 509590798 589165338 207908420 311804516 637594455 964845576 934138371 942399247 640637225 935745901 714190087 823838914 649155900 929763826 483792230 974584930 70686132 936857458 722989514 816177494 846916480 918284170 978093410 995456215 84181254 785334904 230535624 683536804 621942262 730105130 358818969 843562112 881233996 929741513 895602403 938680622 305158394 521087527 280537954 281654464 493161422 937828311 668157897 860295576 505007527 887699014 326824761 748988004 871896243 916698189 462236339 676926853 924492537 949342447 34657474 905787578 697210426 907015982 206775318 729253665 355637204 943041221 141563654 832523775 959434121 999030557 57834610 420012920 523283738 748564071 90213018 596355109 528823567 983779294 253214566 557636562 287864489 338965173 193510443 518144152 425591049 650625541 923154222 926418329 703851835 779175947 434369535 456825287 550824556 825554839 234082665 456341073 769542236 900805864 366552977 976856678 132309965 547260964 793551715 968518416 944758653 988171746 949290638 997889579 357120598 799177436 947285346 990472489 889296128 969752805 816194810 958723754 169095197 645333204 959845949 990303855 535367249 730921718 733410657 832370009 798889783 922754399 871814633 988764818 611539912 920954506 52637759 309977898 614778047 844609673 308611004 342476780 621973217 714556945 638876876 841082563 598163929 599117251 256929137 356030226 933592859 971225916 255211870 807545449 222319896 816350983 318461935 909303974 503404300 721147469 745982668 818182146 672559644 820593273 394178520 977543152 834885537 857393051 715188693 951120546 932866250 982199891 452254379 826939172 56426520 985401381 822762023 865051020 683861801 896596701 877458329 899240008 467902029 787692570 432134298 723917527 277817350 627730840 644472872 796473389 98861505 98927974 418608467 424959768 103183584 494909156 6176686 469067610 45859535 702353520 268773419 672890871 540862202 585099207 964908544 989618343 277836051 397936618 266715928 276760983 576933735 935643073 69616236 440470394 866965758 909823904 819788067 886558307 853503062 882542128 745633131 815213500 94095532 530310058 96895254 959441144 104610468 564410446 245712097 459196236 247690835 584553006 793432747 972484579 22536270 175856238 62746882 359421852 305159289 511900957 815626556 931435417 283026590 698366850 183377539 326911193 893952630 972515874 639731272 864958744 216575103 645281637 126183812 702515598 839216173 995532805 115589784 317408558 376037621 741544953 767951983 922466162 845608887 996401671 896598252 899197767 431281963 621269973 813697155 985646754 959392952 973176015 642634190 670884387 657586236 851495828 534157003 945057109 925106989 937120498 729662783 793478401 79484767 491481072 513671673 765638763 694380458 809454269 311754837 613402388 507673277 718613300 141284610 688979921 785079319 837192599 713589654 859165849 962268590 964764950 555039441 767418141 643493700 697174453 904742122 937989805 828077448 899777057 538937842 713876886 942514453 989096145 141839853 258901557 301794979 907710456 239446940 821566861 339123559 967688921 160500488 409688561 658135928 920229066 522412193 549523758 227463227 794564984 131253405 782180152 990604623 997804503 231188594 706588134 777771933 922842613 572646484 783054762 698028299 878709454 820620982 878537235 848989623 917116822 217828276 978327047 169914248 553955172 23587801 750345009 651094318 688638187 890874972 965717728 711084891 997348562 139950224 242814871 649641110 951686809 111542587 874664012 198264994 431280009 633363393 808403342 696015421 973071466 113893201 778386010 141029251 941265884 818853029 901839461 289186504 325571279 278339916 525075185 968387592 989013345 115939264 428875274 517991649 549563518 269686668 322378430 41021366 232674371 34403650 151347087 291768212 323271239 716589824 968187432 340317 84929374 628517375 697533425 810297820 948368245 717431740 880263024 789094948 919800596 374095562 852102629 475477898 603838788 52707902 101211688 22044014 913922295 953357149 975704379 711791760 910160413 354967567 793619190 227785707 369022284 226194130 673873511 42751811 470121959 681216198 880101069 154043860 786543184 237199919 793951712 826006208 977863172 472114401 754098964 961419043 981352241 967459358 990470013 273464394 924017663 477940417 984833688 402600597 487760438 867854216 973512641 379878037 442586383 857817621 973666328 445719810 756563057 860101347 913903435 545031388 916936851 890202768 944343802 534187664 570377554 940856713 993706025 438122134 683829153 642310430 734689339 534644072 681394521 772437242 820605283 244139229 646529716 197492746 365904896 215138738 782135816 85535259 733090414 775912788 974803973 911106433 960949193 453994300 498058072 10423770 119617615 887631877 944098485 979752826 987168922 511397569 971358905 776566967 939548413 108950569 483132310 666977829 999329382 811925205 903159468 439296025 630975303 672960612 909836001 820555115 892393001 476404617 655194314 76932298 541250885 936484654 990075045 91260984 496467827 357857242 576620761 665443979 932328446 257667749 365642876 473791102 565058178 457505110 835480972 637505423 937653338 386103762 966172046 46241668 472553020 854956200 986324002 987055024 998948302 308830375 506556132 395385578 842149865 688450744 781283686 276093638 482302145 300629357 695084038 61496343 749693650 127303103 269149723 562004378 616430779 176925792 882348145 16068717 686067671 257784727 286244719 553324559 904802554 586865748 718321626 295698984 725130528 950318036 960556142 300542276 362788592 979691322 993962016 52805973 925973249 758084089 933836912 719205494 753345484 799435865 844275512 898117420 981904600 467643686 523345514 444128814 579645819 656631813 935083421 592534235 615562576 346825830 734417207 750572883 773077398 139135106 991811001 450563795 580634991 958796271 979676863 932912522 973990701 609239555 765980329 682550721 699889512 732831830 764993596 235952107 551548490 229385865 281495828 630676483 692802366 951368479 963643573 920880603 930757432 221800383 909388667 875916569 896838380 528068194 537092889 814978942 884479613 698750587 892348401 279210785 963784682 718929625 955243574 718439993 996009023 564746560 722331019 264153056 485539015 72366083 769802248 645451164 753988306 899021661 985342267 859957602 971993515 945879116 960602390 330191308 674499061 861480376 872210562 682308696 889609342 431672113 704661718 566369139 877673673 140651066 318396270 690353216 912200874 688918694 938376481 847937266 952237268 359698740 974632112 634803795 844392558 513911264 547725242 40667337 152335416 101710767 472859536 208536738 272560751 665119355 852327096 171249161 646344435 179547822 621899843 972066671 991861029 139607745 650079564 854630893 876373815 128980455 353549459 883560178 914695663 382775431 476517850 833422425 840032960 757248805 994383636 310493164 402908846 217740019 800852335 937193106 949476730 946642977 994885343 186945404 951643991 58734932 616882769 697502109 906839564 154170275 352398738 623857903 670319666 890145690 982637025 112619928 481203428 468904866 507781781 570427185 849190677 792591343 802041447 37679348 135602174 878389378 961474427 734648225 812103687 721325573 793166289 521431318 861285592 674006251 757226652 586440649 734655464 645600588 688678907 64699954 113530081 958704176 981273571 329955030 870865772 441787232 626920074 126703251 784296612 915015068 980778150 365512418 624449666 367433744 813844324 178150509 339783715 84936683 894492791 330109454 476437233 760779683 903210222 267741490 980873257 383363509 849685753 448624529 850303864 757573524 944977311 112225921 570316179 880722252 960832704 18947336 37827910 857078876 987472130 558653573 907721458 56754579 85963283 505992594 565444924 655610791 770835778 252637325 518749839 549434770 903055030 176294181 860780235 305383430 932132845 244659205 271710897 949751853 962148474 576000383 834507813 513175347 647271072 563325525 963943995 721277322 984754434 983046359 994689617 58485878 122504241 866156231 930765721 250751711 884848599 231419080 858897085 168746649 639450141 592663976 631345356 996277568 997883518 226380097 690380232 640859292 955668901 276905905 795013580 27039968 191153884 416601611 665968227 167438058 330674227 442363010 759700996 235268741 301986258 78330168 638129004 146382664 433850904 520888918 692103714 64589792 162628927 642489370 721144033 260390487 694544956 547375104 864256273 44013718 565931406 284379189 613362973 971171231 976815934 564855848 915275532 237210335 244319350 605600059 771187844 758750561 795713861 54859160 297487497 594532797 637692043 953984410 977569430 506932131 703065154 475479800 662640544 183028122 216285872 984917822 989979045 134657801 532853042 891989781 936072030 602212624 782194441 462827355 623533010 65070343 700021445 398285454 895596060 249316099 500263599 13191821 193857930 827481779 973857551 811942857 856274831 637538133 975823777 9861794 815247357 533757011 540736624 319698144 567420769 913844857 997875102 215465 773772208 333933460 731893503 818427169 888494667 361141532 717691443 946843323 954862809 779119781 798820801 633496711 732520823 429330993 624685989 353735374 381357746 327041580 979130822 116570438 466785054 238691316 604123980 425706850 674651312 699305683 808910974 119086624 920214490 5698158 327383710 809166533 858887830 373113476 791005472 305881639 819593903 62901126 585111640 585804152 662835424 565692740 627440393 427575007 829990523 341347098 679980141 295880814 416254584 569402250 995780981 234045258 859962904 764414376 842123600 151740217 276618578 80523074 585804079 576651430 977855332 928272355 935243745 833738799 941596174 409529222 461407876 199615844 614956337 260063331 775318377 826091481 901062440 984037819 987448938 251141557 726931259 647345074 883242177 652904824 882898847 734162800 901896032 286459186 578650272 17123259 181360669 66246799 221513226 367749815 551429670 618021484 942468095 321014826 667814297 115002685 806816432 573762090 751975151 848990937 935105143 350675740 539206522 465837798 987798057 660151430 885769480 222698380 944137340 833016680 913342494 190883208 311776756 486667664 668910929 87226276 381435316 856133487 921057371 396909028 797618443 51083663 450339618 120796716 748092067 759735287 861380082 98316338 863546673 594198457 861990963 459801508 618394372 775381237 930570157 124338720 176339229 254541430 633128804 992255949 996660048 238815380 864931815 359831354 756146839 370004448 887678774 220529752 481913631 486840683 775846082 41559515 142282893 903122673 994027613 366648036 535486617 343452733 575386763 674078010 970582599 774717217 781243689 389013579 972978735 683153553 762186589 509712448 887921760 736014102 769285877 716908307 853562198 975193038 987643265 22569000 104515468 467368243 630384819 844439853 907925216 261181737 973207542 21223775 352792353 517509291 620575679 318214642 538915150 346243152 455955779 196542232 797111089 425725780 605626724 914173790 932648403 797431467 870662519 585668857 656124238 645502170 947078008 881502916 978229656 73635801 183779942 407281325 670685592 703992735 903427369 664204160 861189888 586868847 994448550 532229722 656949666 954575240 979435602 576532309 720183958 812192528 863471503 261012251 347915992 457634409 497637850 426793286 435979369 929242683 931049984 229405266 295775063 526905386 791029597 721463779 819907688 638633178 997106789 613661680 957591640 208607976 550421585 1913026 930404444 365855514 796582305 702046733 784594808 936902902 947391036 699794257 821862215 664901538 981335565 511868411 691886619 211646043 330480994 36371758 246655416 19014947 644915187 354117567 513919904 21460772 651194892 554591566 849292935 603483327 667459358 527897025 650811675 847088961 874616960 378431164 687173839 926739324 984484366 19732411 719519128 298608599 739586054 313791500 716201152 694616967 774533343 76377695 855899186 270304421 391796885 134979093 361057717 603991610 694305197 381969082 911052884 64195545 761235767 4733582 581732288 465463115 737501286 21842327 959971519 271855912 630039286 178741350 295641738 574825271 819763671 424317427 949574046 110959216 158560336 256808480 752974444 13359541 174446754 58824958 139795531 21928197 242609966 946308797 995950612 120106868 448286226 576462266 783812450 70771434 805806892 978224368 996418546 56579763 943852071 727212519 790451143 438450320 586494041 198079974 520217960 887444674 907935269 83814293 284843489 669175257 700657918 777862835 920917113 48951068 591590092 403530191 659224405 331271801 672546442 598705725 951508383 351755652 359660445 816423117 827652258 41435555 663266559 774008039 986570570 496785245 521897343 785421385 901891646 665184414 685482567 658579204 829390456 493186475 700073180 127040341 618371838 741703923 859736844 486550510 804150845 210800382 910957264 935254573 958374450 910741801 966167383 311262347 375483801 734659148 861403673 57753875 771897630 481181333 832015072 255291811 608753384 412165310 412939857 577992088 632567662 788383524 877227289 137903072 648022297 995312674 995723121 838000020 990022038 454634306 605682414 630720979 928936373 932107887 963660407 733680804 745819769 327874129 532488531 110957067 765199045 134319587 995462568 194714838 687137832 21115334 747120165 243273485 552244223 745335382 925829232 421130407 466662204 23807678 393694848 870941573 939406307 642388301 708744067 516030081 738323901 608775467 808613598 291066994 785421126 385452585 390288080 114069407 513280971 862830173 938196829 351556204 770587652 253017802 459182698 355432086 744359296 378981639 515148203 5272493 819836390 684246990 833977690 293309043 299565418 517887569 742856275 282977354 604720209 686967168 959372405 600984943 813900197 568587585 856093073 201003925 235707091 272820385 535904489 182294941 654108244 20806076 680787367 298004632 428177299 53412904 797217621 382980633 601187641 883470265 938375435 985841870 998780210 130055504 478405403 901215791 989776702 528217693 797831643 976947662 984357469 420618550 445786127 888271257 950416416 503853825 644188341 259790269 438595424 388213393 746124756 721803265 889546873 437247625 782706649 818380655 828977074 955126643 957171855 266729198 890414854 452148424 737336719 411483636 763917252 699388853 886554343 669497302 966467929 267181082 474226329 829508799 934660255 748115992 981526227 845323791 846403865 264651441 678345193 326615211 602551731 236355669 861234037 636342204 910294343 130122334 969864248 883592306 904741137 776106661 785819412 543153380 991020815 777152194 973746987 99839656 496090278 878658287 975198207 389567205 887582592 252483757 973355429 271094840 621771278 567631868 854951618 639693470 983385695 351098678 759014054 186429455 988601838 287739285 789584540 155361056 689017005 297835590 742992869 640420975 661980804 69409196 437369037 72998269 131541974 19925922 60331697 484651327 599923641 7014088 865839057 594138245 797924757 554375060 666893304 780844698 953691388 740570239 980997229 505587410 689681597 405096457 885379194 266365311 491283336 7526399 363050594 746894340 827765091 497932719 579826155 220393852 519782454 361364881 572223951 158172435 772760583 751052093 909581852 839122568 951787031 311575980 363635602 691473255 846557712 794582497 933018438 758142220 965452571 891969293 947356468 839570401 885353163 925822154 996812726 141974259 317224395 392269089 916940563 606808758 958854932 562765839 887228099 205912962 933943151 848094735 851250118 363675496 628626890 429707827 710166199 699159260 852207504 198411081 383622867 47618470 710730920 622667778 880536783 170763950 601261027 642541030 978620070 288847093 326839134 211348399 765664068 286184544 564481340 95086623 600561653 850309456 931797280 505266101 627618925 943482381 960901926 971964858 982789923 345917211 853103357 5080074 447102143 512968197 936252172 131356930 952088930 719746274 955139613 754463477 809631472 556768420 822054413 963511488 987436961 442383413 534660582 730886845 979269020 804897259 949434100 31918448 790761812 843031639 881679859 190322326 389375788 693442164 914954080 567311339 711176568 581686684 626709856 97363604 142090761 885512790 976023869 640271144 732474607 325304375 644482316 177735641 749059408 957953996 993599496 38345937 233670302 939874082 958080194 355940250 954703387 957380903 967009624 556982039 771765584 465192600 699091178 830788978 846994026 181749145 222522268 727226278 970218702 172347602 175736541 73354195 533040140 695317053 865826120 527440865 880100383 221875522 970693964 132950767 660339698 23838443 994250126 762448294 962241398 176255431 351942718 587607254 880451149 373984404 495573786 263964597 419818458 158893096 573395554 204298726 588217810 294566240 427020442 455612849 892191682 284385898 383989169 572648691 585313356 823921745 957629723 580284375 882202468 352957137 778775449 414601813 591601574 740574978 964334789 979795332 994083045 855431647 961437007 943929541 996618675 610787668 802072179 695908411 971647654 272649072 388099968 871437260 890450114 485811276 489386268 898914117 970294874 801099040 964235386 445094607 737845901 850947505 867688588 50773830 352502616 490930152 750411768 289690395 579234987 789896802 815707610 137971500 175595718 286022181 292437028 665056306 902571542 154904418 211475713 115891087 177884472 95528221 168652115 488758367 507280630 90784969 832371409 516423641 811340140 808407804 888123693 604396851 673751752 391931705 439433166 461134087 759274446 825667517 900703783 582140843 950706504 356211698 709196277 991696561 998769295 221195789 377552789 845067781 851859820 498923092 629926035 393429994 692621753 874935953 931836524 73748504 275254175 716117956 886807360 939005505 962062407 387183574 700994303 570360763 990848986 195236394 498788035 226194764 977428545 649489941 851597383 866500840 912431195 42231049 970612217 587651553 677219372 358359525 458766631 609486681 915422503 380201437 424960950 489865419 569425114 818762343 909730495 874169246 988972979 893095528 995216542 197692130 381026915 266401713 989297668 592446972 976512416 14322127 364862693 328462009 878934362 82584724 428886611 169772512 469590576 513388388 662185253 511342840 520977059 205164629 815106691 37523612 555713912 691466819 884157267 968177751 969453977 179732249 458425992 144153758 278342251 249257249 732364860 66739626 897621245 242344538 317162264 400597813 539370268 495782417 528176642 453491662 659947035 196598133 305136643 72460563 163104053 500735255 781328310 611857794 734004071 253372471 674061627 331752372 707879959 853989555 878024330 503246250 671704011 105196372 471327633 329636289 952283922 556972987 808076076 695241946 760807000 527529221 954475676 796968347 831047650 903693659 903743693 424103425 767209242 973450558 980068775 770907514 827873212 180972548 228830066 95397941 771862224 131992753 505113478 942266592 997596985 951284950 975080352 995958753 997677003 835193962 846602999 996726144 997788444 599442377 765064860 270609129 805998220 247144375 343521123 500624696 553487577 509512785 865412341 287239744 427009227 999344191 999373298 170942958 216889169 1067020 642800070 64394791 113518597 503368108 517340516 27130080 937673777 78362223 407374207 853309441 882317350 438392688 667568168 213124611 262748141 413600987 832788615 85920050 349436696 55944018 562558305 503869372 967419382 73018327 598570931 585806704 846892812 124657761 639996084 379677729 392678620 788261545 915675204 272010387 310382471 726895214 888130140 795095568 818163181 595400478 712602305 710599051 905545591 143207985 609788397 936050000 936232979 618874000 667238457 220223488 313125307 581354843 922602943 389119195 872471185 987414231 998666215 796587584 834807200 181093631 826994236 348443391 365208151 168834524 970598926 928320501 934637545 992806114 997133346 576481450 849972469 680626931 956152567 3982018 69963967 379493517 912274284 909858878 925668168 698570074 786562208 998477150 998683119 705380046 987671623 96848238 653774798 10181548 341831958 2107966 851016123 512485281 583990470 379606436 622470886 828694466 914125120 454837089 492021314 557701858 637779498 345858143 377484537 869304470 911578927 159912011 895337144 358829421 659870021 46993949 685725597 761410593 946540855 500204772 554810054 967243102 969260237 685843607 974458139 758126234 866464040 21626099 823599586 431790806 608014663 807998967 960663505 356325356 362235789 102040030 881787070 607309949 804296058 934825921 960626137 876657338 967989402 443764547 593491841 516751909 635992355 332183737 563103092 463328478 739200799 629994933 796575348 849293239 909288223 420909350 543150068 631321986 661412916 948028187 983839146 292406065 658920346 302876004 690165945 656850173 910748266 226106970 812177332 761462020 761508840 596102136 824756817 975859691 997687842 520183035 984285944 937208227 992332888 527831091 528173300 36822055 165075144 20250369 830853929 518036548 521785243 137031987 860840893 966307162 979380201 637728420 733373288 659741342 827301834 491603945 896826991 291861415 450918117 200419407 667546860 471280470 640433606 151801617 337299681 408180807 421063004 982299061 992041165 355880084 998210584 226400376 879109454 780755737 862957875 675868719 920315025 549013057 651551401 236338647 786028004 624633535 801827985 867956754 898019676 673820722 772875095 128393940 747268056 794651615 961229884 703024887 984607892 556184937 793789952 941853951 969289550 358360835 616356808 808540528 886260789 334765093 775251259 77769093 296832562 65511644 692306130 246881657 426501681 18246993 121718999 427687241 767644186 879225298 924136418 939987502 970524841 111721433 960442974 663083929 846247539 850929610 938919685 170724724 890695539 127223500 897656957 125039347 711971216 532471561 869450955 79419756 219767788 402674927 985292340 806499553 974950974 272223940 751719040 853287269 871306100 971367419 998001348 427104073 734755599 773134544 863288870 442195749 704245348 739663835 955084115 180635814 952635236 448902926 680144476 659615108 960002262 413364490 660508012 281996915 769766592 555221470 671820483 679853112 955308968 681799135 959985622 373098579 883573511 626174936 659376818 937354318 943997323 917944214 975181811 318060190 743801784 691280990 801507811 609008608 893403724 628672193 690755488 235012559 961950417 106690969 135460565 402968477 966856777 242878103 639385458 416174850 656056728 145514630 299501048 163153871 961435836 854742643 956992417 515866729 942285166 280335547 972233093 490810850 645299333 695400266 737055885 559803415 691592833 34425256 522724556 399199230 585070182 508423703 556869269 332395476 880884840 352600396 956568980 32891690 985986586 83637395 443632506 848087576 971326650 265926338 359724691 229282275 297590605 834099332 955225872 614264188 830557313 732587143 833492549 818184171 998294139 128452562 418035906 557504470 688567274 775423883 975406706 203152400 781440003 111760316 958701196 219617128 548666875 314230027 922690968 271247131 935870978 620321230 975240383 56477728 955707642 792426838 943416193 595455678 755281019 654211234 679429505 735227273 875603991 293849909 796352830 556283657 952667499 496747343 814230154 784528130 912736359 540191465 975651650 937653033 943496959 464655419 602086888 594442620 714536725 523562387 747193683 460357958 939917398 657908554 658847624 559216546 579627060 637676113 757592806 602843979 669669978 96903856 109145710 117159995 964058802 407775059 501962540 253028212 283435161 947116043 961143352 769208630 997985316 219662989 599448584 687276117 733107109 951197521 961367031 204304132 557377405 288719185 646843458 399791354 466320644 487473182 574369779 753149402 919515831 524420422 772671521 891811836 905568161 296057704 990445348 313464147 493035869 352438755 987728655 386467970 752742544 498416176 999106962 2382904 121729190 966668790 980841998 949216746 954932167 475269526 720058801 165585194 540623017 329407993 853129025 816520097 937108121 470553385 847611633 49541572 565973641 933038107 977089437 751999928 866713189 279368729 306055645 337519213 801633061 666002712 811913477 678714117 999376301 718822378 873448509 524936096 603256316 259100290 448688277 294613102 516466913 75719901 791643926 666520719 888485181 103386951 851884714 584914557 755377484 208157053 475648430 872917384 978028022 43716753 922282284 536568955 838002647 601966217 876329280 266336895 749707812 91765046 174832294 214761874 740925478 150343473 795245912 401419711 520478985 667993554 707303959 586689624 912612850 128814879 749241127 532796244 815754070 252846492 595326572 369041400 681912941 634254263 776147903 978878916 996504946 181840472 333452637 751080975 764794825 163297355 930214785 748006741 846356107 373580812 478063099 275573828 301373456 747824294 917771904 506773809 965398426 178948713 541130284 830822567 966729458 161500536 324642450 87469957 575798561 223135783 879862908 978275421 996760274 561396945 659080953 248618986 815037492 728204960 993557090 914161408 989129001 963452330 986321859 674667673 887828193 316905979 408504528 532567135 809887512 315107665 963169045 735211468 821813012 63762914 821341840 142400273 646035223 867725153 955250396 65447080 552983920 642397131 708742503 150005054 862816427 443378977 452484194 716934957 968357052 717503265 919796359 845873464 917969944 915460808 959665592 576928920 684499807 267430451 399479773 174252646 304193418 3002658 843150025 785390961 845297104 623680620 971313130 508809874 603670866 729155298 867324747 877331246 979623172 440762816 632118963 698061348 774788953 943943925 973785488 707648463 972913295 154214680 299513751 278486005 356319295 76666764 84576483 944538686 993321827 422615976 584438990 751518762 965555523 212982676 831180912 562686347 570401177 204190740 731940740 231677932 408318645 911074496 982697192 363838706 689281142 142884788 944017905 201699961 374027495 768301754 918882344 230546019 928513410 115905661 130867435 605098872 800765848 171054546 562953004 485285341 898036342 310785082 793157624 51033564 286369835 131215761 415569960 283767797 314126898 598926193 614003282 90024279 337005893 732056773 775661801 553594613 731905166 366698704 614094202 311310303 382519807 684419817 825761396 642445089 784261779 68809040 688364598 397373153 994546512 981291127 993572165 706376118 728144038 383531480 534959554 765461276 964155230 351408446 818660396 283363689 505603916 537897757 880715868 446817255 985661722 877237067 971071982 633692298 817455553 610192761 936978425 318133829 900040721 826472624 989876389 709292624 772989077 441506763 586058802 918767255 923011181 507881057 798456149 591650341 955128454 808940890 910979594 387914909 607379188 407062640 918281482 857433614 996737942 806448186 875536695 86116462 254716573 28676456 513954165 108875429 922828185 573940566 757862124 658154151 844721588 629521914 831153899 63594932 147889471 456962236 797395403 819637261 869508088 178296208 300726656 65780953 752632399 564390858 847801074 830558144 861879826 890288161 897562893 613347456 995594381 454660587 486628409 798559571 983215243 76480473 259389022 813013203 839384893 652550978 666195964 159467094 548024937 197877341 886009486 698236650 943261035 874909797 941910912 81283279 153799784 792887277 801695608 986601737 997639065 754634675 954506863 386149673 865409045 425907279 726891326 355152426 893779977 640109547 669831798 791358724 894688394 621448014 630080350 408215622 767925956 469572370 516482006 913731162 950484401 476032825 532524435 296236814 802414154 629001024 884649240 861088225 955900118 338514311 401879899 141409226 428948113 692871279 918201474 3107799 874858551 66078709 443640211 604850838 748722248 423529889 502607322 971799594 979423587 947255960 954798583 181000577 481464255 699731851 962146225 412214462 596611470 961558474 971165978 443092704 890299741 573812027 722389469 519052613 548978597 972902579 998927453 997221263 998459825 309092475 577712821 268949923 850201309 221012775 584470247 720305542 832009890 938033631 963290080 853584686 960352985 767730575 882185764 835171170 985894076 497757374 838464990 823828941 949777589 20021236 519559063 646124531 705534921 312533545 509098788 366904546 408647499 953670215 990423037 74891619 412326129 614709716 948434037 22162455 156395475 407779145 489527510 483148713 756276433 884821304 906905340 652486382 733081849 890477914 901530647 690364280 822607111 351925390 427013335 746729875 806787250 96522351 876085884 250928894 531875037 196292194 234491633 594933916 646652781 116782571 466751411 879088839 915526662 412683832 459276712 397791338 842737043 36746389 842024127 41498307 743535650 974687641 987065865 210716496 559145863 263244138 718564969 668819618 953187049 337405150 394015275 256153085 424415545 499825458 979568749 724288613 792505717 276464278 645469308 127936881 379848701 51657913 869607185 566865478 638171699 66725191 937747524 830352310 926078587 644969510 969946996 290564231 898219643 621526005 907727753 851665979 867362707 573094005 622233735 161840783 587438317 710653497 989766137 876105916 902844312 987462735 989926026 431693005 684047334 376652676 644937926 923221406 942912276 991650080 991838654 838467714 983281954 646002081 997559316 736259589 806368727 24546871 598807360 577025607 864645666 965572527 985398770 977932236 984886186 42238883 478912179 719780205 923837777 764719463 966577937 538541334 935209750 674425032 719731685 174308020 799061165 578086655 810865837 295740161 913799158 811245643 984700276 596231746 924461607 579358407 836602641 941844888 974983205 737462906 953933730 187155791 668124154 601852572 717835565 348816174 928493674 911993447 956543075 897315552 999359009 272313216 610931228 636329021 707386805 435417374 982661686 171514415 737009195 352101332 638397481 981055821 986563116 948457479 987598629 43826708 522809765 586027049 596366573 280838953 597737519 449099621 843698344 462589680 877648221 965317435 972899432 345277570 830748783 616041470 806665367 92657542 729049948 154718198 631704917 446217648 918989110 901151038 938617452 499948205 768557107 158728607 638136843 350390544 374106428 507182553 561223345 929666978 948003158 107325246 897068644 691434737 755897358 240297211 607644356 627119824 995167485 676897206 733542980 206714873 440439056 742163191 918576881 402140760 748438019 28994278 370996801 661403765 702902580 993991759 994103869 50563896 342769769 717605119 858292025 472162137 564561691 370390909 709322227 919477198 928748463 956856163 984324076 532290271 886035579 42042130 194673536 594313238 599365325 521818068 762932159 235264506 329593667 344089632 401809380 785246029 977607535 69458578 414797995 556567085 854606389 711882338 792353234 890161939 902259974 198101530 328258541 325845265 515890763 143112805 401888999 640614151 755719844 63519992 288936752 559272529 947086850 424020070 883136420 432117586 659057743 619664468 905517679 175510439 884058867 544005427 644064629 408606506 608389004 923436060 981844376 179764193 427709001 257955924 708177629 476013962 644457628 256666382 857283902 41051636 478931577 487119460 961176433 761521624 895025412 428023899 880276431 986757162 998137054 935730222 995911581 80399973 466027434 120028613 850664717 753511582 799986538 313677294 929338102 21810580 48336581 676742345 709164152 316850959 639202289 809502648 980896337 545809138 553358934 200982066 959038836 813048085 891980486 891466734 986108456 430238764 816010490 463361780 739898312 902454217 983044907 567455976 931776545 292489254 716823606 635598388 848225978 207651772 409768501 790754519 981761443 627326137 644584233 793612226 847440681 338954692 626037369 306769151 982347775 200112404 232420040 19221431 23999845 407093690 783152810 478131744 771265405 654566321 850600591 485274079 642795332 242378099 830329325 831093192 939986189 336406512 764702261 464621548 948449128 691175217 889321209 992198103 993822982 453108453 967144612 767264609 792450800 639417835 851023829 736660894 869141166 426992532 931495706 995327222 997527009 192572126 910645066 684635954 771279209 665134833 796857662 370458820 675026262 969768345 987401613 533742345 852490913 997404849 999210588 25930242 587632181 119783479 595888846 622310155 850362788 130148781 772439252 536612637 798038393 606608731 663717978 758907717 895586412 503672919 781032088 539653678 997711521 245622359 881036435 284525968 641788067 611928173 927212693 419003739 749590641 712222190 952317401 644661501 871954593 903666829 930388008 391094682 864390614 596729649 896576480 923167871 966799772 693588104 789818636 945899215 965327727 953589238 971246879 428866136 859319039 469506307 709621311 331299322 524574396 113647414 908340972 944450020 951863319 376384293 788913470 428401054 676169477 624202913 981780550 838346966 845536634 142613851 781464102 727417037 857272380 2267490 842585294 488605630 527471575 441825677 715007630 819063645 861587867 542307025 739281571 902413622 976446990 197339834 817232077 688731833 952966089 693445127 789872810 209456245 387409726 993222480 994678694 993976570 995003105 712887004 975805131 531962514 794335282 293996252 695863842 672452638 744465763 465987725 864422013 476774242 488038798 529091802 881429245 203721546 281205002 795719932 953072617 694898404 971526529 601865346 706837292 821527801 907518045 613482890 670088948 82904209 639949438 704955583 758916894 435052429 562993671 701955804 989388673 975820824 987236404 239459993 979410525 478042756 930670744 390450068 883831560 376406291 994693224 16213060 608295556 90980945 909899896 118155195 409017343 63878464 910959790 508920245 834399931 106876069 979305028 466678935 588286322 504990793 903031474 229915293 242864927 741484835 961731914 708003001 851401881 97665683 501000271 482938634 641231727 125606622 298931905 76121305 824720533 80344028 674786295 844363271 862701234 98035738 909680885 417589210 808441130 981220133 997624039 973510286 982405927 819446856 862688853 733027889 920324846 563507681 849684153 937826379 947113901 136374738 559791056 27598858 144824730 433995991 523646103 660865440 803880401 970823790 990652516 994206764 998695801 925737621 998352494 649807061 667900318 841667321 998855405 463938918 911034672 192269395 532659191 21165215 702352988 488110191 996883131 720673964 739329970 245579597 293446927 224861967 371270726 586814940 746889457 36878134 749160119 726211491 869680805 893348004 966901704 188487728 602881213 62874345 332428728 69400444 993470524 119072389 742262812 776704783 795680425 718017406 730787185 614389942 785986357 562679272 821477650 91035084 627687311 62389587 438378278 947111435 955797979 524119085 954827998 53975906 446302206 314166491 889530847 102027069 992533237 806353546 809559193 507403264 707440619 551817446 792402273 724305793 849336094 969192330 978478715 858742311 958859069 50890435 337861674 616504070 929795896 191543404 831128696 893107053 978466712 875125708 946928277 456956420 686615736 224597491 503693652 277920782 492742624 892749314 992379882 422719870 429270501 476765867 706442092 910304325 931198638 848710196 927142605 271340552 637747031 70777457 390272676 849610407 923935567 271297926 311197624 795459213 929516067 106785019 508422981 971091318 987120447 587799743 844287233 11883568 336108685 234712681 306378047 916136074 958606529 87223344 258218173 272253785 487982345 806884130 839554138 831739132 944695365 755579046 862971005 281174605 671206930 360953715 482369053 842472670 933429931 709256849 835922826 992591115 998572434 278443300 647516005 800391791 876066285 422022118 963729528 397909856 452579692 274645702 607050650 807327645 889725241 694151607 824092149 582962146 825884856 385399317 949922795 575577852 995998934 157202953 355379762 587979612 764831388 292084693 322683120 941625750 960432693 45780642 164178233 386838298 448812275 550956689 861729716 518465614 650680569 315773761 654017100 827988253 933727221 227309639 870688078 760313904 776864595 177617131 453601676 86382227 333402022 302474264 437395281 32256438 351624412 720606268 852250917 841427861 990145779 29369831 213111578 689734096 852669477 163327588 778964204 396583581 470237904 553120072 926512841 537695335 993972738 703709866 818726445 133736445 808030169 299473021 527223858 18176796 430006046 889360985 981962847 154204907 831708116 188006305 491818568 527796783 921938511 430009276 592747861 440001241 866332558 309381668 545495173 98033637 996718974 808358738 838329081 171798230 381703075 908372071 963969530 765851528 992282383 658715644 977312499 92995193 363066746 930603730 955425289 984207742 993568681 446345273 968267986 220572147 254907006 674626530 908363072 614473478 775395130 110180025 561404671 818632511 966939431 29893632 37754926 257529263 546183867 448472263 751860890 587350212 754339835 877617199 905253526 852638440 860563065 46187255 143924276 556154523 931907333 938540481 969425006 172504515 676095435 146990076 259865522 483780855 625708221 688525553 810643824 439560819 801891144 407013703 575762670 527006093 987646754 651509422 906537170 21687420 216702883 974113840 981147482 174912372 477070410 380017737 732857016 340329567 760269996 370892071 671071404 45147388 795351805 191100433 829503810 26846411 513742549 65370677 513712998 394359198 688202435 756754097 936623845 812759546 876938805 357537033 741762751 374668178 761304543 580132209 796003809 15152588 708388260 208829321 832458948 488015358 522423371 837345990 940327172 219858189 530424813 742248512 811036886 496349156 919811920 659719365 827401981 5583973 351940394 179964892 987194540 22035810 278610399 432761327 718106000 633407484 944032298 924293635 962716101 325397818 959183192 612246416 997681597 89025366 622035132 829758263 989628376 585357114 705775976 89141947 939762288 991990745 998506817 113821088 372240188 86226497 380334774 628290645 911196385 437129955 874709752 188265371 239377315 145783447 581649009 900562317 976092906 950676664 993539019 438000800 980248028 514143256 519322696 201474513 787873157 104618018 362419297 135107763 799057321 847659648 973048320 200879973 504826178 593425404 940398406 48468931 788810751 875165015 915153173 863543326 921981563 197219806 385902481 461210079 644647456 266867028 895984265 645344702 842978383 688579268 889641024 540103063 922497416 27487370 76135456 25199452 497690781 446618423 971557919 887623012 943632994 174609759 239644537 921102293 997812658 74404501 515350344 798023417 983144358 98110407 664486430 930009200 999386899 555463872 810053695 788360100 991266856 650337486 819639000 695576865 758087958 51945549 163497626 720697073 791563021 975113273 980897846 84844854 280768928 110300149 923853168 652165705 713124490 517451849 754186637 504832324 603456607 693435087 995686046 519984199 647749381 401549651 777314283 512499972 626672747 381300256 762775571 566378713 945055965 356579135 771296644 265870064 324763077 227524500 642190665 943394051 990089972 667016980 846206216 835581822 844659378 67721373 720762581 411227986 630657554 276924373 578847290 603939801 808603482 262334070 828583979 279965029 862182772 804626109 889714056 21716308 634495357 305498659 873976383 24989677 760932623 933444790 983174882 578003197 902717383 175242525 855387201 275612506 340068810 382448130 915115153 654747705 913870205 56829212 441864686 52977724 936769164 183675145 251838617 190583245 464366191 254186428 798739694 232609130 391060603 386261101 741171126 235476000 292455453 274400368 443315223 570849719 933084445 495058047 716644219 827804014 989780012 811028139 922162559 220174766 936242753 580090530 981510187 420031660 766397143 40326699 557075261 982944573 985531188 934630640 946644451 842475641 850609618 173746763 580242182 397959179 875881896 655862716 913070823 155611598 366864841 934958996 983813552 133492353 584680553 604460662 652486111 516444436 539570352 877222769 981511506 129262536 340709590 74636983 563229188 177846606 392146704 664791806 905641099 479502739 954745179 251895408 727022554 68233813 462129021 932327691 977017589 948419523 967233173 188855911 249487751 437223317 588026827 859241352 859623630 384577796 524578278 776837726 947150845 955621292 963492707 75421617 259951661 643352825 775472246 940899479 959464884 460018227 638012914 861763813 889724367 256732328 627457239 573184394 914841078 351055473 634086477 757443748 973265310 426861110 821689119 645821648 747114412 879541032 900637882 187355103 673899267 467706250 955245795 482322938 981521676 411531735 657415502 149892246 870658538 621997885 720532503 284940226 765318938 662945006 923601350 54978191 781868667 873441705 880735747 689381879 891203524 4605070 289866922 768727318 838476162 792923067 873937749 3708704 530025663 736354767 866443199 184271206 811703370 173313991 320160006 171908058 819017060 501452097 683600806 8321697 103538123 316025604 615010783 671985919 920857060 158239221 549218903 17234252 633499578 669681530 985319057 61887221 299086573 47527451 937818685 367698571 441914138 50880796 209280292 865667348 948434209 137946098 972254508 43033558 579095974 890334846 986487537 618856230 623472810 971224636 984167435 646613579 686325255 181133488 439632174 152752056 689793370 395601020 778434450 835178286 980681875 645078660 675806659 354928021 531272722 693815702 751364855 150266641 944470404 982416379 995074855 454934454 856994754 100054564 438944919 256394151 893374489 544306331 582554228 723440666 928080800 654898573 889609553 760907621 818303325 983967104 989156169 365922693 791606236 187415044 846049270 235129454 404899354 942949808 990356748 765562915 801906458 734598002 829790035 713926909 748370161 716058734 794233671 329236025 848346392 695852699 882450804 400660581 732805859 555109338 632221844 436913726 666887303 235921042 856384882 181904928 993546595 238007830 528986790 388652098 514800417 335676818 637905037 915706975 991832032 799946437 923030845 254874684 528241553 18243520 764857175 415026117 727532859 43058376 637439057 572200185 801068496 553822903 616159510 870839929 992217851 740560066 992759416 521500657 676363089 341708862 936546016 180985076 809482887 914598199 915836042 426238246 929309047 527620679 736830771 790477578 979424196 205446004 351963058 925864511 926650583 86516274 407973884 540309051 943381963 924665789 977185891 10246606 762254465 666884646 836024788 776667004 971154353 515314972 699520882 190824279 724865443 805217284 899457540 414390621 627498062 249578462 588019613 216237910 828040082 490168670 550126304 402824933 812597525 894666368 964454364 252073455 782632776 834655170 853896170 465907430 473043517 194178568 689428442 508499260 754066178 115248423 957584340 835462129 845308540 17070550 726669856 208251332 856681612 524849797 556960687 672668507 811224583 323651736 394941957 61704099 144439883 554167448 703650130 770778559 948623549 899342222 945181770 467390996 813306045 538301480 806472711 145452134 534890608 167346321 560535774 582124159 869905787 664271458 910469681 639097516 794564561 573297632 830001190 677222989 842899360 353485329 953434097 321430588 952629254 980022649 983088456 601064353 669140850 597492010 964674107 46300453 364727584 765690158 912589566 488775099 705969733 655089023 929702448 999269624 999274124 395195216 478276502 129385841 971133436 654903784 815106351 733476381 991332694 81664713 370428491 815332477 891870117 281846363 746944616 89899399 683115400 984667853 999307728 567678191 964121800 824936690 900611583 590711015 929913957 977919397 984933664 444805912 598057773 840195894 847847567 310128768 684250355 779737726 899036463 281874228 579450344 715998476 894544256 941376959 954797227 975631673 991177680 50343750 612108430 331187520 954501633 109193639 198587439 846936674 947668304 239039651 994493118 306432200 655022173 531641150 914181880 424111973 470575069 992205334 993110731 736831525 890382815 814636882 961586259 914398035 996830802 248825023 398269970 892273052 939418951 468554049 687826351 994175050 996060123 169736573 537540296 256073516 888831508 251802375 320720726 397673705 573072281 784293264 818940657 105763690 562178949 675462703 679009187 367032829 516326886 491558670 507369453 96596385 509135459 197163246 291457396 276206715 768277739 878211274 992347741 380721086 572562430 611706722 772830124 310544797 795305615 190131440 262620550 160736197 507532274 219373818 810755535 369408037 374472794 759170148 997582305 420688140 680354013 364032658 443131744 565179148 654442926 476558704 765911547 885880643 992344898 923872050 936800848 220268714 641055363 173122065 271429541 832737543 883688835 885321767 893643214 917391563 997317360 403466213 658184414 842848387 965406905 943020691 983314646 230378616 519266442 286136500 580054394 903142715 992234208 287254678 462863455 466225349 490606955 146841356 777588226 953103897 986943997 151570075 849831715 859890317 878460050 685794774 867487483 204712034 211124852 42480760 914712187 631888101 711159775 786799548 945129980 946164712 950858760 406433823 894283090 781157832 993824386 51222995 826789859 828498337 904107906 928265275 990643279 348073851 458480396 555848412 851621924 661152524 834137227 850332876 947248068 985600004 988671706 611562316 830741157 380573933 411971325 417170216 654819175 959818150 981924558 495338307 966665842 869237503 970841259 229857821 514103408 686889074 795470528 412133609 574188056 895030732 949288601 342430367 875645846 205526716 384291928 377883943 660612010 770425687 964466767 93279058 768531100 223154283 408291665 739126323 894933848 421326018 713139897 896643442 965364962 93332548 183575492 570915978 574912446 371693231 617062769 114552827 273396019 674728776 991343030 23897112 862747325 215014797 931528511 652308373 996225267 99087449 750730216 194635390 450279857 807489328 985041827 501075307 696272912 47858503 568500388 453573992 702765446 143523795 319315523 168692693 370237451 976545294 981168839 922075996 986485509 470124353 499812302 132253921 197669614 616479674 648004789 27908714 219879973 266654695 986609418 798025657 904196579 633036973 993403650 785505940 870146922 199743039 461609182 742262882 783110258 789112074 933673739 352271886 807246814 739340191 895205215 380562857 827793158 145210201 630633454 653491771 770445639 645400361 987892201 522824911 597024108 989281586 997745651 137372202 436973465 897118214 992847702 261505159 775374954 844725239 926114649 1630241 620869861 405689283 471022658 832719471 975976723 727843800 771925552 4814729 362781484 811850248 883469200 705611436 809140611 444617550 781496005 475868364 993723099 125722606 427305440 775284094 983734224 63517267 538370277 614496446 640893497 141262653 990503689 498520987 656181123 866654486 912651202 506646593 778557098 396068414 541914740 364611504 551803898 742626879 868403559 521616166 638384091 167542142 257800404 624127140 757916410 974322051 980095192 736929900 906899650 171266961 236600780 201081738 451349934 394933890 912063044 194071549 346104959 957417513 979018007 838965618 971601993 268008847 315264094 512770856 539734359 682046409 929845163 718633540 858773593 635362091 859635208 775148994 972712766 448299962 777722068 603155313 980328415 484942695 632592334 582957842 725361560 597127213 892485814 573754763 996485436 666496272 842434478 118960857 964403651 860986937 935877631 87039395 490458380 121197857 226014828 415282355 700267722 772059665 899672841 669812402 735027280 189438908 664602821 178962916 975707289 756962898 923294183 270231956 824823791 825317358 887238704 812653369 998400345 252037530 923315722 960683266 967803773 409828566 770706993 51930244 533825271 440436180 480528327 239794945 969337090 98509201 480238412 218457897 575825743 598473098 959517353 340756891 818251396 835032802 845100801 477282166 953542267 830987537 880072762 361195283 584536393 75329697 218473064 95449243 416414756 15109877 620868395 358102417 581458723 646073138 979577637 319151535 480347288 471649446 583920030 956303551 980072626 756792121 859300311 315773031 633789758 914701851 995804780 868351145 875181645 857731416 922097508 164151589 449674665 406967603 689902297 633964858 729280847 780364249 959169743 428682678 485889458 753973573 855835071 849976522 918424211 766439929 984734435 848143478 912027560 654839485 867492173 753659056 784556015 423264946 561556560 594253392 704224656 271203197 769125629 843406336 951452573 158623015 710809598 898648007 933380723 55029689 776765431 258122335 813411005 69005944 864683676 997789768 998114391 782253204 866168170 607859290 988125176 361506386 483650607 945674731 986626952 433902869 662670537 726524411 944549575 436705342 489976214 885389349 977662207 742380208 787971817 779361243 787859083 836120045 888321336 878586768 965887953 53474067 959085338 65738660 527851751 812574568 837566007 590363826 725322993 190046539 558729529 477167646 596451219 112667432 652507366 603166826 855158342 855873359 926014023 314194414 500503498 818933747 892012186 84997015 524793569 970458046 973387039 762612118 964163940 187449345 296001939 513184980 729359813 980349585 987528803 253771582 792222199 402515006 703632801 505551571 809092360 893516702 944096609 183373064 204695106 98295781 336746788 535710527 591058855 550830364 881043851 850405493 859123980 322497559 863662149 180553657 841518935 743643182 870819154 533746471 623103372 475795603 477765676 30572572 590128112 996791776 997029939 198123068 684402344 268557763 780597293 768606121 922419624 438878435 954871778 75770536 993207925 30507637 627008215 588025895 962608800 913909470 943905378 750853837 883103945 343467570 562545243 953161030 967285576 983439165 988695477 752388051 929726472 106589160 744066945 551548326 702733753 244746554 981463935 242944852 983361360 803632942 981053452 377470 36618086 295052829 538039557 349573960 860156821 990160371 990525901 333163264 486123261 799903934 937197326 375110663 808038568 94681889 533223561 632592912 996841771 680518997 682399302 16456576 445667594 898140214 943409493 482438991 623032172 106343546 524462677 392881371 618105913 637941004 985976067 971052525 990557185 541372367 804158777 809732486 941256343 161221215 239846035 638407847 706078408 847049416 933272617 72260663 529925162 620365525 955673162 340432739 706001208 546970239 558270287 319913696 965523278 802765792 806387135 258579096 724576603 888238246 957303022 426288688 881004733 897245677 972936603 447815740 613464318 419337891 942620397 846456960 974076970 467068058 800654571 918682257 945185739 203104202 751418930 632440903 968632676 814156702 823870675 717292345 935797934 788624643 902461996 368788403 669174728 586036649 825853197 793230900 810056192 899995982 943085802 397456112 966524112 113967847 125860165 243788961 675708710 959923479 992768037 78858404 779488812 462225785 912687505 311926494 530446420 51377453 442041623 202657465 627070188 425326168 602449177 375522049 976470526 277003451 794373705 14940005 513526056 419011950 667191807 317647220 779583505 472200160 814466700 723589382 939398807 792370477 969151929 609122622 850611911 982908930 992480658 87120462 937269476 608283669 896685673 136924752 906570131 772863225 866441950 489508291 586486436 692923567 776865359 888343886 905148818 317107965 754615437 351221929 423238428 371418457 912173771 91992542 157707654 317242663 455179025 923677612 994718833 798564337 869099037 273570198 673381394 248515673 912703771 262812184 497729713 605933099 909165384 208370992 838046670 994825785 999081282 65635969 844225859 253658478 767592325 731989067 990597171 504178258 767889288 543514717 566145979 477759203 616582612 494723546 510450042 26505151 791984657 381827818 490843402 547051395 911436386 325348101 922035932 951216577 961362809 696946090 983628136 163959282 563614855 725350007 921955871 888944629 938209348 653927338 787469138 738827343 982000319 827733213 932348603 732225414 918408516 190807394 472558417 776471592 809087130 501991616 912713118 425879271 839069612 882284263 986827307 683349033 973842279 291165726 984005764 769467345 793834333 453313335 915509034 365831642 367840572 705032127 861411265 18397856 888281036 564540896 812082841 830785966 958430818 947545630 973865005 508069357 886910084 269203034 743427089 223412187 949472192 954660101 978854918 146366558 188412604 548534604 757853211 325305391 710343023 638602444 679430643 575538675 834650701 92063205 196692851 693099176 944165263 320839566 445772897 619784503 960518071 268430244 525139663 425293896 468596396 899362844 942038073 534731890 650451455 58815611 489462886 950406373 975990942 60883383 704635140 610163997 964901545 115725439 259748472 548512904 579356791 83332706 785285671 659640148 748691296 899207410 972210081 290749332 298543623 385443345 402685417 961891499 963948133 274596057 326433910 559473177 715930927 333231349 859660903 918240784 943853919 434082534 756908733 833759741 921838364 576031681 992100635 333386271 644501404 772199986 920678054 999303840 999344068 452654151 992793652 910459529 933975689 3096727 427017832 493692860 517395126 154710854 614988192 982703202 985897019 494163978 644139081 91979886 202481693 418872924 533817735 315423676 406133217 270955839 579750685 372722613 418962124 965885035 982936297 808159251 836074885 66227129 98880507 554858911 582304481 420438607 547140478 680342830 996701692 326194029 447077489 543040966 625598015 547061291 856457230 528035665 562918926 703499859 801267866 602724093 810375491 539092570 584972819 907265491 920983344 869980978 902028746 826331804 835236940 994557627 996723048 530707402 856981726 709773952 746290055 580596185 603757819 864336411 979160699 93580155 546559312 912383025 979903939 363971170 444249201 382402509 930847809 698506224 798877215 233202748 831289334 700773651 972609748 536783370 578736186 920982601 987869351 12415952 854262629 140788062 215456293 780028373 802043776 196843818 388004463 492040053 555242147 104303948 562449137 627980588 999379614 260332999 476268931 944038334 948110778 72347029 552961875 279583412 720783032 701190919 862639217 867553394 886567080 493324573 629874066 910095020 961740881 755043516 903939880 831103093 931743557 889164461 895726078 787935995 814267980 863567094 998124444 746627979 751020523 275352410 399093392 123088354 573476347 349621836 463861036 574308704 722203309 37834856 692190269 113602554 716190425 673737616 729154457 876382590 916133720 94368241 882437193 224018134 716237772 818891613 834062852 164466056 579298416 20200418 639582160 314832175 916065286 332193980 706113688 729325755 839949900 329427540 490152748 113063174 928771400 181611185 483292002 827507514 927361376 205419248 934199326 863766482 935595820 768456772 967623411 340342117 507054374 89234731 734743342 479598041 707288143 440807562 477597200 284380245 307248141 766531827 847983199 448783813 735955537 839300554 893859256 526505284 720652226 914355880 960077545 452371400 644734873 29275255 388626494 441188017 702741157 835478310 840327619 115461359 565538966 943708404 990487112 731521914 943570753 192880286 631869877 556645779 605695892 680861590 956829232 125360015 624648050 321550135 324649382 934628588 994519499 534620271 559958133 340024850 861358240 560885631 791148607 479487287 582567235 665737986 892565635 105404056 203694271 652638171 976895773 494635323 704102486 836368581 983695252 646014730 647662650 897028103 917225788 639504068 668912320 916012764 930478056 805305637 813270673 210594644 868920579 370139470 868706565 651948853 774344041 803515476 984810546 798225950 926433180 669451916 996267417 501811767 673900047 776768008 991891224 644124219 962120108 9217088 868852979 305183247 836351052 658177964 664055331 786558205 878085519 244401986 837984713 167691662 297638534 798671647 959881584 544701896 976191509 970941555 980259944 242116133 309622778 739318939 904813757 602234360 720168628 424420030 826313644 544048245 727344503 499040095 796280926 319937414 656293560 82433974 718438849 238265875 601989110 239277239 491749218 890507618 941833335 524705320 535283176 685705814 707563505 213167978 719994345 861899837 913816400 58166354 604135316 225692887 323893833 712620816 853515989 757079561 929445329 365495910 459110525 598514636 960292088 816202374 816247979 360538861 542328058 177886679 271586990 426916050 455401239 178740478 511447456 116551091 400980158 343143712 951251842 758545703 929865559 453090560 938336145 346035653 640265466 398119518 592460472 919078949 998778340 458180438 728979668 266512960 944695282 746984273 770901133 739183509 748546467 45847513 245468891 617249758 838537217 914541659 947967879 438804614 775574590 384248103 937709056 504736399 898925145 874778169 992866405 6013157 675589617 132828173 836260059 427367757 609036075 853569510 993785852 243168704 315328474 533826438 764713022 719988766 756063476 883281460 894685719 168705544 989372855 228883312 582019204 890418849 932986122 625849641 835106891 6240764 310981976 643272439 909934532 880592944 958623337 772207314 934910485 799339494 964446581 380447130 973460841 281573685 391417542 989566758 998389662 132495765 769571943 991830166 995407557 604626665 741146214 908731243 955799881 317321198 618020052 349778701 499570144 557873999 807734077 236714680 891751321 301682775 458653386 330787935 560237933 429404874 479285397 970291545 977837164 276399349 387052017 631260528 690018973 932469553 996537419 449293171 502073815 434739655 673656753 616180923 757994726 37867154 353812272 117126374 924922608 628969350 772433306 74410482 270415857 263433343 557977154 453072389 777037104 805365701 902679201 743557628 968161961 783554125 977645476 995240800 998921642 46346101 984730533 474905496 625409458 760062161 967189144 448926437 972240518 541854372 863803679 625455935 961846390 915580128 955289534 917996220 928805252 951659377 952687905 574988343 618162025 597978399 948064777 263748062 896276458 259267861 968699553 278437980 708151788 29513058 850349778 540913 192973891 972723772 999106104 163271690 963719565 18335766 763215311 866075279 952710111 528764805 837970717 439293565 949395758 993085159 995198876 866731196 912980663 785295576 957620579 207093388 478000623 665333483 669732335 800655083 828948504 863298318 952691150 21650618 476818545 217295370 372492046 30942134 425847001 355030977 408283435 921705405 932424065 562315023 677568772 697833954 870710629 854172629 894436182 910027654 955784003 197044043 252389590 237227064 424244241 325113506 672721607 837488008 931274664 217564550 576678214 818398408 949601968 593238171 690038701 145714677 731292191 847168311 917127239 727080236 996004278 277577488 651743375 611714375 619707321 827090059 899646489 482689928 718344119 472942075 515259597 412049854 470457325 483786139 719318804 84330051 976782790 164976527 503606329 775246355 809047345 516466241 700048652 285341206 696229360 28202715 954168174 19217646 868652382 151865500 657339691 527400757 943435356 553002782 880603291 680228868 849632383 360244061 946270069 177872402 645869297 181007645 739543096 222691811 444839607 666249522 898894453 419002067 879157629 388564310 857631665 236530397 589919647 936928633 974946952 72436685 322114280 355591805 619356916 52286288 380979624 596330201 721107230 653038910 798588369 609274466 875530741 920714681 950154910 910022764 996411729 412415112 584421331 790465575 900138510 69936861 677792769 189927830 708844122 340705641 855657105 687643002 728610228 2695883 436826108 379068792 741040610 136871356 473147848 133740612 377026330 632050840 827964547 443264109 843571018 513418790 972416687 686442844 757330655 377205381 380325611 122426163 614502038 712086576 883128908 353384976 778585195 59387117 286426505 908326354 994962574 577830800 668506037 64245671 425496614 450446543 606597667 570150761 619274541 554426494 752778021 130326547 573112184 195808692 953696369 385348601 515753620 733557080 864840363 767622953 996097808 497810443 730049298 700466628 853544335 197541644 442609556 692320520 958030915 797983970 998892150 317295884 670984807 684020610 718781386 462429303 490082369 189307886 823262370 956538170 958477096 507944120 982041069 370733615 993148693 708051073 882656762 180532877 521918584 596920560 761217737 799663372 973780600 825217059 828117481 113346064 654934048 943999940 983565150 695084620 701822196 52439402 643885473 781630346 921209073 854082828 957860072 87793760 810446626 429329179 931484534 419964885 981081214 665700144 950844956 118781743 674413116 747193198 768197766 631280708 656065922 632630511 755098579 423718785 992520810 663808995 738828454 233917691 292460466 656173977 835333590 971573254 985096689 611499024 984677475 279214968 434190760 835769365 888849067 695879349 758764725 746863417 786134769 404585414 839181457 655880814 894610490 189283179 705606785 524548112 587961502 359968180 781623243 390553298 480005101 591382898 833027234 189637116 531993477 636647466 750444529 296622721 480742475 151953652 600745638 529828236 820763282 670831724 787274503 271698498 825730911 728093486 799540003 306726717 610190402 252145998 716303184 343317100 852548344 584370771 604457768 475420048 686217932 678562979 861465962 20266068 260123499 975284482 992465901 123302713 636461019 659210843 994394369 354264861 743536118 959497174 974809623 715481357 973666632 665637578 900213925 37893158 60929475 28608314 503231727 984480150 986037624 128505477 225694183 631967217 801332310 638180603 901390349 936099285 942457297 131109004 864784714 28457118 923293952 716962955 974289358 485917797 602704469 95636034 730259125 878438281 980180942 410459340 584205889 524218652 961297636 348739476 711065839 61761599 602522984 71064429 276243369 430476892 896760319 189309030 661386818 611809527 737669132 735643845 954689923 694221089 985059825 610809569 628196259 842291812 921433986 273210959 643089950 382422820 460822926 444388765 518101081 878641877 977774644 161413549 734530416 141709328 691354215 922928039 949816650 775330202 865430105 469300534 834760590 980634926 984787613 171837820 540018289 190890283 397068086 972916114 975489759 516236629 953329262 277591035 560054728 52063178 480599623 147554988 654411505 18665028 121911968 467311397 582540203 895795389 920375809 239578745 667233739 110379424 591575705 218591397 597344245 827596426 988222590 579198972 991915521 180942789 521599687 91099876 460378646 577489249 682144838 605238875 713287093 756334583 779056057 883613897 914246282 560838093 727036269 994158201 994715774 318101557 918361663 469661257 971689129 198410153 746450714 915977238 949334085 893109751 996114733 721876729 795487998 858052962 873151475 861659068 947654582 569080656 623952709 624770775 759793322 241581721 472535479 907083996 931735945 448215737 616825399 140168414 361498356 967935948 979879419 716549741 788608028 913877040 976950290 687323119 881843915 470582869 931222735 543272560 719184326 700718110 848069985 303588141 941898073 155369705 608217969 932989367 975195745 228279332 297913123 827334736 827520526 31226547 176870843 546563122 599440299 837700630 965371762 431919920 992662920 383872825 857224938 350098266 616821454 536472749 643793983 598053459 954347507 164316232 850231090 340044587 827287516 649290045 793468930 563234706 599292815 100516103 589598049 506903789 540826772 600548213 753031200 825656333 858291711 655272539 801703563 126046713 387589246 18891401 479608659 116238564 643317752 678446550 931520279 137338166 328655064 734067817 758209131 788119400 968474871 776459771 812659376 20384877 27197356 290408535 632782861 53941529 698973313 976092496 996952256 41663164 535323972 295818054 811556556 885557681 934989083 39940792 960538096 615839387 730642295 607146287 717794451 469052070 756940185 727553540 893568152 635782906 818732302 300186563 328006749 893017637 938237804 805169774 814854644 395204654 700019068 576417644 953118846 238663435 856148594 438682923 450890126 900968576 908248506 946735913 953088337 998536909 999013372 424192365 729430312 627428534 660427542 665187747 679138738 294819256 843520725 168340857 226241168 474208943 599646895 60711509 522718823 253628038 524909382 990033999 990982461 222352744 885633650 640931444 901744142 703289899 980556916 591034703 653427474 901076913 960861409 164838852 585369512 936102788 975622470 482875278 734166583 593231363 994702452 771882230 922844235 678012527 772523593 254996570 398896887 260572414 320356868 728132109 856989857 249547100 439780722 783821905 972064762 576866652 734705941 431608174 935727834 785306231 838919572 631375915 669554374 177921880 188079820 959933720 981541708 395519756 824562289 165947816 849661360 237249510 821665605 812096019 816120381 873329732 928778954 848888619 966130740 68272040 115070193 512374498 660874349 677771391 708913323 971818926 980060303 774187098 878177929 272121015 295394282 665354547 792245338 678762261 965621547 309009492 730509879 839767628 854631014 270691379 688519026 669098970 928645488 657186891 760542017 869339005 974812638 502216393 861171274 389860221 413189756 668092171 784047090 349276474 595902516 831637615 890021740 182722536 615233248 565032303 641486078 608070697 658471063 400665036 940158805 446461191 831310648 892098692 971384139 642866164 812158520 721045942 885653359 807227867 937230538 618182799 910277101 754117250 876674053 937884888 950539457 633127364 807615747 604986392 787930160 841950682 977152390 256240667 900234193 118756618 671348768 954399687 963511680 769088980 794523624 831475880 952542186 391793011 482734628 482278417 570476008 921865550 971168242 922546120 943422525 597136719 678210044 153548110 704672428 593422297 651451968 746458292 882281153 42527086 387650331 371566364 595545414 747518327 834274772 967386326 979708648 268975721 820439065 60816790 755641907 125415586 289306011 825047528 998463708 30712522 565321063 459883302 712273293 367059887 426230795 653480138 754351147 933644186 950270797 848851918 943330344 282894605 939191491 876955921 929442557 590038581 865229937 813300517 958550088 693189779 797114020 580073737 742304430 708566732 906441053 668071227 851239500 326015203 383715875 588607080 895179533 92683695 490503799 151698273 831712368 443814551 792513288 406553845 698089368 502254333 722444556 505739611 608657968 977205084 977549850 391913271 779379310 943181856 997891449 893984385 952006590 787631988 941695120 947234043 952862877 961526479 991186057 522181463 584413866 671633846 723289192 197295960 461593089 895141181 966450268 506962757 912662677 398098833 574927533 182681267 704265277 834867619 840982013 519399484 559303970 246873852 976797224 516698701 934055431 303949703 336689819 781445593 976290815 792850976 957426295 531660861 721236125 350287094 898645205 530869952 783833617 692879838 861798898 702456707 709567570 88476307 750687795 843828343 868657505 426655877 502231672 743378938 888602267 841775312 845620739 21879707 248252071 833242133 998954824 612597854 680322189 53795292 807260815 775409959 882289857 804894009 986059738 628317648 943125325 379475118 425735317 866548732 897255318 323452540 490955551 238852482 734794047 665012168 781653295 811864748 913653177 34138675 379226915 769988145 916636461 998341878 999019379 156624511 838701134 297581068 537188496 163333080 325890255 665138986 915034307 504834792 592133298 55459148 375139576 903982781 916927630 880936419 976796460 871372310 961565209 834449748 888692233 535187027 622726110 83243377 515976763 240344611 731819027 99587189 390050523 461770182 686959793 839179166 985018412 768918990 786695196 806013 933876975 512791829 800772772 151823029 939094757 211932272 470269264 338118461 354031134 54563309 257742223 502933877 797976744 414990728 792932573 995861081 997470465 716699340 854497896 545929667 940932107 699150179 764667374 181613033 742836998 766938151 858903444 57299021 143580382 662296125 759918259 892639858 963194134 104285886 903646833 316035534 722340952 391610584 590348969 403770467 988061319 464832198 742085270 846312989 848111055 160087947 646915598 84347049 96551720 966058634 968172729 107050542 225629086 769315334 825512966 506438234 628867415 783808147 853193013 490953230 967806698 95464766 869760356 991270699 997781520 924355774 993640123 398689695 899867619 458143130 821961563 305512130 471608957 113281953 239191529 328962488 427284020 554665149 996469538 19719579 977278743 977960516 992283855 260489224 974092838 583936803 712607666 146243492 703776224 240749129 596597579 837671905 907032813 519997778 848491815 221395385 735679299 453687158 820993003 510497899 927839177 137760082 759798278 462428506 849068951 892725039 974315464 44637119 215125253 677207798 903341245 296412701 864998636 721594646 774615435 227362195 261645288 477236772 975897089 157985110 666100992 215059865 217250699 572540609 985157692 831286515 945298751 361630323 616366733 156502968 431940110 565470463 728236703 395791322 952061110 452726722 850975616 573065087 990082885 774137026 876209299 135244793 477204977 956710468 959333095 818450392 915481665 273680931 511438312 595558227 886494805 208773896 681736919 139657305 328521520 25628963 830125511 358696141 446011163 71622412 535003317 719728998 879167431 636117342 996575463 105155782 747536081 204905827 262991947 759014210 772045925 82131314 668952253 193014630 630307758 58668716 94447766 869083771 893394928 921989083 925453818 717951138 753356401 874679146 877493516 437591727 711590101 486201761 648959805 20188178 833642100 29918970 438510804 680882305 748567571 118351425 350821300 213758649 935331778 529190661 929213231 550377441 755173538 519810508 590762195 62897513 725178747 89824117 881939050 33095446 156576179 196081393 426563766 173844748 932858720 106680907 322391267 393851533 774457183 23478720 395769000 926668516 985478693 222264612 588008118 504139179 698194145 450424682 454903614 356803280 596148098 331359465 927558536 684222895 963108835 236192277 313596948 780424274 960826679 376799573 811245000 885601869 888596125 543380029 846091856 788379262 983382894 43581796 352332749 986562244 992827470 633344608 752910803 304300150 764969906 508685406 763774748 103501898 573344415 638550449 795919751 170121053 829077580 617155406 645925756 763253100 960142841 405910677 409823618 30060359 708861908 743709158 912658804 329807129 831086857 863416864 868606791 361100671 977640774 193980076 507275931 892494616 923396367 185305633 786832039 867767921 958704402 840873269 869302067 13047510 260264210 732578849 877473316 752941737 802751518 115014363 438011351 904337708 995395264 401461317 494324128 352120356 869603437 303498167 870421496 615767054 915879340 355759354 788001670 949028002 971932847 16408099 968597828 847640932 940626297 235901219 827768985 775130421 903781020 748377277 888712109 501372258 660582942 201231396 889496756 871574777 913577655 903427340 957200340 169176282 591872576 46917326 62526829 390503397 550228563 590749721 779638929 306645603 669669692 647781794 710245364 773338837 852888641 763586811 927433064 451514684 532452641 327291099 673734258 678569440 746265590 242632646 272837741 462616019 582312193 520749356 697189245 135240960 481840234 180276625 609658110 142848079 469555074 445215807 607900840 704587058 929180716 642575475 774520790 328925211 539532980 378836310 594713683 893911576 994894748 685321884 785543724 221810750 619497597 939823991 973081803 33739804 376467970 920203224 925962490 663570091 711623412 136437000 293936768 452397749 963314302 889097457 953868404 686449979 827678821 536468127 616905172 69354165 699491082 691139131 875481458 877133473 995709456 584482855 822874008 122736742 545262322 708724141 845817091 284892729 320830720 810906712 990342510 797285098 884925632 315616873 967722498 267787064 802999512 627579545 769184349 549476466 549549639 442929387 483389142 746488433 957134489 740290740 909228019 767217516 897561437 8771869 464646319 902846643 910614172 122673328 436022709 376600939 785665408 2776460 261261354 428402553 925160219 10157658 681933028 390057254 526510179 452135617 565111944 370034919 680909176 465588359 896931534 402311254 464325949 841620944 965386898 668736398 886610143 252015187 698546307 803948730 940376776 870635589 897708619 793504366 950681021 137095306 990150867 546697630 974227891 688797978 784088340 387182204 551151416 470775070 666545719 896150061 928304382 138169979 209574718 867064675 874078448 822170076 830617611 145777293 164103992 421673254 452472585 641789316 865289350 700373719 866450199 344018940 582992011 371946452 750302068 968948992 989296462 692968995 890143885 528617508 569845428 679174757 801084878 701625617 859862109 587372223 617155160 576939758 670497762 943971506 954548748 143236525 620486378 424371332 809153315 31446296 640426724 883074428 895098136 859996260 991843312 290650253 771954438 718914140 997068298 444466549 975793988 305451585 884522488 517440040 571244067 705903030 906152000 881992609 889383991 480095930 531646391 880732108 944796216 998897387 999182627 499169769 575692992 210980740 702750758 747511545 750221015 650338271 865449860 681097688 798976633 554557148 568555332 819206795 972490723 224096977 322017519 799766143 984633989 887021667 962392085 639235078 956998179 275358380 952907147 680437427 837878921 214169130 601854993 40186005 406604953 845526077 934996478 310014144 402319583 235872429 610125609 1317513 576901836 946757216 963028681 573252453 708742336 300740170 538668555 574638216 733791093 677397741 823825726 961721685 971150270 852991018 860259587 260957673 835147720 624349091 644390333 933326889 944593466 732124289 977610832 78877800 211371610 444607757 820322303 3223726 784734631 922808133 985811499 740096282 945637540 125278851 989364466 898163098 980004529 922480082 980763882 889309355 994221213 818456971 995654249 902276216 970526922 169764795 301356042 257600479 385272587 291265067 387797602 755244419 825699863 818842574 957666816 109374351 704123659 389804399 826270456 284446266 652885742 136571620 144201886 236829228 935391212 146855497 612474661 172923740 237005126 680865551 726607535 804330278 946479384 70485999 227852959 412170480 808093595 933916013 976212871 385490124 594354166 118689158 210512588 883731064 949553183 401426022 846926323 502188004 836870562 148274098 378368060 198834495 724940325 165270569 990346538 981788398 983930387 16298315 916351944 209154534 824876652 849668037 989241223 785536493 986186251 773276063 820124041 236468690 366311837 750292143 757671462 142361416 426005084 136580362 446311635 116105432 764204306 410628865 780464065 963658858 968105564 981561909 982501566 242772655 557155057 221616884 646402787 699618753 892958344 471829806 978999955 754502304 858690812 424542766 896709559 93799049 568139450 71798745 575252836 54770432 737749067 810684339 862484812 836186035 964811974 87587773 813655105 222699035 509294239 260438126 689198627 916752128 940626922 416821822 575549149 966350222 970573922 523656976 665123150 514044374 764212560 352175573 489410364 866568052 921703757 8443380 309707726 106244884 953199033 982904748 994112448 706869009 835363909 551524078 972142187 646323487 692144019 962465453 977196546 365582659 435591605 691229329 935760471 164273192 723156394 717570962 926339454 987648864 991007090 39881208 323104644 662806721 798199712 538345653 639465780 629954862 677213246 949014350 965068922 859929466 972458461 219624276 246294060 100350431 747785758 930832153 972981744 822011847 920929851 242305988 378802112 804876886 809097281 618694627 762149325 945574406 982687189 757130712 933682766 21933777 46349413 816981092 972868643 508513095 592883921 89170344 884312917 298476071 423205211 870187385 881985591 403138570 490930075 75865849 568183231 205198126 936103470 321661398 480187266 754410237 989959290 244146062 491600350 987957760 998771520 406148513 941273878 959513209 970180474 322940271 471143890 378312545 948963106 570135748 843180533 300443570 615778996 80935376 988300287 200312971 702981239 673662882 677447570 123897028 977926586 582583473 662160373 958155576 990901833 766770293 934994123 638034228 669144002 326641058 729701095 11168685 983396990 916994420 929275433 988164378 988899014 807015704 882088698 85241716 284211993 90685050 647744150 531583593 781547277 165639449 836919048 814606404 903027004 864014303 974404523 525261669 542127370 288900698 479029223 128229890 684023578 678249541 705275251 165117539 203247892 884799237 969946857 917583412 940065526 835665698 910595017 199713873 308512993 193285251 921532472 847564453 987527172 406339803 906250411 191278546 415360069 712402160 827170797 506941660 685754659 536855321 856286650 689375683 923930291 136363909 821581589 816528484 869985848 590520108 731280934 79192400 320328209 99408205 354348584 249858500 282288247 686074235 849082048 797866641 937754707 659470831 880801441 116835314 902251508 820842222 834730333 790478265 984274566 578186489 896007379 216018917 501582208 2244669 171071420 485080359 738992947 96407835 133408308 767798414 921324049 909275023 985001444 409542157 528004091 209058329 526300757 988226805 997699632 115376747 869542165 855024117 883792889 319709366 711881957 355254171 675307851 851064935 936970102 249162726 949836954 190550555 656147630 490689368 979281619 116242419 190308587 50291967 946362209 813443632 883391983 406835285 570551284 398057666 517183055 662711168 672854856 603243515 972534821 107307778 137924698 524369154 851671446 285836932 357408467 503738958 806062042 871828407 961975243 781216236 867654323 459069330 598640381 608331591 630118829 643218556 792159993 438180967 940769867 216060028 777557487 352714071 676117069 758863920 768572479 588245001 728383661 279817396 337829563 468353132 841437652 950165891 964105186 19379442 421645553 684537710 854723969 192265287 632161207 407363691 447896558 914872192 995416427 223365772 371656280 595442686 704557178 553502399 573091066 511741657 740279812 382944436 413029763 85180993 509345633 962287181 992371553 55607684 318289272 395818613 584712438 351193843 867648032 753298261 783641467 90146314 475560458 930852144 932125727 34484377 697997753 15690842 144391309 189655564 450826151 353089500 700098071 77790912 324579820 302490018 731874305 19692285 44066552 717206719 731723166 375343174 410832037 480376953 495429992 570206704 706405007 101635439 647406467 654361894 657424888 585385026 995662037 565779443 692249985 451084273 600722145 351089750 591530142 247964389 919461317 755163857 876207400 428014025 877948331 435447485 740439364 436443735 736740495 191346884 914303391 864095475 987566817 748097619 789010438 123032052 644724099 647444635 794862753 734099181 987529551 498732060 977331672 720879643 854643342 721859979 929552807 983801353 992057748 486921104 746797706 820323537 848580383 241276618 564182808 451410356 945304217 946925451 996162047 41055046 290187546 600910523 954795224 502139270 891582899 884387960 963100874 844690101 969052626 781305709 787300933 341931811 449792039 798055525 967984439 195809917 828659352 139417949 997435585 997165928 998367795 56289932 365632990 727273223 835175552 89700998 874047654 597877214 683687939 399376461 606164241 699721382 895305306 384336992 667221023 144965612 383553849 931731328 952154562 794005839 904609569 730611630 870138737 373146624 445633293 791757966 803238598 734408864 909838431 932245787 939400715 258281693 954359300 148718910 823023585 989155024 997536682 32200232 942336397 459658293 508705009 478707866 772898968 780614737 846717341 314167474 541183370 667368086 992797617 740601696 742635814 874078436 925001171 318081915 944730833 313153987 453803832 950437127 975845534 488108947 797932402 465020528 664080303 39589676 861333138 256996237 450840694 300834930 304300521 113416398 322961690 23466706 572208105 695870886 764430828 462052334 624852671 97905009 631715583 502938761 974528026 304210418 839790406 396057397 983404114 392200357 418463007 220060241 512444937 561465663 881314508 66209964 132952570 840774182 913739768 40399521 254455348 332172512 446639391 725458209 967760313 301442098 401554528 339640779 971752787 738408033 917880660 941557236 989572559 730332572 920431138 708131128 750832694 154939655 338845482 565128880 970644264 504716010 594584191 288539830 435301308 394898811 546789444 449178548 613757086 929673465 983089083 16266472 85887021 44485154 171048549 644529077 953513903 122906562 617934035 70949938 882340593 941664613 995291106 431900864 792012458 70866793 724110751 670890436 858190953 151411585 937648147 407792001 567196722 612278239 636794431 105474668 135253967 305878133 603529459 469731119 513887219 649441314 902560277 752155604 837161221 738111466 830963613 844971019 868410100 1788579 51583550 596015552 871420664 932279413 934896398 637619106 741073670 8582074 359700905 120220106 278701113 337300490 520800435 21890382 777166717 851348174 976288546 27814745 611300593 811029028 908656285 289473323 754196125 487065611 842491928 599084456 603384465 523334720 790125896 496016278 578165122 403272563 791184116 983869355 993375520 611040181 846237811 295273231 565648241 168407901 582483331 521389508 691091466 188282083 722766397 763774535 950858661 490231553 668371421 294771739 455970094 748085480 791873816 939780636 954112503 62690739 260803300 540193666 913019799 626157899 650546697 915960264 925890496 472112316 594894592 56476281 896550271 354214301 974538600 71887332 317596169 592903942 861084511 174550434 852208120 266532151 603678014 641039232 650205984 240224079 690977211 989040913 993800263 342512220 415882979 758543661 875624244 171300744 504967996 897521722 949044321 261487964 466635151 747946127 929943995 370299825 577331979 490397955 981609592 153245411 732745592 360804585 435326198 981624292 994475896 567890462 703087233 267904665 836968646 738003382 974695729 394306640 651116124 440780486 993776188 627439228 904625730 234181246 961068877 125497915 382942642 432371647 875635526 116056023 678262229 467116249 676295883 820537363 944343246 446828771 998845416 348350796 548881053 493665636 748965066 282749403 615826492 570499326 795717131 988604832 997463182 307969746 660696444 904375213 989562340 373545754 845849753 451010547 807030965 253196525 744386319 110191847 425952634 274834370 325307962 69251981 906697906 30662988 61127221 468962694 632793592 633753298 849572760 89387658 422648675 855527463 856124360 914211846 930164231 177647462 683487704 632154226 687902376 766217967 769170519 150714847 719451328 873132216 935402576 789226046 874064916 889887303 950641791 740937502 773329000 446195706 945053208 433442306 666343493 368633871 574912504 444516754 851736966 212553736 230716577 748886733 783476703 209301803 834779794 623707565 786908200 770566763 840431985 644416391 880219627 586782195 685682073 421752668 794592878 776018961 780086933 804963502 814371313 322469012 724865065 811983692 888932877 113899953 471335908 440643198 736039920 501752826 633667658 482729435 970292366 195183749 840384386 533551471 928105197 701726747 809074543 820305930 908286031 88751174 859674406 462043536 929173091 344836208 888231449 317872021 682270255 863578253 991835178 271664447 650181010 65678844 510603838 234667746 364466664 219347243 758486983 701325992 969138267 233882795 818637834 240410519 589771373 624439465 669490309 431986642 715172123 224320725 406744464 308881633 993040189 368499105 524751044 701557852 936912904 556833426 753874493 144328997 433999895 863129552 913006443 871029569 898873933 228738513 281337425 917488157 987994823 780028985 941779747 660882677 790713490 365312234 858343065 960167328 965392574 586635583 692922171 516035653 692527954 675669846 677549653 269586931 919914541 284057330 487963462 61911526 338984028 445939328 972236616 601215943 963459230 655594242 838708609 155801673 458394578 442267746 819184188 224192559 972096305 206500012 809226397 501498795 795740679 346739100 896296307 327215127 494923737 744648681 766562623 549463113 567698709 917061185 922517441 555957090 702925952 145546525 336692737 220852097 597054070 586310336 934104675 347742382 719703843 654035157 933203894 914287487 920620578 175417633 695350724 8623273 50693390 334188093 462596682 470537045 870856791 155515750 399863179 844042478 927299250 518171590 579169582 991018592 993388725 344930976 884578326 152659502 525958839 310332026 741114645 668178349 824071577 347518773 642166731 682691967 687396428 241875792 673670777 194661564 430715733 706236041 773013916 82174083 281758287 381485338 882655352 31707803 91267525 726676440 753486431 92693193 600513908 881394557 976369561 249852263 425986523 994532965 998649827 503638572 915180954 560695512 883306033 840966027 970447246 775968225 898157650 348564810 736365609 211779350 620790785 479271810 882530199 424213522 735183038 411739945 757175012 41644636 669124714 45457053 115886642 428559522 765365320 6395935 770772390 961472018 978563809 869977329 924211991 192663540 826188436 784920542 866424786 318159733 620822000 262313642 517224466 70168153 169053535 864921668 945088432 786123746 953440853 331701017 922516086 639256758 864817047 882691428 923509428 912917435 959371186 459504523 864958462 361385992 498303049 76011127 585763447 350246213 955113017 586014483 765472846 199524106 944322426 782896542 887087776 41368379 407013510 408353237 519010094 372046585 438721464 366209590 466835302 953467377 987170353 552220896 623984610 868127570 946606017 273329056 424456480 671556448 774398631 952136206 955648620 466257573 943665413 661323779 818454169 140027327 622504962 129933887 361966409 353072658 389766674 971798775 994379064 772216428 874067144 224579835 502716125 912509096 925228222 948902830 993484657 775824796 780027610 805208575 965942340 968343551 996414371 516596645 689716669 523456050 627377087 993166899 993666805 487169376 733805318 237549977 472603191 411522489 625463106 519607488 751520697 676100034 883089945 765740942 832993226 354312808 987784692 112894670 486653399 255455846 418073383 843521467 963008597 312120490 625259653 704216229 982190771 691979998 731370032 316813516 709827341 841518387 977135689 274839606 349080676 131943128 574155465 766524525 970488925 434276320 810733542 904579882 956709018 739971728 842183987 159587444 198645759 193833518 595910393 447702189 742483827 850779004 915118250 790278210 814024809 898872420 945772639 370127927 553497378 393407035 826884481 609263359 949634012 963024812 992423597 239045462 577443019 70679415 522961795 279739867 975523098 688803246 853046922 712435866 805703693 686811778 734148756 988771063 993504688 999290369 999361791 101144057 392963657 570019359 953544096 686786814 924519274 327638521 773422248 343930842 503964373 585574661 936425101 484264143 556771100 679325612 785370628 660548687 938740579 700726754 745831959 522420530 750703063 724661198 833094725 638009156 680260683 258482573 610655241 553583870 861844271 573878009 686379695 967907256 974587318 85180217 910614707 260793314 490432421 196919130 488562288 197847281 602930725 751194508 848513651 478552925 631179986 542021586 563522272 429212576 510579376 385535406 643949614 161037172 377586054 715992693 873235982 865898667 941642435 768676032 782356426 455634268 642292536 414779089 601965137 737892540 798626161 579602315 805679529 450899049 906640014 865834434 868151062 465852338 611844352 618911600 843301315 54407423 71996087 171028577 825602838 937103050 996270935 733877147 763275841 208208327 843476388 713790511 935967061 466602850 838420003 556042173 736135119 288976234 868621961 948790141 957540464 59566390 81507117 340142995 344087632 4557813 805808845 827314759 936564938 688115867 915153533 272243358 352194774 757261790 877432261 5517770 954176063 35944580 733106137 85093849 164701449 846596381 920373616 65532989 141066016 864214621 870174353 955743648 975281728 634491189 850430444 405083787 736549376 878468387 881738207 134561539 849052354 113276882 627093096 847056327 931826159 668746493 914662029 267315449 607723083 2206666 78955288 635855065 722731467 36384869 947180928 864351698 970239578 991456019 995069717 379481154 677310065 586643891 925947460 297704860 314095375 425623797 490164584 979179546 993979556 531157916 905553752 579338722 810417408 591436956 791238546 842642943 982301354 694073196 749062467 942397885 968651295 61142179 895401045 525161863 901949576 165038375 453077549 231386616 915860737 481606972 634030669 714729798 875120715 228095690 502066774 332527776 380501442 863146711 919369202 242449836 684167673 139617235 396591817 196934179 782998033 942154871 956647258 898480427 920795479 831550483 971913009 764099994 768597710 721333673 890269829 399232306 561250130 543283088 910358034 29646510 77357977 90226314 171952900 730297176 813941341 309875763 826966621 507222836 589410372 580150266 887846094 752981401 785868046 636738866 858014674 236972681 972191882 687476530 942317047 530173974 665206666 295658465 664552590 878849119 989630346 309967873 739282473 916416317 991271460 775589837 995482828 648781055 651982939 331451764 946276776 208171484 628275655 728625204 984015930 728289306 899891833 916174537 920050838 322043570 621602092 929766721 969692868 278170375 457668676 259466702 644185863 66020718 722223669 428325856 760611965 781511090 929712422 737072274 917384188 936264521 960996843 323794528 789013641 608952730 942041741 529263114 928611875 100123495 539564540 525794121 627580746 803700882 977464936 39543826 964149287 70770184 316527316 235256157 363127628 659173177 729665751 753135669 822629758 315390090 812006899 838071817 903908951 260449362 456051106 88941723 651933230 667767529 847918069 500020407 905233083 939347054 965838523 191642939 580776617 98839967 995417914 251211223 919800005 359661514 810736966 749002593 972187383 251263848 776578463 333797109 710305500 553274123 828491339 750776856 905733952 496208137 819636922 714807263 954835317 592407889 713196780 795560629 953234851 883455162 977230528 909223164 920258348 273346870 671867576 646665629 705362656 606334438 777327628 844223667 884475739 839947952 967621991 941403149 966559127 353291921 500663683 901840518 959092042 842660371 919888229 730871391 951144588 476715119 633078570 805330742 856673211 144688812 446205004 30318292 923707712 704296790 923111694 806995642 967158874 896043540 972783142 145460165 996633070 301215414 903166605 802248798 957947757 602909467 931974460 340804252 929558976 521602956 945898958 752006923 841616787 719078209 722352771 469888006 975522862 43610975 882152384 537206418 814664275 299454239 626622515 501589602 736874385 887218729 993647736 277819559 557819437 222641964 589709607 541575555 724876988 586682809 708507623 37849869 235164212 186903502 527347578 701130508 922648956 733872216 882358804 857276312 946345888 181583225 903917889 836990853 954765184 960282349 967410518 262335792 365624136 410491376 747638029 532963792 789421894 361124614 823783794 762632990 868795935 277317677 466907101 843369413 876604746 973179597 979253658 462725780 478427398 587971534 867853639 339902286 492634510 934941020 962276611 75624623 209637910 2008056 318641668 325343687 331716693 75716534 809169270 129777820 972740335 303394149 838866829 585435496 746496016 572759169 982687314 304238469 401080762 75721441 213579182 456442350 568427418 7712075 363646425 56183604 625816511 607746051 843323209 201369177 580792356 234854273 659633282 750486507 764488320 939764516 981844365 583801540 710718172 509026927 961606258 964268040 993105401 916447006 981070399 571573794 916722004 769701654 829737490 784291839 813265703 897010439 972351555 876090439 974158695 785683936 892883559 28274699 631427910 597694996 927172637 977083128 985291005 387524509 820257776 611375918 797891172 830304417 901032999 952775770 958756465 565942595 575755532 558527270 993175950 782414980 894559844 423092690 598396034 780471509 995217483 285748563 426508145 559445465 749005339 653463227 826101592 472542392 541083084 607450855 762752964 951473566 993494975 585183713 852476494 729167404 926234383 741408372 845391944 678908488 805496756 964443567 969069891 717947783 723563183 644972378 977797013 442974956 866983346 97047573 739571498 213258008 354394209 392744898 942143854 190298245 978666581 988928118 997512009 536832339 620629284 74440543 500991432 629664714 649838505 239430056 406783269 347274540 966455427 133291668 734328508 27266518 95557140 432958690 715546734 8902386 694554038 210223093 317273531 14935715 297411205 159908010 805414776 520486233 693666198 915447602 963104147 604172022 814480252 618172246 696560014 822086483 958975564 127935453 454940494 88591999 449934392 582683074 584502461 213508967 546457307 326222486 488146712 936565569 941970660 8421109 772880894 133918501 747581632 823639464 826422937 723558833 950620478 563126212 807494761 608988637 625420132 284049863 661061424 764614282 914951650 348751992 521454007 375344196 426605904 886228870 972406044 813214345 996253652 50740481 377050440 566211440 749073791 237208003 760782389 912011079 946821704 799681236 860007275 875466428 982853390 86907511 170822002 518350311 753193817 302892179 791707607 248139574 893836777 661730895 723136956 167050546 394152137 935860196 990240285 904412562 925244742 299619022 358822918 515673818 537841950 906578434 974080424 745199094 996396459 943001562 948424886 742292020 989339209 677308037 713599465 910282386 960496544 643890050 693893046 728972905 870484106 105658860 165290597 513896724 566602669 138810666 318299350 532334091 704692942 203320090 949930990 698412377 992833091 89630308 142345883 608220784 951274710 226634150 447583606 428907107 756537893 97270300 506211092 268991135 738900007 410939172 416228462 353655833 368706092 118777471 215634387 513656546 862568913 684093844 751362294 135994320 283188011 735412703 982176246 889266181 956126329 823460425 954648722 751279271 988122107 749355712 847727075 523928307 798976071 677125082 984954380 224431095 799003355 546718073 875393589 795312248 889454961 450879560 844605982 898639830 964792263 759420060 803250186 521144296 926347175 665271729 794191039 591133048 815353912 842856985 913908376 235984068 558069181 533736826 987634748 2115264 256598388 162053374 771832008 295052829 349374578 919661926 932934840 927819564 933288539 524754019 782487865 872578912 941809322 744109646 934370136 748187534 899719924 798869647 961938700 86477997 517655869 449247188 748980097 532941626 937921790 851324892 898748778 449394558 858976203 154075855 835316278 23800539 909685325 857082781 858300367 705173127 948086254 808514480 858679086 846071616 930513238 717571672 769027170 576646948 698571264 328521454 945036893 659335359 670053961 463901469 595851428 10391781 341755317 735848101 902159436 217465943 439548554 655932521 830811180 209597654 703884111 506511361 681934357 918751105 953569019 743550564 783072263 572655750 674543409 35488928 980539969 955072099 982911231 928399261 932089389 316981687 886931604 12190776 331416846 755502473 907237236 695160431 925803268 664860712 757717698 684994011 711275306 818179949 858866207 952642368 955640597 42743992 202208559 418792790 658488741 509306047 678696784 594839635 771839522 775470560 842475888 852781062 870505909 248561373 727999154 696691196 894621569 277357077 487465377 881938468 884566038 527706892 824965604 650445556 793095953 965732716 984198336 716793816 994970833 273962459 479220290 892330640 982157786 822437368 995048724 162366421 581736538 285160784 341816170 331187189 829139436 535455143 986269731 599893004 926488454 373514127 531469250 934232203 936312301 873650334 950955133 66473957 738896581 385783331 869032394 34057718 961019131 776504819 942613596 912210298 917043611 287737124 780559948 891017094 891953690 759036831 765745521 576153539 978870723 256882220 403196586 303559332 751798191 957504317 969724316 670607523 996752839 137136168 442298405 991211958 996360443 316761922 398321631 58768664 821952389 56726942 543451487 230153726 886702126 565384119 865358793 487889116 698120500 543650630 785656097 650371167 863471878 530993042 723791459 990056737 991877560 918968494 985512328 414480684 666509653 909403253 950642745 340585605 694355172 801967039 921592504 38597293 281267096 752302308 928260028 688902773 737703152 821046300 859433064 771267083 861687328 793984005 925519334 595099652 841985167 372130640 541398155 411548092 906334727 273575001 396591351 430079686 502975470 278855646 285037682 431191346 621960364 957935596 989627558 265033620 285003790 873660350 952549754 49385105 67443863 227671620 484124623 4091713 69334643 420898806 708052720 661043878 815859022 595217971 973083154 651960996 953056313 427811513 750571784 945368735 964765212 276795754 812386940 235565099 856430632 804181260 884837963 48332182 106803521 239349980 861440529 847826020 854114211 111146471 568223837 959449935 966164547 398184336 974777571 153186050 402828531 214215797 362603167 584787063 682089002 206824465 831059267 346008655 915859387 87610129 541760507 3918962 19677345 691087887 781323901 673743311 677771632 824899780 910491850 264235466 297836919 699028567 928742605 387377087 725482412 895986070 944417988 187139569 194231970 902839840 916396516 390908886 402831363 768786036 781602491 149399502 174727754 415404025 929787929 791770824 915040358 8560223 833160286 23755795 603564651 68711420 622767116 801475769 867973799 163147467 927311087 745478673 851572052 859302681 938078824 939515996 989263265 705274688 859747552 175065725 378860259 465067999 553082112 958019416 965126267 383551219 830744287 565834043 628719562 513310976 688209374 257591519 841754056 220166778 798116780 756501720 808541489 579757772 933079785 378509996 536836056 803952135 933234287 836100270 924020727 949192606 975241987 325014806 410007906 344583836 614581926 443498052 835450259 603522525 748483498 738166420 954613610 382583254 855365655 987749608 997070197 749330443 807594949 859211048 909846849 442003221 696296787 670566501 785830795 213981936 506499533 530405065 993940276 305585019 400920371 518790763 764964486 227737180 726493693 961021519 987932368 964351259 968450486 697962104 954272287 329507006 786866476 206469896 888651885 569348268 788880486 253228361 762399040 176386696 863684740 116884208 961999488 205611190 860882582 75641262 273134516 579182950 763606608 920269635 970633118 461992285 463934767 345246103 689259543 71859099 887407510 934088149 949542967 252817295 820098119 195053666 944299186 204069556 444424664 674834883 947634688 222505514 693472582 595076088 617370066 181135176 643448934 183995172 227326555 650539511 856565770 211341152 772576659 478283539 901464955 487624447 710343620 805802986 836022284 543743631 845817873 732513826 839317322 141863782 689692134 630627389 668621327 779529720 805397073 216896890 932434725 842437746 974234001 699517313 770269882 904962035 931023563 701381560 768067745 624705231 744355494 728876157 823337746 841302110 906667002 681382568 994629697 691576423 810896943 658976018 912158767 245744693 869866185 520837742 883787104 369712527 992165695 636118935 636999676 788438728 898967742 486223399 702953458 915353495 980788722 287210341 449955901 748236289 877307126 569911948 628004383 751125158 854231992 142620398 558001098 401109816 627746420 702291495 842329414 362069470 439887958 61369556 557283039 624230787 958394087 731242059 833485831 445050713 686050027 712834387 894969738 484108431 694065673 955992105 956884240 756859853 923361925 458668873 582019310 511231622 789357147 874661352 899778489 686969299 738840583 584652403 869697965 648122121 678434847 724188583 942252742 125646049 595309973 886416976 974483773 181023474 619560608 609926661 784942866 363793725 818775195 471035311 495372005 928964978 942185721 865384065 905224519 219219182 257694737 732413669 940100220 242471294 531499777 845607420 927061498 927876522 968695694 109082761 137281130 68796431 408649229 592499113 991407059 853118546 856584271 238095409 333569759 511155133 615983509 918746821 929032623 326169158 707354249 946666180 957313896 5137069 623833166 181280704 610902112 869640654 928334766 971047445 979599699 695724694 737661967 806587813 856221863 664872093 987116146 36451673 809863063 19520526 662447732 974169115 984351691 4926740 206574910 487727556 679379961 472963792 901335933 94921780 466931369 450320954 515544564 75334558 858081223 946192624 959584123 378512236 848786665 988926131 993051480 525767464 845330213 127565729 209780682 463496458 736486635 115898108 507047220 242339786 566534975 756737439 888179033 880224374 953787187 367934330 828136505 724185632 728570558 602318216 931758116 732608818 734845047 68489476 888952093 76524945 622909872 555710187 956061170 852214558 952343059 975724494 991105518 29424625 821736695 798681154 851003311 322822925 616284501 804831580 879938917 710186675 831955187 749470384 795400351 335041647 775119609 186036112 730243809 468067104 601390324 492392461 931114548 341008707 556279740 31312672 876124005 479355241 709333659 459575085 681162707 917630080 991732229 62410626 532858360 979015063 991447591 151984443 812317190 397197966 551287171 147274953 207382365 670386248 949402547 54484609 578875937 923511162 972938810 811225853 919827195 175158625 358262431 704795195 954122953 4014867 54440326 646615445 865537425 953676894 989195547 402312583 477460449 826384877 849113685 76647701 770823450 865100508 959127600 529576044 631790340 377526250 552006736 126076358 824740884 676710472 876216616 109566863 386004123 40605991 870581842 852939871 997409566 755801091 921901068 389344883 904345648 466019677 886875717 523324790 784856954 108492067 180785382 429421997 995881619 2424366 204763024 565770025 780049002 514996756 991671172 956002455 994549132 716145033 785040734 159727073 321096298 362400683 831887577 73983378 410192777 798634767 881688188 995135671 995669624 954341153 996061383 345109968 501327773 776660585 811805029 935677299 992014272 681766953 752067358 571222036 735541573 864664271 871998381 740678425 775849249 562138645 768493755 55095146 135650325 146472015 672822715 494799952 579627685 718130664 843932920 719111524 733502881 109705827 970618796 702995685 900274317 480997240 532074220 66468279 631336517 927905729 934936287 999098612 999346729 675347673 856437169 535182741 659569734 501348308 515968205 975445318 996497531 947802505 990764017 660637056 895695106 870544446 935961754 568342168 844233181 565088582 836635316 475265773 890704347 134648225 211318311 648377915 807233243 135471055 405972575 972780865 981308924 226219081 972729693 163112030 949501900 532526027 646240383 342779147 600003544 247587184 963066063 747147678 918345496 433266731 752705128 889981377 974371089 325671794 446743001 303834396 935357008 751264285 910393371 794784226 882651659 745195752 946576662 150476137 682919177 643889444 674886455 394636371 498964224 57516240 716154550 835399637 856778501 537289309 959817055 488616525 699112361 436250009 985959914 183796673 838580335 478807097 512401841 117531582 162944729 333990450 679901920 474820171 817716545 874847315 984829353 565705441 751233977 57634224 436899337 453449127 645154558 677096696 697889316 554117962 901814395 789057151 852930219 228759344 561508296 918613889 938387453 901009209 950595046 30564989 411208911 496903348 921739474 118893932 125266501 440622438 780205072 940525061 954130932 934314603 944369239 34606798 102340869 154265809 510066402 575564956 708280287 32780753 716399473 70224760 781735063 342515156 486396322 457376830 690993010 354053969 850075937 499679562 905047228 744545489 808316460 882857853 944634350 313597186 430892709 891953175 958223681 215152544 737806012 520277406 689884824 416996086 732797419 333722891 859322306 387921418 890941231 582044262 606379403 75699816 424384407 518982367 930307818 996713762 999076046 916017024 963744554 444400421 870558296 353837091 572417444 832669016 954038709 407869075 460879251 886033038 900874558 93283571 772030037 488517192 753219931 392199422 821924983 629851070 826744566 122101940 513781165 367614090 654711330 619470083 944507061 916690169 943966846 536221260 941684876 621265761 967364666 868695105 952882800 937900711 968088314 10926636 195166495 890251885 945067140 736872084 937457907 162560239 946445434 424408746 688752324 312048022 918946855 523731593 546099574 330038236 850193631 152476942 287395823 731842255 776358332 589624611 922649641 941690155 959198330 487533669 554956548 30660353 217939258 976569016 996412888 740863805 904719437 833290149 861409640 368653404 978130469 606591394 762029221 661652210 884960267 435273539 495496764 329422364 701946923 805194079 945642023 791587472 918227098 345331269 689766021 37254436 71153107 156429696 422632715 691226314 843260981 868050348 978562349 786894728 997525457 198463245 241487503 821704632 845938182 37888279 960583849 976429328 987362377 105832128 356729561 27350965 969660558 668050990 948392215 672567146 934874668 458657657 938237654 139610933 828413493 450809747 888564283 504368111 878087233 687573303 955320376 512024786 533224203 7544872 261473655 933265883 952269197 695016658 940056407 710662595 944486052 748085539 939632914 938564932 955205962 807606104 824205855 885387214 895480861 850546986 949185253 699295190 941140739 415886635 879562388 189080907 763880711 328122561 770309924 668238915 675587163 72040694 290912019 701039231 814762145 431051512 809679352 417430907 948298372 577157899 956634274 112611368 151042030 25444255 99253610 486277152 799166086 263845430 960796008 739722790 911654722 18316457 182874037 868224547 939870568 758451173 768814966 386715785 787867602 607545840 780386021 121307512 569380012 634065905 876300758 927359103 942584965 914885492 974434565 558111886 807436931 930414927 955410398 983000776 995363752 959261514 986523924 154631885 920079046 523521567 533315808 675871235 828751435 988758514 998247549 566800798 634581408 26028135 191922467 609786182 673566130 125693753 573797847 760192153 924823414 785224781 954380472 974219249 980517193 390103061 994110028 448391455 545108950 854061267 952355644 529576148 987740140 728093685 773833049 594399324 715894455 320868566 836887887 60161571 427634057 314853679 403015891 899608855 919356571 428532764 505534516 767548684 827253142 787283133 932915847 558183506 926751027 744283899 842857986 199789534 225888530 810369105 918748607 560957154 768263061 897416535 934494456 499189947 983250787 267760233 454825135 909708936 973338305 678694517 874687264 926030313 935048674 765072263 874588992 625151070 871516427 140528349 197440643 736357481 817525372 910931302 923075629 777764143 832754048 156920249 833535107 578619313 804956949 142847405 892881335 39732 709384781 716954493 853597823 171467879 943979560 669866979 810720051 104794904 456270087 609810232 954152495 907681094 997543160 397784646 917479268 294126850 888760448 568461781 836005715 994778629 997551231 970054407 984420210 346531043 700017206 701302191 919949286 929394812 930773782 425386247 619276859 374725810 462533193 374491589 917766851 323505166 540072863 349286940 538282769 48196903 840640365 522465605 569688110 721714266 939267183 169509861 901564891 787360901 869499226 784168547 819812165 970610625 992034027 374095960 404367991 956727910 991985854 84991001 103557990 645152337 914804245 465030082 527357422 859574893 906633151 340636852 496956275 549125968 977058943 769739008 926417784 874244113 895925317 774776350 807653705 934061648 976623779 675857932 843753513 934191562 957383929 797583981 848799854 12601548 366938099 101247950 108681543 613804691 963599951 117864492 124061569 609542738 671805731 251929482 991707956 780563089 960158364 57906201 660514941 614560716 808855722 645930974 760307721 240885612 799299629 321512114 897531064 916610240 958933338 384332822 840313762 357092782 622211259 332448508 799606483 466715601 595551520 727372046 912992432 259308136 739013774 438470134 652705421 753579381 882236241 433695248 816141265 151873125 878211016 53301323 987634111 500153364 585154294 384091745 931928099 36981362 330029508 849399019 937062222 750307844 905546851 344316348 412222005 755424430 796153471 857365786 886543637 371086825 806221608 403770207 446073495 247674434 555096198 104297855 933090811 409520566 537122118 53823669 944605842 509067644 821938476 469562361 937955826 876460341 993865716 332764968 412454848 530743228 665197371 274633117 926692647 785868295 930759913 782327800 935616088 872850234 893050060 713532714 837506287 778865537 838040670 539172450 578106340 420727587 438427776 85561886 417873881 155910933 483099706 628037968 648277191 421475667 683467332 38506485 331239638 407866964 524715781 570901450 926638434 965662370 966222245 283446391 309888780 260107284 495712024 807511894 853097680 177642701 853457700 300276370 853066144 239978745 406572369 900454869 969924412 24619482 444817717 545269705 997300226 101430083 964105491 985841395 987362780 977933834 993846810 979105206 993536764 738345875 783406239 357426658 746870443 301082820 371947761 322426447 726960423 975894107 997603237 294549028 348695396 795489279 946663258 350555450 486089573 957265999 998062825 512853199 695263523 873692483 923779803 601510534 791527166 500202755 573227589 905791804 974872016 363738646 372049612 64989068 577029638 933909999 983701142 851612208 966160992 602044362 779192233 830739121 973697571 664252288 749178538 546344963 889698146 241243435 588931084 923569753 934400118 210982083 763631947 950428131 975128749 142536630 345380560 699234833 830091752 131187016 405670031 263003167 798739949 410464135 566075179 121054263 345647113 932136733 949299809 514870852 545503316 525903546 783985603 620378047 892429274 471470577 700232833 66155613 930082948 915107633 931851202 652576184 740356160 832090813 841521540 510099392 998441033 617336459 995905668 954720383 972037937 454181725 879147200 700403406 797595661 222619043 495407937 127450148 564175375 179418140 201663978 915413854 998470577 187256285 399600038 415438167 570820364 118713688 187002152 703771766 804744026 582550296 697316906 557134907 755497866 450592821 749461028 473859350 558571995 846418131 931422168 671589291 817380741 122554667 418727265 581384743 718623434 746810219 847344437 336147869 668867747 725409948 904215681 944575812 945374530 271434476 705442204 364971867 606513110 102833410 430459371 891612683 996627968 751701593 794399901 900107117 940566833 568244455 824677184 139566319 406906753 605655970 822522696 823429252 985720219 887086804 991835012 163216862 772533749 651105880 979491609 862235880 894867399 591405805 756138864 487300532 952636117 477426228 583281033 445352382 706727927 308627225 595110117 334714273 912013708 495648243 852733330 473514756 622970620 369470870 954022819 541198069 803300782 450248706 814732101 842477158 877279077 217785940 661477138 980271973 996845127 379113651 984559945 45568676 338591354 915745065 963916646 803254900 958367331 701673706 982852845 848209429 899553614 241969997 407124787 602813731 648497339 624925085 979682631 265378879 344568763 697449942 774131992 553018831 874266134 944300248 963247053 834856905 921437405 561537538 571554747 776250426 855230928 800391925 905900529 456481589 803401586 597729079 825096540 765303940 867826848 259498470 790529544 383980703 489905526 524558119 893059237 680323722 746345109 807282438 934505876 964396398 985923555 653404928 851152452 196750010 444681528 902363947 938533058 103131719 202591598 806663586 941110581 193942345 912981848 645187037 838210623 460836338 881031703 201957720 842153658 285929092 403716352 815110176 954050493 980771295 987462378 510441652 576929402 959186891 977547797 981544550 997611908 970917526 987275484 335920191 666530146 329490977 414099448 441890606 935172219 350424710 686863989 687265881 785989409 517187397 839547314 352026296 904542121 430447949 819305469 235068483 359045542 696531542 869655440 648014177 789951069 918438271 964315783 605145581 738779205 152849710 634930071 326204062 676384196 410717060 960691702 749333787 749944831 946704030 964926887 507552413 714829493 841914254 873809396 489898864 736942019 880576592 987231887 660497059 927131504 556460203 674595613 813748166 815038286 74676919 642231480 905216684 924835555 517016446 532049227 313357708 521443037 389828271 767671553 234250667 649034025 28490463 200858949 736586643 764075951 546310721 962996295 521839902 834569099 418456454 494760984 26781561 98735911 151920178 547502873 459214734 705016178 121291054 724558407 703060879 840351743 776542800 778350194 265614961 390230300 278610491 483821606 382835165 786623773 881647789 948560843 22193310 258474175 333961457 755070538 743020526 802039353 227288557 235866525 46114408 142877138 137947711 181785137 273097309 579039814 552633269 629114647 416667685 871457950 261569525 545272029 535873933 907501667 437484156 747847274 782499204 899954356 157840876 545776937 479722382 777846789 730008752 979125893 910071776 920802731 858958652 953057915 584830060 873400569 343222415 705870090 769002047 970661484 38914809 171297560 410598670 604164405 18924619 422735718 796394529 933951810 96490276 405060607 383612693 590560085 307419763 804046084 60497168 622267068 502436166 527835636 353527656 776801455 44474756 400857677 661174586 856513569 21974339 810741113 673134619 853066725 437398558 644161862 131727584 678698383 661941880 899288170 258094766 293850454 449882232 786223763 571757444 744661398 712486479 866080736 443313631 902054760 527128141 561176973 720539045 784353927 998543726 999355074 103912805 959470501 890854709 922373332 605413451 782032601 340404495 940191587 405863875 706705307 671195365 971553334 109723254 209031104 43527566 72086660 856256890 950826137 959910536 979052554 806083173 824605231 975503140 975734524 573986235 620157250 732270195 893475244 772063942 996695628 163781371 534032374 99105601 555654465 617655521 919449106 315046698 819575967 486356619 755528503 234443777 689347120 248937984 664301217 206475404 329461354 13772168 73761947 965170098 997241017 382538779 964766048 810810393 862656345 632719093 955188963 734018597 789118473 181864924 403709617 833865764 944798553 901224246 912048893 175978485 764967615 96427972 823760800 103237106 544869097 579808362 686214441 200986472 547711817 736374415 918039073 198708975 357365114 513667245 826317812 242771651 301266095 884077813 948937948 935326712 937082555 309655221 681578497 205341924 482161168 555521374 747256170 875126022 992692247 997046750 998313545 464207156 990779477 680216318 965455576 352218119 742241190 104413541 782384627 677398308 963237980 665419602 783982878 588743199 801171091 354846031 399301296 469792150 585598928 157895058 550677475 490785650 830864045 266072924 412078122 880245863 910801618 922020135 927918535 15965393 694192032 207673648 996570299 659700929 916593474 380105598 727824988 771226955 774783664 107837298 207345878 861227443 896407161 118106800 335924604 304347865 794784997 892522224 941422759 852748932 959936860 294192821 361448035 17004058 423348969 385192663 630579026 97690931 737479775 910881444 922302892 710489902 986882044 320197003 385141248 509379425 738298833 496727855 951570765 404868055 577246145 367508321 742957003 515630993 582439925 494129724 829072057 37455823 426760678 398686061 612128785 536184189 664314609 485431218 573685255 488277115 538899417 260141302 502777176 144158322 775513013 490754721 729050085 265622393 412618889 181220234 916843370 320204880 603981989 491917736 758149398 338906774 959618344 283637483 415998064 286310516 847045862 457588336 859515754 703179235 739504631 659494091 919613525 180997529 495541879 657737910 825063995 870734925 979550513 311997505 697244870 968408315 977928707 189966133 994314775 29034716 524334041 693898909 887105190 185691823 252379494 753122872 912281614 374161778 638976051 146927460 705772536 866695224 867778403 695461108 768154608 309315614 626818005 607128040 703989109 919819351 935213176 375348561 980450000 567052792 917452999 124650672 622224565 778693522 980697082 69764357 611279138 497800088 933344017 376682293 874605173 950069059 989454163 427495020 440326379 21589273 978628973 422661861 646264213 953822882 957367510 644640581 757336109 438428152 628501175 940522283 970499458 959429683 978494235 229296282 409534113 186388543 976375656 430483365 847549509 220688252 603584477 926236578 987343664 405205711 938827422 246986304 638621454 709539612 833203049 412202714 918456677 455408598 461855978 68460577 415102339 819008148 994641565 378370644 985541883 546493302 722050448 940175578 982055880 327511053 445867154 503302467 997667966 808060699 911813807 517683427 860249850 389290056 994148512 976479168 981367689 415050785 843784202 585585388 794487712 244212069 904779150 977832772 986444825 122399210 179632840 406862504 637391519 326205476 778164920 987442776 988864333 32608321 906411193 245768346 749601719 360189396 573446531 564280000 789238962 19789599 681389033 16240809 646079631 349270648 710828598 472681942 636736287 860188752 980205126 717433800 974705927 447787250 985746301 381729275 665564219 253203119 970046802 619917657 815465052 975203436 975269081 631979911 667509385 371464618 586424064 885456179 892553657 875487472 925212100 993233681 996881134 523138026 658073070 870596882 896481623 76940578 523070714 174775449 824837069 605094795 937225668 612657585 922759167 835924229 866261877 168426966 911666570 427377780 724783362 101462449 631918367 923963830 959040516 611393473 706132844 427265083 499021023 194878645 854656365 945955327 983848918 448476676 742267661 822177942 878264694 822314945 899253913 374531583 554988631 783690488 966503213 204189794 581333586 63418962 509750528 248850497 923656637 474345141 737616123 620109762 962763832 176518888 381490599 733066000 937649284 517687666 899066125 57505275 399861411 971867689 998265573 11073504 775563776 418148627 512485403 277029308 929461463 557477484 660549157 992650861 994113668 704385854 840094562 918366143 965347129 523541888 542738577 761881702 877102680 817489738 901430183 297352424 922406320 597511472 736427910 725786996 954876954 635091089 921063125 79546921 502853580 563671673 573161611 605451561 839527265 930516487 934891474 327965805 902345385 454744292 551121049 356337283 754519742 973062034 998009208 631725426 849068708 400998111 871875537 810772082 907369389 514476581 948880170 982665345 982696279 8778129 898361364 718485617 860564499 380897552 769776861 39448393 786093013 470718731 557356004 787087625 958865400 923473365 939205380 215725658 503139029 546783629 918616208 35978877 97543090 882993881 970171072 208154528 719378074 355412472 794450040 494630818 707822905 174057090 241719374 574965354 962775973 142720593 631660793 950759760 996028354 618240831 994611657 437654382 468934794 779832584 822897593 876750505 996342240 502203297 959982449 651140609 697802704 272479749 574640200 330761477 705825090 346118947 492035638 773774586 945290432 232638801 565032972 895697841 930734862 276086508 484012384 935263393 979089202 12658773 327704482 368517145 845239989 229690082 291359055 517746211 540494597 479861163 820086099 733120228 890221354 197704207 211632133 570043415 807223050 118805899 466703393 222224780 232925402 512625983 799747801 43329131 914201020 398291765 940591891 635370990 921361903 122165487 140591426 494351967 641241842 75123002 534239528 319658590 923253448 21642287 733677515 415435972 446583949 772831870 990236632 841472786 953815594 590505191 868451878 759087502 817582685 109495674 142065114 591028399 633906336 844701618 903909921 246220631 878793421 413201050 941056165 556033985 950797081 717780702 755416674 648670428 910573809 868385054 989472048 840920258 977317014 16726238 38962852 852137441 938572181 411826510 630196780 153189351 681608304 124374422 667952885 125534771 968235042 606880900 634565759 571182153 841087635 763864815 844100524 19264174 138096633 787672325 840091371 348117613 922525154 303540366 808363811 745248111 929631760 714048001 963929990 51382625 98440987 809670513 953356234 701648831 756860655 800712607 861007232 171979167 570606283 622810857 816780924 890074046 899455707 606815786 835319865 450731394 935778347 332398564 529109154 970137360 985692798 727153314 759461199 795097808 953535437 77270338 753158001 513674278 914476574 281241660 591873830 435995803 965842940 939017512 985099032 452642648 452992822 214211210 662352451 761226391 871469400 558937279 776325393 911725309 934949290 529666470 535303097 110940500 837056590 448542291 542640655 787251179 833970444 693817719 965248393 832368697 974440371 473499282 551864865 687440607 798073783 800444707 810931110 63516855 264455460 561202854 977329164 650758259 835941743 279710078 959224419 243288166 247117271 148963083 470515578 678500619 978072302 907194672 944214329 865013555 895991214 935352385 936911417 739799534 896173231 698105616 884460502 530249134 857704626 50060802 678687200 366805271 367607045 344763227 656296413 410222778 506487609 468994837 587848607 728352838 896641067 19396180 475966605 326278312 665415611 471559810 835997000 536345461 628471852 527452877 660905425 15665642 397632625 579161361 910861667 83710917 840697975 359308271 979264174 64686434 249211294 937211691 964188222 186180410 588588308 723680164 968299251 335151874 427846022 493603287 534962692 567077856 948812795 257894234 683206264 688344574 998461017 708936204 822898031 843800977 912272609 953746213 967504713 81599398 466316974 757352186 891311182 517792872 728179490 233297937 906960642 431828817 850486778 673710900 890800132 711144730 729793660 58512120 465926667 415603796 487083209 381445268 842307191 566942587 852477930 214033110 419723781 687854257 925620196 152587277 195831336 720844166 932647524 117315833 742160960 122601293 530588554 130446415 361689602 820657575 989775504 750763383 828347358 143815885 779245751 497944018 879617746 879014881 988386321 794490752 890159652 50996550 500316805 245198499 688374977 491431412 971439127 651040977 727076572 378701219 405921154 859442090 923234490 288750986 490805534 429651645 983987386 69034167 492340652 720933377 875468483 686000444 999300485 219222265 244566506 150990375 351641536 767549495 900385936 322687666 373577560 662449709 860048675 870273585 956326320 553625711 946862308 725337016 745583611 912980649 974467646 252956300 508650564 319929283 789007926 82447282 132384132 405692768 667862537 769940852 987542951 681532129 766549084 794915553 892160502 839124834 879080030 353340239 677779899 285416732 287186431 714288265 854393748 989745829 999354369 960352390 997954261 854158250 875657308 146410510 364608663 901641610 944575124 796653232 943555622 380040358 781858901 642739315 951033684 620872502 891573511 396584420 965359859 84437991 931293765 167594836 395857695 574692918 971823853 795778876 978996546 149198231 525036255 314776830 807599416 916062726 947375713 563517636 943845377 659591903 926090154 784398462 922845032 611689237 959700151 127603447 442962556 47443795 287813234 955691659 976455694 683472298 687638270 363548425 851550740 97174393 594061781 361966040 540277369 528551933 754545286 458871843 897762031 816568135 838637146 755519055 892279076 306446916 739717642 41456743 916667422 570928315 658810086 40846118 912117978 247422973 819838144 365654879 575089956 283959720 840818607 860677513 936563352 847505006 935880407 979830644 992800384 420224803 552325190 624509236 703732714 717009896 832482209 600838694 613357538 724619197 996703347 273385092 690275102 928623088 946615767 170873580 826696950 763988186 890633345 655190803 945421890 780275514 800481081 720641127 840651537 262018261 551860847 817094280 913486647 840168724 980506874 186887494 448756501 158581132 497420444 926149522 986650775 775810562 945248114 908667826 998780612 221043400 331479364 582626405 842312587 721867683 918129806 220014209 720615335 288156289 900668804 660290143 837546992 307186525 990849427 929324581 939390080 943274773 994634864 252479120 559806634 645973147 835676787 300384744 697746085 987711321 995173085 959576886 961258955 43319310 969240477 317838154 717311996 460954084 802174237 32218839 408612002 31113937 183806621 151612545 389773218 906200495 935517183 927908393 952038894 302164662 732071282 356651471 630325745 858442151 926344800 22324355 583472514 367832472 472526762 281305342 822302950 764567542 975230496 92598978 647219946 416166931 639303613 867667542 986837217 290703475 446857591 207492418 333530453 546371028 777131739 756391350 843097155 276001074 499644144 471792508 941406223 248175027 513554911 229834151 536377819 536776700 976676432 972353668 984912081 235264210 251046459 587907949 969493779 928079816 984628513 805076078 924504313 962756170 990676129 805699374 964816868 362841442 433869751 757320632 871096073 577460090 932502983 751535749 993786477 706465593 711680743 144966268 900824772 384822699 456810403 774714558 899672960 27818124 588935948 175402561 178748958 576389303 672816940 694277123 975253891 996095925 998107894 286713654 903733824 331493442 662452832 390199656 767862891 199549211 742749511 693731683 786755162 888296201 932621557 323227724 921851266 791652540 981168368 55526863 131146425 452115161 696638970 432479043 996862424 397805610 569085636 269371381 511883959 558688695 905262774 650831162 983600718 822154654 940415077 484467362 810553599 751418338 825910733 285216347 862234873 367940152 843698379 358760432 819231381 464952095 633985142 147906389 979514558 814199638 815489974 763328461 894399245 642146420 653810524 87643226 920788588 359617543 776579692 717692785 817823458 877990030 973385297 651266771 912692209 84333573 998941838 573717589 593732820 506220078 559922171 216166665 890244849 199248550 709266351 673094320 953088157 499640722 900210002 286934304 313303857 476847217 786098180 763169556 932127152 924354608 928101584 938205201 939024684 760335175 774499005 526419229 588659307 460734913 527235840 413827626 967832349 732252137 733133234 817267111 901855487 376434305 798248404 646728680 940420415 855387581 966755499 295450545 376527360 133954418 488054990 493971057 805853988 428702720 526276855 318835131 694996618 207411321 587345318 449138983 904877555 346190439 984199752 183440016 782556510 381426603 627494277 7514731 542990244 276552095 380661795 892180580 958961248 248430511 574150005 842285616 944952826 415834879 900314626 313691883 568962905 934956282 976509950 59923670 739380951 921315798 923701842 530900147 762305887 190211375 244419724 123899684 849174408 744337734 779969846 611602355 655539121 548547170 553148302 219913530 682739939 955183863 974241092 278771919 862799252 412939784 679609809 215189333 260982250 345406886 449420611 909810384 958876122 935966183 980538671 555620008 574553318 457702881 842802593 27469876 487974897 731277167 915075848 313660325 478765251 23915702 703131421 252882514 680120835 494364466 817573084 67681573 381613776 92774832 727472246 807700119 995528637 585630244 658374757 142808029 467438791 263559818 616348400 858553215 863611697 764829771 780274848 976099334 977188311 54211419 744817373 121051641 388088895 237431738 790546616 809046438 968795985 662217219 980958437 581072928 595549553 503860771 710710835 121011784 564868773 618712706 634855231 803609990 977821289 887865094 927505075 351897455 406665827 842714594 858448558 938171160 983641875 873797459 960179693 292796959 790157438 793737661 989575592 773957230 960650752 867237507 889668655 80538039 898334443 172920474 185161507 868171113 962938264 352298159 977563439 761395967 791492222 758193228 906770617 482542550 860517038 586574938 802302064 682048353 851283162 50980895 573366569 177506668 314989632 989939966 993184712 9075560 539795644 205005257 578820966 739395901 928452173 47801819 773545681 198164571 335188859 804823760 940305801 678024087 927202341 677089322 753675834 938207721 940633405 12390678 179947142 767465345 876122881 358564948 505684111 285790849 447586869 864476268 908825569 443265856 490316520 748692715 796299323 977989581 979045763 757285680 779275818 827973070 884280204 457805198 986066338 753503057 801856779 632876508 981984737 84834595 729923235 304201341 545410455 511010297 738218117 175482021 754603170 898588973 967108269 676499321 763127474 854937913 949981605 84125479 152528757 389464759 434626549 201859353 358331573 620944647 995669867 172467721 715392063 38703402 575067483 940809388 945785300 424148887 671702825 43538992 177927425 284435777 685850839 320854361 340401923 91753246 110769435 938654506 993593104 231256176 463221415 146316959 852133592 63960334 492054058 253909503 644798752 47466850 839473964 835211141 856711555 392997207 708869093 501803248 972423924 321706456 788089981 858669575 862154629 187975595 367572659 175804960 956332412 161285238 369628549 681725284 687483085 532648723 611922061 253786945 289266458 409155378 989668176 802244439 867423576 497069067 954937139 56590247 885282965 468863874 959885360 392189444 806577241 740380892 772344503 72835793 536434944 351516535 364756041 117108470 621926778 935109781 953653812 365464659 409994617 105830187 888654570 737088402 894826412 194091958 247940167 231450426 633722047 592243631 740460664 791420428 969257599 763621608 805652003 474732745 512698585 670485017 755813730 87665761 421131533 934067663 975957942 975629163 985411757 895753022 916937123 63647759 654481748 751856108 816652314 29472817 860472714 13580276 862871387 327290761 450820929 454662593 525832871 790213830 904162322 642434383 762125690 494728663 910120355 396761026 423650257 430355684 906902242 169186156 533627591 478610358 715421601 250902611 703237939 579033440 988122178 317937416 731165168 577082250 775304585 500285143 723274873 274902516 356177810 142606676 850000037 498364263 907858579 662707239 866805337 431682114 665022213 864579658 959381636 717673098 991197053 337421954 417279033 977139840 986815494 891494150 998306656 913829524 969144226 787381576 887100441 824361311 876138917 626720180 658489456 594011094 925964569 991253746 996203991 286328179 789333359 837223797 963903047 507460659 762794154 777050965 867642971 178976193 696005525 797673749 920648513 935229773 999044849 844062999 889776663 827992011 861583006 822145172 896028895 570480385 900587058 98882750 536628765 385487855 849175094 130605889 736204756 44710427 263259602 472684832 555083792 389275995 786389509 576077630 603368163 542120433 595564040 681352175 789760558 225367465 447668599 420965268 731595564 888892889 964731125 961336145 967372463 15094523 77847359 582353301 919566672 353052167 926172712 579124813 758515855 896424331 933296555 705969292 779118361 526406273 551990218 159274513 835342666 699840772 795240485 348065570 745861237 992854909 994264247 557638183 704832712 339500118 611095209 724033067 935180648 374544128 942922606 187644881 742447305 569389989 604079525 983397623 987446304 176229991 205137575 824231137 897101936 947960925 954836568 481851796 894718888 736704808 953847589 427292203 707733771 414651189 724246058 685851088 772113528 21212946 223196089 873379783 969907313 600146996 662856129 12192857 477202260 682272890 951220952 40029050 222950117 435764438 695829704 436114466 940591514 544861182 696651294 951315725 951757169 974012045 996854466 601377926 812227723 755324721 836265770 85255301 592658185 367530498 425874636 743625442 780046568 619886998 998727529 684573051 737973618 373145551 836404940 755468859 998663238 583659840 587378576 998199784 998993253 250851306 710779799 883383907 908246283 102166349 412142422 471932900 989794777 492041630 869471093 252739930 463702101 736813275 830612998 581791122 586234735 403359272 985365908 667483290 993417961 976200024 999351210 299149231 912252900 476893861 493797954 638963040 746220692 576140674 888070893 327069918 519691220 699123609 981222947 267919247 403719898 365146299 921642471 194547131 687481253 148035145 235406870 499159950 794717701 559444998 603430635 230143635 528671796 513874742 885079052 255973159 988360824 695923222 699017786 848202741 911062573 648231470 835485703 945526891 990506731 876911038 880848008 181404595 800431090 269762862 716164599 142103229 573191972 958458115 985761292 493465022 788558169 335913361 692205641 913634857 979038211 424317967 591104068 798628661 858220584 211858435 483928280 406283057 805180219 522282013 869784133 310969280 889274710 258437653 669174641 448524206 471252569 228938132 399585100 771687483 806143878 664470736 670838648 114736446 427882473 443725198 729093875 217229041 754513768 341448743 408318401 385264358 457240378 600115514 778967728 786725832 948247296 465155094 515141493 791362600 794356884 306190325 595216509 196072074 753379733 971052894 995630929 559509348 957301772 307401099 702624923 204643097 363863980 151938473 354903135 497322776 792866683 305970577 490636225 236408104 668727227 86795490 507813664 121897836 672860324 96203153 181826791 268640986 619477495 255251819 636285225 164538500 223072176 937206603 956281196 316351334 883411311 331436158 591016003 449135951 601538124 411139725 785321053 715501489 832938900 40256746 316228063 531481928 992667244 855409977 967931419 33084840 326864130 581214039 947837663 702559571 990465310 575642976 668399973 843473888 934890200 474475816 951739158 192612927 703971807 57983217 684443213 401329296 515187817 121101246 885902644 602947984 647068043 766834938 957930471 320342051 865987781 160266604 931807528 794905602 963046375 826477351 922564091 306635457 819498075 979977353 988075775 846770207 900511575 237397150 304408293 867328459 892766384 803234283 994378318 25987121 599567802 14451987 241934302 311644273 804878707 902803010 974187729 948003259 996472730 419893537 919880997 268027317 672169687 464127122 693344736 640486750 802661119 173887304 770333838 602379652 998391615 343905280 391532792 782968543 949909271 698347708 858736708 690569273 695919313 245028993 506520210 279441938 685980858 544224357 873000315 290122395 523321077 45960905 870864958 366368421 395960915 424804347 619075476 122844105 977346268 31706734 626605040 515325888 764742627 585512443 776878980 485587379 790353815 888746283 969254752 196932535 542418814 125764527 136436728 51672216 231218750 206927917 962280717 402493196 704735915 360545390 603556510 851130691 920340142 397262213 904825943 815376160 866489845 131909489 236823121 680819519 986698703 105625584 837862338 834786302 929182216 29824042 964965837 194338871 947697201 863995253 875393715 770004722 870521415 665238638 946950797 721573340 978015901 40462138 963244839 218880995 836279259 85680682 474738071 658005140 807099591 84589619 831994106 252477848 841926352 617853661 619243017 473747425 861631439 116385730 358031699 870229263 968763583 501813104 840820026 388823717 420562419 30442621 308967037 794477145 907181458 46265694 903582982 359295270 535966277 387440797 652840917 675942462 685238443 157986877 853250931 528528175 574929520 252225472 423118574 117372366 400807548 89230737 693057944 711548288 765602851 800348733 986503345 968622252 974068045 829434228 939630277 859497156 887104172 524037925 821450718 180799465 337938267 145859970 459970509 419174711 911556937 426414035 943772354 622284084 679476876 334014815 427417990 780457306 878987700 179055546 502349169 270401138 437863456 430396268 571651088 795369528 910802434 341651425 761636013 292377862 739010144 250614352 527671367 245876338 539237807 584006179 710042014 976135103 991514172 10562361 249701072 591762876 790251700 30267412 586728718 675576785 721096042 917217283 974400193 526633868 969363227 592200413 648721137 862112607 991373885 950917773 976425491 720657440 868076895 888003084 935032373 106000100 946001054 88238760 705325628 141562909 919214518 93364153 973881564 955742386 969510312 961966932 987229399 128033814 248482830 552634517 576876172 830880546 929797340 352155856 733518693 109302877 782784441 125535480 318318446 287687170 986398074 417152154 679188601 696721711 932424347 705727120 876238807 398615877 863406307 817658280 819392723 657599582 856628285 967670413 974919915 565978696 690123483 986954894 990986757 499296454 575643291 195023879 587596590 371701775 946791408 423643230 627837249 77338365 123360285 956370586 969424578 300305008 590831630 122240485 766860045 490674759 621904779 125597133 860688861 385623869 993017646 541844598 781546714 368153657 916977732 442477430 988005578 4343515 583143924 918149104 954025291 234835840 636919793 29880058 953793697 40748648 486888935 572468035 656167431 276135925 337728303 33495180 92712722 733888112 806644108 364070558 836272531 261940976 845870255 391809418 925708898 764877382 973389456 380102885 583287639 78581697 149155564 880297364 921959216 330100918 452445203 821750758 938484609 628279886 645540991 884505352 977412245 737311082 847885683 539631225 890319721 217280549 856535769 715046249 973775833 67817369 842838258 453246968 660334573 755700950 958222387 529329579 969680126 567286853 931694335 84113274 902385346 23967086 797571863 420984698 586574829 809586502 893797953 743421766 821442810 873559286 922969425 364504623 603234112 956903174 985404611 532563206 778469945 192029764 428661665 361924975 939078688 205136884 490444349 737087704 950567372 682068229 827838493 115547283 130068031 151463764 790628834 491684298 919446152 730089997 826256148 887261799 935376445 748498846 859139767 701060827 862711512 311486096 618433390 538863651 551375320 376047145 937384139 754944124 783178686 333178680 587558733 441094739 950417309 669124398 735251469 416403840 713366317 188836499 786438206 995585192 995890226 477842328 578181282 83100031 364957133 769985201 830159779 703094867 938627315 412537567 661413246 793996219 927074124 243228854 897182433 72508641 782563258 150263085 592089424 330010340 892887271 214143765 792556033 429835554 822154132 462734504 983026437 43810233 949896530 314745174 945943090 441240357 726833286 679376518 887903923 975634935 978097334 858892836 984760308 377766863 875004163 986110315 997834292 811623616 842939888 974144079 982224772 333397035 476422805 415053370 851587563 621637174 810092254 59598789 225764635 242435635 474609294 687992911 888082509 866397451 998030849 969139915 969727146 995922069 995945422 676311674 757066069 841367132 857952558 184057152 851658185 990219737 997773723 822958765 826272795 261603239 442366231 155406328 656484832 184088337 758624580 212132472 855236333 692898892 733870419 324173082 551479168 846668225 857161785 732266946 760961742 467450694 586822402 449919093 790806984 557180946 761895073 23230785 473928799 951014770 957384179 770335708 871127490 543563194 997742900 403686167 541456573 706160929 964858591 878394348 906552675 587232222 655263883 505109187 717098503 87022362 845133274 477609731 755859417 607800098 898617170 78852581 514538008 327705756 382706508 398594248 701143391 173752938 799417062 355294164 697500565 145381405 677607946 521401462 961885927 93822187 518265081 417331963 791639349 106789016 967994743 575612937 806607666 971195307 974534473 493447582 902414358 579551269 980918349 649329354 837828104 852487592 944241548 395948862 698633437 633635581 714424675 265173992 637209938 27808051 863886831 102397426 457865302 296481072 344783125 88283581 403841863 761081913 992109825 159321815 694690390 517201588 631571794 340152513 837685696 730747208 922512408 979451152 983664158 173426402 768518453 362192268 608303345 48469388 303977587 960452846 986187100 678414093 890208775 98601794 262150875 141707933 741132665 438598484 615503063 274159934 574808339 95748118 626127169 246317968 895874733 854879261 925766487 195150671 384728789 180943756 182368020 267470404 365405877 997465157 998815381 273903165 306773881 765209065 853268838 696232925 730254989 283242327 770895429 778485107 888427466 306814155 360593001 640159641 650587159 352716822 659833539 474636259 584819966 599721332 668911478 373024033 834679816 163067913 471992708 61426050 798976618 675335504 987048719 202421039 850039605 644106717 737523533 505815247 870608127 76773915 281001349 783990658 980528761 49719671 83865415 50379486 803260638 686819535 950971328 648428554 936979526 731860860 819606217 955971806 980219581 715547466 935032108 496555518 743222938 858449865 879426478 463916397 895954709 363907744 854899941 771114366 939223413 894421662 900823750 817777066 876257382 892304324 919290873 866409002 936069808 557687770 762838993 119919959 481796366 68937448 358689609 913588514 914636468 878187713 959674182 245332807 415605039 171564504 748106845 2310679 149540827 505066569 543985215 708673322 890216474 333536721 645384049 474339603 977820515 207974076 735636633 634190976 991152247 528520086 959661715 724355361 825437329 247787473 674845965 32577470 900432985 558485564 868194278 829178967 984518076 166507186 671190958 223456317 763237090 262479844 441666699 266928351 586206450 300089265 713919808 553831415 556409384 674077824 706943789 656017678 936414006 953220108 979358089 59133724 996594969 126250201 386265020 825948101 843208246 845870860 908272850 685858594 910557644 551354811 983725571 481450559 511433381 132092122 573564057 722119066 738491984 602795132 982567708 483429772 915338720 991769256 995924105 419863965 866449849 430752979 888303047 162201521 635717232 335744094 454663227 51607813 943532403 186579212 291613713 213024422 434840015 490376197 493978778 988189489 992855273 833966691 987588928 108694235 470122259 514453644 720204203 182839561 482238691 106091787 368512955 283204074 816473747 28977976 397464126 375566849 654510696 838505042 993233878 617798308 819063661 263577776 569459837 409293647 494702973 714709576 873945193 20444034 738670918 978966119 984338683 97605922 141868068 349567009 414595196 287036808 997162941 305633655 993669063 366142300 885699644 92135997 107741996 188849800 509187006 421546047 756307245 540312713 737898301 108327129 869571124 687216761 970996319 471600906 938023638 379679579 834360628 531024326 675423494 667855216 761584255 756835685 932578776 274247643 532147666 364281181 773884315 315942512 495666296 237439459 691012663 262972057 905074841 453143704 663198419 522587721 754432650 622437473 728398800 293506772 820583020 764648575 778594070 475221059 738434546 289229067 623894852 417499120 884653773 740201470 851536020 768484092 918381556 831359102 847128142 961122559 987088779 620302674 850534795 277994537 736241220 985340711 995698634 184953700 711171671 300562474 873814719 281376471 559003598 686322149 937218812 165745181 533112482 444291988 856185298 59040896 878342749 93732013 931227457 517720310 841878756 74500903 717696268 73875890 736928673 610022942 984922156 176368227 822672511 886409795 959181122 481292112 525132552 592689528 674050057 752852068 829166950 847206987 994108305 548175276 746797423 524193023 704641621 568511886 572388881 1701332 240812452 134289399 812581027 954037602 998924649 944613990 947564867 989887888 997377195 62603684 504130004 365816217 696284080 669633439 851328208 635666652 890294953 809841490 942577809 951817351 989756382 633672702 770304892 612946633 881468818 118402335 425878407 172934595 568924936 919787567 922933142 618520563 959424397 612281551 678358725 378605853 463324245 629153853 678206976 733439507 790188499 591421511 948517793 865035351 949626787 511784085 811433927 973954789 984444860 265960919 798301604 598085991 986934688 739417025 839039850 742081320 777545430 795304031 898322883 753656754 913928513 720974931 960344036 562753959 757962823 424054614 567592888 387947913 941514028 95733999 240602067 796541870 989287646 786386396 975703563 200635120 394135038 934546879 980572821 553088007 976524051 588890790 977675458 486443098 494354656 278631826 365696478 306393398 706403991 342312249 740565289 402666765 470042015 666333060 901789293 436795308 443869836 980817627 989725153 210144478 955307690 982045865 997180175 249031496 590908413 755870808 801523586 771298072 919585175 384172223 533778882 992186135 994855273 718097231 890822872 21273480 133583925 886399258 991955934 74063993 342630581 38147260 898602282 393396127 701908723 257084531 735253577 848689493 864803300 839105555 942456169 92258317 798684001 259739693 699539000 423623857 509780125 810363386 826602165 717957899 819276005 118079524 732651025 295978544 374456025 434897319 716352672 941043644 947191912 992115889 997903217 750651148 908229107 361185851 471754733 2995439 336768472 304059864 975825693 996157089 998404962 324485186 984097667 597363580 811171845 779942390 952736248 486348011 958004814 704739945 913110057 93406530 810427565 8580502 560793446 148009730 162219789 226146957 349602458 520808550 869332219 256893417 396968610 635238401 892803118 931143112 969414972 713311309 772837110 419511180 717936781 1863008 609074651 61912260 115384683 786861882 867948849 949229222 980704317 330419732 624926369 298593767 980192472 622996620 887197114 730526192 949895810 285402888 574968366 469423263 927381546 282713692 953100329 816176260 911265577 640234244 739858822 160376850 529907556 571460677 786730378 590553095 789891015 802011508 995998528 347307903 925337804 939902691 971983378 435497407 893818642 980692031 993038892 794324374 995755411 841125832 981699259 622349543 854302645 322157708 870112151 325951142 593881926 534296123 798001878 833119665 919976671 611223186 980484706 827387416 940464621 99322921 487921434 792512567 969425082 825413984 903427902 441023285 933123134 141763818 895101926 806154780 916872725 647501649 972322198 596842083 824357488 841369240 844979456 85142822 867421728 445448712 650181988 883698243 967523611 619331795 841944078 349863799 459528194 656672159 688980263 543917072 883313145 204021640 920896576 227076710 470456727 138055490 756116361 925533747 961766967 793212308 823705387 185078351 704722262 156391371 447249653 753173524 756668408 728971111 748931967 765927273 971207166 112578631 423202440 204495270 564789816 302783082 657556581 957119161 994867524 817240919 837182445 257208701 566168045 871572194 991608077 929618719 954131497 15453533 514559270 582218821 791766516 267201311 441952807 541021422 830447654 363320495 673370371 287485794 723966571 667156901 816913947 184165930 571678094 247663927 851157022 769736479 872597832 142014760 181558594 634284041 903024311 98326207 567086466 79791077 998518192 55975968 213960442 323061897 325733281 788985626 904968698 467085620 610885247 510230497 584388544 553809839 600264526 624508320 739224288 256602729 739949054 685310643 699109197 875801386 979807913 949254826 974822450 116160879 328663201 320222667 696175370 279430396 383021097 977480161 983602260 761682079 881933159 627066246 999359246 574208235 731936920 114131198 148786535 246162418 286987048 395106595 622966554 269716738 365123036 136973951 314275312 13701879 859537730 538409677 738533259 297222952 740080086 815890267 819867317 89141312 806520721 332716741 699664331 341167425 790640432 424161636 715914481 35856838 504489745 648278563 910504525 34761898 191121711 503216697 629762297 445676429 598886004 609415865 735554838 512264821 989250957 776106209 810107722 839195193 919773314 261846174 494021219 203008625 725548951 329407068 972031111 938811671 943766746 22806464 796126251 778131052 929794664 88652227 852221341 111815703 956755397 164591016 786738269 792144618 903171656 946257947 949716753 278506914 718936992 597476106 768357636 612792005 837078693 737152445 926415337 846968888 952952880 861305428 914793848 10523696 955435604 588633448 663828962 360364513 673044704 517098483 866304006 769986942 951851149 169329635 581718921 25086298 495584190 565210739 585442419 679550243 789583369 691835134 885995407 470980310 750013318 233617774 773457559 303671499 826716510 528359882 943498897 824067510 907819846 621790907 700680431 366957237 543659789 985929427 999022576 244303872 458891897 289422571 838246056 418217285 885438156 957053832 969115681 933644786 964968064 851187573 865422702 238009202 597907497 984715276 995808216 981887611 993594551 538160794 957323952 4565693 745132088 978871908 980950790 487952788 613161102 614273277 954415525 198727384 896765351 454957753 744206666 196377503 808923302 749136147 892287271 437326788 783513409 801968470 902056101 994217604 997605900 380698732 986956705 192080082 429567868 238558081 409081930 472659828 479832966 576622346 883398802 296261509 823831326 68269979 412325466 485207671 926256250 103370118 366008249 31610912 109794688 852934976 994328711 858795843 995311686 56923442 475212308 134735336 804105380 963920950 987252867 607640593 737437319 433474550 989776780 814626779 995926790 682184987 816792727 794318395 849698397 18732956 199098327 944649404 963490730 942841986 979172537 367885178 909296881 366772869 458683522 385205417 486171477 65699971 853493356 313674609 997895651 221892668 708770419 937957857 996989188 867980502 873995803 99879424 909825204 237036878 914505266 38643645 953986788 759180606 764310064 501736210 794529541 84392997 333885596 253680377 362137283 54187744 718895936 563376168 706815483 588514270 755215079 267973488 654534981 295749775 480561996 989115156 990838845 694442660 852650784 497519873 940915112 303283752 447438317 530051069 545391124 368208328 436745672 682689114 918379810 511909926 536009408 596605038 865479109 110084493 407419631 234986307 459876105 960818 342536934 473874023 768341954 218516051 534806329 704827200 968886856 213951457 664455894 76139956 233112914 164654122 989507243 935929090 994684175 620731469 792939977 243591472 265649388 651656404 743480861 739315699 885487154 597123440 941283214 529462690 865122189 733805096 796021004 3672719 276094288 91805630 645813259 339577853 621229173 823835961 936972316 527297295 589850995 284922750 625726707 270545251 308518069 367929310 525055627 612648668 675184136 963786816 978892227 792555589 873135417 799481957 856017019 318778908 329990421 642180819 700852787 391692027 710420047 24354586 87660720 36564902 407492576 996428168 998014307 443255402 952360571 960407713 973531544 4953112 478250007 596281429 613396936 129154008 993670883 413239497 571975983 691719075 803150858 295986656 748790128 73725716 271300481 964383689 969202622 542760637 969517346 257313303 264782557 892023895 901344696 704569602 827031493 424828516 982242852 735393243 909169966 231783210 811769026 214138453 563160733 591283336 781171173 384885472 422966028 79345744 378830740 558705044 849685973 621999718 828902472 467392401 726093160 44195928 577857275 399227790 850880190 555222692 887281151 592423041 698264596 878125385 922555711 254727694 454861670 893325491 921346454 638072009 843370854 224835399 365262069 981280511 998891982 919441361 934279600 469403637 943850890 902377685 920301995 918920941 980458922 74531461 664099574 526997010 564143300 809906908 923549566 750791956 925233144 889310291 991684841 17298899 759766524 793187090 913809714 862961197 963234900 164435448 906165577 169646426 244378957 713129495 840059508 32222207 614571525 538952778 954906206 894257944 948430449 577668028 697756159 554797472 896053102 758404445 866292511 660441717 768808243 983928030 988963392 122871242 152769767 341344222 759566302 619853459 979521589 128072520 669862319 573333511 795969779 636216813 799337975 466397618 715781719 185469737 474593931 150175385 541432725 133714732 480901730 400116156 944144237 537317683 800363285 282033198 971998207 885626178 954685851 592889056 995565666 103292770 424795490 906094043 919989961 250791898 836847712 406383404 683931059 362672389 481001551 698726248 981560084 590759196 807133615 579880120 681767950 173911817 552535061 869362168 939449759 664064339 940553079 655986152 789651802 221232245 650955832 719719625 884760268 551721086 822479023 677935639 852934108 956058672 991121146 55169046 139885740 305967495 877635627 486313070 863292545 806997554 846305669 784492012 936748836 146914749 353902228 502588105 681920138 835071249 835781497 954878726 984728514 165834576 577268955 340472122 779419170 856292194 871211725 680470477 689399719 232140323 918930573 948698419 963849929 347621155 407115883 893626882 965932367 462469928 770965851 382315242 452645833 180598969 592138563 695074399 850269505 393201601 616580572 200656360 813764811 135859339 421817679 394188121 962587481 17040748 45698281 53936269 897630174 894888756 910986241 367561462 375871015 356329607 671281942 387191342 616057108 404147413 638511206 530706993 858399857 427624987 618920737 194321396 668838127 537185433 810573643 28522944 593215230 767804620 804274661 23367805 697682592 128978871 646420288 830678908 921775057 974718467 979238547 614934693 855964455 254995248 298750076 414874986 686741045 119180445 860476015 681835001 876951255 978116353 984350858 811709984 950284080 209265165 287788497 157745439 498893802 555476442 976655661 963166532 963890508 63286109 860155234 523271751 618716886 480336718 872787884 816299858 887318648 243087942 986334830 168266183 722900758 49471749 170201325 887948985 938872903 6608225 170483709 764211993 783377186 133316850 169859641 15925785 285349378 166356823 226619305 71466387 115309167 852987336 947805605 859546004 949594074 9933558 739801763 392726853 911971111 156216661 987757262 952328294 991434366 865469529 959981431 673333595 901121876 585957801 708303564 266862499 473033713 101731367 846612575 393249543 420607061 410233435 945284461 205153384 836573026 910173110 957912828 112248447 266253573 821073684 919676565 360627885 920461325 688266112 728607913 290269700 947236030 129279577 246931839 341329444 610533324 689467268 994273104 615057395 891360029 341500246 882083728 12130720 483960037 983297512 996863097 80841490 523580263 548612409 977305930 276481139 436591614 228062593 418634875 6217396 523316867 633596477 910807403 265067845 674787605 540358895 784358867 299267060 516822663 780126049 870636520 96277279 620989963 341384845 386765618 666830714 988604476 895746941 972091907 480395567 907529788 859252100 927543806 756472368 860255229 195172377 724637452 880241130 896367464 452657529 453359771 240322441 400412778 648287146 819835453 730778001 782992954 615095747 871881028 130077017 369515936 677969788 719906506 273164001 444014260 142026066 691071397 671574250 964232265 327542156 658149622 36225983 333756244 631533952 904123143 113277617 720433147 107383687 697102629 12580888 244717993 477566428 778864762 86071244 151703036 871362368 905496163 516580088 636290493 853642548 872912640 143548424 226616927 84276936 310719499 955561621 968901461 709671004 726521105 556595158 849240569 460514792 871784412 486309639 638571477 308072634 377390852 348451533 601958773 811347262 857575544 802264389 833181948 923182005 978650787 708880182 761889421 395956696 512660097 903862768 951900806 946971493 966367375 688497014 866568704 742726810 834955250 588788931 789297594 682911542 791050426 961946877 963541175 511976127 976776305 931950957 973136612 173255488 874268190 281672354 532163880 122547186 775647173 582639543 739880312 764819041 892910024 253761231 801502866 588526915 739211609 622921353 814740089 714548835 922561001 149341494 171378680 197040976 456603814 139734938 380826896 418632231 434624093 78360576 194379247 331371791 812735127 392319484 732911280 920715122 957868091 772490359 849304276 359226220 883961402 500085003 883069554 212033790 565176241 961113411 980075246 4593986 878260566 993051475 993319460 147719349 195070653 593379911 990161197 549098606 990164343 189587329 924554065 120275594 614511618 926446708 952771536 965757496 968806496 919771071 963684771 612042423 828618991 62144162 119943157 489200838 684108472 212036536 509958237 375603977 634149944 854194654 969384849 30032884 532484263 646341243 722084606 892596881 993935785 763852123 933818955 9624456 579416622 142368301 843988368 734293240 865582765 293346832 756425574 24741951 198422175 9153535 490299905 388928050 779542433 304046745 703164097 330475196 848556397 875484158 932231835 341891618 405842098 31043043 368779898 858548212 950881802 404535846 662052940 720093582 829790351 328188033 350286897 295635252 946336947 244318241 613436484 68431099 899846350 278014354 961202033 282092498 415141249 320649613 891997547 851113733 867686073 16007166 419609066 78856228 204998814 289041634 637988678 588153883 851069705 99270704 646004313 578780361 587089575 307736189 426517852 661303563 867853229 636986419 755722422 552284565 808932673 802295066 877193630 169243416 558859176 628883735 963561502 510869220 778780543 202322654 945407338 9524525 514397553 200593985 871790277 37530688 286508520 850909478 910927894 948204688 975045511 408109411 836796942 898131871 993097934 603637962 943615782 491406948 610677706 347559446 529453318 188226600 698093134 369576898 575276148 431762073 881244765 758745214 871030956 621189113 742333383 971404386 993722238 318716277 530423426 905010372 973961052 770818479 858648981 327360394 759002743 850148134 968953561 970520911 977147969 955739369 995604888 382517034 442386909 738444540 986239206 619326605 974926628 608937885 781730021 747977922 857911342 418534380 593861606 352470938 677887894 777537431 902738852 184042032 414063930 66372540 734321952 216387922 364933197 653911889 709568865 516295696 549295925 182671767 633042544 638084053 777202320 430585151 431522978 329633092 342634226 540721851 608721046 423704372 452099060 540307530 939967165 897594883 981576005 752596070 882146957 990058502 998911311 651230935 679782901 798476655 890248289 443831028 730878881 561456750 781860803 212591342 313891121 826057435 944277086 211939392 407926275 844182319 910997235 260773716 802801289 27809594 687079798 449880883 903325097 212947240 668233658 480873495 817101987 803653699 975419506 267276366 970484485 461526447 502383194 533604937 595157178 358148566 945535567 478976564 843627590 576093502 651087799 605105346 870529732 44493071 676089388 423745318 483222967 397664289 973198255 881223275 943265542 931671355 940278895 640375506 941993175 345529744 533972049 818198910 918638010 377252350 388134341 122137433 730379745 865169696 875066206 31482591 57207973 806704724 940701071 612790621 654934803 620815230 750609655 286268095 820823048 824791393 967861259 253380486 880004419 451987961 526338415 735898756 890617481 694645749 771212661 414206140 450406320 611749130 976744429 623382304 918406994 549981277 936480122 359308415 820662738 388967996 925222423 458609690 620553319 740213038 997931675 252097539 311435760 24284886 847641855 931260978 962104691 322885524 329720448 2633063 599688822 215660171 741203263 751831337 912961637 208240925 410046589 578048134 984021991 21072885 428051717 82460461 509134840 955142884 997329138 287674762 824968638 500934239 557252265 142210948 699715431 927752497 934018298 109050458 535323248 82654102 154693461 69194439 122005543 909070443 967559280 7694281 341682075 603398364 715518575 280995297 327593766 960428115 992872710 746612481 867146420 309279486 915017888 432254513 996572353 295031372 311830442 105428273 772221285 891890790 975245511 501713712 896426867 462641361 694806040 625881355 759849863 257512314 760260668 427675408 925551252 220216199 486090260 113332668 660282477 272695116 376919432 317259414 846203938 468735791 569189280 950681786 996916760 114654116 293111430 750145181 750172875 237841768 856391455 601356256 843047846 679801272 915361914 98643709 758395477 551993650 936006824 269793624 622177725 167739610 234448654 947921609 952132879 651368530 887987472 610688966 882556654 46238440 71209958 722391660 780776314 826287200 912138016 269941795 301884553 654022318 989619492 880030788 919915860 482698298 966860118 178887545 860367873 843598201 935543068 323062131 946065001 17732119 627570809 329642054 811828218 550795325 675423940 337917492 756010117 283982463 521163174 887938393 910850984 108482198 444734458 400543169 720114542 163974927 839659958 615643357 824534995 454342458 684520296 652253127 740317989 132996141 926830187 438587915 463473183 824661645 990304963 738979227 865637618 399016550 693482746 181607010 827955445 968574641 997741932 779063270 897503133 101338373 879404301 595587322 956477300 864105042 962925434 274317265 945150101 931796767 957983463 205693506 706367653 321019270 823065127 188819121 585851847 531296841 874780945 55711923 85213734 744646430 885103736 29216391 415183833 98622451 213295193 201245582 457312045 486323663 626305052 857425389 866779910 924370454 947536466 333464547 371932618 360863920 789709431 705645454 821030060 327857798 712526482 199669351 810630038 18571996 586744481 820116 663578361 56830540 485454527 483874839 965706615 706369926 888318056 400034718 608480700 497446620 675057928 399990804 403968697 696375654 876129791 936561315 950123955 809335985 910396040 352721795 418871165 255808682 500512032 42560855 659384280 94641758 556363907 889089772 945666611 85785103 286363782 162364032 761984225 587480004 791069302 523223835 735557985 749312394 949300786 871289578 907187987 435462756 649044468 110171329 816133137 662249215 991198856 75216603 439987605 644544645 847617317 732076350 912155786 658274248 844410686 553214695 978095758 422262019 513082345 558591245 778580042 538643186 918301593 434400546 758863904 641811548 806965839 359777950 609945656 635161321 873626437 329529417 827649895 105472902 337570494 583551629 860512976 211983607 803925294 475522024 510929954 779340914 966670056 211106996 777201008 131535678 820267723 215630775 995120836 23309362 526300699 934306315 970874622 527881774 741050526 544616307 729368675 945043073 963869170 699123425 747090111 787711511 863795166 15875111 649426925 193137775 624978273 618958623 749503095 240064801 670761340 446769242 767176330 381952612 437388002 305801001 573217391 67868548 371521852 386225279 397191312 309250452 985406727 610963898 990728318 201599413 977899510 429054914 618263268 539057728 585584454 920128930 961138439 41560206 253520680 843337231 843368279 332656740 352475177 658624024 844340287 463098780 767093781 411772904 752746081 291668067 345666732 682596275 711658138 667130360 815918657 616623930 732879908 158559468 170482481 94582258 757562000 870526651 969687228 613136242 884830771 455594483 865607875 702907864 834814884 965689284 977435440 50696878 298334910 186485455 322381291 323663075 683153625 646496052 732607456 545837130 943681625 452106504 864000437 631489452 971407738 8488130 171376492 955760563 981058530 913681736 969987927 396808024 630346244 314371614 745469072 958609939 960074789 605578896 970739125 771461516 838053308 556647483 603692403 505905168 513314612 12738594 608246007 679553318 949649118 203642964 380227259 244735042 748988985 517320766 896913140 762522428 938621005 657855950 693735749 324908826 408003106 382926711 721070836 659932428 903731793 813214348 836632891 728111146 813876856 324105940 742916070 949896170 972958499 615101307 850212274 806677682 958897957 898281411 953585990 148175832 285760003 628468110 692433053 167951846 651406257 141375999 409038371 780543513 826893531 903420381 962030043 154985925 416086381 111341478 361765760 585633392 695239094 215368290 915710319 598700029 938224322 31487362 120259320 433032399 781808027 245832470 698669863 98646538 174463495 273900847 737870407 467470784 481169773 245220995 643337207 88803749 800816514 814151571 978915960 683029881 793070068 594500939 922535439 166653741 701227665 270026759 294779373 528429455 561632077 529045809 776896767 11388206 473158103 338327241 531142826 343387549 996215405 832563726 970990413 486935341 703883259 559872633 613968624 224324973 352267338 368501958 722207946 113490839 980587511 923823719 983760486 167083217 265545905 26106818 167965252 430473750 566896585 467644645 587551146 475593162 907409109 979883927 988641124 828989544 855205400 751265956 997436743 362575438 685519254 640726160 817585423 697192620 816728042 800586382 874152800 801402173 809248843 570433753 820724458 581888786 742316937 557034377 676658843 284023832 777584456 556376190 811423087 852278883 984128048 10989387 691126067 75856167 107318170 360411113 562972149 566594873 722273838 123552712 364959357 323828931 805592598 840190522 853288916 834144463 916835760 572103318 655925367 906740013 964567917 904597759 979142978 995290652 997253573 945003737 956209839 252176555 894948875 774172308 793416090 797792313 980019998 314791276 816362908 531931043 713356833 521004986 669272879 778516208 930340351 290366494 948155610 745602229 891701210 387843557 492130300 369168844 452743019 975466874 979255522 677623091 943368757 444328014 529327883 44807766 267854963 263061514 740963752 347594761 875774066 899840664 949178313 632281520 935327705 373391119 559135724 473524388 569763221 961691953 999093739 864705608 959274982 583004271 596283276 790590326 951341599 439753652 825123911 927959832 994050830 210778257 249594962 681887625 930614854 3608623 858283879 43945945 67761816 648432589 653064452 336543858 523412346 973772786 988231665 903169127 913001816 882386955 915324298 352530715 877039557 884127872 910009591 545596817 961635311 430026117 707643166 84595776 654148563 331160673 540607648 49706037 770236171 272345013 281928581 669873348 886214948 878921718 999301054 571418272 956063253 863519002 967543227 285193009 564331212 735544918 887763237 420661166 563055756 772592405 809582244 174194407 805373156 251409593 363652653 78277226 618369882 487851448 935305527 426317836 841370364 972550546 982526313 56983602 735658791 889246230 916579516 735224351 792523143 177625761 560724214 579213313 929149906 398655227 429715417 813261388 893072386 909863940 943283641 139333056 796094205 681346597 772069260 385349208 629225948 715165675 925594804 730833024 915223676 473132327 713992241 244096001 671296280 50404889 129235071 623582955 872852867 924403292 945028297 704821983 883040915 986743501 993197047 75877640 732275735 64540686 883412478 857215802 861064021 8662392 866799879 750603846 876756803 529034160 578070108 51248592 961535119 402607371 591697021 964240065 965718166 595344973 661911659 121680788 135456138 134535158 653990594 910323596 921400995 818006160 988282870 129193402 705320170 842590400 919872657 667586775 965181471 850022706 939419894 865607410 953139061 974261634 978748972 301579313 668760855 497621694 651067278 739586733 831610493 761372484 852636842 863689270 901632042 90596318 140024278 199489283 437380085 958105105 967811878 19292010 642453792 804480547 955059693 828544457 892903573 573439099 989902930 185283022 753847095 474838513 694126917 641630196 726874149 2419744 727796788 475808064 698749264 389991111 439392436 637322489 856493825 318584187 668453081 649030341 657542630 419756137 661539137 564508351 640493613 121564246 318242414 554356816 751258288 982401092 985658184 529876888 958906715 361559848 879332020 34176268 272643654 366487960 778864817 547211814 650041156 98379717 232683837 822818420 960948718 835119163 913939428 359359611 906739608 495472799 616607570 464685914 528954025 217063275 655770227 747893771 837626935 882734889 967307443 643550370 662629125 566346323 703967878 539507715 604566996 6738451 248441471 168318076 345726363 447285936 676948527 315071509 605647356 509437669 748130927 776647622 849636031 654098719 700539862 747479574 795528634 899853570 974224973 23781068 185509945 296483803 529149040 750486135 773828369 417231318 636553595 393693588 717839775 806534797 973184498 219242705 334845806 487201924 711130211 571678685 714566128 928346559 939090636 726683687 767179514 495412761 824884125 568471774 602415130 225916137 947572309 438549091 943380816 681125911 930000620 847471791 998500763 284984184 303776550 749497093 852848090 101320173 744202290 749958145 755307301 112973846 604606238 898951698 928867400 664301514 960337468 52619911 515112782 573441867 863126234 927404982 974453708 488158486 761416457 43625263 51059687 163118941 980648964 803461713 904126086 720076976 974404325 123526926 361634986 724759153 955585844 78879785 714075618 180712249 490659939 962250566 997227352 255474249 338069551 84615495 692831866 449277917 650388780 136837605 915194591 217438037 271315496 370093112 769454933 302043481 398075455 975421699 984034377 804551176 998403522 673388756 844101244 445011534 482037150 118680919 771368690 115680511 931316862 515207127 663702191 452298663 832619200 990196003 991568506 31493477 620264996 111100838 964818486 838189472 986781884 398115828 754193023 710779607 962957807 518542658 740346753 313883087 725170673 568080277 626857137 463657893 946599752 149310404 639289647 420108532 572558211 931415492 941232605 166849073 670136753 153846428 756188485 774437635 963137354 977124735 985278512 534468846 675638325 27780802 390766296 266558170 371186728 147056816 677929445 495394589 918271394 610008664 804695641 703734125 878785324 499448699 817824158 628069255 676893641 868712560 921799873 229794651 637568099 570063258 574506226 423978362 977261804 988015184 989382796 472674322 564659559 451532233 968635746 88980516 992807137 37874320 463042986 104894048 304214730 141259626 883616937 387449072 573762978 502304405 527915325 213065938 349854870 562781592 775054900 687031615 919380878 607755974 951020314 749014344 808886169 333609552 501432980 386661075 707994088 219140198 961254735 619698326 923270116 71401402 780427907 996610783 996896104 64290074 236946597 953185196 968254805 516142069 642765823 746342344 752995332 981465460 983732054 253475091 304412883 526172179 874768124 532198636 816435042 473989229 773742709 581116092 780241157 693889173 871978632 452493354 520499396 675505935 687336229 983462101 995792104 114922502 616504860 994274548 995052805 410334368 980766209 395601215 710226836 825378737 862302376 704128389 936526093 430014578 441727128 914953304 942599882 756883605 911732494 325838054 691594477 319282043 730505677 602868320 638166484 18379352 886305472 25054835 651279432 524570939 704854287 585008477 628552689 612722545 768365843 79935058 561590137 898103988 903594966 248880425 658000414 806499549 852266999 987391300 990375197 439201988 560470460 532120338 606177720 764487701 913574528 451961017 653041643 351515006 799375185 789404963 837980600 96806100 341467928 638144416 930827614 731442956 821580085 449604057 813296891 810925251 851409118 325613449 863946922 905693251 977595166 305242948 371297788 664699618 912656983 720278693 946258144 783140385 823685827 973047952 983076490 509358882 680914382 788654093 987798523 152206169 639265851 234013096 676223752 394676902 539512303 563577071 790372848 365856013 406050674 348515776 483473896 128283051 585207812 425217752 908910846 78916374 132964206 564566468 668849223 772132669 892490053 383012539 737998278 737306940 822567062 172101638 371673767 20360585 689129032 335050408 851418588 675350066 681613340 350563611 962605186 820437313 933471460 189430765 499154184 205756918 582574628 853696002 999195298 33456036 568625924 438683244 650557189 109229017 392113468 373651584 468357962 367327802 950194044 454689708 987843559 596843115 652893338 627226085 679858209 20167665 132124487 103093905 803198595 405764487 894283872 343465638 622413461 271744962 362160780 769706018 998465419 420375937 926692511 352842138 850480003 719231359 878568971 317494744 497876202 812304706 962374471 858043188 952936190 66872572 154040075 611995968 853267660 879899763 942709235 140325345 293799143 581758902 756511867 855431581 984837879 824270767 879158482 362669007 540941632 356018287 848054747 368930636 585744613 928393099 998537882 116136360 385353767 956693939 973248167 832812845 938332634 323450558 891080040 822964454 997224271 375389860 407533150 909894290 972246506 184620285 244288869 614178739 852968249 493300571 847604296 16147770 575364933 928265075 934088013 960212899 963197530 947035467 974426751 759819711 932982241 312015602 996549471 190246086 648154243 685580990 793426939 928238476 984963096 121477585 403419265 773491578 874592762 413818806 588062315 415888817 901084786 944587210 991430298 642237954 855174192 799937319 972203115 535072667 608059214 111548319 589666492 221869619 980333347 911663165 943410664 213895474 833662058 710606753 725850699 319310367 972807277 262534634 401262525 965788059 994944800 497734381 802106219 606127807 832584708 761288959 859873995 919942105 981996505 110987553 660622209 13124261 289963491 303659055 956950066 50855669 181898705 794288637 882126969 450140857 821141743 987075145 998513570 424438283 773544274 52163192 808922358 657666937 814243148 510089959 993509387 569492304 659570476 877589951 913998124 194124266 593630601 585506175 650676007 187594466 229390560 74124597 978835612 105851255 687424375 307361597 684627879 917364576 943690277 338314902 669800528 43653040 455833981 897923755 950074842 784172674 926100242 110724661 605052160 127771317 169543643 306972931 563763879 508492848 997550080 505207780 922719769 245571925 261310315 801500152 938644510 42401577 758133659 261071655 262378375 872291693 923190528 991196231 993726091 111655456 181301487 434093402 641863679 756458552 798248287 317702580 926442175 787935889 925432750 98684478 758927466 516759538 604524957 466307571 689736100 277045668 569677940 170013749 297949571 840042478 899932200 499211206 640072243 440919952 805444398 31622145 837340370 65079352 573926810 227430261 779069024 928123894 969398360 382589517 746510588 852001915 920712624 571978192 966271830 440075651 551335057 574631135 707634822 35047980 819568307 941286417 956510728 49087342 857102679 419727291 801103080 413125468 960009007 477368923 841257014 345657822 604957233 34192777 228344601 139739683 608639514 658172493 956440699 562655233 833146137 214691757 988052168 925232002 936279241 353880991 812868145 288488363 814107004 553956710 796994114 393757605 658876747 896541913 954177944 735496549 891465526 955764892 995043294 474014112 790848685 586823006 969014799 937987812 969923168 615509973 958129344 199624700 447986693 29260257 48147977 348297363 526908028 894204453 984587366 544000183 700211627 885622658 955339905 180373139 469654441 4237521 94322547 528331874 832740672 855672226 985512908 122530525 812128132 137626750 929027324 937727497 975243466 288948839 950050197 100392416 484623378 586042015 820394457 74509660 105390140 972775914 977352832 297884680 979002254 521150388 833630066 91662759 562312304 30622277 376628912 970222102 979285679 397705920 840867776 420353777 844832876 419958501 915553019 671226969 729112811 529007948 764862262 652191571 914355919 625511685 866083857 227606501 255163750 450988953 459914932 469389030 580713333 530612794 620750845 604074852 643900758 128147870 195408563 410908 925126327 129716279 548067312 598553518 778423437 641604677 796153589 631430420 987579173 759368285 984986765 61475952 106529236 30122645 566024500 688251052 969315876 116690757 864611380 595742778 992473198 186783056 599375958 956134579 971997864 114965476 347061462 981498654 990151192 106049866 881062082 143047767 478890356 732487921 835407262 161561739 968421585 528083426 852205299 410582690 725950964 189741221 207783958 877230863 878353453 731405353 883898928 424945253 747023546 151145362 807301791 254622106 580389590 305258279 457796392 22616377 486226936 743019132 874358695 948112155 975297053 70394584 659337989 12264295 998286208 7133272 596471315 64674659 336920537 29569505 83143631 122435784 521055280 663278666 739352286 562138460 768062401 231098477 395448828 922405193 929917911 206507622 438427965 203087661 518178965 321470672 579577104 594913836 654030453 846246538 857699897 91628492 965299025 998483605 998597898 816614327 918014372 121628174 951235252 315411205 685717464 633576142 634321420 120143721 475172920 339845412 945295258 159999606 666504404 499496027 704723990 474291392 865312688 416290856 618091871 676130841 873258500 884694569 957235548 173881459 458244338 614448144 703237986 628207763 933616878 654671978 761035389 152308617 571082826 555669073 877877495 786042320 878824174 450764502 478799700 267326916 742960915 197461540 926574213 190799719 595515573 677154503 690720316 459290180 948186906 413169909 853216363 938148569 980449848 586132925 621380667 865222209 908272998 221174350 572412432 965844414 967323537 395112660 948669717 19072727 640037966 457771605 944773557 733486735 888897015 219908128 532626278 124876539 940912952 171659841 642720222 322330039 404533042 797940459 957690758 689196841 856860206 109888454 462212091 11402191 26975136 121826523 163031198 544786127 977241266 265393912 992852931 475312070 967613294 959028199 978246403 588378379 824035003 100112765 343028364 313310166 923546699 936925121 980761751 836664310 960214709 410715827 589640751 84710420 160502264 478733995 880655329 443707345 945709349 500440272 600760019 583202898 745225875 595020298 711699404 9376712 587395293 173893657 498047411 803890387 824754236 956272411 981722319 248399648 875030573 737910780 825553578 86355860 912403126 863479692 864958011 981672227 994076060 13548956 866181861 144836760 593296135 373432565 403492082 389033991 444279907 384659467 587224763 222965541 286494731 7379216 233027499 227811630 389703327 682157994 719185250 886791021 941151154 140953635 407844504 515532881 779891668 877431214 934698878 500832471 830251396 466753673 944311165 751971678 828166847 833354998 914336728 24313398 581803362 734492968 794052029 930828423 957718117 890425705 973356745 788883335 923728803 114435129 520076393 320303105 809926782 177234070 223677350 959229851 969253131 1742669 500869520 852210362 881836970 171010149 581888418 811507022 895118814 143964874 163078714 900039828 949301364 218322654 923086992 133457874 840494242 486488280 839968916 267874093 320746887 729246016 962996618 826029254 880640151 512831348 622146447 659553901 699928664 339586034 894063075 102687441 117771139 800143142 979654521 162096802 428336342 709410155 980783010 384856632 844389550 435319597 489645770 751546269 801670126 150838717 831779658 720074824 773667468 19845866 635352191 670032071 971147601 769826483 868736283 392269727 497494533 169828074 265490493 951765700 987994461 249729480 766622223 849844006 918558249 107527993 376016832 975147266 998198183 726835090 938714269 866033479 880650271 755320971 803634096 575186606 678417782 430736317 738118341 250961400 719322321 818044242 958371304 3452928 935849496 613107730 626179214 157170737 797852351 135416834 831126602 766016861 846108835 168687796 622032188 434954942 973053459 611642972 903635340 962466500 991092502 775003677 785249821 79656673 527283792 291467383 969163737 240944054 264053270 659738489 987784971 947803114 974221379 934654084 934902292 295710205 884889553 262973056 801242778 322143256 967233506 187504205 288230018 265442180 829642003 886990063 982598215 208091617 957416760 822094589 958553882 956279551 970375336 142390873 209752577 642709357 734321222 485453264 876461026 131646901 634704526 656931893 833175757 863348830 904842719 327860630 346244556 49941356 430523152 624288716 813126445 785306582 871762127 290535783 993542710 804557976 888443794 787377163 852916023 110349584 294484060 846934276 987180244 129773811 968615617 381485453 788781001 939340660 992760110 968355249 990966718 612549163 802321256 991670261 995894563 392647130 986495490 884673382 927627148 910974755 961425668 106848180 678723317 112796040 799497566 134207539 983970888 615585350 788719485 262593787 866183271 308385926 895477635 672466538 813388572 643024213 907830493 275226372 604608404 708722061 729740673 457587185 602271408 789356459 863102153 534462718 823901143 239463331 239820242 143397559 533598191 322623100 601522187 791376256 970803120 665955262 906926632 889159697 991363441 235742004 490500366 878905339 972443049 443465985 978824552 116772611 137478455 571164549 846940323 555890128 931012383 881874815 965030162 810250455 971318181 399822481 861653295 114411228 813992229 10347235 933508407 342427755 904605811 869635408 907442938 840206444 873308469 63708871 900491705 63061245 618858935 178025353 183492424 257633586 430103295 971574516 990652286 661644939 805388409 960760499 974039533 53367281 739753145 233744321 793585039 153312026 282757798 920551020 946213740 140095425 479733916 423322108 848840991 291201741 448443539 479159532 833696102 962524240 970204697 462408111 752452174 360789813 589195020 754874546 842952391 238160283 526941587 411063210 768927382 14331966 634542520 984823986 987662104 49421890 961033666 557962747 573062311 939853015 940238042 110468137 648941324 697471072 903111325 464328361 974717561 198317937 381110087 779378228 804074465 645205002 871952384 564703371 749331194 212904620 449845444 113405205 569412674 797832263 971410215 123972377 192286808 160000062 830848099 959696787 985029249 391513877 669775082 546176213 725830529 27286878 503534618 191090872 278358407 635298369 808141644 747428501 766015932 980847839 984067408 551609108 637957111 411839454 795527704 247602730 408852934 964352501 991679286 595966272 923055997 713211233 953924389 734927703 887386935 586689818 617400920 731779533 889987532 313905769 822811318 712917568 717431566 16463413 767206994 131394152 138624071 436092133 599550042 886713978 940888609 826615997 961115224 663768793 920390352 174489531 718399777 170935992 404658917 58146784 835389253 484413913 512817282 407530520 931421241 398111070 485212207 501071856 621765788 768467147 892379070 193445156 749461807 384709013 568124503 759852806 765375106 14728700 970208944 209698175 241606932 748667739 923331511 844054011 927842050 555663466 651154865 228743008 317660084 634251695 833047689 199037093 542696571 207494559 459291443 604323018 653798464 41367312 274963298 943687487 984233142 96522783 834872638 990336789 995600203 136715176 643803756 769207919 969831401 662553751 737202689 574280686 694678700 192788180 256131168 875651275 929094747 52822216 539566443 407457076 680278333 989071629 993027849 375516687 700036893 678324922 784474919 533172314 706643006 581995365 895601751 813585045 863367086 351642987 660015091 39349091 786510106 838416204 951748172 154257886 346051596 348651941 580472849 386935122 915777882 982315351 982543860 804438599 932480103 947669148 999382548 466932606 616864120 341950523 953118426 866535935 876669161 75566922 933504984 80494438 637147260 224528473 911427872 733821825 761324400 77023922 999144532 484720855 744497350 1478119 525271854 246976367 716772140 387318714 642589807 367482625 589686371 175095064 596810471 741854523 778600760 197732662 911896488 740873506 889073522 211864902 446707260 923963907 995246603 220119600 435668098 411134966 647952042 448941676 474642461 153377060 242905802 741631836 993700038 333578742 432855029 858138364 954480145 445174924 651498406 876226572 945915496 19545635 482913865 400159440 864837851 15082644 904983382 757683995 980703363 616520797 929586477 323191350 571991964 822137267 945327662 258052815 338440888 307581309 440721492 819032221 873203790 678695920 752185852 305540193 894765694 869607303 957221685 262041312 352301982 932341240 964749092 310560305 350873550 714298685 720291379 872711500 908349638 292744095 658074552 859659525 970520300 714325035 795115034 923027875 967944760 431608165 974513331 71099404 182327067 744915555 938610817 311061099 607638498 613484226 643359126 292990238 335969299 782912624 860222697 580316546 607914500 51323823 739486705 231801139 432606688 810210270 824132543 343840382 846505863 105496121 865536878 985809159 996417929 371323606 925132425 749987458 944453597 393968882 678220667 661270558 889897798 466399690 610880490 2952480 922677660 828126244 916016411 665085758 980240798 824990516 896126161 31212227 33246207 634675330 973420104 390435732 628356980 661816612 927078525 434389789 816510746 657889070 762514331 58682622 80142804 696148705 855020529 989985661 991564223 717586965 878056422 592479010 616793511 51868148 233062564 768681413 876001964 978993363 997057302 558539484 918856156 119416013 611122818 833024935 913146083 241686261 746888944 977043486 998597991 258387440 815087780 392108846 728962359 928414116 958969549 827364137 838389953 484690818 833689531 96980961 663626654 375954418 855162694 191651705 913281096 855249694 974372938 329323718 452904891 590105786 778183006 186934691 307815936 194138550 475283695 266250505 780951431 548051654 664388235 241334992 953005930 120583339 462641453 635656539 788098843 981593403 987679049 605863709 778883712 800476019 895712735 714952682 887391792 767615661 777209370 193099897 291302622 816647691 980427628 165185084 604103892 543227789 550361311 429816566 484904805 620770651 651460508 690416074 924001432 372881758 387003179 816792948 943124321 14452250 185754561 201535597 278904651 992712573 995698939 591074768 921240451 2063919 608737382 826890023 889459204 785454186 917237578 282956207 874642976 853151185 853969599 931695489 983242444 867412129 993463540 448977718 526409007 487308761 611213223 969585042 976612389 533739542 850621575 773763793 931627310 300664479 922326526 82036989 963306152 668357020 936364660 556579842 890805653 4945440 197513128 81522472 325496951 279366272 859606689 229695072 833847883 321839978 415241908 477578864 728752745 877659024 996184177 152239595 911868642 300205068 427425381 265609281 301979173 277242650 593000389 427388022 609285712 87710272 227611554 843293599 906401517 275395487 678467413 882099616 988252288 199276835 664575028 513590019 518189838 100088205 697252898 734026325 841335487 703953099 905462898 428551135 641165830 344187363 968132601 360798337 771214206 237815525 957531791 328011016 447781322 403647273 883316219 277916551 670911662 469540559 944173133 953275904 980174622 700767463 860067900 339493860 530614759 845851375 873682700 391239235 861941846 796598047 872488865 640198989 728176246 153376637 706184264 460683898 921696723 560593293 888913498 182175503 413518627 11783901 27866579 582543896 863443781 794523115 835141576 371066130 599695279 973995759 984099768 759602457 762955471 214153462 556809621 501795762 826805698 790779064 796084180 651022687 909802383 492983884 960603551 402404925 680672252 494859394 786239680 22561091 311482941 917902366 946440179 448782694 479177987 263672197 711573545 817321538 932755537 408568840 715024047 736182079 761743700 302566604 420668365 35264927 592072328 824948917 977325615 440021527 963013149 436775348 506045524 5544480 988751445 617206745 718570848 160031968 686660359 960971525 978160184 306756888 607354078 605760023 970466937 483116610 993926153 629565203 911377427 300999964 620721738 399307101 459962307 641875137 674528918 232107270 905976580 408579911 845382887 156604002 616989315 790618029 798746114 240627212 537981636 435004165 954835428 383653010 976582734 196757997 204437516 667655026 745097371 916431348 938936541 544119868 634377529 873154427 993611459 241348919 832409371 205910362 225054646 785518346 811293474 261108815 454626628 426627669 511751877 670694195 781997476 453927773 844798120 576024715 633960958 102077074 231673952 224823128 393689611 799813826 870414074 199445541 850952382 172735180 424010562 285307984 587829791 568800003 582898545 311366245 994395519 315632574 698985699 399601580 685553570 321410895 472525095 731096664 987719296 838413927 843723439 301486234 818503425 747995042 921991135 961856008 972224719 124775895 620037664 801521367 820186810 302042865 779679190 470613226 715058676 36205104 643753197 69754514 783951778 72924026 581825015 519365883 859587809 427046468 680290730 930063119 953569878 79783004 995918406 280827950 727021680 23500193 985515273 89663764 154644453 713007988 759389765 377243857 582606011 664731176 766992325 841521108 918963945 40324017 296419737 922084938 924999689 684373440 797150568 444452423 796438239 507832716 568934906 876604287 961957470 474489238 612289337 31030745 843749396 202794062 491191017 723939102 962767599 579447723 943932176 528036638 762596117 944947797 947314018 355156178 993505179 78533533 233862373 986365123 987057704 50946801 711599804 737792950 813714612 573263584 826403556 573766869 875524330 598353985 905993211 883241680 990733656 831573634 985474323 659336637 663979221 718636353 838677426 972698801 988170314 651549799 673224070 627281282 857769879 26746493 743594959 721066068 966189652 864653894 879809637 190876256 823315990 237919038 585908646 252056286 464425082 162514706 621277248 235107254 710523785 29526933 309731054 660364211 995354505 750104077 982803758 562708812 854075994 589191208 750909312 757601580 942634288 614002900 653903600 677636255 950514769 321686083 794486247 349562074 923200330 987049808 999253735 83027946 229678055 8410761 808231693 245787868 883550684 750903796 959813071 178116887 365162514 64186341 797476600 165101272 722684743 942926089 948005932 349587374 382339428 360210190 536314221 116470854 761145213 884971215 927230879 895391780 964718995 865913541 956083326 355300429 681053102 658029323 704649737 62634341 928037740 720672551 960648209 530362042 570418140 44967412 299301146 584586698 805233352 737455960 959026015 715728596 901490180 669938138 738820062 573606737 746877379 476519964 773121755 803048623 935925508 191702930 285848540 113099202 663510442 603554779 881715480 139941549 715926928 527467805 998039957 728757195 917583236 830665359 851103149 792615909 841192223 887194391 904673980 616932510 656858946 368947622 640055634 7840280 981735973 954288430 993034291 333867974 918989664 454187085 601918189 613825465 687484495 781322948 955586232 202563852 755060260 251382158 443428409 375898023 921089367 365049047 406084548 373758916 713011499 454224532 588357040 298776857 790256065 664227741 686262475 179718045 892715525 203511704 986830234 242855391 942288994 432641143 475674027 344912617 478516758 764669529 901209841 242136143 560259153 453537534 864606337 614958602 904271917 220697302 831334580 94625417 884856307 721822070 837104775 597273973 886476430 131128031 848811006 460640817 677885217 731211460 888591687 391249623 863238366 701103305 822785881 927977108 947465499 137403836 804401802 307787366 658326441 829610658 856811904 141040543 672940533 373405901 940370059 904712820 934082226 530388247 874318718 131777443 494120455 8853412 580828200 14170826 308480650 896135657 920156024 745858606 844481945 47356845 430072592 409963175 700314702 555086224 664543021 916647943 936219565 595533228 931525007 571198399 940920377 585466006 671969661 246968197 847485503 733698795 735048274 941201819 991073625 517773713 855944084 971909862 994063152 954738555 973966159 926680767 959243773 882543552 984817070 952179935 988778459 914872692 945104836 49869823 777159727 121985256 135870235 864670945 879893320 336927539 620465176 234867704 996606077 44625762 467567391 133017426 987067404 301119658 746298999 822211449 824501119 258720475 803437278 489124879 522415106 776975096 822144489 122397283 542833170 69657204 355464080 440358158 909457309 691372408 758198791 336272728 643673131 102973219 253996593 431226530 582215163 657109728 742781446 138408763 320675813 501864336 836937742 413877197 493952009 886997859 973518446 28773226 422382959 894192894 915584557 790843849 905079733 992171202 992448593 663700087 950672482 173237219 871429781 134409724 231697494 91816325 981036231 879379546 964082805 832754172 966607767 235138141 869087896 901772524 973561675 757899843 870901367 152473163 237209936 467943994 835330589 481851618 923570436 938423699 971369505 778578017 787731271 891792483 918307666 773800524 969777635 521756287 659774096 822348913 983147755 205405436 418510714 234194307 665230273 475926814 838652809 736173370 995094358 411982511 655791464 994725255 997319464 350149754 770611976 531608075 861771289 389594426 560429585 328530883 373479765 427922158 895198101 30979867 386171415 988611376 998699541 164925059 935993125 698772619 795156479 266189933 389960321 9420060 844201425 762290210 844775529 828551809 962476270 369754066 846051804 189714263 463369389 435658654 873095850 836688312 877107029 527639964 871386595 200014581 596951828 954970212 977838312 968340528 978961559 889138334 975783147 9356995 562708022 606832840 747731908 305107192 858808410 126257508 453748633 92786452 208101200 65731959 224422476 150026703 300247556 153844077 271521883 783877840 947082938 184331673 625586440 682327556 824799482 259445378 736001963 287169516 397753461 141843155 750000626 498442395 618331662 391429657 394493510 82987281 269963033 714897624 841182259 398223035 488882790 430334 686459353 844753476 911041112 641353362 976354697 269857204 992860690 215474225 776478160 923409643 971069198 23167116 413197356 562687510 599472787 739117158 827537772 480793759 568325853 19067392 258816878 330083501 648155398 760867973 830198548 908664510 939845107 436833748 945843368 768512935 932407217 904254266 984638685 227593651 243068375 633248740 720781567 773973926 918302176 632665607 781695784 9590253 734650718 683140702 892825890 705668404 871370585 197104949 835210488 927882284 956198196 56130627 83518429 163085996 530832560 700122693 898689533 126932535 913823501 542919405 633109514 528864569 748733716 473901656 871780799 249651008 628566955 533831364 853670086 515578080 780361248 953518005 980109555 429814420 670279183 277600379 760081162 838624030 854970829 399678971 851522364 59250107 848135468 648735045 770011186 851785889 865867650 671421534 889659808 609795414 631006962 487745252 702313819 999300869 999382279 41629914 590095772 682046530 774418002 227943205 641474490 534652493 846719251 573063852 795354662 962558399 969337735 462653354 513815580 249075659 289424129 677612414 791336885 847365710 953368918 349916388 769202738 735184552 778959942 288408882 524155343 102409916 347942297 207719310 292204199 894224624 982727315 773596949 832488857 457383254 615899532 91378905 553132380 690086664 747000339 276027555 632844350 313575311 657074722 953750243 990671165 553894731 817862931 67517711 79763202 681114169 796331971 140963757 451504970 92024255 449533848 863063606 897658174 319848906 853027448 929235150 981360310 138397881 603162397 575300172 912399097 961709354 961923435 585605539 789954261 12400738 540736055 430905178 520625184 526578522 989966641 573035639 875857395 576375221 578534690 178240752 871378000 56944763 383240042 347989979 796889616 897013443 937453713 177172154 891492404 708002992 756436305 219837188 351250105 898569318 951978998 992654701 998626568 748172144 923474629 815479760 943840478 118742382 422032509 359223653 920371033 633873143 665802594 902055950 957890890 666881867 868319171 600969914 618882208 298057974 817559987 564060768 945850756 803159370 963788220 417388629 717336011 818102988 991844853 406010942 754328476 506841476 507876634 439245747 898000252 919846967 984586939 192622771 672511102 871155342 991551791 689425666 918667261 838554280 930471648 927413922 989646720 99742472 720024048 380359382 925084378 369111221 954483766 880488664 957447768 644281646 898651660 131427249 289268526 27713027 806236688 866028683 973042761 64299247 896010871 954337862 998883517 822696428 828425297 409964724 688826409 821335270 873158715 769062962 934817311 85965898 126274549 791712889 881940860 878762361 911049962 323345407 337450923 21606838 809925638 576976102 895897056 453171573 571782512 727691327 874968049 962252214 994926814 149794812 290672709 197321632 810657225 790568476 826879959 388649963 488528211 456993522 790920001 606335312 844919431 359089400 684206666 677865597 943740103 450905180 541887500 23062180 959044391 92298215 212381015 562644858 693162018 753257805 905892761 547279579 584051453 153622756 554494477 554229723 566087497 759860423 829711866 184635218 446327122 923079568 969649920 289650447 782922387 991213415 995223224 450848626 454617417 981587329 988998873 308401330 476009129 919751676 943393759 950449265 959777015 801315412 955162808 57659360 252575833 267555226 361964448 319644176 942480331 687225487 956562087 889430270 991948588 755903432 944227312 748096928 874450745 437110550 844101426 288869666 652415639 752135811 963932306 932838962 976253635 48650153 820937887 631479687 823959226 706945381 837086296 321426792 817815431 294138436 958895201 12367702 59235671 947146941 983295212 510437025 580470377 908891583 994516341 365718907 627093477 562596425 969471930 511388419 787048254 312873597 627974792 711209262 977689049 73968496 405481634 332668908 463053317 37396962 681131089 991571855 996108429 737885542 902665248 855962486 981198934 115903679 305954893 720215243 916794980 626185907 824772083 74088310 80967787 954355624 998798821 617193084 732549330 146355894 493340765 421720366 537064006 641658503 839061593 836468743 865830627 764548521 998792199 423227784 912548115 506477696 938201999 387080203 567673730 596299280 864931541 33572645 170548165 868038181 929320597 446104208 647771599 634564573 794475365 207560180 287011481 440926875 844221039 784799541 802598198 699945553 867231367 70305347 368937936 575581598 869584583 424469411 555700792 215652147 710290458 2257166 848682182 508165416 985408941 165755941 600055429 296445769 412374703 780566921 979335878 494851238 968385653 587287754 909333799 867245339 933363814 758095923 859959328 980572232 986491346 461333895 713372816 37557293 833965281 507515320 753284399 439175443 838424022 886448849 979541124 202172073 862318636 455363448 784136206 711188417 856070709 806558323 826637899 494859772 801356631 900054648 908651511 231372919 333446155 38827399 714511154 472763040 813654042 585618750 956776981 927304194 944600469 75517182 794522833 498911284 674178696 632231969 806448744 519095328 663456091 76674055 717920762 850924250 912021558 909550921 931994331 596979628 813789486 932321343 944924830 443996986 653481058 26733297 156852599 171422579 577262358 627511511 869656832 561251583 573038590 205106682 879879611 141580560 323480563 342467982 882224738 316808344 827467357 254441243 872361421 230354872 641275129 434326474 688963270 844748391 938643540 441534452 489769150 60804262 393890464 499592171 806850772 767720964 874756879 116147171 176009241 388875995 816409859 82433015 879236241 452989558 821724749 254500699 469804238 334656565 389338073 842204061 948835668 522932641 661618633 536358656 550996954 717814940 962125926 935909700 973407617 296447472 383478771 939900879 973048005 599336057 841076016 250901505 481363061 296153704 478082202 98100526 573402239 447265093 725916357 622372243 661232191 494939634 976262162 232391699 371710224 786588179 822204186 794465996 845664984 845082021 876538690 88298766 863539761 978625540 985947990 368688525 536974683 919999581 964023262 5896775 322715995 232670256 587031830 158863298 643844841 751629263 893429949 689172662 986495181 554494476 643733508 725055475 777194989 49660251 561083328 487674714 572525505 686325854 909717931 776610640 996115981 797352764 850639021 440533841 828504473 246746544 426436087 50822589 971555514 191438533 451955674 472994452 795911986 67418483 110771526 784332940 913447665 753815514 813113985 358143239 884315662 414123528 787874341 121978870 668497285 112360114 521579018 31383451 904849987 108656424 685185413 652001140 924970873 185435834 216976796 894226731 972230703 527002696 819773534 993413885 997336085 36562068 806587660 203011995 897649007 752511645 984445583 469693160 807691906 859277590 908884336 190193805 232050214 365264757 657342030 581346074 592711052 547766968 881116048 307175738 408469614 751888486 929104173 899873596 950822263 200058663 280940812 30478611 579686802 40837307 434403743 126750142 167297727 645401807 883578026 313670017 865676667 581051548 668520513 418846083 957054454 30191157 415617667 444377091 722620530 8632891 421608331 880801016 932545026 955788404 982710157 423989049 799141877 382840797 452392227 426949761 578528374 56745287 507461140 117664824 280289269 85400283 921621384 544610309 698207585 184389765 233161913 79786829 666122800 58995451 902819021 186605687 744345051 326894904 855926253 840394999 876938591 661817805 683209767 354085529 568238073 659249995 930939067 662891489 892954018 498095673 678011946 907922678 984956760 888849408 910405755 122635592 608393515 216173147 846903077 899746803 954931062 689243393 847681904 245939677 513974392 819146054 943389325 932479874 999342092 29637042 624637765 66267110 951807418 578040424 728990458 577325719 603191310 491005964 518575742 649111584 668149529 302598617 479550828 205930800 484249661 410102884 918157625 520721688 658270018 978192667 992605228 112614130 313949978 340502458 927998457 317407734 884028385 333221731 608692513 766790440 825329276 472043412 603378562 472483684 479091420 237809752 920637986 784968441 963628774 654965134 952980804 276224805 791377124 724391741 908073854 606258533 916122688 971789765 978321847 959190842 964774329 722347643 753026670 248861793 810905850 647711986 694367427 552170182 908774907 581530653 636154410 78515925 404228337 65147207 572228936 202185046 213202609 554284783 988163066 240612829 328355297 762869183 867138607 559709152 740260327 679652263 779327142 961686055 972006845 245052591 274314644 608644587 869398712 9736486 738160094 718253467 937414548 839853106 927876867 9138097 135112381 21382072 595095800 297656618 302225594 764495788 953875748 279100748 726939629 875685040 918172810 288136393 497811366 336664509 447102674 991366893 992522510 550299696 763013353 772367619 885388371 309343178 859898166 512916841 626422846 484141016 586948702 30389461 173576343 915800373 971834564 941013683 945163280 51866858 327419517 743667083 799240440 7680435 383534338 101674797 183729271 631689211 654598076 612394418 892727280 593181794 683241126 577713875 580138058 721349730 801845159 51339489 135681999 408410104 408847812 377507054 676890795 280660480 788427228 68625302 290368272 415727599 878337093 478267741 717254706 429959105 507719009 67640480 175615803 987023099 987346450 311452697 636345944 603147370 663737909 628292586 952529594 964734621 967671603 82429364 919938053 640616791 862090523 806920511 887217757 303998465 412403251 966845419 996451790 92601367 401425487 612857783 781222018 983658953 985948817 560127519 896197654 836184795 986665058 8147164 277431442 139130388 296292050 659466996 833376771 66721067 778530670 909489691 975760126 162153318 648895403 69982174 250178891 25159830 858589118 756903130 840788808 358613540 617936978 189096303 388096228 485345720 894403851 623886839 846206996 268681481 645357766 222905957 701753353 215235366 721789812 298043248 688143087 455192732 923578762 566682628 681359383 692739801 981858935 476609004 957620256 454995725 644864414 802281968 830052432 521720033 792161748 402676860 503218629 960723574 961405680 767720515 770165051 179838757 896800827 869675436 909611162 968906459 973779358 114412178 689837476 906705961 998067873 349147400 485173164 844600657 959789213 601765158 841375528 424581311 482847108 198014281 628460293 5106555 329130752 784682346 890334378 421600900 424041914 606825501 920285629 620046507 678008094 351953465 459578387 571441465 826728631 565888093 795985465 283048248 770907507 290988076 529585221 941932901 964475248 647844138 716108373 484753160 728090331 696493820 909232947 368020500 579598703 392009758 409715099 236941824 788814585 634144906 921244721 185164815 197541874 414553219 511443922 818255701 927326906 492021384 707185722 616039363 895437560 546100921 892434774 45909123 385177037 334295858 964293625 790982874 864149941 707069822 755538480 506272298 662550068 89869925 156654665 797325194 990861288 891746099 944775505 867583940 911590792 522914145 924331091 644738172 846853192 471322659 492500830 354662622 963164290 781844543 825375492 496954183 553635729 948052742 977792924 665682619 757957466 809575440 870829703 915538146 981927218 172346484 375912597 344372450 646388224 886564321 980617056 156207407 955511536 762975114 812342993 567767954 827136577 133878352 941312782 759670098 985276650 207139320 345591821 663733158 764440261 475435792 517082997 142342219 990096350 811495301 996829840 568820053 964626241 411393788 981705730 199172264 971751744 695880615 796258591 826906685 921183356 172844622 205564727 189498932 286219600 905562509 997832504 95446210 542287975 941140114 990565035 953164425 956250495 740247130 841613886 410964594 512909318 205910041 652412964 596077423 921389577 130059130 368922353 419187343 677087609 896666775 951718908 208500734 328937801 515216917 640393701 940598877 967385262 773063845 972233029 116999768 147106720 147535947 696027150 693216124 910328378 348263517 598474039 586167187 979964109 225232959 490309362 687854055 766791972 915699269 998524569 862584632 937917497 177919536 389918660 607423817 871819826 966405543 996157227 68086424 796738859 589398136 813519818 500493166 835794220 718346522 988893883 128489962 889225342 391020411 535708404 278721623 609584799 350252630 440337714 488798012 572075230 50240557 710253483 792158068 878062583 578090827 658429687 820449078 986966502 557536041 852901595 473127784 795190793 649910343 697597732 822226286 945743459 530908384 625998296 571011043 592589953 779959676 936933354 769437490 989061579 667785032 711726716 487618892 504012762 209734156 739816944 489553448 703819067 918948934 953770212 732876536 975803192 320742907 756296190 105208488 622920264 598545531 793564739 411560599 760472195 431193576 998900792 334443699 475607288 606303213 832046536 748700142 995635867 725504165 861837539 557581921 738936285 544809787 560033662 843269453 985021114 252730712 394680386 720558462 988212328 608414050 901074137 628170624 896160043 618417764 665373710 770669270 930260239 8055695 635971764 26326466 629168727 789828406 796936937 221815492 807680620 809485478 871423519 810257807 993197591 904407531 956342301 705278165 934640314 332843938 866716860 408007686 769842962 946459618 982678273 712263674 971791363 264066268 723589713 596992310 655038155 360553558 486186035 446203362 565894186 939189803 961285413 204027811 433347976 397668914 882599303 969211669 981343939 333617640 782166549 346218385 711834555 690604443 970992555 64608828 990025023 860371932 875808056 607439422 782518919 499533376 740881396 795300310 994004398 359985736 482366105 46122356 554119339 669699440 757808513 410794446 972707766 535566762 692002728 280123924 827181702 782161080 793150017 779284720 961390771 794991269 822891731 489182015 712715012 831845115 936265582 101938181 970722773 256006592 863520362 606318848 757634230 776988374 910736098 385480936 853380948 514920122 853709914 456882035 849626272 978939988 986292212 919558684 959093059 575006083 673690192 371295948 512647031 422580777 697325931 326124626 541847003 612888475 967502773 192371366 590836932 938978035 972168934 391796137 783243187 802061928 919489928 821370763 869094564 122396949 961466653 872756352 947804960 29318380 426491600 776681967 986062221 622936556 768762593 163596108 524700294 471770885 642839072 278899467 672103948 690533784 995172087 805617326 910586766 137620332 883686435 602798614 854564529 243461665 246324865 902010456 912164506 420831504 624285448 510003083 960956638 343902870 905372173 977296271 986209076 197417425 736348420 975159700 982203778 832849500 939261494 111423877 917549322 88345447 131921689 537126447 878786503 142459695 579677003 583417892 986736662 21308379 755130400 968824506 983613338 662056651 741173712 690961783 909418898 166641848 833362673 204126441 817284504 144963112 551020256 707411526 792562311 584682716 951886232 231480787 478939568 339532058 768758492 62958016 559457461 431105061 749599434 678369884 976731750 224411833 552874061 858380413 939501199 34315301 959320042 454557130 743112584 364025950 962505500 114419414 746826995 910797857 921321522 393312242 579826902 544857050 712119143 282738596 345116743 507762098 751160922 572610285 591098248 268354659 598480646 277638970 734142936 913491589 988693199 828592738 995435782 635340035 750760535 682079479 939198700 149510985 441456557 761909736 777705119 804152376 929129023 707998313 942738309 519928731 982574036 299558409 672953836 153522512 797173254 285728112 777158912 223305702 585029153 270997192 324510566 194582055 280934902 540129946 774564107 537499988 780640557 531380269 736489672 776590352 883188357 832923460 987969777 547315059 721295424 401335411 783349427 265916755 868633575 119610519 797683635 558219163 584161217 998105504 999011629 550725791 984807324 296509725 653862039 883906385 954936700 839635856 980911657 774580609 808819937 566238483 603488306 710486602 876921567 998269114 999218181 150176055 608722253 604747890 696162718 659239284 961151317 715198532 956464151 682161472 865669510 760897150 938951620 441288090 790712939 364207580 761089252 882710439 899624032 326716317 761777779 367762833 700009947 415931377 980080154 824811262 843547751 589291849 797504682 75506807 503714321 70151341 679985807 786898674 870502362 289350961 965984914 448501051 819756322 823397373 922361524 489773968 769922648 28895523 858763512 392359782 789275382 762371030 939630311 460500061 789443500 551241152 780038046 555699178 661227468 297340389 487053625 917112705 941795047 418451181 526869351 236761823 512633111 436577579 598908925 791862589 818585395 952924857 958584869 942029908 948185909 958998614 974256170 286939211 312633127 302875281 953378300 46680805 456409692 420023955 720022858 790571528 798467642 818033153 880497117 259570665 846063902 237554043 358374621 213830350 276860378 672128372 789432864 762233680 799328332 893970362 987706739 136816449 249607042 274132021 542364906 617242265 727999193 286047367 401450584 758468765 860172081 196924993 207817639 485890130 697019994 186741215 887640643 824356303 876321035 910396654 948778733 129668614 874512910 820709577 882406421 236079127 696378772 383644625 665483378 539223668 630268251 453769503 728796373 374289150 968121433 203623776 410263490 220490914 759659723 771867663 838796418 604176502 771973147 897888895 985189360 687606626 811116212 72343498 831160813 88800628 850273898 185062713 190337648 875035773 892146188 74685673 622208688 626316068 963099400 227176895 643179575 390142246 871126839 146991396 421762962 141620421 357642735 841412793 944047594 191457108 898164235 18708157 495569330 47386654 536808605 844253400 925561463 325357184 946556517 560745712 607361427 694671099 772448711 215212544 339459081 789680082 829658504 641968150 913154633 974939618 976516670 722826100 753366074 814359524 966797232 411121524 737239647 271047733 836177916 235971140 777979994 257236140 542130521 540768144 737249303 497195980 835934966 119711959 789002671 304340429 710242386 503683589 910573611 671766450 895784637 266846329 908186316 957600000 981799930 101879964 110336021 409607030 654276014 765967156 803397586 492291205 740962044 74301372 535894376 97517891 425133779 762434001 802717167 956675347 981244603 679237342 853213018 142497844 599795404 868796270 944165013 786394683 921260829 161001942 540979366 713118867 855384396 333188904 809825791 235350461 713964376 828798837 835455731 453356593 987490043 498703968 665524335 32813327 723521536 471935240 781439802 625721108 891637911 140390306 659406168 747570253 774687143 848707703 879345996 497667440 662739352 478744589 569682132 918248665 964666965 195012004 379107842 436202317 619064544 461714192 551526041 855736125 973872669 166914875 929202719 649733839 695902693 985665958 991458103 62467460 786673863 978418684 997203728 636126660 688654117 165424128 251219650 472385336 652464643 703371680 767373152 846178164 955355507 355584228 797722949 858542374 977689023 750195702 859606942 837035578 926859678 16673665 733160537 113874216 327128907 634847227 686826253 726875877 775676100 17620362 222041938 608571216 963725966 378859964 576566892 228378440 327531025 839751129 976564438 887395862 965512981 843628330 996222679 800953899 940158352 580026270 871200631 442473793 447608931 863705070 882539018 585852956 829607832 208107244 655975096 241671355 394551616 849381112 950468764 821113035 909808020 565859708 928073722 519350872 798562521 205389551 437166016 752061535 821823637 752113017 954299980 109849483 210937721 156725560 391612332 199389909 303215616 664966296 845034678 231344249 823062050 119690429 857535157 926013241 978935623 949170374 980030397 311026584 451582797 511465337 836948591 387343315 442891587 325322351 743910816 855476533 912410443 871696106 922643567 361781499 763571859 88197979 465415872 543763127 653825657 826053137 993354967 910792670 967314519 732902658 981355314 56259848 688331843 282786678 434331398 52538061 90690773 531627332 720364192 462937621 594457228 482750278 810726401 483222588 975992648 994058813 999328707 800386467 821540815 911927354 966377489 8925224 145583841 881527129 899947757 796736752 972491789 155779239 889963188 220685209 838606689 158429540 692766245 103081934 524022513 212966521 963126310 609221844 971676139 22367701 799602316 657085858 914977934 795223232 926818526 479729774 648393622 385132894 983575651 744218004 991258275 22190925 717671066 601442775 922665687 841735906 974505614 372938582 843057410 834129038 911123781 282434397 351575066 444716868 670048053 249724865 879351569 393003435 418378863 707444719 862997918 172119747 351565570 181500071 444587273 613256278 935347601 23065719 900110497 328402411 520164482 771037343 855222575 218344551 375910689 155544326 376949527 398168962 945041629 954895563 979323272 679028438 974401717 2596898 444650904 171336660 588012461 753013995 796955484 790400225 839488335 604244989 725475229 624966880 835831034 792703832 802649243 810752498 896450333 545053253 545503581 353400211 969610924 704924184 765796855 396214708 403931738 412709412 853825817 485256071 731021068 11729761 658568408 882379418 912941818 220023956 806435504 65468289 341788163 389047327 674583471 316318975 446710679 295501549 678389660 423986552 729775571 906660423 930306785 220651364 494345022 664876690 709045322 537816605 677188099 447296272 563721068 153650236 775857212 36198011 408948734 366992315 453471714 527887604 965737166 22970303 414199471 543614435 855234855 642232359 971546011 513724686 762792096 670894139 859870128 785509870 840114223 414688502 425147317 657890225 943790675 734154629 897690485 2177321 165546870 738337573 859386912 266171906 445985044 130641804 475665369 80417146 869844294 651367328 777281567 863662180 952542892 507775199 676968438 826856892 971508636 473443879 535126507 305810021 966138560 70234246 70493643 608881469 764634428 467213492 823041021 806488675 867318065 189061181 398406739 934027499 993237195 2553552 65415560 432099864 750799395 36486774 638055388 94153016 961556342 209949857 211289629 181088048 731046247 165559118 336373153 296963479 368076466 811669817 977340089 520042326 950247357 836224334 875334369 497402574 645603790 39540794 936249585 616047378 930985559 405618662 950667577 885122991 987329960 680945651 822188584 160665005 423139822 201355405 907927417 998803756 999367388 918571240 942752247 979288600 991691059 812116257 987590393 284117487 998774725 355808857 766776272 509554711 569218182 136179474 305366439 87642020 389700814 846676974 998234544 749829644 754222002 565685075 838182561 768234163 984327785 720525263 956141473 741261646 993601027 234411431 464602424 23087500 385808495 990890203 993169660 816595612 924847794 511532573 877107533 978953114 992527387 114319405 889600220 202266330 506711476 239594881 778577935 244844105 464450295 971005247 989748051 333899899 679164921 617768195 987519150 176823603 988878630 299369666 469669849 13181212 499680516 933806935 979912853 614919293 916126180 897915425 915609847 232048208 643368885 593339315 708021052 563383308 638637353 321503951 750898640 610249163 888715105 204443491 318017822 863011799 916091478 483661012 824258750 64805392 141063619 407527809 874824558 7830644 49455672 876501002 985130171 888125037 954746162 882942824 924468685 513871262 977270833 346511025 813162336 483329353 795945897 694211977 765689154 799317097 805172959 799647423 857554499 215383190 603740594 564510213 914993663 933576299 949627553 220359045 879262582 307236579 991369160 59986301 609229663 936543050 973147705 845625603 931987460 863056113 960925119 166851126 315035458 326361883 544042238 642297655 755313800 758409225 799700718 63439306 608229541 768190949 860027044 711070862 749777947 478211488 998464555 573491146 681266770 335622809 460870940 992487354 996657633 731222717 932666299 55472059 520490112 408130635 512454424 275186061 825014246 104368683 771064952 923730567 930070134 926115957 933608854 492077047 809401921 870753826 951919069 833944861 871392075 201459823 315446266 615826896 654057244 14499076 152223353 588097949 861684655 764067403 843035948 979255312 986801950 584832893 734815425 502513123 773811217 309688657 827546489 851012665 944336257 910219531 971305156 945760295 976136706 84911918 277181481 401429200 508447720 546795673 816209842 15388374 821338175 305569710 689035753 173169421 178249888 967244561 984031068 980012286 986128503 617082576 752969698 986519644 993033617 108184093 794928672 352985294 636284125 71530680 348239324 981686717 996587365 448913764 793491590 563373919 745450528 72560631 565400587 351016510 416436856 883967346 903807837 158149802 484089225 524404289 933351755 19866342 198670038 778902056 958933396 208366124 827441633 188132537 362732614 333111784 633919350 768116492 933560534 869825637 896195267 823715905 902816225 441739381 584791137 166641106 432668314 233037498 939371201 479935168 978966033 886451784 971675870 733921105 807885745 798111058 974276745 320512620 740120197 455007173 742437010 207149679 734662106 130239276 413120647 197566482 704231716 949888291 978376953 514318588 893804688 700184341 967428056 527131211 980587280 998858835 999376773 594870174 840575614 516541164 831322913 512642979 786405139 262180608 854769843 384396895 668654453 667443216 876675639 491544471 809371908 160584523 764756066 83268747 685347870 363408938 648078949 219437223 547576021 276275067 815642715 277086188 770805659 598476884 961829284 183072309 935007637 126842052 812786015 165624074 913099869 166361252 613600839 471335278 700884728 889889854 915123727 409916162 924606804 822250423 984888246 115073761 198660843 767236424 862859936 352441416 473157516 501642249 572919243 982067062 984962435 607906304 670964047 731474034 998810647 621952609 736745505 103584006 149476276 35865520 397399317 768206704 942758465 499039538 715222908 774095157 908926392 225549358 986801405 829482308 953593422 255335315 505076686 951410670 982074126 840733060 887254772 700295683 823375278 951966253 995932294 151279883 639122642 584470979 678502587 773029695 816046050 763648489 845648947 725640734 860875854 763951227 822596847 138982877 713608599 577937843 931116695 537287965 925577450 479170448 939314082 834635251 836806417 766513358 844509287 425376 364062629 450940253 503381731 784712390 973173397 755449717 875478308 53055067 684866217 847421180 972564996 63143403 141911144 727758479 895036832 900737873 938041118 945827365 976900159 375268309 539754884 298480842 620449492 611916243 975591730 606607960 783609807 837784358 860934338 315722068 565069836 17554777 24511120 718914816 763169331 571777669 590239689 979340275 988834846 884492139 993520338 647343826 751195247 287072736 714345251 219320774 850545792 136800234 414965430 318380771 474735316 249718937 323187401 378832666 811909084 476447090 947323456 368749201 798113863 792077953 907712860 550530473 746582964 958414499 978596671 644947390 744590580 201730261 765534996 378433991 813990036 388473279 800077444 688529144 948848641 274711489 685572324 506938528 969302394 688011463 806003813 265414743 896394688 382637325 926520544 426068899 773961553 95457779 831307076 436890889 513438487 695390675 972306611 987409890 991706912 337998653 924010364 865395683 929869700 974635590 984344746 712499607 838620374 635481272 889861898 421029189 750257884 950505342 984898681 926057072 996650071 571987649 777179967 484588335 751937800 50455870 823372047 606368644 726401042 719408885 815356045 659133834 883856138 668132571 788061584 577149486 640727267 744661017 774007705 200814105 358801569 508015499 790063324 263407199 523988883 321997930 975347505 572047646 702169565 51364705 930145569 760860276 954883692 461628945 773272719 785414055 928564967 962225418 974873266 630899760 892058190 633654360 914798279 502205647 550034630 789513754 799300537 98837031 139671318 548848628 940438923 817719695 934794526 788673004 870101580 683871774 793738823 889245166 942510014 841579776 936581448 736117496 855311581 254374998 320047008 947331440 986881303 784163053 833815836 421397859 822713972 554064107 939069476 190924572 782958089 933354546 946280191 433037965 503678032 973097418 998457455 321779163 722156825 983733478 989275155 490632971 638749136 930443798 939458820 796240494 886283993 669558644 837796383 52147692 129770080 442366336 605878130 419996716 842357868 357968842 424974061 878297590 921437943 821008371 951002006 706877777 756533355 27137381 811463979 323826332 419070032 725650415 936816964 708026701 975799046 122293388 997429358 143237269 955123521 833566900 936627153 677287182 861334134 411997194 855233432 130683664 342642886 123213289 507552725 559702451 624359226 64152065 128433333 795036308 999359900 364314095 415833042 486028411 505831352 201079093 659295326 240352378 916292147 720419051 973431327 54184254 518285919 489042896 493316921 584542835 650221366 332025414 581565678 647301484 904733625 185729870 891887540 962138284 997580181 44587060 512636193 947583673 978316146 519582868 579794034 486870921 599807461 983422703 984630674 444842927 704902835 911048730 974225040 820167795 963039463 723214077 888421839 941708358 979551308 319261201 412992767 373229868 816340248 403035127 597210582 924391284 979532373 956618639 975883177 814634648 946498192 362926157 928517405 484065691 657590376 556566704 694110954 899949167 918611423 623446073 662428865 782717097 902047928 316659220 842433356 111643509 516008126 147979720 457006933 332462462 510943946 897763444 909055200 76061246 324592522 871227742 977203146 492410441 667764036 874959209 975511297 756686634 971365593 326169342 852684845 645634722 929913996 780204826 960916277 678595773 969875726 783666402 959630095 325758723 573948831 63069494 896469241 481858232 677057604 623216603 773942165 3820027 851682484 16743361 220885621 615247622 652427334 357829448 494086695 396823113 951774455 739236006 926876374 415109630 426733679 699120898 979357425 628806948 905286593 772501707 814472269 143657461 530875847 557245643 959106561 834234647 962876957 135397408 743343312 191408181 569240934 122254575 664216478 765647744 961779939 23701035 343373818 333089132 638507113 58237203 174854039 943664311 959173275 219197401 851790311 570125528 760694817 800238788 898776148 913027098 971036191 384640935 534284052 861024843 898418884 795580920 801054881 567714406 855252002 5039513 915425159 959104567 993869094 141471611 164306869 194569952 919740883 319509309 857500512 529572290 960087924 11285461 94336872 153624119 243775022 3278796 108328059 778714635 942018739 898645049 959697078 147156448 645695804 915193957 948968203 50838690 461621868 114392430 972134315 135492202 813219709 521346040 964118233 303748054 596528871 101496902 504719917 480531349 767825016 230589567 366773675 522677594 745481709 772973486 963135911 713985480 884726434 211827696 285989907 728346750 912440713 974098409 987658261 189727973 939210862 777541717 933288354 752598207 974154333 19074619 531678139 166549332 601288956 649386716 775406790 712997493 900124408 775812972 829408321 13840874 759330332 807955291 885546153 956577528 977948267 196665135 574260312 659643123 673240459 257497387 585952029 986334633 990534761 369805202 881107646 427909817 910910403 646000043 952533167 279254101 655536361 814383401 821636787 855510833 944738129 282148362 283668878 625553166 826348898 924776132 969077527 494136670 757728311 17829703 614235354 930668050 934474870 953275615 986044695 603765683 954192000 665017094 999392040 913016639 948438517 775793379 964107927 318043791 444162505 680867083 752919051 105683415 591454762 671260350 817176823 136433904 665912247 122680760 562234919 443006050 446158735 624728616 936599216 327739286 673562533 726622888 874529764 263981301 354391308 359243540 522354364 771545590 851450295 794915076 821950771 872781475 953330668 310713260 759444292 847577935 888543298 991723602 992905887 130729832 734359680 573475063 624024403 864880185 976907225 748652749 779734441 45553558 998128663 369860247 872607792 222101465 931306070 257325981 303077698 463387864 705861882 279046625 635026577 364779808 770803874 514845622 764715537 450205060 558851774 443107130 870123283 890800228 931145602 524386806 850859308 717474989 795553353 538343304 626453717 435201275 562725002 330746199 933580230 928807033 986638493 292736417 622440779 645984608 755862735 926650463 946451281 162898381 608573517 420506143 470771121 832434794 969148917 587206192 930141163 72271063 727947665 366570092 947766009 268466716 865058433 803407621 908541662 262890496 697616002 613806030 960690938 735618253 752086570 61968811 863907451 121486509 442876866 314246501 871277965 315216075 436331828 311473842 434288005 210010521 722130331 635981553 892838985 930434587 947627815 960372206 964819587 827214481 878059829 259434511 750979057 437118597 704724528 735894741 782411822 666318729 791056988 157572451 943477444 402208984 616493734 253188164 771035939 30767396 599496431 885032686 989988143 252493867 326428090 406351479 690495657 435217742 654456846 397834665 445077527 381547718 677491470 100878174 650846836 126095534 677161719 906105178 953381063 914509705 918058386 235241112 321794417 805551796 897010018 889939279 906097754 848832477 862823837 418107869 765181116 922465892 968481765 778524131 905136481 566043163 649166038 486813393 723615832 420832766 870876418 856068521 959475395 370659191 487603418 481257442 539222064 600218790 624603086 197233176 468230663 639015084 751551155 86946639 419838708 903860174 931876504 844657974 998059024 695016318 995888066 440739876 764330302 753581639 791831858 111537031 822516520 618175496 647337207 400235184 811635745 557358347 774402146 549646022 580132590 148326022 248783819 86767703 503030357 531768384 565061202 713991215 723338960 19256646 50619755 636627665 700684559 807778505 871230528 86973791 385074345 472133079 864196930 287733734 945611012 330389493 645801661 770253213 902784329 519817047 808166349 207941205 624347246 853582335 933570295 332905756 524462419 497119352 497156288 266561068 623282383 697018771 791017603 390277996 415176844 993593784 995501838 417901500 867960675 845834547 936929689 6406844 316002683 32997083 362944394 281830294 957175325 151951083 318536808 310009094 551296099 408165323 761901358 903219124 987510216 352511575 506366067 640004717 879174716 300146390 501933821 406784615 895952890 697558451 949239429 114198046 656104070 437294741 965516424 724391411 750005233 420832721 876233468 304597261 689039774 139436986 940512399 552908551 666342256 844784200 887064191 1745636 742658573 88370874 92162344 491846589 666085620 924218250 981267093 114484072 847404309 504518034 992734768 110497682 165259211 553335122 597179112 391905527 965303477 374691920 968797285 473545721 624145080 721275823 752236236 871038710 920984854 47421545 920245016 608777184 924978061 222266671 928910442 41747522 994629636 398869984 715975202 428408299 862974256 577796061 784237419 311338334 940873724 305126026 366077978 281451522 787087392 970471884 978290679 843243116 968949201 982696596 989287482 181024250 602158098 509528478 857674770 945561515 991736897 817615168 879273530 77443604 241305332 656943088 675845365 240887304 269823418 346312194 767767842 851339247 919364753 753409929 793514853 510191262 782971883 75479158 207510876 424002256 656365210 904798825 953658230 177691527 497868544 223902765 862649947 380651329 686473467 168128387 323645557 462470718 809901714 30098210 546880925 457018852 761162075 237597594 742083715 165961833 479243485 43568852 682287398 636081692 970673573 214836820 553583356 938122568 965431850 381953163 601746312 730351354 790558877 261461780 980709548 667399649 799422435 128486720 599127856 338191245 767832294 644019181 782455742 492646024 595749270 693393852 949383273 46522390 858224225 39516806 81223775 88581346 828945407 768408845 832843071 119330537 924588579 942180035 953621509 87817373 91789424 236633071 896682777 146675860 826178555 219060638 887991960 726914405 845294710 589515335 820119780 229608385 707056029 671795214 689166565 312058381 509524069 189538076 272688144 1571741 9110647 869359151 883544715 894363305 983252512 900439670 993900151 355992119 433882844 412658307 956205356 760041722 913234021 934451997 967780866 844606702 940952699 419701193 867052831 530931556 738889352 268558033 452941335 864587629 907387830 102173551 480214700 914085232 997109183 368325139 984235602 778732126 900619592 356672275 490787417 341229258 786519836 683861271 896119538 139941210 963324150 590984183 949905590 668628289 928580646 333679562 953996241 931296404 983301806 978526699 991031078 957041740 976758036 346792661 732275017 184351821 760826459 378921077 414557246 847952112 919842160 32115337 702185744 579866131 736769038 91583820 634862338 719280038 924373782 955995533 981908541 858340997 882517104 534065793 855292898 871678682 997929809 462580356 595701690 760349668 773088860 177059771 584610650 914592399 982036519 701599634 955054610 81779569 888972360 655636796 903744516 414274833 692336923 346503330 921688719 122335228 690687127 915575642 957298181 163984268 616230753 341190354 864984656 676684995 883607998 444795166 525327974 165673541 843346176 729537985 880155614 671791021 936812499 552744118 787019814 230219766 535461185 366534818 971487439 343595927 850530122 344339551 762143271 537798367 740339934 697871591 817157460 14376701 577131977 680698752 962154798 484844194 582646045 210416826 373459979 686181281 911310002 935825755 970673692 253161931 862263339 213542483 723707432 471206172 594563938 943636514 949159040 609186278 960850241 464551276 696769019 818059452 939795787 83045423 235616988 224032840 819205544 946525388 946821513 30499748 520626310 612299984 917559935 351696330 734989159 476773476 741127600 141779597 292358576 847410515 922314490 125063258 958078364 449628789 734586793 729136955 945040421 849765366 984561199 186019242 835015176 938097773 949202954 337506645 925171172 815858814 918416732 751480501 924907057 832374944 869455072 527927872 614411149 352121467 428871725 113135852 364606457 790463250 824675049 190342755 852620589 330103729 889288058 934021185 959692859 866966056 981777065 178580880 468388347 236353807 528055967 645047817 826052796 958396089 977186797 29473037 454093995 219651814 248468736 533219690 955572094 488346119 517599485 97602816 488269541 32608864 533038241 70035607 706836551 722647656 814495304 127775945 714424358 38580509 199433665 681464993 783605350 728965976 755974434 398961757 819995193 266106980 856116882 258507446 403460589 317396327 613856000 348475698 946146978 259575750 814933522 704009432 942296499 705163027 796155154 608680685 828335280 966445979 982789964 195916440 349712454 677880134 914064040 215244937 958061267 625576208 962152151 491596172 560892647 210598726 753269593 940310911 992199320 380833674 885274691 623046583 747823583 637088221 869524496 414823715 619046630 474994893 757741145 654886700 989293664 273107974 605869858 578700368 796461521 328661648 478145017 783300977 924061011 703878280 822993654 524892763 836415200 209583923 442244815 19477400 279835070 177804282 306568563 314433473 498817002 411121453 506461558 574930711 732933309 810283392 980123410 318942310 915238963 6275876 939663310 968680952 983639907 475048984 808880334 144843233 989368324 774459455 855502586 492294375 790863523 396506851 942718864 307261206 970452146 720503022 730606712 804268043 917321763 720951483 797711859 750675863 794512391 773406432 906909270 772120728 832980411 145996125 333915432 725692088 979425026 620021105 833474071 936328845 967476618 350866073 523873264 649831129 957488442 512127221 607615511 374906575 889412569 684871514 744748872 554242341 953385376 828539247 952916666 546200834 620536279 674408163 928252090 398307419 543723841 826288221 893051550 384855002 703904649 229929290 923223145 448461282 798979999 433563816 597386796 345610628 658867342 240802209 276246224 407032553 768004405 359277305 387787498 268460807 747439684 741212870 754770005 203199933 419967968 190079527 769998477 729590453 812636454 168209599 565612551 765250447 835288954 793268610 974088848 998251979 999333055 349687638 531899228 851313811 873061299 719468085 927233621 560792097 717701264 604520802 903286371 23715373 501125880 791767305 853046189 216145617 597806996 822122916 855406714 889142471 895660534 786492886 788653296 986494756 991125919 223416808 816850056 6425899 440165864 165111294 252028942 347676216 983199922 934155259 950347523 930641384 965380652 49083458 943261457 201911583 698079699 802284727 930974572 345666595 693578002 339379115 778906762 130814089 578931547 342886226 680766066 772874072 970565172 437856772 956780452 942954493 960122969 11541885 303181849 163902958 920090032 236528078 440548742 11645062 659674491 833582518 905790158 228861609 926067852 217892347 351222525 737460525 867213916 416706294 455519667 6207976 214717224 266059993 286007578 508820422 908736510 221208413 960399498 287666134 646873494 945831743 957365950 817396188 920572221 176944319 870278997 631398667 689411751 189296840 424747584 226572840 314836368 761574716 766507012 618020819 672621090 939601100 963342387 125362605 385466092 22807768 202243260 34602895 498270256 317140981 656517540 340218811 542978305 286669455 991701118 31468930 294508557 649120291 816823108 329355751 572818560 345205129 784113116 46188900 107308717 720985719 937206772 588189873 863161797 151641 304018804 245626270 745941239 357458531 814550648 953579904 967511922 713445106 920581930 877186406 884410170 428019282 504336965 548959984 666566045 325020720 348537615 281120461 772805194 661174953 850209097 595060910 723947809 754395841 981983469 24994242 478294354 646260763 843680740 311787419 740672563 641926570 727973782 608587083 897578724 606458671 809966838 388211896 414853868 28769362 65540974 226726564 656238889 525134888 576785348 757849966 839853200 376627516 932814250 48686092 416161274 551829541 836665764 267678742 331691275 558173131 951923622 614293977 627495333 334684758 434255872 853924393 878236805 916407488 975508839 209979804 674687731 923995740 951181357 338645451 921874817 359898348 834898119 706021191 932617382 302159554 867305380 900759217 904354230 948974973 949755749 690038811 862728703 483930292 656205232 670451162 790743991 100994519 752962190 620391529 933136793 726667275 924844397 145304766 451408238 977113462 989646606 667984230 810958580 419330630 459659150 783972992 991996775 930556394 977423504 67952048 460786745 866177563 890523214 821755221 868278303 701016809 720982675 628259404 677477870 87978766 572092575 11666588 260823958 800898444 909806357 131988507 442455803 919034264 951073382 862874182 974117081 680905866 834058445 43068641 900714653 162679102 645179920 825464607 989829714 188395653 361965772 423856931 934288585 156256643 327224569 574161139 678740910 341889123 363864550 778884442 853137427 260364882 593401756 301801302 833366271 49927257 504488439 801834569 993842316 305947354 938552319 359249394 489725804 970528222 989939160 272837846 556836737 918545977 958135443 158287516 787063862 717156256 862321752 469118471 888391242 974606045 989778590 545169817 933316919 491668777 629587240 773617920 915494499 280297582 665802228 986077564 989068419 93192075 572030774 893180856 928295263 284976644 757521678 65566696 77937985 172009643 613947017 937161287 990947536 33023713 522366861 873484713 887935845 697932881 912950018 510017305 774026545 901049005 948493757 906268068 907003145 595461055 785611042 134238231 772332750 501359740 790005514 61694201 636367854 432431811 903548334 544708503 554149264 501027349 599689625 265606089 789903325 963190136 969810580 750468752 821423842 302533023 628726452 480727385 774796450 640023916 891072669 935389102 968127380 565180869 766871003 148518786 405718454 431491905 464118301 112814425 340294267 495838200 702845986 86222144 277750089 341564769 867121655 164860635 169472086 937399682 966122535 63882245 682660039 475975926 885251284 221070532 553769637 533495719 971076313 540752469 541712347 118157735 240886085 1339794 762098494 155937284 207302077 808321761 998698650 234094246 597547162 954076568 954549038 109696953 610751407 505310344 635489669 255742879 388363830 225469733 786277623 133143062 591052357 383328405 607207158 152191790 321396396 180304051 247600771 542376107 829635053 650428711 803324266 291567304 486379450 710462642 766742077 958224938 973424335 864692092 979363948 560385822 920191333 12842781 502679697 675829750 863665197 408824128 835638503 914847945 925023362 315302052 543578596 691964888 976013659 561272169 891491883 976334413 979328044 146179597 906070871 271835969 337309688 928300639 954980900 899107781 914545493 326591873 461518837 984462210 990615868 425751146 870725006 532771773 872311802 821127418 983577716 44794014 412109690 81312479 862254558 751053144 899381600 83610470 653633668 40321585 75319916 629597900 743309685 245231349 626164914 210176998 710602230 218645401 237847126 320640341 611711334 236677846 423061567 154791436 566586529 407519878 780526273 991254954 994764921 229906577 586460032 313144882 643217887 756163656 887254199 655579151 929125087 669786993 949342956 86956648 145868919 330084455 717440306 386523603 878849500 566460244 583362929 82713947 614293800 689731939 801706373 195680292 862877989 335952409 959071662 310019094 622717801 423868830 729658199 442675634 524875438 526643426 767878985 174373372 180456637 70963510 667495939 538675720 686822097 983309921 994250824 367626845 427202824 276640513 338110943 595907370 710298554 988606927 995120200 169391388 832223957 48627981 417627805 169073426 270328921 676191798 959324331 910119939 952837202 93118987 121505452 119664468 133928167 968675020 994977781 585785696 907393984 118853462 457189086 598496991 906321876 63157946 965853465 478542077 709757554 460363557 834818154 690094830 836159247 388173171 645101316 424853343 633352442 600045937 811417559 427519575 468843014 787968666 864808056 465264091 544481019 789402998 815010813 138747439 490282221 661566509 887849408 656447406 757251759 619188856 927195226 148750781 298389608 450201456 979202597 15838913 531257417 502684212 506765888 201006042 353373293 233291905 395322141 483028751 856901829 320669832 722611792 443884314 479560259 322918915 409591214 5948173 318825580 64344582 492401734 1232673 258252098 710952801 967214033 295228467 386989657 985684919 993819003 382113941 645410528 203597596 850043423 858564984 918224480 790788217 897462916 774863292 910972717 328298926 495221011 322005050 935774507 63929650 919550602 569162645 930805354 683165540 776838239 958897643 992215625 294818891 694163860 300812367 870389230 282419167 612637891 787182445 973850032 535684800 816306790 731590008 733883035 270258393 474535751 673909664 766081699 97009834 338186879 474492217 848768916 683534771 895663301 70371933 875299973 352488230 846020675 969605269 995413144 403600665 504248986 590454808 733789843 936909736 956692519 924699147 955419361 695773735 936466356 235455398 869516714 767006528 903634296 412491241 568590882 831252709 982939022 576064867 961443102 722107609 792526404 276444219 569723446 516721047 804354891 502360015 729512365 974142118 985124685 119661101 230358266 592336258 785760252 993326300 997122638 467868548 572190940 166085565 572469471 170330096 903234210 636111957 714640527 75587455 657469799 824076209 931372294 464231018 904929198 633153342 677713051 948968932 953689025 432210528 764623769 677598846 961790326 614254706 983499158 778379341 814384409 35907481 301537692 64933021 643430126 755519264 813590874 109206565 420579599 571231754 666994767 389264598 756858431 285523688 597632155 294343287 998022817 287334574 466932155 253733056 921478344 303135614 581628197 982466824 988231271 5883027 89973003 655153036 709137129 536793653 773044481 669050343 924211264 734537768 737813342 834348800 932748789 434404742 571611650 307058074 725475660 349328090 854653038 861837842 983386600 799533033 985531395 675211328 733383271 385748212 959854019 609728905 709994239 424874686 837251930 196671776 654187524 229680421 976179596 27098502 421274488 296533508 848155291 726713330 822080778 256290501 463506835 954383071 963464302 804182905 967152564 43135221 697106533 531565811 644955819 584665980 861834299 242086230 482808006 381329670 454739032 453061514 632970832 208426326 895450160 512414821 956280067 3634484 650896687 602382575 944020497 735928466 796629848 846461169 943372457 111473468 735101380 866080345 932796505 269712595 940053301 512689697 730826048 94148478 560606336 222351342 769318228 987772364 999312807 279172274 920210965 533882722 709784728 63323205 285762328 608329326 638324284 757268418 790051441 404380928 428943168 90928187 108086325 829885753 891984961 236744425 393975372 406371631 898713353 496518614 507998309 715243613 957740103 772278131 824956819 522569082 892646321 408419636 559735424 36968432 128922424 523073568 704977718 996984265 997827457 103120825 436151856 264958395 862845609 630886296 985312160 856573237 972923465 557701270 633209361 763522301 787959785 452691565 779994535 463400177 893583833 870943794 965015336 930697050 938246755 925010432 976884038 848957257 930754761 76449921 212306322 757388547 978905250 211068377 983442785 558407886 575362509 290103310 613354888 567826659 817681528 226642513 724295670 718653019 748170467 382515166 834941301 733254828 976289447 55769524 893802661 212708472 478786296 427762649 503112981 761502247 974810473 110568605 465416761 228400549 985562349 144778434 905457657 889534662 984651715 658126873 801579333 946364019 958380643 997363014 997426360 788020953 967433977 973075559 990701392 200873623 295610105 197814350 736694299 694483015 816323205 886340353 907849086 826185753 871188252 162942840 364050783 20928362 900450696 83251328 453928675 89818811 118063762 539268691 819388742 118895388 370296975 933740468 943227669 168130758 460669370 804703639 913675016 965472364 990483215 284693956 944740446 865047295 984643339 443679637 665731763 435843707 496051701 86686448 805632947 295671292 931442755 705491487 863851892 315488222 840811973 764263785 927705087 191675465 627439682 43092722 390768862 391407884 920274303 754684026 891821254 533778707 985537993 965295454 970378686 755660808 797513277 182370991 367757524 222983997 858658296 977478656 989683725 166311581 457748160 102901103 381437099 891782601 998971535 917195377 996421840 176063603 961798464 554159082 558855346 444844852 668461328 397380070 861823771 197487253 735208612 271548696 713264502 203335577 842096783 654014137 662683178 236440750 925407378 114683428 676359620 357648380 960461762 457758642 993512235 871974445 967071400 241693236 765550077 737464185 899242869 694937804 796624934 444237671 463582568 123833159 887917125 678977761 977584710 67378900 779178630 691305414 804050111 676071832 787458642 11329242 345333422 59386240 424267781 610028894 744591047 549887489 970618623 241489293 654140843 565593453 663332255 989777054 994449305 105790712 292288072 985983930 991921706 436532858 972924442 902213427 922514632 996682270 997836201 571331125 582244496 902642704 938078733 2913178 280084218 3066443 446000728 505785332 772538044 18514020 365005152 636942301 950051208 914486131 994951441 783881547 904397242 315475407 541007052 927963281 940193664 871254833 948019695 480003422 571391208 950271478 996051675 730382873 738657748 843847775 992465119 927050096 992996915 37227284 78331613 33741976 351868956 883638392 991756908 195286570 251008127 795873858 971906011 257358148 868135775 44891940 952098497 235712833 263092172 80254388 189679054 594713313 978915840 224829049 448054248 77232684 971911608 838918981 903201283 572699414 980502669 612021817 962597466 935857722 945743307 444089241 702775389 175562808 399305358 763861173 876698013 57166801 169796153 783013825 969366032 394066064 946700669 583548847 867293435 210085381 947124013 483758804 511824302 939193635 941625629 152030974 339544502 662372422 923171670 532232432 715300472 135151418 540443910 182939276 616212973 48434353 854218552 87781566 711964158 984054745 987242801 922134289 947839917 426643014 677553051 375925746 896232102 449138488 741325062 803902325 845829370 16856596 840370948 662989945 852370249 724995223 855792432 389452740 731575173 188075852 807520594 769644836 783138760 591936027 831252940 476894674 735412602 825944815 871757957 539531694 924600495 870974462 957949650 545834501 953239687 169028218 778386505 351780407 785224976 497279733 899085314 443698468 514816675 156202735 571993060 400125855 753889564 661659278 955205175 450181740 901227760 656283549 715323338 38285849 718836322 340856667 383771724 391799674 970225853 148173516 795148260 457703810 741221166 126800471 683996541 550978774 750901164 770563478 918696174 943146266 992402211 291564933 733965322 506793332 705384384 868561255 872807845 876417530 896774927 382352634 556661092 206638077 284170521 682175980 975614255 31802276 480882860 834621431 847653771 253042606 589357360 136450096 658140283 197972845 204588405 857033557 954444756 662917276 930725623 110987535 281811380 243633546 586634140 910271335 932406636 166213148 272216058 462423210 873489961 356476392 449953314 474627948 816836734 963894267 985910025 561352964 683296550 347245147 809276936 678497105 788802567 619524615 668171345 733452388 760396461 940937481 976971704 939145435 992938213 838512126 877757753 202084914 507391909 412998343 748049114 333488897 482082920 748943925 854734130 865978366 937427772 171292524 938212104 80843206 473215950 81075271 244783255 966964759 974603106 662864982 718179225 127357944 710578165 290414999 633184739 401670577 763797834 368977175 789985451 968489367 970982233 144715788 654001900 908293457 946665714 530552107 721072556 163155316 527669161 321752206 751302880 781892530 912326066 526417601 926291554 2491086 831692393 203731067 694250783 321643044 886842943 723871840 981724357 452463440 566682337 991845976 993259630 203619544 285292963 399525445 835354790 71284528 508549623 136788678 443552298 873713746 917591086 756143086 807337567 290138958 416358684 959137908 971386626 970866224 976667698 98776259 487011575 225455620 688427260 530356017 819057994 128179938 371970064 490208450 959815293 216603882 374351447 694643879 965174462 837878352 899363927 80079279 212264980 586025463 630585511 292754454 830391333 196144209 291741173 717484375 838537873 628420848 698850489 814688820 825604398 556012158 971674977 383542628 611771562 303517852 378667201 426714928 853132064 644283411 953000672 99704236 264641079 479657822 841010438 787863874 813220936 282318777 606221305 843648100 869640383 906839672 983465219 316226101 449670433 936410606 956936408 109306620 394151141 671047461 834251338 144224565 805750161 627942581 805681916 203594976 242054774 151222727 467007190 68641449 752321069 830409010 882496748 791102399 948789425 5426673 213375290 197805952 592869453 683103711 739330128 2390099 79971645 4162194 986175949 250299241 561344403 540151683 567455110 83385966 113935271 227622271 707675829 929978684 975505385 32977627 126878341 853010148 995965143 721760089 743689295 614571574 942321431 305364487 845044192 834773174 856414021 218946321 973126630 443311604 854495661 909947077 994975875 56902731 557766143 474314170 904676799 797918262 834321797 279783498 865531102 189723200 551552542 148307919 495853684 32680479 493080388 654973213 703618615 312125078 348859390 203520577 888656086 930760759 953760652 884486268 908336121 799771144 832459830 905200733 937880069 648902170 946512530 469741247 781606787 142018586 770035450 362218247 773436428 881231304 954085151 127441138 367296878 872092984 948115097 935072657 954041564 511560359 815581630 865290004 967429812 375062268 974918305 432337270 681956054 402906819 927041214 651687343 893517107 757265881 925583971 48887592 998907364 598292012 966682808 608048389 729721800 141724674 998396685 770676060 911706727 623988999 653919945 597448550 612000536 992508263 997194351 46421036 586383810 263566732 396144227 969471090 993104380 311380581 437219639 693126418 908012703 142924674 489376781 101172195 513114359 444011817 741041771 536314442 722597414 678594622 712776811 867276142 991991608 748000050 784595097 239219816 611503783 256500108 642235646 350245144 721089771 167812068 658473932 29699802 659390253 280757062 884142384 748073989 789962348 456403076 595158440 610457697 623708341 356759994 818917618 250617256 374623153 24716652 577570220 518507225 732319850 94010466 142241804 770231032 964563525 332881865 365340595 925433983 955881302 378056346 777822782 681470336 963983833 478533439 840710977 431565419 612826787 828254053 928541126 210660477 760016049 26220865 926819749 569591219 825347993 291552340 594291395 292801645 682191179 510131822 856022566 255009973 602812354 921483700 942618704 146015538 551474333 96925156 620269978 43927616 746904738 671943910 894574387 744349287 872370791 854082880 877030463 536284757 630994779 374969942 583063471 765752775 830379499 581256494 834229423 735609274 837310134 34303714 200899914 595301520 652421918 963700782 984778692 304708050 797985002 67606539 949039169 441813502 740168723 596655048 656792800 43977535 541937143 969750817 979565912 120235206 961416521 67592714 669410941 313196705 848658433 82560823 375570605 151327218 634594079 51712437 394399674 437279479 992473004 771831203 853963004 200416586 232998376 694610106 852765875 578055704 663497904 879635563 915752965 604553220 756100867 459553394 474680504 879698673 952984336 103141976 243045497 465631800 923369145 234597171 309753347 466805574 921148115 75465213 290341047 340763476 988458414 751283053 851983841 339722746 996306137 649120264 659716061 667702773 840835515 728922482 964223949 102243300 107142489 773192740 817521892 852688263 973754354 44634121 667433644 164054695 307041520 958282318 979846006 855414883 882669654 26844486 98674394 157579364 591676932 579267246 821808547 251731381 402665110 121083680 927794355 217943267 957265867 449181745 523054907 293524748 837510456 248859148 773915627 264891706 804239597 150153771 668211776 418931448 977867065 534706891 780926249 278917490 896451383 982149108 996570108 296410372 883045466 449021818 781829546 402151969 819298391 177596809 642542719 747155815 971805754 446219864 822509395 267800217 784878141 191106076 451030998 747015360 857990221 755896987 935142016 36118558 973997780 423368528 587470217 91750495 579290723 952335272 960575903 634217310 960424514 690044838 768242966 595658669 976448532 396096791 841242215 280819246 501230293 754337119 907706308 126933794 876010133 271567810 799140348 687808151 907209363 729400822 940894196 945400763 987269807 80475660 317486896 532082894 887641026 780070184 974923566 715390220 734728235 701379999 730318656 183371920 309219648 466935161 527532255 217078463 592348747 725093540 743229468 901379344 977603696 598987664 685245415 364974847 944581466 341453060 487145812 652566200 859649096 788131858 960801789 665789744 821865882 952337205 978446572 52090197 236273087 594682369 944520182 281661827 649183406 871360347 990123407 855872465 874074400 171529510 263229065 975197034 982423542 889994488 933788049 324399892 988779685 328918607 369137142 549504295 923602615 789454427 821118857 429561387 788768543 78531912 480031981 828108890 911704970 816640790 838126424 152552699 782056206 563205676 818469625 968647637 992155968 187823230 665128125 66680210 836648245 738238553 997123540 562688818 667920551 562640432 773385654 78999325 741781147 746281717 841164650 164462897 947230105 577121032 978594369 417160067 543600295 111490925 624318941 618980466 803028191 734004814 913729050 770697463 996883035 261349871 899441816 330435258 537966407 82875978 415872759 587400756 883129219 24563815 59779892 312889078 551632923 283703354 544814044 782183587 801757642 660470560 697854571 841340042 977459939 839556042 938258945 442260107 452188015 913360102 988606827 862705366 940835823 417015331 830971427 908208905 936347754 311983342 483390801 118376632 399464807 72739445 703928469 547161994 650233422 29332531 52188687 887320764 898391788 947620836 952952814 947963100 998390015 681251885 774097627 52418660 793333372 941565194 964259770 736632481 825788216 52695689 380476767 426268139 720902362 489735181 531196302 241960165 812018854 548336558 854245310 757727377 960414182 114797118 961245121 631306031 634827787 83534666 627288878 497864095 566673655 691198596 899305588 329461 390941238 844512682 887972364 125845382 856189545 294758473 653523483 503301147 624339552 856575761 955390761 683745300 874373361 109932125 467559089 773396725 944261108 170833722 244673299 977657292 982320530 683848706 717982238 790590767 982205059 936794362 945847952 18394608 263652102 634091264 781640583 395518138 627471753 734228992 809680334 881382677 887815607 331545065 620134302 798781520 998292331 897529302 946167937 311767835 693171411 543042401 744665573 669582577 866130745 757287192 845277321 838884322 967927054 297442262 763117363 840032224 878912100 273291471 878478185 750191983 967435338 146202360 582647621 129757249 449890764 120337397 360963916 51982078 154578279 964187466 998987749 680370444 924150036 560557767 573930376 308369256 765007725 729546470 970153813 285096300 404194692 794137111 902116291 57280176 66786061 952429100 971297012 763648897 959714616 220284526 345514642 150809413 911369863 518636508 805655003 492079254 663552295 615525153 641473063 735402096 746329489 480970381 629640895 333176663 757999654 702639981 740925947 443736130 890034036 74335474 400044470 114449614 270460356 156949959 888246709 464059879 496237306 754792011 989546813 790867968 847065924 10783285 699818007 489326599 841550054 784702863 991451808 561070042 629326903 436197388 781430805 466159002 489511837 474306941 754845914 522231606 998618134 7704914 137962049 78885082 821459486 643255950 922030500 881690516 934476660 820850196 942307329 308150476 916454748 954624297 963588689 490324731 897747720 679410950 711656386 247781668 563690921 819756246 935560253 811381186 868008056 902098786 915160225 686299219 987055131 631643366 801395996 876078134 997268503 335820980 496728791 901006654 985724768 901898330 971368180 277731802 434953085 702596110 730446838 915228624 979028167 614307381 869049386 248980367 373217326 271071904 893007331 35811759 702974624 421045637 714155839 52840783 686494450 971071282 987846261 602760930 793732125 463068719 851932013 811851723 867224235 726726092 867432176 91392564 974222171 707927377 985533224 572063803 606291224 48811870 414769695 39512670 983643052 401322377 800141762 825553135 870159774 361622101 996391014 347039265 700380837 215517678 225899359 321395457 733768116 484413295 513292467 139045631 659230232 255573240 374998190 659665302 891424304 294063380 749700928 322509700 958761033 163815681 346614136 975227373 979702819 89091659 257821460 464848655 837924271 862093249 897587979 992515799 994758138 743814553 815846081 264700239 289093154 621989204 733716205 195855613 758616177 454839219 633634132 469898773 495411375 500731046 895880045 129048958 409669886 321497155 865029437 426316529 703807147 210290584 486395897 90886693 496593895 801870144 878316883 218446000 948932806 820313324 922632134 415747243 951350010 868478373 909312705 729336714 890762297 301903998 720178897 186043782 396257346 886829993 930836228 511607769 661716048 25696193 477551971 930160048 942507447 288638881 447863576 990040148 997760978 363186086 796880169 695968996 788553572 39087989 892712220 354708065 777323466 674641165 721966743 29854551 444976021 345675376 844226148 758562846 797332164 879174635 966428833 970658931 972079955 726269249 838909775 434449094 609655530 417054813 751437527 793794428 962549654 111514896 332060331 400614984 420671736 531750146 946482079 981987736 983302418 749383445 962093678 625766257 858505873 755329316 764922363 737515041 970267298 605742855 665446103 712214472 753771783 716211107 963737560 972002928 973380273 468640381 777049093 306668599 524680009 381456432 385649857 878967562 948845841 634792779 936492985 436356253 661211435 740535186 870654468 853089919 873382066 645291339 810854778 480599715 940854289 502486958 732075924 779755799 969839291 264521898 703736509 39135763 617744225 558655456 914183844 948303295 980972334 478394558 777855385 419048778 499721242 397520686 864060081 672714758 791421701 359162333 368004443 95517068 395515128 412540121 552185219 926200151 934863376 838870153 890515047 711000422 840732970 350822583 879416747 600527161 696126442 894899209 952923836 199041302 324794049 662446698 849611362 502770068 540045672 82659365 620078042 182398102 616679048 13725538 448036966 491162871 909860688 658685698 665302024 793278323 811185001 559187366 676245987 95301235 925663675 911868293 920018801 441737466 916680492 891230736 904937666 675256288 961176716 283358260 448626363 622692346 854046239 45729485 632187849 871656732 885855428 52031470 500504178 631345689 896699461 166337565 603491449 732611580 970035212 702820983 895846750 995196454 995219156 603431857 881507595 93379919 801272435 979351809 983376377 573482018 694911834 594246150 682635025 241098309 628497960 707984418 921613658 545471843 584206294 934635654 942719435 542926159 563470086 611158114 998016329 330237385 942889942 568729006 742394818 529256504 809524561 553023827 854294092 290675680 437022867 539054229 870326551 704388828 726114447 861817580 935618748 381962612 707222708 386311212 949300014 605400891 849177457 26967697 532613158 367183709 527030571 301255535 574557530 239345027 605562491 282565396 598538698 424616039 693290814 872834684 969208179 32233108 763207388 493661561 832641463 228043985 419724769 41882297 244237387 820323421 857561360 842513487 988380926 537732061 670882239 556112355 953555028 593484316 991081638 454803198 705628343 341612423 440825112 443867702 826816336 389430442 549739779 963438605 986744281 682579880 854174573 719296908 823844091 597475704 794542631 341316041 636503003 794146509 925565384 602956173 937825858 753423862 965181040 216564490 628792752 382261708 652175059 556409544 572914554 173741465 586490274 20728420 134793398 143455339 511523630 323495399 670058404 141215163 637269356 826326754 831601286 388315778 467455835 212784344 851678736 406700689 676924777 735673350 984506339 752798712 854051675 897303862 919578475 893109735 978688114 421886833 678760487 465970843 866854263 721759543 882365462 581943751 801259421 370021646 427547166 958092259 960914009 559967756 900919564 556290570 819487363 675093850 946781486 384300005 914843252 777824128 803968445 152007751 263528788 774959078 957568749 250683259 828212201 64335677 279460423 177649811 926455934 565604509 952042606 146964748 663568957 273967615 526377521 797423949 930868010 152612234 700525879 443081796 903168575 30263839 510081523 941848814 968186443 639037318 774587154 748611178 941084598 318956721 381337976 550485456 928928299 440313716 623724864 5174730 80369975 776669302 961289172 415427264 977705142 518754549 775719727 841122683 992700486 679845861 899178050 666731244 828050826 16536795 122294331 965902566 966939612 434617436 848730887 147006103 659472325 521891991 937734460 196739688 220787561 358915348 451892177 936208554 959513710 308905364 380752496 481873203 915760968 715881126 729825067 385350422 488076669 325655087 605349277 37429135 174829373 294298535 972550107 319621007 736984785 850584216 972465081 64125812 343953626 926788737 992466718 950206935 963787937 700840475 840559523 498148195 670212167 710472209 854168823 949185518 977756809 687146090 984789978 815973853 818006515 620726136 947623849 183475130 297452759 859014161 889941860 851099289 917002174 125173751 853814480 980372837 985472096 276567118 547585369 724789441 885648869 827386537 922335462 995339944 997645315 731985312 760556406 911326900 953093980 935722709 939070424 443359491 698223760 225132736 968922851 497377406 581539402 639431627 666441821 904823872 914150197 536882512 677679513 154779714 157259561 710137010 855732768 233576042 388179467 431615489 912747599 604009863 740275155 730617515 882128368 129744451 973602615 628142294 834065984 677633211 961215558 146510131 340395436 591133465 727444981 262255698 706232486 153771538 374433565 512041535 820835114 161982468 309676792 829459946 891935114 341065207 780267126 382556580 727120011 963824529 964345302 652075442 911672161 168771170 557398886 396172032 784717934 585927921 944380789 39427819 696085239 474459139 768399265 132687521 192189939 344935073 642102618 357724985 411002961 155184576 704888472 868571834 911602829 205113112 328745014 194464111 932780388 677483834 844828865 902997684 946243944 566768710 575418766 499063610 787296388 264188041 688173708 295446713 947794991 155815948 512951688 139658574 611007499 483149355 590198610 210450565 504166248 61127552 184739987 939459902 992870744 668766083 777842836 40789337 96889230 32811523 34917663 183927469 873286665 88628694 705091685 580283714 587878419 748242533 894220353 422635845 581954137 380603582 441466379 539772259 808008017 668746128 927745175 315845890 866031044 399900281 646148280 143005582 256184612 515554474 901514282 261628608 289986238 710680806 761619573 339393040 494787508 396013523 472864978 467249803 941208424 109609413 739846416 224562073 554506530 470068676 479472871 315037017 538776379 225236013 369160643 572009318 885148569 201411919 337276903 400995110 484997068 496580128 555353809 846620781 939368053 606917818 654080417 474507774 748136711 273243515 614366261 103111790 443275531 406270020 625493867 834507485 909791381 20131463 940084340 588138708 880227832 418290376 877095258 528140514 933408720 18227089 930289627 949970792 973322916 832750523 909309108 109357056 809553923 612627926 715056996 277630721 365591058 782357243 960500611 276257927 682669055 367662260 374942594 363275376 928846378 449071399 519108888 207970131 535149111 133630362 965717307 780673870 966639676 883665405 976851964 675853157 912997657 266009819 893292688 883145014 956522635 787426815 954430639 987895578 998576943 544132543 823943777 63321143 772186731 210978204 582964896 861280395 943460217 443902366 877830287 580509587 735220030 153443108 707669247 637157826 746235852 696891156 808796620 909640474 938058996 397267944 643689433 955550942 988731197 125624956 961456590 146934349 541866343 300440742 318654289 710710259 979630622 592868391 663683666 452666982 543766281 940728344 984814406 228648812 931028094 917231421 918164267 859370790 904638171 153560379 498898755 752116075 802070069 162927563 954075272 429931658 592380668 270033564 976908357 789396911 917957891 409782680 870111426 298105148 428656295 654813892 791128343 28320632 145484790 686431984 834069053 964767368 987690501 58581653 313558128 363314342 628074633 874312982 960393685 402881141 710302583 556963105 882866005 802814973 813177793 590113639 634415507 883621095 919868111 484154575 794687913 478767711 958028483 100343260 973844608 567481090 838887216 903524508 954166502 141442141 187201783 101388843 525904404 89608504 708205657 255257870 647869870 276394614 804894900 746310976 765885276 489161086 668593942 576861710 678252423 394524880 507432565 556131019 784400724 326174621 750288287 852591216 924770634 73996191 74059620 380899536 946107856 274833349 445049393 421792957 985620619 878371844 983419762 535223167 724493897 147819001 762713152 289441585 322961483 528200974 542107163 981240939 994198454 651877048 778063805 848558004 986727442 745322954 924908836 185552810 290991535 679499336 878955277 348611348 384825055 841523731 874755263 330962132 461682954 501474301 923705262 682421338 879801682 704864836 861425228 585761166 904255814 832765657 855261887 750555328 782830386 494301216 783322921 327491374 745360078 257597300 276483513 236204655 924392648 548474911 701280471 938777604 965985168 833243620 903153162 851762964 937709379 793709789 851088882 649847220 770593385 28722231 534500659 702900314 912123622 236721493 632567042 377690610 888366442 71083383 720868530 581725713 858389829 196252082 497172527 823922301 973707394 312446067 805070459 818559497 883722471 651032693 703403091 301321306 693412380 972018202 985200060 55703118 608044666 901603582 943094137 543297970 951899339 923878215 968750785 559707735 745109167 874183484 951484608 558497581 561957716 878750851 923125068 975851965 983638860 720734158 874658095 376097349 436968553 687024339 982249295 86341904 271609670 543777018 549096300 862035760 865870611 458783453 739872377 478462039 887037649 439592817 617657071 645467866 897539729 455597261 582581623 467022538 483120666 970055122 991707858 537220946 573014248 927616079 980829260 835552134 971110254 526009136 588444467 675889838 812349128 42142279 647321581 520373445 696084823 344320719 844397144 577444366 843702594 668162738 738170677 959791725 965482140 117498957 617575536 197357178 942943266 33073798 633578981 77176193 690809571 754335552 943410211 421693045 548275930 231320793 582263974 638387005 676719517 765166627 884019941 381046571 382912391 890806257 904904967 425994057 861170586 391686693 904281048 841726980 875285465 814110993 856056387 553302359 788261519 549539724 996622973 904193802 986649377 933252304 984410858 952909132 999193475 89119719 490623618 139037042 493265254 145113546 863572536 524362949 836187872 973538708 980199670 344371668 540690978 612848892 909274953 601614788 664281861 194698072 714396967 406744430 712823945 688008375 789218190 99428868 264687716 717333983 769963721 925746090 987749243 353710281 489104256 155173498 708772406 996680473 997867787 233244584 763705360 230780258 834640136 142084519 279106061 302538447 899663404 885031783 990120525 147074518 214064388 317320080 678495898 628545962 690492920 704405954 813847509 645511960 892905433 470845997 493886022 144232905 514049863 822711587 907716434 613250945 842424875 124022958 317805707 687868962 897710625 645413131 796588469 230371071 482622803 111040658 405846081 129646481 688392542 892275461 935800297 542996698 803325103 944899726 973041956 125495924 300280099 240786021 731535308 784084026 904238350 561178622 854396528 989857907 997449856 802179513 803636113 898660512 974433601 604273664 733509466 917534790 991525006 603397201 910091906 871624156 991665826 266279526 447009356 483757300 556822797 25493663 515011463 429685460 660207928 979199413 992248925 621238349 657028981 425999570 484498965 614579368 635693907 998036555 998643790 945273680 946745008 275092051 309374250 357830731 526543063 560741368 617551519 955916799 998847170 792747731 900252868 438510614 833690522 423759392 680239203 971935916 991812230 754132377 878714325 473319777 994144074 476467701 797117839 551842434 976613033 828964718 868800235 81840114 650365907 774722568 932179459 151832275 767686338 351704668 726264755 858266333 995739765 146862046 467370577 811030511 820166935 991714090 994271647 994888798 995994903 889505327 913851866 70131720 835100074 799183424 921858094 984339509 998468242 998897578 999193932 462770549 896166684 7827736 109573153 451311065 673097137 313017655 842985769 540979792 953065483 565578968 951514504 727957196 935401752 633315507 753456075 480707441 604816921 726046018 914799873 998351280 999006494 369335062 534034040 100880482 733593652 202869085 256474045 125127663 748363109 606886762 637261401 101093561 866580863 155154008 928077243 903302087 972403079 758549409 928642191 380737114 590761059 247588733 408511373 440182534 555161642 457752737 949727395 854602852 982660584 295960335 889131048 91973506 295471370 273141363 562395967 219211749 707977856 196200670 219010481 751572237 777810584 919736265 928403986 178102539 745122177 6661664 313014421 222676551 653108248 360572796 571289144 913087230 950514258 969914373 970962377 238088433 411573486 682157085 933169371 919865318 970864159 642231106 977426681 283331994 610015736 346498056 401230254 59602667 643504139 488976499 606865485 313319148 843980708 75695324 781518345 640811352 920854437 710119964 799107492 656760123 859533009 229034881 913580691 503442931 758590280 355679447 694440687 806617989 852613719 857011114 879707928 235408363 424606547 916747109 980646922 992753518 996503247 374056678 470740499 940231359 981217933 602824779 649975141 557400366 766977972 678384187 929802633 237195999 617764021 615958981 720311206 879839502 958395040 654402101 996397025 647091396 682910683 305741913 574023600 990512176 995665475 595367779 940336962 479275515 942448508 805648316 985580458 679839007 865720548 483882101 583728105 865958993 906952608 70769505 322701768 669453708 726235546 223561912 437747570 279492207 752498232 763781933 895711762 852275425 886806884 122880627 591162320 93920424 400177407 218140610 653544824 778961846 790655506 142206958 783249940 537730797 616598962 629065483 731438079 392230782 693342594 769422471 837702490 535061540 576819515 702342896 928476719 321440664 982119689 900428512 986900790 681585949 717832697 333373677 877110250 938856939 978468706 609763708 718758946 135080493 189735564 276467478 323271963 539339149 827908603 218395112 938700928 659213490 699298153 287586630 688772897 200472892 834773451 34363562 616233177 812529663 940914511 439865615 455365190 590646388 732626864 529548685 962581678 430890144 788501725 508657386 605245636 286597124 583066084 376370770 763677137 50104744 976019925 129774038 961031077 352841698 679287688 479949407 793273140 415352524 920195132 114336982 271886981 911227078 968729211 794728352 911814501 490701846 658382847 980385560 995781871 49219923 979154634 825000669 998556691 132103944 975116052 640389455 763475971 193127340 517924560 270847324 329467054 127331839 195382395 392220220 707794646 609277507 657550902 778805725 904961332 425076808 480072649 423301690 813196104 406517423 930492934 602327200 937349428 535010941 911614262 209068960 249707499 694465364 872509914 515248193 857451479 502554238 513973609 283218335 433351873 755119731 986405875 342003928 841767524 743008465 796295869 370038701 773594003 396714718 986663699 275489216 481520315 81135509 332981395 998285021 999270177 261370777 667654768 919171397 921990764 920465244 980747563 75795163 287657933 795280618 988174438 558192189 663419253 969247998 984497438 448213498 951954722 150960723 973870023 887033564 987717490 985919025 993767016 596601033 642974375 94673639 191195038 500330955 566737537 380694881 919344525 907322369 988243567 800934090 897822851 599277215 990810264 356911156 860542965 459636091 869941781 821349415 881905737 434670852 498415169 146301515 506900962 350343693 585789356 427684245 922895010 194312347 335625070 795679390 843096088 931829573 989187268 236827570 467027637 487082272 623720286 727696098 820796031 701806903 804746123 452428782 575790533 50695497 98927340 122278198 183458189 892541471 983901523 457305048 652785210 22651459 275688204 412981602 896999533 92642738 139283646 110562450 297365617 668637599 733898925 942119520 972044619 856558833 947988725 361195470 509142861 607707776 890002387 532729032 677372657 481770824 758618820 840329345 986501510 944134220 983497506 733737565 969082519 868260867 882903246 324596628 752315025 891201986 959597155 568273662 908845216 562375901 919175517 861846902 979335833 317488194 992286573 260761883 383981188 11098663 213609222 461210858 956680521 454208452 611766527 150099363 646910024 566245074 851971415 645006992 726521000 959214090 993670571 189187363 802863655 458309063 726165121 214931214 317879248 290062135 599742235 816586598 920179883 282444764 771305697 600245937 843347219 405589434 732748916 988847975 991886237 491717683 892716034 251593961 963376001 642362796 844839064 96176875 817399126 885233126 982454166 176622290 856058865 818675097 868880979 852061061 979224633 183124669 320419415 193097470 640124363 688590318 697975074 262033467 838429681 167690531 991518815 120321647 313324402 682286500 985554421 455055229 631394722 784198600 932079553 225624414 243007251 729056820 861899101 987039737 988188467 199077166 992523890 162041217 771824593 670797348 961981009 949866040 950880758 684084316 760352239 989548019 994268318 286624057 630613797 606543535 786408579 375184550 801436258 69125530 837764176 986998840 989636147 808976817 828784386 591894432 930617047 672670021 762746655 334870067 766286780 219129024 977347895 354485280 402813417 568805462 754238707 47243306 667281648 833763421 971861731 34310005 570016968 813675815 939730482 139480799 853202339 601617303 670258561 648968457 665216603 795462301 930267794 64261278 226727101 61392536 465563751 907818714 970364041 248204438 709524862 215368679 511145061 262354755 407040736 335522589 807362346 346493257 901031784 828099972 926253525 973671814 984530903 244171280 354530391 766538714 827859002 4836880 882201163 810254265 974071594 249352887 640092262 962361779 979847280 250081011 500632222 282001508 419189474 188699456 482023583 504206576 983324827 966406829 984228541 157155508 897455976 342893757 498315819 530972842 555729587 833882988 855507670 836350290 996297650 955782882 986792100 411041522 756152144 277996174 402169500 453645623 525061415 473076604 940615008 338548019 391572552 833580467 848025999 732837487 790766711 358616415 982314501 594939147 618773646 238105346 975762426 381603116 653706181 523859516 577477917 622664621 731026310 175333805 369013780 679893737 718688392 395582763 958930544 285048147 558481617 865591151 961577990 287258331 618173942 713753139 853922331 629746788 772130461 495842279 951056983 190562325 999192311 868282287 940100341 343675254 981925553 585907401 866989008 602913521 924225889 795291314 986397504 743267527 838639613 84980268 871326244 419066993 893949381 874913658 946656161 276715875 891801534 567981639 926556594 190453688 963994900 255166795 855012034 209756005 998557038 981280069 992831432 134154421 275704060 759698116 890945180 670106965 705433480 338539846 594917973 263655864 829668550 422135008 773487277 913499722 983938624 828795036 990390613 196013114 991984550 880321662 930119899 39189196 686202113 58970508 900201363 16407795 191606937 790012927 794316823 96001091 671177500 536884473 942055333 720244336 973047231 79178062 139348617 108317586 279435822 317494679 321154410 553106849 818438048 922269687 991096250 7220755 599029565 139886596 213126066 193690686 922610835 641129158 677134345 83192296 644163231 211835189 253133826 642002293 723489719 174538925 850222126 116624434 765075412 504703132 927894701 903519992 918006486 384406210 606661415 205342021 596969216 630475364 650069311 869319402 965902329 155102465 351692913 688672385 847819643 506691902 563311803 452144387 587508030 914189307 989819117 876289616 994522908 672382714 814963505 722346294 962712496 775277604 810375208 358349589 701382265 358631901 827205470 912103378 956203096 394738914 601704069 556029676 915095178 27534349 452613185 856218148 946812832 978171771 987204905 145784422 259091562 473555364 782288045 158394525 625649737 577134727 774898577 969036677 988248909 921360430 957148636 961999905 987065740 659895707 813172827 375355996 636790595 919602091 983923002 343331042 693397753 508827618 636168605 398947711 934395066 375860830 612870837 854041330 867013490 11405026 450115275 452246681 504600678 481271170 900374288 681004628 824862994 5336137 44008391 171117875 611780160 775049448 893636621 239864952 830590216 402392850 678165711 399507460 787482123 121270183 270538006 732989805 813229402 840870217 851161676 430697181 934150435 619646280 837044461 301648364 889516543 452718954 894235938 896821545 905969900 178066898 818447434 836105901 989642034 664266697 737225595 411382901 943162892 864814309 960875718 230335251 892265628 56097911 788720311 972309800 974441795 719462003 914813875 752338475 813909497 777758018 992634515 349684677 752323029 481858605 921806224 636644851 706125356 954271732 954892500 280855938 645118601 103119790 946466810 912585179 966800121 185738195 540718751 614573786 979525266 423877513 880035620 798547813 856139032 905471631 921497680 183661693 763956540 686544299 938881040 521840902 861353483 838298849 864755056 543294200 997446158 799744015 818167278 161900129 330574427 394080262 627788073 184871148 896468979 810314518 934958206 175047751 507827800 118025831 926490924 827328981 998177232 915122408 951619471 129031703 818289588 504980341 609091187 244332899 526823326 878203749 949528507 455680977 748673832 208033824 540993620 871332853 952878855 305394913 758464254 381632018 537276615 942563980 972787942 113900930 288242843 941771091 959459447 932176953 953633675 629343570 935621930 785634558 949583949 192289557 210210388 16299098 702168363 137493054 768555901 270309134 985610949 7653640 30475305 328750393 442087803 380799082 392885399 703327589 724748085 606364340 905701082 708535730 844029875 875517452 888957217 169966359 797991707 276378498 901761057 958106759 992721455 258197606 435224945 178444544 778893305 723743236 741609109 841585591 948282805 218480076 946488058 362944843 953828299 188325112 660734025 295532267 750499269 132754374 171036499 331854998 956968049 228877676 507516407 147706579 384829297 183058323 205193867 443764044 580004280 683323588 896375389 134434449 566785801 616329619 922112543 932594321 942597038 137926979 761534587 424644605 425982105 546339350 580840741 841432409 965110631 109975015 232944558 355930612 641664040 498169853 903773452 125589699 226258215 208395023 311451502 257681262 347091256 777067 814761447 469993778 780244791 145389812 978874224 538098357 621111238 948846793 998083931 507605885 650514322 86612437 967629713 839286242 967208913 727794142 883187087 530210608 534840467 22277096 193979024 871926587 975834834 378321333 602932518 630828214 820855638 343131329 635929580 176819196 669903497 219931333 618909549 646304587 669598915 793808825 865333774 351923382 924494189 787930030 928395973 48835680 521226196 166841203 869795193 792863451 958433829 25023711 201136104 505290812 936742341 48551438 101331035 336438232 890402467 497873665 783433124 898563139 949207904 159866434 637212085 390097081 873268171 110164773 425142765 447534873 618083704 113965924 330526758 275218406 486041414 220007705 292042799 328136448 556497898 656928430 910227560 412309612 976857838 53729837 398507479 658585936 805173041 599829967 657131969 280937548 629045413 737848523 861313790 172581293 321973812 798255589 857729003 588678958 966616198 732266007 965191135 309533149 897082945 541734020 937640305 327985687 870993505 287809608 362987154 916126669 949786077 388556627 747079335 97010777 354442276 852189129 914241298 661216782 910843714 785147593 820427320 649584821 761855664 904074638 968874201 291458906 440445593 463953767 504560862 147526113 278013177 422042778 663750338 194590854 990569998 393863795 673834498 241994939 682295263 434118896 442560570 314904191 511058291 658295421 696669072 557600246 940931011 532683407 588906015 470434327 806230366 175582942 882972349 868916557 911380971 170088196 783660549 427461949 682451766 818560732 872076576 147852675 169450496 441806080 649518796 704892970 763835759 348373975 842619538 719490274 748973403 434435122 588943114 175208798 333997721 636770185 704591794 148732687 965392456 149620098 859967691 831584514 842873835 574534561 621840539 302158935 577973269 546749190 818604642 386780396 960571533 588968450 875134140 472682544 990589840 659598724 952180353 439663109 905535997 955988934 971505023 900486514 992437792 18276901 266110689 690717049 736412903 758115848 816876604 316627913 672753584 519493194 561623151 864902104 940070605 65563403 97180120 844318965 946366150 21392202 682103961 936728584 949530360 270932531 305830709 8021039 785829577 93299292 776362820 732424664 847739533 259529544 730659715 917441853 933138975 635044024 987116122 988885419 993016672 502264972 798885488 507532631 772462881 831304769 866830160 441646155 954401284 56164152 818879450 669792619 797566369 425874785 522685393 499427141 511878257 780988191 983111913 151969149 977899084 48254453 566289308 246778161 668454199 811988118 819877701 791474866 804195513 170047773 243575358 979569474 996376034 908730566 974503142 799908053 816808669 55562653 411870983 723300106 746721005 560589547 819575941 504949004 522900466 466826327 766195391 323075822 645893283 96382806 168757643 882419908 993893520 2649358 773751465 810195800 878983672 806860952 848835507 544402484 659822056 313093194 545443680 136628967 913160004 153396804 503790949 523462390 653972588 517412746 737544332 72989187 166164130 89632594 998161817 397212091 686847037 20335090 491142805 110639247 902403771 393282096 773223505 90990267 687640073 21637692 618433898 698409991 885128556 320064431 721981324 718911952 873827924 464567471 822852334 599774260 783887347 776285109 851723585 986614990 998901567 217149150 222480442 169135213 526813632 376101186 613632903 930786709 954164453 600309802 925487830 108541617 119112673 620140583 735894877 590164913 909947343 644921932 989332102 289076049 770929511 686545153 945548767 897790612 960867032 421936101 440583034 581696129 630193602 49332302 87216494 159250609 682529678 305271298 909437336 177007402 320235081 477050304 621404753 381658610 609789332 313727618 782598670 485403057 920354837 888992756 904693101 245025247 896561139 799992837 832739953 525287903 732498725 426199676 472763936 367488416 877329842 876411731 936914176 689443753 888587084 134957640 965700146 95069878 406920605 694338263 746069034 234244969 694249958 386053717 927818795 2907844 568689319 273496448 914814329 572938309 925563199 885051458 958219282 626602013 837359603 911644616 918860189 807843287 892999471 588845424 820719055 853877196 901544710 846608526 954682640 685774140 922566763 994183730 998622436 743337366 883777058 507904555 914712391 818452240 974270488 260992076 697406088 520960222 777599990 762288011 971083082 541085060 765452849 485481966 558053813 696585703 853220831 805308991 993016495 959491622 977396085 971181424 990610463 410708925 915990382 609537332 875865382 471526961 692782287 17344747 887178618 745300185 883699076 142847525 250085441 684926515 718622099 17197030 261973059 222965127 669453955 240647925 448207418 312671826 994294795 546645159 616776142 129265855 179986152 870025405 913309274 790797839 926223375 282089295 332692742 589908660 801112608 406493089 764238630 735805236 951489430 498964328 511935610 988460938 994372654 831319437 966261074 527737377 762489114 358779413 573975831 138150151 578160290 853514663 929167977 3233283 843323396 857834110 880835475 868480355 980865677 651694180 816099294 181244743 277054470 856562577 942643579 812517622 885257864 422034042 772566398 179938290 588102793 11725643 660923088 503514504 598388999 195503294 915025862 643327528 836488847 33351902 881604938 158238414 474584862 340704754 358211638 594898415 699590854 592087261 756907419 71763995 691531622 264996470 817298985 170065055 915151378 312192595 473817916 769478597 771517333 667600957 844738274 324738056 344188440 40115139 727950326 171539475 921962285 932388466 941018923 651422883 937505392 714458365 954041161 421488955 560424269 242699585 351763664 791530374 839545796 813779868 878552042 733384797 880302916 353101945 586140379 390664895 614440926 788976786 828359756 634703697 989317739 522339327 710579179 280605825 620094821 967606395 990951903 725084608 896786050 527739567 758122488 29919332 833387417 641033503 820806056 624449737 806642220 716763623 933129329 739596195 964427356 237414058 498933616 672578810 762726969 553749664 618150130 236225113 930070249 490387445 942840619 988066993 993173361 31634562 776977088 12599205 922738425 321574393 924609187 478753905 665496800 658388117 705495707 603375702 755238040 981516814 984406424 973257408 994274936 941807188 942034561 934519069 991133655 245722471 945534261 809695767 870088304 688594174 780807081 360402980 715611723 394617359 952070126 81805050 753653891 90343478 911546550 972836541 984939100 625609797 660114477 33003403 239561907 83603524 491956513 610357965 624738069 630512886 889556621 576810693 608909791 950928022 983823069 474470300 708709817 678501040 963513898 110755622 848956033 97213641 217962097 156525697 627803621 209924988 392174526 116766811 420427019 16840689 970574934 481113041 606586519 925455793 992075810 972570172 997918736 939129711 996209684 517622880 628056452 149220459 190497304 630472407 813104671 188681046 554946489 52568152 975762025 967442235 974258515 596009864 620444029 388934657 868630419 974767613 992206627 857951968 920507316 569870717 719604106 313144491 799765979 975473599 986846749 30828343 918484561 267922771 829142556 430890901 796923577 217660077 508990770 622811545 708725849 976755714 990633740 875096790 937470458 331846991 955232902 328584299 568227887 750978303 921441624 249205053 282963896 124199112 226903794 940935070 954272059 541940977 802608366 464056732 515659066 583728419 863366456 96993029 771447943 285267586 857417691 803366112 958355475 264986019 446708917 761058327 983204014 995129090 996183496 312269369 318473043 625805905 756696399 61662721 889548866 387710141 796923855 563802281 937517396 58288225 203359837 69661335 925695808 703006668 925275126 578445510 644557191 877645065 982429959 33736584 469825833 978991024 981954162 329488711 483468160 397467067 821607197 278722039 669831028 726442745 745206512 805612114 889889770 87551466 853407302 14831306 887133435 853713610 930608449 774332337 949847044 833170606 920506288 904855009 916817150 298577602 609951932 324649471 587147800 459777329 815885290 326659968 452866526 364559588 475457295 413649363 837949029 658890904 830055628 10795466 927030267 292562683 816980600 585657707 755918885 335182113 343436980 378582846 866187711 685687008 868519094 38460605 712112759 634942200 989485525 876655015 981166876 126390537 225979497 918793824 968338210 119283187 932004669 237656613 612528426 559117572 906842387 285284149 712701118 131469680 979109058 183197552 832328140 456603643 774630057 975127279 989137884 975281887 986241971 743256463 800592318 999232623 999244184 687816719 887431446 212273213 406808602 834274869 904501977 720227676 967254124 518221369 614555942 240215280 351979856 40625657 182602538 203208446 546676970 455392371 547059427 522860086 745402477 124761802 880455352 430971277 662042300 236213518 555842319 254119525 798902510 718910619 932861265 856493862 890190018 493054103 925115997 545336716 975584968 575328053 872783277 704862034 883273212 876924277 877586180 870111090 912910101 330418361 858028394 228006469 496254864 454764648 583656517 508916908 886187447 821488172 956131338 329169820 413359263 808939418 923868269 322704330 766879145 504743207 705411061 143972222 457292130 258929961 639390512 44262182 373966686 546033758 677901320 863432544 913480468 30469156 831685249 559143983 641448391 545552240 801639188 736216929 888527304 752020822 887972598 853665478 945628466 210730497 628797855 789323180 812240841 351538540 763490560 471385431 986083008 95054153 924355523 397385798 835163255 17592049 902559343 113192274 600265271 218830653 505647621 898307725 941869065 612287323 651655398 924624566 999017841 733590431 856647328 942014066 945089609 709274283 899849157 472232160 691794600 890626931 926357908 403601573 934580371 742654671 896490144 229443004 699440600 904020282 967362620 294357015 751173828 42339006 114285903 723355565 812405197 5810362 119083249 577487114 948266814 226111753 305261659 580592601 912935682 994802962 998779634 824411463 904663069 494956172 767198186 889836593 922978843 839519939 964525716 26472298 952180682 557720895 770070764 887428797 888566433 3616778 762390107 178713676 464464798 176047656 496711348 815002335 967110664 78435519 82162025 224923512 569381184 26884378 808426265 877574061 976434811 434299935 702068753 987899594 988633042 586462837 848595598 827977327 946437029 535533493 598491608 926147143 989559798 640007466 664341810 671165748 939644270 933026249 934545983 218296255 976246229 172943586 561298095 496360120 915783299 984272780 985755341 121634768 577238092 632464446 845795286 328606664 620136689 32405016 350312257 244337260 799811902 246732841 876648910 667817553 939604434 696152607 826900341 627031716 781906117 180777088 658953567 76204240 311432642 655006373 681377960 541655928 827694443 655711655 944806628 96498480 103883518 953580137 978600397 805877223 874238157 692051215 934559519 987993587 990792287 718389983 805351788 15887241 27804934 356821155 479154385 91068608 836685687 706213796 972461421 891619307 996362564 909959758 924551721 937148513 961554650 974660639 984791086 670402206 805745862 8368453 786001402 735005062 871061427 770354942 981429901 439570654 877273661 123325417 267055045 642016775 973113560 932785767 944383549 781935987 789489577 695136016 736592716 81155702 360349540 316284408 801054777 2057701 78212997 728802233 947723058 151113624 309970975 662161890 930676659 338896304 414907205 759842747 927678052 868010666 902688596 3137137 716258086 551955085 571631860 237929234 314441933 282812156 308876854 801477207 817685932 698313861 738726216 636488499 639239807 867138933 928705838 512535549 805987241 936365922 978816289 105449841 523509361 498428973 979330693 691461135 700432576 60040830 656235234 484173194 682994834 234084669 936593636 680654315 697067829 346929992 958291542 103641440 418408719 510374848 827835730 293612415 728691858 788949543 943692348 552812524 623471209 325475548 891494088 173045742 574631950 576378299 728702580 49549822 644435347 740268308 781098572 650145041 845598786 686608480 818081026 475362102 775182620 803094488 952788516 376881302 659909621 448007355 608269236 131492382 228906655 635430411 636063187 605915588 895634400 6474170 880284627 960246909 965255610 909116912 943864347 972296565 998347165 418696275 841458990 245906717 555563999 540724151 809500962 362516797 789002557 953160401 997700200 925809431 986967694 810103138 897138275 220638824 808336518 901349693 921738207 103397369 782576996 95466154 640708420 622107630 914257567 762971614 862187379 912780711 996198978 158920289 250958887 262815800 383623600 996566059 996685929 230327053 958235905 751715140 767197425 454794155 741888236 460085840 797034317 868964465 927641090 581978523 800918575 287044263 526507269 935908757 936969633 912513646 932056284 383868212 484438976 873365391 993822793 630099359 694680358 63891568 624924522 494000637 743447995 312408551 714815546 221300108 698077023 702027435 824743715 758518616 967037345 326577355 659096340 398956420 586002026 373499649 597951969 403534031 679391539 867147542 920138309 422565780 757825338 449342675 785172711 358018043 623262301 465476878 611724992 344119435 593133039 675274670 711321373 155931479 474272102 92354407 796549327 862014814 893327447 163589454 886017115 246227208 634380794 577716527 750497282 560479988 889346275 161247036 412991074 30693326 320470063 400567050 616801020 751273299 998153538 410512887 982638504 499120838 668612094 732282467 953912372 236535225 425410152 51017582 291472218 752207967 922147970 176946842 525625280 319383996 792086959 344649066 467210500 19378021 484087359 672425902 684594690 832381954 919945290 93148090 183216657 944685936 955718472 925774702 930029040 72811683 242255179 566728838 639775419 212672139 609985955 188754399 279359741 107765285 642875556 754830010 949838765 690364442 728597525 212385000 490417507 353379159 392880988 185680090 404489458 638093701 891396245 872587944 982576292 967726251 990609862 647950589 889353762 588998036 781773213 423779679 778536896 493060591 834896914 754341059 983874337 599012820 685346095 277235085 995588166 634230766 927968927 803153498 958564636 752883308 753517573 248860388 251353192 398732728 452012814 31731485 158792887 879956112 941732688 80794749 716289970 962176675 996090025 478075923 936680413 50546977 424390509 566074815 927289196 26042986 849778039 263749450 782182484 878248715 895188583 711701053 900827423 547737289 560125009 889054148 984759282 622657763 929056680 625124080 947746073 674924082 848075330 50800472 215798510 303982315 471508764 227673014 937328345 951239806 972435767 806138688 886433092 340770169 607707915 386111576 596101694 655674584 883532341 385960969 796098502 841122415 943983393 33037775 632792309 956046074 978746632 393159884 500837793 170139715 228728535 842350499 894731617 85494989 401906972 240056842 392608029 964585325 971391777 599961495 878144730 580488899 675247082 83070756 311688744 543966284 607485931 196274553 939046296 637385350 991163319 912799133 987235093 824210520 962193306 397535377 731359067 500304178 549769726 965642070 986315692 671159473 934409501 279352347 854770584 426659004 922427860 286872309 451344092 623202250 821550189 925951215 937276822 787265826 839463315 589189099 910129743 147040143 442352912 727400624 900056881 209612029 453752790 626865241 662113596 889956030 947004175 578198213 842579708 407857723 784415314 53569360 269240785 127722501 315346864 136653314 678110203 64682501 484249582 845822866 956221212 496437843 864672423 683483826 758909374 705254744 911029663 750370213 936755819 403042019 593773452 337629696 766477828 337114832 992776627 579618284 991561461 31913015 972017789 509201834 969954971 218584475 223952683 199790062 470801226 715654696 838726212 172199949 974353164 716684400 869600338 755630302 823013477 349309600 956845293 508974398 592483934 348801330 826901633 975566221 997187692 821269132 866759069 891957022 988240518 198895832 540580273 181865358 326551069 355499669 860115438 244440502 361879101 134282629 256870246 986336549 990014800 831083320 916299015 112263464 355500831 624791588 704002977 344717184 839028456 296920444 690991591 466367753 609131867 961253873 996740561 821633485 912356157 830277872 876255402 812915808 999248003 41814664 533547461 171937072 640589300 972226126 987961260 625692500 950412523 994952430 997472865 104859555 448504072 799501631 932022412 777582879 829949581 377261072 610631499 895705212 904534972 87836819 721653804 514172956 745963525 984838246 991078942 835072101 939269162 750132015 908210325 937243867 979176790 994032143 995578032 565468096 698760764 634859661 939412621 254084309 502497925 385137401 744516552 202121381 658204857 26887668 427185140 436633726 800757908 204426473 894307306 626466320 986794310 472737238 492009115 420457570 910782156 261630592 368915777 148080693 343470691 612962138 825207945 507008224 913432513 967982581 984500078 694501813 843004266 52767835 753359445 206290328 675848084 692379818 905389639 380970184 636213952 65599325 328528531 482095800 918199065 454714255 575183174 509518359 629826170 421328918 812930492 63989978 487911885 17111779 232258211 696369709 720118823 844799984 862022349 830954114 966329015 72647384 286113712 69813465 465089689 36084992 39564818 116217141 159661648 265161832 292321192 582935179 835724097 998381849 998949931 401031895 971245681 699699738 839825226 492451578 686792998 752023520 907261159 59548813 83022742 517402272 594803351 116846041 221103667 329990607 507342318 553385914 853976188 507086982 884421546 514874690 932503997 911392120 988911456 383782063 860745087 789992724 876567409 799429584 866903549 743298300 834050614 886754205 980412052 680027529 866263141 258486033 692521802 545031553 613330312 186091380 254250652 481653333 485104425 690382657 705367314 296809662 472096567 313448160 915454610 923678989 988975007 351498215 480625042 753224339 889174889 291580182 530674132 96914218 915335257 613981478 798038643 334245578 941200715 689032346 939953305 723848298 776267789 769585874 875243263 984067632 998016037 52806129 843480992 382378948 725052145 305934379 528631110 718748121 959311086 665148 521208558 390767937 667129802 382473793 871100119 639397930 845478717 381374334 648826179 449615773 547129366 314232540 521261607 264730085 307030141 936893580 998860984 766834717 914995113 876942969 888557198 200823751 886224883 676319450 812671632 527662303 803707725 638001578 977182142 208376899 314674216 37693477 696090241 252243982 842081665 636404966 673603320 173956278 344855297 521168859 667795028 353196574 483872746 534746849 800455153 675606680 940600317 430788491 640686567 759708846 974733428 402627446 609964432 406594141 660385777 11435496 583413651 667055446 776571050 336230213 657624084 723015697 942276589 717131718 810070338 589223850 971456538 790750716 816782469 325876431 378553958 533328414 810243082 532687203 843558372 408633634 915715018 743878544 854777124 963533235 964185271 781581102 988134675 21312694 442449651 391355860 967366629 432988 460404169 427668315 556528688 688829124 789630960 46516222 556869021 899073793 937790733 283318686 480802669 237347538 596092331 39102520 707621153 285292815 837836613 145074761 670958101 17492015 142891613 165062920 283598634 747336590 980803069 173233597 257329315 649646988 708836872 704016538 869605918 103708401 623603322 212575189 988938438 699418448 971304264 918396011 970467545 248502851 808014778 984603197 992867427 788801276 972746056 887877614 894553128 703385026 879610100 290482549 825788025 584889402 709971616 747799506 792657088 636582841 973851162 36891815 270670629 428197385 639143099 1998660 183923491 193494680 512597068 212618310 814609705 655185346 714914593 723410423 796464743 226142419 403922871 409046374 822282425 826161689 935860198 855700149 984297484 44613373 693157338 318608816 491486203 718961019 992087236 258970460 932078524 525855864 705343831 8414215 366824824 608000346 821673083 20233357 60472315 660544488 818534132 46991766 461879972 98258120 791285784 397405466 595094978 674924621 801232595 262394948 956128861 673769452 859007120 985243155 997690311 815646579 988080464 387703923 436928062 693087656 776018292 588041917 602211383 764777454 818013254 103838871 440447324 383026075 857915584 218869224 867944675 594018954 803298875 216716755 664640095 636058205 743680131 727826786 976604824 985082727 987984306 856979169 895245208 716112398 943829811 301201110 874216793 102641773 415086251 174362296 830867491 369063680 427214073 24407701 905736998 757494726 958597795 757767508 789123059 986961249 993160288 163785684 952686409 626476794 808013499 879248643 923902347 584268104 684036589 374580580 603518519 583702398 968925817 778502429 836677318 405126539 689677059 835532669 920360430 827733161 978346830 86828617 129179036 29446366 183984985 654246602 747526371 399601698 910132617 623874198 633701949 986996401 998107633 295462219 460215108 127284453 986964152 444587038 820433831 979757995 983573621 7261624 461694493 698037451 818602484 178943156 455378477 721336823 803990988 84348892 831331828 82514012 280623841 179900058 813869039 193130733 616934353 110011086 477856786 675443999 890147690 525881494 706731133 652615892 821791797 267801476 809684327 563928052 903568827 961346577 998601189 590522376 655495513 296087187 405984836 572846421 778489097 782764646 963706457 734001416 805682461 491050288 904941569 159891391 624420530 465005039 663876429 66129207 644829314 446419313 920141382 230416103 666841127 795158322 901521301 713668447 968496394 768283808 891350225 736185364 925489135 220879768 423968065 584002762 855956142 395383555 604995310 570987776 855173836 48558209 615163113 975004479 976963294 685242698 819917523 251399479 666558761 596716163 797608310 775565707 902288167 672829861 953404622 972864471 995787235 440937809 873527986 898741254 987475676 353510163 751768256 747506677 758567621 93742843 484708898 906613310 912122781 18229731 711185988 37666172 450110079 975987887 992101947 962082362 973646317 654568004 810000370 641615035 775640441 851548987 994278404 734626911 871135678 227628611 838577642 44507768 486320397 298965306 362055308 56038152 879884327 390802713 575338427 836587275 891721024 781755477 789215093 925432918 974122343 425637517 675078137 452229817 939139666 39288023 808130333 825476359 845500038 172759259 787287051 710216429 790327963 675715978 759654786 328555993 885021553 511144236 719137950 510057382 742287211 273198220 351485091 7485352 346688546 658509718 972084064 633097501 651748392 512265331 972527760 380681354 925650433 430483601 619348373 134706136 423621587 687050305 980171662 978907031 982909559 157172361 922594133 529601440 696705604 526951733 966996660 968571170 970526974 193228904 449534410 13554130 929823705 938401784 985317934 908254977 990926808 283073543 814982430 340568051 485628423 33210572 713508926 4535854 11982031 619979847 789588510 583819399 678118734 792726050 962304089 793945422 990357333 577703303 839266148 453553781 954091598 377510370 646821029 367286887 398145134 640673704 737824516 432471000 803821857 656882027 831216179 586862585 777849385 634281987 831660629 760755027 773530696 572691014 744044549 694801590 929194966 567284727 704116496 215858184 426972434 736515409 822931243 472005186 629624901 225851633 854773734 660051624 851799501 14897701 584364297 679401871 708791181 428117123 804452309 770318726 962087377 383226893 497878707 47591273 458506641 808017043 866242656 796502286 888038830 938239157 960693589 741556541 971068490 165095753 665524921 574430860 797164967 900122183 986396876 432234389 935579043 891991091 944917426 142152616 987398405 754651624 788267901 675549881 804090643 47653292 809160159 956468357 993018684 664048488 979552966 506205153 872887736 183359391 981739669 269572022 374227170 405653104 460050155 469676360 906925515 552831283 627553695 44145628 128303603 415351509 896645803 123109584 207057048 936020022 984939480 802873021 830361657 310238810 527387286 424045522 479749294 185259314 672331377 626185823 686928670 911604378 959168909 133243050 166937862 34126267 148966379 871965242 881450308 843992442 940327207 983501823 994931737 417208241 948007162 732151787 944608726 717201184 728963115 765117767 919011988 541777328 681412284 203784058 968402808 345398602 826284049 68064116 256781228 293728225 482009515 138371298 608244509 697813511 764824200 353248598 579618822 947678331 982698770 558906578 681413781 656366568 981805647 186176045 680296211 804251998 957360130 346237615 724365312 898536588 987873098 691378560 754221811 748812402 943220070 433870955 868551625 964053471 968481480 311193505 672839587 686265288 901749684 540095909 681379757 347579677 788733660 640297594 704588872 842841035 860142484 795430040 853348406 749340136 818292263 100906398 736045805 478565684 512420102 508845359 858476831 486511674 903803156 557393585 795281384 766796484 980974017 199833169 576711525 473891678 985760771 187988963 543288290 603685644 877766956 697985036 819863437 993822187 997295479 302413908 556849531 191706328 649153884 857836590 903589103 988973581 995305227 260269081 573547940 884487407 986165607 682974373 693985911 833370560 966769122 593397372 781999231 121989329 588653091 786759494 994731073 274909835 836736083 346596747 749576913 195205127 857874587 391398020 698218716 946659866 984584928 939726248 971825869 766935766 926282721 884430133 946852752 322680713 483385254 153406139 502726354 525361398 955017853 428052953 658975823 216468122 727558989 161761967 266779787 341563798 668741525 706218208 794275512 584208588 952433505 279705235 902258352 31526862 113614673 246410410 909271429 96576398 786844639 575452594 714719065 408457323 963627083 17529755 413424373 314736141 780551115 239778263 530291283 192945988 688206230 68496677 562640919 952894419 958453105 23242359 110244996 940939659 991547896 830700014 910088567 327764691 644198018 912188550 956632616 696143210 939648122 944076043 979091734 903678228 925664959 897211045 984608872 964775959 970773996 412065379 513424863 498133913 729317268 365700522 377657476 877811825 915126251 964940802 993769184 642592317 763573540 677913041 964418861 615578111 992796611 394906186 425427180 433833177 607162586 255290737 375764243 654719177 716812162 96964494 993535109 653732657 874450612 595504193 950674345 102925056 179732449 835966045 889098190 968929741 984806635 976499395 984219825 947047290 996866141 915918100 968510000 906013214 911353358 638302265 770780496 869252936 983340244 523834521 710311914 904175421 998121790 519352398 726912369 635896312 707773720 125574570 794348217 516275713 984428897 829232886 977073396 875434209 941989521 363584544 892838135 137004088 929531867 913734860 940182669 68960506 474269361 684377899 944433099 207832503 795935745 875685440 876499233 67461220 541405856 253951653 925351099 961545265 963017885 132004933 930588330 194987318 761540418 646854868 733603061 399298329 948008796 308393071 866085226 713251524 832766601 400844605 969762588 240973888 706850806 378469253 611470537 473480913 881912981 495617116 608603511 954875460 963992601 564864407 687641773 344012225 991563321 530313823 881728285 98030999 624235614 409255070 506366343 96607518 269807195 73604965 620799483 431421402 485385507 427309996 490194600 873641737 983881391 543549487 842246348 385956258 872108445 203795315 789807894 73822533 663394901 490760500 760133363 916567316 932385699 434402767 911092320 42675585 332213986 110528017 118061238 207210248 209805563 611801372 632880750 805950884 826749178 32206913 761849288 883975329 988574665 914722842 922600789 6872163 881807540 809751842 970414037 393159367 783655895 732798493 821921628 934917774 961153762 574864991 601189860 343882217 530351963 822270645 952631136 496115806 602857549 412801577 875515327 517743416 542669473 911679986 963057176 93899491 507689368 277611331 548325459 154577498 558883107 957046255 976507769 431214395 944418716 708053554 997949382 55135816 544826150 274139015 552753987 346006625 588634235 320488120 844769984 86002572 126783232 834324343 991334605 272838856 761113195 949643369 992930366 550569549 654311390 73911179 826088384 283703388 854630329 982879971 985074317 772784223 893192941 547367052 732590086 432152899 863578515 672422768 868419089 738396985 793053927 934766776 989602261 529419679 596030431 175391604 346985888 2990038 85355224 643840140 653779608 121378565 668981954 418064721 651232598 108659443 844814897 591226289 605255195 353439769 583894147 406192498 642219324 613771509 711026941 367436180 830920359 765604821 781326158 575496390 622332547 983624337 993774331 970570797 993465620 255938168 738002341 724155620 922904158 682047390 789512808 28248073 308050225 443281894 967010715 115572906 918856848 837262963 988763031 326834350 652629949 612638268 822520375 640070987 922065304 16038454 237419616 397944778 891896424 807626062 997911951 199653282 229175353 142559181 602209766 880567867 914184922 768212268 920685357 502861790 755407667 232107689 313193901 476175647 621662823 610732119 783947511 688442363 906194234 769741957 779620560 18414625 814871057 644265061 945367284 692584241 782055770 913559465 939896118 661134596 879704003 628994279 770856056 65663461 83590793 767503368 839895303 291298027 764725139 591745761 914780870 264414709 704138366 450381302 562799659 74342501 752821643 736781715 900282657 428121199 686401271 582795963 779007594 397434176 566898956 620139120 668078389 312470703 855515083 198709420 864522574 110744802 950455226 145005271 452166036 898028078 995167029 963597784 994212130 845215342 952177391 203581127 945840474 289288105 455062262 809385566 855663416 146380671 601561794 662051904 694721347 654223089 728278964 68588490 610549618 217048792 814086864 767841161 954798913 65735923 969560048 755122565 768811238 969018647 997943964 639361609 883734675 503537261 521981551 75506261 83355471 185666914 641315456 440804886 930767188 474274499 983551103 471881156 606112776 532719841 579657948 56115414 580920090 190151261 220484250 512232918 588000299 215777815 839800355 480334095 669473624 861363713 995854840 908091058 993413096 925191305 962142274 563092359 997730249 603299241 943968223 490035139 865927037 13465894 753865456 489002244 810009080 243795512 314197839 594475487 624429549 424463310 884548931 592991881 668593477 750933441 973018723 845277558 849140766 6520222 360299874 962149229 995144236 537609590 895831911 678429668 837282265 238445881 269081438 763496718 822124577 721169854 779020481 438515425 492414455 568349947 858559149 611086949 653461093 755880893 875563785 75794627 471798412 881402277 955289925 579161080 718333739 342253780 822612734 769940578 840042455 505009437 742283718 39731236 311015578 834830700 901340029 408510428 716488147 129429414 374882889 91189181 823451045 831304302 971209682 987660150 998953875 988284653 989828722 196367481 775445883 543897196 734935102 342573980 439734986 123761836 895021390 928917778 938559103 399883040 740670861 669963335 972565311 184254121 430911998 546594441 566207147 54895858 910886313 167123218 256822326 490556732 763513906 123841812 429779736 716384968 845605206 981799029 993608638 555612534 616105808 868003870 911173791 114768115 541347085 788586352 988126860 943776888 963718753 292406437 571921987 924295731 979205077 399520944 755508838 746691712 883238673 37751807 945646815 223420895 914002700 512311579 871722312 13753302 745501212 83783434 349412723 414370400 738963195 627997465 817186389 800948668 914671586 918076730 924957897 884438335 934416969 690022191 697029148 466478518 837291417 677321664 750475226 431707110 854598844 77041123 897422463 861340526 988215952 210389329 231232451 247999687 987815573 983316724 983529028 271106638 362436484 969842139 998507806 679673023 899397754 447795287 590387002 145035584 246965873 645403140 771852538 509137230 602640272 756810827 814072288 474388399 741929454 241701447 390253423 434465230 775672052 758591363 940708391 520751218 571052883 401767697 532502118 594602105 876856102 629786052 640166176 244347159 452675379 318074580 705622978 392114238 977957837 761007757 773927631 388889145 392571730 852313667 863458696 828315612 994888065 41775186 757957343 198208897 392970720 705650096 832608731 318761626 604425334 275542532 944854024 955634534 981963986 818036282 966579686 679924515 814374446 299345687 824141341 741839848 776277645 725501277 848883021 482284015 882247127 239519481 358849681 88210140 286879496 461205081 854389097 760832984 917546232 717527504 849857495 235540029 548860708 581559628 998959012 405008067 874682054 676167564 866088703 866582397 917152834 731367142 969800035 910817354 956588727 5346483 344633896 713450616 835859078 484134841 900902675 209944676 463941543 773406486 827936397 591237207 618954469 683194370 983746907 559321657 923282984 428649651 598242561 388278700 685991326 385489591 789256423 525011878 681242013 697390418 841741383 768762643 831953298 636512825 944443252 591548266 647538064 962425617 984732565 552846880 791701201 763259884 959548846 988406603 994559982 599023500 830125876 919853750 925163994 759049413 844553393 439193737 543864943 961231291 992740401 863662208 917542999 688775595 831927576 904425848 914907468 980006714 989262298 189249693 835314701 288421866 449572208 990321807 998994845 148913626 741185149 194121194 623020138 343082696 971251871 307410316 875749718 156155851 764580340 163083574 412960516 585845510 971938763 354794158 990205915 685221947 744403315 142035907 961323055 554292176 993634376 694326880 950765828 746339930 915311294 617644023 869279584 480945509 537234041 113545592 155340994 436643193 461392025 274884095 299894446 254406481 295320395 843709894 954314809 295713654 689823245 170057531 925052737 17324407 20954459 127795369 691913447 473420596 668864056 579965167 623695053 143066964 474923049 526078723 740432917 413651995 414172173 689336371 955709460 137627005 997793657 738729438 987825364 190276714 923528615 283278699 418523652 336057433 440303566 624909508 897889348 875541015 994647313 710361872 977989345 626092308 979064694 96218448 600157834 745885254 810615857 121155049 591474140 12359063 859214139 687695344 760797145 758320583 958449952 229363178 764680444 152290811 290364658 901447917 976068561 699822665 825423996 765212886 890181523 568712573 684072956 623614858 950838538 430405836 820080608 145484726 605598584 128124383 842865460 258717875 329010536 517758077 893133790 249482445 880703006 127237861 841627916 67094015 697294341 377042371 848432304 618388718 723077480 989743947 993674604 645114069 876209959 289697466 845775836 301502669 736805006 608266003 902014166 252912584 260717618 554947497 881991732 666969211 688111395 158936667 325683525 540729563 748953665 102073111 771170626 948847562 989963627 436941253 478292570 697037030 707118946 478595911 773633073 784634800 844797021 793624354 931170324 567927128 898130571 707323079 764538262 398860077 471321678 363140162 839769856 458612722 593546226 708949555 864476845 974317448 988562082 389349457 743375409 40855419 305756667 474574048 960222248 641408884 921590618 400031908 587284878 143547873 581581318 593210672 819674801 25403368 992975995 674213519 895365633 384666059 914623755 363464349 666665724 852042534 882520418 888389864 930850513 211206672 639648585 85099566 208975128 964170554 984140414 707508920 772998629 409414854 996754777 98783095 634366688 201194399 384353696 122974708 698310853 42152528 613133484 441172978 756738207 934611868 960844628 461596145 621276980 584001198 809813851 793840889 882567316 357173909 438848304 780572983 910541285 361135393 943331391 465223537 518879915 947276549 963531339 207650864 623277172 784244720 917514516 116333374 570454518 453657484 942240318 837022853 938261004 65805421 916440203 44155508 714736756 294629364 313659219 343520113 960487613 11947349 744519066 995615712 997137154 764560738 871276427 816061981 940833614 630711913 754715803 164503300 485467493 623888554 823183305 278003025 809628215 598150581 796548554 634084603 874490542 384082180 935685743 491440423 887866464 448699502 537999037 271546129 707316593 137740854 705465521 896288778 914544328 437381830 549629545 898291869 926096129 260416219 679689336 604197479 925716977 32994405 447755910 449579022 518999358 760728964 778999469 333324193 562633851 5006780 456099098 874650597 965597984 672787728 731721836 73216625 385456807 730084338 825455701 697398893 911881410 939520140 983319156 341103109 807157482 932860724 952192001 827123336 905393355 481119826 698256027 359683581 392687312 273144246 379447708 818271671 929450353 574465453 845100340 238435877 960261008 816687835 952611533 716224539 721333893 396393289 412654259 99290441 215328629 761823186 857699055 227709360 708134505 321215507 340033483 198104894 470576415 1677569 121033732 643818695 732231336 958215816 989372576 577259169 577309692 27963677 608053802 576950161 827719109 393859895 590771909 2235322 253638663 339017908 888041172 663116118 887023373 183090744 914383194 125768580 473775691 481223494 989164336 515977340 895582709 884339734 891420807 599372090 721863549 523771953 532593756 961251112 983377493 573579819 836052257 309917616 754465529 578891893 792852289 641700716 699061898 685426232 984854114 612870893 691385501 724551514 857817433 805227123 880061191 4162364 130100108 578398306 721906883 835003182 948713722 629659917 854094055 175190650 521308140 412702386 690077028 919603756 982366977 494307178 610600753 147778592 190963384 865457829 998993012 260024554 898184132 617249336 921187991 591781801 790703712 29878165 825997646 736229362 982786143 742344374 972287658 621951671 804939124 526688764 919661844 38244069 301382722 696488485 908363191 176235825 322211120 702103251 973007336 994862124 998771628 450926817 648039320 404388323 794405314 277702418 998167195 407728557 979375388 647203246 703798732 394435635 568263420 838204953 853201916 471878372 656408683 963980169 990777925 968143154 971545492 371696401 637370311 970152390 971565538 641769957 731914588 464233759 852432885 403095569 861183845 325794416 557028561 373751415 407584911 419301554 427032409 9336458 690408708 651162303 892647096 745312827 872021740 577578803 881250703 730383541 848621918 794946144 973776654 585380348 639740005 754467453 885681732 397070458 719319667 410427762 934504108 165547470 847978613 332644525 446294620 774815218 902889138 855665431 968204755 832145089 946569834 256130857 286134261 56248049 116105412 850901103 935664888 914354395 930908824 79628606 480080545 585777224 950931000 185995253 286913191 366790764 781022882 566581684 881682893 98947390 973857245 333542382 988450829 270609023 908560082 568970259 692091899 46757908 83852835 208931004 869562933 243626530 727499692 552787467 834982654 803031362 827815723 573784325 679938613 929749712 994485198 339533241 620479865 528313689 699825389 653143548 797829821 757667735 758423329 168452730 399635054 622450996 671836932 982354815 995154028 641057257 731744746 193897079 376725507 165038772 182412561 368433074 673896797 163514789 952289970 740758438 833096328 322391404 376445421 57310637 506869005 29217059 272662282 559840898 812159792 743809536 945959698 470870324 737462628 93119300 854701985 251526208 307480843 161648229 746747825 804684893 969642746 455592483 749251196 614680727 840150319 829819217 954316628 774736054 948263443 214837902 971414859 995805286 996397444 249735497 341047972 20399843 647713517 700714801 880075231 799776089 934984146 887773650 922780382 533688586 768946606 873427339 946086159 558829123 841348782 860587163 969612191 804544964 863475158 560831617 919032936 699080312 749985604 310612337 441933242 954573725 977380388 703562516 876774294 104330153 491552651 288817568 499909234 928818338 996352765 240482895 780778379 464414979 923910815 916220293 954585748 544615870 755331480 981707186 988523419 208221861 437265450 673410156 831092063 691063580 966591261 527562670 541260283 845890734 964008782 413366804 867582617 861868041 926211705 746015415 837919404 237833625 853915419 848628601 992022392 402073376 648692538 360160543 654918052 380740427 786219444 935003761 946273621 862148663 882818867 307729113 423586594 790336996 860030615 577347987 655558159 850299777 928074528 661498210 812215912 938120434 980482098 50401026 132613943 595761485 708697691 558950873 877686206 562112168 910490355 420841048 865250392 419217963 966240536 970313293 972001429 426757756 499178909 652118657 685766073 819790933 843216877 517403569 897211864 210744217 966748455 296923353 575785940 748416494 801428709 911961420 917577811 941733047 989202580 388382462 889676094 329595330 990908558 557600214 609712862 228852821 426890261 449830423 819778541 83162473 542432431 332891108 590211492 906723320 949464159 94420716 223720865 976928673 985745980 967187918 996183567 329970835 678735062 994577769 994841908 526766218 602560539 427903570 573400588 319285769 710646052 976220767 988960539 352279946 836751019 37072972 293295928 405204257 718770819 659029144 838676635 921310162 940402276 158736057 965693142 715304309 787528242 147983521 250539077 470300744 867824031 964826141 995310736 292970675 419421893 733945364 802887685 175777410 631802076 487914106 609587806 550450482 882227628 443014061 953824253 764199242 807252700 369938447 997658213 655221389 702227604 475415664 566588514 692830892 764124285 481424992 503707633 255978584 476792197 700989889 752218310 622349378 927988964 333634751 635497861 158820223 632379025 505671697 878872060 255319540 932000128 646081472 915820646 529574115 628608189 54936813 641441759 163193411 464581019 510227657 754847159 6073378 161653568 316332882 628422400 404880274 628178955 347700978 503546853 289123965 791765901 271380231 302222832 629760300 728032533 27964544 402958492 156843373 236604238 290582233 731686446 400483166 638403791 512536877 788772577 830132613 843232649 957119586 958211154 257582474 962045280 403034465 766640538 433943144 879695878 697974269 738843107 814824504 890673700 385450852 417342855 379079483 643637260 142915241 510965167 641795166 912575906 217723758 776428988 71569488 339040857 990296493 990495417 446784812 945265905 322852055 951669876 281480086 394402215 744199450 851970123 174107753 311579817 544932705 649182147 496614779 894491448 103817605 585745754 259278479 762081452 86073696 708439225 183152362 520070717 614866889 913063710 612566592 915943278 159430604 316547470 369521586 964021264 840656040 961471832 540166188 860847549 587544634 761998291 796069870 958545027 923803002 931491393 520133117 740766661 807244082 862621372 924070791 961234385 614558719 652314191 956379929 974430222 543774926 690038027 788215676 945858331 277064540 707906455 440138208 905431490 20192446 178668984 844673319 853838479 834292351 835586780 603811049 634090587 757389941 913545567 657608951 677816256 340116126 965303495 517319924 938749602 8511166 738225213 554083895 977933082 680204001 881250265 165159613 633753626 658331053 915908770 880092416 932799963 620094521 895128921 283437396 961310264 250745947 435831435 409314035 608699375 955920628 991611731 319805645 723506825 793288883 803329298 120846256 765103162 270686313 559072917 598057143 698056778 792246446 800022759 678213472 959599774 257268052 837222218 335332428 707592618 979588357 993875891 781927628 838285822 621388556 821373601 188154059 613855273 262322476 869469270 183345260 751532688 932771980 953754529 829588547 944370599 663518053 973152768 709634963 849812422 731238019 847837039 396795475 397485697 968401806 983805475 801330060 919056330 852412057 934147939 160436621 467936171 509459498 720657653 67728372 305909861 92064927 749909776 467271996 473804621 715963344 923603808 360306328 886951294 690324663 710630963 910027123 974173745 486088080 967600945 2360578 173846014 220715043 800479092 43145076 44469645 453523874 496658327 474933068 704431540 266031261 887486698 263994687 264337381 743157257 904383642 999127687 999165558 296981746 450237139 711086378 930841086 866780367 939549843 534531648 979184935 977561531 985680176 585317123 714867290 119633797 780656509 94205579 689378124 328358867 896465331 430321318 654516002 308073247 359461277 329747461 440306566 482267543 867081697 879971234 926641722 564053761 960068815 659907496 674722266 49990918 352870803 496158859 942562506 177396563 937724549 741760589 959588338 605401583 804617428 757525653 797156402 45995699 218647581 715144386 852884692 296078894 617841124 856499217 860150232 897913823 937878018 743405497 811447594 407819719 707833502 540601597 776967740 533686279 569853122 63863743 161305825 210149957 485831217 43530552 435673408 671669133 812205272 622475338 870877139 469306626 847425459 344852128 920170585 715819323 929146301 238620249 550993043 370686750 643912718 755467996 858320499 230992959 402309793 595214537 814954040 121069514 288467669 184865183 987363728 651024652 905680554 442835754 742916976 805398171 859110084 606988325 669492511 26299673 772104155 391421981 592716244 607999383 739492946 568882145 764216208 716761149 964591360 711066631 995335511 672086978 863826544 417173680 775147515 186381539 422707894 543981963 872590716 966149768 968512023 152740849 803244888 485457267 543899469 89840595 721351152 602916546 930013853 21361113 580949206 638819362 792306610 680695718 958389388 282486268 324283765 63308217 878267619 645293225 863009709 222507311 505504791 801578267 975764357 19435739 465986104 71325401 378162222 134786819 462421387 373376127 481936607 11224986 281595711 434017699 775791579 66404641 804012846 378512244 973566588 426278890 874126708 378039948 880742123 306610449 669417670 119579387 891824625 48524058 519376917 87856609 469288715 29176338 603821287 225695362 957823290 923464046 973506219 400878947 455058447 932605000 979600797 746038387 874703603 67560487 377473530 109134815 900101793 553884943 683729087 198452082 543743559 626409739 639148917 1640078 791763989 35125158 768976078 357584616 973610756 988512536 998771860 232436862 849069377 791112140 982506285 299470095 863224689 311272271 437074053 713101694 717943637 295145568 557446468 247018058 562928988 301125818 675101837 997632078 997738737 200714860 245236953 179480763 807131490 979409050 998538740 137412279 825082366 503546822 860492926 971731122 980775746 913023249 949352897 72927748 976675132 534191959 538022477 738122669 988931811 898767290 903162262 592008227 788476572 101844052 341735225 909369391 925100791 362516539 769856851 830629358 926389163 837741477 843262836 647540228 835488939 286272969 681225896 839245249 924137991 855158679 894298364 924310865 983906654 773475445 904824423 104848385 842598187 361041469 761693925 153259500 799537753 710519359 888820209 512390097 653234517 275676798 789270549 916690203 977511097 972723495 997969681 408030905 663760635 192125504 439844385 961945976 976533544 443194825 916494040 394495132 401243538 288325249 647107447 993212213 993942454 633722127 844566640 294464089 747317338 249840877 728238384 833949337 860129636 710153801 742592332 398008872 884431075 855675099 966460177 19392812 636543142 283107919 396678973 440007538 955531884 565135093 866993843 804241373 950639854 22740772 67188500 764197513 868709189 156574992 550191266 391433020 644685831 245108038 742130683 276361168 451507888 216592310 732258045 681781986 824694557 305047680 601649774 9544381 390873178 520113301 536509007 73036480 816135178 6631047 234005911 296962765 716327537 673602661 915621872 735618025 856771566 948173014 958388319 925637947 988711642 68303273 361923436 843387232 900570913 796923502 997156670 859140663 924810614 482124261 936493628 938326197 986711654 896497843 994707719 551304321 907163865 818891505 880461684 250636631 837881922 783108657 831272755 805692772 823323337 206277192 614455705 170025731 566770586 267801422 500558465 961491180 962069697 346552208 627641469 106590396 200861025 242296967 624825100 965589562 994814601 404556097 682256355 676327306 788713327 13276888 150149199 234166965 261111697 145817223 458312167 904889945 989701747 828299918 883801037 750656513 927917991 816200169 836843784 189551660 269295596 777871814 894152046 719678635 965673220 251086437 604629217 131218201 990644484 965887410 977115350 97750423 558231439 990634118 996958389 567581318 885958039 502640130 791256959 972566697 999311114 971635888 995734795 910444376 969255480 1347986 923234760 855995232 892126323 477094719 753844165 16540586 410758704 830862908 879487993 860736317 906575463 680808314 925117813 268282015 496528161 781323516 950539809 617645164 921011772 316433435 457083250 806193373 963771542 194835881 752289963 158599269 296054319 794658615 893406735 146414557 353360343 948756358 998143184 814771363 928308229 447413949 784608438 506757033 910850350 51002217 839740454 714476309 767877579 644053526 949732672 332666862 898858107 709906814 884713330 57042641 73856328 231169212 333708094 217960693 306314732 42956404 413567202 461651595 996211074 23998875 533451338 275987831 806983528 635429823 910132912 185546292 977588264 186012458 843637134 71356171 639659032 315022251 900788709 50039218 273501785 693219823 823108906 30076443 806597456 923172008 953419972 535565573 975476616 267294753 326835956 795705146 828004172 923730113 995738655 264866652 658927800 348178272 760166903 707301422 763504850 655311833 960487020 361283541 591874435 783401424 838478128 288241307 990661864 507282446 854100411 10062485 857620443 660033520 805705359 884024575 982086963 119626917 699281644 946677310 991039922 55559750 384504490 950918628 953535797 148556920 156385385 173686036 963084178 308929819 540230993 72898115 163543416 29185653 686637046 574266980 590086653 90605175 331639025 518677395 939570199 802108984 983812152 416619562 795427826 641795813 911205467 478225214 958104933 142739043 177767693 474020481 845665290 336968900 751110406 902386486 909086463 387332497 727372651 47391018 910161854 885847828 919786586 492534073 696768745 879957482 897224970 637481124 965073080 634233341 939651556 80843549 755870282 72267410 560864564 457308765 545106863 785180836 944200485 687807670 766753557 566227083 862846703 957458730 980920218 406753192 672456762 523352318 719135234 618308640 668806216 994820281 998806044 662152743 909761499 818467223 901411022 891382902 906822742 840504271 983972619 767328820 997887056 131629276 799174861 739918354 986297199 672237931 914037992 7756755 416650777 829146182 946178842 732491902 977452232 49791619 574043197 139474536 481212434 527745212 936005103 290570541 454462101 298893509 387515205 871996004 996375001 736005564 737454371 627922896 822760195 708608169 851503477 109789191 161582045 126758101 166730835 406218048 697460893 293128944 323241646 263287774 507267225 113126696 860762843 408319166 980361951 265339185 381018336 351043050 416324705 674889478 789966397 731798619 824467537 249856323 917322211 917719471 983356466 38107344 620169313 235393813 294703190 928026621 985293876 566144226 893739709 511885809 735158771 787077947 843646662 918010759 983899888 663720841 837559766 201595066 660884624 56786649 624238686 642971095 738160086 594985077 876060003 549571905 570472986 911231111 961552889 361562585 734024484 793282890 967204955 556210567 942045962 452737159 524349594 414889057 890328439 760884281 959980353 914849118 927489305 126824025 175623260 902474190 978212145 853748878 891759100 884487708 908343818 714775856 778016342 523480856 677065197 13360840 24508121 808201888 872994018 805539966 980209961 225493704 808712576 61068477 85745821 416499256 655334514 818674597 857877357 109802298 890332827 370800686 846153482 424969114 835090219 205831526 660686591 795193360 862893180 155883054 708128716 346611886 609525257 826623366 843311279 680679799 879364496 198789686 939844575 481664076 717464886 676360371 751738495 694541986 941766596 32461010 373815910 879758147 900909162 303913362 741582350 74139418 437016202 393939781 707929972 785238885 838703314 904416009 910682025 739033757 950385682 964126723 967433929 605357992 833424306 354261383 602986676 810851808 861778477 494878970 762358683 23426874 207745237 633817871 863135535 845504959 951065983 338055160 747795340 112365210 502269459 231868213 681755294 603834482 969334244 512501974 529854454 79243927 826927991 570082843 853145129 256810653 955573404 440384827 678522850 90277178 634295261 617679305 718727682 588478266 957082585 160817496 836583458 501692056 710886437 470220245 949345405 175335194 434924624 782026163 919842063 663411483 903082739 710165977 956878263 924711331 941539229 701691645 772892012 908912299 923541529 421472833 686501756 354412124 925386030 770671982 780996337 789861541 796907830 905133346 987972566 756376764 995856278 402582856 729672524 903011180 988807731 337582121 720530197 70715808 114947341 445526682 892343778 291965180 396044134 202063734 734920317 943902599 974293106 884121066 915905830 246510540 580131196 500089870 927114502 185084229 750441018 952015173 967783733 257185773 507921234 707411006 960867802 96526713 617087710 669005517 967246281 618950375 914272653 892071406 933912131 772274480 858085132 758409969 851234125 728396566 969577869 823086083 937992940 804011668 855775861 25988891 968336373 390203426 768419153 615619421 917304176 509821403 761703373 654671023 932628975 637931718 753155902 891835053 968205528 219637869 639140811 583763510 697180860 302192220 458558824 413613590 432549370 77882023 450998314 785934401 842651723 925176424 968495618 599894913 953265933 25860377 948049330 897992454 927807574 56269717 159468248 641267708 964291186 953280579 983575373 618845060 881373630 886871764 997344055 941790653 947977752 68265329 149909323 395787526 510912728 692978494 847248463 412664711 487632277 407382797 415783245 530366242 743337303 670029259 863436146 896520260 899827677 528216392 612483283 980417788 990554618 637590576 841088935 789624279 903796905 148579480 259212173 977249395 980194884 553916175 798072939 879392629 915177860 771227802 811730733 773410932 974797982 703775960 790413534 910328725 938742599 6579944 726490165 820281386 859732017 835885169 988214271 883336760 992768112 197952452 231681723 817569160 859428959 181009162 963873997 897676872 928212000 849053498 964382266 26275206 257602871 149190955 991072278 753663714 928976806 541978729 809504666 386574525 922876149 594957680 699799562 414163637 916000085 551272189 754593058 191181065 949122944 215079386 786993666 538728795 908775171 701717405 703028195 589074803 955070213 872664666 928879593 206389431 910087671 851731736 998399013 728850842 991516306 159165226 660139750 733435043 935979534 978076530 998365738 465783951 619970960 507856144 945000921 469926892 852313169 389695743 475530863 611806250 968951914 439467572 775593617 708168294 863727536 987797355 992971758 13340932 815318951 454080442 613669841 899811710 954564757 777391513 804817665 146366613 692075890 306673095 950194166 369271192 524117591 796912132 840782873 468626125 864856801 606599693 740454102 334229186 609260128 943948319 970168727 481095694 535710215 298027840 890889826 772675357 780075207 926057476 989458349 994242943 994783137 506757683 890264344 928460831 984562179 229189201 341874134 128202989 493542154 548192882 636833053 159501458 354561995 890254912 968529302 386596573 563012423 527623039 565203271 443545581 947008977 985946224 987758650 662553638 963586188 85660132 643399345 443044298 917424249 140477474 462900416 933171698 934895984 780938392 925559497 124795110 312708502 995542753 998427298 8402302 586415090 761263470 828728632 310073303 913887122 511223474 769687340 737674886 830757656 876244606 876715793 782731712 823088175 315254993 619806539 901670861 984318442 556826670 662804419 253547365 601453409 76165819 977802535 119957067 987661129 521266111 733334418 880733106 974718931 931167669 935443884 151104017 862431830 270259541 397007772 776723626 835330412 963574568 983254512 89390474 348164991 274402885 839213585 134857981 226253143 574433943 921837445 718121735 814460910 557843831 602432697 604831713 880670052 754247199 819123018 526138211 851491878 94475419 458592858 7442568 147007978 186221146 958867962 304019780 466918016 461773711 593166615 729724654 735294387 625121816 971925145 944827081 982587950 222691269 554125468 145794878 396200018 81467359 871672381 128706751 850813909 737445894 975706687 413420192 415065994 33748506 995861013 221260712 372929465 196529796 306896616 343499105 549265854 800596949 961847706 513385947 880180741 555721700 921420408 830877203 849441537 361610629 874382191 835479513 912522802 277492768 289525401 761799243 888199159 831422129 868470099 11645607 772849282 318283322 831129654 589605866 893164203 838432519 880901955 928296833 994875535 75796179 269498382 918841658 925927267 861927503 969011577 975858392 985086094 778383921 985799509 390454086 697003613 440952246 639939237 599585312 942266297 794865376 859590511 368337497 872883576 578129871 675273297 494045737 975026115 449995346 966991714 401092262 820415736 252910916 900973069 611218681 938671499 16305096 514402498 67182114 270309255 838773692 965359829 858382408 937482989 27072993 97253716 670422005 813834614 913047427 997451641 783196698 843774504 18827725 337773244 63359652 465946970 811642678 991582051 726565815 982708570 345796079 820707757 464624958 811059288 269067687 987022912 400574181 749822462 539134617 643266892 503737768 933730776 330589086 378242819 856509652 870479253 473868775 577766040 452457739 776175187 958922099 982101867 931160628 985505911 298411108 815565628 895431679 950672895 974446078 987032380 880025349 934285427 502945439 515079222 796791638 914666789 954659137 979057098 53033173 907775794 893293356 989656352 926244461 936941231 908270333 915155623 306674917 846282755 580321179 745939023 816609012 949605252 915342802 996339998 800744264 833517180 277167896 433234893 439986013 890563915 711332256 826818842 17030295 733633835 636384373 791136536 698821824 760189668 597712429 874704874 134104801 372654630 577929958 867299159 368212960 516826962 145127998 948719626 937177656 988013977 56527676 502684823 406079812 564553604 724242210 857158072 732202382 763939163 548892570 579667708 70357117 847673332 655705129 876745713 793188499 863294626 594803753 641874949 721214487 888995364 202808757 270840867 674811051 945729517 733571057 789914881 299595895 896224058 974508745 991636470 133061150 420588779 659620166 701482949 516747073 861622286 466108989 650580667 70267698 957971950 43311934 314127740 688415324 989810206 938723041 989680181 550606087 840597139 711877784 867954332 644512381 722163702 963875701 975856929 466048824 836218550 594035789 898838249 622031396 719810362 676651856 763502652 808330886 864004725 793400914 877113856 17685960 645044769 265918129 343191493 173673878 958982834 886928933 977188702 608320880 906019183 988069662 997860842 194412362 879486480 590536882 921510489 635034421 789593833 546718877 695237739 516943700 779485773 396286842 435696122 705487352 830714505 969925858 981636605 381684780 448822536 987412167 995453119 448755814 574175198 378847531 390404249 438785335 936864642 967086213 997937180 541321832 961576962 646083077 702029837 306820722 677259660 37107461 696194786 171072598 476149651 895437376 987496888 330006799 691444108 62080086 283107310 657315372 763721663 139567992 293261831 337767100 527764351 229210082 456538846 26572522 932685311 641452482 667757160 574194228 953822634 75071526 543404195 98965367 812642986 293796305 821953805 319389967 678091620 651459306 764214769 868216879 944493273 303312756 970118400 124319385 754734935 525186748 934920276 608822286 921030240 703783230 895293991 128707440 733655140 535903681 989716308 796643870 994919779 749311380 850957904 902329055 944094419 126110699 480759621 724109422 983399986 349725909 975677955 532705099 964024658 421658966 836199192 836277680 891104958 207808688 987039655 547804044 873830299 25568511 897247267 389582766 421224129 83897417 984601787 65724418 583043716 802613463 831918458 823218344 912375502 414040551 779940557 845251529 868022706 521667517 936544110 341933611 538990012 328136562 472535753 364077009 739730796 951478051 996752060 377714019 378312152 432118757 718434277 166759103 576155964 397089960 399532816 661835978 664610070 690065897 770047830 119962325 245047427 911421744 965331698 912009834 934849144 931519781 995405565 771999075 831702778 103145194 595516596 789906861 827039550 594565816 671443528 551460595 808460005 800177333 945773327 863535770 912766296 321573351 403616590 939574145 945037243 675415056 797463645 606550704 825766569 911847289 958399809 166580855 288950005 799002952 958269867 770751173 890490669 61386240 767497261 136854080 187578203 687449383 825184576 381450047 756852912 166945177 824420586 893657874 911438995 897882494 911497499 317154161 665777895 455983530 962511930 387387646 800098956 701537103 984940217 876701088 913458087 280635698 336447077 474541855 517549114 351945626 926106779 681104091 899619959 200681664 333522210 850042887 979450711 542003147 971894120 409905278 946766154 190961077 707583753 644840587 704981334 778207250 958957584 554852024 945363341 658144916 900771350 397717870 468407646 261203927 291570523 501929992 588928039 105670400 122396224 66442314 98873681 131092635 329503291 126721203 786766161 69211761 320161482 854478359 966011840 284905331 827899462 88905474 971861616 598583832 989233160 875584490 938855752 459627463 989982142 539705259 757624240 166327416 305697026 277866036 363452273 289517538 319244743 871494168 931724415 471089232 759408518 199810641 900554345 128423342 303625810 739484256 838238009 594013367 639076742 175156451 998096051 612996169 780941808 165428140 302583145 623135506 892365533 443631780 705831344 108140711 157799107 961630682 984460850 896659213 923181050 169183933 835203811 639496725 647257216 355556369 425164769 316406902 642642240 852723615 900823300 379789535 430302950 518106445 904261002 238703013 648904294 738621454 786513677 548679034 600607856 237310469 449637401 366215224 592869736 975949227 980918736 742805321 950867176 817417061 908448548 834112285 918502301 924746250 942503815 272331091 923076463 326936676 757680012 526972009 942568776 288807866 629754732 461383158 770645264 214719652 636156517 101251380 625673356 91600427 518003565 209830401 459610695 891066666 950776459 759170340 935999990 896145342 988122686 63159763 908789093 280321054 942948279 840503473 921579890 265086348 662586234 201089138 263485957 441496746 599076447 862971934 958059917 32873458 738971069 773495509 988502266 316658454 765084703 28395859 706304935 15810747 884305587 331803626 925593387 937564456 986895531 27833636 326629945 18220328 744016588 147785523 916759135 875223813 957804099 242581910 336615857 130607408 322458284 352064168 773514525 803089603 867065589 358981704 912524525 871162567 952779215 234432212 282102910 712300731 927392036 558028585 774176984 338712302 739539191 468681878 832114376 723148914 808745652 916504638 957213097 494930852 755502438 45759698 327723599 21648284 560226872 549483378 733068682 568646651 719227191 807613603 819556838 788837354 996968220 641859483 788277610 564371601 674351295 896307540 953275455 270831981 843035009 314710804 538531334 721767411 836322749 327428167 578462240 158650856 589638233 974550894 974667388 692392145 973598945 126727437 359023925 625409408 852178993 325056150 780055551 743515767 881618339 173590444 522768179 766625379 793829704 694166390 973029610 291816797 474512625 405838630 487982520 202279105 301329586 561175846 739488018 630398407 920222086 266441831 613389632 241975943 866689750 159988740 698444059 597836131 935662221 279813352 459906841 144602753 443516430 40299138 991618460 726987684 793387489 658964666 731226841 808981344 987153202 590691636 609560578 631491175 669809324 272236027 662355380 198806462 274804625 193811710 530269866 815131712 922339635 394379273 574076619 130254383 278952818 42482733 645134652 178917878 574261246 417031048 956402785 490462294 776355365 337040240 629566672 552868548 972398842 356983842 545928513 776448869 924632442 271667445 574378204 323270704 631484041 645660835 968846098 294325026 991201864 676656580 722876686 67526756 915203473 785257643 820419083 695286190 931942987 381244172 438544198 772249074 777939143 407371301 659449759 421957779 738993728 653174279 832261257 56821343 940055916 94022769 979425312 920303513 948999447 42677656 824425416 597777133 698117827 361932886 405322559 768065856 897244001 488390733 950078480 882299426 925496289 907075194 995694788 815331998 930971630 319095584 737733834 363041145 424899569 489341457 787254430 862555456 961438347 264831952 578090615 554940405 812635676 77166618 518011249 322748349 929721982 812365812 936483903 404456822 751661012 730678867 815161148 363348506 687311177 412568595 468113598 872402547 937410270 795942283 845539949 984312399 985357307 56446682 877341105 343281276 835338782 765899392 801085323 408854491 654695752 372782553 566874634 860064089 959776775 782438318 990110846 992650828 996525074 218189541 485000435 672675760 674424697 157205253 741467988 757842807 811718714 979850272 980275031 283772544 300054703 620964021 714349445 540584946 809142895 525358935 796351227 106050237 108464604 808434691 845455584 376789787 491585844 36684458 165335780 680612616 805512046 152207020 373796314 607268240 905016594 783469933 856531957 293826736 453485441 45772862 70176984 605576228 975382299 673905005 726471906 304633397 747699098 343762804 354975176 912468507 929469817 578914817 991237451 946085435 959630199 881851441 918605693 846987870 854438792 93273765 550479788 538666191 796323996 6796980 424385917 858133867 994712962 309886717 446241256 147220120 541558558 169100574 364310577 237290618 575699834 742516210 977243480 207301478 244507409 307369976 939223500 520069513 938453710 266377403 752415986 548217904 992473503 98862345 841186778 171128462 836209578 472943191 538505859 393655023 467618529 762616569 963477401 941204108 976051881 587158784 959284293 947372168 961787046 398511030 771810226 529807480 765579729 438145007 461391811 104524875 409347357 378859999 607447702 254324258 696097338 443297533 719558527 299499055 621394260 38495482 370565938 162497195 444787819 981932233 990117767 170413519 808161513 832401725 897688917 221781972 290988382 921550708 947393497 916243247 963426466 530378287 877815187 290215224 675827262 608162771 635913361 396234488 857972943 263704222 490531787 464454649 611262804 367447789 614631134 466003485 863242740 617710322 676078676 793438099 819678424 32488148 129863625 969472850 980491183 895844209 960236664 211894222 492729534 953799397 977690679 207181171 784774241 442056142 760511510 744861812 888747529 363258330 819193847 898076350 941591066 426657425 519172114 501900026 511154429 497197593 773341183 759932051 982776399 582243783 834512927 798724548 818284331 533298115 971538904 697441863 921066273 375089244 551824794 644147214 887245407 414324048 529976978 878764689 952440632 629093969 767814398 961937357 992113984 456939763 556132173 420081603 593896531 452088054 755402381 934205019 934619384 626614465 702615468 161410026 343012475 708906748 847387090 345597926 704868008 945745597 984920599 28990395 701958285 437101537 671149389 992663396 997061829 20707567 927630344 312035490 370613547 109239273 485683719 981615335 990541088 729420828 883536249 643556509 697637448 201451127 985317597 735429922 967884735 338097523 854722418 48446920 640931303 764788752 803129854 203186354 995472751 882952240 963336641 686481585 917278272 774798951 861863108 49095436 937262441 655179424 966554010 5543351 850645344 52390218 591699225 612058193 953947981 775079615 939709064 555384370 644741035 617046799 743850150 596299622 920100429 55015858 956655958 517727303 807286449 599019030 921091263 136234459 507047847 332838873 441780673 975993311 996670590 404352164 611006418 648872340 815971465 420070571 823875268 724137074 910923873 113077585 281480181 7614856 927464944 780018833 934147518 167317559 257819038 267695600 456739539 301047939 473442271 2556487 649919816 833650150 925494466 752492775 825332603 798624471 932111192 260037741 522034706 567222399 893116561 38670086 931888533 682878133 852145376 759299596 868038682 565383465 601256919 831240400 987005618 784829640 875628983 760511636 904232475 391651259 682083842 155631102 858363198 367261816 965646842 695328426 961630132 626142429 760135857 368669175 883623635 107449163 117774973 404215696 919562836 298462720 990215429 305493263 621338093 707652239 811406665 638944778 639822621 97746477 407017675 857515844 988728623 328152817 619542977 869118347 967543559 590339072 946436150 500734028 984356703 738081740 894195175 53210690 406988453 418152166 766341559 485919686 781193444 302340712 889269476 576056311 658667131 505540554 617152707 172032623 743934599 31470355 763636862 169875151 789340892 313339394 403546042 729022078 988823739 786738653 982939201 686563796 905684891 586127574 587639535 390301558 927534733 585747247 631644006 764377421 962611642 464228787 996074772 112431937 422870710 381913766 463888523 281659187 816303171 271395253 950348821 101110002 408636840 528306333 576889082 119913761 935582168 890750655 929906904 567866032 840111027 433754998 915292660 403556520 544367553 976631128 984261220 911887618 957324498 974096143 995926063 891480460 930589226 956665636 971068792 536633684 668321621 921296203 944010622 112651054 605327348 209121532 282680823 763408789 940721766 376832313 628462939 248065328 961447977 277955547 383695674 660646701 735712820 321427133 832205861 418300029 787608815 226614740 760862753 719125678 813250757 509153484 790036342 349032632 998338020 863547438 901166025 568845981 696175712 97261010 982083738 300059152 471582214 507695781 909088843 453871558 679113321 619489056 626506483 391505329 607187923 31581858 647351401 537516701 840216020 340088463 677012266 72367752 366956052 561583350 715088225 692328613 797583275 913125800 944572647 314808410 734355710 23233386 500188822 890733741 893314615 714213423 788705392 643506686 671959112 753355730 776598304 34305189 70855389 205307683 672555025 168702618 365981481 396730102 788085247 188480602 961982376 210073674 587941360 58219039 511126669 350358433 858807031 926194966 982883096 225162691 612701766 696695816 748685959 46435756 222508592 520702728 829151158 892391884 995306425 885293206 947574394 942020498 947513024 750619558 796546041 368779492 517357113 962456889 972101497 423665848 629065714 968447011 995643372 478754938 538204275 831770408 926541302 838800682 933445972 474432863 810289880 114468984 363808601 22717572 321349269 446661979 732424178 511810520 648493486 418406093 572880290 392285223 592916163 62137338 523145622 90466892 250356829 113634162 847170817 973876945 980875003 173532908 574055354 867276866 931162883 443708466 491978765 467610805 855410947 765639220 832098309 899321023 941736322 370156188 509316583 358739674 560642156 225021450 400497635 552322970 634494451 56812928 703832094 880543580 937331124 74785604 96935249 428704317 746467958 581988232 685198538 293065202 692036377 97809046 115385758 803182808 844292399 681280771 911162339 738793783 784075416 165811285 497128657 983996940 988927896 676632753 839522004 154052207 982356094 345665792 650888315 509462005 802034126 581287731 750437459 23107236 789556334 885995725 946403375 838829529 897866925 178209638 388914844 491507107 799738549 75776077 693691489 227143783 305423259 154266357 942133449 235204757 310004771 430081851 818086965 509185189 589503511 758264758 891132747 830764683 950960401 493235199 618637937 320821572 646740374 949995807 993040408 109142440 356714788 506861398 743175076 29357864 602817938 505019846 628188553 314374285 552719446 785367415 895809578 422811241 923577752 905934736 923408441 342434641 831591482 821417996 890404783 778028582 949996521 71445826 541153210 135595628 850290938 398407553 702719472 975613375 977395900 561885066 809116292 623824407 742697728 758012559 848271499 396758408 957765689 296812395 333427457 568873131 850079140 776841419 843769748 238134551 388382389 769679547 898422284 150066232 849434114 846512910 849763544 69942831 565822450 369217366 547641282 311941772 807069311 620642411 883051143 535260970 742518919 553993766 844721747 703572441 804889442 940548727 972611784 811080508 917289095 375952094 676760743 968278596 986159111 321946112 553905976 836186381 959065039 203781812 487257627 51647020 274712765 507575494 807683547 205437286 638607087 402173965 541144934 294569176 428255190 653458504 990683919 431032821 656175763 559439648 923002233 718532631 827631725 205376836 607364809 396226362 643501555 396271577 677857436 755899134 802141159 119064486 748773120 533697760 770358965 793858528 889606920 539402244 577414944 183426297 610758960 720840741 776190292 228373412 901755520 904555227 918967851 153154697 769054973 357551150 712344774 748750230 807523299 524077659 754555858 83631325 324874213 353797477 657050753 123144106 763791166 751316692 919550572 674484443 971304511 377222667 496242619 315339210 933500684 515868249 899976976 368324683 515478726 31194197 435150118 499823492 777594164 134875707 264752962 231037172 425057315 419503976 433502705 53469536 378773514 371367515 378965051 26659496 688104221 250633503 761940379 243295381 778199999 765783586 782897563 85632614 430296772 392486468 796997214 453350668 875468712 746049393 800652973 967886391 970523627 237610966 315513230 645549102 878256808 730134344 799000441 265882595 502328619 781229206 795971472 438504202 956782123 903652258 952953427 188696892 566083435 97781036 400811665 603872210 717394388 867496213 991394636 544926432 901778409 110758627 366838414 905347393 949369104 373107431 860713149 621706009 948954682 383202286 706714489 548632131 706314890 362452405 645049790 593462038 729949225 477938248 956337529 112194070 179888115 88479242 271925013 165854485 206797926 1953664 947118408 770296548 946742919 931364907 987117231 469537947 564440463 77022674 137098261 372895244 484693444 340204856 560289712 30883858 605933652 593773383 917790902 804923230 972207642 713436471 820818772 212886633 672802502 380436134 931097493 799757078 804436572 315999532 714160245 486326411 717895807 239159208 310746336 367305571 399373864 822937055 896981262 916514653 962791544 356926346 671592104 112390109 603938674 748627605 958457349 346312130 837494259 500856149 899419118 381632917 446029485 547551271 556879609 683511648 836670461 753827177 854301896 158507157 707695995 229187650 830916216 385229536 482632553 529336454 803001300 580595991 581907359 988780015 994682178 432276431 587126013 952631210 996307808 339308584 397847980 975651565 992683082 851149097 932098652 666307342 777699663 439179009 459453432 23180677 772052712 55481210 745959439 147137451 581116490 588346346 665155303 796526623 797117703 255053293 711243842 252925702 864522046 716897189 877269328 209083660 954778084 337273597 985359210 935370182 938279554 664984851 914641989 328708873 865603799 876095651 907352064 36911864 617606938 879760434 880900453 26165346 763732836 623003603 990251282 424681600 510409796 761960500 973746031 371490355 397218612 80010409 974419705 807145691 958474660 731221321 941544715 981548767 982081477 315659789 964520615 276196936 797081738 962485384 974206213 709278099 982787483 710195871 963526004 773755108 873531302 177329892 324114369 384071078 839963010 774356037 999188447 93963136 402561902 42515883 912670846 649797962 815067088 417708415 964913851 207213602 609062067 641181484 755217931 644297404 647111617 723861065 981634609 866662313 939787644 577950098 830707508 165906361 952621061 255332073 539100647 943905919 991664620 916053859 995910536 80961720 491558146 273791232 968120559 866849693 923747600 782411339 924049063 597725611 991660618 325941371 725544640 702316276 900091277 791130412 821228020 53252001 531424090 563629064 671444823 939057645 960203599 403500353 581070926 421332252 853299035 604713819 664792117 84410669 548521370 771897936 792916458 58735050 549922797 86395802 862890612 261654277 503527247 993954492 995407452 857107220 893400956 52781713 501189497 684253531 897995542 728339997 789907374 128539727 305623323 585293291 883797362 665499267 904666223 521609501 862910140 366991261 711068200 768098142 921218313 136772624 559433869 982986357 986880564 628932715 769389759 961133407 981356247 284050111 732720630 997581852 998101289 41419472 726624614 43498476 843467201 250323773 671435172 159144537 940385421 924722990 986505017 736510473 927897566 855043269 935272186 643285884 885146894 853669942 994744194 678222706 841279154 847701620 969819644 846512587 936476225 104395893 872297237 321953839 628106367 144800027 534982966 605926642 784203350 128912469 707674842 441633181 532774156 548841667 906379168 885130232 989384196 409259235 897889660 622211840 714410280 198734094 426384254 231253380 990349216 350172610 394652226 350646705 978284238 460051315 519396820 33956642 285213257 861706449 879001255 380244318 471177366 516896894 907582510 205593670 649571587 868936680 991602408 899168904 909262147 450879454 781510085 909133717 920921076 496713734 972358695 743033851 773905428 471319808 793349862 907244965 946676441 805937385 924780970 749492367 836478141 839634229 971488820 323341931 611092123 927065182 974767218 510384822 814552431 973058213 993176987 935471037 996005183 632788247 964656313 528054416 672507625 12710467 608840064 528101775 753433709 554877478 890362353 234612169 420822020 209282523 385975450 382766989 552287819 528779161 656170255 740609781 829118995 657648798 722034191 247327476 547780248 223756219 291687838 261063721 914326949 8660668 486646990 447126621 705556134 60369515 813411902 110818830 120830246 182827712 766502945 409157976 514984715 269844332 879585670 63385958 385535372 28937690 185702209 8756029 264564127 830156378 874413393 19663132 320664012 915036818 920713885 348329990 662487982 389404241 550844072 42482766 665236863 617335233 799203529 373475303 978475712 707376369 761658405 673903528 993406397 20409593 674332271 383812022 588940718 179471202 790957589 452097116 568229210 360616632 825991347 883574393 930673437 165590964 990926393 870933896 940542716 788493232 972771609 875152572 956842559 381089025 544067575 964273985 976961201 471370800 947306446 813245854 897498690 239366531 378180693 558873700 744413145 776190714 811242471 359000523 888290478 367481799 834219665 15992471 596485724 845288018 883777748 756707783 808858320 335131153 704883017 235125380 387862840 739840120 869529691 426072873 862309526 105164925 359578910 154355789 876273010 660025341 797435990 953807180 974832066 402559655 562177032 610473890 613046220 979134610 990534380 467141812 909033842 384430915 571716387 707056767 836229577 419568797 551665552 431329279 538845048 277217979 923664141 411941039 644468962 348710272 903292020 160615898 361228436 222128462 545215187 113621741 711132312 394534102 475200883 721305197 887034658 979494557 987760182 116492012 991118496 879788601 973364990 68207153 979845500 515755657 936458266 260812584 950629150 102416225 572567730 969372348 984316221 780074132 852993434 83314059 371796352 815550198 984696650 78642471 514710320 917573145 935585538 598455162 859377133 439431303 826750135 902214559 928765030 434454913 456120668 376836407 964939387 61752881 580196935 557184953 762364745 818575594 988500592 984320736 990023676 803286465 826859505 622290764 622943129 370036290 997198241 224558202 597764426 736379869 834573648 165311161 984219614 40548213 762885602 949082715 958859044 947493909 997187343 102888683 120229841 823347426 860594340 503782733 830349029 670178647 837534546 592773436 662932521 782422366 928207605 827454305 897789627 97415328 134993030 37848017 922311356 896149260 945894194 263058956 673473150 232020712 356430784 164437280 686543518 16209443 935971696 387268726 903292282 901524587 958899651 824025757 916366157 89854980 273305076 428723894 832688656 603391368 735115098 280790264 797557586 391954507 786342112 867361506 875177498 511790583 976133407 525191321 604910071 973277200 985870019 129702960 966693963 386579422 766383653 198366 572962223 300946947 621971944 292154810 846697407 353169450 494624932 92970763 195550549 51832148 749446878 530573342 874023891 923219223 930069023 162051758 736657155 561945085 968866617 845519736 945252175 800836939 856027244 420685250 436188510 83798938 527531717 654454552 844091129 146839167 454460494 236341298 551412166 282678950 540613616 624302284 855691166 732205833 954107949 500606650 623014509 510119976 849178928 607884049 954208939 967969953 972984455 692303566 841246801 607083947 690985279 176678026 620817494 992516689 994087886 360976738 877724755 580975572 792083719 978535223 993904949 13569512 172782191 671891612 714437358 938387397 956075675 272819103 679193414 585047649 745676226 790835028 829985317 308017975 764429999 436791681 890297178 290295613 924221258 784294284 899209653 225183295 273275779 247582396 774438756 136116852 854864464 94597534 520971605 753862857 801914099 718124908 887806961 353940402 661191684 255024908 869905199 911797954 970779759 691562090 833196233 673301595 710204698 388588501 769347317 297899085 552674139 600074251 813033188 959905351 980183661 508409015 855725912 860223591 932427061 695671366 838869522 458130745 871442469 278984849 784547714 257653452 628501357 579155852 653839984 579369423 869600514 301515515 422129689 775355621 820746896 493868176 677310234 621357935 796570436 12415862 701980071 97988679 772627404 193735456 518163775 873749315 912489055 311290184 520817797 814622322 980227552 558810791 812101498 357601049 639707998 293432207 479366715 320902734 681848560 143357238 668993100 275271075 905456542 179277696 840531554 735599217 908239457 233829672 455739648 329947896 547707625 849452572 893789328 388075431 432366705 750372960 825903803 556116727 969750684 820836545 953228150 425887584 838125526 837675679 916555813 329628488 729749343 583276632 813446865 577073624 688403837 985030279 986725675 817995477 961820485 761090557 829204516 294648607 312638964 604079002 877126278 241316668 922664739 789825884 860921815 968286965 972843950 860295214 994039191 734385204 872714640 383995424 658826394 481166256 682503108 347293398 392219226 103492847 486274526 968776075 978444066 720318665 883323285 707070437 783053202 318666467 392810888 897473440 902021793 856878027 949360446 563358472 738926408 823718082 923379782 833007227 866244748 805344253 916098777 375140069 489952980 208036340 649106788 381643343 488549849 696273917 729516424 871490221 944404816 507698724 669263179 156408489 311829130 739294722 813253085 513622126 770697614 418523040 845049326 687059583 974611948 422840540 921821317 964927344 968523511 555968552 719104426 826876837 953001839 652740334 947201628 167665503 444275596 138037362 870218935 879107502 951601155 98053297 621957745 166231326 630594141 79903256 947709886 16369650 793914343 46422263 320102270 705357700 955182651 628389300 729119164 482765458 996764602 15948441 272959766 306459586 986879224 790824308 849294820 835676105 969844809 733835601 824706228 280257489 337789265 749264242 842602486 311610225 495968338 973399071 974188644 876788335 962455311 832295425 991100331 344374540 793176214 843119496 967503869 297276297 821908258 756424709 881970382 416708278 677178734 746937600 959620144 35495787 702222805 944715936 998650597 379290732 638436826 845154517 968708289 736882087 874069378 52322105 206941035 72700784 526338581 866555098 964142983 542284896 551907932 655525627 735717462 560200641 910364888 957867137 966051874 132099283 839461270 844500266 888247798 606013974 762580934 790605735 906980931 796706897 969901709 596294079 670387540 952828637 968683348 814160759 842463023 89558763 862219451 784456915 902427850 168659906 619546822 742093555 984495365 212638237 922388847 849655193 906069858 84907093 173425936 234606005 890592672 648873357 690094095 679884797 900145643 362099068 446638201 194371979 877904472 723759533 844554115 624307282 634643285 932692962 936955191 582074671 600599994 409915352 933751024 657661978 747837466 574978879 988956783 419661090 979219902 573527737 991447565 122903055 612903609 95378136 573482424 646349688 752410232 816049489 844392856 445583284 783495710 369509688 983367187 986926848 989683676 123430193 850117881 187566042 216919395 877994992 943951846 522968804 909092899 237884453 453535358 24787793 793664250 59882911 712635678 730457270 954057366 236618295 760814303 586243303 652326982 178835738 802571758 635181337 859276020 769524363 779160651 946902852 981528875 944999549 948813579 180229775 432613109 876160753 884128121 543017831 894919382 793968583 991882875 457654609 783798990 543475608 861264318 345317295 390024514 194889900 838297675 138596249 751385264 248157140 592966938 277689798 823075316 716531494 843224104 804112747 991714084 673311346 716526318 484999531 997560284 531943886 786723152 199071947 660132637 6912644 188331084 190256369 550183418 931410958 967098916 289667545 436592784 374109330 592356882 316918836 541104214 334834879 834831950 727947795 986548122 702972971 734798800 426166519 717303115 319551070 884749112 698987211 956070029 326943652 730198170 645879128 689190638 752142366 806636232 872407169 948407727 728786664 786274481 67621327 735310024 683200359 816299501 215689807 280725742 946934801 967639901 425378873 911687890 683250986 978097411 492175254 868153439 798060887 949572728 388320969 487642209 303172247 941033144 764449014 837669114 656353124 905467441 719558474 720234376 389010542 931290572 569515575 853711401 892535899 931863044 437668040 741953286 524535429 659248713 558521384 919308981 99056583 832226231 763038448 934348680 608142272 853682780 287830036 897096108 391634947 566907414 372634049 727791211 891040266 950166206 571944807 718345142 925582206 926620438 958898527 995395814 426289479 852090958 702680128 880840441 90832619 970708843 644530126 954918174 470864795 481427615 660618409 804528630 26232693 277700763 466230122 781455238 885886642 930000650 947707521 950688765 164270529 945280929 318981605 391464030 483082979 522863584 839102107 844390738 869747692 914021144 133689318 679139724 179294818 432100622 26285225 333386055 271687908 461568895 306626978 809988755 495312025 623701376 613315730 627756488 87055827 218367934 456407471 629346041 42561897 576462805 492714857 998817367 556225411 985643468 857840969 920375767 300033235 508445712 73197430 734838454 826692173 897470433 606331765 828405708 684490080 901194280 34789750 400379553 353427142 590774327 241090421 828198013 916821009 931168343 171801953 528999006 288076372 347790982 128398852 974924464 252736403 940145695 911685650 960034917 83603855 974868449 380892414 559686375 832700843 963768651 716068552 855745827 585852891 965948980 392020558 996519602 265334284 688285611 495281276 951043383 627641465 758971765 832427029 951565076 146250636 447800292 448719985 927058888 891320458 948905517 435252161 683504121 102396108 219694700 356993380 377888444 83390099 706221081 258724734 947011407 923136340 938358637 48210979 778643246 790285943 940813599 236720923 963728206 188392065 403748607 513171474 663861860 737992547 746870562 626784375 745688541 399666348 495274855 88352860 889549504 293875225 504409170 432484296 584430503 314454849 724508354 71378923 538831946 253383714 315077397 154807899 583816815 182288160 530022266 906719436 993436144 729293081 932374405 200594899 788312885 203772692 787789510 795282870 869099896 293049552 709230428 762545322 899355696 705086011 910927908 469528451 837457827 930433466 974318946 810824258 826757748 97666485 779546013 563214890 974302518 33869412 863531085 426711665 637102733 356352280 558158860 432732990 618675899 124572928 347888905 507922148 880416229 44822233 659273488 268654234 529088914 218246414 432721388 355717904 824671266 860318802 942344171 848790593 889851406 549348932 777587176 940215945 944184493 938218905 981243325 754154551 955415251 561250684 713035489 438501320 588682678 710388296 725662353 741289210 861227597 62817814 469788555 208209378 706509757 441497685 463275772 333093097 946713798 714476062 862280341 532835409 725444862 214113221 945048069 195368897 984180122 545174624 776829975 97194983 445905919 153412362 278483810 449334159 996412899 534543967 923806205 679782175 803887750 820122755 863818459 967058279 991487116 215006699 638671818 592293080 750425450 528158373 868144570 387220718 881872875 795137451 835508140 769267466 847544138 983663080 992186592 229986933 774082582 811354177 943744970 923679064 952270034 439833913 572152200 188316987 671345187 322358700 847643480 315931084 326466451 106843963 296669294 555135418 594161392 704137210 908558628 659643296 849306070 119441715 617124399 454560281 813969621 283829558 920378431 515327838 638735180 849170090 854779509 473125304 976510427 596738763 767017651 356340574 735542328 767230472 968620442 54101126 141594181 834260556 861181494 234775217 693126570 444077006 531549333 871610690 919942581 424920289 534654543 398491719 516078854 847296613 865434927 898246310 962987184 329799454 893285965 261832876 924495787 852813515 942165951 640723790 826157614 446659900 451289930 133240240 815959905 296636650 663221550 873878416 877571694 31397388 621411246 363765551 848479895 304932969 615832484 614781088 837612349 595002284 928882443 907122720 966145947 364314337 368254072 205314208 399302689 28537198 388287377 870062878 872840918 124148242 371977756 851073602 891617107 825414269 915391430 363251140 941642036 286503744 987434714 189206136 489717424 285017179 913472976 222553337 623580073 477595591 774963755 479635801 961046847 616548384 721658948 41208048 67497238 701148275 997822605 875273418 951961096 287692744 965340097 996953249 998498348 37777874 293516653 467433466 931300270 196963455 621102539 841633779 931871503 969058553 976555792 412340881 808201952 582456320 913881658 840819539 940288024 280623038 969420636 913496278 950597143 994824392 996333850 6877289 452939851 919686312 974829990 443823994 800644770 110597031 872482960 660866798 816063207 803010362 815330086 913972738 992128763 608335490 709359288 147562800 184510143 938528705 968636978 830270657 941788379 690282373 739411378 19431790 578436083 739602681 927327779 476917490 726877442 315647322 979161347 987809413 994168603 788609829 810795306 531787679 867506592 334379223 779450390 300395825 769428872 873254386 917415700 426569133 960880026 787253490 844446041 157240458 928371665 813942915 911986703 358535407 853492546 337336009 476075202 441916492 701358884 79815530 466412733 195924949 890881351 737978465 847287663 423774832 468479122 114076953 439858262 859656935 990734139 805942311 879102847 141804284 411625688 476263031 489219369 280084482 611918924 209208992 253396351 378975098 736602130 360600965 896692253 557200324 930368470 562668730 774658468 383986642 464677017 64437507 77784770 153137750 417723238 250201118 645342279 813345128 844976567 816723670 886068901 445811573 457408937 43548292 772934626 406549129 872932033 46721206 596172717 368021818 753474632 675300994 832637815 637595120 765456864 546339737 766192839 203175863 694551675 318046000 729166379 766344282 838479057 920890619 923212063 348111063 617714996 505854630 542463738 243619715 733767787 638223699 646845239 501087330 942057299 595090727 856313977 27965611 683371028 338480348 533286925 135723581 259081676 643342858 660682900 721403424 884777937 353322227 989877299 893287882 977726482 341799610 989078707 200454913 281478698 486282927 861484044 256600150 503993990 67503440 203684769 22482889 838753605 463361434 463947290 300790672 471544147 440352269 772231632 243251113 426035077 912037088 917881815 172701724 920568615 185283031 316207764 550354873 904383568 448014956 661231261 150382507 676287497 693710923 778419657 795370977 908543298 436703332 549363340 116291337 918862451 103549675 328984636 259385871 455839434 226078195 958583482 126436590 561952599 859523514 975746651 99556966 961015041 616575073 647365970 610746748 932987563 755011126 854943525 461023907 669389321 168511743 909291631 374249596 955449257 469205342 664911895 885632982 929649452 844742945 945759544 209246421 901528582 110724260 800689876 992327868 993161125 775606337 942391745 638497529 737272837 901981362 963310753 379259724 638948951 930133734 983090467 216120907 543153340 365944201 814926195 562418804 635113311 597207327 896722836 570506939 737827818 31350251 474974589 515639940 688361084 123608068 305014350 947688417 972621743 759451120 904943878 181086441 925130243 326768677 401208345 739463285 785731088 699185876 741554329 775393838 839879058 901236056 964661410 432679896 786162396 182652586 388022536 409846228 529423930 153809923 213275652 943574781 978008863 223738052 390593967 154487042 888492663 969734097 985024756 444077831 963081893 929977139 941829706 792306277 849442323 756373311 848742093 123111330 326041857 353250767 690395767 951685030 964185624 89789048 244970401 388835171 881319870 902754520 921834110 206333634 457581319 614391254 734840190 878309300 907598709 687937914 875934464 290613177 605105251 547118919 678251872 876641806 878925518 312197343 575415935 394597866 788310665 525446527 911895193 298171343 867715162 736186169 969735423 686082505 745517311 285125042 315724881 642482357 715848931 175925137 185082168 830964138 849810057 231914432 444323642 553872884 950526944 412787615 666921110 846082200 952948143 274482778 758529700 210466740 623187529 838785723 956353747 678738004 836059582 935946637 973130486 730570274 820475210 754020773 909239755 305388406 647361029 648829167 991214440 792120414 842094948 122798159 257408473 18259002 358759947 88159728 372044577 121161735 193488932 561375270 569694869 548352718 997217082 997820188 998129342 421756585 649964877 389344704 518133630 400283222 835570122 183787268 592477090 124326612 552532787 734684081 831389274 188574008 863240765 101543515 466573049 842238293 914442775 35585599 102218889 970215181 981830447 912141418 916003254 625610879 709158118 609721076 661869955 25633412 721931977 305480287 594137805 748361283 825588215 343482135 886719122 155094468 964768426 313558803 564829119 506240201 739455958 221700970 572975897 7147244 337882472 750762499 913681839 84980579 505254491 646056804 805809178 330625978 771720264 178997497 523288223 161055060 778568701 265254347 551045984 220845258 530161489 606033613 620915502 444111088 833750944 278317659 930716474 109256227 236557399 13344944 185083928 520901852 870086914 43976732 297204883 139648513 261775216 867490800 965907717 584612776 883240602 125460225 476206461 338529825 905239567 780629325 997165181 10287868 826128178 850482503 939581929 45008156 431220467 337445381 816795608 142710346 435266072 122014781 267187888 756814717 819011464 700183726 817141992 967537354 973656179 413891006 866381461 436480456 649189215 631593267 919795473 850116938 960636132 120256163 826874420 302225710 528605349 765248090 913290336 487077456 540301666 858467944 883342181 328416061 836960686 117317303 749384983 444672265 712990887 67394311 111607315 108740215 887244163 925848744 981818003 159412537 594400776 591849839 955456440 552723818 951393390 372088057 909808320 16366715 520317719 225424054 963584041 202797611 549888094 280972432 778367978 908113565 996154826 259985083 810828734 807116680 841295838 996709177 998993207 355871971 922020559 966805228 995804572 652268597 656654234 420349911 971249445 558382166 571033103 228552315 418415615 896363805 949452222 486400529 676387517 11055334 695212070 879913272 924219920 590590538 652919209 192987177 494358894 849694813 931920805 640171957 782171123 744467833 878771413 492630126 514865238 134583713 520485609 894643487 934393994 918258159 930861021 824740830 926518940 944645214 992989231 102898273 879962155 39286026 731081594 802823000 971831520 984518949 995103874 305457268 484679035 83215290 555951047 699511020 997860730 357455989 522750411 754445530 945601598 21719624 512198735 774655758 856670140 258035408 658942363 681325569 970947717 263725304 304773814 258974322 534684959 506662024 905001224 445576804 943908512 950122315 973254530 490554752 634712894 145428486 945371921 145825604 301721126 773784247 900840273 251691318 660407982 884114971 891083326 667533083 688908906 375795571 543162985 930107965 935455722 726592253 859696935 627507057 917588154 399214934 878985440 465174056 700906947 955148283 976148401 435372164 970474811 149922677 246725488 983602399 987961564 681597404 920602354 960507315 988108549 871339302 905315888 876685463 883364364 30982043 355043892 888524811 892541978 431095257 831979259 890048887 930327728 201763582 729910824 311268792 643164371 595460328 855084173 378846660 700590557 752601746 937860156 382925091 568520291 566878436 639609512 679093131 799759396 481200494 670925344 601627739 928700124 894959206 958475666 144557929 509414133 239792250 628658580 383535604 755331941 457621212 730027416 78462521 703679924 406716560 832024765 52169564 783047614 540618949 934389036 231954990 589204307 560351372 774031022 307164942 982888119 918395234 960338789 699402768 854821303 938154954 994439334 810574005 929183297 980671000 992593285 310929790 482559109 195344006 643274366 614156336 688528643 545098280 988757271 860556777 964981283 399207875 843397209 884741328 927093509 63408575 652459614 261914414 347265008 611735061 920534062 699056997 876734172 488879469 606223152 116635843 924663205 419453676 425902039 565648154 583115278 985852102 987576856 71284981 530999484 258764081 431827997 570505470 988569454 31470114 324655871 658652649 784116433 342421931 834648310 638723631 962506898 348549885 447699589 197839783 229365458 240151661 798616313 867345984 980532871 854846710 867571954 268518127 740262296 140031226 855316909 331318507 916761899 981265170 987700961 170227849 198839530 535622667 565482216 659193059 676122924 323358515 750278401 214200381 856876013 683310136 828551469 190097722 952203296 182145579 853668227 199774384 974376431 793710040 886864750 136993006 611971863 569658780 896158558 796585840 861034538 265678980 338415657 912497540 961592925 542384491 741833397 210102885 995492349 232799039 826989397 96978588 253243800 991096830 993549463 602699570 640675705 529986069 965059055 529788208 628901217 893929373 994986526 386711570 973103438 367560506 607197515 906884079 938753294 669548489 944154634 194190954 628884904 219461748 299436830 919115589 986039521 212368577 838467283 803620354 834901055 3665498 56011155 686695820 713914949 63444848 349447770 776452779 793571695 187695240 942925789 573030791 877329962 916220101 977456557 93329422 750013412 924822490 955171763 588324369 767598131 113142178 133424470 438257506 677706558 872518868 931221579 951696996 990885240 593142701 985451060 655123630 967368881 450263297 464545307 599879891 790279596 913776777 984285030 547245333 892075122 198481520 724946692 367882137 656102613 116260111 511792763 465112577 693150722 728325528 891018034 300639168 814499246 621911824 864803348 118259455 538772108 651760874 892064859 886612289 916374352 121989395 400470134 960796161 987970628 95088163 776012533 755566883 995702836 228986851 915111211 608680676 833007757 861249271 986489062 664593245 776248372 155963848 865473204 847711805 941880561 272355953 809320028 437677382 999222910 452578935 846702920 704875822 956524256 496233115 565234891 189937906 604593585 269034533 943827370 644918816 950256917 273674738 813219046 470526170 690316446 792174979 803997690 28578404 796344012 407130560 587185326 915074504 992641343 629716307 884948501 458426238 899128860 544308899 678824223 148669315 807328435 703384591 784905471 533689178 576002922 622296754 991094647 242533826 909502304 776867121 958557133 727144388 780792662 54541901 189465949 244384007 799627280 711629301 935487390 800320981 876099193 854901730 989984586 322963921 974103477 424174658 779382487 147337752 582062110 205972559 365052308 399516366 633181924 736732199 999195282 345752636 460500643 217704601 885614907 234758227 314947524 108285191 602310890 412587016 591601776 583276658 619213342 131182137 749846517 637916883 797813052 599040326 806314545 28651275 510937099 159996167 836027999 915799363 917906994 532902795 591616386 511229227 640022040 503791169 606843102 677109390 910770137 110948556 515837620 379703648 812867902 671015041 954309654 322660095 761798989 4119239 262228199 441153700 638268424 397221610 760069967 415982282 759331224 753707594 817968476 386617688 443452348 866032480 893805717 139832678 896483936 703600459 793020367 435630286 644807355 20637049 287893791 334475549 895483280 741932760 806638691 603088017 696945812 861596914 983847357 122366809 974433691 472431149 974766967 319956472 985797948 97568620 779469074 733958823 989526194 921585307 947615049 742897107 760169573 242791575 312728146 634831617 851374190 474372350 789743078 663902617 917638914 448989752 526116859 27611148 244642274 828927352 928238344 623249781 934036679 104444830 446645237 854682556 871784383 786243725 864911500 72932469 193560768 741565581 885431417 718355985 839651055 787851559 999282417 887379393 966855311 269025518 598112346 631294965 926435095 687413923 806436414 337746110 605526364 408578656 601336934 966299292 991936458 110294918 492473579 275551832 390435777 619752744 715000217 237096643 298718639 728275333 767730008 477192562 661406062 335335903 560178775 107961408 995883944 374518828 477780967 65132787 607712569 468041944 821075676 180076807 335160688 805974261 942928400 403199628 804340859 5387768 239348679 566819825 905173635 475122359 686411580 987452012 988982517 971901818 992998898 775628726 959407211 476984321 984693491 694705938 889074188 127572917 969749803 462575100 829842464 672222860 802649836 747009230 964493411 129805899 262313301 779130718 969363157 843462275 907756813 558147032 682632652 65284859 181636198 489484151 649996403 71928583 975598161 559904333 678099365 602486650 726842017 172960818 357570588 474913343 870961963 565141461 580186380 216287586 824999783 360195897 882307443 417764775 624269823 97930301 546603083 925910197 988533984 232418218 807221546 580287488 763463202 948561455 979061163 300418382 314076334 200702917 447457488 842373532 860121625 111653512 640925745 943506330 947955597 449287932 696763040 844548731 869541502 257034446 890677385 564699217 920867335 978243527 983377007 664360530 729149851 183110276 421349847 239336617 293143270 592095937 694455496 276768584 901342278 682262084 713577980 64444297 89654831 697573105 705036262 40707997 433325074 809202092 944807338 680917521 842230448 777549280 803386667 449630329 489137749 292936265 374011895 565928953 832533270 147045781 249439892 821905338 969129663 951741493 970861856 745711336 801019975 119126064 647844867 655048721 983456479 929788035 943912148 531042689 671001161 855910839 950398642 346468601 982755065 745259459 948097624 967909769 972812808 117619572 333210251 35530924 858345209 936560883 995518166 311058973 965266428 886312164 992713255 95132670 201947995 25500181 309620940 183072426 694476804 829668785 928304364 376970785 918609543 754976096 982406676 890915400 948843019 724394898 869652876 549524466 716723238 172158497 242808832 867864931 935928381 102449911 771136115 690350941 933930171 264166628 741423768 63818827 147049691 64364743 834496949 994293557 998437522 497430574 754667446 918301052 975850433 767543667 883307797 119488707 555579198 417188884 545512735 475680454 980026492 174058995 592200175 742119078 957907388 115137153 285446653 438830228 751692321 364232120 951858924 674781148 708392007 669718946 714667169 830558920 993543203 803955881 850432996 655514430 900589725 515396283 815317867 937114524 964135719 702220646 989024080 470386871 527837673 30793089 549637387 54838295 854929177 939716897 958108506 768011938 771507492 67585128 379508734 570812485 927600680 882868789 906235853 147228592 638546371 827676960 829259474 181207617 473270172 585807769 839634817 704949385 896925476 766916861 845263013 381382298 740864279 280294205 924772333 967923875 980039984 469874578 730593231 897814608 980762784 432550309 848425842 646699649 712138297 856172764 935305050 433255198 894656453 279947 125418695 339296846 905781876 306437902 703638003 423168438 507151391 361039374 790723241 785585247 960009927 554107965 726300080 939393304 949604275 902347384 955937784 169507275 369005538 533077378 769493421 825496120 934400586 988869410 998369550 248378173 999149631 400463 478352811 887949397 985696746 638695257 649529028 63470330 284414073 779536126 835702648 95179299 723081670 52436319 662689632 89087830 611445828 441906031 940632157 439112776 741188192 125506130 782517050 125154369 706649996 420764445 770790010 245001583 595121578 47233579 431055518 690145261 880894055 452429930 736191324 466568786 570541180 783880824 983301046 772679765 942228932 873549411 992977385 211916255 528575900 329479959 571959887 842214591 855513596 601096208 657411117 797145064 954143912 791719657 809951123 143244930 726366116 10979743 641853615 945959140 998532295 804998874 839599475 524346829 573897743 730038181 825516189 994226490 996354692 95540837 310954988 615463502 757025071 401038302 490217591 111480789 738853894 766341751 948210958 920647823 995950600 440596010 883116678 302265931 514793107 151804924 440100899 260045237 580523667 650671791 953173923 226272662 992749708 324409582 682120775 191843278 775962633 939203239 964182237 109565678 239366532 985418035 985701114 599647857 979476575 366340259 551359722 763620667 900869240 564067434 589940579 54832741 887615750 945428124 997814689 255913245 956858637 493112617 516737750 45346836 292768141 191104870 298594048 567262183 943628457 303602944 473720043 698299219 753711930 157983846 731730251 980743278 994433212 561117009 797050448 248454861 969123047 72417200 468297841 808023218 823571304 66246021 236331896 196553055 643566688 938936025 982815272 553803734 988612094 647300347 688405293 617811328 842338642 249871530 253892396 709392936 940431576 298764638 418264277 17591676 437290195 433122960 822772629 358188848 547816884 540067985 614236353 121455897 232782069 378871579 843420545 153833226 389915220 274443285 425361273 560620279 563133618 42067284 335283994 528060248 898103768 31131191 577257672 54130656 102189657 814430199 996306439 220823589 669172898 933186915 986584551 762943602 876810524 482242580 696238875 297018140 344708707 327385174 452790951 819461542 866242442 388147117 862748445 857077146 982530990 811249914 962053242 139970973 573205903 610325308 950627408 178566883 562600180 660755217 692467242 217733476 996630195 317882339 924197133 285965851 833029655 63008574 736284606 176305674 356462070 630852177 857679661 19032745 278910748 937795260 961889753 779252940 820498125 942022824 946300068 170756441 239389325 645289655 858264444 119840121 788581508 698855047 922212527 709119523 715991935 856935235 966618736 622227854 967166298 121211358 440396368 83718360 154548652 986102448 995989418 299185883 904572181 220115403 776014674 635854527 972967050 446909375 798040039 304678436 922789354 337095220 989921731 655573093 859326971 62445154 684696768 159903640 247809248 969751531 971831277 24606298 104902569 529269342 722718989 155115100 372088720 245235443 488242873 476222202 518945546 917964762 918566235 465846087 655496663 739418270 760471944 432823793 513889450 70956914 855359107 242319677 598136847 626200131 640736305 167478038 754934788 66947535 829221541 242875388 566344468 974712283 990275340 689058406 993156726 692755606 985378080 355775292 473083770 464034067 735859351 782089840 980548025 263330206 945608345 20625005 720785839 385601557 991732581 230699968 581317768 323523617 729639110 258879522 501144365 645889916 821012671 377333057 653069236 543063614 994269919 985054313 991035043 424484365 660012123 202530654 801290921 494837443 932694989 67737777 471833634 45558847 719719778 960475682 986258046 750835704 902589569 89829937 865182621 793483563 831859394 382702440 527822889 554572697 859107265 730377266 854512911 718366468 988468989 897036963 970015989 740843231 928077790 103303805 799771381 802961754 967528571 762074552 963647781 720215465 894208057 705529151 834115213 276384145 601698676 695599201 998911306 12373204 74453759 748089823 785291028 266918996 714910757 455590535 952667648 582220668 790841591 454876708 950766583 379058820 449954305 359129110 796333387 224005858 895792662 255903594 869257727 576060347 863791598 807021416 983771311 898756773 903059245 329842004 789440711 141744110 541536950 473388153 502937437 514915758 521702479 517571765 668690335 899452807 991346489 45107433 730211958 36988197 163119934 824150478 905199390 448322586 658049609 258819073 752818784 879804907 937234618 297389387 962456951 492164711 542651039 567773430 783849102 554093306 980996781 217595973 509169966 788760032 834198173 29258084 153026614 831637142 857264701 811392375 928393727 530630800 613714821 806822862 893781030 519024132 814351233 691472254 698895461 368201282 652443809 882843358 977950424 775198572 943777448 990144588 991932293 353969611 502522727 993705276 995360231 634934979 955347003 331747346 796677203 893041102 971263689 525630774 572243977 383853937 411066470 596207137 996955659 659507639 933285500 215953080 752080142 323328792 720223495 358365073 977489486 215598353 259623274 274418890 615807614 980664295 981009389 941358577 996757797 172563983 507055333 837575601 928211343 681692298 988169533 312262960 556508602 237452255 440008500 2530360 615875307 840930881 864155671 345749253 389334754 987865550 998637847 437605150 991986333 473551316 509227644 567552058 870868955 857005168 858368483 953678753 990873244 363218580 970462474 774458895 936464406 948733496 959296341 352634069 382766033 95459592 864642610 718172807 916231701 878413807 932162654 428550769 638307783 682282941 711369762 308984898 317843669 828643990 899622330 603001923 951521465 1672509 590397183 641469531 688398093 575466407 970781516 952499620 992658192 983977090 996546941 459806882 764597540 4930859 286736654 183068157 198141778 678599438 796279095 704028151 829483526 844548820 935476365 957512980 975443627 928025328 987739418 843481803 958035204 182312027 715661752 823248613 862771027 253349039 897708101 396770319 817685996 725222602 922726269 219545878 407997014 801233887 980243062 792544850 814585956 554010144 633915557 248352106 756632631 617651858 885221268 92750402 543664703 217989312 531084752 285884580 421694919 801885957 827165255 482987651 509754994 154405777 690883822 313094904 415677727 334664514 432821753 261546365 357466973 570274155 673870450 549190144 823250191 152882277 222610185 617631996 828054243 715611801 853876305 698572377 859775653 558267771 994128399 332246489 954348221 10029345 320189735 826334599 973785746 600321573 637531363 688172178 887411024 777336044 955664415 765866454 965598143 207919879 521426994 604191084 664379266 974645521 989245437 407086566 839554411 314464867 412245228 278423777 373755617 330706128 349635622 401190579 837935025 593375168 637639454 687570075 866657806 723939109 902399884 106947952 762969503 830805117 861953514 969507889 990835512 696541042 955020219 229695440 640254160 857859889 989081468 554658070 634430236 471327705 669961089 64070290 280534095 805727366 982838430 157350998 370350202 582761062 657538110 726594917 765606485 516537768 975015507 821618337 843782799 302426568 373995806 774340154 852992524 241629980 463860895 614255604 861956264 590615692 751147360 432128765 519479414 831704713 913439763 920066296 982661073 442310719 788218980 733708675 927607798 492009405 997335974 397113402 796564474 638100848 653654980 543295447 609821528 300367021 749810630 730650158 950330436 970775903 992717759 739091746 960558737 495292808 761196168 476515739 955464989 405884471 783791830 116726917 511060095 759373971 903716231 465947238 927230836 627834016 830391354 835026294 886841426 735182361 965573256 902544918 999377863 772980389 944954720 529254348 975900193 964644662 965961790 868196095 968079226 915007251 971620466 912498703 941751861 912702346 921992248 983326523 994904222 690390838 820428494 598003186 601522481 674447415 828394776 452968024 646851862 655711966 923457544 595338918 991870428 269304647 274922175 845852048 911997464 249929917 432733251 2803742 227643338 948445356 979329623 152636293 675604920 54749510 821799560 989004701 994326272 428121674 898196851 813988771 897424053 757221619 868904897 696641718 804738889 443547915 481042873 573347644 613102145 638218898 824571282 365433607 717981141 27899721 438679739 573204599 576324615 804409380 842591507 474684487 789053996 30872741 920696381 790548812 854920091 725680065 902973368 664756740 968296772 43490909 825067952 364190141 683866894 237223136 632837635 24548889 457725488 440413417 551045326 581712523 974746940 504165111 907632254 56337603 675652128 240481419 866999230 996449828 996871842 150334577 996811507 143176118 693509530 979535968 990013185 108465205 500082943 731326057 913880320 313765202 586383402 781720866 950398318 989526242 991332541 242156853 554121590 430767948 684264775 111616840 282703459 230797454 326011393 230354115 701875371 558004685 597129893 617109168 823318587 389575767 586171582 167520626 817347498 424797276 779965580 141688250 173794251 463076753 966675587 427316458 759060203 522018951 872124152 412399964 535422915 896844102 980796656 694858824 882083480 676669704 704864194 548777054 707188234 248309655 358565278 501220205 694304977 168734498 842720336 237781082 957364112 373329716 797105043 338676266 635101981 587627911 658082280 151008707 778956072 20468250 345594980 775902342 959831171 266743461 469251365 855437819 980930655 538006962 755123282 959383020 962041488 550718380 998888168 381969359 973643525 879573665 969498975 101233363 716734774 203321844 475682458 665263836 844634078 939141636 953177205 536887159 968436380 282605722 366899074 104771700 539089928 609689630 821069266 424928263 830069365 926667330 998234904 38272872 330751396 333634021 502915891 579513093 994894195 807446008 831139531 987339488 991423926 628744225 994405292 675180774 695481625 241314826 328502293 120126786 183632986 274774549 880363210 727113486 825780604 876839777 877657993 381674003 769404271 620999542 936946944 69355468 712317087 348150430 900657073 54730722 998173594 715488407 760292558 700507315 968496318 398887520 907504521 952122509 958573428 150501596 449935717 305057362 950735602 529544947 700810431 723970769 824996104 28011785 687979702 286860483 629857251 707758702 748539763 176414547 340543290 318164310 840307796 141511919 958717203 253711782 311225396 213139585 261470549 886269249 968148375 419670954 568309496 835229230 903173718 634500390 834313136 337269992 765916319 558121881 813060114 878847510 963189347 488524986 491263014 603033245 781431369 255971009 770101745 149895122 939946340 515784972 984015100 213915566 765013896 839032245 917195726 299265669 535297589 548782118 852890499 942133864 946000066 226077264 265043002 455083233 469292915 931281263 984487598 290792858 949562693 671159158 895181866 953205538 997499809 402905702 900988889 363996079 974889016 222278479 603386500 345399166 546689417 174237473 955444940 756231120 871081649 388233648 514745727 8561262 844549345 906866401 950296023 141568426 520802386 628326692 963306492 402471670 544986222 646691110 940847259 732440135 917355210 135225684 514140906 654864645 727286571 863802703 886594509 295932334 999261598 220029270 321437155 791909751 860397687 710154453 939373872 71635191 749288755 952376586 992040417 569553553 785059916 480725649 989684061 79797704 351035790 898371287 976739475 584594201 791722654 626924702 968493210 281869506 483175699 822486751 973395080 555798200 797718048 991101357 992776586 691436744 929802441 82292902 527476543 160589095 451882780 555901342 769707321 526499539 972082161 943108415 971312177 41239461 862335235 224922159 510927088 844464579 995299005 462224240 680684738 488529527 534661060 703544628 881471066 564523676 852520827 486517939 569982803 796301499 897036785 924005110 988037352 270992043 752899483 564066250 564609068 227360589 588714308 592043590 651037576 740958970 929895584 872681680 957770418 709895940 928130029 215572806 602880200 169916408 416160651 668964106 750650262 306695563 655980354 701785188 818229783 613494863 758184492 392893652 764922337 282040132 587758107 139180948 481044701 28136058 238030139 795057464 904024924 595322683 888196247 593827048 613486162 210244927 277869500 72348422 512347268 750626789 879988534 690540579 856891493 890980898 895355364 273171393 329575102 409431885 531418211 388397290 428118464 445009910 540520942 859663773 886781163 521144342 571727478 200306956 597830757 293941616 517178873 946039003 954541821 570459891 985049116 385618125 754497921 283442678 713971252 679305299 953113299 83077157 455000008 506631265 724123697 132666980 930100352 768465583 790280674 298034668 403861882 664412662 811466951 636184857 861039211 780185392 938654549 749275268 758231517 440475110 617140568 901440049 905057549 93697798 424289388 894390683 900314757 225901036 570847701 427810406 759510918 924775946 952647596 181870789 823478518 805651754 930955305 392926770 892704634 193918997 470949644 952008396 997781815 217421438 763547371 170308860 933827478 873504086 947016796 430148422 481028181 36958716 69715808 74313435 986206902 450840010 946970611 393874384 538265783 575277492 773732296 619156062 761585565 443504372 888131372 969749937 983327906 790543159 815214791 350492339 596366086 578495332 971900977 165801986 804655564 485018348 641689276 373722638 869579475 439844802 572200136 709121699 786215525 554382352 945656175 990038759 997182836 117351137 264398977 391313475 467984076 12843583 320662638 398250487 964920153 220290322 854070915 314395938 401174405 139169433 946841520 67665772 178095466 145896891 975451194 489850266 715561114 622406458 782330698 895897927 968909734 739619682 799367836 743007082 928231647 197647531 567784085 260950347 342748219 797132723 999013783 334833598 468742748 806362897 984218806 166442758 200076885 924587981 955686586 31571279 963723358 453921213 635265169 808203154 852590064 387591862 520135800 382406022 392627374 486761154 777067416 428433343 846167778 61861500 469697236 944117765 963141262 259074005 435084803 416057712 608112350 793540616 974677681 872425097 917194326 166111115 374814732 427624697 842113291 316252367 559289000 66511525 669337036 749862273 989490394 226642257 566974901 171163302 348548486 14929329 641796474 280459967 436103941 584136630 842634509 380909849 746401129 171913440 213982555 238988013 952945419 654885854 705254321 192473588 498757629 223180407 730936457 99437861 111606857 245098545 709764478 910019697 981729098 91089141 622565859 345375817 346856371 965175629 969826274 228598217 650099601 123021191 758474395 202123153 768407240 102373097 907158538 527532495 587423610 348197933 423509530 217572120 888418943 492487245 913173300 527292871 907050613 18031951 406006273 252653672 614259924 428935791 700247310 292735629 400753823 193968978 980987245 537108684 550244336 632432054 804672608 603777741 998314944 438731079 549310293 52697307 296416631 420641927 995897839 801531721 815843569 977957888 993722013 995764251 996984460 39543464 259394624 477656996 621750433 549539721 711046359 624399160 688414634 360791442 581218607 21655737 41386694 424335964 674444125 247369026 947329436 339589391 517188826 313475426 597270038 513131958 816093317 192257188 221887779 267708604 513969368 366842653 846000918 979475818 989391939 79302743 559121725 376823300 527758712 63032123 237097061 796565331 923592164 988879681 993737002 358226020 926016899 679305704 711230301 637958067 930085135 452428369 518166907 428443609 757025677 511899744 540843142 303632478 386887518 190592245 244510178 756424364 845681373 858642464 988901823 859794807 967237228 712720126 989616804 996602345 998860935 974881377 994397259 65077175 993914340 918908658 923317289 540361801 785042136 166869670 240740299 15296715 897577230 871077156 890407166 882949837 895600634 748269324 768516113 743350653 749032046 55355790 369561784 990053155 999001833 616275153 932769668 399144920 546237361 641471773 853115119 720777188 976254547 989667067 998488159 229229449 388918192 341399921 755212138 417338577 971682538 865979719 957722983 359667368 433131776 58691001 657510500 544306627 771061073 206178023 734296136 955569012 988573719 700219339 711648478 463463298 494179566 512951538 840181649 668897950 716936640 394736918 685657756 817900678 907256774 468029135 914885562 702072863 925379679 779221880 907864946 355285365 803496349 974576984 984815495 507053205 950802523 269092645 739839914 236747699 881738565 524113206 855603932 306956965 898179017 883843247 977074324 545174354 995919478 703135103 983808432 207840558 917963843 581501364 825955580 168769226 671596940 452865381 508941302 358768669 993502939 157156773 676497856 10363622 926407582 96815408 960925875 757011963 855464874 786296425 854354237 853218339 940123931 227354817 830277844 964874998 986928173 675485764 917173120 823433193 971617849 775663024 913472111 176015653 299439426 771864186 786484561 177764487 402989273 188313012 865240668 225251315 533927128 155335130 518759629 203318662 733514674 229701797 540952504 930965945 958252769 263024783 368868380 416477406 726119519 867937544 926199140 172669813 403084550 557525600 621125165 607152251 900927410 224011987 378610990 231564456 603092553 197738623 254031974 156164590 270928873 848393388 954336725 838020978 892073175 241517763 534126037 239519215 792831694 519014799 798222066 816180142 995351024 949821619 985602482 90821699 959986039 117666855 466422721 656730219 741968780 879585839 951944885 486753068 629631638 121742143 820744916 18641863 238782071 600966370 884643228 78685921 985826119 102715562 216754581 208184821 878118271 977329257 995332508 875991059 977892318 643178225 985934119 362745040 810678155 110710600 198073987 914899159 963846503 375464094 678321168 604372524 636007150 775244251 906990194 932000317 941726529 515702631 989070765 134861302 323363086 711168472 799910661 7157316 178594036 953158209 982997686 653181376 937457660 474928196 717670483 942434483 982183924 744652926 793453388 788187877 808638049 790398460 946563456 250785085 838844946 269079618 495696618 61429258 701435864 855787874 878795925 498246640 761505868 941319655 988275818 715496400 923926710 622457219 660230886 58935911 708992915 267884851 400388143 16360577 650002856 667008468 954631772 772164394 824656755 754300515 870240574 750721766 762547218 114211825 717195500 117659957 859591296 381181917 607786866 304383685 586253903 260172682 598040889 544203947 969320793 452898576 873998988 494370283 497409616 735836861 793053829 834561611 863963243 445705609 607484294 612467765 791103069 503724966 511612329 832017723 970853179 712067237 864610490 933667001 991727163 35872422 359631831 358842210 955067090 436236107 496028926 41192943 500169142 722326061 953836706 428402947 627174852 599360753 845456237 42880508 394560131 596231122 862351085 561547011 698961390 305464271 467579958 891598800 912350810 981728472 985514732 675159142 710867871 324972746 449495389 844547820 948380412 84154533 528064782 499808170 869406641 738538380 910842154 668289275 906389263 752741393 865192402 122928195 359355815 703231933 979358535 863723255 931274384 589690405 795443403 717996340 799922095 581066911 817136617 133528461 951116229 738200759 772114009 510580915 643560648 658327545 936982664 503897573 740550521 855157825 882490735 830386559 986592013 664254061 667806219 111513917 315857074 585189112 589910309 19099570 62514055 846578218 872595448 112621101 652646360 433835873 712459347 574385664 947679511 882782603 913719958 508034831 591754024 813877598 904943454 339381652 821824265 655907328 913359418 771308846 894790649 204888284 409227079 168341242 221362745 663363043 682285906 155294211 968079989 356217869 669258358 577578556 626235367 125480902 802955194 486899588 647143320 862078499 895557902 424301519 997371237 60065372 266142292 68651880 316589402 729649931 959730520 977922571 997933712 725907800 777116995 374870350 825877948 492647984 937050484 322667164 843540862 624676013 793377054 253835265 464667160 59655706 992167540 475384674 683990244 273565681 989276699 462813929 923190100 454258106 528003711 351759847 505251051 446657707 885545090 135206469 837224387 875783667 905393883 317504224 730376514 726719477 820209428 171649456 354767414 161402098 775716843 756247359 942417845 618032787 728239609 470298841 656516636 124096394 813802908 244822095 378182209 73121657 268762965 366516907 682755775 107146787 825203822 960381026 994978714 276164300 353561550 39861521 331048297 312934557 569292273 791106636 947942557 596502882 925000334 126102919 438351480 143347874 810303988 757036355 929876701 566260242 704902817 69990359 488389593 852703643 861314341 126546695 984377640 959526780 959568506 878300992 956356651 165983018 351583362 45679191 752238657 690299406 919876321 268746344 842389188 445081867 793351551 990247804 995366014 880867743 897580916 477866811 657489124 711364896 798808095 391032529 664096371 994841279 997602940 659466469 761445047 720483617 790013716 465099620 689080529 805351744 839194464 730722947 796319644 114131179 825433978 702926693 966752657 195436437 431369222 978818873 995709294 659254101 982932017 910303116 999391878 291999383 495429179 78916895 879734978 305180732 667183225 836901590 885106597 312602452 950755135 805731997 924615991 301078479 971501397 774846891 869527443 119384228 309772978 247422487 375217369 764083455 779229347 251344028 498618324 85360123 169109443 474246536 512873054 202527396 905873983 793768368 919232381 632482592 717679648 164095113 982037463 115649741 900668474 331709023 463438981 548034661 869079215 786983363 916720003 289650281 680396928 755607847 940864316 715181864 741406850 940182676 948172565 809263376 831663433 507298929 556851895 137318141 176626348 51858329 684160693 323805310 590905633 294693017 609747999 326011508 736041531 779819187 836105756 629207926 735963012 354146377 383307439 406192185 809510320 576228003 779538461 253184516 759271991 265945195 523972769 298790267 584516275 450698293 975640353 437278001 941502204 462497501 712650716 645692434 847821574 709240586 987583522 373091431 432989998 519347047 927054912 55021110 441825212 56998264 193336720 647613111 881137256 337915847 608843527 13063397 135925133 530210531 755718047 7586231 429043142 872708581 973924244 311030589 946264575 975646056 998484209 191811535 787383590 479060506 645631349 81358177 251778615 530318901 865832542 142415035 201979598 2680381 904242850 929845340 971141564 661355894 931188886 988360972 998194613 795425812 964704854 6849375 152520242 775779185 874202605 118072894 371841732 358476070 538168095 418486605 502315934 362132591 366679962 718338892 754485333 503876046 872680955 302230826 547137407 919428100 942073761 61889108 731499880 153249009 520286168 958228670 959615215 353049021 511927339 999033450 999095818 954538866 969020068 916299579 955931025 795706474 936030772 60042098 101957731 26433098 357604554 201815508 995459070 41524970 197661425 373493442 572963192 791429321 918302321 910442762 994645553 563208146 644946295 478819820 992255015 820975888 890878749 265331868 595021408 378709544 992986783 185069801 423689146 719410133 930628825 358662783 997504804 381447611 620863569 59075285 510800510 212142627 536131336 710509022 861230365 338728761 340783441 204694269 677032042 38813063 655554751 492620595 992910582 278090538 820664066 123297370 279727832 595857412 865181251 271448058 590745046 53345465 428138377 536326659 837183410 284919587 392101516 810175814 865688925 748171874 803503017 428640296 534699530 75231485 995420737 718043693 766856943 181724024 750311620 377273609 662371498 277950488 445526054 85121609 163704630 809201458 921837745 957458051 970816383 506136275 990770771 713898143 769477704 579720247 742287336 122382805 353761138 663904522 722845720 53721056 598207986 284327667 791171657 892912233 926127604 661372654 972859297 189069718 838547788 106924348 913950221 410464044 457074744 991479617 996743042 449327884 690948575 298834463 868672156 23058192 898956532 619861218 731189498 221531957 616200752 871920209 955360533 933280281 993605306 434201853 661625299 244417506 413605072 323694415 937462343 413712150 858152619 656204499 981971442 180517116 752617567 608149238 762324607 490662987 987466246 68395456 654675151 507328643 696388631 811502674 833789679 839386022 969021502 501546157 519465568 970584140 996251187 98874107 345511216 874645149 932898237 312773204 603985450 613655340 868859016 132977282 148177510 326117476 910534235 160757954 682297873 410371954 576231638 821498359 979964584 242131406 773676302 191772462 653375333 975239951 985177177 76376410 183173941 701538766 972541784 238436088 917698367 616660956 656585625 840055977 873310946 274897535 341943938 248911695 445852801 34760754 761748586 774198458 992210590 803221055 989689408 558568598 953708729 776625712 829879002 486909537 832000626 18267396 647326352 444277445 824281467 116170846 687312996 448876233 555998439 816100752 930654601 519228137 681405914 97898907 469516735 549444090 877291730 862715629 890734364 663777508 711437211 437473103 649871515 963450929 979180788 787200960 974067962 793812485 959316135 239626606 832797960 355690259 813901101 250118900 417600293 758966698 844185643 582356994 930161273 552645888 754005092 780761971 992417434 176633923 366362490 388471102 769983096 616746842 824627916 942836593 975753560 505997932 926396168 124934872 285405407 954229553 980027078 145736549 581591896 984534836 994162361 702779300 970424265 563919384 668230138 119321397 627045520 398354667 866159475 814025435 841093148 96109395 941236278 484918877 680518864 220324210 397698295 755370851 811309135 902432674 913765839 470598526 756522747 574692420 667806868 467603320 846296985 136839785 165268447 87539832 258493326 891571432 970145864 499515446 894268196 172150019 248433221 201540899 652807675 25594906 160475273 755571463 939524101 170810573 425065388 739499432 909730574 260780938 568121810 579917317 995629747 523527682 951584423 681493737 797994925 375114161 601137433 717438128 824416280 415197998 805475992 367274161 910905871 881533451 884493138 123470568 638700508 192578439 491701324 939420520 977970288 563601241 615702793 303767485 430815576 316516174 406609870 343112015 770443310 294817680 787971427 553535898 655471142 85946849 373855112 720630082 896261226 240730400 514477553 505906422 844983346 198991432 573521621 519107100 812270142 989718841 991539047 17582825 539437357 16392682 220282981 264713559 388526337 452288897 881541827 555942632 972841606 80814631 594300770 769271774 862741176 701419232 812560958 268457663 717411596 970888287 975344865 429944067 817766438 608215342 883182158 333909295 388490062 628738372 702388018 686569961 981875912 326667484 441308662 504258397 646280418 701892397 731760572 864502747 950481969 328541644 911624124 759316759 867058620 320656592 988866042 504066283 690683041 480134242 736320300 470988205 864221974 16033266 641398598 112359883 986543031 299922484 566595420 586884437 971419198 269104132 323047100 327344246 374684726 442753731 670927942 164037988 705800182 544660890 730712017 643147904 739571533 498501827 574313494 263290583 929836582 617052885 889969871 165344509 626305359 350926830 362986529 916822953 994296333 376284233 745862805 43971884 950039065 518688638 731563051 893992536 974952847 401531181 851809050 33875920 964759509 65919589 431693500 485643639 700047341 552790199 896159414 658622305 661254509 123221127 696255670 874195640 966561741 806311457 951229457 628134526 759427561 185265697 821722644 799061031 973582140 354628748 470904907 474789287 924010124 947989631 952564148 587709226 860026223 868020487 930915735 561772178 747436432 115145440 798331605 933952463 963985352 966977255 990922175 115944989 728320660 450901997 774002584 781642494 927971740 891882916 980357792 670252909 898470199 922927230 969361153 617644935 651738475 905503587 986362713 393385706 993670675 95633371 192997832 676014351 765275626 227678366 746259479 676173920 869111402 332740874 574945156 609509863 951352101 179466407 977076261 841543804 851925399 665632937 742433972 168967932 888330386 291968209 973025255 656352210 919175229 282672889 476232773 894850397 960013597 420972069 822293198 960742912 993582166 739218964 888731661 210446819 964876485 618698832 940416890 700534771 766362058 309514995 538374571 946646864 957672128 465579352 676288521 211523916 725108277 468399514 928852661 433187078 906795758 32930022 935862900 711265660 937715799 537364774 870986624 162035648 270373762 908888032 959105096 73046696 405644242 64386406 913109672 699762162 940444991 651739112 831249760 852562458 969391221 367780293 628101514 638631930 987791244 663672619 786151777 667052645 978052101 415511537 572295662 238045209 619121587 400501343 417238298 338788174 358510121 196744276 990586187 518908963 622533721 592017383 628478194 159964164 840170338 543897787 968454589 871450319 948926147 289547296 541813609 335147002 491610844 678398754 998664780 315741916 831574925 649234515 763311427 217809825 322115465 168567878 743504400 62662204 997741382 612366948 878072684 389835296 423690988 77732603 506453130 372428111 502751819 718423375 756535109 277826310 568150265 892412797 978160700 219263504 533893788 489067888 542273320 24808924 95341403 596834355 610324769 68348742 861516440 766369085 953541536 904629152 938281169 754739792 890671868 521080162 863721762 268675638 625830839 725359339 805514500 484894700 803774306 55440648 229130928 942351123 955699903 905629191 990926721 160001522 322766356 442857474 919832176 923161888 926462113 520090688 933798861 341418218 912437633 387431865 537189412 290783154 952460693 517154909 812538131 341508464 806151745 881874254 907222757 837953999 848810893 620777175 669943130 885774831 984110694 785599090 940126847 228715846 732644742 93983415 590243470 255223917 979798278 16921791 278761096 616971813 770623558 237405120 607670229 83452595 242897239 560175247 833739385 835369860 970986909 457465952 988348254 345852030 602165892 547824332 852948107 971816858 990429332 386808812 876626793 953930426 995104894 148902591 792255636 59943502 966250486 866927855 921215483 718616391 797082061 36899331 204261910 875883897 937796155 872818318 987356188 806070421 953489801 514620067 930010553 368643964 769033642 966308854 992559076 477377043 731900228 639079995 771225898 392729523 860107637 215686542 850134058 553922549 593848775 275060774 850868444 170961223 447092524 788901299 791348332 217281936 745395869 559726669 567358449 190375238 776631881 960959203 966280312 639548487 890835015 922472137 962148709 101982907 987665898 740523721 931677785 217601134 963667484 291457322 992690789 298289391 467659454 613593086 718308294 526296315 762930837 3191032 899236137 209572465 757364112 105032577 837550630 726061448 879330597 581894422 847760225 283020841 526770345 3350095 48729818 628546937 815912920 248664527 577164877 586717657 763361800 196521964 988575803 60207532 553379612 705398639 829104521 239022909 535585524 457175190 461759187 221950464 290829303 390464380 458883879 834570765 884316021 321635337 387522891 553508226 678054907 957453659 971487801 570635153 584222333 90326620 791112411 345904982 919603739 948683488 975951798 962880558 969533103 310614394 464356722 467073966 948569984 187677461 882197672 980464317 992339762 436795252 879173901 551362723 650734719 828320720 865983015 528782943 553976236 182429717 199643970 299579770 582592635 772520677 887491223 342548331 663821425 401259822 650528505 70800132 983026999 455300506 835469110 890895520 923522732 143745558 231801628 621409978 858018730 721577673 763734287 608012025 734458470 148584178 783046787 343128690 850712818 876280548 920614245 857363379 872563874 653216338 699470468 341006068 941527014 302307606 302343330 514230991 583676372 537842218 830327438 256831373 303446892 279107936 425775660 355179536 579123937 907044945 957657645 229745262 549124964 323746861 701701960 755539372 864985012 507221102 803151494 349652552 767478526 688879334 870848564 623179828 914832936 78008548 150770271 933464384 977543230 142822911 171257770 648219489 866197192 576715984 776646346 660832801 770435996 79800645 269193731 900093264 918623746 34317871 305970150 161975531 927367501 982361031 986638889 337936273 629166500 913746038 934497637 942596316 984884290 935741007 952145117 132232177 195307484 746326557 967222927 38650071 907101608 355756818 630988231 665371039 862514987 716127356 913854032 747766210 870288136 836788285 862535973 714325705 959218006 570854866 864155465 135783466 898458682 687469344 773603544 677081320 740268745 846826112 910991192 624556233 935254511 320214273 575319461 987659960 995670131 813753071 885297658 350409825 653779098 366965569 495353058 69607644 113836888 966692001 993409147 121888233 481044230 705210964 966751604 277942451 498971311 431264389 727188666 17821500 213432401 537542710 853463444 346338846 744883769 725280073 806461883 871382596 930596386 584237597 839718485 249755739 903328220 946643925 981939632 882182651 988217963 946715943 981663044 508912020 910914548 732313957 767034666 992871115 998052670 223880942 618005623 110129239 146232993 76303970 711970767 637352972 817710010 356926759 453709054 334629218 637810154 354206015 929673550 663411622 681793410 380796859 602181315 423159125 587406343 758301716 942745616 708534968 792493240 197995093 293837792 976689742 989858619 725825625 817155580 16165407 215044393 296659994 672424329 206194328 305551823 69900866 278973927 890061726 918785297 977638881 995174960 369581078 814514752 196829704 603424300 68926714 604367808 543907607 617847296 465954257 642573722 928493703 975957629 430582378 903397078 828846762 943472318 889744831 971071227 33213643 172229848 265818752 387191981 219541794 874871461 387292492 949761183 614969690 772765272 998272132 998938944 201007519 242458220 523217631 529751237 37720729 62145908 268991981 398542890 70301986 449465229 190647515 360216304 640449334 654778033 292164326 371016330 271397076 925733511 873575578 941899003 368722042 775944923 195206106 851983932 875399537 878475162 299829695 323239601 250271156 519939907 37549033 487320062 693476707 955908777 766444236 849462075 895755108 990386675 237096627 832749568 297010267 448222369 491372692 592806542 653474477 841928065 10085737 234218349 166757976 172037864 330483495 579039068 490287165 959160873 238150665 776835867 574373615 868067254 299748234 914345592 800393042 943559171 957201232 965218762 36086828 560685772 658691105 732178378 345954271 362903587 682683703 868672071 683721685 751910350 44718617 725605114 788320915 863333587 10899866 383037452 613866760 807651512 39846839 86681812 305933238 787140795 826861050 922944517 989464939 993832803 886445192 922554830 850700198 854394274 763691180 912258822 172264893 784705362 326313327 409789235 718256078 875613459 271365668 755675727 154240531 654272431 50094152 205466684 992642083 995445311 805844115 928258376 810672268 951893917 491291322 509218777 234678189 708073308 222503041 857651235 264039006 981441231 926333477 989545589 997192786 998326930 412956376 609194357 265922391 941482127 871901046 878926717 915869734 944589347 788855723 927801326 205876389 802116590 283945391 622779253 942973117 949516739 865160939 890981448 33148515 280136113 779791102 902023323 429231494 562356059 483242213 572796792 102320724 953413747 638647281 719168639 589136549 842566040 418364971 423406414 889600273 992002109 233154044 690944736 721311274 908750443 402583382 898477903 588424281 887815872 511096941 643065395 825464530 902014776 215761622 817653333 949615118 969821956 52629262 590758869 210323513 304407312 917107995 952975443 306819305 835451313 130753273 519610601 408435639 805998301 158249018 422920095 399207294 439225833 108089645 132090355 977334904 989058019 147665008 513156817 149169485 428619075 495535834 928252846 171149480 252679156 909999685 972306091 153401326 758533398 814909564 912518056 296522198 610822541 519099906 693009324 845615515 907091964 354004354 637967955 236522449 825405665 138119685 343452294 232777112 598453503 240400420 780148580 799881286 807578473 707956568 797686952 179946497 340800708 801747409 838149844 177187514 888299906 932729120 988229512 473203613 608985528 191364234 657277833 403621119 982680657 275017842 817146541 383544596 503686945 816979254 908896892 343341913 791480881 825701991 895968974 122423036 723179081 305800452 642028591 509653741 971739492 418735301 722393801 853948548 856278665 549171179 667089048 906204943 925656938 814022165 951548408 228542650 359864617 355017832 394149054 307088812 453910384 331057432 571269244 704652493 908894568 696584044 708022595 440083095 486391772 100673386 205499582 672159800 947084630 747634652 781757186 253374368 471456779 468201844 939986887 85713997 708158855 769095420 897688079 468583031 969197800 455470974 456548102 139689345 547345445 697196503 908813516 182783111 679188965 563694270 961047348 297449281 381705058 379833964 889960733 170264275 726946532 408301371 634057205 337477137 494943479 800598386 869649695 738995932 969018547 462421972 716085511 957576935 960674426 166899119 264656474 590840933 994807933 649589890 888363232 946772560 958459962 681356028 865500412 263360666 263975849 920005512 984758435 729391032 795701901 614891996 700775805 685163848 985007889 590536101 739788535 166320783 198848206 548942953 669906718 121079235 698605096 836096766 884692545 5562088 499188891 845190536 916176793 316559134 866764545 917920389 918525131 792058227 981927140 79851709 275264600 159209121 613913155 916958188 972904514 651256838 888194457 170227253 551015130 271980267 486319548 26844649 458000404 394887496 898499397 245858957 535711515 441522350 808315085 642408987 663682117 376231952 596130106 929163603 946148182 294382802 492500844 410969197 728293023 419541053 691067392 188115045 886122167 29303632 662297836 390943662 884861022 114779926 960104705 418890581 604518201 889510750 936008857 412788385 737528153 509733896 586044019 895281005 960107920 624704177 993220422 61716457 805275987 918671152 990164868 379540403 411753773 788067070 827544803 344715933 890177700 795346052 833622157 36398234 95611556 124355707 987557432 633092173 986982129 504960097 643514188 875165234 933268212 963543457 995850676 795179419 924468845 837917692 907271125 981690259 997593155 902962195 969709401 101051719 400659005 821451254 882631813 751550889 912193550 634665795 986127904 236721496 500118792 629138222 887093036 302909576 542094991 83913351 206314710 171574572 895638974 825296185 994232014 870248242 928450745 680537205 714678891 338456638 568840773 369955682 824221395 881272237 985510396 166249945 260136285 633082429 865245238 537343549 617857574 488932999 771283311 924779226 944262969 540086600 765007162 166443226 659465802 903767610 962970685 902500277 981364309 789905313 934933389 476647597 518809695 469354642 646927083 430165208 496209120 651110243 854777696 170968271 210202236 851125595 989831444 919219400 971985550 719037 167672783 94234308 995329130 282548150 935393450 587282482 609543043 212572982 290833878 368515368 893545024 5100096 407004131 981587119 983268571 426333739 683800339 77074482 489697600 92439663 799998449 185359851 823634257 90817456 96062688 269652264 887696195 591330572 779516067 882336205 913845565 318316851 900172628 918466947 924853585 628438780 933483062 907992520 992507084 185223338 650819557 780477914 907763143 676059830 880299096 594182827 921293593 287344479 412184333 820051179 848675103 637790771 905966750 421785694 477473065 368784536 655812068 526000704 742314457 261596896 821040457 163992403 993155816 59795082 229499935 918611806 996280850 445770505 763716306 579860845 861140890 886206834 968290995 821056772 951397140 48223776 875602182 979211147 991178863 630416856 926528981 700033850 733784766 578734103 934729211 164013919 581677763 681652983 948924837 685788681 815696381 440955155 998136256 710554425 855932085 82205557 397358271 336843198 819886345 195397010 900021971 310245830 869856885 816375885 893448114 693632395 881366235 575602800 911308179 632606170 747768946 892121900 899871650 660808082 996993432 314844378 682758174 873431926 935102590 840388520 944176343 401262768 663986836 216452375 437894070 593093598 646721382 500837865 821135351 432515028 820232201 720367859 832643175 622286560 951476725 193748171 733324435 177889402 304902040 628826552 989201279 152849675 834435808 762763190 938378958 7533343 987138853 594333631 759885768 419485195 865939259 423117115 821826868 514614586 886461791 350972428 595028874 967350731 968982031 398738919 687305494 62154087 867321089 249873147 567350612 634478196 763088282 872570655 966974351 937956828 945616594 533623854 965496341 157298434 543462594 471525184 559486616 303060690 651315193 792190690 866762753 388160693 481098378 406886587 786620608 112071687 741759331 755498825 834935068 58557108 746624051 897867517 965856278 618492159 972576111 167646489 703386558 320036684 989603717 300111561 328118820 758412907 780121679 464978228 942784588 429206901 540702826 435587029 600273162 637301676 910781186 178484155 680875140 436356901 786682608 112289876 635686772 465299409 938087812 728701958 988418069 812589727 949986362 794543156 952123068 26819876 861226853 522439196 951429852 20209646 325118374 59076911 518431014 760857569 970997299 893887898 939361206 66668887 754472420 629108367 987058793 388593987 644095030 836283920 871960275 366563701 435888203 660213361 925257113 316281709 384390720 897181127 901784770 201627876 870337749 320370348 552497595 205750948 959912877 173414325 499535449 460284985 532039861 445413603 995540092 554734582 822973876 72643219 168590677 788935680 990387096 763874002 943534422 455206183 883309733 859726844 899368388 458989568 875655853 91753817 978305571 717744030 939242532 325101505 506954872 674043563 960498299 459275639 787651261 602384731 922360956 134848895 146640036 38273032 130227778 308537864 513980203 848876205 944977262 511835353 988542884 972074252 994608056 348671549 452514267 372856096 962914503 359281128 945339571 945481093 951254090 55599350 922949941 638844853 676389516 448201564 703944241 81291425 418911860 7889463 849059165 235813331 839436896 915184979 930709345 618269069 901798965 375254401 739460459 244100720 385671278 994986111 997456036 144758644 851873498 316236357 696743047 253947297 563836605 180721931 406541803 184318543 421416705 231523773 476650249 281958987 765361211 366305229 919849529 752280455 816903414 648675753 995909374 481253329 572505384 865674761 960768805 371309421 757839389 90953228 176787010 570510729 918588533 346368442 861969611 435350249 597990185 498662716 566703738 661069343 899606049 517586328 718089041 186543169 855060602 881931701 984538025 32781189 312239344 763277177 840625902 464784106 834047262 687089582 792347042 317601092 536297653 686930712 798172518 162447258 940162266 802982335 973239633 980952901 998152867 971049147 984540502 530502770 909179002 737934532 990325028 722066040 890798013 510097093 767268291 939177952 946339274 810970483 857874344 575646624 760767036 970902336 991044558 386881229 512545073 61127013 310862305 213782889 760330637 264126544 512572089 38205066 554185992 431528527 928239777 315431519 562751099 699153793 951688332 858019877 875716213 216703044 439980209 227659522 398448977 596967806 643292273 334465652 930147630 990845055 996492555 115219013 615583086 86789684 884674852 391788132 865860323 134321597 797995216 256528844 613423509 133792064 617146524 356492945 360806406 698026001 870113170 904712767 965360514 569028949 681725952 615448303 808827606 903490613 987709195 973169764 983633225 171648343 597395836 607654615 923463816 707319420 715373183 788318216 910896031 627400162 946141719 306781286 800607024 486228949 891168941 46962040 364796330 124122508 321861018 413239109 482909995 972592996 986856812 825052843 958097220 218816239 933123867 733810459 881310846 615090004 928878169 838459871 985677833 403817699 614982923 254278376 895638980 451873013 666162470 53380034 484075371 310664646 444002286 147378240 867496875 739708602 753205942 839483631 963299642 748425128 847680524 425982762 829068511 403502516 800930913 134246540 500134056 43677693 883751863 987182130 995194457 971144598 992903479 266036684 297680595 59776874 624441452 215430390 508403328 231534340 812086653 65855364 84594859 860513667 968891631 84632969 710847483 64092058 827912119 40721102 180663121 275742245 373125291 981019222 997437254 228479552 898538204 260403015 383141969 891230245 975362809 516478218 531912179 747522262 896512008 653047574 663246783 525672715 976991266 657961353 829029076 386563732 649671354 143038852 364061965 511787341 892734844 462879854 913298639 51926299 785559501 346783609 480511592 863487407 907179560 889662904 905000768 175824251 475961120 493715215 506070448 538979475 977295439 517241020 965773242 491769238 748373141 5565730 961268327 224301042 955401207 162178222 544327034 761681971 821734210 396206291 683853232 20984585 633649772 530760389 860248557 534877072 884626554 856714878 865259950 89934664 736202432 44256568 298886677 526028022 885449952 310122306 977896760 376640063 720738885 541718616 687961337 964626082 979563530 109704561 640781423 109675125 857910653 389275642 410299707 534978416 799313085 98313067 914453383 283179983 532498101 412225655 596369676 743515824 896908167 988222863 996572418 461928041 731841862 268885385 989006380 285825439 742802535 151504254 320919485 431271539 883955098 902965033 931594815 909746064 970369829 629931240 960676399 101766219 696582473 924414341 991158487 131665835 801980587 68056687 822332685 150073183 390074903 988601103 995808651 171681619 894338253 474146537 857112355 110564681 744003866 813134003 849807835 193379441 594139423 468055285 871874736 201993500 605559750 329147386 883895049 470349902 927248919 686459690 980216786 457141932 735477926 127289117 310367240 519016410 602242989 3214607 891495344 505751001 873178925 29329861 32048115 264649895 628770825 783698235 928958858 417731985 701696151 491372655 851402499 829061358 900944114 60352372 865461921 214779601 284267020 725844920 894838773 199077824 750363708 125990674 788734881 261657807 896859238 931198229 980270856 773999274 968368328 793895276 859486246 652913058 723301797 491169232 756038814 978138565 988899597 417835143 943077719 751550035 921050938 161821260 756783036 83885143 602664910 815498561 990124646 230382529 567877085 312419285 379977725 495516540 699899917 659991117 811071030 70663908 288767216 25405668 421187127 435180679 818677913 20788090 485354292 813189310 907153432 747310282 876405197 366957264 607937962 660809020 857341562 123812143 131409635 839061271 871566464 998272916 998861949 453099087 491361222 38761465 265037695 125438456 270550989 321933173 822448284 911056484 912377682 412884250 853776351 781852068 856608143 357506342 502307388 35439653 403216980 738754798 758512277 614720389 614883851 394281661 590088768 497706609 626739365 55338945 176959530 542479909 871374708 988864791 991953020 957576829 998098398 250958563 282746608 675641290 853956421 944239629 995242877 425044507 717713823 635780563 882525081 234610895 305914026 453582299 639344054 550479602 562871139 996266965 998557270 980188522 994581803 652635634 849672016 817475964 880858151 440991078 832639529 846933151 870513571 927814784 937084794 728639469 758574084 144261524 488657960 161704765 301694241 163514090 433353250 468411079 954415469 841690460 906030479 55575390 218374547 300383224 462092311 986525730 998252419 99423730 723589934 840335103 944816702 435553716 968328283 52159472 135631787 768647013 957710146 432374040 722772384 538097210 583851211 492178452 686858552 7510773 33710467 259151241 960405385 338815021 539765118 294595632 935959230 289866136 438907679 275158941 310213350 581984064 648558722 874651439 933543394 742854446 838019699 611378070 710056447 836202587 908419852 338633791 347446186 988322523 993791487 352520800 451085623 803197859 977316687 816568269 939636790 709468228 897562377 307091221 728454348 841071717 951127995 22827203 349350810 329439832 672998955 88178339 161744963 470342549 839002256 849521251 922689568 628734231 720503383 986233831 989773514 772116811 961010172 638407745 900785526 992638117 996855763 845526771 901766625 628065070 830109779 500588970 567614578 775113392 898736220 64180530 288899415 842595841 927090098 20758558 153620635 829541881 853891096 297544302 866519932 978460211 992044653 476149407 886380748 579852518 933997971 548341541 592832710 352647276 799978345 34441550 266009832 164087185 839005435 574777429 619002086 970672243 989773442 403449118 941641441 803775022 810816737 836796479 979622804 654318094 766251545 477033983 678362432 899865378 963293749 640183681 905825423 99030155 883674280 465449044 966482540 573454572 720422138 948833631 954112774 711930450 832600081 483620618 565377285 609208133 708023154 762878248 792292211 26853625 174728000 463675742 978633842 415453600 535643042 200518669 748655344 233167248 762638069 128325677 265937245 137922587 633737243 423063421 680671051 41086814 112352309 559882475 820607709 401980672 779515657 151584319 981509353 476751120 843783341 962755055 997925749 638290267 785582259 321591473 997234463 502592187 585524932 456431426 911575077 750298331 956966836 483771438 782678535 706253879 809825729 398540182 857049665 330422424 597059375 421733233 612393016 92727869 893078647 589023415 889016131 838369426 916278305 617134595 947934974 320181018 335893755 291973343 993847216 760743395 773662004 153870957 330045503 270804219 552562544 781304083 830362787 624029541 960138919 463663208 987520796 615950061 654485445 960327307 962468883 612849869 688869972 553581008 712446291 468309474 590900244 573568149 810804116 233313683 324371007 46433602 103769514 559416058 894999953 117217342 325440825 81244542 804337625 267359969 797315821 753805243 914101760 150215466 821307497 502896322 994727964 883996760 981962929 898231476 999113451 344663294 442442519 21175084 171086401 677450338 713314648 645826476 826781479 404333215 584075617 651627078 666456895 452912326 754343067 448712754 724134205 892641899 975298404 879981505 934164152 130651951 793167984 671078304 761333982 462060155 980733740 422857600 726582958 26286770 669800209 380863570 783448475 961513140 968975554 825348573 836523787 354836112 599110593 686531804 975507124 30336005 774213024 186842272 586671279 371909449 708233303 673717207 714864406 720835789 739411518 783988664 910642058 611323386 970724832 187879678 305280631 212185505 783658988 341628870 975235755 590977060 707031098 88008456 112999757 696653434 787862214 155369814 711285271 663212127 975017748 328629767 475457875 482143952 572044743 982111348 983835530 729351599 927811422 526753181 624600877 433411773 846124866 598270833 996502735 731857700 993291498 864072315 966105644 651084701 865541803 881889398 930227562 875968993 975186828 500289400 646729550 885147072 976722039 645919955 891861485 218636943 637701394 879615260 987355911 174150576 178859264 29158567 44771974 207292760 860309537 710890528 770345885 34760311 495197531 387482785 433377521 669843006 998163470 651187701 665164013 943215616 990757622 718846145 801539342 83655434 536739351 853437297 916502688 749428440 823028297 357821667 376835932 181873660 615237459 232771605 765388558 612509883 900911428 645316562 707336659 835612212 993270921 684464469 955430048 477127943 853026415 847003371 859499118 567107005 666765576 598754789 615385558 967437596 969701383 126340473 768390330 908442077 979312822 122275856 482561731 457301615 599189527 694294771 963068045 154659460 427433707 309996319 731469805 194599537 358445737 46003698 173017593 719996636 771939521 656682152 870589644 927374053 998321166 85349496 555998047 626065550 640530491 236925705 878200434 956162947 956595775 177477334 299425301 741802572 925877345 216115043 778052514 774017328 814790367 930070688 997850775 704600329 940873807 803820380 909563842 350378903 733239468 391165745 926748199 333868868 633130518 909650673 962834287 435826408 684378138 650072383 796374536 460114349 890130803 609925556 946941771 222442473 810511323 412655220 695786736 220264416 451608994 314746824 348438775 839856259 977334874 935472862 964588800 683843535 935760276 396023160 975816499 449934249 591788033 901874387 935050771 185125439 678473865 755009206 820254478 987643015 998916119 787457190 818470920 671545024 881398522 22086554 857019081 390144719 939637197 462677919 941076705 420831326 824117798 143305004 799398404 812871723 833036495 482298299 989442106 582446043 884931889 297975025 828851034 503469363 782992835 525045707 638332598 954137695 968913535 460078808 545426688 269166788 521235469 230555492 604915461 265239819 543275103 155578174 722218537 469232925 956759622 410485084 521291960 957594531 976413652 800033452 902789781 974905775 998290991 698841147 950519503 280169435 773001644 995614477 998597405 244644814 854443458 370075791 699675441 309292140 473493795 790931562 883390107 483868660 528136340 737447274 783523986 454554256 724732822 331259358 883548527 748132324 794887595 817933640 991512600 874457620 904763832 543812227 841182901 284551622 557583615 812714279 904857933 440854921 820594651 257819732 497467502 797792378 931457948 452356048 628092993 251307820 918241454 620756126 673114589 587887749 812173179 739753004 757957553 788223673 982463041 694158460 902649516 338759657 963702130 165038220 277315394 565076861 800791740 420159477 726162390 687189355 698794469 621522135 713482338 268583898 670264014 739121195 760967079 2054235 184127686 977377258 988703454 777348789 966316169 757656421 832520656 566841547 906714077 812386364 865342596 645732323 904418333 558945164 635236132 288132340 453046549 645625754 882395583 977237905 992063256 477932907 794110495 42691641 613621451 172468925 442198051 587033902 810835102 640235312 795169550 648825725 790397695 802243660 968787206 665537890 958097267 3795070 12215062 702583251 843658116 671198817 767279632 439185982 579706230 433905039 473947818 440581434 579602628 29781683 85944932 813359308 838694559 825385264 911590302 520890723 641877077 703125658 763070292 706034321 831255365 559020598 774746748 689233104 988136674 950349624 977727526 133324034 222860949 391022623 528125081 259719800 711955922 538905613 883913719 326429914 797768566 315716854 456994421 52651714 175938669 315914994 976846614 194029023 410493048 292327525 403568733 774429106 779588440 223779542 800528670 766581908 787744529 826735407 909441056 792203286 981552887 106035369 992857137 454925877 549741808 170227405 744489873 203459651 499189550 106148012 656261613 17209591 37844504 787353897 856008264 289972593 391185546 264178359 720183180 971310721 993798224 43550010 963093256 796425273 805577465 572040921 642864284 487126324 601971936 138646438 738231203 481506342 910594585 158250090 714280318 446972783 794844283 58138376 720300136 352299356 913847700 395206376 856410484 157906957 329573329 515754889 772356110 638873271 911798925 905764530 985397826 746283158 835917996 370359804 639209306 259219579 763024119 272228080 394720766 842117112 870890599 384472301 648457776 722569946 802571507 146467282 958513733 961806498 994060725 45547790 488499073 341099534 449800606 358242918 536731041 853962841 986610850 110162017 263358261 232158691 495577319 231107305 873240580 36314530 713370873 900300688 934750206 729419782 742578536 85268230 653138279 666017739 763249272 860934753 975584118 914252688 987735433 828638524 992973086 792055532 983551003 380889636 672595516 138034912 975596580 429665162 940206224 280137123 775043886 240753247 337921283 814808696 969435875 576999996 836433991 552424453 735167382 449521097 576403248 202333505 725166800 183313547 488082762 234879369 278650905 756572288 992070484 892376703 940606126 865796175 935712127 810037088 852612798 563555225 657533066 889498304 963046069 124311502 477291341 587970385 846421583 260355721 728561732 763437474 886241872 977332912 990646480 45094944 182574420 339190766 536171295 403205132 849228610 203500663 578660564 856965305 893890060 319630023 324981967 417648143 847569899 469989243 638721312 457297335 846629032 383063130 443654856 559867997 823955404 828824740 830778262 668741611 949990640 766481130 912850646 356111589 996779510 733236494 870300162 427944651 982582594 474232385 521022404 166041438 704652002 155591392 818651002 619182759 920868901 176527331 745021836 904954566 996270335 624832429 730431978 241442065 609014559 172416715 401388138 291787460 934163295 646024270 792824636 64583806 924851591 396840940 416270783 230269824 404606955 368256621 987221599 73957146 228995573 152841357 916026766 403172046 556758074 497702660 738375587 357952612 581216881 161825765 911961829 882532102 995336118 269806884 520390858 103104059 631999276 964390650 993144249 647116040 925594685 396347322 888573326 635172522 729358626 178959772 272287630 868204118 891024412 458583597 495473894 103113545 759415599 621134975 747139357 645608521 688129744 786919685 866202073 789473913 792256970 323639570 851956433 570718980 902553435 49175585 516183512 327566273 513968018 576635659 862571724 62813030 644734096 834272321 979340250 125118179 348180040 476222460 709538190 948945834 958930690 829044382 969449755 552804413 684970159 242866594 812198331 376370694 694219367 587875975 599315884 509715234 617895819 175302663 641673343 14798126 924213094 547308106 833858121 825532158 936336339 87713668 517181911 407970431 975833730 769295229 777969202 523201480 880396538 100818202 906094412 412603743 842955754 972531656 977989840 521811779 674104709 899639272 901141181 562356545 870334314 490427295 917489195 436004935 438079568 847646788 981817690 63474306 464105833 497412528 837483279 37103681 741983236 64680083 518355783 495550158 771913525 123169490 189576104 745642287 815022243 5414275 450627766 798050670 973349439 630226054 798094436 874294779 966177307 234464297 603155749 38215453 69178574 479654715 570277247 363423119 875319868 453578328 506667661 129284479 776856425 735015286 990198671 649498242 756689267 77065050 269264422 914327143 961253991 150621291 683951899 772196095 977148182 894224624 929892186 168615979 923855320 511045646 974735082 769596584 931307088 812157319 917746382 700211198 911487613 75029373 649572035 524419776 593942601 836849661 906900855 860347333 891453314 121208245 749830972 351893947 652927046 200893981 230625612 70525220 498835059 553545877 989054535 678377773 975127329 163066668 946870763 930586318 967934888 649069108 673321964 64930378 187495811 543994916 774822046 554751547 837918958 874605646 921906182 28856067 164503712 813639797 933334852 893584862 951369950 70275294 626094698 797065277 892303809 946010794 982257010 427279416 968416510 965531405 995584140 182960245 984053646 616130546 689698717 361545220 777335200 705569315 798412398 509470166 814012038 403963270 478433396 437955821 838355728 901788351 940194410 953658283 956882460 849255059 956090238 742020688 987970404 425374754 550202571 997908692 998794113 890227333 948631097 649346120 896272269 287704256 675228333 911793290 985040905 211884652 797848775 112088278 168613408 791204060 887860661 786252687 951060030 722579847 979354535 260094440 335682885 337591632 922911430 819617744 991913973 904052997 917612303 363784886 688002589 212102449 391337333 915061733 976134920 325342525 515925154 628302494 640712107 987392818 987419085 16107814 916943426 947034200 997689407 2295551 822697530 249388092 995414386 419032632 505837482 577740645 643018751 367701386 546049151 41867495 670904452 116761056 525162825 507095774 685405918 209423375 634496241 806583815 840009731 869363258 991513232 249643102 257359449 542865164 558145550 685173200 904636075 312844087 378979530 484006953 927740295 755143985 812768674 410041012 925008534 878328797 957620331 421248977 738952649 965260842 969685437 884101308 905585667 109346288 168856787 535320477 572879475 273675087 648373137 549750074 876381103 200718252 328175000 517428343 663223710 172169271 510246672 364022845 826257215 551580849 891618820 112573647 128768278 849179621 928491047 591602094 950744092 26786590 960009719 122659010 907096592 730986728 969204819 995187726 995992544 844984705 965918731 694595956 811656947 141831424 166606643 635785916 907452908 172679114 975853596 91220925 479332891 647069045 796202275 706169927 977013579 548594327 789582582 12091512 760573587 37737160 995726699 291375516 936202591 986904078 989132865 368239456 688323882 55485470 61742901 623165892 806625455 496390914 556291726 689266440 750329016 427178190 766449844 951187131 967095843 911833131 915927442 933208388 982504534 286847113 885827585 296999279 788984557 194915981 861756006 438032616 895496564 77269409 746125748 512867827 519296229 68282957 467869912 230603798 464238999 800695011 874329377 171704230 343939046 235219290 369957440 865940366 927171198 703973459 913257782 125948131 178484293 69422431 673057587 795213855 923678489 283702344 549067830 77271287 140756094 452391631 881176980 931748982 945588742 970712708 977725441 710192052 892748771 794676574 915293239 475024244 782081082 569326733 629700703 295114622 614666027 11839181 647899752 896812861 917263863 344294469 670335281 880246228 924202319 10645637 114075432 650604364 675833082 528384111 998134632 721307920 991833135 443706086 952854045 610073866 681432707 165567373 418753924 864144325 934874744 774676255 867622990 706612008 952527351 314406700 996065176 218306635 779650346 203704296 595646051 784503579 956800748 993699812 999090325 353796905 650008344 297902597 723288337 944841522 968390901 788152559 951484494 925465074 968800598 537491683 748873834 312133876 823631759 566985961 840460110 753825777 973361697 24338103 205681981 221857031 633573461 640551526 967532172 845803156 925439794 511556106 979296690 83966314 548392540 843051212 864197929 629476734 789528294 210162062 638904121 660495956 932605438 439701432 615511427 354570930 505489892 605314692 688208698 508848103 654107062 646270064 650414724 212699395 687874024 500737374 788615004 682244235 866763502 235534645 737655662 405076313 778593179 567731853 663816134 870534065 907564361 878928344 903351884 680371235 767853699 380518973 731312532 614764036 653849559 623307878 773500208 493918029 736966143 555017806 662139432 138494551 665297349 245098587 994005493 767163721 835788528 678995098 690942663 14075605 497083832 856880309 867513919 117687747 302780246 835111911 890357829 349816449 634978464 977552895 982643208 122987613 288446613 572353633 656566571 148001217 566746689 342315645 690543391 335363253 815903138 72784533 813438184 449804812 650595855 241817342 921191254 591967575 755862939 274180723 921216565 110779127 581106637 127889634 655669071 541030721 579714917 43456047 319699900 139027566 291881501 232174133 315788419 530947372 726384226 463166157 851304877 307221396 479328673 637594190 713980620 914063991 995891706 59988913 200111999 111251612 198434258 127747796 969105904 244567788 374317735 745703480 948375107 161167020 478160559 326357098 585764957 868198591 975692485 855718017 991318549 169945690 870743221 139436215 627478606 395151842 989083574 318850369 653775701 756629812 978125261 759463505 875538778 378285190 654403981 182155567 748189443 337132169 857329757 857877047 981552329 350923530 809413620 556114319 773779431 848145465 886576287 436072973 711435804 301625334 669464528 356601198 452310458 88216113 367394324 222745149 626961771 722422336 757226474 173065674 720257470 387988126 848006749 965134854 981791718 222596877 729610100 559309750 948543760 531220694 702003182 915062074 997582726 267230460 923580273 513482822 986371504 644440365 915188740 665833583 944770556 603595728 616226040 652760433 907149357 947547646 975435573 975906984 985714729 319059489 623121719 500399175 523991894 372183085 541345545 281108808 823246207 575090083 619602531 115658119 918402643 116954310 215260335 601639152 613468494 944232554 957599988 906196282 981030565 238920166 758697486 627068362 890163282 620459304 902605023 93555087 373771049 178786763 475289786 624406641 877372229 724471617 898879447 137944346 146496721 88718753 103994199 618212447 664983312 180138558 747687058 34683648 839357636 673816682 976330188 838904725 988111935 580486589 890758326 818326510 918122969 997281640 997359623 389107589 831402638 464079275 651646279 853595866 890152945 429845091 764402929 286429411 328557089 390705045 723224192 166874834 958958085 457478142 701686793 343312217 404816567 960763762 993267787 250060135 506197902 490165796 720246453 775230619 869937348 742202544 807549749 57471070 970215064 41059545 263115203 387756160 535269396 323253868 586508750 203083209 212626257 724374146 918098348 257385209 934685751 367976221 686149877 44251389 953478673 61749507 952519479 502040370 586542810 717693995 937354905 321074747 929752241 408655632 743228105 621817608 889250282 60357000 212670873 52140330 292475227 782744681 804377104 942921569 960878990 623386920 756487770 76223377 549029819 976399920 981833869 50342117 787422777 12248905 611773958 277549853 577509859 480302369 829025340 515071984 788746145 835988826 867867043 839501050 917081833 442108452 499474123 120148326 638457713 757282536 797094429 823531886 963256827 129310162 934035201 745459656 764237287 277650283 298322898 257142500 427958638 558881550 618530304 903806564 974555365 460146237 473356989 683599997 697142096 223462785 653564216 227002245 358569754 418809591 424472500 941934627 982073280 637512710 818374302 278373068 533242598 377230883 963389422 947103288 995286369 586999506 718069355 300070523 320917546 469340993 980873809 800920448 803388288 608222478 644369728 403347799 839852915 692051454 844586773 683312117 967372849 739267664 889617729 349326238 709194896 742292245 751406371 376717616 961007498 829851901 862031079 29916351 941340895 979317949 989715176 264032204 927146916 514523964 713852033 37512883 682856979 70144659 497970739 832984508 889323278 122808849 610643316 911208683 978678587 274294252 592019667 504214748 580519063 886987554 897951873 376163627 900178022 8381593 375397675 91843364 270467184 577105912 815068163 569755571 836173585 525096645 949734831 516584666 886623679 549998877 709270325 343926114 758644126 982916599 990089734 260976761 721152317 572110980 729580022 252667848 282299736 938392867 956197377 312303604 410345653 914285765 934666908 34583574 640781244 693648916 802292884 605168364 827861535 203799229 731130763 201083559 627968291 105085753 969860911 935121807 986615427 895631504 899663957 330048972 360363274 671992705 788888230 394056726 442340993 916508867 935478830 198500326 807183573 439974020 933391481 497934741 845118551 382806207 966619648 769845284 986290942 666805848 858504701 254942347 584340600 168948617 973133109 118302474 468864998 951218271 972365734 807160251 855913181 833352592 923700931 373311525 660427309 481196546 558112643 513346518 537842197 900361284 959186256 640565338 938994482 565337553 951328738 303102161 645262101 449540244 606389743 844439093 946607113 755319093 943336249 766368000 856679674 434774015 447054830 875200474 968227100 872519373 898967834 419403158 748539437 340241396 463626143 312816778 553444124 510099170 840140557 957482880 997061880 684266504 719048635 231833298 586398521 403622265 730427255 658983675 787938799 235664028 517645921 916716761 975528076 213523077 543085343 699970877 838509383 764862235 886395738 409898020 654369818 263474913 377777165 484500444 573672300 221058163 752299538 952918638 958650921 45123892 538132246 482468093 913210196 201704881 657114477 360964746 642711258 501495504 723197830 681247142 931596053 958324736 966303165 321984598 914104699 536555776 987653842 789622983 904477841 541278248 918483778 414913939 908283607 911071111 994816014 174105216 742851496 745700127 988056613 568845737 954275036 802910327 883481526 850194554 866862233 72121046 488973516 593157331 835076078 793884561 796637443 418485397 704350964 165348572 476835318 590157937 905991823 656169634 889560197 742742800 944196936 966685456 977680180 287531980 856568441 612989404 622975052 739843542 950163819 163262374 180016214 622567041 710714991 564873893 674948304 258139725 521393477 135792806 369830235 629656665 722254951 814250578 885338521 529918259 882926656 629440664 972216021 392335333 776694293 161466717 916574956 136325022 395218264 217579225 874512012 894617349 895029800 713381715 968592008 541548210 724830088 25666968 590989363 52696445 875016407 941575667 954124840 472791847 545369363 197501730 489780776 43219970 391460857 565782581 704792579 56955619 95965187 511992298 835335630 904284332 919005822 211497220 605390175 333773676 997784507 605459848 881924124 707762942 771258235 158901024 685654591 219286487 640047564 137935605 460384764 54597676 389945566 872618198 945615424 267367233 867325138 105630966 283849663 138513169 248665643 352321697 844916655 435967772 605416347 604966859 645573645 960891824 994631903 321725057 816969662 674634787 697146707 67467087 505138138 176679580 215761865 48276861 518828667 541058378 742839506 525584546 982395816 349620567 352014537 644747233 891567012 989043848 989600199 453933387 858278948 443723283 989053155 52970262 141233739 303434177 345652527 439554757 814342132 389605904 662322869 700065460 852918233 105486263 685379272 928847995 954971046 314330334 915432280 831799918 846534077 834923519 863756300 656780376 986491799 270507799 827336462 620134870 898698486 584453788 607180828 119535508 324754145 219224174 482380567 794904250 880106750 865085810 884632513 205260686 979287884 561091182 622834693 251864310 462533426 210425513 528452813 134303369 675622388 456807382 520464054 561495160 987577040 809925959 992011865 986519103 999115860 90255218 425344225 593167916 677494422 817081864 989865937 168602933 330810974 286514919 642967366 876227729 955494523 136456573 721309696 797583181 978974047 494342341 614146914 531754208 586446947 787568372 968979343 40390484 272316173 417987705 734741355 114112436 304138129 884098985 902314982 483592116 758417496 906719055 952128658 870516499 890399430 555367412 825285843 190333156 325156715 502095085 710231380 546544617 609239174 150708037 779798467 120895951 321136189 850937649 860856222 641361531 866139739 466195759 792850546 955624476 980485831 802228299 877602356 470508654 884408516 277226011 482727010 444581619 650674481 919430261 941148651 970894602 971001707 279444263 750677990 829862375 995646593 266189462 633938463 416575105 638361008 885221302 903855800 669312606 769917699 405462594 450404745 947179327 991639264 755516227 992436278 241868574 802568579 26354922 223124028 13711075 228129113 269786837 761411449 234121336 822518026 266539958 315443409 949464493 949563929 481283928 604844730 115047344 915288405 717788833 934074418 33785141 533768283 916467458 984224251 654675985 714715371 857632137 975289256 993630779 998689029 841236538 979073899 729629623 940394404 796022003 797216080 449731276 659367299 748748804 970705384 454487685 598203566 517497232 746732677 422726273 427384854 994959219 998442868 460651477 806433689 268350951 878309806 58714649 575177898 681663040 804997265 648114673 655471477 984550375 998911385 63110579 197586151 616252175 660973852 756861159 954931420 131773797 632149104 776994237 826707428 263640748 419415461 221947168 815695727 732085612 757800864 861541550 889948433 369431262 741684248 359153031 569747671 389576481 821087942 397769320 719753546 538917733 559732214 5423830 563634159 553042851 685462376 20538881 433512155 53904368 349262750 990697706 990710167 360291308 816550624 564669399 785533500 630955637 955881366 732336215 849511517 171320052 459837744 494892075 679750033 929686281 976314055 407802124 851200021 734559031 907506443 725847804 749156934 983036972 987727235 33090584 718671552 629786148 844309473 80437616 609070456 277651205 351858901 821488694 853284500 200135699 825812769 999131852 999155311 738797643 969589283 256419130 783431058 90083175 660468925 391563925 980711073 939812795 956087435 863700713 894357391 301307816 489646765 112498299 881874366 253527491 517796006 455899099 885308355 675771452 780380902 624934796 990924014 895999333 928342895 614929558 850298064 218519369 801154166 994442946 999099028 284808044 841131083 853473946 940693263 636950753 795931223 540044842 602019526 436869481 946450935 254106559 451710567 836845610 985286582 74688390 313963439 472088200 958281943 959424479 963214664 628637975 822515111 487779084 833238138 612717916 618083199 688202865 893708888 575065473 708399571 689935710 729052545 829347588 991081981 228668852 939866413 397818029 761978949 49467430 845901018 580158188 691842424 225603194 820278569 533801956 706102280 749760903 957254624 39852505 714526326 623256537 753239861 409753431 826273507 386248947 432638595 665732051 906310253 412473569 916444950 580928737 613911449 740334926 863009577 87598814 239053066 361875674 599954091 87243583 361611653 798089675 846964354 813197818 962392458 240719588 279896837 667535329 855820273 589470381 826511371 963840193 993394886 411762950 886286111 559520270 574276569 276455365 998545055 272732987 973848728 404277255 639048826 305272044 863710487 441001927 662509657 675111874 816469969 460365164 946426548 864930341 970736364 214245438 432211756 860815212 930637779 675524605 886443522 814681895 850595676 183007551 509129749 732175414 958744182 276558556 425871367 514018770 514739271 710523230 819193958 100743173 161161522 286034702 893147895 944499138 995108933 925890736 977382323 432887345 931160548 329800726 493530631 841520993 842374958 912382820 939226187 765118029 820356259 521607667 977735559 175855302 359115397 685383518 844820446 199078304 834885838 535573861 948134452 47048816 331935820 301695434 929950224 148673953 337098173 438140396 800978722 582115007 935093953 918139204 969734889 980182701 996127912 240990326 299198996 348255567 432699083 791878643 797555329 481589094 667488698 342418910 462634728 248639653 370670592 544610372 861456839 193188687 689260999 553470484 956632310 315561065 525624839 948770489 966231376 903638806 924542727 28528482 987781225 422416070 666859197 95453095 615606878 472568068 636279823 152010058 387538299 866501544 913908924 981766166 983993105 445559341 648338238 603221834 845060644 565664664 574065479 310583929 704622128 740865204 939407937 349756980 912046387 638052467 647668869 106072918 688442797 181661172 214558882 714931761 749086021 484213571 516926598 496609497 545437219 805837673 845903143 571232267 960159430 922374197 963120329 293785587 476653255 939381018 981106888 770562302 886313805 548635096 601071550 820002934 979709565 790970557 980195184 273554372 545346104 417482232 448398151 823132954 952729338 947934087 998829067 188764705 707393510 263194804 404708939 100266797 832661359 259171920 683096296 571653953 897854218 692718971 856560376 686444765 870632767 176927102 792689718 868525399 967868729 169807421 749553308 455594089 718577690 268523111 558992657 111999092 262726647 438803268 860773886 554258206 606094553 26184827 435389837 823747816 824214763 765315545 795892642 662654722 835421475 418976322 787724566 207244492 224306218 143203547 818908714 423667069 578104088 41540055 629760746 976037324 981592382 548043790 923733782 573608157 694324029 476231606 657152989 421428217 621486868 560670173 746926569 259916753 366327379 926773768 964908284 421932418 814299648 672893499 838403847 31551094 448723111 509017266 537735280 76123905 713500141 698159555 945276609 401091603 518380372 597956987 620691816 173814240 563784669 511003577 692240474 305346265 951203369 214983621 339877899 699708554 701928528 978381588 990358161 326712751 708181384 44234228 86859853 674651029 870486676 741208832 754104266 516792601 597588205 886559762 896523159 620417678 749017282 144666665 833556318 271449025 333019886 472353459 988248978 857320356 959737888 617930308 944125950 215383882 933276555 177270419 655977913 836733888 907836996 444392145 471654151 690878210 921386432 372583101 808585048 838931156 876860617 898613422 931400654 380067775 850511038 652976619 691379591 856827509 987881621 794361658 811049030 58361614 661190291 5125828 309264197 278772796 382431287 616986172 716207691 140479324 262264470 176096590 733659281 920474957 958041455 153969100 863133127 111429555 270897366 120831728 384604077 601800586 837601774 259175992 584727570 67445913 427053570 507497378 805925912 896768826 984105370 411002915 611206963 452576635 463481665 832438089 867883261 423290646 425323319 267889700 807880173 580934695 892915916 235046892 649616721 622250720 896328962 398097235 717415517 217130524 308284428 269785893 727026788 374899287 419068824 260428406 783620791 265475889 276839635 924230421 970098445 361087691 661707279 881565768 959035586 432111458 713717731 107378153 320101690 209067707 615215961 80997106 137884395 827623300 838138240 255742265 497500185 728122299 828694538 140809979 426548811 760261847 824311417 719991746 878436243 808520253 856360915 710895566 986998276 355514656 687993760 812602049 817905621 451795052 754470013 486048355 910197412 509630520 560656943 76921678 807522808 763723284 872899377 415001835 627857956 645986938 741316225 764446932 805515310 578901341 833383984 545664655 833677108 112540739 882289583 377903572 725868767 883486260 930960070 378168941 748522805 848181550 944992353 474849137 547872516 912055149 982191844 226466714 863279969 270791270 621334418 878635420 986575144 267344151 317316206 919525885 991692679 49770695 390914012 147869013 984582697 49092392 475503739 582001024 889573445 754137901 955289288 899287149 924623346 786890574 855270681 865410058 936037523 215038481 885240545 681769030 968107990 492925308 567237480 952926134 990780955 165456175 794019509 934909641 980882746 235978999 942839611 273040312 297547530 138148932 371454378 825810021 892569199 902559017 921518488 448998032 933640624 465258416 780146273 672880415 947881911 348256318 755995058 758723367 919774831 857307813 913316457 56667810 934798617 277985847 500750196 438346902 740966383 368609989 889780633 640639615 736477727 905007522 966008482 850639885 892008634 705774653 835034831 579475250 712020247 16535818 365249644 785824909 829096938 283276808 367433956 559011980 888405814 815883995 896025151 478572301 489882774 126158481 795032527 315066548 661641776 84748237 678737409 956214782 980767710 556733356 834024761 353699662 376599419 640069930 903500782 296620374 331280794 5921281 656533030 719597619 859817862 346565137 631827050 400064474 910446273 72517723 257186867 726233423 885869852 103958107 686638185 266640862 406946556 32278609 728798726 909077678 975919991 197219805 568364538 448242263 535178756 707007471 868099926 40550221 661519744 124737333 489022975 688367671 989659113 472130904 487835218 751695384 857837541 207075672 501008313 629596512 753965257 197934207 463124335 714290019 927304135 551689761 741519589 584391189 967638866 240085044 841595337 991257507 994932259 808148878 908542714 277958704 343134136 840490040 959000613 138694794 727867409 938605662 969810772 136743906 848354456 407151166 840231073 46367092 746231017 628882091 970751367 170015558 618237165 341687059 456008113 607946171 993688485 425302308 675740558 486490995 811556408 687892477 970931223 365067358 859845827 221815267 948028968 87549571 650057677 328629279 454921120 362178319 864110052 719087289 779651812 412191266 421254842 156961853 940417862 199560753 922049115 744120929 842583287 608557652 724210324 131783002 669237678 7660813 281816404 10564305 373581213 386225946 599292319 901498869 935266853 809518457 973354316 551741666 581666529 944325515 988679056 964577271 976735237 109128211 644974313 677024299 981652106 866616336 886031388 625221137 945323435 422102304 700891779 705674046 783888024 723219997 750101619 390312260 773122642 29317733 760779773 363176329 930812149 265230102 586918384 956572955 971545782 786695224 932717539 809198655 972181733 23562692 433587319 887486542 897230178 979667210 987993316 800341584 856463835 31913782 611571691 990922314 990973508 690599341 796513546 202586394 531980879 262674524 269826584 386764351 707288920 939775011 993462641 711384570 820817749 956539390 961143762 19883520 762737055 116213231 410387150 78747420 624227448 228742837 407965452 420395814 967603808 373447088 808163149 427865257 641872681 337205589 456758504 220191706 496902615 9754320 610022833 143446990 358538314 19515957 285099272 692562940 763167504 482516255 563606145 317608045 944016853 964561103 987073174 990199586 996097624 940140754 997926909 253861325 597864262 31400330 643440434 554690741 905253613 956264807 988935267 522429058 627019036 529058153 586650150 277077496 342642664 152984870 676058742 496581543 521678246 96476231 239368575 892934730 913419487 997239987 999002792 624727904 807168114 916334249 939789247 273919226 646543079 784844659 911568024 860713294 975606567 97664887 770032000 725124987 774291995 756099070 802242002 67304635 529324284 466139129 789136489 399550072 862258172 309472003 687156611 350309324 862495727 451285596 934513980 795720287 842582325 215484920 429070394 466191093 530701126 134394257 223679379 375783661 833353823 673468369 726380833 952483833 960683825 682581227 786672044 328591334 922196822 226270783 721806801 463684878 885611360 591946073 904554621 279162699 583725136 935245036 968604260 194887287 937051229 553840049 569220200 708817687 928821841 692400293 871730772 439315954 971173218 429164946 857172251 294479236 441354077 454950186 960947494 380498947 776486414 881185421 995186376 199543367 620968431 54526120 667181658 804610768 992708673 683952875 765385813 325836625 604836669 71621668 212063213 752672218 824871380 148988249 931259000 973222943 975188359 888616501 966115174 776847034 875907496 743660622 975758430 443633454 577462908 255194655 688284451 741876406 964057909 97668928 506955250 630734406 739956720 157726075 548381405 895657344 897299638 865697210 956166327 294780543 809401493 571543864 811087015 594402215 703977196 935926498 940834084 33314319 280056059 760218726 803767627 599063498 980342040 84065944 200905364 324315148 519907631 345686134 470422077 490560426 492679318 213128298 625294788 950501162 978855351 218256962 898458288 52292197 768821760 907039528 910284138 739811405 863791785 122832202 410955395 360932845 978638571 830680504 896411217 835608898 959393140 82737545 943177436 111475515 523807738 887271190 924273807 343032500 519339404 528803054 716843918 11440274 996859702 608368363 996341970 26300114 853452039 853348494 885642596 316868474 628692724 224643207 711413670 559154369 736610850 462961588 946308349 866703647 886564447 945053392 990881043 507462181 959652362 200199090 597391065 189738706 535149456 911701878 996676683 960417066 997095784 622076491 716682149 520629166 995138164 4443561 201041385 969297159 970605411 995694240 997140551 884622938 968588182 161524286 824517606 332117481 387827843 486411712 574657091 60716142 518252190 467436517 821710711 806091094 893162810 399356836 429633787 915198231 935774535 749942352 886260216 57734370 699433548 845546942 960361208 141249810 628696638 384650419 506824103 327240606 365116100 496236531 974194388 532639777 592254248 661910121 745802643 994503561 998180771 369902709 670584106 16370907 900310841 692720770 700829474 313446647 874190729 788739774 988206396 646682477 981768355 224380211 942957733 671910382 782961313 57665129 592759001 775700166 869166571 216663777 523552806 65933425 707907555 562808898 625014451 550141639 841507615 120379506 947773868 580180123 922359878 103995572 769753539 529391999 807453734 408636201 974182081 705613235 722364102 959256461 997887079 158544918 780426427 133248640 670064540 959004675 971447490 975567579 993640198 312723808 720509724 479740844 966735803 244525812 798075845 437766118 577299746 776317181 847791642 456115883 901669143 646495611 780124395 645814080 759723690 784045261 942632256 824444615 967865600 606165910 617813341 620303625 866623043 436841954 483398471 330079444 523092789 902412259 998273109 710708194 964542433 777313266 960185519 256513777 420579693 856912050 861117389 953839369 963724044 208767224 232296076 847971527 889593319 675375805 812199864 608723356 782039222 369115853 789772135 8993363 398627314 193743706 275757546 68362049 710971355 305883672 627133248 223458368 433150816 28787822 806065688 12545654 679151893 946486357 981261619 280974535 753709160 805084938 942629208 803432290 934546251 941965183 968727830 643516902 678593285 539518602 779932300 61883679 253117221 104379977 373662437 966624941 972216225 446880566 481521336 818854943 979319428 8600427 786526818 233049235 537324499 545714709 869810023 228001227 677433318 995696912 997688296 725300045 963431147 770127380 866070362 923225909 925390621 138658883 158969326 123463570 579253750 147118117 393205219 585897748 716395685 397175572 831660646 719053362 722521292 821230440 849094487 767124040 900862857 572211593 880444783 829511124 872014949 509509900 958380649 478071017 854323061 168263645 384386355 564972294 621777940 699054271 769625084 578648144 618067261 121218012 198299299 575571360 841000526 258112711 779161921 984822649 997112928 858998480 916249448 507256582 966324262 846151079 947719022 881152446 899142830 968600580 981160473 224244411 718880193 741119682 833368123 798259241 945413248 747367771 981934908 954562975 985997202 418271190 824235591 245050003 642796673 142048937 433748132 595740140 738494776 569744492 715343049 803060002 851135555 188975496 935825318 97139035 457569193 911614720 961425296 453633956 471425489 956903837 981010152 505388872 651312075 725048743 892800953 485558209 557982585 420904448 423919876 786691803 988930716 473577316 546624767 261268044 271116706 532376097 580857256 21422251 670948872 156326511 847704288 692645845 700481866 793784447 947278221 331163955 529144663 630578262 666231241 380845719 440683944 747696757 750589214 851525882 980936591 219359965 322818776 82094618 248961464 725772496 776753865 606055264 861269342 897133879 983760216 160172118 815963178 875499186 900896472 539039677 905189862 837859806 900078159 449125748 529865371 517824458 900494179 27237972 177743087 288180249 443709472 835900244 873808088 639287175 799135027 368846805 633554092 673361952 931619767 52185286 741426979 506564659 998930505 958459854 997665698 783967977 790026945 289886226 907307715 835928582 959266416 120099045 656529678 11325946 103852623 514532321 741778396 115875700 941817621 4889961 459610297 159168797 302135050 946630282 955885457 971657292 978657537 992110023 993904668 636060001 746717491 388271466 811563696 390984150 586197124 694551466 993677049 868383487 953078011 880262812 999010344 45450206 154164920 654285073 883629047 283047971 696035244 862899237 982413881 261316380 820793163 618764623 991930014 120705775 202297730 279114840 550338891 541749381 615525536 492562668 880053548 339547236 443648686 174325429 228121600 461506823 847827038 331623011 464468366 546479302 647783576 693976264 967222061 181841338 450081478 7223700 21228167 496113486 654748153 838467716 947255361 654523499 777006622 89817531 680700284 655578476 726690947 57962811 984953288 423193611 667968327 185925473 605899890 125449027 544352653 523986814 831898387 854761942 945234644 412363236 709126842 806172350 844108558 966680567 974859297 11553839 698539921 400802402 719032851 682840158 708042373 919952272 927178565 499203604 930679725 213028215 328416066 653525172 806936994 32778721 837828298 519078045 663618376 274006653 953735116 715240446 921655252 888227240 940910900 940037251 979458125 394996215 898565512 231682837 818170640 819184016 845370883 724064508 975556992 68640643 534393930 526969496 553008578 846312359 876207825 803226989 878734179 500251991 706795255 835451413 968800582 692684725 982322888 537656257 539752113 171697466 600369772 169345897 962242342 848534406 883275606 876330481 909459378 282681841 766132217 608752483 676865712 153353159 593668021 835765940 947149595 716572104 875868737 428636871 603242809 706168224 985254849 154679106 760497552 686602477 755660258 942146052 993279946 535664602 781953742 760013829 930985826 41213540 617294536 262166570 279935788 10925288 779308314 389882162 534651987 254783884 713961097 327993273 959205806 213497134 279128881 338465164 702511213 386080468 749294932 523989510 880041421 826154773 942731474 311189335 538199981 185429020 708881195 278317467 635894809 174959805 497978227 352538595 839784908 949844448 982871293 546504475 875861903 362267673 884480243 324576237 486239950 273856329 532082878 445121300 558707194 456728918 885457976 553591399 863993008 271350510 879772013 644367236 810984121 176020050 506575469 749911846 837747363 786360758 897958973 281259866 788226429 988200338 993794923 520820706 967372905 284949635 461109535 664442886 883863147 494889456 966207943 422755162 537703274 666432887 777085001 166906895 248028288 358086354 450457599 968185272 980174229 875677599 937225342 9364740 278882145 395804793 575955708 891641312 968314387 89757468 295522253 856236806 977764877 365639294 393550600 131700631 477988335 933108730 964267608 786285768 862094914 236737396 588571419 49007989 240998624 842504166 853427994 691312576 814902306 148064065 830141790 514602221 780055122 963437463 998973573 330550461 507609070 456591733 657699833 1983566 301683880 875676907 886236031 755506946 943003100 795143218 937659725 522966177 818499891 529822091 866550314 390097736 823027529 827783891 852106239 924182024 928218331 313528584 884938299 991436764 998427817 605567454 741074835 415219848 889697952 519716790 634102054 745276437 909213270 518620641 537681546 72274494 537215903 343588526 427454552 439905276 831620067 293621459 472942528 579596190 876981627 525205037 759710635 399858603 798544985 331742513 706125840 548602800 599702325 410185098 625599691 699537972 905497207 56418134 331980151 50903699 735888827 335158512 754755899 537070152 976372241 479985474 978884946 705747785 818621049 810675385 825640894 37616541 929518128 351300580 436957495 368067778 643617668 456449096 777873246 678190528 736746476 162457194 197868475 948283633 988193436 558279247 985296743 848468180 877907665 194684209 397145974 354942385 863619381 486848083 873389835 555741367 852620588 874007381 898429246 489922560 563315459 775983076 933700823 835276837 992501585 876509928 975705161 153038964 301910176 805111520 960974539 671874529 887084086 362614168 958160172 470434268 670641883 271445483 805709874 140493305 878089388 860153428 886464160 852815889 971367620 770470403 779198819 309116021 891491349 334405053 518074503 593042163 669774510 162143106 658271359 116939368 519254080 207488503 221433461 560998511 634354304 492953682 765543095 359748188 666378572 26563660 323977702 444002217 770866784 845021958 972945669 30267319 346132323 207665207 295711238 685025465 919606428 913912349 987024332 631550738 733712889 447621130 689768710 54573762 375641098 295667950 810398205 290882373 791771847 410463584 699543782 166168773 404225410 302771825 945575066 209452598 818616080 874690724 938284194 670953964 957262715 10594339 970221318 687567684 799897271 975894426 984865515 609627662 845816724 348455904 772677464 565404876 926540977 445070690 760100185 131801465 891291947 405544127 549403173 406440581 903186117 975578382 979275149 734457081 748983428 892064776 993276511 921149548 923576292 67724777 678905221 126787084 685356941 617981085 738382270 39890307 527287489 969532462 989323653 582737956 992611997 473031114 709257248 238020165 550478098 118331666 582701470 159477057 648299354 449080076 594482598 21066851 89116206 179699275 793522832 804910798 986136062 958674106 994785777 938046314 945587623 423378713 974697050 702497517 767310744 411796796 785548993 609242220 763040021 227995374 580865025 791886538 998673272 884889439 905637269 579298320 996365095 391447067 673327810 385662114 733919687 994942315 995462797 390682242 434982850 623578962 659656721 405672809 496107437 289069720 902845681 38197994 332537690 339586950 845608357 771171544 897138707 913985062 956376963 927555914 930565421 92664103 251469359 684112997 963980402 700516959 960318078 619203427 774946211 265380871 730243095 424502744 560481211 840926480 889762473 671480118 697386526 995213424 999315928 119014837 380794496 934604220 982347359 70886260 617168068 660691604 715391752 380349674 454287212 429670810 683144557 689009514 975758897 837749280 968341525 258912767 270387428 506082919 686554364 424183694 565478350 309252962 894217403 535236738 955822431 117474139 733031206 50293189 707432320 39931458 590124971 786896812 957200041 981062401 989661271 513578439 579419838 799649162 972602438 619231797 788549082 243674863 288822108 376883807 558985672 464140484 737176813 780386284 976370426 631746576 791654871 223213496 688445392 816557788 968224111 223488675 471257967 78190502 435167594 481529622 547646029 886185849 966691405 120694219 408853474 375549263 677118103 429972015 904016854 933642689 970387019 832122285 864725146 808589360 984784373 768283328 806427833 778934962 957244564 470692729 500851372 158089840 374847789 23136244 318818950 203035016 993739485 881044997 974633205 441416432 969165469 673127907 952797718 217739115 337967038 557252241 734214583 823087891 946172263 400602165 424224827 5462577 843631816 903282264 974943162 717785428 943650267 841108004 848988755 587987295 693621537 577209168 763692594 352236297 932155903 957622090 975947939 351493975 833405973 291470348 349831829 617123985 700028932 994572169 994843079 877372585 968272916 14306858 468676610 859359399 881158287 801068294 868706837 616258899 784794885 543979184 776636492 370888023 818546591 62552198 603356067 551716006 780965481 647737987 792210275 888546758 912328321 139947366 850521146 52140164 204293467 600542546 916625070 865790274 870083148 487314421 819132727 729095817 978791822 861797490 959055158 985058979 998545451 742030320 867575242 987053689 990212443 582803045 593012648 714826564 939761804 787079661 918349991 511021414 930560836 567002934 961540644 480652880 904016185 827143788 964681880 853786750 998556996 115347186 203298107 144009675 385767016 730460380 731931128 574400697 882601011 216224326 966649438 779131581 937029261 387685041 756484314 382684439 422625404 933295686 956404104 929699148 961662598 429373866 517357483 946352322 973180333 197184534 925839820 8061674 240091714 163295248 789225243 14578849 213638182 927986356 977740422 122397559 979250382 231095401 290625560 36894236 283472473 987194577 999055115 934149031 996987533 618102463 806314939 70874197 507426739 714229625 854669125 644503835 839173156 335231998 824769612 853925665 902743248 520267020 964182246 507948924 731770548 364543615 786968804 463545973 538791533 728393413 949307972 536135358 593857864 202293019 837472334 808407336 809991537 683800860 976601680 308904298 702140214 721054191 812667767 2689828 145017578 763244032 882860315 255348005 840904008 291416840 847915169 303079329 614494997 382848314 391969977 19984056 96416617 14455612 68597659 624661955 939821103 502233168 703449354 85315333 333545931 757817642 856859552 295235257 328892496 338391126 733758939 889002483 992093924 280677669 540263090 865460285 905501318 260012863 508209433 285887599 672584115 298737147 426874864 44379833 832230735 36148983 932105385 109643029 272688873 908968195 931543104 137753233 982866260 508727865 923241363 547933332 921613433 687993069 934793962 921538205 947593875 558109993 643228707 453215076 554272971 89247591 656171244 433872796 435522056 83570954 377302690 357946190 725361699 702104220 907903457 182863056 400165716 87534878 824065049 246805002 676543375 413651475 819028387 294902943 651417150 917255147 952876940 120722339 979522165 4589792 985783302 168416915 894287921 352813454 369387880 576299550 908172307 507333914 644031666 501629195 883015873 784860404 797762836 498536490 926007128 875875776 964882526 225583776 564215829 314159490 467810114 903747873 936262047 714974490 839215548 296499667 776877502 890326229 975205366 137951041 396712419 172131938 385292742 923409152 924969449 118155762 983455555 943124825 977952070 263611323 936104702 824015241 916375747 835594510 912868098 338596551 912665910 651900304 730339949 32734105 960795607 838224818 939722208 944377478 950938630 853251159 927889248 616782739 859241927 860785818 891611470 721528573 895945985 206080041 717508284 424723184 633664163 493337363 647705462 224260783 388807199 778291981 841931310 802675130 943070949 961171433 989435242 375205472 603583625 512600541 966537600 154173721 193446072 445223336 845581804 889537145 914122676 267773653 668593821 788565937 994946348 712333278 715751597 597826249 613039477 631797031 890924347 813589329 860954031 765128146 824930053 625474078 950538873 318436024 705806302 176731963 532371738 90652016 436437154 240540280 382953189 528983939 635441250 8241356 78782467 742868849 977428263 569295458 870178724 505441932 562127998 659460756 911641551 156165705 674502045 121420987 972901019 331036891 855497529 102847997 120705921 979447074 995915013 271235473 858571535 992724224 995210396 807219635 959553085 570090887 620723070 676307855 962338271 629427426 990036933 234384618 659660190 661369676 777616777 213652469 372483953 721053379 755068236 876190883 903380121 260161640 974638400 64773230 470059759 264615877 712503503 798148642 958294747 539123564 886914529 671783123 868426803 723790214 795495498 427350169 989630611 863864614 944532859 987035854 994468635 28673535 880953696 786989034 858175341 688597311 935340033 453090510 481533332 387810997 706423275 276865318 290554989 551267212 922408144 516293134 684245694 144888005 321965710 337096313 829992009 234215643 245420820 82159497 559701098 814449224 836757967 160081460 272083873 520793423 928528927 187908732 621853516 868701281 910703786 17013924 51217764 953926327 992050692 843455648 859516214 149254167 327395717 8867861 944752966 648099132 917216798 494554174 991760576 657668227 790621287 944425415 961307765 399335608 669875468 596650345 634363357 220449997 555169658 59693860 997227287 470453905 512933570 814735214 885151822 282508042 815027450 153331580 933529088 44615854 351405662 460641563 835039134 82460061 650316534 698892466 924268170 199563259 535625811 235575017 581015706 11623499 880842916 779744356 806032216 379582704 590134713 847245751 858514467 689518700 968673388 608986144 969431830 335742820 895526867 978524588 991574794 987308026 999024050 899724420 994328052 991099284 993939237 135850673 521866818 311412595 679858174 250259650 284833260 421960069 739262402 705837128 761216689 78741845 204713786 468852278 901708987 658095642 659752748 213092223 485920812 213407648 576472149 604505743 658814235 281406643 814461908 738681415 943972756 312827284 461606723 766785870 834078599 25623155 975465342 735324902 862418225 207561451 319735212 828670608 973881023 530724274 634118431 583533531 702901197 743039697 809005671 816762693 922957880 812276132 913797199 545253360 727208467 868303600 998109608 447652932 963384678 879403770 897343675 904828735 959492246 281723938 663342894 152145942 774254389 314958845 873143168 146644595 411694600 132846770 773594439 752673590 769389029 574216217 844370843 578509756 950530324 74587938 362576261 894179646 935412066 792613220 931147158 680852782 765087433 261524340 993270474 939568025 986877694 296858520 950688669 543058837 555048617 366422735 381828630 156196541 976744853 492786351 601684281 234166322 671098934 366204571 873815382 114592286 842248096 335540543 775725338 994499259 996234435 281994028 460086336 195577182 913147407 351327367 869615856 819350591 925692535 396643696 598540046 27955419 773441529 777360765 883678997 794740847 807586613 645445761 673226064 55873865 238113083 504505383 722316362 32569679 635663992 963078369 965336921 881893939 995946710 686292882 983971234 86814199 824254877 956968262 991999222 578549230 848967205 260120054 645240566 160391246 439004761 958051034 992925856 219778010 719045164 605948297 996077979 108291454 531018263 388362925 412228057 898677887 942382503 118905309 136556375 662764810 664066591 302464465 848431793 958513469 959734050 221868414 351340162 604448103 748668413 868997560 922568753 299396134 839727141 106245535 716775523 58110208 410210447 541716334 841386006 464159168 952754858 33769539 894253802 947033705 955093553 665934345 895590508 224030426 487207862 970143948 985356685 778993069 969966313 75340080 421453410 332388102 558463342 739318106 978754863 419300833 676367131 112183960 269271737 563718739 578774934 140935871 308864503 856298110 988074573 281772699 720456241 879049519 962301709 478735115 700418864 268953307 414780532 817465149 880280054 205994073 941334996 413132669 535519767 163514418 881376909 459028079 739381866 619771238 907931778 695255804 853016151 783059686 874906409 111870181 348488254 330515181 871796915 143849774 168506161 831136201 957008565 965041799 981931726 80574999 426416977 508510363 802691558 88013062 203429459 896375876 949479573 972191557 989582832 365572589 384074384 76558506 985437588 528118799 673686625 230747112 430540336 699632614 882197766 962612990 975576769 159769013 171466978 733060875 770121224 216554403 758861238 9289438 126607692 175884935 790392430 263136323 934158527 839487865 885094527 849983342 898864105 24875038 741929132 382708869 596286498 942761012 971812716 356000068 852599644 19179244 719746887 420010058 821113054 377567670 897749015 506864807 705408331 317011258 677113940 251440170 383650721 729657961 868740346 194340599 870846751 432039443 788080078 719493989 997064471 258431589 644278896 554815148 767136398 441697896 849699971 939567113 971607946 237661192 945841455 723405300 733561534 997242563 998672466 835225855 898631535 774626772 906066401 913942044 973922969 816664691 953308205 484884382 917547051 855995067 904241562 707992820 814067330 439851441 737707279 243255075 547477887 414653277 572992371 894055829 919257844 87104540 790752951 396309488 940252135 700373474 802814076 581191828 726860309 563824479 917942990 61320835 327390990 19736772 399484514 737725272 751636871 242920087 461729285 931911408 995701802 936270144 970373263 766647090 943907314 57606134 496268355 942371389 956349481 186086013 733272558 852647281 899029779 213506265 843405933 719567067 815474359 301559325 869642560 316113021 704111208 317860936 584749887 122958511 678734505 10011324 823073548 378928436 885405676 706667539 726322842 330012034 469965165 263555351 683509800 890358658 928132793 541741380 953053992 522877856 867926335 719640094 858799121 890103778 973099678 666434228 794185195 836664572 904566767 994980374 994988499 932017497 972307598 40893629 203020699 646703558 764280888 485221923 533145060 525494226 904966566 774790854 801604981 931510217 980020833 976367464 995485475 425474128 837628811 96333412 488613789 854287753 873662232 145857813 436088474 70499438 836362848 738271699 943846247 664020066 818182317 141952167 224956177 358703530 714696160 409043817 959068565 828901757 902780755 751783117 827092195 325817467 738638945 816970992 834424780 968522548 990751767 458588761 959123944 83475261 254858663 241456471 459161576 667605307 886554236 617537820 888667415 147440213 283838566 3894689 995260341 688367836 991160352 402411285 589863618 278024343 497607332 597343392 952936864 772411667 856843037 582782315 866000470 77141726 820647845 388873617 825450765 619223615 780147910 155173610 829673412 866713378 984441453 458781458 918655358 534266963 649867438 134062080 499828500 665539649 690172230 105465694 802211683 883462360 954704429 559022875 897699497 762500382 774886570 806602291 830187026 372363220 938038533 304291907 787500118 242541960 572588007 49390758 731417900 190376969 987012988 778052983 807858900 495722730 788470589 407760450 554704434 257319888 482972660 247113077 968391575 964722352 968515396 940179041 947129589 634337944 979461797 820771245 962491306 150177239 425512212 566495086 742484375 908822037 932005497 402013511 555287084 989352761 991363956 226056844 894117916 778732500 780840070 167620375 526219394 93460055 556905887 242368249 796573190 766389070 829490182 919011100 924445107 369619360 659056328 899347808 985957943 878997493 995508428 241626822 957624733 634212515 946603885 9420068 318637871 535259746 571394368 463019160 779445142 423888682 617102333 137340524 226876755 819989025 983223400 13926695 360177065 934803993 995460009 814434665 960228952 833537383 917016365 571715310 907812380 427681958 751453712 383498041 962198081 290394812 688680535 482607 388967490 162046987 955895839 677951569 814094045 764999832 958283514 252565682 943256986 168095311 170347781 200498221 375248299 257673245 498010343 22702924 381960330 873332272 881617946 474839308 568304076 620464068 669704165 348773353 385549148 283927707 896891538 186407254 214175872 816670058 949757035 52790979 125583056 558799571 690565139 463484002 731124951 226083836 683634966 782118869 889215412 523154638 671027430 419560006 895045196 100734666 940743905 384102799 923095426 868112872 952786181 574994329 760252633 556027672 940893839 477454983 879241357 189386151 443011515 945622159 997898979 226668130 794685367 831352797 943736776 51395689 401433769 208398637 600507996 729104801 839335209 236338063 709665515 515875146 995123471 943965893 981301740 307536140 653560845 378566307 496956283 873881306 949857233 184001146 815777457 677436731 959425171 716000095 721034057 766872354 931157258 598538043 756211208 67201645 882136943 217442482 527938359 206885557 878822798 252503703 437481584 472318461 772308203 901046206 942419440 341949190 657072635 75626180 103019946 741934918 831810500 90043929 601243938 121756225 201303853 355824669 807337952 838419366 852654249 765100046 928923517 48498447 199000145 889304875 973992459 212025550 556949488 405030136 550830372 692666325 846437781 317704786 708228048 586352754 992146145 486984472 519866285 786661445 881341433 478793424 626164827 161588956 546742426 856432665 981354806 463515095 811420115 995792242 998589990 687479617 830370020 140095199 708551185 182653380 965228114 192148580 393555309 664533427 768875191 664378768 940419303 449361357 810892054 785007146 984234472 73531237 375832707 263797064 970657350 93162960 155885066 876505231 989534712 186253143 824548737 818660542 908723180 731933452 848975932 225122619 872385478 424616650 738860903 71334956 919637438 177470517 286200374 50481621 353384081 836922536 848427045 90171494 746153572 432347316 541699521 288211994 911131888 679174818 915135813 350440312 957619992 660478080 751553312 499852433 717742407 203955868 483072171 972540982 996727635 656045020 824568121 983414297 997845471 979081158 984513808 668283412 792410829 550738019 571449433 494565360 686791822 427890348 708682983 909618033 959206939 648263921 818401669 160800475 209091576 811212115 908475566 619773883 915313228 452132142 759971035 242778089 671261351 256897298 550393536 847423635 894136779 40778710 304809036 824721348 900660779 788173674 940569342 28930011 769591560 357717133 691765752 90204348 834377492 444102360 935543225 645303549 907492491 15159256 714411317 657570478 740587788 135601803 166514450 89096 835196302 355471710 472226884 273383517 441534070 733717143 814525510 449829113 608597233 243349458 826669102 463599268 771805979 609772518 880348356 900828002 925501782 508920815 815144849 37420271 864239772 887182317 947868280 948318111 949611934 534284271 607739175 12503048 561314459 219637022 937570857 404995004 539535031 349444035 417986503 524540284 932643598 938167209 946551643 453486460 687947987 625152373 669527041 41734401 55433765 473043888 746516309 211375671 229269876 46355074 245200770 735078039 961582453 445392636 536602142 451938345 777259956 535601728 838009292 115102534 359025067 474061123 626814148 23418039 137832798 205007573 310287109 340747755 713001331 387161375 482982227 307495215 779374294 895212284 992032023 344716503 837780137 99620169 755222279 754756259 963301885 313071800 350791490 442428363 878771966 185551640 323679273 663739912 754213964 1464641 29008899 188549687 696679351 151594844 903634935 902765348 950838844 799100697 955552475 988556496 989202755 590478282 771544429 940797632 950078067 573318496 803937862 336789918 499371341 880984249 931055064 438520672 781633245 575720515 925700379 993730621 995486786 75614188 142853023 537109639 632099937 663651789 677673485 851265329 954825705 329523232 419148187 978673263 989522870 507043303 843798239 29972549 614057972 1225197 643895467 534112045 616973855 850572714 997636652 66365635 508855203 7641918 425670299 393255579 683085120 733154712 909687657 784811528 887863373 139480468 667423471 559062084 852015887 771490135 772186045 612843058 749850106 42486822 828804755 664882912 780372277 201844275 277505380 735593239 814546766 668969154 928201598 555970099 980353917 312446432 518323111 161993292 626309118 682615761 962066109 885632870 915821004 314170975 339561995 947486284 954199818 111620911 908473813 978233527 991342459 585056812 782888638 601241877 703578530 676663055 783036967 795904059 838427641 491811337 949934231 470030385 848317586 146342682 802685389 484504462 753467672 352381320 544521330 308932003 888142140 114412319 458968562 454724933 927525342 532523630 643815647 357758874 931793198 960291018 980297933 729040003 955010889 787383707 854494684 355631472 714695907 189462084 440817450 445306279 514521021 957840633 959844770 481388508 628720445 308541720 911070409 219977849 832133576 716691592 730194384 301094669 875500431 167783527 672917575 346988517 881292990 699272693 718742233 179028881 917353116 755054385 927883401 817211076 921726185 638903282 783221579 60304461 136548785 262503331 301036616 724223850 994530531 784455023 855671782 116161262 745222019 111871421 289784405 723395560 730312260 931155907 990049709 286443706 584811584 867295393 928492159 589261394 988349026 274125584 563508509 796420717 802759733 660294747 980906423 453060154 781232017 539266978 727333348 838691276 926745718 151067395 352365103 862354221 938711717 211292608 491796255 868545432 984777285 819688071 956609286 100527684 921646732 421336635 649884228 254366217 979162360 22785371 881466947 524853063 820785717 53363203 577330648 477672438 986323282 20496636 478029815 676421753 745491480 497397976 595840481 610825267 970422084 294964218 843864726 341890284 822673911 28684544 454255849 561046905 814185780 330797821 754777597 422738635 713569971 928549354 958967618 705560697 931159212 270023213 582891373 432846656 816708984 646169424 808438021 899489037 910859930 261715715 575023329 738637003 970182440 437589401 480157088 743324258 768491061 265156852 757914314 832116888 846263231 145789 740253154 27324836 394210312 209516220 990616579 220139587 490384390 673989896 829896408 279753346 680502287 265788690 458633674 892022413 950794345 969511771 994988317 381354164 637330750 64232753 250636462 289930739 574478807 59588147 473393731 531172300 803730963 682520972 795136591 367694760 592436506 454062645 621990455 826027581 859620913 621990691 904909225 913310408 927624183 344559837 673003998 455148149 907694833 262673820 772838690 838106275 878566874 868849174 960093111 381467614 925679151 856510856 980353646 485598903 920490711 300931333 981601666 440756555 877160197 537324993 656785570 615834455 751448422 475032047 756819938 758314868 805387790 196546738 411037242 532091588 741684660 663945993 903590646 638714740 645277195 295841617 977323372 620450676 934119207 138632312 783088456 383758818 469712260 707757618 885983496 748814474 940200553 908062379 927141844 924148084 979850904 848456354 955861749 272330253 484072420 865461896 948676957 561646308 701875439 996315096 997207873 344338750 804771909 514443689 766424433 187833923 330739082 118161771 878966411 256831950 958939663 730902833 814859714 122659623 866260224 859080105 910239293 290110720 930598150 146972433 885095161 780523609 823090900 149941850 394475204 368059327 548856590 1868581 509883719 799675061 920241466 93187752 184720571 808774414 921029122 419046337 579946252 347078297 817718227 187973038 714913649 841523242 885187227 224102344 860865413 610517804 860156870 266994368 704317036 853440981 932758155 300469895 718603899 239986373 625018988 954433649 969012321 623951551 638745467 865420573 929358160 133526289 291788171 405004675 954455841 557465375 770186724 82263533 831640126 524844689 805839277 720903767 802765862 422623517 602239730 111201294 150112118 3103928 75725046 937282996 975451784 87856149 232854935 410541267 415328647 830223812 946623905 243900417 711668456 987954360 991959901 488846638 754337875 677971786 773715209 141420009 585377924 722583468 840059875 779440366 931542821 551165901 565731778 924915611 986487615 617722644 747045671 377476770 781872958 492511735 869520656 229827481 818045942 383422011 385724054 49375722 556502535 750378331 753231063 459442583 713266505 304191175 360851989 81969182 418631000 974874570 982873922 414883841 598022269 80073773 421710832 308755457 765875561 375912241 938651778 128129072 163927490 158756419 946469405 744301845 829708146 811805557 901091770 838446466 973547137 881800860 934169368 649578534 815937241 87819833 764525988 321501479 760521990 845852407 877484911 242027717 660145453 806301228 869708650 738011895 774384253 871703901 965961099 315437933 362465107 865644315 939646027 448719293 766540956 777438242 912734042 388801127 467875665 357398928 571189262 805775990 889694506 855164887 912411239 903520004 994411757 806770017 998823036 408545194 511502214 401194851 402700920 652025014 966923974 661280187 673560462 654050616 991079986 4444902 564345865 744613336 926122151 31758972 179203965 826290259 996622112 386924528 984792355 370464140 469125951 240869804 310551634 707742938 993510734 975528198 998285403 6322857 341743309 600081853 729557037 71178404 84210135 580432789 873484134 285884369 724543471 833047504 912904186 990522894 993568039 154825140 752056221 43845443 532943583 774092753 809197133 15223134 966745264 80990968 690589572 253846939 269249872 154050466 717421793 829094383 975636622 858805401 910718000 571748125 890420179 927022176 997758906 733099918 848360142 569412556 767666608 977753175 991591421 702774510 831157945 665168766 895305103 800963758 858559802 71351255 342354481 126028090 690653361 386010417 703191887 203192012 633568237 693152744 955460768 846086882 944158239 19607636 419003569 190696241 408752578 919102835 930541886 127633659 752523092 56904723 618282574 40764607 944157030 133827051 561310474 620057695 642102365 302879731 976793904 785867987 938028501 540171107 877215346 661129294 697682220 65623808 549182520 347035748 545491071 261543271 464319014 855377100 948886130 654873671 690783092 695216678 759210950 445571686 881516872 120989757 537985086 595902789 955172279 993854950 995884205 801313934 883158327 336201250 967722090 439453625 663492166 994970308 997733118 661597490 841843405 652739721 907478276 987970631 996218216 492545719 855311015 234017265 453923188 657600986 920258305 706182674 836821248 572725695 953316493 212482592 798412437 525338710 941384487 446344109 500697780 72049163 882851563 121070866 867821112 585954906 601816673 520512272 861060412 440896262 456936825 403012406 975827379 849405744 965059013 454052913 959785349 664298172 863952195 399632642 632701629 924064056 982926106 535157667 628500184 365472192 965935929 416847252 729146572 655703158 932332505 9573600 303379209 565410683 718878259 387159951 438028176 513158653 922434611 97907666 681510716 522148458 782690688 697343479 833570392 380007153 987175651 411703759 454699393 234612707 539177487 698291244 866335142 724408682 873318311 325355522 958241115 452789346 782073793 967074416 994301587 208703649 269957706 733135680 976765333 567660888 569405091 715697771 921345417 691807787 753320889 627947885 978153379 808238050 837430897 969915299 974827393 690840382 844387070 195783071 882350528 897747670 962468047 142840509 900032944 144933824 556383010 580199827 877296700 170665672 410807052 416128909 793102898 797127159 826447238 156976224 170040284 71508291 885687318 910914812 932031373 160650777 492314360 333812554 812444048 45548349 718071580 994697994 996570526 333986497 471413938 872742013 896814957 324353102 766836044 422496223 844744055 946389001 952546213 957043466 958485607 7199650 371512340 120220079 282285182 517467718 657377073 188295993 561559455 457545009 880369906 289582929 973181405 786496106 962187593 708741030 982690260 925250478 934734431 532514583 621692876 945020682 953013557 833037918 975176797 814044411 935827620 387989130 627796388 734004742 920665577 412581253 906249502 533359819 929477570 869785036 963474391 180382416 318710883 718167121 855346089 138395627 769507762 395207384 658579346 247628072 625569261 577867918 767046925 413642412 858204512 154657674 562769815 693770032 953036984 626334938 712973462 821483118 905532311 351600086 680615351 560765921 844493092 155603885 370637564 660890160 679405793 913228675 926605886 981464051 992669337 341802051 476305734 561060942 597596116 942594659 948616729 930839944 975315687 91744745 797166355 155244877 547910693 353267142 798429855 656478243 982664828 848458284 890310298 488945218 750210403 72259140 355447674 944557999 986773386 39922081 386703562 330323549 552112248 378699636 613975884 718365608 779735128 68637397 321069916 708011465 806293487 840326823 984190792 481160184 902707586 257772846 579594951 534546251 932091783 200286590 833280930 94359310 478499262 182735921 470267295 259568756 852655119 770437118 993583195 97560161 263425953 552631989 587614448 747282656 837670082 531071056 622216876 484295829 800510474 70044641 933006664 902483418 937897306 832607235 904487331 549138349 953073263 416574557 694196746 144072155 507653752 812189627 942798792 854734836 886318358 747431070 791308387 96906901 709834644 253462913 781233472 26676684 89924100 809575185 856335556 761353625 854702915 184949298 736592512 121945658 874525028 361412776 590945135 569290672 890332372 203435436 210055004 387631812 962495968 821289336 972850821 401694055 781725090 763185190 768880426 495248251 932131937 422404028 993867587 291683170 780542161 774051432 961145403 630888644 799146309 307841760 583173876 356221099 610267256 860140853 925369896 52170426 532170090 451883387 598108387 970688954 974436396 631906394 995368272 334887700 434646822 426440479 830955687 642934359 835000663 525352766 775764731 352839186 616169792 448361814 909244702 119168347 316017146 280909672 818428425 732078910 893645410 180310547 566313312 83806200 121404768 814721319 928618295 524243253 693236843 277667436 439026794 850559244 892785112 89068322 783686876 56926217 159755291 850781684 876621901 670013359 773769864 863884332 910564394 462186309 995692330 710905856 917877930 749104792 987344689 538671102 760478064 272891806 707064129 798340578 823455708 684264940 969453595 809389430 850020147 535357247 879760543 530744007 801640045 567102664 921824091 104157292 459881781 707918723 992550859 259991131 956486098 573291964 914247313 819758630 949026660 245507568 566132005 811983040 926522870 346355203 599697033 41685789 430380852 98254180 816267450 814094074 964900265 499705572 507872392 621820393 789758580 559250558 643215228 362611365 666706106 201530428 681200800 161257303 313962140 654749992 973746724 538006822 687747647 250647669 350394536 71989392 930634431 985952278 992067309 328112774 712822206 6916195 907645202 966651929 975953486 705480270 996438953 211785784 362965753 279720254 991236740 515587643 959843843 698269267 917194368 107903724 276666376 206042724 671912687 590302492 766781456 7342412 858460981 311212939 750782856 275397544 684058645 886245219 895212602 71176267 357244436 112047184 229835407 765046742 952325566 422497721 759127915 773703492 813935166 576966292 787212211 884542681 900143655 708259907 954108479 310559703 971928739 724888558 953342177 22714365 502716011 120740374 629379559 512509246 586670160 577880103 777011577 385271412 755571724 883240792 985211796 345499791 887318701 41225994 205022216 805597084 827736521 476193287 838811295 142266000 863530406 597294349 926067047 984972946 988032299 199055425 233120234 263586002 684564759 712387109 740794902 80185711 404708260 300762847 543080769 515925588 597682481 956134411 958188929 885865991 927291653 552633128 600276757 794156998 917813384 865261758 996593953 929889312 976836108 515934485 838445973 595558518 979791607 332343497 458168727 703168605 710412189 319884591 369683839 25002850 540139925 463386887 507668659 944978406 948458534 728581813 736382704 521297062 898543886 285433514 901499423 267532256 544908298 379142355 730795425 418733610 470266407 943330796 975846015 921881638 939081932 379431996 393346857 778137958 965207724 359274917 550676730 904583544 985034236 150883724 357416105 668791090 795985004 358136549 648084522 821634135 964888448 557069657 876012557 12168251 362755898 932095158 942910920 887633842 959536793 784478355 864244633 565266443 746956001 616635328 975199471 704677308 932462951 570910192 687850094 956732293 971975992 923588964 999288518 313994034 485730819 753437833 982662902 220296461 747270839 465433991 772166980 481113238 590143591 904224495 960266451 2947112 615339289 236759440 658217126 217948689 496745900 947414022 984103186 673063493 851734020 468293717 528853612 672659388 870847481 954018602 967089257 440023629 834950960 661366955 698002841 794404011 981897581 862963755 945979135 937068310 942908739 974089671 994002643 274323396 408821673 574059750 616865509 640029605 891931652 85291430 852502373 325339785 485981668 339300173 799169475 685095267 995682028 819620527 917089656 328599645 849311282 554085067 657826912 892294262 938853977 32228542 90655208 962440474 965059650 249533958 278946026 687816231 827324775 4882580 686741613 584112204 978163099 169179138 314234866 526351914 667867163 26374099 205063987 496769929 765488128 549015434 778557614 616858226 862529341 319430410 352706534 316532827 748873501 614779657 728902912 821079119 861024151 991108734 997503861 626206142 825518636 981329857 989359408 695312595 947436180 672395121 717797140 578020520 627464639 872592874 996392547 294368347 542692670 426702702 752091407 93125970 806793997 876222674 945859949 694154244 944373829 212501749 424874329 821829073 934744162 423985757 816401029 124653915 266532474 455612634 558197429 605860558 896083454 194141189 443402588 466138097 530014747 495189148 548264989 942454203 977248010 878421065 997174902 564623884 973322039 659929133 927795341 289694560 565486778 214942376 850537902 782155132 909849172 246193289 428112119 104600876 699143134 419411061 940955025 478502374 841050659 89651323 130760700 467933640 690105932 83338370 761186523 697489111 840308673 614666258 934110856 605976119 849191384 45344822 577935332 832723265 867001528 942339066 964797508 446046981 706280449 284136694 938571496 684489253 970755539 86553106 215357010 33119251 314661203 117070903 289193388 625051318 725473438 905300429 938606710 909479521 988321631 739578622 907724816 791004521 954687224 380929870 653875772 454722527 797332864 479497428 644373080 362189093 730778525 550754655 894412607 992406061 995053923 72743570 902501716 896422510 900771558 738212438 924185110 454526388 545031940 732533169 946514334 506363499 534118296 631809466 843232941 241454061 774692041 96386337 810511264 292985739 516645416 229020235 823537760 2839934 804273703 187009096 435535822 551058542 842716589 140921121 655225076 49516643 690189129 332445204 595999498 973142422 974946020 675879890 943000553 620327688 811862102 910445451 934899535 476697830 561165429 791669212 990634405 505416081 602587489 810418294 885296734 702844702 760877042 46222011 173816064 21195174 248770355 128266774 515032254 582375485 964024375 99095849 138115269 400252782 838137677 28976322 675590274 239920961 846171256 517751673 846163479 443092838 825150728 60319743 935139579 934591671 989038115 73500510 426624518 513875599 774200367 353062663 628232737 301373225 976498399 734836660 797828737 864283252 938549423 455657722 641053358 581270966 782386926 623573461 776094557 355366101 477933290 390776616 408417307 424849784 697956392 400204882 471475233 75116757 298453164 570212501 644673838 651125049 931608980 667088083 767701544 524032678 976215765 770371189 925557497 670982741 824741203 105467205 563527352 135327997 857108902 947168416 953000946 125403402 322510158 275999034 713519041 695866304 801263359 25960505 629555869 309928652 399042128 762590347 845701270 304764445 429327903 826959708 862928303 989287584 989648419 943426626 994217491 822959815 902676134 323048716 452610113 916872933 980557162 302161996 336605402 972190646 988222600 590452102 904003788 65626936 222942899 797273605 910732364 529866773 979183367 442237659 972408292 650784650 969949639 654239179 912171341 35628779 942356353 168084241 756375992 93296321 859733742 337768929 671640748 858071234 890313873 348924288 621920118 931676570 972505547 428723154 729510548 187947379 422397644 838300939 934051546 772577235 873049069 25143362 815629649 269352039 780916866 503709382 715480211 299333603 855897587 787026257 901183069 819855643 832708050 287761266 896488988 696811478 818038550 32940411 133632400 145380846 929502471 899625592 971298014 265595565 466616378 412352251 425895761 281847360 808183068 400104872 936177013 349534780 517202273 214199837 370844529 368842061 583666009 717908140 974070075 658633063 981750256 971930778 983061805 128286323 905732403 282022563 411463962 16642488 820513452 847834376 975638592 511508502 612610525 69547034 931935203 837490816 922828801 213262775 241076553 534108309 639465066 452684868 851778844 72740621 102246182 80266259 601021259 314624119 523837935 856279368 883564252 489215871 556306735 936114979 948419992 646530216 729341125 997182745 997452681 509334152 882112826 393217186 574510579 762179794 908402420 363598486 954338063 826838273 846997794 166993623 934794844 815145775 871007223 156063918 771784475 482010561 687316085 113658283 745105999 405281630 678345528 343735379 604799377 961124451 993928653 641272240 852716217 761771307 806040641 29535112 684407252 591512486 933112577 267410529 742534893 682742964 919149915 820787005 941609327 514182719 925943398 541091680 585916372 930122714 956866549 250256513 277309817 921377471 960485390 792309011 852110823 47179942 390289244 234353345 692762294 514415225 801003285 684316645 951915514 541829221 634913959 886711236 896752973 950414565 971200947 328707710 450976517 488899450 839406842 302060385 925421152 814665927 954470283 648647951 985860144 855610825 879299267 616246938 865567107 816202130 836800590 140927836 821302643 904019066 926546379 623518941 799204115 301022853 423577115 839522497 882544986 136364406 910756098 768767986 893193718 29917456 57506970 492112084 597950216 803924185 927999134 886318598 896442188 732536982 833965614 504787189 737723960 813171364 844395141 198293921 385714391 962994856 969489916 46307119 550454219 874959865 987260278 20838937 569760335 429083548 671083703 362879819 797790814 607504641 752761685 500854563 811436978 435349298 724639875 110715374 111403326 382299746 427494929 211997003 701157022 354998345 953273894 942930646 957099026 308479623 569607994 108113682 226757964 936078483 953415141 707452897 774069829 581179755 793902218 589325176 746883302 863284082 972822437 378942540 689037028 3458712 408830470 354317455 774821027 818108045 951821597 233228623 994592391 151670454 489143920 949393193 963752982 774847938 966825400 796878114 985164181 404234475 562419454 302930919 387156363 860029248 938263231 521822652 802677574 357761738 622578535 161112408 189961207 667156246 917167781 2296250 764283910 449765428 947392369 412646000 954773700 376356209 495295974 344798688 622178104 670409390 924512700 223422177 602452568 44104788 192772975 382215437 544608161 257969293 643165269 159809851 691201444 872125134 967148634 129680875 553500407 797139521 821273577 120966135 549617029 504330117 651964288 220400356 935708288 663742238 844294646 450079660 775386787 952518980 964877912 98044491 816785218 672031701 760922175 23388815 728220701 993898214 999368184 67296840 780421555 223103598 829502518 428139609 979392565 573818850 576055768 629724172 847114213 446549558 942387706 358291078 599470682 625765453 958025847 579496803 729024210 474957994 900602306 484111450 620900650 412074329 786651810 779253767 971753091 805350999 877568362 23380309 509787556 434636788 837812694 180916097 697718743 183681889 433899001 517580326 859994072 517767952 999185327 228458489 282947567 932414590 997731187 447523797 983160038 993829060 995212846 26680888 122458742 233113343 693815498 744898685 831789225 977090966 980447251 525528783 610872823 735881788 987328533 785461381 919963672 181965232 368251148 488266439 639221346 576772782 649496062 164578126 598643664 635374524 763730371 33243767 996872032 587504537 738800720 432141660 827604991 559321205 653884988 113098284 768957315 16489012 802780594 709720505 849321820 637832333 796602087 595318361 957682438 629354698 960483714 520396690 783682433 202429910 521480953 31223331 232392469 185673895 489704360 670623909 934552198 277519534 549091673 757448915 904953128 984167070 984728150 409581770 970563544 39281233 612712431 603716690 825887476 153434507 840379600 389860020 818558091 634402953 834604239 388983471 958671057 176614381 338776115 380992484 772584558 654477385 774727913 381890547 748960469 61901616 576367808 126439591 730224986 839950389 949487351 392291310 787684035 351837691 916807696 170014310 590588151 741750536 816439113 610719495 686144955 358654924 900378873 870960710 957455976 668326636 684470472 811819044 954405744 297359101 549336647 435599617 967828171 792343034 826762666 567137962 686304445 265940584 971752825 388777885 798617614 798911748 823703238 309296455 822317721 568166272 617232707 757628295 827308005 301510854 724418273 984645039 995128827 810343177 826401229 172204620 468542530 981286958 986463808 251823782 450968009 584323031 929429556 493051678 968574747 98208478 954033109 864828895 968867208 937366655 984743290 249132723 440666042 407066178 470343342 684177049 910802095 547637681 812605686 576825809 851742905 147264861 542804234 865252924 954345136 928032455 938796128 608403506 648301428 787195551 869225129 898190382 975567826 860310063 912544517 588916837 983281325 964995197 970923230 482854128 870249850 153315250 775291482 154949533 985774868 593338986 958458012 723811207 847810429 677341210 830060358 15469841 321604522 45031362 664609446 1378699 769715171 867225225 943082037 898387839 900638821 392094065 898733412 877996331 965812378 581032659 959928696 704362594 812502768 153743053 326382244 905345780 925343465 829279585 970489036 51957464 885405999 372842293 707760017 17769902 187491755 222044665 857171730 579485100 883039159 457631928 660376860 964406897 992598541 772939604 855625640 12964438 669856624 57880199 869126067 183008665 990232832 240937263 458484559 359713165 498061325 46981796 982171587 807393608 932975834 281963307 608994851 68854773 890236924 976257601 995179785 367730162 635472333 461159599 754001892 999303824 999365156 866970938 972144774 554149719 658604782 99382217 950835843 134277717 972811680 37078835 767405375 42972633 50023762 559590011 886920161 267939428 321472011 563540940 853307323 13005721 947295520 947404449 996723634 503142583 639036960 566196401 675324976 356706294 759888262 54160526 266844441 509443224 903885241 708119725 961919296 856779864 992976283 665630905 794816112 753926948 940749514 827773350 844617077 258198962 638464394 604422405 961498307 662218937 774466359 571542534 666989252 363627170 949735917 75635266 103644323 361939225 603842631 435709375 776296055 797888594 906919598 936726963 975491686 618180370 647426356 914679300 989040880 822249103 972746139 484011931 757804453 25922835 102955631 909489193 921015629 630005088 905963654 937896469 973174406 167707553 815294539 936227787 958117585 618270844 800641628 958745705 994065793 617514385 922883882 406965712 779039192 12893937 556575656 539235567 678962298 274492964 472513640 208604045 837320672 88686463 991911347 850393742 939234938 88804655 433169267 955945104 957395999 986017683 992452748 451308610 735432456 541094425 779005426 718520795 836452436 874637100 935407809 929539112 932138822 518637962 624902832 910436247 927953832 11884311 934580461 378812193 584831240 797444358 931697926 226058825 514543996 50565490 238178889 527023316 908489332 181556582 406566440 100029099 551575418 80564240 194632722 224558647 411614276 226047150 940962422 533118321 865703823 233763152 520049440 305661548 505354436 616120928 778194263 292700533 886788118 469848161 813959400 461454563 757940900 458087288 543487146 251066190 565377033 86256984 546497548 246567427 579585962 188018657 939180904 283118767 651069889 75293013 945496735 740384283 786194419 138576036 582029001 994506075 996274001 626673513 750368390 413092658 871696342 305340027 424154497 836457267 845518751 961182508 993223699 885915475 918537469 872530921 973764798 995913080 997951913 867702050 947604680 180769602 747219321 618043163 848833398 37780148 363658734 770024651 802608777 691062641 791468799 460807875 483961773 731518948 895993844 541735694 851227596 85533641 412539886 103231272 707770992 494329747 586381707 162829936 209786713 375549925 445919463 790807010 858790845 173740279 646040228 286395319 746844046 206942477 433860775 194907019 809765687 757667886 847517646 939773039 978012548 38954720 566125202 815181930 836959225 345127797 603884573 591592515 819348676 678499614 829674756 669208873 878083114 739056428 955409888 618555893 731143305 507693594 634088383 863634370 903532508 861323233 862757236 407711057 527497168 684939446 696511368 413098154 630895719 989393043 998531815 940853651 988376334 741899841 988351425 531079364 802928888 644465857 709714426 247877853 321244572 11031508 382902942 737050697 753506920 568793911 818358169 459845441 529119905 637352860 779183319 258520156 297386073 765074662 818424157 60606323 585818270 592891481 871498944 222416754 975665208 314476252 329274972 975505497 982135777 646342526 691494906 775313497 995495438 381270060 892876839 735577523 992286694 727764148 847740006 875549896 937302880 298553008 876595996 858784137 908838744 111327716 753792525 545592511 651211409 428884350 689501938 770697386 902950937 115688197 543347966 609954237 729485183 514771059 775074370 30734160 255455406 398973519 783600738 661322318 907709533 988314350 996292988 651074081 828278791 368663406 540407517 81913690 724664818 719271148 871312453 254676371 765487288 50869461 358751986 750710957 933315422 26998261 601929041 697690168 857474784 142392309 766344076 454184737 721460911 581262169 841526852 665391593 763173502 460968102 888112083 901929015 919316990 971421685 992158731 343417589 817358986 35113619 112095380 95268352 566280793 451939766 713242396 174617237 400905705 198666434 539836295 586952419 607788448 679611767 862355004 262821988 478181243 515999606 961352549 170286445 811993753 956236516 958662651 632142950 936037594 384571396 601493915 433401060 509139273 821508047 946907374 114209063 963386569 759921854 987640944 904774444 912431442 174303225 611271657 633835379 773561288 102663350 773798864 354255873 384528646 858751000 922430442 642524338 680322997 87761048 700017974 683939312 723274497 840251939 958322009 719057127 722412791 338905357 432078557 196179465 784862455 930525466 991692502 181133837 776707650 559602012 847090350 952440588 957274290 535156831 887399377 829560916 861752554 428286496 629891950 358873112 851297321 310520004 645476050 72981547 481504417 277007766 979588961 577477330 955764029 580169166 861851056 519998108 869918732 952165795 955804925 262696214 562561995 415579500 958779315 287353287 786834674 474493650 686699879 760229766 923391716 316718297 396100000 439779645 828971363 481047964 748436421 209724731 511936226 723691276 930689335 198621681 444483374 881455048 982953472 418397507 438954744 188948271 804014029 110454907 378486756 97192153 315130037 160638013 331920893 184832205 299798659 696469923 749839691 680031029 970831330 480083552 488954051 630766370 711033045 428312628 576921492 509980210 916370345 361632646 915460209 505382201 557697672 249365726 336658388 996709291 997857531 135222544 407212947 730727693 867894850 754476095 972080088 160038624 450353832 274778508 540771417 99213696 255040105 483640977 803284032 283702342 327539470 806150521 821511263 591507677 676542743 26216503 708038285 87016528 608442436 530932637 580188357 976199014 994520283 339982150 486544114 710389725 790337730 357287109 553871528 867140452 916172305 820965164 833527210 332753774 350701625 505570086 579458621 490754207 632715845 456882275 531272581 307099381 883134795 196238167 431326308 772516171 992806966 243198234 425308836 80410396 875835841 28909934 627006478 339360692 653504449 531271921 860220724 911084934 918339651 430260202 828040254 114225628 626412903 85234503 255394179 215485972 225304289 787804816 851235652 531888374 587603466 971428578 985446594 970263690 984788903 515781601 754672412 302585238 479893406 790094954 857032755 510347402 821282475 297410632 354745952 502080855 910338184 100242947 469221933 649119729 785956223 445657927 748026259 926243582 931440087 117752588 440090787 205034869 356074789 238550520 931250090 806244244 821045220 153399518 769076958 811043251 947208878 255805097 654177776 618570603 979433026 592049553 705341140 405602866 623158258 391532478 888432280 783263301 826966966 34542835 598632555 675102721 902284595 163017995 827715212 551016396 900673912 208057286 958279113 322046052 755447442 132511910 481061665 278215372 928170648 275374004 278281899 42603392 385837789 234733108 922053435 839556173 842196913 242374760 260919799 515167821 664932581 279818352 317334928 811074264 896846435 899917828 916706355 864601416 974165857 56772131 287112974 270059340 430064045 665015044 963176667 951177426 970961207 591287048 712940726 991075804 991228869 859732317 940296354 192831691 570296136 52807055 250878838 296690837 854897991 622368604 808091607 738328458 758343039 61237746 236176229 251171697 284022368 953011798 995100846 619330008 894355464 262498548 795011671 540963598 604454585 760346744 843625279 995861203 999096300 950158139 969082486 574742444 745996537 822068004 896179553 928392838 991990637 48224301 303690477 293596824 459814612 985087639 985312457 58202837 377375128 284303834 935271037 26226824 305827963 435198295 593935716 389676470 437673697 79392163 280743908 597430958 876845515 68484843 666062741 117541352 272423660 407955011 417580204 405504555 446221749 249310565 970930098 587361997 712592329 670101862 878229838 910130862 912189296 165177722 612966797 87832364 774585362 746981852 777254023 514630983 675342211 863954052 867441859 930560881 979361802 174224721 321534918 339846080 807013507 18672927 822894123 969387917 992807252 619765005 855411060 766177577 889084680 305209124 589575605 236757748 506770384 135148334 756695912 874780034 943616289 140601606 380904096 123635046 514172514 538673274 933354442 115886648 498860125 995952495 998212831 802003688 819459680 342668966 366820666 971371563 978446821 320530398 822226367 300020334 980559102 328817645 591335804 799740907 847919927 419698115 878928432 343618264 352735528 242633481 964363441 994747646 998082791 256456022 460916883 438671160 732047238 712878066 876976870 866494768 941708600 228659187 714193197 506510742 645205599 233972775 239370995 178245579 606523434 251743916 534065804 193994878 377159950 900643791 977167582 49411365 73442487 112661808 633485565 565488561 624300723 452745217 485311442 251950723 901941381 692120062 917466322 377921039 584998081 783868657 974206442 262214646 674225725 516123629 944555127 121439078 750461923 469429266 971615096 111248574 897340571 466157700 782342183 520045501 604616944 600735488 744850165 522791572 645468041 858933958 905491571 454047367 539517963 821316214 837750119 578606288 877644983 983185346 987914261 914248689 989590987 200362062 223614872 967632391 984953897 497474766 549028425 148962699 718795275 85087589 768657352 120243007 742165237 778995345 856001695 487674391 520341502 346003673 454017364 469722055 554180086 813579374 835575428 220324231 481181375 274398672 385452922 551166354 597491464 69280013 597245040 614867771 843871433 416196594 604674323 459972448 780344020 132236499 434933285 217299714 632367332 680245155 794839067 280108385 983215105 108501307 309723305 71584965 489336010 299207947 951001402 528453893 578480912 333964468 972514598 1479580 455388533 374611091 833357052 929742424 957068284 285967086 565267194 644259988 772194301 969065538 984442727 801650528 962254438 340465833 560529510 791289836 799828448 618720704 691765199 793035158 876739634 175141900 419178942 229277888 316512283 760819641 877025154 518033906 583899903 790204419 983156216 576501648 601972600 711934008 796298594 519258891 782311685 292218368 600510762 489607809 624583265 662338107 832419690 503553410 709598220 806322173 988003007 277849587 841956254 928476974 936418698 67279094 737598849 256876215 896402539 620907702 795425304 103505777 934511188 812337795 909527631 467772690 663359224 806702671 980398228 59699201 377460329 368725836 701319387 883990047 886608857 855126274 905134900 841317169 947452431 698655781 850102558 868202616 973805229 957880346 961389083 848220157 962079814 102857965 562800996 527133098 536350091 512593958 897830230 90960140 723776798 21427425 87935526 493139070 758113661 281370970 896587646 978846067 992840671 631577438 704421261 194345110 923384087 294533634 828905287 283742722 636294030 914181829 934409326 418167900 688071092 470256535 985258476 101758344 267861947 883364282 957704211 957372447 998051868 110023395 737572666 83638013 494263730 64510602 589365429 922755240 990382206 672669391 913104657 957337035 999327069 656545563 828868252 590938545 925086118 135009078 302136828 449418846 472028767 103716519 127827589 521732530 933466132 482978286 726166007 549436305 984533824 588603217 655497609 886092684 939257536 667956753 910738024 649452895 776791588 196379245 744168980 89680878 641476110 987127218 993618345 925470958 956566093 257841373 703001610 763526311 885260256 4304378 448385176 938908937 944010535 158172552 788395277 585378361 967491532 260538999 376569258 644661195 740212918 859713143 919851796 805962925 907201189 452921007 509952917 778974336 861657602 570515773 731127151 34168975 313782272 184863317 971841559 929141038 933395810 202785376 488708993 535610571 897723288 788335974 793838910 278455330 761823555 917081649 952419149 754426925 977056523 407685660 693130191 469052099 934350136 825879005 907115968 56625525 405703346 143882265 176531570 277141383 312356316 973619824 982654628 300186478 819039337 983950388 986880449 30665119 148227310 103796193 889457211 837734960 937674343 446545750 787166141 225824613 507162932 627211814 868248278 732507449 931156367 360289285 961628323 89379429 257103491 755289890 846066255 635611705 741895115 729824070 854186791 659545522 680246273 142316341 407984524 573944211 796674034 719172130 831226855 944535689 976500317 446608788 588813750 995431834 997948977 723223377 918061120 14739609 436178850 564696246 956494432 729107195 921628669 426480470 890419792 518017647 766435206 492817424 573916540 646048117 682584333 405460382 737878409 28830822 43612487 356050692 413439367 753503626 770353480 252737384 740626407 223076725 595938640 786256496 972155885 192802288 517565943 252833118 930209336 184009067 383147399 928437050 990293842 410538840 965994232 82927103 846392792 428653099 929795066 938627893 982588499 194729100 563231158 785604761 931145398 803704880 856306099 142285296 512269380 263803615 395657268 409550560 879345938 769300765 796394997 289596597 805160889 170435953 980840220 805293868 998590350 951715987 996512079 701103826 823876359 109071824 482785850 473953979 920669772 458930818 614337668 89368572 275595859 145384813 244588722 553140716 581024402 306130922 543999130 290903972 749841849 653733003 998475760 618412976 853978953 218966036 666664461 539196574 581839631 459378913 800516566 326809350 552087419 271641129 316583722 952064837 952483552 862022460 930087138 976482933 987684553 984469503 987953274 868124202 937361305 260445887 733123216 716646703 867021133 510907752 691559215 976722428 978235034 193767936 656236434 353926246 481792735 567017352 839776462 671085611 993004920 369864869 824693221 421521442 876573816 8431355 649113884 377721368 748980450 949641369 966534531 990664091 991458112 716098154 936935878 175638523 708660605 354504956 882842525 210024377 367542536 394469006 922818157 842624977 892659145 821386847 972909649 146383772 269966667 786172879 842699625 583833948 661293747 670958370 680825497 799122345 878532418 81152529 495457618 444843159 794736218 271109382 759926691 706506023 793030263 969849365 998894549 204321027 945342291 511225265 541705044 472027669 864384877 851335387 933419988 890303562 944918321 307546823 455198734 517168905 820008120 400413310 610914564 206315117 552288919 715814772 882920945 644011327 888439283 338600191 403558829 240330253 337395949 917534973 993288667 989354844 989889239 916860206 958955931 772950775 825640784 935687744 992240374 402465087 763051183 938945116 980271200 526345816 752745452 85255562 106283588 712617911 895015905 124009062 763236904 166772243 568160583 392690905 513444386 961228473 981821343 686246796 993648161 264529578 783513727 130424070 695546545 1247692 781334502 3774698 662081044 89553298 835395412 654319194 910126473 825107154 890038927 892228933 973976725 995436621 998165204 97665702 734483784 225050757 352511318 170560030 357177015 814542037 850444126 312450202 969367480 714703414 810893863 336004467 699930619 449773087 614870701 26361398 734606398 845377027 898317329 274510337 550001937 334329829 355464590 731222856 983585564 571395192 801559867 23006098 59071303 470784698 933750580 98282751 529200066 922338577 963824220 664452042 774256581 913806794 976089970 679557089 831434221 500319485 904101855 426410516 705969497 98121628 618853241 38066793 763567633 520688216 747150766 660204744 722092762 112467233 171855997 762228171 859373058 459404682 928879604 798065447 978025531 199771304 680563405 292460340 631829536 339024928 716050713 535798068 571648381 548232041 934478039 225743015 535164090 374435814 669443066 611503063 880570024 801432401 884729733 914227347 996371617 646102373 975846887 506606591 589354627 566511252 778605448 341905272 722069416 471739183 556330632 68242274 625085047 562003603 663002917 547040800 805542726 883359902 995049040 169125699 731960725 327683911 780760481 106667398 391312473 711061602 737719512 934216304 967098952 575620034 587844422 158108125 800355881 906578779 916101065 227141426 463279097 376218632 792436737 822004688 881832977 205399237 830226100 951457426 992093622 967469553 995032409 837578000 868115226 793422445 809177866 593967257 756132722 975003076 998515728 352267010 590357427 235864549 539487718 647848812 769404661 967005640 995604622 229775087 934493954 803180221 975182534 970145472 974961387 234474942 610395193 272383403 365439279 384219976 674256851 538274716 659731987 446882894 970810396 852065623 872477097 149658825 860490288 151421946 262197318 226693395 723777248 392344152 438412762 98733879 352724092 40157168 635617621 9575071 966031442 121478551 354632080 668781265 987977879 250613589 785204667 201099101 606055789 447626378 607481425 763168936 840490055 993590779 994571163 671068308 991461378 438915776 577644293 899805368 954834316 676593833 753337277 658963518 696441204 649104013 757514378 866353750 902556194 588110838 718287688 210174996 602596275 384327474 885400600 720296296 965790255 407918847 740008373 644288283 995257568 582853022 913072038 661628453 928894437 354826534 878368537 249685964 779234325 899683696 930258021 953894720 998518988 740659962 937736636 59936986 254877296 227704901 737056990 608654429 756902795 169390916 235130531 682678900 779294776 469782579 851711439 19282851 627377018 61347948 967950935 868126377 992752664 914742504 990181483 975554275 982080989 891382873 933287961 716547367 809281339 276603733 486442517 167803779 482187268 328202413 346076761 135881155 343155867 250947003 679194488 330652387 776688197 47687352 87037798 505082661 803683610 939916419 961928477 225968608 853442831 215762219 883430402 970381088 971921668 438944450 959631024 432098793 835638629 108462936 336846987 206978977 521851074 549487756 739736209 540996394 585809264 318830471 695193084 315274230 550239327 780969376 885077291 546894650 645898559 739086429 981257061 966602887 980052972 284877117 734257676 691571824 923574815 84227026 505696252 243027136 898747798 499819211 722503738 420692297 578835644 978808302 988132921 664022580 846439764 533908370 954375220 297695736 369393811 43257864 174184344 943515815 969495948 331788068 583391840 213689005 402857305 761921748 989378572 503792999 554969138 76892371 907550616 939513363 977058895 860073418 881403044 272988655 813064503 309386650 982545437 941524378 988355981 50416292 851391709 876943819 895613753 160909312 738068154 622234761 835206113 31191513 846416405 795657981 859216623 327209240 608283765 272617942 371863801 390561917 547739972 871042502 901488809 943671270 960039982 658897395 739236141 226130727 551805299 761546771 982004228 82213715 468282667 465798826 891120993 387304451 999380033 334410577 344852963 713960397 824138751 481507597 900940920 5075925 358325122 194502132 889285396 137037974 566661060 901706204 943725127 273267867 582903558 285987872 855046056 205584308 846526228 682492713 912918367 27049864 872656402 934553934 943196859 24544012 514519332 318904526 396186571 139881749 822584120 868006262 923711349 412949597 778225209 934439571 971224333 8561935 384056716 201407274 814735274 227520061 797138897 216263823 230170252 389598272 462239094 432846438 494580432 402724270 921172475 221877519 694323215 779377244 958602425 578168821 807030702 734614582 754219541 518953462 688924622 67266898 504520490 764557360 950594277 758708924 891885105 879262657 920004411 790400723 870379470 315320622 592975770 4781420 694669199 460383885 945367620 403609803 805566736 514289164 861750039 604346151 722867843 600302662 960212210 985932612 994485764 91596534 113296908 706629235 889421856 405492057 873749508 272552503 727865316 907196827 958274734 102908120 488420274 84544833 989754091 509011534 734978370 324821841 481897993 845960297 941671835 623893235 836547641 840394379 967182416 382905352 386508187 981186185 991435654 842359314 975902844 352465041 475188025 883568106 893795411 686694016 692338270 6325014 575041392 691376694 869740400 748264537 963022155 102644947 607408368 143423868 343650077 803507514 926515199 954048652 995682739 836338430 840254788 437773400 835835824 448378808 631013144 97148534 493262692 375858007 987450571 681296453 775045114 730128240 889809192 377954031 660055117 28392893 625892127 407549554 801587514 838360838 886825480 862183422 893080038 208976544 483176828 698812157 959251513 466944285 746759363 696956618 900973931 747516146 795980453 467797519 875040964 486035757 981055183 71746185 931434918 522440422 980496895 812985851 936320768 796500541 866955874 505043605 527179482 997473273 997833805 952892748 958785560 887481649 975449311 176598373 965384724 966441277 977098666 48708915 459517638 200595405 911188420 274186356 810133300 247223434 603424412 463989504 954308997 531070783 954774108 878770724 951487844 673124081 839948217 590752020 658997042 816550759 834544442 363490280 423310588 384166666 934765538 818160862 944393321 645035423 930649020 181150581 934475981 502699323 938371789 56851455 797427679 665021711 889261585 703536097 841716810 358950966 367215906 272252655 849674447 227825131 391727725 774204253 935712444 121030294 393301908 692988135 869214010 998389311 998776647 551291377 602474162 949148645 970051112 78289153 932289470 905319046 908969705 708735211 714826540 709024824 754353441 915883848 967710153 858574525 961687124 932256045 985540609 745418893 748776479 95563628 704192301 943663224 997800335 951754656 970756816 241220490 643842008 165524488 989818464 813318709 921094533 34905089 154313280 74084410 919087379 232733280 802776428 155351020 911082765 940480201 998573646 245532729 371432943 883125971 939566026 618639630 857621115 388933405 843363956 260782004 632142974 718455779 948196296 148636253 470457668 630327703 689200833 441343814 733919839 713803089 870881864 851402392 948056441 433786799 696204086 566736734 915303706 69342278 932809659 1536245 165337735 262094188 573776382 868920368 944134739 605819605 854748841 601931793 667892066 60514376 938707186 716443614 794651396 143124177 944272983 633841247 671126884 387345407 436575276 151450277 683516993 148665497 528482376 735285273 956730424 363932360 923559231 602240705 723147783 11908280 378037307 712459678 755210949 25689064 381444816 988391576 998239311 562592692 844841401 234266558 647772126 700638674 811484768 928252632 976433176 191108354 898769144 611385425 624020568 519652341 773284926 757533132 966251905 255232704 676072348 662925917 752157739 383903827 957248323 619309726 781763498 582549647 840881314 408615910 853468728 532151549 830566090 860475776 929761220 112857097 472945119 260748346 645602430 810243587 902681960 463260290 820370236 444854353 774923493 270873560 704924469 837292630 880053269 554490341 603419137 581163270 888196867 63658142 80269997 226100100 689624563 824896103 883052253 654442543 728066148 666037074 675181133 121823680 254444553 126073361 679683745 626547490 836031129 935800460 962717614 712231797 851888003 84674823 472794291 957685914 974580602 471319593 607543585 83252680 534329630 900426156 906487918 719124784 961002012 988042715 998643703 425640681 901630044 979873701 995004866 820244224 990282510 906909715 968205481 347154412 817947815 398618220 861436559 616626084 825293427 393780197 405603273 93681044 799057754 878946665 966019972 415712718 513312117 264215549 425112953 114520598 900604372 679574997 925827688 52827106 678126815 519735408 593714850 700035806 930928885 692574975 763816483 696099701 948061314 603678436 780430487 367675903 693024486 561939434 670755329 586147886 779154866 499980360 925347979 727118967 750709561 313122694 667452010 902010974 914431365 464438712 548248532 747754814 842036520 92714665 837201560 723153668 823373785 585443027 850093326 820733376 990551967 7280163 380877239 706401377 970402221 95453641 610869103 824656887 864967499 505001823 904246519 610438385 896114949 558904973 953906246 890001387 983120153 31236947 920377945 285550814 628605190 674434181 832694855 296387826 823243578 169271470 632081858 701586808 825707502 221587084 731653039 152673897 165799457 932339803 937338424 556796701 685450678 74529588 254566666 676696276 874709676 351322780 561628146 795298883 868348436 950148492 981121543 822444262 956740586 705204178 731016239 567696129 697535385 66116745 274566267 537107374 796510421 243077234 498712317 926904305 944173253 357828237 639152617 76284517 645237400 153971424 171727886 760687377 899100450 392568020 574345635 150768826 738389656 216193619 798570060 243664650 688226921 224482359 573348199 168511093 591894988 110738972 647197517 378606166 538350396 190617038 867137151 32626364 564348681 894197673 913925132 28724093 590436461 207171922 638006853 995065060 996401820 306383159 725685808 715477331 861550206 79771026 820268412 708728963 884783222 501783571 805113196 90169050 552669273 372021894 663594683 262036477 810335918 726686362 765886566 941780849 981196594 601163805 807036572 81965003 871795100 483895492 640719642 916492840 953642122 44634636 946614866 100968762 859182565 806248785 992840661 853184262 982580851 217051654 806265152 444550130 563930537 949617878 966845062 982595483 994372621 149336355 476065535 109526556 417783016 571546484 937800451 947912712 957078331 841363156 917355118 502083478 513010124 331797932 744447938 403182792 559634699 305774193 783163267 400180763 509739598 968080348 987840435 97367971 763726669 36270251 221824926 454988720 471229615 358082159 608382636 681468433 966671102 459676986 818920620 784868949 985890343 548445816 703887779 431916337 850835381 780451366 932685250 842298151 978628595 652065061 985419282 468407179 845251601 289481150 861022448 29931785 296607782 906186736 908858274 929604008 938132415 80193822 724677604 521594524 964863378 253501787 354528435 302227384 332007767 334358980 743925980 20518409 647811434 100929383 770013493 638157446 644526302 128004945 326877698 257323418 669664800 378494980 381269810 375843540 412284674 742192503 954373946 402043603 624454171 64117438 210042751 920388958 924586841 164629825 404219404 454877298 811301098 748543580 868969861 357100824 797998233 375188202 969379837 754864740 967604217 219363254 736327933 207066623 437666141 146347941 649543756 683269148 687827315 556652510 931365667 939400593 943635503 306778881 772267553 389141123 659980778 873309741 975681313 163530967 656418730 707260970 810204388 156902608 446884201 958269942 997690645 743492680 909513119 188370806 865783390 838618091 857622687 872071086 924880135 539044045 544852582 679203043 735403492 584192120 724619358 260840738 695596256 753094644 845020450 682983847 838030705 388667249 769085834 398837939 913846512 204185384 565868236 49998428 327269511 165962552 964153052 987063192 991060701 592710362 922266015 303447819 868459203 706297496 918468552 316777373 998188457 104483120 403548685 368213963 885841064 71342685 464657350 933286424 941373189 957280842 991077111 919055659 926047544 98132785 285210279 105605610 187742865 724165278 838171676 285626827 935344828 369541032 440351558 613324721 718909090 583576725 854810326 885674974 939928399 982647282 983784525 526136041 616882942 344270523 438264548 297418645 345389028 594028622 755809207 71034149 287693230 617198976 681128968 4157994 286381398 468201405 736520257 337576997 693815278 392161916 529693864 410640550 817392284 391095507 636575108 935584459 977135441 21756745 452217762 7543212 153696678 169191465 714881595 921724592 953720386 15763118 147859706 137844861 358190613 649806263 800209166 694684954 799361299 344890739 655958310 313064466 547562127 180211186 434016099 331499919 476946873 827211948 995254463 853399472 931816157 866819425 921125840 14361242 554508648 506065772 583134825 235480311 344555177 133846476 239435065 515424327 601935461 356192889 654293539 567458843 845466909 964885608 976891552 700970110 875410281 691752862 950426089 539198569 681347447 472247198 791330889 61247082 122634198 428446840 818155042 774986650 817454991 941528018 986706221 598116092 608542944 380926369 794779890 13139156 956790708 342500691 686400943 820999973 900732443 258998894 417837125 667140779 753434135 613375837 841012863 7206657 496175876 269785574 784416777 710976802 779500136 740952130 875581001 432048227 561620611 583549564 812134144 267317030 417501688 329189508 507032912 685904851 965665128 450838737 876997534 223010935 746075935 754207710 801386079 654632738 774833235 456274759 524000778 708948851 810386890 674669418 911865996 468177428 561926326 216326999 319756981 233113259 311779338 869525792 996573956 325657382 643385823 896657698 930791860 639014561 744083074 860714146 948698269 520118541 688171725 342828077 628973112 597980339 975266833 793855719 883613112 715818897 855748724 954259406 984623928 292855932 397329509 316600412 694574396 158950727 815689753 77966625 330143421 590902074 816057044 339443949 701690629 945313022 962418346 25829026 443512768 564417393 972495406 968757648 994570539 359496883 623892717 365680833 422984856 612814270 925414191 156006470 924268755 243717209 491554384 712399148 777959655 333629017 733744120 499924318 694512635 876522411 972020601 49790897 677751532 89691947 594856324 728644962 949963417 972747139 993676700 377301105 732028895 297939841 456547547 848848072 952367219 557851774 859041275 911634861 945276009 868664906 985268514 207802971 479921927 41577826 178412779 234458495 454458215 875649495 995911222 390465678 981820135 458448823 852723596 945621189 948252826 489373122 512482056 700337963 968102081 407433655 411145328 617987301 805363148 222212318 952125509 206970177 347197629 311195513 517405743 932911202 953001365 464872731 782750537 196782867 695715175 51984584 448838484 793532780 838409667 374544595 535510740 675950226 685662526 573869614 924022314 522874337 989905982 722415704 874506566 579915842 903501286 363750414 817016711 741924266 908010701 31402318 295529627 29549592 618915386 895222500 908948828 721296630 784068918 704601410 718605463 954222851 969919545 687839725 807557432 165669016 545428464 356423359 443587155 576243477 793628180 603975150 696781316 3730907 974947144 78984307 645303504 883163010 971039236 269606346 275657075 333580470 563409014 233942385 359535092 310748071 394073606 996713099 998197109 117907941 496348074 700996664 724379794 887396719 976645582 673020646 809539053 116819603 376507607 260091536 499662089 893740046 951604247 28055802 850464536 117499120 531550282 455232836 772159801 951439132 970140476 990317424 998360233 185104061 269604001 553798158 752524830 227851755 260537142 474958846 815882753 545096393 637512627 205904758 448280470 701413496 953086915 613014287 653209478 916611924 973582082 666660294 685139346 101858090 232542909 537934474 884084928 718119384 975919623 104640122 357580775 356550785 684397811 106614788 135578994 310687085 392777480 440452467 475353923 832805264 872916687 722742866 812509576 250520294 690502725 615124294 904529209 908318881 926626560 168821349 829441588 826912662 900303689 172904953 507649086 678726568 931637264 973066349 995301941 741744165 791967735 865935165 936453324 614863435 907833610 584027808 626870323 101133026 547834078 456802576 788686512 321484605 424157940 906830424 992917062 841131679 885989537 740256460 859218520 786783590 813531481 249204095 895789802 736850482 834280648 222793371 730192053 470024098 669810699 79237435 858403841 131974173 453161144 591337433 736388795 772083657 851989343 510769541 897705761 375437046 386500593 491019074 532612184 493288077 611627708 557486057 814248789 85827247 735942686 232256282 414709921 561761270 856286544 851291759 953250131 938148494 999131003 84204614 214460213 433418851 770670598 76295716 554908758 830485335 994237094 262382668 665640566 466031402 985478073 283016609 439903076 325804195 905354402 12343755 634069260 609206511 667872665 759933254 840051830 118055779 982058485 265652861 518344942 16061211 738162209 47642374 843440899 330304169 593676423 594363197 802114793 807374957 900450863 845099148 889934249 402093191 673674924 587498693 742552771 124723247 728991931 356270687 767505055 673006120 947287600 468914599 575985534 718779565 779341811 867531859 939985831 409240085 870733171 612984350 779045085 221491203 740466463 379210464 582271104 330964143 874874261 172332940 642553654 141764951 543983870 55058319 951497708 242550067 499324103 463366727 893858785 118801211 592159672 853072290 928601389 155106060 645824087 631708288 786417148 367708402 720823530 803740705 969222790 501171940 695555302 587832600 750299408 212310510 908699811 902347289 957371346 699446503 832851356 759732597 848475946 930340724 952212276 951265613 977951391 680501895 776888286 286076168 430087897 578259089 963656227 420492585 423351259 861422080 978898296 360679812 973234518 476033507 512891675 250962411 418595562 416244670 784164593 980202211 981113599 456742733 882501040 611726426 940498942 153866650 899853281 239722598 688880893 87804955 568681605 60377117 770805173 283722275 998497601 851935776 980736116 400030276 929516169 465967610 715340808 942766528 962226831 666800584 681282770 674493436 864260250 943324446 982108169 548582202 899967504 177424448 301013364 149379901 274868267 397806022 604959148 384495751 743123036 354898569 970677096 264502599 712592509 535361213 714031760 132619414 944579874 655251514 672024680 553389768 615550366 216631626 599733614 305947061 362210928 513095760 964160248 121996051 807106160 652339284 943215119 192888590 853145724 420991588 723565705 484410672 830951201 232343164 780392463 375662265 562548344 930113143 970289743 117623377 273138000 274976482 959801540 595220772 842703088 147036573 551625885 778143705 962364507 695215590 902383334 102336808 108695027 533215730 989340066 534725533 906644251 844371293 891022343 23492816 42141100 756973566 995927921 676234180 971683790 577077067 691652082 239906932 993709713 64951675 291254624 559102811 952243664 444684726 804133161 138783396 964798750 586264558 677570275 912338167 916894350 844565521 879164779 755273401 889784812 733612679 804269595 707073930 903691688 444295157 649726921 375522758 692589101 549013253 578557804 196750778 656081223 803459175 926805083 534128361 647144018 46376732 338379190 569387221 858689477 523845046 758556981 599674234 938271289 825865173 852379383 381410806 607992887 53140901 651172432 101238184 340477031 144018282 805700725 545675501 892674821 13909796 522350532 521508432 926278317 444961202 580934240 264152292 523384652 41412062 537758832 946213361 990582150 805391876 838336978 990962077 997551053 254443440 284473606 243007804 905196885 466506276 640738785 901509069 905517515 571734624 961107863 695466981 697874256 683891977 976875413 240707163 564460081 19325201 474221672 543909960 636849637 646069083 776594692 170314668 225380323 396559209 518827350 730531742 868790730 615709051 833214238 497338576 655959730 620872699 863960791 773145707 879651670 106452478 522313432 407821114 651667221 174204333 706602794 668024121 783388559 962567259 971483310 126762484 788704756 484095699 510532597 232670299 379122897 103698342 917345227 688075035 876883250 180511480 691984624 914568341 917752754 781225830 934872711 912121772 986029815 160777916 339653207 287620776 322220251 92676054 547030403 471000735 656183698 737291498 812017565 370664659 943702661 73395644 985975461 207108580 314430532 591901639 828598848 130474152 427300401 419172175 581820663 643965932 679888792 907235722 919695563 412460990 808229616 478231421 756369246 502113179 793085858 832607313 896994286 522748604 693905708 844707987 846792705 343988344 963629683 557848817 563883606 433494707 996687239 503514193 827883463 756901644 802289242 848337737 874603465 9148921 890282077 679356873 979883530 559056454 816395711 647697019 830668559 895660657 938981519 370462364 867222809 800917676 956201974 617625856 751227465 330492696 715099766 269516241 941713836 261027004 390455649 444043488 579453270 399430717 570681994 551292031 652113714 535423419 867929097 765673436 840944844 695141720 866715890 618404442 916397900 48988133 340497562 743095829 912458534 674104880 942066079 744962950 916807953 915844741 933124588 756742409 801225653 238299004 833672342 508409883 551571522 488959059 858979002 524163326 575182746 586342202 782372210 346720976 895365879 386673523 861202011 314191886 742554508 567590388 880927939 949215326 953082606 539600118 948202918 126020108 478523653 55159029 192197892 673924111 792005984 484583176 520855233 883858507 934297296 182258725 557558059 263946783 603022768 212713075 555460922 11560163 524882787 935194744 982772617 217488077 736721639 929757444 947703389 669266041 847864790 991636724 996081508 448951999 562912919 701222652 859838389 125462737 276868723 774775213 885619159 72426230 355951832 493088752 884078457 994630653 996103004 435990563 676509484 119306276 163277569 900792746 935924023 319131677 470622767 92363011 931510984 699471880 768794914 674164588 844804134 373180543 704450742 464134465 864381078 947146261 986119663 35656559 514335341 195532445 428247728 774998795 865090225 332475334 810333852 774757394 923757801 873940821 971798787 777588852 869026220 206172274 410900363 428805011 992867596 297873044 640448519 381457594 849782387 113509749 584350792 394456839 567546840 517997038 678378320 110994359 518229491 388988682 574499019 311038361 945303685 581662330 879792250 189438600 482903713 413973968 534401282 673995270 771510707 364091394 956197708 712347461 847133351 431388108 873817878 341761851 993396916 46108640 226474606 911584492 935258097 531190615 638868190 945450084 946217955 379265309 834901336 688658627 753519252 439552515 879644110 484448642 533277446 363904943 475142044 754068930 770774750 135786258 450316154 546396777 937946489 270978391 571815180 811270645 872735009 263991076 698766057 317393888 994671819 320588178 740494499 81799994 686831466 152336505 984778010 435968456 964071656 185103125 822656238 995581252 996737546 805050035 870291413 257121934 891261781 675476285 702211107 462144072 822438574 508218802 728380648 132422520 282828449 718773901 833106203 804424815 947635418 836308340 879275039 355793804 786511182 232419840 933583577 400864140 816524358 91169219 376221630 237297974 725355220 833105630 847715012 568055889 926105358 411840566 686419220 891036180 987619317 339910559 541667281 53804332 192582479 519887086 641302220 849975897 860180000 425564817 757937570 650892252 657538876 103156972 104892308 692631150 844216427 313645299 804147868 336573702 429144113 227584941 260680880 688482654 965538623 434517852 790338978 200587965 456046245 35830800 58451773 8237589 785171214 255911343 969953104 22168258 107780975 792121580 892512093 723194589 842763546 199980515 721414098 384835444 773408137 942306547 981581049 30813926 826339924 722725698 979067809 776727982 908817754 3058362 578733948 906785038 977775299 170654038 846210030 185943920 666973871 959809913 996909480 922782631 966707911 658353443 907071965 112483342 703936617 403109330 727468328 66561212 530064973 855792689 900988278 192381041 921359928 454688540 894754066 494520723 875258949 361808109 733317448 450752231 745175887 661854601 873422728 393007108 918709871 100470901 715690387 101658769 140183615 360956347 439022134 853616719 913245572 349306049 680043805 108082739 771661014 30096585 410050469 76806964 934344979 871359990 873325632 859985659 967032109 218440653 796279581 737076417 918879881 195535732 714936880 375060112 723806310 796824850 834315721 224736663 756897120 251905985 670078715 181800895 741963423 174555645 599319262 964119992 972602988 291608091 373333077 663033324 766899413 555756681 824693184 458860179 732109181 380569004 526536562 726051103 954055547 735713475 994773169 724412527 839508220 3578734 432172499 340182803 695659747 500186465 619494176 159573682 949180563 345775893 752160534 203647248 240125780 122056818 452738006 33928453 862046998 221347214 461643504 652769925 966616499 347807606 858276882 906462469 931588621 470911231 888965232 830837356 924062623 775921076 909885826 904772641 942709710 459809139 745227633 697259685 773509362 838100648 924417797 382831129 732330637 329378171 459729877 48772510 554594342 957421835 963030624 448713634 629797964 914628041 946266538 137481711 499887810 497347313 890339012 204828078 557176650 662274121 825601832 200994952 266173505 892080330 962507525 580817355 928515625 410637944 803281109 19156915 832078598 850319936 864035495 300230958 955149062 626724091 802735438 352725034 989050094 22722511 271165537 257326953 876943684 841601284 843540192 298132748 689737639 281759466 759863950 642405065 828256104 393758017 788743871 132039547 931502726 263382612 627239557 423549469 475670911 172374022 270635581 708013873 711427820 880829927 960718390 750765254 980106846 388937966 987138342 676049193 948557916 427250770 838407802 504142184 908093328 572379504 862270686 418272538 822811692 12947336 222207977 943532485 952718323 95492286 623594480 326514548 816517416 486182013 939913931 216367522 928525289 489301323 906186909 94606985 317062328 6631394 686157972 912694360 943755945 368512381 609922269 427649047 763010767 420219996 951804784 418189234 984153573 783958102 906966045 518469441 562295497 804690683 927698956 674898054 972559194 490600343 656326419 170752928 305673365 12595236 130402750 871393402 946073275 542847693 948444737 871193605 879594051 815558084 941012357 786152970 975757239 182334090 740325044 627282972 665131663 184622952 931642149 490591645 955138661 740767176 972665556 718379697 880220134 965076715 986928151 663955250 963742484 284918920 894447839 746099966 832364263 30939898 447740960 809114019 942693000 547658575 603752521 233612215 387082582 117910252 359277034 808251946 885180151 998399136 999139036 583162517 638295835 301161246 702456690 45883255 318406231 239019576 306795287 797968872 947810949 16601007 168835945 240355479 323293277 789159392 888764666 906168853 910475084 436734018 914237136 97561687 153482893 48472528 284923210 953528573 979633225 516122276 852656888 211647096 215586107 659152679 856246211 822541312 932746104 780934159 868838045 980665381 994366424 150822482 545127889 351379528 848239178 585910668 720145919 312352072 484337575 865644732 870049373 651858739 845096213 923716149 966801300 871320999 978670396 233734110 983845582 94229477 854292646 18546496 72079276 128971154 241128506 773055704 819396755 238806908 325166829 430815166 515041455 682008535 894557033 150460670 696149195 865657909 947525392 707836291 787878575 870768721 947045545 28480065 264856505 180903514 773208876 1863197 15429479 879871756 893995316 274042919 319123252 427238746 439842371 308551215 902461141 893631538 995360776 755001998 819670604 663961809 995871318 716015621 915094568 53232622 618230507 844691986 905357487 943484762 988996457 863599618 924998707 250226118 300826414 171290441 647277970 282607431 571246053 487713074 933603923 516933679 837396090 127110738 656466871 842677672 875990775 722800621 880075162 852758884 860892013 884703031 976546701 676643784 977158192 969890680 986958129 370513327 405816525 488091577 939506118 970973790 986002966 162543720 829646494 691591017 703060578 255066790 751988970 602366232 865360370 368599595 671580940 62801340 241603633 321361747 452736335 755732184 800738548 725004222 829611994 420909105 803518005 26282247 782192661 732822257 799777559 521675112 850089063 44069895 54561820 494875848 545166314 959120590 992702342 306318450 872557738 764415581 894271567 418244429 613140640 360425246 609324785 975454299 991384963 561967896 893628068 471693381 844586993 187413998 817184036 471071168 728783347 505711995 764838032 944555215 977797574 450615296 762576143 208959650 962322783 597304644 883208311 243454791 348022405 736602373 882210606 578408654 898030813 960009070 992506969 974290529 991549133 974630458 978770811 178926155 207739681 788579163 877401919 183849643 617086430 351605972 862498771 650697329 811556360 264252618 795122151 645532389 907197149 366020405 549022365 131812000 585905053 687227987 948020509 192537558 426402972 206975608 707656137 120942900 395495462 308787299 919314769 970884233 972620150 28402218 540519122 709328621 773558306 218627845 813019092 173024038 558058307 586746234 686046117 707402025 740562718 65953380 272555955 698509764 852633334 903434346 904166056 141998684 482378732 911344549 986464615 694632581 774378566 124597984 587499979 52976815 151973177 87567610 916549807 832624437 848176224 382254062 387083429 904826396 932483055 662380953 723404907 322120626 564406560 519653112 964781543 132512984 570161230 224432913 811868740 334505987 568730969 311307271 730920345 843581838 938746131 940568339 968649572 230698994 556823599 597630229 889787514 926182568 952173305 982357540 986223800 676693951 897325395 121348907 963306063 918977492 996503328 650335267 925960658 351637841 869027268 789586699 943725681 697869793 772949399 479300200 496203180 406792445 843217546 979141804 989722068 38900368 326812848 34702124 840057407 329196437 669269163 140804307 739367862 501155133 742694903 628237843 894004492 252631291 763747159 739900693 999101188 698394249 731935613 725948017 757501504 18823116 545943202 349152183 859948485 926899657 966883978 743817956 772473942 983235056 996712510 114877683 798137245 36563014 792293377 87065598 959512885 159820908 311120110 344041181 384756312 17287165 781301176 422623532 560978740 324285052 625312175 367583140 704662927 538562200 559995335 453191251 518989815 108512795 395904496 795735984 860125825 390386795 912159143 982929266 989554424 476072739 761967505 335306404 698856872 512583458 931730235 980783226 994774232 527259683 793529305 484788946 946348782 150496685 646554023 216408788 897697931 938386265 947574660 527685304 993432831 60534906 85664063 296949431 436469858 194376221 241955342 383404479 623805058 40857543 641281040 206970070 536824380 170580622 698783262 768881402 775754544 604031132 971844570 138025686 682248064 784386246 847705194 463198738 598040513 512693112 602626499 653728693 747029048 299217012 729937745 958024312 987945724 803652144 857484183 413418985 765813842 513866788 604358384 932822565 945599771 116352271 680579002 923286096 975682522 834497654 950360131 425859714 779715793 964401240 983781686 793426679 984635519 998165888 998226509 485643579 709766494 693732562 771957851 510880312 968308343 193442353 453017524 574595567 652835374 715380808 968745868 993264011 998096770 298949617 533976382 413047792 789498760 108409242 583493771 265036424 761348885 488214070 494944715 240179088 342609245 771185056 983892112 185217910 199433944 503016493 601911901 811585875 829261829 666552365 740112673 193774921 328201684 215502545 760220757 319889901 549908075 856593576 987567487 88390569 617432016 350885853 860353188 572721015 698352571 361588714 975581568 561013143 819080338 876201020 883253584 853050079 893817372 723437368 742565625 227645642 889670300 388113100 925994106 995275256 996398346 238692315 611104867 254820693 559009289 291877029 417000548 649542659 822701086 531674317 596887716 61253275 131156479 495934751 658402722 502627754 675069211 856531060 976950478 966507059 983500570 536607287 618884016 773053359 876956059 262984253 989826876 566813797 925939002 998047953 998159932 562870649 915430214 553731934 722625352 590637574 622747527 881051359 961435710 461679582 986109848 778993987 829156247 682176268 961421888 309693371 960255603 319705182 934907195 704110653 983178801 484729184 976636118 817902695 830199966 926693796 938867239 282695312 480208047 537132074 987713500 668573974 796380328 412742356 495336430 483454584 756899546 268061072 996248166 55503966 466396542 533517877 733186399 48860055 418187081 470855063 814863060 746267117 975283576 945053725 967585995 249294796 912279664 30664626 644463849 479122683 633181656 322934784 546176755 919583131 994643125 188538792 604452931 330804900 521261325 621225355 720287926 111354122 725382217 907855559 919614471 420479660 563822636 817532999 983128364 431367934 987218631 527421704 954862394 327389761 335365640 742025807 929898919 536699680 943832368 8535557 512624954 454491706 587899449 727983137 875951962 376441015 746317465 308671262 879906395 381540648 863527297 905399990 994096310 81328090 904559582 424514313 884259957 479370678 543350861 601165711 844732129 165294386 466179460 681857027 810835674 498680886 873584550 743959387 834643969 164385831 256961458 320288469 667965243 873160568 878646970 951769140 966453220 651347332 806576528 962841328 995737863 604873423 666691596 538292337 563934252 333220154 840020994 901588713 974662662 83432808 386701276 784123893 900458548 897848121 935028948 486025135 850321773 319680900 904960812 791735779 917209489 528156666 642939300 658735156 870343028 308821391 415895195 948376662 970294540 343987665 561000809 659282455 893540596 701732858 754900405 19262666 602413316 153550792 544072442 775318960 860689445 716000086 739560592 739272192 879064762 625917603 940588627 298568752 436698355 772396152 871179582 214071101 394464352 374813916 707765819 409651566 795349463 712033855 954052473 715393834 960268837 30618349 962215715 916995200 940921800 405520202 432525113 946905203 982986564 177352138 839194349 922425706 975247379 363169561 883010295 563652998 779827509 32592165 109748041 887297355 901864228 242290959 891334895 45670143 490675826 744107283 753837823 29864139 810458654 701749997 910274349 971247733 976090900 952435139 987879043 326760734 543064557 675242456 680803793 157473620 445867978 597475209 613934058 487143066 496768592 312048650 357787737 234513139 255468571 56709300 706580461 229372380 963185679 740753868 805973907 693126310 983522272 420790309 670648812 912111419 972215429 309470711 331395477 522702179 636235678 385782142 417055877 449455473 589356145 341251116 653774745 376694060 915357213 709433375 759824675 914440049 943199400 546436502 851194152 496797961 627192054 470935116 531723221 724258886 781327349 882487791 997090673 153944860 482221270 19519421 239883848 622971534 967159470 35640692 67980282 270494190 282375320 378905699 391162139 226841157 951395033 130837280 429532985 849628953 954918373 367365430 970342551 350253994 758772224 778749438 973077070 255878690 937465969 964857116 995164992 780684735 806941339 407246352 773578945 338269706 402802558 339916833 451638704 332637746 414477217 8422735 235137933 810917429 997410977 673715334 886088573 642590361 918797663 506548642 777095071 980326256 983442199 586167175 920840635 330989362 683168015 551388223 837280318 482636290 940028560 171002458 975116653 434301651 838407506 228470379 996358824 805104325 949479434 844006358 947362926 698001160 824934420 803588542 864668571 437119975 679749607 45234528 980243555 319215782 753296778 86446968 621629450 850490925 941674259 466716760 905195782 152335325 465975666 465108100 779464408 438161957 528550147 808469164 858675211 174081552 719649387 429292358 578295617 643704682 812608496 133885001 786260710 788801905 842667800 888287545 984104364 533898256 614440544 437953392 568236160 646957562 789120956 833290930 911469880 954117785 972478645 117791459 505829406 777524141 994518367 209962106 647861421 227491624 611558339 504140902 723991437 675279034 782725345 811691965 967874798 457711075 598601312 84742542 370662303 480986049 569491836 126952806 383429566 75460997 680090910 759738389 986518358 599231658 620302215 922816780 993025922 816326505 885132012 917812035 954966246 27564081 441326444 337123922 461995574 977888974 988417109 667095216 710956308 515260315 643753078 711265887 855143775 163126322 644664275 375656967 868241242 329855986 799369869 302978490 856507457 893303958 976227609 628861301 718105028 832654320 920884563 636342413 752977224 766512389 946104677 843465592 956547443 409009670 976869075 173704057 985827997 912191860 988914443 508804605 731154673 57148188 306257110 221147722 931902394 345448304 547501993 745694660 968438962 806531914 965068047 977947846 978181386 886828829 949829247 7453078 53111893 539194821 900098833 277330019 462432239 391138233 426103885 436365124 471725521 736812777 933386569 403463673 529788183 275561455 696422259 150108546 440173856 995774453 996303825 649983625 894144194 683753708 825308579 869139620 973754185 566839384 889634742 541520468 608556268 23942381 223758592 181720109 342169883 579186887 936433828 771694156 853155780 496894063 816846018 407205078 490262271 994388952 994599589 578116843 996446700 403553278 754494227 691702434 703040145 584501606 746108384 825970671 982149258 925546822 958781771 35535057 757511893 164538689 774439005 508486940 648735409 291552700 395428497 972213410 991134171 633687112 642253666 279069437 851671839 734492109 955410768 738341116 901199347 655531193 980479026 367600751 587682472 784106809 913008025 946411863 970627936 917234787 972076469 872984078 878821789 513095826 716337477 952522418 979715544 222728512 286505571 581862096 753490496 997383985 999126179 331031240 910360428 348590899 404756869 66368995 366383247 631335628 832438267 975482778 993167705 441880592 995908184 956987686 968911615 823134156 854753975 860142418 901896869 973859703 995874006 714667090 857315634 552215528 656371833 204659467 527375936 765104400 831906263 36452071 103137609 9210478 382281309 241797245 995500106 920709600 937591238 141433269 638176597 769753254 984612091 831137274 880655506 309747309 510002415 457819988 975795693 525626796 583877128 202240490 663309734 406982712 723882156 283022034 447512478 878151030 899553923 682865542 804635580 892382690 972866669 839902959 841967131 227086529 770100257 312987547 468863494 242005707 309239420 382674646 519974334 364152568 437712224 89426226 495516823 560412405 699463464 757346502 870513298 273686933 660835001 585353640 596550612 677527681 895825521 828689918 883495812 350742380 367208681 899435080 941921881 879706403 952667705 782956725 952611412 380493538 738003023 663874164 783472078 268717583 392409567 218910572 541426267 279270318 388723278 835018016 948510249 5951821 717215875 168582498 812377838 630859129 976017596 615001517 947786619 577274192 847778040 254571144 399622226 831985506 923488238 529430357 726501950 58211928 171322067 132357621 353498006 645962085 695999349 23239247 312371568 147400099 474292816 533855251 659978521 592789062 824720406 936526016 937412902 662444024 678603202 349670863 459280228 544365928 609965101 726075922 957468775 878119781 938476761 503806797 760626458 277030069 703363523 960364235 992467821 970605593 985877195 302851049 606561688 857773888 952807122 47526941 238387449 241883011 572186111 160801634 258535215 103422232 465872012 782030392 986220001 680200168 896699163 7388316 736089240 686775906 833271588 773489343 879726905 575515495 712540862 44249587 257088747 774638808 939353505 429414128 491815637 675692451 866117403 982024498 998188177 792406274 797330844 534790398 941229528 97702217 502193821 45140757 287241947 94816058 173022813 139964976 237676782 537567006 836885281 687998765 989325974 28933878 197554307 786716769 805930642 650599400 778699612 557539476 830331534 210111776 913948268 438558894 822131756 755753416 793150410 885117837 992583795 428021444 646534214 777420273 838449845 824216320 959351463 642105495 928361447 176590061 579690609 624613458 943563370 589317961 854781844 320778245 491763446 597951086 870696484 491854 439194737 583972346 749999979 708499858 924585032 457210900 615384434 131867016 241322212 161156019 702439960 992776447 996244630 170475478 954024350 185930808 320766195 546218572 982825122 744969900 820309192 266817098 460562004 581821282 628207187 231400958 872501732 21057595 135701020 690494438 858125735 94435260 624800687 181844072 217665854 106907262 776219244 330791131 598389795 22738070 114577565 952477641 991541577 179480126 745047566 100724473 800129518 401260451 704234362 938273414 988464942 327147135 653399221 766947019 961541948 330387264 731773392 871900945 943275904 416310325 866765496 456520723 849534171 341234210 660283108 69974257 411709127 999115687 999198401 355574817 931767168 137077526 658060976 803969422 881573044 62269598 153263769 603500180 893384377 565827230 932711110 27088990 287723332 609270609 817992862 649921418 922915585 47469853 980995591 595871414 879281250 932512095 990907385 956186500 985595416 758093880 885598589 623174996 924634197 233003714 491799421 522262711 703494510 617895562 998493471 303415896 607452575 802992632 920453660 233603819 727354561 358187083 955663649 778005149 854814581 972734886 986537411 207047609 595953637 764692339 854350227 421779736 757757866 586871897 777707390 21179798 566064373 895748156 975639620 539663109 910565288 160072555 973417157 792351658 948158877 522213497 839218700 962809072 962923088 858679798 969147415 651985177 981547559 599228689 727001044 339513226 971918519 948673018 964742742 776188596 929460224 809143396 853544447 980306764 986327454 57034420 377869815 571534843 958332201 207378834 722682022 196136508 767214762 255490416 275296201 539422032 942792535 922767418 953409684 443958827 928000285 494771083 930904539 345003016 440814539 668459774 891432218 541871006 838138692 833945435 950372913 162792463 205388345 159404854 410825150 493665230 588794454 949520134 976959728 858722153 888707711 884588603 945784110 225099590 387274122 654125276 769313222 476842316 649508260 963766066 976400342 586898397 708814698 193017208 865293572 107515858 702825891 269649158 432461628 361987478 698790780 236362019 489789912 875122809 997379235 867504041 951053895 158359553 718088861 558569403 703645043 371818176 771746015 406248339 858344306 209962274 425727003 426638179 573166989 116749572 980533623 386912262 857373618 188591289 498607263 476529725 507541280 286894697 812649477 794185348 835227025 825609057 959874087 911294928 987822831 155682067 546115550 171993503 292740536 341464083 896061628 932474388 989535403 962827978 979884293 277091332 284969516 123854399 248963913 948657059 957767091 419742216 612148639 392518635 659070446 804437213 923453626 965707451 972441939 648030371 844856204 206046508 269579432 129875037 207537734 522380596 592745184 490607996 930699372 539784021 833953271 710319908 829505355 243028222 818474775 701260704 705995858 732677101 998941533 172532868 688657623 151449751 994174532 440427635 856444610 537617175 971527451 19825791 723459529 468727183 597287262 473230737 550827873 841384760 880786594 408936003 656138088 764697178 819993486 570337521 806354101 310184517 687631639 982119815 989950921 984311135 999167565 379870144 798999899 280912287 824416914 972195707 985916357 68068006 879685179 839727471 972358741 725563849 968179466 739463167 740280720 152267526 878733638 362456592 723941028 876345134 997349752 966537001 991792796 634894756 700172804 234512891 456704344 832175669 841295858 812406584 997133011 960331063 982509009 671334023 877248844 963130265 977588811 528983046 662552436 822572336 822808676 97527857 533424273 378366369 581291489 166421654 551614371 448555009 862812286 204545768 993449722 129034061 935011512 816915085 889348755 808430495 911122607 606847611 808873592 128188372 178270740 74452786 649951917 253918639 382257666 898953755 908324043 790373596 937542388 444163008 978767358 437480765 909589150 966227227 987706045 432307337 663471288 4163590 845538627 838107325 971788709 245553916 550984335 821675179 883132502 946240190 949706502 690853966 764417758 821594778 975204466 151076960 235401406 81656965 215398563 758364299 966489749 261878562 499490751 964747225 979001300 603969507 847148907 286851404 460668367 503480512 660454976 130656407 134338112 922647399 950778759 103158118 476451425 944535654 990553052 526355749 541980424 294171465 462635647 337685409 430224715 198347672 770159575 709637369 828550608 422946348 508683623 717785873 967815113 280339150 753378021 780384167 911237734 314420295 434896637 521634338 770560085 589765711 762450139 315256105 674413217 906900953 956689695 357621339 706049863 562330971 783657396 358326659 755899568 190444253 522571921 68340220 743798366 352781716 959524042 329741387 818277973 937013873 972009737 352353637 742427639 169601743 971395982 18168172 325447790 256181422 685368056 651151210 770405331 628401370 878593946 127032147 768994990 896043508 899124223 771475517 984172140 725502173 858759526 860643133 996388698 36574487 894080183 821104966 953696583 567111629 903284409 323277636 671944629 604187366 948109694 311461373 532649206 208806458 800595980 171749781 605715775 957756906 972631687 79690907 516717772 207486138 985570306 545345970 685084949 246192771 319489263 967551342 971396691 338758777 442456757 444677251 836155595 196551720 331697159 603696092 998829285 256146047 914118851 811857371 987345318 16523406 190512651 49811594 131775374 77753568 468397258 123410443 338565995 834371905 964304089 123505544 869394495 749335347 825486511 740425081 943184357 188254496 862610902 313178740 739119447 815150355 951239907 946001558 995616501 81173613 419260183 404237012 840721974 672109095 972769931 760132323 804210130 433380966 638098500 946248533 957741443 922390318 976697199 209896053 900095969 950507125 983610249 909061123 947907589 744218010 895001045 40155226 947770154 387787178 878447825 730756195 877941258 688650245 901317565 423798842 803258996 467317297 984425985 459435582 461225850 101158683 766380757 34305152 623308153 336003559 979728701 406411412 642882857 537118294 560140395 632643514 882305687 527226856 890801524 582549217 869519679 199184322 199338593 626208562 649025726 281906241 489342827 639433972 883606122 549747141 952499583 868039274 973263769 485283187 650631187 562531711 962486528 947114823 994787968 630511724 926513871 244192439 857762548 173517395 495032365 857377324 991993509 128271669 592864167 982767397 987208967 383284577 649204100 670424556 792427651 951027261 982766692 70620836 666820374 176636863 705392933 77754342 233117528 769894351 953116054 197271232 418600824 117500283 391614215 557403653 889370755 336984698 361188716 531506015 746554880 155091572 278395896 483385055 497956520 36672758 125445259 579106186 921001071 360201348 772455677 432356718 836380450 685130920 891516716 979018656 984167209 851250135 994621524 288166215 489223406 274046057 583557553 25500577 830277227 249486002 314952195 966373321 994293492 175523184 756486037 888005674 940178323 519500493 968054576 347799045 990626978 854240203 917696790 4678497 5397109 283187700 324523599 122234994 843043097 551671461 768752596 364459793 384882939 115391175 623844881 492886305 998170566 944871683 962188678 808502336 875298615 805291669 990409427 665097682 970533176 972054872 979144784 716861155 822727127 914570342 919369447 271524065 300602720 753228171 836638095 737258468 940792253 100914343 786409217 73087693 958014072 576312917 729489132 424518243 515448228 155515494 686018923 751350445 936224720 363031924 549341657 507245887 771426496 608744808 799119952 1022569 497553900 201910788 917579227 203648474 559429816 962536036 977488505 587778087 686297725 432569831 823961730 790517947 831057554 488867086 512656108 944080775 987566270 374924671 607044568 284375070 836782206 573610550 707209861 660144038 953499343 961223485 978869063 885857420 972778011 75749745 212499299 687666852 799356504 40429465 937819668 726198688 860356072 601418041 831601248 883314126 944136408 517844064 630170415 416654712 901715178 227605042 399847593 863225344 903269827 873288998 996614334 70806858 999151176 703748501 870852926 726834337 784717122 889336447 922729932 155232412 269776368 655865293 843417601 384665606 899383556 473611456 593391105 814316083 996081034 934085093 948565825 788322367 825878953 665997110 872743485 370653947 448484437 115742497 712708543 334456504 374213183 160140053 371721553 617664708 664909367 845596909 901727097 35392282 846766918 161755696 507451483 513653808 614857138 881286434 975796606 975395595 996785186 475220292 504031292 707426496 733088200 996891681 997384200 743620701 844653278 732281962 797567856 535013510 633755954 968542925 983321519 55679265 420306067 519946949 990889118 350293175 769399682 603065076 612940328 749579104 882516368 546500619 818663733 74319367 353210972 904221616 937133919 240815448 385571398 683254011 969163123 611870552 696428966 555899756 957958266 799666153 814414509 47204583 327626101 767684282 819102326 656221961 661008120 47926848 243967162 295549559 894258129 877422518 988475016 408691188 866052939 754483813 995285582 334047595 585389622 886693509 886984955 623202341 642069590 37071623 419409972 839203307 868252805 70737549 197189775 690586390 865004176 286760046 470011833 708855299 940957351 995894514 997460780 103993726 359661913 569653196 621652321 68180371 95084188 344762403 555649797 556545499 859664657 640107906 704408897 694568726 813549320 503024471 786565589 858440650 956610709 458655267 971561424 592790463 942234873 816340542 840947553 53719462 112433451 396636662 556459924 331341594 707502686 644906873 881243418 783044425 931453410 950618751 976623100 437397224 526694708 767347192 903966977 128037759 896012583 125336408 475352650 500536493 540950896 7213834 482702904 466956470 597526290 196423203 753974096 823287698 891803254 592805799 617658052 473100916 839415134 33185361 447651042 346359296 764344737 533373975 877236984 944430510 982386737 995051836 995550464 483527514 996065121 557793873 671662005 259961530 943005618 782782096 879959706 152590252 390571540 782403798 856767328 614024474 969212918 191018298 862524768 335172452 508430057 49427353 130206030 612550191 691763455 517612913 568029672 746906483 852289028 295723437 899506115 804220788 814937784 389792059 784002982 791572878 937908776 221980883 387900196 327849442 883194073 928513122 966858244 402624255 428238034 68424473 923214950 313948916 999135940 931702804 940137988 446270235 503352131 749896672 937998417 396179172 709603043 938927794 984237694 20250579 791090908 245891353 621531712 954881248 969087248 870592955 999176852 778094072 798272471 239159069 536755167 844935044 978431308 758030395 924588334 214604541 872090270 479785196 890472655 271906833 988677841 963868460 993210622 320590257 911285605 983034776 998309793 782274931 787068061 578444997 884713534 715442345 867706500 500355409 733401579 492644892 594609160 91842095 202587610 512198288 756292432 747384589 779395720 591337619 860119720 387632928 657338201 395616300 785762842 276504519 455948266 574848486 793367079 757276381 902647237 20211863 906588553 333709411 796970260 162866048 666931089 978054319 983125029 85841297 848869792 630233269 649790301 189998128 222109042 347969729 773955426 417294348 697522419 455793777 498699157 297123731 956764238 219806646 415511732 810859224 836214268 762069923 939666961 133380390 313275283 950761500 959348275 729156908 820496778 94901583 469779404 766855103 976893820 947557873 995383124 18746399 737051687 88168274 197285587 960569109 982588339 980047593 999159019 641420784 848381887 648303008 720149470 118262515 640301302 942008282 968614185 169896961 665656523 554695358 918976402 826035778 870829068 922160555 945248552 70729339 990953564 996516386 997443105 428196076 818009959 906966508 925277274 965731409 999069580 477419006 579042705 441230417 545438538 327146779 574004361 553901718 619916434 794095387 867960271 765469902 939238546 312958942 368450557 830635779 964899108 767960734 810849878 726651360 899219364 22753281 959521591 435643965 828003844 414204498 808145620 471858648 917351299 400427585 617460210 890055802 948839371 840378674 982043392 639959304 755313318 89051844 949026999 223945357 929870022 311948701 520642481 886421821 900723295 226875999 670753134 492800147 964680889 259381683 343305533 784723731 809154747 69564696 710989648 197374454 510691269 691191386 841907428 355057567 426300876 222439194 986918987 367123787 410006410 537235963 883562529 842573575 922904581 718277161 922984823 276486714 590130066 935243478 962967780 908199297 953895796 478880723 484913119 534224056 819694253 649499696 931229404 878273054 946242391 530613838 616913069 759273773 857310216 967628232 983404850 232454608 485432161 67044956 181552813 959572692 994249162 221677717 993263818 973274315 981832026 208882996 479676705 984489024 991468962 355208419 505057621 522810761 961108382 727829309 730522893 56730273 836232809 883364163 922061136 309240138 912590853 789195763 861341926 943707419 983229446 232692719 985007345 810220557 972340403 103842755 746058235 82816588 997426310 199867482 854335648 580878497 662471975 522445582 829217762 667202802 878346611 281947354 365444298 66658945 897781370 42883964 44356258 518481891 756733419 85012329 663646192 392223538 570038178 414260501 717389171 935743013 987390881 273949883 944167138 505607705 895182515 399440896 506631805 233569669 806093918 75815254 411623577 264156564 401800430 287189880 358064321 558165967 883627917 847430926 987547134 684913393 727015274 819335841 880009723 601555341 967905051 654292451 897730728 407131826 659616682 136927518 610955748 372358325 624715587 231320526 284391213 485893978 542566855 474085570 802607275 861913812 958773641 799486021 999168474 723558382 920728324 727329692 995372987 736402204 877841624 135043295 265538042 187845308 280202947 535840999 756222627 502847269 721585943 892092280 914741544 247971655 995127265 479614290 704028349 388626784 874864463 321941457 694969916 646398771 858523682 539534413 571678560 348744057 406132029 439010934 497359725 871683807 939205641 943336335 972480293 681123182 783219384 125182746 363065645 828234906 854291089 68250041 564985969 199104110 251906350 914348106 958224739 470684861 664695187 262751919 266962882 52507141 124852397 28035117 982435485 569366510 833817083 908729841 978355177 113092127 160947542 694016399 874460916 875182744 885566579 278886307 336168385 37328593 229872413 139516452 470807331 467472738 552798970 325713239 379557670 224715010 874977892 761987133 913312792 602533563 717022387 270609589 379918997 467177107 543635935 311855288 503281327 790898397 844736048 165394788 730966070 848957069 916032067 302970683 391866817 79883864 229233248 761512673 810453103 905992440 984876229 80042916 387361890 82278153 387528370 854141012 955557646 406783312 469197430 527057022 789527484 615519905 652531007 680912701 760981373 356541677 665740417 169048659 544339992 165728292 898120500 22372363 638613062 60572941 783437884 996840166 998674179 324940585 490460022 935595816 935727621 498003627 800286344 733782250 955454242 864706598 897122296 154796132 470858618 689629481 837119232 718392018 928033730 527914906 737677043 749971521 793900715 214907117 784980601 489539219 971308799 432411395 902957466 590182008 636676302 948774524 967495803 705192341 903906649 419760481 839678241 141125683 710960526 190855938 885725863 882107049 886011637 649410942 681331949 655631471 767746199 689988926 869849905 495391660 920579387 909026285 963713139 144420051 935448749 658637718 857198789 493101880 718476699 578281342 783345648 786399909 989811684 795762867 972427223 913385687 917548332 622365099 925498883 288345886 833578812 862134294 947978469 901276092 991251252 650294042 823984355 10901988 110391675 652849892 880977005 863353649 901923701 980138628 990441279 690154946 771281273 146258079 201037630 877230410 937708460 829047853 987036131 702705856 866749683 413455780 522046713 242297893 368458106 183708236 769032552 406104401 503216895 961040929 968982377 569860982 729980242 537529762 827185119 370454897 880380384 377670226 905417666 988657861 993316637 744440673 953431593 709722164 744965380 615247119 675228480 876765534 966046007 667605735 795865166 708314205 977749968 559111725 702577275 404708590 993525819 522949436 932839486 390351571 540984615 353346299 389745400 720247768 931739938 708505394 842893301 707888148 730578056 882408689 992432161 419041541 663232141 115975232 790479615 802956849 804557865 411454278 840473633 604781370 756752273 979454992 993290316 664693773 706970454 525705680 626096629 333464229 642185271 508387819 602274221 221487047 520748108 510219202 920233655 34473029 487287176 4202723 343241422 768706607 976187168 522483546 739727856 212808388 925134783 954282418 997948056 478336318 851992515 904384826 982803595 583792553 726107338 839257335 891734154 23156378 219784354 773946679 867786141 714122911 764409311 54120397 526828227 958746744 969141955 608140649 883887338 507404831 941751246 969843400 990528353 887039896 918003505 163129405 257722958 467270115 685845802 988899622 998678859 472180253 499252958 788979010 990097417 462868421 652800626 368530325 899737918 541816085 943531196 526342583 582490956 661622902 933285798 87722098 512790034 265757173 458593101 14816146 309362481 637747755 707832301 832911631 845944788 941133911 958833423 142114471 977932063 569071372 817065402 984600249 997943591 474945924 834573287 962397885 972770746 778477236 831383135 442639160 792562107 969085681 970153385 356910370 946880612 990693375 994033839 282090863 803836325 301600964 402823127 407736662 829247292 750806264 973842163 597968901 970866820 925144301 976779231 916959432 921288383 797057310 968553276 967192193 990046113 374734259 540236062 889685559 936728001 797082957 918756360 621550492 811220677 565694566 812355632 271525379 588350757 106761887 474994012 151903856 695353864 871659204 964592084 167517572 397552883 227845032 722076715 854716842 927403225 170522782 839621353 262578813 946224721 425544704 645141486 410637874 970338354 467596969 495916653 249229127 765535939 765876535 947434207 450971226 871579260 310273341 315825011 114535640 891542509 541755965 588588850 962226792 968762365 504408063 565953132 102938291 762464746 472586218 852555421 725569502 843957961 241340917 530211887 366243903 605154107 899997710 911320323 470599881 542531546 109762756 560428642 735356641 814816411 238503031 323779898 401701706 985233579 583014132 944496710 566815915 674979527 899190568 953256360 563599961 673283103 190278675 931850937 514749578 826315995 58525640 607218286 327033578 328165752 180319455 223985491 783522994 809649925 487956042 656821676 869871237 878972813 592662935 877936254 17350418 22014894 392132978 488256851 213903728 921208964 4702524 702751812 907235783 996618114 112508995 939592568 266458589 651772085 30614753 225348004 792379885 899620603 748661126 939002077 29600378 97322251 976022232 989099728 404660687 484302591 697643376 706397133 915266133 987324489 820164708 966512669 42849710 433966045 269636309 826138976 416159446 839281919 477049173 664897259 660869400 913053701 442343088 458693137 342391980 669964935 392776640 612057412 105045438 552817568 188819176 498215202 326894291 996087232 165365265 817922070 684457026 744372181 391576277 483793773 979700992 985685834 333105796 801439179 303204539 498463218 517047451 691500800 262354268 391899091 656728644 770916093 630747511 918953601 798307793 821180933 323357145 471247288 419756369 424675607 777910793 854848882 57110585 789176480 828266133 987541814 811719851 853106341 222929845 407494304 314990817 872294197 561870005 835749389 278116242 509491558 515427286 943644055 34966153 299685095 567831861 584047514 971919310 995331450 591677851 888635407 934694825 945131640 825328642 881301185 823952673 874429928 825530207 954194262 698992492 856934337 967362495 974037398 592526806 980843798 75094003 796594593 295851257 999388689 921019336 977985128 550805702 712817823 685517190 749465494 219346832 967158054 691860135 912111832 435507757 449519540 988239349 993931880 872176466 900140060 378002814 644478782 930708694 998873116 830765229 910495669 992735768 993810168 44003737 543798558 24285836 375625421 658681283 967420231 613115116 949311532 64314838 723456130 904592981 949718581 224806279 592814891 446115094 469224944 218690323 312033439 82293793 513428161 741627577 901718755 167641936 728089077 176574348 361980212 191663893 314591548 542488081 885674996 126989713 575112140 571635782 981939713 10983480 283795684 234681334 945510865 927202467 991290649 341216886 659507546 333867093 375928243 661926477 897011204 885979650 913377950 213303804 605514749 152193483 758177539 729171065 774316418 957681213 986908697 827470704 856318735 422328118 802363484 255267562 694289381 401464262 554770052 641465893 802645543 841512413 958974362 254476335 785618444 265089908 650294269 220460439 941257232 892779688 987579967 392193588 976673434 51449846 891700099 518780462 617110318 548353426 835390923 430049260 639070202 638818901 995557911 956786245 959956418 535588870 683832851 648134670 891271323 589758344 622531367 627591288 651730550 892013203 929566472 412785033 891319978 821440681 994547806 524894959 595192815 846039592 885452199 191807664 281220461 62074239 668795941 23364400 507633436 131872599 400338588 535606942 593386577 359550516 562003569 448505087 815999833 846005754 959924248 334551613 498338363 582970894 679334599 368596846 837685830 802969151 943717695 282812886 355841019 539734451 672249705 987758021 992627428 450383498 630964430 948501438 966730360 250481003 475941657 276427801 393073317 18817528 337558303 186185493 869951240 40722445 979559299 175836543 437055782 749882860 750084934 434094024 608365963 37649146 892042282 865596937 968341733 692279061 868107579 454157238 564623203 509219224 770908273 585215923 915006730 262653591 592565571 510562931 979499449 685062007 832518187 620559257 880315111 481477233 722087436 694201058 948443312 553156689 716434078 579542717 968442979 259344836 412825212 855053655 981054623 913835006 954701695 483077123 745766520 837027773 862950000 225609936 947364631 210442318 889460536 595375062 696925407 704049561 761809474 77074495 100621844 607689815 870402576 700759865 997282756 955479814 958766299 896410222 911386686 896786364 973010324 311895961 790227054 48998798 595690895 134708531 262820400 12793391 519427397 628881925 991920866 163777432 786217203 792348835 837984133 43681807 607112089 323589217 428373930 108818432 560495859 982450545 984946921 479862551 835719649 787527955 864855568 278927664 957330891 208945227 491719628 467513210 645921108 822021396 860616897 791273198 923029373 66443524 986261635 789660859 954851873 162439742 670324030 86205933 994813262 268175293 450197292 280705337 947753153 955279839 967385661 931798490 946754847 408374450 465891207 636837221 821469018 658441376 749836862 915348315 963878552 317459529 684151863 610187798 904883510 713198391 851163648 149254759 160969187 464109328 716044365 202816992 914275698 562415228 577948511 317394178 990228666 937669666 985944426 194771986 554515356 175337059 269224943 759381164 999121324 627543064 957211065 673260349 696474632 118766133 260709302 228794407 928808078 96643114 798520960 221775517 361543387 467430958 837059456 597526918 712933745 233478251 375992521 816411309 925374983 205563814 842364553 710964564 726309605 983897255 996093379 123148243 145568998 532443233 543134236 518409081 808048683 341935451 418020685 258023901 816178455 633012009 644401068 806036836 991158167 427929677 591204175 251566159 899659151 881449352 987222571 606039273 773746089 843846907 979922823 324276121 409787239 792937842 870859694 276452448 760136353 879136419 953706386 466176938 740838319 375231277 496056809 844404461 969441484 47665611 912440843 794418277 861712236 16791337 454024251 350925333 653617535 709929941 753478249 565714015 590253687 261436601 479805559 124311650 240376338 958781381 971115776 182577960 453257288 194281607 457545091 194470710 468380743 960797649 985676343 68842582 203260343 363023489 389945009 966753772 993104380 729657624 908568296 163915704 848408593 558541523 595635505 859855438 956862411 362088021 690687537 157618788 753893836 113585377 154288465 930361597 963669562 765899297 915809144 787382787 836536364 282367267 830222778 229513713 404300970 988644979 992901364 310085154 930074955 186300255 895359026 714135259 733668965 228824453 296834893 42737189 779998845 341378925 888333157 199878264 966244924 406662546 823034741 769089424 955766720 138938395 171647118 46685904 176798982 8071107 65348541 889117010 930285874 300856200 852601672 925916481 959622349 854593025 931246639 185007017 941153523 849266224 989161007 673025630 832787730 343181851 954183293 242103830 716021436 719192020 930023705 61944303 296609484 862547752 880293150 251587882 841506936 67010273 766578576 854291839 977942420 577205175 634046335 888589948 894989903 124808681 947559821 644140168 839624074 245696319 321292015 136614107 653754636 310436421 761522245 868982651 947263413 6952520 190687497 942713974 951373660 561644189 652575427 613213193 937102103 788364481 822522193 4824275 107685130 461870497 621464787 16742984 408803618 424109751 783427754 233467606 629392852 898017668 907231856 691975386 730603043 666433259 875688105 93645972 516657005 933960939 986919272 335624918 929030479 91111311 819449694 454955311 927439649 343640945 529078026 29523232 222565231 537605482 594798068 887652613 909244244 875590183 950981102 783012970 935259375 15139244 692110842 26197182 140297814 58822378 109007412 821911165 829690881 346163070 654469973 397001429 632591961 21023608 784279387 70268626 252629050 311650908 421418333 26128823 852339611 684662531 864094369 844834058 885704526 968345367 983206011 749929961 981825528 901516078 989264364 434267216 551905903 673214771 900591345 802789627 824832684 488823844 775293130 184011867 433323208 599721523 600242296 515063451 722329016 238070128 347566481 870374076 934442591 71350790 892376742 57858303 612148857 262760101 912100582 891390192 920539335 100861563 623705443 38619965 812465526 154438562 615515377 911265140 963136117 849474186 927205283 513494237 547626000 498377646 600987450 751703779 780430350 264714980 693978287 831340320 859870753 760342053 964563036 739120186 902905170 14051863 460051044 257979180 572077859 940392799 959267724 264646484 738442413 401432471 402730820 30755010 441450103 391764070 843816195 602951731 784039376 674895572 903960787 343470637 359636924 641292120 641802830 48179096 458136406 763653512 874851166 653899329 748627985 46822894 101539588 302078100 599341639 10345733 173678206 933553863 982992384 784180519 973713707 499264051 732087623 48159414 788062665 825952539 924050647 525611870 748092498 903743438 964058855 345281204 645270955 386193164 833393656 676948144 858268326 404523422 439335223 753004694 779435740 654370252 856576360 11422202 483840496 682813121 851728099 559575121 845251048 95008728 746096323 344719247 398221260 342042837 715132588 915649555 985934384 512963881 782728890 589747242 996476032 186078962 948031766 212809045 749022910 45121251 929608363 591493761 855623126 857139891 997037838 891363660 965444195 160307646 690892159 725964777 858612708 883649316 953171855 927726770 962133207 620034087 720046349 157344762 547662045 294730115 452027090 648966814 993524921 780264932 925988318 769021722 974060803 783546532 837912227 17238032 430751221 481181237 556406875 86593751 486482677 658973063 816638363 883742040 957127345 111881433 550044320 260155940 821101926 559502253 611766325 29120873 520638115 252364053 433724726 306409684 335843348 19194109 362965340 421834112 602319244 505767426 842617894 194465199 886563919 87357140 944362426 907072736 951123483 155195417 343492662 552337161 596916412 923202665 940440748 454733978 601615911 667214809 703705003 779366466 886803715 813553644 875365324 726903449 995583272 692838333 844562420 749413174 815751554 28676842 162321873 840874864 958944253 611270083 630821271 4534718 904518484 527151448 605077479 164700417 315941686 136445253 643891866 248789079 721560126 784515474 883872903 740490599 894917220 768398159 929897024 125130054 782881721 457757667 715778417 243048978 679993603 17415216 939709110 583198797 974938347 891920383 908595202 85389273 240340550 15904951 829238646 809433060 943288421 250962661 709757147 400789600 866173447 836743403 966972626 566093366 931607964 579435359 834009807 283955911 469481822 905829443 914535803 359629266 926539777 781497785 792706711 451772455 907946835 532415175 834455756 349966865 997090403 762617032 895694181 378450910 718523929 982145252 988341975 257822860 578553176 482262880 910948526 548680954 667664298 414971324 663699034 950448235 953521300 918741998 925489999 303637434 357970904 289629611 552478986 192710214 942589448 794034668 961181997 256676579 525539813 671993302 846265546 444017461 645812001 174648740 987525505 321236597 776891725 405339996 922909394 65003460 802784667 815697647 924112106 2637727 345694762 639678635 843823459 728404099 799250448 574135826 850776850 398168712 836244356 417243486 888589156 183779645 305047658 110740480 386672841 279577585 748572564 859569016 952434825 265301480 728688568 761360041 869288466 130820242 495365301 453479535 975582807 137983416 354845153 756956920 917907130 362725717 543468849 129782894 930434331 718389559 890516673 998297981 998960870 652564881 754662598 755384128 785893219 309028857 797293132 887516583 998563632 644236373 849047726 848206060 864528006 134214465 531045737 950298023 981766643 838380070 954986596 187354040 633189072 698896355 988187592 147077447 167791045 725054258 902217594 678681721 834553003 407021632 519314394 96393422 956217848 91512584 793520199 694346438 928586333 722803801 914835506 422141301 790570739 154098364 660535789 399924897 844868133 976757542 990717609 106511567 848582283 474953197 765762467 176255148 846405083 412372883 508621453 652191986 772769895 654878006 893134127 727935947 794175191 500030000 695668656 379904030 942953268 384944685 726671568 113766471 984515142 36904284 65800241 670818811 955464135 947598942 986152521 920593996 934232487 699647698 981027238 681049313 967484066 832413190 921239858 916367364 970777130 643062628 822682991 860154289 873574789 428755427 788405564 513048202 858116145 635296714 859099939 507205125 936112084 767212707 827724993 622277459 828847312 495303196 985972490 466476569 592093220 575434555 642315694 724408210 786899989 746378432 930000677 785036394 879871263 596643805 675841633 310935614 801052170 81809559 591698309 201110933 856457741 634924429 852063581 145779490 890668128 776061748 783949233 969516694 983913574 179787573 243399710 349251156 906114367 698982950 896551954 155507972 784372574 536632455 954010858 50766952 97702910 430333865 580858203 653834717 995011276 580400691 692606164 931471191 979731114 160589127 688194612 975664363 998779483 669809488 686236997 184997662 489523606 799527303 887574188 771935747 936644097 207965869 976860597 618713986 991278499 58855402 534924070 895922262 932107150 152778335 827317247 930193425 935821651 143717193 235144652 102001960 643823943 978451013 992096653 514558709 972618302 323348785 812302983 944282569 960393048 721078039 974455837 164757263 324614738 885785918 953190974 963112132 993367517 6196858 593235960 101443733 334436435 573652090 651756196 114099946 524588403 716211843 985322843 539341738 763285368 990581662 997753680 195627565 556582843 26313670 685391297 102499782 554239584 812687748 845105129 930620282 976935015 855118952 983809061 317110708 862033574 875948492 975762731 905168988 922726792 776583000 804066361 890953383 915412968 221273517 762079048 424683521 720331279 613225778 876758622 556141556 841803319 403675411 835129145 747030212 833014790 35584221 608858185 642556438 949087657 563621783 591654636 773822658 788364152 269213257 529681377 497839904 980156961 713462789 853599229 204320736 909722294 955750037 975483453 529574949 834909256 291488942 708180988 378752652 499082425 376561392 627053850 981585184 988912372 5157226 99343938 934599412 998254473 545282804 806969224 120851428 337855274 598235115 640040731 507378913 688097760 108389554 885758994 371719135 701041817 110583496 959738872 630544894 809994190 507746129 926006900 586940463 745673747 792753177 905982862 846129450 994365842 854290451 991163478 516200825 997919924 812899266 946334429 495542543 816553030 436380118 671824937 505975659 544177114 726465529 911529880 15760058 578826102 169863307 418118177 519418732 831805581 802118308 873946342 874858750 890932754 530238726 824475642 281972050 818834406 7126119 49170662 117482484 613924252 395022539 862037601 629939127 777680454 269570797 341201902 751628700 978897029 398719470 399985748 32730762 108397931 912327225 979847116 121616858 876833766 952711631 992674959 348768161 896412692 54129707 159580342 105955433 293898303 638026680 774566530 516965951 927504635 704253565 728742314 670545975 678398716 357190792 923259431 398154885 891093917 459436192 866072904 850916093 941615284 395935191 786420510 452804443 890804435 755019146 815378953 129624039 152152472 774247728 858817410 845905160 855536263 102117591 310065771 937688433 986334347 124448617 377601132 273820041 942641784 240756341 529145042 105824797 733306012 193958837 236744078 316975554 864183206 969680747 973442120 69960501 784550283 20014856 114610634 997705858 999131595 310812996 861724786 365675609 971933680 692238647 998406413 650470279 878896731 757468680 817011560 363156198 748039240 638719682 750445910 149987224 304413663 596505653 607422878 524803980 761428082 608566590 669730382 514933756 786859786 251296929 642298854 295793248 379954942 571682129 623076166 3169539 972536044 339180091 768910765 348279487 534592773 16181810 68359559 788263435 935929378 760806790 872813062 60109508 632494742 573250191 714570207 158036258 266626934 76938540 739484965 853585104 971028499 161242245 602528590 772401411 813891347 126310780 536701086 19449767 397094593 626025082 710395140 285628352 329111367 903984302 998950098 243669056 924797155 578338120 750565722 267947443 819260152 261388359 869180642 294446365 844560605 432226806 668568832 104547208 630719535 6079007 579638860 203282345 452603676 602983449 646825416 861942443 941551532 435530390 468417195 412134220 613033830 628946051 950804066 960904142 996189568 248619736 471989609 475336911 508050350 891589212 892377770 177000017 929404621 859923630 886357982 841573235 866247887 825653125 828377508 807712784 954191836 202740989 758681933 341928944 860735127 875835124 890081281 934155264 945953416 767545148 969778820 832639155 844959630 62018692 467910460 577622333 874480783 102963687 916751131 823447860 963891793 14739207 327394865 894537779 955870424 338532908 597652812 232270374 987003538 939463678 973534929 223231988 688782223 609437077 645845005 88237105 305293674 700884911 944132089 928461836 987192222 830982378 966293912 146872462 781804932 290779889 533982283 442616485 797401131 211031256 995288108 40767542 758290721 791614803 816475022 19621897 123004645 550708772 822168151 656775554 685078796 796980323 975303352 839230269 980134346 682913580 901989026 854828295 964912026 111830841 393080073 109387965 739226974 400332585 780229472 618733502 787003790 820760726 853061994 663745934 991135405 313497702 536769408 660279504 782159090 874834856 931577557 779304307 970884481 287160863 804528592 812296303 920166002 830193532 843714887 312354823 781928301 915543237 921865596 43539583 887365583 493565584 796384834 620998938 754326000 783476383 995575107 993486598 995797736 933352838 984567222 188565623 791719019 774235556 826642086 976252767 992249633 239426870 766542030 121493720 348989486 740849490 763829228 520941935 764156346 680715995 944209723 486777292 661035122 478281281 805891645 878814897 910096236 576400946 776512079 265564077 992837797 806465678 959449752 437824748 882809651 592249131 814876615 925861 971152949 932195112 952660363 53803778 948098251 235868085 890808224 515510656 952092893 766869561 964483128 945274800 987527948 292767716 822873758 133538302 141001082 644590572 933250149 484893269 536917995 505544460 770267810 684353269 884891533 103634627 604407686 508767159 957338369 60873285 431392759 824798980 839106129 277740874 750991125 33351489 870364505 918761748 957075312 796263726 960923640 486290033 765134017 462167258 973107454 719945116 739410862 172161439 315461773 620636556 651721765 37346243 876856438 594969745 861823944 140411790 602781783 197773616 966751307 742872223 999047852 21899104 415159743 305031138 889455178 54970740 147096982 837638110 840209608 907037927 986189025 540119565 828936114 622545373 994917505 957957019 965819978 205171983 906793689 17989601 803056080 952360406 962320902 586001853 628247718 730645803 983124042 326973606 499941478 53739820 482327395 57166516 839755421 920962650 969996810 915781503 926814737 857506526 942230920 92152859 532520765 83579495 133703493 277210154 327336159 912587970 976850782 347972483 671757623 387285533 596050861 358579989 654500572 668863153 937556737 22266647 132531336 824189184 952975694 473295530 776785892 854772653 947108269 896531509 960976603 82785789 805646845 444585444 895803268 669885598 817783161 537555170 556340571 847899004 968896820 369326700 402696809 370310086 737615098 607784441 729851494 510371546 519915287 69519402 702903016 452617322 837592050 761763357 915864097 989688752 991041723 699447354 960429090 556388825 827247077 312199039 383432904 340374535 395414592 318589649 689837264 374975431 948114313 573331220 975153399 189375884 322457453 975592795 999367547 143129294 488272882 174529873 429952834 243728635 356756897 618083612 653486046 328808943 554359780 841222487 950353871 278585596 444564397 135170427 344646153 862085828 930994762 437111514 569867174 287687747 444278992 9321468 58528701 661154131 817583777 800748578 866496457 326065175 617179246 115904366 402551227 75055296 947058794 391819020 720976638 926610579 958167267 661147095 982176724 962245776 962333612 271247675 436879476 150373408 208258070 283883430 390822544 268627837 578430944 633641828 697587988 484398562 532784181 114637481 750723186 305385450 688719855 259220752 278160476 394011899 472179591 588360394 742283556 782924448 826640381 51630853 825108518 569839249 745825378 150098710 201489744 55163732 927370003 427025395 762368200 388958296 703794887 415463835 663749202 333466076 867333462 280404658 792419774 645507733 826548131 974345402 994922233 295155713 734142250 289580863 942811893 537837009 814252967 771948553 953151294 545808115 729383367 65906711 795955840 800646186 810809522 580670788 770947416 645664137 913002228 317280169 719953765 409107048 721414575 299331407 848344713 893393392 938798003 719840817 850528789 264774559 849557361 868852265 910237881 742680516 892757910 115613883 819403057 327497004 758688602 56433125 339716614 357259762 791648492 105813528 992341330 542233537 697841878 968805850 990844637 658788437 660636483 705091588 866480545 705137923 813126630 175436656 832209116 312339981 883728539 856449040 937728826 599339164 830147261 743433086 884745266 348496133 424803507 809605144 888771563 767637179 986783707 142436788 944168321 618312989 694281454 435068823 470716364 212156871 712517945 465453653 973728591 530435215 906555413 948710483 954847923 280846993 599889942 772560124 809737032 108075115 473968104 912677977 927938360 328949038 936128725 128617551 989009247 524209015 958533169 509941806 556262709 37080510 921104054 471159535 963250528 944823384 955853092 779352660 809377709 342011056 344660245 513190130 763510096 159216021 501358199 482418815 790217674 773775510 975255111 653523140 814001281 321719080 600265775 86961272 118026843 353832036 938502100 498155376 696652039 835460711 937930019 923508677 983521036 438830787 544943607 771662518 797768531 460841861 505884075 789819611 947330277 296768331 905129759 93889468 96578021 936193419 994953897 174949714 929423972 296692696 348477689 107089558 897141963 469115289 922540001 344306303 419539514 697906031 865643200 935689309 939772645 227175930 839919823 75512950 430904787 967164901 973680373 771269120 786898495 633280615 857955813 832869213 946381330 554574088 760877724 148122891 504950744 877335150 946726842 247007788 481847402 846736908 912722734 613207010 740449501 257496083 735961795 699997696 827522561 185387097 909619678 416052808 498250596 590996904 808030410 914287535 948605759 239456907 877632417 821863139 832554146 758690662 873235292 34485183 938486460 975746093 980083917 893522037 988694814 860511702 965434453 266256105 339545100 404909065 490607697 818154924 943957885 492518169 689531902 259021785 877414716 982393001 990908039 94716791 645687235 416299625 981814575 139811526 494249707 49552608 87798462 866168559 913757096 225612205 394905589 534167226 736158691 333166697 377635521 407911522 764376780 158525625 658697434 968942459 970139266 32135574 826963728 754994247 894722586 262059880 435262005 313943277 339522053 77332466 270336444 868120122 878059870 486279627 499511589 454073685 630544102 819022538 949862729 626006671 926053627 533787249 610874057 281451878 626817420 827270680 873314530 640601181 975777043 277322914 539703342 33964319 316722594 696856191 861755348 417147621 980283244 691663499 737645361 524049211 711993848 824621743 930976353 210801257 627097368 276503236 377903811 725637409 767351074 564959646 982848597 791878304 942610400 903732748 958995922 378627742 734315818 440495627 684173649 408712871 713692409 176313745 777097298 954910362 990187856 412737043 494388942 484815031 955909793 590330907 959675179 171632375 324777845 603229556 792848266 935206627 972048925 149935464 295633523 196107456 766249624 383497656 648138923 26192761 372057189 684171479 876597918 352879046 890246927 657710725 722021099 271350829 291639654 300459892 785878044 174983163 913498545 263255892 313312037 955984681 983861804 342345434 460492879 497370910 631775507 768040548 839764769 893535734 964685947 434433308 812422012 948698389 967348603 273021017 621835032 928349461 998633362 24727712 208786674 297433479 673813056 397303022 488490836 508765373 559000041 979915941 986259291 162773126 282064619 217034047 557892782 420110477 986119133 665198391 950419267 881979985 914835092 248166717 665255850 337490281 755064456 965581678 967043559 269817689 376650752 936033889 972835753 941422698 974084895 353842181 554850778 115892036 273130584 219837984 892827204 807338611 938246125 587131761 592206153 179666103 415017502 156353622 806056338 257787201 626309812 434078802 500336179 753669273 762569802 647437038 763016312 11996222 253251162 172207186 388564197 257442188 820497871 526633686 632076545 200469864 679260363 967707750 981147698 432259173 442330943 235852950 837050015 255836316 502394439 664649864 682542602 101553225 133391808 697060454 839723330 776475874 819680365 62119432 501806380 464607947 520750278 362799462 872628909 474633417 545662561 436659387 669292898 307410916 564929745 124140527 520395852 178586092 981157645 353708698 758376786 589095891 902033275 64356898 532889692 414632677 682184960 920829257 922853498 634899313 864293977 875813937 945799499 138408677 312431281 522946646 655757740 858992648 960132604 929918256 995809063 610364207 720078371 720235152 976520040 524133499 785690549 609358188 766720433 51664039 926892486 774082366 949613114 148263979 168507856 169262794 561986753 480879331 677340215 219324687 943237601 24443912 274594615 150391761 855666808 39011254 362127362 11981311 288988511 93564083 132080232 146099116 477780561 211834968 675041914 985211923 988992277 612293792 930277850 400266459 438194201 193397241 303871653 720093636 932425505 654433085 895723572 501927117 740491925 451697689 734072944 173569059 607426340 394997505 425857212 955916519 962187499 722586789 861827041 70037645 251194668 154991474 559660874 332337958 783430182 792674914 808508958 157053106 743704917 517320948 603158744 868287022 887369186 774239971 832187043 752141823 834222404 614645511 858590530 481704015 681315772 679417578 883645466 215462529 798275626 859831216 947172345 496870211 739637443 921232067 939289926 946072055 984982014 432020413 917132642 94419751 466706666 867995040 997828396 461847882 771059930 927382300 938230230 361679463 706185146 727615141 784089682 437010579 885826144 916641503 962176436 156483023 330112432 997273743 998782325 86270089 356065517 450410647 476631793 506617393 583906271 117823111 637290521 812899532 854219371 636902911 737931483 719440201 756340688 394705497 452967569 412763276 429582877 81632379 481444189 169896625 721867222 18204123 918738827 244307437 907980470 396135752 554071665 229092798 620091526 901733317 978121683 967036350 994792422 416292484 791633145 764102498 853627058 778749065 969346742 807560153 831445210 448697250 452487917 920101600 954693852 837968911 928348971 958447082 968353145 14004187 472276411 485983735 638530531 37938763 795775390 971783793 986051869 841904235 975465031 108752777 160023580 842591183 861417272 595720409 596392840 514228591 664606881 723376944 943220064 756652065 800726915 291872485 552040239 255310451 400281180 536407856 746381137 651643442 686954740 849621879 946299296 107184668 665073008 383354378 930493499 186583560 917076610 111494166 927302510 378011592 382634159 487264783 977931272 678212497 829155867 293464889 566738644 51360030 192277366 234746507 640034961 368029865 627755422 643698145 816348170 456225863 988501726 545129132 705972079 320626526 815981510 892933963 897197869 590190496 958436678 290795942 332234396 788481245 972166708 453020806 779911828 24472895 526315434 894267543 904997019 795566744 833070787 665595845 778083220 275570794 541413514 187110460 449082995 566972084 753121055 719693412 829836293 765657990 793316312 352863813 482213463 355559950 392282867 986253953 993272085 363395569 555286713 195311411 557964771 809153987 974781356 502918478 728866402 709683722 978848219 212247996 703212992 619288088 662707387 667709880 924835832 891940129 963107592 954606154 977709033 876893951 940431512 444824926 994818218 49140456 291000536 686524506 893406860 630807084 653728045 898421271 957015555 487045050 552816186 882133713 892582253 75153701 531257684 481672857 593626749 778751957 788613662 772535933 879261367 887431593 974984668 376620149 936860369 989816999 991474659 558180033 957802289 305131880 888432286 534206883 622660380 492875346 690394548 929522538 970166169 837509223 842516376 638399352 928712780 100558945 142907724 652014396 988863175 853561755 898867862 296027013 714454105 545305665 955070223 904021894 978001502 563108810 777074449 299342754 986087068 559639759 669494893 216968644 904739828 803066893 902505836 447386669 692959316 664093584 927549695 14953943 206746601 935377915 986700968 212262329 540857348 155127342 820129984 838993869 890978572 354890122 474310919 842669578 920616260 962218999 980249077 542609951 758789245 218209617 255988267 121576350 863098948 867188747 992391142 698334933 905732683 614687802 872187620 292827729 397705933 334154078 761156132 926151167 987253698 116524976 320266090 596682591 893845843 78542419 285456558 142081755 160828682 282524980 968725115 801234094 963582525 247073555 275247672 8827424 960976860 192854550 548940808 553850200 767563109 135848360 477911355 551970027 565297151 139980755 607926730 544569012 564181492 266583371 919118904 440639759 824860602 82118251 894048438 415151040 979456433 643637746 941658449 68028895 217036035 446606113 482290251 113735689 773222609 837835685 847403042 762297823 867838668 953399766 957047802 197691591 381527499 532145999 759749499 582391774 877427351 527064756 670034212 642747372 963073845 486551565 621133788 657137776 939790405 480324700 988853374 294026367 728698851 458181084 627451567 85525041 162885841 626663775 860549175 328421639 437872726 737659289 965507164 996813993 999075943 612473665 675668095 363168064 501515032 331813628 425398053 854187671 983349826 137903768 700120460 130155241 429988017 494386888 688315072 358851628 977103412 547732878 961606738 492627740 496702230 183190781 616249127 745148599 864358151 124612076 401217172 720187813 893441900 766404371 917705059 190708394 334474881 609566057 731623668 949526029 972910252 793613809 939351182 322394100 360334076 36034749 374299065 342458128 816107518 95388633 987427514 387112658 686174397 600684443 630936366 297914544 340259908 680464095 900543748 332667629 820866834 829266714 918582044 898275868 909531395 645473272 653463385 682627256 913068779 27797194 166092454 115195753 674532272 403447526 814027995 553220130 662231524 922408165 986318876 623862957 826839332 166152420 233716115 842375606 849846917 621223054 736796647 47952247 339267047 394994066 784420752 155371948 257385474 428106776 720268290 336393032 590223824 529481354 828402932 631083356 975777017 934480228 949454485 287535615 687574091 68052951 520973731 796092765 998762783 571564641 723146889 14937473 196301859 963003788 981051774 564374291 605878156 972263149 981431160 13799854 894887189 170226011 245451409 731568870 818670154 761271678 833685660 16400466 705379425 864161925 907447994 371629294 901127227 133639268 845919021 315201793 671798740 290123829 290898925 90153352 792551092 845902305 972852617 71219500 789217690 292217409 787595356 940961942 966535203 738219111 872283143 544361984 967907271 839014837 868809039 451514006 484368056 320486215 772513633 959325247 975087195 804803007 842657561 430681131 775806626 889299543 921602753 494660118 952314235 900843607 968311691 570576065 670651399 980702213 992719710 979291201 984361785 819317394 987996655 197831780 983565144 672929653 922111515 524112777 847095837 758305449 812354043 243901783 280978345 309969953 745430461 229773335 823418904 687900342 982784637 810101125 825562320 32583720 562468961 917156267 958943081 171395125 851623812 30693518 813227713 836805680 894923178 191256110 649813706 759781164 965464678 113879303 898996860 435514877 839249104 101676353 999068950 522709386 879011804 230420860 872410852 616096496 903381084 224715133 953741839 408977618 703141370 352685370 456792296 958645749 975385193 178114195 868920216 328737236 623902890 78236152 932878300 946318249 966644794 638940336 874659361 335164283 808832954 146305204 340803230 798850345 805521198 71339624 130975590 970808631 997654368 435226460 557543413 29072897 732663079 509912620 721791345 392765317 923699351 936905991 957516158 880431815 927486682 356201188 607438321 530577971 587894205 424270216 814620011 955729132 963034772 481921745 638037609 811596975 839756242 187776964 837480550 236797707 640673393 720126485 855662002 700048534 991576767 77884724 886818018 887165171 958598110 640071304 882242626 87341278 363465299 65792708 666661039 853626231 981001462 402279981 522183996 37694146 983534402 403134777 904934547 409647742 550607352 130730637 801618464 943093656 975604339 270402898 758933137 18767222 463259528 618882660 684584422 858725462 990184533 487808202 643418105 819508436 998387789 642533922 649302637 688769895 948009392 649376196 820052977 373821006 518743150 812305884 887157643 564779017 658276352 594901232 806558655 857275656 882104524 55247290 908490382 210649886 645408731 776616041 847918443 865111806 957401832 410216388 664831749 122059526 751626613 69514342 730300560 858427128 980290599 811526846 956116634 314418777 600818183 397252102 647452603 317915173 830154416 694926780 939381758 366074997 959233479 97183046 350862404 523428201 819103405 905704413 961719679 77130058 316523029 443940360 536409365 99668514 774708054 351071929 645521779 585134477 787930266 15465236 409201385 540995676 754615581 985170726 986554267 780929518 854642042 29067683 482465302 640794826 770366508 762853277 882772146 486378555 842366168 174100205 874648779 24609916 665619200 920015722 970477457 951504001 993957972 325052968 607560382 851473695 877393858 902293267 908393419 458125628 945937713 755857442 977620819 110290597 793932199 436964868 633845326 505625553 755655330 484502918 574655679 699347927 951514565 722470363 806363711 499863055 772222386 562119594 614900643 336323072 410595194 232458601 589366058 72808878 606420540 948609074 981651848 821788561 846923067 555280955 824107499 897651256 919806529 911270909 991794462 86172304 472984031 427494498 722519675 16665401 705956174 484343656 762196462 510810173 898911967 194473090 861253226 957019705 981848358 641085376 903101473 489344677 914790849 829433211 864544664 431706453 965996420 312875523 468500215 221930207 911543686 244989472 585584209 566792965 914382779 299264538 606984031 550091176 603094301 13170655 813014997 601666419 861726777 517308036 606015124 604152777 654997169 144178248 609001975 338037479 897973770 762559756 835967523 491964487 712382632 26997394 971095912 165215636 573055879 62157588 87464948 845198605 884985802 356109404 911257846 3302101 772253966 203074773 677384392 319451294 617882196 623208988 985058041 968498939 986535324 25770821 602264927 623783152 680131454 878693653 936308415 942620596 987454637 306138925 581499634 333957356 390625464 703607831 722184155 502948815 549787622 623253869 899407612 56944237 352341232 546854480 625983797 925678664 970391097 183674846 352748308 652159016 751332617 307291104 456711730 654485046 668787118 139765546 252029141 140531997 282109535 186511043 737866907 795686481 975556335 1206620 87777618 411039779 781294927 992508724 992603323 11113579 86185222 674721484 869224650 482895643 676136790 174315801 739523930 345991969 518659085 476665629 945843755 385195691 488046482 128563228 766285518 755882133 980551311 598330211 614876330 395741251 638991174 728536426 910570848 314705847 475737113 535171108 621291165 992929878 998278732 718799013 994774579 827122696 909555824 940502793 975642995 549186622 578985416 995113268 996956224 815489255 975184478 687758924 778170530 913709347 958247795 652408349 895524634 792143521 821453291 105862247 208271397 558173754 951626287 96051322 873214415 327299274 876236610 732545976 944564597 151922705 341994297 893438815 935508253 728532623 838382574 528330697 880327615 847150643 901083990 429912908 945303079 532044460 667637571 108292597 384574539 229072004 629347160 701067928 708279630 914606015 949932813 740896477 901623487 440683228 650107445 357456424 523271868 196139104 620570401 2430677 613705114 237691549 391714088 449611097 649190671 127751320 876827173 381825398 447189260 282886562 457272411 606888051 696816327 429557316 477417908 599649691 964482475 486059204 634398908 606394497 696174422 607920502 752753632 321785752 719513108 111639597 722553449 181384717 210512087 608727509 858923988 141413189 477836684 121517273 203184593 948226257 994477741 921981807 937893040 431805074 643842156 414345637 991272153 975145272 988441940 613270474 828764008 360590882 961261915 972928911 987352707 397044940 891381336 221169008 532418469 316204261 969485213 345511401 861705384 543397193 646207356 826073941 861047749 190826763 876384226 568491290 766256979 69956017 626879390 304260182 645481081 159737901 866371295 119640200 859534264 589940970 750509300 59624672 715093889 847076431 995839246 152602943 814292170 300015649 706828709 631040386 766870708 633098363 732104857 831237990 835808053 767978264 972590134 602487260 753048214 672644746 858621840 334797707 922707549 22455793 453930617 808498387 952304976 731317987 756291110 670249264 821680996 927796797 986553389 538639714 859966239 651729511 835518231 571888397 671074874 465701615 807382494 705863926 857405312 521507106 635412953 769672013 896087499 347088036 526628521 365326902 663105061 743044157 994755429 63224344 346442834 851363057 863144760 864482956 885252674 310829617 365032686 696447552 986259767 31876011 619006910 72950417 81084217 288722429 848226585 4621446 366523822 786897366 949957776 338074950 575459229 8508074 172953155 734345495 886495578 704368148 940635647 752469896 828399521 794266755 849876022 511474063 761613720 596849900 753493512 752660187 941338201 446514172 987048891 682016178 932330507 299617331 805806430 532696916 801368397 308273552 666408963 690720449 911715212 289012502 575049476 610530012 940327171 478241697 557212945 963114961 968001826 135388642 840954595 952115761 972214298 167059773 748059865 977746642 996057002 423731906 474577059 42916705 240686669 147874936 316339732 848894228 869707291 36688840 747700961 455929328 813176701 665372091 812852860 777915337 858836690 55219798 729387946 69001683 929461089 833074139 888471208 9832652 701591376 958060681 969872873 329654408 594462070 21341947 591071335 930206209 939232895 175286277 933239470 288280110 648449471 937652869 987781408 967877583 971911193 492574162 495238457 133661068 965369444 518720907 928958184 325905041 342483966 610268682 726631169 239861230 482878001 624040917 759650643 235393273 705147902 804431067 951139560 457449156 947212055 178632010 691803099 254005360 644647379 132556450 931935161 467210034 807759487 343554833 848683515 434064829 926105369 886849640 980160290 433505948 816352733 549407819 672077085 265652139 901878620 732649836 951221173 230706066 840518339 226843275 909275004 238971093 543440313 151249525 294247713 924056982 942564592 939730488 959724798 832199796 855757129 128975637 302464953 374781311 424672776 620429947 967891043 624249553 864443794 79770118 978725445 781660038 834887452 516556624 718267875 466274853 901209738 867150313 992853809 661079474 937818569 375178490 522166797 64284022 457464373 229300915 290111585 518857430 734192748 870695557 881558816 612979885 916850517 164095783 570530340 63321253 819078649 637748691 936726518 248508857 938133672 642064840 946972868 130320713 452152626 587024077 986115047 64548605 979098694 67666651 760191594 918850865 920022916 539768874 624009151 160963739 976986069 529128250 805087709 698285324 907537937 385907174 638265423 395440144 486632635 572825924 831098940 217159636 717025287 256672648 568071514 695243315 715449645 717122340 790083984 176037137 898580970 857662721 961567234 819816029 864524632 295353244 640109247 740441889 849043319 710090228 783258429 304206472 956294637 180089972 744351795 25998607 979089061 133967035 430491463 564040490 824422555 333734146 773749661 761825373 938297817 411829420 569620274 831016022 906212876 919549324 992907133 798884764 825714822 662399727 944550116 938659452 954012837 57167469 753152109 578133413 889616816 523378312 526330091 539105897 869682244 143622651 709262038 732177219 872570221 694824262 883494180 595890275 750333564 149097240 569410902 140116175 365853681 805224211 828369917 978708031 980836632 316180242 828436941 141266627 768556111 776810806 986541577 41626535 865243111 731150383 853944865 821841898 849212006 315830610 478619310 414248971 665007404 344398517 503268712 642560370 708386987 369735586 647730921 813578722 929945345 484383443 935478478 433797962 452539881 526965018 750150404 801854825 972589857 895845844 964327023 406225568 709049267 971412208 993777939 205637660 247557271 17536471 92587223 55234325 696730556 954773183 995472233 601622739 710121250 197259560 480557177 778229723 792138087 972309965 997314651 266223856 437448070 733830986 983301809 743357593 959568353 803114591 983773005 22280863 121208854 870394947 994337801 142523715 323205184 426601840 842040896 549136740 640030591 565513080 842773293 660115744 838919831 115716092 822119505 130662545 845276512 152032026 513336557 604885121 744577155 101093039 940797458 231175549 644981765 401022272 938609973 235208650 432124176 311501917 858893745 144108914 940739151 137813869 939093458 794215502 989235007 888556018 922827668 155164013 364821069 624662700 677445822 442765751 687206355 397858684 450786070 306775818 776638510 490588811 946760161 435122033 661748397 933257209 960999935 176873359 235501860 606067454 697445190 888299445 970564666 383630135 385519725 764494471 862279762 140368635 265355824 15237310 601437553 613467255 623839377 10562418 250430467 970930576 998160800 481202510 539786151 794220343 972885220 674883605 919803911 824769688 898620234 520590400 654191853 857660645 912721932 390527286 893311081 322978775 529649410 248037564 507303016 781746513 969029891 34108027 873493138 69742888 419810932 148948949 453144460 891360485 935016621 716846493 894345813 871293828 962526039 538821189 744689609 117926340 258556151 671896063 981484574 852532581 874781116 484399497 694708822 98694556 519209859 413825071 500966864 732459378 810040044 873978311 917959379 51001931 250725251 222456677 817944524 803371302 846972174 163096897 304215225 903419424 930525890 578246159 796972003 28807910 508491694 302697649 908924754 838977755 958736402 59016507 417168699 203421963 693930048 296286821 360896132 838739380 978999535 347778527 402470202 596226445 712226006 167752672 944546619 431725378 915412299 554374000 941878191 175791324 393677242 34622258 156096036 440783262 659292101 55088565 995046748 218574726 344179732 174833497 330544776 355092241 900830038 49524056 941200742 225152851 600393064 761274478 895328192 19449750 666431080 940023832 964294925 232191333 427691312 37599018 237902310 510695254 900101391 759240105 844089760 111399928 824746916 130080087 778662523 449429355 907103743 464019628 995141445 981901716 982772160 415760713 932377977 116481876 855321196 784444655 858280793 451079857 817418646 184371950 611189847 502606204 556723483 335706657 680182354 132978096 760228005 39244216 777298389 380683964 950340082 583941471 817125446 284605680 344155744 383071282 703029671 381767153 445567353 858726989 996177451 269777146 721107917 427720223 750996965 635281378 765517100 300152740 463332913 444186246 562787399 1143836 271309118 72432003 606612257 388390187 896346907 943317682 951313109 524187746 955603130 335128035 542186885 555170162 985789067 102809808 983456103 667557752 957733381 14468588 504268844 833415789 925759968 130880747 725185496 96591130 742555930 482913644 762690538 327065318 993036784 251264247 749964342 547597918 974262631 916740871 925117730 348934620 602928612 964864939 971285421 539207843 769325255 457811699 862396771 175350041 746521736 414489519 732323130 345265810 749609442 632677907 932930683 905308279 953365424 383888321 945516508 626992628 670206215 34892907 984272920 680618686 976718215 421135595 540475249 420869083 766460334 976297018 992989194 576293184 760039730 170437692 898778271 198503228 403863410 723246302 971985863 881101154 926910725 44790596 283256636 502767426 682434325 667158024 679046612 921594249 978736015 119168678 400580829 230107612 887787394 353953661 934637416 574880344 656213536 80439376 173811784 625249829 979687241 29444940 468001110 242803011 621655374 504186374 968993950 786040579 970913269 782265605 889534887 908190541 968925660 105012043 580574531 347983691 797239648 442074852 883695955 797943803 971495174 830575412 920932333 457871802 919311442 704204094 884333517 663665559 959185708 98769554 800951031 499009482 965885121 681801318 988272850 725843714 762978588 303759206 758779223 108770358 129708941 715433408 726687491 861734173 984287535 146302125 793471138 170798775 366938701 573838005 650545232 430876606 466963477 956050232 993243969 587884373 800874812 337608254 628043603 124715513 857743319 994419369 997747762 137481365 438695672 695186430 959787776 735437389 789869272 639937200 798142708 418948192 836249602 139633809 176844289 391866390 867343631 942030078 971802389 626651509 871626022 119306092 696062266 40312674 298730376 786575786 941857958 802736891 903858441 7414629 470135589 665361474 914507800 909753719 939143665 736015263 856506072 939443515 977447444 809421766 867261520 312406696 896814504 632166103 848804750 678968588 682610213 427709357 588940447 349907456 544202276 716936300 824687737 338593255 888666770 63672234 92407374 168747702 355558559 514532600 585904212 577723772 977455982 570101707 829031918 712641362 800757182 39696182 295037555 393781725 789616001 774055158 792205801 625697579 851790816 804062366 934790866 735664743 804770679 557865838 578510516 541275642 569354032 658814472 974846935 813503681 993984526 738818659 962220939 205075198 863844535 377646526 601617446 794856146 898323334 648694871 652179946 810282850 947895362 851681531 933182152 509690008 805898134 806598211 976028462 707401445 872397649 675105958 717231402 996018034 997838600 835260520 853267264 752862455 856535451 47802792 917321137 765552901 905712660 68955818 397108888 235140865 237874498 154371532 528486101 49773717 757309704 559767058 867384304 599388084 809176381 468759536 898904624 327373943 425698054 437538404 938292686 126730101 670295731 423191016 520733783 781633638 793671362 572308972 613594063 979257720 981364619 454212141 646657181 119487819 146933767 218220024 356232785 485958193 616260464 702212105 813287164 806840712 979041197 521784678 887142765 451588048 471633499 571843255 921841537 460906316 722943755 251686203 477109280 455527 84407927 201932531 685230932 653488314 699316160 977534779 985314177 862053929 943306716 261621413 927307772 61366528 546768248 309465682 657156075 215052832 744378744 880985775 940120245 109814828 888359582 58243894 793624746 659386078 935779862 981320499 995914959 639646195 843882425 63203287 292154894 694522360 879772425 655246066 774789647 293109871 918238064 210922067 832100031 635925158 784992086 517586069 995471956 498814593 830139397 227629169 233683491 909828937 931497034 891066722 941497084 800765619 897187499 585167211 784515710 403105922 458952454 737651623 849774464 347666090 959880983 557046009 588434237 817556730 875706149 635128611 913744144 485464597 502540627 395430135 760393092 255753654 497778858 954066338 966143652 105763152 117640153 84757652 501144640 132789298 935734375 161968854 789634700 398818133 913516927 652934913 978734383 267968085 713625665 60862991 77814989 763506285 955744111 737912574 818998517 576971320 765868683 176931328 662322081 909925484 980134807 589983514 623706249 823633051 886526540 138061913 495618408 727540149 823499438 414240790 599678408 791284501 859458160 585154009 661163929 341399816 456001513 866450122 979483188 460231749 484985247 951861182 963405551 17255419 602675312 872542942 993602796 816905242 830332760 757733279 792332908 238251997 383094568 928276810 943263650 146580431 862336508 772013510 860676657 97295803 959992402 530709812 936777470 605073286 946657486 129644698 285568187 521947203 988403171 681102359 789397465 375294475 405433598 715821351 832042147 339630995 846905001 829749790 868163079 693997679 695165926 766298387 985001464 640574714 715867279 203738028 790058575 179854439 485423486 335758690 639866701 819911559 953657862 745576342 765808591 533946478 576358889 212485052 421324599 454125547 701027565 547143708 706471543 290202722 912478497 909478932 976151904 103177158 762997039 440331944 573614931 340766688 804686517 798377620 897622933 584964963 841290186 356942348 705782891 312990851 838316714 896371207 910826320 202581371 878709923 26359908 828731517 601148455 887557695 259441574 552817010 21655753 508439373 879453305 951040489 308827125 689329741 707242259 726671952 613282296 821140834 701420795 912864319 615889897 786049172 73133210 409824279 242643276 441835805 629336413 870761947 309177489 451128896 168862013 450628995 110559804 417784906 258696569 832004932 413750491 427447390 212116432 755101764 532441353 579233655 701405757 833147798 445180881 570127616 895766994 990378892 800011463 956442224 624953267 640736761 579279847 700806792 938566600 954491663 574756752 693998939 107394031 610021044 17743810 273155831 706728894 744625302 694363908 717035186 572847707 873331666 361591108 731689107 793312408 967500909 809828581 929599932 871380357 905031147 714763982 749836639 487477488 994952626 768210184 939369502 459774185 582098693 824556647 874889938 410336913 745031624 435138073 882930269 238706124 726834948 225703975 836922566 447770077 557493457 242973626 404323725 572891953 879037558 215985509 890638263 527906672 829438846 656584989 786967700 788989363 880370187 869136057 872816432 65340497 499351922 553055628 664189151 596502622 891380203 113370783 613493528 682141078 816403994 962191379 983089349 40495974 565015807 494230953 722661696 131128688 197321830 326269569 336533998 271772193 881610676 460690581 825261100 23879275 454501798 68276140 647148797 47878887 463106637 342260175 658203106 129795278 260668007 193449355 402322585 43808135 530132248 490959247 921771882 390546621 553521678 166048992 586686623 954716931 993862374 367882587 559657523 230800583 957312476 190017515 454694964 945485717 965392039 297898683 626620718 818159297 942480674 616651968 860826338 697133383 921094872 434078641 661398314 618909780 948675581 652688963 727760530 720594371 761528504 807785744 943896114 716740530 878995268 279272491 430880458 264467859 300378009 265116149 794360208 393525546 833180091 524582915 762963445 953286564 989660039 815932209 847880339 95347845 948353781 830131337 940657777 603160642 855113606 450638845 485803758 135356377 512857724 731391875 741870898 863061494 945637648 29406070 405300427 833487712 902455026 858640986 955600102 22086093 747871266 808892939 856945971 986578575 997002418 222060330 721207883 513853171 725615312 55016543 169835526 397360536 824357543 611174371 757024326 13241895 291303301 891858520 999114521 175525502 794248983 636859984 997673665 151185477 342686115 101761613 396842363 59720659 857608724 910993132 981194185 882516874 994490296 532341113 983442133 378738185 784346535 524533059 956679890 817292737 824164415 420706983 620762007 519530156 969945753 475714200 910610225 553305649 879372692 678358952 823292635 238906947 981875766 542749861 786366792 626269511 978691340 917083521 963472188 963180277 992054069 494482957 981045334 876650470 940258856 910291560 919107958 246769262 393041758 123695854 415112787 517321960 877801643 362529495 801485336 201192535 596908301 82933469 373339158 226731304 805268458 70764250 962010950 673767766 775656513 94167633 736131437 247452859 806618069 259771222 905941508 450581761 796464984 91102752 880107476 297224036 305350675 26509340 330610586 174509061 540646881 612266469 874512010 412638107 515433518 386263760 866213214 837071032 891117499 258823980 601144062 743485310 962513630 191748269 374716091 428543903 710530958 154455717 882443800 181496709 467364079 63368804 534613626 390740147 465772416 830121970 959622888 843849844 985980356 529402290 791640110 114135608 574950667 862176570 906397469 134674110 421681818 54091551 717057956 775780679 946815889 435530324 565239259 451644658 527727364 343956759 847593316 432166636 497166697 914882377 980146442 187319575 989761904 461579656 685031858 660859342 920783439 31367953 332843070 370618580 806080222 715759295 931658016 334358405 792156035 731425327 934979534 972838693 976038595 945467363 984901969 3686451 102071212 443495560 740645100 247550207 703477591 923662700 974039202 960017838 981739687 475194177 542604153 852078716 899462347 341801334 829307240 427177337 700223570 767934490 778763466 535797204 562904275 124500267 558786982 195565438 278711811 904480256 945501902 314162899 967883548 798129340 921098838 417011833 427888711 652732828 937600065 875355484 922235587 77081868 865908174 465889455 516025747 344075067 494589386 464339152 603244993 790089136 905831645 9736758 713088878 712039127 810376857 698763621 970220322 396464881 826765207 936718701 937277184 368792831 380432143 404151612 494071613 555887406 666192111 440020485 909190246 621164308 707073905 735989265 852797958 16951567 368584402 202011356 847590032 986108092 997568266 154540731 413011273 592198850 738329617 319286601 668923601 188363731 237293290 266347205 931300782 147550584 894341623 325080777 329009577 635628202 990172499 463660256 719830863 87012978 560114053 263588554 766530069 138406735 755589732 467831118 616077743 510296944 767453449 588010719 882383163 942603336 980117110 654199424 932886391 211996939 519959074 472410356 587929836 114939313 181881528 348173038 353625209 870942319 923325282 796341639 917353346 615620574 980774624 131647252 452349102 762578385 859516653 107210120 373314021 177284175 984906008 800843702 950784047 366075164 441511988 782792091 958652377 871736460 876718758 96365947 449752384 553518319 887663559 1728790 369591731 529664324 733457898 494262746 678274588 75194477 936703560 386174233 666306837 304555302 899436969 922805658 928411183 86524315 118524140 539600250 735840151 654620777 873356548 819756269 993393767 656451943 668542771 163861805 224394517 651344683 913156167 236219549 737804728 726414544 911834300 659509494 823396747 31962093 160046888 682421108 688134132 830370322 907813945 49236473 439777395 583005073 676065732 136245207 140345047 409586662 590270549 450740251 789956849 676809331 866452891 264640504 636144163 276871480 473654707 429994153 857415423 572984637 614932887 391326051 668167855 694332363 860531800 892713928 948719729 408540718 744461272 322007458 353958801 627412524 806514747 285357651 786627569 445184407 931822994 685890064 712522367 856815993 863861852 650702576 960441097 189816819 439616420 900429287 915963540 2761531 510832360 471646210 615840055 859531544 863214814 991958422 993983943 513031785 651435241 160979310 352077731 713065889 736784819 937164352 945565798 459611374 579787008 440984556 679583199 483702938 552522903 582547772 640207071 311576607 693719135 158603762 635261652 813378536 916013488 936570192 940261788 900764997 981445371 588046151 768719273 724618962 816916130 692834691 990343874 117930532 583563349 344804730 508937662 615716339 998896135 244732024 649054084 306020144 556765708 826610597 879197776 642476544 892172344 941780618 947406835 915196992 978882946 382341570 753456318 75219660 304121247 917068424 943877669 336662331 817364718 93660643 415468464 249776846 816621887 500367640 657505173 460226572 922235904 745274086 863532756 523580356 827841840 974001149 985683829 291626375 738502202 889584989 946729698 224229412 491167587 599585881 831133801 72637396 712499681 86004743 552584759 704438100 744351184 182385779 804417912 161254889 955231657 464180097 547504723 314077139 803766186 425494270 670124180 596144257 696217838 191667419 930237301 46251492 688100288 675461487 705658605 981305625 995076072 941702446 970730607 222380305 958038217 197740785 478811424 484012824 612453553 384172367 524761435 911878546 958610164 673711555 886685287 634406277 677996852 229200283 522378711 597233276 894641871 780138590 972141439 200119453 855633504 803748327 954745582 985041970 994487836 423673472 724417644 374883681 732190642 331843001 985746037 810523587 916162163 469463480 945218528 327704519 349576416 115912781 494231004 696788184 997987068 406927395 724232392 781845513 892054728 737937804 752072515 8027164 889367047 959981657 995655084 277843901 563741905 915932016 923966336 379590154 835698496 579531697 866775507 477329195 997617983 665714027 849541106 37381785 900751364 516566148 755846739 69661140 874349566 271894134 493294278 293988159 708170368 782216881 897778231 406407952 832215966 323616632 883284810 757028277 981251834 125010558 312184630 336349526 449625705 867397770 907857798 476404710 909123377 602299455 671874781 683181764 777724479 425315537 884703176 532914110 693629454 159637055 916940908 429973412 835227220 26310996 154373396 702059909 901398387 889160004 996627265 526656099 768103901 424834847 774727900 941448565 988507250 503297652 593319759 741207413 761418767 661313997 784051280 862335934 987344446 325932562 766483571 724617918 868181913 920091865 938023540 37810626 469526167 880034291 894057087 421181683 920270065 773222063 962627366 526433679 926934420 871576243 890072980 574740321 839932807 867468987 930485064 873356773 875673280 109639329 171696764 633100297 869606360 61800990 382163059 151768505 837326037 890792648 913925070 586174347 663015791 445676222 679997085 51442078 586097994 90841916 451711890 218883098 385835610 261738017 449431722 316050107 384809006 490847890 979451056 152430514 714446838 835359676 973808561 230381966 329623714 908161893 989126248 825366172 925452305 972610491 994159690 44797456 259110615 687833326 786451044 6710448 44394396 128987417 457220569 794470247 910946938 357314979 638838117 924553838 936642985 231500775 488730809 695414891 961938338 57809437 397742462 88078681 122120612 763824854 788144916 461129763 745527851 629177756 742897809 90746006 875619225 777490777 930027796 894301200 922777702 936966402 966616142 603538976 984114379 283910714 911941387 949136484 966194974 603193880 827540893 723872419 811375027 261757287 628201304 264679300 806966472 736056546 932481442 666543527 699990597 587913590 597833143 588271719 974557041 183752510 981426208 44310703 167297687 948832013 975104864 440448061 521907876 430495998 818661637 794082114 996666359 494810993 995864145 400865959 815479796 996105472 997031612 403337476 573216205 15520242 614018344 988279014 989778533 129353518 763963193 510724905 514727629 850018110 916576683 709767952 879059529 44235649 853020176 429007264 764505635 258415718 821728488 461122298 964267761 752283158 893650665 548299713 769428804 602367319 747876661 886826855 895858027 169102641 753478056 895903392 974090380 638556399 737149171 767764319 863271172 569971815 991467152 535442806 764039859 321058142 551002218 664563470 935215751 377256805 959723125 410179359 956796470 516050233 948456840 182013184 299819404 605257565 998721882 109683296 386496309 313160039 345978180 701631195 893177989 284352552 844246851 976559091 995607433 675754887 814070725 786586862 825577794 803315647 910739706 509397216 858087684 446112583 617268157 675646445 901128127 231247350 611822440 524372664 603040849 89280588 525217926 369527156 485494948 817220232 825598880 834101721 932831771 429560847 872064579 835371213 932755628 765791140 853927301 994353522 994833077 201496374 557793583 769353573 917378563 438861800 696194548 404220618 581884449 505429160 691468216 325277126 869163537 484193989 855999268 192153616 427618253 56304435 595425494 242893848 744790209 655455244 707132157 436277338 887485450 399320890 632822622 355585442 963672022 836521230 976766488 311591153 856594379 324649891 525716398 164318133 230501267 494846590 633308839 284655592 918244681 180039308 514679978 341657571 492310531 59174055 335849035 812992267 901616966 712331522 938206690 417479095 824863221 4406846 357928420 754112771 876333039 161951508 859880511 713218553 897552880 511134727 968059227 549701841 614317688 748539751 947521544 620103083 819634223 492231921 505959952 588973905 702934954 354895176 675211212 414653439 843585794 436295686 986420273 903461708 940422614 122353789 458419818 454222516 578637508 840278432 888243490 928154869 929544805 404264712 939652388 31149428 329030880 308215814 970055660 24642542 420686502 998896813 999386172 436466656 795905858 40179001 335337217 276630286 682033148 230636072 753017793 119495211 188584878 827088126 896781207 847045055 910031470 159676643 313956388 13695269 515091157 134557888 247299625 517561783 904947930 104334469 555937690 863716339 901656574 895075886 992840593 147830539 587182993 94203978 377277345 566310737 668941918 99765594 668040793 120768503 815922295 205395285 639188359 611459366 714242838 769406503 987767500 607570893 805937944 38505650 318182659 706775654 917301040 155228381 223433461 32719473 803497979 332476112 661762909 446823320 867349969 213008218 971169615 983848747 997069813 157441335 312567755 744145096 784141345 790079036 829074595 998075676 999069202 494551422 603349437 52251246 431930504 418039361 961903786 302474336 408439323 134161485 979752589 993689815 998563588 163788382 949486862 956222372 967503864 689984112 739900306 407192018 680591416 782645759 918202290 630273846 807814564 742423250 877320632 557742359 719213712 406400315 583550633 596207095 903559479 633769187 761797555 343510317 499432153 634914087 735541019 783292382 859316352 845925402 947783493 722475907 862352628 769291288 822627539 12436854 100403229 84449225 205282984 893779281 925583722 329910377 358327301 818663071 949193625 525365550 710417384 335966679 970019722 182918949 612377638 175623620 956980268 868156438 908898113 67531718 97688697 216551102 527827077 112302229 511641288 895249098 982646530 482359792 506762900 967939207 973017468 26630691 606581800 840232194 844612790 654917623 748740816 57798876 483559311 848419860 853295083 749337615 932484939 288699557 854131435 632554757 700432733 361867576 912597155 827466467 853676030 418623928 626441514 551879295 915779504 925021231 958352872 291322931 945674672 307497609 912286715 552435983 979191711 973499266 986510984 181514757 600596091 457626154 615231196 726893596 918702883 606818565 707243026 240755585 426616357 649419916 911157696 255245605 844043099 154356174 552319860 259047383 422110676 970685392 989256080 48909759 974668564 25371668 50891214 774952531 977278413 477365452 477663458 394255859 561957706 700589437 814789992 159513860 329244535 702115030 941578903 884845508 889817653 615207908 647342449 857159756 873841288 371112701 685978056 433608610 469209347 42279545 433163826 722438581 941017038 591947416 858461180 782513968 899792104 402200894 982149005 17520381 797210427 860647756 876495221 823909869 938839781 491117737 877672389 137480127 579078137 256247161 957963291 918407321 971064454 811867480 995029748 155235988 600911118 799044898 919635668 740205445 902373527 259654503 732348966 624384094 698563847 328441830 982612774 800838655 954711841 329628294 876540092 379373503 700848128 39992338 721810901 295313180 852625024 328493414 712072406 439201972 640943584 360818379 796619632 208479237 782191583 25585831 741893549 207012835 964829384 394451936 451740007 375937832 451182949 919645354 963455568 555878220 790256268 720879884 837529971 617404959 751174151 80997519 389151250 354028043 770221248 610018329 966250051 375332451 776288668 622590358 917026267 589579750 808134160 997977076 998658489 30076131 489366222 676036547 747904284 568201396 768481292 990900424 994771471 624670477 971088344 42179293 992740851 922071112 944234840 169328903 514559663 847035064 994830832 294264975 716714944 74046644 899470165 791100421 836469585 43729407 717359833 531313466 625919823 733482766 735033596 108854766 492281605 544960712 592444777 8037993 386557027 655225057 662781781 847785354 887257765 373792241 676218315 344768297 482054791 907737899 973039033 34350141 707477602 144652026 427600754 410206163 488375030 56630665 473046702 816179457 857955675 146245395 527214071 848417404 904277196 818989513 944933990 174300730 667373782 652437625 931161911 335374750 528651126 536246404 739980083 152096329 887369013 816745239 912935850 572700300 656499481 497331572 549540359 834563426 988021326 568877897 628245680 654700964 847994992 121784468 319810240 846284158 920900926 589615422 975601574 773297456 997636224 956146048 975310624 950019189 995743822 264510203 789128925 388509886 885114099 182774085 934806821 387826083 407859044 750783456 841900829 819256073 993434086 919085364 992446309 186985683 740440892 147971694 639112301 532333024 986374465 560087131 703317074 162252658 229954304 305019701 723245814 271526976 596128832 815019465 891093597 689763031 701441240 775901692 793364168 44797186 430013737 739635340 993355828 608134845 961238618 699132189 916781059 368092608 934216322 639295091 941258838 84671317 830554105 201391062 976028888 193151959 977395580 238891784 551247699 940163528 976390433 920212718 937335553 245303677 455391136 662316390 961398154 980434009 983512718 298391740 550946746 698077705 937717763 685654867 806295508 646428651 949557258 117713291 607226202 556165191 633979256 617458335 944497285 139158083 552217485 452206581 799797853 749259579 852013078 575513891 986195638 993939643 996418446 126120396 887216659 38224375 210638028 51073778 725593392 824137493 902507283 666100163 760875886 740991470 764706700 611054314 736787162 845576336 912437299 730648349 762517041 25852396 152124965 690917846 848681902 249759913 784191252 983934064 992686986 404033791 993166333 114168588 625903169 865567264 922507784 261028329 517050906 354492231 966357034 196766483 440105825 795072348 867272645 11570886 659512346 408107213 913529781 682950880 765243805 514811237 849735967 423210412 873385643 216995972 696903886 706522601 941071440 787680482 912491172 48963779 928069523 896669047 922295354 656419796 696434499 154860786 194726061 616021748 888764412 501270041 947733035 792830511 954185218 718489093 865307754 35057656 576350897 181317998 222777229 258685408 382025224 942930135 972054766 756745959 854230499 714814136 790672478 868483640 869649504 704817256 851433814 978220019 980690049 785190490 914333390 664631977 850950767 562074773 582567605 233858438 846505793 500401794 663271332 894919676 995336561 611438295 725268993 983309359 988360749 769530 38337047 94289793 449679026 484728016 885214403 493874162 983080739 144714642 347552820 589448281 794555110 107028673 807294336 119134661 683502457 267467021 924633547 566288990 748612230 395696163 611073492 605967891 909540747 964425373 980557211 452704513 574641169 685042259 861026989 321014657 339264185 615375008 820308708 966394532 991549520 32650738 153898611 750043593 870975454 427736547 982554303 807146736 871289344 191562417 490552962 723429683 798714907 239930731 773181574 739056591 984978691 702522960 850930158 362997664 655411403 849434120 894561104 585689018 684279535 361067438 614967696 845318703 957503290 442987790 516131566 507192129 872413130 627966758 951943045 639829438 765314876 275492843 792448766 838531200 948081753 922825004 927864113 446217532 779584552 53620739 445119509 263476339 629300193 743222490 965738388 285096518 386769990 116510435 675703357 48398605 784689430 787895064 942289340 322969886 982987342 492296054 899046838 587111878 740780426 488414453 991947179 780533462 970656531 413312164 428400047 57973838 949815041 698131420 900151693 107274284 256755892 375456293 914061363 20226266 766975359 158067372 801021019 517991702 694458204 987092770 988510310 964686551 974758104 933408954 951544245 602904470 730405124 400902622 898933865 594523746 792462526 150612031 908761440 558641425 638689035 766270748 774618970 2764743 433920149 682145520 861156475 486712886 927070151 234598050 729993237 710383809 987799594 236655428 335033940 561280074 760000066 613291673 668088245 34072376 517795543 778928357 821432346 485328123 958222410 823345611 934307216 717358716 935448924 161433177 370543400 55452267 516681525 261529708 276504727 679163093 919555365 242558423 681743426 973154179 992143881 707542080 995681963 257711175 389329000 541905463 853645419 292684328 297287772 760024674 784604652 964901052 975812385 384894851 512013440 166480080 996431072 572519525 655507247 463313268 640797953 931614295 932995747 825145000 853144218 50021556 728893155 428642671 510762611 388628759 604203121 9227022 171792755 707976412 821732866 184797485 282551979 969147633 996559961 692242639 988537147 301309751 613571256 932692872 945734268 574020526 856846247 551348905 557548400 54517071 247831860 624441864 893340110 876794443 993263842 833017230 921514307 322825790 620331643 126819042 907492012 775584835 787680313 575721131 637086565 493697538 801981364 401485391 923610411 278113994 764488474 70456336 659875846 549064669 682551334 972165616 993281407 449993054 657877527 593954441 759489920 487931750 884198113 440056667 459982650 812119476 907884891 102560384 103030591 356497091 383627325 70730641 345502967 874695340 939522700 359133 532615065 317588902 983248205 955039362 963036364 933834315 972991865 828490548 982454914 587929020 957998150 15878879 492779358 168346368 283080925 300831061 666702670 530055355 790135005 703953437 748158136 649353906 946245032 515351412 925861950 161113711 887659830 400689479 819390901 350485473 726429830 277372018 679335425 10109337 702494450 282606705 961351263 651732089 862173618 140769696 313891420 580162354 855423162 796001690 797652133 483266968 501475575 558838595 633525077 266262381 387111857 453215501 577092684 99725270 183531454 225115904 628618311 629299914 640369372 466791469 535457133 905710745 914489490 529744782 947505108 234876972 378764037 41175678 715698281 355219064 394839823 958805297 995677568 557837728 788756013 235053096 414277559 222287299 825156240 161474751 849250693 403590842 680166375 407985724 760317015 173517649 204835260 631968217 889123230 258077050 802059507 697739662 917441155 357173880 947749496 484295311 790681758 255780921 721279736 726462700 777989333 772557270 847383535 998056981 999380863 109814574 835758107 983751858 994960536 25786204 848524125 379709895 563218950 143287329 364138371 173154226 216883736 513616334 820156516 856123140 907443393 478536481 667308555 864058749 974602881 88351044 164683467 305045027 328595091 241253028 881545471 317202541 554313557 192376678 914804714 245742474 723365083 741839410 944961293 924345438 926398076 941129940 966414472 931598761 951474606 672427064 968595020 200394909 361126923 441452136 927488112 991733421 997350698 695946460 938055426 810881422 992572720 461247605 814817974 650791326 821451446 978436300 983782165 791066002 851484630 20821601 956665008 234789313 453580528 284644459 873974173 638681715 748058948 862658278 979754417 44951053 369010609 307447138 664353687 575159709 996144638 102346589 810740019 20819204 808928739 689795934 924208231 176582908 275917850 57208717 189991359 32202328 93365776 294361934 557844773 270926101 349008126 143726603 919516359 43321844 116694844 500850755 806472675 622640264 699720472 207876162 240404726 678948392 793060661 724587699 727994376 644632008 977377895 80960654 329338835 86236963 762385874 700852246 812326863 660467028 993961993 452758129 473733694 405451156 461823259 76090915 762790456 978715525 997849493 440970612 667981407 789558478 804707374 247349882 295710373 918735565 997282171 420889684 931618260 212239708 872492469 619802756 952911697 794925729 955414425 972190212 979841631 992220404 999003930 839243776 870445869 171649147 867829971 384454348 836117020 906831937 924518294 382708357 691890732 842025889 998441790 899871011 992945671 482607117 789922076 262601516 735949274 623830211 771697409 117848125 539175387 531164535 821412515 103796511 980587709 88505984 170531431 778531152 866655575 801867059 965157515 386615030 476518946 275816811 718667388 167707331 178673651 63883268 99583282 855326774 876373460 272468800 794372298 248458196 793967687 436907502 652245823 3182348 565691752 680081474 707454644 216747834 868068894 455003805 603754636 233919674 601003317 307162790 323384263 131995795 424199516 649366916 892557489 704379231 724280996 481348225 706982478 377241102 639010725 970063863 972556988 569222841 748161271 865920763 914125351 414973296 535646354 410781338 590392961 523803851 989969516 752907368 836284041 676029827 858607551 894968465 930071452 269280722 414156140 898440347 994808168 813758120 832972158 497172296 844349813 331450688 746164312 352855273 429212358 105153356 905023468 117498657 359186879 571612218 894272419 137310240 635659960 730072342 938993477 860749725 947255251 646561388 721232486 888930567 925523642 591152966 961120338 779449041 940743920 952504022 996738376 274893970 729170941 297325655 303642817 522843243 981752845 891312018 993035644 402437140 672029471 523050499 886595921 410281788 696830929 878083573 952764395 505667953 767093045 81531205 839034697 94759526 542947576 872382731 986183909 486702536 778334888 469385156 997501604 582253899 663361062 315483348 851416737 375389604 572475303 267920297 463219204 898589358 962303310 942255371 983686328 81444084 261621300 777403350 938581699 236889876 239320253 235309643 448033349 45537287 653142395 340809526 983473958 291246362 795178380 342469353 779667569 976930221 978911442 530363442 884883373 859198546 929544329 23472045 526515752 857045242 984898571 663373724 696802466 961802691 967410763 589112807 837536840 256425807 356079851 11748860 139377634 734346919 997826988 303318697 407548040 111984455 955848139 451441521 757519671 903970459 990660875 638580600 926078394 679306233 741397748 975681510 983834354 745077647 791729630 281484019 357656416 210065032 797459407 625215353 959346262 870953516 985534562 553831796 979161739 711272212 903967697 284151497 511326930 373502311 691807563 124395317 151853269 141636932 587535861 508581185 554768137 86191420 162037102 605324435 919546454 44179963 677488404 748426143 890060214 245544113 432186133 719963471 990926658 140859183 746233807 248204769 600727533 700280517 856844504 136920163 149739464 863824234 906144745 158904056 769632497 451776628 670194814 216867328 617092798 417056603 445868391 173990637 704880493 372512286 534272790 378097561 520388841 303152617 624516960 681290579 774226191 445495031 590015776 511185279 717769918 640388110 704782098 623647795 966597283 602131624 700731095 365670548 650994692 76029397 975923212 23118853 219633633 917398061 978386661 47396662 474542607 142630698 364164933 511274112 624222241 166575338 873947251 396003102 680715401 704453068 929250458 282053757 990060946 520049367 676426339 542310359 649629278 298069455 344259278 5870289 218160033 531880830 765487050 922661629 982749236 873759728 912063267 858856002 884272194 811979640 986044613 710724431 980048534 863846278 960857863 152944473 353908817 707685996 802958494 323920121 754874285 8104057 311000426 419190590 619570952 79442338 768201024 745671408 913745030 271173441 577880403 792323356 796029226 698054968 776563576 164445938 775584790 456734788 498995863 55663848 89170532 269354151 875471069 774662087 961957441 157902079 730982202 87615249 105655425 863215312 877776988 402343340 683332217 690314006 848846609 824303557 929624866 115346165 190547417 496171114 702839269 896466631 938234788 13259793 443006855 335731007 612822882 944112551 970987695 57053870 685846123 916040914 935052277 316097818 598506362 841042274 872861903 289446175 308594778 979367226 982425337 833880334 970761813 31728984 590402500 267744588 989195694 822517111 863724357 497625474 621522182 131067735 542434900 393057203 861579218 541987214 629968205 854123326 934835043 338889753 982393673 499080145 639401133 664804032 901820729 596296588 853815419 321939836 935270239 495325864 531423157 681158684 713755116 836748484 876463436 733917601 893768048 992065272 997577287 518433002 560946333 505489408 559958073 123413124 989911364 198894667 623300530 393987778 487736154 799446857 866486716 372830118 471026888 366844828 680863786 190162972 351829570 626384636 692667631 527059495 563935289 571705123 686156317 661340286 739952336 753129256 937342061 691660072 744789310 406341023 860402672 232731202 256365103 892104110 974529602 872348979 891712519 240320378 813020800 604299293 629175916 91425809 384348173 152604210 340418516 692491163 766686980 289352329 575813018 464873833 596181352 973520189 987028915 71805075 420445775 253854663 462468677 418558444 975050352 230178379 434753449 255340195 830921440 70419219 451345425 624369287 952595760 746067827 933949226 835353509 940626841 423830865 596986479 192542410 265123055 657245520 662348538 840836623 896394705 834330105 974295113 777791151 874700144 896385608 942864279 517865659 800390342 27532903 747553040 209933762 752443982 374994496 656055042 510432279 750097952 932401470 990474942 280032468 684495809 145493654 863235684 817555717 944293524 532236729 935187722 278999179 574920708 180710076 915924256 962945986 967761786 610699268 982288398 700270587 899123834 344060397 731646720 703750430 769201998 814976650 864000048 100283022 381829139 446164647 699081082 810392471 939695508 733876066 934108433 135520292 433456982 727940892 933470524 157090021 948024589 274131946 818294824 975715871 985892667 510868022 920682271 914171919 976278507 374441860 735984569 300537544 806122867 10411992 937723856 919788081 964647903 176798863 813135975 269649791 341851310 801461432 811367258 20325067 840961177 395747201 945718987 694377848 782942531 606969114 614271644 831312194 993849372 874671077 892961279 533543612 533942488 785617335 888476538 785825197 940027719 102061106 332357077 657745286 826719585 357302266 585447064 883063243 943192747 941986394 957594526 676000548 933458903 48417009 448457535 617672970 892514154 802804285 817794724 665883559 832815686 737277885 871750130 732076731 884680250 456543825 770092983 109147685 781737163 617114234 713496502 625139588 839590096 131819273 230709908 346069699 742768179 956595831 977057187 82185707 156143758 139198544 930884162 757846307 800260120 90771865 192957341 577410186 965125178 191532034 978200145 19633348 173048212 924204961 938340976 785195866 872789897 910793986 940430482 821671012 939290238 781797006 799318037 881893355 912749184 400218536 818839546 387851315 679887683 52045543 921186925 707293523 940853737 688001456 864139669 797354889 853493979 170185938 632194796 982016052 983005710 188178008 896275946 20568799 224599760 316398851 571352868 679449836 749117756 326706702 517408711 297650404 893145961 424719257 917117859 93640082 129806668 250784127 561913185 844258799 968470057 160962079 509356609 984246385 997933876 929394520 990518474 767613939 870837339 199530454 608580516 639817444 861710430 900521445 946102377 384940961 775540837 70597620 255942459 907977565 967378071 322167171 427197808 87443100 822233265 770169770 805173970 648804746 889325749 148422754 828123381 754722808 800917374 718884574 956556682 886522633 969332084 677593615 766303335 338706809 592332921 235406085 984814296 478116011 625885723 541740916 711984737 136586973 136993224 372289075 378357470 80562783 325651724 351553930 962612952 903498278 929698434 620473085 882040268 806641508 988999427 674457295 917400519 57724209 953343003 223663825 479755256 78647750 893898024 694989927 747105129 166718297 782132818 379115112 919419024 962920502 971573969 131968280 157077794 251538821 359715520 153594140 521211108 903850470 939642460 917400483 927622172 701625187 808995501 166619086 201747531 978627962 983333713 997564049 998589139 767334403 828639981 413886541 881931567 588236217 799842858 700192806 744096478 387206535 794520439 461662821 561695677 666121875 974452882 781652477 976499609 672975793 738873318 3301555 903332201 367663383 861121136 39731864 455242521 707450516 960773258 25959862 516845490 776144605 900174253 9194627 387979830 179390752 988097276 91288123 314297920 548330188 704349295 116266893 793954776 348801091 936035098 187388496 785678620 490476688 823190387 428483679 788286890 359142710 569646353 28250302 35064966 250358594 491490474 534210180 931795790 527465797 950917167 4007291 29803396 147657298 306712588 19597177 460394312 276639251 844323030 678423829 811375996 667852773 695394689 692533531 906131749 573195491 795808486 972187801 981201560 435615509 799444457 583180860 802059100 268414554 367318675 435381986 689529579 58573562 918609654 260074167 978235159 939566413 949135453 885328185 977810165 482814408 509542865 59368203 819395135 549820320 943386076 230306598 758428602 832377962 946145790 121669107 176574278 763701272 879486505 19580191 382209734 504779962 694698044 565029829 577438025 772539260 826047127 525510377 868564855 465386462 582685127 387154675 432810550 218258082 764296024 676707523 753630811 972455624 983156048 74860056 471057521 999234389 999387298 860381544 869533694 459661477 785205070 411210113 819333161 889345677 966911491 875772645 973299491 64922116 441714849 173704912 734723384 785964805 829565812 729904399 877321626 109003015 208154043 308014405 480361041 555618300 723062580 508628448 931918163 902925320 931189047 639577703 950911434 70623588 661311614 155988602 557835068 783380252 784914187 129707739 965646814 274687174 953984560 218440644 505718735 164082700 297784146 389420086 974748156 195475424 307729421 341946095 490889501 24529880 802394397 557347145 705378487 680579038 735839930 358666360 600014153 232883507 558488683 636149858 671327827 247982983 753237841 930742560 937270659 145024793 569896776 187448722 886735006 26654973 939407608 788439908 822610192 409562893 463629525 158449143 290957902 923545935 988893905 647370849 650142095 851592540 991994672 527337822 622503452 134015273 936547686 93730981 324913776 435972108 749979177 256951570 595495469 933070722 996376749 150203660 753867749 570577459 591997022 491579125 764358325 574434268 863722041 180896205 601029157 596785278 705942900 310846447 412272314 564540719 908063345 429344692 690432597 38158148 619554261 622637805 948736983 132717707 620394202 614341074 949217151 234438784 377925769 841191603 900631322 695356059 933428335 151226317 863359630 434535958 837646212 104928916 632082947 523592166 861410532 259215397 709782462 433445407 482270158 827361835 990143832 642319488 992961599 937741669 984954745 160802920 960521378 332161889 530359905 294603596 561121421 810529566 994523871 274041915 594381025 273644263 389522301 440199842 809629274 727662061 833426049 188468699 300905047 97048258 594512530 507730472 815963638 295743842 527188343 231703372 924900277 902205250 969839513 53266386 139169018 864740722 989254518 197651080 487671878 340766185 416847722 373361581 803910259 796120930 925495300 2727742 138120606 448351645 814127638 837910488 843915750 404267154 755159796 773444946 784694823 238525488 848427515 878809280 948350866 123613690 395830955 269122849 993147203 295277715 803727165 743408449 881228918 798309986 943239003 800782905 969132347 998581401 999283198 173785172 348660025 186475177 337660500 710536492 838976213 701688456 868718568 269122198 696340126 38591236 659852295 281691880 669516588 270438763 460901777 539501282 712618681 389899290 691094152 446614610 928262075 573901558 814993496 887438208 933783659 10401852 331487643 189346829 680500136 960306347 995227440 246700255 912152902 779679099 974788806 949187255 963742198 619083988 966184103 771646186 830671683 546674741 643430555 591299566 841065829 506809057 570936144 386456607 751310164 672049604 946638624 539318015 566116776 863815681 926322354 263098778 883662914 306493462 765662502 418857916 752802792 52349538 470391902 698731561 875015148 37785460 520351472 945881585 955501565 235399232 721457679 777881847 982791841 70819911 313593377 13379628 145039407 442402963 542854983 143515562 618903400 128634228 290244942 125178278 260474417 58731395 274511714 392291128 532540232 874654069 992281396 447846440 632888886 309929596 379095607 294263456 366119104 571258266 806121086 936636661 972489247 281382051 758868364 340811045 665322658 595413329 903162151 550919175 765888800 647324935 707815006 114698255 483567425 666854995 879548510 665341227 876638566 355162419 730562352 674687686 876216481 696122466 924771882 204953839 419213111 261518057 734241026 834020587 908703869 445787527 522507463 878103973 881251177 303762884 779972077 566555513 724142519 400443608 982512981 783214448 814962181 270657855 820014334 803624029 897541571 900591728 971253018 322261669 782872427 987696832 995999551 422745456 969171964 24192352 668081114 681592176 872014815 872052994 947872297 705670553 982928658 739910420 998510448 479422794 602010199 290146039 433742326 749567088 918546281 655352828 829472740 938369901 968556573 330533616 626511192 159101460 422704548 710643194 987840195 112866267 762261355 932830200 959865328 109430488 683504409 902265796 940552802 247310654 811222105 710360681 713985050 771280899 833083049 502095746 553429587 697669685 969819102 576544374 600903923 384683755 784475732 40466590 424514898 518566855 937625220 897983140 993584709 638235987 644464934 602128254 737694748 927380342 954318271 738169061 817959524 362275079 445302058 977716128 983064475 676095842 762546479 415670592 898333922 756547385 790905832 299115683 489788557 429791096 675441004 807338930 852984031 329154242 680936905 355658689 607676638 848973342 942461820 956051884 997756472 242658771 417713721 365932271 815651454 157637206 752216728 20118285 510351692 280936808 717227382 195065759 465535044 598194989 673860602 839736048 866957521 48943133 717269278 315521496 560892113 203453794 663185794 278003247 726763263 636801156 761673906 447675560 527265826 209300950 987259896 565851482 776475006 432447978 536821812 465642369 689641135 197498778 922501127 241254662 261383670 257940221 766722228 961222261 973727680 866713367 940234543 211864874 641737545 806310024 905797022 196399829 484119943 704442179 905450060 288920835 950917957 963498536 964475048 678836239 992835855 717352542 850987540 862626714 916254919 450140220 751800861 237694440 494002698 392245017 987711573 975775490 997967787 543533161 803990960 281997086 540852622 554892058 568344400 960923035 981608382 263833941 682101555 609766160 898966506 213992577 879100181 504533455 620854468 160194618 691627149 119880401 366177775 21452203 671036688 26157349 906185685 94391926 780964004 636420263 993520945 364951955 506563786 690772582 804982758 727596965 986618282 898792875 915298827 826321335 909613969 808471795 872362171 955881699 997548530 104653099 423046595 492484566 657002765 960568582 985355248 461058855 479036693 826357933 853090250 289623462 516955510 537475959 826717213 812524277 963340552 254564542 599765053 698023483 873843381 893626678 897527361 131398533 921592117 708245450 835284001 303520190 904850831 970493839 982369234 995610359 998434526 408269962 446627090 602801207 965094013 263448520 423257335 531372574 770206560 67582883 275316461 739324529 809161519 415511265 502918722 567584470 859662584 577175547 853740917 116447331 827177899 927092866 957003070 289885712 741406661 981647766 994937556 833964373 884615378 263307025 428100391 991562178 995911402 432812000 960300016 14262456 949167697 542246915 928510528 83639230 226630508 636812054 894501859 270092031 748985030 616861548 805358891 227865505 627199957 962230124 985105950 506292974 943331710 816264617 975169858 747466566 960931879 584225722 753617392 195960961 439444914 455404744 898751264 619864791 669160450 100752303 927219253 693385302 870775708 476841979 972807328 640227389 839915718 799368008 916120919 79502925 630733955 765289985 976558158 326036613 521024503 2584952 900755318 430802259 491819222 696504694 758617883 478046024 562020053 775804487 916887455 727953130 781583787 909188735 919498417 284563524 828023525 680535505 723900158 527056041 645440741 318696717 884482995 857452035 867159529 641337965 930302671 986943300 991288221 32026363 244590459 653321817 944432649 41490129 566169980 528414030 968062770 374202871 949249347 367279354 571622918 255326757 701187032 531472255 587261151 105855528 986235761 534866073 665332616 492282359 779269553 291804912 425092750 290013611 399824380 230871956 642052666 255467892 564964137 403621349 845580747 461165814 506004957 849648920 964820264 230416247 981336928 918573791 996192619 336904959 909963060 795598469 947817751 8049116 682942382 75843622 728716371 329668450 367073498 208582751 657961712 904526333 954772954 432291580 989685059 359453183 958575713 809085060 973970133 881211824 904071542 210247393 767801000 641792157 752443240 43896862 784168454 53698196 970734842 727024108 736198377 231078091 912751651 386227859 753791318 570070630 623742738 501182561 578166890 804590085 973817347 652635063 738516393 154632982 635494070 30608481 782249095 963610105 985547880 368718126 523994535 877446979 995394705 250224328 674471691 912265323 938487023 557718623 636083034 888675832 939587431 528762608 957003608 724484579 772694344 901307982 998896118 67474377 209522600 682603666 789179068 651114181 954333752 809422636 911103712 747544131 859921856 61201530 639856536 112717699 322441456 757076646 802555455 865253738 923075330 422488503 543617701 915550894 984548966 235952504 929957559 661272492 756510252 942612746 962451516 962630590 964816330 682403934 873854188 784249369 884916876 390480486 699656322 572760454 790864531 886272820 989964739 478826963 674962705 467471755 788944246 148380754 840251106 140493496 657180089 129037282 403857976 568105203 834041029 156534617 608611276 827464608 955592382 252700073 285919949 105003475 590350602 710520954 763961622 889867622 975157434 446071606 628487299 709667067 887138935 85141484 944138543 144963126 451715468 72809645 666873272 288386183 634438604 240891446 558584906 124339495 924525396 923815307 999115873 403757403 564348672 894446642 908167659 719235570 754183663 434758384 490890632 619008584 621838543 448985672 535763034 163954932 337718657 371522133 385352158 467254171 756510428 98207739 597092341 132002249 827280729 329050382 536717597 935631987 985064072 521214986 932659944 272581535 793372619 83057546 431058851 540112741 660459898 70767479 631381717 12216686 81127059 718179209 947848476 184202193 600612245 869034718 871691594 812752894 833849530 395421726 669360987 654907278 812731135 399021977 682538681 243220456 357872263 471157196 956469881 737360687 958651675 111968341 865783114 174857756 820404343 316656440 682660359 184753880 649880751 591553854 894560678 805406310 967052156 889770109 904764946 957815891 982152431 452416030 454794166 527146862 658319998 874150055 920890635 771497745 814340042 526147785 984525715 117925454 200148977 620147710 968854423 263852206 710817747 637336645 982459186 716435351 875646290 999321368 999376063 479514823 573545439 570835752 788440985 397205255 766352993 904940064 950376872 895582140 969006492 485102277 966427786 667979658 936870888 663302765 848196960 849816840 877858848 553453421 653448878 861251735 894515487 586280641 901031307 866549203 902261886 345084600 914693533 754044779 945207646 193771235 707288081 147318844 534544235 369472484 572194694 211544726 597325747 543616325 589511477 892205838 892983172 362583066 642372646 640524645 944278185 50908217 183589985 140751382 380122317 16790273 664616865 21004140 372838505 307047684 977633933 881652468 888364531 206310367 900161715 184694570 593985031 168153044 640565237 784676480 929197483 964437017 993838456 7143940 282782180 66027132 420068767 141435232 647288445 615084598 956703100 668215033 803311289 269528358 790587926 49645741 112459198 513065112 806498556 286735617 761107023 490627001 604572313 777976008 995763953 233556417 788211850 813330421 911451098 452556490 738624611 362431606 479935608 611112747 905953094 905418105 957290957 944150095 994818118 257760998 385598271 441265534 809812231 421580322 486251579 792943807 886618061 407338642 573726069 689473200 975503107 909227281 964904607 716077643 865303917 381444508 815471191 627881274 764258850 221050813 973231175 342408208 593921353 53002842 80945718 27439517 166010256 546901314 575985513 494598667 838115956 864681567 871412606 515649060 880424989 777402157 995185853 804967055 912905278 422403453 556722943 96212713 957103130 239771784 794268571 767309977 994411997 872135329 917244437 971941968 989912780 440217443 884900200 869969098 985009440 754007709 876657788 846801191 945667575 62823869 486542390 126984805 899230615 526795876 557360466 984307402 996413118 457986744 718271084 628005040 639305750 767779139 935347361 170302702 356952578 812087510 928621997 349232121 837575193 217216000 439889864 639079576 668367342 246013489 701230324 804771898 830389692 144121375 156458844 389808165 402960616 368902141 684925039 952928159 982740046 781156810 852320899 880573907 881190528 525081298 643267341 207230475 693011041 789507400 897576493 706158449 968988096 956928883 969932078 264943342 304907667 428115969 887605325 210024841 596956629 176113946 864046259 163960174 393119476 649133044 928660700 297869264 574066717 551130508 834220338 810203866 980198673 321127027 804026627 468937097 809866982 982428740 998644508 498389683 843242943 72585080 565717263 941269314 975169934 12939491 559869875 950472957 974342906 709563635 953988859 593957340 774201127 644121526 962763440 73873048 482324114 967872305 992497779 231324670 865985477 661264857 889993832 318137479 342740177 932366649 937123028 697006745 886957148 443899868 598383686 752291612 956199072 294683446 652977524 874244395 986902452 825699425 913163203 704056122 912092416 564482668 838563215 432769852 853468465 849315366 880244954 155517853 512003551 713800271 899583658 118869261 546840560 617272727 731609004 386346636 509964820 151509223 250877162 749147785 971511016 555539153 833781263 753306619 930984010 674891023 765846029 611368618 968199257 601782712 927125062 713774589 780011933 27367098 840680719 819149689 947849184 818491918 997313782 725468894 820858797 383825009 650729803 955450019 963616851 296054541 642116404 604173379 734638153 509387727 818106627 644333953 729010621 641844880 982594346 186446349 357974348 540672308 792741006 844096376 980839656 385680239 798506099 570214021 759295299 713100309 909707035 938251455 982690310 692729169 954087351 483573563 695106907 197928731 245518474 825846036 992249277 866133208 954890323 213852955 972982481 207293253 635782289 246402395 933729360 34339552 585628086 426240397 704343996 754116504 894965157 321409914 902115900 285995616 390846549 223759601 801998563 3797037 846306673 659677939 798775301 887110805 968160757 225702811 573700604 452984866 954644344 236427158 959789269 429713759 978993129 365032047 985182935 835601253 956125354 793505833 812411812 397743308 911685403 144086112 519931186 593099859 932924674 713865381 868464348 407783963 676543748 275334222 319923504 750323817 828156248 725100754 871718380 449885068 942412753 955031755 997455793 791592360 959080130 560407596 615751492 712847383 830917505 242576965 729493920 372446556 532224623 681236088 766829079 64061162 553640447 849463717 853163013 284320827 353941511 135220395 313052592 50924817 469755997 369016218 824565494 719407859 788110952 585250443 891577968 987809832 994635941 674455356 931950364 250129736 940712662 944718966 956530573 711112432 794513112 943480520 969312042 383532078 707209376 502709 868253168 775586952 896841920 656166565 771765173 124684305 341054316 167881670 688215514 531208413 670918580 547342911 947220915 611223794 968950338 262269267 751086516 707321214 811148166 867521972 997033668 649924081 848624915 209413628 533814074 156651155 946393656 839930702 906595345 884683268 978848264 76193232 239077029 967937620 971411346 360680935 634322118 436507376 955834504 176409536 180869838 685766830 911400019 90564577 296482378 301928518 757601160 531798940 762935670 585435884 679991977 828426194 882371126 671059881 922742749 388606649 864449146 249505675 314603712 531412265 540951187 296488346 543522453 914192313 960506735 968967637 989391768 309668289 418950498 344612378 758351707 506758866 754404475 849376325 896176537 813291959 855661200 698556786 912222536 412223493 733521360 509397488 860007785 340778601 887538589 345056583 875420305 260105864 732772078 973128287 986310606 47871110 974823235 149769590 964878997 666701288 908348688 11789768 565827473 82309988 246324585 234178662 338635755 833167934 916923817 341638666 757332984 956398156 966566789 808318371 918049477 714664512 909872090 579768583 621385188 450321029 878367550 190337134 957076578 414132885 809165581 159567941 453236721 166616168 912350332 751040924 897771820 936100177 946958638 771791800 966671029 459542429 880455027 178235702 689981226 937094162 946099064 517154001 595132412 341939726 931341348 217531368 572916173 154686305 296133141 667244858 694729073 364164572 746661189 456291126 480996060 367868352 793217419 43591030 541369185 91450220 933510473 506619257 680331035 606477290 790554565 36514870 842892352 964820327 988880454 705411134 927148001 511603955 618007392 57027465 707507048 263936733 551564870 97860302 572477283 552842000 911427329 612059289 785125545 806714549 985709583 683840893 856476608 562733080 885819888 421560634 605071493 69525138 195351858 608407381 678673612 60851877 712576875 689055891 874088724 472408379 955897917 920210565 976607857 786535839 918853885 870750682 902469599 869600796 947584932 152285567 629185478 604400524 617682979 343767634 639363351 93598169 544305706 520585462 998804073 792583202 799847034 302517647 960157294 523589551 574348802 658644929 878675210 227986164 777465580 560041428 641805106 666262323 834783777 253740787 515814519 963225614 966199317 973198949 994165153 644373136 950715274 606221221 639335043 858462009 981722226 533088963 694960900 380381231 697255798 135788517 823725289 432836582 814795768 87934225 937797132 597412569 970248264 570857589 575692583 785365975 789649764 99865465 730747847 747880519 983912333 975783381 995642988 148322389 985581607 295855856 376874211 647907312 991661618 885815750 920330465 38775679 99962393 861592706 906008628 329969867 746263965 743042401 953661804 350799492 454152934 636087156 911228807 317712072 500675283 320898676 871518875 490762337 648083726 642407554 870321519 333371400 803494283 419571667 756353360 962606138 995970456 272902499 556043964 217235478 872847116 296114998 748511187 780328563 943790531 17696166 947139719 869811585 872158109 11190919 845986742 517730147 996843674 380625850 487725109 564299961 613025799 82005455 858944850 4885783 86513592 643998400 939727482 384354393 393778755 642995670 709351773 528594557 998104600 17985616 966775373 130663053 864992663 160930574 513135453 543302585 593498093 15431387 536880612 930915867 961381977 378056960 937723541 634635205 853882515 511768478 902978092 800861073 996979204 757344265 895843835 197087056 654020154 86264277 434904650 690337273 889914314 446618106 482690054 732817063 959917837 350592568 354727990 708018087 918707817 64607770 473744916 648113657 749823580 805090938 828453375 489203567 733611108 263136169 929933772 785768984 865068008 802663929 938484344 223729815 567830474 52129981 435053654 36282211 941597415 606496536 645584615 577001246 678255590 13367348 902945590 949420843 976181003 867835811 956488675 463615483 724891830 984840258 997190114 59890090 213498549 8341457 443083547 952674299 969048232 763651446 783630912 72468250 797390934 278257106 370882930 712920827 716056621 319702316 384787170 952360484 998913160 794245256 857041982 805699005 930058069 346497492 809411267 576295121 644710803 441998231 788094473 824289306 871744442 819960805 893521606 245143894 348236452 754136684 776301469 806839682 893781132 542141247 977944606 74381010 366022936 831585997 893273822 721392533 936493077 731991458 986378554 213098245 442046851 480123224 766975151 313982580 535563194 753808822 820575303 203579619 676996137 278314440 552762237 604132178 673537965 139714278 350654595 342813906 784303326 485916321 577269889 639950516 721793171 920691573 996445496 805642219 935465996 70916684 179091989 366914399 682463082 746142634 832568169 16313403 168491360 370828195 905387123 348705998 442652335 169056772 807550824 431578951 985336666 250035889 275902368 803217821 832470333 811929448 947938614 777327507 880187029 990433098 996533410 774679339 863013374 665373539 918685713 821353336 962340184 23743033 295784547 750807807 989206215 217661422 943156520 980857622 982704041 891683054 997720524 784117729 859342458 797398676 959596141 786974605 967955467 228883365 331914412 269641268 958601377 878014795 985644492 792581825 989334926 964074729 991049476 50253016 327799452 908647934 951057136 639583615 859188302 253071830 806683992 121466975 677853272 302917433 896574312 325902669 960656377 963163155 979393050 424068541 833660020 473411766 990546003 491151558 860050596 428924168 829440726 120598585 247784018 433178814 580038588 964007008 964080222 41413726 92199116 985136413 998554431 292668948 314336564 890289369 992925693 229417206 829605226 649754798 956867497 345028660 604176971 489940965 522465686 572877761 964360963 61909769 881529406 755853097 911455428 518266223 722946219 762349920 835967749 351402082 454625837 556371898 747807967 237215529 624320044 8831891 66550617 736934784 909208605 213261263 229846776 971707529 980040116 257314554 303541253 961913332 983274572 858538475 987482351 439786297 604173911 289230889 581441749 800374095 892836630 346599198 840999946 565649999 819808526 536528573 946723717 163963093 193346155 380830937 816200783 118865528 839564725 996668545 997685597 79844320 901884116 623718482 833934187 876999795 888158745 95486409 716348899 556188207 881510344 767419385 838811029 433947961 492450445 113194842 333184504 949576945 986509718 896016976 996075475 120665963 915829107 167853308 353444894 244568042 398225506 540434409 991326409 921217234 997401435 493265780 675821407 871953587 976779916 792234121 806313750 472917723 961607167 810754291 823998897 566850836 789009328 120391998 857222728 193134657 803728865 64931 880099258 626408231 724958758 632764852 990361314 181703521 603997362 799464122 935759122 239246911 386877971 464134553 962893124 32828705 776389241 881176567 988357860 878488107 935981279 656786318 889805129 818498909 898170205 229004300 423250574 520835500 593939415 756166678 833915926 56629467 423895469 568455347 623205059 587207230 947769791 339018057 759701323 39725806 401082923 887660952 978635587 47834377 372869288 767465230 964375407 518005488 575665026 24720378 180996183 418517683 933022920 489674309 627646948 510666612 550073596 739460486 853604199 166511592 382339995 605031242 700039923 931528904 961234954 768970502 949275222 278747958 376004588 734155068 743195933 360686725 648600048 164457859 301843314 8198311 428837651 634855311 904028763 178665113 956220898 137850542 565274926 984358541 985387013 639352583 885952177 831053992 974339390 256736669 601820537 666344 883199565 145089364 415202638 533000618 702241038 491165334 651126471 192470309 268393384 607405999 924771943 696143084 938978954 482845154 634450213 983456739 993131374 227547199 468865838 469762020 559864849 166366302 225229722 30098927 319055910 998006641 998038979 233049920 582545486 743201082 934130339 572649732 906237926 607910820 900917017 463133445 935434973 583709890 959943338 810061435 937170507 900293988 968748365 959682155 988687757 275206299 436244989 616618729 705280816 436151403 907323547 421228881 672931003 787099260 895796894 543629450 873944817 190881145 742689076 345175950 882276713 281143666 520561047 769402150 836151038 923405807 925838054 45464257 570476969 523076929 925404036 420174088 755863912 893778551 991298231 177488140 448030813 352638993 925430766 746222264 873265214 928523277 930046295 512949351 525680840 990321654 998704594 35793475 992235175 798023980 888880300 155411650 989089798 918350795 990238104 7881827 588319463 726688137 767540347 905150087 934247662 212670036 541188756 431788278 771596191 169563707 319995937 680631256 937661182 895008148 953141611 447924776 601631877 8941152 434799649 756146029 892690610 909821210 964782697 752651437 782690382 811704752 948095453 333098258 660984614 170601073 866772008 894482494 982130580 923764678 986066683 133492143 530690300 160226708 808615770 166200075 372716783 849952419 903070189 13018482 693438458 940732205 942904518 344798323 489111201 116641537 995287442 887624997 899637991 765999869 884278015 497225994 520957759 204866814 234596766 201605052 273223119 71978588 979791414 931960869 986056749 545443745 649682334 572126712 834192096 860141816 915510888 801262922 964205735 406815536 912367585 810725216 946826629 861706908 864353368 263861438 949929440 437136238 450404097 732184830 831835066 980137787 998801847 249149202 952709929 19990897 805164940 310605397 827990089 379847517 798323640 17218056 636107367 773388582 939682495 202681893 253571223 817563702 978392490 905944868 909009261 296165980 662580125 970433999 988434808 606965209 768283695 47582172 476614633 112421414 557788529 878119148 964783912 161093527 812073501 11484784 807386926 657301083 958996450 415028966 419661710 188338266 569388203 329640632 587764085 33103489 636920184 866774053 954117468 539725643 875141571 580416877 829309535 237102000 993931709 709532156 886304258 321945495 372032134 546508496 639882613 349776020 746345003 689782979 731042191 73787613 511509352 95214994 748534895 853894089 949833509 340300852 609443653 366386960 807512122 317762353 847357916 294440897 382589126 400384312 684528319 237520506 905409057 438023147 732997100 505088269 551425013 575185307 785215917 583917755 627604584 374865465 986428151 13371501 423002520 262001485 935553257 6739401 809163779 842007275 940642009 572449916 867896419 392589185 765860847 956206612 963341388 626432751 855683904 832108111 984011106 547762379 845449839 722004653 781083089 814915906 981296948 143971240 864354565 584325210 668298596 261237382 314574299 360620761 855190791 973752810 975501153 981062728 989363960 767187600 848464377 511387276 752293616 833488738 993222378 835777994 906046076 283807068 341223381 458913450 843761109 525945748 961933650 352164775 370099570 700759456 795867380 987162665 999357001 330666198 521772986 456271305 938387997 287791027 589951848 232048842 389457181 401001506 864916693 935931028 996482679 383145427 772086341 744982576 930805006 45969186 407084776 665908493 719881135 356987381 613846199 198924644 682888458 151870465 248667752 965466704 978098666 471295353 581172704 631469738 888505930 799559784 886380477 499962624 649165339 766878475 947499560 15247640 188465214 629619622 961669075 516417636 764876320 617153805 708793783 815369078 824907690 151758360 438118911 385368322 735709646 338162605 849492867 30112490 192844864 877204493 994237319 680482911 960349448 24160341 757988997 885191014 933436121 426521022 878924033 85642986 896594289 837292018 867248293 116690110 545665431 741005171 880563143 412864453 767985384 316453844 335934879 536582105 624843050 491838267 790727665 792461700 796607632 77608217 812542205 656038117 977511301 178075651 446802220 51064725 552313929 88913297 771870675 815136140 824493324 779145322 971181520 694062434 992388621 343120574 394135828 305198505 914051154 977345633 977833204 684945746 763794891 221860850 800289709 250611630 947644099 165144717 324705268 54788117 558748107 765702760 863952040 558183393 874078301 222693939 558112586 819995655 921301979 659263935 789070116 183782252 886866026 509100863 782161796 38970276 651934205 339833451 913472882 296349977 894988527 114799298 963875271 53116813 465872260 636432321 684573406 746669439 795244630 172813785 637740622 846864156 944417475 693179733 868953221 629721881 989115635 18155350 524156759 348010699 788204474 842060560 982216584 948357052 994764226 74573109 706203968 685599936 864401463 607654387 902543418 96332949 558094945 473378788 571608880 119475114 880463338 702771477 903907723 153019509 566991189 807883142 893964813 526011083 797895486 474977167 519538994 617809648 821773327 567992827 619818797 630572589 737437508 85659686 917625330 362471860 553570538 484864139 970996911 329136993 745590964 803852302 981883264 199058609 583463843 510181555 679321578 524215905 606276214 513691713 724373524 449762338 849787549 623217930 901870301 474289158 560878221 384937599 589576272 314585446 588806415 603167411 965256591 258487810 448110475 631609175 794681520 511895859 644557540 954810569 958268715 897679214 899303778 135387067 136857063 839947321 898101759 737582858 925501502 838581752 881425041 471034243 822414889 68483634 790339805 10128536 507601072 527220267 568312754 15628362 119714391 781094237 909578072 10895019 559310903 644157424 961767868 983610607 997346537 355628261 461247941 798950218 955363515 598490560 613389399 280062430 556342229 256750497 519990989 51601817 703217269 971214458 994123100 988765508 994925472 728017544 964749132 264729182 872115520 960519877 982044674 720781419 857536986 143731970 394289435 314174926 829866697 566978798 900874878 93705719 595154936 204385379 819618686 786769543 910333571 6353046 615464363 291595651 712648443 803826073 924206828 704205268 811693559 743245007 823137947 677071768 737769271 101061334 333212863 383525318 650873554 463266514 879464523 126571270 127966670 431981826 707021714 800617070 805648016 448131798 657446025 177362095 815789533 309653344 740317880 908030405 992653460 561606846 578798224 587200011 766705831 20499297 25761459 768118620 906462081 401837300 833387402 180512646 941098106 314353027 927263493 92464187 740035736 611821112 658320452 540709342 699961885 746986019 824424654 961282426 965470854 248227167 584391039 26078312 181541304 781412910 802825103 117252040 370927116 9096376 127976641 461859239 598201999 838206112 948952608 624845069 950879202 650462026 665192321 554798291 967584280 287890883 646845754 919014201 960876854 66964965 70004518 365148721 699322228 571769674 670478434 302636248 356817903 333834663 467967038 796067448 823279426 715687860 746103861 664165289 688309827 988838489 988849134 142539906 983771545 416155182 571057886 614492477 898941626 560219517 812534526 245116386 883805359 973261957 985298592 573614277 960590178 298302814 937933645 108706699 752444516 657109235 896832827 304511657 533026002 633804008 854584330 713088730 724875566 575769870 810261744 362504870 631005745 461661972 682412236 928594554 966553443 346207884 695782319 82051507 819131173 75819325 959632818 438546613 622797425 436166553 898076413 656851981 697163633 481289820 929217613 680864260 995070360 62416785 592657416 351690358 889395239 866299553 867076926 816986077 856315623 813026634 959127702 825508751 953255741 996737318 999315361 784432352 916085305 867251295 946454300 333925399 988905688 890317487 959336165 560488752 575646682 48538102 828992071 65599258 595230041 162250301 956104672 893501034 953295013 128680034 895896627 618039467 905855391 831834297 916751295 387089039 472807410 806640631 834171314 280330141 371159157 241378179 640989309 848622751 921086727 9485116 845320343 889887619 960486714 159601362 435466059 330713719 729690777 977614047 988441666 29275533 616856939 279357801 938778993 715297553 843216997 556992729 949630066 29999974 463482297 981878824 993179036 86962609 697478488 744986943 972134256 190392111 934820351 42988738 940192583 76224110 173376352 11003910 808705255 180343740 212530541 26717622 923619431 880379291 979992576 278733064 801965560 776293424 994270718 435105234 461664352 936488620 991214903 171571291 943387329 480108000 758822246 669823778 776876495 48887171 346908473 215881465 471337565 858409286 974766269 239395828 884438552 142345109 711001210 441718489 455195794 975438223 976167711 367263159 937870667 71436311 981052992 476113754 887444428 64570743 970354125 785593510 883609429 47648174 298834259 284661355 502443635 226744967 854218324 788473256 952083522 784618991 784781909 270655636 411970211 986467249 996678190 282264212 400069798 366875673 901912013 752100395 854897347 116188647 979214667 809408459 852103126 858556686 910912226 343004624 571186363 972491467 974302246 282364726 498055009 408697796 957011667 284972308 753653751 512896318 950599976 358358239 411179017 131845420 237497041 168788915 557488688 987509750 992703778 443065222 816143280 582341388 989352769 45258008 986576022 727936850 817804521 306345083 712842322 752642683 868581435 576337751 759304239 244461505 329128129 108754717 973234408 139419422 478200389 864334315 935788283 109035175 941288624 490517348 904571014 119147357 469386360 474121904 818909927 901148491 921735967 917012141 994826914 125051693 218398816 575067324 633320071 294582902 645114269 838468751 967180485 225531750 880145372 869234931 947734332 237064713 824159704 548596119 576402583 199455470 503229959 82547854 933897721 92496934 839593583 448612782 771477747 195052269 847649159 372454725 789684738 696291113 716725744 600875006 782198154 274029760 751965544 582246999 739302676 699179396 810855114 368554153 700033716 377311544 500061079 768698627 975981007 473364529 749409050 894258752 971600589 284279409 823743518 9670816 986899079 688148080 852243032 543290427 852055373 668169784 791091158 571827695 910428157 412925538 865849502 331100086 939524503 970010347 973654369 848884776 983028117 420547811 568528309 246500615 650255800 126764023 445249973 420602669 503458945 966857169 972085103 312389646 725607664 909611805 977627937 291612781 582612446 162213053 661417060 729051377 751630796 512723312 592273241 454243430 478528318 413025702 735135816 242584821 329619121 881746747 976005889 309092944 646511972 895384286 992487927 861222180 981581774 606558117 957755256 799359213 914624077 181400278 295334754 144699584 795691469 226339316 422020367 243100058 424327654 458572813 482435699 806052757 921519290 734496959 781206348 523843165 786059608 184220279 973030053 17337612 469093654 809252651 812821293 473482198 508645894 317239734 833036074 82381783 693811103 370687432 984413333 618531176 662622151 873581002 975640845 83066206 600874404 290287306 752496499 716873518 973043346 961767201 979824105 711360919 764354561 993173029 998367326 494668738 723374367 634447373 927863766 951541607 971189293 894112265 987627624 580039308 727710462 604480413 768980250 440895552 616799580 274554406 786900475 377911031 773659423 962929936 993431155 239375698 505540159 228308939 534468585 238629569 410360221 563938828 787098604 262942734 637919598 100984262 704148358 73720305 148978571 704544739 985508214 696803602 811867324 829755436 866329322 418021423 785985843 543790964 941321684 959244060 977979289 951374736 965533430 800140014 851080630 761655663 958113188 398361650 729206130 509366589 908853905 264028167 497612968 47339036 275045712 980259724 985907230 780041314 936540150 143820119 806760201 140033365 999047093 377670210 448167427 701983290 807501408 789318015 919615143 293187258 902034599 207507481 419413985 720182130 818875798 256477362 926210573 474670790 550500052 363345865 787136128 560210615 565136930 758709543 862929449 585721217 915024530 154999058 358717630 524749771 789167662 15116514 729128398 713876182 930955018 939794276 996454511 790299154 974467190 931900833 938930458 309050231 584484826 784544380 973523867 342077714 946029123 352869529 677618218 199111238 524312213 710725212 935250086 240321920 310414640 630748412 930759078 616034851 951078046 256028213 872435995 390559684 894936539 528162912 666008066 505264379 601476335 169857825 638402112 760853990 884260686 116163869 544993124 964096931 972975263 266103855 823800209 31990610 130332366 32648718 985150391 188068421 586867397 834003381 974444218 242595077 617684157 90103288 915899317 545668300 572046037 432088807 519063192 330741421 481781127 81321339 207395028 664900658 985809095 80046384 474013795 536283323 815750808 9263935 341102656 232678710 474030568 681602586 993159906 867167905 882430780 741889396 807056751 689993409 737232577 590981320 691441622 481491764 544959423 544869417 562793389 369750874 852693356 164662619 772214790 898822530 949773777 677422450 867527017 668059018 953400110 440489518 735112997 779101173 887569917 145010098 890045325 226704064 492827707 214270935 275840285 793309217 853628989 629570927 756934293 724881061 938715208 284995428 724636643 170712904 185330263 143355001 873096014 931624928 980902515 758758785 947537982 14239745 918320981 281771851 722775970 660384165 675289442 503503877 557514022 173183517 371604694 334320680 509973518 857004021 898320833 46068788 937062838 672351091 898135322 370043192 630866659 685125292 924418359 814680261 961807791 332459872 676104347 111309913 924122163 295939554 912314907 790750880 903438517 386882394 534246065 810825332 879891902 376024300 394904952 28094596 721466059 153317131 257856889 157905533 877349465 594610468 707421437 522721216 796977092 711755972 737854346 651255043 772768912 35623957 611023139 974344501 977412884 364126582 533569263 342095445 852007470 428280780 556160995 619943178 670245917 765105531 815287205 476544145 926223857 436444696 770799227 290029031 325843840 636968654 685640209 297004478 733140183 833114503 877070117 941260150 958945645 858521597 918871028 847024886 885028613 260194120 780964823 900421647 965942477 691825515 822278352 219384146 752667619 291599023 416379076 543181586 691354857 378457940 926468143 338036824 866574171 923882524 993028432 113389865 921139095 23248420 419587802 917911577 988966518 424984542 825539932 234099540 590211445 744090726 822097159 577874277 876681830 716931739 912650813 712818504 881252178 512521399 791102174 638635464 901826534 556448232 685150608 124386071 969199080 941251873 946691239 57304379 91313131 817564438 917567069 780149277 972049892 255110206 306926071 369103650 883558636 814649218 823977523 321226795 729201395 657741031 936938937 485315156 852635811 262471138 582344060 920428064 977078720 926588858 970331762 105790453 385040526 430936840 725040079 764774254 836240351 51293495 162093113 914553071 956725310 25178792 55386208 503110848 944015242 893642905 985072185 580115301 590565845 275055746 964557175 531460401 746279520 923022832 978423261 785666044 833418055 651453338 944853341 441892626 692174800 5977511 814583223 986199742 997245305 417877668 895486683 519696430 982718432 821704115 946953976 555105094 665324314 388181828 491633322 238372319 372604320 502142704 639532096 875424727 988439648 643224398 673264418 177675028 629721197 483708996 618446103 319763175 399955641 972779709 981148059 91269338 456951906 772447268 967876849 49879414 630118511 894666935 981053006 869293050 981237553 146874773 852824521 893802797 973524731 528164421 871989240 351440902 354476455 282065165 965648051 626971987 670004099 693631525 941960302 796500508 827461734 630131651 667391803 789353990 987301551 507628680 894771393 4858173 587236339 199359831 736703764 614534873 695431816 595046669 796311002 187643564 739121828 823302384 961456591 963060575 992164447 118307851 144904127 650158984 858285218 163877367 952090874 935420738 945751673 188257669 583991761 499787195 510379771 363339335 567711597 715890895 763768778 600127790 737336130 977451891 991222612 476708215 863544267 963300698 971587462 599756473 670349938 242544546 534808047 152694801 985741227 585763953 717655436 78580033 599995656 953531461 971551340 530221448 989688814 904322237 940387798 512953348 710809249 481747304 547496410 949235039 954571075 354868855 478910243 809014964 975089078 616218760 713749511 659204396 725572316 621441213 974118620 60899544 398607562 392687531 995948510 673511680 984632162 746009145 914193515 586231697 637182306 836946141 868052915 665692512 889114706 366856834 466195555 3999546 75608837 255159252 347052067 151307063 316198459 315281854 576143720 207972953 479411530 465593023 666531395 20265892 656802718 295724855 488936399 504172725 537021564 805064663 982142962 396308587 721253227 206782717 807604792 452665138 567084157 481987775 822095602 335783596 480867374 312094001 931991535 842040393 911913782 135091178 454091031 432321630 508840911 391052375 902288118 158401838 883391270 816200521 905501279 470979332 531425039 296596338 320958956 829713383 992363558 524886611 712336012 723633797 808209349 308442074 979428067 756869187 879431405 664224276 905939160 42621354 867995633 471478511 690792736 305942116 328174983 474518951 664281903 996938329 998726586 753505720 964552948 317288206 534852166 486363908 993920385 855942321 876420798 16407413 942263848 643946559 890084801 78141784 600627744 921647492 975901336 185510151 882093581 470016904 585363143 677067869 839811494 993523451 997729692 1929896 857590214 284571996 986093226 457241592 480960010 283063151 694603805 944833403 966209406 360644526 711509911 881140448 919355698 822291664 947803561 283199009 782455012 200950079 474990929 195491158 913722446 253251000 623253067 802225096 903779145 916697101 967926613 952476178 977503583 456025355 794814844 907134389 930188221 339892285 681748978 251116938 316461660 632661144 914853399 259449466 525844237 674619010 872056420 207118070 341034661 397555923 571105262 565625912 914834048 542720285 722270568 503038416 539955240 77979099 951005919 82813430 139926664 17392074 231490421 718093090 934420926 301373099 361578284 337672868 793821285 504170671 918368707 289411277 453211743 148782097 596643289 819356082 901966822 58632324 960493526 610355013 968913986 600115861 613163845 314746791 648349553 21174777 657082027 289917601 406550969 18845655 361269039 589149564 792038219 460139293 807529352 501412347 672235664 725458015 744015392 121307635 502959837 901054952 976487407 382574617 522748454 75200132 458700158 13998972 319704033 66546059 481013445 99978073 733974039 951923915 976950789 372597605 414166904 88704600 686287991 698865441 798965938 77326148 551316890 433847580 560527150 710462904 739177783 830990214 910274077 829523268 954186473 377611507 469281443 326065989 602134796 941886608 969678544 512741201 961694464 243945613 853000872 402246786 531082624 851484035 855825402 615536189 858753589 793968108 819528194 746979029 881526719 248840330 830140553 725247559 958750866 121067678 971926472 641942767 976339018 852985235 970745886 984774218 993791261 651346649 827386715 890237603 895538550 837238880 885452586 363143061 820348857 504909383 513058143 446665024 730502291 211792164 804409140 90493117 882330105 958647319 966183857 510711606 931710999 150506688 166558572 195077928 625506527 809367351 925826228 334538421 930392952 881822075 906511448 980805694 998254914 816174737 875531407 667092200 941543418 843453988 952061882 331511575 679067003 481306608 721406059 100761535 564942527 72068013 632297969 369188337 521531876 524403601 627360201 521744556 704010104 525849549 631490274 838397924 894776668 985822703 991441556 531887602 746783472 41811828 518926204 889169586 988611888 513848998 908843203 660485980 928397143 822180255 923915343 941552182 992863346 910225988 979051972 610921893 740717654 516893882 981478209 937030800 941206986 546555176 643959337 744019863 854638843 653758417 789921933 380937791 723951973 496211218 903189032 824243901 888968982 896697472 918846453 257478482 411559526 145041153 603327910 813549574 909216844 16946402 716769210 380916566 638070316 253504084 742949879 45728109 935029099 376119776 711994530 309564336 540813318 875108246 968091841 473564329 827498492 256814570 495715665 273074330 292064072 820764383 917895328 949620298 977063779 512128388 617740207 556790828 770873760 371199416 373077459 275992024 881491347 148040080 614298392 89209105 955337470 700035966 719296890 884439998 889063001 581082865 724048446 234031510 584099108 71859101 643190628 289312084 438641473 65904012 614610536 367114042 977570035 372240783 713439063 923872916 985277933 206213129 524630431 358138161 827972848 299221379 594043732 289274398 489647493 954575207 978537584 943814977 958776384 344981467 492540381 672774900 737879352 420335960 759072098 953127036 986793167 862974508 973955834 151087066 757612508 667512631 785052786 354220216 687121938 770769365 860644927 522811854 533233053 220885349 314032412 999095278 999271363 381433387 675478897 909505237 951279277 135021676 692692850 885104442 944539461 445081864 885540615 917545248 992934952 213881667 900673242 393383946 846553418 47937746 169697950 13389445 931247000 670083294 691811970 318053774 397997462 297799324 543443413 690199633 872347893 940844762 950030479 34308452 66944583 80470853 894620636 722152484 803716212 978838216 983596137 557066483 954089543 998383935 999344148 158693185 727041379 70158977 187921964 133328438 659410127 197377025 324683464 448326182 602156044 286246943 966171494 344556955 606653178 707860187 771841091 817589327 847534803 117016835 632520318 584010987 920140748 763048847 975831537 87666295 744654973 513246131 557319365 109334496 452935881 902648797 947260169 241653189 348393879 839790366 936394176 161907518 634678794 134797053 291540585 279393810 313520490 325927624 825787303 703883487 924193656 332845033 388154275 922011334 963563664 352904383 468695539 530728758 621051242 474513239 546464544 894899450 916791322 827058048 906658724 442007045 882503113 9796013 968763075 455584463 476260724 758427177 908510614 831669808 950479036 764147163 770292333 989454472 989599555 513609191 856375386 638211373 707386032 635476189 899534883 482205446 819424802 727713587 965195762 877583641 894961002 443442115 801051527 459679226 775533924 911843671 950425411 839006050 938800239 297110017 484955545 558067571 858625316 564658179 582159138 899163911 945082395 69978921 312280152 591021738 714366732 642321846 961269521 642343148 699484212 940090414 962294951 84365091 903642520 332448590 801509321 940189072 992626494 249883917 813066559 917839100 998646040 609146213 681803142 953210978 973873149 614605197 623077757 184201899 355207460 240842112 823889377 913886319 995362558 643741895 869675111 71686621 146137917 665908515 833611246 594699259 998200486 803795978 988734060 779503031 793114743 537690263 937404967 150928925 225327515 779826712 893445646 991232045 993537094 381653943 609342370 961463957 981658013 304723973 574858849 123331564 581397466 49911951 86051361 669898119 751439610 911070579 933865401 489762598 849281412 211374315 930436044 707167773 817414586 871995356 900285747 354217834 903733640 764741953 852412862 551291767 667299633 538775446 783126487 941617201 944234457 5742700 495378901 292353822 591335934 228856958 824929746 370236158 830902473 115761929 725613003 318979429 370631529 592325619 888583389 50973909 468178719 45202638 133192127 706712531 948631117 10192443 203126044 264411245 454894337 185201747 871843679 447830931 971109178 245292679 791728496 331632084 851623298 764433918 853714441 707656027 947993109 961683910 997396247 258232855 730572361 355566099 412814637 924545681 926751403 604101912 786498097 926109696 987399060 938632331 977835089 818339810 861373383 580256117 682535391 378510064 450884532 572870104 784062351 898212005 921719331 133495160 705848021 376114327 748090231 919411410 978350709 699173624 772567621 274094016 844600665 503691783 949374592 283857939 572756636 38694258 267954372 534529985 877953967 215828552 562315786 858194933 865403796 693101961 748345110 463423142 849495899 152765899 382377978 967992491 997490959 496364998 761612733 333951195 882869989 774792762 826563068 583046399 674138439 526546298 806832642 672291757 714725625 990289840 992574790 757453052 801433509 66780461 689166110 338860169 662214208 421333554 950497532 60938210 911120007 706008813 913185836 866266556 908701374 64432415 301564929 162059644 385163322 568754151 794955856 825871967 968043427 30602224 340109697 576248612 826797939 268438203 317791907 482840393 986399502 78791619 259862182 600545895 892004513 530430523 956166821 164809447 467053760 54765935 405158162 280802842 775132329 28977473 574583458 139933733 754257922 535835051 929292226 648872505 959139131 881158995 977798954 56607824 299622784 251857014 468486168 223620216 300434452 553152213 875499141 351242458 491102582 86869858 691865995 190888915 228711009 184164232 961241246 867524099 916852863 593016215 627221327 900947119 964802658 250572652 713263310 560322422 939098638 160442417 369768145 869816559 980406884 129444082 592158291 676742589 929570368 76628773 879168527 812510495 840620461 732947208 788200237 334544407 770395251 506593359 808158196 467844823 967314993 964372931 983178041 975250816 984415385 678606817 773288888 138522242 241273991 37914665 631217790 625731912 901532247 248576350 610082494 237455219 413324104 888575921 920750664 353829006 451133414 871269403 917900896 299377420 654354556 815460807 923265921 865352012 898917084 809119335 981383575 507135363 531545367 901701133 977092983 795733254 934905779 653009225 686301586 197810204 609337374 764160821 994316239 896355194 918338448 450703632 716448527 485923800 489773572 563924075 640081275 613684029 918576427 311650390 881949187 855875752 885399493 385382777 980816588 825084160 893199692 216900572 783172807 9506676 150391835 33986114 510729767 634774123 849583272 119589078 899637534 178668216 505694768 118432437 418551747 960906166 988434053 559102701 935687709 909029248 998429038 45833277 901986368 30463554 381612129 654923569 925173667 854903467 907414880 763798474 815390005 191153153 610816707 712634262 922964694 39252797 94138466 710969687 758554967 85979985 160374100 739879 423125433 253012131 403083345 191092387 220352928 168236501 619948878 738461823 952633415 451189901 701180619 936357277 994882097 969148963 971927644 22451499 274962518 454715631 574613258 119088053 197825879 319000013 978531792 697340478 789924023 687014230 950541993 585997979 995818293 251113282 494746992 204708502 297759949 320913241 924331429 589315116 887643365 243022335 413529268 507323650 916912641 829945467 947063679 959779332 975843946 358667117 903771804 463658554 468157467 91663557 759420164 870170104 926415395 76808347 413734276 168049088 379532248 723542120 862791438 751307419 907470766 857840334 871921288 731382672 747085160 404703611 537594659 439336062 959239381 931912672 938917912 585177538 786049415 528154022 746838020 637894018 919307906 493002100 796168780 666496941 829184307 817565894 980744320 770463219 997683419 574502018 629314880 987158048 992299205 756802753 890477164 839820934 963096787 740110013 947898501 935732291 975173786 844547703 975415259 420158481 559936124 157725529 248943691 52128167 281889742 877743075 943172517 753778764 944366162 901934408 944248631 245455835 632825575 924251222 924670616 494254147 962813010 195409185 800222404 814292496 885834508 871792083 872700445 207968513 458945474 405792570 511642967 570382653 641621596 353569464 559119021 867307257 939332766 149591950 191394615 786313626 883853938 372090358 740525405 523545778 680071613 679292483 748684314 810269070 831643325 293425602 961214334 919577902 930063752 787865317 879461724 945533746 972921452 779243083 901469918 519386180 539899796 998905906 999196048 183681124 350305566 305833963 926713422 647716521 773332598 383335617 566116545 720200647 956635793 594299715 809605055 541507785 584282404 135822753 953733946 794289523 846253078 94470656 703039583 203156326 814049441 198912613 500079164 189286678 570029282 734157595 944528318 766982454 845436445 325668559 775060968 349926053 908812415 765243038 810344092 45920354 828299928 72790227 161231727 393137809 456757127 412724225 720953964 260859090 660062403 279714644 860996900 574300945 651517283 790117979 860550102 802574465 920219159 219622695 817720101 597570529 858351562 381348596 779574562 47097510 901240247 705277712 984716602 804870593 968068486 641841948 802378231 356453030 550705990 861661463 954949895 989735529 996202332 961403229 998041440 637404504 679458920 805443253 981593389 28908726 307035858 532376106 579208830 949166579 966348111 924937378 962028283 621238381 824378411 717308920 944153319 962945609 994152544 389305101 536320349 349923739 651009127 805625510 847037811 343594939 752219628 193115420 728823321 507525513 813817206 891696971 936471815 758771806 847112090 165426764 396797225 845895647 909759561 124298263 688098962 204543775 444006076 661076177 893681579 447138208 856704706 250381742 521851119 809113706 978664981 823883941 843950734 655439171 974434772 314437861 748064030 30726004 890694109 428404316 732585038 273528020 870415349 617099121 879936072 110775318 212130296 552433900 935179020 328631727 581021729 89993233 832998549 259690858 531065173 335679297 816428306 837734422 998242478 929721615 932765176 250368588 972983425 17651707 355141232 526683852 770600348 772684016 805452266 461685847 843035351 732462472 917186904 102221108 427006785 273362559 561897241 226857329 919676690 547397945 824755697 827341661 978843761 313266122 782165095 962950690 982784999 300453247 759158957 419889544 779874184 560627120 731900792 311394836 529805619 767924321 864400377 27685820 436643398 504982384 695363074 376018406 603913825 880244623 957915917 654132225 692917077 783869876 971333171 654129839 981761133 246112653 459015244 936450748 947808870 512644546 543788675 135396670 568322444 736098862 746305538 894490771 996232499 989097041 995527565 266315344 453551828 850426869 945575214 523566536 868919156 755336264 789932031 143555395 455209076 876269759 877678604 47937584 705082699 119995336 597796463 212998394 513049319 584015353 832026832 177570224 590668715 264540150 508455189 550772970 934917298 46423595 690419766 697318714 906125627 904281174 984774340 903104326 922771789 189009338 444358144 331364425 708517738 996360840 996825878 180737396 780489547 472012924 747882304 812167773 984650548 707116946 869967985 744912267 808363224 670283052 962000274 449112685 523018446 714326647 868718349 703689188 852004867 268981146 924070571 877507845 929861506 55962600 217353200 249393207 913302054 219392636 255057841 834301662 879544951 169455706 243398496 391113308 722458178 638427610 893872591 78780175 363447174 407752603 597991822 325581838 789315921 970852966 991085161 312870801 670903342 73392615 751950994 605829430 959045475 315766425 726039097 828586278 934590573 581859783 964099716 358777461 588688972 251470976 407346197 761212758 929127059 164036031 865926899 706157844 863766314 896673008 900674987 527281098 808531676 202823509 771351639 799583188 895233026 309539775 345116513 72268894 933145648 889405840 971185384 859443065 936064730 488975021 495146666 407625320 581494218 407008489 517654059 60435637 763686164 221870975 281715515 726158099 857317668 57891871 214915635 214784051 631450338 444021381 518202354 709139291 923696913 670017447 937928361 443420027 527614671 937204065 952063054 255821472 715040766 134817458 633671691 335042687 933793168 387806443 725422230 964636160 985347261 35758236 143005576 982392692 995421204 460765018 796807328 820794236 885380422 690253653 826479922 658685963 743056096 408224387 470055687 749920798 995660759 356086732 753060388 218544620 495274954 26302888 56458566 996966428 997942453 304016372 650251160 505930813 587297094 983089413 994785673 164946648 379357309 343097339 832264191 86985015 811183061 233934654 293506821 223398827 948467830 97410358 246641895 921796117 956471375 603263455 712963645 965344570 967269258 526114459 785471766 756676020 774249499 682160693 987572436 427851138 499517056 402164492 497688020 240392455 308784323 588013666 815843507 14888241 961193616 178489634 593537377 207560772 920502871 700868539 819500653 152934600 254136776 129683608 467722993 8435375 891698342 984781962 992962883 693243974 976255802 252386727 271285364 68059803 299489431 415536518 499625920 904266089 991963687 477828794 517199917 921264353 947794170 921140457 981371536 107962243 175334331 733431610 887611243 366939970 551492472 215409697 319907251 116287553 694450991 441031141 722405477 762450567 791183516 995397887 997158779 295128013 313247621 325452102 548276890 353632544 742198316 762113677 807891899 620326197 728237098 49917434 861054614 796046153 832217473 629133199 824873518 94912698 604764788 444495332 884941616 100691942 563066963 362373921 479134363 460410658 746115438 426355195 857654645 421095685 984505104 103770118 167304350 756166264 973745507 748261411 816279224 248862707 546202079 17945080 254884971 309438784 395787932 990822582 996195704 44328953 374839019 708903546 921547081 339466772 710837182 333725608 510286520 911216211 993756288 645144262 673193081 838875967 894280778 768129739 968288921 892029236 957685026 150587590 170969689 797431272 966744886 572939608 968224029 232701772 238681803 445396030 568369838 337935549 455994637 852963913 876839205 85749934 606889617 683619712 812451623 888094793 928174370 122991144 588092732 682159256 725674568 87081232 608697306 314669561 733260808 83824185 302157408 354688058 654313245 385371921 436025001 517649600 704672222 452321341 869160471 796230464 808975425 569079158 978198986 115213375 604384431 40578201 276587694 566149219 626334866 339127144 399563932 977718973 997713103 36144247 199096022 436603411 754297299 267150029 760582743 590909673 988778592 620578136 895026690 470007691 601003981 519889022 989914230 556233739 773621651 969589360 977306768 39398621 494772833 650387444 757347752 823293270 978543093 93375236 155410663 730203670 867012501 952850284 994641454 166919101 807627747 426120139 505982738 518610664 526663705 386938350 920153769 859698982 906351054 158485029 510895335 885688108 950945621 71393180 550099343 458571287 786426622 580098685 970214070 91481982 771300516 532505176 658896093 745654114 986542426 76481734 346830481 228518941 421017666 960515875 970731180 256121515 958535871 675233907 678996337 959666152 993962116 165081511 381376744 953743739 988405231 387068085 567771332 691315749 760381032 84538506 308644439 978855885 983626287 183555259 895169840 144190155 480285110 351161859 694673667 292332440 837073802 203694595 781816447 289941103 735155579 4559597 823061355 821872867 825044773 489175837 847360791 69125303 681405368 894373152 981135867 659431522 989734601 529559471 946342999 85785771 998436679 473294390 766485326 872987338 989480846 436634089 483119728 89716686 201157182 123029034 740469805 126509510 881553998 665684703 747651323 64489066 509015010 683420233 805404011 653907833 759236803 608212127 711855338 74087495 855542089 867543509 891297382 317128636 407053583 209208918 877749119 189471471 895144114 378173286 827953974 389762050 963374704 969358646 973248328 516803630 945065935 819625122 855398936 688806507 732305991 114309764 349116718 169146410 943418551 919695127 971391908 886696861 998832257 145426367 348578985 109529271 555308711 852990889 860778164 720858588 967565712 844054930 975628525 138196819 343379058 705925336 934174523 973748676 976370150 725910268 845363128 966567120 983542695 448097046 535103044 613909457 783952066 947278185 969591045 509006084 839613867 270548525 839203936 57326374 613878671 327841876 940420941 169488910 375666581 173283396 923987210 983297651 992582822 183681261 671112831 829714166 849972829 4157742 266015395 480778870 575168936 723732797 849648852 964867064 998999243 66375269 626727920 822680644 942410121 534341315 768069976 789989774 988908316 761811351 891312804 79118022 127263948 79722285 948137673 919394613 968105765 980789823 986261711 118927268 900914865 958889180 981698055 150051294 202802585 206268604 426333216 302985701 865535472 231044378 627285859 307467523 602365498 443090624 978396315 197556044 552537994 436255893 696815302 790223112 808756853 565522912 659811532 79881043 751663230 981558877 982179832 288316309 936956354 371734592 808653033 921795324 951148487 508392638 720610781 5987908 285922077 607077561 672373392 679942083 694810108 170308482 777525027 671001774 896124676 410220244 443428775 290814183 414328456 124134644 182852609 678346164 783436538 132541152 270300143 911963393 980214251 568114950 929279997 566884422 613914580 829580946 896947458 424520960 992384887 287592990 470767894 979199144 987045629 882286790 988901732 735758603 798661033 25925379 549514174 707561213 949387512 725861442 987884132 794877083 815063557 71283934 651978104 529355163 910335976 172250343 372886945 313263409 979464923 523339718 694480250 777210671 960909239 746689310 927080659 702390887 848716704 480584259 526762691 614579806 928372339 966512818 973654309 119375540 913819500 734652316 952301296 361004160 575722050 442742373 596257804 235671185 606614353 11856220 638274242 591798393 707313898 499347694 713117923 856763231 875228401 979157992 991987133 479517293 693827961 218733060 979507769 569011084 634108548 15543270 125267381 416121410 983773748 458482382 589731165 834481000 997762374 908727062 959167196 873641862 960552805 251241907 484271642 911620974 995471229 358902547 750844648 355269151 852349130 721451520 743605364 588083810 994638569 530991326 617643221 501260773 650315603 191858239 779082627 781215060 792710258 342880799 966549782 365577369 797059672 194605261 618587872 20872919 656274654 675782627 790256904 176354242 748551051 748102664 797277179 452521425 632379983 602001757 660531949 141496444 871177861 173821979 605099470 810842606 944375570 860219603 929893368 305809016 401926847 189951931 401020717 581390664 665014093 614146077 992208807 468499006 498006031 266579871 743665572 178101748 468061231 417673726 977533603 116872035 717154545 181652470 682350958 981875181 996601814 656470003 921811497 655522245 900486451 924117853 980883950 294310204 646931814 343906275 665443266 456837534 692865047 505676813 557446832 133314512 835135825 979256604 985992980 827105866 869805082 588960178 632158955 346218647 625731376 413853893 651600915 833066345 878729191 671523791 936119513 565264959 745610976 738715108 917885157 277697912 821139526 610099610 760301582 39972569 208504468 838429432 876935458 475907556 841865671 814431476 865870828 549139830 625879657 553136276 875083257 303881419 498648481 155489499 961285256 295414099 898973670 672327668 797975120 954870890 993127132 453173440 748334662 70776873 794646364 362821900 939043440 868720186 931185348 583347866 764553582 206443121 505413779 332657882 680789618 604486307 855636093 600993978 783874171 480016671 589362933 445364431 623129416 950691561 984721732 724464244 846151042 910418276 995494827 759807825 920753540 250985974 624433010 625489484 817440029 808632848 883440559 404609938 427214454 601596853 828345293 338316206 877363186 557853177 744987363 658797136 740153795 523134418 833766920 902241320 999262816 254864849 581012752 886766459 981406936 705717317 716786648 154607088 315844506 247655673 302007866 37006217 800496670 621876353 641055124 703481364 920208323 309162946 420429937 732491565 738476831 681287711 848932000 631367233 973595556 609179326 907850324 19249643 436470194 922075352 993623930 378148280 605403730 168408111 622166561 880529725 935075282 154560863 705306385 627015765 696834101 646713525 939656015 174645781 214970434 279150640 524214558 867045695 909528746 580322411 907402059 660738956 968863182 583738049 625401368 938653773 981160624 653680190 761770533 720455439 741866217 652795199 824293678 422992983 490342681 272437877 420699700 958657629 989227385 450258282 992684972 594890006 929564061 993896347 995709203 696102738 858822080 848963091 876653716 150217413 712557278 826177472 920397775 917330490 950382821 895090822 929321680 553279889 603273406 388555058 648192526 593841987 902846287 878225668 988744344 668512612 680111898 287977255 772052250 860686428 901579909 596244295 598515247 66892049 969403782 762530559 859907569 729527320 876789956 73713873 265865554 740955463 755333881 834717201 920877041 100052785 299301019 135941760 349741778 434625044 437834971 93095236 740665401 75236190 670190534 220927151 958875385 295068630 991275349 321796657 618610964 890951366 962869264 179569969 706302151 392752839 981066450 612811298 961138924 711989908 718382299 934599729 980102708 278876316 712204691 91505658 734819814 363242443 365221509 366585690 542556713 827435692 945828717 879766394 929882282 578041587 851790399 434268912 584902963 737976481 775995143 761974439 838156829 90367395 491017738 121961929 463456459 340379960 953031783 804963697 881130771 888046115 892041238 502986236 909368736 261911332 684867939 170971344 191214631 514880765 943125293 684785075 945849682 39877031 778322818 393847985 555112463 690673247 855110495 812987004 989226397 15333684 363660993 552763731 839056397 63741263 645310272 617022835 724649522 708289452 743437731 147413457 722538222 73250461 197057091 315538022 668224157 641325702 960318718 962894358 984490688 118006332 283319649 207042390 558529467 347952846 689080387 741101920 894227899 755864628 757708914 890753497 899297740 120325065 762063647 933332401 993219665 545252345 902488999 28368553 200678629 905431702 984421919 644326117 710423932 313568224 935376509 878200861 901252316 363517416 746297788 317541586 624131294 105732298 427812987 913844106 930487490 776005608 948947553 932680449 956745318 24643323 740725791 182148830 793471978 307238736 909443713 774455478 952202601 342526340 972816928 293747087 327285731 383311472 961450985 858900441 970146480 497771802 695514900 645472611 807819221 218142135 803501666 106065656 711775438 521362832 761827597 600439012 937918037 2109724 751157934 769853599 964037521 75480281 487547627 983484780 993633568 217866627 645150186 104938479 816049444 253574304 820326716 50321762 600477946 121080364 221694061 190735180 332202615 45796120 564284105 138129733 916853875 656706575 659565146 886310228 945489722 808408322 862787752 685506165 698908965 78898289 397523988 474547492 715166892 968652773 978077894 778644017 860883810 513050319 819575092 821826797 987526676 203883146 856355624 69588325 262117277 722584327 914929485 40790632 404141331 807034670 861549617 624750387 843238748 649942871 896307439 578767418 773302659 88572901 534787512 103483890 404767264 833528510 949029625 82698684 114955656 743400815 920284089 237288351 738388181 243087271 862801320 32704685 699522822 773761747 989454691 758584635 901269168 969540264 977337349 144921416 160491886 33073932 564049515 446130990 656779140 446101004 490957407 515919892 709709171 966456692 994308551 64789624 157085467 990276032 993845104 34999379 390265146 304167736 568157524 499666470 767753122 908442010 989155214 432514977 780447170 220823877 952576410 950221794 954042544 53829863 760767313 506485604 830583846 260135709 777117307 300489822 832211367 863435607 983087972 949698465 969482447 215075063 942442053 394704063 434564257 774057711 794561367 842309045 871752757 64264180 157445336 995356771 996682650 184895486 745589927 509658995 705313079 204788142 505509985 401600095 439615055 609484794 893292277 680072401 989732776 201664563 660882000 932509469 946883901 37560587 740683696 143307877 645216794 674373014 767951535 233723770 818626799 858361631 887789196 799996386 835436164 176011146 999120289 713256909 840661349 358132989 856502579 625950536 632030631 365697857 494320425 610856292 924200750 396573437 481594390 767440600 925119609 914187776 963168303 668381272 899560953 307339823 525000054 447292137 553044805 504831379 936043723 978724226 990496238 106870757 732041295 784250247 857529459 657227924 724078045 736803022 916745549 926907243 989810111 27802726 337112809 120099076 227291062 414254847 991997735 477416604 703224035 678665376 689801486 323178000 595938890 41102592 693746200 703454950 813467882 455530872 552656993 70982217 522321820 490645046 810261254 367952750 374831798 284190371 310667562 929471130 978995806 996757922 997797695 275753605 481423974 410138427 759710521 390911837 759228627 929884111 930243582 48029952 855530041 50268872 352415373 984979213 998810083 990100293 998758590 631370371 856536173 277811 498045828 713202721 780909467 972782277 973179534 204590257 516621243 353375719 544313742 823523070 965838214 763137549 954525622 387852300 671951577 451177215 506937789 159176793 160561539 853134180 883227329 913815868 996002297 249155707 636848978 662603033 769025100 824640031 884009182 680109247 883856897 892379829 927027984 618339436 843722823 402145777 841316653 340492388 772570185 760812060 918617317 19023601 124041799 147639315 327461752 244548634 414610510 306108303 657871123 735181070 997810385 414533224 449921755 813999748 940695764 347053145 354606534 225309594 747388160 386862254 709587455 160016157 608643189 349682110 557469402 552103730 679296363 990292643 997991215 678354009 758249939 487286883 508975477 513809425 670938535 627040203 875067380 308785746 980372083 83622154 557419146 910584108 955783815 921895955 988473508 386173626 557315062 114902660 142398227 452354429 699922387 689943900 784556341 112666212 159033898 709148692 924117690 930782256 959974374 926535113 973427516 463524273 683274319 999194207 999195864 885865861 997733753 409466065 805533926 398832994 961521530 742641844 926205687 851588998 896830263 657854189 969976800 455938004 806650060 26779886 954999564 128356106 686749202 718979542 960720455 64925245 872875008 454552035 477401832 60211020 823244417 956275154 994740279 848844306 979127407 155297830 808245749 337162592 834116780 585931895 745912478 896129845 900197689 376971701 873150722 792454482 815214567 583508689 593422643 976846310 978552048 4497463 402709005 615637701 695196469 50067914 567747238 136734930 300870242 413910938 578574887 409070399 931182400 466090439 770581359 387126994 444039797 938594166 942851348 668739870 870714253 671254811 671469187 370096422 817440831 786632606 872544292 389017044 916564757 573416582 662185519 161968503 462029663 865546450 929113328 268586388 650066256 227519651 248540100 185661748 342500117 747797159 923130051 279743050 440540783 97226697 651648392 197689460 493968319 51310164 498705148 72510924 572743724 963526833 984620177 394084968 650878914 437383984 947596242 483350728 792278045 666404567 845352641 541050052 825295853 716619861 960203685 146188979 419738812 880657649 928026884 426848690 876853606 933350660 953328005 127767430 496586005 942205838 954185551 432617009 960586466 109063546 990313469 700079323 776655030 817911494 900510318 536726330 882419193 530193973 642877051 269385507 995234877 377836815 414761965 702106978 817840693 420962145 742941877 125480811 918905810 967744459 980171059 189373262 491870421 601332877 829215220 748531189 909547129 44995483 960231514 190880419 910286597 909860584 944024948 57329051 949854323 614430570 951908358 674933588 827931531 2923955 75297662 30124066 300164092 416504279 527596286 557872769 687990389 548260506 687143818 284735168 895012729 165895733 926047277 996244834 998260552 133486089 179546118 960535641 989165631 414834510 482484415 532405505 857959345 458480809 838056230 696769984 892642531 234880216 436918741 865147619 870036996 150346369 768922510 758168770 768250313 809261714 989434526 912037699 933076159 690857360 898730244 816058259 957214927 69657100 944039593 402776089 893918652 383681724 659470969 939336738 978008503 339848066 885876736 731731628 794229260 761317156 941184957 131215181 993715867 584179832 603022640 519084305 638808447 768899196 912859928 228947923 236922087 458057647 607060610 992675562 993491149 390954512 625614418 202133695 361142058 230935119 970019085 122908845 207579090 773440668 877292207 683450598 724724681 830256332 855522793 631302758 964948442 770134716 813870889 679416294 962491025 831354888 912920185 43314993 598234535 787698688 927357956 938351671 967155660 915868131 937838843 103911667 212835948 233091069 889979745 799063766 894545916 524361066 556770136 270767321 855249800 338166698 672407067 827689619 961052513 324675477 659294047 511213355 631962778 756725083 828331803 75429693 639347103 562196877 613500263 250676610 957517250 413847004 816015290 739018746 778417702 429275476 927054546 625588118 832809083 851901019 979935002 504141505 518924243 423928196 920189749 863355063 948525454 469138206 859333255 548666489 989443570 512209404 562070536 928431564 955352438 226052422 479969433 897772396 984991127 836716130 889744792 79545391 402169199 231604805 511976890 188487365 574538190 880995480 927431077 104368487 613363241 374468077 460704665 609221964 953144795 613332117 643479916 922795362 969044012 315676110 754355716 599748347 735914454 265639546 451305237 764777759 808873139 859523791 875229707 409924010 729795551 855712826 968745330 878895325 906168363 591195770 917153737 964333514 991436034 550373627 748536586 451898986 952545343 250788101 960811195 108598471 607350582 800009241 946401726 736328644 937352941 78301058 329099755 144203263 901140045 758636994 781428736 144814272 809483494 835757997 858856623 240360859 931476240 611362497 683683360 98643769 674193632 774037803 952102611 324843562 699634553 527137334 858124644 780751223 854580573 221651617 988364489 213192323 899581298 249563340 376123438 10838855 500658742 726883049 801549133 209749313 309300866 97795181 506117853 60761789 959519721 593696564 735515607 595667947 929395064 437445548 937341990 319842219 671166117 851734119 889481478 601475973 656497434 964570966 972182779 117469250 118818418 324704998 509893868 731159609 779874184 967201947 975839810 906974907 925794104 649914241 756809797 369562204 858113444 682387593 693687237 169761439 608443345 306015092 416242598 900547923 982521836 417500019 971703105 871510841 890950478 49060234 377921368 511750539 552833193 740442581 903972909 62317762 716024216 581901874 813414749 785022511 816192744 222254638 499225738 248694136 961847219 343200308 577735093 145086471 720592405 125871926 269440669 777532651 920043469 587003102 884567392 14144834 290249026 40319871 974670318 812504225 974597991 901555599 959324897 736196374 993606576 707199168 831819869 761287563 811782380 918396593 999335593 100602729 287220471 956210061 984574486 634210072 912159832 890527498 968654502 943523255 951919388 818813017 827914567 73566707 753478134 661935234 934660462 530728983 998020459 858766945 864921366 320367956 536211113 138330576 458577668 47660476 674212557 373804292 991558153 570735875 689646324 790711872 840618475 64501225 365268255 727725207 742666192 370147740 807554456 533593397 580012778 735590488 850877850 335676952 507475200 687508609 810385324 244329721 413284214 611784837 728080763 210049798 965612991 182510036 740054341 783932731 943371508 318016922 735451673 539697697 808271639 634932470 980504727 286520171 520580247 189287622 766965147 31317238 627481195 227103521 566350660 96780317 245577244 662843948 773701862 881851634 908951053 276110218 397732271 314090092 572117222 915681976 921101656 423530306 424530412 11310081 359017237 905285043 982020704 82279263 876711697 129307489 220103018 509416388 808966936 571003246 900086640 6573817 634714961 599031757 782033937 317678160 873335833 457233787 699368758 235548198 437090508 349672002 476597234 854652056 906964143 674086674 812718742 568873543 917545390 591415408 979411295 667351875 904321358 568568752 950393020 252338719 502013212 844600288 933856840 395967747 402015964 343404958 896125706 134921310 757910250 279623657 432441209 586070183 870461728 767725110 925406485 617839551 939917739 46029930 365654269 963697704 995367428 654943484 877451005 303781537 925100864 363927199 708477519 530599860 539178210 215779608 607395964 326136902 899929552 824108091 844489760 223522136 973890394 87955758 561239731 187075269 349911311 217728740 257529002 349598998 394456511 554565009 903721834 133620372 922839607 822155863 924132513 89762592 634568470 76735470 793486532 107564574 890169795 416679101 423456526 786551608 801468436 449105756 963862393 514645344 977500286 495385885 672373860 820383533 891064151 665889239 900568869 46916535 436642929 480028301 742188467 747883230 993023429 790681201 852861844 95913579 797706331 599627732 845911481 942991532 973782466 490673212 984851146 859934449 910776687 19260330 800339290 139217788 525348772 318076494 736324310 745366303 962226014 16726700 54401389 680850103 934339565 384070893 891150487 754485173 846823750 299690917 860450729 281393841 453797772 440573695 585040249 886334800 911381393 336932733 370754941 228494162 680130260 73790651 110196548 905458351 994156720 184669763 680094451 609177095 897365777 22591925 191455902 386475533 516371574 203024656 319193509 512807987 832208160 932002947 967904469 994256249 996763731 104640944 908789475 322086328 835652300 802014616 841345381 497625911 719830497 746323345 939197871 435553825 944709209 781015030 813910634 228266691 865828972 619446921 884813741 645049473 661820070 502548600 700004026 941577266 947047715 59495468 611357813 766795625 907552112 869627619 935553394 637516656 713935169 937062688 984903697 568564621 809694506 336655751 522644877 209646335 858955066 704409299 903847215 40767507 46402315 544543340 562096123 835950651 908709976 310227502 950709795 213554054 238537663 371996311 966487057 540613312 662392326 604780485 972942127 388564695 409040244 250908492 262466291 477603511 522871574 737364886 742679112 679585696 746761192 187378016 234201693 760942395 858754008 857188460 897641675 512317006 859981350 640229625 926619015 559524184 727355722 872127561 910402155 392384163 581605930 965827615 972912884 726526162 987096414 502377391 902571429 39196775 930917221 895849709 905885313 403325262 757650757 49822113 962649781 786662842 904386530 599475922 739252186 469248676 723241844 525750075 556855931 357923268 475990335 891858536 968762172 630666829 969081681 522855336 843913110 999169659 999265009 455926820 845315892 33151300 794250272 493033570 666960122 831341114 867440897 230374559 480036356 770566814 805650832 369943542 513557754 976239913 991001928 831328238 931739571 257318938 493447912 457395350 712415887 975515816 983500045 252652981 666350261 246869847 984249650 503007934 819768562 300330918 922743196 549728399 853814427 809329179 860723075 967256892 971735298 158344049 168951755 3749411 570435883 910454786 941018553 784689149 925841417 833303793 867778478 161478327 837936866 957052398 987957755 94645182 772872037 438131889 875184875 878346671 908009419 660876833 891094786 867914745 976808996 789247277 952283231 534816291 827621085 177870650 571359036 223025544 589069624 898207843 913128537 888304042 923461485 67104604 792962839 678510801 987779026 16022618 468301942 179616585 645038438 530380266 798932213 914487758 984061165 8223300 638148053 477239985 799452559 362530369 599699291 750169237 949555390 970633553 976658901 871772627 911023320 399729578 885189494 335816050 366871340 695248832 917980324 49272629 661470731 257793642 964048563 595752383 909751861 6211659 788973128 481320224 545657722 388746955 871402806 799902507 997116311 595898920 775098143 335685536 395418890 75291672 284597266 557207102 815899805 153226471 793111509 256665676 523189655 744328692 998869846 58102450 254201639 121252434 572990914 259432985 411801150 614650936 883429269 759868575 891514380 972431141 997379275 164889295 832889935 47207598 393217256 189647277 926722427 553447409 677710658 968052310 994166941 802333491 832922909 260801867 970614773 400134918 544813187 542068891 937517233 581955940 778941008 306735559 885610232 718859292 972176711 886696916 989124652 750124159 846712851 863469580 902599671 324834246 422721684 71522790 896922793 769542622 778062302 758005575 963246109 831919698 864145385 458561345 784010142 948499608 981315231 6695499 516547347 379364891 624332945 324365538 847975533 285633414 720287220 454584259 615441866 749574255 854125065 149765122 398575928 109954232 576439441 978756523 981928034 290773876 588660828 976298235 991576178 705610656 975045761 395018280 499909929 563257261 620770904 544408630 733305401 212294976 738041498 407358296 540551236 643895822 776351213 217863854 380986436 549644600 813481768 477432895 596810425 367147446 755140957 623014410 647138637 803318379 962497088 12203974 903466967 645982131 819078899 917165017 988051534 912070787 978463699 453594613 653735058 784725254 804918594 159974308 355077455 959473756 990360186 208352802 675794255 712356060 938860860 45229470 255255080 34360103 842719858 310618948 911029742 275360211 916676147 119805677 901480129 255886159 977161428 112255763 213345021 414078681 599499788 685996087 708001315 20271079 361189565 525457596 868378032 75894478 964969650 482935126 672397040 195325793 830484449 379064168 627207797 545092449 860253012 210402369 964816884 603031776 676328062 129146242 632505517 861708349 929907845 558612039 830974364 310812364 331397158 76682545 799090752 399601829 432246693 323683882 421465265 492784338 525796075 978261477 989977221 339923855 815572290 114657356 470762894 388367360 786062785 14261096 908397530 89970314 911178623 269043845 800721946 630661906 708900788 786295693 898650376 947293336 995097070 975819694 990986086 959375180 991641686 261299798 328613366 669300046 965491043 436498431 493354654 883980821 909644189 101187592 350464095 696664889 763180704 769298018 832399192 672345917 910116371 9766120 352912162 436962458 461808547 290981039 876409728 937924602 947545549 335842308 470048834 687833463 879560534 659055003 915435403 759219016 789838713 53173268 261775728 21012186 940114819 760634795 865769559 429072632 576721649 607283740 782740774 721127005 780735312 137743549 549850515 593803386 602440229 311934775 721954080 113266762 879332036 790852623 845911916 597302780 914731235 745097712 841097436 578201097 818665272 202336201 910066758 940506713 942042898 810336311 975778367 72163270 707137610 848965130 869056269 871475591 963473372 500825874 903185263 501619802 633810406 643759013 915331482 54414869 325489792 395469277 905933124 492239169 549454133 915882166 983200525 745169960 861735747 551657444 673761655 830790875 952508289 746870186 923615381 619009639 748230514 194719643 712381122 161988951 884686034 553745786 899321151 241319551 529868269 25971888 645618558 676815716 941490555 850723205 948663478 49383656 219118820 478283985 758742200 679890015 952104075 958332576 978536920 162483759 945521958 389369369 706109715 831240244 933317318 246353720 587098717 508100212 654381437 491244179 701044860 384098422 937204915 729823288 991241988 468993616 836120108 520119695 915285066 992677928 996637429 897910079 898998872 880209297 933134174 918213555 949745496 873434854 905510623 723301807 983099684 266036169 437604930 632674474 953006528 266217489 543683455 688545737 816196897 908167168 988297649 402628832 698681907 669989724 679157527 409600447 734948146 777917032 920061926 79708251 309367273 596218850 814732094 685638875 708365340 440657320 448047393 102588007 328684530 834784622 875471612 985394669 992887631 52301675 439177928 734356678 970051195 470421283 576818938 202459082 956572814 816921853 854062673 281446064 738130062 846941378 983945051 408837784 538856460 727667057 954451735 165288117 482262239 272805649 667316073 661326948 983731225 301660058 964245467 489702664 961498135 504289175 839752122 864484785 905322387 487712132 617891591 408056181 743971005 355953811 710334540 138616974 560825661 53415727 79585796 1056676 712201198 37294530 743923933 880203750 958422962 788124803 924515673 992149382 995800044 745557461 828232682 215380296 748420371 354118949 820008400 311838284 799881574 60824458 874423026 956493857 988883794 386581756 392832017 241027315 917230986 683622440 689314573 260574878 764476593 605781204 800220498 635064288 901220581 285281261 729392459 758740754 960069274 167306928 703800423 891887545 908289573 574420982 765254913 912548788 945328042 872194876 912418413 496008500 575568782 743869000 980736905 590631610 885664246 806711606 956509878 454470325 759736835 345038293 737498975 468825258 976137367 579518684 586764680 424242894 700240027 254958619 974428059 993272214 993639602 278405835 327557303 251026583 857298783 518590682 902585641 268533160 397008443 73374189 578702958 952805606 964240240 657824013 714961700 914311045 958807107 9380508 39195291 250884940 916089253 5956605 655777817 760737890 986972479 306086686 328379496 227189330 599829258 277053899 470490145 869278479 936125558 256414022 459231384 827790105 831520099 941523445 978600372 736538163 913707479 442160977 784469938 783128095 994644493 642654074 673916089 77838680 360568653 729746577 819022582 761159447 765999246 485049998 979159800 881241955 976300272 316919991 660134854 14071430 686802139 386354650 397326827 35275779 593868300 518396175 703643187 499506332 978680369 122370675 282882468 394457605 526525841 442874262 775941193 358859047 669387881 251781089 705680591 882582560 976721173 325648917 782004520 650964532 879250127 977820044 986713252 848831234 980180859 316708298 366679154 789285248 958615327 923142480 986613176 758040884 902370740 841747136 909829987 911407538 955304837 35935620 95408553 910913394 917470039 915108751 982138544 246811215 898230545 341133411 406802378 662389671 822131369 198585922 605486803 198163317 242260375 878877277 986254702 141670848 903091571 515638183 897503231 300829109 393524783 434607172 636580906 388848509 609567825 568559309 992732958 795846454 938031150 384108409 572626837 804204977 987374118 36569452 934962473 688997878 995688529 541647262 837438416 677975974 844455921 542019019 977643931 634419555 910882259 709339795 743203507 341535962 890433509 850400582 989985210 92405911 108938458 756140776 966271277 720087438 963075769 447086751 820737506 26555907 159320807 419417608 444598169 999340435 999391375 668043316 726463265 844769126 994634341 303792564 474019299 248724133 338932216 5204264 221951746 876787240 969332663 405308245 849359416 674550944 932816178 985387223 991921303 10491286 127311797 868158460 986362549 437642968 930934289 465905696 547149604 114267428 335331112 307933477 554954542 780477354 879464295 600557205 657615468 487481654 806385947 741586114 776981548 993345381 996677064 102802869 953431208 170485302 580938602 192847261 201106380 812315700 841341926 264387466 564010507 761947009 788383517 104081552 879870075 93647104 884622211 740279459 983923308 393733266 912084705 544522661 732192305 517985631 748993778 891583343 954749310 232821961 303130708 324429612 901662760 993153530 994040125 38575628 483463775 718065857 986086364 309465554 598877719 63225847 213719248 684496282 835275886 352917058 619099839 897371849 927081086 404831121 558225437 604118350 811504111 924611277 968768653 84769369 643807974 161947959 989057885 125053658 655724512 143533722 732859735 81113845 592485487 237188247 798870489 260442362 491897658 14573458 195190579 994047856 996164061 522690501 900112877 786627838 887989473 190883250 214342882 369197269 639126457 721282644 728336843 324706239 741627235 499352599 741128036 806247577 821439467 7708229 812166909 745500765 771108406 602092121 735416979 366427633 788268242 968069993 978277706 927907158 937067944 319386278 763750142 39664261 250355608 239229609 486148981 250720169 687732377 573101924 716011145 886624753 998771975 424932454 651205748 893273109 914073015 425352882 788967216 266284075 633738647 423743076 966615959 607549600 923100319 542497090 663487845 388661129 397425857 62490185 498523351 47594308 220474321 797460957 908410086 609231288 746829673 213512166 392365020 683141122 735989402 264432350 360841509 125144160 445948073 16419238 739467345 437048324 806850431 266104113 580408672 782277678 962039536 837836384 892133173 685098145 910502886 609624088 769201711 342549779 550995497 315059854 474251742 602467812 806938779 881747074 945376875 681475419 846665711 729531559 923089593 691951816 893926548 49290058 330458646 899867022 900337949 659509893 871274536 364986798 755949060 806450988 932056812 192509391 305590698 639108467 754275010 93480166 934643405 666429158 965959057 664200218 902575853 612274587 797679379 61611449 407473113 112845629 704518797 888364514 952836379 172855097 931121795 361283820 677799917 910934106 934679101 808644756 919415678 383750049 891156204 683127436 941888886 201549143 955002391 175682584 342234282 962970678 969414160 942830195 968579014 792324222 837481781 205106932 915591323 123099567 780468556 90364241 677792225 377077425 540348067 902171682 954947441 971325244 991451699 859062342 882295666 906055451 985015963 595632883 978718944 764127734 836826612 951485803 962335962 257451280 794221156 459797857 892527576 339951222 692932299 638454333 894656942 789445578 804068597 339698495 373614420 165660817 400532531 850281373 898436440 380866603 530599388 521610970 626969395 488815881 939908540 963293751 963634560 132383374 587581949 32200333 83152864 674799971 823923774 681119142 696232090 814505285 941747127 127656467 137221701 758673879 988552129 943155615 989356747 599096192 980732125 38766856 765058105 512630597 613757366 17549301 538381307 994522846 997589281 253461221 797282055 960551826 988722318 823022140 998873645 86588337 740084079 716819799 828151608 186479417 499810369 820039122 930753811 215409433 286367826 81448973 729692292 289604487 817504742 376475181 837650560 263819437 962531084 456280674 596783948 839555430 942108728 85374102 492037129 220242734 394209520 396159923 985243531 542352973 669411132 984729300 994878888 919642654 919757279 629405302 656576619 106027395 875160976 942429383 985398019 267105926 502960564 2660311 17912064 61229400 284723134 352774021 973136363 404858028 707218278 709154068 970259532 841755801 930894920 680504052 956430318 135930820 527919294 4813806 917701420 384698473 478533211 700613438 945863277 348028234 483923034 180632738 799148926 299782919 612905146 140947339 689947517 580315479 650240489 307836704 933208052 297045934 348313876 208380836 713867002 190582763 980860367 488891395 778049647 922372665 967043586 74446247 937969911 603975541 776416600 234014996 809839963 319041490 811406176 281992541 570205357 353354043 765006723 546659881 832010590 516173235 750794767 285339040 954781556 250290097 914930797 25270773 785212656 605203601 969266188 29356754 954348125 312439697 962790533 327862156 546382380 230307886 386877446 600979015 615752764 74826248 691298113 401379395 978869325 123002284 368952912 570292094 643404005 164704238 854541073 869221682 921133114 320992317 793094276 218387900 320466384 782604490 968591159 47984622 442270876 810851186 841374334 798972936 930051025 10094773 782830855 715078507 939291785 744912693 980264913 272569113 444852735 619853767 995597532 362453902 393389105 976049126 999206673 637619094 699926752 484003145 800517393 620103062 798461113 643254766 917418956 625826651 885090645 789416938 911747020 399666343 928335304 495249963 862228036 398568620 486983434 537247063 700134502 83195842 712738477 795965344 888363552 798752642 804670865 754069490 972571424 671303833 967235292 595940838 908836491 986876335 995637451 659877087 906164818 241421978 435646157 929914083 940863338 384601844 642281998 35142923 351124241 930054805 974681459 990075827 994148381 364389408 380569362 701725014 965752402 950695901 953963708 817206397 833816314 711645319 947035862 4169059 466829982 870808244 876699994 489489018 937353119 652846330 941534903 168956453 628474499 529291719 888199731 971295532 977875028 566232547 838143619 113118530 878611570 274634526 287958365 447093024 915904227 147629217 363277546 703679809 736430667 365087125 884968659 46394641 443468408 122340985 179710466 898543013 992102927 709286458 986862750 800581965 956301718 238861531 337746982 176939482 455459486 592430686 651126741 706033528 928821779 376031744 952174327 965490466 996744072 850634570 911756392 135557418 171427440 213429492 998248940 254320851 620968821 15390086 311142830 190210869 585652919 708301049 837852816 788817503 971049471 159707885 253280089 458816253 926925384 924934333 951845922 360714693 421100828 419723017 793952159 429341687 625647895 124004430 605083053 838894378 902918566 331010602 474841780 133062494 343018962 463672166 973591663 919268530 951627610 477788014 910066799 957083056 992490000 510606379 567175284 133522275 176875367 921796108 959579303 629100478 640978769 914970942 937226329 222880457 418119503 845216431 885904250 20518206 883005451 679659158 954520905 518891902 759080053 959686369 969830178 329680156 848997921 391310357 658178700 990817919 997794369 604078976 855278887 981424235 994592449 434502644 917261967 229092359 886460409 419155720 609098619 827427990 960918490 357898476 996311677 29758171 982533593 781126869 783796220 463338314 639249420 849816880 945184281 534942310 785673378 577263124 656620068 504953567 773253547 170999176 969925875 196236560 324710663 887379356 893057300 373119623 533809736 303791810 967780783 302892848 824459265 133513573 465794079 508506020 778896089 593204330 887309467 88942675 360819103 325549256 447326328 101029493 102234076 918792364 987159202 787987619 814021136 629587166 675738714 259797254 884898024 854937051 867680878 919135503 993111685 528577722 784389618 111021348 889407422 852531678 914592988 985167264 989268896 186937484 700453220 405906690 885685094 738114235 738639060 816890400 984111780 320627703 450168125 672057520 720847045 905606113 952751077 832071418 959012178 371296385 749627468 406196109 662981107 893661836 944475890 500998704 619114669 658410664 878237965 142003699 460392421 273384250 490695160 40892547 107189772 237016656 314518131 86448766 402815726 127621590 818597933 72154901 648944269 582997997 789802091 134226398 149793578 191973671 955407518 250480052 357659877 194101179 459699886 191182317 278250177 945887349 947629997 815565836 889538197 867761916 928750289 90580511 256769777 510684688 977653341 687934300 691406723 715256303 829354169 872555157 979236992 814701988 987291282 924930799 977523214 886175754 939817498 673586734 867579109 839071276 984751114 642257127 694872454 647144325 880693886 928627917 937279406 350254755 679251659 392421600 875731828 907257334 967633748 25524324 86686603 798111616 932922038 742485333 898745959 890135089 957264815 535470640 982826567 908870675 910375327 779796793 831525127 883753803 990966876 646408014 768290126 199414169 362809425 510391624 636819352 135333585 146114350 247642975 614093561 976590336 982637380 690413843 798143405 8581141 592521364 232016050 352890555 935207035 987907527 61794959 768885999 783462425 827755809 689510437 690034415 324950374 945885592 101742188 891862187 905056751 905977265 65269676 461944890 18866211 527960540 810478550 949889990 370098183 997764875 949361651 994859222 566202422 749352642 393946684 763232346 693494546 896309308 385951560 696301377 167046195 827640619 421672766 636573649 192736557 971880709 477680531 755305916 923008838 932654368 957965031 979051822 917697158 996375037 668370399 817204533 821468280 856297462 75377900 755798746 291697258 473134618 542574514 940412425 837657025 960151205 790213015 929295505 106450297 385199546 684831527 953502599 966713530 992553843 204198372 903555525 947058901 966212827 651062122 806014292 592467106 720336677 896387490 985331141 153265288 317344320 150580186 252968486 273428401 996285099 50537348 714801549 981495925 997001246 219660165 442196275 598172887 803336121 130377357 254986550 674025548 928090473 180627035 601414299 118763947 674650628 56719662 804629970 838419050 959987388 978356272 979077493 115965678 548268359 361952357 672044781 511422220 848082462 575061795 584740960 159467770 204307547 299458152 385612013 351040522 444674489 787889700 967551999 879089772 914637666 712470188 730893795 908117384 916345167 84672119 126015184 997053148 999099455 558225615 819110642 541481685 826509989 135760790 222894377 23311817 52696957 205356191 856267515 42915016 490539167 946553231 958457860 437428035 543215848 236450923 510708766 395406039 451959226 841327813 963433277 507105872 509888272 439157633 461714854 424059605 795345969 759022247 935357920 272134919 321808105 494647547 671936744 29077811 718485080 233663559 993660096 912247149 974066829 570735421 887708636 546851876 617590737 356142485 925531208 234425477 983280982 704318158 790340912 683584703 752652429 790155164 992681840 883748428 971765683 155808804 582573704 813923807 881023955 711977441 948428583 767588191 797036111 868334548 995865547 724011441 755224006 954115131 971188856 821961721 902014882 226534633 402649142 355396683 708929690 913707931 940317611 372480253 541770603 917023090 931931501 29788764 672031240 787312695 915663822 785344699 945517062 564387815 911997684 531727220 715208867 464568848 982924273 795222629 858558312 473004419 675441502 934754356 993577445 230667186 657507271 309256899 752263326 30841606 235400882 727409030 879838624 527264134 718539518 166770075 316864454 414694063 992563804 490428163 936486018 855177045 989939593 460213435 927609250 208455839 624476238 857074621 987855181 92371926 627685496 152527834 784261290 755756566 992042264 370313151 493572378 881199721 883249955 616457594 692154664 958813430 960456528 122627857 539284280 170388823 307132778 666895699 803886674 379312857 392496740 191563582 204885626 375296495 598149768 441414640 704979278 333668849 874905780 288373379 567488264 827982901 882293190 61603119 329691738 929784512 944355910 898870205 905419638 610954447 916396557 431194859 867339892 928880696 976236329 763336046 997896052 387283764 506991729 821622373 906103415 150334472 351926351 496138756 830127309 13483459 734713680 274158522 323343320 781532893 906438728 438943825 949870702 846401109 965539620 798361724 833785290 496334110 703704517 351507155 977855459 215945670 552597942 973486167 994524142 155320063 954608885 350710523 818376198 959439342 986774304 33581927 305312042 195943352 984596637 733077945 947021313 180694607 802607510 566953657 793103352 973290784 998435096 778361431 943560479 539079434 583711377 718798107 873073994 642888871 711555282 4401563 120494647 894584691 988355608 536135256 869079531 420050501 544733691 170842414 900827542 709064674 822070488 226456137 715424620 508142871 789249522 404392685 464431336 825974413 887476444 839873063 920619108 492488999 990553195 437122069 978534326 99013682 380794659 109888872 633870700 15636297 825709593 184354925 336655100 66118370 83603935 242072070 430726504 852033866 884429612 540167627 615860253 977766873 982818111 446852430 945280976 364627099 631587999 737391563 872766716 155856228 912706503 29091356 402424362 920042527 970630624 795649437 940659061 29934617 300438541 918574995 944258583 72383015 249948479 549363657 680536647 342586729 642299280 517462683 619185415 610336059 756370464 493488798 842264504 743024320 933316127 669390772 687287589 804623427 986188975 151726349 733970425 461868802 753720370 842303838 962056325 848107171 906216474 195789763 744275300 738355949 823461625 641894919 981815899 66799298 703536078 773346197 881196537 229696191 801618570 46156348 80445173 56353505 814706135 221381875 580852325 209101689 588625102 949774075 984797896 312703781 434806603 302449760 905271309 137778508 701270526 784398178 837812564 651785312 990203480 712309443 951068407 246286467 768120888 902904282 953372904 675040990 759237399 767547462 881834877 679769180 695305018 766676866 913270136 175739350 519731279 725669368 935376836 944657458 979471149 896680494 932564455 72314591 906775669 746913957 901907306 909306849 995988957 288232085 945982396 211449586 847543076 550533779 833132281 359525026 715466043 659766779 861345254 413868438 431981164 563222222 762748778 449489882 580321286 781213769 888695724 142066050 397080198 415470512 985820161 660744196 935649290 363416852 750599060 708286419 973095244 538651971 596487890 242942773 458454049 581373075 810837726 318237448 390424599 336695953 447481197 155294725 504499562 399317161 593813604 413944785 574074911 892190541 955290869 207456708 400647471 54290216 757250764 605143738 818526566 329905900 843888441 411445518 599789967 849555288 955799718 846010501 856017614 128468490 404017828 18920952 590243537 81037396 156476608 433031820 734258936 629700295 783519902 548815838 998399040 509430125 880658602 714265468 894551216 137253995 318565408 588549182 898370105 659623720 734061865 343396537 882807413 487565647 685013241 989823780 998429704 525894893 647760864 896900344 971433527 949837193 981921250 561015190 625089087 262471262 443432195 638226298 910241068 206957358 294583933 188889410 857249815 37733590 361398122 73298551 266225754 176757026 504685667 426218817 459461068 124145818 202291355 902223943 973994171 164071157 869963848 646277164 661134146 89441900 924565966 630819259 654957550 52774603 383614877 604058396 947730582 420145231 948704036 902633066 976396572 565060196 573579663 549370716 922054617 58792228 594501319 915837865 941895683 66243458 525485587 368016529 899134927 466576904 903186043 216722673 822859295 750051372 905126881 117328206 983623624 619442222 933335290 223935441 811880002 140430990 957706056 997865584 998681672 397982541 732985441 577836408 663755141 387056358 495345720 155079495 833915114 576314839 829824320 52116414 520011349 146284910 230196601 849803429 893488301 49613507 650112397 376954461 581313608 970159088 994496978 286199201 729169888 235465309 987416886 890079950 945444513 893734611 918733493 919011539 938209995 862701225 937357185 287925393 983145173 581460203 658886871 414559531 897696397 225606827 682687323 645486883 928397945 402437897 586646113 189317558 209778081 848144483 974228707 828094806 857894601 428411632 561664742 449235354 979499376 405258102 893226559 271170635 968604794 574228831 611139660 212672653 864426438 503312488 544355701 125104497 696643662 655469445 885640095 492538887 933527267 826731491 964690765 12941440 730447604 29252419 113018876 623496208 735630364 765396310 992354378 480233061 765373530 34144391 669651511 323797443 436941268 4114403 386916602 559976944 865663142 638247707 849910503 709789378 742029414 770284441 777281223 377680847 938392621 877761137 887083113 629549077 878050596 416353010 625680886 428002660 619491930 388595362 613997402 102783170 144635756 989388492 990713255 354738355 854796950 87782499 447441993 641048382 860071748 121882452 160585876 214840527 435317225 192440540 583497824 731243497 805140228 640344881 653235427 627211029 817033615 388519106 837749785 835838335 989699271 905300723 992124164 323856137 343441326 731844171 887155494 305902248 755060273 674171977 744472563 593822767 631875906 826676172 929941710 979839102 983225078 271553562 302687940 79498130 712900147 673673784 800107188 82257308 527689065 444638621 554634823 235759481 374750273 186177134 460628220 389630520 610360141 663838461 667992506 713276657 735465093 498500850 609089749 318910784 961451450 803429691 967348462 844956223 938475260 444619004 614013317 937998384 961833420 597883899 971177648 776961235 860429519 278214845 426282366 941190104 980108326 363572198 996384637 171740334 433735582 925239588 926551933 290039628 594114780 553573169 872761182 391275170 511405834 425610237 631669020 399895329 427931190 672009221 905301910 337313819 394054671 639644623 873080442 956802309 986343751 649518043 704529866 649154595 757055640 952945975 992091750 345153661 377682278 808084745 843305312 970267810 994184569 627591302 772422817 887166249 967929248 456883532 764550063 607552107 631173691 908380532 936523855 16057197 490015494 546991670 681668922 29483487 348172559 189113086 614725539 67803905 529984010 554470839 773663354 99069310 439275886 691152885 779701842 702373005 843406386 536171648 682810486 913564532 959420763 456469033 852779657 800278761 874156724 507881611 900786940 960623288 984831701 597319332 622551494 93933138 744992640 533700706 916377685 9524897 16038570 406376113 445141717 534674913 753472958 105449451 402261969 659816885 773429845 418955565 844940933 342233993 576595403 776653525 779305812 254461107 463102436 138426395 146169480 91453867 442117281 322506155 977398798 823305240 883928645 992444685 992952460 938630655 963964815 36453103 328680921 445140101 528796128 180730534 667638700 246035398 908426696 582112621 973537207 375130661 764310835 125918996 169416831 250754400 383884767 592072490 747995738 347786418 791906022 398053858 614390251 461404514 660992214 553764884 905873129 577442676 706476226 85269228 722441551 983917038 994054187 222052382 561993377 754772438 955424976 930811980 964386916 443545464 825924492 258479077 666861386 843507760 880128679 538051091 749930488 229841813 574661916 968668468 994355625 651770272 838662373 55575102 444444086 190016895 975648052 590148200 970714597 969201008 978817719 834762228 940290018 123793326 951401815 797140184 883877527 586783334 945637174 701318846 827575257 377023956 570479593 925918245 995862429 322185015 992394544 799343533 844902718 435649520 771819949 877397766 905461622 353680140 430855571 108828435 596758138 830127302 930144796 348218169 597514028 600256272 821696745 703822405 816636454 832818902 918360935 953558613 972957718 244540888 674069650 379248624 953525123 336532301 538669088 701589452 933718261 988828958 997004438 933496036 960820899 530855638 780694762 958005461 973987218 245899988 825897197 729912643 960630505 427334812 770738670 145679593 502626291 653069196 827841822 644862064 852262426 582945111 903727757 644281993 754136081 440622465 640180715 101156414 253073505 665712953 891149061 168296346 915094998 390368479 425368850 633324923 724503357 277653432 673937632 366004953 939440389 266291335 765423895 963969355 989508317 920570036 982359642 695801420 814144359 151705169 688651789 126434000 525421600 876219240 997777630 354247171 717940180 325242737 480199220 545828313 864789163 611177555 692826571 852395256 916408624 497425500 795028275 198683025 484728092 541713037 667493517 530902985 910224672 528367256 710950496 124814817 606689603 91466296 664693098 655293080 940013543 324612341 782690382 559063276 856942625 662058494 673629905 196933640 448793647 25833817 534815853 102876740 720397486 33438835 444406819 23774055 920154892 717754128 819063394 818086712 870517311 843910036 939701187 898259203 978276143 545590625 701929248 740306524 892776615 503802412 949187956 112753704 877361769 9193797 846215678 314602940 627608974 691689992 843573835 407249400 633854220 57962391 964524166 356841441 508300053 303362256 871950054 360075609 557197722 457617111 702586143 875465498 887679784 285292816 350369214 118210880 451984610 907930377 909304512 348589701 448507478 4858607 502151243 888772672 901189449 694112457 758880598 818945673 988213140 251812108 728141223 782291294 826703580 431036802 785450264 317521340 964791702 76165646 853117896 853354296 872234297 247673054 573830766 496721484 937255903 118685508 406377175 567030507 875028350 866981007 962750035 52155464 823607223 212111920 867969309 702735566 987472099 755973152 921178163 382582852 815533415 689581829 835484741 288953476 961767849 696144367 801939465 66430786 182282253 307324319 329668138 777391546 828752441 249178569 317770242 704112510 745727617 531856405 897916655 412677322 591402430 186133157 308097287 344331385 601848602 506821036 556529317 850398126 893739759 121059559 367042843 165046257 798092319 503266379 581307973 18559559 608621069 468979370 532404170 551679001 603404743 358320521 948179208 805519775 932190869 358924862 724401113 131848492 914769472 63407731 884663070 700348915 992180392 650020501 977156181 304848763 671401347 761972295 963928521 105088984 384901914 744593400 996347478 60295559 385170469 960276775 985797487 187987200 959648286 877973677 960260873 762515420 818918319 928635880 936353819 829197533 988136393 608351907 655559337 706270436 834226632 217674251 958084689 546687428 614984904 333407170 747949870 218213849 659985620 911415827 961378203 911270485 924565342 976450036 993966585 497934598 860470952 13845829 741008380 119793295 166108203 497981492 831138763 202379141 962676962 421729566 454312767 723095133 846350822 780922409 853928476 36700339 805901177 847399641 953824852 706790223 883839678 943069942 943256660 923705181 935082683 27105391 511823125 865279895 959093915 79774247 187070125 506483517 878118216 162728052 232903357 806599268 931828818 702164174 878930673 134708965 193636330 519142587 596218608 860151560 971440475 79807271 712698111 365480908 957362691 20489037 909746332 385084288 509295080 153648186 191553854 376948229 836413884 903213314 959568588 27640055 43757663 444993058 964891396 16451123 655363804 868009275 964058108 401657543 621882127 895687032 957291819 835653784 867131054 805303670 862207669 990176245 996250799 517299273 609164534 557958274 782426849 861703231 961670691 950142560 964617397 286931882 857706389 842756182 955259733 911921146 983259156 727991575 807951588 949243200 964468115 183800278 380702237 892210873 960354576 914057882 937353780 307965199 716311198 655511678 720440498 127196073 276655606 763713610 902859847 350025643 550840897 227007478 240928858 492618453 612401411 193303355 343033365 761338982 907640640 229159550 565687479 605198291 775538949 680020429 918606477 521446453 847957054 843915607 883784617 7990551 400116376 667700077 884524511 651547150 698918375 209404830 309420105 358826278 626481499 811732057 917087719 847299640 857865171 25729828 397008931 676109912 975285630 686175361 697788328 343681843 607209952 979177659 990276996 653771296 862465648 152278808 751946217 210216959 422591861 868343798 947496918 341327077 717592521 886320887 898925953 23507692 748186173 781587768 925582603 785303551 981633533 101825254 159758121 214132086 636635417 470672401 616027512 613302144 779608096 13428729 852098601 97050259 167547951 493055640 817316316 306395443 778585682 540800352 750319873 666747648 938614090 525569032 936983225 944754485 959601685 31949788 255673112 711981361 776839794 601625624 623160746 456391539 917741035 861107618 882675990 596201138 885624461 407585916 616048683 846123580 931046055 599427318 889931550 293099249 314143095 383320815 819201852 276967007 751425868 228798392 939830491 490790599 579988681 911415716 941954770 581208856 689322976 966744460 968989592 832138861 959754093 845492043 862742737 325037770 744006752 212438363 884989595 403933911 855009302 85616086 890833305 98523031 617732814 359519430 787690490 156437074 371541428 424289359 769184151 564786034 674845201 889800699 961026001 26998886 597628197 195052546 768401385 325881715 335534817 342853857 423223793 550683260 974253006 186079709 430183283 793762751 804581745 65682723 914741256 837249839 982751963 673301901 980692772 186597935 723465571 256218608 966623475 857428110 860212241 83309209 100886029 197060920 909883221 550535371 875455577 559176771 668477408 210939584 651024159 870528418 968187652 571204003 688962166 766621166 774351361 334745869 819972920 548196601 674493797 393347938 753263103 199318304 601457009 336640090 638500334 796742250 961384272 737178540 812009403 398232025 555170907 261684033 776402619 396973242 460656050 455397590 661038127 62781544 819488338 329672372 969253120 544836045 948307104 172090981 338992153 101680446 191663634 666163276 891646399 545517753 557009966 574832447 871381296 737607070 826007526 458952196 737546875 675226333 946345336 297946558 805286578 290914812 726404966 214806718 606007797 944811983 961117311 49581016 344508413 644858820 999145706 768148561 874011616 324665097 839485856 649218999 922508067 286189910 976486381 506329874 824863168 439233727 571224953 889852046 978478699 359622707 675829696 590706924 873095009 686071712 823750202 960208804 989448850 378224492 949377514 9043326 755747642 500003615 864546707 118439719 923082140 535121384 878126563 640466601 831448629 303392600 837596230 303329306 840804440 273481224 780324928 366619110 815627551 328806279 526604604 657933322 974920140 299331588 876466000 414623514 642213181 79673257 437527617 453290680 842538593 804657118 948747431 439164090 723643781 947533395 957128546 101243610 169328267 969898951 971666584 784409647 868851618 76067071 247836680 375137206 770838238 124452075 157754914 343894377 519423969 954998158 976720429 607770007 871345276 813408744 992628683 257873168 962416987 439277049 466870203 720688872 776429360 578292484 853914025 171462317 741879701 742051140 795806498 11655098 633922376 243589259 692606852 104453650 575791959 528758196 970672149 327014730 938341607 885165513 886076977 691907094 773525337 612441809 763200804 684724100 745472895 712157397 829991339 210262879 386599676 919749328 948655312 509684114 971055509 291604072 424826808 323165146 964348722 143961863 664001281 454066649 949821835 924789852 940391604 471965765 870127579 495244147 934835993 127042119 836759719 688552915 754805553 817882889 831111809 50547693 779965854 164853327 791920330 443546020 512645152 645603210 899347742 764726168 939700583 932928473 947968458 642661742 794043928 187395981 385303289 394004003 500948433 440009651 996514903 703531909 832874162 69831218 483014649 735405263 819782103 907116889 927689952 869941425 904670986 31407287 879591742 482976143 809994229 105500030 708140010 297032386 981681601 813436234 900143858 555212470 591632204 174736847 901726817 143783621 739198630 616637021 818860202 525630513 939420302 315061620 451882391 639393468 808828969 571049265 900885579 188211388 293543556 415987188 971887406 673666202 918745644 612196318 665855496 686198863 754457820 750193996 834966646 244994237 484141261 778372888 964128191 902718124 962600974 99196497 706491028 270509358 518391431 945919212 965434995 590162622 815180035 835606521 855042980 690441257 721759356 692389569 726985783 436087874 785718166 913856044 948270049 878084437 904340311 704400431 748248106 611785443 747413655 862467401 888319743 629749280 964538646 652554558 852531570 910194122 963367674 370523164 553312242 744883817 763899452 90560192 611873638 210476786 785461573 324127028 696659145 615865901 736082921 325623870 883662854 788046805 837523636 397613567 609784959 721684165 851546771 116361421 153784477 517555652 576896028 731812723 813499174 990398380 994055035 238915181 818447232 247234107 605520995 616178941 687480608 682343127 818158767 259982169 648285859 114308519 985641443 130476332 468980514 37232876 745832419 201739559 754232080 489995249 935623284 819009420 870922188 808012544 972381185 344848017 857976130 524057429 827769239 150459894 548791209 697169238 914622001 782394556 869456054 63097046 949140412 619363688 758582834 334326582 957513955 951822037 981374465 267105080 846940062 782772663 902667254 759478137 944873732 842245284 931076038 386290827 544920145 169249401 731952450 35499121 461323480 974556275 993306799 551864673 696274283 107910883 119926197 475403533 550594148 363120609 687760074 349093901 953745774 746003340 810496304 218514640 945959208 227291051 325631454 378640395 686242322 444088062 495289098 200635952 380215078 700791635 855382243 794003113 814289577 82705422 563868281 77445430 419173329 327007519 668044072 93517057 803287835 207644323 783438541 752131003 765190015 89034516 831338478 192350186 914677200 83512921 272816845 389812185 897153031 144513374 947794065 259516800 825229245 504159046 763712943 263122070 780793407 480220449 605641993 805860497 924816615 23045185 974225787 447258477 993501653 28183323 816536415 74115058 150009374 233311580 266204228 860844172 940282211 846099408 975257770 44390978 768598961 211750071 802295847 51993113 655621599 561513006 935761545 323608642 979558593 362644753 737400622 721309303 906534223 613578317 842050061 807215771 830333124 387712369 623432969 518890992 872155161 721746033 883387558 992653947 994316911 360904980 631543336 594771402 853000989 255281186 560599125 755690075 952566751 605721185 988853840 873758290 906727403 786812547 901902709 157248060 741038436 811525381 970298150 27300834 732286978 758357638 974189917 862081009 888381757 151001425 420733156 90216330 963343418 9466048 878165971 421021928 874880964 475836087 555563131 643722159 897154313 274506297 460974753 905198359 990914489 580984482 701336880 163748133 690089023 834588606 989045142 867283374 972263141 588383359 733727269 480206192 570614909 551942965 821608359 560985179 612688678 769302563 840561724 320081614 650006989 724525893 918663746 597168459 613233624 758604974 822659898 810831901 860358569 742745072 770372755 817267059 980353246 661738410 793981932 587872249 897720852 972943061 983070600 505429756 592701607 989438117 992082244 280825414 308998076 703690987 824695568 368480016 372506931 435844352 789863125 871307353 899555896 233097585 850154429 643944955 754007300 865042170 921839370 255673055 446841874 322308518 675156465 737541242 997330906 984821540 984922427 648965974 980212726 840574875 887547128 297584370 460058755 139260716 794975309 428593853 746365426 196050586 282613948 507598746 675365309 144340037 448130421 687161867 965243548 900354556 986099869 190363248 574085940 395098175 491036955 979972333 985398764 551364915 793240259 198623687 516293728 642673251 989711330 910179418 967847788 876245035 987333573 249628431 280768502 601315960 814904660 19052323 27696296 551772448 644483025 959453129 971338018 364548235 804489206 521192441 903295092 265828276 978543004 230517253 880558218 547840820 752307796 48265236 867585812 108896815 350403768 123618450 220536568 542829468 851505108 251296517 470925188 282363819 480513486 962824090 975077523 836372782 966450123 564025672 899315321 689273083 978790641 815637579 904243190 862521021 972424678 813469243 909689351 37787586 424174063 799836255 837133851 260920244 389939279 355240219 700437373 272440385 399876850 947697906 990353503 128303873 591936765 502157303 829753894 429488756 609476608 669475120 888766966 153727057 717354465 340560170 809308743 966907024 994018621 501347418 643300820 393676408 813470349 945780229 964997163 739057726 925344713 546814487 758207022 531992572 609435954 177753959 246366193 351942556 457073246 113527743 611327063 973614692 986064786 470636106 927472052 167756591 466460177 27481179 470518226 359079 765128685 166425810 726358665 973111682 979485346 965416880 970360460 493103665 859096935 148205885 820330319 620982893 822552601 661672383 711173606 557885109 615329879 867652412 936895539 257338870 664517853 52400397 516692791 782751075 893005404 581839973 680201084 697643221 925369330 808453321 872948943 628303117 972483237 641179854 806832969 697205691 869731540 148339628 812559866 479411981 658276167 787865250 894037098 469926392 859440419 908318371 980338360 294448435 638797633 85664461 512651540 876903133 891395723 916445942 967599206 645203501 895122646 681801726 827194228 480030085 510716697 796255587 844676783 511175913 994938031 912629205 957386348 935440706 964669563 953423706 961317810 832964997 906620104 97435136 380316388 867280388 935364635 227668568 285961575 347949015 777735799 98812779 185431896 416774377 847825412 337875278 939709048 161279323 978840506 630855592 704298324 445637010 857435793 391591305 606480208 854131783 970808444 403981325 875729950 397460097 480024427 432419919 767311573 899193331 913571208 411953508 635236981 692835626 738333059 213960333 328778455 749164057 776531335 687795122 895333191 942394448 978182321 25215503 42987023 38300022 78554687 564401298 878156543 848924729 896362784 581521559 963930346 599898145 633572186 198369815 472594816 806077518 955932574 883791571 911505483 605156621 908502182 371174704 465176820 919014697 981176862 355713066 897994623 807911831 836689777 831892479 926701064 741355058 822423923 437914291 827991691 59713433 869321720 495714822 629763739 749428389 874911371 870069109 870916102 728254241 825963388 256451316 641822427 634337352 717200110 993817814 998213428 710359211 892810615 591715811 842245791 544792963 949425107 551357809 726169764 451660002 842873997 645159591 732296231 446367537 975477614 696435590 740912716 235960669 747066475 260826589 619070931 398329931 822178608 348988995 610793538 680275435 842330588 545499069 818142500 4648749 804698705 439295375 716639032 222775568 617175025 95254249 823175965 274978515 884733475 927809800 935045707 950180865 990553376 8843594 329864288 275775964 280376250 109700161 150445613 118360575 789650228 145795309 969666114 103338339 248361601 54529276 856299311 256015539 604242207 964264811 976519624 263866441 415856344 642009407 831353459 120904526 183155627 496822097 619003238 40149437 563741245 693243818 750371481 803372582 963204932 857239874 978396629 193904413 249066295 370628295 506915787 672141315 966174074 844025928 907973378 540876856 666861644 655855299 968126523 141755326 798782422 285900470 686649755 424907318 496252664 285521353 438203364 27507156 446825523 770652106 940654320 507070317 737843599 312242972 558670275 856439845 892711452 611425967 886255972 400674596 903111122 974466213 990641819 557000241 642969208 190977524 733164843 644308487 784730602 919957452 995993396 334836774 595944798 985541157 985703368 535520761 541150261 640657745 742503406 655160255 809412970 295125015 811910813 516143202 618595331 600995934 890450248 24044790 979091627 129897339 908338479 626024759 976314727 651446102 888954867 986834431 994936085 582296284 752191513 812503343 848477072 398412167 427943579 832528493 997393578 981788563 996242352 633338444 970929617 729085088 737008480 229538209 876295064 56980113 113636720 503520669 791207520 36781573 169468766 32462729 91386519 112946970 743932265 420724616 515619791 690991366 884956178 180783465 585950333 896875933 963646231 439871129 897168034 86041873 661460843 331728835 706825289 92180175 210621532 185913429 460848306 554636060 824390354 248898428 267898588 399501495 695389699 672324671 680184970 597965714 971315783 153744499 560249729 397105032 901936270 674153127 971754294 305143211 381666773 230612199 381929511 808882165 970168405 300556779 873926258 472665105 936608688 436538546 987960412 689131089 867520049 868858514 965344544 713148538 752940320 410150179 772427930 816061119 858246122 206943798 881449474 664114723 941912473 621993939 923303688 481466182 829025094 387790203 713438513 287155244 614429410 442718880 626823244 94241818 775796372 408842537 749429584 515263838 955856848 511401446 806014634 648349829 895448305 780126283 826120836 891181936 907431719 975262004 981329892 326984526 687765553 328774308 466310243 344151829 613362793 853299133 932804002 148177119 508411509 804188839 915211958 489136322 749267426 696672967 742124250 615221329 760193611 353590042 624889913 436026580 546737423 537603098 983940252 313094976 881171995 184249060 538685059 258258326 788693415 732057013 863238386 142381775 795194258 377266208 947759825 175496796 770675388 472741693 677423993 671943090 698625622 703872551 855006877 283241723 534693343 112520758 181811918 526962832 981705618 178682052 455949293 4547291 247643969 499736452 800163201 381289326 936438457 949372152 985019283 319590929 794805124 223564146 539172357 362450285 406750153 24273729 724739877 216091423 916495973 103839650 564898578 668541979 792882684 889240933 898428088 669646565 908826262 456142146 863871573 364545216 437701875 711640465 801408710 227272956 856356532 49840938 450751897 515208931 738363969 317706555 850770503 631331663 849925928 982462774 990970723 165695920 673871075 91590997 218089388 385189856 409176360 486219388 546045727 923281809 995333537 136820575 612012977 801728142 884373050 186660324 410518280 116770661 731397288 419873458 574809021 475805262 492744414 56186212 177311340 953160381 986525653 943499815 964181938 263257842 273623814 288140359 594356307 767043317 927238563 80500436 380029318 522537581 637705974 138800414 440393199 355171572 818323171 278606282 458375703 861035288 946715040 987541851 989914041 339429824 471021101 288204133 903377903 993082384 997979132 324028696 660231795 461206426 903285822 826631430 969586126 992874142 998692073 539779041 892685816 566249624 695176969 766524979 962437915 127477777 403750621 936378263 969686127 13038788 107784569 288562982 323436741 141348640 716473069 703354539 895162020 148245551 804092617 202244699 992997251 439516032 848885229 51195156 573201874 114215479 789363813 171123569 361530108 445807810 613963082 978158574 980903264 5254618 61736775 906988217 993115734 954083079 990756573 415291020 546477598 328502373 622459134 137729128 250812287 112188645 282934511 930450994 951860742 817959862 869211880 23807008 378191232 598700010 989851216 225560376 412221393 759992983 969557340 292976859 433008652 781541556 819754800 74276587 635519212 665785230 814606703 941752206 975423409 298042979 372464278 361280963 857868121 70913066 405367856 942364755 962304958 858404501 942684861 188445898 317404957 217447217 615585695 522124497 601889447 890242530 988767861 876557711 903237759 968553769 996683448 226878140 628128325 341496513 457584052 993577576 997167150 393549812 463021795 306061445 996738923 798496955 893062193 86577191 671226141 350835280 471269416 935410579 949856865 53424189 270789602 990467716 992919158 617590227 925960986 674527019 948847255 18644685 418253900 328278785 983050336 586233881 903311772 368801081 822333790 702017989 711324852 127747266 877642285 697425755 730814959 971102270 978022073 815376104 894581808 920363057 949653647 834259034 879929297 587744504 771724736 557206530 921729182 983446707 990950422 693685584 841861719 29219234 937874691 988954316 997702309 414968975 807978939 298976509 770774088 18095606 248334001 818746421 991398540 677286916 741582450 55640640 940241979 3034435 12772387 76526227 699063199 889118449 988331911 650829202 708237488 957092714 969542942 271245800 334682136 881585104 932884032 219726424 519413848 388379445 574176387 822238466 951142227 911756759 927745337 221806281 602952042 703111495 737559513 983403924 990565442 290056584 524791366 751342427 902038861 931002925 955589956 168503822 301617401 398140813 464234696 26625145 78638553 585162444 674999199 924167283 995343707 638201922 957922527 642419776 889978348 108320698 755100097 701597170 793009645 152000120 459489030 87191226 860025816 327837956 928681379 881928127 906565637 175487862 257342575 452634158 552487707 408353382 894565931 461480211 495988872 731958247 751716605 937731869 984620545 380750721 414794166 594850509 877817785 885274327 934536094 797848374 998673539 709261024 920502097 44265387 233637739 436030099 836380986 379256394 747996214 360960784 381800488 946482682 962253796 341889574 949552842 868545383 929399242 285748635 654639490 185844955 914773840 750497609 787610207 721876215 844171822 431577852 522492804 975443398 995114501 718896572 975495567 767480133 916693084 758727302 922558644 451145078 593452937 405492691 889683969 687869129 785926549 953650733 995973444 711428771 802509623 622268953 972576242 228089068 294956618 763743955 930950022 697736300 703350421 842683142 964174202 4856612 918350710 922944368 989223522 10840984 139472949 972135237 991954302 181207068 503957603 961109191 994281609 320556086 751828810 661149014 810370462 466091907 983812653 588828744 593503119 395070252 742887482 123144343 208371087 406999743 761678463 104282163 438366669 603766158 789524919 351709963 783515251 767699778 771491359 751091671 827322684 166022755 361390496 926224495 969562060 976581932 997834523 741150745 911980685 668642323 815792957 627223207 803383058 402214468 562521576 6979743 903909931 702322931 872736870 905337921 927835742 993047676 994909938 740295692 971521246 704391619 723466395 216314868 314029530 10078480 201060237 122799518 726306646 503355154 858133923 834105094 929736965 145315392 794667408 908706628 964659954 804311679 971729789 657524880 775515564 170378205 257912813 584668563 688549890 291896266 635090991 777452001 780603786 981099447 995244910 555536342 928726897 768280922 891718939 344350137 928301160 671195257 927844579 577853203 834034884 30785662 775547486 912648660 988450694 793457191 841862162 91964504 779656543 696971778 853562685 51639841 302693519 866227427 922868166 567812614 667788171 696463487 865863874 788060402 894968477 966149712 984485340 689898686 919553389 210797680 935908466 12033808 806639927 533113012 799966104 919921981 937961895 929595015 965856158 697372400 746219875 909211427 979018406 910391889 986006771 819476052 845812073 454209317 521097611 97880615 902510205 714289317 784230644 899670235 901829014 995817345 999240589 346530768 717604427 528266281 828235121 445722007 813840007 586495221 988542858 76980468 809506001 308138239 948275682 874517614 963584036 90452239 224392889 5264033 298385483 550943455 628141011 371330208 683884255 60969830 265670590 736177400 796542994 809129102 963379445 524167625 596996302 394737217 706201633 163502490 461484432 729670192 817350484 919367102 926822939 156718569 696062303 879825159 959785756 500838679 823759147 351239578 776943309 58977744 179484359 369019536 633083805 572044903 865027718 812827569 916148793 239880163 701223187 42800049 522406419 862101149 976233403 245790341 803250046 967247157 980598379 391570659 776445371 277046076 923148794 625815954 930155133 672962417 735865383 790654941 943705754 380121433 763142343 272967335 364761175 717631508 865910636 679184026 990375395 828564861 833760299 467846407 918292449 959502985 962980318 355687564 641632831 379694289 545378031 993627700 996732828 987889482 989815511 417310760 801083452 736137538 813746765 264521005 782822708 86622049 597185879 24795188 345353263 402295589 499539669 786323480 856286466 907244863 951281958 255200033 409770167 745980951 783864575 850398881 994572459 613690223 902445849 824588585 912025130 757191706 838539173 265834194 388930329 368207534 977471342 516842854 746582482 338860237 768007891 677552308 888718805 168220850 435928671 861963460 903215683 405505375 723293766 307963677 694063958 598395379 678510335 201716163 879310957 925339335 989109082 737043539 986992266 968127669 977863804 650022522 899443098 519855421 773616225 797000864 826325139 204972973 298264087 368711543 751269444 895780569 941020856 129023208 998036550 413051860 614343647 852962599 865827850 858348191 899850077 470638125 567011590 236768977 585864607 533564935 790043764 197663037 377878370 639847442 799008056 381409834 666726197 726976845 916280928 292471080 711775089 93418113 654374965 527349090 567931762 474171077 819748028 260557787 849339302 915606668 964746434 29988364 595137055 626303886 877870061 154938361 397145473 973855949 992000697 569032191 841870102 796027598 874987194 176084781 264105410 40595716 777449242 681246986 912771175 770851824 843486678 766217386 940471540 601876037 993147753 805147050 897365985 755308940 761399304 460133849 497842478 549403896 912107652 215979962 735150783 915801975 917390666 133539914 896997367 827288772 932239477 523586653 650389027 857497212 969842748 380298080 877063354 97832375 388971237 870181830 976096864 978425432 980763464 300235468 982220600 311368442 836181698 120847903 605849198 354474452 771598434 666394325 831477021 887406010 994251343 824442239 934630753 598946742 996722959 648308679 982903349 227777628 891783206 176493584 885220039 475259963 784459006 142053099 802503667 869830839 922269068 978226352 982532210 81021488 688139022 183932222 619785060 704641504 877126408 686770216 784065344 955018329 970546309 411155649 937544839 390199166 454611161 836401590 977770177 368429956 471705594 882133633 954453207 799108207 844456898 80156843 588084908 641392743 767682033 31243968 265026680 83871571 548258113 713475125 898957914 214820064 826899766 144484601 293024392 773909391 820161411 688835982 697380497 154741562 569742064 735737198 889621080 726889857 778881410 342656566 671778652 895830267 969269260 552121056 701071765 208549178 961503740 875987579 948557341 217693988 745141882 216652263 286755364 402582247 494175683 526095836 839471124 829639385 945566780 467186960 665488427 805084628 969617049 584670068 595823612 779212736 860717795 750724665 927700749 781096469 814096400 91261917 140564317 420585776 505899171 451813929 808406572 320281552 371705576 273344432 771616467 412956073 672298837 88909774 487599374 528453714 970153596 890500583 953197984 624642346 962544978 128508094 987021657 433179624 530033341 538273955 955389104 982208130 996381976 703179843 783462985 188687160 204510114 170447042 252491732 806897582 937131902 370583106 816639873 767984563 896339188 439169626 631336770 254231261 842692596 978869233 991672721 716850133 930167960 342577707 763622338 755080013 877063835 977631160 988953303 981029710 989462653 586456340 855559334 955405404 973839814 431530825 760545424 409544115 639750304 425740042 593987743 464523398 902838025 450346454 750731027 893426630 988574906 87034556 499804838 476910069 844730393 401148633 974441794 539556222 714967597 568168529 827687948 277317638 601264245 625918143 823943003 203366604 852704450 319895026 462709198 942575098 953501185 323605290 446177625 91268751 318677491 703947049 882504604 165739995 762057803 630569864 964608025 381295810 517709361 163020550 890336799 788724956 794711231 777182825 791424469 977565726 990490917 404008200 884713589 330514971 723106592 574962380 827969124 271839143 849390092 921690817 933092575 996570601 997243022 799602782 990020637 103983726 766973480 801447022 963068662 312945847 547754982 554633667 596469143 173739512 946445532 144455878 527607323 967459249 995365411 670584287 953411799 605439666 638269532 112117900 616589518 642851350 744224027 214859502 521213884 194530244 497515860 329988082 714407623 392583143 515098445 312936620 843723102 508513116 625586351 875347561 949774094 666552760 835643687 218511640 885174147 542476173 937067209 870678578 992449682 139013884 728565780 53759606 796395958 708358166 756083971 233779773 548709846 456952637 526284034 719701591 773647111 43996585 774977091 78801901 928971832 307902096 954624656 582925559 882595518 689348139 740613847 641146267 944957934 653192276 948388525 558407179 563786565 951091827 971004762 696472588 896250873 384493510 863420782 667243481 861807461 839696309 887701274 448310040 904593469 436981167 723753805 409762891 920067733 155442150 287901838 543533332 546574406 56495808 443815736 723692087 826319014 842522304 980271398 808624477 917218520 95241689 875326709 180114491 442089799 12654570 202661072 641190977 901934279 750355701 807380248 773068600 813626749 374123942 870257334 386470848 517012314 395138488 778088495 771547819 883853282 103267160 263235213 627722033 970082946 244143596 378815419 709206050 780945661 947708464 979575562 233857978 955834834 592153990 864795207 446530458 769653312 683479616 829614127 945929367 970070947 829530421 980071182 985438024 995481398 102190337 238647038 84532469 293341475 468040251 549101249 584422043 968298135 664057090 817305550 887175469 940861073 33197659 759017964 895600799 964523805 833438134 847064504 665316389 719805240 803389148 880098656 918318825 977102696 641579522 871009286 742095858 814867021 811548494 811954189 839232428 999186505 457851712 564078834 223037033 858796752 459470210 570688490 203863234 385201096 364435922 789117160 302397785 601013846 78986747 486716110 162897888 223219245 219754885 418140989 564728890 946762227 470683687 714392985 694549661 837972279 559738317 794050347 796367013 962521715 580801328 732320886 653501923 768791621 886432018 977352206 483493164 671436486 803399102 953472880 922940859 986693061 782718129 807359669 413903218 656669824 297820736 564616157 429330815 459462231 82006700 706404809 131881117 363647792 153144857 318811828 871849541 984843181 175783185 390887871 163505682 846287621 415528075 872850861 10236703 710341327 970876184 985398981 555101179 679189490 732825569 978711188 502736584 530412334 146211458 657019586 431114831 535363638 752696558 826211528 681534904 946844861 760951290 952502731 208770880 756522642 615480611 904264446 150722615 809857253 760996704 982871149 982403868 993313428 963405334 978095701 279428679 496272816 960494906 994157683 361161594 585489660 126551282 455187787 526033367 900106412 190954882 888707303 623487104 727758742 829267316 937024947 588941829 888448213 343277483 658490470 905452798 939241946 795411198 991019738 514030328 594397059 24327871 186729624 824684512 918720491 304661117 743748869 19878753 856438780 443698451 637478904 623800688 723581401 619006097 803975185 747061235 810987057 465263714 729534400 517790268 905059507 577827169 980588600 708855007 882504024 564359920 727242481 615551444 635316050 167637347 489198184 311847635 884609234 286177925 957658798 486212479 970261828 527662239 805273539 840780637 853243616 90957172 876436796 735129858 823197112 149086842 973550099 380353325 791546210 179427702 474655249 67519691 165948316 995550869 998567461 841260366 865642734 94965220 687616313 85551663 319600475 583740130 687251568 841621768 946621047 447580212 565947399 511928652 963450232 522989505 768804459 975686022 990604063 568686496 678275616 250583044 528654962 688137708 795661313 926928013 930259677 464602419 900572322 547662970 592443294 61895329 888423595 951342064 981629287 245199938 449503507 541293179 905908024 912356643 977395643 669102066 988175640 492644339 568551877 462224785 918077335 49419404 436530842 636038069 971806505 134938767 406532255 158980049 427000804 643128546 997706207 226376004 382609468 739845710 945519651 247634716 552299714 173310739 263464984 705897723 710933924 495314557 966462386 136907521 912390670 730674545 992666608 287747477 937185522 331874403 994090460 535271307 748667565 826994783 970322946 93966024 459403507 14966533 934740986 801796974 894038106 156838416 926579051 74864784 342249182 516897967 919316759 298716669 983882540 289506625 934658245 362834927 642420145 225016905 298531254 974698483 989898186 29900947 146147215 737839376 755425587 26385432 854547632 746751725 956351329 674848634 945286543 742566371 894227395 614000067 783809330 955330263 989949863 392645737 971462548 268100576 501707670 617940021 755646443 990566102 995122865 148087642 371974536 126698786 968465443 357270926 561935924 526370909 875428641 40545427 575822023 368234342 896430122 579410292 662389470 395065257 988848143 525254233 732531462 867030345 910581379 928488206 968149765 512137205 621519684 313874881 818415478 456374594 629654296 574678423 605355165 6465203 417319783 388296693 834972251 41794762 400823754 895738951 979070476 591077754 934550568 228085003 339862025 715004992 946338131 144549354 379782907 400641718 912220708 662226316 825661239 421213600 682858573 134161771 277325677 216567241 307452759 726800423 835848337 161510091 405858700 920811971 973534313 211416430 336863354 518616276 831049137 682491632 687222149 200346901 820957518 271596372 329132235 633106389 704032809 913750437 966943001 200087172 290574704 70523835 468838350 637999517 922576943 275668106 652721982 275937447 823783808 825288873 931371639 126403105 582505249 262880885 736457661 227416847 624232361 453747984 601743717 325501234 610841769 547153231 977074501 416548487 677836196 827834781 906000717 706942212 776131876 926743773 940104604 292678398 946608449 214795214 890435101 581418344 995858499 581447249 736526677 420259059 805529721 699987877 943299020 691206451 893516932 216242253 267559663 626756456 921286444 832868091 858816037 520614271 742897464 339563000 812166354 105692036 210798247 197424123 368507191 890399444 923373570 959249238 981305959 898075311 990090305 997234956 997675541 159119113 369382214 638538688 741143629 102114063 231115773 905294952 913223963 875924903 934364238 296826182 310090426 479849814 966581224 902334221 977295706 331707523 789374089 793818105 981258197 276372447 439826954 426254065 725430133 722466955 818633644 960024187 969567175 326893300 843152321 330192411 355755511 102009984 469787467 37351271 313341037 230445649 625320142 30134231 874452795 962924360 969706863 635365374 779470447 605742666 796602589 411837238 538452233 339692551 478922104 618378712 742497859 751667376 937149027 124020077 408743677 838025159 973314207 497100858 702648686 517330201 779443343 711004769 789828599 744299337 793640333 434426863 811295545 924727678 958085231 751363278 879236286 586388894 645198793 538710077 795495565 469201789 487669006 744720916 841448118 310657046 795224747 414852648 972517257 829933367 972641269 342966322 368414022 685053472 799077242 567178345 706877890 261627730 303884815 918030624 931169826 389745567 561935289 569435394 779053594 643609893 713517234 743588445 905480663 18016832 582753303 548508901 566856809 734441825 758436432 417291159 563447148 373636867 629656722 388262267 728226442 190341591 263479487 574025190 974471199 716570867 858276322 351442236 785757103 287023475 569360413 218503755 388520591 757703442 885370335 684200361 912573488 974398921 990311329 352493025 875630903 561089362 776572945 435519278 570717819 621651630 806840626 666145569 682408127 13404798 741149810 478811082 978830881 916865388 942414276 399705315 956097865 173473581 942794807 877972281 878259852 427500462 631591643 569173910 870152692 910228097 968472705 658298350 724911373 51764794 451055035 735529629 878043589 29692668 256234867 844691522 856669457 68334263 382416147 739177447 836247743 161095997 494628093 160754095 825555750 979064517 989076318 483560617 545431763 468606495 573621122 437052150 510807021 766300556 901750930 837524318 955510990 777211579 807330073 600673996 664695386 251705744 677501531 855532795 874142107 939700010 976815995 185042822 326624368 505652142 985708686 385392799 984334547 42806628 601946646 804206972 911074663 926452821 968567144 465754665 959918348 735853132 922174138 439486598 658056819 936765385 984926694 314997239 833700761 171345882 673875499 123620670 806064313 343027485 860593868 63923445 532004519 363733939 422793343 950703988 963098086 356766849 766438664 257343429 547580925 640073750 782156361 169061541 231759086 236383934 648576028 117284826 802279900 42299945 830206683 52821570 326183814 385142797 885365610 172953005 411200572 920964325 968530486 567205239 909742422 632940636 699984834 709309962 891144600 836490138 900838646 401381418 899829918 297390634 744968878 717622780 960529068 222445814 918622941 643622142 997316778 380167872 821414661 58155279 548312251 284120088 518705257 48875693 427073652 844323152 963410979 402849572 760792701 726984465 815412312 905707451 906183375 242457348 350174967 163650384 616606096 288397256 982656210 118237482 515609655 4946950 869982220 185673347 680854799 769837033 836641387 141121386 859952217 920509261 971247170 529522872 674846719 167395616 902776305 802226959 854637477 547289865 766257031 70220055 578381631 428999541 537626289 971116174 986172687 53475946 495250303 924466163 928561580 404287966 869323382 971356655 979055115 389556227 449375595 673916969 824297492 910076500 975585039 400205428 956724726 673773264 972223934 434130085 468749518 453298442 680410664 55621852 255751475 814195781 978882628 819653929 863441948 238168764 712478465 457820602 989172563 420377917 423456048 188691889 250178412 115781986 274090776 209775432 889240547 950089450 965756591 760540288 871456774 85290851 375769967 180337468 357106219 172457578 984423739 769203744 985742397 698127266 748969188 103031769 659808723 819115474 850475797 298620664 903376693 769672292 876644569 543052628 613352446 920052261 967829930 476401563 729700389 468502348 789583117 290184382 583221790 835491944 935601185 86072638 760799293 953630691 986946186 612339448 791321216 726849972 829830064 341688756 733402428 753613039 985761026 868246860 979126917 526327628 629221154 326025186 779654126 107670890 587856602 831619632 884043294 726644474 972709568 47614486 730680053 341234614 515099904 689109551 898190234 579987595 981612014 614539537 741938493 872128843 967471181 653219372 845211343 380102184 432532418 320931631 354353148 237982374 469240596 664143174 773100453 690304398 773127362 523154291 859975168 552088645 605103684 15653636 852836183 848776646 897956785 312234669 598363435 417618639 893474695 45119839 433387055 653789420 868621602 394014149 418250294 769594911 976278066 38372345 590609710 312864234 482587762 925153930 944834209 454958760 625784359 290890925 772860611 954246153 969416802 807642019 933659124 737515331 899663796 847408359 876625917 391206873 655480414 378164639 745588076 256646346 622169311 744355986 913496312 652247211 797009160 560091214 870282402 111561035 298159597 467885763 892582409 151930216 256888247 700027977 834592323 764259546 991345665 324035923 458158317 409436298 917940404 693362794 914733530 962465644 980182516 368856662 727692150 323954374 514720015 208898819 291630939 894999410 931982595 543615677 770595186 938838997 943316886 458866256 595835769 304163639 860112815 587361921 635945098 622012 520843594 950167715 992798835 290966429 500073857 710305522 919118982 254468149 929159376 817502774 967814531 185156798 979167359 784921 356480912 13020007 973058696 389358983 413962998 630527410 967364105 521713075 950109254 235472687 986430014 452863873 919477642 622151026 883714963 541600517 778658516 791000787 822591835 104500298 388164561 149486495 784872444 346145129 940721220 794731628 905965195 519171482 840923234 273335705 847467484 919055303 956530888 544166407 640790268 977438813 981687732 489364327 595704429 893475740 903579967 608183762 888473864 493372615 758233168 440996088 489015260 539955853 591869019 397277752 508959847 812938537 895500039 233115528 748425096 668562572 961292091 998954238 999010444 449853244 630027537 840925005 927137368 880423152 917399646 972641970 998302957 122208329 396104877 732039865 921790752 412432762 912726218 213831050 361594928 512900268 526696688 763897555 772484192 849986936 997245358 566117142 672727241 729550355 826853806 57157326 712202180 387993621 836128923 963593372 980954164 336883148 952042172 807164604 852727909 623050604 883841614 638925192 970842492 405619339 674908049 40177195 288194551 347782269 644491638 337090003 542832399 209941174 294240295 403351767 782162878 531255982 682176186 987676424 997209580 354032785 533736438 825214395 963969336 45254489 777813671 532861307 935219495 833899146 866630749 162630781 281270662 498923998 883365985 497716598 703287715 867954923 886022472 553178566 774314176 137106088 398385272 899191512 954624644 951371711 968659838 554275492 926927144 903779264 991489812 810243292 919353041 652186320 942726750 974025030 977341566 709217974 764507505 248737159 465438055 116807823 665026237 977420436 986455383 48664238 458711463 930951675 955651936 989906000 992438436 644582259 931025326 27287613 437631009 917078477 943957262 427296150 504701799 888667974 986540765 617442186 906523266 496872433 751913615 213819851 877013639 674258212 822498854 792911625 868125928 48203106 144140697 984006908 994870618 933054308 998096336 281083718 628133243 648209127 973225834 497338046 517112568 409138288 488610091 935879737 967301765 143044809 540109842 91067668 152664699 495113737 564886994 492964705 942007641 56002489 596351257 388241068 896226105 923761547 952677183 607047071 777932248 709003097 909416712 125256186 157787462 315610761 343454043 928996699 935976328 517550871 640643691 794405699 873335404 251783599 675598792 389823245 821867773 254481163 562285723 824210060 911754001 354899886 722763007 983077407 995564282 311707060 670231623 254847446 881969287 483771969 493956643 453654753 568817469 61541060 713529455 336988258 733194076 117602644 794798976 138517228 153199812 438841891 782028367 201611312 910736266 410576394 488554599 500040921 938264462 918100870 938728784 208680052 549702828 544096853 781969781 903264594 910058782 637200867 646866295 457403577 924641267 154454675 989023957 413868536 684972351 515353227 893008119 9608835 957369294 638516320 926294321 856898887 959391757 158157633 273460545 358972715 717381808 227966433 363499106 595054483 765118815 274467285 963933630 425142314 796856624 513639582 554417866 696070320 855095158 679391986 779391251 39073449 59211537 190318218 551345708 33982369 304001291 959830600 965089604 731732676 954722818 264445310 584237631 337832538 988081948 949270489 983786779 124161201 243645618 209543855 830806118 753043470 908197987 687868309 732618086 487742210 816592016 971659699 998867027 429652770 580165896 612251942 635847648 157345830 562379870 486869723 852095884 846773373 965095683 987090319 987971558 181276904 232594319 354088410 707626445 149993182 446618302 453913145 561060714 760001919 934319047 440278392 738578247 586228113 666824610 177941342 228447645 738757569 868832355 20741002 416615006 759760692 978647568 198593874 894186803 829298942 957374847 506181385 716629186 824377294 949772952 710179784 793251595 955674306 959624712 872615600 909154484 407222907 955712847 755733437 902251394 745325286 770614201 244124646 905600032 942509528 994951519 65790401 558234872 420808205 963947139 359039413 709677387 664676424 726346856 740051500 760323734 243151238 263282719 959761723 963808525 936958073 977835965 790357400 974824386 23921454 788070252 744572614 922829498 95846884 746717646 860130024 913160998 478862876 709888634 135974949 532010643 251958156 346084886 745109780 750018535 273816 200399324 568427366 729851380 975681952 982067686 62558671 343564312 953834298 990082543 119222452 282328966 929633534 932524692 587625784 853581636 735552114 824221143 338260206 963985746 204648557 541673839 917852806 965711081 882508533 901475473 387622305 873360908 45167211 709901282 836800698 974860771 936960903 984409597 904664081 980411580 201438870 408647279 805173160 870247152 900760714 963440794 874713330 912076648 58116969 802424275 730855679 860889003 75364960 877972413 721548163 766951211 751462290 852052960 211330995 627115653 411455304 419830627 501700365 581728750 167212932 292205043 799309496 802309908 301198976 341727493 738142892 966813152 478640545 772200175 753186306 799227676 615264212 678546090 373558955 490542433 185413953 222073692 849684060 993783510 280668300 549916444 754424127 793780426 234843171 431584987 678470370 792891907 372084964 782871014 311621300 857884134 446440418 498178086 601822240 623725769 277011620 362554699 374033931 724025421 674092387 967316658 489633113 609055187 183453912 444023216 78927181 233823032 746053552 952440414 684409049 820405777 958965467 965080328 130178845 354606070 265756431 571308410 476384368 881972033 874417980 966842545 76145704 94208595 418622544 707295885 897295693 927561976 507087898 876510188 448725877 719682870 521527126 542782908 271950387 292477628 491636200 580422907 261626903 885412743 462260499 956244939 303798181 880163891 651115928 729778162 665587482 979710656 448334923 485607599 290020308 679460725 467868468 953062320 336741780 762370000 723075990 996050500 978297452 979640871 849647765 959282992 538320616 880887376 708573786 773851705 322380595 865522693 353419660 367740173 104526274 852747419 784537240 928571314 738914879 976661346 842934751 847756737 474991155 553823617 426521711 458581785 241913059 751608434 581560834 988741590 787722195 868818529 714786509 964801166 432593106 688900987 908364056 983082806 239914838 296175115 412796451 705649741 722174976 769350397 337449070 743802825 514999098 608248284 647244148 851575848 122371625 948780316 630446545 807565286 673298475 889923061 67067611 473007755 607680949 922078623 178515632 835770194 926909422 950242568 699603019 710774106 23430394 625602692 836363111 877006918 866653933 892027698 899189216 926413602 84267924 751696613 149752437 831556894 977354724 984079466 324106311 838381652 810329582 858900377 758141813 782554143 18552116 176676331 977331668 984365465 467586421 995515014 954701464 961517082 824075258 840075263 402609448 564399775 932944718 990045579 52901179 338396851 702454178 862057972 128370003 679352423 864458211 917919397 349320726 681508336 604691565 640218173 107568893 719787230 320440763 785579314 580759650 976921080 650041582 916056752 74623803 850997932 235468804 440333581 972565923 992525558 3832120 155391709 318430147 359754176 544612108 997077714 793095914 864124283 848797045 868174448 472915866 479086888 79208127 912607863 255089860 687161756 895864852 924132420 298739520 829235521 429913978 811843804 165616220 797772715 687992851 800781104 562960344 796376064 443026970 637226728 282687649 948474676 569373927 693233706 326869796 507172891 84898995 324256957 920038034 962632557 137087721 749188847 281940652 735313469 728688391 869690914 38695400 824845759 932704304 950727379 14010737 704049387 497252565 978923813 476404593 497069035 158215090 395877673 421930846 975595769 483704887 522291678 512196006 898039481 467205833 637000267 752750677 913426079 5074428 75095223 380219492 664964867 12482482 843873000 504034440 566733097 969102860 972498350 807508809 928707495 114341147 740550421 501723698 690831805 340734964 617624246 409130189 882069023 616027786 721270158 901220212 907798250 497658885 784773769 730346011 922126670 559477871 876534682 909225171 984355310 73021571 292918868 645807140 944872965 350516807 462733038 619842344 689470336 95074261 760501500 335805867 411580081 411478161 467237541 332589698 996189820 456523959 841634849 44234438 61641581 244053633 568766361 676052398 794288048 921733965 985818861 981848552 996812328 746493894 869417240 879754085 938365686 709205859 762459762 530753526 759251180 751451197 894309454 722174131 879510297 839538305 917655283 845857128 892685341 593855188 927046553 799820205 899171555 639585957 665830112 942318326 995208824 753757290 988379975 965785932 993790739 272125177 532811738 382145877 698324605 277570247 290209570 600559677 845959171 157501411 667773501 661993746 794430941 164511411 269278002 714776549 788776867 693969889 910136908 798180599 823747319 897615912 900502355 370783323 401596276 648411618 686626517 809303303 812320737 711882944 928606032 632026601 992073176 417869099 523522819 71175050 741758177 213092269 856583104 686061704 734557656 314259726 686193524 451902827 937904026 355531904 714054491 724627203 975713635 448920940 883035279 29484268 953764160 50051036 328428629 543762328 705250657 21281319 40476407 383189985 822614407 870771630 961941563 223403237 740891744 904332607 935486074 296690222 918225240 284269812 570520924 615696173 667493695 90207292 756709622 292318369 667629998 112876501 276596509 903090865 974330632 731609376 825873738 792790910 941824665 861643364 920910633 769496067 876151330 708855958 741936120 782845194 900725924 541631221 569376284 520833721 865059870 622291151 920004451 824531824 993799894 498022532 720842317 702029434 892140207 300419175 641262543 438455474 812083450 47702794 861239482 873871822 881534789 95190048 130033003 361708241 610661449 82813253 920752984 769528878 864539343 655216299 717004293 308189119 856570906 753446561 942528817 704984299 793780473 662855453 971867073 51415833 483358565 912194848 945639339 587868118 967604224 629917422 720225700 301852673 928019594 751312060 893457119 625309031 790704949 741604348 909639235 655061792 656520029 245487866 863131670 990399570 990531723 356451246 914388030 648869767 800580663 367626153 559323551 540469989 585200519 400501053 980103871 933531688 988181641 890174228 907523309 919145451 987129292 360406193 680238036 685362474 838428781 338155213 826327617 506890250 897991885 611925748 951307156 337390152 622224897 647583233 820809392 217521697 679215864 34244212 126143938 214925261 985075117 318908597 937270021 472170622 552732044 119620287 464607318 593570310 644990124 239929740 723278483 842210680 994883280 997063549 999067588 790200328 901283057 639885387 678380908 441342230 826512161 793469092 809309255 286558483 468054798 862560006 959231394 159514653 647397035 974748086 996432303 861549570 948575742 332393546 884090051 976491095 991024090 606951851 904035292 168365955 551237760 928015683 993096573 856579951 994805991 777556522 824745942 358160498 429060622 40632744 467694804 644508056 816830160 389815556 965550113 357968781 796454319 70044546 626280281 299187366 421976876 359841249 609509327 417075669 452593423 481061770 660838123 81462205 183726637 667216717 741140664 951265753 957675189 509305636 833439942 545497760 928660642 898134176 911237961 668128451 696297696 15416252 935963074 916663367 934328759 738917645 863535424 228275544 847236730 150658210 508869040 336876570 391989596 381214382 905187088 4317521 73533973 519150500 835675761 123508615 935669097 264174402 476446571 344564627 908850988 36258726 917134648 794192329 960685758 632129874 845380547 432499235 492760966 946120637 948856624 92112141 604528401 625712459 855129401 350209066 722022063 57587438 767562080 882723916 974126794 809808996 856332360 592536709 874716650 755865577 914391569 26172585 559444245 134920058 976752960 250793026 589594258 881387868 958923748 422990525 465667702 267399270 669571558 211177505 327696657 418936852 700850026 153295234 572951245 246254098 748536936 278422624 293927344 767655269 984025101 70512453 948102215 850803579 956158822 104416658 929236854 511261537 972539224 762422573 857294002 885887508 997323769 28452863 221582593 335899951 570968496 163246751 474700692 13883930 178776461 240894317 652330927 986794223 998251924 552769153 695897094 719435604 758525606 722257953 858864259 379289097 624114203 75152382 689916851 112064534 935741791 489822144 921341264 792740938 845224412 2131410 353839305 685513333 775155920 797208181 837089840 917460390 956509932 986434781 991446086 135447322 798154642 169735250 361624197 921431009 968925152 767100504 998783108 837576150 840637110 357591083 523819860 621411298 746085743 279361015 818527500 534267346 874547848 92202733 171863471 186740056 970075342 599902409 760653471 106891384 953617863 643787986 923265619 538165307 614262186 446659563 760208975 973835442 994001205 996991059 998095301 322526006 844958800 883621217 904879292 992101210 996018252 246242416 573284769 291390162 705043379 669688720 691875404 751211352 945024104 642904898 831580382 562352885 568629400 392434476 931126806 148534307 578121473 572430577 605119151 463442733 717669526 61907040 68930138 199715001 692351178 458635355 732870017 72247757 995696443 450004288 550221746 131589754 598163732 739919527 751514427 187453236 725941037 938214771 956084055 818527334 823447943 820397215 860807493 858132922 989293342 65585413 621015289 952779788 983702400 809287740 979694035 86038978 833142347 760049175 868565400 17198692 695516813 878080684 921328737 284328046 433748855 208921076 564179030 304988336 650889289 769677031 807931069 550766332 633332563 466333919 681022652 850407461 995097897 856609959 948550868 565092462 659529230 974791149 977691871 200623284 538942819 602840413 747205417 437569003 816884740 804347803 947165509 739378850 905490703 786430678 939378401 797512816 905660625 349549169 373437059 552681025 846663022 245290509 395248698 116444180 376285299 700954400 728213684 509141282 803196720 910132101 977090592 316963492 742176494 19680203 986615271 291671960 635688140 391337159 746037920 860619733 906865181 752549192 997779444 839376374 857674799 532540584 555853440 166980011 814871213 569953619 852391766 129358001 375011724 614126104 886253670 221873569 606900316 622312170 957469537 106259385 665415256 988981433 991205057 942255310 985741251 661656355 763252496 752467691 889056746 265687601 688024543 362904688 417469435 874552964 925799921 795066603 826611781 592054930 997566453 473638230 704592337 274112813 383338765 677972325 825853327 409176670 536489177 363017720 578560015 750921607 932258616 716171705 721553758 948515055 979723541 997028273 997144777 761664113 852755404 962172527 995853680 864430554 938979669 250775088 298609609 872244827 947413801 970743332 982198375 967705918 978945679 434977964 469768348 995329745 996625314 41001557 927359912 482946859 955927162 960553075 968350217 993981818 997097559 204567943 906180569 790388608 844450314 126498094 322953546 77122243 617486966 934658439 977819618 963489856 974769997 280206176 789215998 744921002 969236905 717425333 909920788 665997363 970238334 367346712 833091634 995839261 997487466 313377727 525794312 996571909 997718541 110033124 467169753 884080356 973935065 748682228 771519403 204754521 335312575 582819151 835230587 676272926 936368228 269074711 317848619 499241615 515806833 709970148 750013106 182921141 771154091 56112815 86471741 271809380 448513337 731851057 880323799 586890685 758715591 184400314 386723070 997900765 998868740 334685269 592044714 299059153 981669525 578713479 691186332 493016131 643686360 221179506 674581577 57875354 954173007 787414519 808471000 897342331 976667486 237204961 414273040 167341827 403583418 823639649 935051862 179568659 193905955 769816211 808335684 943308851 964344928 242020028 782954475 936727198 976680977 764554947 773352608 636399527 668195335 405017485 509069465 594605927 790293343 581044176 606350211 491061760 844429832 434993283 591203743 812240405 965960956 12130552 694953257 104536467 334751251 144119113 312641227 559814664 665810692 230917223 462916948 377565381 848563411 296745305 937811850 574312223 830564083 151162325 716897484 418389725 617713966 43533303 515975545 279887124 410935527 255315822 833893386 126761495 601660910 475971102 586671135 121338499 768027269 317890112 976236311 934769736 985864704 373603357 950091833 518932710 521584310 198923951 940622520 501348265 553962367 745047931 776122505 166032516 765637901 689299449 783789898 279661824 710966050 230986686 420036852 594579108 688419324 456809290 585294283 354146517 648984988 555066332 576029377 223403693 641786575 70902760 468884288 706949482 855802394 387027258 570441315 529095322 844522423 69680191 463548486 763320066 779938337 342014266 868318044 911255592 917008371 293010604 731739926 803733904 972721179 174505101 234622015 523649026 893264759 149119126 620554964 112812857 543989554 934015486 952452819 713240568 724238817 373562127 654137491 52090308 970512905 364236492 800033330 272524398 468628547 304773668 350717389 158120879 778067470 882672837 932036908 340849276 412851771 928873483 949942799 257644625 332451078 339302556 873610820 213461587 908489169 77317943 510588701 236428368 790419334 605395825 890703255 481578275 810722731 626143390 905436375 622783989 733344415 461679822 692097213 686760533 952110324 204463524 410925959 621044062 803272247 41988260 57581760 423596913 533363897 790486641 878517391 944233300 944668196 168694827 794451819 574715276 879155131 343972397 696481156 962782412 972205842 101280841 293962306 989479720 991528081 10678834 257035210 678749427 684590114 469810065 912641342 730265187 891517166 992285121 997425395 453607537 627015420 155723204 859146525 206238 748223113 229457870 684859533 36906489 319346578 408291329 829249212 642525776 762852341 922514878 954781610 984269608 991948425 825708652 941003449 574487707 905010572 638712223 889321876 413820201 736518256 461004446 549404797 568796876 866254325 811204166 822359172 596609341 928222145 220293112 620150741 938100600 998141871 411565134 438594437 455814669 811187236 394719115 429720214 839196199 992179852 515386288 642683161 166181925 765436310 582827132 895238539 777502907 836616699 421695362 933137744 125216095 682525018 389853312 778497564 634210677 735608077 678093458 781887319 458043030 822238881 364514127 618625651 485563367 543593175 567376425 819959440 462602993 488943568 666577291 851834678 981911990 997797349 414328364 807276398 319997352 707255209 543831732 914172239 788826808 986790580 838721456 947904854 746840077 771767707 537527830 990602341 698636911 802838363 808176943 991906984 984903108 990936239 390795746 554091257 597330352 779707521 637965209 793795188 321650067 351053092 444793562 878842894 718121992 718696941 151706953 165991005 469869397 756058770 496370171 781078409 482078066 964087086 570255202 699004293 371434438 999289701 128095518 955651431 785904420 855545220 491934335 626304623 775320959 948398994 539328195 645736648 827602240 952598271 966605995 994700455 324372395 760225247 97077749 964991387 747947012 834993714 64627160 418937253 159059584 524578616 689704308 788063502 233416891 889419705 14790633 340712748 656616336 670954690 649404391 681151824 438886613 491372415 369857374 669722587 463059663 757867162 962998123 996981156 983466572 988504883 229175018 517325126 741452229 989227006 965923371 985512116 635791831 776454243 620226300 707936315 13579121 392358723 3826355 25873894 692032333 904495127 410308288 526403798 376496810 735203198 553653914 976574274 881349974 974909881 129248874 310008627 641856431 931469501 500259788 542536614 352551100 827009925 524792306 657541380 178156181 493409924 301421318 396174383 188062973 282254009 486532569 655713819 146010118 746813566 949604628 982164157 833693187 878921671 192946525 581108460 278853134 652362913 183889260 447561189 998256630 998558888 847554921 856788621 745367765 973862405 654928444 697508995 779644067 866705783 223635623 698241693 530335732 799749803 604145916 715895274 446576061 862715141 823973444 900078610 908578442 999141735 87250448 190768742 51201670 556300418 540962493 953743012 971854297 979152956 780342919 819116828 207261870 262211550 279296347 969635107 874482011 928923941 362928576 607021886 887480631 992025524 917791003 946485399 84600679 379984215 980372560 998958257 875359959 952365652 350054163 483646252 307724790 509318958 542990064 622898995 205290914 411493328 34453331 448139430 505482366 518621899 861877464 968662160 558468530 849804246 911270905 930710357 808014114 882501328 862962739 948860567 525219304 850765410 912232867 975475015 265981780 933500688 253220814 738907692 157052647 320707087 741722487 755320501 74722037 893208534 372731797 634756880 649348492 944464799 602945285 855482388 249914876 580227912 293644030 651130277 580440299 783713047 269755344 985923701 369356197 402385673 363917721 705402756 50840593 543754649 651495961 842023772 126720528 495355412 60772151 215356133 858063693 868579978 701675439 971669121 426620811 703183610 561490231 769861801 216372373 675213353 847954952 867961091 882804673 907767131 778987 733574651 92185886 445190069 270007184 833105574 247916596 619484947 37898153 603970531 378277983 469396584 198269780 736781596 249662391 553903155 812337678 953984661 426830034 598357664 960925449 991507038 249395851 581488949 627303503 824183682 927037545 967687376 871485798 979949318 935202711 994531850 472209970 910272113 887699266 903681885 968313319 998817341 37514974 426660116 617708403 945899953 47138169 623993960 14956157 319352147 576733950 602214683 289939488 321239139 986263107 993425751 508091752 726802733 163140910 767004977 545840884 635883888 268012277 297983953 979468819 992913365 714947817 836556959 541141396 792897268 126484229 780529312 261149738 913609463 388708979 695901487 70158663 923533545 748093503 766639229 63534860 267868015 555680854 943992979 125199724 592073832 96537253 115806795 416824494 468825465 839084364 896248379 748312208 793610344 762990611 952059006 108110362 901403229 876007348 881450438 938280004 983915957 591687772 931697204 942843351 992663602 467199411 946614035 851113598 996534966 864865328 926614913 685680763 887598155 27139717 699938504 831686473 926818960 557003018 591221048 593899103 836947748 688327733 711470463 415960368 700252529 817412533 962114917 621378117 621945748 275210522 424675489 945768865 997133188 827548385 880480364 768235001 824828311 725587879 994175357 394023888 644098410 99911596 518890489 413060287 646458144 780260517 882917318 395066583 649952436 342507156 900605072 279326431 979030438 84079187 648170851 435233296 444190497 192745889 735066527 670717738 895386902 896575055 926686279 238297077 863874796 458468864 900497792 128291220 376396314 383915842 914844639 115800430 524544987 377669894 829864297 921577618 931176248 569227154 674267523 562802029 873699083 124493252 125316601 98925921 954230414 461156466 877862375 1817731 568023662 877105263 979961093 674566639 846780973 348688411 582611981 105939987 547253122 230254993 492921556 965850641 982854611 774169704 936523580 94342001 775903721 760605448 976920248 928567886 983987547 547783522 976328499 316122469 920705685 219586530 753292567 491570564 905604107 813985258 953071039 325595519 538727708 837014243 980864187 155238744 219002071 73957289 870293832 617264821 893647069 781888888 878679235 594799365 610464245 681388434 890057227 296591429 839086674 947068125 948090836 497309130 757776295 323329997 629216978 926178942 981191470 997858236 998293227 812764772 822212045 923980271 937668990 933709105 938762095 472368546 912643578 853867689 993567748 651898995 858016136 803485153 826342383 717080884 932840549 354321175 858418389 190043760 566407753 947001187 987567940 475404025 545970847 587524015 747065773 340012208 376776532 610684900 636637600 593131585 648311335 207282019 949266134 628236616 941481239 889494130 953200372 382325066 992781318 67808131 674127986 330074576 665136979 332313402 688990330 402960088 613588256 706014289 837819446 776231158 960177053 137649228 719344805 384520803 390305822 113824496 908774612 978394226 995066743 70130574 351692800 43192943 278294433 102998792 283447803 344145994 903449328 668960690 904768477 500836279 763076817 673603955 883998005 345150933 980754410 618488145 917049524 843280897 929600142 993169896 995655878 924883750 976722273 226392366 887337000 940947553 978643858 642049840 823632398 253283825 652566765 457096430 491126353 462111426 510546494 991130034 992310632 765226948 872839215 190541186 558741548 613401064 937088416 525030153 707069573 516679080 828838859 213018861 674937015 462876774 796492002 587204462 590943049 121172050 398867709 393875909 464616830 102047047 519013500 758941473 821822809 261775814 377070426 379250966 534130375 528544667 743470064 491392065 779383498 248664187 337499890 656538860 826634190 149827725 964395922 930143634 962917060 894252568 899115478 488441488 685897447 470019692 997155736 157794914 386088074 979597812 994582769 454796517 700229130 169434505 356131110 662663530 710303461 762047481 991613228 234965402 696408290 814016230 857165273 963977317 969287067 357775424 601158925 268356063 307000576 435038868 517470243 283674455 415190010 409457233 517303930 579857852 893609132 339152839 579356370 52726707 892254301 789109360 844702437 652358854 905012952 57283886 774277760 167562491 469806839 366867886 975732066 549781152 866588834 635016972 639675229 564269528 822212013 876707107 993674442 599432980 766704457 553817921 821543773 561202648 566006159 412034884 455412440 70180154 706169027 223749846 295761373 670039923 782049952 190341233 592370409 26425342 543471055 890508751 929978447 638949552 714983620 943436848 965783198 836939966 989172993 598138970 876120798 598684891 791777393 469282883 953716295 145661499 226697666 663127702 849993618 620946275 838335210 444560290 859058532 452720904 638788157 807119004 962317909 652590965 884928158 660110878 697137671 167263356 949810576 935189192 940121712 675908169 981111427 930905638 938876736 301997099 870302346 344628862 782196681 284328649 622077932 626796537 804505165 923856859 985845170 356942426 831226781 636585434 714681559 207374928 614679530 222925460 668370105 10994817 35701599 764301853 932729122 847132038 925303219 741850527 746122349 742667174 800952673 126423219 144111199 309137565 838983908 217702874 902528542 364018533 902473784 549403501 972543206 588351328 674808828 187113155 954007107 262927801 787801471 697470327 706503298 637168060 688216466 747681484 822253876 687363168 885695192 758361444 783756978 932359927 980744119 201833832 366315899 136928925 329152464 568031805 762504447 333546013 474832829 352285643 557654360 339240461 792961376 276875850 579841000 415718348 768901258 564434919 891549633 932589012 975517677 273434700 963796351 235402588 812003929 367305764 483282978 340317495 619449318 101630366 377744625 212574564 530051317 887342952 898583854 391952289 454963099 630690859 696607185 510361716 876429607 386803331 961935199 419121045 688864272 368614305 689402936 177406428 790811842 973155579 978638125 951676987 980339060 246847925 255880386 430589507 709899639 655470412 908534992 654944972 765335505 189778404 453621317 925848730 957139468 454985954 920686851 194870108 203195348 527560802 804739223 491206270 519264128 238796233 591034553 954313583 983453231 91823634 871936023 301696544 800032048 906186688 940829505 486979363 679858198 481840377 963158978 850887570 895052351 71139612 766356251 397531281 938272134 132994730 267673403 430928640 606005513 433540076 814830804 631038437 754031052 777155386 874790266 48143301 661444162 269909591 291277504 199301516 492682000 592284516 802892550 379934590 504253510 514635765 525307403 637931523 957228497 526986092 750097140 397867887 410998056 765228130 835458988 48017498 601703559 772384910 942647227 547135851 945538547 8447962 453887729 733893755 776629736 657479982 733071048 350728701 385282905 731818985 864775289 706194373 721872123 154541715 803583498 986681646 992247576 709449898 955779972 677662791 787779983 605473784 872746804 76391964 415681814 205330169 455702338 951098239 962045508 302016514 472520397 645567256 791582051 336586933 749336092 889893908 970588549 490975416 650222283 170155232 225400213 488068064 774065727 839239596 894821327 548335513 915957594 600487799 856538506 879985561 968231737 464374442 632481887 377850473 994858321 876987516 963689632 606068802 907804279 609447201 966317164 434465677 798878800 760590180 985547263 284683231 336308649 739690679 767604263 415760091 531264407 47777736 245408742 907729077 996282486 574208579 786759550 216152605 481929713 128904964 310325204 822901027 934468806 217969785 777621877 75338966 724431562 513015216 808654874 893722011 968248262 275439100 757864257 608630118 930765843 82681644 565112975 854361816 978469258 328113873 644918108 83258243 782762352 518509435 756079168 485396869 691208267 783590831 860922522 490235844 621676568 342504296 514629815 837431582 982192888 889894983 968182591 662692101 751333441 324311946 605392606 326375833 843509729 639115313 912346389 79893492 267283731 737972686 777441583 641805795 994729082 903942022 909944545 965560995 986948999 377539151 878338203 952977031 973549244 882124039 986661278 143551486 710011827 470979129 687502458 286507488 736768218 992529009 998728251 475585640 725121248 270178051 705488066 930419037 989062688 602853565 881836427 703275741 915789930 403054139 778015215 181613033 551719276 483840319 997491154 441955601 737110323 475860698 769695372 435082520 558879080 720260174 866812094 844011950 976537830 150022558 760920167 296378642 645232340 956738913 978348867 921477851 934990977 849990333 864425111 605753541 892294606 356547077 970081366 566917663 578396871 95980754 332996754 629358146 911795745 321442886 920238814 580267625 793935776 86962251 243105188 399974723 633001531 607662380 654420648 932733301 960852477 663929557 716134240 852702621 873254565 949675150 991446837 213395684 683235915 992558321 994898777 14625168 706078299 512943082 739054360 661185633 914776443 112102360 478613807 303906820 962211790 490869045 981214729 968938082 987108297 790270939 930563475 542921300 933928476 904148371 929118211 803293503 819153865 490875373 823637050 420508240 710752857 734517085 878609259 778245115 991523783 530843769 757710366 452922323 507562569 959313471 983000290 803560147 931901985 330475875 450598363 805778954 851880712 331802804 539257363 720788707 802191529 124179369 268668328 793175403 997300534 84199804 416486083 707068663 822841086 990542092 993560289 15422763 840941308 699601241 931205565 670997583 964679369 935425484 942350565 68808878 764316443 133285930 513309692 289366018 893324529 347209944 409927895 652143042 908121727 887657912 981887683 185535636 822792996 17313109 511085115 786839529 931145130 920434714 937982342 539430201 947380221 220043897 700888734 943968728 963644593 287301990 921271565 676243118 834239539 24821310 905336809 888680096 930842331 623962097 648071825 251423265 771652811 908546985 908918939 446892223 955905498 568912247 704901566 240915652 344485455 385257721 615512984 988105765 988586964 788326797 836619008 156891870 571570515 530968991 773614513 927223639 930798508 566192275 812198358 411837260 699201708 558706606 975683604 732977583 864357413 570411175 766185615 768961913 809746630 108238222 169932957 55876192 137990676 509584179 754514304 794546471 846609978 435570221 510225529 620784697 949738379 711653259 788961089 585676544 719025436 788583125 860099055 68638586 387842085 16539430 445326583 272269322 543184382 330382375 786216508 148830038 973378193 291241820 918889984 645135769 683121524 863973375 885674838 479209600 582428186 816559841 832902794 256194424 536430841 708542162 928965150 911251501 970142618 671429479 760144117 102927121 381617510 17418401 713807218 827644984 867860156 802938699 979459665 928472453 942249737 760031804 940294031 12443871 590078080 253957832 790593564 791155547 903020166 165993644 986284721 971252655 986085291 153526055 941964672 519807534 694829762 263371552 922930899 839746821 923855764 47206785 354060501 564583180 581158737 97292173 734235071 152305642 640415969 186895728 859739574 768841522 827418384 938960062 972478797 389659549 910823065 622893588 925316483 117654464 146491243 240097836 314398958 6258110 735845311 715016095 821232383 699757217 892908467 157126788 784792909 583096757 783107631 828944693 992042546 221597945 577889657 531786465 620939193 244401625 791705855 773930143 867417099 749851851 793376518 378150659 680012581 32828098 955785672 203688704 272037244 709531986 982206190 99635291 207162558 88298348 474854268 227071052 909752231 310394438 978919446 354600986 487779359 622109884 651689049 939228722 968877993 821399845 946921775 249430939 734550139 933477705 964853340 664429514 779498840 37827915 853375570 60342245 798547547 731668786 832303788 275521314 695571888 731755346 940916368 239529373 262722319 602541718 677151635 232536025 951240191 70205863 96448063 506970138 652332763 952843018 982082884 829358633 886322615 301345784 430984739 540749213 848142501 512888571 865581255 364579239 681216567 88814895 140710174 581312544 880318201 875845481 980870410 922742102 968808878 833971054 939384674 747070622 833722503 737682496 947072069 750070416 925508070 731678761 852622932 385597345 921248725 533160392 882823789 37380830 993557862 54925990 857892748 701335561 774850029 487109474 981180485 287686529 354112395 238048098 656938739 872876283 891917891 838640512 980775294 731209287 917046601 552656444 736555598 766574090 812233754 428763345 936104870 222946786 547117483 78256153 168378269 690686659 820323154 133105449 671731930 478120125 892858972 763754176 861312695 103784461 412185980 49358 14674182 960570185 985980667 2190819 103834827 58905994 884896487 21234118 429840329 63683281 842059271 507428954 578211352 181361323 530208730 343403171 693225820 490862575 528016168 541743857 953533143 926234754 944593376 858453929 892678690 135650897 186009506 462261697 560059189 104380536 114062419 910987382 984807520 666184151 771577297 770481624 893139345 339030715 657328028 986169528 987926702 823514869 859615225 117335459 768903799 438058039 592839488 401563828 975366556 108537956 631213286 979803975 994352561 251462529 290042788 642522527 654802371 289051417 469549691 300101238 691137035 841034689 990773303 961787464 978383640 510349581 695546147 423760431 912924356 322733870 896215586 5990166 890565299 734151479 817489014 32802087 594853584 870139919 998097345 89329679 322285796 96708471 905361114 88881906 343149672 164924577 756047732 680550193 786846023 118534706 180119112 667553475 805388877 497432293 961124038 934512744 951131256 670665448 724619058 875161735 944448710 184123673 698633167 588313071 592878152 471138723 578640812 586279913 792070606 956258966 975674559 732033395 836935949 839691556 966337237 862186316 891782361 373660808 906934007 953488361 980741642 96638430 810165660 162568162 736426559 300924763 434518442 630568043 703475053 993368214 995670952 306135759 997291283 723674305 732504020 477048096 899659187 109701137 318690624 442427472 663588895 200791761 434944065 916945446 951280365 360748609 854694370 814027376 896452430 574367070 949710137 853261024 969823891 137587688 194353118 104004191 793400542 70664362 312320232 18764541 563815042 309732230 950192152 71489155 470524745 267615995 958661457 505409882 707938348 262033837 650025764 778636626 935526650 422014100 897317304 974811186 982488650 156391104 192986320 754517932 816635589 834386788 854301748 114030570 146269581 752926240 811791615 489402572 715854129 443306708 920691506 860353241 997161791 114695331 786810712 982337469 987948655 503441516 932778075 414065492 925958013 259773243 392283606 247082945 576195419 749973336 866436813 977698284 987811512 24502073 956894403 833974475 851411306 355315682 420054995 553416577 910717237 660326285 801273445 571699612 894902534 356608719 778404759 657804236 805733364 599144509 708147489 945699928 959056195 417901836 498390769 721571374 984059339 612467779 666979867 855055888 978736228 854794562 922720123 857602686 924629852 96516777 198549772 167123341 996243812 340938586 357705995 413627405 464968527 559355750 635648026 107697440 504498318 983602826 994383212 834275947 843457356 410652795 855311152 507812017 713439665 146560981 818965182 24589292 812738880 942738680 946674672 866420860 911823731 436102076 678285390 90711608 510691945 689346592 908410964 566695466 712105749 742759330 907277789 553475980 786836745 428750800 639079709 226927240 823745135 44274836 608792986 116538810 797913852 156927306 164470301 765621789 903726487 73894407 856823561 137348235 757961820 952672262 955441258 745343935 986215298 643186112 695926572 781123725 947176564 681570038 843475284 161558197 536928680 950773811 999192632 210801136 367682293 209868661 380143153 720717056 890342596 22665697 463266455 998171856 998900319 743430322 824163633 398730077 404527436 366204717 932923688 912477042 972680260 844254076 898664652 867682710 919877536 479536570 538207510 342250814 707636243 282304512 587760287 270208834 960442843 475236260 816866008 712324690 736569420 196372114 513042220 153708702 844326002 674097871 861115002 788845698 920127657 830048158 937290840 460767925 946466209 537978722 630710119 206727835 807927304 269813491 841701691 995202504 998472184 575004225 698648411 430679321 532690594 383982948 735480794 463675676 775083364 944067258 987770938 752654699 920313769 893680820 965459196 520995532 964399188 59065101 155767748 219421885 449873295 340631418 662203408 646736267 673372594 949747155 959072491 712711746 852370621 202531274 284691120 131332466 730897963 513114480 749410968 599714561 977420762 170404835 396792998 546911468 766831695 789032093 939472024 453252651 581960454 132987353 539416703 583893231 784038244 888665305 952394983 319269715 567226369 939479789 976669503 240232194 950265220 157231968 432667048 57279654 266898612 702660091 747349095 785326391 951167539 797583684 981267722 711562350 803498610 498334721 892213662 639424602 726342830 611920645 990065349 815659215 909068905 339697009 397775104 164512940 655007989 944946508 955226156 141477858 565878504 239522746 976666785 743740974 822582295 155576298 956084750 384255307 986331970 843727019 846461653 315231525 508108235 457965420 810864230 345827507 748652737 16686453 447268145 459481369 985788377 117292231 574991468 898932836 911937074 132681427 795023604 916251474 927988541 346935197 745183258 41484102 665160874 792986459 882486378 915094588 918286346 997533463 997742194 868349498 987891768 354410213 787440182 759095116 777861653 826095505 965264502 656200848 746316435 963399293 976678884 868251397 995383567 803692169 837794310 278422645 839104213 439238523 981190149 513954801 541929250 124830365 427884281 866399682 991468290 282575825 610097625 979998289 994362964 271506920 856552843 967715761 999049493 327353308 810848905 382012694 703579686 190726988 981145977 503173315 620546449 549081867 930108385 476805261 922257448 784133916 954568850 174215310 515738692 68524132 589832578 866850436 870451877 925515641 982573477 941183606 944343546 16710259 668449100 12842765 792024076 44636287 906247450 692256072 953645516 884844791 890735223 951741998 984389833 345321334 534510206 340662036 936281146 111396851 354680351 947493916 991037913 807044324 855023240 732799086 848873049 234670388 768855807 75903302 225957093 332512008 592835339 507745769 591679563 607523983 684221004 298885011 937818371 655634183 727643148 311504669 500483979 380641958 812421113 347557670 370547661 639258520 976470267 829004527 884973448 700054776 814248393 391639782 633483129 885359310 963591084 578775148 677967162 211879752 717423306 818986113 957201368 126755157 234523555 51218045 937668438 662039201 872377954 227072169 923475494 445089643 705341121 464377704 959762905 378554018 527805777 728762851 944900516 460317359 746407906 200751221 687041023 49509802 607620970 494606655 815389860 595763735 623830396 732377769 933306775 511083935 676914749 908606835 984825542 755021410 989301270 44384952 787373806 290711038 700263599 825623104 916971322 710922905 821898307 510381129 929911035 130728374 348641103 762162534 974918628 153838656 295357012 80486941 194513126 353695336 659339507 619288146 621387835 736875614 808572033 201860861 481886864 594102333 725363501 152004124 871178102 24104242 727335678 859172713 925469214 943048983 945908621 60913100 69005650 330453832 766257596 288030908 717180120 357243238 975898448 381130682 813702758 783517626 883086869 568588918 842108463 922656344 978768942 717257793 854471328 749465194 943092492 477516394 492019729 728314585 741468655 32395416 532302627 779165555 813641881 427760411 896602597 980968005 990457853 288451163 925624378 404485506 926552588 829253999 836382540 813690081 956469778 741659625 934140806 826750723 910787431 716428524 988799990 161603683 628370000 201088350 711961638 911445874 913779330 759233789 809525629 990751179 994047652 269114319 537221626 56709405 334244965 968057429 984863811 141389382 962421733 102451300 612679363 165165057 705716624 268962426 967133242 160199645 809191309 745048107 863670023 35130103 912825353 114053945 717943445 939213102 963393017 456959024 607339034 4848610 827750313 667973744 862328285 159566168 340298004 339353720 485592901 327849363 661078522 526807235 740786706 842172725 938277908 885351814 987939849 875886752 898814297 145642023 556017822 831066918 953987184 936760708 991200421 186028839 982260721 474654842 870470423 766785409 829715617 780083752 819218060 160644344 771408650 741301990 818889397 573899736 603415273 524901314 981177835 591427942 824722295 190134475 892968874 793242770 806813589 460435135 817248573 770364596 969642229 938752790 968940200 705056960 875278478 258657896 902440827 642678395 880279702 163436149 449605678 681483533 796287585 43078519 626665720 861950870 962992180 42921627 976152217 60984024 351272274 528706410 749239570 598694754 726366187 30111178 269042962 277274046 774087478 334092122 542341900 733891225 916715241 338872963 438768414 253275128 484419796 234492809 790998199 670488696 962998430 575562665 865048789 4626307 404676544 548282734 646750510 236372259 350998253 356470310 579835279 589402709 788321757 982542228 989922954 886476844 975534384 141659738 697039404 956468656 976467378 478951780 807241428 95127973 956807461 377825450 551863690 761336093 903692039 299722837 666802735 916109983 952856867 544949371 809621940 476271897 543120366 396208229 632851474 745056992 988014357 801229236 995132916 827191056 936004539 736012302 776219464 280060905 578159676 475332842 926390326 145744984 941147450 657780558 816259012 586737928 971438866 311827862 950682288 930745547 931011115 946621052 998766466 652600717 742989846 474930138 712807543 686089978 747375981 70334582 619331668 751104015 973612287 78713714 878328491 626146044 685194258 155769512 383508786 164922362 730379125 188968869 512013137 316135526 339654994 536889843 824373671 341365953 417914175 676274368 796332519 159795335 337470195 136130123 747381973 186177504 391504157 797641248 913908807 245888197 968787410 670497429 697543855 822285339 991795735 976201813 985190104 925442958 994889871 786372082 986420479 238028607 555648195 971837705 973836017 205388021 353789963 126550516 152475351 340283370 948384471 988823696 993554843 231317407 311723620 995653869 996276567 773449242 850628333 73058111 311254923 547440919 901754439 487899265 862954595 244972200 294939007 596049096 796828447 961406701 971124317 462665968 613794428 928139187 987709222 663167427 757989359 666968925 829713854 346358550 829082553 492333229 502104840 472835823 914548933 872883795 981364129 742301611 777459554 574210139 984874401 685457746 735465962 616241806 876119884 116740140 219607642 688600080 904831034 735240942 881603689 390285437 957052149 361036433 997127525 586681604 902932543 878455121 972122767 182691654 915737971 461723137 906094457 205438063 684697121 343206662 997694000 427736335 435098957 901229712 931299678 14262662 602413994 651127858 841505705 163008979 843855316 94593504 665906045 374274099 584673380 549307038 762692396 838191615 906452106 146465287 811669517 176923732 319931126 367858964 472006689 659784669 809625251 985397763 992182346 236141338 465670808 56033924 196820129 62020585 413090212 152164968 900454475 737234101 753974007 270947624 601092984 533386438 824123632 983262276 986284895 216381807 356055795 703150671 877337036 435677309 665191354 254255955 287432699 292939954 569329382 193990049 455043819 768605877 817291878 726813462 906165226 169507556 935181810 652512457 797063788 937848069 942505910 472789844 851573090 726269174 827480276 815031246 881858009 748541648 895317293 970770710 977317628 994166749 994575845 191880732 883770291 165189650 948385683 99218590 156599843 329085842 949605199 668680553 962693352 730478704 787250011 654176246 749501976 433154101 802671034 158381628 563961277 729279557 874866419 353716074 475874675 931295709 995620732 697501496 858636157 79075413 637491359 745115734 806898414 478618168 902059117 146200312 282980376 483674679 656782464 350091152 765560236 184491951 444877733 623033385 711127330 892951486 946313510 886139940 961623251 15898681 917104262 548245707 753011991 988540258 991750434 588590726 621889139 326964481 347223918 799419499 888186253 131503346 190657844 139755845 148157418 483246521 691295488 446859180 614731778 356483008 632333577 112022500 339395308 327435093 521237280 895215310 905747908 607405250 678725936 433014802 550716454 981655640 995485107 392989322 588565114 97533747 191456715 249637199 404978271 43006243 206015590 365671124 768391361 186991175 249505161 495446439 625789419 391434327 625548173 555329400 880525366 697568795 952037294 756507988 841173429 274613043 323360288 786465207 928699712 968208705 986106268 934111541 984961182 328754045 384931515 858206870 948358229 500681027 673356728 120165800 345219863 32305491 692924773 133497637 902908127 709205196 849202417 449535680 496393195 26659571 804811195 576719195 805179234 936504987 953215288 493017556 900097705 934550428 951369380 767080905 901355631 719905597 803958480 688943853 762017687 658475681 828012836 65068094 679811308 314531141 857278167 239891655 964130856 673645519 878413383 353170821 460939148 259695287 811000012 329689501 674985540 191974260 756870491 33833455 567428265 460854165 788299222 363746246 864869927 342331934 988258183 12198853 624642024 755436625 960500483 930886638 947567282 607339033 841333284 399355930 451184130 611013419 657366606 625022621 918324559 214201894 966851521 258261898 580464833 184691621 966155641 707695572 740552282 436980856 586477077 273873543 893511136 615239038 621507531 889958502 999323908 323126684 658428632 399462651 825060026 211848344 924543986 872670814 987305434 577928998 687158077 336086602 643512033 205882078 621494203 386134695 956764035 459748100 825656908 772187210 954925949 428152910 430716996 774561279 837735489 856511638 987062179 851999498 938780895 181369648 887279094 622204931 855622942 733140425 889183422 126240187 917534144 344455150 857842929 298516688 745303174 612157156 647917631 621036554 863052056 278720096 677170902 978082799 980192493 435152555 833192725 703528427 821491091 746633213 932500566 487285930 940602781 967767735 970159137 625705209 725063367 63914962 542984739 361417238 969400458 725275721 789159646 306550969 643648334 678707434 851408507 266913185 626552777 10623302 782276672 944247016 947893463 922269497 993968265 514971242 892148126 138584727 270975673 696229761 697451899 423207758 798150413 297026742 855135490 864068099 982327619 425722695 837741540 731499467 957277954 921134399 960022949 26125808 481193905 349045901 814493198 228433104 791657532 569719040 984562238 90281749 587673985 461079598 668739187 151508247 246995678 943543220 974998478 440316181 922515132 34130248 444750687 55347302 77247546 144723240 757574992 451373548 796283237 54054881 768368313 964511990 976467651 578413239 876450882 187140145 336517866 916821212 963198516 72104343 938957007 270456752 937687334 194005022 848372196 782989559 906806231 595950442 724719738 766651898 793377490 707028076 909107472 874510458 985943931 243189419 836454251 87314566 408830439 448563806 634073234 141477383 303708811 914217471 960036532 977372183 995598382 151273906 414437450 875691695 936375528 446010751 968000159 901127035 964451710 440539079 971503802 628948446 717451581 561016816 799553100 219793542 604984698 68471442 98485219 210518543 268836923 29794106 461179387 358447751 564187339 973226280 975686132 549963277 757743120 182805304 545874138 411485413 967693866 166230313 854980511 417685514 519746792 397868857 973761998 851158738 891395329 29399895 453200491 661463319 929966656 804882847 844702317 816832842 948231816 766221253 897859761 989101511 990814132 78990997 202482228 239693803 825824399 695507900 777627847 208464908 728948393 381945498 820402607 557207082 992367792 929239543 946696830 400045306 864605767 627182112 898784408 698657924 735206297 330546826 788298565 130711816 574896344 168289691 769069564 842317600 863076395 797224437 798767514 478182549 734774942 719013242 844187880 884351946 934356740 263883600 622549419 134582001 631162101 298003779 346217301 839308033 914600548 404967784 944494280 812965296 974485258 272998775 520798387 102264030 386383518 660129348 989222645 560955130 818541245 16444334 131887878 253747701 288605351 996906849 998821017 872079399 988032854 583652831 813531614 305441612 554381344 94228203 606909913 800006336 851868725 628344540 957570107 753407994 813050742 800395472 846946074 916629540 920432210 418452056 659639630 167415994 674428752 214204283 837762909 220606547 696008666 519711573 620300770 772947482 796604699 449065063 917109567 79019411 943750783 501940199 611189175 562580457 826664763 546625786 803877069 289386837 908464900 656657582 658601748 143800356 975619104 130501687 958937985 510508966 599340469 550492986 807806841 718061421 952904754 528229645 857454445 768969785 877872801 36527266 894636842 92254492 198802626 338710565 481080191 539880814 669825832 966786857 992962477 921433981 960885082 728855817 806287071 535224067 968487049 246951441 449129057 48467784 384291225 251271857 810115819 430967496 653437806 638213582 780835590 412245029 644356976 51062441 423575741 432230313 838471483 89168090 167854871 164162340 605981619 771314142 972541377 104072051 474069660 789882685 919907358 599775876 764101743 701144782 994368405 275756656 279936296 665207712 674476757 872428206 998067426 419664751 851070608 263158973 510432029 769090069 923606486 681115511 731388809 309861371 866023306 189305347 676104140 531528615 603833621 559189173 972977740 449975993 459024163 827402494 879626308 992181088 996522694 39676269 303132793 901115098 912543133 13058533 904325438 878882702 976662711 207071373 780504666 18827942 881454530 374926355 855270362 716537203 857381916 16109983 787691545 666643711 860767047 431313426 923926455 396766827 863451885 50529832 542872018 309526786 640097687 545050240 793174131 589418298 942577592 591296088 946476194 506072732 946065818 392401545 620297896 496205622 677701488 797861882 990568654 42890974 957360909 319277597 420774112 938516989 958808455 725529671 957715395 82974646 735025405 346410188 522570877 89866409 310360017 99592338 409144516 978119943 994001993 362278634 611372161 737547454 836789923 761765492 782587155 953985327 983935278 744876328 876785843 378372733 680632918 685503736 864163529 305967756 332408958 530019466 541066087 712352378 761855859 495833428 927913898 924009156 938903501 659344030 878952830 605221081 793394420 982862739 999246159 509675989 611717506 350296159 947442846 943906630 994539562 455507314 501834540 196291037 559581059 413090698 831431973 969549607 984638517 605390875 763232962 442818242 574579705 185445135 392565423 740606541 991399609 940947607 984720605 186972008 314096926 982876584 983365875 940337537 980236756 263722689 723783531 424562982 904916228 530698003 746688635 269150321 614247203 884399382 917899035 232967823 763871200 114188032 432635569 273327789 515008262 591916839 664241858 787821083 862265465 922760961 956605015 808765959 880900839 627226025 912177660 488240443 620348400 693978123 953886843 726274160 950456839 144239984 523903950 789025734 997819463 521785663 713782216 702751719 993052455 970370930 982987965 84215544 184430851 568440739 607955435 790989520 825805755 883542681 955941876 238618335 626768261 565000456 906342978 495212521 948564249 797292806 799040754 239590679 341836804 799290267 883401838 773167489 986767178 252464118 939951738 67497372 488345335 295344749 916898461 990872707 993839045 45304071 741474812 237771654 285239412 201830092 247602537 35407230 755964716 734687514 828989487 450262625 966838154 312332904 991286975 237505186 652867842 134952386 623929180 679488993 882434573 98616818 430629505 682040047 914249841 717317540 957333519 612496983 849944997 567373790 919235079 229114304 275474767 88100192 442587427 345692411 937304803 505511830 827044527 480105090 633204518 705054867 843915390 275724658 494252368 186157166 710300534 779240231 806868063 815831130 842243742 390922634 826716901 144192566 878859654 499165091 510501198 282807370 893867977 587999699 939438223 969065599 998764510 405587609 721580830 672026340 778528593 161805550 964477200 52065118 540687019 466507548 593106631 782672991 919104785 62017110 508235380 949201722 968286224 153908459 589693612 407900958 847570817 321932908 551817010 624162643 996486852 586589563 836949622 910377389 962707148 957421507 968071913 346005845 567149927 933131947 940609541 218951343 335936250 447375531 527366894 956161836 967261167 159517348 396800405 453758532 830413215 910797095 913020882 913959329 964095471 140128483 708021316 543506256 997393793 773206595 921126623 339747542 365132446 524462552 804305209 827132606 837078678 332750153 637528841 765953179 779010209 454703188 497503597 470994609 841628081 534260040 966765557 744522424 798888215 283380660 772988408 693401558 787282543 567554704 760186407 876756542 954064220 959458251 962373847 341973702 492246575 287411931 491055100 226938167 419750177 832447139 940742949 858833866 992407343 206423735 989862896 831948278 980622931 161090661 638073038 790316569 829040406 123634591 960704421 832962565 835732298 385772467 707668947 883241859 912113889 971723219 983836662 62347388 307261601 682829828 687591875 808103009 990431089 126937419 414632072 531605543 659414234 5135433 699474796 452706480 960002713 126160967 862052171 434116598 662547238 411137961 813572499 884160301 941744962 170953809 392546927 735322886 884168974 165684923 594336780 652226371 913368135 223534361 269783415 500381166 914483280 647795959 809351537 175880674 258733057 108173989 851396752 726734982 947526316 180362268 468832067 451146886 937274889 452391298 864122144 888132564 985856794 970057734 996977979 276298860 351337453 448939834 938171394 23033155 624624331 656300933 788320187 68767959 726905812 28611254 480627449 306780877 852532484 114259275 547089084 596157790 844423323 860232323 953431703 67315300 653473514 11122341 510578520 469102816 542418979 323064897 767243549 541946222 944294492 141128622 594255482 536236343 986434741 737545231 798729941 709282164 903412282 894701658 946821426 333923062 794697108 921701558 931880582 81511328 455128926 377868659 556018329 933141218 943852220 22925651 991543771 79938014 396011438 788799311 982073503 356106777 433460556 543964790 923220596 715274697 887870520 323024433 717626878 723311992 767746466 449890278 906148473 633612997 870104600 911614026 927624984 435449149 956118261 39249729 250772338 519215031 805767879 607332835 841807974 561040861 727285710 120196922 866632466 806351275 840699362 404805900 976529416 914268801 962322092 373598904 837235717 192984989 876266483 166755403 621813600 232675952 632360070 146231211 873378203 195901632 260289497 893260381 925060612 421972594 506871322 107778914 642721121 632298137 672830605 809422381 850354717 84104936 940422859 769896110 810977020 744318258 852484731 303006602 938782542 874967864 880973844 139302922 459184819 80376685 352035945 973114335 975257557 976956868 986332541 943195252 954473141 897227580 947666281 285761160 832659078 218154647 603343657 770501026 785067406 832784942 995735758 239207823 763854207 482736522 564464943 814699753 959264291 258092293 868478626 280540348 858211017 761515316 772816941 614226144 962288105 456810930 744118899 349237197 600498275 571344796 933907894 424746543 919290440 205298134 240738703 561777414 678123816 684586361 866293373 97556199 518379503 667142658 763470993 857216900 918448732 367700140 752583427 183409310 958179667 725305122 775815602 465471092 952588173 331786437 852802318 385514253 971118980 240595334 462862729 911388647 987028717 175227299 564841332 732647252 951993805 943037236 952411411 984114161 992619432 421339709 786669430 153815111 824515234 671270860 836007619 233678024 241455752 699743846 964925489 70288450 829485675 166600802 463119089 470057812 537331082 623164886 864890184 922277150 989514850 348664056 798756282 244215325 988212166 270647389 515741712 142184227 899805879 114408446 544210893 579263262 825416913 517597791 606060286 699377614 788324024 900706485 994083279 239803652 450558056 552661443 903164689 669180450 988086615 603273311 951460481 605110779 888593841 745988864 755798551 835972633 902001496 991040522 998089825 930499683 987913377 182367658 937883992 806112639 973574502 835725501 957050150 626563779 938116218 724088525 735636517 727286533 947880287 633753424 935380004 349392775 554813276 348865465 975954953 856931184 943590513 820543773 831251215 887908205 947376045 393855739 607067027 462238557 750440837 812899776 913137769 217498652 778948245 234971721 654193262 207236216 301506968 827853764 981268565 604331975 987754895 99376921 186061097 375056831 466577673 197932797 871384121 940756403 947920033 939886462 959676646 560264805 831507546 604410510 693604760 357398826 457131140 158797626 830260734 542286703 661978214 980587322 983996987 530354310 603630625 690133555 762009598 525955097 546119242 40916648 773749056 85943002 561331425 519137186 620888721 119859636 253092089 934033436 968576659 874636036 908421345 269256270 549639218 11900933 476663448 391094993 612343171 170642545 818282655 84053148 592298544 408568754 878839586 666377373 830202991 412338562 574483608 219613952 903210467 565980707 573481003 55578774 701828943 697039005 709610890 716241988 964668954 909920929 989125457 896748454 900512581 457265354 975141552 951887671 988266295 32448265 368714556 395431625 515055334 130938186 957943347 923305590 938676211 842056296 952328424 289004301 356164898 210473098 451063516 619915692 639660887 945478997 994408956 523134742 938692001 227746025 759992260 777350166 923990076 870134939 936182763 406682085 589572568 536664720 954029161 442015838 500871402 736895199 738103544 552518106 672022020 736750606 846477191 107407043 700775125 320387710 648199843 641741243 845172883 993807924 997137906 435202871 653026034 630028918 713923509 705303974 799459741 839549977 974944857 405022677 544273218 319577735 722802210 761519526 940419413 503974800 939992004 61648724 298663760 460697268 965188961 544796042 573111023 510980572 694468012 170524408 873916970 678368322 934701943 847337545 988281255 746177629 851648837 455045541 695659782 336764368 764484338 304047130 801987683 892261122 951318731 955979261 964884134 358812932 711451622 827306479 982195661 472499267 657274080 748083015 935737338 522736572 969240187 580134732 888499088 579583671 613409308 138038844 536127253 489358759 912595659 918726240 983444628 512989296 822633443 599426148 808112184 737948445 998337566 651646932 885223834 608328395 654175687 598727465 803078146 855750929 977685924 474028564 780097223 580781718 628041281 254375053 314431406 193002516 274414324 842747614 932183137 661450403 887851449 925173441 960037381 645687977 963425846 478028338 527183795 934463888 985325024 336777394 347487473 359096604 560212631 924544253 938439270 465205686 583390859 190297496 620123068 596130841 812011845 305940873 488312016 19912186 897503900 896407981 944326169 749526864 777175833 484124925 879223259 923393216 923792402 468043717 510092849 160163239 593075942 640515640 969399824 116300892 751100178 546633655 972517240 306257625 490658359 51805142 640992085 408748302 528153318 826225337 892670693 77909694 992067341 212139349 803296208 160424822 867324310 505934244 944493594 847170087 854334268 484890093 754204118 498018274 821355197 873438865 914868035 356081304 960473143 767048255 882964144 232059388 365747802 191687752 249671732 624658219 738467326 908063237 979546662 121372118 985586329 906948441 994948411 125969955 348668397 465026030 896227715 47848898 843641740 982080698 995624963 305890883 307263316 92105024 408796494 84143615 444194331 142771937 917290689 775074048 785127203 265391300 820891794 417858450 760300389 406058140 839276961 350236167 796814261 384015500 529777039 825775917 866898797 890111726 974537555 653982458 729269402 208960756 739308442 202558240 585298543 395476349 683734980 280309334 857832988 665996657 846655957 858235531 900348856 725495048 856562305 996726108 996783665 83735416 325333367 843628070 903201603 14587746 277587350 925085730 996161745 817634791 973448184 370615000 780509755 589223178 741889963 915908879 986191819 201972862 748466132 214227461 724977901 782117903 883696334 531568349 675446183 329261547 588431145 332623468 720004414 725017798 880838348 600149588 640433459 295711634 930199377 616104168 920904613 153234400 476548521 985984979 992684839 632426145 782506830 882566385 997386931 998423772 998845969 37591902 614255858 372600144 455506936 548075433 859457246 363720612 459351151 808336583 889237125 695864733 830171468 254811241 825248347 759414554 938856557 590281074 889201455 84233000 946457783 16104439 868538398 783166110 952725050 160427296 592673236 384827471 654731048 861580361 978340388 770107686 936245185 997814828 998008490 723002346 769087470 93050641 753571149 810346172 877842682 60854889 311074836 726447567 867273996 403743438 492290144 843521265 973061491 231157257 567010011 61530314 360327044 486276993 899548792 900973044 977386980 136452896 520843416 13870278 15081177 198576961 364027369 664600248 734877179 523312336 770723235 53383319 123196553 542361007 994127548 705473967 738658665 377089038 822345366 974652843 988823917 906629592 976204404 349476779 843353373 463602221 483795786 243466306 891598111 654540890 862436736 478957468 709279258 290919301 938023348 551772172 755234836 846135675 878396673 626391882 966202971 842545374 915551073 141970628 276702736 244761902 869723288 828645478 965894566 549309129 895119230 282525495 494041342 942962668 968317696 760415720 768050032 708582687 887988839 920593625 942250826 53989736 275940100 848106228 916981059 598681350 618170058 741422305 866537695 556329191 746928946 819331924 911180527 37418236 332870086 172685181 605424089 630584664 737144242 671758542 742076794 995316079 997963463 258651459 449882739 764447396 880335812 140671451 223741375 689111670 989859178 896787076 973807662 682816256 820922461 579906475 832603650 247476244 278443484 15474028 102662082 712615010 719737506 592820354 788801527 299803307 419222781 361125746 888452389 505005427 589898782 84015331 197332026 800653478 947441644 87688836 254990061 9708676 729923978 43002466 578361779 565827799 982177177 357601946 755203107 914724966 967397085 162603779 696602740 99705451 991772312 863257867 976765718 180476050 316722917 993034439 997986387 175623040 699811881 206815351 390120744 751119630 983498303 709329679 770017140 221594145 958431181 884110189 985407669 817350275 941897988 576159504 843972327 605143669 964774638 521505117 575971320 993265985 997574956 572604389 987848254 656788853 933042702 412771159 907978507 497370718 512084914 759970187 913907894 382074876 382941899 496325249 513338681 256926643 549895416 164703658 391761299 333112824 734033707 909177647 986693834 476243403 975189509 773652913 858662224 524510739 688856384 387605517 703298414 800698649 832912767 357913485 722120158 413920593 821703099 560345994 799242642 550558371 994696954 559506818 695528815 786324811 931509124 191289000 210628194 629832811 905146387 346629581 684044259 570054048 964129740 627928687 836490669 162913038 373166089 912016187 968090004 274203311 908938023 825926965 957305000 571914810 721159382 265943286 800614967 934823915 976529542 557588581 785824567 38804796 915980262 187908651 804127498 601345331 984826321 306408143 830575388 202069052 299040776 208213194 833392753 519626129 863743983 167230177 196530155 554821039 729852189 961449159 974046150 593316713 760950840 378303932 945014024 698245631 953856762 452264781 762012322 652831766 893026059 897248045 955509838 342283849 836416912 220240671 272691401 787844237 817154837 395740071 634158113 716364354 837889064 196324391 353553526 238764768 963751088 410867750 770229549 975495692 995753635 959354997 999130639 39966073 856696984 549163530 778205188 445071010 487903466 187707739 788375550 749377166 878222855 422423783 423203276 35073841 295153114 261473082 442488383 439819267 824963942 769377418 796845303 107867489 496661668 273580628 538060202 148623099 578301543 744601688 873424777 202410857 783208638 859821741 904481204 718258800 764074881 767583958 834501347 454210261 472525291 71280035 699899310 2429243 490035615 729004013 739968088 414603202 535235605 996865729 998326623 321158296 955857626 906621858 907005181 658740756 983198463 763454558 872768052 721746309 993308925 288104563 320737492 19598995 36367527 685401458 845036740 107359383 137178085 933163980 984907850 801881150 920223997 440592470 594943762 621699995 881156760 111487164 960723309 665655340 714227377 303325144 496133907 913368250 987566629 377361463 751709082 924279009 985191545 113021970 981922002 658508695 907905672 844541822 939698016 151146202 341119562 217692484 822847307 885628777 962118204 891727269 895991183 896802730 912953505 428473109 866636100 485110210 938044612 220110066 904055476 32924763 34486918 981395992 987377023 458332909 830699543 871320645 923502802 179662201 613623260 979111841 982777471 304784677 720027396 744312304 930033766 757117408 850153137 583523562 731750180 221747711 579846768 113808226 339964913 973553857 984223996 678304167 818294366 624813652 682990284 195813900 249717748 598895140 687803868 542591811 999231926 376479092 978329315 661368691 706690511 710237559 780995809 623145683 636957826 796083516 913564413 557979664 718986724 166869744 553599004 307618438 624059117 68968768 700700265 357317748 888541175 963921986 997141967 510991342 737865595 564870450 807306914 637192134 642670164 940213792 976654005 606832753 607712001 549916790 979996959 589529772 732928765 543046736 547728925 200353370 594788384 472481706 703056265 902748470 974427206 589546279 827367827 601159133 744007225 808405076 960723111 785275752 829167544 950224203 995291896 957877927 976425751 909708979 936224525 533514676 988133780 586438195 761176088 652949237 945593176 635045213 772904696 13447388 960286744 2103889 56068503 692311647 760073261 791319702 935388772 590759339 647102327 672012443 863108592 651711527 669410289 852702403 986268547 250133826 482237182 793856106 852009603 87142840 991186223 586789378 958847699 760609634 874551002 356026986 809935989 8840349 763605128 677364296 705610158 793540488 947826272 54472772 375089806 845641212 858961100 573410570 711429263 975954743 993996374 396652413 869284864 959598294 994615864 594710296 880275169 186316263 421123742 813555874 933162668 28183430 814812502 410640494 652527806 745084413 966075739 491700793 658268542 473275613 577090658 305522328 746489360 626497862 693735805 442333587 953899142 595481704 778632839 719383386 761966736 616929392 880977495 944347506 971780363 936357559 960592490 667865892 857314249 500157584 895580050 268525420 317788837 764888662 799430107 20418548 244238501 890308638 987523760 950242584 992281193 197579987 981955302 637119894 690332861 796706484 959877245 630490666 709544035 502732747 923180957 584860044 694887492 989691158 999389254 183762879 282517704 102606010 468760690 774107847 824641380 14293484 988543387 646202537 830837527 719153170 889551001 291277598 672364927 398409976 647122972 668581234 855448475 32579047 642362183 963224563 977056961 681859353 781169466 639345927 776199203 995499634 997913293 827831872 846327102 765971331 912989544 923500688 958861448 381334016 922712474 250585860 832418849 367965309 832248407 751348883 846404873 384664452 696141443 582007602 631255179 611805774 820410970 101757728 482200493 984014241 989525476 354443281 940664433 727879700 901133445 898359103 975170832 902193924 968621453 307957141 316827363 95260089 325316277 21840587 63113605 151334659 852674270 80695749 691082013 477612130 503495871 796222706 850504846 111181799 750138760 323562403 545387179 458509408 898208039 62624207 737147822 785903773 904629014 704578160 978840626 901532560 908043270 162942043 434647161 704869476 905369174 38755763 418665672 535038663 963016277 880255179 994593543 841410315 916540756 913183196 918603283 725848130 758243838 300645605 704739000 220835818 295432617 718167852 945848203 791442870 993213308 620211702 723893634 913269080 990156122 396453104 769743394 189284104 765019205 971459865 998724115 564523200 885201594 149457517 920744458 234954387 501792708 885436070 962442589 426002073 840924314 804998563 825826371 141179224 597801749 898662235 927758428 765896221 861859110 806777041 903399014 409386065 447511231 580964947 902724165 28202716 237046757 542324054 619694125 425212370 860731562 936559226 976462627 664817995 862047998 939249822 949944195 813431339 923135761 503154586 744818283 768378667 895193439 469612698 833761846 825294885 945651717 123063683 934901741 609605102 969504547 88623638 591014728 685459498 714313787 881280595 926374115 546358307 881007671 63396711 708993102 151867252 702395859 972039860 982917423 960521164 965594148 523162897 681095222 835688255 858841023 215900026 749708213 451494033 735526947 387758414 669172989 94303093 343436878 976545928 993377939 824391312 938776163 50983524 556458821 768936460 797253170 364216286 888234679 629565529 994897314 418999639 512810489 307794834 955442428 863284322 899843889 539600814 624289545 649592214 879531938 154029293 460761766 340569171 353457567 551460325 662376430 822254200 922654694 610544082 748009398 496365761 657932396 28624712 450465476 911415363 936293326 897255059 934272868 218668479 457297805 36152678 459637944 864671032 977636269 447515034 712400261 841121126 978526219 256218686 406423891 175844464 675066808 796639334 993135355 779775370 847794877 101241982 437279389 113614606 491180862 105671185 591331843 432636165 717085223 642166488 969537889 787226173 871719945 101451742 193408652 858363011 883430623 603328935 916473395 730521266 981513533 15219427 147825748 787841223 868988327 854852898 918570818 211950273 763758864 112350979 184420024 241076791 916998517 811578973 969753178 608598530 652496979 631899595 936101914 584887204 641341922 103496375 109522049 549042880 773771478 46429908 319887093 602133699 635664827 370953362 865525187 511539291 650204311 912169807 998709189 700253132 969561997 49784108 756586890 212776561 230458832 787774182 863858635 675892841 927770546 72081662 536425186 112639988 143794636 466322688 929516949 846169167 952016253 141355539 409456045 91288483 455745855 715968010 849021909 906130645 912617843 102689096 797724483 237679958 496578369 254189107 935150918 806395404 825016647 710928672 918763329 160143637 712225803 786393645 856996087 337754095 546514163 375655329 970171816 696140350 834963176 671887150 933584506 402649673 512194409 445291996 792333131 493518548 851222709 974244433 977827287 916356055 968523318 443750137 750723941 596829977 681629145 128324312 159573517 811546224 828376452 835774529 884826397 528791698 788936982 281401772 379540097 856619456 898867879 727799569 806461930 544195932 587260994 190693610 691565241 345404645 441561941 707897574 879937338 942217940 972950816 651153286 784010275 545197964 623021256 590591888 786630567 30618056 856437927 994388817 994497727 41860493 530179462 246895667 358880668 315986559 736554959 542269475 819146430 876592078 879792422 272537801 387345065 277733064 870676332 909618845 933788091 280225457 596075948 670325004 877309932 928615994 981520576 453105243 937729585 214040801 977711537 154619893 565955940 66470120 213419199 567225245 736879544 202065197 877346112 511095734 620575463 532880143 883053517 515211258 951592307 95262891 494080827 930882131 964644420 536716253 585193752 386606018 754757893 231911953 666322459 960033739 974805961 402134868 664571282 828977029 903801717 689606461 974428603 424446795 905419268 524875711 690462379 348192866 989058506 606836712 721832824 762534334 902413415 465233400 498845277 2339242 667576390 674554961 880123745 969954998 989169761 628345436 874512280 604956517 843974422 233794464 552396815 824369740 899203806 683444895 693880188 125781235 195911356 258609912 851370069 794715306 911893406 435866397 916686456 606379799 910395586 87875560 387906687 866680740 938779204 77151594 658472588 861015269 952048918 99457111 292769810 266280739 388242282 214076845 828973730 709274981 890856500 481645056 867128228 113596314 180186351 396008929 514611129 917335503 919049678 364051567 932628142 784824036 793521005 677696393 708757077 523941817 612257643 110327841 367325779 167014666 839732000 63309738 954775302 790887216 896002212 49341857 200074512 300566653 683187466 858530238 897278442 83691517 561409404 485886157 755510780 670832519 857459574 782438942 939643181 750907907 878642257 66565448 781146659 879466350 964185032 15390610 927217045 553500414 632078525 740585880 788878755 774599827 978534907 773409250 987444107 592914116 873600158 516809425 958273869 558527556 970993385 925319793 996304576 11356788 710901467 359262011 454458594 591250690 890544341 268681434 918384854 154709543 167886015 6025966 862791269 181654413 666181186 757037364 837973531 549494028 975327721 794658022 797534684 75548654 474794267 933414629 958400032 96782044 562898766 469052798 555882814 766510334 852561170 652787928 934549406 785076851 889970229 124051782 344506401 885835006 907106638 474516158 763044493 972276155 983236628 542701599 612431326 187888973 600412440 352056196 967359502 153203764 501069244 174687788 852123532 343536050 710540760 999087089 999166221 939698298 965411572 921579042 982195679 875285229 900428888 303224600 729261888 412436035 835194370 649324075 871175607 419001587 901255176 790571114 867906277 854227194 973428689 731024379 927784596 831411953 833488911 307528364 842771385 455117499 822645449 826105228 863562375 611032914 880393421 915573585 975737460 537620563 946016717 552689668 619866986 78423090 255014751 362853826 629619164 219076405 241236397 318865589 549293989 377605276 903695982 665136432 765651739 190254217 298136743 271525831 898881938 799622450 848576753 803688872 924944351 794247754 900743025 891480208 961685645 150964975 998105413 615161322 784818652 62521426 529203476 770700707 964797761 633901710 889749845 661359323 887407930 536820741 834803540 431878867 570582255 215762223 699242055 33212497 123193260 611242316 651572064 793086611 861717924 882557685 948902379 103523288 456997378 722417296 873545875 67992483 830692244 47125634 687996839 211017151 622135581 280018458 774736067 333620624 590755580 635129418 963237155 260774133 941220010 758827038 820580932 867755952 956135979 956561024 998712678 309958212 976201059 502363970 757146955 987732438 997276261 911587297 922489511 488509450 707752584 51586662 212111324 151741996 780372432 513915770 628346634 338485007 767306420 779228928 965916395 75025506 985130703 378745215 415111695 840147991 937380535 153419739 260632984 561018678 794543661 415728298 809156098 336564615 463808716 249267063 338928296 974911703 992035045 609646180 843632465 567517034 663649670 311332553 574678495 785608828 884953657 454986478 827474447 191785498 339114567 265702347 591204755 92694477 94404605 209204192 629374346 360456887 404086180 257915798 990808185 337500533 787489915 298616444 744812971 354769677 618302623 493426811 590855925 571378986 903120262 89915995 571320279 689657569 847488146 832663451 907504246 252097070 643621997 561797631 628977274 208117439 665533314 324692052 491759930 425604040 507343512 4316995 830113156 581181539 922165113 183588251 958501699 649833534 674728092 961057151 976937383 463459180 863399225 178943935 579606250 79999483 805039366 9122839 290608417 831847569 993203611 30438079 167497345 8819653 167502652 363711536 733640703 911237902 949435186 407536586 834359513 226529950 512948641 473948543 753259328 196158774 293091087 101446743 275691506 446714762 657306811 581572159 594320441 105491889 362370964 915781108 996722803 518065037 847251022 112713813 483353928 937883918 942446694 356980514 596645532 532853799 772015001 362820006 431934265 207757610 479890583 217762384 761530678 478352328 777671930 162139861 679383644 416067765 696323021 165711567 513985490 614006083 821649201 726161591 921607673 615525568 851150988 181708204 611092899 353467666 473062258 922182303 934059603 587547959 659349411 28720778 577072336 504397020 635858336 472704759 484776318 215512385 919641793 648794503 846421130 691482376 820346506 889790939 905288860 329345428 517868210 301023806 716688444 723239121 855784928 102334676 265573956 375547646 685040554 107885890 392057462 194771222 422370888 877752342 897902967 112356294 558978655 125168616 265182624 621502509 624144211 36035629 716122531 609137051 641163703 677452245 972221972 645458081 756794454 623211933 755195091 81781138 188457241 879117441 940423251 59772377 207672814 302589358 376586599 355263686 706065013 144450946 833389698 616066081 752383954 955823377 956318195 789609880 982221772 757485972 759029957 993638995 997857980 16005235 264168423 492959022 933966536 51945411 833274385 395351149 783709254 818239476 866659829 553530330 953537848 834896923 922127062 11097773 412420031 218676460 975453936 46374852 881127831 115332535 457482661 215730140 795058326 600993922 660924757 724914156 983270605 497402493 817710624 15317529 222017032 220837325 853733976 48007972 848968678 128321656 990801161 480851727 589730512 222447579 861816664 723684645 964106307 85796556 635291004 470449367 528569846 675633554 793059800 189194477 787832030 688013975 717231922 13306210 15799668 652092975 854237740 132851713 279200482 970323743 985691204 578450594 582070216 226685012 708194152 714443587 776795775 518086832 654987404 942081298 990914636 138439011 275296239 119644530 682285151 695561493 939005341 563725917 608697730 489392988 779603253 525359584 857189778 864441501 918561790 647158407 995959426 827188636 876393024 688625669 949843252 803013937 900617710 930851509 959419695 100647504 820106710 309520360 566765271 223659994 896538169 544289873 653387305 181059968 234169182 777309013 885107125 782867421 832152404 529880984 644214722 475835756 986713934 417616103 581305109 239914006 982790418 465578050 539859972 163633575 354934380 373608983 921335595 438599430 737277861 127956911 401443235 28538426 537051772 955475248 980905616 734507542 767704695 214094841 729710651 163091877 634914589 675193894 703048867 851536614 970993715 685609025 974834897 607196803 897382815 890629585 917363477 357149332 829190140 389936655 956513163 378314714 507121042 314645903 890595554 804061649 946498821 629982298 883256812 66029181 427358787 306247994 618566320 747484025 894741680 322022180 571573101 474107447 549198413 882961789 921990698 701804095 814258272 777961067 922784525 83922351 444503018 86197514 772709395 701646294 786015776 579768010 961463191 606426734 984610725 60911251 436030243 459169366 664920741 498964184 613339535 180631200 682197144 891735146 901188670 691752390 872463456 553065835 602081108 418048794 461516688 439251440 719943538 556826892 934047407 206361177 867936524 700052601 952452807 771775660 846878530 444714472 651392080 717201797 999382808 317962207 522950776 550590556 616211433 814576649 954801343 251116711 847338357 406944602 787792221 964391887 989492257 22161632 699043761 205275723 974512855 964939783 979800308 559803584 591160152 781962303 793869415 483853312 953309721 387728829 860633226 931199881 957882528 456231417 708794608 384397237 391079383 10922020 531143863 732238251 806123648 164552786 986387901 557416963 710189939 792579833 973106847 857617107 879240049 283599728 824946341 149472940 626551043 695888566 802061452 829204801 894452297 898924683 990958818 244257323 246131917 287372173 678201485 600666504 617385710 216761256 840046988 723116761 883683808 232217611 610387449 714987924 745538609 839940643 920261128 474956978 786127815 496677313 767715606 180331908 412777137 720536815 776944584 805949280 975575883 269557908 485613505 426808059 510424790 397697643 917005107 914480525 972498590 369503393 770184941 915161524 995659712 299693033 328316698 332212290 880666728 310557043 429555978 616493022 819599959 124351615 509593118 644216337 799617192 278049700 652589606 780345463 998230440 339382722 490999127 59447868 871414308 181068797 650215802 457773851 791782572 161069330 432513113 111416648 328371913 341466788 918717160 595517623 813209627 777381963 912375750 559403799 674001096 263144705 533642850 256067985 449086261 570614411 870656127 50819254 797334606 386928115 695031950 786109063 821700628 904144278 908700743 198311220 921701229 142111466 251222979 422780649 444236643 950440743 952118664 160473620 361766205 316511227 338429434 118482379 318168162 729172691 798013553 651671398 927694631 628203984 792556775 341324587 957071813 997217300 998354091 438896153 793000404 700232383 853082420 6865135 818951629 221399672 468446701 92657096 844485187 487121737 875956680 591053830 865387996 401567364 717058649 678055939 863995697 574218936 850935008 986379562 993302804 780169724 797342173 695569426 840522700 148217795 440064779 82112672 165255311 948604594 951671841 953116593 974603575 607455869 681290145 770473134 790909576 267634012 526686980 121985143 957194577 992930375 998166769 688381893 795548352 218807889 608872207 319017478 853701424 267297135 649383392 432724270 767211148 427249484 438783132 792709609 860428511 583512821 784112565 523972631 981054820 956550346 961895733 469715519 524580803 793137967 956304162 30297545 731146712 743087757 814293076 775948211 832463257 923594446 974076058 402028711 485732797 101147053 634141579 958218411 979565648 959655659 973992184 803908633 934290808 790629437 815546786 160966223 474046912 636052348 680579209 10612313 385501491 217203784 222298496 338233510 927708691 801994873 940335219 142055485 431558891 881045781 953086406 211455277 311626541 364731903 483786166 636747977 745775957 657200226 696587836 984152084 988626634 860756810 893089968 126059642 483832904 691534552 810983729 67966096 962482030 659904378 868445551 969485277 990486985 869983982 876721458 713992304 852385762 325333675 888960339 861000150 986546995 837486333 860866350 587086130 601069777 591569425 740050571 193658499 709585375 847542382 862673002 31534475 145943751 451180477 700673355 752590531 780971181 50232799 812429593 608385162 763636669 739182832 745468269 607600741 966743459 346907715 892498355 924997224 959667212 398674437 507838694 87979886 647809776 86645562 995411312 276156798 672403439 884628 14082760 682199826 971248401 111492189 194924346 106560118 788677009 388266514 676502082 51379001 583782950 701022906 820825349 304539098 591702360 715507986 871763182 942125807 947958826 223593788 396930090 37763430 97553461 217947246 796421058 642589401 874548835 68660812 576842377 58818131 94356058 646130061 800841761 993920229 997653196 505388694 712895206 855393727 874115068 590590393 602018700 536748015 618133977 682808597 802001027 786379759 961911693 86155728 301291356 673401082 755759752 542517380 583637633 752461921 867128966 643815492 645590171 227338222 612639007 732139956 780716194 391253575 770660140 541331350 928470500 792675357 920126918 584182047 819327807 537466725 862493874 707528317 998942635 454140597 527111564 827993662 934141532 476098200 624879161 968210075 981498714 14766106 769434045 712963805 928648200 657647609 829135580 929493611 985890509 203248894 860178628 452634360 540271718 711507523 905052298 203576078 547486758 162936107 634021166 926686219 939227753 956281181 976549177 432863637 498664431 577908817 634642864 875907285 933322007 477803740 888305565 918069486 919691353 282664325 952563300 22229723 869913032 82529189 560747018 514129384 950154303 118417960 166240555 828255620 972168335 479197951 997772780 519932075 708350428 94726425 102983321 722853578 817127532 842187568 884332241 183421482 646684923 338807732 560194567 574239992 872286955 528977010 722156151 819200961 995176622 301263185 805435764 547968447 599674976 265114573 608038016 467677419 520110815 427047004 677333954 371041170 893225888 327025517 643908759 734059808 860879213 848429106 860187288 547737341 748045511 178805103 469622864 125408056 364216605 262123835 902189124 403969286 528329462 724898350 805514281 939115073 987794384 414280335 765269023 137816462 494961088 842377074 897246280 675538521 711424331 241048711 368734747 316769006 674006751 334649835 657172728 76867752 758280474 232632694 525869121 948886432 961722153 561944834 949856156 510243968 906894900 124345671 477830037 825875453 936408397 2900138 673477358 719607996 820784274 341992511 763598950 990662830 995477036 404380336 657632333 940262751 954075690 173617605 364547065 697077192 723641979 311027500 870146583 160598906 453599098 713722353 958049458 713210680 953041221 999015491 999110219 191722368 495256783 506051484 531528867 91161994 674514772 385780915 460532569 464248352 560825568 629017941 740045924 339618938 408204282 4639350 509591606 876321732 994253888 840435524 943387204 227136285 541784642 70639609 894251299 476617071 801282280 231330036 271764821 640561874 973607723 586048686 919672388 535034247 966421106 539374790 661503662 704345435 878621527 367701283 522662560 477009926 966803903 477831969 631815571 364202561 731327348 149537069 202477326 900872515 949787765 879477368 917225101 662547060 925104777 388433387 874245612 405847305 908374255 675849724 770026489 54728997 172561743 607543859 751911549 319381758 450760047 808007019 810781447 350188418 544711611 874631546 881780781 742750436 996361418 758627598 814712286 313830611 329534865 385016218 495482855 497845138 752560187 397594779 699734402 518160145 634865644 632055088 705217474 734244902 902903837 212438513 739449957 946797263 988149769 448248292 903904089 550852369 797671245 668963867 992881308 38613272 50066167 538174217 998515197 311769018 673129370 323007100 795603278 646096214 918696660 19908828 784862405 959934647 961814898 776144778 826329959 667168324 938646983 938079453 951730850 708069088 859657832 84266263 686962405 410134805 794254987 532119102 973944007 424083326 756566549 93791410 605465629 363447768 803801695 768924465 805488786 431455600 900481033 283307859 487838431 451597353 806436366 651052631 863506038 894609628 973346986 488232397 927624154 856730038 907709735 740276649 906595032 238082870 366209022 564934668 652207592 355537910 839405515 198761238 870515968 84498512 85910154 416906940 761896854 19752800 685170026 399663413 442583707 311689719 381079159 95104729 516155802 583388875 822743665 657760810 892264779 340309305 971567339 652074718 672837931 632607211 809912333 488875093 700857815 281382457 641778268 376910656 572052677 686157568 802204287 414530666 430863901 180236921 532993578 177101433 219351929 139188610 692639047 661481743 827602097 915228524 947515147 388729513 432306220 268038056 692793060 887873744 968579190 615794827 896257985 670429888 950095077 39329363 64438705 898098713 929638517 856346974 927324688 360147729 852344471 799051373 953812326 510548991 923605636 6028214 835025688 791052009 920251436 507522138 798970254 483360165 670052250 210031480 863739093 504832615 783885104 481427564 657467821 992904210 993086188 508410948 979490391 463842959 758433746 160126918 934571028 849865056 919496183 658970807 938067365 114433362 242811802 784945507 851582750 289916752 667508873 320830627 458494026 180878611 296293886 507288432 772329862 209838357 882080176 146411047 920228380 745202675 774158403 211083887 422481168 732248226 958016386 873642876 954739160 696964063 918204437 891466659 979588358 677887084 906649155 414554347 845207172 802745592 807260438 450794887 624284478 966689903 997291439 783926332 932340999 862967377 940526510 261830496 398289292 233751928 933119851 553301994 575213380 180066817 901160903 459853461 663488155 991156310 992533608 758770071 870827343 531888752 709420447 10109227 123441850 845552059 980218580 666196324 837340005 752656685 895951601 121257745 844645662 587873160 665086433 409629139 670763517 527097936 840238136 39756183 250971200 379979308 805696603 612273846 940001884 786804683 877451421 292319819 851332683 160618766 842335924 667537235 757529980 489751114 526491440 700143246 829539756 206603944 469085565 240112986 803273267 210976892 969299933 77353160 185900482 884471135 936936305 630877923 873095165 244301592 423940269 675584955 737546328 677753342 855676920 331706551 897322076 453707317 514474238 428445348 809054430 873138114 926115614 598590751 898693041 734116923 793628549 543766822 721566488 391616591 715018705 417211813 751429108 134302097 884419968 191972505 658637984 484039062 840067570 29285911 798166729 629591561 785057399 898755232 924543576 178459362 522205754 804502595 953575220 52807102 946976914 643535464 782344969 140044134 329597071 695803556 773715845 554843327 849117583 848845103 955991261 795392953 908265721 239996649 779572536 768629040 885904758 822330597 867190140 334742528 415938983 258943411 856641581 185126129 712887022 912605873 961738979 816535562 989009315 788842941 858053845 573155755 716228612 157182027 852915415 204561188 245030423 46439729 943719669 528065809 754946790 930990191 993100908 359802788 859880433 185886542 201397061 894275709 962272954 899161139 967866790 713338271 994822534 268744357 587195984 370796299 810455287 526493722 583757508 822258975 853748474 584258219 784014085 853222775 973700429 500820938 519501747 959533122 986980866 156337840 451867245 269761722 762786611 16614045 937433610 373545845 688702233 70980811 469050061 736445808 777827140 100600102 431268094 362275119 663767478 208711518 910411571 170888345 862935414 946287341 958370553 378674 349874545 232111210 275550579 559363719 997857801 460731857 758871831 373311972 527303642 723807375 772591241 755567642 977316735 698569027 971138732 22219160 953757772 977188400 998153035 509197796 871005518 481059311 817905785 369763715 484396368 79410023 847215845 431149609 849575652 598860193 704929512 350926318 867799101 640980793 786448908 102965766 448059823 951318198 982721039 281949378 808815402 33964515 175919879 668008851 891032215 994494578 999003782 634051420 826474127 8119493 60627982 425358157 705576590 182438056 183471545 951520259 964622248 773056385 989645600 58819397 520670462 276820385 805353625 106163363 308352934 693682600 843517748 38575369 232326832 557475039 591179363 353626113 353969170 298703239 912054439 70674605 412392421 144803138 275687413 421339413 962029754 31217168 461095181 474926599 705738937 736147813 988328236 655877022 966917535 399242072 425766503 364793082 416142220 455293008 627412943 871391280 953228899 283192014 441966038 926869622 988027888 819366733 849068335 751003269 914720674 515769816 744587422 469600679 537470371 948441041 983697171 363714102 857487579 131595415 170605432 789068671 976232980 432345568 453021888 739285807 867973330 344309031 759767777 152912931 538006162 163577473 632685882 762211348 848658530 76954466 149802539 16326241 102833486 49411629 309701839 216832206 493630426 578836751 940246688 228740987 872347880 261216514 628813108 377016925 925851291 305506878 709704992 404922318 553483535 508613504 674057504 349884761 912362671 335388750 564483802 540188538 759167696 236349236 913965143 198564251 325702483 603112924 893132774 69543686 150978406 444530095 935175334 189661204 589490962 555799269 556918120 788254957 820053888 840800633 897342168 685774788 743549673 209183133 303331792 612694894 760141938 257993734 705740188 285221802 668870785 188648609 632055751 187430676 538697287 208675593 356931638 203069879 378293505 655676039 876452915 400227139 864210388 567233242 939166739 972160808 995449585 754538631 765263065 753961869 885328854 952455154 994530405 624701035 987135187 220253137 934313760 432393023 471733230 913749215 915274706 89995939 783719933 728773008 783858674 938200557 975090653 560491781 676044715 235540036 355833803 160296707 371262286 721210128 723299630 194851806 746679262 843668311 892313816 659971760 810527915 396163540 982201852 815833607 881847161 221388491 926906753 31996874 977091719 470663912 751482784 923062364 932590619 947348842 973178931 422293794 456860587 841899699 971546110 85029730 128015865 275364796 350217196 526146572 695873369 840161086 871520563 104212173 372088426 673597325 916752539 528059768 532706811 107096599 512929400 581491052 986484199 676448554 783005089 341085877 516721397 945387061 971459961 543332738 667902699 517032511 707126314 50277320 821790873 916069361 971874490 939668256 944341980 516218642 960438832 670444288 934907966 577273623 815039002 83563173 223960502 857196482 861096428 339085143 613418823 930787101 983382013 211231319 667136830 880209160 918063525 706439372 762453664 253001754 939466929 636858814 964130835 982855096 988211863 252300315 760466542 91572694 817721773 36881563 314702181 645911247 851083554 747586505 969085650 845315122 914543759 175517343 648370812 49045959 460443301 593602723 687087759 759282542 975692947 359011483 703127797 292838993 876230392 696983287 725960044 529651141 729887368 891780270 994755204 757378888 805188205 155248049 472865503 838185658 924175643 995638135 998006496 312796079 582156001 703781512 843103823 25469059 515636806 462470756 856626614 799836348 884356870 591802003 995900270 925521228 992352186 147186270 159775597 588717807 938036753 325304486 639878808 777411822 784827156 641163649 843107298 301560953 339850905 495822160 705093858 274459919 705345064 632531511 943116244 980128107 989118122 506365580 739541621 225295341 431751290 389728782 706560284 598567946 874498157 172911708 711023413 349911913 932442241 118520271 431572941 614768854 657166224 759686982 885887477 802275168 826479373 212718346 792544133 913294876 991115214 134766546 898432631 454054559 933367661 360634847 917067620 507779338 713098576 781199783 992521815 719753731 785775081 78375588 845942080 305245646 385626817 392779713 910276746 309526672 769857393 489328400 861556377 572014424 958432820 584817969 600688005 369759359 556969370 162352561 437553037 854097058 931125989 352908431 366240513 780285543 846235119 811305750 853490008 222865450 335452315 693761351 887336247 277601351 525537409 264928597 322350497 909559477 985983157 383145942 499600214 137021534 196537000 639954634 743412857 968207292 973224509 360701844 994084055 463803001 620242439 231627001 981383883 735000824 842287719 570798363 799599746 311883118 483788167 794779101 918489691 329931468 797806027 408055550 443148396 208226453 640508872 606543350 690258951 88285794 528638264 644547763 729986171 559063147 785324276 573954901 950994889 756499463 905933453 985942312 994917993 789320891 944142897 948169786 957536171 294064671 506433040 845584169 969697886 583742578 915849615 644097751 733294578 639712011 897864444 688717915 797849967 250920907 419060277 524342707 921349434 569105498 738439180 837834123 910141227 702119417 978393998 897935868 922485732 595997918 984347343 291706292 603983186 211640813 413545096 559743836 818921988 56383547 493762544 57283355 569731587 924323325 940172594 324976266 631400028 216485986 415820075 188769193 669959462 144228257 305830741 90282596 921654951 234518618 347328502 764830896 921215915 922591909 987495003 364056436 484480453 920102470 921089811 60803492 680430606 730666647 856326431 977012148 986030831 93585671 906909225 315960270 957913755 969364987 999105128 421962960 635410350 936375654 977647890 689410601 898480174 651812131 766835834 510300617 783925256 156917382 735414009 789137934 963956231 65967452 545424743 875333084 890665082 339866470 439192884 292565005 293692962 94466712 203404750 289432450 567740698 656179593 792109901 883959456 908399320 104767214 584707729 922350755 931898536 133173996 321254459 715504339 897238333 315299922 397959113 317768869 768517953 433974831 936250465 969076862 997254368 131322978 392820282 176441791 930270483 673160229 800886237 434225182 783462958 273572775 287856640 273285037 563478210 327613470 558397018 181460039 774074883 92890964 698450926 294734562 370580055 122351074 446203016 251987115 316040717 642173364 653499838 367259438 783267807 824186805 891130278 19574816 976993962 523637593 709040588 990506676 996299805 899067365 958024854 79234628 355709584 574414798 971184234 323586514 834195878 467512363 761703912 137386239 525074428 821552812 928650990 783076520 837747975 578038049 932627405 556306088 996650659 958065175 968369643 408758477 760896594 603635526 654048504 195642362 962753407 163914311 873736740 66990119 430664747 142208506 597661930 219762596 457959866 820091694 996710071 785344388 839538986 498732485 894208385 523705142 802315291 21284778 918762828 557871236 655556731 546869006 795785604 160280190 296813172 391287239 452947865 260186271 996469494 246614361 323329409 211489799 944084646 38826837 437405290 933545394 993318979 621498843 843405803 26026251 371625550 459864125 695992907 919504582 974379538 337137445 601036962 295508775 684588496 85681192 806782041 705135917 708554422 783465266 960558238 758676953 950523963 449933897 837654413 43719396 891592209 550009012 959495280 635861313 790559624 567366578 734571132 154265124 482796604 146529563 514500917 865499851 874412282 235595596 846213455 611246418 851889397 993937588 998621646 976397002 987687790 197155536 667017184 948712897 970056424 396111998 522007875 288668396 585841216 975852447 995687289 183093803 756572735 951569428 998169139 817772995 906456779 267759538 325522815 469900849 474993026 314764620 673235176 882874489 978398173 94798003 665286845 492553003 611579509 76819328 459266600 485798211 870742392 181699398 741596340 153930069 570776179 560759021 848210794 952785743 993675272 482777098 774024748 445594910 476347709 469611808 790026128 37134553 429494496 783083142 936010945 829609124 917059903 392559713 792300614 741944244 784450978 459460460 976268325 871314234 899304229 364531798 591643967 898552912 951376041 137468651 920805012 664353547 846326109 659588684 902557485 688556835 725887304 327091774 535868961 814215048 906435553 701441831 863770088 670546968 723324064 871591297 903837253 685698532 977323080 291174089 553095784 24901462 997471185 174767616 606106721 463899431 708963232 75932835 341440191 496126027 590760173 880696017 969329046 283799709 602035183 583682229 612260502 457910157 878799921 849880047 947457482 760255987 848661322 804255092 932428498 678647586 946749703 26904100 813316986 43124516 986610435 488350872 697512785 388794580 458653551 578655321 879390849 973358511 979189570 334722583 415991845 208457307 587943307 758009286 859522234 106435475 112144018 373572035 505620383 243515294 507828102 494859682 610642018 565942283 866377921 709725956 926115710 301840246 769128982 428550782 950222687 637579495 831316995 785238293 903429450 473948532 521344933 498549506 785876429 487809207 871636648 304114902 380698863 485224939 910898300 670278254 831207085 581358961 730911493 841187803 843878988 76858312 420329277 652485330 979356717 625366056 824313899 880662744 890668594 503641630 653851050 351551204 716908350 957140236 970707872 415343628 519215229 138944369 253384266 426016913 802519456 643062301 930779323 766192370 925156593 777740603 888748168 239179251 315627081 90072752 130529549 158244067 160505256 71162503 279761197 579578773 683225156 759973964 904419492 115112304 926798016 602254068 911348820 566887952 713649662 756848238 788766844 756670165 889029412 671572437 890585830 674794874 774308957 228415981 375050356 624662660 926026367 613058958 842400410 792226082 920281859 44049596 644206824 460853889 771684101 521498610 794790670 805612046 829778284 890746624 971525005 473005573 610634003 55947499 174465332 638207635 693704451 35397819 196897230 763624524 931349035 546948995 970089440 22730602 166884941 194731188 798542130 397709030 569531819 226903487 616989429 869108521 936802784 226866268 801472702 888939941 934873086 432252290 709832182 857450092 970717291 689952949 861225568 177820607 978751317 600707982 654917345 852423439 985471903 661929984 921687085 568211407 960364935 424538498 855839046 938599148 951121608 409148514 896112682 38993508 314471813 65527778 781646274 6181863 732139302 563378471 906581054 778542061 892520962 560852212 923750897 589519239 968841447 92870157 795025678 373270922 404770265 130402578 881008616 140231922 393743336 645436204 890636053 552037763 979791089 972944453 991673067 232130769 515660180 470168718 940030273 453682815 785452017 962145998 987196215 218952206 534023536 174927315 957630776 666413214 670994793 658749873 884268405 750597561 904796695 187805147 754817052 653856972 927898952 505665980 571019573 112953895 359132451 722136855 909508120 310107502 510578974 750277256 805783972 980125661 984963020 121231668 159613824 147827236 496180057 968259174 976518381 158724578 835313334 265907715 995067096 340087389 371154955 197225881 375139494 254090753 663020194 199445135 577593821 297309203 789070619 348109538 723898624 458763806 546571546 767455725 910411463 378206731 656233824 971769823 995192282 616441340 986818756 991594329 992534411 637711332 683354049 235482364 595662078 889771177 970229729 834012280 928952362 974867756 991362195 245973272 941935741 464171179 466586540 384016971 783347963 22103001 574157309 54846852 90931142 331014816 472253462 311544117 459456003 35144494 460346517 33095869 705671398 378180212 450708407 73775707 358730020 35541858 465134142 120079626 508032259 848485745 868849276 702066572 788780699 2530115 995072629 589931492 709731968 350319472 455051600 290061412 502788629 719447105 847832844 380256209 972363074 839681627 994775178 254105062 899740101 191064722 386027338 919835315 958711516 580511036 628643450 603204373 684592297 489321800 848660436 580450513 985317095 323050486 410632981 94542041 432205367 928627541 979631122 180806890 185802975 895510006 938008513 372103712 672984784 419865456 754598964 470776339 488210723 143247161 387734343 126338423 643042065 31760931 680237102 764206705 807833463 274804895 318363757 372808093 449404376 828364994 949145947 78198661 908490498 232763534 832863621 537259254 662065951 505838205 548117854 979107655 988082795 859963784 938474826 178790944 370458356 679861573 970646952 110900536 945361711 514255316 814175983 746282887 896033023 75345257 802192659 896631332 918367339 813442221 958000847 542627468 598107619 967513878 999041023 194871026 915696715 619513317 705429042 406048416 959889393 75596435 767788989 464360838 875381258 784497154 887424278 262053896 860923701 521189211 994093770 525332821 950295000 880488045 925537114 990142499 998017789 663673982 982908981 317768586 564651388 802037865 868456817 21944696 554707885 957475157 966389418 122493216 964547743 314130842 656457651 209188648 462554969 996484983 997251662 235708071 507380696 824289153 836685020 328109846 770291599 211872475 286755808 373180034 526478626 45660002 775905558 53936976 342339121 353645558 475405783 30117722 758674546 784494674 822949464 37783702 831034849 34012609 944239933 778159253 942270999 697124568 836636898 257441640 762284671 307207404 773110101 444357741 565457484 135936625 922328097 134800315 495892023 690843292 740512423 46652382 590930964 822308343 898899583 984545918 991384751 910195631 955848565 253582633 378868899 229142598 356137672 568523720 734352020 970681274 984206588 188146178 586125976 768994455 984216779 37276829 309155233 987210543 989636882 881882660 917021433 901052631 915285400 716043752 922070428 32273919 544634795 175839362 700041324 935981120 982076185 940395081 965082713 687759031 876550235 241968199 246180056 753603707 961159265 294860016 677486908 287017759 703443616 734067971 897175396 901799072 937833385 596068733 711843648 992714812 995724872 635775750 873759205 500328856 555371795 496153091 944662752 354954825 710567940 501119848 972769443 143113222 613747678 460091249 776518659 248378924 898670528 901614307 962380928 928148909 948677380 760004 150501970 610237886 891150547 572348954 858297221 6375730 584092153 868613802 942090446 735778990 958670715 529653712 848368594 953465204 989552466 611978433 690690548 985750417 987159768 964865856 974366690 307999339 683484518 518381239 565942062 569945345 794649262 133805975 555269926 586397064 622089509 739790838 749584859 304710387 438128654 547982143 604352781 313881669 746329298 170881498 558818656 946968389 968517383 397902790 769094461 442866290 622037346 231057744 431183367 309882501 331972919 952119945 953777868 311893677 537979257 724141842 785465347 791849061 857502608 2278399 982162239 200085239 978951469 27698605 890048477 755161959 766732648 468026908 588422702 994715592 995492065 67970941 451956692 24114507 70158440 784711347 836716811 938736787 984430533 947116284 970066891 561322942 610969537 407321661 727259407 507610878 885541514 276476122 795221374 732819993 761284515 90207751 973142773 45899611 811814263 174230850 714018009 885341686 966722722 336041425 989829133 339825369 504827683 65374961 773298266 709574229 796606369 913326289 921944091 78420381 200682719 117530890 527502525 336854530 369273790 550108297 954396435 346732558 884887319 521277172 621165619 722303836 899475935 247514638 550164644 252771307 720877421 614770557 989030044 499330541 689820000 8396476 223797447 504405400 576780305 794818277 990131734 670263253 881265631 594579177 862588099 200796232 406858153 772475945 993422289 676166536 754280552 846824387 919244366 721335285 941973205 227073020 316397841 225846534 346538470 960596383 966892044 249660978 589171800 501677667 735136287 842896750 856092352 849605761 908373859 646616899 801803775 395247717 852105997 540711387 545307331 912003802 914463198 773382450 785070575 63552421 721738181 234466597 937138973 123109900 468230888 364963019 815031131 342314563 523869141 847283737 897143775 396835108 457255491 897994992 951579365 63819056 399106401 271802506 974834830 552625925 894836623 193556158 809676225 306569921 914273218 361124326 484969457 468284305 856715923 595656200 605080073 757579336 955276397 824432426 900089192 129891804 398113569 283646309 288129846 548989469 588435690 548936696 894380652 6196795 17938836 604564936 707599889 775958198 984795301 289941028 977236345 975780794 980638505 61620479 670922155 856227190 930692207 296977974 740351436 542340475 884087430 203185753 215232897 808417711 986538418 74538013 93602979 893558769 949097615 939811245 960893507 487211382 738210461 525708719 546740657 152187771 681531544 300498003 623032762 192208137 549725166 740725427 953420638 876977591 891820639 353674415 702547985 561446479 817157575 707011904 912063908 357098465 528842788 41340170 89402271 716899600 809209120 170573324 913185864 711710862 887254288 490370828 520552958 484454423 517831420 586524567 691517020 29485124 466372708 191947685 599785211 580464684 661853856 797285495 835702132 785660426 800522121 880491465 934082315 277603194 859686134 578712715 941554719 343371254 587205948 168576278 944794032 880719595 931270199 280650539 301694196 861172621 983268804 838048288 888974038 458404784 751463712 144088557 567119220 632541086 850845624 687665193 870097706 734002849 760393864 582218357 701930720 17783371 468381991 870334108 934365015 452787047 715058784 591455607 802751190 912566031 979901577 44058179 880321465 545264175 800714665 42072542 519011217 12662422 190748734 656340869 709499139 243842955 467464496 75872123 736168070 134136048 615259441 663581708 866725241 695389233 937269720 633270931 926252881 30031041 126076416 969632781 984024734 886630583 960563184 567180563 660247195 332931783 333487759 74634865 833217728 594600796 919500453 610977298 995385982 707142750 777643059 636873892 993903346 296079474 898387099 924723303 988297870 141770901 660216309 941748224 946044533 210230452 880738325 495371896 504319585 180200912 753212562 193995001 821404311 978232049 996171968 683934597 862137600 833526432 858534116 658451685 918333869 288356525 646799797 177920607 907821094 350854094 462521056 637126679 767547592 254151636 754117033 363205706 725942401 264278009 899481236 97858972 457754432 256452208 773624094 466370241 775745937 318335660 950207514 589553994 853469194 697535346 779022809 841383962 927541580 495694127 886412748 760197373 778023709 979710307 981884461 866497036 909033179 606771799 907268182 416364822 957560471 704737946 814363903 884348512 948338262 451471907 711934850 576090179 942297428 953539707 991394129 645266178 733946416 506028255 990420791 790191270 973800025 313872988 385631877 488695754 983783467 285605688 887622238 346224663 675967658 251378456 985217010 650033992 874610704 757335436 874689391 662930350 905280361 838940276 894053144 754942698 940885731 849181304 855257766 136688703 407071916 113664468 802488715 430439107 992432260 532497307 710219953 558479997 986743065 138990905 754133784 76727992 451478609 992130376 996562591 620700543 759399243 861484927 883393611 43972892 911370969 225829648 826084757 849788804 917347005 54583123 593533612 267284510 305437338 41721286 828035935 65488853 687099015 39632830 73412949 627476604 966097709 139159216 990255609 428183521 765244850 260990002 953544194 655807328 987487213 133372948 238328949 828179916 959544879 716267367 931397015 303516953 694966739 424650609 768304238 829187747 987707786 853685437 997565260 368239457 456389948 847315087 883676512 694414126 958093848 937632891 952327860 794512489 858523631 109042893 885088717 15797865 919880748 620126180 796059014 283554226 898839237 317948102 852038781 486612073 532906924 555119214 877892951 356747116 461784668 85881919 130406402 257559868 421795907 44904401 90106734 565947031 761928494 908664931 910740886 137333380 301416710 605484828 740442872 922242349 986051462 665411641 837185831 413484456 977549928 317384710 856260266 541023886 951204590 109098679 717164976 280924075 946142364 574802183 679868261 879146930 886501614 993532650 997455154 29790733 638464749 281817793 465565342 651551066 723329284 387238810 404670393 931022890 959836833 722986338 947857428 364615633 770180365 944674981 956315110 945557700 977840166 398397600 706958846 618657832 751121314 788793459 830813908 636004286 693210983 585266277 589642305 567661881 930515611 569774712 955499343 545985614 845240626 542984644 707666348 36883008 41605536 372873851 790929663 983147827 985340724 735402209 766295773 335508847 928966490 278948101 330595423 530068276 590157173 914426587 988987140 81710489 287899522 418782921 468869451 433458862 865360628 526177525 788354334 752715440 955766879 702800475 717744172 808696052 915529017 856282559 919546638 935722395 945170842 904763685 926398829 632464244 833034425 551268456 586459838 74772151 683092098 554919738 980642853 99826952 458439551 801021546 816998121 826960071 960441346 9166942 846992221 31633960 663537767 977849217 982499022 743044989 929224912 555218079 735934152 345355332 677557682 951806665 962071627 660326767 988404322 748256674 947684002 726571650 886006641 988466385 995833326 559632197 603291741 907457605 939171200 239181418 651193381 165340150 807568502 640651004 864534436 389813298 567637292 37028278 495182331 813037761 864252158 35600133 299685892 73660463 498530232 600227062 707501041 574937197 838787017 241712833 939365548 603856370 932926670 163989385 634227392 18906729 597498760 300653207 376179237 659981103 813860151 602861931 876247353 611335074 934263606 427504278 470806957 950882350 997726239 962927670 967882293 359445182 771780698 910636975 978228835 525364116 630771361 645737085 795004758 826080736 990178846 566891284 821350925 156735846 341038820 827976616 897811924 514075018 771167951 908545360 961776245 138344650 361841449 90246849 169722135 890385617 954699041 858136350 955703016 690542600 737652157 627486328 880737894 987171768 995573919 610481504 991910571 360207570 385261223 491483587 877255297 671052510 887054883 871442620 931632503 482105836 790910845 408561487 482364299 139347664 624473244 548122831 673776109 552715246 833032429 551381801 745614711 289817822 731170023 463070457 680231286 894956365 916626439 468182978 848527602 693378710 784826335 445734981 594201196 78257704 923683917 126213738 783448464 893829430 984857892 36567180 952927583 268522863 533842193 764088094 767765927 465031562 858962378 478032940 729302180 256607375 840962945 193301941 618415647 282353845 837132129 534596851 548743680 732555235 985607912 638708743 705313259 836748272 889742726 243823665 332343566 935590579 973974531 165977264 438296523 356109716 578974413 617009842 635305297 40863395 117637944 900935202 967370971 891360149 944869384 224990486 562954614 245753463 454463888 582026649 949661022 608182150 662533712 159900040 276277971 677660273 731660222 415061706 654840788 120520724 704805455 633383742 969945317 984600458 990076560 228437539 328344380 791500002 818242957 381228206 772324220 62560059 833735832 546077467 847774805 624922632 660104317 548997340 615145375 719189784 778682642 252598788 789600846 285521227 738293061 436643430 818658306 460026592 925118321 645371959 973959613 727521784 823540587 958679705 987542482 779583403 863719995 644513873 809689840 317689514 695226159 727321097 976159501 716210191 869318441 770689461 979051763 871111473 914858575 55937389 193233898 953945924 990162321 395785525 574892255 345573962 896427097 246261049 552822839 256072567 958278508 379652755 807229647 798693275 923022182 890438312 900852632 497804933 500273461 587822507 873901514 160436517 482080433 465976606 994610837 510808280 929954865 218792351 405474205 687594772 892694937 622503295 860840962 581064754 864760331 460603337 805229205 482541872 788157714 254558023 371609131 566234139 748957690 834675692 979403043 403032171 696215255 993325039 997062265 608516179 641343442 130646497 891077378 417123810 561089237 968682460 969447000 992274593 992691926 165499103 660652216 906645669 929657317 271621080 360246973 403317689 607209331 647951907 729198250 192163481 561821489 947627833 972658147 170656144 716399517 162767822 212861273 567258133 920964831 621607891 938343652 171523333 719954069 473124880 796024760 339877524 377558837 596657419 980257338 322530746 420013575 651775467 904238383 2584552 60006019 197956121 338349064 926981252 963175845 832037266 926887667 212732463 998439469 22217858 320836215 419544826 929545530 333972511 758327741 78046668 308134015 18936612 890809648 169277248 787877803 670907855 707308899 791609279 986659459 16615784 163871867 108579370 160515587 750735799 789792099 825758769 905649199 824031886 832785115 506457937 584980966 192800811 937808063 382943431 387892380 389622800 568829515 70059682 88612172 544239901 959010652 45407018 527907138 865868698 942155173 845044299 880789236 269344461 751065560 761958142 970409043 768757319 964364438 992366155 994768174 228811638 509452729 33369872 940740071 881336051 924013871 17222345 743356225 685563669 804167280 906335700 967443689 37463873 586499081 934287203 993368161 993401451 994852406 425518242 753468340 641599038 649306771 19612532 178426988 52384599 975583373 593188551 637789341 502244187 778528237 450800302 737074058 583788220 738973109 269733091 924662576 510519208 938336569 996428113 999069028 832468374 955901477 47023987 439989179 407388694 974978786 908902711 942976442 381567243 481052844 603445231 643230225 401527757 679125446 371255461 798128982 385611171 623698492 532302833 872778985 759988101 947011594 531299792 831376539 850498696 966651075 857631718 874696132 589272333 781843094 455576652 667220474 206640681 785379075 470789146 702648432 460034308 986141023 650669004 984500091 316136478 531455977 15370660 524376115 995210041 996122819 441237305 598602233 75537448 683854419 528344130 746893947 563082709 931563275 969132853 986374554 213424822 929411455 542424760 965556344 167736138 612722751 957210254 987726729 764496498 959219279 46255682 725315622 880419814 975942872 184886638 392648557 427179738 939278191 227999212 279297514 271931605 653863116 16566235 126144252 335053915 707294112 528641299 864842053 351833662 623818604 993382673 995759517 531957693 999333382 10735471 685355125 981195533 986995923 342756422 725822133 965855765 983223709 522084104 657091724 356543903 833656859 801506270 833076654 591589651 772983047 833971922 865846579 422039754 556925456 789979200 991845258 964051175 998085047 261670686 948465442 111233767 309943169 21187731 676169388 805898177 939706534 76211331 955813683 170112000 954334889 134935476 175764602 713749068 936490151 845045816 926519698 926104858 996556382 991251218 997934907 570584103 925176544 580233825 805147203 576831468 673601415 364877434 944800490 329801474 368083621 443757995 757393955 618027373 744025231 802745363 966928616 860588778 996506316 392439736 749814354 507136418 874998160 786188953 836369850 601464927 642897337 872190247 877337506 155707073 617182761 582979289 972873901 169925197 236682100 411248806 532174770 244745200 920975328 682362425 865114598 356172300 621938703 514020893 527085183 634155299 969721508 14287045 187137148 389471317 701174978 123040846 505887201 536537150 738199131 147240128 592335658 428940296 730155712 746842772 867660826 570660511 652250696 30820225 594825281 801254881 874949621 119024019 746188333 651771699 889707701 817914499 936465676 38523617 165574540 642777288 827449895 439759293 720413721 518589833 543901921 172429648 899178671 896293409 988982785 116951123 840006101 985458128 989563808 713426760 941869420 650094818 953754037 982829895 984668541 26325654 537082737 351494907 625122747 593741404 881066520 804203749 925922833 590321952 876760860 271443870 480391639 243479999 539130916 698447163 961423695 680863067 844909581 178416134 280215435 418542692 869563119 728118309 998149399 372242548 703266622 448801598 700635716 413406640 970754911 543653484 558487010 395156434 549604402 758603332 878584338 272094650 980022780 230560266 468861045 462442508 557092249 874728123 947105090 155722085 498523678 544395082 630145688 245943305 272297254 598263463 811598579 49349523 937932708 141884782 673755122 678184902 778693961 839721734 884072420 169325333 237207756 932471178 983223539 918003004 995377335 667827636 963006297 560029430 783543597 698883040 762381399 427353848 529377386 376125728 474118746 551740914 587514112 342545209 569093941 144069844 511629934 402820840 606998471 753754569 887105586 627807923 834724007 342760701 846723653 464192372 942993905 368646063 996170654 450669053 508789760 348106916 504000395 352891567 426791996 228497430 235827514 792509626 793945166 586046 520015581 289189535 300434702 705192889 847056222 649888079 766505653 740724249 937168659 947385911 958332679 853844005 902474120 341198408 587574330 805336297 849172612 489785602 569213292 592809110 651082023 546890993 783695449 505358597 756234231 611518746 833485493 483300415 686229864 181687993 996954584 412048340 735761496 474168026 560509183 99102218 668854250 740024495 935896840 810356767 971981651 581695719 595632882 383871354 721387439 531585659 638488357 709611445 938369113 500752993 822993971 132377757 217006388 632782687 761920778 779450288 810625359 350728462 832156739 519104996 809222380 993332780 995152858 375776130 993428091 108111743 852690339 487234931 843410241 163317066 839716800 256888940 742646420 63105384 376063389 140633168 805227989 201265040 408780633 637773893 850502170 185549942 320720134 975842810 982358983 135280827 918281666 551941979 711561251 793886827 797686061 438375851 493752747 426915788 552620359 7969499 721398701 436772480 619735747 174103204 248596249 55382695 461788730 628128245 803196736 769601306 796725566 652935164 997535847 144771959 144932503 990014713 992786197 480501561 502552329 190844516 722102653 425617677 682299721 373418780 442688577 189688430 939301285 772529453 967692657 320765322 555125162 290233348 539662712 232495015 866594328 810583822 996803592 524859836 976260654 203969363 873357948 184700848 640392336 330182599 673474953 944839561 975976814 953944038 969238011 613279906 901942510 834911807 940200579 566389894 965935397 978678015 983485457 696862905 796481646 344093729 695577547 631828756 913855881 237897842 912697321 814160522 980128136 207513065 315686196 423714059 962901828 934874877 945981645 453013628 555796701 302815658 548626454 660938646 967973768 167893990 659356099 536451363 874725470 768842113 828628369 49951926 689311535 474686769 851894306 477113184 895504612 821728645 829075748 579421311 742195198 948745431 985015129 575106206 575421855 187436560 687732971 577582578 937207053 472017314 916952010 408400788 682265156 912169525 963299258 263626941 895903689 878808878 953359330 495646939 540121669 182831313 996783313 555948256 660365195 689620714 883484272 331355585 690243916 970453868 989068032 735058311 885469454 492453649 858209132 944228345 982049114 615975038 755484836 966094528 982803782 332660051 901660509 661798277 806195368 439103947 816979252 412754021 435323888 752466906 782139087 973848987 988568639 899797455 988566336 995188250 995985236 361801457 770365041 975382951 985516475 3351487 979754608 156228696 201556120 594412359 781764834 305462665 566167945 315806111 593526034 783969180 964507304 251971684 436333847 458712896 841865872 560674481 775527558 361679582 856577450 734754645 860574201 595961029 612837111 178079231 575886369 156927995 721517980 227694962 271150719 231873172 510050601 853825867 872479037 357995425 684078344 27716569 287447027 165299813 238251445 610342219 852505157 630268000 863965043 150406553 729880788 703283808 723695477 269579306 843027795 644109356 974064855 295945730 666109351 802881181 970991518 840843739 907848024 178486548 862987858 688302622 841822324 761288746 785417049 627763365 980513149 371087928 734576986 965825421 992942824 332978366 850099554 513222959 876010046 665586492 814424787 237859875 284397814 578242725 677298919 212824368 914986873 20978073 673442959 361662234 539202186 85272078 435932192 682634046 876407520 680294530 847300876 835036533 956406068 18073446 854947718 294856869 448015416 696270347 858853345 805374091 845142019 877910645 903805482 172291416 950215258 701825827 866878670 87708663 326754078 630499928 652599931 282084834 366012154 243338815 318710589 260838001 448691084 248184640 480633157 860556605 863453315 181390057 214057649 712915628 895808213 62933951 614551135 304431214 404957460 298069035 627315158 545715309 804487132 119789935 310737284 620665616 754390195 371657062 725594898 486952117 928165950 514238861 732821787 848998403 964166966 638161785 668250936 884696911 891218770 822339304 984334151 42147640 407647452 526161873 646403719 459683783 650153631 992558304 995659523 234539156 787482727 930130707 947688620 963941364 971532272 426947689 450201913 819028084 981839976 190317058 598143363 315287086 469646351 858422284 923165045 991642360 998940293 722141265 992256232 838495082 842448860 769206244 833829983 314653751 587872461 904482372 921596432 333253111 812905555 170443049 388204259 465023243 954671863 524128179 744328907 939816252 982316194 147770641 370056965 136153731 675945836 332189150 549705749 858109039 949399387 941835460 984801041 611570652 652362330 4546665 508267965 975241671 979099384 588665848 700203199 823342415 995142888 218787007 646722397 151284529 788454111 777366849 944014973 847827574 854758881 48914612 478295667 677958965 916690913 497534528 946632208 461332412 975926619 352604523 508926389 983920607 984659274 202265395 962271916 44026423 509701408 759743478 793385873 268741797 408570737 625331281 958787518 304813123 901788115 616848490 687013070 502696795 765557268 850059064 938867033 532617689 693047177 569121462 977463312 636978291 981572248 607622679 725712685 142778620 595433800 335341241 803168561 275126682 696231583 408133621 572781445 308810709 721519960 380137242 674337070 512624923 929686016 242917783 406129651 265428348 362250487 902873177 982680450 723663827 958831665 787954436 994430002 564975121 799629586 93040323 136944561 532145971 543175382 385556584 904257765 647288489 728253997 889988065 988589247 290048394 488688363 802986247 899405938 603435611 940349045 850557831 889613242 838031859 890118946 427227556 448242530 586402894 736058161 436324311 509308369 259956817 786396671 913733745 985462896 24776960 442819286 549496847 942419094 587625669 808240058 558821899 931518150 299379745 914033993 250806760 342997014 512132385 743783965 878910980 897210194 760118896 796035839 895209879 986518374 433524755 672829496 648017393 972874971 482302226 764760137 453851689 497979752 890427885 937186503 54944109 833358317 2185960 158443342 126953369 991651561 279944134 644944901 882008596 993579829 511325303 580839163 570551306 634413668 256877541 996124196 596551445 955943552 698894775 791616984 558543762 670356806 86629326 717041693 499851369 598492460 941649895 943230027 682451760 967616353 684113197 914072126 570804103 915859009 267451159 699437866 71576721 274573351 371955726 615021742 814435775 900784578 403582939 795766371 564737712 768933578 599568246 871878772 407671911 742506661 22537482 452928615 453039564 740537633 884243543 992230497 844729514 846020179 895922264 936325206 333829712 875951996 855129934 911587588 344849602 930779416 160913954 971985493 875236180 948078917 868169941 932101896 211864618 473675988 364859890 695698515 419328090 862345565 458094582 508427218 538109720 625846586 231806234 717569709 818569267 889708295 298849365 913151767 152702722 582716774 235787460 981182179 234002310 496958545 144347322 154690487 942992449 983746274 229676284 699889520 904218709 918342238 151703605 781892092 893764206 971126403 532648179 845698625 666057915 700232752 230591857 801989807 312841215 677975056 129962067 171744905 34728891 486329219 125299031 743818509 952103280 983873594 299513630 816592681 61433016 626171738 869992536 918482382 34483631 746760294 349060020 887171940 264966331 389456403 243245028 844258752 267767598 501248616 92197198 935798401 799934332 837038243 788825112 870658586 358339210 861460785 596356209 950802524 167249038 921792170 479766656 847089660 535518174 603013044 138520034 927969000 1794113 87603395 3287983 155529900 600411889 979880014 509304593 692201158 733549849 805236238 392698193 505675702 505854968 965396961 75782328 806435266 424080800 870345344 129761107 963777445 530673006 860557812 143527990 242906058 490774279 740727180 535175896 825722882 172360504 655566550 611732676 850493748 920686929 993244968 530664923 996026870 877396972 993029630 469527557 711086223 531138826 976559696 318646638 390706125 429602011 563877626 877179353 906334188 753795550 788697259 287948623 320853945 771259912 782609919 174263446 532440769 158387538 196428221 801619785 927185012 595239198 874582008 33580833 562365282 660205134 956612143 759386838 868580120 94279653 458919904 779045674 841366934 200214407 646793783 589108177 897846570 454397940 816119961 646775816 687349956 592705957 706135590 166113860 898126714 357473842 768711360 289676854 832249379 924680064 997892344 986593872 992231441 72633864 388658570 895990677 999094035 542770599 756286333 199202003 301839127 868633499 912985532 478491982 713508733 675219904 739752542 232214604 964406894 713162514 956402854 924787119 990959451 228421198 381626805 473533231 508189744 769219354 877770705 15450842 527724672 394412586 688850361 312544339 534039988 184776375 957082470 47259776 179109775 481653543 675073298 101557981 882584648 211949811 808738605 345475146 546469196 741477480 775930932 72983782 339598221 503021331 611737360 789524767 991903258 242889745 775021262 174770754 893542845 957939377 995601108 967068157 971205922 314413402 874269928 688599845 985364898 955451339 979864967 969365071 990405251 517551144 978996981 908327921 966555521 891743033 986524741 691103297 827927595 930437622 989863454 559253676 921988717 886519134 987258095 149748441 270518517 836767270 944362488 525773368 745911890 964369871 990128727 164314924 642841050 746591688 780634756 899274333 989002092 434707550 852595015 251491026 766127108 246701302 442260458 585108451 765198830 54166078 515286306 458722545 489731500 466449860 902300069 765861593 834059786 293395024 565074704 441835932 620626734 463873999 748499151 308339013 709007690 443393713 785039281 796009168 968647698 261079864 768547828 353025772 410275773 180543853 472449266 153342262 854576329 477419603 665223112 84352148 872333867 873333105 989849091 705338662 929485529 430781870 890554520 167247548 425115499 576122052 700885532 21807621 235391050 228651165 572562760 541966817 771725077 633985489 700978742 94137231 307209519 984351776 999330198 298347438 958313163 915357665 980271987 965484913 972315269 422985282 425678534 12992091 594923771 16494587 995444379 521839057 711588998 621745554 904088930 483867085 602924758 565572473 578784077 490653825 914848345 995321550 996314905 700677202 743889921 701403491 730219699 84547568 821414564 169849488 448313812 543301345 743527098 408483360 433806490 899073704 980378181 980613245 989602976 143731363 386073565 259856221 311942507 563684702 968904522 794603125 987375036 912912461 972398401 520501871 789307403 228300060 734685936 897828672 922368450 105791694 291408816 495114613 595540932 843590786 905398190 121978161 601936597 558902284 947794150 604418020 938162960 477824221 825880845 260878787 310185129 110877710 747081413 845609285 862978606 169454805 406033702 908186015 989963095 346657574 969005089 475697825 743878197 873349039 974508994 494902666 779141350 133929099 925341304 71445989 103900587 713972291 830272818 6755870 486416453 791272465 877785465 774723849 957548998 247305673 650733712 749356995 817708542 11069102 660969533 867203323 980794607 664227304 705215785 838838937 991201953 975442012 998420239 524344639 906799713 99843572 329852959 948974340 998281584 596520099 943916468 232919456 715777167 930272511 969632154 267597638 730098698 273182860 510981038 9883557 780268257 824510479 932276441 754671297 785322268 328672754 738812742 718302797 720926045 94584065 457632430 620773368 643248090 348240314 882773407 61221126 806474842 613704469 763903284 513439256 750934057 321311279 781153570 615918543 897497317 489644339 939837630 553815036 690961500 14456073 359173323 447364328 640306936 175820315 677711200 599497216 653462791 768682042 810964908 116028564 251678931 831974080 924796096 904517600 951161403 605340984 611201426 798255267 981501410 515187081 895552281 908889015 940822818 491571604 511977946 593901886 634464434 997743456 998913926 141268221 305375247 308970142 919741815 114014814 541401805 338502295 570262656 629047134 784157875 350731084 919418512 659987229 991348989 402100727 786064111 427728006 986336101 335448519 456609702 47041090 140225152 101621889 375121263 113483178 530433415 953625684 981640451 154808645 529941159 222005930 245368010 800472305 815236297 541684466 705116149 548919814 874510826 482698229 985350460 110234023 374013154 388735757 447017690 731663357 916988796 759492476 860521483 987499575 988392036 313318281 608351910 215831950 711727066 513404720 736945644 854859619 856355538 588541473 618219762 346221423 799802244 757771894 830389889 596921941 884385237 522739489 808106606 20358714 197554417 930560062 954280992 706802542 863648032 405154423 693345807 601236789 703396249 20911725 343285206 229884509 333916382 766661782 800474706 982084392 997998078 275029866 343365726 125164390 265556258 932355244 936522634 680821997 891422680 393293512 923436190 269009435 286280968 288245985 733311910 212618410 692544241 642537367 939989748 484024828 920194552 409594757 657933509 921584125 979764084 556196784 666804009 921822626 972315456 411429805 660462846 800853427 812294874 856155973 867276102 154441254 959871773 967261875 984184208 98420587 947565986 404542683 622514982 556250818 716385502 972756966 986213988 336932419 347997181 780189925 855570120 529488517 697393484 723106775 724590639 180759123 964554422 89919086 927729376 323873842 788604704 35236723 202649421 870078221 917262236 212059245 272839786 52999433 705709804 593455541 732641302 173794058 636977079 579098914 751565794 314459775 821204777 709448749 822348780 388956145 931429567 928208010 974094988 151327527 647236874 149933928 740554899 263337655 906932324 843021088 848953025 793060155 978594373 529242955 596551403 222295921 904155314 505699061 620080307 288744574 744210634 633930536 644758844 314122780 716766800 201616860 739072912 719006210 742360138 105349820 819489758 300522343 822512810 648657631 701632714 51175634 860498902 377182154 743345254 478068649 831832844 921317839 969563159 905614270 937688277 899055280 995435884 548011729 743880782 714092602 832596065 357287363 838542088 963409079 979518334 211324155 326693367 577467489 681978089 201971173 697209374 883703230 961128407 386240108 897879383 19597904 427750323 128399019 302637150 704443956 796198620 31543014 560190589 494018142 899011730 467005422 628964728 489264507 648075731 561386502 680612110 780387722 915624717 555023848 957610925 95413580 217620290 600586749 661737684 234093102 965254814 350082588 783856495 838666728 900877070 931804742 991350437 260094045 611527687 59880119 243915409 507514313 843221451 105303428 295804916 503026822 734125853 224723064 401009994 404223562 823151473 311256264 782687790 168134205 404365387 836646230 972327263 511541947 550096666 908594484 979786461 281121391 971429342 436801787 497119021 759188484 824496211 965551537 966841004 957051685 999106318 728301057 995083632 57892620 99785428 766827893 803767180 190577223 857923921 261029979 674432841 929261629 931839347 926439057 994889023 707061025 968549562 573959803 950458243 978224244 985874249 90766596 914387718 430448206 886029687 23747130 487933434 440344715 918431498 939776062 977495116 309057099 590780380 206543979 328563976 78552061 536188787 181129743 718598684 744845452 943449507 615488493 668051933 887594063 920469861 645477194 671272031 420516237 968291988 682643460 767741028 627993949 959840129 859626773 933287713 307395064 775345634 974776749 984880932 293043399 626516435 680174658 921725920 764229360 968834948 100553749 292076539 429518523 755063712 213608806 786147874 214835438 502204458 380241915 392335961 502118869 584650698 103673019 418085490 251844713 956135513 824173208 926049218 130632783 710194709 149582757 314329175 246654029 695825576 218680397 958377162 957397476 959557584 100312018 348087345 217009244 287759135 5657267 580355876 635533817 943737364 355296316 658140773 341768475 848649407 459985167 732626530 568569989 881837811 190653075 955221196 871347246 946841014 307329120 636047086 768765840 981457650 413315252 646245248 216628031 679110257 87859329 486477647 563317287 748730512 257082885 419504412 43487779 756442346 388125422 973659922 752365687 945439827 52241771 679716891 601655660 843069719 697525919 706033711 122959105 465177678 945600261 977811189 155179024 826498386 216750962 479413155 715442921 900950514 394662909 419339127 468251143 883643771 509035850 734974793 728564020 987557919 496189188 628808786 900910263 921676228 176589011 965888306 673580143 739394399 270858505 529375857 470506943 945962123 744844861 959310277 452095870 469784863 881436904 939823595 185142044 336691147 501255125 681840231 223655422 374464846 162323686 225203098 47556846 698345053 491257951 807498739 298409983 549441458 798232357 804795081 203166911 312667726 581958701 634989230 196422414 792386518 860106000 997283741 487438382 724118887 328564616 925132838 830716252 880250442 337933147 400754702 783179466 853683055 595614263 696385391 884118866 955732301 150319476 773334316 576432306 814995128 992630202 995957928 516717841 865896349 501107137 524319805 113999429 525898585 129769912 767260597 143895447 233616308 287227050 731867394 517825145 641709844 356784697 600593475 16311333 768955500 172633266 820391996 481770919 686019900 48425882 696647622 342050198 878642770 273721723 463748941 141033894 721546398 58377150 434743237 23982273 902693114 738995151 872846371 291606798 469097922 135751436 948337740 350040187 846856407 122045352 956681133 809884029 908823376 302491121 611173283 165283242 897105269 378512669 976614513 245177064 287528580 73939803 923202150 517357739 542881140 11157419 979752579 868671823 890404656 801528197 812457259 560798380 807365941 526285854 759304087 94880124 286436171 467201338 949767645 878910094 992610069 655232955 946195179 854784531 897347932 928114524 942344683 436600838 721257305 37247001 63822689 316903342 420634961 863970860 954594797 443036124 638558810 987832348 994527383 848507091 980298660 616900135 876233381 966871811 974808398 251300578 465498386 821226618 963683828 950065963 995832185 142368932 253175133 397643081 817091336 877541100 930891936 428299921 827596090 669099356 700797630 692333726 796074081 659484308 772930271 449805520 682063538 762118311 894230369 292059144 510544810 84683888 349513669 913513607 952262849 911046743 967894754 798934201 873213485 867553479 955768746 710435331 902529987 499524847 604767285 868106913 949852433 667265938 905172287 867390177 906032663 297883527 901849469 543763853 600098312 357842325 575156736 451573975 942332986 697236413 698344152 231376844 681887632 443023040 463664462 724483873 905921054 32489215 605657053 542180252 867183179 505205755 685094649 938025034 996385760 88176437 797777590 364366563 590131248 203533685 906528170 66759839 208981712 793807773 877329393 501270971 832250980 845473561 951691870 515949229 823952188 121341345 393103420 654031536 787746186 536271544 712764694 917560925 970992273 318711190 508198199 594416045 710615844 617912524 698519007 502108413 954421721 485222293 526782619 219592477 891350653 662844917 761864846 590020338 856262919 740492538 818598123 339971300 387816899 258060899 790074161 584583799 629004590 553206082 553702193 648926077 842626021 732903927 868848228 124832078 545822516 881561937 911733093 377229786 951417662 204564768 645263388 961505588 990321912 160333707 792150896 465519301 831322556 86078031 106346338 423597860 444272297 8096529 959885096 186440124 699488080 823821035 956988235 580924449 830745478 907136155 968240960 115110676 298875801 678263306 702831604 608192243 821153652 601899827 936989348 293299656 881463524 455599951 654223651 145116844 234909908 501087971 836357528 995236382 998390161 250843605 724019194 504774916 758699446 539327753 907120311 273246567 530953670 81346668 212041261 843287252 864120414 254550501 750960569 696044985 947861973 547239617 733358264 189353814 214927253 594227373 722349839 220276319 989559572 187268891 631346150 298527333 884050828 582810012 720120313 633604541 704000636 582276831 701563867 767190032 975855131 767043837 821600662 155199672 662674343 573150124 906477232 605487073 657986854 222543014 263553535 249600428 845584159 859137373 976005055 466424558 853042835 874663056 879889758 72121080 948489449 896545022 982862596 270312368 718342224 623334770 858034897 169161608 960731547 579637565 746463329 439288697 687939324 179825119 328708203 538310936 632282377 209197322 389021863 903819110 988881749 702619315 818029409 566039838 806478582 891961822 933464217 434167639 583699204 578892578 716064595 796508987 871850158 442871892 879154926 463789210 483994319 218574127 339191764 759302555 788855056 34276941 107606182 669180949 802590562 326014466 956373513 619835393 741332939 116609187 188071416 81958435 416813196 60137725 128166944 943536589 945489235 163061869 979122576 174390377 743214685 965569105 985845601 963896486 972850296 912878944 962316997 928101346 956034231 236105543 429041781 581510100 824173507 179265223 662732673 935859159 961209725 367174784 485812116 611890098 821241372 39458725 245379344 166526541 819688202 278327446 751663650 23412307 240367967 364551110 617324771 91050501 658723832 197071790 209252556 213528742 870967517 197044767 988691883 67869278 320566210 951815374 992677892 784497954 981900241 928582452 972391768 42014966 414018600 367846718 829825169 648686904 915883144 163998792 575177890 585476301 937415347 509683608 524182464 466971868 491406297 844508214 912388294 145957446 397155515 412365615 656468539 456746591 804861162 935039599 938195759 685599158 964406440 900555832 976281137 313075302 740304122 118958001 691005611 422335389 756529106 208170541 633164099 259470999 777929337 72047559 519469765 710236827 803902025 915096642 966357610 620026200 647889615 493137124 574106854 168744448 420116410 188548989 444696949 365807343 537608888 189262903 642012367 870391868 914249177 867309204 937439044 430910548 450189350 982478241 997632999 701562632 719952539 843335855 939967707 949053161 949284170 231353953 887133311 573089921 922316888 217327436 549679010 154589218 665323387 410406859 894717369 828648085 935151271 40333127 779578173 205194455 508808708 405799342 531826246 37276482 437636313 340696890 607177354 584692283 631296633 181613555 457495398 798942151 803531976 954911590 972761497 495595588 972803351 507947376 905717766 178085561 369043917 666845108 769899286 185921329 627768276 996349699 996774394 705535173 730054153 959502929 963898330 536951384 850818929 944945984 958361832 488746590 867959476 463890488 677904001 103679839 653988019 522579390 887233450 132260424 898244619 287948271 441823098 887624928 964890318 39189281 417164808 646777253 883431101 824836841 948667675 273066625 386492948 539535054 850551771 400935029 406850424 669157012 876249090 853784164 993304461 908986568 917482899 744723857 837406783 336003082 913137551 727064652 766992854 647526507 711088405 722329221 956517026 536219086 719522452 493837227 517337239 297138160 600077157 37203477 45682093 444204680 811430185 352356621 902053269 779892478 990266419 49490460 230413340 33684554 203389710 901922448 988861958 436224370 921717536 374111621 611210650 422693163 424909881 5237716 99428462 17821336 332241174 591273758 682866362 807151443 850178936 712067221 805390796 574519622 773103152 371011344 953243458 789514429 870894428 311556721 447455092 81651793 827878284 452069666 638302970 97038128 175697737 309443692 885958627 681503467 719679176 291579712 804626395 188675104 493192435 42373509 179714996 720353246 863139701 639762639 677146852 233522676 785966337 172406157 489900313 942210092 961181075 639579047 663716920 387122423 424480549 888702382 897432428 465476468 845150374 385204588 530527182 84701657 162083901 305455880 906641568 456440483 888315512 391320427 955151603 291955348 394809934 782574802 994005385 391475982 989045056 925073988 951375286 662242110 775976508 534728838 868249704 200353691 292977017 480308939 563258653 598976387 702576200 449383117 810619520 21620796 572127115 885384343 998909400 411956678 977529864 253189897 580942183 127123617 586106618 224604461 228216844 442399009 939366548 122148688 159429541 601438202 965115408 511194473 883308701 847163634 916039811 697395347 727481684 140416781 654559380 788854968 889108277 652783001 924216069 285904289 695650863 661214991 870149593 428948433 745191552 584336590 758308008 826895770 862934925 944574218 971314339 991492621 995387879 105778330 829216283 67815935 909757159 653264877 669929770 784507402 953058789 477099644 974675916 42345121 996490120 715429846 843774249 65906193 867624870 37131799 790153290 437919251 595360316 941534834 949162541 947933736 990792886 527375379 734980218 508470548 913306677 937211495 951502110 891870293 992405912 628217081 681203778 463654355 682848491 356483120 743534601 830034342 885551785 291492994 887067542 362278142 607516367 160004864 640024224 927125624 927189965 417337120 470644835 878361432 940225334 577375489 875585525 178254746 789541983 740829637 892727278 784948845 932637956 997564239 999120648 192570564 577553171 473405687 945491027 73525243 296250991 125745932 442527256 71149427 965353248 215874767 870896292 393795981 773946911 451596250 757869705 799847638 965769515 74815003 682332682 804784902 943757406 152197994 446577695 669542064 689365792 172653245 784075608 750256273 928835475 523146213 575369855 348210465 408516155 176167411 378608618 343879272 361717206 714825671 761930731 666756610 826999917 631329454 854352729 271712022 431532951 337608131 623043735 352717215 715466147 828738702 990828435 354514676 943950733 233927127 504247753 413050321 620461372 273065185 792929984 709289294 970827828 392180032 821930208 531397780 636280152 558104635 809495088 200329078 541358759 349355470 562980895 953388521 969080827 467104109 702994037 604688214 987267220 995009548 996562800 508207805 517470012 528426857 587008596 763460043 780395587 507891316 971147950 618446085 936984094 857322597 906331592 570836117 571060706 489575167 494580897 510981087 728620192 530791059 732196210 59091395 649456973 824386885 972369556 89490920 430377170 64149910 926933575 880466732 909781195 913140523 981957875 519253049 800054166 841156456 973539063 93269998 825367412 672046790 694602398 340561513 724287061 773595582 913954027 579716820 947914152 193440071 612583697 115789823 735672957 8721658 975831139 809923599 911670360 435347450 937499689 273022897 809815246 330653042 727435432 677289355 909207344 351558648 847330202 380723781 655990547 7943459 897651203 391684599 634053926 706484703 995278875 76931639 761529811 165183015 857092578 399587235 782588500 729211831 789481497 526342596 568057947 824722819 891471650 738098067 765692017 225371681 928727977 361273667 873662011 92288091 148754500 837200763 874618255 168418716 361021798 882743447 964252235 478977987 791220520 20675617 550246855 371217653 942624344 51162538 373857216 12113197 334820759 988970228 989522532 311953024 553573134 740194297 987836726 381534228 995323582 589624425 938189159 876893977 974654291 922245237 987146134 867212852 969404312 934780339 951038300 441732694 623424128 223238580 770826796 953644911 988600967 199912348 777047993 996610651 996932937 668436490 951141441 907446502 914123272 530918119 960861819 431249143 571176977 616864128 958138061 30399271 908383256 480804509 848181933 751445604 807304521 727567156 819838058 311020656 511065155 996934988 998689244 289947738 547235370 692818918 940918027 207596605 588768681 13616289 511297196 504909603 589945866 984380265 989198304 187335286 768198946 289155170 738768598 249621918 574830079 274570679 305060241 736509283 791883730 239805875 922687919 240358065 755874674 258812681 373370472 694911448 769124769 236994430 608915428 828311562 966953164 917743248 921073936 866612344 895885467 69854299 956050023 403585590 497379775 654924061 896445682 528151300 995275862 351804083 535411601 326010612 850496405 895859222 932076388 182978327 203198210 408630235 432249517 381539036 864875903 330300126 610656186 47657152 75316299 144744684 552419157 602162595 873840671 775847397 978822503 27967482 668537057 252885957 461445814 434628134 844427968 343740401 969708317 886298412 898240449 938028643 985105659 814626251 815348918 198674886 708565972 307399585 399673719 265620665 612906026 529626734 910567667 876258282 914808684 384301040 560219171 911383766 972521633 67392521 758811973 206736145 331679711 989321723 991255729 16293621 275001782 602832869 996241979 335993552 719344629 101118599 844157736 830565309 839007611 354937788 737833439 793581540 930397868 203787140 470438903 243587990 361708623 241935688 898555511 915994246 951634926 638392002 926448099 824742615 944036779 540111554 606749580 294737398 609938732 306025953 409171528 782215820 983543469 59380657 850239075 93371902 606054678 335206602 506809780 438197694 702309977 395802798 400609987 473349062 801859318 106586691 634808136 911049784 995096799 67713656 691260595 288600874 695035866 30490928 826732649 316781326 541986191 237981746 852617373 131065674 366270231 384004904 766454001 562209094 747902847 522556422 537325743 434897312 724099478 476747547 915278937 400962596 586452495 865239361 997548897 250837050 817026414 381597016 694231221 196368128 338403123 103177155 541368139 28826109 321668110 874699796 987178610 587228227 886420449 820604190 925329401 70285376 695395436 65919331 577977762 62332224 419717572 349553870 854822775 649869861 763396564 469125111 684492476 485389805 786945520 854875262 857528559 5897551 223580586 879000820 976028174 842733603 866724376 284508934 310632981 841047498 970889456 360526833 688092617 476151232 969118941 963121565 977237561 276293746 517464121 667096666 897440228 716180574 840123063 722449866 994056585 244269655 753867545 658168095 956876804 298557 790895832 775085528 787324102 883417937 903559131 931428115 946209974 464088254 801605052 632521145 953163641 161487977 952568773 984880505 995628393 842801646 858352424 84388643 761859402 68678083 333143751 886588091 980534902 48971567 995070761 923564031 992675887 512925819 938635961 129634579 374284567 636818620 729777463 210360122 409580194 408339758 866668206 417185112 953878470 914501506 918392506 392261011 467061492 419248493 727339802 524928887 667218188 895649875 935343023 64200076 399197908 509411546 895841122 512499007 721039480 763092813 984753655 410202720 742325803 628735189 951253688 13944952 736607257 921864897 990967892 388599147 962924090 622372768 795843511 410282473 490417436 90369412 563907975 37177352 812264917 395489865 600908773 358534590 556748998 877240896 968254595 619791037 736150553 169304801 209976607 36533286 158373940 492868423 782201324 742277339 930582543 461169058 583413746 238455616 700263766 759760260 794123336 697461980 944563453 739366847 846517501 484780921 868734576 736111612 901026641 520170007 591991064 465855670 806802928 408311806 890389366 62949042 623338280 386958888 992736655 37836270 165738408 824541517 845785950 982078874 985858013 772816006 879837738 530004616 626879098 40552008 756786856 810628054 979254068 561610958 961833982 256261484 511872071 432098023 453478446 82022401 820273834 846220998 985473403 110691907 152256631 945752398 959001846 961874574 983549091 617301420 938078246 126102447 973838852 475638751 747791706 333140348 989770771 836989319 866130147 407251563 976962090 901939571 943438975 294599978 973760707 380823580 886149014 295655903 617351994 913734495 987167964 73212873 901897031 124881302 676151652 775896301 982439956 921264555 923822675 454224025 711820861 800208187 893149896 341516722 605573277 23190238 630276286 422122168 781485958 343647119 353707168 352384122 806679078 904930544 925334521 946292952 959127460 564917319 787870618 843780501 856610785 297615557 933245911 838458336 925153517 132451614 308631979 102793576 345005194 293664021 825474540 838180043 887159291 994878121 997057902 762305500 898917576 773068655 837051600 499074659 776574362 635700630 833011290 777906802 801915202 882078892 919582718 898091048 978591687 22565189 534441081 650705101 736778967 680265134 886745470 458937869 675716432 939805184 986210630 438628990 826174562 723239722 767863510 830143320 893825061 800651796 914793643 136220626 792508630 935047674 952327712 948304448 973730942 674555148 952715342 897903144 962292905 718279212 726709715 590897726 779489541 123777819 502587954 815539381 982164052 681255739 879960074 432215768 957758550 403026876 566121305 437296166 680121707 841486580 856062376 829040040 878142138 30082186 442564995 781820806 807248315 683488507 820401102 958024407 997459385 995383600 995901600 687894044 801067895 721058855 984428904 618013600 994015765 972615718 981612839 36398931 594437863 469969033 509418111 796289199 949957138 406235225 827817366 647010795 817430920 811387643 951722891 611558962 651346857 434597033 536146693 344500693 544426792 896105375 974979996 668663115 871151746 446517805 541811531 613549924 660942919 835051299 943463293 680988899 833903278 936426116 952980497 317794549 803250932 589618923 859577111 507341378 811507035 385704804 401734790 226542846 930794244 3757788 486524696 104902170 172573646 98736360 747565983 163856630 395499884 58178339 548757423 117144094 459523918 904062790 906603834 447635850 617646769 599260121 822880178 772741754 850250726 773387836 852044519 616296879 935645402 44023636 779896829 951495965 991700100 401308989 706711732 621753742 818171093 515849956 764583985 584418578 674534355 598167767 754731044 111593777 818795844 266186653 864151760 343273471 847567795 524011250 902429742 901876546 912529042 252760794 865341449 202550836 576129448 739925548 815809035 294343187 511182418 301765008 598283318 784492216 900020003 103431609 352665899 133012290 482680646 606113875 748043095 163900807 516593136 594654707 851449703 657720070 675714011 964657024 970924782 475029686 495900508 270782803 624993382 439631444 588604130 604165629 904806975 730886932 740836899 355676243 593049398 300502378 937409216 283482450 473230598 406360485 945459962 278552986 622274968 402937181 867849148 377120797 512383775 748205568 975224462 455390431 591763479 395684819 632982576 851518112 945669172 287799398 388761930 592809880 886943241 373118044 508488622 153480507 584898399 368771728 381741893 498495500 873293482 673385652 940118222 741689357 945226625 943247010 947988397 870137176 940492445 627558891 942865126 162992606 574129894 546219814 907469152 445599350 577363818 660141674 947090152 593575044 947376745 409181167 784950983 859000949 901552443 601271216 704424022 211925569 841069602 241730633 778103060 961539633 988631368 715230111 792402945 510250601 571955643 843889103 938243929 622005861 986738490 245205250 341206192 105252958 960788106 377991224 535156959 640315250 882368262 377793645 426299025 74001028 606989092 829284278 869659360 779839197 858328036 342919729 588544571 422290339 577812691 980543830 984379476 119091970 363415924 348302517 561165596 350450146 833649819 51152166 362707908 812082824 834898025 222445234 612881015 680384932 900677380 502585036 848881168 105442127 530099329 521740683 891656666 673056135 993855596 520932379 906945343 390174263 902631428 191148986 974177480 375690681 831262521 496225936 615132542 209816864 867122577 267149311 286483587 901019160 961142011 74598234 599650908 915879069 992214728 566506039 811490286 590465973 649298994 872144171 904774498 541828845 730656894 621373464 679633794 50813777 384637046 809221473 962288942 600679609 664414848 45538784 228568178 343386121 822956428 904325529 930116340 230313397 749866290 956477154 958278507 350874476 838412430 722189247 836029471 166861544 825389197 136502313 595170636 93906531 342793573 420264871 548113454 456943504 712136190 131981965 256500006 8345109 139780976 700606802 964835440 803887606 906589444 823722940 903243196 76594247 853830136 645055341 766121702 277404037 871321709 845342020 920932359 163247810 977627765 331321736 676283042 594013560 915631467 528592472 609587258 37667377 642422599 413516431 569246475 74994777 293868619 881197979 905702102 429877928 501724472 236301111 372860276 305800693 384836054 640496865 879313494 854615394 943816943 428789760 974972070 263751821 357277418 994429983 997240608 33501813 975295115 83083425 146838011 470808071 983499919 896737772 959215154 600097181 606238254 966135757 998443890 352949073 563012754 533686534 852388331 370331046 867908289 122806757 713405733 668721154 804519131 548141275 589060210 30832907 439139616 511436344 765079254 968188878 969403301 972472223 993683728 430375534 460434304 120362402 193623654 97566837 583557620 29078866 344461750 601255567 840490476 143191039 143825002 58620884 126545216 408848447 788049975 907108086 938195862 499435293 757739357 346010553 835303030 774916418 828146571 15659717 19671877 803059702 928251403 348534283 747462638 689865001 705678913 890844231 934224077 265769693 907333636 296941455 314337702 902911524 952430348 132891980 484024140 220902705 765142974 526140084 590895800 24596273 710156520 704716206 805273061 416698826 584305913 971977761 985379753 132262896 918973322 252445322 933635820 537512533 674083694 132935371 230071269 901096286 916771558 85900984 341233106 67105905 817097852 898442683 934334804 170805136 605634196 647166586 689777551 711680448 945225231 454518182 972755243 718536949 875915104 120894681 844861256 960572013 966723424 540406041 713881874 556945465 562460941 984410458 998436840 956361757 979767182 18659656 375982530 81923366 897303979 724549184 945348218 263503133 663775689 848867032 931834405 290423396 983202234 359636514 576679568 915112321 959025793 854490930 941318298 782758212 799581270 18280463 363941377 864517023 912293425 462590409 992684092 213290824 426989321 575624531 748388957 152040043 901695143 524814377 822066955 580427043 810251030 512673659 797013011 186256068 597179140 71704728 368366322 417586914 472378263 869631411 912066109 757919084 861150264 798970757 988062444 221354418 799365144 629410344 818020314 976059267 988114533 154074462 440813241 349316519 371872043 32327294 482591655 495780042 560529270 650212474 797080733 275024377 844002004 856568700 861283510 99112331 357055621 192369897 883450547 890639266 986030637 449451518 582920457 309446068 554434752 977075701 982625818 130670219 321643156 209376964 353210297 715132115 830604717 538721533 850881369 469984930 507310520 602291704 669916261 123880867 881751122 741272619 842214682 770500498 881592896 87486538 371168994 806549093 892786458 748017531 872017583 974377558 977133841 40517690 343323188 602032334 738949904 53368607 613437717 241170636 748986605 615446274 775956497 53378800 551882391 498928457 904768589 225882800 336140351 745430976 801694870 733719840 789941683 782192074 905221920 220277624 702714050 494275592 774581283 397529028 574687437 259342231 821769839 47166275 870914703 738668023 928681610 571292990 954922666 367533286 586719298 164457107 421312916 51485652 385300106 875382369 916161016 960460097 983760843 743569731 809893748 588880775 983837684 375293208 384631999 21744079 632399833 616316616 925980422 96570229 789826027 680757182 694123471 87648155 821216079 879739273 934016891 293980317 870533721 649471141 968534655 52639555 735826958 504907535 952307105 908156418 993758204 912902888 954340375 882426467 892649160 37178168 535175123 383953396 498250396 155691325 699010216 166301547 218957741 478042566 714087656 363862 304018305 908938569 921882675 113934603 236088730 482643828 721892681 946505116 960991756 612439144 888645703 42162193 399938421 876151633 939167407 55029303 652696118 447650229 937020258 851057356 912905816 58895881 648513558 807813435 987926497 199819148 697074841 339039055 406091701 669172109 754565409 768896997 982319626 507270961 790154953 937744284 947206999 267152525 965101026 928528418 947943115 936426923 990627875 588511174 623476454 711734140 728128255 677394148 890702712 1239227 909537430 879049335 939972819 180006442 379308502 419781964 923409961 551647721 891711168 754287480 866042657 513857937 769949805 466331388 957372159 631210592 805616856 889153752 928890104 259647995 439106589 241569232 648471421 776013240 928811331 696045523 779291337 92557963 652566511 170856958 190285791 961087612 991963886 614436061 774383157 410824019 459204049 484215426 695493117 376028503 464774018 296245085 415696680 431348132 572869342 585646958 689837556 186457444 361334816 770912579 951574116 273763325 450077491 658767020 906098712 732680993 867583854 726022983 780141971 138991007 963397594 447904673 733733879 169175671 599590626 615857446 834787746 964143878 969679199 766670331 824364292 847605904 962311876 700866008 720538064 113366515 124594372 974411093 987867058 528638533 954909719 589760320 719507181 105569074 987954914 456063281 663512191 92257793 475288402 732808072 892757318 725635774 996340287 752960104 756732570 587336426 977332832 352321513 904168324 960981014 975039796 327104358 913948869 17393142 873407454 215999507 391468738 355342395 989388192 107942873 833998620 254925138 702757336 124025858 465506867 62786018 652990596 390925812 884412403 290726325 465947443 852727032 971150924 932628509 947402067 805992591 929623919 373829179 936417530 669935564 879927071 609394648 874868371 967814862 987183839 612230660 744823477 246862041 946088442 753646215 914615551 741484427 849606339 493503577 749173650 221180216 517633851 898678294 980510116 420277086 626249719 287640439 900044532 362125301 459890420 149156418 971152601 33944038 897746091 304837513 414974400 230456078 911950233 65182756 320918375 380107629 916033534 37058752 470455342 507048858 945484164 618400369 921942644 412605378 923282284 606058110 936135527 704488399 935119431 498840112 976594066 922448320 967742487 940371618 983983722 771501838 875011037 867413708 882274587 130993389 277675973 500738637 570808067 994822526 997124167 743851578 937046274 639716232 832879321 888018699 993156901 491552440 553788437 370307593 412336928 347566668 400609435 352221520 410555346 49857688 391948282 878899911 884732371 182867507 864504415 712899311 892218562 922415938 976189052 599332973 742229106 215906908 304761360 262593422 472241325 905231983 916321179 677528662 699055298 434632542 720548342 166571016 220575449 390637052 977122033 433215058 973620240 545413791 786931582 542279541 762809833 205765421 692361045 133835181 567802438 264169989 637401797 425277933 995416668 883779593 957243515 581211223 882235818 225751771 232463164 105782329 738850349 979289078 989402242 175580447 772800372 35400942 287301518 689066746 741418840 892028905 957208395 370733859 932800156 803421211 956782538 225627517 431378462 251423715 902953658 465330567 679445733 394786027 843898412 770211826 962599723 909857454 961638863 768785007 960708910 164205924 393927680 618662973 722695578 987575988 989831472 463757510 909624483 589290171 713755938 853148520 910262362 985466011 991605935 603957274 996895903 512505012 817399112 259368544 340811818 883924017 934976474 69999561 224833848 966060734 978050461 919841415 953534381 726739568 879800885 99072679 530328171 514694352 710019753 427767281 843180418 480494611 562151677 790390606 983407014 790540761 813126005 419003642 988011059 43023831 533886938 77090301 533368723 62887161 509354700 699004840 995906686 795292535 939224777 173849883 975478197 759713711 872369026 921527236 952391269 300475591 575745705 528977741 895224531 253866793 732444509 620425161 746455751 766907219 932993908 252858309 714606497 795095944 869751653 535318416 729982168 10914563 615883116 914438199 964110595 390095556 864780682 404933863 867127844 723023584 761248733 493393611 602691986 454556578 905874811 982987806 998455737 634455662 860761078 268563778 461902767 860046362 927665413 438848974 735441915 441187147 934110095 715962047 835355913 125646156 555090202 623749355 640331977 768064209 792343518 467191206 591240715 686377888 911266932 463726880 639652190 577929420 945115809 581788751 810233965 731141243 816531497 218678944 719338936 494565102 570712174 216433720 747860369 448001749 470925847 989218707 989730869 460712670 827118192 286980297 407711844 423763829 782176422 590808376 613906166 909869300 960423482 983884878 985293094 481620759 801824941 935277288 939132920 879823894 923677896 308954808 869009847 78452844 665392759 610722980 979223978 719735427 932899325 369801819 891604846 439118845 836747644 368044523 723032273 673635299 935396017 355634469 765632385 638778798 864216512 696579866 900052676 107851139 420640616 269054048 412762190 763822612 821932601 993349900 997112612 481863535 939745627 655107597 856254872 744835627 881662907 666941344 855200216 547159307 821823129 7891290 261322826 215127989 920785884 91075218 323210199 711079142 917297780 664461325 993139595 618949922 766809432 165940292 214102523 236012060 904632233 328432710 392834997 116121380 469907600 378811914 806416043 896369450 901800398 107195914 706205011 681276596 817105195 891857677 920632564 109712292 294925917 954970515 969270606 885375794 937503551 401922453 916655600 717059669 951324234 729401225 841117999 451582913 984587092 873917597 882027389 712715956 968757309 300741517 631861048 738106714 872291092 556929168 867010469 699864000 744371232 935875698 975892697 845470712 996353017 818908872 886704119 548110842 663875735 663025357 995845761 833802646 874780831 57280999 860487155 720782768 758564007 574148169 934627907 720652335 910685282 179219761 308013224 405596663 719524567 85429431 143688763 730264886 771389198 604480431 777227526 583763154 596152056 236830823 452217367 924709996 951684443 721876088 829356694 287376018 845828195 231142474 563744406 377275306 439780314 896971936 964919835 107772621 683199966 283301247 976034545 153568784 816200401 963307002 995341574 478483974 859550405 177921207 365252260 637255453 798532268 169990029 814835161 562233732 664398180 634286882 727896683 627814506 687694181 650809969 971179976 874883359 905395946 859583336 932354896 306490047 379676962 762096535 972633103 508527758 891967708 567262900 794109659 702524211 784263641 444116946 793675801 782841695 974112972 228968401 406718911 868459343 985086830 969416335 990017372 399822289 452996659 138308495 170356928 854212542 863871467 262508013 912503399 852455999 950466753 688596686 781609871 548635256 841476609 893273918 938253339 52332249 240151826 577872936 610279643 21266426 896964704 385035447 444962503 983294433 996197110 538328082 675787939 675703789 716596780 990213552 993318564 824689672 842899492 84469086 294265313 171297420 724720668 143082785 355446976 122676852 563255183 105868570 262751443 703011962 892882585 80908766 907965995 916956439 993685498 525388133 695511342 872478951 905643661 109032615 242685339 308711835 996140223 621287829 804115878 705861641 860295342 209298817 929549196 733524793 959071570 230071145 721666944 266784824 416163724 923624395 952993930 532530640 753221316 754497809 958216239 803011221 812336889 832511817 860910839 732873557 924744584 600827352 780060125 185524802 427387063 407577647 995653086 922512895 968056209 353628061 997023773 10820035 544296087 742726843 820631296 568864295 975340643 187685640 889291971 631543962 659378803 452832156 779796745 97523399 420265921 357045615 853152786 839082300 889052234 11332512 138859463 786142173 883216497 889315200 975165134 114838328 628506330 647738563 680670199 122786615 452231672 305090820 537551296 433441562 710906907 198580525 378860778 677894582 840141509 916485317 998275444 923388579 990859648 53498100 396414908 669306418 684170098 893167858 943655619 756070866 939251200 777111485 925229699 907108110 974756134 229332917 736249219 768379549 907006225 848750703 947081678 507632521 851611251 988086119 988889631 141594103 754947788 534618859 982312232 86346730 974872834 681880187 983916923 214801823 237747208 187552721 614432038 953407047 973837065 423275395 612106080 701632717 895993104 411252376 956496988 987012815 994528062 901010783 985920373 395890959 408023905 84131708 896923904 423259246 624343870 806751280 853246838 392111956 964708328 13049710 19131340 443446887 692651825 87063094 370060034 189429715 343978573 703553821 897101169 137345947 253786385 438300046 685020610 853859235 964906121 794428377 984387275 767770880 896766646 28728543 34081176 352967508 468255909 437166007 728451671 807043806 895511028 690902077 792209680 187102733 632631453 170916318 826174649 527537938 736603737 374084559 378846410 377554193 770616065 334863904 498887533 301757109 564542880 283766483 896625821 749022616 978654999 636227394 751801078 287777556 369301281 309367428 651811614 826375461 831363374 568738604 811906355 352132119 811550013 521944165 799410057 323306965 399839997 843818383 898204413 382166846 943166440 123884405 803267258 498441608 818423000 428060094 941043944 998064627 998311403 407657204 584722514 685914013 976384092 306979896 469046287 14859758 237685752 551530640 766070279 487037852 701927140 308298977 318586160 735943147 852394845 659453067 863434260 162907868 494958989 580541750 670367114 543526157 644900614 637403155 769441426 40056205 571440510 571215749 610247542 797021467 802392410 205563754 918139849 889931741 996938982 333768880 810556544 116096175 580980674 801025178 950837052 950486060 978592961 413699188 758530808 996507990 997683676 20735150 618496586 241738759 367657679 469276101 930855948 456043270 765148008 411933834 785385970 375695300 548587929 109415387 524264637 655441761 776627535 934762575 989333585 73868054 342757895 530729648 932139820 265098458 969194919 91395101 389768070 525494093 858408767 626000559 636766320 238848599 246073898 752683365 829369272 948800550 961267621 251366331 488475590 739228304 780130717 382024222 969229664 75193556 742870789 185457765 822691921 754361649 912092195 498552397 523245292 726846829 964271291 351960134 706040062 584333829 907781685 392378084 837106542 136799329 779193811 43650959 594662036 656571907 668238879 631264657 758211394 192219715 634743276 509134607 706038289 747520434 991072689 728220073 968399203 577542877 693960318 66491988 383247314 8679040 959053183 142541526 285480222 984860016 990258128 98782689 318997063 904042791 947958541 6376622 37309237 846188210 912048690 530648735 837001725 303000409 454077821 445843824 513501826 73600332 252190163 930008586 961785064 867728757 895232311 232849001 899365006 886036493 932942782 421040295 786114742 360393221 775606524 555298716 707517946 869386859 936723866 145994584 916178353 704913670 970921345 843039801 909526585 430763052 709823030 9532740 499606007 341596003 456805649 53342202 806340251 193433031 777345979 192913055 964280924 954622064 993651106 745337965 765804688 266129986 841906971 558371584 565781561 651226071 903648704 384213334 435269257 893234742 950386100 503693048 924731067 36181261 939312461 745829025 880650445 49353666 805684303 623582234 743217926 676800258 730108674 705416051 938289897 333958335 389081430 34606594 480801502 973864717 980193800 208117946 985198763 878203710 918598881 202764255 837966976 706052571 863354312 195063664 887234838 247858918 736814190 607018319 841258591 980095164 986699044 485430184 509383391 247308038 914472097 247628838 890157136 121798468 920118357 738967974 894445967 887241663 967485603 110595861 549502786 261342337 773695733 250278049 468128225 657521860 665462899 81924391 715316865 74286029 662676003 888483552 947900254 502103264 789521920 955223691 959884801 544287044 762776198 784028883 960641658 983815058 987178985 631001177 671180403 580090594 956910951 84684484 904283293 255241130 479244727 946456402 993174580 557349859 895892607 62500672 696697683 744017518 907686467 732610131 907767203 937327076 941110284 243708841 252613380 713654614 987162172 255038445 764827899 421889448 806341760 294967125 764436155 601382094 987795839 363583140 429385400 307516594 833395961 810680179 945602988 585545809 637184259 402821122 774509314 94554137 111849845 570619494 645179476 147620382 921529330 308008489 319727331 154336016 394669006 219253600 937467968 51737009 914039987 968933910 976482513 285365914 427320195 336305966 992547182 221282197 607638998 63613496 92687003 420646718 745916484 872570974 889326270 967584576 978076721 920956743 972354292 942842004 993431734 39262614 973097177 26706996 710022395 275114398 412937101 777948944 805983715 551495354 733107141 315842918 980354776 502828653 861928076 238616013 629029748 749785073 920818750 323148927 469557025 932355626 993944378 68810535 874756509 385275082 923788495 950550561 970232773 962840627 963150735 289453806 450576769 860277830 905818730 406240630 900945480 214782048 443477997 107765536 278696885 290892492 519788546 646225623 761065560 207966616 813997500 679432476 721283590 310466807 803950461 822641045 913353455 428861233 943905433 39959577 830253098 400950755 415805193 400457218 846546267 248837590 716120508 606789187 824732095 498104788 690116781 910435684 914033513 404908013 978974340 138552103 641041890 833194191 985120408 442973673 938054047 363612716 944921333 373866029 826234421 548808431 881834009 368178132 971304260 421343850 865446649 347431557 928339902 286047620 903242598 289261152 909595772 964844253 998402991 664643934 952554138 54093498 357748786 860850175 883851332 415518897 999111507 800046905 819040914 87114701 756040938 522408467 873550750 577596558 938009251 612879930 788068679 752548209 820904757 904535867 984042457 318996310 979172778 810747593 983880059 553916478 858365395 591965929 906970351 443566048 554806493 723222906 746543154 103609332 150428404 916151793 960740362 677244638 903874403 660900166 965217214 690825025 916608984 997934961 998094085 942499399 954692814 968466708 988288766 482589765 989060732 454756663 465327416 977504270 989005485 476512510 921402173 341731844 767914351 359245233 390863344 952562532 957619023 843187840 929567235 857817143 892316709 877912401 885286446 254043608 276152264 1581219 641460879 574221629 864443051 923989287 958944932 422309259 653895098 750066881 969516461 378131076 497394449 779087346 802412956 136187286 943974240 317846935 888153640 998790948 999343452 789756916 899388733 431754776 945999318 187848849 234777320 629293610 813556129 225505128 409985951 574570731 777328771 876278437 983773323 401433861 524814555 787788503 816025837 78132051 78307371 303755834 387503881 368902260 519510163 519269719 537039762 20936018 689004268 50572150 59175382 840438443 861617372 610515121 778214317 123145018 474901413 921788903 987686675 672410895 676794857 54359298 880625423 768005863 966908525 677323144 751302238 55427597 86693637 586273535 646819570 939870628 976987226 747803378 921416919 632055256 989085917 44201016 86583387 856200385 929328973 716632296 766862667 587958175 616856348 945721718 981472403 290096725 493728220 755619806 960437344 106592840 731430434 46013257 238933461 476056851 828334780 460525478 802052919 647290752 940543427 239424762 750963292 105575310 479719431 956420825 984544341 352626053 758284833 164541860 861602386 392577954 637837693 981868642 998844726 685878549 956072497 616318268 657051015 854331710 950648933 461255578 604575629 72963130 854796967 815976257 891242075 964072100 968407324 842040771 904864499 786680564 944385563 472491375 963569157 32140026 722126984 234340643 717936226 275947018 589945800 534152000 947769077 708117112 817064735 507860597 619004484 488562037 530754337 174539539 798661293 950970391 959075315 635655708 890777832 452175337 592669530 949506964 956344982 841607405 919846774 575921087 667542552 643571952 954196472 356201999 691937315 510005582 838072138 944576931 951364312 639262194 816958434 409506305 577809367 388224908 497798319 78668181 402352355 146049573 838896556 944850985 988758946 182909340 673655553 273494267 375890489 487326839 665872471 791669913 832161466 381112668 477504199 2327661 375050954 407593375 567175545 885002933 997617451 251895111 822387800 442895669 618119802 365632327 696051730 374076278 789924348 494046621 779525705 862408092 914652443 352251850 883441184 429086886 582184354 409280518 862331668 140553610 901240529 583457124 898036042 638824623 897244699 819407975 931790517 21122252 458515200 717879015 745737167 641267922 814171929 451951746 643923090 140182068 471996847 724252990 912237913 645546861 827672807 100420457 362172479 464746386 527171313 752634015 898936023 280667772 494677787 172749715 898432146 656976627 807691411 554257904 865732224 280977667 438922166 139941482 342754150 251228331 589670813 420525194 810521261 407716532 411442976 389886321 758571319 686344785 913270582 642719813 974463173 583764315 914688143 579072218 996514441 129693529 397623101 912443802 942699166 666747899 863695807 657634585 729481240 441086496 955637625 63391701 531373591 353509269 952436563 777319695 874429632 639676963 679516730 161448982 782016164 473568500 504720567 244630027 744347576 192047318 671378524 646423443 649655924 307460494 337748481 76291476 984197313 559710862 914536468 265484108 708914485 973088573 989201453 686809439 798992731 984567738 990391582 499521982 521198593 986365942 998467388 525982845 808639063 557673732 919469370 102375390 969557780 459857207 859114183 222692253 527748626 45656849 253065783 594232274 948844693 578088156 768016736 605023341 880844207 152138084 802605482 553042433 773248282 291438246 868760099 508838944 888926329 741936805 946074894 246276890 864129119 146294528 490201766 367997936 839102970 974549933 983705272 789213625 853168271 590072755 927821132 474238247 590066102 217017760 638221985 252306598 839393780 511281457 930990087 561477451 576818124 268115651 804100061 354245963 900618014 213229733 443977292 28608414 876880885 288645732 655705538 931469983 970242986 172173223 781679026 506316864 702447954 910107295 959660911 677943945 886293981 859903358 862405512 666454953 870798388 570914260 986980833 33575241 599900319 32506570 264863602 401599528 457861539 620589313 934342593 96490342 611158560 489642743 574900579 872246901 888406851 359945756 794764090 392698029 746828952 501315382 553345107 905193341 972388145 652942389 959980130 979810526 980316389 146881759 817028382 733579369 888025885 925227535 964434620 996224418 997648183 932063760 992764642 261952481 833797537 800971018 871684478 546814094 817243842 977768794 985513488 402503708 933677727 356322528 432160006 444613136 888267658 127359937 531177535 4952933 386565058 890666138 945501117 227270394 678134196 600921711 823026169 342678869 738908281 156750898 467613684 936216921 937116204 186830643 796261011 678169547 826289056 540158315 798914315 178324963 284855356 379051152 945223377 859890393 973035134 518078946 589885008 663194879 940301790 947868845 977976721 771341598 988273081 975384552 995457558 277143673 699095692 325265645 814661663 718528522 976195420 771262279 908296869 485100886 911997578 69600165 681878098 394971675 615888622 33024710 880342108 113873061 694490324 119368078 418402394 438717185 933594432 471717647 842020506 323191181 838271889 267082431 471963796 738311391 977752280 929898792 941921543 792283273 854414722 125230697 461356361 688730530 828050710 510084635 662643969 796332312 892208241 383275207 659878203 380127465 990694260 891067935 973044782 174870918 909678817 580597337 812247176 712663675 816909654 892700770 908700334 19579650 780815377 960943719 976942433 276851722 483776264 755845552 985005536 97109003 339090113 892612228 965622023 448587204 553013119 178921320 343296776 631436009 844039274 953590754 994361812 325211832 630852158 561556594 997427744 208682404 247747013 238372227 655473330 443913920 542850667 329687233 728726042 162188910 368041939 363758845 998434229 479961925 769256637 185143805 485394776 338860168 767171408 995585681 997472131 650749336 839974229 547393261 986609295 702149766 956275609 507268541 751220679 947533233 966923653 718031177 826296396 424116825 438561205 598949559 645398196 864502783 981425413 581726136 983607426 602818296 641651509 394170238 745548776 808003108 835310919 388021938 766479953 971796079 995652492 814209161 837951814 671181898 672228201 889217486 921728788 334459572 583708396 364819200 392521563 243060117 452654714 223190188 875899217 884347462 933197394 803247253 856988656 944431394 978606962 719907428 737865847 619326094 776257777 750916538 864279120 677458892 945395345 808668805 817356389 456866051 685021958 523664511 920102778 947407850 956489723 625646113 756087752 841021155 874785166 599216003 660945243 315813839 653686555 158173846 726960552 831026336 988546704 352831127 851275172 599668778 852724218 698544087 747272475 984509447 992573169 153527792 462549387 260949849 384247772 504245734 695069407 745438704 778493346 724474664 958868623 854226865 937583228 201660906 848128291 127117401 658709965 134667696 476503413 561999148 732443005 873949185 927994192 219024551 968915925 249074908 274818988 248716737 619506712 165713245 752080908 884100953 926280249 741904357 875682031 266754133 570901895 878908243 919562739 216355104 793906294 811307698 921669081 102718345 674681343 524327105 703095963 697866204 941389706 414320720 533806163 140796830 635728968 488334515 727226248 890713330 948747170 134981611 155344552 411778041 662579861 437947910 875820667 697459038 970082603 22250004 206512877 883466736 959598772 782991377 789054673 48102813 592033497 147299096 451611907 520052188 654323388 312443267 783080132 160800169 681196136 986249000 994333550 382258155 649430559 69947738 113537526 786595152 938287594 561943108 710673780 926619564 979215962 123678072 987145008 341380693 795697994 495480691 825593598 460335456 531371268 985910670 992304666 697334399 875491287 614446377 652830185 438889212 862339563 95495755 559141053 227482887 847745841 327542208 977419637 230071437 927395393 522211189 664332247 942456247 992382588 690973817 761579840 33975947 382666329 628105742 997940076 812682555 872866007 479797651 609760844 213758571 917484824 142872660 550455534 194122778 728590026 190776200 420712983 944627349 958420358 314513289 505637782 491217945 599666063 280540519 990107975 979382874 991291333 927937209 996863321 507106937 522792434 496272990 550042619 289584677 827880123 441100920 477725776 288536620 328424619 585788725 862257037 893168242 928669161 454228089 634467785 712800283 969201100 554535880 909276183 673643984 965528058 130356544 750303839 395498201 720674565 460664477 638776021 710150853 823591271 77938124 557470560 402459424 891543061 306057945 354712436 438119772 810146743 654650192 877339156 223073883 881101425 897390392 960293462 982307390 992770243 889599984 971911514 9729593 819347140 976063604 984030317 819172102 859136109 529969919 909363897 751372113 925992982 45478032 991250343 536534474 772753358 731595984 869962926 88808687 328831938 831699467 900577179 251288664 890668679 609714686 806466007 840554163 963852002 405207941 601991702 489585652 861491773 566724161 759823831 872549811 995729803 688821466 787288421 574243109 723082416 667438192 957730471 625128341 657647238 65929782 81375993 633779947 867254976 177919837 769417782 896813870 906262784 642105844 768282769 96367889 737301873 181485329 919001264 87787097 770252221 889549434 930707237 903375311 966761335 482905440 585638202 731537355 879782585 129127781 736504989 381164671 914700349 903855181 968085332 558798864 743944607 832359497 885413006 630175962 767723885 134823730 930183090 343513124 984873733 574578271 909590125 640172301 843365847 742698894 884932567 502965636 701152448 362742518 613792034 405384598 481203677 101032481 196527560 794621247 978444046 198299756 653933284 320402846 341130446 83248769 859448582 768246239 804935545 118336161 887362905 712037640 756992734 785776408 841178360 13541358 332641561 902182309 939163914 242025686 502577372 824692449 836398845 255386429 742998712 96447723 763965271 824772070 941508323 319125297 641496139 427374357 587881561 366604620 522903084 101096987 333347962 4861086 182890819 702504311 953432783 84191143 881712176 670807063 734968445 533468373 857817973 768628913 792388968 203306116 417338171 424441097 927216623 753742109 775858645 456427208 645590666 722996155 937816306 707654326 754541729 249351885 421014722 644195126 757433808 577934870 800122570 811853997 973173430 538152601 797846616 563389988 959256034 887007381 981986493 297537827 860979039 275199651 516229982 250733687 832192491 818880924 852519485 739185757 819225011 585479552 623858356 518403711 850016399 421533641 638697731 22340299 999075697 891702725 972314078 289549634 815719629 125399795 868127275 368901991 530804539 157346259 940010342 191472270 767103903 581459908 770832270 970166540 990453515 109629265 173837594 222202322 284681474 623467696 851240201 518940001 937467974 125591920 455798314 499269035 639925129 539469710 918170535 479319556 899790106 643150828 875471525 455753076 497567512 606792190 940564837 721554539 786173050 167309815 212351447 806585708 884544618 179594596 800423678 514539271 705431324 920465782 995888060 536310684 700602278 193688674 956484705 462043410 738565710 127849455 264967338 559500238 620040325 707973687 986717072 733295083 768703897 854898748 918691086 457303584 461478585 282530420 463932943 425038399 730818253 474746740 511899153 599563141 658056197 235390380 333167760 257859067 936266835 199086239 307534041 946713580 965360097 49336960 719726285 556562759 564502146 772310618 897383711 797162264 953145313 974694684 988467016 742317245 982777499 753413381 899006716 598524631 871661954 653887080 954135320 554678522 945223020 919750823 990665993 625223782 990364216 272880884 572978845 816115339 997737749 407787465 913667031 977954638 981131451 169107367 328188290 335089199 423397670 556222554 962133352 405514079 861877796 335234836 533680604 375414881 899471249 567097182 965712226 550465596 715356648 991563263 994117808 694120526 940996373 319342037 641002689 605491069 771516803 850745814 872022691 752645620 910884594 668330396 785403428 39070947 934617191 34719077 171187215 510724622 919350026 73220835 293912974 977650583 998184059 336589350 372745057 208911674 665192613 848534909 904524624 147109050 660846323 217507370 896210435 156469412 559322576 15912350 402070603 318664257 329176068 252604275 744698022 165534546 770573321 679779248 862646975 809492262 945281991 630047802 885341953 62473393 303721552 699957680 771579183 16639339 760425752 287805919 394968476 791899097 869106676 175654257 986598866 272938792 880836478 837675660 980830138 17006235 845810930 319719153 782529391 198374586 785585295 877469837 956889935 384931230 848127155 792079825 842020331 518120997 818333572 161721319 993846943 520035345 949965642 264949686 626030930 451369029 795649949 148613688 756646325 947739846 989647117 475656256 484799689 815036072 835686957 662634738 700883874 933701633 945206620 956841504 991469070 437985292 633440565 123541070 896286904 109626948 968959398 845664200 979682366 695584481 991098893 494200671 938109593 208508076 368342090 67089960 994993550 451670495 814132111 963069848 963282398 320320231 599067904 163485043 409068397 814397865 979777159 634352893 644678738 262514353 933518389 447153367 612021675 597430726 809095071 527362169 978345675 104512592 164097171 31224706 494992693 740241079 900088723 791178798 883745604 494075341 740252433 779143064 787946877 712590490 978214767 583197707 950826682 845645077 875959554 594166442 771314574 458985311 519261705 701028491 702976336 394623727 439067108 797120453 950402898 367358431 793833973 735378262 748026225 709929241 846209601 542852593 933049123 72448363 243125320 293464677 989933234 220137496 505418993 166949467 770192173 139943480 990406635 6066428 883441012 202108806 697216411 582616990 794063329 559972025 572666424 66050929 508772682 76955197 241532987 110312159 672270910 325450407 471456065 629416815 964711081 871461045 877407711 906097693 991554775 508175958 753787226 646864228 964547371 830324255 861754738 348409895 634244134 72976448 820189396 269672247 281697826 592634012 792441924 877912122 904467032 918925447 952401152 687922980 903967837 959963751 964076864 402591212 536059504 35749925 102851081 609478246 954846402 743316262 922203501 453673368 932996242 677807908 796476611 895325520 987279533 93786489 110988372 400163490 974405488 397195693 431738298 965669140 991618322 125227938 900849174 457064543 822413295 959712631 977985737 499547382 560926852 757022455 953788839 296676326 780811639 449794767 701154139 238079325 254270900 955266722 971758407 97210013 563414242 793362268 922241327 257464087 957720917 293147523 834235446 389128452 681947899 512133947 707328351 177893488 248502887 852064161 991102051 288127491 807583709 779661858 887240038 522548718 696795252 786641139 888683350 532092644 951500168 709522637 717539635 510065905 937975818 367652769 572925881 141818510 327581779 384013480 848083257 108451921 976334791 361929745 918628357 448440898 994191605 976892515 988822509 737833939 921428080 580976272 928998308 417722139 843094072 579535874 813127699 924038033 942697954 975076 930558694 919625274 946151648 552413933 870543914 296504396 755883852 981209074 985899081 907323748 955222001 818576780 820512563 713172006 979678700 561697106 949187320 220228855 382832730 59456864 901524252 268415920 851617932 876362544 885118773 727910820 783854831 847154075 906927525 392018764 887482759 584846815 665553976 670379854 795173680 147823810 260740000 59878431 469343910 812002021 853057919 847063196 851688351 483955110 590344841 551026405 800819370 28426440 612180978 461726194 486133001 158484459 892527405 554025062 557235838 584869411 805955259 250425401 684994032 708127831 906330424 440509733 571763102 327166580 750787143 591002581 896665134 424003169 918834195 208156194 504697751 312768765 654311699 428884651 902219230 918613350 972135969 8520518 682255026 515900717 713332004 889095955 899354863 103350993 237590449 810830906 975813017 617085192 864238867 913962612 970324185 91617973 941053310 501189405 512809157 100514017 159902500 79184564 742842788 629005813 688500022 864573522 902354610 537526701 611846329 433758741 763093445 220155436 973642620 33431519 542102810 537554383 954907621 724143067 782537423 257009114 290394355 839770273 929337530 226583887 728532293 522650035 712645115 748322075 893970043 243222187 550119239 726915161 954704423 507879557 952824866 417532773 593181587 433947755 913831920 257689203 722373044 494281470 856527044 806134516 924494288 714639823 953342732 417117018 428841045 504723407 728894651 290895918 473832588 270845186 776137335 181245682 904781937 387107936 673889565 33578502 283212795 453682746 760289013 547630149 690504723 281084421 333448927 391013724 682873032 260098882 826641234 21947606 954743304 226705052 426667136 104403109 325778357 907526070 915834652 815336640 822021537 109881207 602673225 156748327 964189736 869850559 902279466 49384811 811942507 486179707 683756409 870428438 933081218 693994174 849070196 372918360 780239517 30596869 113159468 513000991 934422516 463166807 780033028 90467876 451473636 826670359 943560687 550480642 908248099 932676918 935262245 407702563 854787897 163943508 998917309 851891030 905279967 743904800 964933971 693119175 797688480 898291383 949582465 355895147 826110559 255474313 622012707 527263190 761114840 348638006 660454570 2652507 63124610 812528445 898661637 530906210 995624247 646401193 914967000 197068526 474521740 959855542 982331459 95755960 370062857 675652173 770684088 246775473 569849488 896278034 930023839 459656293 468437538 951504404 963040969 839554968 990346268 766490382 913719722 43970669 117879019 532884857 556794982 738122981 996017944 692510353 887430784 373511281 852383826 522753749 892708583 354388334 479103166 194836220 443071501 99048440 257643670 976801677 994852781 204178229 817154949 614578439 965485246 108440376 506367657 252811368 938472266 905167561 990661890 910145891 995170604 568869509 953171444 648696138 683024453 116457674 945446362 633327826 788109050 823053870 990899254 74599712 943467619 793083084 972242996 916780408 974511711 121669699 149270467 854614823 973547941 822059135 944123052 772585700 859664153 688654824 997579933 230362268 262360007 637748693 954932944 719975696 878952916 658412976 830713885 490932879 827009529 597144906 683587959 674693437 946711893 132779195 732258914 382134839 624633581 588405119 602104106 919174183 927572902 246266526 369171407 179058253 263882258 184395055 461237931 18937488 602118314 827509365 966708427 931555934 987544649 519979257 672146171 570844958 716866054 807733615 827041512 746189896 792234027 996084619 996544471 605689950 835252763 462394690 983403002 223771154 695881598 579896800 768032604 939103002 945492827 732709202 812840263 84162893 90682894 401884269 927976725 704671724 920291321 704183893 938312325 786026041 955418171 460552532 544421461 166195937 186334524 238524638 343059592 383380516 446690959 859109003 869192867 703200534 836940780 756169667 871577599 496028755 766290970 870817614 996397963 546155364 805586468 639751071 894297502 188819998 409862974 436030353 760069787 589498621 679082799 763444908 799820734 230935751 500482015 189781592 966700611 782799583 967146880 663926308 823743538 584828118 997160243 860080179 994527503 960258807 998566515 340950924 422753856 345780957 595058321 356748546 596373823 193400027 385532604 8458246 941561656 422589354 430816225 948250596 992493800 93226417 124217097 313019019 544425705 701511612 921977928 168391267 320328353 337151408 871102258 178185226 535172533 15790243 141487985 608685925 750991414 317243719 668105419 550078496 988921765 822831977 977830623 69132316 901754968 942263826 950907247 523359483 669963730 351019937 551304338 50593656 686877693 347916674 764811256 14085734 977736364 415704786 678398687 458954108 873326775 871056741 937702424 615218143 744988966 286851736 562500106 307441311 720433252 552116092 888719744 590141349 801120426 715347367 968799029 525231733 733606310 23693684 976580264 877485021 917643179 773538830 784010977 273348963 963829295 63704433 882904819 620298258 924330156 586830137 929780920 982036706 986259131 462281801 860695731 881021933 897976504 179252487 508867429 507874953 598365532 943653427 947019332 864635840 908089412 580498169 739312054 377242786 519729255 353436238 414166892 653178523 758571481 106005992 841514731 162051180 789563027 137895840 851373961 655383113 754383050 139916326 641149734 436770323 446419099 441993823 492312708 416105589 776223651 603431725 609436828 326639686 829513872 788286235 884486242 236792669 758412664 891532185 931322031 3257136 178877235 588546281 759173572 165170785 368424674 232490449 520496455 746877362 937343185 684696722 992180626 613051703 849018095 574997324 959975772 193575227 213625254 716390188 744922805 785864340 936928935 696873456 931059151 723151895 889665431 562618689 729081984 41030706 541536818 391785929 993253844 376216993 717101630 817676686 861085074 874179493 878878071 179644150 378230987 317170279 720438231 749896926 985269046 754419143 952421946 377146853 674670594 365042337 515782865 114747810 562561893 458873023 595658616 557063831 853395743 329146856 453542725 126816433 341257659 935328408 962559540 508165265 845189366 42339252 358132749 365275 614891286 788091986 879651165 24110806 885688239 7183434 993451110 754148840 775733368 629952599 861904666 950485070 957911905 198515726 802514163 287628399 968540833 106789404 546399188 659816521 688184023 88554177 364424086 327529314 627756799 726873244 852398016 423152372 957264915 987286418 993320175 791360661 991143418 12630013 256431900 807790365 996011640 60346832 989963099 350797173 828172012 14080570 312939127 690367757 880207048 828675738 836525154 887447338 948993965 482099933 928883735 455670112 622677529 969335205 989667384 64387536 907431168 900893209 984658375 661665444 736682377 102881592 843722370 187211031 392016704 341199379 454548662 381057515 880430485 549212455 570104703 257286208 369798694 67460283 933926825 279746894 372606354 189970237 691773488 268218281 493093548 347984106 409139165 674306 544552538 752340234 938463612 257346833 286806957 269166754 667756778 82683251 793998527 138012915 664827212 593029576 722933201 127524719 999100488 931691289 943983107 945447821 960114549 191506252 892180183 668320660 864774593 22884705 30891520 941683603 974647638 529231028 630189936 594706325 695508122 687742614 865313563 319569983 925717699 104777494 593221314 663543968 807015031 486505777 955650311 139169806 729173605 269981648 579034041 173442424 879054364 871455845 919739253 371844362 454676869 41253812 754642803 733343210 865639620 247857477 434766063 15618028 617278882 135259679 494412700 977606962 982384339 47341526 279031619 836055179 951090818 942727454 959220597 402870533 562807589 571140767 830962973 866423880 885020831 675028792 953639092 53144598 850488713 313623699 823553699 182738226 884026994 293066110 530029166 411610458 607826046 114620150 858578646 300005717 638809031 862472123 866151829 323483504 472990385 624054553 752812314 231851961 927163759 409265578 481812947 950408143 983666018 295058212 326014690 245591929 312640811 269154107 866244788 690417113 953134303 535366666 968266416 891302809 899533050 132729169 379506378 441940301 831996469 596647077 681631579 628090490 960155287 403020239 572102352 635731546 916541799 892365136 946421894 760711228 955761592 39011761 805279811 180028005 190200271 944357495 964129884 731515631 978183032 802021992 861178764 496215901 723913643 449088520 991497888 101399786 581573590 746238858 816503532 340589136 649028203 173441271 314264596 60452185 167279432 581027482 781039204 189084806 792884525 226141503 876585461 497674810 858077494 175049227 970238030 486169520 501358490 534542805 845440082 560756192 939022630 154144949 908014236 328486078 363771183 735931486 802868424 367033685 600900730 469977150 786992104 927619562 958595075 996254104 999137134 401938767 855154962 349222724 950616868 101405604 169326620 891097184 957924846 466409482 619337253 516247512 686273946 224550739 612225933 804554540 842867643 318524939 457728249 758686382 910116826 368361904 403734839 13809063 425125126 732049379 901445666 223196634 393199537 725358038 848718044 746427096 905147444 988389466 993629717 805521099 840914244 13715816 912726126 64389483 342541777 549159066 903746486 126971438 596386024 264754703 473137979 357305959 373961738 660942710 853090722 644750328 719871783 673084366 845612216 987923015 993885718 416784003 852967930 863254694 953598639 630692209 759567581 368098701 666210901 541541566 614096253 509630136 971705090 203477239 880174724 676429904 864717968 634617559 826825984 58706870 281202661 225913861 695333980 961307288 989910027 850343504 994890292 374817017 497514831 570082955 774500124 715620633 961438185 750980780 879277019 265899811 555517925 706676430 825442576 717688520 904326337 851774277 902512322 54965225 636170448 907830239 989372873 476150232 594769137 211837199 876697145 124580023 757288743 617579193 755971461 920325302 944165953 78125629 565237009 169929094 641361007 282236122 715836280 138631698 241841559 563919019 699464714 663047387 735038659 747041556 751253942 393355690 451678731 354678401 645838772 563752891 616978347 688414477 832850081 477615264 868468635 190509169 989744449 505937388 632309679 640428009 971795327 22897969 611322045 287684169 926088544 554186091 682140384 35865542 786444573 339368437 380172000 492139337 993270146 174937578 590659731 1100487 780377864 857110327 961942868 362468332 767173627 85720127 788514093 204979833 711892414 205406693 350250541 227560680 519394373 127047554 191399992 866974719 904845128 987170895 992407110 300211188 867948475 871208281 947757029 253988653 332308259 736962430 845058287 693692842 810360635 890579375 978174148 72259830 693861578 312826600 401382116 267887058 986374240 783956109 858049968 662879699 750256881 125407224 881006833 338815913 811094394 650764399 840638464 103692746 600899849 879460849 991344287 284747426 678052705 483186367 492809039 202737156 721283308 497662207 791116944 927969019 993277395 10920836 466467756 369592808 853646517 650193976 719851589 1640023 707231348 165072575 873322750 471494314 700078137 918855843 987232290 682526254 980970442 679721831 811106468 857238419 904796413 652340225 657722365 87532132 546207059 636939500 995011524 774588108 824254469 511090098 579808329 315834859 545154733 497178886 609856545 837545134 960431886 635359935 893006433 52352290 981597737 878721814 902932204 774703247 942897427 772598637 813189279 284654371 823675591 913970258 970645171 519655835 919544648 139621213 770252327 190642858 737422172 776195211 809110308 916140492 916203643 172553218 803293300 857123192 954683612 787302644 950149546 144592201 684552710 615489166 970488442 776259262 905543697 909041658 924330704 519474530 860031900 315825153 745210696 370370949 394772365 76384323 763735091 728368655 816232406 126732751 213809889 696062929 745956711 930883412 958694939 421748750 436764846 954516771 993221762 38099926 215009820 645438536 909175944 265075542 728418943 804252379 892374426 931456279 944767723 197679824 574618497 302931402 638167619 249029770 614290526 708211152 908263075 828596602 857737138 468004424 890156459 195574260 212505498 853996439 856858717 302245382 905305399 335536402 352372333 611179105 650394535 42793369 212249871 683003684 721318320 836029897 958319564 308544225 880010914 263313130 820300412 664770916 665140340 504907217 802014222 470313500 592227655 846332751 873843192 254347354 301167400 165094240 484036897 93773572 134263466 20824266 811174678 627330654 658106729 470658818 484910999 978903877 996998757 281210885 353188643 650120311 880885745 381828694 977592492 232536079 528790367 807078952 848676925 933126549 972471623 597944878 808375672 721285988 808766693 103057701 460445158 358670222 994707650 486254946 524636159 210551667 600958652 575038014 629049866 732737440 737705177 449272437 956862602 332466221 455479054 998388970 998936809 517896291 605601069 32622202 939596408 359371746 738795026 788454289 947643287 205768449 740103185 910627736 963362810 185120650 525467023 856192666 943339275 492814008 567372834 880341396 946787521 337598759 724359727 521769640 755103742 575821003 868540247 230686779 268855182 661735664 692448464 538311919 845209957 582690452 917622331 153261571 444095585 937708520 977832222 91661416 569890200 530038551 735320140 959424156 972815869 922758348 956673577 505250428 721660620 770041226 961910741 743344420 991886008 94495323 253771224 633862910 958176890 94253422 416725770 627923780 955376347 425548149 788101165 79811231 977625467 439482747 495354828 395267716 417399777 176412440 764994210 790488296 814086224 251821035 595573600 409694311 446593667 206506697 389707401 988769503 998572571 965794558 988555342 44689346 674476259 229392553 343778304 261944871 661629723 966331962 994661804 697606694 983167068 764926303 771651412 713054576 897115771 438270802 874481885 904322160 967108619 916137044 989669208 456002450 834500587 879072772 897924570 918025670 946809524 488497777 714412861 968922765 990984761 812815272 814944553 103399724 752796546 763845158 765447489 496768094 922410858 601010570 794884827 132111553 507546292 432593616 944899929 139127859 368179946 994781694 997509368 568343372 732803510 421368629 969198352 825200175 964392403 952285895 982258716 186996676 610294017 212196778 958476488 199982718 793456094 190705009 425124830 862702335 964743489 77673255 608479294 589501321 865951153 753369380 913241935 375032878 774037496 131488582 187320536 209459342 618920703 801621787 956175610 952006421 972906702 681870586 822859065 27555145 345814240 941467177 978737224 844518054 948470732 71953130 551319737 444294331 563325516 812870139 966844891 524392128 812466816 936195319 968136149 957587293 993757349 728447695 756747957 544589934 677040981 849686512 926731248 791152444 962628503 486504737 749970205 134076705 563460904 600978973 880390299 411590928 481504023 772526407 959489515 863484301 967940005 10653910 322366143 125123427 199760717 497586528 725106081 136074209 815162366 61497010 638623257 860829901 872557521 994845468 996674473 217055777 365148107 879030207 983733754 675023477 770336451 848116790 863076222 453140601 695325581 933375968 995751438 127641638 619191332 517333354 826019038 653175878 792656961 317584408 936543045 427621033 794495638 409648517 414651793 895424094 921863687 291702503 412218422 508615392 919683151 995640708 998961117 859769004 861202450 203167399 633055293 40192778 872664904 183703016 910547912 359810151 780162186 194978351 943790124 872147770 950936681 994505887 996939222 68245408 821529679 410674130 600364672 4116278 754035208 545503043 683227493 197000665 533301133 570998864 778760163 420239341 589233081 251783244 555501391 640415662 824459055 541863946 579703603 86945159 718259856 964450800 993689124 135013631 660709796 373204875 515926900 430185326 522539743 812506635 917287915 237769481 331993990 934347898 935012532 368983857 936236174 266570425 548702976 680935231 924953798 198985548 757990508 637157024 884185454 488719076 682559806 574970587 680872703 771530950 867583958 72298171 533656342 948294894 995228425 542603865 865806008 5118324 142511637 101972071 447013672 658344627 801522002 430376947 519122366 822657375 971330519 108404037 130061945 321412246 882769590 271158889 915524054 284466206 723553516 153549018 490138694 15513187 54765435 45337331 906506536 555562410 771373578 503685672 949518086 214186408 926626122 786185858 933131159 81630233 527070446 71244336 243122095 707513951 839132526 713237984 720097123 606516380 970687933 518069427 869250873 495288902 548171127 145395466 634499419 958449320 972037873 438905704 877006423 687125537 783200173 123335130 903178301 101950182 597049750 340528349 805204682 161070211 787048831 532774327 764099402 260563856 854079791 550232769 759446385 730532018 821132968 703673795 738824287 985322721 985418780 790649747 966315492 513604396 802282250 770183924 783550179 9531102 871604317 489672324 675747462 683726600 791394852 173861275 617585374 293305175 798493320 482281300 660345488 383349776 385950630 671790572 895850699 139589687 293318133 792329226 846284277 26360995 318243356 53611174 464762263 165739532 546586506 820695285 842172513 307980064 743324364 788856238 865889128 678428947 739429008 671494316 814902323 206915312 903971543 279269960 566342033 554629479 836337299 346781370 581128827 615352369 967797556 890101343 996874264 558853489 670857265 952976963 956840651 230524662 306115671 367386283 564653323 622977446 660245973 193872463 938797585 85379184 893811595 547208226 626226265 186500707 341765393 310274765 884452846 940265545 961631649 31110036 613232714 38777884 318821638 672439694 951962308 455648072 874353880 749308863 824355297 670461423 729415443 59542631 796593041 741919710 844487225 134581907 458888733 111984801 781646450 672794805 896893354 535340339 878949503 292855224 570966053 112147080 321263490 890767804 994604227 787515605 943657076 215993841 446941471 185281376 701351863 139170981 684632959 732642320 853928345 988370905 994576751 913018179 978831076 408345877 830176599 91373499 278146320 464503119 656553904 905184834 989501716 288262696 656808596 554205980 792857930 840714532 874527736 817600641 892864404 541589527 682152178 60411621 817244198 713067281 991992479 350943821 822676298 353616174 592992836 930733621 946163742 426817749 898318235 87059277 305394961 696584892 837511227 195032925 785960939 194591127 251637348 484991132 926749355 729570020 830420535 133415001 726622280 732961128 821177566 467159564 488423620 597821832 958704156 154442312 475582420 255847757 547914762 310163373 553743330 204500238 869509491 632474972 906814362 986028892 997509871 240105414 801725660 134207253 608882782 636620267 777008185 919347872 949234373 941004718 986327649 635001358 680715486 691159475 781085227 701259554 975184654 808433017 872515325 432894217 526453984 385066870 612177966 9912189 605214292 160489429 865996549 151562390 968115094 255213984 992513042 109414380 884318070 738142380 944703053 780204392 827782906 424461534 613199736 902955067 981604632 197440995 571123598 373176768 411933374 137918943 480095253 685177101 728501080 259742641 433375710 232657524 856735930 154586146 507185045 419914579 871323237 649180525 895252805 287328271 382495636 306399928 708192410 316522057 416266054 37025890 521136047 961459412 997364442 580523567 753440453 866996009 922769301 110001960 228650046 538166585 680553686 145841732 681396455 704559944 792004586 787228930 993223327 67900404 197006057 534277684 819576114 681017438 982483003 282865902 788222407 327348997 521099843 516520854 874052131 175997997 251316951 141537622 204477952 312476251 953502489 255213636 318836649 388197361 597140317 593481800 622279222 175114758 826974909 154883811 410331008 397353764 510286892 204109055 997206396 641188482 744779788 947687032 996915022 626162246 778418910 370149919 635641012 419245150 440276978 297853913 769890776 900711290 903914435 131664015 668237028 906457242 989912562 100948547 270013619 495945517 674786216 714779549 993952903 471449339 907987022 912930533 990751539 270996405 916421115 369326654 771711073 379095563 820930110 89220298 426101773 811326774 869077992 473823290 730135261 466461946 977953465 368178590 602124114 66355901 265968071 147540710 436781391 296992456 415377038 653177426 883762266 444561836 811806830 437527641 464880265 219251247 666377331 820389053 909239537 934480012 967724352 662045483 697866163 196364803 345274194 59025514 693521571 791104710 952565845 624116838 830909544 558879474 979925150 351375153 869870079 306841210 708012990 529906427 746154699 429603336 968677176 718105623 818862701 79316627 459771346 736361923 827675855 680264456 845645647 627810634 854033503 831639808 961524660 759447817 861578353 695240579 915990233 938950590 942387995 265925533 328189148 97639764 289554752 652113988 829881572 721975485 914224972 85449792 829254026 950274238 988022116 176809344 706707513 909021650 943802452 843239421 952792719 276381208 923199882 296569112 886557579 604862171 952843476 346845143 360981873 148594024 600004965 446008912 538265515 347629688 734470598 380467437 658094113 376872316 760776105 104103709 773141032 416965623 446881273 183015554 722854562 9507536 278816848 454308210 575377939 345921678 642606071 439193844 799418756 745884155 912999801 113411202 255171363 967275972 992453006 823117525 861925754 299742541 898002927 57635031 405701940 600969595 722975463 415335701 692579691 594620430 977562578 258247538 642347310 661078231 761405296 887792693 950261764 59456397 300133817 309577239 720040550 891779727 922646019 646092518 797088854 657129388 751521345 974995305 995468108 506231369 646924245 62475575 989970279 165339806 754596293 749604995 977187020 878223756 878557627 291198279 685752153 325593287 803236916 823878010 918331960 578618432 665811352 924530374 951585621 464148578 772898937 36774857 356249244 498298180 679832296 952661844 994227743 945283256 983224262 456549889 811224289 234762164 849395748 755665394 864110057 160359521 535450008 590122637 642637672 864824483 953738784 436166011 937517548 246780180 688970442 200000957 708374844 33956203 545532961 241460235 509254651 919845759 919967436 556844786 896774470 459483583 797627655 14919654 113775668 448634437 985804593 779737196 884923640 901723068 903306787 176158427 252553817 838027158 979677018 100315532 887806521 15010154 88073402 424613241 686806456 291596733 745616763 473507414 587087686 987162255 992770937 835752293 989904284 389123496 848160885 980866674 989116725 411771971 629602570 34243651 37885201 682790913 833770208 214238821 621531896 996292880 998474258 147839140 777129803 173215900 449824358 489821871 635323704 11190550 788826753 664990654 862298174 245025657 615709725 200809185 331718745 871051973 965766784 160556489 878580906 414583810 726383421 955238760 994725488 94894250 315310124 852664664 927133870 419682348 589313393 706133336 740320138 134555628 332407160 997458446 999025370 780174606 839660788 170074261 323921487 775316109 786243221 794950810 912033062 792360087 885026725 805663067 815293769 819852507 941813036 273772033 322869518 337325266 698114817 361094128 819909158 855071767 932542865 56116569 112178347 536194883 568976752 398856147 721822723 788531388 982572109 303664169 389580543 757070884 805324806 369540472 797065226 107062531 554820439 592684385 993188229 470721138 654438351 726520414 757134870 14685672 274154727 930633396 983194769 345159942 926724756 62259895 496355059 99377841 354487695 110777837 392633196 902922124 924297451 748291001 992074031 215932882 537605053 303926414 324052738 737208940 844833708 225876611 471586137 522544675 613810672 811506125 881885430 691109706 709515195 265482102 585258684 330057142 870289134 250652266 281891318 223458918 868485602 256962117 881105171 352398642 668014362 178376394 248877984 728460205 734583476 463112390 649490442 526083601 529374371 241466179 581200493 311005959 871089430 220811087 847473165 446145053 846865308 576866187 600461698 896460744 947420888 855405334 962482781 542349253 892238994 288374320 586748206 228098564 468076935 619844514 893924072 97936377 594640923 358622638 640730549 420417748 509642570 132025177 359389068 340710238 851483897 400640044 669649583 13446122 722046277 886604994 886626046 738424883 902295799 989216745 992017613 829051502 940340336 646523451 820678582 187280359 946070794 955125676 961980928 989125807 996122013 984702810 993254607 524440260 649268481 981136859 996690228 85700608 139263026 299087245 767304648 769069599 841029545 740661665 893421332 623779926 932111431 819346341 944819686 974954011 983318249 894150306 909823127 214172830 850560168 211424197 472138114 141139674 877032336 869938893 917271002 531936155 748956450 92335120 248366355 875799250 984809086 309128687 767851970 203020482 210112973 80385700 944921739 326371977 572999614 315565117 650797403 809667008 826860697 394114454 578114524 857892368 999206933 976643645 997555637 651018593 980527111 405492239 563977256 559102917 894763486 178132299 726032574 858934621 893716540 134307050 612345347 933779492 940854157 728831701 785928768 660828665 990900048 582956202 585986642 509048412 630808837 161644147 369607460 491125190 984040767 788530823 944882217 92089638 978059718 265042423 426848752 616101823 727106374 926938165 971509965 803238078 881140106 439476116 516572668 378811618 991124514 205915164 490405057 843768042 856833141 674891285 729046361 465817515 898470688 661816249 713555524 778038622 952727306 684902401 856249420 751549527 761761515 54998328 940821812 102506405 222973549 753947065 831605817 933565309 950121841 619320119 625373547 698037125 984931491 128319289 453787810 504002474 779533981 169012867 519259887 650575820 938214111 818112597 927549882 39625234 559350641 401650099 733217046 64865754 216644964 201303905 397707323 846979441 874910386 304406317 903186474 399222029 542038153 582262171 749949836 155949382 852620473 812419128 984807736 906584809 998952704 499281687 715546242 763888509 867388539 845530095 940254087 334067485 556260810 74994246 940024036 963952641 987282573 973171637 975464150 452996153 580790971 446424035 600977342 491453937 870767737 462601286 506254249 29763179 116580551 759003213 772083551 503916516 732232765 378195756 975372895 463389165 548760695 372989029 686096455 996975779 998398352 850389901 985261306 250186815 638144287 969693937 995939989 660686441 725093166 297354812 854367666 136221544 190215041 611228557 871005109 354717168 398896924 409446601 841810632 394292319 875305256 65708031 313367473 311512576 994504610 480638991 660581174 188477101 311614878 769431248 831968733 581625989 715650295 235415294 825488092 421670922 895699207 341100936 701776855 71358590 180711450 775011625 893979107 592877479 596155945 165202076 723002199 43988374 512539539 265874703 650891670 151273366 672838810 471544872 614523414 558413301 624637936 360683291 795367160 12343824 204946866 703549265 820152112 462934068 778952710 656921262 715625202 988733853 990614450 316343747 780781420 320719337 501179831 602574559 730373527 396080389 919387620 225319795 728919998 872123267 933372277 531039393 745859141 879271715 953767201 298896756 744410380 609920175 720555774 855869432 860887712 160266896 653940583 984387309 987990916 477182479 858126688 844673898 932001939 740761519 927172089 112693988 123728960 760288684 841633043 490343317 691002814 487375716 575117895 357211218 685433214 529157836 887844419 36589491 544601111 645807375 959392058 153233436 917493673 367137460 639402986 321393851 532569213 10281212 736072285 21718862 375380226 12309630 193368715 852877818 990411785 908731629 911493424 25993486 235195636 214113921 794128147 761406692 789080810 300285321 790535652 945757180 972714361 59342408 505629895 137486564 267483158 56835797 146827813 250188994 528288787 869813032 994382693 547405903 692685943 77833608 622697952 849306829 939773801 23475892 765433137 803402950 908853647 277433038 618106915 441206432 550741279 110643826 399900860 659591664 750876719 655110428 845180030 395020655 723518372 376459080 826353304 917787045 958130384 441017071 791150190 865597245 912478696 486930796 613252263 562329329 588255692 735505095 834120039 943470143 950844824 450398621 879056323 649657019 807115882 551319554 789425179 642538714 759676318 973657690 994793719 464965499 794190095 880700084 993997055 80008599 565630026 475463844 477159932 207205748 736399485 630695699 963997316 371018705 603701238 194542433 331648000 976605113 997589140 410691483 744543239 922177602 982149163 445739247 697237168 34502682 929031277 628807483 786228932 421731007 843790628 301636265 577672178 862666891 917193088 945813904 946973346 536234910 975085274 197693860 742871362 875515494 899306611 250402065 292493679 609634805 655806932 423128593 901926506 276266703 973556011 776143918 847045016 447295042 489809548 845204662 879460654 277072337 607432521 135915756 162521663 689138266 980295562 580309298 692650043 804967710 926442585 555842351 609234126 749736979 774764937 252160377 264088315 316135914 746852680 971011251 988928070 68752980 965916843 832721095 851477499 262903137 419001888 916315585 959247658 746217464 996117676 215233993 606903355 302193133 311270283 495985293 692744124 47777231 728297416 717930525 849886274 352990678 685406852 97239420 615187184 376962725 969671310 415567234 656567155 448609527 704869527 572520857 871065583 588010080 826920482 158435326 702516767 425455026 706867028 333431591 618985457 356333631 924972918 803385253 902999152 50047416 637638207 956842705 974750984 724918506 809617000 113496653 145873025 120371293 123229580 160964604 419928762 898875476 917753775 57525636 87714647 566439573 753618854 587409391 681923057 334073380 334541635 809074843 849351378 731494824 809601068 247076223 290047064 551791584 738740209 899675615 969403329 253988244 578150246 621217630 891334672 873425626 956324072 355619747 401944938 86713775 280235519 890418209 995990022 49690450 563200748 133981316 901203029 817339671 923822146 3505823 572467903 664985989 852501665 752755151 894692644 886249082 991317204 730601413 933864792 773544448 843843774 334618608 340726671 645484881 773462577 281536473 718862705 680962974 920523834 58016279 804717278 396898410 577100021 857539845 961214397 102147248 908040496 684756982 691736608 273254112 592199024 824339144 936142480 973049962 996629588 400578125 562668065 137561771 307605415 911555628 944636778 581835032 662076800 697854419 978318533 604052248 659095987 451058892 648569138 270181816 551451581 64959045 899621148 684798977 903795716 803384187 897255706 994280762 994638941 868697907 989023250 740090324 971950252 355685665 438856545 179138108 688809224 916002920 984846043 746978204 893349908 599377036 641973869 859578259 876848998 256495899 981963442 527028497 682027604 348185920 814357586 376935502 820507706 501107318 731941410 418063293 795350822 812625105 954694810 352339729 981302369 413047435 596775434 881148048 964224942 410752558 636534012 232655137 244290216 5391007 397663005 829554212 966514126 632548058 710473931 994967749 995431423 509225082 520709886 514195669 836050470 244862943 349726502 132842327 341665092 579306673 714168787 880454936 996891449 451443600 458169517 516874072 777453371 711387052 871376196 81165744 887089974 699808180 710805110 471210986 760834233 2093227 911185069 570433861 861901796 256959193 955745928 429815942 911643108 364562286 420232285 622673581 713224788 376837804 981749328 805924338 910629927 550955999 789168148 447045691 992038317 180269254 249049914 594734777 681715066 593433835 670688098 35878617 48329166 185083996 543438617 201059447 335702731 145396988 876852695 235747969 709767700 723541940 887544127 113065993 346081188 547626093 616783056 423637750 435251634 21747168 309628627 797840458 911055493 451445964 580983567 435698713 630755866 995575820 998348315 13292753 835692695 121948043 681399407 505110435 570106697 243442057 477420633 245350379 823760171 189382729 647356644 855685976 991996172 535479573 940783577 82695661 457668466 724396332 761319006 699922321 797458702 89506377 501799033 177045922 723434741 919091978 920665603 616709504 675257894 906909257 980206813 891779993 988915552 807627977 938634647 389048287 569371165 226066431 992740012 633600704 943086061 330897358 870198470 376968683 506673163 934319504 959882269 534133877 744205765 22318287 989976883 74107973 499791418 541982236 653224136 83798824 116968012 474805538 931234185 148444586 986061936 700859916 988619594 917277892 983379048 177158714 191438605 463191146 941321759 809343861 829490085 310393586 392713375 186443849 365440551 202383900 390678334 619237763 917014074 558308726 907788455 380318642 636905933 463597454 476247278 379108339 909864782 801052003 897200744 832973881 960900256 124774699 152324804 548915453 783488224 722136674 909482432 274748301 624764822 956371310 958153516 377680305 492460288 305051516 969457194 239646880 668936725 269533468 360007216 102011778 417516481 289455699 612793150 671296679 843640272 277493854 643176900 994867491 997072378 437482560 561989991 675454984 728109322 149493751 241065442 524350906 719262116 172267666 901512168 620261620 695292583 471026929 827196092 268631530 691763705 327533774 735076734 778149406 900003769 977638051 981641592 850680957 852596951 306771980 892331967 355980645 549453900 72321493 476671396 926337175 995474775 665677116 919622026 435882565 830904642 307484656 613147761 839889255 958767171 578999453 630170678 666322275 837185716 85342822 221112459 403421285 621628168 431750881 458922593 761112258 820885700 964047065 994113306 811827277 992128934 612833665 968484186 241876345 955356595 767125523 900249138 702835642 899953903 72215451 897374690 396191151 998766733 990608939 995480695 872509756 997589173 586726653 649920055 331766861 583257648 599744217 679929284 245457469 673165290 834632407 846385685 724640374 947364675 116309163 726996579 590477012 669351169 413089970 975169035 228665642 862291057 258010909 260393474 983706922 992709177 299476133 597843977 375572458 454858899 952993089 968309384 472154954 610364400 729610369 936684938 85604083 131375803 620465654 649565649 318743326 376087680 268937869 871895183 869130425 878015855 761512231 965519897 949277450 958056311 156662716 165465669 672557635 735099635 587061753 767916445 435788270 685476135 182791009 801048719 943731010 975635240 223773248 486142131 644262823 881173786 302183164 534985182 583443331 848812403 236397672 535630655 950993504 983007774 615127300 726021944 577364318 622653864 37930429 634904773 107376371 333396303 639502182 805553422 990573547 996762380 110665662 824886375 437374150 936449904 623098919 770164606 154500118 627477114 539715836 757830544 858793808 976086932 803117201 936808727 419593459 613386595 584906504 987582594 722600204 776249259 573776879 709620492 189921 152448851 771291984 941283842 150595222 278477356 985726652 992067151 486450793 609457342 715531221 751773666 374734525 532939716 334264650 610360705 783936070 892719019 470461106 769147489 76702892 536489437 344549390 698101830 982695324 989618221 789124396 989885890 442009977 665309671 768259254 934027026 325340843 959138767 374895379 833103516 55543906 817126104 528198210 660147415 37627466 123264713 333612593 607558584 312057343 887976807 859165795 914165876 442078234 864485396 920000191 998667488 236680649 660075025 995125839 997840371 29232396 491228382 354273407 959696487 517145112 582002976 562942700 568147163 74973419 515080062 934310204 959175273 243967888 270084199 761300365 854699485 393209069 556861405 172184794 937052307 901863611 905127931 961293042 967151686 599581964 744563742 558690258 935810994 838366407 938200712 841429690 983724683 590182220 829524465 549768179 894248300 326190857 393426746 731781602 910359658 525463510 674713783 149473450 249690551 138913079 859477839 859625892 963174445 235824425 501427849 65244345 380848788 368773293 474200516 426949891 547765558 728441589 959919688 87694100 195047981 918242193 999330131 208893586 265315740 231509899 636481212 742410068 871907301 492339010 812484455 898889566 930872150 9283343 734572528 512796905 664973173 154265625 263469331 42446570 815868447 61035028 78844172 325681127 473462547 657987937 825849018 581919775 799123113 947897678 954439584 779143343 934865674 536502421 737631338 375324042 923393269 700065239 799755759 134242205 782701775 681558877 835315989 907215052 996208469 633441876 686663427 753139166 757258975 835478640 998653946 816797771 981617956 377261939 705652600 961175203 965584324 151831361 799467142 869495609 945420911 140030795 629325563 4021475 140633607 921834271 923560895 253262670 770104306 286526861 821902523 514346357 838313753 573729968 808199410 168046474 199647120 517748935 745823791 813559823 890585028 557868795 599739380 639745382 853197780 333911146 864548966 88818494 885310118 773775746 798571179 933245238 940776270 247557328 503734016 212877136 819961493 249333349 432517293 307903007 877853869 179344582 942602142 904188886 993547961 381490218 759655735 882303422 976024334 681750833 960785605 415850754 626222765 963691111 974515662 340056708 796185316 448847849 667904351 91195274 449633744 728218322 896413423 114245487 214338040 946403523 987790850 985315816 987233167 175606517 661820928 42472600 344877958 223666683 312563173 237126715 402304615 164608334 662425637 114711530 254540687 510645996 545302255 732658609 923971132 751228681 765152141 961175692 966120157 421252325 815831447 869027534 964157822 757093178 884636019 628796728 759182759 474493301 748014555 327184763 936742192 414160278 446233183 859340039 987294509 664444119 833062642 568758900 910218900 660863202 911776563 230410025 900538798 52069923 165809883 325105866 574263976 384886998 797134856 818097096 889788655 136171772 161040982 455583394 584039908 466446779 503179925 433134649 443423547 383031418 970610411 219800145 607688126 910958787 956523237 593446239 940192265 103111704 566275491 294120886 704030021 518227854 923431831 127032528 297659916 435009962 550789866 646729746 703059511 741945974 747555593 77539750 548171054 545954744 606037906 199975691 681453816 35923016 147121511 224300264 556338322 133161783 736129112 158076873 386545520 500349822 680868126 33276114 228938371 929929187 960459595 467930621 872978674 97463314 443812554 813576732 981706822 288606197 761278259 232235245 354216348 548605500 743484195 747013364 845391742 162508306 906300086 704343041 974710711 848586213 868905015 111798483 646586815 107786229 262104270 692428974 700009621 142789574 417045727 778881755 813592566 115080272 572856961 62543106 349832842 623806224 790071218 395800941 512671433 611225215 657490073 596830734 598492334 227756316 588490486 273023238 942432333 116635821 920428629 288267064 474050032 699875230 734881192 697347217 815049791 996282644 997437805 33561125 313947497 317754606 359981856 217898917 911550684 832971288 905779714 718413758 906388895 502027807 697254666 819294940 827347706 73798840 324359238 560123615 682295087 408371006 521486751 145032802 963978416 604316993 791611200 608352578 801199814 89007217 909465164 730885832 879544236 820310712 976467063 338832164 876348663 343778341 723661845 390170507 953449977 356759654 771002884 298194550 909015929 777839234 943742979 663058176 756837041 820735619 958292879 861653098 861933537 56910443 859333742 353414135 695097767 452586127 926931537 969519302 997154798 540534223 718550999 170652447 450598724 730853021 942191852 740767503 758680284 762464644 982464027 427687868 723004747 912574625 976870249 870295343 908482461 20259918 461515282 508534984 894749682 74578538 719556385 414571374 447610360 556895639 826896246 589110180 799119825 384247837 550668772 298853763 914528690 61298404 809771994 668632506 714223933 684535298 908151655 411675615 569097109 165868776 322186856 697146467 786095103 919395444 937850274 55123245 747813192 544026202 967053791 692901537 811932778 414061860 734187218 707058653 921352664 275586901 813464501 409174507 531753364 35409529 793405075 29757529 65584023 816495119 961467286 369882882 560444275 416499667 637170708 586202797 791275718 674760031 997865172 58356097 783726421 827461561 849778111 646138457 845953099 26371879 703751096 481482901 729267935 458290780 986657761 38450922 235249336 640774996 729143948 686114007 793459493 444697661 879499496 653866886 940558859 596479595 650785301 754346514 944429953 231780124 245554029 839679665 863526404 668087085 741450168 453653265 781542115 787441188 798675049 483734933 852129904 949765365 960243922 401264688 734290863 651762938 948791234 296734413 381446844 929840399 953878427 40129329 293509319 765833409 820383123 87045403 687197074 985966302 997321083 628204680 956007154 252758126 857330672 591558078 674741314 306211876 978105887 692427645 733063956 448989941 508623458 669790973 720754821 651988378 674832480 405735084 967994395 739484338 947731689 256003280 316795505 905284210 957148176 639737211 748887916 271828468 855928443 693241267 978530703 968918895 988817470 438406128 664260915 533067752 873915595 610148324 808478996 58398273 716296562 763791234 947148379 425732985 810727359 777144199 783941198 325298467 639871012 323734287 532764590 72777 453858730 581522791 767384218 518351346 627085358 425756567 457501751 445063181 981971453 887740072 974146259 875012963 994586711 779491566 837471532 887235540 961503871 476321118 595961067 24221584 861859658 542877037 757171153 431750699 535570969 462866242 903526614 978716485 980959012 828614667 936750838 144901320 177521235 521852937 650704821 829927551 842197007 94111925 369691588 792020106 917014203 319253548 519648370 722732591 985240213 488460118 512817463 802776283 953336716 664664656 729705576 270549685 872922987 692251745 970350774 928631160 979390540 705652883 874825008 842232078 894425028 860095506 975654295 509269487 552361219 841604677 862741420 455060265 546003117 757060879 808683628 807832761 834954835 724315793 897144286 496590802 765492638 843942801 881184222 367853613 824020562 758653630 980219191 598687169 877879199 9230902 421091195 147597391 290664104 746029089 992584630 727397957 813848478 718039196 874320908 271847890 285010539 701370298 939992909 489075600 603964857 212711328 251673363 588555118 730032398 958670012 972605175 826883941 855990009 464184117 828704824 905714693 921228439 851513504 881465444 668440316 770530963 576539876 812185919 138365419 877366164 109598331 589191977 368410592 880001356 143948028 782553020 717641573 998739295 923713977 946261725 439402356 669195014 409611677 528549515 323303968 740593626 836216700 971489460 945423306 976175950 228708965 249079265 452051281 951856065 329932621 371117384 807382768 987590438 594300003 750522601 337920526 482583997 157040656 757492411 663606379 920873294 128174565 294955935 516042169 581436168 225970088 512279402 650094670 893943015 393522745 625617570 660535641 913027179 908458303 973185383 660508215 709579380 678349009 743202983 570235507 643836747 268014144 994993527 608990888 924471085 223421331 318392721 920595659 970356103 257070075 436775131 79323200 943151784 282551246 337244359 112772986 158296390 438596884 486761843 205008307 729090355 816455292 931786863 478260783 785484351 727853486 904802727 75535255 970859984 679406418 749015986 702137744 866942500 833131345 930772061 661953391 800378500 344564402 920185737 328346606 505594949 201946308 723264161 346950158 674317335 844827257 966945467 22204341 254175515 455937599 874538998 584613310 589757954 158928286 687580752 101887345 381774796 267679885 355818448 699253027 863019210 343737313 596367198 326452662 891299901 549530325 814571005 771118182 808308362 240645981 333878972 636468316 733636523 304466234 705541208 736627959 950270069 450692832 645007712 85715695 810483698 64205433 772837247 456568635 702367475 61555870 843046175 882998103 994665633 909321637 912987337 544283876 670154214 38400316 138661553 230900598 326611793 490955461 594357611 157872912 716152109 540492273 833321629 529318685 876649612 926819696 949436984 331061094 498810078 910418903 982310363 588522677 680167368 669771647 760707121 608906158 847520813 283542491 738957717 21303681 906344323 892377294 929114023 224363104 470426806 113760738 588258320 590030352 905192788 807129551 961052490 552441553 986880348 765653128 916445438 554340878 991273651 145416448 436152929 637509179 702127405 117564014 994281488 699421996 810823480 372740173 593324620 578520366 880781007 456530589 637655464 811935228 943181033 902659404 958716737 500205 983839357 121567050 388650210 688484971 910848684 68617617 151663179 804202869 822401117 765882347 837834348 335093505 782480756 729162721 758552379 568349551 579870638 899188501 979053093 960247867 977284324 651380427 801183110 468021265 665235714 26525873 365935582 750207525 771978503 657726282 812670750 141413826 462004014 435306116 979472963 196362528 390479827 82604022 872761778 400789714 448374336 910652689 995834280 735693660 807164944 953793892 975470476 774275993 857380744 733121437 914394600 884775709 944080901 158847561 847703182 783598216 839394365 717826071 920265945 818450011 851654128 159879301 276358334 453786697 827820271 208028751 668454804 422992663 621464047 388757243 518650257 45444530 407959728 636280050 871249604 935967672 975998000 116188368 496863087 67802730 581056318 951532863 963048239 791945591 810470972 22453343 532210422 395334733 429795248 245217751 546607771 454253120 875667148 609715397 873302706 641869522 737147953 276161905 960243111 886200023 977731918 994879052 999252371 498376420 748992846 29557034 986623796 313796881 581431952 517378423 974398631 843671944 868936153 852749554 891123562 493347976 864413685 295344134 652073814 334473122 362955040 978775886 988287903 943616969 957791372 533502535 895425522 669467468 982739125 235290717 973806142 307206492 711601200 801712113 862617765 228809652 866194676 514111226 910496926 997445608 997718677 60805712 887472118 904952456 923153500 738735845 836655926 465732153 724396893 83088047 959276585 59339282 281492323 649685400 996482514 719553780 937872384 625312502 824678015 544098022 988193656 755528142 971934378 742793634 908397104 924333306 948409261 545072422 921653646 555556990 591872990 602822264 741457950 358255103 568215290 77374489 603338627 278556206 649234063 526189425 769678907 843452394 941106519 527337245 773970719 512988293 754191446 474032116 483299438 790306930 997355405 985099019 998623866 996252606 998899309 379738281 725882725 980906677 997833945 652069758 789989763 566280085 897840274 208130818 535326616 491715866 709710642 780746139 995441764 592098313 912835307 763239350 869713673 462048488 981330417 547629871 754767962 7301341 70693553 951603909 997758216 112164571 366001250 326126863 853216045 31931582 669888671 676817263 743851548 136939767 870233826 884255724 959036297 967021927 984124147 322346438 533582203 858595003 992840039 892132142 916182946 573238756 587546144 829787412 903146768 312989170 562447367 922763961 952163930 959107963 985237090 114673412 155043268 542186450 745830366 861048431 908605861 852823641 878977619 840638839 960877737 876102884 975015916 887746671 927218671 535366700 762245778 715591717 824741050 431423680 448573245 244323488 839187784 445278417 820766011 845123474 851415881 325359517 819447964 759844286 880887590 449388753 541506973 484508541 905671286 690510292 814867053 149935772 241439291 196361627 731652501 281294936 879761227 411218707 770169113 320388045 840904745 911889816 940660990 221543600 643999693 440953364 815445529 634924878 890951143 44875466 119388436 60407682 386895047 77070118 173562189 332189054 621753130 966500124 985367008 575631621 618585974 306234488 923440429 540085442 686884049 243956834 330908475 511330537 891481300 513959901 653456371 241449818 536493970 688529734 812311034 737225451 878671842 919301015 919308612 843198148 846659888 648304870 781398823 864608059 935256089 315521276 472172776 560828382 865860987 479068600 553712983 607606103 674823376 372072517 732433665 135551580 680432808 262238411 639531072 344555177 969086812 666224424 815819018 505429992 563349821 96725574 811518467 209823965 234053118 297983673 879677710 487277301 759217497 852869148 988846411 616928171 889929681 390294312 552718797 716819083 895535374 992534273 993911378 106610826 736515423 33337579 550553252 811341030 903324748 925291517 998199057 774308536 857734701 185334900 299233362 161731182 551215500 196363145 746199559 867400224 952274034 823583914 889430584 307567943 382376614 634139582 755785631 182026953 848802255 817651169 873243267 634988338 810194916 400363608 637991549 151913542 489364937 379952668 461107734 382427327 385009310 73850943 399706151 546775712 992554987 188909852 936919381 438854154 618189808 76484650 102147493 944747960 988595120 837906785 868339116 156367417 960685228 704609772 724433099 584480028 915853721 243906064 311598324 710523146 951154306 319619953 371551367 97350045 920375497 463251654 818816053 384408067 865703290 907780397 965013496 300841730 406997270 402084273 438883512 411451144 630965655 294904311 343323047 546759143 645423632 232426300 972245151 385290899 598625125 402566559 844303743 491151741 530741500 914666737 971267068 121307150 126769036 510382527 892502034 64223028 920738211 312401948 961391562 472104940 853777086 276933931 918138540 740941025 974504626 969918550 977634700 688997236 972330353 590288221 860463628 979015773 982615572 411990737 676657441 159534368 844340020 29630060 915731177 992877246 996478197 876545879 905100025 695660712 880116573 589300115 833784069 298419187 702172322 705595013 970082886 976253557 996699488 261467832 516467069 390209770 453879535 448457987 466397077 950625405 993381513 264774444 834010046 137126289 301394925 561585705 794719741 246069128 456425290 376608254 736946696 328625296 934182269 498791297 752467054 990439523 999130455 422174371 944174080 703377107 797218640 342720860 531543015 808130164 902997626 642431011 809640915 825110476 971995873 51277111 83363829 996526475 997620371 307948010 820855747 854249800 870838107 298606445 433953400 403608674 542466925 174170126 676542181 324738476 875750447 616820260 815418382 765501206 843435628 833468841 909247810 787862936 798979697 173897797 869726608 925898818 999250773 192955191 728578833 184360280 247821095 177674814 721495555 789112783 894672266 914864939 983452577 224462978 763012374 741231610 783336225 944469551 983996687 618197742 976038800 911588534 991281124 371482445 991863559 524710587 875298743 334316414 889506990 344744714 572281099 256303302 304588940 733639931 945036569 400421312 485912959 665774494 821012120 356665811 472012290 84583346 409425143 963318458 996762291 126893802 919761357 129043584 644187624 659419342 980679156 197547472 273611254 627231241 653103701 810708235 931462618 732310870 746184972 312678066 495855509 655061326 861974155 426590548 568984578 708244934 740494428 903144169 915831271 394289349 919726627 216928097 358674424 913456177 927321555 606817130 714142358 714655306 912030863 286203832 512887203 828426017 917256325 421740416 828188812 890709241 912674531 351145581 909905962 694157884 792225072 530100845 707365444 386341109 400232284 981798497 985088322 707218691 869361472 657395048 783387667 262255691 767457435 733432902 810608500 481112393 628316431 615598892 863947179 284313966 664417980 954164625 968234403 507888790 722642426 820704137 975300634 166042243 997846966 705989423 887877657 542401456 573833242 789838832 871878850 281891554 292854306 816409549 904038360 900637712 918900276 605368790 981291698 967597759 972901343 766514974 826203713 34877544 335183334 220313828 811440804 760302266 859319575 886735315 987625125 89478150 242533905 53087243 870535252 222750077 713273498 178947144 469075781 15149605 424498312 309945823 471758662 93413828 135267016 820443448 965199086 505152434 584898976 633720098 812593097 392259504 718431271 9357651 49205585 905010742 972043348 333409290 952778028 100327756 840978805 711912104 755918100 505793775 885885161 193875798 753302506 430365990 602175902 222962675 646462811 655479745 881200008 450792966 633479106 348621215 833108713 665700085 840121239 795175613 807983576 739597030 762143217 341382194 969377660 884177493 998184383 238152237 794952701 192785226 352556389 94650181 282838240 289832157 444263850 70799254 761050646 379130144 701793393 483816415 656731276 807638587 971151665 776987337 994299032 511647737 809258499 990639036 998816823 808102760 995065061 237123597 940711643 944332377 953572096 259406669 577796029 660047571 735246752 164827176 329183852 55868735 932130464 494733211 910337252 863880094 931848845 995768728 999194155 780363703 840477325 106754302 987387433 559355340 640977500 698696476 950061540 504328818 613429306 450420377 909696007 260832762 387135446 342744959 557956863 590551371 729032045 542652695 557750871 642452794 818504614 306889270 633255956 932572325 990304274 208364316 341165716 974794598 976725971 252161378 374900657 19027345 688296883 413416733 504632040 737763759 757895935 801911453 848744105 439618402 881741351 949376505 995455601 581620666 806947484 163206204 979124326 94569728 218304230 793507152 806204419 550017716 740194410 14463586 552904844 502241221 989199945 506940446 938372565 719467298 950598586 325497553 964253816 97768708 197822313 496577615 675603997 854813995 989662500 552296103 896024937 495021432 503204685 930679043 979497809 526899029 576293356 928624634 931153740 284663851 509240491 814160982 864791367 834373427 927413257 305026037 758264387 146911108 474905174 587988394 915255868 478332257 812828069 98753716 995005821 119109725 847212904 17498469 809384818 379981217 468653616 505107271 731352596 895098258 949642175 686439152 950331199 283216558 881302168 896838878 970433659 686949104 746544090 155134469 844842441 854485420 955215927 30039334 930569107 397812479 892836116 527326190 741720412 187285168 993515997 169485059 460961526 123813415 806729866 755217070 948756902 45155231 432723169 108996353 326979868 913505608 982449852 5372334 651162097 849569924 924416558 698493918 998303235 300867389 571594745 734224394 784755272 827680773 902142662 773065003 932418162 336269193 999345473 201898597 603878861 913478700 978830998 523919680 543438241 84608532 589259916 526280752 808192887 925198159 980839412 887064707 910051441 953593052 995765703 869015713 978332848 522947048 713939107 702171984 730030142 483590971 548758764 379857864 869332223 479245982 957098512 941025136 951037349 257859786 462013938 423014434 531724412 81110028 401829015 824741648 924417920 852777441 854749942 707063722 734485883 121554709 340556877 309396950 641520135 562059102 758083932 199210937 873989707 764004522 988817398 680600318 874414874 668160851 898408605 290382442 676882746 277278298 533075629 313341743 446209326 207790774 667787592 133108989 669051313 358324465 894261344 806366180 857408530 598411290 667956486 980430171 990333759 510268195 707923422 813862744 871544618 549056875 923200255 98239622 563752359 393613872 533997201 980510403 990749031 202632894 397160095 949634748 953679979 641957639 766161008 498831688 846141007 118611196 870693745 802834482 928528920 7101229 75695023 292010141 835984265 371806721 423323315 504981169 794791409 248869510 982912021 215714757 799161823 843739616 964188271 404581326 439949014 481165692 787399801 295013479 539597500 1665922 655722512 858425059 900041458 128039569 598850716 196726653 534197466 131926009 597360237 135496730 848506614 837977984 986119287 906586646 996382480 885125520 956927662 379499763 932711215 630100393 724327343 730099482 746273924 529748206 702306002 889904739 894017289 599198354 615158177 48444651 266159411 540684612 948804646 163434477 594945560 545268258 591439479 175367049 335564011 875996428 948623169 893295254 895543590 687292981 847171350 435572163 580768665 976357156 977339478 613105267 888825479 357856615 909744918 272846321 312328014 165511459 442644316 741482400 909254203 212079153 569142105 702772330 704561347 695496395 772263479 906066101 917346882 608717562 869506887 833861491 884811665 286924484 753480734 435454318 474717342 952588959 972622967 167862682 391926243 443309752 970801043 861193856 901127920 254028898 318198636 155320733 928631361 928508324 989589442 897347802 968737906 891192524 930693249 459967121 709450227 493028134 960233860 992681524 995766787 102153399 816569839 350000922 615500766 621245194 629388695 979442076 989776510 276139834 558865416 783816044 868258384 460760229 771364872 32065716 179159404 132346847 681449918 725027114 950203984 34612622 286255059 185041405 823241937 60115308 108037436 807619944 957035393 58194097 749355563 369514528 783676303 174539410 852184997 768193779 967410466 368046675 840528059 186259927 880914401 902472586 933069831 989917665 997691275 439091006 769217146 782230327 993561525 249886471 420257195 995788634 995918576 139039690 477721522 669930329 975951133 235526477 487391995 160473082 826468064 453413615 542425182 571699983 938803217 945885878 968990211 73898326 763831883 361228081 940678060 928808509 954917451 58426538 853991011 435257697 645200229 681394396 696083155 162768906 526941632 654874538 702618250 183474725 695589267 959900006 978083038 859783569 981011799 840843544 891191172 563446221 711609095 834315091 963770762 2361863 897066253 126191338 909594146 641639753 977211768 698367868 955579769 75386493 727541154 427233638 541960142 655018860 688413238 614249616 801361952 132129199 271085482 689835387 912337406 847566320 922358139 207683508 671372070 335140256 625739036 244826903 956548587 453393342 929154106 443739252 562886031 312533643 915848733 960800501 971450186 727808418 861760622 751241066 830369753 269362878 535285478 822197228 936698736 28138675 186939001 749968735 837141613 840613127 855147856 395147080 705963866 108776367 911154438 482749175 803991248 421953953 979151431 117226469 201430494 254693760 756193613 1120386 720412506 865103145 892852846 387835948 639572784 722349740 822930632 514459783 860184010 353838406 969455516 525459809 604587983 573462216 831803740 126138078 920745037 978563892 991610658 434542991 690996097 169089881 433527326 43784435 453432699 866223481 972709237 981428016 988850791 781428643 827248195 56571047 594065882 773355856 945756961 288232814 732912596 239874789 274032409 837402771 891882734 75056593 594771562 592084275 977697394 234334255 599761342 331392549 935445459 782550721 811036901 126697202 896766693 433083437 945383962 543016108 909026234 14141910 53258702 148240579 829267121 692091498 840378172 5837035 435614951 82464638 922840955 910575431 916880075 405198861 495301986 123444885 198855559 504312239 808519563 709114610 829075044 525288707 644124309 928845071 979044218 18724643 579497947 347947234 701040449 331950630 750039431 459627344 626271043 907021835 946181800 282924200 868106497 915108348 926066753 950491997 973906584 671910492 958110613 211006330 863893000 585619969 645983633 563132141 886044953 729528431 785563292 389072994 747606961 423927166 851988614 464269379 763991141 902576185 951320841 934900395 962567327 654451767 986742953 860104233 968248880 37694209 946014787 476774714 835780387 540162358 995308383 420875520 911392220 917763565 977679336 640594758 880356379 420480004 987890254 356439471 514474908 579869189 865750697 650968945 843868960 128220939 583387074 634203548 645967832 260047596 777519705 681473798 819765581 365919909 552638401 563412210 651117346 778659860 813770113 837363810 840234830 262414562 783828724 700688659 820425379 872370454 964572734 960586404 984121665 474604001 781650408 19833218 694024874 543932274 816937443 348287483 648636985 215690121 812878504 415778791 686130031 502615525 676469918 112785584 844644912 185114209 582902583 93299950 682246503 494896182 832055492 874099132 963938968 543387554 680274672 662976755 964794974 783629773 945710297 8931274 286898234 531112823 796568910 813506281 939391131 654777341 983740621 608647465 937793676 529629382 616549726 266848274 385787831 623499522 848136027 978692222 980423077 528640845 539820724 247000098 598171504 46717344 771179147 709514852 825983586 798184455 804905615 885486434 941538534 756115462 928731093 100476881 515095062 21434881 394177218 979566524 984642832 474736095 640114899 730539631 854734716 340592277 547400257 978414098 987109694 146462041 451842756 779450651 891004476 760701993 790520246 840068585 924041437 781963259 997259840 846193573 906043162 635242366 648970978 946009585 993600755 669888025 983327934 981651734 990398235 895013924 992561276 927186632 985102044 725641515 987223763 554817482 981974104 513563625 731567510 950050633 984969338 772273723 913641867 148106364 415889093 11703142 70914693 363431206 866264795 664361566 982395587 889275459 894370966 725870991 918176063 437604872 558561939 826100133 884981375 993344966 996376965 437231347 972432519 176818345 363573831 979936527 991695817 46892529 87090049 804170424 878082784 149540571 402028037 971611145 986186984 162482459 277607660 67814312 124174129 127346443 170033352 117709594 817380959 846774962 856970814 554149931 570872775 565361789 654201774 452883455 854095126 918227279 957186438 83702659 531105770 756131356 870848043 411833260 900743702 230911463 745088368 318721217 366346403 39439076 78766144 59229934 620418721 551173929 907651070 898268589 913304504 91786483 282974540 925370615 973256976 454656343 614457018 131461768 693167925 479673408 632949187 384311167 826964292 112475998 910727552 337251768 927704039 713292022 901210516 961185620 963191289 661290431 803254960 683068345 971814484 181038504 478328412 491036008 653315999 672377282 908566756 168037379 653211383 361537583 915478916 182568569 874540667 732076554 780633583 367753770 893744959 967569435 980756083 572341921 610302311 4966195 207899693 170497009 867867779 498565617 804716983 888759148 986680338 68817567 184573932 764306343 963481393 859425843 939532360 355839183 783760867 920423641 992640959 249815949 799064227 545702224 799177984 342798973 947351258 500549302 787155268 759205131 991963113 262772985 447803862 118206126 183034637 672052084 826846684 782015037 881183399 772274928 874086838 824458568 908079795 69027070 484683998 554450496 846600561 462969363 878121951 315895218 334024052 341212790 561206775 514059324 882544264 77680905 718195487 797538248 986469372 546467910 921103197 19687843 990772191 198253973 587848076 877749570 962188248 337751291 644348272 879419804 933831379 309839206 659128038 390676934 948125373 467198872 694419434 590226361 665709036 70720589 742735033 179148644 528363262 765656535 919862108 203718725 682436632 552918462 727884376 348906314 602353433 565905083 755438596 666802021 848431211 122271710 426701948 815124230 960517288 171329079 945307256 565392513 657280174 469845703 965809924 642584636 834737883 44599374 670832259 306762767 376730042 874381382 980908122 63531356 627666328 788252181 861196639 80624548 141493440 199142273 299115809 802265012 992001767 872966517 917376095 594858938 875749553 231074301 349808741 860491843 959970431 932940786 979552217 837895142 884194222 572437056 937183704 360279108 792749362 740284138 897418803 624332835 845977342 687840752 793395936 104833703 990969304 604785146 948505180 190114971 192173021 830992998 873090030 461270885 920230148 97831066 208891051 266450876 569446247 873005691 963228817 244007052 669666108 250492259 974742041 558428433 637804128 751448187 777984791 873467178 906366964 983589325 994739372 412244712 475379035 343730565 511994547 556239662 751083839 538904767 800829324 291738039 799742955 326059800 559487974 740318802 742693414 465786542 666904748 462596481 834798077 228558120 745041239 121373404 653755051 866411110 923863409 340435952 593992504 947182476 968960165 98007712 385125948 761449832 864449901 900132863 980607918 424643530 907821668 225773603 925812453 443893897 856109082 758807372 983797205 866259142 986549979 23495485 371542982 337604008 558878051 630796845 739672521 660721155 979308567 840247103 920372508 749882429 843654868 636335868 707162246 324686858 790440635 600246272 828079422 357173699 504363882 84818150 602214668 192698847 685601928 635251935 870275891 705780571 766606814 230079741 664130817 289504389 945985789 384449469 898057813 813395118 950049567 561421419 889133790 81570758 401895653 902041829 940560148 942225169 976903730 759495852 779499504 548799773 862548563 297382871 604104680 925414170 932265653 296421104 420114964 627635871 767865388 597647676 868874740 862304015 933986777 781223762 954606275 968922621 985324912 52215638 86863994 424394078 945789568 419572203 775481535 110589828 147991938 309666320 756033811 791076823 805955497 819547671 844832346 700797314 976558072 324086659 628459669 762526508 848680640 326574867 609307865 717721233 850458221 445471621 759059665 697289109 843719781 933651482 997160071 793060445 916145105 404206966 577904458 805461538 972531970 328991214 652786019 317573456 357603911 699931748 710350172 565660244 569098023 729639572 859234783 468307359 862644476 505731306 898069235 416817576 982046313 702681659 885632904 157258105 173366774 844542759 973634408 473399595 861775573 593216105 697131796 162352936 219651551 808203259 850976910 694877269 840275511 564836094 589518264 73541147 416200729 220165657 736139342 203311016 658662474 640829519 846839506 997888659 998170885 233892097 628522681 584704876 733036237 812361574 976378976 167802511 841189854 791773594 993627996 590175252 607371276 496904994 656875663 323633462 756642697 656284041 823540489 242511825 456659435 909133969 924377409 955297377 961789207 244609212 882846636 839419339 934997436 671568865 805086508 326986788 514450368 697185032 914840219 125318953 143578842 482877086 610663412 242125228 372552566 758176990 928740558 311679292 940917628 182721525 869980899 848467108 956164914 839818307 861663491 417159143 644289804 657148420 952091199 655667255 847543113 315094348 676696611 214368465 551802785 536030545 723500631 61523684 491173714 519926309 822295178 112201514 972286909 433050392 791899367 957751305 973183688 134712889 990970942 98471570 611564197 352496811 746961993 893097271 980328659 511651409 886628289 51219925 436611499 856608971 942108055 929090643 956354465 589450022 855703818 198798726 748071053 84478134 328536959 396629595 991523832 523868645 708762612 171674509 936190166 103232698 551295183 237587789 402230486 259783358 841247768 424353575 645955374 340690870 927392966 66627470 547472984 409445794 449117595 415422877 792616868 36351324 382845546 843458326 914396571 641610236 941233436 166592757 703253079 356968807 858877982 460392515 760263291 631636637 734474804 723029569 823766260 895239126 995292459 655215772 705486869 551563984 648458281 430185760 490271262 69441296 133723530 663009588 927924064 117095635 464068097 413896476 697225976 794034339 966562234 736176834 987470515 646848796 723808220 518052496 998955527 306311817 494877466 380161062 672763261 372271154 853655579 867983687 901984713 34419684 458102085 811373985 894657781 607522201 684447018 847193192 893362977 98745396 612279377 312535892 893071345 435247911 902728889 468224372 884311387 741093121 894241319 247786251 814009909 620343418 684075634 960277314 996413150 827902502 877872334 546638660 642866463 963098186 965066357 600840624 877488906 838898263 979095387 850923044 963748689 301093539 429673509 673712156 790994143 204149286 806379157 858818760 984994864 962381764 983289726 900812546 970733691 351075609 869097386 113983431 778089597 432033503 761616052 69803171 305793616 875014559 975862771 966142202 980809697 558692544 755560945 369834501 406512737 933986580 975377256 917542652 985022208 246842494 980407377 301897695 305821150 67748914 356836994 193615447 390620528 668938940 864045826 608688207 842152455 45521920 982817755 496617552 626285839 630617159 732474215 73027956 833785752 186814069 321727306 219890432 468592694 181819703 270831206 499008125 979330802 427418124 826084517 698620587 964991939 118813877 210464816 379613349 547483413 180708247 503141359 301622983 593937467 639208764 852840338 147093539 722800187 204565751 772331648 689260400 793550048 797083581 980867427 210993603 924922409 555754370 807889719 296440723 623987295 110270526 307606035 433197891 863662929 452299635 558865125 745071623 864814740 739766225 949691266 306113116 338682867 729294431 959597919 221172882 992328629 827322119 936957430 330898612 468919728 689752387 726127884 131686755 550886798 982470959 985278043 804755547 894008080 646257181 653164453 339155039 973064790 437099608 745878327 782964251 930494952 581561710 844165753 279567054 542416500 684426268 696490321 284298424 954693464 488320697 495988060 8422433 81638771 953488526 988487282 173545128 402950695 659190621 922446591 940931664 968310082 377000393 973684890 535423082 698252565 835949851 874140705 436692278 561688477 386320795 699742623 196180128 769355504 172298931 751191170 23691100 526246478 729371623 809231718 965458419 972697547 49170581 426669325 149735486 660301483 165937042 439322991 619998515 929245631 892145074 924083261 947946608 988352211 10142294 708442619 929951742 972235309 275344535 655502803 326836415 440672909 421598156 790400391 929205189 970765791 126232448 282403147 314393961 518817523 539251878 849590045 202453853 640960697 685085379 907520157 641941018 922156264 311815066 724062543 125470786 156487267 851421504 942116427 776432178 994584019 114301685 367940305 696496159 807798639 657024190 998162829 503964011 587014087 443277705 911005055 457772990 919409293 475270927 819965771 871743 40907376 776025073 965003515 200663537 463341281 600708787 820922093 475750021 917157499 903151797 941805416 468332060 711733862 313938799 390915317 793164622 923376386 329615339 485658035 385366473 672370494 109731952 840547176 571686388 628301070 780419696 952715529 105932484 145398759 269982177 699389996 10883868 447270414 449885 278376789 83359128 730163961 57278453 804450606 120476265 369740598 374295650 605822689 154295574 757120746 249076410 417376857 265483318 698549223 571412057 707016290 971060890 993175299 141364564 829719298 522569453 587764727 804584380 839707216 563441411 892840865 172621784 204703301 858450524 983879030 8870920 970530089 410227820 664921962 104367620 703457516 54597706 906951252 654139861 733806257 126371957 430515744 791337955 974369270 178138583 299513313 24673062 960521382 172464483 586095653 432073611 707893434 408048317 507716579 752960891 988100636 28102224 701002132 760480500 898117533 526981834 947571450 394590492 874655037 38912638 171062780 947034352 969737177 880465589 893083204 831958083 875508845 375747402 628127588 308846478 487760298 992506912 996924106 465153853 528966324 200108745 500842525 136720673 282773527 692377962 827178469 978288833 981332440 63801931 157057673 939693053 979470241 449238435 670011167 964090053 998829517 715322355 830170177 661548787 742444279 348845287 495712595 365735578 714676271 497402439 650662053 738052620 855088293 32916267 373452008 115915446 125759131 906506756 945243256 936471364 936614893 15434287 753321939 140650320 305573843 452878381 746000955 928723248 931958267 404543660 828278503 44316115 492272737 174757579 530802970 571171469 972205394 925702765 975468339 789538039 812711005 602747081 869422786 317515131 995160118 27780507 742126408 55106073 202604846 798420254 805368677 844165235 859504301 751015555 972533678 187469563 275480924 169508815 324893638 619320911 737719199 855934148 927428242 298310001 335833130 228969467 983344183 784967091 992379288 991492556 996136374 310175164 806146367 581622161 582269114 502450976 810517651 632226819 676552923 605550239 660038480 671204973 796191983 730776861 769482701 174271290 466318161 549761859 782794084 619199128 943470135 870469634 872558780 435487080 804461131 542003353 576468300 643718723 868812160 825885965 829865789 856628027 893718349 825750436 855495517 995316769 997251086 514144838 941740766 735765675 810370336 439238500 728848033 574080771 664587522 394962297 980809746 464901864 749958985 41351291 186382256 690921670 802654942 698535358 838027760 447592666 934410475 906462400 968583500 932773679 982485400 365056972 654509830 883192156 913226031 323546383 584401196 360185399 765805179 186385898 717934501 980234687 981224634 138949787 553995476 883531404 935915235 361850180 732840629 576306470 583808774 853097030 963880694 301944511 520596939 16104031 147526924 569494310 571029204 972227464 989105878 285319726 602964241 960369953 964500648 937720234 973211594 592567373 975432810 132670041 705021499 108189086 523655580 150717434 350252074 302439158 595965411 123424154 957949987 408508321 729401555 479191164 531011570 582646274 995081736 508174825 937119592 585252991 983798745 889987602 923695277 606484553 903107806 334590073 842846865 224745070 629382155 852813443 884645195 480390310 606988782 687825849 992548549 994496726 997313435 851701251 997940476 965098764 967133644 265412434 894838222 440385313 440530591 363481320 386804881 700615696 964208595 752123458 781250058 753370371 975692092 100500433 200403356 932397942 976157113 462019023 480033123 71185488 753227396 117787007 195728869 515225073 905251687 573246618 741021762 456746449 505444554 93002103 250395371 147166134 740497647 232470077 281634504 762526770 940814739 613307824 789270921 22781062 541334149 86124532 294571841 239321928 501657241 364966917 709607584 847160086 993270638 728766938 906258205 511004447 796596857 500829687 965500150 469776008 519736306 115635218 499333137 79467126 421311274 829643534 846455224 547653170 581619034 859326799 937638517 252055038 696112708 787064504 849593388 539857425 942443173 763712134 779601191 104566528 687020786 377241125 685788470 901591063 951954444 924492026 962163419 484344570 708831906 258341539 362692643 884902069 980126834 81829303 743304715 916594520 933927832 100676660 603150432 548263322 717271007 817002456 932362753 208147276 721980704 685091407 686784819 854695702 919969595 20601105 251498805 546342897 986828016 320857986 861098195 981960397 987890711 843214088 882094896 334134794 442745000 709037524 903389115 182519048 963918010 24538774 215273761 378595889 664936984 345571530 784688651 51251944 710240914 841555239 875103158 958136830 995063065 880670041 926878626 454181855 640079710 40779043 705518500 213639995 599479865 942530973 947989079 501790131 960653491 88240388 653164035 773954105 977708198 995610529 997955215 433401138 585812339 743202228 750881242 646698557 884169999 256073779 931511780 555943092 833621546 617339491 852519221 138602493 777228690 669746104 980151578 519291656 545263662 204299859 869361987 466066034 744483011 569204189 902705456 857067668 998534674 708573565 863036083 430509784 465751185 906524338 907846749 178504943 405235605 573576787 762137893 800460032 943195076 928772988 988910381 624240666 988505677 91694143 463009001 360325802 513240168 150814935 930254748 334353171 742935042 947034009 959671157 544819918 877522081 915660412 920403935 25153873 417242504 380953835 670522693 26618005 794322162 959337310 993724704 48112788 49095245 834050893 978344857 893138077 894999490 729538246 850963610 649244765 861053669 237562228 490553322 917645010 952442705 343568015 691107949 499505539 820769125 216785295 910433837 239768098 977852020 398430104 728717425 790656528 793386482 771449576 977925058 951592020 984417401 74977447 827549166 838720502 995730650 352208843 955027203 401900414 621515640 906347842 959047783 290120204 807014693 562925004 851222237 167581579 568709631 601976493 705275150 714871380 946116177 818319248 883683956 380191639 799417748 17230636 284830096 955049561 967852770 508570393 585899228 337845958 472365238 706868283 923659444 60205328 782292495 333893795 547293326 15337733 378959003 560377599 884795662 779271886 913748462 285662704 355000351 210216084 534158404 979825557 992561212 561654360 812989145 730037438 909071647 788548804 791826744 536172318 923933632 388365665 788157053 363712347 878976493 497474903 892521944 530546872 882965104 39859266 108960126 285097313 291703477 791105021 817861246 850397612 872890577 485748582 604151258 684291469 723243381 780502545 837706877 157415927 709184160 87669842 190347545 597830077 821677385 721498274 972396059 638659215 911444501 682825335 813510508 347798670 407783227 858543351 935646075 262659078 988142317 473767814 609403755 954397478 979727454 444606907 758473366 453963039 636495218 629740270 820488567 391452539 422317516 175612971 404058586 87952836 184112314 914291629 978709795 426345660 589042303 219991092 228290856 53773561 363839150 530042902 637298910 429171841 816202095 778882919 884145955 926811222 965361653 417945556 491510901 914123514 993965493 921464110 992334415 646502633 865883497 505187120 935277523 137325987 823172926 501386592 610868976 661235223 814579355 344997830 852368304 87975161 168606768 114612543 885407907 960236216 990790981 339149512 724527088 761769083 956996066 137051323 651943380 51820786 934744842 737022183 942682314 685800836 720250972 892333526 949743981 768156242 797815146 759239281 968324399 232199854 958721021 373780271 778713005 88919500 719205449 589616358 636606015 37754113 435258536 228039226 605404503 696374932 836416336 860876351 930821298 326372832 355830125 185173393 492542719 264268445 805387420 982001005 995631183 300436656 306017016 480623230 824945225 507659295 527307606 299841855 908951256 822209483 943001677 45371938 60659097 635833854 957733520 547509254 980212228 510320820 639471696 253714406 544136030 663317148 678298679 499335342 725489308 503922260 930257137 528770347 532954566 203162000 478385110 982236139 986549441 433957819 656545132 838243182 920742914 269436608 834976702 933438841 960108582 316416106 877284525 213321278 719174184 655113466 913043373 287438792 501165512 676531067 701032563 47418220 484952575 72994339 537084095 150442626 559745501 990864334 996358281 319662772 938405195 807091378 878434487 859715188 917413832 515068208 604850577 221095053 871900239 332804747 663927545 720616429 751382375 535781305 705468986 211505412 225370512 738757028 773278301 807701357 827651833 246766122 328399302 424104189 791571347 27243220 508252528 239082520 803158179 631596783 883125873 591588163 839147198 340602770 350704057 943239347 952427268 79028314 249597157 503892645 646102650 41293861 102799034 494119410 773554208 147148429 321988496 790638484 840672367 771625177 993005903 288850128 929215822 163315419 829483313 729661361 979471658 714616951 813444742 413265620 904309073 557665522 746401432 653446805 959029667 686181125 925492392 332678857 740356082 626490460 908843061 138673689 618726842 770872341 835642991 739462504 762711450 766534393 777844464 114492272 223344472 89170850 788511247 550375958 847528088 887326815 960979734 973947685 983231258 32331073 622962083 792668543 852044090 692208934 770910213 232244336 589663722 371948296 829324170 931390732 940775223 208417290 882988620 316574058 956401471 792853661 974826978 485349331 869992441 393816886 555682753 374998520 912712378 986151500 996538493 245364446 893599624 942264293 960790874 907032624 930282957 78181168 888224378 706345905 740350490 778864390 977570251 91729151 578540503 940241532 988874573 36206740 113068979 919015284 927291075 418712550 595975931 356410290 608959898 377262008 601030868 776169330 801782253 738734327 742314843 258053178 949413542 696323254 698891642 46517539 457290313 194423126 242978214 165282727 192389972 480785560 721780399 261509082 739363285 983815845 985468161 739772886 821041849 931435827 984798099 770214912 803524851 983177292 984364000 518751964 544852753 89569165 910201600 479604394 483895698 186560966 671805484 913674453 991028558 506605815 907611419 877690692 892815985 169501793 917649870 967357781 976995389 408004898 633018313 659218964 963351131 69004567 461536868 438221534 941814234 55057800 556904822 444627449 663736577 869321704 997970749 830083461 880959118 444731804 645928107 516976148 618334293 821353059 901261098 912472140 950574537 931250529 940007622 576371451 873767495 498369982 792474745 531239916 818549726 558859038 917180129 202094300 916139552 753865033 804019113 840690192 891346259 755440375 867303111 887830307 982903727 102778386 682608132 665442703 880117630 131763217 825792964 400132946 576366062 891554815 968789779 701886415 895746077 451059906 718362692 574925879 677791040 477479649 762375089 799760187 807194057 568096076 967439196 444843976 681198449 927120557 989978424 853481272 923621361 111581210 336206464 705710407 759933024 327363389 443370829 317328114 508817706 898027026 908750324 954964623 998538365 733873048 832323121 392728875 497245269 359565062 913593829 107562896 112650666 590879824 917867386 167694444 497997101 402944590 414922831 329323789 757307258 159496631 696447723 109540501 513373242 246272214 623700269 583209929 667477035 394613455 938446619 888388306 907371736 828461515 968551114 722924696 916899206 166372913 286595444 943167660 949210170 620163760 683726153 497727887 915938679 464754931 661891603 696312606 696361702 786116994 817302201 335132944 376055055 413325708 880988554 124033193 668174624 657306841 881858660 771446663 822480744 719127842 880771753 216829458 722174402 38695549 728898197 112273767 271753322 937090717 979580621 578506373 914153842 631293945 687234825 352531795 938470245 638077079 795132241 311350262 555417573 267304209 973269960 828718428 917763342 493801481 773961773 693287566 695711314 817398891 997179328 480067378 855248773 534736496 792253656 317620793 524927031 818985362 885997129 308038311 508249773 805427897 955826385 24954063 845946104 978020602 984686591 718160386 803418140 189407655 418505431 529192022 591090645 823331944 853839762 874548023 893242356 332074098 706048091 244678493 255000750 326496525 844798105 311387812 352231934 466335051 550978211 416791718 954279930 915674496 988464778 652917099 803468192 867484868 907891924 416555044 448217143 702307436 715970314 133670732 787306888 378621717 546347810 857309899 986181504 78683074 255762249 635284305 930778430 924085811 998332595 89349812 291728260 948174615 986576372 783229255 801915490 279650777 358133754 969924066 977797987 406846696 439056859 985378964 989239834 589200707 869943333 690604705 975365062 706833805 966937848 56585381 123631837 109287183 866291390 106407149 762470045 170512228 898027069 45941136 676163610 741851967 745065088 327064389 428824816 448256855 995669020 231804048 677158196 87060346 772362182 892546354 945068459 936310588 941211756 592498003 783443588 182251288 563732539 884769818 951875887 60883110 708918553 159674076 237680816 33496118 374657758 614407159 878249105 321974272 637980198 644112557 928997504 67633780 514382504 494949383 841725649 288581237 753039198 302531385 628535102 814591945 926327526 392648498 515341528 497118766 899789808 700883298 799342131 467312560 891626635 174178060 243448648 91639805 764128847 847832131 929006515 685983332 754566428 476469513 855386518 895182650 951416184 971041452 979461188 974102897 983198265 416638152 918090563 626390353 994943912 536131210 597936866 803641827 960840887 697432486 961722779 939416135 970379162 287583906 587784313 118877262 709437893 43887503 433968207 684246932 875877576 690316287 917601654 393326846 896754081 656451096 892030318 355446617 441424555 639103885 946719668 679777415 873174521 118143417 262505557 756063840 870885876 34269549 450614574 447400787 555262433 585283124 834428189 771960573 962849188 779312658 926476567 745497543 805803055 950903651 977460715 17078889 331386298 466390819 816574469 619480447 955977783 678120948 926912631 426462402 663268167 592991711 938445224 17353269 911607947 374828032 939042184 106715136 806883064 30700098 135684358 409607607 825538621 495920860 637155270 461946935 899710050 471905595 912303849 445014509 703407074 857613606 963931621 613698700 829943735 643668612 968637186 146264361 914625020 755316581 815474561 18548740 284173138 644771434 985176076 732958513 944997466 818761107 839837610 948067573 961862977 916468494 955173674 25312518 883050974 580780597 698659420 161193818 409185647 258395862 724919658 280435115 518766709 621359278 783535816 840920667 934604022 785677392 948722901 207547883 227904366 494254911 996231660 340254557 951915855 551052944 664293760 52498835 406425812 992079934 997969759 850800191 873579430 138161779 626824813 410020895 952593786 662851867 880503591 557070416 880085682 984556559 999309068 125401632 186841952 202224609 362562380 737007148 982582225 813323902 978184362 72587433 654190996 471309099 501576889 359194260 748280838 820689109 921713001 140411601 746511756 993564260 997962512 761499405 946289677 160000439 996195410 642829933 727861657 820714699 947287297 44643338 164561024 722591014 804331986 899859737 983001343 840499342 841881724 651382099 739202562 978290817 982889602 767646092 909821959 848298738 948079191 367362293 401569984 583305522 746315832 300312442 740871667 560526805 690503807 122392623 554065679 803697345 996019343 620331153 983196838 853322387 902461238 299912763 916766059 949842547 964496230 628434877 806364117 825680443 941979326 565034882 927383121 477240475 517892239 652455759 691914591 680682515 859519266 850750466 899790706 469752754 498573970 462842877 885964589 850050066 977843678 880037661 931283816 237258975 321931574 411980319 637312374 392195856 708023607 605471755 680664526 492803340 616071094 532012239 628949940 275768514 623613297 994698685 996467244 684932773 691535519 769432915 991501627 65726572 328764158 983339863 998570762 349743599 670607252 569332432 974017401 315259973 675081449 915539192 943631730 420441784 568484555 119715756 316298564 536974625 734249357 646676252 836978325 170273814 198200620 291281166 587804126 974245586 992341584 216555008 375372729 942569519 965519708 141297913 264856282 870675409 931914062 713169791 793837560 732535338 861429863 647401768 808651782 190398804 852746086 349685449 376483783 831539103 998623357 393265910 959606536 716897401 803817183 647700235 953334936 649670274 806522415 621381192 711371882 812140321 973545448 995048866 995389921 700895349 936020977 11133907 451097177 570168129 685458140 768583485 927119550 50774391 575433467 70352955 333846639 876228937 936836217 296474056 720640956 929891961 961547932 85314631 451778474 237926159 955197492 887523789 997924008 975450388 991709445 95495258 393717327 71031933 601200982 506774946 798280897 408416572 757608272 325722910 988002588 963060996 983293228 712357257 750872311 822625398 883919526 978622157 994501177 565374893 837337550 629973864 685071133 947145847 959333630 753113923 812517267 771186988 883980302 271250317 727388169 871725226 907011859 974252050 983229201 697290736 855099766 829440925 947749090 271214387 903759102 88100562 472821371 669879463 691619508 988112179 995555265 210888342 990640264 150944931 894303760 715990187 765165693 397340956 714066546 693967299 802218722 467127839 876495065 164046960 692268250 587955820 987927736 863375402 863625677 778114443 986933877 30308537 871538918 224677929 366156236 413642809 582566764 76144196 275966604 891139806 917317997 762902414 963664186 81293159 498594277 161986571 675125126 674184628 684046016 63436291 142129565 621282950 691158174 412143573 976456341 487110021 674719649 767270819 916603071 621001372 893449899 556140860 819301874 207988135 759113062 682891036 772042330 796036724 848107614 422667572 927734194 522126663 583240188 394934080 519121059 988640171 992008518 12426947 830151739 546994059 777597179 586594117 604782353 302835114 895995366 432376894 471434449 354623969 691241610 131229786 824158196 143418860 959247001 962054496 983546497 232395306 724107452 119845595 887008141 608183838 754168762 200381028 969668684 440608912 473478102 201345537 784534676 836719793 897576249 470966692 814721426 747751090 756734120 962558492 980041704 359476270 803678728 427236938 761521672 681676356 933903173 502924884 922921426 355700908 571891789 193433239 466828271 332855289 514342877 321807432 380018970 381878283 810967781 149729172 261772351 851419623 885001810 721292916 785273566 475357684 615191985 853590085 940924297 974306580 976433607 349343971 851174893 964130946 966394531 251486091 419838459 616751777 653421486 692932767 910107798 711618045 847377404 346760147 366352823 81401457 897845997 471278147 645087732 369958549 759375865 284544548 580164109 611610449 800115378 500873253 796491721 72941865 201804284 627038507 922765924 352701032 556033759 705323040 989174037 493951075 831925075 821126551 899793988 253919123 926079395 606962510 653930689 258913759 608803362 762201734 861476927 764661300 873546694 318978498 869728220 611866031 681797701 420432755 857323604 81875063 132379316 464410762 563548351 274418489 935739360 800124614 883675465 276566158 746529305 133387409 830601534 355942723 664912741 146956854 934524167 980194751 986352017 256183779 559464961 288238928 713990185 191634518 332943487 884976827 953890831 989642618 991847655 657588864 983360681 959526116 995082908 151666252 596133502 734843626 966474896 723337330 896656272 439124911 875395729 912334483 981585657 63525424 402010244 556292719 828906335 635449802 980464126 672362267 679535375 834408563 842904871 816895964 892338188 695894253 731694151 509746008 520118627 267143293 463532440 673205207 823643102 982823197 984998341 548551242 824208461 892540027 906801792 335668575 910283089 693326910 728850822 467259505 845149413 316460709 848753651 247729423 475666596 126482651 898794236 605404621 912419076 916517987 929459268 115659010 624768665 329500400 933404784 20520206 780234690 49743550 680947759 520417183 670603793 982063746 997382230 654277629 917890665 984137404 988965813 179731245 323579013 248320913 872924355 101358012 881638423 652512423 894987820 742821914 781820653 1205482 785951679 422846386 580730451 477388876 946041496 226577136 785196456 856290876 869191441 148868143 827363719 992441549 995844047 88645310 326292251 490424917 650920815 276296343 778153953 199310598 234740486 713910516 979054453 762759227 848330874 70483338 352129662 644439038 947052030 138870517 551694914 954249860 973181919 465538240 516733366 45687805 166194613 560976406 760054090 873290249 966221297 50105104 464844217 35623208 810658059 782218849 976013095 65858121 98052911 574982526 713545374 513366849 927519087 782297893 851841181 382050410 382879792 527611180 865813573 541411982 992671584 473743150 554901363 969893115 991684009 606313748 737377596 373764888 750999789 645153871 838339032 346636456 784142204 681002105 819053895 636276056 673337427 501692809 610486478 279213442 977218849 205148216 697911394 63744997 801426302 901301474 985948336 942453368 973051751 215588376 872702723 212110545 331515979 356170540 884840911 276686037 344138038 220157534 383422099 164558776 728251735 976656497 990143367 549458115 716209495 485138018 679006857 698104755 828723302 448262542 797900840 871997976 960389734 489730836 682571029 410334725 847001606 935054899 978549208 894989339 913863226 656993209 721978589 538059961 801584825 493320573 883445360 761508308 928332931 325509972 334536085 222207116 634822293 482945775 783309570 125084772 129701120 585572105 645214274 758336244 864031546 949162843 978631748 38635554 792714870 782338363 786258263 976902418 982720695 121334775 716880288 39876082 599526961 912637725 945897165 59692870 856400664 551293411 892585025 329944171 627094916 464491917 645661806 945475077 961315346 103946576 340617329 67416466 722021569 49593689 861904981 877121285 943514912 314860729 466610257 302309297 333970025 445056468 497965347 657641418 972072808 575438141 697298386 577228079 741268640 757431418 896289906 750247927 814180246 181658112 226283123 691569785 766179873 117043202 673726142 268726800 990118674 969287162 973551057 569757818 934262009 822166719 897717693 9304074 394491294 197051722 303443681 474058901 861037064 623550807 959914102 134506099 287884294 278741779 551314373 285795886 868096143 105535141 459453334 293698891 897393099 206265982 713145703 239555599 572644712 118053462 126416444 127770704 687608066 298109575 684909640 669741559 941880931 779126905 845559381 311190034 382249023 110020220 292058447 704694820 891262073 211696314 801304055 398438209 812018722 491025286 856857423 977716773 995762911 573821136 753765467 772189132 885195000 817742961 992350018 957227189 992974820 893125853 939276938 332037906 631932032 417101678 828051419 671043289 809247055 890763659 993427042 187316994 831527721 624147496 726899285 405157664 911531240 901331772 949368112 696878536 754768533 684347592 949226942 544520541 647125134 715694970 907091176 123832732 795204602 742749851 846883538 482665410 805607911 150128778 420090839 11395302 900175278 180629542 973120359 961656676 972741967 875674938 915290639 488885072 756716520 77976365 521941074 421744854 671834073 214418616 287440321 192945590 820397367 370305509 679887164 834239797 922904035 508116118 534875029 433899857 861944059 504020782 587033997 243892272 821855246 340109506 935923381 323157506 468509537 849350668 879534181 5148011 972947249 651206728 951832924 17362707 636494465 861980022 933477011 36377914 558965756 501354395 554085128 746063418 922667379 640061954 877679275 450216539 596349268 358016358 485526624 282054843 917869001 153478233 637780165 47157461 945082686 520378700 980946594 78592113 347852004 509303027 846761964 335006162 601263777 788608129 876837648 406001424 795492139 627620876 722166600 425502895 693770456 419305424 824418656 583798387 819504636 748292645 960791540 817778186 878479957 968188214 996499229 959734941 984303804 204991249 662247764 963734938 987477931 205033165 899067586 610457535 635948215 955355169 998261848 978358361 979365211 793725064 948297238 283365207 993487025 8637411 486796207 776194697 975866739 486872754 934435665 734391688 860873319 753035265 946727476 585738348 949847498 257827636 886582628 531756635 777042946 159763846 740413597 867804748 893122084 715267177 969711619 506064065 740746942 753164668 991195650 559165114 857552248 730440771 873776278 749611453 809633084 133150028 718772198 340794876 942857893 480159231 502611365 33296030 852320431 637723357 945168821 809474886 870630761 2096145 992494769 738946558 850232972 667280830 949500954 693194085 797285546 625464445 807377004 993961595 998090555 388635021 726896483 564583401 659593191 352705340 831744061 164424913 763317930 27645249 91504944 262754737 945914860 330497441 742958409 679141765 825090684 186656332 369838250 757850862 801856187 815404928 926367395 971324251 971513855 172189431 411109239 340085391 606752845 934773604 951967709 262655355 862508268 843716829 933836494 154008109 240527497 208306401 654257913 944254523 991139997 928053400 986288597 945390309 960260674 947776649 989271872 737217032 779285563 954150494 986997745 849967329 873434469 843894485 899749758 443655855 711460353 428639200 876491849 781492531 788673400 647102775 671371668 565281262 704716166 920973787 966186982 758511105 920004818 438232365 455430159 887889903 971868567 570757475 759144359 302514729 687780023 621284161 876527018 511803351 942634282 178380594 953183943 178211869 743001705 820095498 873973641 586479594 679792125 633085585 818646345 166249875 400945714 372696998 888179298 81945439 210584855 304962053 414468186 963305807 969736361 798962866 949957516 756717327 826079464 593581798 714776650 401720674 809123847 98846435 516183181 332550658 999329210 365251624 913997050 516606387 762193598 914710512 924136500 717127344 923888416 502284547 525443019 568718359 935855103 133199670 878596899 96130610 257788378 734632156 952964117 700758054 835738302 932928365 950985142 240801881 468685181 56657938 398388690 374759558 954387372 117361074 325685662 547238462 664200432 97462631 512741955 632300631 967045091 779861978 947105083 959413350 978634950 170037534 864607661 103605396 831280485 329199931 675376202 64123028 862253934 181125737 781308497 897966042 975759590 95802458 841047445 640246384 794123047 404219657 414249374 834790110 956794683 357028 375005724 152268591 657867220 30363431 98220735 890940724 945452109 85636447 835913845 248813246 847975131 108756920 817939141 328788449 538211241 43040722 396710481 211862218 430787779 565937779 899772689 153860086 767026219 271784726 384958864 499577170 632041733 119498030 229095453 98776844 494179369 230090371 571410404 981172763 988568149 768772854 961136094 613388519 710192947 157959819 732499120 234772172 318708987 838072492 963843539 271145076 439794653 733142023 786370031 390193119 544646192 609367571 871690441 343891966 456240351 962093792 970427979 138675348 252666600 294738748 829751244 675258432 852747244 840461086 974495978 608130654 613896322 644673804 686594630 674848954 691145435 438295633 737536028 741139467 978683799 944693574 975394318 825797709 926639388 784450053 929832849 129415401 760155685 537105937 583831310 891440306 913705171 975708858 985959640 468939576 802540986 830966764 891901480 920394208 937988377 957160709 997434782 526385751 912498508 350563635 544659023 723370627 725887995 899559707 958719332 80072931 182809374 219125537 778390031 29075528 699876251 90911559 311857578 260254270 545641213 3990789 370724459 12482770 826402191 339559832 587362946 919672348 930482186 709998673 990274888 966917966 982579316 202529849 704654408 25655879 202084838 451740975 532671770 24939394 477756358 254944489 953157666 621482241 742298216 236832601 485675612 928142134 982529724 6660652 161964658 7999809 283244371 879780715 927741716 996074172 996446582 260315104 343179901 283727013 795551273 746425257 982674946 567857297 773785666 222528054 954321807 380730828 777293629 641972752 764893913 159501176 347153191 680795714 704797725 259743457 988238752 273483653 337447511 402027848 526397742 557736328 711089858 699368898 725807150 528980803 988895446 96942160 204085226 783865201 813177403 7495798 750913134 395234593 543802173 118806977 760955187 120496663 141701035 675286046 892243877 919753693 931573085 958801865 974565402 478335030 890292284 732453822 798537432 399077330 870883315 109552284 311924364 485827671 741743126 651440358 758872608 157772036 527468815 18380170 981633577 61647580 157962149 820525084 826181389 828473523 963168164 606491780 990394737 562915278 722983482 154402150 591110955 803100067 868061794 965493017 965822039 258807447 553144804 648596836 960230439 542848457 589171428 549203743 712995091 324815717 792219920 768236474 945201611 699596709 951935633 974713202 991350453 746323276 900662401 755766794 963396489 210920981 961699251 244438261 375752886 206982554 827864470 663361019 674647644 970582998 975549886 151581745 495830808 766462296 843194651 57574691 724370472 304262144 707031814 231060308 861665915 292267634 866802809 71838628 577272754 273750281 289077697 880160109 882949011 807860339 983530583 234423294 243958115 187094197 288138971 292044812 567620456 955728125 964394086 872145429 973361260 489012618 830488348 298533990 534258979 557504149 860682622 44986112 569945764 245898805 470607105 692358962 818980791 983014384 996081120 571976276 947243614 498208567 637796200 237373252 691777457 539572734 958351729 904474014 973645793 945624600 991763681 200209300 503996325 923020946 929848123 946179862 963826995 244202088 914253921 846775685 945002939 477902472 913131958 18365918 834697123 280513668 758939254 283786084 742878658 706300793 983317837 259556581 912520027 726816156 889935776 211431112 994266440 273574756 515063288 844956805 931184385 773949996 971771284 544764026 567347185 472428182 912011252 60683585 479009590 762160781 815846669 608393284 852192999 23410753 382475880 716903936 974250697 466129251 782519854 457923576 870596921 333073015 357299615 2653434 9415276 191387453 545872959 272194269 403150511 35496312 221965888 994306895 995145556 398004977 990326151 74076665 802299091 253324277 609531623 61964274 440249274 768795955 782085426 14209383 441689039 447598058 963158119 496518513 676570501 536709628 869305496 976492991 976696932 137175519 464550847 793571519 947103347 825096224 887622058 969895900 971491966 311168835 566077187 957805013 982394564 315072346 725907744 107370659 120499973 664443932 973180772 342977938 404644753 923474596 944168399 918027895 998778973 875156962 932242679 306237730 764363760 993367565 997424196 782728710 939617625 211322033 422378554 865847803 917716714 473812906 973790822 959807911 982666559 531890125 698442301 393041819 691334581 469584054 811662255 129211678 141484219 247119938 957929166 405850644 862595146 36733003 824106843 913404200 959662848 725967619 803973780 521499696 682139530 736589856 837563317 250544543 830436091 609640302 714830277 982915980 994410525 90156398 353414971 33294654 584323568 17423071 70160976 235883133 770558610 532162316 711363146 950019602 950123244 403706989 456001178 285759032 744334820 100501817 804406730 932910477 970847386 583967117 692807276 442081318 868929350 880502272 986623698 140638463 593081434 697259319 791048959 23616814 841424245 778185153 785692411 619342448 974766237 579235375 798187778 604607736 897598172 367988355 936120901 222687531 671017228 721813198 809312664 80135091 119070143 965723333 996793057 736344739 757235899 730789405 964864361 195238225 961033435 123658880 770367706 755703661 849686443 869433308 881041278 901280605 959196688 388894912 877731158 822530681 976873161 327874513 612597614 667637380 759016223 330916737 417697783 230160235 663498986 306682594 666280004 637485161 672131211 70861399 952468593 259507493 981261131 292522714 930246411 729103257 807707647 40750605 383210496 786741820 837543452 141516451 742244629 693892471 728339134 299619113 921757139 289722900 782749854 85541619 877578870 296810365 923752586 889160493 972730512 792664773 844478145 156855462 865824955 869609152 909464564 290469403 370622893 415497 900328700 185082322 411660168 699804119 750179793 258047415 333573444 14357822 141204294 185640175 206744473 319934189 436036461 214823971 522304606 475490781 878533533 386617259 897765503 524433871 560384243 417637665 908072505 700695163 753315084 249993709 359958551 803267536 867809119 685546104 696942907 737857904 751094460 293029628 575209010 906669947 948459964 549341273 550475403 998223715 999216051 161677845 404164736 214097556 888686830 797566856 868002254 467922559 917422593 575124233 628740537 711035432 717914223 703059531 805548590 150245684 444902474 132993680 234854588 498164894 961532422 781961946 993665312 107245166 453126594 537310829 711286285 534975820 643735652 320253602 651628679 814512662 997630568 117492348 195518000 461995928 882467506 556404237 671620236 787970210 972459611 833281729 881568981 183622975 204888400 602897499 799364652 896386733 931484804 433656543 918322578 252049612 469140267 452640774 640511799 869128289 886497151 691554585 827688827 303180233 787646269 429222501 730290926 561156569 926194374 634498258 848005136 60758608 591156722 119272352 204188406 955102836 982145059 633272818 938961197 361604282 666393136 11696431 865029792 156949530 246325817 246465652 921792904 94214549 255949241 939813202 941005854 191732276 663446871 249346530 819818099 79765607 539957376 606210751 995008819 713927508 941922686 932278643 967805068 246122348 319005308 208243085 985589907 9670493 857992711 367990448 680737525 307277638 949457623 722829165 825832842 546679859 859759031 899855175 950080131 989530378 990735308 229778767 898213734 467126659 488290961 416940003 979717131 554783913 627790496 967267564 984896664 701538933 937451002 634879353 976328024 749187893 866582075 207462352 884781743 281148397 953814777 702426340 811332802 274154129 856981452 117186432 573245326 962933743 996140559 870220762 893395110 909237280 961203211 566637779 936562968 662613867 976868149 533481670 809664736 413889585 726562346 702187521 757491596 701382590 847577666 749677716 849909916 254216336 443872738 467042832 558455437 211364480 367413801 219053385 304025646 200534864 636798285 230124091 738531578 983265138 990216711 458969141 902366951 144007065 736437095 676534833 990316066 178244696 705521077 868239824 931386206 438239164 907191499 50015342 976435725 836806140 916034215 835464099 935138490 583923923 940205682 262661565 913054790 967974659 969272348 454986389 836539775 558473874 922495336 641758935 756263226 797641290 798097599 118172759 645810464 219825443 417401858 288092887 763485633 512124415 713185702 13343280 227607367 381963389 738938956 282593490 494790110 938992096 970315229 497103517 550299131 185836694 727864137 318861341 571066541 577966678 876663450 552640979 981541373 844796141 892984857 26347324 173495200 465411026 801401588 522751815 993053983 912983050 963598150 95985256 384971429 400786621 711759126 522879717 865505882 530908581 728105977 80069744 196853487 366488424 678001116 31984089 811455556 321004505 678350336 191783833 477312271 662241175 996126986 631519654 822004876 275735010 972981869 386201665 529991289 67733979 150410053 401520687 774113821 198837380 966590987 17989375 617463434 95031804 136723684 137382288 689094363 237406276 250402438 901749466 985649890 705024802 922111082 175913147 545641842 966759649 982195215 944141726 957342106 387529606 979560584 247384531 702774158 40724973 459871130 720671898 787262675 450141650 881339831 518909971 854035445 929514435 972247537 304636113 724571816 816491076 838014677 856623754 906870204 929575533 980713019 563966864 733580674 290068248 625644356 788163835 884324652 402734605 586707155 863126228 927031928 804935467 844955705 640826823 840598239 75406019 522039140 966992959 978750044 962744097 969962461 44032908 734156233 625790028 656329965 638299718 869878848 531573761 748386208 400365220 777015743 801984838 822964068 804636873 852834110 535182312 690593595 660017684 966628104 109375687 498795687 497375065 664585430 96085004 986824326 507105622 755287334 624054269 669277768 282958372 902780663 605006982 613370139 787313991 945723066 109454348 253899828 927080885 950090201 723638015 737123287 353929633 440238152 481645464 685821303 897635970 946401842 776974842 941985229 631884851 990577771 794189835 998420488 636920422 694858223 101006994 150376012 231545090 252506838 104718973 343832261 805057407 822088747 510883579 721584666 601458806 920270155 218181454 403211414 287473228 725221227 512202735 812346286 170827067 695162394 468789123 934578316 407015861 596219056 739190978 882500423 567713735 941633400 101220688 986247960 846051149 939688428 946213241 986800545 904062198 971452254 585546627 665186251 834720621 952072324 995545236 998574597 329359279 489246520 515568339 612569058 755164555 884112271 135358696 169339956 859714053 961792430 406680356 657150475 213792971 594241714 827248919 871774911 313209326 827418214 916515872 920421447 83043422 333053803 807321041 831768767 629056393 860264269 484150371 749691624 603656329 714649495 702104773 744600541 285586773 896871659 316229757 408000234 61582171 636829396 354917528 438725210 874940894 920661098 344310152 694927897 354641554 426474916 390037042 730056124 95362201 891762896 213880872 978298109 893818008 913326812 196506831 466803914 871524837 892954233 121831270 480935348 192533608 702538772 616269937 930492164 439823724 690783150 32068830 197521717 958205154 961685223 4409596 433174343 652045408 824716025 73396811 632270157 674010129 777783306 813943375 882156058 825064134 988226899 544226323 835615309 787102207 916977958 880288384 941896357 736490247 996896799 147749169 151057904 735268344 982991145 290088818 959944824 547231774 606574308 334911837 640362322 522505601 529582935 358797213 958442722 551051638 845167089 680662921 725911423 374824844 522055265 910419758 997397447 717443058 978866609 734971079 847755745 588849004 684273830 536048185 755634980 968848241 987079870 878131974 977344487 892238444 913286987 765568815 811372826 469782992 821394154 209791771 802514603 370535117 888979939 719024430 786592495 260343047 650610486 443799956 766934793 707662695 953980467 146636494 273871122 444176095 814740446 659271472 895677274 936328768 939551806 295352021 301039457 991831792 996699211 271411973 623206839 66778137 610215876 8415388 648175767 546218008 914497991 77926329 728533661 859891744 907735790 531967903 686934945 473128025 872192946 472579253 820060260 588180237 654669328 522116116 815516154 567792489 990324734 574416978 723814209 716817087 925286702 779459462 897451409 989459974 991543907 743766296 785303399 379841072 694526222 150937757 776852144 585768821 809182678 458755810 821625380 294461725 623189345 424690792 617266159 604339266 831788726 779295750 950135212 576654882 714149291 57112421 209999170 200889143 297198582 346567431 891246042 421997838 841283289 714547732 820483917 350650316 540545962 649527924 858508710 143434865 802505992 456690290 818165578 500728413 736642346 691095739 936040479 927115703 935141551 6482683 537175260 430805698 549695557 467256053 928381827 246203305 986459413 932582230 985171079 296028661 535569679 85843053 847856758 547001551 578283939 932159077 983663198 682373494 932293251 866516468 968130598 671978976 796948340 246595243 819798827 184518291 645483294 644258972 763039450 437434012 826432694 331779478 812264933 171352929 625296583 458138948 723879858 163466237 978775879 358864559 645912836 222319426 557641022 122472022 149223186 843565808 850837258 239700389 831751282 977247561 999163887 218993412 330532501 707729967 741703164 385831534 948551631 641783144 976121307 167214578 522094680 654107335 942238204 24537379 719782860 552249568 573603146 663957428 900601103 71313934 388745637 498249490 719028306 870560204 886197359 636317462 806676764 257004170 749443046 860498690 881801976 181200789 971335575 145920386 152274878 616430015 753308433 492120887 666343345 649769682 934748623 828047427 915488222 880436490 994451902 245403035 859425410 582690196 760821114 22951829 183428129 732529600 878243278 322974147 470208569 676660324 788404201 957576196 962952325 765256819 905284500 36188215 159929336 305822419 518676482 804781169 842166041 70320329 873473132 950014168 960862342 112182301 162585161 241931746 666543392 231778251 462054245 491207919 539406834 885357874 945148798 87838525 382224121 122934717 935764187 423499891 700556864 784983432 923217022 889835732 993377167 947278309 984605189 278684792 663704206 624146969 954631742 597591551 738535346 223846828 792412450 766288326 854314762 963118532 967160724 662304948 951068585 943145733 947532882 487983971 849932925 220859106 657617004 311411446 395214597 936686738 971926053 898447249 925270791 813475955 949686420 594928694 776257644 64958897 503716161 31075751 969976507 991710917 998348018 788555505 894262478 334880646 701606496 921850119 984744019 148154095 322930114 374819537 689958780 574424366 863546253 940515927 963940050 619353489 841188278 962709978 973210506 62861302 748249451 513237993 778156567 451627389 766964180 764682351 979332988 211085764 586421598 568939102 822450175 384831793 884941461 973590909 991994487 942240725 979328000 182989761 598998080 259845318 684901622 814168385 941742819 20572754 239061698 262346188 286286654 986879745 992403283 744707138 875321571 955932208 970345645 144507894 757778069 560231773 756631354 82137007 789387234 901686904 937101655 846365612 918787140 744560336 902692960 878816846 944704029 324961092 796558172 57184508 139320873 284517009 450531636 123737496 546279428 888451792 997226668 689878821 892053074 45238250 792460872 779878148 862706213 936342300 937132013 783639476 985324103 636003959 729358980 68221421 823130286 58251844 424197838 919567949 960099313 725244083 749635928 128022597 476834054 195748713 706585021 905758249 945681882 288957168 967696750 933854753 951594263 458893145 699118242 667773284 920030285 310627939 700979640 157364758 491524395 76199752 552626782 244653218 742888078 2165358 575866221 11299914 899661565 748480834 776147653 84338687 416253808 960714691 969664525 766157724 826038360 864741706 873295239 212900844 993148767 684187427 880211848 778850867 820199272 834317118 871549401 130686072 614671792 55801050 103791458 37478135 731921479 873747833 992757465 916058598 957210830 518935028 807583378 85770423 473161152 585293674 971606082 716031737 919839720 996887986 999134529 395459762 536993821 494992020 645637991 923299514 953114772 101040703 381618248 618735751 896407245 746264715 894448525 16081950 661602026 763322653 993257957 237792133 354186416 854812281 993204571 604433905 726407066 283454714 627514418 128385365 428645510 69106673 120648546 984148461 990262502 923556572 975933398 648235847 752078588 419302102 810249381 56312863 234428038 65024868 242264528 972500888 996272066 537941027 551835720 437929889 827698346 937682618 950059323 219589848 846732222 984425000 986872397 354976703 502598720 970808713 987413628 673000505 952947307 697972907 865562193 329180401 750421879 490110836 679430254 342216660 580464513 817353862 892358071 257973639 325312294 802066409 876675821 374749430 932656560 622285999 858611680 392214360 597060837 607339558 807609675 202133754 997602503 661828719 965008853 987722053 991586226 805480482 849288468 251292004 373935511 281219616 720724310 865717426 930096374 4485633 891222035 925609243 991036938 541362622 996187753 394694288 995653058 153742471 819753394 373549107 428722096 920800229 986335454 133860671 806435120 452197248 564355357 53887879 167406584 501003950 623292718 582616214 862375202 69763252 153407985 484845762 600591461 39126877 900662723 379715458 736828319 763473263 966016897 427279450 963639298 979712330 985938030 418647020 585025592 768189790 789792629 572158457 987047010 817401687 966079157 194857819 691510014 807304342 989387622 392016202 855907811 988252834 999192536 111473707 921168782 937062327 971626258 14569369 180532362 968351876 980321139 669923689 976923141 720877475 823253694 582361676 908860034 509677768 724975595 514827334 945321618 490094054 650401670 650542281 748657211 652227368 656543407 426904123 696661456 121100773 444467686 925203153 940472301 268587785 638044321 83750653 935499611 646890514 722437517 99419416 918561697 388293886 549416648 87379769 99482472 781445276 871399157 493124674 717536616 14452344 61517562 393960822 767665309 924166681 925027868 441083966 853162320 304073714 724116850 488262623 566743384 157102454 915321243 915413006 975398418 876424529 893541709 377501073 466150944 663065126 827472258 794354658 821630197 562777020 897833048 356469873 777002367 337329609 892819595 663364047 989809371 683655279 745604685 606988579 911030078 979980518 991733294 714228625 864047303 509686547 982426362 482613426 572408646 120261432 299739377 217692914 755716514 69065485 347667520 732503405 798970404 295847628 877158234 98993919 212205469 338543869 436599405 347778243 610905140 849681585 858914345 784317068 814531416 151720205 650369191 621001930 699147341 568474882 824218270 868969989 973966534 887748544 888873682 300717722 537865981 355795816 398921812 811071215 888028632 956065989 970254269 955159506 980649437 925612348 998065074 97063569 510844119 365369781 497654582 794233356 885870404 165381699 406701933 275280956 657396367 64483194 100411585 913302758 930354430 561967176 636756024 36268849 398644561 226960352 776960749 236597637 880704527 155774265 358219910 247919738 959704593 632487033 661827028 186205179 777715679 739796992 917907789 127241324 225937138 794430397 798022333 623193294 686966645 802996918 867970189 712791967 794997406 344765640 522526303 938524269 961653966 498257843 732212491 321677941 651951753 949931730 979306835 364528686 921993815 529074000 749839913 260331761 801565906 902035054 984349567 893021053 971798224 338811322 805887426 535745631 812710631 682459018 910862596 376072672 750071300 986586082 987787882 922105458 987780375 151611949 741982375 661361779 676655424 164424307 846472658 214818983 223438040 193481885 827955310 172691889 769855903 605093582 996821209 352623928 622357951 271416250 753100585 264871262 582708967 658357217 721779357 994723287 997178308 663506667 764469321 861966386 949471178 453318981 763898130 780950784 899766135 177036902 772082184 551985622 665727391 535954198 908729270 839557131 877111305 245840330 662717096 327814854 802255615 688874862 753056792 337630829 604483341 576453074 694244571 63058006 82450542 731503707 844579514 717109142 741678501 194249978 717343678 34254260 331466574 651298543 914144054 187781940 297121921 637386231 923418689 166856911 205731222 902168065 919300438 914806238 999365929 765037022 912994850 204884416 205656862 218404738 286051298 954889300 984796988 61014636 735101301 320512883 603056712 884355062 933885226 590185459 709173086 412111542 607361467 642525052 951746529 226095286 745353498 254496410 946910510 580776661 654440097 483901574 563353949 633766273 915175249 343749736 862460501 5614629 125048151 738543715 946158130 324426296 539024595 40073453 114873182 297026427 504623917 43526584 856493150 341768385 359244204 313439171 998635327 601578097 615359765 421598286 804434554 504222027 551671482 872198579 941417625 79011988 917226913 298050059 636201625 690778618 715706253 240136106 782350189 217312444 241752894 782604953 833250642 637443411 818926304 393676318 525728947 136375003 155468287 85865536 295998353 187279585 448440087 291147791 482395567 782682465 989258531 52548157 288037113 952506913 973746063 372862723 866383334 663842936 875866187 313457168 789357102 302787377 676573908 46937010 642883477 975599989 998049890 161071186 709839438 411418696 818259579 356648151 990504559 194727848 323455979 444475507 977120609 516748799 548378197 332872544 355400152 648768702 985112528 442406336 693460555 251191994 769928231 664526653 790098295 201149876 644390658 52497646 386949483 669750723 934617465 73007664 483423135 375259530 666243787 456408829 884006959 777036716 873223831 303032828 768695740 97914037 403635529 150722284 837661586 787869997 789362903 801319835 965134835 306552814 860816917 47768312 669170554 677122703 890524124 133774179 929618591 672109446 723626283 550568209 940413947 917490918 948888709 661825083 752510023 723555244 837668443 465935518 960679493 864985798 899049755 201775926 573615519 466143311 583609292 110556800 387019480 980135804 998224325 881815062 946709696 985815614 989300803 686011459 729073679 293440005 302703036 35825735 945712086 400842825 699359410 531446307 714600103 258773854 854298795 144373383 990622691 953952043 981664413 927306774 945690632 509293144 909032637 551786664 891847985 456375087 777824234 378776424 791140567 250911259 896994199 503466963 806653807 879662939 986686342 210972671 685284037 428238766 679788156 88224811 445480602 347779056 734238845 491965811 597228270 182655002 351037688 318630880 428185957 695968452 942105788 711845919 852735271 82995234 157593395 173069425 721191530 102579521 228363432 25878653 609200424 55008018 148981828 541944693 909823482 494606935 977344907 947043791 972541253 89490975 739863211 436230028 623521318 636957548 930592375 256904106 440073895 409146873 811301544 780343040 949183758 439608985 713035421 81287209 117722095 322165829 906742031 424266232 743401092 282423627 358675974 257599910 429323511 70074026 937391201 154510826 341076300 971660557 984539775 675659396 931671913 551427310 637165464 892362386 963391432 647390328 746505035 201950393 918388235 585016281 708611338 418446522 529523821 900002166 934247378 336254750 538866811 831551174 916548517 956537294 976012269 617604480 824679350 207219897 958593584 886827934 984289903 550193256 698705020 406566145 622166447 950280806 970465617 850326987 889104135 773405297 932489146 831683820 924090679 561705950 838822680 145166663 669437055 81002852 692647015 938487766 993273406 373881219 601021703 365142884 581471821 457972981 967692576 884875450 912168498 650223773 956470651 928221962 939214863 910532523 983549340 861420194 932317307 693493940 959621628 176433656 805836804 187681597 321497486 719953849 782133087 590654080 943290650 780210671 844385711 611289637 648217899 424881065 444377351 383443224 587902713 958340955 996819222 778363805 812982012 399879323 546888108 760106194 863499287 198479521 573038388 108273040 216339132 206952185 682959714 454143379 667420159 651375623 855412814 913589182 966901512 702135021 918174607 465397916 921144969 83921149 570880358 21411308 262817979 993417012 994736596 866522476 957694833 667238016 918787555 725811345 897724597 519188179 836373579 534865683 671045597 652205394 717124252 966530864 992945953 643985675 798299714 466260386 868899563 208242420 294587881 703360741 860371816 546582181 919758535 799471664 949958305 436811824 452107671 94171357 408748266 371421329 434725510 425327176 950709094 472063736 860536522 736156030 935472888 283061178 684008899 487603208 563562584 452844005 638454997 540237940 581711923 30003197 791901107 868068807 933278079 100930925 607527717 895298588 996965180 899517402 915012220 255471735 572880649 74871215 427554399 878015214 996659058 792692142 985220482 160166922 473042211 603077571 847571414 618978205 715734985 388770742 408898193 80216583 388582322 593624874 896037589 8917068 75945722 937938219 978783654 128892413 878912428 164505466 777963730 947110160 952475439 390578974 702637775 883044579 911255025 949186428 967220184 901623508 912848140 273019486 709784455 58322569 339237568 419019916 706090788 503683191 929809645 349302927 559070157 747115053 799640359 321945417 516482338 731931113 930361975 910521903 945386964 718414261 769272959 100859657 208670652 854965010 974135055 456255271 769572621 165991741 985302480 176126820 634754590 869554062 885766508 807472430 818781448 496546195 628648485 473271492 701090663 205830363 532472954 841449754 887394012 630789285 733587140 316206290 679683061 509166038 532116863 882000346 951471252 581522938 729237036 92141214 399022987 691343237 850218381 432551301 847095090 890578969 953619494 228244413 296144914 534174145 670641225 543418053 748127869 261876459 309892294 593705493 903842632 528839305 919974539 559220204 826568441 38615475 772532601 32900462 475532972 92945155 371097506 242073161 411665746 993479497 996290050 450384140 850683088 224314693 955452597 45148440 232065031 662659012 708676419 919840372 956675212 583113904 587678805 200457401 818195086 568402926 847010305 849119357 896707445 569083303 828038039 155872714 886663365 711846251 762901112 451349260 567657429 418513339 761032127 827107997 931856180 938414657 969422474 524063565 962164966 761532165 881217930 366194579 979526590 839450785 903177498 205287471 685560811 659713025 700856943 589572651 717029237 556148743 694966429 186109644 640307399 102914986 229995353 978801120 981343036 478547209 662216857 692409432 864928333 738380551 991731125 327447661 594070760 669465509 782447609 117863723 804307706 106662619 729323784 903431234 916972541 665071862 768130449 224435447 934770463 88639996 918184013 542893589 814551786 799379680 916130305 567939473 715638399 650601647 818675227 398882938 661522673 432372598 731322775 482576167 546374554 552806591 875120000 384238379 441902444 918989750 979531637 973175039 998936614 176748996 324754512 442868471 578244878 283692082 856067182 577313606 691651667 664494832 837211099 526667420 720512730 49785655 842265248 91802508 846075865 399222925 731830364 243639539 281085069 214656969 677110649 202149419 674514548 307382872 958038002 906120515 977107913 494356516 578881334 316135531 426956762 909148334 928191556 814934751 961084955 79078091 969259166 807026311 960271197 180412934 570132727 881013868 974329239 129939804 325894386 293396041 844979336 172707810 862759435 614842594 991845612 240045274 559092341 357354830 435493852 44549154 205677987 340392486 566291508 830191722 898068071 369314967 935683014 904652493 946819289 61828985 493126064 278917521 412885012 73601895 144653345 688658776 723471056 26901006 846614842 48980241 451590812 561712777 596980464 569869345 867715011 280695506 480284164 290485934 525339382 227658410 962284458 290620899 834977487 239570401 802410939 468977200 734397369 640249445 918020205 52960640 656467695 9725017 260869435 997883829 998455873 118562755 310196258 793577967 987145019 709753014 715539713 104777121 261142550 272383163 275531882 918741557 969136954 350797918 905356788 182234130 556042097 770125268 982990781 617341585 860903557 957972946 973078187 923524168 962294859 576812028 855248243 400492955 840231941 79443129 408003285 708484826 709061514 120177906 249819357 112830834 517001733 339113763 893789703 622366903 798744605 439277968 920202211 786931085 901527813 255430288 951344005 832442356 841219415 593687866 653868999 925684829 933382826 539594556 595290988 305391601 743903121 945113601 978957127 964673482 983096405 648091582 660823155 917046002 922545196 194480053 377124400 724102906 926587959 940808244 950364151 365562857 720398695 224737063 862677265 807483356 938371117 47595371 862314652 571335568 592936822 754616406 805249686 346099196 656409276 448143997 680908191 196848298 313200792 454318442 896397928 297988080 321880030 501395012 568515916 295287636 556036930 263003455 481757686 196064034 697001066 558071445 857309015 468076770 470440681 542261855 582458499 630215937 972529943 257726035 300650377 701317664 803363015 854108908 969123635 182959002 648801169 745282523 953040311 675721039 689039537 457659815 840149790 615207570 725963601 798227140 809322999 990041187 993680462 571697312 759029493 174132122 607869710 429677768 728548323 926670344 943211929 27174181 239959374 803053103 911974444 554256183 809224715 996350498 999378635 561859473 670601692 226459140 491136965 681999910 742738620 100277277 754332914 424559683 548955940 759861150 924935446 875806887 958080032 635567557 799196882 648954122 917539583 302283726 840382998 914306130 922397252 93469102 463307561 271219598 722552762 419938474 897869385 558606377 978374284 142021739 521151504 223177269 619181194 957087022 978247306 467177377 756546599 641130397 676358010 884668744 898836150 973254016 997742081 567717454 743679283 303951413 382592125 882629272 990027891 887507192 898424813 704772330 867966138 912000271 964496894 620306703 977965839 174326383 703504841 892591498 909857145 219171778 379207848 198888014 562001215 529448801 891243173 881966576 976181218 609935235 955138346 39843016 228376640 534626108 641219860 870164439 924698470 676207390 817188070 697987198 896047491 295035432 629509880 248085550 920828508 250494291 924888129 432574413 993718292 977249973 998076087 703176898 927490077 94760983 980358326 325406152 909976342 329298956 897200288 365682793 850056831 495538191 634083198 837242215 994391156 748221500 988279142 331766037 524837899 233099791 354478365 27618074 618265102 879378556 984633158 811228288 960853344 698593690 883965219 540992909 983894523 423863278 642552378 963325430 968715847 123849465 974867349 255412799 715928988 12425020 464857495 555826677 839521845 555033593 766586403 404470225 683500704 655605058 819050717 922636997 985277500 570621436 572780227 170195105 237627516 112278840 174302083 399082725 953916091 408476735 723102979 269674037 567513551 49138960 444291591 941652169 997712107 919411744 974034390 370838984 863253035 319863817 961849410 632030981 993397373 361716104 524332750 594592989 715042881 339518921 697504506 334826938 956351533 830781399 835798321 760467251 870607977 213145560 768573187 275839533 929004872 270551504 504989834 533493087 928123623 259031776 547920522 976437945 995973399 224317890 626881939 6496474 444528492 132439267 275147605 302260950 361657044 869674966 927503501 587552656 962242460 499204634 834840079 323126186 580936483 527772393 735563770 514740662 669613041 995447571 995987427 773545715 951163774 821661092 831533513 829855592 967219591 54751603 292412276 420079638 434194996 786342792 805543275 52384095 694645671 159641242 767737435 488702348 618147753 197257937 566676804 620860163 659685244 990113878 992658713 467168712 704893492 276400175 540383337 980551566 998806815 589874156 969703173 535612518 770311968 544353512 950969344 510165798 725587952 767943405 801382848 635305988 904460589 26672186 625949379 887211817 973312777 646937964 782311226 277661611 917225615 594142918 700699466 986599517 991214316 110563442 409921527 199879201 867791824 120775789 273093203 540476381 609666498 141497274 746381000 594171191 951042861 617530508 750896766 153956695 413822096 464111716 797943451 362732659 556500395 749743748 939646119 925112756 930090820 299152665 517298181 209822223 315373720 767956977 825261722 105842922 855831586 508864382 516313206 60113517 924829822 210522049 633645611 725429490 826536979 491175324 723608932 351684683 410098843 186630086 762631920 328755350 680324795 500258945 572778919 282971879 826738192 556361603 580051804 588494167 853367849 587396224 602230860 812251108 922712073 194997826 785124006 172044970 596396502 810226496 830627591 184954675 206338495 668270283 736086315 107797433 898247690 717151754 851236909 808447798 810893082 180857328 865337018 761746628 811086090 249034268 350724573 52418377 187702400 167920149 336915417 523188817 555076307 123699030 673638130 476687160 697172678 15522862 232038345 950783131 951301771 768136892 849320493 936461121 979668996 485884337 888216391 543365708 639463714 225892437 328181214 802165951 843645330 887085706 895557967 408762597 496630124 547613677 834285380 632392780 654230954 418178159 453214060 925972102 948464738 30746408 92008896 928568905 938710369 182899121 875835537 5358452 203924404 468113959 782487821 595817679 852401864 682758467 783654147 373934581 712699051 935507522 996536641 586370816 823594978 781056502 844313480 567092118 671068620 924369870 937247453 297623420 796854269 338283171 393873601 939053515 988944509 769067314 996857019 612764261 779298512 518304476 762669578 987951187 988736296 470819761 817758337 184432165 778540714 698586614 850841135 656264931 992776450 373331109 529662631 229039538 593714358 76616105 239758708 35394779 435531000 980385640 986041629 291451629 530944775 445007443 465404501 495691654 572583045 381472442 476131450 258612182 996673457 148337190 258449560 421580854 721902603 412006638 781073166 303708118 772120236 674786304 791247711 334496002 481989155 311677854 503429865 979893114 990347140 553127575 771793412 379071014 704440030 934251544 986540476 326164123 972722005 310383520 609573948 149415868 630051208 415170578 680857421 814683504 874493227 552818884 791044514 346994808 464689329 543208979 655947749 41053840 656652874 882013017 891125925 936767621 953681953 438081926 922137354 787187217 821692482 700691606 744027042 945805772 963454992 724336400 815837188 120325716 580011522 149977767 889522390 648250077 879258246 333086828 547471548 323715912 972864158 155561639 395423815 545129903 942103556 687421906 827427445 149500971 744884994 68518231 70396214 880264910 923497147 962883391 998400557 385900873 881074462 607408931 678598871 144567117 789540025 437792868 599940239 831779179 883941062 987866870 994575025 86447114 253562588 723938384 855747171 194297636 662962411 668786575 742191118 606084406 904484009 734587468 914662998 94570574 343572728 768208810 971039753 601810490 689800639 522670085 615218435 539736123 597945664 693692145 893860876 801375828 879009633 558328624 783381286 613070675 683075182 546997847 907978456 898114336 992218241 867255796 922361899 842219513 933893792 990015645 990471127 371403783 760558490 164892136 697813166 743691359 766454250 798138170 846514405 447612039 739999783 500920643 638403919 118512787 378573201 759815182 900184925 181514198 553870263 862452052 960372861 356353941 978382984 761556132 917153616 778296080 884101079 610278311 962549191 279828147 304068549 326089968 442325918 194081922 670848102 393149211 492175087 170235471 931139681 831324076 889343998 929011305 930023731 22296071 116489991 418023745 697733674 490283740 986123961 150338690 377233654 80591258 212017017 784777710 976168588 429412013 911604354 201510576 452111477 765980313 793201934 90114782 353385941 830288402 995864631 462147972 860805448 37133248 205776129 66306085 988141754 690323389 895635425 835945096 929981098 479845746 623782679 150609546 268894233 362313523 486144589 263277257 476585234 477253337 923524201 890243728 934148550 540108428 587781098 267416323 989283969 558573299 627544967 576424374 822387490 500850250 791033466 138173546 152127283 643823492 779912667 102426475 794042640 284574076 629857142 218141631 839179059 654691708 672908594 308049695 932920502 203499213 209866284 911773809 989464988 782761260 795182012 256762674 542490181 407138410 862921793 609993528 749817602 204516906 714506219 783056231 850391123 782283482 845906198 241355068 826112753 838908615 881720780 441121803 805230003 333531914 925958254 989440565 998348054 888137340 957591521 859378275 954110428 213709468 836142962 468158560 833235285 988543902 997792852 725360304 736619919 5187489 879246826 795913826 904315375 329112833 917608013 872548972 980211477 625103054 901914354 715043106 893713281 539406166 902380950 596517762 792709623 901632034 945811551 216651147 515184617 549994163 887421859 21927579 499110390 40166606 726281817 946985672 997007540 450524022 703477537 693608751 713112385 28853069 957106110 571038575 911197752 872958157 981225256 49460501 417240934 427972445 628860078 818070098 839412544 825356847 974547961 60091138 499133168 672911074 675241946 357453747 977410404 12969777 272208927 736637735 736786350 557676684 946302736 521953894 524797539 779167449 986322981 261591576 660888796 296990018 950696961 191049972 340764267 204685230 327468689 498095217 683069400 596884040 732234586 682010479 853380260 768564228 956676567 207583594 873640279 897305644 905480529 735882837 833363549 466312507 765402634 999176538 999358644 731897531 934529785 330370915 380297242 473176344 511086884 934411489 962340826 929574704 999224488 10277073 471511703 854929917 929836203 822573814 837539179 576916942 579774218 673758650 735859933 572823969 600122809 979099093 982624198 637985971 651315360 149515579 541226940 243952663 313750364 130022677 653873092 74388061 244557595 299603595 480954077 327375464 706859290 38152421 575602044 708749633 771908408 244135306 848773612 29729739 716245140 394964163 609734970 732891153 982286418 520507152 557410592 246085845 859688815 490634998 726411782 529908253 829678246 6996340 593169838 639265969 777605217 617896293 880514743 597090214 696395751 120745190 309018729 676998762 910976323 168774007 713907165 108650092 985893358 512219639 850222917 995399141 998757827 295046077 524160725 654811610 806249845 650518222 865422022 268640407 326536430 449457114 524694026 154177203 858576790 893760769 905131906 827698904 902556227 760892479 876200247 983236968 983512552 762921946 876407710 345865632 389740715 380167384 754816880 40801793 614670528 983789257 989594234 833597853 924860186 822807056 983563903 604022195 807241762 574503134 869800818 176006513 894629684 256319436 720155715 796687051 883204655 758461013 922590953 166533699 423292405 26372449 289894697 633385203 989326030 357410588 455294983 296118848 338139469 482991661 819906692 157212544 952356210 290804130 943398357 905362511 989681889 796500113 943829041 34119727 630896377 726164739 810567117 905095237 956191243 696854646 948704574 977207112 996639354 440910736 907681398 609801312 701902283 804490886 943572224 379619933 628936865 712368583 739411762 998357658 999212486 532583444 678503203 175762783 882231207 612857699 864645062 617669955 807267879 658189 936720289 923816925 934580384 193103364 716554676 409426402 945039078 293523170 609012050 911087546 974278761 935292702 976453595 771160975 791117194 228628428 419075672 297249059 698953072 30638428 467007961 933375396 933409763 715053679 779823011 632037838 707725742 204387199 278214876 299464108 617640617 191732504 247897653 75299221 963208923 943816547 949315779 949907583 957242040 957543282 989307036 435924604 931088849 312650805 968640150 782177060 950751692 793196167 954345944 754154093 926719943 54554511 541113722 654488427 740226161 243133459 323831562 62673043 677824058 286561237 625001346 802829090 961959118 620835344 903057978 742417486 860669237 641692423 694058332 433688317 944584151 872367595 985050721 344146950 795002536 852954085 874986222 956540992 989033682 297194624 764504336 577775664 682715266 851255094 962955266 844988524 911871606 946313428 963845890 180122357 287539986 599731275 823267332 312932951 364771148 33825405 957450388 175664585 714326415 204401822 480146082 110874492 381566061 623199060 841608418 670361193 995606639 158156215 485072316 343802456 503330295 507762398 989066792 117425997 613730953 512597089 680558526 445814484 974893192 39309894 859431137 989771042 996541864 981994052 986969312 424656764 617051669 643464283 832094450 713533355 732738061 684269805 990745098 26047355 752837592 716711467 759108717 535212514 668101374 133414574 885152443 887704134 979019975 204240259 365808416 113327809 544868010 667686370 676525025 651771752 759387046 574451142 725487529 989232273 993136850 196211008 965484686 679549599 821755124 601323600 983406778 413114710 619598856 34223869 244191888 368504685 536942522 346450468 733127474 761736476 928290794 534396561 644850841 769152172 879047788 978768834 982152140 289078395 953844709 609363830 655460510 524419067 856412850 60583862 681475162 343897182 902906855 327118736 779922106 36544595 486170338 862076243 992251938 544463863 682899265 34978391 210116757 786328243 993126925 31809154 639614619 227741150 673782444 679724840 950106717 375549006 525705802 642900536 751548397 32285102 868954168 387102400 858011743 729760653 811068027 96875075 158094321 542698155 557684365 716708472 859794080 929257494 993755043 399487889 917499268 715847489 930234800 957118260 973640023 788655956 972147007 1110846 325216601 993527779 997219670 448338447 715416620 853309090 950928816 202464423 581049901 424050630 448355580 709393999 987112241 982082474 994802186 194981769 767670740 767414709 805268753 428323939 775200161 248437012 988301957 215783233 313550070 834558685 877219890 580452239 991662953 860478380 923615601 212440294 991528138 706968214 822626858 41638303 500385915 90764937 734317866 723368895 937693836 731631933 838073065 996340660 996575723 84015993 204501344 368923986 721717865 325380667 329615751 61674370 270983479 401521092 675533820 265309554 507086992 327816604 989751845 158655370 944790969 940655555 997122001 193883942 651243835 517656874 698345558 195880934 980782604 249605696 726426690 548181537 665462076 383663910 521600242 327282344 914176381 115385585 870239833 542218811 587761311 19451873 39770899 583619460 919970297 243910344 975912124 648170851 733789224 325819943 786944585 944202219 995346335 98370238 753206734 639142329 859630682 350858519 361952245 970710677 992027836 644241534 956500286 998918408 999010125 535043064 546916703 123966898 915244210 136310107 425762986 417163190 418169777 311059791 356396957 42099055 386157721 344297722 774988250 693722838 802511533 125293095 927543266 103181443 143542575 425896330 676478464 110757336 981804012 522743154 666777556 558199205 798216289 883973177 948819850 333887608 641837243 277929560 427727506 529808239 950711587 933615185 993248839 103876554 642063620 711552169 955640998 735780179 886998547 439382599 630044700 708230230 739221463 966866072 993781186 556016227 671716838 69187182 678554717 794888572 842568216 27289642 124986616 222997520 645123182 483280385 769734285 934074234 981451102 324084719 959898300 788182333 985548259 286996345 724235517 781221982 951241101 97611776 367044366 302971827 968128131 276141318 634331449 274232094 547424580 280103699 340020908 906102594 937491608 185067036 893934077 734329641 982339167 621277775 757571254 352315978 879227646 838526382 954089634 50223712 282444472 481294610 816984617 616650977 937056698 731578247 977152441 613723914 862859140 807701322 869642797 119173837 151869617 704003585 757061354 21348061 28381565 929956633 932873494 258142792 527783763 872293518 930708344 75115218 247383473 109981421 898956460 32145891 820131883 416695257 692552142 463416216 992602983 285256895 499610681 991521807 991935742 23875716 206380571 921013525 986751327 800478113 941822185 844262590 932570633 49024827 562643702 164557965 631573247 777678728 932533249 588487632 799325155 619546319 666148045 946211941 951518971 887405550 993798892 289962770 383510431 592960671 972932136 793187204 928019541 421793294 596415527 838416322 923221950 772609652 850224076 312340031 403024508 139946136 472531599 453248646 841863736 278015638 844464255 750195010 782699640 70306798 466812481 537815817 792221502 475570098 781222944 868361815 887166946 420711305 644260281 589319839 680170900 749764709 857105454 664834569 911597053 577614690 865509692 525500057 994348298 800405472 824581914 175169554 622986324 317738759 460546144 27501169 994751309 858578847 870440945 768516488 907463799 412229658 560972610 436598038 968810807 45529264 806745847 71997865 845449327 108107161 315809115 158022226 596177259 802312526 951581650 258979473 457886134 397108707 589429758 727865728 820975500 306574019 900509086 964330688 984214102 2675146 416372077 76556708 95690301 960361219 996345713 884878037 912067768 918702858 941475364 113822183 916288129 61436147 729235232 456165331 561298769 731720390 964402367 870798675 985671124 74589084 246413747 877883517 880426822 849519169 928608295 811531501 860215541 224502984 628482188 508191696 935777954 999067763 999327642 650293260 896103458 909346006 909896732 949063111 964962004 111906905 307417749 563626612 996063992 10883958 988731344 836678568 994959752 954933253 990770032 370338003 727998928 360028170 756128086 929938102 984876744 411163731 984899378 772976140 774289870 991796986 992147748 342696210 436727865 541412627 848707207 915211103 964834641 411636379 971087389 924865060 986261824 333904751 424987461 514240564 996002154 160408092 609948434 193131920 525552674 475090527 853909489 756051760 992739709 869809420 936077984 23599166 152529277 880025796 887492576 386181725 985436523 486455166 990047801 903682403 925644380 617993562 748786090 833954215 904243089 721637108 939944120 400614283 935511709 276441551 616036726 828157223 916055007 643709602 965243154 15808873 262764447 842670982 941127985 110782968 635524428 268685376 353440098 902336181 995074789 627869706 987576472 69227754 442238025 155610128 434574597 92085022 478293302 84165298 442841900 739369670 851397182 188319306 807678049 298009515 549950992 741858217 959901103 842321442 897236949 339661729 411213374 563556552 764708703 714452323 720022013 975086992 996543915 928362019 936892521 985343829 986564071 675332251 795525805 423467127 748417296 744814265 840983805 300260173 462518160 393245683 613519636 884202936 923838396 615901013 919322726 877782099 986736205 74418216 409857627 842154402 970372087 626554631 756314924 287384156 324512116 765374068 952062877 64132616 925558330 846152459 861844199 684033007 823349156 602715424 917435605 95692898 383886676 220653400 637768778 184137589 706874580 980244011 986267398 709806417 867718613 3716891 500524535 104692306 179428347 87237594 497988043 317476265 335613008 294477738 986592539 632330055 976148742 929893219 972514025 463543696 934852199 313493550 841268931 64080045 198724038 12356404 14176822 880684011 941308072 983789898 996013867 531399382 853408006 776705901 923317728 488005205 946226520 619294265 746602479 47675460 751071017 451849563 535417476 749277341 909403420 80917458 357950477 275708226 898766996 568499084 572948837 713998499 962348699 584690314 961294301 431914220 458609154 77238943 837925766 300996026 744359634 366370635 825337375 503103477 988374092 373763620 595491367 99665595 650152405 68989929 433407971 300272908 348789441 825273427 950951953 726702750 794404941 230064490 951442163 798163410 932237877 567702509 698307769 801383365 928611385 224941413 934900371 739859150 820652862 751881501 845353306 85344869 764304349 8129221 994795663 867394033 880029512 80309312 207565605 283552823 422541355 997344004 998682215 479236554 956014651 655845511 995796360 531831038 929751658 744070813 907417969 849436871 991011826 858022949 909161098 776656238 877635831 175406605 574818692 254401810 746054349 875287197 985313296 829672013 997818918 628253662 844512698 957947988 998349255 725194142 991983658 950550520 974659947 121914144 356164849 529906066 625767345 240896706 267837765 658807267 693764198 525914842 767106650 730579599 837062037 478751556 534851392 33314818 572948590 706209409 710202641 902087693 954806912 661695551 679480380 908655492 985334825 317292059 531489318 411846647 559969812 788972293 814503190 195941923 558558297 316636466 679278593 858066852 996412087 3578688 922267440 330058393 361182157 861424261 892327238 410041651 438637405 880948318 996390469 147815283 941799596 741058701 758770517 863724093 894675902 739604726 909155623 245843257 498762032 807292735 927424450 527558459 926640758 886194211 991839292 358308857 628621641 160941447 672276280 926382969 963694868 11810234 119225254 806294789 863623373 860374659 973084744 515943985 789561973 309651079 832324965 944698283 973625871 632879141 716727705 130915510 842557511 246378421 263225809 564363159 611416988 728920849 994497572 941273196 959651290 512207570 682592640 42094884 950206483 324600318 343873651 53682363 770307231 81978202 762819897 766491098 842862879 823155835 927014296 85326443 191374360 53237680 923129176 754377886 761148477 915533414 920734145 364857872 642463861 409990039 959572255 814485695 945668532 977697507 985490742 788606221 981881896 192949615 438121050 744810483 897402351 673671152 956369373 6192701 518733007 197075620 331273053 204641874 858464774 827351083 945029078 350578349 621932459 107024857 923857002 937917923 996943375 396953481 471880193 219273435 315960310 617889748 775209273 224558413 238053427 966205764 987628088 370754821 767371564 779061709 944470251 764788112 877960391 241155183 969511485 639182300 853823179 761329988 997387470 330323675 332835889 728379458 993609536 408203356 563188454 865800060 942755653 606669904 991120580 581293146 677875032 642725206 892165733 807105089 939503244 172302321 274846266 306698096 971178687 296432084 313821364 372668922 815793750 809719735 982799894 607492934 919178108 591748800 764417212 412782548 901622176 884317237 908997140 927546263 956415164 335510191 401255550 37836843 972756441 950409306 990652969 818994425 823982987 988993370 993588520 929081577 966574638 367508391 747523688 216904164 386844044 38305687 253444688 905479431 938047701 821769668 893485682 550381447 744786940 421450605 431035578 991216701 992252915 443517346 544652724 260815850 470254909 583161650 705042716 403754336 692827772 688947098 842840704 475273232 693145823 589449814 925812553 730030968 843410356 953722015 989899680 929717021 985396801 400057582 406796532 734043877 855005564 87385419 737764529 285603688 988229013 246180918 954972014 169672801 437270664 973575723 985562039 403506390 855281658 890254470 952875648 222740047 491630793 334422130 971156846 148599632 951987353 125679709 951295535 924756256 996638881 851721972 877084839 95945674 881233264 718692503 851598933 496936975 684469467 721877799 788819741 696266031 715044756 319552247 384755953 478716921 724824987 287792031 463661952 360345603 627847339 154105033 267421159 626988531 769854103 497208579 509054390 610858118 784075984 169384753 947747140 297580427 734487636 186278512 422062897 739898066 966818473 517481551 616272143 312573593 424382350 594769729 767659948 480411816 768559693 535633516 808098424 222863089 814481969 529476565 927306101 42503006 46430604 200774925 343940639 941562367 997363813 209739163 450443906 734040686 926123489 653291496 907871328 663456020 689574873 127360253 386709517 645337847 708694630 449726644 835882954 275986850 640574778 54825507 614275533 900987011 976702782 313458899 957330654 283479244 404459834 961073316 977623079 933379940 946420849 541933913 986814649 455010862 485668563 828893788 908344785 9832549 192742063 782405004 964353020 715405551 755390484 92989406 728715306 866928423 971837264 825467768 845288407 533962114 887812746 340776889 889046253 308343273 772813283 24988526 171961430 838925252 952832529 455158993 974658475 957474683 969875948 280981466 798218492 834707940 942494837 305506762 389461036 715567533 847550208 967395846 985132373 42546215 908072981 553446393 873566798 652068285 993415479 815770302 924596938 391200186 759345970 44033349 862207777 311769262 723716309 417160616 450293670 348712248 504594089 604315671 857656239 559362720 798837891 601241946 935802433 542506069 551119932 182102380 947039136 685922528 794980125 781862992 897974278 261812179 545298856 762533037 907027127 665259616 819973223 112997929 487600907 123863758 721299208 479544759 616393115 705777736 966576558 976326191 999193266 229748489 825500424 836627570 886860356 170417231 944275424 896427640 965971914 614343880 816101446 98605796 225095320 367054083 738997194 593457774 675163514 487581499 906299466 736898499 971471478 83813622 987656335 865425502 970060365 211459943 662476082 5705272 786203498 541383797 954718695 311369735 833360452 704208061 921588908 252577026 359103614 299519435 733273059 449635381 853129056 959236993 979105694 916217026 976888837 567052382 638526254 692116185 902426018 745452987 828132913 300670485 911347920 320667534 792764192 398492790 502220244 309057197 334756781 537525459 835239362 229664422 310299538 181187723 373404665 142345403 175953691 223408806 766533914 737561295 964497633 445765838 469120545 740802487 778809688 664874574 766568356 845419581 958281850 637797346 701880791 245118099 951767541 279983334 831689331 891752857 973007846 647194758 953384535 273648253 445311741 348682548 684820617 411994562 628423413 379002142 705467753 687892938 837249980 82643598 454970922 807222730 926183631 344472257 995103603 396942412 944205887 252007879 420488314 828164376 834074521 945689675 986995060 319244122 533424410 103823212 904315951 912430200 968618250 653292219 885315640 108554047 357730777 56729805 172330186 22540381 427431684 935491534 997642493 374818830 881162480 625251480 891357528 595880618 928170803 85056995 549798708 530377735 943760020 550738890 720493881 296463635 721465670 861052965 966635182 301724327 559766378 42654825 258646164 520816368 768489939 383494207 882479314 939917380 940142008 210382909 337872238 877772361 969117003 802009680 856990195 695894838 763371593 152188149 443985761 110618866 438062770 361324226 864637905 18314348 515302834 190543406 980380259 710320250 754578050 926027824 982347844 791924158 813077187 606866778 914660184 200786876 654433652 74748750 151601683 728232171 881228371 951747127 956442619 431534653 503899770 464308197 504483084 592458180 987478104 880095684 901656532 982689572 984314285 674739093 676654768 358686023 929581570 942062419 945524290 650940311 661367593 836246501 846959608 668118953 729978251 662127359 777697302 190552703 866170740 130331184 592633142 383475409 503562359 289940134 884845863 45865165 539480592 708540733 848940100 715657471 880714118 994902882 998019454 300792102 488676437 857605947 896570811 85036514 677438723 675583903 698345809 377975185 510516400 835511172 967825830 614011468 754299428 572264068 852505961 41252203 231885139 547075886 944149533 926120734 949268358 768980593 812363059 332955899 357986370 630614855 792919560 522287851 644666055 138661615 831860296 689296700 946820777 654026471 687435010 731619119 817328968 292063943 455496626 822453477 868034048 568355437 678851713 511996580 940820253 302365774 854263287 298271470 937026183 783662962 812534961 958627578 965251730 894944195 916509985 115885621 499728948 933365971 969672084 273058788 427269277 760153421 882058046 905890345 986282172 922853279 959711544 457068722 609501345 437803614 526112906 888853486 912391592 158609068 950140092 586707346 946434498 613248838 902091071 428169159 968603738 679725743 715556301 262058321 593162693 981470134 986924624 547857304 585407648 632831510 666751953 910214554 932923220 44674296 234305604 213994988 664217357 361040133 662367148 416582362 674459332 679893204 849256513 120527231 683700416 28277075 536028195 91993112 188248587 955022838 978288374 421169273 596774239 542541530 766214877 749152144 793803790 354315311 738215589 61001939 237319304 945773125 998911476 193715209 444494366 726603584 782047952 437371147 542975434 41470490 365669721 280799305 396852518 759783596 815469711 374015355 618172961 653048732 997039370 795786271 945602365 759808098 861285784 203099831 411170307 983217202 998083009 987341400 992634138 183388224 609442807 954596386 996696310 506328095 862903376 810045227 967399976 959534226 987296481 527822235 547497956 181572491 678169189 678427157 693140796 75213971 325451525 290457119 654243485 789874558 821733961 338930589 597396406 273452964 653163808 254461578 608968125 747427065 978600352 928084795 944037513 269555502 975294441 83759623 711328170 149706102 993183121 43143579 253113840 463035812 864147309 79691024 373174367 689379563 693154837 260900672 402187388 380065045 592236814 640845378 869859996 13672609 27850122 14034543 972113325 564280190 862276163 451386703 463045117 628857632 657078855 295842181 904134750 718187146 887299241 609745659 800896095 767910367 851221560 794982903 803912779 397428351 610713369 124270226 273157766 199642839 769193099 656059129 819546131 347128902 693816633 819761677 837392978 135497553 474754195 250861686 311078375 944176020 991982079 544008871 779787874 145706834 193298747 952839096 991014730 633488799 931430634 348191644 793260696 35314696 71923305 769927500 849928180 332769631 348016508 557162867 748046959 581102261 729881099 854531178 884492550 868583309 978013841 970317690 983346674 237340165 683055364 395953300 739315145 24783161 620406179 666420076 966572467 356301238 414023187 505227647 679317067 520675392 536382074 657717959 824666892 530345163 858383307 404665254 979926404 541616112 825102203 211246637 339206875 728942094 888825472 158567915 450450970 540755592 590350460 886519574 918820477 977810543 987364095 212271467 990817907 175035190 982599531 138306834 426580017 692797704 904293303 388029739 551267466 500930770 685879543 849251689 957761505 37634543 263287385 414258317 860916657 615783177 990144457 103316763 502949896 736185759 828743578 610826141 844537874 350426204 616145482 780502756 929387289 635664513 981727964 722445071 957383988 914984949 996010697 70901603 217980222 636069231 878237074 926098987 967935650 6619362 326661293 463115939 634053527 278108732 334497549 50992401 241134542 962238359 998528349 420241577 443008968 224937404 994429525 23018653 971933400 756793017 776188823 458040758 925077170 650146557 682305572 237951724 452762305 578181680 950969704 462785849 480650771 219114357 522431441 106328410 269248577 212617842 341366903 208699271 248499688 641207580 955969222 664144191 864474034 461468965 781255741 438879912 844813987 877880902 948822075 765169777 838314619 528946540 663709360 842408490 852004321 17749277 753380452 156132774 301039905 752476233 987968952 829629627 897583067 29728406 333807902 245021190 514902356 521364568 687313803 980382129 988508122 243134755 635222742 636399458 707732989 10888960 733184201 917824464 993672940 97022623 608085858 439931364 856459110 459426597 526420062 676911049 840981907 61632018 964018288 222718080 970307645 721177465 803976657 184787 743469926 190476033 398942551 432025065 845129927 173163800 469645638 262628505 359676488 941699492 962643769 298683143 910755472 874318386 972833941 605377013 686140518 15821592 53630353 630751411 866743416 290854455 507515584 572306569 973793638 263523426 291202278 381187324 438532171 721165867 722328537 147544114 826862876 627354397 968750945 365291949 636819413 608412712 767430153 130601592 563547243 84365534 783279653 904911179 980369956 872374489 880640630 607425515 927843007 868534329 880977795 680787462 839980399 375122502 698309303 196165388 515020169 797424983 830111179 307869721 470282569 69517954 509300530 736924489 872599973 928008234 966007210 749383369 936733075 849322508 996993485 317191929 550811886 309146159 724805156 229661745 354020900 257876025 898068580 950180577 954489318 298848548 724188811 715743298 895679101 470364965 875106033 309253664 739258250 583531022 656623186 515481298 730571609 132390737 558873434 354794515 378680870 380858930 848445242 263159808 891278120 964753674 973805715 440626784 961872774 258522376 731786333 521619695 639507728 518516189 596255638 50986454 765089099 647474162 867580661 193305042 530068931 97043500 354758162 120465874 459421330 895774558 902936651 954911324 983654936 529906744 723540518 686045269 966208680 768784633 938567834 804762675 994419666 918463569 973388523 181914749 933303384 413085087 462303931 905411529 987402632 589412209 603506858 43944345 199435404 92309166 177159988 993377961 999167770 573284165 773292236 108850708 702621752 841603791 983623023 369688868 832104582 713888092 962350387 775379327 905284790 487277042 688130114 846692383 953276261 22593778 295529775 966783076 978165489 610706313 947638381 198806336 232640721 26564574 736162089 38541579 148960413 457241023 839773164 43497254 271439289 610908952 710839043 1724136 803259213 39519674 50618302 14471564 857085426 735635314 942674916 142061971 761846571 746939463 981672443 755510970 948678645 844256822 956718428 371475571 879490284 664462586 736711041 500335354 824983578 2926891 713515473 69081632 350014527 758263270 817583077 941495443 989109289 974045034 993157123 404748682 413696223 418516183 767211923 653732347 959537524 272745049 281560130 323029813 403891036 139983275 360124661 776108486 786057631 921240306 936640498 320444794 359051261 38279743 806233196 427120327 928419337 194823920 572283335 709800740 829637053 754877028 817836595 994373998 996352062 316986890 387421341 352688516 644283012 347345259 485224743 338495791 638237035 921789431 947326864 375159280 872331917 653204700 715475692 160898573 682160582 2814646 545311651 383549749 467373095 415088742 713796635 327293401 594714674 441708430 696257864 414028859 840598285 990783191 992604523 461840970 600808436 836230654 852460284 559224730 597689825 575199137 993780839 957790396 967355855 926603554 969687252 504863478 546408488 489770390 604413718 296736746 718173457 531905642 832916319 115416429 616385037 581903062 635395769 597471278 958526792 422674995 850244593 31622809 750255800 815965477 856384001 340272435 984119471 394270170 666340375 551482251 746258170 840971327 844268671 135185965 344170314 616400866 823221109 13341901 593284078 589398513 809640311 813030977 944995961 216240981 728092038 368541804 375947323 476402674 655389017 881434420 958611007 580343563 867397000 165920997 608014124 787446842 836734126 166645543 193782071 412188709 869890308 902767117 924121599 72584213 946213784 155443100 231783523 274145745 636322750 634248070 839585825 137360048 909159053 837243208 967465878 448497044 545545629 905813877 992738161 309392286 343554945 828314743 833850384 642214813 669191455 748108340 799815245 459275913 534012872 311748402 772354724 717899578 833278000 788956119 975678718 388203099 493522457 224945702 295263017 768159247 954108159 735985830 912112943 175405423 655225176 796526836 933216626 474121079 664820265 117746 657427083 724229784 735456453 888286732 986722134 635528296 750823208 63454974 719229070 678992730 810526277 481327526 536049458 112436493 820315019 921664745 933546350 323846229 593328460 579497508 609186261 346464883 813113360 703109502 855558654 859142078 991742393 161671130 250116704 897235878 942768454 543347879 688811812 1131274 975081912 683514019 880681436 234934933 249633028 905285904 944831996 972189762 978273518 202829180 397869263 347926075 515266446 255131593 320326608 9055744 982379949 586045322 601213497 173545552 576155595 92508343 821823544 493569237 594073290 865469801 902125384 754289450 854346406 374721062 875038723 905350688 940694827 484952580 486025452 976373431 997116922 779336163 934075218 960512545 986449799 113736816 974752496 460945920 829020213 908752710 916317836 838582233 963983882 178071331 926992470 578803657 660861026 565001970 725702279 922756391 953580444 24096642 106745479 349008015 965708067 534092242 678963576 194729545 228606896 172881431 379877886 822886799 906512934 394603040 809349632 205689748 683078370 490410054 924103088 898400377 956736025 110738795 174571186 25883818 194011392 864379376 902751685 461474487 944730121 845193329 975988032 327549640 901166742 739562368 921162897 325968760 576473543 477053115 834625637 770720800 867568632 468078990 943361367 496520727 716464997 523148012 676628731 248291410 360389192 342738026 435630341 894922158 960085274 112183897 991375742 701697283 920491901 847405599 902445277 67669380 323931320 765585241 947836592 814275470 891082468 819355467 913556653 781479340 862872319 69069413 270063486 486874547 502707784 882966451 929742433 456663828 798671625 504374678 706367622 79527728 613990009 184830448 443372451 662098079 760206793 849625892 991918226 967802194 985420066 651081775 815662500 960822738 976101441 68107900 264650553 617442309 743458466 958644480 982988998 313652086 387041831 627428325 994368260 973388781 991583930 66793373 536946325 973697795 981944831 948980632 967357479 185352565 839563129 970151305 996228339 950414367 961053811 912803462 975489023 298757565 844523861 765869067 833339482 239209889 768756175 72474465 208415105 795920835 901278608 566360479 973154230 87244868 696311631 195893076 873189879 590649774 780380691 178415466 317143098 646309554 952660207 963458482 980557439 621747966 915298527 440899189 634269324 476727076 868650904 651991137 658599996 458220565 926307843 754541124 959932111 516686737 675885229 320515507 860794951 530292915 853860657 913511553 937486108 712446071 802569644 110439120 283402298 145772923 308640320 857698879 972946554 332886569 916194534 120106735 372293885 933682525 995732652 213768063 572242094 592835041 799168913 683958855 695582649 294309351 833031380 463996850 934900515 871168712 880245048 668722040 882775102 741773600 743179939 325855517 744605643 659597781 824794843 833114179 945270889 664313125 921099071 375010759 710224859 346708010 977967147 699084134 983912640 170660312 964013941 720126666 893632260 844788271 920917540 387125440 481347375 257779987 331152176 624372644 864658104 726151197 853931718 302266719 972355173 757186566 856676913 710052526 775094107 601308621 764107273 544500208 777135893 574845103 872010789 61753691 787276558 385433375 517903962 617679797 883272649 458677971 544478837 21169726 446746218 961312504 967344931 592186878 830650670 799267393 848499539 505033944 633691270 164867948 363866957 136775961 544028326 990925759 996138488 213561087 512083789 165241516 912309949 41945356 187546755 637957942 836982555 635479712 908933893 542468724 906640076 489290747 794804068 776246676 777088820 45276664 266861267 992784498 994155727 647056849 840131690 285718756 982863226 791580936 792155211 696923477 956937390 308671828 890307598 776803716 853479218 727414664 916589948 586849180 797789767 360074122 426273476 666416939 871477312 867329299 898915053 675839310 762609780 219540631 804126557 354092608 567543967 864795187 939760612 916696466 939483761 694007576 890233219 569033119 649146859 130699735 989612850 834026968 989314742 468053141 524508419 703254724 823871986 933574872 984738148 396079754 760411146 762503417 858545716 486366762 565378397 860814466 956824168 675497240 739982074 509312723 981338163 208445754 855848192 274115089 477999245 956070667 960217866 353094820 595607989 153340050 289610415 734317788 815157645 429869423 731462791 29248959 136397050 826094037 977570053 503701189 535847346 866383228 896087608 612205448 639064341 822645128 990782007 748098723 868829404 458685871 731588609 715509832 829233198 808180359 820431005 392029418 505897307 692650892 701908113 479909920 564847899 574304614 707859190 341923316 919589469 130407697 463016144 410539585 915683525 172507282 844408938 633228752 815213253 460494798 702437449 9058875 404247553 533017779 786649290 519487836 641507846 968990256 981605348 898191918 950133403 639073633 851554206 956636287 978172144 454278074 858951673 941902667 962667546 473018310 519268093 89519836 774513518 963932296 987280079 392491167 431445131 573234246 988529098 330363097 880403811 200483136 238527565 60867572 665678064 226658735 529993334 336697444 419613817 986929503 999265627 305398913 497961123 234374852 508676036 935627188 978640132 717832216 725640229 117589149 240624330 113747448 903792475 381198801 881877184 957502463 980125892 915335050 985459145 413367872 705671293 310245306 774280255 658957121 757573595 608248712 650362283 209633683 708590451 260096705 567959192 555245095 819406892 72249832 956612517 528836084 783572529 271819529 437279086 444930223 696232121 454844386 756643140 909488045 920021979 652454947 854761543 4655961 878599550 607291271 778091089 265957939 503108022 551694605 698135015 104284990 859943281 412761240 839698411 23543340 736278868 852376420 859292503 909516412 949818054 71596035 384098478 37249331 862637615 151244812 542711411 444279796 625197119 174515778 412401922 246271501 829285170 948961411 955923836 413779492 697642830 881879417 888867128 890387730 904412971 977128845 999353005 746793616 809473948 342797120 850544327 933879632 939230710 25454146 403793677 627805133 685729104 658919571 834189841 527658410 588346197 135222532 963829734 492346829 492566708 506827052 973337200 823959696 861037317 628145045 903168507 238507685 537077681 544138928 974916499 766664211 880933674 625216001 915913702 897696035 916800388 846177046 933929301 111682536 480442487 996391559 998096788 293962192 457807974 297687749 386759886 416532549 442206930 189118952 905237440 303129090 796859789 299187274 512589031 371106642 543652976 878923435 994621201 444676886 900272363 509120719 608314023 216913085 616360689 905983911 980106557 671647146 995890002 723797371 971604364 781323685 843533697 322860299 488668504 369290716 899023814 419620267 954774530 7038353 690951023 318356627 812009874 258970896 996247841 132300819 885597090 407737250 783791988 279620320 334210866 669664300 973253256 859278550 944390600 238394893 799526702 36341745 338450024 459685720 902033380 57631225 445644057 356689998 580631417 726774446 759780254 131406179 712150442 283421646 700321953 693205986 814889247 815913603 894658718 502185371 714871669 878539739 900250651 24870381 707069755 84929152 897382936 819807057 865203587 497743353 831773628 973893457 976039049 841748926 944185801 110034599 301661678 583974360 728606881 187464443 622042899 639441716 656861643 224741369 436622424 884256769 998640341 496663762 591245365 368511021 604660330 707830954 976222357 50475825 477766194 343558628 643253583 879944999 995811168 184401071 942190654 946140731 984413865 985145333 988287860 583880980 923043412 873866408 907257122 288597663 571355873 961903719 966239794 92840278 805984642 280957271 580170135 399199190 917551353 747396705 766385521 957797864 978354704 164126387 599225794 13337036 979092736 504509500 592147272 783409342 848466891 74206366 243508233 21807206 833150163 546107210 928428912 291383279 683282639 353488820 930364705 95390390 355454451 873373573 879108595 30217659 535833175 452613014 811737889 450781181 970769664 295177730 799129589 948860115 949243049 395974638 609737889 282262120 985331561 117642253 191242230 436392549 753005453 473570139 907836074 318245353 875382655 455415183 500253998 86595183 113835894 877240206 899939877 475702572 778608854 579036200 742754146 547756102 800716479 249496940 774327224 392095491 998259273 781139622 976373119 381440529 712707587 184953941 632845732 446221169 960883554 377283191 571193862 935098508 938821053 209572397 614280288 492552028 637583051 572635627 916258119 971799099 974216741 791938917 794324637 409950755 576351939 829047658 940025651 414387852 696231802 984812090 998920019 643715829 939736371 179428099 343319972 964236393 971440699 376159310 783778473 840954057 945304579 381720385 742422426 46505710 371644963 115666302 615011106 489558343 995027273 410362413 576338030 601589232 658730627 175995015 453539370 600721681 798383621 489989945 864340491 260494212 610891303 990516571 991503882 188742841 457582639 957561726 985217680 259285347 898352125 918505983 921088019 495385572 805306392 344365060 437668410 235981736 895298537 847490139 985272933 29457756 717193051 799250617 991847603 365764664 832484830 893976779 908721582 156520231 262750047 269094518 829548814 253542515 765565705 182451894 830114418 563592697 736415846 539994809 647815755 862972631 990847135 18371558 809615602 150754538 690807812 838573400 862620895 923238756 995752467 589061004 634721578 7374620 345329925 582670791 971925995 579139169 611068480 691448597 786198338 287145805 532748520 886963236 995617328 226146650 320235680 558534357 697564682 978730065 981899866 742161743 760334923 107100558 395808943 249732189 478266088 723031408 815564394 127466735 601631309 30927863 567427976 788179961 939833189 281676304 923427760 474665637 559271115 534084285 567815914 303655282 381406546 110561423 756674164 703528408 916123529 500518433 865663032 816753513 823184872 148285364 456713431 250655589 444305014 506594117 965630158 36579153 747657634 879348225 918786763 279632884 482081846 898493203 955100372 695561007 913309699 157153892 336728035 423518988 585867620 215543232 964670232 666858037 772995358 53922535 471950665 513813119 816196763 184320525 890516685 117896092 876006711 427966308 572682793 441842417 972988117 775444595 913553074 856944936 956241283 623826856 635037169 451374296 710375688 163519242 775241448 632272846 771654557 3887579 705201268 9265439 723050671 111174522 652536137 580785785 947572616 344778827 964670341 21326827 39987864 816173217 917861756 112194154 919818291 64515606 625733504 810245691 861008676 516805312 848304514 976282167 984730245 199576864 536836286 746722356 987596562 164299628 496939450 756157498 916140018 540793157 702750062 621449612 843923576 92093469 538972686 974087654 987504398 345905280 823549085 998953727 999262580 792369007 861660913 138134245 839592877 865069982 994482363 420268882 497763305 719306224 944904772 528362306 956981431 623004996 807496735 934092039 975787121 255744029 982630365 362334620 785694662 343881413 970898938 522451982 530061730 751157860 985026925 207874814 888603293 704859745 993180123 716942380 839629669 726420491 755278061 12718031 620275474 322226258 631815419 455490581 572617501 597778854 767243658 35425655 49483769 344445279 745892445 590396403 744285640 856819235 893290738 445752475 778031847 120589401 699338646 284962225 612301306 342033654 677323939 275416759 415682063 492861957 949307134 7736630 341158217 620776293 811033918 829339666 858337056 989620744 990305756 824074785 881841026 446306337 974113097 826857064 941669259 726267500 739221652 689309809 814661402 924044997 929415726 712619008 877322990 190240734 790389268 485504024 540373867 73894571 595087945 312438115 530582819 303155088 320841023 776955598 816047876 657029663 725341260 885254195 927801691 571549027 579118740 434015948 941337439 69582370 779790811 345215492 840604716 244946250 296730987 518359308 706033256 192265859 279610038 819830511 897563050 250425802 401618832 580234828 871523041 947999357 982249262 542893279 551876892 157416573 219229331 194162557 792762846 990302488 997605289 727349085 782533436 89758933 810736893 943795448 949730710 330563225 619410221 466034837 973002783 226531215 823909348 129337994 975645744 70708932 792039947 944579835 992358497 828174217 973701808 96635755 556722338 485233089 515839876 239843032 885851994 789403362 898121714 524718823 959396964 815657185 916656456 264941983 998925215 217926590 881731787 911413231 980824402 104534135 813379524 124194813 882346224 694516165 974813131 393523745 838495092 431269964 551095366 613698378 837260383 991713498 993738319 375336208 652145056 280135956 835251128 129338197 988609950 91893420 988654054 852090907 996575285 681120872 978865453 274147164 626807642 392894964 732477080 829278711 941240343 247488810 834236709 462169240 484024658 283450020 320068257 718812307 806162298 538081596 760820229 645236684 803742515 712759681 759873021 624249230 819415578 962322005 974641300 157637129 691404975 292461567 327566379 681089931 757223089 3902105 659446833 213065071 326128470 256867249 378110555 443087560 461071475 860288855 874461910 158124145 819771546 993394307 998560021 425430700 789246384 502612755 614019244 229267233 741052483 721388230 782578931 407577406 484127422 572254696 763880662 303038640 762402522 772305420 859077346 976984268 993337119 758957042 888497027 759453031 883065704 716914655 791083447 812710513 816705621 333279817 750965185 269798402 472898781 112008389 291071103 304868449 443430034 630090907 722343504 120633218 422802727 763440414 787802244 918949291 943429093 883891298 963700488 104659666 285809342 139595006 255144977 460065513 979902328 664969096 809167397 696444138 881036507 798998764 922571123 164033329 967457270 646500341 980124601 56249602 78814196 805751250 868139797 465885911 917003698 714177608 963006088 707559875 836241311 420065366 710258793 766373900 872104025 450631153 547349673 21961136 596598450 735534409 822582640 447233064 578237817 547436244 778741867 209329852 864059109 540729543 977486332 802174362 993127551 164139191 803884920 847475840 898994616 548518247 841934746 152306803 392026349 840731435 849844292 347693040 798029029 776987869 797777926 753270045 838584996 793961607 828954554 884945873 891885940 728783209 915404919 951361960 975233696 689561429 866016308 564485630 729732931 515384884 713684173 152340041 816801165 99528644 650339679 226749229 325672520 161701226 632156800 410393279 631569718 216484333 790372061 649905249 894297677 15842649 233045935 169161131 284115681 61879646 406404191 496052236 661880283 915366585 998600925 836988675 956527289 491536189 523716279 402513357 735775630 946100455 980049710 318157704 354792822 455653476 580880828 530069043 622365754 880156875 919774988 454004301 551402876 711303634 738371107 9535094 264924893 869242951 924422115 359109713 975654301 539041952 655222735 36616601 200950701 791011435 874387778 824231348 974878870 390554660 467402814 309660459 663373235 984724782 991868847 400800895 994845290 824357407 868347341 163164468 546402611 780996425 801355015 216465208 477867764 305380455 910458267 190939550 942240528 803695157 900674919 542516664 867528300 669386389 982809820 525036393 802094121 209823159 232395423 11809810 867185463 248088663 991585744 553614356 620558338 776394465 790810043 502878571 549207154 715962059 828050683 679377443 685888480 641658585 750632153 585004455 758670089 223798782 370613073 73742529 669869630 890946112 936785069 262813394 488005793 116096551 250256209 832690957 862320899 564428627 909755379 987444507 997444449 629999621 809058039 957520660 957698785 302790669 986967576 191533907 861309729 432507930 635397654 569133673 902399503 540567458 607539928 799193487 813346027 781883966 984592907 638283436 907456050 679097236 723157581 496339091 915003959 396212163 622446018 663768686 694665235 916464577 993111007 744452129 825343785 3637880 355749009 600832496 907785040 962727579 995540078 497809745 695359210 841914963 853079344 101180829 852708256 257999951 290922086 538459869 564006166 189622338 466521717 232287017 369005267 279123772 825970846 730112765 895624186 392056992 994839309 680285860 716460992 781846865 800807608 580342571 804863672 889457433 920337674 738166580 787235733 2109771 118317660 954275411 973092073 540772581 645644783 308542952 876188196 917993707 918159111 27536992 570532324 42631787 447164595 494365152 645372980 797037964 834393624 696445006 960925124 302625274 675823492 114181252 977451529 795041740 854433124 294458647 612718885 967149816 979931430 867109439 873141100 54018170 976320419 626925732 943242762 478442302 560812521 228999018 859263928 426041930 862977369 141328738 704399685 641196401 957872538 302137210 866727229 395778976 565153080 166485864 622899458 165549942 323656327 770203847 928668840 475957330 997758903 538139935 985537561 56857852 393570188 793112734 923425798 687274595 718838220 307658798 894071440 547990416 626446749 576535483 854013418 854372873 968210376 728720557 750053632 176220294 536377956 405478445 940363341 812372687 976916473 238719476 268798533 577756039 887902697 286063638 331944484 249621468 871317077 514555485 914592843 253244290 383107624 64278187 485776343 249661644 847717936 929719115 958051291 596122231 925747362 874933989 970614976 281280036 516328587 608646063 955962829 135153698 794935523 463427025 843749625 632697474 758561685 747367861 936812382 717754746 829961675 449193364 580898416 217195244 860218013 614321108 824472771 643848230 673371379 239655271 512149351 877241569 900273369 234660475 928845195 343110270 732182430 928611584 972705737 33249357 613292441 5151920 601243944 545958974 901073847 831931613 910045976 519477813 860404725 216947241 238872724 634664650 927581340 851101315 891315911 521407161 590119269 601365774 946241950 475902168 695987168 810629549 883191666 330775146 393689058 150931620 280236596 99564307 459388352 775868354 819045236 406064977 762484651 789069917 934529553 875237879 952788455 467720685 888325142 729792205 740768384 422871893 506766382 985440737 997615275 258582941 541842165 745349029 911205982 902382567 915607463 973812469 998586267 956192628 962544759 812322722 914852161 102543301 720176186 937680085 956412325 101851083 137130567 590114073 915059210 697949684 728485515 378354883 939467203 743664019 777218996 268450915 731697138 562804058 651479581 442743206 648083907 107763411 671537942 520517945 727438685 934886098 997473640 665630745 908677465 678597274 773528868 573983793 675374957 859890935 913887240 264559054 609333373 230920021 989348488 377710600 465237665 708121321 759869978 196448900 582093457 656862904 871336411 569674702 996053686 356573563 632701530 308419213 687435327 247344003 571930992 114341958 303097865 363335564 380198949 496251289 528232446 779301990 983745530 735261402 898503032 979556333 986629505 732669864 975046838 85059979 538309820 16259386 185480276 208738854 463464888 363626212 648097005 376220055 519832852 642993523 740880150 21164249 958204079 126099616 254784327 297420003 360214766 295562730 422180943 757594010 765142871 633457553 823523030 852209841 888941725 844488762 862996740 266374101 507390486 350090538 721474321 570656043 851503055 364377604 852535986 639720058 753598340 262961963 947165244 413862045 837179307 87117045 970271684 745687770 834413468 849424134 881591421 211204594 312567062 836436405 943927384 911204450 988737446 786551671 897749086 508629863 837332569 123981041 920985968 16693471 304521197 250571994 494639307 176341642 300306342 61401208 555242134 575348463 755381266 195526292 620168735 564686806 902470613 437865073 904244062 518799186 828049662 33444333 714560678 14192042 257477907 289441237 378763632 947989655 955050368 695097594 812932293 110557280 883355156 169520336 449096620 847339378 872993144 477020294 945594583 132760685 209346227 705482966 773523612 568792048 887654828 656796463 839391757 15787394 609009987 510489912 906267154 501236432 619714348 890193091 920963501 211624203 565811946 318319999 445172897 230189659 804710403 323724523 394510408 232712632 327337596 13527072 581729145 811064058 986540799 33372221 629752332 974177059 993484388 278879682 319651621 209709860 734065943 444201069 821903196 247851497 410676094 5553899 206714477 978108839 994647775 35150916 222518570 625680493 908639160 336073893 342598025 392755684 673630264 710726827 903765306 255293336 844622921 391017339 628434972 277561194 455215413 162825404 617681770 263481109 554202553 712266111 951098914 462420134 787702719 906566499 906743689 21246459 903505278 842801194 857861087 794644272 981885941 747880580 907674478 640423286 663699507 530692886 679139335 222872029 766299296 590044727 693253610 509149420 856621193 671394856 839771224 757466087 766889298 952843787 986350653 758277666 819473163 157022865 235928254 279363962 619849902 335479940 880269111 966787238 991597248 523621654 888731475 922726816 933148368 108846026 496017430 5560391 257779712 996399610 996866789 107684505 114116584 476302079 739707244 920244351 932407095 992425653 992750626 566776567 897586199 664667161 726070467 318242287 526008426 880020452 933732371 968355513 976134937 191136459 284203526 640272195 641712251 643193309 870102307 496027357 787143329 507509356 800822417 588728037 617227537 987605087 991647590 192999190 436813119 132035167 665045118 549850039 569789347 278984914 655125047 71752177 897043795 343812358 443672277 749899182 921788254 471568488 819635632 91209804 364701858 137762151 699444161 74756169 906312337 429066635 535503553 755804144 920583157 327579359 603812116 885924606 992168405 378984428 967681932 470941557 882373688 391982369 751008361 938032515 955103592 726453172 743487483 973237029 995993186 703945596 730950643 783883386 939024888 857424410 939344261 208168921 948695607 813886577 897235981 576205834 746284332 139553470 198621453 773414766 902657513 748522383 778358341 883199265 977044584 748802051 919249501 758547791 831942504 803917116 988469436 173757111 729642239 902065030 997335105 426892380 690017199 886385407 988705379 954143613 995589948 722264696 723423811 373719798 804518463 860120072 993318540 600850011 971765171 49144767 238855901 581382346 846726367 442878823 764650003 636137206 908041454 271387147 723312057 741342158 746825069 100252200 389665781 725283755 930862933 609073043 746865711 156078049 662476745 95839311 706642263 480545065 485648175 374928491 738440299 562801522 946018909 626211455 779947339 995739542 996958442 56819435 468984258 744927717 915262095 397209603 437943006 585108899 855059117 279222721 753161911 866611034 929842811 377124753 895834649 629102788 759412758 604680481 941440004 931986978 959817383 524749495 961386275 754234216 886908154 107842427 281065888 19629393 286871648 218621831 855196869 139207983 472826327 536197080 840996735 405750974 418260689 102353097 553063270 742110636 745639326 231630487 282828605 157077928 641560279 929605121 961068581 378129822 589046397 985043218 995342122 158664467 896101005 909252277 924273024 260009570 877779805 847578605 886060092 586965832 751285879 733033837 999199914 765708914 799071080 546949002 569394719 289401786 525726711 558173202 613419104 39489533 379217417 589268131 928008475 203966953 220112119 909626058 968705856 158795323 435551261 825063788 856941631 570830562 845407477 789584675 998458098 232119079 474442955 166890072 396293573 292385152 369609607 574523070 857838011 722585008 797169083 871672216 927655539 538458508 632904018 592447122 863242435 726006035 973455261 198881149 427014995 855011397 966462567 457533613 471600925 580834317 908627163 100676636 921125067 14270607 430821881 541842990 905868524 770177550 790014305 483117960 560451787 289455873 524909021 963642091 971690034 215398722 871739501 994140352 996408657 880794637 997591082 14078035 590271001 654479169 678064267 732618451 798976064 270472330 511836175 58078747 958434192 799457365 894406995 586960936 955641160 979594028 980237902 691557333 989408560 898520386 990601959 187639754 342465661 298663847 732865761 886323966 930228986 244661663 994263648 186525250 971229226 268276373 826934257 561449391 985167675 113676036 139049016 679249085 953747105 616848726 771618047 84397595 822779196 928335435 994571820 618110511 837032204 608869946 713810376 663452369 817984120 541108773 928298629 412868516 587018315 866900916 986732055 741048356 798566314 773335047 833419822 491552171 528880825 358415593 573355498 438780406 959787129 366996348 974483181 301659349 323662861 479924277 937376478 305775964 580265664 587075209 662842533 982474199 985765876 516349051 968582298 885682534 992064801 348236578 397970995 634120351 684606366 182156631 495398910 168181904 492660798 701313963 735638360 642560075 723868143 534497172 814649290 370077776 827418059 622069729 784030217 797122019 888038080 427148177 996672789 411288207 829706148 639348422 977607364 71763516 426882910 200217806 856271376 932878018 958046560 304504066 396371086 565183262 693852581 580205782 860500140 322325391 426930209 78299610 413423328 812983601 861824811 659585582 772365802 417094156 952880825 655448926 935873765 412582372 522771641 389809721 953952127 626749199 985263493 916389609 992108213 343075023 725019460 780992222 833431961 729639975 914727333 585166396 752531763 645981888 711338118 982431925 987316602 601613418 708294225 350381513 641618451 568018566 577266199 430944445 885934062 254192544 518756362 89023197 864020446 486664042 792420207 543338741 796713631 503393678 846854038 826192197 895405490 960698840 966231385 257499205 667535814 227964629 348984690 293434327 319527150 811697197 901550935 67714765 746136587 705431041 991549391 166987663 243593591 249609297 798044605 222207296 393030633 658705585 817362084 735752177 829182966 239487672 278184512 940453991 990217657 293686946 453763983 701516253 992697111 884120177 942913713 506775230 958321234 260187076 898600748 444895886 831463722 982092818 986080348 609989186 959924660 718507421 787634816 443463520 721782267 477695439 521777936 472516957 763227617 841798371 955435043 593638694 760643933 369752381 948561077 71210077 955160303 368049197 429336384 266205591 763398770 886750214 891922568 191075680 668019081 345409455 585299125 567075019 666457298 889161437 925355509 754584054 890719563 289200112 443989387 755492658 885016435 805209092 988100821 470303133 555566186 493037172 610867480 735357698 975422477 779439396 997464306 809014540 973055712 12284738 720783002 229899579 658604005 864090674 928948409 123846008 595589150 15015978 599929690 252592318 287414510 119745679 935343854 683504037 998699204 631594921 950791208 173265790 499035611 551389432 901558731 764255431 912754923 779054889 805991445 246669247 727048469 966064524 987164293 678655434 747925378 976629701 981082512 278200989 378228704 80563354 781654140 878640452 887487797 541057123 869736062 639386505 982874866 490883537 868141564 497694264 876237525 660427908 939426761 57891669 670947500 93719114 999302019 22962881 270482311 282754113 564827436 299996855 663919597 953670347 974290158 11410447 247467321 722387852 883896237 50301610 575389542 224828402 694739259 667965272 917915039 487416531 646174573 525631390 842639039 662351519 871438526 528963196 993718607 631719275 662717947 839873578 888307903 168298416 273513332 888878973 981675029 429898955 547772488 768172024 924815418 280234391 537549249 851181774 883597709 67348649 681557072 545180782 665215260 984411708 987166527 296550052 576680276 694953813 705234493 295215074 355684358 399689864 881044854 500429644 703496957 42911 263998702 871427268 926735737 800477164 989899465 46215000 64626162 647629076 971311527 3894093 43731908 27618274 797357592 237163966 467567123 550786767 777662954 902272486 983578957 436439569 461212926 793821778 812578760 317774563 742754308 127914427 692863172 595451422 646532991 146147024 423438288 372138389 886704217 609061451 663902946 180729256 739873996 109074243 150480787 357139558 827728742 88199672 336884606 562342460 846560993 709298512 843375711 201004322 316659015 270624078 976653640 898526757 943224800 193313938 826905350 499862642 643962386 94771311 484366998 141079985 623408140 469122480 630909937 395154075 847224641 782649699 922285027 111652318 851739499 480483112 897923881 674144677 855846034 277375381 657863388 274262291 519739421 889961543 929937086 153740106 793837999 368201471 772901514 478918023 579044699 993208318 993630539 909825453 998115440 675071320 682778680 229581529 580088026 504069335 751537970 839207331 979244815 143429850 981492450 306904562 590638321 765643457 870759507 367413706 753501183 225949128 292161180 171468639 921718143 163688809 373593804 671966013 829069234 480144807 711203178 869079182 995756563 779634374 991638028 274564776 973390451 419875301 915129628 854241924 945119764 998662435 998693607 336558399 349502110 208289397 809840329 61455484 629666321 323123911 620099491 601253978 757329021 42504421 137067051 408446613 520535996 806778393 824664271 1907675 130196238 290404788 433969289 520238050 655027317 930330931 990362121 470653380 758312237 118937218 611128080 658808666 730711189 61768628 396679012 21498166 700013090 714368949 754612766 184809173 934242462 826974364 898977705 273864505 878108572 712593022 931296548 245202340 898011237 843850020 888227627 616754118 950550473 754455044 967854441 112365370 597522582 745047491 932969962 579419701 933867376 371668659 453541908 98263607 970805915 716194624 837731195 55073574 212713945 529109905 830979184 48303215 381502429 45454890 179041364 24530813 154784715 903660131 948818483 220857572 438993729 546341549 696839636 449018250 975523172 29509015 389631168 169205675 808507495 902967738 980068688 835718475 982901380 28405792 705772627 99176885 291240182 289751994 907274709 215461922 344172515 618673095 983090873 122742528 134050982 814866270 992863981 425394827 844981006 155953099 361534850 176798808 570923125 150377221 511054954 570443446 845160413 180497840 312414140 60995805 732237292 187769825 382303578 347137883 537124823 531546387 774298968 706941006 970160821 779203851 890660454 846352102 858371686 752723501 886148137 749344319 792122089 589989473 897963651 114271467 327205371 809853892 810531754 770906688 890498296 953789464 978925174 930516319 980372307 356063696 715487781 893397772 904151042 44347461 773610490 636622916 738069670 994492298 995617877 523882844 585435576 403497487 839920418 261798360 629518603 538795194 577892406 362540971 804610677 675244474 856663790 768932919 947733591 700118017 766648281 908909925 940583209 575192590 748866090 131212998 839522626 642348727 983893763 523913424 597714915 296049786 532355219 722369667 782588071 491241740 740141766 402717686 734849513 266725116 706940586 669734413 704249166 36430154 82055815 808410182 925840675 851643533 925200249 620547365 685767753 475947378 593943654 55159586 352179476 893998297 976660400 884026600 922996922 286744520 668696975 288218309 746454095 168788423 278856611 136279420 853057777 634808077 835807826 901678148 940911865 587142210 668659910 373074356 920149403 405414241 730004224 875081481 928451010 144094487 382449252 83196803 415508003 225791516 520706850 881890189 919712072 116366292 903075769 663349423 874667100 536660615 911085927 289048628 376376937 198685676 212881811 341656371 856843875 562043933 954344826 483484411 820816747 267445509 548403932 301263206 660451653 457994864 626162265 568674 391026023 339804543 651486360 118456789 647177709 919861320 960825490 550833220 835433177 44394700 526683453 163860394 793780375 678195461 882057840 37983490 392119087 974691528 975810567 763477512 844764528 114956032 339447544 161647260 531757700 575065510 810432012 80785928 301773599 715294731 925176272 6845081 81926612 930800326 951113730 686797901 866536025 825390359 928718159 844667543 977008894 235942436 308019409 971438944 988811840 179487974 719585132 37302619 62569974 944346226 976067669 115164368 591149193 765572374 874044594 795706211 820984800 519551965 759035256 837067648 963144275 953424825 997361065 218057505 827007254 696394269 962621718 806611665 965512710 264901108 817482840 647403140 728512402 269626991 380707424 744346068 804978227 194889108 395737789 323393861 426473769 932083490 947152646 174650677 200233246 136765662 809514280 871933690 874425736 288130667 697988961 978838829 980990564 901725205 957043724 263131245 574015152 262014657 756959539 849465638 865245509 275550859 357361518 49497261 51920587 650062399 942624127 567274447 962475085 370265753 809723275 124522191 970054542 819177453 886182873 971071451 989555600 913950971 948033122 824619869 921429444 966964921 990689105 324196542 803706746 559204151 630355958 960022209 985872614 318601962 520639585 891435502 897690021 750624855 906474953 688389584 787331580 422391834 600727395 493113062 639831129 259904263 953803677 793160342 989449293 290537367 779639081 140607844 491365238 979187555 988587971 826826289 995854022 425779316 513233640 968249922 981369986 794649679 995047827 46536406 828318641 833032868 993480516 156609141 248557779 620579894 883330146 698819089 829272925 972060865 992650672 20257751 268302798 960080516 987662314 134468126 384385400 659097246 692244637 865630144 887229480 215152550 352971876 287502761 867697829 15116876 215337039 610227021 746752654 942365893 971470304 819275978 820521391 752256015 982086479 994027450 994613864 405986074 487867330 481594450 984177624 684914994 840483840 753658243 881462741 12427044 601320536 190664747 729568981 902450436 951946071 455248677 936371358 753338923 787021285 390509252 960558071 976234552 997017506 566860708 950216727 188865285 292926021 648504912 791558351 177509165 915997432 64863258 614783617 656036415 799096003 275321766 741894144 737944327 978104511 897995307 906094437 296895881 755191450 781376008 923422394 176432303 412028659 58923009 764918191 359006251 955575778 339212593 909922652 84844282 671635238 109116421 424388267 457373531 795134941 220274047 414093326 119536484 413183013 360829062 638553900 900590418 965244663 151487254 540520910 96206132 365360546 190477958 761146432 202010765 718549160 534887437 703354315 668750816 680849605 432338831 499801274 878054404 890490537 45985165 671770800 381913179 617776970 509594161 897734440 620006476 870357306 737771887 939544905 842810698 950340623 716724493 994530975 297707213 704006862 222177000 420203378 781615131 836941849 964882090 967177356 159537356 962571676 429975505 928178478 650511418 708526189 556857236 953278378 107993655 818089327 478378424 730033486 247591703 888263626 965101076 976622502 669646190 850167801 891316683 985023776 600609387 816242739 88832658 525566612 413703965 897847513 162559103 202267285 241707392 311011685 959207781 996175691 429479001 923173748 314327344 612273853 289271266 636624051 428060103 774911895 544854926 664759826 762467488 866959345 285390692 528456783 63313709 882705362 215949573 639469018 86906508 265912709 210320668 916852977 566471005 825778713 335736130 862636371 636366568 907912056 295635228 519662224 130811423 321805552 487304652 910392862 354576875 780860766 720866369 819148484 999280999 999392140 248606096 606680430 711990605 996695272 770645929 970643203 3785324 128448824 841366354 967532353 971006557 982445062 792073122 808549138 321071457 584286372 777740745 892451065 272912190 557410435 996675816 999096858 343205459 703189043 702451825 907279012 464956607 891829769 660143972 716774555 131414521 501368410 492826615 562760555 229177516 616076834 593538893 642230775 921386093 946871559 628020560 920110961 919266960 986594999 6466412 391406855 694354361 805637629 177510727 388518472 434966369 758715083 719495700 860397007 10593185 241582546 469710021 975507439 202283095 470162060 234913380 822491183 367152200 594116021 455018967 503485224 162348440 944884358 102813268 290635746 233296651 996714928 540560802 886141895 166388592 879559843 361677494 912179710 843666150 882277137 213694359 680289084 693969519 950337063 860443092 943082078 4748480 788709069 596288762 782068010 789844771 988299136 16665894 943919149 165194442 692083903 668113363 795655572 60683140 738386246 930447538 997421629 333775891 630411061 110121424 329186365 42106759 817743916 426986624 942101342 772092072 790756161 275983738 284943577 13135345 999156181 852093535 955245649 899374315 989577788 236514731 622332495 733669821 919665257 226659034 320700398 844444955 889079008 709765162 970827713 679634183 723712842 754283622 830268636 66424121 149594813 542386648 812028294 669717382 735858223 631499756 657549566 102692849 785446302 206007635 280588652 111703598 472113610 991514905 994562033 387602664 549249106 16953656 751808357 693863267 806554815 177060324 634884269 322179359 463315327 592626719 875946698 304566845 507170083 921941051 947848863 23534806 780208320 405012534 440002759 840607367 895804966 772334350 821591449 376194048 671518877 976942097 983679362 196318831 561717394 855723350 986440536 833468691 955695764 852933575 950928448 150033528 926868050 949976486 995016859 52630198 674959650 711660569 856328008 72840004 572709671 733112794 816482777 115842597 292163215 648775289 891619421 941239687 972647951 763704353 793738544 937486514 954021151 33026371 610304684 524820062 676797135 377705704 417127699 732483179 786023220 885079540 972895391 662921365 930004722 333123269 655563508 392258129 990109309 79005546 350395989 738485801 929366213 672795710 738533763 509127120 644091913 54642515 97567405 926698774 974472923 516009754 665979899 617608954 668382069 615208711 917846970 4169861 169091586 797535900 822260753 63711600 166750822 215220717 344969571 321240420 429435297 415196348 629299354 492262458 503754018 138247821 628896414 800953700 954239569 450551762 506790860 372019710 932889504 570835473 879697628 506563625 639068284 301420430 684596643 666884540 869626119 233120242 680325950 797015427 973657139 37090735 194645401 941798411 986816599 325338570 602850535 479484407 734470302 774407405 887082455 209878551 967904402 755171046 978185485 209090421 372812957 468153376 489338112 923733632 943214930 292310234 440225720 259891449 646278640 235528054 583844528 310100750 706478938 597106667 627441537 667612139 882991659 857030666 922362720 715093430 746734773 601852726 906606300 635273119 958047925 917802690 953118236 681524793 734479290 131323921 375299486 840895239 883571108 4232751 511333052 82857504 885909038 448296064 533288964 605942332 873922607 263185350 645823543 528022997 669328527 226956288 961337531 427261223 495901663 45884954 116755853 734044198 950104538 299849863 836096361 494171498 579788477 687744046 976942224 475919096 617609560 967695416 989735680 624241398 674443315 53976683 751519821 24982993 770630226 533496843 601109073 644274394 976761591 960315902 969635731 266693744 540322216 652567051 839344878 801746457 810561679 153697327 455325535 668015482 717663317 250111061 680366736 847438868 976536383 256861994 961477211 954708336 978056718 137588540 989716206 383329586 763268388 757467690 828265930 340191683 808679252 703583842 892871766 918006822 975288207 468959335 578601489 788044031 880560371 333522020 510576106 483154931 994546377 328266 354802285 299885664 726328907 663247983 972377138 618592212 722167307 783304784 976636437 35995017 838998772 692713184 881309788 461524282 890833834 430168715 572948850 390478066 864351097 251483261 877262192 226905379 761546722 850645849 966145058 951951794 965245668 886522128 994819386 221556264 386025934 10265983 995473701 319657161 730767421 423699851 765783553 660948102 992184732 14040911 828584510 497025236 987922498 430630718 550718066 13120063 981632584 573714839 645553002 597041494 825194761 749847544 776454859 249016160 791610727 389542138 507042048 99443769 923612423 628729828 898932863 394074503 844703654 208827770 908691555 937831355 955044815 625930702 674959543 446404180 924021179 402441969 551368026 763797452 787058897 316829277 324324824 688075709 948424099 306904127 379783176 857268904 878168477 968910523 973257473 485599135 700788917 506192939 875391282 600899412 765642100 853751417 928751438 576224253 712093672 276453795 325082262 367566099 431127313 15667148 180435497 67667555 420096347 141767018 942866863 797008088 823235997 153691151 176278178 276733398 910228182 306531 713288361 280600153 493009072 801911870 909840309 267547362 885585565 462895245 636241106 920587214 935172724 920776541 939644417 266957799 401131255 467831047 548946199 521499774 725852881 476833869 775537587 971836746 988765780 200040519 975386666 562659435 699122044 205712814 262583257 98652156 460302888 966652217 968405406 30587888 235345986 932287947 981728425 405460476 915724459 462733296 517319930 25049218 768309161 613989892 992442713 337809722 827848070 532531631 702098468 924848915 927664229 133841319 415113883 558543745 626596085 185556102 554556851 402403683 601989748 412252771 810708253 155543893 318779535 283587633 622248151 570401045 894432241 287697699 967349393 54800470 993559708 704336850 931334781 755538762 872407401 528209954 826003364 508358996 566859590 781091551 995071489 336548702 924546180 821912777 829883417 311152733 868016166 212467012 756907658 139177129 440711103 743350850 877289184 360852071 598767763 528046566 699589448 177809210 884958513 531436408 671523831 582502065 690328272 618541413 943120816 506012448 994700400 448003537 479840851 92694652 592894527 154163733 908169124 194736821 448123171 416061952 590765149 797504531 955275340 257665166 401162537 946318301 969968107 93787265 620984248 842681813 891891570 920289792 943949957 574703106 820894806 298342677 441298957 852103004 963144950 103648177 915551150 214049268 973810063 452409897 800849128 629112216 772234392 78269275 365133295 123435649 356043269 164445269 488482340 644035193 666964623 231821400 459831367 773288171 883478005 383803801 770629753 962548670 975038864 166429290 492158444 832865515 943733569 700745892 709616521 506067378 704052472 819059859 834752227 219267416 620150844 283927278 612837093 232240284 233557814 277433275 769964175 573984452 988688124 159880840 571197375 849493185 909465884 300774243 812922814 789385232 967124393 486778994 625177996 642367248 704064915 206807488 252961897 771697738 790731582 615464557 673007365 668498726 984181192 345844559 750059258 608409977 719385842 652270975 941306226 51809472 749066495 967277382 969544491 477471416 762141043 86220746 519310480 575855243 812415377 833958462 978890259 759778851 801017062 689459581 800794280 507909150 827782730 546814983 704086352 471597092 627595925 846353816 926360137 715453420 815924064 532762224 957931937 23291394 306799150 895902765 995253933 659872802 730115504 529596503 782555870 724609581 811710648 20028078 800458277 433888242 451211130 220307987 494841035 194812436 801858505 456116248 876230815 458655813 507361221 664894003 883439916 492343088 781733324 368191764 418920236 760868363 895568520 232031810 435668607 721526814 738323859 598270228 787429187 773475381 789228212 313583468 655063294 654472780 739590646 427937590 535866126 331288320 749329466 295479015 750303968 12744952 952764266 643021403 662178223 558681948 756213270 611375609 642882433 947194353 996016811 161112666 749882637 320348612 771504866 192860154 809175167 376929951 613317543 837603334 918206917 483494766 983629939 328548967 553666533 680536320 695416431 418454878 640673490 190009103 597566309 934052887 993588627 86933610 748888713 243203051 275753999 460728720 546334236 207577402 864998890 130435436 365031403 700453629 879086634 677936804 871792482 49716774 838617605 939965338 967685369 206079302 365769868 69549627 449625919 716739222 983639534 921648851 949072827 541409062 718159110 298931738 599541787 299395831 904267675 876402295 912479669 3747420 765057839 41498043 658828193 207489179 238271298 451962075 886383999 268380596 729845960 766310300 977761640 413202059 650391552 90186278 175211775 547816151 712836852 861397416 980318064 372724968 541861050 790415468 844186206 530861973 699817978 738995964 786358251 405685070 924563648 954904005 985073156 126464814 668202479 821580911 894530086 499899772 701920991 832102629 886161301 256926444 511626985 333336206 440925301 272417486 482099577 432415697 798956178 133583068 151476189 608256601 901715682 872593521 958070081 368528424 374960567 34288845 65379543 806137506 821169080 358376232 545272327 95761019 489694655 235702165 482718211 914705628 927215751 935862767 979809633 597008826 638505950 578215165 714714125 875394595 957678401 853959807 977569253 277906139 746548831 528004901 557024324 283338410 859856535 293561055 767508163 412062376 622771762 845682755 993795783 559228078 926784602 669871681 731507207 245648554 545142577 682741845 692960092 89193382 832549310 943293438 945451795 893657990 933903962 535317792 769360166 820162949 984387050 563816471 658595449 310948293 774247263 6390667 737554425 765831817 995542945 662451594 702546008 421082181 819494099 471828933 595893145 795061564 834048833 500786273 998518632 387692908 565598427 187314948 783791831 217254890 920503778 623409001 653273398 547033075 615989514 567645534 790852876 993752835 996597802 941387573 990187365 400438456 995948025 7885363 532666962 244625058 935697728 573274592 588662128 66263821 289061286 17578332 536137071 746714686 913325878 575958529 769069313 937291704 979182625 450103989 959182097 201694496 831804201 683082641 969891148 370791714 961555396 345132692 755716400 647317769 825752743 828235045 844961601 816127141 923339094 943316714 997905515 439989844 733598044 725488469 990033512 77993297 725675615 269540108 912180158 338542689 813055542 576200498 870247041 694275212 703493034 610246169 742666621 812122411 916904196 633543201 754700513 199691851 972947720 40145807 857488226 980668329 986107553 719183225 945748193 49262132 891352186 724609989 982154106 815715804 997862920 298795030 980760781 284942221 522038036 426898800 809603185 874346238 994567581 777129795 879733314 39926038 306724631 873438217 920094045 627382549 843533081 174042036 650506852 655046145 689595833 700414649 907352033 944225344 968463677 771487669 940384020 157567510 629857484 141415203 667047419 174012734 997275952 639811637 971252705 868575235 934202148 574019980 772403545 880661434 985022873 604601544 618120120 800113576 941038451 2436450 887004408 289876218 741341565 573215213 973780398 112190687 895229701 55854516 496713156 672971415 958863498 303561810 789807521 322205394 974711331 937387094 968637355 84124985 443456559 750645307 977667522 734125879 870642083 111118593 426441011 329505937 953990662 65799127 469405497 587978950 626099164 861689578 910935383 73759944 732380533 124762694 149462374 146531925 646003214 869825127 998490616 260386335 785805398 982314787 984386601 988264964 991294770 170000355 247253196 852485094 895364160 544240749 613531733 287753454 680533082 763935917 791935928 58070340 134371094 252719340 735106026 631905528 751008830 392199417 837337097 174948868 644531083 966808416 997860115 668372299 784196818 338674215 357606935 405522395 460967330 525410832 756554415 979667285 987017868 918498727 960457000 495981594 748622986 766197338 778318550 942376201 983082416 799886700 968857369 524193380 547203005 166562673 443916380 617566136 996884339 913712775 919534824 454730861 627178373 699360885 803380919 811892380 971933052 602313258 626624341 892487235 973546548 690582545 778543454 947416468 954090399 176858557 335700711 636620817 722275977 64747277 126253886 454518492 553665657 568024078 690725192 69960161 852555403 347529189 627276815 788321855 964257373 635896939 767300027 452516734 823665516 396873456 897831317 709799621 879177114 947135328 983885829 251456390 857583635 959060282 964526089 438563430 716662901 253863481 338778811 224686541 502151957 313290695 352514857 523869599 790833603 915463410 919943877 510907360 831408606 618971119 689463737 929332661 949632011 353422276 654717192 412587878 649466920 136917862 238746051 841826924 865585538 754313001 789945921 380338411 748297534 614589579 645569217 745653239 911104511 336312248 896523831 117741651 834550614 623109517 769456409 891866247 934594307 581259528 993363258 406880132 994506458 543957450 773631611 676759806 773575025 186416630 934709776 608446294 643870458 599708533 951895653 539820519 800080488 10252956 166894527 939880768 992752651 58520434 75075915 199311959 514866658 24696596 628075661 992071554 993862522 472396900 731123835 82478658 198524999 959178941 992278611 735826376 895900469 348495706 530673190 975824465 997244093 503071319 852492744 559751081 669776552 102672317 475797835 37373782 115731109 563584357 944776989 968864671 985531105 962395796 993537795 559831586 745980996 551906881 565810408 187159327 234153303 8800814 395358792 127489202 819696881 54124523 803642295 903260022 978057980 74551915 276966239 680074573 894000282 810109307 820200584 303094378 739483025 388195576 528911545 300663534 519825361 427916051 501694730 997519465 997855179 291066111 422318019 528670190 585029382 997950773 998687248 816703767 824327682 919440344 941275812 217832779 457088865 501556441 555735421 829044773 923542116 692358155 822403901 447315405 963933047 321595656 626466894 666760734 721833728 635209977 730514629 770707120 985937861 415966000 807711544 85439290 810364893 574248149 635523790 251116920 717359774 975358239 993638778 371190714 430623018 758638169 873805174 217857725 710423173 118230172 598314434 180609925 383039156 120026773 275743169 236908741 575752110 821758092 913079679 347484069 931506885 559077671 829557914 713727576 749908682 625542994 641335897 82676161 893429722 74735915 132324467 988066016 996189561 602197599 906975181 236904941 830649324 806534716 927932623 709455095 862060506 131940134 211061254 615495407 715960360 988128054 995121346 805051883 927836623 736831206 921093706 637271817 852526715 308083987 447901861 998185999 998515846 148196436 149298549 576805729 951353143 32206938 793772057 454186586 848684522 464943421 516788156 194234484 512178440 615829958 816479670 906203877 993487155 2361138 24875246 320507256 418063465 887666626 893965047 413417271 767210440 229398209 296686596 411679312 697394825 929742795 940603981 85511809 343407169 312221416 352720490 766321622 842934362 463906974 977431131 788990278 840677027 58937526 438384125 131831184 191943655 23844918 656923782 920608134 985657653 171648132 898669327 952318948 964012091 869773650 933795515 59817475 660470039 880804004 965367997 498571528 527385229 600895494 833431330 344354217 777880634 336681247 702038097 32832597 914522250 701727822 912850231 183918458 935762263 864603763 919318724 39271965 535584459 740974605 847058928 438658081 695561072 858495296 964695140 590901697 772162807 116369394 934784887 89644778 314711092 392235590 911616278 369296139 665934982 297547793 681468666 57858160 829694364 173349491 494344458 131600471 244965937 341304015 627342974 709258378 741115986 307687196 843185958 803300595 931720435 872253421 930368626 197999413 278024694 183485794 533368065 406244358 682354646 340745203 555826267 909302507 911557352 529047038 723071439 4329753 880516090 997023679 999243848 649577255 997677768 311936095 647771274 630276634 702251262 26950475 159922368 439800545 869992678 983311885 988176304 545555465 711989691 352146561 888592259 86151855 87839028 287788501 521659027 80357732 597806307 957843663 960136261 42471483 534271550 161452373 297912768 708062572 710345949 694832336 809827705 811468084 832533778 135606139 504782559 616001001 704689815 866045498 938085429 226698742 945890698 841104257 865039706 721386779 741116199 248685859 306087238 953249270 994614987 113255136 583458880 359615444 461676989 120783158 955269870 499537199 764947913 34847280 254450557 834684701 954652971 122711812 963030645 622282325 810912602 655111938 933381373 82011806 529071690 372853034 846944332 9859723 829520499 861584710 968988180 844481605 883102910 555162014 788957098 805432080 911464289 274770130 732101714 37208616 41252054 394059175 747182839 899117234 900531747 796334427 872018602 34200682 672414523 525351525 525887060 920622325 961608739 291398679 869282438 362273697 515902055 452191259 773373424 620566065 997967781 689937096 928038855 496425968 858888044 264662466 883692900 38266843 271384115 46183568 705446268 890540874 965933289 764489148 947232539 439620816 678276270 882017117 993075243 131121802 978237814 748233308 973820075 53121698 726611439 496066415 906009634 107438577 853471907 792334227 880790013 964641171 979505725 43218238 203523786 236874494 544707302 256465980 483487145 416535402 710830074 392202985 418045045 365540447 520789682 991207916 994482856 760586916 851654436 466064936 721478827 955614530 987889844 820316092 854865430 4855715 623698918 846587703 966727492 840161081 922541586 220405834 818352187 501645456 839225523 840364156 903304637 167558273 966365410 944316666 952552498 982120759 986050159 619444742 978963304 957491340 990852385 815968924 937486496 553318075 873441231 202098471 945002260 582246690 896225066 395345920 721125836 869553606 963999063 533222295 537302110 940049070 972940125 664411435 802468127 571711275 622810778 945523790 953758115 72363561 632310327 396882815 764705145 977574878 997457774 608469418 871037806 139905211 842014152 535066254 560830623 985482662 996699525 551062716 857846226 816348850 937631993 888675336 944181968 462075724 483062583 884215388 989764768 824309463 840080581 931585046 939035683 79065801 484643007 641066472 753359828 880600926 989763887 597772179 762618451 265930860 376707805 382525282 727460491 944881781 995917773 291927791 786317921 913847136 934439271 504938648 756503187 591794351 621168067 283910056 440554585 233134421 661865371 870669602 945841696 859062562 903911615 94173095 233088578 376747804 963112387 890744674 940763540 706199307 748076297 479615333 672526439 989759898 997683766 184332256 473065928 522966616 584549938 630814810 747476396 572836274 586784958 949422500 998248344 132173680 929014948 38242415 606801805 179319651 333546005 146671682 230890631 177614961 566797703 158547680 452705565 6911982 634395570 905537109 914855353 351801297 448358111 493715881 890799604 585328437 961871771 740650840 943456541 752465602 988706242 991621014 994619737 619293962 855133517 359501426 955150776 711362243 746597675 91888587 313751769 551018503 929768826 925384715 932884518 520993033 526892008 498247654 810842708 338453871 663703455 828957396 872837157 173042025 325758296 107910162 639573610 549874127 586504387 370279125 789537505 219575448 424677197 380412280 461680448 739739499 875789185 747537250 944605776 941577944 976167606 636197881 762043460 131249480 718238756 742747723 815463452 901143553 924346587 689606568 761736641 342411038 740411281 212857595 264942730 892168571 958858674 906787776 953672604 560971351 606609112 414561497 803503821 653753586 653916024 100990732 780577836 304712768 864438123 833239746 974509141 887540623 897922488 159095306 284359481 231501006 672964231 682376074 765860758 94360760 164009371 54057245 815843566 369236709 470754057 422010317 553880997 943762449 946835691 918475751 920593670 435708849 662825944 11406476 348867280 474191724 723391359 293257899 787816281 881465699 912017255 719678315 885819012 562761787 872133914 232156936 685592256 587840351 850354208 453910233 618112423 468615453 856953529 397580923 591150276 757804445 928301488 111958572 972678615 870347227 901646079 223533412 427673080 785700308 818263404 300618762 531113465 579690337 931739713 183685038 382935001 849859468 920352802 427194375 838563993 455468272 676457158 859291664 888210354 47834810 871174639 7643246 93609782 846560048 988212375 960175347 969350797 621310571 642493668 447011655 970441506 229752362 335871531 677433533 744767264 631467576 984055221 242072032 767527409 217033024 256139689 172423343 237111106 542201205 828409756 355595387 379816867 860785045 920901913 351624369 420669194 118128754 920455774 509509806 806271180 549489267 633306766 860396464 960378317 556721686 976069364 336005981 943165889 815201912 841025917 985796103 996551689 626949940 994087833 766051939 786901971 718591782 976400612 792600340 869590182 235405208 303160683 953181118 991869449 779163866 841300325 839293060 916757063 692870451 936799307 633552611 835281292 800094139 819105330 124554349 997649060 201601123 276227346 244946652 913557789 756322927 925893942 275739645 767570303 169200645 442896914 496938132 608827875 662693220 664914796 644478015 804561810 582462904 612760266 889525903 999379555 935004559 978736102 506478009 816232052 223260305 750174523 337545451 339613167 750517 71499140 81431046 560781855 268898733 666969098 95157731 788382789 408012521 677360089 948646618 956860274 950515719 981586490 969742094 997217928 146037301 542860255 300691743 617623519 422309970 937746389 128457977 190537223 445656119 736843719 974209351 993586017 874415280 967731118 850880934 864525943 173869593 740892359 364483987 710659799 627225363 813391527 770976796 923046332 734833826 881991445 557101305 853706371 302855548 875033863 425237592 642969386 141667990 679694910 742798586 765081480 568036847 958899618 407097369 980634675 115980139 515127063 785157132 943706998 479631747 813404419 676210868 684029771 151506261 481287138 24705846 512088305 743950239 947116245 913661317 923112046 495311570 601492991 879491859 941288464 740824155 788866230 629973269 653873644 407302515 922606398 889400391 971400132 96483295 511499368 940615324 984476693 844635146 915602731 956084141 994508675 273377961 430646252 195459071 623143338 225028816 452627566 524384099 975962745 835550057 931389812 989685702 994889707 342737712 754730515 162568442 454411195 539405229 716254163 911160998 946670994 872987783 980499044 857838768 872948222 108042406 778117393 948708678 969577495 852952891 981300979 434963849 751331187 33865426 510382335 555690849 869924959 347410615 576767335 394271544 558335167 899517387 964360017 534543549 822489952 750066816 812423873 873940687 900861571 946517234 969833902 458680505 512639969 246721201 810958284 711537348 789457739 281105106 643983604 497617443 755540647 972386325 984548032 444901555 820265707 283161112 953307403 991477600 997279668 495425250 859235498 862247061 988750436 164213363 793456362 130700719 179865131 937581005 953816259 695957552 837291086 889425874 963139454 422379221 956745243 205461921 762557230 611078986 763884984 424931172 931341437 195255038 914450814 661704205 816369576 663032778 867624590 588512510 770911844 717377174 848404106 971680896 977201586 294710449 668090631 917395446 950184030 83905752 555442590 619321543 773905612 51054758 966473263 414994013 419651802 826155523 892547711 760889826 997431151 291316194 407115694 866503526 907506066 922915897 993356124 610523134 935309765 20268644 852223736 32587050 377015803 86097783 772673839 20659061 346557413 333547881 834194379 431150452 976654217 390334872 879345674 407030082 560337990 194821553 292952371 117125495 963729104 450934469 884179299 873618724 911628350 135846921 568008808 755449670 920843208 670774267 721043284 92126771 207615882 904691345 917222887 863136861 865871242 272747688 719669528 104254840 906506071 685606129 797559014 873355244 983101501 163986121 821007531 472360235 916414527 129110347 481842815 942036075 992248618 706265087 846773046 142380048 613565641 794024598 851254996 436400762 832646813 940959158 953746155 946613956 962626795 863595201 940892480 732131439 822943136 186696455 343889442 976036529 995671951 66877281 894420304 178901741 433296921 587643625 940761232 968530066 968573379 225614719 695648851 748877520 807165960 636458865 701198632 401659474 511165318 266485091 439713740 203247540 645811542 115265190 686074387 136631492 305725393 164696603 802356184 745108937 844560451 254047188 353828364 58638621 327665502 747995110 822286402 350014423 958091262 607438665 974887459 699532829 984262802 330880814 910750125 227953323 822700604 585182104 703489548 829565597 904296489 235742037 880652096 6406121 316233224 654591599 921486948 57888150 533156203 307479830 751925829 819362576 886684948 203194448 275008345 956851151 994144803 656212145 922329989 526795678 876883073 73040871 726976322 792206834 971984357 515779467 521236190 361710885 760870621 453890349 732184947 506778662 816289794 720333445 935434681 578019333 871686450 552190737 602994284 243396908 889648758 729077242 994276475 344945601 736347815 904711239 981408831 385203547 762191391 912519553 951189385 846924084 944974608 171497976 949871888 598312522 978444131 906791415 971988713 347140020 491922970 513919240 934988252 202373358 850255452 243786309 815840728 110736175 428341777 922660295 928301837 723725828 922619281 66758349 591723801 379885801 971286563 63592445 258032126 563937514 831983401 925127533 976214647 214226290 788930044 655874089 664263553 469733437 827431023 989956291 990351361 18531193 538159860 450475962 764326417 5122724 121062611 469089267 687718193 414801665 966920075 635321649 677534667 823104855 948956923 871194623 942762342 865204706 982529670 297572735 911788906 862682091 875702436 871835323 882998164 237856416 483389530 2449840 492155811 383929583 862900700 382002226 837256276 225053117 290912038 431199349 795966504 830598148 867738400 426376454 971206976 160095885 429794023 146029236 242333776 767786741 895549968 934646929 969102703 503591440 802537258 709464062 953265890 761044811 860386704 971439056 994005727 321407546 696484109 110947028 278510125 329832799 755652855 973144150 993074696 982062100 983833189 736624637 759695428 201002926 822059559 928168362 995934143 874888447 984997012 574653219 600086301 655458326 746136023 652996160 862996472 810986655 925629909 103313342 759134958 937931911 990544478 340673494 717096408 897821953 915587001 853257304 948985871 360259717 496284189 593411283 617436187 39232501 164430462 19250213 932912936 832994179 923663254 803000835 948112711 124473949 629988706 553822844 915136824 609703421 856338018 301135828 584072873 308667074 765767613 205998152 760300559 6859466 421961431 691852489 697779216 92965508 617932856 479657482 840342226 404403315 405580192 903064217 953154721 776104129 865656459 145937878 793750747 468740180 555397899 147720689 750633902 516808632 929251838 966184507 966380885 165829494 876981100 324026251 456476653 594027825 595911266 200788538 417718444 817275367 844501327 162791606 979128003 297347385 890943502 301235024 654515768 526484645 970810870 825659281 935528822 106596611 163914224 993814382 996728655 85856140 641443840 299600140 710387580 602985533 673480234 538355356 808335104 448921513 689265914 538277362 609365577 248181278 274966841 54924850 162750156 766783296 775173642 254158480 343660795 942962724 964327950 619736088 868968345 658107218 761736660 30251364 544693329 453904395 742091801 775379177 883866016 97381493 922579007 913548103 977608793 418344717 627453444 944512801 957232891 252214056 852775471 645303631 940039603 539050526 822726304 149067277 521483437 146743922 271461530 891506495 896952118 946717238 997822072 146249378 470994576 654820103 979349706 873571036 894131211 242564043 462507043 603209445 619086975 42240039 407343229 355343608 959674614 296571786 834947564 682576707 755566198 185219523 535769022 419968693 742371627 493625573 862798343 472831460 477578445 906321972 986697145 7249787 559358978 13177228 689945738 57848423 801536872 441916394 986510008 458635735 468223597 131322713 511098603 197754758 593174523 636561914 973108247 826762599 986982778 421410919 713963697 226178982 449495955 220243427 257038218 946584242 996026748 304382908 903749633 183449941 621664395 559832070 916855054 529301773 856029474 776114246 959753355 607036076 804418257 898553881 966497747 38044994 654713128 594098986 930205699 454401692 940983247 662513979 705994366 612287491 633721165 381387235 882133665 868025076 945476427 759038936 910669679 540764243 982606977 12596865 235190493 577553310 929812880 341635002 489527037 275713123 856227200 6879239 266989349 615730680 765733729 261445136 532373994 81472881 470580574 738744891 879536884 850415822 977260119 914193284 967696026 446911224 559224210 751715364 854330038 959409058 994572573 483933490 954024909 523423473 590320381 432651804 491010951 854650116 887450219 374536006 717196677 530165648 555911858 404395911 993540974 766609405 991735667 558520337 607225124 274027523 635256265 184941454 343518935 208132554 476949544 509300267 539555033 100447885 995465265 757051473 956218467 827124540 994111709 838750679 847057634 713870145 801025207 70955114 906012849 717489030 926274187 760020649 977551714 785009541 853245446 952337499 989358475 667898365 983321861 193903040 262502192 802862463 807893549 518026216 711061610 836145056 962510492 608267254 950774442 275774447 707384510 741380463 870236728 596674078 906861734 479152680 529098871 447885154 934483431 831311557 858690270 526272818 990127034 960239110 978722092 475439471 588177160 333168388 835840846 705098390 741006110 350180538 500143917 491151025 565706640 20172485 236562196 509291283 870240661 326685385 975747854 442082288 559269005 844843412 987088941 98372045 141766889 54925256 734730612 964988220 974079329 446534613 960297578 804696964 946343096 482420857 810531284 550814270 905703777 550217394 706783390 136386741 707097631 284672940 957519910 392597008 609091727 942120163 971808738 191166348 987591623 5496318 555971100 108972796 339870089 868705170 987963943 865086547 943783707 167792834 995940904 619457602 788023328 682742636 951788115 536651104 601590110 888683009 904537653 874778771 936716178 861416283 865512413 547854881 726358886 843355468 946264723 54641191 140822971 396339676 452924289 96414804 586424484 822198982 950457674 242012190 725150475 151783119 952765351 794791186 825341766 488477483 722832730 636396062 650015283 565078686 801221659 311802596 486500965 819820882 957864675 712268817 716701779 834692686 983744124 932312234 948661532 446606366 897670948 797940418 921609431 579304293 942109484 74282268 439115709 401395761 509494595 302832052 361032243 943451803 944838782 196550295 253876381 62122678 434781230 958557089 991756366 765981779 812611786 78748019 925417464 735851206 816677130 47822800 624387194 12464467 698942711 143832223 876151542 514725917 812819086 516366324 957000796 458046494 490298171 122021999 572005033 772062936 924255604 789072585 849527120 85722297 547579469 772724992 847861040 287684908 873120992 435105625 575456111 229376806 634055969 473198613 800055907 420044530 773710741 787384576 896805403 840157482 958673819 598541450 990840864 774095756 847964409 167993873 371845643 263814374 634126232 978528175 999141625 468843708 772328066 865567729 917855710 418595588 635245790 208203165 387937700 200407299 556358932 338872972 686849241 939053678 991659496 768174907 835165355 244009091 967913214 486112336 847050512 109128188 996168447 273515247 452597790 176951076 259770255 192096235 947687321 617016126 885451719 209359191 619090788 742036832 762761608 2679181 971012302 427101465 434560709 752072751 857976158 12120601 881027760 241272012 776614053 972939294 980662658 30966936 43017703 711184935 732735697 988156149 995027091 76444915 363906188 242642342 370015309 513368444 857823696 564705805 979514253 62176182 754344405 787179418 885128760 988871201 989990011 29302740 895135194 801022562 939731570 73069990 259515756 324147384 338747423 138339834 770882431 278202749 345168614 628888407 902261277 172701171 524296746 53084028 377559275 592728727 645414976 520232057 881643805 916347165 942016492 418390126 911865827 45894201 941088551 213472299 935193390 504942854 669754579 870478276 970543118 763356105 778398304 811319556 931333899 494650310 795182881 848902885 929412866 764080746 919191492 132043673 585183280 961696473 983663342 152885648 249786334 402604893 949968260 751473434 920886671 695517223 761269883 465089633 602663676 646107950 858592301 765522842 907989389 760777131 762521088 250877616 798767132 152672466 205633136 981439559 984562794 969550841 990366621 288206892 726119701 138573696 459382099 901189361 986310320 370154667 713287592 652580230 824364627 165948478 904788552 100373160 193394329 383221069 962610544 917568462 954674805 992087604 992383961 661915491 982617782 22701408 606163559 509400428 715258762 81590491 793985577 184281438 462691815 423454572 636082678 292817514 869710012 641891370 865073384 822849726 997797355 436748345 649082824 214066018 473935866 518573767 791377581 204500590 848275733 849188081 920379718 916588206 981094736 701853003 703678067 174552266 988522204 157354804 346116046 141380178 528810928 707521094 762551882 207764502 634883250 612603091 808812993 262860865 713108320 211667764 955342284 11287045 516540273 742375110 760868310 201802819 813291750 953655570 973697803 516976433 541834569 973372144 979254061 484901712 772949015 345450114 449824994 565052997 578941391 532341635 997884871 720593459 826091813 431206233 689281134 759028594 850618288 451463367 779735695 606707525 902877966 104517397 866300719 765557283 972915577 465301152 821392132 448079004 656532008 358070419 711598331 478822512 572322883 914703007 966872871 116008003 911061881 347535165 462044230 82925633 426913338 300185443 357839873 272811148 650290194 630380965 804193925 508177693 542250945 669148818 991596162 55282851 107425167 203128207 531184617 882112540 939919638 462520063 477692608 863509379 885795659 337425040 673252310 436652368 438632403 741423130 833816737 465023741 912550776 100835274 586597062 829927122 885978836 402606753 648695548 690630580 851915168 427808425 621544210 72315602 539429944 347542494 762920997 503840960 504755156 279456832 463425153 390723379 501469089 830239772 988989159 380943727 726746633 525596001 565166245 575612913 974432850 461442863 546409828 426121417 776019668 602886401 916761412 165860925 921577677 316221775 549231028 509717384 631072016 273902368 412796354 139275194 380026089 571061683 770366555 137929248 336179744 597462764 788571789 756644669 967554226 715150993 849574461 465910262 636708119 147274280 806506238 978849158 991785332 369200048 422562076 323440154 801846869 626542446 670569324 470636827 970546441 516986860 705638649 453836819 887836258 371870866 576087335 704935699 852102861 394190903 640232194 212390912 668765484 720211551 786556819 448415519 723017902 406604965 460870615 549298607 899086435 437850203 788462591 149488157 811947997 906516 603476844 235318891 511523653 341574888 482818360 714727687 995424388 743462868 896303472 628184228 988315734 234406870 398268964 170682117 240818230 931649565 993382720 509120693 677815635 298094384 873639437 433709070 915178296 492646435 649101529 65925006 983224455 184543271 772321141 923010159 962269551 571132950 765509364 377839696 963416704 520816118 572517984 87405977 486632322 113189827 986368898 148021074 903909329 951163225 976819090 888457440 977724158 824773754 923937047 876766881 994637931 757106543 917266352 532485450 889059269 770656178 833263670 812122299 895759141 595585575 852034667 228310878 364852472 405178187 517954324 34041860 186425292 94167137 749549929 804184049 923643623 39268167 187894538 529449405 944119652 372309825 543618249 604430182 892714208 193858881 353250567 662673596 812462055 189793865 674236127 751755735 848666589 595810298 772688374 267378641 360202647 133005049 649263390 15128238 619895942 877540378 927494168 91491004 350963021 236195169 682231813 36883653 652460715 177036226 387642596 621850142 850190439 962175168 987406110 697942710 875795466 731026923 888877139 412376776 837581799 710526748 970539698 903523601 918794916 980338085 982298563 174574025 187986194 459625000 841028546 736033677 829114370 468655208 822607209 357986725 799452043 689045722 951554702 375058268 613841954 138642680 223461236 891192628 994622284 932530376 944615689 540946136 607516162 942829767 976940560 580335549 606320135 308314408 630138266 37181904 423023995 714485486 774446767 525514031 759336472 598927853 659109805 817342260 943734948 103150399 186492901 673867574 934618709 284542020 903957224 6200411 212927578 743411430 886722407 569035622 969135997 772487746 816307102 376339633 475441268 485708025 746288992 929763188 973451626 184836893 654243954 326482112 603218762 553409231 808691038 4232856 834512022 583102260 742908320 254334613 342910233 166855909 449241402 336556227 713282639 694186530 834549789 685584656 714627621 484698709 832475787 558050002 684914818 267064601 743117237 526239668 916421946 802239059 954953354 46370008 846041276 253404969 581497322 439440836 633265801 367061139 720921276 8133403 162166996 487530509 792150372 930024594 960442090 384694187 695916432 701581206 916735102 752806703 963458654 483848985 823593829 839861447 941748620 465466299 474387959 365535294 505911531 689194216 953719752 633901713 835013857 203654375 836719531 129082712 274441486 571683000 841414285 168329500 692184578 705292873 718999776 883111770 975594163 418707296 646183448 180370724 226759767 854470009 863675427 980811885 981760091 18244465 716320434 593756429 922721948 350830833 939261807 546132494 570041256 78265798 909891715 442891148 483624798 187919272 308339155 668668150 721067558 560928343 661833069 410368659 757737681 74665879 715237132 539952387 940151538 441857635 649121212 502214021 542368984 767215751 928995466 325947987 500009194 311276350 500454735 699122062 829072923 300152978 660274653 958424596 992483274 257875814 307867071 172150881 762518286 990055976 998606678 45659434 312828876 154772382 863914353 124552556 227216430 987522448 991099104 754247461 970279489 936697350 986022820 545766497 824226482 542171987 989550065 746388824 787656590 271161270 634221517 696133825 911958463 97451640 926719792 222396986 385119449 647037721 816557520 188255439 856000694 427035482 622147386 204762651 925666195 966120317 993009521 945908674 991096933 983773704 989368568 43139343 445606895 204411262 416360010 531086359 778797045 144403313 829954704 627888338 967440318 668974270 870414874 650582704 753514921 463382402 804269187 776767085 990267818 207744402 524054262 714750671 825092094 562819353 791135915 631592493 779421029 807126071 957505480 69440045 505248101 540084209 561193051 975171703 995951173 978408455 995476204 837653358 837883066 762374568 928166622 816737948 869042861 865723347 984438539 52897796 930348300 782301723 811413628 125502822 462328771 575460843 642903651 588798974 877670538 121902035 969622221 647471753 651195638 195770667 284261365 846639596 880144324 755336854 822217485 715876236 927370608 336403180 691844382 362060233 571741501 706997907 763519117 558825375 845966815 150722534 680421258 151362221 885656041 170977642 587315131 498613409 880918469 437983937 462506783 182314521 510425147 905564363 932676593 188544227 948857677 299254237 616708341 197603033 899243334 403703378 536816757 896677646 936623765 876873969 917825228 526682833 762560170 133370711 470901622 982061324 994239983 832415660 837846678 834392682 913112014 839092427 878380874 750399627 758157937 181050358 618134619 622135251 693905892 155706289 531787380 152398567 157979936 511724099 610241087 842344772 895793981 399005809 558270061 477046336 674007823 325898167 419519501 304753321 923189435 658636991 877204348 985331294 986160086 204180730 788371165 866782153 899104963 375524256 584124745 110867393 965181632 289817413 464339017 354773414 604843869 399897062 540223393 689653625 737131342 992592583 995415870 847002802 907618607 821557903 989367762 733269028 994373653 734432059 876442064 29343781 67136478 194586958 606660667 514059500 612213224 931368270 995456534 836910714 964687528 743685596 929303602 91719826 884123374 616715180 672155417 94078645 795264147 591701594 914792926 366665946 387559386 96687068 720900129 361359318 446823740 451807305 661758891 665623593 802118753 634781508 939293791 308705003 887680515 432642068 569819710 734128387 898044681 87216887 322629276 1954760 80595795 307276534 539708701 783400813 798246013 823642205 961170752 465193639 987234460 515691807 938776671 89596810 167939486 985743269 998776611 889470449 920954391 915302298 998926624 671678716 907192055 203303879 443208635 353261934 418030410 732667809 830472642 786477909 934685829 600003651 716481145 306421730 634057917 58606131 231811862 490437414 778964758 555292384 885571186 95988642 167035190 798666589 859522474 370779722 496632541 837391836 907301829 311637079 407467586 858610585 927975434 573162486 841629852 844581572 963729297 458607035 995812878 332458249 766812739 712332379 850130371 815921173 940455877 844431270 930305664 123663322 587540988 795337415 802353749 462757322 596238847 437873227 818946081 878152555 930368036 78634908 928420117 976602215 981782183 31102222 187466183 178357449 525167566 590587166 727562982 654792753 656003616 178784357 454191752 735252676 794470477 391228978 468686338 959932752 998569682 430552710 851578203 611152693 847449878 444594805 478139419 89242130 737705202 655991664 797973443 436735068 749128546 453766345 731422141 868530675 909173039 927766189 960650265 271143241 494247230 867025072 982597517 14327787 266273741 813808803 965436358 856957426 884008024 356097338 377005910 857764785 958135914 108823953 250443721 269937810 880031406 408745361 961784604 326870212 391720881 290123415 592124837 755686707 972832045 874256308 995901234 847670373 898118561 182083173 732290522 465328510 775537869 292122095 908376848 276859167 869689199 446832763 684145832 247511880 833750801 336603610 718749026 920673725 950759871 521192578 626829948 239030731 968448470 303983994 352222400 528722606 790306075 321343959 853811072 609439175 792783940 264173891 313631327 515934865 858522535 758927886 877092848 165489887 943708767 114433767 857239018 429753915 499455424 716122440 737833774 687705402 940995021 157333972 315283637 125502341 232978566 326528004 962707331 866865723 923687709 408383430 816478106 880539048 997818595 697698909 938529477 789618652 793369103 598632338 658025825 15602289 644954271 681770401 832526786 784660726 885878035 442760104 634014440 90591150 911646605 793239274 960466513 656670200 832157949 202628175 350225483 19414742 248892240 691057370 871658388 42057559 837255531 782772155 832971334 991056234 991437345 12640833 956705697 393535731 679726891 117284211 936540249 785280500 817355048 928996586 988794497 299351989 394606395 844097421 864808387 907724783 988230680 257668557 800904095 973693992 988890081 689405271 703668525 392502739 929093679 83701410 335851100 300016128 307575802 905199417 963501480 278303552 338279187 947735436 976756255 353826590 884559249 379456776 819578665 456272390 899124995 627164074 865626378 708160413 880326237 569874871 773247067 314477837 663879496 792940789 883398084 116471091 443426746 91454459 211055669 264412188 954944185 119547107 157462043 688921779 930807589 139997357 331543593 256517242 775758909 953221191 996434986 508924464 812731788 422118149 863877425 140240534 458752969 841292132 892902271 880643993 938611712 893062795 967871249 958934579 971593946 405095041 715556172 339381018 453107748 549991285 860387987 584409710 759683742 55798142 146833440 168136584 894719291 437174942 619818554 755250044 812532073 452161226 917605407 677448847 853034939 491580899 618739787 993545111 994453057 646120363 731350866 739206917 994365142 234441121 405336192 697367316 953937792 903110518 977621219 457723459 859580584 434088034 539602947 464388883 657595857 557093810 669805459 834173037 929788441 620761723 910804832 657484681 675823719 623031585 718751642 357185674 764690198 837637730 931252559 885634961 970589976 284199162 421034977 531682021 588447204 225350910 642948049 57512824 933260297 394652393 997363031 823250712 984704272 202978257 825913153 633706475 677929389 379213245 980247880 270166925 618575023 599165825 863977579 951024016 992432553 244242532 762487786 516075753 866761587 559924864 584618492 492152044 876450170 195309908 282923631 940028573 965733114 718815595 740951697 680867873 703055656 439829600 812298458 815424072 930515114 987967530 988082115 95468686 244134220 553094364 661429254 551355462 970209436 974267136 985017547 469959304 654725854 40458111 454675376 242716927 544178877 707340620 746695971 296887144 810635293 162473050 679099472 895689673 905988696 621233380 652790886 728798865 770391658 933883718 982137176 630973177 765841505 515196119 666023120 426906109 543921392 273004418 559071789 544894186 606676981 54527978 376577606 615971713 847020106 377931481 625702612 892634513 968878772 798657063 995048715 444789708 728491722 98075008 437520033 938940538 956837570 806348496 967608868 79193868 919446977 948032014 959546964 303377600 412826645 758992503 952985968 100297262 206755522 903218715 995284721 942853850 954691774 408959685 991938272 703920633 912521998 265808326 772626760 780529546 900857787 27951349 231609633 139412122 482834310 196915483 554686386 569073332 972759686 602408109 823360062 970372187 976210193 642505425 962898740 299486685 341328366 847354628 879643884 854427412 880598854 872628979 996839921 790901434 869746739 169446903 587522083 643089654 849253722 612560007 994861068 494496328 801800530 514888989 823773897 451256238 781256976 875053559 984974691 646927110 689011722 128721658 599967191 975856715 998799929 706315666 713696506 771186608 982680278 535967172 841600404 925404014 971120800 149694378 627531004 757884423 926417187 880840200 898752346 141124618 960195013 75106398 936776411 742551634 969430437 366529766 725827900 526600707 888118132 763465882 904318084 12674613 970761175 220274173 758752149 151808471 823779374 126292552 719980268 372247039 574437127 710579392 738297117 748287080 950095567 392730628 720764364 324388560 533727542 794712049 977735554 771114686 842665345 150839293 195708779 12448750 98545793 287789559 723108523 369073729 594422839 74505163 785388304 763325222 968268018 984174864 997245887 519824007 985512887 279218998 902150901 859306890 975418308 961074173 983398957 719581092 918747336 152345915 220072705 155704079 869416088 183384264 292826322 108214500 972822745 597288715 903178721 415075978 597739144 948072630 951243891 657040161 886321282 40143232 760191244 66003470 187930614 559973953 716654174 703980165 772884205 811023033 843059024 784584906 955116991 379480335 896388276 628935853 947880318 601621412 866164680 901077209 980646397 462521172 652817206 161484345 449531343 184247743 716509320 992391675 996603660 289627545 655284489 198299837 665216257 312078824 736627966 727164761 996224939 860189337 893497629 162247239 535847593 798177197 907779733 290974138 718636908 891093386 904718625 810500179 881999868 533467527 933740642 914918605 939595642 829314649 965095178 456029968 544353621 358151162 853617713 277740322 515432087 41970124 739664713 328907574 367061731 547350302 793719745 781549243 789004833 171701388 919723569 815044203 937723657 825222856 914054491 266646309 971677303 658763052 888552598 323797642 450394830 813499567 910586848 530054609 910394020 445781911 889694277 554141110 975311442 425996168 776968674 311950675 543968510 91731165 835023776 25184938 837822443 150206059 918554527 212458011 490978773 843440312 846707102 48784543 948125212 939228568 958206491 116271303 578656514 817925922 863942461 199229523 621424886 254095216 646863533 553063616 948553413 876950283 981985329 812570942 944797579 706764462 919756767 413033508 867166955 335140623 540645219 221913128 595391478 209764212 823830329 20773074 705437036 88776802 375145652 158720431 703443232 344270214 423705508 375826958 860882318 76194953 751969002 982085952 988186792 205001615 891234048 762678288 933896859 403933578 546600594 272497532 511606309 961299407 982087408 362701748 621654643 42658210 389487999 448761256 889160487 472382503 525473177 436082390 672399728 88206305 89520447 814872196 919335472 321781354 567693082 461760156 979008772 997830881 998316052 935732041 936196793 721934627 936625852 501119890 512811785 856239606 925073914 285504826 736534428 931717417 994815365 239917114 398785512 25881172 406558687 26338009 335991205 2924739 473664705 315939507 510563889 453346595 492964986 686394420 929309930 603562842 870907647 909616538 948047895 565829431 941958493 99440062 632889743 52299701 118161360 615760470 842890217 895229059 943597295 585572599 609381688 501140547 945317807 181012383 595989901 9757057 487093679 25811714 418430204 318046377 992796341 107512775 794453607 610835466 895963216 308804328 589433559 488592167 835771459 310416560 484221948 141399621 907400551 289441331 367194562 62451850 825466508 516297569 837714110 733955034 909881132 242339287 945117142 657387549 823111401 593445200 649885013 601839333 991523711 893209537 911908685 232409295 396770068 256146746 662157619 873106032 991374179 250799566 510071649 514959998 519642499 317859733 566948490 89005553 650588030 9263608 62084072 258297835 507697450 62774417 925990147 618233155 764478776 622593156 699438306 926497259 994984646 441831749 871109367 607806479 992213981 59513198 428313993 593753686 671793573 164034410 866210178 4192376 741618105 366705228 582663871 322003093 955313054 823177544 924524077 832477851 990849786 875206043 911926968 444354871 525050466 771120434 776119602 217150882 887579675 840361194 869644061 766033933 914255726 623889322 949984842 629001492 787773714 320127380 674161620 620439261 915455450 395153919 574194022 228308398 869270556 793747508 991488415 677754005 953472944 353082976 710280276 717393974 949588745 434457166 849699187 935321211 945757794 223578659 925838276 61412354 208656042 642808970 978871020 660947806 823729228 665984742 832154632 470586882 800439437 203220727 868715598 624260815 714403721 762319649 903933510 966246738 981987659 226805631 667391117 243592719 912283330 857574766 924898534 396776731 903635373 675912209 804171253 102422549 992037594 538028876 686950922 248117736 813602052 798233926 859640341 115835301 813019035 357677175 620848344 739040746 947112909 468291272 771849669 63836539 493771037 453703146 912586851 910243207 960690272 29653580 634232914 414914811 543921311 214342698 267941577 744489136 997427265 462163557 597505694 688647100 767674271 61978701 933038976 932874426 982539835 891602234 934495062 305868537 568179338 694787132 928722549 139058473 563551648 87235216 465935216 382762283 681279289 443248997 751227132 817476609 842148655 642069753 974781064 349623884 389844855 302297900 825504431 723309426 991160979 837784747 896494178 160120388 800235502 520725088 836114527 943682532 992261378 267715931 583064156 631117050 825797241 462598226 851775687 265050389 546234700 968902147 996575076 679091834 886976122 608018664 670443985 284765324 986397415 442065798 491082209 563725434 760094648 246790449 818915374 223532626 400176013 212805147 290312398 733816185 988733200 89324562 338335599 347495116 874523175 950749335 996473574 197060263 934307975 470278195 530910956 79390573 265638284 333525187 580698725 562143870 835555218 256138982 613378063 795193337 804681770 362927569 563543041 615181957 853999888 966387007 974525529 944329857 961193239 537360708 860270923 223781269 241130364 516738447 852521573 204809134 895776419 127899794 440653465 476417926 927675332 936019653 939639346 419750505 688870099 673511219 836581444 277520084 637631376 43714847 156002301 34263404 831795093 948795002 970158714 204928832 363301439 764120322 798059093 789013088 989160235 118911862 546682040 79069830 847615243 459811690 810610055 559635328 808984886 357590038 874585683 23848050 62647799 866082529 981453185 855382423 860383577 402729007 493702249 996317579 998300307 854922713 867313429 361696571 605980345 506884504 951692460 653703024 743269957 35390753 664545639 381554638 823314411 931602709 971842104 113167779 995456623 985140255 988153264 810447330 991937303 402968139 922849572 209415257 788769304 476783658 570250483 524024996 830211875 156898242 531527252 623768804 909798751 955985970 975590433 118692548 524702286 652333743 969778450 648155402 828227903 146307140 652884160 651140108 872680798 885120342 899458643 916538086 968880493 45380866 558359353 301014923 744254067 773545136 964238810 569444422 833566130 735007361 926148841 737781728 761848365 911301206 941099870 616694480 754044402 879840693 882719130 623637361 863417418 850596724 914626825 359351596 481598330 864126960 972669658 879728230 886730701 326547278 491590823 528141377 543454586 756595491 915403034 301502242 896649212 693444166 815840676 525371785 827885693 773636243 874095211 271987605 561606486 566710382 824975547 187738827 474832508 375139973 953930084 663932369 784048788 20957222 379003052 606657329 653329105 734859750 860617881 797249405 843196735 952066321 959522493 849681052 944843359 75674373 343944734 784188684 806842509 126722316 545122479 324673760 375069810 451814736 992656494 592399072 924626972 900229432 912423119 405600284 923174543 895723036 911047705 880109829 967359726 186772768 486724123 703034511 986337888 251568700 938840829 421518290 517403206 710017225 752700009 334560891 748585042 898779152 996673085 119457101 920753130 17043663 435245524 659333063 903797823 455091399 881047750 726612877 998054983 762645411 814088542 516322182 969968278 960790166 994822106 485082813 585038559 250901412 579432854 947251283 947955509 674210745 898676098 678174362 782047409 202871960 603253282 369237932 968056347 128628840 252347885 119712191 608473309 180216846 412309921 719644312 882544294 185480363 952343017 460741877 942027431 592284002 846342124 693942718 837325078 382736067 798284524 259345971 794236607 936814542 965416039 241591433 275275385 776368953 896462671 749895202 907042675 897867563 960825129 490564347 582559934 570080933 664626359 673528269 852838635 544739968 552837163 887731369 945972087 639236030 759889266 253942357 723062852 72422578 900021136 945963467 963895051 780074698 980968676 434567482 957113689 186824654 525808927 966412084 969005070 499931387 961063631 324291596 408973116 273348733 406745128 115882704 296585780 954191860 993334408 473934381 956900569 660153826 777730552 422192129 921296039 493236921 918717305 465117873 978413011 474021817 496247143 337594344 613303451 201001849 793965407 842245078 990257943 240393923 661537041 166562507 334422703 585427549 636378451 211111331 793543285 583563380 762842108 378029334 714675595 477797850 609796189 709259923 939209914 462508866 537185636 226335497 796900576 93093940 442856165 770596762 803020158 40462455 835573525 98393792 332328529 808433655 943844402 333650108 812790722 930789497 948783790 249643232 986892479 132390828 548366842 779134320 928543085 199179060 961011093 73823615 827163890 410797659 734346519 649789091 915040860 8865090 286141993 482976138 897004569 189394212 512714205 605398804 818917863 713773596 754884941 43969970 200095481 157159633 848936472 525205566 820407953 809878497 910823338 399164832 611443975 37221589 752329130 493806833 678034698 793132567 871520767 117209316 820417899 309334706 331130903 344637512 818198326 182863068 224304296 940089844 996078764 112140952 863040676 692977811 720410445 475042285 679103336 366815975 715112200 230098387 760417362 542617230 955080814 307904347 468351135 99424060 657014857 733313107 895085220 897362 858004278 523131533 702689987 882729188 952230924 800206925 871861893 689086774 770562195 663294138 920462704 817597604 927725839 940564862 968451485 573281631 651477652 968295689 984544011 932252316 937985848 733852748 913114375 949555491 988100417 526787885 625457443 263969291 833867817 13267650 121571687 874544791 914556324 683991076 846510991 747146833 879451658 543679618 712873913 224003742 269816800 758235364 967739544 457400305 692938186 146151285 357231372 349519300 805700152 238041891 715446719 247250112 726049994 205142011 962704908 394324856 925439083 567739180 838662178 335989063 369446807 862196707 920298821 86625112 840410970 747348499 913462114 852111176 869867729 107260987 317646566 630382813 662856646 761359742 903821794 223415454 603562766 446658562 506181752 835244940 890784053 109945186 620273557 682127258 699053498 586428471 833298579 995453729 996690165 636731781 740520505 730293644 927609732 840506664 967432996 708258401 945597655 713960463 931021015 23043231 183192948 286061198 524860129 239565608 292445673 481347689 938850183 93419362 571732381 867448321 928271862 685916935 768715286 346990107 642321414 380142790 690464157 434150295 648959679 479326381 515268458 550412375 641896469 587633629 662790685 700434043 715416285 194480945 466473651 57551771 338866003 716211538 754517574 510790640 722576399 497126237 676475655 347109642 360303093 207648588 355691650 457001623 799719454 741037228 934293708 807039040 906872103 728394144 823524598 428228802 651715054 189999164 723503114 375216154 958488460 325380012 790139149 777551754 786130731 839568699 957237321 813725759 928510903 277698362 328879349 747311578 806961851 827260996 909494309 281569503 662955041 455254161 899072506 32689283 361384089 320880561 648156490 552428437 901155263 93572907 221604834 695387441 901813657 70336577 484078557 141172527 745063643 366035799 568216585 109128552 686641132 996021003 997228547 571466161 710868148 980458182 993144268 875909576 934892765 665173426 677648132 342966721 674464997 161477836 855454076 786576692 819097772 748923604 853857145 611196343 815922009 64360860 880799891 152133021 300818274 338700404 518355820 429436236 831105359 82350858 232418678 691251248 813431287 858740453 861340128 631269411 773650077 583880485 919247016 514784003 577979625 266189752 378375789 299851880 532965942 256241620 417016585 272381699 656020029 31571730 382675062 463145977 678958827 369165470 373894373 721217021 938147721 690196764 758169160 331649207 527888049 420204231 891141841 469547081 637136509 159784684 619105393 905498515 916704125 69784446 775699805 737915897 851343969 648647479 870364693 283835716 358294045 908880117 911011299 153606635 608544905 975674329 990786568 629145367 756672621 264264321 602868003 693205490 871639654 377754733 926485535 678957955 703845315 388102557 570214896 261448706 537843864 455540742 625798297 104698073 879372651 525495421 658902670 396708248 669626138 750790999 799340033 927107532 965326701 848092325 982977082 693745653 867497980 789273925 872590491 305827582 352233332 506795811 781369855 577626396 956881443 225919544 508066593 546079159 670566391 591767355 768821602 603860347 885142802 716336585 901182264 395197151 694267069 323348150 718962593 504636568 571400542 668522008 861932208 869138938 999040306 340551796 772689441 842287790 981487774 168087346 816568047 402038521 750058009 591481097 715762087 272025222 446506191 168825445 623529975 708917824 981869164 367074719 811956092 12426636 948570275 817185493 955131376 52427987 295273724 779362852 863455442 49695562 464264360 453350740 662919589 599546240 717888006 503312521 522896061 40747959 392965949 320222785 712505688 627143133 919723357 358041663 972133647 865082387 974728887 855086307 890742410 849058606 970057351 808545608 988045464 978196055 987830825 208722801 875028488 42229296 134180506 726803655 961954340 13598391 465358147 513136103 992398996 925161725 959874418 699450050 942535842 547167270 974109103 26088730 173618026 47748766 559618147 958443821 985395227 22789655 878574638 895311417 992420418 878826881 991618258 119113740 398059678 437478884 693728347 451958187 732595247 911769509 960948915 433416247 490447852 512288902 832016490 44592992 577566473 858764724 930866464 390134386 654601697 135017859 404478292 43415406 170885560 171926039 568205924 95730914 199896348 590690285 943487757 106580428 452533982 363079020 751639201 995441575 996942421 650613714 986178146 402529174 799025821 948265657 951180118 799749209 948888848 833623659 880505138 515816125 671650662 590207282 977505532 882218708 929670806 732353497 780111676 559173369 607365466 18333983 512876774 703725098 769189010 393116632 641712569 88836071 522010581 62747894 206319908 33907862 78664238 981840633 982185375 937514700 991803136 437731002 573428482 830639742 867432701 876239930 887278946 450600494 724144923 887843620 958005877 640582358 681004166 468955892 677870122 746418775 879939954 706109205 797493899 704558642 746283545 831487807 998182426 736137395 835003683 210860974 676293797 131226617 386535259 305613311 553284962 672586745 938494622 330934420 427422436 415708275 582211204 297360601 674597594 854108610 904991550 239474898 393808646 439922443 815950562 667652221 933369714 494193247 637678825 54437807 368277976 185406505 759505172 796212962 862864424 941867195 948152532 310670190 544450299 312102374 729853478 357161621 884565974 164206464 959724446 220075247 988592691 660585175 663516920 586068158 927214384 996374970 997267342 852986192 902134606 129349461 294090785 76339644 438012362 971316118 975103280 523298014 859646391 569186834 734973005 663610884 797591136 373802391 634750789 359749408 794940607 756060093 886823107 903389907 957930186 870826101 937627312 751177724 797840228 888321133 920396301 335821261 952846039 142371539 759675981 559594067 685673492 403011152 840107304 84649815 985509160 607393616 807573504 149841577 318500993 494862597 508208012 304767484 973940514 71888591 741846244 920304268 968838729 234210948 840484430 408293599 425980222 736910253 830072630 659974768 874956188 469779336 756788688 344296557 580121865 164978811 918906615 701577681 831604912 591526680 949478727 997780739 998044325 534364473 709451390 546129935 945063664 957256743 987114199 669050557 877917348 836380935 971337157 688867528 748402519 528516940 788745559 327588946 805400108 95828231 158695500 841794525 885608415 13321862 833267208 348674630 394740921 21606695 558798779 83898876 159045986 822589208 885439192 427241656 927255695 848237462 964931461 923142406 940700141 224109159 444599191 692705530 786448779 518679110 673971500 326177437 639052124 336538564 923506465 467948756 548353195 141676933 377811906 632661414 646215031 607504371 691611294 284754282 673824935 260676443 601474133 2506466 885975024 554712247 659187662 878698649 934163984 912904405 973724091 831093376 894500295 185397257 785650233 421641685 684149646 467356459 528576705 519570911 608917472 717415725 940082826 648905779 718006890 109241063 987874612 928864481 977680320 803409348 903005767 868530758 978665686 833873797 903740508 333961977 461350888 404469306 949875168 491566852 925776350 344222843 871825696 612273134 907296380 321613528 409998022 857717325 941678379 824359008 955588008 367404250 510096314 10282607 368577232 57182630 113257669 466066249 888673788 572695324 827967092 11661826 985733744 631659421 988468880 104021203 883453511 271099765 817647967 889173211 907026006 619170591 702241257 120895088 772889576 483276737 737279486 659064444 731588954 244046928 851264986 579570218 588709245 40629009 796198889 571902840 763638247 29134113 994479297 641559470 699364189 566190123 595388407 700544437 806112793 374227809 751383477 213590341 904091354 226752892 339713394 887441765 979984564 883383149 967748932 250973274 652128527 292131045 931883932 500343113 842641985 357391663 913089194 408296996 783915068 99465650 240203541 721462314 985787598 781811265 889528919 526550033 789454243 466240702 549345127 800264321 880080124 89608322 99259049 307350385 854535149 562407176 827165163 849228457 887618186 791323201 803445718 203113997 932136771 515424964 858731301 758501171 834525694 764408155 874529245 529076715 673492947 878056889 941549417 777284583 956071765 738697519 840001066 707787982 790303074 106903787 238568088 507528964 579425061 508685819 796351462 747211678 939347262 315455724 346088143 828751165 890434695 752172783 845563463 253562582 406810899 705258049 781167978 855677553 965857278 169265472 736599187 6599077 604548077 929822633 965761187 102177037 395806984 198947894 910654344 640704045 847696764 728085385 728968936 547329324 909480571 697507277 793572447 920023289 979240979 191771997 619995206 344089630 429414718 948932592 989050010 295278307 583883128 667133306 674540019 537378956 658476907 865998066 921640567 645024486 784450089 217778189 483707418 47114868 761600362 173686341 757104164 900845184 983235344 839977095 968924730 417396683 820068351 973098433 979477599 614078543 867817904 943032356 975080223 178769975 543854787 804494223 854474954 979430688 990842035 839703011 965526244 779217782 803060531 64935348 270119266 621627483 973947252 417844497 630337048 841393437 989860690 410539862 915130052 722573025 979236679 790510001 950091011 485248633 896128797 125438093 400460517 321764377 854685966 223290518 325478260 207579919 844670292 338952391 895968129 291852346 539737609 291336256 701499032 974792235 978438940 79123255 340166025 399510158 792079518 78459362 772322271 247410658 468220241 846214243 962897456 126457784 433751100 579123338 652866522 229491949 566240857 406236399 917681602 799863410 881960157 315910569 690530429 406073432 623210990 990632453 997327560 800234652 875666021 163872559 613099248 471731503 975254950 303230298 857175839 830761808 977459774 75167198 297602814 503875174 910938932 573033491 658530832 141276679 970332631 547943644 951326231 781169862 788327722 558451984 786156490 212532534 668874743 901549634 990948797 928554551 931647124 845656495 978223881 58655393 758281283 867789007 991279818 701097292 713085269 509046689 642847697 703984320 829915903 497375275 665688673 52955484 371634658 750075552 838815146 875628235 985744739 96937147 214194237 40584834 491138673 135356387 150950989 648176351 756244052 271583804 990101359 719039340 806855938 285401080 511448007 859277412 865752998 52860352 623141552 397536002 881360495 771494839 969772690 939935123 967325584 136257279 211443817 977494368 978709116 301700494 697436934 752836688 785235064 920592966 983969629 757309090 850279949 668122860 779745719 808977018 822309071 806749806 919104537 81832843 313465103 917328086 956206062 13436443 959696425 306470151 677058013 339601743 929441740 274654572 554046342 732936989 876009774 430225253 519943758 45441859 736305718 477920734 648037746 19160682 514038870 410021705 862620822 369268793 432852824 436033875 976859973 131340458 456676470 645855902 843403747 814770891 893683001 366273318 734788097 834409953 879032380 693932776 800764201 88503070 725226626 244254116 358875442 731618884 980481738 655029081 911344190 571402084 963608406 65814075 285054508 740668730 814550337 260875382 473106559 717524232 904059750 911635879 962723406 780838368 877950210 823701434 990884712 297372873 528204628 567334858 945655354 402504916 849381754 649674845 953048946 552708976 755721680 632554979 892914833 978640241 980493249 466273945 504852714 376060646 967421841 775988714 930627855 560220495 783327154 474053391 772887637 515372447 784647433 184687234 485837424 487921936 542499544 909111414 917230221 284316645 955498509 231029774 603926539 282349082 698711156 70601415 884704356 372885194 516602699 421176281 859932906 541816668 610587734 656549278 961147360 579979967 955390037 162433421 853662589 53832447 941891845 222491218 970198857 386682837 448763251 747651581 954663287 810736493 966213715 609484107 785069721 891802861 975809326 539822281 541196978 849442616 985452260 491293205 848705727 95268727 630406873 742655681 903872598 818284164 943618707 478914939 580326423 862757155 997765950 422958498 694665822 739852124 805950896 141884017 794527380 802944511 928165907 823698334 894123970 353918927 600396309 226809702 582286548 934308922 936365485 331953767 337024635 315505744 714094477 570331235 761118329 439096613 881388111 463710066 728714315 341808845 790260445 942471684 979986448 226881803 951042688 502733973 596675130 790021585 977259292 985706403 998837202 902694469 920010494 669056738 871570512 318490457 545281649 207056505 383274862 398347784 578482716 637394179 706059410 883323336 957240116 704788115 747216376 355851051 824308438 76112465 878317233 391027717 778829527 596695100 979771127 521250515 545818126 148637012 825669701 878350556 944670131 240889800 909199009 580795748 590575233 269316203 636230044 513124587 827272803 405391288 663237887 16087225 87839737 653671410 676437701 542250903 936986335 536881337 919972328 862910075 901183854 262544486 551213601 240884575 386252102 537331705 592081024 106806922 722496406 604662329 811988221 74412271 897948172 919508633 938137925 235834648 262583454 905391176 959165547 138973589 956832810 379999108 559723721 485219089 506125579 379572294 551443615 361676454 460278769 566559177 821571949 977935596 995419526 837595429 913166132 952269265 977606301 370178783 682907069 375364201 600652079 322207673 983867003 339947490 726012595 396964524 982581865 686433539 790653838 599291907 994443785 104035748 446342591 131064176 147841016 985403055 995508142 58431589 909055506 615041788 947200567 549932319 699246591 491519849 709514938 396873855 751934673 222565161 897757798 920891719 985961562 303576862 522058035 417440608 611505427 161682595 531684796 555518330 915950343 806366525 871204894 721837184 878428268 893516134 920591520 712061729 857650140 828484721 884957469 867283466 887018973 368264297 939549529 234391912 263837195 639422612 903858464 713136642 921425337 944864209 980591269 418571886 739888145 852838827 975508655 94808836 107949162 712375404 853478109 146695635 856005113 646314258 814442421 896437553 922756858 47399477 477749939 884324319 928271107 918605404 950485941 45571150 695355975 47242373 115135505 405452188 484593576 640959009 934270697 414286188 829430317 181581999 394154637 300975355 646639617 142771675 833879201 903229641 956593601 774482177 937402303 495142657 673983458 248079728 962045337 945925995 958230898 41382490 696377955 625569804 647678812 410975148 663999129 617587914 832621326 941958958 997635062 660130811 942571696 708536517 776857605 637158826 726388096 249821044 645275227 885179397 950783821 358795314 706169926 59115767 432227190 828616195 965944878 298452764 320265070 492745215 898483401 595676210 977506211 192410606 286581117 866771591 882347180 452379146 651734861 895511113 954732104 962869648 976736260 843051163 963351611 223148607 703190690 269141750 292750466 703581078 825292356 423458124 667027714 498207740 747054863 827577524 863575726 554895320 573894775 860025879 994728345 84113337 702112752 723979816 944256509 964258702 976037579 203732076 253240933 261123349 592877529 138959226 448797892 917756670 944113139 883091703 884029491 260389784 268586511 300415394 680565257 178599830 991065287 495230991 659671253 388390352 794819030 261462317 631945593 798796133 803417910 924322663 960914249 751035105 786300298 671780 203054021 36461258 53746975 25521399 722995926 514204345 846986976 8849458 248975612 996558968 998894348 360857136 591979253 76165865 937768893 39390170 339625802 150453971 652732156 179983071 269419219 325579200 794155408 199283269 574024678 863428966 943033163 996053869 997712899 457041582 707284487 435903576 918719768 858465737 965659176 100920838 847292031 262307260 575896498 480572956 541032179 828239366 942852400 943117215 946244503 691907759 920730626 675779084 978559264 546219634 984315088 223838728 810227745 958633711 975545725 885461383 923279828 446492256 639486939 208807156 303677165 55563344 328633994 471743213 863440902 174923557 291211834 366954328 958038679 720287505 828574143 175531294 189392896 214469852 730255566 470846462 913343561 963206454 974284895 92789108 662957270 511746852 899989290 79397612 901782190 122422267 876226371 323246210 640312094 565879395 958435543 627095990 970579854 223265590 305937757 990150439 991780987 949015215 975743209 243219656 275274923 622751670 644884001 465364435 796515072 160337967 283263431 36358137 375018983 582445130 918985983 346037278 763543010 531948844 687869542 677876323 792464094 400629997 737720650 190843313 254451377 86422811 477302057 885699629 963082101 88443268 765792557 546760029 909986669 76994024 355793815 18734615 368288685 805468336 916885219 336084527 788968622 664757607 731411205 592141790 660126936 536144194 539491266 850601650 897079175 152521977 766636463 47150893 138919956 882164892 960675921 858938121 923258000 336482644 949065801 806513472 915166112 834153859 859039944 579897635 587364932 771558193 775929908 104673149 491064606 493146514 679343524 470475730 638887998 322263332 331502591 247156138 777756354 6605826 559893044 394792727 395083940 431280259 461516407 822020621 863847025 540942823 925642648 914525587 964482081 442581117 557725674 979786621 981136587 339175112 796663344 479177938 829656724 29702545 173034382 168047847 621628746 930366153 931336601 645733738 705234266 799216630 840537800 791489055 881057676 874206584 880414449 987519118 990732558 245796331 361069667 77591974 195736480 440279787 463475966 794591802 875809438 789104781 830560507 127134205 468616194 993540916 998530931 244831911 502091412 47617991 491898112 248837994 908790042 314686741 986371681 722582500 815966878 881217006 895587130 578392323 826935346 875420182 943475993 981306692 994431508 87080571 827451252 885672758 936081141 295229816 847787042 703065958 982656893 656504483 661523057 125305855 136801359 784004891 825314179 52977295 628004491 553705899 688158722 704092189 835145207 457054390 916300473 132865344 923508556 243120474 423516011 625979579 819521539 902145882 986815578 680945865 694637508 416045733 648631813 727691145 972583726 143897360 178687633 548030524 982585558 277131055 552358602 70843268 853087408 554526783 762718744 900339464 903408525 783794083 970768104 770589846 829591467 898817745 943879942 775649237 915660855 21838572 595778788 712973161 916539106 776140435 998185431 955989347 995196965 72253052 432782323 16506385 841293889 948129377 964270264 23416533 965855651 235760364 627258231 401111938 947052063 249033281 632484319 94536370 535988926 296016437 333107569 856323693 943434897 590426234 757150975 71502000 303688787 636339664 765411793 398848365 603179101 277822180 410575475 793415429 914451008 108672303 223943296 954537165 991698458 380286586 563019586 131545891 195543644 139673939 378174790 460969933 955061243 810258691 954794638 532779421 993677727 398300152 730955407 60100321 527298987 425697778 895637075 40777579 651943016 5562865 136115599 260249442 597838055 517590492 983397859 375473250 937732068 788382020 962122161 252753406 807253706 114090550 919680179 197965804 768230631 323608905 627533432 432963721 771799847 153980258 466486878 475218545 538020193 287737299 816521645 522648989 562053826 978031624 993304024 966633668 981555117 326889033 685608637 280847797 559150101 229500121 431906764 64815173 531696515 577282223 596618541 153329475 452341857 737267710 937097339 472952355 540526802 639994028 946915489 930370064 935602361 434043965 884478008 964106700 975017321 200423971 568233185 542348764 877349313 93073430 568642004 943776188 963638830 704794867 786313519 994910726 998809076 685779796 697129085 541543934 848994044 265855944 861910348 980093977 989968809 338886964 593039313 214658673 304027673 660604816 785071475 469177258 668582053 725044042 853825559 5074406 591641856 473957597 479333951 800334976 892189134 712183208 762829434 142211007 168785525 135923127 588854359 4114823 260148849 194216344 700514959 92583412 105760443 637745307 756874897 296038023 720748136 514078736 928046123 535535978 908024416 830690302 955134938 335546515 486137627 764734655 933924705 408835667 494453970 334869025 597624120 385146192 804819842 258321128 816545344 181188319 696765508 333904483 775954227 230051731 738530945 774050709 936337482 981899785 990371651 625867319 749143857 722159490 752433710 77624141 510454313 847335643 997408820 289537061 759928183 365305209 889675409 773422608 922319442 817844272 819088741 354367429 684496601 215783006 652622319 887178865 997379095 567692226 858783898 255789475 944197451 275121952 342941089 352190910 474676605 688841840 836204324 764462367 813883032 627438319 662415975 89164315 868622556 372247421 613603263 455675675 997996255 87513680 523338888 328129788 625348408 321227024 608343015 3109596 426783309 99836220 289870738 741926107 857255389 615517348 644204140 443215473 984110958 10173372 463546555 894597327 928709065 625307241 674486020 922961412 974764403 765126300 955164033 99315954 497709782 525729045 921309167 843496775 914469462 238141039 752000648 355292292 378534306 745859767 865252585 911294290 952957574 937462765 951103031 898588729 958984561 151075795 235540565 242669088 425728323 710728734 833393981 399495393 808025407 255859705 345030746 166000834 351860038 254325231 945935260 10895195 908226713 540596490 939370069 91985080 348576801 303983991 806540293 313488559 456291082 813779213 890572496 113764274 877187423 75115636 179070077 74671823 110166788 899682471 988648205 412789539 908450722 129907918 537923202 406622658 597646194 242852990 421896074 735161654 834872692 976096471 983854584 581573481 582356827 475426880 763615961 12054917 763781726 527899466 620131572 250028136 695084547 27177281 356402235 939824317 974162013 4348284 321696652 773494151 889997156 169849380 358708338 952037315 953169083 570787958 955068110 143045796 427141655 323017628 604727629 752519100 927385690 358942733 370869035 837533493 881402138 279534174 763785998 456856454 880785022 36162351 594903812 481015158 584838831 865739169 947574787 622673105 994633807 215908449 475274381 469631086 510834195 581269627 759208175 693741282 771787541 236924239 415500801 148353998 703928133 299341382 859249029 739198453 878468732 877383405 969221340 489300585 583104483 555563341 751477480 266746645 900594237 715560246 847338536 568979794 935033329 282993088 302407369 89936966 667856199 263954641 856606065 196706249 509406718 662614503 892543194 916169508 988087224 171170724 604551061 530106848 573956341 48094726 156843356 316762882 564376934 15534098 803122859 348108777 695740704 334166976 707036865 943699086 995417118 886967249 909607203 177533159 195831600 55584029 75402333 92328693 676484407 1189659 352444340 634884262 692365977 695816724 846289005 273355217 667789531 992805423 999229829 123273048 383002454 832684421 856925657 975021660 998285642 687278894 797114490 728951353 963554503 388168156 939296859 833721554 939603311 32720040 996012211 280137092 660397148 781900767 897893172 331321513 656178821 591706520 906544044 774736867 896247655 405265420 861470910 247355863 814093457 578056132 651976983 66749304 341824018 317582302 806171001 757622691 827027258 275804561 994181377 412975337 762299957 949650737 959547718 326831705 579878049 928602534 961077380 963446976 982620480 306500737 362373301 151485478 168306434 557922568 917229589 176908603 568346452 613281550 764475521 282428301 534801769 879770702 911332511 436385464 510376169 414851369 519132031 780232581 970729493 603700567 869777416 298911329 736284099 542859912 823940404 470512707 499868646 305680978 581253157 616625132 898832761 585728261 591137187 458965197 498869441 200346810 993338143 78649455 568942090 530330175 922597908 120134258 633754264 47064733 764829711 105365825 811225576 433768881 904253194 696395641 931088522 754447963 947779235 155055024 546897423 190281274 719796515 731681396 821926198 175151835 544354413 327974912 512851216 276710035 567512187 939675223 962332919 975663729 984069338 402688165 890452872 690911359 738448403 885075576 957821075 971145538 976393889 500067382 724093528 466620046 834032177 676547163 775360662 859446716 909932304 314181910 358179741 620843318 843305833 909396895 948191701 977054355 990005442 660985827 730013747 938894858 985123538 906710065 915821610 521006070 775432862 954569272 998383657 465321245 790758136 382667498 635401586 202649175 932166208 815878463 920058632 11561512 554332660 271567379 421283946 154983696 458711481 386717181 839880950 40956591 470090891 92696165 956622413 902784561 939662021 696727983 814198303 903877410 997678981 425324268 769880402 542856364 774076566 53978149 161630367 273453596 759803920 680545497 928467467 391177781 910971865 440331772 902621605 702941167 882245729 835627058 865471660 905703124 963451599 254122161 295781949 520982215 659630734 645051261 939349374 693843399 821567701 68526731 414537368 428586275 753228711 600407605 739496683 214813785 931607687 663605147 737042783 74175338 498232005 112932776 201013167 893525598 950215110 273921329 386247253 202001514 988567527 965620131 977115992 195224288 765313025 2546744 946959084 785456643 829293534 472332851 544564954 454627032 899916144 409667831 910641294 465043736 991685716 388823794 708304867 621009235 967331602 232288162 688538276 415730280 844311379 799660629 984672496 261541552 348704647 469548801 516073650 402941798 528139340 997073322 997107051 49155521 97326533 100802600 533771842 645502058 752389497 233231410 614029034 747269192 845933286 924852042 975361562 473974717 962193587 317200269 730297131 216759491 893488947 39790495 761723279 419281224 805987999 764200446 868770137 276652667 286438175 949031742 999223914 232734424 477011465 846420888 891298063 253920351 953928940 881400950 936298144 16875797 636426935 557987566 759375011 418914137 439461882 856708522 936466398 250092062 957104599 280468278 789029801 718456022 869688358 792614428 795684714 645507517 949872030 774407463 993048998 786218518 970288187 947788240 987257837 118115064 408414597 325887386 707231496 435831988 682812949 396165109 676884847 390756264 967138119 686647481 982946418 41048924 60661959 576374268 817774242 880465066 923018251 453997820 881701242 703297880 720362997 400986330 908978895 580531320 700376272 313289749 658034763 694256377 807346678 631082747 927380595 499202329 737515184 14152056 929960276 895124105 974827075 331707069 359690698 8197156 566944689 865253912 927690980 122498448 495142439 161311116 909456128 709633889 988141768 296555655 503741352 427088521 968856763 477758641 669148518 188263826 412264921 82366288 233095975 767822440 936615470 967517330 987998017 203722606 341007318 613808545 716967807 606596961 860257434 177615795 997829944 930389682 960304706 824292210 947033940 881203378 991974740 581841315 925893299 880133714 911551191 749905294 823658089 811337206 994166616 255225988 823402871 447425947 795576647 167672192 777361424 340500719 795761979 1888803 986215754 56118076 988637401 948433658 952283334 148020356 763667045 680244416 801956047 436172860 456761530 146729000 320623391 915904492 940775568 617477407 774182670 699385062 872145973 527287057 586828062 963687175 964208538 41697558 65178356 982985582 987686630 264986139 810759075 888438748 980657029 615371817 691061515 242220042 954499935 963699775 982581617 438533107 577257762 928120011 956948989 184573665 695381533 334877805 342507995 756562602 892836102 18372462 824981961 895938144 941048955 870021763 888432913 927556181 980337805 596620200 838025525 971844104 979087411 650547808 670377440 215528934 258223724 94637360 294524970 436340870 925514350 410363336 573120279 600645125 983485157 48422617 979452855 38789356 671956909 484603612 713615062 953517165 976034423 724496945 890730446 329723896 349557108 960090874 963683270 192267960 845520470 37614652 251342883 344670662 651180961 772469131 924497638 405738052 653009208 278228110 391679963 373825048 816426402 219474849 836706544 403545194 578815267 794795295 973792250 81308096 941264499 768090900 951818330 16547722 998433284 992519241 995468270 495833117 706761163 104034147 451932551 1609198 421682525 206665483 967917125 761560524 888739755 212949887 672842558 608180132 655615258 379694280 700784861 502044443 656761446 618612101 992964909 99190335 646166845 43944131 132888279 133502406 733991035 997005661 997507786 148726815 455895506 431824095 817643121 203521374 969671683 243803839 368147499 515094648 818025897 586552857 837836717 649682369 844878992 622614532 833321107 490585379 748809441 51811025 679456832 358793659 529015221 531985105 693858883 406636708 547330421 485013429 567975443 49954345 775728472 352132364 665458333 723192036 729259759 98914001 995295934 657909971 657935365 268500144 359113135 489883654 636685039 889577024 940614525 44351665 780708858 469526544 689441749 875166059 919380574 872567872 926573658 231679505 847715723 566051906 867960261 532285058 787314979 799806444 875611142 196135918 257633734 536771748 698823418 972962080 986430360 178450649 853751991 653815438 919469774 274840103 649437568 448807606 735629056 860580775 946448108 302625406 834515404 479386362 718455548 793933650 796424559 5952518 790006258 387334126 464300699 669176529 699129679 168959983 972544818 47155033 903897520 305463821 342678517 439185815 687004654 339901766 626672500 983386397 987012150 77468887 897922270 582582453 878721928 673008856 677291937 796387082 811550217 84786175 383224151 944233456 987914400 324206375 554277985 92101949 145355087 444745545 500564305 877535633 949157698 716954045 763649408 696009375 858588377 503351002 748070708 922032295 974200733 106256959 453821939 609507742 773955705 186240605 988274374 148513538 818242700 746301679 777015856 207886115 453233182 407577388 537216600 848365466 983833962 964237023 994903354 171509340 285234015 728624331 900640981 424651085 804987329 931354069 973619979 850639222 996123891 625884883 772575120 155568083 674454362 551043093 987128503 862700936 998255359 921678407 930187012 323112250 764146225 237757577 595979469 720514505 925912628 666159816 699077966 414577992 433396863 649925320 924215867 457429285 941041550 850980655 867462510 289753151 512358990 828859910 878350713 415946164 575198085 683853769 782656684 905556780 982267147 136214142 169724040 345701431 806663028 368641388 995983686 963819477 965032584 719788268 731335767 731119073 882359626 346720858 379753144 700887255 965690499 105664423 665652016 167256563 808417367 493827388 514786473 287829900 792713838 309997262 564437423 36817135 687300531 411420887 963059584 511313947 972934955 381930379 814179684 320736018 613634869 75014946 214991752 182636590 339998523 792080642 836468430 502309350 770304205 470376772 724557136 223505888 354479043 25674218 684800714 583857288 776401817 443268571 867583110 201378961 403841882 428076704 761189290 411285714 648755568 204809972 369016919 469566857 734323113 59424044 649354247 192564827 303238735 63924665 343782167 160690597 822106736 746511307 780654767 908089533 994676570 551026734 815144769 212864295 377610226 361214611 526102446 37775006 954179027 426516398 488351738 808670129 990466485 241825068 446975955 634215716 764451995 774856155 802394528 744502419 803102075 316424279 406006207 787485389 856678406 864336728 981921676 625874138 726026534 780073051 853921266 142248370 988445244 400618651 873855825 23555889 886525916 98461247 525113540 365480841 498013203 886201766 990109177 806856534 860883048 698561745 945879348 968164176 970475616 754678685 830277240 706918718 790262265 215561911 610162089 844940660 865613493 539447979 540644818 551712306 816195341 87099613 221357707 760199001 776622287 642927861 845049658 434730 133251437 570009516 976826767 766990536 899952143 742548786 997964054 263691344 974652177 158848149 318053646 149965587 617224727 730862896 746987628 132417011 963050836 322476323 831855251 199232213 823552841 52456440 480224083 379896008 581664330 353321028 366772963 901025699 989156990 200842732 661396102 871156720 887378401 493048557 687028302 907060297 978140302 997770381 999052429 661513543 715094433 169217977 815776655 930413250 931522534 848691292 851913179 456114410 599229938 694412403 826485888 706361272 996213443 121460486 900850178 883055408 883515822 748728211 901207123 346241252 423834156 256633409 368800803 66960997 97856314 140718480 791172345 436910941 591233340 421901973 664416178 826289103 941946056 63156604 307518531 680858121 792995458 485985847 921747205 595537442 832233107 993464858 997526656 51028033 447398970 613372863 724099907 934877384 940216866 607453060 772903665 635012436 796835401 800998298 827839807 147789770 677894493 163571220 565122952 733304298 769612600 856474787 879810944 545066690 576754292 704305236 995696281 255616194 698297052 35069081 737969221 746800253 813725812 744789783 920832231 196527706 251496934 565990402 654800792 232592757 398877640 281741857 985312459 505217270 916677108 144585553 342345110 331214351 617954567 48925001 481344226 790076239 962834487 865017394 931407742 15225556 156631928 955786680 957821581 303655887 648202963 125125069 808374079 282286872 767793151 480164919 883783869 533414853 569394268 212319058 927871580 106375100 717653741 850582677 951322916 345607835 964935151 286181050 608614024 210047990 393848305 914324125 989878239 367538470 414305032 614342842 914981896 316320436 581875459 498846515 516146010 208553493 914265349 996056203 998861885 705390987 943397814 515999106 685760292 343206640 521411802 211606984 646908169 528879618 782949692 740471623 868953695 380700019 981762296 211655913 586979894 970071055 983519161 773421929 820414298 712229485 996121438 94944770 180003539 567276512 792073467 667371950 867207863 896765688 933115570 385921119 486655139 74980090 869645953 750606121 958480987 78708431 772215443 370111834 533256521 275623010 763525157 554856429 940738844 234215503 905749333 129554318 823552961 503310115 543382579 720341828 855800293 810958510 950000026 96550905 856467290 662862285 792171397 466881519 528315681 60177365 462075018 196849563 813502943 883470554 980582120 224274344 494586877 973852203 975681583 387606251 816479489 476210785 796160989 752903313 771832167 446341783 588554869 229449190 792189179 997546384 997624875 920533187 968346464 997937465 999371488 467713033 998704301 911106729 924843969 676927943 957904328 755389654 765780557 603896470 789517954 375861437 660132143 212986782 834037169 769907399 846375932 613071700 991763716 424980353 590697087 331202930 910966162 748482145 877276930 510365022 941753098 785074021 833394988 435014828 972723025 629451188 899874388 920846370 964294907 958477424 991525193 555539298 965689059 766627341 898175874 117026119 426233255 965775003 995849523 619857729 720130735 410448955 993260065 154023903 509186041 259303442 922872666 633614969 735512358 512046002 748168915 19280145 680606102 228192464 962619865 399122773 913006912 837410068 842534961 105226522 898956648 820996598 895037596 23518938 869382986 52979360 831228727 253664598 603137126 936748121 985765381 322141410 830851001 148700107 526406844 598799090 781693133 636714887 893311966 535337749 861544369 682616780 963495745 774751120 946826727 307317980 642359670 196696695 889786291 511587303 657319686 858629440 980782145 210347280 983328839 164965269 714301695 178147213 986545544 245546365 816499313 727229041 933550479 206564463 607861338 115724263 687481780 948633545 960575692 529658449 865746849 533533973 852012920 321667143 553119956 158378477 761131262 374564385 595712778 704302177 808583613 813836242 939890618 995437108 996312950 835738969 922517978 597705158 725527818 502636510 644174905 21288941 388932040 180193983 775260173 844110881 898815078 372444883 633669537 711270852 835183499 913872921 936331254 399987705 411150704 919581375 953077587 986230626 991464430 786072275 965423497 251853961 698038600 816116383 950123737 268139377 309073403 755980590 942786836 349160501 892234370 992381193 993260270 851377923 880996844 57184618 835357223 389311085 923466383 986385576 995411789 878608985 962791564 656220992 900652215 544164882 705459576 85868451 342020497 309202124 891074544 707789115 752807766 636186275 850560020 275434928 294195924 244960654 783288767 484028324 753383402 677207154 822303489 658430049 810586441 900172963 963348900 623298251 863511082 998366707 999357663 891074364 962430815 997463927 997576145 995419393 995510923 750014876 948773135 816919937 906845441 939654684 995086304 98457097 187150365 551674593 607189497 767232365 788405453 139677549 157348296 616036827 691579418 556242554 639875991 857214246 912817872 932196087 979237779 506290718 973429330 713710785 927982757 19194414 723018214 582694075 797139701 522783748 847890070 807943758 838530948 113916736 666868511 85066870 827269677 724006315 997553013 923614234 932584443 931083080 970016964 202578685 898760589 467945384 861856452 108189361 206413963 550435344 998066900 102383003 230757107 829975895 852991033 743009126 821166467 772807049 967390796 406392426 548243321 405735441 455218144 770183675 826671518 385571070 799982943 526384851 817343155 481842916 833362040 333600263 904564428 521215376 552133249 215678890 441585955 103260158 289835182 30369388 116958705 93755881 696193272 162146463 603176685 957874426 961324172 229448349 240835704 432999447 532549943 455551187 852864237 39469448 746420291 859795658 970035567 630302418 833217052 662075333 785882123 455968619 582438497 256216457 852582658 162011284 442320994 605998359 786458850 849384988 869322989 919069017 933782293 893656773 923916540 414792023 471731816 943878163 966113483 408427690 512030581 406527368 777876970 634445970 764673836 803021805 817489499 951185552 964259796 453106384 784248373 251383425 518896356 452772965 692074161 241991776 675949314 70888369 551987062 965143530 975999884 409676646 990236144 61064923 512269919 804218016 885953025 527874977 868853755 2584536 271168091 597342884 947709526 173559562 215948913 93682586 711771469 51869545 991191768 563163122 831527471 403714269 968211675 33717831 355546535 880103058 921597731 474050959 747749306 824241159 969072748 209097535 665272342 509281225 620541825 989902049 994624826 728558310 895197276 876573006 899720043 861823272 946833383 834822784 928745798 471079777 663736860 415340465 455790868 384404748 519096874 431181908 875150938 348707325 533644042 730734809 969833699 152083153 452671806 164011528 391253018 52639656 400231247 542565845 695902739 509125510 595707779 312746015 912881566 787265325 900573116 728361790 778237208 840075966 962882039 430043300 658536612 917067916 931510201 152657924 376597549 298261238 327072397 455249265 974048088 413653133 669477071 151980173 989658769 778965746 815959821 473761509 912794866 242855534 955997360 972705701 995284979 998322381 998563703 110407706 616098792 401615447 520850141 623773523 755575690 586468889 837502043 642772334 979912556 947479272 964575965 782021923 956022373 947084642 954392452 286389569 665390300 889616181 911665294 411282810 574631014 107932893 637438756 851555728 949382145 814497167 970731821 899946208 927014558 125384565 332565732 996790240 999137543 650508086 767967628 528630313 625033521 875151967 928753824 958151491 997423378 155027802 637879719 414107040 615573758 380137643 662754038 236831099 325727038 165880099 697848748 851254688 984419478 121894369 525938936 508120637 633610561 668734414 872552226 717284562 875685766 505155822 945169523 897780604 981621590 976505817 978954865 588854740 886427114 285041784 750644726 590158595 614578030 886893535 996986722 349704605 643532180 171020595 194506117 523890352 970013940 94627321 768181491 890026730 890955644 219396587 506675943 22008069 934412640 929380165 988059575 818282870 824301821 650768705 944288701 496997098 799328134 671199645 712623157 422949387 578858296 212185495 513349152 121742404 689226328 834685164 946825815 894303176 996186499 496454066 602124143 972750844 975325969 374636276 790977216 104629553 365879434 214850772 252454073 530512026 725136230 317466109 404873034 698573157 948781414 556573883 612524332 210204664 474357923 611440375 831812817 985555234 995076385 305974659 923260118 346129278 513064991 342042706 665286771 828263146 885273903 323837012 901846873 918547323 952993436 827034634 853004220 225853705 524660952 945763971 994285770 201995034 666354472 838656527 992306702 659869846 773888594 830425494 840591595 585593354 863087567 603148142 919182579 147072951 570051894 874442847 907116159 321944216 336269925 467300483 910834923 814260792 900288222 250314911 427051586 606862784 639362446 175568698 542623588 523896578 916263321 828916886 985455970 836934623 887209361 176918807 297699524 172629101 456804582 369644921 505214726 444274095 607418077 790561238 819823490 533041431 885733248 60570782 880040885 55488787 838589036 699973945 957026311 901336447 947739096 143710890 144927393 339717006 561577378 554192054 974341200 790892213 805700672 329119836 727448454 678138668 786882812 376514609 462812031 766685015 841688757 645941614 759595483 56218253 165291526 903289118 947419479 710754069 940724566 821639472 874093780 553260883 804114914 183780810 712060474 649342832 827161047 760471569 777650292 84760803 453768336 695593759 747820984 662700242 987348887 136400771 845499958 148193686 949513229 110313760 685439301 154751478 598244771 744013730 926784601 391243140 985511407 21443055 606966225 641019183 788637785 449333169 622881251 743913789 789009379 799988185 824309924 984272335 991974788 512373590 653678673 600224990 993127793 897012520 988067897 195002639 727593792 285443775 409407595 527638379 922776670 82165283 557682381 526767105 784439224 472791184 942340682 263237751 988406888 820705223 961972492 666642331 865384074 748878720 807227146 578386348 923610457 131720646 803009902 551596888 809070833 839886128 986976235 935025134 973927790 225629571 997914336 695289593 894059620 264567651 733772941 295780901 789502633 363651206 796603938 105463327 841481543 60211022 80992966 724164083 991205353 288823354 703746921 524471048 866321537 491518662 727874590 575847937 802836853 28542161 779600918 820586832 970878313 935608155 988883873 999327795 999386806 729187115 791627269 336941883 522647191 282056091 628783408 111533615 875703827 445857555 999055955 568249042 805225288 179769157 407999202 600491042 787551128 590951969 594444866 472507026 616479905 953842944 991983115 848271063 903711867 145503982 826926121 515449639 839091896 381699020 516739114 493982147 640316236 400764057 500632618 590684355 891519780 928764246 960841698 749976579 766947467 539779839 583135580 399131660 520974699 928217793 941041819 978055311 989341332 234807558 534362257 307404869 809708378 407075436 743619728 927536437 951608158 857691336 979581575 528988361 759102342 143526856 524100988 276429747 443749779 667275244 883868902 255859603 611448672 152972771 958575076 260430501 448633255 883817051 913726737 358837568 495747069 152620483 869064471 884896408 905639510 378506440 836915847 791830032 976156692 49157674 732180801 66850109 350171741 529217915 882430344 315912244 868159850 615090801 761350644 738006405 738234682 675196387 812559019 666863781 767369100 87726527 935181494 30893303 672513843 401603928 583007125 41021776 115899243 868666032 894741542 443992227 505206263 804954686 996746156 414923003 836456169 343426741 835510124 470908635 798868747 220670476 625320335 909861923 922430604 417375281 545265969 308321174 756968281 977791735 988727858 849031405 944320707 568081118 617337436 116521498 214076352 953351705 968770300 781422062 885570069 224799786 678119586 970609829 991740925 388549874 636129207 391031856 465537745 875199695 947163827 945440017 995549328 135756033 789175710 527321477 876245483 241895604 362072269 468039295 767400690 31933722 978873676 174415059 640612081 237699438 363051825 144197387 840254084 877506402 902763445 480104591 943366849 259580261 341554390 419551949 459127317 460970582 797193040 994229191 996663961 846434087 993636636 682695559 731624804 259549051 675010439 79434371 391006861 613257518 742299644 75345126 852667750 511719916 517022160 860421330 975906178 381376862 982941961 13397364 244856617 188447408 800184124 560954332 598299503 615061455 920476254 430065181 789853935 221964549 500336499 867048018 873330497 841120603 919886344 941472392 944441136 129524754 903072482 288247775 563854325 230920633 488108206 686302210 914470098 36526713 953348104 741877752 880070977 2079270 571800388 683772490 738256398 975285953 978702573 441612460 915981524 613616760 698617203 69497884 937721869 855580763 913237442 473896886 574721054 236153681 287865579 929320641 988626983 244267912 516887951 384048155 636680911 572906157 611712676 303632250 532257225 415143402 857787228 293789550 546823357 171147319 359968009 516030231 618928018 30162224 713958200 969000391 981391489 480799175 989831013 716073982 810779872 262605088 670989697 813790590 947060148 443569408 916579409 154822069 300328052 459714625 808780050 97344068 577952431 79476907 482364606 189967849 737494376 69713044 906495496 627688303 669814193 724818873 991725203 154535444 524940300 566812980 989443312 991740489 993606902 268339504 798073087 177609212 863699249 187407571 751700598 341166352 570649184 893824832 983781431 454517501 942882366 940738304 966578339 641444583 942566838 764727173 901146322 368194813 614098720 810157431 910531625 895981713 997265208 793712593 951600645 471759633 504974884 445726342 932076012 636033117 826136633 779716729 955914534 352562228 726967550 834431861 879950824 260379245 295592354 977763267 997742430 456850890 795291480 942919054 987266731 884602540 900584805 222022867 297987193 444607439 541576927 606673103 921033339 993698852 994793276 357008996 546289904 741241899 757753995 802476440 981259233 715767466 971188879 239458164 501550135 773628546 858050739 580062984 606754351 675561032 704640916 394242178 903321906 595936367 960114974 96448812 107676479 285990808 480101570 696962167 741371294 77645380 292407713 465562287 582063162 309686943 899604317 522548448 738108766 308058881 523540008 804844615 978536325 956179076 974848212 454744054 912223200 317446376 747624487 392805745 863125138 251484414 533109173 412735758 870388451 62763575 379204064 998528831 999308310 445258923 993056009 21709328 855079000 809062163 823430987 715919481 942239497 365835590 806178018 708108592 808192392 652911024 806881250 356759735 660011155 864354278 979584410 234644404 564210847 208281569 913922147 189078582 430244506 221844653 563965818 663831205 896756187 409087618 659616802 91937053 709072866 462717071 566578459 283988363 914924102 325931696 595307844 568726032 700460690 389928366 933842464 564379067 894205489 444124424 675375158 958687257 966869108 732805913 882687614 840638932 935808608 476478189 483427845 533217302 935751416 870930267 906733732 519087829 520930685 933417564 953721996 656992433 915977255 988116565 989606445 334667673 374419715 151096145 622139796 647623964 903226458 744004575 770397617 653013690 715649611 631311095 753269434 562444429 698452320 217380533 609164251 569281906 782746017 985413377 988121536 841690387 927117466 368894769 722913147 227127131 447950880 762730213 988386368 649838116 971635024 367102337 718413743 978136513 990898990 680150271 952379304 691994603 812671479 68653967 962257271 791074343 849462287 163010247 221729705 721155425 874758200 836647567 901770197 608536875 792910544 389594495 402255797 412946605 860853748 366242587 428880130 891227069 953839734 936712273 997219760 594163455 659986035 654759878 754129539 623315160 956116573 845376157 865247312 371810482 919053884 271717325 529838080 626648953 904615833 166326719 271007637 271556449 981893828 648100681 843690827 617537436 897454276 976905396 978853133 337833342 895808446 823882747 905254931 587608790 965756845 913888353 920861887 555278181 959464245 42573888 557021764 126148369 990164846 930673061 953532341 161559775 423196165 619821595 746370451 483674867 986405557 423496962 484164164 457690566 898383639 528239218 828743268 474637063 814351245 623250238 769213488 592858615 597401590 294462887 860321970 326800334 863941599 931521362 957389381 905845004 987576156 772270759 952740574 801971145 812014528 589907735 935198236 986577535 987817665 378250420 549111292 773978099 976560724 365991779 382571131 607187375 662743779 292413944 313705890 82523335 127016479 195046776 270513012 739721497 759499690 626529523 756631289 399089864 638646970 910830397 923664436 672912414 683500613 798480569 946382692 557450403 609382982 161612507 852851606 699267488 985698838 181214043 396814138 476422910 722126809 6815119 253945729 925184971 985668338 405087044 665938499 875821515 917144818 70517973 981150932 85379959 560079765 697726269 998330270 585100013 936727207 458017847 783612705 784702883 923470384 635092717 882906637 53996516 206180623 453021280 937639929 688954495 819892259 863949892 959789997 484711610 945988200 989481885 995583768 775929813 900547961 838359648 962439549 601329727 707180451 280703737 966312149 35560348 682247970 166110281 446856476 6224822 448305895 440411925 733505374 124638350 726690688 972991937 990948430 460012629 860302697 474154522 724783117 473655490 944480853 191570989 820632972 259352913 522917521 88225861 454725282 313963265 664632177 610132615 617473090 847460823 970191687 304679867 777108065 904282953 915948997 256601515 365114595 553061410 976673219 623037985 663107106 818912329 905525476 68019157 472737439 415043020 942484449 404801707 424751752 656482359 876287268 631493250 941421181 591014242 791434268 135049567 662011834 215491377 996044282 311466173 796101805 909781755 998351113 515734459 970702689 229176765 873200082 977920793 979544599 80892384 522351212 712226157 714691430 778610090 841537380 709988465 964500498 416101500 914601285 231212594 886341387 941632535 974166241 542328855 714227811 730359537 754238392 567719246 966222386 750033119 919532766 853242188 890619399 11494011 799043042 358856668 959577967 721884832 853537225 228190495 945572833 7063801 771474152 669981682 976278313 988572359 995084928 313494297 696853585 163050745 749960525 352418935 658585269 486674180 632595062 103963570 340638460 328372236 880154166 96270555 520513533 906664842 939856927 430526038 595184639 68975992 209931861 905037710 987977884 260955434 791242717 685992473 818211095 287193122 367462667 135799437 687063154 84223832 767904563 790759224 839444443 52810176 980176769 453293227 577901159 164645985 857626062 14901911 917263976 121529828 967954838 130995677 774381439 531452719 706182750 764053570 884858373 42405280 493180224 718067873 719330044 527343798 891916369 405470391 758343467 769435934 964818548 286211701 500788918 830369880 893713199 191603732 412972839 396759726 568136409 600852335 832396654 514324175 756649335 6301020 882626934 5765199 49476055 275777971 864644602 43848343 438465086 881031503 985639661 900324835 953292739 992077168 998634175 187328890 269540606 437409427 603385158 694090679 744311672 642470175 828380048 835414230 896311024 69760557 215177166 501388931 811573182 696194391 875426803 990810054 999200203 46314241 400655152 218292248 224078322 777149099 939589687 854702308 909381954 435195582 661957006 573621709 609832192 431657378 912041587 556281092 651011531 214629027 533155736 241433328 298051344 729561821 951116299 684918941 819644318 400183475 510176286 899877318 986181480 710663647 772120756 41550091 454086361 383893841 992317848 596014578 625794985 548390525 673187278 293502339 349488431 301785983 716924131 437102411 484921787 47758238 754580252 278820930 988615359 129341774 434630452 526233012 552528597 880984123 981643568 746642011 824714705 668882948 859088349 93895463 647572711 289361859 491464455 418274432 702991407 679804664 869517147 401715047 606489053 533876568 603323275 169276144 678212828 485600668 631703548 41890096 245186937 903573515 927867283 426365996 482580863 981477432 984855158 282314189 631865421 784540106 932080847 41820165 920940748 620354530 892873835 175551362 948592924 993348083 998156097 103732163 506209252 998331102 999050882 707359315 732865960 263968938 451582555 493039096 884871721 293900269 917246436 137870246 952279968 742291556 894916435 591753820 872181205 681974873 842265377 278312223 326894772 101868983 232413813 510294173 774349468 904097957 991861332 503014281 595599300 435231536 463978460 671641603 848851653 433320345 843505767 140516084 586546693 782771262 814811559 654932513 710284541 333213935 389288884 294962808 982394765 298229006 814695282 356943900 861209340 688118378 847781391 893389981 971601313 123532000 290865731 199832999 892383465 454567099 906940988 215008764 735826704 335037856 913710930 830686152 893177799 99390285 904605260 531858968 783751608 599977564 655266227 2271414 876797952 728072301 841519307 831391410 874169844 798079472 947952001 275834420 354098003 612328679 778849447 186565535 582742573 710291089 721468705 229539106 491765069 564932026 688477260 176001170 449276360 57787571 159785768 466789710 782355659 903728475 914760194 270334090 448376225 996819282 997815827 684446877 832395375 753388509 950982930 90483924 123666245 631672906 672690514 472735946 475020748 827427967 843426377 310112796 336016027 779902078 918464555 989923748 997824842 280937640 591777781 448227462 827810991 797575164 961049365 737802323 807516290 746463191 775971722 868710994 891556639 480472714 768584501 861490729 951594602 393541928 704469129 711207127 889434986 524503627 938619600 838810918 940905313 377649711 945477904 69847674 517920120 820174723 896099825 103743758 765820025 594898743 954519538 800825930 929584920 731815616 778284420 772318259 956080523 514365342 742631253 45400564 283702467 576317709 695361990 409253108 485576779 513751189 671468768 75690385 510864781 896161926 974973633 934973667 954714002 260916602 496974462 666487040 674077841 247718328 595867156 664111993 773219805 640044999 669451568 595225532 901521382 402482651 509864015 907331683 961946112 367323690 821453678 877649852 957602805 862966706 922590046 884288752 975555666 21953738 908016529 785225540 946120025 551967890 742910197 677123280 969244837 950108511 991853598 858025326 927842540 886103572 976597875 761841810 768557088 107025028 121598646 444134082 493939181 495620150 800443345 589601560 719580422 836929435 973861997 142497772 242998287 139011326 237163676 443362888 799605801 110739960 209774029 772237591 820145571 402743961 893007132 339875142 699540251 402787427 628791913 576086722 889027966 573275747 918792165 24940281 957968649 392254212 713805590 585081790 591797062 866892458 947859138 427798244 719595008 288897112 408615585 280085358 547723095 828318887 907309414 56136086 968581330 352644999 523262189 431488113 724717853 352164108 907881081 339353272 523151433 667765671 899239360 586977208 947370374 71865858 149632017 693476291 931129501 799925543 967315535 369471916 848702369 207999814 690428732 255497247 814112513 187573049 409212525 905800654 996940382 600271993 626620930 584763271 666584573 852294471 908990175 993616386 997316763 70977066 944012075 274563836 533089439 312741042 374917831 761600240 929414703 58273698 348388790 439548017 718724943 930971936 962579380 852435104 910368165 176064655 778857575 561357346 745541467 485202716 931053057 142441709 505777178 729992953 843017228 477972255 994405233 242926212 631869702 419806698 571338665 49981199 571159231 939514848 952082635 89779080 805425675 825608333 993620473 727889387 967927133 557089419 866879912 717337977 752250510 657224232 703972739 311177584 636504182 712686415 737826249 303853333 364894627 192102413 248553633 172032773 966893746 231651839 434388526 932513634 964232814 924657976 976404149 842549795 856280334 562548179 814195780 151360517 635065044 216436547 465850258 479430989 856284285 227657283 792297350 523987733 682091798 64896488 480216805 441419613 968752733 727017468 835655538 7817014 123231678 417018238 741578194 996453224 998209118 875815051 962948551 104730908 684207598 655898718 914097959 560623436 924117878 572599937 918021433 573215186 688975183 472498887 817849510 521436174 740697844 81193912 191510128 753331415 764631585 639517307 683273466 188211030 991658274 687438179 888623040 608939305 755284227 571288812 837098714 987490527 995798184 658552258 947756207 513435472 944064465 608504809 732875620 334678847 906781804 583268178 960561967 510091473 768601271 511476855 671975317 550934078 608336726 6247199 512636085 408710610 544070019 643258336 806520343 906485566 954605455 179201895 652888104 491521558 624298839 243871588 559196705 582052950 673857914 859633931 988796678 829381726 979523803 977784090 993349979 517002767 553253467 493074250 724160085 930156837 991404590 574412046 901395968 2991010 182336928 871354727 946742117 967515248 976749393 706055471 827162641 109393718 569015235 152287096 376845981 38255673 653160730 707931440 847375323 38434389 170980589 449309924 760249375 990648170 997818297 284129079 293643992 773188764 974779490 625159923 770794484 99427489 705761288 985627409 998288944 350337553 571529861 840759012 889667340 335714755 745779998 998510551 999218220 275854394 786507819 643002269 968390828 579833816 897128646 720949268 882550154 699820482 828573550 177302206 532193160 856598902 939158562 391344390 768985513 721847268 860451766 228665999 340589507 376347344 499979107 977288852 997272014 696615452 799466289 818886677 842852602 11083019 671239414 676140685 766943453 985778758 997515056 885382231 913407380 359173087 971962803 366896993 586503730 263309750 869635467 580728220 902311991 522622571 840545973 712375239 877095477 255559586 450276836 218817476 973928458 695319997 916627279 376636516 692357230 471913696 824660560 729526015 757869891 567494679 576429696 835099838 975627542 540613593 627714349 993887193 998967803 228600955 871111947 381845267 548605165 451380777 693937666 963669400 995335461 129235802 212196973 199166739 605834856 928365670 958800083 545956708 842264511 489957904 538223344 822955997 947281143 86403574 587377655 624806767 907949371 557476242 767264634 680612654 739173721 545836865 573042090 569693448 850907314 171513855 911764704 237761747 254981510 288948271 408849135 664351180 787733585 113568339 559614049 646659908 697062625 547833615 926092917 169168195 763510314 571734037 747053824 877485221 897759783 676327948 751860823 801975432 918897466 291993308 808358744 412284556 828308640 560241633 988932594 548704946 759462869 879010993 993676094 642574363 779829912 88643628 466182399 768998953 905958224 913360229 937058753 122095715 302974891 171510737 628170802 349564539 640416762 963287006 989855119 529403712 693282458 213577936 934913595 56306206 436938795 608690072 864099967 437663549 792598286 196121316 701935448 352918935 638260539 959728162 976543538 929233468 933396746 44228868 858324277 772585173 939099599 863463094 972310919 542478536 720667575 388502066 671942528 554039002 820381114 465227897 689770802 124531457 446999215 854428486 867926862 915617567 965000308 33682395 588354147 568293355 837411374 357201827 901060926 881955164 957996046 401106798 935149192 227351008 551455493 841696335 990683401 245760031 315674088 602833050 965724415 802298523 858031441 854613980 974826002 986193308 995482188 847361277 888962388 41064740 681762404 980933442 983470087 135862267 732894614 488211728 737296901 394215279 899421350 86757799 197927323 438756259 906811131 110242844 273600518 963759189 972424943 307179778 488650498 608238996 710635623 989365323 993095117 366959656 645389204 550716181 673457104 169112308 260304976 918184974 948179975 186377028 196310868 44292201 973190925 722898406 897732536 613378646 864441569 743553772 746525152 820978112 982446852 884328700 897142239 57004252 927983293 579105218 650956268 756889297 854778536 871633577 994817019 501509002 761463500 943183379 974567232 225886671 796271645 394400460 957479554 54913605 142591729 119986598 459334987 621490685 906444074 617783607 836852811 251255373 315361805 282540634 940151369 278225588 738877021 631646755 703998841 802457365 885809528 710011305 989548655 691166331 758969950 246115937 565769148 927819954 984519395 955246362 960040548 512502500 830484917 388006865 574834527 208387151 779781630 82636291 975555633 660967477 753376815 193356127 808960859 8311612 573013100 668467693 903036866 260539692 665092887 278937741 460517729 174037185 559920941 947839081 951151226 592270377 740418536 956054446 976382698 181658730 982884827 678667346 779725508 175239099 263298346 770654683 816384731 755646026 838605292 366966972 540351329 430458771 476413873 770857446 913838939 321902033 763664923 822093453 979649385 434396855 438226712 308760539 481984016 186501320 870175012 436975619 905612054 22219857 257826018 925167767 951610757 491502687 924937345 55171858 87723419 19867611 816744910 783828974 843461572 170325359 237535791 242841571 967870794 630407447 770827935 33004221 667833150 934880092 964647193 386482026 509543902 580455063 669577552 272781341 623840815 552887009 687092500 930978302 966656337 893577904 954431726 613300085 949145162 644079364 775513906 232993211 351092468 279838598 480940639 430259974 616251253 837518874 960082933 667141143 703327966 893332823 987400068 360426853 886523605 951181223 987118785 297845785 591784001 93045629 989596730 154984543 846467142 332829345 913201054 910882682 977813685 750073247 968798515 95727297 807687820 270662191 290669686 716555573 755446766 275069465 895262442 523153460 535086292 178844844 287689019 6100375 590111319 945828729 948334339 710960839 835359439 330621317 857744668 770810957 786141706 714992842 918761647 823268238 883918518 672033677 978916698 308725713 406159459 725709429 776313140 789817374 946612928 413380809 544286032 32097652 827133528 141686145 447422597 138545084 935694683 297799056 426063532 860353663 887814385 145046071 784561780 936387765 983938246 793579880 884768867 73324890 254517521 192702220 361807999 166702722 186697447 781719430 782436371 908535433 924724291 187826451 452140966 446848076 905704577 961291771 975755819 352972522 827971804 31312704 515545112 200225619 214463218 759726819 898258952 618529083 984955151 780949235 900041635 430867729 503024603 838855850 947312748 992975146 998432285 413413599 705566297 613482205 843834138 469094716 628470624 210862499 398621996 456507394 960182609 475798564 930801774 456470905 739682779 681861155 699302587 304858368 749648527 857682686 955622584 151802795 515362872 584212187 951531600 66227618 519514277 338155545 886629861 524893587 770158410 263560394 626507728 527300608 966622656 496516980 496979359 831216512 855829040 535600544 907974846 222714538 994055694 383181358 539069435 905807022 991265498 754128372 954001174 218037839 862823412 554584473 789573518 632004962 655800952 638275029 662106715 281477313 867125422 337494046 588205653 97027284 194562500 101697942 600093212 866653861 945803303 935070242 986484267 986092526 998683348 657311741 952241107 872093738 954114107 232528058 356941625 343347025 892535225 525672808 644670884 935973638 964792239 801320644 980535724 912225739 940191930 131574465 662036548 761214568 813917765 268770697 517020275 221398169 358998259 974710732 989557570 480688191 710196969 414024409 836635446 409551461 702454442 664263936 760662249 89216968 863264150 225864730 546443586 639445584 885617068 236730857 951997674 138367724 614140582 14303503 457973056 535500025 572044185 686310006 730656028 722895570 740627553 712205240 921041712 96260751 899348237 170348765 473325860 753947255 964431293 115337447 612812569 569180552 598962464 146998739 407948690 524321126 733042130 103370833 600578307 59328842 553752367 127593848 843123311 190883229 625386814 428864610 704611302 378916603 521654995 306774753 519118184 904563053 912943760 521754273 933259802 802494480 903989768 490694309 784435064 89040830 962134115 996729058 997874888 686256389 876800000 132048286 697357481 257381033 766203208 549783582 928886578 699439702 759165546 492463631 989680509 50877302 809617593 364920353 583308228 256225414 933403368 468454271 714047869 18354620 411712723 346041575 740718896 668374614 779739529 983549319 989548173 590485403 743028327 854539653 941380674 85743605 178712085 475772752 921512942 184052465 799402311 236770038 880511941 260432453 962623266 483687965 736315112 348804986 524421509 671300585 886829336 612634077 895839320 170072168 885071328 844138697 848393895 368247101 807260142 237242505 657413769 545665388 707341194 984667994 996249473 219506682 796129090 125189153 562116011 677696802 770215417 934091090 981965777 740286718 886783623 530519020 851531351 756178857 880539665 449746185 927403676 267159378 969622564 719476186 942710805 222417129 910259913 426307072 597825695 162987861 440352579 350675867 633994010 736156159 915188915 427972823 683085474 303275307 575920351 477812227 633543089 227060320 937831315 189386190 944460602 888138292 894495691 255246299 936511927 244084063 567395768 674645128 957305693 624391047 892834841 491110268 925236259 34849022 286151598 43071615 569236931 392379275 583673093 870467373 903444004 541237601 928000450 192114204 619842786 91196943 173938930 616422254 808984648 354344638 844894487 361091159 390640759 471162034 753849631 141885686 679804921 256644314 556755157 320188163 991729125 455169561 518794539 127923364 425684684 232199241 537618845 777369961 980215404 839152694 979915860 485072979 608634032 607063785 776753719 412355393 624539256 102034630 596908031 155621001 551611565 157359628 950209177 301511442 552594554 79518402 973201943 291595787 390103248 530351758 743531170 822115600 946835076 320577884 898195094 484615388 607359569 934410077 984470740 109044169 965952054 197831710 517988056 485531357 869609881 269288188 393246059 522922015 876070068 16444709 254769729 977633358 990595372 454509818 822914583 190227382 651692647 558492549 686019233 550676261 986289526 655425707 707418301 905545352 919652221 336283035 503846721 592157876 858453347 672682527 706390275 819547405 884884156 667181010 971911227 284689029 919727533 219346278 562517973 173381655 991382049 685321169 987587632 148661890 588788915 867081048 961489018 548079096 683118075 237296041 951872038 967410822 981243239 510486335 988566777 905532102 935455786 878266461 959900790 352963369 993907475 570370480 622848853 740264803 957219892 249160123 290190371 781971900 978934840 618980298 895861217 850149260 932745611 311942448 905431615 660297871 900414446 306495878 360514614 586930189 612957194 857740928 923056860 783010501 926334633 612963965 836700550 876449968 925741787 920622837 950940061 39702974 732002909 620530622 647765430 425819739 885647739 70217399 630623164 180138339 961839035 556605108 730442927 141602421 435547710 395787268 823288653 352463714 514871260 686059836 748170487 413613999 794358725 6197740 643447869 941360734 982275717 442969469 957360057 734957633 955778444 585361272 640457491 720799236 774585045 255377970 694812691 221054540 658160849 948930626 995608870 824263250 854490110 605300522 861322610 227314940 926824966 482850592 954455913 450022669 976206584 416966653 856879989 313158214 942065348 514493422 843005685 370450226 911653679 152062620 331222540 118498425 425409877 262291524 454290066 142706190 143422395 882044359 970305276 185283912 201035849 844652541 882508127 669162554 936784560 338992610 649874675 986808059 988365716 658327329 729707297 958915374 971283197 168212915 169317673 177842054 528793464 244251995 320428412 303094574 648317648 487098559 672192897 586579217 708762956 256924605 371647706 553279611 683125382 999011200 999286747 280610856 359319149 327526594 436798832 113274442 176272762 283836457 916604218 916499842 930260048 978547949 986493700 764837280 858154743 689724959 749541466 399292468 762459315 99483060 715419242 687073265 828062396 231045784 767958072 828445013 992124034 895954488 903589420 906246413 930635403 147892299 807702770 78691928 527565386 862526156 989288804 503181702 841999765 170405339 669970654 144892811 770371534 797055387 966208675 245273520 518887980 709808049 927052417 211010889 243278944 555386239 595589922 215191362 247416082 490767781 939448232 913812119 951914730 134644017 332561151 170547523 558075077 541398536 831202352 829905466 874660520 49076349 677943940 450431338 589973473 936915133 937256967 272703183 499044678 23006357 184737082 900229583 945641493 430123360 906410391 490621557 615516019 26138696 245117663 479589194 804602558 697468806 766471919 781254914 985260277 811012348 866213499 118920011 546319901 78950072 455436701 337879151 957018322 709560334 837311227 132441092 680662997 912831957 920553046 276339905 705098193 290144128 594431287 908546466 970633823 156117476 909319975 227649746 606966481 30133546 655829343 76764336 792111053 901196481 930113482 963148696 973790336 271311765 322640078 718369413 895872954 291167275 988944370 285852650 835914502 191445395 956763384 63393919 446578009 53751945 58527888 624231016 783685305 493259706 899827822 143506864 365704074 505240935 790125733 635861585 842325307 288908701 895368450 219224380 723809412 845337889 963798458 98483387 904984253 909689097 982941510 71066836 540405585 647983778 869653343 859633274 900882534 178987337 690668958 63425310 631046252 354109255 665334861 263237732 647573438 193340849 807875946 694837189 985546090 962184676 988706163 670389403 973131606 240527631 730363152 985381829 997229692 105796084 287954033 738514729 968312497 826883880 927784433 672209628 829127598 671376053 807436618 284252126 959044289 828947299 965937393 985106609 996554853 224006605 582081116 605709870 888276073 303837285 970808292 8323571 264449139 138280553 719891659 2457085 490652307 452329039 649814028 209002474 219479263 212178023 573340427 345533319 552543373 571924382 863852321 546374740 562676401 722745394 725730772 587513857 718874227 77632097 946479248 977525619 998423293 533012364 960002498 445758148 662984253 127731393 461549232 518546569 796378578 894911622 988466237 924868998 997798886 569739206 912875699 485900526 936227458 506636730 754043932 531359937 713849199 726640374 738362783 317837834 832537241 129988398 836824060 22152887 250184325 79841303 504413138 913364612 951910434 86333933 103096850 227935302 711601400 266698131 502863019 678664834 922257160 877025361 995494750 858713695 967637820 925698343 948918769 761546117 957934849 7912585 268994888 531986732 634401205 371245657 972685419 568109522 864163677 554566027 704645097 103578954 614850497 536551432 678487470 502140270 583637663 787504746 811455830 699251237 803330404 804532303 933061141 353057630 902538900 239191853 482071547 51493476 705523489 36285023 675132612 689957069 776337493 882255357 910324413 188414304 294020561 520918737 765670132 224588001 496721978 874483191 903548331 7201217 510827569 169550360 912583350 940501470 955167539 876498750 986695718 793385692 997347317 574457772 637728351 829668474 904136660 71168975 141585182 364244325 572201605 419612523 786812654 730695221 813296638 300985805 343904820 431683962 848885914 18526602 361643401 45976201 638232185 124580220 195439947 841908000 943639316 305585932 809212744 989680298 992841827 805281429 854072976 135947995 865279439 116126955 573676060 787673620 978763330 144973281 787788020 498078819 838887695 746154550 787149449 397913487 595644098 335650183 389320168 463044415 464944252 984302430 984619308 106016519 772720678 327314153 576921491 624004343 970298355 4247498 269755576 196312491 216941205 269903622 716356816 268082674 759638209 900091775 930040608 610303942 676644717 290817973 319100647 194861616 322852629 43305857 359542280 909753811 955646822 157661330 839818951 411614349 596296174 49512811 460139763 492065264 713858532 620799951 667991129 100645572 143752987 186569230 393882065 246876248 422789657 760411649 945902654 244172605 494161432 759272786 823379678 812132837 986367865 348173573 605912838 78887259 756296462 549702625 822325056 811787770 951737151 621703611 846846631 480781570 512939692 483022208 506795978 45327149 450008885 279741269 872686142 197712700 354215578 805002967 870686948 83568658 569503637 9395259 197112418 464419593 915823163 532066051 975992314 95093526 347462052 316545725 970579036 156352492 448521231 752139893 794436798 811122242 925128066 649311884 978055751 515232755 944710110 616673999 966580930 35814493 348966723 897823391 974195820 527210312 842303358 525983525 851119702 918675421 969440887 578982460 985445709 520129873 525703421 517879908 832561221 895108747 913027641 675282666 924919718 432117177 515360636 120260233 790723933 516298165 787273566 903282127 935180585 818523420 897630917 828253364 850489036 714493590 776021810 231038624 523908214 197346243 976265084 969273657 979064287 813005111 838508580 424121407 934743720 960485712 988834918 429160366 482800553 111299815 256451344 367495236 702413684 765592077 859211766 726007053 954175182 92354396 757504234 285904967 722734296 855157382 870329435 795813239 855876057 572490381 929955602 713904007 753175019 279623981 780900117 496089020 519428716 785763956 977877603 641969515 929231132 241459647 481627929 497426020 991496329 598375745 683460447 758848467 891013803 301212576 626594202 714360584 950984404 855098151 977111310 127432192 311539052 758220323 839377710 473980751 832692447 797147300 896877101 270961116 505035068 776837424 858167685 756400618 893824786 848167956 850874175 131843085 870159191 673806344 871551768 204890006 294604039 711513358 860399902 176563131 919272570 300560972 520838032 696245766 946777509 920891589 955849182 534333075 578971059 60487919 836487990 202798425 631566239 543522749 581269556 229367896 529675155 156154126 215584514 76702185 546924442 657354006 682601939 375971920 440502850 625104856 948808622 655240810 823336529 752911172 852359206 883299784 971036257 894575397 995458014 351844797 829430129 536053254 925468349 757899763 982879769 22180868 433063537 341157108 591770933 46198032 529025109 883815015 950659485 826953452 886798418 299060859 900293802 943429617 943652599 310918762 321927754 168398397 567364798 857418080 884686971 690416988 921496206 453527976 954495336 744609673 941304478 449707698 609509535 159944417 941686848 88750533 349106991 907094135 964769766 543583106 741523206 688909103 708467382 68475169 980366882 70267108 476097880 453028528 872307986 609060644 785514953 444282183 657050536 259435241 280173275 684691092 841080979 713491332 960576545 933079221 939404798 894505344 962484448 216329972 237316957 504347755 993057966 370032459 635685827 81668954 492224372 360601102 605157084 893125731 907171523 655452634 737301805 396835434 524633503 418055984 555325069 841593860 886282942 546602438 977471692 77894997 442216982 812448159 973014891 196764391 842543287 670306089 981769520 87548979 412111431 545143977 610198321 166447871 679012767 267979383 435087746 223368853 997149485 133852968 364970189 653136282 954780496 598872603 801014964 169675636 996990049 734684007 857787759 289554008 531553085 482225264 796348322 304118209 773428215 513107745 631921297 23105108 757679501 628261943 919942869 179635219 729186266 287584646 685188541 549561123 849934285 956317785 990151908 189711078 294388973 44806747 938429574 770582329 781588476 682036605 922618844 175141393 779596292 850145765 881766644 789399473 794553687 22913142 389383462 707231737 767957350 415335634 439221982 929775531 955838753 35382981 92081727 861872677 910950132 267558062 393376009 222694712 824570720 385618960 420674857 664555957 711245406 467998597 470164743 355907015 891323553 190931868 760688277 295257747 569131434 537177076 669852922 297159245 704032636 332306699 595313348 545049515 775893715 263710102 670323332 393482924 638601090 280842228 762109776 801872859 945756544 451033441 482475945 979570592 993256801 515303796 642665459 616814356 768106422 474781825 559275016 146584013 436882223 466568601 872800540 742189978 977569244 858536414 913443752 401334344 806658097 426755081 731925077 801021407 864770991 961482155 992540691 403861103 668347257 742609197 743173971 148119877 951381250 281893275 353763735 302606345 937423726 204299972 855083207 657921221 736857608 449971911 968331494 51360946 136727146 471289392 851857787 566521902 652118995 721872902 844747495 275389422 827552608 383033921 782832197 809529381 884222377 476814380 980559456 110913187 329455331 700057080 964336945 807337851 833868200 662313786 738566332 480465141 889097678 363751816 840770143 329191328 491420902 853480604 853664707 620700872 784926366 256643170 974729959 88422530 740325754 766456218 966633233 472404331 896324971 774601846 864773285 868109074 963916665 255745640 532883373 455224965 556709694 123938964 748829726 617669935 714273658 897013491 988169048 695520010 702702356 985359918 996854028 205286890 207342954 457574897 759907832 468032825 633751532 759614197 997444909 51213323 448289237 370838859 945492868 507791320 581464564 817833234 919386067 610831583 937269738 402008953 933057030 270130419 405070865 583791522 843767322 403489884 759268514 162880737 262324521 867029047 982496005 345504400 363613775 662860070 923853971 566033678 799414373 930330479 932334902 150733159 280991049 279071753 448140094 343259826 407776145 923682494 972157134 645458289 754685454 40524245 719587397 877649994 944282328 717573936 837808536 593270574 690143447 256681283 953087869 277071071 860449446 242850071 681190956 931835028 939837161 968632866 982942848 678973120 986306710 872417608 907512908 236876142 715874332 844792330 932937100 64459964 332115291 945696459 973213754 174783574 704789274 628551616 910882769 603714993 898435076 786162187 894871587 23981512 931792456 704170542 728388947 625828164 823774778 301514229 555319022 497002957 896172438 248367527 313722098 124853418 167844033 279075705 619240857 69292629 829962806 976656661 984824360 657069273 835064693 18251614 340146476 771133939 959561291 766705419 911059166 502207644 639963496 983486183 989257723 792282123 895796716 669612982 892396946 705323904 983679287 228304456 828236052 754501247 945359381 128287104 776521199 27922386 595133979 83240052 913825168 258256632 315905244 716364478 854687724 725875846 838288182 326242350 667458133 253027491 276744945 620981707 801048386 475170179 641615212 106457873 603622504 811870416 889699536 552048579 805975175 6773847 528572856 526986379 976655469 335066813 809554995 669619970 696667432 261769588 534874676 628312369 811994907 725433313 736063347 269300402 502484756 674798739 996716491 384984008 849673129 374619366 417935865 493879422 888629396 781936209 963330836 427602888 456561050 834294097 990120622 285312898 934192079 54524190 670841600 577792275 725040842 525363832 998883021 419178076 822653912 620478457 852247295 290991868 291052197 473903334 522915753 761729100 917341746 77402032 478237796 71361151 538168743 305661717 912319883 575824133 833170251 355656673 534028253 744552818 921848177 565510090 946053450 646868056 713614918 91959228 920707037 589917686 908369215 858378129 906631720 208300480 807965314 620270161 955506561 280851526 501959208 909317487 958960875 659736012 683857611 348523714 879722222 712581633 978368844 518191699 567936378 960715636 997912605 919984049 949807681 687662249 996785185 717397817 983974500 648996076 830889933 348537317 842592952 562509682 655080107 346156937 786501821 939369652 994128338 516323418 815814086 3443208 878342519 980442492 987145786 911582198 968883146 935357688 971661194 270208643 412775642 257535679 641566619 454198818 980149695 853279150 936956128 72753676 694849010 570871254 700974745 146514931 665196318 613708591 872702687 724671748 855246332 217485609 915950325 613428617 823486668 151447722 884576337 337296920 501710292 261131652 348460218 211401626 829933633 74536639 149609397 161455644 605471977 594004569 728484585 877047672 893059506 805875926 823006166 233092336 982930647 636306984 761798116 110222320 656277524 365135962 850308220 446822239 631092121 854137652 924555762 472846722 489524949 428031949 699954670 295894100 846963723 609353461 782657944 1555885 968823013 897843608 992979566 431187289 535792174 487909150 741851715 237678911 339110674 858319162 927042458 297031409 557748640 396016483 435645578 834030906 965033455 237213058 797550209 161991216 450288653 914639663 978941967 517147625 695469499 766670725 960645550 55448374 685219407 712299397 713163383 372180318 542327848 54639011 305861425 896263875 929197901 667173604 961018951 38694089 592429419 979552331 989996449 173833669 415702326 168816238 777922405 747910032 848959515 302535460 344865823 992733998 993603077 398401061 502988561 509715989 650234512 876633839 903805272 651829366 843341084 420305946 819556684 482518277 891986332 317361767 411048296 572305825 916928398 755367262 836480960 40082937 358659710 331175804 857427847 197712626 423385092 886026624 923458503 880798938 951973866 526547965 830338885 272469695 620806235 794516095 845952863 722236215 976031126 875574574 999161296 107574743 606040233 759638127 808304667 706059483 712989848 582940470 690106103 253004344 850500134 879962330 987531980 274057446 449018927 314492897 782552365 29236851 434604530 318018581 459001063 79711260 467664934 723373022 751883200 585840115 728844812 719498811 946775380 441196314 540113290 857063207 876282275 696661699 986462022 530304294 937086775 959407379 990983883 296941597 372509947 98154029 137786201 991428440 993907464 577059053 654440003 124380143 848438789 275708522 366116668 265405769 836514068 784407128 896467117 776499145 923687656 703809312 727787854 35651989 539164272 206702076 367938749 690616041 976587747 270421716 312359560 237200819 643458703 818413563 873196229 357267240 575206854 35378068 481972563 74621127 861987315 931242308 954490067 785202693 991092572 715530346 811369909 214856448 896434564 859171646 969135914 299804062 340392878 681353626 867370210 815849460 879144616 955319838 997705529 384828594 557962139 169978493 970089485 755578308 866109395 258032369 264570108 884176071 996214117 421984869 772673781 810753755 887117771 990374743 998779376 231809347 762480698 759457753 919531247 915860084 948960679 94067279 991498225 704201895 839859454 205759916 498922697 128871295 301984037 143650554 456646784 236987344 483140087 242322851 602042372 539148962 679751612 861103395 974878425 726024841 755766353 292430195 494613616 309756203 493943593 899028465 993870021 810826647 853835982 680751445 850290681 788199500 935753065 517930363 947695495 723486783 877554728 14344769 948165914 577173704 577565223 853168365 996919855 218995906 729667719 300319757 686267083 550943202 729289376 602543476 878374384 65468869 651891092 304439905 865680883 477280820 798549191 325831377 374539474 685411826 947758441 923540259 932239444 592582749 960337732 850172997 984704185 472586821 827825725 314263412 497184701 139360592 698020433 532103623 940500303 339091958 758394160 655976091 997259706 165499722 357025553 335389089 667667152 748611115 845287577 897075086 974453381 174109653 441324863 100939253 314023144 790265130 843109445 703983575 919831592 243030229 762799526 757265188 788678898 32051991 182740157 572535460 844186186 447945270 600651993 457951148 505982934 692858839 852816783 150363242 374171696 218245881 696397085 656007051 949342715 975240204 986040809 383713562 983541339 160196468 718216117 151585383 386832216 484047151 949486920 968856305 980701083 275410106 518504816 515679689 957674030 280838337 639486478 329300419 535035552 956030291 995681508 904325152 976969792 248598358 506858731 963766021 967111806 897723251 954833336 206750428 362472569 594341813 857769327 896311388 909075664 808306398 992493936 313563001 507697843 913860142 915094979 215286359 353416764 443131179 489373048 485875360 979997875 507404001 711042977 977277838 995550989 90966579 984090163 563808382 609163971 960748016 988133102 642066361 983770512 944137849 995145913 476670051 519045954 20798220 209618558 789186316 938011268 298781640 515357302 930797064 959183210 429166672 828705845 591807807 870752585 977697331 982171077 425876541 662251284 195979521 817929811 14391937 560751326 714654177 927361670 819830798 848826207 678178400 899842952 303658017 447838994 629351015 713122772 947974400 958927078 343405608 556029875 234611373 814080084 273609979 741435904 443080861 659583824 493764823 907763311 535432270 703100007 641919044 917312465 778673531 879335827 812054856 838054484 756227486 765208690 488210790 596602696 835541833 920506244 729114010 822617470 995143401 997474528 36229371 756302519 948636383 955724705 156032816 221731661 974778009 986124579 474389732 568223937 221778958 747809518 338308063 626600584 193880782 840142506 103221283 838590132 845177282 919670811 34083082 704735155 262208445 658739707 464604762 914367512 734931418 870645806 426362638 684567002 300893967 501234316 987717682 996082437 971897021 990399372 473874087 603439160 890016674 995587403 528579259 632762816 483903890 792394029 924596497 933160107 461725432 627811952 560096401 704441499 603723744 644008368 485573663 723634420 648927317 770698236 941998580 967259068 62260528 682621854 241843503 672771167 585554840 853499237 390504771 837423589 672512892 868902653 709002175 979201165 540197028 691386471 224674122 711190161 582482252 791613582 887137207 924996648 346085068 826236484 145681761 789227807 223269393 722396398 665111937 845875509 76896369 141949619 364049656 464923883 13708901 592178954 599160591 898843630 67842997 696564448 594976075 969896224 750010943 915501856 177310653 391247256 493819906 889299829 368782670 462518524 931880409 968088063 263104013 290385111 105278610 651968432 937684578 953172676 597040032 662829920 787232633 882664115 397861778 743990894 516926864 857865174 400281868 914857668 925402527 973239511 538452376 669571542 9800628 661042595 780769150 865942998 697233334 877402802 773593176 908733774 347632820 828963173 236379838 837767762 664088569 799609867 718889107 748443372 449841988 701494314 763970868 983073031 167155672 391375768 544133738 859539753 203461155 580940621 20907614 936496069 943008027 983858292 446510400 809194235 173718829 572129368 945456600 998064731 668214067 868834946 909940957 936790091 296338277 580400061 218188443 532323882 984858243 997212560 600666388 601866483 771028452 978398647 409603290 954168271 753627095 855951263 571104468 594017910 115536724 775202492 708407918 905403151 807695989 927138927 220932518 480041946 418795376 484365209 566909396 652650181 57832639 209706241 856670242 859838408 765853535 967061009 771361582 990809136 712722143 978833596 189893940 450578179 690429594 755172066 347367900 532112390 872517660 982538200 343104577 915170907 282684924 684926041 525104759 690500795 360419960 908580574 511452263 549246728 139154712 681594784 242177936 403075669 407809564 574465016 445934718 476868514 104795651 642544075 189704190 953090285 422566565 427403611 101715634 156174742 674638440 989913026 697242252 835432598 259374384 780026174 459447331 833378544 973377628 987003844 961826559 964607697 270269664 747928953 972390380 974240962 931940401 981931910 335579019 432756913 907732606 943053621 197085363 622027357 114012272 344824762 848477725 978565534 15453438 907433040 277350539 650880842 667148512 694404334 46214520 81173503 226027921 780518785 589651557 935372513 70392886 385018029 449047462 514416940 195627823 641887777 182164059 560201244 887297918 925055183 495081421 603940649 403913599 789411484 80622064 120174463 706314551 947908237 536049242 780025080 121287586 136560343 168012331 540416927 522885691 668378857 743734147 809597400 235918344 610391401 455491526 565878527 779366267 984836759 511620501 627248897 795878009 804676432 147530321 773428036 95215938 795094163 880195239 925957170 837475249 845565158 965458376 984576625 71956108 335848753 92685464 542105237 956271762 985313502 770335899 963418061 83294242 452910373 879930487 881097927 444636240 884147738 65370152 556986841 421104732 992198069 50116448 989742503 39664952 294783010 783906249 805808944 210867166 288566821 119571332 825002407 199573393 860612972 34777527 566047985 426206383 661225899 657288555 691718156 884257607 963688544 995549838 996687009 943541834 976697646 613969861 972380697 100216098 991053931 61847879 313203752 974788502 990481035 456845223 863528563 663380986 677584888 623765295 984724087 317502588 482931113 411431181 779123815 520911038 821078888 416544960 829839519 296186513 584199370 366472234 860756692 85008631 819844212 271062075 612876879 651605140 813056592 350891369 535021187 271140806 903391008 419391248 950304618 221111129 587264159 19154113 549602793 895691846 990731993 923104776 938146292 937643918 959782973 953393618 957650255 929348184 984716287 496725921 989381598 166634839 879853213 82710777 338037968 801692872 944444987 514365171 797039879 912245006 956748572 964106986 972219220 460294541 523551116 838087628 844394620 11569598 839595023 938148447 964952261 110477358 797924757 169054733 379362828 819510571 928049721 513324758 910440426 763232193 987675755 432584426 649017006 119210109 938486724 528477976 598520648 755242651 777505515 689412655 745968173 709780480 998306557 139876710 641925405 579197290 625409720 841240399 865474800 577546405 773138425 686112130 902713457 22774761 965692350 381143914 740011514 221759503 705352965 224469334 801045383 563353231 732005571 432572328 893043677 898071055 995919001 749384831 998076407 505370386 760179975 429369769 622084690 844835001 908884990 534868354 767761308 687054686 771587042 116575421 894548212 562316149 696510270 241693222 723624936 909892792 919669336 917435534 956178202 823843714 847898410 378323943 400489023 432115636 492581691 434849666 892273216 357348924 696998137 93262244 139252962 770012258 890706667 60040904 354835528 99691997 655087370 830391521 930237269 462675307 608385562 650718464 819788432 169352969 688336149 641650747 770559604 412468559 526291400 721100061 903099176 451131968 759073958 918768117 927009254 883210492 929486927 842802547 931538090 597136601 715653773 181109024 595177263 885765991 888573732 584231733 961958505 562588482 808674371 204825358 372547066 292751479 814187657 197168947 661795514 559612667 571715864 413999634 812107190 991834195 997549659 106860665 582570389 475530075 981921519 267130230 366889134 177834763 185627624 97568118 917021123 631373766 698406279 531084100 911749383 938720727 986344168 41015638 304051864 319813941 325871995 154466359 648367316 761426104 884388546 11068505 851890478 502745771 674119552 390534157 396397382 299631632 723997399 656401928 978878940 63179477 993797508 961649416 996980147 552259024 641435899 334956903 774342650 493328340 817670203 734685218 973983647 830758097 993170998 4715309 312696929 52050266 465254306 996577861 999000662 254830827 943524503 243412583 790902495 196886020 874620441 562072463 623241252 867342222 967476062 553003196 989093652 216561799 429755156 412703825 766365035 849159474 971272066 117146707 886602525 517926725 671310577 344359632 620129821 584900652 924946211 720094260 904146974 424202202 497555252 493447393 570340688 266987312 630067912 843041681 996899908 735060150 851257978 71626213 718188195 846133216 882604500 332481293 660112041 493624301 567526402 112677188 486780350 370158260 523872751 197784542 538142824 968199412 982324552 219907953 264028383 398286539 674814781 542423465 711326290 42700999 204710801 683129732 983472335 423179270 889673461 32740644 195627888 385050629 513041397 683742422 771195373 261810236 367434382 962619163 965649175 667149661 888965757 364094221 524080943 664266695 902972948 408212501 541142103 987964728 998808217 231251719 234998479 86534018 117571090 522143245 911816878 785722437 892838510 134445645 324355237 166383416 701900677 583537778 628826443 514165438 983584420 385770128 997253045 951212807 984305915 812797712 986772537 968332253 997083169 465198434 766611051 430448507 846166339 349662372 710835940 349619461 874103705 89269002 858548106 253827122 657549668 353271689 520202945 184851786 509115319 955705408 987821155 411324558 622494879 784504440 922420488 906766725 907669615 355193090 470239438 230256497 917998998 196876429 940497030 988878639 998521692 396870393 903263845 460166183 752835164 926339125 931169225 434664358 844265975 576490011 595982156 806758970 818677755 462125 269399405 759744694 970818894 252668245 860330860 596751956 832739510 232503833 426413988 507820041 638675401 766553889 847999198 81770158 505932197 604011712 938387782 568525645 627508336 693556073 972530764 106666089 769200147 979114448 998812572 667023822 731515470 435431816 757091187 552512121 842141567 823874083 972702284 522341115 690839898 705025684 880047467 856390264 975138567 812995026 828373232 625501473 832425181 859834843 998444010 379807083 889213535 493432746 762004232 429720876 603866059 671999265 722423675 729856471 979066137 87397081 146549414 439180543 839550045 96818286 729944832 293519600 394575638 548999489 899037940 404785133 690900055 678232687 814491461 52721605 274110900 111473272 120728252 245947093 318101836 63582390 765501322 117084795 925665385 775134209 841950253 736942254 750556415 12805972 94946302 138663486 695476959 38311916 768413938 20314698 219544571 944068634 971477253 391267940 805610075 496598310 930469921 9676091 370606178 173671966 417672320 449644310 737783892 469152176 527782119 778356239 983786331 332116418 518524553 883295921 988223917 128683723 443530073 272622582 546670554 14884977 597817874 806783428 826923022 556033073 762556009 337032991 785617896 355617373 499059638 281644480 631875693 532442809 719281007 526816269 969368616 161431384 604905516 171832616 495612217 401359500 607860981 823928718 838294543 686712578 995210251 360035984 456628760 583546792 628637472 810976297 938035234 198574620 202911144 826178887 916664752 694612720 842969514 535154613 925845469 723510124 901358474 375530469 561633143 486920554 859084129 386182368 874595372 142431313 778070722 712348066 824642571 261441879 435364821 908887410 945137761 729145190 737891904 513470126 633330422 994088465 998941073 663839212 708717091 974790189 995083112 491454881 984426570 851905221 969004813 120590531 204430924 889698784 967599546 462280902 828443144 537074051 642713622 108650128 682415777 60559464 822540023 740254451 883147720 54173861 873056702 711007929 878632559 77986322 911603803 600376952 752824483 655815770 853353883 891429266 930994475 573925490 696553412 266359691 470760401 185803674 499438842 278028099 758337173 625765469 686135159 773607720 979611901 118703425 920588601 754413947 819121278 455725484 875723582 194662513 797103489 972546042 989231042 404277084 779802497 291925554 762241666 30101786 798759377 548350058 872730492 761626210 873623343 95752567 201770244 130314640 769685675 252203603 371678821 112806948 970173983 120262742 735191032 54298457 160427750 438520507 540608831 624150274 752467952 309317891 413132465 498389597 600556746 465177161 653226692 570921327 718222183 976958704 983100597 137087937 755550791 599150851 847958438 290745269 397819162 523515774 607185483 220597342 711004702 17824333 514073463 122540775 263004311 462528178 937579172 220149572 376819780 730273884 885998778 769794069 826449581 132026645 369525685 930817020 953804650 658408731 664916574 913998786 958284452 467186384 795054724 687921248 954178174 665297534 930129232 352266816 433228179 341118476 511802199 898038657 973009973 131843522 819499060 524701927 953247627 409593643 881404459 816075688 829337896 833284940 945638846 198178002 630820479 777622362 842187127 732855774 837042135 373100630 584457646 436652672 682446465 465011747 656038191 193455895 249627985 459692327 560262441 736678115 960517447 600342499 714081229 137034574 579730949 172748329 727854708 800794855 959476664 834929352 907618194 839630670 929293155 835825285 976756142 638502557 900418177 12301321 307949779 136291522 146096513 975204958 988926892 186533299 616374041 401639386 439206270 598653410 660418972 181189852 945206893 846643200 856779122 488070684 627269697 832213773 965047613 489480455 783287610 820777560 969295525 863524827 996146630 371941615 526699267 681846829 940650175 744791043 917703340 332333968 893110898 121819783 934633478 698719951 813575871 145723495 637785162 232342236 995146129 222404218 994382756 458429187 613745193 77718401 191453560 12238475 251541118 813849508 941867283 267331586 744933414 487624617 656591610 847527197 994842612 627259529 896323976 683516002 876253411 452501459 958232645 880247407 967609896 399887393 512164445 627809733 767454767 752055905 923504519 848274313 861511216 372244739 849294198 650494408 763160132 192571835 854693748 846046978 919991079 472047464 711106372 237880939 603221312 995053814 998642301 656697099 662911887 950043730 955315051 796543660 955065733 475055547 966261204 677420690 931948610 979887737 988707402 53165698 515101639 75987800 391041144 705070978 863374547 561449440 758934052 51474656 363730744 172249081 358835861 379667898 972685124 947489713 980774948 60634947 571781705 670522187 907176919 207099 61259083 299919927 788202818 243301549 646060843 875432745 943429406 958294743 979681079 72338772 237488865 143805434 856904354 209996219 818000431 126297859 614724907 888286287 928546458 390021316 870839817 247846470 419408262 573713370 674515748 470846696 782272933 170227871 423240381 350691332 495390445 197002152 717368947 299681977 485142180 155649679 407786351 232514802 673084455 934285953 980476287 590189939 998632110 469217155 765601066 960515628 962322879 75177059 961570353 580028455 629009651 7823776 105600056 678344203 771127445 10704923 28344669 807487728 910583326 791508542 978833889 807085121 851613728 942553088 962992001 381816820 784829234 666922807 948139313 801179689 853588974 437169087 474139789 859189561 960805587 213530361 516930595 464714955 907466905 832706075 887461116 975974278 984860976 462227001 901908163 211297237 255327930 863794201 943697471 744597290 825121088 20433633 699986826 483916848 693641737 314582572 597839689 108039179 108796164 371297846 936150511 997735010 999114476 421822459 681891986 966830317 982597789 325809215 861015952 663395594 788639604 914326065 951438431 296988103 759136442 683092907 971986895 896730957 904729548 50919136 410446441 694684839 751409283 694973080 888511898 539187007 720610966 209664421 747197622 141927480 246924998 65365812 179686463 382698043 398880365 834596579 966879148 173000563 419814227 846350234 966354221 785348505 870219582 608870140 785398237 776462367 983413758 363072869 719819270 399773030 686030471 816318849 992377866 941341202 962419913 455122890 719018792 85255430 625738811 331900401 934914844 381329949 946126905 904168246 983919123 178641175 438665156 564811724 960506106 978725361 979250421 803061945 835107936 431315656 658532157 507557717 637132032 67418980 720216828 223199546 547895556 934988035 974697088 718831794 978571226 993142176 996074668 753889567 931139481 455945266 769156420 977226220 995362939 941162845 964863782 870359843 963176365 978824084 992669890 311685996 909269933 174748208 492462610 520021699 564231447 218473024 584860059 35662615 981130341 663978123 780343262 239163936 665096345 556750941 631478805 631076031 989001100 255959510 331011780 942664827 984095673 510568378 766938318 622295957 647565016 419295184 440846817 94475785 112732013 840995196 957905633 816835048 940049036 80161026 316092606 805478382 886215698 957320477 977201576 746706552 766992306 121264163 811910291 603032616 787346736 610201051 669528485 283315438 672360984 775226333 968857108 337355525 444352854 685669410 888936583 643057096 753117209 943552697 992047331 307812250 556048244 923821932 993512895 114586589 874925265 153308835 633871697 591639362 807856560 624404054 926045371 507124755 826782405 574503138 948710045 482992065 509859800 7647337 795148906 573941221 576769559 24695762 353474294 713717114 816197472 902886018 998581953 902300611 979621965 712358146 842437286 178019772 774845371 799633612 801680910 695861419 861148272 436623445 511192577 226314875 633115141 734538996 754254153 810971111 814061176 730082487 810184157 496123924 498691648 872834511 959852899 239009789 376461582 978567768 996616358 380320652 851116314 433935729 439948901 856307049 978178243 447455668 922322093 124598303 989372712 547854313 612728962 474778726 683935850 695688447 738865758 307952218 426117138 395492492 833875259 941335396 963687384 391641161 812707977 463668201 901007041 840889798 967149877 217969858 848087090 589461377 809312500 482205677 985640077 173054034 767089586 335506 210193909 602161420 869030570 522849989 560225583 372688090 911732961 584414776 588896409 761626381 857309216 408271939 944634427 459142065 500118587 962197311 974694019 606219023 643044023 144862772 723708993 114587015 663896447 774965248 798579416 283738128 746213856 561169232 618678791 305950500 440250904 882066133 989708493 378675463 488203949 83171485 730436842 992055961 998550998 942955756 953260109 436471451 658177365 322330539 619067628 182541968 217515894 404795351 580825371 681038467 928093315 566037254 729163317 56058645 414427385 796505543 820184119 114676752 616883758 267512064 281729968 266476570 845395925 905119391 930612894 992593971 995873728 697507699 910625538 911116621 985281554 770111336 943206698 342000421 968458411 402740159 827807257 829095018 953819763 780087114 991706313 725204460 978770298 177378413 193774887 748659679 917603731 605435503 677482895 109150570 519639284 211811522 650699969 469346593 726507675 334069774 645073002 99419912 820783030 515896093 809914866 710842892 951993253 154247046 650110544 597084441 996121228 382059310 871254959 772646639 923750655 197205689 435359501 266570877 934291719 617336680 804810717 121401257 290638453 436607618 595029467 127690239 304097445 919533564 976642022 478181657 489263033 799804881 938829959 712886888 834297531 645772565 778225349 275503035 977081205 133374756 678771191 241734224 729755418 352988559 676788280 469475279 703757778 624269847 796596782 843772949 862954057 994377210 996388295 103958571 325894751 198334663 446408154 724730984 866808459 660806530 787241590 168946053 381692902 821491547 834774081 202078464 771051763 834625520 900263809 210277936 694722094 349460766 573355240 818645538 822265683 356326431 748807838 769371477 925653449 201469667 807858686 306718373 797515009 568280380 913093645 514332747 573356321 545545758 957326257 305786574 494593330 595501318 776142303 646169510 750252348 998061979 999148400 522023478 830663013 972978292 994121396 795778890 886780560 60595434 400229633 871611861 890446259 195787883 384845219 144017776 550966374 413498587 732696639 816288257 981956553 11227958 372420119 671912912 776817088 986269959 987899497 466254818 969709530 494135903 867571868 496392305 805069923 557744745 806717717 148514534 559289326 114616040 741530285 422014928 784333394 428661674 737148201 691285626 898103424 423431533 635541493 652682413 850111678 37449212 528788716 525674265 540173372 210077674 608477075 352868628 849585170 370634984 590018195 164688906 369667407 161156046 276934023 809409826 817284710 852787801 922956890 310427768 880766287 27154570 568135200 869269160 917427908 289850144 415155585 356554667 689467843 735771099 853416218 699291882 850367472 250831040 619115478 393329781 426108235 535042300 628770720 383859286 864358238 400380496 579692648 706589401 921178945 112840891 926898375 457114124 864091847 574701933 790637959 460343152 578572341 486043131 570850187 833843018 912460790 194058427 785973199 219966156 570902207 6146297 983465374 806055596 811583052 721394974 945948935 294453767 324579600 957597568 963331366 568815260 652916613 553648434 583658134 136871505 440313951 446292789 598220663 623753463 865471676 162464297 326191212 840689305 944382133 95946893 774233055 770668098 987218851 925574572 981064794 441792054 917768442 385463943 595182675 509959374 863183019 937446007 987556769 554561974 672793030 528009133 717201443 705996403 798580276 335830503 729441682 171954395 915594336 752000800 993883471 891467341 921033399 207817658 328740767 687727740 961400870 87801225 593020319 209845793 967267244 476165013 751560509 588094256 864686094 293998755 894511488 203860110 347730289 157792871 367426823 3967542 789295391 487156045 737760245 374361527 759947974 384317193 621296137 645773694 807745120 805265496 978022540 421556081 581160166 474033218 975429173 159607486 279099091 777176932 803768917 460435322 755748392 823422450 950484843 258840821 535413195 429139964 723995761 302270212 354772924 548133904 781007543 907391443 955145960 431787983 837225385 321027587 388651588 182935048 511672296 893371368 989602415 346684675 361885183 845113476 878164256 863910143 995549220 516946570 588420794 138862294 597514352 56988886 550688380 980031000 984411079 324236750 468002816 191833412 678416423 759519796 860646371 821065824 919633230 566030701 635338640 528670004 930712819 795906031 838389603 995732151 998968142 85877196 547566788 58642416 597200323 362883568 455807768 688892236 709876880 565355443 968810462 519325225 907806685 146593541 816509359 143552504 347047040 83675330 919571085 247052016 474036479 168385352 535808605 434771124 481426312 110354644 904164585 230791455 711228264 248337283 319173963 630559838 971457779 15393511 189392781 148253422 839875694 672717634 842147979 473538683 526699232 822958542 915361581 775381105 956603244 417987703 768982217 468303386 953215429 371752715 916139029 646463718 687449263 602970958 775762045 876278847 958972653 738937564 900077927 66563077 575739896 364177284 405312600 655277015 665331741 543216115 926048865 911372334 966468095 436608725 711376815 876481797 914697342 187777148 555520518 121445241 442766752 935440238 985474095 601033751 635930374 157823020 438363387 948553711 962488151 505241335 929565640 901325040 940258594 407707183 788902221 753677525 909013608 959207375 990036248 324449456 530019220 757707030 916013436 923320296 974075915 901438714 961630020 829110071 947395413 11919731 764228467 558737071 642632393 210486894 325421975 205240591 797878057 85366072 490044987 881616766 952818422 653734839 897826623 711214671 869610271 577073297 883664364 930060661 940233830 757146195 764232098 755133189 841857443 819489890 890088155 36078971 630658978 773817241 998512151 939033939 975990508 69508704 797676704 299816646 304855273 331222247 513416793 627786340 770328278 845015425 975564655 316424262 396573865 385800761 566568600 117134087 130344918 703264146 970367988 783009305 904899623 483467460 747941461 558646430 686470865 825883987 958052609 892031902 916754866 125844557 628070740 676671845 921631784 708857176 754283604 42625843 501828468 306763371 461787284 49840025 381248159 588144981 759049934 312368727 614801904 295286515 723329724 234879509 807661800 950680211 992398513 516488708 523996524 268219600 634593210 730403705 755407227 149498784 718376171 986219664 997533697 419696128 899824053 874700800 998321438 233402608 709067043 403615365 452698127 352317012 947192814 204037602 938531635 66778583 851302402 467872245 694239912 343538784 852017393 180221171 939043151 761343746 792802783 16626566 122952687 640108909 918004760 120012226 140196236 610246713 964656941 437350405 529386108 876815729 887238752 644751206 894719595 72116420 488152133 49840415 765302458 123300151 736352441 105046088 919176500 849329710 875033178 595249110 734517932 824312926 887743383 854393743 940458173 211815751 970751430 654774128 860933953 560150205 930722502 912614510 935624677 773254654 879733848 739905543 922446542 964123924 996954557 386203571 490532936 564716787 633523142 238009434 847768042 372414294 887302835 742674106 786866789 426488226 766872726 359422348 554090244 361709883 897328445 613964752 878260718 610184734 852378832 422580666 512173583 996907269 998649172 943189563 949706458 898425094 928975658 40622559 130872364 951034644 992073522 833398617 891254665 727635935 814809433 145909292 554266966 221788841 877186068 270211549 594735623 95350217 274803316 749746861 774263120 926131401 994497647 529826887 995439646 244270524 840769505 887050627 974029357 343507322 396341783 543549865 861846249 928734808 963988177 221234261 773819923 590646953 626463704 398765542 755218967 268685011 792711319 889153728 892009524 373289309 517655610 282437663 540298733 725847959 918404214 856046267 963018655 239292941 865610640 456444813 807207817 630634244 729209376 76220839 86998697 756810772 866302221 153592855 273804054 264831221 674250399 184197590 826546657 798159460 957092586 971267476 983139676 991317193 995879334 227698256 812831102 148646204 987490138 521328231 629965485 221803059 862776697 286578576 966641916 719001136 735365473 50474042 399662441 691549485 727071546 658514889 941919952 538943069 892888031 539607106 693316807 722912074 768156319 1480711 253306052 192646174 733246255 871645984 975387637 750562248 986842122 346110178 694683727 184341945 335393919 684439298 829396392 958497886 977966400 474436476 636837618 205561933 835761373 949653255 969087077 464311282 660648889 384708266 828285604 591716235 639808577 426283358 520953020 512202929 526525638 469874472 766967692 760648595 812004112 469351081 818975896 527478614 790866647 101026435 112602169 582754021 851168458 595349631 764863956 273584190 287737080 598247654 969257708 608382415 680224995 314909038 909265740 365816101 601533978 623868357 977788309 281546641 783570161 400685447 506615878 459202483 828534583 715601649 761129825 722862965 903267736 759549432 853903549 86460494 243655384 406651120 725375960 515393652 568772059 292938370 692568183 189789733 893993515 99615325 262462180 112393692 378633101 103998483 816344208 634988633 652582191 69841853 925207895 699030252 732621985 129027657 277794702 441479815 680867140 617627386 886858336 106955039 976364282 367178885 947273826 441323134 564647520 736965565 913531227 359092189 796976051 854933175 957374918 668898241 809766576 672018700 691850558 652407406 771152585 827312281 986660776 106522037 120657015 24705423 766811167 412084000 592904398 350380023 533067799 152469761 450415961 277959492 313164798 625145352 666297887 652983210 687081326 254611704 851121497 9019397 458438210 860442379 932704638 543132193 922861153 355836246 992508118 373349652 666896489 355584244 625932777 569096694 737036537 151952140 830012280 141420724 782324187 156572464 913022185 817460434 824911664 752052060 959105245 961926019 978010441 259045415 346939487 423286290 602652881 723917605 859607121 181202179 909029516 830962956 851240714 975549571 978091911 197250047 815548119 895385019 916823468 423467351 468553879 895236429 917011293 887204016 936474821 113008843 879056500 520381177 551680076 307316390 475267330 405310281 412040805 394717464 437335973 534074277 697358022 319497797 590974566 424308713 497033789 465768775 842416677 419504656 680404979 325952944 733913195 577569907 874561152 201447773 304904997 772479973 989469137 271353114 904498500 756068701 926506594 208955526 214788702 718538229 865595250 335032221 959938867 900171088 909896991 597054232 968837094 550222462 588558728 591423271 807932038 882483400 995299278 627602818 653238785 1694026 326800745 45191951 746454609 935654503 975579232 385480538 683055107 936527221 972691471 628106205 950425883 452813143 656434136 351646840 570125628 793747264 979438030 598973791 856620919 154815639 520860472 676642412 692235472 236766465 276930528 195013771 314365189 793589152 992033751 954514821 976214049 132778011 155588016 29989768 422247715 380781842 679257952 731580102 833172152 64060237 639011562 94076677 234892466 439842819 831333722 447742539 582909136 128552472 362444982 782541848 958239243 337617683 524712524 552442060 906859871 984027400 991564223 479408793 687057063 835966197 938337413 567413750 908495621 231626261 895376322 260506069 399987058 585373632 770300202 920524270 996619588 927093592 969547543 773270812 900414591 598543248 937794622 542940869 909593345 485853738 510696195 723510707 827587014 356822935 820772957 298789629 745011430 317784793 460619687 484819981 641892180 495541407 580984501 378776445 792875218 503744455 516224072 696267884 877455748 748881180 761252784 570745280 986635739 395295779 418976019 80543961 437162726 297221689 442037109 464816619 550565834 459581011 644004558 216938812 538648342 995690968 998186679 251788112 308611440 391456832 774009952 92172548 744256905 400829148 458833868 132605969 472403896 147449317 577297407 237128101 890235732 87717972 802586238 278878109 672799547 537025503 615947196 990596016 994243195 415363152 481642191 719624526 846967162 763426702 938027421 74535369 127308723 786065656 968776753 654450314 902603533 341156345 991348318 458761444 756210582 257952491 980999505 235950185 814078743 590934324 788205696 874667296 988156669 985693486 993018047 882112947 914315865 267380773 538068314 63108311 461550251 190047318 679760571 317171188 673883496 826153348 847981289 420055600 693553132 900271815 926804225 606971795 834704598 765893519 857305252 244196183 702768354 227518211 369213002 585722705 706022947 188137256 598667601 445439344 819787914 43973906 824958524 269119419 675431408 349088785 369313984 760345880 850381369 122430067 434555091 934698441 936965462 607687945 857162965 367250903 708480421 88181355 263130483 820086414 986443194 391761554 960137441 140209023 681521397 19595800 580302824 307229014 707831517 682983313 788857414 158674140 246870241 260884218 861517383 685642863 940338125 656936074 875424539 168031330 682582229 280911547 500935135 650652460 895502987 999345647 999383817 565652629 837749947 382759536 917132440 596009911 641032690 321049962 447938914 95637608 196467775 828909695 922217725 391508666 691663098 760822251 917609684 541384215 813161791 290192902 425085024 769223338 869391952 914696301 951927820 419140108 931800696 107482613 334331591 757609262 788541575 121265922 561821134 608949949 986349638 475727382 623688475 378085262 803533047 198150452 263264499 602047476 646099237 18136498 513557877 823405737 903947932 2966582 431750188 295016885 641848749 837940614 899399765 771213861 843729559 989617142 999089101 505987313 805813462 190109749 407345416 225488982 243227019 164834093 666911554 939639874 999081400 950431409 956245473 808765079 992489238 899433953 931713687 389548712 678140633 534433434 958943857 320589106 645366609 825767802 848010874 103479572 865707749 875222988 969927577 369581345 960919083 169217508 925801863 445606253 866417330 672323093 885757073 585961875 869348684 969214692 987358800 271444203 820990350 152494935 937686117 992384739 993527225 472900055 685449308 103479891 486134560 991227083 996099371 387289248 860022479 278296822 844041339 718197330 971214239 556230609 934664437 66804371 111929648 303385870 728848541 536420385 742022352 172924109 503289744 125938424 861335396 457950030 562556428 167751607 328588893 990261086 995399855 62028813 678805285 751417685 968269490 59455158 868798617 716325640 894559252 344706733 698158795 718249712 822429935 344226392 369628096 277199965 724248089 464285825 702222934 886333673 888091899 847405517 873649731 209657718 707891713 313144221 644531428 206130477 263114082 226963428 901339767 355968278 431178775 726234276 975678330 976359958 987909686 183400460 871329446 190195580 268073035 791951708 926754468 439821135 486408557 76976007 956236923 842527645 879461588 25811031 48307759 99179873 727884772 309067472 512371196 186742405 194196491 437449101 968119261 741187372 861817089 586481354 597240230 664687472 828653117 557031122 937567022 569835500 586272086 478291799 880634191 237980678 947023757 751173916 946970230 571186399 876120038 459764686 794396690 222183065 438376841 80371210 496436582 331572670 685511857 613787926 858514316 604338243 918191600 238132879 326466053 207384219 433433753 844113157 935753180 744162793 889609076 26190199 687557396 391148871 858614394 562468600 632268830 372860856 426318816 600461244 819234501 823816465 993761693 668506452 980192729 8923312 746884674 495730964 736030719 541874650 887854562 674664540 983488280 142108104 740058335 828159618 841859682 970489654 989971732 203883796 447822662 890117263 979927005 495260809 990817194 967115617 985797966 180225747 392269035 810076929 861595730 457917070 860632186 492813186 774671063 966093047 997024841 685546614 759591841 852789876 986014389 423445235 485913097 634234407 789559132 930142416 941941112 303546244 778553527 388771187 885310290 926685146 952128427 274479145 685453935 974510048 985202755 823990795 874142094 713991330 909247608 891040399 942073873 383839515 697517782 937706866 957554988 115406791 979022851 959578778 988229956 584010401 783300336 533317930 735772943 925574195 929801428 155270777 199773158 500728362 561958573 336062336 937432623 794909971 933404071 156320769 739462322 883475986 967268958 910078047 947311762 768783211 924197497 983895578 986614797 773340228 989428102 786719247 976358408 548924499 691796885 101495889 769792541 227686444 568435833 820853323 853006240 396786452 940676406 487542685 648661490 738897481 901049679 70674657 273408343 172615538 838926637 783638436 887276736 805595625 989685415 752307633 810384869 235675587 837850435 58264194 455944902 384734632 984873755 451285536 726665308 262015911 904677443 379040113 381936224 954803743 966569856 437825200 486681856 700777640 924117615 922881877 960371852 395239563 501620678 461565920 633301794 525791218 658721468 354459499 434519768 820148521 908832540 452606545 676021194 532630717 654693744 193776817 929908673 137265310 509987778 98942598 513095702 470561314 639841896 744768118 777129057 337244842 579791145 386496317 708250397 54208563 268819037 941773955 971261741 715131885 725590130 318561654 558988235 513983056 839707244 658259069 886059742 283432395 695612780 584407699 985658925 486536036 683198611 639111521 702646463 194856878 215804519 178840010 664819758 118453651 561713972 875355942 938658087 732246438 767305825 997736483 999299476 593870308 999015371 764667865 993761248 271618981 719534502 841342664 939811676 525963757 590895073 595420973 916843752 945677277 989018009 351032921 401540962 640106838 942642273 750809598 841828527 753607686 885032005 284835187 848353152 167719833 988677281 495991092 866515726 771049439 842549774 465184235 838709848 786714275 893799540 363851689 406815392 445213482 677839552 941853711 959205925 937222706 940734151 678264950 898020364 336044458 920833291 270399548 486325771 444565788 639584940 631906861 754675783 276581294 523903114 996626909 996843339 693431308 720547646 415766832 620295485 475356046 711307200 541202042 973623560 906147618 992314761 323820042 987039026 288164427 975688590 410507667 714225227 305035433 618806575 645081287 911322949 419560456 479789550 271898248 634242497 496348431 647485798 669138787 844937501 362896484 697715286 90156330 973515658 40581665 324178484 46949947 442566702 634634102 832107476 6676866 343383957 99798472 811440823 58285368 940210666 514642208 828688540 665892269 927081939 771167432 969742287 646623240 702159649 799309019 836181926 562612529 710642888 666638985 836186763 307872849 416064400 656865035 762178682 255065102 597903008 571679001 938318974 359831480 572546697 472672943 591409431 605855729 985558337 862980210 865793150 949964103 982013274 236558033 516531172 446081134 457287089 969986856 987004283 212250880 421876390 839133903 994277818 807143133 934948686 328141840 344838031 91361251 370637356 457660625 703530932 506979806 596804165 74968238 669725483 130911795 443450098 112469641 942954261 277184865 575409808 905296839 974771383 250544227 975987026 773798000 848148048 592122597 785010431 574336035 590774278 93366523 724536542 291830468 585670166 977741095 990559149 490546556 896208981 93038925 257745416 652183154 730980754 993975607 997177420 655765140 695670819 705302170 924335906 446147401 891959867 822987755 989437357 119415095 712787269 370705041 411881492 541903163 954590838 485468912 593357742 548908455 973090506 649017001 763901321 540244209 920119395 667033687 746879307 262428338 402464192 228336393 865778673 690902009 702255982 927531131 982957558 398151342 620472267 212447633 254858647 546646186 559479937 724051675 948798595 843796530 971865183 343059813 559227165 220666884 960961300 119103601 841928016 7462940 28580571 533714966 816290502 251820631 768346848 213942562 747843375 822128896 940508012 845110711 945569203 969910064 977496139 702138295 806480669 169972327 572114746 977603952 991108196 985356226 987914670 784572273 979579181 519646923 852368551 683668446 986581486 766959820 892616071 766807607 882290485 446894447 672541301 911630136 926570692 94982717 503703891 877479433 964912063 523352041 790246028 718236961 924985772 332263025 869234016 888393083 981096932 234611920 857813840 272439994 437065046 187773031 792639629 768754248 851296375 711341648 834600076 706718402 874195321 5890361 476826484 947236426 981815331 793565680 883501671 148902633 633437282 565448338 969915497 977225584 983284345 853711248 975993597 522188514 999203897 474624982 548146060 33613899 317451232 170785610 582067498 323956787 678215960 738754398 954559205 459469173 897280022 563433186 928328389 103334025 950497345 767819462 826394303 232748784 663285041 636322383 921569742 274400825 386918726 287303667 804404078 998726412 998835843 916446872 982013162 223289183 863918366 849319478 857333506 938718227 952392357 742146149 893313058 903946941 985242884 257752634 445778037 218461390 322203306 210192044 693841879 963658699 974205159 515970218 748140036 391169270 861479584 488481045 665453042 583261553 779888192 738873401 777388495 673004497 850109360 349773183 565624836 858684542 955004045 237289771 246764882 919178035 952245303 444413186 866538746 115007013 950049706 602284214 701603154 548572228 978568932 579490121 867453021 686764576 954977455 630703412 961336278 553593698 986124386 821859588 907976438 215821882 971077462 126061821 181237122 230599549 316790865 190220164 551023063 59896963 925213561 546717872 759916253 834798661 909197517 478385050 595526678 728533934 858610474 600196140 743935554 722259210 743039453 704198963 969613752 775638231 787194715 238849833 385697295 102821084 505230234 753021802 840899407 883749507 998081577 736890257 835023574 493180133 898970824 387255119 997703012 702112950 728790404 617045084 954561848 140881248 577229674 262769045 477464873 814882175 844122461 957513155 987102331 991946409 993912158 86859158 111859393 592473184 916438881 347025742 737074460 44345083 842987167 997214124 998408602 294420895 780437097 644013976 746724079 176899184 370126045 771010811 802147239 950458337 990751771 700185602 821810237 988889718 997850166 169841648 635734045 830097418 980818879 341168874 463179925 594717205 681439047 280767580 692664340 177141142 334795575 752929473 921623303 272668069 508306310 713448688 904257208 887008599 933185464 265508254 906926645 875059379 992543316 306115011 700147775 985569481 993124174 820044492 995617314 39154265 586392405 898440397 949871842 916275533 928939524 302879498 322732860 739445162 911754804 622079533 642170771 469665119 731050872 519956831 683817978 799708707 940966616 350188244 697607459 678490125 802391786 424225536 880801678 911094669 985991683 328116746 671024709 729703336 962537561 716690512 870696201 721351173 954931390 806801830 854478307 154571315 163519030 137860481 983494976 102690021 968042153 155083197 775649310 307880602 352956601 949371302 979585848 252848728 817236753 885871084 906019624 408537082 508896667 416088861 995617097 46352151 245129736 154031858 205139455 627955635 957815948 25172417 921763198 788739134 892377132 44635475 831643189 58528976 429123270 715515713 877449774 889157443 910321541 598245916 796008913 943887728 975000300 970500052 980175050 612453326 771806015 209877021 738777442 49917442 104884683 261417318 827312733 580098577 686321306 916540132 959897045 639392560 999142552 131782368 816450720 375012618 608476713 807639534 834583173 340289685 677603996 743375405 748030044 828456356 905597555 577115929 831262391 742605615 776042989 577749928 746194638 212373981 413661094 983657853 987346982 67154731 688952778 908638207 936214543 643200981 812219236 771994332 927766558 285553687 442402333 384037641 693592381 986872132 998766982 126659305 523407521 95669391 583730025 515707956 830372983 427006029 918286679 578284331 601727968 197710552 770747354 200641293 964347626 551547360 789149115 677305042 890152828 235857526 266612514 697373640 901993961 976557298 981694446 9882652 330797981 23022619 275483168 21112540 368924991 846128768 998788315 971624608 997478827 139888324 833108276 311563990 965702227 12957970 77183488 452386089 528828514 235594904 285787840 450287819 881449218 479500915 660707870 298699437 719089717 80883428 888918580 571623691 741059952 918219969 993157417 441942687 772725817 706954505 733599684 571239674 807499955 258647947 711828351 531886042 948474805 241437608 480399548 336126842 364418643 269994327 518138166 415697409 651005476 890757386 930572858 361518387 811941548 472088676 643589570 175335451 553418777 285934878 634924175 91856071 398903852 47267577 436577163 253109289 766771437 419707493 863481955 101429466 110264421 149626052 289410184 874432349 896588170 371355573 610479648 706066692 709101715 281942371 928988892 302790841 629986395 740940403 772370578 974846119 983500736 592051488 954730764 172819295 247314778 875551471 948484078 394930313 663409713 67533960 658681963 104432830 646248485 187069791 736689620 20006480 381200215 513985932 686543149 338382023 911665019 435633842 761531158 62952333 195145013 650210537 951526672 128670535 902073241 660896584 981541416 61568945 127743079 804911097 993053906 335764819 728361713 413801611 970948097 14417119 693241649 700796365 831877697 979640408 989479268 225736541 442099078 167415325 932108094 331050172 499864197 860730328 917294986 968998709 994254238 78719519 729983075 862988266 940133725 928472246 957461370 276185683 471073563 769705741 888619789 402042648 986736359 309834894 452549000 802236247 864932024 360319502 896749537 348171631 664714938 152422447 609796712 120480779 730372798 244138005 497507625 860158927 937376978 719579769 930642673 258599570 871925701 284091119 834630109 986516419 990937570 919120772 977691740 291918892 844997759 489637922 667982376 433973972 667154807 378898337 578501971 69096664 503538310 168768114 310758322 27407767 833227309 522755354 640141009 757985251 987366942 222985661 613800814 418875923 731549411 727518219 807801451 661776050 696350333 882329161 910435358 698747131 883872275 152674097 718498394 478400990 947446145 246738802 425812745 98644175 401655918 305690975 923552904 562447143 819233853 938305874 950748341 889403708 963657173 664405903 737191736 138998375 652442667 58965741 485886799 162665778 795461483 944962154 970040663 942599907 948504067 16653546 599687142 906821860 973657213 287692629 812239590 551748055 698489069 455621577 803092548 78070582 557780297 153686683 159927843 792858644 867149326 489500070 763498765 265688497 975308321 253794953 933899384 479043130 520304588 926936182 967998423 163883568 850009065 867850644 992604256 250095041 355001784 711914895 810401094 471074104 587652068 824059420 864221372 99118730 166475181 299323717 634309515 164024705 787933324 179523117 302811654 988684115 991884964 175199591 473252019 397732894 593759433 637460010 695361171 149387395 836244726 583573162 868543564 545599689 786526935 597750021 781823020 181688110 474121915 238034019 264716059 731396902 911593448 230445253 715517143 655058548 880014931 782558578 991817829 764095670 969070041 670984964 764915688 460789977 658988159 50949483 899156548 176803832 349158064 900427609 941697413 459568668 716925040 84932245 892131690 8297881 427883776 59050793 433763689 966101593 990249707 217598792 835540478 406633028 996086534 264488582 557162469 486418512 515919249 992979622 997854959 186983364 909559115 487718081 846944054 949646866 978597078 201611432 242356427 665622310 718825204 323260623 934951132 337814227 649084425 268983795 987030558 499472550 862639454 402593604 997205282 162699187 308982673 147197585 994381352 82376625 398551349 356051670 694924714 41994120 678698171 759700578 978036513 619628145 665945143 975197529 975568013 456890715 594155380 554682544 918364394 686893858 786458148 937860863 969389869 330679373 689137981 432546151 907513314 676613914 862607619 678625598 782600277 917420922 949373754 916412938 945898612 289804062 479328997 137580084 967219508 894955104 908386717 744531641 943933389 72385832 982541353 90655495 497429913 399234376 547045221 191756482 477054846 195136907 445369572 78819455 379324136 175447055 484926317 201925217 560261836 141791924 445503168 768656539 989364631 161035219 547022204 637355258 906306355 589492285 727785015 75812669 387998564 259406122 978091735 774638353 869437572 127842265 990195156 77281733 407508923 819704415 893619718 524427335 758478926 564570628 606770217 103871948 861936677 19493447 634904166 9882217 286422912 146481277 432866373 354989579 900856014 726494517 748274607 801265758 811432798 155399533 875345045 184939129 260572149 853528421 887174560 942235816 972599152 525708473 799034804 31893906 986907146 572413327 995832294 969256666 994064864 734435642 976672493 410735611 446525588 849512070 994808147 676148337 676605982 522142080 849549941 552055297 612362142 47587824 740396447 445248273 958110726 436369417 815393103 90257564 573695046 302500333 343430449 577446888 792819696 410471334 939496734 614671638 692023367 105266023 139341859 225121377 719858317 628232241 949972907 427939847 609011817 785230728 959492555 340526851 860191846 151582564 259532448 730431354 948106198 38590117 241470333 662159015 933647237 63410164 460385990 693333570 899341149 39814518 393217498 782278491 980515107 455618599 986562049 977021093 997260859 87421763 860741549 650351912 835431618 483206818 551438996 821217540 840103869 688950989 712518661 25037573 707106842 190391559 709140624 988090356 993571980 775656835 976328641 443384571 512122577 9332959 75083853 174438761 219280589 659405949 782242317 504204735 641445600 748099347 843683824 345969895 475632840 192028015 992478192 926697078 968936806 552404875 826257567 524428867 924035745 558588775 756036968 299764468 494934158 867627052 889381437 343549889 639755284 209003141 904927080 38188266 817347564 613335403 828354387 409300127 853671293 688101511 790229398 618422735 875643745 541125266 686898276 474554234 854945935 172884375 714973351 439492557 900003024 658878368 967687729 200582358 850540049 695814324 874290824 897282156 912488735 776152419 856167263 633194876 661927977 802307677 997146357 9571585 349803809 755038644 821244108 434349773 841867593 271991649 383443856 287581951 958053908 637606991 951207145 249351499 449695590 303613171 631944766 796596534 902190776 968821237 973673175 158861189 287428528 854223723 873644621 895833942 998995423 111339110 658233601 176219052 989544002 477799327 585134883 433037630 877047183 832884682 868391508 145236562 294146211 413261639 713911856 255864769 591901535 178831292 442459880 594141225 923551806 982854021 993813562 392234052 913571877 388022987 430742920 30450842 712944896 452755519 991619701 906887589 954718889 989136661 999094496 871223576 949116564 960254714 995585891 130232108 942220645 873903577 982249452 410981021 582354672 321590074 939563222 197174701 816240822 998199189 999002982 933204492 941507018 830811828 840913456 26238782 408977549 189912587 731280787 993393298 994265431 694489335 867502068 840440864 929287001 260230636 477536403 659160630 734221447 309082753 640739788 293115777 941996093 186117587 352561849 950775486 961153010 837563803 915274777 563866245 992345017 299469366 461216933 371146366 574306541 464493189 623868482 999121951 999323556 317761204 605780297 747779663 912515814 217315078 981910075 811967284 825207554 519226717 784719167 929845936 942568474 855663175 925080618 781306332 787879276 62205383 164549828 351063037 500369549 512124291 749991136 467995896 519853008 705095135 748457715 31640518 578590719 43232614 569511664 902361900 994031395 297430322 565819845 219000317 789939501 942393719 957183074 365876916 954078147 735015735 994907715 944423452 972882396 813435479 839463846 846956448 945063486 159666204 479284012 124079574 917747397 143440885 235098375 282312396 835735478 733919739 849673086 816300482 911535495 453920764 927000607 128543623 329138139 799830038 864449673 200372831 434228433 733146843 740869890 387657663 552212975 132115252 518288259 787622649 816307402 845098347 983308793 578996203 773004143 203566054 327838168 403909870 910462348 274771152 930040980 58180335 339655659 785110806 919524887 734910103 917525351 974085590 992464313 936190743 996419357 395178877 978615204 56493143 748075646 101666266 689791184 44460265 667241085 574546853 686516716 770207446 954602790 776617867 998524462 981309671 987435523 551719230 977346575 320264045 460491306 898079173 935808843 305329268 881094316 706312744 895677350 774116247 859993023 730347357 923462897 785681183 905525690 803812865 973740883 702062449 841154434 36202902 307600793 55054960 741208151 582843565 744446855 953177345 975452346 216786367 718745067 810653702 993172056 805345772 839545403 980645133 984671636 310818752 649307424 967621052 977972569 254949926 776166212 309756321 861480471 929575884 995978413 751216556 796458505 44869952 802855565 883118857 971028327 716372201 812017845 880215776 885026047 684647506 971323174 418831863 545022447 530792074 582690744 849163139 963076873 160216065 378802331 407879808 451698264 576331247 647482166 503558011 719928438 853163517 860853137 80280042 384714531 93796607 495446318 422212853 724918547 803958206 966887262 334117634 589247264 756364364 869186876 388112981 566234432 375129498 734914062 107079820 206607059 254431501 985351113 810001505 898400536 391088216 917887813 317657401 637531051 719665127 841711115 916704869 982698065 467539197 484036404 984551062 990459791 972169142 978618189 122457915 188688240 585800993 685639092 544368302 742253219 282814895 692536744 668549419 947956862 324002338 482307881 622310998 842064341 848146816 888602785 97219432 957760831 30818383 272441119 162838716 568270129 402058451 896376197 315633922 559184409 193647595 923920771 788678746 971276975 732428951 738841295 81247784 750883283 794859962 834528232 493130686 639802862 211693465 885503423 309893548 651171032 850466173 936219953 797294969 799850369 491291180 690897036 207311975 512194838 417874377 585301887 596424308 684138408 254425299 773618819 933770235 951924594 532994843 913969978 483360546 827856222 994546852 996296090 642383898 800479121 467427478 923342012 89412549 244566797 438627279 517524496 988042702 994856953 705097236 960667835 600543317 889397679 451018778 730740563 688793413 808407017 553443673 718578444 303827355 954557472 119689592 749366780 882288535 887240727 399165977 600891618 372718236 556298971 526766177 792525366 917555419 933920647 422141065 436287094 855871650 919087302 224302320 541913443 815093226 869552357 160594992 703690211 419185938 779400556 143802168 212055821 957797385 982655662 563925712 727984634 457376405 876831899 830926769 849585998 553684079 782539002 467221636 638280469 54224341 226136936 398936344 555541156 538086890 832485188 857345965 880619123 639964713 906814494 63228608 761842784 63732233 466840763 489937233 532792307 708874961 960652160 821254764 949555923 761911176 803519996 203401629 454022245 713446953 987523067 598304023 765288635 169925902 625475902 830055939 918002771 553876378 919192260 363765460 583205334 651640560 661073677 117587042 874531542 963305668 970733359 323589845 585608454 600889661 984431239 413810547 893114991 541074534 665136391 544491030 615360687 73768411 307043939 365452904 848188378 40695829 421228408 645764815 778496257 976702708 983443957 209865647 666719117 857571329 932116606 141769339 962945538 716442767 912547267 268420606 548889523 974749955 996149343 112405287 313813594 317387944 671612885 28804755 352960903 429302551 998105562 2841327 243999640 786177394 902111261 36974704 874117034 243372729 557439359 657046767 951186799 902088627 965461190 498929014 885425293 414543931 550896129 528069408 538954251 980705553 999339333 142275302 633274346 390012618 832348021 71942223 280275837 49931266 265213815 816832674 870289700 527210741 661641078 889500813 903704070 11863889 867163332 822671169 862268024 490333270 759125206 471037047 876629847 198689847 309047687 475704210 940988647 704807681 833825036 578565815 741998278 15803670 978717411 318868584 350163170 303016433 311621256 63319689 244691568 165023510 945216985 678851299 770561148 386697249 621632683 933407512 964952589 236941576 877142411 410881849 938895141 893601401 923491493 76002932 237972506 409136801 770334084 643725881 950940756 327024429 691443769 323811285 456905643 688825216 954999194 947011579 964635567 798144290 910599923 443731161 810533145 766531105 893470257 303855346 427685282 786135356 943235648 487270268 984838492 745652190 973234001 752989166 998609528 130100592 192819397 202753126 875981253 100706361 262693378 419303536 781414503 16240055 891917697 262029516 595086540 140412567 639190685 566652974 925752700 626806834 905356637 785220977 819134719 605236029 957218840 224383854 887737913 602610046 656630085 533097778 592030054 460270097 961772263 30608869 358239444 209763721 871691406 650648755 772387351 159658167 163948590 22412211 601085943 802506816 890358700 804651409 950251689 306700093 743625127 995258555 999077645 199928509 866053397 166041296 506380485 847454984 895472805 155934419 833913608 386444293 774927535 896718562 965120506 599650442 831194803 461823511 655508565 455108362 754966275 681650395 778001973 131595790 274485629 703109544 863160420 962177292 969179968 798143428 944765174 984705414 987100517 191946250 628438915 733977706 976519798 656706185 797472279 98850793 204598440 791225296 877795858 153555577 523667001 196086590 218041766 322664296 557061786 474714509 856190304 653522252 934059439 80516516 985197949 318108722 666325270 268544191 514332797 204263888 665256692 881116370 965883378 722567161 773446482 175483888 805024929 883348449 904010470 563143682 852476681 318806131 732869324 631292010 738969243 832107165 861781397 144589573 692551437 835380955 944105537 380846528 806091887 783157978 990272042 27490930 968965442 330811372 967398212 475850069 598087312 826237361 951356389 514090960 896460501 328553088 976886026 298772709 806442599 303698874 406773037 650910855 811831097 450558503 928956253 231838693 731095517 787008918 888575708 816753844 858559528 546924079 978623102 509982375 540023159 291919833 337795238 664041719 767965469 363090622 945097637 874049427 889631911 416000981 917255705 675825304 954505859 264331414 415767129 283216232 850913679 163336049 418548920 3189136 19955803 959844510 983923238 71646361 658624735 194927508 303112628 876949611 945289434 652770266 898254255 475381593 956286997 557820853 803946268 527066917 903716347 186560392 468573260 682803776 914476558 988439151 997527665 884644415 943536919 729804509 946473600 494331432 524808591 44352372 374070268 92420527 833349061 962315409 985133878 663381962 771546468 75224307 202159369 350820567 570708407 724427326 935562102 575474949 650728197 626100689 804798590 426323209 968969138 898694661 947037020 419773255 516993902 985439925 994925524 177857973 872917033 216979609 342822232 130912228 940548654 704582238 708094927 341214816 809623856 755975984 777279546 352119384 361816333 670447324 691671256 932759244 979316011 182010562 242081884 62175093 278407898 421761731 968757079 133032187 321595566 967348197 996156701 182583807 416611477 793707966 801029013 221274824 819546147 684873718 733879610 242987985 310199647 385063413 566132111 256792157 662987425 321212596 615181979 514847434 594549578 508040599 634373391 218899785 267425265 962855479 966552074 76774991 627505785 790348098 983260605 150541378 280538820 125708221 210334899 323021132 885026775 640905323 675534481 750322227 816551746 937643878 949216681 489715774 825054470 426254840 968900898 537625311 989186757 557708099 563774963 790029769 961266877 231046063 634944979 494261815 743517723 942238031 976290292 847392383 943945712 668141486 800029966 431437708 563310553 705559680 706623853 584634775 615657198 842161136 951388773 374498838 723613497 777127332 897922040 925255906 943970109 473981032 724071769 263515833 675454289 538477758 656930243 280468070 852977639 404769909 931554238 319112671 803488300 619682302 986029830 286268476 367157926 65247956 562558820 459546908 568604581 435748573 623987016 373346838 994377667 417061347 584247101 711380324 789704783 270073675 397347868 260986088 467441862 950639845 996168877 560300073 675623100 900438886 959764389 319122244 941814956 789619728 995802173 67452004 580919130 791562974 819294344 515784469 593934898 721977055 781909127 59724296 980856876 336665505 545287387 737631564 879787434 428793253 903263924 244689179 885008715 372895167 629945245 606559495 615139115 951282655 989060115 457231976 916332363 922949549 970836070 878946396 980020773 696588092 992113406 165397830 346242605 856567881 933061826 359460039 404527865 600108697 989817316 997843951 998996858 398041716 798693377 629562810 864522028 844861382 986389050 604723382 723812884 491223341 512875173 856287392 997508582 458994565 833614952 880653974 894769727 870369000 933724361 750240117 978961895 919091476 951364450 91222113 895131618 774762971 874695244 207172153 427459388 914300083 922537462 139721621 520408983 223766101 247500314 612540107 724659349 592471738 791645688 873777816 926722976 646180985 919946832 730034633 997242831 14968153 374709083 935740622 984023036 393992689 775555357 955484345 960626835 410587154 613455956 135756017 369436533 459679711 729311062 262641603 420905071 771380491 789624194 958563810 985197060 616674267 778846676 726722485 765915871 899361920 992050437 825684467 860933077 784046468 912640031 604242077 630863119 287869622 958944085 506280214 621173659 398542748 408131125 825402888 982003437 121621854 639910354 161673413 425947524 158188358 922539949 438740820 586536491 65165400 124397568 729494693 891338706 543252629 658995363 77222863 963959518 645130022 940338334 792863010 899037391 551762527 602635388 521443760 951638541 721947800 978278457 155420424 415607470 943520714 951547681 182959494 378841008 711105355 752674557 725222043 789661648 554995897 804037495 538656912 731001159 34529882 687699164 845043999 905478495 805692935 974983495 834966520 839960085 61740113 702137114 686002469 706341271 483850127 542345363 386811188 890027349 736987174 794163558 537183303 899883864 373656380 425730129 932472305 941686236 443513643 866179613 318817593 983645922 777253369 846156626 672157694 915732989 615066853 712583798 753733241 765664200 963907434 976202932 211763536 872911279 5156690 455864401 104911688 633731835 706139323 845823360 281248331 977614862 271775888 871142506 471479558 852497974 842562999 867124272 265052734 505737376 962663593 968539353 853346609 908392962 883041289 954774444 53911657 781623366 720476392 959385477 957931671 974699113 210650729 396140471 29472658 684189786 568607767 653752246 984403910 989553299 997202004 998762209 910879912 928337263 492271828 616929746 464154728 933397427 641164191 689427567 496951770 694734703 848994497 985966873 77720070 161114799 141875463 676850598 300676476 734460568 622832473 693285845 638700374 936313253 126095614 154940213 756835137 882308309 746228318 823330877 590631256 716709507 215699890 649933083 878998160 917786402 202633376 287518888 80411970 165885077 115007518 445525545 604460646 642656820 338910714 561921061 86766669 462664984 505329669 644516871 84251733 195329743 934869946 946663643 568358889 643304187 700179269 779358347 473974947 767105305 181899202 539395157 533982364 750846447 54967400 511654360 719661675 897004055 90342597 461756912 724209052 983078410 296661539 383841724 819887773 856344997 422540233 536695126 288255166 641422202 921820069 948629087 682889722 837452962 624164792 638043371 356973615 822065475 498873885 833997990 945218637 955882555 698472362 831254846 250119476 639346569 578108875 688909491 640652316 914225774 815164787 831734150 573864884 656430244 22521573 579546230 242213240 713780447 196336017 919101627 257848965 929260573 563641726 699303673 306421676 455714928 180522772 759559792 909745167 941659764 516226264 685509125 477994384 810265563 462795679 734464273 268898091 911462849 635250609 929854235 964070426 974402434 148863145 336314024 453475533 546259934 375131341 664744442 371884112 503152030 379224626 885700150 921743842 938602819 737879683 839862755 372827567 525767478 270175642 358762719 365569757 409780664 367998627 462776291 169047239 634031451 99861235 298777370 922583835 929484601 489909061 980538730 634412468 799534774 244417550 794801651 97976212 831538806 743959568 961471943 486615201 722219680 434609221 803354688 762538503 970363907 319254792 431982326 908735103 977617435 664839824 881262561 286791505 378926516 522691097 748446549 347413877 637502757 543443780 788306433 276535122 374477109 164290908 215857054 156510077 881840004 260893083 421072885 109283915 715981056 540809195 922322789 757002366 888085585 791658542 798330705 195493792 527557439 691399745 774991625 224022899 807365475 813459815 941123997 507438472 748782917 246844880 937700034 992488238 996084130 367260730 540585562 215463402 435370069 778033664 960564609 858571672 930723909 771432333 895960866 889490157 982526913 832603563 957201590 655194156 824061684 611408175 937887929 468691721 597909398 919698363 945472885 509813590 606774648 406439257 558925084 956080395 989116713 768646636 993692324 376896073 967252085 484614459 822347742 345494606 987565032 246259963 942667349 249741504 811874200 140199624 283622903 4769621 108284175 85339140 577522698 975928267 999309688 62781201 761671952 624503947 709438152 112392282 620219712 373729473 873720439 572673174 871562844 552618837 591398639 738845459 906812558 532673144 684901436 832220405 948225746 167912559 613819048 571367030 597011744 379715722 768588126 229278337 400962185 907207558 960242444 582223930 982755268 9271049 782852450 808066190 822881960 960059654 974929809 641957212 888827198 713690020 745924220 327398504 818710294 954633850 959858705 534897654 560606350 423330302 815391951 55357460 62762814 737778861 799208986 514804012 999013765 79591511 510669892 609416952 616004405 959703801 983535797 926309416 964174715 223469375 474904787 267491280 612396823 942549436 972821209 204654860 714095908 988475081 990765969 482424056 712431059 340006316 632701703 902082739 913044080 185545660 337780875 843443542 907415938 561195706 891573680 886866268 889393597 956728056 985103223 360367493 390474404 868607130 885707582 475482558 598402471 153652559 845231853 913061589 941486789 309334663 482048806 418761695 535451845 88506572 965453455 945188306 949376288 172076648 613047764 448058578 860750944 707048951 837704594 914147619 987664169 122467712 312826833 345227398 908324959 999207576 999301182 363060740 435439413 452273978 487411553 987568080 995166672 723305767 867084845 22277802 622494999 25787718 98302537 580226198 704266490 807676897 937180285 208888190 962618579 514548185 686465962 933487406 976415262 525919336 839877721 248586527 526111356 502491806 734856750 482050718 485879536 671634950 980770697 994546858 996616703 823896131 838207961 263687368 951673837 34092885 225053041 569007343 974085838 219059014 356120430 941391698 977828802 589089309 614306419 981177888 994483916 569289627 813752979 256344827 422807307 614931439 685326955 386757262 449793264 207219001 452632721 131869516 912689568 248560355 912177456 298180662 400579240 477731613 989695578 940604188 966303766 853688194 887417753 45276557 93344557 425629860 724342672 696520939 931840852 182675378 838579862 767186391 892522837 184284461 283656355 328352450 379099911 124594204 284378276 746194763 905754403 984346840 999339956 575318483 579082762 281415296 426537456 877922964 971966413 606453059 914832184 946998157 974241914 140140156 483556926 239650563 655936017 356632088 827727233 994470814 997356048 528865907 965771417 405652489 906215863 671801160 792231875 363044394 960562779 780393429 983070065 963360989 993047831 737236086 853103224 871629809 873607133 237872408 406136935 226516370 932291559 629081784 984671475 287853136 434987382 172862964 418253023 241777063 378200353 857819521 980605288 75162229 498820742 454144362 523771371 42989460 579294640 510559695 823945274 640940971 824298375 229195183 424211544 983187278 990699390 189944174 657914431 659107675 779997854 369909262 955083864 712930913 740735301 339413374 574917379 830867243 934748312 390039159 633491770 955059080 977013912 769727854 888572310 126766144 374292852 331138426 651232170 688354106 865144504 72640820 144494236 977464205 983466001 258413303 272383209 292539745 843745132 740424701 819371705 382285132 888303598 734679516 816123335 107195897 882693932 492293561 746567431 572560711 582271342 618888302 988213338 515293910 598716351 976797555 990999223 500731355 880054255 353397319 862618498 370701369 634076250 777486842 834901684 393487613 932659451 200414043 315143309 457093415 542049993 13344383 416298045 246835153 482552460 502280127 597506609 934176314 973078511 314877419 966037149 990877998 997662453 465235971 543562244 175192041 201349796 19363847 541462642 592725133 846847356 537810966 592280351 580437038 804042756 181913044 813535228 504268676 570343411 186504487 888868627 283461434 394310333 655856431 711335239 549794450 561211543 426105593 879058035 918014417 980349329 668924770 681175677 532532344 747851471 507364535 823486431 41923576 156217429 991854139 995639730 21019927 238668055 240970413 665940411 722197894 762024306 134341756 303626783 7259769 981194011 890042303 965149093 758111986 986656405 437152059 736052947 731608816 867505302 613084329 951424222 860111234 995379789 825286537 837243223 817983445 820738232 391473819 877426497 700860609 924468651 398323485 529258917 754427242 820097628 91030347 200466351 95930578 168858128 570710056 953745388 276862271 755074589 318566217 864274920 443186184 518654383 67657318 572927691 977969927 985004029 395323588 623160173 528021451 939094679 496542852 789036933 817919478 931006065 367667885 413594891 571659064 728371605 175233798 736418034 277461406 316630954 125490331 576318309 191897043 631706414 751748529 956938322 726925414 945347119 842454781 913590708 230816205 356426410 726988531 966635064 990700804 993124010 207270460 889614896 976988848 984994447 622369664 866934859 447945205 970346286 42780247 397947205 176161389 926428926 900456365 941830768 601620344 636450570 469334094 586248956 873929098 959228261 645451294 731003178 758443175 778376781 745241132 820438342 985539037 989127598 191749550 762518424 503165754 648829864 216536657 841245478 876834656 921736479 469821299 543215353 682700770 955618305 842454407 881192585 181178923 679080396 843427929 865952265 572901550 963375410 922655999 966749892 246402021 332724277 851322257 977177057 44686577 364836261 805267720 905481222 64902738 712555857 987375646 996788247 404887954 892431443 406751432 880480599 992606986 995081980 251310507 996901688 623311380 843504260 469198100 909045152 644545016 654590615 303877564 891074849 919134402 987782452 254218402 535913371 201188553 804780216 84555564 282260330 351385731 867761795 544026501 583897436 589468586 946909116 2210225 417866772 301992619 504936941 217127607 535020145 160505683 931901264 847878464 904177532 516053751 942443637 97309762 235002644 294313981 689929880 747778997 870627778 955913532 983408185 988482836 993711839 621203791 662153026 831338557 867527130 344289432 636149916 611012709 680985329 119557304 195400287 257097448 742585843 357557330 752290825 642203734 864088148 310098549 714658162 574937868 851278100 325887161 935866584 275365758 417648552 381479167 494140385 513694677 785331956 616264651 854607562 721454358 790066662 939758570 958679023 519558012 699243006 35819464 490777170 674769976 700601098 243425837 468119180 572691235 826917254 902785135 954283318 453986852 542395167 771373773 867462651 389985278 688271346 882555814 977147540 20460706 173083825 543732844 912551167 76169260 955141907 635820022 637400937 68958217 296466631 613341257 838134290 991781821 996036544 678347461 890860430 490637891 563816671 181873414 865306581 338361166 498323985 315408174 698320634 400858892 649529374 723762786 872910152 513359850 605222950 880015666 993328325 53749905 228907181 117154377 362729337 438728973 560823924 34974921 434651158 71820576 289136348 719353269 849271087 497263317 963878056 981476819 993379364 716393167 827262437 487471013 880445634 597135869 849171464 29180092 600002540 955357466 969739017 759929595 857273982 723427381 975590497 173399996 838454747 234719796 705151911 627252427 769382090 986537574 996265352 654816140 799063849 771412196 840424676 413338445 659050024 592845312 765772950 840605708 934286151 489328038 738895388 532391451 755259302 773614129 815258848 205543468 275698422 586984145 873507185 970538428 979772576 2717776 472121955 593211592 898433958 750329709 900186803 338525640 938305224 512793170 703683381 509534271 576014870 101141787 857829386 713552533 773863210 328346638 884112943 878394903 990997599 824281400 943113509 241991329 923188948 443334208 506276506 939171018 971968195 998275250 998922604 489835340 768294049 380097883 737159274 95751364 103924271 516261276 930693054 471633810 494474658 208465905 235600429 504994244 855045806 321403841 783240390 13547445 416014882 476803379 870315391 736757058 851942575 790351687 882818733 311677268 642197133 541322633 779821161 147667165 632849828 993400100 996988495 888556071 946806774 433703763 567449427 316342455 593690638 902492119 992252500 30775985 505317017 527253821 586667738 406048661 547996633 511622007 800999681 11236335 686207891 517409189 755768554 501035822 825909207 299121988 309462079 980750945 991405602 251626278 602336732 621677015 868795552 259273315 556123050 897452706 939306617 781461074 816275197 625698812 848694508 85470319 171233032 801984878 832682179 359521028 488021141 924305988 948588704 223898149 852224632 352012211 750434292 149998612 334495828 62858607 989080187 307984840 891264677 88045879 290377574 157852259 783000110 982529803 994636908 492459592 995883579 562723834 625348892 747893402 886145616 832907654 859612453 973935161 976458500 495053908 693931856 519950088 847258169 800415616 859610464 109246875 194448843 185501615 521613190 994877137 996670132 456178576 648013730 934055786 942322461 667090019 976849363 121754848 201281320 748287428 943180883 703642836 708300359 643868459 931158675 80648198 778141675 865355784 930812279 67225426 686203511 881237134 970465546 689159659 952888647 969802747 973536152 768802241 797491416 604139427 620405067 484244719 498077437 842897951 843569749 549818837 580163482 417036071 582617661 179128039 613484921 766936094 804039516 122630551 807731403 882906774 898643011 141351801 895446501 897410057 994422934 350744564 956880164 582159692 836913253 879208404 991886016 406996061 771434235 992441869 996277871 25942881 30189005 276092356 664846014 973585396 981995519 742209498 958219395 655281869 810187502 884539244 957990585 156082439 647155686 149014678 965270542 407243657 410569698 552275322 831970851 863839296 877478405 56599895 569409478 753469866 869090102 949743100 964215537 452038274 697954789 555665405 980316904 578333768 912764607 750277402 752750412 172223062 643998101 878987581 962057830 877292441 946830318 530208921 700844562 586678435 598932410 54297638 283773651 367232582 991051210 140611117 447466525 130544371 902270455 557902582 663851461 158271317 184040571 853451502 982251204 275922603 723382167 341960372 477448894 764035275 871247548 427564479 572243362 275156585 925629611 406502482 750055579 508514235 565408694 251046182 681182706 692235486 839593064 277325939 680621142 563921189 625623887 247870807 299361798 408177949 683245615 140121745 604750409 810988281 892354647 510225063 610259898 804734745 998651731 411291496 924013751 844748011 968387721 852345203 960230209 817227153 943177659 910636141 971400979 767874176 903262041 828820271 834516555 612899384 713415254 234360177 730522916 395482163 524589426 728497264 898901422 401811015 910034234 184849947 456816371 930029941 993539761 185907503 836723045 392260952 651794863 712258336 723240079 58294782 926647269 537282715 623008825 798646965 892879998 434228929 818310090 260529845 321556595 102493249 158448373 556855995 571169082 460844381 629955186 822636247 847591035 160401333 241832869 800519590 871687542 218329979 881157453 985626467 988958895 476951021 601961017 259963632 330834069 942440701 997926743 177223161 366331241 74154280 621669076 862923318 982985707 721252920 747648110 186163643 747499458 307691330 424479029 123452822 517333926 901288235 991270567 478775686 557250022 867177489 915088748 603464907 851406249 449137720 849868965 596256158 839237619 134172900 379956813 291524799 459049812 312746019 697167427 585170985 942582921 727083707 995992843 353365194 794519761 833892012 891123546 642310591 780511342 86115392 580731522 66773554 115068526 313160084 899623672 381309010 520623807 889147937 941494474 983667287 985277588 400465365 730423049 626074486 869435494 305536191 405719426 346498334 925502827 780849 288993489 725945026 811259047 376076963 541699713 625044051 783602598 332717189 859025505 964579522 984168686 408739361 751691590 644520315 854658420 755873677 931090934 412149250 973197845 917213609 990756176 610539505 891377115 895188269 913956220 147936939 440500905 102743108 967834396 83651432 804054782 802818369 931236363 426145233 862946499 249086609 325225292 149456182 523512274 90806935 904577638 203243381 271730162 166773046 697358266 279781628 537319504 922237338 971245807 908400952 937341515 571206833 794602113 366074408 854327361 534103606 609364693 761269639 767009530 893144953 934990377 229408133 724524445 402811179 810582314 614591777 875012545 903116299 909050268 566784926 646136908 387128980 914348875 858878618 985303526 967008129 967163559 921367685 997865977 203908991 552067152 980095844 989513789 130114662 146586787 562628548 653359849 412035251 431575351 777848386 800540316 205684293 288639369 579285058 809909087 950329765 951343995 616234500 791264637 49692824 103679709 767123513 954450943 839418929 840108872 407103468 563663810 845871206 919474543 255112985 785930981 421744308 631798452 220824366 976939452 54127032 540653495 487944957 645171123 958990903 983566971 86601546 638153973 892398999 939261092 51945694 786041723 101618613 399079937 226044866 265290817 776851514 918145022 504529707 873444127 266847508 641283754 926209781 958421257 373909574 601007254 151520479 220365643 312434138 387758741 765354428 997013045 25896522 290384035 451003169 761724845 180471684 678649673 374499529 519006612 936326140 956732926 926806233 957221588 36469937 831261497 783774937 824321567 719255268 797168373 299225285 474198629 203826665 763042826 653979948 682210670 26479932 947996961 703387313 968299351 560814644 880165965 890739567 902659564 448158772 652404093 927095530 946562614 966592747 974694296 801695552 997790160 769221135 775410338 950095470 968317734 913929952 926855323 514197774 922808044 633608736 980964686 194190790 276547469 875140050 890501886 995007203 998220513 277262284 358790361 144913927 335403472 581275227 661423799 451525423 937394557 577919455 800574429 674359305 882252515 240909640 591513084 642568062 954618019 298070396 436095294 306230001 879179405 627728238 949621141 975068037 979938910 515471501 832539606 993343474 994368140 853551187 935540626 654163530 751204824 197838209 400287032 730065095 763992373 424875339 785368523 3761872 810868315 398044748 830096094 533322863 977355011 921078404 998687924 284184812 982400059 854930309 998166156 813034282 900335553 483271177 687318386 658617092 846136516 157582229 406001520 333997007 989896584 399563203 607780243 487444760 515142443 7731383 901987805 998910981 999221225 502013921 980369234 626596403 757862238 418213057 959051109 687890453 736167330 987138452 991450366 997457531 998960997 921792558 993853891 160318388 585540233 278063547 827073349 317618713 574648670 284256816 468983496 166621092 440231780 834023024 984750072 552178694 730934218 586528191 673227254 905022395 992970891 566477833 681625792 725016213 763224326 153281161 701998076 960269090 987940939 316358307 881470679 872024260 888475964 723161842 820599949 565194084 970934930 52244815 672703884 327966149 453551006 896776596 906926968 639409278 873276850 314928312 525854712 856033384 932167929 269231340 604104948 263248180 996781434 277703642 597021151 604744830 669601573 66412149 577497376 739241318 851526594 129619173 311390511 765341032 912220056 761458692 983415892 639210065 918151388 23427636 42874159 883414775 969604615 772092950 778294642 452954743 882633018 86063037 911482809 948270921 971618308 289041861 362006249 417996941 717423306 623564830 757702626 63248976 650642182 270673210 595869158 777282939 954100044 314426517 896724791 732837648 966858651 579463464 754526369 804522353 924509792 557390234 903677522 189317177 637574878 340827791 901008550 147005722 568237489 674414375 803681302 430812191 878099886 709756595 788904643 686366655 999103226 537392545 910783205 146177520 984716781 724602035 740846313 72149568 686981938 578229200 750295931 793815943 947660798 967232586 984298927 224831926 539366286 212975263 458800319 269313235 897427826 131780884 713536996 32679745 807829134 455132628 983974913 778549409 817033605 516418289 917885853 670078318 892885882 33890229 922239507 2189048 380722375 435630062 503941670 837574093 927329940 811248047 812560339 691160222 736125893 832255542 937164474 877372260 928196554 519024303 688818938 119359622 724664790 319432989 526092458 422067761 591061298 994011915 997758054 322237925 606414864 28790885 874486765 398865552 760389400 271880017 791630191 418311872 550176428 998938701 999091934 641122532 970006262 170742308 195784716 44559965 956345565 131692013 188106165 702680356 908741439 157793131 472488051 989354625 991944581 774647721 830060461 220905969 686073652 119719567 125859654 29297887 879139962 345734139 651926325 988907483 998578987 878427482 902454488 932528622 997850832 952240522 955131119 168844105 939043476 530264199 843461057 570690943 993003832 516628369 549757044 98552020 699155419 723679323 980674979 105296756 950096871 221296131 477759133 631983042 807434813 26537589 409603637 288537688 332631139 223685268 694347303 932249256 953135669 276646437 634240023 138149193 364718885 83417555 343717028 738819159 937699976 274707889 576775722 625700341 778415012 151032203 913320394 11712152 895550279 698290612 701007893 854910889 952761897 473095263 511836892 120477724 357207195 772906597 977078551 675964268 752709033 432426776 461723428 258395931 420331885 717344232 808978793 741845534 793232454 221536101 337383511 623833096 873738372 423681897 877729007 835846521 921849209 248233304 922494694 153986276 843232032 221523731 608278711 199130856 933765679 866266389 973606116 545355808 922176679 972531284 991968957 994306747 999052531 77405809 588298989 571451980 939081130 515463056 841703109 420575966 556344303 689062198 838737076 987089014 990010334 871663119 969680190 631029932 760082205 126879031 492474693 988775295 992374848 669495577 793172939 247277224 255623428 565071507 993955708 166388503 521063667 690284273 764713614 586342246 676454125 527239578 623905014 829278989 862573042 930709734 967831067 893522182 919817279 368387935 861004318 861769421 995377834 680308187 750856742 574981169 597673124 806817662 938553520 845200310 971450260 830871723 851885878 492701089 516213241 506510117 857526712 948319997 966400659 464327997 920239452 96402226 762967376 110444030 695684466 138360934 220993715 743031669 813504245 160035992 221426631 443442993 470414821 975470356 985842041 464295298 583944362 888563580 936451240 501630428 586454101 614044942 905920007 865724782 952504561 347437775 464036240 881802436 992103880 944467151 956709944 688979591 982737930 763939061 891540305 930569133 987837697 925638544 989643184 947013027 956554010 422975390 584494043 828523180 989242638 189056543 533333686 507639705 699833053 922039840 973361451 370790338 813228151 515610103 707588670 967778165 971361538 441365295 751683826 404283160 675639823 895474567 908163884 343709556 777057513 52190440 392301928 723764720 785652089 79771710 626448036 528631957 749311393 715414477 873038571 844571454 914736370 846825831 963342680 234058285 369843487 960254227 964925951 815635903 946006409 732797855 734431443 75610869 871535712 195045311 615361117 449750908 644561551 592146419 809232191 178049729 603301236 203672007 658534348 559256203 826860929 729089090 867218099 881270067 920235066 71048233 971347631 435088536 606311011 448264284 687698997 204476664 465447167 705560940 886821678 11528384 760695369 154699358 742834816 421679952 950805842 56732035 503580282 970353902 979608120 393897700 899208740 5221060 909591659 344266190 345757447 767248401 947555130 721971149 876551908 993266635 999109623 566087920 649145266 555330240 955669020 50438087 767325055 786388459 860997381 66751281 444361243 361687889 899296828 507403910 592650059 386887250 509127234 396319743 889308368 889480471 911701389 582523862 927191764 285869344 768864870 38848463 255802843 749128445 814839118 333789179 461024694 840219079 872200049 152165978 316109750 496161325 922753933 974438041 992337916 121214801 704537830 555003667 750989864 453646813 852215848 344991203 398209578 728230443 878410622 10962016 770257456 674096220 778341830 85828952 850638970 100911338 341794078 252749873 328299355 2755800 156865324 889187830 984137095 246077837 916824798 570827986 725990629 166728626 414522809 980417232 986633590 105199589 482844813 769337589 842336273 759097354 997425136 277997175 327175078 252831050 427134755 959225298 980068019 281136601 684290568 357623693 622772063 179711714 703061760 161310377 733107305 119268294 638228567 17314085 309308736 182152933 331759642 183191737 967354862 783362303 894740861 866637118 875209494 689208869 852759123 605926717 985958487 507480490 899985381 681304095 812186849 844561637 948711947 659258053 942245834 877869322 960336557 451863702 533740480 693396454 788308734 345110247 565031536 149850987 833794906 570185565 939853888 131242071 864965439 496507197 554886787 225179129 332611068 284871095 818951495 803912369 828184087 18474133 203732127 106637248 424969987 56328579 327657202 467760404 892824113 885900257 966134548 268303865 724992473 976469709 982105814 248443970 720588344 303558425 634887977 632774316 921176649 393912935 838401041 474761809 723547773 671913883 695968340 199756307 407230154 237173858 922575317 63431492 288951868 862718811 958721492 361280120 685571361 136442010 480070865 838216747 924073282 169723642 659967958 242238526 574802010 852727440 997126187 816218243 879309845 717208416 799286973 879697685 997854164 436301729 872699592 993799917 994792041 551454312 778488990 659336399 691489803 714679128 761192523 109999212 154460755 370334054 436637308 65109857 937998916 243158289 836870539 918813102 940730460 462325768 737171513 511416657 899427112 512141107 926955260 934722462 945627565 515463550 620037818 960476967 989798469 326761285 599450566 960543206 973361759 260292691 596607239 953182062 994592578 444203783 517806395 632723603 855827108 871097109 994171165 37864272 292359915 664912433 844103266 780706960 917279167 48580019 221742266 605361745 975296424 821044234 822063196 711274269 801887326 150841196 186350137 755254281 854420981 554353544 673994958 400407252 482850100 841647044 971246160 514828516 993817250 523348466 524331968 6353126 106489133 60196488 908805101 752386062 858010188 549030184 684423596 965758976 979734766 345980096 365080480 745018571 804843609 194531546 529539763 740975047 795548876 406115710 420286252 431342776 992920717 149589505 858515245 441045696 988995357 722255852 772707560 859070964 999110148 612984639 917386417 784725294 960761112 177919704 292013011 442750682 496085198 104111244 160938437 634538167 887662973 835560715 836800634 386879914 728625712 482098487 830696326 111158807 439983618 764533998 964789408 973090416 983072708 863834577 967730296 666078420 949310896 208582088 465192813 906472675 919163055 843390232 876047641 785973547 868409131 698700388 800742843 155399135 707473511 865217745 947305914 780093136 956017519 396616495 639017645 612940231 857255365 164336502 700523422 844596265 947879771 935250352 998284424 731260099 732925592 386016697 713478899 728304468 860711051 897681849 965086136 898781499 969407254 521397327 637039849 111266364 634822674 836977657 952872784 745766503 981156545 314729347 562385495 351358343 710012740 125978118 619308714 714809499 749360662 20408573 537273513 762355099 814979712 393417481 585678987 719112415 790367722 719108723 821861081 556063962 976970130 873952350 954944174 353578473 984260406 104593441 648160077 18863874 200320698 95721639 801778412 966542204 966678034 91102109 467984978 411210892 678160562 212482119 297241312 147898997 386559327 374200584 681473527 105776828 343377165 833274740 938635477 255801615 448190681 598400373 688138000 37700024 366558837 351909071 557899211 829954549 971018194 401147712 704759399 281017400 344145606 486193918 678198084 375591105 581056067 591562083 724222865 977512739 996782199 157899843 688560522 631610505 670545213 607154062 775027097 2483607 393314800 255463008 446426133 275762116 320589753 299802740 892848224 540519627 901245539 977036967 993492779 206631381 210856950 817982772 939031339 584533220 611713185 980953773 984216174 429569660 528392058 563269666 976083391 595782840 888154890 33428838 584608771 415567355 820512153 353039843 455021187 534379089 602742077 945435196 991720546 975353283 976973672 806096618 815771571 52416545 587277848 557056311 987493264 763842841 818638029 254428747 395919463 383298943 689791814 70840959 479951269 148493611 880091652 72977000 459588362 265967900 938052473 831621183 838564602 46097613 423161329 419862511 623602260 313718995 831013804 772550350 947623711 424248696 837015912 872115865 962027297 575001688 581137647 376657801 713315565 203140851 465136900 330336053 962866640 733115133 887172280 908812157 991649574 361065470 612375285 405458096 545272564 535951143 871888257 315419312 961489442 379960024 469809628 5750851 922865804 491475889 925384592 954635018 996926000 568011222 866727146 255324599 843456081 837747873 940223572 763718897 910824600 867620148 885868361 516495258 862732296 735115535 784902445 361099586 921672819 750256990 814750322 637069694 855409624 685586496 730001835 199909326 699294464 590899529 862486667 536607285 696815323 433968928 752758616 670646393 801422984 646467984 885533977 542464838 830707903 107811337 142205613 383560920 620025517 309020727 525445989 517962818 896641857 942154559 994162158 117489653 606825080 794199969 806717175 611450302 967466297 552755136 751841499 20029344 681304347 751977613 769270208 605277861 631380764 569956029 974946320 333063398 441840001 116108958 548963207 683279322 996035883 801291421 976031650 534551378 810024806 572756585 894558842 598806354 750974785 726054369 742761965 821588500 848772879 703897097 884216949 703542059 966862991 736126106 741833973 488782735 918804808 237345993 720367543 589699133 941827076 811724302 969902440 261441424 374332742 773948789 912721889 45103442 653343125 476590678 826774070 806894011 915688296 928619311 989803042 685834814 837536868 404796465 610932153 614979637 746011067 636937758 643847678 517421419 565154773 895950392 908872318 779723920 957633758 785142931 801922198 681721365 979532022 850572828 951386661 117105417 341355242 546461995 828686058 782758051 928716075 336158435 755870672 58018628 153463815 650071472 947886074 868743662 941122121 725822425 900360338 613697594 805695896 848946666 994537809 723490170 825260584 908895426 930048187 651056606 982345545 906224909 996218587 733517878 999284450 44939585 103054456 891011178 910333776 75846710 158832969 154237278 646780658 52541586 394163815 729917588 876171560 728563560 902222186 800096676 928480765 276956914 991544608 244732270 904936481 407274936 900951172 615452640 831973735 188982753 279413860 924561571 979395066 409151202 646811473 559346160 851394619 373386075 466001421 962989565 978639419 377380266 788536198 504472892 944100615 436222544 552132987 270710745 540139966 874467201 958476539 932879179 951133848 710739168 931053272 650678295 758878526 885790639 924098295 842658826 885702464 685614809 690603754 845464493 864363526 745000439 954032538 910899237 949093089 88962500 668176306 396200605 991837960 521085146 951990507 891081520 910655518 391500758 568356154 466088306 968397921 55440856 79118448 157395113 381707570 259146606 548034613 604796579 632875642 185567417 283540492 948221842 954355479 193003321 486768837 139008611 601657304 180856822 870531080 988713077 990884440 445849822 482296701 429037519 957206863 624008496 939068154 81059132 294906460 571031726 713648764 123777571 441641051 936665891 989224381 771512281 840041335 154030079 774370342 265939600 744057299 975567312 987978879 65796928 282684722 417887160 942216577 817830513 931701009 329500608 879422403 805801101 905092066 771497788 818621281 243169078 878673430 401344640 994903332 59493656 385587407 728521439 787172453 862144590 973731306 865953330 940422596 540019319 773177247 991206119 997369213 903377830 976006719 681291219 740181249 466396786 944434017 629112663 965633506 537446820 756635847 491191848 791829460 501443518 730861663 371051588 832645433 673996388 990273899 843241366 976912440 397407655 800718840 336758743 615520387 529891384 548693927 749064190 942454590 601890445 943148302 265309507 392183560 720051891 939227896 538382228 898550110 948375748 985393519 972738714 994175757 399874197 680651802 395820571 546007081 900367421 967703873 363029862 698923817 93265196 912400382 637343651 781194535 761789315 860859807 230454751 830860811 917545850 921964781 88580524 172516806 914355047 928007220 993781466 995652299 29980331 717986262 573845471 623367473 392249847 544960196 723225433 971933049 948501764 965021544 216485575 851572205 980092546 985908227 961515758 974303782 802997591 826307101 194752946 406382529 914974866 962895392 209213235 489414715 568472925 784638376 159267117 344807695 385140582 857798615 175568214 506030133 440432937 862253644 703960409 972528323 982832538 985195436 535425198 861495389 625610191 879024850 476646840 669013841 100488996 484532374 881840257 956038220 296833755 540816060 774187023 905019632 798788036 908019285 827609266 996332643 19245242 70116118 506238308 611779337 694487539 861504898 981053584 998976815 237575238 474230239 185578565 309373920 813025026 863732245 304519493 700713055 387350652 780164478 824228326 923110106 223048163 655992659 202580384 855300393 704300992 760853685 651634605 961960012 980010881 996857301 533415936 730426221 889509876 904020474 313582591 593440387 289496479 889526748 517142246 768739050 996177746 997896640 397347395 535046613 414284710 916066643 795840151 919654348 736560249 831123483 908841198 918099631 715528407 946751632 597251019 751834106 345971856 526386940 418106811 482946611 313821055 930395354 522806730 780303595 482422931 779856637 19205497 276849656 230925070 817404656 402210360 761600903 524587142 895577189 139549198 760304105 999211902 999352484 759140568 917612440 804497646 945715296 493938991 591103405 964703439 996234316 669541961 733781264 948042114 963180773 40704079 234796333 936152252 972915944 388093737 626108906 811593855 904337966 562376039 962659607 230518101 529072347 848051842 898947913 954237412 955604439 602037729 852074227 846247609 998215233 330905116 452941905 377796464 972632076 397797674 914400026 10111598 955341304 176618455 674358208 260094105 570690143 743195901 799442900 964855463 966689864 300941301 540343513 390454649 583214156 637706047 878997571 742939075 771253886 832705134 896276282 144626255 547046070 37212616 37796318 964703665 986429829 379884587 984420286 224800486 842152942 254701620 901494276 124565309 199385262 377964994 649354568 849946607 913810513 360489171 789966754 560682070 930150495 824685279 882074235 512223076 561755209 315331536 997205679 619661501 885479014 531627161 888755776 649733094 696229756 778201594 990020659 920975996 946401107 197651070 901239098 905888091 946691048 487718209 820850157 343479178 677431237 318807436 504155402 638841923 794430758 816488590 927805931 761825173 998518027 547300196 877192700 395904000 521389328 540831254 750442681 455344561 558886798 264799797 825665772 653210593 702057706 490755133 711142609 966422861 986044378 743259469 820014278 247136256 618824997 146146941 927818417 2637079 636223132 939412354 985990978 798781793 967603550 658814508 741712839 436914082 699566131 93550033 521377274 526552792 709154470 852123516 915442073 689505250 698345047 868029095 897044828 925960199 962680656 10508314 489337388 94008226 123458608 281619478 704939657 438509678 871764680 419684952 702688146 673009458 762346526 716782852 783021861 270886393 330555016 349083335 389348986 304599559 389510391 718227311 741209128 710704146 792002142 900296728 919569140 776802511 977336940 564531907 894061487 954510733 970719935 753380265 938183127 643575372 712151147 939368205 999153988 967778594 997511573 66298237 889463457 640627246 642748919 371980533 692933041 794435628 936640238 338901108 988942308 663141285 775980049 316523952 334105970 636893915 904078047 528191577 754339916 811400163 842999604 91783964 749817797 883127379 951089880 480976655 695951290 4436535 94100055 36092172 873780542 326530835 558386278 352019382 365658003 352386376 641476408 426672572 547432112 772469321 909299564 46093505 794725829 640641484 771530240 862699330 894691256 220787563 994780099 593344971 650014952 887381991 990760380 394986562 531437748 431919376 470434191 222845803 621502911 532692252 916202858 750148094 959777252 766817215 771232191 851730509 911731778 350783188 430053936 457031551 782384272 713514371 828431369 440271749 605759732 641792713 987285484 281281421 868633335 412821552 522270402 157804679 767832218 647692200 750740565 917059529 971428569 139487190 889386076 533101643 853224389 446773725 701474077 491033827 700210929 908213981 961184046 399722456 996407433 872882791 936468494 870724472 916295275 178920365 705418277 465639532 493225221 443876568 576824867 474536042 988687127 253947461 273797067 514380979 589989147 55615186 476849860 685237447 859809063 921029224 964733255 559391432 853747281 219419153 503721750 934217501 990659321 369225889 896027732 751694010 918619818 282531321 356577963 243234768 573084435 647142923 731816519 208710180 551339176 247484839 489214167 726743555 829999148 903163526 990683790 949431940 968198559 631398798 983579152 742331674 931163223 700232245 889473486 65546546 121180055 720808373 903567710 541492294 957091290 912054944 954423851 351276661 774602481 943286095 986998901 516831319 693263093 851548594 927940065 410059043 761446665 3688613 976956097 236449094 838517531 49951594 818204701 190640682 280882975 198899238 889194658 89897820 117942211 317293869 336958594 932062951 968497812 894438193 991231604 962216516 985843981 668939139 908202801 616207596 786974291 413419431 467184375 654922692 983436501 634747467 949031665 770547495 848985834 376493579 787679100 330102432 960301385 182039687 980392561 639930737 979805883 891368319 995497912 884216489 905809687 962723520 983484243 168665734 448450962 258320637 615714245 506127525 964700924 231580462 240433205 289161890 486779487 5233278 35276213 439473581 801911191 420993345 996604983 912003769 986596343 379930934 774476824 750701696 760704810 597356330 622279039 89717280 147675340 297817197 922129224 309636115 531165871 808955783 820092915 948271247 988786294 35575914 443834166 110180122 649255707 860449650 978325332 921719670 994245237 216762785 556710553 435458723 778204880 733117263 753844044 754712842 882826017 218234581 480372371 330837409 594439430 366117513 481759650 420864364 645087538 329465233 740504154 410570918 694551778 462131400 673745984 588460237 672143803 123685422 331860008 500681676 710005617 223991055 236270579 579391925 922941116 257474844 347333795 938374624 983914093 810694633 842673642 959895107 974263294 936018293 956396172 141599986 889903394 321236777 471726868 503687947 530759773 607838447 993473645 98129254 750395777 728369873 819147795 247567611 644592331 69288513 743850859 836512418 970513771 795677170 812627856 158977901 811060362 307871922 813581813 403721404 547247346 754171546 764875768 726241484 955839363 253332178 298665937 572738902 746133799 123543685 240221913 704854941 938123152 441522145 523858214 367345207 981871328 836307563 840294035 321585240 632638864 118709941 949896089 26788959 945232866 201870290 322911155 601657016 872222914 259176034 732518580 408801747 974515750 510456413 516291724 577981311 823032167 206209362 918631423 835255023 932437369 371079180 625421769 178544691 329062797 565644829 893425006 188539126 234784784 310278841 416450112 430279308 671525187 123586789 353481086 474156535 662750459 651864146 972097554 818047389 873434254 191694072 251571378 960028029 993255951 331721017 709545642 565517770 986530273 503626870 815647637 299472131 981423634 540328840 560651858 865316928 975921119 371062978 937857568 258346343 432177237 575071448 651244863 585451758 806407030 956389011 975499299 287976215 697626659 133867481 596065270 54022576 938182185 544794130 687950064 800789022 809856173 280869112 753311768 843336764 893333503 474399189 814983740 184373031 681977754 143228701 479353028 483557642 863886840 10728039 695944800 531601002 756022726 926652578 958033102 216986039 911564180 561009157 980173223 445884123 826242413 606405022 776915245 97650143 674188315 982046105 996109533 270452061 903832609 822633606 957006396 571735667 964929300 206775100 674130428 352328377 533075346 710369845 865429298 906495359 974920836 886484848 956888693 463907373 710196831 92620653 461629250 25587470 377874400 930016822 950522359 189260499 527750983 599924325 910080095 576488022 914663082 903338058 923392730 764479090 965422164 133406731 661827700 208260358 330794522 298828368 802457994 778222513 889666891 584058514 701398504 446268926 867690224 22828663 646687937 693703552 997940186 153871830 485621389 1670584 508483592 501872269 539553841 8152951 497197080 136848489 948007338 463580596 692068291 234968183 399685520 960552908 998843969 330484585 679336970 195920102 198786833 910686412 949891761 504963783 998836642 757139742 774259864 720243991 781206034 787033034 859521320 376165307 452193173 109029972 867152119 859572269 883602006 727188392 916495630 30591060 68283186 796246953 892753365 746344764 975585692 138595446 764681219 33593954 477997022 267557337 825222767 546928059 958475864 404822203 505823120 542039326 764216860 568028714 747992735 718478742 869341936 536632445 708265865 225697257 534509736 936268118 951119789 7091427 283987182 367781174 479974499 696511726 991260279 473971217 913765580 146491116 776402342 83073293 760315619 534472449 781394664 738977022 827252516 302387929 540939306 990357436 995720237 834304702 976874116 476308534 708729756 613615937 923597486 978209634 978863400 335067549 912343220 287605248 429813224 268267026 661270947 278600888 749936015 832869639 985695844 589154460 657524405 115283239 276491791 558633757 662243447 448242125 842676748 517874900 991799836 244058895 752848301 219505455 598531990 406679316 633911937 612145430 966571982 953881306 958442313 73124027 96159027 989842189 995665449 836108412 878688047 932925672 999259479 899153117 955941706 170510011 668204814 117553412 950021552 494881193 540815177 865231037 924621110 232576117 804877278 78091884 367736688 509919122 795128336 268705972 801458466 76893352 675514687 522904855 613158297 575034485 971294442 369977089 893201444 484638607 614971466 50288946 830362937 2223662 178326887 929002039 974553012 218430844 969148501 565307973 844411601 783228858 988612734 678233060 756697925 870075194 950727758 790462956 900527834 288440861 310112891 906790693 950122990 452476668 511287158 926783106 945099017 4322694 435082343 95676646 412875067 249401828 536693804 262868581 292534093 853843462 929752180 944653869 994419981 397492346 733449562 672960455 995970417 90161144 144987582 509097548 686902496 415120670 758677529 250463437 816366852 252676608 910455712 13969387 457323419 602130815 940150102 49055315 271917466 653638625 833903261 190784330 412213801 986689771 996685724 257752204 920699339 429908624 944981570 463615599 992249102 15120838 313861274 602021140 602160070 881240279 993268864 345897223 876617893 980683542 986599112 730070908 773510198 146882617 148144515 522728559 982462507 826580449 955702470 312264354 831982651 837499884 888783000 489998098 664448059 221570457 436802562 85724151 651701860 466057971 906301941 185331751 946932695 4567381 286836944 996366291 999293118 192502734 895318144 973957480 980642807 197584738 588891636 561443525 621052617 304033036 665481485 174845541 980486530 949995636 990669870 786217232 869523766 228550977 396656997 232502678 971334201 482357489 899454316 170950642 458473173 377898398 582505294 718410425 903361457 900871949 943717207 279546931 948464507 880021080 988250512 981600114 992969929 555679966 822575501 629618595 809992088 660996282 872261291 972024499 974659634 71246383 455366636 792180892 833557307 711910146 933759539 357628111 980156550 842714774 861092358 526026669 694005009 874617527 953479115 268347701 948733675 181822665 919305292 258276765 379674954 116868872 208253649 802622638 913609385 216888990 519012904 467933546 596512279 702158482 965833970 715784855 831003403 494898240 572719171 954824226 985229191 620517481 778395724 31236880 837119081 484817624 727700301 490843856 952793808 238053369 849746811 571327445 593435298 844105393 935746495 594219848 607324679 718474367 796336145 771392699 804429640 475423574 984408353 280766808 328390173 843973474 993809688 402992043 992441377 256168042 345052812 834204490 888930588 466895660 480151588 646761690 932219728 618204270 730805245 966399985 989963086 149950903 434479708 875520684 955966157 547116391 780514812 127106156 628202602 232899671 724149912 223513932 741528945 643371919 907856253 590668162 599828008 325733238 432280124 558486908 762885107 374535364 723022862 309577073 868304267 931042584 991660623 187587813 998438996 586945860 820738575 511446086 786528972 690226546 881253454 30941587 156288901 609350460 914472571 31127318 178682403 813890348 993300301 488430335 599562786 498798884 845256310 868681080 923489669 663192755 774157419 873425911 955809499 26080979 675109878 204073961 297059483 303973278 308332334 497134087 774159242 429706076 687133048 471687911 640154695 949243368 988070676 170964632 774828317 935689516 986040939 118170510 874599534 621063990 959607627 688166005 771635041 998402011 998483244 769340662 846481642 740044306 872057992 118408569 475092040 726538783 901343883 766151318 828103122 671286358 903803869 138142332 560787479 186713939 571742252 609039270 959541822 332845100 480793444 574266391 782661998 317679708 523485800 274065075 882337099 314349782 606569999 851357898 922603385 867259660 910416042 549455174 730442502 336972950 563765527 460865917 709501552 60068094 743273822 812655049 871911385 591851069 941996741 421879824 768982474 510282541 695827717 949851656 954492752 625844720 641152310 333379861 608338178 198565820 201314381 85543738 638679533 733165133 774418968 710197237 845534488 896244375 976797030 281597074 999266050 990957996 996863157 737556569 840823352 900020266 949393260 820836023 900078783 18565187 354106049 848005846 960782254 703623483 863400533 782586753 965186005 464462432 754837433 686689205 977734922 490147206 870386083 243280114 773723960 457816207 507989221 712507021 942834243 493533370 848448882 148314818 210011639 91090877 639399454 441144628 757697586 105812748 592501132 222049277 598733680 853662651 881996899 267234964 995766232 584321427 608077967 934033945 963026290 179669726 878411525 522527702 852132766 726155007 974100071 642504307 697063550 244691194 376755865 421121575 620405719 407406797 498118267 599648116 994004803 695384433 946095888 193292492 638109284 669744546 881663588 582780491 794862932 675749076 884595538 195190482 911941947 297592816 471601827 528983251 835523539 287233359 980646616 607525035 718606559 812243871 950659035 141450825 707316455 22605624 859988064 211912022 637462087 208884778 312078419 777809363 868440483 483517981 951385123 71456344 389860456 954247964 971073488 624956579 847476971 81765380 959879681 133341142 369225436 213905752 583848657 864397172 872317840 819552332 824040670 72807051 939056435 768666007 870965216 275554313 920435396 803806830 820532425 489069493 655977471 672690823 811524587 934127438 960843108 145152729 972857854 496555345 575184361 868320668 985384310 426638471 897304030 190442578 865081031 533712596 838009672 681836816 780266011 430911650 755223995 589536745 971640739 217906720 673584391 751315594 884405787 612029593 683205796 315745576 417771860 65018526 856530633 997317588 998625532 591129783 781154916 530867259 696870312 352236924 785131062 229095481 643127993 382421309 694429850 670554112 839372863 466997097 627536548 897173865 931317451 8468866 207032122 500139579 796428667 341988434 456354340 947852808 975988116 700701371 712897694 528482593 684804412 452220731 739222650 534697449 947787788 730345060 883428763 335819801 394227794 547495534 691262717 302736583 472236524 249960388 729482743 43604245 403915481 476984745 671516734 131330118 909991640 476880767 927038810 662086482 988297869 857224740 877170495 429385290 630182320 178504712 372968469 357061515 592422751 65076087 466009242 369118378 721096995 516335999 654796745 891043275 915927935 622427318 840418817 306050967 734517250 471319128 969715277 550786623 637158822 627630055 983957696 32674447 497694033 930858314 932930823 842273266 945602537 152043570 779470485 42468441 411701802 664916720 800924992 255972094 981461810 331801506 402260566 403188979 751054411 175788553 503007558 903127702 953144691 306926253 484599308 166272607 957984968 197605578 644957899 107832721 894081409 227159513 625438818 133945395 271042245 282280238 779329995 413456883 575612291 529197527 809923284 904386963 938174009 412345543 889226187 406999416 731199360 519112361 931959359 483825523 760470717 829617496 985395770 78227488 593104129 861493167 959102647 876201652 966661854 871251661 938447531 113608423 532807627 809516632 889181126 854499465 937993710 667137881 733858479 563123407 622967672 542279231 841550282 942265105 962023588 630397974 799234342 238560111 910745147 105018680 478057085 717311941 974258798 12850668 672469366 262051170 843042479 679025684 838355933 842951038 890554701 521482975 832007513 523931534 979883624 291047458 431339124 370239889 838384012 957930126 959964534 818296811 846450491 54467589 424869772 782981860 890991209 880500882 966801053 82688511 431565883 349059415 655098590 214851711 981102078 375777950 428472999 747257670 759910643 746454602 747182843 458235903 790689201 791885754 887343008 185567368 464030650 392168169 741124326 34270582 516713711 26557107 324401392 725250598 924760655 976351343 992414655 50330842 586635141 276874670 594453339 953093419 994882522 368959355 515453280 979043739 992881293 674065420 841266430 492767302 969682418 907709542 978575258 114908486 835943156 662749329 853295705 104166394 767225148 481977749 713992984 103442136 419431906 649458271 891631259 504977062 955341655 746351622 930765453 452967878 821138481 513442367 608989131 172736627 644717186 944174033 975964810 720096017 798286265 766282710 964868773 585041363 751111949 793644892 897150039 746757190 747643536 245851948 692482563 170431064 970674693 673345067 847252973 882273141 938778624 776079304 799710985 964754241 969701531 46483652 151010118 643503832 983004104 750395928 959531029 943463157 957482514 58355063 794530217 338072845 784363949 93282131 266311864 60661079 759672017 173241425 861554371 56628964 640708080 327603139 694136584 876315404 905699110 19154355 852917032 493663686 578667669 202293238 952542967 816007100 857508723 416361615 520101214 819846747 838708399 896100507 961918089 316223433 685076730 445628194 793005862 640026319 718813558 54559502 235780029 782400363 930249276 244127831 838803189 80294301 121664483 899573703 972965327 591573012 701321309 736552868 894865950 109562839 987455191 9225486 445231201 123479288 243133173 971557196 983271080 959078117 982787431 51241182 706457208 306611319 665783331 794799295 899328264 708391611 714611380 403695953 600827148 213249018 509680777 486047468 648614943 188964965 907270891 292275159 876043906 227762349 333271532 346020335 501630821 674022011 979960951 475380143 913139760 496459447 526931645 517853213 619069072 995813102 998504638 393578986 722838689 216858059 923264304 910683463 911760247 950463903 961442631 822254106 895922607 953643351 959968276 188586644 465150978 874879041 978883675 311476200 953051778 810668102 847008546 725964202 948948295 592686504 790094781 969747560 988513297 53093034 303755057 829118214 895287491 986958627 989667099 897568086 932201579 106652186 620058982 287475814 809988529 498861991 755232663 688504189 820815425 68533387 652353321 572985254 772788521 847752112 930736708 399419846 569548746 51237398 531765614 76294572 895476858 404460226 600674583 860910826 898371559 614178219 793121137 321325919 708426364 992004046 993220139 194888642 451399934 176012554 235936841 191373434 999256529 985793145 988861287 642172 463147242 584336918 617726739 218213519 328617066 497016957 803143982 679975002 821177704 339263979 532756201 390231047 880122544 884689750 910431450 456736183 540285270 822397929 991164019 868642523 958563189 78913813 513767868 196518206 972700723 885521883 996729234 403641495 547202705 289465170 775221534 160580408 243764201 725077854 728133578 632289640 898681557 367133780 397410430 474927722 518849436 362961076 430358323 984014259 986460814 780175205 869894140 815000015 936674073 89755587 841700708 423705695 683385454 918933247 972737084 499573356 689719770 142820696 769734943 612416296 980818779 271811030 534145686 245822764 923229161 367180164 525297000 651815899 799235762 414350485 918557411 400850204 689557756 355308301 791806162 340210753 454255620 940068046 956323767 601618655 769601643 225065183 925891632 115188571 305661932 339719238 971613954 942792474 970675089 604392623 632778943 640595220 756232797 467794855 773932424 888853380 933539626 522600542 940269950 248225673 303828234 819608800 912293299 500904919 781003363 875003852 972385800 137005208 908770739 159489324 797574302 562839764 803407149 769642937 773834630 933356119 933883019 767821454 936588742 296033372 982055211 529810741 650107446 663673335 677416921 605867071 714433835 659578038 711405868 524659298 705264247 523542508 523700074 380192035 649031376 766873067 940015494 961275005 993415163 832039553 972524475 70229258 130802431 180998836 400414113 348584119 885051017 554447446 814724848 48887033 827104148 384183995 952831317 486928430 490032382 716677452 792670308 3795356 15467475 910967022 938942988 85504564 575461793 111852161 531362851 751727288 964303660 278994999 521172061 85325521 172352149 565412470 885979750 46243083 346429966 704424232 980262362 431452361 544614432 617017056 788342736 733606428 868184710 45173744 833434704 529979156 602676308 495171801 532516336 655162489 731292902 43783206 104109261 596725758 849070150 750092754 924366880 515260119 853505406 758154596 909062814 979488570 980705127 635872082 765524055 367378049 450579850 507403278 595873671 123591533 989914340 158730362 551355049 349153102 599076245 647042732 840724293 120026082 817150752 146445534 682793786 187528562 786602584 780203410 783053639 538031756 863915281 54588313 173002462 844767928 928309599 332696944 446460098 968162565 980540034 791922405 848832461 275515577 439359778 665491213 869018536 56190537 301880378 429496244 431891869 380553137 486744503 980340105 993183226 468517563 634545981 411416361 815085784 810927915 992658029 921283941 970298054 904542162 998941321 990939922 999261829 551803244 737392095 545744015 579940794 667217617 949848999 259825106 827173865 291243755 973800927 539314306 889030277 715662994 997553561 767790409 790624596 503249308 667493111 589053569 607616140 474265471 863557822 978599956 989217970 264884106 858298891 478675693 657177186 799501198 893365027 321145046 648799876 579064375 673251216 979976852 980601936 683862241 916172676 373099116 825393126 654052035 994383263 485093857 570918023 328670732 949065347 548681608 752809175 71766624 544737443 436146061 867283133 533938856 968550783 954967218 956236587 110534791 791744353 335970185 578997748 566665998 785423501 572734424 762240766 358657209 413490762 731427508 773252675 673287908 913857263 170652603 641110491 266481445 851640537 834736296 990916427 825912321 943604349 264678545 608441018 563515743 833265457 736715802 920169732 707619385 968672536 614099376 911395943 597572857 697324169 887732508 994786528 589699859 887045827 788204848 983175835 527266078 986723309 948096385 956457255 257384033 551172850 700130027 948594287 534200227 741543793 124011695 278255971 745601540 785686557 794080468 795550987 891633971 980556481 724941521 825065749 100037346 783923906 865911928 904819702 692765299 910661688 331081696 449953276 150303660 235533699 323616983 374891654 1428264 173155717 715236524 734900431 426536783 428000388 635071805 765354571 234526455 703773603 139775310 409289398 968373849 977979844 924165780 993950376 360144009 934430265 517666948 617771907 980446693 991187226 174565890 248368322 289391828 971388766 395055510 504342444 228180580 552955857 376487990 569866602 96818419 592265740 208360529 988028427 679606465 833055335 439572008 650087143 144910561 274400887 744846837 845671668 164856217 454273770 982251989 985232015 333569965 486108391 875448739 977379187 53568292 345726965 11505251 102315782 95742911 229079427 697294057 703575336 93788297 334718928 757405073 902236801 75982085 158869932 518968890 971278291 668939096 739304688 144426101 579759150 305345557 478314371 506308595 953246641 963107107 988774394 885691609 979911158 25131654 701792136 499383355 533011496 763536066 811420143 475202751 697438831 664327305 838401100 414999835 503014777 390755885 486830706 838724143 973886230 81922051 407213607 890859225 895544739 846596628 851403651 382076927 414156772 167242844 541524987 583023614 957746716 104357633 604059201 155521794 696495795 864900674 966207961 593737198 912614929 580830389 630854721 212483265 739671633 310702003 563862826 294354322 881876216 714647936 803643262 874965351 916018184 78247389 377558546 557562809 618751798 323750048 756509157 695693884 829597295 320660649 459243314 859315165 972838977 611210835 841004899 761391452 829125520 533781912 550643828 934991423 953053086 847125538 852421294 580086160 732112651 562690361 804109770 989752700 991622420 920497546 927078336 631905427 837753260 942665413 959453781 485183046 936227233 149638164 561794483 846940151 882059671 800485700 945253208 470950226 615653167 148003322 703942999 611116465 781334837 311205613 462735583 497198897 560200448 547680760 866654437 627952940 711312841 926577608 998644365 829753953 846501954 104016297 573911084 436770466 525837182 209836572 279630540 517589937 922199839 355216925 463952430 502123970 672910999 495384114 950267111 91011506 518011781 795729549 927573755 312752919 841028218 39381719 840653837 469666789 983359708 265291777 361647044 611038896 990935753 683154882 846822380 688589543 862630875 117908378 340319104 296228169 313620036 70989637 969895580 312090258 437155929 565702736 960041379 302399141 358820029 118425536 641131174 978404307 984394449 232794176 737846038 191650735 813409736 293799586 563394716 587157725 971661892 506087233 719454875 136702086 487635482 540187689 869129852 91714565 908532600 99726569 499206264 236532640 489745718 944876671 980688125 981220863 986446416 339227867 901368339 392920861 768116255 672468599 770597865 287671728 653910188 551499174 933477770 885506142 888453757 297148452 491376867 134705166 173520184 922751018 965791317 273129978 980693108 556121634 695162627 948687047 981576759 241659813 982501984 841331968 964800625 741664069 834031483 543390345 921701283 781717549 996407974 845881350 903263446 138773165 487583261 887379981 979622935 305917026 309664931 842856684 884894385 577602693 997289057 104737540 170567645 462766898 694964953 226673757 582546062 646680066 766683388 218867631 289599102 277804328 856375158 31459668 792829058 829264522 899176429 909068754 951714788 702626216 941556957 559029906 952362233 968396419 989790482 715639425 931076892 865938589 932600385 842323031 858657496 415591376 731714549 848733430 970620781 865714125 963552174 809197461 952143395 351792790 464142772 728252228 763902757 18806355 433506935 373217882 562126984 495869342 870959033 26743372 371241421 460500869 725240821 625654568 919345677 72569326 907652732 296368139 500463626 229174741 808503523 179868863 458828167 666219758 878610372 656445480 909870043 846606996 985774086 464896805 618452694 692245071 902480236 715999578 943616507 387660806 668248745 62635425 956412316 857913726 922847756 400425530 635371190 882077789 998862952 583992185 933771629 522916006 941585038 965865485 997752182 594957886 905145525 974943974 983624795 272728708 448594105 822882767 913313028 791870270 999241157 37053009 209765339 691474428 747556056 2044118 253419194 131724385 912893111 664288764 669119395 696169958 733228093 693255076 839911808 65529376 395601884 325478167 474281082 991737404 993294761 565755147 702700779 412897993 816643599 537455844 937417518 706729083 937349621 685936695 695690863 502835515 533710039 3515320 915884970 382045848 550761096 190118993 681984600 495457567 603511026 36165650 522439300 95460911 224811056 285453033 392044548 107924845 954652084 834097017 917643606 552254288 653812761 23517682 897761780 328527239 337709589 634793815 739676719 19364555 635645994 13453574 121447432 301342451 822852837 857603528 920937785 414433916 783340084 401777060 508621365 53066421 590663938 326827191 360533752 693524794 729151726 423073307 731403374 428795491 725217458 540930279 947024062 529024479 652638213 574486844 973175168 598070549 875673946 840309437 976335434 837526524 838594678 60902061 716417992 479126562 742025513 783459694 957140205 574801950 618828208 764155467 964088807 726298758 944287175 140607959 223269745 250962212 579790500 476900514 552969759 236365048 452305926 941502020 982325791 204023640 983908718 416959250 834580272 615867599 859598688 326732124 674165187 237523766 915987338 300887672 684270742 396701751 958136153 317859115 914076756 996635904 998463434 89621485 620905318 442655896 773070543 476111005 609539770 863916828 881797063 578668006 920234839 204744567 989151137 502487397 533309274 654441529 952673390 605403454 875832418 342043313 447496735 919017491 963325636 357003692 771641527 230933843 251647227 720325888 872653485 272440192 608713295 347392822 353963386 892678466 968819851 814377906 833076241 241430534 737030726 464377011 739047506 325993337 554828891 79751990 371633040 626806980 828614132 487107998 532267499 128850446 844757200 801881381 983944724 719756471 896108019 358223722 894128479 422958343 752245579 669381324 878498965 223048714 506460980 864540576 938325190 620910339 779359422 630230811 872330794 258445771 369398927 917535589 972654908 146040830 249538165 585796775 820011741 940111424 949027870 349426485 501623762 95978203 664270776 904079395 982913797 42537850 662135497 994688828 998605182 532505015 543151721 464843348 738905537 195551312 711656956 520067170 748323662 946822714 992862865 795730848 974571986 695577801 770777280 798579433 868422798 318529591 882821678 121379674 759679192 840962736 934140648 492333041 553384690 286712039 437270379 515892483 953278829 847925659 923445304 456181536 475068595 744692699 912840516 644673876 726986641 234336446 931396680 34235027 606707553 370500355 984202064 57604291 289950714 448706613 647227676 934615508 953613847 428475722 428886192 604031476 897099487 969354155 977398677 104276825 194166292 257528941 539502719 370206569 740073642 462366399 587567275 203996257 753347298 455997832 688531914 618828669 810846906 341896884 924273387 595639910 678657272 503622702 604982253 144828979 910401972 986194277 989085679 579518031 762466692 29822934 754365907 46825003 491942788 46475331 741416279 50392050 769874490 708295668 951882879 396603730 584299389 666819562 834790679 134053760 891411369 876277686 940005364 921282148 984884015 520453321 946063298 573541908 893508562 182906023 534879069 342639374 731179370 860704134 904539233 850739785 995275831 806189983 811158925 146303799 716569041 600019348 625492427 115424068 972712466 642856543 643485967 282419132 310936642 281285030 384419785 153468895 969662509 456414506 875324143 470791582 912323039 415133157 928072736 108342816 424370972 697799650 815638544 528777728 821520324 264817060 982066658 163366569 376289535 623791703 948343195 991335958 992460099 883992644 956945392 338909399 842999932 711595071 973633792 576895429 643342285 881474107 912367502 21103229 409289134 599394077 778400296 967980675 989828572 168556042 730957985 504996757 886349691 218925522 618230472 344373560 379453844 190725122 898063947 362203799 626763049 176234648 614313325 864710361 877906436 462917725 855970225 831173949 970333940 570780768 691845348 659233201 805693224 449661491 850973452 187937090 446370529 328096296 554304836 126621540 673685814 245400481 911376600 989052712 992782106 89945931 884226570 134532969 958437066 284052200 796165310 298843956 511787647 712211974 727585764 177052135 607455279 110215695 384367066 897372260 932539205 363652555 395389871 393607967 794401593 774041939 931770467 62828001 228553341 941014727 954612028 989745300 997034591 572631449 704632162 574388200 771287261 682568710 845939140 694769933 814152899 775834997 964470219 603825735 696815583 140350707 572729912 745528672 949212388 526222254 934651856 281538393 530396868 344949945 722962407 201028276 832543739 683758755 762509331 550025551 571923944 792924764 944934026 759488756 923817232 321609765 758009672 307662783 974321303 821734570 926837948 359830476 852377996 38679836 783436293 902450849 907318291 292956563 468783909 918238554 989110732 398330219 739512309 617216142 705658776 436351901 811834046 274180048 945260268 384487869 573841482 751415576 978170013 531445357 782793217 117747759 775930433 676460770 955769774 658245987 743889920 775040383 908086993 17169399 42783414 102928154 313921043 513253122 812034472 914964720 974450367 427094648 810880684 532526217 648556873 786027719 906744350 631704764 976429157 502430728 923719527 864582904 992583913 199456897 413958220 74362664 822552470 339362476 584422488 743336939 910200069 505462144 828523315 641290054 774140135 343686549 501888917 189175691 794133534 25292494 650512073 320324883 646259162 319087078 771493975 211635705 303967225 8712816 870080035 948476160 954480335 824109637 946370021 936893659 974212449 258964801 723430985 166559709 348930851 692072164 961512226 826766375 884316887 995131045 996148501 827947238 884759285 332068789 482504295 44185506 967007532 949377458 987503993 476826499 496099827 535582697 882522672 577111585 620160679 457299494 919358005 461922079 564340744 937720901 997858772 862627320 942783316 563509238 966052523 903806504 966573833 31536673 498839851 937510513 995968153 73242098 130966162 539359307 736027206 201104083 793340784 907630719 998011003 766314151 930930769 532075600 854308903 891283624 903607413 505439200 598313798 806741468 977403092 781950002 944445606 542023430 941305899 767619303 876215596 280145065 480330070 11502600 953954564 712276586 953689555 750688757 951908988 86869062 280673235 709153015 830722017 785782117 825226508 307768238 662653728 469948164 645841448 295278633 942276507 956501005 966249463 219236491 840032790 190922377 774634080 913967516 956672284 649628529 981771586 837199180 847617205 697092616 828996081 830930443 989590222 87089637 363297154 971822549 980266555 705877466 937791871 621279776 991351536 944738297 997270822 72056478 963540599 380196711 730413065 124502456 396663167 923754927 978599540 238264692 897815443 185847830 519040742 245848567 281490700 729235876 788726501 556471215 579036557 427192517 990874006 52881204 77699964 385288940 435500392 426696490 609384030 261679446 593603153 387363016 446463658 266633212 383091412 983929161 984974902 200481610 600723846 671295980 879188079 673562284 803483676 507012693 939256945 252727247 524703623 952470695 956353463 365680297 561770737 655421840 675893118 190612543 890757772 476955506 763878327 717977570 951537300 903933807 988547827 14000521 718712524 501581451 990243759 640538216 793573627 417028927 635903099 360192063 795056667 805546140 913590986 892585747 949307017 457427305 817548438 504974051 725167654 330448296 507171010 665306829 769247671 545107977 660884636 979114345 984137284 665819140 727949362 581747748 909605543 843188507 948872266 750430364 901761748 942972433 960168264 433554837 835876083 784026296 824224372 176822974 734822211 430562849 533770331 451335286 779570874 222134418 280413379 58794681 213001518 749279585 885530914 311610549 729981650 212873797 674740845 713718610 940611042 920931948 958888270 493926629 563363788 698369251 769542265 78487710 542002815 258633389 515631880 781181403 872088300 963250999 973105421 506606069 585291558 337966182 929160726 578486970 839643974 286715081 431875168 537823219 548830691 548477668 730784795 731040696 796562151 278385794 833964261 306503207 779448653 750126890 763673410 303357564 727537555 419319694 875237253 846839516 868842285 237058579 859925705 601705934 759732566 409118638 802233087 325764094 816936464 686237001 978273014 363356648 463087618 623955556 804962854 238518065 364753186 63591086 990037528 461314819 940132167 202054284 852902933 836206023 861923668 197993439 310399631 195082981 790647011 201772248 350674796 937697548 985197806 529225282 932584106 793476151 858292926 878995626 942559231 239742915 986047904 802643912 925339631 152847875 230970662 907487503 983005308 673941735 795536368 201312466 937114772 675381929 984866010 680253207 950819603 565090098 811025894 902588029 916535848 498176486 558611781 753370042 861495124 178691158 212764582 179234005 573543868 915368893 967326809 802709119 808896119 576819581 852238021 16602416 945653929 804610351 943258783 224716355 365359251 198594080 571625850 557920853 804439119 198037817 358912998 684051420 938884998 620884892 902375004 668764422 680252467 563174778 957390572 109677535 704770993 461010711 644117942 670212894 791781342 919305847 922568543 65171677 131206699 787562129 814858216 303198011 780318545 204121598 742053301 745307418 950910535 628894110 847065051 537160674 570126018 463551336 597586013 87435542 702357836 353523459 880186180 527308372 989811060 905945390 945327269 462117193 606263416 772393542 865851581 961916178 977040311 46140696 606465905 339774421 749327418 451997994 755077759 79251249 183638911 99753172 707178116 440988355 852267803 345332389 784837632 771486452 992978162 567349315 841052399 279235487 474989147 678239683 735593248 818688715 959881311 346856683 784687015 609085033 857604326 980474273 992186097 555888260 650433596 403166103 852006578 933489002 944979032 677921753 695845044 990380735 990792625 242683431 734155074 634658528 673213616 474410912 711377998 383105869 977397134 749103561 763974170 845313043 888087430 374938147 507469813 133618938 386551845 178721281 243091648 658587933 685735879 96223957 835628479 255707732 563423036 713392980 987392923 660704909 910875698 114802091 426256054 946292228 977111047 140723789 460705987 119523097 186817221 328407249 645043934 717973619 975778831 351013437 989826460 824365362 900388329 467104843 618723965 903210023 919207641 79111802 966995919 126444086 526090806 65268860 886948756 603955297 915116213 925002399 953250696 481080328 924505823 482684682 924996974 329413289 965796425 176129311 678355012 745138425 941681603 284836214 405433255 6167897 867948768 389585098 654514951 241210721 290737065 990270573 992244271 374270508 611361611 604671353 671713034 83493410 581869133 193116985 403745721 364106581 625574922 542286568 637205604 467295546 631984141 783857288 919518740 876211924 937842284 825998112 842856250 423877138 931953541 50490404 683722322 896443935 965986874 250048962 270296621 184330239 885905397 166479495 344634448 669715869 964587654 467905971 690005603 444341556 692406003 822331618 876016983 274113657 719137246 778412111 911377068 820873479 890939012 259979245 307232933 698128648 763729421 419729959 485767788 420687197 946920509 251809973 848760967 581358766 742823657 819769257 970636947 436158917 558496025 665559068 762983847 421409175 721587858 91355868 740913966 308176802 425816128 701902733 752639295 616970255 888937650 869179904 988626350 618201297 700207120 119427550 822149433 796025613 941295654 973556772 973879056 754524250 822263306 164992592 652262180 67741565 406127520 245119479 752330828 649684062 771189429 779766764 809598796 148289174 231988919 582798307 615018161 676864662 711860109 142173896 643176310 969099296 973689904 620006168 894272715 531319994 960726870 165991215 211286025 76660207 267793583 742282780 869741383 760584220 929788389 105734094 970606063 113244898 332206904 282085311 299357325 209422114 610037930 453681011 486587109 808250932 879060928 878407214 943055335 521721822 551290617 15242534 854328092 277013331 691339907 520624374 724046459 240579551 738111904 773371262 900562229 80629591 942723779 538645027 542667050 665303245 684308196 337397268 621294497 857548755 908242458 566793487 899659784 262349012 812394079 46046678 918845566 475688905 712870363 209923150 593357404 235030596 749085349 193617861 255953464 726879486 903145613 904101840 973863062 856859076 892676389 90139533 668432440 135750930 728776558 11593927 680780870 85803231 193982648 496011574 920395880 906231369 987249678 645659696 725566421 713939712 887383354 572334369 728301133 272231911 495256588 272929130 526703786 166799642 762036040 489159398 508169262 930653127 935287895 713387505 847559230 526833476 756694329 297639936 518574045 536791928 759932684 556814273 609897804 634657615 904607474 23776433 973881826 146100697 572336736 628915792 918551175 704815547 803759668 895119148 943344521 127954431 585669160 537187397 582924801 472193676 759760327 86975103 750441640 116723900 208606220 910441249 912436782 333479855 809489235 993910213 994053260 416015687 923459170 648577084 870871511 997047402 997547316 590961395 808487686 281904221 800333294 531332980 641549242 180606591 182992075 53808891 183584185 255354795 497089715 182041586 366920316 712011170 777563893 409988338 508593387 692936179 784163723 606536063 644042726 427539816 893116987 55908038 117106543 768948578 950583221 639528845 983118124 829946470 888431316 207175204 567227070 798326782 976944068 581965674 953950348 537681753 829346989 953521094 988533579 11284249 301849372 629725253 810430627 882341290 955312698 892818891 922870076 510836609 993774443 451328017 532478962 558910960 877158684 703018065 754136209 447743109 920893496 182184713 519063465 575150559 761907083 740511914 926017685 988591975 999258241 730935536 765115790 365072571 370750187 540228795 663356489 913802809 938287637 800573717 970114446 735130126 838663313 751621113 797662973 408864241 916157104 545953113 649875151 324656079 570487184 754134613 816791049 327064665 670674312 540711498 793964104 932122306 988911775 160775689 375619673 76563207 187111175 222834707 672181326 275789224 576495107 282894676 896604155 522753542 924893258 848758065 931653539 82692737 593359044 64226263 644091140 546197937 913912846 776275065 990082721 759028714 928012149 479645042 982373036 706737160 830686357 465412464 939772691 505864750 966797202 123819119 996979867 334792659 694348209 829480157 951357115 196766286 779414577 871953831 947823143 724166890 797319818 397393463 693359465 341220452 409341838 675732782 896297211 679920721 822822983 647813367 996020148 312661378 584553449 238534794 821745552 466303727 666907406 283862540 861256730 823421613 883222963 508018640 850238286 854342119 995548088 25989226 356475884 910974588 959297555 881664388 894861048 170587282 956428776 863448464 884405141 343154907 856887994 511831318 643860623 499113827 639184424 931765951 971714187 468180067 554177020 138946542 646226579 536583886 622802644 105647487 146399109 369579529 489809929 55442843 819852324 813166904 997527706 30109167 477758140 591249289 631968905 376338362 392124792 148840880 169242433 772799173 958507609 259495130 630130136 670249522 739401167 10467410 785530662 539333328 883252305 397635761 795295873 402007886 562064076 225176646 466785748 655281052 728862264 531646525 574212475 140070415 357347211 732906659 811920238 33709510 513613658 833163560 960347748 141855674 604741937 762083433 788731605 160537060 791131607 734430427 851928751 443820005 569872215 535887890 853083349 778608568 976799898 853961128 936159374 395736716 913575588 242277382 424827587 44858392 311726263 672007329 870971957 265513860 512288878 489555448 835591275 548560125 716912689 95707751 923745009 163570960 996820066 812569705 838313683 458599118 603693474 94071123 879491093 62946061 88302908 440790698 913404308 39836860 753143267 312787580 331732702 70244023 474891683 649687086 886049454 783272060 865174785 8433683 42853817 263553263 784690454 395083084 768297944 1332994 344974765 440908069 442287880 767534110 956142246 277772212 446775901 898139890 951374339 276193371 813529436 6399787 738653773 654010294 970160979 728947051 930501276 706760692 994941007 936554455 990759960 449519127 833571101 896906560 937972207 689020902 757985323 716893495 763190613 658173017 673988190 113676475 143702464 761201326 880301942 659397111 907617086 309365492 646781575 680334206 916512229 589060274 733581241 595858899 660248350 82937603 406466432 789832232 968297685 108193585 960481921 881406168 985726634 774508738 863982132 675985236 953162544 708749991 885242100 955665014 966578495 413059353 524279082 705054907 805944389 953660630 980146401 149325782 702157764 744258721 894466900 799971698 814932594 868159847 921875078 965482972 987602502 333121684 591049233 923751020 941712293 883528228 943320546 768909253 928013838 493165668 739874633 79675786 728561059 292987990 734290552 821771676 893663178 97549923 668973011 296958582 663918517 144273431 641909842 872543166 895248836 303951232 397550365 758050161 881352452 138578488 433565678 509227844 703701714 510610366 629243648 568665051 842307106 488342586 539564169 124121128 387848231 650683943 877369100 861291174 948881409 606882374 925166179 746964681 977350573 502966397 977051345 269936589 645722497 928766931 975826699 943874932 944604794 978994960 982488328 452693091 514899518 133495767 650131915 542143168 606335693 364830447 920517755 221927397 373963357 708713103 751266639 280132607 405337763 631237813 964041904 655492393 840167325 560628861 629385548 203355073 595468247 765768137 869675682 203896650 840011821 798494717 873424984 675359120 787660710 507705675 564193682 408440768 515370206 307179399 801883635 287446627 768549999 28587514 298040183 444035995 916301079 157713105 308708406 141999874 641344791 390589578 613067575 865024710 873583841 344825403 886211463 976944469 994844459 402068520 678142179 964780317 968069974 497333498 711301768 245963367 982199302 445755957 789910769 675321922 709574944 379692736 951076879 925201446 953441602 726860647 870356648 718046025 891613689 43410525 165551825 940511986 960907629 130077817 187607041 971187227 992539602 355598315 891200257 681571418 907352943 868074971 970784480 726168946 965864913 538456885 567502259 158765998 409624445 309196796 907939081 250826380 876905439 267224015 272042156 457753045 634841352 124494612 350199700 488233940 928779694 457770111 941636228 367842001 380892120 468221927 502391070 559192379 801560906 639778849 879117645 575385549 852448263 830414706 842162592 412869464 988348746 837711909 942457747 322034090 387423059 127719902 129056040 590148629 684746835 104698346 549304217 28170681 831153225 425643028 905854598 349311282 503439665 449577033 850063755 236280136 346143998 426258794 593015548 784912629 940764629 998166891 998865470 618871748 975538081 304958994 370838205 191649372 784723680 298807577 870110843 76654919 241564571 157719818 274492909 355936634 704259296 967099844 977442159 901417519 980704704 451142958 760811394 212849777 790103105 252733189 275789350 539861048 588314662 955005178 990069768 745078644 835397948 522512765 772223028 343990325 878918920 288441841 684353550 298641141 706126450 694384092 762805249 496598914 854855505 286077035 705499166 330658469 704042860 322986260 496647152 462857873 472709179 690981235 711823606 904536560 980222307 49154339 449255129 329678503 658748909 703911114 896255359 203598339 932752403 944175291 966929456 713680489 950626251 983367996 995564559 367860838 764319976 524869347 853788031 947650227 968898191 213303588 687059965 350148954 486158635 466230073 794954853 889109375 958932950 432314744 914992984 813564705 969184525 328157421 582816735 473343355 604647025 569224961 986700549 338365920 902814216 968841056 981832698 530261827 532937422 761496613 878618680 747738786 990564902 237269687 380269947 131202155 508914996 641156293 675930350 713553576 938103082 405871256 907332294 326179678 392422835 192151248 504118849 822546899 949302268 496285494 621845445 307798128 832878985 106158158 583664990 1721879 138005452 667575606 727050400 477141723 779404653 744974881 746679411 664603550 813875331 843856776 993144465 425407096 440606782 747949701 848466600 361090951 479017836 227513864 902153692 82208131 312429147 269625138 633485961 837229983 843161068 923943149 990882117 396418574 820846929 507645875 555058620 852202098 900525870 31758682 786444565 683051611 702888271 625254585 935552910 582771842 664142159 215822414 673230177 385933560 727051568 143441148 829489640 205958438 491443324 392153579 398772876 785281863 949250471 892971848 922390966 925701662 994080519 316716893 406749836 793177117 895079521 918350941 969337209 82481388 641354646 145018410 329816539 273797764 662574720 761955967 946207488 400796036 781924778 839457335 867508131 5131377 646406513 767530906 844992735 171122848 459893063 948658707 998805796 368693679 523380905 922032361 930255696 576769776 702050072 737687614 869428296 292878321 817829767 980942753 991361469 48046044 582881550 643025779 852110094 991780923 992956502 383622556 531410855 434949334 941569992 810931592 917468931 146490845 815329477 154903552 446185690 737130495 775287494 571712054 951151785 332836236 920631200 911335617 946158456 319029666 525150377 36818935 494538427 356874744 939380856 26442419 925690239 544535975 881391370 329059348 508854324 444686295 921397242 612057019 706184930 130946037 826455522 558083964 757024957 51331504 483580762 220415264 816831262 37794013 366979875 345463246 375719423 355826965 796080135 431506761 938723297 635840019 877332690 322408430 728937182 449468383 749923745 55794412 701023043 410452210 460732567 928600173 968180007 210823144 218962438 202851779 337978091 500751358 787527390 472617238 789568510 915086955 930808202 505425496 514732630 639832515 647737163 407746139 992317507 822372196 937303450 380502552 956582094 803250329 939926423 739455646 756194030 266457613 535796965 90820168 982197465 244011835 356230276 158064713 801691884 153516026 539150478 798669301 953992150 870949700 991933354 264711179 767372698 264663287 760981055 108465294 539581515 409580027 869144201 802302247 822275723 408816025 641355720 353986580 780925125 342154527 607688030 532302412 545314505 785629553 918035341 830602610 937307546 984696947 985105618 668798609 825652791 464427294 774844173 613513319 975268112 473796950 568840460 996168193 996924927 369719653 874944716 221699034 421165452 985038399 990322400 466333859 692896855 495681959 974842990 366967572 778609850 742751821 877508647 818957803 848305741 377134528 455619015 693401818 760647077 761754829 942174460 727874024 782636326 720131305 906609594 937762937 988946206 9328569 77615560 872149901 919441888 894453852 955819284 425220443 702962766 188032125 369876825 44585731 531904943 271921729 899146686 366131490 885926643 376311488 528089051 160211971 780616068 883211233 934761282 993244590 994699001 552921788 870245287 144177312 425173734 59146978 685388402 302637607 945754731 702476080 943484054 695740502 903359999 35650314 890560798 616043772 874094694 556994701 952663484 251038743 384776165 340399108 417460829 161990272 827879339 588357999 816352048 102226195 189903462 224301381 631174264 606458062 937128374 447396252 855014049 288417490 903867401 865223463 913720659 81961525 749130614 900846304 909081808 671381128 946148480 377494060 876585447 197757412 313463627 311167241 636274546 785926483 957020931 580952540 951857344 142915276 696395389 831438788 860788988 538239094 904699003 853896251 923135136 375124397 983038797 49043719 957501459 275589968 509971872 687179622 948871194 698416508 866875153 356599439 669308646 112843482 251297649 834976101 987121891 873422376 945356482 530858049 588872834 584554718 635047123 886055586 988427474 943058006 982430842 534440781 817669563 897211048 961662496 529767094 895051138 523132011 779895454 536144337 880701217 54898523 922427253 259648152 455111400 874722319 986698572 213418509 546392675 699137273 929439454 211896241 509372806 953276953 998677147 67939839 331458556 479572295 910471319 933082701 970423208 593758097 981478362 49637506 254012629 346974438 500225287 176966448 515418294 784264170 865341650 8361320 797547996 763416183 939335597 940398048 964180990 491758299 615195376 244387933 671347692 517278846 871911113 333781655 557384625 88392057 468953996 815399765 820115601 949037993 971324702 228948363 290270682 859319841 936839239 958531481 989094638 172618358 333798863 670507917 753958895 820071975 860461238 188573974 630928967 98546583 627307362 303433881 740175418 731153438 783134024 783432581 824257136 919186327 980512087 878660618 979183516 770453120 909868736 806623881 950215739 328182709 388889045 990342784 991488019 728682099 951829340 656985390 920554762 311215107 349608884 21712019 750925798 267391183 845116043 821621378 992442072 348953906 536698906 891818113 979638681 51558855 208999847 666998708 796068179 433769442 910009136 716977269 754303938 753552196 985056499 383932887 762551429 277761672 613333860 237405289 830443455 550579361 647801923 91617558 150359800 894444685 951166922 164153670 987310536 785095594 964751911 366532793 561543673 222617432 656892819 295459812 611317210 173420435 709214403 595053554 846022055 157680730 342089497 726637330 967695634 518393814 627874643 137568282 299394475 99068444 189569388 664206849 944892659 618293705 914706340 933862137 961954054 520444687 902852706 779413508 881046354 593046788 981950597 366998883 854723240 785749965 894773098 438554814 868904753 408138670 587057089 544890287 599814158 860037461 991347843 343842713 603533313 82051462 262953260 236738777 430051051 927784176 959959488 258954022 356416439 736687707 936650471 647220168 928600848 693501417 713867809 944270109 999069996 484475258 818652971 424065669 762687763 868553652 877227989 616647290 920802866 987586268 991609027 594263770 886676336 776748869 993121737 575297215 766696011 720816528 983900072 252740370 399331203 810335443 972905575 375828343 605416902 740748643 996245677 486911348 648708642 726860707 807476269 418155675 852095309 326983329 367254960 803712798 848157892 812274560 945192133 918665662 977026914 36865748 877577009 747094194 840982938 343123595 362481173 162308256 311255029 126060401 987967882 9102430 650831869 260945593 878238013 777989408 814007493 523178501 926939039 442719336 671776599 187430101 523374541 129722639 962293592 775306826 846209942 576321535 749108432 366678691 535709264 523262383 800738352 370370938 405560917 503189669 516352317 667659615 848592443 860684293 936486292 801537233 850990112 941478153 995718047 330017790 586886408 24718254 825539884 902070362 988008717 259607509 375257857 288505341 681904512 850839371 998530585 145696022 364884520 28802803 694368075 831071533 979745503 657097714 965091976 239590369 735376179 819213044 968156734 471979791 485993465 469776336 516902925 135099094 526867236 187855245 990142852 928775405 987988832 885862890 972836040 981356697 994710343 83372931 344818392 621326369 705299432 584621887 795448850 127280557 636693875 568722579 640026634 515703947 784322383 814740013 916243295 428829844 780999345 657972438 875432967 29572206 296225351 451050277 610781083 396256951 606063019 172756916 704626930 467246359 896507963 560659082 819476954 652793683 920612790 725946850 903609049 69564767 528117330 107401016 890439864 345925374 504125775 192244744 790858769 593262125 746330882 426520508 953980675 812251291 877736925 39887100 513681196 95999395 577351591 407759852 897688873 697186651 754128255 16885964 355693455 278766236 452193992 323029358 828951779 891851528 966798113 640142900 730995952 146972321 267621760 16907130 878247075 161862968 856528597 665766203 801256360 99108772 469948468 60581526 513287070 754202750 969039387 942616316 957758234 48243282 218348766 799495369 820193418 713711809 878791519 155659508 776845790 205588279 546745356 725007679 846801991 389048067 714166246 287185182 379237988 958116689 968052055 155257833 256749482 18483179 325613236 968287065 985252821 497013635 907961986 692201590 915816625 332406527 616518564 630444785 920724574 807650067 862868081 817050629 941163689 607159034 984028948 233416372 893206351 406330227 884477492 906693554 989578868 821742379 977619024 230569761 450587624 72609659 768827098 263215690 611619386 252078161 441388341 913725495 993295696 198391428 633662466 529444049 535992694 492208768 832017339 36217297 460895170 674303025 674696876 715217321 907431903 71010921 542935896 743439804 890949289 808866344 920792694 701080285 800638240 989180104 997757467 902271773 942055666 900482801 988399516 904210863 937059235 525017356 643268524 832244272 849287230 765444598 997022738 746968523 931250255 418032643 529116980 274320291 355372135 711386626 817801212 487280483 740443904 630325354 881220458 665503408 776152268 326590214 860926329 549854946 954695172 559874267 616623567 504086057 595518014 159946489 393439993 44798176 485788720 682418583 912549578 327245333 847453606 910552184 991536175 669307216 811733589 101108796 416601975 286683622 355867778 997103332 999010275 216364228 929912053 993583386 997351762 74270016 755412840 660653331 873611836 967162656 985311230 983867088 987281470 410792217 811603348 307552662 995035197 180942936 305534376 125866283 279968887 739605010 865987763 263684714 886598190 628421337 938225975 583446013 931926036 751121848 919389598 972237439 974403731 121016010 510489261 856350214 877454548 249426077 962847748 81746 336473642 646746222 728146021 219156086 448962306 573372340 690109447 355108087 893277898 731305372 867971140 150680801 949427595 175710847 459880131 696590607 922632779 959503944 990221099 85342592 356770175 619098098 802998633 133712754 310206896 443187754 584978714 784619400 800300258 329052095 417803774 920847551 988553816 881830611 913254072 86102066 720821754 559193941 757921572 981091053 983954085 468740338 976405500 763562641 808962832 464542592 728552535 342036616 787304097 808364843 953198425 363932622 625694766 872722833 973287253 748941532 849344427 489534254 559262281 987681240 992983511 1223151 240921522 883871241 952065367 211441747 724285613 244827795 727539860 113953435 728278086 148014505 620378815 201922838 390422027 829586997 911597150 684500983 832657688 63788952 682999154 56769910 163644540 807959047 818521335 427119099 821442354 813900557 828219294 435386357 591744386 252705276 780137778 512419553 726924761 99819705 257222192 329550566 777809271 185814478 972941351 672760306 689001385 228870767 593440580 909650379 926506707 556328191 593942221 849568009 912448329 653815364 756320120 410674500 938801653 8384060 20237966 814869576 887447303 82864668 188792950 450419537 635703024 391514641 838593543 297493246 634651245 691941767 928067510 696034538 889019638 47753402 795705802 405215975 670405909 803015440 821413451 226118924 313082553 224729273 945923108 767982417 854147858 96262030 656565660 608673103 938700076 640666948 946994212 452261617 466879579 912415702 949804990 449776284 692657854 868461978 970231064 317557340 926915503 929372067 981586009 396051858 418063074 586660513 787081741 950918788 982890552 335484565 477843991 697913552 711980280 890996101 909972961 943372680 983893399 695438572 856194162 986845054 987071567 294449043 383736140 205615248 402899028 984124180 998034779 894419382 959629325 946101851 998622494 386608820 673394456 31908036 492893365 143668068 796359941 322733121 498444532 49863520 830217298 351767333 374669131 670000034 768917560 117988616 545663917 347152082 991100905 419022341 431922102 225679608 830843275 665399416 910754951 54519080 58398680 381820260 841145638 333471671 922566070 508236804 732826612 764540298 780396071 56146854 610838738 347542070 840179956 978693581 997891020 448909563 764277549 860561166 971277029 577036083 592276176 179817353 756981332 852318567 883966804 297977901 989542009 377060229 568121688 903161805 918686341 423775059 559794436 275251294 497474839 683029727 836259697 817558791 837057820 672058826 790187690 921913833 967238696 967810982 994378157 909750832 937552838 381331300 747254404 473757928 662524405 671663552 849963753 800440350 952276982 128751171 983915683 786323177 815780757 304349119 730928725 386563681 664671111 236465546 779528340 324151667 980345907 601996126 753549412 388132290 389976513 664759959 739475493 915476990 924263306 849827288 893315819 355951700 648707080 103035092 226127798 64483628 946044085 99979062 674627595 795779442 828051066 600747042 841773736 735495553 992693388 563148982 747146197 148361298 424021950 332946010 798481720 649926838 793061352 271782463 563844569 761028111 872189462 908606158 908930604 966231420 972618018 802767168 937438534 642669302 753658874 443017277 606986229 321171003 413225593 128276891 287450724 576650291 884933233 624231257 909314367 494042145 703826400 618039679 749961091 317163854 613862346 758928938 793269063 173024399 384033054 842129308 855259998 80674173 659295546 788744617 832593742 824474393 931009649 441715295 868740304 650160893 718805822 525787904 954894196 587974763 989978327 188527242 198323783 579033238 615587212 321867751 566697113 975591169 996515766 930594824 965233207 572751151 746357079 29672126 151844510 132865107 186455519 932797288 959730303 676584136 874951439 481513298 624830105 345768098 860878977 69025847 154410852 606823558 991817330 718905361 786135599 683008181 752852050 994400601 995176298 774845439 873832204 341523981 960180450 972724284 976564484 564722387 587880188 341691938 520444559 748446766 874583223 484670564 935858857 80703431 225335112 818457638 997829068 960713996 981675452 825409252 925920545 883452547 985451210 517286905 807947858 543499677 986027505 916633439 965029868 560744630 791896907 723024941 996476547 957322097 975055309 403376952 456038011 638122522 742667838 24757048 807756326 373666105 770602099 472054271 691991323 984662941 992112995 44369510 812451089 402494486 508445367 32634527 185593325 11671696 992879237 675192190 896090033 484929060 581943773 348009486 692469081 137400144 647540294 615122615 932460378 663412407 984386765 820104748 885815362 610779708 836344215 826517152 848916537 283236790 558913721 423620317 726275091 926323068 966969204 833450374 990782176 671591880 677586585 201255623 793758342 98740915 440915925 734356891 884857432 256801394 400336294 64062210 592975438 334998415 699755651 348564521 964842715 670975357 770933793 897371266 964936418 45971918 824040399 49443247 803267736 342349892 750297803 811290663 893398691 27549074 465781214 93411361 152346928 231779844 601694778 849016566 991168758 10116104 897923409 205860680 846007529 742983454 995637977 724136740 983524871 104284956 771785784 972563898 974800663 763010466 914236877 920772986 985376749 91326706 526092411 167121619 176869951 76284735 688750626 231457269 586448041 832487457 930396040 440353500 541328427 233554078 322560584 316719602 551573666 575816633 657592191 408557608 901112252 171650694 864901594 332786457 443597416 252717131 287753814 137821505 730574014 958027501 979808141 839392228 964760730 650011029 945328834 624119871 927299784 884141460 885811381 755674916 921199998 44079224 312817839 62683307 685880105 283713860 690629906 271919958 908016756 723476667 776252888 80829049 811080760 731412667 760028764 479272220 590263009 615038696 889204241 916430738 970225665 376093999 827519153 647900803 769517082 988058564 997954459 699386750 901323356 72238386 334980153 800908929 951775077 496518327 865646385 91568322 896621687 148573490 396495385 442984369 685773149 132507321 987589874 96286984 221597188 608873408 609440049 211850388 553313729 419490304 538471887 974372861 997018890 174019306 477887207 579961367 630710104 530278852 595289932 338958123 587879636 629389469 654572925 290598712 992257281 87931472 269325697 299483497 624515538 997771230 999154968 256491405 405029287 207963992 494205951 40887406 801078892 29728865 869582835 798330855 951066640 140313980 903493044 222643462 514140028 874697687 976481098 180603007 699419202 827479090 879094411 135599491 157820485 210867407 834921280 170861948 400151951 857150222 913872795 814123700 904014988 952221249 957038574 728152126 761108618 759447896 898868134 796475712 842804181 62488558 153593335 264906366 729161095 90801656 225645645 584879978 808976265 754147746 908405775 957029344 974892000 310217408 614382795 266696177 736111008 450402409 740077071 426286597 909429353 367365672 385715139 505507540 882936387 117753636 445060111 329647266 954787180 772210150 812420895 474426218 687521020 688024902 794718880 996551336 998390287 222615677 268109093 517499084 538510055 543904971 873422594 877983190 886827359 418506715 524206425 599241331 785512058 707863393 801524081 770654394 887748094 449151605 572863559 696058904 698569826 985463690 998275427 409077734 490662858 846528681 916254437 196270531 777688477 798313525 823659074 598801672 798332538 867153128 959441458 220023599 323290060 85543847 503841037 341818979 453623889 141868791 301887962 671640552 761461059 32528693 737898235 42973147 854055833 148956758 513007882 358926885 498492466 541721321 693726766 251883640 850131519 970935968 994074447 798405421 908205063 827308094 861789884 44037405 269938254 33799164 126856723 505408929 985670648 567733941 832771576 468890836 979868618 996556854 999073365 187880939 555057399 212907936 933386980 243085860 919727670 262511440 413167226 13475879 556905994 181414106 727201357 965424434 989539190 335881300 991138169 292506476 525648502 143662020 534981557 786860117 997220403 228360535 462204627 124319964 893402305 489227596 936012362 454909280 690708196 9439233 542655894 540336586 983864187 680573105 851100695 381132887 854099236 853239724 952904063 936693997 983179582 876486457 915391147 76040457 679770096 214509398 507611616 342467006 458877603 502728337 653551020 659075159 833128201 41873425 363139471 972631649 981453801 297951536 867002874 507382429 960887498 40895457 805242773 792112314 810532461 904144669 925068656 617567574 873709082 703676944 958794167 372926826 628247040 974972205 989891492 772587583 926148856 348977819 517150480 699918295 856160055 693671803 812830270 812917574 936379239 464805618 746074636 988743590 989158380 522957778 712676822 875307581 952132239 60215300 995473928 419195651 867143523 77993518 176426105 273632399 752449505 212950810 590001001 374696784 927880796 602210807 694555521 994113472 996481429 15010245 700949930 500914726 963043141 581532599 759515730 326493247 380115968 40754166 460573187 36523686 882760044 709389070 748831559 267646793 747060336 499765993 694463205 230656510 468723442 248107030 944263295 669692653 930736508 505246318 511948312 377645 585113020 841192201 981901716 945087950 966736468 83723598 227325164 684635607 713669509 917046629 996939123 585632440 932102561 972546266 981770503 143018914 455780203 534169061 728087988 624779487 861419718 486047263 544147390 206088209 519289564 27901070 784424204 824621839 998697885 453728443 732728537 741128052 833347171 123760515 881395265 719220852 927063590 457558784 938768196 365345998 640888504 894206160 912614999 693371857 953000601 534686861 673165851 536214215 604805860 719217331 809943885 754848432 941651205 163956156 635556835 24183658 702009736 4755174 481883497 483724897 683753457 95902564 196893511 485689908 722712616 621984500 705287852 687021820 817109572 582034457 803480225 973398250 997531507 194425629 481399910 724278450 969167880 785152480 805046943 761958356 820788322 697177418 832334658 522620642 704152801 955417495 989137938 553918688 997671796 292732400 481947375 282627785 323706759 463439717 536530328 42908991 859695834 631677963 994326891 621712818 806204073 895275097 953480510 909433578 913567431 309272921 400441608 649663168 751360904 521054812 521824655 364089535 928901773 971675801 974613379 833206448 900923147 722193141 890350380 159172038 898878495 267660897 928060525 38065561 624914636 359336558 373670936 686937599 927369715 240682134 452229408 461544551 624063114 892256753 914784916 463551074 686938636 772705695 955122836 844270812 983886571 491389767 495715060 627825564 839947306 976406758 994746601 858702780 981605485 284769569 747964836 72490107 900307264 256304533 541423468 109475748 288883293 108213906 771913032 354189141 997313732 519979794 818334071 487672995 916483616 566963571 813422937 898020765 914412514 591183812 687743863 301290882 700892524 606528010 811190140 909569590 965806479 747817398 848731674 499021817 558704200 864752075 973087347 687482066 994892052 731039318 856843861 466437835 552088626 782260198 874981180 979434347 988126886 496127874 506883002 238341004 553805614 54561096 721511445 954934276 966586766 852679275 892453102 237919155 526606605 174320327 651094265 998940513 999323076 802532689 835801118 230146071 471512410 927919724 938429131 698347919 831336972 212146454 611185084 609124626 777363421 359841448 752651165 22023972 838841897 400792159 540339926 83268989 324434316 910996681 976297925 428344555 553971089 17710198 447566746 703574886 994112785 930607035 988401898 234434703 911118431 149303365 965275708 761428420 914911359 724669824 798195157 362859143 871924766 245489563 343189608 410891751 491886359 47551891 449305522 632577106 751775005 325519821 673677765 82221123 552667853 762959747 934586882 326394576 914384243 279645573 667509707 365467702 474773450 88201098 736879944 574468629 733118609 865074544 878358560 612825421 908389699 683515499 851062162 485513053 504759784 667176004 685567099 91470117 278701190 73283171 681949875 668831388 878189795 362989092 810974058 141381896 771280180 959636355 972427061 670397357 883020929 499100726 993725665 566545193 849468970 850971145 994463466 537331181 975668314 647372597 722919663 710049052 913574800 805853187 870574830 761463082 851296565 392822679 740789162 287062595 585991305 997207024 999077406 987359035 989585593 247482306 584573068 54041120 756065216 988047108 992425989 822964539 914991841 176959675 892345233 413323424 721603564 382233748 960632680 2733733 528629730 235103090 757783028 229000844 694027856 748363104 952933952 256423787 295508054 815417907 963375700 229107720 320158447 614598074 885646338 244936405 369414550 193219133 749423051 253807860 717525411 119381527 348015189 104822662 455065059 562116091 763433655 238409634 395544572 361155053 366052395 802303760 849655122 487974116 852053266 583759926 736774814 168361627 583254367 826792971 854950315 974781340 990916106 189249235 262836389 67853926 936473068 291402655 556240165 955386187 999063586 763130176 937836860 366367744 396982362 926467606 938177021 374027953 563651691 286883177 602561893 326604803 995204590 797736370 968579265 958760078 966366851 934587727 978478937 940293624 979683308 796293809 799904337 432068446 438482144 203239344 208553433 528436216 537752856 939791266 969932081 885976953 906347542 383594429 691683628 709007837 773884074 773544259 867963881 334020113 536589730 690040048 829902286 375285576 685199753 622800267 656467891 738875853 965523160 45023109 333302884 985153869 994039596 557788181 822330123 178573656 216357041 78814918 252911756 891463773 949375631 434372527 931221317 636401650 784849982 794957487 943672705 167391705 540618014 104289835 915911407 971141717 975979032 360900665 967250982 455752630 956611673 567969989 731265238 253800096 608476462 336795709 758978157 316195311 692812136 479768218 780975647 690273425 770908018 503249634 909211482 541530878 801046455 880873620 944974569 845148382 987133735 636898969 720951475 451466801 579806025 931282455 978882095 107346315 455430085 566244424 917824831 143424282 999201134 389898471 460885391 577885618 824343516 361759640 923728555 871896564 985321612 964539962 983566333 302856547 362921116 379058318 648873483 68372177 399953481 271842841 427141344 412582271 464377231 329227769 701778651 322845281 933970212 958516884 961349197 494251114 698806808 940888055 979693111 686498440 911136647 612318696 648730791 940000155 977387989 623741365 912721283 427642245 469365595 854014368 877233839 241413573 511841846 159739792 500263136 138051394 243544729 837957584 932814885 943755648 970168532 239313826 461156803 737517725 774155353 417388720 444551140 76443956 781174034 524478675 991948746 71639386 674186050 733429384 877910647 803694228 903126525 854808750 863135821 208931773 941849524 134336982 257728204 692465659 885111619 613574400 975499917 921859279 949260271 927080076 957688052 438362496 588347217 73199254 106682572 569883502 588144061 869459266 891585315 837486194 989384932 42994610 379893233 557951501 625459193 330693780 705082433 212639619 730919243 157954496 596391986 374163091 826743766 546702917 833494119 973834746 984589140 20197884 288303826 78268944 390470169 723423223 857075613 47199396 407510289 228845324 907152410 406880325 888657870 591311279 910122257 591396010 639497504 654773423 708576698 870061988 879097016 929406631 988937133 567253742 702186281 243954960 818338646 782825972 793699345 167977893 862715959 707534106 855665636 536371711 687578846 54750403 609854952 409786308 665756592 525608759 859075503 821103714 915030473 154437868 237344192 234402619 370806553 791587785 827009319 361624592 556738090 201044766 766085207 453648166 481505180 153973017 399673571 471891268 650436861 48804737 572073008 612855202 690238249 465363580 605540421 233614502 782187931 765281927 970843053 240290815 599866839 268205944 770053282 708309259 710610537 182601878 829433849 986152361 990640383 308045295 619820259 222113305 553320056 162920610 866676963 485943496 675016748 88545061 228347358 961042773 961560380 261359236 488660325 614524725 690861477 116187807 501385687 448042867 667651910 377184060 816508541 815955567 827437805 389192272 726297891 921847158 985598545 645820610 728157416 439171962 732924317 846182855 926201773 629795624 782489783 399530496 642764867 273009324 649933990 969765106 985558591 581611618 925065430 930471817 951661162 897861144 984515030 112862370 191388597 695919819 895692101 545358622 767130487 456456397 760066867 820895476 858932524 521517364 726146045 8534999 691856141 599678894 845328714 146530460 897528948 800034940 940464850 257032465 331638432 550653812 889571348 845959814 860447740 734489293 888662526 324975310 719708086 932659004 943506620 362217180 923536164 5422271 341151881 889332901 934354558 52139643 744872824 560861872 622180726 206533638 710928858 917402275 918787955 140782259 981858264 602106983 869915204 547556980 727900055 34089723 366235626 222534908 707222808 65363309 462544071 648218994 944164205 563406695 907820468 357110712 993436801 977290105 983810973 98239515 235861203 556619100 801440952 232739153 850179080 924039942 971730643 286060513 994004534 215136123 252116146 982528581 999191085 203074859 385362242 699797668 910499583 133220540 492270187 548179153 666894751 754404869 806240486 724368366 822442037 670047550 904290990 425947947 586020755 734769028 860281051 381059695 913593516 187389231 653503743 93077984 196572574 888982292 992704355 640342581 943863348 596714455 927593650 85595457 408199539 280777589 573259659 815431548 826475218 849156113 986180050 465784754 552862358 428546059 794872264 857811124 878008705 99614216 656367844 382828936 516578765 374580180 856020830 737910467 768158279 313283077 475475413 386230320 710482673 728331823 780197326 971108675 992055225 401780435 892566155 463263136 505263789 644639704 718320517 162719655 710225731 768963964 827487727 797036326 952663667 715961654 753823643 994147546 998920948 46977079 232200086 527141108 727054657 459147785 938086348 808566501 928924348 754322303 954132544 312838263 773201017 21814637 735332188 564599479 644697606 924936239 980749976 804770461 891267524 716957785 745395574 660948749 688590570 839653430 971824281 659126653 830714213 518530974 630169767 525606215 753244002 964378872 976437355 948232030 982060353 521760034 765406309 548462269 881014597 90758900 789792582 171751273 890888708 743693349 956610190 317155030 426023877 513440278 808259689 409799515 686488388 525825819 865894307 311961228 652066962 123860431 586669349 305125326 567317314 927115685 964698603 836367840 963089255 879742282 974406243 175259708 968103916 284697107 650451870 954235260 975680641 380907261 425129583 684760932 906834823 980049015 985991383 314542329 721857997 401246923 739238501 183629051 757459442 226049606 782500674 657584763 948279504 687960114 774864288 602863309 752808414 969709654 978388027 141147700 577032523 707986310 857447891 534379718 779191478 614763237 778470013 694703973 889395478 226534705 755188836 513611380 869381555 832050252 848260575 556324246 718488711 792917966 818901163 418280314 678654510 483257063 762022423 767104871 833406197 735120193 834077541 570227390 681311165 183474989 407183331 906882545 944837779 604426828 834666190 136566513 343035655 32781890 406635153 539149456 676666632 893620567 973784537 672808509 675542619 485204877 893564250 483796808 485979788 563023565 737467596 361712777 638338104 968848252 978079962 945914055 967052304 883405121 937379507 554187723 996811260 654899071 888098992 940000924 989953910 352423403 528666946 211940606 604528301 121757908 952430268 280047149 689699431 993941718 999027264 539370402 923649635 577556306 991956754 152848798 501747429 767824051 848919068 689233086 830128206 758882958 904960906 259681494 673391283 268049848 523575379 701099858 809593089 149199920 485511227 311062639 660462324 306644435 359390649 456374189 695928731 404179689 950827301 282404515 614585744 943062253 962393108 367485137 749752902 51747711 858901855 238081299 827356917 995435339 996530040 961854620 973873910 505421139 511545519 686386169 733372858 945530924 949062423 513278182 861423000 267978709 737101279 6537167 859385892 292246065 728459691 111516845 147041023 85996907 160279380 387363424 400607174 498711555 838705934 493596542 689453655 832283901 901907833 463271768 673378592 506774802 883170088 269866610 495509861 660524066 761857745 547789528 794661780 361073166 679938121 342625033 369729165 958931193 962220933 635903994 871677260 628753822 724710909 901697969 980866530 640654689 687561937 134004781 828379305 457792452 926167949 523183369 652192955 939502336 941321702 80134303 513622454 229714053 843922028 753274505 913773665 369771409 759355651 715009225 794603870 141128213 554771650 594536445 936178681 580531472 818827694 121237430 385706580 586076712 641883632 62688720 229209139 705882411 967179947 246941156 387228687 907343350 996181084 583661872 595931776 272874795 925428337 625180595 841631160 73531813 618977947 582419437 960021595 743297467 873215439 210702338 978450691 647884398 681685865 396938641 450438940 535257897 842219336 284715816 487923834 831717537 907658022 394930480 600054990 866871061 925888945 482522498 835760021 75612583 109027377 394684268 433516187 855636901 857471137 493320133 926801943 730392131 847189499 802378769 835955321 258659893 554368088 349752849 552386718 586607931 754424092 903522847 937290414 40199668 301517134 712960464 847055880 117919944 972993772 568644856 609326131 984475481 984910599 669609743 919363737 419531816 783347168 343950236 704841697 596731010 761489433 684979130 794364915 149803281 472395386 812273313 837921158 777631644 838310483 645686003 758177753 322604356 354210989 122362036 872286184 256115210 732898218 471498392 783444511 294695711 552937686 104477044 978245394 879276698 941463192 820502050 977956574 901663888 902044437 678744613 733759931 116098032 764779339 522429191 781344873 261423769 626824409 691983351 762971418 381490184 896078415 543419812 941574763 499003300 727972014 242054150 253188737 201743804 285757527 321624344 930684475 339417384 892547888 538827379 884888625 785712871 836850586 502380976 688637915 791912067 868229543 962055461 975534749 908045268 960170895 353352154 913647880 767930540 876543669 218490030 722429351 735378033 842096075 791426592 839400259 562092555 858508516 522962808 777099917 769343512 865952409 143193116 629055743 398173944 485923935 491392492 677782121 651340357 671315834 939465747 959265408 920179433 954475312 782127724 918702634 930368330 987360616 462680755 754162935 668225514 782054244 397176762 909153066 605188962 967445137 961814444 981494686 412527196 471014704 867313239 917472400 307559005 551923022 696558393 852538758 960173419 971354105 313539831 942371762 759426324 929709414 320304467 536679254 515247601 763159495 110776952 728428190 168022604 811421103 523313753 637627633 326348992 773093642 303738014 306927462 830986616 853910712 699187175 844639723 220674411 976267638 995855672 997048504 650439811 880884077 379809268 889111030 316652272 832894934 54922285 176265125 555870288 964010712 836753058 986253369 175352240 869646554 716233288 970119826 486117314 987605424 539359911 997311288 460676598 788048040 946516433 973109757 82809121 284721022 265081011 347804711 93331461 358719091 431177502 842465604 869753935 933035565 355943826 863523615 210552832 762496561 642285694 698046570 949074096 951786310 571761836 851249692 803043273 841059630 857574311 950709821 56533676 818727187 852526975 932590480 837440247 987987718 497619482 975264798 663615018 963902977 45406368 132396663 233063306 239765188 270793427 522193378 189448114 603201284 846921743 995244317 240450202 320888440 724704190 997305932 908663939 935712269 172519469 745272822 698239353 906873927 80093831 243083173 637337969 974090652 575283276 602198057 179690115 613519198 598831344 674988174 651563932 960720115 677710016 751138679 253303712 708650266 162831681 203053742 786133797 790932662 965530239 982698980 24110021 76986796 572388644 815331536 877255281 925392485 25375002 151983228 516172796 575634134 104305862 431056588 268695313 554959369 449088259 607440958 964543747 967193976 818732062 889941572 437863593 830805258 147084540 797216026 552822948 900700858 612833171 709383584 121762696 528804031 450277903 732172518 910962053 952998126 929541961 990730413 851241365 987784116 234363793 898841580 607585868 751669347 834534304 981413141 547055368 786336603 588111533 831052367 390560965 422510281 808014589 848782303 875528028 884775286 855764178 904254870 995848102 998431541 566273305 990581677 375747768 793967662 236300526 339622657 426540374 871296033 75485934 777823731 370744961 617644072 195627054 316729267 354966119 360540317 965623179 992083448 338509545 822925905 845801040 893359729 943289954 991060313 178450127 399287496 294841153 664634861 929605959 994618909 197175366 419492981 420284939 550608925 881745753 933286839 758693355 821761211 560977833 829386701 717057112 825354638 611008065 875729984 469415953 871447000 445653094 865448830 613656917 694359203 811121542 814138523 482124153 854497318 411816573 696912367 673399346 772762029 208731056 757973842 672744607 770593026 337629919 788608085 788615873 818594586 866975413 880861199 893976229 908093363 816737956 956584069 31970195 895292134 165704431 538227784 924635805 928858776 708767362 790336638 635547995 682186967 523437145 587990783 987814385 989346096 673029783 909359750 349223930 812844774 934952330 956008642 819155480 908272061 485073604 823944389 222787044 278298558 480030665 764111081 956613712 974394373 823433943 919163059 547265750 993259529 642842097 854309219 463825657 498830349 742714874 918482612 956524725 998332496 27646321 667705164 923618189 936216615 604825334 874093160 201534655 603304243 881622107 892890109 149140438 892267152 786178169 846777429 528939338 696270028 49241484 112498026 12606475 313265350 861998583 954648790 460892091 885322216 271895796 351380463 307642049 350101390 476512466 814883402 907603940 928265202 805843122 989152440 439160756 678198783 443698369 446868295 328235128 388747010 395511391 635803085 814535116 833387111 649312080 650572244 255661556 899214751 64654135 945355795 728508851 784357968 45133326 859344557 330459091 995497994 159611031 219112762 78701742 455339402 420446629 453663908 675509957 909484453 253735935 699697664 306250719 944445840 5168165 326147964 192298821 570394264 840112674 892008604 701889081 950796139 571427202 882307864 851631932 934249664 458757171 716927975 881894936 898513620 858721854 901490500 781079522 938696689 441943011 448737868 708830159 998475008 385019713 570397187 904415564 910186266 70612351 138158029 312230886 495504779 929258489 990687536 267222946 589388890 22549039 680712827 248778808 895142687 386371797 915057108 156669604 577082725 881988949 937090485 496406081 884182992 172376038 275751490 100911518 452195912 565383551 856170888 848982858 921707451 930569897 959145041 776583306 996721013 647383427 777033187 596475412 724733184 658512878 850959439 618697659 917220264 831164251 933265159 505331592 772142183 168605556 983579757 97322496 658545338 367953001 810019627 73871092 836917333 576031884 656754859 662554717 855881936 200674745 349207700 140085640 148129969 184774421 492194191 787130140 817856499 367425779 765679565 21442496 60178412 916672425 974437637 177280787 432877358 338864884 398298387 1240404 836835920 62856699 881212045 865543144 879174005 711007157 921707297 808253209 849073209 369658238 595641274 425984659 926516705 938099867 961326680 98123622 378970723 260863798 727409061 611473743 985146390 117910926 483860145 315903822 899733061 197500647 990210232 75950747 103541438 122378447 919090425 115049973 138924488 783564798 802028295 351486365 840258378 545638377 783628339 607467986 696968831 813351707 913673902 849380270 860158696 417720555 708596415 575891299 937634009 958324235 960465416 895696245 986417881 88683832 627167856 806168823 896535010 692677995 982147310 818542875 895818099 184083223 461830067 905015712 963823062 328266327 772299997 238769927 472458531 418949154 978110317 787000539 973111146 214534457 650778253 997683114 999042743 163050698 504810131 801518027 872781062 381693730 582340610 358888376 995711947 242734228 499413772 795275814 818824997 47427643 104726241 868040298 906740089 331895838 566801668 281879166 611388243 963499249 987469849 455349765 938806244 962578642 965126659 122753390 902699793 907045599 996730115 62593707 508604992 911019150 932381169 68719592 867566335 920899084 931019689 108231593 353841034 927924931 968456813 455329194 870387198 700148412 800296499 492504317 756848588 185983803 228860053 118466599 320508991 393247340 828701187 882115396 906873278 43236377 897258355 281669195 714029082 273240988 651278444 23030042 691445426 943989235 977211578 271371023 507314932 17916772 797924629 764507339 983845081 305206675 776723130 329689053 776012836 17727359 748921865 252911405 384864574 547485149 915823077 961560860 998898657 957986607 994151011 145498013 328818096 196123838 589776554 815589911 949744714 991747172 993085691 596391725 713381170 636737062 789314338 728857092 977872865 537465243 998430148 407746601 621038729 822408704 904530590 490264054 902994065 984732646 996536819 772942679 904524661 321365603 647115396 745474612 839448507 155521828 522670692 915095095 930851095 76427255 118188569 564155637 698332128 683213481 934115195 102235431 114178967 789154095 977942886 562850776 872781590 619299636 846155798 834666196 897639261 648284622 725896938 612025999 741579041 57799116 172431174 926065418 977735395 924940425 952387282 429462790 955147883 976265017 984513225 495426824 875439036 835426591 947863599 175013729 402394187 529014945 840662684 771827743 863904276 678549535 709710221 759923629 919737501 731815459 957146939 325338831 979106010 351986514 613202997 878433952 918391901 243490042 553300582 267314999 368578467 37284179 556467171 349908085 398452362 177663112 374832786 457702496 827791833 35189902 980672239 28262456 254077065 389731427 584397493 965276573 980918483 563564726 729475493 424811516 949974709 184421083 439764288 653409571 916306937 762228098 883020317 424323429 869609870 95388979 297167950 922771172 972401536 706096297 924207883 880616407 941873488 11586647 289658065 253889781 853488677 343119800 407936861 338547852 831839897 366030400 931685368 916985673 967740517 205394018 692763334 346159287 768457627 645809128 715746684 862209423 976536178 648837545 668554144 745932149 884233257 943922108 983797854 881309484 946141250 298975317 855016914 751587162 914380813 816491009 898163621 474140251 713984888 603531788 749927630 267989896 274200582 643318025 740922718 892085549 893061224 830747868 986324427 93160471 150548585 921858576 993197410 418514128 678440989 543058079 613182994 653922933 919786556 419548676 931725842 689428038 961822098 427870528 532552205 693876613 906778545 668938034 727895525 200670419 886147660 891785711 943748961 993363600 994837936 619630082 717946325 706824335 799276030 218558096 675735169 639648544 946978172 297708473 878339870 436219154 936028287 761096730 962604839 953698817 956040473 603666340 636217340 14699064 507719111 609672983 695642242 631174222 841531454 109385241 773947031 439171537 687956144 336139081 620433596 416587120 660782547 338461947 822797492 862246546 884675797 842444309 972902208 266636621 954533726 570640306 861982880 532402271 988991548 79178241 101508529 206490146 462020841 461144869 602388445 311660740 426187247 290489922 498559147 93223939 268634929 326059940 603411112 74018576 909680811 865665372 965830429 925992214 958041279 975342854 996661760 670045766 735043367 405579407 516990917 210131528 992051645 31055819 836923408 134604325 983202599 418446229 966600342 113960593 415831796 143782097 405318219 740879607 741462510 344765094 607650995 853257407 915226023 64766536 937470141 425220568 928371344 733345003 846858191 79479421 534920214 253223684 333550503 583191111 887747714 240639922 314565833 877700139 963355510 618529607 930246314 139224147 543819009 793922762 893907373 884106894 975937826 583659234 615996610 78669952 819681013 156525411 428773470 137037954 778713727 224432809 418351333 991284376 993726143 599730903 924256048 87395280 744221376 881839869 952779883 427360548 724799361 108636182 576912226 278666070 444483749 322218180 616774020 46443458 169922058 867264898 921796979 215785061 489967738 755080309 883699981 988385506 997542545 807064464 848052419 198097274 909299597 730821694 925293984 239342960 242703899 28127048 912293205 261427391 687332028 777726340 933233478 847945960 946206615 749854087 815607508 507174548 856950277 300470567 910000736 15974913 495696241 500935067 988952453 159460404 335818081 336561656 555300596 24905823 479722953 117036579 376445810 428659136 690124501 663965450 721172701 636654113 726225578 220321336 543262436 711273591 778893262 785234512 980201710 442771113 909286850 379444644 760533092 530976945 730387717 76223595 706079637 915562096 970123615 830988771 869587655 778965362 970102195 550727856 896334623 844140996 942708047 30130735 356831622 808025302 998397912 907790322 924419192 432952209 998757346 174619139 418483613 544311116 571428938 108938099 638141926 155531872 268797055 372696430 695493302 627187306 902559533 725600171 970592736 841445508 980684937 881646658 895178250 705613720 837484984 961185663 964753949 664429760 668993421 669831177 770628699 305692215 531557497 76091129 665282076 110693928 777597125 590974778 809987294 265582229 844779678 597452726 906110754 226475002 835355062 133620025 358420121 131698787 923849950 800215570 931391171 778168879 994844075 766595293 978707378 972449278 976104915 414149370 591563094 437763068 784982331 584789801 596257812 245755310 794305069 425315033 546472018 702993482 760193820 318476671 464014343 735026901 977439339 169356064 689939183 732710895 851481393 759597041 843472561 611875952 748256512 644368412 748374384 392744349 523528063 586969358 861564335 57936449 873210364 526640878 811941314 113641011 513355020 77744036 892718630 766437255 785086432 707188176 780961025 63787879 472874269 799154003 964865581 251943478 333834563 140518109 156871418 108656608 836966557 255225575 505954952 649470148 687882169 158066776 761184675 109694629 518043437 983616800 991969625 846115740 863976175 488862154 679456582 548487554 678808571 808975996 833700217 706102852 731800131 78642156 257177993 549740555 949085138 390295214 636475405 354944246 403588245 907690920 939724123 201971390 426542842 793653345 848281130 911660087 942251294 738408130 750051814 610911183 849566412 478046509 651471270 318790015 346339618 642294079 726223559 609880616 830420718 612370258 645481820 858002093 895090421 921220276 995227293 680270018 882703132 416125678 746874121 8297669 390082733 823576799 887117669 612950119 704551031 613251064 700696845 697909485 989184766 22811158 535459182 555151060 823549594 725620079 792733946 972640884 985866801 250300077 454670881 757251966 875435390 662830305 813502652 963660667 968737198 722505494 894299246 664973583 676225945 554082866 667135094 391728681 422406085 214429137 352510192 318302421 821980394 317334790 919519233 797213097 869670884 143144164 322239466 625947139 918337288 64846751 909235242 751485428 896669075 427868791 908458612 362994536 471655831 599476163 722004071 105910326 283327009 654060286 743353342 635181133 654668733 107149002 480906552 580790868 771596093 281446543 537760214 339176249 530398555 690678422 987611483 909755088 941824012 908692068 948292036 445104504 852519629 439551896 632544656 115423612 872675794 910716664 967817092 259515763 896229436 386687457 450087031 599427123 825236717 992666928 993545863 659418681 861780258 442162458 765377055 206133485 562667516 735186210 877925491 308197727 836829223 949183761 965541264 618922437 671092460 3091385 474998250 865558694 937764371 376422142 995757138 773503153 808665813 10978617 232010728 268272305 881958290 556738019 567793832 622085432 892226751 610315988 848570598 398311335 426208538 841956452 997936943 457051811 743075224 114510321 857144897 563075916 739822369 253036897 638991073 985756442 993584165 208673648 622886126 800929982 802073120 435936189 631265097 89440127 798713289 6674009 587725760 444668582 995880815 971259517 979128806 603301161 962347561 545988502 672541015 917185972 980896332 772740658 961313718 629396012 959790513 518073938 788170388 203386074 768790201 895211525 939233174 378669526 797963899 576040507 985012233 875817570 923829923 481958418 617292154 424654821 843636260 597076270 629746242 787155561 974086848 776937358 808085331 248166365 899218465 109793912 653480014 619559392 781651961 28317694 195694220 874775655 937909023 784993304 911927777 19222715 901182833 283529938 867043653 288832322 408426329 832165240 988429387 156937331 904305807 607419213 615413404 280944617 339190989 289528993 730421344 969424610 979064038 122831779 458873110 780976453 849508727 250667469 822469609 5725948 958045084 657142216 682958132 726675502 924368928 956920893 977739836 843480211 936275051 514037877 633855692 877790187 907304299 89249713 953139471 284710881 564647425 768696926 991536208 2787314 532219320 796272268 810717293 159119044 732356233 948911157 990311236 296095403 794291023 939724684 949564111 980387890 987981663 749981058 791712813 62341006 428230498 749562048 765631789 276958208 737857258 902316040 954638584 767285705 910804187 782989128 787715166 187844875 475112538 868074459 957148825 488006686 653158232 73845785 995398415 323717973 579152692 652777831 829886044 62318966 460353689 309699151 855339846 658491262 872244356 960231624 989307990 347185693 425845110 526292450 952633918 146288943 931664771 892155168 899938935 845075388 921593201 716982195 856218145 345276226 358199580 852073658 975728827 702497421 713179911 985219404 988095067 384269260 970226883 699050923 979596889 67378797 471672076 119284474 672633606 718854162 953615771 665014420 963347506 797946955 998637641 380155485 475476444 132978686 568642849 800036722 923971797 994965467 995111447 871386194 934072580 784285120 960859863 985145389 996457240 802547067 954271338 433088134 947285307 60790775 839356140 410103057 449673688 956119201 989939331 800736189 948022837 744951549 884233315 890097442 931248216 875052542 928447664 5590132 839375965 279556276 950964074 883119803 919054146 876534093 895865326 76554166 620835192 413336407 545118347 62140967 117108430 440584709 525772491 740489948 871907127 986588014 995143582 264599020 952723407 434013300 960895611 851409442 929963757 809888788 934704579 258186067 523361182 386986574 998075449 532631609 552809755 194556103 886294599 836519639 928403961 225797019 355477276 665127632 773407824 169632014 385680726 144699604 826790771 423420416 948139381 800915175 901631662 257775068 436999774 515286273 665076478 230644878 766504379 596714231 811723066 223693905 735380996 77681559 300459539 865962894 890132737 845186316 848957766 241358909 464247369 608786797 753270499 894193415 961771855 440768966 996913735 177230234 514492406 178706852 906637006 65979555 798767221 116535363 746462304 472235290 876229481 518710869 802741330 19407168 222252602 301203046 305400600 337587219 348571287 458378750 713968072 305632211 787219786 390203064 955431580 943922228 971236023 44808671 592158805 16659530 821497643 384300307 937336280 413383884 615906008 932327252 968031485 957639965 974347089 320609754 745434864 103446665 268996002 36785208 985758673 461837778 530151192 820236201 908290873 394564774 690164755 508885621 896427163 958079295 994056197 509281450 782291426 563377703 949163119 577370792 722928263 648033909 669772181 160449470 908713163 243879950 619544794 338822159 771360171 323444459 913254486 220877940 814101992 105147809 488856296 483229191 957219908 795770202 883350741 930463449 935858430 408831315 915666126 325269438 765079309 862660976 952119187 536661990 645981002 391322752 613491934 375801915 662875944 787480320 832505953 940034039 976986158 848598393 946089832 117164823 333727113 213303060 565853192 731426076 758652484 707441458 869479598 933859037 969104997 471971688 496472570 986882331 997757750 26590706 141917137 674561175 847815413 860948223 930630724 882188834 986908695 709339588 791365751 776389181 884481433 988405645 996821741 152629139 716900477 564211516 660469068 805252698 886262916 954256789 974696889 194765487 902232729 493889492 846511668 419672786 562141674 471646874 740312781 638355291 704752177 123079727 667060445 650618395 721555750 577681540 762378281 906684623 939244545 940264947 973678883 556527456 597628014 929211938 931517234 855482880 996707474 616807225 889373531 625035946 983451324 965222737 987004765 859831492 969290595 697715667 809631615 906572115 980140833 777472079 983023239 750894725 820320341 439819095 925704001 260345894 677618101 539276024 890457626 2584632 465348262 807423392 837325678 446751049 536190161 636908243 731140834 531121926 817882611 960866682 970741865 210991006 387337321 760115249 826128867 760846377 941567587 317081161 499263864 959279450 963653780 643082077 682641464 325136373 332855671 722043400 940718157 806584662 993699609 64991216 957617079 375263773 809814993 740462360 882886955 225621472 604227917 503602811 890423324 908509158 960477796 245599545 824800370 705666689 993533510 569651700 794333242 35869861 154421281 244272039 791449588 48641546 200093239 189969746 713451896 505945148 829910254 689782020 695461681 380032823 621120075 541155482 916349325 367063992 662150956 657342188 831533639 912437143 926159153 696271047 834045519 456434519 772794643 729501218 878873366 778546587 816185178 571483618 818419046 354962817 383793454 183466778 449909111 728842054 831080318 783748339 994185638 539543201 913861020 749975760 807372733 905454646 935586260 646282017 856758061 464379718 760497735 351895167 453785082 646690189 899190828 304426463 742830360 650877658 965094902 360197845 749717116 415593036 541501031 199269424 951563797 394393540 688355994 423168863 609698695 270361550 771024730 846788260 871262492 709391884 996979718 929123905 958603999 544176211 941323433 778050863 805758605 986731903 993222351 817513987 946918942 229388706 724888751 20684742 651840260 131534978 810345177 567567358 640651300 24688013 896024838 267817550 945245785 519271184 811914137 668063955 828200146 801902005 878599371 189153957 883043631 943086720 995043003 289128629 767947321 892212281 990000764 985091402 985118532 840317659 889483581 924141069 949850332 142548173 295210680 586539284 628590892 404773279 575303647 12093091 417653044 480882710 597244593 191788488 446087684 10389331 545583076 9525323 255862544 980075209 985498015 82117915 755103128 518385401 878281959 88303839 290872053 363808800 988062563 455785276 576434870 823974190 970268185 898729048 943773815 462144479 739466746 251164639 637989727 148107111 516120306 988123308 990452270 407059748 695730816 120994125 720552684 444742295 834858587 570262192 793740424 802253150 840548449 218582982 417603442 845350888 955183791 856236196 909886298 780215173 983863179 481385803 726978840 502969714 645720691 545015709 758725132 577840022 763323421 16146561 385654657 163824611 281057118 944283246 991728335 762080239 918770935 796765172 997351601 225525132 345254132 324688740 386630809 636593549 921170090 637512140 759783342 25173807 83992167 599586986 789344061 675392742 733218379 836477940 892761286 762825879 976185804 684829029 831812990 321499480 683902440 266536939 952773713 672945595 852084222 421015826 993396879 585029662 756418229 679706295 885821355 138963820 210772093 494469071 747033202 326832392 504633065 354161984 739481418 770860177 838026090 161113181 299464075 65087124 180464297 502565293 762037719 432505901 891980756 734246391 825728500 496320902 861520433 391610634 957212800 907130642 990611833 456458064 724663237 845916274 996224485 277692444 567360588 583435707 817809334 375284624 771391709 30487288 639172499 709554864 848368439 349366452 422876564 379139002 642081219 64685637 456753417 853836316 926555390 756394271 995532646 617172438 800735640 860056459 876245286 155629539 883067706 580481239 910010228 615057659 654245961 769445305 989983470 690902601 785829299 602844058 699693925 126945542 499841458 54363857 497780370 829230049 953599836 130962560 812406016 302868459 955299706 735811336 953156254 351619891 487107824 364852048 422018953 949167917 974249981 628025562 718094720 246725957 311488930 791966620 869965915 71943962 652210192 686236067 885363977 24913934 625325240 44667732 450063499 200774140 715943270 44559416 558870871 654201442 938489422 898053825 920418801 875027132 904068761 629767206 820957744 490774596 716466992 345985609 403799924 534344066 664598913 333071268 684544184 89282334 316306226 633255330 856310030 736333832 942625905 425846098 635129617 360682995 713895056 260867353 571893902 182244206 990265135 780411457 998686683 293437393 414338957 619994068 874791371 290964344 758195339 332012036 694408676 415753320 494094423 293816224 935487338 513879756 843263089 715788784 960871043 89255749 98392565 599273195 626232610 533903045 726447037 978211076 995129644 239742234 385310142 77728655 79905026 197942386 395279875 494283100 591783262 189898818 835705139 687613535 840070219 535377520 624271451 579646652 598340064 626538710 790551730 283163847 573776946 157468550 624413449 326806323 625905585 814607297 859539545 52819013 664131247 737563981 741667075 8467261 483877748 318566327 623309089 621554963 968914867 350857495 630518274 584542330 605267887 899248378 982931937 975282123 976207476 773122377 987302863 798477216 965732763 613870596 764907660 470495654 772897681 354196269 423817401 774309597 833747046 730637332 971610275 988678924 992810779 222776447 508751223 38749060 677113475 948963947 987263527 549340209 788147373 766400288 812213486 631539899 633680202 569580033 705353615 825191352 919186392 145924447 645896296 627247160 745131062 709820045 931259266 103451122 282253247 774485698 877517777 409958507 713631929 333228237 469936910 487720381 812073335 97965895 441328970 467694981 668381035 235274307 329660413 770314385 936807906 488262617 692376797 882267775 966065282 184221432 277021714 384862900 824892494 313916889 538932664 508645211 855815552 911156019 941379821 752476900 986423663 441703589 603758175 567232102 873477854 810345781 868193650 722008599 741383329 144065906 866725104 267488606 285966407 505425949 931058053 661322186 782917921 57346507 251032072 740181583 992315736 433558479 980510199 28125470 700271224 219855191 349355488 456736546 941611709 310746468 541809885 59071175 870857688 311475787 566024985 700996725 948602798 642344204 903816765 298117450 511445327 295475972 551669425 648111286 805555820 480134847 840986547 236149380 342497517 30563046 399190261 833518412 966870462 59970104 822598811 397025214 774273291 842956999 936927549 199373919 689175508 865566958 979299619 543076995 808500026 860185463 991106066 458570525 946285468 439560522 784133165 878048514 902801816 576574502 887819033 196129520 762127074 800398139 828807090 482789730 735370162 87820526 950918787 940378464 965740759 902051999 912270025 598244330 695288078 470672673 498844249 764319091 847782970 300358879 601154365 320970269 593725973 579392746 883020255 425729912 817449238 672636939 810400691 459042596 737783190 954371734 991778179 935440255 974835709 759668873 920538229 552785549 939492015 485338301 890108361 424191606 805928720 498349785 787840501 825195841 867580280 583957451 593413877 993526909 997144057 811004888 889288136 463824951 468671898 610488106 698799141 680453149 895167506 772005125 967863599 769856739 777846159 423559105 460362110 945949957 977691631 944497006 980347977 188005694 789237430 614964008 969749367 116134707 345286873 608332521 754428343 112282301 201065514 258614624 362242566 563233854 984299845 629270910 864622290 575033280 915369768 876481984 996359250 334554166 369154143 166046039 217827666 119858689 704612447 586756532 627422001 798619859 913261891 368279512 855172263 433262006 703526980 84633293 368366866 692682515 878969630 751586055 868898679 421391309 973469076 559492957 960846607 98277918 499132530 250895011 349277895 250716135 844059150 688354134 875088610 477974887 764885425 612549049 839172758 753576879 759002069 391558038 499929454 969753221 985061590 234127344 717135198 537696300 712443876 232897296 507597890 646240379 664372610 965534836 982892490 458636847 905582145 631172931 953763895 14517023 89140945 988562409 998855655 41682297 470582255 245582157 353327351 23737335 940293984 134190763 737033998 879435028 914754098 608349577 776512783 719994575 964018204 138062387 315425957 696553094 939271402 670912179 932614965 33801457 832110832 942615541 987778922 162160466 992864265 218777215 565441992 610639946 669853886 969530368 985498645 170029623 426202638 733953805 774782772 968307530 978685768 960595569 967784887 384998522 544477880 538626992 555620619 734438070 870737658 306927427 485809421 309218651 954699167 317953075 853762946 869624629 914600355 837410175 852309550 233618487 562704125 723391802 727992056 932440507 977797803 301571428 805465746 876630317 958726388 691473897 914983488 861603691 902611094 171995262 948345907 901533766 959858665 570770697 922831817 48432996 410374671 27315877 479721610 246516072 554288363 210367837 848272128 637768366 727748724 865819755 897759488 847189681 870032341 519997658 823594735 47763972 374893511 766105353 824886440 8720065 603700453 849983183 975105409 179646721 731182550 370103265 679552689 121365821 841808579 189661390 721623129 551930309 608847607 521508069 948191997 200138567 639065345 871773714 955404103 848312030 975752470 815398920 876264720 596102777 841574622 722969043 951030641 579805108 915670728 624400492 862581947 503881070 630074501 555629131 922898571 613507889 940078814 803727009 947914318 48535082 193989655 319949708 621582750 549669557 926782637 640702055 802089114 692805144 946535277 281608683 378749110 648001727 737938878 971409961 971837826 268757672 294737835 154357487 368505691 335088770 602053971 849381286 871030272 238682150 451235165 468932279 785281025 716527428 960167921 742533207 818775280 813496572 915611159 884155372 974527594 642837762 836385901 366758067 999035691 430113911 566032330 704316247 939940889 134983201 965070326 370636483 970541883 432139636 600660037 635215788 898528854 151973808 742185077 154517703 918718514 628523982 828266623 185724722 330787673 389096226 403510365 597723296 918739519 619585639 835839881 182940615 528816118 551611696 649973978 406467766 913134467 576437434 705030647 204946029 378973955 926088235 966990422 588924568 704762423 655275329 898720560 502705736 751508783 771878133 969051504 12124652 778651255 440289005 743906638 751477502 899792901 620477728 854095170 727006798 910511801 774799350 868662682 976908341 988725252 210574609 831605350 219814046 347272157 680274210 825518543 547281872 789349456 436071033 440387097 122704084 757852834 691622318 819841262 585805941 871760724 616679182 935117087 247610035 475913700 227008099 978392559 522426583 581132865 378003156 453673059 808987211 863947996 962352467 991324580 234120980 491213475 572872386 968601551 249141926 320948252 613756847 976825174 759321766 935660580 318434107 562520371 942386736 987942130 338891106 671397487 743569085 859889307 476042384 948161455 50445365 330974635 654655766 752964073 174739474 894906565 29575328 799674440 725672597 922740190 738824641 851098624 214311034 678212697 375530717 739304776 699798742 814098040 831748470 894364050 382025774 811089685 782746177 972219259 968338487 998179325 311441228 603990881 827609798 841287312 655829762 717285503 593198386 597603970 582521647 678092578 17635259 569088974 311141282 938382788 783610607 864247724 76936400 379196970 135294692 212758634 314808495 929961141 959293309 980021332 850305845 925172084 492151259 532930263 615686876 888291691 151821392 159420764 211756359 359670361 515699722 982134288 742180935 957360159 688600555 731961744 720330304 925772216 199753835 371269683 557302481 714955725 266291939 335723395 275777140 519326159 276540151 749112175 534637729 587540237 318174255 804059566 12888495 817512827 463986367 546934084 212640002 420717180 327801386 358850053 249781637 973024139 595164127 974916334 948243087 997253866 232323415 840314893 816000945 845816634 503371358 878776296 287166183 709603232 641173601 866434067 572047315 853273722 210305606 789973056 119353126 567979425 599350050 763148350 521522583 728005183 856485945 989271093 498759961 927330514 25649627 828862954 954523372 954739333 857108008 871484403 806973105 928294326 894924933 997813280 230042683 989142866 573257417 908760474 474397889 491043626 112634638 389539787 985786880 989861627 596922153 885793073 818478763 865480753 251558879 819349513 68232482 248417339 263064606 637051551 937252630 973102343 768359663 809211220 156165659 791233489 31042728 529525970 781488925 799827821 453006122 886372947 780947349 854366440 297424431 470125114 635741076 979044328 446364494 640830925 596066078 803482737 362435991 674669235 679233693 896812403 757573132 928801140 934655960 958421372 75294710 643268468 881105204 990425095 97853604 572261031 397573645 419597420 623274034 984924892 103596016 831834417 422611597 643790355 572200903 955375600 477059728 540809219 144265235 508829576 13174769 206298799 32110780 67993376 808101478 926223589 701311710 998955990 454127777 560324647 425030168 856712412 516833807 812782606 503986073 993519591 653537330 966235334 630621337 754610120 11166457 483650502 159384227 229450379 716282652 853388105 801699345 985833092 347688591 908307175 116033944 509163450 141404063 314119439 711717796 767093183 733627028 954205880 876771386 922357892 633424646 827978569 383204454 816150025 529803397 829648136 998293208 998611041 926918065 953840849 194158141 669938790 188906483 821262621 922500019 939528608 638711506 843702642 817381891 835623609 727733147 765418181 355122418 415390219 938903696 989719624 99565289 401445902 652263578 925039142 311408859 759421028 141174307 833327996 549462897 704378653 285420637 927297037 115325511 871901948 408297318 960042230 135433996 234750417 772166369 820394926 129968121 157863052 449793196 453313928 632175660 701994666 530302030 771039208 774126827 830068930 502793469 717331969 67351769 413799218 130319470 594368562 813977636 895378442 597685184 666533663 976231718 988882588 336219975 740462450 406096116 817055731 391962890 950313422 477682005 663152057 67340227 944957207 765195183 953898633 362872779 493759275 63586741 803940131 484842471 764812192 433301486 661156126 817039551 994391389 304379330 961766236 947740593 958793586 850014663 880252048 258344506 547221470 65046357 662424315 599528023 899075640 644402679 745937050 10327634 777524535 315916841 335380635 207578400 919839247 272108910 444526619 880887343 941156180 251971233 728980549 786731355 913341611 173958943 595220282 502176429 511872516 153921181 813641192 213649855 404117864 377073084 557223873 521279493 679846661 249860637 274810258 737758984 918034149 484367663 773733167 264111757 560952716 24249221 357470111 185266848 401342644 669844883 823010913 305561513 764729681 215560455 310429266 803683036 875975476 472090934 907326273 268309618 409005425 576852632 804333162 864717187 867277943 252359199 288256566 130480988 748194371 158941370 298806592 589804317 967319484 98863354 289329514 332089284 550048596 702387352 978298683 307200617 484446717 542937599 859149226 686427383 777564373 536600325 712271217 960528184 991525651 452333207 891238095 920616133 957484519 819011692 956845561 643513908 834620205 787468247 959776097 250786469 336018544 349393847 729650313 911956888 975716113 303693130 594815534 567766061 787670769 468710192 851395098 284938708 556849793 818094568 954957576 193774315 710743717 891863535 928551790 258302778 265500628 319118436 380268179 233631351 845470306 612882134 717601298 323390314 457231097 25058206 590935646 91444356 613691178 241271229 763349534 967625366 982666321 285265855 870192834 649243973 899038056 676690583 705046845 221736877 679600999 930224938 987701465 373589338 737290814 107779693 921253294 131912575 418287865 343869193 778005298 879926992 938696203 705898816 838954851 135681420 465245882 619215760 892161287 529846125 986911369 746796882 753595067 740551049 952216683 559695654 733887675 316465778 634678268 751920088 788067816 233080380 891439979 127082381 807551732 276090374 828128899 990742692 996068536 187526627 374904776 627036002 914249215 245026006 881327831 889330520 911221271 877659849 897806599 651686173 736501765 20121065 831969739 132330511 228754349 963967052 965965290 996268912 998565761 171324695 858390367 779194284 802333081 49612124 648745105 640153078 804448469 135896102 517874012 51407548 887109484 80341389 178371303 435709931 455080623 61969216 159513638 740936320 837876829 572048892 784869876 608594560 657070115 293546841 861938411 200188234 348011921 74400695 360169277 512111500 933163645 264610708 622112817 286298974 892200509 345828250 751258814 404255181 550551979 745914613 901792067 739408960 888994889 1126228 440393953 9727312 713927146 355717411 857751419 969444573 987943659 38539595 576151586 82077480 629241447 787621763 960442404 416193368 824928985 624664889 716180317 620388981 796076409 569862450 925755637 819853663 863353275 413355169 771976827 628063109 747605842 508362402 922347557 218437871 349731765 746041683 964346990 368223551 666265411 551604183 772842068 67326760 988617248 304986017 819915389 794329706 960966836 120184211 625249924 818795582 978207457 353886219 732978819 298825775 357102158 388588815 807038844 551233583 888199893 29526058 134589282 883127524 922420664 204717864 773827261 832015930 999194928 504084097 792421630 733647732 948440835 896231971 975070531 731534156 876393205 29740767 866320547 261401964 600460326 825281137 913322468 776444972 953141004 505299655 887730371 334978335 702042082 480726639 838398384 779061183 804653295 73556958 113780736 283313605 866284343 321950960 880151355 878831905 907758975 726060405 811584974 746899128 777763975 840627173 895213655 400830102 457182654 264705703 721422447 454876296 986611527 444566765 522121743 137108653 428960273 149929530 641333073 932975736 944739342 827667354 948396388 440298017 616914795 369595588 646233641 239891679 882098125 554089245 596346533 99798034 491098843 76167982 743628070 424547300 720457346 481295996 870172299 848630731 952562479 872219942 965674378 83430612 639635077 840137147 882089879 122280038 553382962 308745509 640417992 990760840 997036529 237380273 548318564 446105404 598799283 967084429 985075476 845817345 870110014 602806217 668019958 993082357 995033138 953664599 988157438 468336025 468657937 982513972 983399983 249861019 305913847 963910409 983400515 832115267 949991492 423758567 663011143 32602046 681881731 789705696 920270666 940333137 981026586 636827665 929479942 476226137 868254702 565682550 791690386 559091670 559525921 191976710 595483660 345599262 696305472 179116428 521756350 168567999 227725328 598695604 661505382 513054994 981319352 840696963 919593383 93539129 422714625 19920388 410980277 686972400 877049308 25972632 539134934 440175131 529127562 947037418 958300974 266513460 893882041 375384112 886399197 663470264 731162978 617697191 952059044 911909152 947500817 742140177 916370159 944048739 959095485 120716942 151649752 239286058 445013785 634955274 670268497 896085928 911138903 137571496 162696367 244673700 550962732 969055009 987068431 56797556 73926376 475718080 626512999 990271419 992524167 992324556 993200430 497527239 879837754 44133643 125053436 695994080 802447189 244017764 654748380 372740628 668236899 504617826 640411983 467412750 745135225 837450060 972529563 94397591 970146509 967220725 968313303 750708605 797569876 758575610 884899284 831856145 931350302 328627483 852662858 909640450 918390171 513237572 635832159 6748950 204181780 228040441 381087833 235684232 593830284 737935902 910408046 782719710 845604204 94540880 348346189 267175883 610824798 257699512 705121739 305109314 533189338 892964586 903974814 694735656 932423681 784127648 953106319 499211085 930840954 778483229 781737187 276928555 599421889 312615307 659499127 658490446 734918255 134868161 965383049 809184912 909289559 299386055 543709551 137410227 307620488 925238182 985416103 652481366 681241503 136488953 825596567 615741254 784146313 122691155 348804780 772477871 841231279 886025015 916706041 241346097 481748573 497238413 778263996 597995096 955844071 277193973 384010233 324162816 481509565 111669303 828640207 739547030 888872145 964264338 986049491 613249320 799856885 862697370 904791446 533395648 697034089 42669464 730957643 620242277 849169842 725257055 931092575 902219705 934354735 667565344 847235207 8842151 918379062 571549558 954061662 695840601 698432391 290790922 328051122 189543732 480635897 638086455 921852180 889089240 998575836 561918479 814085557 242423673 321315932 342123423 368623581 978201116 987562339 579965711 940617458 994933483 997616745 255661685 386000368 101828892 192346073 821315032 991655000 808264853 992845845 916457612 919504559 449889292 805557447 900944685 920152156 905357896 998741781 583842577 657757399 344656560 378798317 497200734 856646503 146812038 926851230 248813282 737508607 668176513 748262157 297861905 387528574 522254640 797100406 30182106 324575079 486329595 961990235 947655068 974658437 55050402 741656169 526479833 618277188 75431530 888437147 335038489 582356018 558731952 974864371 964224215 983540754 807198214 939342308 99881975 126588784 768024879 810591375 305856850 436990448 477022552 495871327 805179060 994955169 805908093 809189597 134604715 569971605 780274235 933616837 653170984 749284398 615456607 820225470 876475601 923511454 93415156 910606191 351916822 445011612 746324073 849512273 347837885 597248927 109343327 830082982 241723018 346984715 401963525 769191776 652682637 719546900 723206436 894884158 806146511 920133974 442854375 857279981 10446139 116857803 930881761 966827982 673703729 742738475 899261429 910650127 585407310 688397410 104408813 331972599 880702345 962440335 183469772 303173451 889257367 921275564 929739355 940814834 226450349 380918642 53899859 62228802 352297672 535243275 816865177 878338314 218623167 304808128 224387699 585752931 309265923 437977704 570923478 754501446 205544286 652770461 302601625 790015152 1177220 702438165 908840514 926887626 824719610 960866125 968746003 984950460 137090458 614026993 450134779 479504509 829353517 836952171 276309028 611366175 599870818 866582372 604678501 886797390 992570576 998108046 429558538 695567896 64804696 639046902 660386903 967077454 976086320 996670924 993343185 996375445 728019895 976068535 906325984 960511229 108525783 790395811 403005220 477906794 746748350 807088310 184367972 562202523 511308165 865345287 371087999 992979598 301379991 806090560 957817563 959424899 460902008 870970256 978237826 978633621 521975526 772962273 173643264 750020686 954064884 962095631 360361973 747398770 953783447 998213355 814641905 912636186 262317967 535083025 305702514 670885616 622775739 963973306 879127028 914434675 664808931 818382259 391960748 676697555 325285444 496455894 52816731 993113741 172055515 283744537 439889057 459604527 94198643 318502317 642358894 805388542 179116248 357458947 905538574 910606171 664648805 980185805 88264890 432326167 559872038 797583671 217631194 803267637 376223707 950201280 423464172 782237632 595041354 752645794 817011271 864715210 749617296 995206971 433190935 684431443 271785323 468072561 156093946 420803007 564746900 875956315 73522918 723668968 983497481 988317663 149959148 493344060 867969759 939984646 773215869 866162210 691771832 708197752 975012478 992082703 434370456 667824168 898293468 946502110 697987380 814815159 511762483 974555354 440552247 706263348 839765202 880576672 302387852 906287872 660118332 831948469 554452702 896956448 837790753 953555206 106162331 421795426 448003795 630880321 817672821 919625168 905269396 931719772 676259932 689226566 557605502 916567688 458113581 684479852 7055761 958300692 429877717 548231791 44032433 697990644 516928078 628014892 304360991 342903337 70822556 630481300 439645253 738102957 84319337 212140612 429457410 919708588 188254986 424177918 788612546 957481530 861990827 969018530 2203641 233578633 92337518 956303803 548075653 572021762 772074746 842691355 500881401 708358976 312708861 599301258 386890082 938714198 249797494 273138017 242645792 341653387 497695114 883503138 549834578 593152928 507361540 990829138 391203862 600005215 772101484 927283371 998097760 998243714 530651732 811412580 324108654 539392890 690249338 951493079 717323180 914434240 38884549 810970954 843325308 916336685 97751437 156677629 187005653 290536116 8052756 425636690 926437482 962666324 147644780 366438065 575813972 672632666 982694495 983604279 758590386 766357287 602413575 934825074 341000786 747283037 949652193 951186605 814720394 985845560 620010435 788679759 134977450 731922181 336440702 620818413 528630502 963832826 278470254 592139217 827159703 980042266 953462293 993734549 617218450 643157314 646164947 799618479 987957340 997861679 438011065 477548361 341436215 819219528 296040200 335736797 185042656 708897529 173993946 190146882 156764394 306367325 384263525 498856485 356391835 981343698 480373997 822995956 510154529 654311483 614603275 803357682 532656958 677899702 397697228 849935443 701757209 864538896 666699521 982506552 673348672 847255286 889049596 993176248 939555170 980590599 629496668 975369099 137604158 876807438 89718621 945241864 238074826 418175870 898642803 935641012 858757252 858764082 144744307 841356221 483626186 594590312 226069089 899089132 779887588 805814496 851613095 920095392 725488922 874256032 458763414 811615073 55859938 772609311 580241548 706769269 390363935 452952107 662145892 918587776 361969408 528913694 787640357 793363919 93745483 640229158 988697157 998024723 15189188 490296432 203001513 545759523 597886777 739305972 572928955 582883464 986590443 987675500 96571839 463386922 686329858 945870406 200289962 771918060 977080937 990368908 33408737 456819963 667079996 896402347 862458404 967898803 548482264 760662861 667036177 790367374 518827462 764452308 617063397 781099451 244501479 887869716 195283390 757629816 593651714 594167608 355415488 627482618 206803988 690184175 640516252 669047887 571441167 937583913 176322242 518801409 7494274 777080249 375662597 889347699 202257052 333584227 164675384 214898994 111761170 141591103 404420520 438136853 809047213 843085039 70862178 468432155 116515610 934413022 137946404 562207211 48006482 595738679 246781514 432474915 534714150 825162251 688462997 813156025 343843345 804264544 94289472 515392896 475191716 823718138 918853943 977820797 557491464 968588608 990785649 991462792 433442477 844373478 290738736 918691255 970086675 985629299 967523517 993508364 766840290 910815559 405872934 866408064 452268571 736252481 754060183 899295979 36141411 653173412 89336598 726916633 109664574 389870087 5401775 969139525 567443313 882097654 32755878 467150290 57585300 670295772 470709160 939062219 661450236 794231758 75487760 922312363 978274830 983419054 863144999 884631302 93922344 847377360 749103856 834979324 626346019 920573071 239506150 878207614 746629645 759097576 155914337 315088462 844586419 884243690 548791631 705772625 13808316 237992230 18028500 614805613 262220366 936662148 674619285 912461169 518723068 755518187 192926768 503152956 979564609 980655972 662516747 795756069 265726844 796226063 580198027 581223934 112304316 428486827 666094023 961966485 16546459 460848530 106048842 252362275 479283479 852636372 909484038 934903932 31601272 166663014 977259701 991375275 256337371 300416596 109306292 331340346 43609752 411186872 384919422 503062823 688987925 776373228 34283859 173176100 920243667 944815327 493478463 935986305 202703499 905685915 357464952 655759822 190979721 348176991 4426227 124327050 902777591 987334380 432693539 493648283 19657053 803697988 362979392 611751650 775070729 899189423 779715064 851609933 716001203 782831002 155230143 813324759 486107024 834176941 732904381 947628034 153613212 252990592 784446415 798769090 892025258 952769161 107106862 327714410 395757189 579751812 187655852 905859812 993802199 999044097 783397364 834560285 441080244 841605122 938045904 980761522 316023256 884624550 595107244 611251016 897533568 980491770 273338082 579573227 150727235 614416199 688933061 703119476 45972520 452472174 705835452 743572256 438506403 688731538 324539896 339660626 834003411 842533600 43005338 687938739 818647052 927007389 565553832 628642154 359996119 865834835 139451091 460233392 948417354 999225271 504897229 792842279 882685064 929182466 117676013 668019662 393539852 423092658 652630677 742772514 248007349 422146419 565285372 735857872 536317982 640059146 135407776 756740210 249485773 790783542 922474539 992954931 228626591 926648414 151874712 985099929 530643132 934622605 178111649 332873430 718474850 805720923 684316142 958616877 59796680 277776220 590945666 614203086 416240992 822598956 593642969 653658870 280893932 490007188 634938462 966399720 416708592 527414392 749469430 933117886 554796446 635824598 237938626 553988140 76869232 475409139 451347907 955615062 34199339 549271957 959885190 993251518 157803313 924018995 607548313 607894368 586665911 945418076 905847860 998946371 996582799 998035118 643656124 712923430 595882781 884807627 24513859 71907800 116600456 642288477 829003925 982068939 811415989 887069346 877154941 925123709 103676702 331067390 112691819 689211728 44471877 375159795 208322694 520374954 257916279 425199898 239433805 767324671 519532233 849125914 656891243 901278467 648420692 904435523 47261602 100564262 939918815 979082773 847897368 915553364 548655946 798391782 456053628 526236718 583427357 954674535 979206497 987402083 343777846 832348306 514538393 615373956 501540381 967728131 702824607 825470027 185639416 958896044 132300569 583982641 883472462 938883205 850065457 859045876 663751998 811475742 445140741 975354158 471267351 833392292 977319854 984737975 349529800 383177691 80974007 324226292 88869090 426657775 282876246 825154731 93455982 489050611 562089209 906106203 303550965 486160667 125006281 501200067 591451926 741719728 360728796 835102840 480393176 663281729 330161580 841071774 348330564 596023951 290245923 975616819 58151291 399017008 312194352 909224542 729040345 850160645 99681402 415809259 898778603 941880678 481453291 635785599 725143108 796517267 628876162 780269933 402505664 409573800 985152586 993684148 337584284 889615512 279286586 759033669 847637559 960326718 222427401 665637283 971330843 980814983 739022178 953398491 47128642 325443792 346780507 770405379 110088931 747456868 587682466 927335564 563892131 874997095 473817587 849345884 856648697 914960189 463377487 917251307 525388793 782992991 364476929 847282290 100710028 437082183 853583742 950608674 29833991 811328325 78063076 177549186 750083575 779791952 93697335 577161642 323886459 923329561 26199962 232315689 65302989 947912401 887404060 902038876 482501817 958743726 186530677 204054578 484284930 488793549 467630658 509886439 753949592 860616541 741494042 791735340 895925156 963945425 322497791 420852751 781401767 899895930 527566020 888220732 154597890 909526259 857000733 885131146 358831458 514156174 899947098 989589452 40784572 621574685 715268636 817921088 792524630 868598200 887527433 948104549 997366362 998550346 779606116 900041364 719700368 914628613 229383270 422599888 219379492 455445095 715448793 785915134 172027811 505712265 649361627 920612536 61176223 534491466 944857658 977113793 387429051 646368593 43530731 478781367 781467680 854430697 936218728 975571652 805869855 810264007 741056342 809535576 336170212 594004601 500324176 821782274 563253819 960157682 418758967 435283846 906265622 983827347 498214185 674632555 872516373 923173026 137511126 934285099 472291923 958611375 887320825 940608851 68864435 604099846 266473034 769569420 591344558 612204528 583416278 916937313 627354181 946877077 143067916 564086626 546895889 566243529 427201347 883419664 123745748 509832867 774725686 838592767 576446574 631289624 568659462 702477328 281502085 910470969 743301847 982661025 535621495 889381528 99180869 715386265 335452902 758014084 229613036 773797429 446651747 885208606 959957236 979366786 637163812 989529535 678279856 786780728 46662157 498512413 571489330 576766836 421816634 430327644 192100821 867828402 764217669 970449316 400994964 627746425 824723113 961557515 856783542 968260305 34303907 573331881 556307246 914158096 274058486 696279593 552620188 716171628 600584556 962286235 462276125 766398164 771464861 808937776 763433310 956501828 749504509 963688320 86093873 630907067 497928916 875760907 711586131 930857182 787951986 809768799 57504475 844986056 791709995 806942070 793143420 934237697 254461232 409247781 614754722 963212955 495772949 709353735 553229756 574130585 840832092 985808077 6822702 892006400 849088615 926097245 548517606 788036557 843626764 849939430 972382145 984184155 601063654 682102005 836425350 942184596 709723047 915478450 492359548 698488402 508350974 819493893 430332753 734056123 215633866 783989107 287246478 390108308 963408394 994722564 119793722 974244328 565270365 760502785 91818454 337344848 623076801 835671357 174112171 433993906 623605116 706867845 737598623 822063945 56841920 757347524 410208541 998264774 888283371 967657180 221832353 738868904 289447389 541212183 321778217 627618387 755126748 895733832 714236830 891441404 49987475 476267616 126580545 408009248 270166176 702537973 213958841 467563314 66143713 790575112 429976130 666332824 854913110 865549234 408218944 502361541 887823368 955224490 509547379 736997934 374795266 831073734 222659065 717217213 237997597 517600823 544731533 694321349 323030814 462372761 18564969 926117302 652616099 812074340 737940487 914053936 260752625 942216981 288945333 800982553 380143446 518771016 665704535 711700207 421297995 537425217 474225313 555517072 89807803 589928035 281772906 298272456 981930505 995517504 114730565 969012752 174536210 358182586 608125086 807989218 100418488 292282241 422469444 830850274 812866100 863957956 601782863 915818960 717582485 748289308 883647813 894180039 446932807 717117581 969552960 988729797 172395425 266670259 337772479 761106672 480152644 956763805 724575761 757990495 688407660 730475795 542960368 642159524 858829886 960766321 516241933 599243557 504892227 750151391 888620141 943907274 565434381 670615123 625249589 998331532 546182614 833802407 907582303 938407736 394881997 735834983 389698257 691569951 812179157 965323448 876898614 941607607 232152347 603349296 486685354 720830162 906790897 911052363 850567061 952313937 908617780 971034581 580526628 663003833 585849433 827939788 441205699 939803485 768318170 800770096 467465876 653950700 296144252 793741966 665190994 745478701 719275176 805249790 516497071 927004080 152400123 385350422 299893038 389410832 532858963 985328381 426989648 580442750 236590576 373287689 66906082 296709887 556455747 628853929 881349646 964834939 427418583 541840074 515350699 993597235 169364756 709501558 753456162 875841944 192125365 838590622 166797846 291163965 105873451 219095180 733019807 997962094 201316187 940292357 88380666 541597017 340740853 381986197 298988842 447747439 424329393 699717086 872551482 937799736 323911104 575388103 476945136 964122468 463920697 504836156 428333483 929509056 29264650 978416368 678982839 787501391 624036069 922587449 217390143 450092105 427192457 661725171 638258792 886412717 491332024 538822157 452345447 974325624 112444362 879132615 889250081 993062787 352019284 706018557 103612486 824947472 315978367 756930032 125234813 393168004 879236917 910737336 953764072 996332287 457649321 810162111 910385083 939610561 575648359 873413672 401011403 454280558 604874668 656109981 23767497 576659969 463449118 869612837 352311686 621604665 225549172 757636833 387581411 444066412 703707487 795550278 536982042 861615336 874876459 953960527 880863580 890167308 86188954 697740945 891860424 972233422 386119345 738239257 164788747 621284606 876806886 997140557 12061046 42995270 393898182 935846903 248984237 343365606 217838278 828668971 305727462 837334428 883954474 976969319 243593477 846409348 80685072 747096557 250693776 345161868 725292667 993603462 509165136 710334662 996151044 996305432 406458353 489454677 459776750 928467179 89343777 423720246 791735873 830200411 620590014 947751547 804080473 986946661 829879422 936925058 158670959 213656269 588083071 766972833 408420676 498370681 333218956 909839720 830730166 974081530 244362775 590392051 550975781 552180509 732740242 929205450 379872296 704155950 951806376 976586008 366123658 610587400 834205577 907198201 829413357 875715595 22347593 386842567 214070948 259803549 475871055 522805241 397561540 573575206 454295462 542457990 562001257 623520744 565542873 621863393 728434569 865459773 65443003 372850855 824030330 990155506 980621161 982473324 532328198 878657301 370084595 407466853 892659917 947818893 364237201 978495132 334585203 355035517 608980582 717621222 805362579 990539953 10577184 582886995 594985119 631257037 494031819 530204893 204793046 844228948 767792739 923760559 996825122 998561364 845722730 854402142 823569554 856239810 1209261 200127210 358658664 759399703 769656418 793331416 470580081 985888721 950250359 994965870 903860995 965415275 939007552 972804152 626559680 694305039 344366360 734197162 664595236 767097467 685346713 691641236 3128823 63466303 817514704 972597533 682492422 959780751 821215575 981574686 321086467 476752432 203853950 927872753 493095545 642932068 874775573 884592730 556371075 881891423 779742443 822172684 933325169 968334019 569562553 798780614 269982224 448898331 247625020 861773200 266321483 693306878 126189232 625750860 647486963 699452840 351548219 833126696 76593207 360313696 376435686 526506437 895976184 983973871 838815248 952103317 242133140 569695212 46464078 710745668 386448183 577308717 571728685 786465450 847900321 991349251 164451042 279638735 704362836 938471524 783654758 893010181 979507543 996081331 975993616 989242182 63357881 343118355 74971908 823934775 791070169 995747731 990466912 991102467 521876331 721960161 108596000 574348111 92947887 105310302 609474837 633839794 862681828 975366375 171311328 937263428 32156025 575176619 680388263 732933621 409595593 593463538 978512954 993828666 371249855 541218140 768574979 856666418 75112817 431931493 828716539 922159195 640381013 926559315 229641164 468892965 263567429 469458651 732474525 874554551 340950558 447246948 654867525 695389859 347271583 575279351 49272971 856955068 747929096 943314292 315270847 638050022 351178122 467238983 623202015 946895217 120514817 731533978 481846373 980024715 885108775 885570500 66949009 404622693 814869251 829307641 727920007 805044940 48391809 989727860 913253447 921383628 870472003 981343898 950118478 997302246 316761247 853540258 92688216 622659642 813613330 830426008 574813168 722793659 275971218 350725743 910774044 994177014 329111892 369280407 621864517 622916791 100344888 891496244 763428799 979284010 138753186 962333423 964610447 973122380 357815944 396370555 119920700 899577268 586625742 666032505 443600831 559859550 320246866 824608596 321205723 552593815 127854953 519576299 598154903 763653591 822578798 845353192 130477088 971115351 266761039 351525068 639475439 813470874 630176540 798699490 375875867 606732272 106490732 603524420 382055650 784173131 55751945 755698200 520518505 946140655 197698501 614560887 258989246 363127678 953941455 954167155 171455751 806437523 252624547 777321072 801200724 958167518 70170082 140650309 526039274 551100237 846982192 954061368 498647665 850086044 2361370 121698284 976115825 988887027 694790487 711194181 866147688 916289815 982889190 992506011 444974028 713417039 179466821 405691926 299202573 484522156 6136081 557335592 431064841 707975766 196165320 822883411 815394097 874469261 878663507 974453516 348428832 598544334 159689532 431917061 69635990 129565253 811296659 939751530 380284570 968959849 915100880 959250934 540716833 996254683 702645220 806586848 329915855 543797709 329782292 539788612 713178670 762729999 908590034 951272749 543126976 675839734 910088048 954700185 102282705 860087187 647616862 659090059 211939956 234846982 248669784 995275269 895969342 963838303 68317162 511985174 204425823 541948753 317711062 710039913 466686095 981663499 315164989 535074638 766498707 989052446 523213472 706653351 101898561 803551161 776604785 922934873 861072151 902774117 748081553 963966704 70209366 263323964 800999946 887074766 561477194 728912276 662358588 766857011 34325717 700919323 182393402 545815278 513387527 726774014 691020915 707456826 695366015 846403104 977661164 978901219 550482077 714181491 329529205 744561461 634156880 851388665 41024116 71371285 651523561 815318909 675288726 881015620 748485664 838014130 9372526 931514041 376163787 997918359 736324620 904541320 750572035 846030107 857175385 909526888 865076234 928881537 912357880 977642189 243236843 423296923 721767541 889155445 251259089 452203282 988746040 993955381 256401899 460703600 748942218 827426781 453878063 725114703 139946144 819073939 576029741 674129533 399939385 478166842 696441492 865459573 403204080 995799377 675013402 828495395 554692129 977916662 698053813 950450306 233629024 887355014 562133951 622029132 936169196 977878683 672548958 932978337 570461226 880917615 323346212 740501650 320027974 484759806 575734983 983442258 969960362 997056837 902317703 965769343 243823681 464067968 208766844 399072626 748105140 960610754 477809514 671632709 99416861 485560790 830597781 959676497 188134681 565868621 363162449 619036172 308644914 654369789 331710197 769059006 634992464 896819353 228407773 573476490 270427251 305988009 937002785 977059327 651557359 915216000 67596042 170529736 931597038 963033556 261077748 893779896 313342297 725660906 226502828 949728816 212656673 844347835 612755680 712112442 9500507 106211413 712644208 798690045 404898135 739261653 643415286 755797586 504995066 571240474 871457405 935968102 911128016 976866655 369131247 657999630 421048457 648551137 926257532 990385991 453352904 816125324 912408786 918639089 529208097 880696608 197332315 900470820 127504931 940306070 715465384 973278623 857376931 990247252 552282539 979690930 941155607 973034004 589547181 703957397 759146974 900751589 709920338 770062796 102783656 878236797 463084312 968031984 351463951 919350606 957406118 970740859 98668738 990939674 235581463 949595458 387362449 840133762 945287659 992525310 116782926 155716870 81356382 560824476 524839408 718724390 121815747 791017462 816875468 845582181 5286451 560352559 84940695 750180809 999189785 999329561 886717614 971489131 222215541 719491007 462779119 913802791 115334602 948279735 847106731 910535163 60517939 92060752 160964955 417997849 601513617 760393555 136767629 176035909 615752495 813281379 289485781 620273561 333243185 366353401 459502617 992099028 657036092 898795440 716841128 788226562 309163102 481809146 367664296 994674203 13527819 831750771 41981010 329839840 577359033 663785512 505804128 615477198 207515247 429280870 734508590 971918394 480637903 531236704 263464833 310426232 671846715 909043119 622822737 762591519 252133436 521730119 933968430 958927005 808242443 835894071 492766905 680495379 752341452 857981363 2397214 63048172 590997477 813917180 494015867 959219436 168044980 379675946 776042049 797176147 122048128 424463091 304982399 334803556 871167891 931610709 974304494 989458091 314720151 606024907 853506187 971154987 10781335 615525231 716937924 952048735 579231425 858560019 40533092 651655595 259088773 326107052 139392944 178003470 900841473 944471640 815203175 925068159 131434053 622351144 555470806 566901942 637106761 677601960 490804839 948603427 618149726 763563150 872047727 923128199 608407291 981265766 805824884 938879343 209616782 428712185 906746322 953474630 3672884 116709814 349335213 447749669 765677666 977388135 395533047 957627339 184826334 662093986 31595593 492145472 183150330 186536707 326493567 735965293 134464989 499257565 431862745 515285727 635674978 897504375 703271881 905163988 867848338 919161672 498286489 770558385 272070186 658218203 123378963 470258907 534638492 917797603 322917284 670563867 885988926 927110559 366168224 912341799 915233312 951504372 731540132 965108051 51588442 317909359 293260626 328827432 475902627 907781426 246421025 849855518 684885108 760447318 841188824 955980020 763608738 911478996 131183584 375054504 492372257 514936014 337477065 712332387 141948599 249368367 79461129 924047370 596358211 657457373 178278471 501739605 691083573 756907901 244641309 542638195 547163319 909083065 253572617 728829464 18148621 534651163 69956772 344061007 291441351 837019603 426559531 643194902 269503986 919804659 336648106 799735485 48948857 936554360 778233264 879671860 851009383 988456290 115489497 611946853 566019400 638751897 785292223 811288095 156904538 637417557 404926058 833968990 321311512 687495012 656133440 729184570 785477246 804149539 949466979 990486205 539603624 991001093 81887700 132817925 428182650 608643704 605598932 919419773 400320006 445373264 191323625 521189271 752182631 892242336 828856697 959274522 588654849 941046836 259529728 984436183 691693199 887420066 658867415 830828160 628908125 875947416 801040529 909458439 846454600 992338950 378159076 960017154 928420401 991974950 894745160 938164089 480224430 730577419 789689971 911267730 951792688 997671719 40719308 344237718 977952807 996654930 212039875 831802865 300049349 489626291 996538644 999102235 248047291 266759288 965819196 980441646 276860690 383628567 742398729 807644499 244573374 787795285 588303831 888107780 248899187 252483693 58213257 834670315 574197419 616199948 108683469 138166761 4985676 908460251 654880796 718838870 546966460 637477053 857516846 865649834 81253797 715259119 249610236 369686904 489237022 499654050 267099233 631765451 338567598 594779604 420115274 571808236 331473411 496535543 369482267 638537444 314659103 969406217 713716660 920639607 71418413 170343682 271404636 924760738 688933338 782751338 684474339 768646658 812889544 954693767 908147348 958001194 616666004 928490167 295989247 579288552 358666538 559337095 557295171 597727312 834767452 973651762 630769111 819841352 795477885 973975754 622149478 773425442 229507107 884879386 324162110 368891502 589294193 850102169 896364156 955145884 181323673 428079881 532665704 616030690 34495300 699351686 812781942 962672704 271724895 515257589 943052221 964082531 931385745 939477933 517254858 922790763 562170404 740539594 669418336 882104963 74023997 711500775 794521906 901195514 393234182 435812741 167446521 713556970 204261423 457205614 672745809 793388238 20577668 989260283 288188335 382618817 85023655 594762421 95316667 606155234 443544193 489751630 653253108 767716976 811666079 834679891 81019105 663865255 151171889 432697124 117868856 904116076 631859738 865982013 239007067 994906541 908384510 962486272 723909290 860929583 469748951 700551504 391577481 708887548 458375961 670349018 785805105 832903613 31219686 328474127 825568960 853287782 597862424 617442717 296513814 593026581 421545995 938372803 99161809 843916645 207786804 338843779 279102192 587850214 293292304 842176481 91665790 368577418 992359213 997015166 853301375 878262160 522059598 582185830 639882298 910762709 761414056 876082935 39756001 791534801 125031062 250460995 64784768 639981521 95995934 178170503 88115161 619734206 789041845 945525018 958320206 996878471 451711693 506281989 414093600 906615254 854397712 908807735 115585087 774242880 574716696 812161910 962809484 982630346 838047342 928141716 2586868 989589660 388317818 610117590 519042486 618528119 393542230 968206540 900525257 904603431 502774421 622598976 349155538 437865981 669881942 860101406 337269611 743304082 922249544 998764534 667593233 837844903 211866399 252244669 644711148 844307866 644313797 739742254 104263788 412458348 252953000 439477737 920835438 931942368 561658127 762582465 21094457 212128963 553728098 584880390 69679821 785865526 904599783 909303512 147998863 757045204 979440738 997296583 703268227 998783421 943265813 976947770 351686886 848212516 955586396 993891170 199760662 240467293 605399899 814865124 385718046 726607052 130265069 785630094 35466598 591737542 990888118 997765668 652248780 721480454 55155854 87610815 959968740 970201826 981202466 990571053 854345468 979714267 420173827 646940270 885751093 907696291 469828867 575867046 656035360 807667615 487204090 889264852 13962864 786570925 878318814 941505564 541658548 845816496 187988464 872569420 17487420 245008071 702036072 984886565 558839914 678234992 576381262 983754685 359923754 854795434 767901595 818413912 66953594 190506366 758221681 796149849 169397599 635290366 8067975 217899629 413583797 548951708 224801146 363467747 857756852 898790543 333699777 485033759 691738001 699361893 397313096 430293499 169247623 535846414 720947931 806225045 789865029 902548556 568602683 862149822 521123353 708618605 511347371 723399623 356873936 489899142 705482304 746907490 641020093 774358429 10753419 283423172 549212938 675183915 886739282 937451060 787925645 832783880 195176443 562299143 25110777 985823264 508410288 787953700 519511379 665169347 57318429 421721471 763464652 851647482 40172163 559666680 414956921 658923955 18182701 435424839 688634038 887471656 65057270 621845612 439598029 953357720 639064999 893106577 647699575 676575048 117648969 218432410 994600874 997847866 67217687 557799552 35020846 427126096 772215369 800735295 304310969 486021736 118130778 603966580 769511268 771838540 395154952 778456303 896047110 968972525 497943254 869578950 163208742 668394127 750707069 899217330 469074512 589318993 574538804 903724944 139611802 350844488 611753711 797734585 462138559 518477313 152834607 633063861 204146228 857168765 479175067 940979455 284379103 461927441 738000638 979770258 434782334 764448542 275938781 545751850 276178992 440816020 525442366 803373147 213039152 446309481 658736220 767185995 284876804 579300069 407160831 784060112 59922265 218614233 171245930 563450058 860879308 945430777 996334778 998018777 788137208 813228082 628989364 903299942 348818712 675173152 897011262 955593149 752790859 805698479 253146534 418376272 504816344 789738637 828859898 883135010 53573290 448541476 539252996 931929462 599613555 887231485 23708447 369549226 479562166 881508813 215015040 228811575 294142461 563585623 544093668 827982245 146905815 414951719 43934457 954437040 447041933 643900039 644430083 753944749 875149793 879057106 855725823 864136241 386792839 467919498 375905429 627124791 99325919 429057090 759242718 939957521 750508140 967636134 266273758 271255917 762664205 984067545 879729945 993962434 104608510 854466392 237246358 944833566 632773257 688179857 899151514 937194007 497564562 807131612 385138641 989506880 770189548 965447245 593249656 635331052 926360227 970605003 718665199 873537163 69390042 379128076 266095157 701325149 610674105 762823736 793129090 894099406 41333583 975341204 841202168 895281688 123081851 195725842 460596475 924080591 256927420 697749897 672653433 813769847 111680737 931867448 868320641 878400616 404120577 766612485 972967534 998475436 55181121 935822746 386542190 468492859 83619729 299046281 694163191 919754098 25339370 549458329 597832196 680063771 785603117 985404285 395936148 841805655 492429538 939920961 12272616 760014222 633227133 724332610 815685619 885096305 816673694 826801306 984900663 985387033 607318060 782944560 537727831 713714775 358228851 859218823 946481686 968907272 147326918 171082347 604937272 954071220 782921283 792669283 854759515 858397505 524931118 749646412 401497066 564786027 273345458 576368477 560636147 981519378 842952911 946886079 963624269 965313106 901737479 942768234 706210025 744269360 272055798 841992869 822590035 959539948 762858310 786222867 972846959 990237854 252060992 997713451 550006654 970627416 753585170 832467845 589280161 683265977 240963478 650505086 449199534 610074758 464649966 644591670 508661136 915541567 483628748 882691826 928728813 938626895 872239680 889209618 229915049 998258872 514333676 682500396 519031856 813365150 987257750 994525008 877807705 918303556 527018015 732925114 676412159 803813438 660633722 951433711 502452927 554083432 624710694 641780396 822223505 894422937 340830138 533893554 32883211 647934275 913026147 988894013 717297649 721392010 663553150 758348871 288952162 685892366 454511126 558352712 275646973 703197398 76561139 631706452 734489967 953126245 534295152 926591403 635494515 807447559 303661277 838102123 537351587 701303401 822772313 900974187 635341041 766555238 367856450 714073282 359015887 531033820 761634239 929223350 78171999 305409501 381880580 795030543 6394101 704837976 701504554 716119947 450647327 971295408 23171026 280488575 180294187 284929005 78536469 670056921 978995092 993642741 514041906 694132378 838851798 990650054 985420989 991781606 814365083 994484570 46191686 115320841 913366063 935738453 303532335 617348784 68065428 183872428 797622107 828780929 774837667 933293714 790007217 938241602 925256180 959836483 513566120 937197458 361327483 441421786 345017839 985412250 723415944 885281843 115549844 479442765 892044167 964239493 59029952 502039248 514917156 638767918 85676546 113282763 835652109 946174004 412667487 424922881 915611559 951057200 639298227 855612311 54095527 128355775 178104451 527149126 359685905 570428817 838619023 946570552 642980084 918616219 551564680 787444154 441316940 551673439 565485616 652488076 472125945 803886550 921176970 936709541 515460214 864286132 697714812 760332394 864381703 917559856 751277328 929732682 932165270 945198169 536857972 580641071 199394798 411125575 365355066 370385398 278041809 779494772 478881520 754168834 140435099 735255389 45559816 74999475 477215389 493877269 257126537 308158590 740293528 792041766 190076255 728968010 579356243 582325673 993311960 993552877 562267805 866795575 470127420 608352472 209843580 708529266 217614432 952866400 529655215 532680757 809395026 919767154 752256245 828904955 777941428 959830551 262835231 843329685 899562777 994906636 469455214 568291536 464331534 526133245 200600817 606728565 611764023 612652155 426624593 566753101 541797392 599536118 787361108 960728818 114444627 157639715 733230348 810795540 717823769 811859151 866342450 986695806 56740319 435675104 874587648 976280147 888005806 913514593 352432168 868240375 348416224 866939711 529175591 685793646 642730427 736988955 928946839 935412671 895425758 902119029 275278484 708442142 958954812 978739862 438106823 595308354 80781066 725640976 380013034 683624405 491166029 724086149 77212459 214965424 57247383 785158688 602028309 630985122 4233357 89414984 794525584 910911765 549185 211394077 798615410 950504183 205086932 809222603 816462112 900885006 409354686 986431754 464492734 888812473 515846622 755621120 121393077 401739577 323958809 326010127 874703632 985674277 865501236 927562706 588681695 741045135 202841098 817710297 640927729 935651517 567243897 884004266 497847480 774364446 976076974 984345166 262715546 543040711 803622811 865560500 286741926 976476804 19777166 994884788 754088142 867058468 365077091 399123974 157078324 967231905 751416555 946949691 822252400 855385736 28177674 875706532 37441709 237666883 357460444 378207475 179603279 308992079 103330307 241845610 135885496 734086113 500951429 969388567 431471026 855121281 34635945 40548577 936759100 959757843 291438884 545582556 604075293 693401008 353216486 996201550 421994159 874933382 683654212 855119330 122620066 167339811 521440546 773527389 43805799 253748084 13529708 353985757 271727007 757845176 324825143 375543176 370255025 409843580 936350556 976940836 547331548 822358992 671014863 717928718 29893809 272460415 154198841 319753235 11218315 900684903 370400434 518825670 942266532 982853809 208598709 661931960 367025388 562591434 40936294 981959268 457895795 749245177 118260332 214133058 505943614 763891919 97718643 391074460 82727928 532851023 952907871 963247319 911120472 998330880 833980463 916617965 630372778 970140391 721286342 916638513 535095745 709176171 29372229 863381377 387805156 455609033 927721264 929609005 825328442 904096487 772358551 822488453 978641402 979339676 648806367 699654843 656424431 913453465 99897073 209488088 129016282 183788168 662936608 776694747 949252225 951323407 68799988 255335378 705580033 892475964 968954727 997573644 959717340 997511982 927479526 942790477 916576065 935139545 824101596 961758125 186641965 831466080 914301848 928301419 176191683 857687345 663722625 769699439 914623301 922817888 556770359 898298109 753217995 922694623 894616002 937860677 618226638 964968351 380600107 736328440 25812436 491993404 664951240 727221822 922016814 946789911 536638264 845553890 118471821 225478408 250688574 289980481 357749849 902934925 608281371 696229720 46374033 519958438 541535465 784569901 312879614 936657419 20856388 248084040 296394345 370291188 442149331 815922069 748066466 869893461 154608479 920996239 518247 623532663 474770425 698054038 390701893 849664744 585081311 745523275 269655668 354734095 298758532 393524879 122850362 702555778 358564095 477854159 609128472 876236169 91893773 740787695 29223856 761472643 998884633 999121769 917498552 948019849 430475343 549726456 928269490 936531006 107538808 467521508 374544016 555394164 367151318 690624860 654752454 933579192 320220155 612829542 740840480 955968385 936742065 957090280 437774464 798319161 545246657 700905034 251021215 396108922 567152157 581905767 288359368 774951865 141359292 176822249 549252273 980958997 745998214 936387274 501501784 766159426 27995614 582253876 616938862 635691175 319992816 630739350 762021130 939345157 833320253 852457226 95859635 627354653 725843471 883879639 673465102 962770640 15975338 665435402 175023095 457130699 558703940 922134534 641111632 852589693 98960338 824511329 691917171 714952279 577036396 597470247 758014386 877952444 930662972 931000914 303861545 402617030 579688751 761400617 308153476 638805783 410905473 727906099 318761100 975759040 80698436 780760525 508342135 604817498 304076552 859409879 651149996 661019216 904680016 947528567 351979154 550746048 812891521 842789871 571332008 814965483 467052671 513049380 377605355 643992811 383873071 434063578 36043026 553897017 961503248 966778758 587848507 877229447 612500935 756652034 118466469 447715920 312832457 517895059 684469852 760736740 509886218 526919703 437230660 535323603 136311709 918953515 496140802 687862114 672271621 807705309 939082066 987964398 221705606 627514357 66482029 879482330 90552671 274079135 986454581 988115852 746636251 981261996 639571403 899839000 672533509 932320114 948176254 995294757 785837043 842483894 386607473 421886432 124827257 972245004 620538186 732278852 207012470 840148190 14008633 270791044 898356031 919073529 171591453 420939619 727781161 882004568 245155529 658401543 93619480 812852958 285967371 779673742 515390487 908177689 906969351 979087385 755230600 816845750 773600910 865226044 342865531 557834655 974570062 975039131 955890360 965480896 134082895 483191998 262466348 841372656 672213915 799782932 391618044 576905030 428757842 696739489 864079378 939984373 823182275 853673557 630516735 826031269 309722311 902762358 20385146 460424075 788747771 918931165 900619925 937493315 302755287 620527500 167142208 514786409 642528923 703166416 720327398 999238641 921537336 959098874 876084526 953443557 826179908 887530134 441796669 494792407 345643814 415224345 209797808 538248377 680026625 916328562 9804996 233519128 699560470 810222135 732329685 734215194 668843713 885219076 777254577 859291657 450861564 913083773 323653521 906356720 645214732 816371000 760419809 839078286 56330505 478687030 637498450 745801174 152016158 311656241 75226734 265742834 145077398 791532926 165959726 455551457 115401170 615401612 609549274 971293219 648626407 941642725 486274944 700826008 27825920 416451951 147588818 508631370 172636068 706201497 527551455 540698795 461725761 701111702 604791258 715203908 538243536 565479980 417025212 781712520 904843230 975613101 583664789 707097167 508389320 815821218 803086271 932232241 121597230 474206975 466869036 892915882 402361410 549974117 170537150 730107298 389575604 716592296 450274075 743266500 691757654 785124464 394174472 807988980 569155362 728595530 175790244 887602957 736219843 789532416 774303636 875819307 324660748 791565736 411397969 699560054 225354264 561487913 891683085 953870611 710556672 909361505 414560354 798090289 160219331 451469829 124250425 502056834 167028105 689966507 716320111 982675397 63540369 994847019 367496502 592711003 535595500 924928443 657750478 792335149 210425147 681118846 886678512 983597325 974801030 993614114 677614974 715121195 689916776 752234937 275942039 605373875 346099282 842742769 68795404 137048738 787683675 881416890 977502272 983964258 6755373 824752968 847940323 874648200 366835810 990911308 252374576 418856403 62614518 234812453 980157178 987955296 637295099 902756111 711938569 727995183 68453455 563417329 76533705 638952631 136985649 718333690 755825971 997770854 558752058 755942272 194184730 978158806 671050548 844583454 848159626 918786764 729251246 906611677 823538821 900535008 270169686 601631042 649241769 652634925 105613369 873061196 645401007 821286730 635138752 699718036 710391300 834113903 237094392 567323861 808139802 912382110 641866101 681892026 482775729 794572282 844598995 927189586 132618005 214895908 639811689 876261569 407506141 612764825 491617211 936601831 53758620 533994783 56592272 389552296 615958437 898089951 341021878 939763868 994530455 998922270 632761125 699682649 442222142 982116336 499234168 559203211 525450734 732345569 920946839 925881872 151522628 397950509 593609741 826823352 315856440 868168088 373275562 763970858 749806383 894032010 572472927 830260903 266481240 531851744 779667892 937179084 239760200 706087426 126578232 236481429 111262665 977174356 672346318 874145001 99553026 134085588 134745011 168090922 711940047 956478017 212710945 823862865 564839078 728897810 736617752 864455911 254800275 899689268 417753903 803628372 685778302 693883500 309027995 646463639 870927213 963336431 196171668 984893347 417555695 950254209 81474826 116149075 148908579 457015212 200313416 648195956 235327194 305051789 940617508 976268803 51501960 996751849 291064449 859092610 733767321 751125161 809823580 865701018 53477517 523358220 770125962 821567086 532986681 595143600 268692288 749228002 932230782 933309667 643059685 960842669 204648152 269828457 630847757 965422228 198939042 794991958 575380395 973408080 856595880 914765865 948463828 953560126 816081049 962295258 192567540 251763574 262031579 720717049 84324365 685223325 946148181 954968232 358911002 538351086 755595024 984256758 235906073 582280111 962022660 991595178 646405948 646789759 302585880 378207491 944392871 946925837 158775549 208163424 337125840 355624586 837984499 962291293 690215218 752724980 809790131 938368902 769600974 871555870 504145454 533781613 838971671 863577688 274470457 341820464 211688023 674552498 28647090 143064384 938219290 978498712 39351856 550657281 867029016 965518913 275424551 923842037 965308104 988203818 69101972 822167972 739465966 964720650 211861576 489692947 72958715 244881320 298801214 352485046 154757484 195242035 943751817 996071307 38166191 482793346 312417903 875168059 131705794 923108567 231368058 237728949 731123424 749685096 811778867 814530198 318304795 981797273 676049436 855598776 60736470 461763653 413785741 812644133 697084983 821290085 16265507 787620282 515742427 789659393 164922217 518187182 461034802 633944430 838207296 922592470 151634950 311709252 653560783 817046789 84004669 919834230 167246544 650781833 548172735 611081071 649683075 798459157 491286549 664021084 474410879 529011987 233459439 578055055 993338495 993425452 939002149 955258926 769505324 862648617 166972744 518761975 113210612 193300831 677878801 913548880 40481366 379818676 157928794 632147694 470533436 616817538 367602359 914659461 480688343 777429883 697416255 761818474 884515593 907731225 483073263 562645705 862855535 964471814 875620421 967830092 337854543 359437511 341251599 495556112 603936630 776151292 411173502 871281668 183457632 967519380 736199474 816435649 416953002 694404950 925959451 959093249 699972486 735311890 917842143 991707782 794204425 979185439 590088905 916486012 942485969 993638519 501781946 534262381 583592983 833936658 716424328 832064724 14481609 991642642 482872957 911425849 468754678 919407536 794248006 947485087 297904181 336441849 258744449 968121170 744177889 830763469 291389316 912207620 774357919 853651464 148206394 469730932 643637637 693914051 305997717 561935175 429528937 940769692 654425191 736361574 913161388 999160438 627223558 852847506 383833283 458018544 750268977 853775438 829303122 937228384 677835089 681409873 364527692 659846355 819726019 944473381 964711686 997646940 438166529 632164256 62318968 358765050 996386718 996859379 330657575 909285735 172655055 848838996 195482146 820978118 502159668 863412097 238279310 718191607 435703974 693237941 375923207 497717578 913430214 982836676 777683244 828926664 403287244 618760757 501008442 511641183 952560341 983429080 223078602 980406637 570592723 839076593 496950837 782926216 226529102 758654002 131604421 773346225 445854382 490256882 353614700 970913327 993675506 997179410 161075678 562732913 857337162 987651206 942390029 961414877 949642310 958385192 154514251 971805039 680008758 750745861 727297811 773207921 345500770 438539678 918058383 951174235 981454226 997284628 63965997 846663578 92533579 327393566 895867083 949109546 561288090 691488476 569449147 708955424 904869994 996084868 192892209 579626043 232680012 277615849 939773012 996592267 259922844 566689398 741438765 858997588 823980696 927846061 89006421 797428386 728304203 793135275 135073819 494921612 926926764 994938920 494835649 773211016 705713379 710302374 438851805 522844191 990059029 996451414 950171141 965148206 195657448 218897845 206108969 783468750 801412922 821122616 906281573 938341383 565551027 855885371 701021259 965991480 435714123 845576766 270029287 563812848 916345192 974801764 554311803 911932967 766029485 954764094 882338000 925374165 635052349 974289698 230999284 848834958 28624084 642169646 538119449 639717610 637442357 743279542 733948943 983667452 663728691 831424519 989772639 990380434 15037585 945395398 869432387 888570749 85734881 168417616 128358184 600327616 271058568 928101241 987910941 994485916 775045070 986859503 69004722 346013804 121935960 945494788 269801009 952612703 3432590 572726340 434342723 447338452 283114797 469523613 720554582 835254605 962640453 986124621 251522447 950697756 6423808 176925882 850028128 962485019 247486805 377579096 900435276 908504801 468983416 685251837 515278780 755681666 913169753 937278135 321210008 877443732 109385845 546218174 90278084 948013359 259109700 431423551 805829960 979654669 527435395 643562633 965465659 969196987 165888532 933702139 875424788 923474114 959023835 978814970 682693974 830323321 957372839 999029209 935339352 970010084 556042698 755030867 861963280 869066650 604191516 671332509 941687551 992507669 27446328 71277291 29812617 817720725 714698765 917135338 269259685 966433494 819401106 982148595 859711857 939284936 598715971 757703462 903191530 966202340 517327278 744780350 149253925 671156628 173400027 954324245 828672081 896066755 62929232 449285615 425773190 980064305 858367231 975237231 540682925 987281053 673409823 697403272 693437542 792026451 353281518 867729810 420092905 716525493 104449874 970027014 375090423 817210017 632115880 633731070 268404899 458883058 209998308 773270661 65224728 496515072 243646431 774158800 407330577 713339813 768707064 842567234 988144900 996370941 199503946 795551792 558754852 768537282 517607665 723492806 502429846 955290105 519282552 746416831 537682833 674276411 420989180 990174181 298787939 581265333 833499113 882629522 687578441 699284637 485172295 822999638 602754257 706504963 77650530 675939337 613214246 805057536 181140590 959419290 614941245 903466193 430157138 562140597 864343929 982959917 327037030 424171064 893405559 897076523 439696404 753844816 186075474 354857364 246631021 331134579 33852750 564927462 491758692 812850939 245486779 585353522 24757449 612122085 589460065 843029917 30402911 412731630 558131501 769372064 622985318 834743152 118460707 183836078 60338606 710895002 767683703 807712774 201918414 868030118 836550367 990030209 53813502 915634461 241399929 960871276 354225351 686187198 46764615 431566833 188833762 306542890 483633091 650555143 873793737 887895919 926823263 952018285 600013401 990601880 167970731 416913500 579150546 994207606 486675447 707149589 792307054 803808049 10213013 873210918 384154865 535685829 140474335 834738523 929124048 973132830 939828412 992001894 415060022 527853849 924484664 951195148 318622298 663441567 433865625 490214955 894102799 949667692 901294130 988906720 699612424 945874368 517336351 993809645 345168142 694910459 862659304 987396339 982667087 994477542 126541505 824449505 640382847 746701613 206639360 342136940 125195452 888859317 918907465 983875619 215970206 428818551 533383486 827410206 851200700 993016170 570613909 899815934 54400267 69504926 901551715 978290894 247535882 802765138 625304475 894487832 673925472 942103285 775114228 950834401 684957831 873010535 606176935 935953553 493348360 859173023 503191038 734420440 837917435 851189912 894023754 922871038 469520013 693261252 143120487 925022408 357211625 386702385 677196990 723751261 974748984 995104579 294718156 757670311 222602270 671162290 377036607 606695854 170607586 189814117 702070125 856358774 83247479 288869716 630650037 718447239 838712168 985717001 928337098 942750557 859851556 994311131 271320363 796271699 534222961 592437512 161298031 887702193 214354172 638387398 710814272 901027327 879265454 890286179 386521829 664440492 408959327 876950766 247206240 759706154 768694428 838967201 163727524 951324435 557484680 558874499 990685390 997665205 15432006 876758013 252209475 669024930 196725218 588301392 704640035 903384020 920760185 930157549 776497638 897321343 123076929 143261057 437720454 520825044 503759445 610936047 695802380 725515855 631344391 723072618 327058763 676699937 699064988 890145011 105111735 993952227 166442535 267092486 352393480 899272548 153497104 853512033 918428804 944787493 615228689 657560370 212479997 833498604 347898078 649363317 899868538 906117629 340783419 506932636 639002915 765113054 409983501 636959684 726190246 836675863 368513036 528699234 710854417 813559385 282980588 752425443 180785172 210750351 879762815 923074234 708137550 969339083 123986648 835952587 322988963 798018526 109631611 928424179 73270240 202797983 481678366 543758596 349655676 757928531 934931371 939732817 276180395 475925231 637543803 958595885 389637578 820769297 556603903 672671155 345741971 522529581 159181716 641964215 429542152 568851443 965378705 995605694 366617602 776742840 768634101 783401188 598290541 848703559 251074125 662778088 483194390 574541432 803752049 823884476 593498493 926011476 147681416 170073265 542151124 792515349 680943072 926136633 921029749 930803216 12112470 78114366 138433773 224989704 642945086 738974962 382769639 470275190 178056321 204780800 64807627 463172737 406593789 589537959 842295942 885325993 808946126 995067562 823550470 837897548 651681176 746762227 340259167 476800734 485981182 878707288 668999916 953000531 519832501 996129672 675863084 861902052 237494587 264723979 992284481 997160110 920366853 966160962 785834283 950906635 231483071 265581621 283645200 939916185 890043427 927687450 266311116 662403928 145074729 616894763 480600497 979979232 158795440 724574647 717836738 923791061 123345191 930803424 580191438 749362771 716322435 996980711 47142160 776926974 104321471 143593171 644319660 644764197 7903398 281026726 960090304 960526275 795798981 919576418 348375133 591086663 351412049 655493919 25606082 475702202 895683262 909832279 31184684 844103978 210872315 805925461 275062525 434574851 320264749 692355511 49961704 576134718 496593149 535910099 134483336 879063779 857803582 859127943 394070385 710651043 949255557 961060469 19365281 729710244 943001845 996119483 957678697 986530788 887957364 922413355 313549374 565703816 83600590 521622327 749616341 927706847 720295642 962106290 176811839 279410426 824443732 947915012 502187889 781469788 88835609 605098853 340482808 572869215 843502445 984247876 265887018 618957359 372467967 441585296 915905007 975615654 78370781 349621039 211895260 915960106 498720123 813458863 186742458 635376375 723959889 812525976 657490002 721154797 755411846 807587036 212346549 813054467 83188523 731480127 400685217 995645126 99206716 333617246 743461968 860897261 316729283 835348297 486441148 847213361 437864990 847945803 483225958 715542114 915598547 970235647 883529989 911295329 365940479 676715258 857955474 996764994 495050058 912685167 817694050 940447559 393368144 761177433 56221482 331615765 333549925 654046994 644547989 779294713 846892123 939414567 980687090 998646487 987449847 997193684 762148785 855586640 168005517 922087868 758963028 985699177 804441586 825958606 649774886 852878032 16806516 150846703 12392739 715213687 503899056 938598849 841930875 980435414 792212149 935179223 975518072 988804824 284479968 447803539 731527661 775609329 160844992 804046883 315657968 573745879 158619993 770839110 412976995 677073831 257515258 651539927 295256964 337217627 609247410 713276573 738160665 940621350 923559040 957218357 640714625 851366003 691064582 981879750 421510803 761736577 541771527 941846832 440070256 607870500 671854628 745402240 618577120 724889805 975932436 996153103 158079080 461605855 824208591 924919044 826684564 989094770 323360044 330222314 706444537 981175635 936651526 944213702 297130712 964232026 318150912 834121742 638233682 848239540 806242566 971418402 461689096 747492583 472654129 555219384 500223954 625181688 360658620 979967893 623460801 660974222 14942856 502629780 369317573 666611026 203120565 556286623 75312967 200984784 551172786 976560321 92001108 458306772 981527111 997311726 846904646 903188601 377078506 787386584 75965553 602218177 27840942 880482321 362096369 983270352 45840504 479908045 208400217 989913863 400728359 566143491 507292947 705645438 847959281 903882267 641985928 700475229 781632316 864391632 192930993 834978454 516023348 764386136 584680103 884104519 227258945 547522758 438997116 945476687 796105035 987484987 943715702 997873535 663764412 754344605 309250838 953059610 538587159 749441454 988534169 995430100 822787906 863990932 703082360 733697682 380481517 708877765 874968275 895193506 467332967 637479303 837901272 910586975 535601477 946127792 143817219 193669785 324693977 899383777 895762987 948832635 131029069 694936404 12957569 92998189 1145027 272896323 475642561 957139214 386209294 453938615 312573272 950513422 424725728 811883420 715923655 931479407 685011490 693973989 725364091 796933036 50107557 340711802 251849195 914306847 551967360 595434190 85709088 751870697 771176933 974289014 696391221 719702028 603292782 740229909 986019979 995378472 256577440 929017984 881899788 971271874 237226186 966382111 467355536 574160814 613432026 702490775 614944637 858271392 44675125 238377682 327414992 948853277 907835851 941095335 499874642 638143872 845000215 891963270 521656678 677721332 946248110 986651278 321129775 369785380 176229598 957713760 152549458 179759318 136543296 247856333 390593538 516596674 41053498 42792858 775569983 912512416 14926816 856317241 689208895 885520141 877404596 963866376 594471668 954971496 56358176 873439022 172714022 403409772 148955941 885946724 814428352 884712839 67185016 968954704 897572491 948421482 6784510 176142717 2903513 671325577 473524503 943759423 734437408 928716219 308446617 556426602 664984730 844698526 595193916 831949024 96652713 222133519 444075979 818256103 930966521 947373455 669661422 860843796 20311836 609815420 892943675 947493928 638653775 995834058 558222124 648821732 285659564 505105731 237432432 913141128 227573693 678917230 37455108 857229778 282990393 337888461 254331180 563871619 403336864 701448309 103665234 609743292 380305334 463387258 644697545 967642857 522441687 806173074 258483852 499579931 862553227 967775552 950715526 991843980 93909650 719637446 766082436 786561941 1493923 985145468 5838869 374655113 121595639 494714146 887402623 913999773 255228386 969348088 422887598 574456088 6811233 615191111 545716504 671950193 184283626 541016383 861493271 865218047 313578376 580363074 303938983 313648619 217549357 301120910 525588283 823426564 113830004 693238501 58046464 705317790 47381751 253808105 995706005 999222113 588550067 888193775 957118155 970434976 498744110 887103185 78457867 935442954 710823888 884438178 863977689 914061569 892677967 901047740 638979419 985055266 106234933 413346578 178957588 638635202 92472210 563032683 187145382 712954939 86467556 832120494 204279725 894430472 564811673 843386100 940223798 956889502 347597316 750322501 589733066 868809252 965566775 990144840 310587169 782577277 552897080 934928889 513447011 681740616 135314381 819459271 631505482 764516067 817849777 897249696 678232069 847954673 171496254 859799233 432586796 482984116 911557676 968854659 710696608 960005643 970278850 985922478 107443073 963540188 70395174 959221666 480115823 526286784 959606728 969821949 677180822 903564989 261745660 340806802 707154142 882976265 350385822 503403206 233451579 645708525 992924435 998300190 653229371 655060921 395948433 889991072 270729327 946472977 257791381 747657966 488752897 844538492 799800118 861432716 250607225 364996136 179914406 751229136 681382759 833820395 737466091 901849120 89164926 292776636 445983873 940617298 311433313 415680439 379196550 698925636 858360303 956693015 58188755 418811696 498121441 530972855 505692732 829034024 877032676 917475026 629144915 995151799 119254724 295222775 934064357 944635582 386075965 704937313 908860565 970030665 43885987 288399041 699268231 835387256 550884542 967975499 293008301 495503219 349540585 356675362 547586576 652081941 236576059 542087369 132299034 689233922 228791731 887439671 78896978 978705154 76039388 912847096 452194036 498604308 882635320 934546977 916390641 990711479 403766829 961843340 621488171 670192189 660943584 800567173 50163327 743380947 173588125 588116734 19465349 785252117 471017879 561043852 748828315 753136468 797905439 953197140 679104241 982006926 677775176 897721588 835588034 987422226 447627867 760032367 294637879 493524507 169898210 667723274 707735809 943932431 883478763 905180700 573174711 902773409 205641905 910091290 183959270 687431706 129888757 885374099 664320913 786868103 134304321 200537714 220036252 746416254 331435496 860719313 374555211 873760366 339641765 402048603 974769867 984280655 766785833 935949818 684137529 691172663 803960919 928845633 77319060 872979535 197184792 210815862 360090456 457778573 111253594 920479489 772954837 902761268 903858748 907149471 470823496 546976199 204542269 901959071 785457805 810014252 998729040 998775006 142819999 950371866 995821853 995907443 120335847 616609074 59416061 59670350 629202179 962684982 922629084 964237865 577977188 884720842 570322099 683136369 684046414 696643794 480751297 591230233 827029338 987825552 847874290 863385646 351536203 363281421 210231538 973553371 981835177 989774431 495087969 842083022 526095785 970920640 553068636 950795325 361408020 990799174 920920988 997989276 79744330 890698963 68238275 996974666 303559412 334703214 230443808 989770294 155526339 263264285 839867800 921505706 907217855 908844738 134866006 134995687 651855258 894090733 398470030 722891304 131158352 532052407 957927116 990221732 485301678 620078347 202385924 793705133 420638970 981502282 261075754 671381992 783235732 869080518 762457616 855622639 666111950 734662736 15382995 933496776 74338177 306746036 614098720 921911244 38644370 494297854 884243599 888517449 534659459 662008351 511571526 819983260 988550634 996858552 191954399 692242355 315281284 436710793 651370251 718869043 914433331 990677934 510931247 961970276 560515234 761788650 837044127 981506878 975331625 982409882 153981140 879876139 155053118 594779761 448520085 819415210 528098138 961316178 332282059 365322672 466850539 489391398 736843818 859182096 293253087 403385485 418470019 460590278 424383648 943285578 581672298 792166173 88315722 593294443 164374797 193082183 81993401 435850604 490039086 611839590 872050526 921236296 993399643 996995465 610182131 751413262 249242162 738909398 691786769 827725712 388294251 699512152 826635045 866782306 810261444 817273735 95998074 977670448 645052165 796042936 808307523 975270980 155765976 825428046 917280517 992642617 898849498 987345676 955433586 980367065 441187927 796733016 645890117 973848779 794648828 975386559 442105310 574253866 200048216 686032863 180723825 348932566 339452155 802099327 812999616 856650772 652264114 653490072 982692564 998381847 51522971 498294871 722358960 997060729 125343162 283987757 399054103 565411512 137255396 577281239 282033207 573398370 865241671 985532195 138452237 352172873 287332187 586788422 109855926 629753115 500812900 721056591 220359290 827306140 809174316 978340303 7046735 894478349 954725732 957239281 778465195 782941491 507661245 641232018 608207916 858782089 186402913 498034765 944318634 954721418 589011004 651189472 587463621 598741808 286937695 808114923 219135884 936283612 624955212 639564283 86921798 888575211 994123467 999209579 26085594 723490715 657879791 681892922 921515715 947122901 982995813 996764380 863812049 930364632 60821834 623657735 306528600 998620964 293023358 485761526 799969914 825672942 72186246 501569792 678841757 884069508 286156347 981802353 314952970 798434834 152643966 415125482 762801906 804932763 291795289 881174940 942405498 957611795 742256936 912679844 704693180 921185583 434341390 817468895 444858656 735619670 493630475 849389804 115241032 412612297 640399766 713189976 366381148 927323809 72481340 475600470 272191910 531246841 921461323 925561863 827517820 969197279 530897636 840494599 318818545 865455643 12374390 757007555 707889871 874767911 79934260 125342004 497131491 798771200 252526354 892943553 935372682 952683263 78574555 230280566 972980212 973641350 270589056 306038505 509118452 598959146 478574120 735152495 507175045 826373850 478888750 497319514 573126869 581752573 700910326 811780593 987072502 998594802 853913166 859229352 399008479 584116992 909146925 934317854 504119802 691071441 409401888 941779218 881361116 973928516 936797246 949561887 668371110 911826019 165001285 997244457 866819591 918856957 858190444 937506959 465351347 682658902 509429508 812933047 699896461 759816548 644855260 745648694 190560426 754491656 461451422 886769785 764791105 931786595 444535294 673529657 154181476 868546261 709300539 830658885 560786065 911416827 593045892 975246002 574133027 750196861 282757651 415016907 334618198 922388119 485611621 602544743 265720740 385973864 535509504 919067987 157462522 972487390 49538135 423233387 533085289 714825334 797678691 800015983 919532342 983060408 625590646 753597028 235255171 348285147 262139269 787243055 684225957 825209690 585697930 936101379 323278179 617204751 919359148 960076966 828450788 900787886 256563870 516892588 18438952 745283037 388552577 635791491 231195576 802204712 80534454 400030645 743158628 844097393 625929753 997507739 366304253 728868065 289289546 580339644 464474067 915530379 289910005 920448798 799014963 910230368 760224004 933048533 807472447 871661359 772769398 995867628 759750482 848459353 629057369 911575117 120236847 957781799 13311142 87895599 794120153 953583458 567756977 814322049 670802334 938762513 287737602 674376445 86068767 648693014 621616898 835329552 199690175 268122196 965763077 979332347 687244133 800089355 418463816 786409682 66421881 72212638 541976484 652851186 711242034 759474437 148560213 689761765 190004835 706600718 426257484 761813285 448169431 846369182 969972631 990370855 345959224 504525656 819962459 960849870 248689978 424516029 744985372 959934931 3013814 215463802 251755795 505315693 70614821 459277833 495424478 968196236 500151009 722308679 845061261 962899167 731825650 972127596 415884909 806893559 391150386 790245326 135218803 770175522 689563535 789787031 653324480 936811487 157313747 467087745 655614897 806744149 702267014 971150065 713116030 849257617 433898671 867871917 506982255 939236951 133972133 816010047 219599832 606051693 998281398 998549556 303560708 309447496 419228999 968696149 860103574 994084564 426743183 562998472 860837271 876992320 11111528 110195911 539649864 949609844 631076301 851586985 771162347 882438607 987104439 988195631 545363343 629908535 225695230 771496404 265464547 275560760 287933022 747717377 436754548 832156355 337274171 343025247 565719799 606374391 432319444 912990155 429618773 724981261 332619650 529851956 487744181 554758966 163184123 302687345 676935202 782102020 723477192 899318237 536054345 903718923 517365666 784139762 596658101 808783186 626240255 983943477 43778731 838402828 619780907 627162879 695078795 728079031 348654474 777869346 283675843 568462399 750539592 954026863 12885096 94381512 804824541 842876556 376053981 690377125 214618992 267280328 398937061 455735759 486669908 641020695 41216090 961042733 87036019 204903508 615359645 772853128 334096443 753554510 997926750 998815602 960774850 988528620 915472477 923914522 669353194 771182041 479031373 874375359 963134178 973889946 633327753 861624183 737057401 922594891 174598823 578266111 260818559 622673235 954037502 984372709 473531852 486855413 471423889 524447758 186385524 752493463 949283868 953809267 449499647 841306121 23409252 322491307 30431762 357566502 869521290 896402907 416336769 640234066 962666630 981183800 418680857 846146366 517623243 948543586 269427988 892057640 354357570 394438864 256971492 506298197 187444294 287182881 583638856 805690681 193805715 892402037 23770820 515964211 91121192 889580888 2540442 272425517 614689411 630379047 672209066 995557938 244752402 454481271 139451822 874696599 668063306 797243381 262723301 624696610 66109108 623493007 498587344 846292326 842521183 932006429 783452307 817698516 349855805 973133614 238730766 391653063 233366602 461706105 767607753 985645542 778033624 934004635 659043793 712639994 852939501 996440003 853671125 861249165 682977569 911951145 511522516 939769116 860548050 940619228 613647362 963102318 657479207 910903385 707451932 978601926 94505045 579700325 355585631 989158574 495954137 537855737 181074602 297239362 312598361 328623009 46491005 250406810 128733499 211814039 566527710 723742777 733500879 843137096 106109094 871172743 647858371 885319355 109289603 609907142 983878420 997596635 809819110 874956581 44286586 813050330 233632473 773032121 929854091 985501037 664404424 833968044 403881720 782106667 217308638 224585484 927114410 936555841 168739382 679122919 905493213 908470731 359427907 479955129 694463122 720607847 614176162 637059271 467738855 817523495 153164711 195165794 787986817 836048806 640921049 665284276 437717182 595613283 734427087 903010210 266536591 893989781 947620587 963209028 251109090 644918522 805697903 998779426 299372339 823664853 595456163 927989674 861419923 991269280 642878915 652691752 86247210 240709413 555161725 855008778 872297714 874674859 660929856 961272098 718235118 896346995 950648746 982405969 857015447 880883687 923927724 952441926 627692461 710284204 481155803 516494760 693592845 697591389 154597561 809555298 78041444 385989397 947928188 975793032 600607789 993612294 597688526 739641420 8071326 296055396 786699536 843396739 295820647 814162749 59746362 187153471 682718288 948722707 229627552 956702964 528499104 988593377 197910127 534143054 596375904 969793563 320848307 766924692 885760700 920885478 927414674 949906653 287575791 404939806 929099189 966022243 677304698 758261124 39538331 161036383 581579800 647632022 597929124 736280397 961257912 963643366 79037139 714133636 168698810 309697061 429748233 515705622 130043040 180521464 881724297 999268021 53665560 642310243 347326800 834906455 304162099 799753594 172012551 603983337 737269531 824491539 957456642 985553295 537980686 627898138 449531506 569092853 243902595 532591366 918907633 951297276 837683788 977869571 824680617 910329865 28833605 617452911 410958531 947037719 768840183 841140586 248694134 812998058 530966297 850481647 310382646 700319177 554542795 868892439 635010822 925132115 956502121 966452576 259250985 920987915 919431149 955747157 694544250 729077893 255104271 581774091 354487274 667709876 671413333 787248537 47861647 969187877 9546392 722527662 167656601 851645332 870577234 894069021 199725300 696434895 407354095 940304295 801940742 891309286 429013054 661159295 834887905 979041780 727433820 791042461 640896684 733075101 615549421 968507401 664292743 858723069 152056370 222302984 883396376 959198977 994234480 994845806 583435667 781142620 486294212 491249073 801379901 912951986 29798891 706501843 186481931 730345804 933670597 962778042 128727494 367312496 756473107 849498798 347778227 704088956 825875611 904724522 660633160 668843398 45399094 844251391 377215812 546561289 981489111 989078460 181189181 843949183 407371264 892611771 715343085 868714341 519950088 665415026 399770458 538901207 441322977 515113556 682838234 957876792 671774329 742307707 945258461 969620569 847185014 977169008 450900176 604550007 786488605 915429487 369975167 937658447 528052113 878927177 252896247 450749137 335688938 878172371 946680531 979876931 17746802 870614296 132097831 353094826 478702721 978220865 174411755 224056906 401180918 919948990 839074728 989587627 720893106 850182454 723189028 908799804 562548939 567251244 243896506 848163781 46683111 297141560 807548908 958842994 266287272 639793838 530515350 775132374 645236973 835419700 692084540 897448314 373720999 577017294 880272174 998919080 450498403 746418995 77101135 427533201 981311171 984779482 580528191 753112555 82248923 857798666 798492762 805520752 723021643 913150650 382903804 891729692 943667118 990607007 212029191 288714023 700490246 951576293 23413002 64500517 575608610 948543524 196770201 831567346 697899761 781446446 55446445 456803642 959437170 966722537 676554585 787027391 586582515 818007975 114691944 280382354 495378059 849898255 453439297 609726718 520024761 724366193 115846517 884805363 945244005 960646214 15744831 365953498 24459013 832815642 690670408 915034843 429001233 994659350 907491661 970881898 855495544 908344078 354877994 768749380 686042081 962780106 886225561 951361619 927016571 990693152 282005835 958308738 778632977 963967848 257422884 472946417 973016675 986397988 636389102 694061623 807274494 908089931 488019974 963390192 479814426 683953890 344466222 698335591 248536315 259355298 627070611 916216138 386949881 566430748 707022766 776141950 556400107 766508054 679388260 698501452 403196982 525392727 750045909 764117864 196022403 455775422 937949664 950420666 520480375 648086462 769359017 908036630 659887993 940796040 967316801 971037922 784030825 801677579 770625065 850846580 483404735 930927553 254104455 294959660 85165455 113963587 78510112 720562387 855705690 920698426 928736164 938948329 975723341 985154413 895340478 897086754 339380162 766937447 559435896 644844765 697860864 927253047 503486140 838170314 864554500 883708169 86051230 479941762 659411234 831542187 410889518 432017920 539602280 936566352 542469611 659663955 863368671 910897840 173438591 773700395 178490543 739562573 963212507 974168426 537558476 927784522 183136418 379175422 95482765 868360549 738032236 947725035 848449221 936708133 744901523 804034303 449425533 977271352 543638149 635682568 99578894 552188588 257276476 874267956 719117737 844258617 5013782 485828815 621518172 951258035 800510750 905035192 145108923 483530374 104078231 785459989 154202897 628094544 293976877 508350796 368843678 471663387 370771742 987067549 144977678 571579326 660539013 899446398 548981123 792926860 367967106 772734219 276929835 513670433 57516217 506934390 822477255 862425467 836263263 854364371 563975772 911278013 193375110 854922580 36373456 929143772 709976382 812930546 965555495 966289740 228476611 350863449 590793561 633700234 924703098 938854121 655902870 936110914 643939624 995543902 770540386 914518544 311915362 825846520 857936032 935221748 823577799 856621659 473506874 565194553 752814987 771301798 394259550 899382403 991955750 997847168 110672039 211998114 2726862 205504634 626908152 837126503 384198445 675722265 359644981 913340311 967984262 991726730 286765205 474790718 185060034 509353185 993446192 994771930 471570063 631369893 637485785 994089969 913691752 988267927 800632197 933383645 588584386 823574126 347989715 774376402 121835616 526658915 255034018 393118583 402690081 842405000 871756984 981071842 541748185 748092245 469604661 626404400 925159122 931978270 601665261 854781752 571941803 963348394 450033858 495622212 171653215 926046443 925174565 975520226 895970976 917915415 220852834 438116594 862681189 902612697 908936478 941186571 861652784 987971698 600156024 948990570 264745744 919521561 288373565 509690526 794869698 955646799 770481721 936470006 340377194 486458402 934044794 990315084 338517291 514682147 635934355 994705235 987889021 995637276 372432168 752603148 743917442 961391456 57189800 847745513 535919464 676584348 298462857 932868566 900878483 975651721 559763319 664081634 219546437 395411784 867232485 954536550 361506446 912043279 681131085 942416258 896170894 906771831 266337560 938998487 490006216 950029894 242351987 826838154 377768415 591334252 126908116 959346477 806822330 869147534 152799689 677983794 345608776 844452695 474596747 961054445 569201445 821530843 120488669 856779511 16139579 636982001 686631472 920677534 571787495 623101260 907352659 908168980 183576080 493454474 966637064 988685899 62733935 156286738 949254638 968106706 186675938 190009499 963526610 966830869 398027436 800127219 456183996 550450508 494695514 498401067 947679933 952727539 842546054 869442092 2799843 322682300 714438208 971149089 582194539 747062871 578407270 919981316 859071983 900695683 60246638 581687407 174495813 971607597 205307796 493547689 105040609 895686446 400390916 733003234 975686154 978950600 765132980 911368033 537416345 875201577 919290218 939697437 54126011 660837542 821630801 983356442 556202644 913076804 621630866 895969193 557781840 647751002 947022643 964887305 411599393 687948017 582773469 647981507 468591720 997460832 733520247 774320552 894607246 980877460 637308522 640248783 287210532 769049203 148686576 247018113 557834403 635721936 885849051 889260566 118404145 692621641 124015656 401617550 186839305 985183788 458062945 754322942 550218810 936047885 655630824 790681825 971098194 973163825 919527533 971571499 453376714 644601483 648900255 940790452 224678199 408927562 679219402 930363611 757745840 850281561 608083666 670248185 647969441 821464178 412924848 539979439 701168496 858465621 985632529 997887777 930458587 944371047 327801708 684139390 531250585 537102140 126931770 763116622 425546417 806320322 373330384 899930550 1323646 704281473 787976801 909699543 595366413 986558434 899328017 994306487 794985153 949243289 696073490 967162668 836264122 947449645 57687680 765536159 774139241 849648817 577633241 834606928 782716680 895569115 23424953 830778731 662926938 958221488 422317592 837073934 981197219 997358419 639365940 653390803 871320874 906402218 358737799 838484772 833895293 868446926 832734689 851722669 364877865 873925115 990212717 994107545 655224509 941913696 490312943 584302798 862608866 971663960 214964968 417508841 516207743 713133492 524936775 861329905 591326229 997320925 285055811 685601499 71333216 239994762 583908231 804438158 695449970 729936138 750909103 791052090 468602153 725478534 593641905 743684659 453062929 553394921 171219926 269856917 284289044 403373635 310874171 419391369 164649614 204019615 972362109 980171239 721186897 758162442 300389651 915153580 585408827 723768739 379230374 919325546 741403909 761779569 24950300 49981372 517351342 598735125 403172643 499340707 400584973 496048801 868605625 920145316 867038067 981553383 697972615 925526523 456265755 753351424 546867461 631290291 379186944 460874952 238958922 817668974 841192701 908383936 562603998 637393790 317814182 891748597 191086658 848301489 980658443 993206905 199296103 904095876 609088989 836500691 754953551 802595101 663411522 716076760 543647907 787499331 497198562 975367902 673893804 973088919 994667867 996688221 156216988 346990454 832070899 852551105 163898451 478334259 130007626 835794972 68899368 739061292 267738558 956617299 608590304 694875235 807929599 921165910 376807942 424655837 602444904 991078806 936942789 998619933 42594039 652253207 944963773 982516651 711128492 809981524 75227693 382788425 914322457 942389182 682542430 991726355 30429976 179185235 508292715 743824892 403602459 760767603 714726608 884429977 805359419 937014578 19118300 389566239 5717599 802618834 612432094 694299341 953485259 996301489 798534584 953381347 99932625 251263742 412235823 874997694 784962557 939766296 303872699 610954664 340045775 500352824 678531434 856059200 791733894 941438921 33920532 467368095 202969927 813939270 260199326 772233675 374993881 742007083 557674980 793949306 572786426 811402185 103429750 328952299 938588234 949576741 901212562 963389713 138341275 801558638 792418104 996750588 354999452 668947338 202157844 390991305 937906782 952155819 434865322 578378164 625277657 982428564 796366806 987435169 822826820 839648092 303344742 421445765 77241836 673111138 889477679 911941920 822390794 961787203 891515488 953135180 989713401 997002707 521927620 551844408 672590918 821778385 427048066 650020643 84290375 554552960 59750980 868614010 691601542 901822771 746877706 952044624 865191307 938261500 697846078 996229326 203129626 261111365 179766995 679738862 361279743 991681342 235175198 567322704 152803903 315056559 409335006 672861466 799409751 994563007 1868948 641065360 266345209 727073727 27986810 233770959 610281631 920453906 223278429 607868102 485923727 800417690 484850891 760155312 82199313 287155214 201939465 711917669 562877749 607968088 208498737 230216233 15837048 497002782 133733111 258350707 938516062 991302127 928905996 999341070 676926452 825312908 123257213 637088683 303535467 685252887 288082421 354833448 854546028 971026840 472291612 558239201 497955707 909689323 574540747 638791511 465599339 828501082 53027196 692394939 185915063 682146434 279157807 955500354 312403442 468624562 311496095 391641561 975442949 981545027 377229199 540551482 861028666 963663190 408811882 619240593 640052823 890433532 178861009 661545764 819427269 836717169 917138839 974096619 538111231 585249293 188975510 981375537 550050990 803092443 393695875 723165792 35421451 359288064 524924744 996642231 649605914 684567103 894223007 919655280 341191813 742544916 238088290 482079282 577862800 732757313 231030819 231877050 64475320 962664024 229713677 471840976 62788975 92305247 116689432 547767629 221049021 375726575 786787822 990215851 246017330 252068598 944910312 948281022 673315691 734329637 296556299 516869129 820442774 869456282 568501881 885996328 852266937 864147056 673136103 739799134 925090905 929936248 415652366 738253536 378721699 514081025 221743433 822818288 800440499 827369118 106203203 931505857 298630486 730203952 29339826 682048928 316288306 442737655 44535422 134793353 566725070 771688365 155373025 324797018 722363661 799287686 34985466 840371449 315372225 994493855 493211153 903004533 606417668 942909688 399059813 603561076 841753417 868187969 964070190 977918745 161264057 944495737 718516316 896692398 480341824 726402447 254665033 721117692 502873108 984158263 671913822 719062990 582309771 697559397 621591219 744269646 602120842 730302063 162219119 777327361 987782685 992062002 145033032 619263486 657227728 738597463 742196606 932316251 450262555 707240072 272953119 704830303 352453581 809921031 160774189 281856353 267917074 773505439 238388668 797896275 156368996 510075371 44276591 544465199 250818607 543600282 873881338 899804240 157032015 767716309 428567746 670637094 433573238 767480554 666056324 705380374 548270470 565776022 996450310 997066785 121381 506806918 195989815 248019000 601788415 717752915 547036946 942316579 330423656 986386475 954925602 983450459 644757041 741650500 138344549 867203609 682952535 825522522 365278642 386278869 556402724 944181565 869530235 981869457 384673032 692539618 369007411 416914965 731573013 919518754 210016671 667866611 344146761 414513326 99053117 982892749 199939558 643704425 818549874 928886856 255173848 574354327 829720491 945028025 377784467 703971047 699458861 799999600 577140037 630763127 394351758 890822505 560873628 883402377 261398237 776908673 305557449 383069704 888135310 934023332 632649686 763859580 820206646 982623735 124873647 904843334 72426331 800276089 577651152 938800850 529444150 719506543 352414878 994402524 125181443 784010337 575373516 784207605 161252542 922131339 335411278 481750407 804093353 907655027 141943350 239633777 462558201 532462476 509157735 779777153 459427293 504987379 324822101 406709329 437578095 955532863 264861219 966533021 281352223 877174623 212232552 721213157 921678528 991219008 569780966 666918988 607775979 930421273 336432699 427733136 381078552 789991022 9305164 278344800 329559582 410783094 457274424 782239574 255053634 639178562 935421642 980478273 202969489 965551596 367789603 776093931 738348212 845373300 995890796 998794645 271200483 356673805 951269067 970530814 235828037 631005621 948125748 963978578 769428016 902407531 370459091 387103729 234298607 301598512 317909204 630532066 407450498 797577547 576296319 685390361 87859648 969028791 49515572 559689834 466550326 665902882 865744676 971745847 596458590 715784648 987040656 991149416 101382970 202567135 459632945 556734132 384643621 746396107 378025364 817924070 24704536 174734364 408042842 766412538 608128362 791788197 390013928 989974657 221179677 895091350 499839534 645805309 750308054 829663002 927671960 995238640 3634779 602156787 400863015 808944785 458759105 856714460 759714400 836788272 235256578 878905330 628820255 939923346 786918892 848048388 63118261 190259807 546658637 625328251 396961309 916277025 253738553 486731230 918306786 935594708 978649067 988275941 937120390 988588747 255800211 630285951 672482813 683893320 151317218 860279459 678984277 988244734 269205476 399404762 579041739 630799272 27450446 49307640 195461539 995276162 364678399 904611205 817853782 865530370 882259302 897027702 318194115 834984561 594599224 679213955 279567437 672132965 407954669 472243649 371036935 606675393 441880402 798731190 63325421 210742123 989000140 995887938 730348012 774639676 652216981 808537823 313895197 816869944 416449460 558111748 930785929 995870443 998380508 998860360 44662776 996071512 15918159 609291696 54459643 712670710 62655892 890242807 857129907 950868829 134976215 635661617 65464624 628387790 705650972 963952007 394870735 616223939 249032903 742188870 845141045 895131647 662012480 725851303 786679867 896164624 715880954 957405858 821993182 990327176 750661620 962776169 103583695 936433859 126384711 207002985 719683596 826174775 548788980 937739870 990739605 991439025 197371514 535775315 193208388 483874481 611539599 675325658 60376927 784088350 534229538 598820463 361520937 919929913 850762398 899604361 259995685 776394890 501316610 873377106 944123592 980370968 423272320 944491222 915437621 983634029 425710488 605067991 535955718 963077522 18261564 153858921 450002967 709615236 518371247 859167071 465420346 829271948 221495995 959640654 470747887 975214076 314534945 602811508 211062966 753011998 621455211 718322404 543341492 686450941 12945941 254858966 548220506 633363650 590475919 665843437 260021599 978956104 719294350 859281069 752311468 992971995 63717529 731430205 317653727 585244935 895185890 978689270 248680069 827368674 865969998 906383074 191052069 642857157 285594000 669044262 586004781 929483083 906221177 983167409 849378874 941081389 5906598 798539263 326937951 556042821 272813517 507454423 540912378 669649709 453782179 790768620 291082308 617976894 595177989 925316592 483276978 633291123 368883599 721099063 975460610 988077396 789372002 907171478 222372906 481860187 504957616 659544921 617080959 917158012 61649169 367983141 736265103 789697497 859141147 965557458 137130028 966814837 788108622 897107456 944494349 957785569 493549471 550741738 814590807 948593531 910926695 993549045 708484951 717693195 77761210 758848766 358773136 901762230 259540698 607354611 394120327 840926125 161184805 619549814 808379150 895723107 76922935 843650839 532688322 536306139 200803776 280477378 387556680 500878096 566885695 575918759 292030929 391128544 447654961 638993530 360446485 845089373 361395941 764158602 228591702 789648377 446911832 881263590 440307209 566975227 714630438 791872427 398007988 548310253 576586807 645216325 695747760 912210984 196989697 934298354 504673556 665450831 745129399 934092820 298323034 622128822 476877356 703462650 286782571 645149523 789092863 802045996 647739939 966600392 466370908 625356833 514243125 639979257 292669363 311493473 961447859 998388266 264235891 670564284 764037070 839412590 303210120 431589615 682342665 741815212 902963589 942831966 334198859 804740781 171029977 950838862 519733720 770214203 385477976 600834757 699374902 806971625 590567135 599428794 626432376 722501435 971756712 978294392 917166667 960200320 363813685 822115388 373042816 570814380 396826365 480457071 169144982 328238587 990057233 992571626 314045699 937269185 132699892 626014586 767585530 989550478 512775176 707195383 253323457 472762670 896344370 923036281 259792922 471740998 98720937 673480596 764114137 881843969 367023375 555314814 988426028 998823207 513038301 753163585 129599606 481121074 964077858 992326458 758713836 858744387 407880948 714258301 947815594 971423084 728124563 946918990 810969784 925430372 420884056 773838910 526856433 862572801 41105524 181695432 996003250 998591395 176200183 496703548 260513982 918052486 890501691 922429307 467322883 605005856 137275471 995219761 219159245 942863618 94382841 420860144 181273422 407680151 257708140 845235360 253292274 973809959 617093856 660261155 983842183 993012062 214793726 868214152 129849697 902576694 873999564 935906636 898367316 965283672 992984886 998485379 703208936 807673407 863402479 914980421 744452458 764365359 611619285 790255397 412463160 599839505 301070362 546631530 442951122 754531256 941719576 961682535 834549892 916465502 474358627 980580668 412853783 585150990 70645874 241431967 430826109 743601305 934144383 958808756 337306575 626262339 795055410 887015927 102846547 453146232 856878031 880181375 324793424 694190240 90023614 365302342 533174671 957408619 535955921 603017016 334204286 748766006 461542344 646852797 901235061 979842875 966350213 973744826 62208097 345417237 774243059 811580046 872969688 874242840 112306676 804115905 315666281 706659748 592878159 875269533 263387004 591760401 10427150 118579542 392875665 579619970 675256141 842001873 652469100 773114522 275793329 700901401 75024669 348317203 86573566 935897438 71874018 169333551 897089915 931949725 841216907 892482301 14646233 61715289 446329005 573348201 9732724 647509427 802125418 979427871 416506702 616882630 11000857 611408295 123989686 630913347 962135155 985608852 308854561 852777050 252083248 966898200 413705371 457792805 953782925 995758859 13294291 708152381 458268424 712461528 934966999 961874887 396397571 425616816 790507148 883301508 838140200 958430029 686835456 940047115 820440360 883771185 249331832 638441606 665392084 715504613 194504634 243391523 346134808 554783625 65223362 344362036 345638200 472021366 494623813 748804985 285546522 777989390 693786535 938820267 349891553 798592042 324029856 817788937 655604177 662162086 387067468 572254110 113468084 224997396 199697545 931316569 519062221 745468917 68730713 976656128 604550823 962793929 85527597 841717126 418901058 464972862 648299818 788303324 178940613 293994715 350826337 378105689 507146919 646325356 931037765 955487422 877975567 908048799 849328835 973965159 591714752 750338347 196341594 695186027 780730124 785619790 215584747 738376662 876408676 922890404 137286834 622661285 858875753 958762333 964858210 978153088 698623151 886986450 964244309 982665027 675202363 740941346 836011174 843786532 490416568 794235089 534150846 594179035 115309678 664239911 765377183 913575831 770448024 946887603 971158792 999310439 265494416 727777003 730668057 957493281 109556863 297626275 987072 97926657 429504672 637084799 358776691 491375788 145358022 888915512 672948362 887423585 772458832 785361582 582828160 583524343 990761267 992816951 669961317 808308099 142235078 787415902 513169745 795550614 455757907 810231516 518626017 905167744 636897857 702405716 510403489 564110056 496365378 628588244 159058229 886985156 602519468 878918045 503027269 656086055 328310697 798514766 827225176 918997410 905991852 945123163 815822766 836942910 597956048 963028120 193724852 542718434 463165179 568030109 316046948 757019887 886680296 954108884 561423798 900609979 324006897 686324782 52726249 967950008 625073101 661358803 436125270 825111593 112906877 297778857 783592819 968109590 257555092 923507171 112968875 337550274 923085363 994270273 777319428 836892954 774909759 957420394 623820428 926767915 452928140 962326878 790165681 944580866 545010921 718047022 388199283 736189530 95171204 334262986 750044896 880850590 27210598 537472061 520638251 796570680 675497482 981069331 248467936 922334147 762142379 982672636 963151378 983295034 281088510 745964128 100652674 147383674 195297297 412775196 981513076 998761617 917094686 984564084 850892391 879944145 857899726 932486210 827911117 892259263 760622227 812687897 576472819 856694686 600662927 980425121 350561028 410408206 52287881 633931200 262564178 536894307 707138188 855389479 581587313 691394635 953669928 981637483 928761352 958975682 18383427 106163677 652496150 997751021 43396993 568446179 575243298 994693648 418331191 771707734 845801411 952742861 449250916 736583487 470796939 746656040 311210027 753516643 392412816 767385499 508162961 859035993 322457296 459067900 305843265 931990718 412488774 606282756 252366560 590034937 55788903 610691278 715856671 798756249 564964832 615832151 146849083 448201367 259559347 320688474 815971883 969165439 571059760 674576142 434616676 744629987 42040672 325517129 701251455 702151239 931305089 954395572 193762313 403641625 355890429 690512396 362079040 583558469 200951988 885882076 416555819 560531707 653976383 909058041 56222968 458691584 30873683 421455710 636175232 960608256 92547277 167706920 822270397 960517611 691011011 984329052 233775057 739128661 809058050 934067582 53162430 205100802 545574063 589446835 684656998 874747172 477091390 649586313 561629758 859156375 939920734 976792503 311537333 375609473 652810651 914269617 36973336 428359145 808603140 912622611 329820460 819958806 274294658 970926410 557097771 848992980 906949314 941611986 106757267 181028550 707940080 975312007 561656673 961236725 226910006 800167153 995963835 997642482 722960288 887348243 251232941 333762587 870198954 968757547 652758363 822585920 716144582 912900078 862841675 864596270 799264215 935271295 392094625 654800161 473099952 795065972 725142454 882947760 507359072 548566962 675315630 916609733 120989900 534605803 837167126 885747236 471606088 493064276 64631657 853652355 689079464 840019470 958734780 974789204 123201264 960771713 656095511 801980810 743109994 768993778 411002285 637788767 966546493 995362839 16527877 394714632 782072562 853405298 122719879 637259278 523683251 634407991 234145251 692112839 764538656 916672168 258376903 304382878 957313626 982329814 231387186 341611778 731402617 760668270 374339962 835175914 494126863 645412585 287540090 505879020 645438112 772367634 296778678 737920425 158199860 687109592 414543003 858168027 281270064 899819005 780788 891029221 948073613 986282103 715240265 755267945 879695491 955119005 499486236 806713863 70107031 303221164 314851580 993314857 267079337 990440875 287708331 365771368 462178317 825961154 916383041 951805136 403687331 883869984 717833546 880369969 638987943 736207063 571733556 942828307 871900795 983058731 821222876 954104246 621373919 800904707 451383962 761840078 594734670 635842751 774711352 992912002 119615012 885451461 653475274 992569934 287432955 741165904 687431804 982473329 468383913 753013295 607752540 672379580 8435087 801680064 152829649 770527527 341329987 872431016 423269076 838435322 695511004 983181015 681924509 932731887 779423276 950929156 670550459 994329791 704101259 925547143 618939160 708452770 365465798 697554885 329998188 554981351 28402958 351196737 517505367 814421364 324775878 840070832 213271326 437007716 210979333 935945976 343382584 379810597 495047960 809542133 407173504 587153443 681039756 747376248 191321599 716322708 774923343 778552984 418005694 986984648 398130096 751548187 89622769 634510699 756797549 956661157 105212977 751253021 3119106 441160415 550537941 581022317 292359559 838778661 392253577 552970540 557294066 563973446 617691903 706276966 830139502 966589072 497060923 964615325 724802349 833118251 603550415 806016837 824749775 826706377 39650183 427599735 404490812 461749817 375368638 534118661 669490961 873080444 798146656 852546244 99635481 837143353 37950227 420915904 860037117 958648355 176440628 759766421 311008519 938278698 513660907 796173203 679182087 913282895 937059828 991951815 18861553 184951499 976124909 989348948 27673112 488250577 963523427 993058019 155336461 845401251 882068422 903710523 688325324 747698506 782107224 933220413 970261138 979398856 30495919 503416090 92449189 258505177 576494922 946930909 446238089 684721601 961770188 980355923 185429617 755328321 904916389 971755874 721208063 868907342 581149401 817637912 889002258 933603580 661066345 933352966 428640012 476506524 936511098 977226202 980560989 991277996 561717454 797184228 324498571 492110320 685594759 973080014 985764975 992251986 73592786 730909527 851194863 991023977 513073216 980845974 731208381 745079853 996968021 998828854 823068507 832571780 493911819 494358276 208428935 472260597 680790225 906670490 820986936 930972227 712312282 863733430 563779331 643795117 652124848 972133966 556428152 658421889 399680086 746835818 315627899 981668639 196368533 674386511 198494148 329816847 142330653 326561155 206854504 889256667 382591626 742808874 611114951 837115023 843374231 925789560 640562568 706091033 683348320 878777281 419330606 951076231 933179382 955959555 265203641 825839964 154827643 954698557 38770449 875627341 178239638 932337354 166902974 548916838 764661948 902671468 969651793 995375777 289693525 703868159 676998539 940706454 378179360 552934223 546169119 576989298 167500050 831981998 476097960 978950498 551428610 818623363 35072551 596006675 94420989 674010292 289716337 899014272 637711897 705311863 731940552 756672986 884250733 960793843 350717358 831430168 465169862 547616450 445065732 987502752 829099966 878752022 311364214 908054224 463037192 895367681 253651390 255798415 519058789 753290652 839866689 967244827 159837485 468047076 514056388 876804190 771036930 918182324 926249498 984406498 104291292 349671161 347429735 354681781 712101726 982485720 500055584 639317121 893000330 999302983 508284677 965955965 467353225 903254288 865907468 929977784 736757976 823326651 166293867 587320214 929383341 939277683 295776070 570008852 419015652 874166038 102364918 309253379 494498616 651710340 688888776 947925422 418431314 749199769 260531716 577684520 406697031 930483617 243545372 272965713 445096910 779920735 664798307 719820898 995502323 997984817 483129218 688176517 511714170 891914763 462052636 559484945 370141753 919326576 379474716 741358458 605994410 685254961 701976321 899577577 500367017 670621711 992966150 998641414 917335288 968175934 886712559 923480417 185445780 721058436 479872701 847909111 968204510 984272702 33648290 644875136 721787545 954802759 151695700 473890766 887698483 965106117 340549595 902840187 407502813 764989049 65348851 73804200 449923459 917627275 47439792 580697228 221732308 842311556 744473699 993352154 425086449 967431002 394883142 673281946 973462106 986784096 213781566 537958280 947231680 954271867 443184402 547766393 40960799 940246893 787698600 789341528 669819776 762490188 651753971 812951526 692717157 867277496 114870103 147229955 447739764 508995339 307990791 322459156 473647781 587981061 588769192 804101749 920355238 962456442 868125447 885441032 325937969 751668670 602221152 784917373 699792628 926439275 536841215 888084435 49723819 936273342 742479228 813016149 427346287 540274977 556963013 819345976 205512915 382479870 303858568 752647728 941058380 987535190 45752501 423576368 599178770 751680533 601815730 955837786 932157552 965698501 208874953 577972062 501455831 709903989 687312844 801424224 936445789 949200036 710193778 737192743 649121046 773959675 614991571 982423522 544850435 943435817 281940165 733728811 947447178 951847110 771673113 799625396 455403359 584556603 241558780 629347477 518142532 940085787 860939353 864558959 170817977 444250547 994405701 995597451 627989662 780561297 272722847 868108443 744804674 935033676 727614308 760294989 818709819 977154638 448769204 663006559 510336205 542343769 605828864 615337999 459425190 885679188 259373016 772572666 697265501 986613197 7537197 861437158 484494335 894535852 974233707 978774250 265585973 948291057 584108106 697124975 547710519 993373804 208320596 504287924 640247123 923381956 97129140 425776730 203320948 503795147 974385879 997672583 383584020 786901803 934864209 962899605 273708996 575449346 511430812 600069184 57970123 181030421 233854093 886651906 865675088 894937240 619155017 993087627 227883624 608300322 155043938 823641501 411829462 941364259 216855770 975743205 944275107 961503765 688940869 697920367 340223530 888369180 351140877 865116098 703851576 707713059 907890382 936614097 860158769 864617126 902475689 969133097 767620316 980589710 978926359 985378172 827899200 888719130 511927634 766619210 154911165 892104062 136149244 615557395 321940658 370051167 57186154 448760114 89394109 353756543 978773674 998779403 74968586 792810551 916642616 936681502 481671327 484056656 642997145 999154579 163063156 441028949 720623747 895675155 973391729 989609645 263112698 378357631 664922392 860342081 34076503 434507209 726022145 885761070 450983142 518917604 215290170 368488249 830632036 960558714 468286633 721849244 131039339 426387096 928312301 975743460 285709070 779125354 651358503 929000671 240679432 940542055 740048992 784690608 377718436 707422293 253534787 391397156 352659465 991711177 795528706 888225162 994414003 997898888 814014256 815716965 444212636 471042308 823372504 868420848 931740241 942713172 609238483 929901166 536844620 839455750 659232171 976578306 459388309 837030280 216333529 855875126 8314002 752827172 494542407 570026486 670511865 731665816 584321086 813757399 861997921 947510767 918897004 933365941 981861668 987691510 365218075 619881713 71155407 332561597 307338852 832763505 537592580 884031418 408116397 982523501 741335919 919132452 637001437 749252295 119032814 132472157 591130750 598128218 879985150 900086764 340052725 734759237 850618023 942319702 917008502 936823731 404915843 883442318 920815043 950198789 90192655 405078295 71387982 192576489 331362884 469846153 953919993 984767083 634463824 892559719 612330930 867027647 143145568 811213872 624824619 706000439 105663112 980539451 551475310 774847170 799745078 940573905 254716391 680427005 269491186 315742857 673606107 946908071 595473296 920772078 962760910 995432466 222787139 626767816 37071411 559392429 517051804 839145383 302203369 721426933 472159766 840018461 525422635 758761991 328322378 349152232 654356688 695983331 226810961 549186034 631950362 749410074 507136250 793403809 608532375 833551226 841498823 917156994 369632318 414581543 306857681 823205542 495735627 579495994 827591585 988052464 946147912 982625863 451808304 665725710 427963498 602102564 704564763 890964061 262693761 529264523 95226481 192741426 714457784 949042793 732341334 922984855 9138099 118929706 433671894 526861575 154759789 309794202 201988725 804366792 244869176 260002925 836918531 969494892 744236695 887810500 291689627 797738560 382930495 436254964 683194247 995399448 765421538 916585192 47931390 903571533 988028957 992569864 873592854 954515334 874500425 947848261 482861910 980880535 584714524 730416644 3689187 778928119 753947321 885738943 946443689 994276092 280775368 567080870 572542540 742976428 297437619 520499728 310351151 637947129 273282518 443003792 838998472 881716905 600310975 882243059 623509339 625806870 614333186 762684926 910286596 929563205 299026266 486582120 663618283 927086940 146524734 699789894 906493553 960226650 114999034 473076906 452382006 511568235 442354083 940255989 728673768 829372825 978423856 981820811 842362318 916827659 54791836 926857081 414498 897531969 925613276 974271947 146827650 278117846 755805098 924148479 488865734 563711225 816016720 963687575 170421960 267488900 151649772 547091666 157737379 862061904 39406087 992748591 75908921 378304217 108900487 942009494 621238688 954227150 409927880 906497477 265690971 932461962 926014485 938680360 75345506 530212709 131097993 571997867 312800578 895286993 874602243 925948707 899289860 953347800 658804239 949685780 752185641 932380368 370348732 379117177 79933795 884681592 793146597 953831912 477198747 761550307 43413059 727329965 115574256 562332230 670502578 974784976 204073424 986150275 622225155 644196198 521988080 960205088 487656685 606944125 53938746 632333557 760882204 768941576 828548024 928400401 965218717 977802208 620708124 625765072 475337603 715871438 776279979 961515684 120798987 151395453 597804644 817987941 244006746 832704880 920821285 932301299 885966527 948825034 942341551 979607042 551501961 791116943 926002813 956391784 315806242 600732143 883306582 999139474 576123532 656814428 633499370 711450560 226297873 492693912 51254082 949877912 497263093 851517577 527912538 973215297 436235429 829737969 270069753 930616545 843642052 897504932 678457482 994254710 465263321 610686816 895053915 986990095 173266366 230439832 777639029 959972274 994932413 997923583 980950454 987663733 219995390 536152698 141544711 753031878 739005661 902292979 635549947 798339639 81873927 786443024 850684525 960002909 628229686 873120346 708844211 906770879 198166886 456760824 153331970 555071339 103526892 729009291 746942116 782787986 120140383 246436708 658848862 923313920 370136301 618199078 950114686 986288820 247298318 913367220 7872037 542773727 207856256 475172805 914701345 971271161 297948611 889936636 322416827 704684788 324361714 865258652 3151222 838989588 845295151 906094292 387198553 943905490 145337318 169225140 400437402 697588955 146077222 584559305 836430880 952826746 583588711 669307186 181215073 452161899 822703558 835178832 569555459 574701694 944319874 984384560 298528153 701234671 189711546 289391630 313274502 821742517 173507917 307190222 73720165 824675845 742763335 809477437 246740094 795091732 89943714 444318893 257792478 724195099 559321315 899312580 452262932 480712374 219290724 435640558 921661005 979066333 754757218 803268783 136247561 251183540 856642103 885202352 186020242 795260756 887572735 987230998 437722532 506132501 876272835 951057424 615207062 702307174 66127170 810339091 404384370 405147590 973788220 977487194 309563935 512271243 259786448 309690964 658375826 996105976 666605612 699753229 355662883 776805901 857771743 878579282 376832407 405801032 168609838 243074871 627298444 742733314 639843991 960801546 389174216 499804635 937628317 978422443 595875025 922449212 42278288 921522286 711359623 752373416 2618716 626983252 378976597 918415648 416733136 712005088 822526187 899324005 737844633 835784543 163971343 198691009 256141005 965158180 589237492 768003458 352006589 430553202 245766843 522651912 896441143 916391195 900979247 924536674 589110288 944180485 865478318 968379014 866111766 897382441 911648545 976401139 544603140 549832415 101759185 958564714 184456070 688353734 224195180 424530251 667173053 874149860 888832734 967774453 391553193 761313863 344247505 390398392 110857748 755912635 490226468 684843000 91248710 371143900 833869290 928619678 523966977 813304920 287549480 675780989 746171128 998352911 687598366 753535584 680578537 800728826 653693263 897016412 748540874 882570028 169599673 656734362 747568389 980582307 457911431 493872938 569006126 937600701 150394345 336302754 913761918 992335213 182416791 390961133 24764524 688472192 231644312 260270861 460228475 793267059 453004135 932085349 671724259 744392645 526747335 723454514 302125488 837478098 599352151 772872137 310289781 504199834 257173877 337441692 63364265 829572190 166502125 238813403 287928348 334814654 500391390 790557970 955958050 996110873 608734364 756297159 620091234 692793102 278076771 720231202 38472394 66522546 145338527 345216724 639805693 935559798 566568859 750693692 872324744 988278798 213458241 331219580 71439388 226493086 783073565 885246737 313504753 752984125 158277225 254181359 957785045 977357657 48892448 503872260 513214956 595653707 307937046 875200468 770697880 777867517 243694243 458156757 738150115 844080576 369010895 776917532 177692737 856772031 479089287 996559454 930000730 982151186 236183728 598022087 208189163 499927804 69148908 331961263 880013978 895104852 821807020 841384656 669039216 686089035 236639649 301333560 244232695 945081181 284398216 774383574 990781959 992656967 16314363 780402968 840146982 917806684 793497373 939553500 656248378 905260904 935652863 963442375 743524036 854505070 660835873 726898216 641978360 781283553 466958944 851589332 948793747 989559260 872721003 895180236 646195500 664088399 99297231 631945245 450177965 598215113 568285663 662586281 289034126 293481788 605500180 679503215 842903933 865284258 812428015 821478753 338766798 804653996 223939364 480339380 696201617 786149877 57044823 852250796 295933272 665939481 773836192 944085394 953729993 954460506 77098724 481129523 888182046 930303302 606827813 723678613 183118196 374043187 895223279 914805967 848546289 896486907 642119777 693680651 135545715 642434024 230291969 933171956 811917037 909803237 159109279 502397930 688140217 885125588 377687863 774185171 134888982 585628505 47136694 76820238 589417603 798460431 944105687 953583664 13787501 566598602 3138126 34323533 391729733 412163817 140073286 708531455 442821217 827181117 698670468 980146441 74329359 841343330 308188826 461724207 825654256 921068560 140999115 342946794 387475943 698339061 254077470 270602896 900316336 967890384 95745626 660218744 204076434 297617164 190318417 619612668 789820396 817248615 514238129 835673173 417489580 622573814 195152783 630325574 754458870 970160545 761623171 785882531 283722979 619944229 202576616 533789423 222850387 792757077 505032085 833846117 90705077 127649396 537925579 787330172 575921070 946863782 952731735 961579174 31197882 701617103 61577851 537894214 892095844 949440863 784422728 886442387 986787699 988234983 899313393 914837865 465689145 789333911 2083767 299185361 856332789 950731831 641913745 657286848 435428277 941091829 257910643 685297207 658719529 890414676 556286153 909866863 785873625 918184372 714977461 783452602 492618944 583676898 575183781 771724419 273700590 423675863 906290483 942252651 10029329 117692281 279670203 367655194 620218324 951821787 892213333 915632973 104830068 909808428 491262034 878191837 754763571 911066108 604956311 750816211 80386619 934035620 369642223 814935513 519748483 572025097 881844 691217422 971381793 977871922 31994241 789783657 17001303 257243548 762919208 976861264 667068867 683247469 662124836 922071979 878810961 958533482 980202722 989400795 666151343 829149480 744455980 786008683 459798629 980274066 669908969 688549080 208851579 912880215 16194907 595495796 695809788 789596776 151214448 446873401 478568497 891034334 916468063 974500722 396808511 768420272 934856964 948085700 573755609 689181556 694417517 941833214 663329809 713087925 886315108 886857749 7719321 730271623 166299953 743336688 259715398 594907481 798222926 992162072 543052489 784197632 181186270 370196996 323136096 352280589 144913344 859412104 685085134 906163238 703529878 756171632 305646827 467434599 482873489 972266330 315259919 849494207 234569629 991854537 50661317 401741557 485950620 556053251 211531416 615414551 350886842 633352260 943808769 961232812 919996048 998395316 600369115 877673922 886007626 914609649 674692221 783014020 350335287 428940801 695635717 973962023 466995475 841440448 597673349 901834753 213582029 296189328 596273462 957283113 860960372 982787266 545050596 887788762 24967570 184237811 457820741 968178955 508047403 805586264 656374497 838708475 263512865 994919336 344041275 834878323 157403823 176355050 142181821 817441547 631525317 783416639 371929351 901818401 371844522 641287245 947200812 980129173 333303939 931567026 538979100 579543145 235704368 784746668 844607965 859451290 569307281 956211507 438832517 778231632 554192757 779273335 863698183 982770564 200115245 545795251 831763040 876480400 160720767 278818954 202271251 866706730 671501720 919306262 629120575 639899903 940806767 982608482 984873487 998595756 643707461 783192294 652305972 888212953 435419058 652453268 770087442 809130232 452391934 487036259 905773511 993039263 658457640 912133992 175972168 420174163 24989166 880659758 57315569 295425693 562412184 787141025 626341567 639383281 671052221 827443206 16799299 178700537 219154430 256390394 257590481 557424956 635853183 848283136 87542013 670300699 275109085 275785222 928785588 933258773 720550445 796341074 734156271 952062654 582461030 692859462 26171351 657060986 825586270 928729288 303521390 385412913 21777125 582192083 440390157 656328364 529119036 717139894 14057666 765629379 754583925 998442577 527924086 875975940 457144957 511079503 273151006 604228747 664955219 994879665 576137923 721819080 328245137 374096202 456374709 481480853 365541531 508730656 785764431 932233335 1855585 608444659 433558871 945368063 418752875 888409526 592531084 845925758 274686861 561449533 643882360 729962965 69322286 714324430 885318206 941972313 994458789 995837239 672991853 917388111 98127084 243684286 798322109 837851426 862857826 912857771 750549753 947589881 595434532 763213878 434369997 941677692 829659331 858619227 144687958 191172190 527778637 918369185 291530193 979215774 183031022 225609616 791273268 886227140 463894436 655511267 676183442 839714934 243855274 330568813 946832446 978301566 977001923 991559764 376039234 837260628 985173378 998410235 218220001 974034585 676574239 888972169 56733878 540715411 388938165 669956747 242459032 271028032 544823630 576569949 837072123 889180205 598859712 864349210 645600788 967078145 613919932 885364552 14145651 485239106 539564505 918328564 42637971 857688856 383505006 644116286 548663492 790523738 756482026 862951676 583562624 672573862 969511503 982769226 780239766 935062365 893031314 948422519 989178550 995856303 994689750 994895492 703201211 751748336 296588323 597453893 665604194 866767311 738998917 928402509 245483004 504037290 160708555 885259391 366120338 613209109 329300320 477705640 635726922 956662641 78986981 157166532 55070258 221001260 994972033 997466886 18996848 353205248 193396077 231923335 659004977 660985088 550747574 751668770 748594691 838639768 401053391 877651190 246651327 390863338 59601763 689950686 167971766 822586242 968501966 973138868 762569473 763182300 215833809 480332888 227246770 280226295 997461805 998684305 903508190 903599757 354448759 761874526 81859730 859791638 870113176 905335008 313007150 665229693 749841515 792023711 90627745 685571941 766087716 986374784 206678324 874113264 307097980 867823558 802942036 870864733 931941378 985627898 455121288 607264804 293408373 455930731 707468763 865274914 649817954 924417346 840919609 850598171 97340868 388402645 826369129 946905915 675872165 775642103 518594964 548848779 678474258 806141699 166398009 271867730 5149624 641913449 21991254 541845766 50133374 413720651 564014879 773467362 485063709 566832785 868313683 896924191 77676167 197581725 360381840 769960662 218173852 949772881 199728878 528173372 797378379 868445486 471758679 939001124 68063955 78518181 7947321 90635009 189825940 986391300 494893072 577957402 642831264 684824069 91057502 442345332 866383715 895053201 595830203 790098031 882648265 921550317 765321305 781534278 172559828 236811109 807139327 836714664 151941661 455322067 668659213 741365200 954195807 961157955 220520552 610150047 901866338 967837309 686973170 744891569 904137633 934184817 842565898 843076390 34042682 626660956 535964571 562171393 443567871 902837623 224712667 248922953 967540285 981077461 270353548 364402147 592278457 711454719 467053287 551152190 36545516 568682047 357890405 889984092 994974328 997951953 356677647 595714590 144052833 936098221 532078396 911013270 787027363 889435351 746268056 849972270 863788215 978181459 467436639 806275588 424517959 615336705 468551452 870952431 772961568 911121271 331839038 680066894 775711484 991243890 446709376 771546946 145129372 582647737 984203479 999390042 928383307 974965310 583994333 620536729 519131477 628122151 816620194 819244412 235231461 491404917 854818250 878063772 785599528 944197045 850311442 864970499 771674013 786383667 988876802 999331516 368140834 889745637 629044528 975191438 654186922 899764864 760053552 796332356 773771304 978618717 292504289 987736703 872487189 983142679 727204393 910644236 161593329 854608760 619112583 897873367 451166239 790102592 353782110 592498996 388696280 809771798 748570080 871358965 818866068 919912284 372664370 995508197 2436356 496219919 699257906 730531445 849750290 986915642 892593932 984395198 773300739 859769061 802696351 939480644 204565588 781367558 561121282 867748960 344377761 909392789 280219132 394714419 838888642 909055059 490269038 906567966 75665704 106594246 895919212 987239279 505544819 785326792 96168962 602956068 534462995 994721336 609635702 618226138 185778809 775185340 603122423 823318002 446245314 504320250 305221416 879937012 403239217 406319763 655760550 838610541 226195740 317340280 730459316 887322268 719024379 895890959 472783520 807250655 334943910 454916485 494689357 568331522 696539282 794854280 68287799 706435440 538644125 577850368 234484592 917274475 817074988 913726660 26758505 287887189 702334875 944736371 335806338 945905762 790066404 859800386 631529111 718406549 139840241 682203992 674217860 684731635 149355420 740374652 943564625 992464429 909083211 942254674 302893519 521998818 507918852 747028022 452087150 508541436 499950366 911015770 344050807 607021059 411256690 841571192 280325572 726716850 658581515 934130797 860137326 961951926 584499609 892261835 362901013 614578748 968932170 976945240 617103745 746577321 948593855 960416091 482170916 766347222 513296567 836244415 660132181 933506682 184395610 312941871 910264635 970693744 683243220 931092805 85611118 988318211 861740884 998164104 739633043 837233604 529525178 804823844 1711223 914250713 514794816 980580390 177184711 455195795 658797466 875581878 817591628 873476402 857659384 971748946 258789917 876556489 114481555 329012910 821496909 880317645 818883818 884436623 490494493 577235178 785121330 986158116 385362022 655250978 765231659 957050713 249803555 811835779 897977485 938610249 981505301 985348344 399368862 628538538 881219622 888482061 72206319 163227262 334888342 869814145 946685142 995873033 515094480 523512017 683635061 833497290 639301076 976246026 900950071 902772268 983396649 987526061 173621930 211742435 396847272 845949067 122312846 640390207 666936951 720886967 810422167 977096503 15402493 858190263 378160827 892330859 494771731 948030790 851540963 941501867 223920777 604261511 868329740 972616051 148597812 560792105 946817759 964367148 940064430 968835258 267286924 711816158 30482587 729395277 882848521 902686816 436568772 799164388 32125362 848006481 344172717 459767074 682957004 941433463 477192837 724730255 976374934 997647676 738107798 837935629 677017435 885463860 407737651 523209041 518275575 800846993 309880780 819218912 568345279 670264212 573440517 624821460 145301636 534537725 567823507 818011357 500927316 706753861 461842058 806298913 20686408 608364463 850721361 949725398 763486697 892231104 370401978 539208455 343679437 848946132 877954568 949043469 941350492 986699061 833342571 974068113 819805516 824615123 659026712 892509217 894049744 953218921 670809604 789315929 165047978 698064231 548007637 558327526 900412128 910260486 603856548 944545761 585010080 803062528 947429269 953075067 369030375 477529269 627191255 785471301 761055279 971715770 85657824 144025527 570349208 631593139 453448957 578997441 835674941 971796426 611052848 782034203 777689347 831361041 190555670 463761135 868650876 926656722 634638115 756324933 614765345 771298838 856814850 921213425 395652734 501498230 167685306 803737483 675092188 855791507 214507895 250537112 962429917 966530187 446636387 892718888 592191708 907833584 564273419 745967119 574012212 782414823 282329680 818106515 940526420 986791334 262593747 722322884 522138684 905747804 13179517 553122931 389473841 817975585 987686995 996630018 768978499 948916819 197572719 368234217 834036556 922421031 625765990 772382488 418863920 666242042 928943687 984195179 992645879 993472539 628371196 711863675 459319772 474075133 336408930 930482633 869118543 904714494 749197303 843152916 383749105 584101414 508285792 794165220 707340282 951832726 597174941 944856899 204795887 839357904 434611016 649494419 672004592 718774095 380510973 699917102 786771376 957365567 274729285 338884416 117134521 485887803 780035630 976977296 340145039 900776086 885150830 920788718 544814804 617906305 482801708 847229166 997941059 998260044 603358311 787037459 485896573 960753258 353635741 614946245 294079816 759566236 859992524 955554734 152749216 355997071 235265771 292461556 602099205 690216236 994820386 996665298 685443781 993031544 307618991 406795917 382109781 864827443 404278148 753436353 410590424 454736335 660923829 837278869 869749738 925221636 613979405 949333294 510186934 528557428 778079606 826211032 651021355 701351769 838140402 842870414 694367325 984118279 181172468 235088282 718725201 810060558 239435085 868934051 980027315 980397130 869067161 886999861 168241900 502979572 508714433 964886437 957285258 966404253 374247546 799611199 287964430 813450942 717011637 840498929 920639783 927478292 88534409 765183532 54734422 971773354 260608329 735873615 598622945 699998116 257498741 620936608 102282266 366960244 509432846 766221369 651609921 922003636 97599960 600391378 644293980 993142469 235107623 653223353 920812923 959913665 454013853 606096095 998715005 998777430 967291396 991031112 530386363 784200783 546754548 826089811 148985294 625833661 612663406 954405254 326955322 646058525 510461517 879608665 81951166 547785243 212087413 684284793 322500909 660884633 665245491 874782874 420274201 944526848 421231595 507419969 784835270 807701258 792532141 812261170 388229777 988925945 444624893 668231166 814401417 865384737 328513691 398341387 871491737 926793661 81371964 782420218 727243535 919286122 736035024 943947810 291078124 834482716 611234645 778614117 285280691 835743573 528478268 582811272 237046644 620165579 127805650 152232767 935286251 986795329 30167068 535214104 816112973 940885747 123565740 418600343 675392624 686386601 362255951 530079708 870983845 978471402 601719646 791991069 984067376 997589844 694673806 931258221 26153390 162596121 423986632 641371222 771653174 802242930 757697433 861519393 834254035 838971025 188370653 379219790 305229132 651721499 453929208 479870447 547406468 798372305 771856675 911964902 473109995 841898415 916256241 962845452 155587629 303272789 374450949 576602704 638727299 678776205 240151946 761050862 143118055 598013961 764251174 915520686 574652687 748901282 705776958 709455151 931132609 979305100 470921584 627757742 531585352 739157938 537479104 797125527 182120657 268568874 141131756 874760390 601350191 870002702 154175217 351178411 513969879 942560448 674035934 689803030 461599293 689699072 174713971 298125122 887405329 901282272 226569980 547983388 793442137 862633024 422641136 661091335 701534612 895683724 548782012 746337253 54374145 849677867 171204271 229360548 773605154 970230328 746247267 836722887 466035701 779754861 438306552 666665929 932261278 987148631 974108290 996888264 123868416 663449701 247052616 614568538 750006323 891320346 634954135 772162700 763233473 778576032 732512010 754492747 879035319 993820663 727860548 847478443 176808700 318404890 492083769 756714547 357265627 828287674 398789595 747031021 738101143 904713676 915234261 955234580 775673907 779945321 139283750 968237606 938292567 973558156 763418231 852893315 103326131 589830618 904464898 920322476 499288953 502998684 721637892 847807605 133158076 807725626 949323092 995604578 686873586 917763794 100035960 694860031 888155899 996447741 489163379 815181316 991530317 997777310 395034921 554917696 309537394 777845281 869544491 948634885 374805915 721528272 757317052 824869651 304804505 613185891 871651470 987139083 738724171 904890976 625632860 751013830 844210285 960074321 865035045 997228678 164323503 237870909 404393879 682799625 175059685 539066024 617521754 653972337 819983470 887432513 901449088 929743229 505995275 781780050 514341259 620847007 343607344 881043489 732060960 920137513 298028023 989185485 972915736 996321757 99117660 285793062 381929920 675467650 858105225 870325757 526053677 799641041 647920465 734282695 419756742 681082896 743712057 804235316 24663931 140373487 162646057 183058823 831180374 877521685 594660924 609000406 417900950 701627975 799623950 799856255 143211660 836800256 312135001 972076611 874401699 915143736 982113659 995425493 293480706 779557356 187708443 671377069 838978012 876287121 378564619 679032331 885584941 975191521 971414158 972907014 7388345 785026456 971178206 973713007 102444302 185337813 637352939 914010650 813097904 899646556 154102232 988430144 437633184 446770227 438357753 453901551 583461331 963119371 601697484 643305966 408954567 518935590 646588159 869075119 854675709 918753150 806891898 944566800 989536126 997195676 956300608 959153407 816049053 967139369 477413990 746126932 433662495 809850170 435872641 941869832 207579807 624889815 592284775 983484135 704749991 905200422 566506524 999013059 530114439 721182363 356489982 840844417 51276678 226822844 725512429 842234638 406915544 441703641 72275489 688318278 544845565 816785593 773848263 899690038 539088298 802921111 525275489 571199381 816764402 888680394 540900598 660872663 497141370 536205541 246869231 695510590 704196741 837865295 354720932 494166430 543712101 901566240 205621967 726661513 122757173 269853258 902033583 933874310 998368512 999100197 430218325 459260990 865809825 908128372 694265401 949498673 768123430 972585753 113742907 398831522 679553135 904546827 65680673 713765046 781938755 790741497 653712498 891617489 457256382 822469784 750561410 884638661 642559533 728681427 122338316 801337079 756563781 818530736 555347307 633104292 13867230 284689365 263193358 483343863 227212549 264727949 871490940 974570616 162487319 423355274 945450216 969694250 241640781 858153014 177543109 281207590 926254333 965893078 253133717 976815918 761574091 838706874 363292666 457847262 853205149 885880736 194951411 741379864 845167555 883587569 736316507 862534717 841771970 967936019 600087247 883664936 206937043 493107028 194290214 892813735 750684951 955754081 321951116 831450846 61545459 600990076 893379048 941045407 505039608 834203589 220973575 860386871 795466312 815137675 408019041 619533027 464198679 560031982 848459399 954444957 909209420 986550839 456581916 668836675 495926810 947418297 375802181 548576097 631501281 948041234 863071811 968060431 744678442 965982900 640493030 827552781 371026662 844724505 884348989 968355843 579792562 904807558 613236845 675210965 840953510 875435580 719332367 853566911 36448463 243817680 820636404 924859608 287606229 316167706 534142487 686591413 740581271 760270274 394456993 658521216 811597275 979712486 161457000 481866719 733718875 855097860 117118880 693524028 144939521 257361129 770140008 868114069 551981384 789051318 942986800 950929251 446784748 626157330 99553382 466962150 555737563 757146339 267703481 581139289 674094789 731874932 627805296 721623121 481211096 691341119 690138250 990838319 555847559 628627458 998116961 999320766 782486859 898011073 903598510 982418142 446758754 756897807 162312511 984682212 968577207 991337674 580359772 840407327 561984001 563119069 186238290 340415082 279527606 997634063 176342177 978438910 911363981 927842872 180341712 622013035 960151976 995451051 475881368 837747300 374408273 822738255 92472844 586473683 290212004 553744646 415090418 469218384 865370988 970544458 516687190 636222119 230970365 518553710 377679862 840735393 105728103 152000529 861682409 896384311 358236766 373924066 926045441 958053630 343968878 789333689 603401500 893757204 125050191 536844378 798915724 898584273 917502646 973154698 195633646 921706927 478993867 638336880 528327636 678208128 445968174 663481191 67711394 128198041 197688763 232281402 16217840 529825046 817426080 930487937 923164613 981784388 913770733 975250975 631579038 680750845 337819881 452179994 154003770 207779485 264830573 529493257 932156287 940465424 655593322 910284465 503036813 641162751 486357415 758058695 466525189 689195524 289716085 554577970 363500095 658087130 456687707 472547502 405528200 565608761 906068793 926612816 745059599 820231395 71973718 553793018 928376491 979491068 802321839 862915764 293895079 645479276 163723595 274429195 239942611 677274858 623904416 760509977 210607505 375204279 808428574 996926757 479573147 854252696 76896057 389762803 353892322 697327233 134428660 470348081 111202071 892211786 315080598 448430927 150656605 218027407 825411897 892631603 798360893 907993611 706887760 711592168 777483881 987951392 4623023 956263278 950600741 971720788 965985187 970440580 199820660 367394390 985919971 996818881 930956854 982006037 391309822 679048314 119872058 701363895 843915162 859855333 883405250 993432529 317436558 664068391 60175061 913966234 632476101 923530750 221344852 697587214 991386706 992005662 440011044 944684395 379388459 878307238 524612444 744989190 633235422 640168518 633052691 656599231 54731644 570655736 630832780 689049783 389406068 473170831 476566149 721273644 962899141 987027673 372234593 969439729 172006476 357809321 846311633 965028735 937052627 958548070 98822913 785369298 297253002 731289693 860654936 964870300 826452543 954371343 183474326 782161023 386357235 444253333 643496475 711471075 162312044 594592439 756796772 946663732 439088080 495192437 989997464 997859660 986691867 993917595 763217336 772139744 495028266 930934124 281227621 489673531 807386075 957032499 220163418 573873490 505696727 722435594 344163317 931138041 800344561 951043278 97198413 875255141 397462385 723184614 615848865 764717425 268069930 296963260 863102041 970620732 653041719 879444908 150461360 241284523 713808733 797785784 204283015 216550177 263895669 302573768 858723081 976639878 480321927 650145427 160937873 573856792 538968009 929455054 283991990 698564068 690700843 850931440 636258460 983974637 320091372 934485074 31340642 745585961 312788827 400095461 772963358 849484554 573648923 757312420 287941106 485406233 527506444 708165924 419425426 617171257 349500149 863249295 803574737 860164321 835612292 932343225 141587762 933524131 815530192 918231980 864457868 934204083 314275910 576552930 208509999 580834987 344643586 491368896 22740583 996831541 831222836 959743873 170987757 936607648 830127881 894200925 802259850 836890037 587016931 787623418 659720540 704145170 627987333 718133411 284917861 881840572 235385858 491179239 811152185 997889431 997349011 998467733 680285912 775277170 117003879 919062085 183638750 544997041 354883879 902411219 733763589 941863961 504849786 889801527 26655371 820710410 834975635 868788908 504472136 890438899 929310319 949166341 877160385 886808895 590572410 974181851 182975567 766860177 699321347 749677838 102360172 521380070 166409746 183057442 89268802 176821379 553529074 925886029 760990809 807459809 799351578 862994126 160176148 603165664 443381805 756624687 466812452 949613987 816589969 898352021 372935602 480843834 451118475 571467231 70001778 400618602 428995091 486074907 898320881 913707231 771270683 776124964 330171115 723286486 754817617 783235085 642686625 888026707 38701428 800231731 191133518 543574931 841556829 958397525 978344485 981963662 824772092 952687315 495139703 851786420 545436007 650002919 813651389 825377201 252546979 311897379 445538921 725790263 713614223 809876005 25539136 360541086 748608495 876484345 95736641 568269608 786355266 856763280 978988096 987465836 641403470 696577755 321804222 753920245 665977806 926456917 240230114 541407200 323805624 556063967 939338566 942535319 47574837 834813108 635679199 908904321 830830234 936636753 569666052 627852970 601145623 949702281 235193705 953988524 449510082 669331665 385010832 809394186 216804501 741435422 58132964 510866872 855499972 953867051 698664799 815358893 979799375 993578205 874508775 960290075 720799538 765682340 380479141 512433106 744669654 792099187 911130339 913982716 384384559 889143765 987499428 993658302 652560652 806952059 121285622 361661392 803456875 895731338 776490292 980969815 626107857 773709621 390204333 622471787 995498148 995931355 93351965 567201738 20087944 242774833 134340741 451459404 648194035 959176423 736143879 936449811 76600181 346003684 387441172 429713581 295887477 402623630 483919647 779981679 975790586 995017417 270821210 873407425 163007042 652137186 806707936 957071151 949509335 998985828 784638767 960921044 752571745 866454393 323431069 405540259 293065550 743178213 608236351 729464397 316851980 992791537 567279685 670765518 67979288 156329310 361270923 468923038 761595407 797560062 484196746 525626126 819836682 959467893 426580391 949919522 838989994 858354423 944378247 975645039 643678175 915495166 96696227 980610749 359699347 611226692 775018045 980251504 853896772 856240728 655413654 707594364 856947035 962822879 170726422 433846398 721882341 864639904 190855627 446664847 986440314 995810404 756925690 882723889 226468740 599048605 162626084 196260972 997649943 997660278 96848066 200000893 260338061 377310759 349470773 930584448 648192510 826542940 10482783 784234841 879391853 951358531 325552710 578305433 27330650 780825392 284013177 765364828 915494747 926372932 668591757 702177251 540266849 571797507 387609905 775801692 286199422 604352769 114525195 365901763 476359123 505832569 749161440 906101805 525289082 526829101 487944220 874973047 177762367 609654425 324702233 576436896 396523893 975267384 142751035 790364907 323029849 327304800 237399549 494298388 714069005 808985588 318973422 532557977 545115367 601492282 88218287 343960330 671855876 864869455 653487032 673969590 255101351 900782226 651373447 735576661 273369201 923432054 173841720 985702943 377581168 772171799 900909988 988010539 251737230 960500315 729433785 931970914 769070170 841627194 664391060 953996625 933770090 984143394 947208473 976980931 929158955 930830074 369570611 790969030 707290156 919966559 130618938 832127147 974007575 998280524 925647429 946883486 365374932 904013452 927890568 986184799 66745410 788498101 110214137 826454880 169720384 737522735 439773547 917135609 82722921 850266081 929930950 936165603 976189057 989824243 886311425 940519245 116790910 366434354 393138083 842578047 899999011 963668887 860031632 954118840 194613975 359220817 784391577 791498085 783369037 815595616 185403651 259863875 812448856 863475213 946011866 991434011 398382546 547393718 632475995 650865165 129012627 449431060 196148142 262849131 349080042 672682340 46388041 875171363 582306189 709019206 365828959 596392094 372858364 727305849 601192702 958078975 854318328 986323182 71538774 710168685 242284629 735455839 397691667 804776727 548977729 934533726 117834544 396093322 663368937 955648815 162803045 347244771 359371446 714290241 491650129 594316499 761888531 942862125 409699000 706851892 140673005 337652537 203370781 408169042 844462944 870393447 897176590 998238635 435752754 981346062 286305990 825606570 701975766 915250088 73225746 322356713 539901636 882285993 566288724 611984056 99477706 779828921 904159401 912072484 945637249 962234303 201710412 658888792 183252519 684405992 543994722 857147449 891180585 929103469 764179458 996989534 647657441 711708627 341288702 762271570 764148388 874571373 365053550 471467533 444892702 567441410 534125289 602043155 420961277 863707949 278791870 544262132 656956957 963882862 783086307 886055369 71493801 549506914 486929000 978645453 836942655 856765963 333000865 456221813 566910219 824941882 25250581 940278758 506881193 942512131 425085981 990764664 675197757 923000140 122882971 926123872 956098950 985997117 926144338 936601887 100496467 716338361 130002890 184128506 960434172 991516702 952597910 972436272 179552422 223810968 463322125 818976880 217245186 718278914 956799963 966191769 115769500 630437903 819353811 942545442 367812656 852725562 84642004 737312018 5163702 15421015 349079699 351724236 869291127 921983437 453495795 535246323 728944570 967964884 626024886 790847888 330032125 995522161 804317121 968544380 338522059 786294112 35375778 528982522 349412894 364570169 404327117 496429906 618611803 871714416 129146695 262521855 159809957 675240163 954940040 961943600 803734265 944260240 152658115 396079026 51103831 516676293 703336059 946949724 31655812 256334327 3818852 558000379 927026136 981842179 514283202 755287462 217099233 498452161 600308174 615080530 18297300 37639299 172815068 641272283 934113809 988986609 648668198 903759628 837303332 897582609 563627765 668033992 82962420 573627690 547662965 819995028 972365767 975736114 139940834 553069235 993583391 998950863 609164068 696349465 706308093 891208262 55767201 459800651 488221592 672328619 192781043 686254485 504331136 533764852 106962628 661705815 624471052 934242240 289268534 395796755 793532890 879891064 719965378 799026509 212087701 451944551 839978329 860517368 112089321 337735404 979043509 985870107 772573495 919853266 517320503 858592788 245618448 792110769 297152111 471379592 345451092 567719162 103730730 885046183 626685768 737098789 706613554 848536271 36625422 221482819 440018201 867893673 894628166 972534564 776666204 987334661 37733550 484602651 881117749 974821580 375496030 510290602 722175383 750593145 886226028 907898998 676911404 859881428 446535882 622679519 231416491 931349974 256500420 390727112 28560805 171918805 956777391 970534512 356601483 865216233 203160573 867036787 276409442 738968543 458397096 756880598 362266460 390712841 675197187 909488840 705494318 966578404 657225997 816281750 498577763 722821171 166582252 563841376 488892439 673646510 941159204 997650817 904861565 927326782 906638994 994634971 896445536 935473654 244471198 912944150 490107322 492729296 757945273 813856951 130340311 166369610 791681617 825786487 642952567 910130005 822727794 968949501 487148846 706392560 742773751 945710834 952300602 968475881 410740594 936766199 504749373 959885613 363130462 385647455 785858559 921965631 27505210 185747615 663519268 764936703 101593256 611227722 12664101 544100479 163240342 195523215 901618284 977479298 186030689 260898841 583663777 812132634 477842246 507701834 190964161 335862863 302440751 961698731 203781896 554384379 905494740 990680349 674443728 947295153 109819239 307027829 712991860 910299336 122040706 448536338 721050319 892547154 687460710 837744196 536409718 547967839 652259244 934099601 666569658 817096021 396949715 755002719 283569691 417374286 971894539 973206876 661151376 930275527 248190334 934115849 658240743 812005422 823425296 935801735 332214962 373502988 418678069 902056531 171478883 628322337 340655005 418677470 795312369 841911543 288517778 292892285 741434273 911467937 864310297 880669752 97190801 156355969 511794656 818764585 267937237 750389790 194044178 550906157 144319175 871783055 392076736 678063790 174059881 707420126 958458155 988769751 19111411 24753938 933768860 963539136 852813531 950795111 104673901 572275535 349680235 445544734 821580565 934075802 497520746 714062579 223575868 572746291 763042100 931438648 25384513 638924304 465759598 979395051 644861175 946097672 633839410 812418073 215753091 710380069 336661659 604229210 782211237 904636693 359612247 452960393 121920780 403649215 795120216 893147255 285029254 304122545 330090333 370534465 388024448 453139325 585880751 749069659 480353270 554518702 547545416 851136113 149334849 724384451 551420856 868509326 87606353 940586240 586478310 736353829 147944768 158877535 927263609 946445183 55379859 943694012 137875889 467683720 349048129 784680881 3397526 889297190 523502694 639099859 644091186 758435928 757444177 906912070 340290847 395110167 848488398 900355428 120350497 125077582 951563437 988805906 783973160 900743972 500216019 868716780 466343312 906656630 863915777 936926823 889814490 958012067 16762763 945991465 623264672 798424099 214357435 620257205 940955411 984083543 838229571 884589137 672134049 675478306 962001757 981866619 557121176 688159623 320893981 345185043 684486014 715478355 723673778 962337629 398043333 812068810 713082814 725515115 154119588 502991586 941731551 970686174 593350210 872869127 331479085 357607517 656054002 808054661 772367141 927351405 933618566 954706240 802022806 874674431 294495 189399472 460411442 867680973 351508855 952223774 623047759 730717350 178546140 350475536 34525571 316711131 507627628 633746825 461533713 677522732 97073261 883194373 48875809 897753307 480414781 642939893 483472246 662076652 755137230 988526490 427461197 572826684 3329202 626043039 893650906 916349337 26983213 215289455 239148443 837581980 315823989 337711174 908495672 997541489 434627297 844030043 405709596 535943455 456860033 575814383 827828062 860036699 738945440 805683899 521067595 949818435 570179730 877516776 25003926 544511779 415056407 884475707 540273999 832819170 213849396 709419607 567267769 591925183 880330974 973968750 393626193 961015839 314779811 797384077 907853318 940445624 312313299 724020550 439330930 624137071 961227240 962994235 12928334 44514478 911977245 988738949 870987976 948059599 885744961 903584877 883804178 967983403 89095979 978313053 757010269 831903453 952076567 956789922 994358834 995694907 552505304 866908573 566895565 605088121 366057384 463896222 363659808 734194307 747916087 901607889 274150823 687184490 500049394 590875835 212055005 534586846 868416003 985744840 423958646 634562884 624411253 899700951 233135516 972573688 480778031 944115107 786512800 795020338 71444756 559766867 57641220 788062357 540046182 628550507 21432983 604919873 979968055 984961868 381631211 928155137 917536751 935525879 602577048 754519038 721136668 932417234 168565804 517607098 463111135 681497441 189592243 291227459 331169109 638326804 852494232 946641022 735608836 812100966 589455935 654122392 108974208 818523937 516549656 740905479 454692040 778109064 326621688 850700763 488860162 498259179 189724351 876685914 333963946 908275761 140781210 318438580 478028957 737239677 219787702 936297112 446179837 773828290 62108305 523797687 382255879 871415894 741449178 778107485 73601716 853095372 980188812 992564655 293517310 606272886 143984861 339949297 19245990 439964963 253595982 312271739 377475267 530663899 872226055 923171259 606821784 826987639 179250018 888125747 843908716 950216130 525433305 859563717 222049327 473566948 368459611 748328624 35034589 378589718 139750080 140550628 390652948 725047206 293211282 837914018 713168187 746629774 537667104 593606957 251795626 955383669 942701767 946474680 585275310 899152090 245977609 987788248 877764207 995788780 858960258 921958358 125083583 955640692 375940712 641558179 936118451 971406919 716047031 762603866 610079480 668106637 564931695 669282853 683040926 763955863 863745522 914360884 469162123 985124862 353102250 716639779 585925272 926962813 451568967 642801472 253675008 362951740 272135110 539978406 430783896 554044861 120152534 954018935 68828396 446517065 366836113 721180081 497853951 983709113 859335512 999380627 619225369 743885336 435357328 773135306 539095218 546667914 992270107 993092875 982075144 985464286 578208809 980071859 849338563 980045424 969232222 996625859 433344208 780741387 188347367 358273265 733618342 893050356 890702481 931059437 353205946 866543229 944115691 981581759 635906677 836440660 74407664 804980224 381521712 654365371 213686002 927505478 738086847 818099383 632363547 993038541 949029269 972658837 163979481 802964290 215390503 946307858 380296074 441810884 41499065 856969793 178854924 363072125 239512975 739705111 493060876 993762178 266224196 374893036 431400031 734528456 814066652 878398100 349437696 791943681 738095850 883034879 961408496 996343005 613647991 709817593 965280857 972841607 884757343 945031109 235392470 867503340 952674364 990751599 845391660 998463551 273641059 298487245 121085804 256199038 310494305 753729317 452210409 654404077 554129863 741615989 142820930 684405729 399745853 429318378 315538518 686708457 540467332 746549924 430044851 923638907 367955757 916757249 227182605 858183993 988361217 989587105 539060694 824024793 765469126 877263578 727564417 898735748 41583911 286872681 221689285 551460598 778910533 996372865 379562213 601136653 809602977 949952938 547163228 859992076 450053876 917486074 297114478 749488648 864705143 974304221 338755543 705436870 612858336 760819869 831925666 965969900 732127520 842000991 664936981 682340913 647964197 806735909 266779369 451958526 579379048 784747222 433308684 721599835 356457234 833814641 791921290 959464500 746354462 903962041 33635398 201192594 33797147 791961447 343143835 736358509 197567150 499907842 458213342 565175824 840105653 985564193 376280299 813424481 466972938 938684225 366886910 805101541 963572856 993908068 820054071 833326755 476108626 805926524 678125482 803926343 297252240 484675667 271635225 656975478 175339000 285694620 873481647 879885953 699592793 883917995 281870656 961002781 602371025 624302414 18611046 689284622 553468814 672909182 744832972 925077324 890718391 934858973 427282574 490918224 455955575 807708037 895876170 950141416 691217358 699083417 273093856 349113282 193014166 443565031 410074438 554288496 18767130 820204075 211145374 763645487 962121281 982197302 438767695 762927711 694626649 896340373 922022854 946521870 968184606 978130862 483751247 818331359 324577041 443304522 654705899 997767638 227721235 749688735 84881044 677567523 431905822 439271514 516028213 578841928 187282799 229525120 116325272 972694160 711174139 744591550 482891526 763392739 823251441 904029794 156091667 526513606 474067834 974584512 778948251 869566377 925426893 969393874 485485386 568996981 587151950 743330542 246456335 991769958 683793042 934555278 456690328 570559430 620041713 764094749 211990238 488766406 205756961 668152151 888612460 938114197 231215476 338687987 454667825 476000891 700216979 906524072 207578069 698173373 818936943 823364617 930449071 997311956 62068828 244069581 917039305 971276071 678768672 758262168 441139731 586660518 842731529 910572871 758973265 966214495 797511783 839825138 634033418 888774430 502794802 940025612 388088724 396953193 931878474 970347122 599491239 728974537 28532140 354187642 777150540 910965709 144452902 280769340 880167727 885772690 126294543 830147244 894660758 978105872 919837386 995269395 924171703 932472065 860750901 869301296 432232283 609441987 423426241 605895863 723270821 871786609 527356151 784908469 655821041 990571876 648123619 802757597 743327198 840119945 702729145 820885556 22205298 618651230 599750242 907649213 775578482 916534885 183737546 469797251 426555975 601371868 858972616 894165044 447037175 875083015 597440466 910073511 541962361 744320143 542001320 839224688 323427882 522716970 622534790 819007063 150712282 750823737 164363081 589470942 547894029 908116685 42030781 864727860 893609331 925035031 113819582 826003674 576848867 593793600 263675849 888982280 270621826 462801884 317528825 553953783 55452967 621062395 834125802 967911850 497520501 790340826 335925079 584445783 817823734 834061308 899705407 946918031 951730338 983615141 251281758 856789701 191628113 390392254 305802003 605096651 226985928 593935735 861587586 946022468 724217697 858456425 393662997 831303978 575890858 583495433 799515132 808846335 701610467 933568189 392796521 578651785 770239371 929484498 914124702 950977990 370273335 531354875 12849515 383115024 33617487 628852226 428772483 642628821 970027757 979062656 213789158 342776235 280717904 918051230 909937268 980739561 202898861 563768538 105859437 235178627 145883628 673244793 111578790 226690203 473520107 681894978 174030739 727742509 231161930 838402547 212838367 876261508 208058547 481675704 560610682 796663917 89556146 951656771 729099465 786240708 345194888 796479173 565437907 635978735 353268573 930540210 550214684 730458208 620527065 909019677 611943180 982732409 71156589 762357045 212195629 366839905 148171318 888772494 504016806 980298190 685261803 838069762 57313732 710054802 926483403 940866440 468019248 497228871 325094956 437949910 765069989 935999275 1643429 654087160 501885051 598833240 857869983 951816724 99208840 697202893 699697706 940853300 408288891 724407824 404837695 798140321 695721122 729348472 712755881 889837860 910181019 930930029 343746095 582454673 58625912 871926608 264063397 863250231 504049456 957457814 472406850 492972786 689440154 997509193 190785234 870219833 78974937 523999949 250801162 291596564 542919604 892733802 308447887 735081176 47958535 590346668 191489979 737222379 40680843 232879353 292401684 778826670 645677415 646448126 445137124 757615195 600636652 799070737 448016904 901034514 466955057 486242197 190517712 247361137 454695367 512046014 695768244 828812557 748128723 928255134 506689698 757966227 298393623 989455510 233567571 315833901 795537397 925440706 664942861 974815977 562619797 828080064 446173812 908607346 857071 397663856 544526285 688244867 198869009 371695077 404670381 727039628 276679692 639795403 173576393 375409679 575534174 579397905 539231566 571180140 4872010 172332524 334770418 631267382 52366063 320026010 615469153 722206237 989796081 997013666 472381919 717325210 779818496 783640034 834131813 879547120 171584513 857099331 967666414 989777015 736285839 961757717 428677528 962756554 525662965 875326557 31238326 226380581 593362755 816068544 600293585 740548757 860336403 946755675 831632519 882955788 540097054 565787646 977047484 985809617 816694345 816922901 404501146 522172896 726990875 939230202 185184441 417048755 520311373 906515675 577215686 746753711 949259470 985911696 579104034 872349594 440289744 539055250 493667248 668088242 7672231 84345223 220009775 763644737 319312928 692501766 855080184 862152186 788928423 885899975 370785683 983512959 450264642 747846908 115210615 857378198 182705702 431687546 600304361 818867269 371199093 782759054 102308979 504228892 395505811 593870350 34535692 633121705 842870906 963862924 726182738 863962253 528332649 872053103 305194936 961028596 339640953 668846415 334267065 557102098 59255369 407517467 419295943 705615186 291759477 761623633 168761503 320227925 196911598 253935208 678103186 897532860 443894760 468353589 970733730 996620151 227511245 688664094 188525215 656115963 770287453 788334323 607216012 773154723 479958121 907581269 869928289 898269776 899555996 902306008 255000174 284178219 77198227 606790095 816802864 942075298 529075803 564085297 275304451 300830508 804073034 995671376 846507382 942399953 776323151 817601471 92903650 749288450 653668801 934090066 270091356 867284196 638253794 989758449 709368155 872658131 533968624 584940101 758253452 984096490 811426754 846181913 208359283 605478969 867328231 875199020 356907578 544878618 363204770 968675920 984907773 994570062 3396322 334852930 887754076 976722389 12539275 21106417 437410412 872830534 375221244 388468922 170451367 870967853 924732819 958133131 478546335 641901965 97552857 835679635 665422937 778729894 662492871 939562704 571838537 675535662 757153862 797772812 613675148 901664027 152395212 806521468 997294490 998738768 789358662 860002536 380669996 570083932 124103065 653301570 12388335 109805055 836093761 993352741 754202423 849243828 680193185 990962071 70323378 415469946 656329349 932081815 848121543 908305700 987090364 995309133 181131986 655790525 689521622 843919531 466893006 488915645 672622483 835522376 697591111 829794136 890800847 935513486 456302009 586372577 941279142 958873795 297642210 438612632 50324318 401391641 840019406 986088440 361042671 606740820 450348607 539051164 166273518 312972811 545529325 975432084 304238086 605651078 523451440 788898761 568263850 835316230 553719696 706632732 637097354 996844934 246886729 844450179 501597386 782780320 897676415 944529232 50978214 624442333 425065918 876056187 676725508 709517021 708339059 741246450 167539912 559952410 486099535 655830073 392557058 927866499 248226288 306000723 982517896 998061985 470658933 942943209 54037393 823105983 702562622 800863134 723512766 875933285 621625182 740006186 376022737 486470690 306189995 540463351 941700903 978063051 870534894 888508182 226069455 795650675 384249173 477690277 493021887 513444151 836494112 956659329 911833713 995721228 23787141 786452400 773798876 997542228 669324973 777909598 184053053 324042649 120541859 335996601 633228082 713404623 67171772 682356451 691583690 898525437 620668170 902894512 681173663 727438165 834372401 955302485 122607973 691335860 947241575 980504307 682644041 884896515 821394285 878389003 763011277 964623715 85336761 645178414 418231884 765161566 904625734 958011475 257332839 719902314 542217538 833678014 860255711 899487158 112209930 937919331 570893863 807873233 550711515 930072380 986625738 987625357 184981363 749548049 612652682 662241051 453436055 609813286 781420375 903234845 505945852 519976579 22239773 673468359 876326985 984868327 121647810 665564023 296962075 775313550 283772801 650514096 413047093 952920057 284283955 894935238 524133606 630007451 856740102 972236414 586371207 877226573 547636264 681370048 90695854 943830093 238413900 833803921 403452308 514454540 26317692 276868444 455596987 888819564 594354541 858258688 598215462 869743187 340267377 875656388 104558390 553550906 512798985 581759591 756594474 894505483 44262810 129430921 7824932 321431502 653653106 860735833 987072182 990179314 960330287 998714387 768045389 806917289 192265750 730405853 537500235 692410418 180118891 630936669 991380224 997495371 722145582 936685768 839520285 967445916 355586415 624626340 213196030 543925500 574111186 927466215 370510516 702755342 619223322 722010252 195855822 697593264 292560806 570552819 550958392 815196984 219828748 851890013 192384157 580084613 518307381 943244994 24275280 231312657 881630969 931012821 536212247 993711748 439880265 650999397 259652200 699385931 439834190 691627317 663266742 833299821 578424345 856389463 170160252 904105985 958092682 964601335 349319784 470519564 755195017 989738622 434400870 709171846 276068150 787899956 391282846 767817235 121443307 180209782 375111022 728026635 230889232 785184569 593251870 644180272 713084793 804815120 392751270 775100094 986795345 998430406 717272965 944883701 154390831 900785003 147297392 454715642 424762586 749238570 42851192 677311458 934283429 952026624 375333251 984394353 488211318 724600629 670886479 962597880 62478663 910824689 607051316 797930744 576567862 657981657 191240880 562188206 50263101 791924503 601765521 668275486 690886938 744655117 624642742 829294369 673312715 748744667 353090706 743771728 389963884 977230264 489655104 689476927 64095575 759680914 238877220 500130953 664561784 950851906 545876975 973571488 805450960 812500228 178719644 596610358 238998664 612201233 891889254 982977131 900926189 927051062 134845375 187058771 694347432 782628625 471372800 714881231 989222317 998213772 693333470 910325054 172393979 425182044 895826702 980955752 651297801 935969299 2161986 991724212 41510874 345909525 268487383 811159528 619396049 990273524 782168349 851941782 478178904 751997115 35076097 375373716 670180312 691236631 14189847 309188881 831737559 973787316 404306838 613432807 926377400 963100802 248497200 869689254 145265420 452995284 390503998 492763660 589447924 633142052 35849419 285876820 505089036 992228155 286466740 809926302 911340910 985017492 942422886 990105535 37530550 790240042 720780113 933925466 942145756 967019785 713506547 977523982 593722558 696269168 221325169 436464734 326311645 473393563 501391165 698894394 492781248 719212757 181435477 499112402 82191381 489864595 394344815 861702152 581577453 918963109 198416715 978742363 114202566 782378676 238057948 811578327 590312075 693970531 899545509 927210303 261751307 756143317 369119107 700912340 643365219 961918566 194687303 628284667 737266976 926790404 749962800 890073778 230634803 483987646 559671882 834963003 273781926 627915947 694131671 955912125 296468354 915740496 486519307 761266106 920829656 936496657 671878356 880637087 789196165 872810718 56276858 674048116 725819243 917603224 646322316 793348151 375150341 464051249 144341354 935421588 727116514 840462703 677469422 906139568 850802426 915775316 83077351 934380577 246620033 649908931 832687870 844116270 159926500 524227755 773370968 779317555 329720732 669336686 233984959 395901397 611321334 802907823 699502548 979153497 48683448 83106802 79777724 162227505 204420680 715015345 17768839 67520225 670654127 927152083 704645990 918088199 78255453 919590405 36746866 921280925 969162187 995122963 907033413 995164397 537385475 965765741 919875588 931380161 698489367 863096879 446780809 729583272 321905847 816832952 142318934 144036046 146061813 404541840 111050010 325574140 436605298 607086734 778997025 882208811 519587873 953346102 411870382 492233666 196747582 482896033 45734641 312837260 312962600 512872943 618136844 847401815 549516528 804640612 33553051 415020899 597826883 849186586 198344334 265331715 877752220 978963746 906065820 994437546 275290256 674939541 585199460 649963465 743947697 919447721 949796699 997564850 756110308 947464423 105429399 138817283 594849213 954229873 853174658 881018429 197562275 597893930 123124681 961668087 599721968 889378349 154347213 983337958 394747185 610929206 836038225 869731189 962624042 966849954 910031964 990721143 44813102 731658570 321588332 596000857 711393470 918983906 840285346 912162925 654644569 789093774 593444451 859218148 787667665 902740334 786176831 839326134 587179571 721463141 418901944 983291280 925727882 980051363 944040026 995161666 877683586 902548173 85576811 940224330 650704213 792617248 388162975 732173450 313448422 828021126 993888725 994047524 697866049 922918680 446351360 755621424 17339123 654038235 179328666 799610148 126979940 313619574 516627057 630282474 635630392 781224882 615966019 995184150 88012287 637070423 553908172 744598203 873961093 943307304 906499792 947226411 706863766 757700908 264618373 291996177 392366039 894446031 954980301 964260926 409092095 959939742 593383473 996730997 382684320 456215173 512320665 891194955 872880963 920813112 888831773 907274947 102963351 341549886 378960809 562314305 443551930 452153828 569058248 977738149 499128260 914792760 818494139 902750436 755333551 904689409 690782982 814418116 613361719 835175044 42227190 349144349 165548231 366233077 534174916 898338334 811266546 938657702 2937591 921872066 667893529 775487650 71984319 114386475 73147312 413729388 730877086 873253515 781695667 937532767 164559552 657344658 890238357 932373373 813243125 999240509 187239729 852880832 184009528 615275685 302125898 320467408 148810472 764493261 370976593 988801991 753385984 782013158 631566255 973594747 544480409 901210120 133764079 236591250 95271786 276550355 11892809 918693148 313563848 733492860 245062612 490713038 874899466 919382608 193695865 497412236 16994366 806518932 313219219 350676143 486247394 661593970 818703815 952347670 981630419 988284609 94757801 506029488 759658176 856080230 319927031 722205907 701879918 818122848 353388467 597403688 505757482 764940514 760188391 916616087 100465000 841301967 941567169 974856731 335295946 706421817 301393303 598067242 706352202 951278013 882724086 907266420 761104342 783694517 628322087 676463762 585332110 933606701 252363455 371801686 742168451 939621929 901429053 939418355 378188023 758197289 818496934 945989053 334725470 860510135 940196690 979730821 788793270 791843902 525091328 877298174 992714308 995859332 307222388 717115793 863082725 873879374 655276815 906372620 117689729 995735439 370467651 678389134 24097404 309313166 996036489 999042954 557906671 896985336 511738641 522948106 369052990 773281480 885082954 998089478 156698900 767690121 922587002 950360650 845097064 865689675 969914591 987168212 420893539 743062810 249019190 582128081 829738449 956200913 293356535 489983901 641101233 659165485 199464547 911227325 952415336 997298479 379106486 653230808 965258516 975590932 148140192 951283613 24538365 889041429 669746517 691157686 53896216 71543024 257503727 734468139 207825823 479472006 108473332 561802442 870768765 957660849 253116372 514929873 411584422 929687913 899348255 908768976 762438183 784453470 417193407 760074961 231306634 533660687 331523469 714366946 146084828 812523625 990252197 996653826 725463386 932102687 324297768 706960786 220766325 636103252 84060294 280146017 36058943 859688815 127805655 212990595 387061798 537479341 114733863 692337994 604775804 683973835 200751 754538417 321993774 634161079 738577089 903324018 777807140 917100916 908153163 916973406 118274121 132676270 172882953 916683824 340219609 804318365 807455907 909654567 187507437 753305979 606342153 984558938 506435723 584494480 673405681 725721286 78852934 724563290 194288350 671621032 504239250 546059876 276284918 566425661 563151803 815161475 350334567 447425581 162749150 422438953 897036121 941459384 445681512 914028165 460735102 803178105 470496395 757851849 763940952 791691086 262889268 681211864 780775139 947980346 955915815 995973980 374230721 860005780 494014878 600350341 485591552 946470686 778050426 874891697 566658814 840135318 817802993 825079837 361409432 893381963 806418409 901276680 950043566 987445205 460253578 762966253 198460545 891050434 100788965 283860773 257643203 470048637 256077825 724297150 356159226 979869088 39953140 646288988 74779004 195649928 598509911 760013944 252258847 816696119 613410934 669960563 471073146 603260586 561719289 964366129 798621431 804844920 278126907 687207370 826317419 975000846 245438593 300289495 858751046 868073962 304226341 611951771 378027995 926282827 300925815 740700777 507829358 896916091 93536734 590102742 50580795 51711535 492688683 632811437 234032598 347817374 246337377 498960545 214349659 976745251 171017168 975250409 587152796 807899995 310943637 517028843 198297710 545957994 118559504 995865831 493102244 568942918 472411756 992777877 43278591 208594205 567767450 878857747 514987795 928469451 70577232 93133113 55719074 95374923 821080607 861862358 966013477 994692855 876909899 958601435 474235540 957366757 534381606 760008509 968362437 976866681 995910684 997105052 391911866 404838462 22566075 160407931 757522366 838512073 562405016 787555160 660452331 878539905 839832481 973674572 421789053 974050816 515526108 869019082 69061174 502965174 767116888 857593750 140309702 262001679 673711152 911900968 790529891 940905692 163920492 939331271 668408928 865376846 351076405 988053811 32068926 960607820 689536657 706500723 830088182 929554132 354967406 951493232 191950035 435775440 496905030 809259455 776548671 901624956 265238687 449363474 904651810 953439761 988714670 990673072 458386917 478050384 257435862 401176340 423486523 606360472 399988112 627963834 15208212 507863070 658581282 828032446 87813097 834714826 211474327 816203804 458755039 862281795 903067739 955273506 144676896 614222548 64370574 848168377 490675380 988317846 748449743 874182984 682336835 942525930 459274563 722239383 34063521 215316118 203935187 698907912 48758466 433455276 552160158 773670141 293400411 798554671 154265422 795579438 57454064 423635066 180273820 409261874 130055156 277430829 873689875 983308054 897441190 966584509 618597034 942400326 125400571 658822860 578831154 679121813 832121286 905862223 677514451 979099447 673251317 835329731 802083147 816245885 492706890 747300803 936137280 978292378 651687809 666625825 615668963 746512491 384470454 519505362 356459765 942050568 392051125 903155129 888166452 897238309 734754997 800378706 401394314 865047185 945519566 971449961 301245914 410204397 218278790 982443592 508724421 842772398 831140840 848876147 77642482 253055667 486991967 915581288 702166669 905851520 354118594 676403916 167347424 457406740 487943029 560087193 134904173 822002825 602234523 789627295 239274158 769321403 117299303 863876124 429916166 781212194 233235743 519206319 215174275 733122639 939164886 982980175 190070594 475239830 95173131 902745011 154326272 953481719 482115163 694457151 303216806 751602936 605378119 935235510 206792758 418125919 139540399 470871903 624355093 981713693 231089040 744967561 961394626 994852016 122406267 792085337 382003200 636966954 800770050 824544600 766566623 822671064 499803606 730827293 403322126 627460045 60105178 887205993 599792060 702844442 155921814 523937041 793749772 931538409 799498037 929028306 67423506 721761003 834154518 895540058 717209139 833846209 794713394 952370861 453948264 548710036 30427854 634137065 799273232 923787595 230293613 467627536 502687026 679531878 300667981 986140584 816471084 919484055 480091111 761993993 618559051 799663992 848819957 877404232 349703328 765108639 418882560 741956230 419783392 726182234 971180307 983594363 615858197 909830672 788659956 962119298 784794925 840455226 921668316 921822686 35477953 933083486 681663668 959461778 17189800 723879223 284603500 763314135 110059783 151992097 704938391 747458760 764731957 885897362 869943008 930025075 440448360 585402393 372401991 974411182 920955690 994211625 440878577 802489231 506149430 908562037 403322853 978005225 682439579 886772837 252192664 883108912 532935583 972791198 420953796 964881952 754408992 865416136 669156829 986313043 918824965 984772437 735305051 894438594 578330474 714307267 513220463 900738128 175996121 417715258 326354224 924865250 492667087 905832120 869859842 997755722 231072334 736778364 168500534 490923713 929378018 940018903 844081851 880460188 775482529 993863509 353943019 493554662 403320585 568636884 943169421 957789712 377895266 887221002 536627751 956764309 985090973 998231078 345472828 885961314 884628173 925317628 433218639 657687340 110653668 722676748 143254506 233184150 443103543 553669401 562120302 930927287 996998817 998611404 488858814 946877777 816621803 981841588 998488519 999188281 236099421 888903744 560358185 883220547 749116041 990945567 823276356 990115452 485288734 659680731 177569486 728834161 276691252 290952895 434321889 923115262 369968058 538337741 951208372 990431646 98955219 375855465 3687559 744333971 842366770 956948700 255551864 788313850 487398465 981170288 246185466 784840014 375972522 996229442 143278383 654299590 101584361 519542264 925359388 955022666 615549720 964159037 533278901 977294745 563042589 951213311 614792426 670064591 810128610 834605152 746546344 777188485 150338430 419767478 265466375 296493762 18424304 537640356 266651234 651463647 625845522 692594184 536591336 887551518 676231115 974399438 919100038 968906030 598105405 602190749 608381090 804040149 610806086 913067409 67190347 747593597 795230230 902099296 500519381 729383940 805317966 947237546 256780915 373393947 741556811 775650993 925863205 981232682 589451392 679567148 990581701 991843456 442458441 570048426 233117876 420279819 218311773 575767651 692714390 763649538 150709684 419484293 681519922 767238213 848749049 922758215 159667669 731555259 487130350 519435977 948736113 965033870 712926232 985350488 967563889 974974352 180295562 757367518 624158362 647330307 995577680 998968406 122131526 370012558 690627146 722907279 950286495 983706505 960643070 990960541 750368568 835743408 400180887 823801381 308871702 548619770 903929380 962983357 390046763 484981178 278420735 699371341 551846293 629426401 487637414 807178592 64054240 177236580 884079015 957893301 861494721 947411350 835071007 978600035 291509422 427563411 235348371 283918415 277040588 464226449 606503906 623458871 838797001 960271597 538522650 942723219 877952041 989014806 477704263 995096127 621596346 833993751 664676015 748083695 457495070 530518385 883349613 946891485 729287450 988653184 263147560 518355284 536889782 548043201 617461761 716733827 263570917 941128474 492976854 897850184 376197489 416742141 426425314 874142473 326673914 915414667 174100944 512567563 993729295 997650398 53449317 173970500 734332712 736195760 956796159 975020642 575135362 782362523 735879730 821841271 808485290 907524762 312916758 832644755 303906610 899916358 633628657 815468514 561612821 921444646 710671113 984695234 221617772 419632667 686884011 992940380 957062566 957444253 552038240 704323141 582294601 725390441 170234455 586226920 702870930 852839853 66498526 879641748 697395679 758260349 636717327 989696744 73830419 592412641 74631043 498984358 993466156 997762540 928707172 938637541 18181271 996141795 933705426 953454288 702894483 848343618 981856355 992108006 881896308 936725919 59120775 977677729 232136708 536641992 525344081 604115387 932197867 988559831 959903846 984671149 311933224 707424459 502575261 567241149 911324698 957058223 835745553 890962796 301012491 595052694 456123734 545111244 418893985 891680105 828555179 899514279 140060327 198853478 551565461 830699182 579673756 908093158 929398408 987766656 298486136 553964131 974406247 983881926 812614346 865883152 491536188 602469431 684772576 980062530 454054485 907182379 725451505 971802667 706233200 981705659 559413616 575951600 296588256 302397845 869763472 886720094 717202164 775705120 163098796 332820185 349844313 922295641 13950945 686581319 262310734 619177498 81294372 105941885 219247419 471970410 426118040 936721441 661455352 681881714 239911991 367537372 491748272 987098347 954089969 979922998 587978361 671058015 879081094 957239851 841477082 956741471 398131375 657796462 921432734 965613922 778669360 938460223 539623669 723330151 942371954 971858047 20166977 771271167 78482035 934481314 978835648 996299154 420875741 659135959 376102865 446146989 971482598 977381567 340059840 825754924 16705688 776551142 258033097 566412755 350447745 408489051 285795723 820992825 386689277 673301066 496546902 596243559 175281006 860513058 4318360 113906853 286852943 537177104 897372296 922437503 923385414 965205098 683585362 883074532 390647577 806539316 561458232 567688499 25886636 874118081 595663197 826596606 108729831 711849929 225872961 434677475 213972071 459975240 784152529 947457604 366352260 445752174 651887422 846011440 789186378 936575916 392217540 969640119 742779536 879807270 859737601 998363453 314566906 329022379 745908897 889381763 820778084 979717343 280688216 832579399 999102528 999313600 517645422 759796700 792369926 994453057 609325931 955095079 317586591 602526098 801568681 933955837 865967119 866617252 75115749 346373476 151152394 996281930 558109603 924275509 930058708 933627627 503014788 857399033 160790834 320037210 262090605 734485901 755679922 858751220 893952517 917150371 851818704 910144063 916481825 984770570 210072791 789070127 604541658 769930891 633676801 740465833 613663588 892272101 31752918 900105790 413958162 618379681 82407967 162372087 151836636 538336760 71299970 981851268 402224513 544282235 25038701 44507734 778179865 920385713 733875511 861727023 135037313 736401254 596815804 968198154 50973779 871837571 876394963 908808662 121396560 209723585 61219367 220550519 267697100 833946062 15855882 148237529 310802038 537446322 296459358 643602378 11875652 231529976 804650571 814020956 680428334 902802508 521255241 678051481 155214260 157941745 654645478 901025359 406849540 689612301 900115775 975761270 547730902 836582688 688775841 942527121 314307957 331118156 375182426 508454943 432479638 942111710 310151894 657497208 391148772 722965126 593485208 846469053 502604490 808727389 234165829 248294128 459502660 594768915 238885811 639608130 439107415 863223218 56513696 388561575 314929490 333636765 315445125 368102951 927338991 929632181 78046694 508415746 456778303 936597254 634398809 730682317 149152007 715050392 553461648 789254843 538926862 602789461 497793472 992736988 289686529 498921548 102813885 247827640 471277313 874780590 540081949 699844630 76815627 989617312 844126445 918669763 347132387 972666260 952066565 995135095 14866073 652184340 992892910 996201964 146225573 438336939 156444895 735939364 339661935 765811233 751893095 867894750 480624244 830468897 926088621 955850495 219230038 947509818 975967104 982188159 466455590 874932212 179073139 681540085 551293509 920955247 245381631 660105359 814989600 979391251 174585038 784875471 658837507 757863344 602713669 854697634 236348197 688525498 299510715 329875552 288350555 610577843 709374636 958761898 259284597 999018085 429571649 966540953 587493825 605791579 482861163 900361427 615816454 642338907 699506051 808003476 5859533 929442133 478421518 480002989 788485177 799904629 644560142 919599216 885127918 922892918 665387684 734834618 312151555 663906165 939904138 970653314 234868488 563677580 490223230 994172503 827835620 997446625 602720948 932727916 487905625 691754683 302412469 618006383 3862820 31742634 769834456 964656358 968246216 981728741 264839297 532697171 529734938 591634935 265380342 418337503 318303796 590650884 208636939 891341449 195136840 647450684 972315506 987286077 558552614 835338812 462747252 633817433 172745387 973423941 735138793 863051286 417268716 818612410 211992367 905064281 211029606 218329021 26630967 462133299 756094700 839897600 882654 389936628 777124351 964274547 157831903 479733736 347923823 622906060 468010094 807098185 969886125 981166741 696233949 827967013 926449765 998502819 328080545 833760673 139092985 548086498 995639717 997021158 229152630 320797074 227994136 940041077 345542646 539497629 646918987 713226435 390330975 983683634 954075151 965053108 837882222 846476152 320365932 794338274 940697221 954963214 814620491 973736844 340734961 415176403 353901835 959299628 142989709 784145832 885239058 943825755 485629875 602718424 567863259 610744505 488043058 865091783 90454709 742146252 643175040 832707401 100831274 547851881 386896941 843887071 678394970 863818621 94369395 599537685 494910204 598020545 643175318 998324402 77138087 892689803 328313558 747446364 778423042 978063655 351730247 682746161 764634735 941512242 717428164 968664326 88502188 967690233 750952537 959528382 685634033 867187027 661385235 678312349 290160835 813509805 320868804 501151849 206580713 416836556 103560369 670198438 525222251 562550625 259024942 595195804 932929256 940764734 291803174 436525581 686707007 801676241 797441077 978706539 429006978 895383155 840641413 973974578 151786074 323678311 423964932 781844094 862829712 925268654 690604136 884418398 288190017 649787196 348917295 464090971 158510143 589283598 658407188 895073842 362478055 807155264 654015283 964383643 480148040 954312758 637206466 710152324 588775262 732415140 306759546 497400176 724456382 922848547 930414622 956208309 446648447 913354244 544569586 679917866 695790912 880727226 582333758 838986630 614232855 920729436 133766512 828301125 680166129 796627678 319156700 666632191 541720184 618292785 875506760 969150270 633089042 949763513 285661960 321447510 865328271 995981711 388871636 701384613 312928133 984611555 505227595 902434035 562208126 683230405 145489858 440601562 442103724 494852883 877066805 904754758 765102227 897896877 664046692 957850838 719676393 866708192 833124570 947392048 681561753 874681648 457120021 578076154 236076632 615384561 361861671 701679279 833391433 983118724 275576980 396104013 566922958 742787979 730518809 968789869 534658155 690678565 899973735 959006235 743634891 938124867 163733490 478126547 495654028 503300806 302559034 655271549 81826318 877444987 381225895 565652199 177080171 608373357 145066457 707172418 489800433 777395112 296187721 522540768 928003929 991109177 584119560 991578789 374981510 957987001 988061520 999015068 273898878 280915436 531477737 696984738 481234574 636598136 565804845 751025162 21350068 729921272 710728467 960644598 444487032 692253242 604533012 697071512 449805485 948959104 281753646 448193626 901597236 959462102 791988669 846082538 630771183 958877939 743262443 791989533 160055968 984195913 345003978 792269890 395522945 655330121 584716275 969105393 398913366 422351338 140694920 740756291 435461995 813963706 1348221 563020701 936702925 946304316 918031657 921278268 443408220 774600202 721770897 803772253 313804897 447465994 601817893 816619810 14775592 580081854 164865327 376438469 929730353 964367410 928282752 982086544 44471604 219694276 195729917 899515212 786673863 923422232 403911237 795720053 23144266 190573902 842556531 886700685 294844819 417264863 782600690 986377502 242730988 529674507 212219186 396977482 811832288 969106843 764397820 855807448 487686948 588989308 47172369 966173924 825271875 850808280 534028415 907944874 307586863 946612995 936227544 972807394 442995693 963317893 110085803 797461612 439821363 726122261 289908399 343988707 231950480 254568129 315453077 476457476 182506909 427867234 199532980 595159802 272430520 278283083 936032615 950499060 213969494 934268255 255130779 392225352 587537656 996705332 820452867 847637646 572133869 597660879 775701903 795269551 76586969 729016130 779142033 906387299 663320749 912532771 609211960 900065669 978239504 994988367 889147193 903173825 945769386 962195402 275626854 279911180 659403305 684915340 137578241 354461977 235541966 457316415 887656062 959291548 767797899 953119619 358203098 660982152 385857086 634901457 632002499 731029637 464294630 786583391 856210109 870901462 299953231 872210299 693091855 895934915 843774722 880264311 90357770 284621933 289344999 669235102 878991329 885995075 604801242 912688387 563469079 851290352 740613443 810210479 419423754 530028731 636212914 643230893 548633586 887750377 960409039 976097871 502276834 706797002 189837410 340527730 432694904 634593401 403339119 416898922 65467537 553175815 632789784 843951797 266278810 446583869 212238757 288563860 575992708 774860706 501070181 926360123 457771595 566185250 730043684 962565526 149331753 169113923 911036629 929038903 744638053 941246441 837558224 869893130 904658498 990113403 456034818 742655943 185686716 766606119 602987249 644002030 372390938 397278941 834112296 867959685 50443648 85834401 941325410 965549628 276333096 720031443 902153507 958746668 344991874 540769941 162272550 699608880 665067990 957147749 606397226 957969904 112872078 381125836 486164844 676671499 476969475 783686511 385141128 422815727 7098902 565664354 465590888 919100168 352261715 554962611 435816699 820151675 143854684 950867853 406122755 782271717 725027427 815328506 584156232 946041562 240310652 901251040 505515182 694985487 220209341 775268173 87114318 586774753 471022422 854337327 956242608 986093992 537975037 683412993 854580238 922065040 380632214 974133752 643831977 944525413 526674430 592649340 256440979 606861116 271244537 418275807 429073071 731242411 941742308 971611919 313572863 602805554 632169412 717893982 298650345 671830262 805163561 975149442 920948089 930293224 356677123 589188517 762939669 777519387 613201054 644502255 29765609 89475045 7788040 842488604 819039989 968560062 89205705 613508401 303373128 423376695 685596773 974267355 301260161 816070189 773871808 798637672 837922114 903591356 909099079 973238014 730849707 784002848 629032515 950942266 897645601 958957109 668564926 958781620 683417542 721823032 449361529 700866113 247398437 714761361 378699535 813509460 128541155 331150484 409548586 802511696 356546198 878303648 7809259 679422975 650115964 936292465 249351643 298204750 625440847 841369153 247816538 424597152 358659062 568872393 23315140 454095798 661677877 680342660 756031375 937294898 680625872 780635557 848775922 885481109 889878965 988101204 105628761 411495577 819367847 899229756 914322926 942432797 947075863 989661460 764758513 963998526 520176872 928520260 254976353 334826925 752268427 767679977 946699638 986373257 353559026 889564028 517270111 845798013 811184792 854361253 475751027 663752586 203643806 453361242 506881718 721584743 368713679 598386252 556086079 598739905 596460338 917804320 465025079 972938170 312326529 376335930 132408804 346344990 153461595 632053326 538973642 776890465 238867216 657695480 227708892 943460656 648653530 868870513 914865834 989299213 746822185 932296017 519369970 696783866 876918936 899418662 527582420 608914332 442701544 787095612 873082149 897528409 637799543 681520536 10052805 711344583 92059321 950617411 598160425 891708078 867870302 964918168 644711774 683180211 79662408 901207788 33425898 581351803 989167309 994123444 419695887 782637052 183519139 711837705 437106957 983879434 777405460 818856617 16796938 731412308 144288636 337766407 276224065 885152878 513374491 548074439 441989693 464529940 466301341 944894538 249042350 926055556 511978678 721915610 704752992 727761231 306952505 542395129 716755991 726806578 838423260 950234562 270488466 685532045 994338174 997440283 697766874 959641626 341498140 475085582 419174172 499878127 102569407 327069899 947043563 955830995 851164474 907625475 516021275 900328472 536799067 747109012 73045158 590307100 324675712 794917791 101118550 401190818 922604524 968623191 353687110 617575446 733295967 874946568 671232100 735899068 971724658 978680836 758357930 998022685 170548459 973022875 935603908 959804197 186029609 315566268 551294798 719697728 367799113 943071407 786498489 925547063 853508207 979517357 799098522 998462148 209791777 977166929 123234294 813257635 294996697 978497564 684886537 980426601 865072625 946533864 470089938 654621987 71111318 536550228 15994743 28418172 352842112 482242191 143179630 920780990 345247332 697208216 9483013 119837598 544858896 878098060 902177416 918993240 379227746 524313420 954204517 965873701 763412629 859389310 975208678 996955414 388337357 839166163 858194746 909848518 165158745 429612337 83233331 507340393 886876314 937467093 487173248 601066570 97892690 682532276 930488175 998824909 120092059 559744773 634852755 646116662 971299461 994732918 455556965 610931117 793027300 937115292 948559749 983593680 704474357 813274078 206079702 754019348 97906368 347224579 188332572 630337104 914749109 953196093 662472563 940737909 794714049 932740886 845093237 954068909 135756917 218804726 717955731 895041731 287509525 403608844 834609067 918093986 82780268 305605890 729652120 961296290 285189889 563911769 829308096 974034211 557718556 934991711 545692474 788945828 696685647 885317186 36603299 352653058 514354567 847178852 696004696 951656764 105575506 690066437 487443939 679379758 606065526 964303908 869947350 887836332 141885867 928933841 932778278 957744180 318851840 712555165 441196443 701446675 955552320 959897259 744493828 825928800 485686231 720847354 357025071 751617844 197226866 326501398 575808939 861861408 844106703 913344736 568872730 820556476 573295853 645208090 637338345 891572240 535526063 827340273 334574780 639106411 414854368 897966429 585458162 835703537 933872706 979281374 197838901 215670526 294278270 598993587 807836989 908648560 319173456 738563373 157227051 210150938 986366061 988964306 248477605 420191114 308700030 980580282 486857314 960028672 789153177 982793308 773493763 860874509 449881967 553987358 437075139 582446809 802374752 811813356 532151837 722783588 838182772 839704446 131206029 354047279 388854912 895248416 272430005 634600160 387263951 681081560 164408212 744971119 268777241 722137247 143086076 381551886 928662848 942020139 509242006 714908695 125355354 482640987 167519997 578533855 450390950 801506865 278406629 793080210 645407431 864622110 812560289 937215777 255843889 808687827 154439205 443293306 992032452 996576914 121339957 775530130 71110126 350023435 656867215 842380258 878073632 955427079 480905890 829509131 272553808 659713388 98353755 162107032 785636266 840187258 368691996 564614589 951318219 983960479 271324854 339451534 376791150 971208882 147647812 565198618 524586297 591698972 377170034 926342724 579149654 898675018 122150355 155212823 122027710 987658899 684180973 927810118 559053493 927332183 45019946 880384379 140416365 385034852 668272310 710746572 546243249 791759827 988427805 996686556 599853734 641070099 993250239 998605187 375047887 763833318 803871260 893388335 322281755 566417374 584407293 597389600 260093084 720738144 15205683 438582683 865703583 932381160 196156320 256801369 810627632 988541447 88354313 629894426 134820710 436711258 631359722 942225866 394346444 674835629 41187397 457420708 580788547 935001736 595936135 692147273 954869961 997752575 297020646 547089905 856461051 867341006 586267888 714459916 981219395 995514797 782507844 895090734 853496274 908126295 414466205 983479149 935642792 989270168 860857223 883561889 751425586 914107343 201429274 763886324 236870210 251303281 703561497 835607233 530935215 762677776 608418948 840069390 659771263 878999929 418911385 606821604 958116321 974844266 523602426 996592690 589282926 851987255 782838753 817312504 119443153 473027826 931763056 961525295 346557585 431963186 390220940 417027623 195206963 605730489 656975312 778015265 385931996 531479414 712560767 987761800 235883135 585325270 276705793 842287479 878405482 958233293 186503323 304376471 292625962 725282454 127404640 997733810 287746692 306513828 967178571 985182510 509093937 717736146 423968426 991482925 48959236 869513243 11203054 671404085 153178139 176027320 292127857 977253920 895265788 919679725 355112715 580168491 358870576 805164719 26924370 139208726 249429162 908496734 525922253 964820820 682404345 730152305 848173098 960863851 285023428 609377982 105946949 676859271 424891750 929293100 206048703 535143911 628528326 828248388 207724932 277057027 64372470 244155503 763133193 778804936 453760378 573680617 405831912 797608736 827029385 898459772 248673929 932175749 492103570 570311449 404467446 962890542 407641174 665407077 201323794 345747373 429232300 521482614 723871887 847269580 611892483 858901083 266083616 375912752 467344079 813501150 725549328 944399900 752818447 921268611 646642550 897904675 294057317 986046831 630899361 834404989 842449918 856803027 760847101 812116884 98721922 191129489 231592588 681124350 850663688 900392321 494099311 831161250 7463646 679819789 988978843 990342112 602634361 614289204 166326468 458988252 614784847 661033321 834604963 858387181 794686356 833772274 957952100 990710724 660821455 769794682 105599026 339649201 626733145 847231117 790299242 936119328 671349532 764286914 107668263 685811253 241253816 292522100 173657048 651971686 882599780 979165302 288737605 366600911 467564710 650830115 93591889 193530338 530364604 737929272 140420839 605741097 33088726 663237362 674768953 906073843 562247355 951213227 870504064 874512565 256281101 957345016 406550628 834209332 535938706 984542942 781679958 799317604 232569896 687390764 710710278 989917385 224823819 989126500 436475834 548430934 360277953 823423515 955009994 976783568 870924047 940505362 51339929 708042974 23369516 182999899 200203850 902588749 184656293 403606902 601317391 845010532 594908674 724251136 635687107 693064283 624899631 877806703 429328949 575116577 918221818 984762258 707165570 796338013 997693510 998784215 473681079 917389676 569470983 945916408 669533720 850104253 183663724 846158314 141909516 974788845 932048871 956460917 203264449 282523825 884895647 908970390 670020532 785491942 235243643 481192874 540105538 932046897 802616220 809700459 816373692 819174467 889642403 931940590 355152976 873353487 233866211 319972294 361873628 645676445 273140535 819246886 80586907 671848626 127849000 365306344 29880319 256819252 478038069 517896128 213575268 440518420 177255824 236524417 224816731 493088505 344256532 654451339 987560522 988291284 767457441 787132206 676515487 713886279 972643643 984942739 815040972 971146053 359432974 746033094 422031683 687091994 72715598 536039451 272377298 514272880 139660444 762389578 751482057 944222201 705322430 873923688 828940106 889646884 500649691 755071254 751744108 834169847 551835373 967592944 441296316 840936714 642379617 918967503 986514979 996708610 286645367 698584458 996960334 997405855 128635541 692408794 575235260 820452814 181073651 928022662 334124496 768125616 866968728 954625705 973447380 982179686 884073328 927084189 522106327 769382645 419990467 859558219 26825908 171388970 437939143 827097744 102581266 155134251 542428517 922888498 160910410 935560431 438602534 599163228 501460940 922857644 120251622 148322645 782418126 804156113 427655891 987002441 440203269 948229368 207351890 360042336 193243724 264092593 681061214 763627627 392177712 484112124 120055692 208920671 82050775 987273759 834885819 972644745 487308590 727131541 169526896 299920911 11253651 909129291 2890326 326238367 47285045 471769649 404170599 471641612 451855395 497188214 647686861 749234497 861463129 959075000 220825506 835317992 998498625 999032160 712476080 786306633 1696673 467239551 561844747 843369956 792877892 844613980 964779957 969965367 940092727 950067450 956200982 965764442 201600640 802089373 28240575 391066655 266366015 602841024 239564671 727971833 19727120 33647824 602814705 640882725 767842961 841716113 591095101 875549843 529145222 834417401 615551748 994812067 435907675 801349379 415829669 687211921 261028741 337391176 51170959 224918707 217371946 447148027 663310040 900616512 568146211 719179931 369676021 404966071 885743242 929663176 456630145 611367943 534066271 556869496 318291796 912678288 183980893 924951478 924635866 994161020 560830066 932066252 767858033 841439555 319943458 465287149 570832256 753260707 27366012 401368752 2204147 417487144 815196234 910710604 141569533 380701686 267504300 269828064 611764470 948305372 234388783 314458742 180934889 986600744 270119315 345917160 913885024 973908299 430474996 506973579 73701781 689590902 122226068 852983966 579131850 589535627 236256066 415644178 788298703 872658338 896014171 964131025 720909261 946923112 629167075 738013057 931911447 937140958 302167348 923051326 15586581 260996754 600952193 884272004 688898603 911227452 100250731 251947237 634521428 978363003 193072983 584554015 312721124 803019891 4237733 477342523 968249342 989810837 595354373 837760527 453096229 751517378 60959758 715874416 311069798 714780708 827651769 911919323 683428371 970929517 876548435 881336064 614720083 897208105 338274502 580828546 719350402 935664542 677230777 879044625 56177835 583055910 91375649 329831414 664460212 773204825 295412441 972665507 584974268 686972514 449171413 889816115 90094266 974429322 336079644 822729508 649484685 854859219 456547003 567798244 354074156 828820898 500352769 885867249 822926081 831613868 844217783 932269488 228827928 373458014 197833404 283507426 168331959 225459903 728744795 940599148 142582764 848547241 611077108 833998693 226561312 431783810 585180146 716856535 929035429 963051767 580123581 692159509 379567955 838912741 772977277 961185321 316641913 387645816 607189255 625277314 238390059 339092338 971665530 974148970 731520735 874597076 166715815 716413654 285115322 378591202 521130142 827303193 58170929 720393128 263588269 959479666 760888688 959892954 987288031 987385032 281365355 658270611 96160549 909158075 302362430 997565587 977806084 998114718 969325869 988123906 455212252 656877438 658302823 967164807 306635802 321851104 483354702 671465439 360720129 681784197 574176460 910782167 517886592 813760806 740530640 936560402 808169970 820045427 370836535 608930356 126750230 546517218 269645789 698616688 422624585 804215633 529107258 808822831 54274474 469634297 520596464 787785493 506957423 813093269 349994008 850323135 538909256 841288236 670560151 924251877 178553427 285355848 877422348 955990262 461712165 648816486 325420377 759120249 275718267 937298810 460837901 497289912 967397967 981564644 772580665 908642735 489095746 593458621 418476918 978101324 688517173 950292168 558659219 630598834 902996457 947052020 500079446 642793450 943905038 959534188 287625083 757856741 583503049 592922785 256506884 412832629 910910489 957004572 810274472 923476292 666771312 723778573 888761815 990997118 90978700 395213182 624027573 638440186 298312279 874385434 175760050 409677252 427918460 583667600 301867604 779736139 445371482 983214992 233850937 966319037 130872272 953420229 142816588 446976773 15928731 306664403 611710964 669921383 249877100 469610006 526341808 883939650 13665197 173779034 229608531 690484225 971032184 987863605 296089771 365995116 89124113 857926209 218000470 769357404 79530711 590798764 848172311 888754234 232180333 446802977 222601402 847159179 533740985 803363139 53342860 515239889 635419189 899222942 229926603 394047409 187181880 698187621 51617894 558920392 339834147 858509834 631495285 938628655 568833309 728045536 116539260 901297388 837963513 876824110 884016815 949810427 734510738 957478097 339598494 613805166 797119888 816584229 672971098 945860658 787013868 831499989 158060364 236688001 808595063 811859532 329564216 642812204 680293907 731844602 818331599 845606579 670248625 766739316 782360791 798099097 781514108 925317362 264970014 302929971 199804312 228465965 948529179 964714457 627080949 824435217 489237978 722406984 959308341 988600888 731644079 861282730 521761250 641520755 341871314 680763946 354010043 638401282 705135483 881267467 312991759 754905257 136649894 801815668 798817477 952613491 792675121 896020232 247589828 693185540 53952840 991117648 547364786 721126783 9155677 322154379 248553076 580542544 689291707 878133798 995878462 996161996 119987419 781107254 183749893 823282303 303364075 980090321 348944925 661757103 151074254 832875617 721453676 810240475 394879622 596447521 580267722 967235237 989786862 996038265 685217337 952192199 724063110 944499174 539110878 862669560 514440491 663674835 539576234 900196297 346550393 977281698 472838082 732748421 300427886 665135902 403980692 439425345 877084118 941583089 10089253 371558713 27561800 744046459 744244659 850425771 266043540 887261309 662145271 789417433 900532654 908770986 913920114 966960668 922902228 926509207 269725725 513952440 658278770 919195626 295941239 681924115 882823065 971928523 701501352 712468157 969903541 987583782 25356255 453125163 285652838 651200298 336448120 398101195 45153536 415205021 302078442 724783190 828919466 928823767 402868539 984923773 440017526 968527780 139539214 405338357 3087657 255385251 859979606 885981191 897914362 900956902 887603663 971738918 850170893 989802260 875949581 884623961 306082847 933266473 982692129 986209680 142613128 782485926 241384911 337624137 894599826 957344130 582516525 711348815 71939679 475726028 704636213 709852871 614712160 920320329 128197222 346726669 941671763 989554481 207542402 912683363 372729726 621473929 193562254 198505186 668924666 828647606 515148745 882008698 621921890 688421302 417527723 732045789 131797582 212438151 19660704 203973444 220018503 479376353 476250021 749017764 569076324 670148098 723739317 976853877 459057552 775888702 307678125 670567586 173105134 533734929 201443399 426576703 443630236 812883790 268477203 290545260 616753703 647080413 128205145 477638736 989036395 998682787 675017760 821403957 460960204 668659563 685333737 736413450 121182808 245596584 289428687 644070764 991987647 999264216 57382064 88166346 48981336 411381581 348180241 862758242 446558937 837998393 713806473 727575103 636484115 802839849 392769755 423965130 364049644 566992247 956584290 975706956 253735660 561381928 325766632 340810249 893286550 897965153 789482380 946368867 568175798 925350736 613212250 909998665 41156412 692750301 245580694 631666439 251868389 913834131 471077114 545945285 536119077 739113443 200436604 970666934 666488224 761870519 788575391 911328870 826438904 876473405 307836364 962963826 841568865 994622515 955029470 994634890 305589122 478164418 455391574 895539092 331478458 727461820 866966862 933595943 549723754 781760572 743469789 829374019 21670857 535374976 580128499 625480425 4392417 539189505 578535200 910315960 874072938 882404010 454881095 836308900 620744736 704881869 563229224 956603565 411688122 543342174 211852715 907228631 313712149 873670814 22697051 780739900 258387511 756583103 480652195 498741315 514680422 986256335 900359642 924244342 190021113 897284008 364581832 431005237 761395097 980105583 678335113 903150950 381734814 793493403 317460643 903894260 340633924 371687936 235196929 540059120 271326645 482461736 4589569 31193805 959425923 997984702 526920590 978666259 567880040 940807460 488211453 776646251 330123149 868152917 126129770 234924624 145739244 652296890 486697759 900395493 179883614 646687993 55615940 240492560 388832879 902665109 561221741 758271858 298226374 492858969 664754717 884051193 721154441 871913952 790973533 985801827 847869046 967695531 974225202 985509132 444017238 937456733 520075254 572006119 13585766 823565705 295904434 994344463 869103796 893569537 114186296 531023384 436722299 577612287 990088452 996877117 969055701 969513623 224080601 688371358 204891623 719414618 241553424 999227171 908783760 953561902 84126694 742996152 359141546 736129273 417828018 750185517 13558406 563651688 543863660 603776352 815074726 825406203 379986588 775650973 298236944 884436541 84349701 289034599 154513300 633025802 164348115 964010725 130653033 990647049 724760509 936994925 792208289 878852474 669494872 738767906 364668688 636126297 946593608 983054719 207319468 700780658 982475156 993795287 219794935 719624320 877601932 977084613 69377439 461088211 359168474 393320615 309345945 882494077 379259940 756226444 697139423 955069059 561513158 831904129 249151931 746592361 112223456 363985987 375210967 753972421 77482787 883814856 571799008 744732658 780033960 850945024 674320056 887064138 56137666 791510352 968877517 993342063 802265491 944433559 261512330 941770968 162770842 819103610 879056977 918674154 486537807 889883275 300550210 872912532 290593911 741813262 791708532 975845556 561754367 761188454 859739282 929823277 587705798 847325945 763989870 964218403 110518365 839689906 175622665 214672512 53893821 298756283 270182851 945666993 545269517 603363629 291756263 578649690 273703543 573633318 384971125 828278559 17444049 817860333 686787512 863818562 122059683 829705992 11825875 869478457 589429946 891107651 462111972 899201480 797035964 865940704 615067721 676909788 485847284 582037318 698714247 843823245 621508185 876444589 739416017 876358967 718479022 754100149 249661666 680455763 441142420 693270056 157936094 858211199 480481997 763352240 955902749 967256428 611295757 876278391 21591631 410511141 277019508 592578810 613761461 856169100 363921054 694330844 187491216 323168585 443333257 815691545 532773836 797381290 330884937 853341643 939413268 950756077 540910067 885140655 323238970 581277672 703289039 706317302 918172095 918884812 467082454 537051590 382870602 562653541 810486506 819267196 988812452 995905177 434465802 546706956 933518986 996431395 558410306 887770561 862752865 963408478 396362810 825262703 604117827 974501065 923715474 954195089 731844151 803574896 291649965 776166756 777640962 936634586 400355037 680102551 149324506 997812254 642824802 748188409 741280159 968790636 947422277 977239637 402318134 481640480 647045922 871760483 301522806 523941752 983376994 997305932 901543221 935494098 312702643 753485487 422586775 623602088 976567657 999038772 321544177 372965465 737808725 885520025 78679828 84905789 936295299 969611410 875732431 961132315 558842091 803285902 844814635 972076333 523856216 675701082 590402521 938568094 839252065 964681225 169676514 663072760 539330149 789261769 968872586 983956559 410447548 685266650 754154956 948354148 63154315 829690651 222516616 390604917 180846127 320683457 510559900 727791429 389431673 861550726 174588482 307579510 731040951 869830981 989816315 992320275 469725709 755045518 181017086 191780708 776564094 819695293 73068283 177868951 12569682 142849921 164007902 892626623 784093595 997348531 664467551 689496554 118690813 779345966 374514070 460576894 908070882 970198588 51201416 391582227 127631283 834939721 239353517 318091173 552208720 589557556 744994984 969536820 766264418 771285263 16287501 664647486 836605525 875773176 345958325 973679813 574139711 941067317 781576851 820163461 241785395 948358507 951378795 968662027 973664183 974668403 959965713 991339113 277191936 455122000 169288219 197661655 770296333 981237859 443112326 689285575 891706820 985099822 341800083 896119622 326494020 349536375 480472153 678509161 459954203 688194771 936729780 997664429 12179753 683044651 832429852 933740625 919161740 993163746 417485135 646247600 810153387 891030099 291199230 314736691 27692556 999043535 191023564 945898921 37811897 630343045 44277665 933692584 188971852 278561433 389094398 584835832 674535769 989894872 802759602 847131648 853780529 951219942 500761782 817683982 717624386 943435081 850590504 852040343 915442040 982244417 6831937 106166118 601239056 766313615 147707607 249452232 517536768 950262164 402686487 643745126 993032195 994337412 476555313 738751923 721413240 974589994 733324286 799558475 866363975 977447071 500226915 583214253 338440013 621413367 195748913 722713054 690751763 692338176 462870345 797794172 823267028 973570186 987623312 988544469 813370980 937061632 726387315 755004277 365984246 870385319 582841734 662225091 650981916 905504520 520059480 970329018 675115692 850017493 446869362 745917015 775040650 895195100 324907968 692318169 607174410 722374576 766957251 941481137 944940573 956102274 633216670 926543302 261759352 975452960 966168460 987730018 85208349 420947765 495709403 601900014 951192975 973512252 261393967 674019639 23325821 847088778 572676968 956618057 67103391 301419150 295462558 308218591 710301814 717594433 180376780 224456101 933006260 972703640 59933648 626685692 975556509 989079140 408701610 986586163 465090143 665012927 108316045 243672879 321527933 965776018 898578928 966138311 417552516 815124404 89652044 455951794 550541440 866404140 124994752 206576516 287682430 470452431 485162924 675723134 204194616 883096635 564216951 587116719 815133250 954346650 239499595 333339926 157415696 829459903 554996352 693520759 946362998 961384853 794116054 998324738 808964456 924286366 458629781 981137749 975353077 997763301 218464706 908192902 515226350 731167506 834160360 901349647 197960867 392740429 522461743 522840974 120581926 137102453 194253478 668078728 523071567 868211405 842581350 881324776 637714277 998455669 95882566 596366296 397169108 588065562 372605872 868673010 797348588 838734996 178601927 427524071 935837608 979239673 173452327 175753771 536694639 550532979 890816185 912162422 410600368 646105004 599800506 823544731 872154526 929697022 778598500 918629740 437891542 620493328 105799546 975781714 884466875 935460708 433388184 735017014 74284074 501689706 936819672 972857743 257103623 948882732 143080116 924840607 305266327 388748140 868507011 882708848 290384688 794873570 588557791 800160229 578878963 841959141 242444320 876115086 659502787 924584683 552400936 880812224 304122752 543656088 129438330 406212517 256416726 814619062 324369144 965450465 328393210 989630457 106551742 869043148 25718732 325914862 654350685 715233912 102203919 409300468 578788146 976844185 748247964 977290914 557841283 888374971 270254365 432498790 280669987 913347006 20485765 653031778 992995590 998889432 928728825 986683976 402242257 862823586 908616609 990904091 805582015 878980213 688550561 766532934 509178929 966403512 621015741 726302696 197808147 372554725 984656062 994542277 159373856 412797963 876975494 996870535 741471049 833805370 894366972 988173264 92236585 717635325 852444522 955570045 931090665 984234365 462684106 963512963 797428878 971644404 461990387 907255032 257009490 604737367 851730555 885066355 185474211 502451406 92717891 852476155 85642635 649656152 706575001 991600538 175420720 192686716 14474917 842532902 328405555 521722439 978280557 992312290 940669871 946610975 326345495 819484267 904488226 934724541 101690662 280629488 543237593 995465327 767458595 823200081 588306692 939117503 950855827 966887656 57365817 389595730 443707996 573316137 29888435 774454264 118843934 768177181 542415312 966705593 651234100 931501326 786347492 835783980 108800960 564221028 495924756 515400954 822673795 871987444 58877112 325556469 563129855 609408508 75554812 247224520 220009753 881826851 479222124 761397864 29719237 975798716 64820280 205101064 210211131 760168212 604154562 945127566 888300422 919790096 477129279 819942469 376854556 663154288 943304556 978953797 132911243 772657343 861006131 861211518 950683364 965948680 106390244 987972572 708168249 839763768 98121757 796774445 87675884 290862590 348611060 419310228 273222224 941134161 544747553 960992612 389560040 755055801 731562439 821873130 668126368 871841280 560928652 989397557 208335735 270147634 345582701 623169422 975805947 995257356 592220818 756103653 174352533 260309318 784525416 932929851 53135993 441118344 176842013 912913021 128767281 936663814 742841229 851813282 628609750 832685566 939963098 974775576 995767114 999185417 258538296 614533332 988496886 998652402 812328066 980102209 357332147 757152668 928237076 939988059 346881661 541410547 545626059 992371564 656976056 952427685 923366624 956236714 196359519 669353624 458566498 925028257 511467878 711645530 69810902 393322715 429480673 790958697 369076450 696085405 940287860 985490374 525894016 971773027 13716842 523850889 101856470 606330532 940828742 971404120 861966363 952138484 400164410 560592147 811246372 847191758 209618238 303136480 653545457 929162587 318034526 556633506 231632601 670955787 216630669 499836451 307664175 588090028 696514793 906624497 834224132 942763096 900572923 920054668 847016384 924525374 545673972 978640955 709025276 861199563 41819118 688674328 92050506 95737794 815975263 930015309 503735199 556639573 969261340 971570295 760795002 780439462 951783775 993100781 598320303 724700671 4217557 18915471 545880072 634267713 879612969 962554836 814198814 922711789 87557108 568420571 328295204 749321164 239574416 347612439 33185728 319525187 541349771 858715560 290528121 429783497 304399314 926386338 380414381 654382995 909148802 955195545 765013706 969225262 885606359 896200160 161403739 861944994 848064412 960238576 638610947 842138664 292910260 781534471 570764120 699361888 621105466 732379121 851614937 862597778 496748409 882931334 589538640 734253345 581134172 645585050 702136024 840432326 768579567 858018225 845360056 882798241 154015263 854233977 330448710 549504720 271873758 448763743 941180488 971705182 611119291 945146090 193959502 627873428 649643072 884924240 476071742 802529051 42653934 608957738 49209399 867813651 488094709 677938526 561706206 841540230 858670811 872400650 194193730 212252821 298228661 611819128 966126644 980052411 71156921 767485443 691650377 804171942 378074577 875874476 412697862 869674631 62434174 750610180 899553567 999167897 245878055 397812584 132420117 182549678 769558694 791675176 157687590 674134139 596148663 776694561 221094486 831982452 660625297 686091777 882611225 928014834 784603457 960249613 489534738 857337270 56341881 261729350 844111901 968443298 271348008 702037996 430450220 681663825 931744399 947263702 585456979 954368094 131642613 131849547 465053838 481909612 559478966 865494261 352065102 978673479 366958872 777455022 722122129 935885300 723821025 997858721 289623193 901029048 668618104 846115102 984119149 985531694 335078421 671791249 327131828 766703573 712588978 714612248 249238567 915755692 558561189 644607173 70497257 239437722 464054108 701790848 445384583 770038928 749107596 967912778 607704132 807069496 354542551 431650427 356418104 551222339 407638880 888299380 866229396 873882828 93025228 723658911 389969226 925408603 965753633 986785921 831236529 958767249 577411374 907389491 19189829 668875880 824853981 862158773 6290470 372479615 723906035 749449557 666991027 913205329 723179055 727305142 953598363 988701246 936388755 975903382 683763201 925203816 36510075 371367237 758093932 858603583 585290681 631206604 774237646 926303798 478695829 977195989 759571984 905453550 754117448 961350648 735319850 783722091 922801695 976343592 382531725 814601542 681769529 771736553 258216676 703426070 490492180 713718137 240718185 597951511 605156121 963413527 958367737 966627211 592347075 640048046 192568683 509040854 388719626 428603132 250661636 980564089 244566191 290657619 242173158 537632800 70231234 143756402 910779444 947794569 507220987 792364642 692961908 921358365 695847110 765524739 859400775 931619963 568365386 837420927 110598996 479838491 439754106 866971710 923855640 991714608 861449187 944392347 290646765 911450313 507127845 663558912 6962187 719163113 73763952 283889491 421459905 639604403 30586379 668902296 36563443 686771542 240845723 333368592 711943838 749930783 51560519 356353024 966758334 972059392 47974732 115398266 738169871 771533117 966154415 980800587 959075976 978741929 455784586 792066992 865250102 977931436 63795147 721076837 140764865 874425884 973764637 977986157 561442701 816837374 117776152 795851420 496510203 962789267 148872810 200673236 191979358 193927971 896220152 909964219 405657400 762398512 6444487 13419734 97259187 707743389 502069806 991488326 292255804 893928612 282603427 894965427 61729415 455310494 102846276 470185124 976397763 985318486 917298334 988843426 293869303 318761542 88348771 524315760 237009634 762647102 649917779 904680731 823423119 857408640 769958439 848963844 393899262 680751978 44472474 55838017 911491317 927825173 414629826 571902945 452345892 782721049 450753532 826619272 457308024 852868073 553672144 851000514 434638481 566359345 521352056 746534858 395610152 730480324 364569156 768527570 337718595 774803431 949421495 962112341 221252005 639723710 498486992 789485752 679469172 810495564 65788995 559298702 66858481 387894923 227941876 780221408 565980091 873946321 154138184 453425099 408511771 483439125 548512170 565345704 104483518 196563840 467673774 766845203 92908233 779947460 961933293 975170457 612563798 915309302 316784550 513415491 659938715 675377986 550031912 927043530 122124488 711812605 557550852 957813806 948197448 967673767 922955134 935806485 246452573 272274521 258422759 551454080 81237723 906172106 875334880 916660913 27340548 943126336 298188081 450404479 499105497 613829250 162818806 606139591 99760880 444263653 907000419 929836910 115590750 193508475 416026751 592909368 782262325 888661358 267053195 578577485 23674242 774004980 507551148 600698737 504169513 637081262 62368365 953662042 948741518 980250064 285338260 372736838 843877175 925520842 373545093 382828371 864156593 910000460 823889971 860352583 670511966 695356884 596859031 851075577 159873211 904380477 77362467 102406984 733797562 902139577 200571597 450090063 148945727 552323640 869557322 874152656 425236598 790047691 455915744 942146062 96146793 489006112 231794132 367650198 501547004 935128770 7264757 848192823 485341958 512359723 498902962 894185941 761512083 997279006 342009090 950885952 993289284 997586366 91048222 235282101 954797428 981462038 618308353 711160208 460272092 474330063 568094356 726716101 11276251 148462582 426088787 552934107 632918011 661416122 400318162 514994089 277742800 410435893 775099764 984251132 471378831 584836097 395483748 734885848 384840409 868974310 801593792 862361157 470824914 862198555 120042460 148497033 14467629 31825775 846682784 980825869 78199163 85608936 758441113 809436309 411050597 555156509 549468150 750827059 868137490 917252954 412686170 670823018 949004419 953647459 994443908 998006343 921009905 928384340 777656898 936595653 699856665 799958916 38119260 124134900 118353483 263209036 771215888 807289834 54959584 382955448 215662959 446315941 140640294 919185352 792273285 985736632 336671251 711587330 238892849 819263005 46650132 855602823 458918351 905963786 979539893 987951745 591517321 702754322 722260584 773782119 187766350 512878534 717629346 989943207 599766793 689580295 544270732 682809243 520256343 598193318 391385220 414843936 952854048 986780827 319694084 761076010 333131648 841924190 680026946 859554841 686508070 746790934 930177479 945653954 546314403 693788659 645211573 980224527 504708961 523918428 144905642 591790785 987083031 995465613 235661250 369965948 363762996 913304439 576318172 916061129 224082440 961383799 56447473 507271085 85367977 687678368 504738423 686022101 483557883 834667870 866099 260222335 318626056 853539751 582238999 984813343 13770600 572131357 609365095 907315326 254560965 533811152 260753087 994699499 982880650 989771043 918350458 976681536 479278582 888722881 918042008 990773927 411054982 503856124 773639444 845163288 439216545 761209513 697757451 711438371 491553752 844363200 783870542 898412703 778829441 815078678 442234500 589334784 430642898 565272241 165469408 636426829 508525071 672123080 983217409 986081837 831195405 921281623 88623725 300262180 384325141 462238678 276840193 400034216 109652063 270725685 478160436 564890635 595221783 811189466 96181294 760313809 538129392 635071400 42592026 752333036 240343366 883391006 729575257 864881521 583211314 810430306 415638520 928537712 901805946 909155141 395819473 416108948 122842132 585184888 85770966 642030600 715994228 779058007 34911360 457198306 347387592 877994126 913503085 960946223 183848151 957870288 907968129 961422186 59633599 806707163 176014085 829793042 125657646 740794862 86482661 878658506 410438149 584538256 607884016 794558223 879307091 958255741 197041144 364781697 884963740 909321695 887754851 968171820 311375119 863245738 755387610 804485336 472790269 645374704 907435556 984162475 27597556 339744399 250639464 986745022 365264964 954317529 713731253 935221327 333257065 739320433 443625251 571784559 489522038 660885061 268347568 922107107 325927416 502294178 954172969 987161516 411352566 573834987 969688043 988494311 188091548 577284674 76298240 989335472 112310399 836017698 105976107 606299621 236423710 644655563 844174155 953723081 863720598 934921447 542726726 945513760 881994120 935293956 196325971 600018415 550050324 713445922 912811140 927269929 929713712 989199095 759260447 944591635 928966369 932982359 573217981 962484782 4567970 918462029 223342345 484501905 485888870 923776332 9720751 223202588 519332611 985086410 294364750 958897308 833872445 903173387 269839299 516827837 88289551 89897169 292496874 882095865 905973540 955570943 765199848 945954054 794000143 815099081 666604750 987336166 39310151 870278876 735051424 983827483 959529376 963801953 90704623 283743459 412959633 631854398 993367427 993553181 476135528 946597000 422889754 679238548 764829428 767903201 930884583 992689433 517438880 800989988 768317827 901847684 873505814 928613076 354887945 589685469 307079055 989162691 80967526 934853033 382774711 892171568 955175543 966433743 30452340 473388811 93126782 371299103 688801061 950475549 692046020 871102963 860479247 871440204 946960266 981762444 239503069 754731961 415124460 860980695 180972231 251864636 173409730 286111488 931972644 977699305 229636752 765469086 255382644 475342708 981568558 996981649 367614788 534716333 226786788 718265209 53796932 196655747 541659241 677127114 923672970 955582237 239170886 616029452 347585319 381048643 57105947 648706571 766379690 831857089 689096272 971101108 505683349 807295092 549461623 688444930 905281161 930746226 529829194 567071520 736441417 836936418 363644779 799842477 201749501 743490763 873708794 992051852 591647117 798104391 554863712 839653543 763105664 882574990 118101882 502232566 169160417 942538333 77380138 499965376 808717625 985070751 175439051 829707400 82101409 966234370 889673048 950830971 412327202 918408104 546561790 996009168 668103620 948351091 849711209 902158297 862510474 871225123 9595470 715162648 853314681 944489672 690442715 835831723 781921171 850420837 157121753 757796573 380931558 509704295 100194172 528134276 446021520 833821053 955038142 958164239 197481665 830950569 10567527 645308159 793159735 994098887 744514938 925370953 680999057 773049881 211123467 342038537 887460937 951942708 133183409 355509909 784905332 904446647 863833010 900329656 155941376 907447146 9556155 942978823 290158805 523996637 945029051 952376562 65707669 748770565 468279454 636695410 91811108 136926762 116193210 389643451 287277739 793515858 212286541 491512092 814692231 902676622 784127935 938155454 402519441 622058639 862537139 941414776 136426962 341100253 916794096 979994827 76487544 784599787 88841836 803993981 860063812 874429657 196670600 800694513 471781262 500070193 54640785 564335450 366860541 725585832 665622445 701374602 455588194 850799978 104291657 591340669 279080964 673690804 360034529 477170398 189529190 267594933 255575552 906359813 648721083 713768635 966941486 987210316 672708833 937285017 8508007 643720250 5539695 464347757 864519249 947444168 954817561 972537757 921705127 994009675 536448656 693721586 532908640 900390886 671000325 889734391 212422388 608419088 187898586 455191706 627537345 831846074 392430143 746867542 865854616 926352979 908542421 944446112 590458452 596631882 997263428 999085983 686881441 849323515 478161046 642661166 770132206 836002990 557591692 930569652 692316008 702026017 571848178 850891809 750760238 990018571 472568042 565354257 564387129 613868376 478043691 575745962 76049786 827489391 929448217 963661825 893861306 924005457 811133527 845006556 47396555 343422515 179877910 761401082 480160993 784104964 756022592 771104309 213136046 462516056 741549566 835271105 66080786 797141253 68009620 458779947 543555185 836119507 30657565 384343083 876698046 912005833 19067898 521528336 726617679 777286671 487591477 750297230 343794808 860830283 448122479 810043300 243637903 668938492 663680902 669105994 905519952 927238435 276755267 480230906 522369077 568291039 481043081 889659530 418417030 762432471 434076132 636135934 496541334 786938532 127383985 970532717 13406830 734785323 515679772 907528881 215961547 456229897 78432996 570184555 438878676 929553912 679903956 739190403 996751648 996913766 971454670 987404395 160361849 537268975 345027155 869952509 357938567 510232975 123967246 818303557 714891604 802936331 304159253 543836211 697901869 793249351 730084468 916762422 40316293 528714193 592419054 807531152 824784224 976188147 365997316 502726873 14926461 876542213 976717723 983469114 962762247 995263553 198065424 464407160 504124396 675358966 653611708 994332450 801221149 961616696 449783036 524442057 702152984 981084961 443802435 490965912 618078364 695778983 1982536 361509380 817265839 983870473 50716057 70996305 29913920 814206695 881706215 929862917 945490177 979367947 761332020 893635026 937950269 942624946 977970371 978320162 606814023 982503447 779340569 974941506 933576564 973593547 240164623 427826034 580434771 611074755 955021911 959179822 762561393 764913078 80398003 640039939 606552534 792863685 467337 979261911 180966316 905759341 463037260 677678424 40105008 762296174 64125411 348712699 910607359 928330687 92790165 477027075 538117115 847125484 762641318 989495363 314790320 755572538 571017509 886932908 391461493 458797578 541257016 580783351 288754691 689257934 352516148 450437497 278739948 695945264 323401104 369081495 598694850 739203576 640264794 689832377 680933566 920200571 335278018 455900977 493587571 580017449 11481277 129075434 903340001 942547336 830701664 926754850 722233056 883517742 415943082 577803546 314869310 570932792 341187496 761886747 349672083 554629377 818830249 848977190 799798274 930539642 517039741 907453781 109625474 923517206 971741140 974964974 511765043 553005182 703157217 802369889 615598911 767199640 900291481 957385116 823169195 869450637 223322554 227283757 169087950 253796526 297127907 928029056 960027472 998756970 167428411 498378618 358247398 812009388 937301418 996449344 62353719 739258087 315332527 701623920 908257128 940951926 333325737 705759536 998982108 999189622 982863274 996970252 446365804 630936087 36878709 657250286 921364472 933207881 313228437 775822118 748569080 889940110 360155076 593936137 34781392 486674728 34658085 364208963 632295147 773940225 157732192 375691763 31830225 598864410 453081296 959576335 258203568 701631054 262891962 530818030 550183589 700682612 177322563 982782895 569183506 653923899 799651192 841237251 658300377 679359381 651001793 772923654 646205272 862376815 490076053 789234485 832800746 856960678 253163787 597355936 269894667 999388883 78622929 904512674 141271428 205673720 535947704 682354987 287458529 641466698 399146568 505625079 261544004 661692594 444613165 446609655 356121594 720698601 659984412 758991171 709531541 923615598 475136590 902053849 46447349 121935892 628660653 766139730 785909322 969533339 527255168 539247482 725103923 783057064 719837408 931382614 556837716 716284084 118825775 973525299 392955548 527100998 535435554 607176968 525065326 554478121 897182249 996718103 281353602 672512725 790047104 922033922 231038824 246946431 312150599 939006234 713496113 932556908 523576845 545021425 531604370 978105576 666441590 772684703 279843470 593506479 958093242 996926963 681703940 709592411 646729587 698810618 156108441 738944368 103844537 156236867 267583992 417022654 373504132 685686375 362550696 392436963 741203394 971723363 705668915 819280192 480257507 667757254 843126087 919075411 785733052 882665606 142794074 272572403 623489171 948403019 206334462 353109336 735567259 932280337 165330930 607312140 773878761 824861997 402847814 422471826 637284564 904020306 792692547 964249228 783060305 914581382 767037562 917044045 273401166 830288800 531225964 777040851 977596344 998838278 389035109 509291633 128542183 212517898 283402964 503925423 594829673 820755608 469768092 889758921 661560827 869107262 544984015 913315142 319812603 922580185 39097879 347919447 101284948 853205260 900774501 956064022 526842227 572656050 702831327 984244794 13298221 308135732 453244501 988515598 569646466 645038158 894905990 897167165 627997817 806164651 719338717 892773346 882374845 948950587 507631018 922726487 376722543 525364492 519377990 753029827 590779774 690259735 240135103 767908268 703600690 968796097 119696594 909112603 833195548 982662727 764344098 798785615 4166989 587013206 983624670 984680860 701584053 711236252 861066922 958171882 157713451 716420304 260428890 809128695 623359392 657524917 445042303 759979454 538914410 982877869 682424966 935494410 975475181 976460047 765968655 870741062 835629564 868559538 180719729 236568146 958628919 988291632 214086529 268664047 507026088 955600545 188237100 378702920 725345999 859854256 229378997 398006288 678823191 832065596 461507106 705200523 27527265 981269937 136174207 231052900 809580428 949759180 317579970 838637628 619301918 742177442 409864955 863492732 367246585 902770525 314647076 890889129 663057956 844492864 509063277 706436789 575641547 939668662 65080583 885640780 611062245 692982656 513187325 841036933 48698998 577985462 761916433 855633162 913717849 929061250 914557134 974792719 378070317 758819873 930372388 953848558 468761710 912163040 519930961 541389205 190372957 917176254 143696838 472943029 303752449 933822530 933267035 943166215 871999598 984249720 987872683 994319324 835366486 854396228 591359083 807821894 559258557 586314260 525558294 530769034 916671303 997163505 528980092 777375577 885324812 970566486 43718800 174753377 28467977 268614593 670306387 887746219 955669034 979337634 993723462 994799066 197503490 673283889 717776624 881327360 65135479 729125055 432796866 707984394 126057259 502236640 376770046 974901575 448192388 844674152 959591625 963504655 986396587 998214947 6642294 20770440 256362600 495678774 149177439 394333882 630314967 829646228 620628321 921637408 102210607 334691306 161252688 198711025 834767660 985379862 613821049 862823704 601371661 943856749 455519039 736701390 349553961 857006799 242759507 669798569 167075213 676392414 486894349 568830582 262914864 693222702 974302298 975689738 274990222 754300269 935512585 966061763 498262050 691116483 643434183 771768808 912186249 974559630 160726516 484302435 755598187 775763078 33222030 354818959 165914912 834130272 688203324 814777218 556970073 886978596 632857142 712001958 952930189 988797116 957339945 965540442 156987973 796226199 64202349 327205570 821123577 958442309 150574254 511577711 69807666 347720852 384730999 520084811 284619898 831978240 852380991 921772701 404044035 782603267 612294141 713838526 841497162 970025056 26049615 971041296 480844490 771994337 118515649 299759081 230119219 667582350 36358575 813755448 450511548 960289282 642967103 987765964 521883049 560028762 887612428 946588014 162386628 798434457 993353225 994006414 217692653 932403517 628693044 934305085 940440180 964297569 244950220 625564487 641479407 696660384 800960245 962929806 94664036 156247176 21335266 280973717 350431158 992142874 783150127 987578249 918822750 928220178 202936484 411631350 702994320 718870401 167499392 733824597 68986814 869523574 843464890 880829257 157661796 954697184 43287074 726262782 462306016 470825247 857788632 858071306 147366892 694876471 381966566 565537119 968677651 979507880 325625286 792163825 367750592 970488762 645287431 953732072 834077791 922048273 189588683 641370561 248977726 284715153 133779658 766048337 843962824 902418402 305708895 523431418 987763889 993555890 772746177 842807552 296010436 630076328 178140360 853628256 89989235 904184701 894775972 924920572 161837609 233670047 735239346 874872182 828566486 950660639 253518638 761309567 45957586 490731274 79457496 378011148 717918338 864482242 192643109 880533848 975669982 981985430 56498343 78574730 807888871 956905316 84345898 404320016 455731895 728239425 199142278 207774118 36299610 305861453 800775348 981468053 356339326 795360386 491232908 774111155 270639314 689562610 864582915 923045098 47525166 523883801 497112586 994169709 64376677 335284565 219806521 508342673 450132351 501848246 756982378 948924300 685245586 739859392 519074740 844634175 596323608 659485029 777036523 883745305 288690630 892895273 992876113 999159243 479293753 855428246 588517756 706785216 688050803 861938762 958791714 962547682 677355747 874963602 185990178 557642569 86574743 388109095 779485035 991029228 454699943 614530257 358335241 944992708 257430904 873698009 974734217 999110398 81876983 834269447 956585046 978446594 799872355 904191866 363316211 541671265 701375086 766089541 65883348 427770630 486163762 652124469 783742308 788376591 994340233 996394456 484706589 505113400 855234136 987628941 569410561 642220925 480167747 869584034 876449546 974649531 429785249 678732513 221737150 767655877 401746914 687769302 102380874 600348764 475418487 863975532 296575457 636312337 429850877 815954650 753880863 903148201 133313430 744135214 261524646 448758453 106803207 168542839 144649514 859401739 800982275 902457505 726686058 937794906 803419739 828332366 538883008 771985149 321784495 425027501 758707602 787067461 389811506 453860197 382004081 395543195 778511818 846582103 948960004 952807958 552384640 867935699 397361080 819880994 47299676 427506487 174283199 644798495 288497041 751860268 891963701 928184186 408625473 554138655 282858489 860625789 767237760 895659436 959504921 991728223 515832804 551296199 786787719 921093081 638398271 686832691 353343613 493731574 992890158 994967349 732894983 818792338 494563915 906923443 897541448 994234710 394267107 703542233 432173007 457082635 64949059 578354867 460646408 876818376 239112663 617926900 677565645 848818325 387684749 885101779 785881207 911768844 545701887 862056602 675186244 936454229 460660191 875601815 124667408 959708598 151622050 571515671 489997694 670882912 896243583 990614829 930562624 969228470 771146335 862555432 80805168 777024113 70714657 540187561 717924083 759330503 933725534 997104511 390077906 732536832 368916149 374361875 608699991 760991265 79080010 490265806 942414400 986952075 181010894 670799489 812175477 924034737 682218784 798046529 871988842 990870181 378115030 982409410 814949154 979970822 458628458 626706635 741992677 856417941 101090042 253163639 833818715 847773872 1691544 499075571 17780491 848136866 362315751 696157602 320686801 939749695 420707465 466369406 151038621 623851339 166541160 256552070 479319329 797853282 292113348 943450858 260180812 936354406 611758007 948622481 816890064 955406758 460131811 527735846 201157632 837511926 520598541 953375510 344247899 788167302 262473129 852451916 82600419 313922986 747125303 997619560 540999417 613780012 691115067 952593371 310919723 924235563 472955343 649010622 456457465 537683553 789201732 839604063 879843465 941038177 83061412 771738825 236785643 811179580 639735597 816805517 248004282 640631983 362654147 661383909 591370951 810084860 428890103 588574759 518437078 594998540 282274962 664238921 917872393 980466971 657456612 713137239 575331743 949349256 39090350 348307785 18541465 296272453 190066450 914130205 125869584 588362609 381564169 949815004 325748630 655891214 881797164 896122500 310985390 801884001 631255110 842694670 431456719 688281966 402193853 669457825 341635763 786243182 48429609 672344585 923325217 988822098 67653947 884734483 624983679 795649013 518214296 997605488 101723998 935458855 840494724 904028885 592154024 759686872 402639719 653449071 843694123 966819531 780468611 830135059 424042572 956960969 97603302 485640600 723478351 792277080 93886235 670196410 375605163 969024374 636374996 896024083 990567031 996218549 141281833 305695276 950482215 957294987 769366009 798488383 687080624 932128684 346639869 542975833 520948416 973752903 936323266 969159140 473487343 578601590 74400464 673441992 496463364 984403474 465165191 769528370 148249020 402187599 476698986 986310565 950923243 964727853 524985512 850192166 414092940 615873230 190765066 510373068 729608188 889483907 320396821 657015467 901373408 959987444 148429553 994443345 869504411 978350234 981674844 998623439 946972668 990859613 90171778 476035182 246725887 893469035 168645177 880498115 29139656 799142832 530589566 650028019 706408373 743787053 226814138 577432133 93037073 345913661 512691696 593499914 165909162 647305246 760245519 858620551 548528812 956452411 35486023 407882254 107111243 957420408 952709407 965621188 414658972 736050891 196657470 909117581 597685941 859146888 626537505 715769736 801714052 975223818 132415983 705012885 743836400 769315915 770943964 792773861 929811185 971298026 319840921 855216881 954371701 986308044 628312429 775512750 37529385 53018688 135759426 242383924 792639551 882742409 678623013 695613848 641353388 658917361 908800545 994338611 769923654 821379392 163629603 772417550 151460682 422882852 997995950 998449809 174764703 345943693 675419233 775627339 468198462 576721222 587597031 826416578 344026052 921441686 502660636 708329092 939539576 979832910 123127629 583166598 336911265 839153441 445115792 610874003 275941514 618195994 666754808 673734908 924846596 985060972 662603390 998821350 538906579 940245510 23310571 980057282 700426952 748874778 665810992 741457090 495536565 535829395 364394218 578919336 565184993 798173464 591701797 921676341 495377761 849660595 741424122 955587886 135409841 865645773 726206959 900053837 276413202 898091328 640469849 921693962 361754027 914421214 869732677 928392065 494613060 734104934 56350388 225581334 112625771 991534064 769010087 871293323 797814633 822951897 778769985 897886311 850613608 912063925 658155642 835853735 539498454 781319261 309967029 496829215 684740244 787097727 26633310 716317219 61768830 578514236 473707182 646323353 35491895 536629201 693615152 858447283 411628375 910947004 95724076 648684358 749819819 830602334 317163637 992620415 897010867 901387547 867818472 962173460 748453707 871864215 389334160 774516549 181402730 766169241 497148023 511708027 165319416 178980245 879850902 982562684 167459023 305861532 722081497 731361419 512752175 758551149 40342124 337993046 901713287 926633138 695551873 774624666 475278246 980916164 838270537 931966882 40905679 604818614 264805868 360024386 51755616 54584205 89282119 792320733 297661697 975107338 109593529 755689065 217919896 319471945 250015259 865942970 405494969 730238450 483093279 742300214 904384042 919232719 532390971 676683557 373059734 417898798 899330022 965157420 718154287 813927558 313639772 392607564 26834115 284153254 466390814 543121715 837642877 971799831 556179063 591490535 471205071 893476230 18885233 722019113 958482823 987698990 158159594 935934059 64839261 798398373 297932841 773956996 464352151 899743865 834242497 894162095 114485763 716347735 573559191 655507995 957597396 963758297 173788956 727818871 99857184 786497925 857322953 872270777 524596227 674265158 111659878 950877693 73565478 713308977 365794624 719868244 267612603 565785394 65570582 804307285 956395805 981947297 564633551 994657619 765649284 892844805 34646176 196823561 977133816 990381716 903221642 997728419 203250113 415243099 906900454 940954608 987625460 991242291 582724023 729843745 308400373 504073888 516018344 626974771 114230622 459071810 429401414 437620009 269393834 277421345 629088792 844853395 991907980 994667748 753509456 756678434 902994986 964017269 346719407 980789034 865006636 990687912 838337607 909678693 862827884 992787619 307820370 887922592 908899929 985308673 7048140 582635787 293723151 443849594 845118812 901114478 82233297 330484767 864025637 929366371 681348054 906325575 632050406 925412658 136878877 958169273 965191808 993676159 360585935 877073341 689414289 726382867 267203867 912614285 932812729 994606735 672922699 867278777 475756253 888281585 718679280 899179076 938508399 966404454 177378335 903138270 155046688 662707525 664034709 872754646 556129715 901197137 410203379 454691610 599950209 774053263 830590487 883679533 878686304 987057319 42242227 506663738 272118324 632304750 935555527 969462081 818726976 979281191 693269363 722095327 889584649 990634852 982589522 994692096 98310221 482212725 389054971 519451851 123920557 574014519 271156608 640749930 540238135 594684752 426937862 832762975 203886427 607316642 299041553 462605350 391755998 554668443 897994798 962161113 297008750 407293511 669071060 777527504 858090108 880694215 468129175 644054009 617319781 816726262 75768912 303894597 95959943 982346006 165669925 312038381 737485622 777820799 259041365 853334923 882955867 940868532 147810824 263147030 120631192 132343711 963667774 996897837 816329670 825227578 856460857 909053719 923496641 952164402 415266974 679478256 848480942 870044766 2981272 638314863 107830042 701022751 864457974 987794231 724356896 996767553 407792210 971928460 123013301 309809615 297309428 739529680 291457495 985683203 10799605 598316673 513782260 518622635 382870722 408557638 216949194 597050205 499525509 922252609 229025465 924688513 665789577 810885020 515175388 939100890 984079456 996352848 887187369 923750103 139576340 558696935 456394022 582196247 414173328 638644976 14303532 295222923 73894561 609444827 913375275 954906223 581841759 810840237 481289100 487129180 103471990 544919728 982211691 986214805 923047168 932204147 34697957 840560936 843446736 954931708 450386410 920602195 394680446 750527522 375172434 903753449 116296935 549888844 699693378 899553917 752043185 838812303 242869127 935984402 228233182 377277575 205147796 558833425 986186722 995488817 940539297 942812407 990240796 990390059 203579754 632010457 494471878 970850571 254654587 514785215 42318618 72723849 160036765 670735214 93124891 235414508 278584290 534067794 66045133 580921957 835336298 962537943 55341717 292005822 276870693 725837352 647171113 911564221 889883011 979895763 294492011 546410087 511886149 708648788 691803038 960729151 964914423 986345098 170192103 864958455 333038923 382159130 250096019 790661063 915135769 990231221 720411098 728320197 701976668 936079309 894574344 906293280 414025976 686696481 963913440 978139180 348593244 624879795 531650497 839147491 715434905 974488473 31066443 536500338 487910 898437995 542907563 700301271 917845187 948757846 117019231 180691661 497071958 511882434 116573847 310431419 46372602 408681166 108900702 778955724 229719030 904494049 287614512 658349835 951585971 995878186 8778052 831803003 127401173 608665214 994237987 999208802 195992544 634186622 874028097 934121621 131076072 686673575 641155985 832091637 442006424 591512995 117524064 275429327 985641872 998277730 535311497 634265730 206972034 782885589 164478183 641809279 293764215 984468661 144230453 483744857 403020987 473935177 86762836 812682507 309863724 781996976 945949082 967704710 363366334 364172938 563453021 582710668 520986104 978544205 247048197 552527938 590003648 681587445 357423622 820593230 844287487 955563272 781224533 816125386 98189594 996181760 516948166 947137105 432262555 503022194 262928364 506664252 960604881 974931801 353687033 405927989 984923221 995522301 699236264 840677554 134652236 654675529 409116628 559960820 45139091 926704095 379316334 447213563 597653087 911315383 538661558 800700784 418609481 615318415 909461082 956457715 310764998 427451252 450115175 597317582 936608975 976342840 131138220 780221496 814375999 828705399 794243373 998947212 798017792 937189132 680751180 918778172 972415706 987822682 178393953 377153437 210287652 819842454 118510560 128933732 105821373 158403244 213088257 801052289 369666989 600291457 866326804 940004636 742288364 883596145 803988152 915961851 143388992 889163120 628228969 866346472 167869106 634443087 40355012 107639756 183832580 903385473 218679244 379355530 145792430 907479490 70121458 865241405 540380365 540612684 929870615 935646477 516726877 986436159 360959672 686820091 330127165 604664277 682894803 806841563 516699807 925912704 162347656 997865745 158906936 862608868 663913442 849098611 495484135 927407643 487933229 745667515 850754832 975060236 348184423 958034244 170006481 817955844 656544050 966173509 751119141 813047703 543516395 621456977 33395739 486475724 182372341 927691209 371240489 897264950 752093622 896713416 227001303 675587624 403266414 728187883 952329240 991631408 510548084 547843117 266115701 358108455 496015590 646291798 485711897 553378553 630532719 784330742 296798579 837793453 848837789 855423516 427594998 527529554 815471681 841918100 366385034 803153640 33421835 752552768 759690772 983606895 734950191 977477178 487701648 555496745 369654040 428610015 589915744 618697500 550717611 714213674 248029055 359099949 146831759 314451127 897570746 947862558 185134170 564583777 973705591 988432447 102063424 525158028 174316917 698150294 30745856 621798614 455158881 927775462 296010099 409053564 787822242 794366742 980479918 981774818 350695166 749233330 154947176 802416834 30598741 838814329 686334637 984786373 902223926 988943218 223521885 493321997 956877855 965123056 263522200 298184281 88760890 240775383 938420602 978767856 674038445 699722136 867201496 943374476 132597205 938019212 978846053 998965251 808443046 824957389 283564854 346372101 851769818 994562245 710025754 740514771 232947913 858403561 419396775 529360776 931667768 957664704 269263603 789676695 360689616 743956270 172248847 344719969 821509062 960348251 516004892 704831854 367491576 894030597 5876768 41734720 72375277 899640291 899685376 936337938 850508354 907935015 529855408 862390155 522116613 618652150 993220541 994108271 635142613 777282285 641540111 853918272 747446534 811653859 841674508 855635562 527437247 653452424 736798643 976238771 686217387 956920970 19251517 653585244 755240469 806835989 971069017 974101691 656898912 817956849 419249472 799019637 575047225 713440223 651893066 917137979 777114169 958837346 256505596 858701039 585185094 836514417 288077653 951880276 954864592 998328135 317864792 474935365 203477661 983512124 141723514 385804641 480359753 722540730 681255273 756163874 622800672 795847344 741318174 997893499 330676858 555285250 659216394 800424347 889257344 956744030 792549456 803367933 439717511 962997383 774034309 921887413 551210197 978932094 576862753 610369671 452598946 796841292 609756605 644211639 488296084 743686178 52672410 798123642 489712618 593029501 540817554 660949429 898285946 978603009 564464005 747119452 745866703 841973041 923317664 970994844 670453357 849441573 752825157 778125316 286002735 845108569 58926912 921022436 277461932 501231145 168035422 680037172 264194903 450529807 992317306 992374629 656285234 940138774 669952810 865893126 361083618 866024671 895005569 943647426 514763730 564893270 121064362 391761974 861238657 968523221 504432557 634403409 982782872 991563674 265661095 474334080 198167541 901178282 430772045 793113584 707280975 786295863 330886937 584037471 662449380 989137669 16558336 162114370 624057468 679950621 680666097 928310122 253668454 532582926 245427095 623416412 217897322 675791570 195745676 995362172 428791972 915972207 660883650 767594669 528938641 614622193 369996980 592388905 556718089 609361155 143867448 156619478 927436952 946005028 78990145 497355682 679481314 890974943 532932381 886697092 835002955 887573831 546260180 848096002 249631378 294789102 14871013 734726843 358815264 466650395 152523193 552242786 936749859 963912581 503379686 647632680 825657641 992516856 730681010 784717065 847181181 933664246 141438167 737341006 674919644 870678733 517785071 897125794 374250324 744684793 472796174 849521780 630814752 802603530 385250755 870679574 939635581 957708141 519306379 683481026 3684326 594153235 335421702 671133231 707453023 783812041 271712936 768671402 490442063 973118481 356262552 738711321 960013582 972400896 974349029 976579946 990837884 998408743 951289379 980478317 190611469 507423145 426137955 549724033 286603426 332002070 136632776 435581428 350760862 885905764 493132563 934668245 811680773 832298199 678283689 770284239 538942103 669858039 505001871 837765673 862889240 875068097 620172331 985851082 348223827 515483041 154116791 644918167 499895646 921403162 938041190 984854866 744269099 992981183 60531818 193066166 439010819 700185538 648006878 976282026 794908233 877729840 208783888 441364163 133426169 948903729 409610918 591402192 693510315 746381809 795350764 835052522 908241284 983031218 112702574 264945046 394715334 827595490 1330610 954287163 619053317 657090779 397411438 758226927 668596959 892058147 991468218 998806920 86294782 246949950 76802241 228414610 233234342 627602302 810472354 926420593 715270172 790083647 137036020 803612297 791796070 828817199 388708826 656781884 721575614 940407731 323794179 576069111 456688602 764661609 84354384 486277305 170103449 988193202 736021519 903028355 307132791 655175052 802253744 894671458 577504365 745965518 141229726 896010009 663398989 783093263 826743888 848390174 463054558 590564332 184765677 218848693 830046937 920872973 699296636 754166717 964912573 970560061 707878217 920173800 807526572 808194297 236714215 595059152 676642296 930553143 681817188 819028731 32846169 400560519 808391978 825115886 159039726 448465500 884727261 961178466 538755974 970100542 470612983 867151840 418166440 453046178 897013060 969173894 939264378 973966484 333480080 839272986 100748720 714048962 388106220 533284209 644100648 883091158 798237896 926841417 326081559 551536281 736685185 964896234 43033491 443814057 199540768 692642621 409194337 439169680 820291260 821921992 123062479 251420378 283916730 308979210 613874651 651653433 550821904 801116677 176187584 418344951 763414835 975481050 944200551 980679842 231015559 812007043 488038241 866799591 558328410 886163488 548957090 660997441 828088065 905689524 644339278 977954523 621381993 715922900 102765502 261808093 810953023 848128672 198667149 571646531 599097928 634663791 95459033 535321877 905092036 995120266 191957354 413190881 803866948 930774669 965199464 996595679 456319413 922706551 664165146 794235968 188113211 220955110 789778802 951436804 148280134 335200832 506873454 962965140 459916977 787228135 463954231 713485789 515985856 978316030 73307143 658494956 317040358 888832877 375796086 844574873 497040587 736752921 584674926 763422299 292285825 792410422 916620126 968288162 791101605 879020266 248578150 835093365 640726794 714189454 821875550 942851805 163847131 273966913 642361627 892900118 790276882 872340436 229704374 570644715 838855821 971791372 30119297 390179765 526195984 977855469 931639183 936797021 360951719 509135404 693372674 719488791 490121211 974875681 918343925 951368786 252505377 996213247 733056762 855601622 724948680 991577902 453592231 471565779 578811393 809892170 982241761 992003167 223787032 554418397 775541847 966058259 828290789 831776552 516124449 790928319 694428561 834845556 83814519 212775723 118600389 394019883 382611438 830065718 376721595 557007372 959741334 974620743 900530803 931739254 473315687 877275853 537756203 606631244 968696019 994596669 824356477 868139796 368278220 395523832 543196747 759669506 764772675 948019408 552324712 607169312 537771304 827700589 427094495 450396383 359948916 497620738 271435120 602833637 854181217 941381205 425109986 732335424 748668257 819540658 645234246 653294264 309365660 713777361 11527833 416062219 88426644 809134466 114171494 184581550 593869118 857831839 805915318 958383614 627187641 705735089 417152194 648331182 921342577 979945264 909956784 983103222 142927509 712040473 87136212 975938862 289157790 914965557 859924607 970079566 26613227 305687443 529363182 992601631 719196408 961519459 925622419 998579350 13184025 869618611 624746961 635801227 384387453 886640540 759344867 806530307 375045060 928993139 628627944 735559865 466946298 665039032 138362488 722450984 994447546 994806711 625343696 835602940 630825831 691764999 263447155 398968440 593995717 704813760 767166412 827972086 449827174 746713713 279461828 636730776 403221547 961083059 108369467 290524982 826094413 964645149 900167258 985871077 600691886 957840590 560571035 982741133 548729359 771210808 437200478 751840581 54800965 985169233 567754349 848654368 8874267 763434751 228761679 897616212 190832523 773597161 584345519 956522875 206560384 954144865 896557774 945698113 565162372 770851140 746650669 959003866 580073195 917943776 531687802 783022220 477813343 720339145 443519711 966395731 719177600 910496877 679022330 822720891 916932437 983192854 51761025 310949241 674302350 861486894 111467519 336272497 856946801 981676524 898313475 935906111 445616937 594018862 366343093 899351986 493398280 888026946 560599953 913338713 936988721 950384479 972425507 982761054 44703841 842267877 457593190 528825237 453479529 635947930 857676431 860069553 736421246 935766588 75108309 584938716 222880627 447942843 537120263 792370047 878605816 984692316 323679731 343777321 543160933 769835247 377475671 820368216 703815272 862142210 544759532 886578001 432319976 731598380 760538676 945846667 391869908 623075806 732776117 971178329 890415646 933084331 877380979 927729129 346618332 499059467 935342920 996206273 558085218 622980884 83042269 213185799 40332226 629453144 110078134 266205867 888091670 934627589 437933625 640125075 736389742 915938631 145476238 320920234 708659045 859999840 902804404 954587577 401410579 989109278 724893423 827147994 585943811 943356644 616598536 682481149 928183581 976052574 329400757 633577727 852080342 858274659 527141504 993934777 365528407 692226557 906851609 980355318 938848977 960697541 247523945 415833517 429246055 463359376 873498427 884294905 376960799 550942140 808995761 914234841 560886930 853693180 51512081 129065542 221898701 352028117 153102616 851757410 689272991 739525457 538194423 740384376 336411807 347567003 113590887 131511842 50560416 844782952 907430535 912516252 700174232 716860670 257353151 927371053 841374395 844960212 675127572 744126523 475588209 683835845 496480118 587955760 747326499 857097956 701351044 786901771 70411979 922454600 733163004 839083406 531734812 984448308 903003415 933197243 710893719 940400688 630121850 637387267 135810449 418923689 4972193 570152825 76180551 291324520 224598937 311541250 2423495 95299985 705435660 951926154 331267973 717137382 734189896 825777501 97964824 918021158 222208500 672060537 989653764 997974687 999313031 999314089 84226435 107017789 846668460 847681278 3884283 857133854 628225807 693454710 986860974 994592186 646508684 831517140 573448287 852363490 183392555 842418913 964566314 986001627 599496537 628029987 510795809 543933316 796031094 973379038 48468269 760485101 772559068 864231660 734700873 991756078 909305560 932826162 763224931 998372023 168464042 729334610 935183049 998472491 447368938 728770987 387629447 841367134 556168019 563076583 916722093 936439120 314416938 970660843 411495931 576773030 747514100 906934648 160893299 671007988 35844684 64717431 323934609 608531632 798922420 922825371 537771380 712942866 260364584 896987754 758621623 786401033 459435734 988543751 530646437 955278365 629250253 914091386 488315051 874731465 20649730 72045528 507687956 594293374 295969440 919854407 977937598 978325406 77817615 846548168 133751583 238912100 134044089 577392348 843036985 848058271 269000450 669165932 381629667 955800799 129323489 190957097 451179111 908710041 915492893 963590376 82150047 136723719 185100146 779643710 120612312 137162177 372650694 699481366 546546113 897231800 879591252 934753625 788052398 996545220 328177637 394824531 597083676 649632953 818915751 921327300 717164237 764443966 505943909 931267727 14711110 137748640 397718914 536300643 931143974 980807268 28635468 327127994 854208399 932290201 572766371 742118041 122083142 379532984 189818039 376898372 342199609 941485516 211313160 383668664 559353072 723018527 19560774 320273550 950076332 963175498 368283874 596175831 561321701 919037250 710388900 726132134 81354300 96960055 864761994 960374436 957066705 989038653 299366322 962698474 554967107 956037293 273048311 770822958 696281029 750911139 619784477 676278436 116333617 119823244 128900999 322259962 139773262 664396528 404479957 520051980 448203536 673524334 538300859 846343208 317082892 489991034 125165363 288463090 395493552 928510736 109493095 301687183 628285956 763814856 164958029 197249015 683202527 733390857 536220894 687378133 91662223 934963657 876758055 907544262 87849782 263691029 355671963 627042130 533560034 575000978 269915659 421207310 106767461 128858637 538598351 566328811 253621550 411796144 912940434 936824312 727091958 738401449 345411891 744190356 366865060 562094664 568819814 726908141 981365857 984628503 915043298 965968265 901417914 940146671 206395318 909216648 591692040 715844772 114846278 214246564 509567801 936875135 116498344 147723330 40603264 976363143 298379667 968318160 322748350 376273625 128657514 700242568 16643446 180182180 603405011 898148796 887979703 914260330 4395773 450010656 443351487 971500516 170796834 284813184 493801843 797273661 496768496 974595350 312871 709049080 121169144 828222901 431473601 632715635 741442627 807341630 340421073 507075189 419500141 990679056 394613989 910778705 299326690 312221623 560465685 749200671 321528752 521720016 493997798 716880933 247541922 983653676 915238382 934615375 814422767 916020052 217174704 906205112 201610186 818337062 224027917 540820863 705774099 735489585 667087946 868079000 829680603 875724967 794306004 990120472 262324921 335995360 65375268 979787772 159892398 174839822 11279009 665788445 451654116 512287686 78203784 909913829 808899333 941954436 892643911 983072291 156682588 347323873 119985777 821462634 483996532 753757164 646485700 981942043 587858685 747560730 28676653 649990224 762886433 885203716 654923195 850181416 545207451 699073605 859345560 973910814 378345719 855978083 447098128 561686719 889885970 996872209 793085491 880705431 76971980 637225817 637716448 906874384 148144546 990287575 265010043 682082733 152666004 844383807 194527959 274583518 78687796 445586530 783657619 896198916 718047061 739024005 171308473 549286307 578963371 969330341 305307162 434371796 121681553 960493216 86508898 223002250 646997312 720105461 359179744 605458972 414403521 834529711 734270192 945751537 559537427 916266314 434453281 515456267 640299145 758555555 365911664 484637475 385564246 460727536 678725276 730963780 872457183 933608324 943339479 961180611 887443860 887878938 604811135 817987119 71580271 452188044 960926474 963000528 823046781 860653967 577137419 720948411 856312839 935958715 677763851 838029559 8110890 465459833 252476076 393932337 475743096 836873077 816096538 862080844 172628043 515150359 944371184 986519952 989687370 996468934 732189552 983507651 276922701 679406872 904020135 930293795 630057121 744513559 355112363 889875676 464500422 985060778 129248583 801790672 540157044 588027958 442524303 977564591 332806492 390804541 885508392 900609151 452260446 577065427 401643377 702842432 144267561 163729198 747577879 782333419 568040452 890062982 985915184 986422592 4431739 537807461 945688182 984166719 141858123 611356891 379284304 425705255 232495927 828477860 743010872 947199715 844523340 993896432 552033984 818147848 35714427 198071257 749891288 753901812 176602361 918155694 562287087 569789204 236793928 347798152 599998813 611360783 633791368 950440864 318373756 919106751 15469636 549643577 502606939 873882510 231282689 424982516 611332891 857522997 539628136 872066760 883384339 897432929 657300393 917270114 660091448 759187953 618357253 671652635 653909287 710509188 896513397 921154062 259866542 661403625 294828649 851771165 280719075 557209497 642663244 737205353 448120974 617963872 104076538 263964000 748915891 824255372 715351958 752254795 807660289 972259837 205759488 790159624 129107648 978017434 782919715 804763121 178367668 868365802 256064497 333877588 122446653 718522208 20506193 315737988 714928613 734404668 743550888 837618758 38496986 884401711 949500583 970817097 685345296 816563599 742319572 866817481 509054980 969614562 993713572 994775790 75778722 722489754 970717256 992695093 461048804 974359287 16885926 228459282 41414978 131062340 720060577 995563949 46916799 368336576 197285852 253523882 173165631 634855852 995405983 996497607 138248455 556384102 144721505 431255546 675073345 742226309 575125515 838215627 472491981 880363192 947636688 953179176 340524008 629489205 398026236 971850399 835941699 974067636 12989865 492736440 648895072 972429420 901884397 928024655 789698203 913402051 945480526 974857251 775577871 887970071 545169170 751187477 564199264 883619652 541541067 582829110 350727594 453752042 731142959 838498785 587103073 844178293 125636313 307905751 197811285 704483036 220370982 717261332 105953484 638135928 997670012 998318825 502978805 649927785 405622590 516603463 339953364 691731439 850477016 995729440 623456555 723291909 723747915 943492372 804523323 842218034 663286014 781166245 25274895 632447740 739819868 974248295 938620490 953094917 577661369 747074159 344877852 705057767 201574254 742581048 169047684 219777744 210453704 848669066 136922649 864578532 707873850 815206236 928170163 971769248 826707889 992505506 477766455 573215091 310108631 415545999 882493403 940782307 802338363 825031236 397558548 807403142 23524823 444870498 794115611 889460432 664408019 713188431 919402217 981575350 692931213 719516819 38459815 602423872 7943480 377257436 789649453 961118138 823320200 981351274 81473404 860957332 949504734 968318132 884811006 940566569 916950108 942440460 611437538 679920468 396029218 596404882 184696501 314775744 24005559 851164789 533748630 616555989 514733972 596042864 717280445 855409854 721644949 910000820 788521885 918007814 913616351 998873143 542202731 885863335 832918065 889470759 452884528 796716008 549555157 864072315 620369514 706274477 816613612 926362682 377627545 592424778 667278255 905758977 603789431 871383517 787570524 860881933 597556166 874175224 542112637 817668720 80913440 792715955 140959089 491067589 289160247 845990749 401868530 928346761 652269007 878508012 291463171 453707194 260912684 393854503 909301280 933617335 433900433 827112042 252858899 814076619 625290934 633381113 738565265 985310594 797385907 890370520 376702487 495690556 465692807 798523511 507375431 981417412 217120721 563050181 770340898 862162794 143461254 668551225 628025317 715797627 313182273 711794352 634887975 974195665 78648632 587023963 555167209 910010167 622031414 930478800 745410273 967673333 952087650 989440159 804874586 943636790 168036065 443367009 171892911 742620009 183325709 302592315 702965461 732312290 443118754 467183419 580003198 947257183 668936996 862347546 45676718 118173735 435465005 530945887 749683712 858459728 757693563 847735322 463501666 845898733 823538109 895597664 561210909 950893089 144696980 503657972 759221149 828575732 845987325 925886560 163196662 446021151 14267032 546526966 432196437 676574484 963182631 983787699 949717222 963072932 847640457 906406245 160580553 929366453 550209774 977339600 713995290 983980532 900856725 988444363 49868529 87490985 780300897 917076000 679417581 873349195 786055881 854849702 810290774 899779062 620949226 935499388 868461457 910457400 35677017 481319361 866286201 936356028 996661550 996810198 809567389 894154210 943980942 953437656 413525983 530926557 42317886 401943692 25930366 639301362 570846216 877996149 239908676 801778769 293595142 885517086 26523262 620440379 941761696 950946400 642831452 912686388 85764760 369372358 255433890 275691224 172594942 822939398 304577065 833890825 805250382 850843992 968842523 981288666 822539994 996870166 973894445 982015474 97581180 986676606 757614685 826971720 929746800 980571151 8232663 202711085 579982494 992424330 635655087 911971207 444747865 717044630 768769026 860629559 453624335 812027145 547216328 792781905 393462013 810918783 860855897 967529333 90928080 968041767 836034804 975797652 15319416 517762702 898967893 980990280 632540168 975566146 683462947 769212177 966213967 975250356 409983912 586250744 824420629 906090486 328530819 754427654 199092139 647560776 322176700 391872198 88776238 664067435 703951919 864484692 374202636 404439841 936180764 941312327 32087848 446901695 347502970 867966829 24017311 466621438 425807151 795004330 566470860 603699803 548179531 987462661 431444068 500928545 926382955 994434758 15612188 495426771 121750890 238379242 395461714 678683976 243441339 657074012 68745291 573311079 277843993 931119070 935024421 948703886 987372777 997562897 173580142 612898939 202185184 585458612 623867583 957675969 641316278 741392526 157393466 911641263 774162073 865730929 419185419 507852677 816736120 850347926 281105895 888317135 310925589 572727743 791671488 992920460 184856327 644062304 923540106 991715871 299212759 533570242 823444751 886586535 190407561 752071342 478075718 888722545 142235870 278186825 942773058 980440677 346793399 439306710 383843473 727611581 825356384 861350148 178089962 387311967 289628232 930607137 390401624 695922991 342123906 553300901 449837121 876035929 904678355 909043395 83978270 994427200 537108160 729427419 953285878 996783011 5186334 733442910 43432091 484802672 387301897 944323824 938503216 960227720 110837511 951092909 19569016 474315722 284786874 606099911 137941379 885740157 201433857 629538479 26142034 375029886 28873863 684077251 219065006 921768093 564400739 594496771 608519170 753118684 755697861 833724016 126406477 755839238 17237102 758043739 90400055 186583008 914348075 930956213 407291997 992348078 156632143 834740905 201196200 898448921 364213221 826788161 36101662 964914214 859805486 939372080 374771227 653428010 425388727 567293822 224973209 444402111 794426915 858332017 545392294 556346437 198478888 407760405 942408133 974318716 156831525 738223072 943395325 972028247 450904020 972504636 804510661 960305076 972674108 984053169 823011159 963099122 47299108 205939876 677501687 890418235 830081564 845157889 404878208 824560207 622497744 631862157 709412632 731396809 111332656 204372911 823080081 884298449 117590079 459686084 268698351 629302414 35622065 902833882 948595771 987025645 692251028 994712193 17914796 746049594 919989289 924594128 685966527 746888509 8534319 697219993 504250162 567625096 30306694 560072207 171960948 431534090 21530637 916759697 715118948 831699841 54563660 556122562 317055725 620187708 269856099 997769725 805463714 829759699 644463001 836646301 418841339 683775937 627233682 738021917 255480908 989358558 52163978 87284433 523161811 767995130 393289840 840989839 318010048 817571415 539733721 703296376 110260614 759056996 501076650 605574978 88988172 760260077 950352022 971058099 481808237 902579520 220860338 959379189 706573861 960182488 979304461 997588232 869947954 955395199 342137961 910227067 152168755 770603765 925459469 947456776 491306887 627338800 727077346 875756751 999340658 999375847 626428707 819694032 184975479 719627712 11016653 419074518 326087174 882834665 836947319 914153920 75798494 467571776 267908139 519065883 644557212 845382055 147958205 298483842 460308190 498380810 580821226 704143056 114186912 575640713 773379758 991223150 116909005 569394262 872548905 927720527 933871730 968151993 500763054 710684382 976822854 995305526 869892291 998753411 300036595 386194931 535225738 630141267 949041601 997988636 409432022 748885853 704050962 929433189 236571454 491747419 136481513 255141939 771681183 917685733 54780520 750319941 124088276 424049021 404423767 719000707 239996481 348808803 820260786 894520777 145096730 259778253 498167437 815573210 337130717 536208581 591757707 796347320 822215509 857464553 418197234 853036563 559176354 732101225 408624717 761234266 830743098 953480230 5679467 116418175 252453196 909821043 759973769 923124633 899710034 988098710 664629317 759382334 216740421 261754083 383536691 545737608 899431056 980519156 743234812 947893386 887117546 905194592 594775973 942172933 639397531 704371495 994923080 997027144 557102266 604343714 348846527 846591914 376201098 438141869 961220858 997288646 399147847 894745702 611446767 788429405 693249374 713337115 896905768 984123730 288500838 421819093 588965844 653698036 223866506 812867644 4095561 112290212 258908283 669989922 419208086 817077268 806948924 870122500 728243046 940384991 577428369 624031745 453796004 560825167 555434662 762721710 569766497 603125535 73668178 490781424 702130342 754670541 490721869 848291213 571071294 998301522 310427678 558270067 975248511 991691095 276303437 761700833 195638999 549791837 318159786 469524536 193856249 594928749 538812685 828505942 30781766 46272774 859518355 891252993 706857377 852146291 827633900 965895645 731521959 900841303 519197441 683503063 21625916 526485568 549500696 824463286 735147605 763957578 171558967 774402287 255500464 945226540 712799082 881275114 368019596 595689471 680255085 761789152 199056373 432095625 324366095 979174728 878811435 998271121 131430298 809875074 817626626 984378874 512476751 517389642 232732977 239158222 146698093 722467322 517166962 609372567 261546272 786027715 968737118 994914956 836027073 845711170 25806708 908025478 63503851 550462825 125049561 492164473 38091748 933228421 726799147 842565078 596843746 986971068 996652753 997399508 74908811 700294081 107927887 291220378 560944645 800032740 228402397 480190077 713815487 851903514 589150973 617408899 711291377 840587558 797027778 887921829 687640385 911057666 249388566 473691219 45545546 342737920 772980531 958694203 201937151 583581064 399480234 428807071 652115619 810015152 980481812 991497748 824329700 840421677 996201016 997662090 558227196 649744820 254282690 945972459 133772458 199544464 335297475 463811234 301882116 867127472 898806984 900976082 250308554 710553705 547881817 883669333 244110258 348088267 748205259 837126597 568533915 724336344 612983610 644019263 899709232 975944314 741535475 863879121 412114992 421817778 693598272 868519455 306637136 629856037 24129730 901071773 756590134 813624979 666898885 953088825 103977683 735426550 881225950 930266394 197154024 607060021 785238575 863416879 486249587 571078558 862366555 862572624 592537286 652953496 648684767 979046419 880302306 881279869 458795955 609228185 954977276 966509971 745388926 801432270 625884366 664816298 119432558 254774117 414273684 655152975 386474893 730584438 205425050 220105797 460555239 642361344 736223483 763622451 485469200 811869731 323648293 390271244 351112250 794812359 312781872 746729052 882664860 987559486 438348575 624657848 863206962 965356142 144763861 321235708 883176624 935922696 142414575 729322346 802337813 887258560 839815793 897421615 442564549 857168261 327130768 409457233 407564037 937979546 738592722 771032752 636055608 719770662 72313589 264643326 990679904 995529579 456533500 521224371 712610422 736658180 900474458 989700933 11509672 445867710 879884187 893938090 313479463 758241646 763283364 895317438 617275300 729693517 715551572 915394603 38097905 895792422 428934447 903871455 35013094 738230819 348578346 720216884 622669205 648939137 51599212 981924481 621077820 771733928 186711004 251856368 672816683 896259273 193098730 330338830 603676490 993500160 162717584 642733579 253494149 314462088 3238518 46733727 310457227 502337000 140549496 840962145 148058875 857619726 835849014 872061042 585129587 850668089 788350985 880620739 223263288 678187898 964138929 978698266 190700397 229573436 960687335 993215680 322378910 325274515 210870056 513375826 116373048 635557056 393589973 965252093 530946940 879345724 739953834 764602782 628972719 974400211 276279597 620391681 433703840 653615617 515871458 932825766 495215770 985004129 942945376 968625741 542629889 820201451 809895657 824835230 415173705 878570057 411718888 773333844 953784339 979199136 109288956 280018209 990917268 998625158 754617783 943383447 643910550 843404850 917027327 921180827 130657277 717834889 218944943 409995779 395116592 790040526 639413470 787818886 28898894 663793145 751234918 840570683 655556812 968928202 780279042 991688155 732419002 905965874 293441159 599762083 936078971 986051964 574188459 949694336 853112647 960784324 9902775 818104740 249237923 939713075 487867871 788049428 270239589 984498074 786499241 862881992 701356119 852354472 160914523 619072086 917751913 959944796 485379630 886403809 591899951 626076676 217632272 224619450 748677208 876168228 412525241 819649284 633300728 898130534 162317237 714789440 839988154 895195063 846001664 933513788 493517197 567569776 324064220 865510477 945707314 953940940 75044401 362937167 425659334 559707067 396583289 445451989 145587415 718756857 723273618 735924504 460696253 506505562 399387250 956203768 984618826 993320863 657602985 973484802 429021257 800594344 148146855 547252861 980603564 981064732 2637120 158574971 881583653 904542914 23774933 409171853 807785042 856069334 513612292 947399976 113275158 186362775 947751557 959614778 882806548 981542310 2686000 271992136 996489631 998187258 234999078 333298328 681341604 749956777 574522535 744194882 550408402 717455115 358716732 861527367 209486659 917349452 363981902 654123964 696475166 962666997 341958429 424071333 509104886 768795677 222685935 907488169 916180272 929689360 870738867 935937662 838549478 921030747 466750588 702950666 993572954 994732240 595933779 604404114 169934383 387371577 666634112 813638393 5602703 206932491 712394747 798452353 105209471 356720937 785140851 855377912 508340830 743123249 92173235 180217376 32232585 586034095 464618412 792193887 4675085 109731998 256176816 774910841 846133270 911387099 984173755 993737466 423312288 476018545 289267531 918458847 958501953 982584240 289237804 973475606 434190382 699982370 369537379 516879037 590936592 902731331 196019523 701993971 541655482 994288226 152432171 752610794 809500333 820110778 834706462 998729832 409865185 811364235 885640810 935246689 578019934 578937749 168801185 331503103 931344790 943348866 591080715 896455220 460041213 711696808 765583592 867919353 679055955 740337067 284567958 966292763 377084592 415517551 942584748 988798763 115971015 228467104 603483656 775112729 597530210 779192090 571880331 704247756 570426978 986147106 322689143 683291714 428331063 485216876 41211711 937326285 197753842 774104106 480370802 633964084 306960824 997812233 558331152 606225903 754563078 817364415 393292305 498524372 869367163 887145129 324414932 757661966 439510978 960548747 750724661 820730463 134503586 451564973 753486329 829739513 4536791 168185002 584437472 764063162 397369707 489995480 331501184 519384164 760360926 957882351 577915931 948482234 497548041 786532116 934407031 973522496 211028723 302681882 863865616 922774418 784315811 927611857 510246175 992385326 464847529 530799583 668053763 936729450 375648942 699791913 668326156 951989216 898386077 978528463 706750812 854745668 64667316 360152222 629459329 770940683 95702733 101310078 440075354 779244985 87766817 390219244 73581823 84388542 318734086 788531948 677438460 739547487 225768753 916569110 604037876 943603731 356951942 721597389 928812772 969352514 98325566 706340042 816583219 843687816 250776918 371646271 705661888 823674334 810245713 964020270 358402744 476616173 646383335 734023526 259936836 300383380 185835105 416340669 420700326 663193473 51195897 845170438 803405061 906977295 220896598 588112025 701431991 828190314 198466520 619521780 722985952 970425904 160200218 711644588 391048239 460786943 171485618 803782710 679554223 944534750 85831638 869094840 82629815 410366498 477625388 833689498 706622342 742541084 830564902 946433551 698586262 778480607 697041677 867560455 24540527 490241646 802610746 971299485 53133569 482927268 139857789 666818645 419457846 537926209 614066075 751559669 233761705 397472806 332448198 868343960 399041170 770470370 330424832 643550331 3640257 866063157 733321523 946722336 741064062 757273786 517013895 747417103 7659778 920179914 385196081 685087726 381433167 434198825 837374321 942461825 559050610 639955849 327629001 669284284 765496568 992541678 52093241 753302356 719982034 727114767 221855502 511905016 223014976 261033009 174553665 224752214 477357232 627789905 681498665 811052815 372661515 861878358 292332068 694152986 306624384 511305987 754088487 936308195 443531422 761904967 434128131 748251274 987041133 998613954 40765732 190744532 323108993 783222850 903428376 921259380 668716220 985327393 832646614 928273330 365335449 572550913 375623475 616166577 992968208 999057443 261426035 552205124 357511128 667101892 452565262 668892270 955337351 999236439 593396417 678807104 311775838 703101574 11900633 979954395 840188039 966282078 716045483 970416645 11985595 182031096 707752754 865825802 215205480 855206890 650938809 678547825 109309819 823907627 902943483 912609274 593363319 930745543 800816218 917868157 91002416 116282196 912914624 928154915 654478353 744992889 365905306 979011573 526298709 821058293 519185200 750090678 291589159 926325985 610118743 845779073 776750103 848460176 616039959 781926071 560867678 673108598 158140004 728130866 226740626 243910614 529896489 678196084 296460367 851794281 883717073 972329996 241840518 268315042 744364666 898547915 422983326 700563749 708418077 838478486 503966250 930259802 258302129 973704837 331272154 341183349 832036173 851381413 254397055 629239394 581992217 751674243 640392514 908486457 757252932 917351240 121346225 787253262 749278883 905443553 519409853 956380052 858273487 950987282 284034134 303444011 442472064 721828159 250871251 530484509 912141398 934780050 524349364 994459688 256915405 930133292 559307394 582540474 145333928 564264217 626594283 970720883 380559778 839618003 716624477 953816429 893432378 986742984 116595684 283149719 814899967 929479501 889164751 904699316 121833733 752471351 49533631 496454524 323114774 998197989 92369330 478054829 996202770 996586393 498271416 976334563 578508676 613395380 884057169 942421765 810086375 835562806 692150017 987333363 172003107 881073514 599724688 727399988 231618710 521530284 650196641 773165931 114670550 341281154 804807764 810831008 894738758 993009737 85591209 562536847 778092636 812375039 244913525 663710288 319311898 971069046 317351441 842244002 640208162 677729436 821069194 935631753 352610402 874936098 131019302 220418546 489764988 690377000 796849456 900258185 820284839 900799678 918728378 924477145 162564087 955956117 845276787 915675692 23287122 59563330 795321924 889279136 342740191 521140493 262437782 851501487 170269353 258819416 689917826 876856331 928730780 988811609 806417394 857607332 514172313 859593566 290123793 658505270 686434036 848234127 893708227 955700350 116302361 823791770 37990898 265911195 127708550 506413047 421259664 673088907 501350473 770901381 261992795 566055181 136998731 943805829 809594024 857613408 107882246 182178669 207391684 567877252 769831966 918730348 507598730 813078138 207445531 631585893 285679665 316083301 160353049 509841775 144424426 895661179 784520182 795629474 828524013 990646337 372451787 407324399 373147945 749411490 567402484 706485219 942988285 957556246 717435014 764240483 288795106 552845521 58183099 953556824 859041104 976304405 649333197 800324645 412845547 669621614 175459938 504983539 313655717 502960850 9711105 966180669 345343529 490708062 859170879 992341072 86485653 636336598 119682161 903743837 347614850 955884995 610098565 985671701 689703232 941615875 345656764 977932115 476452434 553494366 197087142 214176217 135447126 493702136 639996876 915683020 758312517 852246700 864096052 954171244 870135338 914166612 953169565 986800838 698666884 907480729 127708711 960601462 908204072 970833873 130798899 897636234 907508299 963354841 470356464 662211430 633407336 926752880 899764508 980130864 992145893 998833833 980046354 982534069 870315348 895425289 852865093 959209246 110910012 475879681 269399949 615820643 884505567 918091283 901533313 981331239 258029565 458021689 213414306 324466369 143983205 329864887 758119964 840324521 272616668 351818884 848299684 875445749 661569949 932652852 101971945 980315356 846900434 934423218 490283115 790700489 15126550 108103384 268309629 995099262 636183028 933802833 697971771 719919377 131354146 196640546 374744547 853897309 248474035 596628149 373477054 792205292 833169362 959078033 610224965 772399321 552934094 659718755 673289153 903794665 683720095 995127408 876310965 920812497 708135652 895214935 793660939 984699273 496941471 767739890 126862168 440589699 952675790 981184911 827791471 912602457 348304376 701208151 735513230 866227259 806108408 829296214 19148067 567274759 194150498 916466647 474365118 702850190 554347408 594747981 301947477 331301247 18569060 750120340 440501547 766578278 946948746 986507822 158450560 828670721 326517123 422342590 292998832 538392018 704633596 925413683 614003923 826306849 728870425 765665425 94064026 564377206 678919672 874968494 451362231 518176834 168841433 660248660 557488070 871125063 136398375 881817079 571973576 690647032 722185280 868511013 631452309 808647232 782670615 941388086 917203505 992825374 761780102 829261543 11129022 105370990 972450747 998610707 819924296 895762159 314204090 960779463 999017180 999302389 155773131 275514423 737012585 757918457 885110694 910049030 509714129 831572609 613524538 800251403 687066013 785256076 870332742 962774253 807577078 878958403 991026781 995876047 588673541 607646229 191747393 291320385 61096099 306305891 71408533 259828108 4845656 690245428 629565347 957945511 754767312 893487679 87704916 969541047 462039907 757390542 299878954 368343822 10100914 646346125 118774017 911182483 468789161 636846792 193742523 956610112 363420852 511289335 996891737 997790005 904361143 925948916 909380372 979464605 826794990 838040882 910238195 924397624 304246715 887004004 781007310 813247938 997430438 998943292 452546364 949927533 189283301 392033027 156678901 709635161 476830272 761983911 249126932 945925445 38983015 102409944 123571086 921948047 60091693 256018610 990759994 992536026 446118092 511156513 987966528 989664937 978207207 984427441 642237933 659333523 172746939 349489056 125958961 900325402 158106615 857599106 538815462 725150143 262635641 448833438 238999216 363181137 47968820 365258313 235216723 390150910 129753783 574668827 152820726 753139426 267091866 799929601 515960807 850330588 805872600 917108076 915681415 962186072 53778249 311646940 217185693 974101842 36220682 622616367 194576946 497342607 952520259 990492549 557607389 578347737 917698741 949543572 529106868 807527902 767079388 940041735 921159307 996425957 272718967 351093215 256398404 957640123 5720421 768768203 38548144 729221296 857899148 956118174 210447656 304650972 726621859 888101518 502891633 758231043 350893951 961765674 833475943 943685417 817612149 832888601 510878627 714706369 33188036 511842982 194548620 485331019 731489641 913612609 235493362 293491063 950620668 995084875 389215177 882548647 234723203 740502133 814979807 832536618 401070905 860847078 595813266 959062538 898043702 957199090 552901015 717749273 785457358 954668858 718358771 949911165 130466190 457608550 193372889 384123041 554260539 567484311 201446196 798721787 459447486 573360227 893661987 945551882 699898488 854020818 578979685 903600881 818089384 937804950 748281269 851795589 856864522 958558153 989656454 994537654 651113453 792315304 147708511 871199168 58086858 517086873 349042278 462894299 957304952 985971577 506120375 681757368 501265970 525619144 479995066 912967151 752756750 791006006 145025994 556636681 367048092 454948582 104462577 942260152 885480668 943746195 543383861 694277840 752320165 984476316 593020369 899567806 226083997 978319279 568961085 774004195 12053772 458987307 216476851 382750084 397244149 515679610 719382324 921978640 558969303 655791895 98284901 563263481 22684024 805177488 161535854 447297394 896769159 936495274 919125165 920933335 731397298 829456851 389172012 408139873 319569401 541079081 320395510 609863092 914907482 923115014 846659082 871764127 152252051 654291712 292244975 334313310 899149925 928742064 668703309 775930323 620920636 650057664 521067616 877004612 725933097 894215308 601702835 822331305 548685973 762339234 767574502 919771465 949393277 958254014 487570109 712298761 560062597 742649166 414706376 819956284 478885431 530557582 864692052 993351449 949755654 987835796 114822733 150233396 986211792 990441387 598905847 662714060 301967519 756540331 193737020 943996705 396693290 522430443 673073508 946600571 8941167 442572143 65473972 929959737 268855934 631923807 169255119 591787974 671426369 679623071 298975983 803621404 987486171 997559082 780264493 912965392 243804267 512931384 913157207 978240313 267207258 700327246 358740777 872552870 801767831 895546586 529297287 613588421 917832102 920599162 300252684 318241966 37577077 853642640 781920755 923884081 131871219 621435056 950402586 961669120 801268062 889047083 441128197 887177001 422581659 533296314 205505623 740170393 635779310 822608745 873864226 902898458 310742119 641460100 166151512 637851386 680283759 770021648 46659780 463353569 689834815 702972476 478386236 737685151 357575511 455917561 629097404 656912321 733157741 847270340 993285572 998541409 88288781 284358310 903981269 913874336 714384561 763489055 62065465 775599026 67360009 779703999 643053765 905101116 31725039 147090396 525061094 568306951 327278818 913626247 594984212 636854923 912205670 942066901 154726806 742587283 297894916 315129542 374211183 800352754 6203843 398420503 492689931 684892353 681184109 731949206 748198967 997396809 318187266 825227658 22209364 67483757 186759424 332200669 615437220 838710429 276677432 803355747 614504304 809250291 954831268 958394501 906189064 945967368 151646375 902201465 70769485 530255327 918024573 979362138 755508526 882176517 941817683 971148104 942495360 950553278 445477161 641123193 337258120 807604834 699849952 888296680 234192312 434670522 528910903 561069621 787697796 817714516 402398227 410504035 750455712 993286119 992027893 997416527 394263179 625511968 164916922 496363094 746552173 868993390 339708271 425814296 431287765 653310368 627053843 783741576 140005444 968807952 98366972 328686850 554171302 872188570 384890583 881566199 118019339 973440421 434357772 679601935 436502926 843229565 942164940 959791269 260776735 994315329 322305064 792024266 87013597 602864418 871733333 947527798 673780503 687080156 256160313 469762900 948714957 956078156 356192520 359801591 249408750 982203455 305526631 576190127 578475706 928715311 741654633 757617292 320326018 623975024 703380721 987221647 600073852 709739451 926993961 982272091 97303533 515383017 535095636 756012989 34832213 390521315 781447653 916867221 211665687 319029162 247617554 455743635 186150976 901019498 691937622 845496441 313589409 804050579 124649802 134033748 759006376 953961162 636071558 790055039 166732721 550832410 194517432 830634324 672381594 778297906 41385662 219347983 439088026 991535096 348118533 693322906 480590389 874845895 631113762 996390045 881831395 915521883 923138746 986426020 554596111 994074572 900118155 918525444 337275065 481868915 335359575 542498390 209758616 397489180 850806533 990706510 479462285 740653715 968266731 989684474 565684901 641250020 278695024 380448109 350757975 415575901 402623600 971035828 727351324 841829695 742142072 925115110 501496839 997091027 221510161 327598814 419669831 934529760 187507202 752479203 908606585 977983908 15691145 365079903 706208100 930672765 912999752 979621736 229399215 932153344 989221442 997579989 787909245 927429085 96169047 951901475 124890915 888047244 724962100 792508068 551238125 949325036 471780962 556313652 310849182 446059459 125831416 327418597 540050863 756665418 182721411 349877313 443284616 490221405 64159309 598030820 177740855 911255615 180534976 444597498 22329790 832477165 182967191 440561042 521629686 758942988 939891111 997191998 785444556 840753491 427397650 639373081 831492871 891664347 175141348 180586635 44154308 908172158 146667028 216781685 300197215 662791604 339102748 469785649 979286533 993293434 428476893 903257140 65217509 159816358 119990208 399285477 751138517 811329419 877336228 912124092 708818848 831849264 214246275 364746375 481737347 938299522 414099187 646990599 278641650 440435817 204939782 801263012 185742012 342988894 903860104 945963451 370158077 581526361 568825377 590548016 762415215 816308005 256653003 375439791 274356375 534097791 255061463 708166085 676905224 695722270 409585926 947787436 1509674 951511742 519216637 747506538 330195227 986451740 980004175 987246227 753635204 845917258 83154903 257818111 81709549 403233533 944106906 983630107 735184802 943191794 636141271 706893201 28669986 423514341 142493108 243185643 865081474 952714744 527250917 622354405 499481093 805482865 302533665 586737949 688603506 706909640 240797433 340413089 539071992 966778566 322501670 666935485 944029397 992240552 24970064 34589539 296017044 411034849 359918729 951181056 363548159 637762890 607534776 889691955 990084937 994926714 770559232 956858533 144739912 713630722 502249532 799074425 204742402 986707306 30387816 856616818 782841606 924256867 244847366 516554545 734011700 878634876 922391748 969691591 795318280 809712910 94854537 706412897 120265187 597979407 290847206 691710340 743269895 985060207 284874685 356519171 267839287 369619316 264947913 692665567 832659038 989216430 56787064 200280825 799094863 933731296 786664640 851593230 401845915 738236026 772675918 807720185 660583588 895318725 319040958 814208547 233556930 490458360 251577507 915484201 589174896 851132913 522549078 886051541 85565446 897691617 183392498 921095674 290058001 792024679 315301871 481036647 224564802 489608733 485268822 689983299 736398525 988561165 60828680 974647499 525905880 671812740 285928198 982043876 627148148 705435127 317551912 678361949 855344249 953215945 564102498 863880167 754680747 989202414 742227677 862212943 732425857 851060018 547453283 962489516 796303546 841281880 634105554 787936877 125290143 494864734 741232967 825930402 815787234 868535772 127941816 644323701 595863584 814176241 351694938 393594876 895924493 989634098 364262495 760776818 488666164 610455307 728055880 917332470 765510818 818574831 347046900 864202900 248001950 975522843 114121704 862261440 494576164 645775747 213622969 716763113 946705352 987562809 683744362 892708384 30080217 111488008 894938738 972184273 16928666 844011756 220039244 930631636 90770760 739560829 197322936 906720901 201814607 409378669 467935633 928270563 3300203 119506440 192149374 525675480 2531965 396293354 16490692 164929858 733895270 873209705 588068013 664535476 613164880 649205177 960118154 997640646 499775685 602423266 162567186 188624760 35922372 782251153 582883874 710945503 824542063 897900003 634252531 802573662 329134952 495803152 615263905 914521540 543086342 844135049 205122537 313085978 614445038 635356602 942471462 982779941 764751658 831623777 890049579 936778175 389225129 776371929 638769656 833421530 456036847 591764666 688071193 723118712 685193139 937081358 970786919 990884985 657607761 696358041 631624910 993184005 854992547 969683637 903277207 934098584 31709606 657202161 381065509 744063027 981797872 994505200 11155240 631253589 598396294 919914385 296206036 996049336 808650231 878900966 440969880 709409860 671892268 828686206 624579374 811595961 846728374 966775475 359165797 399037966 246922046 263567725 858153681 899200008 32120508 880617828 564021636 649640663 917928556 920456337 571677780 586017807 994034324 994118625 848855543 892780106 821032003 835352873 926465732 980716372 512545557 849866738 637724094 915856825 643947768 877008838 516103942 580847077 66964783 428286527 373094707 914986257 766582953 946477486 715409627 899618072 560088920 614378613 631533818 725971043 13346030 776956319 937274440 975184053 712494944 874618511 330106881 950159199 617991464 699997517 829099278 952220028 655345367 925610773 527245700 758732969 732769151 754646258 815664291 831947984 772782037 904310540 952772542 956122028 753574011 837794091 76586593 653896565 339775421 421261850 700617453 864755203 985430813 995653363 811651975 943397019 454307883 846467982 338182907 555350849 27920722 968537932 804938221 996736895 87674142 427444544 215735665 669728742 446570926 621167970 615228979 663155726 898756749 966801856 788583738 792019980 860433607 909372737 18105207 348418522 450920826 895198244 297050792 584619455 7377613 640254198 660241659 703017139 241540402 605194416 866718163 982657934 800647529 956494778 824506046 882587829 292032893 315205466 4734857 442608463 980125395 983996449 898455258 950491983 389647997 910555598 312037625 929168331 196573761 854596169 983039055 987638104 104396381 501364909 101680544 612244197 15499924 27569095 231854086 477217338 908581786 979687134 833820095 998893918 267009515 370382915 99117253 499963307 654995752 874551083 621713617 943107723 598922856 603185848 119394336 308536963 336918338 507683540 99555784 410584593 335116466 594021459 312756275 910103881 504383980 739665567 183119632 975994973 659435886 974318878 850358582 871718509 980549947 999088736 355951089 735796456 186719910 201939556 437056459 477174544 169363426 902381415 901411294 941681674 815049606 886984855 432107977 817756727 962853158 993179446 63278270 87255362 102017888 266911096 951449698 993751029 130201531 708182587 801938413 808023076 31138076 40178810 374773082 786905986 914525654 990560408 225910421 773899652 186969764 921970627 739721656 990613872 696921160 796770745 663246088 699244399 859719614 982396431 932714684 978594719 230901450 643625225 319366996 917840585 190739497 658523799 419052201 768782053 9015877 544244601 615564170 980353389 214313528 587813199 538636439 546195450 26603559 653334945 189913181 946654356 202840821 611187713 103327984 281429396 715970430 933092131 541375025 785126062 809660724 880611917 458015505 872682460 769523340 854538779 713022293 974789799 688776313 769261533 368327111 902782721 501656043 868095802 433575263 504696268 198640306 838653581 9566421 813341795 502596605 978769838 756689966 765120365 434717780 995670450 805280037 961846699 67988133 356312719 428292905 789590676 153958733 898119398 490052523 937547206 510055315 796802103 906164579 926739623 7186256 198885465 650003183 865630117 77083509 380894188 25737857 454783842 319141471 697829691 525726617 619965256 789663380 861903454 672835071 934947186 62598038 987060846 613896739 700946352 166516651 715882055 234346312 596529937 906316138 928749266 221532862 728408830 891923547 924891347 339416923 630159820 359108417 990702864 311111327 494512064 420521404 631017032 979855677 992581892 599134873 855584122 198720106 820472912 809455444 871045375 130208738 766546620 883076236 904138688 549950317 656221322 233045999 854403276 511226146 626784940 324339889 521004678 519491963 530932399 319698280 469583880 125825742 856607460 627196885 739695570 956820720 996329859 677228141 862753104 429464669 645080943 406437759 698505546 197101273 426523821 659910848 706708423 421242384 605006297 444471097 447041570 669658298 784990980 816488057 987968023 739779286 749202360 588517771 895078840 425808835 878536627 461421320 716250377 558592897 603039143 682885767 957192426 824543816 911705020 193064843 941193275 69984369 518976282 699928088 794900211 858984950 979401875 58604338 411369930 736729534 753384597 963609817 984902019 634308177 987511744 718266047 855334470 780028481 998302016 193501752 497540373 971505773 997777021 500253417 773187019 513004532 810403074 147062536 555997492 112155828 223924108 306879868 767764572 593932059 697717268 295366873 314178682 863848106 879922691 229625651 677689110 629332860 760273456 332715050 656089864 908370016 981617174 119000023 599725749 902395098 950670399 313373352 395702134 992592277 994978474 514459743 858059925 443136770 623934382 251350544 346713666 844067945 870416882 285972481 715950021 781999006 933240228 16714884 505073068 643398601 725081202 497078304 871861574 710888839 937707734 53804843 876711425 725834963 901408157 683682400 846135028 650073635 853833727 893127778 916796277 916616668 987693698 579469484 906597244 83087678 384844389 466371610 947338505 385569253 849471538 240951118 823608869 125496840 215639230 641175272 743873348 575311259 624663882 196522383 783063939 950488097 950583648 577172374 595099773 383107626 411401171 100768186 461292816 794021048 945879523 404938184 444820348 293023114 687876609 138494519 865017130 668119895 970753783 187511771 861291991 769400057 945383652 382421800 876038809 969480730 983281012 291457569 888611595 341285946 779270168 188364717 214065949 975920453 999288694 877279119 994314751 455509900 849871293 400064782 779293832 814029117 973111443 731190592 912352334 526520288 788124508 53254480 978907007 504168315 943572099 301054584 364340897 291693088 653016081 482956093 874770628 338203928 389403035 932423976 983891114 125430806 924824524 364834422 770386321 264954220 897695397 724796853 784794755 686438181 740389868 683996329 768109429 799709263 988225883 604999238 687299490 13707265 790598171 170447513 604562221 249273501 381336258 883836946 955546160 614797355 935844142 527513177 749474223 723774209 938828772 663660294 670970151 295172729 885426058 121312591 196659010 40814564 697207312 583886583 732535396 561682490 978464848 654127657 721500170 11628601 213000233 20663316 634530842 825882119 878405379 497898218 932346254 263668617 690332262 955791949 962837309 754438692 790813892 567653015 906376824 973503558 995166383 343371119 865532189 68393112 335757611 188044688 465449608 724137511 854712318 849848613 991227030 272825201 349094324 242362143 697081902 261090801 674043203 524215799 658290742 339657828 724689383 67055299 328945147 12697386 555972331 12030120 474727270 983224603 994910397 786899700 906109502 838458241 958450856 426228785 974848455 902190648 907662011 918880998 967249936 196731692 940353844 254651955 378960208 755628596 934242412 98470921 113935735 204728022 628912821 438611691 438710193 137655860 898466130 847334546 915129732 674661276 785644782 185717035 208857370 272998599 742186274 627348550 954688902 839729834 994469864 21821143 823579817 987042124 996218717 272301079 407137740 636726307 804144639 791631798 995351140 356348946 411267689 44984841 47148463 734734658 883130723 555084182 657432918 870551612 972391150 346420234 518925883 866874665 884131120 80566317 358261290 678081139 853272575 972244529 991925274 834395733 863794217 9858492 528940706 850695163 929382041 303734809 312480386 56741926 83255094 566809480 763856927 960265086 976085390 840037735 885794972 609978955 878844161 570076122 998630924 340125086 469170257 22754669 232838398 87873188 499774651 911298340 964912070 216398760 845140341 719668539 743590364 985157170 985853188 489836438 522446335 924690994 939979609 414443001 621972109 942044515 964195122 954507979 993550777 764559143 884141207 49358022 196555041 434189134 991339066 643890370 990355056 770494014 885197748 941830433 953778978 718828472 750481944 135311228 464977033 89219937 982580129 817770409 951309809 131604927 600980112 972568430 984982806 358418101 667676304 522423289 765692581 908443363 950844890 728013185 803608855 752089947 924458465 1474456 989497924 66604887 726435618 295264233 966595839 446990669 716431497 689788512 908204305 628566454 714116572 120280098 363517813 896691873 906416008 574375363 969522718 294323229 412171394 148417647 668492742 276903853 966144906 170166313 345537537 904381184 985760273 601216129 881669754 724527513 984713919 553125234 802597396 693646015 958584447 240537267 652189334 757446352 893964352 85542151 646804596 982793786 982939445 439492487 467374431 445125247 999386949 167068938 186570842 648818502 967401019 772683452 832073643 71931690 435286099 979878586 981613936 167430179 434669527 377192443 707001307 411219639 727659696 465487551 474050392 272024141 440811525 168353843 797813017 691722622 920118421 979306039 997788615 944056902 953012575 402569215 677031326 40813157 205218855 436831415 562509609 82495414 936834240 670106184 847605284 912306569 960106974 222904923 392000376 139664270 519552320 975642956 993394057 576205166 581341017 163792308 329206510 968667062 978015323 292782627 317375544 132844172 602428529 46479232 858744664 449013513 672390500 80220187 411362090 105367845 776927730 159126486 544293213 191321598 321956506 997621072 999214224 760057941 876835099 522259741 850386870 977106134 982265355 380417535 690034890 406824997 463831091 577725489 997020228 417859120 464775555 559552643 882762253 831179342 841000252 805308672 923668395 38137639 682380384 140640932 637891236 76758972 442004178 388684636 726455995 207456702 470126304 639202108 675355538 544006472 951017245 235944469 814834572 924342565 956406247 256647806 778986337 864867436 904740128 394118171 744637142 937096525 954675201 396727724 720943370 530414674 787728935 808186834 966459389 584471360 601498824 651168268 982249464 38732330 494930612 519976488 774731183 356631161 690744378 731373268 926144104 50197664 620638544 160166689 786613840 568412956 756530016 5349108 857449312 374195828 730434892 801548077 974282539 284743059 555847091 275761430 300883450 678650618 862021276 528833006 625477743 637077819 923848706 714841516 925241201 94032943 565058453 509155731 785889105 515546842 534908673 263610481 584063930 330432063 934770957 994834811 999206714 169543214 943074430 18714939 131809492 151219082 561019184 616391876 731675595 387488075 916373964 573955778 750554604 791268760 980901967 639196179 809374599 127679404 874666615 797952155 813974113 755799650 981242338 566088085 887302231 814938645 877205191 645713073 775790580 974127167 984573821 147848684 814032472 841632077 954199826 671433262 925557655 812991456 994464677 326664237 462000621 980922807 998454556 744375768 750257760 550080064 769296445 578187446 585257753 322028418 734064557 35085373 860197458 49594055 348053622 952152831 967526431 435492688 690606319 390542195 787273555 489733684 798113789 757203943 939958193 845815638 972193147 859730992 949204098 715772033 731249312 743785252 748138403 933266907 953845853 989620198 995297960 145105115 930566815 778997527 991919517 173951205 924920574 42713687 556040105 253314983 481383340 272011624 410706031 328216620 339157941 526014627 962312091 763511122 787727370 761304675 825439790 612576157 844139327 32073346 647747482 582859436 745573182 829068368 890562991 724209325 782443245 221132454 892202786 389157297 587313090 520926398 608865461 707147434 776966583 154813272 182334451 754627685 814282638 880146530 998803938 353282918 792546379 795412967 812734225 602929113 780133028 952860357 960893188 370711805 721977739 612099969 768831554 336042122 373285595 31679261 159195752 401534593 607398313 735823869 861541664 562898686 582530907 298885153 947023822 623149380 636448910 670163134 853953483 14411745 56163267 973485313 978042674 411815347 996746225 546266887 982246406 27587637 855192100 614966828 625069297 533960918 981243080 175422794 887006912 890570252 998927354 676707203 849641380 802870978 812932187 316924476 646030396 146012885 190659660 952672632 953161251 381247441 545235161 407899341 593146441 688379029 701695243 534753482 920754171 348505611 642273132 976144068 987843465 100822218 272510631 691431799 988418455 704236216 712951596 408947069 702811467 719075146 832786112 892351984 994236913 461475764 474971181 825345775 958733776 508992632 534033248 56634760 217365559 655289801 739407128 517775275 736361561 793253067 805909616 713110442 888582180 9358307 712214276 383568279 505554078 872904856 876357839 269683485 398063712 607162040 666647666 883557669 922247662 12944573 165523463 92563808 256681780 57164109 322185724 327454493 606162800 942000417 988295072 497729864 929609927 671815234 688801158 728651176 950778828 169937791 192305690 756041580 756203012 240855317 513940579 18451903 381786519 636645257 982176829 351000236 802422661 855400686 884157294 399488362 526065650 442194131 546472377 255150912 975271238 125566025 440459091 665993592 984135659 405271537 587831555 734261748 741693914 638483069 866547546 658490105 940983510 921686573 971779091 714883135 782955745 617383130 775109157 52932786 385151135 201162601 455213525 440634071 886605324 368416972 481135056 306359850 795562664 897009503 937410713 510883451 539467508 580309093 644688769 37997268 921737168 395210687 572950177 486204452 872077027 88377155 989419857 988710514 990344207 707636297 953799963 497066020 626983597 106789409 744197007 739583557 961059036 213774874 484397908 890143896 946892444 164029526 908794072 825758490 953585437 172151337 236742795 331735285 547867224 487308158 895029811 455153788 767099175 458697176 484407033 87117897 270608277 135759300 293197437 854384032 864935041 192766217 446197118 916269192 917102155 662639327 920616047 846708512 865985088 662022628 669136253 670251914 711798090 43072266 860279144 805278004 962354645 773567781 779867396 367093266 840002500 778342939 805377420 516149192 638563625 707170748 735477456 744688446 749635347 837770411 987942219 514202104 964040006 306004929 870293866 888131740 963421875 460404285 553135722 769387899 961516514 542995771 719801941 46177505 161278090 154199680 402379353 564184509 860908850 909802123 949312986 270601458 642237800 367106012 722717730 71242118 940846645 24303498 405850472 243272676 260291082 35204714 236608036 288952342 315560241 385400226 850652853 949801220 972810699 747667238 807459615 122989299 947056685 388002775 610907267 745551106 794841255 670177477 862254442 705452864 804074042 36035015 120497414 401800830 593785529 917423019 938750404 278555989 354803148 58282243 948236146 628216805 960714641 973386466 976201685 394084318 669085488 677581902 913529040 496293937 588405285 725636348 969161439 863466056 917139456 195595198 679690194 377648367 776173195 654257493 774292492 826071524 955741676 562525476 954229459 243299217 721001657 861074518 936439045 629016359 717846595 407793915 705208845 184801327 489695573 953440590 961190387 521551626 709110521 836822889 984856050 929336745 978683637 520683298 856688443 100649336 948409773 310825740 648700487 67307698 264680150 108389952 450591419 139070369 701359441 756093374 796768102 219716570 933132528 969951155 975071214 82749161 704855629 219585534 894961541 983266523 990778857 579874929 797502608 877175360 958288931 931726576 976468468 75771697 160103009 682423704 832619555 266965362 276938381 649750980 685305993 921823644 922259653 649414606 807580108 619576498 914449636 256075998 331877870 126618648 570994798 737023598 738402853 786126900 855134192 863379851 950217708 386046355 470527231 436576358 956729187 287471595 518956421 108259253 735537113 412515303 491092088 537265820 833397936 57990036 496145905 745947784 785538165 651597206 670091413 734012393 807862111 105555077 722736484 492449601 714793661 627219549 830329533 334710829 469714806 387822250 399725553 409377611 600351202 444005366 626958603 394738927 776726129 276723271 905834703 884909223 928281838 47087804 480132993 579384214 931476994 900122511 993942792 521601744 942992444 956255725 959126150 266888534 744153536 449044870 594685935 335438110 560218663 444737046 724867168 93695600 216458068 542872594 776552339 766822961 918441402 179485723 229710915 711904417 856677760 302343560 487609500 241455113 604430225 369563415 403281094 40844620 941885379 696493938 913502143 647033877 719486549 820607724 910708347 948769076 962007861 352624184 812686416 331611449 763138957 758039194 765481791 892457594 902093914 395983349 781951880 522092503 817955529 594456673 671835629 308999646 599451347 268046598 887508362 498738563 544928808 985575371 985896579 820606465 842047338 982930036 991460753 263180820 950095095 139718132 497156693 702790754 952730216 51803613 834659760 894142271 960180452 179021077 854646334 718602487 807062905 442438590 746205090 467942381 551186404 491478248 785716013 369434279 755342770 202740354 649791701 806280874 924126304 297257485 782530004 544021801 715882338 124995400 225576783 626479283 977499990 970212779 995147812 266081569 786120918 485206846 589136496 766493807 933925035 885709678 922419574 752944254 772476660 20180304 996230248 658979286 923192193 908032594 915298178 574488412 738011067 637885954 741185898 672307118 865049898 843661323 927352378 756832843 826402240 597758332 604742222 707041818 951800486 395637761 653087792 457119473 625253184 803106021 874103951 327661815 707422168 808797124 931016603 35602123 679911376 135028789 810275645 719419115 990839365 616203450 895600989 552565906 669215553 412210938 897501204 329672653 957063531 65276490 74962299 80193722 992505668 696357852 886681998 345427494 702270003 359093553 592877237 699051061 705554618 264861555 918943920 51453556 899280757 869836293 974735684 626349475 655606522 834963390 860372412 222415118 639285702 463847377 688646148 935696122 980239955 158123554 520980511 89879004 719878143 107390382 194569632 986814578 994707972 4588267 725684342 276544306 643258919 413519417 484802185 515279375 574712865 574218593 638992916 30654517 788216076 956328128 991735924 339137246 927707885 404138312 828740765 766954589 988292313 431346767 989508277 918536128 948042881 743887611 808119523 742631777 790425026 748963377 781093282 832424634 995280889 193592685 653021237 590211099 909531366 291780840 494342213 415567851 556384414 320573641 834644020 838338250 900451938 134495024 359318673 826402437 946093756 749657104 883414937 964337916 976861083 489545224 834799135 900488091 986221372 6355584 976730932 804696227 917744664 18143506 421905714 377411367 907636748 248564362 937474446 494908769 842572236 474145477 586809577 159112460 543448639 440745041 926610272 28711931 183620247 271658704 370145086 565159102 603367975 899201796 945890270 538209900 927195678 843900754 853006996 39803844 633656360 850685566 938540311 632149533 725087950 95490078 462196064 49022043 294516596 92973267 247034247 971703084 994705733 789472176 795525138 827932207 890359569 599691358 837749757 263977016 490661090 225526333 308761349 685258125 804902762 24957351 216974210 804535042 930856886 869693791 891987812 164984430 219904124 565752727 836331717 225788413 934958878 962818723 988812950 178864341 540508980 414998765 508491001 542624125 659545221 117104219 867554693 871577047 917682039 729236202 960080655 615367147 918279139 644283615 772835612 37836836 769226988 710191359 767514722 592437209 837242475 349067247 800040484 707572348 896311261 785095379 933263529 143926201 996522720 423752084 958313835 881056831 953994269 742176229 864565179 75991423 463162291 662416769 709620428 316463395 955962005 36378826 180341822 316140200 891221492 231715457 780399275 119611968 650489912 215842056 389991521 257098126 686365988 134759623 612657390 426720737 912853499 338938270 631459118 273565111 852416221 594839302 747312208 83256596 812518946 794987384 955396660 826295559 922919408 329635783 390108827 190345001 274457542 735075461 757668871 52218174 405722461 108030854 328524461 212468381 474215360 110999223 792433864 51063619 319044958 480200184 994802246 613495287 788891965 115157754 618047155 314246168 386018233 544623848 919284569 444788932 589607953 466447718 643994754 306748066 606736059 690420846 848209137 482758294 982841728 855803335 904874619 370667944 484334354 498099340 554357450 189528286 893040415 384000430 967287744 382843614 551397912 271552246 457381628 152388544 716896653 614294433 771232202 16563147 737151954 127940619 341240003 163668565 272038427 192814109 427917493 578261878 864870603 576660340 639894046 241326115 294495292 619478085 680153068 302609355 653991527 574811568 773757387 636039878 848143064 125406315 836787185 104565057 236408602 919179900 922255738 655760548 681939712 707362066 925082748 459422028 585712547 319466162 440035148 911793944 952821911 857783820 982233775 238945948 709135392 634196625 657001221 404147550 967062886 672245394 674294520 837784982 934972235 98690529 374215322 281236240 714324992 611477107 743197121 730369352 772291145 393330164 980460991 243610754 260822760 991053152 997070222 516471292 929269196 108589148 846209230 664091340 966838162 985330823 993032690 237371130 380949745 639380857 822607371 281348904 527484443 721323839 867283319 720790571 746229813 668872047 943280709 452078140 518941225 460077461 564176413 371434146 579432952 937794733 949789005 919669036 975372303 110035773 653744858 494301196 914203058 19866495 199868694 180194964 188992558 342221327 904040286 464278200 859709025 622277012 869618918 491619733 907656005 919911058 920015274 183361658 602642901 772246599 962248498 639148914 726618745 882781913 995059439 616734240 927723015 936422693 948646591 375911166 405174558 887501564 929203009 674064387 867497860 872669248 984329267 206301423 750280251 532320030 807149328 460330963 579168733 60387590 740626075 925847935 966148000 827757654 886759467 797040881 988537273 331885100 729783837 401168247 718590158 516822336 648452841 128234592 830386825 649151790 705892334 619595726 689412317 664710625 729965873 592384676 732742054 723120152 747639723 176887427 992166937 998066495 998628133 36539515 821696636 146333181 599687533 145166357 209373875 356494106 638199716 858003698 928280370 423568283 489886838 235669255 368898645 265803653 505435071 672432561 688722528 408166538 589567310 635608794 685080232 456439764 546844663 118581316 852386811 13010542 780745217 14198904 373997227 154306449 281744251 171266531 846685721 43987824 326298125 259825393 997532723 971115713 994249880 818835247 995709475 901727603 991838018 524919631 581195529 818903497 974436786 593465173 802187001 958481413 987264975 190720472 351504003 848634092 962369673 528133875 922675181 74618638 295475688 937256049 944498457 898024277 903563350 823591374 987938793 673211065 808017995 928219030 930086118 472565738 850357447 12704039 164382504 492999531 940591348 823198716 937835317 1457475 942016596 207083264 811203304 319165613 825547644 153373577 172017586 879056491 994842535 600336540 914061310 562049909 643271268 860388724 971034850 668516855 974717320 665797864 732278359 37006340 900638925 172028160 307505345 460149198 898799944 508152563 520095697 98562827 480597282 927782582 989850734 347089375 549730200 337951596 536100799 677129432 700419417 736484558 764440513 805060429 964589172 853293902 981356208 367949860 686529866 694423684 918490908 655651300 787464675 328914373 541362179 345571704 853973438 269638228 329616596 412660495 963960499 608029728 815630861 338677364 876523587 716359185 959276846 316805723 765661731 29081249 348454302 203989479 407497767 510672664 518950891 940516074 982742183 725170760 851361982 486542342 776938483 422543727 858481812 53109830 381654760 113621023 311426947 517909111 678415060 331252892 714789059 244467406 680902856 356583831 799252480 173096414 215563212 608499903 681702258 483494457 876400492 737340961 924712995 287613998 955676903 943658706 998531696 358427004 546286745 827347483 827572048 787611923 899299700 598668142 725156661 639127492 902256559 144055203 622346260 600856989 701640832 528685637 778632108 92098998 526625815 643160497 787609355 603535114 699525792 3397464 607935393 371044500 519032125 627098272 909781977 665796206 790381130 459184475 649939019 274627823 650499467 341085572 509386798 397875538 467015247 275536493 447694686 546583820 660815000 601127340 806451250 440989172 936208110 750599266 847121453 616944848 652457069 830109772 995352763 363501402 591592643 446448095 848528990 803076888 960308667 238082587 985238972 908246875 920861276 680623736 922447386 966032748 985963590 271318491 414955782 242660029 667818836 947582087 975517820 902534010 996482151 900518293 918584520 528364533 604780871 239099591 947426706 159574520 500886202 635490868 871530639 639932135 954892771 283386314 415308422 279648166 811060947 952577828 962076236 934003580 963576114 287469718 584790460 191641791 540802333 184663556 662697033 304905810 806150350 308982995 374062669 456115754 576530240 792938801 839291192 623318449 810563343 715703826 996187670 477365979 660394128 893812801 927255044 175455056 353976579 582467381 887350495 859252369 950925207 116602552 274050491 225155549 543727804 671365246 884186956 607879723 726230126 239948242 762158729 392898534 802360961 858597591 862878445 983421285 996442115 203954857 328570738 582925830 816249258 582463578 732895258 767931629 799625289 224144715 632841340 594117246 698318378 862989698 909812279 805935702 867847584 906022525 933531917 605007987 891691010 764360919 781166696 511333412 729135146 224539737 721116217 880755465 973992648 145972611 469853077 853677724 927549852 278447430 524506712 752472988 781669465 626385710 894084252 241030616 933454499 960563647 966796039 986621643 992633933 855175928 879636880 534693721 841466460 295771621 885098846 844636946 988812710 993977269 997416862 190434664 402228322 567599507 965516079 15249998 871067248 587219294 946523239 145772629 398939038 608845247 821295519 972314155 988639905 629738804 713352369 438543681 542994092 594982832 931921096 758054865 946548514 715579463 862280729 787339836 829500390 757250236 942601832 390573280 866454702 924175939 972581961 559291171 569430956 75012860 129671470 79806860 554376810 517104938 914940470 631024136 890037464 438910018 448789777 149595956 902472299 177467435 605398512 404078343 593882311 30887588 736215366 869721686 960496148 105816225 818014001 416536576 422811328 118614692 416849893 151860785 304780022 642791653 952663678 623318350 824853656 516052432 706684504 680427091 843406031 973531759 986781102 433996815 625913820 873342987 992053222 536577595 727838557 85203009 792822948 585980574 850156912 597391803 912447683 701436873 893893550 674317393 740662581 901774865 994378601 120676482 966419413 441775678 588646584 610701345 660037681 247558236 635436968 135788218 242030612 480487396 966425650 148444605 791720257 965962962 992370095 220999188 734614190 490989533 912072556 841713874 931548740 470324997 731403643 307323885 858607220 794657404 967473447 656992465 668734603 753259913 993568382 358525446 957477667 289791592 316006515 928266694 969441088 154292831 473547029 386769142 402688787 507103944 843672350 112279296 241289164 556451857 700614012 321247540 454512586 541522438 925250505 821994515 872165094 57694191 108391107 520190542 525872764 810112012 992451058 669351180 910857620 53792774 231445548 141181797 980858629 219988669 990332664 601394729 651841632 814080978 844209052 172438273 470532379 51209505 617968797 135330131 612498221 803275408 808578980 239573737 983690995 200365586 347433753 885633434 946340923 683345184 833689569 929763777 956962650 957903942 964328882 849749362 934223672 449807662 865435876 55297358 327817883 831940448 901936202 260594995 429405027 22643275 532860426 433721053 720221991 650053160 906138417 426860765 772557951 272668507 566205165 151962799 686306688 746259530 929224642 352022247 645399115 609743933 823811853 698398851 860161816 800060548 922558767 435540588 806882476 145675088 385306008 49347666 687874444 53011715 115801089 441771097 450780461 588500809 623561181 495050035 716260229 724417025 909523421 326695092 899771458 538193737 907829104 434679124 530104891 295469044 598996118 322715806 874579477 162670343 386983863 763509298 988212918 821170902 872774142 75105142 203180445 603254125 732546839 68614712 621132255 110335152 162128994 505795127 628787591 619929200 731549008 664819250 912342753 202399010 326872960 733540866 760750638 278785686 506132291 272008091 494194079 929591089 959314221 121487289 513428111 761382465 958464297 914891394 939329278 782542924 995478527 76044109 895274061 593169274 658649051 846770660 911151844 686985066 748268292 687950106 893586140 564519617 849414353 747122536 941264808 246553928 344453413 294097168 677127482 914398458 945346851 165884344 958094321 875047579 939801467 237789189 832595173 167732246 215101247 816655646 852187423 279610764 940863767 17638372 663971657 978723115 981024441 835092816 996768008 300710712 823534326 988992429 989492357 297780184 776229443 806501174 894409560 481109387 972511412 936998628 949440230 136989144 248482253 503128442 780164608 6866421 162643260 418314901 741255330 338032591 509980197 474237665 662780907 314152595 315329713 961871413 994932282 850728577 942278529 897686143 925013516 408793262 792833333 284050086 444026556 588193024 773430391 378067224 594470711 125182131 369969873 884312330 906224839 37995444 433107399 773226253 886247656 336643351 851016133 206505658 503583645 406899029 679041146 380695451 965001977 481260675 699216838 255955432 561110807 284913500 295669035 920385524 969459776 760679447 794682381 737917162 977607626 140917815 815129747 479290726 685059407 832093689 833465212 321262177 479556419 558862482 594613248 141465369 913463675 172551824 671885953 720268138 742873705 737463635 952733415 718118326 761269825 54759089 161859598 141743330 158603010 704870987 988607175 634138543 883431288 380999207 740444679 861024964 873467026 215821032 319907974 52030893 912222921 231591901 252553350 713434860 962785090 148173398 371572880 103081037 675229274 556307549 567170250 328689735 672464803 290495503 389511677 521668652 580933838 776407600 814311899 14793887 410813173 490984428 762948568 206202973 686022591 182017873 869448859 636205302 953721635 604669952 931932522 183801106 243623643 537963198 729468886 959507318 978502234 768670082 936113066 78857560 658906531 138831583 735424746 899643968 932682611 502807996 622445934 643140995 709378251 343153559 602832760 185322969 290762330 386834492 592504759 526379057 677011451 232851046 381349337 246722208 606720038 536180396 563541277 884028997 906158051 570049253 819774880 566092673 706427409 103104441 772696120 732593645 984120689 757924350 929233780 407389865 431021764 573105814 584487193 550446177 693201736 713155017 736302736 409218879 494408487 575177831 591968738 186170774 588702312 156299839 977754380 679159161 682407499 495456816 600399868 604001195 992343479 811591443 840392352 51624755 737022515 447988242 629190421 293170797 632263461 897065980 953980905 307272719 635969037 77604343 295358469 130302584 357839785 760562482 947729569 408292771 893232835 969290403 969316140 573448297 840910746 632633509 832488998 536393831 834108180 604504987 739730491 511992304 714360874 396177345 472111262 464950023 647210286 959206614 971309311 887230685 889538796 642677526 805600758 964452744 966477219 84605104 207231772 998873561 998964272 913005827 936715561 592981167 977335432 940925079 967419498 114425491 556209414 885798878 969507608 414491546 657158660 259501864 984204301 325912013 769982333 25455116 883933186 380004236 965872554 553890025 672112206 728836487 908400100 977009827 977398593 338675811 417849286 879515884 896382399 793022722 800075332 577998365 724788776 83645085 153041845 265912506 746351480 371081490 903252659 276535610 448787957 67168090 158181817 475047015 628462149 197928198 540648402 981660157 989048256 283748544 442787696 516762661 704680038 333639675 758234990 749389711 847756944 210655509 726669033 166886290 806849144 844617116 892386011 961120572 990241227 224229302 458761070 241555662 622468477 380278698 567911321 564188906 971275339 106450835 991053240 766560596 936523487 503908438 559763078 643766192 971369592 500773301 598568302 210811118 963774230 345763235 522497147 742779418 980936092 810398672 984500360 767332708 930630857 101541303 303121005 156929370 701232394 543558103 762384623 691169015 871073600 949005621 996453221 624742938 901218024 983363494 997612830 521500207 885726760 90781635 229147000 735144621 976807003 681116553 842677409 117780106 121112179 928788269 930562891 157318288 867663613 304785840 334701005 873491447 906948858 381313484 943609253 980090077 985360785 899018105 903633159 131853884 362949677 283035957 358517992 200729700 876407146 650899727 699491272 640034880 940854095 869087211 939579363 243121967 384410736 32547355 354454428 67136646 682494633 27766308 41547552 409307030 950935590 785079885 970662400 768680852 897517079 59795504 101812828 141814770 449920670 326291930 431572558 747000016 878423075 339633535 874204141 731756611 777230228 372130761 856063269 66036566 329617978 594298580 716062078 798286859 917121369 667603254 759973970 730988755 775126220 69816497 313112557 195143812 645857127 433850712 822764491 614329203 707233273 89541277 682104741 920343059 948397542 671292387 896626064 407735798 802743310 406327881 525381765 587941318 800268100 600317939 771961825 705640087 820902022 854183229 885239281 969181718 987046353 850384844 881319029 690823800 804899276 739021434 916943045 463260915 860055372 172123697 592159785 989710230 996070628 99197921 216101056 751201130 823705990 783175167 883533751 290794158 913449273 343829297 851578233 947435126 947826372 112296846 732789778 227742757 632183206 624783926 698027690 840473063 876324974 582835981 730538067 964763270 966857233 297890035 840407039 974018682 974647014 315188099 950536141 297457288 597486640 910140896 915871515 432585986 816703653 941088032 949554227 801041928 920606376 993453692 995853449 687314450 817138541 128587889 803346122 249939558 947591995 72008318 318003760 924667897 982039536 490510268 902064155 420980093 653947774 120970215 265474929 629800312 630663700 881771633 993994566 373443199 650668269 602039104 615555459 312190508 737718511 539819306 979910168 964916469 978672978 506601094 865097793 275403076 331954951 989146256 994528081 988217254 995821983 136175278 605280666 262092248 848949521 463966022 969488235 95633150 366827624 717114064 839273587 867169253 915115751 1864275 30420503 540903486 698192284 928912592 973864140 800541853 949998497 615897762 767455592 247129789 977397638 248514795 964887723 33772944 203814863 316751265 865095681 86696919 926547255 276389773 389177491 921444244 994003534 301443996 408122150 642506379 805448420 261021053 782826218 755903257 830645774 2427666 133257635 497874043 568627879 466419134 789538144 452209795 867440319 332325176 775308941 709920900 954667019 534017993 802069868 746699422 761780814 884655250 905569216 686290653 964898384 427157797 665438987 826020388 846569675 191171078 563745630 394214481 705705274 40069281 40981415 978460585 988373662 516801157 751008451 151085480 506434663 436058 705782735 669391612 677274118 991413739 999329698 886566379 976904049 692496696 955263743 930686821 935013338 534307729 861140880 881987775 920924080 913727189 986714577 884316414 932475870 502772924 895615622 697778343 955608400 993112195 996164821 815418671 908852577 197135852 429372006 215736726 261303118 324225949 884789899 53734652 204701456 211031033 581273785 756080665 925388960 213941401 638079615 984989424 992027926 897654502 921052890 219351876 701071782 909924196 920290375 602652990 977383856 984758273 986015751 702362010 975630063 523550945 535331118 987786484 991904421 514967777 645721975 731930490 935069505 691520159 811998251 903231504 977297522 588026584 755527508 870982819 916121199 401927898 407500080 185917189 868679951 205297341 937828036 850874663 903508298 471584097 836216883 488935825 527648467 624373870 759979954 881692734 965262669 784454743 801991542 890330762 927311806 480031170 972368881 124946158 533696793 547397607 990224906 173998073 868516283 346502625 671616760 11865262 486383746 115094406 185650901 323805086 496872468 184068774 901468341 669594498 942725927 258060477 979180245 386275307 828127421 174145870 426729436 622479634 790944585 230724144 447354238 275961559 780375603 50773809 339459745 409225346 844206870 94485743 111455486 547673428 868281383 151870375 622502223 287992791 379251100 450488746 987212599 319558869 418931404 80324104 252765083 331497409 960368316 744393852 872318607 835320692 909658909 843175214 921345781 890566853 930570762 290367406 685207415 46746244 333577681 929959642 967383539 199742053 916655770 575298244 942150051 572213405 869372665 217309893 916577207 108300284 652359515 628507609 884142164 124065653 865805612 592745015 872611397 388905153 834787426 249017359 474455963 470770688 724527552 516303926 824917913 459016011 661355142 211200337 703545351 758245163 761715347 971919950 983597253 130940202 349296492 34566863 731584528 735773366 747449159 919221028 971583248 170911195 707346062 681992666 776256809 749035278 812635129 672104099 800761407 485984440 871056125 545409661 728427591 539259615 660773757 222368269 709015756 916896333 943470711 66233202 596569528 116161676 771980445 215848401 879180956 54551041 127574185 221123229 500104576 373239993 851223594 409752233 775134933 703693700 880463894 973343960 995489386 685990496 757990656 915332924 967957647 812669533 968515452 599408907 909715698 430887708 494625506 106511848 998233512 406568403 589305021 120986101 401073897 169425801 449464213 852406755 998678050 779074158 963605484 902577115 923890926 501544922 910706840 35572823 869155926 110306247 965748277 926784253 942132483 80218181 668676752 766737233 801843487 268178870 562567915 648741062 966555509 284937294 939108385 139092957 859808524 104176922 345106883 521506131 801104578 558896785 759349579 90395566 769777186 108331288 451276875 564955684 950799876 627078153 815263581 754678424 940254532 383397841 677941491 433802862 616422654 904062888 923725900 745264024 812509656 253504705 828486220 367490479 502135304 456035310 695513000 529838533 560590236 190862365 936920929 746775414 989638691 372362274 558498401 232013056 665748296 323841890 639159912 212048010 870521460 930436679 963294566 49531727 385603067 175766467 968042264 114614602 966651634 824921592 954428287 846010812 890111952 787481799 901541346 363331403 628232809 104058554 832380008 942693128 989658204 1505403 603694376 80000415 609104682 681554674 914849699 7719997 266639641 782201699 787671722 257524551 335286455 611060034 805175541 774554517 813514985 167367791 949515482 962756794 980839167 582739797 585851688 613726531 836336482 98509410 375278469 362164383 572686957 927157350 988499688 14349716 444744380 990954628 997046237 408405530 974685859 231425041 890759915 919197267 971034833 86181917 347494326 978693280 991371446 585612367 754713325 333952633 916173543 51030532 701663565 611952963 747730578 546273686 798600592 677283487 865656405 319658472 990545176 927511881 989967028 701505960 919898876 108113006 312029192 977929268 978211930 434177449 840315856 978784267 981613018 816411657 974148308 500074803 584902673 845509009 940985885 19604815 321209150 653835167 696626514 972069600 995178637 361734593 713242305 732079973 846725898 61926758 698345695 972538912 998275990 718096934 771868744 542780178 911669750 709326564 818290110 693389510 769456636 116673241 573240374 328899468 932049170 9590295 322945479 730137172 763444907 997131300 997246483 615915747 789619085 214625404 463619759 419557455 889092541 851045930 907286943 689655268 902006133 721841663 964476047 893391589 991935942 306541763 559962724 813363694 825488020 200271305 941168900 950336897 990350808 24710037 265376890 225480869 275326488 903409032 950719245 166663188 871172340 613798799 852967110 216529579 948778723 188348845 970812139 470382621 697885604 433542778 800171120 74824755 801881827 16615934 187394468 147166604 922621989 930023522 963228420 504585492 720342724 471666382 951047485 399636016 712147577 747186378 921517694 974189828 990910821 986609647 993788641 907965182 980526368 728702817 795253937 194617295 551085039 269670935 352519445 670481305 763646975 448332714 967182938 437998660 687218367 368189082 805017805 887284283 960401105 200454477 774306602 313226863 472131001 991009817 991958714 484059091 690450124 155384845 239591486 496966649 586917326 24434772 633601042 2479898 956854612 495471888 506156371 760494624 933278744 483048567 562468572 191994387 697330836 187333011 765533406 690357050 822132179 271321346 357735221 341382752 576259334 888748820 956599938 22650555 526483527 386956496 712588037 818117535 830860499 691204202 697905210 687113860 906218563 524755533 751577426 304117596 820285905 336210101 910306046 390170201 767853953 869932824 888533127 196247522 479047092 111259198 509519460 548508072 880280828 528919395 576433582 116836780 201201310 826174387 884593619 329834772 782576003 534084827 559508157 372158669 905724777 842389869 903457080 471322173 885544463 150303707 480461634 782866139 859360696 340678394 871796928 214924419 941207923 158728714 705113782 870142425 886358933 541840279 652122357 307482871 548015209 335417032 608358046 729127186 834964148 7456112 611360562 628211195 794042983 582339912 773897445 236274102 767484831 64469648 596473273 658902815 840236070 772298090 990772267 891555569 959743455 892309418 984380451 425638986 535444632 670448778 964842132 580629758 715667587 464339822 563097215 465151345 854487381 859353219 903159927 419751193 521980255 487047397 630958602 558223387 973308320 426299374 456030494 522362489 705714646 817351820 841691390 610634906 665849088 303720216 671756688 912473001 978522527 319784391 604288780 981627601 991955286 248742266 923275942 197871673 420014544 792482446 830373109 335606146 849449917 455747511 749886264 402530961 556131936 509020303 721565038 876923661 958097422 381230364 672483778 27352896 101620320 214660952 333233800 164825962 914202780 954227779 989537206 342371070 869479522 795116157 999250405 776766994 996056331 770625868 812755296 50195479 701978357 543102897 761117171 380863258 443472780 309856848 965891040 879224284 940550226 803802648 845360595 412568682 497472294 788911863 944658526 460659720 490554646 3067465 258809543 116024798 949789103 134443418 521131480 556475656 822859187 422161788 561082457 35925407 193229897 48909427 825966119 900561605 996598938 861865473 951991828 801253704 856210537 914661650 978488871 775181852 962950275 842646310 953911790 288356415 955689352 686890871 787608974 93528308 574690796 27438837 857419146 302354121 737185106 394847317 832123318 272926894 525013849 115287448 965234556 244804745 777278824 674741152 778196897 263341134 649959020 218636788 357934285 908333355 914675308 407120435 706798180 925416216 942075130 688705267 892539700 465736687 597464606 350211457 774362548 635312988 735931796 816801694 931928925 733810995 774708770 466663263 936741600 781981662 822460581 232431006 326428916 821834192 839147861 674340621 928987496 708646078 957578296 555770534 597886588 149674006 245757176 563398600 866064616 642479676 647649160 760464463 968947972 539615923 996290139 760534127 899968500 263997155 429822130 26348291 983909284 874474637 874876099 759053336 768506145 298217833 457415521 613990039 970128860 809190722 940311323 175925220 551404284 943381981 978975731 992615645 995709971 363010669 758094079 189355235 695932787 103477739 720635260 227737219 578182812 394155002 503939824 225474542 593678376 252223615 958522373 471380315 689731498 612948100 943448950 837287840 975778449 70578498 535975386 141347745 551337198 738275236 767569821 660002417 669532109 308238102 819937875 628316166 688282681 499533068 535846276 420324948 862111295 406055439 962529649 679380857 871052121 285009193 610190648 515471708 937499144 352593976 956902792 75293173 480060009 954254415 967732630 972952671 986462199 973583719 974816264 319033607 691395542 3414781 522447457 832770608 900226103 735032654 955370419 850663517 929550664 369020143 463462038 586948117 839923903 342183411 986366456 226971810 866291683 805756154 931722511 934231093 993965178 694264367 750577219 139775921 664512175 172885013 884890038 391804352 987063618 784833112 794643372 393508035 831712083 855511474 950877537 700531488 860887843 872735560 885257741 922819276 941295342 496475794 578905792 17640584 372933290 675559195 789780851 829884314 987601227 75872498 566309937 524105745 682592876 111067427 390835011 68259398 989804139 673257912 704771942 539745700 658594746 110316919 339231091 113687043 719797517 127414273 571598224 953883986 957458835 982136724 991778003 939889698 947408749 688259945 863986800 779360326 887478619 708522441 966281725 638944837 921853710 317967418 835169461 399383788 576661786 410344530 456723558 768292287 839415810 934318818 975764889 659999737 956577159 6244911 32664368 985506020 991902621 49288437 574349006 642019081 765283729 957815535 982059089 208752995 495236165 201805729 778334814 91560037 223950136 714069376 996135423 267010094 513214040 685071800 688728076 766924315 797716299 201616212 780782471 640538107 754562958 368133749 924816965 503070471 824391450 513485857 583870661 504068378 601710989 168611172 784505132 540164619 602404501 535536812 622824295 830743557 859483242 295482578 960632397 634123468 786617379 607418103 614160454 615855917 696244913 690620280 813690280 556142920 952561368 692581211 966561377 476095625 757059699 419479344 973893486 814663017 853573537 29334899 132857498 970742448 998200798 497339249 885279098 711069771 767789357 992613848 999158099 518305649 642228298 663239156 794841094 60011810 438552693 948900724 961670802 828352232 864445192 77620191 855342460 635379480 722406814 818810072 903347586 567831729 702468245 260892642 289552037 308685692 351087968 567086829 830552806 857620713 983573676 988313957 990863474 729990753 983374927 984365681 993447985 59915601 814996265 392849865 557887468 947323794 956346486 485983473 759893593 66541338 988474502 390789170 423200795 711118972 814473998 22771781 789524971 731178679 795537931 352661055 797750771 846596898 848450689 1658327 624492429 665530672 853868760 478058350 584905120 846943997 877029421 65201023 425150244 172429612 834120670 556799306 660066738 38945601 980099826 734713741 868682840 539690407 865403300 513876109 607684036 826249239 965264165 117371702 586087900 122238491 321551927 102001044 954547883 768102433 768635885 259856664 922253302 771181815 965966092 727089822 951413314 475657145 760016993 556986258 678312441 24380140 482967064 61712324 332013036 964635192 978660555 612028714 723178583 676117610 918436263 994586955 995836832 888377624 960163412 385533780 509489067 914101199 948017379 521725399 990096271 398846035 488659699 462894917 708205061 945921905 962092331 626908779 933008306 438733085 619607059 894655841 985074565 443230307 885833359 376496298 480486880 207972253 301806788 397099929 593755556 51843846 244278181 918542206 948815036 684525184 988755795 262835388 830761617 579850429 987257666 595115293 754354049 917312124 934235554 377099727 661336073 604642596 933127738 186229967 726945186 200555733 714442779 167438181 929270766 393702266 706729175 693205942 848698007 651107707 772290599 779479327 843032167 306113961 704408905 67042388 92909711 27997498 103391595 358100178 686885685 816347036 994341151 301875940 514490199 555682161 905260004 223992232 500855110 490010429 937800572 585826789 790886526 127039642 594088066 801608428 951447816 962650785 991370249 14825311 797741018 503570233 802582613 220578963 226994955 637916272 762959179 507282224 641252373 708205192 865347092 867829073 963069355 935427171 975994662 646308179 791720097 953605079 965595479 980863531 995292796 734879330 993316840 193140766 484116192 814884296 935597367 187558606 868483449 531210969 791540279 63319810 450237274 989156871 994254640 380752527 716632546 743186903 752277859 74500250 750685078 166697806 785496735 656796190 766886025 137637824 363039644 167961524 855937470 864549633 871557920 882063344 970675101 227393063 768441916 770986953 967546360 162581491 184302822 780019369 879117558 911721689 963850648 142901610 653904818 643269111 862590736 676772574 793876938 895408744 988152919 693207947 907520041 124833305 722971820 512272970 972541931 169657210 706977088 357792014 529555099 979995848 990858512 680560689 843856818 922550801 997328866 215263204 752235268 270807029 988889905 133630589 246678071 524353063 562648066 234697249 928567596 807595932 986404171 156089620 716507919 541120228 796608034 810499217 843554518 667395139 897145287 608819051 905804446 43524377 636832238 269824274 842353019 205167195 777601601 220498373 794124481 612034364 910157540 675630888 845862933 923924339 930023292 102004232 736227003 443965402 615283441 787771223 852168833 174883623 624435762 301034804 519893766 50756688 425371920 84649025 375677447 418024908 844975173 548098531 834448078 884933776 898015910 231497543 525030084 897398537 934940745 654757177 671045357 186719792 769612425 346468026 849288133 727739279 746223457 360272524 686745987 847542988 916796748 472555277 812726291 481320131 652166754 484749755 619849691 200875100 421743175 766158254 881484691 513572883 533528099 35257797 459351263 66290229 590146642 230411574 476798341 208150006 506977480 590070111 781578689 706084752 741708505 690399165 735464277 986076071 990798913 532488364 719712241 502364398 568138751 571088588 895902731 912846176 918271676 774845933 864791808 687539546 696316896 315369901 446685369 718998276 804698400 265194957 601267979 225715936 340274111 380265968 540510145 964465229 983545152 783956078 968085939 654702955 920317110 146631960 735346845 720761107 907164397 189029168 640130205 639686665 680557032 109384322 797468934 873707019 980237991 669398027 837294643 475044718 590650913 46242842 258734260 782382670 815383464 98756883 473306615 163133427 357845565 162314262 559888885 180897305 190452409 203376871 380276037 572520607 598835770 237156553 617081595 114034958 265480718 182951184 286345138 508352253 962877858 205460967 862649597 142915307 801832874 842081390 872996983 574343536 992506970 342051456 707185928 853034450 992502310 918237804 975437110 534170430 644241728 797682326 883121806 494347337 915365374 467428072 934846647 928057615 975094302 200161235 279287314 95880750 349743946 253938779 499757138 692686309 885885266 196631861 942015169 133113157 560662228 526214269 629854337 610213133 942993577 757884547 792457598 308042470 705989592 927288663 995106023 117690943 803738300 808243345 820936337 421147276 577749832 194916093 833001575 384396252 954760351 336270749 918050281 973111088 981216953 9942008 301803725 385746401 987626642 11716864 252716023 531009279 616518418 21757746 321589754 613045802 656925204 19902247 96947031 889596198 984175354 77659341 369764128 480875935 853984714 244340904 687800612 930006839 964900100 139521504 863646252 530950896 851784430 187268546 648247044 845584695 859242593 239123494 444585080 354543842 500807338 1104906 510996858 345689133 986686854 640198881 962659026 38048139 805142017 533531792 745303019 60270201 89589094 797917710 987136594 834083549 955988708 617206655 915566316 160901371 803524807 117909156 269284687 368350318 605116461 337379762 652853608 937244160 958389895 345492107 660661465 380119960 962010196 368661286 493959392 610358106 793793063 990732017 995778325 289361729 660303289 177005649 386468734 267516079 813215137 406336291 797833549 739152181 739855481 583826827 931158057 372043749 419406854 331893086 781669103 654879805 956804244 116683703 875613400 477721376 970207670 510412514 798643777 539862492 663407036 897168948 970129519 767605585 877011692 369258959 668133759 251120005 630107898 687872821 961613509 351558241 662610395 572260315 649932137 936939822 988416970 444555092 529561118 579565916 776826558 853897068 979950230 709139521 725941073 49915392 370425169 407354571 600128168 502448017 726115141 799207827 952026942 102090809 195029375 320604690 806527144 305978602 932406564 101962904 248304610 790324629 895992018 647218275 893729453 460863633 649384162 85981573 161296633 628863642 929672221 874539018 965670121 447612623 829879620 203783457 578507639 719437949 973834431 626646602 899387075 140437336 411752426 308482282 322157398 431053215 657532200 683339572 776783258 613573204 647076434 195671723 747110361 344460524 488706542 334081854 458770255 50798610 514626478 75389533 731421765 874156306 931471686 723275269 956174288 797409813 806734447 691978011 694381504 724104274 998379074 373658497 928813831 262533481 713002162 134712418 227885215 54848286 852373039 730072872 991538120 55995900 285874450 967071876 982872988 643026172 734651787 218723415 429538770 487783147 536560991 229683846 933754650 273462957 328160832 288076887 377987392 372528340 496912726 718898747 871219724 696023797 829159544 57268381 611352025 289990311 379986296 173386047 577742871 400950172 630284698 797543298 834266460 268952643 992450075 39517247 478467965 191172016 951565946 253147150 500822213 672170496 690985281 804876793 891310693 464745146 975547240 483418779 530231698 667186930 708453168 387990939 950558517 194716526 698959012 548196857 660341270 553596651 763278493 966933993 990638936 57782777 291111931 310109101 817554909 72681314 72702885 2421704 139923980 417957221 464262580 444228898 888578236 342929783 734538032 201987284 648319069 790537893 861823376 675951150 943709580 382636569 672735551 287378906 430367140 941441044 996380714 525523760 623793824 46250322 507908879 232569841 306212765 479790226 749108236 5089515 703226355 850033723 892956152 690598741 974853665 576230224 577621214 10971413 770369446 573684113 600535159 907406049 927777694 107762154 524185574 806907709 998331981 454476878 727582055 335901950 467362502 416163724 817345686 581892211 665931842 531248856 789599142 950263899 956816812 593046079 909438620 984534648 992947492 831294532 964738264 519793669 938838167 359334792 765686856 34194410 910404693 565438094 913914077 414714653 640225031 951917376 996805085 368560040 452730285 164241493 468920103 594482691 842951681 997037002 997708023 383487998 544901246 617510547 651987452 307281038 724335900 578309246 762352832 892467356 969756764 781488283 813895589 495572058 495975755 507245662 668377615 763759430 979197289 247187590 373687143 812893767 882576385 839447049 919004564 891508986 951292227 21235466 44483988 76810726 748664737 408350548 447888767 949057867 962855929 888686293 976944450 833288758 896072619 779000271 892551204 24754470 241588416 272222725 390889050 566479664 569397734 317609130 954380081 923678540 946773705 527989475 957007895 302285366 505273225 649026713 941614099 973422006 992770470 209813512 422847955 814980685 932039833 566444476 836387929 499668711 842671629 975456234 981642804 88547687 970040421 903826532 937459860 853424369 971366728 652636027 716816805 736410204 989576190 998800289 998985533 267035342 363354775 61099050 355100447 973883953 991119554 652145970 825375504 452713385 827969408 604830629 932021964 90494903 408206099 940553880 983541436 166200404 264293354 581794902 654950923 61516589 866189247 544932002 719656830 195175603 768268572 887034714 982559486 626823138 934023968 65809178 363299679 38989615 543347188 842686744 907497434 541452730 949077400 989764735 996778128 168154133 520076184 834634080 842892795 911493051 964250610 461478917 573258676 642799323 964482345 277113906 809252741 703545363 975491379 59329883 862038922 201754642 468179020 150319678 542638391 899972994 963022743 608686016 689510344 693878356 772264247 434266471 617573280 143485965 755729473 443156852 794572583 900204654 913902580 929992630 963504931 71247851 464979006 122192625 744972582 258889603 362605488 322947164 339785203 418131416 955590184 326160332 641989155 219392244 293998428 786921340 815338212 281942589 841151283 600463012 695584333 546595658 719226544 660965489 686599946 210887626 538659006 762816322 817612547 843609385 900048065 252113538 835702306 834365539 848300223 580784332 697443248 842919636 850826257 549021278 816761441 419468585 695776822 382476288 810600115 268575339 858217888 185890197 627615859 795003019 940418498 950202529 953264943 852461736 997223379 664773511 700406058 383684811 560767076 569539178 592259312 203122470 368345874 861260709 978683389 40982042 652070987 611157319 915185872 364107372 425868189 416642951 778229508 454279495 682466951 756914631 830011313 329225648 711154520 169334110 876862665 244091348 647527565 722631116 756193365 133904885 320153854 564983554 644279926 146381381 606142197 623265875 819428637 106226151 381799990 761700152 819365916 150552413 639960906 1940737 812585018 479494943 846462189 454321237 981528028 228364629 935591375 464669498 936477465 982724462 982870322 411587127 583155759 649324666 813918979 399541654 417520987 695856327 706136635 556396233 995008746 721358029 799745942 727692485 987097888 400627160 761757684 159977408 743218974 895178314 897574675 889308958 971808985 502701454 874729047 634286266 925780780 583597809 623441299 512391765 935185653 278326253 805303125 545187040 971532202 530869632 858859732 998730720 999381471 224702516 304294114 508340529 890735156 137241212 426654379 883790343 889636054 509651863 613190295 782815610 992691456 569587972 700069247 170631330 608859466 616711511 800121696 812086598 854096015 53302778 556754473 517699664 857485016 678223481 927929217 857611698 873024085 740635186 847400628 458111656 698550825 583602450 873231136 341437098 774932366 40662410 650676076 787258501 839220784 443495155 850725152 449333395 533665633 197091465 614791962 782121824 857946278 132014504 228102930 178068120 588826138 687077051 716304687 789843999 975155524 166403132 404766119 226200911 599271227 403793245 963382034 950437200 956489164 993024987 993722559 81520255 611927533 382748751 955135599 243000277 948325144 623395087 917661946 957499538 964182062 271389198 335770332 876065169 993705582 896726992 979136063 19165651 803131644 524393764 682186847 391161935 723412249 857605256 924479447 961973397 979305433 813449344 900422912 854635559 964082855 457932335 650523415 924157104 943332605 689962391 908574586 339720306 796206772 905460553 931657169 983525514 986744678 573340960 816027512 78481452 484025394 746131178 944082394 630211560 632907369 87604742 175918074 629956711 844013740 596876136 622733517 810504123 908605937 738982737 748566905 272539668 830716947 166555230 941462015 703060525 916605734 90249436 762543561 103172385 593311624 722777286 945036311 778222070 970460817 811999497 845505308 113909253 393492011 326659281 741446580 418973172 966242833 661907671 681498664 47059853 750859539 105720445 776798740 496269201 770341182 744123046 893629244 356850419 622680816 943665062 985082092 879567018 984498707 332470515 676418518 117594859 600808067 346893607 904613169 682870854 699424214 982824949 995921639 460256432 524165092 292976055 538376172 178385934 431628574 881837409 969429541 469267486 872434417 814508952 964819774 135329815 921865889 836167813 851861854 622030616 916898894 345909550 685796894 227189147 872735480 296726191 940543933 491605664 509498291 542126587 842759805 137796723 671865285 320595875 440114585 979914435 995809964 97423459 644601517 326353351 630687850 649749388 957336898 773442484 799871939 745240741 844058763 640724649 811491858 228007898 261829277 503504938 922406639 99490190 445718321 726768903 931566404 133273699 170929642 307945889 310529364 61816118 126940339 346349767 553301932 906386636 909902549 956481500 994779139 679128463 966071011 276524347 852442648 795104727 838465288 622397772 631028077 877470448 880832361 830795422 871799587 792334690 804439265 374522846 914456808 659898755 662515274 786152533 996155705 435463202 781131634 944351880 950167945 301431266 729909559 467461531 771475058 156308507 624387023 55218481 892745090 735348627 797180702 135601768 270041185 581059886 977243628 92880810 243122491 565584194 976167271 477706835 626095088 243356990 616103954 993594713 996779363 880512055 987018151 493002848 900900460 263221809 697110021 780378924 830734878 691855271 961703279 296831200 571410359 525995228 677844651 72038287 959686182 88145966 145077088 433632619 435389584 867324748 983828423 16188469 127965404 69923592 677439175 801994948 886226132 610744424 738390518 500122471 809071382 324858210 613115738 101134713 139721833 579818876 713715750 310913229 512968026 167820320 242129791 227429828 418105179 369247629 383666589 903034073 966089856 965003233 967900661 140130131 280466744 56834410 735900850 671989710 763740639 27054133 965759721 770517088 989969405 526747687 788964362 393479936 741535094 351280630 797819144 787530579 964083430 332445171 405944113 723825706 845771721 547805403 986222246 503029057 635203392 525873121 625096144 304372493 407653691 411988457 671491904 574890644 845322501 577964175 990821858 330325362 525338386 774376853 942710595 54774030 454247016 623427685 713924093 192373227 290195639 50403805 768169910 577054421 582723691 642579 346903180 429643771 941280805 596711278 952547768 198494129 974569322 397762108 787098833 509450594 555178049 852544418 879512655 584814427 632843638 691792353 892021646 797921868 918547807 210375631 497461017 515057582 835310239 606920908 834660110 204375548 449131526 111416084 764968377 92330702 546773623 861171154 992900046 706723641 857433781 830213826 943766403 960936344 989586208 378971031 633632311 656294300 668231097 432653939 604795245 986142019 996035125 370580152 875428997 883506965 990032683 593117372 858265802 764218617 781300474 282039231 315406916 101760150 693849072 511386555 644482988 716715022 717395686 978967501 981196151 363403716 470516290 648810905 746095815 41695814 944316053 523562318 830702666 684695636 973920229 714394838 963878804 447518714 448042848 89513758 669258610 322947142 663301804 523656145 987756333 94175392 768625480 113391970 485680554 817315805 869462667 78026969 556954060 780537901 851654360 793775335 954190956 248718007 925615833 645403452 973670068 131318058 932751374 243910993 740206680 55548366 621756803 900983440 930392101 52543094 949195822 340244168 529358403 226436192 519713648 738005696 929276959 311480296 647307527 846438181 998278456 72992545 361097810 77324212 236982865 514286498 735265448 390546338 572780268 410951961 838225915 319044940 610456800 26049629 796123657 290999213 494754703 139002408 964004656 959303226 990031756 646718001 970345218 556987664 568207210 601608103 620781597 576335650 824205530 760144572 873836486 479762803 873909439 453799907 714175016 995994435 998509370 829927096 940147744 322011305 895589720 503473673 648156455 233398333 381288620 517466533 581735808 764076922 909509050 533993925 820740574 10568446 825950298 291211376 703408206 889742097 891409920 159538034 529816456 519282275 605548696 772383279 784739993 420368175 862123518 782456002 931687132 750396333 838871710 576700535 759241892 352502235 714223758 267063397 386023125 635438530 842024663 539956871 679158433 721365789 930432972 468918822 525086672 969189603 983237230 599320010 952357702 842042138 981199720 765854488 866471900 652055618 897473721 195498218 556337940 418793561 961616046 223207183 593874269 204097903 635106311 719808428 894169969 16117609 77184736 960101677 998042963 603317137 938469692 209512810 668443324 297337760 974613788 443641616 864359081 322242745 733355261 252601837 483917807 455464063 870177234 233009291 871072451 729733445 735258980 300442588 955789695 655089805 683406269 535727567 990726515 476606180 513173311 264921961 694407973 541614562 823792330 506958232 809621058 650994845 926304010 95803433 918525885 497494514 806250302 709404258 971068776 80594139 345085982 563230375 955452604 60061550 924194083 435738949 660663357 777096821 908759700 742518830 935642619 602912518 694006227 744706407 896975767 922331911 974061447 110648822 454060040 240325119 305046612 80638128 763423701 154565878 974842098 862984008 916218879 601841789 713392377 427654348 511384172 746044171 805148830 472945695 600311916 574158082 907345332 546389226 626218214 485736336 999231104 279971148 489334234 762743217 887330277 779482687 977546424 500627855 744108935 387720598 574671834 936813081 967255612 964715412 998335088 682877561 691248663 41753790 71557724 992849388 997961525 394576204 483923722 444517909 763614484 464850111 687562569 313053883 870057546 605451490 691687959 239349031 610736493 843034474 977166457 844945560 930332828 58698311 645875272 501092790 600919511 970502390 986200093 507635310 589731499 158214992 689079218 624564275 856705819 790542867 889301427 973568463 985079368 280174681 662281063 523200253 867210645 916069169 934379638 66397158 94893128 705286376 981014756 791427370 969393225 744593375 803166450 434230700 990029243 612345272 666790874 554413571 817209028 720200033 960635628 911731946 960344122 501681289 696750008 779135547 953234025 369639608 507084906 771632469 964361130 704218952 827032556 122191231 656635163 945026647 978669291 392765004 550112788 500252901 759114405 222846114 994451755 389431597 501049717 623040669 636132409 877737671 979278519 499783054 802352843 107419742 503970651 716877810 739229597 824785824 856274286 515931011 644427076 962285162 970040759 546876917 840298177 256278602 422144101 266858832 627425590 216387862 548701735 765634830 837928443 779730781 829588319 300072116 746393356 513415718 603286539 663635900 990080010 26214608 38371324 312821899 372811240 571591077 848129780 820637414 904366027 662562073 982824574 599997073 720121722 760271416 789438973 958121866 987419460 740067187 746066262 742311264 900758398 113769127 233504465 957383199 963186169 120049825 994965816 603507059 843659137 76426830 905528435 176462889 322477992 558380348 982722441 454912957 926552350 67299082 776872822 838260953 868501674 246324815 295458555 265224819 731176863 358126918 497830724 771475182 821031497 129017014 979996968 476166171 733698914 988162280 997081894 942182441 992427035 667367022 697393189 168722074 355333208 418610427 533202799 558300670 895378497 252292808 409008816 710019805 882124131 189316149 680557574 706323742 784125824 374003334 884691987 988952141 992149609 906307026 994733518 269614409 881738069 164130430 802266414 278591685 480274892 800769146 821594042 168588633 248672575 711130507 911674927 906605866 973491120 910383800 933488401 339128770 761651525 270946465 380384532 396966292 852114709 258220764 772706630 203729352 844458943 50933795 682143268 324750349 901515847 272390763 908334640 879621117 991628459 831585580 902239593 118864609 484617634 840471279 984594802 561008375 980058438 514121675 774273239 628761761 669526680 719393881 948420064 550039710 770682488 950435044 964380105 267124418 745825402 820354007 999157008 699651261 884558830 406186922 999372939 602880944 877711732 761338179 957262809 150968570 735397812 319163503 993171310 648478920 923705211 610633240 871802969 800343921 956728554 553864296 626497893 479032531 549670842 595851709 786394985 542427529 555120886 815389751 905637636 28167787 39785345 213621513 954184575 825403217 880685668 704169922 759384065 701768257 820401074 616535905 977210199 473510515 639106689 474277130 977077563 950011023 965806428 268363545 593415316 392388024 488691688 176681051 854654525 193691596 321988913 915956985 940905367 267294602 481076245 927168848 956501923 340395290 939050361 1485471 850517543 687196649 740210065 787494047 929163760 355008485 565995165 907223472 955855069 596968763 765194253 704647672 810237830 790923132 877570647 871089452 901075912 759971486 793514235 562122114 662154221 819470604 859845431 432330983 457112647 511939710 957530282 863522199 998321461 773344380 856837465 306461370 453144989 585192569 674818776 75466636 248281647 257500472 554408680 421805737 535735728 346677042 540655152 228296451 959775341 901943286 960981455 92744970 123517293 786070576 879400972 735403867 769289413 379222539 475542203 296865022 745110550 928370405 953554049 146986400 867166217 565977806 605020990 769061508 813553079 106444110 420072190 493409520 622516036 818458969 835949962 775522670 776317567 356928441 931793256 855828653 975425799 554842158 807376150 810495100 876183438 243679484 501386201 457503964 514316295 806095256 877214253 294310528 738687792 305726791 825116735 454953977 571319655 656888946 943963943 496906586 945634296 394750682 458997776 641619063 824926159 177584968 739734559 145218697 858214672 960938494 991848025 451264091 761693318 548998761 869012883 187462563 422868284 975453959 979424070 703201113 977632670 615182169 926832630 480725861 852966822 4256089 35100058 618464299 904793886 172136619 924316043 577664133 829058411 642864950 691758782 173060938 719424378 130546610 253246466 819567601 833646332 981838029 991142476 169487207 505472804 947454643 976320755 21425259 777425848 764920523 831953161 624964204 889813069 701272421 726529754 563332573 844151220 942137777 974870584 644160593 815398168 80491106 327491014 565864179 678174099 406592919 592128983 134050957 658777278 876636334 965903435 148169558 154533921 270340744 739562792 377523833 605767181 374885078 737844281 349365708 542549267 731062655 875387601 814726910 963114498 401615629 838646804 179659457 560030195 751879712 929104061 71642213 743385212 791413553 876028308 831325777 929859169 981062781 981372161 709662064 986590707 292385595 818662994 159402747 826600948 139937758 528282396 606575902 954690762 481146660 750643757 557649761 816502664 933763377 943684029 955401557 996522099 141397774 741406435 692726616 736533482 275069581 881173345 373396536 386940770 178064470 448021934 262303217 822637941 994799856 994967255 111580123 647286847 943722680 963546102 368702940 642966925 529238958 929004645 682629653 879113712 118195563 317082578 286402558 780291779 724450181 947645031 174110639 789209992 714593499 763568490 213469227 718201135 90956010 430440276 699798326 839196453 551799486 599665692 653524329 970504456 147758154 796941870 926424313 992717936 870703370 997297674 840949115 907908674 363025133 514966042 153547774 557688244 925090255 964992721 354307270 685207381 742154999 923024409 60850150 462035135 293138742 807970159 967825987 977892245 315447124 952543805 751827494 905490172 913516431 932344346 80836085 605774380 698442021 791561698 570675732 836410020 891596558 936298872 715372185 846987579 503431528 787771095 767783382 917158419 143007554 798263972 119556481 769922852 625043549 638031043 912802728 946178990 240224190 357663215 964544648 968352696 881897226 884836816 69264927 309849698 637259010 698718417 617554750 664010623 797336010 975352759 241279146 301843603 455953395 819233378 220945924 582025310 824200461 916400454 523456852 646373232 956498357 997279564 333252820 686717716 137691836 469622327 274122438 868394041 699964664 763045079 948337193 971244451 30335448 321509600 21385903 192709951 221669511 271889210 923478224 952921772 612898273 852986953 204259786 443615207 924522620 943215031 128367727 136092286 368956902 610060143 327509955 929282352 767424279 906243376 997371928 999110812 405640692 713279455 540145005 804093371 759774291 906177974 336156009 433575554 588788648 628568487 54826467 731481032 726018372 788396245 473572958 823502179 516609900 816792559 624516541 904418805 689857901 854105388 368881492 387630544 683024132 840064736 140467545 613202761 870588350 910883328 284498347 790300335 405832318 807628123 831457838 986039155 762248046 846901084 441944165 517509122 630736051 642102865 530033345 690114548 630047765 795927045 142625485 655034454 844188129 998654456 456696234 695959700 853477720 895345760 267145939 980763312 356263404 816514519 469880411 892562642 478328392 775147931 955989807 972318286 522798419 570553974 518935883 866613109 613291408 691602827 119602279 194425471 757756419 953142545 569239668 735892994 177079187 284893290 709111827 875017954 954149338 998249685 693897843 872236920 95038449 370308869 371974486 914430898 603720987 978923622 944762790 990682252 613921655 627890791 743357840 913733466 912680502 981777160 319514137 482902892 855943117 964576038 777399187 904970836 991358826 995604510 739947809 868729787 901828755 938374300 136030241 779790945 975227500 978160460 993092521 995899929 207117561 319585232 293996233 784573145 407584482 997011616 662456496 725976275 701823089 728570188 469177477 869335266 57936911 620098722 957540698 995179581 641058433 978782982 73621702 581458717 588517362 667123913 941782730 991714253 244819048 335922603 5221505 899757542 151815171 942254542 989104403 996666944 528838079 782886830 267805570 558194895 951523461 958775209 178460966 961359918 654745616 811947495 813343568 973296014 606906068 951879484 300271465 626589560 663578340 682691094 495822943 966594113 146380595 352954349 229816018 883663304 617475724 714051032 32950503 142075749 431765630 609380909 960955645 994032687 626195058 887714096 164126114 398310542 460254029 596271813 479245186 713490907 974420676 997148989 640880196 781162780 317842608 504138638 130652590 171527900 808407420 911211859 806506734 925606475 506898249 629958205 501345978 827242408 677009106 695476390 651337006 651353542 994342559 997220033 960988359 964310854 892453600 983726762 730837970 775901194 438424461 921599028 53639581 372098386 10416988 614145997 794154045 864392132 378512395 460088993 94725502 364878721 441047034 765899092 949031056 962342132 602044520 836348069 822845164 918190171 204221522 695775637 767103494 825391721 792011461 849255515 769011351 887406737 471273950 699452808 465228825 693964117 903139517 939811302 702783820 777226463 116806097 367964384 287693363 301573334 812751470 830882859 456210125 986904708 638804278 748930872 788173322 914894486 135358672 572998117 719735459 928214620 762542448 964781047 934649647 969116230 256395191 529111166 476144036 483646215 574367135 606198190 424804799 466440777 635713417 810310406 749608258 824019409 783327899 984738440 147638824 213905744 276797218 670134958 55452050 185057063 79181345 733998250 116027766 700196586 573235857 902856696 385858257 640965549 934347030 943207542 19626716 336630821 513339377 641446627 414824241 595680572 431900104 661678494 385667217 468277168 299224343 880354609 738102766 978546407 826418933 920819517 782874599 830049656 182312366 466427269 537480347 955278900 841427580 966684985 28901129 698305281 463637151 529895440 988500237 998353261 553684151 881610841 540034502 747673815 589259750 938631565 871121733 911216020 498943155 928807777 921583804 996525576 79482297 419733946 775578412 825594849 72357339 402365590 172743126 844472964 392945609 994486947 365629282 815742835 377068291 452114848 516426738 646437370 865049764 904034388 252303032 799178331 917782442 941740166 754231308 826771283 869025319 892168801 290413801 611402440 747235041 790541854 848031041 870973573 906744264 997806258 983863824 987270539 89983295 895905480 553032852 779578651 314400330 602786416 567656008 712716192 144289040 843216580 832723470 916286944 123585516 213584304 19625895 87171822 184049493 769102757 535189366 774374464 345220755 960622401 250883425 506275099 56489344 562460564 886867289 963049000 379459291 469604321 776455363 862872518 626196255 989589294 209574103 745810761 789017515 870316754 830193800 905261046 649947476 717955892 108948475 728861303 666272616 964516994 714123186 836675061 51649421 699770513 134331201 682596610 216960338 470512409 639314457 970727232 320917946 745627718 790777051 849005851 446554962 869947713 127762863 250057941 337277329 843853394 51436737 566680080 865963104 957992118 86965106 330042297 117229602 717951338 431059944 571889199 889963827 926607262 174641651 899752251 689688114 971776646 379505259 493361628 725581850 855319674 930878468 983900759 844072180 859812772 536308430 816877430 658878119 944452955 36339377 779272168 244477997 427063796 896207079 958721617 77596067 477466743 647226798 689933751 793504089 976950378 408871114 422580439 196604748 518099728 480399396 963235275 829562467 882160197 660772194 872809057 511016114 585025096 475433941 503423755 443278052 454100036 437574637 558767929 486411465 796441245 550424023 784405530 690516387 882869163 480724450 915631345 433835676 501831330 978105841 994884793 412445159 446190965 744007438 934171391 909631387 984706225 7228442 822533444 349955678 462898356 308270410 338989787 811655788 878864937 910225588 911452873 281545328 843285117 240562988 587675755 57375800 142685760 74165759 636493114 406273227 927220540 848849085 994414892 993832920 998525153 785458426 876830695 589954659 896623568 330710649 618206547 77961431 177656963 397696991 842093462 410627532 997970201 7206683 281263397 2585150 836753147 571786652 981640197 377639909 805341032 716943462 927640142 320275076 860682690 691899667 965244594 126616166 503056759 291392512 690818071 629192252 707086064 594506940 708983169 355959840 974473293 644312 913922604 472742688 513823697 411554103 602394514 465264738 854400637 234504456 781365816 69892802 97676356 942478961 983998411 752788192 983561978 267367142 842221500 242938010 977712293 153121801 543072318 815511312 838397787 202812788 505942186 41514532 515442022 162081548 459576868 358489905 981889263 813243601 829378723 721270078 738059094 515947827 556552841 565111845 754591407 39961213 907335857 561055779 966562482 591250458 651036350 285802947 787012486 719648763 824157856 100562919 511479952 473174116 658607032 352234576 841421176 225188881 787465180 332317078 604145354 107109982 672079594 799054970 845649865 108275879 271628588 463180042 515338111 990492241 996196915 729317530 959979769 975359223 988050143 153869480 282259855 161530213 392556475 64105165 331290103 652960904 799051920 94602009 271218821 737981207 947103284 325821517 449905738 143658903 587070124 388077419 772565735 220023973 998848994 554429251 664519097 364825884 796823563 988841767 992882096 822117382 947091613 219737128 824543581 445744295 653328215 531645279 610120082 734182501 786050343 148603190 555473341 350809158 482145604 988606050 994571311 521124213 576664767 503691974 658164250 471171858 960572605 193399832 663903239 458002853 831613722 694438494 755197374 77716052 161779590 291495489 744276142 803455756 862322095 353948443 631243847 615703985 992699455 518495974 589760005 3303607 725678475 107586770 262475597 847574740 932183271 576149593 669841698 77491945 260105366 819806101 905091548 59038804 121559287 46466304 487842220 147880392 323000383 432268971 922783979 316720666 687927679 869964950 911523283 789696733 868578248 944228273 949234315 406844012 830444323 975697200 991500098 789685311 919021412 137512322 820055450 845290950 851640507 91956296 513458185 93061776 476569454 817084735 843211930 98987871 745084969 765031250 930109503 234228233 970083828 118431687 374303631 412735263 660681067 553055096 635750365 330140516 783635208 756526203 872257722 506934607 990747742 725441740 869250574 99950802 539970695 816459197 906886845 495676770 705304016 382550511 528465579 793158493 967468357 688788600 849322474 910652685 943683026 932943132 974200379 708362493 852069763 47428165 747424972 274341490 328234346 78245305 198667574 966562158 997689802 968997646 983001789 55740061 272466706 587923581 856977968 301444300 868605691 593187516 599967009 731564816 956494778 185556386 228566056 97044914 98023014 848071428 995999632 171391861 325753130 942057244 993914445 613052609 621365678 469638322 988015321 473152572 996413463 395969664 435999333 754739112 901796534 90631030 321853487 867790759 899242651 369965519 596197053 325218725 756896226 439253870 890819069 24575026 505349405 852216752 969923720 387382101 400886519 622623901 926790586 591120832 838090212 993768503 994204773 230819558 664344869 441460202 451505793 503229033 719763642 425712095 585161289 729154923 922071529 655715612 750337702 692197134 715490551 273949771 291299828 167352320 478770088 458682942 909085969 530840024 899994154 495030723 649608765 257932799 515105617 575609341 804783762 449473178 730791939 257061686 664121677 719552673 827911519 105813149 122334924 770158485 799164170 699037629 700082834 727588250 940147939 867334186 927649114 168529847 285008818 305820517 410292021 958023378 992144734 916301053 987733377 736366719 796780985 590441486 973785302 127127289 722538626 270667718 336991423 966997194 993529536 896621374 993125010 620301213 650743865 426619094 913846728 946128440 981457637 157801938 319709160 957836641 978331673 749415131 834169915 858378649 967814870 519941725 571701536 4350139 158198578 848662987 961328181 802557632 991789462 120266365 741361511 393411272 763026046 400444291 569022783 983520362 992051300 324460220 838339307 455455489 527676325 994595083 999369688 497807824 576829347 639910873 654624278 98343194 624622405 269270309 514166763 239454569 313823065 716388946 880791563 315858187 814749048 904003528 980865017 927056322 981582301 532791844 790001049 656635647 827526319 6299073 768853074 652433496 676074098 250927802 437787817 674880271 926479381 92437417 553389801 788891043 806149106 853470682 868569388 328993005 591053124 137945499 533469097 857705651 879405311 167816528 188105474 25982493 168594893 904530665 921124812 743708792 819748835 588633864 815598784 188575865 244001321 555251581 924372039 515417123 705260695 270418213 913302769 378540223 909739499 958840557 986547926 587526537 783204501 161852749 844482581 923482520 946507938 841914631 926692617 768067923 815121936 518963214 676744716 674413482 855756083 164561569 953899757 925640244 984701286 884671857 908010121 766653675 916146241 180763831 753037366 247501383 701405260 864897922 923018938 382513845 614619770 179907679 889867045 290583542 859449510 557438043 807015970 318778030 488116068 277428372 724890454 526725740 611193784 279118716 830906473 887185992 918876573 117822039 854541104 300680703 944588376 831778125 912711771 380981412 937877745 141621320 426818223 377263892 386011453 445007989 985414460 967950483 991139084 783655133 843625709 524013953 814760422 493579911 747866123 882025591 944369662 694936960 851474782 981534659 983972830 100361285 987605883 491635366 996957089 943973937 966624027 705667507 783675787 788461953 813299261 183368044 689262632 389047427 599890552 455656776 460681528 262605805 683932365 70011756 760540961 389717377 697707927 981133433 994290077 22735725 57222492 545208679 688559097 898138402 910777248 173085048 911985466 200586918 654356052 137007879 667978892 682047225 819345460 23400783 948371310 500485796 761670693 30836608 977273541 37889470 654141393 149220563 746039336 673623233 987122294 505101112 568905802 15533159 662342876 390883201 775128624 947135458 972262584 669706382 712513212 157407784 813449524 926099703 988838903 44006837 228140997 128526500 368153107 599932494 891457686 64895395 219352340 771370757 896848746 954568088 968152599 309158222 348121103 721108497 819532732 580264056 864443711 182360678 930008604 995558595 998321798 647211287 729984908 645726482 997600132 783771370 986355539 213738243 428957072 129840700 446937543 797296448 939521461 994871073 995634358 993085554 993415129 714356841 842877009 521607954 571548491 516891738 991028283 88681601 615921234 689906086 877442018 37196041 622471329 518014137 607226837 257157489 321690945 244232091 337594763 990872423 997565828 973749340 985407829 710295394 795903680 681372724 975796330 740622138 805975103 121137843 956439537 224274656 899883763 388968214 959881872 426867831 623550578 314877609 783142603 7249838 821956663 201591214 646245258 941121529 986844682 732316401 990319132 844872857 934375792 115532533 675285574 206307686 778962249 664076402 747165382 484589405 909791788 476064841 684250198 562498879 895334454 485742457 844109316 56348468 385289274 348856763 983968534 341484545 454199593 505539529 784580545 14148045 40621991 475670256 514618254 146928714 437790795 523160371 744939279 878882127 898014470 498495724 992722908 357800464 680316706 874589157 917317407 409955842 600408379 851398506 927594844 651504539 904881311 877197070 944240612 500974454 930965120 445499573 992067539 915987596 963973513 321563910 513575036 483347092 516105347 401509042 953193114 604710379 848574156 729302151 755496035 335445160 869246959 972269484 989148581 371905203 972098337 315833387 976413206 506036712 734973920 386722225 770820645 942905983 950384221 407097252 637202697 936912991 968252186 675152126 700850951 741748696 794760196 106553203 408492454 892638693 992623041 493328131 841203782 359381470 970485678 335026290 835009522 928422530 957683705 793804403 977887481 903548216 965882891 621314025 661757818 489089141 923714361 897219736 978634891 521270851 526558714 957529162 965825678 357253189 799626212 800857644 893388890 581128185 653027507 683293141 887191819 864445780 938252991 357259056 558066275 742551002 778747800 947203060 998690679 424751911 862771458 218932207 643462390 595761088 675794022 546944196 599806981 523087220 538436706 223426518 582993460 328608521 851023685 759947070 855399502 363260847 723828042 545638697 586257201 643241929 825318683 736247292 759444820 84039961 453924827 527342985 881667014 860082253 938436136 633457113 864431740 183965699 469077222 541661100 887310320 419697573 938989299 662408688 969319065 892869582 907349918 94391353 475658873 22365412 155622614 220920061 530868690 366504416 765967081 416464482 961085723 699239481 912131979 383657901 626003072 982334956 999274743 961530410 989018347 51847901 715146629 729133107 770169895 370881932 728398335 83606436 542132348 43258167 444604834 492539948 609859685 567340820 725989184 55375225 890738663 822161010 888131895 497598433 987340033 259114403 370164030 116677113 803685305 128432459 882377576 643426951 681187229 824074332 842163788 771332236 837596971 826364693 960696661 953004925 953822810 21724393 513129572 565145776 976544872 291962859 999169688 773520469 930859563 232305954 980787862 996361073 998585225 874205734 895430649 884117600 958166906 952184394 963773358 442926773 891479890 92308709 973574487 717251314 947905541 66427541 705788103 203386702 493048818 141791250 353735490 624774729 915539061 658526766 753685953 539572715 975495899 943305500 997739356 375326062 384696803 899358270 986897267 271262373 405423438 899766091 987526756 460035578 855144249 439498288 718240845 60853143 846462252 836057276 922842781 21452354 525608861 385150604 400988401 588437403 891002250 899265472 931137861 626741325 653853757 840853162 883753894 635674447 676590667 612300653 723997768 824129309 973302328 808262193 904125316 635134243 975562322 668638545 710396313 408450289 924051020 463795756 975441848 146408943 821678457 405638407 871410835 146505340 156080687 378226160 529818144 255492631 468854378 205559319 940999387 821422211 959662567 935500430 957003040 189730785 906275365 203253164 576501817 992152363 996492268 579271389 989556056 729255155 763670905 225548148 996744887 81698673 637321870 830967766 984621995 675197316 877881281 528942324 947469734 862223174 885014371 417047429 772321710 569560670 949603809 480660368 734631828 422127254 824911807 779120312 811811151 471962440 808969944 653435514 761884360 348376871 808956779 764840630 901617305 645007524 689193921 107557722 611174312 483297000 714227229 744641965 801220566 647598909 927918438 87288748 237651714 972243101 976016061 603774656 798607901 512797464 791149496 229720263 595653896 158646701 196315891 956152037 976448005 923622827 968144079 785064015 803021720 890192456 920189926 882960735 971920040 450061684 489464732 430645807 460279523 876128914 890814001 171955768 945441785 865814821 994620691 46228506 902868184 503603176 992012286 740690281 971829493 553032429 658904555 577292514 935872953 627244273 738920460 295270068 838879481 352701283 965225468 541463240 610757281 502121302 717841483 299489838 923969644 878854494 926198797 969972987 971253245 286169196 487043107 23183546 866558130 613087259 897136487 9781437 555131442 90489819 100195426 409356931 632252942 609814219 832260362 735831968 982285852 650832007 962313029 419266732 681869409 823798938 849981274 26666036 665549920 323727804 728241720 429471000 469999528 861606728 902539914 22411859 736222286 430546652 565819410 614190861 949796853 856284968 881710224 509398276 953346796 909866661 919685346 744822869 832042798 156211009 360422545 254934948 474423656 417729562 832347807 925380643 951673812 586991137 690032611 105105706 689880092 420925961 858391694 851534970 896015664 407117909 854115693 649932159 887206539 341280092 570221259 79416766 500710515 248070080 671168347 653211312 678920969 775446649 947918112 247661960 751229834 702873321 887158050 898541900 918707417 45232882 281295188 751067386 823504747 165735314 932237397 160362639 894507848 247255304 897826804 159611657 992846628 950562934 983805306 308622708 420849473 583433536 753396453 304035519 498599985 284806046 581338489 459158097 820146274 517209487 780980402 916912481 923592053 158479596 679896948 947551528 994809003 248739398 379895045 496590244 965381716 652210703 909512719 708216084 851307177 594461719 605733804 904835880 960985431 876811104 932098595 494062154 513518471 965802467 994453672 700364326 751682511 301538352 437418104 70100021 581477273 551760736 776074725 873228977 976341966 117047057 247338383 520048020 585670106 29687215 736123494 117220030 878921427 267813528 689263733 75577625 773639382 161293993 709641967 899325225 937780153 458773665 514605648 208722044 770547126 72559539 877322469 847101713 914131003 306053775 466199268 735078703 809388572 275674234 388824353 137809396 647179636 739609555 884979885 78947393 677379351 502724319 514658488 955725638 975495117 42958358 717925162 485544645 965019138 670424765 902882253 36472500 473394749 966523902 973300885 275520482 463644430 148692416 224985111 710094624 915936324 789568200 983308404 191560152 625745432 407158666 672575502 393024333 876221958 80847533 620011408 496617035 581884385 735942189 825307292 677672968 703519006 2535212 930868737 899932303 927442031 277782054 721418804 20821493 989808208 339433525 680254954 116626955 476306649 439632423 519673016 721156333 982095330 693731944 993975319 826123121 831228580 218566324 316519859 507582326 603078259 196541181 904905470 906440696 950458577 64229702 810336018 96318162 440885451 894797043 973624562 840249333 898535238 22188654 899748864 657855665 748825761 793033662 957266967 89083710 688690904 808838413 891796286 265603812 976402324 405199511 726712738 903559527 927440621 342277848 760125830 118486710 722904256 347569686 768768877 618607977 763579111 76553868 966960712 578231085 888855444 486110054 828656332 624499256 887536006 722884328 969023170 339176186 894987002 367270961 803038679 744932936 816617321 445720951 558597061 337660419 874787124 264339884 857771894 974230899 992235030 999078100 999182694 819427745 990445793 89958799 514610426 695033352 803461065 766036018 918805709 263410724 989632143 966540074 980053300 42804128 453070364 625090319 744853366 777046363 862736362 129315544 746088736 31090470 76238497 189929770 627304824 258473863 373470371 472971218 882186170 897342824 965863333 127548878 210283660 158510656 212076565 685462435 848844480 664382494 796575719 499191499 673477536 129424629 629831124 888776894 945446191 835646022 848453884 676466145 953386931 95224210 789978758 161388355 769538398 6790474 756518161 810432135 970746069 772511563 952302949 660536088 688324262 927473200 935056652 687613776 719767905 919065 129143832 451418064 773792644 917971531 980246564 222386040 763797228 2086989 325266423 581293027 977068325 751593846 785731258 962475115 970964156 875295295 905405323 539019226 540820597 412802105 433145938 344380982 563578818 939531297 979092704 429231342 626051001 126360061 900672251 14648891 236496039 900157261 918793280 229197165 684163610 818288157 976156437 245365130 794719056 551389965 922429820 528437098 718019135 516095309 592317782 940444675 971608165 539684663 785719748 767226432 871044931 539963547 918918629 869591363 982110936 116565382 319846571 401459068 578284465 921057742 989799278 798915987 909846232 78001197 590082304 598023223 751796952 54712982 457795786 729269926 787385724 49340693 952421566 727100326 960296010 853491007 986229610 736844009 784380599 902261955 944051220 965450712 970050886 221426416 240416659 181079925 729150250 141437803 637501723 236884460 551610489 182187103 965212953 805811308 930440305 200766558 507697019 429402424 472580975 267186020 304306338 776873867 783384950 69798256 891343928 574176935 639978973 235471299 528404097 738491567 872107850 912131130 916109739 914056595 985398011 798512389 877151878 988432225 989389468 802333328 950348127 677882424 787781078 954567752 990146483 576992764 960885082 48514299 343691899 217774596 639839519 761888119 983816662 593086751 728179361 653942246 976376735 911597994 921430360 374243984 750571253 912472841 925815652 328797853 976838724 860522271 963292406 312184734 888024652 69287135 973050770 181767008 864859320 725369125 993417985 830797905 916062971 169206620 256837600 902844255 983189557 903651505 989499061 972635965 974774318 173851288 410983395 942236923 953033342 346025233 506215518 278700669 390260342 516962250 937308349 896283287 950939275 505409248 778178026 428291358 940585583 27904634 448282115 830590460 952334382 7307798 409042951 668435240 699525326 810054952 862382745 728292800 753919508 635316454 728177377 403271895 737763128 250486589 940994431 705680161 978528916 67652170 722394348 691998416 929695802 651228206 879987132 810281868 936532656 591711033 721278366 341539920 531117728 556981932 902741851 928628541 946414819 90106687 200041869 504530490 966182553 849024293 957781644 848364229 939720702 57265010 111676750 433982852 973732068 884850737 932596511 365383870 386196264 613704077 830608427 305840769 703460791 951561420 978717067 241270168 402799074 217101201 676620661 546082759 930189236 449538668 536287417 139477664 505074370 547338502 684889122 166559325 987569303 868281740 890817122 731852672 860417621 882142142 937714355 875941402 895867926 509343737 775446969 756517834 971490190 308125324 414429037 365298005 568362786 291950675 557141835 533396183 571541047 571020111 891907251 362316359 974513014 513884098 628585907 636801232 948607807 880732184 968464553 42400095 558731398 503359961 871918985 222432930 437534926 530118048 682401888 249117194 515400336 236604589 711338268 609087386 680154985 91072228 759539422 337393745 939662485 49299013 317503972 33808364 441442307 288646402 714587339 606770289 610436315 860667298 862209128 921111683 990938682 26453148 609987840 727528294 894279030 410006556 660106235 573012273 634024307 815199142 829993337 795430821 903417145 934577488 987396115 646634364 978959942 939380701 973696798 3321657 228924698 413192077 650543553 696100367 779588562 631999781 762468284 640669586 857464787 159418004 778046429 472122955 870894540 213245526 387760875 508158262 897798406 624437068 653633947 474467716 639627148 908081936 915675433 230304761 552647122 477084094 833349936 377852501 851460707 633868957 733884625 66910877 313658341 869546274 977426090 755146337 854282804 16320947 796113183 726108960 938183594 181341449 419152419 993338731 997710692 827359354 956210758 713309512 976933358 872569119 880611880 77248007 103617451 285498934 819904361 530595942 737789817 928659037 963110146 710336643 966929695 367567503 817230385 791600945 964507414 910001735 971139442 260607154 975114290 2649385 14559814 142730028 549729213 414535688 481578892 747065773 811387813 147744861 578461665 136371783 794479194 378545002 931749957 92852536 110689122 140038052 778764761 737591913 850577187 939387499 964189912 560437634 733181819 907944626 974732720 618877071 741503019 292417082 413486786 956929406 988632772 670073255 693242785 664776224 936315703 605447286 831387780 299768170 740837842 486498328 726906521 840467274 855543566 521256442 733309764 992154161 992831036 776638830 969010492 577717423 707180635 482252550 708531357 288289680 849011119 103775207 417492868 265764823 747973992 799943233 974392272 318066858 957922890 499659348 844935882 245172211 416857029 620735129 882014283 518427506 544317417 892107388 939572311 703885868 983276893 294709303 407379832 713880305 894593675 169606697 183475539 289244608 319060000 972546529 994651478 263307443 412541936 274576460 534717802 182635346 729581918 508888528 711430060 663234754 735029113 80214931 912233159 800494738 924426468 80685645 497813386 733445054 775084262 260363660 888914529 500482476 972814304 362189916 369379682 281975473 390415545 252774602 607119084 183414626 567123220 820711175 867699595 252313160 299606285 896214476 939493594 255057113 696448411 915556014 982806086 157397111 803623962 973493083 984274660 554046429 872605168 195790357 773930413 527368339 724965013 770023879 885210058 160660960 880618824 125420839 872785348 420583957 489755646 681738753 934772811 352961284 766925994 432994158 495508344 543093363 863199984 935355540 989259342 975884781 990909168 243700462 811443995 888334685 948274848 552321811 561968106 81648174 564764610 398564777 447308495 181279176 909872851 458679718 906006999 427581585 700639435 122097642 920371166 642536240 821398370 449680759 959226659 840746602 916936677 77257908 673921745 739364988 962031600 509205096 810124834 87906004 629284364 113114519 175621705 907568797 918443986 555772878 813634446 847875421 935162361 899235004 909487250 443016541 725093328 24854574 710268130 737625979 877433144 581027452 595561521 55709650 472530909 281697597 290996498 46859392 383454854 351373298 486821928 172844500 855082195 973494072 987730968 935283152 999350351 409318253 822270901 541281651 955647739 751729861 850156382 772837212 942284782 561227555 817380020 241015173 689798290 259388241 754882079 595951479 821617893 602392390 936093302 962368357 967859977 106311429 249633203 166703984 300125728 164979449 551255640 657895431 967509704 591463426 616138468 978451422 988436473 343103825 891213277 11182510 791454929 136811918 969343397 272339463 446676874 964239856 985762890 187665161 522292606 702830200 767999630 226702050 672459816 257334786 745471961 266201701 835582528 5708562 449272222 181118577 956624115 64161810 608248996 545313424 953333308 829407036 978388029 55583685 569542272 774875390 969964346 181698334 504120472 509578229 948102502 980754085 986502831 866012968 871367595 761392097 939692059 859087381 984527227 639056088 931141832 152161407 591059237 212693874 287019190 758391733 920815504 570676441 628846195 861870359 970014150 340082977 985971957 758115100 971585407 536268379 646730829 862963255 930753215 340023712 642361376 54270833 454201833 613180427 971371145 116407982 466261057 300101304 860765758 125711856 500118926 383129155 826877250 920632022 974711891 637585295 981043480 170039577 183840381 260607463 773255966 441810534 609583540 925829294 976681382 981710240 985756573 459809671 784070918 290474255 327081856 359594935 759135023 801778977 924682594 808453069 856238819 393467167 743032457 380610175 938631002 63098895 432140169 751796030 916959805 828863568 954823191 102346302 969907290 335589051 431611033 116297707 661079212 228399635 836343018 837007282 939806483 933763189 995802044 560117136 788295730 663968470 678924627 521431845 977665434 504801537 508169407 440317754 713296561 64454283 798971031 152101643 498344402 9061564 807090114 339771715 838810749 860723240 930315938 646940103 771047357 163508380 697976123 825597180 918959083 783710395 889570086 966948279 979998980 767042127 809020759 89936782 197850786 481406595 918462931 856886098 878813320 88008207 823390005 210156953 873554979 149636307 453850351 368031832 696774059 958896601 961783146 570423663 844482469 181822500 934825909 72381153 545095455 136753832 992578577 920166879 967448376 421753861 468079725 564243728 680024805 196733204 825271058 550336525 706088770 9938645 272618291 934256748 997458338 934479551 936197947 698785719 956607782 774315652 941558640 266562989 635106383 485391049 738810200 548177749 919594975 717760657 908789190 129203091 664933666 626138627 684222098 521359113 943760862 585801808 862059957 780837014 784278107 309232716 662667394 953274404 984058317 184035775 816796008 370474468 922571873 690669827 953876399 222045681 580436402 24212555 383405895 55771435 439065091 718945724 784251352 437735988 557822139 157107238 324873367 35574653 693111681 556861248 838486947 91074485 591079324 368253152 369829995 670243005 751950411 777683250 795971410 281749239 510033409 752375100 855460967 605484969 920049772 8189462 31984980 756898254 896659184 18348979 76567445 777551500 872382492 508273825 668990239 625732735 792163989 718269556 992315513 630407844 780489914 244742154 684476475 56177951 562738545 273432142 477299813 21090319 316431078 792754175 999341693 710305731 878164501 881692681 887126887 161989045 914197650 893198411 977143105 390252162 539467203 881572735 933153657 658505535 870764735 929377824 978086127 16815340 772259975 279681279 628776583 292749046 430149016 459293677 469139923 213024043 618481913 204030724 805474932 881473468 910108357 915125277 965421619 146092003 330247019 314209038 536491669 279150315 923551950 581567054 807888844 529802743 735649231 384631022 929315913 416123929 559973252 354140931 593224194 553678206 702064214 904445409 916583638 888181176 961413254 370833541 482383728 48506093 101877251 990815009 995261838 343075910 546538574 283458951 744691599 554863145 886745279 185127348 564766874 137916290 281168673 337647127 529042419 862752280 882960046 639690386 790196505 735805999 978437255 134749030 565370115 242207762 695094148 361241533 617905649 300694153 584077789 797020780 879538238 205270297 740078302 152145043 381087315 509370233 783194137 468656601 704049683 794500818 965965739 351160671 904564071 257487472 942327324 538425889 717009654 419003767 482743530 463801655 558489058 939487677 991477403 689322574 912562528 119607456 170342574 879908297 942360334 374076919 815087580 169270665 384051792 982483186 993044205 322256586 345641534 142445929 882147782 370364520 999140001 265599638 637103006 222629206 691165790 126264608 195304653 804095762 812469212 240093386 649703302 293680833 609313591 224877938 457653189 562185375 941647330 292569541 839897306 102133591 527243170 112811924 307645997 400290972 779341667 192942277 246912195 111416998 469101244 663510747 768201895 591739294 652046368 706490234 992384613 354939700 946368884 937477634 977847643 81315475 272570530 110960689 996980480 13905564 131672149 32249698 775315845 322571091 804348891 19035485 517724146 288030117 705203277 720851203 809687849 750012415 993577976 994015722 995496252 268187706 334561035 412237925 521727864 295406272 643444352 66906197 211615906 89443793 555266630 867682000 919038981 831208629 875393359 856562966 945786056 955412472 957852704 949051304 976145730 709925757 732914324 660526399 887316871 299487931 981518836 733552091 746333267 734479284 983670603 297198111 878872594 236770146 705899605 658980690 816101862 816528212 945106920 491820361 740080967 591855331 725506225 221132794 500798295 978033555 989717396 930354012 933333503 184074052 313265097 886953142 922859536 832753162 836177406 930730297 948576068 334923044 346749468 216564624 414482873 817625255 894728914 208404791 290164047 57163754 69910443 541548514 778017698 598716249 707853519 430043017 765588125 75571231 132719853 68594931 741725703 805028201 973067071 177995375 639037534 111585798 606749298 464689563 855177403 104538456 262155028 591872102 858245050 146578711 835004831 261460436 917355517 29820848 427783424 168213539 841485366 658445507 825467091 870060827 939965516 619397176 817877534 407838416 867771007 851510347 966812296 653888612 784827411 969109633 997150535 302951735 421117158 837303271 888897401 368954187 594414308 101661204 769119102 472113800 667946915 572303211 663200530 957533433 964404272 71492705 972990467 943169624 986463405 694860830 938789050 744346462 897046269 852669070 866026740 960390388 997814196 201759323 721093690 217476782 531291685 864845762 944950834 144533089 224640900 610525164 938370844 468350859 634074830 408355430 828537379 454689343 593906666 614336638 674476112 3853938 189788027 490555182 519798954 965205042 967122050 910913175 937430049 425443193 918193755 971069038 979306039 9479103 407441937 260097692 654360454 686421181 987872182 260199283 938100162 447717424 514914180 761341404 857642761 190641268 213330141 839046814 972822984 190171805 920904324 14322870 485447527 912937894 965885118 913184705 965376541 463788763 986261648 979420461 981832581 429478208 523561346 188089721 847241970 933669774 992805666 978328958 983359390 387798757 400959334 823086304 980089066 732737659 847584598 151969193 917353088 780764141 997525670 600529424 672660029 213008895 410880382 335403354 818327648 94070685 798316509 50103232 285246600 443772335 523407328 693565696 861197259 476998076 889577424 357148843 421925301 263790843 451058567 417583644 861774536 51579381 952427996 220804075 738740057 672862333 923077714 928457019 975474933 307718560 992517826 636715148 662788654 570700942 572303195 822766236 986301771 112030446 465692977 338235405 535541105 8572754 240404217 19684317 283883685 750290807 813356362 470122979 909832659 778670093 796509934 560106022 746419218 440240653 950496613 521575665 972422126 231044365 444483378 968738411 972307836 271296561 947249352 634825920 951078635 714477286 859798916 288689443 834400293 994625196 996829950 235738307 974258639 11671056 516869251 245553558 315065505 516895523 985553938 868854818 980904072 164926779 273253985 332661972 900254820 760229136 964054460 134000641 877260840 189176556 806303343 298504646 959569760 379939620 789091091 449939208 862535224 353597466 954422204 955304405 983395486 146704443 422373215 18947197 952748655 214290446 566345122 223626604 654010259 362438815 367872931 583807627 937836718 143608964 201349414 668399929 724973557 71248971 303106583 592336963 602011751 148633629 505905645 923265922 947109576 760137353 930331348 427255138 555114745 364758730 698473832 83485536 903174952 615339533 960477277 854798800 905929988 773970365 852875888 656460393 931486167 581571455 689220568 200377125 479785308 537048884 645102589 11832610 775262975 482924570 904136677 809185114 934128933 274068682 423593221 873756137 900952800 886560928 991442052 872729178 981102514 860149493 954237921 305137719 885254044 351735733 583777206 997716380 998742689 129376213 914151016 540527685 770854807 895608292 968495901 530729713 557279002 866995264 871304372 467317655 698217718 668851925 782565651 859147822 966755780 399009391 959207769 322769104 428095949 526533027 968731457 41628066 280885098 238548687 827805291 971126856 978635530 987569494 991281742 65237171 705392827 456266354 846682956 811756556 867969592 972839885 980458634 846566295 975333680 98655031 979794595 77714253 394900614 491132712 860184406 802802220 985948731 397593458 833387009 17363431 286674358 468993754 927179922 241497127 823086297 978524200 983487643 521611138 838693203 961858133 988755859 365360610 735529784 391999703 543216797 678745019 905125933 777089267 945184994 813482029 956318353 430169695 996005085 554979440 946749458 432254975 705610843 201407000 864932940 541861392 758639569 175440226 228906002 973552648 983909268 145698298 953041230 510363905 957079512 998769641 999123747 189922572 191737800 864733077 926188533 833954575 948717253 607962249 717608375 997239819 998141752 13552094 375901709 674406460 692594518 835215653 955230257 855334670 952305198 932111072 989796449 414714338 613970502 782714096 823252327 336504890 898024865 153084237 407864604 594391339 744485429 236336197 334444947 414861596 578085955 40084475 332572012 111309559 848717732 582847985 750271923 115258306 755072413 332019289 402351161 8837369 891613115 935788595 936691818 155796969 571828229 833176520 967056085 880373862 997568777 407870999 777795579 833900690 944359492 431893249 760017256 450814603 795132496 244885264 437965407 752560148 824157899 892056045 895449747 88703512 273871700 895749854 993522172 910109750 964134101 508129637 880989076 464407996 497495552 749956086 778015793 696000701 698631194 641695004 755461495 694551862 723887569 310922721 685866703 641648128 880731945 702864361 873845727 986842064 996168321 997768995 998625964 781847339 899836025 663357595 677570886 409726449 744641959 509466535 933172942 3380661 614570661 197452895 361817271 633680586 951935918 566484123 683603819 516426606 883762420 437482788 562162642 290753066 875448816 865255428 950771831 160405647 717439881 561197088 586992171 723255159 790660006 638037939 658495272 210313307 731262146 448231865 532794995 543809682 546153035 850690440 884708759 467382098 509007571 934888402 988864104 211346405 864659197 448905408 516584554 659696465 843316667 766280494 791160403 589160138 691998397 590327738 793226595 744548166 747623721 952654958 959569898 491873801 754603102 306158191 878865898 817420692 821249391 2571229 433504622 64520898 406564535 565765814 992865575 17120883 710051762 166291215 512334281 303883040 799226704 209375755 611313380 29737604 670982702 829965620 848787083 568356586 749961371 471615359 937797481 915573267 918659724 196162804 271010433 334222658 648774976 746022427 965369319 777814036 798718286 565890261 761606824 553932752 776642153 135369655 644090497 837333504 936915333 505011459 742247132 15122278 793213592 512424482 553247252 860657560 960963058 980108808 984416896 604637670 736274550 400100254 549031150 664053514 872563294 434450684 573762344 645746750 737524799 295921550 569746656 657133019 940880786 174780853 621307163 637000914 749168269 59056930 681991483 552822002 706576997 123019159 511555580 108320971 683165858 533166227 808407670 818213232 902290512 386964481 937784858 491008404 548742430 315054455 606392558 270595624 983817031 842309109 963249416 877309150 878195380 376098422 436222739 813828997 903130236 712633988 883242014 514505317 912083447 808455271 820784620 951705675 962930522 429738954 482356317 403718887 537444708 592652750 739934712 869668855 997562782 559081863 607665244 891538176 925269066 211406739 437272105 460476462 535198186 63800065 299322208 596218251 703492379 745506263 963230533 514511405 995323811 753767688 894734229 715122297 794109673 555702297 965828412 896751933 968546035 142451955 535239259 732953130 738026412 107287646 676209031 276061246 542470721 265560986 280956217 921400123 929664960 859444940 913485002 596169241 728902546 567582336 864082194 384720813 599033338 306486078 771430364 369890055 474542270 276306518 489396264 168292147 370076394 808360111 986739249 259236032 840959223 817455552 935341984 945042603 951853932 147397937 828824777 146306116 355664181 408194551 766588562 158046322 846350153 467163034 741838258 905661321 943424431 705379602 879537726 563486112 925417506 817593535 982425192 413518497 553930255 519394581 843772755 726778894 950819931 634919971 795715765 135768855 369751372 577973759 606769283 564688229 970641063 786948606 949676385 932068456 967862525 648597198 901997781 724378670 855843412 417115004 917141762 809654166 936857490 643701210 737279906 354456141 567401318 799685200 991694070 639011349 701467857 476664290 828969609 568535279 724580078 778704430 791237127 398235560 968085064 483182690 629966734 61131485 380666533 587646261 649591521 404577392 681070820 765594607 898419141 155610310 384044027 96446736 705621812 159702551 863121387 240133872 477896640 702526261 938771272 117305885 271020550 990420098 997907964 495051608 881393541 879041320 944409682 220898337 275312766 944675888 949364113 986088551 991188876 69693123 591485412 173575966 368973042 647105811 961426489 108037990 253501451 234258202 958086350 663183104 833942321 289416023 657404526 101212930 837524118 140055901 570485488 506573286 977220110 821460845 834407140 878323981 949642187 472777857 969166410 386317519 962398491 583473781 792080315 1254563 170408027 178323622 894387897 101847522 735028502 782769649 802996803 234208839 602438275 627615018 722918459 789325593 894471262 95470449 662704487 715043729 965021748 862502551 929923205 817191362 842304456 750226622 868510148 432280205 781894787 577308009 595391792 392264222 851377923 399685678 966485699 740882753 980746931 152413866 290954438 645609511 772223962 737379935 970101669 75130605 960597753 350814787 769351853 361910327 649434802 40222665 409664697 56958497 854729621 490037110 520374872 606878524 664813265 326644567 824068412 265775859 294505109 373153882 741233356 684018572 735794094 624785182 804705469 478635350 560522504 821359152 946886476 829031195 935791481 924857755 938848233 191492749 827048724 209654067 519932871 876547735 946009975 493792184 628713138 989383475 991019917 617078453 784095123 306025086 634090474 278676284 936032223 240744991 316882366 227676472 719658550 648138511 961653216 258919372 371842190 329418118 782995198 669436834 721606162 485185310 676716147 631320521 749197456 193585560 969470449 694279840 788409942 331972333 592745268 474836356 943767457 800432597 995090751 427237879 483651000 273653187 872146071 518291755 593683011 142256844 810377488 471158395 824180065 45908172 922743101 601921198 946479869 778513604 893323980 302484995 933832141 443589787 555389846 449307118 582599663 124019252 870527132 637015772 867664636 277492381 741252792 340943759 577607743 891262699 895848120 638600299 695381606 945395749 946928690 852120601 861690446 619384747 681866182 734247581 877744706 54269157 607447892 353542701 768776994 447821814 620521517 520315639 868263442 135672491 812109493 105215228 176989154 137808051 819313134 623667529 742581155 651563861 840517910 803397393 910752394 456181584 855775971 795743831 980683875 28455738 525910302 259413350 534257237 850613918 914843900 579625565 967338425 281104021 661539670 546685869 935437498 755658781 860631962 479753873 991518507 763214007 887204698 712888790 789707884 621782259 781177612 626933057 893578755 454701380 868455794 993364952 993381547 324685591 921576686 627817371 869121502 49095714 615957059 938639527 942284177 202485847 937650202 59836021 194871967 335866124 365036503 161489381 783384399 313327421 556181271 492042949 950193404 214916110 266380557 990316542 996252010 769014085 864239820 749094899 843141730 944264580 968575912 526167584 744853305 929240372 990664841 442308913 658897054 21334510 630525372 732679979 942791308 451094468 772520813 944080456 944108029 984686343 997344741 133799874 411173568 327503785 543096636 645973576 813167599 364767308 920271312 534813204 657150835 677418919 713353969 882899949 943966673 711210770 828763718 941336960 986609359 453337737 883439123 80733151 725005926 289491584 483636509 204537204 914433389 800891219 957838290 560559133 915972932 335214588 827175569 718215583 757879540 21413336 160246542 747095174 784955708 911416052 993452553 818645571 855461700 284543288 350620278 407320231 837731071 56343485 737393931 476616778 898749812 711779255 935047005 859999830 911475855 246160217 716944612 733723264 992340494 605132715 912505257 635692259 816482751 18313350 559485982 559983356 763991589 548796096 978376909 532188435 873577886 331398076 698174303 403649646 830441522 402509251 825260197 34647463 950596829 491175971 679472386 634013133 729348319 671041737 688914826 447521446 727830430 85516985 296462972 537848093 559790979 228089255 900566605 98210374 690850440 723039891 911872423 535796561 552052641 782553381 859861119 125618725 817682942 984755969 985422226 487590846 686963819 595442229 657236470 884132418 944701351 469741626 497080271 683991513 905594179 656784027 713406299 59904099 199921450 852996214 952158276 921283030 935975056 153273905 980195339 902839645 926982418 651629688 896849663 541144549 897734942 233372923 904762740 856551688 871222292 504752524 736025147 93727545 685347563 878959884 907292142 641291352 751760524 941616763 948721444 715853412 770688929 134609672 330551495 499239120 502207226 465403419 529507152 35658440 824260324 244307871 683569929 59781011 269485930 433110975 467866982 644129426 972044755 874724811 962063915 102810012 216205418 13870913 296840087 226065081 298996585 566952161 883831745 267435919 946467780 114672908 306991740 755733977 760187836 124716872 305840010 723350502 833199440 106250206 637337268 189179349 635398433 200807512 465032578 840186559 869592352 679456986 831388871 533856488 540013985 135588780 182076101 188071354 442705377 532293692 918398562 822168046 857793075 998835517 999332746 652010645 907000683 821503584 960612748 127828182 985367068 231950471 553100038 233694253 470455908 189519475 223326017 256498299 397708849 598099473 622332047 698529134 903754555 401976052 774879576 974744958 988794207 249870085 562802904 478230528 592499739 549712912 844656238 356369745 827809541 366703488 558197402 764874361 839299457 894709158 947027495 506843483 587851145 835859270 942062294 277809538 701028011 113114046 391693860 661418591 850137790 802157875 880892973 532052835 558727279 496347539 568855561 863646631 985071152 489109877 758814783 730515606 874110700 693877560 731248914 574967313 871361775 327752025 729427911 597206403 984826670 287590192 651742998 303428412 679131099 818407969 993537862 384615002 399261038 377718743 696133597 138061082 334166633 210197618 233927223 497013220 505338328 553971490 783932601 326847970 492901934 977802786 995783194 555382069 941524834 820282390 867209396 761717144 915355702 975701978 986334251 430776000 697957805 972723984 985743309 746875829 931131670 310527720 319087003 666034653 691882179 451726742 870528487 29628074 603192738 610843936 936520103 708798547 874913995 24558967 852716751 520741677 674628992 765321534 939833673 365255 419282385 697486437 822032595 746513823 968689234 950493547 956663524 870169136 887306206 458609785 715440279 664415356 942510900 206191489 278547103 319031685 634921002 787059239 918485842 881093186 883843697 386344183 850297307 60566457 431174214 331696650 923729324 22351481 921526961 767397285 769217697 813729551 916751582 417903944 851038809 645171545 655087498 933087468 946942330 998341088 998539089 542853032 551007287 479374585 822622637 576223697 895832961 933620551 986588329 358540971 837215212 106058892 133947911 106410400 306125552 344029911 424274770 314256901 590378441 868826516 952190112 475651960 489264235 389946909 588821523 937207746 945301233 355790043 987559594 378282937 650293087 641158767 922011306 662911785 714971158 590118526 783314080 135039715 889055256 265250405 567349950 152488010 816587964 624638075 840539466 401904530 608757899 395619788 447647060 431956283 893587171 883762032 923089384 748380594 956939928 261236477 618157702 402940002 814430065 337370745 514442300 409569091 495849240 227165143 436011771 548844815 841628806 951566453 995412986 263461043 935639476 44711594 307276180 876658353 963155213 40926206 752225960 181254104 892021865 279015787 762859277 282893301 606929393 467614689 588881471 436885274 655800261 719311399 944193297 622673226 626780308 918713221 967123193 684891327 739454328 135565025 389466712 605942739 691972038 908337413 930365467 90721036 693757119 464951709 777992673 756728565 791958081 263436375 812855321 531526225 816935830 613556462 755218094 673615919 736208609 726648787 755339589 428244775 879306159 929276099 962513570 412606186 988363642 867736599 988187626 61087927 657092997 574045322 759646421 89901450 340033556 188049119 787000072 896412936 936471878 982810753 995870500 881690977 922287587 266260552 309678025 572574095 685409730 362507794 737520944 240491643 371647262 889560402 942654152 438920830 633410213 625985775 717547432 845206572 966932889 518625678 685527559 889351886 908357538 430156258 928981254 198047331 661245659 874301859 921788834 687528561 894961213 211659828 252668671 129309250 174320986 57678568 85293589 858844311 969435223 735687541 995130136 153422255 193840262 119797705 401564106 596750935 702344917 499841547 585845350 472779756 600169488 732085869 810681062 932687142 983290073 416766874 559564381 125660673 462694110 856762422 950045847 869593567 939997234 64838741 815543696 120064416 353123701 787886840 937604315 776939033 791386589 18648767 845409088 980700441 993005135 609472536 981898888 982203352 998684939 832328887 953700566 834773731 956134000 130727280 716386823 200800870 679969768 459535655 640731132 359300108 876544606 745655834 932824279 819650550 975650565 400723320 859974514 633889693 994707368 735756071 995945037 747280974 781079615 562107517 731634304 880879149 951235371 469730802 636664797 612102971 958101167 985024470 993973738 17264319 842500336 5516523 260087216 275508290 456507938 15800247 272628601 450413933 876187427 38361540 310482065 536482228 939756093 738511501 881631525 907174690 937398454 893950397 945533457 530585902 947813771 421933276 712134286 51947225 376710360 907935649 934006398 666440703 947182174 766422535 987247583 785778510 913603195 700416736 880233973 208071997 580169138 764678875 821247335 211492613 377857693 784478724 990553633 718526406 952274239 896389399 993512585 2968493 464428845 140124624 775992210 495618527 509564443 580921187 599421395 446738208 958522447 695782819 729991703 165456666 974413019 415571710 923407505 439698440 782314388 692522834 939470792 757291514 781463235 37697449 214893187 251048251 654659484 444747357 811756756 557790424 897148429 8529396 739488754 714377268 728141078 461498558 798461381 995324529 999254164 872968048 998503877 817274894 867148340 344722885 643101406 585890507 997872865 959983534 986933550 650175651 897165174 255493784 826161909 458989140 692618929 814677357 960904321 719807245 748003834 276202595 643506630 204634704 393501379 327059274 479723281 48602776 545008774 20537320 820661411 954229538 966320019 497296151 519373527 928275692 978098029 120704004 212407716 244779765 775344748 348123009 811778387 851066834 975184323 557772481 841621187 902611654 998553536 758839386 962729547 114939320 146224731 950227137 998491981 645589062 782018701 950567142 980227348 256626854 845766811 548756846 799295425 147772982 666091728 46114441 710111294 677364712 679487448 510078972 631406497 477874182 989646951 69321384 291313709 142718540 352488215 996617066 997410029 431655171 533302557 212352688 792701082 232697361 519642005 822656893 878964512 4101964 479141190 879950679 961482494 262548011 560336236 155340470 694814733 128596618 593434497 331480913 797847932 969038738 994990670 63973431 377299758 829213409 951488881 58572841 956624067 478833890 828649399 448249672 614232947 56942672 998222401 389033237 676334862 562954321 832321981 576619167 837201039 50160479 151896025 968525663 986640649 963258062 994525345 335596260 690616484 935726873 938446514 836091138 881765325 557108388 762157475 832152682 983228981 506213633 589263937 657361575 925488027 575722645 935694508 699830894 953992872 78336334 853413744 372346154 781820150 829498643 998816598 594215942 681708263 253454542 739465987 793133734 845532502 131009256 340929828 649430551 947409318 975239023 989904238 346945321 793049373 237494888 779742061 107942175 602222039 442356364 956164802 975407502 983549136 345044423 690200282 528256627 676373923 563129493 652717702 131346060 847534229 118783325 581214754 750575366 948147826 881795179 975807862 724939390 831371002 310629972 745465238 888509173 904318695 908727052 995061702 399943957 752874153 804389356 837225893 210081180 732049357 201785795 353245250 867028852 868411893 717201930 805894820 363859250 963640906 980793885 981863442 802580588 972180606 785598708 835504739 404442349 944860468 654205675 666128718 101322345 517034596 286793319 547718167 650178782 756052160 576572377 582064224 715173552 901579210 283918455 959853064 988159014 992328900 785320625 933889464 680951557 746059231 607362143 791241651 866960511 985486139 130401711 713662312 779420667 970642277 12226339 444720630 79611950 412032653 576162142 756562954 49641012 952867246 198588769 879669693 574358385 611849727 409342117 771389402 884959084 929749549 494185648 896842621 219205366 728022484 50090270 684225148 883695079 996426737 949354877 949751976 119444384 272460738 278175679 464622275 207413553 354572106 283675483 757412858 460841896 526571244 803607377 858697797 495356104 619384495 92733346 666097193 631519515 804363235 995408939 997632412 120947876 482666188 766572075 906495174 779512628 921784770 248910697 324225933 858616858 902130614 294264980 394266654 894418099 959776210 768530671 804066103 751618361 907663446 250712217 731534347 390572688 445581312 24812445 548754692 890530351 946616865 218216827 930467444 54059532 330920198 785838101 808400724 187487127 666686130 800028033 872451239 753235372 801412721 645519066 658318581 204431779 720167875 743775987 775027935 353583378 489868141 175676561 789109364 230888532 313128649 336133453 724423930 274257769 560441276 483898676 805208208 650472171 970636661 441130157 559669180 353479785 398508076 913481144 951080183 985130595 991282842 968760105 983560408 184923832 360325598 347309231 850713300 35879845 786849927 731039709 906448040 841966435 982689266 241611761 697466333 384777013 840398344 116197062 585202628 872926623 987214274 867559508 936078264 907561436 997426361 343859423 970143313 906443945 981705659 224957130 391205245 858767642 954512286 271172568 411491608 437868635 498700359 749270070 833171463 378396893 815736773 258393143 409343025 755343576 956905489 163914456 915095482 821237411 883350705 109829113 437363287 390081205 778729773 732044729 856856981 831273477 990479099 216214864 485660509 247368891 940851497 372675127 388253080 884469292 896482080 771246858 794304275 425844920 535540856 543517295 556389046 668209425 763000425 250035025 920611287 100125665 105906563 511750321 687357073 474312530 517819409 303379633 683809932 915875266 943030766 159398076 602807454 765634426 829337275 483541126 857351817 788688907 919928817 67786988 478665937 621765515 769839870 7682592 372237103 194183968 486304435 807611150 935821202 880066739 892146393 949441221 981794204 291583506 665522699 48767336 338196415 367144522 373397941 398064054 408394715 522372223 930146126 285256676 337343462 796557531 951199556 149989619 795373395 950165094 997059617 897103858 964828667 350317603 981846036 162373864 608140038 942456560 942943162 215892475 377878227 808630716 883695492 835513555 963694414 864600915 986714825 255759091 705770744 320628902 538985877 437770641 640875498 387898552 687903604 623758727 752483365 242286748 273889960 762981298 969624102 686047059 943718728 831454411 888310412 564053200 670383811 431537323 735836759 51866893 100168320 24451249 60558427 324658879 617491463 354013981 575936697 835774948 928414090 313604541 693722403 36652650 898926604 31332727 473862530 511692482 515692711 832344832 887604348 569087546 644575286 396897236 595273907 66255663 246167880 233770057 639909974 517238624 954980845 158820002 336942170 48932761 553847473 155156094 181086503 61865036 378520353 448178965 657537670 15016437 843970831 920211544 931338843 51981367 617279512 949630126 971321157 115762331 769559214 61310563 565444797 857470485 918822482 422527785 667015137 415531938 973974479 137333255 519517553 320536238 821694093 683144770 902280136 205967049 368085648 907233107 972145287 809612227 825701360 791417796 958264946 515463904 682426511 652013992 961927949 992589183 995699128 308490148 369917513 682076785 987773200 471910671 690029448 684548719 735074493 312033949 663340251 822396048 986058626 371701304 505596752 540654389 654997357 857960135 870045098 954028778 979074307 146000372 806123585 906930297 980936726 543000593 934791835 239230798 887247515 802559325 986708088 728869167 798488755 191912247 542879220 960405552 975666048 985434510 986482719 810665288 907938831 983246342 986857646 58086963 954807074 773976905 800504073 455760572 589532333 696776259 704443686 930590403 984496524 788879958 859961027 860574722 904176909 735737814 984895767 340486068 711831677 187757898 447411698 920253835 953265578 494497879 635090028 692878934 928597423 919678979 945241833 199613178 891842475 834639936 992899088 601621923 961276519 693718426 776768718 846341544 940509887 247220948 471559564 782611010 947540432 182578325 517546633 306325662 620474476 53628167 147226942 337419656 701109491 114513087 203683659 649009787 929876172 179283123 583991937 162197153 840975326 26833269 112151032 467933069 994923059 378860669 837305405 665873153 682093035 280660945 985611216 729897397 797686694 587862750 790009230 50774762 118384219 181517501 433887121 252372243 359467573 603051905 699122948 875174160 993336715 728783059 993942058 808051079 852192456 2550702 266714939 549760373 876922916 825173148 918774035 389817424 857163028 739922145 845234444 884540617 965552700 207746124 935617299 158807108 291805710 250909121 262797992 608533683 655522632 657864428 836779380 54210082 271920843 385707253 712393627 578779594 933194418 609035743 956013639 579641432 909542838 868018015 983293784 157560490 246373880 915140427 972052673 344483649 750264589 346263018 531376711 434426951 630305164 63118375 567575559 663409922 904211854 825051312 934443122 876713013 932728402 375550860 625644657 879261278 993163509 111823761 911042922 833407303 928206968 934985725 948979933 995346699 995982523 177533147 746110134 407672645 736698018 309924344 381076841 829378529 895180720 847856234 891285358 701961739 729108422 4841197 967300436 678067918 856451535 942699023 984134587 201295549 542866681 468635691 983663181 43822827 512256192 827305852 870008619 317329268 852381494 516310458 794305047 879148763 968062144 789456465 934395915 11155420 735853321 490874618 851354163 517416383 828023428 542698491 947473444 309964008 784029788 564938473 686060078 612302379 804020092 842910360 989721410 458026359 975227425 424332296 881849389 299156654 463757181 402191224 795372869 844480916 934040659 811519948 931131348 840841509 983739541 59824715 536270846 143628019 842734617 939587224 994256462 447206078 556864093 810412559 910282190 408984164 644640697 676841637 937773811 926508659 936224249 442791021 660248372 753137786 841385759 427910209 515260318 912111164 953244674 110009942 517383822 162714703 326679465 537339744 591878812 277601491 652343474 934808386 990801245 543019253 999067573 703818729 749427103 739745563 900895671 764608120 884595815 248496465 869749103 875729557 926898413 872477743 917766694 353997393 922421644 207318656 953390876 25814247 861810030 508685451 664339640 453836256 556076933 85829682 243165782 82380383 182035122 673981405 809952016 992586376 998368394 781191935 864087028 965843976 982932375 15559168 495623053 374637581 455176075 431794482 881734977 654859535 884629111 957001598 990378072 187984261 667938584 706926474 960534868 381940571 922853879 317037710 574803885 447530874 823880645 737946223 899734587 970504366 982275304 137931630 831660848 954537261 997634387 725369765 794885110 570494190 673715320 155995578 942912918 681054459 814671428 408817443 491188947 860848670 934314803 25453482 926339227 733129074 769944119 587577916 675266563 392283609 711100646 26048489 568760599 635821364 704302759 151634086 443083964 689389944 785508560 922451985 987993441 82213322 214780910 251249113 431201516 644563682 832433530 916286087 953322867 777627480 810573591 40935909 399794854 670763496 682128809 283880188 348469959 50613667 699013796 802991037 824308723 523234839 842766663 202918041 672577067 635019069 664690692 772003979 887591595 920447588 993153966 777459243 991738261 733919735 901272708 728031244 935844563 887464734 912384998 19110743 194912552 724856960 743897796 94096901 603768764 980077086 999036595 116195793 708314397 769405064 827076418 620876101 663593651 835442682 884944714 819779557 941271512 162362175 339611137 553431602 716815646 317129120 895357500 870455096 877655029 305688290 678391958 44085479 128974119 18276767 90622558 435526994 474654396 523690878 761643380 51842701 402538170 673243511 709000071 365777845 606562510 199347429 349741160 741761309 746995482 168596126 596657297 634749194 694839623 124361366 532037877 517527019 531609440 740934003 854443991 242563213 885676502 227576567 860262053 186911423 881774120 567290997 899682095 924457843 944387622 286928847 938234502 434360874 606049784 687122405 969230331 532426158 705595343 602701047 971972152 39871070 169427934 901290626 905177465 394492468 701452539 864647395 996932123 174289646 915152129 333661642 876739130 388296705 937901689 637208327 898613904 666255768 834524820 245779635 322327253 417770161 680849573 98617240 862028519 170597403 406545638 135875771 656126082 13649451 845996236 5604877 17475805 721581522 740278716 993611481 996636164 466514814 571059362 909847148 922083040 379333086 430027172 672597830 818311831 11317618 264658311 18401415 239561345 357953858 602557328 781034396 821828443 125931105 925722518 710169028 835936795 1622674 541426851 348438680 894064138 87635453 997726458 55767440 701677646 303485046 715187611 739840971 829907684 394164003 578490140 43120221 265000631 159967769 864287629 746409372 802623502 978603211 997607958 869580879 980240261 218605265 328183766 496453362 749113560 559726292 578488504 405845773 565913046 249434923 851679788 665996803 766736723 781325396 971687991 704765971 953044884 499560263 783869545 967553664 981706126 658568491 903740528 182498443 235762552 474625288 810123062 729288671 781368906 47032365 171237454 353590019 456601052 241877227 729563122 1178832 699887732 764866996 954215476 635290808 831479142 873785824 989546945 764854021 969380319 151164231 835741035 722093524 785645277 503448063 976016589 771038672 875823463 913759325 950972759 574390247 585395952 670600746 797118222 500173170 916084227 433396528 470827046 218297330 331262138 820127066 933809264 798152129 826703498 130204643 807932455 815172212 900148804 962308025 997173915 395056538 910234793 381008289 394296365 141062146 266893149 800440408 846182380 532634334 586240069 862149828 868791549 384037066 695378002 345909202 994850419 468060610 765853860 999102204 999104736 408809114 996742677 366527241 949875443 961142818 963377175 20712083 249822283 804299788 808800432 482328780 536657342 926723879 937505205 354209529 831186231 940258984 960751955 552245943 775926402 309635159 838220492 626728895 900694818 58693546 803662895 48452537 50521641 128806945 478563697 848044171 929072530 466822283 623120719 163259761 938023199 154588770 321139952 184259460 426704123 552290907 641396218 955430972 960762914 807373389 965561074 298162243 548680721 915603414 986289633 384096993 921901149 576930036 996141917 982457021 993537125 251312060 679897350 205759053 621138302 948713666 997389324 214891341 735372902 602333572 733589606 921370072 961555930 167769674 905939060 492235795 502352044 548702449 978413145 921468757 997326648 603974746 832083447 76614334 534147963 837723096 950863419 325746204 947648786 936371523 962449264 596670352 969671321 612302242 750217150 545569588 688710141 709514083 879993633 292678613 329880703 978110310 987377503 313044859 458580546 661680658 809193859 614660674 827500306 659534459 936374844 368184254 532518124 909747954 972207283 269581465 500460721 870383796 993808374 825639183 850578044 899659318 909458899 271416965 625383007 372615559 613487782 719015756 932349697 881645291 882514189 64133872 988582871 587475895 875580452 586779362 799206492 10071464 507965985 820070524 837303312 665574176 950517743 34301557 248025868 75032877 457828896 391301839 477914906 915302231 936608858 113994967 707016420 165540706 515003444 864757726 975411731 622984922 697684709 87813766 215871161 746334611 929027281 486099719 600687575 617531037 969072110 316360885 955027909 34943865 191453977 673364747 700554831 742571717 906335073 520372856 987471855 160172515 560164146 769376567 964606362 93817791 821411169 281093852 524124718 511489439 943355240 163708977 663129880 624012120 917797615 949946600 984946437 327394546 951529523 852946269 900025587 612958058 840289241 59917517 369952913 900352754 969791029 14801789 90890682 572282449 617443456 17016336 209883560 343494693 734163760 629984828 983515091 928747200 941356181 799400704 951084989 83556032 816292593 13459843 404937089 581163381 709318600 861473581 997949433 901151257 938554077 99048355 620019858 339079222 486156852 112945988 426930136 855895099 918662042 914805241 956274170 365563551 991083517 581453105 596324871 767883734 874215772 731223642 939079610 379279531 388963958 301988814 658720264 794928911 815822363 356539894 757829334 733112149 973564514 736504153 888749253 407322437 732544058 65112372 594720517 742975852 902538454 316983920 388470501 716447398 998775302 592412216 849004132 25890283 227755072 343191204 959994478 817134879 947553792 731852541 756995783 726166577 779179569 539412314 676321935 237229716 999048885 36660690 506055432 747618268 904177998 898347489 944139692 684995666 775184120 562323998 678169374 867462621 926518777 582018743 621809236 648270284 654193951 469433258 964182208 204722193 968107338 748491799 933007133 475570863 585045119 522136692 706762261 403109834 766453920 342072839 931759544 751013432 919080404 613991960 906276491 632435545 823157320 460695849 943832977 949589307 964210698 101056418 152973054 658082695 872024218 856811975 902708231 366666831 987452931 427276223 502686029 617587693 932267793 679838168 725385880 958390754 967552710 671081269 785393784 463090081 805781961 472413955 892163424 372048480 929202202 192282867 833583676 460690869 524862273 531317048 794062484 246191049 615558055 159304207 679210695 754032382 775816899 359628704 752320133 975263314 997212755 366894332 953081467 692643315 951181747 418521603 790445478 452273276 645036726 235429212 921641745 20156396 752966782 409963457 410368788 511575361 947840581 783129592 990127436 554802714 717234312 723003222 929948916 504235952 862630297 111614812 830828828 609224855 642666196 84170473 422375692 586909219 717588845 20970487 492311708 291410985 348293081 218175836 984219804 794442382 918165638 34220819 409861889 703475291 716146737 396445441 418989675 894553705 929999690 766805716 799891453 569865279 667751049 2986299 121854059 680365537 793859821 194277511 266251544 636559818 717656915 954203151 978929963 807723482 957130316 927838455 958762342 683262347 965739513 971843918 981510270 552083750 793623751 821856147 978127857 653378526 943700945 895340816 980071011 795225933 850889331 462415526 602571024 418730832 730539598 444491961 563690564 654875842 666150756 385582073 578944912 63116707 257120778 648691460 877328063 478464252 921875487 959281632 967803757 313803899 940836983 72284345 396579145 526612397 749736186 291759063 570379186 160487626 431067618 590052225 967976308 254815182 852132758 996535216 997173575 983621246 990556206 933814018 977127494 97529284 608481097 67935156 422703668 14731012 568127004 719912842 811188975 612930948 734986551 945625889 979484192 88099498 865716865 780945983 798503037 571179358 864095571 980596480 985547210 610117502 951437508 183360973 393136663 256162055 323887328 169875458 689442930 393805363 505955449 15237906 598433214 419342680 466728024 223695559 839948379 43605890 246585875 804089844 850201344 14821168 243832294 737648621 886816586 411895105 460505739 248971353 923382192 809545829 975625972 557090763 899240133 870765670 875536290 162050282 256489460 352202101 776259324 721022134 841324877 270137308 910441335 110456113 972452518 262103778 966681528 228033394 429414515 819260863 863299615 733580772 963117491 110222630 158551999 127977503 275339322 499090271 639766698 381105099 925634308 102417563 719331439 921027335 982604817 385102753 887404168 3947842 515391666 736325046 831665966 478212223 937672400 753255854 827708054 729299778 814003839 908736381 917876276 234622115 786506366 984179622 987778386 37434692 250224727 791228949 922598983 305065951 991766222 37359778 699537508 327788894 478823854 751496174 815108049 165822242 872587472 741511245 872486645 860586652 995957859 387624099 886770156 586280284 829272962 760075073 864904286 559864574 760542502 965953005 974663860 645084078 699059828 627662716 774159837 175569283 851778771 785774345 939953619 519434034 952331004 432818207 583576451 642429391 728882305 861461167 881265248 610063840 926068045 532939709 892048858 181106601 621542680 857411852 949602180 803168323 876729404 541318497 733079278 634803899 919084517 136826442 469774354 774744764 799938197 340775435 449906192 339192422 342023534 473920002 575053779 487178150 742028177 622079949 857503808 514173016 782950729 34613908 163266504 759323519 837306918 941116223 979517469 350748459 669105746 362235149 533436127 384880672 564008577 564989659 785176039 446159471 698011859 917336027 922517602 145496550 194835540 273336231 846422009 370020299 913760970 460020465 815395666 801112186 909738668 464600692 519267997 36023530 972750604 982990427 989671649 228591092 556984653 16584914 199274062 42743923 628622745 348139442 749569875 66868440 409567979 796068456 895334905 121928407 192208835 258201638 467695499 77395858 852640118 59050557 877936283 93301096 136626933 398171121 675292079 873725643 961043250 487274617 694518244 812485296 976643024 764344858 847812840 775897028 926730579 64613586 317541831 900931689 939828302 821319063 849059568 821331206 947242747 675932788 770306380 766074099 923630592 135012154 644035359 144229446 519365951 44864607 528315392 637612705 937040433 886248488 984655234 773605332 983779131 202118508 439351382 725027623 851197252 66813297 172075925 867389008 961661357 967444263 979126768 435361128 478509988 908625288 923435867 994845613 996821807 657033812 987101818 203774806 623931854 441284662 548376090 998059751 998839340 130277860 563648162 190124682 719617475 913255240 931108625 625682421 827398170 411588064 513650323 190728858 527056171 468600482 547816232 964560480 990322902 159915529 742155502 295030695 507014086 683338748 946929402 134680638 262704321 338444011 634023070 868312801 969881905 363224256 754816354 46251304 600040237 238099171 608733793 660836319 983928364 795544492 913430995 89031325 445184240 941932567 959682710 315315162 484220801 535312983 906379929 975745921 992860397 6137699 540111191 461668934 526166006 702046815 795744849 306574369 441818139 132568724 378025633 998370596 998833472 904932165 960090441 890662768 946031042 623765305 759580563 9113345 682013045 51331383 700287303 676551390 751629439 890040823 895222501 571130265 650598729 74289084 689264887 175630080 398965530 921590263 924986172 919195866 973896688 299512089 923772211 71584400 445269476 448231694 920290578 491227447 755064579 503136392 991791824 121991730 951853157 156501357 463009423 3055628 414212079 657365338 939295129 223286285 922549842 968060965 980687096 447026560 801691875 738631 349887131 698296261 982084158 870583379 975543868 197904837 554177233 67960421 930369818 566793965 614819192 829431073 981258413 341691941 929384886 270513236 420013186 589631004 624523921 476973114 963625915 700037818 980948751 192942299 404712389 443612018 597423901 685823379 932139480 54118387 333720970 34007739 390665467 325762728 592125696 153049574 770892495 669093086 825564434 776622281 986961088 391247011 432327342 755731445 920023187 756691273 822404398 909922216 970336475 389694479 762099422 678537724 870745662 325050019 637391396 960642125 961832363 999011321 999110614 427362758 855787779 447957222 685824358 996104621 998914183 797182932 833268363 940141746 985831024 80462615 331851544 257474687 615276641 897618807 988178254 214587396 585905219 515524446 872545176 809519190 855697771 970097698 988712260 338700321 441306502 720600005 731051420 696581642 874666282 41102926 548870694 438754908 710821618 488985453 825751835 364322416 588727543 244615631 763234262 53829221 825570773 528601911 681428209 178198272 686559813 249707058 950897603 991806724 997126655 69704732 304908097 350644779 611983308 258748638 422216317 75813541 919433499 786167279 801524446 691292876 994236912 426843254 824749173 193117765 422930415 870797417 893187959 835996754 858591733 924528909 940908164 351865412 428165401 124952995 146292924 682372117 833443167 586973837 837185937 761766017 874540372 850043427 954581795 10286922 838645743 280035705 754294650 115456091 375219789 118761920 819715928 500007158 983606157 120430765 683019539 556102320 638363540 29986029 794904467 937380774 998184363 499999242 881488987 686850068 794714043 825724106 869378472 625990179 904004309 717907741 732769685 531349972 702532087 470598342 536630648 644038227 660915436 801056451 948311484 740542482 774604196 528080470 657241187 830251712 873488867 226703730 323978716 381542925 540287471 959080007 996871661 739133889 822298691 633948940 721691997 761750194 918514373 339775304 474456609 143647216 442940684 873062291 961592641 383090557 895060612 728155466 927772163 764932255 812524059 553281533 833896942 836601693 961631380 676376981 750531714 817517442 876105401 660578601 850576013 184657515 587352091 746092261 855417985 678438232 810210955 90360982 667908697 81068568 963411926 62141450 470176836 163058070 741154443 118536976 281174711 373915530 619347579 539965683 771441627 66798563 611060936 984929488 988136033 714023416 741361152 662473361 939625528 952879835 995689956 153503016 252318204 17333152 844984204 730682744 823472532 942896948 950724494 882922410 908070405 845982467 876607793 450646095 678942329 71325818 511314652 163528055 286628964 912127480 923236340 884772326 899102166 221709588 805568425 709434671 732815188 832275762 863461983 324472881 748944739 141472678 881106194 774591995 856077701 501413130 661515623 193881130 508867353 245578274 626585019 355761804 408773088 190487356 295409714 340483650 625187114 501554106 504534144 207702449 557282088 735079835 809417861 78403693 145785803 264003703 503817824 3298770 7091332 981279806 989083609 162240576 616139498 609998476 675512406 554386463 807118992 60579685 852844358 744956031 934348314 685152778 756675389 243159676 939394641 504671686 664932652 832844493 849660780 932817441 950374716 817313324 858382927 40864590 498071935 507623768 524927149 492124456 925914891 295573816 458201665 230040789 314042673 493605984 672144341 546040863 619354310 926779224 938747413 121417955 279510750 294659430 944980745 713294332 779573618 686420045 956479047 738381050 738452141 604724556 957693313 341531473 489910090 137912061 569652186 290811043 496295419 168251347 674293383 759812211 786448709 775960151 814872521 154538170 895577635 322570794 712307341 283510007 710963565 447668256 716898151 338677026 509145967 44883065 335770418 646203266 972401748 214502408 874190196 519769431 620940022 418027577 576449848 968372760 972112975 653658348 766087362 869859181 994784340 478534623 971355028 147848511 862054488 431162172 793056709 156166143 640688363 667795238 756385994 693395872 755374290 351375100 883912656 64433476 442593271 674016443 925595050 25795737 342801400 909504071 992654808 559734336 633602178 806976040 825350366 951920351 994869670 709098024 790118950 199075558 611888807 672955469 821079067 385608662 781234014 579652979 621354078 844841207 859269581 479373345 975656549 649361644 893947466 594679980 972554964 514119218 718352419 85766293 238593978 122829756 701580427 836381761 880681165 577908934 842638829 252981941 787716832 222725936 890301121 990688582 994230311 673561922 819809846 234951638 375696287 228177807 452023876 942042142 971725475 177022804 912550352 831508632 877703358 577860584 786332585 767347347 792785060 623182257 844131626 530774654 958810819 258798041 900693446 701560848 725364781 421396728 992968196 882128459 985962831 475791313 802197161 355980951 569930345 58975689 974703435 464515021 567368251 521042537 869591586 846801686 896626363 726287039 937371240 808905862 911639956 400950030 489597187 747849218 863118571 824919928 849482241 356336974 954412634 713606664 904368925 304054128 784213762 109463630 678037105 88333967 485792482 844600875 854565119 72124340 656590805 893439989 995331948 755488110 867513925 109819090 438406532 486737688 593071334 730419565 884525537 472251438 572416381 867189139 899696215 248036634 763544323 772721885 917794336 646548037 788971873 313762466 561104236 421008337 757397836 270158945 647110143 672363201 900511429 666402410 826742455 826147352 971371162 949457965 998168867 530719336 918152811 904733926 954474233 993759616 998414163 270803826 462690697 316535031 553397999 129378461 369347397 808889664 930200475 475465135 844450099 750340385 922914493 106933415 825181695 35128809 913429990 978025993 998825062 630555635 885773371 650085008 760300511 13641125 204081954 554239755 932794854 284819535 785744343 442048845 727573338 579895862 916289058 444146711 486910288 86390205 677035365 387167485 411305669 784596281 796892111 815831821 879772460 355331264 431498031 485235504 804934488 202804365 874449471 61296741 759702583 271280736 722261835 843058612 943929903 267902779 385208731 449678923 823622048 457845627 565532454 951322823 972742705 852142822 951027180 367590485 815581653 522677195 541201605 134916243 204031251 88328600 682950477 710170927 746702123 250492861 331874587 244551734 679349093 251000442 659994667 996253582 997432554 514659767 679760099 212479924 700113809 379068333 798805361 823188804 924769548 519486077 776406279 45512947 158499174 721518430 888019240 305487061 656792692 146538125 515222928 856964375 897591278 70720153 992920848 492333930 793242085 849262636 903699589 189566624 210142423 707211286 942635604 249697240 527653192 897300399 946763888 758337285 874017971 463547021 748857355 802176506 829116861 4470313 273882616 214242027 914991978 41238614 636174050 425286419 654243671 23796907 483626512 707301578 728285180 824706108 867394576 599272955 869457484 58971393 229099325 14794716 650804352 253959393 454914679 771999282 792871335 18566994 844416906 20258512 203790371 700745911 776209674 870465531 985602974 486088269 522316436 980676509 996431233 254517333 601334708 506724053 969417678 87859574 605597787 461582283 770631621 108106525 508327255 200697788 551516543 371264826 492778419 360843805 866809344 149763338 218589608 680977201 894474808 766542253 836051867 629328219 999007689 926931453 953190277 67975376 702991490 455237032 539185732 575676291 827987713 954009639 960513554 643143734 859583403 690589252 745815254 753932490 833200718 746904106 973112021 687321315 816823212 870106679 908661427 485646231 707723477 301452013 583487860 815824641 957788661 180394554 896347526 295917919 675910305 33064741 888321350 650926913 914351563 494421816 718322992 937564721 998845020 568961702 591099540 640578789 647374856 952397761 978544067 13154390 232038292 710043719 834116673 585034662 750414787 888201211 906141709 19418005 629705025 72095705 107765043 847290877 887858193 774308935 830485687 972269000 974798089 641886848 993525672 973879379 997937107 17779509 510738979 450959748 545698263 881524503 891281815 269683592 598469973 932087241 958874654 366003324 787327353 516111044 900107180 22657227 805072859 494281739 886322181 559155851 866639357 484810774 726268412 276316470 995733365 763428008 993450384 922595197 972755992 508375685 820679990 596532281 857368455 538788184 624670899 816848731 950429678 224376454 752954234 752835583 794648005 64713038 534252951 328219597 817980924 508321684 874723523 37743439 457424435 325734077 840978571 576986596 658502793 557146044 855443597 372105482 718136047 863404712 932045997 247617466 280891079 531373850 917127964 191323866 499214085 377782236 807527456 224202566 954292279 888897441 917145213 31396186 729181929 908944881 958296180 804172544 980214672 550842893 645317252 266153414 681940849 482272226 672298583 276342526 647275965 155609120 898897373 924597461 996107493 735639800 931897778 85633614 637867480 552681465 629039048 368400495 820324891 800325250 850485574 781220114 798021795 353540950 898841848 648209220 947853454 202267147 392778734 700650302 943442563 961282143 995763583 275878626 456279175 245941866 516105734 11589677 71665444 752502212 942693435 714394997 772573519 107486155 450539173 645789776 829754740 844085708 923826322 797611842 925816267 540970183 910444326 578837114 774099066 4161441 125039531 708426114 884834054 549486783 871833713 494876744 957411225 135039762 189636882 492354485 970914757 237318578 289895527 112870468 239909300 535338799 683865285 895308141 931015854 416298208 797113202 244524985 677285336 707854296 981570561 100980690 445924476 916438692 955688044 854854904 921642976 518272311 647554597 15397860 147853617 776298589 830064629 255645991 694440956 157862139 579157144 733570979 818038055 769440272 913221594 422220029 491914270 970596479 993097765 409888272 588381181 63253838 112172353 410219298 502538224 101618698 157139161 415508342 848676811 9633098 776242299 323370551 868370902 672973958 966164208 179621853 264538676 514215035 615341290 709054266 826150520 587972403 680157320 591818683 955752470 315344148 394374369 399784276 966118207 317831681 463859077 958268780 959163971 430053546 693539252 521558224 651471650 742817732 886255185 901238989 945329906 228527991 802385121 535646265 681158623 862082032 979075527 34042446 679968911 181330705 725934751 140214997 660076754 796392727 870634976 539584620 966120639 32737296 846403299 447243902 806903927 568410228 631001288 735395710 861118233 149210677 565609899 865437286 891920116 263567582 802997653 784697465 843480251 556922127 876842567 423753683 605037514 291902641 653122227 701752005 946943781 397519233 973835338 80921808 332240921 991998782 992539815 368350130 814745656 634984892 861518409 610717008 967799245 320607948 693215819 431420454 661033535 37606399 114358683 736128416 907802828 466913104 565353850 652806004 733681870 350383268 951017036 758941641 815674661 248569826 326680375 962840542 983010461 385235116 687439344 799266695 995080509 130438395 818695609 793995728 867064339 30240909 804085174 190790169 808686200 221248418 450961554 706632476 972637040 176171619 814869622 350066906 380445513 602307323 768070787 370691942 980470372 251630168 966757839 126511831 469166121 564577698 864616540 494966991 897857933 500960565 855167732 647801553 689169929 357841840 544760492 408299093 830680186 412879463 980384321 679326326 967838367 881535377 902269844 540138526 588453938 826047355 950824558 567977085 813731237 527234887 954314733 224923839 825882135 730751913 744987938 165429053 642673582 385758775 737844677 20172784 267424044 155257006 415507468 309106864 970102606 647392168 846272000 954551805 960805869 286005660 589520119 225550569 486316721 481140353 966509035 672153492 956713610 555697663 591322202 292003833 355266482 502795788 657833998 886337928 973075302 217209954 768107704 443938238 459546644 540508255 817678488 162704159 608006943 666155311 844696806 384136785 645439299 4506998 166974262 278152921 538585281 326349966 363546827 753438367 914442194 584589342 778247537 542581121 773412375 556820684 924271818 844968927 905226426 651048703 979475509 623656281 669355011 673587893 860058313 64464961 663159415 715486656 898950919 276607771 826740539 549676955 986183919 559039441 734098857 308243179 977542449 518740625 737274451 347122144 517200096 585569451 820367975 61495519 826801674 135054196 472702122 896306069 951516193 675968567 907031344 969727916 970537942 726773516 835545008 366117271 889702124 281877027 983094255 614575029 905219944 218567622 563494405 953868382 966804597 362238479 599690934 463797345 713002428 168038082 930266237 934064002 935811369 890818595 936386410 406588472 512070311 385986556 388724180 927067176 970012208 964863399 997793820 706207936 968581748 726396163 851275529 228963889 359459555 711121174 786813322 282392316 721510468 7270790 908406674 861540798 947216928 192564184 996048950 206133204 627351794 675366224 887913001 164417398 185088295 429953277 949241195 626585306 773687423 265918946 863823961 785983958 790358325 362786083 750598373 696836286 979040075 543368026 690186203 518002841 522832492 981836588 992970264 924547132 990862837 1892310 40918718 732237748 926628718 357869727 891486402 398762166 722241493 763168341 935224411 689113647 786765922 542678397 668846355 707817221 871891553 347506662 827456172 807650144 996316593 310229032 892814427 688832836 731123113 917809457 919483538 662639433 789554150 206143659 254816792 604460139 651660378 531499889 655591729 626930538 753901243 128882669 137080266 374286159 756519144 741575795 842043673 940642234 994786423 620707430 791244136 596598146 765271674 661270686 680953500 8453681 807953160 473742399 980854100 117122917 118708272 532083146 552772268 881483849 897326365 249173676 974162628 378335647 537056315 741042819 946155711 929461211 970107226 178205746 457159059 542187072 843424853 987326813 998185300 416065462 586750853 399647717 420915733 764482861 961753567 873524845 879597762 613360284 749891324 505610951 663614521 681923457 786399531 587234012 595212162 85479388 557171762 721284150 874281688 917448414 938601282 98157964 177793977 361005244 415587481 822733348 887975083 125965377 230103426 993531966 995121675 936401244 950064423 951295011 972631984 871187101 880461548 545134943 587319802 568688694 582793481 61862242 583606034 69717432 497320284 925120632 938669310 207415165 639553906 985414891 994002123 450355648 642135387 245311858 709997631 492594651 772512584 260253123 312569126 966372030 967530525 872325291 893653598 194063852 471674760 528739368 727837798 671032068 686073888 222936787 376822777 337092560 954797332 175461458 474347644 458085832 701265030 969355516 997817844 694665918 702693873 840063697 882436250 327550719 840126583 310311735 864351023 694190438 712159205 848223620 889726096 430767477 594606472 694255077 931576465 24292260 114963976 255890661 701249043 234514735 515912095 257397547 831041448 685816771 990108972 684439256 709768770 286755029 384908057 272431677 609804606 372668469 740498023 390682872 685246093 130240259 546093483 134493048 251431301 657724202 743635338 123099908 650791930 450568518 648817564 925687726 966687504 483053718 804178559 95958137 350249829 695808204 998338522 860587174 978707004 571127203 665017855 962104988 992145634 672426089 889934739 691942020 915147988 526076882 823344321 453756688 793607700 654014575 777014477 302409155 873410283 906506426 966297255 808741210 832655908 965370598 998851592 121509029 887135227 273095242 331556880 681232591 718945059 176861669 873658283 254176226 705476906 792270780 883490022 230393430 725651597 945766836 953086107 8740007 153694308 723526526 939281362 527813263 721799947 332591351 873547114 312850005 892541304 203677835 856035928 66862735 441908844 803419379 922298113 67294678 264642741 219486967 734766817 871979841 960839788 362652295 617630042 850181096 891351242 528791283 727345423 617979412 730854862 946405294 995730776 868108165 975663140 378076715 910300503 819914055 926599520 199939717 857284272 914175828 982936886 522612826 932871352 201231658 878287346 703753150 808779529 110762363 424534450 371207105 654508470 795751904 995397439 691109198 949273917 644811506 932411708 942923119 990615223 687884892 698576982 459503392 555784268 521641675 663047400 936401283 973043650 415963157 861593338 301209542 933066577 997616272 999164429 909590569 957759261 271003510 715252995 911606281 978042223 191953955 900275607 631063494 851917056 340022702 986408154 577810409 657807623 14120550 78957939 726448855 791978329 326216655 738398093 684331089 990651230 907560937 918326139 559801064 980207517 44676274 373040262 661445007 885254455 409730138 585689620 135523048 849443668 772480319 975657389 371903620 554694868 262515032 874761889 325001555 653138386 787976789 906271432 157010402 929663911 201040027 229925846 973005601 976461024 442606171 610428444 127074499 493426989 597656989 691081945 722042614 835881890 498129488 959781018 347344777 791192168 652739987 947525795 632468210 723469855 361793334 713395329 770017132 893711794 474046051 782854175 660404648 737931500 766564451 924250713 95923090 773208674 864583834 943008355 529183935 694384764 828584126 952045790 444922570 876078417 460596329 541494593 466680858 675706727 690587734 838726619 264915339 709345876 656841951 817270349 983021529 983392991 529242458 679711852 245119846 964069159 501806765 528324971 469292613 913922612 220407788 758164445 570045592 632911367 495626944 963152980 945540946 991363383 372288195 717792263 163787914 899015367 631115579 650880196 454702459 881450145 936794305 945977618 469240734 838952404 417551889 999340011 212620128 251244662 513843919 716933736 65846696 279176384 863873166 888462202 734461495 789400841 396519963 519400887 23254739 552706948 836726477 968301228 871307371 966549968 704732047 726475049 997351651 998638174 543726048 935320803 224982444 639925803 364346295 719178766 569036793 935921624 221439588 965184245 659509975 875091650 534735995 731539020 649519457 996003005 103610150 786798971 36847094 120189355 554557336 924462169 670152887 807604978 772722571 997125928 582536811 864362747 756899234 772288802 599877576 691262341 239861155 556467327 546097006 874198401 730513531 830564191 985611106 987700432 395320666 952327024 970297156 984146927 257680612 777749943 26586618 769250412 708670925 827012248 12918223 732220562 432662290 591682262 28773217 445524488 203723636 463591353 785896771 909492767 517544527 642063748 121990587 905947543 105028690 676818409 626506515 932007060 459463626 559782581 311698795 869062368 993372543 998090420 446525023 688444489 335718286 424329386 299894710 597304099 131945022 370560319 341199931 697997526 565147440 575317343 370075516 744027572 214258580 970023494 133202769 284345350 839512196 906966526 872584036 889514027 200748030 231994978 302323325 845937876 662030476 801790638 819831541 824479372 391175705 459345765 96626007 104990683 676040197 817125090 996039961 998974595 717131413 977664448 401881911 552304411 701483305 739024549 798086111 938167866 692622386 868883623 271126070 974884922 27515833 138490806 523202317 813307406 372524274 852625316 331606553 454259725 317077249 720918580 769763497 995639748 768926419 921851718 494542373 747915512 504731467 944201033 56431849 837279731 889565687 903881967 977021397 992152961 614794407 759870315 651754806 985589353 654306373 883072613 82185521 396396556 104569936 114008720 652167970 824130908 347708666 795430155 679024684 826993062 555781149 773103186 487315433 589718080 271069670 442582064 566741131 967983510 459587868 914766973 243273361 663046503 367818931 654938180 42017939 425285618 168359164 596625485 902159719 943505088 491219262 605276554 621220603 644880188 222799392 828040391 538690955 696274983 33711158 100454087 95343539 536138699 17535521 473020742 956557998 962019309 352056938 464062803 516065405 893224225 206814461 593803970 908671867 944788684 599615999 713789996 189468614 485543476 453916618 770094705 177843778 288418695 849885208 881109314 566991130 858302866 57212953 127961116 727020555 789797161 970681688 971843273 823454069 954340275 878001999 890706146 252924577 446820565 876245547 959811903 308571452 514219024 845143244 983081855 577960932 729531485 178124283 590284023 896159654 946229830 994567854 999352933 533857710 945677438 66940044 593457194 834420263 963912955 423931830 892497174 249132651 376304507 78914707 809817588 717902623 929749970 849103999 959986159 366773570 410378532 30264961 129085730 471741596 540391606 105948067 660104327 216003008 234365247 282326518 714124170 502255953 972791994 803917333 805323378 278867600 853022078 186176014 980660819 841768009 869640321 651681763 783066755 712625636 789135855 838425595 977466253 203970408 525724913 148884580 540574513 354955587 980057478 448561341 548786181 389861380 501498339 860428325 996028530 895231189 902326633 155186941 688220144 129346543 763942885 138994367 356616381 825326899 925329329 498190319 799152011 721642829 937029950 726546478 846518210 792918528 927953952 512836686 976247334 905659540 912009447 16114875 977050913 282400098 736628338 307815268 505435540 148966945 599161085 907368224 954287076 521878081 645650729 772132160 916931988 299561095 331482107 542575430 790258240 418167851 569567321 495509228 613835546 324232288 979549081 941887922 958245906 273263871 506375760 854363978 858766647 64513352 785655813 85094882 855030955 78392005 437691215 535997006 921058198 214022840 414498732 10091774 251006929 450321789 705956544 67792732 894472484 152119881 907859499 530312570 963513118 373284933 887000038 88618686 762301355 921151261 998416731 624046740 732750637 325706332 768831765 484495532 670007653 203353506 683282936 479301186 925776138 842435789 894423227 312217343 768540091 692819335 965589583 539488262 690520258 925554934 937599479 580349423 709454827 938825115 987951487 417454976 462460313 568443004 857577024 934031694 950595388 15986081 751282590 418730717 424193850 52112354 486879073 697981938 899925659 599102246 962746597 994852123 995163854 110686920 238168116 602738017 750324584 63680255 121571959 222709841 806881310 609100323 907357590 853000496 990102187 901013521 938393615 923696535 961963849 356037372 909712371 566040735 668054921 975349922 991132726 548135502 626705057 9483958 802190028 351686961 789648135 214390019 927206498 687903829 692977803 934779251 955127173 464953076 805525086 208821730 907988642 831158743 876389045 145921318 942581548 198434164 408207634 442509388 680605218 39510366 630367518 900829622 916224151 803415464 991802013 139888072 173028035 298570839 562039668 832767896 955137769 905408476 941750325 144939041 401565521 281132187 332559582 645274387 980124194 784637471 936176898 605935496 826486830 730510780 828682766 55009513 658847933 899351938 960974112 788815304 982956718 516832945 644033895 509852192 746028571 700635584 729026329 43382918 598485899 330842140 610447856 955007285 980683471 129264105 318434427 730320543 901784996 61335450 894868623 405084340 657132340 418548552 835001837 104662151 791962788 247082711 974211236 993972450 994308983 160564046 667170161 919963744 948742129 372592065 505247301 318898199 361182451 979371003 986590328 864813062 897114357 409763984 840184474 212642765 214089581 233809850 757085940 658634468 927648990 378704229 582184422 761997302 814546920 552530746 654715065 119386603 794092458 415506330 530147539 688935091 937622794 876286647 933496446 330941356 769826867 680248727 820024655 52101004 427757721 990517392 998227026 692854307 736887604 838754360 958477767 1008494 424593796 626504991 695229896 491603139 641719011 238132386 426975619 41795047 604151311 736571011 848960465 263741452 861480662 730300754 969486106 707156139 744376007 96052600 570377796 286982227 395809157 987325397 998502868 248028134 621631602 823041404 974830538 44317901 684707167 973247318 988832893 864664803 925656528 789101267 811700826 827224408 926410044 154146314 417216797 794207323 860410531 58866555 673778179 664565717 679437126 786824330 813568551 578233154 773280459 763426758 818466759 572932677 766340782 719970080 725399833 194581460 298804793 457719396 514363464 799378813 995167366 612143080 875726210 278506040 532518007 845109325 910593312 378655192 717799170 537173678 680950082 415147594 428269739 560587540 663393151 739552674 977487892 196899023 626808592 186916458 509335465 45518170 223798825 648911190 930455999 718450784 903400929 175074194 325883693 201060721 786409907 930349554 959179338 498606636 526616763 921084226 939839001 449552434 732551142 155565492 382681217 358744658 650656917 144787314 278971102 600523126 882461869 165713136 682625790 632609040 794049450 405333576 964840120 683210493 790875209 735785510 947492831 455306129 793915740 379201032 530163956 31323010 76857696 618532759 912402682 390893169 633922384 752758283 951228206 772346839 832578442 858344107 928091287 527113899 557310567 474633762 673324773 661283242 733143208 593929662 625516764 721397516 797359928 866696243 957107904 282098306 697507407 457358266 465681909 793942581 878134497 217477751 582786505 386849287 445741198 563155718 895707562 544656768 773250003 998418281 999051922 660132509 809453874 294422009 514922808 281490155 530566824 125099325 303136441 651241735 926446717 294930896 976685938 663132868 819356714 279465404 998433342 466598659 878374388 171576928 543554774 28384514 49275857 511492709 805700224 806594573 923599521 513728755 532906493 490133224 908499252 890753334 917630334 301939530 380786675 549708464 889893427 509454719 873170030 976619683 994858969 947739522 961138833 351746639 817705448 198535087 482016999 558152351 812662828 767985663 940471629 865284834 960957392 92177238 730345181 882985049 963651723 830559406 866915133 607875794 737415270 278937356 375887424 650057254 737736674 237160732 722712274 664739103 806879001 340125245 622678916 780523801 989892344 96302559 343999275 465782914 519776115 242624980 441049772 171059281 438599354 552693895 651928224 288987940 964999745 816876329 928706643 141230963 175388403 504455359 846882718 945751893 950021764 50184381 987738401 878138022 960472570 87607751 813183117 191590695 793740824 111948621 484722154 470100777 938992076 214888785 237178804 581358477 998181671 68864785 131067424 344167144 839423169 740545038 872124131 163148598 343558494 730344990 946251733 67034731 159803339 727646746 928443312 513663682 757822302 786024755 896865851 826023565 848047804 810701519 972984871 816955678 978398387 139892013 856589526 626314234 992001800 493295001 973028485 971992239 988138233 291947462 838411500 20550445 52742269 872117844 933145611 945835777 995190730 383912266 675369479 543204084 915146010 255831081 388181190 459235389 951917197 629641317 710485114 189525911 966707923 845882536 872134784 899496782 998548946 35362780 351628829 199540544 460118973 140452894 774480865 739298148 957762768 468619996 596490156 513712187 931581161 136304842 760728699 613326091 779379113 814847717 952590510 974807947 978761919 28291143 938233344 73024894 504095215 703075110 810678507 761751694 768837924 193928318 949011460 636828811 716136706 275982368 703314806 891178536 944359837 421744088 585347648 919605432 959391767 194698045 725981235 569758531 669516164 579870994 801629528 219528130 612989899 987382110 997213976 60042658 215312998 842470748 851782301 109409827 308889933 467280917 889473846 550496216 694698440 259295906 417332319 243396654 951455494 307494317 909764479 430666350 522388957 884997130 894343837 715612846 846804444 409570630 537190939 464947354 920485828 230621029 840952116 571810258 604046151 276533693 918572893 974079447 979359365 631295819 674391619 873500501 944760446 304303595 923522678 170349344 875077454 522882423 729315955 361789100 375440781 376332704 507318299 913585128 997905418 373253 741924313 188532969 888608773 930372914 974668929 924767706 938156754 853847824 974124764 813151481 949425362 668479429 685428389 189268594 713309849 430320859 727892474 846173975 964790416 735899309 779779962 424848186 740950092 81595048 842283866 109995865 912153275 440212317 678026525 672188189 958034743 507663139 595128648 413647645 883815308 57426129 678503873 245521236 717343148 672599081 909309811 67582653 867939156 996874256 999311643 295218181 434257260 989771296 994264679 868305384 897277658 311642938 347769654 437566844 456196484 48021180 313089069 187761649 433669226 871053508 981259887 760444301 963276095 213933753 568507872 668867329 941912696 460614371 956894862 737624399 819633627 615289633 856992658 662754630 681271829 774970526 872337375 472895217 597484495 936460272 982343395 954025985 987352628 805574806 983899579 365151365 643244971 978797464 989765927 714917977 753263589 995544225 997932612 537874649 554409622 960957670 998773220 60778924 792934534 954856568 960574025 960145178 978073705 929339183 931668006 958042916 971740884 945082785 957804518 206338732 471357406 522870440 560420682 333598941 354351445 711774376 923020927 941247226 980274269 41399437 903982586 719222748 802926540 701622531 875679343 158265004 327589820 499923632 551136375 319564774 322789776 997991413 998403968 932499196 993125401 575882582 988864964 806009990 944824625 192461517 713091434 385134303 628679469 16975390 319208257 612453644 939058973 628337734 789827529 870134792 970312340 873224349 961311323 237839075 276339502 804915024 922828979 454859474 731970619 213143712 376506934 416238017 551327873 569649751 925800495 713488350 943384238 984083498 989636341 856431226 990896028 315485193 342125503 917930684 982038080 463723830 830314770 158469320 269096160 187944581 255575314 398433480 746025945 243540816 555581625 830301549 979202319 60242567 176329063 884157612 983310183 787885920 892920790 982167345 983438894 777609655 853404652 179259285 375760556 92817558 656402244 674038886 778018394 797479266 968091755 391166475 581894766 251669755 455197280 460814888 976326203 962152145 977889616 315070479 584842797 187146585 734060229 582864794 955411754 383055041 692920259 415960984 872948728 979383687 983167806 346701226 458514072 532044712 931529327 363853557 923298449 120217943 196828125 670337167 923997271 402707408 713391691 174781147 401153527 944722038 964133010 949849443 984095261 794632984 936174872 980126145 984744304 700566035 970778753 394147234 740106219 201690088 929503735 957523991 978368993 849522677 880316906 417769268 455174287 542682306 725016842 109884662 769252977 686746927 813735007 308954793 842845330 202413971 393507427 404127706 794666885 415341543 667380112 305672492 540097255 443735957 732386004 586702736 918924387 97923723 877685397 231449477 469822620 421868465 602545133 856723456 863144192 430382865 539559406 42106604 160745389 988824962 996998823 943636883 973266929 336727871 726362996 580574676 644720110 14592428 822070745 2420494 866947271 399604796 811200850 813035014 990082360 366426613 671579196 687400747 694890312 916799314 933715992 45885378 732851328 679378575 881932446 52985286 258548255 351089385 861434209 311890890 584236987 295018560 894678431 357924541 705203803 620971840 883464961 48466750 739011004 565790176 570211351 980637339 998388811 139917677 163524151 732210290 840477135 139367603 413223538 164120018 884768131 855816230 996441915 247576620 521428352 905294529 949539044 179017261 601944472 691226362 908827385 790786109 866945386 819470574 874301192 780488804 801375658 380633673 508512007 28539274 327491746 933725446 950664289 79893520 452719254 106349657 514003854 929763490 971921365 752053657 971814024 543857243 961168527 439943170 797125237 590389677 982272318 424034755 509970841 614682822 717189237 556821673 706049371 860003289 960665043 89816838 639349896 308710101 676229044 776907264 951648246 399543016 652810107 863492490 939075090 634661025 784580006 799589807 954358647 151539869 712400692 491785924 970798780 25933191 714108242 633647906 983163966 117336259 397244928 204660570 223406869 495764176 797108816 84608388 991585646 86031664 317632695 997591152 998319370 298735027 834468712 730924796 945620811 469428842 504225717 352659120 859854923 678474119 893381786 293900489 388737871 354047694 730991488 924370365 976171337 837321290 845434453 492974029 513568478 724972090 782958317 971072816 992820432 948511847 965930233 704146227 931006806 947036729 981698684 274751766 649442179 941701495 960955562 522999706 633093994 843097735 847332734 296643030 415586343 558731025 978727449 297084393 750673730 505646808 735761878 696890366 980508556 409162070 473455824 322523998 901337824 121308573 700994046 775450190 834870279 38552177 253038839 249042862 671182643 909905038 995583278 772873034 886746915 124171950 737341374 991294852 995209890 558911734 822093766 73064630 451104005 739789319 836150027 712173567 970765429 453823444 849871423 886984774 904718603 14579373 226686295 754966962 873306062 483026678 811936285 358715130 935897699 597450248 847308406 2989223 684308569 382961572 585071036 530250709 725510000 304964266 809985431 624802824 967128166 577068553 870910062 616597708 690009322 11661667 989566941 273164627 391007390 405802387 833437945 375293756 725896861 81304598 578161165 564451931 723503361 712354000 874581542 515565364 932501106 747189823 875964787 961597345 961705139 670192162 759128509 355733856 855305512 474820735 903777563 517036425 880568506 296031693 791572855 280959364 300160363 860149168 916156426 412355940 589382365 530461841 776278465 758648240 955284294 172109034 697145218 644333164 964479018 637740499 971298182 316692260 726189490 936385394 982959047 702072441 865357542 66960904 511632973 272172399 883028286 987524441 997247136 231885455 946628714 410403750 767003489 445486806 501278161 241080507 766563899 834524595 906363925 279601039 966455552 378310197 720552403 271728211 841770929 843338080 974271523 243606874 283277491 45623750 934811407 65711383 275107447 962456618 965128273 799041029 950153584 494829492 651074904 840732905 996721652 189801849 234864612 201721191 449472200 592013557 759870532 712191359 787206860 745117582 958366424 502034097 812126986 380488967 550574398 27782575 922321389 767095999 950023650 181636721 374549559 430178891 698192226 927870787 972966406 363118261 697967398 531038626 953651748 104248552 880748186 615821124 623285070 883654899 952811089 362921612 777101862 126300940 905826365 422613775 654392972 177676030 841305254 210520372 277598477 1438725 712368311 955556225 994976252 451044948 680274970 340325203 710737781 644603305 879355327 896666898 906003528 994354803 994537721 315946288 630508759 482669081 897494893 316264940 931570547 190048810 267510280 534302946 782899682 648147989 723010546 637085998 968849255 457192417 722667744 155218052 280841668 712829618 913358610 686306680 710792119 502986935 828915638 42419725 262151131 104066612 979609700 231303533 363522686 139197579 376217200 508605715 785250210 18378558 177426029 891477702 909203637 132970682 663414919 893877002 973935836 377404999 680675043 343627451 750532895 637827167 699474790 456596800 782565072 654904989 937738965 8980652 21453688 780028740 967993582 858638262 957323461 109312076 195125109 672802734 995864776 988786581 993065530 835232454 892500695 592632411 649512168 8724372 591481038 257906729 524380973 372494033 495631642 106446524 683311791 430003481 435886016 980926149 986838738 268341223 483272092 244441719 964531041 20705833 108764477 873545589 945652041 480022650 521408394 717522572 990531583 775403478 915503774 790052333 818470514 204015792 268364255 945505899 995639768 602982723 646604817 85600819 297322350 70003532 837690364 712839119 821894535 707553899 941857032 306116348 583839567 520139659 539298869 968334126 968914758 109727086 196793898 730868055 842865275 675698324 712159381 103532632 548854434 145961135 895191919 359698036 917837038 877872587 974364534 596951799 793544478 476023040 682214927 666027002 701259608 750411225 789902420 398416637 809216180 980591715 981349127 991668818 992338777 259070013 613406259 148612123 565375046 873736391 927824740 239988943 455398897 953772475 958532647 585568304 731701762 493598466 961781891 979481766 992877113 778175960 787323927 951059625 982979446 491600169 506396064 218579878 715610530 730532758 819207068 780751516 937211393 433768874 672849438 454192138 588435554 258987312 370242852 339486748 700749730 71299388 475439591 341866845 945368150 6688809 770974079 955692843 979722608 84529363 359447273 485456576 885415866 853833545 895001733 546037493 787704756 295505318 857500534 575441772 965105008 181789842 350593596 279754642 938246064 531632280 909528532 515535857 862548108 473678452 889737825 867855169 890238221 743784079 946160688 799027932 915296617 845879210 988887211 208122700 305369237 498298778 655930350 460042810 905958648 678807590 728693315 89317528 720590093 755301908 850178012 383116988 588082294 622870087 665153448 992334539 995351867 461727223 779391858 606989031 985764299 484267263 661807603 555000495 663390824 583520539 856938979 157767993 794870693 742697803 772564103 278662641 824250623 910659880 940689331 166972057 950149578 447296612 581302208 111052550 430725839 389526145 411819877 952999817 969677801 158418254 966041007 396738934 511307965 248506714 290389507 947608975 948170384 640814494 945644714 706981568 779271306 56579277 897977678 582627641 827988265 172858557 658594346 643233774 744850238 20456193 974085269 74696145 470880209 244958324 310203844 533409442 655437258 60921198 673929637 555712343 823664833 397700158 638712649 462904514 844841900 112807694 842317018 426171087 441725483 927524256 978260557 863497032 900248168 245224837 503445804 668638982 959966910 713573974 973417534 891775145 938061918 778976839 793623022 234954645 379379053 440386563 928190296 76544799 483557292 688713475 735694977 661138974 993136346 348684655 592882862 772354430 959544766 432410779 997113489 587596867 839228790 432211291 904631881 754227424 794653391 117817499 821444782 474636255 747728288 913211480 970849657 83877577 357475716 966008255 983957992 59738657 283364122 938061109 976132008 129026263 960366725 689850087 955773123 172138749 871092361 79866703 353858037 276459620 795735158 213718050 874120021 92498781 412442822 894413653 971488698 403576487 766358270 232814493 360342701 443737886 561457250 128393203 558548250 696144000 980236346 14410623 383246470 771181616 910412420 906645036 980845362 158386256 681215934 806888976 936168193 576107052 896275542 894430143 977734142 683991757 967855873 555861042 781088888 910242190 987074385 298999124 697739408 369600383 639504778 201125507 371419821 633635496 912918601 993178589 996760276 766214582 919244442 625780575 831363798 126367323 574832096 2519306 581631976 189300130 621120975 606550034 994676544 137724089 998041093 786233078 999354756 705279315 723878781 848429805 902841144 760500718 921878715 163991312 727064549 48885023 378731877 668126665 994315913 567626037 647981442 115140656 980112769 528437872 815771708 640603238 765426446 974195127 991039716 335995261 819990439 20182237 953251259 872383534 905147507 719323335 817210573 455928558 896337098 144932827 440936017 965465700 991612055 568856111 687830259 732146204 906672234 569577168 819787379 310100604 696270760 557425791 577040826 260392648 517985804 616167235 649166170 628617326 670272269 603824865 765767145 288334197 454701883 139253773 549913039 942113059 951802876 760507555 808863377 248056086 732485372 854812133 992911544 907126187 971099115 9224701 536481763 116698154 419288215 465532748 532261703 147249251 305316246 812718058 924220432 739260556 898486010 601200185 968241331 260903665 586293104 86697023 878006900 953267738 992809446 754483302 846255371 19926563 510281644 742048406 858868522 807627052 876617872 509379448 786733190 582630046 956811853 897350930 911397048 978408383 983465464 261873649 797598170 835704176 879265482 440270715 744945014 455368755 708120926 241271097 913715601 685408655 998316521 151524898 729589467 467805486 993151277 392921067 425920474 414138265 523262427 749556148 901727148 635214128 652255125 940171587 940670377 495375332 744388720 695542988 923046159 884559267 954367912 837389707 891468875 146202603 619541307 94368284 143749604 667507582 901342620 852227766 967074825 497655078 525282372 588021095 809146358 815089457 827969534 187794263 457680679 103618532 875917388 864733968 864954759 842883594 956915866 990466979 995724398 194995691 890278584 873496398 958362799 801813433 913974005 788952992 974449452 995697700 998508176 799907967 809255703 218320666 723675799 594139791 709470526 446200001 557986746 371140673 746215076 450662937 755563740 299239738 418933054 100321738 434423235 384785416 675526870 306779048 353409616 29687699 541206223 559100652 776376934 773436467 959766844 429172677 925995235 717216934 846374146 996636108 999268310 762915155 973988997 448367805 571401343 946367722 974784774 547983191 706975800 562833860 657434132 57642247 391001890 681790023 692810396 849556516 953548068 261026413 803643642 618225051 640810604 453697451 671142935 316132506 491981679 309516714 335389995 797162134 825494434 744793602 761800665 914646571 918832130 287614799 678977549 824282017 834318527 650836654 856589024 500348748 854585570 74153589 909158205 93904738 293339227 813968810 964308299 353750411 915516172 407402197 942078385 894840020 946999215 510946056 801158006 66446290 835961551 240222862 596417655 794575988 929205535 446344167 916881155 779901758 902567220 96610733 983947795 646707094 672733262 712130394 844468865 103032736 730428002 566137078 625723203 680798692 963842325 994381001 997044615 478887835 952251169 907293958 986033231 873032108 902662482 630426849 795595801 723268850 874170143 196778749 706158084 992605027 997666645 934141198 965824907 536481320 693560531 735993693 816393971 978620783 997333427 824678545 851167706 26895068 666891813 378684288 739048196 835156016 947693103 611879452 696457812 619979509 985849167 260264789 522686983 265726132 590432486 143459029 212238045 640617910 924831325 310116732 347885470 110187973 686915656 226673894 936370995 545044388 768130282 637385228 970857578 526624462 567896314 578111409 644478896 165586129 998019210 616464063 653288737 476099356 580431592 960161219 994092985 482130839 744016357 342525037 589052943 757791173 878206707 272574241 817432516 170678094 332761100 944999793 957738789 902348085 926461717 44904247 160176352 657943410 770882732 67866744 284222462 798732761 916530763 48632576 751450972 462991458 639840477 848229165 901848962 432370343 962144568 927696814 953811398 70673572 304479796 906280433 921846441 723305107 833852942 372177905 741469081 956281170 973560695 984192048 996249705 431557121 823201388 728415215 972484210 740547478 855056004 482055246 732298091 96318443 669899920 531738724 881617478 790951191 855354120 221294711 898865951 362644209 537350193 181641949 502979282 706977475 757325940 137839730 957985177 895233960 896066156 739929658 847101555 239468158 650320083 934023086 998832756 729720491 839667579 921032715 986797416 584860935 612512204 643048961 830963349 849062676 990821594 704826582 833965604 412896039 935827634 148190933 514569194 591239041 743518357 627542699 903255083 913592208 916075478 165190919 301902305 580139357 591850254 894627335 990407858 303051594 378553689 269227512 945684489 139279546 572872031 62906393 208711785 833258495 937904427 982833197 993836946 245351139 808690563 11025277 16205417 588588390 730277041 198790780 533654386 217561830 789637137 314028490 807294178 714726373 838652735 470652507 548219155 528075723 990617854 707857687 848241628 495648006 570778204 912708014 928929212 739985923 982717449 203437648 249609927 567923569 677293132 656728957 728073272 775875388 784850857 917784783 929210950 616733147 895524514 840795307 860888409 629179259 971694104 57508256 532558111 556559776 844031009 709653907 938285317 720420475 863343006 895787450 996201332 788912558 959077360 997693467 998667655 341315562 567611933 190905409 450753142 833198356 858494190 109813492 127898216 34458591 441591138 35674900 101131249 247168148 863025440 999263209 999336723 303194786 649905813 435843583 530121553 638136265 858912913 323315350 445137729 704350341 767306020 915804000 960458789 146000914 563202325 517802524 525956450 495091989 894537645 470557176 767418770 878912589 939942456 623556370 908267601 533765436 908653628 641806212 818307331 531189050 628279575 835180157 863214886 163911848 249938903 456279397 553822038 846521568 934887312 734761217 943025981 14272526 524597596 778316157 912427983 638805685 832966908 381953624 638792036 573515754 650063262 165067103 565437100 376665874 912234402 615158514 629966992 364704167 683136826 455923741 511412116 993438710 997169057 208283419 464831772 409558932 628305741 706444369 884605027 448259812 562044924 591563364 833188544 548648681 615297724 675534396 693592266 296278250 537550211 664003277 942083051 399423206 647385143 313389218 670457278 336057506 444823255 908755325 915669522 52647364 194129038 82336777 977822837 309194136 815250183 973141472 984619473 236012427 277599391 594798336 945580233 219233472 228308359 513805773 670800442 809156220 848200744 529407346 581997855 871836957 896968822 654274400 660758677 772630236 925363176 678682765 683334850 400561240 727999131 711021057 789640323 705516487 784824747 41166861 294229301 68819835 170039853 560174114 982663742 922553979 971127669 588615172 932295095 184688647 195585485 989841773 994939187 489162333 642568120 545069707 871069195 852071766 972204349 552519838 748981656 117482797 521955625 304065187 331789481 914504681 957494194 763659198 785890694 246130082 273090313 715008258 961361671 544565543 996285793 804838944 920456997 382884087 866394584 321548304 747062863 237262246 611835671 417799684 719161072 225895901 845447527 745605006 844477277 751884916 959838602 669199406 859035416 637477295 951474029 260352470 290378850 201262904 581763677 527597387 573352244 435478748 586035295 413366358 969506850 728096549 742502607 999236555 999369698 787930527 943796047 660200250 796356328 124081720 846130357 608968170 880655456 218513018 374364585 895578751 925402712 241739518 344834462 762001322 811738374 172647240 880350801 710270378 920922588 501266139 666812685 985649701 992416998 921852374 951849678 784385356 934433005 561503795 823072023 365112276 590702016 902330607 929137471 23561959 842564317 780689814 909382002 548679667 625110689 819544902 965539659 155723671 480212985 309068763 633756504 632383932 957281425 694091860 845761292 657943964 890337475 716913449 833057226 166568217 713159502 883632417 913395889 893889825 991741852 926525928 981640690 847419892 901873048 845683313 874411555 1315274 257763517 404688708 504174486 542891863 749892676 789537845 807181097 821359684 955346069 937536786 977118341 154205440 845232355 809157902 936312756 316638994 542037885 833543985 946846056 232659032 321984288 10956704 251293906 904823587 938714013 398546567 906553369 145502769 237288342 934654200 945490198 120613741 347953652 38387057 724801026 904234564 917132506 507073658 981003280 148384399 313451500 972376834 977422575 294683603 326380991 754758987 925870406 522780258 854082470 298116178 838980194 619277746 736525569 913888385 915560627 459571594 622457580 184511740 590219385 784321221 930832274 309847958 557872693 16400473 965092226 694021339 711668408 576812882 894571455 269594951 480040799 988745397 998413631 224041607 910849665 860671856 947441936 562212100 811757113 811302760 985547609 932668497 999264620 672194773 897757846 83766626 526974933 181864523 798780407 318685940 443213630 165187482 165287865 586665153 776345114 607728064 684067420 476386172 970364994 520984793 851598467 769866550 937534710 49615751 556821795 221176118 331520059 174764134 637304249 530285337 857492226 541728624 677635408 373952894 716619121 276170950 451323917 484457826 995299133 417929093 791554002 280922607 961484093 905745498 944936740 453943626 504930515 892085104 914610229 127967975 201046730 744364564 781990837 112590705 723034937 710682564 783207226 141357228 254453795 765223206 871936214 730983708 886803444 159389476 860087605 368244326 492250004 241919938 798739939 384814806 473892763 460745309 662287567 94614423 576063237 520376675 756712015 44305834 861288197 705956382 879100034 911362538 956038277 893707084 967271954 802946130 912939332 365138092 548369656 10032329 370146417 820124701 850420659 493126385 871437783 200109442 938175456 498948407 822334687 400593538 749888363 264701926 481231423 723437140 761492192 138138491 441301765 761391496 888927563 466181725 758391228 821041295 838113690 976460167 978277712 461640415 945938802 289535476 564682811 451916680 507862673 182489375 205306622 317371345 699214831 858845579 904739644 565119542 574757541 186660915 312258570 752576828 895577608 250475384 657822649 454440186 675307046 805342496 867157670 593715838 706826850 653465919 723078358 795193208 947064191 212494674 774061233 643013260 838787037 551252075 940195823 865091200 998815198 862611388 912982301 206360615 251059289 899693471 958166955 306481090 338490374 475820565 915847773 560104931 753420227 604489675 982504536 201193654 221282920 137510611 514531297 602469218 778647049 193795157 732562607 924717843 961197713 246768189 567918128 99684506 469057598 51055658 154010721 701336895 847224520 221366348 994192873 355533769 396584973 253168352 668130279 668656931 697744533 898276744 983262018 985079294 994718021 233617515 468215474 724969997 800608450 983764359 986392008 645045895 880584901 20842544 398824350 107852009 739666539 395466224 458034753 631708205 911532882 719975138 774940949 890317755 914824665 559180097 712866506 968580661 990369002 445591520 450733100 717846635 725304459 288531334 793321375 78850664 90513457 870256460 990068597 651787834 800040142 909946743 990829591 453058821 508616764 542205867 985782581 863033747 864332519 849869282 943797919 931078754 996738580 632244326 785213687 193665377 838303845 910424882 930282667 829773586 883585495 366288434 813597355 987081068 998549817 936375475 994109496 290572043 769369333 237154942 803735195 660299854 974717589 887215195 990548538 812691478 892920586 365327401 372545804 870681921 940864944 346392364 977184458 336994654 454022070 838191512 992614890 807599444 985002432 884128539 898516885 414031089 604554792 710191237 765014232 778301765 938514683 813472948 902684055 991152670 995684001 465781805 936832295 681728805 732500665 355627946 708145397 263663602 911355545 967195643 969321662 567088533 781337270 866864358 920159315 846138090 899754946 682563657 901144591 479511848 957425414 687127183 729121361 314801602 965691922 850262665 852579166 486806689 909344758 455015165 816621334 462863187 922845908 991402452 997317074 15682357 732470058 580227647 624651207 87352648 463043553 251031727 918336195 153443811 798339075 567016433 839105311 165531534 706450930 897738622 906591929 282166265 549332268 373575576 485223737 191929395 776600405 705236730 930192269 529690643 583016519 167256146 930940537 480670875 677153268 187802546 621369762 680490599 751059485 9480279 510100767 621222002 783720714 260671730 637904618 496178652 630237324 10723698 660713369 310479058 790814388 42253557 990900519 26924662 510222230 309301608 624171882 997100956 997785895 49081180 735763524 802880221 886737928 984618545 987609523 828455345 917250817 182561832 752685203 445807127 649174267 369431003 701222622 874450173 931644863 65953797 631127541 466412177 983440913 416326867 864334169 685558781 902873085 437384140 478141556 525543217 899023478 106072060 628133862 599965829 956708231 851998700 928719773 369198682 813634886 894076555 910376637 165038975 540269979 429829841 912931906 234757256 548426933 879115873 945091415 750556139 809904445 943790611 998209146 974987128 977422098 93679010 953448740 555935692 738286936 425228068 466191068 556057657 715973321 448567993 628963785 139168496 670371260 675185978 985540255 381257773 964050846 100445806 331001263 901081120 968783331 839876477 948744514 551437553 978722658 18441051 424713752 553834940 965926420 445581398 490321879 388598582 409949724 93727733 697049226 646101707 800106833 657805560 730892668 53398330 662127243 74178080 663595232 577005221 745184594 583329085 866191218 855602886 899328966 318677864 773352156 951611168 991131997 301888923 613582613 321101706 740965803 381663594 705225760 970783061 979309289 954120291 960414023 597779041 700014743 10015656 86217384 393610528 898370467 768019655 876092658 105144985 162557341 818466994 917613522 686205068 923487390 812654350 938091636 988045814 995928890 71882512 965058311 598339571 942005791 552749994 718678023 531613652 994802138 493680232 896778516 962640283 997682941 416451195 455632704 119451213 964190041 562720056 716675112 997840915 998477390 864977071 943171676 407104429 955303473 360509083 849073693 828456512 892595782 754727408 858466859 760832812 834372645 856085201 885234999 937201287 952992661 505692497 594749627 894996576 965154446 555845770 727306753 336206104 617858092 89177991 744003938 264613085 582353821 403500696 955079176 918168727 947610950 318428984 964100644 416861312 845864256 42280768 155732416 777420267 933777133 928732431 928768140 743838238 917294621 685114262 906935326 845785760 933800550 639527596 723433588 596153739 860269298 942021485 947556356 173479053 811945022 285000637 992373437 153654432 374511236 883831638 970416188 513987871 983560324 906715179 919802525 288824693 301225226 158610435 668680606 921096923 930445477 50943236 586093679 86220616 737483009 128118233 364980332 998943481 999388451 750539284 870926737 797555673 990474762 498705894 746611242 527141752 728917558 949149213 995670720 576694110 885452604 628879012 805458356 354848545 505028040 554733000 883243270 306382500 946443130 852383304 929806569 543013938 839236063 614009827 732003182 698440233 771203293 67092186 926036061 796262604 820414207 268532430 478170474 424060312 759477278 308241097 754515014 77868178 625762845 500577931 740418196 168084717 587423275 564240238 688763091 762030548 838720174 854411271 952330212 417950037 725282627 982597918 983481173 206439263 585015606 308493201 722642355 629244618 793593411 605214113 871114139 311504487 401049492 483352176 968300168 814418112 839503116 41354658 144014213 421835945 918130363 271230148 382959612 699521602 999090088 984091149 986790115 684830559 748467179 42692304 141432841 651710705 700723712 483320926 573764225 462047383 563374695 408805763 415915173 641866402 970055801 358301534 914749995 275888514 374008888 37419452 102660633 231041623 347809246 864796377 947093932 685720650 956040863 569515592 971203296 198501726 797141630 349710482 508818693 78673994 161762622 597028934 754187035 758790044 776828896 745019362 920144312 714543150 967312407 379392747 480827821 582767301 709025690 306587695 526608817 242943521 805733411 169054325 907401229 256043573 953693364 979112974 990375686 495679342 960923347 533191340 924166503 312307330 843367127 8602673 397163764 455145068 628354745 615611744 837705019 928573459 982458370 764599471 837495019 355450594 477776971 428582149 465532892 213139391 938464475 165945335 807655069 618032037 727885404 684412273 747719661 917702078 933249235 801597833 834608621 596800307 742977622 609699072 839999945 403974548 431199192 555991910 863857199 119612665 175644935 260849538 915585035 5935616 567575301 776623072 885705731 388527378 499843212 709265393 736048785 427843918 817498045 561808567 991471422 222008945 757211794 635620588 919197838 622812295 776430858 657668259 735365656 477937734 704565707 665928810 938069883 21453991 434584122 980838293 997211096 721034160 814929342 40186010 950683424 234442923 807208303 197516629 828103015 709967915 909397147 442839238 644595176 654031737 994537616 273822255 585214153 894887173 980816654 926910476 995829538 412184306 571297371 683563673 875644733 247888917 562131245 341026659 474476715 300423428 462172037 868217773 951307266 642776890 882700697 854829536 975168271 559630579 562440005 563990925 799355803 774381996 817682934 471796703 744006200 59059049 346086245 582168348 655712930 517887996 832318814 236361804 631630874 914372508 978305153 332773968 400846090 895847108 997922430 259474364 499673762 871239588 944976871 973247533 986055143 863917822 922019488 647060289 728349278 313110515 857966630 433088356 906082750 872097860 918516153 408853910 592681713 767202216 975294741 681497273 878898009 910367633 952813916 662937690 796148508 542820664 787304670 813185442 826016317 484419557 974727123 766693226 949888086 77697235 181768386 28991468 625918853 584570822 900885417 697187828 894385427 889258989 908756097 27062111 576404637 989505937 993842424 453871521 890567342 3775644 905357362 690552564 860603663 611822636 783048530 320633751 958529152 27892077 204405301 87016343 523999163 792582719 935881415 306486905 913685033 206172759 620463068 383283466 759148493 569169392 904223043 872378694 989695226 816027500 840964220 646683567 992697758 949917891 995228864 499700534 767697716 689955506 713938416 945642451 949282903 274741663 457481798 200484342 992406330 669084571 799383540 397396928 541088785 314052279 803124242 768747309 996117910 37188203 711106827 456179518 587535297 246953969 729850092 412944072 751186020 331869297 985760561 57207964 278655518 601420330 610538526 527838242 683348371 692683491 947272974 484496935 598041675 310406623 815959523 265510244 949815909 35637367 122424876 698794206 938979333 387832681 488808745 74316339 849217562 257185249 399933915 630291239 909140019 421312916 506875243 18767672 789592291 90062980 380706420 783369268 953403942 949544110 997404825 510659262 523464812 524966896 895422823 668124964 893794842 990941168 992525995 357404631 778334135 613294668 690319652 37811515 864293323 666946376 976517298 248301470 927969731 333197196 668384401 689489735 931734335 748984584 920743117 818834302 857284334 727003819 868115438 463721410 932286516 681432847 860993643 263628234 773957335 535730161 620732770 969993467 993848726 37481654 495449007 396300216 844934902 780642466 897900933 373801894 680692671 203420060 448892331 448401158 891491994 493915366 809298251 332577325 518674084 49031435 232255196 338748658 545457063 802300673 870482745 452032138 902789180 412399084 596105776 408377063 613478932 459969746 948112766 845612119 908154219 201663374 559979633 310896841 595955026 535387544 773344485 670646822 966515801 79753663 171650685 416572081 638400970 416138313 901541030 530753225 795203018 967361193 992955089 116549365 556210377 103639011 235741873 565844746 980363850 861940365 974280362 417128844 749497334 705276735 939732912 908675468 939014443 288253191 756398893 703679180 856267045 313556956 457712833 67746190 712739136 678878608 924510404 406629473 512989854 80095093 961070840 893490413 946308552 514131481 537748756 726350069 791448057 949828684 990638785 698943446 781178135 126138859 783721195 392882600 750928308 195840548 793080995 234103711 400746523 805862608 960954048 485108345 678124089 214877728 420675948 962045524 992322340 619157152 660917176 169885767 216454495 628109675 825890689 233805430 700857612 514050854 793749296 794444242 964202324 601350307 843360337 835405476 943683528 4197530 127411269 54357558 316248726 711105921 995662466 126708473 692721503 741219631 956697331 379983348 691859462 636515802 767773474 968182223 989379835 170235130 467993282 898753142 932926287 449343184 888132203 200003610 592009201 737714834 923030885 235930971 859667611 350688792 895382544 445508451 884020965 514008534 659055030 977701586 991006998 345649863 854550979 105420515 228112706 546972437 766346730 672398748 936993749 352224976 838040410 826043995 971272663 169810781 825791096 335804900 570292182 520979449 698021571 34942803 45848359 719528335 891932102 660117177 917852145 690151467 728624867 677903604 953276738 580970934 930090614 66499777 779037147 704143053 977950657 785294460 940394633 111558558 362618570 668648763 899348534 952390841 972412522 460038659 702579834 514671532 591477002 716253434 720274335 86278990 115366605 887404647 941465914 609312240 669805117 180678519 418648071 180707640 669731288 187794783 226403113 601805277 954891516 748681998 848808420 921969461 991846296 768827469 808598767 730082389 993409552 336063019 419353143 415578557 936879023 733875141 957052655 350135494 977835796 853163612 865458118 270684001 300419024 730130732 734006927 377609452 927415351 573246206 825263982 571672253 625005579 671750724 825661071 919882941 968388495 839790703 913236725 198940247 453007439 538735119 578959837 790233847 800008664 50123422 399797965 246715768 484008487 947810978 988335957 362096553 684438807 114851732 327340418 30318768 318121195 271478300 835799180 576751959 608060770 9205532 937275588 746287985 791646134 416356884 432369800 904766185 937485373 178479014 463662258 380519033 398794247 963988587 997700233 450472842 470991059 854561792 996162797 204301016 679015753 376252326 464351154 476444736 709750653 744285516 815788961 513238175 749888168 382056445 496229526 141143603 860843336 893473845 992678605 964244697 982574922 658398487 729452415 377561409 956533007 495252676 726658366 965045399 976379781 588602765 884439768 39293750 463808116 371670516 452418565 602519092 761312677 767714352 812589205 319030601 551027379 477497320 719401614 191268002 399188866 240022831 546085468 619834739 931706283 471266688 797897274 645349155 663542232 925714832 998255140 556374332 815148612 123851395 255785672 717205592 872538163 750958635 785242723 326531271 879540922 75756246 809734064 503643794 624813071 612201169 636495200 263694456 656161704 823735325 955771295 729243656 773448958 853110191 881957025 686902082 842493702 392955016 929782925 959087298 996258751 506879379 869182016 974604592 980239882 508950030 902235757 113535578 378789276 581685109 775736226 993854736 999128361 952487341 972006451 346962616 894244205 529570561 724371079 565204926 565746019 532452513 626574258 700599131 734760488 668000355 969145260 200884424 420588778 304067456 671523624 424067338 946566538 418513712 931184002 835412622 953145238 906459068 994928458 964127022 989783783 362220255 975763320 437023590 730423771 843977523 865192108 636487271 898491267 911790241 991417604 541263572 840849444 226366038 792324311 673001140 911398915 20840590 712886416 426017387 431808222 351754873 761072511 81014218 670179394 313438181 636237851 441121192 716821206 736388539 788305970 398127886 479868378 75954124 96298859 613617014 966419104 598898648 969229550 188134090 570839504 185881222 952674297 57533863 294668756 338971213 448860500 851588478 978708153 19771037 66379382 45032237 543529524 10697974 408906408 647131269 734694394 977841281 982508411 588366141 804368274 775857164 826051923 148940770 343250765 606861487 897671419 917507899 944157138 870530359 945186670 721573853 916134657 243963526 897452107 810967023 886522804 244480562 885868367 119206710 201900626 930373578 961344560 252222508 996287436 46531573 826274883 422854985 693875472 208448878 884158361 545484061 547949475 576948700 807066944 692016516 969767986 88488506 567442565 823991964 891982748 483354925 850899911 485227526 796815505 415635447 997051419 542981455 672592581 76724783 709121843 237693073 352667005 810949816 913066720 120477292 946062859 393499855 919810888 608702797 870353430 639914317 881284458 232230033 725407968 722196531 910815359 348060516 833959225 954834490 997837561 9581006 957060649 336600112 507876182 357051848 527537982 521579920 551136004 310046514 404260110 405329681 788520801 593732203 749488712 551195812 738854983 946472610 961879674 748044501 794371221 423141111 725730242 367117844 782536119 487116728 637556066 616418378 843522384 275273576 781985603 132143026 593954710 747898455 766718565 221571091 652104650 943065329 969764816 165279580 615380024 929331762 958221642 107909294 975962243 683097862 904568565 367694454 544517138 123249367 646683107 198859656 492334109 509779403 763333760 7342356 451500541 306670011 310548700 581710214 928662214 615606010 888462565 340492702 705515362 379011589 402405714 545867203 601324858 423379605 742257930 954546566 993207730 321975635 834757830 378169114 535130003 207227794 373595578 235171629 907970178 694831295 870654633 540721783 725964870 317184365 893392319 890735573 913505596 58252461 371792923 184525198 827220555 401559835 789091117 867395331 950156425 809922102 857232357 157794757 786787484 698624048 730821957 508093175 580370279 875642665 890515121 649556442 744512704 544619327 820566077 184928156 495050121 175656830 860991494 349933876 777620639 179235148 194280108 765167966 943468156 861980460 885655804 205795229 774176519 354875147 960817113 890797896 975350571 961585336 973097402 339617770 436614003 451080546 699470261 397387404 508709905 584353625 666978793 73228683 246107962 512990483 808620659 945013710 966554767 755329532 997059518 362098356 727166413 197910795 955335682 239975611 591348638 63337482 245072882 271177273 807210300 839534056 878838800 707992716 886144114 260958939 597169383 986339663 988634607 294982977 382161947 163770897 736413858 374314518 596231315 375940008 466406729 667922759 995839122 807919028 910381486 980600993 992797509 731165378 885580720 633078864 817263276 480260011 819735287 725164296 957912701 171505021 768691665 487023838 814489585 779626862 962262126 993930433 998316953 382661187 446529733 832164176 974527173 658576651 940081073 453251295 597884596 223089036 282813345 767547972 955300134 224886808 407549954 649995349 901168805 451407951 899248413 464950553 529823454 625216252 959659639 735779813 893753856 982680387 991507935 200666319 410914212 304150395 702787234 219778190 443349624 619883804 963483697 567879433 875147206 643645971 876504136 492690322 674872348 732162511 793439386 219208917 420363907 808615016 826731706 40548416 327722681 128327429 141494119 687887289 991930437 939532181 955768807 58823070 701631111 488260320 990052027 64165041 942195753 547958908 862272175 519322521 777117582 43657705 419479887 239905593 338991787 959504252 981539985 491424550 565094536 60506097 297888373 769374314 986182572 766334370 865823885 638486888 657524035 818270408 837948635 548235865 926011057 788054547 932023918 691064843 926821092 327799317 509351752 920437727 987414712 55251276 687523673 356833846 370801895 690930587 761728823 522737624 870782099 653049851 671141976 594554053 889394033 795177896 875233160 331544959 515089618 478522551 741235453 676947908 884936401 543920168 711252640 431442979 997582759 995337908 998276822 88285154 789089492 375322087 565916191 128526535 226993187 130653783 394700344 28569151 167208678 591310133 819680586 340889657 432605935 444876379 611812203 341233960 815865221 730754048 930956890 470862493 689201847 916837416 918608592 818475256 833119489 245878661 311959680 255813332 900743088 158863951 213156951 986820792 989972036 753308089 806834381 781086386 912931058 873111366 927720733 144218874 960241587 478136944 532899293 789076531 909780280 189436333 354802563 126296406 932067699 18595633 258836521 136352585 519814787 660174196 959142329 350562339 946571050 658441926 743798841 172556958 441487194 536547926 756140627 953241334 990190969 863189825 949627035 967785847 969272555 709118514 953842045 638834205 982279010 802586470 971946402 958671491 993489376 331902771 695931431 702814620 768312536 896530162 909705029 343824626 787866072 420236200 566220091 805670067 975258936 601454445 998422703 664433406 827974808 502436490 524157123 500756918 671561434 70616554 167333954 834335797 914187855 293233296 646750008 120580957 146276021 631911259 813988990 227254827 327987340 504408947 904265556 823317141 936768385 181930928 868360636 645186846 950873686 110618407 425658058 171573221 780860365 455182496 653621491 969408955 982210295 715355777 856672587 268816736 315806192 478484458 796464618 809958280 932898407 375072314 856174444 904649966 988159848 320919732 592835136 21161320 880980147 320150208 619542038 146553716 732808109 512993389 573224542 93368951 252659872 728808530 750699583 561261826 921217562 558301634 604487357 461563815 758880252 796232813 917647305 377166372 668865029 358541702 718099314 108002636 458599357 415057223 767556969 619176947 674473754 873513916 932294776 567569009 998446935 349904262 398707225 211129125 780554976 476770289 936261858 978228748 988228571 667338977 923169672 341538991 886616097 710745402 897985239 34724312 807199407 744572431 936153260 846063914 848936507 519986038 629836803 993309214 995228664 530938245 865485209 152219372 777979467 163494575 367144741 209679661 891691187 208111288 852735381 204123350 302053148 952070444 987325454 36186363 995665850 493562585 744814961 68809361 330640628 44527641 978701987 623747007 665372226 951841310 970257095 646623966 989051820 752452623 847647947 274086995 549296297 539079933 852240560 840351322 902282162 983480125 999131971 526076328 699407974 527779111 733866828 819731219 923284398 912241893 927988513 204557727 790568615 249123255 459966882 177823870 604448126 302368937 903532224 425979259 433686032 421845716 788244242 192335288 829748835 788136253 844198014 222594044 297197198 577071211 580959475 561338321 596927959 270727272 687319981 769286308 932482604 331237572 842056091 328268430 644496769 436765399 537619933 882100016 931687522 415258837 432614762 103237407 124895565 36931874 132993001 609849391 978638474 830164396 915218576 859478596 862922643 266617398 933522270 359825020 994836987 606154697 889996115 164871461 421281036 830040685 892828995 658768251 702722510 317930448 966747145 293834170 728872892 690811715 879258414 81977294 603128656 760856280 933994682 477283597 649385963 4430633 209472504 151935050 519840490 376590573 891765381 737071288 921787919 460417982 885444308 264650880 734453017 368498101 876770450 406073322 566890491 868142470 938658373 646223885 992739658 338660603 388307156 611326137 935284493 707724090 858589408 519037394 717248202 390485076 640308965 907853541 978503495 331635274 879871176 138293443 792844978 104402503 744349860 493731631 946474148 429640903 786299341 570270810 767900095 789207679 992517896 832654588 998865126 852866061 965826974 267832865 671808456 601630804 933257819 236068564 903658030 66772467 531093826 299448084 792795652 910116491 919991452 925730249 974084107 538541296 724044510 991838980 992558701 531860854 940096028 895889590 915771559 748258219 836797154 165578082 388089208 202062880 964213908 404389772 692027989 609477974 800877042 630492814 719445813 229988111 938088678 202188598 432627632 646039175 782939951 32636192 624662716 88630443 326517624 255400159 422973444 411566700 673356677 969192169 985072481 504553378 719451616 580887159 610196008 999392620 999392677 382706661 809460542 905694968 964065182 970305623 973538637 869718124 923306146 217868216 797951273 684275159 820634556 901411773 964491086 278074071 967918574 98360399 404242890 204046308 998580802 49263310 655293270 11240136 485305061 706240558 782836625 845866822 995024753 758098603 759571430 919177767 994648829 436471287 619966688 447948911 834810220 198488409 558952985 450430458 899310725 437590352 837870825 498639000 803498517 835963271 900210180 738819928 823922188 188940132 328682359 291713117 607683918 679049963 762309969 383872725 748681884 193060746 434091878 835747103 881530495 682777594 721794446 264364087 860061055 63286765 780881743 551622164 718347346 72728562 184956409 618982470 965372968 251863019 469397792 606787576 743960625 87676518 640344775 852873718 876398087 989277122 995798818 86834508 238402707 442284244 754248762 256405350 625728122 984636996 991647150 13170694 830165423 7701193 643918793 34220298 747943174 478426498 714714528 899132053 909633025 54363307 306660039 698634086 829813228 126212327 770343349 865773515 947596491 528466280 628233524 295974578 430590290 5307754 18228264 914119669 960737227 464397799 838247916 656629295 708645518 541457239 597926929 939669048 986475863 337341 530542122 89978487 506182479 448878358 705049300 874580382 971255748 312256772 487705562 528457121 550260924 663908516 679455306 474079165 562628620 311513543 539244742 55097291 355344858 575257836 867406774 719987668 912754534 31355186 138730528 83260473 266177416 118628923 554990775 52035028 193836960 180754335 441027694 950440988 964604895 657381638 894130994 522432572 868137026 428128105 741635203 365037868 402963857 321103919 806629462 599910790 744921211 818412980 947688934 512546323 761685587 851612375 974446353 127535206 936552944 83746709 109300639 735615368 757221175 751863351 849971372 719473570 809331346 336724347 623053734 924092766 991938979 136753482 324119916 986197527 989970518 998877473 999320428 714410282 853376600 916516196 968783870 461262570 775344694 745207814 948504417 901942092 928780325 345817048 681825175 842776568 997912985 417898213 861049808 726883 896023408 352997783 472931729 727475436 977931849 439833653 553209687 374642023 630436624 583328579 796845611 508596003 967718454 545203774 628249824 430490846 960923478 51537502 339060649 957775368 958027225 615965370 779416706 908205202 940967011 741609927 823053519 358504388 931040564 55075037 209208571 331433028 766237704 87382302 143529814 105923778 869573801 766668377 847307514 71427153 848089214 883873969 920589062 319962942 478481041 406678056 946945160 352586366 786068232 87168594 275320036 739006580 968079180 185886201 489948119 142115773 792034621 403107171 712491127 748921449 813768226 38042885 767117739 809188446 863130366 123646475 560621688 896038238 951007170 249390463 431010304 8616700 168391752 607756327 892118832 913500400 919562626 836163669 987283225 456084810 913060760 467370984 667469848 18397202 104646898 603488654 675778489 329204718 355262024 552272271 595889202 755805101 967637114 936401394 946865561 197231007 916812307 6749628 211828659 924622578 961519295 457298423 780627506 189766589 839840603 317765383 812757460 909164534 966455748 242852757 383558502 638585470 665781424 558386576 631833587 718707968 848215823 805679649 830830674 572866483 729099052 849210576 873244209 251859459 744778990 386571452 542038741 919311927 978686569 164214218 624400462 284777669 655874324 280675012 420088670 657734593 845657133 226984114 683260316 388188825 529473812 838937091 873671785 924541463 949969140 506802342 965241369 439932040 802210341 125847083 177683034 827083760 935668340 671340144 840368317 859480467 872871573 647157239 825555242 94093687 513213496 178639981 419802634 782466051 785347331 426295689 568209439 414793170 858114687 64633315 285642790 793093030 908941880 336502434 827297327 668827801 803174554 7906906 836701378 981206878 994716706 548692540 624589626 565208920 903956309 551868940 734605167 858937513 870115856 741770091 887659482 989557143 991160645 759702560 788613272 946219855 961002283 965540107 968359864 67675982 788488292 937964576 976799208 984812997 996361312 950448931 958497998 522181984 897220152 372990420 872702900 662362619 733709698 630546216 944926230 48769405 926415151 955289225 957245000 981196697 985671146 977660310 987301892 118297578 189918375 488361153 658101545 257300090 647179112 741346121 941428308 22085942 456993635 186569494 908223304 599331521 799842395 562853401 820865121 205421924 926973333 373206811 665235845 974222767 992756670 230802256 506289538 639764509 780696686 768609339 955398757 718575948 990585597 719968397 982986846 655187359 828062169 191123063 658412977 289741609 920886846 674311128 805616686 845252673 991102644 72162806 412862056 957755189 995684875 618959965 984171089 58892453 157682005 62239767 734479060 907276292 951043508 792363661 973504691 200713307 501340121 418112281 454736575 818925447 996780546 930083368 986368519 220567931 293220384 290373649 575978243 398187951 973473628 899546876 933198188 425070218 481300107 725066672 973173812 783778231 957558460 471915702 988526460 56823327 251788761 154004382 979015507 766173495 810715977 209955925 346982357 326986313 904665676 740486838 875733062 171550699 371707328 514332613 934321245 713007729 908497777 237216819 304737053 331202482 357248334 94995234 174896508 908962295 986775101 476671877 842134720 339768017 374682266 252035967 676741981 881926933 907000758 165841178 671556753 892579694 917238894 416810773 438326137 704706800 975278397 500060886 732818280 799376709 974659677 902674622 917359994 132515475 334982008 760259842 841734720 794144257 869064479 917272024 926547034 165405150 572710321 285618879 564404017 101956418 877584293 98043117 210732261 830709464 952782000 120656203 957022490 486484167 708175574 453468025 516838303 790769555 996587444 884703706 937185376 917810114 919263719 486845368 575787460 931683196 962193883 976944816 980942923 976600734 978087609 831559938 913126546 813613595 846857353 519284526 934879039 481684161 602887482 440404912 925012170 538608635 712268324 701669296 915231474 470180198 894105819 669993318 790357271 542890208 545084781 23600568 787176092 694813026 895509567 775429309 874460803 888775549 968818895 646326962 695800687 559275158 868207675 474115245 764192787 202787888 612953453 586766078 765415933 716844819 823674937 896466240 958247423 370042769 569509454 546285602 558871141 840979255 938212514 475681569 831196949 107921393 577473678 365102680 875571611 791581237 842528862 915428053 932661761 449908831 893110838 366622680 899894004 798003088 814139152 357136789 928068602 259371955 891880732 493378605 671783935 200706876 207879375 441396498 905543372 763743825 864310179 236190433 762691520 329776819 454367237 6896440 808083399 744295375 954951664 225946944 946710401 6541817 407195162 317858486 655881088 507985875 539536676 945131453 959388904 412077362 695434167 204306244 252925794 253222411 936965584 654754685 731513591 924343905 993407249 692694885 929758268 157520253 867433755 535761804 673116424 522149121 659777840 851146149 883786467 357819120 762702133 544589382 732883777 312003315 598958342 965587956 989299775 192519806 968131840 658807995 840815419 96207903 790942930 801144389 946721034 152432073 227814836 531659521 583962726 708169976 759175071 391650054 740450390 659931200 850186611 652854405 682313665 663449041 826671538 342788836 565403152 34975806 503507088 908146212 926067991 268556336 596898223 925565367 967255184 118240035 771396289 285284284 568400514 476260615 545839332 299300273 637062406 442410318 536795491 941991291 977095056 712066221 998682650 340456690 704585859 595902414 877111208 139766932 376655173 851107294 932006941 443045335 825933426 627969658 887732847 932413944 938381102 736133170 836767898 236682592 349428231 328738301 628511961 46116544 790055072 698680759 989945852 109247251 137054944 174376926 969018457 60938911 718634684 769265063 854435024 471057902 708745412 551148191 695261130 392629493 691388562 173983537 748981277 227330366 261455431 745185604 790922723 87038257 313318421 497645347 535846476 597926008 859736035 65379026 834283843 70297892 415018792 22030708 73479468 995548822 995853766 128023279 489565396 158869720 941858877 751181216 824587954 299368441 833422086 641330241 900355147 396304956 774695478 828871732 980524527 306624119 361506880 64796808 361552140 993142777 994777030 7145281 134292251 822200620 835694078 666355664 853437663 311788911 942454755 652139082 833373139 917230570 947898543 301700335 321680658 177580263 546347069 300510177 961339089 101468614 207418051 688292138 865853226 235072935 967812782 529692984 588280251 368278020 594227865 814168819 981912472 140159788 924506829 83977752 380642581 159813140 238818119 83157946 376263479 306908672 779425042 400775510 706505300 746659670 811562932 575640533 783077858 658887625 752969869 535749667 791501364 997393122 999122943 377892488 564150796 214673324 811396124 998979418 999013633 762802331 819737613 331485323 702399414 985975616 999237885 319672314 669516725 814128161 837687415 898823419 924749133 279667360 398453489 394750788 879859751 52217659 554409085 112957850 582870522 813542716 906470470 293198195 999322623 192305790 896357881 343253960 605949321 173881066 847969436 378565832 532970581 493431007 549580108 723760426 755340084 426143945 787738775 199068737 729026905 518106292 984843519 219626044 557078464 502894855 980827041 205070551 855771295 73089816 643342887 923009993 994849537 103836471 855021098 10498654 580552537 963046112 967997055 662186965 847000275 747759750 899302636 494295102 788936175 338518317 419300678 480246889 936001584 170369412 346176675 113484186 379688153 239946528 597189260 905236024 981646542 469432013 598564604 67906892 807733494 183346554 207303318 544801688 911130581 971390469 993203887 322285985 880084514 580899047 785585963 975888545 987907825 902293620 985804774 336980987 548908787 333687097 672253554 310582430 395136226 768883741 994203464 449297524 734068750 245009331 902016569 540869678 712151769 107716834 212668874 919015857 971812900 840740481 889845429 789435474 819963882 795430541 990917697 995068792 998539219 581669385 624673120 607411343 854082063 951822156 985012405 68165073 183555825 168369574 348190046 445005672 635201717 596450849 672073434 454401800 948704619 145263539 374788868 604317346 983073291 995646107 996864340 492894376 956077979 977152072 989390660 481953538 519060262 151731274 799484823 709758707 722985352 248070590 783366865 657759662 660146660 632886129 947257209 896987800 939564072 256577349 870712365 805938006 895640915 24225937 774793711 60064330 365020926 744465336 931807988 928820576 940387405 516338379 532358384 579112678 795379750 549914443 914664649 864431963 986540340 806747139 868983689 328907837 754623635 776300144 904629400 767833955 828755016 987322080 992651791 803131589 949629584 852275098 877929505 818853342 874721238 572396100 835993751 745410535 915696292 42639716 567471687 967590158 981971528 357743509 579391187 379736266 424572219 216110161 248681925 637069305 887229125 332654194 737443290 500116993 985546391 226562021 265238953 422497987 562489416 967915722 989675816 575327215 886821408 874137119 933421512 807812033 853286270 543297094 725750264 530748822 947404574 114723429 569820600 82003487 934176458 756182383 892587706 854154768 900572067 925971562 957653379 451218879 500997757 206820358 220239657 385704437 820660863 434402216 957091394 249330231 726941174 828893813 893259735 380052158 590967041 155665494 514245662 154789728 602598556 420375108 703510520 599052122 798778620 27210780 837115147 117648915 438814074 305147577 907636817 427950905 564938077 281516822 885285825 522556501 975982192 957398223 976136117 88489390 619104420 612770508 956001289 483454438 912903590 108762988 109402486 188904154 592854928 822242721 978083396 719306289 783468279 251594035 973368938 676081984 838943405 683993825 685818926 805152624 816487638 912491496 973388030 820092774 882976382 327629631 694682177 900755493 983674636 575669880 637508319 584749933 736730445 952921434 992579412 158135747 465686771 186422803 590562237 916397164 961979385 941939461 997779429 872954838 895534788 553525112 634770419 346026935 850697498 535781460 776608097 471092484 700554744 395486507 975044944 950026286 955124122 708143612 930573023 623305709 962468920 750554101 777300482 930287758 990784303 764550105 825677407 737403786 943275769 335595029 730127221 793803937 894609067 331679183 618357267 104022185 479245475 528828193 765059008 565239005 937282098 260874282 581298999 131036959 180091253 975770184 985093574 497914880 701969662 173577507 336650051 682432108 686513161 500445534 807669971 33004737 161121061 426586049 550257257 598275983 938937739 401963603 994417429 355904258 511464630 873231598 961708614 925449654 973080810 640196947 721763608 470411639 602075108 834191517 957408735 637387399 864844461 271139798 310572149 553302874 771005849 883880057 892042086 896613286 949753929 115991172 293158661 288167291 783270499 677841875 767512656 52950024 781552321 586598792 614266006 91946991 597495066 425825023 555184967 326385319 332844895 706678924 924050582 645986740 694816390 976319143 980055592 332119676 503713740 628240382 690636504 100271551 666489760 421393454 759100500 551658309 579703986 862352951 968049023 39619322 979464233 625832695 654072560 790037507 841948558 517893901 743407367 460233818 564661499 719747328 764456214 907668067 936196833 729996959 829240577 834929789 931094242 352533315 584540848 250003404 773604600 632855831 952982472 219933461 356403362 758096129 836588937 521525574 898263213 134257233 339142185 813864761 972783419 488114882 883442762 254225232 980715666 241585887 967055981 204490673 476298248 597274950 852273079 409170046 570816135 777544030 989795273 612547875 700799535 170943269 308905691 54394926 611995455 357236539 414401633 456437765 637387898 917703665 975291858 749025432 991976982 687153548 700807472 938916889 968262851 635131335 970903905 365965894 493110266 334189597 702334996 843413420 867823585 15732092 970676324 680321337 756732069 766420107 960634696 507833180 675093901 479036553 489935788 634142300 693368061 826626434 935939035 160918029 947089074 917477903 941435460 521544464 823011070 661867624 860012493 993662053 996315930 540192881 711452497 408013793 723096673 109851550 241054472 548159934 850167472 265931466 609050380 682987872 858252637 748767845 886854689 211942760 385006902 497001751 953171325 16996591 186519163 729834914 762769423 286393249 375299131 757603011 778037356 65943768 462053999 895246154 988615728 68797442 217122780 150545262 236665568 895901380 968601573 893191508 894042126 223066609 263342644 54742515 114224440 933951374 966228914 593458516 887480561 35826509 142834840 39663387 878271187 394184329 850002945 504606046 954194594 157225094 646705443 136598367 700453284 707195255 843279418 957704186 990341194 888705338 974250601 83462275 433737657 983519140 986374365 616006921 909501961 556652387 597546082 478428425 533363841 342618275 489706984 297888362 552456934 115755231 709844456 632500668 828856239 175352680 686787414 322706579 894020711 894354437 915559909 515268761 516395321 580329591 785623560 695414587 795850151 450110768 828233173 374919174 965813010 793387282 855708570 509693501 712385908 246145905 292151313 157456985 574456822 160737453 423784599 160796635 611028324 675091253 836095700 180198683 776737696 362756356 546050631 166085892 730252600 2173427 91734596 204510076 316842897 676999309 984200178 420818455 843798678 447100756 620038056 162435535 871046170 665249857 962053632 612667644 915673242 604697509 747451512 95091478 293210829 684099519 969286000 264770230 464704824 29829815 126989771 339682305 985061056 710722554 964504930 775325998 832981174 896724052 945483039 250201823 326811920 567074553 736896497 150935361 579340043 795200912 813545359 433687030 615096475 558444255 713142671 361780643 818237933 860195405 886994842 277907017 974312487 282390413 518076496 497294265 652186693 749334678 928768628 214362147 986253412 873790719 889091975 237417083 516011532 168667240 715598750 724471924 797525622 856503402 869557069 554681999 630150866 834568598 882624548 283768107 998467485 787635650 875967650 895912902 919637975 618619805 793565657 84988563 768654891 293102866 708964168 196749297 607221738 64449081 567260783 920691191 999114400 647027243 824575085 949782152 997544980 297192181 526748243 261723868 564136382 856954830 978886967 411292522 792569245 146259707 873004413 614562538 892702519 557859560 901633710 109993711 801630118 290203548 903700107 315716741 332716222 657294106 741026612 400934741 932976744 96696694 415696187 782012797 793113057 642914271 826168908 272667873 500669465 189665820 669608224 771408244 870639492 594398669 737846219 724229470 867435497 813534337 846904791 891764910 944979291 24526516 142888779 495258751 786287104 137207115 670423270 400291386 961001797 509380923 841518116 501461637 778300739 640773052 855268645 36431426 899686915 126592612 256772894 540654124 830337404 851836245 910307962 598767049 702811054 592943147 714798532 928621655 945506179 616244567 883196274 2783667 520170894 212633156 530802397 377567756 658127638 811551659 936987974 160493313 927160576 607483355 867707156 365990119 899932527 451997754 919715271 417491041 468205756 37780760 84590442 163208426 200539796 401394365 947389859 512673321 816471355 76820659 933256073 99046962 579993402 908381907 961531103 866163845 929191054 108455208 987877274 41426960 864131879 716426496 905452786 435670060 845365145 163510405 854566712 246986167 363721933 841880816 927301152 567168602 890832670 611199219 984299664 562617820 684984087 51044204 379289606 94659892 833525008 487513505 601921689 169971222 657892721 146523555 609355660 197321311 210441334 331847256 455781754 100296006 340105362 865216308 983665640 733534709 920439538 82527747 288039629 956482825 998360832 542733204 934487724 288701748 364456820 781032698 943535042 570377897 693857349 683505929 865520050 12978176 74764796 741332584 745706974 147122482 439747215 224002564 281501830 341887798 730333308 333309513 669322759 857354213 927735058 869856133 989029297 54217477 420462752 156904701 634274662 989195222 995551890 706385553 802739687 988534020 997303115 258408807 541570952 46701433 135322624 134030412 200426875 301786351 637038265 841108148 892388301 604731294 792796137 370561886 631338198 617663008 856056871 507307441 885975894 646357794 858191586 351222189 706198844 19748323 819241890 863794551 942584116 262216142 573947249 65423134 575530951 759822399 889846897 91005900 615146758 397654585 662503805 466874528 594876262 691190176 729120930 279579992 838511550 925239278 926924335 422897621 889600522 235875657 819814469 438147558 992803663 278055355 819558448 421274765 578095064 732997070 991871109 87684610 513002942 240321071 558117850 524339290 658218743 82911964 518988672 215963999 863483844 562352919 895629720 733025668 737679026 622208201 765448252 9063230 655344667 218805724 762144918 890229196 955835623 892542188 922459415 47730343 857215535 192184976 728857766 311520465 852816551 674309032 753390661 651756728 958135862 112917612 502553523 78026374 566341421 911976001 978588149 379846921 532649676 761894941 926703361 617596517 824888126 721961946 898999134 9626400 929871826 506104770 715752488 984214839 998674428 818297687 830638433 197013012 513411540 320348981 378957292 243782256 973422834 848339216 925880480 179740527 615814129 182753856 838366698 82600315 228610926 442567995 725582903 862032948 908359701 485172351 759081552 77231947 679411700 289741353 989810786 983733356 991230066 86068822 263437582 291117029 614361103 203318222 414233111 84780023 737582217 242702661 761360461 330411542 458726759 923029054 945859892 792210333 984050285 42055931 785951313 191616194 635392358 682701195 779859911 746437644 988359101 768181671 856999056 141357235 496972816 37949562 389717134 20190649 906820211 402347925 539520974 316931613 553027919 116800994 765150730 871834147 989437542 283810763 809963078 390857104 780674947 515886056 645155182 167591679 794046813 225922014 740408580 976463311 992324436 861280218 990932364 861037513 984414731 636271795 785737536 733710711 960688349 31035997 882109620 23885579 50641997 967652717 970551037 473805880 847300387 722561625 913426099 953907424 981737219 36332886 754680883 164499189 193039119 296638919 922423956 700608896 821649952 315040081 794907188 719137947 844775732 428758843 700940880 627432908 826959898 151350145 776696628 432008784 929929372 997674332 998154630 442426774 579794312 289653054 492407489 269602138 968825094 752053282 986209545 788101047 983243026 594318210 696021193 739757563 901438814 157640638 839190460 168123080 221899756 222480280 508399841 115929525 507874140 593586832 828328348 357011163 692482483 639078733 801795717 789730892 969367111 75533039 277404994 129577172 159200421 462042398 641027168 875674985 979279121 308366563 320830519 436873246 621297105 581464200 664403501 915164704 952983173 174828351 198745556 607813446 892465008 165238980 617603804 6921039 258403818 718703581 865149479 914654374 980892009 885864448 986204617 709355722 709986739 653532528 695410498 225222820 561811280 910286730 911880984 474166838 591408953 126435813 937626358 507681621 528606553 852105268 936251213 829595048 860442839 992377611 999385533 850190921 939167974 841479171 865238751 236607289 299467143 228643279 654380595 207788672 821961602 177364227 489701126 759399254 893226516 590572814 666984373 470281795 912925929 19745097 682562749 923055477 924240488 175923392 468429450 83351214 874838484 81882188 814196288 732399041 745146050 338311911 971020917 491273987 828978525 25067574 54534214 771043540 854131357 808254292 956174332 19889092 254300045 158157277 431001301 947782155 966325090 210349984 457185500 422621907 879276055 800374128 933400686 680213179 771522605 847152567 950955384 683351043 867427531 114557522 609643780 284445195 975110261 4925098 125845542 451276709 456874068 816603896 963546359 117707686 417021512 560535941 865567573 612725048 685217920 928071058 933479037 851179705 876560646 44050530 965865179 578414425 862734558 84498800 676563270 684028061 749626645 196192511 515561214 100936363 441152984 824933288 870561037 797169869 895319055 658660399 725650587 837420491 892218224 292630616 788779792 878980535 903776336 860741711 922865444 61805041 697122008 644654419 679515899 291656620 362590318 637872118 939063012 718185009 739117294 975659409 992793481 135160650 385738703 844239520 987316505 30648890 878023939 172980230 504598158 57955278 626474664 445474789 699500834 695908223 966926722 327862693 403221929 331363242 359484011 835588974 862168601 923671255 985508839 262666251 544533996 334639179 588562759 206911846 853860866 251221380 436092322 786040599 929273811 106238943 724694132 64059013 497698437 226759889 449314751 185312284 223470960 922215983 943330486 784303889 832815100 279485178 884488879 536659583 664843498 160611525 176453281 610820709 906865799 535745415 677105510 821867541 909324570 672929193 912475374 996901140 997281973 258944800 598472128 929135606 930175386 792768621 890581648 700045390 846725554 25912588 480388564 648275610 960276467 985346457 986503109 316519286 654251359 429490311 764541337 388599766 563629423 162560776 585370561 104772256 993035244 596484481 994334524 706923956 839002239 630027973 916346234 796244919 951712861 753052088 839067871 686814090 840345455 706174702 943008470 665893971 941473944 368229008 807848357 642274892 825285995 615202338 619431579 596667026 788952109 97328963 475415058 733580141 951227097 864488427 867947587 196579567 990971827 672486119 844306715 330262861 860459275 833302559 966542572 332653312 607166591 381372559 989351587 62182281 325951956 227373208 378564168 621073353 913129711 228371057 274226274 948638078 990037205 489727781 698405729 993002922 993092537 320425443 652457725 174571579 770854170 798461993 956317960 425145866 552671514 241986543 917168030 289491150 731699190 405320508 639685296 646640949 958971884 938991467 959327963 448666002 778858039 173114690 184815834 719872969 918690428 535311121 985646225 133056344 740980832 54269343 446343561 785418277 870916918 282096267 461608226 22222000 381713936 996068046 997310448 301711968 802364993 756402132 929853781 885532647 936768764 568320182 850538163 935632789 985851658 329982297 691043873 289615588 611325682 290490682 672635868 423737723 892416617 778497481 914651023 961594995 963690224 904463646 965511472 919687940 969097747 959507728 994080933 345727225 399569041 95124327 516790422 819507228 890621715 79814042 353583826 178986242 876127813 312765672 433901946 571339837 950687488 869589458 886196329 516188141 892407570 966527319 991749476 778035404 783565765 378622427 666670179 137275192 461367991 306738544 715218198 448072 182279172 476480216 885200731 810241533 828726561 415604207 695792062 448615357 491871014 65500445 491342264 712926871 898628561 310501963 922569058 955567801 974435740 674803898 836639460 27126734 382764970 30938498 789610241 913076530 946527597 932188278 935061035 246257857 715874184 962059973 978558497 19170050 505425298 824014586 993123208 502102679 788249852 79413350 361013749 30228567 561788449 136313502 563898825 685603998 907689541 594242341 842176721 632282996 832750046 784715431 949331790 520171906 916286957 238887349 345705419 633190880 918268482 610672723 777644760 579742849 693902972 170338527 742521297 850081073 942497677 291602235 312869724 301339319 770328193 855765365 931427772 266050137 387691055 222035730 470937674 710185162 917358569 247597610 686896847 260393685 675964248 581318972 661207984 598968130 983511250 935576300 998786420 661182335 801306643 538796403 966934115 837344888 945237627 619348926 826043268 258605907 532796560 657224565 814314825 945797034 970209264 128991434 574021239 45901954 883024129 398044314 956984708 71009333 915460820 755497633 880999470 76433763 321576056 809078292 996977152 49548772 832720445 777205924 955955711 711152630 725125021 628823820 720795507 238866155 839029041 372152783 623014628 1561937 253959925 821736924 841285392 631085510 959958332 709866814 994045733 759940592 938648736 871455626 908324737 683305459 886070285 783667417 996520889 131908594 451247543 128472008 410547373 260540812 881777766 205865812 677714852 68203366 84147441 710331618 825686457 953661830 997909732 179188396 582472945 869851651 874947247 452469612 516773549 785132648 978598374 401984223 685556781 873841702 925011898 571598484 662280476 262620004 641422520 78965808 839862609 270994298 617831840 981480740 993602557 273365114 480573512 376678769 741394856 140902486 406351886 655401854 690859694 180993367 341850586 176975302 343905109 932584644 999039283 476822480 974080644 958334491 963303280 429636965 705784003 315848937 316925062 562405199 975657856 787032509 994456519 447504572 881686139 723930973 751920588 276621625 848577006 819431577 933265126 166518609 295915550 595174172 857057727 950729185 996109165 294100602 457183708 114222526 275819429 930938931 984576685 144271395 550436334 553222401 743961436 668081373 789247596 435812363 726556332 394226070 871240296 678859811 877170724 834321717 873387332 399028297 406931457 510393082 880606096 776969236 853040348 180022926 409423102 665456999 856471381 960507298 996288804 359432982 404743248 645470870 652279191 287314632 335259855 641870500 853337066 573049996 745321979 203544597 363041796 928950116 998937551 170789697 948454135 122318463 669450763 972959514 983721592 588629024 928472718 625491967 878283823 774689706 946346483 910628791 975691482 327225581 956582185 220214592 305962919 561729953 625385977 348378177 850566948 194621031 209235279 996006589 996815415 289243880 640061311 258718578 490723514 805877157 972700354 418822110 478147796 964998597 998997718 173920622 215415034 987143620 990237115 290278725 659069132 477820679 945896271 154576578 397078099 24352266 241444052 606083366 778244468 332433936 888260846 81106331 232862789 327227735 679343732 371191726 543753206 643856685 749822541 576447247 744072765 61789320 102395801 205239579 956632754 47939249 202131022 464828834 529198665 651273479 728310276 903294741 947406753 868616379 939609083 45780757 685137271 60260199 297867786 9716832 102170971 819376640 992505409 202745622 572572212 666343225 961503496 573609773 832183876 121689232 531285729 893958542 981851288 533081263 779489704 475789798 776504898 573882496 726277919 750680847 782875308 927990139 989390471 78388353 474192242 438992187 457376839 239008863 714897367 876912925 948394069 578746484 604106306 984066789 986989299 70661265 569819794 206116568 554950827 684913402 775748741 547159581 871843356 234806415 654060568 614244472 649924901 344327872 561648133 484273473 764337479 4734833 256851379 540550629 760562139 44197016 949645545 380740971 449966343 955404380 977580362 55459075 899904564 165120563 983789225 728269427 755033931 316212920 491696251 839660418 928172741 206455559 297523492 28405796 996821801 965947248 975240303 77925988 232009810 117261968 687933783 388910132 891995815 401219363 913117247 172358166 899011617 129644421 944677414 134958934 675820935 34631458 846881593 136032904 263969173 26523192 332290696 424041987 927686621 800967784 900091284 311904667 577940705 318819129 759336696 732016801 847339182 886913606 934163731 253318753 977572752 207269022 541765121 548418602 768846105 146027766 452292403 646780680 941332857 624766311 848943988 994097284 997857832 853311169 986312563 29677284 125672063 612343570 924113239 853731910 981421554 806585172 852136684 976138643 976248950 967768044 981816425 102042926 549661421 563053920 623362631 272137960 920406179 932839291 995598644 856807578 862102845 712237923 991972587 965310746 993617528 154735593 267058412 420860071 813010205 415805621 884499405 143367587 950788437 613573276 898864832 96280640 271014660 922279872 976745643 437737480 554341216 936596411 945757253 758292026 771240288 217417709 893269494 663942349 834960816 508533092 583428215 184941562 546314980 966771067 984846676 823322912 983309918 805807503 978815082 93966409 385262946 19275021 601465264 207123256 273886700 633288547 845432745 622752307 697523760 228078940 269265965 502523507 546159014 254335008 856922625 769407382 792074503 802278606 994721688 773478571 986014123 614252885 832568704 604644852 962226795 933146908 950977725 418176290 970464550 195798026 985137300 323458445 858180767 426023100 935789633 18590703 979479561 51673536 857784767 813341726 931888788 913483283 976729826 435138534 771860326 327633931 797531818 628378985 874559803 300336546 311978329 750825815 863744331 68811123 853020318 15209765 279292899 631526545 877394489 884295641 955749411 22224000 563212808 261647351 624867398 268515660 615745662 836956348 928287251 461290002 844774947 864724400 923486764 293846718 569224190 742282028 981560150 835581124 846893269 142280328 663714915 912032758 990309374 990526015 990980010 247497875 488625624 673323107 907990531 585089463 944718231 485998688 749048173 842249563 965264247 15830038 583572135 893917758 969957326 627087199 818972355 890688738 900493520 529962706 682502833 515396080 523534282 865677148 950491902 174774984 735520752 100463168 683693624 673484867 906163794 21526288 425626900 650848667 927724836 84073225 435081323 380867347 459605059 912660214 973576056 771866831 819872150 407484249 682872102 587930212 851498525 684287421 705244469 941170805 971358117 241152859 463519816 12188152 153919718 847641148 912870525 542942959 697975352 90675040 255541667 905896989 952658973 629705855 728432839 388174253 440376288 631873592 943191567 384220224 489825744 847728770 925858587 190590949 832999394 261725509 830339749 657050073 908005603 283443865 800795479 120372533 559893273 20418431 193005829 210446637 669790314 195187539 840332648 190657722 584176783 307107901 998799135 886475768 904351669 568606487 748184713 507890125 944148552 671406956 940274964 632060590 654490055 513727432 811897397 707152569 830632784 765385023 948222731 681832753 920215455 530307376 560711827 893206016 975927362 968737004 969957352 173608844 483314882 530234364 945791182 946034689 989983810 315983529 338371529 538627452 678487055 536211090 681494338 916268138 980946828 715818526 847525142 346547049 506198295 75992637 656874850 709042383 887341292 592178629 840057508 281559019 956209741 687065714 773988385 635322838 891022815 203723044 279885940 787156839 959643263 187183424 201893199 599246289 817646569 424761666 946788800 463866902 482948973 121289567 764405642 17893084 619321270 687349234 839604412 570042733 889758965 733112674 853844006 110541163 193093652 113666847 372860743 546473157 770398683 754422097 886826502 556918233 807650774 541716104 775467638 826080159 944318510 438772992 924960698 468864933 533546884 355845854 432725787 325870228 815560496 451272472 749077195 587157932 836337412 235134426 853189806 441642726 789906240 379760955 959811267 757849096 864572936 236175369 515394348 476631422 984302586 251230977 512254504 123008397 271687416 712736336 819722647 887911760 955132714 944276441 993383916 690485108 691789207 492997538 694902697 634106346 988915078 917324012 970279293 959983495 989963707 979495075 992777702 271029639 369279734 386732351 624343756 498999972 806920803 569612087 934047850 624819480 977904703 219319055 563438849 282990077 859730154 641365522 831617149 924244944 978431971 889388629 962231493 794708951 880294276 725289872 892157142 777363818 871987403 504412626 772264507 609669183 759013135 714404036 867687843 39940497 290560117 361975549 535072622 565762593 617234226 627499353 665119767 58536292 922223609 388389556 879205638 421351580 741580653 551812177 941511824 367278318 603404028 681201074 827801461 588725893 755435197 162743593 666130036 699939523 920316969 389696078 804467687 95565153 703178498 445368684 858241143 491280263 827683359 486854226 642008862 615229527 921267977 264283982 451564493 761144582 897358766 4629734 540322259 202010825 382215265 384974361 739920982 39044473 192961585 278421868 670959404 648108811 937156894 844481347 856165182 59756799 377703090 857785358 983155377 792439781 894792609 6068304 185872768 656312560 858142707 742462606 750256217 644728466 677004787 661542147 816928505 709215679 825144829 97169811 912289049 571819707 990926329 162018471 571366452 478760021 800393915 338700054 447425495 593546028 724985301 925007726 991977764 14670060 361441851 237660035 459968176 730023913 743287811 606082337 981943689 616091656 787650927 770771305 966935434 557694504 922408476 320884372 622989376 896748832 934789366 777757734 799434317 94121153 827648540 242816720 503323363 493585450 835068144 562960838 869984654 728720794 958228586 693950674 963668083 156234576 805555334 366720823 603841927 980740847 996354855 907266322 963451088 865724615 964940210 285008716 769985575 441153977 958275396 549767231 614319665 758451918 887292479 613337352 933652042 502314794 919087081 523380900 791340171 407521583 430573448 245946824 922452991 731992231 948924475 239998604 267718133 645119352 807621790 818801905 866751933 520642357 603978798 850159566 921657675 222362896 546981568 365803212 405028276 75317242 542850105 189533695 818184817 818436097 946736841 499123953 567383676 27185580 397417842 982981537 988113323 765263296 842762074 979257120 999377734 80927096 602117114 113149972 413165914 100672197 328085035 437096254 512974512 776657651 778676973 613494046 701709303 437981810 475953393 85745145 717029979 329320873 868697081 119648031 303342603 334107001 408567489 791072588 940508440 877246720 896406608 925512932 982364809 155773719 362052477 650433703 676445942 826628946 927133137 531122421 838570290 165707770 905180706 723389460 869722156 423317798 671301445 455873626 465286676 574571339 794392477 641664688 959789720 717677962 743087876 744811891 855578218 171221627 472801250 409129512 585336842 902361207 952056407 992595893 997799366 203438936 283589887 981994190 984941450 285948149 823544519 287107831 544369232 885909327 896352457 130236653 358079090 726619016 872993484 601792064 810163414 602549627 715636984 254052986 402595062 84348126 724804206 750935763 846283230 863775944 908232530 875981687 915229602 586992656 605574466 789377824 839172193 555328418 771836548 898618258 935092457 442619027 752221428 208979815 231839693 529680203 559644456 571920976 881506949 948514222 955389249 510488968 720729779 787615447 942659735 538674248 772759537 772356470 883469166 245580008 808866274 475554784 842663274 535803797 899685406 645962385 676014161 158144092 217514250 82724270 97603649 430241144 457654946 9558165 772844440 95845241 585068457 746300812 969195597 465931740 968257844 360575187 799775917 839893346 866549252 931761766 942915487 920733874 931140337 979012872 986920941 348059145 395872171 913436491 990970897 554794917 727266542 334402864 346189872 486666259 889649486 593239550 946100843 559069646 751212444 610857438 672016144 481751220 626309836 146471661 789764834 11003976 903005052 913776539 971622639 340479949 714604918 205074444 857809951 805703099 937293313 313610575 370452411 870164153 994710285 731030912 924583926 269341361 441889977 529793118 893771660 262557232 924969088 745356456 779568337 773588949 930344271 71494516 801030628 695957935 830258009 262516201 537924414 947236752 988677137 233726535 623941113 961109696 977644435 751190466 983985233 888925135 897757414 467986868 648510676 60020865 846420851 262037509 485513033 769315717 798290127 230871188 558630369 859385871 952725270 689329347 755936199 13143481 184012107 581082472 818607007 246124674 521478785 78203924 854081784 811775694 894056004 604994931 648881408 250897833 321467338 316557092 872162728 916262526 965245694 147129401 336906060 361687592 409517343 115082340 233512458 244237297 733253658 429239465 434376262 878846433 914736501 843334309 857297133 302959076 346456527 747987225 871448058 817704618 970665987 912217876 978411276 948949320 955014174 912424754 942761611 794641765 997089984 93705633 893659380 524352046 837712801 77446717 590192987 472441560 954056206 680881636 995056574 35584351 590514450 504014118 586164743 921074513 968303344 516743109 698347642 719709329 834594426 780947953 887579556 361683648 541070269 694486930 925143213 509295851 979920104 164436434 227829163 652992990 821002030 342880763 708481391 528576700 775626443 296278294 684393703 461270383 702262249 329649377 959240105 133078355 954076764 53572027 535228150 495350741 711612800 768609291 842123882 638771894 651573780 89044868 429267273 549393180 737471617 305688349 612050575 963790641 979035476 296864561 412551838 330345027 901265279 549659730 855715172 805717427 810191955 586184468 644176754 53414729 334275983 160763874 574639784 647881724 789582668 8647338 763973392 774877470 887547263 363612377 950331174 692031913 854232786 602838854 840790405 481549560 828188357 918232070 953213930 315568214 325820714 581290785 778363109 380869474 635918222 946489404 948664921 712856579 734341981 617823770 965841566 101517157 412486428 842681094 895385679 788239284 821502101 628173733 734510627 108682583 457187439 482616218 582644315 394171531 481453558 25146585 900730726 75877703 633719774 606287889 916903746 281663503 919080527 205489173 762506584 593821822 639888066 41674713 363458797 935806057 971859852 114332764 711905085 130494760 168636389 652848472 873358044 651334965 670688216 442673161 671038791 809526379 997402359 344606878 587781124 758245389 865725792 478405137 881195473 823848298 994931905 952271290 954948366 462196578 467851719 14489882 709455279 185891821 425959399 346458883 711857638 422349641 988726215 309421730 397331426 270178962 973865709 498300027 924258281 247993548 455628893 521319923 781649816 436756487 820216940 514529144 539807741 430363844 650955954 88285931 785241216 147215130 726687043 278441294 645651118 722043904 985674407 716869669 849948392 126991605 572377520 940859695 970614213 377307773 568666759 387253236 685693226 358974537 561757261 923376127 968822263 331922614 427859079 292485352 345382891 384943834 643380458 713459782 761978606 49109783 865185228 283342801 652237869 536180147 538754474 585511300 767090500 311300745 625528097 857197398 862770630 520515411 706090313 141123161 783636452 154557299 581691924 932728860 983038367 388345007 862395653 714868027 769979845 8261138 437355802 982444466 987026531 636334043 981592313 154951949 304829626 194319328 443579431 663152385 819395406 394553947 570211524 776843193 792959505 116250471 243885010 477278129 959166112 156025333 300064968 94598165 954000699 590613226 735186968 20333745 376322797 484848740 594354568 292478632 578432534 35846738 363793922 3775065 565904991 354744443 819449700 71638583 155421585 778762324 802493796 834624216 867687171 617241565 686385573 668495219 842959644 601706992 631822538 153759722 178280401 453577133 590933812 381439683 820121121 775205751 854763405 562908422 686703064 314469987 524359716 12008075 232917803 341008822 595257880 978386882 980629013 269909689 794864731 167083810 936029276 749436729 797459461 199576637 401207678 508170210 980486394 420091881 650920805 21265433 945484144 142156967 922288709 621316076 632690230 194184335 385723701 589077005 601977054 559880658 892076096 314859468 867892877 883813770 937388085 912507373 938422702 606542986 870851980 422355643 590790633 51064327 365206855 689897672 865829956 483168321 785892353 216789342 613734890 1159903 773159540 742038555 808900455 639936264 913838789 490939420 693421590 95532962 630790803 684859975 843168193 79580822 840912482 827754697 877620481 539709458 974992470 76507847 405507564 235516222 277262832 20396895 161009702 688931383 931863688 67616743 773247438 668694062 978632564 279157736 888222645 630587584 917347853 385075904 789371681 155868625 419184688 594704168 815310178 81927706 966975758 433455086 463354222 73296875 993153835 162379198 204303433 621755927 650887080 756575866 971860998 540466782 825533061 337026163 385171970 892708278 936574291 986029264 986804462 309449652 994208063 750520078 976610599 725300041 812392654 562132066 965766965 815732849 846568706 216961585 524917163 490614057 637094319 460598295 908066307 631226072 806319311 355512693 617704310 534841538 971775909 318132137 761928100 172835034 256335050 256543502 770338612 474518037 596555843 734600523 947305328 290838964 583363605 619722543 998929306 341066005 823407833 20072984 444757419 383600394 654446676 488940840 729399126 696276079 841171020 785572780 936667194 702586393 876842447 901637403 975837747 294044178 944967390 893588639 974576911 491528690 882270492 912913352 955441911 76712143 725106591 79374346 680472058 902020749 962086178 18953588 410283399 637510571 772642861 947636722 980372509 551480091 854987508 328735290 563755919 113014333 214268161 780056140 849188639 361028051 518857296 629027307 691584914 450575935 896419844 860010376 872241262 641897506 912580456 19176683 800941530 936269730 954993636 499065749 714719608 174650033 952230686 744626895 966147402 855092280 981486922 39788021 359649493 680062743 739894193 88416197 90024641 502986522 950935282 496832832 782927141 395120429 699581538 28261261 669031764 454656784 806668137 374515668 485020343 998052436 999099881 155551374 997390408 17182320 659882061 263941218 966392457 170692105 878963868 112636381 315876250 301189582 978396068 474174699 599304301 633214683 832608082 17572654 444026778 97410269 593528540 74385695 688781085 993445086 999300247 90904821 238891641 701253590 933698005 219536669 775550483 538472424 933729635 319451216 763253943 773835933 861134863 731216416 968869349 927634543 953330774 880081345 880192701 99661718 659046280 818945189 875258828 292720475 568875871 309825213 841548620 541463560 632060148 563727088 770050559 784328815 967829372 896240172 972349037 375746108 656331108 406409878 484682793 548609424 851684321 205226366 411041230 643163257 682487936 733835859 872927339 628095094 792998204 973917273 975354427 48697573 223442358 756578718 929490632 925237842 990113412 572166321 858103801 606034268 838175192 390085825 996356509 603951566 766014959 76952327 695607849 2210137 268549070 334631510 495639014 559344411 830335338 480523543 593290966 172042834 596836170 379922246 486903143 585942589 922009039 354286148 921266557 510606452 648949597 359179342 975670621 913837859 964914813 48572803 655519809 519354014 752360372 263377974 663447433 109135773 373600338 560248844 614006923 147037627 516604466 318784160 858218022 294948421 576714166 737281073 980958093 237948145 261236093 757086913 896977826 449325993 833304084 546851692 722773973 867606650 940045615 79479690 496859230 791029779 797975603 364747550 659589283 920723798 952808316 952537889 954491963 102594202 886428255 854925818 907597362 712171156 970287023 584835705 658634857 672435075 790148160 6826732 117033721 55932234 935229700 208152019 861329073 114822561 848807884 350302301 598458374 629037783 767338272 721551928 852793515 180542374 669947890 451729214 745948721 129513032 721496392 668690198 963502588 741332610 799389491 702879288 776346211 533650619 657289215 977675397 997865545 149820517 765042424 730162446 897291758 358631313 924390620 882911766 981145307 527624728 686920968 133586453 243276894 611758731 728542371 635889671 636015941 968764181 993633455 825124765 947381788 483960453 933320722 291755515 741956014 435928636 470586973 577423718 883345129 941184892 950380997 587925117 759371783 679314671 788289025 921313896 946355115 291659561 692181235 639142119 982868485 108083459 314861402 730499760 925817064 635675164 832157718 66478134 840448926 646879412 797911824 416237879 905346708 374141574 627230931 266201331 695842547 960730576 993059295 746455768 829592328 710908601 901433613 106110527 693687449 158753265 492205156 587927363 792924953 817220057 865413104 352706451 705478940 790084712 980866848 479029529 806287069 446486234 678538584 216616071 904010609 31293340 919163187 921177080 996515160 767347397 811561023 545903692 585462944 432177580 660318606 876931392 882060383 708304353 966681729 127166881 460709927 496219434 652275877 926492874 994361919 257793372 643504779 517885514 864943358 130933984 585230024 581275732 852948357 567099566 602834688 328847538 808614284 629386031 662568016 462993867 998445323 815374863 893594727 962366900 975368408 17672817 750609103 655935289 782607280 185462545 528925986 546770060 768591113 99609499 922483301 156376709 992679750 656715559 665235902 63203843 953631331 362214122 487526547 897432924 967863731 921148306 952272614 480185232 587397602 209747972 570616565 757877661 931638403 134990054 378755708 618615118 879244262 212478120 405863671 233184174 917693092 11698541 510940069 728275504 925544989 52742004 190385856 727892217 823718189 5732818 591684400 243100813 931024631 642712697 763407788 298726632 448408809 885310522 965227671 995965748 996009687 466553647 635873460 196643297 474322818 664106855 805563056 205085748 228738525 996876887 998133692 111516237 401632317 919780001 961109610 504495320 936976116 845627758 918943435 970187185 991294101 261625330 641327702 451971719 531334664 162536190 630348425 470632759 961406682 223180936 291571590 643944494 959637899 59789920 470275559 902449831 962257476 685182088 996517504 23091394 863114476 315703275 855864971 157893805 659064221 717678467 892400939 316828964 506369297 396733222 478640095 564844441 594129149 168119287 657327853 545301081 698418057 356451425 950774664 93708609 949044148 33469844 512625346 461720229 782750007 144993836 252983000 443710916 487996962 490231790 607608577 654949038 773186382 618436499 853785061 251740680 991051923 195318296 944398370 335175848 895018342 700872055 991441219 636751140 685675156 142522943 833135815 159110116 815959224 710398744 891678658 36901564 476020892 777854352 949475632 846936240 891033859 988424811 998253726 20207105 161045648 800549192 896011622 142375909 337399778 885367080 937422172 337304330 789315143 328565251 754515463 748228859 764599396 358847828 621103400 502032199 856115951 570366550 883072096 206749632 795976045 884694482 972739745 812633969 930561160 335970751 374918822 836843085 959816208 196257230 561596972 915148799 981016080 856447461 979676013 188813973 774545991 253178930 900770697 348887 913039984 723869892 905193880 381741034 689674685 747461055 818686852 269030765 308224036 168022142 757831354 788211562 876471686 724711130 918872724 447589570 562583416 96732327 399482912 336652594 823712324 520247870 602567985 29420792 385707391 494267588 667972559 344140302 974389769 775706805 789488162 903500038 987278736 623858671 811357801 533133404 907437403 665196553 767403959 536414757 973750415 396465471 780827158 636567628 849820074 52869280 810734090 561494630 926658423 914003373 937892736 820012964 965467819 991818745 992532335 600473050 777442954 19357617 782735182 12350804 593956227 70111846 540642376 841612458 989945191 852581653 971013730 224004752 623752046 464640853 593781638 241501058 952421159 258992043 957088929 192522406 673902857 647617266 978682906 234742236 721007074 258910685 988340180 346666404 678899795 761746487 836213456 707029535 766797780 75786992 380117671 217274517 376907602 468360019 514836254 699746677 951407277 929655792 947443180 519180517 717872584 404046670 838816935 60301339 878177892 967877089 975796316 636987601 938241711 508975723 907245649 474904888 756771269 93518347 405702089 883391136 985323045 619553378 675365976 31760562 893276257 747862877 904537077 413775863 942470983 4711729 132200134 730028794 906773426 191057520 677244457 670186950 949330386 608306896 818317220 48520144 148737549 728107000 944989175 366896673 823159418 959039419 977684957 143576606 322177912 119296416 911793757 751866450 826450458 177045340 634930467 871826440 949124980 76483479 330100336 575031706 887624512 603150329 671886499 688239711 922158937 714918416 771178927 249156127 694569403 773198825 780129696 857643409 877915466 308123227 604036710 193574378 460869527 913101265 978995178 541093559 706453760 365169782 377516357 887465338 905065824 899925959 992046381 68605229 395102557 473583713 968593361 302506216 492735414 786878041 860871363 874241778 879006945 134333532 394665230 28989256 548026304 772363965 814152415 9653661 982400898 200976753 733691489 964275516 984696359 368017788 427943089 699898456 911292739 195659756 396278324 323576093 815251676 206967929 237356609 157661573 425990155 507425266 836634164 445788867 460351230 588342973 994968225 594509641 758752820 628040971 913550683 550806804 607392753 627467783 752835300 665546627 677549091 942367845 946710334 86528445 537568180 541996682 936160091 498410101 931361347 582323584 984626626 371597514 651505041 497854833 845652897 820896868 916314835 542871040 930850330 418912042 849264805 919329262 987428715 634318775 945104269 805253833 952879308 486919868 499398702 750169259 880903733 410034720 978885079 789902424 883913243 813775901 952240597 71205886 94318966 881357579 888428245 559681741 955406715 938692748 951115666 17760418 74055344 151772874 665694893 45114813 498659383 749989648 998244631 772115599 901598337 599606228 921180910 295380977 735705633 773151223 808735499 415235296 762944139 2213611 606181228 306302777 413877247 488113482 928837708 719845308 948465677 329086289 574217404 44980776 493064894 696069575 964283338 706616192 940716898 879803007 976854027 364142165 814865468 612727441 655191972 239327428 337292898 930966677 981900321 70505377 187660994 277615809 499361871 160992017 950481135 656361406 810435542 309269585 833496111 457828962 984788072 659941309 755024084 419646366 635800204 557763376 962021059 209561815 664969221 297787619 770405235 2835570 105319628 628694867 933072559 493242463 849376402 285555580 746186934 374738217 401794554 511398620 714755790 420538747 917375732 213475090 770946081 461513002 654092840 419661849 851024151 203320797 349711900 609212100 770235107 193634011 948925272 440784065 597308109 597933470 742728156 239033825 871793337 913971859 951200663 638644939 750678435 709722129 715263052 844009260 945208731 17919399 680385225 362652146 660304599 32377084 68816039 346812236 422569204 172247198 268583969 476126568 828740801 775126125 780112557 291756150 884678130 279246625 635034428 806049696 958715804 174553879 217060448 749808948 943509096 763975710 934951386 764489840 872956382 394702197 583495171 683425936 731709155 356843382 744677777 691932569 974268686 412303975 733482028 194584314 226256627 495465320 716123760 745173820 782830221 754417499 978523265 768414391 907456573 793501978 975664332 641117948 899432195 246179252 320804560 691583846 918304056 616461695 760030085 280798066 305233187 620878077 778402708 897120229 976911716 692003749 986151980 765474996 793054589 899492352 939679669 293658565 348360765 120973120 280275537 246662199 956658402 8558261 622476867 853222516 862063035 137500691 569542383 903721071 962788670 448459025 745952355 163068688 352900213 361818471 456462654 655608743 660273487 892754918 987532839 504556466 872771802 279798075 294315808 550557325 816510967 834452033 959269070 628241443 959925054 552916711 882471336 816426603 949191453 707536142 976429894 532465211 975939797 978435965 989188866 606858252 760160139 148935263 808515156 444961748 690399388 428827370 612230373 101970115 845766693 550573110 793391228 766364416 939480934 39544049 540537963 877037532 924960052 410750508 731232807 953881716 979852541 778524308 941802409 320345629 415323031 268656614 544170288 245430364 435272975 386590529 932389746 663333725 950877968 245562722 911611475 898373895 972952634 303471280 969935900 644979376 956130185 32205866 690646541 995141993 999165835 310960625 421200993 270125333 503832087 390154633 575320083 612243712 917113536 803437518 953869719 93296328 393229155 97958829 814906618 301788236 501295871 278797579 625736615 597889708 702447688 833304321 963029082 972801770 984653233 226931187 470667654 17363723 560331830 311146051 702197426 100694322 528823064 558660408 576769991 129063090 814178967 337691731 846081290 546657916 704176628 537194774 679565281 122605632 634279791 210806211 391919927 8620803 303980157 841341775 872265337 544785447 556824270 189585074 476890584 725942469 788553549 791024368 997260686 668818183 982760156 131921663 297180476 26236963 79355850 483668681 538319010 993018234 993462743 668598637 775484195 664499069 876707405 986347780 986800259 373963668 885102159 302878617 443365770 451483114 996392202 100997265 127380036 944616352 999369317 915129548 930759912 389221554 477263283 143183022 869874569 595621207 687520108 731712344 751960840 441117051 685767970 98585028 143915811 64085424 396237818 514637798 549318903 587052976 744197733 839772556 901595159 466923551 816070536 377597500 678555278 937864941 958589832 688033780 894283543 842447560 881132012 438346238 528933700 361656657 743015622 271052201 972100007 720662160 735634627 951004016 985899008 771135362 888453248 652257812 654706126 41796652 385991489 18763727 563661471 140712076 775067833 235478693 864469631 583199812 935036443 482100967 528885003 835455833 866259186 402467573 892983299 146692267 822600722 563837548 913950706 278970882 339559817 95972535 495655096 838323848 905387780 649883337 673892682 580199336 710608183 77653346 736293950 468334147 711961478 497901591 926322888 656965571 794525944 81164339 905255805 820245079 928796796 770470684 884187524 868476889 897529780 574374078 735728072 853214657 938747788 245358340 250250223 922083702 995888711 723665820 949429502 64168792 699799315 871058029 935911905 908484152 965644506 321310468 815623527 232339422 589607685 630805573 735445713 642175898 708083601 831953338 932836141 65033814 223275680 905879002 947092167 264860972 843375707 448581987 582785000 816045640 882542064 732768089 774457615 271049476 420629610 364536896 449001396 122756711 525582698 889395717 940681828 219828704 550189473 662451739 950028253 54778419 367367908 917022470 931665090 303836674 634630420 206151517 482075192 477141307 619758062 694865295 896399063 942023820 977348351 97453342 660044172 245377327 979815568 521474867 714010753 5455161 313394761 715948675 911603649 659708365 975461744 350376188 677567471 314849739 555893235 834237878 896526320 817711388 885956161 110451942 402718392 316570925 678465884 366432841 714840049 639648153 846780932 876383510 897642943 22563458 229495902 547486081 581860317 736586862 748682376 321210591 950153945 393231261 877883047 850987370 969627258 230646512 405210923 227701470 505567400 431638993 565853707 1848729 817694387 108760015 668862713 887671086 971301810 108198462 386681190 962041252 981818479 405264498 753733729 527586518 639020054 914964863 915330374 658136906 770223487 189440377 963582779 826591263 880744574 468772022 986249386 433157037 841782344 753978188 821466391 208676122 538264707 608088883 949197824 768210176 975576992 969194327 982262575 608470887 853374146 616306924 962987688 307225258 570205102 517381939 643285045 342191395 429325313 568862615 623129633 458996419 828400887 167501385 892726239 583921701 959275680 631325076 648754796 769190947 962255126 629561595 773170605 592544209 876527881 73655598 787906635 101517554 400025332 31122802 859714003 862335967 891968698 135711433 969436335 958760414 988136798 763099142 991737972 236936026 409765706 551740183 636158861 624641119 631588921 869573761 879958027 981312221 990503736 584681167 899490368 174039243 453044057 276525509 551113026 393347025 890774235 590191223 646866205 13561232 405302295 739422771 954411595 107755079 133719439 584046868 826048865 298312359 600456714 614667154 696181796 31494576 312593785 774605698 953229796 46138644 493651061 838562060 875054145 69339960 695433607 375646867 926090207 529939799 767997304 822295392 981139429 907496125 949295550 177400446 329292078 448831114 476290810 394758649 920349873 687383913 999148861 654006211 919249934 579847890 946072342 111352261 213647494 163971454 909261251 870687512 975949163 883102080 963470910 762149772 954162489 787288179 803276960 900587890 990092863 697609917 832055842 448906650 596126340 128466867 333750383 21448450 21647492 229221406 753547901 448120574 808898009 20669215 308157614 808772568 863702111 395036503 919275027 571869784 795437658 236014410 676209614 378296186 462513744 751492536 924886146 473467579 825397771 456609228 552638828 877734635 913241412 323429720 697164066 238848064 958047939 730690383 971053039 929905278 941496181 749024358 877188192 510188678 968304624 941955663 968125724 571867539 761303107 945810420 953369843 576995721 936107753 350813358 536245937 485821190 753850070 182104667 229015111 266375058 845405608 859319399 914799605 378630917 822694122 744290514 974472302 928106082 993255470 267516312 483840504 665585140 876952718 627371239 661899524 378690066 719463790 8248629 744065636 130830826 575293552 511325697 519789859 306110743 494328080 245234950 420406981 466152251 509123646 609356362 994811276 399098569 595736809 800338182 856712383 903351296 934767046 892138254 988528439 501412780 712094850 903357191 998811663 280078196 571699392 679661591 834296920 661156681 995212253 749792355 873037444 284809540 476564366 631473982 850514273 490745918 806337207 981374440 983036660 673961435 679658319 284976829 747939589 658275338 893413973 321700933 771804545 508582308 667101753 129180474 769147653 378613096 959614725 81987808 861515398 238000691 324840004 695764152 863363347 491946715 891752678 652010536 889637982 324060582 864006724 185850049 898756679 638208348 958573929 469075964 776708650 832468535 977393955 372941276 437585165 665764375 828850159 418113991 598297334 967787446 987718470 906992198 950268547 936874966 937348462 330352081 395247248 530836924 606497593 104874714 645054025 70552362 683029522 953104160 985519036 903810584 966567177 371647492 604350454 232894514 659140524 598394571 739163430 102921936 598569349 322941679 409671478 159926981 576941801 786345467 871683704 447906873 452449129 457790145 810974047 328369954 384083304 860777062 990654230 221930948 758786502 885079061 979721248 962206753 975226933 323417647 932119953 1859159 84420288 970037198 987542464 669833900 975140760 187339982 941178949 66337068 421514086 388553806 692480053 650288445 703471876 525764222 906066060 313038132 724361747 607310700 997185292 229561772 481422415 304230605 949707946 264747140 463352355 575837321 650092019 227283043 786872169 817305161 907664812 302873026 363943583 278443309 599607326 468072692 927180348 641528841 887592172 945377853 982832829 658690889 831381136 39108695 462306274 522979368 682428075 859997745 975427511 817487432 868297111 814058417 932321198 653454706 881751118 797760757 872268850 230889757 412143783 683151884 814600135 713250006 829477275 234352030 735681339 247757880 629398407 371091071 767735602 402142798 959222869 484766467 977805037 701618486 758061045 822224765 903107512 746022131 948254497 301504235 681192821 279824885 414970506 161396473 931393067 106409009 972892538 796944410 888282774 761469065 797045990 759413572 881853615 316662414 882233052 916179720 988134870 516750133 542085968 382834881 648142095 660649810 887689803 350842853 803388384 394693991 687185728 589560012 783198051 507818467 968456789 262177639 374260316 246321236 672659153 44153794 972526994 50733566 731944655 192818386 958385144 186810324 846995114 953257922 968042861 417567743 687584048 325409965 582987788 387805906 795713886 132540909 619542702 825128818 952790709 562949533 625325135 838437603 939036644 94059820 366130948 135996952 806086271 341208683 396696100 814302298 920911722 700873572 816012635 605886246 816280844 674438221 851256670 801406399 939069774 382241230 906818688 702734125 708611553 19997447 746440534 49735587 354586805 618552403 638132269 743161442 997530391 526589841 875866883 359669400 468180642 979117199 996921044 358025231 569402951 792764800 993734328 91120326 212148108 410945581 749962155 369755018 927773770 342958215 623868714 455362496 969067876 681290809 888306207 478650207 490253651 187781315 728360082 465604977 854248877 758456980 770199509 301369283 624366028 667840192 780930930 719093988 955720133 747870543 798496043 667281669 922007607 538605586 804053287 541108407 970748711 216794902 813589294 910163576 933118582 630546008 939210405 51849172 822282371 436004764 616422276 72315708 160623003 223032107 870607645 970821414 988681424 802730824 821363925 604630621 706770883 774479551 829020261 895798467 898939837 72294932 772564578 983149128 996381125 873683892 965863904 450415047 569129214 118655594 356147906 710841240 931204807 237246922 841509392 367420534 498783023 33163664 271768921 930324781 943151757 125631669 333371131 163070490 896396738 152239743 923994490 692376949 813588861 614768233 973293307 713943096 764613422 126570856 231816211 369580450 726792639 308885691 758082120 19018670 256704591 13190463 531786642 477910306 984926253 230018598 646870111 677205362 814115328 142354506 383465639 275979581 440097520 167435825 608685817 240534970 302206760 771686921 919996141 988784020 989291248 496986950 877106591 296942866 924055939 636971870 906516589 301310635 510529643 356798616 833088362 480680794 872878279 106927359 802353660 467199418 746871366 393482818 563751740 867533902 961541886 486684889 828997578 717027237 881473319 289642830 598544166 925992847 982850825 193526589 205024207 455526893 971033141 449443204 682268186 797506891 894434077 827620364 844318553 197857882 930352388 224691311 757835221 791523843 966718212 92964443 558285286 619161864 998319316 979293990 992792634 983906217 998219391 257378987 589849282 779829876 992457466 429867883 716528857 772628210 914458833 798648895 817594789 476778094 940699196 479960378 714775454 492268121 789554197 784080165 852876650 176059883 593957586 989668351 997529718 447637844 457429522 562672930 869921308 967673354 973159248 265058123 368327095 996143135 996320983 635468792 752689969 624290699 925972368 682527284 966470950 476352185 935882141 109802525 415603048 475905092 877444052 512723410 836968784 114227676 251426908 684413580 864734647 499304737 923840192 879268180 955104301 214738646 321600040 913239111 950445890 528001040 845587539 622007477 917183629 436634176 676693740 404051950 624364378 463803136 694058197 710354525 780478402 122864115 127604797 633399926 947755186 626776475 858645684 550455193 952576696 772622940 943935005 269248968 489484400 470501675 859762225 536558269 711989277 6766256 745429252 163959913 939778712 51261225 154379926 423029012 783233638 639219341 770501464 155745213 668829014 797704921 804095137 463816491 581873009 911369980 949096085 673985497 936611016 321879254 873550864 842956563 878976982 461833488 592133489 206875985 478738289 781899760 958672630 464141554 633637200 831441626 870792786 774383490 964805788 20844864 627159804 396370257 619946230 632565951 674127566 606417799 843936740 259170796 960236109 523877198 900706848 3871132 414903937 618330672 752249344 964349541 972380174 240734120 742714963 433977465 562373221 163749327 481753205 853626132 895073529 828328576 955256557 115894707 817107971 47030377 416973229 673384972 854242819 206690880 905964097 427299905 738872409 884025650 967412893 289348343 301158351 287982951 380143167 856050135 944561376 697123651 812786135 577718566 708171902 146228085 626454907 250911985 271720591 203921880 284403697 606862487 784532576 117771516 998671089 503234812 684252190 729763697 827102822 34948132 595048966 377867975 920834414 749636145 937690922 49525919 195032495 550352837 685129559 543105852 817176497 697064036 989113573 444232116 472885199 687479756 700790899 891603612 894308868 47409266 449485766 79940418 308308922 590393693 632621248 310820403 715079242 810535243 920947557 356337835 882839163 216751897 797640260 433595823 703684640 131994585 777435589 86806185 125780997 919971656 999248859 195715741 307857551 606005028 995168286 870549358 962148317 121929449 452571094 10427520 851677209 477730708 701104161 535138639 877373662 232208037 461715480 161878142 507615218 618294161 633705294 759136931 778106049 56641378 561607532 826478856 845941159 455362473 551362275 481305142 892072124 157144711 350142308 685205409 740115842 196901329 987884343 185416594 659967501 18845096 978492709 937045680 951147212 362968369 754293147 248363880 272598555 432544375 753272765 81536755 386191839 924824197 992223777 877057239 970827077 978659616 994409097 365083164 879648736 684633346 736795990 380256415 815923178 356750829 834423671 90012505 106244675 984507160 997849182 993222731 994861785 802801039 986260852 5007313 771396316 610360186 774666740 226575164 892621237 36672070 269670319 276837534 597425559 444020662 527737294 729014513 806623440 358090606 840545456 745652286 748158431 494368711 499288841 214418210 961352975 539871318 890589440 482090371 545450224 80452370 109028109 206940849 945984308 291625186 713265247 29243125 192098171 693895666 944851527 718644642 835795165 917111654 949975633 36958033 560454580 30915827 673947902 985941242 989653535 390132835 528889969 486282790 628475598 321898296 462595531 190635860 240242676 290868730 293475843 939434153 984725516 784309469 869060574 377368300 736792294 230914298 753984372 502274717 967094620 792206952 888097774 25534824 916461223 656653107 820236582 586572464 869072219 381533814 799337497 280167733 831296830 83179457 345563707 76330261 627967514 825794195 931853288 47430534 391119883 196306649 491243420 564856951 938101204 652753199 706520817 434684993 523133130 107513589 514624904 468272418 778506892 118678093 479520021 648932264 664774653 506810377 770455151 904475773 970687678 512126100 801822579 707714721 852981051 39695381 226327097 344587685 920278121 846553319 931627579 428075858 889971208 466825665 717389711 237518232 617004726 696330480 860364285 902977111 998680214 757533476 935564704 775948214 852081552 293849299 684079305 884552431 969143644 370447055 838945606 229614455 287733708 800307540 922749865 536657670 782843470 51027528 340625157 71084841 530410195 747416492 972265999 972689107 990181436 481361663 864741634 287636657 594738317 429773221 661971798 651708673 977333680 423894015 509219873 924334406 981370296 694088779 775433524 943881869 988166870 154227247 748163833 784450415 847810682 149962846 156404243 82414499 613537540 591065119 874159981 468496319 792756133 783573212 894076860 508198327 700891976 917706703 997728213 439192422 678395710 34656472 354468727 136193827 168616894 500182700 569013426 100244485 267932483 148040283 371271544 584368123 585479117 498869760 697502216 898075863 948650278 425643272 758658161 754846494 820074534 958705027 961170971 415722121 952020148 96835011 280650059 413694605 605896636 824286036 827121639 118556262 848090948 568002370 621888350 431411187 770589112 50832352 843109956 29417396 990388699 747424040 848140413 108149094 779274334 481631964 992455202 621015835 883824223 591615480 640070402 521347009 832727873 842549201 922171644 378968351 991969441 781090879 948738730 307809640 810300216 191444482 262506665 105294478 584221908 429110002 490912672 262740471 526449598 834338183 872868543 786863641 871876682 774649413 868707888 325476594 870448957 218672882 926025596 828419686 895305076 837321212 918044348 136861108 234551532 665571499 816659351 282284438 417055371 599613163 878216265 537316882 935577779 244837769 511791976 634382833 694542935 606324657 828448270 401148208 564782979 961701465 962633907 139598445 819778389 960946590 983898743 411683278 683492773 85579449 429556722 10735000 365585203 600359872 690610202 392803490 888069281 936999782 975067148 254985404 618280196 168860280 344824763 701780020 821727855 207064950 705778091 212585182 771758018 68683021 100344437 83919098 820193051 940765134 955585618 763267805 898657454 545204183 767962877 160363772 465075393 910648231 945701960 844298695 927181570 196113041 975030928 792594406 964830129 684682258 723368450 127526431 969279659 550436638 591862263 764411649 938525205 179900014 327984489 312411740 646662845 579113316 810293151 288653404 639790877 64619478 417877696 713024829 890937873 731386800 940735553 37172650 433671708 17881584 938353672 411572090 865449868 521639412 971564003 852851937 859644645 131638676 734392687 265828031 375824872 150418337 377164520 797907005 946532972 936018133 986049404 699836667 946035614 314196408 668376733 864191656 913691371 840412844 948642167 182616591 312600066 462242796 525054068 511139682 767113798 317159248 358299877 876221305 990575101 815231137 829826986 418246776 518534428 433216386 853501753 191508753 816199736 751217028 872119843 272643435 401359838 583449912 917906353 314733584 599688768 863476542 910781229 247682933 307823603 196251228 984230964 738282135 979515888 555965211 565583347 185726100 404406422 425095461 722284034 639863848 864410729 511695984 940675856 852332099 992950603 954268424 976383530 532161500 887025046 568612844 892967777 835899553 870338551 90132812 121120478 672563904 938821974 647666222 823457486 614900980 950435768 172494117 229293299 210956091 730715006 809258479 900971145 151661340 689080612 937315102 942059812 590385898 985155403 973794731 996336519 836715887 854488631 104017835 151156751 529119007 536406386 307112204 753324244 539689630 622504213 334435487 611963903 685774269 857483599 112163470 365748908 228371734 303320098 57687927 459480409 738543616 994529115 790182843 894150379 652112972 936594405 591102772 733557160 179663 83017995 555273756 950566891 316411833 779807186 307305939 717114571 273253224 371427146 738279428 981054444 133841879 713669976 201215210 645575926 90017762 149978353 15300539 972376236 331034841 523312136 948425441 994053388 882197098 925171527 374467906 975226554 111334228 299339106 542928525 720640541 599234588 710269215 90182580 874835700 838363168 896092100 862442634 953003176 690651295 711467357 802394994 876689055 324895567 566965018 896538342 950300531 135580975 641024741 728003562 831942764 402968514 484136004 351520251 878769810 882255412 929136759 156065296 574924106 147425085 804524112 326679169 654577356 174474435 848111626 192947755 409985090 821183701 914890385 655400401 882303238 126936911 638700075 907903314 944879044 385552060 733997225 813141601 856327217 620170530 737340648 987537272 996621564 481788190 759730708 915285405 957528799 578211681 997310627 443888790 740113737 46619243 502173770 261390879 863734213 169586691 339269951 539945134 737341253 589309305 960999119 668215410 847518627 132302561 952481352 339433175 814391677 374802607 592796379 678043189 684310334 434827663 502957106 425799953 808805472 301015060 659314542 415424559 540248288 54181890 827046669 707689280 758346964 618140532 907225622 333182710 597977998 719622577 891056898 524522358 569873630 238386150 723261663 495198918 934380748 25522848 168818079 535625345 716945325 955148032 981276836 907788566 940121446 809890317 912000193 835740469 889948867 296757118 934444938 14633393 812339337 987068888 998425805 391492508 912241604 898704159 997402834 680304037 707448375 869453587 922788657 84184765 407323825 355571589 863432553 761959608 991026760 317758289 846050885 704374901 868749939 465538126 755882757 654239004 731671109 252820192 835140972 321108291 338532817 615890625 714326371 509809071 985532418 903288499 982073628 544659782 803318803 473822400 750864677 619156484 976760755 116548177 726692143 384423088 418709617 419595730 874829075 341804457 570468356 245455193 288728370 437092037 797038159 744871643 835757152 855883711 878760619 896613763 983214330 518491790 855329201 309409965 888490422 674185801 794388581 348293567 790875880 708084363 865511132 880684518 940525320 973148875 998830466 867277323 910228172 588865544 991108602 80453610 234713748 657605521 962287436 761455265 945829373 49507416 850672614 715380990 946763527 842252662 917289100 275679428 602054089 535741849 704637524 689671077 838062500 521812809 784496819 883484500 887959662 453422944 617510128 997270019 998228503 740633474 954902397 827631795 960831284 830924134 970263747 977385007 989583447 714523273 941420612 795623048 806168920 594840241 952822620 995084739 999182641 280490992 967561418 921381820 961057758 108803918 562018504 977496033 985206508 887094445 951388974 347678931 984563235 406782229 573259473 4287143 404118050 464699097 644205318 985971207 994426036 507490432 956596805 984379340 988979394 195628585 844627243 669496909 755497883 980800507 999147119 225259111 827950732 257454404 670119564 128671363 987811870 365463844 922688758 620676452 830928334 658353697 763495905 110120096 929368451 535052471 872003361 364254697 561245683 789526858 913194763 849451706 873745703 300843126 659830650 292114727 604564992 333904784 497940864 190219443 958981050 640074109 883015360 125354904 192635476 486944270 646289988 172853396 778854179 300616412 919234798 204770833 576184764 868450448 911855595 450920766 813661447 359455784 912696786 735636351 777899409 518062772 624611637 29597830 101153993 868483330 892794298 736328840 750680099 566208515 791433420 306991504 614183641 946026183 993722775 511660573 561433373 384829326 552603581 110327565 626425145 522303501 720173939 392352676 414971116 797411217 940745704 309691890 606430081 853695192 862263592 564699093 735920289 5524551 699100712 995156717 999035028 152843585 705646645 500243080 514007094 128718595 221558424 601936605 757967267 206223252 421248630 202829696 874873424 239131260 703079199 840249946 966176764 249588578 764755904 424334499 513192619 400876386 971364776 361410649 576346225 732873479 977123537 757702622 803452531 418642615 801929692 473202405 495532582 800479734 987565999 237530168 350144911 916857491 944579975 170139061 619216835 800656967 948841866 354629921 405332789 269065718 864257262 105390241 524796242 499376924 929307697 298280737 388219234 585712896 672781512 534318187 579501788 240858932 731136326 72332744 452185204 702447205 820979590 889060018 956593740 504153290 563188980 922047837 975739689 869320277 908989214 854043343 863928042 270028704 325071875 133932583 688936562 344924397 463604765 977753060 988703106 724591530 985091725 100663123 470100734 833755089 998378826 972649777 983524150 589592169 678588911 425350897 640018953 600976486 737594952 698536905 986710858 208193772 828922596 992294367 997624581 998818776 999086957 897583509 909974411 947141645 991690427 906334959 934788525 100081523 878642980 509515740 786903540 396205814 960023476 72597966 331066114 536882134 683367217 725492901 758277965 64156319 755685896 139650985 942929784 565799888 803699509 870470595 895174670 600357707 817577728 794727564 869461260 344314261 492269755 410434583 832199810 740655881 869074251 882625873 960358596 86162153 174068645 74292462 421520778 474012576 855839324 323404793 511021310 390879473 922497230 162357109 766244971 807813152 995996748 368658938 820172725 638169040 787292163 941800951 997675014 440443850 971585269 358388616 660183225 425733253 901337732 640755201 660868704 285864567 373783843 777672309 990193731 888539182 889885482 617157007 873246023 577167950 578093507 313050666 396895687 181233878 969892499 300293545 790084167 413917846 772996268 551435576 994898658 624737922 686614620 318245362 459555256 303892927 351710036 414002517 858789249 749098510 873753329 955613538 982183349 585157655 587942597 139686576 391256054 920112551 967679398 238062094 978144234 859786180 897787565 50560716 394832422 36336128 512778271 810970645 850224038 737117013 959826983 744350297 938157295 399280814 437769789 321822516 542665601 792029862 930759565 181788124 777240926 226618668 665271954 813049726 836002856 190788500 591937078 96972980 354506354 828316358 896726081 871311413 886524336 687367406 957505297 503917864 552576741 981959247 996683864 570048918 788867922 513048783 604924211 700217614 888273124 119921097 591752311 792587774 793160808 384309531 708241280 129879846 619188809 802876652 976939436 590449093 680147419 254433665 272410878 478475535 591553320 798746305 896717687 757736060 790007097 880452896 899337081 632344903 847589546 459486138 945838537 932594483 935672834 389374121 389799804 869541475 984712315 151359090 533830317 349213781 899015853 330211961 862791982 722075093 837713638 810903801 849868044 7812414 418013195 895923231 922564844 283542 72198734 56811319 532740157 100214338 769488285 340506314 982682155 655806258 882674188 380392345 898950867 776163040 960298294 46618133 804874302 793476336 885745196 809242176 848999583 361059621 602687933 689660707 919242806 408310489 568085965 851860673 882003585 537582376 623164837 143326741 465885478 572312085 592284990 186309394 856426953 25702029 884582770 876069594 942040220 138550587 286714934 559706799 675497830 635949317 832141958 776623838 881598547 218903495 856405337 817824349 983525858 894273185 931560751 615610099 890858428 984820255 994033018 167481334 991594099 694975157 852775102 315911085 422581658 585931810 801459098 429771087 539600014 499281004 592354613 550541685 988561912 764476861 971442435 555445929 561406018 605578492 805693784 426576151 609499690 760202424 923010173 631527746 958616841 325713662 660456170 649092208 890750463 738299271 860685272 488566255 944045268 850272691 960119896 493871912 607107862 891700933 929063835 133896335 544425418 242608382 557802780 821486312 912022334 9868829 200912521 332312076 777988677 602465167 778255671 987178338 998061023 541237605 891410381 413097244 727174119 289295021 844794297 607031073 621991908 218228970 355453388 57456036 706599488 198752671 322412143 490621246 906234660 740564936 966195195 586150319 844093611 311077475 467178671 349875707 457065044 330401289 355664280 537907438 766612673 546406721 814499665 441238766 950851797 822757487 880438909 492756771 540912949 370261140 670013945 34116285 970371003 437072782 661459879 466925259 830253241 652183736 663292318 564110497 564820016 136166501 295259465 857325758 864780517 949768229 994293242 570540140 722951484 319542260 681084610 430177549 660911163 330689365 783503556 536313911 803403978 946206988 987964369 958287992 958354864 735347916 875295821 653946045 967123304 590010037 765372257 383712635 779919918 463958244 878208138 35267924 386159105 883107212 985959217 686257478 820176367 612915200 714552778 836872284 978455225 190910470 536896341 905995935 982809760 760111188 852332598 105824640 485281739 292770352 449562577 814840856 955522281 429190159 581763792 973430995 988346880 527169060 660979504 967956519 980835583 105606492 490816258 477970012 481572695 565620277 990292096 82727478 738682211 945497692 948621020 280098428 993186151 539895712 743399130 624914603 680688406 60041198 328666882 237921150 443566085 731756425 796131064 988777423 998202231 597404479 918220377 993807682 995419017 409801358 948546892 201919978 479254205 467278617 928604278 529889071 945349696 90584535 514901467 59133263 982404112 277607271 678439334 575084463 713820954 986330191 989968017 432139268 809595744 251548113 551251404 589440684 827095123 480076649 604266029 568430780 989288503 260392377 426897765 156422285 627800408 193548250 473224671 109979372 185106854 718231657 828180545 641661237 716663091 534627211 654461369 291026674 774924135 734178206 806806458 651183425 748597283 649881867 858962709 514853529 895505275 275916344 863620320 795057680 840634478 254707635 661499974 993963078 998437362 196579492 778633235 860001764 914167611 741276530 830936102 908080188 928870575 798505566 980504457 662315361 708447910 794864281 965902380 350782458 919726346 980104544 991858937 785884672 983438169 937390188 984268048 786547592 914780969 536815015 649807760 925747646 941160970 827260725 880578805 412438345 984123022 98718763 341138036 268972274 680392515 197409737 681764672 346463507 646253797 814635393 925561162 490552719 875937209 601537790 921074417 205876938 261983376 892710038 987514056 824188099 824524273 721252341 757654489 874075462 989396074 429638735 601736175 350530859 432605054 120558063 310361006 287275620 615755698 237048840 756955585 398437557 913707883 98585287 887238937 41878627 282324992 91454309 746034565 745182831 911117375 763365115 811669091 220603544 273583841 288401902 754144575 763764652 843493901 140348246 778498979 761471528 900942679 240283306 295987471 204473611 488763682 382821546 652870687 48259196 104571471 395026661 456898572 910091600 950347970 865756446 906400585 442778078 830979666 430562067 996098843 889274958 966214893 506105113 620816559 49358006 789311198 874490688 987157729 677679314 945570588 623895514 697754744 918798916 975273585 503976935 733953514 203799575 815698338 479380843 839528369 869999267 897797667 245143205 709355696 560629344 900892217 82917759 532526997 329028028 950074881 478050114 752324044 515536552 703274526 396039281 449974758 77422652 99764346 207800894 690444581 897388560 941905398 219288931 605677627 441784563 967022105 715982390 855613284 562438289 703643038 460596132 532326997 792958960 795965741 376419926 808477806 498495652 545262944 506547343 958065704 811681496 852330258 50652810 334549973 660626045 788849013 900940992 979854005 16704181 278012175 391806310 836829939 516930175 615225674 886071316 940839316 29915297 384736174 689256912 866202260 611233376 693646971 785222103 964257209 301695086 999368484 806918486 994491114 650197285 794557450 738301783 849835835 872673112 921981522 689048935 969511254 696247926 728017838 157254732 180787119 597795795 951740221 254029894 716454318 151056781 208571744 326813671 572616372 286422577 989916885 905822332 910039029 365432040 772415985 322709137 719611183 302480683 891452574 46195955 340461800 859911204 888747991 122371602 875722925 893706094 930126029 192444239 816235635 239482366 994017855 885191754 979409463 923028019 967333468 726173278 844856239 11067512 14666155 10375404 686409128 125512513 443432027 944370220 964640701 555897831 887144800 205691802 612091369 310329868 449735107 775476063 806537387 799405166 953862848 682627991 829336569 243785009 661776977 775722200 944244190 724193427 992455852 44003264 505357695 206573254 359509974 46899263 626921560 906584172 997628708 541882704 970825994 284759558 633093549 234681160 864207127 215390149 552608401 914984298 970287081 72914447 816429608 482604150 874017158 554161515 563894092 293646864 886242378 255966404 386624176 512604511 658029766 891557572 926167732 702368788 849604004 968331270 984287556 838679308 903992192 416386197 467963951 571534519 640983783 268757873 522985851 611523422 969323613 527221654 751889108 977910770 994479258 859284502 890336543 713617404 987862664 65017459 275622490 132753683 505238691 335097722 386084382 497931973 744756676 597457980 876888321 980234945 984233473 682721199 768906532 35905577 153660375 214392008 404857647 523306819 724109375 208178088 964026278 102932400 492565418 730832324 854370295 749476296 802209965 279241251 437630835 439301951 772414199 670800773 806678014 458436403 516189725 543309914 643968694 246266119 512076907 290043 330012965 727006655 945830787 279790109 973207133 6050361 535364784 175079652 376011823 86092772 294694851 105461647 815541994 375011661 744659257 42656030 639449346 915488887 994033790 356692574 749148756 380141302 576528827 100626614 448880782 404643157 766754417 948946645 965138480 801172506 823254940 217972703 632650691 931556688 933821579 805357926 896870875 256016710 380483527 465925407 890891194 37686447 942244599 37493734 397587350 810743986 935958632 603056575 902940433 300720481 995243925 186290710 577673153 688355935 710144822 338749302 716328580 491117935 617017390 190725121 982994864 262466986 598887061 870938238 882044108 190853667 579317618 153095909 172432435 785660537 857720912 472367238 535095490 57255068 158404870 708008360 848313939 39868744 444676671 614370740 960025332 478193749 768096029 118089102 489140919 6847708 161545903 474152207 529782400 4018432 919865973 746405016 852986589 87845006 553894859 83129124 606834080 286739894 997177426 161993098 247702333 270724530 896626207 235997177 478977525 583880383 664108575 291863213 592322492 660156362 924875880 234083630 378115274 630352076 683437256 75972971 403053351 457230496 499076966 241000040 290703501 591003112 926333405 157654358 243372490 422062390 778481804 259329219 698085289 608499687 860797947 739591459 822912999 1362885 966308572 186125932 428834219 181650291 411735870 272174981 411207013 105814260 703764290 986468776 998729137 305844371 948902920 934570190 947973551 762629251 949298199 555596251 941468963 646853897 776204279 730809646 983290612 536579824 615953032 646806165 700467378 375857349 940600108 408194399 513710303 121564589 910453838 267318794 360762379 289312758 968283834 60093670 282980751 409949302 676636718 747829452 796526452 439630491 875817885 700880018 851537982 600087060 848984860 880206201 899895888 694653426 721098780 896457609 938705818 723085754 970085732 131915479 434662130 263541416 577829964 649595150 932037859 227263566 822648034 909536686 983315592 590543227 899433421 880498245 942015621 600629664 666639747 868897055 884577717 370207600 699301370 813301454 841297741 873130118 895790480 705406344 788980779 636003240 912291489 416144607 601580724 21342370 719310543 378887974 465601807 503871571 997546553 273589535 501689117 326645175 865646371 824918588 879518622 376973861 670600102 358026365 612235698 813387610 868227577 276285561 543148236 871963995 952896401 771690976 965638548 422107874 575516288 311616135 559595718 682989854 771465223 905981007 981342546 589846240 682693147 143113510 201498324 905308355 910065779 736819714 931020257 508553518 832415589 199066658 992219724 653037827 953207025 792170153 828865356 256735060 400024343 124661614 519252434 528072919 964182916 154534018 931775278 761143059 934790741 616038570 858819166 698396937 968116141 285739887 498461419 909248684 922870132 804203403 998701319 4929140 259133139 312429689 360653031 201179409 359711284 202186867 924643691 544912395 859679801 810678172 836764079 507557289 636833185 449859278 832078384 169044908 367064917 417132138 501763043 373080620 538559199 640633692 995069100 965979852 975237655 890840922 907303180 958742467 976274084 477592644 768153330 810825932 982255301 796163778 960111759 890903690 933353111 13146852 967307314 919690170 985287578 905821139 938751523 514823875 607245935 99479871 960651199 573219988 889858501 235250929 236189523 737088295 771986982 133245455 559372212 279241297 648157289 758821746 792324370 393293043 900189545 990777901 995613847 415675444 637665435 846035828 989186157 535783960 785838238 977985930 983049591 821012039 995598041 417034885 517924659 368788051 449609502 705806504 956663655 579833105 709799525 629322477 997181151 506322766 917800613 626793384 683183616 733172200 933299179 430997751 804740970 497764685 620012780 525893254 746155212 991644226 993053962 943294769 956439782 819718615 959627257 646591597 840964404 249457635 871733107 415206440 442615801 79965335 615469549 696329672 874540018 610968841 611605402 608243593 870631956 171578833 571425856 469221372 560120222 88982735 694932680 137922271 452738375 812897973 984307701 438966071 828718592 747649658 881972645 511783116 831656975 256680012 525247389 530616373 851035618 888263464 917840348 610051020 675022009 471247554 903134799 561522422 889106896 749724571 984363031 509841760 717485139 634858980 720831354 738762283 903803090 573731688 663012594 398963026 903507786 959132315 978513078 601090451 671142969 561133839 761009056 216702360 388361727 309539342 830913150 154852771 301357168 693813720 870769474 770749295 980708726 557946225 797047225 495673526 962121827 864985670 886127440 599719844 620834228 933611067 990714527 699996288 758868520 32306526 637133441 5323127 664838701 705528393 727439662 30092544 362855524 664626020 774381805 198990733 660332769 337502191 712973152 580895462 969403857 174859790 428666362 993067173 997772000 33151665 642540774 583716616 624495917 329865598 764456101 226077086 954036538 562377660 742598740 768308987 985286151 65692145 955208085 824958861 897002429 828041422 900763762 792072206 928161677 311899555 706099567 532436305 622001594 205247057 688646046 761978599 772245949 215911713 450985566 633675405 761459188 265509324 969974244 952185923 995158191 730132625 908208859 450464139 704766455 405911559 861603911 543229081 980588168 714969234 718024944 114029763 386930469 829710610 830810382 389866614 594709455 723498435 752369027 19578222 334678408 80487779 430069368 796965527 802208827 854480067 883405195 497055708 696609701 521524752 959525085 846387920 991390103 210884410 365580171 917799392 948413623 249871264 441078829 429712854 964407876 884169682 905522266 779657968 991943040 75061602 783806813 636848731 725559306 789684558 910937057 144647579 379216581 374540813 409643083 233358261 626647000 299657385 926905276 889901713 928756821 31079461 360446915 346003641 930261067 135972056 434869164 27886214 837215256 386448005 937474844 101061554 557876038 27119263 765807212 320425343 818425895 471983833 825831832 179605053 665952691 356763240 390570616 942315709 944543699 391687942 398101428 634272056 804381458 404945801 575198098 356027318 869037976 399632972 817472639 726624236 898069062 864421602 901904344 457328005 740735042 600359792 943752993 767718899 986977788 970825863 981916125 314043607 343126458 848230241 941888276 870680400 946968370 842174555 910821480 593417757 742793323 57928771 352393971 187987298 592928455 188972061 303380254 403283686 896152973 750339009 988195387 390613199 581392439 484125908 520136213 948379101 951723894 335519057 924349280 111014362 113463219 301952714 762878481 482849802 796421966 958436453 985989270 137502596 629215104 707466070 755509102 876072388 912423835 120453143 195245406 219717753 406454425 272583884 400325153 949662977 964672654 57682613 492759378 492042005 859971792 179594304 228971091 365104378 703907593 172998445 192527251 548984889 588855704 598616118 897547118 725582302 760873375 336580320 940576988 765058771 991001497 829146877 932646455 974218610 983520826 330538269 805086323 282843961 980108565 26572720 522804364 35130256 208401681 341273743 505634658 988141432 995853579 51999915 373588244 940375596 995044755 443571571 958334005 156191955 871167341 192337190 666423990 621533794 770657330 746691990 823772809 751426482 980996063 913323034 964741437 721703533 783715801 943639280 973464615 375904492 627945161 726306672 935260162 59013 489775874 350667965 713478261 559745701 641652380 957525166 997378930 710310200 756287178 234978649 903611648 725162475 955617281 62748738 608396676 261424037 651337470 970700338 986864120 362509070 739948653 517973150 888020818 678321657 927272370 612844157 636670994 163076749 741968019 587476413 648374994 808325255 953676533 654346959 655286023 726933881 774633615 16564514 289688370 555040826 953772828 971771398 989702676 25635091 584971634 324139122 953856266 458084635 797147307 842532921 900273362 880020825 892617831 644736863 696266965 865124495 993542046 26322240 362402505 274823749 914240061 921543861 922150657 976334298 994491727 937492366 944450010 797411944 875854469 587506365 706851332 183373553 522738629 182582563 918435556 176351231 912640267 164312743 750427749 712995730 878755250 150523206 185666606 973068503 989830070 147165025 369199728 999113103 999321986 634235886 712483552 129931176 259574834 91497428 239307628 454143193 458740525 202078279 404886040 960519213 963400108 678126155 768400103 989181612 994894306 893726743 986070393 774639045 802394814 956407131 971702505 818707902 870371604 102588838 291913296 326049577 656599618 696826817 702900093 650223986 896366461 305274802 853948046 292592509 721826289 357239244 454490613 34498927 124704165 398702830 509918631 886727372 893253119 809417149 996045063 60035088 765080460 805134258 940340884 918884876 924331579 729824307 928752532 688016967 822541316 781783097 829090501 867374928 915815673 568472939 574610603 372836702 716884663 965913614 972210440 26728245 267427710 968516111 984748667 639526277 925723658 653366381 965506204 840597643 946981456 256101518 768856051 684835789 923950460 385259595 720826939 191217769 367933266 8501839 766240132 500936400 748429628 589250053 969587955 870097880 924203886 35442126 790210932 672273097 676329706 785842468 916655460 307940063 785314263 646419955 743566145 396397359 728849545 138733419 953335361 135072530 831351035 484302800 840748392 582061213 869879053 437701553 690146983 797583697 864346398 886025741 918043562 685881073 938496252 286645066 720894477 847368749 866795912 77710478 557110964 959140728 967753505 47062291 802295621 159964614 393157677 924799190 984647435 529126019 560633204 916615049 932222085 914944 926221525 888085572 901007417 473455135 672712218 832295991 891363955 871211072 898496430 563031742 924876979 213972145 458139282 448980063 970956419 439289905 832748339 645826180 900360319 483834584 505498498 755997366 840472219 83967501 345890989 844893976 954919619 632790646 797924246 654492796 966117172 791271131 878933608 665962671 987546491 202263645 693130277 937904819 982026391 656603435 766776329 670299883 857301030 813809870 838185955 545075148 851978754 192764093 376172195 48017194 302574057 213310996 944836632 462368467 916493252 184356750 249095467 422147631 879958393 546289793 942811584 316464583 935903388 237960488 294942865 578566092 760937215 216330182 765798766 344287295 882326654 967499576 968579410 35414592 565046075 636685409 639231116 855816112 964796814 633078082 652090559 570348604 963653607 219074327 706644475 724674042 956588171 437278375 545835478 839909866 918244975 633458105 994587180 603197080 801408022 870651804 984194990 584123221 891240483 745354004 985417816 168668921 970887743 710671317 964921150 171677318 193263841 407818448 762410114 206305823 662238924 845439998 867423089 852074496 972048814 915104351 936799441 716566066 717338110 406996807 988455453 740876451 771861199 964110776 971340646 716025832 888796633 244366816 611808683 711184539 939847415 735088660 835454352 776386501 811339822 984481632 985062767 64223157 448121981 949677560 981235035 879569047 945907216 427140327 881252951 679185508 827817940 261807532 948267403 550004630 659845381 950562696 982061949 277501906 968082911 748164665 772424851 625971054 772690169 523811132 603402368 741553696 985099066 311045827 758655697 992160952 995706731 978810578 994883928 442660252 612177565 140717064 701881150 317200804 636211679 11801416 467874841 470982400 473944043 930219778 949911845 682062657 903641591 878917112 894332015 909698679 976752859 718819216 967775955 456039771 640673005 694181651 889442413 609482707 740975380 89282618 787327041 832255016 942810956 222992810 913087429 762906475 963657790 97724524 478979554 872340544 955171302 792655938 913991584 703000004 815336585 823099602 996919583 48138815 838575214 944411570 984356828 439223224 953021938 530380932 781189964 517296813 656311963 971477109 974782735 249215479 859294075 488115525 695086813 95162688 559586958 848629429 870406277 769805968 957021633 489455986 586178364 633179585 662250219 647625770 858757590 487943199 527442227 817771589 879477220 949397744 968421134 45633404 89912433 167323898 909231941 645344000 757735908 414269642 440990611 529027741 816537674 415518252 566107732 18742339 438242546 384508699 653749559 874237017 903872659 988198805 997557401 118883173 828738595 812866669 962667357 918125602 918446993 959713233 978829795 689803359 913660825 941089350 972509887 983279250 994244023 654539139 730558941 8465933 61304527 68505187 141449169 120919684 527675073 847133356 988826919 517108193 765992846 969728669 971018813 529021597 993043158 593566279 800290270 17467095 48605501 398356034 897116224 608173190 632600171 774943511 965552876 422020586 801612263 258200254 531792557 542712010 762516237 696309458 778256285 435517568 588116688 883813559 979252604 376003395 640457651 236440560 369465184 233878998 499307929 207088915 574179062 825573971 977028260 192321652 822889646 307894971 333908641 791401759 856088234 285406340 838926451 619628329 826341530 770892665 890060971 823522482 966906214 592287662 909442407 146721136 246912409 673789813 794047555 364826722 858615279 888331749 992468277 769747417 884372950 295193518 877811962 862922708 997782134 180823648 798276269 987539825 994919318 785026065 823226029 866762309 877571855 417984310 701774700 804174755 817526605 659812323 684698898 469738827 522789183 76929722 492515236 870155508 916185848 492867712 853800512 874224757 944023432 768356276 986772005 327688897 378574874 424309753 459586847 615261757 695695073 896847921 960902647 643663068 911846860 140526496 772176218 687502425 783057982 152837288 606348261 321584552 969425775 826966819 913894683 920788016 977530288 376665098 475046072 185337442 498085659 340411346 696002403 437143505 910025765 896381468 935684652 791265612 942438382 7939184 405571694 931646009 962477926 844008023 938694321 789001381 915398162 288014665 373523986 517416386 856832521 936286904 975408617 991613168 997061895 164958952 891874936 920476759 980297584 396910958 776949523 763132962 826678973 177497675 373601471 622273086 893163989 378722090 913144939 299144462 627061779 994037367 999345312 149066828 991539253 725079214 842928082 577810500 595842522 444713781 499707756 977821699 993551407 342433408 395954940 782311167 802950851 545807015 825074063 103638355 411684703 336734445 917393486 787400831 934897591 612364692 955134223 887372786 942441625 463506710 977250582 955756118 961707471 261675272 343561028 84665469 438184245 955451661 971687584 855566712 880853517 60173028 701099503 992277412 994580060 673286404 841920590 689982042 910258816 170203065 878739719 910562570 933567417 450021526 884298286 461670303 571052495 400125122 621230713 765885968 793412221 970299357 982794180 650821547 825656083 982193079 994172982 535582413 592627707 388054083 606148248 910758066 980893114 847917289 887848899 630131694 942785428 199479761 922262544 709671862 762641084 869007845 896276296 294400878 880030924 366918697 947887159 18663540 275156806 941683771 984782094 393895346 624947335 262650852 664210291 807853581 843179053 849677056 927920602 273543594 586198843 293802093 513680836 286084027 968894879 786360822 942271601 961056982 964306086 126627908 385539682 580241077 597616523 124353317 408820416 681840661 827985741 595382666 805736690 485746111 593263686 73316695 165708444 725486694 743873680 576955477 962791339 388585897 898643741 678782245 981721519 583423081 635936966 269288475 521978214 417171366 934622169 771815362 849689644 306365616 352886427 778617124 887642231 881919908 960493196 676953603 999283051 288613871 411335664 509401770 804434719 956110433 997531431 720941907 905070200 778215871 839196606 659970201 746412762 14339381 25482071 863054535 896871113 424085787 848878140 890814877 967236437 532546349 864279838 62549902 974421974 810776923 940932095 23278664 84604932 558110517 911937732 157499398 264305160 862304151 979021409 437592387 489341415 900079431 970348900 713959264 758515940 301703734 788875918 229494757 788291544 612217458 895679631 304142013 613251109 963373504 988167358 89765584 942816381 153369497 886543069 265351439 987629480 345475198 589533603 619333933 775460476 897529310 983585109 915806847 950357181 880377268 951706630 363318190 982787938 791771317 926384968 60754825 231467201 962286832 975544760 445046651 472476915 992674295 995009978 988724674 989604394 329164328 436249170 615115898 798602601 291160514 784117671 916517932 933033128 362820562 407405309 826715359 929718953 244164295 379946339 639568856 797122737 771057087 877545023 307620026 952953010 414971159 756350985 266590890 818505140 299522894 348873232 484875256 791918580 581901600 650250851 66316719 337038993 918120444 967578357 67780643 636926529 524926352 571970509 472201930 769384536 958438128 983078581 619955630 834658282 489094691 778461730 951989185 966897309 929602516 977353684 540144829 827128240 24744407 334343276 815816271 999206529 588983345 897352046 159435402 888948592 705355589 833200550 979037449 983095620 281290292 841908170 818908580 879585921 211068336 488879055 661977269 902500992 62476782 247110359 219358843 865085214 756985421 910439640 935910072 959435568 187800675 817722769 148104404 889319086 953768688 973799292 160425063 288907186 162572508 757561748 965577224 981471409 33174940 893130812 819986872 964459281 806666217 930465595 241380060 934480056 815398936 977924859 682975799 866840764 97352922 535140801 133370595 244442981 606868154 698611026 963686359 998675745 916838627 989270158 106603937 698992441 488788117 607959018 13625281 62561258 176146128 764956452 296105202 382121549 700208405 945351794 447384927 906824247 226856387 770360246 370891511 725202098 9008323 590292022 824029037 992668858 104517995 715477058 4873383 370203372 442201370 720837265 537841611 928376932 857697414 908197105 315402473 973656710 279781285 687689944 129949517 182466136 842130935 853836998 816432996 887113582 199771544 221882532 650035853 911948865 46134600 377740579 164731915 865981426 680214778 737573832 706249125 821874013 772017100 915500185 402649745 798699693 397271082 647895087 858919844 914790543 225166835 388073251 584838825 884825074 856353957 920911147 436502509 589200073 199883781 932718611 776754345 842531312 804249652 950695777 927870339 979917071 258068293 741426230 299855747 386137343 226704165 445945917 432212456 503374552 112885904 500170979 341341736 809744529 297160391 635397026 930278931 963243653 324412379 483721994 890136178 965180527 60730096 733939948 691166010 711027337 416352890 864816894 890924558 939904457 895913883 980059475 77363786 805348408 696972051 836699045 872291353 888006347 882142681 894846355 497147951 878193909 993331620 998346089 760817248 770305958 623970669 998124194 681647349 854957324 732741491 813413165 367879356 780431958 989432435 993951176 613473218 899444624 953986331 965293731 893306560 969825753 26173644 390718010 38366533 128257952 267407330 706604286 660397677 696686072 480308431 505450287 17141927 601858189 416236456 793914134 965395503 989974960 668040674 991068934 664861228 688325370 959256320 965424105 724402593 921488103 831787790 835280349 383292662 394584483 620867151 950421769 331135412 907084001 522005222 580428051 122491921 417796713 814365218 909508918 696157077 817672424 622851393 685983484 534330435 559363348 604022399 796922337 658959302 983606358 786717799 809772256 803080765 819786011 260057338 789721410 60304717 655009628 86550642 632170968 610190276 811795866 555010447 876268249 933811418 993961448 14292038 305189236 521938641 531455630 1429708 929921276 722629675 943163039 243681551 769031591 984663263 985821022 647832450 865319975 172660661 249853922 601517512 756128450 371464222 622196705 127671607 994365883 892388254 904918737 134766788 618942792 824168980 970623808 562551223 789242890 124974240 308714870 372402045 624479489 503540055 999139085 77580218 933226923 26422304 720218177 739712335 939331010 525086613 581837652 882197261 931293432 521857971 709426808 251509116 702649543 871879082 971932312 893223396 905808229 177489536 662100201 967089311 994280416 522741014 822140744 646632556 825614697 87510330 516773368 434915512 957684826 56375802 57412070 180625644 189336852 234650217 589307203 63437224 257198071 594366501 903252429 367479375 903595356 883408421 891781676 462172096 619777089 872651167 943178419 876189101 988728480 71044652 251442456 610141009 978467401 49202597 199389317 454574701 805011656 469293692 526750469 869249592 924771943 454338631 500354941 424906634 632940805 439448759 961334872 450918634 541560901 67271285 303003744 395977848 549833003 306996012 923334643 411849071 929223211 943085699 990154825 247258845 248849263 625783015 981421881 935107710 966675992 952052507 965829646 757279603 872282698 108980856 820828296 538422145 993805440 925549864 960101473 14157453 682463617 582691030 922943309 619290497 742150748 987716453 996209157 750715687 986617136 680835368 926800683 444796922 891195827 241879656 836990758 293146230 730296951 442079993 954654321 140362966 410755978 746706906 846626529 484505485 626628291 943543320 964355678 503466 66524517 96956162 120618167 464458326 665218662 80394068 308712954 884235551 936831065 831992913 973884623 538416142 842073579 383395988 482978170 156519032 954973790 132016749 182668764 910304081 954984054 881955139 970513794 18132239 179996694 813884995 953591632 24028535 306128444 335050420 737473864 989433571 996948736 178362456 828234698 680912665 877685113 670768330 872637561 252097646 706918325 157339940 256651248 685546749 940480311 689023390 841764844 423223398 806157938 275291910 609669237 416585712 994095267 221170530 247273709 400134760 746657067 469388180 688047617 322585702 851334652 833539581 982520498 535748521 576334515 622596595 641628884 428953337 964327428 301258539 697296894 45424057 782791507 156861247 539833268 779031455 843705957 671589529 845821777 533610506 862196149 833822067 886319954 892801349 910675905 163136037 490286669 180742735 505446832 88586637 473209710 581443489 803047353 68242258 131184732 57954081 110015066 104717708 716328940 371780610 494094858 140905697 292531972 644280879 680604308 889057562 924572010 101439144 180857535 880587050 984873981 198821635 472475669 425665020 730766299 787289721 931566310 52595646 608214555 788439748 794403787 93501329 657568379 521189448 980788937 723277292 904367401 643081223 788821680 354088917 580036559 992114900 992744269 632391091 879899263 439789688 592644303 318710372 644398094 144844463 354134694 22167502 629138927 501523019 514233464 803728928 903600948 994703327 995097055 633295760 725656987 729158856 829940095 646960312 709052665 153698800 951078588 420022556 423619182 669265993 698800904 52350559 872758132 220925071 672078337 897783062 994958244 574950503 729799179 610557166 740997375 990068286 990291385 973372604 997596449 983001985 991577738 784976425 917277651 859890978 997194863 439311808 916139337 816951103 947426506 151603710 371724806 760342667 781217271 350398799 585826635 229980177 829668985 592458156 971468865 386043004 951064113 334965066 486060597 352305801 634420659 450681578 472299144 337922642 704394164 145329242 501801541 136393353 281126664 809750944 948976927 525445024 582363531 63817840 402518236 193187620 407788370 296757890 560360486 182075506 755706386 575290588 841056212 86467219 143932363 681855203 828093075 70894330 302184323 231523820 330588559 348098037 444909261 645752729 952556475 83996569 503686976 227207744 866026604 411773267 639373880 224920028 270407094 567807804 688085255 946367562 965478819 484061773 937914728 696485910 985547626 92151825 382467739 70382486 342011984 760478702 850066351 692634614 853829473 961856178 994263555 95549501 940637266 150916786 658412091 258897936 666497835 646533544 669166170 122298700 814149940 832879815 953707586 816764206 929710060 452008608 653117640 566728093 751534279 380903145 733903842 234006185 873448736 233312007 531825224 289141493 474299131 44539404 601003348 208304706 297223954 437573482 958772309 393818604 861385446 227899181 785033280 932218417 965565272 784615699 871792146 929912351 976919912 312857907 952749557 571427378 897850547 549991175 668483112 124600014 207373209 930235197 970648360 880123812 967027514 382772555 519349162 717584765 830304439 699990893 813191908 460565763 933538783 357677391 379055707 510315157 782792291 181011600 709642079 62597596 526679908 531478932 966255966 725178817 763904590 852393530 890770319 238412868 295475379 960081124 964360366 446016619 900035128 789723343 998970289 236888971 459503659 121501400 774068246 123279115 725888183 11746062 441975721 484245651 828852699 34965718 414134132 842961308 960772244 364987100 943498247 914003288 979945437 473072393 514933198 226734318 712819263 540990065 988791900 713972595 982278053 606759001 996443298 481700273 831061706 654854352 899802112 509807517 949960949 37132987 747903705 300298992 945704025 726392753 917855120 930973621 966765204 376884695 498938540 152076335 376498552 118900211 715254201 793043793 882793681 90642686 932693236 559513433 639847743 199670629 312649845 579383074 750625863 913119331 982043263 695849829 741216450 140264464 284867223 171481571 299269918 625569741 755406050 606984579 696877290 943884937 968574564 664066255 870598756 507428124 582582982 189555324 860467618 575085826 592454089 965889374 998596810 546847952 778875520 997490577 998729544 649003131 816481804 968475247 970393352 263931176 652851585 393691707 902617581 970610768 982792900 449489823 582852970 919845587 938857366 926750590 952463497 416002887 710190646 207433811 728706029 578796205 798298586 688860269 841088088 947848328 955511688 863347057 910853471 932298030 950604120 852408459 857855564 485367469 895399045 229296664 583348280 257621530 844710243 479041622 660675549 274953190 837381955 510339748 574618634 140142069 661275961 758915001 813956527 217322478 552071437 221357476 495557639 322700396 330724202 493356225 497853707 785203952 910512980 448650709 947127909 631825474 813665694 809763013 981785059 785713073 843764398 175215687 643907533 393375211 560425695 366394455 657900809 38024708 429585535 168587172 641814357 34582124 47579163 302078709 685283406 630203097 763099128 700589070 969797690 588999571 628755916 263058938 770414138 947344844 989951469 164632738 588920461 56541407 533826719 748838966 804622711 749418672 794761888 795493296 986826036 429813140 716204562 927364689 944996007 318761388 366489400 797424107 939047819 498691381 812393813 15061821 539573165 671931319 909386278 22021171 907330154 563310699 999054806 131770501 170015765 421316528 939131970 80369228 377435253 248576084 795749896 17808017 738276454 427584367 951047483 857333360 939216052 74055309 380478047 632497387 659003558 389827660 673231069 801114000 972474264 177724421 273015308 88114173 475627330 880627809 994397328 866656427 996106688 818451542 975245962 3789180 381863627 285247165 481687010 61474474 886745351 323112651 910999513 81852104 348492332 73952215 218227347 91420721 261128112 447814214 956084116 366897985 971866932 994928769 996953981 975218556 985535139 965778608 990803425 208911962 335341817 933865162 978606606 512210362 708154512 196522806 876793125 48649459 283456121 321528762 339244113 231880762 662486919 293259205 963898222 722842627 951358055 74132442 941190536 659072023 839554124 256354073 377636945 568012296 705321284 456036678 654022317 736823728 916617916 177383487 743909425 32073281 961829928 250177272 992207059 917364440 936213074 901281838 940436623 851697645 993157603 718007970 730325102 79523670 590588649 787676796 955012763 37022379 167888582 112448307 269012307 700696085 812424811 881625200 927583510 757918828 996645753 572359438 726388824 401677134 499412058 909272442 978414963 185312729 370508618 942938291 966983315 106385680 451594333 278912651 706927389 546266348 606745367 882175963 998301696 584347302 779158076 603769174 753424054 327165218 366275490 737435434 738534497 279366542 876424314 209937898 979691547 768352227 913193222 97772837 811702945 165945601 615661802 802454094 991204078 573415222 641944104 342137321 380476732 240935864 385287355 461390272 950036689 754504738 845384492 448133911 739045334 583669366 615745359 84933307 976872093 251011146 802994806 716903342 790849797 895893743 915871648 85760761 683867423 295149062 661155696 877398804 929060122 916921803 943586611 974646042 981852109 764962611 966064847 689645260 861521214 448963501 470771404 943028296 991894184 266167340 347489175 245657734 681833522 346568738 511833505 142533044 386641882 801181136 882250597 896650242 943834888 44528593 289981865 738315194 838372878 760383853 914882540 601404029 706660259 643680679 895662977 606943557 817149621 475717945 916541946 979751998 981959777 254479862 688604952 74909190 430515585 289292917 633056931 419932301 962187953 992400827 998830863 980008978 989584116 551041934 865036136 127255458 266946702 711273212 963473160 697725583 955221371 813919035 947249691 461202696 859686109 277682302 398851728 522349571 956048701 645431253 933121977 826916423 897137669 159204368 905664651 637440692 667970184 488766946 921199004 352238546 546609581 259083843 606740113 791461599 823185666 782842373 834200030 884327656 975752292 727420051 847503168 184923412 758164554 868596897 875982726 261252845 359842552 18350062 583660568 48130079 269701362 542552084 678454648 200629154 239814846 302591661 641399890 253121798 587406452 566319725 752393216 579087757 927308992 621193811 939195499 953138307 955643992 5121650 622916111 433252475 894703513 324593082 406226088 413951903 929558412 733055608 775645386 177808146 336886350 519847972 878931430 567732742 718455427 877412994 973094005 891970223 910984698 877239829 926576958 440963007 927042932 814616087 904280577 183134636 870583811 946993670 970128704 582523612 956298069 447720757 568323708 547249515 666935190 73950684 159655742 803820937 858639636 561496273 844588280 165304516 785737278 996854871 998258857 775215056 825468952 25472058 164418772 52927499 724636127 243691428 516006053 196958851 258192916 877802696 901364001 582208436 761452002 256420962 381065006 796534181 837844424 577194723 770575484 487700671 723446175 712520650 873349305 698398886 927628321 141080410 520430652 408541448 714604819 356891540 991456286 421063090 748591669 781846241 932452610 28306029 82564475 878019702 979572073 758173970 970822820 278909805 548847580 321929089 844828705 271444355 520606294 76617210 221715850 61425372 108764147 888766935 996472443 184323048 763569873 618401481 951936630 256552280 268473084 875178132 927466677 136514672 514912938 153469119 398345055 146456748 202500740 784609354 876579253 978889433 980504306 165567889 194269523 358850553 820926118 822831788 843731836 211040233 633930638 535239582 758069954 746462188 981917561 860777307 985544838 279833977 767146370 554097845 832996228 369649373 738053851 82528559 821861412 841153428 952713866 811449451 903674566 517602591 887606068 261515041 942343342 245680875 695159960 750342727 996601402 177378965 467753872 53715115 646234989 968027314 973998732 13273310 845117705 430057826 958733286 881373639 987228340 360879953 776516091 635929618 828514603 587611846 622904644 400652933 468825363 349262049 607641273 474488757 553038102 942652389 951004428 422539858 811136161 457130458 858403132 710704055 733578641 75296436 509085194 840984446 853883737 405864121 613678479 574459243 677898620 719475367 733324133 848299420 979819607 36791390 656384235 436538152 609289489 671487051 805310518 209220171 726240115 264348653 621632518 860120020 870381340 427795917 877328644 372874702 836675919 861278560 939992323 937668470 989205452 668456352 899766407 531084758 780865007 185525259 616317145 240164795 890155680 58779115 692725251 288439545 589131518 68388614 422819898 150635798 589469071 958277516 990727096 336231634 496725050 923684485 977139284 916906084 984613350 714868060 886606606 274884348 515404019 846452495 958946536 960236617 985359562 311332990 602930916 301111093 611122922 389979536 690519594 227712587 439753663 474261646 762307642 422171900 562322680 557176380 730119118 605687375 703899304 991409968 991433776 6720931 977254835 522932355 903426959 787346358 851971536 618414182 780328461 369343902 371676034 791179764 791662274 897081684 933307428 665156717 679577196 292832065 359545583 805641987 972660992 169017107 539966521 623356619 951013543 364314880 600753763 256335617 949462700 504989397 811834393 720509681 821439154 565686023 642169576 441940452 716726004 639124839 855775422 747361504 988275845 671509545 921032902 306303800 541374145 714878470 868905399 461192529 558897760 130391882 698842461 155070532 357091804 114804818 913250673 822717546 841437939 887318610 905790306 870084477 903286903 512599088 661900352 806914844 840224603 335641476 791021828 961344506 966846232 800523875 851138491 578914367 631460082 334039478 485752488 974415265 997077953 845057707 849017221 886082977 897026102 720025286 809631624 589320937 654943769 305312177 733185735 576974651 589275817 574865473 863111802 998135415 998987003 495818741 684447154 670503825 949908715 99034478 749950695 910829361 911709270 607498410 691077610 405838292 771827231 469177434 653448555 418659392 892157954 348726473 389187386 439811288 754436161 958857260 990859285 951011947 972370603 896682519 907131318 672621318 943390604 790596816 837913958 218732284 670063903 938916425 965080683 422499360 572219736 126393619 249234914 387012534 730974462 788389274 830600454 942021234 976683663 526061538 609482525 174827179 323047713 589296417 783049429 560174481 772140591 581035797 619636521 589706625 603628713 605589762 989765690 658875663 966686936 244852855 885069967 428179894 823532055 856236760 964875293 178518504 515025569 359118795 401348249 816625027 857008283 955137907 975282280 554069730 561828885 332006241 608282720 483141468 727718563 791717388 957460308 281915315 714686957 121501571 960578844 935456044 998384228 752562164 826233682 148356389 377890857 28317710 625909046 594540085 923133885 337682258 686103577 821233429 856564189 367167259 884431112 251560601 517076596 836374115 898461520 522976211 967552299 732254885 794726940 656914259 902471291 579905658 586167066 438106022 627043877 441187881 537790397 52925419 587670159 837794336 886692262 21334647 470864226 178737923 267133430 503298748 565984772 553965535 988195027 267022850 976059425 780238519 972560006 143862959 159422725 699343878 837767396 391041956 536917715 182464721 327172223 219212212 729075558 631874559 974706812 314404076 454608535 753572142 899844942 842093627 921898693 474566253 776191188 439987618 811999702 675014473 973054351 809172513 901169334 10097181 618187450 246457595 708983616 377700971 514749920 62658398 488637412 512288093 556970558 647635367 813655022 615938183 772767644 455216333 837553940 483954546 622916692 507290513 606267254 555166175 890787280 5891711 395318090 767004811 925192708 843818684 859628893 886864296 967576832 65857795 912531262 972238273 991430770 619752984 733133066 655206747 698657500 651598216 974690138 191796521 306772764 555492684 803045822 965600974 994453465 731164063 945531530 905779887 974435296 223893483 962077523 930347358 975725219 713979824 836529296 105749294 570220281 149730518 216000628 144016127 512697281 338290150 722487523 180092106 756348656 140570802 344017408 479843502 673062249 144741583 362817748 49544577 650712750 546594017 684840484 415855431 900655224 829069152 898460485 911598766 941020583 332613587 461774896 361548270 831676819 452610607 945944621 416671421 439421090 383620118 492260730 438092193 719952623 203164827 385648241 933071646 978331254 96696906 758313148 588684710 904254735 454596323 560871067 285331230 451958017 321703445 885177894 655180880 852880297 496842075 901319234 848870807 851567905 634893217 903657915 971439234 984552487 504245062 958101381 815209937 983052849 162557877 795261351 301842274 365481829 450079828 873653980 644274625 884462633 647149597 966728278 643738760 852805720 96531773 982433710 514611645 754614539 261004074 733453128 236175525 779892512 335645815 602271723 116517471 358310858 147041445 441017734 563699693 996404568 582711093 822554514 724610404 803610110 420300583 600901995 140880022 538422970 232260132 835123535 236735265 540235376 121471979 864923656 163638753 565290553 601490832 676093539 214484593 745390867 542912021 551693081 902095944 995313449 47837174 284806070 516325021 707837116 586539811 653998568 815413830 828815861 301232981 878630993 532039236 620107410 946185058 954787179 170295239 952606956 717837538 733007573 285420333 796397533 979866272 988691359 157135226 553858890 499553737 608558880 671970213 908326730 518858141 600729527 420488527 491465139 131651206 547809787 606238009 688780432 53322001 505103350 15109083 31027130 589536587 774709123 920170153 971786585 549680731 712251452 394258940 629037075 554156258 958787104 652084383 985499670 502261803 763531065 990654958 993082045 78474494 473696120 731485311 903542102 266095548 605288008 773526075 787972698 801290745 949780300 484039361 823579352 842662411 979770703 354306970 944317712 871837114 887700186 700562561 822763528 145978972 617972598 551380948 701319835 484166309 677459639 686424314 722753268 369636055 885229464 394752935 604934194 237434485 902548678 636570255 921395931 343897163 632098315 782322264 856218843 669937364 860824197 549686408 865887382 469931078 828774024 466071344 484022903 283363758 662427739 634744628 886658986 3729479 146800735 471602025 919045508 728092571 896713763 332593466 744972936 539751410 829492434 470801307 690886276 679717023 726070521 404322738 670064037 808330571 863309628 31275256 645031817 923570362 938687105 584270812 729156445 299757527 589279919 283604584 451003155 724065300 790371523 720303993 741038520 427920855 936523615 231685756 270255747 191124976 469501067 240556445 258730609 789345154 957612095 276343471 602555368 127694906 767265522 517658370 736638905 806174474 978834436 149595053 908699786 199301966 476371021 169849682 329039965 278592814 387177162 131753606 972265014 832236877 914156367 932838549 987320792 5391378 657832719 824998704 877066242 927378886 995461069 933776519 993296117 994875548 995440878 339912178 541892825 868755053 899159415 971079765 982535110 595835188 871328958 40652588 716762797 224234153 698756334 371648630 524913567 230246366 982863990 754922509 922275918 276408997 959300851 286724165 879800086 55553791 621948930 755697463 819380803 442040364 629437685 665421310 990496269 884788135 916076906 231789627 448898907 1852555 644884338 577763241 936156498 535279654 604581970 302900811 530906394 934187775 941469696 344147067 624700257 993179030 997786345 581300990 641330727 576511117 977418316 207524825 412348385 364271915 514580829 127832470 375298021 682638771 977389439 932398218 977196664 298841012 461977035 370250067 724762515 835635460 843495467 185805151 911175347 67486524 621932929 104454733 313028085 41834482 860375411 510202651 830410853 736059646 934912507 930628500 941536417 519876367 601944354 700365939 855684023 32339040 217894483 344057219 815613070 514529996 807861848 363391121 590895001 92393175 884372582 746823967 823038567 358454931 799454456 281062752 965020937 558895111 777999580 749516376 753772653 370874355 950062545 424951029 932070791 345653540 454815681 570836695 663336505 450424254 737355509 966667306 991573623 648558016 893977464 932520323 932888630 138701538 644398328 6736558 758996372 371907841 531555993 189918428 392809776 700359940 848379696 961009132 978058213 51577081 161045705 266094227 364418907 704437101 794521130 304034486 318781529 466987834 696944593 347897176 549753371 950933210 997299565 674419636 901506640 6566928 994129053 31809857 966177750 118473054 301649123 857472832 869635176 48524277 638628058 616441444 663250369 273945198 686811486 940554812 949640589 956734287 973991972 150854945 883266118 628906897 938881862 59234658 502686641 759343260 775881954 656394333 814414506 822169257 853630003 939690008 969119887 496259701 906332437 490854388 638897118 750354940 993690452 321222012 687662015 457495349 684477317 735936179 803362290 324606462 544181332 93383119 266077819 595415316 660030423 590429575 746653677 683636616 953865263 448633462 838655678 781527730 821541321 2826188 810402748 403280523 753561157 551284863 979034519 38237573 821592744 530011390 751960853 359463449 387816340 642636999 698300165 326030171 334574668 686285427 758590572 544586641 658783377 378842758 488170453 42449480 211305065 665613184 857717879 506067940 797486582 441055429 764412941 393590559 791534985 346498465 725408856 522176202 726988416 298593834 516124764 687496769 753624876 670542916 789189817 424449497 977138674 998546772 998844444 380786225 441604508 343309869 919524773 318247244 367812771 995340213 996749788 972416449 975222179 650887757 722201580 339255710 768246091 972986287 975946008 530007595 783922948 207203492 714989688 556409903 700619324 529922454 691379804 903959143 946583494 902193480 955118196 927049556 972447314 721397572 842011978 526738613 803244856 151726963 376612373 92809260 776713679 404471944 948874661 721644380 980076589 617177962 703268815 411522657 567517963 887788702 972412218 436298631 512844665 885363513 925491702 640398762 941789993 774318837 843145336 562026773 889252583 974114643 982691132 31732398 904640420 468659476 935968054 248364318 529842446 201563644 262902626 318238136 452573908 145334077 249936372 92646373 568254795 904346689 965174327 918531333 993469570 45537281 129901771 953668265 981220163 622320469 834980557 327505395 622866129 175251556 673477316 465565971 953369169 864802645 931453938 440893349 777302295 252430635 715974752 555264097 680638214 245124892 591391686 902921117 938129203 11553667 111935679 538172607 935626822 658736744 798810978 603117744 621118688 434629095 773314415 949583568 999243401 917794475 951441472 973914892 997801860 679317663 680860772 670198494 759132473 699295844 768245419 472788785 594923965 912384200 928727907 719204531 895149522 838621777 879272431 851690615 903376586 722582722 738714991 905176198 985730679 803282126 907932940 352144481 419913665 376564484 765098380 387016821 992209560 878768992 949083484 951110593 964541724 652158772 704197354 716321569 945982923 902988756 957075010 167054392 520201458 584713601 709828658 792121085 983806851 501670300 734247571 249667954 531784265 478984900 786653274 550339286 695061093 628166821 835086794 209533278 740649988 319756576 377059690 861839851 986592539 659199716 818543664 506286845 565335619 501900830 746935876 936292164 938966911 377592060 433576049 721370973 767147505 289989441 357122344 672372797 893534454 418374588 914943384 109926025 993629732 376944272 926965135 682846419 757208034 287846609 390046740 196209731 578174714 411064300 432163890 670010738 698185716 194383301 803673436 69975908 663769179 249242012 704119736 214021857 603686111 496913039 499752040 763723646 774813671 805501557 954140555 488907175 648856253 946798250 950376109 284629426 643586272 697608146 986185823 679753183 981623877 938079590 938632441 738299195 792897022 902941114 904610640 892644841 976811000 545904962 607770064 476789631 703414666 133442459 580350697 939577284 944651132 832532263 957006940 101928080 325236505 890461598 946045064 462415284 902550584 298419968 953222664 111240164 887764210 409083558 516494362 182283534 182949288 792064045 846396181 227352777 726103778 686760522 752206179 445304792 701903073 220669669 271147458 829939448 924859516 865462171 898743370 903492641 934626705 803105047 895731253 277568116 468153392 155472120 883279336 39420203 252531803 8365128 213042430 231942656 410874532 194961922 961747276 819829870 838551716 297812513 517938908 110055544 154328158 371106548 508162740 984035973 993373315 161341059 377349367 451113939 586495844 449937779 813889301 718191391 957613217 462671840 795781964 253972396 978433890 172964140 931106904 753828798 934077129 992354263 997240761 835859731 876100711 630503146 729572387 570096111 984058688 341327910 494445126 425252434 894488259 252189611 960305288 609397521 758492405 943963696 982177078 661100862 799026464 471576324 818793020 213326224 820098523 944182262 997082089 249187058 578281403 5810789 573225665 263386211 903674232 215544222 294981858 673328252 898741554 640844915 884133939 379922216 674938929 249322719 681583188 170876362 328472097 181187090 371259437 535605091 893337183 858133802 986352769 312292295 939987587 349635757 434997880 52701581 980422060 946625327 947131452 946999131 976456263 924870515 927176854 191965214 987384206 127660662 286029288 584246999 786925362 91183668 201802004 152124168 983641180 754480966 972754074 235338895 339098674 775023649 964037322 13453046 87172604 188972530 511132794 141928700 627057998 369678611 636020708 809286489 827659289 161986788 164755116 316938519 801066871 666901166 842252281 863514745 968753843 800494043 922127928 779356061 989281764 285978480 897258904 178436650 779685455 908535587 963263509 692365689 861873058 507874539 567073726 978890558 994449825 367576338 939671539 573155826 837772201 800469341 929124184 312383217 718391614 627202557 945007819 318295822 963875899 154581109 158680514 810691861 898388721 231801531 984252311 547070343 789971620 809446135 961933438 666210110 853395681 243623318 768683327 799667504 900667153 909347684 965923032 188433748 987059922 739569323 979712023 271073104 527440705 812545636 963166275 148222449 237546202 959036936 970792899 624008717 850039445 469575172 842082270 237357260 832368440 444812970 860378409 734072064 945154579 507939380 885924826 572521706 839627857 988378799 998714141 212606833 400105506 283529178 674644728 22750998 893957806 616089669 747760206 785229567 829460832 105207529 789557994 333419934 785219097 74566099 841406200 313353957 823108970 836687523 858676415 517817968 722150823 102444238 830733121 860421332 982349380 475942755 628177453 909022282 928213799 170015379 505426138 615527046 699244765 902566445 970550872 567647278 754714519 332082967 863381741 733087372 984390816 691833466 958058871 490323362 973650635 317933289 348707009 328384285 463686377 24210409 564022766 601702238 606112902 582328840 902786487 107916220 985106730 165860343 307106676 498239301 847428760 327813942 439247323 896267025 906343454 532165326 709923735 715429141 761963729 998602378 998995843 838928239 963396511 941338334 972489013 375389045 627884966 377341442 815115253 296249833 979218431 303098069 875292539 617685130 844985449 464303488 744436073 300911704 989803058 442707355 769942405 872010966 966111053 186312735 791022486 765354945 784067481 7073506 236428936 291696875 566678084 751721301 817493219 97777684 686423724 994476357 996415548 615626198 761403636 144567585 834862806 550305079 779323578 503553164 949726075 551289623 796262278 315827116 381123446 516259084 685987258 446996715 766467647 894799764 904470430 963660304 999338245 760647212 943793940 393862713 663469404 145099109 943009176 274924574 542772850 940127596 991735951 448196096 977066411 317126744 662768643 644955146 916511543 734128963 956675779 248890015 859502368 350294871 774917722 587920181 850207325 513318664 767084395 510267974 717253585 660762788 800407166 391460980 583514138 743271710 851972473 381591760 391077243 599053126 826663299 834002418 838828456 514205495 533769876 407610251 651768888 86762098 677053359 136344001 888166575 100548848 718786803 998106719 998665573 957111907 992378896 744867129 825655866 701012873 887101073 257321190 374168520 832392328 916082072 819475462 986509465 139656043 454634221 971316220 981726441 476946437 658678907 784815515 907796993 77341835 329686640 799926570 893767540 860897877 922704441 688875653 823685151 998627201 999372029 812959990 960328088 16371402 909971359 569956607 977878512 622762445 633762843 35630640 187857320 578633264 774963082 185679362 484551894 530563672 963864695 350714606 990075783 621250073 779624205 705929469 711927117 125441896 192855950 264701199 438736384 629666591 954742368 554111800 880163646 876711486 930163830 244724424 468708533 675634545 790565675 479130900 970213374 812340937 857547821 185418134 788195488 371505352 811418784 395880166 491978224 740012094 905343020 764159280 804476067 856669770 977433428 298492959 543320395 833945702 916305937 919379555 919842384 921285341 946750384 130179685 822678249 85780643 936050692 549729625 907852607 327691290 477635619 383234166 812907087 942163691 996982236 873512757 883129548 574696090 687967929 54395741 308985391 186234841 904607802 329636953 928708099 466048727 964283150 448343016 792494463 375339534 809528669 484731748 969894727 26644748 89396474 208304184 334101513 838379470 983706030 268134796 791897143 225255768 556472444 458857863 866805097 645782084 660588820 209179956 897412178 404726326 992532724 260272306 903262646 721614977 819305124 273566614 308130230 395767728 984632375 623768102 970239626 118680210 691024140 251689216 336274320 805361651 915542916 190153519 261337729 638199813 643250598 927207584 927443588 300873224 385337087 850828916 983970926 422458946 689488834 733288622 913028199 839931804 906275556 757672458 968719944 820784832 933239328 181203869 751576905 27524314 64387684 294941338 371680759 3329737 574151768 969339154 998564780 393665762 709727629 382437049 439759781 839161572 921332931 191127421 806058201 272275556 946178065 752699817 858044687 129744320 983393823 468218148 759785417 807724387 838734166 988601828 992871040 10489089 805338314 522324414 890914362 285810226 521274389 420316610 786607997 879533808 901561387 832900738 889101916 388211380 870688934 641716855 767937248 483439572 956081171 920273328 985889196 949909333 965665215 642946650 812450403 606531863 801104761 954463811 965627934 400121095 856691613 442309322 943218357 888347370 897092001 14839867 681805657 490883442 636675343 853771044 915711438 257182139 902166912 874589614 998124056 502452009 957782527 654820928 783469478 763796912 798239855 998021728 998056521 553575827 759404916 233265958 272543140 125990282 861658830 355280303 671602172 567392287 759128794 499047406 503316096 610965449 953344867 817423383 863052398 390300429 937952873 810830667 979454316 51030470 498681253 161438371 344101590 520019542 843098073 864118625 912020413 631434665 908011495 502808610 934423134 661383419 980527876 838838074 975886732 239287641 697998308 62611395 853698067 216603044 632074521 651132112 886688660 704828283 710704265 243450394 932431835 597171086 634636178 896688983 902434741 183394881 955039454 400867542 836586528 533120836 643886295 363423405 469878522 328972763 701596926 638735716 827447660 859540206 906842885 332590165 548912323 891070305 910112146 587790549 875628073 393448528 519023113 37512810 283446721 99943691 763024209 951221978 973246776 822527758 972887003 165083651 524647153 554700684 879030646 505098373 757854531 593945821 688884009 469454122 493102300 887585596 962667824 67643945 448572840 367967793 523294380 349931357 712271468 294776911 519028582 847074959 955583544 657651826 835222581 96713826 182459011 54553198 403575460 577044296 836305135 918366996 986395642 284825708 441439855 102487743 752086909 125618210 579346321 421332523 610080140 139730876 947174438 586416543 868669493 711627255 767982582 58908881 601267715 755906765 862173495 67059868 295070787 373756477 600970940 518316638 959945719 670506985 891027318 272868278 590377868 485883116 818458265 862142703 925537096 452803600 708199740 6600382 686406537 50636619 996319552 243304078 856503133 11603644 556801063 150858996 293703236 464064685 970860440 973403887 980120716 911146098 976475075 230353279 252743256 900904040 927692009 236436203 959950119 75008417 625319214 131435455 711657392 391242756 522134728 84028620 745781886 637313327 667112796 170778847 527498220 399582316 929846735 109997393 152993705 193826010 817716994 229395050 284033257 537329746 619071266 827132182 870061432 629988595 862158508 130030848 277598802 135374426 715450228 206796874 548195917 681138799 826887508 724054165 936842717 332450962 654238989 113997861 115596839 573205486 714394028 71792007 281013052 866396908 956571568 557802403 757133234 188964003 316913403 169470889 505567060 545185823 550484286 88321751 619878094 380127382 457886296 628702013 638932591 485887815 819299395 201159881 982860625 221900835 727177459 132492643 176882240 181260510 532913301 927267188 945291594 149068772 550183757 703023950 918936483 797360519 914678928 89805971 244925859 499731485 836814739 311183760 448130994 946528124 981345216 469468663 719913451 96639774 873082522 863108149 982055058 696017792 728150641 805566894 947666499 967344031 981791230 801333913 813550426 106458200 385326982 302468585 777330626 574944755 746626030 251687655 556021516 735184563 959346042 467127484 986855958 989193065 990015262 886889851 950469098 751525412 840972689 239563774 570541965 221782738 845413741 295886142 652930001 19955120 259348283 167465971 754193043 649371737 865294116 269940724 664882276 913338799 925178488 177259033 806150936 81620848 725504131 638233966 808938980 433388820 790772319 180066323 757708824 214059391 307531515 525698947 886261253 489387770 774654661 810755796 818041581 364818641 698884393 711864644 914152690 663219347 960584478 153118458 855259005 187346545 950451614 604453880 798237219 972935792 978162981 589768246 883162904 430289787 756413359 961241680 977203850 860505633 936484127 958494464 967052710 992330427 997150534 78121763 706760359 91687009 820395928 990424268 992333896 466419445 933748494 866639811 985852475 567354478 820628697 420482806 694971977 562925633 985713176 124065940 852282723 182516089 483982350 881013161 938254260 80702589 450828763 189229464 685034516 793326056 873490882 84944264 484218389 856124671 958843710 400202791 484671402 216373209 799586865 725546006 753442741 862955708 959936627 238435529 534624849 484137899 952872242 321406799 838376341 812562122 927285888 528982329 761218090 835167740 970088691 173059373 527999955 893536621 946136582 752736697 794126377 897716356 970421510 855172494 863797254 323959381 899819075 366568965 731816076 218649738 738232531 793064076 800032898 597375333 612349257 714101263 836398074 484705429 603318750 704887939 949301397 462641873 613892042 699797257 864803919 25983780 977624552 179792466 970887321 915007249 995628754 424207804 577470456 225104665 265710215 778728908 782612283 666208125 909919160 743714244 905072243 967196548 971691332 527796624 654701705 932504510 983295691 286867760 414969065 200084788 331781739 243073307 408824109 888159055 951284519 293602585 793997078 611815931 991231019 521564322 926770582 371155175 749685953 245673381 812560478 544951329 963195740 355969857 854000176 293854009 718752296 508108285 736803001 548525980 579588543 456482506 467147058 16244094 130674382 688023280 715672973 423244762 643519575 645123677 950448238 875957123 910747653 337835626 741726955 148314048 724533365 667253461 953107523 465127309 628273467 980227446 995871400 100075139 375009836 192784616 753695789 341067108 849650340 677239335 964208114 599986273 775220247 454634069 539022558 908544973 933522171 665477950 764088218 568022723 872651537 438019183 897601858 286077130 501524333 3474699 800785247 853495484 876174215 821682051 849150415 702823674 925770394 398005590 859101775 642837436 947786664 954609281 958589903 733345991 771809686 405585805 560540088 803988187 926734727 520404783 744190828 531470512 538669940 459281676 818434776 812509162 868552972 670889527 678668295 850446367 904458156 912564199 968173966 596964718 933769575 635355532 655835440 786788806 963776321 447675987 998106110 171881094 676115655 143528818 949105492 124038899 251006403 843163228 952880146 137713292 384735121 349201424 634965152 631937120 677451270 986811403 992883787 114412304 969671673 564318703 751453381 787252906 808090714 932262904 961381937 732169004 916835636 647166113 647663762 68454892 279036196 633499655 837375231 43976192 404039600 435783721 890411165 640579259 856447629 29086386 520675514 614849037 723008770 546583273 778295631 290847278 349836236 700473591 747423574 919333117 935728097 962762941 971653865 632862938 821828159 843598404 844714822 870591082 884780724 749708479 799891708 460518700 659938236 241832232 673897575 669200879 878854267 842118460 909778120 193424742 789681124 434556858 537975597 222658525 972982832 868203937 939520268 348596778 743693566 773603555 777308835 300837000 900331188 925171687 972703806 636142856 872282792 718695860 913388193 277103629 422453527 95761262 707733640 495923237 909232605 294889919 879014413 336698429 976939403 241456341 834407622 838293973 874653666 322059139 688062318 980513634 987901080 531535277 978271835 23072361 210889420 837964916 850531535 939493969 970822870 59795209 887105874 485259485 596722646 984464643 995838190 809435154 839566007 394495639 671318800 441117974 892846794 909623591 982366081 296291330 684050089 868727428 870572339 328014218 515449087 365735277 918821285 159152820 672252056 17821370 136759117 507639316 684723694 639645131 766218738 46613941 996625180 414970607 701444415 961721903 977918005 411362241 587842653 57355283 897516402 684767649 748455738 311579912 489096866 867683009 932269173 58482747 304239635 394052583 910031924 289951227 978371929 205866352 675126756 802496366 890125815 211684046 277485312 596312838 714994125 500378187 906204721 141902252 511967512 503139959 818345984 530558212 996840553 400449744 950155585 372161890 740969161 970338643 998583844 246429430 913841955 51025418 955060261 814728278 945631540 362710817 382509625 102479753 939728936 190465814 427836255 384726664 554374223 333865074 408725787 912829898 938663094 819825142 950706602 342638827 951667989 992131159 993294468 291549558 660874417 372170042 873092377 994956847 995079785 707561325 916196481 767725744 824499615 441659062 570208063 436053126 898883416 411084255 803569412 419338614 862664712 313310772 541836001 890509365 901411712 322491479 644908333 952302967 957823767 888900956 968756839 376243093 413370041 223491341 430875890 948468870 949256257 810695394 863970013 669320934 875826535 242072370 767458179 39578441 158082034 521558207 775221651 186289649 850179345 160505781 275313488 915472324 968300256 149986656 824606240 870502852 874342148 143426658 382118853 332036218 448317635 614058387 893691468 353318064 669794845 500187396 852178209 698436095 933604974 794328430 928335682 190229978 619015305 36959976 921663157 110352177 527799600 139557696 821162460 923964332 945096320 526712073 580633729 648376735 829865531 195178173 775396269 737965079 829247993 455244247 953163137 833825568 884047298 92315326 504552734 470411757 889773090 266835101 693599817 389338658 819297945 330775763 907450230 172891587 306391436 118699307 220003486 411256658 707719597 96342131 620425004 921615625 970179098 117496043 199414263 264373253 731748885 471966372 799151704 749202487 884537539 554738860 928786312 191635343 241041585 676893086 680981245 645974320 780361563 748635852 849479997 259832728 803437951 258632393 846682100 773369084 924131498 621092518 705418146 384639729 941738830 803324823 808281335 495319059 644269721 712395235 713146900 144436843 929523917 245943079 384766181 783233907 917878668 958268115 985424389 657090525 784763359 932463176 937242156 279481555 603742475 824072241 971779978 883049103 949951497 776583083 936789590 907322443 956017185 360555183 448365155 772723823 845760756 485326918 855901470 154632870 738384823 472488180 487858288 588381968 956432994 360473407 942749962 747074617 825838887 495305977 621082612 358948988 779413513 899902600 911653091 105219156 722080419 697300168 813126184 384448357 656046540 225124577 655614868 73609225 811021032 212147073 591421202 435550612 716817651 373113994 661134824 264877823 339338697 312709176 498445444 859929060 867372481 993211505 998149388 676397473 768972024 882638837 889702920 16020672 880879235 964298575 992508442 157491740 377628218 32845276 133687377 388795069 497479981 702957271 802081765 602858771 955114783 300110382 482605226 486069500 910866089 701154222 751457328 616422925 944558255 281534018 374557657 212658579 980391729 213234829 890982165 966404891 969227410 849120239 982123220 88761790 371455557 914798690 947074910 117115119 231531404 530188561 637623059 83904454 828277760 930706506 998488344 854458650 996590481 498636806 706740549 647621655 976724405 160708830 265763888 963756173 998392519 705637824 866375445 695215731 747132277 715628627 848221076 879578445 909780887 685421258 707196674 681292400 840542104 668245905 984087390 761730417 874451261 248784811 878561602 847630477 970064949 517981664 812350942 68183449 926666237 16015950 926032474 578011453 762269023 668502945 932279248 541713242 827628292 482980268 757173637 123374018 877144272 849140763 903105825 246535592 976066756 297732117 352339647 466286684 871056823 177795073 639505051 910249974 962941785 917528130 928741190 7158603 297687502 448368612 672566969 300300334 391472514 397433044 965891365 203815750 950972010 657227836 941899509 270149869 960709386 4906151 702465901 662364891 880201972 322836851 401689308 63223353 463003213 280340880 881631883 886275633 946913943 284870268 379854796 945239468 970671670 987959020 993295744 198927217 583111519 194770351 214879163 725786318 750348872 844383327 924583901 930291893 988114547 983103476 987849762 214731124 464593322 620710110 894985224 68824318 223293335 512561678 550768360 71652331 487436916 254273216 967556108 817094021 920682329 592962023 737239887 768938991 798019425 400362544 476504649 76446171 787917347 366089040 870291417 504569002 534505222 768068659 915164720 43838328 842244220 317472677 949726127 780036086 909266433 994049529 996491318 221221360 310523789 814750341 835166918 254556423 707482160 861305709 907975907 539591686 655624834 923798948 983994383 308102529 432149384 492602309 541247920 618559790 709876234 64893526 325520194 532148851 767957417 340976647 637069027 930418128 943814627 517930495 690144285 219573199 481289966 275688615 317376727 264772949 279408956 342251285 724407147 544948577 630986462 111154821 326006168 472262714 494426431 54707155 115456086 43543177 114754554 422165704 426967769 878627846 918916265 569188341 630591748 760444479 899461505 45122511 326867311 654465367 963393762 509291130 966091764 836696799 873100621 901071199 912194460 515981221 607347611 88612132 460951440 965490222 974416652 261289181 776404275 963724134 992661748 275958973 943512265 369926165 941548002 959427560 999146819 434812512 765998592 138769974 976430331 417798432 661845216 27646048 29696172 209699726 381710507 318984848 440704525 871102788 946975026 165460584 701421019 5509719 502305058 265655784 856636813 167999192 756196861 603198873 913604755 954465087 995288452 371678620 702175476 438331350 649350924 797416582 988913932 893608309 960633117 628222243 775082421 270994890 448333865 108434718 842689865 961211341 982698096 853771222 917280958 739730146 775313041 966510408 998496790 438498768 861505367 147545914 856110465 325003756 635608311 281721458 618943241 988961388 989482645 604664401 832124760 182429476 252417808 735071706 998280935 933765952 967800738 471625786 610747810 484656696 761330723 350693207 988023003 93719769 424309871 867769146 953642302 669078728 703010814 993253509 994675946 366372455 733325687 105745962 147374683 858730017 883670596 259930937 889566808 344621800 890989012 753886681 879734919 195988006 752217346 509350226 969960320 449834089 706793942 562517690 818474931 733758735 779951898 102410021 698786138 839838263 854449092 785906986 849832467 958290285 984188570 967445465 987478424 120160722 429549870 110262281 187203225 649787833 965594624 405996531 485587478 413697217 837752958 409100508 847086873 164622896 578597636 201033819 779675243 19173904 452675289 22545538 712199442 243046340 269813942 12213178 730866640 940071275 997159890 52449358 535884895 785787211 955298491 173472276 580935505 910712767 942360224 694445576 967633737 679162248 864853179 621989147 729017407 229881929 858857648 618866998 657390351 55439872 790288067 291685529 379644690 977077016 979278080 602256634 696061554 347950822 353228101 847059638 982786026 703687572 723444482 229331566 501904203 317490473 659117032 749071018 912264518 754181245 889762646 954831664 986289699 509279769 848161953 895041187 899775540 992867066 996258664 387637387 560069464 688274371 786395231 211466449 617571057 858070696 992549195 193418433 245874709 897252898 921916638 65275787 921176891 760634508 764386382 878765718 918576945 62460744 693354997 388167356 554774880 575865308 977927215 58110137 889160470 319308875 620642777 339801391 484507465 743190021 803700301 243020114 597986282 421515266 958986936 419170504 847320920 344205970 775733008 959313989 970164501 251725805 966743759 464746188 518618923 61733836 595720757 637944363 946873146 477702918 581704196 509129073 636978247 422108214 467533961 144942295 665259108 399621868 537677680 290051903 794375872 598676705 808191275 939141687 958501250 301992003 517024284 830619123 979764410 757715740 858434442 469070140 546999458 609299764 735889957 629947818 743710744 813141144 814729556 866645673 922224317 5464344 230151111 622902378 764153796 759240625 963366325 772292691 855907787 11157650 969641914 973740914 990499091 563423909 745584369 705969091 798340588 616775517 807917638 286267418 716076482 226966224 754570101 141706113 586559440 322766858 724627682 146325496 789415508 163304619 853752726 743627490 983755771 563046645 825612144 828133478 951356174 617652972 989747468 490342645 977582186 903834032 933140239 962764430 977213370 826340368 885625701 393516263 717291426 299239682 858307352 494942128 525843628 585118303 641139161 879674123 961760579 836925854 946955068 392007262 674708249 114306602 224270259 318595302 536905195 35024790 136195940 173577258 447518988 767660063 948752963 155249928 784120609 904612778 912779322 722345166 941683112 260617941 724677762 644576396 773693143 300717357 486160169 282530776 333084499 234991101 287974615 35513885 497152326 329279585 902702442 319448169 545951082 485791330 656337928 334124567 618489875 787759178 873857421 205489251 440133716 901450698 995040297 314649041 523158318 477144466 582160981 128191511 565587714 588228875 789996234 489308478 604015410 617542840 804714350 378749077 702329397 861807410 924932364 861045313 939037744 336415784 638947991 135513595 341770199 229958520 306996909 720365157 948096509 234929833 956366932 906543341 980727108 349821966 794414026 850596194 946472396 858552610 883347105 67264326 604562802 535364168 702953960 129302650 531334898 398442206 457850531 510903612 921146329 825368657 971762178 949378043 955906689 854376568 911135330 964924697 988055647 573196230 740994419 831499439 912169614 887941161 912119318 702668516 934645235 273979638 700345877 397769885 839165266 255470574 661545221 769320017 934273984 163984237 910241535 448096162 710031513 670050371 921021056 336809426 832055682 957308539 983043062 154644317 265065572 1619896 46468580 621343737 744918014 925444529 957484477 14006697 467895748 639550290 798469568 88699032 508033413 2299410 718558862 171926822 371885865 775911208 989805771 667813187 795609792 610973829 769705519 767294267 800551606 752970425 920207020 453505852 663398777 431342247 776635173 560250406 940031284 736192517 743844440 708874921 930442920 143380823 703544295 957470800 992089060 785111190 833219770 223144820 941518713 689010016 866947979 902939906 986512441 891127557 975658301 716468263 751715563 180144914 307713494 521269664 981333239 713119340 950008441 948665404 969399391 613601003 984356010 335813679 907376599 956227178 962849982 314717707 662781238 940997289 942732560 995467404 997347139 380455561 894092609 258290740 322998638 168242816 248550513 695336085 910612924 609997323 884115380 568687417 770231437 426046743 884798050 44691669 649226420 624056206 760513718 91251479 793518974 635053086 951491972 301740049 547153483 211362212 674460366 478364728 510251102 38009599 258407564 946023545 977847735 166076057 585131926 978690283 991181227 734884301 922856423 188487383 863672997 842144761 870507143 760964554 917608033 50394473 402213594 780961173 808098098 900656757 953528059 629119750 759255771 806909652 971497684 675653237 774837303 85122658 328386043 370172911 653889797 275050707 841004327 51250319 377518705 245046461 428471664 66357236 934709966 58641827 882235362 821563330 841882387 568483906 970842907 872536584 939559920 865918818 944076588 643637656 753420932 822686730 834400589 52501672 90032047 294308092 459584821 805983462 852975136 693442505 834755696 554595848 626566799 435184271 491272749 803166733 888329474 604904437 695582780 833269816 976187891 617924792 742501955 522292804 597599535 970756113 990755373 355962735 397659437 118116312 545517284 169351821 940205295 563888895 933278290 781906457 800476729 763158707 853869992 434677181 656381432 533737521 651813348 632631705 711381416 942531183 980335705 219154183 260846695 161900040 679947174 791554120 860836867 235433485 364658477 306519459 834362687 626269773 936865701 751132915 947690107 669159301 682661192 104183238 438987389 314929949 484639278 444061452 991072236 12359181 878362060 759933834 821785661 795912538 892261047 525705626 639449889 743502211 987174567 966132161 967170477 186732791 496074625 489324481 807810601 330510737 697441221 23280315 351757876 850861462 867299523 32252696 430807745 263774206 970498412 423111926 512345145 81058300 389991037 160743386 582688859 439323595 927084253 590175178 945017813 457534475 847234304 802285101 820482808 560873696 811868547 623440222 977880249 144937495 183126210 800772992 820400362 593319131 781204490 204989464 770460118 223335476 715219014 191158121 595084633 664804104 940064831 749698136 984924440 3885161 749372561 213007241 810852795 148012014 484525292 505699255 883332444 806848178 981165751 756984503 924769531 13318653 234400494 655036276 769881773 149276418 680823419 300466473 481536030 863284324 895461483 590631047 757525474 623104377 708654408 134441664 142276350 536235817 729155885 665962492 680122449 883330678 956723099 591442592 997231563 635909994 871699783 535220322 872508424 221903812 579147571 900340338 990443920 220473526 674388896 637174356 822530975 326358325 394463354 359148571 752455462 539415983 963488433 19992037 602881839 595622390 987209579 355302510 983063152 596425788 949335316 333331702 955718762 680041066 938161260 790709948 928143778 447304279 493071459 638325811 911323262 881194338 927364541 41447253 90664227 375887534 475105930 651164720 713978401 692495786 727588546 318098785 703540663 458323077 795778846 654334622 877042893 5340088 536422778 476734617 509030668 260428537 503587430 533641982 925567496 669148256 719249096 258125878 319732686 233217176 838934982 445576446 838609150 609405696 811680336 677500613 800612418 874251219 928695722 547537181 707985826 198388662 703017149 65120126 464745643 354201587 563579652 263695782 853576871 713780638 805183166 325714256 971475587 207692637 359295891 260615848 526668683 96752072 338601731 41284414 999039808 41571072 69638421 249818960 625743597 396596682 849755083 689517974 884957523 469188922 730377599 235889521 634009061 622546680 806934332 861979256 971492756 102260156 176625515 226375073 995609325 375572718 514913543 661226592 950353107 554385596 675200350 367863686 455001642 535300601 887645596 768503208 948874353 220817329 773100318 926740702 995219298 312546137 932246669 892647097 956175456 678995708 932301609 94894655 549633127 428423243 488048271 288701208 594056122 861237473 986211439 382922567 753412421 898931745 972142650 34574980 36475087 98561380 478536999 880359090 970071223 427746716 967064886 250546036 311030944 202659340 427186073 894901183 942510614 199824519 899687384 864177491 912690941 675833346 861794526 346107513 925843154 63613633 220374678 497868715 917795749 574109253 946566049 593554608 954482595 87878088 174059593 940635456 971533201 310870542 784172994 296004435 743144911 196955291 676864383 427376563 732639190 279561175 779321054 584351182 590544469 344118533 552822544 591038286 810850678 67072375 864546801 67218752 883448608 397659063 796576106 29365177 668072494 524895543 732169319 197765593 323851083 292448295 922271230 953043873 953333029 459307821 488734030 628039598 824740353 494777121 643520774 412216801 487284529 219679794 641186497 804190731 863305187 398139541 507945866 680394679 821106721 308848105 747293021 716580815 897284552 66122771 539270553 223612037 922351667 734730972 861038560 182295920 885853704 756927067 895863092 707308740 865261971 250710709 469092751 283031552 744848063 149936221 155150867 369631276 848277561 745023694 887189538 755189243 945689681 181156820 806391737 518626623 779840084 110777979 336095570 765965232 990184952 56706045 454333914 626306518 645023741 621536973 902190314 992537798 996849423 671455680 725475674 189832404 964867908 927580692 955843772 952355967 988354962 452501776 467835734 367456123 533186645 203884417 514647427 253572043 796509047 502192026 972737239 716338186 886979278 359657419 948070428 812506238 854497686 733142306 880438790 725461474 858272231 893528394 965321413 984962014 988537393 167537021 512191078 556778178 576752950 219786278 638146589 568673374 601156353 643679830 770918786 22909397 439281147 357603490 855415212 858478065 866577597 935811116 986652113 933280078 956246150 282567320 693929957 97017208 279373405 239945426 247895327 51961106 783758042 141327530 518246533 996952126 998765217 326322030 427715695 388006957 910496734 925230468 961315722 403406538 878538593 799001676 912844193 157087312 911276364 948692501 998722454 800396583 894353324 680923231 828308463 651447165 858721254 993657290 995281847 761817490 909119392 704821199 761910341 959386857 983056041 376659068 570780488 32123629 869446370 989395928 997581316 949295586 954066575 127284346 393289458 525300331 775029167 312896569 846409200 537989567 776533987 924760054 930711797 213750067 803652597 828421312 837042449 281519539 480732972 615647873 888794575 543358509 662735687 317350250 389296656 260775375 649933063 245846333 829746587 198351029 688796932 894689336 940461646 846683683 927283149 90191717 939643250 801238242 963561240 118522926 816114518 673436626 808648368 589536554 913082106 796043544 993791470 46066081 283251618 979088719 998548414 556113235 901897948 938498534 962111486 831625809 995634880 55485700 598872828 833200021 894295975 513711831 613190462 925474142 982878070 238954918 287493460 580240733 880459572 353772457 499620003 177956925 462873491 442362960 902230181 687638090 944271292 285778159 470254749 219888214 961644574 552472634 911421626 676691593 845620259 569206076 723273026 829936684 869389404 930422013 949041565 972065723 980432447 134790850 197231606 284433198 620231108 867623993 962010543 76913562 416311421 149518238 321503857 114929558 905867320 676203300 701401492 403426075 712936078 25697741 492924723 887049986 962680009 747027601 897703804 587740794 827680230 530364505 881535369 428957392 674843794 546014652 949709603 501843521 638121118 108518966 434596645 425744979 877611928 741864545 767877669 212089903 643843025 922542114 978822887 62553564 556973746 283028525 444914155 411121859 941527310 981898399 982553261 232371123 282585389 992729918 997298902 903328868 960031683 717128391 844991048 711059774 902553900 550543432 740788623 921246077 987489377 748788026 906730532 622129836 736087366 629920985 675425522 464170037 619444299 789000948 953839652 136105945 274127141 773558537 798028930 593891136 809881402 162295789 877723785 512902465 752773083 527992956 927736692 615146746 728337305 342705871 528731796 311689248 615685957 561362357 894661711 401396305 500465033 836150207 904985742 920557948 961846763 910516515 922084093 236151717 970844733 675222453 709531529 838352767 978682789 754959196 944461147 187399374 637472933 883251247 964241360 426173426 673846094 63625274 335990053 321898003 951692281 590277835 685684992 200869598 903752835 817253204 947720144 262782849 763177276 560863311 755256533 169455994 891289141 598409186 753883507 855384702 865273831 132000489 169178301 846383671 926167919 562254316 680439839 491269488 817784717 819627999 865209336 107145277 161177184 588991184 938591870 197912839 784845243 684093492 842966356 772461746 917385521 839801852 953203715 340161759 530187455 277094063 557448814 674540441 695573911 241677569 744277348 554514087 849412813 110106874 326149670 867385695 981757120 361084824 807743021 954084440 974844197 738842603 792419363 710209912 785422236 939488733 983611879 894906237 930929451 615898496 643442575 864784507 973801924 564147667 800195296 530579659 543087277 56699620 824724345 238181746 284430631 910852595 969855130 18853389 317255598 388502155 594832635 998564139 999348561 499916399 891929074 851542534 871805331 509731222 586273379 357029515 394901219 982359404 990907633 38598532 608577468 958353462 968504528 653639268 782411344 232090173 920240933 298457969 387922790 900099675 995017371 527944131 859250999 250315896 737641929 888496196 980825762 699703242 787308391 413890721 973858247 216027209 936479827 135364486 227311075 458438039 808517565 816936820 981203775 328450459 764556744 987507137 989996201 928925836 952507912 628333545 986168141 675183624 942317500 796180704 885431709 600618339 751621165 271927789 773011501 847609855 908010163 277075666 575715484 381702532 855376295 796336680 852393756 868421216 925762318 216345839 464800959 37670 215425903 911422882 982756241 500609061 983420522 447329278 776033692 923082594 973111461 260581638 787567709 337494298 721265307 421948549 721529214 633359103 652124575 453737682 657671056 782627699 793658171 377409067 919050805 288113136 625492520 17709251 605136787 437934373 991678854 908172181 937888858 271457190 681695200 715568238 963532812 473861223 998625829 178361636 699381272 329453011 604521690 669861515 983203500 789623402 908288201 947627654 985692896 233313204 528859766 253415692 523606539 397975431 846743245 395230665 734209738 800913410 825286479 787691217 892236910 908142883 975939217 477159890 968499599 428043307 543467896 974736039 989442355 103880934 761764255 707024412 910754164 103599456 212959618 397258564 620452527 585452161 688193587 476415248 924161322 726849654 975598747 181677764 901789275 337493887 959968821 960309654 964334406 547915964 994145166 668383714 754511087 177617967 575960382 409884316 791602620 214314722 686626869 497469472 691248040 627578555 831977248 146892080 539884172 117217973 337554784 717154624 832734058 760598456 973042934 855142071 952458269 517152869 734357475 72475135 550024495 892670708 899984664 418224536 954376694 163454464 303705462 420585013 561117551 697192566 754033021 716094385 824475662 133427358 354124950 998281788 998540571 614986041 650158865 226782585 969012074 862250903 894286143 495132424 544985031 434222812 745974376 703329099 970409693 318791237 352972902 626665089 930224203 984161667 984455250 247818312 518391762 398025536 701352545 694031939 907040383 947217195 948284902 168937580 268336931 516490627 970712878 151342520 297734184 854290693 866347787 1574071 394661151 338041047 918430446 279847573 618805408 73249545 120151659 218373975 803594316 399019804 424389834 157907136 615514955 297558433 461362466 276532109 633713657 810616922 963517971 832655959 951149347 8789859 400469845 216066309 767973499 701815982 913713452 392087141 684576139 4896550 738126079 551947308 715911792 374877303 545802129 335438639 607186908 515508289 869418187 139685436 878327179 737013470 985677532 524870918 722437603 66917901 245580611 117140183 870639488 164072246 840534665 719223750 875316450 178847478 471446615 827771104 829471478 274721327 510960640 416488191 465865163 935391601 990911750 451603240 987817056 583524052 885518266 24618247 871820280 756769629 964807628 65557351 335997191 494918516 661148645 33034404 263043001 706933518 995359492 664646870 756016783 985338988 988216256 983548097 986776955 266966365 272412100 134779961 258577441 273963136 658801789 702390858 754711448 188093840 295220533 962738871 983633625 468546435 760801441 885526755 886530496 360843481 569904188 597911843 971476313 840502324 885610581 557431913 647604209 939905425 994143294 841435506 891702954 667315307 931470684 45356131 279255616 28674211 376378000 804128483 852335937 29993152 746483074 195936922 284305934 151014990 352741228 723624098 846700237 371304817 716250261 686334491 803583360 963951563 976934985 12815283 806608582 31432980 92476601 788144847 981813339 78558669 131778397 15085241 781458538 821381317 963939911 202046290 474691608 448092010 615815690 104754853 819328292 42459178 609488701 570695775 992416407 856828458 958420115 90579404 514378366 533512340 916235298 967149033 973679604 156835111 843809954 265218349 655277597 656025314 836152855 410004007 480384168 648765397 663838109 260616921 623621366 490164162 633898170 521997673 706057209 668724622 767270433 869038982 884408595 987181836 996442838 946286684 994598993 846183862 873316859 913181493 997344674 237446010 382173998 315822992 464882594 266868583 875588796 18997603 287797456 671926406 979556151 658250347 776301987 941533245 964419164 178458370 402309971 868620607 969438904 989963152 997280443 570413331 635801476 114243435 188761309 856457155 992261229 428596554 786857388 555674493 752712978 110633575 586435042 133565867 373330238 824955427 875076372 780503273 909211512 913600503 992806931 889575572 905235302 576975937 642123924 798395214 867959091 118634430 419144326 757293918 923314365 367391962 453360274 849258799 862720562 138518838 713925534 301713240 650531001 560704501 602140930 618450878 892843039 161269385 838891827 865262153 897714241 791734778 809994150 520704629 811747342 200223779 650312954 406037554 535026820 723575799 949771917 371765018 792852276 572847672 823894560 137221984 183134871 74173451 482110876 446679817 497710602 658159428 704746382 829524197 987704995 351831965 843189862 24402498 674747462 281944977 793719669 993626282 996593969 687407392 898686919 556342451 765298561 856583496 864520367 831616505 861336368 469874562 600719726 515670149 840694806 642440338 642751634 859004633 943033131 296334404 319376838 410893689 907003562 139921509 408808657 180423247 465443341 341617638 865866113 46050571 656091284 906818404 981788536 225980932 616513471 390631826 762223146 711713858 896858827 645704129 659064490 280236060 946817547 706120484 874484002 165458725 525939011 680994228 727228451 701521637 787492621 682888111 969439628 59387071 466944765 255133813 771243143 729406143 881831861 361557859 857290668 535932634 540218776 451413064 566400359 900614590 959394356 826228844 920408612 304212611 499578743 440526295 576238814 695115076 796011221 519044469 635564098 964203674 971186934 969705296 991211759 35504089 76534285 468398995 503358735 382177902 554344334 289524737 479760052 653274982 973484010 3633448 339798762 958294494 967747547 467298137 833687201 375462606 592179612 132487137 480054426 591255872 970851756 785444698 947325243 987377666 995674307 324730361 580835009 286964629 700050183 627847636 697953927 132482381 949333612 267493009 295998227 907039469 949920053 574218286 838358894 740647277 769337450 609391069 778959329 127511796 646300890 367438586 408380294 580631047 976322225 712293303 725954452 318332315 961174227 199759465 313196948 315192614 556124008 748356178 776927009 360219125 745508213 375438689 714753229 150807444 814366172 979803409 996659585 572448253 981382787 684129902 818628215 175827483 974614849 645443421 867364196 375000240 641082972 777206185 903432583 862559691 889336026 647214206 911593803 821425651 899595781 383188716 635740536 498815648 731187326 135445516 378110084 893900058 898638223 177217290 366875250 37011469 855529066 275386905 909706081 705628306 838883142 54452731 887115544 468099287 553453501 276180225 595725832 746101208 928434329 935868505 937078769 464381405 827069571 367904797 863772863 378662728 862138700 118694631 663740391 709031485 948797856 901321538 904102548 897931499 993968768 415587335 900362265 713016907 913331887 249272604 565302986 430687778 607316013 460277613 586901959 537798688 916458552 782005874 832051463 298744267 335283089 545311118 575042768 76886850 579326361 171007864 949674840 171559657 802802449 172866135 702089276 486844720 892930072 86480968 348593239 530578900 775096386 310012624 459881392 473542683 501068030 890298187 987590777 209223144 497532387 894875702 997861545 338725127 896984422 37874372 120582044 647189080 919110987 115510609 877717916 566534795 575169544 149331585 817198087 419256694 813917749 633510993 976865506 588960550 701587972 558012408 582196543 80215125 776344542 690352719 868974512 673412053 821051664 334593339 885861080 431382515 669441825 73013245 517416038 760252100 916635658 548409069 941533857 209413904 821156440 919502455 950508737 423287986 632324137 640970682 658729964 26155524 99771624 911699039 980579993 769878698 843692536 859485166 944972551 775964759 966313939 744738514 747414746 778346929 975143596 229482011 718873881 190402348 586238379 783650094 906665716 596927917 886734831 774046488 981051635 187994542 443688102 286559812 570360257 304904368 494463496 756195210 917767091 913156803 989494726 946741452 982359062 861060827 927387625 96431906 397150678 817750140 926819503 362860537 837043073 682578849 913650247 345927652 385819896 291839475 829122709 36247298 183124468 248501774 663747064 73752308 821835897 733377564 744012175 487334660 785562379 898791954 950614766 279746842 331955297 253922738 600182296 565454776 822041029 274663276 883370858 326388151 671626385 627220782 669054108 142653399 456893280 351890471 550365414 791977106 974257051 303358881 719935499 26796718 882814402 358736613 570026476 132801184 503750177 670095404 811078601 670004544 877064581 604499083 795955203 310669753 337095169 883198382 889014419 938447595 987984910 212749863 346031322 306143867 765132364 330946134 656740801 340132379 582395107 849877178 952729789 55058617 89281113 733917230 798062898 515701560 976779813 632305505 981888954 600535616 717216849 290329742 646959418 434893147 544632954 173506255 593885272 611316224 843145950 616211659 766461489 890944300 904553988 304845579 768372470 829468623 851666675 195131272 257335948 74951199 85398082 12911502 331096116 4579870 841371298 369730817 874118139 733591801 908987893 23239248 316867228 926480044 941660012 254447147 266491298 463353490 484648923 135728868 364509520 137364034 211679948 647820325 899818936 223938903 359459428 334839369 760488454 249078901 754853627 84745582 325291379 526723004 753507365 984625206 995215899 326161233 611483149 817367489 829892101 995031306 997421332 466470136 509976080 105715029 174966266 518525633 738214584 236193419 667997319 100847581 203762489 406199664 969712656 273173012 867856214 618803028 824053349 203012040 955838256 379513443 391415945 587144112 630408316 648199107 990784091 570432791 806290861 833050509 971042813 803350397 956944077 586997601 990022391 216727823 602082130 946828525 950125503 852507058 968259329 740669074 781197169 879564382 983702454 823828425 840282451 992102686 993798120 110660238 574247087 732840119 954986266 303244065 962021420 401384028 588830222 251657455 339692773 916979425 946638019 710643931 719896360 89377066 348829028 180465989 674558214 577478383 842252705 596072003 895408422 410417681 856708299 79921914 824839700 174405529 238301972 104498799 859230467 413873179 844696576 392969113 437648408 603301190 930802114 311669580 721906647 470610951 782912812 753461676 945082676 286922017 646758081 391654500 506359837 521370692 594149396 536892310 735184460 351512305 845351440 966576203 975616851 103713439 462333240 940210329 966779091 855445337 980194299 245439639 974942295 769062781 785132086 107317391 218472674 763063595 929690474 190727635 893889598 744196522 905679387 348101809 536381659 244200997 917976268 666817902 817247866 977820646 979423129 415792076 499558805 548451657 994001064 64967459 657889789 539479072 665262476 94220082 331043685 445893198 571876095 393392303 564997598 393500676 916998574 492825788 882746715 259523620 613866705 433844985 727686193 22730375 949915256 467073644 546604417 357880030 990906838 527293978 860879937 809351838 997755817 783430723 820791818 39279510 900711053 370194507 807269819 541529670 706956345 420430948 947636306 227738472 250050527 13791182 354293488 869547973 915269182 75945518 84585519 854100196 866372388 978968068 997980596 504823576 640676063 509479252 534524984 895081838 986528776 722950944 764335186 710937502 865105925 201232349 689642931 654436095 777039272 447047940 914727533 388422126 535704208 852859765 945380123 557583823 767848309 979452603 985720221 696676927 736763154 780851033 843903375 245292525 342525100 255168602 544190078 124526099 669293324 989458146 990027359 447237439 941095570 1968405 253050319 654506928 784269062 24631071 85404454 406731777 729965063 689230792 858037674 97441009 533736567 449939216 982691584 243771297 271419054 597139719 682992414 459337170 826198760 900133524 922726110 997133308 997439531 976717136 989993556 702893100 772311014 13209660 588097302 921442875 975723050 441740315 956568735 466318233 682711781 544584098 585043347 873205759 998514482 491771005 690933395 593485445 993148658 782106773 803336636 309507013 580222539 136495380 730357736 751344638 859500731 375837731 713437588 440014642 792395106 473358127 600205794 336865689 518497899 200138434 348500123 842760730 868669242 127770808 149427844 690123538 730291092 352908326 520098915 484213993 545060478 95153510 845757649 34239135 834939514 582226883 908949757 962068623 974501587 310972766 872062611 752397934 972476971 278289601 550184777 615588335 657581665 718910869 742333274 832213342 954628682 296869614 875715877 963498788 999246132 314693642 728694942 947504115 976635877 818375478 900816905 627930015 957271441 27689206 135102410 836968556 975025916 753652987 902214717 280254691 956581774 254262116 894461761 847840445 904742301 222322393 938069318 613965079 665646978 67951202 131389490 849068454 878705862 85847559 200465901 671707860 806289365 450783639 877301297 671652598 807916008 605210530 825338447 973207361 987413487 246969134 674462203 294585704 768653216 220621211 689939978 60650694 730148998 538884356 555911842 904831205 982702307 110391864 578281163 152363127 619550890 959085383 998764594 53326202 324494141 446446402 489163573 194660835 487141755 349565200 606731398 548071655 737902534 555898275 815861297 325746202 648470690 128954974 218232849 281335852 399967788 883692268 886974763 668252745 751118669 690559878 856138551 704288060 944934298 132982564 900772939 732505670 935980861 284757595 467915092 637512555 850494484 994916755 998345040 515988836 581323276 15249130 56113103 442641154 622308932 687400992 700844097 285199505 775430969 810560499 819937589 102289370 584371203 958869883 966109891 782417146 959655821 511507540 664632687 143844499 204482594 932982138 960022011 818424248 955106714 211421020 804957603 246060968 931766579 266861971 515882634 275871633 442290413 673176253 678923643 323822741 837617224 669639080 919474727 289021542 996369148 310525392 963344164 19725832 361603779 393644997 796884928 418781751 947618464 719640923 985286810 409861953 571641233 560133662 968261331 490423697 842505751 876174744 944513441 56085472 95712652 466971798 960978080 985068367 993953404 443024288 644325445 266683989 438604123 399571651 481606980 288438855 808100279 447943626 625195754 49376516 420185662 327164994 618238440 958094208 967123722 935727163 985263390 329253523 549065930 629442347 994995455 151732719 610370682 592242167 926471331 520776966 549568309 696868162 885548856 905037510 971874442 562606757 619575485 575417714 991436654 473688561 713536312 827478401 980161477 895094782 970517700 415040707 995303210 210174407 240467223 181620142 727903873 809604136 845848331 568192767 818873738 291659032 755112972 272191278 623116479 457231143 468036826 455963178 593937237 901425642 925815251 852202720 975105096 14180542 466287134 75767263 166889478 299503096 759477739 234026318 409342485 731593580 831780091 350621158 864323454 376033498 791951599 79361019 323309441 409852116 629808181 779104556 870636178 260283698 404414973 338253216 450501213 783555068 973088260 601885398 636414409 159432373 614094777 551285682 925777712 140308270 695234258 250539953 415687336 543783222 543873593 508042451 839646982 620367964 710874050 801085482 980381672 45996592 859514580 12509557 373114406 159925571 223465368 175914568 250309518 263915494 354924899 294106512 983556389 842559974 870335034 203063631 700894759 547365502 619908242 950964531 974636037 443445583 587673676 480530590 846967497 962681013 979185740 157407507 365247645 570871363 886951580 720118494 813832983 253194849 339664681 566456095 709926659 822078414 970566998 624763893 830655165 260675259 504597734 63438202 613920481 414128572 520264914 608064309 789655041 383881567 826940034 778910962 821199905 147906477 224737530 378335440 892091331 44217066 359129111 569996173 960318700 749915971 816888275 396733103 719183405 207982649 970973474 444458332 779584727 837443041 936364535 228727461 658326178 589421052 837555115 346240885 362137199 586687168 707521225 155603280 247232161 608034416 827198163 128307807 320333260 3097701 825655151 277289697 445903570 172387329 523404222 417263903 482560932 697498336 988658561 628036182 974064340 993027465 993699534 652574803 745136889 603517520 728481859 17282302 553795915 455267221 854359413 669616898 862041513 246101357 556881251 252501160 814116801 851181145 963765895 71632150 112356372 167644238 592950301 40797527 811811829 544694746 918753147 520964457 939413085 965198844 972441498 696582591 885174225 361107094 524750175 538600210 788622741 384798354 864248790 84337205 187548146 133429920 925632930 153073598 841825789 629424589 823263546 185898327 885356189 620323395 966492902 157295536 731885459 824837822 866853650 795122091 884159119 135283345 334461980 49390563 444209248 212396936 983871305 549354564 785533094 717098572 827032873 502701556 594071024 76395345 439787133 229532543 703428300 594193496 676802295 316885909 677878023 989213468 995000064 865086519 923574000 495121939 503193009 104172999 918176460 933725748 959964898 8816308 200662820 687197525 882085459 996653094 998837611 81466641 764218492 316895649 382719736 940871128 977665839 993031214 997973668 263151545 472909972 650589414 724255657 825864145 841836472 628304019 791174258 94699294 117727769 614116683 987434592 53297167 616594304 398311838 648306652 543241038 950097708 913273518 957280796 587057938 964982163 29194256 660763466 76883473 555892605 734252835 988540701 799636874 820144839 394396894 861035180 95175023 272111685 680596579 852625004 911653019 952908351 94999484 421768037 816198171 822967694 807531359 921728983 877690086 907500140 852206997 901657818 603207696 963162647 780654954 926685821 892736897 983259791 406690641 801595245 281108005 308570801 288691464 961465031 878929666 919211447 173576286 744817318 724113921 996340414 43198703 266023767 672287317 906879709 900513268 939141438 907835974 961158368 198826707 597456596 222609784 794416108 569800469 600359736 580160703 668881724 866041260 867147046 260546093 415382327 766762606 980431227 871263643 916535112 855810530 858648561 631537818 843314350 453553847 680722440 972482590 990290527 934222172 938099728 950146378 990288199 374843770 540774413 637241492 744009471 36706207 788225673 671165403 689545058 572995610 637888109 451985650 559282556 627490773 679318040 729668186 866889869 528679335 967246211 53550495 85009815 333156977 876331784 214978222 238128310 972425798 998800753 231304242 462000561 2555863 750403606 298294204 457222798 663774577 874354133 767834129 860905036 770841799 807738528 69263249 755206632 391646645 615546963 735362576 843738239 628061368 958432848 135137812 267669676 401691445 940719801 777421222 826641346 749150420 961749264 916991007 990365627 959387276 976511394 323863364 921159083 733568427 882860060 2416124 308058753 331155269 612981698 770127274 812709707 315768742 458262572 974537703 984662659 938790768 967212392 173872364 447722119 958144396 985830702 354582024 937190774 590249203 773404812 997027286 998157015 887551990 964629148 191995081 296159586 967801959 968914109 20830522 530309638 517061385 522537089 545351478 865176855 946717831 969031940 434850477 794377984 488569080 800594401 591523770 925965874 498111440 804702020 483143808 942839316 563937940 826547148 697303913 762680228 166689299 519863071 822961529 927443846 581865498 890300896 767602269 946271150 231588005 814693194 452259592 499593643 580814854 921747738 407764558 449127302 577401421 941773731 362142269 371221849 680505024 715572910 963769619 976621219 486568774 924624568 32641304 319282567 276015559 661462923 625791258 880101196 707384222 798559562 144267157 462424233 232418647 652908720 612698940 769708106 249275224 406683278 3392205 131946935 143491658 400235900 848156238 984080988 669934074 844508619 533891263 766982403 490305989 822143200 879242868 885741540 612650515 755557085 851173517 938425369 211002331 519614861 941114250 967354822 851151718 961024848 861007683 884577975 200304495 894809976 125327635 734808372 463107632 929115461 429895040 755083592 778344741 910568784 547085092 989773458 488706810 502955995 953667608 986799770 856129813 980549988 758419973 876430218 511295592 999290910 588622116 626523472 673499563 993680323 135329891 229783270 973518107 986109486 144436085 609393808 123723562 702321299 946254865 992752966 266849782 863979771 194085846 715451638 79841330 250133794 914551448 926958990 838872069 967543889 214230010 331727191 334658717 892809794 264466889 458718111 664493317 752986526 104092045 800721804 646887698 820051474 762829495 826768024 817086282 827797531 899688257 920265305 695436416 789126420 586176991 837691146 81623800 255216356 733680999 978100904 653579438 896541747 335483041 459408524 694039076 831419671 100547476 963434145 718672513 801201010 751859299 992095502 498295927 869781302 170286769 640949380 120163200 672327204 601896838 902794870 494953984 871871576 202397162 833164001 256797307 582820347 591422974 729349693 859538710 998864752 618809372 698239900 543277078 617382689 262026534 848025420 986402546 998892395 732550723 936162316 328906753 629199757 874054917 893048942 563048827 568386800 924251450 949196613 652679981 875700220 332385202 597213530 619593203 713926443 648790182 824959069 927353685 963659283 515473736 957890357 290643722 529849424 315270546 567792075 609451634 973079918 403083063 546712541 808804236 932377988 920717614 955181097 958067000 998429903 90385906 604366429 524388743 618400780 290624881 688513827 504969879 946861754 93122527 730657950 816626052 892168514 319173954 646717173 205305317 729701945 320190937 676649570 573495959 981457852 842590422 960062673 253602289 666374783 225719195 256700757 892450750 959612152 340736698 593732668 415188601 979241601 101421440 912357343 640015960 943217765 592323428 773171403 754963111 794142110 59105402 548551623 131101317 323243844 848549592 865255534 76115912 966349763 725862433 737324752 40327614 699362378 935917895 999254522 272987351 318116556 730550275 755006237 174024901 528461540 148348999 552686786 436507056 918155819 517873265 860071241 30023430 151039320 106726319 813150742 969377237 988763124 943933019 963277493 507557755 584248996 295285522 959439756 348465875 872117905 309295138 775569262 46410413 338229827 611492776 639417122 619606420 663213784 949614237 963492396 222329016 728487851 655145036 697549613 837898377 852546604 328256819 849333857 374185036 661336094 270840498 441893525 141177709 175466353 271657000 730834782 85162410 316387910 974040488 989196870 799549257 988901459 578206957 771435859 887006635 983835361 403946191 878182452 861884677 979033528 669403518 913096633 677775840 972241469 172699159 524188132 227338571 500113834 640434937 700500894 315863641 827239859 445356398 993895131 127289194 848063125 729461294 737835234 22327146 992534284 13165656 584700039 47142956 103247580 742684375 804631225 80303583 243014102 46456793 411245141 651389270 843522301 619228412 764646206 760188886 814193402 440444912 647605765 395522982 509026722 580830267 611974320 624262840 861042278 162979019 225933601 430818427 748628723 46973207 991992439 511069703 786355363 562021282 887858503 745778697 900280084 881669149 933535847 409040845 539156156 175965543 205595789 503697741 679225825 622513868 690066989 881881773 906552392 352344641 754160536 331498785 944986625 80964444 81859009 889292567 922490490 5450365 598941180 655801976 913149306 858027312 989787874 469566385 503153701 723068070 726870714 305979670 556886255 578503082 978419301 404410861 487179866 59771765 860614353 144511674 379207265 19745598 335366644 540452888 867776768 738555570 856150044 976452186 987284594 935168067 994170402 305381866 837713790 328102193 416686362 33682169 373161309 274588524 977763028 337268078 923598286 452533898 742334680 584604417 844616099 763374088 991899969 622884873 676850344 726643917 760207033 327192880 483810764 836211014 971176333 524934626 662603026 936897194 992174202 932775010 960900618 169449327 485223448 341468157 505997836 965043476 994556150 881593537 974884123 294508245 568456324 923509648 938284777 436842273 994934944 667658688 947676326 695467986 962845438 955786134 985089609 896942095 913954583 758726228 900576545 534049421 544970237 55453465 124195603 735023743 888532975 26685101 276981084 247061769 707450865 566246723 766652419 681331481 926449848 123201514 853097100 848732007 956865861 930350338 973953590 938997728 944941975 308538955 741058987 426568840 450121754 590472097 706760755 764714358 838394213 327533801 362840214 414347759 606534142 561901412 619269827 943393696 955438444 107702176 409918300 304524956 727784992 563130062 739084856 38945084 100813961 872375965 887606122 178425343 982921251 623622065 992097133 531949463 774990486 551185417 682240278 582095226 726901986 843819298 852090515 827137163 926004939 789382317 886382074 211691952 657977173 356035604 811492140 675501352 870143357 339554231 895550400 417281711 617463514 823953570 973831299 759035620 880447019 791244320 919918923 38673466 660467115 210303725 820949042 877805206 893771356 395776500 468972642 135336426 696250510 368050688 536960387 430772927 500433438 279062536 731263165 584138709 946942335 829883596 999104651 557099875 708376493 954099212 972411616 750895990 888254518 924566522 989365943 655261732 890772943 705576414 711502936 237577434 275612743 832772686 902599499 170519380 176004020 89035709 379807196 456076202 754456275 738980722 755521747 409075559 682943613 582437659 972095970 462203462 558487414 754654453 898890776 316147058 620896661 337690369 818457105 380239272 628826160 314180415 471676130 832215518 992438011 741776639 912187201 835764157 991763833 750738746 760978546 937734418 938181043 67804327 921839940 979031041 986679340 142553443 349077709 342233625 987790963 585087091 914992970 540865279 639634518 960020091 979803390 500451467 810543178 218076261 321371051 463378099 927584347 2485848 343920541 16074071 778460173 241716412 620666594 131559255 298355271 316910723 619241510 497348825 982004908 687795619 830536495 617735302 957742217 764763567 900263751 193908187 913591297 597525663 727498697 488361180 735744810 881301377 913414262 563324750 618465111 501769507 609378535 992219474 994557941 834304206 998591497 627068446 892918027 348994191 454111435 638271546 762556242 675415504 980305650 470754267 476117028 947196505 973822551 481568404 755488894 399067120 613423607 968626149 995037276 550138729 594959748 403027988 905130670 339985605 958084253 263732783 733810094 193418023 591830776 256957184 873547956 716216991 968632007 362848999 676925214 711956900 945587818 354904835 597094186 996091732 998973488 784753235 843999187 756909632 825648111 849183339 978656814 713086425 874409578 324409671 537748303 694850751 811430539 72329543 762369329 443013145 879743207 927478969 928587737 550245839 884486487 495404637 964983062 34686246 469941286 664134817 666486559 221302213 530873698 946204925 970256548 191110360 886303511 382068969 592394384 277830084 345242481 633992119 938987662 222608115 859887311 46436329 732727867 696645255 722982957 13656447 342854611 362936274 699801402 405686605 608050925 64390311 940036766 125464352 567537607 538566492 843050939 330575615 925993557 338290268 929643217 822722535 830450602 701258703 996754360 45067131 174996064 81436630 701568532 766432413 947901790 890742781 941336498 102442002 431477241 114078588 842169093 436816885 659200642 630919174 791169989 936503569 988401558 296922100 341877664 140008913 507610669 408232830 420162201 108995878 761478051 226902668 885316614 295297677 617135303 828740057 994333924 706689804 840318927 741294350 875718207 901891704 912176527 993778444 997394788 305917381 573913576 160204964 191965445 415971712 543114483 775465277 899030546 436488460 920715925 261095138 705543217 919871712 939762768 267434797 323717548 89565795 831226628 188598051 585621114 288992981 911924491 692016586 708878320 535178376 819335445 329307718 730356197 103156313 657642496 47275530 903743459 14847255 263771794 927963387 990193978 981850752 994828239 764730063 820647997 310674687 467050008 154592847 652218844 210335008 360389480 931458120 939576922 114824265 923121125 521979780 552907374 588123690 830180174 893220289 951487080 717015274 844871274 524200327 569236136 70610312 825621125 264717534 794763309 303914918 950945850 71926484 657910690 16927351 689210668 611652073 875603445 962259754 970341268 366085537 504205537 844056404 959462485 824859122 908777052 906829513 963021502 473689236 518597753 689593987 800568911 407406233 545131895 896459909 926982788 426116561 428832064 21979405 578399336 730599222 864955345 904104028 932808087 364635034 518245545 837932551 967645965 995189580 995834126 227619916 266742192 520929058 758749934 825319709 916014079 820401805 904798681 330681223 991257762 651357928 991929309 466196978 996909263 982128585 989714189 386022256 436643802 793674930 865899695 29027740 904249220 72632367 606328013 889025317 958607402 184270278 516160257 358237265 358464058 779557204 866151279 306516578 791345464 43672891 256779631 45796453 676714572 763322820 994313899 543504408 659683015 556281534 656011484 251203575 941813010 383820017 451963988 551248549 694411213 280082518 528795318 748828535 886292568 595980097 961219440 695150251 771040748 33701767 454339023 172481556 333197207 605329767 973544888 483946219 863936741 695057728 960733814 410365563 625355602 855703280 910763874 886179365 938769117 973427762 995414777 964702452 980344257 589206256 649575171 422140358 883310271 558539545 826907789 594123275 654273725 892856701 914325606 575296182 709985094 823314784 904480858 265521589 620110583 46766168 62315168 577158634 943867258 484436743 611739425 534186435 688379654 91328877 487329605 19402581 843060441 962605563 982373952 403087715 632226870 32352842 677265768 173511007 405946013 29419566 463722444 608989343 704305585 647530659 692731525 426101957 577082290 254827523 560332529 455272528 761994832 829016886 976744014 346957715 903150659 328848859 604496731 985584741 995713779 363239084 374669538 865008220 887673344 114690658 163501284 994467757 994718390 679564539 769459659 949574105 988492670 473595153 707958470 164969209 269310593 79565342 898819525 48356027 263450539 542572437 640253587 731230961 847817233 126293495 924186290 693598619 781595325 695574232 782519651 347913911 430680406 72524031 576832886 474443230 679656600 424276301 804334135 278705400 936183295 419364737 635178361 419324430 797192504 954505804 971530409 558774619 948141634 925630748 932798230 401473918 835231487 82298972 312399505 67701352 633851178 183697023 860228777 675967934 923790220 996568342 998460902 573469246 890974899 567891537 738637920 133670112 966155621 573918144 785632878 494515145 714555554 42729502 634919295 150075635 489921937 406801047 791415788 26537512 882413091 218753868 363264102 590069658 648152602 333405233 697350104 888158765 959163714 110632714 325370053 37305209 45425911 88287636 982069947 689672167 925205150 443436091 872937225 942653033 957147709 653139415 884904096 733346919 860634224 426842036 775000957 776930862 937846738 243350628 511197409 573121051 779413940 41030731 107315849 71643383 779284517 817190890 892497666 756617182 943351950 852744605 997342583 929291086 948220925 200390526 917606012 606518830 919434626 481772559 487794882 811606723 842872042 868803254 957470151 553617470 673232303 344705987 659919126 320939731 521006856 121559558 784483207 221909863 963240445 635114674 763219090 195239639 943123728 248381625 658906328 28311377 450845098 87938658 682052583 115628540 271709644 339628289 754856331 792615511 860248471 755803397 968491163 453751104 962807293 275668902 378322634 431106754 938901456 90434849 208952884 908471865 997119680 437681691 647713249 122039202 545137646 469761695 803877003 242273497 935674489 143986558 837282710 669389331 828341976 873751032 979973522 546784073 961552129 798716188 869484176 624796341 858298921 453162911 928095385 55287272 162684396 850557112 934743226 796055829 945432363 224868722 403668287 764636115 943275261 787810564 874312783 854141262 906477751 440400903 985068743 235951776 780056060 512962045 570805420 348385176 351569318 454897131 713013217 667387195 969292954 697884408 955216442 949855789 950379858 74982400 458032913 433530987 716894832 74832319 316131859 819830428 849758203 475495616 496015527 145735157 483863555 70287545 90919697 556967907 649824277 291373517 779616978 294915851 661049657 344729704 809030726 636183494 866272035 202969523 269220110 933472393 987793960 661756396 803358117 543461281 891521016 232084889 909816037 662636803 880508371 656344054 734715724 826004279 841210663 288189944 498445487 532072159 534194706 519134763 694835757 319743754 945566685 145380199 802867612 649041761 807139357 507747117 674918274 725412254 982550002 168524851 379191517 891581960 930962726 391255546 941651981 119922554 749389422 644388977 887296068 556297789 733716324 800637127 845260230 143123053 428020961 880829887 969443313 510275816 631902975 460875113 500391496 937117081 971287057 220569353 989437807 524248878 974889311 186290796 969725073 730896579 912913294 497408095 651425136 196243875 699457335 188416908 298188144 229117141 261554273 370821324 991057498 734011574 976861949 558672865 651742917 421720544 634401820 204498966 458304812 508380293 514699894 945716741 998948845 313883235 374174800 659236483 882872252 796461390 925000670 9499122 23048055 654128744 949208031 743039011 864682378 669859969 852365103 532042692 921186448 1401078 703443660 8923101 546959137 327443999 459589847 619642897 979680908 198354232 990478811 669748472 821013009 529297588 570433499 491042297 795853239 458012404 686377525 754067189 889620656 758680840 833765335 198606453 890101878 649366238 651016519 520430773 696584533 132367493 335947589 629411419 748694508 390202022 897007086 416534149 552168867 627140555 835126678 253984059 702846950 791367885 891188382 669585675 957439792 21717394 390374586 199032309 625645886 860644812 980094609 178298926 699998949 9836628 51371395 309481921 704505380 899852023 954332648 469143178 694445990 450176527 884160802 13750896 826077979 438115977 775745550 43465046 81748241 233017068 338720043 84484548 646133053 203260599 530122464 309935734 609209329 882229543 987593563 2249684 942359507 719531362 726857620 726729371 833286542 407233897 772226104 770804518 882560468 890738293 891246252 4132234 896332003 785284771 839002651 439158687 533349548 158209287 455925460 123002502 658224200 447201988 586578940 766593647 961182976 677414230 976088075 711197274 889310273 932148886 935616492 728017379 985902197 435261794 739673663 114737076 866038231 928593368 952534337 16253575 835302214 922035178 950024856 903342054 993161870 693496180 865472360 337663306 337888699 293885025 361185043 855347681 911915963 732551646 896771211 950659121 972334528 800803572 813069870 94458892 563222993 286943823 714786558 286250597 779452972 449677476 716824904 73408853 179926887 866930936 916048530 549835980 582325347 217030824 814675135 550331701 748986383 372114414 682199956 245873546 536208507 169838780 623385258 616115371 887624693 497168425 545063394 970264440 994103902 506396612 602116557 919877231 954714483 485987815 999007431 423394218 811800345 587641417 884462530 125306327 707154400 38749921 572854698 711066499 826693559 470451550 740916851 361249782 427337009 566035980 611695395 597619603 795930107 969077208 970470761 782150326 966789118 255938396 281750407 419105874 618254473 367000241 518298682 538910727 730590523 673547825 811475646 330695906 885094406 259464802 956200617 760210014 784277676 84625790 167404380 465182671 799069199 799104164 822157341 728797280 734528345 72166273 645236905 906046923 915507075 433792799 478192599 997571965 998960832 234715358 544190561 638333597 736090501 807077788 902616221 647569607 691121220 607157102 709622971 889933338 917313779 433186860 816361396 356370945 972142203 579809092 849779549 962313287 992902967 766113567 958632040 574288364 827997383 879604585 970106645 529454391 658488086 509622717 890094732 571993946 692138659 796034638 866677401 550526034 676921049 840604220 864125310 39923586 700190336 488149769 612326145 880255295 992689704 848066097 924753015 414038467 734626950 440561919 507487166 569442895 936361705 129949834 311540546 35057594 118389043 741319973 826733780 712440685 847889856 990946678 995029989 526581223 672191350 266742246 540499427 40457719 547419592 146151229 877749152 100465021 465091905 218069767 571448708 830790049 880450474 27703485 605330616 742005131 749527931 665214867 769734115 601260529 980437386 53497453 316483349 737043107 976780469 825232824 994260223 233331844 679350457 525746289 752694591 16913839 421967598 597195262 789056626 344317394 783481204 471836346 731251347 119015694 209766936 197374838 669334579 907196140 920425227 618388448 968595222 918931411 982876041 390913353 521996107 219362413 257918664 678900119 778150930 808542724 832137746 348158486 547141174 828412976 982140210 361108692 652985746 798229577 826408293 138415160 960808194 251759044 343391292 649551838 746831350 884757520 980952256 343768530 350935794 398951328 812235855 932925983 996239387 794493755 936579831 991827945 992415919 954344031 960000922 903541921 963055208 728691501 801265809 131914160 829416581 895424794 914247910 114202721 855142933 745917842 942903409 93516395 404303036 39348464 357767522 386495949 566667564 543722045 875475366 869614550 958387227 128805169 388742971 220524059 276978553 580713679 688437266 9389559 11142631 348306869 908464027 752875337 766117073 238402216 441404832 527378014 735227886 965268666 965600728 335279168 979735988 989182611 997370542 981978276 991405404 357380517 658365884 686453380 711933933 965325611 977490656 193316977 334877081 264041963 474116712 464391840 936595592 389131151 489565564 939116584 982640480 233876272 990103666 904829219 957839807 476937094 709515140 57989706 743084475 176875412 308812087 284314829 879536255 687808237 755103337 21642455 183151614 340007326 833477767 371305775 647979797 820294458 894840195 896985549 957763079 108420545 467434217 698966828 841956109 342813218 572791028 522502334 760438426 115316786 869615604 965094153 972565660 385451408 672424012 59373156 822646025 277275031 771434615 237477038 446915330 836468920 949765423 125007141 180513137 546858229 874912585 384225429 908706444 726160987 810332365 604737709 747072838 723950261 803085450 310515531 486308906 672841595 916991181 988809728 990683324 734932710 983002213 897024636 997176411 194757299 777058249 640716887 780343577 687828709 880119997 926879128 952190488 512928895 688391501 228786234 267771091 422470570 585718099 240483504 512671040 884642242 993406266 753368823 835869601 877558514 878587718 83053701 321172733 711079955 781077771 59223841 428589059 473101578 920021659 890928400 980111962 162451426 856382138 67352408 670569325 460674246 738924590 119225796 784515421 769958419 884293751 753570945 862069708 243064456 691684246 402596470 469610211 381182550 770773519 535459838 817489656 362635659 476956055 599878270 760685700 237687013 275562461 843468171 942200467 204682640 417429115 613186502 744730073 260972418 334682459 841774774 933343780 53006868 124251546 304383421 316355028 566832534 835963176 522238108 917484748 987027668 993914025 88089937 599290812 580716897 986952439 677574331 788143052 583663818 949861166 501110574 854023917 636762289 897936209 29054296 50496706 643376233 680072989 245273050 880166067 981046975 986143795 453392940 859758704 348770758 797374665 795289741 956703114 590532518 809517285 666535024 937769421 627881025 732534703 905019195 994793596 396886998 675546804 695713503 752907450 166021744 879014111 200700603 735087917 266442387 743708736 820389879 840879600 818791990 848055121 528643026 911436629 653648841 736352293 429705004 484161781 467571818 955612055 333317052 557377046 663766898 866178137 468653189 577573281 311690937 344557558 392946800 730588329 825465174 983490870 570296972 625729275 70797529 203354665 725144144 759867509 290986952 679603050 366356072 906731573 829109880 964175630 808670810 892466109 896737653 912635674 537578726 558521898 593998667 812453610 593174297 795594647 923323280 986701390 403440335 584486064 506704461 977525571 470884062 813159573 382679463 746982301 973849284 974387552 302464014 521581458 836961002 894240216 674024542 822891636 10916272 876544988 386884047 869434474 87134301 937689549 617564337 699867591 968296799 985981052 331381294 839836300 361975003 859952639 683250509 746793938 920009641 980289810 246763806 729214745 788272555 803630591 144999244 995467808 701627949 935934315 235441035 848287417 932835920 975886579 912755852 965126839 852747461 908199031 238613861 262970987 191081285 527035361 335468281 642511850 818796251 984671492 975474273 978865058 846644075 912270335 406441844 448595008 187469231 499937973 323818269 587565863 375716420 895099983 51083296 111536065 77408830 800589422 42224952 882391064 716119167 988235676 124345054 888116094 618615699 619186414 642555515 647899465 177206292 617867870 809051982 942104884 894414946 960219426 662040739 835872219 313669453 806750303 467231783 993677023 21012347 708282476 790636355 800586858 915446109 961471346 982895362 988694570 305392012 467280003 540601098 662503997 251356062 290238884 349033911 766533949 247765413 875361997 464001632 996805614 367012029 871899274 153791386 378291871 827634063 829316975 325292133 765766179 424513451 574139660 530795541 859666237 905176070 944481033 694315077 775553183 840687565 925111408 757655700 762401185 687350372 690977364 42643251 350633912 711597803 926010871 815961602 976899159 647527363 735114826 341039988 466213492 841212276 879472593 320744212 553581423 384264698 847747912 941868944 948353546 421370287 573714387 793076773 990425401 561947598 878919568 461373776 853444832 217746927 648635289 978699983 981929234 180548632 749209447 605073967 872104738 837968745 908845610 688037175 873314224 571858017 797332479 674179315 740036967 593785166 683993874 46126867 706384774 530224572 906424451 973168877 979446706 590490896 716121727 260561797 914490482 894367849 902921750 490013860 798350549 970679535 990125029 402620266 441095469 337164245 785972149 666062182 804489707 976115699 977984084 139430975 184670854 830181320 832591774 72433271 849887152 897895456 969951055 764863199 896937577 475522832 820780732 922387340 991359726 414869943 933910687 739783244 752523534 717132024 850654054 303144859 655649741 311832679 319993447 272252819 467741323 563378097 605124073 968830758 986393470 381880475 711714751 725018499 908030748 285103436 364416568 558439355 925699981 663568473 778543893 714441900 720465868 381325980 701693452 203894570 756998840 981551642 996112673 225500587 754915051 39648807 770877715 222342999 799397016 673940146 787062664 671621394 886176431 941743631 990981676 950161121 979848381 254371161 468585286 197762516 952258011 163320719 938240196 710369736 970255883 195167780 776925230 630500668 749568008 208979637 907510653 367383794 680663535 654117741 890078152 633624004 645811767 4807463 526227354 434652725 931521109 830720094 841058894 295915032 756057877 710482682 997885855 259176785 363536253 408812642 747628154 130051004 467945233 245909413 562678027 266739306 458415467 592586552 820337592 18938596 346225322 166771213 538408398 424044898 791161428 941638253 944880076 513845278 756923081 797564172 873290070 907588350 966203746 238539892 661971952 371829908 623163066 759020418 867665666 703217636 895261319 663630382 967902859 774381512 828816722 511204404 743162032 884173824 906412010 543809184 996518070 902514327 947389922 444802717 976638548 103360141 877358992 176136609 300171581 796664662 863602148 735691435 750780008 201629551 608462458 504505107 693088936 255363775 922538760 637535275 839252836 300017883 320470061 960786925 989519343 800435756 951138591 515782194 968991572 286663179 290660218 518651692 544355611 747626265 915444961 918762874 950544150 255886117 444447624 738411463 918070516 5238967 65372844 426868309 683126800 880082090 971822823 498520068 637865789 608717514 716564142 90836961 511135116 482752481 916595504 98811664 122521337 216787307 946855859 590959797 665421041 52914141 893153214 10888303 225549248 876151168 935155299 290889753 403604084 814768224 987581076 990666104 994101720 247242635 749574711 34571342 946882487 748383925 826644155 370366417 770680913 507912705 918611597 529537624 768297208 914929002 976753122 337914399 951321245 345277891 689661733 959591826 989931955 75323468 259471887 344984729 641571894 289409674 454403865 871744233 912667588 629603074 652403858 804757179 874360184 616018741 696772743 899267427 976908112 186922727 459356215 319314518 476638247 617170221 979456244 309782411 388237879 571496679 950271300 366249095 676213202 182472243 254828895 945237841 977469385 330190956 958577834 564733138 905921989 306573007 806466701 813140257 845146710 801312161 985771232 695176743 793333456 187447133 925160666 706517417 896046669 48739493 924870817 452313657 525974362 20915822 604241507 785041553 923915269 152608276 419758145 956428117 992456150 363978451 660433786 389862569 926889071 50416998 363855970 801167492 822440158 201112917 449722860 869303989 874654769 572302137 624421191 611589467 793962565 34233808 865419321 680179674 852584904 532581273 937582780 538886677 889286819 884720093 981352314 214746240 409785533 856303793 938045235 52313644 913338454 197521795 449438718 584438724 679986028 990545999 995189405 727116401 730580354 46380401 668918939 667924537 905695359 84491740 876822502 62256962 826895901 993387307 993448910 519825956 825869938 830635785 979654527 651256052 798707375 271864184 750031136 294666830 335717426 869588486 922067952 26978619 190519664 203064675 552162394 404064675 857831197 118712813 443468233 64039881 705962715 835906349 878779569 451311356 697730523 877244688 929055933 106740938 124068153 880371685 979550898 306469505 495506975 682231303 861642503 347318783 999091979 37694083 788845907 997389644 998412022 797709969 999077108 616980641 704129657 963633228 994953975 106372973 896249985 844939843 849961836 550392405 975872046 590154656 652403897 404270673 713565016 578808117 771589252 134008024 963538097 853208223 900196655 656805080 775020134 552626646 658192492 464678774 499290026 375836313 423245707 547612641 989483168 376796453 531431030 145777658 491514617 443718841 448680594 927923581 935485413 318648613 748133421 873397366 874923523 973421097 992300767 363042988 579841244 764150519 846433427 616101860 809787759 850875876 971725225 936050026 971883951 656085867 797168519 821647351 877746266 34496836 222708494 607770779 849174813 135668706 998002836 639510708 763607680 120832576 487039388 646809743 774456456 381318760 493818624 830538610 906529182 906640363 943737205 944055470 998767215 928876186 955696760 999342061 999365631 832106001 902558598 332675564 737572382 746444906 931898602 8074795 240810773 602932540 752798362 687639291 839806482 370243474 597450632 694169324 762451409 675553002 837626224 910175859 933635433 925696401 935063589 209101546 716613156 116489124 237448031 581142519 641349805 524212901 740797856 766651838 799140506 230079594 899608600 199278718 805271547 959138966 973211576 862300330 863964106 130690804 645263100 998293655 998552894 896559431 972545349 141846551 664196772 462873613 752639992 348791944 429752004 830452137 970544615 656824841 716504009 881853044 925160738 738623588 790724997 33989276 280472736 71922583 476965302 414921391 972825216 629968586 714764732 315866777 354976471 483245009 770728725 808060455 992043223 984506975 989134852 720089300 778544650 821284482 830326133 236406805 577568533 752795423 999214248 632280799 800720097 107595989 838406720 175044158 789935841 636328461 867144891 586882479 702555905 699172255 713290623 242862399 890974785 720444545 765399617 655671506 844173199 621287519 981052924 115478640 876967347 689658516 961237273 646223449 662159773 168153236 257800240 744073673 878660182 533469223 667819433 157440541 505696670 411684282 788388849 179328208 576332505 666851617 905274250 296574378 468856711 36691233 443366070 158853062 640290618 24398348 386705777 535639469 936601347 216919895 497552224 557109094 930565713 561223720 759867915 187965714 482848226 564340661 789281677 129466409 728679812 79811605 175131739 179634187 268983331 180600843 914255324 395391340 825351755 664875781 800913153 960603722 991131364 430043064 671106804 182355783 535006291 747376243 860361781 35666004 679681426 544110265 978632758 602809055 636571859 831256349 905668171 231276665 281022399 498559208 882128677 304714418 506497860 456654601 830504802 383659321 398149138 602025574 631908709 708418427 905374843 666357923 700049689 613487704 876830165 337797505 440913272 534371304 656085382 567794102 874252637 437965917 555897450 327102055 647649350 914028592 915125531 535263744 626881062 89956472 797882936 821418493 886734189 597515366 873422146 974825703 978911248 183422683 696550806 725664928 969390660 803059867 973831790 769386672 824249757 379678416 659164449 798834128 964503088 48921797 137601492 15150192 356262585 759805281 760400583 575263005 650179063 894650899 956233386 693460423 920804012 87017858 605801388 246960782 662824089 550059529 637334758 101539651 536968359 44987078 819352423 109762103 339727392 546961022 729468178 548045912 601663819 988958525 998584894 661318611 764357630 64667369 778928496 480700127 517146519 26432541 454297936 266294733 913976226 686828420 701128034 484218982 770916648 419449826 922931578 418820031 648626793 989786087 998704776 571990400 967086295 324568442 899454458 404361208 822635514 111131133 684511733 190489160 689116291 989017281 999194624 504336402 660816540 402052817 533659216 336546744 661442051 138777210 266470369 464319820 572644436 267920244 297846582 19526677 997875769 683925577 719504098 82499328 136247288 239555338 357013721 70950270 758874390 516733498 622722296 705333370 851023647 678951266 981008585 842536570 948028534 214483218 916946286 595156039 938664848 864418891 991384627 211456212 502087015 11596519 625019352 561288841 818457490 41696570 425194058 279622834 475514768 645828788 843658663 343637226 726343189 900636088 908279053 480675398 941370455 207737148 842225526 221095783 247314302 133760820 501643662 513007794 567102566 756594960 765246680 552353433 598507864 602739772 924804918 654258729 672484875 290168087 612576287 894224832 926572025 373736469 486238101 89632122 370214011 853685238 950200202 367533625 879196689 721699253 770957093 754959309 810177348 966334413 967388158 127934640 527099536 125520726 591265451 845826462 885176563 667147749 852115713 541098551 810826392 80470774 946012941 554181744 791083680 334374125 567050468 846085070 913775589 445270676 747938782 331580250 400967216 306351320 470211455 469940802 544498427 766764333 982347496 393678681 458225457 504813542 546501474 464041079 604056308 993230844 997625718 605569965 966417112 14618115 991880937 657621611 739540755 441103012 631548886 416111254 904430382 454614689 494136590 795520028 961926341 920426026 983753355 353676403 739257704 598024895 859269425 544734285 748706291 736893708 777422409 73945271 430978263 28861046 554159392 103537174 127221645 827785916 999307924 526859388 655489403 877252580 999040059 589174081 761305420 954809023 991924803 7036562 173728647 417458755 678709185 596317854 726721933 841164035 997658914 888287551 980453371 57292328 969402191 317991018 823961458 935460815 968761241 51288949 681807520 719495226 966167854 129152453 841579829 751444236 849961089 616647782 728583186 171383230 492570328 757864706 832552830 876723900 920991312 226124978 979285834 904409582 906010716 826930398 863901464 673647299 980678740 486672304 739293421 799547293 956251341 114572305 924678036 927109498 977116297 246929246 864543821 522661703 995436353 704360830 725937745 650438035 942267326 403415216 549275595 662598550 748180256 481922539 978263692 785810976 975863349 762133952 852475066 634713009 757764633 638511823 926248234 854886148 960225067 554022932 589220184 545449768 747543992 503713372 731200505 441486625 488353518 925070511 957925456 229761517 253603119 326628869 910655659 72943944 632454984 237571271 643357464 137022257 705853691 38283753 526984803 101907494 601077065 617995488 985653178 902466213 985242611 909399796 911989797 867819942 917232888 331234829 380901352 483043490 676124262 122425775 685911510 785909444 815405776 220068577 460288273 933311418 934884774 491558096 785756541 341548192 421709806 11737760 500906429 409372299 500452456 771134550 843969979 735898293 830450315 636413243 685354690 315363643 979219131 902046022 976591396 595226225 833213078 886780503 931231490 799064461 833357890 630278881 767542702 825652473 990463629 227123683 937681233 650982407 680979071 265197315 643216114 380155677 554010648 737005167 930994481 626432234 639165516 673041776 742915625 162848834 883633936 110107323 900328417 875740354 938512990 539913881 556325898 436332185 667478367 583232737 930389859 447612372 727928186 670308657 932325369 461668846 572434383 580959129 921871208 965646336 993123850 726142428 754350370 344246846 449354591 311539709 742105960 576933225 934011728 133267168 424533776 701062124 726171421 307570241 335024282 725279017 952154879 467306871 709491447 371534354 732695531 303416873 487239485 273248076 561555313 801970985 868810919 401801439 906476623 376178123 409346815 711864910 789429708 806784389 846502677 327295192 518437036 971136450 985302952 472509980 531097917 241662434 478327544 894321191 977695337 634478269 672506606 952763276 993853929 80670073 942552744 747910483 947135721 309350222 666880060 223117316 852946094 389103912 437615584 460418329 679554303 200402832 955409782 663259693 795555585 311212450 753653040 380136177 809404158 790075879 951634054 912179398 947857535 97072735 626087150 167851880 193073661 94203178 555894181 637155435 946205509 595997464 697562657 167325095 868949288 966303682 989165126 267984706 725668666 571789958 743796424 1614358 891512373 485994395 502297959 298744849 828142622 906253346 949502215 998636404 999106927 10116335 948338166 155905800 414237161 185917176 464637335 983767639 989434238 523404502 868138850 320337167 827611656 663434335 827910764 157957809 888636244 761444024 929833172 925891839 984664233 574678972 696615952 480504334 981170284 218654202 252996142 404052491 891606845 809372857 915048172 134260011 190370700 576811653 672979743 868600782 909804004 175388771 327852675 499932637 990673668 338180885 553140845 461979748 723767613 754042228 767914044 962517690 972645275 981125760 981895550 185361117 579170306 410204690 625937854 676597642 828826595 360495536 620843255 346320941 633913665 491998933 645536280 904909559 975166717 182876794 237986376 523651744 956922564 573149335 834982908 417408738 790763088 826782591 866949821 881455405 967855918 965514805 968384117 610024740 612798435 103204301 874463326 687857040 964278082 433467593 633769941 773722062 965642471 953998816 967996246 616274895 928978940 958696976 969918560 259864076 821040244 478940063 483379417 593230260 725526504 757607933 838471935 608522167 825974908 41726318 411182400 757172234 853841745 670816659 983476792 754317791 950171742 906281007 975457390 72461758 579725802 683309130 797990779 816381617 878279076 251734086 564794020 907102200 916091459 306167954 343022586 884937017 977200731 978757792 988250001 349663845 533546635 132459229 157245381 682045716 833745181 505792624 616799520 907533552 941203977 660822502 661678140 132606617 178106613 232811886 758156668 393804458 460467548 184938660 599816185 905170118 943502583 133999646 850669260 668667382 700668012 225662409 445756943 440352888 746930054 266371734 948092597 110660755 245264645 524195542 596463996 257154758 538283154 323699140 648898706 248611471 431961558 629392608 703190295 948860636 974502994 435658180 993688200 298569527 691734169 159191199 203222363 176047847 589075905 287407415 393814704 991140620 996609600 624312334 898953004 546026578 867396554 759766345 975947627 999239240 999271478 267678791 594842139 415426067 816524829 980219175 997818313 929070875 977369830 880646041 949031903 176939944 924172527 573025404 697956124 756119736 983770186 691366398 951150324 140419169 290085048 130198191 487772391 780288072 875205984 604742371 943467087 178104899 775883705 726519174 889641011 714363788 907615604 810107305 861829885 502855621 969143883 112370017 398842695 915001588 990017752 917163063 929333294 200001486 925842671 555245917 930835447 725522962 808145684 138860312 861500198 484806892 996311226 448177402 737574433 85059406 712104975 486970780 726299971 268603986 461164836 534627931 793406263 368504889 434881525 826565595 934660994 804942530 986513229 630480369 773006760 75080343 862323119 69370600 142268638 20842597 144822291 815372289 989514887 923112850 959007407 182103789 471796573 822967532 930475497 23090755 975673818 743172963 943961809 764315995 783633535 927595515 975674385 725150451 965599168 103969372 322953986 207704533 345429094 716175677 937410915 981881771 995988289 160396611 877214378 4179859 527378750 319216949 749450580 964261786 974182400 882184860 959040667 743755386 775228418 609156618 789235354 772928216 988613039 702971343 792815077 299150205 902967635 377956173 424151519 188501954 932235992 588983433 787939826 675396356 710130000 747995667 929904139 730174562 995245231 475713444 492417125 671233708 720775257 342279704 892379514 691592310 937650944 53565742 511351383 537430332 845834823 745668857 972011531 166677566 869067174 430682744 458319387 297393852 958201842 518519356 796185749 779678801 825914250 867731835 874327723 741265080 881784162 275436666 500335761 914374340 973440920 775523680 910020514 937921715 968468932 810940855 880951068 647848932 945147391 584080671 710070639 602160214 731239927 644352441 951005875 852801235 956046014 397769318 602909403 240460358 593818621 714652906 722650004 751451486 980821302 79005390 580075193 182401614 224839173 697292427 798808153 918603893 975241745 679240386 733822829 984374743 995372557 529520235 622641722 447130767 479149582 630495132 630794863 899220340 944183545 840747251 859403457 923904650 998307105 447036655 982641209 762478183 794204616 357987927 869861807 179368021 805868481 499639054 600813929 345271715 618434027 224228918 441433723 725951321 730795431 690568748 935274961 576535502 841922455 606049931 609796427 376690441 430941641 873039345 941759081 753872314 828644850 281964542 552768114 364481089 947669751 136589788 747478733 644179623 996902241 947053081 997701200 390240172 929745228 931326334 944021438 789212583 965803636 787530529 945048584 280695862 749980546 112760610 584706570 178747846 815222608 171356127 859569965 471579119 776105612 795081412 846517977 195448608 290454886 674075055 970290561 315212590 425590680 922458581 979482366 746230220 857701894 672126103 946649671 789872912 929983144 538708732 709568714 184351602 853725265 16385882 848895064 601295790 825726550 739787774 995827100 792943316 888211595 459898639 948267780 252376590 474912502 81270201 358995078 350688380 423050733 28712212 972868321 694693128 837515974 169697910 450835329 586905571 916879811 567418807 850852401 619478961 676436383 822897649 933890905 369679424 387700805 639324669 670998576 123542563 857954325 395709567 962653608 875842990 996793759 531076099 557153742 356184032 771369455 73918040 142917513 406787008 931101060 332840377 800884936 863051785 915700180 241349658 367717136 547543462 927433197 185012781 452140414 352769359 434240704 685826304 790473466 996855409 997742038 176018437 914302636 342640903 409237988 384813291 880100496 761401335 772354391 167893481 649406154 62281199 274288016 407594734 520838108 315945438 502539763 786807049 821026406 18712284 287529664 103720058 965474106 549912119 911394189 666968115 872343868 953237165 972352689 573322528 924034116 658970059 901748401 191584501 385276745 395816350 876475095 593906711 634302389 190445491 254381054 332184539 939079593 650956992 987793786 718331325 854866608 148034373 939271106 693283791 889659494 307957939 455899050 997316182 998019162 800709730 887759737 429731923 931468622 781506177 791082697 41368641 189256992 471423463 578295422 366429294 558499443 739911166 746896029 672718126 931619775 630772087 698871841 544252813 808886080 578782421 719239692 214956337 664763736 867318464 874769466 760356103 992097136 508922710 729865763 511436125 946286546 503897347 788118218 710433370 817163886 486227077 522372393 280982609 430764019 627340192 910320632 475522283 919331834 244824229 318015829 600550347 716308613 347145549 624717728 113131565 362537545 273575005 706497918 280945558 444655332 538296652 938686493 240459839 645891836 704025932 746690222 883458185 914638482 545542777 895644356 68469977 635328284 137023224 941353969 641763455 908782068 817188448 917026167 799409275 819420415 510776290 907575929 247915964 968602495 899852505 939321632 382058142 870184713 707291117 732296677 141032887 153753009 658787067 694175267 257419201 681927780 115702059 604406738 720315812 955489615 627657975 715147509 284135578 381954918 297445360 679616237 613212848 977344036 264542245 465024371 739752283 858213949 931015160 967738517 585490557 836294652 257419132 439369675 217807691 997569106 893391490 939738705 133357714 839783144 713290602 729945250 68987768 654540846 600312250 877989380 233146579 860033443 904294041 910522910 26018796 819343794 348488390 462274277 597647048 726550164 795706342 978975871 108979630 254227321 604635659 950244924 503939657 628083769 604465115 662433427 532272844 656949227 190934845 919446918 459752262 667308814 375467843 403531777 936938000 946007111 445512741 892867122 974607711 990666303 335234657 731332603 317597587 494038011 459306264 989987024 708231643 725509358 752251926 947863663 937275342 954464736 63379399 612057858 752788483 992105212 748160584 914231220 255718105 441026979 278889061 591718497 794522513 823420606 180098364 758529911 100939502 537815886 366964264 407623373 9455116 999250684 448840316 683953566 363575908 893593336 95719065 809776302 259447916 955584280 285749881 838885401 119174904 191138435 443816330 741765167 645647050 686950109 524588805 764453008 874644935 891050193 128770792 270923869 434778302 684557856 651261733 763100462 297752937 502285451 339563298 893408482 336639929 755923766 928151471 982027427 828733908 971359692 281009045 375622569 69927637 722533784 489931792 920511337 310650126 612449248 255635905 958405693 191317323 578478675 486688448 590026615 898230519 911854978 775275406 823617076 355756757 779991499 980545841 991839005 448839251 845630636 735416698 839928880 693165767 729946932 634600455 804518227 943659110 973253279 840904402 983395800 641981795 892986356 486887346 761455447 890385010 908381288 724167403 866676116 401040802 980019312 972699643 982905597 980775190 983726469 306285764 798884941 778573456 942761614 453807146 692394728 488588789 834033372 520260482 814265356 254826030 822299768 6729577 70738957 609420437 925512799 331894444 416469521 84507111 209625806 240299693 917265245 285501319 559338273 798770614 857416036 779637994 989101506 694315605 872958804 53063451 643830385 604627963 817810123 980682181 998295586 637703109 914192954 12359951 89446430 822615412 940387449 508193200 736472852 624111919 843030524 438037096 650524035 137545777 305809744 896145576 982969192 648547482 756503586 49871557 567747434 148740484 327016006 356711544 514697666 367260489 734776473 945654746 971035924 535862381 861905821 582755663 719797095 921011077 924834014 709600770 711301575 914160272 980334557 600483381 804951362 144896568 760292817 776201703 889636175 31931756 343887059 450714 989485188 446606779 959253118 141452749 417466229 246586101 505973071 907143526 914689418 679148102 724302459 357150307 762324431 488588370 566102930 553532036 918739291 904342373 943206386 641904142 961553657 680305179 988028079 796468468 923370237 309228272 395263303 465254473 579910843 146702177 813529419 617508812 979367622 775533975 955687335 855942165 919317036 475652409 931285005 772498328 804943525 76025420 728215383 845272694 906430191 905000808 925666966 729003956 806079980 266645495 901991274 658389742 840721465 721254571 855935870 927804246 941311641 595800219 802811296 976489970 999072140 386870240 467922042 660902394 926637433 700749042 704399156 392416449 609634215 931371028 958298554 730368009 734681040 563029419 857853922 49164775 561367061 511880281 767078272 124418091 161426042 116901903 628132120 488730914 780030794 873875071 937071683 928431627 950277169 818224508 967416130 787376050 906066738 187080746 531786665 361966847 510980979 616311252 944852083 329384790 749232101 794531755 871365820 586792752 769109043 128042233 937678119 155165253 859687099 602896225 720107112 46991773 455162392 459672055 472144802 822996611 863060982 933243658 985748509 296632118 377213963 28799299 732177930 447288423 495899573 883144086 951256833 921858331 947058730 65399896 92621969 56551634 829007279 744300411 902331770 842490872 988546301 141317625 606150229 845292050 965429956 86993301 215926033 297148542 547781543 261798024 306382390 648690996 661907177 65479245 527258344 472048943 601847868 691850251 696485014 931061829 949993018 855041184 889113438 285120482 520351592 487984973 795456400 504005757 717267545 26599801 28855179 161618168 498659699 598205 135611400 326306098 943610031 484476384 486611817 225065845 959414843 493661821 698421410 172607889 631425316 164199986 336050385 478160166 867284283 525553754 867883761 123136249 404059096 161066708 681783838 36339926 198320646 170643257 516063493 746114064 846776218 828027070 937250871 651732410 988672352 480630633 616223966 323725704 788267305 827463224 849285969 822226783 892533200 784809062 931297755 881824985 998879168 434905862 809255067 574715180 978904669 942907501 978427967 406458421 864756483 560403664 995353557 408525620 812920063 394124825 879857038 189423867 507357925 986734835 997191485 423367014 718245832 236078672 869173241 202787457 259986336 56015261 742201229 631297827 667803483 970626659 986184382 384864003 821913110 974066401 986543517 50224315 266932399 424679743 894123997 774211134 898394790 813064345 817535876 230397132 352107586 247670189 271251507 970083733 972430060 403382255 675299711 926844902 989641104 113016358 954756541 810803245 827510510 603239234 731310965 405823341 488628451 457760996 827931819 876573323 902833018 441120536 735493424 450430669 463837658 242211429 662812568 923657376 949655181 343371676 970245934 846550954 996466338 659613595 930532088 894343155 983178236 220111738 763191486 694744231 836630101 336343224 408116190 809330063 851052638 887538175 954522956 577012311 902848827 89689735 692061662 416690018 510715086 316148042 531103514 168391094 849063832 107648805 455337362 90052623 674691123 575631386 934060132 108639609 715377424 527614282 656413266 736598511 902977536 199077606 828089440 564289494 721678463 312765760 656142960 270005601 388907031 741411053 837104874 387163469 850478388 626113252 648464527 586045963 876098004 479728045 602887035 738078404 967460813 900922508 956479357 714151531 979077103 801253703 842756742 512617141 764048616 79224254 823927824 576828841 943313520 880498512 968061234 212030213 247584395 941307402 963965968 272295568 531662123 181041613 733107377 97522151 474419421 63938287 786228079 215607560 865050064 893175598 993546586 919686804 944829640 587309756 789745910 314190085 530044741 819974205 827632878 546661404 744180387 701442949 800916171 629693454 837932580 632445876 812697842 61480146 914879266 202314413 664965591 831363071 885826972 267823454 620621573 135745367 501760222 36558109 424176210 176816533 745519228 764038548 934470397 918497665 955423212 255655741 783251061 697987203 778206047 171759387 672953146 963639879 982207099 882786304 994299896 459522694 803894813 95275653 977285407 747267414 977408388 661590043 758520930 965799069 988607380 483180190 787396874 472889044 836623107 604988428 821614163 586615767 920420594 381391413 800971697 65566221 635970601 299788777 474530857 627798486 987508291 47273405 263781581 393095389 863119157 993081247 995743583 307670957 525363971 632143316 968810947 836829510 854585946 411690613 876132424 466092635 840286406 994989689 998076268 23301779 129612933 6735575 998394182 421850018 811253760 729912937 930169037 662935656 746690676 529017112 550933429 395738768 845289061 99954118 125008859 983149183 989720029 472465226 644859500 521328791 564470748 589624122 630023067 351016381 367356699 863670940 928923501 960842775 980255883 409228591 492856727 690116645 881957593 236152053 506966949 600191144 971870160 848431118 915727235 102350866 717553339 992521981 998939647 613367951 679084741 352124713 694396942 987190280 993412359 238237556 621179493 246973455 794949547 228197082 263640265 984284425 996407017 460972036 825152603 997902802 999377680 993187431 996614996 115008677 359525832 147729485 711296376 393920861 819077651 52636536 951775185 988697778 996070176 781610243 836912607 608459679 858407977 391056390 986350983 580547055 796522069 631081579 695825531 762889293 965537145 228317405 449155835 450442907 541352833 190211783 668601740 925314062 937793472 206886175 469747150 474505952 800411539 32823533 185054771 464357366 717969059 452872843 821373548 575331567 755054847 667998302 797514283 334914804 651315984 839390320 959669439 408558139 735917423 981178678 997844731 489915717 646659322 865137556 967257970 484815609 648069470 842473286 861677389 310768479 492115244 471630153 503229316 210856963 690380814 202005625 373348397 582223238 656782208 671193643 822818689 517949289 767681986 912155353 963684503 716726439 792032487 687899658 837977108 372679189 478328533 101094584 249847041 358586009 503623527 383209695 760964923 835113983 851131063 761092665 853832078 892277952 934673250 30657076 886022054 567535464 805536925 786014363 806805473 749282731 902631967 44252491 873734189 119853290 873721960 392875712 507924618 473997679 917234800 910367506 961941101 889687967 964036755 631318873 957789335 675345563 924625611 656560965 723655839 733147882 964992176 244951192 922383540 198852860 545404768 313281019 814384360 14373129 520559493 582644207 775844637 543703119 652279343 199628593 527355576 835636202 876483037 243663733 348753028 751453152 930088419 445448869 868874682 614039489 630225657 96712140 352048656 390544808 675067717 396252653 424256234 52119313 801124385 434676539 961529440 785157686 852487969 376207767 990434984 789309779 992331941 843400946 976837325 209785057 482096559 67577784 985646283 724884574 782466883 778711597 863934048 920223960 950265160 66260455 901397885 582503104 896421951 379688268 577744925 628001848 739830325 653440708 963723144 755583150 861038619 247796329 793244937 167759418 636392301 837695634 899845354 481515211 680695142 341805626 409706733 318602247 590089215 876168232 910064781 989335826 991510594 491523170 833635205 976257729 981753749 486109255 756671708 622273215 951997455 685583637 966882212 743420445 911452855 144584209 465046214 385816571 473630603 217390630 744206768 424814151 657502142 714823711 779309302 726689035 804280223 706421819 732014647 44447241 169912297 930307885 931928675 928046145 988729493 109016928 971562397 256517771 906813175 122140464 938734019 84896457 799189217 115324470 498862760 373017848 503287344 534488293 891956143 254837990 642949097 693527135 741394725 246083131 668230699 993494052 995870697 781958249 960253010 393883695 680820225 272960280 293780712 351029538 433872308 214913701 968127044 750441075 906731057 253262415 511893853 197308649 579918619 645834787 691603473 430564599 546548706 515477313 546642140 119155966 649758410 528400889 886547979 676673311 918475336 733211279 934294467 316100940 656756895 251051589 922105908 178561359 932117381 493339476 585078213 307078522 865275294 61804836 419423961 817569535 908410724 811860451 984046197 530356457 965423836 911886247 924659298 393436737 979241943 62496003 190069900 846539569 904116014 685036732 847069849 245046741 730391453 987946226 996178489 594977934 893488758 721776987 947840248 782970466 844117537 765579416 772670949 144140976 757101421 882338215 902384962 597647585 648763608 203209367 275268078 923510192 976447273 163954508 412711610 881133237 982139654 238787558 664159272 765915224 963485126 418903677 833261022 786284002 860621672 446564096 468774402 855694618 887609763 184164424 814633157 652202252 764128319 686322858 982010758 672793764 997549200 57924981 749399830 410950090 665953204 756201221 796738278 11333041 752018676 364788542 386210367 8188836 277084828 429601758 644761472 285297025 928132338 390467101 777779169 229515968 678224409 850878902 885852001 463334194 615344118 357123794 704372619 56862029 269290584 938029973 979616958 691403541 850866697 745660739 855381828 868372962 972056565 822097953 956754207 260196427 448229807 504480818 792959260 929060260 995367629 608067427 724380845 941447038 992275624 471565292 935953482 238983439 677724322 87551566 249582352 632794530 772777325 298589674 589398525 101603465 497946904 908771971 911797412 209254211 482562443 283451598 957573319 877060871 910407134 184968071 486227511 490107391 811125874 69834066 313572594 161951321 261618165 394301637 896854963 434843769 465723563 243336253 357306346 262101192 459500060 184156385 564210464 929908576 976030312 142657398 568163304 173603948 660273765 470973865 635667295 226659065 978957815 190068322 267044618 28484856 259398397 167340226 953774974 780100758 959359277 533707874 827580804 261376110 367593510 461950018 545110796 282214054 913403386 27004635 572069820 707073362 805779592 849319092 941506646 251642408 818630114 564744666 629596255 428669793 916834889 31308186 492197835 797626475 990655696 789421264 885801373 268388290 816121559 590021624 994689530 372004012 531758095 922150433 939397457 142233822 507514828 171077928 703004892 61033005 972801517 330392263 809600373 876971158 946240134 23295215 553650782 901760528 968301918 306057710 630837012 234433141 521086240 278806352 698989432 534042756 928425680 798958607 874513623 561944051 971651175 273442022 688859449 633187917 861119686 728628759 914405209 540496746 839377112 821694168 898103336 485889233 915235724 579782518 681950803 8337236 188435544 913846330 955575703 981120494 993365439 504264762 591119513 316221665 971180419 157245053 910663405 757914184 889204901 683381684 716416661 339943696 489264418 386061156 693405172 943323997 962946552 10928469 550013195 275499878 644038353 727245658 886892324 453682050 547954566 534447598 993519185 271077244 692464883 18660326 329648605 350332243 792746574 319545240 479920601 664139922 940960714 542166761 682986610 381621000 755464741 386630936 941714356 376573495 921586653 3985674 883434278 398901190 461679489 61246987 717648904 216422026 900862194 160140936 978168695 656707074 919124661 113621304 346367934 214659907 972440754 161915947 244083101 267907851 509792942 263359926 456433702 531504744 605207564 111090537 916250108 931025422 990337270 857208982 876569641 790846452 882973388 849573444 968826249 944386684 960552953 618199251 711141616 142798589 470549153 653519423 739550352 606820245 858481341 11630521 755003190 46629590 160675118 515046557 901164902 637845605 963124997 692286149 920040467 735971058 777274730 407167769 856665070 195374437 489967048 374935372 578920097 808688610 976266657 321765040 447286422 814807678 852508583 772226127 897510732 349708623 700002325 891470436 956241559 736537220 881594185 397193015 801623781 338436116 546551157 975911220 990761189 621559871 792550597 570421657 925949683 911331133 933335655 473904872 554536654 787644801 832181642 433908645 845098365 462309111 707771992 891279187 975679229 294956893 946717520 376297486 592987246 540274959 804750471 881393912 986737887 605775608 630162028 258627778 419131738 469870852 523078707 586003582 967437892 6557766 945538416 864781812 902947293 946824941 969766211 735076764 924053731 757112699 944270002 941732360 957765415 277241253 713481793 297914344 726216787 631493821 755420976 317343292 578593125 733360573 911157713 245126931 870283022 290579118 304816036 373153070 887291048 747521981 897660319 29521726 161550514 829863895 962181240 635753946 979770110 968739248 991416444 674190104 846078473 229702014 288936412 557081139 641940982 730178521 969825670 225722817 825103319 515849184 674480898 941007836 991360172 712204739 808032326 914910529 960034433 356568804 892202866 983610806 996153136 445243281 569140780 70052283 569700280 418933001 874480096 179709964 840985303 340020473 545992364 205124208 830752405 600681891 879548016 445398072 610010136 753586670 870425011 683377051 776262973 768019460 806303242 411603729 947853226 843115042 861272074 404574776 532707050 588290333 864470300 901105982 923554192 585887594 674640151 422721843 618119384 265311774 846817858 685688216 770949955 485754430 772685967 956963556 958005640 518256948 723184190 378927392 580547656 168464345 909814378 385897532 797364134 482505574 793609766 242085345 659916651 14949793 201053513 776555259 840852374 95977503 126250092 188575229 691193083 248829946 335891568 116941204 714294212 528578200 909674578 401790295 493897653 289814094 824895048 721328480 741163119 728968245 947778403 195272604 950118826 520055501 590547956 890659307 906500900 339783450 602038956 644757193 974056512 477267300 813596855 434532028 761914301 862299429 887983317 100617118 742080901 773389421 960666777 55034294 727180123 245679461 912020882 498228076 642381754 112396975 344194798 618907927 922385038 860512167 914069489 695618282 863195465 612367020 970749023 409157187 874242088 698922933 779629835 789180646 828368262 977604464 995441002 98282110 809034083 503509805 687151785 798611978 824452887 327050649 998678038 701896148 928486304 598367432 625834878 695723899 739871041 357060937 600682683 444925311 447487486 471111584 902990302 273008429 521037812 60594672 583250316 212991184 426105218 443648928 449339463 254490337 836197871 265458644 929298035 597003136 626459047 318002408 354389226 117034052 818616657 294482363 807329199 167407087 503249340 280745560 811769672 211636489 747033744 317784343 395276558 548957594 879697037 129406088 817425908 922575989 943714613 531722241 773902290 726551005 864790560 110503377 480878814 273326200 606291323 750300272 891052292 411849394 507361984 399657417 771355815 34651256 250680233 23186827 992492859 834282132 930138598 881208415 892760610 714377707 745990159 54600597 318883192 974912331 980143367 77525358 291867589 453029990 785980543 469911028 611101612 5755362 963583797 608853199 657148318 614924276 620869730 286510811 849128054 40951466 220233175 299601743 733014343 112124424 400302807 19445953 759823489 265020590 675488202 752243641 862404263 345007421 964906310 833858427 932591902 569733212 977570578 581519412 827914770 556929665 634460943 394802671 577494490 29009946 514883699 809773259 949100481 765230221 844967561 823100119 970578410 409054441 961362261 272557037 499052472 898783025 971404151 201485487 243722111 681221918 979300188 431918416 706301390 763996809 955085755 593915141 757838416 700343770 954498632 756438860 933949136 104869201 665531324 42065217 864806543 853883200 985739211 817455258 847519334 539757626 750768175 164085239 245740793 81335908 991422308 70825036 799463499 996996206 998400299 32929796 804417375 743280712 954767870 597984542 918381218 193756454 519835777 629221784 732229871 594431709 706686925 154401724 931829882 922255351 957030120 981079942 989235884 545920984 888011040 538547655 767650855 215433979 692419921 628706704 716011771 958211069 989635401 505547111 602918411 120812646 816025924 363036149 868327503 708539023 902504066 852675067 872563023 337841256 676605453 49958565 598912349 360160522 421228933 865107755 876670904 703482893 906475017 299829301 707465525 167230258 834045429 125157854 964497132 233179440 530857974 816666494 931201617 779875641 908698574 973986467 976233333 904139886 973213885 634349377 927762144 356373944 995185367 14345154 560627052 378999543 971014426 971718674 982825475 867501196 927791426 811976537 966783493 237097301 493753467 229261066 257001579 272867649 283111774 468827493 994847613 705095734 937744592 816778074 853823231 51770845 869894065 500177817 832337763 683604983 818574622 536488424 796674220 302354838 939706406 932437714 958831968 835528659 930616166 673923526 841804045 818754230 850110243 492876201 834369777 964794980 996894386 858659804 920476257 851140602 966285097 139672950 573005072 10200019 515562003 725788074 946148562 822684008 946690829 588560759 918130984 882730960 954446982 733907779 799431445 136836536 606883063 725494817 919300213 562179524 872544039 944713283 948751895 957440500 976015448 698350133 843645859 859513915 883634271 331585920 896702732 88424844 894752006 310888598 988256292 628552730 753863875 268441551 554152565 915260857 953282435 629154579 671691240 797196351 863207094 614004780 661799109 598014812 941811465 843304757 903246784 79485319 753514101 383886127 950957681 523377955 764016645 322478420 944443265 355501397 957907130 344858858 426750620 663954515 707104171 846143048 998627736 964244476 982842033 507660492 995804248 921648693 926383686 841467835 970761827 938009935 996898506 368478122 857335978 234201387 781726636 178328955 552953084 923253141 940529051 116600092 251652817 367119187 682010850 725891117 735857158 315182296 402577927 928073847 976668555 508363737 881917582 553095073 839973299 107314912 234502921 321952365 594527937 783803390 910778714 488319729 548002286 340144999 736895677 917077508 972028934 841646 320443636 217147642 652440884 333909428 453248556 663283612 899674996 961735066 978316638 463175126 650356482 267205144 660248251 536484871 917962253 758428591 926395677 137407707 207957664 795699482 857367188 886661411 928097414 476533145 643831434 521464764 989801248 790290379 960729397 849128514 852836574 522179558 980070320 858639016 927851379 667412036 852413960 149819096 381430084 637035288 782671585 698941536 992245920 481477454 811621026 652165831 970408831 510644764 632315842 184434147 216371016 593873225 654694370 686710187 698483938 435496381 748432061 295860526 773352035 878767072 947753605 991008154 993167082 682215261 809987661 1001199 113756217 727090240 930061075 239839964 551801155 629971077 949729318 125172341 667900948 100678823 350974140 187503061 233352386 474737480 634584161 694668372 915475729 608322106 830085360 435511230 703589226 484161022 523443682 486311719 716045798 537739454 805958021 12877236 775422575 404854260 940491242 712642536 944659896 351962546 666617863 398065085 829221099 862319002 893894099 155031871 397231388 868721278 921779670 860763462 982457249 338167362 553007364 348360923 400141569 350786310 930859096 537387596 541996449 307727382 887777224 831160711 835692228 831667314 891981298 330492591 463192467 294519219 295915287 976664232 999164108 903160505 993950024 941918008 988827212 37716546 69036959 802702399 884588309 236666858 993339036 756630429 847517096 418784098 712565352 283286945 324911623 636179552 691358922 961915724 994286986 308956402 481435433 344737515 809542838 149060212 701446186 595347243 766426645 299440044 730394564 172290839 317382446 640709376 743802389 155402132 350783410 690226751 773958559 1525562 565589784 873377397 893082799 201155614 537454833 338870181 791069158 760582787 917866493 930313440 950114120 703658472 853347171 869895466 872005275 606172798 712843235 769148643 830027471 833552169 857392211 418023108 869768972 138283826 633558755 700283066 903800046 530052402 707369407 235479588 781114010 981240174 991613575 859421831 987604178 498113004 785881866 585739131 846783176 873326210 904474646 471449432 633840224 798631289 837750618 298029836 577663546 200454077 590007317 210987457 757722840 921105993 990933564 420218525 905811952 902634334 945432902 479958000 982373878 92156189 823763107 597385198 920173337 924925546 997243625 40444796 893295515 347031001 445050202 408671004 818916541 99302580 631348144 161330460 497523536 960960178 998555112 698981484 820244795 338837836 772752691 377686120 498936131 215272657 956404810 623652899 629168157 592058729 679123390 402994725 450838378 444668089 862769613 244660945 356211659 572111255 694084561 778812674 820003379 904563440 908274730 327653887 977280947 151930172 369815246 35535090 463781466 694123715 769205747 271355852 496023612 508455537 825044959 242909514 810733472 157809955 452820421 222357747 506973652 767718055 868000206 391699063 575390709 673576359 965348953 992564971 993818873 60013923 770482320 249442160 886950949 489545559 501282108 64219767 631635944 671153271 955322488 76471323 291750158 134968956 278982000 572020217 895041546 749564581 838645935 488073862 512031425 811495373 909626157 887951623 951705745 582582126 861876826 496599973 819867366 348912787 592547214 8767400 624644478 303802400 746011217 976286188 993077644 913638611 991050896 689807748 759691007 705834244 913641038 941551202 968896390 173533381 389411018 400301471 888740263 661706014 705870745 980784500 997860659 351067534 464869520 82882117 286812525 2875322 940070538 738273501 997845918 256945655 328657002 208148380 784440966 961806324 975221058 71126291 555811906 80237295 746740694 938966767 947639894 23675142 982869596 404076740 481721492 822820216 848661487 981820423 990284192 401949027 655168442 508836057 752217695 493787765 561018489 497408005 507746077 778889641 803815419 214069039 325513337 701421525 927883243 781068587 942443412 679015723 883282145 187154020 434230923 710718002 782740163 784096117 968931159 700882616 965814198 410615212 868406531 829989216 850074691 491574744 753423911 864533747 937805286 305952041 559358525 217946131 846863197 478315481 653110942 586464820 905900775 400705603 954085035 787181663 940429803 612792894 620519676 556976991 789296670 827141466 847933102 911915367 995200321 394012338 506612571 761065286 876708423 272786506 789130299 67857774 449680152 137030217 138677759 301848528 965878969 50155103 633000504 320874063 602031631 642404173 693275042 631205256 975205942 476042857 767952930 674978886 911646662 276046057 597780317 946220301 990782317 985407997 993585782 922897314 966688974 316924904 869375763 600219428 798631139 493623490 972576812 86840258 690883698 908311061 949157401 488425971 553361790 102364381 128231327 477521902 562552980 405650793 546894122 709393818 813196824 374268878 719191484 359435777 811742161 937090548 979710904 564165039 783497530 328991550 966542641 928895034 996883488 238166445 249279861 621227152 990939349 847057015 993824199 343119264 993972094 230882967 293020684 180424517 601848994 503373679 952681312 894505042 932204603 675822385 721292734 75414856 92803639 761003470 792149767 387138970 963173000 97871522 267262452 612630859 828650454 229088627 694197071 401645178 643388383 166785021 308462876 55717674 354343821 342647638 744379855 857919158 870498464 998348195 998921875 175616488 941546421 318635703 491179415 536414676 539197336 907533362 936591764 924707854 962863516 309040107 480167736 702968864 800000739 394558385 518276908 391864578 392308766 673755244 690472083 413043217 979883143 399332585 630177033 548525956 676576012 397511558 847522582 2940915 461636273 836385666 878469097 272024130 618438143 283952106 386881152 595503856 721337372 205487004 683345328 461636512 991318479 932424544 973967170 917678745 936113214 452977200 820451090 445957464 881646300 187168447 312101573 992171249 993904563 726344359 763872786 297040885 494572473 278694286 310438776 775043679 855497999 333476336 447925665 6639631 619620418 288345329 584146522 938754751 988951937 168669482 276043922 233843014 919643576 295648676 711226359 925869604 947335703 835925437 836474696 74669482 948112589 466247166 581134413 142110836 166050049 578850752 677354407 129335161 398279696 88541074 598636926 451779989 983215150 473721738 899260890 440312825 980097724 70049815 223616630 824604127 830929316 593158546 771512241 966754696 979565414 4287927 507176390 806386719 813477384 136674742 255905782 801957306 928358294 117622666 242990528 845786604 934732828 115985828 658387341 396368921 978594607 420933787 953956796 813452421 920477186 45141032 85344881 231912302 986288837 549552956 783718490 214453222 544442977 247091093 725239436 321801043 598261096 237752466 326570805 607026563 733049663 913217180 968320929 583617060 927658205 37226828 150277449 193003262 262523701 910841076 954367854 592139476 778407579 620714243 798048336 563254199 663718565 921052398 932396316 477124196 800345042 984788528 991281946 656919 579718032 251849766 357211890 48559066 329592734 8147191 768159323 611836478 967748139 619005159 927942956 413852915 760350284 634252262 965650888 846562270 893066840 344982818 751681337 440870029 462256051 403144794 424186065 619489642 879414862 110692466 852579413 167510925 812807876 727146483 842289978 192430160 237504816 977883726 998984132 836321569 937260746 951355326 985046846 289513588 915363517 856892277 944135993 101766460 196552137 173798508 475121785 420597030 939471689 906000486 977834371 274739198 411648934 297887235 981176367 187295790 259728987 922474778 966837191 330884376 685373951 479353050 956174862 107986560 593450065 120305457 307018983 691543639 737115255 837301790 915263025 575929323 826713780 23758598 873550546 116322523 932262362 16613449 848146267 562108701 756855269 796499636 902588218 985400797 998443299 472074320 801554900 372345457 767799975 298442949 875428934 863749175 900875100 242056068 544183625 647183827 761722690 193831177 474026183 647459074 765178169 933142841 973161194 306700482 340417797 12716532 60712172 698301843 962752447 706362237 985590795 440206674 601702526 913695762 930596819 190525680 663880768 664671224 788020828 907353765 938840134 760567074 946115071 43898044 947536564 88914171 279182635 224434062 522690944 723500656 745372836 728400941 960406879 189547 178726955 923287869 965485354 881340432 914358279 135872870 275522678 787005765 929476745 97329949 813010621 501877159 773988989 302935653 359371176 825105731 894805554 731280964 862255565 781167984 948008566 58689477 853484205 526422663 937973864 917774112 938670881 695943803 919361647 590790777 951762297 397178029 958975337 114068659 622608451 707719289 926177185 971026440 990449027 559386695 688870926 666708839 906321109 892649901 922315223 760908168 794638053 956055746 982632510 625306462 933104932 699707447 947201348 186404005 839774166 5103067 340273116 210526284 455453909 337693028 877958430 174854629 612334463 728291283 911758900 50122800 378060989 572721361 946622067 321572273 732048290 544160378 881226334 25523560 224652243 44247051 189669818 554895965 741693402 393282810 900841722 332699563 775896289 797005528 861668333 423460866 991807362 432873515 982083483 768996807 937355260 895352341 901685210 393606145 949646293 624503884 837442413 996607840 998095159 671561307 758695479 39744266 956731828 351592317 823119068 363007356 502483050 33178836 123492052 978692797 994127988 106847964 538718323 197929367 334046802 261035684 454879250 622509955 854349774 284908279 729132220 533036347 853494760 823912608 943998283 685740041 844544667 348870422 648600938 144944122 886288666 508815213 608203171 10760420 694453478 678366346 932312030 64125069 964213353 724297747 987648002 171379587 323605872 748837145 982611395 987791399 992222201 358896544 491948698 57204275 324695445 732788317 933971483 697218459 724918702 626461949 870722380 844842790 908756673 574144796 986735146 650328557 920805805 868085743 902935837 957259475 993594656 279538595 296122823 925418012 990516175 482107456 533507482 873401349 904096715 419066748 514664556 49701747 594142967 811142103 994303330 332342369 791825342 436214170 695496804 876937468 974842900 150843233 876416315 687417466 805814594 174685189 520336867 388598980 921198207 98113852 313137115 78528680 836343060 554481813 907665883 521333660 603590425 950415076 980184076 175323742 273329533 1036478 75543538 796733605 859431338 154894254 472102239 123876593 300800423 296631745 303822597 102171606 310834176 686223706 832823888 539517465 568183676 676901186 823091754 140139772 517668720 571880221 774881895 14482693 980296207 631410894 904836781 20978106 645800551 890335731 931141499 775202139 968992189 263610623 492609901 272295658 673314615 184545836 713168472 566407694 659167051 934778557 966433694 24597969 218286422 133285357 172878547 997290331 998213692 150892905 624406060 459523461 763029483 504128453 688739202 742219098 812503714 966306035 983998541 244792336 732075946 280680604 547791584 533658415 898772128 458079388 810454454 715036271 808580320 272925038 402143874 928223895 981449969 217576877 955007159 419459414 752786498 803156472 969474023 794568039 904955251 964064975 998890484 494355130 620497605 525853687 821967532 762792189 857520576 693622303 815212814 240603371 282233277 472319870 919169009 232407746 405676697 192926867 715761834 311777518 965054724 97511274 127917106 493052397 703426074 19306508 691436187 624106259 800993217 258086172 350743449 929676681 989104162 652388000 888021381 16373816 131951982 172303296 517835861 307184396 521506002 788551990 945334271 718549540 983816607 423601824 809873500 936720030 950603111 282530750 305223822 416927729 763661962 704445762 890064660 892760861 967059239 651325479 719229839 961926100 974704656 265896638 429763077 450696388 623243663 621899875 664952629 758880858 761524290 181709425 407109024 584085933 843974672 221655748 639241274 184195835 931024353 256695599 821705218 407232947 613469051 70801789 789670364 656042573 704231091 9329251 734085641 212776948 890048828 559079974 890136242 342272970 737902607 218763396 349708394 392011537 618316650 188691501 667324307 779011790 817412397 265452896 672902281 344573587 798118467 482813709 964834285 898365929 921834228 316458911 496892991 970106366 974594076 430697830 740424718 454577927 580678313 995821254 996935903 570226483 571093231 129484361 185754052 255299710 864446516 387624636 862782477 760652322 761214568 251586131 970500488 288133535 503790324 880875357 954305590 32930252 696156506 145159696 769392595 204603781 582286463 365393617 889799360 519985586 606892801 806225661 950189370 758935149 863254658 610893236 697003235 580545232 967202654 367998734 748868886 133687562 566195221 871344519 928931328 692807589 995088039 529221909 850083342 198564435 521126567 241684498 243170137 854138770 947666174 103840568 623690113 100348276 195389442 816643416 990022325 365936081 414385512 510580164 979160770 518137392 736413530 934950573 981549920 987042139 992099883 3711664 113163557 452120522 893471757 168490379 663596259 754472901 923369457 72535224 996698140 692399802 717883329 229199866 574850827 701644647 752514042 924375740 945151792 52336148 111375346 176340719 789039005 545314844 879867661 387635408 713707862 814211368 921666089 966094851 991255169 877911433 963807739 292276725 805649616 112993273 800132027 108931381 399556599 512487863 863029236 734996637 777919526 827824139 874472426 427355412 562899725 935219336 949386650 375788041 422641632 194662462 594791784 279920496 429922482 774677061 869658828 964988368 973767127 107784386 435388368 370126996 444341936 307964176 717246468 816751490 887745745 945485642 977859046 913675160 941277418 699297070 761032483 241436748 410875914 509843392 754967615 193012884 881282088 625855405 850829695 516753057 601052594 730950667 788781706 624964055 789437355 575055550 606875124 507987660 763830738 638292604 977640747 505065288 753713891 68677997 550315250 672047391 738853947 651410423 843986647 59613515 205012794 679422114 704709295 7476713 420582369 508250309 613794605 515150879 858405753 680682916 894016137 854527669 880712482 427034531 902200924 697434948 830565059 972500051 983860764 265836997 507225827 607657291 920405317 308525385 506138434 984089274 997246248 209112386 639046799 836052946 877243810 679043542 884399183 120703503 917954764 520959591 871810252 551905114 978792512 931847104 997930114 961216877 981608230 817390617 881203549 103270125 230777123 36648050 543146295 619994881 642717583 940177249 994055191 589113597 787591758 937204495 996410363 752749460 991590947 63735001 835373013 362934587 421120555 619467762 827947164 841609872 848214079 299418000 784309298 672772292 957976035 362826478 849803207 277371699 291877924 636928951 661622908 884788426 988778475 878765749 899017930 135853428 386066038 320459488 834740477 310341967 927582117 962186180 966583191 671200381 830472402 130085922 374020029 50710919 322009444 576909054 771459818 139371130 611892658 497725236 823882898 733731883 741948026 915843780 973983921 133607140 355899444 457525238 969682628 892788659 910627210 982644259 984520053 742766820 966333828 977719094 989057058 815776337 906965458 35649342 762289758 232014008 415753865 617450092 795007680 92312573 443470401 759132992 770826135 827502428 900045686 905604026 948946536 677058407 834342639 307880830 705350169 284612775 902562448 377793640 749943335 340801933 483791928 969270691 975749992 980154234 980542737 421818349 429979838 632519818 790029377 667395949 989645546 274968652 427780455 883775694 890803429 72633706 583749579 969854736 997714230 504176384 870691777 208920409 497094600 709107319 853650132 791670185 910197682 955610371 973789955 590082378 986681609 798625000 918775699 458692343 625206963 548048746 972210397 360994205 991044626 488019185 682430803 865987029 976629094 402403069 858452986 617645028 684724375 205149921 465448553 924777633 983656273 877928007 883727604 331923298 454864742 144680565 786791813 232253104 974776544 922842126 955641847 917905372 974317929 748464319 766175730 852201257 990223373 825663913 894456272 91680863 576170907 687263245 708430082 551979191 573932718 540504091 958915841 38802996 679384500 719760948 753901297 436161682 462029737 209507591 211136794 855952868 900446993 802904374 964917300 806417163 956781436 428829477 644857751 412429648 816072102 790607506 822192618 609344528 934082446 989471016 993837468 402485202 684333273 276502103 580995371 395348421 647918482 983535064 991997961 648583956 804651032 405274109 976069922 846619964 856822538 285210364 888033497 304758673 375523251 539737641 867205521 662970792 744365673 962179510 964116846 257470267 581500788 406788212 708551206 510311329 925131103 712767659 808441648 767943064 787719759 707693027 997928463 806981632 969602470 422429868 871154645 214552907 248580770 748646594 828874327 867068356 919920315 230052675 622791099 349628442 732090756 252520539 732091866 913948254 996091253 140080070 661720572 300543909 576956278 824440349 945406231 780931215 820711950 8663505 269292102 937541533 942416396 724234669 955079406 354596943 529983522 743384055 813369776 404449355 959771448 389852092 430591688 597674187 754795788 112967413 936323399 236706171 465947752 721919777 744946707 414438281 983441796 121057415 307112736 561020683 690426027 342768646 854218176 885490972 886395259 963336905 986564872 592909969 650860248 274940888 400325257 370392261 835524742 188918854 475914507 271388992 317596659 263885094 701456666 892761439 968474670 731607868 862336370 490254594 903785110 23261462 654822646 754528799 946047394 595811967 816397551 873000245 875077689 153993231 199402115 951040532 968060737 295883277 973735906 511394657 965233242 168226094 740210701 333020017 515773426 153775319 747281907 836846620 893745893 993387213 994684192 400497863 711180341 515938935 630487392 473879787 709945940 211489733 601292895 64246870 875788105 693918640 823254351 758742522 823259265 294915433 845850081 893321730 959115060 541403022 879922748 523564896 906140094 94805648 848764111 994524992 998698884 504800931 633092678 882959150 885059972 441688631 700237026 853419854 994932159 13704700 289134884 423061713 455242600 459233878 737897451 167082204 201123851 638767556 697961454 337427534 858863858 717413356 909743128 607614738 796116949 675903369 810111600 813588382 941889238 471059538 624968121 872512548 960293967 788311875 904702965 136945324 990260719 963620372 996563685 470700692 645783691 510688237 582900596 254415598 615006312 946479206 967815213 865705423 943783909 335104039 374091886 507746949 596998436 823970847 870923855 792716384 966938460 94290476 806481465 144608111 149460833 793069531 899430720 217075508 605538298 522962840 896801104 787260308 912768102 723251383 823714550 328684275 902884117 101245090 394131674 632658700 823444538 546649418 696318419 479360639 912109399 122227441 295201732 143004029 771678594 971426542 993045576 939935846 984512579 209317994 228246574 914473313 940095830 254136729 836994200 83300174 840511924 83781104 557987632 566518772 911130605 964461945 964775561 545749768 965139580 151431619 354871672 204162955 940254216 590625052 875981602 703952337 918155284 894520000 917619288 991611695 997507215 703982815 766486912 260220885 300453402 971903107 992089816 990891832 999301180 569499577 964776677 389892785 415564485 445188886 623217012 820520544 898543615 703467033 754592767 778774957 947061259 692919577 693634705 565611907 827503596 700421000 721940072 557258346 777274853 568859177 854060417 372797423 704835900 724654620 965870933 260669766 675290578 405689688 607625780 559443158 733992453 434754637 454178270 763813130 905322219 262350489 421258192 142121435 227132996 645712565 849428105 206197517 815245216 360506827 753023014 437348344 887938017 125370102 502180856 180571063 898513628 460836161 586204123 76757243 754098030 441548689 792414877 207278808 307029457 272504442 856964015 689887767 890967998 165266885 830908592 971352509 985271108 243427779 372115081 191853190 639575683 355522011 929757834 43650479 528809098 878100756 966204252 165565951 947947072 972770233 985655398 131908981 747628738 126913784 622837653 901798218 995238753 480802627 637655958 91738753 210553465 991334580 997474624 604077088 928146649 825604072 969607659 168995584 761726140 30612665 881142780 846929765 917202585 162068509 516594565 465741117 949769739 492899483 680800779 649642927 930704831 126233508 745172640 289059232 581493708 137400239 221106753 205909948 234380935 549674654 996645312 495212094 870104779 206491351 294394492 229354019 663209682 799500560 824628255 634787647 775104089 331322074 789540904 349983968 359260433 396903402 418182036 127229820 569662285 840034261 915531127 201801293 288679121 368574868 704430490 890902932 927754335 854178889 914925845 831900139 912080748 853827196 969905755 946410559 947561260 355932258 563273948 739547625 978783470 527205516 952368659 216263925 739655034 285153904 299721176 842490445 960709751 394127743 810168026 891272912 977072591 459110665 551972686 638563528 928225412 855056084 978716640 569526876 902202620 240932355 304668500 565129580 968648863 524402216 674586678 464024465 525507075 364929722 941521121 360689378 553796254 764228093 776215872 182907283 688110084 176870537 843341273 18541618 202212678 939953747 950488633 278634569 646588928 829692402 955762377 865402759 869093043 968524533 990427886 562968293 639451727 556861269 995389923 723047954 885072159 453001897 757289021 270057498 434763792 94712403 782251668 289199012 697935787 966547462 982584248 689763655 814969880 587900549 827327167 554540284 725818650 747643801 886653768 424511365 579550931 467738605 912956517 210051182 439089452 120049701 735429142 277456168 748515896 121616393 243689089 912669489 982112293 123991110 537045694 559142773 834560991 822910074 936125122 736001826 876331024 993284429 993933142 892531303 968521746 381809794 476789324 544915359 966017502 57306336 571556681 350433576 770137691 588230166 816674514 365856837 652861510 160474710 418541603 234774169 653367430 197062138 410434445 690971974 745056242 852635903 950985793 642501584 921058723 924793629 932075087 450645793 863059864 471946160 536687537 402072774 895944930 250420250 542403707 493546177 914233665 722451492 819539310 924126589 925337147 164196018 278219281 876223111 942478635 135998674 755364849 830032435 952527733 239348086 815890473 331110180 916959396 276689892 785094846 704204230 712573974 803078969 955852428 788189880 894243082 956314379 963227330 741421397 761396661 245212707 850775467 974848191 995991486 118927243 811521735 11992480 106622801 583551380 685212948 841203146 937286590 208075315 663744128 165282931 311810896 26472330 62754933 742223635 824512221 735761741 868742911 51522420 959077346 926093231 990897300 496560217 505693392 113684143 573150682 567475481 873633564 694524856 942289319 915493936 947102025 328836413 492142528 384807167 795128926 385642188 970378543 655021195 992424932 809887937 900953609 478347711 722731274 494844050 884694108 651357990 951259518 682012747 782024889 813838492 865987811 33575681 916273570 852121279 956759239 710557250 758413591 614601220 706068780 520176465 890367783 768825974 937009301 710533659 753153656 877551345 994367259 284891570 791087826 471645106 927310367 24273891 253962267 784045374 960033718 480892270 649363034 690565985 848402977 782905315 824917960 18363679 88590975 737502614 801392568 563555121 893876279 476637872 578495366 974766354 975088493 914089286 926041307 131884058 155700970 546759800 634426080 3206298 202132677 771552231 835301667 488536249 615527540 621878256 657776944 774048261 774493095 64346549 811747470 940625531 976537143 843674880 851961877 674992007 752900238 658135935 712552174 311962526 787586706 778024029 846581468 600721069 831157496 783639508 808210598 956682515 985081100 543800680 762481561 29171508 281987702 338543856 420433499 429505944 476631002 788460305 865713615 176278711 412698551 300940400 703064100 453235431 888554042 538250026 870274644 202598836 532661395 353277313 390477688 884971817 984448122 787755406 797126099 299151702 700240453 697512088 868848745 414542309 936201956 981179591 986532584 670906695 895637649 457955424 747488408 344795794 658475833 685588128 726034860 112228669 480356450 14097623 538360751 326534819 783932494 179595352 962047249 768971944 887237762 848562396 890321466 790309761 955810586 636120573 966369977 230919644 789582346 849782388 891201295 837066245 954943914 659309406 734905776 787360145 854063412 250690775 983346195 75850090 708370548 747659097 991938943 170713533 430063451 635032853 960121428 626708057 979401903 332902642 942477920 257572867 772273817 72650421 83023365 81520987 563059221 179970242 462258028 467957992 476160199 468708276 662534843 358852919 942011894 899935460 995793930 704025198 994875140 180552165 658082110 213663077 888218806 54384943 211530560 960783275 997330682 960821795 977858892 90785957 397895531 900629590 927138703 946969364 959547704 26344866 66114141 822227221 964055650 182340093 490190225 381160946 826298622 342003613 706974761 358541488 645650168 93731458 315042805 569719843 800315255 705909020 723840465 447361476 855918668 344369688 850318672 964339207 989906629 815807321 833927535 422310406 740512051 851555681 916956591 66715016 610658295 118664745 665951454 48718453 642291230 277130466 473880742 560552164 941438312 532649230 683348987 737554016 954263545 958751057 984511644 30741810 854439365 954573498 977768822 906138574 907202603 266742752 974090844 762305652 946426119 776976570 798717366 46583922 658450827 246175796 389654157 815067302 846519410 934980702 950423670 603227357 696082477 926644670 928132640 412907242 530162253 868267999 889820646 549933312 654921705 131273278 891094199 12028811 248196841 521280050 740622829 440211849 785602376 586249878 741409191 63339063 743230116 764840564 988986671 259420486 483590256 703598138 762643537 951934327 954728508 647450807 917511073 230647533 884133467 464762349 698376576 504933581 872147260 47818339 744279923 867449455 993207900 69776312 353011692 536248351 821328582 72245297 562580437 462506071 658294105 92519784 752705738 117594804 713872620 372613902 570959810 376300532 964999045 291731887 893092141 675954606 954570195 193994067 249069010 354619307 789261436 931020105 992382792 54067875 533181325 124974851 406915192 674719325 679494212 501863893 931905791 97704989 265046931 606550243 942697871 111803733 507875355 73581148 823393035 212044683 758940215 545329765 812786956 940708225 948585842 671920789 717083525 307889094 367354458 267758680 659822950 384350373 656918764 74574502 459575983 204212323 333363628 416336527 470273942 909298906 977686125 389002415 966177190 715014859 869893190 799991500 934068142 666704107 805773240 178706436 761935022 944354668 975365793 276572507 432618708 241108826 440663052 975170496 989015776 743873889 866042513 885216684 915928967 536733314 838178499 818727410 952583593 315263338 372094179 243627453 401746096 278956652 398428690 199523276 408346418 532848145 670932895 86616304 990459140 182239108 388521853 253101709 533197478 749295140 828941150 966770499 985285007 827868821 927682083 648932123 875815991 743817380 878311901 563182149 693318269 551843802 564654515 450840337 727470410 440612632 657344184 995522268 999230608 877996204 976621709 832344148 911285285 349498491 771021378 299532286 698083397 500853091 957976684 98988920 251782152 742376597 837612363 773732305 896304741 559956179 896036860 393554092 867046412 291094091 729203513 293119625 302480042 537736731 982162205 95750420 949777972 125745918 709921860 278134096 546593770 710104666 874841717 638079165 798146558 968151684 975138551 271409678 802478498 446967942 864706719 858725078 881760789 192834402 962207733 945495406 978813449 757663405 815121211 711326552 942797641 46707435 708223880 381543784 732860645 340232789 607967954 739171700 937158269 228978133 877482288 793727483 905894827 903946097 940074836 293007666 632658727 729099180 991018362 496031484 501732135 265582928 777391645 312692369 339259051 643042301 861433080 806776571 968397295 181241231 825900378 572791985 582443609 734459504 793544555 365559840 377458562 856907008 994356281 267216503 756472407 973608770 974486604 909702240 924803039 119709022 842960894 919234324 991960551 28773143 34841930 902878102 985638487 863635178 885329252 830680017 942462181 915294260 934732086 683931365 801360026 783801577 876146128 635813600 984695889 412333717 766060751 514209490 779820215 346238639 434987579 170566991 885033555 753998011 809499044 656410258 853324148 567066113 801751696 490190571 551796953 315221625 902765253 496471445 963069053 442144774 883148489 71461636 624757430 848183435 884800732 676395646 750020106 499075130 818419167 387211041 603546291 453538915 527535449 31068835 365784715 548588023 622085899 327144487 600177355 922488154 955931390 264869282 884930205 324090715 563829048 288609713 495688422 611537160 859725686 376943092 726854635 509333059 758272927 383228817 985589648 57977857 691910028 986689803 998315091 828289809 959444283 209371922 303241323 389681956 783920845 810431356 911729797 927171032 936446286 263485578 511397878 101306862 744994687 350514804 548435109 265869 612793993 14521766 679514120 853302071 998996285 845344325 938818645 263700605 821653855 520701844 937926167 125209583 468496372 319590671 861294427 772322023 813153497 933037242 945082660 477260868 581986573 642003664 872422089 464259238 629144141 794521200 879086694 268971973 442266939 655026767 929311668 894274094 969720016 311719338 414675214 47831981 442712862 426089217 858251955 956068697 998802635 271711112 302925345 100584592 167384761 87277438 472928886 947256857 981532170 347999393 611425098 317391456 329158296 320440604 454758059 97761402 611776330 111357649 884970001 545941827 781333683 605033708 659965131 671001490 933088272 410939324 622472606 423803160 561309299 243472972 745405946 402835366 599626891 2703373 949898776 166257288 403571731 493112577 970335592 95503319 592768324 878639695 904067410 936828265 992896816 763615646 847132398 597753509 950686497 396405505 664537975 108224038 471495256 962200746 963046775 241679603 519721406 416224431 883468432 266195980 965602583 327300301 988156154 333775901 655514145 857106412 940713960 960724450 991024762 832078324 978902762 296107202 731064176 590196973 892894940 975839252 975848189 286045838 845947174 631824518 913243738 516924503 665748218 167093567 308293631 772276950 927960124 612475723 673213497 494529066 807892592 246379689 508865594 777703256 828993254 879950044 999150804 145311505 953969878 587850107 685970236 127244711 454243041 969108413 998207499 664503894 898616674 93073218 500455695 752104816 962267745 522973264 601877038 333619144 876242518 901101674 925134291 951518260 999047247 607635927 759131571 82822939 676212750 965319166 997217722 595199787 874596134 220189711 894359815 934676670 980926308 496731031 690327864 427095974 470785129 214592346 637849357 66717069 467054133 749429722 814280072 493668238 953730355 303476329 582943453 368956763 847572502 375220151 398114721 393663436 697283141 733769811 843105631 777404190 855851039 885988019 999154726 432669384 903274423 963360068 972648413 972750021 984263972 356761895 619348550 274288823 422025910 483398647 805330609 783803587 932976357 719156713 919265307 778461505 848564477 785835468 951203596 601855126 865855635 142224356 881822967 264056652 564170840 623029409 763687380 694061415 895500987 506276266 595653841 511128422 712218917 429660416 983524262 569836336 591158292 255491966 859204561 536660548 940047404 101818043 709131591 470639454 803455892 975688391 984418669 722206130 939957303 360664647 431702291 858738922 866455441 847198998 865837297 675241714 848870381 88561553 791839397 54359134 424029723 918362129 985428134 109212263 461425142 649722446 847497960 837304291 900051202 195801847 274864334 400714966 487358723 993732241 998483227 400402323 753270680 638964903 816789670 302261822 846851535 379099126 842975941 113141662 584371155 859630987 948660999 16389960 833297710 571476284 661680808 519862377 918272457 616866939 936047944 572268164 817411692 400829563 640727518 356219426 612280646 916952131 952171907 140883764 902752886 626421965 660135890 489949980 947269381 878721187 916140110 580913157 703156722 102873446 983195304 201448930 641358134 908129199 986358323 305633706 824411504 561083287 950965657 153497689 896450191 457214167 688178329 693339731 755184534 214932977 789546564 434252150 648624860 479180704 681477056 293288016 726346349 161886657 260922839 149213864 189705745 613197392 836668046 235860319 465123664 981411924 984640371 960847211 968808434 668146402 889621232 573315430 678910355 760440007 826077437 927508601 983139312 484500507 619604809 129483396 334812059 144379207 462473972 274072166 581000280 618935900 641821662 808708771 839064607 997750193 998287389 89761293 238906785 43634201 792389397 214767473 984903811 373945231 823369303 618829732 902707427 334188104 352764764 413665871 845231378 269254326 530593394 39259215 835097106 237369017 765043769 408126019 723312260 534658566 554121632 299967180 906377097 513203526 722036042 232153271 496692513 890316693 903685953 242335653 301633602 923416404 923911245 65725586 196863078 413571834 946294081 211222999 963682380 533389502 764968893 288126484 558401778 145874321 420693100 40963001 738568159 455521147 899270325 780995178 880273736 549217449 631622143 740282052 923096114 867818736 993064881 386837104 872043881 301480195 888295517 434947542 545466229 940390372 968382389 719695558 981662855 543396924 910180933 574405257 865928506 860826957 927051863 654683911 715141306 780412526 836999495 976401608 996453989 195947291 220941948 292309818 856398434 921784951 988984010 633478506 792419206 786792310 799356070 976114339 993850252 338607216 534285439 621788353 658698950 165018989 638574359 804239484 808321006 867483428 871941170 177054238 811669182 190189496 216917498 833204672 893224021 543601667 791316520 376211934 592182106 887522056 946838065 351135276 961370320 453438426 857553599 708381933 795976450 50501485 452175247 418226637 609957331 433407325 615943895 239634759 966582259 332565442 587378750 490462107 593726217 464700295 497008726 210782640 856863312 682012926 926971050 491989574 518232984 592772272 963943847 614654101 994018568 122817203 743541351 165499860 612441860 588133446 715857932 791334690 964026493 833476631 837560292 348781121 991672512 773305766 777143565 84209071 962747579 877799627 902500928 732511471 789619103 762832230 851487450 11573500 802869855 482676617 540615425 432052994 925504755 185632936 286647779 51378726 518230947 309686496 662082485 216859698 652334741 407491521 867557164 417373383 568902254 787464286 968538771 782256865 932866332 139523576 166219271 915362736 978391620 530665490 605720679 509139956 745594700 536008033 774692917 149096469 495479176 675634447 869981445 405200653 863564653 799728903 816444644 174379213 510401666 530367408 535100049 268708613 794347463 10785946 564074294 688540664 752097167 331217543 748864959 829411402 882892709 484492438 804020225 217397303 880196217 458766385 523234611 805899584 913257913 437149941 663318568 339953608 429872566 791594822 896219157 923079610 994930953 640072753 906586820 995426508 996733362 676322915 723393881 350646800 999040011 198863443 423695279 335987237 475086774 894926805 992629302 325718530 527542638 392437813 890851591 582408455 632353810 254664175 586865499 954983683 967378756 339306263 522443454 601647630 834263353 211503230 301527214 703819540 932086127 960867357 962015163 82501805 777831450 882270040 892633620 940658459 968133069 814985918 843036673 938282333 967494145 467246523 787168361 697309212 923351347 122983395 276971316 436322843 771674167 383032724 455385413 100397993 868447856 830278560 914598858 422613296 646875323 968326603 981063236 269991719 802494175 808251073 896768828 39814676 394815333 998234214 998454453 599248909 990765874 244431139 694993243 834676353 860416321 249351595 760011123 418986156 839477750 228424897 851293042 486433215 505696386 54252821 403505532 898440192 930913535 739984237 984881520 688530626 942772420 245377227 496933820 862638921 926715261 21531733 850208000 626457165 681676038 271017463 926532693 139360425 894899044 379126493 527738478 687874540 716978101 7043466 661467553 583988863 851988769 948027751 957892536 507814180 622299982 181452425 539272975 455961809 524915886 355856160 467657918 859234035 976243217 282854080 520392530 513537559 782401923 765926812 906221762 593189049 895629917 212776527 636533856 388179309 535551153 360183858 662258330 537920788 828447786 245121711 624608628 22955972 396866477 508819812 878870657 4383154 992948341 147265456 825863613 723367248 926875789 751252314 780258055 865679811 905082273 913012913 953402808 809938827 926035663 207398543 987327298 770202875 979997974 825914770 978840845 450549263 599358141 946751414 986904093 45814381 135839853 715029505 874423932 274636593 364076392 603538376 878864384 220862976 848554449 931202758 967320044 429715254 952697523 400722070 806702613 987872839 988573771 479484087 698291783 678957442 972047315 694311444 702854650 530013144 862156581 27512608 88245714 404330367 846015490 529122791 664125645 989277454 994630051 495045731 806297800 618505265 995030048 680159238 801192913 96969697 990872128 559258849 753053711 416188220 775976873 535126483 535502795 664033818 919002514 30868964 318963434 623816077 684243932 106041976 808981030 322870618 862621815 824974384 825953260 90808847 175629597 487621413 837785885 936237756 959781041 706511069 758824853 861924440 925185756 638485159 856478773 182622765 572567137 754925916 985056625 247794377 866750692 888310935 905922156 551139689 991879017 430629566 852776243 552491708 969549801 350325967 965105164 43121327 874961649 361064283 570643089 640270906 936653723 433670090 970805082 67014920 593696802 251745541 694452760 6183652 291577341 309160105 564227181 4238176 767251857 516425917 874291794 708708462 823009382 2117075 331588581 124513205 812042187 239529595 811816054 667492977 864850688 580158250 590769919 165627400 517907715 54818492 755370853 549621505 965071928 309807367 493722164 445461544 932655240 618518159 814143986 293123714 530629302 786816777 790853856 606331352 838857623 667445747 857584540 830639851 884411978 73348744 272758715 846755825 986957961 794584275 836035026 795412568 974608986 228191257 904123946 46076313 641286707 730363975 800158006 218632876 473485746 87664593 600741007 977463577 993489729 57494360 120365580 615405081 642916331 655714999 816887612 693655793 717882427 61327225 374924947 319874554 576709917 148003265 607581399 329198784 805893059 668308111 980940543 1757998 814363946 218627138 619187164 329110295 728999991 495317170 896479659 78826314 329408715 718641181 763065277 441493530 876189578 644028313 810774136 363152528 952330206 416931794 778597128 337458498 354057860 516038392 808669135 367812363 968293007 586064250 654035261 39816576 357904368 962975796 996455335 202494363 507567572 406894053 626308760 378851780 646280875 312575438 417005590 264181196 480166157 645721589 801974938 395070729 916101155 379851126 451906412 430790278 703804087 899581009 989359740 844283467 946103642 430888920 813447025 573245639 621288370 627298292 700875239 670284049 908700396 219287585 288500503 251302924 432826429 367901280 927511467 723542186 961696646 88401123 930693242 889854342 910770560 600396552 838445751 730995712 946627614 236095723 570736684 622607065 914553632 219435896 784172805 50553265 419426630 777192206 930654805 264976737 371847095 86919397 279877971 534506688 919989141 78198138 985270356 866901173 985133379 833815518 932956972 685229740 784449805 380629419 521984780 823202370 912268366 708727691 952468239 122650843 668768899 446195539 490768702 382962482 986993757 910460738 993984736 238709669 381536775 900904794 980662029 634951727 875879871 690171822 927881311 16799976 241264548 147319727 808339295 414409339 868136321 416805056 633441609 713838758 953950708 820820434 906767106 868363173 941080817 966699163 986770492 375967681 714315017 163851035 480553666 894538009 942819963 237497984 475515872 991642793 998694540 512538798 941999057 541869316 641920756 607440240 983962013 789514549 927121781 62663040 164590847 838318864 904749377 658948594 878184666 772167806 805892779 449743455 602715200 762568791 919841254 553203422 677007954 287593943 441366206 385298983 947509253 319059850 802015781 513112223 542413068 660470700 701286693 14737501 163364941 293822097 780192647 158097628 444239483 341649934 473715564 266726334 868195361 878346315 921306968 709096618 961375473 454030577 514382683 239350054 527261202 597575073 698193262 756342440 821800273 92674476 503866789 764791390 846466020 495338924 908468630 953716496 966444521 562549064 606044949 726646917 973347987 759190056 783168250 672325963 850203120 197689861 927802604 280837520 514854964 352415140 666998070 778168343 976275125 584848111 875229308 539308314 795372500 940411587 971519599 942162746 986290886 841923293 912538945 677860496 920515299 78296561 677679420 374201230 754516540 288716694 940845916 422889965 471936387 91662988 478971253 483757415 727232749 78164828 749395810 155508698 319597562 156486528 752362850 869872352 955545461 551667563 722498190 540278308 933935550 159486148 922118098 346140442 842990706 263428857 726532262 544228192 874056791 377239634 789464201 355797231 595093738 137954672 931400586 330723037 458071755 45056722 89547974 845528751 888334730 164534949 543008533 607461984 791605109 295111678 770640245 943069333 973851595 44314888 660310273 362721707 960463806 845743175 990408411 237021577 971614384 555969509 829244255 704969980 735472364 513981511 814310551 160473689 206619961 184869723 269320650 551735956 553633855 507280335 787006124 302829311 474736814 347113145 773906232 168497443 544148150 255015808 855359415 910388960 916632782 28862675 988882987 153752307 220252610 855384866 871810372 168940228 560452791 185936031 966062599 978312222 982870538 636942648 654774814 939532573 954280965 495384358 821790280 974146094 974403423 151381314 670732687 978555143 991004736 28485354 628427749 722984847 780619779 227058484 759240903 644309137 937234352 836067183 905506434 337355522 670707278 467461573 672094269 682732609 787694385 610017207 775223398 168090450 849827505 718798661 747078159 633267783 798135224 338335712 741421117 134044676 675567577 409799003 728617509 549447345 811894381 345969770 388565784 968263833 984439051 170017444 687675311 960902537 962293780 666539575 681391010 686995911 760409935 728740341 809697395 598297394 806628095 214733886 670359181 746626211 912875118 625713640 795287848 807657968 882980546 467229985 503604894 543951941 845142547 30286224 395939725 283007104 684645727 432489919 453545488 466542726 508507417 333442313 793455178 530041859 981699083 644638308 751135235 169168059 534740589 631215318 652860309 635895625 731511544 585303884 594986734 298082887 790480558 871450092 909343861 870845118 881500963 287878796 588367585 754295764 906192405 94729202 540313496 26434317 681881933 312791173 812923070 989070655 990446222 145499324 330190943 330196407 420822663 679434035 954168834 748596486 844574244 181906272 192261818 469486268 549623073 943305346 979920703 454504528 482095499 209628319 480231533 871639801 888431781 894643098 948300584 599521558 971346598 286520494 937799236 444065832 985832331 713370825 958036094 249053371 299274731 975786447 995622004 544546548 713387316 912763803 926681598 674659948 979056372 323994578 605974287 719823823 941951821 875728924 956809167 984103944 997920042 181160681 810002845 78392904 898081917 638668200 671964643 378899591 992463900 847533126 892212384 600344340 951328812 179139725 795519625 924292117 987777575 191793513 224305887 810597314 933751705 690755391 868755156 925935178 932635693 846678182 856993870 309840486 863496903 771706772 949039667 306034275 639106209 920470527 923679368 503361148 627729042 44567632 407722907 771941876 794954243 856862429 951490061 781584608 860765528 988740378 995298453 36335586 301626789 170657862 732169013 738540067 887252561 466439401 958948426 65665753 764136812 788838685 987550984 463555706 705837514 319945407 410929994 788960400 954295753 335603173 617195063 360904015 784181815 231370087 637444250 488607306 566697807 315138963 372894594 572733752 985355668 165254203 294644538 957016023 993448230 640451097 988551259 505262725 725640221 469158551 516512265 921821626 956228424 527264051 792173702 801419930 992238211 548121367 993725472 287699587 637802223 876291257 929511944 537450064 802773498 117281994 706733344 530185912 552772386 930442067 984992086 426814932 641870300 666124690 794454282 769464415 944973610 46131066 853339256 553064780 743301299 5179840 389480136 514472556 839121965 720740041 951113400 80439654 707268836 104819541 160827946 395616056 571076778 605329340 939855774 189064575 561545687 958384340 984404426 283980163 890432552 985305115 994546287 638413453 803910060 515743955 835804937 792985906 834039038 140092089 435937037 309427768 520514897 841388724 848095252 788535993 984909941 339565907 567554186 809828202 841305889 347500076 938982559 171742886 209219347 12306139 164512703 657068613 893930872 721672287 758573937 884824932 984391284 678242051 893523089 442966924 508445450 173950408 832426866 531737333 614392214 925118599 997646461 65620667 424776972 376935772 972961467 243000122 680348611 368173053 882791933 262751504 956578900 939361954 992783883 283753559 867122860 220038535 849012424 988897302 995483636 955102674 955720140 61802564 647605957 500462626 927389100 167528469 387014757 324105959 888573086 376712011 611419628 24086143 982474389 488757828 988625012 422375049 992239134 308843629 706726083 711067853 739828683 487512574 715702076 506449960 644636521 9114059 82668875 440452837 869469268 637454941 953761096 364782829 841130704 120271358 240462729 394697022 920999941 880081304 894393105 968784754 981911086 34993252 388013222 166178624 771343688 204569640 257388087 891022722 978340302 758847027 859596664 977292291 992026593 700726538 889343821 59136180 931618736 908579957 993357287 932418053 993853520 930608166 950037434 974832613 999156843 944404989 988098821 403273902 718297130 108053249 199607335 951530313 958470289 639027739 917446647 909904224 920884109 42228451 831708238 240438669 256362460 221761937 497179524 500473749 600689082 673043828 796563225 926476027 966113666 81380763 110306454 147583028 897113692 550394124 635013127 694097245 956564906 532011647 596761823 525434523 941092129 791973604 885182892 779521688 958890387 503430990 658622097 931252860 992460270 415114701 827386957 415223514 561480833 870855170 987631332 809460587 848916114 591042338 674214287 629508744 948816340 477875620 671903533 387798796 845957665 767900970 814014107 116890207 411784117 271108980 820310113 93105680 549910581 626193359 822322043 13708615 415273732 670625473 868265197 706433531 757553453 592047394 908115269 273073067 458007669 591152444 646321244 784211689 816870311 404314160 612768600 964981613 997473732 779665354 925600966 213836287 289405389 326784335 454622237 303213366 378616228 362039841 374414619 183127250 417506766 389776479 850360590 596882608 858181993 510828148 789901917 653608724 930026069 278383616 308212861 798744891 862269396 637819929 857006851 461150924 996507752 155041720 732355562 182882987 390353823 542825781 679734541 9060790 950025600 180678557 629242329 27176695 186760192 69352112 685423633 108054968 632126421 473669833 508036192 731094308 987597841 631661819 689512262 385799968 986040125 13772585 934208419 674421687 693092353 135752375 353939946 626728484 986706785 532414953 700035699 881535507 976415752 211044641 516671762 840539452 937439628 165332416 244864376 411197856 869806514 468761351 569165018 465335462 748026608 490344129 726570643 79814157 889779953 708288613 726077856 440377577 559993810 875442966 955820990 707767526 849256288 267289080 379978815 500681402 955752200 623078247 940762546 390384940 471101686 705350707 913458895 334038067 535047787 74395759 899368140 471132858 940273952 69700418 496358720 150264426 574395833 441646003 874581941 362768829 684813608 950679333 987656740 179308361 227944178 881280330 987857563 513599413 893995715 877970352 970233309 105195990 832161461 160132672 278797962 759512508 826059432 716453292 936606493 46080537 823326826 29715998 412951025 569935157 865191789 677188418 994852634 335969061 994992674 457430758 585578728 776120752 788440855 524326591 591491616 525261638 893684804 244477611 942288476 508838602 767279967 621808312 922393637 718044824 789538091 124935938 684457700 608135888 881054821 288241977 505160966 832570841 907012642 205821229 358466765 653721948 927981605 22591714 697906290 309705191 967253669 4685116 799920163 29553830 140147089 99740825 549331543 203383363 746050030 739086488 987342308 562531626 910653238 772404322 982638414 359437704 778452836 148787030 156873736 936926247 959095379 352796250 661755015 869163369 978393593 89242574 712191026 20983342 309545132 835471984 868244239 813287807 986298349 663369638 701077000 886173684 995627357 454855028 988876107 598437804 982935255 298196444 676106190 261906101 310433693 334236657 342632441 97387554 179471965 295820223 573633107 723312815 912335477 271484005 493242822 329786432 695660793 522967344 746144771 205191298 678800802 139566501 754980018 457011821 760868194 841524795 924639902 773756373 918992480 387971867 810610107 700100179 803160178 38283806 380668957 138519469 282120020 944118688 997407824 958819549 979371583 330213547 564047366 53203651 149517142 334707883 868076426 713772141 947959520 66757132 499080090 34934297 656965551 733580900 971812794 50979019 413646568 620238741 698019474 120874034 578778078 718740538 993916774 958683000 979372774 61609948 200042831 141743330 705332812 529643777 963090879 36246649 912634206 38637970 777555422 766442645 948580418 597474706 960350500 857118793 976363925 229172502 314019355 848610531 929180646 619386286 722380326 480078786 746291151 955569260 988996391 32279363 977765743 842044091 883565720 500124376 535147933 473257305 942326959 273111045 734101528 336030441 844497462 400138869 594290653 76733929 974109552 838903089 994429738 27824678 161453508 337598721 741578242 218045837 957482808 625425180 887215069 469830964 917610362 634133601 959343116 855430500 891498743 550363099 693084013 50588265 421460579 325310407 711839519 634606949 706256573 165282747 456498056 667998676 705035539 399398477 575689857 95455870 272044420 288296167 910109123 77119671 285683591 514114682 757004926 611550568 960374566 815901786 994712779 189446319 607640173 197026852 536665819 351264545 814346763 632493021 804769506 364330091 939833048 514476935 913469129 606285395 626260473 845052773 975854490 106024173 840013786 454424567 642814645 267798244 949203123 131186514 356570431 712374380 727598459 162358009 274659488 603316305 695763256 901194468 984749577 173111772 293206915 442406894 865281224 940956221 962193885 785021370 795866529 216977625 339906278 672936653 849378433 474272070 916223238 634411075 666097060 642655068 680802929 190618289 371218581 629376529 665744234 214027207 938124280 752156777 828363895 11144752 350485117 64592502 154784393 407173491 715844330 539760228 983465008 534552987 770393056 746888126 970079573 31651780 789321694 734878265 965477409 249399316 849067349 346161511 415034353 238707037 514222716 549518286 722785144 62136500 228442348 384081547 948484656 281703221 537669703 635424981 854296506 857792259 936748865 628524932 800440945 430793716 955710164 498711559 799494736 730317339 916076386 517276080 786685101 942070551 946817670 822068835 987702357 181164252 969274379 717093520 723660315 252669086 314438035 706901034 741877881 519280730 567498815 104112364 308654582 458116756 958435924 230704684 501420693 212987513 486333684 260781563 514148395 62088784 652112891 911118870 959811408 535882686 866801089 568786265 820793424 167336079 975844407 358297585 957836397 323709491 590235207 347831368 551615541 392653724 485707803 961784034 976472297 996096013 996793210 583983947 614826522 451674866 494856120 867261314 938126949 112498729 950550487 601380848 661031722 915168296 933407726 873498264 988315333 960308231 993540200 376892616 877703086 182618417 401044051 225895199 760832235 815812184 938883798 277684001 711636607 545894076 670210420 978359937 988864533 917368888 977000989 130723891 795464800 202586621 653053356 609227452 649239123 7697044 28747764 226728921 714023412 537091624 725449811 351865777 420528533 104249577 657594864 164016061 585463023 943244124 946882232 662787903 698956410 564365243 570197958 438132254 867771767 602814873 914025361 475301135 952014174 992713639 994435451 7908046 484451264 846660556 959078978 743990783 962934821 104118854 644523863 946127577 983197371 789353727 997739859 546692661 825831206 145964153 533958130 518987508 776889680 771249015 780436214 512846451 674283429 577097530 985718699 874847530 939116794 401046136 525586707 514505741 861947724 937435625 950713913 23243094 57468022 446980145 894853388 801506527 970477163 133980937 962673141 820746963 877265144 733982987 925546606 304797322 691830398 533178064 690606749 584650604 678490748 251516648 775360315 80542170 191588631 147781699 643035056 974646796 985248863 757772974 941912506 592153340 862845781 992620914 994214528 98686949 211534866 611300770 978240688 355690736 565344493 622748801 627063182 415206152 723823365 344524390 946923103 864437905 892469918 104329883 419169989 57614523 948469589 671560520 812778368 431375304 517569074 119755547 680590710 492558099 813151461 461332056 560978344 832194950 977821422 92167143 555282870 908856137 937101212 48964074 986756466 905876248 939119142 22288855 310126516 794817343 822530270 804990655 885212726 600770750 751791092 321051682 788876032 105075379 862153820 315959059 438019599 49999010 822536154 874809190 909940608 446810775 509754239 425411876 781005468 788643010 868132799 15288337 759380391 399495637 981995901 116020054 963596902 830471004 906289554 856884297 892606550 380738302 665874205 351086670 620535102 308644516 675024741 857508141 989863795 785029073 827957230 856339652 886801058 33373696 456538098 432170995 833302697 225244659 361726604 686301467 828774406 200404947 439262968 311330496 442567945 369138274 445867988 453708037 519629491 696442805 797078437 464215875 734584098 839014748 944400363 775628645 981578060 593770555 703414990 81364530 271992133 655991802 782764839 290239356 613297529 337127864 393428904 324503070 388384460 215121319 867013149 436278978 914931546 437359104 768901699 412851507 742301356 777733823 952504103 164409085 371272675 572957683 982057529 760174821 848953825 86516102 846537243 509269726 922361236 96120286 897935509 659860928 754560248 464449980 481496098 886958569 947543130 860874821 993319444 75066701 756865752 169903863 323919416 823100189 849976032 216696630 289022109 886191595 901638760 516245752 656638119 66672724 334931577 447289071 922050375 20562686 760862549 565354399 761239657 644864237 902931777 343011919 630408973 946537826 991557965 770627092 823668678 136555111 327641215 877213385 945348626 992964548 995335505 683300386 827039131 218609521 663670013 47998394 490802824 198679354 716538912 573384848 595767726 585581142 672277352 691556538 764415737 345144272 972277986 826911345 865388971 146353896 764035395 593024380 661075261 648499710 703067402 876328397 888430739 569421748 679114920 923623143 986013963 248288343 735750891 729136832 851384689 624115694 879429344 822484608 889987944 180670902 721476278 474826859 532943399 41909068 222343311 263596511 469291336 754670621 909806260 52987030 354168649 389909580 996622668 12171833 609484719 546598551 883144287 458431388 497382613 268028169 372358890 800700781 978450913 338276059 378499267 880593337 980559024 608641894 636311657 850078957 922642946 232133504 690633817 599068602 852904077 264154992 722211437 841528458 923219178 260734084 484152581 722962662 985207718 978148453 979865230 569688791 937680545 546410718 764127618 843006095 849544154 680297394 843862064 517060955 975811852 414272757 962794521 516985198 666426083 641255964 887065338 763154350 961971715 185428348 810874316 515073188 529822431 597857752 607832520 45901620 619858017 198935387 970601514 715715910 943279975 272444220 450401921 851829196 983454318 786949043 835530174 224745102 737162059 288003683 426369158 995967301 999153807 301975170 564763327 894904363 982115800 123123738 895087289 328549712 471772645 190169618 811902543 835191229 835430894 822073338 999312210 233980482 417966180 574214412 920631683 66011004 329826191 653634165 773117875 45732321 991325767 947434353 981156075 695935629 714540477 528621076 688033696 691192607 949746217 648278566 926747883 964749135 967065423 108825578 132539868 859077055 945944879 520909232 967588423 426005325 710250214 690045175 692243869 439577525 654952848 465434099 513747706 587274553 797449306 81915184 461449899 765316056 846315978 52336738 273705301 125209882 128729011 895723593 995845967 851882905 885992763 147181093 756314677 63843972 97042449 549703051 991864917 350663872 381697913 629755370 646483891 300276282 500663576 877054852 918715722 910296206 917241382 185645589 609272091 75786295 533390347 155685755 378333305 847608278 961063898 699996839 863202023 479973226 551629369 135583598 268795694 314251542 820040554 528409974 651106618 51215979 578677019 398639342 816134466 156201085 875086853 287982831 565639287 572221411 722484262 377057547 596028321 532210508 651131773 18148726 508501193 321293935 368669074 85550558 752972198 208878512 724452488 962413609 985171606 48094558 633439429 370666736 558724354 363132033 457895732 348795685 711238850 504499181 868304425 986935725 997848093 236839796 262042249 54656352 114852699 844463140 969938088 214943897 854119709 542135623 668369112 927456304 958968634 522424639 885814274 604052069 988552794 602833982 914178329 710482826 808914504 176749772 893201980 269430212 787589119 476665936 944836464 604881044 955824086 47783170 291789357 999226424 999360314 876994115 975969305 696103008 772928605 407243929 593045701 75824675 467167847 848580258 905889347 937599305 990598946 870789874 947319432 838607461 957533601 429693249 822098890 192658622 693947287 30604925 287057769 933063720 937746815 291710801 339308032 72352329 670350854 899193596 901201145 77972955 840895156 703715428 766304603 608005436 939293618 571451154 584748001 15344131 372506084 453151567 855029686 956182257 969447807 409931168 496168735 220892111 558424166 375092503 928435756 794425961 936713697 321797031 710911225 221303162 947945009 927932309 996418240 258732112 727886063 829044341 959566067 89351467 695350871 313306791 994159177 506286529 588270661 159493371 943675532 662395546 878239357 35697487 78046756 776785762 982544915 303368698 802530482 758897251 955690594 633027594 982073058 122308661 635719699 247303818 437919599 138597332 477633854 498510087 953182522 873769407 987852928 358391516 887827656 777807268 944052349 703059516 793538715 68615753 498971059 875149014 953607271 344580797 995081326 827820114 913146152 194165787 576795666 146443024 273014076 227878938 957847999 182746305 826861143 224034761 883438990 295472652 566265369 914974277 969915249 608323802 985063524 507503086 606393323 578150189 648680202 388861522 960182927 719937506 770593859 655095814 661972106 975457475 978467448 373556282 708856019 949387928 953807775 755242996 830313607 87751434 419003938 124127595 980748849 379489195 984288412 203646695 706206236 601041773 810309173 54722711 137259462 242341498 848595347 605048216 625417266 498373207 846752183 304467902 508904962 21284664 352347328 449489310 777407317 547399859 966191171 628004460 633882676 494276844 652693104 263321398 590461001 161162624 698966385 778949853 909281857 261066760 411120253 151314755 327442058 595271990 988187601 742441866 915495288 392869729 824904990 974995431 979583421 988416561 993947769 902673266 934463179 936671853 989783630 587370264 737199385 417727767 828020114 711302625 891618201 355888692 728872570 932297861 987575929 380529129 473815232 95317775 710988674 170175706 918164024 967108726 996503448 12284201 386123047 350254843 985906971 400197591 495448466 439483406 723969747 430089450 685698981 203598253 499420350 601161949 837650873 806693733 879619518 336235204 942811007 123749001 272829482 860603964 887268636 395369130 637333071 705094852 792077813 246274545 280669554 871739335 966792826 192119744 427456048 257541083 763267710 699055309 760672675 512224419 874103121 649583845 919964476 434849629 698636554 142226890 947324634 622027369 966359349 439615405 922518857 56110286 169721886 355730812 500091430 980286342 985151905 705415998 706949041 914978013 943913706 977859116 998911957 966182244 993876987 517331927 579594544 603995843 615166758 788880295 872685352 811863030 844658194 196469153 524315025 304207525 882372322 867938498 940294844 386873907 667962266 438721343 945978903 237399541 326864022 142123563 234497275 780151973 845718017 926450041 980644807 15291902 172562537 908331216 952920391 841595013 882284135 248201145 392806701 157942814 846672314 178873253 625367301 782226102 828015249 789217539 851023703 650160225 750704642 513958853 850708670 455793092 671629102 994251304 998904658 800700178 934021072 607255855 704740011 786398936 804301590 38034293 986106818 734382330 832766053 415767078 684563251 892482789 983909611 464866360 718248418 427308552 453491825 398542723 826545267 445332306 555047034 788667575 891933541 880757842 925987319 884744835 967856086 680412747 919768792 357810697 957862547 99490628 745319147 602647346 953760144 334571917 425627403 729650773 949241448 670237575 887846396 295114374 690922610 232706971 382582691 532859472 568043557 513577134 659000879 496354521 996779739 812829973 852710544 900519523 922699965 819968001 891665401 372192107 774515107 266006336 274498357 962898995 998613305 711421663 751844824 515282969 590943174 860684527 908968071 666786704 732888637 928696611 943841948 801873004 808025130 248855957 947223406 163878578 698636249 432344727 802596432 831396885 973294541 544760005 893433732 202243341 212544918 383901639 716341631 241137360 576152380 553737812 822583880 713686259 943849393 815785694 941271953 409996525 539844814 112837115 868916027 110378260 584353172 691199800 897280563 669423572 865479557 585982152 645168889 832722739 859331778 159936392 368352207 671077531 801103218 439964789 811810070 468718653 603422241 79703091 640512273 142500372 271057328 661814179 959281746 130913517 920552862 189086620 632498443 799726679 964420398 655109878 917441759 359350816 585578929 584962129 615657479 644606971 646942160 530404363 572207567 540223992 663558983 909219504 925455746 900484966 959430165 380489166 517894347 231575644 736234898 638975868 991361157 729575185 734003539 828945961 885141137 427617064 848167234 872625014 990062150 262144559 917049652 785528991 904235720 35495890 470886232 141594766 648535741 720055750 767247694 820236500 976846536 101525151 509724168 635600523 693701474 597303624 905869328 471218311 632695842 877496865 965561130 645631477 813806993 903793962 965590707 345639351 948224954 905933904 976247163 247472983 546000885 987864936 988066679 146528079 723359680 804568407 947919117 399853633 567229252 602427816 857862109 805031380 934256348 338032711 354996428 617778193 632167935 803376337 818554097 323452907 870368015 771286084 988284556 294966896 727778945 174738209 500308935 351382736 585934257 466067182 874075681 7543977 203851894 125363850 477366538 543214869 582188776 428802029 961479103 716433681 819201275 255346106 755771629 75580215 212113081 72534337 603145853 855429962 988522909 788903739 874730275 834485357 953697966 726152139 783066490 733260521 916713084 696022 872925298 108488667 997506285 4434331 171591061 275624808 749773904 65007167 525454512 631126839 897134985 691801234 902776874 803806605 850393323 243269141 380151337 295985622 921257309 225519700 317145406 335474467 934513932 611560706 944267826 537024517 807154804 545810056 820542972 105432654 274208341 43000529 541586724 868069187 869818241 920015333 983001349 581472271 677490312 209450547 346760290 691812709 886997618 76154392 148419008 435491710 680880756 225053396 258313634 793162374 800416481 529784874 716623223 491540883 504804224 639578992 741373972 547008807 805134397 408718160 980333976 674379687 885780993 768000461 976477155 617119259 914961643 576401302 654855908 324624741 763909579 102148652 505521741 641636848 992452590 236806690 640494466 220425591 270674774 697612605 811199681 656419014 926174776 475705094 933008793 591521178 924561777 469481363 961371819 992195418 994807070 716943878 768824139 175526525 387740301 255051168 720981414 814161807 967558048 305904641 759263115 569417506 646713209 652451787 695154829 79900089 903001108 522549997 945212538 337780624 404794775 639819450 911961205 64589297 217466274 774956740 831246492 610100309 669661075 196232181 754848115 13154181 990767765 81094904 767224315 245625558 266401050 30978140 820312496 158275769 167524454 565910434 917214998 523247202 820125504 852217494 864317132 372570520 870176820 151610091 312107849 429703726 578614120 776897443 945025357 694101580 961705349 786645868 818361278 67021811 161783527 811693336 969580449 126097526 417843762 250313845 684047022 76577748 525588009 791924181 800309936 15828168 45691045 840721823 986813724 435951988 552749659 310537861 386573905 380897801 586089571 818788819 877758926 429540838 749066565 590272570 850702205 349255614 897007305 631674619 832011943 21245905 956787447 69554111 196731421 714664315 815859351 616524751 814412540 220530513 862801625 178858461 789772453 996253353 998300189 197279050 387753814 10264219 206050252 58056948 593719348 809156422 996173586 560333661 787525072 450276055 594357677 418941284 749627879 463788517 775649705 701756243 892581042 222319932 330303154 566190133 878786605 16374127 446877368 834710839 944349718 315418226 436962203 568370651 978331353 662233214 684313434 690122848 813479150 430700184 967673245 458334303 486924275 674423577 728409606 845452237 946910809 677661074 959061733 657013183 680214415 303561214 452574432 755276618 769057292 580902636 690955125 154254012 513549037 585450218 689032621 407019732 707182205 479104896 875867826 106429816 316947119 252384443 735275817 269224731 647133250 729966673 906650414 900553379 946561746 596081347 799900003 744428561 973341433 596483711 642909125 779498190 807985873 174924484 829215972 39097068 183614749 231931285 988894582 123262489 618972497 197958548 707498352 204749831 863784790 110041849 357356735 182403649 210368228 81038712 154563480 167409849 385890891 846042208 915511874 699266084 915930309 525594645 931094846 262862722 593196629 469179416 589771337 32715054 193630281 766883174 981271662 621759883 963195600 867071736 972214032 329876737 476592028 873805679 972832371 794652594 866962748 777370289 826911716 14811790 678418918 980875811 986241343 645159064 883097026 283730491 332873348 134004090 674848291 145085842 551420120 973436552 976710148 747555911 907578393 628711183 967323831 557250191 664102831 461371771 741331000 534258085 699132157 490613449 695624200 326437024 838231917 192491829 430913767 433261241 927631466 585097628 800957570 48354408 462907687 341710516 662218647 638149206 929599465 691193546 966151028 182682657 542629227 363640984 518116989 381015846 660871647 519840753 823694040 256588658 271188281 392905329 497477314 867340473 972343462 580344317 898266462 281815601 897080224 575954179 846680925 289746472 524877452 878499228 918709633 822223008 951229867 517294320 765223076 321671368 614129355 467662553 689694873 481376064 773604529 670134295 847985485 994867719 999254778 620186989 986082495 385971821 539795910 291339643 812152820 830273721 996187743 263858432 525649567 709202257 762753893 676377021 866932728 45966246 540514052 929825573 960219900 970480154 989099829 222783798 461324187 654352758 720080374 678400015 803424499 89453218 753193311 380746497 548741309 277830509 540962087 223165107 609146941 525613483 820829276 675549351 973931736 266982811 564756081 909755956 949069331 559759655 841279033 979463839 994506660 502705514 701766312 724161393 927676471 983645209 989328693 619624800 644746711 570511537 701341061 36814210 496468987 440667595 685643402 669413448 913757962 274491701 867995778 203721039 609675604 916602234 942235554 927226323 975983997 21884206 354200720 178875402 313359275 723506757 871951628 906169215 956984591 617780808 842420200 859849785 970925182 869068004 934420144 990340876 991358696 807755588 812231291 850429370 964938701 582673788 593559357 45727131 724880780 74776905 985867203 772885850 967313257 411238704 951811282 510084095 998393727 47369646 813071967 654551920 923006163 981066866 983755344 757353135 971888489 45613888 299173987 587688205 980970802 272066259 742510895 620569083 765408111 254605153 590972506 450347505 544109140 776460532 947797318 637923478 640977967 904264749 915755702 8209612 566929935 681494672 893433075 888614434 973172168 762977527 885541293 312824561 796585997 127746940 487025629 213593698 389657974 296746978 629550042 67750550 827255218 748335840 790824563 863418059 960911393 790043716 803798254 725655059 860798829 444450054 527847173 953904130 967482189 980845076 996991261 771831005 808693730 769042984 846407946 203936316 303713495 289560151 314627698 44244165 395447357 631777671 717904474 700517048 729995535 912375010 984521200 154593084 862823477 468533449 540469889 483695212 741888625 874182011 951259310 479030471 928085316 180978664 743078369 804543839 910857826 147598426 769639951 821111282 982471265 822009555 875022792 314170739 529167965 966487262 972769649 299503363 688126567 413052279 482819225 783151428 829247677 642823525 970311066 337528471 814521764 357269404 400029623 989315872 998441556 79801387 387392937 998776628 999344556 538317199 832014724 66162168 375066325 762531672 861410663 398739163 669139273 675719127 876449727 966944382 974588586 390850520 916300717 611706594 615079787 397402862 988199610 490913097 510160247 119930066 610941288 11360279 193596360 307524009 895374244 366741545 415729005 877642744 998891071 775015078 807803623 767026955 989690996 974333463 992686411 842384596 901033505 185940330 306593956 720056698 728358843 627650243 794839917 577340110 801965608 724184769 957649659 770722503 947212498 189403484 787945327 875241931 925709835 541497238 876055260 224424492 305835008 444456217 901120926 957377343 961434647 781353367 838416904 283238471 983423343 927488869 994100763 513928716 628322041 263642271 546155516 701048082 915890265 811428115 857782014 568576620 903875880 328197639 805222425 909787278 984072892 216994735 544194971 568120072 611478699 669492494 823326223 647452908 894720077 956622545 983812461 919885978 994976502 775653496 993559990 846631424 853059598 496412866 695564308 695233476 952665678 889353826 997980131 249314123 430800820 112812780 962312038 180593853 321374102 688226221 925914950 815373891 878171166 167403096 306973665 899926179 986955299 200956039 797113480 219802261 626808033 819141253 964071120 334109535 536716467 649030753 964757941 17552351 962031408 340691961 607389458 776741331 956129394 568847188 895078324 916059630 962742311 298998301 987417735 451457031 850926382 422480708 750175058 334037590 406160498 308843482 798757336 505442231 904552572 105616203 778748010 353528658 926358577 57108172 912911418 377389339 681965548 9209306 443484605 616536947 887376151 791773718 933776329 131335992 983012228 442421617 993183198 359309951 885672107 804003863 903575683 929795015 954754670 365368753 373651863 192493542 477213789 887679676 961454452 827842764 916631440 737204640 771824617 792039863 966163846 406517391 407125747 879543947 907548867 426380573 594975581 305819493 847685493 757201991 765415899 544857075 725930527 606818608 880629031 538673235 886352410 653731000 812838365 928089154 980812167 374901801 671752206 580928188 836167684 328987504 830666049 772616148 801618244 971939844 978568635 814423816 920833148 536211205 656186088 215522114 786848293 23055978 907163786 453369079 487024648 727248211 989512877 766279408 986513790 26118980 657625182 865142969 958584102 543043971 955238176 891950128 897162680 945750793 977534678 148542145 371762199 927345654 979914592 377263571 557570415 907892770 935668126 641950450 929205444 309164067 720825374 2111072 344865070 796230364 853594183 593439549 942536872 711650690 933755477 121053404 496128109 17029891 546621748 851626651 922711564 613331015 981817252 361656379 579476376 943584510 984893205 69424808 383866075 986400015 991665367 662647550 841275732 421320410 972144458 105098001 897241872 668869751 861941442 562739066 896880526 62233757 396151778 329281133 751622038 324790508 561929818 72738560 92273803 753643397 865261573 953465151 991660204 533988019 883283319 756134045 824854145 197503928 942521120 415257930 585149121 95896252 548967367 974162053 997240819 71772253 800318245 937209819 998728531 315316159 896275999 61012436 987719717 72023132 778774098 196686303 450982278 308400314 944496105 17938816 824452504 712314383 842966313 907054930 987054606 785958275 888844850 252594050 950532049 960381243 993866396 469669726 580830764 170938702 916749763 783095413 986435487 949235621 991457028 993752726 995813715 627184792 990661393 853624335 975984995 581545516 650938543 532439337 937479998 289928494 375428599 913868741 994367588 879559852 971963677 877646417 968627009 209319043 741431076 227820102 677356846 762752135 975275440 114696478 534000356 241013562 604324911 374623020 681284565 790915959 947606316 868457973 979852470 301294111 426314633 327382449 676851512 451052960 506188098 889501895 928643774 220265230 729634173 423364894 652098583 37081231 64689207 317801103 602920338 378634902 577543972 142147882 798702979 255277668 687409819 548148203 948601587 854289741 943062607 581003504 614571843 899084990 970060445 850283484 934500299 101848110 236156905 291430191 713460669 503534377 567480730 362537132 875505183 943894719 979637473 446530413 696114181 712893470 810088002 469893316 802813194 430718565 991239757 166807617 422359428 904435695 965235540 80053307 486934856 673086891 849007452 379839519 527083305 890536169 992918023 633213052 661671589 703555064 851197717 56806396 332594233 594854053 814232384 920783739 938193462 142190661 772700720 823437324 964473714 801082831 844629057 434579818 788757332 765338745 854244592 779318523 993710332 340794675 504228608 454848094 678013624 776441201 780199956 443519794 984118848 757878703 922695916 919801730 978595967 388972119 806819571 570704586 726445167 458651123 796857865 950729196 974396072 461339535 602563489 614614074 730850265 183693321 469368060 485873353 790464011 39126635 490155492 557562136 799311196 421209295 865132995 502106139 843484123 158485426 443152347 852927728 957510745 172382841 546369424 198608588 654666092 361504910 593441734 566791424 843626202 225560326 903646157 500044686 754114712 115678882 647164075 153410016 481194524 367486468 854633838 726894160 868837502 411936603 752922938 526339776 856677577 795895154 854448152 415950282 562684712 797079750 958373563 136290531 894780472 476441386 486889342 264579430 424051683 97551985 204619493 788072602 921643279 5787854 346331146 269482977 525373632 887882400 902278379 873776538 967095854 154387588 818675449 248614209 501702025 738664989 800130886 91715795 229249338 768826444 841936924 744539136 767043112 394527423 501335719 660831510 740567073 640997964 899583956 110617036 575849489 311937891 709944494 164791831 281164526 431178072 863391377 917064656 946209761 778495833 883395702 884781949 934695575 665284084 836177254 883980315 962309176 447262652 872021483 223034399 879005965 437494628 596406647 487873632 706002593 6967083 259755807 376708257 975933547 668217158 671669412 774793450 916893309 679509312 913564581 911026807 996945717 80793755 314502705 218901970 666722353 780547233 989370538 62890855 399674069 979928901 987476484 54049718 766754594 320290593 822849521 905205217 907291500 843114454 993278629 225961047 530363314 706320708 797576794 678086116 805605199 251326524 871003894 375349300 988722663 737106891 975405896 398726763 673994198 727483130 767096889 750194059 931983024 485018674 502206424 443535814 791203531 143657638 561761742 3631794 860048237 582774249 758680741 509000273 643160435 395812486 672827009 485608407 799277960 259305439 838863230 863190917 941753326 557542254 873961224 132496244 951650440 352313461 891739971 744351843 928071816 268516745 285575354 687742581 739771154 920310259 970645039 469502025 768988732 113210447 330958727 640094512 988821727 520564480 647720576 56014911 327494158 851373777 968301857 104012687 144641662 96406235 645289302 384731470 631418849 283885380 385964269 735077308 909807399 18222723 968028025 908312715 916208602 126525140 128896295 357754440 737056889 626049703 637664585 918917182 927165007 666068836 860174277 714192048 828607918 760048927 894072001 430357905 468490084 235074253 447655779 126685474 546316139 852933739 892577281 346064603 942122665 744080118 965934180 853092698 863963191 706783617 879334470 2484659 35014458 321418443 783021110 424038195 848386298 71000419 804892595 399628612 655447315 793212403 848727237 248619640 934819218 555600229 668437625 199485124 322747915 955789075 994811063 372833900 689360406 20558621 736995887 492589131 973943029 795994670 863272420 422593074 611527511 95696266 742544999 642341401 778842103 439557631 477765397 594485289 908543001 754554068 774540948 359202772 875104906 165941718 252879129 249176804 997525209 217397269 965374822 594868807 626883651 410494061 750326627 743622283 865301894 706431313 878546997 521671865 632850717 394268951 627084903 748721813 794603952 377566296 650724883 561980001 903960703 483926638 721964803 756060006 814344735 545533008 807082597 104971833 903015139 484190491 946453763 575960575 900392401 548864413 742194153 79113288 769046903 243320505 917693015 104165753 855056079 476348006 746908529 770836544 983468142 79142444 594696165 171001774 493816758 255938524 516582265 961084652 967330722 356144869 520817567 601417675 975141380 985054286 993296735 424634305 597699659 178429274 709078933 283275750 499609295 962740759 966696111 607049212 781812415 985661966 986952294 816239309 964067776 538665636 806409643 692122294 975871818 11356258 588572718 160286754 500155023 471878295 968959052 288417359 825912243 299520644 522105560 479151771 787477195 407411515 832384340 115572759 153913856 914728304 933381147 332880160 840150005 331498217 873211400 59986527 517652684 808937680 973572295 190161564 394993285 699093056 903304553 814046497 994694350 751571430 939463278 985299561 994674055 331604935 814330224 487945595 706034147 566853131 806552243 375388485 781304782 169891859 541667661 411030642 651846760 173236559 583812585 160962329 325964174 369578156 914960407 505589841 553736528 397009720 966902871 620306712 797744025 180356785 676012541 849621163 983446017 975403312 989454177 996514620 997752850 483105628 986884257 357736362 774370151 966252091 976439491 346376149 548606826 109300178 869313429 205428632 882921368 597097515 847935824 54424353 691004763 15479414 811494441 545594568 849125425 215897044 892819939 678044895 967577574 370370317 612964608 113315300 911536485 676636312 730805239 701719949 936176950 839349853 959119079 879914161 996350532 76700811 913799469 630909939 953016523 778598647 970053371 391437733 975761641 697132678 726377109 940532665 969409662 867550287 915914630 348222707 765503479 219910717 520409200 967838933 979135106 200776884 830432357 345886943 955105934 191738390 700696597 968021788 969523676 653170619 701968139 779415213 789673220 315516038 758520194 710603167 983661784 16890898 734191961 122067522 608984936 532352265 562775742 83280459 880177931 331079775 706162293 731927564 817806822 437993349 858656371 928570030 946757223 19512612 842507561 851925729 978003653 633137287 987850102 742613914 766070788 431481880 655559173 104810558 769664222 181586966 545791121 814577845 873113660 639078932 657195777 963399934 979589851 759473810 799562411 639328465 897868626 139183461 778661990 49024825 573164984 988760237 996418381 230797042 458030713 793026580 931999108 92924507 194702847 130565396 939111834 260836681 459498105 506585080 965410932 519705054 884375914 917995436 947479568 583169147 974363936 896446323 985070619 756508525 766758895 9436084 731067592 106190096 851815728 799014952 846528400 481566586 958946473 483096861 754756412 241122472 754642643 352506373 412142131 860803848 875414275 235941552 396747187 238992517 793997501 965789728 996461723 272442295 953907810 897268708 941169799 156033763 244665434 687812887 891620247 458476438 868946812 90590089 163307543 953837887 968079776 149573655 745756372 615924099 839800256 754831570 767853720 714758435 717459838 743187369 876458696 928590382 973631921 337191021 410649853 662379929 783114404 623913585 788409306 487912786 956454582 222575206 658606850 423921573 896247091 913595774 927831653 9946675 362224019 291421246 952155493 990884028 999124227 195593749 905957033 286037830 501813408 944364002 951686337 387250858 650228694 728554718 893356170 41416261 706870072 865341530 892167021 383565921 757763909 544462860 612041901 182554011 308912729 801947508 972670040 205402110 483126323 673348709 999233505 309636437 580686020 769274361 790309513 181967455 534836296 149251437 473172024 634916407 917073317 70921887 250481322 141702865 882318807 431348174 912982353 761361360 947564382 380718968 447269011 351813664 970590591 419274541 915021159 578665139 944419174 249617678 269681441 271133932 385352405 741471952 783633741 874150328 895830593 670455489 919727885 374467199 973409334 827074454 852850537 756728433 774193750 207438634 510595533 91145221 958848108 194459179 582127645 118876664 329610896 718764947 873818692 733028952 828089745 369476326 889990629 316337582 756019142 317971731 444965814 230526861 659433896 731610664 934306659 60621714 202878442 867296679 916681902 817947003 904233158 257394075 871159420 22207769 538024812 475361447 987351607 923873718 933001806 951180664 952952378 666737960 899539420 312182280 773647636 216214621 375149860 70928818 695094814 164865362 489317022 917112075 935130502 76046432 945712107 393922345 807760929 58680785 302298422 875210941 912672174 41493452 961761408 688572962 938176165 511245669 720866354 86692671 884127043 855588997 892753924 485862369 487532998 774472420 897003488 167513141 190940385 574236853 619281358 483056732 653256442 479092136 809217897 445953305 848899568 24201356 653561399 314931086 739582910 312778392 828246593 389435213 597739091 915971019 931581239 680749159 735022242 988330494 990603845 77832465 939504788 295164150 790708827 814315623 902827866 967369964 976001889 868417145 936827098 293392929 593866281 628948633 913973954 605027426 821623592 658373576 865482212 983984240 992945068 649280553 886573341 751581046 875815601 484576261 671839580 409671867 479431695 143153200 564079681 171555013 969161044 244704321 462238445 270788190 273454090 390602412 984746266 581070303 853019030 677302853 959848710 487351463 757768245 700620439 756651315 269418332 760765062 240668524 893217023 686512041 955975111 184116182 375600112 602147265 841777653 291842534 387377687 99143843 808107898 960955579 990257954 995962072 997626808 618107585 950379661 219522202 550627220 361769732 625741555 844959926 979936398 353130113 876688789 127511426 540561989 398151594 612550930 566459079 575559423 301790592 378679746 123175725 552969202 571245925 967255885 426953169 885028712 597842329 814742677 352273809 865135567 463239421 894228330 789182626 818540116 958912101 978378421 548628945 865992916 648401525 736376374 479559985 746207648 20274474 741836911 881805276 950079919 619610092 755662262 395275207 916875027 524987106 979061372 748897609 957152786 411396199 471993412 847191429 940896505 756309598 881043662 665679592 753089883 298841818 841132729 827551446 884937266 119733734 392431384 601267310 727691781 292606332 444233249 13105555 477265793 322601252 592798370 304738719 450262259 119646668 812397567 752100076 898082620 419872578 881801103 154948161 659691985 635592800 781575291 292475075 620462572 63166064 257505404 121459776 602266330 29426571 932248669 973581823 990279562 906849970 935365475 836986653 933618328 622064371 637308907 972547454 987506152 934914574 968814228 78468126 620875908 577074643 791039289 18787161 740076569 474014514 526739711 862670725 875483285 638012563 835583052 560791775 751921511 38427066 276192936 378019793 858295191 450749789 943976297 330207542 575664463 13421729 503752129 316973205 857331635 467711363 744078600 824769220 827806354 282121889 674168563 339134676 682030895 804141210 873065205 907305503 970334980 900662273 958021246 913732131 928161075 813575167 922488408 135013530 309423531 277330325 353441522 117031685 663264809 653572509 938387647 597302819 651094115 981787454 991366602 934943502 976123394 608059086 653182302 151263662 853276672 791519806 792503963 144615777 207586130 135767629 146909357 503213491 940793532 621665248 990610425 687648767 922341739 465705175 636142632 15088020 147823211 938598665 993274478 483961235 529430036 899677362 988735429 225922829 728791332 856368332 959304386 958830284 980377420 625267338 751539409 414359485 610302950 15660185 961432380 923198715 946851713 106740454 650596842 136393779 354071055 410857893 890789008 411850300 844016676 500881032 828122950 467072921 559100042 659957707 685140639 814715949 852381723 627142941 869812547 410804092 520936747 799527369 974955754 177113814 693929536 771939161 980027694 114843972 763315299 286382508 382229982 206234394 241308353 448208638 940675951 583072936 975049321 799155818 828667472 818428085 982269315 559496433 961143440 140587250 558486005 280330159 356450368 444314617 484480323 619257930 973109742 467073701 962574701 23941464 286594256 473602694 608010398 248199152 763354991 994341797 996437565 618243497 747320307 490203334 998307542 226407012 466864924 112857759 984860712 482363122 852344441 242286067 814333095 412776986 957852931 367735618 994882097 731544817 770843642 388143773 612141135 239440913 338626518 259654890 641297208 315996631 938990523 218465296 584195851 178641991 274247845 700601311 720739460 140535497 528672658 820947345 935472641 879396503 911534198 143586360 847508452 67729357 680270859 883278839 986236576 882197110 941581376 380333509 487938584 104365395 540341228 601639473 723472844 959932406 978090789 796752448 982394739 616570992 852690604 427544006 470852192 84959113 176229945 206520564 486519531 713572703 989498551 588867903 770155691 500521973 556288220 471149305 549779056 82376565 500802877 327696345 903108336 423858249 517624882 964219793 980350303 930972703 965259231 55138354 900206416 661770462 883837155 319885295 378202516 540642356 904410572 321249669 849552773 649618895 745093922 296421192 375702932 588225289 790089405 438143423 910695328 145493479 982206849 356668855 808613443 871893667 890381763 67737564 386314250 983735976 987726761 143553397 637884585 68926545 805981489 468746717 933775071 963148122 987736883 208293864 321109489 359765953 666356490 149382690 805163431 445948133 827273867 693305555 716869049 851082267 947328787 910202444 987983302 670418518 907190564 184073682 557649793 4335921 585491152 867830995 990942436 611060257 709380035 844307127 860273810 968999694 987884459 137695003 315241403 845574945 864195013 784885342 954519939 708332590 901514863 963336358 967825562 970123763 976123567 898110037 993019127 241715154 848840524 202743539 456890982 732581070 878937213 360584507 643699008 62360177 660325219 463712811 521577525 119958784 774849173 101810784 192219230 479348287 491796307 834161125 962152506 994014746 998559651 837819180 853219208 896995466 975206678 367202678 691886324 656090742 810615497 433432788 881202234 927076084 955584807 138076721 590383449 365607733 946485638 854198634 973485348 619340414 946543221 406051413 634126247 436642123 595255559 735205317 882079952 635502201 791757368 890146076 995479616 672623587 819450466 780387400 890823151 688510422 707027493 666866832 717684532 679166833 713594013 401538867 787867026 5137113 502814607 55120937 326363790 530965046 830429637 481337371 700928264 450876623 955370587 403770592 607555286 188032510 221757871 329961417 954382634 619108327 701658810 824550224 878407621 304466181 477353060 54675590 344683019 115079871 308665140 511516411 604257266 480115802 744415744 561840326 826900307 600055598 986233182 671200833 842638989 799637639 823437843 873636536 991596917 829368089 881198904 436691609 634163961 45450034 976491445 407897540 482205396 890502987 945845569 111505257 399521283 97227472 364942495 947940112 968283671 869817214 970742600 386030183 955444778 669606369 790224143 615542319 830707376 597356664 850578630 691588155 767608184 622181919 904328441 975268934 983183174 86541571 970207854 146438080 408199340 6341279 380521940 499396953 715479984 815246355 932968879 500309171 860192051 693836911 761025874 899408807 991364932 407487627 997115209 632851792 824739137 622573542 992739692 439543302 860607623 822359500 882660038 472300506 625394786 53388752 939089921 627628378 898187907 333226199 419413863 240136906 343317949 81188617 237193338 902977239 949255009 694941228 953474089 676132221 985257893 535158807 808080100 16963262 344717774 892912503 896083480 175069988 819671088 214546154 542831235 225586306 286638967 510648944 655597809 237152345 586222660 674916243 756858541 640531357 665447456 68782273 495489984 182303493 399357732 900611567 927695245 596593409 664070457 287439110 772997606 779940829 857503213 448078657 987572527 698631573 978391821 677584145 875891053 353353354 957778244 290914498 732405064 520703332 956850632 665084288 834644548 22062448 57998431 911385103 931007084 528457386 972940929 978199564 987046326 405030909 613363920 713811803 750452154 86224065 498781297 753850670 952235277 842538061 921972639 54051873 933065718 250895673 995029308 218155629 942139179 867214214 913613493 798204670 847308206 9498848 495514050 167454207 914835580 637862535 706145478 783769337 853737278 895822798 897624114 583447894 697545630 576488959 794083842 615349538 986440422 940607681 998981149 373102154 402925089 151813158 596122903 723602875 883268708 375740812 427194025 209621861 358892265 108669211 910067769 388572053 883850752 739127906 997715851 474932106 549207315 431345489 466598624 16093367 303703583 972359544 990247452 664921466 696968118 97676559 286069332 536638138 593810877 619032862 944549409 483044793 829200924 28151044 721546753 615647507 620913745 900919012 960951526 701730681 761234600 509210407 574665677 376983684 435103658 82454330 856554020 561446059 903337971 569104762 881599263 791225443 909657594 88771250 728415195 107041335 691982913 400957205 935506517 127420739 652394433 70440730 411718808 143061934 807805022 207198482 698155045 962312353 992049906 282337246 548727131 252199244 975192054 689338480 725263043 413736980 607627537 750692283 819854961 335931262 882339795 936966990 961200702 796138841 835684952 927017833 956480165 639464698 991394117 709058426 859020960 643107989 687223385 299003160 542886174 34038934 491724018 338379983 745373746 564508360 814710782 503455705 750080722 66021636 370475477 983129004 987030040 476403096 775025924 143276959 513593882 193164305 973762369 254986613 774972377 255698369 510103519 735436820 812948049 797509450 994923765 891673217 962782974 848253425 940110392 303424947 935637868 341018290 921827249 650083839 928550662 363808611 857061568 885153309 893890880 946947200 974533727 937342152 986505477 854995239 856881761 872416727 986487200 185439258 715715282 306494977 346477697 34093226 708287336 655867477 711574986 249305157 335398086 63469598 613668102 108797136 892787239 127377060 703435741 662587156 950029516 746160775 790074475 993186478 994786410 39533552 761647462 568821434 577847076 960221667 999346125 10187887 186608228 690505202 791902691 768067420 815778044 858195768 875936642 716077870 787450375 763007842 911105776 125855273 441596566 165529893 862602819 25013427 862992270 864989452 932759112 859266940 999052792 452111613 527924186 441953832 808679974 806141576 851351678 865881974 875792458 122427043 909553718 683419735 729035657 388821802 945519466 193335505 968277967 785999630 981217710 364142725 533532984 45536263 368242265 638118945 923661717 469338572 558476678 126591031 996316258 138887261 196929131 549867532 851019458 601853541 942483237 801161109 952673046 25262025 903391932 758137359 886793551 383848662 406182516 930563527 940128966 705325570 982409504 690520352 987293594 995272061 996727953 843231838 930759040 268445259 759127601 844503309 878536182 990951983 997088207 627858997 880972613 37711682 82501169 710669683 763606575 67848445 795288627 799399773 868298236 99743108 727295192 766147079 933320911 606375236 744326450 413388227 957237939 812838033 885276652 23769637 205980631 484739938 773010089 438490622 623603500 366596385 657808243 466596612 720864993 338581131 751447023 321587700 481615593 192573515 807843881 431592342 667470930 709121956 775460513 94131680 393150067 836817680 981048522 110435519 807843091 280641902 382436002 810323938 927181589 336189968 678287559 274018145 723614772 761204643 921089308 728993901 935059030 199813800 383885189 60037952 836726402 119388753 320672074 303475745 491624102 139205418 612835821 826988495 908410433 664081446 855391449 803781745 950118407 847000135 948132628 613018108 619745729 569967828 628245740 923531492 987541986 500564687 811737856 366733428 493535139 800572330 961456948 315777946 663822068 707295567 846263731 184964504 503646984 623105232 816961568 580261471 698331111 303559815 982143846 574067865 786584289 299273060 945135608 478858233 615231917 763775072 974813385 862382960 909784350 942250941 999272331 803893664 919531439 145483376 742917273 385683680 542509793 406846420 869540756 966570387 989980593 288126683 961136679 59870619 514400170 177035502 827256265 398164962 930898560 176124531 883045906 229272901 650538254 339617378 838789654 845976264 918433821 136714146 231629819 516515616 905841019 802917333 830207248 926386483 955507902 862338619 888630590 959979225 973445668 683806709 707026693 647239685 946652113 171103940 328875188 860936484 892055367 399057202 855768159 171423177 622474230 764387843 983202059 628611436 877582769 413976099 780931330 988348655 991642474 593716403 832758049 249252705 970606282 23391705 37934203 680874013 930917222 428738310 654020003 998889913 999049475 544490371 978920028 555445624 970811747 84043061 687216556 219941131 354103627 53968947 364293194 730059876 871123139 735708628 974410381 374953779 998677233 972045686 991271273 799906226 905159768 33431868 381948091 945765127 984020855 512180521 907173826 639633700 992757477 860140063 951641556 931912353 979455046 580213240 811293767 891331721 984958709 915425069 950206800 811445320 919387839 466848276 557929073 694054370 730446500 599953898 950590101 934932052 958755110 636290661 849295714 145900488 513184386 151999152 927445575 984806670 995930098 294074916 874312670 210773799 332907989 438380582 863905886 107185974 625921112 312099277 681474909 146362347 926780968 89144084 738913856 443972614 497497883 288195935 443619159 8666760 813251105 600990363 651019618 36044992 897839665 46587074 390699785 92194999 299358166 73515993 475876676 661368971 729323057 684272326 935197634 263740446 476755351 456902761 537187301 564611880 763896783 903743676 905168700 756041646 815079667 787676337 807285567 170881761 176141662 214814351 505308350 738692799 966246958 152394737 628342855 480030354 495903435 492178176 873849617 853535195 946846117 571157642 624240291 690462754 694200657 928804112 993956265 793603345 866359888 794225285 882975483 731521407 796103270 20644115 235049345 338528684 911270493 172322222 488520771 923451833 935709352 950845783 958516500 75209895 128076711 475406041 593512245 350371864 931412310 746092935 831225485 26017200 996495771 300367431 921734762 70442382 193685124 859020332 897569896 462837321 540619058 912754936 963772543 781663519 832043729 973668123 989869065 958329013 970086908 468496584 475715924 678202155 840473432 245010887 656006018 466408833 550483333 38929436 291216324 677919835 751869518 864056222 940484366 148854413 177750122 96565878 717181405 987238788 989223224 971268095 982082226 823009715 838636326 916116366 996668811 995638567 999312314 249381941 647880421 330517857 372672353 367742299 415867019 550515751 666520013 640160780 746452699 539231973 808377664 825627306 858550310 588385320 800172522 26864785 209200934 440418916 632113862 618455768 985754573 94128723 767415331 7764517 817104662 352427125 730768821 682066872 915992531 919638466 936345797 88289511 938164568 651455822 973209360 21915261 498914710 455293462 608736402 147984064 736012199 128158041 338958974 134175704 968894466 50360633 441651442 482743579 837494568 151593448 891269110 832114283 998803047 247127614 531980356 425619577 780178484 139512719 234305190 133045568 778167182 878781807 980908824 365893440 942488512 453699012 631469619 939172986 998929621 807300674 867416640 447441422 970830655 228022210 926932255 191494694 345441632 749302767 926496109 341198495 785718224 755331676 830950902 612579609 888642705 19303061 53508261 422596593 528185589 582396243 917362505 31653073 329551860 62128511 381222028 605992296 859254274 17823553 841632205 871641510 891640610 609910049 642934276 13719668 794599349 903186382 916226003 875300241 994808276 379205310 447590254 369968571 809140305 806089987 810358662 419751327 433784584 817660641 916731002 550099344 849684811 270000835 724603174 733459615 882968926 37639214 854744415 595731151 906792664 575057247 601589578 980229000 995688690 926077250 971967613 979790597 989859960 401592960 497027656 66477221 398465892 808983393 828014220 83695795 617718856 377116329 849539755 810573400 963242399 765951561 989539843 793120709 869142707 628064248 976557535 638560252 708543829 363183791 951970226 469591727 951530349 191776035 631492529 524753502 843698748 731469198 985682404 926679417 941133336 807651549 946083600 712426323 962783851 260440309 322893440 805580133 992287755 586670391 789707072 669424180 726642407 225787519 238887202 121438748 597186314 190605906 211844980 233831478 494790202 733222115 978367403 584264253 918429394 114491402 497192998 483345466 921295485 268258521 688935293 927592648 935718638 975973006 985596672 282282010 815357728 181751478 462869342 60877256 613672743 828813868 871822134 816952283 840061550 314852353 636412368 404956565 781665928 403968574 974897633 866886889 917299993 292055407 713843331 956657245 986300535 388458830 606832573 217653001 984003606 967397225 993230418 316172696 388052848 998623127 999155860 219639833 579084576 767465431 884133612 844629541 907887377 268087616 773267931 995850454 996852624 56105016 736957982 796899690 923445790 941158688 961615409 91141553 934775985 371965739 723628922 218038259 573792252 929285758 995218562 717339494 943577640 284764646 480114356 670402352 906556692 878763969 964327802 951942907 989661214 397436415 470674536 88343869 588722023 268981681 298606202 903962851 914489805 928017092 975701705 748966200 834307085 790946637 842706593 486965347 937950673 179886010 843018900 691085426 731647849 789003083 981835531 392869834 457905530 314143012 463162848 450165790 840837440 863842268 872753943 62964379 672680984 821511123 829674524 728251555 882947786 632976625 814741929 40342454 681105379 237946127 914781781 367243931 517545474 923015786 944549943 643473528 784669050 390375667 994742512 692619466 845762515 377620685 941192402 705815271 770391577 128897158 144152698 445030103 614188188 246034504 647501772 474262960 483492346 73067231 578239961 237847904 245589322 538538148 800071189 257450032 705717219 140719827 417979762 553669712 865916018 535161586 857055808 386088582 943436171 362009689 664074401 402889487 462135482 424542280 800535705 838501203 991174525 220836802 449472006 10967323 705731636 690903348 903397405 221859348 989852154 956524493 979843916 586405104 849050758 219563186 228785750 217617484 298959157 876526975 958112499 829252009 837085255 867714304 954621013 417980788 735918031 953709699 996557158 302658644 951756904 480062356 704967187 642487159 701146129 640722623 743705639 25120709 404457762 45300090 192482066 676212972 725377580 520361728 684759432 137456101 688480589 636784488 812900691 201317283 396483137 879683302 912519151 380470109 542538594 531550736 671894389 505222012 992183314 450862990 759475884 402654829 591269499 76199381 636862734 172417684 984231023 786988002 917483113 302372950 759423884 811537134 857651436 670956943 940586095 801457904 875263010 72684934 231860455 915225623 931445463 892427788 896029083 207063666 556835625 558960292 625264365 326064402 892682666 799886286 971418609 550348897 929595576 779742061 836524883 16055863 957945850 772896720 829846369 392369375 869277542 680702348 952431225 322527890 338340659 871805338 882964124 557461677 879350677 154540092 680994571 406791418 755130244 748609910 758352341 355915432 920102738 776597893 955611310 933580226 984823862 387548785 763551939 374930943 385747446 40623159 869484727 135125156 202774940 101854542 193981428 206529882 406188026 225453341 472563529 97499619 625088136 757384327 779797977 133313339 703888107 802080314 845945316 104778241 303527619 483858151 487136312 97863120 876795947 600858264 952101307 624946143 798834655 549056152 914907182 482068550 530786251 161048810 453325126 806622803 862717215 667134447 906206526 646360719 903133304 205436133 710042080 772998284 975073946 814175704 997985527 903897921 986120366 655883404 840071799 995471606 997883804 170493880 393919107 42622711 278563432 720142264 909168673 666574209 766577960 947912639 995984583 9406361 848774167 92097677 568168510 860436419 895444639 15118684 683758711 324482133 751043691 516912855 759055796 311867405 497437419 413196173 681471793 350715229 678727370 900991113 988061616 671377306 921190203 793635910 918287372 295290608 342123559 376393910 421180412 66250715 102929713 212296078 291643930 659489751 882236299 251154276 811144300 859900642 904723311 408827920 987286087 732690155 797624818 538395789 942420474 781096468 971314966 936428511 964616611 771684450 820975684 875263712 945204408 419997557 686186093 700177086 784964200 634723249 829095602 119633543 425473708 914226921 921544036 361088869 698363874 190870580 281409329 954693346 964594278 649576896 912300354 978545593 979720089 645471687 975866386 439579481 750623512 511762242 554226162 927559055 975385372 860431656 949798658 217743295 446589625 997879864 998482900 177424803 557021451 176046651 907821646 440641421 939180719 456087992 921801128 268683275 524142279 611200247 674994088 628475041 860141699 427813393 647944236 735027551 909061609 896515721 950800513 880888157 993685294 713686775 776468923 219541500 840336365 274316762 568988160 823216455 877642841 970942802 982741810 694909809 791023281 644808675 674865536 394059129 550805767 421054418 993169959 912474592 941871711 928644123 974636758 256948671 556211428 255694640 519818898 127311666 199019012 286049514 513977200 668123799 897898818 470178410 870529807 898349365 948624245 706749714 714016597 107787366 905721183 292417364 512884702 223726900 267314479 799928570 970678260 662281495 955150799 738095413 788107049 463246572 631483583 694487135 956523843 448918048 808829273 857872185 948609339 180881949 425581675 437731473 864011965 855809935 928942449 209456656 541856168 770753125 793395455 617636462 627362638 788810831 993638809 505496756 732849248 225928678 258878250 782865913 966032632 704520084 821265774 656559902 660718553 34306875 503571818 129545422 836215352 110108905 588534985 396111979 562978446 686428276 982621708 779718947 858991421 295650549 337286222 517880000 586203453 93888239 868273666 171352349 453960465 316580841 968023144 330320944 350382758 904695374 994871611 295126402 590801821 692004114 827156820 291101826 896909456 958290173 966332896 603032474 670154396 8231323 875390765 604373410 841677406 331069943 691753624 718581074 968537843 56286203 453111847 784379737 990260932 475026000 862722704 640262792 819964653 534104078 881096608 804149854 924019217 127635630 344236867 589550054 973553049 412335471 882526397 740178873 933764790 380680136 555947268 409717397 907747336 452290032 978330468 647197545 658464555 570823499 818269943 151789655 354782344 58538278 816163723 397389065 572755519 77674736 537517309 405950408 843456104 634891690 877952141 261674402 346756563 911496332 955999132 447238750 475584295 517074119 855214291 854393321 921475383 921012386 926096747 683622447 977789884 359218634 394446318 786575796 922936105 69137244 87992296 304301932 781498938 779248283 926312198 896993444 963466040 927215780 947857187 745623913 909208161 303494983 618668082 443272946 787459644 737755999 950933215 715068566 821541735 902309104 942277271 369657373 704157544 997295036 997322752 760329562 892463782 803746049 804767588 606884632 710641723 189688592 374441189 178642460 194536076 707440280 943007343 965713967 994416096 534461986 965522354 508216208 778292696 738995178 876114315 20576597 266477681 565336855 932227231 887088270 969390451 213691584 723276968 239781839 712496920 50710922 994785144 426813327 855096952 476996142 839034980 389399598 395875671 575758858 576124607 382044592 488137780 259946733 559745194 681131781 773135325 89124580 860985764 121564456 344575914 296766315 589113733 238879299 476313794 358403515 501624232 144285104 643262323 68810974 585909967 168426893 693927236 819230209 983471060 858364050 993466426 147045873 798344634 300292549 819508075 43230928 191401193 860999855 927909471 402939542 435206497 407955310 535510302 417101157 621420382 799719786 892698538 145510503 744135432 113014352 851887232 892547481 952733870 374725251 702657078 915132362 934915054 402771948 883083069 388109316 925691027 190279126 751648044 461113547 668225754 17590049 216028999 293833493 794630597 320367434 951396723 697574078 782026836 631885491 806712451 285553940 479645702 269271734 873278446 958202790 976371452 969384716 969743193 73344515 943295643 452045586 841188535 877567171 952868627 442839044 728913041 515465141 981119343 145179552 288821427 601914019 836982653 47926652 300215880 645343344 672711619 642268773 851989900 85928827 219504074 361501980 569874654 35482288 527350972 60276956 916487351 937902771 998160010 393146347 707222719 292265547 953194625 689755138 729789348 919606583 965658442 711801394 944655107 846146933 913453756 287599288 645606525 761390084 877351475 943527214 973824061 472472555 709915295 383793046 503772063 447723430 765395145 405038132 987692931 436545230 900969208 136390089 787102143 898699865 956870106 732900343 826612542 518231168 825731662 503109820 506207639 646853156 899829227 800722396 962184282 843703101 930507473 473495191 666921795 697262355 847823312 213812267 772135603 352931490 972327320 563726514 793945966 434503984 717786918 164445536 508844197 487943119 612885563 176927325 895146802 351512285 815418877 693448211 944435543 982168731 999165685 621562404 628281242 195556352 213196363 842299381 988249400 707367590 773422139 737854302 911116176 473756240 791147097 490193214 896083906 660261946 866850830 124268937 366235345 153512634 891653096 735393579 805434329 681728853 807023829 327777165 565763180 999331692 999335869 454074601 639775365 167382016 798655987 686313143 998576749 69160287 554881765 93673463 970397356 229766440 466969947 400080273 456508517 893929908 990096684 880427271 897528127 253798606 769792825 247616174 586071816 56337860 215272687 610555300 682522286 152064981 581933990 288469142 531332955 535118547 631432067 289001837 997805426 930323888 958056734 721853895 985667781 528320758 751125510 338740209 707088235 166458410 770623142 147031303 151408193 749767842 752371172 230602305 528643379 498816958 830745987 117426654 689379352 630285142 701526076 206771328 219092090 182206953 413470475 604774716 876895554 18124775 320673506 6030042 233982364 404795571 716373635 565722426 597509114 168067800 571680150 844991157 965912748 435689636 758021398 575689016 779177699 551116225 782821876 179489220 755567085 862348463 898853935 818808712 942532795 890877095 927810577 231796462 729094265 242092634 353472043 648409938 724494082 114025557 407997329 678955502 766806642 302700276 827713734 477351411 688141819 209996622 263879041 61325364 76972820 532773753 600849163 802403040 911774275 9725019 552234134 363923292 906124608 99759508 772184715 665070424 761668318 861389158 913124172 400765201 799502380 472394743 516717341 91108560 785674917 475640209 600629128 238295253 554827388 461443158 868944961 286516406 607915353 507140250 726477487 525280615 880021986 598006206 854323085 699126801 817444048 826195807 891392809 901910260 959902989 804958680 970962821 700835724 740554945 924535396 948456243 187794646 212188679 273783436 911829088 123374159 273026005 404885697 462315400 995742267 995951147 557398028 661457107 7943446 157557065 203149228 687287295 261868083 880731931 95016908 973765600 371452314 903292494 573262733 714496663 602255801 684100402 770940002 857877612 907139819 961927449 848613828 999338024 150356833 624010999 705861696 919124217 960900480 993993625 882714344 890416339 943539282 979586062 400551235 528216006 209112355 452710660 275017705 400408515 779267265 945347076 242717127 892837433 122357946 289935540 985878772 996846999 855505382 938404895 664028985 823456057 496751817 717511060 538382320 785141326 974277560 995064896 593810102 764063093 132652698 891137775 400572401 559633735 880283224 928492064 718661050 733109746 325517201 602655398 731477527 915171350 568923357 724139402 217091829 428062734 845835880 894396311 630867411 960869187 381311686 964215826 61256114 492524237 917436420 983783297 597732523 840887021 964482586 977520720 526716995 671104046 463846186 990370936 293540626 654592546 272399902 429817180 144361082 785482836 266294458 810640485 385741558 394686883 127051590 504368511 107507112 322564867 907508174 965157883 108371218 680078147 831132482 902404054 919018646 920880741 623281752 986868665 763259645 911937377 561511041 992904141 674576274 798846180 870133415 996421462 506156421 794896564 383767156 702508088 736253535 887357785 367724289 503602585 788659798 809885160 914998462 983397563 352191527 448866335 843514613 847815841 842144857 989098161 483876155 769108231 340245277 839170745 14305769 317934604 255946620 331793076 112190575 310622393 357326311 950191400 169626665 216422299 229082745 935666104 910347768 985982652 586565261 896262166 837784454 858249240 299168969 821096860 674611707 834186953 45466383 663351373 581847140 900730818 223293947 761212387 309494001 532443368 320870267 893273562 639918226 768040766 880947750 964030567 688073911 945096695 122976005 426035635 735293515 912158586 744087096 904873106 714987515 899389402 969582591 985090437 844616916 866813825 86085048 296310441 223377406 339868371 764396608 777627858 516502367 546807027 261726493 628806782 368478811 670764507 535778413 893226516 116432982 126993365 682613524 887797707 125032340 928334728 694915894 939559283 603060591 770303333 474778490 760768455 814889250 892740340 935457066 956517531 297717796 433412797 152704882 520694799 544709578 836537312 444399612 640728688 945335094 970747295 747282990 945882037 117614025 890635261 937300457 949184579 608861720 856542398 366080888 742349889 110544115 399662344 532594849 533828116 955947821 996833328 29363215 473749018 90746222 164625948 458608535 707944956 81634486 510065367 411233163 821798423 727235960 951042705 440620756 486750503 459435140 573385818 833588602 921502397 213351079 989050988 19771652 187730079 59233232 786658877 277316399 663088476 187053567 950172939 899991623 969558558 378740953 460746365 480081751 873358117 621881646 891766984 161445812 242160356 977398102 987437451 729046194 776396872 120924188 958378010 927545905 998168219 322656444 888987977 209872739 744277318 63336262 945568141 594243995 949402953 911330021 982910411 398579040 802167856 641461830 807929371 525058148 587692512 6849147 236654626 583500018 959759836 682427380 832299410 222863369 929808027 940081043 962003916 276110811 951241451 853856476 854337063 455148824 505228233 500748400 721370932 14605946 17461289 855114038 992131478 551428445 921857286 26435806 183748548 294312877 736122403 620126734 994732512 893340324 975216585 949897923 962850678 947183007 948944714 549763544 896442493 80666594 964336993 507554559 886478361 935304473 980258457 238004144 949182426 780202435 901590340 464465520 836492143 455596136 849399657 64746695 953729910 138294265 702188384 480274165 772392443 316244887 475682141 710215117 848549956 321397207 339225452 447570462 757493757 26402564 991099121 99341082 766681595 686436412 975723356 891454124 917738420 796516340 855023991 775754208 985506399 316848213 851504375 204944915 287659233 989430206 989754129 147809057 374190023 258025998 749048986 643904709 740678311 820049484 885870696 817444259 844200725 416619345 438448012 877297467 983486252 762664184 863446902 297984152 830697097 721232746 813948744 99944638 643397833 545279599 636505317 585509087 664815076 269270553 540056567 175049674 883481588 993965557 995224152 87210329 454493682 728045178 805823121 477950506 845299515 161770266 409690125 220376912 636469716 805645734 957111823 942544700 980063867 934439062 951714855 398526477 544464974 411340722 819928413 445448390 535485973 949958897 991793604 192870195 804711328 471030218 862866753 977791688 978870156 863541729 972892571 291259907 512101862 126407819 819374569 514525485 758069003 716336615 907593213 740795791 949880705 918008670 921724996 319910528 441204872 961925765 995787976 729590433 963523775 823916480 957177031 106116738 922738586 903840927 954730343 128108087 666291356 897015450 974037949 845980429 923215622 514113693 968247311 430772986 896843922 415844206 989764746 917216688 990536322 47960955 136898946 44201616 340557690 352505601 370514828 513849053 690011086 140815726 600089911 400036662 753287217 749925346 808895604 659218928 929049945 995829887 997821936 513269870 601694019 526144053 577221638 288381467 431313652 467470601 797396480 345617202 752788142 789745200 985145700 4723240 217813885 489420421 869060267 117817916 337373091 790058065 943228542 131738763 845978641 363145843 718540828 585126158 713147410 242695713 559402811 914121852 946871438 118020905 361339400 153436 383281569 378688741 711589736 781531595 835562867 866516944 966012681 803615025 871706390 238828021 725038822 257583134 764383412 760447260 902921690 197740678 334015354 628003378 681155451 881257442 918414752 649453343 750341773 505573026 807254071 28842843 771096079 994895838 997172405 726756419 938989974 816064693 871443181 989685522 999143214 397270974 680360101 843660060 931825136 404902610 720584373 489121297 494435077 278872426 646669731 515444409 750156525 502917216 895426867 484071331 592045886 507807325 817484515 981050254 999155723 328071672 680929516 458159246 517754356 191412849 543360915 323418129 541279722 1020890 988149980 276644375 784098788 989042099 994309713 378348405 908018645 269527567 439846905 111912833 173021584 362170377 363070252 493728493 513210974 101777444 901043029 298642556 475047808 176132710 590053232 861488296 966813537 202694018 756104665 686625922 727430409 807265634 933470529 840715472 869677768 430154919 776436786 951990562 966973840 118441894 608185515 786017874 889774807 638556232 967201956 507690358 660691449 385337440 949299282 834200982 988686889 558910816 822229778 419411693 454681447 256391371 798308926 145650776 594669960 354281124 427654828 538081099 833993917 57793351 82062847 29377212 792791310 347609683 854829888 988124233 996530408 917736508 925422643 859366036 925557429 546381503 683807866 858464713 993920185 962701591 988187330 389078989 842385009 914017530 938536566 324683576 431884970 183558350 494948230 689045699 758218037 769571844 912644251 957369681 962330602 185187613 791233470 53065623 208407306 237805967 766886355 384851685 901981871 215844285 451314413 62528788 709020268 727061020 864139639 451026306 664998441 862732579 925494985 73799417 384807076 54283940 561966889 266072394 464419310 14229469 156246489 374038595 718886530 143254358 524410998 89915380 969369518 553921262 895237361 286950986 370760609 40686055 424609096 643201208 856565635 912995117 935032415 655054831 925059162 245286760 413197414 673459721 900260826 894517059 923874786 193106084 602871144 729110780 987626135 949467539 956257546 47089425 976630680 299245058 888404797 168618376 753788771 577347793 822424462 798726257 831888266 900988670 979342755 961212341 979488116 144395761 501723544 753193238 808893480 867793068 921162583 196643836 617718061 921975639 981999325 302194395 893592790 673394097 708432048 682374369 793009862 787207247 942155224 449440666 952493120 312212537 722770041 339373765 456527840 721609046 979903820 645252200 888508301 852766394 990425855 150109395 587110907 137119148 591165323 893646314 928118783 417578808 434806077 831817155 995801715 259047987 548590240 310491445 730268908 863007163 953279275 481269788 623739607 924042672 927000028 230327695 878382311 96683889 824332224 51033468 445119378 474986168 809280647 812486951 842989383 311097655 525546927 229059997 438824735 47047568 472187861 719036123 754634263 817637820 820826673 755722021 992571193 762944653 985534546 755710930 925874160 624472629 689959657 975199948 991451145 100042454 606218747 13599954 383952616 169325482 809729206 808908842 905003045 6837223 971762274 606867548 721922283 669618692 742211870 107178025 821948826 748621677 927935884 865646309 901360844 511430050 872294258 104121009 329761594 153604263 268547450 8877420 458980251 680105202 975890434 289176748 446378721 508951076 941361495 245244445 506949591 882245624 990911245 825735917 944697972 908944601 943224504 753605550 762643522 448523651 645607678 411313224 959915474 529893615 908216696 300901499 886429924 212410122 794012647 918114871 965412890 43403151 962519616 529916656 744328818 847837402 934836358 291043668 989278330 718026065 796900671 23150373 325368612 816849404 944417079 872945029 936295017 719970019 839460236 960817799 980825895 356606637 873398746 156353985 984580129 50708478 267792070 596033572 933002313 459056413 516561970 333952440 512779446 875944771 938425802 46231053 393681449 746639084 886556921 176323073 326787762 295614373 733385625 243396691 406531316 615960894 917023817 656411947 839816121 858095596 873529624 464229849 880560732 467641862 847104021 253569588 687833031 754829831 941927732 686397049 833116237 73937622 716576511 598306343 622057769 405322688 740530430 822206264 983528636 775255058 839172137 721825280 917684238 381932726 759703203 100159858 689744215 256770027 273389156 152143569 506018209 35926549 161565952 588129611 728395650 909761649 964413803 311411950 798293696 101642137 218940118 200306214 583569508 42033854 729743206 254556086 881298665 515234918 541492677 764994742 887137872 219779473 824435860 57840220 587466668 499094106 594077681 585533126 695649678 739987242 803477901 520020190 629898482 127313790 229376829 506738388 595877850 869028992 899283355 933372469 962587665 862339991 957274853 603927494 781299860 426999112 855461082 868163826 873609070 918376518 980488932 159283502 980795193 130469527 331959927 85146179 162309120 167066304 605268156 495768123 545183153 843987657 924114604 436361881 468636616 278136396 384580740 619119717 902833562 377891672 694365542 114003582 452421677 302612334 519297209 853899398 899284095 525505095 550174832 994418490 995690289 354061957 655988872 716351565 993171686 925445070 975664494 13300444 336322089 381380227 970633519 312041171 444090376 424560906 886641688 105941972 990273682 618849499 977548378 434336339 714844128 550432575 851968949 954049346 992584781 812158686 997140734 822312611 870286460 853749687 926293725 21936338 188070409 640158113 762588010 909997777 949714052 145400515 732664124 697795581 763424463 346636804 555419312 81053470 273995622 711343499 818091744 714440333 827963423 798524522 885544381 453093776 826905551 23268038 883318909 823005002 865434138 767662079 982359083 712480412 818361124 290127964 755794362 409448509 468284905 319742602 370715613 95523984 165420748 849332279 970474905 421945758 829125623 842251751 909075618 89961249 345589835 198996260 904597328 341852755 422518785 792235224 793126036 507980206 847613083 794708527 991798470 747485467 825318082 948980500 989711641 402715302 793666150 464635680 468367925 973534319 984538713 220000834 816525813 516083706 702585352 508848853 971382842 700015184 736600076 184992478 998008287 770058938 984575871 626578004 855060092 902828080 972339793 87644890 213010447 446130469 741780888 449693214 857739093 254942689 769510729 974019339 983626163 509766013 791972701 115830887 602027215 603881966 719818565 258075110 894615154 33570776 65613295 890414342 913889933 432117205 573860789 921155595 980606722 325212879 485772370 271932124 752373074 896174750 993481953 957364759 998235943 51462271 958146421 65069095 743233333 231072684 451005555 917987839 958558703 280738656 522059717 649525952 729020828 470954019 503156588 429938465 806314032 713155095 832144002 921231535 924957670 378090078 734086981 36818148 407800313 889941598 902792672 324129423 474978646 29039839 187330739 303016822 649007514 729137648 883180044 639756355 847382894 889819697 926529610 114945166 700911464 508969788 735707879 278914743 907873921 867355455 954032645 772873985 981622163 82093963 685363168 773663774 903384378 46180646 770111803 164443316 569110636 695775243 790984262 781749564 873087910 372548236 636318427 39089794 888034072 379413323 398814673 437948503 521487036 67582756 649694373 20777625 158990237 882214860 942626688 327701925 498513858 171666973 192086921 851492400 987365338 185171496 658636475 68435644 940169811 786449943 829858400 93235796 581868534 247629466 969819095 168289624 623747613 426441033 869526624 970668528 983027572 478753260 555246229 534175084 934868341 419192639 596410052 296576201 876473772 698050688 729401244 528313839 588318485 742725628 975321728 256118460 442165513 688787736 790446417 422453330 982105299 619752003 729099026 332133199 544640831 635590624 642461741 321604259 722789240 11363284 204399640 42742206 608282512 698824112 919940120 835294932 895640417 97891850 362627044 156841754 620314063 168689535 720110032 148579091 335309900 878074662 889520291 907440288 958568575 169165334 399400426 211297278 335429075 466979059 976511399 682246361 881627768 108888307 716503582 591516198 895611692 424722892 625869112 577939154 683065428 204769185 536491160 867659603 919525560 600718749 847595877 935999071 985583162 101261359 104697485 201539623 785915521 993790033 994319997 75558953 303382931 184961292 373008573 689174209 825733796 774559696 904553025 40096749 247137126 337376933 994622589 397854905 980908429 82707290 248649878 229649247 244400017 955358253 983296111 689191498 912876649 172822082 337386206 302852918 951645965 267887117 786508626 297747740 375414279 454241150 662289796 464452874 661458512 419063428 825276288 982712656 982758269 16059155 429580526 62403033 430999523 866049742 901435571 573587899 867928375 462319897 831492394 829020365 866933491 281524562 708397440 579849275 705169440 989114284 989968079 91431892 514070129 755700284 881889906 133038267 859793578 672621292 693167980 625131513 925459697 439862510 763478338 152822145 887372992 392400375 462479584 774358754 843185993 509526720 595299295 620081132 638458270 66130876 488515273 85155607 571661183 653990522 884638950 77434949 878213910 279819188 665153562 900279956 975909887 760764227 903510744 560081889 814881278 240512546 529590925 497090509 924517643 73549444 864387676 4833496 461913345 466675461 549513268 167797516 415915857 114539688 163048476 745569990 874697174 132967737 769675084 681983401 980948737 719945932 873665922 289657125 426058712 154398669 164808837 772382620 775569356 598703250 892228626 86729680 785567424 525403482 657541142 824826623 887375304 707835342 876252614 892510402 939710389 317134023 875097491 459715096 574236804 287203178 499558127 401664107 447496008 493838922 787743056 605582594 984143523 698434642 846961316 680265685 801041224 572966162 832636014 866265717 972086263 380045503 990686586 943778195 946206166 192758809 513144185 141898806 950615045 138860848 400851185 405754497 816864112 625507988 796056989 727482832 881121337 588501523 837955633 990379030 994592426 629729340 892512329 782425903 789618277 791582609 846954265 135766297 819863001 101312605 898870585 720519149 920024736 181758162 792522881 180081117 225061861 248641852 559974050 814489374 952186918 990925024 990949277 92998946 104633540 225507588 544863484 935061439 989099357 581856736 599688115 74263669 128332850 428558037 597299646 813092435 925649543 78147973 518236166 258300994 728488332 785292606 840241634 55956620 726209301 35234142 953505985 711233985 968694467 859754366 982597271 574115641 672221109 457284995 546587982 30336009 199394871 454054991 893334580 869027142 998814103 565451452 617852002 387329346 388935587 925144192 978166823 125870453 861990663 553622505 681435524 731368047 738062224 509860119 927296116 463483066 501404278 870001462 953449787 488573968 566525523 792487574 938459232 7405339 277252706 472067613 833469991 978404060 984746239 598068272 940704486 360757971 389301370 472038337 546924353 949765984 951301255 994646708 995305925 169313585 755839206 965239223 968659961 714046425 787820484 811217584 875371377 251826761 689406072 769396645 821321748 752584337 869478756 992554300 996044150 443536552 770131324 629266898 868660574 746126209 762988518 519193848 689100526 329784139 725856584 500079714 930560101 690625630 864996023 879571337 963105984 81686863 260509786 630841035 653314509 94485728 418072056 892480435 938587877 696859209 833540591 527264582 669403713 649043974 845044147 235449089 888509539 504297936 839359186 88890760 100857825 22119177 491413504 492234574 760565436 133306284 926379299 356351679 458971243 526808838 928505271 123734856 212192132 634329390 954251564 464381693 983256468 47708985 116992111 856308000 923677962 357219487 730040531 162430693 769568198 780960975 885529305 881853039 901952372 668507204 739646868 657893942 832774597 337762774 477518278 11919069 561341213 722417751 823214887 647426483 960288561 692903711 698921246 516841568 812706025 918300198 992859317 824587859 867209533 193904680 909826204 804837686 870765648 530392472 532465141 875387537 990901414 214029548 619172697 448040694 701737042 38947133 549977218 358180710 532600839 225692455 620222021 982349653 995225356 161580187 483314353 160448165 443122568 361781112 393532922 127047922 375420800 878256976 987386498 742115822 825840026 502698539 620879999 120764111 989697634 716522145 895322214 137119754 469374732 463661316 495963943 303421588 305038373 13814264 108465761 980120090 988356982 444033480 864892906 364690515 485176937 204293194 411035869 163344671 938504180 361777019 594166304 467270725 663256375 552689591 991551778 951892227 954409505 255083882 375601406 700220671 774315502 312259856 904555028 522487144 630746182 924201319 978288884 263731448 424409846 721198728 985614326 151436815 817457315 757082090 791048772 481508652 949894518 334514153 431768618 338109950 646304653 76791926 763172506 85636682 647221406 994607631 998314068 944799917 971811977 288832853 920115409 103700150 494329421 80271327 950033158 768018748 830770773 576253464 967935163 159875091 532519765 126228357 429527488 233697623 768737994 7094066 388942804 504572037 649348102 799533086 857034520 635483146 950224082 44344490 291631892 264936388 913432701 584658722 744830717 143558714 592058006 165044882 597725912 883272716 996499982 268937683 769654802 53492956 114346007 733091301 991637497 571983365 760117024 447217971 862276900 998077037 999158906 663745218 978127410 550641672 629388100 979872767 985405670 650450856 989555559 416017755 947561299 714762683 941925768 616249115 881018457 760884163 930085587 733095050 997105141 504741424 849826471 950905032 958064177 787722504 982269696 993401635 996771381 313230665 989265635 69381250 910853363 235431800 698938824 667276829 937293411 669872326 819595537 145026378 702921671 902842582 956088660 745577062 921195409 998028927 998533828 256678513 378043884 543884089 894293757 75918707 938045178 421764458 871892630 86986699 101454928 192960828 430002224 553890144 833207539 993814990 996746081 589190941 600824165 801353050 985134541 685785738 947021252 930356079 939391123 434392054 722827558 494953963 801736514 113514897 235959446 532250514 745405508 544358533 964211279 375960433 416569357 731325325 926302950 952943790 957898957 782333609 898387782 743662372 808880321 322427073 423063531 322779806 489103226 876474829 949082292 738843652 763946063 180230604 303679746 544552881 803783967 990627900 994907782 286796606 962171526 1087171 322591121 258733232 317410215 510736661 835698766 567299474 939203435 706877490 878855306 452902570 480407026 68288071 923351574 208459212 968117589 603851793 832460743 163166656 771954785 577170094 798182391 273392194 562896269 890965365 991888475 270410152 548144518 844262162 983977093 196986669 929884459 692371216 907396437 844495376 930439691 960636432 976491934 839359215 924194996 722134653 764084061 397158141 962522480 832269724 862632838 744392583 849563257 526359514 827640527 552262075 557512633 20894088 245061808 910378185 989451180 835256592 843468861 766199086 989361514 876269019 998146773 509462260 663694558 197323220 972326762 896329253 998946377 495470592 817908372 117355350 387646970 541234503 980969200 881264254 892015377 175879323 683165336 492665104 630592991 728228490 961239926 584519717 830311657 23651131 444153084 309887775 318416311 402150205 830321928 680187927 930120647 289441255 395355059 70165083 393603717 290245232 374597875 959370310 998359249 487220813 702583291 457724478 591665237 109895212 379083684 401896097 909946323 42907756 77492560 466156084 544402512 880143597 920685029 912119051 949599338 967991652 972732879 574194172 711748463 313967806 811981024 930690433 975701928 384624625 984407614 674480753 685125443 52925896 737842029 286885291 470115015 168019293 503935411 435929844 788314178 181143978 236751988 8957923 753308857 497339853 788687452 545161770 964755757 179849589 322000356 679181036 886639116 582759981 911349337 43247661 477639528 960281445 983621458 728675632 978950681 301819548 525554081 421089445 919680520 961826992 993800360 527289291 689996606 75798179 708844282 387726372 756193131 152626305 483379995 540258965 987199775 214620027 904219810 371853758 886733020 136314368 237565682 66508237 368350272 454941090 890616130 274935409 499601338 163004235 875633415 139289484 724981856 380208577 566620807 434154888 621772560 824556971 892388731 139935103 624081281 428812355 827578164 536103202 870450502 475779486 683162003 671846849 924250001 816093481 889046862 385176373 783712251 907296933 935410508 65990027 488702370 575271486 898497430 74497969 624014199 524950210 916905892 987886006 992999345 519735419 533545957 857590422 907369508 199764551 369216287 126146096 960911714 988104194 994981613 959049918 964967260 215315785 488221800 939754966 978952621 866784220 932968440 708237650 929928478 601424643 606030210 166704142 230925733 932647366 976070466 182230779 554323288 356086759 458857727 821532881 977999438 331854599 796852408 232758606 406178147 948946341 969926231 922628822 930130858 734693986 776032137 174897961 387525445 211360144 560136960 625168074 695073978 143920113 285676280 583839806 745957392 193022257 303643866 1462682 623417945 309777315 796252672 358406336 740835763 12780757 601439213 807031 679562729 310924256 950510603 699809989 959264026 582612200 954294205 19840869 641820697 693856620 698613117 60072389 131362154 497662412 774360483 421165210 715466237 18564798 390665301 149390163 744522681 996056594 999083641 46189782 373839699 495567921 673026016 118881912 952354473 47329524 386641175 398264415 480842808 472238258 804759973 973815359 988064499 130186230 790662926 631859232 716704648 170979105 437278890 482081616 496677096 624760753 884736293 536128350 880783351 266155318 443728942 86638380 376135614 496736210 512371194 642043984 727321033 285473537 492520630 62527917 870732161 105417667 732518477 248796967 467085381 813454719 827966696 454485209 525199243 268108057 785270154 922108387 960459356 15162323 807420951 709589815 824265998 124529185 367025433 493687554 886041506 744177838 887616216 354314531 718862789 697749417 803655244 586834405 886326800 625883362 803959409 549441906 739629038 668488276 855748931 440233975 641541540 882202001 968874422 290135203 984909701 28545101 239812116 734257088 874864216 233532683 378365534 829158247 921840650 935245253 989507628 333387632 896295722 143320550 147913308 970962409 986865631 571654108 712721567 637134770 840898566 277665230 607163403 984395035 990158040 887022514 973949556 355349163 844018606 602804505 969978192 993853117 999274181 827609352 918434747 541894326 949009384 871340600 885528675 115843356 449165579 695062250 710135662 66651225 434517549 470793072 750931982 892041834 921412364 272161522 878258560 126640029 676800858 63985267 210898702 80167107 549577326 906735581 954024948 519675186 911255272 838188016 975764798 617018421 892401639 832400408 838943677 978334310 997152925 61902889 455173314 138156013 490456090 336127149 566931763 335476629 908655345 103168813 175912675 349724293 812118601 547554396 913162734 126036364 651536085 905188542 989626842 313888836 804432806 985165862 993882810 303554190 568459455 368432650 580053770 372967983 624489468 933949225 935410429 857143028 877489073 200762227 685752374 666933092 900694886 565479764 610258167 224512978 414121508 221893384 834192258 871003792 958465673 715743510 747454581 442374973 933622026 118276870 685631226 349117955 636584529 51566167 103784845 467094206 766595013 18000664 209894241 627430629 885168803 777107362 786091635 181258543 435620721 48912948 105232265 136106617 315760687 607627126 694134616 388398635 507389779 290596686 954666247 268300393 597632222 485374332 804518494 875217665 959630588 458610493 975418903 805771190 863929475 629851209 777263869 19606879 297502454 366838738 445675643 986294418 990505926 953802961 954078565 651541573 664750608 744598294 857659024 85590100 969199302 663912102 953247398 544328459 784038886 418529272 928710563 349519759 700805230 52992872 144777968 812091325 910822176 560805511 970541042 269064745 798364803 95709489 631090431 340523370 551635852 630626050 668867533 803163189 905101720 981497775 992869779 456486197 593195055 373147997 517681489 905631789 988570835 998218981 999359019 294229035 453630276 533266543 851599634 621616862 861928931 845418640 970673062 631690354 706644197 638984809 944278013 550471302 860683237 503850126 634774662 569361726 950553079 165739610 506080280 106888771 983593251 728521820 762736195 534271164 683044616 145821672 797472197 935738878 977081814 357242232 966186591 463013542 903092762 520923999 710244592 231279362 249048429 661102618 986558234 296306293 336348280 233606427 997706731 695184751 952148824 168244183 417568526 880870160 917176674 760326577 986941995 816401042 867586347 179558295 711905514 490636528 764582125 466407574 932890707 358035643 627269113 438324161 638536922 216341722 580925260 229272500 963078787 816978082 831444083 403442545 459283845 959735916 975775621 733032355 735559722 773644694 886943106 129979607 813058152 843347191 992639408 433936019 799878575 443459346 535355026 918310759 979705395 219056408 476263335 885462966 967385620 448141430 803920487 686026321 943470294 832526285 839154492 908124933 965896965 167387788 687222637 702435073 841953820 506745273 811833832 305520187 824512074 939957217 963028864 615063012 894354860 727609767 918085398 437665841 755611811 422883755 592416064 986885955 989912621 499493995 713578751 698218592 721328261 578506198 767858612 321754899 617052058 775854201 967863995 900249529 939423807 640419549 867980077 923271873 991734156 506186915 943649641 935794891 987328355 19831771 910675117 303355855 395127541 190202600 412645589 64784726 398725082 912076923 924757276 106699384 569386874 276758999 795680006 179772711 942501167 425061843 520803759 699344533 982138966 533863268 628417514 894246386 942040515 52699906 347311266 958207824 973914791 151294574 714676377 160170244 363122639 941359835 984456931 549403881 949291243 315574192 329285939 661003752 690854498 275962235 954553527 687953142 801065235 468772064 717670913 42090455 552536090 711094331 734542176 841613876 922303676 513842942 921674240 386823263 438308809 34347026 864982029 774738501 844874872 40694814 113615021 291804963 848224522 332131422 637858675 462767905 985273609 308164722 538353588 959384366 966376366 313476083 813712606 683681748 914496157 765932353 816043511 930529578 996182804 372058180 510471194 250450777 575875211 271704036 809301848 967652424 977832412 270395532 582332945 22699386 202740827 61182861 336309361 737790580 752188440 843145377 968910326 471693064 604108123 230675386 776334441 546796862 611150935 851931094 908730097 106417569 435701535 202401597 429953421 289362054 965916272 588611486 717880699 571953407 989922711 737725013 810383837 760952641 972518353 518485183 887695459 58885624 296290073 131085185 934079828 207289629 490070613 237538425 762028656 505134874 593933233 113528841 211959054 663185737 847896493 224233732 277015030 325113829 577627313 7336625 324478892 728811769 889885475 3036540 327480120 373977325 827418816 242274444 399164370 696821769 868830492 591714634 990582305 848621023 928382443 62253417 890694490 37782368 579114161 358067958 931343395 425563343 462050382 17158827 812781186 68771881 743471958 977732521 989931409 357531923 401860968 100521087 220204082 920632311 990705560 790986849 857692835 740666957 849887022 80246316 668525822 410286093 969423520 34274013 521456647 955815929 992763615 65465097 234945952 400918028 556752303 14670310 664905359 197816940 531678587 856086230 916967245 310817259 365135042 77938518 558629775 557101201 727782926 186104320 615071162 451028962 704656300 533715526 812825997 128544284 695398474 527828293 712482338 549365316 654099515 265099209 865571145 464110124 983532950 519442260 829162186 738718839 894313631 187642183 633295773 125456160 153610595 766209468 825217244 208154263 274851144 217341454 280759652 351224279 534659875 631489844 707974331 107684212 452031673 351126403 612311326 749979632 791042756 536887430 641713450 898456544 928873651 495797560 501329439 893556733 969977526 829514682 886571828 710110785 833994862 321796338 580423211 276006598 482667573 23996990 752139591 685906557 973335071 886244468 972208053 503749151 827322639 381006181 390461800 462537047 574897109 317794282 446914943 424500809 584083325 229270886 821344085 94813395 481918262 519156000 601550385 778453111 786104775 142603852 599949904 672596306 880351429 555377321 556046125 442018795 783038552 799271817 940007573 156189694 721126126 416346164 465435607 93395834 502174893 568976815 587618686 486206190 779012102 109347603 372822346 770765683 984507318 299803593 312748254 303786813 426621566 759222716 848829256 783194543 867119243 990559563 991489111 885170953 988829481 190874568 737207196 900543862 983644443 386331379 735490818 613810354 963029526 476825233 677461086 815105395 921773952 254304868 625271890 419656383 486607092 515398439 565637795 77025831 652727321 408986200 683942711 902343173 935020842 892140037 930499759 255042713 746971719 109154717 688403385 528297064 740421539 370311062 800776781 705776814 882597155 621449447 995693058 417754597 443903394 997407930 998190086 509466104 957611623 447332003 931514470 299860544 565728357 402655145 881870828 204869380 335266722 372895196 659993245 15725870 740894473 410318722 500557161 996676141 996761869 724365851 860265079 470436948 806916646 786836059 970490988 864824728 896743152 553488219 607175189 785212303 926653698 230309224 728239556 756210879 952735353 528861073 771643378 940463972 943415865 308519179 764013884 355470400 525823226 519140873 921697784 850019215 869250387 4229455 760349055 46147091 788550415 254118878 758723485 581811210 639986518 514658067 760683220 846112456 951799943 137327135 724917413 3277641 978470916 638858438 954683340 24101838 465189445 463041350 867661344 782207590 876586930 219509210 932937055 629651140 641051126 53121305 724357351 673955023 861560223 512782643 949189194 547219509 927210235 213710686 339657293 384822316 392691833 335874188 896691408 915548596 993454070 760655405 954626889 381821361 762334668 221071621 409599020 435173044 978381568 477438743 562833349 852182427 862135227 311324971 684057152 928648581 961519841 792525844 969173123 831054595 940703011 929933060 945116236 555727915 766149980 725787665 803681526 423400546 632288470 93335707 820052942 868296447 957836371 961989762 970799486 715640943 934196434 600677550 894594819 198487594 868624402 437277229 741880320 763806019 828365912 545865912 906650182 30198931 60885853 298361382 893648275 567946056 937530841 492516080 906304744 934510276 967132859 815469588 998039318 144173813 905035960 441729256 844131331 954385314 985869645 374338142 949584329 806284447 937271420 962523652 987314027 981145081 998512042 38413016 510509705 470393737 984664599 358944882 637382941 84974747 799518671 23954319 453643646 301070167 936347800 255770620 663050318 7073583 573195230 364592758 572777664 463113629 678208409 609886103 778964526 97831222 323529515 486014000 905875752 297597175 305551824 688998720 991587669 47325671 987486119 533912935 666421564 845574381 890585768 930882465 946862347 538646216 849659517 474097625 942904018 563525930 620744633 50216289 701520561 74345246 845796178 625219591 809832945 983601467 997353139 9375332 190774833 149572377 276815393 598267153 754373733 20670766 733297436 623215242 969153076 558490306 761471842 559002146 815108482 497156254 618299843 597756079 598443493 210767225 386522751 655983571 973420779 820654566 835208645 402737788 931880125 705978982 902781989 443031984 907003588 671538821 771847704 84576017 784972324 559369164 929196725 346664396 800200296 606011657 989411593 277593546 697711275 720839004 932407422 212322005 756721949 917417026 975293552 912428598 976914039 15069022 552162246 807574566 810299436 194543274 842832266 808651789 865519014 428146887 529103051 854519162 917238651 624306722 842161813 294914013 380220855 474006609 670107649 1968152 834538417 922460573 927891990 175162975 621450905 524437312 889461640 391807122 575971013 405555908 997404512 873926 484034786 190091227 434969216 308982124 619588201 128453966 601633293 331678211 681717424 384762309 957588664 557159827 647522368 42375645 486343128 930725444 982661098 961653409 985010681 474080176 630315471 497501968 718694832 50293176 447750375 227288872 543190652 81299993 489760236 912194950 977854331 546620496 620307537 525114359 639655433 962701811 981682115 286722927 687619423 779441174 943589938 528477238 880331750 665782773 852685985 526515600 547931512 763527961 869748793 346848806 349158824 473481636 547599019 229426541 286554662 439546377 690808400 12485883 606620877 854980438 910739997 222904158 700443272 546622188 972340752 860184897 954936891 938822027 964966728 420708766 447764325 346508945 770918840 895662497 921747800 886460674 989976249 944495774 964927557 626762917 992989687 386798329 499739927 737068325 998893870 938818534 946378008 760511868 810560198 554395091 752981184 145423140 983631541 274876436 768109431 251292697 416720546 965262171 977135352 736863611 744701142 748910278 952631051 701374548 810923497 608319561 808963440 641649185 903041915 242508355 264490021 964270619 964902407 370796470 390871661 192090920 832388164 248038881 558955622 496443600 775548116 302851609 310370208 129577769 780204237 744021126 874463058 115282769 179552246 428570892 793368812 986878389 994598711 889677736 912795446 881987105 948435077 368042727 542748879 861656834 934895363 369359676 963091865 115876538 141611357 942404363 965178633 586345051 941608677 152203480 754078809 815989629 817268141 624538309 749505864 454490739 615017691 456782913 641815178 237209182 630101007 145437280 334983534 48319100 83787585 617012167 987235298 914739680 948848998 177140058 654433942 112281699 548861936 944374857 968060601 368922083 973646548 921567274 949168712 497154974 894130379 144458154 879463307 485470518 889971574 27925204 98389321 492351538 942187924 906811918 994826226 918295727 967553119 481342463 770145762 614627931 852563049 308507894 450088159 645230990 688866734 474798762 918878013 298529594 631873375 721876267 886749185 285396520 303098847 422840325 485762622 782600263 976356401 257878535 615307271 554111845 716366435 262464962 434171840 304702800 549824936 440943479 912199856 200222056 344022917 535635668 835860695 879827001 958136934 988101895 991811352 303248588 342895621 227362045 857689294 813216765 817860660 677059185 783678214 101749485 358037125 165238883 991340729 344281563 770910404 633376 612433978 555996600 557487434 801177888 825451560 535382504 874625046 5722435 502920546 53778060 528714568 762080124 930446451 257272911 316484294 883121765 954173028 167927537 702424639 34099434 785500893 344507889 882368247 538956302 583857270 480674593 664612447 310113555 998820813 997688099 998533188 747687943 778468013 719882199 723492772 412194321 890487456 859512910 938632346 454007076 720592488 295583557 528801227 124435968 621294009 301657348 779239212 263757910 784878562 370500158 683071724 982797776 988424868 752326660 757323082 351549991 877343709 344480187 721425966 217342774 929379394 614289359 808553488 701458930 773352537 815693464 976289282 982727523 998965372 754315670 921094413 838311437 993584227 546890309 798018177 810485800 823761300 583210408 747072763 579846285 969818696 860102190 972289416 91697953 679474764 176176501 786622339 270045838 360953795 744374133 908742102 137494793 897294667 567674586 623764690 124322109 739666335 746424706 754963710 361386739 734036066 370558478 898698445 11272222 323870327 924508326 980649260 617066620 818957111 697292287 825698611 118900229 231830593 102993014 843065171 387849735 822122711 507812215 924188761 830731771 885270745 273813979 613990192 290513252 675566108 64129703 232633158 272207937 623993407 636301525 678025856 628353660 719070681 315407780 736315794 115494784 719196959 394176762 769631517 95684856 556291937 559013750 979340133 876147365 897185483 897485884 937285245 603033595 898477210 88340973 767059370 248709663 410064961 239905562 443406151 775285598 841608201 843177064 944040821 163085031 508652393 51051025 758405819 816991500 889419616 663183525 773524172 256451910 562405710 236517426 827194634 94582854 452825658 781707694 834423995 51534390 198845031 47982442 622314666 150510113 392815144 302078172 995401323 117228971 573381090 465005428 909687655 424236062 796662205 996301460 996768724 449916630 781520138 978261319 981008954 390693348 853039479 902078362 931623113 946460988 948176412 51048450 727700061 446415291 989451384 355697949 764704775 749879432 992848627 158242625 677784052 573932661 801005458 76900787 730517961 73989667 429289633 545344348 553202694 141703991 362748748 396066734 523274636 831492468 848354691 33641654 546599740 882794988 932441539 216978133 334192852 132742833 588859715 80520170 386826220 66960912 519445467 136541622 454253401 184370445 511773293 824070713 862448209 23830845 456565380 306004140 743770193 504410844 832466967 163384924 445713905 187939795 580613310 42193359 320329154 670582369 893688112 732544737 820722161 385135405 908638609 548946957 786513682 125306432 509398493 683109439 844864221 989449650 989958675 991654751 994287287 595493539 633991174 579162696 709591332 839475143 988322856 786092215 933828622 701489399 756029706 744782239 886573700 419195314 665077549 969601939 977501895 668667506 872821768 470282355 890051474 130437781 640326134 471733085 931641315 318010839 592044523 898094824 990598620 429281927 849183203 597297790 854379839 912918531 927136261 643955266 664081164 78920436 732604452 987651231 995561367 341524854 459487820 516494729 673563462 393020484 894292913 146260460 461112068 785398841 872356188 387405761 756723412 287856273 867526364 673895400 952570745 530405695 889846982 980655714 996972568 788603597 793693873 61981953 691455408 266159236 397536698 743102356 841107138 375616022 878406698 498389793 763810824 178895130 688554432 793527905 809351920 138931783 925297873 914298664 948865870 177541701 567060271 375365977 761923086 973139286 985854898 731321343 824586367 416421585 423488893 267349913 884389353 877400542 891439774 536301402 977379608 278502907 413422725 166920784 746936896 858168919 955973674 788450549 957356105 765943159 800697044 811192327 990769780 186138010 213486937 987853514 988926669 468592345 808616522 469573604 824353473 713699594 744265944 932374929 971153432 307656208 546304549 91460061 563869862 154271355 617477618 295212987 606609352 783697846 998222018 394051044 726460603 100447184 718123056 257639597 437287794 492842938 880946376 13484707 380846815 641416303 979231674 563168503 614982230 923094453 971453379 984324041 993042121 333943958 511929291 974557102 974874512 662600184 929940936 719991862 821046342 800867958 883557049 434715579 457387021 575426693 956491653 811514000 996060792 910288981 969628113 768474062 825900600 187065208 890631181 144326417 868120665 90727892 534451888 306574702 356301834 142207298 263439112 94516286 707957195 131721042 732832956 619595147 935576089 953888399 996133804 854368878 906856224 712572777 776907809 838162394 924495056 750457697 858524269 956337013 979202471 826017393 832889570 863133048 973677662 192335046 754301572 636019883 665459557 548303878 830968849 329600851 958897889 884762913 931568467 172416790 415221564 558664576 755557348 865193379 957156284 523956170 756246510 121265525 680208101 637515231 670129731 835814059 856057271 946797213 950830324 5004618 583743662 68580300 914910884 118787716 291476564 764085225 846244869 786744096 817723840 848127151 962848436 494936338 519292110 199036080 315336810 85014780 290761967 415272253 617551602 331266390 757719028 405425047 872098183 420661003 801859275 738436617 862715873 314947074 655189963 242875724 675937260 688524351 972289509 6084997 213117523 807268602 846587239 879964414 922470197 888708563 954762152 327891622 912620436 675790274 937326246 857878797 990060195 511326169 740202549 254049331 883660570 969180596 983204168 30344718 471592864 165018039 335595603 889069517 960000457 533841344 833749929 222830804 739443459 659023099 980409149 376175248 421312645 306156617 998831063 747582364 992798743 143219023 759394749 814245361 859415524 363596704 570793627 484776556 900411980 911123379 928602024 524463737 773753774 32791554 44956866 607109177 713461507 222635993 515713080 550271284 896163210 450256555 471394281 573578104 994971681 887214287 965930749 521362238 727090751 261981530 513980086 355051237 561246846 998686610 999343344 312228314 491728926 354295791 464342123 947010493 949887314 802365663 837930803 655400908 952305976 16320378 34101532 181999943 438202331 616839596 924264691 106641682 332459660 751922972 940686797 773085612 894488886 196367873 410348160 864296229 874788395 37737787 807480875 831442115 947532975 975627738 986820260 873505664 924343894 386586371 944878676 55410886 228504533 133628061 948482056 959993567 999205203 509669983 916674165 321586475 880588612 359262517 696531520 323333410 639694076 685770686 869433819 950682428 961290608 419349343 844134966 380530017 727425636 102276770 923910373 439411253 639022967 672567587 700923414 443196227 653730436 457625544 765265138 672532933 710114888 599130264 624467338 41126436 570268498 573921064 709400576 703761794 809311458 489334078 555275844 295572798 730864722 703654738 816953809 757153763 812067131 711973694 782856206 70634102 381737106 967901917 999173102 385315956 795394497 57826728 274698249 475959202 486738119 902985776 956848597 103675785 300354285 440679108 927280649 303840766 925514653 729283049 943136541 819554019 825975374 28243688 587414354 916690909 925296976 138084984 386866418 37173645 826364375 344603411 535047547 245292501 850130914 586236706 772338060 963752431 994327425 289818990 718716558 774022583 823381668 577077329 699449197 581256386 736652479 102996916 921318880 748886057 863551496 684978907 793846301 48755599 513612840 970974972 996528664 135691230 494189275 977564424 982105796 527070633 647605420 9433284 247906994 190755387 785163298 701828935 890383455 143396064 581850324 225536184 377689718 678814134 908124868 822991104 868324634 667146481 965118583 38359715 372146560 312210390 480875321 770794789 977421621 357496500 969184657 314205339 317649435 221976246 510798064 674758579 803282426 288726513 982633449 665776808 865648839 276337585 392708512 24861503 739459089 87008899 741147462 146138703 199169572 650893072 720936603 171774355 353719021 269428307 335575201 406855680 809969982 563964001 572930417 989970485 997259149 27430060 159571879 725909290 826222886 982110414 988990380 152654587 618993774 326548011 406749875 121968386 754368336 486484046 825637640 344417579 579228101 590364526 988024930 800598114 895837694 649915809 662925242 509576960 898004315 286935359 935749533 463681009 812711371 736665736 754405861 160646227 731980507 730641121 942051198 874745657 940102935 331057719 874467816 699573165 954587152 570788832 980675745 532030077 927069178 576861960 700826831 222083569 405811969 231630130 836384664 655308919 705227727 365653255 652335455 491646991 969088210 701743931 732635540 495942127 851248370 161918818 932203551 785230682 889951549 699064931 861036514 345396847 859597358 3791953 150463871 166380315 479069660 81766937 649782580 580064189 624731899 211920061 601838684 442993299 806042148 133916701 483808319 613472391 649756887 741698316 887531754 789132488 884821065 482401840 629326432 2200038 180184342 523855252 873787165 842473959 971322340 904149888 966386167 980049576 990389168 422725575 975586939 641694584 833792270 466218244 614723311 992985440 998398614 255804758 904288150 34628025 619409608 223719369 646736197 752088748 896169803 727436626 897378491 956611403 959534467 709765957 951182230 159388560 245933036 352268050 437702210 182662320 697539809 96191461 403503803 717767325 859163662 105993027 837142567 243999231 562266513 486523742 658915080 68656889 350392514 17671155 61805271 757789252 880868702 19183866 996211503 526829442 643627141 23814478 799188277 676102281 942922132 294919591 490432071 359080015 750747453 207493335 411851541 660647835 864414317 900774477 939669487 229280497 891864506 630948019 910885553 906605202 940334146 120065962 956041220 977793448 996854512 814175329 884663262 7041589 412996536 161750711 206440337 935008059 977743873 233827559 763548650 305667118 322676329 332747030 729260339 422183447 722026939 15907420 635752169 580750383 892332761 783264684 969475396 263713627 394446034 769063716 776184327 818144804 887774093 14600863 667721584 445256572 827329891 664113703 985117234 677289988 990822596 830304165 843897691 998820604 999135952 422589927 539902758 574602244 798448993 192763818 385809831 113510619 250933862 950931301 985446358 351732345 856352087 430414313 685556067 798045833 885907726 252867238 626407037 980062907 984789365 456091342 682600513 48666310 345443717 694564012 736266056 469336348 680614654 493605393 730408146 234184812 327322471 696898851 966794694 912277771 987385543 509864096 546642852 76172441 259121655 756243808 882928397 759433283 991145960 290586239 641291674 697508425 765195147 864374367 879613534 666338612 942440606 127144205 645608408 640046565 702957450 294172323 775301314 841135210 991975797 636309938 888250431 338290711 929959638 164340484 219072630 147017744 299767273 33387449 922200620 193235356 667078068 799491637 864848360 552367874 952860354 835354075 998668386 890970651 973927089 623215242 731900885 678438849 745043772 373790948 834386938 941771866 985382886 254296890 947030440 154684888 715528934 418650163 552724293 349519659 528206168 455276094 979788548 520019977 942390899 576978175 804138665 207455216 398331907 585136176 622975259 942539157 995569498 248848239 645247086 566571592 589426779 457199494 571655968 382003650 543638774 778630326 844222029 78311127 931292401 161650719 787919534 578066449 691015433 818448474 933534387 440345493 644908942 491688219 888560630 386553554 951904332 182925660 270900695 901116600 959283182 982883929 996148070 559064668 971215732 951883421 969802515 77994795 770342471 510823912 686649570 153835108 543242551 881362043 961600769 803746506 873912720 88267375 297474665 277677306 550170511 63764927 147692725 919447207 923269229 78058730 254112826 607029738 923702955 121115773 736182328 360575838 844798911 543093111 599219412 601360387 880502370 117032307 532267497 153219379 681069862 103885237 879295364 858787482 906530583 855560229 875559044 333771067 478899392 361653452 942156135 865275228 876969465 3950415 660298926 190999517 998657026 357628440 516467333 974602645 986346915 873581485 910641449 29735339 575372219 552437836 812186050 274476738 891468011 907220204 984723042 482408655 695521385 796274176 994660701 562622476 744363985 254662893 483609277 845793856 883356950 539480401 755769642 654160929 787223687 109909926 961242596 332762817 448083267 489504400 853421645 808352486 906956020 628603406 658105741 245525460 397823448 931785350 973993927 350342137 964443860 157123546 818212459 692380700 809734880 979656631 982693086 42163105 884600808 278894835 483989608 147071140 595797497 829013862 847971370 900563199 973194437 154124604 683894201 531880756 718840433 174422690 633588768 28304392 360108083 872693474 980719872 365928239 632973259 158558437 939458778 660988201 907937953 86389397 133015087 568145471 655331951 129602846 708783179 668251306 684887569 639108030 795427517 247092806 727621070 975722348 982770703 286024402 933581520 381974681 706609076 605759855 892170085 210761829 624533529 709329430 942709680 129280288 479137421 541588927 899164729 289802212 359390435 311112096 564298282 879212836 884134428 560970322 866978344 286159979 921164162 654233887 754536745 708788449 938436567 902691815 948822880 304680729 490348174 904195482 960318059 206652112 928136088 90189760 208369524 641523957 669640843 324091395 897139516 426826672 467951707 313332633 313635509 560358104 763233195 367919905 910686645 498564135 578566159 120699593 642408221 960244713 970708086 91110109 394904898 835879568 938513749 691174104 971435210 790167370 885282847 488896235 813045885 640948358 819263836 946299136 974950176 100437803 756523514 258881553 362590523 256440508 952854908 927791859 989751596 971928330 996170815 619584813 788627872 954759858 996088361 787955938 790987257 647894435 873028095 338775765 903266326 441650922 765411873 283687144 432755967 175310643 378609088 323166039 493113759 562274280 958624622 291810067 728569571 61975394 856148704 97676042 886535500 585390777 955591527 937281059 950861698 901046510 937675198 43607669 583813413 467928741 780944377 630700714 873492039 365880338 496697476 135521970 605754550 159918013 979420775 867027960 882259889 526236610 744840509 54275550 385156705 284162579 749825427 708432004 912813935 394757020 953990214 143964332 938874378 400659330 894234264 161788663 211211455 720231917 788113281 113469564 357671310 474957367 823941650 292118566 839648714 291614356 630904812 182238201 509753381 338002591 550192419 566855094 786996409 40603542 966756618 913110400 957483609 464803289 490809269 585548895 628064374 623828441 930920934 975326659 979392974 556729449 978717700 863871555 930429049 332371755 566360441 948005023 951405652 304461502 661941909 589891273 849861611 955942939 967859400 119809151 577157008 819307332 852228574 690547922 900288012 37743700 62032906 327683228 851324946 242251090 952384589 190209760 276106318 707254610 873592656 960725031 963765944 413919412 948599997 218695532 345101466 640028304 776274723 380265862 438523539 39654161 466972202 706738700 789298798 828880296 981484853 619271297 677504506 448516750 803775944 955414578 981560716 215558453 979776091 583188059 764033987 728358674 728416045 209765512 484642325 889156064 904455473 212500916 230963955 448293053 810805702 966111562 966994868 442546337 631925412 684233336 897506151 381674263 494751010 836115889 891958983 326485516 639732769 514040404 811313798 680549536 939198687 810207644 913310989 462794022 629172773 173136855 876855889 675059419 820811866 216476431 567748954 671366980 853926523 413568129 540234811 47304625 815561003 412945703 548304246 720226803 758001990 117895734 606072590 37100134 586518967 613650291 967680111 165244280 520350560 987653079 996727781 164098974 862386935 155249947 899655799 37371482 306075060 343978627 792168828 338318449 594451492 95932661 920807269 198769748 913268602 11189861 529574281 915997959 927674095 233824851 357714115 580948219 832493210 320981016 930646528 691883430 870006880 843530054 946728429 502162125 831708526 138507016 948870761 877953829 893374971 109327985 849475290 218226352 906399258 414587460 421749248 897685621 973544995 733377659 879821259 594984481 791050856 206564733 313849514 150894716 219478655 68322673 485736835 798407748 813373357 200823758 451546718 477183595 972149330 31179789 477574290 393764475 558631161 585206277 679265866 225272637 669878717 374897452 944495985 600188632 958618249 381700472 540906689 111003031 204749756 735698446 844750871 646526087 686381079 953340409 979197277 544158492 807040981 88843248 227648116 246900777 746306320 669492132 928093665 55591538 494447197 150623941 363050244 304704238 699065357 801292414 894675886 206461797 612281565 554929663 587327707 834776705 888067947 202250724 724682070 412169218 976589624 647200184 977176976 310388134 603027727 451136923 839716502 975643912 992139018 27412375 168902813 723471589 783478355 540770197 715322209 714841923 731852466 769631527 988578526 58321191 832991980 800554351 811021735 482494172 630710999 219838995 603024057 690463939 753820085 437130561 522944079 8203992 417053155 768352294 946336904 958006904 985030975 567730916 616146153 434045734 506764778 27148243 729481716 814062432 964091086 780892018 799908657 229220982 787256773 704067152 866486637 616787643 624857884 712780783 794307746 193352031 521523528 958251656 965770137 92227592 997360769 415404638 552814107 692736197 779781694 274195730 527688329 978833310 981973684 636878751 852999000 862433671 885282340 115080555 119227606 124076589 780285606 424915377 786814446 444878767 937793798 684651965 848627553 378421979 633629185 54651056 827872239 842680816 941124590 571678644 946312756 553545938 762950970 143746897 796334457 586755459 683605285 336489647 855861104 267573040 278468429 836540409 945752369 109909382 609431321 148165960 864967308 132033237 734586932 423500347 870288022 485735558 972586111 294544965 383312273 917683677 983072438 782398435 841227836 881874739 940626256 294992869 639160941 351891991 530237461 489914102 588321017 878832796 966941153 356418841 581213811 56943145 704230900 580958011 627725668 95353344 797759876 543072503 865275245 720432023 968851859 392246819 823331633 917378228 950838937 83055839 640575898 965168854 986903271 607735449 928452698 62928451 140513599 920569015 991003249 234182629 337830169 193821180 203526720 840379510 851110823 488199820 699920482 358629160 667620133 681789381 782192425 451104456 845981749 582191601 589913881 620774668 731237550 110531028 653276040 262378414 627679881 755400715 883161017 136943468 565398191 44451770 737305820 511703017 728255068 724592074 776749988 116289549 259848559 414748860 552812565 939777673 975381168 449185414 637757888 33934218 948743809 66695336 582905767 533144804 960912046 850060402 943496829 602649659 905401187 336710584 792413330 968549289 992545862 847056362 955256391 561831404 935795116 871524998 946998985 802930981 958847084 935190213 972284994 424780120 685243044 501370112 685188060 809077710 864921158 724554617 771717112 884956060 970848759 363761743 915491709 655727009 917443184 442096169 731530832 904808336 947844453 849230907 961389091 362060792 448190211 263090205 918334167 451132699 971861042 59837866 810798475 355724702 913095780 711440703 979208529 613100570 833814838 99338916 609211741 727473310 943374646 615642238 834436056 559565601 969844880 454697551 557681770 832245807 928944951 352721475 744307312 463202669 472628338 445372905 774959507 862022345 964561270 834123421 834461686 130084355 522739732 400429109 531023150 40372670 316025524 984253834 997881922 749130707 799522206 133686908 436476155 856506454 867181232 23734436 955811314 10978937 251168219 933300023 969115966 790083979 806105686 480226460 756000939 134952675 252489992 683873195 730130347 103730643 189095491 966837147 997552438 846990865 848174883 34125340 869210301 598122458 904704565 645032719 995429131 72205679 369671108 841619017 939483493 880899565 965619856 219164750 248861502 568745649 621834893 762455908 886824442 791532528 818302829 891264992 993477238 389423148 729155738 87468262 688650857 451215459 516167846 4201790 382836624 921388735 982039115 966986927 992157862 832279207 925933538 910049288 991119982 84421884 622101300 83910818 906811508 799241 861205679 884498287 908434963 85275095 643482328 492672550 773449778 74157353 653762897 371756213 432248562 637859286 910845922 993071455 996181635 216216200 307995661 815525521 815725375 40872989 748826298 68143420 912316137 693603841 742253758 567500282 710104263 664674729 951511208 306905861 782680439 563131514 894369178 741874658 879801971 118086379 729310880 129094944 915566538 496027240 893140177 12258958 475788868 560323689 931646279 86804175 273009994 346595927 701944353 813911259 862639874 689221420 830564526 835666128 836192418 205311370 828004701 640099472 942832708 761648386 937969563 813932278 833093681 69163560 285128814 788385278 818596176 443978458 510930797 475691095 616224448 189789303 507936659 157411582 905728930 524031540 817687972 988070122 996139750 407360789 803622835 106339676 699778230 15100281 305751921 353633987 354387490 107521778 607538655 711076262 912871013 900534703 914505358 857598627 932553503 262363020 429699595 366305406 583774464 304893149 484920778 399009736 495366381 603918450 659863345 35633871 844514168 126587945 754508138 825215482 952547075 954822412 985302740 80368511 608974751 995806691 997327815 868867094 902770127 79907013 232213423 238591484 617185848 673245999 842563163 469137327 508922307 990495424 999023729 18151331 129284293 380583589 696842617 327997545 716953947 5019443 976746731 602025394 965493716 817812754 854660517 569771446 825201894 988157304 998234417 470825849 802053085 232116883 635501317 127826570 786756977 287643566 322184579 603521102 888407960 646443199 988634004 485481283 735442314 467318157 733232327 551928559 773936509 198788390 985232292 58301789 786157712 954484621 979149222 205389186 423483873 787777237 798624528 618716108 944622490 68082008 465644120 702381316 713700084 69713165 293875953 378612803 475691752 829634895 881253822 517506799 738656692 246210761 691814651 362461913 634645435 774961350 893434325 278193714 553181004 645523084 762820442 733710866 937941653 547902330 875476391 287217898 390776910 62979531 908902254 742412463 795702744 265448706 512086930 613629045 987785545 687321981 690090178 437631776 730253338 936067928 968666830 740957434 879949322 25088121 845504660 667537965 774056102 964120664 983543972 706168809 971690339 837488295 965652248 21185169 681302475 916475537 954700329 228443554 702871693 320055673 504908857 757536999 955175028 213415314 746878601 981948221 994145072 980816419 993362812 5193654 955086945 116605105 425300911 84130166 753137975 138240143 939368520 629626301 631687258 557551468 787760541 488043509 539490933 243195326 485259277 511620832 653971661 498355557 726909076 19060776 844477613 692770504 848620876 407853240 466789347 219345236 569850484 797062779 895327965 892863206 905428944 697970338 706311649 778231303 787026331 521475226 911491052 5648731 422505904 357640042 475856442 477717298 736656169 390039937 903123907 718514416 883903310 57796573 807134372 685845884 759406886 628116284 994352071 943736623 997113767 821902250 857493029 379557704 712061664 93208401 858744681 798365361 917396523 85064090 844421046 745162193 996315437 708411210 938966155 745664516 937203689 654139749 783835335 553444774 974216896 243856599 682088242 337907161 530155744 322610428 430639297 869257650 893850899 989919975 995860923 648664496 810499267 873905531 975090348 417788327 733883194 689958073 953281693 619233861 777917022 304974326 884024876 763370909 821413532 897710384 971405423 337234275 723659220 443120245 449452495 108274952 148416280 882900752 955529790 467345402 831581301 366163857 749984691 558776083 584698049 593216349 664102276 297261283 727938053 558430754 862521889 562876448 588264516 22555867 279829661 440162691 947215452 58941629 472627579 145448430 935909718 719911184 942134102 686600936 703972325 978338165 994735907 789713871 846720889 239677957 704665318 352994991 955265329 744802148 837072476 889441348 975322077 180445231 578979841 546536863 597400692 674133792 805077802 747897880 768369999 273164349 712781013 713363707 938888261 307916964 376094823 240012498 243993408 310720951 349251170 813000741 824622784 451514716 572348426 808041632 826214626 77839137 273480562 466103584 636147252 352610483 472258494 534902886 704671055 92869116 630221850 627131267 821367638 994488043 996089807 246563794 595507824 747014066 785409010 348223723 832379686 240228795 291787673 525983543 845001094 377636300 866175712 64106397 717389356 162202942 772529983 808514051 995646033 230434478 792474736 891992970 960310583 930401880 995703519 920792990 975230296 936213170 998555859 322170550 865194762 715071389 741546136 802850007 882973986 163001434 712059476 697274671 700806566 603143211 881719555 229440465 534757950 926503539 990268690 910007125 933092934 690925708 951134080 701541001 878562071 892739801 898162556 789424231 881348941 880609609 913597529 587908942 907768811 809205296 996731400 133306684 813293418 525956046 872677213 244957348 679457858 816914090 994216611 102283654 184554481 771666916 858361318 347407307 405880143 719516813 757264201 904764328 962275798 460667798 864987993 194994555 626514429 994278009 996774924 850037722 894802641 628638548 739059208 685093346 903986316 604314807 934209701 450025098 671744872 753058476 900937379 459874559 929337252 159706906 266822714 731515364 795489514 164108713 666580443 890382429 911723597 296386076 909735033 404021608 595120928 344941029 795962279 476671324 525998707 59628891 219714153 194648113 276534698 503824358 675137862 764811832 958849208 538027678 844176949 962735585 987161537 289895985 845464320 363672302 676672088 330696096 371869800 610314211 914480537 860393899 864046672 498681267 985647223 709760871 843362647 116859353 848603977 105856350 660791448 820109832 928522705 168157301 319631750 996998152 998297136 766353537 790529427 245627846 794641477 270032089 751863842 473638983 916097719 625521983 649690566 472182417 950582164 174073940 699590851 684379914 901616877 531015372 989629631 910083726 945360668 605713648 892240808 376691890 806938169 616963434 980162032 851441969 900495709 610584040 885877900 764705084 871680512 494052018 712480520 203009023 561961256 520961223 695697660 217116422 386648235 108722228 953780968 509693638 751164509 170969035 944408631 550682185 666694271 119464224 220854182 961901383 967644682 694850000 959414350 660311309 784399272 1171325 608105794 635267853 975151282 147619327 640172242 467935698 574397801 83719405 566146895 814316542 952042937 876173160 887261347 146581673 248970934 244487508 787850748 365328448 693995259 823304572 853590611 367284270 461184573 463931637 785695961 928692338 946032833 359499709 839953510 765714409 918911647 720145168 846981058 29594531 155379852 825866088 850507984 508391509 716515215 458107219 700157606 38884926 395735347 826852144 994445115 578724402 911917751 906193611 959453879 268855559 454124578 235019764 839259540 818841264 889977803 404563977 963106301 835999545 902007699 262736308 420977370 215180039 695785701 531945220 963713024 518214797 855861568 33832111 135813203 278885407 573577514 325303092 827297811 187235303 722841159 391442323 532721434 261476876 548695348 404486849 810050073 593460293 768636632 65774025 325832951 640467196 722765850 690211336 924592479 471641036 845890518 826233013 934939510 36004816 677602299 585273667 654095488 974842509 988203341 912803014 988629675 343483224 826258327 336175707 998156375 468496099 516456485 879591011 956901886 457906003 989378353 701311634 975328740 712059258 766590803 501548594 880269176 595099013 837786326 250827201 800768733 270056625 681977446 980768213 990803380 35209190 345739505 697865470 978582081 537092110 846212925 890625923 894766661 971186474 973645547 12473059 382553858 715322916 760629336 135964814 730590620 417007945 607290969 922415640 951662735 731462003 866038548 928188048 980009716 206766444 414171300 914813058 927561847 249715458 590111234 117944475 749051329 132804532 601213301 114599245 911579110 39227179 331771506 620863248 971330725 640257444 917910561 843924823 944006322 104952069 433088790 182068702 247886123 178657044 342687378 796846563 908738054 993246735 997527240 48521358 282417164 688606721 840108222 389191696 954881719 40355308 269278529 4168427 683086985 441092975 573655232 82274343 203487336 436172262 645741996 17543851 662062621 357301535 976434074 572496496 640746477 647994108 792217063 399105952 520987387 606337459 998142784 462721326 665381356 270506223 472155788 111016272 328844948 978099771 981069509 760586962 888183015 894050445 970092529 94214415 427962229 507756780 665795706 126598209 965678762 977055244 977261140 44445921 218822848 445921539 451949402 849047687 984438342 636123715 869043932 268186451 632385465 554912501 883872724 188606134 889374894 583028529 959280329 748380983 853107111 980244834 995556085 374854628 647735127 935870629 967711640 232236154 744616234 420490375 609755198 444789452 569335311 533749461 708128847 180506776 741574321 162006819 166653033 961144880 963808996 877330805 904867973 670832942 914679024 701784104 951561315 163710638 840125489 30866033 56799093 421482237 721669833 226188792 249877097 903490911 921709763 580709730 930714953 67411692 848445187 152586305 747336852 383895520 550859750 568218797 949557917 831963436 854534448 865693381 993764866 522266798 532610625 560083354 897393697 910470548 920631505 49334292 317012583 294124999 424495974 357677844 682288192 532194135 550142728 271917033 295558565 779203834 924844467 631427293 745783878 178036322 308607302 920950920 963923839 619852105 817774088 721944643 799084426 29758895 86317458 839630874 873178007 963643703 998575441 858284160 998686292 214279420 499575687 20268249 462491917 502495759 707633449 703252087 847667801 984001834 993273222 106707022 260232361 710528952 748482858 812949762 856303107 2314652 850194516 162954400 484938048 816717557 948064201 308104572 759191121 379047012 470261529 933984750 982732335 578437048 849313701 891697783 950889286 866437152 986630518 992738621 997956209 344161932 753072347 574405037 901011069 219355435 574061519 431532941 794556799 688715634 719944486 164632196 932932873 790903919 920012914 888634819 987720923 809654921 964159005 352146170 772665361 699165748 792716177 570001544 753456787 829971437 947754920 702262902 821699208 718620077 741325419 228495219 261195741 336848502 583173506 433136572 947884230 810684791 962808642 280535737 974866373 285835544 411009737 170794770 455666289 974862601 988775313 95042974 906100154 775595137 928832617 979339206 997304700 40623528 113960930 521256747 740328606 322429958 450278028 373034640 651764543 831198895 847397464 982869154 998038582 980813328 986690136 878185205 890537517 809539317 869069263 673767695 856824033 267646495 786763664 47591142 893016035 411938453 589493802 825518053 827125119 572727028 950131095 829610989 991930550 253744754 434572476 911972707 939742218 404894759 579191608 208148910 541738195 316042890 697965683 729279798 927314078 988512066 990286793 470831782 682603466 976731168 982807134 399512674 719109209 201694787 741630835 507829789 731762105 890842893 988778094 955378719 997511933 579640692 940213590 646896374 979779069 495830792 883322570 303337262 572242094 205064396 623788644 903186452 929896934 658767961 708911813 838292717 858260828 590108754 626787640 910473372 920496311 39517334 638371764 644880180 780646600 255087706 982576915 912260556 965831969 220483973 415854824 993532004 993627808 412038538 992782392 962352323 973551209 188296919 711541679 734797300 826811314 304158327 490937004 385437149 775397091 15636019 296411248 39971765 372613060 9780899 187248700 265192651 457031871 973353709 995308423 454409700 688270679 189323797 377164685 992999627 998237356 952928115 968193319 338034628 436464766 957551859 984704989 682643141 751833507 434664490 906888922 834826198 860791706 884446589 924518980 440107882 494938282 703757566 885311907 764323643 848760706 76004006 489647844 95809304 361311264 505304285 599331647 179079845 346550432 312484401 925468137 355640805 877051526 955682843 984719198 456331610 837388617 326310977 907894596 657320753 923691583 889966171 940970465 243498575 863969741 411805461 531195907 887469278 911958654 909019247 923592856 893346669 912726855 957952210 989138593 619757266 821353177 801342443 933694284 495238200 534480387 826213400 993299415 86996356 431226914 779754459 868180655 827789062 890356897 532368005 726308787 467908277 525316406 721539150 742857603 580984820 806145491 455263005 527225523 217929286 688035097 467265378 830900760 396971432 717349712 573500799 865058847 287558678 565482990 79508241 135208340 581288871 645263649 104680023 386887350 670555492 807299928 199968974 616762698 774357043 832244044 346449934 712730850 492255443 600894562 183714193 975756368 463155957 465359527 860506748 988543535 985858081 998287127 995570166 996883363 101334788 745976754 207330556 393564553 747676447 783644775 157279122 695935975 465717054 935419251 581991247 695024942 413215922 676804237 359162545 862443661 479256353 804833173 523264913 530547015 842067248 923202222 730414423 862089637 814292014 820476566 602470946 934469339 385733374 417812514 665674938 976248727 828882838 939590829 110046949 901967195 304663622 973363119 937667552 951649306 25293728 482869440 641637343 778409651 925434452 935335090 579117261 726475803 336896793 858996436 387595474 692154090 401366562 725366743 621098107 655796381 281162344 381314828 891149202 990269175 775990610 834982964 580691537 740069005 368919462 867318913 6889125 837139472 898928607 995541375 31147477 127485293 168543219 622735958 915319907 975188343 712313917 716143019 302077479 907283363 701603072 961514936 500969181 711981929 585774994 840206550 641879155 680750294 808247594 927538353 799257004 891795981 369589243 818567276 620746904 951064661 387474501 538652578 933712452 940811067 872534721 881215215 405743875 615969139 498360796 722573782 557255608 779344886 739145702 869489480 450214562 872436552 688101141 801846498 759032794 837909885 933855085 952929160 471772151 967137903 23796250 305947656 345877984 469793520 667908933 924933386 778788367 869042547 956286618 991039564 76723062 422007712 340392861 491745265 475320922 533543375 983738937 995378991 827823951 958097972 989843246 993169796 504009292 815207296 182289572 208023026 794445811 859748970 681737727 853758743 855639624 920741670 501168176 704019292 82274284 724744936 27246792 353748039 431631196 958288716 322467286 404633788 66478846 175775447 121361429 244804292 578918939 781082905 183454390 598861679 154942494 908602458 145888868 200998985 781397765 858520281 31870693 500951614 156440156 489186229 395529233 807086602 304791651 493398760 297821745 424830559 640160227 926866260 261752568 488729217 695956833 743892367 362111251 903320832 543829779 588638988 75426108 431498260 244288023 864434409 675364947 915316909 771193636 899905016 524028915 590308739 459743748 704428254 66304009 853567484 527976785 787411144 468299606 916388884 664785649 948941819 545909467 817708729 543206265 976284283 149731253 972382999 725208256 848404366 845466023 936224420 672786515 722318122 145990500 909536920 845101623 940808113 739370014 748792775 317068447 757003564 900387598 991990852 642886725 998118708 112576393 957941225 36284631 793120259 32548457 956618578 59002617 394719188 279961171 425721980 563555355 790273263 791941003 850424199 186626038 636204167 307608223 863473269 692660943 715061236 77892002 464309044 305610237 978212433 285844703 764002103 635281827 833646409 389331479 655590152 299004579 927818493 165940563 754531771 819236757 910135778 959930763 980873951 136463831 138232325 853983973 935265321 883123952 910555455 190870548 499693412 691726748 932570892 56572646 418196460 227293723 357009997 627058472 719876312 492604718 513916149 496135945 983706867 867136382 875722492 840222640 921030245 381481662 572730713 483077496 924226083 819196572 851402525 233433001 588562602 38130912 638613459 361273053 719190628 934853128 935386137 955367218 977528766 65086440 294742594 460063141 737578825 9570476 427310360 603461166 612570718 288905732 498672219 438753568 892331986 317652068 359996371 997541504 998319802 265762544 299400512 505265996 910226692 723464647 896551040 758435304 936356373 680295266 763063530 489006347 830554022 551499466 922080004 183612201 204914853 875266078 894674385 571326245 813472556 380330292 416521937 245726581 937451645 364083505 461559905 245580861 995625675 48567524 305341068 461274786 952465174 214928528 221924449 624140766 993277030 556675590 622058434 128027766 420920151 310383019 609983269 490949813 512125798 589374199 943232504 784738966 921095497 677003465 827683721 877747370 948144232 632602049 720174672 807763313 988000603 30226067 41251754 844267425 977625653 106969129 127491005 834473776 962046096 638333557 792247967 715630703 792177894 547309235 801873720 58833436 483337203 756721682 842393883 595379941 993063678 99355438 106086665 753225933 792551448 885108805 918104568 691594217 958131149 643414512 962739968 296129805 339102566 892361159 938533405 677732977 834251378 963287862 977695032 663007278 773017151 436889127 617645418 181658599 982664673 32555068 794929329 685096440 854560331 788760440 836371777 118105049 835451271 944338303 976648205 663293777 840497567 138087082 199936450 172800572 382758918 20220954 335346149 729238303 935023955 796847027 946257323 825045460 871487376 450408988 538618459 286905653 675260451 425556182 909266540 139576504 147919396 462079890 751536708 892678737 921471423 846805181 872163611 342523143 476739713 10001566 627899472 470766109 806632831 405668477 509927732 210857181 375301047 924377090 927648922 316266271 581023709 517451166 855477344 685151694 970299469 212935529 421711623 670166136 869472135 606395308 781174596 999104103 999108631 229663173 262229022 931183460 981571457 237858523 323578324 267164379 365186146 59780953 528452646 805512444 912066275 873283610 965645747 633027138 739490053 976741667 992983199 149145304 748852428 940135530 996857840 812570148 872878922 137486460 677833185 641419894 935531848 392295761 775069429 946433209 989431335 631764858 871670980 578858020 722900826 827721356 939650397 67232685 992279010 754392704 818246729 548748871 900516171 21169255 880361618 937817134 997156623 584232878 647579380 480552422 683174344 635115150 738658170 551054326 573106027 229753447 254195596 944937899 996132305 105314796 185524237 214426811 225712117 249279123 328166471 336606962 851208912 887717211 946775790 647064151 786875030 693789178 861938946 970546519 971623035 25498878 626468059 805432618 913323304 934282044 970256966 837059809 904678853 985859808 987059364 247404521 751272296 891242802 998747087 970359858 989333735 132511120 825756277 421534351 465679986 30822245 577146577 633549573 940731893 970635130 981577031 141793267 963333719 477381148 859175348 415268226 729726613 853592613 927916800 340746432 521819729 436918416 869937686 269104071 774963466 685729751 691787361 538768614 943885225 349527896 475563050 371160646 491207640 276327933 530761286 944845259 967217308 765073803 939710750 37727590 821768129 54257368 734508110 226658988 887477357 134487119 251592143 803698302 823312350 482298635 535469437 546006812 763791102 431639785 485510409 419203845 531991570 385498660 753239195 297545477 617402981 742343460 892023719 565750604 708076916 218424584 362544756 193945726 369280230 89096590 608251274 333319484 482049402 432418865 435844427 639549940 720328326 226736407 735908120 992002353 997933816 521176481 957978106 719645605 764789071 673420493 896718873 869823807 878703948 608233246 996328510 535922845 565075471 900271068 902336882 956470683 990545536 494830820 771159289 83345708 590195687 919888908 970866471 855482937 867191057 932914632 936501223 430957142 712306047 624195222 797762790 927178523 992598526 573963657 730932611 297624575 940841572 753429713 873042291 141811357 804427360 271280618 503603205 10445596 180884468 440121226 946415660 117597419 216389103 61755282 946121061 800782492 820899245 532029991 628028456 922407711 935978940 375830382 846006394 561682638 883666172 333740821 470005459 425426090 763883751 248177984 607619899 963813364 991764539 908293319 963838080 47144721 154906086 338153758 575247893 979883034 990867675 450506161 780260893 865785623 997674676 433447665 933782830 377397790 410131125 170500602 561632192 280063042 817893437 679351531 690736523 687928527 918267506 806374733 889262571 436611294 892799892 497667262 635522145 326961984 924780268 379369920 799219228 764238874 828337544 2484498 873291779 728348608 808541046 415119077 866096029 116284983 154386196 29663840 362460652 961680144 978591935 772526654 920813928 489092191 867189147 821768367 890250710 168244704 804782621 673959802 733956026 7075115 722738367 156108452 631259119 924685403 982742586 23779804 802613345 468309591 738880369 208055009 484587125 154915788 546383338 74535559 488937114 754355062 962389412 648965164 864326543 14592264 115232306 422625045 993599759 739591963 960838502 388074907 443722317 245781771 739563893 243605336 466915574 548179343 957851974 452290818 465453676 512418016 878989140 730075915 875900952 89302275 196029853 242404683 595098697 586457789 724743392 917323366 992897194 837082992 874108580 185910542 630626004 436114405 532169602 777559138 908866476 550501600 753969917 927582530 979885524 727183871 758016028 989290506 993195184 472670398 841277783 481136185 949147506 907848163 919699134 547053511 640149736 842005146 844918848 689331636 745874580 849431528 947823303 749372630 803078078 877677473 933757154 631758618 969842878 708919411 973523784 439355423 569120863 515098877 787155789 695838465 978867742 684099428 901980213 576973129 706386509 910392374 931589486 426540741 716973275 191502630 790932658 84396790 375553762 960835645 970647132 592855577 616984741 247837296 944136043 364292055 798320883 225135957 757141680 124931674 600296610 693828466 781916927 612496937 759774779 83699267 519481918 117989881 426014168 421952443 897111359 622097854 708235682 825773377 878459769 442108972 672880721 159456297 574876101 637580484 679824188 593351337 766414257 871411269 988458382 416232818 547185414 185770525 811107887 89926743 869218139 931999192 964364241 368742344 987885649 740375600 848443126 122083424 225623292 203025444 923062858 595729415 599837275 709265230 734628611 799860072 908213645 579135102 669887515 85143340 229273435 359013212 874189640 85247930 534367311 236248713 409025786 550605286 626771431 938041758 990091343 588793740 928093937 2854248 271377789 693720859 854693796 430666565 685045284 433698001 600957570 645247659 766054451 292854604 580686917 553948367 866455620 56331057 882593907 635387258 744604474 858100588 943130391 837178131 950534411 921643458 985643650 63241545 916058126 360984321 876688107 367673785 705870045 856693550 896728880 995511670 998574068 850888027 999312202 697668330 900391684 579268545 756930746 782500786 887801578 978744051 982696490 808262021 841620631 835481920 941400823 237053444 714033233 616793216 711303542 934702097 986858296 50545589 300830541 722396898 918199335 720724644 898242318 287788839 688148621 911327753 941615171 1606488 25307145 517994149 801441122 120913791 201478814 508869420 842142309 85704472 252052373 525430951 634097007 685652726 904630162 118717516 208027593 116593575 995035246 712046470 971185172 305098303 772352079 513900085 756592875 105087627 632625951 542408533 854070934 624632998 897817266 660692111 689837172 556665034 778395259 834353904 888698290 666167331 743519813 517511246 875130900 762864336 950695829 789342953 916348769 9413043 364705373 149029759 352055617 986778580 998887585 457205748 493502541 725204678 891892480 314143784 654275691 341525554 952254815 252509734 602868315 684067348 911301345 963431993 997015339 312793666 501014832 993962187 998318372 123195816 833324486 937969116 974751318 843426903 944473851 230394407 584995468 183699346 926893191 7100601 114627032 916989618 968533993 104869321 883306408 867615659 892351207 234418466 845374331 112377344 706882384 686912790 962278248 961529989 964636325 42752039 724323283 986710858 993026989 543925224 643380041 779218881 788184047 206958368 590000231 653210425 932263483 114616039 587585177 573422433 738265235 902138109 965563005 232983510 977885537 191689300 608903236 308054038 890073848 9399557 966988200 511347924 720952218 804363602 813807987 115243121 628196761 74742319 791048230 427194868 523625069 32356132 546959246 495903449 936843394 127755766 686189927 451698280 781834660 851862531 893911393 515378379 578091078 327415119 918970185 562882356 729059523 741029304 985164063 918205979 982942750 205976948 400982041 443373692 556926729 84262543 800619694 940413177 957751778 353032972 509508668 271798557 512013983 907086374 967306786 334474867 471613810 954733248 965863232 816469042 890159193 858236762 912298202 165376413 347623026 148518347 860969245 63051060 196149811 31725593 709896554 873971137 952103158 927481807 941586187 669330539 912800804 401736251 748259759 791256312 863056846 662774971 772286640 774146537 800203349 100292190 627396350 443257759 625744600 468202268 558695749 351187184 530391214 265192600 806492641 453543820 636922057 963146932 990787001 499710822 720947257 948746772 962792965 766479466 885237744 980157601 996274910 586538346 854887032 380068350 702777290 268421263 745504690 359940831 970070793 660810849 699680786 309874493 756957068 957280405 972263700 110629886 828983999 973216562 983019884 466488388 872096947 923312355 967108680 359686729 926922652 410241041 458613483 732471112 956830561 472119249 703599087 892202583 895537302 618528465 737940550 101939379 450977373 807773713 987630970 112068610 133939509 6184809 818805044 169824936 898880449 387904471 718796048 900526670 919275927 22108771 719037468 926811654 973025272 445353356 773808092 197844373 756989971 173894134 920134825 737046606 786126621 606212285 669846830 706341547 810049815 689688915 927124004 14161577 21059155 665653759 854626825 361203241 842884450 3332653 89874206 174951133 354604714 209158331 639952018 682471636 900921067 843418333 947112529 712561142 797047670 933545712 964687792 125757485 427671757 604297962 612889801 325873244 766754892 10897577 167056452 913752727 979668972 233774030 709733148 300200422 519251610 435190813 880644295 266582289 840877533 97812266 707124397 793355483 961370537 799114938 983762111 646876461 884842567 119208473 140961217 996142689 998489341 27968569 622103170 620699319 648771764 214612839 727040047 729999716 851545743 978363470 996079787 768121728 892390171 353891508 617737519 173439017 858227465 370694638 806016220 850876098 955330795 117283709 164910575 118984666 193006591 610218020 741935472 335256318 549152514 30284647 356568336 459599010 731420252 111845168 297084080 335583629 948029647 354052304 590472194 282829293 510064255 561902867 975274003 927789117 929073502 364223497 548119824 284607009 746940996 922660344 938692380 152091897 948551619 265717475 952926718 260074077 429540529 784056174 972305547 315056851 624337265 432943013 750108084 343698736 446643205 867401950 871756027 893328487 998764189 620746962 682552433 829898711 997356974 101121723 113777059 171879623 230318278 394038632 414046164 370984737 716418035 557728241 687236494 440865397 911821847 249995875 890090805 627416225 921307913 631889788 978924122 747891805 777858697 878901323 987178322 434974627 706411957 771434330 903791304 921050794 960353760 775437734 838234736 700450413 936125854 561188324 784305053 23167325 162099879 895341916 943830598 884626043 961955465 392727431 513460399 274427595 711859986 959600788 961864846 89791751 861083142 893123634 914682558 551318526 912771089 230157122 955162281 561529441 887252417 468342002 515529110 492276497 562602780 387838408 878680511 354528425 952394621 716204263 877820814 970860459 971148850 234088515 368525681 31983582 425617643 825149589 954937372 469633828 573260434 837817699 840735777 834143027 949934266 901077958 906594937 769412820 966073312 234959354 280703661 142666031 421331969 295137044 714036611 92517226 462872352 439721616 549060890 94866007 548466810 90125518 997709662 39028934 879670489 983582236 993125588 775875689 903240482 550458259 683294421 309732807 616683312 288427234 791470236 114049316 502495882 268640160 921807422 867797720 868057601 32667366 229073778 515840255 969978828 880743355 892635343 765437605 919751333 383583245 686256060 391722595 479798839 920415577 994144228 630400189 701391610 320457368 386536427 898544296 907622491 669819658 936172211 997635154 998372013 362339305 573844239 761113797 770332640 580932837 806154123 172139142 766461176 810081288 816868336 348646360 993438198 210757644 782164099 874698846 982419237 785524805 950454990 308151447 557372321 958471316 962785256 802382877 974921706 531834991 816046284 586376952 914656650 340997824 993528088 957473403 994997584 731008026 953066613 329205649 480753486 731997767 944738222 179193480 648258799 243813782 538038155 140312984 363804889 482297163 544492211 757978778 814073494 617996276 713966287 698173603 712885731 27146495 865917463 165736333 201613094 661992996 929336387 959609015 977259533 283917058 403870318 237642129 254316062 219360868 791077009 960022676 991652228 911644045 911803224 880753973 908358138 924178830 953216002 818884316 987896627 206146875 833928201 784756830 891858559 136579792 171366283 788592346 791376129 766269148 913082907 924480098 951552296 305776030 992680946 158214246 543041301 606118366 767051382 506467125 863321327 139367942 228458137 725639828 799234306 403136716 591814053 68452258 73344212 853910483 968639650 419317214 979396927 318943669 921326972 521077142 731047908 978969441 979280022 309843712 631439975 14826711 346357070 885857165 928130794 561519701 988728883 279624533 363791733 425912296 550603605 939068244 939922460 588167650 684708873 129737762 590418108 825064180 906861020 875894575 881967431 759233870 995352066 156039070 741398176 771800227 925897256 987161058 995304778 738567864 764769997 293548863 626288371 685358120 885831202 735260699 790699854 445214116 779429379 261163535 754492051 474911921 500599120 623414189 922187577 954435674 981771100 803134556 974434259 964678581 998496170 499195284 752943557 218003948 762581007 490525954 858167280 666351425 877326274 158554554 623361021 245285311 281828767 543404565 908564706 632843012 839448302 962876428 988811319 674143507 867249662 191878833 834881785 748631088 886123492 783943337 794484655 441511720 739669231 570052159 641706224 651414730 736609317 609496915 880437169 675318036 916329253 141855294 293973689 427884772 726634005 285657056 893824867 289938933 497618165 905203388 993108514 56530088 833117423 654468597 907502639 72489558 292490682 985739010 989844529 418220430 570577681 346642868 493673885 809402707 975798628 237676091 678552856 856202648 877249425 694955431 902929482 698078862 758836718 384822967 428863961 633079447 870792306 425116940 792884866 97787137 855448388 511399261 782940563 248343926 857416230 498481957 932081381 609050258 782020024 994575254 996136664 319920634 551219771 459213634 694294093 767265006 888524505 864676733 992779079 419787811 816819369 504206792 590786977 709287708 921524269 955076588 979148503 9623101 139136321 87462924 666752969 478421876 586793522 340259764 500464781 63401224 380821182 575772141 620683168 528696613 845176713 833832943 981676211 646550137 895678433 881776191 942906704 767247444 827798336 688736022 811666056 598366489 797502134 714221261 967706232 760508145 777608033 568322837 937495247 304549299 696636586 345481968 568783122 934026199 952394999 260456814 547070833 619049668 936801077 56523039 147721389 879633479 891955534 178009206 616406816 871557992 989346430 3815383 597540483 458331372 927287760 466268633 757457041 968944035 993114926 83228014 811614233 24893690 912098943 584119927 843178917 311920887 922149017 824213948 958648166 761782144 948363938 347697530 868673891 3227165 504255742 325672734 417098179 399687351 515074222 690608644 917685332 130610526 350396166 318803757 983737537 168407563 568411790 836517346 946416759 456424763 941105691 980390745 981147709 956385380 976353289 358957666 872751218 844909491 891053235 289308443 629430311 376763134 869880229 574235536 941588113 930283725 980965669 265262882 501534735 250459236 558813039 619216774 914815375 296023430 494226490 144632973 671096702 932794548 991704432 613032102 729775420 158957496 542000007 53135558 161390234 658683439 675870470 947017081 982338687 410288276 832784957 881846778 997442471 140362106 935477624 940718488 959569574 305997494 993798486 268413563 538519638 790895548 947126813 669471832 894589114 467023619 909765070 923760379 968729845 820347619 974739399 536590883 561262418 20731329 665734109 311666906 559032097 239839324 512263025 788728977 832391176 51194733 418443950 259033582 661018542 880893143 975978402 682086637 808108829 457679106 760698848 613194892 847763696 281506783 803510646 830068497 920663274 76539874 937109237 326812675 859194421 268731454 787301642 492807764 539359373 817554455 955399935 602120418 666692248 900958133 994137530 601333207 840964869 410785745 672845457 509957256 988248090 905947316 945336458 643086408 998268718 34166578 968747258 830545380 892339322 806133497 906859885 976398437 991870347 660814215 985816347 62102986 751307590 723351061 933647796 518764173 808472334 142425492 256287570 712040660 813745826 624605656 699820463 222305561 937550578 803930989 908867085 286031848 733704638 978955487 986893867 166667119 985303181 347283115 448338937 709638535 980873500 675070042 886913916 764292027 926329373 831639739 976782460 107948183 242892502 591350560 636734440 71788187 394457138 837454338 890294116 494895749 918428226 649312364 727607076 631086200 975575040 675780156 719483200 104459539 868135504 929258303 963575954 7938866 17923758 345613790 694515354 249185797 771537694 556870702 642863379 523943103 910800302 971056218 979001919 978629369 997595130 795781686 953382705 713981117 881542460 397124274 742784386 867977704 889708522 801121901 843051992 844166555 986124257 785188282 883008951 896733033 932795203 775908841 803781942 704410869 857979910 593807374 831313619 701066960 957724217 620239944 973341561 802110993 913512913 391842973 424578792 320452416 956338514 498751069 879255509 828622441 935765199 520311179 747747587 223473672 355955360 712524822 876356852 964115191 976623188 803226138 846076478 888857558 899329190 217166893 677308471 614705427 710278088 610420760 690531992 417196361 639206730 189304336 855413470 793794278 958331391 956668840 984240718 931171871 938856725 148559053 428105225 851810259 858765210 436165095 719877439 749427702 797431524 556714087 883525509 754656404 952932000 24054489 269602011 486536161 541966204 188136695 750930636 728873298 817698188 599118760 646960591 707907858 957402728 961370898 985787027 816932240 963268261 781036687 879961815 183123388 969419937 853609383 982110866 629123038 831280427 978260270 989348798 695004203 953706466 880063919 931109518 837651234 897891290 551547962 749865307 895735076 945243361 655268259 716000518 65596519 224702764 426408072 586628270 307986486 556871372 871274917 878349376 992863412 994274216 232267586 617664348 157025086 383541031 443057722 738025322 451998559 578878475 684254007 763111125 216857903 708717622 126627883 129608287 133876713 593777684 908498408 996020315 532221986 654600435 569902898 769154367 219233361 532109621 200478012 224558906 855436397 997099379 661522686 781539763 300475333 494448651 200051180 730021655 221638401 449641339 138344649 402434965 163536983 743224674 403695326 551108280 565690307 730266025 175554878 251386704 550275845 942913208 516435881 812443504 76463988 239432066 504343356 927313576 480710789 939948462 670778084 756535819 970685802 991902637 975738722 975863424 646820322 724558040 127090533 159097730 283289006 842394361 475357940 988174067 142628105 303945312 279441659 491090856 246411044 965619674 61893038 440220853 818269981 974000613 937522496 972216829 488524615 945088471 366826295 473063222 524622093 688139231 915221361 988146369 770870109 953082263 144901148 257867268 905728309 917192026 58232747 247703650 122238666 320024308 538778198 837815621 156828718 242838019 109151452 524596433 655059339 852846694 965715483 997480969 443855440 994906535 74506740 966789689 180282422 240249469 816567430 919718233 741869167 879927176 388865246 928942085 15848131 261050672 44073643 551992196 491367303 991436702 679103717 928575168 528829139 708027699 811982570 852454448 662334783 993952233 222754903 977037781 901920793 951181132 525286772 971881012 931824237 995295743 923654035 973119746 250052421 997060610 772850047 939244699 485211264 569733483 559967281 567596448 555787769 888861687 482223416 619392669 58091295 266535897 334103120 431624296 181555423 220678583 114107279 832901145 718519844 933732892 241556820 832918805 352991958 491168905 652359311 703593187 329425800 767090937 505124889 907058970 419927859 892861653 605419094 623486912 787323069 824618143 403506108 696069731 487297094 964432655 500653935 619269420 151013393 505219748 63650953 230152605 974920216 976350126 449920969 831499925 299911300 922848881 675832403 753472241 318786734 559959478 467012395 777771168 503072993 856138383 162648094 647391777 76392924 216430509 751436285 840108452 40771649 527325450 128356599 724824717 693360354 824259085 185137823 239363240 80798063 748577273 698639332 760940417 450124841 827265125 182280404 991662951 420639775 823707440 883435688 909181425 794075072 981661902 790399942 864944146 381543409 569841143 666595582 715263088 738172076 854284113 1038965 467086070 561599127 951630646 61585256 784008117 151411559 664332823 827743095 832605047 617957560 917937592 759178366 906852927 388415112 923325701 666498781 903401774 272784045 789195514 593289865 990608363 109565926 395551051 806737571 970251834 933932767 975965847 167184054 495048566 741479712 942879725 157295339 755047712 345386106 418449812 530486460 598340001 224999387 424572263 301974022 339968360 977830136 979616856 12419161 74929176 640077914 804640763 142368494 160400208 214669119 858833957 667364943 943783630 36161846 541597002 791539942 815648374 363116275 550028778 201229992 853963915 199098448 991808912 234354879 807439092 162918627 553385971 701319770 962731221 912460853 984824233 62274420 988019243 938455071 998229099 402752750 805700211 73991243 580670399 748361363 835692039 935091647 997972842 374888931 819682695 712137040 994520841 693240577 986431062 233124913 881706655 576118671 873992788 624646360 878067628 319374566 980290414 837186402 950743016 399770011 695621698 994046216 995395850 987420608 991873730 187792237 322009329 617999517 902705237 670157638 941419737 464573212 728502155 568837339 897716719 838107482 842158780 785300403 805922261 418439305 492571513 755503575 955194644 606015650 923671812 377537269 473838133 642277523 661628948 371709875 499315230 192276640 822865502 803641321 958291644 82387794 770709526 91810951 97216687 126881142 192931969 113390792 868238507 219961388 795640956 700793780 753906022 891908387 985164398 227808820 915749886 659329134 777176977 868000330 993298472 243015286 821274786 228736954 946991617 310604893 733778171 127546154 717444506 984178998 995584037 890043627 952827512 112569519 962845346 57214229 408897798 752686651 956219385 660491721 947138620 66539231 890803473 332971864 773266552 1242777 382426198 165418293 373037736 804173899 944957020 589505164 867554636 240186050 421925575 543439906 656018174 338159813 744738019 830983155 961866748 975928625 978521126 602471119 923864036 977862187 992823248 488947278 556918472 739279461 937376697 648378720 689524420 894766965 968632573 483110199 621339815 287112349 973649378 141268475 839769711 567825821 894138172 445293097 659354079 657993766 981459479 73320825 567783213 39575608 704377331 477580658 631140540 793390095 812397034 679746076 858767523 669374216 874036543 265591136 563378056 346308049 638682237 878149358 903009576 103806971 408624210 130452854 575794739 378612357 532027684 789507571 927322033 233841901 552833928 832299257 927525255 710838858 750224611 665179680 671850817 413730219 569633823 103466676 170818574 92444116 887122048 820978547 838767386 240817813 720375170 98372565 706942633 756059053 775491546 537678885 629623378 861055405 887781128 62717384 122496799 332330389 713038439 484976935 805733776 265246305 977680620 38126365 574623364 450031007 614737149 999100218 999259650 470516241 779137434 65885253 611553506 175826773 846425382 627915390 747331247 162275213 400237613 471784224 600197192 339427430 981732332 961205873 994525140 750986168 918910160 137560248 489106674 651279579 874370793 168983163 406389782 160582500 558533782 155543267 453931433 969398311 998987484 344011957 792508775 611318884 908658111 942033566 991370296 987163379 991669430 460892669 570602423 773144478 982457580 510184105 619839870 374321920 850321698 57149168 101739953 683504264 757814049 6856606 276872961 823820616 997467501 239503821 720179506 504565953 948862728 492725547 863520995 545763325 955854742 315252164 375199719 450060634 845214275 768549489 908928158 173215897 946155425 974995478 988763516 328665176 749604831 868048601 984455735 88741813 590714571 186383341 217710938 969282262 985852691 412164608 458912758 431650211 951051101 265839914 666725811 875522272 993904444 428295073 914487991 696763031 819270015 596898618 787440402 7649320 297716346 407909727 655623254 107094645 708678259 381109206 685020276 675745967 713987970 989355558 993518153 284563793 358278615 823771274 958611930 133159738 359429006 619430426 659534147 137029836 915983208 357195148 488531621 398919656 839809315 535445395 594701016 1650318 24461449 759191114 949658712 788255517 824658451 495932684 960892674 538129896 760433601 656578260 940642431 340908795 713851223 573574486 638710690 434976182 894898255 333913023 414395337 115566740 159057004 865018303 875214964 52079610 516613663 413597757 664424552 561203537 600934935 364486971 741783986 445009213 538555151 901712312 980424920 154109127 851746471 756811626 977823261 742835349 911400036 123440916 840088793 25395420 133066927 493644216 997300804 600725241 691381709 782058300 904610230 687131107 817278310 200966805 326107342 244782672 620963936 340194493 831765256 703180446 806409997 884544698 906235097 707976560 859037798 946326844 991830672 712127298 913535065 438950335 533876738 208005087 512099503 94503049 918705334 866974619 910014457 745667100 912870118 230948511 351055878 354383861 543300726 40272205 240985924 211668072 890368467 479507561 723306517 389447511 918746199 289232301 861390969 496461452 570908423 805520085 817079905 364896431 368140748 86631103 855457932 74906723 984098215 23824270 532933971 264547722 588081596 98255342 377457710 395647264 805624949 349664250 585520018 262385943 803693897 40371501 820489214 752375319 830653899 329740589 496057623 199465739 454974529 284949022 931358278 316641831 909833190 881851735 908778214 75565294 935612130 432942089 464897406 271693990 926954315 334194233 642718368 231598279 232835819 277665575 501486150 560337774 742616522 459029872 527999496 525929251 866948631 525620514 994731137 342350013 751456180 133347128 975334549 732529273 833643754 526188572 982625033 294408507 886674023 660551220 700389849 624349245 806840936 46259199 360399174 260900457 914333442 967683728 969703471 966920408 998543069 758634578 845806952 443763995 490636124 671164710 802682707 183130581 650738140 571563618 817388140 621803382 865081351 506859314 543328918 425225215 743795260 180240440 594053968 418238834 468454357 932961177 943552596 785581471 869607154 192857475 775076779 282300379 471283416 939928176 949530561 872473752 983923556 324638203 595053723 993637135 996226312 560600427 688180020 597754733 658861668 649099519 893689306 556220040 706272336 816291231 914531764 531831412 864400905 573615234 907545511 916006287 973282078 914945934 976739964 295399095 751373389 670277267 878457837 81913478 407372896 74856219 983927960 12836040 624370416 228751332 304187567 355054609 437509987 2046809 828867205 180255689 230862326 316681858 555042312 636584829 987499521 380578453 729233863 774326078 974709150 686273731 907423776 507352041 876486769 159073801 917089655 74495474 521259747 134638314 335199899 997975196 998990080 594722882 820914838 957116597 978488073 879238589 920398862 919852360 958429957 262145052 676692812 882646609 903777608 86895659 385757820 285168914 411625663 682613936 967637018 57705086 365295145 925644068 965942813 107016013 618951132 753122830 814025862 395813237 862247591 59682190 137421707 798812728 973523585 323898892 364202182 100314206 926723067 545753089 980279474 824351756 872157589 2327609 3212821 907016405 921018604 787511261 808254131 270785314 886810592 72443637 511075365 554039605 970990708 991490102 994252131 732706663 859630849 176798652 956608383 238974167 746142725 541447522 990996771 36013972 176216904 810544367 874137039 200456735 823656080 542666299 915051874 131454605 464847197 208578760 676627676 698448125 814374763 820517099 858230004 501638691 924228966 872116149 919392345 663642951 749195895 943575343 998545239 718480480 775397276 337668988 665574160 41453390 363407292 330455444 513074968 671660911 897072292 45651755 310849387 962015002 969892743 46175956 873542637 987979381 990533379 834097167 886248420 799238989 971957630 683788255 990968609 127360251 187677089 884480629 969506134 769395932 812310613 897894844 997252758 291962812 319423218 579914970 705562393 224871597 556884071 985911245 990717822 877310331 982301750 17595145 107443420 648601729 753645809 931461594 954265373 673940939 895101300 253161555 430893171 930881620 986066566 615716006 665385701 267647192 301367553 714344333 807774633 617360046 844870788 870618363 952228548 805498714 882704723 934733752 940907903 372950786 940207865 786241210 922015962 641025288 927373144 358043120 562486318 400839337 893960665 494092459 687705195 268740090 948366933 615574936 842648591 797348801 962401497 315567619 696247118 247518157 692694337 161535202 899591816 767648732 925821600 206114585 337331542 876147615 896525960 989609508 995841733 127701004 383573835 356263288 868775585 479164329 851548590 867544767 943874261 585872816 954007225 727758527 796575202 837213255 843237055 324746214 601156743 803807854 893252296 614025577 663375687 127544224 965301187 114589529 878540323 434202266 462140642 715075917 855605701 199806714 597472525 586983318 838254135 991185335 997884036 899121392 922147559 383491262 643223623 124202093 838930280 385461586 755448095 599909937 603301617 781195921 819857759 69341037 204798754 781368721 961577915 770233469 943744982 826473458 915793731 381549899 846268218 375199962 406161457 264581417 356807703 62646635 920365352 425762461 875373949 735236755 923584582 764634526 780382770 969230136 985110005 14932574 610015279 344149266 615921783 222085289 339454649 587819420 757738635 604807458 966288525 635637119 813133892 158199600 926202948 711527440 993118245 640886780 898966444 35064060 941033092 603681241 828463382 686044453 880093200 165130344 472291703 516117882 634503994 287412079 643552579 880420031 977889086 522111316 769472321 223466736 698991991 144723483 937787635 831920658 877307520 834874124 922497715 567833045 846163044 491783829 850756879 967142055 978128311 89422161 900572660 346489261 581090318 342498711 959039378 665828158 811875449 41753762 405980334 184614430 541052221 603386616 938625818 544185834 906970272 736920457 834674389 953516225 956566876 593656487 871447859 801625298 823980339 631705036 637810854 982514961 995384784 871420429 888671337 819460667 952979260 392357071 537178159 214080359 405015229 432196833 604238983 879193277 941407470 786297288 850312327 342723626 821540610 551851939 856189867 483762968 934600411 147771544 853348706 85185512 481159646 28229570 233117195 560435289 932973898 426502092 673882363 617735932 751338362 188322565 706020867 101355573 664045590 756688086 868788181 435868387 762116438 193026268 955200278 511362589 583780404 216630819 480839385 921391148 932966352 515445152 766267896 746141668 753220294 84221898 570063074 538800920 625297126 524862509 822008546 154072463 909883200 382208999 510366724 56309505 894441706 439841998 736819591 371719346 794709211 892523564 936543097 188112705 306426162 68509537 855731471 874983873 981593654 625970666 861922831 150002113 426662093 975675841 994113284 471632185 759459125 418841266 587997119 352063308 864861821 510010281 755127863 541965794 845986171 591100559 662666684 667498496 901202893 414492454 628915797 629645148 756879019 639915750 864966826 655464509 956190481 318309125 857613806 952883669 985051225 767824960 807274417 565374525 808150400 795860566 925758669 223194074 842230742 158313408 287700621 250692089 934976331 413712995 795424137 109467977 758543183 613773436 919055983 754696422 801893251 433791562 496667311 215178367 496413351 673366968 817623953 811887926 866867431 955681754 993335447 199891236 656046086 549217664 975220256 149989592 429163804 207396741 519916875 273977939 472680185 77636029 907557614 872285962 915618218 814127929 968523315 358739341 749078018 947609110 984210983 74482177 229391422 840686566 880844046 505653127 834995531 756497329 912998685 423706254 740959786 715711172 834564189 976243967 981346724 671388717 982092769 707748121 852388146 969821026 985265821 543120139 895085184 681401558 797720844 77312502 858348672 866759221 967333279 105558446 884904227 161371178 494772641 324522351 327282949 842771163 930323623 160790863 792900129 769657485 893842199 278052250 515041754 311429395 853306036 564607614 800377227 326033849 452769476 201408357 770468711 412087163 725333537 445766125 828987450 186999665 616081937 573179456 767387050 669243816 956632977 889381980 935809270 985404577 992742486 704034836 773459255 893421968 956743125 46888361 431466536 51192339 158064240 677359640 858945717 812234827 937107181 321591137 459324228 135410821 524895860 176495889 451671726 517108665 670682592 841450511 893498678 733569909 747682695 430630185 610004347 664795577 777995997 836608304 898928458 964139163 997587777 442395009 749204514 212102526 401003266 85386458 277223311 542584571 706715508 427386224 641819541 433004830 904002364 117381190 928881554 460272761 481477767 415527365 536184369 418457823 981390894 65840385 757454657 645798845 713759492 382512518 479864413 579948415 602355435 694617071 960613922 360185295 542471076 597009199 648210977 636476914 903664473 365972780 703539678 744075606 951501219 361123531 643784496 92637286 941585001 749771054 828057015 275532594 584961526 466275665 874593124 705507015 781395869 965185593 991800093 938016529 952526770 318158163 398948115 585563057 653004625 438071352 938556058 417248269 925369968 734825096 835147410 472309015 860837079 590875058 647756189 580814706 720448614 244471739 439702505 695148815 884720383 33531029 223293647 887993864 901571416 253825699 421486438 705174002 807514524 740103430 751022579 93978077 899719285 883273049 890267391 663069956 791445358 754633496 814965301 947881524 985612411 562713243 968132443 333462161 716244505 60955753 338123822 26639738 665607717 829976019 849955119 36662893 85757859 273119715 417888363 729414195 942448211 91729768 541903543 705269811 908265594 840347185 920099066 68030238 512696332 525516122 872255760 726619395 809047609 529108929 885740960 365515758 367528973 343875290 797996263 157605665 453717600 851954494 866139873 477636487 788346578 194359470 331816246 390108244 731571500 985337975 989097148 31104459 362525576 720371038 927813253 993670688 995464419 965736633 968204797 171765541 280186396 138750261 634947205 216743199 414942443 340553664 820837000 290393879 657948027 812798373 959830467 584580218 940866750 794100733 796663399 564301076 891471812 763387451 868461070 822588412 915481678 855441715 921893012 66677693 922604750 442021381 705407928 716695466 833201105 102710772 486808667 391181746 856397183 85427243 519750145 200635733 335163501 347879243 410090136 450456142 568425008 870722532 984715427 879270957 967781318 594483092 861434344 685593564 756127195 261221296 312419891 614545441 670728547 760659438 903341752 170846546 840357058 976290920 998458915 993383569 997542481 50982957 621657329 357793025 655936358 457660569 496875899 365689896 867402342 363120026 501075694 947401804 995095366 372007124 879194454 110693103 607570867 811886594 986381300 672742245 720692287 682108131 760502674 406392694 596957430 735206417 898973604 490856746 493527460 58835697 757486160 809214054 996646922 583395226 676239128 404418505 504465190 346132891 951249947 761704731 841150167 931575829 972292091 650830369 884505842 360250743 504808049 883568619 940902750 984219247 991559884 759793019 976621515 307758035 370681396 197795025 547400319 731389449 909567072 476796298 900910914 649330852 871063065 460217842 477821765 561150254 650845954 52704091 280999522 948705542 975954618 333786591 982508969 621805262 744709421 822396915 918351114 816634325 901427685 901622714 998320261 473388036 961181347 761718968 989301572 79800 891978346 202843612 574703497 32252071 428490592 491647505 754919917 806969386 908074489 510143685 707582879 960660216 999316500 114142788 225115789 908537649 926504064 687835675 791305452 474974094 672767924 86211732 184207627 287987536 868463623 525947557 676009238 19556842 270285486 439717348 653936325 531748671 753979151 725880431 798994526 746048018 824847578 930466101 931915417 229453882 917136983 661367116 906751225 86415093 923385132 613980211 983615903 274425249 738353676 666345067 707923710 297636906 548962826 487160179 602381071 249542059 376711969 234040465 359198671 295146617 523523498 780203096 871960668 737290295 988735099 968774382 976237496 828043202 897243135 619802074 976329662 360373284 522297162 818653143 901979231 642686499 838579079 640107445 832956992 755010668 782248653 443411118 914063776 351954047 993083494 876625261 965680213 70800969 437598692 541743480 810373301 122208542 577712179 244358363 796665666 176875541 841683732 411450816 869670337 978278045 997696027 828999284 880336520 248031210 897755414 460476619 706699484 550901020 720756715 219012077 374495446 294418396 382341361 632175543 685461094 938066475 989973544 489122882 692197456 435389445 635243165 419694643 700337965 280557310 519216154 949350567 974096191 680957958 832337267 860053039 947175595 341585765 865875026 656698782 826105202 684318971 792936879 668357759 769775061 758687212 932440941 369343134 867417930 859372667 914276557 370893179 604312865 116377741 527259273 465392271 848597094 241402379 904789891 837220462 891445324 924061862 972489871 101681660 251822620 451533340 548133657 481461013 819664264 857601457 979985698 836212403 916098704 334886802 648020263 257624260 572367768 820716213 824539396 950673736 959666285 403197802 478917196 283403560 449387530 683769253 698856937 397482833 434067799 120495500 682827719 689843255 744409731 113096391 539627360 127507106 403706891 538126412 615970012 526992039 645815540 611261663 725831485 789251816 895431739 266747597 397083834 172222874 305587536 446519 109355940 75921134 738318750 517156947 825070038 294576048 491407314 347429556 498161287 846699281 849306929 860436651 915492505 233429577 350291802 76093738 190708266 819804581 906922387 501734051 586371632 593272424 779720718 321072833 956084990 497252184 521914491 188036753 274418670 224354079 746292054 665689805 798789035 433843140 770659639 862533046 864603645 832551902 885435863 946181372 947541293 356987443 557103427 463613046 685689073 916305786 998282781 883592910 934258243 969868794 983167226 36920878 598428558 931503247 980324222 601117273 788599851 844451124 945744381 491491246 756044186 523936115 669525225 604678327 663615174 47332777 884020916 935323960 964370163 570243738 992098283 781981842 843877994 221318975 479713274 352468576 636232011 516436547 835264662 294973365 648875573 344714069 576609068 979528768 994312204 402933350 424044871 518559672 851220494 686434298 778140290 804773265 940446428 715295792 988233920 120343275 314284838 253108594 861204141 943130369 963324226 143257821 581238751 920135464 930281463 274322392 692855247 277051223 312282513 744300150 764787460 605182626 691693189 219178829 751034174 324337547 622581885 95135606 285651829 443364337 918575762 335809138 402832776 695033050 911642569 68565672 219765212 592778816 864317048 347496026 844520867 998338000 998449832 536471041 566360909 360293846 806923570 719781797 977330133 593675675 630810372 642483932 726376308 265425124 300543931 734040046 875141243 792453764 869141563 671988389 777648148 848259905 992339615 801266297 843788684 483580004 747369001 961433343 980452778 143908271 166654014 745804555 886428982 928151291 962887972 465677171 599932928 814334191 907831744 6834567 506451081 650385083 744730620 341992470 545618481 11641844 398785501 663195061 909710261 741265628 855958449 231150394 756991258 775446484 817273820 137535535 251546466 353563244 384940643 980264525 996265100 54092053 552969106 400309490 596680054 93014849 718396559 144821180 631190875 585974917 832135426 115093886 867613554 489973458 497929486 806226901 836484259 497922868 939588010 668694829 769220777 246279129 598971947 5706263 922305536 650413901 796296805 23272408 582778802 357611647 464459490 395956027 604948195 637718292 695871269 953208550 963755236 682160458 874385480 897227042 972216428 28892460 273560294 951451936 986318788 330034353 374514350 405985195 687114042 602445978 874979751 506343019 867649141 172589123 626551873 840336998 879865849 171405328 260372692 33948594 876430624 974061543 977737639 374938076 819254264 724087881 766778108 403352327 723840187 875021625 902133277 458397817 577033076 898049658 910385875 317339275 557157200 753463697 754629422 625620921 925458958 398753777 788197867 724696517 887224376 505192272 749889267 58449289 611785483 127513446 817768246 924423243 929332782 737490933 761829169 141912666 552012473 216845341 604549662 219509255 298535028 39904912 402078406 371890078 694240351 720281647 803562398 680915140 934721625 838848149 982748976 538188944 878514680 262651900 780349992 776665253 902453401 144181345 312315515 333452780 837642089 743586313 973357126 658056884 885657471 473479796 527363107 437937229 757357980 217109051 695373907 602469111 811348435 757003590 770551364 807955475 971352868 33373853 256573626 807429517 936988469 730728317 866246797 920691569 989486909 568461118 954552174 315783894 871973655 565297742 761265311 78122416 694084289 968854447 991187957 739197145 826940332 893005954 964365855 262790145 836178789 354502453 443918464 635752502 682965730 403692624 701262661 333817295 830100375 934000972 979014783 971810864 984597341 259639385 797927706 156183832 444978539 849255085 908946358 928093454 976588402 768652836 889018272 87414836 638600837 954640686 985397069 567214207 849997461 25514644 219266942 733292602 955380035 4888610 550856236 473120765 565373233 374903398 530548116 337527095 998961905 315793898 848015529 153621501 320144524 144817604 305509737 146272771 755622412 76631588 475941934 761214807 970824915 968339329 981483952 244341239 540078549 66398824 308842063 818704397 960026727 679102269 788319105 996931940 998411939 453744575 548242547 762769037 867807596 885289942 986895264 49906801 987237635 601856 460182725 147323688 259483274 84401099 295803934 354614985 527122788 78214780 465890133 810305751 836976799 692895202 866339920 467906655 836188936 214553606 503281886 769299294 820902111 557029111 826503408 494836481 605052635 50408487 231907377 46685837 323113698 125837636 498086000 216108600 938209848 72655703 418815454 474921170 880341241 434314762 972356061 120641828 284172182 994150496 997009372 957235620 967774264 385879709 591885779 805587789 931857582 706590679 926251799 873004912 917976466 948043221 988832341 644062820 969906678 453131657 872474149 344697790 878828819 541937464 951894673 88292782 835661526 960392051 984900967 587859292 626911589 91275278 715982239 373979822 436323576 427145522 479951836 90254744 682399811 948511259 952543217 115054519 904168073 767514241 887078791 383774619 670661125 849994437 903325598 418770002 931496203 526719312 995092023 945525005 958848151 38194463 633620074 427046832 537705479 702156899 960328909 592647295 612871851 777507259 813788089 661273071 793202352 174457665 547697258 432303706 883813432 344667203 520904869 777797602 848497975 351665880 659790901 367841250 386043510 619743341 630462733 932952349 964228416 644248297 890609438 947063335 975450929 967027123 983208930 740870706 806509377 658544478 951891208 744264243 982517529 716087749 851800919 666919014 894547182 538443977 860066777 577873886 734330609 525924804 526179614 553202508 888257645 529033122 713060447 291701373 603322553 91996080 881073180 534785379 558684179 685846282 939980248 880513309 905111812 217450733 311357254 123142313 736615096 470492414 727541823 180241943 859581468 856409309 940831539 852489324 989114431 90288515 471578417 608096817 642579658 771838839 961835283 57448319 176536763 212217656 252913524 287747321 940610848 852095726 969679946 897436251 967182700 263305030 411541979 261269607 450069236 387815218 414717484 431506846 711021640 418267018 657944387 304015734 665811132 472913340 922163009 620055995 916634376 983528101 988259871 202017480 783443816 354639214 814753559 393436497 845908098 23688914 835839048 598641347 826016095 849146874 941098427 917202201 952916583 68628253 507961344 727076875 800653284 629541230 812612258 92340369 925438489 238318827 580404523 792504942 976858959 527287468 719590262 640688153 685095143 23996965 305113908 240844375 784880691 202609520 725412097 735158195 851418561 900892363 999211344 523506286 712623602 148873529 727533834 792668202 837056636 348673584 657534097 826164023 943359502 102471751 304549207 99168384 139612230 932626321 997373741 725614613 930082346 203262619 684660209 973761988 987601573 55835638 781792677 267124935 483986062 891368590 899111170 253793222 581745589 974569952 976037555 650871298 704361048 867754811 888069449 205506548 658786680 907376333 917730836 204903753 488131977 17343748 852456394 710472178 969792916 87591024 441913372 404300759 805667409 692423736 895708757 744648877 935742494 153745520 385275230 758622765 995635702 775102614 871605200 681525214 734251497 322741807 919789574 359330489 973297714 27886494 675247854 84503773 671382904 459742079 581412563 145123746 151892153 163291222 800524516 936343516 965589942 694233472 722777776 44468059 584490131 65010392 76405887 66704990 75518305 769468786 928095095 658888654 742243593 612646314 624455057 358094463 617350457 615787276 731757248 481247418 623449972 906190353 953441410 592115038 698522592 647950583 664991954 140146499 564506343 477045319 558880978 897902995 963795336 350203014 885508695 217840905 527355314 963118010 995734904 544255997 830906681 392265512 865272504 212655170 435596578 209995406 443954702 280942673 782448343 96584435 741748568 187118769 324867631 390772645 541274614 631133256 991581000 527896003 748780502 652680636 700933331 876861268 917050886 87428603 353189734 788489991 917057266 496789225 874324084 838832993 998042914 455942828 533500280 875259256 948239151 977984509 986032543 700001789 894500828 842688233 901645874 843283881 973193068 483898061 598515562 526923309 990558112 742879445 786165934 548836258 935815221 846197836 863591697 587781912 994240250 620510811 962107835 238274792 805226394 413293121 947469770 371878864 917132528 950110047 957930369 569887416 812656580 881215411 981196891 352972908 983034694 246343589 272423954 694538892 878075752 851215292 877867888 259486339 553463520 820845446 992692489 643445503 921938886 697058498 996453872 246941600 766227232 261317179 769117802 42812182 500521901 103759420 179881923 725009822 758860579 572512130 731322678 884922017 981514509 142986033 726983442 284679431 841193840 419895172 589544097 323151284 480125190 159013723 702802235 291288332 487354327 909398975 938266069 890534744 989051668 787375391 867216648 314442749 715913432 97810791 145166727 26077366 412782473 95227399 521142134 431080668 959158574 787763614 843674311 236893461 539322622 113719110 296618468 515143233 554375235 404044415 730873866 544237875 749988513 395416772 651576594 86350781 673424634 331764618 564257560 596138974 694368524 311459888 363456536 189414030 709650697 512747165 887956237 256882910 426094420 332025183 425849823 423836446 610541377 837000284 951238190 987007347 992764868 696856437 714182744 676921649 992428995 325365626 942273897 487342201 674151826 74747018 498946921 480843529 787130913 815769221 945798431 958482598 988755461 299214584 667663789 955791068 965263667 3028146 741425061 767160801 867785253 946098224 976675335 910650152 993423086 610480703 855226003 647325887 650586581 811229697 948863946 65402732 766957974 784834766 830461787 448257961 449722321 680844056 988968397 18000496 52113393 572017935 799264787 70063382 450053490 762717182 798132827 526047958 874156028 653242284 750655700 683968936 994538709 398653151 413200055 667937188 687514323 396062146 427623101 956818869 958149591 959604207 959889450 539286740 774361940 693947198 821890650 503864290 889785160 869969571 962582973 720851380 929632788 249322868 257733154 359924357 764109518 990930244 992733229 167818168 614820913 832837054 855453046 234676190 333124860 149080238 569700591 252415449 346166953 970916929 982431753 159294146 186429489 12802435 177720061 5233867 739352183 373081317 448100808 612377749 878394173 144385341 534597798 164393447 938559822 41422665 306145538 630097269 791782400 280279392 562884520 815785563 900962421 37823676 622041535 105768956 516230301 889043158 987532562 511755971 609091690 673560767 778590419 699313316 755559399 940684987 977972871 148340292 958096952 173550319 984424499 569676573 901121861 100101323 654668367 192164060 581459303 302174760 532353304 484962568 841211448 221203309 532927579 450397301 949133914 182722532 543647651 277605941 752848018 682756250 966111659 716306312 780013619 88244396 468658361 986456302 989111182 327070878 945197018 887692829 991062560 906165529 980892672 891267957 920002773 199161835 914867731 236521295 763843885 322848749 776207325 770687970 905012823 298902531 803084807 825876501 938108499 486988182 792418544 905832478 995947906 833218404 987707903 404368909 654641469 149805793 526016946 98103443 803247076 588541793 928337725 791903463 909473097 803678401 961506750 447031759 925693039 432765708 809876704 47948071 986257328 881218250 937741207 487747644 935253893 203790119 637167197 827530388 859597028 857795161 940477283 169685888 333811589 67830060 430955833 82473397 178902937 259823988 462276567 31995214 646587773 507242050 854606405 849051952 933275777 900456471 933575388 107189530 579089432 192176468 255597867 916181274 931280781 704356464 999009883 227153578 691331748 244346697 755867431 204611800 306926043 405150138 706908005 407471259 956994999 131521700 762309865 928035621 995577764 52680547 668106898 466991979 822170270 860337723 910173692 205115960 725923098 620456802 719440417 841120532 940772706 994539848 997164474 250548465 706104955 831556468 867203648 87375081 932717458 333932080 639261860 586572057 820527730 744052713 887471229 296914712 800337541 407723862 409692637 155462468 205724577 945247755 993554703 814418719 892159670 870757209 979152169 115402362 528350751 973684502 983254395 69648093 331793235 886793578 935184056 170626781 308478330 775479949 970230076 906715668 995593227 539443467 962712952 17745083 875974759 462486301 970017920 480859182 794735083 94862402 202937860 411462201 839050606 838515854 915526715 969686437 991436189 455735397 968294252 199293992 469188145 781883289 964552054 940571584 994603059 454643898 748494419 656179314 658919407 46190764 542305346 740349648 792815085 218388545 445629265 527949681 763201013 16496014 54467252 417804000 735496359 450417818 919225648 672178796 966106277 448179857 900838591 78556691 245481991 435454493 832802527 7115916 439535299 815668638 994006348 665253615 802674249 876991178 914712537 277263756 386951392 608835632 693267930 446790786 712296192 982287463 993212145 136199700 351176339 163152671 204089390 736920818 829864386 495935770 794007526 760258055 851870616 935722426 970190650 273326834 435690127 820623538 903869877 513826085 873142587 969077522 990439817 752930040 837541098 959180854 998581639 687604911 708296106 100769914 516443895 713494473 744731599 767431659 989574621 748264986 967197187 556775093 875596078 931947029 950797434 753681726 908265133 952072069 981842953 83598982 608781237 589234868 942775258 971119361 982888474 240801212 932425531 926000126 947343713 626480286 983685708 976738659 988642641 794445120 980028721 516210512 598917862 376820939 850768714 656168163 856704213 34854162 471740824 833221511 887657832 631610374 966342718 222789524 538007886 289281974 735793353 830225856 866260269 62878518 336805934 343175873 779905099 615503995 757628590 396449119 794841547 829304817 921737228 893019055 942276585 761001172 919929143 232791083 878341118 72552524 570403087 613843363 989571023 985705860 995425223 67982404 912659404 863485818 937370094 753099695 915383640 129473097 890471910 804159016 939908028 581243411 820268694 654016185 990401914 493680958 746659685 119687868 705412129 191997826 817442561 644264283 971989678 807486875 917304247 114828748 733367259 795252937 898075865 352032417 525366652 205888845 788110203 383335391 895003136 752352065 879617345 391633985 686615505 533554544 848715304 931791361 987748366 366923161 907087528 234901711 735390587 766584458 883138771 817086592 964297159 813589472 887239032 308089190 875479712 263886158 414383756 332925381 880078357 210170537 810201954 861147387 902193390 260023941 642157354 23044494 827445542 447946211 498170038 518306497 582676588 625292935 808014828 911045214 990433919 874950403 917512445 228952091 545561698 749397200 984831702 942475860 992772057 513457802 544189955 725894582 840340983 170507871 720432542 367008903 729762964 380208301 811623486 67618514 157347065 593162488 756659830 31914341 386298780 974358243 984919967 836315168 898823002 108427223 411050306 217889657 680951075 424461524 828081467 793128338 978645476 738357562 891213142 411407326 471587424 509095087 987034662 319693679 715188034 624189649 684183674 637722718 961475444 519829504 818527162 796624035 948114014 346566899 951252666 241118019 308259596 800288429 862098811 709012008 918617053 991193590 992741600 909803688 918076378 710404465 910989393 355133888 926938325 714238151 876658197 682670951 774408495 458680445 727029349 266232429 523702981 210111263 730311744 790702268 865248993 768748171 952708337 654888833 879379780 85249906 261880381 943402158 964409717 611395919 892831466 988383881 988457781 590938168 968041158 301220610 603863948 950248346 990258215 950522340 985177202 699087372 917807432 870470426 937085730 388267071 791778400 998574042 999093234 436522926 974662119 120913504 613037246 36184831 814060652 618078924 708787891 318493519 475778254 701172858 918133829 374931464 901405611 833858264 862290027 894911379 983091766 153230455 243324841 162137128 797293641 848497033 873708364 607530529 667540450 407568248 489296360 739059840 763191629 276804265 343644436 351844685 782193784 786041302 911487086 249783116 568922743 406748350 720946269 723642050 794874324 909358146 914523251 743444629 785400128 77353132 104546506 84820490 295560097 428508395 578309711 895312795 955010853 136107968 145062335 83928425 449062914 299728519 329234444 439944689 540729079 193643909 397722502 273311708 513926990 20189367 347473142 506502721 671975700 26604315 987261359 454394708 789402687 694510066 820293644 16072179 448243065 849513884 994747592 364459718 543371516 293995921 461999429 571669629 658994375 912950660 916097655 95283722 703731858 678710811 784143489 136482659 234451914 456199821 631411030 51071465 463537620 937272465 981479951 451530814 563521294 679845270 825385792 142813437 698035227 649426549 815961820 325604155 959067357 742921854 785669411 531911254 739272992 241803468 550622326 856736347 974661501 577512386 700087072 153264515 626616321 251392612 287269466 165079520 909229914 470965635 887193707 703780830 979580892 204426033 608833983 134959884 964513371 273389605 690969678 522203298 652606420 663165535 704321951 22695794 76918411 687934582 761569193 764112746 992896472 683448140 709403513 624068658 881067164 599690918 938791671 848873650 849413612 464023725 602736231 215895840 544972088 641536183 722089848 680539595 756278199 448346609 756891931 532426550 698588939 201182492 410996818 233956390 455885811 305747010 602749722 474107444 497334958 126933313 375623562 172687720 710861188 843704903 894951464 772025209 896836955 299325662 933594114 61327022 146100621 172091079 259403694 144839697 481778955 629795331 671455950 923328105 941306939 284368739 351358583 436742471 822416479 40203400 825283653 437993062 703848610 411949274 419181215 554712986 657909527 676736947 864592281 477957859 874679929 880469454 898235492 675693413 967495813 188109358 944592477 276903659 504955696 389615179 570257763 424138248 467391183 472069428 575999218 750578062 757902960 568233360 574124124 881726804 941646700 420615686 837330351 348638865 872096418 849274297 873633429 912557823 966119514 384991547 473691456 885765286 991006796 407829621 599333906 352745628 562232918 689082743 882597758 171732701 842308192 142529764 211479830 145576691 869798967 559806514 645191377 104146163 921378328 733209985 987285525 935359964 985208486 616977104 800908043 880940030 887110591 371656017 526132825 177107179 820557975 358329430 417185988 677277912 880131188 796222113 978043080 516131160 639105090 454507093 567818632 965159022 997186454 576853107 836034937 690245153 884714324 681190285 880290226 964938116 979205079 670331091 884948469 687361625 992314368 566369563 602604743 428201874 890710224 4232252 258042742 247078051 598930392 163102997 369343088 278699298 728222729 233913795 542306234 128569969 833962146 392933303 452530628 260587221 501511362 655803735 677953609 841575132 963422737 670746780 809588332 170095395 302243153 693116059 748236490 922891250 972125562 182260837 716389851 999216510 999254314 508015833 885846047 167392136 528515327 52624084 492863148 503903142 592874356 222570523 755236596 860074292 888337381 910686632 919313508 277699376 571023234 584294204 829581153 898029641 941538885 997302691 997326202 809314199 894687246 399136147 510338629 382974675 431771402 985927890 993341611 521875273 729810875 463624000 585474945 201575448 695829731 464274687 887091701 565762838 721014259 273195745 791830894 392212169 462303553 77347444 113643368 129982555 531789139 69380161 625161979 753906715 910063458 193142219 404834520 56771237 907207042 825608794 878520117 25798974 84840145 824712521 840383804 984152869 991278950 794631489 965329792 339429643 905687986 676099517 743205131 3260802 912678332 337308109 706246704 709095259 926380127 396118102 868157354 784906274 912683867 142767881 357161886 357779436 573170357 660019918 695231354 539054185 975323834 789982780 839795033 333901839 849357250 70499563 191928900 912307033 956827216 338681480 889577810 484588343 862111364 239399360 256100756 97366406 972260382 371583938 505602962 242913430 253225859 823454596 825213121 144866659 391522253 393967843 974771576 247872155 756999612 283459313 547509666 911738676 951231549 177702375 542186626 281375357 415957532 635624076 766265884 674851809 775203714 948486268 981454498 473419581 626028059 722271453 758451244 431336130 514242101 122557371 575055107 701923505 816521524 440329284 797134735 846439641 930662252 914650782 962794243 297207248 455463015 719049994 850100586 165817938 953921641 232590138 328231455 891178788 984965796 734609550 836637838 655419927 915223727 659934710 947723497 168535439 927524119 540514416 773566631 542145416 673109162 688963426 945738624 53936374 780241594 906271858 953629208 90971643 687470054 720225715 746723561 336517886 648990027 645543746 949228493 941740860 979079614 463790532 566876191 972907177 998209125 366562380 509792014 460322033 573246196 322812594 332093443 891886648 956051601 581672232 878673441 709703593 929237688 150484559 287676347 767383913 918257937 103371614 683770278 813036078 939962347 549468504 945995421 524056792 706881464 501963985 582131613 740435460 897076596 327942682 422594570 873568321 993749708 981292307 995563506 317057877 599490670 459781973 840879536 964742727 994059965 83110068 678543609 709025278 997674279 142291133 485351054 987245171 990097897 229074867 329627556 630407278 676564140 516497673 768863580 246951149 865373589 47284995 336198671 879390919 961541794 254715598 483288311 267358373 700134594 785874758 989477697 411447506 580382662 273100082 427990472 845073610 969925034 454752776 535746538 518800219 679291014 745150014 789281679 910074149 970086489 479682738 923980042 307765880 837855703 611638132 700295373 446047115 931119551 620833565 998403670 350869548 563800142 244656396 858260307 577682655 969186876 328706326 895220689 175389862 709243645 147278310 357150016 708943633 887426635 956551985 972964949 700000155 755866701 196461470 813241069 592941582 656742440 837621741 879815969 784529960 984015123 215475014 454889079 216198710 822791215 66450524 400303142 644201834 802680880 411479791 961473727 316558533 495814050 150603638 774329665 791036958 853427282 88260885 126530266 714580827 850852746 397824679 643325302 915421722 931268237 400013309 641636054 945217583 987369930 808606077 898572223 485772095 731985758 755529306 912973187 847408117 907412382 431487216 520109004 635129144 995453934 322922419 666187240 637417071 786746855 620403216 840479222 709631961 756852508 104905484 405124790 451323989 484520940 618366924 762071276 236049005 550460712 66512973 152068163 58100760 499006797 384115604 501534145 896042603 898252951 220010196 743364176 945568516 980796810 438611972 975591662 301929932 371103337 650388026 814414937 3271931 222011484 490075652 506773405 554271385 908582600 976777540 993556451 775604725 870209685 220471624 383615180 801469174 925858439 172272038 398642878 880954142 912930353 814780357 859819479 345686933 939058190 433342164 699432889 508186880 911496021 76327403 607371395 641703748 778902911 51805973 72081160 77488225 707788160 496774604 911320344 132658172 239657185 306495897 530639614 387006218 407135303 622664967 707029558 533535669 937372376 906028028 914209748 592715062 614116497 872650785 875996494 136696596 982091906 717323869 803079843 901781394 983446858 207842366 582722017 602787306 787443389 888917440 986248218 461871773 949225188 177952319 408730063 817223628 991299738 987614847 994609229 209187186 587532128 197510308 737898518 360655572 846604480 105518572 943517164 349166400 959211890 492423720 589512688 909331475 986877077 604656048 985547473 866515193 928044220 628107535 635182708 117727962 361375950 948578302 990426580 985391541 997857026 64256554 768445869 356791080 642293314 526178183 770570389 379929731 977247661 29309689 98482705 749544091 954307451 858332555 929466933 715037026 771965583 554241889 802083413 20061205 626508716 905833295 951199135 33656240 603989590 876242014 912007980 677828313 922905604 745030403 937013429 545852951 830496109 69042123 133574093 532223391 892468525 803504396 915908817 453767933 813338373 534080626 781705452 865226095 973194209 894480394 996463282 787165340 921180025 482509003 631777417 45202855 314598076 714430385 868227802 16316449 785354755 216130371 325712542 373033876 426643125 167504991 401808335 969602711 996064027 306232078 718270349 74651620 707824223 260212176 296765359 533025204 933144828 463090881 739599267 83819076 567738474 139907488 438786959 427440287 884786667 899468522 984886964 662551104 947031591 558083953 598546763 594985858 893015258 25384930 607810486 749763114 856073750 959297821 999195675 425314658 709494035 597402606 606030533 434779846 923963065 888123796 947449945 758311805 948527063 356307996 929426195 594103448 769125924 945233137 959286884 339743826 502494728 879222222 997708454 182676630 203397202 520039691 822298334 484108356 913358501 574322422 760208670 373501979 984134422 121448672 495370239 537408995 677474382 754914288 868310936 589584705 907134375 726284073 874700462 644751371 649859524 310918578 597541850 822395067 844574711 48418309 227074925 756657589 849402438 724022314 837152244 73120269 666767212 82935930 970866440 171095183 570848645 738570166 749318020 759313743 781519544 815513804 936510212 12816322 801033224 839984427 946810535 511784719 782213310 428184036 886583643 760453233 765012652 526179991 986718638 140059768 164560059 249369996 917890248 241203056 721716450 511591448 977931580 947073441 982587225 436962742 987895124 439052741 932939645 973172155 987700151 798168416 900373368 680598576 829211472 828389890 963614522 887349797 904145746 949650167 991640137 283955484 611042963 496237744 952127108 512518903 964769141 661146671 935580489 475858738 613912865 508893217 623575306 219359253 504014976 479130219 481875580 563802163 946847310 895192211 902594546 904592595 936428733 389649123 704813005 35978367 101542644 235729904 826213940 394440394 884373985 696701503 923089231 766175722 929743616 477618694 640065617 192665435 695610822 321859338 807609164 974481774 992221885 632206799 859848961 541081329 760620598 384428977 996881267 784936066 883240777 914725657 982130703 32075003 967912259 662480316 704443226 713528583 996830656 237225976 763058423 507102548 579677041 622904456 991876303 310432277 908972867 975001398 976821642 1141317 236811805 277663276 671280118 661440171 964769597 451705826 763837000 994129743 997559354 903241542 905332409 248136917 372947749 745860322 791955039 819906331 908085569 827059945 933834181 871327711 939008003 549231871 563891679 155966682 694837355 8030644 979017541 528875388 837560637 988118215 990840292 257034925 380574706 264052135 945945550 53530441 880627884 446914372 829613546 231091175 290043028 801790549 910052993 86791412 774235998 857447871 861543668 327213804 758706943 587569741 632921856 58632002 899560979 565452303 795740147 352454321 837234484 578548499 736641046 919898994 992778151 656544913 983791757 993269674 993448605 449760775 623817593 383793517 881051984 917351165 937341132 113396723 394120861 593376950 932441793 989300903 990989508 996187718 998896381 561242893 577416591 944915173 998409956 75654105 830061610 148622928 705359567 638347102 859560921 753857004 885230415 465146435 819955552 373416486 376602823 754170826 909200292 5852575 839777676 980448572 997664339 602618957 742091268 416542821 948635536 718748206 899345265 197644637 656560781 909296881 934604839 568406137 637526223 545828898 560527822 192435685 365295376 729419040 849234951 118338686 212887511 304899659 901123985 465379736 609021496 689648499 907737201 51973507 931491052 95095269 598482846 384387631 445565530 841333289 958289414 313424493 578025545 297885911 381052633 101765806 886875202 700206227 861013113 619356691 922638791 322539143 782180072 221216263 380456348 448589040 862747723 267381201 556617595 574494979 972515546 205456457 875859183 540742625 751992081 29697688 378208407 693456784 958405888 187478068 278186260 364855995 545758713 46183331 46526511 341879440 879647177 16850454 304777757 671294696 975430012 429210773 832481593 424083692 620509478 23125871 770260773 772611412 823341359 124524633 623627885 732898082 781772283 427828706 834776663 683204565 987642376 442165787 815474009 450310469 785808632 198223390 768163302 972935148 976588570 65538641 600309101 369412759 467654788 587867335 788123753 240993912 434601068 995776521 998284649 111446905 703861985 799964194 933808786 431794771 608755135 129911878 503129444 137030695 692773081 87705685 648815807 441140825 950228279 933819186 979857521 264929627 587059522 233239512 743705314 451929229 678277700 521497084 934744245 339344202 710663820 341140069 961630416 140024605 766220149 783547031 806318921 515055062 784737191 648718680 698876706 513751274 618876773 842505007 897339538 250997520 595098876 731356800 843808795 783980797 986054264 147362302 400310697 433646421 703401777 75894747 544544234 217291141 371462850 937414588 977203066 965758492 983259054 290450655 713307078 109398794 201909219 855381776 984748582 941598532 982747228 399339097 478534691 939169321 949581018 947636249 991318948 496660167 556071016 242466054 357679737 627629790 811605708 471795636 742123466 139621284 192563636 345516455 487312253 362740504 755533578 605540991 803746387 608924731 769803226 268760517 457616564 472646569 674215177 380307782 771500576 790977493 908724364 769188986 970549523 326735497 382670405 549038185 788615836 76886287 211360625 357367660 665383357 287074451 965761519 40367885 259358413 587629243 620854726 249674177 290843844 378104125 841839293 964879666 991464541 535583707 863650544 76654129 882201146 827063521 829439310 30775370 464995095 401817002 795748339 833665180 931072088 51787594 201273932 31415342 71854701 74335890 972419026 540796717 735272720 151647379 687908769 974858984 986710803 109380941 184205815 281821974 705584039 788488016 858843516 486893355 589018823 627068745 835508589 208070608 611590590 929124235 956742809 247262897 966397424 858597011 973679710 537155872 721901353 459115990 643626953 390839392 598727074 713687545 951641208 665251424 813707868 716259182 768465540 344734432 918562051 96651359 216095869 962295512 976370448 642927883 998673051 995922089 998623854 690032265 816159416 786132786 864398128 11489800 418975278 647144440 814035081 930024497 951896038 286628275 322695060 887830501 983024036 484002093 633828363 548789973 635369271 355684945 937091733 321011553 720360454 65113495 156958120 280367899 328215422 487844711 542185534 528042360 564730314 684020588 705020276 987281790 987979022 803183983 902856500 966910255 967230868 384023744 478243122 956928942 986462741 125066172 656633097 385610562 871131619 866689580 989100803 930567892 932004646 302984270 835696823 259187290 465088675 260166310 981959441 152711940 894021952 530729058 735135014 7090707 139392961 582196327 712771595 407602683 993239549 424031591 979600828 510585524 810600434 492723513 580467063 280754968 915276983 584318626 957131606 985501951 992580117 817112521 988631392 107125399 509728564 493568400 981024608 418035592 697098837 665997376 755265886 424426131 544918278 356820338 727557242 999157972 999334003 793837225 880788019 141411575 497840819 104083782 291051935 459597889 516386800 425460841 943655020 352257838 624552936 795880791 925140463 364515653 544800356 578236834 604214338 101632564 411710450 717401013 944416250 75447444 258989543 961813439 976489550 553850686 722606802 962686224 983603033 375413408 564133279 363687819 733750066 234985970 490874397 986793272 990306957 501240386 939204065 703585696 856475079 638798761 806743531 842428229 850897372 279811501 864609714 271407118 571048713 839663091 958033645 309318449 943442605 494406593 907270118 907740934 952342319 239105539 725830364 7044956 309197950 262108369 466448447 137805807 222730983 260904044 625199676 47229085 638771768 295764129 852927877 363933672 700088705 458828846 868224980 562964637 825694515 627307980 730994982 996096376 997567592 211420336 500417121 233712818 448887846 31110581 92047543 496061526 922655758 294905800 581115735 558840988 950870427 807766375 976805711 396412275 481127975 30820793 978040994 106831875 572167408 854680629 923931641 554885497 633925754 639895218 857725930 526877784 837599288 489942393 825243439 80652592 863435248 650816352 784841275 505048181 824189322 790876633 956599102 719234072 922349012 208465321 352069374 265160337 735254789 516626921 652937404 18376348 608981629 459471531 603042531 865391359 904397435 188488112 771205816 718662814 918075454 160962585 989491121 26440462 994540387 687548526 834149283 438394228 730521641 160609810 564214146 93638972 333779168 474712335 853438523 606320912 741718052 238114364 923196043 965365429 986315395 54364961 606901906 582417257 959861715 831036126 956656495 942933778 971308118 744266669 871548744 107348255 609909938 385127618 578672252 245585399 577509490 849275284 988062316 365818347 519266734 471264380 544442209 644502496 812771362 322148341 548978939 153980104 559802186 669918802 883366757 86088928 110754026 895228637 918935305 110871843 977000700 44635375 838664152 988006612 993551085 157530439 853204171 136553469 447068294 65639000 524127660 196381895 498714544 910840113 924553438 536990764 887946935 21537673 558704821 904254602 965206209 228847844 883523208 369463325 678610038 742714215 803068298 103379880 355485973 88288470 760364261 294136936 932871980 21234080 99546261 880986370 973769730 168967332 664788969 836806835 910539986 849626731 940101323 549023863 917527242 798514714 815239118 42061296 988341802 411966855 464623902 555721924 663006235 886967144 942655817 31373250 613050662 733482012 763182293 253232953 519364281 13637677 821642716 627543665 921954779 278047718 846161602 258359298 360479762 785990057 921731732 783429159 875323022 139817471 445774163 16593940 527165287 803692504 868379182 475345806 622311968 123321638 823796129 955277283 986260744 137302771 545608510 400071551 522962095 378772054 459076261 842306321 973311124 363217963 437424135 757978435 918044926 499153702 884383297 673238973 737870531 600137140 606598765 26519430 198707909 111924564 389797248 642589150 689580756 771210085 814107402 366497634 743390687 54250803 877086729 800177334 862695581 141686876 288735788 143360163 405385532 80064914 604695634 906864483 955581173 739564065 861893913 1820434 946066943 912645236 912654763 150546063 302607237 827144126 829522363 925818543 994303661 31137974 96189600 427609349 961195558 349512586 484577575 285976473 533674496 441758720 627154034 624576182 916118062 622487100 764095285 677761364 743154673 969521989 978004378 379346177 484920591 492393830 897434797 427353678 986527550 471517854 505482635 331828759 510313144 525543155 558538100 848326095 971999161 720698222 961790763 562044854 927173803 378755571 465652653 390300306 398649611 502940902 686390384 745835941 855107930 253880333 653872871 367206942 566659967 850859038 855191912 353912222 609872085 679996117 881848707 908934305 930923187 603376909 825957249 979943322 997327821 231038636 735226464 421719931 494562029 204269536 206066310 35481153 462716985 195322472 385497466 85876208 983241921 616959186 834939547 124963312 656846515 798340022 996934198 551293831 711839849 507404484 940257275 122651659 338565123 137308956 442649895 234400623 662568170 17642819 969576806 865352055 932026680 63189574 620500471 453917194 921201036 158384471 224014841 150375231 741909593 464516315 839378856 376983330 888295354 411134229 983214813 870683511 959968944 843983954 915610806 981721371 991590377 971867274 990179000 301558152 497903470 774172036 893720074 371542225 430324323 688762210 783916778 168476095 355334787 228037030 527556247 137988008 357886490 318238040 661258367 599172969 884518321 91618484 186725137 84981983 641926317 866359446 913933489 588313498 593695750 232091108 810204991 482710335 642952553 631649574 689529590 758183570 952938136 896125467 925804272 266337626 271222372 87240666 379302032 291084695 778764248 89013155 426272484 977884410 994839766 515860742 656709945 379519898 433777963 244564194 884784580 554243527 983780088 981745660 992231794 346709904 984765860 206988976 914345850 155248450 264582560 650133674 811009269 12359965 224830405 558314534 973125106 693726 568962212 963224350 986037268 990952132 997127712 649954220 665934291 495787063 931835947 838336414 845443278 199990162 244125709 246875609 635723627 767269071 814126436 144812987 599213938 134806969 490265803 733649421 843400147 830738503 852698726 175861232 239549045 519104537 808402889 5185957 951361347 20369195 170781081 537518901 975992826 404516215 435089610 368647716 928975098 910898127 992980125 690264694 836384947 395825311 579927503 787642195 812909495 385189347 918509177 826048659 837817491 40042120 614280480 259096139 694462591 845817435 874232432 986603790 999309363 221754326 336131911 788164721 864647549 190272893 639049989 646706132 889231841 874088620 901455412 176828320 358716874 888522054 988948788 647588599 649715862 756192722 777693344 334416229 825796635 393655832 775514830 702620541 757232848 479232103 911064145 44324496 655593743 50452910 397861253 573414151 828902567 580711744 970496281 221422438 775279700 556351524 883130360 895668217 901803131 714421460 961762562 612958897 962820353 579155382 605508125 498968415 837692870 78337261 171309751 81560390 141705155 850950308 958699877 11312541 517238651 119523725 652399624 214345835 815443921 64990950 233784937 729065062 777721559 971444561 976797120 615133427 910661785 369262625 847408293 591972294 883139964 860774156 884568281 67892654 339602006 330707461 861864314 734740639 803260518 381122127 696952448 152524063 615590057 24836964 587938017 802378814 946935454 726000751 949921927 982826779 985855173 881622072 953923201 54747749 85240701 191568235 908706139 316108920 892363645 569986617 923026173 694308422 748043291 202555678 306012854 240609986 595119851 787301297 859774494 76533384 592650605 44588693 688812884 237406053 498327980 404608934 547579687 410454756 975274860 635487443 972136150 611088569 897293159 279631624 630440343 237376601 972548349 735484645 782618895 158387887 970330716 655515877 982479533 330797112 606614850 208037606 784632072 443221580 516861469 628188402 909760992 756584245 816643631 963044787 995787939 127082689 353237691 167639138 384437080 209479761 908873036 255997522 703722738 725602990 923806433 511096464 842312282 387592878 889388582 397657639 931835789 718389778 782159648 419268078 991999975 163885009 498049722 707627890 915104636 652635447 654135272 639246769 977269950 719840925 968048356 123693522 306526105 725988434 991378884 13168089 663324252 314213583 863618037 344223409 877013074 111375233 845852935 918403107 932393221 704563621 846007464 468549211 587367011 831593620 926859610 727208178 997668511 271345578 985200067 697602251 947847204 59141210 551825378 270340451 281031980 900279112 928616424 779996981 819930545 892195095 936520371 526423150 585607389 412435601 818330713 210990561 233060978 207160611 591901832 3654708 68025865 366956260 589058096 270650172 548542673 415310794 686542660 666498625 893079019 333414127 424557510 154452547 775537367 847505618 945812853 134930823 374478630 237245417 659176624 274576733 579091055 197574031 887329501 10296259 680248058 869814819 896924233 877267828 882454297 822261035 856602377 220876239 510142116 192412429 390830037 133478274 662119684 401030134 694646640 448006274 587073731 53046907 769699134 417010232 610963566 563843069 645072499 612337804 726824990 38737343 729779257 449960931 640403132 424804228 623873159 863320624 875206139 286492291 815483335 339781788 713880910 133691041 995290337 739327027 784870786 927717055 992627477 321127923 650168250 164016047 993699640 606363877 711352944 471748007 534409905 390270960 820854218 903065951 929227139 456866882 990067343 431233954 691169173 264834032 302813600 230122005 799973559 359574687 421212343 634816753 797690846 94941532 243429597 82304914 745692237 354758303 518814318 1963515 461506523 219352942 891106642 999307930 999387787 777015291 862550227 243351800 301606206 601869542 781609945 457548410 500080848 629229671 872487133 827726378 990827566 833717827 926930908 222738466 236070836 29779456 771629937 1755210 924826471 55753947 645828247 916791855 992588752 119007830 997802960 191968671 283061413 255271925 389196945 714324403 863649165 836622264 872804530 542751589 690656311 422689386 706378165 508506853 556902801 836911969 981438249 395294695 732055920 453954360 902697743 464715363 616734361 748228542 813580550 601097604 726642772 730794602 925887620 805769037 837101365 950838678 972842596 697449696 986606572 553515832 855144363 829166614 961491328 193776554 945527615 84572686 171059137 107318839 245075372 163647335 353105603 369447380 648781222 243823543 623243978 446020612 827818368 601206363 674634689 950154326 994257881 170897821 360680216 114794741 860118009 234316656 832122006 733569098 860813606 607244381 780705067 359052262 704287520 123800978 889691604 992178858 992703873 361733815 892251593 429381816 856056717 679327880 853182522 950704262 997301283 472780417 604807923 284611290 330630574 421431651 516997279 976655254 995893705 99774498 302746746 633287550 897317650 209705088 853961992 665392219 666464587 219702729 291667480 765305265 846581136 962952010 973825161 655646792 881343266 538468124 804311674 612454608 761173622 316607593 843915532 898163684 910146936 730329096 966644449 568150469 781764865 805472307 989846787 194990502 917391827 829285402 931959294 44017959 815458566 686067212 717061430 844573140 870122544 891415166 928906605 213874674 691024057 962099097 997866629 329497871 334123031 727884850 866858364 892032722 948593563 370703982 637828930 288872245 564660143 189363973 902259970 31446127 201060718 769536106 807193878 339679123 382663431 536815116 829882190 380374818 961538561 399193862 904426333 285880125 933593480 826402690 929101296 517706716 739007487 721391735 862209129 99185863 790067486 789390840 938532116 191303211 768328953 202619914 267159178 502500017 949423976 409271515 469985108 796721239 922101576 948574053 996318964 710128872 803888871 589626898 936833357 520394975 651022044 898590582 910417586 220694523 857680874 446042176 657618799 538743637 648968179 45156261 458415381 578908261 864788867 283850500 552068425 143059734 812195496 320468395 936339498 275077070 857563368 221030470 414392795 869447179 875739133 436538784 689274492 445702215 771190002 554634075 636744791 797861336 846684507 438867696 750793443 764058097 764807085 922517377 962748488 62423320 401955169 481675917 508774438 611701374 850935761 603844453 972733067 352118309 472043828 890456384 940699747 324705116 541900609 925994996 983382031 455764345 785114496 485638433 782981710 449126934 913740566 247641620 370597019 274311731 941394496 894572758 964153078 695397133 878233397 404166316 690819057 403106342 847024060 102045107 162753247 187006752 342453274 37752731 203890951 7991933 775316750 3064530 814440880 895262750 945757948 284700689 638485386 955396975 995384115 757836618 800770128 616570495 889003354 287519053 892121761 566151777 779296590 571716434 940878058 638389059 848751307 777332194 825956223 644438833 897529570 932551780 964557149 937131555 990729946 302909176 342953442 540677842 929826652 415523170 850476627 209949229 637353289 865251840 942669152 569190063 868352376 542353597 881344481 659888409 894240254 936189214 942491459 272768312 979551851 82158043 220115864 38491173 553846527 674382495 834765142 647719010 961084259 847441687 927710444 848313048 985589880 56828018 584629039 548396021 947734683 954411426 965290006 531310896 692509904 75976533 791700243 56412170 90569094 261574 796022430 768005152 945068221 963959920 989338874 66712759 316256302 881276415 982131794 513722129 531546547 695113858 775798058 269247397 768583243 927072786 976352400 92074594 870460394 103911569 546438500 958277329 975745313 86654041 768583290 347619458 830037653 728950708 995253015 804958086 999006703 958992879 959918232 959284607 999268967 451564697 995394428 552052676 582023281 633484919 835676371 177581501 236548096 837945798 844506076 850087769 905794735 424464739 625438624 704927079 708989149 346952057 738056821 514156402 766915769 109177081 376738313 802283855 901971027 984475639 999014885 454487748 829936012 47431559 795970438 247512037 476413104 16123244 497990202 98469892 301762896 143387634 959259554 317509253 978268833 820961516 863182633 422626500 536727682 268784610 821307297 916281860 939854523 106203538 771618051 177066555 425185205 917849399 989520306 215149781 599338879 766014837 779619109 939438629 969448736 441828299 873453471 602830798 839599190 232123797 794244907 253260850 536872340 192671207 547262550 897643121 951749210 712769378 826460408 26927546 273761980 158988030 353604032 663344724 663822042 805909900 949849944 900929303 945504270 186934647 412328775 285750187 957559701 329680337 412943133 498832402 871575698 398584835 470864828 718930822 783984070 559483399 845942773 897717001 944251759 837367938 890833289 189810080 293512954 861464981 872404726 697759569 971102595 988810552 991780563 908520276 934098433 108177568 597818515 583578634 996191952 626209577 725874008 591885214 992423841 494821641 846313848 311500111 857493034 917100065 958848012 40678548 246032448 633215961 783407269 749197879 980160163 28249824 770777493 620123758 637881814 733641801 945726519 437413855 513259507 867332490 873442836 13105418 374911666 862456754 895527955 746843893 843228418 379734761 631211759 919496971 981689235 90599388 536965198 790808712 941200373 778527744 831791701 481433997 960171636 351613296 477249332 902702837 923354814 773399770 833291009 680589174 777808424 830359708 981830463 155658950 632489848 365303887 367232077 948994860 949031464 198403603 789770888 775881378 807149790 852560339 978912241 934499689 998312692 373532928 434852332 185145169 326341678 209816768 905048795 472903247 588090358 834066399 884110817 75985174 417314363 203332484 509807675 106984787 307998641 923302921 953041973 275437950 730434544 435313210 672674957 744223707 979980775 90785306 960974628 481364541 622681893 610845474 877861528 772728610 986809704 533567094 686532836 744561611 782576317 21845281 662857629 594635592 598860500 998373754 998917221 931906299 962155832 108050456 403007952 295679751 775292504 282356349 399755585 791492361 981840678 842005183 889494073 189496317 931567200 608320479 945665501 103085871 111432698 560837021 684000574 618086794 779475556 254530748 922978259 876084403 936265297 476915667 859258945 480625827 595871802 573412142 952662436 766719842 861586704 180094073 403313903 629070607 966484962 381980405 668286546 98603981 915220031 797554792 856310116 901074615 967356641 519242775 799662463 966357006 984530458 796919160 848337226 974947422 978258329 921484092 974001464 335563415 425573543 560260741 912057448 375576502 670666543 692087095 778869816 798614568 801164680 470542836 830145726 746754055 980296214 357458497 828758944 290431416 337616773 23089220 365338689 332809141 907382119 100502653 445859810 189626527 643630699 521762269 827773614 33136917 455721352 418001617 652712818 231066139 591008065 253073900 387443700 604370817 797876765 17646342 845470369 811554322 944821687 64070614 212959541 791161200 826616681 433748482 937291514 423272826 933133461 681305500 806777468 85948948 189623106 44997243 533834249 879953454 923688291 586131277 948823482 531710213 943770785 5980304 631686647 947048995 986546632 492024508 643594167 870640102 918995289 894209698 957398099 352984531 943143637 490734364 619666093 58071339 243985888 181839967 595628804 816632164 894787550 753824084 802401238 222035280 667665414 640640607 998042816 192728172 452705782 962189234 986494372 1271098 628183040 697586883 798749777 556900463 569337194 563535041 710175643 635033080 877511295 682975819 874919565 49923890 426539823 186853689 977219967 723167140 921473851 861925972 971768174 266567969 516364616 490707984 933332322 197536153 510807250 720922751 734229220 408018390 963325577 951576496 969103421 49807643 608713695 38949659 224031859 775184892 996375411 282793208 495188559 840614968 997123256 546827233 635590619 164837770 475866109 834626307 920104737 638528905 961183559 45947592 993070427 433791987 458860826 43508931 372058197 594328853 644524660 908149922 993175071 211941066 781594602 734192654 974187943 654413 967599534 885204647 968742319 75370335 732126865 112953702 970751435 657059961 931178212 712495267 904613100 638108271 930336912 584316147 810098890 475521991 483506459 287591183 460482448 585256954 807317625 960085495 990151603 430578203 791496482 954170742 965682506 897660233 973251227 826399692 862662492 927977327 944680107 380250288 949623967 584465770 924875930 71646584 190490292 175159555 842179379 396231261 852287471 651986426 734389942 581634627 649728427 799837112 957274728 788068199 804347115 983822760 989869831 409077711 715622177 706703603 818731183 504704117 792466328 936041064 972464845 497978916 727780995 406156080 551993504 11562319 122918695 809436580 879054696 814540880 943955434 979960707 991555789 602440462 823320500 195301280 769902201 837795464 950772547 445459939 799798642 162756957 545401634 755691290 900063706 555961384 781715431 600540413 931331653 370677895 768605684 176688224 438401113 60923883 870954486 62149771 66814653 693503547 935116762 773701938 799162373 5352912 178572511 987183131 988213033 834133022 863848242 937415377 972766331 312657653 700235551 207978814 531086585 706586427 816295416 262258879 398208850 844804706 967406893 309835181 691866506 270583446 427369541 896225995 942479354 891697688 905729928 491920711 949130195 480396135 505525551 693951041 806324904 526890017 948553506 731108801 835455197 43619128 968823233 170097326 524441190 33272919 113155841 955168370 961068208 444796428 971754087 333265678 514409160 438438857 675266778 701512310 921693541 568175580 849013076 666122525 914112172 805290986 874238620 710217320 776859387 64627733 562150702 14522523 953741952 715655343 877354531 101517212 513607831 41224402 479268074 784919552 819509356 633215418 935252317 422370943 963348702 753507933 994957264 783246621 827847018 767790196 794214975 246254577 747644556 20496869 275568483 999090008 999260030 908858909 972878340 282173948 695409766 634784196 669814526 430725753 479734972 984530447 992933043 488427899 557457764 443198940 682892405 446492290 850122588 65357531 685888783 492482672 986782263 937054567 976569366 484064556 942712467 330536618 665418757 943592627 996470904 517540279 529995964 269908604 873479050 324021893 716031169 849913648 927544788 17661686 405574327 266401330 336919230 716853755 769121407 612195178 962377977 480924777 632601203 33981082 546024825 24493016 268470399 223092583 319127593 173430756 561309640 779552620 886883686 139553036 300377157 488121282 926402434 354469726 714349287 144284545 627046700 362598710 403404854 521157741 879159359 941182959 979149531 744971037 797233950 657307356 966249748 263342206 608330341 873466624 915105557 559340275 832764560 281150999 391895810 936567333 975719350 832321148 938070996 583995449 687299144 239640732 354645405 241739945 273174515 14813483 34273516 664723135 991466464 944071514 947966005 369080754 970834092 73711961 564968810 70792840 900039181 75858417 750112363 787472383 942614881 254445711 994361700 255442012 761127636 225019791 478056865 703883120 754708041 105372521 635237925 215418385 537526084 191399282 228737117 259360250 907910727 217181335 268991038 827652765 876239752 537409349 984682803 186120107 350514508 318057248 581639828 500618314 626317178 70279519 369608961 632048679 825975178 884637571 922757304 841059138 908435678 609052276 686797235 487211634 852180943 45687741 943596531 808711899 834608344 625627147 769329830 368417058 793464738 959507534 984255485 300824152 335258609 414680425 939663742 87703612 407275347 599974308 692003684 987711214 992614676 229197690 636882884 87369650 180304621 676930454 948455374 822474680 843380071 929988659 942540473 37723589 230761059 669681598 681495499 451740967 678587910 260011692 989543672 212178510 361586964 693853996 942200733 132427807 874800917 690990368 892771803 368853469 671717454 630389455 682322737 401236012 761283160 117608934 831888668 549857798 750169795 120669401 977897469 988380418 997295912 293058224 586432456 687685324 976539757 17756009 265594820 264846549 541079498 744104908 784375443 777941954 903777486 147057364 525994393 116369297 902717295 541075275 618750476 273691932 858494528 919853720 985699866 31143953 184147651 464353135 583468657 88046792 817725848 567010696 870679501 638712878 765328988 464861527 842155080 976496437 977318033 582818183 619734614 687983328 767553983 602811336 962625977 256948222 336107318 748319601 973717238 513309948 683729625 586196813 958628242 294626744 968639727 908777171 996912971 255958717 399510741 425717165 478058319 32125499 62269591 487731404 578877363 293998344 611258999 675252536 989029209 117331872 265749318 306123574 909108028 60997446 733622656 839964211 861340458 112849413 597362238 164377788 599596910 951977459 955871590 687848779 748064957 400057568 857809722 571007471 781084250 338838160 870786802 105977493 244222241 552911747 770821731 337053189 807998921 635101230 933417510 450684175 532218014 380080426 490327244 728379876 915760118 767972781 787665271 881305576 907860762 703685900 969308207 491398626 580501723 483543982 986308674 768987145 917411846 24818102 397608213 278886096 748996252 634452364 639988649 355157111 731626131 383396543 622772791 342554755 887122089 577621777 624884963 919801933 928912605 115776920 532119379 901346412 954571023 74829948 510102821 538711256 719105894 334947098 576382713 852609822 919522529 957285598 977442891 620241241 845750966 220293054 964720013 830434634 985868499 575976970 747941892 688246775 707265999 284902958 839411319 34303279 441664542 750638478 830337613 221885879 525745222 271301927 974462392 528575248 606219968 564768214 664212466 860078346 897881216 447613735 906877003 561389625 732758188 177194545 385695105 835975957 996046883 851670357 956581804 797052083 967778358 634406178 959712126 461945207 537884849 340946396 685034965 145317597 245333367 285842445 670544670 813766738 908781609 275079897 806149839 930486492 964586822 840045645 876037114 759539883 910076039 566095921 636455234 437360899 888420582 121559109 243769939 936477121 955658530 257083341 891522916 691371288 702329588 489355241 879939917 394093122 713305882 843679204 858030094 603205424 796617836 273014147 993924175 721000189 828914715 160050687 371903029 996186556 997937822 962642878 972256225 276687774 852060577 977823522 997000302 671756932 986521423 988452719 992618795 498194449 918817278 86651702 496887097 218821297 286187083 55967421 742042471 401201207 718655043 319141740 761179914 231681987 364673984 283218502 695699499 924693347 947320925 954924449 974046373 431871768 775029401 927607634 990131419 457032415 483009044 67999568 84749152 931948937 972086654 579543171 869818067 223994152 781133830 310680915 692476429 171524873 249224922 582413419 897562830 165473173 739813337 274509879 396383049 115654490 836283022 840554015 959621218 1937553 850684282 356796882 708827843 648858356 676521177 158450170 327846463 974353004 980305569 278089305 732965057 573879532 974287553 577068997 825041132 797300730 825905952 951337831 996471802 36894740 476631759 21323646 491863535 198414775 437622732 647454167 702851955 14801396 21119938 783113248 965376365 252501925 276212298 996827700 999307516 651463438 954221367 741538398 957875150 522845114 861873052 884538542 937880976 608238424 804517586 3906005 86821061 548324809 671684501 356642230 450303504 459047921 796144378 207187354 503625732 855857377 922057963 261482412 261793387 958118995 985425707 644668188 916629230 622023898 727915797 410016893 828808120 351583904 922848297 508340574 717805281 489763794 716470218 681603828 918435100 817532765 854334937 274006602 824658316 778829337 942314530 357159157 541001255 377776237 602164698 997118296 997553130 215957699 906428987 294996271 890494526 742264080 825188323 517600405 937851119 512516695 963194179 549729667 660967130 897882932 947745076 961527945 961861067 98682284 158498080 590053100 988281635 105285636 131042795 683523487 909595458 356626298 694552789 121147982 578688470 934072022 978501948 519643541 792531097 553709529 866381173 552768210 733735473 33210649 96908367 171512120 597729064 876813042 886461273 677336855 697508870 188409067 458464763 883037530 975765082 289203914 306671632 145845818 481606042 519069489 587487221 376657941 477782279 911675946 984479336 371265371 449055283 906248494 975214117 837916803 844870557 419856968 704495298 449847996 635937247 210354612 895781304 580336254 704004948 988963288 991477119 225546382 350382026 952108141 958528571 763361105 978375594 624340654 986825344 962918954 968610281 491241875 798820269 304728267 435812065 383448178 789026771 273442904 529458932 774018689 908865986 400902357 474847525 397604698 587573643 328600395 768143658 96239318 129853837 571064416 839943434 966564186 974890005 756054437 920433437 59728810 397725196 703748370 817424379 979237649 991245721 614156477 970692357 769629246 861829439 399902177 442251147 785314395 984609812 607669444 931680819 557147382 573672760 491058187 650365236 690911369 806747162 41692890 773988181 110052211 427186107 948633604 959033891 732704749 750967953 648387437 784178730 180058366 804049574 877334749 902337287 343153903 568545959 465914353 683977167 895115843 982950555 682286658 892870704 337117334 446042221 182089392 688561586 168571097 382768184 712631780 894916582 445399592 816075593 173766357 412669772 41037704 808708429 851587336 931206517 911146077 922157701 250497594 728931926 209174617 623053322 840260944 850618166 737443006 764927419 765165342 980420681 951743048 966907510 407603725 785439107 380087995 908407888 551802321 977327260 199729603 630299346 978064116 983979321 625719784 814377373 798374182 979441480 861897843 923906518 587558224 705220900 733736633 755084166 718302878 739057681 557214823 806785112 549254180 893865022 402339397 663862074 679405477 823450589 941512963 952266767 659643941 817994129 264278237 844635257 472545335 507219606 439857113 990276272 4941967 342434518 157419473 299462464 575651967 627413495 353158222 670422734 375596562 781147986 654989423 655454644 832018575 883905710 651009008 996911766 676365290 751667494 302524010 783820020 446116340 886533833 741764407 890232133 61940093 551780111 246369633 599124067 11180600 993976726 708570295 913734032 599149625 687832751 508321154 569464287 666008749 794386339 343773008 419709836 363718717 793141263 529783397 819934820 406113341 478006341 157104249 911501017 137010892 249161626 285285794 892770402 243897612 246589095 711708371 829841568 180525653 985345063 896599554 934802379 737222100 791848059 540055820 695609520 588027170 799141442 251985775 792062389 256103135 496365183 522858776 812396277 701736862 839417490 589879595 864171958 323583104 821861027 467534144 522355878 86404214 197882910 360816805 719059661 844720368 925490232 837533206 843330253 536101288 837546127 655916131 721537063 973744005 986466033 239544229 408256583 454884427 530075884 662593510 959849965 305348073 893813633 766250845 934308640 575103491 971128001 854363256 908834923 790035291 893310277 515139586 883516506 5992729 352862685 998999153 999185681 518705623 985238751 513677859 957548979 264383519 444388837 777012669 777687845 396118333 998217537 687739659 871262240 128266423 238962605 929432465 956319195 794024218 899213436 149121895 477561065 5654322 951365880 823543848 862243675 491875499 729514584 264513755 669251441 521876520 760513428 524954918 558600971 113897710 472589696 587926688 674868498 86113931 589340670 873706881 953572374 755019860 831936810 783066626 805507095 986293399 993419190 276657965 588114590 215671309 924596385 662728633 669669199 174068198 934350129 198041235 359748202 401437254 834920197 641350106 879940008 817428845 848252395 293445018 323465189 849687615 946765103 581459087 719271785 804735228 902943364 301799458 807785150 741990152 917339509 499796611 613106223 524104751 599195652 930603181 954623914 916839371 982219337 860460400 914281914 43066852 415884014 554787071 574468506 596725911 904070902 211873749 514574531 732705941 879509165 614319347 786286241 826322432 909708384 798100894 954348316 175917747 818237296 206468330 216775765 204077285 870270958 882166278 988233085 847902945 982737005 911928747 968280365 12436519 633315325 582402147 618204822 277009062 339770066 202286648 595273168 475489895 892535598 142036850 608580543 303790861 955417113 790032709 816051837 354276477 844305707 962289183 982548070 399227236 817609220 144155641 547848207 788290015 885807321 238051335 616110746 917658114 989260417 141167770 880095940 359903837 858286157 797307729 809274305 276212364 643761680 332141274 540362743 625938750 870591237 384981462 505673727 659261798 817117709 514489961 842712348 657519195 678566540 936950736 975670447 400688519 498335754 997409914 997523091 662613294 945993926 366535239 804867313 593488522 761742450 959776360 994655318 744580524 906414341 800892985 869854210 764462859 874840650 738507517 957323196 55564474 554499694 360055 512684428 461939254 943252548 713188466 748383132 652563027 772726623 589404332 968713837 998705980 998929560 222612729 721522398 877444774 954436604 148824220 922538852 206336507 231234159 419298655 582340904 439197226 847921989 936831152 967489778 964623521 977418756 195963718 399368056 323173494 334849888 934740249 981782738 952929210 958415345 231781140 332953069 934147832 995070828 118246050 757016437 837458524 987783047 464211887 475862342 962181872 989823329 244933462 566254533 229007628 310320026 877934057 890707241 683950579 921857681 114064659 541188802 395027445 880170232 259742818 332155379 350871729 767510368 360626446 845098620 327329375 965692993 895240812 960507484 307770724 980121462 420432128 498751851 249465372 486226476 2660265 359168504 719863579 735255923 665882947 984393727 854976784 964463482 745599565 958787579 233484384 464719454 118280263 352362725 81368808 145752775 629146636 916591362 547431634 803773174 35705894 800869999 400745225 860524560 209751098 917114454 118328530 682450231 635980270 971360118 258429371 496549058 626363463 972615784 720201601 953178496 434998657 956122392 796196818 967761169 215217901 437007064 356521228 509535806 33882189 88391442 85374547 258321681 407816675 843373480 51789988 289271819 502266804 503107712 923250501 954966394 955222710 975790405 735744632 914453920 621220352 708629253 127210301 466446503 644581824 982030626 531952433 860684671 769980973 826233253 767197765 963307960 174168932 285402889 710284790 801853612 514239314 708186276 215849576 313572669 188507977 306567018 901651672 944022760 940092415 945504549 158493904 454642565 608523078 887130853 582705680 766538002 870788115 893985243 360435413 465432514 891184318 891743638 984286006 990602075 142694809 941664608 461499400 968012678 186585246 252275616 226126278 252296279 781570517 903091047 800001491 958655922 174449661 855126853 46629900 305347651 43131042 952609868 186715907 766958896 483886918 522104867 668515380 679808777 72365032 809226112 868480147 965710745 62521022 113329005 462388391 745213454 547087474 572525876 659862540 693349783 383775228 617679194 762435053 846562067 691684600 929448038 660166226 854934101 409875680 914812078 591104299 848329093 512499623 871543694 871462648 950994502 656420436 772461373 615657758 892465588 626908886 899685668 575912682 964441654 337447669 602667698 404656456 719107763 411175006 617848736 946997276 956314439 567797845 924058381 868912187 903499737 652544287 965536520 505799409 514197285 628495717 893632969 14795903 271967517 966757531 967246711 907718033 916623000 353136963 366781195 781142003 989650402 81099978 979406143 443959379 702939029 767602712 816685003 566404862 734865541 65708843 535379789 444758935 667176268 244404427 430682569 56789958 112294628 242641625 455425383 290129597 930790508 113477947 989694908 301187526 820906806 308935315 925477686 174113815 774562520 329967452 718747218 633386819 693592393 245890614 385048991 620062378 906153543 650831446 673103322 771281903 862308362 161718963 569082139 98024398 598685750 333510754 547650275 113289104 361545390 389289418 847717710 39400807 389629777 393123872 532471329 915216842 958877150 244085960 664986327 34162450 730282811 704399263 714507484 242108605 314190156 980469171 983516880 835963637 929506298 890965393 956640268 522359 494291681 931059113 994153083 438579548 591360859 478620006 819228406 492662988 875050675 470518144 928286272 192106677 597050611 50288854 724396468 464391175 703278216 855013646 964470934 498910747 937265517 677175533 907381540 854646835 895933444 517168731 760661126 828258495 953336331 150532735 843182860 904145320 933878993 168560239 360214942 355874528 501528205 436147542 929705577 380458541 592546173 840583798 858736132 777674134 871976260 417405232 771468120 115050189 884231048 880396700 969123674 9103539 274919679 424742042 778632030 617859310 850328054 63128343 734746279 492359472 696519874 169784081 636926362 377863133 589734134 835069630 936554727 688918426 944848984 623384615 796352408 461023486 962638325 213436580 320733924 474449018 535138676 722497162 933917141 562166711 686466133 316872646 966184916 315050600 441287743 922977082 986070495 877564266 926949889 609557728 948312865 799944769 919708800 46681455 687414110 270480650 711508763 108677499 179368130 221837785 272149336 298448273 469339871 438593488 877935882 278643504 338485016 835922736 951554767 699757494 746319146 114948491 822974765 264837425 652392681 701796937 992268381 903735616 955896081 912955464 937531471 86502535 794300687 47196323 890367523 176923521 919874666 590822645 868940433 801443632 916150240 923865997 937979708 952444236 999258312 747701349 959467384 640148357 915473784 935342665 965881525 869390709 879702773 931697474 971868456 938229613 955823428 394259730 600962158 860213423 890921370 329086195 988906045 968412285 984441808 602580860 850096880 259647674 713576591 167115709 641692219 187576691 940225181 560918127 985380573 253527898 386860017 683140614 804719736 367517284 518531146 853579668 984472117 265590358 936240974 362367911 701882549 957715626 962786503 780369757 871057485 170132014 294414499 582027211 984840349 302806971 427973455 734654329 780441983 854774473 922712290 593637708 688669263 168829265 454944708 810166816 885448685 254049316 616091820 66345991 482714503 614099760 635181108 463596803 493397359 611111692 884542839 971466135 990654109 166409699 347196772 820798628 963287990 478552094 715441901 393387978 585956753 916748563 965930556 939536625 965772266 35278015 941655821 406575177 608286041 567593979 984293459 591134402 787028809 873309154 941718181 935671439 955317038 522724266 576228029 632873291 786384098 758172794 932746184 454397006 623051072 355021890 577270931 93361263 735784858 774967715 805749286 252100775 974069289 170417098 665696056 603220966 841027117 132330446 231638709 370844862 938578991 562426894 777868805 392035948 542155940 724696909 831325381 437838671 674122202 821467690 971903739 490446074 944546074 460174751 490878507 651074527 713720070 716811826 932141318 936190137 988067865 239722253 376854241 984788321 997922943 638321452 678961049 685479109 931876296 592461456 975060013 597648583 944929701 662987716 824423624 456644427 628109307 379600997 992066111 156952434 938435580 451739286 566846086 323868504 807288281 407139094 792868917 618875097 660779346 766347613 813198531 503696127 689053485 49190444 134967378 703069050 901436052 606875031 795791893 856872519 894964247 947590855 973935064 940373817 994737482 802629819 931419158 308642962 418737788 873766732 917619528 469680807 861016738 838739975 872014228 396768427 466397612 391776359 983345651 189264849 975960727 876311360 925877713 53092673 641269310 205225456 520701076 967916001 986490313 986121241 990762333 102710019 436058250 454519209 473672932 246915849 356184804 138500795 612874570 724408677 913495117 648229995 662019609 526785113 543911119 398759542 506204561 134055268 473257699 756680582 851655090 357949538 443327499 271173958 372299765 920782118 967777365 181651800 473384918 722501796 946508750 158285603 964638064 759355133 778094887 123848543 473451112 167554707 673436913 900496011 928234909 761119455 815165824 68168038 259550691 804079054 939331296 234026035 935815639 166233416 454935555 913508875 996933156 806441094 820803172 645106392 908467126 950245028 986134828 167890489 504570126 920343762 984001188 209697803 265665877 271443740 956869179 171880949 336416717 330184009 480725330 334012423 370783862 986460762 996934892 420159222 911803136 780128227 818226389 236718372 497152479 102966169 964228809 530440064 812358023 116520902 948795951 783903626 936886569 741351140 779567155 804864121 879136872 774299751 994294807 928011702 937085697 968332853 976120811 339046361 522931619 437177810 581176472 716038460 816705002 358602353 740282760 598309713 920154769 479918663 510308002 378052889 965265070 804779940 816500211 580540305 636132697 488737279 528630800 687557158 939721235 931621911 973114538 258837826 491630805 955680243 991835210 53340155 492846223 194500936 462102686 47353807 930230175 335985586 346091152 352526846 635570653 162506711 490797333 141900422 280713098 10198177 470753433 307522524 676928178 775388876 840616849 861894929 877640804 166408689 496918132 911969637 960706580 411698747 833909086 978852183 979833490 172626385 965173696 108166504 606167689 70753353 919445488 446854765 820664859 275806321 755933285 879754590 898086645 320985566 934373334 638392566 928335336 74836482 907059006 371182037 565085080 880431956 936458495 942796840 978701789 270336523 661957275 336839156 434198704 979273239 995179960 71562354 891684498 511751017 621182878 514011223 787924803 306164350 918945334 523862254 930889387 640465404 771543847 382308143 618220407 843291049 885855910 809245548 879386614 946872702 971754048 871822755 915986397 740848970 842196603 583038558 946898491 111477425 298077771 578471507 860949270 972495749 979579769 799801289 841043396 86033648 378903195 601419657 830898846 164872758 253593094 248308286 954806787 354950494 929431260 316536747 490243725 721783618 961711843 761633224 942431597 788106506 865879298 645430540 683061454 654994511 996258786 656684812 728337690 894422247 978963773 596602189 858325218 844375828 897847921 736657551 753298805 971358648 987474937 853800506 901384420 260824436 552374033 677956883 707851445 355358260 879269395 499805644 960408962 388427238 547083457 510357252 923753580 816957469 840196744 198725027 764830495 1014767 1260921 34417840 852645979 166299286 947160150 299039901 434402148 104711074 956939294 106446382 633688007 591545687 742928992 790421888 944586875 329654909 340275240 950464232 988312276 534007286 686865596 69622088 407233976 368783673 449432867 106871628 177749128 62616180 985642163 454686938 622959612 775250493 817260092 590640754 909709740 429307040 481139193 2861184 765135835 272234016 844201124 801314052 812537454 325021621 422329731 775698306 776657061 905873031 930993106 346995729 555799324 829211755 955325626 391563570 956469465 978630828 989772567 986937638 996066959 887172085 891769641 459574483 488682940 130500595 720111487 110503152 664637114 185644964 357311681 567868439 774303074 235835350 683170736 562022333 829577167 842304430 872119055 72425950 805310522 669529602 954102128 998188509 999099960 941865176 944210404 870972388 898209753 7646222 211023392 444229283 853128562 41991347 827819710 741996680 761118653 610167399 770882173 56944730 525128539 809389295 931708588 471915755 901619527 571902178 955523700 569577313 749401627 575111297 897343514 90563911 800470846 254693376 628994502 752597996 821916627 455179414 947687509 323482522 360227765 104474493 160503791 305394802 455483039 780605839 828105333 492422203 918341741 234725378 373404293 134509051 502829710 449919861 555226488 958379243 979629106 646539437 859373142 251071007 512095811 318408701 735881871 816945549 879425948 212024969 791236006 233439166 788656876 414160867 796629958 921541820 959888315 937358545 956335454 757302638 837585344 441596342 850278913 678288875 784314524 501505062 803559865 197772895 376962137 727017241 739521199 589564336 988189717 807334097 963587687 951500696 953401087 715251697 971499555 322768167 695610270 698638117 964915334 45976028 358392099 135703617 487390170 513642226 633832614 866866884 946383715 262367707 961971077 494042724 615707004 726139904 804638187 400215371 944445754 378520350 843689605 465934414 646770173 241421712 392402541 423658971 801178492 277178041 930291244 41485912 869671446 900635049 967717978 139211128 501935361 781439015 837446684 728518583 848988081 675632711 843433258 890393023 926904309 618446225 963328924 599095067 954454203 753422227 951215069 646744162 751252497 765428688 853173982 251280229 546840748 922581499 922988614 724273551 847577466 120479124 435304177 392929360 422267899 426552409 607204356 814179055 987388315 861009384 955119574 77301574 315311494 78560862 201718592 993991038 995670147 637260230 946522263 487918135 560803348 813809913 957370559 195564869 407755366 683587311 775537145 726462476 829149730 906646864 953889658 518332359 527542780 708917406 765317324 894074926 978165013 897489810 962749856 89037936 107489116 237472867 711670212 109035 326379492 26790117 57614158 999363989 999389171 382482067 469987668 547328590 751314853 7966138 655480287 202087264 932125194 84317129 612604437 787845821 804266501 372152126 649415179 104214612 455998922 935668258 957919084 692287801 851261300 106231431 250470467 779104619 893053862 440032191 996354095 546397726 864851368 374924722 746692008 539585922 866839366 943789493 986304936 3590580 11178442 490892183 895808673 732428674 788406991 98723195 624503831 569038406 602881726 911362455 945358437 647096867 916982250 927460560 993933440 457356359 839241468 350727420 363913129 269835290 610054825 126238130 879630741 469976964 538228035 312304516 619620803 55912392 272350569 994142688 994871989 7142518 520362646 10440710 67058193 313408579 339491419 207631191 739651786 583358804 761781628 105672901 707055274 665664491 913713108 423731837 952362652 140330547 716226163 970626347 993578310 459450030 735294606 202685022 459568073 581941047 756121266 927871940 992652883 809539483 904689072 435478528 543994150 864553059 956422171 873030211 873421088 529670906 909496591 2487534 580555060 868508669 894773145 351683932 380511080 675161510 784201711 905895324 961697960 220210573 933049235 91329180 972172285 718541305 750907427 96705476 242310968 20616848 131744149 249633254 540746693 119797070 207245176 939227293 992179760 659361601 976380467 119110500 971663827 764306475 993897412 314071706 670514545 42030812 928769755 806859431 864943898 481746873 720997281 803047170 806237926 427933296 765319368 545823458 700657760 460965048 906177231 802500430 946249399 950109542 997104506 151774226 845445658 312122074 737411387 858612288 887484513 95004236 565358026 656822406 681697623 354094968 952399523 939856285 960395435 832814195 942913398 470986778 626085717 833090152 976024750 562056379 772477061 173606511 475014601 531241560 629345337 774571286 895089569 231493796 915963318 649851156 855326657 196233570 215285573 922083523 967435229 677108383 965853632 222167082 782507389 678589113 794678752 870858275 955013077 978825329 991021402 826933730 929041479 637443865 738003694 587020343 863963707 249535451 338495292 607578130 935629518 538784767 802759956 986376131 996379812 657369666 942267739 20869153 571757339 242461797 841199420 447079769 926355510 336847944 464720515 4820844 18258767 120372693 615182198 453484677 454183202 875601250 956900448 386301268 986466693 729897894 864827068 793305081 980667596 715747268 770535201 870880487 988798809 220728586 694709040 22678729 91720538 342810797 362647256 2838524 657812546 499602213 819759063 637516381 761609245 223967379 466890450 377072778 465100241 878362599 966360464 655281379 679986345 911309574 978788973 102603363 341903780 683512922 843027461 206976071 216929981 900478258 978063991 235854596 320915415 456300648 741977141 128030400 635530036 398066716 434581456 963670688 975110810 669965449 823838018 99138513 768621397 870788402 938889436 531187466 787956833 737556910 783260603 71787775 571175864 359854561 865674986 124163104 601403261 603630971 760019600 702523702 958864634 573977969 708105976 555304951 997901507 731204833 939506934 611798011 877762338 384272052 990227349 443443335 783605441 81701932 845414291 699539228 961918159 441312969 985128229 239362216 291383308 204397968 839841433 255773913 655597953 8319098 701891822 393623892 770736934 193531154 814600750 656533885 697031280 4863324 529793359 296444706 572472013 343338418 850468515 464696911 900113258 719464686 928848402 329220921 860693409 82701772 588718477 326463343 366268750 409164319 733034818 352082583 994292433 975781766 981659940 767522616 773608090 408263014 422499290 237175976 360036143 102567953 520334453 568119547 570658364 836244313 995634373 32947845 323164960 242245378 523812533 457165332 553469548 593097314 816611459 620189826 832854851 407450069 742334983 425366413 961068488 730090200 906556882 609786823 728661297 455690143 685652672 831255193 859226881 111705021 180815757 91982475 642884329 769768858 840695383 948297594 975890019 26261243 787853435 298545043 630457743 771194066 838006759 802831275 826308664 843065897 930022336 119744620 240430198 624905284 932441488 495958493 713073013 549011067 926681640 908921514 915831679 889058944 992509685 724017901 732371495 457970366 981939229 580520676 725377917 24681033 387212553 755810502 936995280 230006085 743913877 250057385 776371814 634018873 731255159 700613585 742361528 858324160 888698890 13353418 909372487 739328715 929212519 115954547 513524097 385838680 760634793 716722801 780750765 358180075 623220125 545073689 801702610 491229962 492058870 218918990 436106330 470976202 813956149 64905620 830240558 208100738 209236010 19522260 114075526 395902033 611286699 799197529 839486476 750347381 929513222 70855079 146246391 654612231 759875703 800664890 994948029 539718064 702276016 275039697 295455382 923494215 950320121 885297363 939690457 933067596 934673647 56662612 335868621 485622098 626153861 58166650 243428217 782611442 981632510 997162714 999368107 13364985 824615061 954540181 960010711 495894702 700128342 226656977 769711298 955937762 992088503 744277390 856771942 272528365 415512514 971063291 997731380 408336560 792038371 907280264 909887977 984387113 986911717 284015742 938285261 514476154 723597029 663808319 772473422 175574244 482338462 680205635 681023984 390944013 947657028 330242305 375276810 887017061 927186668 402784856 953086324 978923167 996244604 268585590 969358980 690394536 796983798 384825646 677075970 612959498 951856419 487100243 929215501 904506322 945028521 342744800 998564853 386527119 895749930 450304515 829950072 471906121 791336754 173410640 606529620 47435249 363591651 725375435 902033210 3103316 38859151 793846220 858143248 907390785 939311276 461995206 900662733 738370580 897650804 363535941 802957065 234682770 844923165 367613482 395479343 261641529 500350085 79997151 642836936 250090524 571640849 680314955 875103965 50267954 420536862 252777412 829214805 934157529 954726798 308530693 778398595 570084268 839580252 272536525 365837503 630652803 878957410 416318086 849809013 983934716 989900304 540088794 882077200 214575890 451610617 844921880 946413233 225518464 735396999 449833215 571190125 412946511 969643396 76186858 884306399 445664423 933640946 126934672 268870884 487207258 664641985 311096309 565505554 731921021 927423195 148618698 588466623 239790382 860052391 443228886 761689528 518301457 698373850 120673197 537521750 887652012 980564684 80282157 235366714 629388272 742769358 578832872 910229964 27057476 320481183 555764356 863450644 903836919 964967217 444795077 855842909 410485988 910305312 451976073 587915922 945955263 955338230 842133715 971833931 470575949 801866104 509267361 853868362 585110407 730894607 853475624 956608657 968325056 977248180 346023603 995012919 43208353 285171822 702062683 937203880 32950617 189325589 604676794 719887573 303308182 394491044 491998691 555539212 526229393 613764223 732761891 978053490 509269962 877420209 432802987 919105630 193544275 327654340 574974499 638788167 29555817 912016970 933641838 970390831 329235719 615701697 762907748 781515279 240747995 947436159 264928737 531278526 35945893 290023383 563291466 791498764 934396465 970416589 530768970 893630506 829707657 888823805 169280559 653651530 687590680 921537191 850742235 921573547 826872626 956946654 472031248 488999275 590709611 890937091 513184891 668007944 415040937 563061746 9390025 658867577 203568496 996289167 386618925 487906722 198118679 353004004 382617061 757867950 396807981 490151400 755302338 976075771 520086630 917271777 801771614 803911408 444286460 967798744 800973753 899614776 673073594 975986911 903619384 976702702 514770083 815507233 964235591 998444481 608678926 860640591 121438248 356393004 870524184 970067210 875878546 885923190 341009171 410758543 292176157 848492606 110298134 480207074 532816286 575640543 816585796 940270990 120616002 259316297 685522556 860487093 373198549 373607718 906580192 949624344 677823144 782099649 764852025 986669136 718371632 793673546 143708955 309805025 224028583 606812580 708815198 723786075 119148881 208505200 651463450 840570316 972422784 976283459 825286735 859515866 636689737 782403585 530238102 848332754 223029686 244995119 297562852 753581510 491552221 827612237 51140214 325718574 215200521 758361155 482021385 530455789 691561711 735134583 228638642 580871719 297772865 752967442 228562466 818611804 951271590 969964972 476921196 946971816 866260650 963370311 580114443 672025548 354681764 453883562 193392761 574535536 118448836 363556006 415679238 992349930 468704632 949338381 557459906 584906138 100960376 764811487 270227239 283544596 950446738 965292438 865174637 927070103 194794211 687632717 994846802 995704210 883534120 957071367 298765504 637746699 942406476 964311938 842076428 852848871 696654064 729112444 896326439 998471996 476409226 880937414 26651853 309608148 117626025 561327738 281685444 568430578 704657250 723298617 863334558 901086400 660247312 878788670 561225299 688636665 373436737 669094479 102972510 367460914 311113862 750990423 81845816 786388481 876653852 998799327 794432715 928491964 428463530 815354410 38635249 458408095 125383855 200193883 227705135 229126735 505677581 880616266 85311093 961622215 440610582 759832909 82070610 529972008 219154267 770312790 935667180 992437651 205155028 497170841 451930824 888820587 370073863 971350965 468108195 845188045 888827813 980815294 798624200 876294248 494044701 575916820 561274266 704093649 523090305 874835376 131597060 682295498 812068253 839715630 951945547 957657372 329239701 559192998 894280675 942564375 204148733 978330154 297862347 382038918 465223033 867099420 162563646 463604770 829170075 862934177 792555913 973857354 693394365 782724480 797491197 896211572 428427019 881893221 946135345 992621891 190248169 677669589 654493425 805924824 844640287 873492308 250732256 298311213 359722466 527418423 982687493 993696256 208409158 265080109 609304274 683276284 380104138 787180128 937544269 948350066 221778750 934426219 755729671 894419136 846219441 960620636 57455414 743132114 386172136 892649902 346234592 677752945 744408762 946277859 339012162 867375961 521211591 802031967 809463577 904039301 429660539 609648234 617981041 857207647 355541894 716359939 77303931 547962515 876364618 919178387 556515118 926893162 749772922 778130411 395881739 461945808 249989365 783364525 489164484 925947890 844118405 978913481 272809753 765001155 932891853 979183221 28160350 233525975 936008502 976071080 187700670 964390301 755790539 979711472 489756164 926498000 757230389 936514512 595951746 821163464 109371713 396082610 11288444 410673060 781665037 952993695 996526514 999184652 884026698 893679159 532410536 863846094 356757541 671992022 819389127 863713192 136366472 605839085 72120739 716580497 78876682 322774257 362967447 885122225 774571923 918441712 581983044 784680612 218133664 641544099 120102512 612455851 841693377 996946400 624688619 945296769 309604484 983615581 305914509 751973469 368063155 373740933 154369750 464964359 526055490 970000994 864813433 987856816 137922103 581658591 280899038 756387141 360042507 483688082 530760678 875753687 978350664 992352127 969466564 993768364 436715096 725286457 269817273 352559829 585967843 770198467 476274278 813893282 711327800 711959890 292472820 994718944 223126395 547494010 521325721 557670996 52640361 337468796 142548317 632684655 349295879 449082358 463811937 764143123 901964200 935515680 201228344 799202155 252164191 650986418 722393874 837946601 635972301 779929322 230875799 236304718 510605861 962149976 33562885 490838320 175024663 591321282 597959382 763204211 178205420 470587234 799419364 827167693 114391123 712582792 186132714 768790448 467105187 495638357 880489264 988578898 198490499 649979653 593485001 907081586 656180045 854282093 630952902 911577377 80093270 637566073 228669558 389797700 729703525 917467626 619941443 735242621 968722191 994737258 433351872 906550231 158443492 320105388 653183087 768882548 573474649 771808651 210049190 505567098 733760943 904556536 496348580 977572603 673994089 783725572 301922161 865778927 592732695 996933161 201569960 493191570 663823607 899211285 26846200 920167550 301885588 738941550 195840669 984203913 144126503 701014972 341702962 575162656 649845086 880543341 783170137 821402752 463202010 796536123 854775861 976491173 62346785 506772317 467030376 709453375 331468320 520162306 29453052 833363768 750975524 990397603 126627701 130267832 448119469 875103086 828804984 842372261 119929650 539064727 506946271 895331515 657608616 916996361 922863484 924631526 750698610 959242320 877600959 913743717 382662228 457915307 124863181 343432661 284234383 333519221 594471870 965884239 497737867 786334601 408038572 798635514 889061434 955288631 300758281 515480558 713911728 853889021 969524726 976476034 337782162 502996623 315967904 388523259 819322936 935047434 93412487 441953009 554681026 719052384 233929859 608024125 99667381 407148701 343435420 549253083 349204015 445094215 619793932 979527288 942007119 993788947 501757508 572324037 698627949 770377529 859890886 867960025 350082091 834965756 325135785 337848125 839430101 918571155 311050672 940208556 625294463 647458692 73454333 808120188 882609279 993282761 436624730 916284041 958971632 977333551 676354376 743280297 721672339 834740021 30537855 386342424 196354734 364955060 494422659 971325026 306374481 506374848 4854710 522529199 90207173 433970814 95586189 276437517 593983027 824484905 342888719 918130862 665796308 888402768 652558714 875521737 481982946 697524383 488694100 629659940 989290279 995714057 268176166 347529706 429378834 672841616 600729899 612110497 208386913 487783915 51479241 871032864 213029482 421543072 31940923 825331546 594926178 635272312 891050076 937006571 591061727 661783647 901595305 906034745 373500204 428896856 303223289 636712288 783571213 977429694 94122140 698099795 772168216 904847938 489024337 888332978 378828541 739934778 877633493 887772631 461665453 783329575 615972424 636434550 848173838 964275489 511090411 935230043 51975610 847266215 232302069 283325942 112563927 142053317 756377887 921490134 805132447 920634600 136346336 224453384 166069776 841975521 986328725 990413335 882092052 997339519 718919071 998977756 16606775 744503934 791071722 838743922 398213556 679556760 177068379 530241199 415289675 684132632 107051180 340557753 233656674 707330325 551593299 751092779 420168678 778762430 179866564 553859813 890878503 901242852 804218944 968349488 228964430 327991817 604367692 638569517 768062182 899617212 644697798 770914123 804326758 875829349 609840930 934478177 123005582 892041818 572087565 717027042 22698995 792146790 73835260 540631476 239493134 288936547 83115871 456294063 579917746 973167625 335557621 980614188 752835004 780600764 270783590 321992780 633972912 743681678 704849860 752057528 609053215 859092351 475096958 808378247 412385990 769596665 371690526 837973807 181703588 916074238 687913845 777223571 673677351 997267494 449060615 457288233 463709873 851586765 529679359 982724822 672450471 953772784 939341123 955174463 95539509 353297934 685083838 877135526 330629420 658528694 118655515 418132003 277704069 792888130 291788292 777568280 537117441 946969589 421086882 585411473 103556853 581149988 20012084 53283490 628367082 981671701 444808534 731758944 392672360 557344181 622078023 981625833 989857723 995672239 257195307 843773004 153530766 905626574 389044568 665528231 699907261 780029780 539319153 572423356 392764278 647670204 298692527 841656350 221287613 419953548 669035897 698666229 859004657 927852237 361934255 470783083 118839147 371985901 831872532 985813082 803596434 976865116 90768961 658656687 130907515 977986832 110385919 819241264 254393482 998345039 175167812 578983168 254070522 310838784 958845670 961208794 761652340 914503190 591482303 663299913 17006962 702185895 352683591 925721889 885830055 962366851 315947675 812178725 196536855 763366096 580255884 747081793 750877384 774775777 873646485 994517168 729529999 893064738 821230653 959432856 697259014 861671149 236946033 577398716 571557480 572932678 501765860 841382302 741187259 906057137 297163763 882905091 862919875 877618607 246662477 720654921 798156744 931463119 994154689 998393807 388419425 485448220 468605437 659653510 874674595 889431878 27349153 176725331 629002014 683233076 919766459 936917316 4920917 693150612 457390547 924851112 817286647 858301350 831333007 911911204 549188417 641116376 93374626 337979983 472061407 923595596 404557301 853902049 589400561 855905818 636805524 855437022 123652624 705869547 758968699 772267641 976209835 994240414 657219666 901514058 667693914 776943843 365740104 875352327 487473224 901222927 903766487 910001216 295284971 668420057 642244877 979031615 100623191 761439681 947340775 955088307 16594195 668606058 797363816 901583150 776378391 987534412 950131079 963417705 396232644 672744695 759781655 903745984 745019058 763755639 36783566 268093308 168973634 861476451 397481597 672587335 398166845 596134573 7340960 577428494 349286795 843068861 382699312 561777199 616697657 720457404 38944658 111123950 867116083 922300632 874267502 950379792 888589728 950263492 393299607 639892086 307563933 968740279 925677758 945050577 337388791 344585220 610769521 661633909 668834991 980116110 106469488 842329919 613632001 653861325 601588921 829529414 54617817 105747013 333378825 612734518 585165095 686303599 240777917 423358673 465180177 519986832 9833016 308750004 494729104 661546700 512289576 958074516 506779341 670667991 830480436 842505477 921042785 985261212 510460957 662490197 48735541 618206450 426709114 573358446 563629425 742498738 179681328 855624288 246895544 333551065 200413667 304782721 387563832 692324132 805204721 979820018 325793790 712738584 800415842 929003173 55065001 850120168 238015662 768512158 527521015 543301974 167436102 501115009 115662885 242865548 971789806 978770750 644156744 964673340 685217322 923246387 757260446 789649128 839916961 974506153 519424422 967972904 560009650 646125308 708632625 793882099 582562362 928430582 350452432 525157549 642536347 669098892 14238964 71699397 240697449 660699921 189928906 814036302 623108234 667507426 243899981 247604709 352426426 892709178 322902762 463846501 364240229 492861420 357289770 715360917 981410578 996296765 770932281 881084854 823480674 902362401 809497769 814018630 880326325 989040547 924683455 989499388 227340605 738823598 946887573 962191509 459638720 765889021 758721083 990620671 805172433 839196593 17283923 191045481 569434593 973494840 80977418 773262202 584432779 879957282 55404407 435592772 247688834 782474072 148623285 710985044 193619133 197782499 28621264 727044705 313543831 759929467 729484386 984486949 197640802 586912285 553354722 668875550 305044253 388389038 858547705 988387919 711529031 883905773 83348151 390395235 505501678 754422707 240058668 757447909 574427026 986450497 380522891 458793514 884974998 974230324 961766933 974609355 337869977 743691896 62608723 413861872 598728450 667401688 80761118 982053762 240291413 279704432 696344141 902534587 693335254 996413497 155276747 808384164 951528767 991914530 307949182 342208155 449345498 835324851 234069084 639416436 554987591 876486634 834082450 929765899 620123066 664697743 3839883 587760189 220990733 696128405 374396818 539803658 633764221 782712676 98062263 788043165 850357646 934670517 860047686 928147412 509290801 875881031 537622791 825549031 758060651 908916518 232810765 835328608 472832069 761538631 603682825 891106708 97502932 344570667 740549267 917703435 307156420 490010353 693950696 920363109 343826991 682459023 907530630 946611973 175559891 913668816 258658575 467923835 44379483 750753533 340230495 648901895 910229564 926094635 802059404 992994295 794181310 875084776 4672073 948465172 415853039 758317428 217846663 954529631 447495912 592779012 493472234 514685860 181947501 622845807 313264329 978330664 857887793 956496027 192840922 990433567 793312009 915892655 479043412 809729970 43514055 320954512 291805200 312574483 735842972 919962839 407489227 932815547 151282442 354891336 814143575 992316434 606477449 724081511 435360212 921100020 708862572 788194483 936876305 937189738 270583130 319067589 176808496 553050016 526692736 720597977 631580046 767521349 596329231 920453223 669494477 904957808 119192349 422278174 768435511 779267099 634478569 731241900 143481391 546733815 148118774 959060917 43548058 301951801 862537714 940663379 750503079 971825734 357350755 707717896 229119129 926629149 36261901 418303634 290909690 919287984 78621489 501430068 756100303 850617242 90256318 731574601 324684373 390343435 666709654 912644300 437283246 830396662 474698070 751074629 261199983 286872466 30153105 930841345 773650480 801508351 271221283 619532251 943282821 961852914 413839632 542079181 356732863 608501535 449719942 656750804 41441179 781221330 861159301 953455598 355419127 464786591 815901333 965222381 652530175 771764463 948738845 996967024 658609276 685545339 251590282 621249790 595207950 677587480 551212292 711536997 238339700 928963236 159989727 322788939 690395620 772528130 950640404 990995372 229759390 368512972 163923533 738267985 150654334 466167744 365032699 632787984 775242231 878041097 693945557 989017453 564816749 621504023 24246152 591823228 356109639 575750200 857587574 903430092 271343388 347663474 360544652 512188612 235561802 759443121 605336691 803190226 448703352 783554869 588220994 750325623 461458440 769749687 684606923 838448905 283752559 797374967 837599248 868769169 907502262 980982522 842745179 861497725 989259661 995328680 113579140 983797803 387026981 415324863 561740832 666538313 692109802 767762777 478665661 945113952 955708474 997713178 870457251 980229294 11114077 30521153 190877455 352992410 885460018 996339866 383422543 706997273 725791834 873087795 532850923 976809436 2013195 800643305 359481651 469193062 359265645 449421277 511468028 921516323 215830715 430922222 595671582 722366846 885111015 897612415 241648521 616280953 382016581 385906333 983048004 988953612 849092475 990553406 142261407 894784282 666950227 909849908 718867707 933396733 459925595 937701968 731648465 759712856 794687308 833438154 318612731 553561988 654915242 862112048 585690151 661217639 759151852 907242381 609166689 768383799 546014679 649520171 209617105 647651913 928941735 981082711 377538857 669809015 737702013 882772483 867542283 925623251 10032660 28320394 884429936 956472448 421286166 888456107 776991034 902307663 366849378 961336202 854539823 990503684 955626786 981064906 419039838 946972189 53817847 769235077 767223941 920352956 731221308 996567277 338796032 554128793 995021362 999126754 211785159 471115898 107354112 909244392 771118036 893161805 276206280 729354488 401524025 767584430 46263580 341430490 157663201 981873306 81323058 270014611 716587505 938890991 340456134 950500709 633668816 702059478 621409673 873217901 47321514 554227138 979933408 998144103 623048683 689441717 433916003 889942534 407661343 536886804 609310829 657743884 913889085 925200326 748903621 868229464 864997934 892750453 589339376 790499757 568086293 623347146 910527336 986996628 770594788 943335588 245595818 775733986 371445833 681476276 607630943 815506520 416028216 900570564 947407232 978895666 734545965 969429785 721322270 729237291 986393659 995942383 787725913 903715833 747784612 824845398 403460216 856792412 8941677 842464958 526331740 941036487 326880196 913826505 195589835 195708468 549889879 644150996 883964224 973749137 406453313 521389945 652466402 843992112 94328228 228756876 16319951 119705955 719658828 885055018 688047598 811117020 672717439 786925746 243297965 450481849 302869620 345399329 625002643 952774017 338661277 431618071 250103487 891813457 587183001 811951098 90559427 789936784 375224002 688215126 945171719 965790286 738134250 917221301 706124961 883773571 800726259 954067911 170816392 497883901 702248820 758206480 884953344 941538152 556108665 744030447 745039168 874652726 927108251 984424332 930388989 948650436 400222788 629062570 810943884 896141720 182454251 909511697 349774281 404059586 240278588 660030557 958202794 961125369 940694171 955033685 844653241 957324020 507312644 782602182 656836107 725808100 391065856 421305174 6995254 187668730 321535706 672774346 683732665 710289020 323256041 904937330 787028969 856597108 791619599 979956850 111359294 935022936 366542491 689120151 307153172 521772943 436708051 924811107 355594041 582328877 798057053 868278247 973451571 983363731 846141335 890853758 361374031 548005836 123965541 273252278 257879814 440684148 313754710 529703811 726161234 981812342 610571631 663169656 610378768 896362274 883453809 956738258 979621189 994522934 530809627 743137438 286261276 442549081 530717491 939838386 703150441 944137948 914772173 987038205 23811517 66111205 48214549 370109487 502302534 561360252 357087519 440095434 880049991 918642560 837421572 859482071 834888008 925026264 433630533 664605600 846230143 994658724 285650583 378704286 479148906 685420112 544320594 977983922 433005146 769360442 858451971 892786319 93392257 574530545 595064207 596791152 282519708 601866044 902152585 939651156 3288341 338636293 723331519 730588593 200015073 326079173 268448533 352945133 81359166 152552409 202183078 844503409 324424244 361689954 639990828 746582243 722583637 913009219 823097292 840716085 15025826 559402024 850427310 950121512 849489485 994289102 781671107 865938199 779211919 969141669 58659161 851666061 608902891 726172898 145111350 557160789 703956523 766273568 919348486 943907199 443107205 893199676 355519762 537048483 419438726 699470223 352589651 528684759 637164113 683900873 195478975 862801315 555369469 888179728 176627978 403649052 211159404 407144617 92371461 580143072 901556327 988774652 726563154 794481820 248938942 529254428 537265146 808842057 979951185 999061493 114102677 223711147 409332448 550960428 308905087 541761687 728937464 795378513 801655167 874815401 604822370 977329207 677784369 893704557 458788548 913451637 95899112 356514831 418479630 604475830 818261330 831449071 226488769 988996090 656795172 738568912 515441568 971822891 405663101 919249789 510954968 690226048 101901720 706104426 882203579 967005753 633475753 868317686 662636384 696896259 971202271 991048578 230289952 348716856 483288517 614540157 964353225 991212024 835107600 965586967 350959675 910242208 56740733 708525809 365293432 791149074 645385808 732616325 353260877 545322562 676194006 848618129 936166457 989765730 723208526 725586933 137105921 806075931 12128667 761654813 402901102 897534394 591856047 930257114 636363225 721940874 479808799 570872047 487334080 912267984 755868272 829330771 560716227 846578793 850089891 891793580 987134182 991644230 891390962 901195684 747375268 980516976 158003724 753195714 754897243 965660809 277053582 324061506 588594352 654811715 624941297 990527625 330745818 446886192 630304905 752016971 206979776 312258719 78015235 880786394 7163215 262614086 724837647 834011158 988019384 988117644 490759664 886239740 906903496 937854397 871044242 975471611 97585740 692164326 167321883 971678397 510455939 844729560 49414412 550415072 43188022 474250511 655937736 846207239 889968685 988182263 559747615 800337727 156807367 949149784 241967029 584062955 613211710 995631694 376546937 924868654 548089305 939194078 125451935 928786687 872180075 999258834 741187023 873750406 820427653 859247624 403693202 948769381 327970241 410548990 746450959 929079437 406579077 813054770 537836802 676431048 233665384 940150530 55994717 747701417 617650912 738968896 485033146 726234413 555661884 700059194 275066408 303074001 812329272 884128549 35566954 788509369 522797651 854992701 931551044 994660756 546024912 694488069 664514428 684305704 741012759 843908890 431009762 623909151 320089518 334061879 950783299 975537674 889279682 912347957 133296497 278909673 819647484 865517263 257843815 565975569 190512855 736512163 527738885 739155940 231617850 772944812 982503475 991535405 54472616 70903856 358541464 878550049 626256257 670847000 637057137 649870284 40582527 132788239 112440628 136748095 828809472 899882668 489120763 533327611 135524306 986461621 398798949 931957331 7094429 601650405 278991447 362330362 99622509 528556824 411458208 940447272 840907043 889462409 66474269 153717029 623821010 935463465 919334935 980366114 945400128 979749714 767750996 953309848 160039233 948622882 512879036 809075148 350752164 835769693 538477179 767104747 301106449 509390819 854866328 977822113 63935691 245203338 692914119 882039991 452563971 767685634 430376960 760637502 487140097 503544674 62653172 656252873 776485153 843768427 447145974 957430643 294509517 721791991 580658540 995312581 298273469 363937222 824397408 984717405 387436222 626354105 283284522 545303814 124975358 244217496 903558123 979750052 896553641 951065149 785560701 959051926 933210588 989117673 259249899 557043934 914344627 916362857 953925058 958656687 464031303 999375273 331008232 604164866 930797594 974664711 597804632 750139169 141319775 528372026 581066755 681569282 229571137 288510241 349936938 527542659 637914772 808370428 256180827 818617678 679149684 827328647 563363395 592255068 512826897 964859205 867837877 893683601 661396915 803906614 367836175 691613714 129432587 189440435 786481549 864281974 542431411 946128106 747432913 823912908 805495162 983882359 469074547 834646826 31006260 817205919 381588291 533862193 823390677 910395199 950998848 990354914 490109491 878537388 730268980 989815732 720815791 980566530 274768031 552751714 313759285 636541997 234486686 951812474 331035845 679867689 793902219 880666573 622917564 653401025 985014719 994325006 516281094 844403138 440244947 563757584 379127528 959785828 802788767 992789303 332460082 604359116 59089856 862213716 627595732 932630602 746173941 838499115 168084953 317699134 856000564 969777131 195983233 245224233 606000747 911894670 867030703 937745742 552360012 857277591 948356321 986997941 329009779 797119888 820203389 939337293 186391985 433898639 469627940 674595906 957681518 999063118 909289150 930898027 170342729 366273048 389241342 827628825 671567903 845777357 754455690 791694309 706881781 737554744 240292289 655089370 417716179 459402536 146384083 718268257 253206990 640421390 835271025 988300338 682240572 878898433 264280306 378857881 594327748 867554794 552596194 922976740 647361237 938950486 855914045 899671195 113535913 400112591 622253740 804886550 348636070 719436263 760413200 985660779 380583582 839205606 791750962 928492950 573979939 819180677 337454337 464600058 794624023 871253126 963195119 977214900 764331325 788000394 506071301 851548646 938149396 961739784 532819791 803860894 136240625 860769308 780098306 995317309 39224941 451611899 448170011 792159343 67583223 438749620 325090728 619957416 818185244 832453503 625682845 885044253 591821507 647921232 559826742 926524244 461943116 944297316 247533898 871936229 480935054 567187109 786275039 820245686 672887745 758520850 708779240 899174798 769368123 948966360 23046409 889902762 916693506 924101361 217373157 952723147 711418684 823457440 215455958 920157177 583450232 960381535 19261050 236280631 404157752 707809029 315169226 343400680 339540548 614573999 478220259 756076346 192273248 480823993 674940520 914177707 553553665 738394406 264701476 375610979 322077351 680045071 141114265 520819242 19917256 835167557 25797816 272127834 608634459 631647113 754703430 886782508 109304614 828300960 439287344 490380182 646648402 788739494 252302479 650795758 718403339 880105854 661436839 686588265 511704771 627622411 569758938 990835913 15464534 584096914 288359253 695961629 86553092 920588789 381377891 498863529 260621521 502069331 233213337 311328731 504937475 786318909 109691936 916037796 643598868 793391880 433740036 563854987 429421663 770219817 149650369 430192953 914501917 950965316 977722641 978689874 115632243 395355494 603156600 974016561 353155671 354683960 201101347 501299064 461049289 579188417 709216973 890567651 126031235 612005221 9664908 924757285 200016846 696251018 814702065 937927126 530092553 715636511 444714025 500454526 635390986 953189128 370333906 451862988 618457033 777687849 142213447 824738844 651156983 743798876 520060055 924262288 771390491 939334159 860907583 908594855 715251488 794884340 326660575 424560710 136077076 174555810 454439422 949619261 919379547 991496454 841997694 939395449 824769426 836113669 546907421 708348610 103353917 657845397 920089144 946525791 762620541 848361293 20496643 345613277 893731738 977443174 7482146 692816365 997533377 997759371 133626163 977102444 330498523 465784420 243246381 751124049 166478322 946069002 129570472 857860114 169682235 550810811 415606592 470072051 339786188 810020056 616971584 923191534 754200536 827245206 453004537 900923430 906855726 933914528 748201637 852767968 83359441 656384958 425814411 702515388 835666380 865054393 103821247 138168987 263962139 329618750 49156303 323841049 314881924 694888777 240710412 372230312 171522138 551317038 163871619 697603199 70841132 166674109 607890301 959925057 286531909 434666807 792605952 837411858 730191403 992792557 536195486 727733691 913356643 993111457 524147251 528629995 121028628 923944885 803155153 984823706 63740745 993723771 287594682 480994213 289513625 786499575 339779152 353967507 855201125 958539590 488571461 598267130 43957942 227097961 327731009 796263656 578379700 617424985 631619368 837968944 63462094 659976496 792051194 996593720 727830545 829738838 63204306 293175118 534702297 588576892 320329754 661688022 985530385 987386256 721191718 730817417 223971190 368716915 432434263 498941138 884846960 971076530 991984530 996745976 206066148 714806251 230814083 786624532 409578381 610032979 249547722 317822569 261421264 308305881 474670959 794890519 864915377 957738118 854455946 938295856 404814637 894074459 931502273 997375064 307111225 980620418 467071751 941201181 701652246 984114252 685771884 972802224 354378174 883026398 949616770 988302192 648632084 672871595 87815102 146356468 714599893 757335422 61376146 334629398 528569261 984080101 508753387 904448779 416478415 432774872 546964539 900222251 556728345 647872601 399959365 443716856 680573070 938568807 1356092 233393034 665012344 825382578 885582940 900396761 624455022 915634821 183135487 826716103 613748754 797044102 777623321 987824048 390454216 533926683 887146626 900798194 553653069 627205031 321445221 375063486 841111321 951066316 39595637 506638085 6419902 944672633 979116507 986217645 10256184 706959721 236772635 606985524 41821604 535529738 23468070 248630512 961176790 962440788 477307200 546348768 938971183 949671352 15888124 770953457 577305692 930778726 318966846 891728870 374449570 420843230 637519600 792889026 511605192 731220250 830731879 858071696 273450078 576149597 611974784 768738689 674486288 894305197 580981223 978814967 724094996 906240752 255501748 789452098 822839360 890743220 954631984 972899033 463133726 466325900 68869517 99239297 288705068 682131508 547194309 601824092 327632631 512603559 965308062 988104645 503153174 994872524 874546196 921413457 392618757 685998565 606458507 625926202 546406088 873843317 241735550 408729644 919172539 940275949 986367419 987908793 979571747 997009860 807865911 938502461 511123722 889062383 800858070 853150246 415737816 666244835 779749434 924195349 658822173 872324499 934496048 953852870 922108515 944820453 986011627 995536448 980854849 989414858 782266334 873343611 728546318 960108122 313951874 697249921 824755214 908114193 499987885 886200540 378121473 957733149 397857429 895131846 106458982 656129669 308000254 899788580 888433080 949762881 738240305 975212223 786287402 930646648 322366678 528614892 495562882 756195637 500884054 721620734 660498500 855500551 622359491 984104584 193457979 437841015 85878471 243449957 481406782 609422680 138701013 713435863 604828933 852655495 774266235 875554528 111645621 816878926 503315940 966766792 448171978 537631139 242842114 273350791 115110003 579671107 570928746 744330806 324490177 679548209 212933120 995234220 652654260 957813041 170015057 644641020 375790909 813656228 702020860 937496501 702715544 815904321 114128626 445270154 69671369 360342277 435301692 438455409 202992758 378088814 845012100 856886489 72596460 95998110 50326294 267720871 4289339 35074855 153682352 942075568 580429609 872687880 213166894 918616729 808820592 995879611 471604379 571904287 445698941 503537691 377553151 723974776 815095920 888595970 561540239 740267243 217746173 594724313 118676161 937765147 295522722 729093125 365933392 780522608 322486330 348816679 357962911 550409456 503081374 731085094 498426618 949415241 425515364 895128140 484753128 542113405 609995943 979502271 451537435 477334085 534378303 550752867 371907516 823015330 367477061 744712103 807793349 836496020 203676016 701893829 654073229 655557709 98995566 754328970 133985136 751235611 682230886 731076140 211514871 867991476 349836800 775215975 62428008 969833203 508353135 659775532 156048339 258578040 400980656 673491278 2580741 841200038 33120683 456757388 735275617 929252765 688684348 924292353 721235370 902936431 793021108 833324226 857398332 987445825 38406649 943452920 420199618 968542361 53547028 960357956 183751622 417813941 165132755 691049186 618768758 962983103 691727410 802789897 397068919 448722909 246536444 847047911 271841773 986740716 47669322 267957466 429190350 760984501 577250307 657369111 611036682 731435939 695762702 932330966 985717331 997498754 115287018 378694915 573781488 992159832 113141099 179269457 569346269 727238853 236519301 861089704 408418332 579273285 239916711 945917785 414358132 606649858 980340660 992260888 793479756 971681942 798170314 925319160 636363273 715349025 286942498 634171191 750440280 852289359 195644830 637826253 205290551 415483485 199778672 534846698 4967771 991115958 203935019 670614660 334222265 867248744 174423096 204683789 266339018 475672417 520170449 637051107 364265870 554970128 578905381 925670194 210886658 265519675 577320700 889330152 325064622 531656246 864311133 894887324 321066058 546752453 487845602 837597727 264917271 444698614 579771228 672375526 406810627 487181594 552523886 661626884 729113432 851407839 182228086 559680956 522524767 910496505 27350423 963297900 505423492 965511534 111468320 192895619 566975731 836438186 426641945 820420564 736006214 931571056 46771143 558339046 304846729 821906386 215511143 868499096 459174271 745566053 224406809 470706622 93689236 516308500 685545260 756802148 965694165 996919136 705042722 894496450 42537025 840207066 308857730 761350011 934419029 947506625 20999958 743452689 295135885 773596506 938284536 999204180 420696799 910857170 621114015 843688998 457197079 904567501 502270688 695939073 562392473 847171471 161056356 563600688 500364736 562584692 943259085 944182415 195601924 964913333 666733451 888594332 143355387 816653471 345402090 909056349 697093327 743622723 582383822 934526296 804901199 873501235 220049247 656038735 616736539 891473994 555735679 994989751 999008504 999337342 453091300 628235211 963295702 981225228 170728255 343486855 546102925 553439260 733360936 999184387 814834041 856080114 414612147 698272047 156085411 678277776 194970541 828335108 905858297 917492357 529024870 558754808 351491955 686410549 825858050 929845225 531464896 556498549 135313617 831302834 412003623 632698635 887491413 898415605 289906872 756054320 807066566 836126555 996963075 998118697 39645653 128308123 988464421 991543032 940865306 963665445 369485674 396378354 69212286 841380248 457787625 858213867 831668801 902849228 768866802 809287509 944033640 977106213 797486855 917492219 719872606 998805274 43116790 364125408 909607948 926892798 723211216 799422881 181137525 231258984 32133415 303711651 102742510 579564796 596965174 627698327 318586371 513129949 936130496 975222545 904141919 942618357 320304581 550095394 231774513 899048032 686569248 978764252 133201486 927046725 978129414 988665300 474845042 917458973 980861978 985799425 239430097 602513820 536058598 536154846 780112884 986804867 709297345 834909924 717972260 988088934 309770047 626175771 673490959 960950053 79610528 572282071 435353319 484211937 297525310 300136821 13970683 60957662 640514581 681516873 194180571 630490511 361696233 639531999 897196933 919047786 92906222 837897924 487295868 549755253 913903094 992818180 766051717 784457999 978725503 997386251 935149053 949109409 129391748 268199767 416814703 538151134 514231585 599857608 995906442 998731890 612277566 713153597 982934581 990200190 477587411 885409938 17857891 246389834 56611899 982018474 755165236 986308229 736249772 813308424 195103147 941308443 577257255 750628787 736348187 875649924 849653125 969904757 126862885 902871071 284409588 594836785 505308594 942049660 204738184 926190913 281957372 360005087 943148098 957294424 823707960 982002986 783630125 974218140 960795272 983872621 325890252 489754272 177336610 894329327 957738189 999146496 140228107 741446621 610664560 801301046 860469760 863864635 432824683 739206404 863245936 992974648 414364555 850684349 132920290 894182117 966696794 973683128 546404217 813125579 961101522 981220200 221349520 688520856 477248474 988432802 741247847 846562530 125022684 136177056 398625185 862389349 906194435 950792550 515922312 549106856 426043215 933809330 998734054 999038533 908738873 940550383 259998251 387434995 418472633 707827306 232713365 414155135 594963771 952194918 889587263 951650041 682599169 783429189 254712821 438257472 65856307 236217497 898562232 917599867 72046270 403219145 99739757 860369895 590134287 630593308 139292526 919997429 865488281 931887937 659452792 765293935 91988569 635711614 111578274 633230902 633486 758941705 669153778 899604427 651230280 983275293 832095331 997874370 291258338 863951120 85877132 342382137 913497906 961909148 574763705 798517413 879524725 987703297 530394020 564479992 234350894 808555970 274672289 735788702 314065555 519711659 383920057 666614111 879430403 984983268 849437205 978998053 454564737 552701285 568345456 606637827 672071395 955536807 518998119 829006998 833310996 878503538 477895385 646514958 417110647 780565966 203805274 559081807 448598887 825903061 613813992 747941999 25720722 40533541 812746489 906265093 506843770 558117530 773529091 840320551 788187581 862407445 442058174 826587953 899106074 940674856 637277125 937557076 973268316 981985677 110781503 789435993 703688997 778123914 149490528 896446913 28936365 469600002 34914080 180903199 38555527 474876330 892490609 926288953 804414713 903451146 820997447 948721872 660597663 861097990 200282145 389841306 749057089 813221077 47265066 641823774 239055882 941681962 850839071 855069373 460281143 900036340 834845246 924242183 374367069 929044253 934129166 970415578 804926771 997688788 457511796 506030220 717643607 927487736 101156292 473051372 138037493 215983609 474353955 949275833 660310304 764287831 310787638 473251146 685342696 912568599 434536416 499514696 422033379 895325188 492295754 711106090 605445651 633422914 161204142 323554259 297484883 995023218 170335392 503497614 597783618 916762854 974431270 982528070 872443604 876379225 486049766 600161033 985862529 987284648 985929360 987363285 27940811 702058140 55908273 121353206 116940586 784070907 744989156 781992837 924182974 994988156 683885015 711275656 433696298 996049929 635738567 917099544 932395015 993170265 41381041 523659281 495638371 727019346 474871379 807769091 480875492 976076706 970895909 993444483 14998026 811674015 512855854 665361053 984216782 990044872 470583200 920995544 438697253 481597342 131845281 798493416 623899163 924864888 276780992 641972812 601924408 856278591 986214228 988635125 636511802 849691320 68232612 861889928 58594107 443761768 39856586 141139593 106141573 240992270 298790343 648229065 778484221 828583480 367037711 752877957 5062676 56799538 231641475 340527304 537181385 826935161 431051173 523405259 936109258 958723816 600605769 764805138 645057617 869937773 226892395 828848821 966278553 993121247 220695123 419508361 905592772 908060011 191118924 918650095 597214501 891447447 319258590 939391652 366519629 995023442 476394163 713905252 637042144 881577361 234161459 497253083 32497115 781859638 99900372 273911032 784086426 824117714 640056521 993367899 568242055 818267608 479297094 964656530 188713315 804626573 419426515 670354750 179517800 279620010 178345207 530252828 42205302 278718671 188054229 697341845 817065143 907947598 228117386 748367039 627997030 758479584 705367624 782128808 29623263 661231789 704799770 950335141 157688963 828024122 217189392 706855823 890370436 991852304 748394696 946576233 146685058 554370774 913817650 993821167 432322857 459432094 833974299 906449682 124697530 926347502 667004176 669108116 826732322 878763110 730628560 926723084 814222303 914974768 417551497 609323506 997861718 999337632 934694039 948935847 626006671 822892265 118547738 128626756 730917185 979667258 561966810 631625465 807393753 983005100 744109640 954650021 802716850 989203487 174331044 642648831 23616841 993398243 413361187 580692616 764823913 817171428 421602369 588383502 403065743 756546319 979857566 992317023 13564459 507869743 414248487 509690195 386425806 675945916 609352236 963023347 169402636 325286079 528279038 544302878 924870659 997512397 806346654 939598057 767289172 781742070 896255221 934913486 135444230 953445257 476440266 600031992 543090223 872991158 650189612 934817746 418789964 570735514 734035989 844870054 754505133 825573157 802955061 933673839 629990171 723719133 350842099 814160380 618701656 965990325 582496477 724736180 402623899 829124435 682397652 797840241 65132775 708023390 308023731 549268018 241939390 299846185 947182145 988206109 491315655 706254226 207778516 379776550 192588094 690097132 518727166 758060228 846439323 863866821 198134514 641581995 719284563 721898731 257532434 966695073 111585834 732725578 664984358 865595780 11417659 484576816 380942901 709933935 167782078 900441048 108897951 323764733 623025402 953962548 786622253 992937299 679420843 728880044 802725262 970963465 775087473 802384744 203944938 270924306 320860462 533591487 838198126 909288460 748676334 957549884 490791374 780853001 506109372 869859742 119802439 709154131 765359242 775072202 812138766 837512082 682683516 904173678 700694526 949705311 81561213 963424259 114905314 307925654 769409076 898606542 787666879 833174124 412229232 925438009 852204409 852937412 161337932 620478949 752412371 770168894 83305370 286635078 826653352 940325445 55833846 982547640 347609462 836882310 687425743 775548689 48751858 480628549 767667747 959750759 607659056 856051030 983264672 983482702 150607820 754474183 754364238 809299133 955380002 977474286 147453585 718138131 962290902 974802513 161331514 645366576 360949758 362670220 199161328 343902438 958322917 984679438 645432630 790149221 527689230 629398254 728231103 928597997 388084696 977709688 779670688 952121729 677457552 814521717 21974082 139410831 59387489 698121495 490434579 866534370 524602876 650911467 37922425 948673886 550936279 814152392 609817955 944562385 111117688 495774079 29446925 319700526 253479234 934080837 885840434 982216983 717491174 856657136 448983442 764473240 934339501 979136961 312264201 981430578 155110058 178855622 665486925 817411651 948144056 961838493 990210082 995170761 402596671 530867825 906443712 914860124 267757870 725402008 612498821 897248154 156256872 220301802 486826785 496493773 279846958 937709373 577210179 591117943 30238484 362560422 466836565 910394861 993468961 996182424 642983729 748370269 208813155 906752447 763879554 838858623 898475266 981653613 81391442 593381206 2935792 821196495 717322161 807668725 36651859 606336941 775159152 967811384 782120785 862156433 604821930 691976921 846247270 886345018 353513168 986916106 409472720 483440843 284284567 686022451 87960367 439431967 121324479 687910397 77690245 315061263 88341102 520215484 224754691 558525954 776937216 971717198 749450532 975086653 33597358 715975273 94906264 151681414 522728096 733991583 325291990 765764815 645467570 771396971 888022613 937722420 454598862 718314769 304810179 423602487 883555902 916735482 561401552 759742815 534417315 764702022 533247238 945417468 17180119 278933097 47183297 93968923 644285739 781681872 625114200 728109957 851633360 909406763 610823022 757180193 861284030 881232516 769314664 790987214 294140960 359043780 367336553 557707746 852731936 958012837 321811140 337979479 849770248 916414510 568998554 812112747 338502296 818203428 567415170 935544341 698506996 859211656 966150879 982431184 28089166 954012771 813314618 919404084 262484420 980207634 889000173 935083617 987695245 988633099 576868351 654559245 817050256 938441040 915059994 950644719 740183661 808873484 644406171 647454505 292971888 527053345 57242693 625158892 619175789 927242136 985678029 996507153 446540823 762993521 482598806 892632554 100324197 345523454 752846503 899321067 176932951 812231827 106754399 657435604 862879557 967654292 293936978 728883879 280249575 535423350 422586784 533949441 516057353 955128159 969602113 991205846 954667368 996014298 888371047 966205532 977288796 997634669 388399685 762074238 486993735 639828213 636868392 640022335 861499017 964677395 752313058 861883370 348762208 749634448 616964365 769983525 995484197 998640366 438236303 839863077 520364457 562881751 364956684 946133858 727595945 842872723 14794654 442290690 461975195 853008422 536557338 804222961 766342837 854001877 266900394 558215191 832938330 905845427 179141681 605081328 901595193 901771299 889648892 981177154 893928611 986348676 463039108 628751627 467091988 566093464 239519368 423734241 70082547 931863959 70232137 729940557 792230199 869715185 671863557 697539767 201047476 672638665 614895464 948047848 454306150 605678862 895975546 972491092 701019782 715522781 639980624 833829369 793366041 980260957 736223382 957562705 937191161 947218851 749739092 926853798 81502497 591002834 161048853 999156014 49104082 188599900 73185869 92096191 336906718 858681999 14516580 514972991 858052993 953989673 22499885 912263836 903101206 933438459 371015347 912231006 584901071 897374356 819452025 955283959 239521402 626535571 853711890 876370091 67098139 571804390 478195144 487223499 978291383 988298417 396603923 797393053 266960978 425918167 88006460 916295481 755989239 812204244 231076649 802705851 543615377 717574065 365714231 516431332 861174166 879247028 758470593 960583648 632404228 699032761 47284299 336788598 549365762 564866255 85932810 937703839 621022725 901659910 215861896 556555590 216813885 513994592 688940754 786573130 234128462 637898763 948129630 950102086 51414478 911112129 989715568 994433471 777577979 980275627 626768977 943394311 878658752 939393008 736575193 867617217 765864703 902075917 510057985 840996487 857699691 887387617 436342615 953290683 405673556 543193839 437630080 906932860 963861024 964047349 303646152 325135492 247832801 857829976 213897601 335035347 120193740 668456695 773565627 975114398 140278186 515003377 774378735 860440317 246717941 935906251 540472671 721593622 694467657 907887880 127278170 178581528 820588870 909948347 775452481 877286169 84111533 379520025 722403083 789258511 315760472 537489043 430560351 821369507 681149154 874606371 440616101 895613205 327468445 815160067 741882811 847367685 547554403 958489672 108957695 983345198 525525898 756216499 170828426 897964698 282049145 635482133 157875204 658941583 421886427 570501102 759224071 914267812 643063580 757013372 554533682 576783943 591390239 854833792 794709179 933323801 497013219 831369442 413947258 524632335 722709706 805633914 768560545 871704609 926495251 948492148 874537024 988075531 546814253 981394117 712680041 844225692 414324180 729629057 379102222 525662858 400746944 727330926 334319230 722492363 333227246 367421713 825330519 903550863 504203599 895365310 214155364 366000297 567160782 916960937 746136513 798273518 619362321 706483009 350406144 987844523 366735514 880359908 221300301 603055722 863662610 878679356 329797765 399898949 827062796 850114079 853591344 981477511 151774905 684659670 126192859 895919707 277074968 518721154 759738597 836685474 534112852 725700384 942549733 958314120 357880398 937273967 189816700 809003226 414874549 776179302 681229374 697294720 381813824 605415430 785603884 892246935 518350586 762445374 836744200 871261809 958393882 995307686 625005254 749987817 863913088 932958544 627066324 710126578 594215496 742749079 600808001 912837438 621295124 988078871 236157679 369742532 256251650 476376121 21529558 361970103 522201495 617532688 614914424 770792292 728734181 828668079 824810035 899522589 957298366 980404980 329313098 804322772 499545862 763039323 624202222 663796414 409940220 483065311 299186122 795991162 753656188 981734105 730198713 855158068 46363310 607765755 387053794 752701364 869791469 896282732 425428433 742268087 407258308 444909626 400744831 981753364 717809316 774538491 721037378 959250365 446090630 450195577 972121528 990891418 557196579 892381706 139613927 920874386 937483084 953726656 966345350 997151015 33479224 880329443 59241975 79041716 990857728 993857636 110786118 309964853 226162672 560306388 236271 2173494 216761471 845381295 150245574 854197227 536909663 945251487 211473828 613224188 260701878 821407606 956321729 957826624 996821769 996872262 814891960 914496476 639092312 660350544 297517781 919878008 159876983 599773625 427718247 880593511 862312788 961866349 892885161 979209138 152560207 611935605 675293799 879619900 580025229 798525132 997139068 998420317 265817805 299740761 978779800 984909303 825064314 860137648 532063559 854870786 199465476 413724813 531645265 845676427 809684921 848964936 745337629 823416625 22271067 929530685 936976499 972814226 25830694 609128844 388351000 779443235 508628375 688377551 104395907 886773701 288974135 969134674 752363205 888601294 883492278 997051299 359727661 574198412 308132477 510552898 930217660 960748784 936775371 939189915 747587822 896406656 529032960 927076202 273689228 742779889 942049144 983189722 542686246 988107050 965342294 988298373 512673160 538835309 120867580 269355750 841699291 857516442 115511192 838940993 399523662 550238630 950403202 985328282 757938644 861939364 504155621 517103074 902910605 966540734 870204382 916354163 827355384 941437898 125501332 322584265 667211946 671474910 437670770 987706784 888393973 981816296 691197673 742022846 903359974 995240333 206913991 607669936 76372317 882205643 478897572 915524659 402763145 869492384 212280686 967033592 344177069 741623935 483956078 688393402 191959966 764893416 215257848 746059125 30546659 662263920 282715224 670407571 74064644 980937464 505278507 833507886 745082476 780975866 608822446 922875297 23617532 728300868 860448016 977361737 89233374 603749752 138470901 798912261 678931216 696759506 662254225 734364518 674699641 765844341 139235150 451398816 411610623 514054635 271021556 957984043 354574831 421037504 354705555 902152847 16755544 455966420 469997980 927612740 50429924 753704685 116938063 751626395 905810889 922426909 789845007 950497947 179794860 982752738 608538757 642211967 315340480 474576520 116534854 207750577 770506208 890655509 458338473 867506343 717186260 899914584 755612935 865631092 368700111 436385832 382251219 410518425 736512695 845387406 651024863 965764545 334674429 425819265 686483685 734610217 838157127 980696484 63670814 866763715 500264659 880601510 580852733 884971377 520908827 628034384 315484041 315867777 838192590 838866278 169842667 829710435 159350640 668453156 821309492 830474089 825162541 898073241 967139795 973011699 665509620 810972073 128108609 155248073 25237692 529103305 627387948 960643996 208848452 821621920 511620027 991400814 630935472 926912058 988484085 996179501 650241135 656028417 914545774 935640951 415430554 526776699 370691434 786140655 14349862 123752949 123402583 219855410 381871939 576342122 848239373 966810299 546600722 593445089 667087831 959632923 878153252 944094991 706744460 986402365 838792482 883230349 994254226 997503115 373909049 388541152 744371904 970568404 246607521 858457291 923938811 940379346 213706638 701465561 206858358 321083837 145035313 912613322 535105059 688653856 435568574 838944331 876057750 967975274 903029149 915792459 772233859 945141538 481993415 889688206 618029654 728663716 720632358 727271407 175439068 423811673 191063741 876656729 382256133 929920014 858370973 909770953 390124086 887088838 444622386 700777267 990862704 999071798 495611000 915154512 195110416 958857295 434270482 572791654 879010749 967866180 13847045 991164826 683623030 932438032 79192401 220177086 638148580 667000372 501957413 917953355 354655014 559094056 224414350 395946313 203707589 614404488 737279590 864408694 345480854 648804907 746003897 783127857 744545873 931034446 644183002 737980482 835863003 940511151 678679444 955146659 536604080 773886108 399298618 793782138 461203726 735986760 642001026 942727327 648037669 772391350 141949660 418336501 602637934 651454711 92838743 684488352 596496181 629687853 230051127 638352767 361316240 977011851 849817477 896313761 35734234 504894235 702062508 963100707 119120533 383482503 796056013 989030666 224781870 959709501 832533223 850167153 124359806 519818912 746947889 840483041 697033229 778469615 648814297 832696686 989149917 991220362 772041224 785498630 146113949 256869153 341873195 955646802 972572827 978166701 187526826 315233179 433076584 880431673 654726967 668142805 582607854 690114027 157949813 817093936 876512741 966514482 464980938 776922644 138877348 709219599 513581462 831525633 958369393 962246725 430614573 810182301 348134510 820706698 998992317 999141374 982863704 986218667 829139326 980044144 843647760 866997630 749510449 942192815 268587755 744245804 300911360 345469064 738039720 880587459 711519148 714392038 982191052 983426803 934507924 945310839 198270937 677243456 593877754 973449203 799643438 905187248 214215323 994665594 26718738 302089048 298305356 576986303 230971395 797062343 932378081 980557123 667240067 711055340 211161469 952346009 410931706 537754168 123299624 878290852 7205179 143434311 857806134 910362496 898117599 934018247 48266037 913541526 412915810 750117201 120236745 627230518 331076744 994912070 390906862 886596490 224454011 493820904 76564971 387981200 149888968 977415598 435575382 682595066 706015003 735862486 995970968 997937856 21942901 287877257 907067909 928799013 831453895 919545321 490225016 736359828 57226905 790894255 925581901 994726082 213031214 937932580 606473481 648920556 120700595 416846400 563422482 806075202 392860731 898360067 425465787 790231548 615546476 889837222 372814896 631657554 155003524 593295258 160143094 935668195 700971094 750809238 764602191 836419129 814548786 850574912 893019845 924765710 620022583 842093910 827691114 872666972 655491095 757463916 694746431 743180046 561890194 831184108 972698751 979712022 132058743 554635113 373150891 498735830 285296943 940749070 491583320 575503575 835295391 845679155 309548087 810304689 782038494 968176441 500086486 901632773 66506646 241441945 227375687 389661713 216635592 854690447 58759822 600934385 110700955 488439875 923686348 980461955 827065990 882259105 334622837 390206935 768371715 861634858 331135794 401942495 296631202 535856559 134221347 613046196 190045856 411120220 90703863 998299903 911391539 955888318 858081722 980388730 56493461 173723404 108543851 694299334 527949984 928000471 943940769 970493126 193737839 979043263 385554279 551250760 31676330 491909657 922493074 935301151 378569038 996086453 235868125 679537924 290318633 780489015 512664998 784476461 923198910 966914766 609551532 670660028 912772116 950566499 159630861 626040889 459749678 587510743 902282367 977894330 247779251 478308601 653850050 931482447 634526915 863372004 926062180 972885717 26426690 592549715 82835646 473060448 543335037 741508568 433098717 441913118 827932828 979764765 923418049 982157397 367125187 782845728 875782546 993769081 448273461 784207883 524919979 979978541 683440825 952261371 991130214 991571077 604999374 897219047 622275755 736282295 505933260 626255664 430154448 485070887 140267866 665626596 859398524 978591604 502517606 876985668 446779606 531793953 64983038 724614964 338815387 622415874 731127387 966286846 178392385 205588403 780096714 937705101 111281847 905940604 225715097 764258239 697871684 794158547 851114508 970208610 599512543 971410656 140919694 252636875 771499915 775453816 874110864 908245010 908544669 964488761 762265866 979867254 399489768 969084767 861046652 861796416 938028490 982682912 454735545 787396528 481390038 594276151 985260316 988927083 775299992 883157418 532110731 758486195 251042897 470360346 986829492 991881976 197388861 765844060 363008911 863997228 499567717 802340039 348575251 374277201 682537037 852604565 188061319 722460958 118733937 195767028 930969244 967243327 260755475 289211924 956925748 990396714 121774966 993571401 904640026 925132897 121103349 163575180 391164803 834735743 90395149 670069811 110050406 510281347 654151970 778349372 797468284 913466239 521910680 757371883 600977316 620907962 312896738 838717020 995200702 995267021 515965256 621711773 580263479 795752820 174071654 346694133 670425674 809236754 249820173 523202401 161564257 280034128 895700249 993260828 26245258 832697511 485844303 582169267 239887525 786985718 212893241 784375134 605868223 985472756 821397898 990207452 224363143 665213312 106863439 366223320 320614334 639467798 666243050 924189855 372316418 577637647 501419229 660879846 636258272 983434841 259649321 859887225 998887269 999329272 978884309 996213669 618088261 933337331 429950751 667114259 408992667 553189476 169336937 789521957 273200090 735735588 991334330 996665709 256662459 654832257 779320140 820376108 793923903 860626778 50838813 144274629 954349609 987918910 307708312 402651921 994389022 996721120 609284482 991699242 186034420 397959606 524480090 684922156 972298712 975359960 444159746 475790970 590695823 737079828 909556254 932655466 471098151 558857328 819288072 994776680 200129045 947175235 128306793 997997457 68487184 661969042 466330011 488097855 208067333 636450468 789035499 806989821 455131380 487350566 965415458 997329724 833428113 943912747 955799340 978430738 996214573 996970018 306899375 816318380 200449106 389684185 922547984 987012943 174061567 414006111 492328925 877184633 909868091 947637412 178111928 535013806 321520625 588363445 354037837 885659609 370955509 502101176 458212586 465564925 837285223 863492776 543099354 673871573 147412435 317514903 409075887 772818305 646507225 976699961 298940790 547235201 575569666 665981034 613085016 700533229 763160155 995984529 877789662 918974032 699207048 977083861 262490071 801091323 229578405 766914113 642839253 828146012 282681880 995639087 802092506 914295591 455553951 655076234 499578162 891757818 635916990 654468824 374073493 569378173 826401861 860372747 952051586 964218818 770736917 858654322 666305223 888003142 376569891 510470851 986517616 999364486 638602619 902430694 612761883 971193000 462876716 763412828 130715065 259883436 560949354 726614143 526697372 829110398 924431176 941858772 814043188 867792364 950944179 985727781 21802881 159448853 623887839 944743012 295554673 767930862 982569923 990833331 132008425 224497543 42204672 507894672 611084122 615022150 678268185 989048147 504083885 796435770 852867449 924871129 373992728 818027768 42103329 458666714 792267771 831192002 216715967 963913571 210576659 587764518 755798845 969586245 105886034 329469599 274767714 752659776 691546704 749416555 829954069 841869941 839054700 973260434 592671119 751791903 780965347 937371595 776495552 892924720 484643463 883581740 843249552 943604488 8230648 347170142 444600030 493328044 548056600 808166398 706427144 791046552 254258143 513772953 173733626 429693900 596168163 717153941 753496688 830336622 399039148 987805713 455223137 724423159 697207428 747172670 909202210 909738662 954477848 993324590 941075296 992031356 160669220 385932190 285135556 907201020 809282246 925912883 727204197 942722216 491757033 858441306 201769917 446379771 86560901 250916153 507238146 573966865 206757979 410723385 127990694 153248937 128864984 964747318 863920063 924559356 277222358 970834432 169885422 755714025 392414050 739086578 713922687 954203898 998705029 999227358 681423984 762989496 311767973 912377221 643483235 727444307 17897757 401038809 59132384 939106943 502618767 648180524 392200969 765407175 426674402 585114910 462005510 994593398 88902311 517003271 793451960 832014306 656727688 764281514 961608049 976712710 447657782 754995686 921124411 948304585 872600407 888760254 484473355 625334582 833853579 893451987 474182001 678626477 536271759 614874942 524479116 729086370 652678176 977106338 30419016 132486358 225917552 866276724 901656019 988004122 898270756 907187018 519937252 833374340 128899066 873318396 730021534 995838304 387442597 927873576 572253819 701211397 911593272 981965615 797527685 823153118 52844120 502537160 829707020 957491603 543175922 543786601 37181783 284358494 448024253 992100728 815591706 993973816 938093724 997388345 280391119 341535411 553170502 726653574 64189397 510979754 966597455 992939260 262822740 936375598 781799299 840510661 36728435 647277762 268926611 374618222 856901749 944616639 118562067 881490683 268838863 636990332 204278692 329381338 252833123 750253207 958816429 983940461 168491072 365833968 925281215 930620581 27135287 463572521 343975726 771748425 410293105 589764957 304231735 316011533 90841826 847693129 321450554 853419555 326343854 675336615 659584174 890776561 728719798 769329560 252683355 509240957 706439621 847630645 888445380 915539536 726767914 860322694 632606606 742803557 667112107 712395938 459555926 580868274 773952899 913731367 67553746 820208476 147665041 507712124 105402173 405357733 924299228 950284418 510006908 869296742 778807082 934981296 494861362 751462946 457192720 466715553 935848105 982214657 967575039 969914579 219025526 965786962 390003048 919180885 436017251 563028956 763125717 906591624 410747656 766450790 14290969 852296858 190345309 391812232 732017330 781223502 232602639 609341907 290350888 390153998 407603141 750836303 826291945 838498604 34694824 878749747 104075146 446875144 282268568 610194032 335341484 961011060 275985298 870906897 788688379 899203024 812391766 890486931 566396948 799054155 903995811 905995198 415764474 880179867 807310057 971728713 703474071 765906173 133884467 207596372 792439441 948313048 117839718 128553219 688585065 789184532 180071789 727636963 57747552 351379243 127522194 356013717 696017629 860570638 20889617 845632497 672039845 750276581 674171393 686377706 476335576 537041385 687454222 876684632 440202833 702145610 86032942 191103834 814574552 830579450 897025556 910248197 766548223 811049872 922246789 968865772 351425719 981814310 372417305 536114220 489886163 649096065 561408829 659201487 555453208 678447247 371756479 605316821 495277794 603193298 496102562 980617355 522664907 643032561 156451799 670117891 599186729 606761821 679077542 731817987 284988098 827288057 337027707 616783887 343634418 844961626 817072914 908408403 232362627 807369579 453769025 821791444 970810168 984447237 895655396 921167143 64974492 826050324 281474885 635481054 194987998 819518024 143479265 355087273 25630326 521137665 595538853 829234606 268123267 400566648 516960308 878729977 911898527 940891040 620438301 636311505 165473300 763927852 775906306 957414037 406307765 958175836 91543391 567354406 310012275 493734194 63270363 75739533 367849523 707155684 490008898 709418701 781421806 788191166 728151319 971646602 73988860 371596257 284583690 829096366 102370126 307280480 342776393 987206408 995802431 998554463 321151774 758500128 761976173 829728552 854486130 859937973 705088636 751632551 149747984 776331101 58118891 333083266 297044397 399580044 310539037 755989889 41361517 83496007 390317691 523331339 769149812 774641332 764548439 937396116 95126980 418738135 270180799 842942984 406783856 984759601 66160190 638967202 140305519 851929554 291188164 858768301 265590463 709630780 33377452 246901085 573352870 727543419 759319257 911596555 803901233 807443530 312941909 980858264 83469 708563061 379406851 805184442 359931472 413430519 630317238 684791330 727593390 744597881 399154319 946967357 445367846 674176852 433172472 821426807 448806920 962851827 410778516 422844844 545952833 812572619 540828562 845715541 629057922 695309068 330691090 722171251 38681908 745036089 514373086 584022597 748923852 824628407 576872547 609378857 412767790 644691589 983416538 999358767 706788429 846867269 502091517 693099874 712756450 755739256 196352807 904746034 903353016 909357094 871149838 905046856 901192018 994112888 14583552 272486395 155735765 280200928 305228883 650363291 937371204 941233602 900968110 969546856 969027314 971091494 386451591 999109737 739724887 965479492 102236208 297188821 608870329 963053931 745519434 967268372 377357505 771861972 192061223 443455238 330440031 872504586 6959051 846440753 172375533 744523587 936926723 957693316 369613697 852294129 328239388 703839912 11472760 103598313 285958142 498811426 209881434 995996652 460412579 792979733 769000061 985426654 716705198 979073162 194620116 236642374 105956697 457412243 993994239 995115818 43940202 849341303 251420467 949574248 204009210 590906628 755846078 952455040 238815066 768619354 927942375 981601286 533471569 877406626 818307585 832967412 807010027 929745863 583575023 663223960 397975764 578506257 101262059 576598258 842870235 886221932 49842544 436481144 964828506 966557036 444401170 508088847 500822254 901895375 139027795 893361632 437497736 625729866 233739570 975588165 55015949 668316271 731302019 865256151 368524437 760087099 892713097 981894436 38511818 184256041 470388947 506998015 307141553 320182551 909910523 925016460 478136246 818617731 359020732 666003148 393525155 855004619 256408555 774931267 892603870 902389242 816946975 955372891 256280226 962879948 69282293 546647726 58390905 357703905 930899345 985457428 568020638 802517399 282929196 903527891 323678536 444996719 529347092 641396810 402157311 860284070 173266235 747453833 251282209 932322126 560679770 973007795 766436369 948548884 65422722 918626911 967916193 989634304 798463342 939851737 928421826 974927821 534349837 862800258 363275145 427040344 943121709 998784533 65075096 764036740 10264784 142174376 403603628 940345734 67478699 494451985 988776844 998767209 29907833 141967639 729356938 761987645 900536967 947109870 514889717 973173065 349786691 928377604 963299621 971537373 957720318 996634485 868941347 929546062 345201731 721766755 70640213 381734578 8197075 968792774 257150703 950614376 159264731 182506870 553207821 786897647 835648945 984819442 474700154 575368013 416590258 710503967 730432338 752700779 831365610 834333779 432325772 612363548 538488154 551735505 764785599 802909554 937526475 970209943 399960681 846089451 392751764 969542791 39435023 706540305 855091153 965627742 479116855 825823781 391939773 523423286 407202800 896732545 560080597 810686646 513345984 989783186 544798298 747893549 822084732 903231945 160280814 892015615 777176259 802635904 380475890 732033143 693335571 752513376 457617950 562475244 91730579 319827907 561660970 714692754 713811609 720300865 889153414 958194450 314346161 774441065 914485021 969228138 925643864 960190371 781146662 801909972 711285864 793966800 371906900 930294677 902988193 989016804 367882893 398864391 812355704 990387588 160086812 743361057 735313948 758267658 729020931 802599635 988177523 998134313 411076022 558690994 956857592 960056937 440927286 798480516 949142465 956132171 34260748 296192456 374881508 441738388 970951625 986552191 747465138 928364948 873014375 994346920 510947561 591737817 348174716 795192558 526764375 692395519 399557298 421474681 164369891 430922178 247420988 913733355 712297809 791989205 664009267 776355007 539643646 674565651 634567143 648273023 20484872 888402395 421921068 646844733 567952945 586852277 885739141 906287146 162071718 238912815 522970955 766074510 802180497 957511419 813596320 953132891 844014425 847165319 165220687 365674893 745610853 942808741 106096645 995590229 90183253 358407458 820407511 825888312 243346052 682718137 562670725 706033755 54600203 511043535 624961292 658953523 922235771 936726398 5128376 868144234 973583892 991572680 151300633 696025711 5501291 758812718 836997463 998038799 327327239 362452207 484717603 698734260 513110577 736102193 379507121 424234425 398607700 589153891 174188018 615436972 681881295 906403025 379762606 596233339 259591413 457940635 291403662 795651611 284143236 383061868 661729959 763863681 992918355 996479986 117068747 701785220 511911314 794757395 813940990 867241716 260918148 691455070 855505531 886432592 616380348 655150464 368321631 578184601 665737337 811510337 926083223 969028841 740603808 864711055 455410245 707011701 868348299 962566487 284214386 629105017 883085242 971247390 693179360 942369251 941555903 981677335 518021930 645184445 156620646 258141030 566261213 677930559 953620845 998839723 551358063 654480190 324402500 454705951 44498349 348840534 91775721 616188094 53189450 335488475 263993877 426125013 632016856 758718993 747115446 815231151 754022228 806430454 33973163 430843312 149558602 954075504 950081938 969334579 976615494 998338329 10940 618210849 757901018 943642361 388474405 804685763 682475579 790908143 571232489 800598830 223322197 721400706 264528306 516074253 297680386 624557188 249725505 913055192 333622133 598729875 17358088 309815645 196364805 455384597 609374530 997633513 895127917 953518337 699029532 859098796 278982708 402644813 964537279 997143966 473112201 713986935 936844898 976191856 729440232 887871513 501392899 840902472 121126077 930223890 127427165 952546400 128559130 319317104 720034283 825889717 65561357 551264420 410285665 480476267 477933076 550481891 19119841 915530413 277705167 958392373 68625303 829201160 536474170 889933417 742551388 974707294 112857007 451580974 255640168 767708460 812879040 952156581 453501512 854434435 713042930 848616267 853907971 917988959 716013225 906104974 89070966 326564315 296843942 761221000 636368806 868141931 221581663 862561302 949831384 959642601 953201956 991074304 142210043 574902628 830363555 852965265 96440788 597867196 546492144 552809649 199556622 372745432 663511163 910525011 100090157 492880536 393759768 680526226 714617222 915623487 544171772 659178776 352415422 404984838 278781924 375071142 86520027 351557238 234412004 906842278 412669995 828618446 385499283 624397644 330266154 827345065 945781178 966432475 903367073 991157029 657419578 978579104 183593373 462419211 511974023 746336106 605225825 695689349 472213985 997704191 267298328 479606982 801495702 911594600 686074077 729204630 609972744 826398352 158622655 629900860 437697947 808147402 422467312 677174923 159439750 724992985 293104521 786050662 736467123 854563740 639093001 846699794 726515276 863847267 314398799 648033538 202587743 653628814 146532130 597108361 209518841 646615662 921331412 995507548 414791673 464843769 400520573 853839684 231923085 717547912 962900130 964491936 379954222 931482697 658982292 897052478 55420940 855784196 686092211 949336874 363628719 471045431 602908979 620711322 346459737 947406159 495792918 499685027 982587829 993537652 417629220 928871291 185510438 286609509 966341563 982377172 658849455 700267317 994941266 997655511 526140085 545128759 65103557 790895792 613224733 646721978 630822278 876572468 70726584 130900226 659736483 976153587 177012924 414595767 20669367 912438699 320512223 787243525 766129759 860023953 411725304 826025832 588042498 711085062 85750662 539494969 636666696 915297376 392069771 979630580 51265272 239821767 54789219 567560556 934281742 979353260 425123994 804712608 228189190 850242382 181740304 581328561 42748627 488272202 408362098 921539596 811331637 835671935 745871807 747447530 955630561 999314214 997899491 998470821 503281963 778481414 141424030 234900525 870762895 985127465 585654827 612748877 68625453 140573376 677077939 794801443 362653305 485691351 676830140 677489662 770402751 938193326 77841798 736416934 641193881 990548294 96172063 375879368 925675897 960152119 470768276 901519396 595703087 933926134 170951329 277950856 903923074 940599644 6783967 919833184 434157641 786796418 1270677 65402070 307716572 483330589 446452864 974685000 209842012 490478167 610565852 702695736 310906379 397575003 718736189 974188798 119480641 564630787 822591154 907302611 294975005 496201584 241966343 656676011 151277627 373471946 786615048 867549622 642189896 747945004 554886678 814331942 359859649 964960887 61980756 812589613 334365442 716524479 947377840 981477309 714962355 929252115 432090166 897700878 215260061 441228440 245438246 596773575 730199067 775302154 675965396 781771336 624858192 932647205 199694822 517905003 439363490 640707352 971028118 997238978 94842818 742429972 880407297 960621700 761399104 897029419 665640140 753664700 970637725 991179285 296494896 734448617 399684757 926043990 421080808 498882397 478708924 508390208 100223486 678245329 132895339 640793344 664645885 831034093 755930957 828568319 455101724 526263933 9193473 74339274 87566133 434823904 827773809 963945639 592975839 947409756 385537197 700256499 12108711 200548599 124003982 728525458 874060217 908750975 92351364 803940283 317269536 810670936 280331299 516418124 917474870 996960583 876909966 940216394 369921864 731252066 459067353 892724794 471292070 879466438 279088977 707874628 1048947 526398388 193687531 614380436 739739811 870642264 908079062 993342286 963713490 987479610 939663082 988806455 233047764 524579555 296996524 427041861 314728317 597184521 389283652 637683569 144774180 543441337 264369921 477177476 466927672 472571801 72968738 775327745 602249244 656025645 340871526 759098416 336986036 833033659 800278629 903379098 736805785 918331018 442763111 676363595 845362381 866614486 432871624 893435385 262012940 899006235 794160703 925386154 779136251 885527399 727356858 851082574 15768153 803542476 50974792 463731412 587780418 661784584 832851943 960743030 891624524 923478564 195619084 763540524 696413111 846914350 265688711 735738240 764128304 860138968 743016521 923799342 271374025 643025724 756101778 794699912 854662616 921365143 280470888 575356838 703928705 876233198 931169964 957469824 48001634 83409972 719144014 925185847 553825715 612585419 778821635 997180361 825129060 962385986 933300402 945705968 144865940 955536975 325057389 934736403 654719544 941619322 664529207 738331281 391876270 655091943 462770873 716543672 419448494 943603906 460264597 485596848 108042044 755327819 54817909 308238851 822945677 890538245 276599511 605614511 247266416 715764887 284051390 881354640 961272648 991653747 608110501 836333202 159254991 879104863 567821320 830436824 683682434 918291556 305728701 313066637 622609608 706064414 637448783 794568252 401177873 899727152 795404104 804662746 639469390 798184279 769217788 957338715 52415406 155111557 209990023 708875076 66680876 178757537 22645527 699179645 474146096 774830347 124336033 584339630 750636312 941331904 581361554 860013537 125172188 733040426 560348416 605283396 857525254 937028194 310783723 915911325 932012742 949195452 299786009 602344376 160953443 960744194 114996957 470376480 33942892 988093987 548964273 635372668 949261087 992680936 338542305 873141307 478519015 640926820 978671996 989671943 578151942 992806732 872343708 995064605 616637993 975867248 114177389 673103139 756145097 848602829 540770833 832405402 473174025 748076524 896000612 924013604 754346309 756315347 199405978 643367130 225548806 461021357 228768011 662435902 892297443 908688632 83624062 735420216 225336921 630145188 541757845 940741431 474035160 976900324 344438359 915922448 330031531 396045539 874372048 886615937 370553328 715966507 60706672 933925459 445158266 610132991 676347756 842744952 970046033 979849747 3348862 582193805 533273805 770354596 575217735 824258880 93071457 189055469 530785424 854684307 440893548 863188481 199223508 468711504 280881198 557309580 645932083 963428448 176272072 916341210 987463209 992620165 877388577 950208287 572543265 984219890 347946053 455100991 558186312 887583116 984471129 985495836 642987726 867137162 389288082 677919711 777832392 835183425 995751581 996143452 644059017 795352373 588700126 864240951 826899372 994421112 645611865 711759174 690502347 995030775 973518008 984737285 129037432 674949930 38413320 872166263 424622327 867478541 210103787 876384932 249714340 703519870 660431714 848343798 364094384 888058863 905399872 941394216 482580992 562674364 619510939 850117487 972953879 997918012 579960506 650411532 752018572 855043809 268809613 639479282 150641706 990571155 724233916 947698242 575664387 884419609 200129110 845580187 499486310 802676922 198703922 693501678 358847562 549868464 147520361 344487923 38421668 107573314 475543712 780511618 468012757 847639522 472723559 857431398 484294411 575971326 492770323 862459411 27353928 733488248 650003144 809211700 484727284 682430068 374806078 424096002 229017725 760139272 605863110 677008268 88988198 913446450 460431061 814298127 489894946 583182290 95880926 138580809 366020447 590975154 79383920 996088478 276210133 529436943 569213743 737322853 975876802 994039366 653547546 714003942 804143174 948340576 922000313 993673741 373176521 909315384 676680646 937940064 992192219 998801873 560045651 663356837 501207064 537943046 570681386 690485584 255602186 796011501 70045317 257956744 324337518 763448706 574216020 892497244 606369755 734585137 981436331 988155040 800589530 930943873 729495675 753701500 570153800 598369691 721973442 993624338 4650581 403921313 960559758 962588231 12816317 52481907 344133725 909935194 354909340 442267078 196338482 542130184 612149515 669998242 340959934 430872749 737900153 794737158 844919597 900418536 419166987 649091572 338799027 410281878 291850248 898000938 577238032 830864385 273501948 796317864 263894695 532877243 35656906 98406061 488238550 838171320 787654046 925271218 322519853 711704427 484600894 828219938 375785160 689873173 300033911 395610168 793027703 918721184 593964931 987282929 815634361 873402577 964466114 978357610 278746299 396055641 46955558 647635978 933977847 969906648 819761302 847661984 790505777 947330019 119079192 740770043 479308311 943570840 353028527 444948304 92375350 823077564 809748067 963127729 149870281 318162265 161109520 234671506 350062876 359941803 847161780 932700156 370646191 693431863 156988451 200116074 888746074 889499406 958023375 988621865 843229619 925728090 441958410 688840553 451388042 477232428 472678346 861933498 62594734 906768791 820311576 857926089 662511197 992586151 606483668 969662315 563140295 830906521 409282234 780650496 139921987 401895717 812273761 903238664 101939172 493559965 461120650 527322046 3145820 437134031 151994889 926878987 349249385 981073126 950193913 997098685 303037436 887556740 654525400 809505922 769705977 991634910 729711418 948208891 223887781 305866919 22215599 888242145 991378212 995658586 453214710 541798174 762353382 807736610 14261482 135912668 270736636 941249949 902849726 929047952 95009571 794703995 836566543 873494479 202700068 476287685 319859356 928193855 72037609 695677693 315257685 681196115 998868552 998937165 221858774 647121022 539302577 906385158 615841980 639064275 86371818 462914700 920481377 997165876 176775678 613810437 178890754 543316086 445627965 650413627 652515626 755177959 768227873 905070589 66015620 365319953 228219888 822516747 836505514 900972195 937800135 968402443 814706669 997689595 749365593 773086733 882414977 915724612 763047015 803919423 251825791 546288156 253570398 433135438 645300860 804711233 448851187 517557926 270963379 858815853 767135026 823607279 68481588 977447400 165001701 955845574 568696246 991238958 645765893 902822764 139361764 247120036 56034586 219940564 431536258 998213156 367119563 543616412 676265113 960331376 264475860 426874201 155650987 321936162 693877204 835393936 994039199 994981696 281900238 509688343 621796983 953051874 2415156 829194754 727278038 888707851 729078575 897001158 516059502 770323426 357626958 767423558 265200657 576955287 462568923 850371235 830443175 886435781 604453813 880819760 253462600 393456578 386070425 659816288 236235527 382088613 833538419 902811694 595303434 901446065 798083631 984665855 85745899 375968106 956982449 959578917 711546625 912538129 752736724 844479748 200164991 790336976 509849659 639476808 774112396 906402343 962430070 997099739 391470349 947698941 411662755 889960242 704571416 760398740 340633411 444357298 679837983 958147301 312261821 922940194 805166011 967768288 191104684 861889174 548116048 742816817 725335602 940460809 860171907 980736570 235900833 447737814 105101360 863162653 12017653 651528740 638132330 854686949 932185541 977411263 158611285 728935797 247731432 806219667 16935319 961999009 380892222 887364671 110475976 976135844 978831943 986063326 699992013 742034207 154153750 662176821 223752025 230222381 233842400 907514765 768548846 983462153 32364490 216159391 320656847 722478619 948378650 971623444 814589980 990484144 527616606 578134377 950804644 957502527 842055315 912851010 881971193 926808981 553350610 618384072 129487431 294315652 365626315 666379800 809329455 945172838 149775995 995857206 836290280 982763103 133787420 395013311 390047230 396060710 144908156 674258829 234179121 658078357 761030206 779987598 830735750 900009137 926802293 962959369 220473968 868149867 101487111 951280174 635895087 882716790 646857971 720558434 654650751 954337744 794219013 964881518 437248136 816018009 277706836 353806891 66895741 444775328 968708792 969272511 50051420 203628671 64672443 927305484 135575897 324856680 184508409 425552183 907809598 936327897 282335176 745740555 94381844 887363967 302364935 835505585 734569500 781793354 567489607 604436245 334455070 955188836 689351490 782592834 244220267 840465502 136703118 296397384 95777289 196345494 867437419 982047846 678986581 925055301 586623205 779675116 559018816 840139595 225060287 578886740 489336750 855606335 826182620 932990126 379812982 829546373 814261184 877823119 108846561 177185209 338391787 756982571 124372331 208108166 792226642 884555951 30487535 752338239 64796089 815825195 514496994 864507020 498915056 721230567 162510565 607092065 471813602 647130539 959213975 975261808 408234627 737531271 570669672 794016916 197861021 749563448 623912240 771139040 870454285 935205160 727969903 804302689 588921176 861202684 355197293 827579834 105377657 648511308 354125192 964088151 589020773 768141327 900210508 921070862 163166142 537435227 326715675 352297213 219251906 884984991 430703527 997561391 497923613 942604755 357377957 462671330 796423230 942773185 718075148 873431808 15735566 281787152 911020886 946525315 454589443 729765803 427144065 440162735 776711145 959202091 309037583 693756080 171542836 784639028 587913055 606995232 862269523 954510232 359640758 467149138 82708656 555681944 378112371 920306260 310064019 636515616 454449349 528718375 536709089 741843893 94126968 992674379 677559041 847652613 808914678 890474019 791226809 799375116 709050361 773447732 357221954 997459649 277595843 484863207 346979598 698931407 35361526 114519531 640942173 953691191 803158518 826504926 66037170 669643107 740938463 816760764 228399214 993038394 418289312 453516924 66634199 334417167 116351464 645905675 965636088 969717903 299202654 718931560 842166430 890034593 647871572 722733767 618098290 661348021 220660759 867854981 498229535 632537941 493604969 559320418 452944740 963722602 199281482 362403185 61805791 423696527 768844731 929466157 95275003 361600506 603205315 914147476 457530583 872511376 637783987 706185120 500033310 527125732 651207508 954028327 339913054 678990763 8510327 635570462 908020012 938832020 949989338 990425234 250395164 977107660 591776104 759319970 408767632 632606863 358178222 801677705 983713410 997176762 155413327 654625144 501818017 659028135 907688665 980592501 534606134 714463861 298962713 665911099 889426917 946063187 434556260 952592260 765085858 929968693 628671950 919614901 657450220 925549391 39288491 339370330 501624052 685891417 264601915 578818053 139081351 221401109 436740669 600389514 9963318 755880201 601229059 930643088 665626417 804233355 813125842 935559288 776955129 949272178 755881792 982723924 693381885 697865672 115033362 816210566 506774668 889029455 617180697 805363622 411261779 940383483 18750841 92560242 642057206 867167524 340465718 936654637 375438124 998307498 31629938 911420367 603121195 693257479 253770512 364198387 218598415 692215638 367762462 787097041 873811674 963820524 535142669 716327504 564906245 797121210 702589593 906503537 388358829 658361026 216620671 966008574 555860774 793590763 484343444 814770182 15531244 721204012 789213721 818685791 651490138 792480855 501468183 598294074 841677947 846430670 703086094 777027745 25859246 432743002 410522112 548861946 485123547 645391366 290498826 985477153 241543909 298279536 210005487 424985529 832502278 962664232 12443822 950424654 942303176 963303215 627468338 842265296 272515907 663880549 622193043 630052491 581040271 720986435 313312624 770600025 731394060 748284481 537597414 789573180 862947601 942914202 747904934 870631915 606590974 622451289 376912132 933654261 225502135 818402711 868416894 941857973 184710443 896751035 841822634 925305126 734772765 951524897 670819154 972144415 433589112 638330773 17210967 337621180 306669606 694367063 752562009 926178003 454543411 974157505 426945309 752167302 273128486 499682339 82431582 857931855 160359047 335899877 158934302 673074376 651221126 885410461 305460933 819716094 486387635 736443942 625087862 757087957 788525411 970428930 959101743 993854679 921740940 951743027 946763954 993958846 883712367 890378551 980992870 982082272 100775961 751848230 661894362 941529895 83066984 826617913 841047511 857977835 854539275 928619781 34438848 168497792 819774367 954849156 146592851 788880386 142420345 515691817 106397683 372817254 502821142 764615653 309083295 635366315 885900347 967364150 530374385 782017624 713537884 784792912 637574502 904442025 21147865 871493881 825126859 930975645 625706224 882162265 14420524 78471244 929820984 954311474 683477153 736448691 202095768 922225963 718027121 837924660 559020004 836462042 569608218 624262084 765547487 867830238 47382101 555051997 543338268 904376085 131095837 292846677 567994529 961937035 433226473 622603814 777244555 804326243 209239506 868696856 522231210 762496188 16949923 580230175 9417170 972003957 284724511 839731807 923823472 949180642 115013752 985823620 751615469 958596506 392631452 968531883 836258520 910555884 761599531 891812659 112935173 698675570 818614981 946062267 78420391 859546534 295880771 582775370 880994482 976480252 170526925 634835361 357585741 582887021 461050194 846425002 413844502 577429068 106967150 921353086 349406036 571356831 137482206 941693663 715271023 854346712 171774679 859881000 247569034 739722328 529861087 773765812 595209707 818962451 955638722 981345116 792245841 846774685 202391831 221529136 657004946 730333003 129419605 520644999 543291041 613676818 105870189 430258366 775001512 988198959 535097610 719143746 707854816 984038800 697685490 850830101 657075928 945152332 943741097 965035429 773641856 908150961 2091695 230076287 344217450 779132759 169423874 265421654 365462221 999311687 411213462 891420381 696744453 970705259 671733054 949275199 599070863 756936551 98538654 799505968 524350088 921497924 909894632 951390553 795377957 939749785 637942399 823896982 313393029 337967475 398804552 739304309 814447036 929268725 685964507 698449635 903474474 993153074 554385282 887291644 272672806 991439925 865988477 881747256 129301201 235346831 85210026 719285063 154510438 738460990 696020690 745826482 53868434 842230459 744264345 841208837 571773494 971368208 429661612 671686246 346656359 997345760 803486831 994984305 426819612 473567276 696630672 849092657 485491484 907135295 69054507 462495951 914960388 916947746 125709529 922034403 319807639 783414091 391837902 843395155 594246799 735502793 838626467 893415709 103481953 978024624 30688622 30971363 330635716 626652960 702092313 927403805 373803835 515657027 710703589 856419318 299211847 448577781 582704925 868851453 624103686 835013785 394995973 678371926 779658755 956978424 929982679 964464775 168498260 813417292 591888617 700140279 33680124 606046482 784982186 786429167 944065437 967064015 760713076 775933590 856356758 866834467 318411318 983188527 183924588 226810679 306994424 819787126 793911201 844934370 745482409 840760718 852044132 917233490 459872751 527713905 371118822 983605008 67914978 919957174 463007629 967377749 283363218 448513263 142190583 422551455 603797931 664496064 218920830 957802800 43883508 514977487 50013144 266009616 416986217 829317286 751237025 848683950 818460294 977680989 731719448 980924790 403785893 492549770 640807800 749254474 340542309 688034511 200500153 744682774 832843068 941328795 849954717 967978403 440699550 515766545 624412255 827519162 490311473 758852630 718412708 747282141 728853611 767937490 643714225 982523076 624228248 798593079 666662993 996434747 966833895 984268201 859582184 998469602 368204442 456996065 507386759 957912728 696594674 759752478 33803290 303184102 535664235 833044981 705821635 936086109 77961271 647032693 541400791 672077108 674744156 743912860 753463496 886510824 885388628 952706996 537540235 915332092 181768076 650907820 376070861 689119085 86669516 495182854 842047264 842826106 930831591 995275710 504499526 820907881 197173293 276178966 692209034 781009625 15162538 842136835 854848974 970467976 586142931 792636387 195822366 654681771 108958729 949703547 298903885 787261508 888802370 956708585 518164872 721132698 636727911 960529455 137180944 229891935 795658941 831064983 462621461 618996151 964442769 978140324 426779909 678897924 757961244 889142491 706770316 972591503 124640942 408117129 632431571 990646645 582749048 904720859 288719079 849982619 703017106 994491181 441378192 664926553 863173744 879858290 350084358 993508255 460238550 549943268 623900512 874751027 862541079 869253487 969132435 970271877 845464573 866092539 559657266 785418206 371350154 387011923 880308638 996959485 78116395 630451414 192329408 445235339 868262913 954640301 168031110 654927634 881454738 937597325 481827660 609218514 888954819 997675035 148630965 736756385 790587306 915843423 597467866 816001149 779855588 970875134 120982792 205263771 617334176 947947159 833947406 959251751 717507120 819238141 686430288 851501919 793290293 936376416 671073407 943404475 576262115 678900032 610481756 767813235 73336064 717607856 649444867 803521288 31338772 330755519 272076698 953632679 856485036 856659079 623970777 705654115 126638006 443674132 95815316 741407740 92788469 888793143 35488808 128492459 813957561 904012690 589155702 782154842 72411947 362989515 496077634 659651368 149194858 313000405 648802169 721700972 312117683 584966700 583658940 660021010 177458267 892406759 332733012 645081660 448277483 510638926 931647921 969775441 487718817 867640246 421657317 607738978 96730257 439956974 269742294 864063591 848227332 885842585 724623510 952775726 645557004 765986530 680607128 842538741 405982379 568022888 122805128 656958257 478712848 626648925 480168160 713179517 422998001 862781427 185761470 821687251 895977528 978375493 910726319 943641817 430738252 791526777 243331700 596211967 191661787 495373434 372523130 767955161 565350570 882116795 910382119 991798478 655116371 930230265 157952097 402497038 845230138 881182909 198556836 501978719 660869558 897272931 303771960 941414257 715624834 769226598 355751427 545441794 467121638 548877145 942986683 971053064 819686496 853620198 950205863 971096128 111911001 485684928 532206873 716758567 315529756 617636495 79411374 785836574 436476691 800000808 975145780 988545687 689891476 820591874 885344007 885397684 698448435 933980698 451435949 687019122 808275268 971514256 343625202 614560580 551117694 948798558 34113407 497750581 716853588 761462810 631243825 787727412 374428503 895833799 778891415 928307978 232563943 336440041 653480448 803164255 405785833 776291499 197116516 268464965 777087741 778245157 957187604 962116374 136921620 500968564 310609097 827433072 140358923 927666645 467370392 728897889 660464469 816697053 432661519 969167654 16683830 91956380 893148878 933978203 785717396 839248118 450619820 860885479 505752546 879459124 758070289 871887615 557321711 760444374 822078345 887208487 17789158 682274542 811735991 830798285 324405939 701951983 570282751 785041863 566291713 734658829 163172983 464847686 64132012 373863984 230170806 773014344 418864137 646907533 176227888 459397813 743756860 972334280 583864112 596239331 964441213 978519934 952799292 981233336 346452826 625394109 633841950 957659771 80468401 904828954 770195323 901904395 439318546 817685800 228846243 338268486 756016702 880883849 203448976 546213818 394626266 555613792 359609918 691949046 639381560 761338914 314677886 492518638 228604079 451743811 997499083 997500616 791712929 905340604 362381764 464382175 282501419 289862187 496678180 897347524 770563102 957342849 725857862 838494811 242436744 902831814 269284578 359070163 159304934 249346396 194105230 916423414 451251156 630449060 862154448 968552058 775977824 905283072 443529924 514995898 936657837 983995385 296388970 867462416 572053345 624229556 87957155 239742414 181788588 896712898 679400176 808180157 819344975 912204889 112730222 933169211 223339374 516177981 229552878 526110659 197678854 225292857 154614800 891412023 763997258 926999762 21269376 167942881 738119662 886234877 20418222 113616636 187296801 621903357 546492003 959162832 205485425 366205795 322944886 612179865 659252835 697011643 497880787 762664823 759111246 964405924 611778273 825277571 782482027 936954408 925682192 948526530 419360480 437937972 191282643 713565381 718872691 871627399 189707618 826583495 614762163 657561187 734722123 904736547 309555622 720234750 14510160 242871703 665486764 872306092 2167981 781946468 958879299 984729517 328183985 388754040 10313019 268053870 477273557 532399432 543095532 641181519 11375006 669219353 569672279 735290391 395497891 745353349 114095721 720255878 601935001 913082720 115999697 267811882 813140238 831165906 840084618 856544689 621861149 801923080 970937711 993316795 848718159 849197397 316396989 952911604 468142508 759545817 984839673 984932540 393819481 875069313 688067685 770452474 611490735 791303044 584623189 772671215 793490142 997083211 92879301 402637964 265090613 929984206 932734355 977768044 385222192 451855474 748439721 758874508 694405701 737018018 967605315 972955307 665792689 940922023 803878749 922801480 829992707 948505685 247336223 728265305 530681878 775138125 959629235 995703293 145680044 953979928 48335652 450380344 824515148 924853057 180097855 950335770 173322555 374930421 926220386 958507376 409633194 984427348 929680201 935383825 212533116 217869069 88114564 591262376 624888291 972045296 213475124 851911781 868207530 944003101 160153754 903870587 785138878 831838564 446849138 725046382 807905998 893212394 715849805 891173189 464900436 819023712 221907546 555248224 857845605 869908970 862869250 992918904 344564129 654641359 761507073 809836407 981507042 998273988 717746792 796396957 837903398 914075675 550797220 929434715 79210940 422881274 606042226 758399682 975716494 994487734 588159532 806297010 654200054 868583389 782158483 948048859 446076385 543349779 149373319 995420682 464375238 659686382 137580879 246587102 694703138 919588826 63284092 200349189 69239203 251901208 926522817 972904840 738465504 903196754 783874044 950744007 635036412 754964465 655914195 873807562 691631752 738829633 498027972 682017206 766477509 944963883 457165569 895742465 681158423 869822118 459903866 996463323 107494503 850074860 874557363 988174575 299657984 747640460 537142568 721031460 57680998 90010558 670191361 840617022 939909267 942095320 623184368 647447873 283111760 942205977 379252756 824315082 61392129 597398839 33692599 68235691 928024229 942931104 265377594 683964043 752180713 754648042 13183762 103660381 871406674 897469328 860173841 955470826 335031098 451167006 849398467 939520528 659851340 819929766 125269399 233293157 318410467 938267322 124145776 164303948 85924184 760899077 684304588 915418972 661027583 733691549 964531108 966758470 47082261 937057274 176211457 880039290 820546810 821641965 723162780 804168902 249987138 659945113 996412663 997402018 997642269 998274845 549827532 974860646 238963324 875912091 711147398 893890011 736841081 841044168 601569927 837915347 647726811 761987422 563934990 725882596 486118581 823103967 168493441 382409826 58451364 918776913 29823229 711408723 627808651 761003859 633412136 984117031 748645019 868431681 751727292 966663746 916490800 983305281 15123484 733517602 417190704 621008191 961170004 995636097 493592250 570579661 736826122 840550392 467079204 665762841 672060200 822948276 355393023 881113856 544291091 718295100 146113826 274548902 52404337 254271360 234991633 370268078 72920214 781075225 541416341 941112611 81979570 937835319 702991144 939651997 94919511 130713404 248588033 631626266 428283934 438041678 387441154 492135325 515027990 641284835 759587367 767993074 213628480 914177550 800398711 986003938 374696046 903176899 514211940 924331041 197601355 680478977 65710176 450356890 699921723 876834201 531788369 975913135 840057967 961228713 723512737 854309581 717505348 990160981 101766238 583461286 612001133 829222861 62055780 656575726 942842142 977772664 324342955 399779389 710234613 937533618 944596869 983498901 212298888 295006754 381084910 930099289 767267295 778739797 791867631 932601630 841880782 842286369 613501669 924563483 756443342 864721559 798276348 997804134 256103923 776527934 714559744 909375320 905568789 905615233 204856335 731742977 521298424 914378217 467789790 834531877 364366569 552002031 729468333 805761767 633530965 899381129 489128799 740930298 875144623 881806391 896515092 918185761 450501536 722150979 106122059 835022867 56190135 593964172 272377059 829865527 262538279 884317293 438208139 669880184 86078527 145919548 848740111 927196009 902400941 978835108 134008945 700929665 178783585 790223916 563212045 846417626 718474129 918761606 210134467 911006082 759523398 935564114 417633337 485172423 217926960 721453799 210235661 832381037 547097107 697914054 962780912 996848935 277279142 620732488 29439845 594634266 614867656 813154690 931348837 939472492 196652282 938131265 226889807 339079138 761013175 958919899 795909461 953154279 466076482 976936399 730662835 927428202 608006323 698395816 210783456 784972530 34100115 377383118 696969257 727861056 234511791 496517434 23525467 991342597 450648680 521592705 315126396 979748236 37400109 515527552 634089730 690303211 656927647 941401126 955912850 999066861 980111441 980951814 690589111 864913605 103356495 458286630 884966734 996410505 373919199 555515448 847943885 968519283 564434266 939879993 963681362 968796086 359665752 474879299 511917332 842161227 53132486 342075763 323868637 556883532 506772004 729908593 585699704 635570554 4338296 939733503 491768556 837449553 252130521 557085403 78154377 707059434 397940405 464982374 6965961 644341218 237945200 367201704 724650134 786378169 732457367 902923164 909409203 989517618 447211663 572680814 974244898 985285774 624170127 812026870 426863916 601426216 601856611 853545233 636557728 662044718 230641298 389210395 421422151 589651655 625484188 895260270 205635723 281506901 535444530 748960074 171464648 410286901 611038834 791749337 442306420 970937530 717720557 728943646 55079388 403941885 151758371 797207676 658171974 934674923 810976636 987913602 342725139 594400548 480383545 703976007 588064890 691388657 344783986 754221607 96527966 857267820 150482090 992588823 203085478 849167162 641784574 652144069 327704628 921513540 718211021 812521630 727606931 791266319 100220940 989253476 493508334 618540080 975838892 981850655 538476342 804043352 165381898 566221065 397668060 836721175 926863134 995595665 542679821 617635159 480553511 535503148 792433976 921275867 640848122 836707968 65990136 719186334 307192149 925053052 780439780 984886528 687051799 865454867 843263195 915813154 898833154 959135594 542676446 802651610 790653453 852698232 94422970 745596147 619665613 723217554 339296870 969082134 810365523 846498935 689799899 976853100 658934464 787620466 294581503 809245986 121862271 954333424 178203126 807846958 362656227 460124381 692518419 816279305 312446614 643255244 161918792 829721294 716929340 798024833 86127597 474700396 711185854 861867828 582743658 651864806 542569676 834831704 34772342 714223345 476957381 930382494 242709700 872109221 695005962 818260165 343735772 937816027 837240929 974473094 464844455 610870698 701047821 983967655 261502053 525400319 815479100 928099585 448337512 815501590 867428343 958813429 790254093 986956424 732062727 981755296 276023583 457770619 651687310 978681203 452282338 602267318 536035609 935571188 636878925 795655198 977519103 989314757 811956741 823745600 440140625 976625359 568553416 975319268 494349543 834260687 256489528 614206649 537890723 960933741 285865528 323860999 455480762 796683485 712461543 967321672 233216697 978026078 859088428 910674533 577457058 982037637 283276981 318287939 523185124 763080658 224681347 438320575 516465244 846491911 496671958 997424338 561701030 694894551 420196324 509295712 59751095 359259064 962919470 967649204 935253718 982561582 677041086 697649373 678395235 847822153 288655518 337461952 588182379 955448997 399844217 838983312 929791756 980526988 758896013 838740556 806655225 961767814 332996862 776739863 695934937 871652527 596095169 683895094 292377313 796373792 683674229 830762835 162644649 210285314 411657922 847398231 233948576 835387787 721276112 814720847 669360018 693841084 754732792 933795044 758128201 893993372 72664800 686634887 341302772 474303948 113409386 400265891 360786463 501348356 15751400 171518926 789334601 835142726 931186477 969550826 28913966 647736828 943029621 957486269 163679663 495012857 962295157 997273386 379554854 966835485 207665615 682258204 404567203 556889443 834996128 949093455 29593161 465369833 653308956 881795713 121379839 955990212 898537413 943721575 446925895 982734986 804816435 908045059 872186831 888946749 515093961 593064790 668250615 962688391 743234361 775888682 309257283 767087195 935929513 970922816 362917513 702070825 855135148 987902605 658326744 986062134 414184752 965728179 480255117 913249972 507560030 788287217 801905638 909693406 579064819 932883216 796980021 958414401 474565627 638731427 863007016 902191047 109657669 762320282 272932910 938063458 201817091 521901114 448014677 531559156 267133911 444184232 236750296 692041549 342443187 458810112 878274054 992707703 649620351 931145301 902844106 918991541 373970511 421598971 335521008 978459271 932021866 958754886 705156801 784947783 437184452 513227027 927193327 978181344 486206556 768919721 494147640 830252200 292361991 867838952 170360476 776866548 799072097 955855656 975005938 997374865 314417248 739185024 150267338 467189153 650899542 704854188 586991046 829336643 905388970 938385933 241398819 591883634 800780007 874369192 300440953 651109201 749354191 866018949 943925875 998038702 732215102 806148994 86189570 913610484 500131468 587257292 964195078 970641667 802158856 887020690 458859815 584074277 692416680 840775347 552349475 823006088 984716735 990831547 956247873 969756022 273668027 504349244 701639509 867785824 328172947 556849358 888887389 943991971 764446001 813645904 47711402 214077296 857066975 992696218 475171866 521858760 228735535 904265429 44493676 642128913 190023813 631320060 546201992 678103517 718102716 729973857 923435278 945981675 665706870 912304165 870719182 990342421 250726475 600681857 212437951 882606709 449458032 515697374 298429984 433604442 147407615 413547331 293031431 809853115 937210550 949510095 9725881 611828542 933717853 954400190 146953808 518229439 662504124 692206333 559550622 689409763 278181179 837187127 963907319 970185787 610024721 660869972 167134176 865919414 93918304 942126506 44731355 183427034 44485765 841270491 345315678 729590522 47560254 533135184 690966392 766278371 400316862 986516710 525339750 965345355 693805175 727424447 169920775 706718200 899588518 916195753 682686627 840587333 538734960 815866581 380004389 845871524 441696823 637981041 970954383 984313374 130208709 322295032 275668616 653513713 579490850 883474320 410811614 730250060 615425976 940178201 193950492 611826035 667689444 709755801 736721599 911424569 546244855 771104926 22537238 851841866 961779443 970434154 433396565 435276913 151715458 691415569 910601455 952375154 837581947 855548970 961388607 980179497 790050004 882452791 775080445 955896097 473488263 959784042 261915083 663783168 143507347 649516224 821309349 912422971 973396199 974680392 627493336 781796995 414936972 750943012 125527693 252079300 8535365 846445627 987031328 991776549 643474829 776994744 233362174 618329230 81956954 295457764 588891511 968325758 830049506 981939966 352659816 904385146 385823938 523010514 369502015 477088768 481010714 872735378 98920606 467214527 835769623 981288204 433531420 503238434 631394138 823267497 628548051 715779053 777810646 805808883 293675394 623294863 486784044 721413596 931592282 933277958 300312490 899379135 250633662 265408734 682418409 733730293 886228711 928090391 848224615 853310168 473438638 678939757 317312643 678743580 998278250 999095031 968313801 982717182 21391813 693180127 307355399 797837194 823791927 983476074 860299171 947954789 726162596 954984085 68016052 906391464 535498011 807653888 70186956 667519705 780208902 978211481 579042980 859650927 594794916 678970297 752490990 801130765 550939361 996551725 369113871 591747317 731012439 898785170 362556153 395565567 622306360 905721800 505461686 859242725 657515474 695793540 791792265 880914600 903418919 970948268 668198070 743184938 146469764 623533898 719864197 928407340 16890558 388534573 503772810 747060636 418453377 519591042 441416808 963534509 608862516 775667977 119402917 952678772 790757584 975613803 181772618 316891619 702794121 960080725 755559232 774406991 587531887 840996796 425989058 912615416 424326628 623544285 758050886 867648350 170387834 823832437 149715224 871796390 493835479 920475352 59834837 514109397 560313858 959355367 486284191 882191692 458039424 655723741 614075427 649831240 123133511 286362628 928707054 960061835 728235687 762914351 288839269 565486572 386880867 870206432 137157657 766971900 91242119 390167640 832463027 926543877 627014924 949672837 487065005 947329335 307594852 647629768 415035220 478019075 170790449 696723674 970561910 997819434 665757882 856654356 381718229 708369484 597422310 835233351 657659989 918610494 384199165 601166211 992930307 994069680 855512015 981798908 6316271 452972538 54332605 557048676 670885556 681789620 959525436 962061554 886147045 948014726 560609329 759700661 337408118 564530259 751795858 980464832 41362406 855964962 514310131 514438598 385305474 995100391 289470419 475068854 883897685 957670853 750689067 967751841 135531278 681093470 235349568 818852268 330391718 783784189 876826677 922510960 927720811 951011813 209783636 326351172 689050645 779687776 859821559 865425412 556625129 719503527 456041604 784357521 527220011 678300894 786557385 924297037 964399262 977987769 497048969 780490109 92225358 932971349 68523023 654696949 736804156 876411524 700137101 889433707 682287919 936908484 733406722 830665411 1566047 202828085 986437564 993265236 298279378 502802524 679097094 714395945 887035195 929046171 985699472 996274276 999164257 999321578 907154934 920966167 451401526 465991855 280788448 710963324 833038741 983453171 249068856 992216782 2016817 216548121 721664401 995227273 128623186 401870934 190852454 941204043 729872240 753361459 759168183 850969183 69174492 112142495 970452109 978026093 250890597 465086355 844053646 992202264 520255706 871049941 279142523 798513985 372995627 969733325 460275620 692999695 259236947 548142429 970432566 985512221 586491319 659971529 644914684 912089477 464386867 704280831 15866641 678456960 103346707 327467568 808545927 859261815 594256114 936433339 935104362 991643232 612427931 781396396 772748314 820844151 543556213 664659342 84444949 700853839 657301313 992718744 198805926 726707929 983968442 989631200 208999209 447857522 890372751 989194658 7813129 523214717 448862747 479984703 408664641 549455669 894221474 938524661 18668442 696804652 670445646 978363828 375978683 517526258 221524951 949739464 706183986 948797575 26400873 165045231 57788377 626951623 614369452 922519363 43119076 327809281 655890626 901771562 568092463 609952033 140068851 263307444 855768666 915308757 25999875 997443073 26814411 140420220 373691027 971688478 393345495 587549148 329780840 976370175 588461921 853298022 891009171 917277350 85671231 648551721 78387142 782762809 850462067 866840270 590237632 674346278 460401417 872812569 504699249 812833288 897547717 913175582 370551188 785116912 709041674 712908225 819818512 994467592 355184329 803626286 602331755 716401953 983215258 987233095 765552219 946062003 377802319 986976350 455193425 772085518 591324265 977059199 641184863 657154602 956553966 973443262 805391970 926797141 730358589 838104488 18058272 796000648 287255283 563271214 186705885 898789003 558420917 749735973 817201520 933189883 821969492 944443672 416237706 564869041 632128931 861671383 306384967 415389872 314385283 776897033 996685927 998180708 663949306 748538369 437793262 477999516 190358632 253968143 974814427 983913246 426602565 743388601 512390705 970526032 575340072 593303646 621039058 623498762 825055892 865219030 472754711 515697157 340421913 877783621 232353827 967348562 390272336 938741746 236611770 472816048 170050736 443756155 465607594 520242204 508874364 804700360 279444412 363369141 207638408 425243806 211156102 611201645 693728383 985569062 239995953 775144836 359884786 979542413 601694346 916616172 963416796 981044486 87213805 640288947 298635386 525245108 263187579 634774347 551196020 660667198 598475002 954882337 595099879 982246310 548100487 663668707 682683900 873667081 143505323 203820939 67428679 824791751 627663378 856545425 700545484 701954546 245677473 247343932 930377812 948536615 394945194 747204772 522103055 786092922 311749286 474522951 718655009 988601667 8791292 96478067 425890519 644774046 912796136 933891161 65669437 986617567 295611613 414498872 446520012 511687163 444552764 684049712 879060972 977644610 632809080 815348892 745013114 787188310 816346688 906214816 172231856 451287743 774613929 806822162 245780603 854599251 23070712 482737806 931758734 950319847 23974506 63451982 943711417 961926660 368245511 865162329 382387592 958524300 19846816 766689062 465983742 499505306 27986087 618249391 839688148 938100323 95124532 489825588 219275314 478491774 651767880 804550180 333212644 488894768 167253917 754191717 327973692 927567511 589899165 613636352 632808343 733936357 647958232 797436119 486580215 686402213 91811020 578329431 729141246 859673067 17744347 896298654 170807081 853850668 245093611 883468975 154071756 195551357 554902097 873195762 128206263 502551001 169147801 307863843 681336703 995811259 204872459 612267932 558790069 880796359 622028092 723344299 950297562 990569374 300607939 813779544 58976231 441563917 279953263 992299755 669859503 838455408 23591515 164735149 325856130 836304262 369357936 428740207 149821803 503391096 42203982 462483569 786863253 889387552 511354076 547398195 666321412 997000277 317747115 949779979 920312148 959197842 637220602 735072633 287388073 558129655 128998430 491283188 292838659 987789422 392489261 597350827 459239908 840179322 353795660 514463989 603716116 690910601 961532873 986159103 494990137 745222185 954611574 991289694 484291153 990303323 535019512 669809489 743276556 759551242 413170395 754776545 729933895 962555974 287316033 353133813 273081668 851292117 861567888 994694026 882539307 988377892 619819460 789652256 5137787 556476128 375679636 395231936 230347461 845005437 940232091 974945908 917459690 956345210 53078534 219754547 695869333 988769838 194572242 490355508 128250094 777071066 876331156 932543171 152776111 858618718 86024573 894059994 277167755 970984667 185750976 485551612 768277588 873938187 776707074 903513792 989070842 996227875 547847342 868923176 284978458 482599350 348088259 380688351 191037444 418980311 158691152 669724381 860108484 925885483 282712175 443291557 897240557 985227358 616991 775562930 326654046 963542122 931300539 953378434 965207915 979012061 667429043 858349685 308529834 535987867 963242638 977563359 971548800 984215387 699436118 996731130 612804019 725138365 861791080 944042349 458412329 721660424 932841099 977996340 823359328 945734414 72352231 517347848 277619341 399951514 599087740 657966137 425925085 669090431 172200366 295683523 373715444 647252400 996113575 996143472 184578641 886443154 12840052 399083877 7903775 933568560 541042665 549677724 412811772 690556961 480324739 706182274 635217481 929934486 570769744 921586707 111697556 496978174 380088805 703083845 275581946 712063527 406955078 968687088 791110934 819674117 477141651 918944138 323330603 541235038 908462043 985850467 141745654 312973386 278658953 648189651 690086154 695578949 542294959 841502897 928630265 995754448 701638691 743887060 210026083 988579948 440361023 524021416 717654567 767128862 604764185 856281465 506425615 509004544 92010738 366852822 402744441 840625522 777085608 901700327 272276960 363411201 664544842 946028874 893305989 940367419 899343208 907082891 79999526 537972958 146060071 911399801 206315168 403969844 744658088 896674863 992986316 996357354 247573817 855755841 56022050 598386547 413176851 842403498 862185815 937199138 660183148 711931337 520448075 921699181 685346089 918117299 402535195 766457402 67506522 291345823 227506463 658720185 146968276 186851431 53246919 228184627 22931351 404322242 563176990 703662149 762857242 921777053 32249783 104781172 710341753 819596983 697060040 792307242 110579419 415090890 147223772 228325154 564283407 855688915 180568465 899842080 128149676 714735855 753817378 845740100 662123609 868895345 250942576 499493632 336442 25451156 845401781 924780497 476351261 684459028 486284328 777646383 360675569 832825053 524732590 671062008 129635779 893287129 683459040 812503835 35234052 124286973 826271850 906004252 103700489 984127837 410996145 580265420 974367973 987029245 707802594 984162009 940178649 951091758 832750915 854628255 396333328 437419234 597820370 724534595 679539394 918434695 319844833 399402454 869230817 942636970 786666492 985567143 372774406 580707273 348402951 819955211 333581549 606067022 76388309 623019178 122562281 885432811 572419979 775284774 869400486 951188461 543557417 622326190 386067603 481488970 339566165 650619733 584368813 974536522 967330277 997750965 680633671 681036353 163818180 551591197 712355432 945137907 733953227 949939936 792385354 897394812 935172829 994088826 390520487 710162509 809000593 921630492 828551053 856250083 252604693 610620189 666100658 902218938 871510354 939110837 209157216 939609539 755352319 832306362 220005065 727994645 348793620 444108695 231999491 696575576 704603971 892186686 777855410 907314396 364787962 505202480 792448362 801833930 422730597 756003954 631085925 785324357 638910615 876487643 690721633 800594887 860333606 985000765 396336218 508001648 47694466 67187507 845215379 892134602 328065604 807529505 558337927 711118797 246427750 689691860 899103650 915132727 281535789 833997055 568934905 591231289 58301230 126778351 491822497 667557495 353766989 608690941 440544019 850552101 435891191 826144575 144012869 318264481 442712885 742769755 196749984 482075210 853316846 857571353 3744807 439523576 206670103 304919669 414338640 553776784 852743992 864768735 605672236 613075028 980930892 989350700 486159512 826136857 707779480 718496690 623244906 949136444 634032920 853753716 931664739 981142487 992001057 997375763 525342813 931165598 425383883 625220767 888585336 956454840 898863214 950019384 950504878 994355846 508647837 878994191 794744709 898302738 137158915 805308969 913499064 981993009 71164120 687953524 894216830 914324775 631997507 763455091 250163920 698148235 128648503 169955483 786793857 926277317 686601971 972478858 491213262 899266216 605837516 620855196 501519582 958507333 6020030 221619106 278631009 508531156 380679437 567404000 942009787 995450174 377419251 625829267 997527069 998466395 680864057 896889254 139502422 279146324 22241371 393294171 308167389 330222397 488241890 827916833 415369690 790345112 193590103 486194983 215684815 665267823 258840284 741424747 781749564 909624370 222124199 871888397 411022359 860075961 521135568 958306077 827666753 951060809 961296040 967111725 394922306 523371530 723195219 993901317 585409458 621827170 514873773 696063217 529754129 669259501 664959929 764624953 884023012 987105038 34170690 722667852 350164435 502151114 330953522 543080217 593752285 807027113 149636536 336513183 186579545 198642438 497339116 860102424 462767200 998893780 884280496 927690500 136631279 197357904 766858763 924946930 775950813 941818624 561272558 939203059 85444429 779689743 712209507 738287770 274987017 278390390 635653420 652796322 226968871 871554377 970362671 977982883 766825819 853646224 281228273 595162424 668545964 907033653 838400745 937448171 506140087 604944439 211663432 702817211 102130511 567701409 175316578 785308563 96518686 150979123 153056452 642978218 29311278 525088230 569437109 586160922 620662945 886180780 395367429 754855828 322840405 856756128 810567515 816151216 991195964 998138587 296808108 871213995 374170249 539281218 164698460 943556028 192251956 647498532 220313957 548994682 571802925 620506599 803030653 945081112 572756764 629996119 438145762 693698896 511343738 581187414 748331212 893896615 40872949 216018013 273322184 973028864 399466812 456667619 371935467 943704793 925084462 948631556 559472360 847384604 623522528 710198283 402618329 689053467 122040276 132324355 648129015 981062653 491926118 992350866 412501089 472733847 625591166 760799330 804665417 842199156 334498001 709492964 611801864 729019199 765234856 973521779 143884180 391615818 146874590 554353921 336269544 715380024 848805142 909756715 234238231 899652385 100334729 844349584 510139885 994141196 394744725 488504092 1468245 971749931 470851277 482767523 166994143 488020136 598450987 979989744 603788202 959273983 737274646 831456519 286942483 734153990 336821424 836825385 880696436 958551293 642224547 642288119 943733259 972643836 46746370 321492506 482873395 591525591 937045836 962253841 19267150 494380512 202260866 571021747 217669018 499045885 146130203 283640430 85146464 288208621 230172627 448166028 986456043 990350146 808540561 904346928 833982543 929495591 154672106 799522350 132637204 641338936 758662537 801652389 435535463 972335792 571504534 816792459 35481054 162987175 613294959 976165945 161655625 486420364 971563585 995129754 107734482 580912982 924512622 980632881 311421181 363594379 937440184 997804613 733933940 930688547 916781187 993323493 512971040 898237773 520844788 965941600 718825313 762041941 560989402 753934314 141292827 649263175 433883740 488032869 942452229 982387184 407030955 918411214 161727021 502067210 468084980 850817232 499187238 685363017 141407741 252522505 816355058 856340437 563651101 735875474 336993373 800565016 640966134 735866247 338816386 492772476 504375346 913632370 724698418 828429279 728995278 907103221 235453570 681564718 656363987 849470920 651657465 791189961 377782675 636759826 796707688 885299220 330561528 909275676 791099698 899924063 941545034 986445201 265577101 801991951 727495592 836966966 925694319 991762672 696490764 736623579 410742239 947828218 37956873 466230650 461567839 609269040 70309846 369749510 154461381 878863510 558863039 574280235 330478630 962426084 958588899 988547548 799716596 929282496 571742188 574374907 850007828 943418061 79826623 208638322 655487800 851159246 774370938 887585293 967626982 996882764 860662574 980686705 18787699 133653198 627620103 758880103 900851438 948765574 689436383 857996242 284906187 889673329 216725483 285736339 152630562 305877211 512950936 981739328 218255882 371941240 644029039 984292169 250154256 271141438 37592927 447651827 963226546 984382783 366188083 806249239 786642321 885270428 869877071 975653283 338958698 949521146 300128787 970328534 262868648 937359185 194625775 603700698 913863620 967908527 416020690 911079282 981068005 985185581 75849530 320457258 315164805 328381146 121307616 168658925 198485228 899422067 959983151 995049408 394954290 788798571 575925031 718767489 383438724 434913287 343161656 939185457 89725402 152301767 203809155 445401839 816618129 854982653 951452863 964672224 887374031 953822283 243804195 621963645 906245685 958225625 143192846 377808930 13373106 348245329 514110081 575137131 818398834 821834668 137877882 539047338 689759785 745934182 779876087 897168253 872097311 928109140 949126800 999069364 897594159 970442533 303727377 686583553 95206983 955454871 292640493 687136032 146732242 641100061 368475099 809642635 984864772 995594337 569438687 624017893 477033484 593356585 264785857 390410064 223380651 994616634 620744992 976648967 925062501 955634756 828895373 918521875 475103544 492046096 958482321 983953028 376103213 713249854 502006936 548129626 855587322 957358300 670513127 694112716 502515222 948235371 697326491 720547249 715949455 805056698 209323610 318680979 590666430 683677560 126517023 532340162 168758404 355216801 231011666 494653055 944158120 949640507 218090783 522055011 372536587 823741306 53814625 131388725 272003964 976714938 240303250 827365132 390374309 887080438 880821852 924062521 69590344 466311852 406187806 565992554 886828918 950425767 946077088 964741179 726977902 799431476 344597472 859337590 691062624 862555664 935136248 992374493 112297862 281248632 375426155 987749943 230085099 905416395 285854222 818822968 963444824 997386135 598809179 962440687 502817298 916465388 945061434 979541573 504377637 666777074 764187509 797648512 381245208 958215878 120472924 838474446 376343117 789715086 219538375 665873428 636211642 737062629 71310614 508969923 16017841 598684317 322681665 950174989 419929232 744798217 256610617 298710962 851488518 862493490 608064471 705827780 847208866 857844801 829513129 982050872 384284895 485624800 142099401 469657870 278942637 844054485 415323436 702762829 232079446 475390001 349610510 410117392 376895706 496593059 543623522 829615921 287905471 446981076 823442352 914950686 816089304 842972816 361858287 766748315 800226705 946373017 312636907 413807195 226101980 484900718 947314910 990180772 869446278 906613772 596732318 703317365 664159003 775642796 541820046 850123196 488464212 829923775 882233562 998113940 221350265 405814216 630956273 656851192 298007572 910529721 390667010 556468146 829519194 846858122 10776297 332954211 528750897 857422206 65551099 302844119 867104664 985552565 373609332 962325263 711075072 980484949 561499170 877467332 247337492 817384132 549356045 629836265 155318495 473092436 619370466 843374653 420127445 700683648 116299113 192217360 51630634 734154109 112638359 564955858 943476517 988407313 407468009 655963268 976085906 981479839 394096400 753757421 100196534 560310078 358503759 871902490 504414475 593574499 707235829 773605469 457791425 622555219 131053367 148203656 517463374 837926439 438678472 958246667 316795260 331855408 317202371 324498768 114874083 358316973 404963766 432042186 434730474 927008506 321783011 535125030 983045181 996248822 192864176 248632424 201852461 456537973 459892640 815984456 893667893 938560672 674187163 770889439 921615609 959106629 278455018 560043641 649929000 926865813 153583357 297177736 540904874 569261154 178337472 836276321 759545960 898753748 341957429 619229519 503096266 523028687 894905407 996016956 698470026 834984878 950187723 998611487 615731051 814269744 321973220 527244332 241849085 605806002 168460737 675277361 415355711 696656422 85460217 209276093 660608376 989516355 561826152 794133832 997727873 998673631 606977611 943957774 498297360 969902018 736786146 995888853 271710909 286900874 451710840 930590844 709241465 790398265 588419592 960912831 326293447 634660210 671096535 887974012 470191420 676255039 987310228 996662153 488444316 596100385 182494500 745668464 303275719 624768450 796241886 887857641 554036918 838720134 91660332 487051580 975868855 992462516 882069087 958456872 433864825 940301010 736100717 829735367 804531985 817706123 812084828 830542716 392142287 686704033 854757009 895567159 20130611 473545051 693977377 758480270 103220816 826897354 549753965 722226351 662943429 743514817 329533962 632384016 649588502 900846103 884770624 981724687 499227794 650973702 681682459 920770602 41848316 444477675 591341793 775168663 254485918 353968192 505100488 507607103 528546546 538655810 173918373 713338225 601938830 670088453 640322305 954199810 665520221 950450584 81622744 873416062 720795663 805700342 459409975 706734848 180743314 537723674 446783331 761116171 265676242 485695560 364813240 564929331 409567116 438724597 29857137 752783858 663456869 733829427 91703265 635665226 558560362 988807199 986190066 988866175 175128876 752545360 583280114 979106318 5525616 907411397 830037636 854974113 269383215 555389653 725683997 876842838 732816307 986042631 109540818 909589386 174632524 230271610 136147490 560302642 150141013 667371386 576388481 726354673 416458213 620112638 397487485 999265951 189421848 960529130 549788314 657358338 648691448 924912905 546558160 987125224 754703 580486445 388966689 872150843 647379111 994911148 986216865 987885889 236735013 637135367 881758640 996502810 832578284 924090423 213632682 784350582 490198521 735977076 71199591 561590616 595342427 795535300 479045415 621549583 577899462 883203093 461852336 911925289 538836012 684957168 286474745 904421241 552259545 781856628 502800584 929619613 612715719 899638442 602514671 792030735 105752958 571128052 588485610 863324897 252635071 595388059 438158116 854570385 516891859 950742707 397656185 428039099 681072016 724479143 58693376 153077060 513468089 664706507 837953453 996027501 697450959 754279714 34540086 504523595 142512391 894202005 778490342 886308178 400196249 531304175 198234071 311619955 823546260 946976272 129373041 989248374 366033541 609941723 56005697 98087231 94038856 313953165 850441877 852943483 472204339 918992984 87277747 414765863 230198048 487357230 300631416 440289252 959431965 978740879 950311037 959323362 895177295 934691661 446989990 893125946 266085508 343064170 845180917 877119949 825623795 972597425 933109966 999155865 945399982 980293738 630834065 695333990 97181358 938806213 835983233 970790581 212501207 975360965 161902276 501025487 913576089 985199749 883192327 958168619 880384457 987959454 963899955 989949577 498550273 651071021 287827512 481745608 854690376 917378719 292438008 588049916 184259550 470963188 372287818 578701932 866217019 931907306 976817599 981548619 168591559 257707873 310241570 896180892 16297679 365933163 673315842 973406573 270025806 331480298 741248025 818946605 548142500 880376843 965053281 993439564 673062315 967704406 497203312 638961956 470780734 761966947 112609489 396462700 359986277 894892504 820167815 890067890 155302721 896365553 520545568 849032707 701999581 938171842 386448121 413187294 867989336 972962613 210091893 759897055 994279163 994712857 484306656 940518943 979564485 981607854 746426858 906705103 506919002 519489973 130460721 866467132 246129851 814314518 495728702 911535081 482628252 874402325 213524228 537182161 111759478 914175034 397905146 582704076 28724997 902760486 742730394 980549316 25862960 880766316 191215983 746510805 342591459 475828259 217554328 871882698 425830730 617316354 585501541 949005933 86103281 618725108 894844847 909587925 687216475 845082129 678799595 805406193 997751327 999142707 294610515 844930439 8749318 845371550 390430490 839411293 934193585 963764446 360252481 882830081 901460255 917458283 375590982 878410422 838323371 916310705 852939783 874373592 687934113 849991359 25662715 309480514 280208539 571513225 420753449 627834689 731070087 805850429 749626903 968240471 742424387 957104898 515018215 568030737 1054061 770665976 828110852 846165385 339946531 642814497 516063045 976168772 771110722 829495985 780000855 938749764 24192114 742810678 676580059 834352990 694213813 971289663 193048334 808798115 678547203 922614394 278729762 590068180 475882586 704222761 753458365 781199948 812822305 836162280 887767284 901787391 118877891 530244291 239723189 711123254 792424542 918410998 23615714 522588153 286856174 437104827 303960381 558615349 361415807 581651789 421877502 956326212 975522165 990619491 269700100 468839576 525490093 672317522 694685331 948726287 709581977 985457998 356264904 812354096 360199008 508225308 233204123 280973197 280435 436856612 871254545 922903978 180610859 998230271 538956673 599723407 974889159 991945651 157008546 673087977 94000076 463229768 692648504 835369971 743464516 827222661 236446365 682203906 846816164 848455327 229275781 311298585 603413241 714234305 61222782 901204438 456206883 600771248 496405737 666617782 619182282 623610769 834114990 837436258 840359545 968213705 290172257 503914468 388430767 471596442 189522632 888265029 336127737 751418106 118740076 594035092 342685587 929233134 461048924 657659764 265568489 657917265 188770858 520276593 765586638 771454082 64199015 231454990 582474220 813441972 869333690 982242888 375460296 541414588 163056895 792984797 965204394 977966565 539919372 693521805 918196546 939321116 514065594 609078267 947063157 998754914 63690907 202148592 245559980 768602492 121882476 714908231 209136749 731002465 91260943 607658229 950250492 970982830 151535202 568080343 339558592 366638030 530341194 765966939 753267119 949082108 879301575 883675753 193988163 740458697 108202908 461254370 883673539 935496400 958106206 964171742 625715306 695904581 745248474 882774468 696558892 972173706 54901386 600865037 583300942 930989625 817334649 911232633 544001726 907497299 833010262 943711619 90838230 619507957 803358578 955513253 348351277 465397949 610866501 705914492 741763132 828374261 178223897 316924750 111881262 888189479 283026472 461197327 645716057 921366877 926787852 938666534 627837180 818816745 876486270 979797543 564211755 990168559 851415914 884574416 932681367 960900021 909634926 987329169 510821826 650038318 972260069 987150602 754356776 969514658 571602031 852738624 151617919 550913709 306977094 388773863 242715093 308735066 208741846 890590404 293170741 740806562 679108530 909563472 735499264 761505337 271180829 355619246 409186416 727665503 397717634 867386382 967584723 996477617 163269801 791777415 287103751 772276677 29234663 152474001 517326434 671034929 563951798 802647151 571259742 892984178 460504115 563972878 821909396 956737498 234318845 398348394 91234314 467595501 342899989 415663593 61620464 606502989 956284283 957365221 887726956 983148115 22980090 640791107 805234090 943565588 801316870 937663315 55516186 883781702 330388190 712472162 849823408 966796655 714554819 950961311 630286654 938682677 743619821 856735251 534808515 958652636 664604438 697198815 660721778 765856126 117265088 964628976 129012055 577995415 543762619 594487430 6669776 104716358 226152545 650297826 140397378 631452552 985996370 997989040 385362930 945746079 570921776 968308799 169236036 274798554 9632067 805496664 195144230 448781649 504404399 621242450 78136055 215274805 832148213 953917284 617287870 632925030 72568651 225643335 94750241 838360810 229931406 822977836 668751698 971800899 681198948 775674305 371699929 671973477 85443717 970102056 408957492 442950668 203620472 689705553 840883548 903765549 40819642 237754915 378731668 452434370 166655829 293075696 421826886 708818855 849445561 899473104 280632889 990195640 201793018 733848300 934824835 950988682 4836676 883438081 820324065 910737937 287586652 310110117 645359125 682577079 821165969 886514955 916559106 961249672 488605325 745535517 78406556 316863525 526223226 679964666 975333487 975443572 528597990 644333734 841423748 851197479 624760559 742651401 363734927 600227986 10771144 965652615 133037962 382821500 685573553 823133897 53961030 320650426 397400839 831839751 987231151 996577804 937088324 977028254 64687850 748726963 71705878 798359147 617443127 836366733 466761543 605449737 233598568 784740209 118335786 929999584 951898132 952415762 848423036 997907968 405131357 597896119 811016197 929340481 923731678 953475186 566219795 985899366 872028389 958211887 199261570 599157647 812125301 914388218 556722142 567527400 765548621 949206300 284845134 762564331 152842604 462270047 87666783 362780248 638806439 746402868 508562510 968404690 980819615 984223922 694784361 781177990 61765321 304389647 556891862 762439710 537348067 652081847 518332218 629121912 803721434 953542994 508891557 664075777 416355881 738914082 571741838 978583487 378920942 434247352 189847825 489062912 784035565 986560466 608938370 951734769 81622608 170899313 403753627 602621450 698928748 729541747 130826063 974427970 995636720 999069421 365707223 716675568 792977876 974746851 731180156 732647424 117743055 511635798 541392654 746101464 832839473 898818421 640528548 718410128 163245904 843723674 827131645 980399327 155999588 946178250 190222083 746580650 516140931 602279404 937656247 996433889 643501987 962179946 46895475 204525052 934495528 992618027 796519667 944120571 473302301 651486944 639097324 735011691 482918419 987034319 554455985 779661667 394902410 917523699 638870604 744381993 123411548 184208517 287972609 922263702 817345451 892730128 692566298 776077337 790863410 833365372 472461577 743817895 392032182 985141755 651065807 693907444 801926414 969128776 234234123 846946126 521106853 965989300 384131206 510108886 138706285 923205879 226392717 610801247 866440401 964235630 325258097 739069223 229785938 907488710 645329530 666688697 113043731 874655954 946829 353982164 143732450 457799272 994967212 997972542 300030852 388389430 263529979 971561013 395937427 607849927 90880051 831368188 629474951 974546291 441236448 877200064 307853524 413948653 659040853 686557734 789889308 959297524 490680644 538925051 797041946 876398894 847976213 917933412 642372348 893426459 854322837 922377066 697628260 791742292 672224123 951737053 677530726 704512698 828501699 980300802 130672045 142108259 525428355 792355679 407810159 895437219 714704981 753224875 950922432 987409661 458062144 826337641 805872701 843535895 790610167 854415086 523930620 783123273 404576025 551518270 125106135 538382514 396594918 867860741 77868441 777807340 95598374 613959078 791362745 925765580 439461133 745136175 608068427 848072012 723611430 776017219 554042874 938900474 875938612 899940473 10405222 786863374 91792788 651512878 402306114 976719777 840762398 946811620 192296849 305769827 986772105 988877245 87182084 404588480 939831597 951077261 67684382 921773422 247649152 705083732 123833126 677429860 921656652 967396787 447123292 861915586 450711761 541082618 119791830 492652541 738872615 952252073 763326457 889453073 538147022 954318122 504272561 541841012 674985808 704813312 129593868 453826086 509214791 960873576 772273308 932976712 396710204 441476970 101115232 174867537 629574578 662172705 533098589 567992785 159788213 701868424 49911910 796925052 873655094 983360645 985483961 991421623 562756597 870470563 668626755 776128189 286744672 599038745 387934739 933445030 886149587 975147159 772171824 916055836 136626943 299618024 896881852 955022823 649273779 684942869 948513602 981990427 687054186 963670036 991589736 992624734 950081103 974517647 17652663 814985981 390424262 487248267 539719183 942925969 127728028 943620512 594790051 872315641 117905746 236559490 708615872 856723504 308987995 508916828 405348466 609546491 593358100 693973073 55356850 909185000 917276878 929205893 878291270 973226387 425220148 917479937 471666242 894166413 951682999 973715241 54531767 708000799 518531780 960387161 50299724 556083886 366101896 408349424 906888952 997666560 345770463 497601441 460721979 636653397 859012023 861881140 308508432 899881956 849525215 870417140 798300858 973023588 726174199 745848848 55687791 528394305 30558663 873265346 559313005 871857975 496244324 582745090 367440194 633879260 339349662 599752872 449731475 453780088 86155281 662504384 237686114 806558542 553474951 650635891 558450340 965721602 788225236 873223700 142460200 172875429 747264701 809416158 900079336 935062325 125173323 144028823 388023734 451837116 898424919 919737832 294501495 351971999 512901145 696741410 721848298 939715971 559837772 959963765 78545913 203729414 427390193 537327763 150197595 912720602 752408458 770407220 460760032 629462674 733276501 912122879 391108492 945094912 232133350 877316274 465459325 946496285 860760527 985171781 50237703 949696350 284057555 753604047 518082739 525479633 495528162 981362308 209160899 337482641 295469503 485151373 310506569 473095428 70471783 884219039 692548704 778696714 21243024 716463890 969390579 998526078 47900320 215326734 403323403 661105253 207754904 433193775 615386435 668603434 959845166 972944725 217859301 464081261 428329429 972262905 153209430 310906959 150326671 610164971 202436468 229803105 919270405 972192251 619651526 738707823 3199210 20634731 454078073 786798003 798719391 962579875 487725392 561145919 195225694 756709953 950817530 957831523 756742194 889596303 574835483 830148627 290228369 746161338 466575543 816757306 389213929 938455609 154862411 770044330 921563841 995068644 518644772 708889300 536506407 815483504 947257186 948051758 992605144 997580376 503430799 573248198 475473094 510138815 181295001 256513302 8502950 716390260 185090502 624109426 81514539 902194507 158547510 377275059 916076090 945816326 168033158 635556368 381615410 581363611 307687586 635662433 757411280 786444707 156441351 246546288 564136024 877071884 676423146 851355578 540783811 763806648 230159774 723163302 804237715 964828585 169812824 966466369 828531869 911502620 640867797 838305160 207573625 972420817 10529865 231433304 594028464 879978389 228558558 715188840 365156992 696666269 870594793 950946905 404610809 960857939 118554730 423540369 904254834 996837637 635478616 869350588 618422802 808561733 815690712 826420707 880208003 940376727 642841028 906138129 355160889 507379624 560050616 565473267 222403435 938173059 648121392 857368402 54574707 952266655 103687047 327044379 406660279 973878346 197091431 222152090 367526385 955251488 201056126 616054222 783777150 792287094 26882897 49331965 906298361 962835926 345966528 557445409 989095941 992456346 643984178 918357500 727065545 883515197 936462666 973520458 598624800 824043193 683065575 830221186 691818948 796320944 770587698 868635914 357219741 531084981 846050985 954419557 130797477 825363215 477052480 937660567 730398988 875474889 820964631 868757235 104247521 298849356 755476998 810345744 440361178 980844594 701692586 893540122 582137930 769911415 496532436 817954298 381824116 847527753 653006607 903747321 774208564 816178943 184899013 555992398 402923975 481611140 564824548 776307273 271440776 791391616 98175235 954638769 833815733 950634404 40754047 342775161 879096255 893377472 226815723 943110671 241300651 902962612 654987739 998790551 665847601 882019641 129967407 990913113 865136787 909248501 270975060 748752168 108034666 756725367 166628974 668360647 203451139 244935824 860708720 950588204 165601721 956932652 480057539 984965802 49139273 775515896 66614870 390443025 784414599 863262304 958605617 971650163 499741300 928906801 591417343 656700761 493157274 578262491 925485723 981786751 515583230 992791989 838681811 976012398 242008797 318691351 518946587 521205040 405509164 883618970 727353632 947997156 925648700 947970217 421829771 700102246 420604370 996457083 602156739 844031725 978460707 992517878 595637202 656624315 377891606 853595501 143412640 891903817 313443224 543851275 741881321 848777364 431942953 985559758 421987789 644246631 96918646 871950243 334008875 851990604 398082439 642656145 249116870 505772429 818230463 986302425 41719879 378128154 295985058 480040777 241107688 954086741 407274477 657776643 690933250 999113140 332836480 457767952 804673045 946859478 41054249 236273121 714089284 877610279 319707300 657156996 776935058 794981537 497030609 736899637 743925482 967088355 766278936 812121867 250654982 576171707 394283564 854050257 830485493 944469086 444829409 474573195 21169512 953402138 41404241 829405061 746486757 943980223 298067494 866950336 988738275 991254880 310831234 898443514 829664715 872384980 463116553 563536817 716349487 728017938 996081547 996268660 220914459 664364992 421101956 826530385 117753694 158339007 634214489 696569758 796873007 835263628 602123671 993473593 877679934 928870466 218410047 499198171 574966838 812827453 132817598 754341437 346473843 619744042 832891318 957535255 794279303 951289762 441058472 585807685 845000156 978953823 488046233 866006446 19317049 468424790 112224292 733139107 396591081 462985773 429811102 530712530 580549567 643462651 995502650 996924933 85614342 702456855 672043724 861990508 551405838 999055900 688737879 875939465 458433916 778152319 250816833 319933646 971019167 971827745 908437295 972476002 207596304 437925163 240312887 322839795 579334015 725635241 564774852 584093240 295878908 341760972 193850287 622783345 676767699 754997550 794838716 822308760 802113565 878962779 997512461 997579079 491214745 804177077 342060334 700926237 411280501 995205348 169366500 640525648 951115737 951492759 696371056 714250342 763646534 977145120 407578357 728532777 826417863 961750466 855403134 948090556 537231151 653935193 1181102 607588104 873250973 963208530 520467032 780059183 451176146 847925344 86206261 222162088 650771374 944552138 185767944 759574735 812777270 968599743 888523993 957376832 572537956 730020038 626276003 667087842 19931040 392459863 732616827 947060091 160698673 430064096 191015154 387559667 925967308 954297100 149102379 531246543 413016193 656112126 386408485 465954084 170658371 677056751 507639127 911221244 242166277 516655933 906346504 957875510 967832491 975596118 601747012 758483437 160186923 903334116 47186919 695142518 594866500 687080404 455785504 679211600 145136513 454419875 451227549 460144260 922143805 959031830 519721787 916849767 10707501 214619403 332799769 866545863 629017944 706845122 986144658 998929205 134810423 552828165 754784465 962993187 770430610 877599330 784930181 911519301 590444561 802206603 732827227 988900095 889916176 956807625 431430135 650547100 989150855 996678826 139414110 192666237 590436090 824944690 26366067 31475169 637524103 989229054 709576286 996555186 357752054 378163619 546986698 714424617 333963022 690480242 251715467 934513602 990435187 996286504 201015484 334663538 803638160 972830370 92382685 893267214 856746096 889574532 121110818 730333504 64089974 288307567 79041818 284310510 192629110 210175859 669600178 837367754 576823818 941561191 225429946 453806832 271676030 933842751 681295219 865296192 737230507 925555584 55700197 954579163 634597249 933391714 411135814 525839866 66861071 671840389 347513498 647823514 533135591 752884707 529450393 663437086 975075622 991663211 684005961 728015199 782681329 916499709 16122092 680210080 298799605 325463191 68823851 554570646 764016512 838737221 411487081 981692381 897986177 942645106 614712541 817657550 93397426 968723104 594787663 902387742 118420340 190750902 449423880 668541630 339640751 410258142 885448351 990469849 768347819 857350213 46773172 694702195 44240376 620117494 882686066 946716830 780136821 964060699 386756545 741033460 392069909 445737388 79392397 905104750 374743165 908330794 159624533 175334941 675401890 845050710 351889224 973076523 305711013 393141581 547273954 715461036 590342002 762854398 898835864 946732868 40888196 972210642 896442583 915415093 809265376 976108247 903143772 984949324 399606256 486775768 637005399 681714106 188396436 216914062 611492798 927669036 527815444 684728930 290060490 329579092 71007111 230541785 128203250 789670060 503357657 736152919 750990108 963491368 167638925 229450782 378484690 928557909 280691503 981773844 984158398 995726958 729911421 822586807 485012417 823458878 603913341 809345535 45074306 905574476 995898833 998447680 853670377 885084503 837044895 992669427 285577505 770574422 817831129 892062600 498732566 541083255 480191766 884275723 35695592 214290563 226183225 474178447 357057865 991694760 487048274 634391175 814012380 976003268 919556693 979828094 936741282 976369349 965541153 995847401 817804210 936696720 272509720 978059012 532471702 783270632 743317827 774197965 619594588 624774067 235849732 524791361 40225821 886140155 927108904 984806547 52469112 586358315 208121 457390581 103076061 797706102 433740282 462003522 339041492 583382486 345363106 644213492 890201632 937446201 882986307 898562874 408286084 582228870 50445320 967753155 167986697 394669315 97473218 737791463 168298264 902791368 95052470 364182794 71795255 372599506 668463981 668667732 871401922 943862320 926664219 977025624 390728858 917038344 669900287 932065436 884445113 986110864 893249044 956084841 497610221 599266004 263202930 314782574 119171989 369575673 667760650 928008628 596660008 956528650 429885890 821187864 525729799 794697459 604193828 645637321 789737500 945721630 241286435 732006628 70226188 839840025 23732766 732860362 718569593 763964914 223494535 331071341 36187451 354217051 298450126 853419750 229121495 607150551 850057031 949295018 721397216 941327451 321899352 367655243 771940057 820294017 181668731 964469765 214342508 499892937 840406128 868440327 700018057 941715027 660062471 934233964 746692372 791609644 205051387 364411804 41952945 720705916 408623673 784853492 908321582 964933900 74626148 653911462 549669323 915615017 904305799 967472758 661158253 792078863 245591774 629173915 94270164 528855715 961516946 964614233 330798377 770335885 176017899 281885869 853443727 877691453 939131786 970471415 961343269 975125308 555593850 766275624 499724315 936952659 266698621 271004181 898995732 925576180 45754119 256531469 463560662 502994425 323971747 907274873 636482723 703303946 33897403 610821991 289050146 561360487 487916577 921118346 933559401 941897148 831451840 839687269 584287315 911163950 104520051 155200746 289437434 603527976 163476744 826966465 967071253 992077065 64395091 383601804 776257351 787226905 572653053 654834785 990368428 995982377 472698082 623885155 204922026 239863591 402607524 969747125 188680299 798734687 689620856 737997507 484884267 680466971 836168973 860464367 626507692 971473364 739809598 973437363 446416188 913294731 364696576 457326925 296523792 959153943 466381977 881012555 809032128 972698769 956641696 966917943 652369543 786369793 482363012 779046486 705417739 879441747 537384048 642035746 464284619 556993175 992322251 995998823 797614166 876681225 355023680 926197822 334437802 719488379 440702902 584510276 488751916 735764608 308613527 856776169 598344289 789240657 592474975 930310793 196471942 502445053 196341294 344894351 217930715 713523542 806920862 970198458 291011530 968719334 453595414 794661994 573449725 950637256 159459671 682207181 941999341 965075039 2966899 414577468 832309214 909027140 138197157 174309992 547370662 571688960 301423953 637620234 872886293 904432234 13658903 106919975 67443733 821435467 650007659 674224031 384845625 408810339 652567190 814221711 671675129 983452793 476160825 492437037 622997643 629876604 954086110 958120818 802774373 928543082 859117789 861769463 808307942 958119034 950478201 964167038 375437424 544704384 298279522 363449599 200243202 259438843 971042724 996158824 686550020 859086376 330554275 924579102 680867249 745806581 137822394 303558177 893469991 951361954 353074429 582102074 825366613 888811716 191032218 539637193 7479655 961048189 758993244 829119764 160995784 244310289 438034728 874943432 14584799 837696481 694693347 850124214 724266304 754787922 417521589 768879152 639100355 977992957 847893276 991755567 109423183 600657607 953386572 971623428 730788158 995627646 746390770 930380432 683740961 898839526 817293034 856478142 301239743 900948044 75030857 246935063 442442154 464575340 507409835 921792746 73532915 264999495 447682470 521281390 704749234 752311337 296013042 966457204 673762854 923923568 427928629 503829713 140290880 153254068 431692357 587201968 852706239 921510714 428130558 731405132 734375413 895586515 830290430 848970664 993154945 995729422 628980470 654135011 868170876 978263579 119569633 583158510 662250651 838897816 555588666 962212715 379077059 859117262 141828568 918026919 288682810 339304463 17785213 559153086 34925539 37212223 587274322 790166499 949391943 998416180 335949529 973777937 316179026 963395517 570905417 586084948 267986111 418700238 789153189 893084115 325446000 887856220 569635381 921194598 898516729 928323180 165781563 327527796 318804492 710803395 682622603 758733581 437287283 858123037 441731580 986256875 982146244 983671662 729902462 910608565 375637633 460482424 491141155 616510154 626087366 853742385 362282767 590141677 309987589 716368902 334874733 586154173 10313363 297789614 945176462 955462795 733377012 937000437 310062287 433619412 784587849 997302404 680522354 750897578 543477383 977583269 140660494 696458200 329779754 736190261 963613440 974332202 400671630 914775099 876092344 956116609 505370044 664184182 347314161 487675081 550339313 596100320 581649936 942295993 958691935 989324548 941148026 989092050 930934539 947198485 254182560 417441977 751493945 982799051 403941683 529512180 574292157 668390138 788011798 823178665 119272192 697234250 66734802 559285901 233194879 327297801 814167275 927525312 231446525 797648886 656900851 972754504 732922915 753610812 218824347 376156010 284052680 936361114 526650687 703062112 910762832 955561678 654357575 925158662 865531799 868028201 576390353 842347980 791434381 961409969 519985879 553555817 450927213 835866226 184144363 613050741 63370757 683274773 585968586 829110365 694620400 825034423 793269945 871637932 737238296 891374701 188298719 566473153 930845335 980628851 271376605 335907690 631412305 943336609 34543799 329065175 886150467 973199760 262630650 951354084 834956743 929810899 791313568 908300355 731788122 859780066 473916289 854652717 915357059 962980908 656913135 743335396 351055641 521998776 472253468 637384340 729939822 764886268 270663546 958263032 619306746 918038150 890719248 982713591 820325269 857394178 535706361 593732747 825752440 920299461 787979771 916140057 651012229 817793364 520664417 643358699 373367709 694639160 671096590 892200989 729106009 998351977 949927466 985265840 889996302 980704411 800317449 857691197 113984619 295490657 234344818 577550668 21622766 33205874 722060994 829566481 757007965 979637034 839991956 994008994 309133119 622213632 353557456 945530804 84086133 521894533 398129942 662503712 488831268 832519702 199553615 541128745 724268651 899636133 922919474 947563398 737106886 788894231 495606585 548575391 893344808 970337289 494662730 777017015 533537938 950224201 151010782 869815126 11461931 707757074 294560630 632065072 841569933 968132780 640999592 806989896 271709033 378414545 761156592 808717538 850433297 921812701 123204085 831963463 928472411 967225149 493989223 818320675 217532378 890303707 440218763 726791033 650558044 892711157 925053647 964542777 691329070 703161453 787213410 956411058 763536918 947058263 775921791 794052684 22703344 449148946 375189697 497935218 964574486 984247573 482680093 952520357 855924575 866839347 219781032 758658951 618078987 849454904 793243044 901622444 325898928 699315661 773690416 902566223 513570578 847421280 232389834 246792476 509390816 966447466 962033274 973024244 959613601 973134666 312759537 970856588 205785904 460806352 207392506 366575171 395384953 460147430 312616731 646304574 619669679 680116611 109269434 973586445 207629625 246858572 23825481 484410985 946476191 947173060 679324686 889065826 755017248 886707698 567873860 826918883 576668260 753458252 673531476 833297056 684452106 875212082 682077644 856476710 221665029 285566545 726259574 733459874 792852935 954409152 185018982 572726284 875312477 962416719 274158580 570509051 368679763 976757473 909548691 932685279 747588763 795102154 298591336 874492260 738074878 776386586 185875072 438349544 562633657 904234958 420275145 948437195 637621217 767065670 704865973 973292728 562905167 786461868 152801029 413632277 700339601 733091384 453265228 495193649 784634595 789082954 83829043 695717411 88627403 892825871 161420290 298709065 17099000 242406217 23143807 814825286 887658956 904156534 860941586 989001893 177937379 939811229 777682091 913206393 126234244 558914198 300511296 626135996 880369493 922918753 739435894 747626950 183437984 418193309 599262239 900597788 530128073 650817424 294958686 371233604 641907807 918155338 104914989 880632751 646053559 990166079 438458708 609015708 697840023 926613307 760471282 935537785 970567407 997926342 88508510 602242106 306809779 814348416 467044900 698291356 918356018 954801529 471257342 742028859 886718878 930172866 128039670 745419357 762123013 954412996 448555435 547511376 334268512 949564019 823225043 948967241 819396143 882266671 393382833 617055930 685596371 865390207 391756780 627028498 636807451 664614462 80495011 243306269 590326321 671774692 333926264 385161483 369706309 763751563 74411016 885232511 989861955 993336885 836256716 919692607 590630748 964836333 491581431 700442135 321648846 435179444 680318514 889246115 338213777 464813076 283284430 742948464 829597118 909185808 36441747 796728432 323215783 619945680 835523451 903705904 391687010 958034239 656934713 894698531 692856779 965560887 862074018 886559023 310941452 833854734 996966007 998760118 424094680 527309749 615603431 849503084 158056126 225056992 791477550 857591861 709058374 792214734 138130060 181020034 113792060 524119714 995778843 999076477 540832637 577459502 444487129 966972893 292436272 383728361 782713576 791568579 249477150 691718251 776886499 934927122 689474077 708893858 335732489 392916522 61128364 694583559 802939881 896799256 132578887 619935069 511742872 648356771 439258765 548606563 112816763 991358814 822266044 856560220 813711666 920971146 255513930 602525013 140030145 527934997 341973075 605261270 74200806 782247608 707932164 898342237 63064819 172018444 423370859 768972349 452624659 530773996 212727347 503457954 245944358 356452935 62220965 219482475 136765702 955782583 61915361 536301260 108189316 789928480 671715409 842245762 427301565 709638474 598970948 778886894 713990431 738502360 486081925 501662783 636623594 997245462 898818527 944817830 571976664 603417717 433943422 677913319 389281587 940799238 802129292 845816134 793426709 982458240 171334929 269127742 506383615 645802904 463119319 874369509 708213894 893584020 865927235 932440822 919369596 995127930 556144779 636699430 236839300 490833684 549740564 748512048 865194682 935892749 887441224 901133031 153088403 262565149 860591472 935886712 760974506 958269235 541666058 993466268 184054281 862839669 196553737 884974855 384836813 941943213 114202741 495939849 416969307 599361980 91776722 384679785 396753379 694553346 460006437 917330772 434782310 768694313 667700880 710786725 894582586 899356958 660487817 935659858 332383347 356150189 601765301 956387980 593792681 774723612 963310284 965343371 213007770 700126599 99147118 678721930 70724731 923173656 307803447 419929021 854468802 903713640 688565401 689596828 868247480 933861633 230627763 917960095 916608022 929291485 625778644 689164564 285018120 939143262 578525608 901199182 525327058 542284365 286766414 456222324 527282564 732818534 420295749 834122509 309585679 980783262 387708276 712595543 575809503 673620016 63562366 553298771 668516490 940990811 724394421 859249848 144392604 296144827 509035189 677570622 492956534 859602054 54525382 618526534 13339716 885617661 483254227 535080967 322899222 359526146 927543461 943014927 751706904 941765312 811720591 931009000 356629398 654214071 798317353 941641524 821803289 907731169 563540519 783094750 566381180 737050302 501157596 783823828 889579454 910437382 392496297 600389540 531227074 943784393 859018782 914846210 495081927 929609243 507060154 514666440 96291528 258603279 265924873 587296011 476033226 669662550 487280762 502568165 902619692 999134965 459195113 884744074 841893669 863881473 986692092 993586967 501688354 654342957 686614235 723913489 48258222 808996828 461144209 647605056 283789008 826556295 455818821 749226319 669442516 954619772 417465661 705574081 78344926 99782729 968073146 973356943 98390823 101434273 105945010 443095602 284845210 666612887 915249804 938388944 798386206 874257858 604216063 803315009 910495042 954949908 945909299 998354738 509811183 994815409 351047173 820224578 24712040 706465825 422333905 705953880 433456773 702463941 294126998 985250402 7233711 397249962 885987523 898259691 425983276 615389964 951500761 996557770 458365748 513244242 870181501 978240204 946911529 953579639 601180290 758189155 189644772 908145070 624916511 935688971 528564721 578953427 441547892 515914140 260636451 913322505 959642272 966154807 328087787 823492258 336399185 764386933 919426492 925017104 702787698 895540630 790718785 833330915 13385811 325143249 322557194 483629083 485560928 594883824 571806261 923578106 939853838 989386650 256048139 804020156 855804665 971868672 231923278 753764605 909420213 937932163 67532408 203915429 887453507 967616924 816719967 870972277 869595287 880329329 342322384 374832517 731551973 843737486 338650527 468296733 234137030 862097367 296973607 993357525 104084630 298684004 658495081 838849700 737386911 993651550 984364667 989887673 584938040 662286906 835585220 849345642 644427780 675214732 823311035 972977374 262383613 611004862 305282838 775133923 996724298 997818018 271648272 530022388 45727994 275821376 52908154 371063584 872839047 981975814 534134470 987727835 491490229 552444637 607434112 878602176 26095888 337987710 713760158 763049258 878626823 913911935 290941209 410819649 243554808 908928476 150266086 635412231 113916586 411320122 390435602 844081137 310947378 581553328 226345300 467114951 191668615 286640890 35342079 313727747 297710768 924526997 55444882 883742294 397396377 791238231 895833222 939063928 416359431 891647205 393840840 865898882 545221972 755143939 705249015 810964182 94713941 195806821 696991504 750905646 228144542 250268334 280978050 328817477 745870700 945766099 164899444 870107178 897533994 900103316 366287842 442059888 861683149 893290296 186300550 476309265 955954334 998777365 28775179 403646998 447176010 971344012 438725773 898128141 995105685 999064979 129016363 251329738 942581028 991854842 902933741 933064356 177662939 764743492 894478353 913271302 438586848 691071409 622214259 629462676 445748179 849985751 180936922 237109925 174743502 271487503 190684189 617602990 820424701 936912449 888190505 963650973 556100125 852870072 308537275 687497482 804068045 835574997 221652411 877381937 648894611 699291980 911240284 972874901 49217720 961219962 248933707 442242417 970690091 991631266 75586108 465687248 789432898 960386647 226192977 786041073 455616122 757244929 595819045 821966785 8652682 244750999 156652316 688226939 659416584 682527561 432556353 494646417 691412522 863884417 558102782 572762141 12452549 548433165 978885229 993072811 804306928 900055131 411664085 438619073 37657752 855641868 863748323 870991023 45080414 495539659 416683856 463387626 418831999 550499553 802220056 931200109 813283599 976368415 142367158 174481471 981617093 986925503 360398882 450392596 974146574 979001467 537924535 957822845 455423836 508789534 848901563 928949436 264140009 723524520 899209458 901128103 7390030 450160961 683239337 811409054 465811339 564848799 389724509 455742350 200998415 416187559 484526920 833943200 939688685 946949747 911414098 985083138 516415737 605474486 194596476 334634475 691816649 913616773 95891486 388633421 981233307 984663882 738378498 857539179 158165414 695410445 749144101 764044265 349734327 642337437 974077207 995637380 184981031 447468359 917720333 931056184 929464884 959940492 629851516 983930528 941280162 990453654 33857340 321060013 354571721 966959865 393113855 630329428 66688557 916043294 903214718 952706074 624145599 693588606 176835961 490786536 868370415 987585383 718849895 819717714 476530063 900214467 579707978 609481083 762738079 955136323 982478835 989219570 274371424 540052301 762025972 769299944 974648296 990490874 643264305 843175201 556136318 799919229 730955967 830058425 629145674 968524322 906649845 956480745 651911076 758583386 710848383 967475200 230603848 598041883 423756989 545850618 629560892 987964966 896923244 975569445 670235381 933703371 16544668 306989231 535692571 561512940 903682592 911428305 246467604 754836714 277130760 522727042 295430676 691458053 582086033 740234952 807251018 953868204 815455631 954504421 162857251 886677002 759439820 772618755 717873831 745729819 34902016 570427408 292833773 826376401 8509415 144861625 215301546 972852250 10052627 957932104 162710991 468618268 714420137 864382926 524696721 901739288 41597681 531335382 164349345 236827608 577869982 950992007 529734504 576131119 792177541 881447706 520854550 854825345 994152617 998009624 227327266 281898115 964663851 985261693 243007232 553474152 628563698 656398589 251867848 944262506 28239823 497160315 128963660 366019416 615740510 746664628 901772317 989704832 781658899 996231926 152420539 973226829 972305721 995257543 273779932 611062515 285322563 684439433 815994934 851170604 972410451 978096311 499059788 664466391 140992933 173696418 219601067 766195600 466770160 894884898 604169194 719335146 47327507 839699897 564815628 763878948 930109078 935204631 355546335 696959136 870000217 998150529 240658816 547165331 16011927 436779555 940742266 973874602 48269430 592946616 524321410 563851537 668240020 695596251 634268397 990546047 880454975 957456117 485773 244749137 539311821 806959384 548566102 892422255 882084584 967546206 648916056 732443951 645244214 715709678 458147996 891941602 963534762 990159152 837359598 926496999 931032992 956224104 802009212 936260939 968068877 994457669 444013551 509807493 616653269 797959851 33424381 658446315 495494267 506968582 339266446 447361022 273213818 635485722 993971469 994954155 764576236 823308758 652983848 830193833 293696183 404606078 195155285 699894122 680005041 701214610 596584877 620055714 385033376 589677592 876886500 890738629 918056212 978264590 981364934 983870101 633101851 942155061 143859583 774990701 671263566 844411987 22872373 686294210 812371942 959984590 573479069 870044295 216864574 435375894 967104648 981540936 523263834 772811821 325999840 665519549 972117932 973363992 503004232 860691366 479400823 544448918 632220675 684518869 276678416 378641247 236848185 836491435 522391640 600339541 384236494 461213849 299640324 672672962 874262983 945125941 130222792 523673449 540898127 580331659 125790779 289704151 248435621 795615406 789726839 818528498 687864662 726830682 930614996 934748420 788455939 966461661 900234353 975998508 806080116 942573130 654602967 723268413 389377157 433400276 289895007 582138111 176926702 976428152 470140785 931908434 4414867 949312523 408453456 410351351 913089509 982168596 277390162 879130775 876577884 979782723 765934598 908491847 369116485 903520772 801645983 897416211 992016937 994119405 25165915 517897864 189133080 374994116 330050387 647249102 18167973 346833653 824797983 927385995 424093084 662294978 662773954 703489410 54943789 559309280 894040866 984964054 704123495 819915755 65223438 688637742 645945268 917258976 873518019 991363562 870671882 940585693 327559870 517911689 762493353 808193335 12382767 516088439 245880392 256389973 89997969 272544719 486086130 564433056 687994862 918494230 580884623 581199760 654181838 950336281 343756009 835370693 235038442 623498206 18023759 43217729 885626771 993471316 450001889 930600907 19003923 118353789 75795343 435722443 212242855 478801251 57022600 821460847 224609876 989912172 794895377 980973459 720722252 830635316 684869090 731597401 674283361 767855263 428594750 807494170 491017612 901770610 721471946 812960839 832820849 840371714 948061617 973379439 703203702 986039781 823043216 969079393 323646545 924489919 734480738 906253696 207924473 650964192 386870674 597420528 183227516 254889374 829219470 853055716 958996679 960796450 399778409 444604663 545341985 977534309 335716077 704854441 22380859 476916855 249960657 711788937 227632080 262450355 465654657 468225153 361120631 680815752 118245143 504372897 740816137 782614387 216961026 484986314 747110096 839516243 694312445 951643308 979802738 982390919 35462882 348453677 314961039 696970751 304749741 778990888 799259952 814922216 223351476 564787241 320923324 906341389 117980352 925504490 129727169 352132928 333824131 366697996 834078930 986776939 152554935 701969957 305736657 615499639 218154272 883864976 114130448 959265954 801859676 861572996 175602179 192028016 611759790 652168484 124569505 366072955 397831634 757971945 797421026 985368119 974372420 978776667 341334752 788274946 252822473 694002817 246959741 852380376 968380018 994200141 551247680 955953121 884830128 886434617 210339513 998420918 811121370 894644049 320904769 400313368 760286465 834590975 213928015 854462646 52392079 858391980 660976671 970494872 453261343 652135513 936190587 941076953 777707318 946675424 161176738 275065314 383968647 974645003 861443955 937573902 811599910 924070049 502926988 598877390 526945688 855087699 488293394 814984351 117293155 923658899 337030689 471020580 427495048 803148342 463069238 739383714 486930896 665615598 123187305 319294167 292067939 862252955 438126090 725118252 565832149 844960371 437031095 559653919 724173317 954658428 721368702 985645112 409995260 745235864 355102979 767800919 226520381 408984154 742157969 756158204 418574264 859274080 543606644 732095177 320319438 898186761 897747934 951303983 989523865 997499541 761350411 878298115 156701643 952995907 464352356 775600564 4751433 272688806 620840630 859544380 87542856 828610892 868036555 875987999 502223795 512447685 351781110 718351392 147835095 661497432 726397453 984781841 754521443 887233466 403914078 574573821 412136942 555554734 51614411 484519190 448250041 796070950 705888536 713770994 571185835 760084421 1226262 5655767 259777093 631670370 621424524 914932727 155052431 577499589 993415409 999044161 124810993 889670587 905910605 960729157 999042544 999239811 567099271 980063541 397576803 894475504 421511308 847574800 851303592 975589408 281300780 295735801 5768467 582800388 467402781 547091248 137106291 321002137 896179749 996384694 877183501 959986975 974989531 995929115 778505793 885092917 955478819 966284664 41259980 894325123 340091716 574238033 594655233 958678914 284491842 514974781 534218500 780349922 664477365 879319516 55396877 967166343 483587402 680584792 40866825 512664416 430280425 873301778 950990157 966310079 205662515 310846951 53083536 341411140 217207729 798798733 992364449 994784338 62362223 809143688 202997919 413482404 466762301 948743814 26137652 377161435 567294135 588561713 838427645 915531219 723013186 725833543 627999398 693008430 694600206 963098595 562832222 566666624 793151319 962403826 672874946 806910814 58641824 199340882 691365700 807863854 894058052 963960192 745452768 869241714 340728106 355897829 249570770 731123101 727922064 792057016 935885912 952049427 147957991 298712541 306445795 587480016 320108640 351244913 689661788 883572209 358694110 908298481 51656808 676305285 813834661 913452642 120820692 284277786 138442461 487186725 225043036 762571384 757508598 912536150 282695823 913468721 254923091 372436789 22329992 26066682 296450649 526668650 391957141 862359073 615550314 624998118 714570436 943170615 356597392 850015165 447938806 963292941 766717952 906273996 748340810 849228889 625370183 657485487 312379332 646696951 437054685 771534848 469426254 993730638 491677556 775057793 152889600 413097101 275698422 901256599 553402998 782669876 436416894 552297425 968515559 998566436 957519957 973453621 726699140 936913571 669564280 874716959 106764362 844913139 222433762 879886950 233769852 383689497 800527457 856819751 324430025 641498210 489859483 707144320 407746050 779478924 593026460 896083262 866902196 985632469 847246468 860773816 998122425 998224988 22700180 721298202 714435239 899639728 444865761 632806090 449220704 464794052 951180593 959413074 308425994 892498028 516918133 522108545 174106377 847587700 497433580 952694999 848256714 853889532 300421852 606858255 110865465 826816815 197116238 303332865 80213161 941377089 539414164 704865943 621631549 871113465 95963319 634823656 811861260 849725562 252799800 934580338 588598448 640574860 202599191 834958561 252986915 763720079 860284676 908079485 706218039 914483025 604431252 768615457 175681036 832191509 32752631 711866637 805207306 919229848 230919351 593455012 336851979 395165479 663059746 684476976 209729719 904801896 585285795 711599965 890944440 925135350 530691702 934717015 757619880 878496169 464496621 851467154 176160044 819792086 495576136 784214056 221581619 383447174 83299137 667475683 549828706 897607269 123107569 918743299 739040819 912656914 862740099 901344461 843672076 878294403 994677137 997840069 242867994 452273556 849597166 946098829 418597084 714085372 983065702 999090521 453177036 996009383 721263543 751079074 365172019 382517306 348648831 603109166 725470636 797334317 726115827 814380970 864025029 902803634 500503456 857905512 861333976 970225127 297949324 546503481 404081643 834815801 328266931 725612613 413282441 574019756 855247068 876721734 257563052 698560831 35455017 573136582 413594422 630627213 206899890 309429038 445271074 673841123 756828942 846546094 985710739 989176980 898254577 907725283 896992000 955732115 874428316 949594741 138808589 147873078 353966408 987276264 362764071 708057352 63483179 982257127 189632169 880448553 262142157 477527283 399035415 906722881 250106396 491854015 275871005 865701419 247873157 277401992 651911625 767979717 944597393 998188418 908840171 921532441 13411800 933140264 108046327 729301919 253778340 859476400 978968591 992451605 811190117 976570214 365242887 382018821 305533830 485124880 745931377 829918149 861331599 970995500 661762401 964007828 651471631 947929706 450132889 991841678 286540163 808859564 753391904 916143710 132983167 529712950 202151377 645199367 358259904 388728446 150959347 607359782 8459378 438129646 222635896 427628047 172825470 222219822 167804593 774711679 741633835 904605933 593245525 825684997 845634867 857041765 301981636 305229515 476436348 493655994 567483011 776919968 292244811 977332013 954331956 989789109 331038982 604263164 379346246 810289350 829135439 955096212 5170187 743698358 190480530 316199991 24308002 831366853 141761198 440264859 37356110 42658392 344128138 750602126 230888474 439639193 713429610 747603251 425671856 742271363 717270815 901217264 974244397 978317520 337334956 636509978 178806068 890004461 208058343 755253076 805728366 816058362 588942153 675826693 172703563 712806521 525195897 881280968 238598382 995185968 777043484 913688340 876102726 882075652 37428344 408467476 717264953 938560252 627484954 878137520 992298320 996920761 371656263 843655708 413112637 581692569 926549251 975658806 659584224 720925046 28923634 497848190 468599402 623590668 270200127 337720343 114699170 559043511 294692660 410539430 629306638 654994455 453969772 672064770 425001843 463141573 172099289 571536553 145402907 229279119 332762351 457454892 209844138 496430124 635183673 724823041 250911367 719269684 809025015 942054278 394973932 782248496 281639882 372289774 540644998 685516230 145782016 827825510 612477151 953433228 441848363 490394748 353687957 793953542 504268111 974983987 232775540 446299122 619937091 997449844 456118932 916689158 843205913 938284884 484889181 555133844 184182126 443943531 220309855 641353490 959785374 968754319 590671981 898608237 565510580 576318233 266223667 382685884 428968640 985456459 853973566 941306535 157961387 445161217 588721470 729631573 720199703 740537188 359573266 400247152 525738118 889804672 143747694 896561862 757917608 957473987 731648022 813605786 867888623 982318609 230177780 279313226 701767794 964731867 816418053 881666308 443355831 969179258 158387929 496943501 637885576 651336842 871194500 881527712 427010141 678464614 522674212 612727692 342707998 996850107 988865860 998032940 330198744 987971836 391774245 693181924 202305398 840400051 869468467 956628438 488734458 501334622 711752991 969333975 337925731 640020912 648986032 907009428 240276034 843264241 907078235 912694364 647292321 670913355 88224201 850282854 434805500 496116303 437151784 761380126 925971378 979896587 412173533 733899812 753577978 860328023 246141937 267943222 382991015 398175689 784300211 942744247 177906635 408953585 293274905 786872484 839832864 883705544 418533758 920261048 892696778 988619792 31425892 290463342 493797017 982557555 88155985 332354508 666686690 676065545 460807838 800900852 936813859 985677611 800832547 992309374 485854599 824224872 815866051 946619535 492259050 919737300 640959738 742744139 13156421 732362794 79748071 973198592 22597006 29169682 244387634 933599223 537150578 833741452 553620933 686062443 625534878 936770894 909851431 989064035 74481604 859044417 620127852 668249762 806160731 843982770 941249746 958585045 910449910 917504981 843383204 989240013 886555474 886802544 482776298 761919414 485082773 764395166 66409750 590708794 16736782 325669791 981059764 998339920 829008526 883420519 506908946 969322479 745616991 829911355 765928882 884892661 401854432 963806241 691671734 706450444 655712583 913895636 571653979 644962048 161188126 276858565 168353715 467020198 136131969 138566379 375154655 531234489 86701780 763124609 573629579 781199209 994047315 998472399 785864460 997555466 262951313 991707850 610681405 856858694 780057882 804946982 578291417 884825654 405457834 854496971 802773178 950558846 771367480 895301203 686469489 999219716 49304069 329137970 840962364 996362620 820806614 849500904 906999859 983634691 23557178 712816545 941928630 974092564 789327217 907946071 491290551 776808206 203788993 599902381 266411886 397904523 779022945 922592562 642743708 715646034 719886939 766667451 777561151 998075164 517490447 528351049 804536948 993586624 594356389 967843600 85122745 107859810 114093993 992650674 390295734 725831948 102783471 465247625 211611120 300389465 54347804 480870177 558053740 846595556 955712065 994405324 817186750 976271741 861275771 969227616 82252597 470111228 595842061 931538326 517656888 678983787 453701616 476904570 949145769 981619672 281864943 574106174 376522028 541256823 584293370 824110477 647809092 964337762 786204957 868871299 381750317 407594814 737530849 854148200 812367098 887335388 88599147 606307419 578862799 971925825 987440146 988406177 448213462 810021654 900140238 910778206 740196348 996773546 356620372 777706424 222311642 970067818 2925655 940937073 756922471 944416879 485165432 944631581 933809151 990088204 375078408 405481343 426994458 639503678 795264716 902450588 969382847 982780124 773675842 897327749 29849576 562745168 342196430 434357401 184235244 913062748 91139632 421990399 481977880 992394016 876306554 999109348 668543869 856362849 739339563 896268954 864958389 937623989 612425354 848133565 66260185 70059373 116493179 771087823 496606587 791066325 84687011 249627524 956569887 988682576 773381531 969601685 655176350 832249851 896455372 906144462 580764998 975231433 68347617 338812535 513008946 631308333 636442185 770600065 990339608 994516832 140862804 410972983 23666136 470770944 115859116 893118907 567712257 613456460 951821424 963095020 435352577 451917630 506163059 716626990 896638490 983403773 468378430 707403668 998266163 998747074 384230446 533807658 669383764 971986787 561101944 653588669 331027357 641939160 907722369 948257016 770433544 834919254 244777604 493101380 580729945 658779904 287969073 824158870 308298662 804869825 263313304 945503363 444392459 669928884 406250520 860398725 240740479 606453452 74159575 217278944 419996873 591216003 898332007 990177819 631465059 759896108 20601878 376746590 153855262 238639022 18312444 808986231 39530043 633594582 531269779 845157178 950490483 965664366 939584437 951099352 866198076 981165480 911754247 988668905 662563763 796473412 784660266 871251127 108280763 351241702 31127495 977792200 419048525 548558400 708022169 811530225 211325215 555926506 428260616 569344136 351190599 548024184 821017008 979653396 300065531 980139744 287154555 911079155 237687297 599582626 8930786 710324855 517465724 590788500 232164029 786126914 377014159 664879340 863084606 872899098 949508932 964417826 844050714 890440963 761613924 913055655 128261429 772834740 90147184 449491235 981633503 993381062 276695182 854355402 311882076 902357399 202678809 730605969 27697811 515820334 98567343 880230725 282120539 453911247 451910320 530045549 506242530 705734684 464753360 535694236 32289208 910412773 380424942 603141420 727805378 968326851 222443125 227523660 356448397 470016320 280489771 544326253 319009805 639714042 671718662 991705934 532452671 932562013 751720296 780392634 757547829 887870369 620119048 978116282 169463004 626070810 365488926 780001107 411676398 601468920 146231210 929898588 678314284 883299038 707493106 776675187 308723043 953586269 148848994 831494032 186158019 526265872 823949363 863290125 129999387 580681125 412829521 573046423 949047955 953005133 461810419 937340250 792136147 916286213 229712275 502995270 400753138 965400561 618283689 954953215 209765451 217357053 581891755 823968471 578466677 890993606 490768985 529967041 933907762 943538385 455575678 984656909 551098560 577360318 661304648 902170122 604115398 741627292 263696489 583688768 830856806 943247446 908191248 999229444 897902645 924017978 980086976 998235364 242225334 789925631 760696566 918076128 823480999 969224573 156714589 869026390 164758111 902751772 948829490 979123668 178609351 212567932 907482650 947020028 614515945 850889207 98879235 149803621 865376590 883068762 144282356 371775488 554716336 888574577 107058933 774149533 181549111 850645603 103561316 740534138 759201047 854988319 746084178 754061774 496965436 689529731 294368833 388175401 989236488 990545764 213491492 522509749 479622277 729735388 845774937 999349848 875567000 884413929 104732827 787531263 84839179 433175754 441420734 485118165 342576675 623709350 304607809 317653325 155980870 293327928 149119859 465106872 481331608 976681164 608823453 952136934 965722125 987530483 956863885 968423526 607157434 769364925 904887729 953850888 511311263 964016389 24840590 774931677 114472892 171818346 724341812 829424041 894842241 912313633 64485319 901246019 16503508 697904732 654618716 794628218 984056055 992811922 827597830 857692232 926426169 969223193 864563293 935421305 676558086 901491220 901583931 902493439 270619775 964737190 370180521 820207148 737209 32345868 951620721 955460418 754358213 888552829 894380554 978934096 731302199 816935174 896846080 933129544 110495013 630122519 319693040 994915214 282270476 315381422 624339211 852715744 888224706 958257084 426913898 769090809 311978991 834095883 656997750 891304888 466453038 881259819 261709044 290616204 188493656 361855199 548870223 657276783 807470864 913406408 171591243 930298493 810811102 866544664 648952289 685162138 946530461 956320603 898680051 977072345 82296460 791517476 496363889 795909956 645688149 649255962 780097954 913569630 24492472 737064554 196750769 568613664 304209418 375458186 335400925 659719075 831833765 956128691 314337459 682506264 304035910 580720802 474311566 958975562 884688464 910249298 542654983 639620065 448390749 698468561 916665341 926171095 164129668 892514565 358553027 850221219 597565548 916279416 771073959 804963295 374733467 902891652 485060422 582418162 693075140 946441731 172606902 338430114 206152594 648973652 579225477 698710505 201206445 749582623 607422552 709899510 248156114 951170664 259733183 367228936 371776757 827093635 690066577 748315470 425946777 707688304 97915999 821167717 453986892 468593338 990830850 992815312 744876765 762169825 488655695 774816896 830898322 876735931 313587491 511319128 637851559 657340446 953333181 955779537 102760379 681106107 95538856 308914752 754210695 975978055 345705606 409774795 241722250 429479554 990467108 993208031 77781275 706107756 61276625 960626796 832064808 981066916 205235127 446026317 157177884 326799392 821780485 972705334 647137304 984519052 990853784 995156089 447624405 879421598 92891661 854266992 700148397 965935023 938044308 946435666 462429203 824733039 71084186 847108983 399408261 998330390 290640719 829434690 220646011 625876185 710419870 930092171 706311064 947409545 569293721 611371623 908915941 976529305 573222014 919381219 564890810 742198157 732035165 845161703 171470664 953474603 175334285 748357651 379770481 648997207 916066090 964091593 960053719 984317728 818475145 907112338 132847639 175642630 611403466 672782087 876633703 943249174 57479711 776005343 691710645 996543631 667093524 764990130 535521446 979958555 424681503 512917573 339182611 743419847 564816770 927564281 774646827 871800865 63088753 515395277 690522947 727192230 982685455 992941830 250642324 544313455 962989763 981301218 881757961 888127117 964190242 970410080 135158116 197002433 971816068 990830287 934570420 964314300 575804227 589662835 213380704 802779913 394953458 736046022 558886373 688719785 949418424 966141643 100140517 237265307 601701944 770911136 251657781 288396686 806769967 822778684 56738959 934635145 753774469 753816388 676539623 972802970 982120388 984969876 435960431 442968925 259053226 591943815 442399310 792634401 706515811 768848599 625371945 867507302 494190810 818840321 238413608 789727244 802096173 843010575 840539221 979186488 477527642 669335501 537903649 585994833 76845544 442842960 511944073 937208997 731588487 811454256 498859594 918760602 500377228 924434683 592859724 596486576 371449742 451199562 495120536 690364726 112770027 984893385 949988926 951567648 907231966 931401252 11285495 929578410 116741952 151762093 82760040 334820238 561679420 990604334 772350750 939669437 236579651 858612471 339721445 516992802 438075086 526164652 749188115 951495571 612809015 805684597 33764165 439496279 966134536 968689706 532256887 752879218 451574615 764692208 752752272 938337799 832167574 896408462 383762506 694746822 163942375 171294983 277367562 956122211 252908462 924687292 424527034 995371474 10213569 475259924 945654727 961750115 554479224 937358074 845981553 848779386 318898994 926749917 598644207 940332901 706811555 813158893 337201919 586558667 337782544 548698303 793910761 813509301 870110451 948890407 199767169 468826343 697430403 884318735 842895000 936018805 644062986 944210937 144857211 401713898 410678929 893109917 139704612 965810222 826017247 842424961 856533439 861574950 191929420 674627309 539441137 834578727 591114843 698373853 81295313 415509894 175502489 843251726 993049865 995746618 529371934 685574074 793067794 842310437 172642795 456771741 587145582 734213387 953774460 982751539 537570161 860917367 958127646 967707709 724352685 889935215 963056957 980594376 989857239 994215641 757215163 802164225 604851416 725171774 911439683 964048701 8211430 301139292 664341411 783834963 975734272 981677975 991653380 994931047 530956320 876999962 981636865 987763106 810776869 894798105 485294640 839852198 500532083 988873942 237295638 796105086 230956466 842883480 215454720 996173786 153437305 482480577 855326610 926473919 227211691 341465652 919654248 923753878 494383221 822235218 920058276 953666527 24513247 31147401 218060528 489418751 43172213 454477696 138388167 901024697 458739848 542944949 218605126 331479479 350732503 472648259 648233928 680714531 324863101 742358832 602364085 924859655 468588128 479671226 352528845 375263050 88383283 274841433 454148978 869058703 188948852 265965887 778566424 780087750 700528291 809692731 312183850 420820241 594666241 753430324 426436311 783762787 683971305 999145002 595768550 890920190 173017647 400605891 616097848 889447436 712991482 921082177 905642197 994468763 9082861 607408589 486709518 665152810 859724168 965398560 583463430 814585301 346304352 494576991 28536403 228651507 101229789 541094841 722320283 800628804 69911643 523439268 654465845 877025554 417757365 886075860 504421483 603312291 753557894 785963784 988837112 989536460 941776277 949473062 335145708 637950340 869996481 945009359 878522014 908871270 634243680 785225655 58978287 553183877 766958476 888508372 74389689 479345823 936558581 987946466 462873476 585117790 295839445 447731684 264228725 644723291 318826670 796440501 224370659 378177825 371952887 545223239 221253885 439049964 477772478 725453699 938996950 988650935 92632426 799258003 574295901 858706441 624027800 798661230 373086490 728183296 217649068 228290056 228969033 557916202 123215217 461547063 725404223 922724443 597596852 800001321 430655242 701904522 677832699 870211901 80327291 568573566 438937813 469047558 106406439 136733739 51430497 108595568 891758479 965405343 851054957 913544487 821702281 831282432 698058224 974308709 112764674 816008740 981133700 993902327 426926813 666305397 775833205 915425660 56388288 723883544 938894945 989840014 945144591 962177216 560795575 614000662 104223620 670111303 697320659 796590310 595608803 754216088 788857265 815447898 162602322 542224235 882680703 963024998 777162871 796620717 174051776 435344383 663200621 664016745 451232484 777377732 172619546 772068957 354638309 585748262 862605505 904041533 236954618 650802818 269792948 973307079 243588978 462646779 383039147 930530086 839639770 863803013 741245643 878350003 742082585 778325505 595268677 952898757 250149627 594993325 18268268 296454718 398780673 509442824 463239468 467248364 204528607 364831977 197221740 384244294 938231990 956348923 47078424 988453427 520712935 550522787 726884200 887411548 238930205 628575783 698858222 705347567 891871526 910440369 909967008 985907660 394861524 525526692 283371642 655474071 130666722 892328075 360058491 728544085 378854468 447903278 591473077 758389211 430454579 645282497 7103753 481631110 202795125 755532069 180053841 635099199 884490809 923486874 68660012 902228476 967837398 982580616 892712796 922871547 693619366 830297225 403489454 897139706 282402069 305696994 193186108 839732477 945961089 997506939 360616932 897443400 865401619 944875455 193179955 199410060 824606153 963234506 641953967 999095320 43277413 727373962 484078283 528764853 115092452 338816323 852962703 948211090 161718754 420779531 119312416 287902850 510113098 721743974 409282330 844390679 809799468 818043506 24644374 693097849 860214349 977948865 485541745 992470305 500060561 645192205 823581532 857302225 328728775 821192014 217572737 964210272 484486230 486365689 617228703 642121802 354728090 873082854 817441882 906852085 764873557 985287921 490862820 789780793 789389768 898764932 138605522 260099679 24080701 81024926 805299624 904760299 163460171 589983420 519535511 905871668 591011363 859693904 260697321 640973565 623622896 772051026 397859249 399099158 722285589 790268582 327221920 927048263 289328338 906036571 832176086 838490552 118703216 144757837 128125959 751496957 175301073 521522360 872060563 929146099 486779463 656140154 781773341 935499991 328868940 731317292 755487123 951464202 98772877 983871307 500839459 944645401 66829215 331508687 503814556 659977354 774426510 911622773 505384133 647841338 363551328 759807721 38683745 588489781 646355149 948959077 615462638 963827380 44589121 243241874 435603002 628045732 374679377 770050774 443551852 841820943 216927626 959479022 569702818 973237678 98598441 837078410 467330662 740383677 427058647 959434186 106133858 278350050 372409362 472339523 598380158 871258709 818420387 867312603 915258056 940911346 961967309 972878296 960411770 978440565 982240741 990810193 964215193 986495154 467460927 662310135 927057084 993847067 596664143 816921468 882914743 925941054 315644642 972892136 848437733 864176194 611332730 669671937 912712877 968563750 378543638 541214992 118607253 151654600 441162526 704456106 570772436 580017770 185402122 481731207 71944957 984158450 828248002 880328835 974362567 995854583 189753606 487462842 189789880 535211178 579844893 800533249 47288094 632581299 764064783 958581039 448857862 992711376 879108513 886064117 236939339 465220899 643779045 688862367 230439128 926361272 945146810 965343272 290031888 457514101 5303451 281645281 649322194 823741260 332658347 795459072 362396165 617326817 241117567 778791180 836132605 981078721 235135038 382844289 824405303 960295198 542123643 733363251 834578262 880861473 649468129 783310148 975505516 996379807 675753416 972784978 462275313 848305842 426265946 981002333 1806833 285835702 488732657 589694657 36348272 150658102 37631146 660253933 801248662 951961838 796120351 866374387 521305250 927625656 318901390 557974788 294794837 796550053 599690374 814946669 595700221 693288397 990857562 994552018 480488485 791732625 609659513 989691006 751811351 915424638 28155974 103004743 891351093 964637658 675903273 860655751 114562674 123173078 104280145 195170114 845383840 910293946 897146257 911597221 190754604 244753304 610833024 697190358 696727585 846752751 912989575 977051288 98693405 800775576 994832358 997657724 672766537 819021592 160262799 848180005 599103655 939893614 751128459 769741962 170188438 930453848 738412384 933090968 909994535 911706646 675240024 857617896 262529735 476808634 325694562 399040543 600542467 765308355 660962846 674677515 282214085 823952495 22158523 623357252 936687828 999114422 807646689 824167400 421151084 869279643 494662874 732689089 933659523 985959714 288998290 555744385 675380163 941160587 355944461 574599847 15397511 360811287 901200603 966801262 935712024 949172509 693407668 757879476 69421713 944451274 708873768 762395836 700312735 971191168 768623058 979558894 492159999 732791164 113795346 476253610 515778146 579646048 348939575 889453402 981432699 984766121 172278365 837645680 907326934 944860991 173364986 871931065 141619013 456962784 975899515 989383580 271683227 344748054 6653538 637711893 978916808 994120264 444893036 638660502 986915795 992298390 769962356 811682692 324579087 706909311 225318568 322317857 517328016 827540244 163073491 534464075 567485799 711299490 679400762 762311683 748840840 771363566 928938220 938987940 385714263 852658455 407310619 772726425 462802480 707744706 997035769 998440681 640108005 704255523 458918773 985613145 476338709 875655584 335738595 821326891 967610938 978459441 809574682 911863014 170429011 774770143 550703183 630407265 354059612 672101820 640836283 704193239 420411078 580113794 455460756 545742576 221371347 738300226 367556827 812895178 705629009 847336435 369525552 414190275 77196667 772442356 819317745 887795812 738037376 740296567 93211549 386980942 997292675 997937484 455318125 629857556 312990286 594126882 434771354 628521465 714360673 831941252 411712661 474030907 554200629 711466918 714418535 991653895 92274240 755142127 405463588 704941589 688663869 857772375 972428102 979573655 619139205 850194638 670569347 761501487 617267585 998132039 687985131 908941515 300613296 500264634 482545010 865745191 555580108 681034022 967197459 986413693 834885068 964950239 21810395 560031413 859255647 940555719 463477829 496866609 214827412 225273130 688486916 714116329 214693577 622242870 877257149 919676350 333811505 727678734 238611981 791103291 203139535 905429288 177228396 213720650 13648580 605919432 316732996 391052227 987170263 996779222 693728782 735809737 258082154 447714826 470268686 939224319 771718619 908444631 719857623 931883039 605416872 857678501 981526486 994956020 486576715 572815032 544883747 767815679 655040189 708518688 453968356 631131431 216727119 700310841 280694944 722907333 684891841 953046804 287773037 456588752 774412284 782666610 678355558 738646962 546636538 713573995 178113871 432006151 683317781 756015914 959818160 974756969 766109474 878175662 73803346 189161120 183794618 463029295 92652864 429400631 175564358 212983348 234370042 669234549 946479425 982892761 867293523 932761702 665747853 839895073 922752605 948938668 131736350 619011865 26501229 252808429 318285863 381321515 389444408 994787465 807862692 820362582 402875517 423777128 416323211 774785444 947899689 965778990 357906248 957371012 609768619 929503823 34932320 766477546 848953381 867547451 819844800 987870140 404554883 468365322 520534974 873204097 572217509 966718572 611730645 692523632 467465429 602632352 416519900 638982682 238211493 961438322 366287862 769286675 373105298 654469730 92880239 281249451 126352083 443658983 23607394 144300197 640804591 743648776 623179987 939154864 222043285 811673554 453106346 695959525 104618683 491917369 559539628 569773259 9045574 44335533 757942973 829724223 633731775 680450578 49055316 568127957 690003381 886490443 822685868 827567448 92650897 717104364 151428252 862956967 459336288 870435646 248262618 785037442 986403970 992029679 983050655 986999535 403634416 653352033 824232887 889046820 943758730 963452545 711789643 883961953 374857136 668144758 364764519 473006948 40860432 118677324 293436961 993008422 811432852 944757064 603843798 946485238 452315088 541520132 15417598 701326260 576396138 732130649 250176142 606597082 640581401 864407865 751025987 796752739 969412464 988201093 156467322 400921460 293551917 751357315 196306765 238316090 242995827 527404447 175561312 664843430 210151602 806825225 331557500 726043193 493195480 687620454 789771145 849030056 823224992 844721006 578334751 620324495 177918646 544813140 405881320 577935331 800878500 975333421 967157279 971104953 298431640 491921534 978497188 997654891 993848475 996801106 930331312 963508485 746678386 901550914 268717361 333390068 308190957 678389040 566121523 977869632 496333454 632967880 419354215 590088216 565135230 884069024 114063677 874558547 457754030 490543629 400544109 487555276 889259902 937932918 154525967 520119592 689064015 735696129 41042752 399754410 539161857 787857543 754912982 933515837 494781764 836354578 948412828 980714987 312634750 458349414 848868507 958398943 110346946 695177728 80741874 685784888 853887926 954337196 784305473 860865044 534831359 628065419 328266375 717463143 815120370 957836899 715476528 847964623 375963306 910513902 580133884 858143639 257781027 920999925 15169134 139397381 877144834 907693546 322034545 981413257 800458095 914825317 88091633 657771874 376074290 827906145 848841109 989554775 346507745 457964459 476332880 595660947 467169040 567339948 533024407 544493727 426018467 918265975 938185294 958311628 748250586 803471938 497841120 770150084 911937745 927853073 781801886 946866160 829583354 883098122 696803040 967574773 844490684 852750128 599329025 866177331 229961214 773173306 377976335 816919438 701617837 771072708 503827893 956686757 2094833 13211385 449237048 522880911 684614578 975656297 510647689 620363536 239507964 675995292 775717478 984966774 191992721 410431257 246286060 873850350 902544925 990163279 722697413 890668426 865382481 910692092 475691533 692932214 989965303 990719894 354750112 790545155 908304973 997840600 155147461 447332291 390340956 618971244 769854331 958338172 211471179 926253408 660458485 808723453 926833182 953900110 934178659 936802245 943841501 947104181 721479733 916561936 70406781 394925143 94299080 765012148 307680289 860464398 993894717 995391076 708328310 719126743 679579665 918360830 146084351 831107348 513985024 882823563 142919256 631457093 160182998 844764806 692774420 923432628 947179384 958623821 351632803 469413939 204549689 566515730 237346900 712540671 425622553 575574445 36797945 876838593 397363337 682381523 381255400 785745165 202593607 312817948 269796272 452135859 1683370 576753642 958542636 995836581 808612873 945924123 121544420 150446762 521219092 812328581 13522662 222757730 533766118 627076638 39706048 813172664 818891165 833178959 87661620 577414428 506020112 925624570 694308271 875636706 879139857 939868175 313996071 952869869 900463981 947531877 965662698 967358912 412669857 538796899 531663893 989314453 50609164 462079031 122562385 166949747 718839772 866965782 833715652 841386312 226261214 581546871 634248070 837231198 640824884 992086194 637270953 669670553 811760943 941795567 765666768 846016088 636147139 790156897 903799252 922202323 100033489 965021137 637858728 790632453 940891788 966226100 619445436 787172949 781292370 835546296 765956447 786416295 232058239 378914030 637983007 926535284 987675983 995458366 401445763 705417350 652247605 920985448 551353469 838519627 355292767 655905986 899289573 944196403 398016811 431225124 913347290 973801460 11366001 993541832 546470869 809719016 803928816 986816836 940994742 972123670 448995030 989514086 407125414 873418681 439695037 793238445 526292098 798529296 602515724 695809705 586228537 784661379 530803049 626449328 841868357 978376337 717398424 735536354 352673261 625865320 666149378 918383085 150942095 765586913 248999948 644885150 929911115 956564312 842152476 908954646 600451454 734876404 996706601 998956734 816870515 902613672 542254030 856135307 847242319 902156053 110787306 839201424 322117567 642503424 311635214 746601351 27127765 390066673 255838328 381452969 344385917 816173625 821147974 997007545 12479110 246989232 157714773 226375045 714874870 940398595 175515195 959525920 790369164 858038277 216247193 971312784 175263177 816504560 900330267 974727972 659478530 936953136 681501816 737036476 278382626 975021219 293551283 896958115 89039932 483703346 763999624 861349197 942195859 963913328 543663645 751775800 346045088 901715779 820688138 887405072 201264996 710961705 712201649 919254728 541405215 843897823 318075349 752411883 969655280 996073776 682811864 953796626 413215321 910936001 197007622 847265900 843845849 913323732 192395398 236055120 857085224 943116962 980444993 990843736 814297190 875730062 194413011 911911755 875197785 951736113 252580844 881399490 929942822 947780964 978349272 984921012 501065569 987424462 817512611 897389278 938989582 978570330 360445161 371351063 722698242 747303556 599003382 990707612 980946123 984487322 277703385 327453938 716567231 828076715 375069470 966764203 380800499 571775594 411578085 934266937 440609646 831842706 389232317 936160221 491358798 979833042 432936513 933633349 289863245 725271980 616759404 991548305 848506070 934857427 191702566 565612113 654131810 990473632 885499305 919982070 358376738 829587937 426063479 465313784 446494236 962358144 645015027 907782793 849641083 956673157 516184824 609738278 675380079 805413920 579208794 844442324 515233996 996020316 514576591 614959374 300627653 875175713 983077159 996733966 419821628 508472510 442315329 908263099 388051081 416992441 44862432 763081927 495371632 992548434 436106433 855443552 306027382 421859435 450631432 966638740 235106085 387127015 27488814 324927621 333637656 529647275 348386913 616349120 69649480 642275987 577909101 989685784 340535568 491814320 134148732 339191707 917268771 934994890 214133941 466983899 774196741 942162874 528716486 588729368 335464322 661643486 642150615 811013937 310856084 644824257 474980360 716979157 394839728 411570196 823171704 827165107 63250880 577974210 772147866 901452963 24236507 149024042 565721421 568566356 163909124 813325680 994600096 999165112 199136816 287290459 902167611 983632258 492629031 988882716 646437534 769699028 791702031 987777305 678218116 898927517 48151496 819127302 864514069 903002780 937978101 945726831 664177460 998153834 104852224 862189258 285191243 691737331 798691519 840227193 786763005 894639441 414316497 637414720 983341781 988049072 36379352 580206097 926598785 948469025 546251090 797412010 915469928 950238236 469141571 476601149 44249957 639001784 160669955 426401897 178627513 538571966 829049452 921718883 616608512 978752104 590831724 666692018 406329814 715825140 833827552 992312887 739983328 883996075 737668131 972786499 995523221 996796020 338528218 692625260 91931695 922521838 259048755 556098395 302829626 970477939 166483352 908383193 718998194 948298751 547258579 661185404 364218938 672702964 739232216 916004544 330238533 810043298 233967304 272872358 877667567 976537579 859550533 998952605 834833701 901739902 86366309 404777136 415085919 479978993 532941574 645933547 685690655 831577025 494613282 943264575 463053611 619221863 196015304 303617135 991322534 992506411 752136504 957158748 776780679 787555433 972303753 996950746 549928861 893290720 439544027 642859787 190822348 803694787 347503707 714273169 253209773 610129136 818066285 884878265 667261498 734257738 396000503 823881555 959249356 961441568 59557830 715847142 133182929 710512457 58726303 142507083 886399308 927221614 968214240 995687093 278155034 966851814 553124008 816774375 18260075 618166026 966231856 973683238 651303679 758946572 990830738 991293329 86592668 952301040 132238248 870941241 978864283 997936794 635520482 786619519 892222698 982714576 761578441 764493659 421086397 745380845 931914092 959789431 823910460 931759377 131969551 300902208 688245539 758201023 684948120 853967481 706886825 839307150 187570093 334067299 475211637 722185982 563000143 810358840 21356750 864636726 38004759 263113093 831063218 905683177 416411180 732672020 62613465 176432325 69396691 133204257 474490102 925187536 519371190 714608451 641487460 696779586 715119436 972992841 678812806 707125916 69350362 490777775 222033008 533902363 354554199 840103545 527227644 787810570 843685491 913021392 910722773 927707331 129145040 147115672 792943852 925255917 229426732 486303732 99334145 642185990 230269673 478798420 214174306 950861944 492727081 598205850 464202381 534833215 792730685 867849751 888040645 950501327 147294038 397018096 457737228 968048928 552719029 980496315 664599520 719877421 586628742 724059917 138204487 500316117 499716065 849200448 209015999 377625645 59014098 398452365 344362629 901184812 640864045 662364537 495099282 569666083 874863269 879955269 321546931 824988029 441887462 527599562 996237484 997751084 769391224 942151591 850069843 905637383 355043519 478758661 998043635 998284496 507147479 690011434 600890075 666640806 545593233 652173370 448719754 768499329 224664597 905137366 134299830 186458376 117829743 817136856 713998669 768894713 293076724 708820393 640770481 912853717 265170562 735834912 752722385 821983415 418984718 947913635 132154812 691115372 622652197 817611197 963871679 970345735 157351784 787394378 425103590 812707130 820544875 843080226 170522287 220625488 139142331 202294444 795934660 918555485 452335092 631464214 784295784 887093566 832939424 964569365 512489451 954575245 148892234 325036248 213363153 786019801 7985844 434523735 462543885 916615622 21253364 903861307 813839676 895970686 144483887 308265450 842358637 915222061 475290864 755562503 294315004 653840484 823850350 832175908 792458614 884148382 553479748 589639315 434522247 868298842 879039193 928813086 697550690 993331111 502337647 893444346 764485584 801554665 615624963 994234200 141837511 441825619 93786729 985782628 254743926 469956455 797162584 837996830 599079326 740120662 772177315 776216721 747276962 751948530 902178216 958564586 342485981 776597919 69956806 870369170 864363663 898969104 398563738 485279001 69378443 863541241 633187562 697600818 359130510 552127672 262278496 270088484 965890050 978390112 214549099 548269761 443926041 723673892 427868037 732320986 803064298 845808139 975292040 990389047 739057998 745238370 859507972 931501111 497630715 671458202 242575693 361639308 22440349 58105501 906826163 969970952 139089433 863503857 356583665 858219820 476377083 636920917 259864687 669167264 161329764 849147390 942596977 945200411 634472966 843217087 70185928 221082906 369202941 446756168 806740335 811002965 553214120 641489974 897220893 937133586 923467694 962932003 175394448 665587755 231880842 445048940 341144478 875116925 396601143 630620259 31177890 226697186 579688054 764817671 774242453 988605524 224117380 336499141 655104615 978361339 757732009 956185707 472080363 809871213 143365101 628803592 72176223 255100506 870614865 918352853 71298719 994955948 182707385 188009205 704330399 771906462 386270740 747012599 863834716 892283831 506515189 684473710 503251578 824916836 76002941 775487511 675770350 867927066 905291976 934370480 19003025 224427460 480990601 586504241 843776756 969816684 702838521 882056008 30498468 144914295 129677898 817462447 936379504 995644920 268146191 874375323 17160968 890012917 714957305 912003661 361740295 506033243 250237309 259780850 530299281 721823074 16329053 424795211 796841090 914912537 285008978 969720987 335524146 454097381 127347364 890051740 183713215 932002104 370818102 426225330 998903923 999008884 784044980 858596166 145829473 505968621 811586334 916882962 468200911 717800307 78913094 809915350 771261631 773900623 140870476 766223306 56301166 342168940 82724298 966526875 306966037 516590676 533609450 624365480 504322737 815284564 695598697 744497127 75871533 892734625 12189565 785572496 215707630 239414202 939932448 956076211 838302397 968370000 547573273 701884729 513825830 899956039 998864221 999274874 259711723 572627663 455111761 710872106 691956929 698769996 69207225 255475451 186384694 323548840 832554960 864201715 331522369 754389462 763401806 958604358 550840917 718694233 980762391 985766676 818873511 873730325 312397013 732572567 109024774 251707657 441269991 687252512 414965333 716766385 949124933 997383586 924534369 943224356 754657178 926056084 608226848 761179858 453255406 817742708 315811013 888538456 409850921 686170119 634396525 868082836 287681442 951253396 147194839 987249260 770937661 935490877 299457225 473194025 45598143 610499007 978904836 990975176 655969090 687183236 447631038 882453102 8971739 22239168 591729015 970896013 667482665 781115271 119505226 874899291 88309189 447118640 464642396 478224091 436898847 645276846 667787410 767913359 109480411 413561688 951314462 968756978 672239713 787337639 447133613 558737571 107107576 673088726 729395557 770290391 39604794 769169972 709338317 841897559 940228432 941819015 776744062 846081183 350504529 352623182 975246713 986289370 460470187 714813662 231699410 899877091 206873157 966810922 396586350 872666803 131389622 760891945 424675746 578295834 126898269 839863127 301523602 449278442 160763518 211219110 258522556 527620135 355451209 630074259 480874439 789978875 583522600 907642516 367262310 977285949 982261649 998903894 932373045 945439581 840886304 858923657 158100913 896821315 137599827 798748683 688268149 924720238 515158976 918960173 279604005 290286877 192919643 810368355 206374871 744537115 131952793 880835465 465006823 517594740 440959971 857310990 550327921 655173920 249261395 833022121 335488972 461694586 985949550 999229923 592988231 810187517 955913820 972294543 633448210 712087168 395316475 488196879 522914880 712758983 871691508 967334233 803914237 926689702 726083285 819652800 820615753 909709827 128938672 480523990 282195325 533063059 259095435 718813691 149996768 177253537 858101377 914176348 627197737 861259820 132830695 989192101 556902639 866738917 734647250 743143639 528738482 606354742 144072262 590288502 36422883 294748345 484794344 956904070 82182153 310861568 385743263 703400243 495445071 596929304 366723797 976254331 554892456 663885545 266291082 823650060 548022830 555715975 379959490 945290023 308327149 796434714 676642933 856886009 58493336 123684194 189712144 907134807 89714129 757675268 319169852 537354063 899869046 991261777 277636726 319264687 990829447 998581571 716993311 968810168 798417133 924632538 89660209 710200525 603023229 728834872 445881350 511609251 85544793 288838010 841353237 995096131 612261862 991526359 375523057 856976780 323657722 738921793 385839735 566823287 782998311 977688815 812252228 901262014 269238371 357013661 654346605 838667675 115272126 812880287 200632210 761674491 395132439 864355365 633185352 761864745 894744200 899963888 958287636 975011548 754702847 934004427 809761105 880419787 95792038 301758665 150932467 632738727 426284799 603382557 597027723 686473412 815762838 850486354 349097703 995587068 883933054 921399639 452275449 794558830 808840393 918722573 861087249 943907930 266933665 679081788 670123904 852368494 919193762 951609647 835317173 927401966 90380720 206080264 905142145 971283477 176685021 488258201 488162271 973807306 390840066 884223999 544595804 908448799 756906960 814075577 867847881 887388117 247778494 925894172 378719990 526011753 508564166 842827981 401828169 684803792 214582635 428082085 104518147 589558490 671948126 764513113 987816227 996334081 929421534 982424179 786178345 890329431 179967661 205634729 19357011 295197065 573656692 775079776 192595240 417518547 550836345 676877899 711885300 771851319 598344681 917978587 840629219 926978268 103576624 770200853 191238143 624610354 974933832 990100535 887146178 988383679 156350063 587670318 878319229 982820598 536572109 944456796 397043079 511768031 936148818 951385587 126473786 138452717 231689716 930622786 996350270 996487688 819541859 997803752 461200365 563278892 961477984 989007438 337715047 697032071 809285871 998250027 728829883 760387456 66029274 337579182 58876187 917595000 597988859 666700679 480040471 855963351 635859262 683022277 947628701 964412311 92681726 430360201 917774687 976444249 678207839 921273545 936048581 973707182 706321333 741362353 372330441 859060254 286754714 938155451 367832408 732736824 748294813 773953566 183783751 544304035 314684781 380159273 519739618 677028099 917464664 972102185 627740950 903303053 481562612 612900388 642040803 853807841 711843551 772342984 134040088 509041234 631127553 670913190 192309438 888126495 305658750 682861829 970353166 991556935 377888105 886806670 673053311 783200230 860047891 978801427 17226017 364988303 153046946 406820688 242588384 434304066 524090416 804528820 648485309 970172732 20807291 183852527 153219208 601637682 362071227 470084782 864224692 930871828 43135253 980922201 669642204 693171492 406292885 577486762 339409521 365618866 771461691 897430665 479747337 876964234 428985290 526611837 249855767 475117023 807516957 895404755 126903746 208878012 740682701 937096247 371448414 685662703 697463289 783624073 949074838 989651495 106827695 965401865 30946794 346379237 498953749 811978757 906698646 920649281 517558186 813776492 858875539 889115422 459142206 672427344 441915790 801845217 515847524 909540498 700225524 918870068 378555314 425887958 729718557 977613518 443757318 875150431 649865681 954913191 967525579 975983416 361304050 808624562 391121933 841401321 844071007 854643311 127984970 189077010 739245614 847814711 303842276 893947514 941136175 993819255 22103126 926880326 413841267 736664512 632108262 755869117 639184644 839913420 391447750 526780994 818735979 975290477 286490979 732186879 665336694 775003447 171140744 905095310 468259254 654215796 652133650 845998033 621160286 832132425 955702712 975815002 907541244 913255770 495669818 867630101 68175524 716570525 75202553 656452971 349286191 931118933 581555384 888814876 609774667 718643264 790344230 942752037 127052305 748883368 442482039 622676392 783126070 850716601 68060305 681112182 389979477 875621187 401280103 720338262 884332576 884961575 510196535 822878980 245554224 319587256 188685821 632961270 394412687 804927460 167132461 537510335 276361032 638707316 489297011 781772437 677436353 905605677 845187201 894250351 430776896 789706445 506491449 762885485 316122900 571463658 106278831 781726531 701033023 766179682 748450338 912721191 124685723 153000163 114185847 478898589 441108528 706169522 594816414 820960200 80396478 316004195 508424547 729021914 137552439 943463465 785047869 850230187 103199371 471206144 516018610 920244727 761598329 936547003 283720320 502303223 309314275 613916220 186529368 389819254 631248390 780983058 12866478 466492880 960784353 981620303 137545775 508748511 192081381 749520859 855926844 931637354 501211852 639097510 253647362 338972962 766545095 845448321 13269123 993191381 374494462 832297767 892214761 913814654 39267142 359540488 477772674 628189903 446945687 700027593 232550743 849338385 122516117 343056540 515205117 690173960 323030555 502369219 219210335 835404882 365893555 398404804 832333723 954534159 565237704 588421444 148363478 612982535 532672707 997703508 357055420 996892256 492750204 513660506 28866007 290732923 350454712 403498805 440387466 567946185 189637885 581637236 774319893 813116563 548335368 940045702 459277949 630360974 917125069 942775175 996071851 998568100 211503467 553917944 878385491 918704965 591252587 674440846 585207999 682900960 514675058 762923460 367687435 444083167 397934469 606460804 883958258 894069621 324258656 982800978 901287296 960870478 947119937 963548367 163917980 417507019 227556058 860348953 748925064 838272809 60889829 775686195 989785165 992500683 309716687 633857667 586055886 871810681 309285290 401608543 816532098 897854072 243824666 507163629 989745294 996283755 437140030 788127697 315072715 334129108 663706520 946714075 761014233 978981577 801864335 872207651 495154829 850529036 101781186 498999203 808996551 967052959 97223028 248024203 627445606 897662522 650018948 853121805 685824281 962486661 842791602 972617929 220872368 707186682 718541783 725457697 219202002 751093662 114099617 585741288 967899008 974810419 703208994 785827664 652171133 909254425 612794680 920666767 62468172 279663941 342802586 709245115 807309185 869796406 406987459 975742001 337852465 406128352 915748343 935209018 700705730 979027532 162165818 679093331 30081377 759740555 640879535 669627003 871432086 889014371 397761898 629843967 240471347 835154341 744126794 951138496 679045443 994055911 39805549 957331901 996486717 999037072 833322165 973947806 830857980 965039524 530292531 666341897 596080446 625436530 555550058 915977112 622907515 747741290 778416237 923784932 31059579 748127746 436103950 987851699 813258342 837981625 15916753 70814907 320606078 971092552 610281352 739415709 653545316 962960334 205981654 427968443 520079506 540193129 893209683 959005641 723250368 889761351 336937290 356176922 857640216 974311348 706113927 732744608 839973604 905051338 723047997 833034133 289415504 663085297 679019611 932521838 739763087 878785569 669468590 744279717 399676731 884129522 591894926 807561810 544057361 872329584 604412898 804558065 777065414 792295285 884946178 917445380 86132945 155386773 468200755 904519210 764322429 826141371 840484414 895829814 328392655 919449471 304180903 673322322 393503547 977115102 812576821 978041073 208760852 967376353 141305199 265304353 630661862 893381381 671343036 807413957 596450741 973641198 481534415 484687291 363129612 475468903 102743050 587870660 749559038 935009693 77664164 110439495 275138771 399922257 292036469 940136333 916284 150576552 250791990 795026610 602652414 734943705 925581554 974379861 462765259 662306416 654161607 743900078 391413280 968311917 198065340 991115751 417809239 924010313 395924085 468026181 526506825 915761943 974940821 978691474 223565158 719855184 236074256 506114540 432282650 541409325 233460159 308448519 863923620 915926985 152279214 686843239 588165352 952731137 516267671 546584412 341858207 389282270 38174270 727156272 144813910 330840828 871848597 917717718 790146993 970878974 992390239 994957021 886234681 954176617 381262073 485735530 602104681 992629774 662942704 964660468 596894951 835101868 48243427 80614010 396197428 999105656 215359291 644843172 642287550 965347966 940444940 953768555 942269682 965705401 329984073 703437794 22241125 64903139 371760529 992761224 6917958 163175665 433145001 577923204 942919279 949603698 258212818 568944254 374633763 381472133 492422107 601883099 624068255 797002033 967836504 979878606 393223072 841523782 806549091 879222951 407887906 828047351 794365077 958991357 548338499 602615484 726541980 918905362 216579039 811472904 673304909 935016530 753685632 799775162 547256213 665022895 282514910 321543066 355505393 814198914 451877217 654836233 528230159 671626698 163373626 938108617 40967213 525759456 289074168 326226549 693271440 870014617 34450493 92518041 714958322 964792754 245581807 718924655 952933339 981494038 319132088 691671862 272628306 955332570 471316912 715347322 620406717 715702274 451574791 657656569 692351164 772762689 191733108 950537322 348004951 895578911 923405120 998243990 58426505 654825927 538633436 866702605 264518011 812346798 950386512 973292479 32990998 835726251 988839678 996445472 871576876 910552386 53769099 646988236 805541563 835357885 65120068 133477730 79332741 726400952 488884069 511765788 298699912 713009943 320500222 373929192 32000151 758596998 250156056 297818377 177069514 754699093 361080907 517207113 414506909 905034638 896841695 962512800 302585412 936555000 886151753 902547367 37051441 554551604 196961495 379360091 295880046 410877345 251973984 613235050 118957324 437414474 903790717 932426816 284392277 666163078 622304700 639861838 932745829 995892946 643848726 965522920 805537930 826961141 253137846 254498762 97727759 626273326 566471168 723827135 240315876 427137376 583405230 872084620 817645482 843392901 877358353 896108733 426264080 697438588 779323230 940547739 646364477 718550632 760354313 873682498 835269147 873635922 952744851 964485767 350641996 515813765 940223218 985030443 142159411 320198481 487821287 717668275 660883732 751426041 997456886 998762321 881243562 929560299 182368597 233746001 618494699 746577065 187011055 679533236 448807101 537355818 612753966 752906202 546184129 945847125 928951715 961660244 81335955 451505764 658717652 794848953 943155076 977193348 592533219 740753197 82952372 881440981 578613161 750332289 784880277 857868220 472145972 919177710 383005777 811809254 908837537 925660146 692046521 962879708 661838231 919861206 949597956 968767756 975576460 977863439 754911887 803471305 677444064 934353959 520632481 546559645 249817565 920906362 662506549 674064003 253228960 733678006 655284824 914232335 582709144 968948450 552616151 927946250 281963071 531221517 600614949 625067872 975537217 980962366 319901775 413174587 906072885 958612363 803778785 920019516 163523084 792214091 587324429 722187977 768621511 871216537 274327648 785851369 645528093 857800703 281128367 921945868 987409082 990564057 513108190 658145000 437053966 851810938 677342462 791760953 309566493 391907618 671282143 687116560 60702244 944739707 373157243 690247326 828779584 902324870 287801247 668780857 47399828 998032237 646559735 749531663 819103816 937066233 511941682 816870486 592575597 606583561 35473676 942227195 639192133 791259615 817389897 948440874 586023178 903474478 482667423 619634530 730035181 773518978 270622921 914573277 943155571 959930398 163216253 405188719 907565127 953622747 717443882 957206595 840410831 951837343 195678608 687941342 872048981 954854904 524707753 775101546 938882178 972953380 718940713 833893057 662183126 884393812 198682702 289083985 776700600 994241701 534926063 542165795 159041008 482253159 753829276 850966775 324739928 644220136 103042641 958738835 171846602 634140580 997350311 999189574 263247109 302310716 616278615 993676192 293473675 814697477 627419829 926108716 855180378 864731126 349103080 425942392 383515870 470736298 748157326 785703271 163043014 969441210 216994401 299159450 993618776 993863408 841601806 851462307 48307004 189705165 546444267 862072867 658975646 713043144 617755373 845980858 537293577 572075158 93642012 174306979 322039010 401140180 927427406 985354531 313669268 590826927 439456841 622775640 547035634 885552290 81438835 327816608 590241141 647658699 647234754 981231660 153466566 502957892 568835418 695217535 134997055 574984565 301598531 363963156 962788981 965724884 996616258 997256110 217466731 671011383 338117920 381366162 426648297 605427845 846187775 849673891 228113081 771606611 189526681 229783194 201795338 734818766 256374105 954566982 447540279 533787135 272965560 940192194 19566646 27745940 862688900 995085367 316631303 517738129 932000973 949018120 936828621 996143049 339557607 469629632 20455621 567089897 726337730 993249116 580860578 638117825 256287307 698818856 286612209 763151365 601459977 889503043 615570301 928195821 511518117 699363568 662389721 836254840 629244535 655775513 423145026 799809294 416962513 501544072 514102114 961192234 564875809 997512927 796033354 934190972 352541939 572588366 375508834 807186297 653871642 846728851 52012763 323476726 508685274 854083503 592161262 601166414 67281975 814161785 659694687 745671151 273945944 578141722 791971961 931118542 487229234 796968298 274529090 333099852 402488367 940454346 47978959 656184910 164912474 745901147 675048203 887734326 67864721 486553708 674106154 693624110 511237503 708064020 914912873 978128774 557851071 982743536 671857152 900464157 4213247 700561454 213696873 234440587 967114541 975761629 353328509 454036238 869365577 955815030 95838239 259250042 371143123 978154576 429036870 523480082 43218130 662826120 146072936 150842645 498714915 579179939 309299169 646752056 161352015 743173767 872352805 896766467 726663286 918895608 265738297 864393229 861171884 936580732 810998424 843583468 910249329 987019505 474926419 765928970 993132044 994509742 856320576 964861465 303028982 782704585 724625531 783357076 474802867 650383483 758944567 857202616 433761026 623428736 744678827 748748437 300819423 568197366 502345720 971478406 243016539 709627491 890994717 994861507 385469569 765552834 292308355 811844152 450676974 876256494 750691497 883075206 600842957 921866292 302520329 354133600 993567191 998135018 453486095 770925336 828504693 887529081 475412723 624227876 811715372 977835856 318230583 789821664 746457606 895662058 531630595 561221391 383198416 492451992 794844595 960038453 53779985 554932079 419615374 436382956 327244209 701591690 657103985 931125645 218629335 468366379 394334497 732248242 214676212 514084133 634873588 646898029 857991204 918837841 989175811 991137142 741853425 982497640 81062692 767080894 396282684 887605858 711032213 897291657 92183787 428718302 690652600 926384347 150063206 535623573 510144681 786439918 566109804 792272520 89464493 857405851 771984699 989834897 417580046 898238573 725241872 912641631 22342771 441412575 415374721 529870071 198332507 276998286 802810818 835376662 437700798 546684423 103502204 782416799 278308368 560025022 242547714 617681245 880152723 993237376 974166488 981884567 649514023 732300680 434894156 928038280 318875499 665305201 753789436 910366519 392032242 699715172 485618011 777229265 214608545 401488359 10481889 445848196 141321615 664503473 62262483 695385703 542665238 874268816 868774796 947337582 99862268 546374651 161233004 281882642 147230239 625228611 389267001 873130900 553546531 680144572 843268123 865765205 361352255 372783202 624109830 822549268 93024892 201996143 727390859 958451356 55967472 334762947 208957445 238804270 308509209 626925388 476584790 970260306 896311724 944934510 821143039 911957015 672806527 811641220 952754842 994452142 916580638 988337318 702770839 885593362 890021189 936829052 935246427 988185274 857003880 985420271 155986177 561321804 580170157 882444383 922648299 970583241 222373518 649677930 457275177 560413037 267728459 362752436 15527119 241950893 827792314 997609144 769448162 909594451 625846406 748309842 992160011 993065207 3707302 716829030 751232910 824019097 362189581 660089543 466634419 666887904 932662597 966488716 837059786 950605784 88835374 697055714 321419239 819774490 26146617 620405008 118430425 385795537 240906587 928240001 596323492 820686624 809771087 888812818 851576469 937329942 417783404 660553599 605316346 832807756 640484975 796715821 39133256 441226365 54074185 937966030 601135488 621378376 398733495 477006112 135723493 674859164 756161065 956765928 158063860 205740645 914822397 952981008 530347497 616374753 850337390 881760107 170072280 396040451 813173200 923968591 375182201 694825938 106099981 939801774 193311590 904749873 2351880 522797575 101665012 625512786 539929752 992349795 665692662 691584833 255505448 441582358 376070415 539686408 637971484 959744659 964994272 983495425 99892547 347000872 502811615 720773804 541782529 654584456 236848214 470910500 93001894 909870796 722073557 883896235 585140841 862343577 580526892 640533716 534261831 815252578 828609487 901643690 944910425 996123013 684807710 963208007 74411087 493266202 192623476 207386415 263085390 666370091 161404957 390970443 832531743 955764661 300216057 607649041 981762667 994102570 684459043 855306369 703594290 965288497 384356641 838862331 606288942 694827311 211676897 641570052 412906046 516260969 45515022 164127920 847443120 918864014 726317273 963592211 932837436 987977455 381233913 443938555 962892180 981838989 598385407 987816970 544211209 827162581 679972878 817395394 918594318 976365840 972844593 980637132 693588120 752738792 155575725 911671476 98585132 694745838 63532146 909136783 458821478 500432371 91043652 746390556 380486717 633889119 18015723 313019709 411400303 950842645 165753048 504277167 716915683 745851083 266116642 975139882 998758296 998944401 796792528 923827015 743285178 928104677 593848127 954493389 563941617 978455521 809972249 972851101 78825718 838353892 213434867 377730919 822742009 937179907 52407009 93332268 940817713 947785542 9369969 326761698 461015263 917642809 921959828 974441562 866482346 911511097 582800795 700389045 847265572 953888303 942703194 950275540 843743376 875659095 721905544 868830897 805645253 879363592 4666681 384960308 605859974 854708237 829601444 863392129 19653472 673048696 938307989 952322727 129922753 167884980 633959678 634051316 35032282 247961166 836367919 884943461 802565769 938487180 554118868 865128231 356301857 392956407 381534615 837006641 31465223 615303033 436950764 950215041 477194867 919218591 689602167 708733347 93237472 329872732 427522818 452125136 839522472 907254075 451884578 942949721 92770023 849079817 873782280 933529181 738791313 797012245 692432957 938831632 319710222 805944764 943973464 961513192 181294359 530212751 84254375 640258467 941480233 998505241 209605053 374398453 241069450 970553648 537594599 925560799 427976644 782322523 903829045 920552511 960104069 969387387 891896082 983346670 707163744 752519210 362504550 615415216 655787205 962426241 229836023 786736638 658242032 859624867 701831596 800582911 44980888 605759677 726001410 927052892 469028236 587879505 51844953 194697948 961008244 969077478 965210710 995624084 267135687 365154439 464969351 612763720 490221979 530814587 678281561 850663408 976445383 976628531 449015542 967262671 584833672 829590640 884740285 888831891 889449009 941176315 362306200 548651648 405667960 904418314 480187296 946888627 467757374 976086506 803274208 805216145 197925593 336949896 887375278 996236838 152892103 671393208 978559937 990546442 482567889 568198044 681508644 962620761 430559002 951448550 881175653 912270982 688415207 874222914 708045350 870241751 579652912 836032113 428034473 590097180 881941653 904735937 506401176 558882011 449502371 520097542 351913807 754476968 852027706 912342795 38732579 219566313 462723015 890845213 840277248 919636763 616891692 959803642 226330716 820031229 617319065 974931408 888921968 966700605 492475088 890933580 84252713 928633848 751740145 870907118 251410235 662322265 745646099 990221704 793243128 853829296 409455739 632319332 195572392 276621582 417380478 750875539 998486015 998652980 389873151 625322441 491275664 500974885 829095367 932012470 806727216 823446239 303248258 584357495 768365061 789531886 336202772 355961885 822240483 964612226 686864391 924045805 689816576 877840784 466508136 634407294 26519722 259868944 493158572 772808954 120947130 967606020 712220503 839945612 610892416 685614370 830148521 917597285 867065851 932916681 912945714 918619471 509709381 511016599 592673808 645572755 847532158 919751944 149777781 259494252 708289914 947066871 305481377 411007776 955219641 994274206 783178294 962541504 610740834 662429866 136943910 318453129 236728189 866918951 596064810 810645205 26177652 848400090 633733472 892232058 869120465 930152616 283409164 465433044 742867794 938003797 861758123 939220010 353278880 562486255 761684311 830302409 292364320 390303844 153285533 489482887 821394006 917180708 244644642 371604208 692686548 743553850 325314890 746104524 600032467 818443354 456185452 649770173 138182920 363504725 550332004 877515847 310079581 897016607 889460149 991516723 414223382 953942848 372599390 642013477 913024651 944431033 383188732 671872253 625925187 954436468 765756669 767497863 225281074 758947263 840799255 926221496 721612579 870756399 408574604 719267426 796476768 816387660 130780843 436239856 700875947 972196195 489819873 598582859 57855039 584224285 603605217 977752559 128795767 211560492 283578461 377867136 991404929 998115126 463608817 643597991 382907403 666065555 445333874 792286428 498277505 737599007 655799385 855459244 867599030 915480173 759010346 832155439 168718139 374206964 154125197 311650264 231388137 982835342 109771366 958102653 876291383 921256545 482191735 932058883 757194278 770580330 565137306 683662157 846819110 892422353 955552488 997854903 475314759 625568666 555019186 676916075 523971542 560222198 255780265 316802850 828571543 947331605 448753205 701899528 345030345 860007223 820725223 820773967 438847187 770964190 82674869 253871307 942302510 978156232 335476973 850257251 489813111 909425620 603899758 702302191 621578698 929062173 17031894 233214549 451717673 887499153 452957420 658101905 991319561 997956892 297504385 477873814 75523017 477133901 901694128 968120226 475082454 601408387 839278696 925138389 582424448 629687443 796331104 868445741 272506401 589196044 404293396 942669111 631141108 877360605 347173632 709980712 815041177 965819975 463784361 820240818 694493102 803492816 461971378 877454050 807965316 821330940 950560113 954157241 774684698 918265613 248962772 947270139 73615289 273969968 606082644 908220248 845934281 980052526 991241561 994818629 736043227 821522073 64921710 101144152 95615929 327866023 436743469 676399984 223809693 610645657 874815780 975486337 37579164 483045352 194171685 387028027 931774095 997473020 322650244 689943370 8573464 496066282 122504528 612361887 677279711 873399248 204936159 584099936 967705294 983609928 278025770 935920200 260934702 285246612 458543225 602428834 380714997 958212080 665881817 848110870 350737879 400384893 777486399 924651974 157443747 981693626 800772585 827323706 828875032 902329693 240778684 361318036 460933340 705720669 382665955 399835393 697196509 838234669 835238302 965509259 343057297 381952556 766970382 959977544 835601026 934843928 205663061 956546253 397370328 814978520 346381152 464177209 397668401 796430469 919661071 979753022 795836161 909259939 144216946 539429195 351581845 555989946 648280607 914979024 925102979 967409214 103916928 974499729 596010338 907136046 888095479 911671516 476473677 685017973 907751865 936715616 488467407 955347466 149582924 791316740 176255477 400062366 937735300 992942959 963928167 983319871 66281381 966119934 602886233 836899398 114565859 358232372 118642268 772560815 918587270 952651061 232070046 321519505 439902616 602031931 36464154 723638313 365372203 491984724 759241985 981805199 554457524 567744074 876458575 983084384 485109913 622740786 516637040 849561053 588586479 662130488 488818530 949340708 686559660 916991182 394859889 637930344 758693364 997838179 851254283 935850093 491405401 766134142 238539464 619384034 609878033 697795471 292608072 978553822 543196468 764361667 552188005 577199021 778927399 961999310 711900794 993812368 682342865 951271779 798542558 972151190 403768565 473489115 133860074 542163759 311519784 721363200 477094357 736904367 955728419 975124253 166129383 297342363 529385951 857301297 446340782 717611162 775123957 982005414 674521330 851613263 458710276 767346208 101693104 564388825 421386229 939501721 260050906 277842158 427320186 613579861 444048617 998619769 776410111 914898711 537231875 605510462 898989049 967846724 858121407 975382952 593600160 811811692 381656053 741872332 996163516 996272039 411968031 498705658 238087592 328122073 437090313 799063344 64067143 377153161 413504634 646612892 58927008 101288788 323757931 435806830 498865071 878586078 473019915 881342486 824708354 899066965 941301453 977051119 765922262 996815517 717156370 745646634 621055295 857371982 553911193 886457948 199875313 839078143 722036192 976827178 862058927 995298831 36464255 605700026 606604111 899879710 745687961 925053927 361294151 950350493 136410291 544315608 697649708 932411241 912767447 984405726 267353168 718836070 939230650 962787125 22151254 110878293 510373507 861416283 835391753 847227814 919011973 925776061 865809396 880665466 754592442 983925104 605505226 798485710 171080603 922746714 306576599 470256273 725321962 846003043 308713915 954823634 567362810 898623159 144602209 197805018 16588696 52164258 54245717 358731848 687941615 901852016 463956771 759264620 539131219 570712204 527163099 553525858 584314011 627369241 278306391 344801112 584020376 900193657 760510614 867492231 796891588 917637374 765304486 813488924 985507809 990306783 318918860 828622204 326334678 718497459 287856195 938499366 806881675 897657174 908164162 938677680 302007806 372638816 532002943 763893935 92221680 134580610 180410398 285409087 141280383 200513992 975661926 983428260 160898942 207802550 393911476 465640342 270795114 924596089 240692394 668384859 573430220 802767907 342038159 483145691 624212952 717005903 205734568 404106571 284391804 651142195 970019545 988559892 559623434 699544189 75723399 490852757 676106287 950045874 589300411 956209388 935989294 969778676 175031941 608540927 380936267 537991084 959866231 976074165 984018444 996866235 153539580 707949104 717662606 980405064 545941588 987778137 772649263 913540434 216910578 803365398 729487789 846242280 402527888 525071991 880347373 996567754 943959804 984694299 860743724 870248340 458987824 623642524 858630713 896234373 299374380 766210094 419227528 443959606 653733757 746244702 937567112 998944896 253482200 413992593 819647522 879749350 73969563 755307726 247948492 443404985 778317724 789132212 18399357 385937979 341166567 566455351 291880873 638462618 573221846 741533656 314964053 788809513 426535059 738826719 372951803 732411817 471246143 993899951 896616024 987095820 714243230 991957258 28292913 977561822 58375515 340087987 750740229 958930503 451381073 760015820 754032284 923234240 370385076 685461959 215614868 852724011 593940466 788617448 206519784 214914975 322793422 931590279 255206076 302386570 732095140 837299622 298191639 609945012 969463550 987206734 86465200 229346588 385317569 417224464 552025173 783949595 887557383 951234933 705117269 814004086 246582481 274227439 192356396 621824770 365582462 791467891 201596000 777811130 34642600 773576476 15926421 890318258 475144260 688476841 621768798 944706925 22245286 722969934 686823752 914056904 661183816 863545123 841594879 898250508 346121403 507461667 599962066 988966287 852513339 976389698 291209820 443690405 696877762 866879737 27406454 726076783 830504605 879935491 229403089 289830633 327102389 486659491 270403851 424315824 666025589 824908102 296106977 341776627 723961286 840594468 906635326 951036878 866870081 945705785 535531335 971295547 364494667 446945449 678963817 724043999 524636687 605455620 763515025 946691547 959532424 965223286 598619822 676062806 344301458 933676743 192876556 437960710 724312314 945019498 514242221 919396555 663011991 929183508 146360923 283250731 671534616 789483427 610245398 627192936 288382367 992373692 237406485 493108300 659929950 988413101 589921922 744506630 915338253 959420943 480340003 569879226 605603739 810470088 471859143 661164348 461056419 746174867 794555520 953353146 220583861 343673507 30337733 961577025 737882746 761466167 938509013 997788478 345876483 357950489 562098582 619590107 693626866 979648389 527565997 735545296 773747967 851984568 369576910 978739806 696075184 856932244 299789939 731195317 995327882 995793561 349772974 815922570 865989554 912315169 235499833 680546710 718291888 742292622 643315013 755185791 954049298 976368260 486768893 696733071 35236457 437354374 671258405 844961050 115129481 794706098 218764849 988169898 245402742 413799174 652417433 982273549 766661738 837871627 846901622 932076564 545367459 627569518 3065834 368377214 503387928 665575891 374916887 972918857 815055780 960325251 663531066 715137665 955020064 967490442 489188528 881804896 948915664 997119398 944827290 989072450 283831133 500327667 872263605 932018736 733444798 841565248 514818029 776322489 581680955 735181274 177974997 765325959 132269474 448267114 336877178 368928327 917006696 956827253 719415960 822609928 61677426 266180413 620783297 988664591 222809405 322397895 670894544 717250056 104285849 657637802 915144221 973288066 237265147 639854975 203405620 975204395 82046109 437350082 789832678 931518193 117616810 959368000 412300579 518697904 247935810 798455764 82570226 271066947 878767510 954123890 611139797 759161235 364891955 806611721 15225851 276813859 703701031 906475842 528488512 989138806 798383411 923802837 659198553 814657782 250053702 955361017 536568852 857719340 423381282 672836389 236058627 630305088 341461646 723433265 541554427 887445916 13295234 561986104 60360667 268799525 478235883 966832175 105420098 518785788 973115713 985102574 509307316 521617325 124966189 901772023 281401548 915231342 328872962 569213770 416144887 770882978 428764017 839361725 312038255 405371619 133931815 667995609 480169399 642353884 82383075 969700021 785592307 924483353 18744674 79969281 395788838 827393724 787452284 939184783 253435281 627111826 453584272 500873975 344069375 931047042 466083770 653151858 249500915 609671633 157539956 693460988 847234307 945614703 193476852 702983583 541425537 617797642 177979922 827670066 577716455 786746800 445680207 979595528 113161918 642883241 696812325 784505460 944685031 985189343 749815144 883884684 805561924 922562704 540985399 926431154 401385050 711770877 946265441 991184467 119984516 531539540 346923194 454270675 570985900 663751379 865882180 930026497 35294488 90781576 953579718 956601882 385904460 766100889 784494050 824021661 320661705 393149972 783982034 920658036 889379047 992265296 291252455 459698117 885387989 950541996 748563262 755007656 610268083 867565202 396541578 622206234 348632155 677689201 137562603 197168278 45056745 388221530 210862783 657992749 561055744 701461554 170009443 733025313 782498760 983511457 349972068 454677503 440389624 526404172 648329429 654051852 100584556 596305964 226417323 255563669 841370556 934395431 603247875 802330732 406335036 668189186 335309085 871222211 900298177 963475077 580891461 818246511 936564994 990751482 480243206 744248530 372230115 646667741 863893865 880044107 22873440 828025514 841660422 945525749 613049730 871359346 572547926 784465197 126638364 754034519 961326917 983053814 136664337 415960613 797385327 798719831 907887989 980591222 539059192 842110750 175182882 805852397 80148566 285032698 865246554 923703817 141164564 747300249 18630358 934746572 77875366 883972987 562909551 777742288 211767219 711272940 501734555 955528107 515525049 696136008 693664689 998656796 281819582 643670622 507052465 628895437 696647098 794280619 194356815 662781587 817275755 911145132 935334404 968078396 900872415 993801839 714757043 799924495 792637882 969349445 499715168 554771475 73574091 143332984 331887286 869510338 228484179 893227226 439315484 583282270 501067457 751648877 146740893 991100302 529308337 771886658 619123757 913777852 240111431 905030086 952692657 974170412 607706056 634873192 539647964 753621698 707636402 821889962 752421924 875503892 666076203 780305763 26720093 726565283 107361133 481599981 337811995 922035057 659545676 922950880 251728618 759049193 858222351 867420786 51980323 373185001 94279231 194514082 277178798 540956221 111543490 981367478 262766971 679224835 709261824 732752274 408808452 832039762 889349732 976276506 815250102 920365112 579719364 976814678 984176971 993965329 175604155 233576986 322468338 530752798 191862077 797899597 516152381 980231720 9062873 219200137 733647204 892959734 384479474 750813486 78981095 917693361 791314836 814500069 656099005 884885094 541964950 591598742 67656500 361071598 711847929 723982504 300816932 318046910 177009505 593116302 989233825 997827848 742880377 749669382 51200795 94572571 341140299 778918600 94999990 492614496 655976266 796436433 100847360 530710146 778844213 810421219 587112367 649409698 730855069 977675914 877082615 953813119 4548533 354497677 208919650 989226450 288852246 415827463 971657078 976757478 726123918 932918862 279433006 909986994 574482523 688259618 963253609 992407990 858628595 991014040 689600547 889770690 604314250 758437021 505539613 606224704 963053477 964128250 438823916 895246194 774746464 847506719 699482954 721035703 724839037 823537481 543004244 690979631 19276605 497677182 884447718 901555204 154793405 283050230 42220538 359036710 52566612 246935685 823669050 902522406 72259654 186566389 403205029 670019145 712422027 847394451 66907227 269428397 232965293 623785876 449961929 529216900 113767374 851487507 880862529 910015274 58516120 120530219 790461176 981915997 74881743 967756411 991759298 996600851 834526951 888493384 175580809 352548734 285845129 754545006 24939903 984632775 970046658 972524099 415678637 811675919 309949213 718456831 453959832 819588152 938549395 939968576 470952498 673677673 364366398 365025301 758570602 812741181 122435633 653448031 149463760 172513438 43344502 727842553 318314297 750622311 682947193 694613712 960017853 993535063 860111223 991220304 426492704 742441739 927827044 951798908 572627044 611743202 670732143 950600574 301139931 342106416 256572737 856315033 722673232 965457373 33065516 156233053 890429788 923794153 837950393 922833143 311706170 812710080 794214726 888319897 498156298 612415232 553721727 652860152 169612899 313442211 286125381 853934682 839416922 850359608 733596148 761351460 976893353 990569496 609906483 865031751 872776145 919557136 956246367 963419544 899917847 987657998 407319007 841242289 488060934 590814717 457001642 770507074 668433379 981144661 629918619 788639194 695322218 834242147 122976719 704988591 446921220 598054776 335521999 838449602 147054055 721591108 214330353 874905207 594897141 825500431 922242001 932964131 35440102 769547243 73829002 284584296 504209819 668836453 417662166 599535033 79781248 968818449 582756477 590587067 264359252 981188020 717580057 979024340 21964539 934263918 956640286 983690267 590544942 714849107 953511221 983088307 779545619 793582837 904839053 946907981 363381616 973276668 145714404 211973088 835911002 973623297 731210142 746303423 416884147 857274338 573705772 753953461 992811460 994828494 522549729 589345386 449145546 598862588 329438266 951271042 96465791 189613010 635366316 957325343 333350286 733083140 360612243 889345978 246430289 423964645 634101249 932343669 623699301 949390954 240830456 367972470 505582318 670312064 751349784 840286589 65825914 622180112 366456096 538756586 476508694 775392574 582748938 989304205 174105618 323661067 641424114 684706554 6112520 120565719 572602087 776681559 549839427 947597825 377606427 416237145 577020810 750682671 932563952 997005555 628629902 803203294 406256584 447683816 802713275 846274070 711484783 823807796 904050865 970573055 595704025 920594732 255147251 961731984 267428677 465586043 733106711 800672952 592676615 988264667 44961703 978831852 794963665 794976821 51390060 156581880 346490648 852433374 430845111 621727306 177447270 383505936 659984129 834492854 758984604 855812845 342593590 843146304 707605965 920838949 690550284 892961693 959755613 983999194 251585377 834737914 404916903 456560968 857088961 935341127 100027681 651717064 582819387 611664085 302195260 409634236 639831560 890273441 174324755 639491696 454144473 781833873 465759574 923717781 662861166 744654303 1900348 410134547 182796263 339207884 471842939 952157534 379298671 822512473 235578857 570242411 11195947 825135270 668213749 962396729 511965169 561238768 850307260 910439092 527902806 662464712 291890487 781939328 890100251 986087865 958404388 991245314 33828015 582138118 751980575 871781932 603507549 655211165 950231364 989562564 378184420 753624474 199256012 926826280 614331176 717763772 470900172 621949015 214257639 226054299 78740272 488683050 550877589 900981685 947918161 960111000 140895915 349836504 683701772 985233176 549115324 918075154 793331421 885078673 824139253 937431100 931220563 976604055 531355961 618827915 143236439 948880910 355345999 509888099 342212452 573291035 140443037 726617637 344960394 638967427 533430062 708208751 256749780 950251216 604541386 651472302 830682056 868510439 948015302 993160348 1611387 693062131 90059020 790354008 643521901 681276505 925064199 960560660 166797981 433887877 597325809 784018892 314254953 647865051 45426595 198786751 872662561 904915515 690822635 790183050 299681644 685438725 552707203 873936075 689563110 951493490 114061878 255532829 908803762 988500637 119026721 990463178 809382846 859268835 631580631 956598379 937424332 980930031 64754814 210481530 608785250 637810197 815588338 947809420 543793515 900431286 542791979 703749129 865119038 889829853 252248000 277496881 654050253 909173418 653942791 719554073 137215730 730682470 350903451 689717451 130535810 175479899 247016190 331294332 888308133 993397502 122992580 463440775 971983561 979962579 35007240 145107865 218825791 499780990 832180350 856086880 820614746 984460633 427786413 440114922 571049226 771634528 150401379 876032919 964461261 982810991 233447502 304772758 265093750 695876210 143117530 927835460 820777072 996512905 493490996 801042330 441620203 772939997 647911602 675525123 202951342 361717448 181584240 817333798 709213194 831401473 897909624 995886210 688082928 989605613 756819123 889800558 637841913 872434882 348396208 416804588 109612296 915543182 989973783 995600759 492285763 695271762 333313309 605889102 946198158 974682713 504024659 977802046 938845573 965684539 84209697 146273680 315040733 556128749 442468331 892816101 453602596 767602536 242853902 696827313 241946648 250706306 620518593 769242446 455772612 796720676 988422454 989931640 105771667 569735616 751594672 845589305 536235744 831807192 217587596 784764920 678389147 820847076 152961514 947876347 97124201 348237554 396041195 399043354 496966348 642509356 404613790 788501493 510022848 866419580 5158714 556430497 375180261 822935023 456185623 617359529 690027825 728323549 548873531 623512363 219077524 733468439 686319908 826521821 538061506 830577755 750812485 772086926 484672273 953965278 418534615 876280401 206823650 842032285 740569306 849161348 228024805 330862298 847811166 861724403 509833981 830747903 373099514 965382103 842778166 921550093 213415325 248713515 242523693 544279533 529690209 971506498 204785551 705561286 152936160 734966506 167235551 699102862 74650186 642229616 988962132 989914748 193608695 410134119 282678300 532737511 226500526 871989854 550813343 582884857 10625239 767958934 194498693 265331844 793805519 829223658 685323266 912505635 7002898 158546753 665646446 850043269 560805292 863190386 180255352 476772607 99933077 674488946 346192398 501488911 286671784 739825649 847845679 902242148 525148739 619858533 649685548 850714260 36537764 59074261 34468416 827104672 675709123 869756388 807574251 887159979 788783402 846891484 300539171 875499343 557095488 709250481 384699234 623773322 989614633 989767827 438921756 472989037 1964339 252480652 298346919 970908267 371043302 684784624 730453621 852452789 565765919 842646006 533173375 939438186 186819662 452601975 120515462 556621772 103768066 651646977 555313743 876385359 370717631 497267076 476574969 532153574 170436270 946999652 757198702 808607161 747691286 853363148 227268685 270151250 505986776 566770205 332338738 993835741 23281477 710942985 973229159 993755507 921727754 988783442 998771934 999033643 948727586 974990482 360803965 577186555 432249317 554466512 253390176 410436644 314248056 405640817 435888073 834542512 785700740 869801106 698216535 864249864 187760797 427033272 657223091 744118350 978555174 979314086 385282135 588268400 343653786 488317822 376501997 865967989 562885780 627523778 613128153 719370768 509963335 526088688 838507995 933276402 541490311 605845409 869471211 973315429 564232445 651700144 572276257 823349160 174643341 574086475 43382085 139375012 689187477 968120914 111000680 477463743 815764122 817099217 148134806 257553721 239999024 841521696 786979038 885578168 853063707 998961243 327431614 362190530 898027137 971642603 13196954 22996211 17024387 855098511 944323672 968567103 480625686 969234838 623789186 909494258 979617675 982509280 493386407 682014385 671224136 811152148 962494338 977816904 416421556 530220913 280573197 618750491 435000291 861674713 838140782 854756773 413165386 981722330 821794527 941970474 651488067 765712009 121702572 293007054 80382653 406142812 392480571 474748286 814818469 927678296 980513201 997502446 749510449 759756511 713732262 742132491 325922723 496429165 15871277 847090674 602231545 935420620 162825941 673110017 255269058 930696933 573421622 655313297 42667434 159536477 761562326 826712191 719135474 841891697 206667747 327194840 179532728 185881785 3055213 149383905 89467589 803314744 163949038 592707255 471088791 604125656 891473534 907401362 951858223 963860493 31443138 554715847 427784434 977830047 635783422 897558057 387370780 750826829 534506099 552488464 391929651 432390145 111222694 611308670 128904618 347451490 931616955 959352401 590978015 802276311 499080656 608429887 962435257 997814602 330832569 762616453 575309440 841110453 179392526 369509261 796235265 920481972 114888674 918063255 701128805 843289253 394765862 569508465 218930142 457074983 72198721 889615119 106948271 809639341 955252522 965147502 100118741 624476847 285249731 555455785 609402968 671761361 165078133 847914975 968924723 996687785 560772128 720213801 986269011 991784522 471157537 710428108 102721599 999347467 940074815 973663858 716790754 998965242 37623810 111371750 112256290 550037523 520529430 546648296 335545671 915444063 661657607 884655209 872000573 921211591 932161014 974674812 471781336 968176776 123971271 353408025 826292436 989952880 365919471 855773486 24112441 123808577 837399504 949832252 775585441 989104520 886192445 915876764 304666269 433925434 373728908 382112320 620532769 801874257 889633597 920335573 804644868 936591638 485316686 868469352 459371493 838032927 902307306 911564994 536462252 865235030 631751371 781554107 667608494 892068390 340141518 826184056 55829242 785874768 340538386 596320417 986412168 999304234 762936365 815693630 445596135 669769591 777529343 828694187 545792445 602480290 679558427 955067523 658347326 802604136 769966613 962351109 679542813 817084276 118463245 933786819 267859074 807213830 159457504 197698902 203201147 451751925 449015549 985005274 39567503 628636406 528336301 654899893 125366973 248784574 589510720 765838532 134740985 484429982 695801228 869607399 337234558 763689874 465054291 700922344 750278391 768488999 24842299 943532045 252577733 412269916 51078202 208351160 29702608 684416845 73777532 724759127 537992362 658868167 852897261 855929237 66972643 726684560 957228372 980977723 661628804 949529075 647867059 993303525 177075678 802435505 152702979 932348696 76095948 271969242 425831408 607557682 983327973 989082485 872192317 983743737 600220903 671866133 76373659 669726012 874476755 918113387 518509355 588162582 877022855 919370520 666039214 670466350 996597340 998858722 425019702 859886979 39516875 463124959 951075323 985650132 381479145 665222171 307830172 338971427 293041951 883977292 102660848 932775022 923428532 944937335 830372679 965296883 201032954 565081060 215377344 939467442 783404757 902557950 225584878 614365448 886283220 973490271 683861484 725587887 615217775 754740819 734153888 981226799 968691795 992573282 776185824 838517269 724919011 730536879 623910906 699779228 871752694 904182095 197384420 365240443 532244835 666238791 591861237 958301532 665993817 691063111 727091241 743670317 759682423 950769721 695422316 748374718 265696298 926608776 513487767 615096786 673775703 832281449 176525066 768261243 664524993 958484164 79403423 966153817 438714057 537282500 379762209 708929753 997951947 998288567 213673350 543237937 60426464 230671338 382711836 514724732 342788822 710387889 708069800 939234776 895820008 970973325 626675424 645887271 392168882 737137088 459959191 476294424 19378180 123153415 780112140 787958594 482277053 825531025 488900647 778441550 587035288 737441789 1789945 676832737 569240122 747057684 148144777 864741116 531802640 782735675 508231752 884758154 180349485 471579127 278874714 881227097 820672230 895063179 275410280 799152790 589828993 593999833 36572773 985256745 773483270 831595740 538656267 759325713 752681011 768143231 731565791 904425413 65619692 425910106 612116234 834384261 544730953 961435606 896925874 983660752 915793285 922859093 917735935 947146365 254319432 903853784 302938969 901056942 849221789 932530548 773819499 935846499 411328491 640067304 246435450 641006899 555446497 798899170 575208565 599502373 156059422 875170154 8026646 412106000 366287526 668676217 334342738 954312684 848998710 880529642 127858130 638973354 351695542 659486741 966504633 991120678 501619234 542054598 950242715 961971608 527249019 855778429 445996503 686487540 1980171 702967306 622300251 886068874 862463260 984317339 998715566 999295332 185038446 477725996 597908833 785873868 159604087 269507010 315607318 672533528 856157710 873369568 698863107 974056626 190883157 324462962 6290694 94983544 68383341 283313445 358312436 809790226 224233835 693392282 631808911 855652269 728794157 761232227 974747235 988959406 490544428 820986175 339457550 404271931 398373123 433809369 290883079 665957004 557019080 888721826 677794877 685503140 735915908 793456635 435232214 776983924 39458755 815311979 137779929 572770993 222169785 675698089 885647628 975009767 12486764 217482120 117860813 734256818 743069898 993280065 464686039 521380769 906155510 998983873 237811069 278234005 858955501 922740850 742118364 967805459 177105378 388792602 111194548 409046112 275958514 934529494 817600280 836293788 135526186 921945744 207214142 503538075 101112123 131816332 101076195 152379748 958622105 964709616 359910120 933877611 920153602 943673948 277711755 520748586 130351 508818326 192178418 694139987 761866425 865789471 355739803 811968652 912160981 977504174 152618113 416032361 3695601 464756696 425485453 655979520 66612603 882046253 134722999 508368521 154616501 765376181 435219543 878990874 660754583 696029723 676161160 845685130 828236174 869041430 978209081 981133903 336150311 705230944 749466586 753900311 798396123 945911343 401684152 710793643 840043701 991026550 324127898 619962840 84830012 302755542 926867211 961212114 39176526 290427265 8349160 173105472 144280995 284143452 858136776 860569456 891953856 901991440 98549378 646370449 173832148 586381287 692714956 718831664 293764636 488760531 950333001 971668188 710730598 734685612 9425639 699639428 596807145 921611805 624026153 994867907 909556241 939319083 4143331 148559877 423660636 686304935 409626244 477296488 234143515 755163471 503753479 755217202 28949884 721809170 436241140 769032478 109014633 181628719 893901440 941097352 937123195 955409460 201219989 723681034 43711042 911293791 660603302 747511930 978982622 991774135 243982732 771374228 799526115 877394790 561023360 572018030 413501970 830254006 88401468 170867616 714185059 867204945 904025509 919198944 699363262 739812452 296100095 331342884 246670455 492251785 122978918 993160476 537308450 993863712 407772769 625227059 20643269 589857058 462660088 487636876 624363849 896171458 85335800 301622717 240263973 667936848 894220890 899268138 305217205 442174318 544198376 609809859 566150558 892908745 716069708 880485594 828238163 982776939 980950776 991794851 63884417 764500358 443294034 932866105 768164355 783766037 53904489 176523489 928196345 931969653 120049997 985907907 886116129 941163453 911931000 974737127 876222716 948977239 249362631 706696845 171745086 604290183 898209422 917750662 607817406 792060353 864959597 894551054 486513867 660901080 739543064 876208005 834519794 890188440 980691737 994336030 965360390 971809646 390369338 746209400 944324108 968081646 598203928 695333590 760929797 892971954 882733538 957200090 769372196 784873004 98888692 261761103 433203887 888693045 270000545 998727239 904164514 962899493 91814181 774591759 416483699 667764144 552313773 817923765 459146312 948962421 853792704 874714416 855473786 865309312 362559075 924713137 91049858 789254279 309040015 990625500 906548970 915709382 571984066 581121526 407803541 858017771 798853726 836450238 732054056 869513989 392791380 529279510 152667954 358049396 381236847 732095449 4232316 927219159 373616929 852096598 887954963 908130389 305994152 371201546 528596900 625629722 766799365 920506353 790258071 975494113 709019944 779643147 891006813 896555932 510844753 854241428 617298497 757928063 351625071 702890094 89084099 447696324 653298624 748142366 561968897 925930960 278519384 448821812 234906839 427559946 832725771 862323875 897929237 922354464 685255572 764281818 529479901 955925175 757535555 936616931 543996335 600981688 710613774 888547692 314166877 966649023 23442312 541866428 570533628 678392097 327496648 774369843 371936934 590864637 637528540 673547761 625927364 909257092 496253953 641052125 806496633 879889578 555622317 989574884 808078318 875043866 714801953 920384715 453640173 846490107 850387604 965190929 344803809 969858868 836065516 945320031 745489460 851975044 85764946 580059040 73119676 504631022 386798311 869286843 390347759 529743259 777035783 924094216 90263223 508971482 765177353 811707959 728387855 901656671 159731496 499921788 736680205 998295655 244102859 363830933 675557560 833662582 587962293 646025949 403079041 879219088 723540801 983204997 785033233 963811486 539573709 860712382 639745478 782917599 885724194 943629973 846583084 851001141 612675330 716257888 244127496 944402161 302092662 698058246 741106613 834791472 954977966 992910943 603522569 637266086 312353331 681572933 341192846 443148735 539388476 633159251 709391629 788665240 213383008 684007838 306941231 339645096 411834639 961913472 239403875 496595009 303628119 668798977 346014865 971900351 74009527 99862476 966249413 982166994 501571583 945560343 722429263 946533117 218315310 803976131 415650485 592909660 204427708 794487063 418373323 888321727 470554301 813475028 146120327 360970950 248308824 526220637 424129909 468183841 876659890 893069508 415013185 952522736 581965580 659078476 315345669 735645239 813184310 929518731 681831834 949336974 990370789 996888787 389365939 715485542 889370131 989900404 401780463 996874362 691471979 793396683 874809096 892882844 151387369 443749803 184544061 816493002 746191048 820094905 369422251 859101791 996926259 997928916 195442425 694579862 227217449 555266830 341275631 634945152 902870203 924328642 663236994 817745916 997573798 998682609 123340610 521845557 964091965 988141962 284842392 444589461 66011997 662967126 731499465 787838461 636959904 724502102 339113091 977922790 34131067 189215156 57810060 739213427 696249977 867642544 124009891 816292887 127808738 746697759 185835307 524575543 575365115 708470481 346140042 874590267 642135607 807819409 700641425 941551701 175674996 477126691 347948735 894971770 169356878 898808341 135928918 884781330 571887710 860552106 438862062 591440414 903842773 991962996 132451174 836449582 589559090 687960578 665372898 826050163 823101144 888496759 199517978 858622272 952711975 995572908 824717118 856338582 225889780 589957261 335222664 360566436 931335492 940233821 666519022 816427311 331982376 953414741 374302604 822851591 572526519 590363782 529587940 970264618 560618487 677323715 265150249 657991230 893246181 942814510 734619584 954386556 93778328 815866099 636074905 891313702 168340205 560805814 532741822 565096210 319607572 812250302 40352253 515712712 782762531 941781568 248863415 788623114 220599039 901775610 174598366 236875493 965953786 976064245 321718598 635910771 687846450 877103391 722182725 882395059 138676104 695106248 643024720 986814789 397395934 928132025 114077143 770739093 901865332 944712131 989481517 996750853 916803915 949619118 427211152 610711724 18164095 266937912 708495549 814763845 293060646 936694637 744663492 859396402 213908144 915190842 3827123 618920359 173829672 900709916 837071673 917218106 440010230 781762783 694589876 744085977 738015371 858639528 246346413 585632137 780163199 988658184 251157335 479797832 222031341 893560770 911227751 928911856 438867744 689189646 955557657 980323866 657317358 826204574 673739994 841978294 794531112 973109032 665467163 940257406 5896179 281448371 736775255 919252109 231407431 525852063 517017207 679712213 764722867 833242390 16080190 506227083 469248825 718090172 813970244 917296320 497998089 911260445 410554629 489737494 635920460 780808114 47750297 747605972 966910476 992045055 616521756 715801764 791939332 920080029 939289881 973849541 892710806 934188893 614160307 622871602 102897803 683417330 472052546 744004272 820157698 923706920 721194590 990611696 705027674 814563421 427012354 656330839 415429763 913821742 809516202 932074336 593213967 886322600 780774160 937216857 720213738 738829151 838308032 871483090 906340850 979128327 584393582 675321722 969599765 989204760 364179768 858574389 768042579 807081869 402082116 735691534 392165372 946470397 606261066 617318628 193669705 949734434 903202088 912171930 289627267 939526065 544625540 990771657 668393893 797089761 790516493 968540867 902516569 995813118 746658312 857541576 713761811 718897545 41062167 884810356 191602421 805209049 983507358 988166751 556939285 794958148 998740022 998780394 292288174 679979184 624661955 742822001 803237461 976795861 222139029 952126990 411038852 778173925 562457315 973558264 166243657 275741346 514569017 684494952 284325329 803992237 994719929 998351881 924564979 982738534 452669154 820940697 121784190 505946306 891862470 916927600 879231994 885530643 212464282 326543661 936992255 952225343 899526315 958781227 856494244 872097003 618858038 635553602 93516383 199319403 629866773 716840236 803594672 846757149 959121806 966127970 685212820 889542192 520280503 524330973 352706574 726913770 371256827 473614414 646765171 904422150 872082840 905417497 101889537 695955498 879585388 947358322 821461394 899002878 647048918 867409062 759617845 826090598 404297973 817992782 407151636 540248430 262602950 804820948 938167541 955541942 707979937 710220748 939071947 989888413 55302503 319518924 438887755 574794698 259866999 915042301 168331535 932905902 459632664 835821947 921327765 952335105 195641267 262561758 259850931 948246964 623233374 751693687 816171009 958406603 482912123 550372832 359329126 821758596 669277275 680246027 604635693 692343049 82299440 183006439 540899253 676798954 624682452 739998323 962561962 986529032 621359408 676455126 94526834 847157431 116290985 534174116 265144184 417772773 655939759 689582277 587185542 626348114 634488798 945805699 757444846 967631204 304550703 350066867 344909915 846779929 93871392 236811366 777552878 835830374 206313290 773166851 769916212 910057003 613986248 640249379 604323200 861473844 938740587 977667322 606449218 882273411 507443899 897157018 146169739 915042972 140221377 506594670 540307338 919554128 435159614 973120889 742247660 801685707 758507545 914726629 45348737 693213043 415245767 629117043 355915728 692845529 11026198 266629239 243009255 818117050 238130667 989055149 663858304 889948824 622370686 957470907 16277883 917919577 843901433 963297206 547243049 702222623 336533852 887400621 401787927 502826228 560828539 793212337 206877341 721860296 618018726 669328009 438475298 906933902 306233925 359832352 273022113 612953490 554831202 640709375 845525194 903644260 529187706 887711644 685252159 830089729 111189347 489158699 572500139 591812773 380627795 545608594 208056318 604975105 991565765 997872386 832377620 970835768 849910729 870645289 779293364 882859028 800652979 858048236 48543798 379152624 965672037 979033910 376095449 777616790 262453260 513850497 283741047 730719285 331719434 394956307 561287767 853008079 915859585 988135285 429357177 847728602 494191854 919169690 763792852 964607198 644992935 784297247 261230139 740061016 898050292 898576965 162456682 920838161 666375245 808428897 711490598 999271106 766552675 838935204 774484399 901555971 673505791 953049595 119799151 927661076 952073200 992751406 165961072 840043657 455050432 821550767 908681100 929844661 970657946 985061032 945142411 994023069 261641068 477409059 247281851 882874608 913702979 986252825 323890664 377223592 25280287 107010470 338485963 597746865 460499085 945586115 306169511 319952173 386797528 779758699 848795370 868042025 986674782 988643429 322575427 997281669 134468868 136573044 978305361 979529511 418621062 807170689 613016464 662473202 817928822 850884678 207600624 330461646 275215069 356619155 776734081 990308255 399431484 530892007 375432636 564611643 9159530 797597526 447340908 463602857 829628003 938081635 77883892 777368852 725088589 838520948 189066206 559076895 881334195 922063892 635059054 756013817 213549708 393518244 81150068 943284996 295379840 565041619 216931978 971510828 431137469 633647489 897988235 954644986 135392398 377682061 532448579 952251540 524780292 805425313 912165600 988831877 847187668 866124210 135447713 153269393 351133504 568995389 943655971 982208854 553721054 776296862 502620942 961087203 250904752 389979109 225071164 872147704 104445318 558672713 952164300 960631874 752905856 947088017 426666016 601947646 293523930 630635945 453035057 585380284 243443698 641029547 828917674 930717017 820727396 848854031 543074405 570833918 696031934 760193478 526229335 641337298 687027071 729330099 453967173 650665661 357348855 539757000 629905685 743382595 88760884 644590704 699449962 901659950 386755368 735287396 11594828 623802799 462925507 535375601 8996954 827542938 627623984 887359368 604471181 686189018 346666042 589683446 85626642 317235173 35988957 875093678 64296889 320125481 870555275 958992907 232474951 877501625 741994791 768069866 446714179 764791071 467067141 958328835 12592985 252795940 779437893 795459247 874800869 894051451 696261329 984071314 853947242 862526521 526949050 861172446 528659025 583662392 206927423 255569932 672830057 703005889 237727132 646064370 228835503 591701500 273568903 478693730 411840681 560103764 573609272 578869998 759747829 914172538 212508296 802814028 918853317 927580559 317250316 338619201 430181395 721105239 446711586 526069823 205921964 729791364 686690448 728814361 235136127 535308072 45599586 91247743 560392642 972532359 901793878 929187391 998267017 999383763 724261909 773549906 932267242 985203911 136499810 864217432 510017713 899601052 705401543 726986296 963236294 971012273 105603044 317437340 580625824 927827982 603292820 647320660 978792685 986545760 381292604 532632407 37737103 587812228 345374570 902917763 113999900 797849574 916834041 928074471 145720516 216711665 550631375 682727940 371434739 644735377 974435688 989743764 807631903 931657626 767901819 880026301 129732486 292917722 488221878 621880347 330565367 886401448 559589633 772436646 674695058 783490124 988208598 989592588 576079340 827781822 49195481 83904251 870886838 981137030 995793915 996238328 264695749 427859463 165998982 422265266 837417648 919327818 316499962 969539240 29358665 322917505 440383502 951461759 154802334 269561128 664330354 745184595 515362024 595040719 227374973 481586192 813667416 886876988 796515786 860797527 9157353 251874843 891916164 922028296 556583169 925389936 397528804 597062998 570360153 631611427 462817885 714769116 623897310 747884219 861700309 966226669 96715163 851275404 141193867 587685379 188869610 339854958 2280057 367165130 671693373 850977262 628571073 835998833 345168151 393543443 981533045 994713660 367133565 518005663 611787883 689732947 857327820 878881240 370288020 722308168 503403357 747615074 101711018 686060425 288864937 352142637 117257966 252409394 122383946 982072702 190718061 796594800 179773145 626604362 839253499 845898021 403323758 845224945 740967425 843289335 610588488 713816366 881790356 968466659 577648800 914467930 52468633 829693966 872964817 962260297 927479161 995457734 518617399 761011693 281485726 397411875 728779398 952135098 255299042 478859100 252215735 748571411 910288161 921612801 212840884 216090964 415999474 622581531 468066077 770052012 17502448 515873086 183185622 296943386 402743605 654315899 388544466 791830352 28415919 906132848 508081927 596354003 91797744 809949057 114957528 301699794 801359677 858462093 682786342 915593839 605460398 719370401 224862434 914095197 998183606 998729904 42134300 533177584 282902212 992054286 845657988 849728595 243391357 481540850 540792124 832648142 565149200 794044721 113392228 323684603 435064960 516991099 507433099 545148654 108189248 700067662 996008488 998117951 13935693 408855039 372823501 946646465 958672031 991263459 133441643 775212830 220671239 787695808 943994412 960792432 468940372 756744643 162511904 437472085 481278856 504539741 516633469 574408991 770514449 852483017 287388757 715993751 846191178 998931968 975031126 976722329 52301667 385701864 164087496 762977264 698483032 728155637 745844914 750109803 411857583 546802752 839237560 857956045 545340782 578178591 592954035 903747466 268967331 290509167 451618937 537945252 527514699 548159056 3631801 801568657 609574727 801462496 552859070 924997176 463445748 972252195 99121537 464690484 99586966 833223843 187175245 405262249 878515936 932098634 121832960 816024173 585266369 878479694 252331499 812186918 743046883 767663442 934095282 937094902 747692212 840171604 405727317 524718404 989443590 989782128 334983751 877052628 960369595 974028954 631099044 735357826 812105470 914084036 636210694 885407463 457117702 699254149 243199781 471521651 366483044 670324289 430090464 613251272 60612967 533084874 490211027 657443783 763408471 965517101 455073281 856419948 830382053 876493579 611554457 706832655 607878918 638296159 1532529 719011186 207054281 825240927 48358090 772316066 969261396 989296192 968011498 970798497 92077287 911964637 259628292 865699165 656879509 731134405 233236119 418400434 258810319 725457257 625054707 823526763 898718941 980358878 909344516 984330225 330691005 829178404 323133216 904612804 182991092 267387888 888788794 910723252 228807885 863846686 696157789 773387681 142111698 508816880 842760562 889311748 146089992 499756039 442630303 849188029 495395285 708913970 910382914 986119531 67533451 597910351 130628784 673528296 81384383 846705098 374876443 997785557 872845272 895098927 74072745 574630721 30528592 246952588 446864414 996909184 271429043 554627452 366285674 395620675 279409607 549124343 363478508 389390785 555871128 579388614 569454949 799702187 659880846 923159450 862737705 881168784 263480628 949077574 106169792 700311501 644857569 830513781 958477237 981368292 689489767 825977396 833796699 876687296 58134973 791451221 724355962 780614746 142765142 838230085 47851634 269048187 315397347 528969836 423012452 793965355 46544061 140865039 541624750 587295829 856727760 981506714 339596671 951132613 843301778 921284720 746408480 875791715 463695213 636460935 722716442 857042226 22259687 965592618 968437189 968763363 867080111 928677877 180089608 386952061 955059806 995847975 10556461 712589966 518880402 884777463 16587470 499285352 930404981 976892427 324624215 551912757 37493609 270780436 340670058 449287558 969116642 978802614 867744860 971552903 599134890 750034439 852081853 886102064 390262144 580039355 823017232 929084469 985166636 990783499 210383422 414785708 706852844 885103793 777075068 783214696 59628188 900648088 619704927 778455022 954787104 968465869 554561065 655529853 812331130 906978464 742437183 860929820 487460208 779146786 400690518 691075703 168153022 803622718 110251810 386201168 262509362 542341720 142521772 657073404 709968381 771538476 911089821 925319610 426214825 802091084 211619987 328872644 722563791 841291018 761647275 998754691 579670189 823400031 852023252 989878458 576846161 931825656 394070843 965369986 189013079 664168969 149809942 559064303 403628308 413069182 836316271 855323915 635090623 706092022 152922599 879280640 447687049 720877356 972292924 974257663 328405427 411616546 731513394 970030595 102400602 813951175 893668045 941455774 612267105 865754866 886833088 914400274 231923946 384723926 742890789 819621325 327088695 334140973 875464008 894574376 482634940 761314013 12133138 636984183 666334228 858230326 743067401 755686808 721621226 915788254 688581667 811550641 651710309 908088885 941986910 948944148 450879982 743233871 545728711 834915075 399823001 426499060 912344430 947183436 184520326 267037002 970545692 984189356 639348880 722701671 866683796 981715001 265624153 687547993 741363225 999214328 149226155 171220911 715240747 769661589 594432757 870058082 355587828 937843758 827128431 978517811 515835068 798960618 267496491 333578132 167022618 462379437 214946408 457803683 462385173 766879227 265676308 907549551 769508939 965733708 378993063 793448493 748738495 955214519 245086236 858775564 501328523 916987885 299360203 703610744 479569851 490850708 488398064 983442790 241149869 613891392 356821526 911964000 336288109 357082648 297014462 584387821 69482133 682198640 716295288 842856830 871066319 895632936 75331353 759839683 248354082 423031463 287602810 668565401 145999038 688463704 789641844 885748180 757861174 878486699 74530703 237521555 947677193 955286729 569351640 985929922 599683536 931936515 985789472 987791908 936048017 967111756 687590597 755625274 576583203 820446621 216456237 803566508 578634052 616399777 168325932 723116328 626381894 696749576 941735632 978831439 874777307 977488656 594816133 681652615 678178172 894983642 877135702 991678650 713211122 962775067 101846567 929370119 659190557 948433310 779702912 829914498 549945393 696164788 535937571 717501969 50998715 67292745 119731570 281858134 213026392 975765631 647121441 802874682 53074708 178136903 724114834 756424228 423270543 523761379 886888215 934048371 507872345 560658164 840021138 980446665 413398934 636763152 491381495 526827568 591885467 861838557 293386204 739669031 579963544 617925775 587573245 808882907 637078194 911323335 82875982 134612289 706098614 893752616 554371472 775559555 602539851 734624400 425919715 443746115 494283468 703640792 586716025 878784792 491700427 756352836 123847545 508897520 321708436 762986010 329165879 896657308 909575834 969042517 382080767 485385500 655243747 929168511 336609974 626870841 40352513 976502739 843831764 971525784 618940944 710195042 426297933 801360104 817146583 898550097 47129596 881368560 818548764 846909079 164754732 893551550 887944270 921746031 165532151 395137875 708296763 817059055 859250536 921978991 490662469 723067893 251662370 913314385 109992536 147674137 987765501 998352898 74858206 286274756 532739775 606471775 505244069 642607204 895233043 931873454 594036919 794356665 826539916 963821462 344820962 352199381 56077440 631589607 341750298 820246801 576114689 984130517 582782172 923628346 354705212 530580461 252180179 831019663 610073660 776830267 927382937 970493434 99662519 615538363 640190986 759035590 542337190 706467440 129225900 924860956 618267755 977750345 24385970 789933738 684175933 718530827 202132266 585559121 524604994 646888878 797287139 896931819 485460209 865968654 282835288 379079474 694402948 897198673 504426740 675046993 707003385 910656633 446109419 865790640 65785847 303643233 660966188 689785582 812382355 816046438 551078303 865020171 172092847 849840891 266739412 766779113 125375518 535800602 120186727 874036677 992120833 993290116 293755250 829936807 183556319 633855271 788563642 889499402 75579765 461686269 468112753 939474756 106345109 529536497 759051603 854358061 931327190 978427557 316591562 456708025 857736927 961957917 120927354 391670540 536871195 917361495 38890550 510279339 42251227 752782955 984545369 991533340 954307393 957958184 948861876 987755584 82132840 109403805 703381464 885104142 474181283 807874358 603347578 824051923 983345369 992912799 54471841 976216708 119015008 728268909 317609305 339141219 283558675 912171273 984887480 997724328 450460640 530861423 348733190 631187283 531885962 713885363 960040905 963374516 734963591 826060008 765751407 822420038 327165295 846582910 613166870 830098443 561009689 875245726 623419875 983479395 681313271 877042441 423244502 438130479 524908170 734806017 690443840 749432461 912767504 934376116 800507119 876416015 773985608 838741159 27486549 826240406 754808633 957635038 245204293 822633971 260833323 820171361 381072888 849531290 556154798 629796892 12131933 334522915 64653279 140293374 495593198 744951226 257798320 420844653 604725609 767420730 747722207 972709520 335764504 350395173 980740490 997819306 928283274 975169563 112400470 152577591 487193927 717339220 704151464 961496020 10213829 836864128 303887467 946941935 588296075 658294936 382102282 787864072 458057924 826866837 701132703 776083985 28939140 155092900 31564967 418705911 295862433 954622820 633920477 982013326 452866743 987112673 634557381 636772691 716522570 946660207 935853264 968467906 831321851 986558319 680687675 973182949 143372495 937479850 507445841 994681606 199265483 984589448 634768662 815580370 773454042 924994556 505660565 588474431 736905917 938607214 360407729 833969193 345503548 701889634 358099331 827763923 669380142 889329095 646946456 997233416 319062946 691200216 353282570 704272905 172367348 662729520 759759938 782173160 803702265 998843114 362444554 647967826 827845974 997923574 235133555 446160547 423498158 471969655 208092249 753927939 981457065 998706871 973756191 999146065 951183957 953807455 444252990 852380608 579505328 642234247 419885174 506318485 266982129 443437960 217678030 439411418 998144314 998599459 374590939 422310435 50226900 647150033 642997775 800721940 640228256 727430695 43040412 719540804 500922832 653631949 700525719 927302455 749617585 879530885 818550007 995477951 767912748 938013740 334017803 538223041 2602803 582197991 519604155 974588493 255542632 441987849 684031180 781494552 274693459 995072645 391575374 781516013 606900659 818678202 856256881 860234248 612359278 641022983 739916983 748514545 780831116 918612977 873429776 953505779 28260958 78220351 173271170 941056803 440761802 995392871 903437610 980844386 445932141 448553196 148570461 709807380 716336353 737866608 762694352 995217325 850899190 889951374 801533854 902557520 206271919 969984749 290824722 553071657 354149165 929352187 380200731 862157770 927813330 933211343 103941057 792596784 565125022 824574120 973560457 978258852 486169914 809913059 708598369 710919528 260196401 276751889 97809509 690089320 542028316 634114328 207632281 949348473 848123837 849698044 167513175 684604928 210983437 745699320 38186001 83885378 544081826 660937568 403499344 713407216 877696926 987803649 187668985 529981395 884705563 910615300 404445097 587444935 123480487 338343463 505083119 571136232 155396442 320818561 355020669 801242040 534623133 683952539 733606654 770327459 489354698 923569372 889857803 952689431 131745142 290152821 376276291 564203693 729902792 738871343 787599906 811540107 989404794 997660081 572969615 639418898 41857693 350117045 50543446 699277390 158995240 517306642 660891881 859866442 553855129 817027941 855807348 957214542 605696129 836005367 770201483 982004209 908346612 991907927 482943458 983546916 983043245 994651022 128473564 149001518 384659066 401307410 119810661 344017103 124965876 295467463 327715399 738745455 342742866 459621671 93246677 381186754 215751112 700940898 26827329 102607008 853771475 983454822 599871306 791436565 832101094 905872627 505350603 960414817 726191750 946115978 920490778 989489768 274539253 834620481 632574696 866167567 246315875 257801722 988115872 998506939 463833958 791717093 61261751 928460696 119448626 880872425 243386973 984329595 719817150 986296425 93484438 563350362 32179829 635249016 576000507 746894246 579838303 779956147 795430640 905857756 996104247 998634843 970311087 979456093 359650276 523288525 97969582 786582860 971178693 996561050 236957458 711933046 262632915 517127723 226269794 950909111 711528440 910564807 899064444 949627670 120581388 819374656 974360447 982401130 64982271 268277722 663083260 979458431 113621866 709709796 303242563 792538586 488319632 721315105 299896175 419437363 37536004 858264873 587953616 873795323 687648973 789328797 694201454 815458405 808443452 820406911 131831412 307359162 767464429 984642105 941832181 954075412 151776861 541368908 195939636 905647743 240348817 430501739 55598428 567472169 71397641 116731426 590661006 835663985 945637862 993358165 707347139 818544554 755766903 991694163 553501358 998123662 373320550 634898056 851683305 911832281 367952039 830412079 892388811 983356075 964989806 991658290 852515672 913036662 991373792 993719592 475259091 899674837 338482195 976699369 104032926 303312055 153476251 868890726 545505451 800016525 489554693 570902613 997815488 999154465 709515337 854941479 634897491 846380448 914724008 959916050 569777874 587739271 609940598 828800280 671661286 744786151 793925102 926347038 507939762 918329691 158782589 198451615 375396917 476176751 142636193 203824813 387463771 403896739 686602040 903663901 905405624 954739555 801483064 930639360 16212641 355421545 732713098 877279276 763707875 847909636 752565588 890810369 928597961 934811686 341499924 563534954 509233580 668641067 861660718 870794106 680930418 864244827 972663083 991358325 125346264 937316328 622667382 900710260 159821178 974502248 961617887 974231157 946540474 949171583 65231290 292127985 715883132 770432252 335424320 817763275 244619839 416197489 177588236 284909359 538028018 606176682 488686953 509945779 471262670 852508506 825124298 859230323 667191744 726363746 238225193 567561891 638158993 641205315 767736983 785878777 172627994 699014647 383982125 855965207 591580533 984705853 275683058 450815884 342896419 598712554 554534370 704427935 482489594 562264261 12210476 776168834 794570225 985965038 422314907 863323195 745035106 949489138 798094934 833248596 192583285 674766239 619723692 921202245 929120004 948410928 809042606 934689962 392637710 646035150 717019945 956414482 301339404 638826053 472927777 816639982 802743439 975436525 594716729 833809899 684147689 825417105 956995675 987799228 167727940 336739502 178129591 269042172 500464972 759043239 286719427 404475456 584028316 882548555 24027975 910780139 580470168 769350509 704651365 810292496 271684063 507061559 572701393 842045721 461969836 894118424 935159711 961732541 579311993 857184137 905786908 984991689 881302621 967716253 456793766 712151643 60915504 224172118 828444035 897448272 579168835 616756230 554186054 986944530 923124917 926500568 73164215 516670396 154638548 976796850 107628940 638679935 25168479 882973095 780963932 816474914 685949845 829633996 9466778 498396517 976713072 998810914 586427628 854839903 724178392 724494525 382305140 504399002 769795932 912732836 110722538 699131151 649839930 917859055 848534533 874981397 688337908 909214397 341417696 631867887 394927032 509534822 420829906 944544967 633390760 725408862 693192109 875258409 735206393 760434629 779618923 797476750 226863966 808399200 972600145 993197009 145997139 941730199 372704438 775510671 685503070 806473579 548204016 751266559 645078366 646856330 822853464 977327929 498826627 850110652 58189297 664046950 21036635 276456015 319394422 898315901 445306729 865467831 707288915 825609605 723484270 770794194 181980913 517832016 973176582 984183177 898905972 967715231 903184710 990376859 385987335 572157273 824715718 882203903 408922763 597719313 888949582 959428137 387370121 738547192 118399494 444792298 450525976 832224600 631669893 865441729 711299131 978842604 871470706 983750447 627825969 861359244 13339916 461669695 558425628 567925616 756629469 865353006 233032444 570430485 314209029 402452220 432054674 627722785 544648168 939593771 706898173 913673682 571909372 732518136 46071673 297913307 124397972 225198592 656523883 884474436 645683237 760350118 372425105 688535145 685466336 695814701 635254773 686925494 760722180 830731252 815994198 872765076 684225078 893426184 910886413 929927916 254611460 785213692 468564612 514615125 511952628 762883154 731598811 891834442 10035539 989358183 292332486 837624562 637505866 763674957 740323162 802279437 299547808 597819670 616585960 698742419 223068626 577794254 122233545 755985815 257107059 474606491 349056112 360141269 414893534 874695981 721978769 794498725 494914875 795378653 662615708 969972715 121342085 129282715 666294956 692361348 30835493 641535283 671865161 969163293 725824698 917522428 981786237 995718431 811081674 963921139 361500320 906654884 773047053 852567246 807299613 945107266 539890275 770426940 302456744 414759811 338539561 619220574 255768532 852996908 2159211 611632893 297673774 853999075 33826213 908418659 656676854 919606244 659926569 921045512 73879371 518105450 32292079 480577442 589862216 672314844 760545749 944659636 238756881 621922878 709380020 972029514 121294666 283751904 176163696 766992347 305552676 455244895 510998766 836147531 2138777 147928333 59810699 401264228 728499170 733882451 600150879 947197046 575781636 633170657 362761494 590677501 529325308 657524657 243589814 557192267 160701216 577332102 320313160 943828871 70487766 459126626 535322679 870078111 610362226 936651928 258497171 628297845 414729277 929957874 127472175 931005645 265719073 600909236 827973866 881265429 929998563 962506454 637918851 729176888 501952494 575786156 241537203 762668347 65826628 227549693 384173139 933025031 753387802 873194385 149516148 803116354 313968879 941298860 428136390 438452244 566282587 793966527 748238083 831712735 278386393 543573609 10774635 800084958 171668750 802258384 483288557 677616752 70986032 911754814 683750122 763131061 590200489 842817849 375893882 394697272 342356791 723576816 602418379 894215724 54937701 184778670 971531067 979088382 37889981 439606146 839748289 868891806 451400258 888635958 907763627 917435408 348459198 803366636 86584337 742729930 651449236 993140962 500202063 641967638 947965386 990348681 74527935 919692129 991129885 997031181 643578015 683659312 37379491 131609230 15894070 940175675 383218355 560709024 140002101 667624543 182164022 498438252 615717377 633097936 956174046 989358361 87563112 685915266 864450526 971259386 675318642 871060214 212549661 530185182 938159304 986674766 142288412 871485056 853945442 879253511 204816911 321988583 496203212 753796925 350432322 357072614 900106672 965647233 228691266 779222828 990110536 996125457 722237488 777050944 817806853 824172154 929920216 952563675 187528681 837645024 491179990 975955577 266416847 359241325 912328341 986502004 325032706 325388773 100611098 211165825 187446128 356211803 824721678 853549966 676469607 949616431 367536069 665574931 861667848 864037660 429519826 443909374 326469828 452703452 730121976 774698606 384547549 386853116 16722716 325641973 823372619 835254902 858878606 882237121 626351827 861340536 572048507 827848507 974877575 985269682 295460560 351948689 311613014 649356673 979766448 998487723 927886755 995086928 524592696 748953422 309923177 571386882 282004983 627400872 1016805 778888908 962944038 963134279 960675517 979628328 21149197 287922105 989091160 992109898 508846698 645488821 565984779 958603209 665496211 883120059 97042567 236625326 742613740 892742813 822035136 824207186 886993863 891105578 176430840 241710245 806731151 950021238 503076384 924129742 801332819 930868926 531534514 848928443 589742651 922806813 850454439 988009891 372250408 876646856 996646233 996669964 915704378 967572735 798245544 897379421 541138326 573377495 863932336 952817012 992193214 996041073 728279518 999009360 286979334 536416403 91394078 993973789 898718484 923856278 482043465 901163864 960120767 970804760 252641064 350121068 444897775 879697306 260034930 371412190 339007705 640098921 58595784 354412022 677705126 729695162 966210248 971872467 266304718 953453554 837103071 967085184 453991228 916535502 620628763 807789883 676587624 750634013 250527844 572801980 502731002 726209057 339153158 606833468 610432985 639755819 586313835 869127342 366756518 942591539 338179971 947053839 35123699 638665684 913150399 925139720 33049099 161984172 557158965 767514713 800359624 960961914 497074567 564079927 780099665 781734260 315590953 809793092 689214924 788465313 590784965 937979221 107730981 226617919 946597491 952051877 208272806 241230411 836307842 945703201 422373806 759007536 313291303 565645498 625005342 857533092 912565118 978123017 377793515 749733641 363430029 654610060 30974109 479480649 848460753 852871735 458655226 526751915 837607718 937242811 737076013 942827289 910728101 995689213 663888489 766434058 386593237 716073530 242567823 337144591 293609503 987832470 313702595 691973958 687908630 938276014 313392858 719490575 647722243 897501207 440111966 704739520 732418473 852751126 133213265 311067396 153447795 168125222 420250086 634559365 20546434 941628430 920060469 988804635 549691887 590572075 864620224 948698681 826403441 917419210 937344283 996869692 718058629 910040464 231249019 587028284 331645246 774761925 904013846 995744482 235314373 555411490 168440220 305009992 600238849 823922386 895236639 921299203 648077231 884764476 241807543 554078031 229536020 423332900 378943255 700104491 384819611 882462623 386950562 771750465 68882566 388288465 924575987 961600590 743412008 799669861 684587205 762445361 204545600 455723285 810488339 853687526 171440402 889319600 752122716 753330697 171493265 403100083 43474401 634330373 476104923 628371610 990799340 990922502 568544426 778512955 987938229 997696705 190623794 964507898 843595303 879921353 142790560 846427415 678339891 856570028 677177314 710052026 954574073 989521034 827607424 902526242 438271266 850367054 164973151 291735515 590836195 600771396 872369282 903288223 551593776 729654207 921603435 924982933 146762456 592923627 101396010 699927834 944257555 969641894 558946109 842076126 763168266 792505897 307303620 399444407 769310293 890141640 482179630 505931554 959726100 966585065 68573981 203682093 388781655 762533084 166625781 318855188 511794184 979304400 67448322 67629734 419581231 917568624 305229891 778370187 491664137 572161294 637855827 890499755 671453345 946894657 982613479 984631629 841677222 964121916 354713952 857837440 683627119 921026449 536356479 769698561 390563074 619856234 749704197 762318253 40745800 912967742 191978542 786266955 80714647 764472568 605348 459969439 715705643 914048501 408618982 421077255 108370281 612428016 593266324 796428039 4006646 924705069 174883864 575876757 606535322 888466877 251545518 441081346 794690887 822196636 231849273 547262939 296148212 780357001 62787939 657802506 591704253 905115733 306097569 448274366 667931733 861378676 694881034 962870235 638980918 720898130 116370783 256059852 539367449 933082320 189541390 803500443 992802254 994061370 33370698 733924429 418913450 945237825 391016077 862685692 350908199 731567962 528921610 946318484 556429739 921282838 118567105 155116835 454664705 456504928 125693649 145880215 179420147 588557716 475818955 755750202 563711992 657318815 221883181 893852155 702722722 906502184 68207214 680730706 922815173 944435383 858297166 991455897 926732521 928678077 892700200 909285915 648985800 765389111 458803327 830560328 794918266 933922786 967444897 975523822 794013092 971757006 762403173 936146157 20851460 786851033 101025929 635116027 17937290 392352856 563760700 760242135 521589869 677737686 485166763 620564852 60374928 719281720 349640457 795893254 369672729 811684854 611611114 911730082 510143885 923943215 887239209 976720733 914555860 920316592 494319532 553596408 669301131 718006971 425234135 966118465 176455297 541132748 809695452 932453855 829437554 839570595 874530798 972367550 128628666 305630343 43501664 979720718 305411798 573370641 81513635 345647159 513746596 786343033 801694459 887987416 750686375 786806330 397091324 480965733 923299685 989831758 324812845 569256910 409621651 609327677 433236556 975408355 465884395 703086755 911000464 966329488 35453354 467130597 387353043 450843654 868707692 970448909 729178823 815603793 555556860 699780318 288429379 539048545 588182105 597024186 626205539 843654032 428346554 987267517 261991118 337672267 779497879 993784002 817632964 919954172 468320425 915439794 690554957 992149927 531217199 679750546 371065680 506216956 446462730 724705364 1389079 491315614 60232043 581374907 512636161 743818678 911739300 972617340 197058689 776182393 764445157 970769633 617903552 892825665 883187392 883626591 79681487 302698306 912563560 949198083 817101386 994235555 383360881 871534769 387532 201855657 249993291 757576589 648104295 972186551 348924733 439171385 120058213 160285198 610687329 710781867 284586916 750541665 5253354 727285244 886141854 910614671 145948012 403409922 256158630 994350004 556113736 988346561 409617640 600634844 24192665 628426973 528768926 553152795 451727961 946809490 822677719 993109821 289503851 644084253 867342645 877068882 332208395 412813475 964487821 981731497 39912679 733611909 459743429 783085009 395098271 447000149 752587246 814961601 694009895 909523705 889826516 925065236 574378151 964690183 591290316 642615729 992389410 993096372 173059507 257725094 612335253 945565592 499645254 900867413 25973601 61248749 260502387 598002408 416853218 803152922 516893552 726840025 626786811 867709913 181180520 505867230 50389758 65715886 294981614 689876587 264009528 676431657 847960917 888514920 743949660 777816885 689456164 919418898 820836181 871327717 575910734 650544658 242593890 676824861 29998635 643151017 605600813 838001379 678133468 969056048 120179076 966952902 398113026 608562076 126524629 313277844 522446866 591877731 692557033 992733396 604122082 948713965 614225854 615521641 807517996 848422176 212024869 744465827 340914475 382010119 596327162 962750557 483650400 671794326 628075909 973884209 590041798 703887264 10592604 971560115 897645907 932397438 56912641 256471334 778725938 987859904 145861317 365659672 407827236 905594276 167927414 910726022 523931588 955749841 376583865 819084099 923358331 974718228 608280608 767803723 26015648 470085839 593110513 711201230 375473022 821842711 846912333 967482196 278807197 683743028 766421838 798529823 456500371 991746876 45724034 577120279 206762122 412546358 671363456 706647517 310284572 557504176 195515935 572709901 845258228 930509108 400140599 505317990 947366241 954828669 659174086 974375949 410608334 621519064 327312405 554891660 656303930 845662800 691780734 832228862 181028476 657028211 837813679 991096857 934632062 952790499 385671762 836945441 25551788 564128259 868656919 977621679 470060518 773107013 530849125 960708461 258805549 503808043 792809429 931149406 156919474 584219146 135734619 290811160 243479332 373507749 472222187 897399942 51564261 180738739 396414438 772942056 806664407 944679538 976863313 997862704 59485009 685208761 268656925 274372399 981038709 989845945 872366850 886671936 77901204 165498913 28719329 499313491 889527613 930651377 867046059 973914961 298030145 900273260 412297642 856138144 278800147 320080877 61268879 124844459 313430905 482608746 808437179 939071208 911046947 976378439 466650147 661754924 445020322 568508469 754977889 970708799 904548701 971775985 16511905 95306968 149878322 303632392 702291342 964591795 782810029 850397855 508440474 946915543 386328634 467670971 45629321 389279424 282021097 768957724 658931907 833904743 624678759 906876266 219034613 397509478 122695957 745506888 134121322 134154130 528665212 659564638 518932074 984434576 870335266 926238354 481105676 602158911 397375600 969680391 44418603 948350365 395819923 676851895 511650244 992426863 234832033 890614431 813494987 903633976 861862699 941964161 736527132 747544101 359624223 538160646 412590692 970723370 521561723 927512585 518820728 857926469 326211721 915396669 488156853 959359736 690679628 696941531 444044619 826132988 118386417 188270579 97140190 566835673 739257607 831600042 874201836 876293651 309005495 599000252 695993553 755639078 871075529 935213781 628354978 678114499 264769485 683855226 994810551 996538987 609227536 923115421 260592899 479775861 936581867 970718580 404980653 909780681 168886674 973946199 803231626 870821714 78197788 811167432 994426599 997998574 73662263 530099223 797417237 977926360 268810452 941181468 719817720 796788863 57760299 708403576 596549968 920098449 276451230 755495769 660260170 899938300 988320983 991166767 143073763 801732171 58933148 340028838 822813801 964677149 541630037 815233362 374097911 882432623 735501556 966837056 169355822 983540182 703037449 933165808 215735729 736093957 295520257 560830916 884062108 898208483 232123706 803874078 428118282 676203378 24460912 82121753 311059954 528174604 88483446 518453891 895666706 969588936 386509061 574993797 377617513 481117561 481347669 491315667 448410637 987360230 121878220 266863485 890956236 922512703 392055601 464338928 898062351 909357939 378874349 804501501 11605469 890705400 59733848 297861334 890473091 937940021 739451932 921847463 636013799 878834880 217146595 355351447 900824594 963029818 733167662 789092189 363614919 910243494 953052641 954871205 594285193 795561683 58509017 767979943 98961159 789265586 946029471 991046220 912773388 978661380 302142963 617799945 756761306 830383120 424632427 881485417 78710974 355083777 53069731 621173082 71790949 455608670 78432160 336828425 946467886 981081488 667102896 796701913 435038119 874133259 516825096 920468499 570700863 762584565 776184468 964918763 421926530 850705947 174011418 885964659 991699930 997204021 770102586 858998139 871927654 917833842 535269751 847357556 137756090 387608312 714116673 827982356 964204476 994234477 598354879 958839695 781761168 944381618 495139753 554716095 392018604 854651220 882540053 999090720 936968784 941309906 230943543 522953210 120632503 494737007 110681387 156820554 216841200 832682874 419755490 542008137 159053880 587267069 241335290 623287607 353413105 853670535 406386998 973816841 73252830 148400264 391043480 995865022 711701130 980563486 622096098 625812784 335539023 901881586 631230753 998126636 2916655 696247615 950397717 992524216 188970417 698267649 853890810 889948396 43060869 792168130 608400604 977736572 144693184 886880929 290630414 323046112 726078538 973676993 377518595 748460771 409692434 741383767 881692035 961081803 126272333 967607823 668209134 870988468 932918436 978602106 833689074 859934452 622075099 957372180 319059797 853823510 86432453 457174709 848274359 884793326 628736625 854658877 290813204 703506815 743183064 949028478 952223077 952520402 726698961 871991102 448801793 722832668 710132530 980210014 264050904 940954326 661843170 669591110 439670426 702267718 349426536 692928328 24475252 509420532 50234026 443215471 375084809 603899265 311726356 942469820 378396059 562797060 291075188 406749727 907994758 964586460 158419504 945624535 830241091 928199607 455422280 594006574 153658552 635408617 79716102 689429402 590557402 892678227 568213688 725816344 476613698 632731444 844536719 889194814 119179148 736697696 235073226 285387121 506633907 540269024 231859349 312739410 369515506 867383541 114351605 153650222 721059471 975299418 830301210 893125637 564425875 701943283 183071763 347582172 625756147 911324536 300984144 625258636 181834628 446333558 649780164 981560420 883376821 978386839 434108835 698352583 340197487 773973494 484870128 973582106 155404079 392602691 546044744 705437156 204140866 278134587 326365628 589801058 752365933 889438718 639544190 702215820 557307941 719539335 364254460 747288420 252016102 255387858 880678587 944043621 620013259 694964893 209514693 883114824 318159554 870295981 541016423 628761125 695773995 852282859 302130494 666271476 394606702 704253735 729886748 764864552 777294287 920006013 34106396 282182383 746533626 949559361 856040241 882539250 449695656 639653459 791143674 927896877 549309630 765076678 968113879 997666683 703907287 807984623 900880663 930131198 714927734 839138526 891522607 984209931 890152835 955647295 779610832 829356340 717376987 839587640 427722676 671399410 565849164 683013507 395071602 946632190 51146056 979955386 948280446 959478683 535442964 696020617 847171869 993507610 59988060 635182959 229911633 233266727 650193967 877106797 123505375 443249455 28657021 183580332 358799624 615398990 602900895 822583612 672884676 773352005 48689840 431525864 710594753 960184830 551548075 570833194 466704020 537598441 533059138 973677746 554284354 585042741 385381890 724176769 284164890 377884595 550798081 771314020 741543159 826220440 141935637 677801956 359327079 669499543 488274392 602160938 374683102 950913759 972333476 995743382 683230568 845043797 958973759 967773664 109322524 522861848 515795586 886880784 933036947 995806716 801503268 868732702 438065731 976814018 387159352 588386388 270200840 817462074 569133476 719444350 671417934 894650732 702221749 906709491 303240595 726288420 150110925 768976830 966027979 972185001 940235953 947919382 538239617 862150652 953407668 958573232 648907751 977258971 589320852 863698146 566077652 842287942 421102021 819077901 283679905 975840675 661531749 819435875 955379253 998881517 218851351 464222884 535336845 729975971 367716118 828445685 13974693 916422670 268104050 635708813 248471238 726705453 669070346 980310740 817009570 830350085 402757907 774953548 340016133 593401527 292504327 545971453 796218776 822584911 273500730 799873614 595465447 649217129 486521908 928955366 976303407 996717361 664406377 941826082 597545327 864683242 263726090 744963815 612061433 995724957 788229947 847916588 416548421 953050380 376225449 535630304 240003286 812534847 281341121 990204914 158681087 950865773 18447041 385828897 513419453 834229555 842081663 890090461 35507708 889869758 720533245 866941119 53583037 987700699 959646831 993053057 373743171 510786798 394955396 974070764 732625800 854532711 253483496 542193756 294691373 641603746 110597228 474144860 479923359 738107639 149461095 271890527 588428557 813390936 73606002 666297392 621659262 913130463 461897359 973673540 605251520 894419215 405199187 645433508 259209959 699103937 220259259 910691788 844317496 870876982 747564323 822293648 420044101 974981184 45599352 871431889 633590060 847717626 752113191 973137443 58462791 823422895 648886676 683113110 151083353 334149584 576540116 602911087 326387479 777322394 274713734 746072254 632891500 647781534 593911892 729119633 433028463 891793567 722386093 736337530 45400847 328425028 147230495 204054578 225366528 494575436 648908603 884023419 29459175 693834011 387747338 947784985 901561028 910014163 98952290 413420432 193267046 717239522 678352300 906731514 664162338 686955326 402392248 947792333 514355451 524865510 789005105 797318823 111675745 906093164 753281390 903101708 954379732 955339610 703347248 846895108 328843470 830466918 796107935 969662142 782229285 968976479 31729088 515044599 391174888 573774954 456431613 789820258 152536457 440337499 611316402 820123883 51475023 240035708 780464979 961456624 213421144 758344563 600026116 650554325 143159006 371204675 221512826 812061122 775417886 813098412 47618266 847777233 488865809 730315855 506809067 771089947 49585239 393044333 425527988 611899558 861230387 981218930 1152173 469282822 713572215 942078924 224126100 455845419 45790257 448540982 640961556 687959656 379335296 763192537 572785102 776745808 44894434 499447208 893351702 914889318 717287725 733660203 860362620 899272108 232072213 546798240 497570379 689562031 741441223 775428238 951866558 963479996 951612941 983889836 277119434 322194629 518632439 994397204 261382213 856390197 779625912 905524868 785950491 990792630 864186230 881201446 304204211 636658985 265387880 941171517 973413433 989606207 974096208 996708763 313230822 357782132 38405198 61974038 760382766 812459886 430836291 454860069 911768358 983200889 736935909 869575501 450156255 606577988 268978993 634391833 330947626 593274305 119357293 342177772 223274194 267261974 491129361 613547614 90789196 316706885 504771605 830118360 419609446 543864888 360103763 704207813 237135678 642826503 237521323 727316872 1770534 784106270 723379437 902444907 282240585 842004439 290537480 706417214 512497249 562488951 343392577 898227021 888972346 907467839 664313732 908703550 755564837 923357673 901526117 999340157 27164194 96546112 110167213 542658824 547817297 926878670 123724729 392691542 226348032 432301733 637777167 720315852 843304351 885173528 981379044 994129290 463140317 868138887 578593579 811652961 279381447 744581493 91338779 659042643 321384394 514051573 748700209 790588023 823518739 915026525 258917693 300018895 76094637 334908030 57465667 984849792 169531257 846770355 919682877 991830812 245650849 814223483 665603635 679018387 835137263 862195506 736812826 796933094 96194386 868276265 455171632 539137783 224831411 754445435 492327254 966965629 4391889 661040524 990435711 990660317 171966037 551361829 662419732 958097984 162686102 296648114 863802967 961457985 702545204 791883464 902211875 982083440 963190684 991288299 736387138 842075448 709668894 766694645 107425220 610515699 450819974 877206414 315950973 458585050 579772646 950433234 207290490 759885171 375344002 559263860 774055801 852138877 118287427 278743171 622983189 717207598 563583297 636090068 308986986 738520183 638424494 772323800 659031429 863691497 742251484 888595444 966238307 995261939 416164955 447394422 920355967 985561640 925314057 971401375 170148662 826969139 362843321 481486851 669150216 970529585 825012045 952634944 245331488 576155488 60140553 343306026 509417857 699649418 440581906 819559037 726297229 728723438 135051128 633414904 876412948 957453717 256449978 776158166 209264984 602765627 262277308 957941370 629218424 901626038 260235283 883511961 763114560 844915137 283137855 482921099 412080768 676973249 732753870 825246877 41731123 860028721 380349811 991355982 895608226 954906341 107677552 543101853 565281995 680820536 144592721 507489629 392671633 712492975 258727022 802430972 301777314 382332969 803694231 863294105 557854856 706772135 268565526 597763498 86244753 719368741 721852129 993787930 544823779 707152439 600553155 906007081 519935891 569412277 197791734 655916848 239114336 743044413 514420938 814937478 951577850 969298602 995202175 999310937 854435388 877624840 386727670 940651259 150427085 313528412 57983690 125069492 6540354 409695683 977344404 988297634 539381569 900880862 669704759 989210701 938111209 939121037 345357974 486050869 791657303 817150163 107375335 172472793 2786112 88334068 540498871 820794516 142216509 239889907 5684661 357812239 89405842 291811364 543534206 924911553 635996620 816564207 754734472 888404415 494831523 897059799 338607037 359233866 599250187 826441073 378508685 738455124 223838936 887791375 779248997 889301134 66083625 517383066 114154222 910450852 938839564 989078763 529328890 791678283 101415835 377197270 61258462 979616363 953202230 959243495 843809718 965204643 380166246 534189007 428878983 938661973 11070861 802615594 142570138 931224501 583294344 933787350 615273730 867411227 9204854 570983547 614549540 634778614 803433017 906567515 434925821 562922896 928631385 966425381 706712366 775719430 301631718 863195557 893870674 982952949 460390228 576112395 115199769 433347885 134471450 507172871 686677359 762767283 78483769 998447437 902147544 918153946 501494181 901722518 331073714 937658707 66405358 237136869 742845745 953594878 625606804 926190413 518379182 743236049 871341510 874288144 463096034 499240439 310295134 468546793 392403589 611903528 507337165 624676811 97664661 985684338 228549861 257358822 641935801 882507965 258557797 535120991 605998351 607042074 673329641 957391551 412908681 425380704 836259227 848563487 649083285 694206614 402067349 814492255 582659134 925730171 527787313 803285634 914209310 936214020 785783777 890542907 173836115 833472440 519664151 660119667 761569166 815352696 272235696 300019699 772875870 783384678 483168818 570221781 177344156 459172169 173834993 813980203 641111215 870811267 795749185 799531950 891639030 952022016 502222950 697170313 105427745 347520065 342413769 518731493 796368904 831332989 367732598 978822029 19862194 200026469 703155368 920332547 94773115 107883476 393048608 947101940 540570899 667475711 762828732 803955499 169387958 620140780 523171275 553745663 296129787 773420161 587574855 591387941 222234500 955440921 133925670 209679569 828853329 993909281 69850425 618730358 343367623 541593913 373134874 740590183 967749217 967888449 479512773 817574684 180444673 389493356 987399338 997341967 282694796 324702306 348042414 364757799 206502620 821599998 515706063 962088687 908001931 911927179 422322663 912821605 454270857 624254655 352657929 543012133 870992447 940097098 946053326 997026975 156331586 711892119 594715098 647011057 103108586 848331389 59952359 288825681 61548021 512673016 928409432 996215617 554126259 778059119 933967089 994282329 677818128 988955034 893720443 984542530 612376282 685012466 395108040 849738987 36396775 937253249 6173050 380824601 573629599 716087849 917812628 961012887 111172852 836062719 286172673 782304963 534572563 771377298 117732799 851999578 5270599 660976596 639365495 918022964 688977247 707120074 20985379 555245427 88714385 342704472 683457894 836262069 895869078 936211588 304968313 589691834 340134453 449997807 854554042 916708561 827636612 858404272 246886559 460649861 628002886 762245901 110144567 422814260 892259698 969263755 294104324 514792823 827301946 896078651 745472537 877789130 682246303 730575333 836536735 868654327 687495489 897314119 924115355 996432009 317147979 421838043 605031750 791862311 983809608 993742535 231182257 439204689 193690900 879435033 197005340 350724738 799245464 998577327 833339222 897806061 317749778 397605390 415336261 572589384 337400916 488989070 482245841 873554941 565980711 617449248 912274026 957052955 471330571 728538549 436626612 934330365 152369337 724280280 22176381 532583227 28555901 916853772 639471611 722986304 65792475 238195486 282082440 501101326 465015419 964435826 799175603 841904875 604519294 613210104 368523305 991438710 65372583 397048950 660558505 993949843 642209898 683654654 603572425 826421192 985121463 991660058 103050293 164970248 972850532 989921218 398355161 821418108 325485975 944834773 779470399 863004437 399286046 534683908 524439489 630665588 834475434 960201332 645043203 941096235 329938166 500939249 977998242 985175976 275981910 367723136 595260533 944225878 594600244 643688312 903200100 947695229 185519694 430200890 975054078 985627047 103774295 648146746 224355806 802203373 243645304 346540293 222725563 715322390 945291415 965319843 408354230 951409589 109457442 621507712 251613626 357179838 109597439 162730372 345037258 444795009 966107546 992564241 36443869 649568128 593532764 865251117 35925151 939165515 325031195 507947475 400726491 863344282 115046589 491432398 995461706 997332646 36475167 940980104 910783758 961121015 127270766 276857033 501586780 998761903 848012676 858259429 627638516 657034724 726070664 790748777 960868459 975538149 7239719 837069446 751070894 870882326 963462374 990748661 165781126 612304336 496690718 618930017 216771053 259902483 586537458 599381932 152480428 482344969 743738424 852708824 912467212 964009233 330196590 565373980 182182106 217652790 677946181 748487321 962709180 989234487 377945042 448648274 935080671 945107427 392452517 910640000 396591891 527415643 774100372 783897014 773788441 815644864 333215734 392272407 651464908 884957918 304493297 541206720 92822202 362139430 437227717 663165817 652382248 690836065 980998271 987158680 792612911 797172635 794871155 889949531 216895728 540151928 480127064 886328605 589338533 971738013 315833376 806513129 857378798 918713973 286674397 846139794 955467922 968966252 751188258 896137092 673854537 806144491 234269622 774179302 330119745 827631895 224708647 831658889 321172282 407107975 434930887 511156461 665787947 714020153 227833442 992484906 350308604 512520091 447734880 985571716 857582002 886240315 86827482 119107604 746866586 940493805 597474691 906074425 310279313 888360863 883553099 914613211 695322216 768124960 655374313 678845316 426861880 527897474 425781252 547220410 731317567 862643088 495498098 983728146 963623438 968280111 98703771 803419995 595700824 692644310 170753309 323391197 943313874 970686551 603943629 995973555 165759487 508018434 164863973 694366975 614753069 665562561 576623138 803847923 151361249 268194177 280742912 945239788 645504871 829606976 161790080 608999149 399625154 613763635 494378139 800014927 659110956 882527255 719131232 723491193 123676126 917778318 158921391 549448429 897664722 914112742 736803612 992577281 652386337 780722400 690975607 738777693 894807973 922118316 760709882 761242085 388077142 864968481 862824192 921374698 444330223 566323944 972283727 985260459 998709796 998777491 867592823 963959701 937946843 983490886 352101075 749807700 863922399 982519680 199920792 942716989 89941366 327086807 673271309 923473359 219123435 811901469 129809969 439334037 4848902 565582505 193431236 267654155 138605691 386529256 743828366 794545442 381652341 787456671 269375259 453688528 954599794 988120479 751674697 892425245 444748034 634177492 875937589 995866553 371217564 428734400 966930386 988682354 540097403 553297768 484466635 750477637 35584816 567841243 820554198 859386973 248722481 347739332 598602592 777997231 920058705 943191267 116742195 719963011 17525518 633132646 231240207 976039037 9248830 962132016 345202860 423395558 260869178 755761838 182782843 415608576 645636197 724692121 438304894 611914920 214778581 604054332 744878042 931739973 79804195 861933215 143502695 668680008 316236518 904422396 14220810 117133424 637357938 828648716 822813171 999197228 290054929 607475767 138703216 157173171 100637408 192044809 302368849 560106285 776332859 855003674 538058642 608543809 562948584 871412279 477614151 962505376 960739990 969166703 745128950 773161675 602006193 681684813 116290768 579590445 41516169 849369451 410593439 824609914 816350437 927293856 308967973 891322612 485759937 936034358 205479653 360521533 893879155 953663057 677626491 806358415 36087485 86262157 293204073 639241003 417506711 508780266 391622409 682210549 348141688 846004026 251493868 437056152 244734129 722600732 647331606 998437212 690990288 694568948 279633856 426575181 606842359 821901553 716234788 764821434 228632587 592659784 5894831 64990872 391342938 846512084 172815 569597804 65475078 855437958 778825447 886009207 954034957 976851578 705947696 938606732 448482682 679581466 217934787 682329129 829118358 924286159 378790477 924794538 647532526 649950418 318226568 368322645 402939722 812703470 974665793 981027686 260691172 325020488 651306383 672587831 329412523 822166757 528747311 559762223 231091989 349559060 937760654 977213040 450758701 687927699 831889470 958491434 404500625 488530797 874324379 989985432 831775908 942628631 176690050 673240264 427284318 684640760 680278650 857654207 156847694 232064827 745528679 794942516 431248154 738939486 296675222 548060422 614439859 631187735 532189125 657015449 10015956 514626563 68793818 957642187 486451650 928359306 469553794 795402342 254402190 685416118 168100328 351580950 833521491 973637501 711378174 984078522 953502916 977332935 939688667 957075510 948353760 974170347 541388781 823778621 854312440 914901630 376754929 536367962 311732668 410903751 841695579 881064565 698529078 881228849 732424412 756050931 354727910 450987205 770464537 885403275 662984518 998106448 906302863 923256153 98364745 902331880 265482505 647722823 767301974 858488461 92428924 564900046 190528039 603498415 596482192 680644074 50428944 327629227 845966050 988981402 568248127 905634690 11071481 972074479 130574117 259513314 553228691 952267155 405213812 519512331 379275770 765233731 404964602 933981656 100494889 664912947 833681438 846404375 834660639 904738011 251277194 901659569 377443835 483227398 303849541 984150599 262520769 277479329 646955231 804922210 981126194 990084648 809948834 886285902 407952199 878259917 480620843 824231148 55834233 434967524 451956339 876331124 387139937 961637766 290155607 563765473 662937861 947161818 579393134 759848744 384617792 845733348 316625199 876080520 276060255 521316782 191884653 393629926 311060181 424108516 247884288 923289200 532698635 886088641 964274206 986329283 42050567 112752015 376499728 381297470 541162191 673424141 906649662 968940441 445971761 887498355 675075549 789988349 422676907 760876195 807842031 993053247 886357609 969950305 629495153 674182490 412720904 469136741 860387846 875046755 763901138 864591607 983670004 992703371 636570902 653721908 292565016 337519613 961279875 994030503 807058592 901929836 310792243 883447872 783768027 966797735 972182227 985261411 286225791 298624855 358830529 810689393 318262822 513218648 652896459 689641173 198451447 201390143 426756089 904929118 562212980 869107124 748881667 767979116 864237954 913255854 387894828 421380770 72950344 374883963 768944224 889796892 490797834 545765248 910177231 992576016 221522384 688869282 444866266 701760115 729097681 966106260 870963763 939652846 198195588 584606835 56913156 671416932 859616851 911123604 535713518 993667447 803649181 860555238 818470771 838338458 151188371 814547938 75120719 370145370 396882633 749424154 476748588 478824585 221445620 418237069 474285199 536255209 265887756 633708204 666261868 718028265 820179585 840332494 687286690 868378165 184415404 364295016 137286048 975614667 234301574 571343747 823541848 918492204 864679156 972386431 422981869 968554059 549095117 760713191 416161822 877378413 107886458 638186616 82970067 601990985 236979317 871940012 652670380 669241767 166490564 981988184 298290138 587804753 664311011 985230203 740012828 957599307 842139659 971363716 478921529 856896258 203799444 813130262 929162789 973610609 125356529 853551838 538465730 668575919 607841766 921183034 520281412 729572759 766900673 967012157 325947164 753695694 167587052 845399050 335310370 652586761 638425843 692244621 233623273 255414814 48566651 159543698 194545729 679237977 901002945 982371863 707548744 749512245 727614282 887026101 210692923 899488292 433276967 435513796 643955831 982633573 614450370 812209741 38411210 968146068 768524042 937055135 587680540 751419066 709689510 858244085 851189868 861215256 459001745 476858042 212863203 661343483 942446168 986528773 988676584 992310433 555326164 801957840 922485013 998291591 142706899 222957753 188603762 382885197 208556941 707832101 597500326 874009218 463058485 934527275 858979310 941657787 420593770 769026197 116041913 792249566 198745035 483145731 45813772 460161551 961146808 972843967 31675772 282514235 458552808 685788355 374377167 713648530 398054118 897678295 272562965 359382413 527371404 631713264 667555797 883012836 600556770 986613900 86280961 290253954 479459807 960859305 645196735 995397160 182201874 816946526 772221757 969676441 484842420 534802572 795372796 947797992 425365589 958671571 327567306 650959546 107209168 578371750 269718558 925951147 908754882 967093616 653762678 717933645 667768415 675465113 463206754 810928783 939138686 993732071 234187397 294421671 60502550 799296689 413449941 667938084 119796832 463832252 842608457 985892135 679475063 831049492 903774837 934382011 269236641 512166987 334675018 508422603 768520244 972872762 986069910 989617997 595276941 689521952 934666030 943149258 566517624 577468782 59112155 213496647 780256696 910287449 223851267 257517331 725151263 916210921 349149585 637367369 965669274 988987091 236742274 925537444 239188191 644991825 253694298 893905125 840194251 909880457 532153136 590879544 667602639 848400363 455228712 707970081 734414605 835677252 786953925 896934884 440700563 723974649 852271640 983133026 991160603 995520146 269644815 556943745 656676854 829130098 310870595 659804894 989854882 994311408 475776256 570224384 394065934 474861133 279131700 628052533 188389206 871468893 694559418 810787716 561064755 891301486 200516621 726869880 328976565 569603204 162940780 739532553 746802467 851729439 806377791 960612859 165660082 430908422 374724499 739520259 797923172 972588421 990319719 993450954 856422084 894652886 998073766 998826543 826972379 902982239 497553432 801905735 949704688 983065785 62126644 218838317 685596618 859463736 973934019 994544984 894690848 917305529 932356046 958608347 494383118 935304013 218794558 982122787 553113285 948280972 137864055 300147337 515742264 680256994 138324733 314636465 705561275 927219094 38674842 945290527 440382028 621653613 400832847 427187595 158535275 311337460 710498481 866924072 493055462 939754783 26300970 238759420 750199531 988070382 513864287 784482210 898194077 938591545 848413611 891369013 853427032 974423116 148318273 842493206 297605250 914961375 214007584 817773682 546547465 742569255 127884448 788161176 5111569 565813441 548959270 595571593 637902875 863582271 945907698 969221696 93932426 915068001 281011633 540137509 622407507 684404991 690268149 734397817 848535947 944414674 581060346 751863304 360295265 929269071 936251419 984465606 172442715 585927285 997982754 998789941 193243337 682737617 602893155 669669073 920942010 922685861 873847047 985206012 164054371 777009933 286271645 534146239 454503959 495974295 955625351 991212881 754274343 791587133 119778991 188169372 677699261 737371931 965709679 971153648 331650766 790655475 632448241 965229465 713013280 840935571 181900689 945728806 188574536 208877579 289282820 952547416 233920116 395363604 301907090 708723943 935110523 950234461 454968838 496842041 581055004 630136243 516156094 543527464 462624392 595096458 510736267 921047094 797791535 998938263 171466545 526820115 252176225 685207499 743097643 835362284 612222394 949187375 665590596 746906806 147450133 646201921 759313731 835651706 529014170 870397827 749570895 961669658 786661135 834877623 179081396 519515524 142731521 181245310 604502654 639595069 603039852 694262621 525557028 826441363 833960418 954406741 989315429 996807108 663503652 739612956 243711935 824447419 637409136 865186638 544692608 801735576 230838912 247862939 543038346 671826027 748069857 844222580 625405732 785477303 94992958 343009190 932777963 954504246 872950001 922522348 33041766 945413889 918396062 965945599 440291890 874488032 370283399 584036602 66448949 494390931 340744127 474931921 186121243 256711031 703020905 743217025 246819286 683287893 343655077 369864777 697487621 791047659 904172096 969235347 441099683 975658713 790169379 942625817 820787587 974687192 576502436 783904745 556983322 962688320 708941356 859571933 367356067 917022746 269423263 468784552 948336108 998298461 934320917 942481344 279616004 599702008 196060168 676631730 157004292 270514044 407462998 571302159 438123662 675239211 60956214 88192932 66383426 979822994 416613051 576103492 492098533 918745462 536997008 965941457 222244582 969845763 668482707 989260690 682891907 975147216 23093370 865345608 104435944 716007140 76396507 722837604 666768601 758879599 660952335 764623007 614875287 656652406 330055234 635785987 604546340 831658182 809119325 849227945 832704603 840467134 675748279 916448415 531788144 988857468 303760091 435651811 78453512 309684380 225909804 466854629 483239753 841904962 293930886 695979351 752699872 833847773 764022819 776719615 570100838 920093643 441768914 931434843 395140205 530836906 187379200 450376228 13671498 494001140 21044034 179950655 163950943 973854590 38163764 737487407 170818514 420453053 755065820 899633219 922096794 957868482 182571214 394097210 584940593 723074723 271031706 719339602 812714907 970575791 600852709 913246882 511122001 639500022 10125391 184034787 949309040 977196200 756034291 870422716 733609603 845344436 274383366 438537925 605413282 788527226 615686698 623269612 582883457 682308410 109342132 841462779 253311186 263710646 368594100 403289415 947913139 994893118 872325393 904171472 257651481 385674766 575162331 624380343 250234260 977618925 533733465 841712703 169630406 843946815 884009656 987588888 940260899 945590542 152019407 738322096 460350912 574003982 893714813 994076157 131156949 620144827 644468802 818062362 372550847 794436315 295493197 606299107 820819683 841206965 721244014 898519633 543209000 605845610 200878292 259636879 803971044 907022283 117703935 975453302 113235358 466838992 351129589 498964412 558302155 690323400 507164050 666826699 397158986 636892119 49425256 302244866 737969177 745099870 733765572 873182241 463994111 944103088 322105970 371885687 518906367 845527910 577309695 961740197 540435543 749297176 65706893 343871616 538664145 593641118 756484374 809860887 131296766 799015197 830878764 931893088 869084688 898254667 83427894 721225439 298689761 450279187 305762752 520436634 338675477 678777732 469353280 547581831 528256339 770820262 979330127 979431276 816641299 987090201 60979614 551702789 132713652 166278872 389154399 864093634 106287969 414662476 375295965 417137832 168291716 405082496 230706828 520666803 320297008 579997880 150729486 476180606 384043917 699886010 384130995 719333835 61560698 840762102 581661181 608674842 717719312 879294286 769274928 845965059 558502925 572325759 635811194 755520382 558890211 705906273 854825262 854832079 483519635 971692881 60708628 683196412 270707598 942577017 760553832 987920904 402096802 442373588 553020633 620386517 440119542 727296688 644115607 918227794 751155574 788450617 361811870 716294167 487580262 969730685 973254741 992334292 490159413 646104268 719249449 952761190 903788480 904783637 994317842 997603193 306497274 397258675 195118970 570782629 144055590 846094355 119429244 372149787 636840523 900713461 953733580 984307566 329041957 565295015 300912224 673364214 880673005 978280408 120703834 798448295 966104287 974373709 790038678 858521803 634678131 991866806 829812105 897844909 433226655 553416877 882241619 969787081 408275774 940793981 489283412 642605903 935126901 992074307 179423116 774037275 754524992 952991758 689323395 859787666 22892966 915672495 881088556 918199833 457830066 857629936 559894821 845111942 212651309 316405891 846658585 968317254 606586370 879277215 994077100 997162311 885945745 954916821 900683875 993272154 768608421 799086288 533669413 791821100 593397671 972876621 85889896 613070533 467111557 778913173 890756558 943328835 885282693 957724095 495538221 682024859 694831127 718669911 303093261 793510813 84704832 762133233 647223217 825725029 958922108 982193041 422350325 916812302 8392718 88556224 8124811 346172034 914326236 927164878 22059668 974685765 975652499 991245957 437892902 700095003 589693834 901938676 529836306 692978920 979839509 998370106 389300839 494499262 647088945 920563551 869635177 906458880 838795371 963478940 584207817 863969788 90652441 654822888 738272952 965047876 204799695 684649022 218639899 329126074 208249256 934712794 776470453 961625804 799225 293569803 505041283 920921590 156158343 914861844 287765707 828204615 850830976 910857736 44950146 852575767 185840125 960591163 298977526 625148384 568964615 634861003 602489600 634393616 526041477 847186215 257154804 835152495 108265623 874633572 305632021 515054504 221480020 479179949 570264764 825032196 425342674 553111925 490772249 581723036 701358667 812666174 692916491 920309816 624974417 788046406 706583554 885480932 596995817 718433055 384642632 921885503 822312097 987202696 454525356 692083489 140735078 610062695 486305769 613488952 963710131 976803176 202612094 330890398 301762298 702105206 990717912 998731542 228599165 664950575 919974322 929469783 751851117 873139857 429430790 938040546 419392220 840151137 371973945 389669006 438029541 868094417 241604601 416104296 185206238 373275701 220116762 517217776 597767209 712625801 454520767 861229658 919596887 944611671 851623856 892334786 179715810 648992142 206262286 309264895 32809789 893742064 868963322 870696911 194501990 391607292 324524780 542444517 186279706 307357721 429894603 631156629 259590608 800142182 583139860 827929923 843312375 884531396 72680030 575146475 788064828 936900946 108198548 642641122 963486552 997127614 736983702 866761656 187996729 229981804 509986308 552221684 645445684 968672779 34570909 527253344 368413382 597845143 833980035 858406622 936549782 986121254 614193589 918876294 311418291 705364148 247291218 272826505 277897014 896387789 215225673 557296723 545111632 800820037 126180138 785971601 303768325 779688213 46866367 212874099 454674724 976512561 315332388 948823398 968042805 990004167 914460691 991481875 129615823 898548156 135181874 425829797 133759063 890296151 669442368 685957991 527453754 698047186 931630207 943509650 585235761 731225850 17804072 588266134 965008711 995447592 397124081 676394820 879618142 976203895 274396322 849333353 705713340 843169037 588870178 650837536 935888272 943327879 817915471 957370737 569053477 745192424 248525693 977996143 696281103 821007007 636049476 720069300 379602444 647335457 842333553 929526518 205360327 279002764 231284055 242587920 887448967 901711016 798756115 875220555 979766908 994058890 802040427 925384505 633757812 649704362 315312153 455731497 353026835 471107417 890940939 937407323 677718856 817011090 677151562 793106021 741802443 808763449 150287655 334952235 300656638 495861326 524855912 843550763 862141156 886719436 795576777 881937537 450667165 890778485 66991911 655668846 796303554 926767232 674922638 823796421 348795423 380626566 951709125 973242924 17265812 484582757 48789651 524400262 76446306 459299918 164465662 236897632 527768799 641151234 649264860 814486602 333860304 759451140 12498955 340394200 109534025 251244512 563521294 600819816 821148578 946129962 172766061 261122622 738704190 805349582 457970639 738968392 959512089 967306586 254519941 259231163 295815775 899360031 472001867 810922849 123297969 493379550 951731289 956078110 2721376 498643829 734741206 984882730 373347179 504237814 889311336 921841032 624424419 843185951 494456953 902678768 878888924 977090088 722237533 841980977 115878234 447204867 685605598 875233308 939416014 995269015 501582864 883532334 668944803 758797827 433565547 704530396 74193516 232454481 307515647 540913997 480868314 617949809 550229347 572034111 885160709 971413025 339401360 849375655 506718338 668523602 103411920 708021007 556626406 767483835 347339772 884422347 137459716 489415568 492006128 527684541 623970857 653814965 371284685 644810575 30678598 952993317 558726418 861940479 352493404 683540404 779775442 843126643 908726340 921674540 621934278 700164923 528862508 603426554 637423609 904731377 45744323 134778754 821524837 949340572 932831788 951199793 524167957 617291220 217189546 434422835 222008702 364178253 42100737 461226148 236704270 613405215 27583626 695446378 796292822 965332831 544645169 653022261 405294039 788787228 14014353 761979743 649274899 801286528 555859541 942709229 869697424 921499823 248459774 574603487 963833492 995795985 187306410 326420638 213824836 488999064 394662448 732506861 857842659 897060436 958509216 979923528 786492874 989154403 620960760 938067217 435174667 555412990 124130381 778612070 575305878 936024210 85874692 132261328 662048588 909988042 235456205 584960581 887747333 942337146 727374289 987530614 116029483 167572044 905016605 912355854 524317943 797515422 653158067 970672662 373901287 488593046 423316580 831657048 450576970 587334592 887854506 951184090 284229363 840316597 170805142 643771140 657544256 797078393 706193940 921017142 527394243 707916383 926608452 929093837 109125979 358438372 419928961 682458916 100644688 843098308 600740131 957910274 643782095 655761913 291076925 422480833 228235078 664175181 814803333 964421877 600784523 708874212 741387859 827845988 945835865 991580667 182776461 407352776 958370258 967419027 736284181 782064213 745104752 870090266 2343728 907418807 701416947 849610153 601741602 878285415 767202914 999028469 666542941 927482779 700800586 796478137 415031906 430859547 686200474 723709189 45480489 373257927 893926965 939650619 14590183 456829309 918636595 972791421 711551322 961131166 789104935 895420141 978501626 998956145 385506845 777319695 645818789 754820271 486339198 654329343 181953791 854596167 870585626 938006496 268473791 331370662 268892380 377062928 862061555 993737163 243965065 364243488 719441691 752930449 659861755 824577010 112719250 875352768 825275737 850223844 554677508 592778712 969251493 991025257 141278985 859607574 949706200 955272147 802038184 820280900 52942179 943566510 743111241 895883285 907493130 911196833 541657356 961458626 578049229 613348142 392985474 747954576 679087068 738511711 62388523 366903572 303073768 747893222 640144228 904582422 747798864 893654888 557648813 633732768 714476856 966233978 569777277 753282525 125596900 761389313 366974762 442544045 277896062 587710770 269680171 393095007 321666964 589867951 690819698 839318854 93699589 871668571 352197791 703146625 724017331 809355965 882621942 989641272 459296520 524327424 489759766 836028702 930179228 933963006 55701320 374274550 929985510 953098474 504832140 823881261 673799599 705949214 943665419 970024154 548454424 757775837 174061510 715159994 306195785 350082549 161364763 717003248 695492630 735146038 950162098 960914351 157421671 260822527 591761432 991790765 685108324 697883681 628713116 642024920 174363991 553751009 232841152 383378431 760312733 946315186 768944685 854259963 33377287 777738419 573809904 850741599 961124645 971727890 174567966 328951608 923577871 965684470 837099464 863366698 264363363 555563679 92878594 902851482 364301191 640007154 106047430 477357883 830959821 855791327 976700156 996856129 704640977 910888033 439094019 626328432 158756032 592237885 7919043 716700296 657295983 736116348 367055303 753202358 277848005 373141552 71541442 204082076 260578733 695372849 107301018 184498518 886543021 908018040 36732160 723259023 750046051 934646174 870200776 898546603 413349120 703975474 526705418 838523128 575079628 875498070 282734920 352973176 763874049 881847728 100681455 455269543 587286048 803244213 335115672 667011911 975681352 982336025 726604526 813504323 919358517 923439572 573262231 976502493 162343729 496814581 628957716 687726514 320767594 438054460 123081759 466761106 905852979 998021854 439576779 737308133 792275662 900110575 383379512 398518813 386323292 928590243 785323461 937804850 809249390 936801765 600944711 728741650 426194442 891695758 84563359 851626631 113364644 755065594 896156111 920588866 420689707 910812260 162484602 249237544 169888266 630179459 680069759 694330951 928631 643991987 85748909 814545598 876052915 891178694 17099883 726710916 439939336 441871297 502514687 669749512 323811558 713378741 377126179 822967174 358313313 395291928 863307380 887179814 518271098 794364719 291497417 883950614 737130042 929720407 213451077 628903545 459584134 854535444 956246701 984952612 478615578 507212751 404531479 644577029 996174645 997378657 817852327 857529901 887757801 910342049 359611012 579580124 861030576 898954694 522037007 737843237 922036975 963289880 584671676 642399372 542676585 777358800 719589864 935842602 534567922 984754958 480081332 933138491 979659312 996637909 382883326 668022006 948607502 992389492 806173618 866782046 796198884 829389967 16855877 212701357 981011711 994703410 38079609 188474510 974917137 985839780 533894215 945548259 316324217 509392571 616811054 957946929 62538884 674374691 808334020 893451584 734440417 857101371 242782132 532453426 302740598 498460527 635643516 750502918 800908811 850604213 92350748 338057179 574372064 852834353 200171932 769313991 393001998 802684500 512802593 960700250 481772803 641488557 41491217 309321307 763056782 976126777 67648460 904622233 975701285 976829403 342669625 441997304 234967026 769815271 359628288 530810351 955908908 992830785 396540152 897645131 837669528 912774486 22458933 884075169 438529315 772793653 951786597 982405115 313560639 382064431 807161768 933640709 54563265 662198089 181665939 353898209 515075959 882279457 77321820 188915810 803610704 851839280 5525761 442555796 45721521 907522601 658911591 802457369 885010791 890832425 982238916 995554722 5476494 816453353 934893636 984341740 292212355 530295937 946463117 981413182 947914932 971229942 440875355 685472026 73418347 232615812 780926386 950991834 515394196 967040865 374883141 708775751 538683245 698804977 975274368 978752349 308999165 724137707 894103227 928860782 662181029 880667585 840435715 896483236 345133147 385282654 885410676 969158918 32675901 310780733 128342403 372367283 598727503 877598359 18408469 42905774 354514379 560767836 51496436 399635377 736106797 836393186 536315294 660219243 82507704 351233022 713409950 728284734 162881536 785501386 390884890 931541577 726023336 866350480 164362016 368791653 91961693 421089839 691625092 834277058 897170300 911756174 195193485 305960096 283628517 798326778 942045908 968818688 489650392 557447664 379332962 435203289 701237247 922970824 833128284 854370139 972354942 972486894 344652443 371840418 308253409 821582211 542592249 951766301 714027496 740189227 611117249 906332788 748654015 872723986 462688635 853403162 504651113 743454017 95835218 219784166 27795244 49027488 520675139 771985982 440814647 751462174 582450059 743773719 575733817 914093862 760198569 803665168 431398944 813041374 969016749 975958895 203600443 506128907 143347172 808842091 39111808 400202408 275844588 975641965 184618483 253239967 406145711 969234169 34829203 922799456 914007674 933144890 28674413 459141222 415733321 828440848 796050673 941549752 232228948 967780547 979238504 983750682 809444794 909288522 657421598 759077848 871577983 951877382 269906484 627302970 292988271 384255146 554016778 933745825 331078257 736073248 665573113 739445178 774158998 931722176 968971250 969228126 564644001 710341592 178678997 782458629 676238919 988441514 154071844 230767156 509177627 927226603 948866917 950235235 145972886 245703289 481135363 943855104 897152897 984643493 980935825 997702380 780752462 912871105 621068056 731515741 308197365 453240125 348500524 532636388 110085959 219625582 96425380 315797408 274341894 955997732 643135382 791840907 180081223 612989064 172999254 365401620 109430831 174793299 834734664 840080734 650666540 954053539 439701784 608597561 556220447 602168001 712200031 991937540 885332931 994866478 97197826 314977285 749480878 943972826 661973747 722731748 592799241 924160035 613054607 860092663 211378793 462767667 815632015 902091872 853067798 965034656 102418864 541895162 302335537 508084283 5905204 786169062 749487424 876450075 877195804 917234113 16338176 127899042 811755654 832170215 812436727 893200456 575660025 992952021 316331290 799749302 623744438 786861188 4518315 276090383 840043819 895251803 176920116 310360832 335341324 807535712 173929441 965966011 717499231 754952213 189315269 399725947 341348794 968666209 559640725 804420812 898393860 928094937 108591068 744475680 900978623 976184178 916007255 966171135 645371626 712397374 321050156 406814734 841600866 955930812 76336056 264763808 540462837 545615002 799807742 846162838 622436263 677236267 259396619 311202876 268694122 450669558 77435973 710165672 914051238 983860793 810728950 877602268 575319167 637239593 706790637 806303859 537194278 980360736 537307269 858120520 727962650 883107508 181324178 503770655 973293728 989560244 111313890 392248104 867030161 979701035 455980832 825653867 563109996 855006263 759110308 890185252 285929914 643757388 669458954 950793046 864106298 955833713 879645733 983128348 35372835 344687651 321493686 843998835 118566570 568034963 303160808 500641638 56741958 511627004 468509556 548269760 690361950 867754922 63395513 315883183 671781296 777910721 229778385 294235219 461279178 639082713 817787783 822246517 851742472 990526227 107814624 575924275 897729843 910116255 912112501 914682875 777961836 995910410 916126330 989212769 348559322 443590289 246558767 268149560 362728990 518414441 95083679 320908676 634844683 709151822 6467887 854739951 593546857 757244582 103776484 511968817 753851341 807656339 410217251 723638554 215173348 894406095 244535831 478379046 58005904 599081011 330863228 618174069 92126406 978617303 489216689 715138529 650094211 992290918 829524567 952417656 439644016 508857988 572763935 705163481 713927886 756860529 682921809 774694887 308224375 695012085 799417529 909165719 731999719 916556342 958001250 959448699 817379279 847087525 73098848 187495125 665781551 697883250 582355897 624852312 260086960 380303697 97707131 414923903 12472410 400385598 318532125 676791193 340553967 423153913 244896777 677970253 66418469 733539045 480244450 583298116 951690569 955997823 904742301 998475230 545725834 583041511 536054392 822451001 774239652 981630816 227327683 857090615 800236228 898481125 685212825 925474204 472083525 475951243 995045416 998005488 301409763 683568830 538542398 736206970 552044861 801957443 635288379 959419001 821209704 848837863 959727760 964749416 949110245 967972545 358003202 803046598 57597440 605899792 272248473 462394514 562044488 807461723 15927353 795534051 279973555 686223795 193985206 325166989 545789065 868098359 138127871 922448210 730347391 936708371 349864506 510723799 850820412 954331763 724078118 816182153 207278319 621792205 837009270 918539439 108159344 571770779 992588232 992804454 45967061 919857589 902789734 951656346 123288728 803848744 936593810 998587893 290033129 408787665 516298565 838414282 461508682 609490220 550839297 987294214 396021104 747534158 708168410 911311687 122294697 666301559 2589871 758184171 794308368 878068471 992190256 995443599 62512570 717011851 113174574 776635999 592830704 599616421 695659424 882531629 864418436 873945089 764671215 862642117 662291626 988861440 632452372 946540437 704875476 860950010 5235034 720964847 304243998 344901956 751729669 976073777 556548778 581938779 775399926 958852318 95676973 761202027 919880339 986585544 4108776 238144919 688086690 814279487 505393857 588041217 413771936 674015034 243153063 411097349 925906382 946520148 117394071 685245402 759112048 980218753 390557218 396518984 506368675 533518275 631883793 824247440 427252180 790461994 861748233 948728648 478588184 797747025 718513559 894424448 453037555 453879436 731776561 886759722 72629943 593055189 883386058 956633939 911769948 933644623 461284845 516026729 206644034 284042442 609940928 980099726 920758711 943997721 553101353 645542908 593532686 797956703 39960118 503601912 929174812 932294933 670212500 888874661 139364595 819828906 817980571 840102110 592200228 796171608 449450414 796742643 514106772 848103299 315100334 952438591 477542850 758037115 38584938 123098221 848823541 929766129 655204743 813900323 39005406 554401449 554929185 798241048 607543691 911561224 173335364 292586882 535952932 651608101 373582382 912146803 199790449 277174176 194948690 257938454 414919331 657663037 811993078 907137245 878394161 970583245 385701311 781802077 369634697 396940694 309804760 546441466 156241652 817460652 497477765 822737769 613672188 734281813 487720706 669290339 296151396 472015261 372448635 502065074 745931669 921288368 736657841 931359655 720571439 876733291 116306585 236582699 785313509 934501577 248176438 747883662 236160194 987829308 928573697 941537146 957394067 977677225 638882275 711367942 365809458 640904532 852898725 897606357 373994441 989758485 458852624 985652595 267118684 653316666 300232920 770258912 43818100 437381167 508309994 586110478 16826477 666997531 940746283 943786846 12234098 557747203 738846907 858996025 929651451 947544951 373275633 712580612 929292180 996184664 989405513 998463567 155424417 510647282 895140897 964240557 25247960 533543067 39408381 848137811 735054038 755068505 884834089 913614184 636661911 832418735 648839909 657649934 549197527 850099723 409272034 750666173 182453878 971731178 129103752 194738021 523487445 797728755 148835493 635699741 479514385 973339087 980375506 990040078 412977751 818978750 402117627 609328105 17615365 511605005 962359416 976058537 871088707 890655367 867339937 993515705 333928555 840617807 734535199 940402534 772980648 785870658 487935662 681761767 769192632 837997689 972022805 972779766 232095566 937165857 783540338 832564682 464071128 651515818 327179554 979919750 354776120 387716490 702624011 871431173 90135488 724009007 331739606 966577369 653570528 681323525 266629057 840765292 484680469 507691360 157860649 528493751 633004219 669520093 397035433 922906271 996834579 997449521 274621416 784173080 56210786 690353999 466946720 838115857 699907228 951955368 655993308 894118293 149923412 300737079 577241056 630987686 317501457 635518485 4319209 491190615 43346378 944722627 810342392 892277411 967718455 993907100 601747985 981838880 944175424 974792244 410488352 691307091 454573014 551120733 125862392 451110919 205816737 356914855 668918404 747974190 883626206 947755437 447826498 874194205 951902809 955246162 170013316 253000471 184016558 264045288 837862909 956657106 221179118 887446183 770786250 951913537 917235765 936155716 251605493 492219311 281723448 481550077 890664910 979166116 176127013 356674165 651073754 852462782 426067806 929587285 641966201 865747466 821674034 964136128 348401764 976394077 657967035 863585560 787423401 955636748 521104350 584185650 800498584 912776964 717093140 880125915 716789348 767512517 306322240 455909394 576893529 614540354 154985486 236631930 641956360 951896406 950747562 951531328 677458548 827634962 963325750 972085796 774894746 811224246 736313543 962635590 582052327 657869745 916131873 933734313 591606902 615271408 977220914 993910107 613318872 916627045 4632528 793672840 130886933 225903433 936725333 950733827 573408624 621380464 241596747 854866176 946465923 967979435 286018870 794694031 731240752 989794766 709443455 973249404 640454340 908876680 401777048 791380323 746136683 783754545 63622978 506379354 665839600 732200757 826594943 864740742 773412434 777479421 932561652 968797488 271456345 836835472 639038011 736846001 645240860 818386453 45424799 797928541 512793438 972112523 331185806 555079491 623771399 864593686 925276538 997380111 823614312 847978851 509880937 987355793 398412455 427902174 34162083 975487178 297351844 686938448 720914624 814042249 889999639 971771159 317702766 330410813 247744265 252907779 368333659 600124942 286612108 290563284 140091912 414409802 855433452 994519823 170681400 287780929 846845685 868241986 764037268 961230163 723359922 991589524 858764394 941995558 975920299 992663559 850432283 868601475 64189869 494944338 489411685 549153207 947103445 986694393 230550612 243404854 190341409 773449262 985176394 989644933 456562544 494170560 5981404 274308716 781929544 795747434 926009337 953297963 581574334 804164276 60806724 469908403 142618624 940152484 475547838 714343486 709802553 833435129 613545908 919263125 932231306 933103204 274291169 331107850 615500075 971476566 365532751 588168415 167507427 579934255 170148326 629571002 622492394 856652427 588219349 945407506 856443452 914086255 664434161 810387004 77084977 835070752 698738625 873169618 28745932 657054889 448958332 751755963 825333718 902355037 295834694 497601749 742112965 950548399 257582000 770235685 276980799 941375884 262109100 570430821 982037411 990009211 347833852 754347945 80158301 725237111 680091126 797048608 372320433 986179190 156143779 336885047 489364724 848258003 348930225 436843669 96850251 627644540 198785735 441179104 106672279 302044069 169348978 799965402 692353731 864776783 299041470 452680069 818528987 980277836 142818068 726354851 217497774 312094116 903853708 905770898 828979538 987950570 602019174 936172727 738157244 893964800 26370541 515244970 811003960 880621331 256718215 516197905 178837307 463468602 456737217 839884741 441184962 546344231 815532656 914904151 517215347 582278447 480544314 886644163 667036687 993643303 869115052 872134203 932883910 982036890 187412741 739200492 641689405 705061345 215586672 930861556 811966794 852943622 884089855 930618022 742325179 849369919 425280085 698792105 611424477 836763442 585739452 874003618 647499351 802208238 944311055 993986501 93154998 766725768 157197977 828825103 122726789 577986804 510741224 694008886 691287086 718919002 813363678 986286883 816898466 896010412 855900017 964521112 84218509 531783661 725550308 997512218 671781463 740194391 160430934 924567722 94148284 528954244 192724129 595835155 848985348 859535148 111580527 229935934 992945088 994795169 552024269 885533892 666803639 955977408 512118918 967829443 996540668 998027464 203316741 245517238 950107303 953380339 782438215 872203133 997155947 998156406 958253784 978126481 925917544 939244042 66321765 489949611 660832102 780802848 56526607 467953054 109692076 411295769 529503178 895795134 893092046 952062839 435609304 673412341 762949598 892888204 552937172 835211847 180543845 451142698 615171894 723202333 130429538 942904520 126489291 283655174 958089758 980343435 574350404 935515222 244128179 578929270 252702501 974486321 931812949 941731155 528460798 864336737 284528288 769005396 277766824 700313011 285392669 619014500 896683283 985731764 357773162 954767290 977762254 981550837 472263957 504954952 976338890 995427750 487107584 698368081 685957877 830647013 737987034 780000673 46748012 400061763 884810565 941156729 475926297 524652394 274800929 766367577 986971442 992062698 907116796 932745081 491547265 898058198 357265534 545043224 145082301 326235140 140360670 338594330 596862496 934873351 119788126 556003643 378849259 775028590 488654510 590296128 592463624 900639917 619880248 998655260 627807086 885505724 56715464 836350517 193901620 589490083 396789549 603005408 772454104 951285471 651290704 993871996 398460115 641424458 164128946 990179763 5717245 852227392 279148076 325726958 62805916 905405245 177553636 719684643 299222736 368369046 297430056 711243258 364030364 604214783 252742049 787186527 469700571 494018114 698852765 997736582 905079066 962283516 805843828 874330859 507981649 748273259 278966418 782113214 3137164 521734765 956072809 957329920 458378546 520791613 941670219 963890877 764412988 912511869 219474999 402554488 990948070 995577019 122418153 209552885 768558071 970587937 494259819 663340991 221591442 682431623 326734288 904258851 211353390 657467656 549298149 948392531 559172814 806217689 745803118 782698935 418208081 906717220 520567328 667601473 311662746 353048937 863914468 952084363 790463417 978651121 961191408 973779779 32830282 613978709 226082788 535078200 862533495 899459953 24702728 98413297 634901841 750136335 66221437 725241964 926633476 976022987 833607618 847387507 779520889 895883789 377123221 948384513 836252452 837444327 753123330 926690995 700603300 901667257 99562116 199923865 100007733 451733530 672783858 739126321 683361997 807866591 418225309 457756379 949503330 967050440 438256231 904457701 843085329 875598143 118258423 912859217 765299839 931981732 35545313 904053134 963080774 976101827 781464926 945207492 487619764 519361865 209156354 443183812 694268496 837608704 316724345 548521166 934197450 948478462 371143003 981610660 588403889 811719419 789197239 939919323 151949961 631548100 184895758 805225916 648039107 921153380 781803349 964068569 740824170 938228693 94228517 867854976 515514238 616963152 37228398 985588937 556107550 587568913 167851610 461557266 539617077 830280935 668184223 868101487 119958701 558476503 671167652 840288047 198316034 693463746 581013744 814284658 596921692 683638735 292709657 885101448 257816288 478390559 349246266 619574031 292988723 311430484 646713429 743492640 83765842 311914527 76428332 433312732 887748590 973036138 962930967 975393804 397281326 947386529 12424632 758714400 190008186 737186262 327418516 840497808 731277597 929199457 722944634 923479136 975776003 998432612 294033870 965768223 142078231 922172210 634692961 911260504 74816994 487338110 883193311 887190188 149527689 887658058 528554159 890822584 298365721 413759038 821109872 960598849 531676475 696417756 335689990 861453429 388314723 754861205 312385042 468040348 975947665 991694576 780298312 940191255 278772726 825315886 699468851 759394957 819069957 859348607 424142060 568354954 235750591 646347373 503214616 989266271 420132270 805179087 616652054 879749870 969585527 987781668 963502777 972352004 478146258 785624112 296929681 630751193 338505046 758624187 888870725 898424306 614195603 717943376 647936196 730041484 44015437 692193333 433665412 665101507 798863253 811579915 9067667 575689684 404612541 697026585 345969957 499644392 398847276 525849685 138453238 965402131 855911686 883570068 329425123 495640588 701163192 883638627 508240245 672381089 141614216 792535251 688911921 910877760 905426892 919265851 381915718 479491206 918359706 939542069 562812228 880365750 560119365 567510533 283979343 387421622 843611403 905678219 503098922 949031411 539688347 721835481 862672557 892424204 137501873 391507991 989205500 999283745 252478983 505756781 773017607 889541578 544072675 855355182 962766380 981426245 319128148 691306651 795152469 841356631 245075954 316819306 800699375 908901110 724241323 892821460 112101536 316915270 416897769 603565102 288092276 858788205 395057443 864592400 995366520 995868803 970240141 979151481 405833327 580806494 232865943 349798418 470310 349335472 280713889 811467987 250945383 521514442 451954626 914733504 983725906 990197153 242325614 777306516 174278515 539891521 979981306 986003683 893714960 946245558 869347301 936254797 744824382 932157453 423113470 646414556 779682431 779775061 618226060 993496911 223931815 491628631 232467984 472854301 690438320 920055876 315028582 423673585 19800689 517026308 179327787 788438082 932102150 964822549 470947736 990937213 348344355 520237243 617872451 627423292 648511816 858523211 927221456 986653328 738960266 957326675 86493429 332825269 972942436 973843385 496617606 932820419 454381629 969873091 468963400 694604872 4696636 621847987 49735517 153944130 132087781 961219069 215449036 776020604 698629367 844790875 856555191 964846602 817227341 912847470 399597153 496411732 434627496 783421996 792619543 800724930 670311366 885815269 696715965 969481743 10878902 585132859 25143145 198201319 562138896 967296276 981742958 982824692 869781873 900252732 993111381 994511111 79890917 891065957 500244950 565114553 504533736 846312393 944964025 986924787 66067141 320678793 691518067 825019665 321517076 767447291 507280415 793970957 493959714 921381354 986353694 997874603 278309676 934431786 246072886 873439090 41660922 904221314 845435050 923634980 674325134 909182094 38771146 348347017 434866909 971930678 549072925 785220288 978422937 985220356 890510047 898908929 324018893 944502540 364746343 617466820 595463332 601400825 520084045 868024504 635598590 679859776 447138965 784478920 610178935 946720580 550250879 790721871 648300134 929449938 618805566 819347853 363122786 843511963 731660222 863356872 78414160 331829359 52212675 692754281 476984 871655202 151094377 815936352 584956290 778987965 871982900 951657544 166727945 539328437 259032364 998661477 498790225 693218073 870221264 870941687 666584084 679915997 858024780 962950846 575464018 666943964 831380952 993950674 791606154 854528774 10117671 949960590 532534147 724820145 521904906 569720205 280843550 710393956 831449582 909200988 84952964 525458244 640068412 931939838 800693322 915434482 406730083 953353673 208219166 254219600 422274950 733193946 967975660 990175365 170005749 799589890 52731510 941953613 57493345 932892540 327820810 984985468 346640362 403042089 351220149 868537940 89591301 870166413 849513931 956829354 130448108 330699691 887070930 899317036 200121971 857817550 713681581 720469633 580476597 894249256 277369745 828433071 36591706 724474604 181198865 892247514 120717535 361212180 722589392 854954293 360398849 835978546 474240735 725788696 619544652 970383928 778855916 828386885 611453098 703988902 813089479 948046559 479502155 981123554 160493416 172870314 955091797 961489566 642413108 906486922 371826902 861048938 133209944 263203892 677416663 712536002 975474426 981722526 312783513 912166830 542365714 894429965 343375378 521778389 393258623 719796940 118170719 276314276 735516357 827652464 564918298 696277936 878452821 903537228 457377522 564523863 934536979 948755942 807975951 922553799 540631435 589988644 925396679 982125963 73640030 657888708 427890599 990384181 5766380 64948123 521735686 974344198 475151117 684824628 549619422 678854452 886092465 895791389 586969684 795634118 959567947 989976664 253844838 419247362 847801876 908863785 27186502 785969853 66093422 614055655 860968897 863356420 719495595 783382406 584295327 845080217 945573888 950029528 185051590 254125421 469611232 492382345 646826246 778027652 735238368 923952493 211351148 898298814 913703482 970606984 470227530 524900147 54815611 188620415 596178542 601720814 598599114 617856149 280117870 768488032 534943954 769038763 744871581 933363645 266688360 467176997 818232651 997189590 290332169 996369853 735712319 755682295 388302625 929210314 655396616 905739590 622939874 818129735 876863952 900956176 154884001 566690630 316796065 463553051 236087013 384705552 627031445 965291216 843002028 857009871 735312467 874943133 979561270 993342660 975831719 979604373 60242962 583940446 34371303 762242574 370525692 818068318 222591376 824921865 605317728 871476195 427916727 695967917 893965283 913617261 475257367 879139500 67483148 585289540 479691334 803240494 567879045 749938501 683588112 881164277 662086167 706192980 999316125 999379085 681566734 976862558 248717784 405229047 183439695 196504255 89063259 439512121 650938494 868355582 21106373 944274904 440315213 825256371 470993207 758954864 612647817 853237049 194233844 669374538 720253212 812908606 865542310 973654046 169974444 461725194 474550523 949869427 185161013 468813076 423148137 726171330 839252392 990460008 709374914 935372854 973695354 987007331 348514927 638204174 672207585 987388298 754610644 929153123 762044027 804099435 92107462 617022456 766722798 866029599 114363831 324959348 441201647 836057306 550038350 880162662 490873412 789370894 583438845 805088542 744924019 760743024 32655105 236337229 137031042 541930049 996730367 997971512 771163897 846970421 243515645 860336452 755134706 785240109 444244177 863525281 67242322 302853451 206420658 479464161 654122982 699202752 506613397 926617121 514315137 873367908 855432822 945172477 72915375 385299385 202257808 452010586 708308076 994801979 406006697 864431420 886106920 929874897 904524405 917782646 240005429 661884946 196985243 203543794 500171825 895405659 342055020 497699385 639155906 867128725 329878039 408501026 401755324 433944435 433828126 536490552 735115616 982939235 601254133 859846353 276862822 652302120 516643801 534644571 252315747 940801777 75919921 342680777 52797594 978791988 712359172 885227480 604401354 647067965 474939994 652916832 363523953 716304897 422893726 714547174 398969727 405213409 782859905 822317483 989943130 995442962 592220081 726143371 55024875 745946015 3077791 213167391 219604837 513986336 191137905 282238874 258523274 476205000 281253481 897282904 627683427 978830053 856657023 957683382 724801982 873573336 562016844 742960491 76828520 654450793 129372099 136500032 195626914 302387563 89140968 854432071 794923576 981363971 886028869 934473794 826839300 955967232 887682821 993960400 887397221 965392513 332085488 883542794 135566936 551529251 965481695 965932252 322967541 937120584 495449016 500043932 418685382 489934014 751849465 988193976 502895761 836504980 191921600 764631919 849219457 873094015 206465890 930836879 600278233 939264739 918236355 947272167 659475126 933608719 113434540 896630914 720928558 931132394 564543329 721652040 211485988 711521222 713820027 933706956 673275250 872598788 193825616 249791173 752791237 990479218 512471359 665832974 463319411 632484045 137189545 489041257 420035090 568845553 290114624 328999073 673510984 868997485 205396925 957422274 221878209 643968188 320728129 789504825 93590150 229333767 638545233 913458712 442035736 447624153 807182362 928654137 471982002 966593931 198142819 351638328 528215303 821947352 943391965 964632842 5249834 284293905 266057548 287942945 720435684 924020544 483015005 986282872 167113111 317753700 903898739 936628236 297808301 403640868 426185406 526027714 287129474 822820404 88267659 962367509 657532449 856290495 671731742 851601532 705232795 966196524 313634694 707583545 212603894 380447450 904803442 959183102 530633342 815733270 517745725 581129499 300613516 685385081 877377696 986344457 991973584 995590340 932907936 943328643 187840058 918837996 116114582 350991893 14554501 711374982 451830847 794658194 36784534 135818071 360137315 440410104 129863348 825164983 557968515 967051977 476009132 877752227 404425284 986503133 345593542 915441393 487958373 734227898 889971015 902104537 543384593 922970038 823927854 893293278 412139959 869576532 313040747 657993736 754258820 844623833 373769315 536171606 865992566 931576503 553020951 781212668 821655625 937438373 279897974 841704322 167791330 183676417 560369231 896253766 152683695 446150885 301188686 935422128 831382319 977105095 59395128 140123521 174487474 374353544 871019166 972179157 994175341 998084037 731160052 929298718 538911371 682089860 937554491 960452374 294589667 302187176 818626082 990196614 784500584 872501523 596745858 599926645 432990919 439475688 697445013 730626859 535707152 994641192 894794310 953481015 749089227 784161953 421276739 516716479 558556022 728663362 126763663 526177130 528357540 754820906 30700081 297696140 538927024 706312193 568015032 964321285 877207105 938885399 280388742 302822832 494974632 795927539 515795170 644184591 482955941 794716802 369565487 515990343 520456017 994087746 150753918 206656164 530076529 713600183 542630408 902706751 55732962 130991840 435540020 897687180 521300688 636832540 988583581 990291737 845747056 846415083 878331127 908361431 954815699 971273270 132159980 190395840 894894585 902111446 939168133 985656934 480491756 750995109 402027763 895504991 158748954 274159693 573079016 812128912 739451241 781405718 447994867 772039800 309291028 505129424 275398322 512458356 818052218 980626457 10245890 839230931 43842799 125618349 774448613 980210730 307385277 502480511 387980702 481815402 79428033 532067125 998218031 998809820 590207846 893449458 702266830 888067282 469528522 844149815 592795502 640366156 969182290 993520806 136018164 229235125 173901050 982247534 621849952 876228757 850493587 858221512 736036147 980450911 760569795 863276412 390979150 569568324 913311417 938710327 399647022 896536831 629364548 958041501 816110972 953998711 336351375 444501988 702144257 890250182 439118530 823027291 500397594 870124727 625360256 839159588 226290762 856741283 53576370 88350148 719676444 805906090 17350408 319899411 501333676 609659101 858069335 899595823 688167265 804914367 421925990 712238432 525252814 737634317 843533815 859088104 238626949 890694335 246403733 545175591 922602103 979297240 16056960 694522581 320916681 529586251 393700757 628794444 935473585 972488403 918545256 919543187 204689773 468909044 107973840 598902957 913315756 926815205 385971674 513035393 584736556 747898704 956969329 991080306 124744906 711922781 328406920 932607330 573212160 840450653 943461734 959730833 384811756 400009000 874100999 923113064 512016603 545308995 866528712 959285288 23172125 109992348 748682722 876942822 445298975 822202907 288979300 643092586 897481016 992405228 564134187 814303846 487201739 989413493 95894034 175007392 286150358 490960157 123375760 569217308 813032998 958268604 222268651 446788673 538621400 960862221 708284036 992883431 851567463 935022879 307430867 332216794 625332217 652306448 156777734 624973268 477131989 625524240 812520800 826945680 147657271 349592568 855052741 887617650 237992017 513497125 184287532 327766984 671352064 710987738 487928106 852301371 613965883 782503562 570429323 707433075 774694484 961773797 544050124 784155017 485266026 835643985 757530130 970113170 145068496 725196258 394493961 754552122 962253085 992636876 935499852 974581458 752718900 832695072 101591675 684927397 373875746 694879851 119887212 191920943 958496385 959551050 342972067 832915479 300430074 635717123 962710529 976943670 734577724 810939538 561405023 968290381 244172655 394323918 466807836 528988781 489214624 668445180 515858482 964099181 606437874 703886085 946427470 994258751 865747974 905375266 836790670 931716150 201098784 650949769 706117694 761470852 847089733 899596585 634397926 952284785 187738045 332086750 983246840 990248127 949623818 959199745 844835844 880831533 338057075 678299241 591161821 897673078 48932960 461271856 37938139 944134908 454070652 761937004 535966252 638542438 4951609 582856673 407319052 990318769 373614886 597968942 429733663 890787698 132670715 625142927 768236629 920540942 595391538 701109393 928815710 938285757 384433620 992717571 547928830 574311592 546421415 713099069 591191221 985048217 430387755 440869145 485319994 738847557 896436558 967854936 733170796 861989006 417683782 904421123 811092638 879662368 558883409 659895519 327541011 818238292 459556689 822573796 302231922 635924026 884648684 889619187 210160637 596421433 38695068 288618016 880564609 922169336 320859591 560782520 38779501 711341171 556692954 933661342 625719726 703536202 625723576 877169977 309610628 593982073 660101374 811756116 433822476 982122708 393401868 482833062 126408273 722773044 902306120 998238751 907467501 985048310 993270194 999193482 373977647 750784728 260287143 971376257 366989714 520752478 111779602 311127902 951665592 993383596 698022848 792348446 957948060 987626348 597724700 714398751 177914153 696004762 92727932 398299491 511152166 589983322 715943771 923715967 961905714 981396067 695102587 850018922 296405034 880430854 214990429 329555029 249133886 386330428 529007707 918094980 513688833 514555978 205505306 370123470 815495990 883420569 774436780 970683567 128828782 373549660 296620298 739863584 131482078 900702316 76193980 582122794 907824554 932150107 144675514 420021422 262157454 886801024 495236347 816279538 298022849 710528199 393227293 791082563 980676199 997756953 347861339 976629655 997221535 998789935 870365229 924252047 372189552 639322504 404279777 571602023 320740127 794758604 741315014 866793515 150954454 826695788 719855346 866085491 794541280 879516895 691275082 745039501 403450341 833597586 210221944 546369828 956405867 968916792 38943795 315439249 549757713 621796396 335530239 337923154 799169502 833739188 953414954 961576561 391257025 880658173 555960876 987494245 682657007 884813058 597240055 793379688 320634305 526405217 444521575 575099775 290108315 511661242 866074193 938672505 666771683 852302184 177283307 665625253 228215211 645451516 302289384 776376454 561969805 874998582 472087418 775421339 458132566 742907259 195572407 559342466 256254220 907636691 776617047 838239432 337068676 804364728 749059931 921905378 121296557 127512547 514591423 851177399 613755033 821644896 402710322 670938391 666409798 925308564 138719428 832126872 538530946 603889905 21077976 728031653 773900196 968818037 816172029 935579546 331645616 419304815 891530579 966000013 186916721 204432191 894955094 935543404 185570108 408035837 415943178 601396665 777932481 955161064 829386059 909980245 241427129 712289318 916584965 935237351 73341815 189651677 823788587 920929425 945367819 979416437 797300650 975652797 395749549 448484792 865981260 994903246 853831446 918012147 699412177 722676986 475956321 831773979 768959629 860981386 336035180 932530348 149694552 629443318 187784361 300624187 339010364 620921274 474701506 565636255 387718602 532553582 416147092 637375381 828939981 861143551 964874713 994314958 425754512 868663849 772666476 830702427 834965657 963530118 717380579 873332492 932779989 971324548 595762173 802791454 964492792 975893648 800574888 880806394 41775987 628867239 952549410 953919573 670006776 695708056 147153870 227932661 162072852 774108542 338410062 910440847 792228298 969861455 436039953 882276922 822246272 998846738 222839072 792378720 460668947 911689318 580792811 778845146 104056347 953282567 957720054 983990953 479584908 713088211 902853834 979378658 617386813 662114657 617375000 865688345 322407124 859940983 113548673 795636369 668936782 979379439 923282503 992459592 742158154 913209966 261003813 690358137 664388986 952527740 103494326 610945944 65967678 773392883 232657508 979244908 974391377 982117724 448208363 937612981 906989438 953938084 916931868 969738124 90411711 526201070 396192847 738570314 340264191 862773402 805647849 869259646 55351263 531731789 458797127 719740733 61303795 595935733 865999083 889161865 546880385 916938512 669369490 801765659 250920318 459256622 56051701 848025028 255851232 674267152 227898593 765953341 644525029 686326568 26423610 137307343 741317478 981927158 146684981 156201226 738691774 758985253 799545947 879880193 891236618 906073430 361163181 721735842 573634745 992597682 875948105 998970739 248347608 946255248 455760067 911567401 693138105 986793976 935222860 962329845 142349430 192662417 33285409 483074684 445087754 530096086 732754877 913017350 130218374 661625422 810798167 911886122 119116199 572201387 21905613 91548389 174796600 372973094 701732304 867958787 942444663 974603287 726078091 818824968 483198096 963639847 117226736 681828945 101754960 139274881 659788262 727009332 153319685 574909058 119816480 710974862 248023669 538490492 933288941 962733026 997185765 997692548 317601413 983949793 294183263 495613869 471100282 875386920 820956122 920979477 414269297 660395690 153369483 479338265 159536426 341535900 14421870 204314923 174912722 454219376 422250192 819806149 581009395 948289588 865481281 887462098 252253294 445643037 947131263 991473862 221325288 428129869 162265402 498953493 77802405 841637800 801314032 875702632 503208717 645164569 774023706 897370121 37262049 917298822 664080280 702231330 657914855 849696874 947586567 970429051 411978500 921032722 784579434 910040945 411185767 557287108 406994023 467573587 935114476 982235707 342756166 968097167 307025175 540411994 717623974 722150308 977562565 989973104 514397630 721720359 639104366 767507199 185634073 858755381 336994386 587412816 11659893 82652731 487764504 555800944 303248771 676965479 79342483 376967222 627955642 857214863 168343711 388115204 157946667 493838854 677253321 859202973 438667079 795100610 334893126 386233147 76260633 267531672 43177634 190974622 413659746 782404461 959688796 997876677 511571410 799164086 239164797 433924539 409033763 932385055 672175788 748332867 333277267 481524626 933404932 973572847 961792681 963857990 750828134 845716362 531118009 974584463 211912392 219390698 731075170 780902252 21451445 954202263 722165925 723617004 956063323 992226267 532270255 734527705 647937831 742005667 427576059 479102619 692053099 910524250 17095371 451201613 68852613 842712686 83498569 158689608 54559892 562691040 629599673 846006872 56930635 73643704 616140157 692904189 817107627 832202081 609389566 785206239 565153465 940847088 741596452 948411587 715987116 734011289 188588164 651740319 366957784 938937286 208369846 578043979 750802667 975785202 710209452 799398526 802224131 973639816 621024086 672128786 969244832 991382874 798078055 895205957 701147630 927786247 534873980 844357449 24535485 263945784 922317592 931080323 582298019 900583291 537563574 831729159 40810530 163948725 352071530 958579815 119360651 843653214 873248218 926760626 406990997 640002678 925473515 984424428 629806173 925359755 457468064 490046636 942199664 969107390 769638723 927800268 881476742 934770312 156542217 404473430 136205154 541962802 172435887 308674140 544208904 561045073 657240985 877897153 251771920 345718140 884825655 899065758 10856603 379006115 423037843 493061700 691543156 856747671 468240760 508369093 95379935 958858106 710830565 864048346 811193868 873971273 63630691 642811690 742508517 770367240 124357101 972294199 247694791 708115631 525848276 860323070 730935253 783492778 975874764 990025244 886402831 900106683 442951243 976088234 382733097 997176945 193136826 266296707 155254555 394217408 320601943 576207211 510948657 573247210 590230767 905074938 681346523 776055925 675722075 992541255 599087847 933185051 65287263 997619304 924446330 976247993 739668585 811606274 30902107 762158701 351424588 498942090 128601595 933289830 111598398 423451750 179001222 783088361 575767524 802135005 638437965 965548129 861974655 888289673 759416091 822444790 219289092 958782035 554416247 990125111 483768861 630943503 199921587 201918246 651998264 765116028 410500106 947342112 767889346 887224479 259362475 771517274 301376972 915951608 808957223 958908611 814830925 987757183 232825252 995533071 632310419 986456963 158023601 301831635 158644843 309776076 819642863 944452084 937340661 984995098 843901481 931573881 560997602 777476208 494993041 555422401 677332502 813834964 934849078 965941850 868306150 986272895 149669760 384830548 354363714 885662005 88677406 456891678 272057443 513273263 800201793 929050526 986603141 991875749 177127947 383172084 39803974 311264912 171671813 449395288 852763569 963659627 199515485 210165249 221122927 610032649 717529412 955190576 154113252 351389396 182746366 302550994 891679917 922107247 581882695 698604119 255814001 530521023 609007907 975363682 904753368 985214053 709492760 957542038 966016752 985188040 165199379 906949444 28786391 488204788 558044115 830317123 627105400 724177054 272272919 357255610 182207114 801537198 451030213 887434625 588862001 884084215 616651249 911182553 331744372 486262593 291362938 694042826 43378619 342879768 634156572 854311663 36488707 54445518 392382247 792524243 297145799 982244239 308900972 917394921 792202860 987984164 44896928 473181852 317539267 429650418 41609733 920093623 139282758 613808629 900389830 908400333 648674595 902759264 385378478 795260572 739378290 974499176 577602503 883180194 511913888 597029527 941759100 944661975 424956998 577357288 448243786 690557488 544556506 854756349 776956064 917433172 958420412 995196725 72814354 931231095 714396915 808263074 832705221 978498338 278340329 391995627 210509700 594597813 119126729 566351117 607138725 878831984 571705065 675291399 781840907 962494110 509771955 805748236 314270429 928371609 947865726 973757162 202322273 818988170 357228341 964695290 527671751 714478432 477416595 600145411 269821095 737348380 980197060 997092325 522528841 899117481 568118111 780968289 286197633 533391850 640291714 767954405 306625186 482238081 236452055 445576960 984762544 988574312 760736133 863576374 478093602 769750351 304056119 483726244 725665129 845422486 54240120 623614171 970335859 982376084 134464360 847213289 109631849 175387699 323292468 475230791 704823373 936597195 502903373 857716746 535932870 857240365 931028638 973665081 860231089 947026894 80931478 657812229 658741802 862754760 202641557 748949467 305869215 485693046 482469945 985050419 842208711 965144562 818488894 956012059 460604763 952239113 80174375 864134499 341774135 624887058 826514838 840528957 649041431 983158961 625303379 827746322 646844976 714755827 588363713 830014822 218875465 887895584 784837859 967691893 445674507 816451554 885747452 987415708 977488106 998430746 745849766 875984411 663902376 785379013 299287581 644466777 113513803 720507511 901195237 979524998 381253039 764081716 590747371 656522814 299147265 841379177 109201151 619361109 562296472 657096754 4846770 302321067 459673368 886944688 362302545 681795116 299338837 676681719 146505444 964335848 178638322 910005086 55647194 403748793 923072021 985046047 30164580 155614461 207406573 461919071 407805160 549747397 551815578 732019122 428788787 662885228 973743305 987616466 759425568 961071210 662566541 876302472 861835629 867141893 701509203 752857019 806913905 932111546 773992161 997703804 275787001 689719805 918179743 961840680 240971664 495656146 340067563 704317659 297642540 784255287 701481075 758072539 184719725 778734828 216594512 886626887 65021164 260646953 425814534 525667818 501802624 856529125 631634967 855930961 156012951 275949594 836258765 917528871 367655619 867112682 84759050 912672620 581281337 708870909 433159342 822437143 722335607 831235940 101521737 405325015 657085645 731428945 555425350 611147357 435989604 836749691 540983531 674892057 225421416 467620489 634298506 690063296 234959231 618296362 379317155 611352963 104931784 878170189 828936689 992723748 299316151 809433155 601255355 779960191 397681029 872819721 46386927 725771757 432269717 897899255 32952931 176822189 366744690 810619272 994410951 996759935 64595107 644486214 286176311 513043009 166033989 237906666 27862124 830100483 724123626 826699005 446212815 872713898 663519207 735422532 427533073 462142915 526155881 867730188 12190834 153451162 936334317 959572754 86976564 635310422 289671502 537086274 928017320 949430091 770091177 862778283 758018983 917392541 828092659 837151051 392485465 933919406 13921861 840781733 955163447 978501426 244950851 962603831 702545117 908870563 101082850 461588980 39598168 512163402 987323455 999347673 550185480 944509190 144205928 842340709 455704992 653812122 327833952 772570056 739605121 962431471 967960304 972171574 683919006 958392584 324461253 630868381 640633510 732039073 893404861 995481843 327173094 891411750 935080216 995337184 49367870 948661863 277918997 282570279 936617954 952160543 392535345 612626148 165184996 523165306 423591621 630901196 74207024 539217555 674627790 735100342 612983072 614772733 748134244 814607809 641435190 781706632 771632098 781818666 647004956 656903377 480253571 973944592 459371632 466996822 826486307 834997200 962467792 989593323 302592791 839676486 905644210 946294523 674113918 944761955 181879004 319639280 810179505 996344530 160652469 912853835 661804918 788928089 87261607 464681768 131798321 919570779 502127942 869412384 805642639 954527312 140201488 618046898 355243546 587611305 61513959 474331025 998371497 999300365 401323407 419293518 330998784 601459447 520817728 701770966 679325853 734568876 782845928 868216964 119799042 493680263 612111297 895175515 343641064 475670884 509285914 657173989 32463184 978162996 332689351 632577876 198221138 486999884 660920560 679311696 704806999 936234051 494471706 504435568 239711460 974393158 528202304 605757597 465517140 478453190 811342581 815782569 52914150 406168857 330002343 417784954 528544172 566582451 224212336 559355001 986005167 993113989 169979419 488430021 733520490 949613134 393090935 824997724 625486575 697449046 706387919 876007569 39166406 510862186 429747936 921880762 658860225 694539016 602265408 933277468 691003734 830963735 582116117 946972021 527592853 776641238 380152816 953746343 667337442 703853492 702249420 984418809 899317110 995351487 658661964 989048681 473550015 770487571 554543151 690596293 819891411 894718691 61576984 61800911 788457167 823685119 668747962 916702108 378603096 958523845 162563598 621798176 26414367 596028427 569233451 642172356 905992478 995815470 712965715 918707958 644882612 727268404 443988263 761012991 814817709 952191076 426692394 900506695 870210726 951083285 110185351 250766316 600698095 607942205 322045422 394613660 912652450 964287252 533158625 568342617 237296872 502499792 895530697 928006484 112513660 762927646 89173515 365173029 247578667 810189378 205358260 990780870 80047301 639561496 314601689 725292580 237979762 325959096 828396647 913791745 705966624 764715000 378939028 441656893 875908899 950160992 1604316 416627623 549149103 686953873 836416597 882735334 572032774 994815806 251493253 880576837 793511533 821469460 476779244 870594410 42796775 816864450 959966920 983835785 172999996 826416250 645501368 886886773 763481017 950256672 437601800 923430057 882261240 938939802 328698763 414576462 243977614 673210282 16922384 48749722 43070699 466114556 705550833 977178020 269971104 664780560 123917132 753818357 40865723 279084214 667552288 856207577 487253927 912057243 367705050 527929778 433172959 978113339 747753526 961183253 142622824 556448913 176167876 760359357 787408225 826300457 244515691 968191961 747758851 886619768 33142467 790325566 939948630 967581688 222472497 799866385 387449006 856845179 54376083 575357695 204267475 544329397 283085242 778978659 210069677 881750245 296762262 802928127 287234359 900083394 577679435 903089936 59193398 112779210 482676783 801258284 915228199 981777316 253415567 602201396 315857156 395326843 609428845 825009268 373094657 925558265 67098638 338031452 202501409 861534969 673770952 893446545 40154322 180571530 29220326 497030723 857951762 961981124 964138463 988776464 748632552 940541090 511277077 908562606 482837279 814641982 579170578 583246800 275522046 582737958 525778855 650044556 195588880 529392669 319526727 704835760 526436393 605995112 828485620 957077518 242237899 635011639 77368593 885462422 375381258 716591956 805131317 822507578 352487840 777527134 273146798 701684850 884385502 887675175 921503330 934184110 972604102 979303264 311013973 522116471 714454349 775006485 15267203 364398434 924242750 942799997 956064940 998683567 753799527 989033116 852852947 877626029 476411190 502360427 98159668 542670322 32267956 373325487 417752361 664602712 526135841 574891989 942141893 943527081 153909249 597076302 532136444 744260556 995686203 996772834 724772412 808866779 866123550 952114753 53454639 195244847 168871996 423056485 756134352 947001452 314189102 694623449 339248157 417247316 262846316 357345476 869857717 974197212 793367846 804024106 331218535 906809641 452015100 869186225 84086857 989633860 96354106 687906051 621361155 864412927 241716071 369746229 886189558 947962083 585161917 843276836 32692141 265999208 777325153 995353201 73330940 357299262 632159132 677567729 567869771 942389517 99963153 188908900 710175114 914909840 589547155 612827155 632655258 721184637 94620121 117359823 759501463 876289451 279960409 447390810 728034665 900560953 707996090 775119783 806876627 817812793 195506058 345237045 639397683 793511677 504144782 877192880 656963518 761451518 103941265 435545757 88772914 259262232 202023761 726323177 21782666 265537896 747938977 753700030 277390270 619659783 799894371 884568929 622428958 803532513 791674189 840568029 781278645 883754275 444092825 925456367 208708925 700728765 210782670 293045485 189016798 794758152 487775185 980855150 761642055 979466738 495600047 652510708 495179282 676441741 708535550 906621470 778624163 871175003 29422973 702363780 711487852 724722837 141745266 625310802 762553799 920304831 573183962 834711054 592407549 842317060 287324973 969963805 894602810 895626751 257159877 820685360 207380219 301983071 589237374 651095647 715478380 740695692 548039641 676718764 410001574 799988920 741537010 890858749 587294649 852879743 412166282 905179363 717400398 731568983 25532477 161820425 177356114 657126030 698445706 901131401 340291416 622716498 526357056 794131186 654445427 701652198 158857665 540410311 163646912 968759331 977809285 992491144 661814865 711169046 45846358 133160568 732431355 992207714 8754409 310970443 25724061 140766781 820141277 876760689 25018493 804915651 671195859 676612197 791153432 920982031 937967705 948817728 467142043 619804405 441131782 798973553 188769938 791685278 976666316 988631409 313046914 938764169 72289565 384648401 533970477 693615123 986411463 989935278 317022938 784146100 227102739 473011313 684558929 841782328 765622034 775312411 142962449 652699591 546544706 964206251 756340114 865007447 157333747 196513184 47877970 672869094 932405072 994985943 542432190 654510102 581509985 945714365 879946356 896951359 441435789 790043888 333186610 670720044 281291261 722847468 598664776 972487708 386494867 414368786 668200095 927381980 15223120 563507158 902459101 975220225 357992624 691559952 875048643 885827309 383025095 831958145 402975444 970769680 13168144 457290824 950791993 996058550 136268345 286110645 851585612 947660346 389452551 813871552 286424215 582890435 660672960 818964681 426645909 865007057 611160922 768476522 338341563 948925534 148719255 885569806 723302263 956152936 140615907 502560332 223795344 982514066 199503861 990513302 664865586 809478238 58391221 712352935 218007695 802326910 908115396 924026195 773951352 937866597 916612143 930093852 756887468 912336836 478377558 560482731 317387675 790792244 279216528 957545766 610011000 926784039 468794357 869723861 188075307 654329348 15471122 257253351 554084138 795650210 346161022 643232644 156886349 263889280 699220366 962139916 350062709 372886870 508647594 694824148 633897357 704105418 738524247 821306512 435623922 663134402 342118890 965824710 382798863 788520808 433306537 994103525 111589764 432006421 344685303 772184119 252308971 424978228 91539696 92714848 920523530 962580145 219521571 670126362 684436921 798196160 969493371 993664382 692652386 955834432 459783514 638302397 73035007 906054415 570344863 773058576 233487660 423455175 937594870 944682341 758786663 867785736 721963108 928716764 261407078 373065221 125079536 203805534 305566748 911740408 265513953 804147070 267686069 765014196 784424746 963613732 857552174 978320990 269389288 832067855 120456824 385385928 514458568 948799570 874956926 891909622 820191400 827184810 276274619 433694455 543923997 902149016 242681834 429237848 736143499 885226368 571577857 905101240 503295199 548160643 697759726 964190788 995908208 997053122 487356923 521972048 126004510 533510676 827004716 995756917 128670165 757995765 660853929 702651624 377313589 609682246 531523862 832642168 591531571 950369582 983762086 986432287 243140995 462457920 555062908 610049589 29200950 863988812 699478304 940209726 982341914 991474462 619208027 643002923 71118375 730871282 395609763 832560221 859438065 982874016 613037645 740652453 523631036 742371403 283197122 668808747 725515142 943345943 918910854 992629327 990191247 997081046 668541091 773238012 147385460 806619662 58427367 920345398 677263041 688989067 500033307 992960958 15827746 735588870 821090266 878753042 501236471 868024523 627104765 941041551 566558623 971981589 111653183 699543906 596845271 815988944 124160514 450046234 949039694 957984827 454072005 775846440 336914320 979378763 397942791 449693799 354146823 586542388 455977955 517735773 552066235 964732021 18870241 328282316 814521294 903943946 141308666 582409013 378703382 693646016 93379105 910044273 722918873 917135067 755743602 950446172 61183499 572365446 193154994 698134629 192969399 889714770 703749192 799591113 932205595 941525537 556662475 710829130 599558287 750336512 595741121 816051239 644713779 864182099 207675124 458886006 701696447 962765309 93064699 113301188 153619961 866190200 606379116 655873607 992862716 995940718 26058479 811701172 953839316 961752865 144415710 918532526 801481850 840569358 662416544 855993066 251192079 733535096 417015777 850207690 503319356 959145193 850463284 989051105 364219837 365993074 592287379 685890785 68901222 72857887 959403135 972901077 840493197 850977723 792894934 850612037 421696652 678072300 352614600 407465696 779999454 866501079 390176176 914559025 864680660 875501631 698158592 741305742 390085315 431230200 756647108 808012315 246766852 340900360 545908686 763542823 410782451 749947693 30803633 433186252 962078558 975967961 977246486 994520457 443125553 511108106 253149120 295896597 134261509 803921207 298339735 960741464 851199166 899476928 935397727 992607960 466770344 473726794 588462567 762780076 928944383 951910270 612753721 960603891 374688995 757768014 814728683 969972563 293700471 347735867 115522608 948724994 864929565 893899925 86740181 276347426 347909779 942479214 861591771 928781410 983396022 997244062 254337612 831562444 738579752 805998601 247659347 251195599 751083796 778916469 592108791 720918326 165256482 563633386 197137293 316206451 785210086 938834321 493174129 601972937 797577576 870219337 399944791 893901351 86881792 548162949 30040098 492239986 899437788 952780285 384114645 648622716 58480269 841656753 643157939 819699976 260253036 386621670 216063889 846722470 61863680 408416646 699249902 931409712 215285111 332100445 844520606 982291690 903045855 970266443 226004084 423535055 493668769 678596265 341453883 786499960 226952229 371005861 454824512 851229541 390360294 585959080 945733537 986638502 606278086 946178110 135065872 150429841 435673275 868872665 641673513 875319217 20670121 433903849 29505112 434608068 513148707 842140685 701300890 988590797 192274399 445958594 143218045 185160533 556959448 696572455 832472621 965497427 270746610 816329788 297282487 720841031 857243908 886183000 723700414 971530449 467637040 665568164 214044608 456009090 883948690 957267322 555608552 727094691 628422571 821055145 59707502 445183489 26737357 676672010 682734478 940002065 146788085 717452924 39936425 265708189 947502508 985660204 423263978 663494438 942977692 962295662 913813897 967817936 579177474 636944333 740797092 988389526 826234180 992473507 850442233 944525160 789204391 974442625 449261269 792303435 570653434 702410034 481293556 777739245 912250033 941799506 784822092 994412134 466578098 799582425 824721562 861387244 130693426 236983083 81434114 435395685 883616177 994887473 752526070 880249286 772086448 790087335 355588249 423082269 584678640 938721172 609247429 716870140 470284408 587591310 105805562 517072992 987970689 997124625 945735872 964874810 454151083 887006241 646662882 841492865 101384841 305777900 694032223 915033276 445054318 790247715 457882403 540888876 583979705 758010549 698355682 816435283 244080687 889329751 154495298 828850208 992827377 996696486 491262516 574371003 390394515 849020514 853793072 887729481 134423053 493288891 168627222 337798671 874890208 882082600 839645306 870748247 375779746 851722737 317323454 396419164 211338458 625129645 85436589 292464845 409881467 913430354 84779212 382086419 369618447 969890274 429138289 488623216 843839382 987271313 843963010 896423082 841355725 977851785 137103860 558350927 299005795 575225935 369619872 952389768 782196463 942325370 283061581 994093339 254416975 673596052 30360810 894609142 91028849 579904479 248011721 747169991 49760565 943290848 498981453 690981502 382451546 446765016 977085300 995654151 331712937 387002768 235105548 622571412 658414918 796164274 795192502 933419348 835280710 839585087 823885611 975251154 730478756 864012842 548903343 846190961 849130398 923607902 267169838 872196436 901508489 918557851 893632993 968933445 859731668 935978758 108492670 902666898 174435625 482210803 648632924 713966262 177632643 842976015 19171769 735705232 87984189 901540115 267637734 546423413 218245947 400426215 212399329 649643694 215313846 971167046 451617294 501939908 976222642 982872782 161059896 278553246 379368838 629943571 445001915 955264756 511541451 965718912 279927585 399487584 856497164 979108903 166260872 425209016 890101900 923604787 260070925 526799135 294907368 784657085 475556110 679640210 289263888 674181799 791914322 845374367 153261433 666917916 412185782 948805449 367175682 759349075 178866675 869777799 399383358 781610290 909294880 920310593 336429329 795266350 469399883 603358394 426004156 493346606 319326982 806846468 652092995 872410116 301518492 338776201 678818629 949608584 481198216 936285076 296479741 331572869 801877969 945214664 800964441 862732492 149717650 945234918 393946222 633333131 19663616 747506274 33749802 752531340 297124877 410539540 50232861 419050779 123278787 411616341 880555928 888592938 136596329 193662712 531587470 536190800 659710842 705144573 812346434 930454574 645376599 707876489 735867021 940603845 986561884 991481011 599441892 814827501 303079972 536862779 336095162 532036262 954771235 974690274 629700297 850453997 239088985 424376909 362976048 500027707 993682768 997564797 632213385 958298730 751756252 800825269 992964903 994635761 617431329 804936833 475995384 799420782 260508006 372970403 98935821 660713233 731738026 958569443 152952954 409028472 28577252 552101412 282557133 298049524 82067039 261315120 139671387 368274217 574101314 874773861 176610653 976613757 543505175 993429833 408962745 674109468 737779811 973007205 821814437 894397560 732414342 771334059 909730035 952236195 346804441 548346188 14784738 319091483 298766597 728446052 895107843 965338453 911371340 917504595 394073797 954695846 151277996 751311442 340023205 703454438 117314813 831704264 579126999 922059308 100511613 541760329 10663742 749031718 922440130 964836060 837517998 852322296 7633700 220527700 333631083 339937445 224256504 664538455 38050222 710591113 891995004 910259495 376024483 690755866 729777364 977393450 29811008 777271961 24733363 540824251 254266350 553620922 55970980 268636524 456597729 992890856 120047770 661477556 704609945 883661806 631323596 885488829 840983971 910532317 444947079 573072394 387228167 762265569 422535933 670644968 192563100 300410522 916217513 975047036 72588026 201803800 900825727 934763922 744507506 971751544 26875316 796989143 507323850 507898066 470285304 708780106 309792986 985166680 420232049 474131795 639851837 705492818 59337898 154974940 427963065 501594431 268202856 671616810 132714560 378990030 392093063 555921139 94385678 875463549 12043291 601021903 339272088 592010633 37702219 205843945 333772944 439450921 684974931 894868678 786205925 800557345 681038795 900567912 348890021 989202142 167124677 328084458 765590312 905968378 251558042 270945592 314151115 315444878 970430420 970710387 632874491 747521298 7677549 46918508 856278638 866112104 38957715 72957982 488305015 781376780 797288032 931096303 808819115 923260471 178951964 508333358 462999315 931244402 115608280 700236942 299144901 319065998 471430932 705250059 865586222 987313294 909584268 919931893 352269691 563999987 444064450 960580251 918909000 926791186 152377974 343670129 173318762 361927118 4711674 340124610 900937726 918553124 516394473 980664580 512063212 769784425 547705009 978806009 680576288 982068431 432771142 965307257 648169907 836314721 959796614 990986762 259693273 921842967 921471566 977606188 972019258 994339678 14300053 848857074 886693598 976143294 207538902 573231968 131905250 300291937 87940953 928804191 303773566 690400737 472875973 825326652 255843962 742519372 156140926 169986199 830652770 865023809 27446260 777903274 8140857 952559176 85149809 178843012 484907920 804208645 524637287 709012959 925493827 947466154 345390453 453404475 232295799 677032635 592146235 824440186 113661094 430254538 994920140 997955280 363348269 938472283 119828543 925177926 242141494 327423876 921557043 973291365 849608792 962501735 982520837 991835645 864172567 964727270 129617061 927492452 365071654 988251421 853271958 987063696 878461258 949733618 758381746 881231589 245884792 466395336 363495411 824685494 733020371 756520343 567655947 713874840 460246757 481481799 790964871 932135103 369555758 625516423 522102801 658233623 513577123 722334388 968084689 972675068 321387042 847886846 196448158 489646755 923217383 926092997 511478132 516208688 81886726 522304113 363723855 907153699 729731433 971208068 556954559 735597719 831331807 991007948 507591543 614668511 16474562 472593383 854848175 864252091 100206106 476587162 563389077 615547553 212836947 501761868 145312038 626150264 686449634 883625148 697867796 989584047 386545543 388688837 420337369 925981019 24377708 943785777 758153486 994217311 605135204 715626127 681847607 909597970 206635399 767404401 693492947 974251880 633352615 880164610 669481650 694731445 437507639 956776781 830271951 847233440 674809497 830247767 663330854 735018406 819346774 884309081 190298174 873948427 788800395 991343139 933449 935715937 308987324 854939133 797974570 835382046 708064005 931647852 935057588 952368351 555226475 600069326 279529773 467736461 785327464 856460978 675605566 721886556 141507783 216965820 127414340 472844518 705757135 921336270 268107203 562282772 292529559 356704304 341370774 873987073 18208874 871967152 543229769 841843022 233240303 624479543 200871793 431135233 447278702 524873905 234928265 579573604 77070070 711277260 117387362 613975345 700208398 748639982 497519690 850184371 470276774 949668630 614323949 875205615 222853852 281155867 582436500 881196475 803664019 833688171 425905453 788898652 168533030 448350318 299262858 893166723 850890629 933826778 261337808 745065983 418447186 452663720 871248375 920168816 361779176 513247292 371165446 616196126 854187093 996411125 616343050 747186181 171770850 993185912 598257352 653060114 32792683 141656423 307703556 592335015 924280175 968440790 679986762 876308935 156084667 866417469 332582210 609908596 262416156 490185820 345131343 379479337 993594906 993968359 36248390 417780857 239990370 755973564 629221621 698320396 55886199 212391652 174909384 370646536 666652986 772415351 122242886 401199843 697998098 843714723 330595920 874049791 952394378 955242015 460522703 923407619 504916128 784565719 532625737 811879430 233955741 452901328 450145685 911247034 303165230 977604653 508020024 834324662 559554424 981625756 436188870 478845818 333603329 378652984 358104804 658099465 575479677 724675075 298620476 417398850 607577952 992999544 376350563 850687746 720930317 974835655 942918972 973786320 825077611 838562722 69039786 327881505 424315769 746581345 975331931 985969970 132483209 151556048 619901776 801040953 776654314 893487070 351580310 780275701 9049884 74632408 690684465 928210532 369287170 440955018 859271570 883549406 560123364 582344143 958710508 992996173 402228861 999345633 899153056 986944598 121823890 943721676 158857281 292633246 345569327 856343962 791412727 906667641 914816675 989635722 370975844 618914971 770606626 902630857 933717637 950362754 98514498 896017379 878129719 980286796 75346750 763007645 402356656 587056511 883108112 942548986 787358062 847325614 445407318 850040450 954204279 997318203 126348548 594829453 204826643 737584438 509814746 926265460 569680646 982166348 193298806 580503708 49608109 98425303 149981369 411520447 787848489 803460524 226698942 635703238 110407761 548509867 465747980 685065766 147613518 645475251 391680484 877882256 752499890 813851430 387511618 886167280 218780376 700628688 236399644 513731390 564995638 589192973 129097617 828860013 504640574 988257256 77690842 566095643 610192384 660589611 795343599 977744155 759892797 762902928 75028373 673719540 488894466 779555186 482802866 579300956 154959572 890163249 55539425 413648145 692184289 960580478 462368655 575623970 752638301 809975603 140999266 563550098 991916288 995481105 847714012 852815883 631640262 739119349 12981289 28760172 88168963 578325919 415332041 465139604 338895497 467763933 688347072 782674947 673791578 851760479 48955921 286298364 869532731 959521349 22846218 458372746 841940483 938058348 205164032 231562076 718231447 992060923 911025071 933008297 285426055 432738539 168289868 962913935 894126943 988478869 101615156 701379120 893397969 933199237 924900505 979179311 70413029 679995081 342094912 718682284 76843113 530008488 371619630 890657587 126736944 208563188 484738354 851870632 981291545 997716972 57636284 255178695 258702004 585970323 302791063 331405632 532416389 719826790 239147821 728466885 484498731 924621020 248921696 950643605 183730277 292365711 743321004 914901928 285434008 597813663 256642988 312948658 124088127 155255816 867090051 923011991 477112771 639984605 303792108 677293623 607084891 831524849 947180525 974882301 57396541 259691984 439090825 982897926 450120007 773764587 906374418 957779792 375497998 939712753 435025966 438227138 746733416 803413953 335919945 643662534 370228448 572347807 203780449 256296980 360122896 867633328 709162551 824835387 606502271 816700035 620529017 659572696 547842459 726989501 545391807 887272464 281273020 872645016 290506100 810992729 284681854 604020105 165754916 691534631 278715963 336116325 983210031 993691342 23662540 664743010 802383758 991514041 981600030 998693854 625940480 656835517 81199712 771944002 907032685 942168012 850076718 966947447 590568593 616207638 226003736 363159808 244933997 984530876 579926337 624830642 148700989 872982622 681750737 715801346 976981021 990332863 733853577 951370971 820470760 855732486 93901985 194845551 404881984 946054276 892207635 963116535 697466634 770065407 880413149 986826442 725970250 981407373 982855906 989360076 931993989 978484585 189802517 435540047 817035365 873941461 756168460 947933381 798065963 885837602 976096422 996680027 377876145 647402602 352164980 376755128 319354959 386239666 128360395 619535621 734680419 840290692 505564056 732335359 284207115 775641616 447586048 680675380 593408363 858518018 865948084 930585081 332875211 527551885 581961501 884132411 622272169 709405622 477779569 874512362 305934373 518841577 202682074 312931835 856484485 974971905 204054673 511170429 704871169 956380893 361381667 486885949 877361851 921104964 711630185 992238486 562857618 568260128 402294670 465261584 101018041 535047722 620930810 929616525 853003811 856690346 694352194 909839089 998390314 998929757 28298301 496858756 195641969 840971923 543414315 828502631 174126723 616027201 307213378 648355178 191763578 944302129 417078012 825459517 668706235 888703849 825542204 882250713 281985268 325364161 103588915 768166427 591037938 709672710 911093441 972229446 746052879 918224288 547861572 609565284 534550497 726424127 175952442 232326351 528323499 779314041 737457569 952629592 172413237 317756306 11151831 117339500 323267343 979002724 668613844 900132422 994707870 997748930 450416348 752588902 147493156 612123660 772909397 919156747 172046139 303746839 799089649 873923840 213757084 680745283 859512503 875978162 344978108 693939373 454079001 780193034 819981841 820605142 86293700 310662561 471788746 889144360 857354101 926182862 301556103 490038690 65148808 163981887 408649088 872183723 39529364 572420375 171227952 865300376 168459551 383726283 357537227 960977633 101910569 724436237 418336822 516458195 24565232 850067573 778099103 923475374 555062636 592616421 570068304 971304238 741843658 855682536 868915602 877224933 655733545 972721488 559013849 816311652 669933905 765937884 172823919 605767101 651295340 883671007 237329971 389087512 766901543 917877201 803735786 953935996 629262557 861426711 908641897 950983945 250315500 832500309 419828310 514043015 684273872 964964517 548300064 941034040 927348162 975934572 820048482 968629295 574706971 815068640 828208158 888946957 452625357 684243633 360875048 855069415 789934127 881748688 459269687 684927360 985641391 995970197 921555061 980573440 618692898 824612202 97867552 680313384 14850531 512780824 916961770 969318211 273922344 304337937 577665153 601741130 950794217 975010540 528556256 987020403 6016880 902967523 197069482 614868670 325846714 372239386 928902342 969628719 677481192 738467416 410578167 780509867 361007661 664300114 653596748 785626361 201587376 754296518 635209956 876728225 482636142 577711507 894753624 942755039 763964813 995905400 301720428 690988118 471201472 721181126 53038284 452398428 293427730 481713471 446143589 752766607 882016596 887419258 432051461 906994365 72942518 249827755 649213682 964055613 859111726 972692979 72026617 119511493 495648947 713048981 688526563 825818575 596489777 673666338 206161166 678729905 862457993 994580680 292952917 904641340 314594977 477895167 896902105 960944198 780300685 822695969 226995254 824858701 853846010 938424901 667952725 887617696 304822541 880881375 340787339 566526285 902160566 988891783 324433243 653734466 843389533 856301310 681360784 693134008 321638457 945566153 41916326 134129529 573115724 968430949 388606136 482086689 494770452 994203920 694503334 773647115 127041854 200553181 344988389 494093244 738863502 917196304 717554014 993522232 366225412 546133021 404012402 565686377 377883777 939082451 534139753 709680777 421302985 541175643 558368928 938296074 452891941 805567618 435103829 968374024 748721418 809260177 336818710 859779147 502218388 544115198 557879307 841001138 502449949 771118648 896878625 976070102 905232190 975509923 309881255 542373143 420178389 515786313 112742708 599956141 921214675 976099132 644080339 991541472 429385215 813087676 943197607 945212089 963337988 970250567 947037709 975650142 366651038 618173074 640760663 998138789 389376782 661759481 503066259 593676965 135180763 698241544 162730287 718019432 661002450 675277397 519069392 891770880 809202231 821676431 515848706 928752252 941692770 968129344 189379692 984174705 921740081 943432845 207948975 566222294 965079551 975356549 823139980 892472167 949935289 974547532 757893234 998634819 371701559 925480873 972745826 992375173 860215286 928936812 874022153 916210841 331616621 708108154 372737428 529678927 758802425 931304161 324170672 876683795 34609288 109684420 580462960 597113579 411642399 703249504 146131403 248808036 385737713 618517096 322446288 394723307 114462159 228174892 500857800 543047227 706775832 846990545 813816582 832409309 507912566 921910811 414277935 631446765 224897443 431761309 440914567 870658411 397153745 576072412 262443788 569656904 240421956 580282559 172138232 274140339 559917227 644050292 393388895 814797200 599169329 981567842 179897222 433864953 296414447 991512432 800221309 939080941 150157116 370135558 790472196 942229588 452202347 773488781 142473298 437139860 268563980 571532526 230484712 529108633 996293896 997717687 528892659 579482781 288340770 499639505 983269668 994408965 544434916 864354333 256102060 779371789 51321718 792822185 99959656 726850655 560610685 796675648 42052289 518598645 258481336 401401286 515098061 614397731 339263923 655291046 794075908 809634849 605077207 689219865 342092279 402304337 146670822 197836768 205490988 653984075 900197878 998663704 488275919 756287151 210899399 784480781 547839038 796282606 18658936 510916014 894093585 922939821 281874907 496964988 33043438 360873304 751922986 792179269 309539735 504811267 982762107 988715783 8677956 29994678 3358217 382256322 873535789 895662360 433963996 547309968 517023631 973403974 920364649 935382631 363271351 847889718 351857879 822938654 133999072 810166017 204182458 736612443 222597629 480622769 420020885 920639437 513413606 838277037 871297390 878449694 616626836 977834740 984455164 993546967 357019780 957302708 85748255 719431217 497685813 774546062 767989798 873724348 473463561 952947918 89064792 759186805 628876780 722351763 806769239 820857236 986478990 987164472 139556633 502151396 927360248 931724508 185536851 222916009 671483025 735112948 107781742 805346823 441545081 510922219 685193092 978750006 228332641 982140750 903547952 992940438 73582956 556022848 83978321 643252856 644581818 731279196 664279229 951210146 443582970 987726550 466494232 744456993 707846454 878205435 54688479 666599435 929357274 940346276 694930374 790776105 359184494 567407463 946743692 949720089 805260431 810531561 391732633 817705263 251154061 753950963 118388290 204626728 293685571 806463333 837901333 840474196 143272138 155293082 163567735 520239320 738525382 887070512 609751105 957236360 358876876 568181480 930133906 941452922 711744755 915232692 275726841 682571781 393473309 409521861 155244772 653863189 116054271 929856130 829705497 880373639 540552155 663307172 737543575 828358042 982234460 989260278 19724930 854243644 118290379 402609583 238450409 380103523 207181393 265460368 315604787 482112822 937906022 965217421 41403611 42695177 469075412 718243397 953229165 976026783 879150567 881162201 247990745 685152072 31116372 478075087 645193662 853909786 199178221 620121878 853762540 871734896 78450947 803873583 333932503 552655720 844482387 857243559 589330528 590316783 426908772 903920944 513605313 917346772 147805537 394463854 702861542 777368280 256448162 872420419 178923802 878640169 683992634 709563694 799246334 931253533 424138001 506911424 335184114 719815779 29288806 174371661 668924918 893880185 833798704 839485074 646251347 666476054 608053488 691243480 695217666 984849364 614158798 743140622 52816235 592210832 821913104 988766809 442486323 693689056 794783140 981415090 280953196 539254501 309693586 953836332 418610588 649404856 30975674 372226941 736520362 920077318 178334753 530276595 864036683 887183599 292632334 727896432 515850702 948872334 843558511 883652296 525398375 922440848 177981319 255426756 899069880 980917614 342170224 668691507 613837024 614141958 628368949 754745543 422609423 763027481 242458741 650795658 526528476 659093608 997769368 999386161 811182599 941424264 891899862 913954644 661334850 823976248 335113323 772826233 753039786 905746785 676020069 825646313 592455065 702422671 416829600 809037915 81669252 627039481 652443969 934400134 322475699 431638555 345079476 460545621 174681438 360495308 341723452 691588434 900095035 953446598 931755329 953117977 114798541 241951707 62706993 817397210 606103929 996755259 383149867 619612913 921967508 940941931 491198115 705467071 861189896 881161796 567958861 851017884 317724622 467099817 827991022 909456442 321359708 827852054 496318994 853112719 952981956 988455269 308536991 861735754 308542658 976054086 66177526 440636982 5686940 220231463 974918294 974933277 713172790 787185650 854022454 997329946 712733162 869269086 646245169 942533535 861356658 982536326 335129425 852792675 80416708 804086324 379874183 992087403 254880118 886507819 988838960 995286090 149909932 883002758 389003936 620223362 53058165 358102317 225667570 739757882 524796906 775667405 973297373 974494181 497283600 548472177 568067764 746231703 477121163 644570878 155821187 701962251 639523388 822374079 892365450 932272509 706862646 789767787 687473702 742421947 250621715 505022475 701409186 975923640 364841525 679564100 276887974 738270230 341498211 532237066 79127657 190099889 72135977 806575772 923757533 987997407 348749088 510119992 985857131 998563693 222034615 466750334 81880400 397407144 499391159 889119239 939115882 943334974 76396766 489965939 528893357 639806431 81303764 191865078 832924320 839856150 955451312 957074685 94095653 292762406 55954956 495650791 125123372 200809082 997701611 999013053 176188947 805492347 210806052 464843549 589950360 648463857 873643314 978304986 920456329 970308102 331541184 664985794 726529211 799334583 605714406 914299102 406581813 956999878 651792121 712519421 618340878 727087861 269186112 436654587 840238126 982921859 196206722 624412153 371775685 717605484 160072792 915892832 774274219 775797777 753169580 867081631 550897703 599087338 823405581 950650351 148174737 454606425 295545230 561590172 35956483 885833325 277762870 861346158 736564738 790421978 195309911 484485985 621064346 635581567 839554217 926419819 737280739 923351990 810860033 864151712 583180002 783203532 637992671 780355844 184855083 996573287 334311208 886061353 842536288 913032711 444585840 917932972 34916265 973400962 361111164 469131492 947332912 992133557 686750527 702282184 280126198 905203514 345359522 722298534 2380653 784533810 818346077 899643092 250460505 782757136 49415211 448514888 574873843 732886416 686706941 985402957 928531405 953389375 279715512 694468367 232882121 715025934 865422461 970283219 171265116 188072196 117304738 949225016 864695311 971302371 403866267 881888498 218383115 681896445 732034560 821545382 894108849 957314169 395761905 925846135 825065327 971414969 790476272 908214096 462961830 584473476 98150718 913991417 433982927 518429414 537703718 916039330 710796481 850670062 273137429 967366966 919344926 928642046 872326443 980915727 694873698 925605485 681086657 808736362 137285160 929618662 414411960 766920758 814180003 824324056 403556243 828360164 236910403 660744913 960886592 996250964 396682093 532198929 14506257 779940986 292993292 704150201 12446808 405036222 329555428 868911720 784611743 846843621 515595226 774101177 741074833 835843522 810662686 962223442 552151509 737175377 251362196 300913982 344922308 377985291 385902773 429597480 695912794 937567945 996953985 997796254 151786707 765338891 676349164 908964096 912014792 971002310 362939786 380037402 415342783 980527253 867889301 892927549 657326740 919786384 459294383 871257676 648153724 882876337 822810388 955871752 443657659 758872036 653699261 895137828 49222552 460576085 234725573 344519549 262317411 781832398 434197733 971546464 506696246 633805733 9424763 38550542 862883608 866068367 824217805 971219352 666745993 828032613 615818729 713268009 314128843 434918012 499544571 524043181 533250122 878025812 246719770 293990934 327733366 532038053 386560204 568595369 433418085 867125276 455692912 878664140 217984492 590211739 793365440 865706489 941198367 992619707 777021543 789734684 584199503 704442058 659665899 816565488 45532061 556541286 751183223 884676820 388085259 704410231 236412615 756323185 306047818 981652684 266338299 314583739 338535152 454934655 191013439 947826604 570062930 584954315 466118211 669451562 101404190 720990977 577550847 990675929 834696766 886594831 143831160 489160386 796637389 829300678 730925341 823461076 31207384 145760147 822739521 937529912 571324303 802583336 195389252 777177756 427963150 708529000 563176224 864816647 640589087 829412509 599128325 906147471 331176605 983230229 478715437 632905505 658705491 926994825 853476151 963231345 795933979 995730143 247083287 319041649 557493087 912722808 164106590 845656965 433788962 817951901 219977672 269427268 268166396 499161662 430304009 886060949 657119152 753266170 750482897 950724122 789860543 883733010 861431673 951443298 674834648 756119309 435670027 772986695 676613368 900033997 697622330 830347080 453512422 597039753 699150744 740880847 481900663 670241899 280640527 748950656 509573155 909004684 718362944 800099740 392864898 998488959 266641426 653462031 663263679 680939012 667997390 777444896 921007973 937076172 815401611 872171295 798852393 871817439 556750056 572427537 183785264 214377075 423317953 513332589 492350177 642823605 710124732 755523405 184804165 478971653 956832570 997346902 694013827 969100912 517681990 518775288 835909955 933592698 739436320 820741406 975573201 994166477 504604734 750796188 795108894 922320449 111003792 328955102 678315665 835850491 543454229 813003730 903557951 992503193 782265942 846375913 752823795 855100939 9469041 334542132 946429776 962527632 263847571 500975154 665719117 757834473 623791185 703323261 438718228 702942202 575806986 907100948 504035713 558668453 548056472 981138892 589989338 970532501 284499202 768189625 313387273 766292073 431522457 541746635 545715163 805522444 610368840 888794692 464381152 575319329 463318302 678453019 745638957 917653920 883151756 975828595 199483947 835662790 388225122 822403854 425814730 571177499 137489809 547804009 537416162 945879945 269929320 951180041 284780008 977557347 241471858 501066429 966093907 998959929 758965245 805736451 640019704 951627186 994383137 999106445 411003108 476265136 729271180 889745688 855513499 923163826 628304651 752547949 250860095 738406877 18404199 287085451 356506023 375746034 78809615 873884514 319040150 617923229 221021742 381553472 611047181 921206047 551713409 686324891 196979706 561522714 333032541 887667385 500488082 788620216 345714572 695040538 665011316 925519608 186394007 881357265 402389302 942194481 499469499 983107510 923326672 991359181 737408296 825602531 886495213 959479164 235683565 517704591 983648622 984435732 255575015 966466767 300341529 948203467 79234687 292789015 806173214 909918311 19467956 856813701 59909902 675184039 612024875 839717416 564026171 895577014 616421182 788060449 756316566 982780395 201080374 217665509 475388390 864848336 822159545 904356359 440004816 520656658 78643839 899266702 470141394 980855238 972807281 980982208 940114620 977255013 190662146 395787055 275036550 415159895 935706671 990819449 340401641 906371631 349558462 717759350 728701427 768296352 744175369 879779688 93962128 669737738 532749702 727700465 462806934 931858544 544180637 628930519 872251711 968034413 130590495 981710684 904207634 952077342 705956394 989622908 768469096 814148024 919717404 992767793 431514238 580896542 148077525 615306703 435500628 498989702 479079057 843523075 752418628 757189095 965931457 983045443 173915121 726517085 521930440 712143626 92885642 798451390 255619114 333751168 374994799 471343121 900454902 952581436 493111894 803834294 761527005 782925835 223680457 234280725 456720082 738217376 60894719 227896595 384636918 501161732 480114033 695434364 356615237 373236374 194084073 767554625 570122346 699763025 436624962 911184424 836218413 947012655 991585010 993353158 304727937 482784899 699943832 787524463 141240714 846170505 201822455 572685522 265076509 641035144 169871969 191457249 599425456 715306697 166058593 905194562 590523291 983318257 660191602 931876902 646835221 773926305 781367723 949103469 586191611 940979643 579237106 665544334 590338807 807782589 259731750 329993227 589353366 706343787 724028888 916654184 54591268 234394712 95176326 390011778 190498978 464784077 263488964 408461344 579614788 701284929 840460552 973637232 12844313 484186265 205149010 336453481 629888176 687630045 253848979 598547452 634843745 997989944 508593689 631969714 359223687 613203639 676657635 747783720 902452561 985654665 980343511 989431359 263393374 958040723 612709189 910600491 489073457 588816513 248228797 612652316 476648173 913759644 498451668 912973264 315017713 978352139 17675294 863289365 791714968 801425831 747006497 865139252 76663749 77132895 922637016 977215564 272602776 531225962 152850749 938728060 788152913 840821655 162953854 470900658 630506312 897902647 606961840 667667926 842673352 859660235 508385988 817421935 277001685 969623762 902692523 990539803 596062861 827087497 375286324 661211309 693535956 944827081 220703428 586076707 147641079 626582901 501520227 824623751 292412546 666364446 372693566 598834764 580406630 909514333 394608743 926547660 714035190 827160039 233414517 385280121 759101088 976306082 622998490 982375102 839089312 850550724 400629238 828814259 796795115 995682822 920867626 949319121 538129229 881047077 22018348 118310144 504718143 921447370 447258206 692309368 148848735 405119641 847676418 856368462 891516549 961092999 159321388 260938258 961200204 977410857 349322613 829154291 921839952 923381570 399744025 540829245 370496507 952349810 18454851 986223168 972627650 982381674 184968867 571452281 21371287 447330464 852502784 956008865 202404311 632377793 615491411 764879119 113564376 758556426 591443749 596240439 153029359 892901962 207727797 483256648 587475035 815489069 578217524 775210273 871561841 953550872 562863557 979510513 247758653 912165033 408540969 977116640 603022295 845585054 251202821 592482110 280947713 297519802 676336233 729443626 940049255 945500102 308488399 398057551 732073685 970877093 441106636 505830508 95536398 209145815 831042550 962544226 737490518 773641114 752659682 975013174 196218131 693960596 417108694 509747179 439335188 965673039 791501593 907102006 703119988 717237981 704838980 722711139 262250968 577320429 672335473 950889716 302491364 481643904 340911698 444405875 19254240 550959954 305851170 467399899 405262839 930336142 535205349 540414115 589048389 900101395 662142119 863530264 965682805 997570488 318835804 488192855 305663663 707072271 816343424 981210475 851167131 949847445 410210081 652886866 206155538 603766340 38426705 129293053 157060641 988052201 702869638 744034262 583076559 760379381 337035152 601796232 734642253 864158672 805160929 870491184 370500139 517754535 335387902 721068915 428795388 704117083 997682209 998960554 4633260 275801859 396085929 673258958 13595107 286109724 902654073 965441874 97990923 632842089 274364033 288552178 294452954 444798402 38067724 892705983 529310819 993692991 365113243 947485099 118321165 993966293 49633174 380669953 582845421 791420700 587211886 927414541 274175374 630626106 964141864 975348841 175041108 514499240 901456330 915980291 157609191 181491824 295827615 941075054 357972976 585579241 422158936 741664224 794154821 831713936 311181278 395262464 815348898 931146320 680285017 717992092 977489344 993833344 179870225 713499142 201435823 319365185 325975070 754083834 324501447 482228466 841256025 981797460 75349477 753347906 846505495 856601985 119409565 712251358 721148030 831260477 626055054 984924725 980307740 986309105 501149416 959217682 558786268 788115104 668415983 694955450 566068710 619639570 126704424 403288544 214413608 928158848 514623037 885878810 150655534 553176887 626011660 641924812 840195303 944299691 587642505 894419764 864874419 977999581 441994823 477979655 842359347 899724404 941966728 974096949 167227283 986469227 318264446 719619792 901714625 953758576 803940838 907960668 911886237 965234468 147770145 772365968 716770108 759499027 455423602 893679616 171605821 485986442 567929091 584051294 769156638 858026352 798673017 978838647 114620491 868381684 43704297 184070066 75352172 225908066 239899573 410291289 204756124 664464352 482929234 589707504 878767645 992690811 275399312 446922439 636963954 804839368 582352202 671522459 931559080 954076896 637074110 759367013 787497725 797726421 122811347 227637077 181646459 448786503 586518087 786544252 596631530 936645537 24037915 49593957 444430110 475909476 840059416 881159214 577067355 662655410 37935441 383830749 401077151 857981720 239221134 319019059 471032496 576673896 951189749 964017236 983176509 989210369 880021392 898990377 584529979 993837015 348206933 486901030 963338536 985131203 46866773 635195656 924948282 973914187 607412454 984336248 1950333 904166161 217297257 346413226 15306461 169804689 729301837 938303615 48196933 905509470 984499552 987214539 756226188 934080066 713197195 793844830 852884687 987821069 891772572 903175169 90326501 349397086 138140511 415562110 399244661 513060674 618559147 727226671 165266968 450826242 495849849 535018199 955275421 981413242 932192399 951890901 761442600 858182701 828838847 933887118 15796469 184339072 145850321 752973642 399327699 764254345 990171591 992617283 798754807 908485433 901078308 920032795 242330768 761200513 694664454 709446297 28084569 581034601 358494044 735140586 613241604 967803405 946627709 966529424 162522031 233654429 410942873 455000946 864418194 865691002 383295633 995420104 786176076 915910342 169999848 553475694 318389753 731864172 570017366 982849929 113882703 729721993 593404186 694317635 385497521 651921464 950439781 975695971 190057104 653630586 344610735 577851424 89208618 395618127 318926865 545676324 591638265 806417370 753427604 769214380 900177794 985398168 329463413 836655745 849626355 910116209 569804046 965733957 943484779 947132218 677914284 826204358 63377565 268585942 118616992 368801966 401679586 472023465 63697039 200508028 901430540 971665477 489656450 989457456 531909084 781205419 880330714 884022826 12657156 889479988 625605480 638324873 352328533 570287614 48780603 218704779 417243383 839348770 179415965 368914997 922330810 938790427 32840873 507039000 565353888 606523248 871031277 975675712 202501890 944481946 666297245 810049108 235517333 435414628 132816327 140766788 367516931 484816652 127478608 713039957 345040894 925900893 53385342 414535399 413181009 661585754 463656386 505468129 872806800 872843348 63176111 935684795 804131547 997403400 866916613 987317950 694850789 909753050 356868602 698419857 662333056 803180183 669531585 817037676 742335202 869900435 225310814 877928551 694437938 950694531 402672327 441685700 313501189 465113431 389982102 551431725 404873550 798212512 101239625 128948655 421802625 573189808 953100401 981585098 150154819 505170705 634807563 754629228 812308022 973528361 509549121 558712770 712069746 899468038 236710719 657575613 970131207 972263038 147353233 354405116 488269916 510893834 948955952 959761567 62819193 791022707 998983257 999368873 229174778 607344175 669314971 706400656 119097628 467839714 176079277 212117448 911117726 988591337 920184684 922641446 574068805 585209827 187763141 431185269 872451327 910316283 733562330 991540718 538987780 993185431 354860738 629628462 862598676 980102609 38879988 250589742 7161966 875498440 929560011 954928483 359456217 969297576 546143942 745167580 192312110 501052384 171582244 763161423 283135600 340746569 93021599 962010972 308988678 775995994 414115388 666557848 537290535 880308888 774457917 961356947 896031624 982350078 677773031 845880317 188510598 731600269 627699736 851589589 763940491 873703587 594415779 761075104 898203102 908982726 156947899 917265590 836118267 841597278 337239266 522814392 199548150 447565601 262910494 466680962 477606017 815184707 919257859 987955986 16573103 104673875 243705327 476700386 94120006 236002806 53005875 70736907 499849397 833635228 515273366 523473696 129753043 663119750 871503349 951452467 814150795 960585013 759490756 798828862 638754907 798442310 707446677 902361272 310869816 831319382 69186371 711043277 572682909 729930776 418032902 997572263 876526821 948110397 974920309 982969669 988443579 994584154 285268484 735694670 231583453 918667713 138687310 501032463 386662269 591622282 305882795 743924869 326862752 998983734 115031597 361387114 912594443 983663428 813188737 968447751 167232809 289375397 288194298 994341173 828639589 869749517 902865239 978336780 684738613 876249319 542272768 812350399 270808424 458833500 458243238 979500666 849949282 984789473 460323168 646930555 401333642 419374744 698834048 942146927 819683388 905114306 362489028 432887045 236334662 577489298 777225042 827695643 547385291 857769563 106580611 519063875 934491783 943410993 826099034 891448315 118571833 443097951 444373387 849819865 53427823 418902161 956122473 958886777 208341984 260587522 82059515 402739748 935470129 951147563 803581929 906733814 726822731 831125467 690276212 788064732 988722126 993682896 292064512 455859618 332220640 722930913 287544420 871075954 446641625 842905343 298014684 913188123 741704894 829049135 902968503 935804368 664493776 799120117 826759062 952672888 436981911 974504995 686676694 924394798 175114947 586182419 805643415 901870109 295756481 417777928 542026539 684223949 766174694 932489957 207082333 557389433 206218309 775455454 472907896 628367766 618956885 806061294 571451504 601818162 868870616 991729797 889363440 931984156 103824690 457209515 513045055 545401963 541602080 850836936 210214286 332102161 60642803 855242907 361743063 832149257 523263916 810852480 751094206 863498456 12411979 389314942 91072400 162264995 836566078 893659295 304851185 505500990 916784651 964815315 607136927 657819096 561258626 909769889 46318290 950401795 264435980 357047366 503389790 647853763 268164414 779769350 703219034 942542356 667911551 866080555 881522820 941155767 565910981 772483006 470720708 871924667 256107257 522819848 490830443 745159183 645675474 719697924 157955249 954773164 492932441 989575068 931009375 960957170 360585141 624788601 740769537 762580137 637231365 908894590 233484026 996921226 697818240 749617651 482548749 577935207 51249558 633738855 975875735 984573095 32640771 526757022 87287891 780883861 43234073 481694138 555604859 810368877 719898864 804448423 527740065 830435800 952737943 955667159 576948737 732243653 528249522 935132604 469097943 709545174 251842450 439937830 565952676 611666101 298773774 534090988 690787997 941372728 767270067 955043152 663948954 887216888 142840833 441982312 61047875 574458401 790119150 953423705 858457223 982681985 675357296 919576180 939369213 967551288 668968179 687850346 179589545 822468474 73311305 654250990 139553264 194805202 745496384 910379145 589204863 925415166 408561342 735330154 743676665 918737171 523826066 764360935 507648383 845297285 221094736 342818854 678145814 821829035 47735412 842842075 902759988 937261609 204297149 958131974 627977498 961153366 798917564 831770725 341986679 397105541 902804288 996695834 469559663 541923215 28575686 104364050 484304042 793863185 525359468 584460784 374455237 571691978 346910836 861541759 556273374 963104874 704790576 752937600 846503327 967606750 394759838 548440621 295547960 633827054 988829783 999045151 808454453 816094308 269537457 739633018 553779906 911631356 303028304 755607570 939038763 996679756 633727270 927249643 343939425 362272135 211936031 661681592 324766185 974688593 795050290 881913487 582535705 905703732 6455494 562188966 448920129 775869409 400493096 729966569 502037668 562954789 677763986 826380646 826523103 986710721 493934057 585849156 806053465 869431468 859461868 860500372 458724716 712643744 682138963 717855674 85227747 315573541 752544316 757539905 650249096 987795062 544457068 629672064 161923209 650842198 724882591 969174929 966780300 968263706 376275945 820782113 590511468 983332167 3174401 359035258 368457527 698949028 321901282 596394827 229776123 297390751 438958492 623296302 317192572 397869522 952956313 971072150 576147572 702971205 327310904 576608314 646419381 701552399 312454259 660958384 376612804 793271357 325150405 775038554 964879944 976670965 138888849 829825243 433769828 740292929 469815909 939949114 827106711 845246950 593418478 769709598 725934592 760276103 77927304 811779960 6243338 426306097 915806085 939924210 819336379 912200419 620904734 797285355 10150066 136823658 369965431 452482563 922769920 953590354 827074546 886200473 727207472 898815044 918802471 947548435 893043703 956955867 420620031 920973696 608788560 896923787 586840572 916743424 750442506 873058298 547840720 756220173 717246314 983770295 984703741 987530683 113493802 948845277 833549757 858522614 161135590 685387400 655981594 720618878 129054756 330008872 526865590 557137521 287273859 290459910 179938113 533876821 49651 556450305 114703287 703272044 205581463 786432768 306738963 761832203 9817816 632040301 516061735 607707416 46978411 313975338 583504884 931897061 428917696 485008186 103619329 632793361 269249013 275569361 124919112 379161701 131644081 799048889 437742993 585127862 742458768 784598337 269415984 939094194 482477278 703367896 841001193 844125860 875666600 948517304 596631421 960318176 290302402 332869190 201839669 350908039 24788205 863017721 727315768 965018815 496349245 764114256 773220692 855081977 984719242 987937827 615022420 973205362 295619953 313359355 729571714 863000834 44484912 786020734 948303460 961889177 331669724 411678970 552079971 945123152 158877726 342555879 654290955 927082848 271496892 942345348 554392318 897352559 173034218 195501252 898128344 989939802 223249066 337890187 449057669 934598740 640969824 693534069 386176978 699329896 665770085 751345272 293789692 300932435 622697756 991979877 779757828 820875727 953850236 965173546 430941256 803363476 852032572 854729611 862810123 952866939 927285331 965903275 285799193 371440897 337278403 581971548 4466206 690351938 38982640 570301976 326023193 706255347 856516333 897053445 580305485 730746250 386156692 511138065 492679619 831338820 278100782 484633721 684390290 711861350 602588234 901316705 872045501 962034721 917578575 970633726 948967349 967706762 194262653 559093965 983235011 995150989 172072966 418290210 536541968 677241974 192915332 993485789 164846254 949523416 901286199 960933967 381491330 606672554 351227254 876563649 440119584 808762345 490778408 529283268 186011988 786587478 512574018 610842399 214840692 610089997 171484367 647823744 889539958 957510835 567156094 639655708 227577423 268879996 348842618 509755008 796582030 902650957 96001525 674600257 659697809 686827921 710672508 946393982 79875417 189293053 119186841 483466330 769593107 826471886 826008862 891299543 587113443 988806572 347268157 803333352 841858098 853854349 250926245 661601307 102348887 553834209 198223921 445373898 34289775 920815693 757469290 936745637 179515187 284599452 610128929 764943100 269685340 315246781 350935981 856883203 653490052 874278125 926332871 934260793 879453907 930529211 251657567 845703757 30923718 362041200 245688023 745654893 611399357 617754005 248067996 895102923 863858433 982019552 116565451 530288295 669771072 763137701 653400869 834006097 367132918 781677764 556313516 847691003 262435169 878446073 967144797 977727841 498076864 974335875 232392446 381852565 943877212 966144233 562750972 576722222 137716830 981578523 894860634 962253536 118554358 843491127 168792888 343765003 698626504 787838249 119716477 888304419 345727214 594531486 188370842 680517296 226277899 988034787 331168290 492791394 512063679 729964355 775170170 781636103 446477877 834528507 680673495 953992190 939649145 953111291 956491889 978564257 792778138 806645600 168055326 624217304 814923782 833019513 855194668 921101205 20328574 194156267 88780873 831395335 374663674 898947822 679557362 702172349 124374949 762383646 153781771 197813065 714618835 857476920 568183391 918179907 350546289 596886957 586847445 872250926 212743832 766850369 965717101 966627992 600220276 645257881 129038709 742511531 789349673 981164297 998752323 999248518 182697298 611869660 316630315 475137628 5403959 194303319 625907302 817099662 361576433 490078378 516235460 693295677 774346174 885544438 678276941 957317127 321275458 945380279 921957694 989147639 900138269 917493706 273045372 435820499 972821620 992994725 80583504 350384273 332707052 540560345 874198713 976292149 335208229 959416454 423494248 728822028 768900315 816014859 354406127 613753832 397410046 948990706 132989119 423967121 335853180 858750074 93191447 513195691 376427709 848727897 789477157 863129636 637005818 902766225 133126116 214819314 110811356 960117781 670566194 762338240 871510403 885429363 322201663 773905013 202791204 301059057 713671409 723275173 694836773 928077599 325019840 473585498 402270807 542327532 50828109 818837498 720376711 905265189 70234114 807331530 772480182 900718482 694364070 740773921 601430583 799225975 701350095 778222392 740028504 797427555 10841590 558513068 433686466 651411551 337452761 978427398 740985819 812850749 28825775 409675580 93255448 586271160 351700047 674799184 567323622 859651515 668120861 702634500 678308505 786670335 429225015 964488721 737577738 824218848 593086171 839914023 594622357 884937997 235747481 911674221 902705796 906496247 654669531 901079263 486119782 718561923 657278286 879093346 475998502 560186130 229482991 400279564 179690310 341932034 201489787 237449273 693462396 819568904 436641697 564063175 793377483 991279906 683959429 844379101 846276352 975938779 861953162 888759408 46096945 515807891 363359675 456676249 866142947 874534425 848832310 985418264 777089973 958717537 126416686 628143242 959775127 983405009 402903254 666636259 416959233 600386776 26055170 895837647 337908936 420195787 867817159 899112159 621050083 933649906 306768866 327395346 558026485 737366661 270192628 751670164 838672577 977003845 178758612 935701476 721359619 931000260 218564427 527784467 252229007 332266739 961889989 987826569 720949576 738023700 247227549 592502007 336983415 631577485 428935175 768671082 981169653 998605706 357776260 999005986 357996336 715779385 885354430 896916381 68764268 852078426 134168901 471630257 856039415 917472984 898563031 991261953 276943012 467354384 370733188 626039898 154857680 530829179 333211922 347973625 866237791 957083054 426427747 440853539 879646755 880498922 670752342 878571263 370835669 817292153 864554833 990818920 112912973 181741651 635536423 873333166 27093168 501675554 29827498 97621157 699178094 943839937 976504761 991620404 891409911 931390234 520127858 780911808 298674101 947288438 267871604 670492206 137340821 314344652 867055017 928106037 44385657 203053237 9311813 613821192 256528567 493802925 656594207 701459161 884625646 942265362 116499600 167538022 232645279 830410928 558005309 642975240 671248743 925944292 828417141 861268368 348370180 826483401 669037014 728450547 865538425 891741269 495219705 839813149 764337256 952767364 611684678 989678662 596618713 754495486 704749137 840712674 216142479 648191222 871524466 956748713 165652691 932538920 993245081 994807593 913049959 926313287 863901620 925037176 200717495 688467897 367302891 671174761 283492779 288506694 848323325 857063088 990413507 998211541 651117888 800470367 339391756 388519983 472119266 941490366 495499182 943614260 482206426 713197271 241663005 901054287 86997527 382749928 398544514 487095828 786607336 925344894 704267623 955828314 770580821 969502509 364358346 660733660 810452106 853380514 558105752 828743043 813454087 914492161 902346670 949992708 5604658 185032618 292208835 753244972 238587710 454516406 932852302 944653599 188357225 620738020 78167372 937589046 541067442 803031008 681736601 930235311 383906347 559402473 501183534 714681331 386868943 492033746 152065341 563050751 624356873 807818385 686583383 762347108 127052713 215169055 868032235 888341182 812552573 965508646 546333996 644706257 507732815 790863197 919198368 932901518 506636095 864038124 937473906 952261003 379320053 422997987 787227923 806606519 639316188 640844928 871582655 954162919 840194371 848067391 47760915 303112519 668692337 748385386 881884920 892134543 331562742 723468506 603143337 719863711 503052450 622104552 170696445 694467324 432534258 695333644 527981373 680920686 128734813 888067943 573376487 645098037 39473219 287948679 227338854 249568651 526823649 888850750 69906746 631969343 115902918 360225841 892101138 978887874 542072445 615927014 465230903 851460779 532117386 838034923 935192481 952431390 287183344 744092103 268711516 938736706 577541177 731507635 302247644 710362914 934772371 975324116 853639166 985984590 493535830 509358955 162368963 490424945 263375890 739861092 205359312 495098155 489582126 554197029 634125887 922972658 919913615 997372430 350901096 638368407 736701368 916759813 512241960 907655378 817014496 859308363 265808558 438260786 262620925 394835521 997120438 998511618 747618569 975949365 498432085 643859768 630362086 854111155 568620717 822543303 233417803 884770586 374924179 851727115 758833764 878109551 108994476 821923515 828862650 872928201 726938146 872115459 566194980 754723616 426224891 908732134 943788624 949796922 503089094 949075239 940544883 981125207 651434683 832764640 156830445 370570021 469521607 852840654 666528880 700799836 562734654 571831853 842747593 854620779 373840947 803103370 233168866 663252774 208436438 902254459 663830904 922863672 20294765 373031983 801841692 909490363 520918548 717081687 222421868 765436442 430822659 848988296 430020395 802681006 574016809 643730384 199674126 898912801 488316581 887724942 137482839 670588281 214648700 308108645 140255361 345161554 311041329 834763938 214200319 926710693 448190885 686212783 473007465 974500363 625411536 932998672 781429542 992369294 446667385 947560186 881563550 896637882 89085384 275721296 294973167 633809541 545321165 879394001 765009207 778503729 372439840 473263559 356375143 973610513 238916555 352681463 913323126 936335868 545451974 943267504 874981863 966744295 837930903 863934483 708488919 912751310 427501002 887945201 409916851 832695330 16658299 936428094 532439578 607783648 140530917 477553308 242853224 721650153 332544970 454665748 91048342 384512432 785746897 899902842 969230001 986213101 415325470 712555787 356893475 731259853 453972552 580850652 391580463 605568465 50506189 875322198 710194586 997133810 822796732 936497028 187587054 979643667 210404819 325739408 291639360 974822622 746979337 923181083 801361722 962298310 411083991 483643878 970993177 983413222 68208589 831084915 87839888 930666675 509240091 611325606 421985352 512129677 505630465 825088972 966309403 976933304 116992015 575199796 974657652 985650040 529273925 987936205 410755832 603140529 123259240 374051845 849349173 903638052 388468228 541706967 822975462 884520454 84661087 634165328 755838010 864613855 134843199 412137153 796998668 913485481 802945392 839779503 204603605 293148225 223025098 915531920 1584912 699357065 582791876 775683565 186415180 953359645 483477712 852261119 395482648 922588244 164764782 579648374 560145421 620762275 748864561 839285839 467386927 974851072 176587895 398639480 255155229 431614098 938435263 975324537 228904039 439192489 635208624 682169476 122047062 226836076 726509199 796690488 276297958 562754224 700677814 725818961 658540852 771501409 862135528 979794582 422789073 526071910 632584358 691327688 151024609 957724666 140380786 962700733 236745210 625186905 802317952 959281577 475267672 752738202 803551466 950554952 298021955 300366843 273888527 983993512 653787324 734610219 406858844 610941987 586755755 704663471 261055503 562570554 208598920 832290248 561357351 905102021 330154836 727108316 225410189 533967464 32471697 735052035 336024863 649676953 644256706 723909469 461952037 519838573 508865335 978799365 480387645 886016473 109669880 468550376 646485158 775850638 52355900 945479686 381263459 713328972 847382954 984215993 943628747 992888098 799369672 968607890 57970761 278673368 175303540 329707649 484075002 989756589 898844827 985335061 92686305 318422923 592101127 914134683 640201094 965341747 205409346 240534065 927442965 950686885 368226621 870405051 209392548 942356139 634620626 872846925 856137860 858567628 875997478 936061864 696956750 957122758 917436664 987755582 266414732 803347644 119630560 601285674 197495587 920332841 100003132 472684045 175867280 780944393 102118923 189858078 218181528 270255302 868786461 900848224 615691605 853404949 316739365 969117992 570225685 757473506 853881765 983742789 896380712 914612658 374481727 577040618 286504156 768372228 513930397 736614135 763311359 971697090 890826558 927728958 552598689 821289583 805955123 825301197 929797738 989460491 444073141 592644204 475047764 893553567 810658331 888797582 102559268 368151826 697292779 895493184 606270412 970313253 423760403 777661521 308896401 440600479 508573385 858419063 766287580 972649247 354817134 737554361 566796063 865702125 351567821 581734347 336428554 807278557 284743106 443071414 529945975 806442684 28081257 917178812 988373009 996544335 69794239 689053447 197889743 768180629 822115612 933626661 450733361 488478099 195343134 339837014 801050878 828973929 918797595 942582247 735567241 938587665 501256751 988901102 242109956 733840786 611264328 997128590 563185581 712048541 397532312 894819405 91943340 455114912 861398207 865468481 59452377 345695676 690411314 723029454 243525618 404580161 40662357 981990119 24854614 78784705 258599739 501379500 745895418 857565098 40729909 634725742 622957473 834878891 49766390 271837326 712237641 840716239 179092688 527534930 977870384 980711556 750733312 961344744 74241291 568495672 927506963 991486154 205996880 796935531 991584231 997211453 796127090 966948133 731102602 842793978 474090672 660805200 460526328 751912377 311748951 533096377 583623953 651179396 987336015 993090959 613255034 926285829 459704969 594304492 732836033 750908878 645168629 659098142 651563532 946739097 955913712 996802617 592635543 643735552 543686637 983850123 512297779 950675972 802212027 935776913 101562923 688014299 439503507 948375489 514295453 930462572 308685785 832897295 664876563 991062243 947327864 972740361 754693994 872408068 353265142 545027497 385919429 714701675 334062194 998020846 488664356 648496573 475204485 823026528 877062490 915706325 792625518 867311573 29088360 732096864 582953841 613176655 906290519 994259531 883037318 993899904 174257056 864707283 72334948 611467707 8609616 57063443 218273072 411008283 140887178 484104725 991969812 992119861 295171783 443990421 495291580 721454418 205089002 790542618 844529272 866111131 655958284 675950618 970870054 989014670 513605609 818600180 899632041 915764762 987348935 989862547 631552085 920384851 307697358 687078730 290571240 832742818 230593658 527773781 441856575 545299524 501111668 654869968 841340514 995907379 37981432 127135441 361129681 451464759 533592640 729900331 250931797 743421517 72074277 437560310 779443705 816339912 586084537 837640811 303645959 514048587 115136919 388420738 852745885 942228588 567999078 706351381 879956638 889623257 687440203 896723470 865157518 954211396 13331985 950248796 333860259 943013518 305813340 343631887 41665064 410326088 217950021 256210210 108508001 416299563 776575618 948409325 915846321 938367973 276027520 424485334 200722014 664525571 545360437 646118030 925822446 927108156 143303148 691925443 596234778 949497191 929106859 974770234 708661863 913766882 279095851 973643267 577675129 868550001 792453137 982784824 654912782 978112283 654952264 658483619 526094477 928681756 63284334 232135891 393079637 573710254 250375324 733569814 308462921 643707086 734764589 805683496 863998428 903434002 756788737 988642711 817509998 955474548 252472405 306081062 574172337 718698605 796909725 947582927 530745527 585276814 817318851 928585708 227143149 562583391 487051230 946433145 417236232 828578990 575458701 834056598 892497985 911634153 343267077 911824428 532461175 690432534 429132501 673839217 648095672 750112141 934544737 990371861 234307687 450614041 603252700 934364207 826819232 992755643 259764994 876134066 820214037 868835353 659862660 826029752 606953779 858781405 360251441 520120007 522455597 712672999 699922380 837427735 505945364 836864399 924465946 943828409 750850693 900769257 787563834 827231276 427682387 605700770 738053287 797830285 604567437 666256084 932049491 984826555 48194632 581752813 922621253 942585812 655549523 722405657 557773576 859976462 283027317 843699826 739528288 897047934 65330867 94736295 551260783 581404503 170696632 291436156 75459288 946881999 598085319 773986133 347674283 560083743 65506189 742022086 25068306 133909364 776203387 844691604 553930441 574931177 456771264 566286437 770631462 829669708 623406142 671731662 271960009 652049510 798914668 811599958 186492160 681685318 579413860 652035100 542361838 838464350 208042386 679633119 106704684 631890495 861152686 907560045 625774487 734946146 463007505 881444197 943594850 996295984 503698337 541013691 497096108 964679513 731035106 802570192 34890090 95346984 942320518 952895772 579979161 665081611 513939650 892204442 949939572 960678299 160511387 230325441 826259046 938358656 984671937 996469016 257212716 784812574 884808589 902362604 226287360 461273138 577701399 803950878 888959686 951137433 41463208 204063473 194595814 767397345 406485381 987243304 653527938 693994400 97906370 590535807 60136950 776274381 592899634 682392064 625763968 819759556 680974473 768169997 543423407 699831121 368822481 563225169 454630173 467604525 326538333 629797724 823787506 872433818 28694794 192496438 885797637 890550658 400956210 746960616 461615610 735756040 761594430 966044404 436496474 447296003 108497890 818683488 479996595 632404197 885535013 898273241 769293340 825208995 31169338 371458500 962219494 998407711 252416782 291742938 193594241 958629079 98380063 675855339 782045584 881351800 522307643 783534855 856482658 992004204 290937028 837363116 497269951 527595097 198483981 933020130 771743263 938670039 172286809 976867682 377341920 905911618 305106659 995988109 348329438 824149912 784484548 840507556 65706889 394378734 45762767 553518600 355078203 834675728 669964574 773570838 906616584 950210592 873737149 929532907 209232251 478780762 561819050 984344769 40968033 256475335 672302501 882353246 3223105 154603627 969559465 974808177 607675456 891426479 785874262 919341108 549056953 937970177 460135111 530778593 349163061 371736090 32814772 355710548 335828713 756193964 674174152 866127157 189615312 701787008 673703232 812642186 876498833 948742626 759851530 782117986 147276492 415353703 159847875 506403697 660533361 669523748 256664231 685217760 141417214 932402870 721951493 848028120 968962851 997696881 410783713 584367535 834063508 837069682 565600225 848860708 434200862 567837901 337419460 642639357 714289010 883492337 131891055 254295831 154514423 732441882 82917718 806327702 130452756 550416494 92447474 576406546 662213365 761940059 502460965 963996529 653471728 838894433 165955681 611713005 413025904 867655054 759462618 866663171 306219591 667053424 793874490 824123808 801758780 965543264 151417281 549158975 751371894 884606128 536851080 739797753 754534453 917282689 155056448 479741799 502115376 876770344 490181316 659525931 476765403 958613057 68248663 310145837 84475478 556075954 812220252 952337417 419436267 447433481 606949153 791225480 825432678 848900730 964431642 998859630 382876049 836175110 48900126 895782104 245618834 360338471 331729530 835015741 606983772 666985648 165273435 385169976 468914279 710107410 833344462 842960229 597605182 856126155 143336491 616873714 89599055 333068320 153657867 897396465 363522691 892669241 469664045 838719203 536218438 570572233 74793132 375644254 613162846 742591937 837044997 959853290 191643693 938681883 587960651 767048392 676549095 813955450 174109183 889965684 940602815 961642787 40745638 880370432 935757958 995746927 904300855 975250189 975090293 975665064 346497282 657611379 519637352 586047336 755288606 799687834 367959097 906094311 777164546 978228691 17321207 792970368 518653651 604623823 45699994 736918183 448414425 989963311 409984853 718385861 557332975 722575791 797894181 827180898 585481450 615112955 858497291 958037175 926297921 948752573 154516406 811566165 49935314 991491209 96147774 420259724 431501197 758740868 46652832 231628372 248404901 911732754 604095103 885274897 338960178 481784946 204770181 304905311 526928834 732439526 131726251 717208756 27765464 394533199 472127888 974679039 454500529 615655233 792742729 927839807 74037839 755565435 158961287 283387628 138798721 824005829 984620298 993867731 151451079 764206213 684147028 807502219 18778921 907216416 292880829 753936072 958976147 964608629 530023702 914022124 430411553 701544753 783382305 819055739 790473474 984381806 633934080 790939323 423623825 928360022 306657102 934738847 188485430 842454218 214575879 658438492 354636326 614052381 768580768 856580531 473497079 602756237 213847309 710992540 306428537 941483915 237731846 377410888 81879229 843347926 105911965 950431301 184673007 831108096 47479232 513748769 183771437 535571165 365627313 707516642 144382835 320489370 455749864 906504140 100371646 594249926 943007009 949668706 260330859 639996279 583666250 969598918 305751753 850383648 622474081 737883217 524682231 578104406 639120778 793652528 233539046 721074152 422948886 806950910 847346416 891465471 539873995 780323294 430647888 552134143 316649837 841263282 394080562 420866742 589364163 771593842 408360431 525949726 883759209 914071674 629518981 645907051 226787928 314208817 589989021 662084845 317117054 570118572 909041104 918177175 981929150 990118654 238825234 404634674 335922775 934123970 991462275 997908689 524669686 970452287 959252386 990614291 507567112 787068111 728326294 951755392 750070400 995860588 107396203 177058917 471681174 741490368 235717049 679272334 314109452 620013012 799590843 854064682 583047247 923126545 677865353 959863956 735317878 760782585 454183073 709766789 151613882 547691819 537634770 875143704 807035290 923661852 555461819 595313468 614149577 917618646 504451937 517160596 183274803 811423357 380570494 910693139 995917428 996792848 692136552 767482134 627309008 933621608 571648949 734758400 981906334 994005585 530642405 890547043 912532598 973943045 567937411 851107098 528316322 537874323 35096512 408672220 47621400 742362103 230349725 587233985 333849926 667284371 670386218 674654452 918255909 941610338 974333221 985844588 697793582 843840487 810400832 906518399 427433100 590183335 139324676 742807100 65824140 172206273 403301133 983649098 946385097 976405296 83987914 676318238 356391024 460950862 765382414 948083721 508797021 620733718 323980548 969026926 506202327 679554657 586696468 933188339 294311873 912085018 462454419 711143856 714228518 828369116 686121571 960806259 873623487 992541652 589953377 824742545 988044152 989421357 70869488 269226442 320918796 359187281 952761440 954826128 909349209 909608995 777634598 824832928 66506240 798030161 502627466 650337542 118087569 947343196 92132645 789176729 80128510 992860049 778396944 993733475 339378836 448699489 229822907 696835939 238013255 918671840 814231923 894336647 532950904 632179109 479484145 637029841 490553832 735930653 900919431 904764958 211461290 383841776 36339732 146070962 764113820 980558916 362183901 831195480 914802640 990987085 197732403 825623697 592426051 890320146 735410797 791631813 264478357 439690012 968387754 984776708 237956847 834474936 616373459 808974177 765723848 855619510 683711850 884725354 69064959 901806264 199386854 385972841 609575859 975941977 2955376 372091935 80904335 961742008 869803962 873430926 117878727 657718943 989319105 993222571 470157361 993778650 303830945 394893892 369580839 764418977 788998945 914821879 30404968 290943778 397206939 531925832 848375370 915745297 855991377 992742834 22031153 669484549 834261571 990531201 808005984 997719905 369283046 938377022 509178078 991834869 998537754 998784675 846176558 999086671 799489988 813004595 105879760 771420016 991483151 995908395 193248072 488501488 964317501 982029889 201403297 286929878 378790121 697163073 66877525 305015933 152331976 817173237 658722693 909793576 761313807 951816746 465395450 727634052 887181437 988875476 805317370 915762995 161749491 857204582 880412521 909854960 778596444 931080106 235525195 820086413 789318351 829303853 172640864 222250546 667728344 769109385 548921562 912230097 694305071 916945955 17784609 664427313 811916389 960647104 928124463 997637574 592863296 969064188 149846240 164897310 958257569 973124627 135128185 500367782 151162692 626943027 456982479 808818514 206444068 461512431 935006288 935182875 486715436 757992511 307333200 885526144 93868390 494140053 888737113 962365026 241651055 505227767 939125151 950039464 391771515 628117838 684847601 941385639 889805261 956783224 368081799 831672970 588658686 767698746 873417715 905309970 493036593 515915840 651749207 654624564 415991769 544853315 596335585 804916436 892958183 990959569 138235319 347562167 312862036 727882843 524612395 838347937 283730658 517866596 238262327 471118384 118356964 234029197 452087799 541521972 504873208 910480284 754477042 828417965 59987530 247227619 572107889 997812053 65561560 218664961 229534973 869975545 351864824 911961587 372101168 549260599 745615458 900006943 955809444 983151701 641615148 701052896 262637944 468527841 328276208 709310625 292052441 517491478 130532560 195115904 626147658 725843012 895164987 977788740 442564700 624272343 42833983 84044242 354995641 724730703 719724603 723382308 868440105 950426512 170028311 502150343 24685740 322474857 117811124 476461849 914710602 980814369 88032267 400185331 859128814 986640235 556067875 766252987 445218787 536333495 666722988 858202400 140484336 209436383 894964123 922499984 676611599 755616438 77568307 245106530 309431536 645864425 616304847 791295899 580207098 647777853 488205836 936835181 772926550 899343297 627616092 743042053 336394287 423063400 678354221 894918623 170608736 695220971 199560757 444326443 375055349 698186472 127801303 723794987 424041083 844834770 73733292 714250744 638240411 745718089 745519300 910584067 67802240 594729675 51002519 362340144 947013852 986715057 719228552 726392847 789932635 994658661 460650708 731480470 998653562 998919855 680754800 925975378 333914258 908581344 872332291 953584001 727273781 732884327 819304695 878823540 505567385 721807836 552533713 901992287 323108616 741639395 960506865 964232527 327734721 392446851 736821443 839933918 635176371 993364545 500736410 833898917 858578555 968817561 277130563 758920113 350079365 620112134 730050812 836323153 326606984 437162842 751981714 928675265 932934379 958241867 590938393 839594408 622983834 792239366 948760386 958393402 422118611 752711149 429730286 497686598 140834781 518830677 288487705 510843039 844756168 982684959 432388493 697021250 707252576 787865496 861728978 995228395 528790897 598878571 96856505 205145923 206531688 646319668 89812946 613973271 605189608 745621821 6927538 932612151 227828810 325695795 545456711 650040216 180122864 217635590 800729854 804390762 193749831 525296518 465262723 853560122 379987587 422702373 726680324 750995299 809635676 849046118 490751993 916961852 354745507 402901763 30037826 224917610 480807129 852140398 115662041 394169879 476299198 831501514 711903033 810817939 356859837 676805863 676290818 801264785 788469563 953815534 223211753 499480992 449283317 797238027 51549775 636811863 147672511 865661231 677808206 909016189 991946290 992235029 170224538 970316984 102159830 656056561 283659497 566940480 479118846 962514139 33628823 736825892 36158503 203544042 780331804 831426267 500746279 700120598 161657775 535299312 131064751 942090946 748467508 918571461 972949322 979150622 523015987 634111641 254877013 394507149 515157209 958613492 275676349 617946315 798194823 951920765 628411018 933162518 695646194 764487969 25697285 611218807 707031020 720264932 112055051 621862994 131310523 538573918 127343113 331193696 777715422 813256492 809256163 905555363 361317775 453485779 144280154 868576610 636323614 865291605 319366203 742929789 720965905 860570432 462387227 771903109 349304569 716447117 39889987 722230335 567655282 755817565 301591407 364477446 969357696 989185649 649843731 683490899 193902105 315245025 281805315 331079734 846803354 855271108 385514181 467395415 159681822 295719599 808885695 936029743 443642859 456082555 6992936 260084724 88423875 838783330 607280003 949652510 914913952 941554687 480857142 838337278 433183210 891981174 890172565 940714877 958609 953147662 524131461 978217870 950605287 966608897 249977941 932599898 657726956 958460806 326925876 940694758 942260678 989104551 712618850 935675823 841956109 875868654 318758655 974104032 995434037 997438869 66972649 240011500 845464522 905415894 195675638 477700538 982986812 988865119 389024740 796507510 800645305 907542781 847549015 882507478 835097298 912273663 646912385 853782500 527549835 564316588 785924399 838498224 292101620 845258206 830045847 978000476 553290195 668584866 796658343 875094283 953405960 993750624 626857745 812104497 108615226 405436234 554187941 661370110 282848010 288773864 514141717 777779799 648629554 940629889 321726937 477102977 962978938 976850072 865238081 937506144 609017506 790158400 529991292 667333310 945344388 990734086 546976149 909184750 996360715 998787481 831824312 940847247 316295172 687730573 926994633 981917815 741337729 832898880 338952923 736329929 898067198 967665286 687277151 806301876 992042172 995016964 246920561 860855715 221410128 584593651 919129498 975719018 434203594 662490772 641786376 784010468 323829319 671554008 790147805 870192985 728793891 802960503 303092276 507917797 19826354 742102353 930863293 976469555 124494047 850625991 791066120 936982716 117641514 623827646 247571836 548715661 10709115 43673470 903528319 979829316 824955895 893040508 948417474 956037564 604252273 932195101 922592896 975608406 548552042 679466016 873526921 895105765 466099949 808525002 889717477 986413881 337354997 576529491 838970056 932177490 176201788 660336867 666380530 797458835 17362644 297142952 423249834 546375795 745476665 805224551 162381771 593730027 524542083 711651815 473644485 561051463 275431011 423731136 344265301 569853361 697753165 920505125 587215011 918426649 860365820 990836185 597633222 727321329 765998140 950067115 581652065 626236542 55584704 414486484 453329484 771074311 973769628 995365511 368893612 472943682 807528281 818027137 978985217 998095314 154366361 503086523 815943185 824869803 217322135 718132824 490922945 720177219 559304798 816345991 691200389 767047356 883066404 893303436 372031763 962417786 427195208 446784704 653724780 875927953 743381179 926763224 901991573 912694380 171582916 560733278 777509002 894204592 940708603 995309561 107514555 376620617 62335806 729327002 940123342 955508111 3094528 770569638 224916558 367813362 587315475 861250560 419712802 843908851 134508182 251733151 888910462 936106280 58510939 351298590 461877483 812343840 147931231 263523356 42201260 257020252 541420793 830192806 671309800 846615346 972707471 992429827 692385843 936140634 162160937 304538289 620421907 645480278 335608245 838955377 280756827 753809480 589759575 698976953 263086479 903426774 864656120 913315203 631064884 965099120 869034203 871695553 801338012 802525988 611302428 617307713 573994075 814101677 266236141 960120816 354763901 913062490 196008896 800643670 282704644 365784465 406954182 592111105 869595617 871611669 474436915 871551983 665938771 830331084 96496119 521306077 848345206 872760266 985273561 987131459 982877664 985238216 170833121 729600771 722198860 808376238 530804611 769311090 994160998 998787672 657661345 842130403 691222837 854914300 453393511 780758999 567224899 945130843 566618230 894690072 775880357 782306334 106663891 926735674 841661965 998969672 118163230 372923732 352372235 680962216 8599624 498618162 343008901 760040001 578193067 671849437 793669046 980362453 198545051 385689181 567373805 786758601 837537373 955856233 137988313 535426774 714709557 857144938 772349357 982544300 803482518 826417052 186403391 526660230 907091073 920655733 274968082 408734538 188710940 520779795 770081504 927054469 962408756 976234620 704312822 938674917 207642070 698997316 435600672 726842026 855568940 899665918 969346147 991574580 234447186 464558610 132747923 483984961 205848280 892285835 167031493 779092410 956253414 994444015 503527622 946527268 475639565 660462473 266196795 402658419 352301974 716704380 836717512 921391002 424245246 841964260 314222703 327171551 988329945 993464355 577930343 952838249 865912151 912818847 585040892 800953736 315047664 821463338 68683316 619377332 517491358 517952089 725667571 823922125 989362096 992600682 240644278 960635560 317221098 847885003 289259513 334016854 371270344 514740281 907315620 973482169 792213614 829953869 386534564 450270172 24582958 598439151 767150207 919154348 862511530 868193314 386468989 558732888 681111510 891947814 804238193 992722647 416684469 762466836 574399637 893783766 887215940 991109548 481952163 794492584 441650338 460994407 318911862 676543774 978192311 978702084 134336582 786520357 317210564 502788779 996855370 998801491 768745112 884549029 586430064 606572426 950968501 965658680 467011920 762924347 27835817 945491153 395058572 837919391 717905145 756763454 758575225 971153483 503054627 595821274 343861685 367120828 171718074 320918580 411010279 599998557 384032498 636880446 679430538 765881471 892130164 900924263 214199047 221792854 808909157 810464694 217853391 827001363 256999018 758629003 696285288 837277634 689920834 754920251 307281341 926791883 347740800 748691167 651659719 982166974 304777267 673781697 36334672 813109414 751948261 836034931 656231047 990605574 973556967 989557077 881050137 914699495 328086940 520896048 131033229 364102406 470688485 472625040 363623652 850699760 155300727 509703033 446956953 854782244 971109080 994682553 769006856 857259537 890975924 915862007 703642470 890949774 600802793 623035857 683833514 983902252 334640221 808234880 308503356 349495142 197317119 397927944 854999220 942616898 85501938 370207500 981140565 985166593 366986894 473570514 168054926 989135999 641779957 642956718 861244275 991138710 947316610 982127884 658917360 976520137 399000867 633855169 619625334 751979732 201056673 763170672 739093864 942562386 623968726 763425123 793562937 842426386 642436416 653142591 268338551 603769611 647662914 730284017 869679497 968124067 384212392 454872934 705389596 728558733 90685284 895075946 250592375 622099498 912568763 939899602 315093736 916041968 637685232 664669482 751441560 768828268 548865215 798452173 537200517 734493317 767203829 870615740 527412500 798309901 235963791 683827506 31144715 406202002 940225122 991073984 550792140 685358644 585922230 884845604 619078516 634074505 287129037 397690480 939269221 944978528 742674815 810284797 819760485 862383854 609997860 724109855 972485917 986314031 444530561 990971302 235170679 836942151 44094249 643809975 850826757 871425342 680521576 816651838 636540504 734146156 790256419 954410456 531030588 687319969 698988206 767604241 653453021 988194609 840995177 921783327 641282841 884615657 782950525 977757368 296707212 528890499 433037352 917309512 712103150 815100051 437750498 666895502 762467505 840810344 426861064 868967224 849051638 945664445 783292134 870313481 503303908 542039386 28369980 986206713 626070487 732022070 563503571 754092389 372072533 435356576 407150424 859338567 478363555 868926358 636239637 836675883 574921622 632115258 792504448 896529536 719886481 754812236 718446235 822692551 151382856 309855366 840403530 869787396 474329712 962089485 224172939 746268266 493996832 747041315 443546643 877609527 445598967 772085229 812152431 842588278 6342401 613470964 725097054 743771916 992134180 994040415 515062881 704593660 246266226 842418769 76235431 374295841 130476618 480498067 626137252 937521372 939472015 962203447 906214090 989125766 941495371 994977069 136942031 295112513 778810803 991459304 818945928 935793443 913220344 981191376 549761924 989443867 468959260 880427613 302231507 446975552 680357106 823448274 997829187 998957948 513453872 573069417 195566640 752343721 185404412 274064923 131410065 706773832 30295970 393433117 366951782 383593744 157539290 463577071 40555437 469169478 326755028 726906675 669097395 787004891 931250968 989150476 405497940 422841807 154251290 983669113 133301056 552201180 855194132 892779371 268973559 643927810 297942533 789490308 700707902 741439482 370080915 856070360 962856530 998147889 736484946 885879829 267978678 840384458 971302054 975072342 453411890 919454129 665193348 687515968 533885937 865371384 3384474 205170685 120123579 516589893 592645855 994248640 96336217 626035419 347817085 398429869 971875044 992940019 561010917 695300751 897814020 951157402 177757739 244235716 634723343 690247534 44085119 192716716 176425479 628419129 480052354 763224881 175530120 250473769 806181124 933886431 269990180 903451179 20294351 476532095 615261429 762274700 401349606 538671169 809211604 970733880 182631936 458245618 440639143 830534205 510167915 609800832 337350015 571518840 765832550 825329061 814520682 837955614 314180383 739869509 697264456 727757143 219675887 409820904 479441088 977401877 769017444 862196427 339485469 490816283 210757819 455754112 604170410 638657280 668448680 669965541 540219132 908859008 684432115 840582861 279665086 327300279 873608324 947772848 731766129 955048443 546473619 770143355 20578657 674030886 104297830 317099527 563355317 572738600 297555965 418318012 599009377 708157970 506234211 689679190 846047043 974481631 243836609 629767519 780008058 968632319 533106746 686147726 846831046 852715792 388725470 577529074 95387994 880969361 886961431 956140436 518730577 868510511 184694308 867395453 16813231 303614284 7655672 844337250 263046158 767190402 15503156 280793967 280599519 367215032 585891524 680031539 673460928 879125933 541552252 547054010 59090052 617785767 838416799 997268191 317776353 637332080 434782628 604458787 995859227 996194428 876759093 985233482 520706574 557656291 717453021 775143199 664152233 893955505 792521848 897250842 599273433 692038358 279621878 422330711 564092075 904854176 294879253 907447857 444675366 979577768 486921480 957813442 264234363 592916301 561268537 807367982 523457533 844552445 767852266 852837157 445707308 811606349 624190563 662795597 219051482 520605645 899072308 980480317 838387850 882256378 748136114 902804394 392576793 753128577 880476422 965791200 643543619 886549004 430508766 452054910 646250248 742331023 418705943 825405191 445796693 664170326 129567320 975624687 337015043 821153885 412273898 723799278 297802856 728741198 7862130 791088916 442352 147059409 267976818 673786610 958744019 983771693 739445952 843437068 564653930 782279494 168372257 578977250 222484627 603216757 305986796 989341764 317890317 550511505 90196325 762973631 975654311 978021175 854298791 990974457 962570747 982626719 753227491 849037417 706939679 809515362 502542127 703015329 740053185 770636657 343721066 353321393 832819049 896428475 708574087 897927191 173568485 385646881 201805299 546279427 135585625 782548707 346362731 573931483 737861721 992422564 445318313 477005778 302869551 618933212 365192381 798322294 304885971 866679362 316662202 375049194 254642914 365955036 322966866 446226714 989822513 992260933 411804831 573843376 751599357 769103144 935618193 991648749 802432029 855117027 929197856 961387307 749837398 964233591 552270210 699291627 100135461 427286124 198457760 508840870 133337251 381007137 757900145 943523372 921019760 962628072 615287947 663584684 720416880 773564152 626719130 880386930 135163482 896801688 585167589 739003133 910304166 993517435 798128650 921842010 486307844 873066982 809789961 932838622 197616430 666871863 967837033 987624579 232769955 586904906 374734685 596399401 453708431 562337584 465836347 712833360 392166688 682571577 517183209 745021140 504235776 858382884 812370178 979878754 946564310 982824544 940234048 972262839 422547251 743916198 120989197 146311862 814062961 857337757 978877764 992145464 188177918 793485082 720618187 959796320 379956956 797882671 847657626 917622287 665145432 746966015 431553577 848763554 541393854 976592468 78860709 867828261 973127222 977655574 488559168 540575618 631716727 949879761 838320318 961008626 125190223 954641177 185291846 940688606 68847494 626937314 613214034 643278841 408035653 494653082 922758574 977344325 807117460 860352465 222378278 387824968 785059467 846653241 49138077 949371628 921995337 923178242 86989955 417564751 647811357 660364982 375759933 471356814 575428424 967131212 724893032 765494722 636847572 840253352 461001425 559931167 536324551 957539456 802303568 955672441 510074451 849605122 354771863 819043115 933457993 964866982 20421434 652396826 283664917 996389035 248283205 628123574 103872461 641610696 71909653 877341985 74529457 360921725 735234441 973152834 419066850 901661719 784716606 825311825 823832972 910277134 540063713 790590917 502550738 656003975 857487260 948078680 936350521 966716237 865493993 874882879 125335003 270424756 785298952 951189955 543679473 790344768 853684326 894141021 530575518 644859098 924232731 958266162 264383362 566560737 165043862 567522345 874559269 902784947 398750821 428812379 456553156 892384899 679371155 686936548 4196125 271117691 959197641 980214291 617901785 948614138 915392055 927056140 117851808 740672767 853628281 943473807 72288504 646426625 392879402 904148196 893301121 955392304 339711383 503424793 654440100 662113052 671465386 714804146 554513203 870282574 69419714 672397555 292584129 546480605 107280118 659110688 52066019 943857057 763142741 815168785 220804570 261990939 504209530 875012808 865211301 994810353 994186356 997005381 477578712 711526098 918773667 972185943 153002482 820597705 439397625 905995557 448882882 520520549 718667716 973157440 886111062 904056049 427593384 634433141 4563988 820148895 977596225 981393252 32908084 261660099 479124339 856941005 972387886 995942748 454677131 930947032 261721641 939348042 121294399 535542890 755174746 760865347 150310121 433495638 770143532 965036800 866458057 975512655 236457473 567751641 97819154 568138644 698049725 870774531 803714696 874256773 534292061 918411294 236074603 537799063 267107801 770819637 727532198 758689862 560789603 757872195 167529220 511964166 453429354 864645511 913311496 974809715 678425876 957593178 605381949 693288601 639029526 863837340 525856073 909352929 921337067 975570114 531939135 978174535 316171033 600497227 569715143 670174355 48774093 250760053 455401966 724860061 667938355 716722734 734347671 742615535 648807351 702505621 731093743 772689819 833138925 962083966 503545895 746263662 627843139 818916992 241857297 717247514 531170335 614793812 578077802 940427371 926809648 995109658 610516573 736450515 710164902 926411107 494979496 510878792 827423902 882678570 844398446 888622284 67177598 516049233 552868646 624966476 758963504 888505235 456614586 601653401 888622269 989988887 545410674 690164204 908562539 981929276 548626159 833407850 543613398 844049204 549291189 570137541 718160017 906308410 106246661 522244635 523771781 864389904 816241855 906336748 85311041 231951150 23708208 663524114 208790041 519947429 92521335 584168654 46208730 620685716 497382315 981492546 153303230 642780411 777002146 972733577 595182512 928201586 232803572 528785814 735484691 902005160 831328756 889585053 958392591 992687791 304458765 618455760 809522853 849046749 518370041 812900950 78505294 797506620 542115025 779688663 114919449 337799843 7283541 413554723 695061798 930449647 465656629 684413402 361454935 581743527 290840794 316627801 267598716 674832546 265355941 593486391 907688668 996067980 985693303 998436502 225005568 923176246 208659049 230374438 335490890 716875316 536169933 894454488 804293271 897017040 125464439 404760758 107866805 238169705 645791137 930628834 988230364 995688866 169094373 472278687 811490149 914376713 911457493 978715843 475809328 883159445 351524997 652966797 252855833 755375588 8669591 285407062 98327414 263316198 153908078 830469687 710646917 820462012 218557081 493710575 351331749 487704039 856526855 977548653 442324883 589910268 236371115 900577080 724548703 829907283 451053348 836185062 962225712 992785949 214959059 837345222 611701856 992464982 17631034 579284532 728995221 742984809 671973578 983620035 606954059 672729324 965896813 966134506 119687524 750656420 660565964 676126497 267450384 333875606 564825703 937533761 686107096 693749670 522932106 799981266 560586853 867591530 601795580 763273468 548171709 883965645 593873587 654006208 995028826 996722760 676356787 928616347 376245534 860283097 981214050 989799271 409883753 696418520 822870948 967281125 181482211 953091728 129402620 492454370 71107383 217155244 547988921 887417242 245177934 760669479 902265590 920191995 772228404 930146233 733486917 826035987 393913007 877506705 116592352 260517485 135797198 889685107 69000188 903099622 151886061 415485755 450141539 645753193 492235375 759736984 402408620 440104525 475326457 594684533 898479649 929039047 544323600 740960386 623464158 753628947 351545152 462690344 50725785 292193411 334024518 777109132 338651266 750369244 63659715 612797644 910861616 947814258 225945290 455099303 613811636 755495652 823902429 977095758 95463331 131542330 290672646 881873759 740417631 847510135 738306219 805595241 89922248 206931695 205391814 274632871 266336819 475266820 413394654 466471592 705415147 976627541 76974755 970071604 633392417 872536700 56521560 602768943 413689557 460548695 104912148 594115857 276792146 897719766 345355441 927740548 277908983 313166589 100367596 755308962 773421008 838920745 394318308 498148131 315199116 366180710 65159556 328242409 439185241 594325031 652852831 947248184 107662664 658437933 374181214 791394289 751021747 802938454 44659881 265337740 683377530 833238273 451272042 742955089 772684350 788347811 744975410 850889217 768508230 994281156 235044359 739664586 179124818 278194095 860541582 907471267 131757394 265845925 267147769 392697304 454301598 762758195 696607027 837253935 639507487 913337120 312555013 370246453 485485814 635565074 994948155 997038629 40965765 312965756 542589939 749658642 434122863 702202550 418115662 635551119 655949455 923137434 791348181 920787703 902789621 966099444 310430355 663289852 538844627 784267584 105105825 991674571 30687078 463239666 563491349 989988114 913166632 998462422 835193009 904848325 195106243 879890824 259043530 543679958 169160415 778438851 777400784 881221621 196147159 750241216 972419279 981217458 458805867 552727156 345115454 576545354 832752280 838606408 379847193 832675371 779701099 973885531 187896974 610051229 294694227 489624626 244191585 913642503 150204739 417826443 739681989 747191983 862398536 965007250 782009358 792995875 134234883 253863994 141262980 441612276 564145101 837943086 993793681 994455647 7523909 287556374 340681119 611535275 722000279 961549915 635758492 967183164 172411191 191610854 975993610 985595742 126226375 762638270 748517677 968289425 386900147 651558153 366793863 934329330 190312757 819314327 264695870 403045205 157328756 382762186 517526711 704324692 326139044 560640635 780385111 853617001 809530999 863725986 788424985 804256192 767525879 833170345 930046253 964295112 979748568 998098321 401351455 595071670 278873908 375312920 554578093 796620346 42352476 930791526 259665872 348674030 469949626 755683037 839862120 967123454 826955993 866686221 434093839 551922158 293124598 470303495 773435790 979013236 891205792 969853757 635602344 716507417 245557842 509675294 504938436 857273299 974379672 983857289 353665610 439717781 825466570 910755641 641526440 969110909 261904331 410617289 33671672 216590049 53739352 761696791 512121820 853488917 243469252 387089580 380454872 612715108 801431865 900851913 864255893 902470885 297904785 993805819 672680166 771586816 860001257 900154234 179572803 464952574 330597963 412832738 602857214 641820801 326589052 907800751 220574100 458405753 886773309 942168628 872229479 877878887 374894602 944492947 815613960 917354160 243775654 711627543 29342108 187737429 681724321 909117584 946719979 954723886 874602724 896555047 826742680 849302056 658336303 784917227 918977220 970418558 323105832 674808234 772567429 820186667 177904521 397657920 548011239 915112886 53447505 339805178 298046516 599259372 928200944 998252923 838641002 942358145 255970719 450904020 782944638 813917642 588728847 589339466 526306537 893345648 483357486 949214040 54308475 597440406 243144330 966514259 733253051 932187415 910336199 932841052 728468922 801022964 708242745 733199394 940095058 990357664 961370560 977830283 394147471 529377440 890497253 996106638 964751740 977970202 521572367 978457271 313274557 749794617 706845264 859124327 160547128 928835397 10281787 80248466 632133801 724726165 796450505 877000478 516626114 726629872 188837532 275383781 331206747 817376269 120200489 998180025 553123058 656334766 766392690 773541250 82399573 957190807 148670284 704894813 764002613 765896467 959505740 999056107 975080109 976850474 639573688 703242680 427291258 548422157 802113180 883356232 655753439 811206245 445983012 546318520 478445859 943880856 661447751 981908180 931326992 958101883 12546961 519208836 525338066 578777153 13794187 813773480 601443448 685585075 830946146 922209932 596494921 843053042 338256485 557186391 380781120 854606866 307247560 875163689 648369254 698131561 624223303 762801333 691058134 736669834 161412774 876864939 310178732 393723693 52039788 961877356 150061795 771629573 703352699 712157115 688020690 891046899 866006808 987371919 305758919 598315234 199849518 743238848 271648898 365849444 849355466 873018458 518264558 848129485 852448249 921847395 145338411 200313376 840190361 865998262 894495798 976634403 451856930 893662191 760285974 930020416 411222523 538097848 408570106 633561850 873379313 983104585 52514790 735117793 125321731 966326282 974635790 982763231 809171359 965154086 465226873 644822152 417730980 808267015 131728405 711666425 364407889 592798389 503979512 915608747 254262409 381277234 85325410 485437400 392890697 685460791 201187610 567430867 859783042 907393474 54818598 982110920 68506654 777163889 207287688 226235142 856971998 887854291 911143772 961326411 714122657 835448061 782534262 921188020 519938659 594017825 638496611 817428364 201184360 996108094 192779396 573667221 463117767 498316484 630455726 980568005 863726600 984822304 794408123 802460774 286499444 685345129 323896050 877632146 390146845 507350135 449609578 559405472 399173265 510668688 147303715 510978100 219445888 617035638 434254760 444385415 932106734 951203807 911039833 937229931 948802836 986496568 705719245 808157244 52372525 913029969 857861308 914174118 910117110 944566532 335837464 957785133 37414705 301334419 763555541 805682246 889248228 924020809 418491207 650265197 865946318 911649756 380840915 588971512 582790680 618017809 334363187 952113194 347873473 733040553 100829972 346831568 145318496 783966761 343327817 364076760 805472786 843206024 889509483 899798765 399363530 470624067 875982233 942372663 971444691 985836206 596238614 923927533 779971985 804610763 144193994 433461023 405840885 538632517 288650755 630349349 614594418 898675271 5187324 983883335 108968503 220055108 575252048 622720665 452619083 697785657 270042282 521512768 305988669 777946304 10824073 767105862 173918445 810313184 789854969 820731239 41807902 483400670 759270726 766258280 881312183 974635683 650674431 867376923 193313771 614565703 763140197 768937566 314646905 414479267 782557962 909740522 897100645 902405116 255110493 287854644 565208927 891001841 448341997 689765132 469060603 655500765 442757848 581353645 967478029 972021637 668652693 811222264 158398577 257112695 798310391 813314445 613779322 700429567 781765387 868083451 866582585 900315124 855714675 894171848 463076361 639720583 581181335 840836515 137487823 246003337 496455135 518177312 260506836 866756023 454655447 535386396 769027104 867224401 994068732 998662022 637424413 704550641 944466585 950410062 576409890 869782957 631405671 672906151 499900141 580101741 249144254 595996576 886052838 890782054 119014308 207981760 516480481 734784589 73542984 264705382 750215333 830541530 712165456 971392542 128325695 247170149 603433701 946870473 741973096 968143693 665164077 840946765 284366900 466088918 514397008 668594994 814544460 935787110 360149247 404178957 106331219 976871529 68127892 708744099 980314466 983975992 338543312 382926042 259290194 424045873 186781891 739371405 575364206 912047269 904668728 990698959 246774081 955619611 648729215 941779188 661920311 754569320 336232892 872801024 233791408 860478525 824323422 906939056 229871208 633430157 231303991 338370936 604830417 734877610 970479816 974420865 539873178 825457340 851071309 922261473 222535349 807433637 688378905 983375216 533197812 610725545 111264265 370582916 751172265 771791310 943584193 956570459 611339861 810691213 177244619 872149868 730661095 822296633 420773380 709728019 149829313 614179499 339298767 935381856 288770874 781807113 911478913 934434457 679592876 989035523 737818998 926585527 982961983 983159176 167159240 317222130 55331862 962356440 370238225 510086170 111609839 336223909 99592074 687912499 46925315 786298468 905482399 964306186 758339705 927529598 208990537 543960244 750658025 986871440 915691205 965642028 334605893 795631104 809178250 948166107 195267972 896365550 949875010 977870234 341662795 579986824 137380303 758667967 855930848 896287553 683217615 737987681 361783579 533916146 247493953 384556684 531112906 695390108 76210001 560039079 244702583 410414492 682335272 717336567 27370792 272463395 158955729 195558355 594400739 805788322 257865941 943106902 585643344 605871068 650175264 757166447 585950177 847916751 352143682 851398756 208461206 931280113 531284302 687712736 80254072 202566037 508078798 923929538 306519271 622161471 742420436 887925237 734465101 872212543 951835542 965767222 692559688 771473534 195410329 775986766 45813043 629055381 259648183 554505638 90931529 805957470 339880722 964974444 45599979 558360783 69717715 722274479 276104432 657808818 877929649 988202373 46718553 244611876 531160400 648992330 989287526 992445443 172332226 964663679 514962405 959863789 102871808 149082541 257872789 640280916 101776072 549276721 119893972 705955709 338573243 411094996 130337923 633096088 56667358 869800896 51510105 609729321 20357966 980260662 828469342 928308551 739585669 742255403 568059206 941948807 397962521 728370403 85027943 691382863 937018394 975748443 20171284 768376623 684147620 745712632 795606855 930136030 811186378 961463125 682596974 812780273 765610824 778568769 779782879 929821277 399084493 768819147 55981682 335159358 600032891 787221569 204136103 708368858 470173507 610098217 873564634 881053751 680043793 920966652 216658092 279382307 311696501 828080755 335465727 654756527 978742742 991708289 418707729 752271462 1287781 604639137 527013194 789224250 581747701 608113788 219876187 576251862 109741355 195619082 282529951 965099548 994783345 997866588 623952804 670553601 670606114 931804628 958638918 988365723 59643517 926604681 471504138 852115001 6521123 674477576 502066402 942893389 484820308 749319239 87353550 225247207 919927201 920943995 88413056 784942408 74294998 658378278 27659190 221880390 297379265 447034509 390767835 918072924 106660883 827163645 542393206 994699757 584252773 937172462 809835852 951958154 89801437 385591370 968139977 998221488 35282114 912615707 494449252 520586627 793358776 966414557 192074548 444534425 279767348 324016942 599397087 699708842 418664165 989273490 868884986 870130579 723296532 725711912 921909349 983934986 395605058 709334300 910989240 919155959 267417590 400389334 314829860 321991960 364687117 493093092 435168463 739338502 459515573 520514921 465578886 686818049 758667432 953271246 139133919 485566515 42677983 880660807 132422800 723858282 757974590 922672680 364002264 791990331 37815950 822320321 295044506 956774642 526205279 590549098 166150409 742758364 824094181 976013178 318137356 874521625 846656188 948124433 149006393 391364112 595503544 708420740 684358418 786217926 170839061 507120110 722981027 728862932 183346864 861824586 58208009 97401974 325421800 808748549 288500366 820546254 35162217 273907953 181580078 336957094 608241043 802092138 372387928 376186636 805838135 942804009 68287551 158443685 483682201 522875252 494993495 778191081 546049881 700195777 850062601 855661876 910061563 999378886 542841828 835078222 454060130 459697468 37120696 326493712 76574915 949125990 382151653 865359168 998550568 999082524 48865424 245081306 64579702 844128718 10469599 479824446 84437437 482149085 419041137 861894191 716830280 917381698 339184108 757151537 750171783 894503030 905280536 985376363 660063518 848213417 905637732 980016206 114072432 151500564 541709045 563534710 62250916 864633464 28764131 99279996 574936148 690667715 363131955 455118542 555106151 563334920 488768670 678984313 293383535 995855367 795574745 989064956 634303954 885117185 87995054 938313105 908998970 957999314 986849960 995571528 721120818 904755464 856346938 973567074 984406756 986182446 878674838 982216957 366828878 728175285 819008696 891299290 602136893 870334568 819227525 976596290 206401376 664726918 338814591 379073443 579987909 689395327 501374598 640868885 476987237 856538603 816080391 922361512 694657418 953367332 664477353 953461324 986361245 995243960 293400348 342080908 388414525 604367128 936458455 971501144 27887471 769125228 147428421 151420352 445194393 545723545 451136855 724465104 692899920 697131739 603263467 649871091 57676758 58912384 647184389 954859997 152138863 508445873 876597180 969993867 9236975 548872781 897097071 986443767 740763280 913358115 812181466 984676920 973510640 987968084 471127619 627880466 539849567 987842899 712271149 934399032 603974674 945763206 783800185 786702036 231530077 828816295 344736383 473793582 458757355 984364516 835728420 871995214 329736530 745391768 83765718 146697523 720963906 990080213 516834193 566541737 628950711 797120772 954586898 992067641 339330488 587930826 41951918 150009642 683612375 767717390 480588026 500062035 100045486 356319145 415087290 728087029 154525458 510837480 493586618 810926791 547651107 851230152 630796275 847756556 637876793 658720679 940767908 960337543 290059608 526154115 210857927 464024736 474570789 629328373 765024030 825160647 385142011 853182509 505728785 738126893 605165530 657284857 115628001 649243961 425764926 438443905 217104376 367174616 261299155 662629585 49550425 716731107 334485144 424148307 760400677 764227862 365452158 902236207 8970912 561864201 561887523 647526899 155625755 277755982 428506520 776074978 836866398 966067216 336417915 523630845 510077886 517956993 410899259 676862012 6443022 494161016 608545090 803881713 61192677 472826345 678536112 916018022 127809950 934111605 933130373 995659024 648571349 972101158 664568775 684063699 951626457 953397552 162858998 729894098 921187574 957285141 158857370 315531479 623374304 933492295 442762882 639600757 479257084 901543008 701381916 958620044 471657036 574207557 470695194 484875818 749112364 780217700 2537573 823428244 257672725 503185247 507716658 605211257 48043234 408401496 357161462 898025079 774010637 970930510 734703655 876458404 602697597 843291491 568246381 667757652 702473126 904139030 966985297 980144637 190760182 428704576 119335447 879705817 280425008 855669910 6047432 905878361 499499012 813126993 224589709 565186252 399323665 995964400 317782392 322924426 160974524 636853380 298589367 708776359 173830261 892424973 400329622 812161083 700462851 895200432 20608045 786839551 331709026 669298590 422207275 624579319 201724822 557712569 975782248 998710036 558404293 875927064 735411733 975306208 359470270 445749340 378623024 672368266 679759903 936792846 634680701 875838033 410682963 489323572 127546109 691548271 300125477 517926824 454765615 619882679 900913115 910365710 328006388 336090709 958732182 965920196 56316851 797537440 408140855 788504445 719436638 830004572 182944121 290077785 17941460 488904450 913993922 941278260 553568575 869066017 146442666 411670404 327265644 648700412 643987515 673333003 277701243 852131201 310092502 336762155 159486445 301364825 53614231 279289324 487394044 832904887 270185446 698859784 701920498 716869788 101384385 952593915 508935102 952971570 482242508 508062109 482630675 767183855 211492125 683188547 311942096 994119907 601848581 656674003 29754635 639054615 542275454 590291618 230203683 516028603 655664365 801418388 747486486 845020241 589489773 879068643 298513618 737676561 868202865 884448336 775469739 780082401 911171905 962056045 99443548 988896343 112074953 898487798 629230946 926870697 144229609 868694861 825582646 957065198 50331436 144637246 131691346 660844527 961696829 968175694 682120749 935137816 678330053 794902752 303915385 542665480 679253488 810820653 600678283 900115935 226522782 784497029 760698161 936327410 843396302 922716338 129957208 136772566 703618491 956842126 370649532 413318067 964360845 974253087 916837497 930091262 869745723 896350621 376827847 669706800 449775012 456344564 663033964 684813672 562471541 668513372 654954052 906198145 230062418 875467156 252254930 446276273 903330666 920462616 683602659 697664811 394893541 951406050 533566608 639697334 70330598 612825780 788049887 987681293 10308305 236102736 651532333 998854634 820638885 825992769 570048763 837605142 619290032 761034817 781042879 810524904 140255898 150241052 52191137 549688242 539983594 950005976 56316379 946694157 221626619 698811621 216026219 927712440 31505222 663278240 392014983 599698425 415852614 688105119 402413583 435567583 306846897 827158757 382109035 842450106 221583183 848916851 764657466 848962843 463629710 663204574 439772168 783728212 386704676 612052728 530385173 659533713 344052191 841401954 782167104 965491510 756577410 978578687 329233345 515622454 151793162 901212182 591370654 822820435 943746023 973481205 823832713 856713042 975906577 984914197 939955142 981236105 330988619 369377854 861586386 918084687 611910698 931323631 129172450 848855713 568574893 790658619 840757462 965113172 463575995 607789067 35289491 889724802 716934422 824143873 315915090 709733054 894827718 947292729 329851670 958278831 142782114 428238965 266733539 656309163 587288084 917484158 601151930 984920577 535406180 598457815 709802069 713719280 725730054 883449502 689936297 722198218 952063207 997754372 912321736 948464876 179936065 558235990 818758317 966300874 428084893 736013744 354081495 544596604 513365921 547245702 767229153 867230406 795096727 853252043 913723902 925830458 407864447 982708349 81053594 919315614 801649512 886278977 655645009 720094168 873492025 917778206 444714525 936193545 560569916 702296063 48907509 851857673 505624578 568539082 196102143 329575560 903170871 911372306 503540185 869526266 681720025 699426280 907648434 937750569 135590694 138693317 211258911 292619808 497109710 972121464 250801364 658651048 360558635 715738852 764685301 893230798 572330945 592903994 595714175 990036443 450590478 753246543 213176125 831131549 884807892 990583500 899940953 944553270 94367676 281025180 77688720 363377526 956041218 968535128 972167941 983269430 392820262 425110121 151513291 971135258 138345543 568446326 765742034 783443947 899712056 904086915 105298924 117548928 942200141 952296927 515207843 852700189 444583561 688265127 863971699 900746788 225990809 768974234 530880689 738703328 753193052 993670189 983246917 987958615 104567550 735221961 398430669 468647832 505125855 880764370 143311822 989005596 892664546 972662657 182356971 862828485 901416872 917988033 218262091 907088073 928033395 933685160 469724603 759124904 776971800 795220924 784174947 845798725 292294955 393130258 933016535 964281473 594143267 814125169 588087889 937949822 960148587 970345028 30888048 164847598 832309729 842705521 646556463 867535437 73718802 976914319 847594775 894950007 47819031 104370311 310191495 564948014 741089477 767979820 921925362 940019973 626559235 799247608 116183166 823587697 506479351 917569418 810030045 832665701 659235891 926797791 129035006 767862682 764415036 902027597 735401822 973803429 440627845 517533435 522118079 927436552 216697482 720819319 914436069 920567396 626228394 748587690 926584621 965015359 22478644 853675165 481557144 613719216 340623527 695782367 655902389 894429724 658505771 824858287 388352795 868233773 572569439 973159369 446524857 561254504 359339565 634593864 502262675 624221544 624169136 881743295 381562999 953171215 1787402 21903946 983745478 994445004 341268628 895540856 974699897 979140311 509228772 846260427 116160240 672908646 873002835 882484343 889367387 975961775 570493907 953436252 13954642 710837246 854770668 938952221 699896249 991061724 289728237 305351219 151307208 904208113 953152750 978836049 638865883 695942569 681661576 824184115 267274860 404294602 56030170 677420842 227036602 890286120 332854880 616329949 67494030 193605986 899214620 922847463 916262056 974125881 462310242 605868509 86882520 679783622 368440773 691674371 200199248 635471822 274625233 880444390 886457023 967361507 188405253 318799892 212895479 775519772 138573538 709216314 932453994 981221825 311187487 506940286 579633293 848577606 893634482 912453763 813908704 995462975 363437332 941555650 895649321 905188201 299309852 473889188 55514040 468242819 455489978 899729484 931841203 949970182 574297430 703799105 794883906 996030073 940586504 994429109 43334100 719409050 145266053 207646994 388282058 729008923 682052892 964753120 132927031 387350854 114579799 805703307 243198309 429890626 3875559 367264238 587374932 607721378 59620684 977812894 480758863 691216812 925827934 987542330 16461987 80157165 431118195 474194277 62182869 122861365 481295187 868187672 584765271 799121895 527679030 971742157 420074246 706116651 607634503 649140074 700468502 841454294 20847073 431954809 849658684 963369321 699504836 987083757 356509999 729942963 372501790 434414586 488938415 781437270 295373090 424048538 24002042 465016081 118288146 544123559 134161631 338048008 339349698 447519936 132314800 409258685 693004574 844826572 987487182 998385540 763149114 877891410 749471574 868074544 877522566 915785268 548529658 666423543 790504379 976456103 436013784 668415837 465859596 628564876 94698282 434726446 145949510 579962915 881105607 987909635 95493987 300667067 410307143 981981504 237191449 648686241 499542415 524689015 767960440 975006167 677860373 979854625 626368556 892059592 880366459 945239389 89906237 250199632 838155247 933210830 686282816 933548408 312374203 331389623 367475257 707241904 640248865 738968618 300833781 321308592 43163245 483703135 910705702 999198484 48328808 726824447 522370301 707408183 209327541 272093056 56842166 282908660 512670920 852781511 700263528 759002722 93990273 360086086 373850301 753516242 376215277 671124644 924016793 977447467 744293139 971669740 479989219 636750876 68472065 121234099 917218324 951888414 218096220 365326359 520465084 636002885 499275956 671511606 662814714 799810119 685110517 879768666 72770196 125122155 463626145 924401477 221374718 863422874 404207040 413723533 921465526 926751427 725841053 974166543 49484543 131585287 176587491 367317194 410911892 966361042 486588085 869638943 295820302 614477558 574954985 968402032 917595020 931306775 168793127 283592531 604637444 990887982 465418919 934549233 956388024 971247330 861385928 939441061 311804819 468017088 959360803 960763661 946972289 978800381 346963604 713376778 564238865 689191421 942233799 994231249 800926351 818415989 617552125 918234328 249296214 892420245 647592728 763050251 298549197 804331844 298323513 835957641 760509261 799586229 166036429 182955605 889542622 993902594 755260024 963478409 669469648 933739526 274083192 329658762 434095278 983891303 568066284 898245762 99316027 302483380 19097725 755861411 25276785 355689144 357337897 744222645 671708056 736268568 705096538 780336688 398432091 485232046 566743649 922185635 585959854 675668134 558534332 609458913 427546988 913428348 425088661 563769851 623705275 833145554 352635568 699407224 530041268 960122769 759163842 807115130 994105450 997712986 937700387 944275124 935896165 936126849 640108665 757254300 98869885 263711270 590716622 947551443 284884834 306016638 60909798 566517610 173162492 256274441 509703215 576556062 527606677 758734259 926991375 945213067 550635132 566250034 377215390 505105549 937920149 938279602 877647363 946741358 255233842 433403827 262782454 337973699 381643126 598787753 561993113 805511282 504141061 622655391 376232070 765004209 184408206 759005728 178548423 710315141 646267854 890097145 935702235 947589910 767911451 902392607 324337642 497584911 300636921 357012119 210966814 959098115 785381202 790599797 521023558 610365153 539104560 685953159 814512159 992115190 122687414 258548376 40894490 661544568 588166854 702239906 396998286 878642790 564086341 831857091 708452062 922656399 188720963 664232960 347512419 512632540 602545755 670376632 221197775 772840298 866266372 919689113 818581081 822830084 131144208 946110194 321153757 533209069 711346731 905596533 27938541 758916440 659263340 855544139 723354518 993361768 743794118 924780862 870516418 922618617 483167513 710851011 237949651 932663203 515402390 611961598 714023486 922485336 231688663 484002213 169475170 325150146 176508980 601398549 424491786 908445040 979289576 995277179 673831212 727536362 816073537 872626730 449843746 527128542 333246227 437327960 598952780 656163866 324343810 998506549 392124218 536462522 753023114 975054889 814423604 852406807 663643861 912115369 716155739 797533459 9487826 778049251 346950581 700606911 122950209 865795936 588852191 813125081 268299170 276916596 793754663 990258018 313499149 961379985 238656924 900394667 176585904 561457805 784136372 928413405 328390067 962797660 777536197 961156310 972972872 978511934 510205618 643461382 631299585 835115788 2954694 461233648 683410407 876641176 967317757 980348929 23929444 40240989 418955300 431401773 143197341 483823009 154153465 392220342 10932424 142552488 161584590 453008036 665392 397424236 431948536 449009188 860770258 886494784 128505770 346122431 180693915 255272416 438389436 891417850 160265979 894893167 613973410 765474528 263111689 439367473 688839425 697194697 824613124 911122278 190411294 978060905 220344645 735202289 28647388 81635372 121123806 627403853 712916400 830317819 777542250 899239819 695850544 908352895 892221959 947803869 901573825 964025604 551136470 949628364 883437147 958773837 657801719 879452059 112174549 623489365 980760368 985945996 392793192 974082942 167192421 236889556 507469189 519279008 74044023 282651908 463783516 583537386 248798224 567608962 848763360 901085077 659115342 700999622 104216389 899864290 747348879 751694886 972705675 981054242 123001679 295951820 950687685 969288484 47219406 513838708 329819339 359004187 26474173 743037759 586872663 846008874 218287602 529668956 235306911 684998768 295414211 799647443 369911585 421751592 440733033 733271677 378656657 527812783 732385130 744210197 215643482 402500166 455896146 785808521 884707770 941453844 118136768 178977171 60708937 571974352 994598832 995387464 128299082 752095954 963010738 980973934 143280182 704498900 576988903 997656216 284957090 570116209 401669608 653142611 968205782 974543276 488991392 659423204 566749603 871391684 742218366 914068092 82061597 451004020 907985105 966017057 614612850 926545249 225093062 492431261 901602182 920916240 596252232 684372321 328538812 709789148 601392826 791858283 71537768 866161285 72792600 867552456 555236646 808305988 636405188 652566364 440167066 787766091 62791603 705994526 556513487 698981130 809180612 860173282 899849392 998863452 284116376 554718499 599113337 862698627 703589778 917748698 141434147 172147690 142098513 160114367 972387409 976894486 403507279 422471111 828348584 919917161 24781688 770533792 247802012 550318936 791062707 920828792 229475620 707308689 87996313 967322864 736680727 962385358 348588196 363829562 163327071 578984203 265579485 570907275 252822615 520920533 911602515 989821017 317425232 395807014 903034526 925350208 826677639 964322622 993332744 997320405 569888174 692442837 918762823 950039611 712614132 911602024 146552868 658488270 96556674 296871022 623987047 710219467 108850206 881919140 185884315 449112585 403902767 449378452 32101036 816094800 825729486 938536814 992380181 997804094 943994482 978275097 329730771 538936384 376123806 761810572 880423596 907543260 933976969 980777746 193417776 622079483 143199899 511675534 782971193 906951452 36143445 870845751 648347203 667660757 925045180 949752312 659607206 979660577 802744915 991877261 60293002 658936858 30975914 768422931 97817365 485631877 296232851 471272968 152771872 346248009 652886572 709741080 553637498 815039924 70025363 624405567 27293864 528219391 978831917 983359911 490511716 889543499 610891461 927539734 45435190 541664459 148398426 389337436 232300070 987867670 473633104 523785318 932223765 991650359 299156902 943175494 233245261 635792259 496181654 512855611 392934215 400445400 369028236 398925589 689537760 758268746 781556758 955214448 281474856 580887481 938503535 942308637 326607940 377853751 537723666 842920499 446603543 945417326 999284642 999345594 220623833 496411715 637136339 900220060 517336295 655054204 909830814 926222439 354431585 598846066 606100645 915655890 516682967 875986610 22519243 433631771 636957986 755975111 326222922 689820746 895603716 929558630 784899111 821999874 374982029 840864805 146824363 822266361 559958336 927407174 165701460 790965622 682498997 799306908 500311763 545728273 919585175 994311638 851067223 918362297 918597459 944371493 194503536 912207831 609464138 857990624 811702152 859970472 709320042 801238692 733752831 926907791 823754716 954030602 562384501 993372436 533552889 831451192 233842587 981428343 933500329 962325234 849512857 953259807 83552899 751213487 428059718 773654504 142664011 228484025 810217183 897822482 243493193 451544090 195692628 564677878 288256096 771820975 736227087 934605785 118852420 358098064 609155621 858975598 877672552 955981826 721358867 740153438 942602003 989009932 192026386 367068642 571234554 978788259 227497303 521259897 770189473 826797784 491270940 854718795 608240527 650661399 566848460 810173008 306389059 976403163 345429340 931796978 664908122 746472313 398000027 620026332 428230450 629563774 661391753 876291533 741625016 783355581 604743406 799952254 384042357 522288314 901962727 966705138 634108255 774766104 746192064 848047321 309052677 816136669 382542247 635201184 673494473 961321043 599317823 969125128 762026728 934674167 92138212 404909348 575058054 870604454 991111161 993245604 872330837 981677771 652314829 857796322 868481538 991415151 843887869 981670935 681138205 914983863 409378026 552085591 719392696 882869073 645365993 788914956 887064900 941245128 290336861 888451735 974025562 989768562 303879049 861339500 219172464 500619636 411364882 872760300 899016399 915707592 137693252 280683646 805020183 897820968 663447302 707950239 660256580 909492840 670934481 882719022 422032057 696251347 706819751 715661893 110880665 658810747 956704509 957284839 166612933 951715170 221102492 281222513 26152596 280091921 414789315 656888421 832811813 871281264 877378229 960580748 190384098 369794260 969459660 977828980 450987987 934871204 65489663 529054161 803431752 896057783 541105177 563787164 556965603 902203866 844417814 983150836 707803318 937274960 177569508 428334703 508006666 919113721 143676746 860943287 23184655 421330531 380877878 915612132 791323788 873132012 814778408 906561140 527608036 922773126 176644786 905734349 441912567 938317824 294075823 506067067 952906546 954996105 3235821 58531765 295778590 783430310 784324481 884384643 838083814 842844734 451681465 458087802 581115306 964099014 120204929 141695275 389821780 408298069 87012623 976869739 896857015 919650412 667029864 941687827 490418991 755634163 48255582 714840176 837420732 941432861 8677696 528721690 234825153 479126194 48742470 986981377 195904338 532365471 101967756 510074054 360930414 712074557 617110296 837605597 780847956 872634551 372402051 691098652 928768699 938594673 219394833 463586914 787598023 936135329 465509808 605638206 27322549 127656041 847296856 995181935 843453702 869801228 359608023 689940642 135177521 505225601 918655716 979561357 748258406 913506187 952632542 966766219 157110454 251648496 491530361 916870262 455146616 796512548 42482793 747726532 885521569 968373320 248130941 267864699 760277956 960195748 517557442 659572315 568664702 745190102 70001931 496775207 442393752 655517671 132485021 671050581 796126166 972118215 35950235 972382751 147046440 526080387 307691978 687975428 302602095 552740039 187794538 421477574 587996228 989999881 121278164 609041722 594659867 807099342 467590819 903940227 787682001 800742704 407231952 454855527 793973722 914901650 965464811 969170989 828388922 837984705 49956564 547077916 737232603 996572527 453356729 555967318 259205833 556530167 23112913 852642359 885985024 896741435 423269410 867631101 197457224 706774554 59211116 981318685 857976251 894854248 875937630 904925052 105653852 492239759 10585461 145593229 577253594 944466525 904791313 957082259 346664001 589891391 705706180 728221559 465144177 474698691 759802702 927767662 413723397 802650584 858289557 967077241 215653190 243919390 313368264 681364767 131313707 897549286 542321243 592724789 107562519 226642022 122110048 468113894 223663035 673686265 620079752 948400203 140739527 782388453 386956921 511355931 568931297 591430836 889597346 893981155 442102074 747939918 521628418 598798304 844630126 908655858 494764557 787505336 706897214 961765128 764254944 787872072 976720251 980286120 413444678 510328614 618031505 671698638 13523655 623985368 151185247 648295170 64806903 952072287 746171787 849809098 528626672 765654304 639880105 737326083 228721017 788962463 597921867 694134207 306276860 484251533 845968452 982395671 215819723 333440721 694803915 974265334 414549804 876272598 890283030 922480181 937579726 982916915 710704630 912988185 309544799 660317095 721080305 789828404 805466068 845486771 491108877 592458101 828963855 832524878 584157759 585928455 724146561 843214120 391025660 950277135 940127778 943471426 876099798 949373656 660308311 892253849 8785961 638755924 720329048 882884642 525703951 770935798 382678288 601661684 210403201 316765523 192475615 653066516 33975648 548369662 884832820 984619024 777527410 985571538 560930218 619398415 452807418 685885056 99421497 807895674 995216868 996118885 119297384 185636820 827090831 845080802 382508096 813993997 587760058 993997893 840465713 955104395 502514262 739370560 677231528 783904876 691141859 711996413 516920874 650168552 424698308 589327418 776896323 907676263 119550433 368548872 953562565 983524513 794116 726088490 725779728 972300006 517971599 983792844 590210965 754013912 170501965 788840358 477434728 615608040 458193868 462626765 821175684 909002460 510848439 600953317 374117004 725619953 254034831 841286260 658177475 741599735 774292659 837842655 868235380 877551023 48239773 570011498 257140558 425819480 151175035 566911837 759066733 859082131 322856088 435526384 579861520 868085873 335864127 762122807 231411544 470686044 846448657 975638619 715660320 873670040 189403167 285986786 255240865 965684016 199638650 973465845 639110253 941971808 491623392 799087549 542070253 735644041 655714900 909120020 4286772 816236304 413565220 915280541 790104453 993227351 78989339 657110194 489647495 646198085 59245436 402194214 578055663 838816053 808319724 873550232 775222197 824596648 335644020 496318032 141766889 331244823 966480134 997968024 808905515 991250593 689037519 749649259 666723166 985832620 17570275 396884391 102367510 386293410 310087010 889084374 201678722 977511863 800842619 972263015 495966879 890001366 285235616 332468118 270177434 351474773 784856611 946009592 944637943 993844475 812432752 850258532 676914626 919455803 385317899 831360662 105795973 924120492 170276899 976742676 136033943 887069187 852443076 896966391 987836565 988568559 410616385 982436917 832896486 943615614 300909605 639041855 462188015 583881163 5929656 123733825 500955615 574995574 475006972 698499558 180712242 373679973 200522540 528690235 784804655 826573522 336762739 984610367 193284519 264188807 850779748 992959106 257607526 358133912 501648402 687679866 498017877 535437629 406504567 488073379 975742686 994286360 238498420 264084291 56855197 563275172 843883575 868665273 529126574 834208401 315197678 951344673 602249092 977754797 878728546 996791271 250969861 359556151 584302685 941014293 615418716 721124354 170859518 620775198 867915850 983017722 70848420 893286844 435562270 457615346 611877520 959823347 459558273 880752871 696917844 799605044 531279422 549368512 806847997 982799658 566184980 682666693 801082005 822583754 790345339 946482443 228256142 857723852 734784233 813655794 518931425 553941227 57954003 386442522 748075491 767768796 496642718 796549270 946256765 997717464 877238230 890593270 380422617 749976588 897587320 954807895 827572918 833056593 842146330 928709796 489889143 657872031 878195443 879949026 730388322 908269755 449024778 531584083 909465773 911963631 490550808 908101660 750558342 915550498 48461284 177515350 570878908 667379282 663796208 777833722 970099809 983248970 23904323 398819911 672568413 765102859 825066748 830116523 360472415 901048954 139130245 411544160 662212720 881743806 167495002 277487522 694482849 964930541 328239251 475395641 794511172 882723882 412284220 445168835 401574356 781735917 245376053 606166037 716419701 808523953 611935684 770722306 21895239 285243203 618961230 799693339 900348403 901849684 575533085 662531179 877741840 922768071 462218769 654833397 478365040 900291720 568641516 917404604 609132114 628336812 262268274 756430897 174581333 564273213 7318658 312030421 402398542 908765096 743993436 777946920 795623125 958221739 123859722 713911401 258294429 910923551 220727907 419275405 11275255 499430578 362987934 377861838 10626796 82964045 175851991 976519713 920747415 996702164 946959341 988517100 240913096 506370365 545706262 817856630 958480198 985308952 725226524 784070715 404690356 575951253 397532484 842681358 720369980 953538873 590100144 706376391 281302686 542446253 233185510 762202675 311131834 335746958 796594121 844043674 949423317 974152471 362588941 501738330 784265456 960657917 451853783 759415224 732143402 918436175 675309390 699623529 905549717 935712663 212723307 423225714 619275222 952199231 919517265 980738318 672060724 973382839 995598490 996538387 750847988 765561955 101461276 809611415 605625221 630962169 168925879 311363234 538684756 650846819 952907068 953618072 415737448 561980693 146096299 258628943 228652795 929177325 590039575 631059726 289623950 594383499 88778429 201545218 469765735 615204101 258639620 438104133 586813318 740044273 398994989 710241065 126506633 204584784 631270115 825876296 643409666 896314963 718293896 737687441 471578880 595996833 693221783 794731324 634279481 785617329 506111859 682296802 206758240 260615308 652587893 900036192 947517536 983230518 636774758 987445591 403413476 653708371 594475585 776195944 524568741 648357288 650508874 678282139 844962065 848696827 857035422 905668307 784998225 861376113 294385393 507136900 851174056 995781951 178282837 611864875 591399743 593038666 320404834 322709863 452359348 554107037 831160255 925686162 501266441 879963887 434281033 557266650 641274040 907736646 75402953 436356902 448032592 815793357 551846404 955410011 58073526 100371988 722506366 783844925 305449698 693585955 540187655 890449268 559284147 941719082 511132352 837813656 517790574 761511022 714649743 979528650 490715335 546283532 243649186 789340835 175840074 857910988 919449669 967384678 559876907 634549241 136028211 912463692 673960873 691809117 862561234 875827858 361242914 494896939 807349172 977577460 418520024 521172792 938361421 969879749 897265584 915247547 229276799 728050634 32549039 441771715 221120639 482454700 566322952 597048393 641578169 655381076 10408809 798770718 895705872 903700557 675470418 788322096 237510949 984615150 147056858 548840263 239071670 951935098 349404978 745639574 51304981 346217127 142375413 771523384 908010301 910307292 461488324 522698919 777137122 882683308 811554142 885308001 131154491 918642118 553173245 731934660 951657936 990776155 154436169 979931379 366537710 775849134 907364826 944721505 644245769 680034600 672037018 926834188 819402504 911492136 941423055 943408685 219267973 297637615 140371346 994295519 113931576 868025170 93938078 471930690 585199539 605427473 155958550 833452289 135404251 507003282 620473878 855618031 191106605 950585516 37425415 256641279 157137992 890340778 823116884 823682615 335777898 985168916 384700697 698261527 885792697 947592390 250587197 484589890 282898052 587993290 691137508 852518015 583391766 852860582 418400568 715158194 433047610 736517280 5945054 632302332 207807022 505969045 285965137 681712229 865445063 884818301 461359008 696801717 16976415 766017303 813332303 921911828 514210409 610802419 520325225 681963607 233418168 369679868 185729065 932951379 345162368 600376548 120433221 862158865 562108266 966312263 258589097 492720170 41609433 334009577 155134285 930192640 971388871 996157332 695294465 771691554 920631554 991883567 696627560 914736714 546151412 687528904 748333938 775604409 82920862 199612466 224202896 897759149 445911789 447356499 722127782 901273993 232021576 591291513 138676624 572401940 785467161 962781939 346796462 942526767 248885861 531855772 977272167 997348027 233061923 942011286 492269257 801637257 651805101 886137906 414259235 471098010 102909053 629936729 869137041 945301226 11803345 442347532 14981827 350867540 607396533 656538462 657980911 746193350 189394718 937083124 996093630 998239253 683768712 717289541 61520875 276757505 277727712 875551911 669937106 834876304 338298834 997973027 363247702 736052148 454959698 712168839 991816876 997579833 654221704 730361607 273112437 499556368 42793707 193116448 116765846 892395171 150776635 493709377 664513259 799153594 702469471 980925822 754618099 974687462 451184352 693534757 780931866 834620467 199813931 923613253 440995995 774512649 261176149 933040610 520316073 759556740 414008085 522484216 814357752 844119697 606505142 992010369 732823168 964936815 194141909 571977291 384742404 933713942 633222814 683689501 944643249 974765840 293494726 555611495 520311804 561831081 737534091 838590054 899018549 974415647 456182838 927210885 54841051 784692402 708960369 784164413 182860256 298995333 758849675 818119684 337812235 577079640 900450066 925720740 26627875 75925136 829204236 879630412 182621140 707625569 626960452 797819188 534692553 844762765 882377497 938366277 355377390 662050913 349869924 782173246 859804144 977489025 284990976 782845305 303957514 980243396 263665863 501727963 847949482 863590730 8093107 130147126 219429209 249707496 960587989 974357856 139626574 678853626 324871780 426480888 530846967 927711953 803311562 906939331 501334486 608031511 764580557 807028336 473636615 551675266 658813028 660031968 537537854 812366463 162311787 643889745 895490432 925761920 907695360 985135504 399684037 808863330 51764937 769787110 81145417 956480712 115377753 854190745 149843845 862716266 868360938 904115926 741514205 755579963 526807036 635790908 748319873 782908173 489129383 563333210 373154719 911263439 534476971 619243955 931522562 987872970 421477351 641097348 322585929 741195897 787196582 847170460 466513388 474689296 598545224 641506218 206340682 839611747 207812708 355346861 44899654 216460604 277425010 445851093 926971800 993697374 363355005 505278248 792917045 807439366 891143474 912295891 796670462 807304499 235065366 396371997 88614012 468175370 329032881 733239183 644523328 740518925 308710181 971697432 474231041 750700613 512299578 598144673 189402280 981289116 764155659 955399566 596852831 610907299 868114723 977031634 153885556 239596465 53977920 839776744 37037253 833942092 2217430 858951487 19666569 884846899 53564305 574732029 465644910 928738123 929489277 933276167 77342934 86623056 579028267 923328588 390796836 591653560 176566260 756145762 138682384 838388999 566951990 804495565 71120750 416560195 764819162 895673671 896175689 933175740 408408482 815105788 607167792 709908335 630421437 863051264 196174775 859488020 590103847 795326339 295432457 535694892 660442088 689853513 604330598 672219681 389656721 763470091 715927441 797970230 406401253 514156304 666140365 690031180 76152583 565240356 336348229 642866284 626238819 914275398 685029863 836877757 37106731 513809953 973527491 977305021 156926011 555858747 433771745 983350101 16821389 910449122 556582471 849443828 294587992 780588755 810184125 919498357 673841253 702259224 6004352 973125508 83572707 473715778 475922118 753397053 397006158 842931470 818179382 878302584 419167111 744113972 973771905 994529900 662334163 886381763 715419456 839214716 97105833 910766486 278542145 933274535 90777686 509877126 800376320 811679696 335303379 763565689 85275145 368299285 800697887 850139237 458544385 844595096 176655824 505728316 682076607 948303736 193293890 353508911 675255184 934113468 454418120 489114378 820019993 891438767 80409972 722929502 325267494 565639831 834616013 981260569 202091629 431116428 220966648 938245224 139386085 953774098 471316349 726362361 292385701 966084283 88408977 207220521 834191948 955112519 791533246 922839498 180591958 618830589 857472019 913223841 719419513 777483277 34035067 636096600 623382568 996859642 865338644 876224145 648745206 977815869 190837700 608102291 776397725 905291507 259413891 561810305 620271616 907664504 803874160 952046051 657772873 822155308 52611346 972458847 39169781 395645748 957173752 980966411 215727992 441785631 25161834 463825383 103362720 549622194 806415494 962770821 325886054 814781452 862018175 893251610 417005828 639383698 801415495 935635779 143198473 785867702 31961860 484980622 438676292 760708361 831623434 889817646 160145430 961647375 137870331 719091704 337521578 718882162 433014479 689284083 170459826 319594666 957508412 994940712 379006815 407397075 995081541 995819753 844489478 857082470 554615373 941130662 280687502 303388474 330576294 979167422 901630219 908573361 330286611 333153386 407911911 408740478 879800919 925667274 595239559 987177253 416186173 761102474 905707618 967613997 90244100 577968293 491919104 931580584 125443217 384558906 751047791 791148713 851844804 984639210 473528822 907178408 795178902 850870173 494791422 822241444 802968543 859670041 342193678 461091815 521006463 944726343 634444403 697780972 638662603 765271049 211416840 290054677 332766346 601086574 554462564 884302933 10593263 980703338 539935976 654050523 942171532 997636910 566091788 937823003 144228853 244056037 558889857 907269175 87029330 116226156 144779096 384541993 552076904 900133011 27628426 703316893 274292429 812474895 19031107 541442441 993962090 996466322 783561758 902471291 508554351 630847377 731027128 808092394 557372917 756557475 873755211 980163247 942714541 999326496 146996595 464825059 351850784 542758340 241904127 925819097 617037524 837800103 424231364 881751905 348444660 707707872 811936020 924313204 412230134 798436658 953164183 969763881 290728825 298430487 575741668 837018037 534550876 691586627 29718185 944888548 282326762 720130979 937165572 994115012 420901577 714759794 49260471 325543376 755081966 848636113 329971951 878208729 213431120 947559047 903691787 939772751 420609404 601291851 458465229 571209151 155761982 291558066 318567950 681113419 667403261 905424922 703409338 931969568 799246902 938533600 48824512 328693322 566795255 794557414 331289929 577672412 488081020 916049947 303890304 756546156 786379165 815834914 99077656 507989207 559353209 897398436 358410779 627057479 18926626 901856240 396027339 692687036 585007168 762527638 110053522 400930050 862662196 993599418 395033434 843412664 110249839 794594924 152386345 988762534 826698910 978710819 434068517 737281025 622189332 696777246 818985923 997702566 534737649 700932031 489297347 912448430 492873790 905946104 454789419 924904636 942838450 962065090 171489037 552565815 260720198 916456319 631294888 645765253 565211754 767412968 275941783 857307892 405810233 737706876 290893231 806072894 69151814 157735269 849170593 926905580 687556112 731354926 451288657 872426516 895924861 932832942 818488016 935316647 363099299 937271695 985345929 988030631 922805475 953685766 540094604 548990430 150851886 395135050 426940526 859819771 351129598 674758047 210487808 917777371 524436748 746837247 865415995 958623079 114676923 339463057 638174789 968569033 91077799 751809755 553008381 790223583 451496854 951975706 499392456 598169960 492914583 899991192 331294529 591232813 491952965 533863666 63925535 511500049 613242700 845858105 443555581 550770806 781198158 961236465 271896785 995822127 513719178 629639732 703017247 765564350 430666173 722697414 459001096 769757419 398206788 644159510 332396693 961247817 99313556 408773057 824792423 901538601 964746135 996274565 524510641 993831412 422005706 501611099 140744441 710893043 615553745 701745594 787099986 898652298 956571528 993435797 867914850 924840331 200748917 952059716 443806218 930672744 232155268 658025378 641053959 700370599 637868766 689642893 283440411 612036521 983242181 989406179 409380362 751893685 659149141 964268568 600853533 817806483 287322110 671890905 841428469 978115377 716964884 773373038 454036876 693343340 656666430 904225801 701199301 777916068 591577294 638568154 484672592 967793230 365460379 848249310 302555150 521344273 719900845 981368299 130641977 627322056 469207764 976599830 230435960 645978000 273699149 513150110 778453888 955739047 397990866 595930566 290998255 515695722 324970736 393909086 651899406 686047306 99686358 650489266 971792119 999213250 239025412 596218369 269905690 733481074 178268276 986487883 491412992 852361513 155561774 751920329 356556380 408147994 106790352 587249580 836343051 939859034 813285719 827891606 248713790 592682428 279293901 436764970 205208547 487254688 741781334 750724212 65862848 437792897 171862392 869939414 144295435 468453597 359755119 853972260 749909445 850111757 922973180 951709406 656622856 822941125 270917584 586820055 468590886 741239920 451495675 707269895 543702020 723034268 869971597 919118028 680922145 817503068 596391359 816418772 223706613 352829982 522202166 780291122 772130845 862495701 912174247 985701245 236490692 391984628 201100456 571944118 672338921 842887519 498700785 967048109 327676246 721525960 759517756 899975419 883471270 971833492 689172341 746794770 319181464 378308914 271735512 740174535 395976090 419919404 689571220 848634441 402658558 711174820 462533757 736183671 320710033 357087772 85201105 309986235 823857231 914779143 929309337 948164906 62545595 532537445 162696582 679238700 649475238 948816349 625479026 880338919 681653480 973749550 50181351 313447715 31312280 256773964 241814437 849146236 637013238 711906960 811211744 973513760 998588569 999251870 215216004 525652589 374796159 841778276 995730514 999133130 10287355 151890638 843022944 898042792 836856331 841087253 918153763 960524863 545222748 625498385 926039601 975688174 881782806 919647297 552951891 595837373 995407937 995658915 783917938 820721819 799289593 911404635 627257578 874047123 393275920 777442570 293172828 380040877 88461463 310136417 408207938 863989685 265513472 506287192 891157011 981525818 441894991 804387301 795422121 969476028 366514235 621789816 822287576 829032771 117711428 261823227 361562732 799946749 633120772 957238275 997201009 997545364 279943581 360967443 517264337 576076983 56323556 319325890 754210808 928053525 389089635 842471585 871520044 959445359 624022333 995040086 686668920 939653864 483433716 647207197 589867274 970413089 407794017 634115341 268059987 586102611 645264797 955349592 701611059 780733915 638953360 925143155 429901168 976041395 656341913 711642659 254772340 885102502 339738932 820872710 950879599 952410778 473244916 822376523 954787335 995373983 156792883 352243953 575349174 800272048 744307456 897265916 844400674 858792726 389283313 494665806 885944127 886380525 588114711 839369232 789891507 908107368 753831736 914777916 252930663 823023897 888877004 935085943 352647735 780341552 122770542 778410632 972508454 975105052 412189104 793958597 214043285 316671024 255260038 480316865 249676894 577048569 865388371 968643274 629342623 922066966 775181529 924151267 290865169 926598527 494460065 833840936 357814615 917205703 114656172 964498252 411355079 590460213 739064911 973345309 8685951 685298988 112533380 476271151 75781083 323100096 255438874 591362093 658938560 819802929 717264859 859428480 988336819 993959747 388259501 534618298 671976118 767013608 410624569 615259207 901028792 906145637 794816166 918393412 483001441 849363787 125893964 146696031 400346919 481651460 888813800 921885841 725251050 797544878 705468880 870647863 303178388 986197496 142796465 287236853 497859952 833380666 390783072 459825187 924560791 929989847 433852064 840760712 94557364 572458643 102903037 373120260 825528419 853066265 904129324 994076581 67924076 173089734 790932154 835121235 395150263 685547984 89900894 465220918 999248009 999267831 44031023 869951925 304282925 424513245 21477302 92253479 186575413 606347573 143358521 209397536 316633791 344473564 741659520 961223489 520558736 521909993 30227310 616548039 112324167 355759546 29506320 676713959 421780777 636473939 882123441 882349060 934728558 966862141 317906897 656845623 29841874 368153776 185823922 392209327 88631541 606586532 319221806 872980891 341904992 467375543 34039859 664507562 877153738 900520205 401569516 862252435 689991881 750222345 874456071 880336856 773282323 896840186 920308757 945866934 485942647 541438795 402398938 426486092 602321532 828402240 961301641 992703791 683388127 949653930 211879853 885204178 884993154 924296075 133137610 915781882 281151208 528234393 887458441 910519262 379425839 453422693 576738828 912500905 386572216 774267000 630516518 989052700 959754669 974799273 326203631 928497028 601319111 852926839 522962488 650172835 316424171 924663980 869634369 907892136 223308359 466564687 592051886 665095789 622173548 791643921 650872243 776411829 785910695 938489947 908285438 948695273 912673438 974660484 489426841 695328123 757422790 945197575 288074963 833864358 349846513 609050118 875702872 878768521 588336817 783460398 578965894 848862448 68225870 305893713 612168029 696152902 377206622 726642929 782588212 931491783 76354759 819786832 754252754 852802168 410765766 478426706 146748839 208930523 81857161 578139087 33605915 618708064 899271823 937287651 343430505 733388381 551318551 583439614 300393017 391089162 193510563 657716918 631248052 652098740 649251497 816863732 994826464 995759503 258974499 867255911 612090658 830352440 448504407 722143570 782485574 829782847 716282010 885432702 689510467 726112718 965188508 985584059 520139679 920148259 533633495 600733717 527439342 782438484 379656088 458212607 13813122 579877526 199445481 949888950 413824916 884244024 966830532 982750852 945976487 980781396 709105452 903731962 120667302 718090681 469359837 737166775 517341386 720795815 609947394 847612935 813854998 913087810 895548805 948444630 707385895 782135605 644018245 962703531 342306890 782030182 896242424 915137990 862382378 947312483 82828556 751706582 991828540 993793798 94936797 829504874 83673350 205166884 415638612 667387430 477877809 665484376 5079614 916234981 953717790 986097018 165695552 404996066 510332225 951785827 219747841 955374128 355428710 735905277 120521552 341048385 883996355 981753392 317822263 549575954 50721551 325287383 212381170 318861582 145164541 827492911 735298012 823872457 790894394 956847460 331862699 495567290 295452569 884132194 970327384 994198033 483142896 778930579 289551018 506417834 993424801 993579312 774734807 894318121 714000259 742327140 295957422 556770715 810223623 975262595 850699533 977673399 972083366 979150185 18751057 561348615 671363945 715346476 736992470 870659269 118684301 990398979 694623038 814909475 232506619 980800424 627362708 868903220 239583128 815017903 82136450 526407054 539819700 935887303 988785637 993143893 216888173 461700035 744798300 981355614 454787532 825175212 653643858 798304865 617472845 879525399 182555517 769962110 747037577 936603020 607940363 818709891 548734485 840519653 456764539 867007390 770249581 841251916 428265469 916298954 696690561 922320405 328517320 835070260 941592565 979908940 286963421 341707199 784115129 791867258 719142803 903797944 332372007 388500909 931614309 940024258 919494920 992910744 10298692 84745053 182338912 364571462 297057215 916973627 416318140 993677798 743553696 791578169 934330070 982002614 905699901 995903548 133169409 294090194 577475103 782137218 305096817 802873732 879831351 926157261 265194356 994653880 655693533 804248843 522263179 980452762 913633578 968475352 199162715 643536009 224455049 450917807 245002299 288819689 233585216 537522415 538546754 805343038 144231462 649852723 838061132 839148950 241052001 959730049 869738071 957252980 777948524 978542743 460563777 814834652 365393099 612584168 126304563 742196180 394884999 498274610 246199022 635325693 573307840 756249027 240554375 391639463 381122423 574999165 628298009 721612533 505039488 516929304 192000696 348117956 453139064 837053900 650972284 912499470 271056520 734103278 297798650 920109130 848607178 913224755 377013042 977321307 299480514 302566237 192945439 409163447 453422549 825134258 189810336 209322550 935878887 945954170 44506644 639995014 170111644 832933368 444915951 537725977 205378640 700136131 115912133 199863132 261814337 650118936 873952513 950016484 530210155 642666815 320854811 604434261 6126689 307923387 529476843 903450640 564169500 731994003 586870131 916982816 85559139 965432091 414422804 983448570 118228529 850820240 36191527 584370443 160205457 706370976 163606405 548219091 517059380 877250947 456453404 890459586 349076553 534016165 372033895 448126394 85423758 237932228 340209560 944202061 136090231 335010109 166004030 177142403 605401598 758938809 944347530 977228255 950573465 961105610 410436810 826756801 758670294 818067097 200954388 886014773 844593162 947455784 931243747 995977307 339405501 569423844 969617182 998336235 838046879 929548145 102110137 118280637 477091765 544698446 113434176 592055851 259593267 805267649 244361857 848186197 739871602 748932982 408236125 871060136 980637416 981759597 685559189 947339136 303002067 842768977 55284867 714580425 616315197 848930585 586945020 641326674 435763557 570053157 121701620 262397706 59984724 535119828 889108256 979826474 741148123 859694948 263801706 926608581 443654042 851646619 706395577 774291741 199189214 505753853 686458321 908261028 667906559 939403716 841820494 865195476 168247585 979878132 427782746 894376582 693082578 862920875 80591616 737439009 356146557 479300648 309535689 984597912 128094596 985666042 54210922 101060427 115123417 487789729 141096263 562895515 27659698 785032692 646758395 777434146 691812720 855216006 450131221 992916245 764129903 880436499 269417050 867475940 2471698 799275620 396455473 775594253 912323 4736793 786066707 919305074 411489415 471294678 343642496 883469381 71527910 158415049 913947441 944311996 929488707 998557077 491821619 852708792 887932576 938292257 459910057 712550329 21417494 501025341 810109773 925579631 761239323 797891678 408849715 652979132 466074779 471362314 21214246 285443747 366764545 882623879 637965146 837226831 514216431 882655541 228388232 422827385 740326802 754537630 591822406 689250713 125414307 492389191 167259800 361675559 339898537 887264313 724980971 756529562 819397114 988033755 255823564 935027645 289791574 960714494 891532567 924025533 536442881 645167416 75038514 760456745 189545142 688397204 676766155 709316803 82706895 648551737 81655704 405934645 360954018 781231805 814761635 879929292 598072339 831599831 180220984 243883185 46820088 671672334 191988317 246316010 34029820 71297577 518241744 552072896 924968301 990557758 232081909 779596736 975513119 997181244 270915870 763403403 470038586 943248648 350833048 951142619 890293142 921140170 300051404 780308594 65168547 590911783 664898583 710844678 907100986 939063012 543121999 785403937 763323473 971663612 407990766 848700526 876601717 940079920 888973947 986540608 962216331 978024833 120098752 777294802 266011806 739797701 569815699 686781648 911384912 925247590 679696840 969003250 174130502 676701637 496009837 960121334 711822371 940397437 386834290 675556411 905224660 912845091 821410478 915609755 30731988 549236543 310155973 645472288 345388999 581387811 182827314 319469076 193579643 613234842 152461942 557533602 607732911 860846203 450165074 916675187 14408384 846208669 481918902 709777193 987066362 988024023 566625413 813825209 872933774 975241961 822684016 953211929 884754576 951144310 375924787 695515644 500122489 870747423 789405515 793325969 868761539 968378502 364033215 780392452 635394527 898463088 185456997 444552504 795210177 900340431 299356930 710280029 453742849 713064552 609407650 688924076 932699457 975484800 574765470 963866539 828640394 993862436 239580510 448337091 839074162 987826698 72388449 203292916 369349671 384070808 86732720 348603861 203242214 702194448 501417825 806363991 788885518 790341293 891713561 932152411 21511345 247493469 649324802 653036068 787897784 964411748 682648826 860839950 24510155 449838847 102573923 654752948 542445837 813830577 20217761 448545188 341673030 718308198 268028089 504355873 240461709 972418499 654666657 952579893 464570593 716273099 511383547 785981711 752007500 795541167 545230447 915490111 778764041 909160886 189689438 956746917 620428544 963751032 228351467 643466204 946727593 955785603 119440367 246795485 996048312 996469370 331968827 968385863 740422551 788785393 924145818 933912326 422305324 768860515 904962276 917140065 427723656 474428966 188334786 526077053 688005317 770579557 356751132 592736081 179649700 576215209 979058673 984580027 900474229 913951842 993823860 996059137 917972731 951178637 922797939 973418868 818175457 842094398 17065493 422375938 33192922 980455674 34368230 132731472 478747621 922120151 764370234 998528023 433445319 688414909 847502044 877841228 974632295 978603738 309547263 428102096 432423247 701945452 24638939 654794757 100257457 679345764 926208646 948372044 441155933 927934634 844821180 949560271 947368679 989767082 899568066 933677801 758970866 969374645 311142139 987051749 816057012 922444979 649698584 753336393 560199417 939201566 293222348 303458940 305897310 359340489 455315441 501510380 960774581 987005977 814575098 913711006 85753179 484513575 756798053 767200439 826739114 924537719 520348216 820951896 293663959 789452329 578552127 715293609 261275392 905033395 672594091 723788283 213355799 820618286 957808491 962929329 723623748 808097309 89979122 704757489 160350482 390616531 14050520 145455876 746784901 845190211 534055015 979992745 324658841 866903699 366831209 512020160 982140204 991846064 776671985 972020808 315397620 746395243 749843824 887365460 759124284 987759332 96929894 625381528 5024614 880379073 134954463 536472764 560864983 749411477 642992247 782606109 899554674 967640574 108525177 309780126 706494034 833349347 980782710 994427481 183397818 422329890 664708124 862494515 922461691 945281908 613873698 689061596 31061269 273651656 276094708 693792211 824294954 853163212 189659957 737786578 492006837 899130657 173530427 286014535 111694592 718182176 294619331 779262208 854948793 951933612 541088680 806993244 32405457 176926450 32329089 949680036 75927759 384625333 345857231 719396132 498977956 689306856 602051681 789585792 982487274 992718853 221607237 422726284 73470168 650732394 671231501 856758202 784985043 830556592 242266523 910824734 483260523 517728509 121588943 242232460 501729323 631970007 690270103 919598689 546081701 811040026 899763883 980326580 750395345 801316518 539301061 915977687 420597208 859586969 33997234 222959435 859670166 890738531 303696774 874974754 696521277 739683206 668571751 758883468 824957983 940910060 294934212 365740164 493575359 937786259 341066781 362137926 685694148 785884204 579264160 911218888 316659350 622876612 861796930 980010427 837519970 986429882 435177118 995038450 21172707 306534820 971859793 976935665 395888574 962457829 834855377 894968770 631914476 961844133 706409190 841317645 113642810 298129101 110730758 476615706 657783834 760170146 266501130 605554356 801274857 949448007 297741379 701597033 384207986 644939652 513648028 793017739 975832362 998845810 119681148 952987077 954403317 963356204 856056446 862205855 520694369 871085552 912156006 972580844 339030901 979990148 909875110 993849686 213376983 504906567 239634472 546812081 408298083 866474120 425539472 495281522 899812025 973125157 542891254 756218511 631602244 912359356 720391745 925632379 826063966 988859144 212628098 669578978 362060922 860799120 369652381 572897514 280245423 474381606 799111319 857110652 15118332 404552723 173009588 379317500 519932734 887648089 107557138 940213654 310495981 724213712 427758029 822352465 251670391 563532704 490513798 768635228 289260002 948381873 341248242 510029066 729106652 952570168 793859808 862946760 816310061 980558536 26521410 481847687 867737944 915453584 188388940 392994532 509365317 928991517 751422541 975118486 413092673 453802033 402461592 558210446 933055544 964955629 146371612 752213197 489276439 725705330 41196660 671841085 384465215 498876236 16830367 237536194 548057640 769670272 846844209 926905964 754880249 938720352 51503732 679359005 218256358 544010686 833892576 873560127 463484056 726882456 421359997 422941869 279449040 800556182 926489162 985161702 325483313 524176345 94176662 471285145 366530415 376486069 675665974 929972918 69772717 117417264 891479032 959843954 643605531 975695014 299777976 383040153 989827827 991710941 947837379 969127568 967562015 977395260 51021154 264775247 206681277 746449871 365978157 503066380 981306117 997395998 277059308 648162259 531579483 902772621 778198337 826912664 165612416 479605845 714068049 849285571 341110628 587503199 184545334 448720901 778909222 889365551 516595995 596666205 555253738 827833890 298048945 628687829 280442845 678173352 298185394 852581807 316489203 533436226 195059052 434763079 470045480 472711143 18111045 361827446 443683015 809267229 144685608 320692786 562544722 715575013 708413591 711524015 471473232 616248451 123197219 344760754 503034854 584765495 849259868 904044658 874048944 982682762 420351033 564531891 949207499 951071108 522390926 735524424 961973073 982289267 856599259 958862655 435223707 786622001 421125527 829334752 998747654 999119803 85877420 696093537 816566433 955518061 891536541 958455138 121645379 164485783 986425321 989087611 354422683 671244490 532917887 691923722 923081362 999161272 63610849 497381710 122216733 725378756 104774113 707393289 44060500 62175705 172865530 217599147 24369554 457401642 766201683 973008385 791300329 908946304 901109541 964722383 578307218 669692212 565658192 704295281 73712316 465050905 416354838 973410986 782336777 788049058 784184956 878798088 683340066 829788850 782932157 916422054 537281878 981663193 261817225 969379538 589143650 920284905 33303541 390012802 422381090 731165879 893926916 952029313 223198993 230818099 560612204 859962512 729285990 886210618 105489716 546190059 303390919 418285963 168593755 227366235 331046877 607962540 387513643 706106869 913016351 963813207 425173807 877458030 52594586 400639101 751806356 821760702 568470479 670378497 825330503 832518503 144207843 811644688 610303650 960742365 246081647 687993952 412920927 478964271 676917789 954583276 744635431 747454424 635274767 981827548 805989528 848705740 484527920 623152283 224208956 805666307 869543891 928547942 649804884 932999233 143013569 306145631 990307273 996676637 501463559 820406405 431824273 979213280 83261992 206900797 267360734 696938798 524447412 925720442 949415331 962049909 884681044 995288172 795762775 992195009 104309435 505596456 223604359 512443540 119245628 327631529 71286345 799843708 894442609 926644821 43522919 828193018 868862104 886559408 276663231 964399887 546128922 561071100 172418264 347831635 796811573 835849666 259093064 832775684 981438016 989719310 909942493 967997466 305712026 577173900 863969580 897725765 289273195 752645068 997745562 998506926 858702115 884857936 622569053 838430798 858566553 902281523 758062543 822759667 338407017 366803344 764917658 874003716 321944658 902302421 551210358 964578826 491948350 745505046 643070897 831883864 445689121 694543920 973826765 993718738 484383670 491602039 93937896 828683203 499423911 544520489 675269927 756457989 437676012 980136051 619421453 665097848 267316907 658825018 814419136 954238848 696030836 836134786 379535470 965683737 742800485 772413042 479643496 526303454 220481639 914614214 993559172 998481175 779288569 967756755 195600804 294793811 330093729 849667775 608542937 686247818 990358276 991602106 567377674 741647126 963316171 983841286 193774523 367581171 653978119 665543050 366662510 909083566 885255714 928853928 863134553 961903861 683542946 888290881 679143951 929073677 935624536 974658245 902324040 929967043 873443536 915915576 854484699 949413853 946131834 989841685 842018686 976132316 548436388 725801782 276358758 528719910 521158057 527082890 15516995 674790179 429123393 503044265 96947280 152561760 321432228 571345510 746316636 924577644 693091205 860290723 936957425 942201216 492005168 786930520 614501679 754162848 325394385 408946453 207371990 956170529 602603138 896993194 737885939 959814763 356845464 962208030 505553212 973252182 749471246 994662390 616569642 996899939 257973877 697092050 883003043 906106557 173787356 275725706 610637223 867509002 696423659 810633742 762653611 875010638 990328554 993813761 832385876 927480167 562086140 922480645 278978899 485981964 964872388 995620795 225274884 584989306 636281139 977855181 797585560 967079952 49201688 779782424 621536229 676621315 574546253 613472950 61665722 256440211 50497852 631513819 939203855 942922521 43346266 340431049 250353358 322156700 28228975 363303280 776686635 877349772 725151403 748256558 4714040 87472116 7314344 44913085 223149473 248160834 961444619 978076471 290754293 626513381 563910716 792688922 146392760 600040126 848454988 858264512 575274578 711838510 288147028 990558991 111829077 448822844 411712405 722107467 858218716 908274975 656942870 858803776 420802347 836381110 25745594 155709848 911251844 929380881 974324446 982426676 750787965 774547694 726504129 835619542 583487144 596781532 475043652 848069497 591168062 823597408 372330473 559370140 679059522 812375608 657941549 908498570 336983605 901200393 546502706 829603998 511314918 815047101 744632710 787608609 776490986 822837549 4585932 528054115 235035056 373005247 113856161 498719015 431634949 504468760 95430343 498021723 543341845 940638586 217034789 830878886 487458699 949209529 4764772 277324355 751439560 947102140 339184254 449822640 878508790 993241556 241610817 555905693 224977582 418065456 437253963 449531591 656042710 872075476 325600497 579590609 271309233 807061661 1706043 928693399 994700947 996783716 767193813 962034915 38115956 703022696 385919600 661060170 248095301 515937070 536484909 919270277 801564794 951809065 724413179 793592838 580272591 634432015 812853214 860106584 514708786 853894705 672579908 943385891 196277703 480330826 95632620 374678543 620441499 963002622 449189739 957118232 544101291 942045138 891612002 915436084 851817243 937147203 698968390 960147032 65326194 754766823 165070832 582564891 500971503 861228917 223993885 897418373 704732623 753185072 183915051 620084733 965246630 991166627 413237087 426734986 908922486 972094046 518628138 815668879 636846299 848678665 275344354 436535955 761424680 805555926 91976953 720196009 634740821 639721606 94601521 573571845 501295777 605050107 741514052 958449148 318037449 971826056 715537826 953235359 884511063 919932984 641310684 760621897 360437438 474259744 1500560 155169327 47909361 171093409 840894132 931664325 718834049 944325416 160615245 667797154 682900793 926408939 92028215 172929169 395473286 906946989 160229632 600171343 166150612 987942348 69980015 920623249 779894884 830703457 718359144 866020294 753971390 817320465 336915644 468148235 539178655 681256868 803216349 928586049 945040611 989940721 465175056 873965189 525672496 782442586 984573463 993980740 399269980 901624252 415472370 637637169 117864431 529072920 578372637 712714550 71201368 199918612 267344116 927149750 986767983 990251843 384485618 793480179 955198069 997017854 177663807 210534993 689738178 986711904 109243395 326945969 234489402 544189974 749304668 900647106 281218479 997483881 357850239 536707358 924809834 928324314 211507935 500025223 477083611 987755815 12813711 792583321 696271913 815442951 695770275 761780766 662248745 752468964 858899330 943279555 747372794 965770060 925587430 969984518 991515497 995903003 689990882 990011539 852158426 865801264 456108737 523522739 939555123 950602992 808892249 947868949 902286190 995074860 460107096 625369635 862620419 951955892 945580057 976371388 321235667 495676463 750589686 954509780 201810806 876450623 261532149 609885809 848415518 954125083 702255834 870701934 985587453 989002859 375125652 582300218 605144929 611638570 765366949 913032766 726308339 768976082 430236288 461140030 642044662 980392184 197576718 916104880 281803908 689414668 971095954 991211926 222503811 815217540 583964257 595631637 384665538 760193871 863946165 967835785 568541700 799620470 886564515 918228802 52030416 754015774 577781122 936940625 332157369 681893256 386048586 699979061 630234577 849917078 677495865 898799230 836541319 849767158 254415170 808842656 992232405 997949292 798129544 915914876 277206088 503176226 712161487 743819748 751768093 878889632 249591572 613433357 173426415 514139604 164899758 524820699 862593487 992358684 399262463 993825932 114803580 458993026 495067358 979998830 646982450 751842543 554350690 609388398 832336651 932336784 616792774 902321239 77235613 708845401 588649251 994234066 414557525 690772832 145585452 416619728 765637349 845925362 324139671 482772389 353170339 481607184 927357840 986558656 840456353 844834760 163316278 773952886 241075096 981442074 528051956 897452260 134925552 579119285 891532026 949127652 220264538 719110067 736731754 942070782 585948975 880608484 360496 943357319 512911249 950015201 61333428 822194192 655507216 941529062 709126933 723520892 629574871 852350014 508728170 771969094 21489081 94511937 879654771 950020315 78334269 176732767 78604676 80052595 612685618 627239759 255205844 606813009 146962091 719124583 119304916 912505821 764459041 794051148 355691368 485502697 666291521 846405531 37420160 107046406 466632444 754160869 191525918 770826388 933991217 993586223 128191262 982049064 978484285 990766477 249240571 692433903 41368578 597552487 26036434 228267397 684337941 998097769 380320623 754322681 797851828 824890401 970792628 985483984 57575596 122629353 751945910 980166090 416647279 997697688 262943950 750120302 261025452 494353156 256835389 738364778 334989934 700516647 661825726 990649435 2001618 505091445 773640404 915586542 994646694 994979083 656407863 986504983 990207011 993104394 496233194 608664242 78988327 975900218 48135636 475286390 604745882 661930703 672816192 908000595 136419419 773834708 944595808 946384986 613454115 931674649 577371473 922535341 389715625 954756969 503356472 518122510 770076432 885318507 401874015 830843220 345695398 542541920 799269540 920874117 639214194 918374387 154981071 785660553 140511479 938748710 661521854 903361198 991734471 996103520 947772768 979244460 380451092 655744283 524481751 802632929 835357168 923561847 440479804 765648521 765561824 845654658 62179072 639874252 107225167 187060367 465041195 759852153 870104630 872204357 230038919 877971690 791158369 916652266 319200672 433494952 578388119 874279954 532901465 741735983 101012779 595724412 221006798 547256550 298696108 381265442 758031558 804554066 53759240 509179786 374898443 474785843 180620831 828297481 27847100 803648685 22227458 326831506 540688484 975174438 310410168 545892101 55069473 898460926 972808726 988323434 601755332 700598135 345149425 681521213 238837727 882173029 690245655 762763112 392361668 520464020 160168305 283317296 44026226 62752937 983679479 984907056 696437777 740171151 688456028 853522828 198183848 317122877 661514931 922859846 371395316 824719273 733675316 876716990 415189196 752677341 559835349 686600364 274648193 319879199 837603668 877092350 659936683 904753852 709939027 864779824 591510354 980286563 487622960 820718522 906384657 909511026 725069031 904990604 205741940 859589780 468670026 744212903 883208116 944205839 745716766 755907166 815125472 985047393 743723059 958025945 760962761 934495037 598129442 656806228 991744206 993417796 187668972 923276124 257357748 956485488 71655063 967026094 144625113 444351212 305273731 573331809 251547223 935403984 986654949 991247249 374888345 864018498 778724246 839761849 339149704 897880069 423527820 546559122 968234088 992063807 30365009 447942966 750389756 813860751 630272380 881183238 963850048 991740500 821592938 853464112 339191137 837120216 431583452 665470228 30744673 497851648 250340276 656901596 944479475 995408187 614363547 885509290 763560008 822903804 655157595 690672143 838598349 893862997 395095519 620035473 529162522 933797314 706684580 755215479 796564308 845917733 331292915 543947146 114969832 238342618 127701417 128294187 837887448 910747314 208660782 469094684 277813291 755608382 430438915 588721333 643366232 891510838 274246385 952075293 943230532 983929523 304368537 652893272 864828008 980127973 121018235 193530834 183673155 536702819 680287173 683672144 831490635 860944345 94510478 222422123 228550757 433014447 963123916 985855618 947014351 969746210 491713306 899204619 651439465 709518976 698119358 951443291 29652708 259859942 394979478 804012879 298029770 988467557 945950319 960308340 185037755 691774306 380518996 793222034 975642699 991500033 625886717 846550616 649663926 995510569 576985196 713800776 619992543 821267793 716465424 897873832 408889737 719038472 822367207 923403721 37990658 420247298 277991277 877290006 434623825 860796227 157822276 346556346 217243453 360730902 88140610 148135523 911620960 971458706 471732638 882111502 571760189 585521990 801605643 982589252 231294149 349232584 290398620 797701181 990468022 994957604 669479068 749471960 913973267 955410493 202850894 908684898 765566369 803289135 912968933 931563230 812507471 861951847 209548805 493131274 510549471 687007686 156939125 633836493 482611706 669029882 846274258 908664696 588184947 752313018 772577845 978696579 538353711 666193926 322668505 986154346 744598602 980209298 193692541 966635910 113151373 795286982 489470691 696367314 349560945 575338985 652544181 757392839 990393962 995653735 383142651 887479522 273765943 734944844 336521640 751097131 450139993 885763535 467857514 532129373 174315981 969133902 824380324 966849838 87565239 393072461 82324458 796029979 534602373 574591930 452956184 739788849 763661125 920418415 149322009 546829631 355125013 398595466 290674063 298736890 244582849 255402369 992540014 998322688 958771126 995348450 950612790 968327552 885548232 899075509 50589904 409200948 171169417 557425177 80836572 130725393 266067007 800710179 563327746 623458293 188090247 305196660 443118801 717896831 645667241 944198743 578782826 677371214 752651203 871146471 303832527 471341817 699905856 857109150 16876996 160190753 55017180 263253402 243743961 744334287 5239927 755248510 911749460 952539839 602297454 852880639 949348397 976078763 496257479 710282802 417384631 498301806 438116400 743789232 615404655 677337423 899951058 948430353 836081471 956922314 60286505 645280166 55719959 638671757 829328367 958928462 572112542 592494649 518493405 625713398 59616781 511282997 41967777 263621091 877326102 895684561 750349605 854675192 65975935 596934151 648994035 973303589 647731549 686524862 821962616 882116189 473449643 665414432 647916407 812868833 769653359 805010339 799215042 994417167 847603130 953918961 94560495 918337542 609614625 763143453 709549112 735309977 164528830 179063322 94555097 188148103 941265350 950216950 598894959 825373007 385282234 591262180 108517025 642533908 503602786 703804822 652343576 882653832 575117069 707439923 283784358 487654204 732801564 757061793 190371541 718926436 438784454 801149783 258684423 260294892 189501490 455766174 64400728 818036087 467616015 493340634 298625172 415590693 378305228 594305033 879133506 942312684 540858911 611040062 958953429 990352479 718421210 910348298 882599815 962092202 211421724 421701185 941247082 959338127 432913735 699421350 497937317 610893714 405498940 427853900 743121339 782894584 640301914 670186711 253675092 331518639 653209905 850170883 351192483 703632552 460553585 739464071 947249554 979269220 943601543 984013159 887063524 968278718 354092318 960200284 142303760 969918402 274568402 377946621 552222277 574656394 613345307 961475549 41804669 673941377 125369632 529845401 893455064 933247148 947143894 977058454 249215653 804858835 53623307 359898024 405818120 708776440 413265183 769410594 166710204 519885779 728092881 884456190 901011158 960730305 944380134 946984302 759661512 834197154 318464573 920800081 822255944 937721854 834021725 888504408 809995395 955018977 899296109 968545424 823697274 978863285 808225077 893388474 463671480 825123859 978499043 985431626 807757939 901539646 78425897 150263992 606005930 869144317 472285122 498608115 900913351 959912174 222766358 593834204 993309487 993444232 660974148 883403181 432062763 885866526 999317087 999339506 954288915 989649759 89116539 155407144 691410557 726283938 718780623 866001955 340423116 616323933 360220290 972838246 576295465 625366540 477180860 770867001 389691386 982269772 563795061 778408954 513473017 803637285 539120209 857625071 399618322 597300490 489688476 976522705 113723940 873455307 450275465 561825431 698104475 852386090 226729185 274038340 498590473 735723538 794949332 961755075 567877810 892415567 513622219 722213856 138040461 891277586 426331280 921021054 212778810 488258857 715829466 766462618 716993747 727548685 144139895 819631583 651091258 826463209 63962821 64138631 752064203 813847381 907889457 950938233 103035646 869198235 521102029 615753396 910836510 991758217 912152146 982174661 659535003 800034059 36146332 508121480 968911425 984972039 736360799 875436095 198223151 211079977 684939881 873342406 687893266 890107511 20842859 40376696 826826751 836185064 382560237 524593451 995742170 995994442 418460042 920161710 981049696 996141958 95478221 204625474 97925686 671411122 68547874 595118679 537978527 890058627 331796704 610403300 217497214 436909735 494379556 653228524 905323429 989945455 753934252 872075132 506446321 855963160 312422654 716113200 737696962 756195689 863442034 903165887 966544970 982274803 360153753 709869051 669860268 843877729 548440008 590413310 588629648 729969932 563697482 743032221 270007071 613789242 847431581 860959235 835160105 982846090 114789569 838826611 783017479 877307162 961858327 997726582 690014457 880201762 247886475 393082538 809289029 851396334 171395250 457113289 807426358 853234672 97644038 308850040 838380982 920877259 356994256 573747634 562403832 931367324 583402484 696493429 60022553 696568222 438961283 925275757 429075479 837271966 22262790 380786958 617121043 894610870 760486478 775454613 245138632 856234137 417342146 752150320 831398822 892600406 880339904 968344619 816322433 925812666 390767762 744305586 182718676 271476721 871169602 996068945 577724451 829343195 446352935 912813483 715875980 837993383 88128127 278205243 532664927 926039221 775134045 835408908 800446613 854308795 444362065 745785273 343164043 620680894 114339683 978410000 247577426 689178400 669700241 689485902 721512942 920461604 717590239 899079894 805159059 836215532 223724812 260601987 974445618 991522798 612555958 682182994 994047338 997718495 644497173 975649521 469343867 713315308 512311328 948832560 329029621 786961036 908368269 986617983 691475000 975728667 617926082 755084217 891072114 972512940 123917184 138132327 887744825 902172882 535465569 573879872 992569255 998973309 842026163 893559383 33430134 211633693 890828823 900743120 919786116 961088379 515680151 729552736 141677138 445500746 880787807 898960976 106576307 943606417 321519007 417672715 988625752 997045627 794718332 912962677 687470125 943746791 466450298 725575042 576584762 650041208 816709919 931964361 489404033 839894071 736549871 790097289 810355219 847442723 77497568 399022237 809472333 856462286 615343285 663716919 836179988 883687040 979662843 981347918 26873063 724889135 584063161 836449681 864428346 958558931 590606955 815225778 247678877 824608617 300886497 551277384 704884624 890248547 401937331 495675929 686656999 966361803 144687292 648882516 555418169 636845551 992302893 995346802 193026095 963687000 149696541 375126237 671979009 845886152 948615319 951443575 229103783 265530186 95825745 356821243 786903789 813892938 631927531 852993801 330582304 423457221 886448271 968048037 396753222 433632142 965125272 969173913 522023801 722928344 618580352 625468397 491263416 554438270 850115238 989873713 929915428 992806636 978009302 981531068 835252415 974208907 473144182 713591965 264420573 696254118 907323113 947755530 150943388 944398951 613710907 904586961 503751823 824944236 177427866 787325555 622935530 887097495 985150966 992436611 846301339 967447708 888850281 935365292 465373756 700445822 69338860 114797508 211267894 435954389 409384684 818021761 496538073 549763545 785235317 842645369 370704616 417203708 914598780 981560742 385926325 773547789 498329942 700948636 729966613 969520383 553428420 957751015 835588899 879511090 430293680 564330639 764806869 975634545 145004662 807402257 31943196 202505565 617219566 710990087 950512718 959836348 569145065 798220332 494371450 558157017 34142067 543747143 222526000 413732064 402233671 818297940 520759722 626929465 74591586 197781585 280619067 471151473 905985009 924300196 436408173 742022481 2537796 591062186 421691228 756776059 252897473 609744775 786084737 922084293 367886198 440689433 988140810 990208649 432777127 970555665 390090852 841441193 503291726 898857548 333261493 837169478 601567701 689012720 557345540 665011362 919929816 990449292 542132972 545677902 725059014 933474982 164290952 395060864 282082972 806411332 243765395 273320507 54968856 510524926 734441428 802640691 528459018 661792487 717845698 911379447 164671727 778292688 382030769 731018169 31475902 600756667 115636743 674064810 718338485 968029938 854526593 901740295 177646008 919757942 358062100 363368379 598319859 769467428 228676115 574854735 447124640 756507829 893204785 945117651 214796475 419398632 938025549 963734419 452591555 767771134 789027276 915369696 237080104 588305301 712856572 815396400 620816747 748925566 325462205 387587532 839845575 874611488 1212686 450401919 273278861 846828497 966567826 995225428 719823634 841382477 599907910 819858487 918634712 992040339 996825508 997220385 636088025 974745972 383467501 742608451 577007342 960058902 584951409 929002673 881135599 961100931 972565814 994054744 511436900 814062834 211109851 328216863 622831552 709955613 106335352 807108993 313760683 336753257 293916840 666464865 428271046 804698136 757470978 861744021 834104164 955465955 474610680 971561415 441617546 575391759 282292007 806834541 173221075 485373810 287255509 495364507 314018950 455860544 16322290 697055574 441213643 515427144 654786237 716477049 836716488 843048774 89375030 382336037 433925602 832358156 214799768 933678535 295658466 827423483 497113716 786385082 623614497 916550106 77217272 421388691 650961032 677334548 228033659 410233387 216410491 805336099 978964741 992963737 293281060 799675515 355766202 884905681 810053772 878107184 480374459 986042687 73133711 552052169 352612765 800671428 41620305 449171664 890381799 991261835 180058 259349873 99830431 970551307 514085857 856642580 357779268 432666041 459009178 797603785 16949774 293075677 393430810 736502686 178294541 926239407 92658661 321780561 875221446 933468622 673974401 716487250 307951394 902749981 851243674 880712794 318658819 929352164 405022028 904941761 289876949 553782989 109594879 646825131 627798092 915711694 339784895 737805086 613068522 924091713 147567545 159513897 137942088 505835972 782448833 956243936 226233565 327003173 908872112 997402041 126746512 657115655 278503335 540077343 694798297 851174126 135328782 333488248 319702274 645810174 203173315 666782806 723341883 988658203 807163453 908551043 172657684 561753968 332706439 704723602 377580860 665674380 519391280 636814869 662942174 808405120 24932911 86584955 432285414 784041469 837355556 895837732 437348386 694297273 577332471 886829837 804940894 871379431 981084714 999073613 616352377 967629650 903723517 927984587 296446396 766597153 648989903 946878680 885687470 958997194 209634368 748620648 828330934 879713366 858170170 892712502 393974684 532744340 679831895 787136692 133725422 269395781 976464828 979076192 426900764 655787485 663650664 927132681 656989835 836370635 167084420 294763413 611377793 693488547 613146460 747537271 813028896 973592619 313083784 810809952 316337309 927713824 611943939 990589253 950256838 953503459 603633069 744206704 555663859 890113879 417643598 841279928 528607302 893937395 758234190 790902487 862105438 901971138 990510297 997686524 125269262 987648351 460514939 852156196 900900343 955997430 550302732 597127230 855632866 895126299 112107053 254470882 377891590 406280477 517795463 560302903 474907605 661045944 567800757 713715502 880160039 970844719 408536201 507189071 928718434 974792972 412342933 522105731 307328160 818364558 709537077 887466506 316762270 888851766 732061301 795662962 31478289 555773875 735015347 777489001 445751358 972990099 193378406 932080372 578639949 962213718 376802370 475698058 671509397 687140806 182738217 598227949 181002187 489166792 746412840 761396285 280685871 575794549 521999075 811557811 962392643 998493364 398213181 628814248 798583722 827537343 5583223 637703012 135654464 262468439 811670263 985824798 385227374 678478482 67374778 682392677 829730117 873671824 1908390 674319402 68341640 360850828 534135218 942071845 830984357 993344852 981790791 996689929 806721213 884764547 642257233 840721908 944736481 973015263 306301282 617749232 957234785 992876952 52008735 612272087 253922993 532263351 819122020 828127372 80883358 928772820 662284913 791112005 727810138 956260190 249807913 610624593 79211932 393981176 745523707 804110746 695821461 975600642 532675001 711216761 677157104 945838503 141776175 950108505 401458088 997753722 493270913 856454967 542938633 963873099 144394972 510789829 526059942 671057305 494755837 691693534 652918039 742591322 517848915 980051741 519443406 840916262 701759071 742075083 269189442 579976059 636463159 724901345 861272214 885177238 13857311 218799571 148282330 565092335 96073823 529005105 805870721 816958999 280104231 580176940 456535564 911530840 733002288 861418501 911908181 918077135 767995459 828998266 697533751 966926998 566827213 983145990 715586660 730534138 973471221 980790123 759495280 981924734 625070390 923049657 151536621 979130707 764827967 881164869 485999040 747379201 29243962 961649534 781479889 954545751 442579964 852141691 307773410 309007667 499327137 976467124 607140704 776404363 136999328 473792252 450776050 939976334 66479237 143988332 402059072 428688610 515762321 852322795 390310510 652942595 653542382 759892667 435029251 640568265 316954413 689569002 351421660 869814971 599506601 952209830 488419862 775089800 965871900 977706647 504917242 997170121 658937739 960546509 751985958 807168308 998829097 999022202 21048022 729544543 979944108 992182903 474867038 686360235 610138083 851079467 967854029 999104770 580105298 613683147 293233235 991581671 418599644 971261270 855684133 879957089 130139112 487558396 860378773 943181911 727054977 888009065 740141759 869532202 255525353 317896892 309965057 367061457 841355967 842617738 426587027 666361278 236773564 780689825 650759445 662725735 653602608 742035551 670437740 760185074 651566250 862279388 212915299 667164880 959527844 989972533 351428928 946587331 710967792 971617776 522984864 759617873 533951548 984263439 843733993 888967469 954673795 975957429 525979448 702443463 349135626 550249473 717922402 748334246 723319399 975889496 578033470 671206898 427686259 764712651 667428973 816354724 444719299 748429704 318404014 745037708 714113410 876522420 883806806 964861294 229940182 578198588 521120319 575164252 856152191 897622541 130874109 428791629 829022866 872301123 278034768 289075627 562359056 910847617 393191216 573726395 741232561 848495759 862208519 889873050 875046597 975549223 716622058 765672179 907288625 981413757 192236805 406804961 809657979 812910804 509722274 677303385 860446306 948963326 550755822 581874723 684697874 805432772 646809295 698272203 463669718 691118846 159940964 182129531 105291402 388040772 512249157 545577565 159279354 343312253 910717559 954719241 230735780 412853196 456463498 615468729 312570856 768777165 459753295 739060629 521124065 992941904 233387553 875937353 484839498 646343680 539936419 673896422 387309055 651222976 163286587 884995661 408954392 674086421 132317326 707808840 930808438 973523450 940825716 986828781 750315347 965617166 253159285 558544297 88159547 836505862 689268806 952840944 217253884 631973126 101860846 704250139 940290446 969800998 909061560 925899014 338421695 796265984 722206603 789101671 21314165 209410859 381177140 566016848 963268042 972665353 750823540 926923576 866300771 964694701 123521612 994002233 257749950 332352038 877201436 924831946 912829708 995919280 903759428 965545067 543037335 682607446 977009593 991165313 900108018 999070328 913615724 961990192 183344421 954391546 814062567 910617801 899021961 947699485 436718070 521140643 77385972 440697793 39552204 945744051 896481313 908458688 566647570 895866345 578246522 979711606 594946630 866422253 95402967 369971088 819960313 973785381 582592863 834685031 519160898 534409621 560937443 995350187 182193931 653016158 46946102 337684703 153339855 258256323 3913399 676795959 10978412 964418094 644161496 840198550 82146544 204935097 70254127 912002587 209346283 971307939 762314525 888310475 591957923 984948324 454077001 877539028 228961686 717656422 555789546 907672425 494617723 525512535 29167213 741025380 1275432 721581279 778201200 967525602 656044697 996615963 461895324 927975205 361545899 404605068 500533964 822928044 477309286 973562788 600609624 843974069 948878009 985131059 423683338 743292309 535701648 866687831 575041886 613024583 393039108 558918529 734922116 897915066 641746038 777616930 506819486 692400136 535220172 872611339 923704477 974216071 30229775 132684282 504145830 674632798 286035029 711687632 581823349 849579136 365361141 560908287 408605921 419438698 856142691 924555866 980859098 992618244 648752433 998578171 491681559 649230717 992650867 999050304 364567730 697290547 504179426 583871081 776578515 918848337 819969786 970025336 943886371 984819183 672981200 994408976 764446401 785908147 612422165 865156736 413369793 443394693 781996367 800865385 792128402 890954887 195462751 840687788 235899888 853889082 21130012 894505655 867516529 884804728 368709526 702683932 300480110 910178228 227213900 385915444 926787617 966322914 546982313 833013130 378890931 417677713 375313054 885116378 875383791 921485832 443519193 531561218 515905048 609330681 397682511 600721113 621443710 746221702 532268263 813107765 71390137 793947597 953471327 984992140 52688493 582499462 189297207 655739313 290332392 779245920 577388551 768154636 250864417 733198365 458773027 721449993 494748018 945208286 850534769 926159040 34144196 226118112 736012903 996303391 948877640 949524102 68556285 646461390 777076513 970629700 434687764 631126549 799987762 973371545 303777878 559257611 295675084 953523043 693627293 805367384 885525347 947079283 67507458 83080506 505567515 640626734 388999488 520317539 27690381 328814297 579073170 731576825 590741038 676116720 202869020 652085132 430228393 828364894 698952612 754231422 878553090 919106037 168787077 675978434 351589852 354317672 358384455 951053319 14338424 83676046 218207594 988478092 517004267 612192528 184566686 567340586 310922226 712067351 125119477 934638940 222577466 263768930 325163188 634662678 316894138 841941065 362530923 532475171 367280051 501209439 116469775 474455288 708444003 934993753 937861005 989558823 451584595 988423613 964878215 979450921 423486037 807827792 277559377 491911474 597504572 927622078 128199263 744493736 23671740 74268948 351331436 469680608 90695920 551962397 418784537 772681837 36284249 652888509 715815042 871171227 665883541 755225387 454160343 907017783 816959882 910030409 132995031 250965390 547634796 886180700 890483709 912942896 767917410 862583076 621641708 852413985 719029084 868938860 322802908 669813654 696103616 928920679 35480415 351374701 933296401 970405357 463964894 911804684 281478536 816204689 238648764 367328027 372339654 779060662 901141894 946825324 513157843 973946483 554490257 767970971 82664955 283823334 477852911 956528741 771163051 972166423 757307470 987630905 881796209 916131324 289052648 445101188 768629225 843351336 759805994 804416269 989557042 990080023 43209581 860678887 183442364 482384118 354954457 947920123 547514901 742151824 673752705 988985041 752198239 848905296 337485830 417033170 498842758 531621441 641022336 872458996 891386548 919900808 896277393 987779079 204705689 776751008 418521519 756384555 965632499 971047290 360471996 697097195 786048549 856996863 686366699 700364866 427697780 794099063 332564498 350545975 718611828 841165717 552042125 714579050 453563168 485832944 144095176 467537872 833684116 913103510 334791228 690100444 720014129 896310486 668951408 920514105 827797681 963021375 277915982 995583391 532564325 588115055 788305094 906385074 111392704 183051667 14944354 530915202 208926839 487062974 268601193 492031538 938784028 976843703 305882355 699848251 230540111 658359404 37751608 719149182 466440056 858610964 881049202 984587577 522132338 794875337 112427226 795197394 432021060 812802750 33165187 580129870 563122694 587666068 679068904 727851513 942904928 969773505 44067978 754209840 930533546 941922703 353998846 901806697 64635059 99138353 689131041 696861028 303035326 469247573 785605774 842045593 335471316 616017058 897485530 964421376 931212655 936983877 582949024 951375796 637210435 680561188 133808885 174897927 393627794 742582757 358506190 719238499 731765065 851124023 821064920 932264954 784292110 965558371 870254257 976210888 428217765 641615003 763656753 943357431 662648189 674494287 854699802 868976265 615083017 905055018 550656118 934333621 330690305 810433606 529074877 950322453 652734305 722822545 290060028 804682877 755982943 889590011 671628019 981457092 817648815 832556107 942744584 988774451 950044151 956975965 393041118 670162640 856034559 901725994 683088710 731212321 464273964 811026536 7245334 379403166 650018130 699515722 110896519 884357054 941133610 949362336 555224333 606546152 358257861 579780263 48922980 249581990 462270568 686425812 456961087 949268042 382929595 580822024 409560251 953382660 650057162 856516558 761751877 987851370 527882702 879781664 18156735 622444012 484514619 527957367 140436001 936250259 111215826 797344068 513419004 775070540 231142629 914377921 718566025 762624817 385920598 666858439 447661574 459430872 274607931 970964059 540986386 739840517 829528519 849976566 758884292 970926110 324371787 713650150 726400398 931870890 709812956 848190583 395604948 820167298 285575743 368245098 559526885 757737460 36558480 410802666 864268617 895507300 613696326 884865373 447074285 744853342 942470527 977493946 993663767 998471287 645775535 875545477 9789180 721759890 361537919 554929147 948271991 994527269 574729065 830807993 729487205 891827272 647687869 875224339 355015660 552540575 60416427 317695709 338247312 915496977 224827087 459562790 875783377 890079084 922646762 998169008 632692002 803619536 336305772 712172824 925424753 928928180 398890566 789147664 921680517 983395983 141563391 634085742 198175615 345462875 830976417 902004348 532697530 578254759 821899383 989830799 404712509 427202708 658586555 879338603 209065326 276988931 744569543 944377416 859650364 931511290 531355209 711624845 494219059 706846972 200494 331445095 899625907 976796168 575186126 901893400 648498984 834857441 442846998 704846094 892929888 979298978 612331164 677013119 144745937 877268588 655763401 711440102 852375684 918699799 586992995 706402502 80539672 492343473 552028504 713447593 191523429 721909124 574563277 754150860 622497832 933441323 910896312 946910301 303441267 963862406 271097187 475636213 761605555 911258551 22602958 369396290 312042691 619966479 418854218 834857973 419036052 649084848 912459947 989025502 918535188 991602135 283148721 901327875 877629682 987856112 362141976 516848782 205382669 678059736 953275888 958669446 126067382 545409885 123176128 660719071 633044445 938066795 895486757 960129124 744803204 828257365 463636808 676125163 829897605 833375059 473648976 865942888 196758979 218022133 778734285 982041396 365783204 915484899 524829170 674415895 654160323 819553116 200254732 384952517 670707534 935627020 254663489 432576677 345103245 698575598 351768734 934154870 229751004 955067995 542867560 997161100 849431494 923551157 728419659 990254345 319582848 562887624 872684406 961851740 86223702 682605466 515158603 568526783 288258833 497363263 979937912 987460428 758257739 812319582 449284820 503599412 686812069 897832091 468940077 527149537 85495732 714938290 696730166 809192955 479224678 499766510 994160798 995769326 608329923 766402295 671607537 898084739 689797841 758511035 817847780 981339945 846747776 966539476 964107324 995344233 585745459 608434760 738491296 994595397 424449954 541573272 198471878 528296318 499885596 686605648 93326405 558102121 777785555 990569514 89026476 937322889 628218669 677372095 534735845 581022107 89268007 561851836 75365888 563430634 766840424 893275322 26459602 807939018 438057940 954193407 654594871 764715138 341138660 562967189 632072920 852567547 224088737 687632344 615961960 707873370 613407333 680081547 414036001 760180236 849615935 858941849 711467778 806898850 950631953 985614613 681563805 771154985 300881108 914467741 69491201 321105781 299039255 325416991 745766002 909939147 674951537 696964958 68841310 219008637 173058689 808432650 416370640 928242584 405479614 924618478 714018512 992077668 490929532 823850392 773327196 913490626 51863405 523132948 496172280 717956859 667498177 783469964 938737333 990504001 909857447 931063450 24787076 954696471 639505700 789699103 868636500 915637023 100358851 457141146 529840474 995990764 421506119 778345034 587829026 767246370 831353020 990746024 793687199 872337895 390788900 441243952 872496966 976627277 433029943 817110490 166953998 596705888 52802016 138137227 698031752 797587095 634918350 834541476 190257190 862020290 646685639 801900481 99048203 222338243 959671479 968748901 930117092 968451619 482584782 760102820 255360432 534214814 748051928 795921832 636772093 886382319 332729668 369723785 511891671 687285220 5562345 782164313 496439438 963289101 365744519 936568234 954310688 961430291 6319851 992354351 823710136 880585078 514018733 697251885 44883970 396442546 737801841 824798173 497674354 573684379 197633768 515494478 676926903 691859028 697782056 793416041 597320098 956387995 851702193 937831900 391286605 804700900 866765249 982278205 805483919 817173438 783899009 872515777 363070039 675508630 361832799 626585975 121114408 929412681 671540675 877350810 591607844 626740429 545985736 618916361 957854013 958526257 296310659 691966422 809144054 983321740 846860543 907078945 675482012 691351713 755455786 897084056 571478897 994920419 112434533 851914358 356368042 582387881 220902808 669505959 443166842 475261188 689944521 987372914 997128197 999384993 215841738 969876656 43256299 108155922 83955379 379230504 671759252 745160450 778949469 844027971 20597977 769810397 728891800 867157939 874538978 981130544 266737981 924571510 501607958 972011173 4626707 387086157 407647552 561476985 909126740 958133663 480966268 700640066 334571726 968017586 686809706 845530678 73670313 169528658 581160558 677857226 285732311 873681907 597642379 799377111 909713074 917029756 952798070 967696312 84721403 453232534 903074609 908279366 147706267 472551548 591233105 609820857 533603279 800270483 801628822 979248871 466932907 480877490 342145 268285414 427548109 454858814 229540285 969503345 485820234 915218268 498624879 623353325 935149033 986776150 10429669 193579772 685856399 839866368 321828315 820574520 308540749 705014588 798758153 891677447 198114255 356885953 996705015 996806325 547117158 830726433 277176948 708241532 477878694 787156723 113751712 218367756 203467158 940918082 387900670 886567798 863777399 914919231 289804815 478565483 452700135 923676987 320989109 486961266 937172725 975666489 150497438 917229479 706312166 877713944 166228249 198759316 292234994 690779142 990320516 993149911 583205631 787171376 500537686 854068008 914423588 997217673 432276874 785998690 106680652 358143102 600215380 903110127 475758976 786041037 661206678 972442965 532516206 639394985 410249915 493228959 293482404 557954046 42282049 415639304 562629449 743257157 969494210 998837163 346737724 388432203 521124935 700110978 391218879 459804087 48266419 67730830 326144512 645419600 650390576 680539876 483060263 582844668 972828353 979364449 949962566 989751056 543026520 543116355 719519225 995055759 376752969 603051510 351414448 548994981 541336041 647338344 120633884 516378779 510526409 711130718 645882247 871269249 71454062 489518585 136120997 734054229 208139282 365270460 491347550 949621572 850425736 859570856 378340914 941737175 482675475 928555621 763075883 781366096 982907064 985676423 367102209 899210814 203836819 910725338 555832453 817357243 473008745 675084784 868649982 967043440 77026913 860453079 716416491 790127409 836548362 988960287 941570535 995276854 339297496 885833267 4360431 57483152 805801031 922395108 432174183 463475219 996114982 998914960 474646140 980363640 998941462 999302063 796010085 896358654 606590577 763833652 237433094 936100088 495800151 732356469 419327491 730422651 144516152 497521885 11071497 560772829 335784270 623503527 152185856 885241109 226688793 378394708 221855087 762924995 920591941 949746103 463170554 692376556 716643619 866783937 498143874 590094458 510902226 822404088 51855444 417258112 901477120 915790178 140695147 768570080 384700186 575769809 973961201 992371377 167331847 717635392 322990009 451724635 946246784 985031745 414300499 800135463 426928732 438455738 547127172 982322786 327816030 891162998 821165797 849558558 211129567 609755794 196939867 574770689 935452386 958206093 586273652 656939227 716241503 763935986 792638889 996491495 288234143 609216031 830952664 955840247 807058995 948824377 961253700 989762392 753538400 922867096 898796165 939906871 226780683 569112146 76608160 238532762 76878540 804108743 754850671 910917350 758983876 960450912 416943530 816759408 377328963 762841527 102550757 476619595 768487900 898211216 844194204 930897207 248285611 968313839 393357461 939938898 114752860 301327813 778969851 981591977 45705226 887846006 182749579 305569404 375639804 975173643 946274967 970275846 43652255 511577531 779883618 895174723 745003741 898613540 568186293 650295938 873485727 986101244 630185793 766631394 292757658 814667712 169653578 192149825 251913457 732591406 388032319 976977842 677192788 812721255 231264866 235684777 481113982 864437064 578159945 593054883 687266094 842470702 241821365 793991601 54116597 788593984 853359809 989685648 922676827 976428887 31986444 549833401 6937957 634706088 587457499 655463719 445362915 604645124 956050316 965998259 129384119 305327465 154929596 762297237 776089261 953016008 853647194 941938981 42818178 543714649 961150240 982003860 432465119 498172997 283726302 552847987 461693868 665608514 704054405 778635889 360713776 782668403 872534375 945737666 710618235 912541622 121918098 159440983 352375785 619162379 31704254 347927105 637222296 772861463 555558558 651569895 301244659 562747761 945684462 996713608 341714686 780825725 863024709 943232697 575445778 763000514 629551858 765089257 321228877 605714248 912168901 927065108 840390020 894289090 170167022 694995502 425989629 843326060 475076752 550443361 2803073 930622000 21401078 468872315 583509422 929709418 211922263 725723586 539075301 664387774 842346083 930468306 995011304 995912909 990905236 995938184 215765969 765363364 501437628 710744783 472011625 625356415 13360769 768454752 946072997 970643207 855304753 870212427 331312883 380907907 514194677 585277115 335013346 383476344 253867650 563215516 163019479 772945104 513843357 885094015 711055715 720810284 82559421 312854756 288893937 628756472 858974552 956363881 745518382 871644311 133077473 566452323 253250823 975548017 79085836 617638239 217767494 550193498 636123401 867336707 398886275 401941974 913473843 943619877 703617663 737214677 15230661 895476965 179575060 384244069 836447423 872015661 127946942 835334618 895440365 994312028 85644411 558185664 19792701 831055836 577147172 577875546 7030286 202168808 23788127 177034799 36627638 379950908 979642334 999252690 444398331 636868550 922641898 977376307 175899076 267278169 966841786 973717980 228851435 969821746 330299324 870926835 623247874 874058901 915141013 977698207 537678946 635169979 509562961 830335292 735488872 805257941 111057222 173902869 75026896 767698725 187214547 214775784 547376129 969573492 11888247 687317960 843424870 989593656 529186975 756258284 265628539 589031899 844382416 857712118 511928726 902390664 311473856 828815205 577729654 759663380 488718694 688736858 202500333 489050547 606488678 715827843 193729840 873081621 188173439 824475765 672857667 867620692 710311271 798052425 479528110 788273959 259893699 312169452 449539804 712304586 458916949 989401758 147341226 324499864 969215819 972558746 234440809 441822684 187304745 278838758 749303164 773080049 655777443 719046715 660086431 765790513 467243584 628327348 177933533 897791214 30198368 346443472 7849673 805344997 351909927 482131975 841536241 977134221 831229001 938641590 452607440 562196178 246789975 265986821 924533071 935289661 814238708 899027978 315881721 753971387 272608010 986526018 914833795 960860279 513516486 575876371 766990583 969992264 355445703 400812785 318793055 623125329 674219463 771169142 827801623 888273966 423038421 465589010 112264578 741380353 109485021 865982727 476113320 798045336 83969423 349170842 19309260 460693420 119186873 276531418 788127564 913248241 875240825 964448551 766437291 876756176 854075229 926858978 557129715 605333290 734425844 858245514 679385845 814046495 715389443 938438150 220170131 896879840 935093927 981412651 615524071 689893802 667336570 962616427 791004081 977437104 811973006 828503341 11383431 398850851 802155865 965627559 593121861 691379582 577060372 952572126 824868470 860765068 420967337 736769642 420906830 649003160 815448516 994849563 738407051 795740516 484723348 866859566 963864234 998167078 594339608 968617742 203026387 398826832 54435148 683550509 376330865 624297332 326097613 830409530 105105857 638770540 182967077 516061850 307036817 750912990 715949420 774269114 292120933 532675203 372360079 482027149 540243572 717255462 639202474 957353654 841939005 874330463 543650808 735936220 512342857 561300459 486936661 687757172 683328925 685191096 164896111 273323298 644790552 848724880 439128553 936376540 243893927 915978317 717134377 810207701 700144802 998666876 91760397 123628304 243547620 526825542 198292047 289132061 117788668 147946052 287057346 341498712 959091134 966831120 482156512 974995057 529183710 797076983 39151120 610704537 671045479 761516692 541100028 833329131 534550274 685823858 360795333 457058847 709305900 764761339 229539267 479897649 588172295 902996186 213978833 460510966 599046944 882479419 588091373 876983677 698485130 781696072 250160935 552618753 596911297 745122706 531095888 735750214 105121152 472056603 39644948 595168815 636451159 937142116 343680094 881177498 445693750 460960460 433338971 676165308 958709634 995504952 706163400 993691552 687032712 948453919 716843842 861544024 863552065 918674802 752251958 781987200 787292507 993107017 674886896 800304243 935868797 990290258 569974396 907118572 387451720 755603313 800761078 868198263 572416539 585858792 10452287 177275413 319246191 851123239 764137121 973336192 712226063 898038499 476540936 930508722 879640484 994707012 141760104 253348088 858274468 987486238 463167982 943169857 385375977 731984806 385151846 816377445 943643923 991341026 583834814 803775773 787416955 828670096 179728376 763952234 550619161 645935395 144245039 314331686 564700338 908673078 145646824 385354007 748680376 915799483 84136367 888915733 474224344 544747694 670764672 809899908 602856184 779114352 251475977 763936293 748584750 909795215 778417862 937880037 510369780 557826821 423051698 924419265 467909152 788054154 432144548 555941993 929506671 935316615 370130338 518313923 309381399 976904651 681443609 908556479 880058837 908478466 587376279 712143410 400482477 413185879 639887696 788452275 752874362 959902464 618927608 980147291 328905790 762818307 146505154 158184281 149460223 833596873 644518892 981050230 812679082 946154309 943867708 953994445 493009448 987671400 443974401 995617994 231549546 360135471 435777830 997993029 595294106 788395913 801339046 968748325 376729859 678021138 188293225 854300296 228248455 585019916 162130503 744957657 257822095 647133819 551337531 813292748 89541692 287774799 827724033 949021979 654256925 970595089 905518507 907755042 841381590 881142819 799225454 853331145 833381323 947054181 256080105 421090337 445579719 841689893 188704125 572684296 822075999 875994291 320543707 363395282 458097285 790906880 484592561 897127784 817409824 863812363 823061077 987537474 801625950 967047022 556969882 630102760 376999412 978222660 940158211 969758441 730686363 858857233 584701169 862801882 97359032 387625979 802666024 913227969 225652875 907491314 716155299 972858587 157721355 675806907 42622267 794131915 113118105 899748169 175450584 665655339 836256979 856811720 431466408 458365977 460802939 676118016 348407316 632434100 322560837 840966878 959678407 989790706 207765699 667201931 539500718 648752192 564490628 934560189 715233676 903903478 257733147 315652511 126981389 184116105 464503430 780689504 305847091 545369903 251085068 579854741 317092196 847004042 131130894 987930549 987661746 989068749 680645542 777187384 114746150 675013101 681771870 995509976 205961579 986422679 479280191 575446386 830682460 932182976 447094133 666914703 673725498 847061809 208993830 643329545 196826851 255396368 514766653 617152685 196453718 633158170 115445570 874075577 748733880 849376467 114761627 694211796 518733253 794225769 822249785 867579877 571459625 803317607 193927214 363462321 51835947 382529201 786530905 912919372 894427387 914026463 386512638 770869585 720905457 814703003 371469187 688075033 787311121 894604070 652457778 772159462 759711514 928545321 589410281 885056362 749458258 762518001 629756404 787755515 615605580 649336830 583647530 989481696 425826156 593890899 746026201 909084137 305328338 382803557 170880472 476469786 898063510 992083096 582117577 852295945 798236132 893782008 242594424 338768918 293903802 506305019 354107739 761108322 175376378 982627631 32760907 582943500 921794511 982254457 210746564 833884770 106669783 218836764 869714253 883318204 318400892 627326738 227487500 644566789 550473211 786327701 303533331 679509577 658778342 743309948 997255023 998760005 467431010 971182530 147355529 393566399 76424341 563099049 379053602 650468523 279266247 651838747 150310788 545411396 595448862 776861217 774387099 799443389 97850758 870006140 486620882 539044498 275634443 848391216 64748758 157702076 404725731 874641549 644059830 921832776 97365726 537877967 555794422 773081739 316140188 940151029 220252623 266230436 502164526 802254337 680976805 992201873 357058750 695560446 825912420 895376272 682773264 758372600 149865741 327203638 465486831 512007257 799167959 841978075 674235949 770311498 225727628 396258401 231380692 332837567 210377678 788717038 494870661 967541620 598476282 980722859 496481996 878402799 520618827 802851532 753808507 797688140 12952488 548712135 61872304 817802630 350853621 690792066 822483284 916791764 161291130 757632496 763336111 933200124 767027401 796227625 976135011 992613835 855872099 893929920 444007730 629084126 204221168 398921547 103052589 871784780 418820518 613183287 188021414 347524620 300254899 313812881 844939089 988802470 739591798 969964941 215577528 675982860 239195061 343055537 982871327 988762111 376220645 705366858 700767960 985133009 743232215 792655283 600709159 820128119 298248999 719042246 736109221 902501143 865704543 919873763 96405989 530387948 606679096 718719373 544232216 670161497 7432200 319104396 214655645 793691728 165606901 425089187 571765142 573249682 906560810 925341824 86601788 785092668 946877226 973853355 804982576 991363913 818363794 930705862 865570083 926563322 599227084 856853888 910991746 997483470 756179409 972984254 907940317 942826600 992255105 996465010 715920545 800912451 354302590 456118360 626902014 666833421 306119072 439386459 824730376 833947730 447449610 620634576 98500481 677092660 342493338 915130221 563889377 634543716 892642230 963463189 888754281 932612445 233012508 912348652 64264400 198588170 924100087 935472741 61315793 182338106 314618989 637210368 37488385 861523735 109751275 403515082 906161947 998160632 442940526 711881392 183960216 470698161 20095674 525673622 820149248 960780808 43824286 757864118 607890502 717223327 719990036 850880259 220997392 931792651 92066603 527470397 966680015 968841632 624499307 956008445 979051764 987920855 671922592 769867249 840819243 993345022 969922664 978620938 552268065 972788264 424620409 763230238 757367640 921676569 54871740 484868253 271115180 907727645 296787083 583117279 693799516 718754352 287803902 970307889 696154323 898883673 620106194 717599652 179304086 606367292 881591985 922575973 364621293 928933032 412215077 880850326 229832786 666600538 667184617 917491388 622671847 779230143 829634735 998514101 70373129 372430218 703438037 975866256 632931195 739674639 847189016 855735652 948377702 977476886 66682122 476964960 469732154 657492515 246536116 977058979 498358146 846569794 328492047 471329493 419927355 939941993 128965814 545500277 189775119 368932274 533133789 762786016 497868308 680413990 426226352 898598747 259732438 737767784 495668604 570487399 264353131 904246039 41557737 549438526 317081474 860238835 167024965 563543303 82573570 197410931 721235166 934131834 244704572 413369902 690951773 945938647 848842535 870194521 706408841 786151928 888582271 976445896 25741440 648346261 598516914 730631175 677696805 861988401 612080980 723196880 357789585 939265962 279378488 587684962 227027601 661579920 605507601 956758782 807896202 948824131 267279619 604667274 930572190 957097966 319155963 799796996 948330394 970061154 924675054 990625320 10198975 100086408 331215574 628659714 638092506 740154296 39967769 751246122 67348069 316949402 816986031 908662017 810889835 930232921 584345895 920869762 120200262 605387526 574725275 957903605 342655044 660256027 7635117 453946039 488960409 876920284 81824505 640192969 963291160 996447735 872231236 922145330 795285369 861072127 512445777 546742532 415526 406223359 673199955 846400079 2507430 520652487 295540695 742357476 264448344 706611212 623061675 832230992 145339937 568189124 908549988 929142602 302280644 582868148 742682077 896327137 773579775 806915887 220358251 769580427 256507613 591309762 149936053 626154206 364396340 546852839 118372140 605040872 638987532 985375166 403081964 621332073 492782192 656271852 93405311 616981591 236493293 785222864 871144788 927411029 633987826 710901873 662830699 931923147 337988332 661480037 423433770 937351954 357628991 819794250 867806466 929568625 619759930 988701318 90128817 613631675 242114924 370395025 822069214 888497464 993177022 994928507 488960695 901089118 631133007 843309757 137829517 780325111 710376605 728217752 493050863 897031989 116615700 963435881 106001064 478658927 392380813 695602262 814841948 980043193 71155282 867397570 928963658 967763815 717190744 993388203 253529575 656577201 536387158 863132751 594585322 962794073 991922742 993592827 804631875 846351065 503315493 931135841 285035727 977795237 374111282 804460099 390405126 762798935 930961125 978127822 306735226 575673123 989239177 992996402 398096653 684120131 843789950 934950548 523573923 525442220 243904345 813004217 726771179 738953479 213895138 892662821 977050799 986790361 109967709 895112675 835320679 938764883 696214923 726857658 195332976 946094507 356757593 760751169 100183756 601159390 151129013 237585115 419401094 832886290 934217350 956658977 501270101 647239464 771259853 907020848 326459335 790087517 793267690 795781353 933332790 945361047 93676626 113234120 809358987 937202678 972276643 991141034 725701936 878157422 800886537 944142401 369546376 505704219 872784083 946562400 44777636 527770733 973240226 978983182 263839921 783718021 248842174 502830504 90465240 482540314 621627584 817624262 884969561 955582982 683749318 691011296 155285167 851111479 632064753 967960884 621138910 988361429 296925703 623665356 169974895 760213727 119063838 647140978 261161470 755160794 397947150 622083755 790363295 962893833 765922233 844257260 291645791 938553105 600677403 950196670 813508894 900533264 795381883 962416161 976229212 979771439 695142583 917866703 534017846 620865907 504841145 653469064 693955282 733453543 333225539 556339044 607014246 935652439 265048844 990932166 748609346 970631478 979797821 981114505 910598714 937522801 902803853 928200495 874526241 936539442 516510231 803824246 403543583 524284728 690593441 934930524 232738353 930204470 215793828 319273785 286113866 536345730 763554432 836471555 369392318 763963490 27957313 517162584 133058704 377073559 723170140 777598609 251411889 724582221 779067607 908152047 932424867 952557859 927134609 980768088 559303720 978792446 103284763 308911450 483761142 940123681 695830952 716221856 967360007 993830546 148976040 759207182 296454197 700380033 725019205 854049232 712923957 950723612 836984890 988445176 485604905 869364510 906229644 946900867 317503209 747246634 617474711 931853669 210327489 801774659 149599591 872118686 90316136 635997087 709849548 949749434 213092180 307383827 176391073 453989531 129975081 480323390 417915534 866628104 742859760 943142551 706695294 941422176 236535245 432771739 95272012 481961427 992964346 996923736 71371567 298948999 950617764 957717823 849724678 950699567 504666513 574629384 464186346 900831797 209626027 264511899 232960728 792044044 837186189 968272270 561710668 952852454 839202248 862590346 617084076 865227172 65499335 845511246 459124866 552384320 38416804 409970081 867100942 972646819 367795952 673228498 741549658 875039417 420046964 846964609 716796219 783365995 511710016 813903780 504864856 631395602 830504734 919944706 658216584 893853501 691973114 984346460 839024213 873272841 309547601 675569332 474863767 584749770 548332825 732654351 71990813 275757220 247561306 405660287 829871382 874155615 900724469 960949710 787211557 844490526 961683916 998853705 452272112 762843152 16983918 789513715 221661797 512569045 860791358 890661423 922201339 990228067 213456994 657425353 81520598 391146071 162623135 366328778 202821789 841379365 33403013 408245546 292649371 411177628 559474754 745666064 114226479 420982644 675979695 937972830 424840498 793020218 136453366 603668505 251004000 640303451 560571609 726789454 812770700 917043672 512989122 603422685 958119720 990239275 559811072 822597268 826315434 884583144 575726200 991178544 452536475 734867977 690878745 903967733 852369066 896854353 262970941 637571649 544536849 699764751 530249624 553616622 553352764 606176076 42920339 769854086 579096499 722557355 803563032 949089039 186753418 353539436 681524660 857645790 941280499 959878295 817645840 996608292 125911640 676345643 36539081 383923296 168336582 879044052 635573501 702366417 834695681 876788916 212348710 610890720 14630366 796679032 894080570 941072692 917465263 946552295 664616864 825847632 278339160 597239168 987296964 991299263 43416250 512442363 388112160 812538970 47016976 800133050 46642684 605141485 281211437 744379348 337859233 368708326 319291059 929064680 982355649 986527944 969456954 984753086 87367143 967381950 275270339 819258321 164757325 811601270 500881160 792215411 386836332 725279511 969740012 981109766 662014014 925467033 971705587 978886668 881489023 957113636 805303513 968605155 619962869 724552212 376001792 487244945 577864254 998797398 477364574 737434281 102074733 626180386 922157083 952904407 619094480 839746566 546828428 884863982 769087205 852998125 132301909 859138181 271053674 585117930 750441515 900905169 437633977 497284190 897948642 933490907 264338383 991552107 812984068 827695766 608293975 867604803 71085980 586570627 919854102 937170082 979164631 996682262 290037163 918997893 927081712 935299590 875281630 979716906 265337117 283491148 405360995 702180422 826185686 999162323 510915961 526355529 59629808 760332234 977857180 978054035 731327584 981696698 143799388 888630077 623448925 732761749 224305795 363159610 125915609 318830552 364859387 546207204 614778518 666311558 192233478 791847828 295491651 640708141 820111786 939043002 113507290 484076665 934935218 937252170 581044628 852030754 97720925 332632320 149641367 895141487 577705680 970008566 800694377 804936269 672034856 908579747 485711924 761915505 585521997 836330766 780375904 888223323 22702036 831899708 857992602 870710857 221560457 832560648 338710484 945672223 607251770 828000762 695954409 878898692 648519552 918295685 408573345 844618596 152839219 225706341 816611365 980437649 194756218 848018657 680034004 775004306 618618606 972350926 29788826 201236195 383226111 580441819 19968511 966607621 717988519 971808849 67399997 85408050 759376334 864761874 947200305 956555938 631597659 929128871 211360283 516199557 287105099 330397879 443287058 460562182 594699707 959595711 950409181 957706538 303993287 830130588 377017211 730122063 286389033 829024755 928268321 986810283 176172779 756973692 461463726 999033297 648863391 747489840 223240972 665734128 585813782 745874667 639399856 674091530 990315202 998966505 612364765 680354624 730960271 991662491 380735280 686783841 852841541 952612953 179081759 691310298 692529236 721025065 361641799 378001766 961492449 976154145 661121792 711750549 686038862 928635163 467093264 881972918 354366846 675933529 657962975 783806972 169512529 723562262 400602460 835712104 19605501 889755725 703585549 895909905 636723659 833873348 877740063 927910251 412336989 922312772 456187539 703771846 426360774 501965752 337307776 882938825 351641701 494354161 70911371 174066779 344406388 649922046 318113919 957497895 139305781 795064926 263344530 700626260 50049746 654676295 977655342 994953151 846496733 940770184 344453795 925792594 785985986 992814917 76427455 549995947 758754200 944800940 206320546 353759963 546332319 873876740 869570089 892555835 821103212 947004993 836032533 984408428 389754990 868068260 248581751 390153933 246649671 879349209 786876323 917061933 779446423 958675137 507596373 545101676 52121705 111106431 926517855 991584774 451008212 887110725 685538425 827355626 334345032 362037253 312719043 386565572 158308204 679972532 155800556 582531490 640142405 752056502 76786103 614588762 775444420 820916969 343558849 423364376 710303397 902390154 982850189 994409758 391087778 908602279 801988776 881608173 667867426 787337600 593065833 667012797 69575134 616084200 87944492 469191182 798377681 970226800 369358266 953969715 558089079 821069597 267837517 470259901 820751882 977671453 202904659 448256310 9283219 728280854 16626033 287015016 499701224 835434783 571907088 919965851 326937843 572064316 837123886 938406380 834647360 935193501 305211741 515748068 406560297 720173476 613283620 937401618 13740115 752677728 547175354 569457110 861162895 870840830 4329210 961034148 101050140 662461441 949824248 955974360 161204021 628329047 515071481 786727928 427584622 767035526 849141435 868021914 349700106 778411079 423289601 562454831 641578896 956607826 309030112 867291032 171954030 216877688 339093186 374587916 139653938 888463312 666581013 779873581 362088652 716335220 208849087 491200619 681922916 783591942 433991818 702541333 697695498 906686547 260939926 607124111 841306064 857459734 833119410 856066446 290704285 675768559 369530906 610661479 41398842 437336403 295208283 387226189 607381279 670840195 80738345 675689083 479721202 610820986 760422674 795294894 76710681 853466985 822407211 931529871 698396234 716268115 529572859 848830560 814175945 940744112 337042166 545934720 357689969 557086764 94536550 443121911 595614585 717500901 277515716 964788798 171188901 325542192 589919604 722193666 80343038 677906786 847727579 944466477 532046571 756754146 233500386 854993362 958669046 989113389 192305312 943980467 944280944 980594254 649721120 746948857 290975042 698872655 246657573 594154210 710459135 813493784 410928945 462390703 674925345 773176693 933472705 950431449 717199619 835849965 846531752 961675093 484152314 662511549 354592080 861113997 250593158 970767340 689613658 702654607 584001671 908111862 650616197 889297875 351387832 592040764 532106970 622952070 329469477 537894942 761435407 919297216 516384149 781194863 428480931 564267450 356159375 845478896 890228103 934074451 614844711 717535099 903366285 944631116 13404387 488597811 76588876 256072986 510080046 596857792 223510999 371013476 591527056 655487306 78968778 894039035 150874187 496210697 531514447 852939165 544603098 893395159 764469365 775067018 702541829 755961247 317337142 908610305 595325743 753370933 522144960 887743729 184362482 530450005 100830779 192937445 165960968 897438094 371820800 783429380 530051865 896128607 199116301 517589416 304223850 530351789 73047077 966186543 475224214 676241470 693666812 994727224 267584504 364836713 848922768 949177080 542735189 828207631 85915089 880574342 221564812 532471434 352349743 456201968 650687518 891473566 64890544 173226557 851571435 861092006 749933727 776720919 925196929 937957898 769316392 828585775 138086104 813011733 480188454 930428243 608781100 793936890 473908974 710967895 777039369 830834696 553091763 957418082 456192938 809113810 932950165 967925130 556082671 796323484 102009608 539112830 192587349 851981203 33115539 402353270 400185441 767232308 816987746 845564609 128140432 786940806 382821087 605733709 739272029 960681738 875696954 877677772 16557905 573548179 41594549 228600227 287352101 631759130 919943682 923663354 111931739 405789273 649629845 847443790 994848269 996220083 602915298 676796238 738895609 889902910 725349893 821980089 343664903 471584495 394079571 989501114 595980802 997479159 28440254 276366930 216386964 927542317 412329640 470883354 561402517 787618541 456417300 693040199 6444318 958001214 519480351 933829917 922027672 932295246 282463331 380210927 93469471 768483644 664439042 736915227 27140748 455763640 851084655 871143823 214296923 988322460 829636952 851978112 408077402 859088010 495850512 580554938 816047656 825226572 104823741 962427083 886988452 941607876 581203125 797622990 975215484 985421855 116895742 341562724 432020952 854599764 196111518 574658585 867169773 894886197 838045950 993705980 12767789 540712795 504763919 640408191 169490416 560874083 439760266 919037449 146981344 253963368 541134813 683656684 618287302 735416465 474867146 681225813 631779732 775116162 94968552 333287836 337449492 824801528 295750795 795709856 572829153 902987068 21768937 685312609 201499383 265904500 97121125 573449082 426422040 737274002 383956638 508344861 276411308 504485619 169206798 592279311 211358798 339160848 524800560 823981392 67272911 972298392 323420451 937269960 417281066 879992172 226360166 566398010 173117069 942785047 834989308 920041371 786037626 971573230 271202081 306430893 314652890 567574723 527842571 635733448 42371876 965694503 631346545 845002929 422485844 512348909 107261975 834571446 876390227 914667380 110958575 441467164 870582101 977313541 482594960 604421710 733757386 869331999 636621016 923563664 957234234 982448937 906357565 987307372 888476741 998491850 500888392 808614179 315587304 971924176 885779174 888108246 323575269 654062404 943286636 946619845 857438761 985454304 684668487 907322531 736190949 966691225 253950896 777095342 156497393 933629818 361518004 685855024 494265694 618942446 609917840 973429246 600827994 818591086 913888060 913902983 922952101 934080816 214028314 273729255 195037612 558545442 903696113 923795687 707667478 912772545 943364232 962704965 919061676 988551955 709943168 977348477 786875127 937479711 669768837 683996848 477500052 716652677 894179896 928327719 143753252 445300061 125117921 159532612 335072305 362143667 949980918 984714511 495918 694198154 327540093 722501218 49683427 369625668 587868963 716211915 463617425 838881617 990863920 992363594 228786821 487010739 96858286 787463600 211836915 661166081 749729575 908329398 892380188 914390623 27524432 884727431 356373337 361323648 432156475 686174635 891202858 981613518 779945535 812708815 533325292 815902648 855134016 971296038 378056897 776690270 767824309 959151397 165506461 375782696 963644186 966139622 175208336 684254896 260692177 504096452 666157266 912179514 388318144 599348244 822764687 960050773 865361001 952786024 349704830 730849237 93912995 301169708 880839376 931048291 248622147 564645555 637577021 814031595 544451985 621913366 134916504 246694474 219302884 743399316 577734885 932188001 751143032 950872884 537099884 736893379 559798934 600809554 361662215 838500070 394773062 843666050 116442594 820865736 380436492 463085774 832049525 952816876 508832396 683687940 961505517 973998364 602469598 795014337 355657325 634249322 941355289 994760533 44318484 174134327 701675116 862374461 425047526 437813408 280597058 724961472 663126815 822321241 663895995 779527377 613514617 679924919 767030799 834200456 294531514 383392356 408094584 963370971 908821209 922593541 90635705 328238593 602136648 752424436 466418051 508709075 638853276 753792395 492040295 920438631 865838051 922603992 514664065 842495413 2979717 505374979 457067622 997760818 657945074 836035640 329566406 909235268 238546166 665669931 368286385 514600559 711869103 769808546 238126712 707245420 730428445 783699711 445585984 816944868 746416254 952895091 620766313 829857206 744300571 826872345 88866655 137752814 641596456 654255152 769726419 886615672 576487310 618691583 621507201 777209734 71891529 88520377 617273693 691518356 285082677 585200164 107792065 670404919 511061743 813860814 978386301 993570731 788556031 846407377 917690471 921550673 868450307 909769225 318438724 471818509 695040803 743490020 546585672 914892643 934414375 967805296 36375374 674558728 931361551 995431603 558396044 802734045 739319040 796515636 578910781 620537905 451550075 769139212 117475196 829729390 262826019 310076236 187224744 594826432 738416509 901398932 90013179 529810644 335654721 979600670 599374109 696765093 99688654 412020583 567724286 692698500 464643498 794535411 425081684 951792096 516836786 519738425 392975565 897939345 250769749 403638375 100337880 553161945 96482140 840353147 223724873 714080501 886147639 966395341 55847982 575297596 747674403 963622658 465303877 837233189 321625883 609783171 439935455 931628463 507425992 855604167 444203353 868860663 384529524 970359928 844689837 903163700 813563507 997478450 192944251 436157467 589007995 773055409 515009351 943148287 73783612 637446600 347694763 996679224 435320478 449047453 252567930 300540660 529564621 885795911 880203632 945710144 890251829 948388610 716436707 942724100 238200273 995366347 294840053 613330318 650220711 770243154 923953702 985838970 872208110 922051353 376781546 478177492 359174844 740525140 167422524 527751937 11232689 334279203 676567680 971507038 249931508 869616446 996223496 997370195 963141817 990111465 868814435 927778623 264827782 731446883 161224771 353966248 718203073 729372640 552238867 851645615 699569620 708712257 978482634 994226562 514269450 751410532 120650953 734005579 951041689 993687888 719227427 917129308 778621944 933189091 69413984 798238292 37321098 402905339 944220573 989899136 167924359 769191986 90743968 517875972 24505426 273911137 694321241 788711698 241116893 331093661 945552956 974041207 20568368 191730807 315589440 774189456 259872255 533999756 776006226 973692047 38914883 433571720 70657569 410761966 652802847 796420490 538925866 698043133 156461192 539667210 676257506 969662681 874073109 925104016 154026702 712986822 275825698 749084182 252010783 530742551 230946023 960202121 14722253 49907361 284750500 727184411 464385096 934396444 849530247 857020895 762343864 804977453 348839922 438336683 961597431 980234393 76049575 812813381 214799956 693775080 240896707 460571139 184004441 454478005 406778887 725900845 363835920 911015278 287044281 771258745 87860784 431971443 848218520 980733328 956438024 976239215 598919545 600837386 712422900 912676874 59644491 521202778 789137964 954765568 317259611 331335234 116139421 212719345 839986757 910210871 321701156 860269633 581406298 669144751 908199824 970815106 705654952 821233803 105849248 911215063 899023553 903400519 304268641 820642039 54213174 517084091 195978843 512286629 955685381 982623376 88775240 277014412 580856928 810246538 381412963 996291551 31227077 238534333 328966025 895545011 684450387 901163028 141768461 641386006 150867608 300539295 208237181 599123737 115984928 214195369 524223120 681220148 591872652 774731304 807828007 902235244 378876529 423106558 617460237 788013396 35446454 598858248 255329323 444611715 88747970 266664329 83935667 122554871 768803619 795316991 777170805 863543929 408402405 902571659 510747812 796086148 242467786 360192138 125075380 409140857 216233549 883202708 828689019 899547911 827578744 895387839 985693278 990276195 859991175 935404752 147813342 484875656 311476163 721247004 662312178 726553116 377146825 628428219 545153467 645433753 168211159 897324430 127546084 749458433 70869975 524783521 429939536 723242587 183734606 887340797 976009540 981535276 350961940 883436501 925359838 961058399 305022926 955413658 158775008 402203103 709498027 712814488 401361421 600450381 340092209 893551074 905696051 976510916 599755785 723497608 29335930 436041645 414183002 725977756 724200901 959425745 416969568 554224925 254892691 530738911 550885624 881063829 271296871 482989254 520753726 740658662 923410313 988082663 693059367 994636955 349762101 609379436 979753215 996977586 58998585 236347234 933461405 981175415 337933499 338064180 156082250 653515179 693168448 953907733 537230045 955426430 468854441 805629586 983657214 991160975 887183828 928971309 818453518 927218784 289949720 626391141 266757052 764180861 883860387 984020111 504354272 900575881 568643544 769733897 1806679 817986861 661432326 889913107 475225336 805110621 780610725 950273124 66287582 931656906 182493756 721480852 138521398 440099227 339416355 814814193 367533834 767343881 826082562 965190404 375313622 443405974 661331815 855342553 591955234 970335634 893052839 969467861 851351864 958812243 924881749 945575897 417577637 649248863 818458337 843184145 395459463 904600252 348379713 401439534 96369585 765193819 506243078 645475045 462212509 608743503 892535077 914951192 227802455 734251867 636292151 811782867 421424561 783492842 753688815 916738149 375464965 868001979 196389375 997760301 594481661 740727796 604582924 912513677 923207052 955400959 380957985 481202681 271270878 313053441 490070723 614806723 459479709 878095612 199038894 269653398 548339693 662272523 235131663 552285502 324659687 735670106 656805389 868685252 353328771 627803456 581028629 757050022 861826822 961577159 757342218 965485710 732639034 757099006 343950653 832993222 471758584 675709470 231832634 571165298 329750829 614712129 620602644 998429963 110271412 425606858 649011447 756260991 668945590 976074764 259790515 643404081 699799985 852628708 983090256 998946788 717883046 786869231 865194109 914600067 313636562 623247046 194211092 520949362 403827224 851298247 892617923 896924633 338112080 841569496 330976360 458028459 748461663 766476458 930673927 964571605 221674767 616148632 496978379 691439135 837151732 859412720 458951651 641074965 69886416 889563525 558750507 837657448 222253858 825198302 633029490 934368902 246310065 873546844 30639794 866932757 626151545 880804760 981815069 986085561 405017595 818692457 844736748 993281381 163960891 176848030 200598151 949030738 667973550 782730906 651517360 896798473 993694175 999308588 813169753 904830582 274258118 485872127 96216398 552371048 463959188 649391862 667524040 804175746 616519379 884635743 372602984 709324346 813297010 859265590 505010540 924043251 743812957 865015159 575025574 718563937 6111574 185219862 19371938 123609634 737414537 924847670 366773393 506972124 325771949 958182598 863628733 919673110 849016077 956046746 304417057 471555271 508298844 691415353 739639429 830679353 696133792 794294219 788353880 869651529 813562380 815292988 956243972 992066600 604816278 949631818 833100457 937167160 789997277 910115182 338757490 936837299 957925897 976995224 987164857 992503813 565463748 910028493 770192346 804116590 269258248 957241589 138570374 626224376 485313880 637706108 341732039 630867531 97330387 538684346 477538182 707552021 158001569 573559016 402033765 768864185 375558139 463847164 319828390 908195656 288480044 650673090 112586404 854292260 420354193 425858637 621468256 834411956 716278886 897805546 907196710 942172195 136685932 821722825 537563256 645797359 956228233 992604976 985033700 992524726 364827161 887778456 607299745 860129864 434995971 888487705 384754511 404938472 17495101 545825291 986167375 995706732 959741367 975101831 537486412 600422572 895172756 954284505 8390257 390862810 997501181 998052035 199118812 226751772 265083405 609353200 260348614 744420654 159534937 704379437 68179288 783660802 872720994 920398004 912342111 988842954 242073990 876428913 269637202 985604369 128081543 460276424 832309554 938326366 885169481 978245381 51338059 717226622 121032539 866474936 561907539 993079277 895539946 936383847 790736850 903777675 356834429 576877588 274876352 856861739 905830434 932077339 23413378 271650306 446188333 987961633 505218857 960973729 179846880 647102728 568620556 947862763 393863051 873859695 882981365 955940367 753670698 969480227 666098095 813489703 301790260 421513606 827560024 927592298 298386075 831000350 562371736 724179220 806849385 988255749 500960196 605340416 284179147 818927078 63537746 923894742 867979690 878019348 899863685 973356383 208211209 563226102 183430044 401434886 143984544 458025708 556794284 769255756 538306508 545137521 740236786 755545366 20204734 120111032 753480904 864120512 108490375 329407629 107310538 654546882 78933280 695429081 904548512 995671181 711106568 901258819 160560602 470520294 114453896 469904254 954682117 995778848 439374329 783939213 776483501 947034477 229765318 381027532 319046451 863914794 488389037 854172196 488190519 832064508 818809741 915708849 149071646 512677853 614356383 704807489 710797397 780599436 189849473 699113569 201787331 717773316 810234679 961036596 289143370 324029667 64684935 287566733 896445755 927489393 156154642 317071805 347870419 357152208 440834854 449351101 611958882 984507855 757162819 808488899 876697357 933075542 382983706 945912230 673575768 882195671 771810884 896210209 558504681 762702635 276665256 644116117 516111682 879433563 652761414 761275888 4928486 242625807 801381218 842804460 846337930 997714924 636287074 937415777 330725285 824187859 165545913 927553067 710640507 919170305 23800286 501507877 708615714 830390117 213420468 778518693 119778593 424233066 978142550 979924913 670290971 828599745 185692843 471492147 607352533 627265262 391359464 914152185 461631593 824721780 252554739 997898066 338732164 618658694 514066562 620112913 513488181 793706484 254861537 314671241 490273283 939846927 680722779 749555959 318945647 655932170 101470223 934953389 102059893 485811338 622643526 899304096 417989898 743526139 939324987 959337044 42293416 349769673 319729479 978583809 128205662 528926499 25365426 210815710 395854729 505965145 5665218 962232045 159661819 492448592 719431199 772173328 508866279 746060033 325074013 387348710 597647053 659084918 976414321 995434311 441215283 755650561 221458427 723789920 890355213 928798310 196475901 982079252 276698923 684212784 202340139 592849201 803230467 975612044 879220593 880713426 186649864 393421737 70721936 244717334 762940638 840907485 286661076 329069256 357802142 659415218 799064962 805052551 174863990 979799501 875894777 996491087 369798456 901776016 933810157 971287677 959483550 981145160 334121138 662100795 755132037 819245154 351529449 610930671 498815132 551887905 337091553 838846490 867354303 902161933 334524413 394162822 844869561 885168701 527699442 644212629 941239569 945420915 728088020 935373326 931342897 981365822 186735302 501080291 89259969 600396077 966477653 990539390 386495286 850788216 936007764 995525858 102251101 384277662 665849672 737432723 737493275 771014903 346455713 696413883 431883882 855392125 618460401 719330288 969351097 992881082 204492491 553713660 563089946 580545189 859422475 916732299 386145146 451988779 824018737 841541283 622509162 666211052 451243445 562869316 182910026 908121734 731853144 742698093 823788712 925168458 172993771 849768272 75851460 317101870 137946007 608739310 688582533 766266842 865170560 952908925 78926705 764548139 820378215 889929058 228043478 273770491 65744481 451298754 271832964 978967453 460562140 594748464 285110398 808273732 141185731 722369561 561195768 680221392 758739851 769474274 247030305 974306165 208582090 749606044 286496789 978314589 853514704 900218114 410577784 624922247 648032650 737401629 745492875 758968949 747866064 987153808 312748710 940910750 770634508 903947060 281057253 304732426 185909315 567068144 991826199 992074365 117099646 539499235 862851520 948386078 404482169 696055700 175427776 278982746 775120033 784647035 324201805 961242757 399195327 559823531 551278132 912972137 808368737 950372580 698029664 923883247 883990775 991269907 344150041 455548362 928189881 997491509 128865098 754182903 531175106 848964083 659073790 779753389 913849851 961534061 886787135 975572671 784658694 794706853 302681781 329808751 146691964 237500841 481285459 853427257 1828054 335493306 628138730 880264291 695102343 930703782 889602728 947162748 36823973 716716584 819696516 900143740 197879234 892843209 120803806 454072704 681215657 802987940 848852140 927927017 12447191 762523762 731776012 735150140 781952082 861144518 187843127 831080355 257171928 642885575 321268949 816376752 445511353 788081279 506077634 947316620 564067194 970952561 963084557 995174396 394530294 653806334 146666458 878379548 575431021 663672640 165209646 868997050 863494566 972037719 570027581 680031097 225823991 523249956 931244983 983335892 261352740 623188091 617789759 816840647 602899589 825078686 221643743 515868809 108650278 951842142 176822655 741571756 620702595 831511932 163058172 948261478 351830751 883293936 536661322 611060439 639827873 687865460 182088247 643268427 461947102 682179353 945286284 953474208 493622577 814689826 24197733 602912802 840031922 967852006 576564054 608576271 496775600 841628366 537564123 625777948 314610393 834915992 372240386 729907605 261466905 317302302 436624209 446140865 139258930 309303887 371086447 906796827 231464613 311191179 55534316 398948040 260652553 641488190 347841684 352729778 46947059 528781007 622786264 765166046 247496473 578230829 679402187 745397013 56736409 507850981 309577903 949061456 314471024 738760232 911093085 965385377 690379807 743494561 700664038 740357777 995999647 999238991 739596906 973660949 760959318 900408710 530513901 695676416 399198366 693914357 506861837 687176843 547583634 855597297 958234736 981442055 42515631 574864933 440800453 994830227 788978998 825801144 789789264 975184471 702339082 858976629 690043194 693589790 963685037 968743371 438306505 966945684 528465045 848400013 411764793 617088441 139731842 626572577 276161152 647853419 364090705 396619303 153001018 175420374 677836094 948003916 414284854 659815501 703867484 731766677 900297867 922091918 753408905 782285250 329821657 508405326 184351814 723530187 939338065 991135609 279780744 760976743 516972203 721374364 929091362 979237587 780104004 813000783 332765576 465641669 639843331 721408563 250410635 368345855 314605847 763903522 251414169 386401031 594730863 765428926 468611913 788058921 351817303 730472123 856565530 897978913 76790141 239510292 476724438 617913718 740093852 742204200 236624730 391956936 748441246 819793163 537360946 542352127 663889207 943139241 730700750 857645512 912119746 971288875 816216464 946913909 245370520 948327238 59954224 440378300 703546882 931637881 68816566 900142975 691954159 790964611 65475914 609611361 76912736 231083510 250328644 974897926 506431316 851463451 556968743 600195731 979351283 991031641 576745794 590078310 592290898 769531417 356394425 994444214 868685637 892149289 462464291 917675296 733194304 734320012 511503659 559853096 537291293 897651701 665132266 741198148 513764319 946041607 764087743 954106034 634572591 800616878 750711966 962384517 26114861 367461882 784415670 891245730 698082989 889374367 586155781 959067232 350405008 636118484 785032602 887189694 761305900 835933609 878197524 952615254 540840264 626692186 604963256 688496655 639821470 671732559 918003967 931958847 696342994 867166540 272571646 814932549 600161845 659956994 891575253 968618069 486967117 503329126 862967852 928655678 732341277 821627058 277262819 986929860 584677814 615881015 899628063 935229609 487493459 923223287 622532182 823318701 964607306 983721329 533713097 891009736 543388775 945434565 282735650 711818794 727468088 830728920 214139973 390603585 882394279 966022341 54623364 868206954 917860627 984136127 347748671 378147643 644369483 912533757 26536426 210348583 488746129 940703680 51290639 248381203 479039951 629905526 923477728 962871386 524070994 732516755 490205058 917721303 176534343 632313580 47040611 273677277 435413545 555732440 582250764 646711508 659661816 816727537 968058189 989604075 858198565 940268104 472700099 950897725 419193328 620752640 934902278 979302268 285211619 420055879 721332376 791513635 411388856 662742746 429552353 598492218 715779245 848470216 114957714 278533801 922165327 987180329 546523173 842979956 387400181 430900459 189066962 774534683 137116069 998483516 385138267 438415294 346291120 948384670 157701145 884189822 552974585 812840415 805828692 904494701 923645626 932022797 498880883 906064691 616521467 651544940 857464418 883578299 346783717 779210277 628014326 843144299 870723926 894276166 727092547 955911115 640408090 962365755 528704738 581528752 923523565 983176554 249807365 408069376 4975952 41713500 833473089 869604399 572570891 596592011 289214486 580171449 973655409 980938561 666890456 957387089 431184908 560289866 669383183 904479998 358855715 501551155 710887136 883735927 507767769 867839932 662378974 832188548 584001948 866509541 297518593 313648521 672633665 902472944 393412600 502316746 811376921 954886729 578378035 697511297 53695306 433829994 787227901 841836416 426769555 897376739 828964223 847681737 901509085 961302828 649704157 871550572 40655699 720010143 64435650 367602001 685486069 856395287 622928001 725424682 329765587 801643976 985096207 991749007 720477885 887123017 68824973 891042815 252071404 290793302 497532702 786419594 89712230 804727610 606145354 779999447 968842285 993566913 910149836 971112590 127058081 776025603 914282690 920259754 417927883 690537681 408903092 821532389 83049820 109580980 63869185 979527938 761043941 775632483 774367182 832218691 633652620 828060939 541536215 974247038 521124272 694035204 850430161 921771655 419659668 464056242 273031774 584023964 353930907 470608411 462373239 546738524 627515205 990523518 402793590 783177693 457653548 591499564 756150240 879014940 827241714 973952682 105953049 616393225 975676703 994889706 806721397 901198447 433511462 807620906 66155083 269476033 829310451 849594040 601400114 787751025 789135813 887065921 45747356 845783590 633729212 826284962 266735107 633277015 70548927 420764962 415378787 683151769 910159453 968784318 228158898 532415910 772336054 815295320 364801435 602198789 573554410 879755393 603239088 809977228 613067177 728320945 793601809 972835587 30607285 171814134 921655305 993808154 328981097 790104788 284941454 700771029 250010577 604073338 408975373 448851879 169134083 797070947 674419343 900674306 810497196 844608982 514557838 997818339 930766073 934965817 521955954 900197442 944797549 984681170 293298404 485994413 664861825 934245212 911293059 969710840 43402009 965852957 903879835 994341251 819699022 869262829 7303794 691927096 811146191 953411403 66354948 630950260 435807248 607592138 365393761 639370132 805104048 856317383 172021333 447469881 962983568 971322559 346013183 872248968 553037801 990594516 908343806 937145906 530889425 684569565 520774827 563678153 732507217 798610227 106686732 148254295 358373209 563248850 382230075 926641660 975882882 977369890 637517372 808463350 56365427 417678953 917922398 998736694 129769999 365370181 619257351 916737224 351521198 761132720 151500587 243311784 525616210 880998390 318867792 842789145 85665518 690322278 269312341 562833969 298492264 759723056 967242605 975218391 186147425 415623489 459027492 785945346 621380990 923227869 602958998 954313916 119515317 490327866 490196222 600330001 790109257 879846629 20447152 553084567 542358979 776262450 612378184 789038399 84383588 643638762 79299707 538034996 334149262 881923798 964318486 982993580 821872481 863936392 702559139 802046751 653394877 834878079 347519232 612792374 838805879 876827697 188756006 657107646 530247801 659025212 956216141 979161033 114884480 174195371 319115012 411812105 783574106 794097365 542182153 944928395 247499824 337906696 891041030 929422368 932717463 957175338 512686115 672990999 546493197 860407176 302585766 309730292 78591030 237644094 982382442 989204771 695952720 698357364 633139502 879128993 474361159 834475979 955575874 964384510 142718069 614927524 697775090 780781206 768093115 974241371 259115215 597499510 233357984 410667734 300419082 888673945 676391118 942180741 513297927 713995740 889757270 950262639 527736448 905616510 125216802 935796941 497162139 571493527 454737072 624136674 214321670 275744187 404277868 783472503 402103241 410618485 202037761 748576560 513014550 714091756 458584131 750724121 904684636 957070731 669107523 863384901 973328820 981313859 996737152 997602028 683196359 840486480 577586661 717317756 721103811 923538958 141544644 828893528 630831216 696206575 499624794 640634242 737606070 962267117 666871896 709474524 254035923 638973012 743331456 830940489 21728440 696568928 878684868 971991125 232994590 442113004 927541966 955957230 790968308 863659998 575936031 696132155 790346539 795348414 343782384 993696954 638392790 936345007 929852594 987200385 21697197 461958205 433864372 981206122 772234455 787485324 15941506 219353862 117480804 592838582 394144166 410971788 159711464 391534123 133585973 714956432 514122016 728886291 170637512 859999245 782011525 816909738 458344273 689225376 211567109 363307962 324919228 490571387 443235038 677337611 955850422 995280498 41881339 826023268 795218311 798126027 807848679 839885190 69034364 464414588 974925299 996289053 410215211 601020172 969186393 980365660 839759078 937331148 6084643 452301453 436418819 809367482 275635828 627239431 863750905 946052733 903967292 948381854 531510962 638756513 937245865 981454274 637131090 899315541 147995663 636684444 298144797 746647664 564692402 938741189 217685095 251776821 284226227 678847096 810149937 930201394 636445128 684532994 921286256 994529681 53321116 427696494 383836710 886199634 308397169 600230691 204468786 971232617 585994418 963105110 62798989 841714360 70096913 232578955 755252615 924812113 493153617 568077315 605956832 998577209 188554769 414224693 707230151 843572966 166127007 972811037 809966280 963270807 128185261 341318083 394217182 689739697 167005489 375331066 73092663 398529034 71675072 440186546 413422981 503438255 597922055 759877914 675966781 727603642 417287126 723688753 163374202 284031874 201610561 916511104 251645763 779481562 327998656 940018703 672650115 947219883 414024302 516598245 295723501 524880681 441282628 788538868 4690397 599846217 702472825 966342056 261944716 801371794 541689747 951227029 416825423 570385478 447182544 475203143 811545515 840367996 374116161 542550570 235077796 564354509 762475424 771480691 567354213 843494704 384941156 473522288 161140975 404210340 17780072 472364229 122893118 140128713 866485509 925683402 740583936 839363631 105010631 422730147 853519437 924647245 314690036 744499900 167513149 924447743 215544711 874269608 254563 305557315 467443864 741079070 351497363 512418332 920079460 982413929 370654640 498083361 7605726 565368498 717335136 850453599 645138160 979225650 279632529 827289303 360321818 936552117 72964843 292263138 936718606 963302912 264687412 656792452 110653204 651556210 594035892 948573958 921782993 926812001 101523329 747487065 845697387 902208177 228486375 272433250 633657108 821550521 928257820 992652518 184232061 393765126 803003005 912450430 210700939 831496834 684438281 841117404 105753507 555600391 660853535 919622689 448671371 857991393 941138768 953602617 908204846 926118982 944016560 955289363 129502972 610493971 180266380 307011917 318354695 892490356 152665853 381458216 344733839 391596278 366237825 397410499 945784646 975888447 353177137 664684408 303977759 416840020 251208041 381900371 629955359 777783449 831769691 996164010 690430388 866780626 286814979 596778245 278960389 944311362 862846246 976074055 11548347 314589801 511932305 834881669 763064384 956056118 536870562 740124690 370517073 995861917 939602550 981651024 910286695 923293601 912485812 968545832 614534395 864281310 809102006 925165983 962890382 985913847 242001551 611083443 478696116 722080936 670274458 869831537 477474449 697149883 115975279 969611585 748066188 769546249 892731122 989270536 674713425 880346147 802331818 863323928 647603239 912477491 564415939 680404235 510745282 824060281 97015395 125548882 353734358 447727275 166578000 212155822 539400455 568812924 241487690 484025845 204210955 838713917 379121232 647071926 538180526 951646067 320144957 841289608 93490559 683845454 323025599 600726360 67558920 645857858 42720128 770136159 571080458 909827596 496718553 957805747 656943529 972647524 410555213 678511251 691809470 969712263 384002498 711466532 401709721 990832511 701921627 856110311 269870196 703971033 598114952 794511758 984444277 996285826 96800631 547936163 312078100 805549372 208328956 247055722 911905858 923062831 156657281 507028021 783044225 912836732 568846842 806578580 5670166 731978693 576148565 887807990 694180566 730183260 612706102 712404102 910145543 925718801 907647576 987678693 333261908 558026241 402761700 806516777 984973049 987032109 270857186 899760663 431959882 465146875 811938036 905362643 802000527 947254313 299907138 884181815 786403050 837034680 713096938 731926882 610010254 947839523 123618665 659952123 865989620 975832672 259096007 353422501 849691331 899850461 603266770 956660724 22823846 699281677 514252280 542220593 252450042 703652842 212269188 346772485 951339086 956139263 451391346 887037758 263327929 499200133 412632930 805585878 209131976 683271081 489578568 966816915 595794597 973460095 488158358 728668950 215203216 842917503 299648899 342059056 117837757 772154896 72237065 940772889 424763633 470477786 507737093 942182307 331674625 845556013 44010022 82725777 357987708 686163792 999364381 999371888 219816559 965246779 41287844 182493406 805193620 849079102 973063562 984721703 284037024 638990605 389545454 690198551 80660753 893116863 582070263 862418150 647607278 862974400 474928790 700782806 110947820 472913659 588968040 793606471 154462332 393060207 542942029 995946998 428311637 436799416 910032783 928479135 90958349 564627283 12597648 874319291 596160731 669197259 53832783 125352012 897366433 905519023 52421628 828829230 149943115 867197715 547784119 980439789 439548270 963382608 520150059 824066987 105387493 495732007 887225949 931294768 87900337 674408925 600478598 873291877 851922433 948344779 985843674 990548682 721826282 738560547 799813968 839788411 849960452 946525418 827833245 840211679 32846821 110751618 646223628 748602104 593600468 979461421 479312694 650929864 374334207 709035674 101498297 169379557 156820968 261558773 895854793 960314269 674953867 792365337 475569584 666358903 156604159 947726096 271652469 449988412 37715775 609928669 171677935 248063481 762605566 901313192 980443187 998621784 619414442 804725439 424850001 699019514 807233277 910031768 202524056 813605107 326332795 568396796 37830686 786413485 131240178 189726087 815963304 888575951 306998265 745613429 153718568 775954350 179009599 334756458 269605059 825008988 679132537 718922669 756427443 994837020 219401796 318849113 770002207 899174499 149109481 816533310 895516084 982378856 877620128 886972540 610698011 798817534 944405453 971057037 865035399 923504875 29138765 912205783 5102827 449041043 671377143 773068988 368010128 966011943 813428956 940742759 146744497 475096410 602548383 753275177 295953364 497440497 910738841 928954486 921384947 985904705 888927383 960542215 502627708 632189898 582950033 973142811 426519309 964148215 654715520 810227834 464339617 583492161 501689861 868163376 923417710 970204061 770191713 926229193 348845622 363142300 559985606 599471814 759017981 983275192 649049166 714556382 608972436 748873162 484639581 504922175 510325857 706676091 913061822 946243294 524103055 844040764 43018332 763119128 476090521 722276399 251732662 736872193 796713891 916568027 249057665 366878272 506630671 541633554 376520413 510216787 474894196 678087296 261201777 486688619 395119343 981239675 415533306 455325784 541118793 933306253 271315002 955302544 682257494 949336633 553854556 743680689 580188468 943923555 496946181 928384761 513594803 520937628 980816001 984600331 754005157 804079626 327985690 939130378 300026476 428092600 800532965 937914397 355253017 554128215 121201926 440962539 501900734 912185519 804486311 936448592 646044551 654686153 756179588 989648876 390873961 678506703 266070437 756430527 310828904 865815515 982574673 987479899 637950916 862299226 220255776 529310187 770504491 838730584 838070118 951055865 121429792 174906136 260538516 782254038 213230004 871385747 293101876 907173723 16262133 588637568 392230969 709069908 79504827 698956497 543530575 673910187 480686093 834162054 597607723 833533920 994670745 995474578 519236945 969736341 500443665 881136630 336633114 880052569 687256355 896385668 364999288 368083148 775590591 985953350 722708237 739238651 628934000 816134738 186580268 282321483 592683918 753058093 775976670 835368546 237885343 920877184 835596266 978881324 751949959 805881018 255769435 452725683 959469434 970818964 817129030 988157538 739239551 804185867 930301759 938295316 401152477 659568391 236490004 909094540 562151629 952953001 720943732 953924877 996186642 998597303 141195705 532971679 336639465 659854849 847721847 992834297 730335867 920533871 377330973 454529609 5629631 420806829 127007711 986178377 211601566 773448706 196005912 878264204 126586614 715513582 595016377 773802849 939105662 977613422 323554335 657533283 875422992 944570444 660872974 729114978 544076507 886894346 519813916 777593462 626023951 857549058 101972094 215873766 827421095 894603830 390148031 558829257 797965637 842641113 287502307 615880913 781971959 807455187 695923353 802443109 167967133 558725016 868434680 902810014 419541575 569906028 985968746 987210238 335882818 343188935 794683421 921706885 232924764 756808461 192244972 750527404 463997454 822671953 103963796 180685712 132665331 807136784 255001934 770335985 666091313 770729074 647882833 893635503 124838594 680874895 188941327 754482625 288963937 742825421 680487116 892424941 259294980 555718445 590793465 797259367 446788116 989427689 573724013 737319253 68226824 841198622 923150762 997683997 375090838 860968668 926079423 958144920 699364886 715615791 92726500 558299718 631054422 691712093 474428244 521964231 111084707 738505247 411803725 557519089 489138634 881173063 416122078 428446744 896129311 985972076 481533904 763613463 10352478 737400314 143470121 302347074 85789541 627801355 217542155 949545990 770284224 979323878 867608189 888739697 404261869 761619650 931198871 977323254 993850342 998548795 578146401 923350104 51919173 648209469 358123527 859700102 342799506 534172363 187725273 834218287 300505501 789851887 480063932 542739638 841589161 846514103 992668334 997018031 420109358 709961394 830677289 926500290 156322819 187828722 29824340 511902162 29919350 559931549 258510715 297092998 821407830 963703790 804610346 992004369 475427310 695723104 689680043 863402494 182098573 394713571 71027465 350564046 731544492 798530508 947354136 948840170 321980081 327078833 938369699 945623497 373141072 544891164 599309238 721706609 803971348 911785919 852846982 988437862 243901982 349337488 542640201 833089203 63765875 781234131 90207201 808251765 803345438 845955169 6293535 251716961 457462106 460459477 533550915 848061009 316176047 460015877 660132385 980550569 312441653 804609354 419483218 452538246 801413027 952083587 440420628 646200506 670114845 682752056 85558378 189833383 29651848 484952555 544140585 708663628 291391610 356132067 906033070 932662955 178641042 944277077 229726963 786225507 331713766 835221619 50561124 268233928 79398844 650620941 453135970 521897343 14241128 249920626 112662626 824323554 807800980 826903093 26571762 782170775 451679924 699827574 96418039 623642634 890093444 992478043 564597441 912022178 110082735 678547632 66361427 371125615 211866754 755329200 658807846 904569126 962782502 996948080 797820979 980437495 134600897 638762712 613012767 860606533 60654419 158963975 207353938 764464441 777280397 918779291 855472613 889604443 142818007 812015700 589818153 606773156 327080183 613701725 16345453 183494154 760243325 912181683 726919058 810573693 609438132 645830415 25651009 104305352 514764368 998982453 18184864 105450061 669248232 770358299 588900800 819942798 629546137 988958971 479306248 924718182 120277959 347564614 222992845 465850167 192692355 445439990 868275087 961229162 717124181 740953062 512537050 683526572 208812323 816123618 906785579 996727736 958972304 971422867 896133133 938689873 329677058 380462149 730536513 927524347 251274208 901532861 285164562 878396853 789945186 913500419 749284152 928020981 912485514 993008007 750298146 978877579 296867978 592948888 947730240 971773354 176095466 989747358 963914464 969296380 867744739 892456426 200206944 571307744 379715365 426518201 130918750 871599401 506261141 683898521 322024864 951644312 771271031 813640932 594516387 831338528 74700457 475095084 153309199 339682834 625918877 700059976 443631401 649010901 319663906 333473769 531190139 580369732 405999089 574057267 805690365 922770716 126907441 673814163 421087556 572536365 23562497 360874044 27533250 115870732 811928796 907410923 979314703 993753156 355919745 942650295 596311562 917495218 227014412 961452176 522315189 909317490 780469520 926424302 18099689 772698736 798273216 834841913 703406444 704968727 151261342 287343303 34449009 563009574 726493276 969039758 899690060 970727790 325583722 647908860 324579547 554928510 212164418 950041171 891856316 933342669 236492120 330635655 241749343 644781085 995593545 996887623 254521600 993223971 1878142 704905750 911344100 938571859 303433247 634970503 384532769 423894548 782584815 802653375 467381284 656161482 586932972 943857090 602543756 975448654 122136099 455640612 281954674 764561040 537938597 651445068 754183830 974242993 928749691 953166953 66669127 956873752 878687299 966161323 274412366 345210525 209175137 669113993 195616640 577337531 102274809 800245148 813737543 953371976 788619153 988416942 736442110 977575309 659143290 951105511 608823939 672247480 390812290 829272045 337589657 737642021 548403873 867516569 63076931 329533544 735194907 921670640 259638682 823266244 918787717 942306412 775730604 818851886 782447314 909655013 555314585 627121003 773659963 934541893 867336466 922430607 394302350 957675421 730242156 897251345 294047475 811665412 925006375 942822810 237082339 804536361 654551378 711476325 669924705 915551550 687537509 749335136 101182364 846927112 510385658 818736306 144362630 810732098 451322744 582739113 641491015 739245033 672848736 818325677 858739906 943049850 609481311 787457187 985453231 986050611 597986193 871701070 399300038 887908376 307589614 430750597 558312639 886708293 238957160 557230207 158378884 872749590 47682167 135884619 675039011 893988904 132013404 251098688 977736311 995466501 134683107 504428571 707342713 850751272 254742451 495547366 757457492 983564819 292641848 539161464 839765017 885066393 772284868 865008482 528798929 794662082 37809995 669115271 180160994 335095073 208522236 332980767 455091227 641378228 929860239 933785413 234162251 505418956 881836739 939299492 515247853 984040646 140445413 784807376 127758662 246055569 545773819 681649428 785107835 835258025 326548798 777814414 155920075 639996894 793625760 878153506 341676094 422001932 925790543 949353198 682509643 860910583 916873597 991327278 922198320 963218169 230411670 944104221 535510859 834464061 706002110 946316027 720986078 815230574 791696125 865995385 289036528 634825710 618412310 695723767 417263423 583328908 504521803 585554109 236560299 413330489 240692762 488723973 369043191 469934254 384149658 590435540 320164935 358828559 812135781 851864165 216932969 236625458 688093326 833627576 827862011 933866583 804807556 836661301 403578078 972618879 133320886 327135800 615549293 880255621 269146942 895729709 118384020 805523387 608464052 895451516 900287896 965848075 396708379 912545290 997483258 998261433 982472153 996980751 356775949 769455026 779243248 887611490 886563543 936606810 495874508 922836128 789125722 928505704 117633635 851228498 652159318 785560036 171424249 194579094 938332000 943336922 418161726 595011535 9874449 171166918 249428517 295536418 869485346 972610589 129019656 290312990 24868764 270614477 392693516 533263087 985291366 986230143 66079964 96080587 157952814 450340273 456114082 531922335 937467635 956553745 143537671 543789740 767569285 928027277 916517927 987454201 432353600 685443288 222987983 548939709 94940145 884390862 105915825 390261060 974430739 981224808 161526222 744506629 312843 81624565 546353053 880386705 425476951 838757242 377824131 434615715 332424875 758494126 638125388 985283210 510052986 647541055 343804239 563761348 417631651 894208975 946076189 985548006 397573474 509386461 472644492 620313455 149262259 501620740 420273886 423513576 263145218 489803917 827270528 858166642 24552478 136650044 901471753 911268584 652860817 972301022 195232401 735366584 702865289 996139567 476288611 609198406 951726589 984677002 362183028 715061947 824440928 920088872 177731691 643126070 404871837 945732070 228573814 588108850 310300726 672391274 158688584 441845096 247595009 820903941 202455474 596332238 110058104 286724243 617154326 622950329 967553904 971285242 74655799 253030939 337575264 835312091 959179338 986302858 47763609 979185096 892889575 969926739 950765425 956329256 431556397 625231180 687672291 964535608 682607769 874596692 292060066 526707469 910733464 967121216 99368324 133418278 82939995 414624492 308187297 985669909 987765262 995395777 229856184 696468522 514574323 798447457 544939576 692512076 975399547 994839117 821839748 926037471 372681536 415938398 594295849 727248302 790817295 942657953 793053877 906551114 478071602 661278526 865540261 946803656 337566823 995486631 794546783 937738955 535960628 773341372 610297397 666548054 720523539 785400336 704480505 858160952 381148578 509896561 795951175 849564013 604523169 808243765 114238663 319780656 563868688 859726445 191612585 362876571 55547925 500624719 276003965 797069473 828348249 908787671 381264844 493135523 898705476 909134972 915309092 996576596 743320304 978195333 595803245 979635750 951071881 996448185 486219493 924270652 403003573 765434891 154110323 291881464 715482991 938798500 877084503 903639096 401976097 490608038 254353487 492581802 267390007 677451381 266184787 532557640 598057913 761647947 786105972 826842229 718557460 733352077 470967698 510634129 769098110 909648318 273828615 722905187 584856582 607098369 737687889 938126099 254304353 330259255 845761532 863726709 620379854 979939627 25266262 453720881 201821377 888851277 173064441 819089934 749304141 865124639 190910677 684852538 667599921 802698428 528566508 956973137 795913153 798320781 237613115 660019546 655039520 890685688 416487823 891420275 391665456 450084173 759137824 919076635 294776674 728550581 869860728 936286313 950831526 984552334 637233377 675317084 233900734 451652329 737710621 879450292 926664393 984828395 830560109 909025587 146659307 343663858 976025084 986101090 679044874 865344371 184346524 206325990 353947439 997314561 331500674 912888336 765710595 951697941 913039037 947542672 387911559 881253833 362626651 594188714 506023494 797584383 314717121 342632120 300908925 516480468 990568201 996462450 225224756 612390915 157989708 722583563 240408766 756059633 263059294 418194457 150553057 214259462 798374760 844532731 678238774 746915706 945201993 997456620 126458707 420449743 198224273 606164401 168095602 503665135 245451891 883875172 700014311 933135756 426886938 762680435 279112481 448274347 589242517 700464888 484977801 509848794 249329738 380708106 234701689 848686805 652223766 989263087 429586157 981225311 550294260 592798822 439130120 716884192 997636378 997683145 730641727 915679786 327872984 445189725 140850604 160754360 299580046 525221455 704057407 806826123 89358310 176339204 667605821 977549653 314720695 512084850 462876877 511795733 259561187 390461244 227125314 603114860 552350343 817283756 971807267 979112007 898084104 904035304 202466943 331112953 336297491 339298145 761490594 851122697 738330951 905765534 332394187 376666438 305426126 838131281 936850363 977323564 64708447 566547990 559758394 851313338 645907680 941532168 682424160 726836453 344710158 502136453 393311446 736599824 67777946 991834720 241656641 535593360 301726091 644684799 454741579 773637707 173169735 591599006 624880711 923973347 985510301 998901140 715222276 792662796 920690669 990983514 661878599 995624282 272148046 919615087 530439105 733394861 93489012 211573312 184194866 204516619 973220124 993992979 220994947 819148695 589413374 695835913 59441721 410152935 184370767 608319869 853073630 881984191 282754515 830350060 479062670 913586469 455154061 572615890 671439958 728444523 969580271 985038617 182597098 524214412 689271307 705187369 884723018 891256773 171284519 996061018 753932701 865584010 894719392 983570549 751830496 838386738 810502486 833889776 102732536 143083278 998698336 999083406 728788566 945367370 611484641 892271633 329834239 859144299 632836654 837048090 733062071 978469322 29978307 41685495 561348564 900265965 525613110 693326591 275325020 468195672 701929212 753473814 392608594 987517598 664773116 792273862 704302999 962322559 34178858 766454468 632655478 650408252 371827450 670874773 881101590 934566681 116251987 515339694 17027647 778132522 823235865 900795222 407513292 973342820 282721627 833297121 673324242 775994117 51360788 850596879 803689165 868567117 35928793 573459737 211579616 360735419 127961458 945844364 428886516 652444579 565064466 913580482 975423701 984289193 275953020 287645643 965249550 974716887 297984249 842312463 813691282 820852131 71428624 828997913 623195692 984555561 711609220 880486247 149894547 227541454 416396847 574568941 104427898 637006402 50507376 905806949 283453473 369694483 47462149 843018318 272266872 472372974 524559798 578056808 491829989 531009297 705391007 711813819 563167039 593145080 757173938 796754773 434725580 729333970 511915976 697514692 549991966 702966182 509914395 795702187 130805128 219250262 629291276 774485815 248243474 423100084 765295458 969031403 154114440 811354644 183650633 796985237 364632002 986205020 960912228 981171933 511162035 608952046 313484646 574712434 269667685 659172035 35506699 444260616 885663435 947837261 123801081 252339224 472219301 919343135 274986763 713483684 313229068 767253730 689158391 828558879 825269177 890827142 745058144 774203035 684184993 886464075 481618630 770072671 731397287 902998154 511868280 746419666 142166335 374691500 861086705 914894572 303194467 978114741 307193651 839059768 991840296 993710947 682138029 817618012 7572652 894722373 237123064 962225352 60803379 65630946 88045841 807940036 491923988 873513412 179739686 514779497 375886550 829944547 447533174 523024093 781527276 812835476 345623228 989053686 500936244 928410355 66740422 101108706 199365205 483252085 851090562 904600714 897859184 938035515 242303730 517990648 413782307 660812524 669936884 995663373 895071601 904149554 41685096 220309249 94688672 764978528 268075804 782721354 703203440 981298166 493986485 925672043 886917662 931816114 717018098 928567864 283294333 575355289 214118886 840459272 880849585 942352812 266255989 992021936 327914822 983396336 768024175 982928696 184292344 476110663 833344528 867169913 652972856 863289419 207540051 974955596 678627119 695368975 401531203 994012956 536951028 998972315 768480797 944036671 24590933 88844913 421088481 589182051 101524730 592031403 811216928 828225442 341404184 361570692 514982507 626789100 443798631 901717306 776227099 922870281 653857822 989545806 395453389 648686518 849770891 993825378 109757142 909535815 181151098 281504639 849091271 907370093 615469414 850053539 745196356 849880878 746847077 795106458 594241397 761724453 868581663 893243259 865478592 881917470 143206210 594858723 201564571 430343596 429374155 642447946 661881721 797901925 654229471 966961097 763725820 938579204 905945878 972860864 301985209 570417176 165812287 913663038 820159450 872449283 40921104 99266771 160627941 987798416 139167105 712976688 575933057 739013915 666805677 848901572 691037365 872549302 984492882 984502261 52333994 631895433 580206796 933981665 696447365 839154547 582807404 735332944 456115925 519291448 4471456 219243666 699768441 868048865 790521075 906741822 534742125 808525671 45341257 748423226 664715446 725505742 592564144 959662759 608120749 854176091 815388089 963881872 736871200 945364383 26092183 946678595 175554528 175596287 497594689 649062737 362175250 446292559 319152018 364173047 942298709 985048868 586116572 813165441 129994003 222154781 325482417 449687534 492962346 600648826 578150195 898666451 857326950 859809970 954175088 978417997 940238434 973474685 107114834 624559870 951862 408502412 985145268 987602038 317206746 597710088 830737248 947187547 423943176 802473699 785607839 800563269 375353507 996387131 774531627 889078046 899629167 913759842 426971369 997988762 258760546 417886084 254345164 697139184 146267567 619403901 26827978 338033779 446158380 801791478 231669626 258110341 646408365 861119285 336468449 759622482 284633942 730183830 860484789 898613302 187602164 426633719 132092048 439684457 170720955 789473549 584549749 655650888 751120171 913709538 581204946 982726779 854736261 960339025 306998489 636940877 985948546 991434850 825074569 964659321 441514194 971813030 37711298 54592972 861312611 906611062 779210418 843006751 943053139 988781052 699387811 794343181 406033018 847137957 455702449 954326898 420116631 577197587 491154206 973477296 694212047 941286408 917931460 980869124 978009048 997789264 418977752 850090081 768804461 946348038 534222872 976870963 697937519 814872346 550856434 959149154 808423486 821040256 139182503 249247622 429951634 902417248 824347255 854986122 658853685 866228987 15134739 459637672 64959845 682996749 376673462 444501189 110207228 870621018 267133618 630699515 824806118 977765367 948504086 978009028 984307420 990739930 480175245 685930789 333499954 525114437 595297942 732895367 446969970 781201622 149644156 787178898 895984950 933621516 989124350 989158586 72949205 767701694 236939037 639344413 97476839 526029251 260340887 389210514 701065607 889931997 685155943 846008814 469755594 861687214 119830127 539588909 396529739 430152883 351625402 510650244 914341697 915679951 290515612 559163967 991860444 993691971 343148300 876271341 942879035 991868758 274797615 357565115 989523880 998641551 787203494 927020291 930092374 967464893 264818901 780398333 832269151 909555407 429822208 809774374 297113530 819514249 599747358 933440081 262131960 278525869 187353466 998464369 579100890 603351318 709240518 969380248 709117658 993043993 2087763 830841371 303186571 311545989 770848780 935509532 621458660 669095203 512371694 752465067 566763591 727203596 236940311 386580962 417686045 782807461 469883607 973620756 468910875 651929819 320381255 718389475 428669901 941336982 161337542 510318123 582434574 669964465 227906127 598887608 110143767 364742951 588211174 824907619 987651372 996041302 56506453 218485301 631070315 780792410 300825169 744183037 231163485 815060707 470568906 644260053 176107693 751470941 482165938 985448550 724842724 963598385 453693808 454424465 927218203 970752762 349601625 797342529 581748666 854966036 55989418 388087109 708092568 761336922 395066918 420912298 679442852 828652057 416140765 918184810 564319030 853295332 922753888 988267230 981814470 990534084 728606847 975812705 955881758 974348300 793768551 969199342 889941156 989099767 690655027 830363469 613573299 788130342 444300009 990223260 124751694 966514480 772594403 896336782 490113573 956062108 313451117 641361028 484249074 650424618 358947308 803752563 515190164 982192288 984717681 997793258 619648411 806101528 255601719 590871452 356887213 527782625 927042840 973252460 4599156 234004286 432757045 518715479 466141064 650055046 890223003 939494845 140404338 398215348 671884942 931641267 734429705 790417132 800280128 993332658 303811432 786226997 446388580 745269249 907292207 966030550 780093217 895555961 428494921 683855143 792057909 996937553 699135345 751807615 837201957 921039626 145922217 469841978 435227994 613994499 101689353 256103552 344954955 530265335 361690733 690597607 225733742 614477888 87017239 527997632 984847349 990906641 250105472 523329934 716994829 829844431 611834677 894376663 463875455 859985074 255163741 663083366 756232314 979609897 447926125 882045637 332621760 610409112 12193250 831036264 771456943 906360097 176791764 424899909 18321844 989785041 186416800 985432324 949601963 969378250 748225365 800137600 684999171 824325964 797300110 874178681 883706507 885683511 862801427 883289761 182428377 214509463 306800993 964905656 263377919 516596588 975575772 981793051 600262282 958131961 631372751 721204239 459832193 609316669 23260460 380463708 16822871 458483157 990434925 993138620 837599864 972964327 23332377 331397825 419866304 898538033 243641331 708348955 130815619 229332728 662210026 733067327 724937130 746485855 318548267 410752707 432406968 454509142 578914762 770880660 536977244 930110331 243611937 626010153 594552650 717030824 367415999 663199932 292555825 722280016 560065632 654506860 412708091 937217604 519946204 993196673 785838249 906383627 994171866 998054355 332813224 867679187 269664531 396099346 42011912 751449696 832400363 884311741 260468761 428119644 523698317 604217198 685422900 783975044 311358633 546933726 367718994 801090018 763504775 774847226 607511620 896007767 826909830 938909564 78676629 190954645 840403945 976595763 39800879 985793781 827299729 940786689 919642315 940610530 208782137 251728731 38656778 815887118 293075515 745130735 828656756 921499105 683430371 807838489 709785220 864271010 603598635 749725679 586350528 880562304 101114547 385987862 520291367 730828326 947900683 952446760 360641249 900198856 781934705 889661061 390187071 778717927 207085043 890980056 639898024 938051823 941202714 999339963 805839725 898006295 77012011 958133702 536316702 608738991 632413029 748114303 225264748 492828009 621249438 655848387 477454029 535106550 828830582 896131944 272248851 296179511 528184866 961647854 782988967 921013520 697845245 983635316 811498732 853001639 535482026 759203066 569366548 744597947 697130957 983292306 705576618 934262646 916410210 950129588 399907049 954007445 687201971 887061268 438100437 763306299 564895011 982058866 973526304 980612255 138147716 439716490 339420259 883640374 930880022 971723686 647774339 861799312 448828810 640984039 244793405 434337642 286483238 630825363 979244752 991566347 699959575 991649739 378546488 664488310 688992311 709990310 703615109 928020524 282117030 425071492 998800360 998873311 578112178 845651072 632912241 773177301 179613247 406529208 204011507 801589089 239346246 839543385 681499918 959735656 367877614 744261834 913992205 931929097 98158656 447565711 27592232 203005065 256252635 437518556 789017124 943938739 217854104 226454501 584356140 588840492 63609632 201991758 656083654 844237539 235543678 557204882 730393108 968820345 216995105 572471566 550734470 561784541 867755094 889540323 721483381 981633494 185010680 778760872 850506211 930041431 713424418 721010168 180845329 460746942 243896370 693229152 417388097 623440641 48582067 424084593 181756953 309875883 108818004 766286879 733938229 807014268 553100593 656691850 9277768 746080884 86694072 447938437 876346365 966490331 179501697 523227447 629570855 989319562 283393626 611932077 700181365 929199505 701490505 803179824 903606469 927929472 193988960 692340701 620707599 730453437 825836388 916632007 694460206 891894223 189136961 972389125 252591948 608083401 698387984 944693787 200415577 778298637 493679354 723204514 727778645 892776236 734685190 793542298 960125228 998258934 504794004 908018456 595560894 804437895 104594794 196209273 595530381 991166130 253779788 319962268 806134230 942620226 603739827 929485682 344544248 539291438 695108493 808685375 990540695 998729897 746106983 982521132 832600547 923287075 998925871 999348364 26591429 715283327 530352404 951798676 959309472 960440033 643154715 718710211 9126951 657254100 449828963 607234014 110306135 667645285 1865231 185010194 758276880 814481547 149206447 595932373 273070622 917114419 646001066 727258238 482000934 801213148 362902684 750711080 234748199 793901470 608105020 889426309 533322107 977697850 464540861 851401293 450775831 714760047 178116243 746561406 869682481 891011320 287328183 731579369 280161529 642302586 180370738 669693173 713017958 834484853 742606256 777086037 915565832 994335914 268659818 905922716 87095706 598021044 489717406 944327886 158692842 319321201 83498055 343010297 852846838 860795915 411940792 525902733 737044705 828599106 403407010 564389570 1003732 466100135 475314686 879214650 168923913 224306433 189971407 267569515 893589730 908618968 827546766 890060914 771240976 799292034 417291558 748885189 672635127 763694239 289700513 816201734 293755532 929320150 572439776 700702679 786242308 859495973 492478753 993432414 374909769 456707086 451800606 903594607 879641501 897303709 595261691 703428655 267939348 774985269 630436785 757086282 210293753 839079452 915912639 949306219 219074165 340393690 727723610 763803981 174412558 687692147 873247587 929580544 895021242 913891339 698181595 879766924 989804945 996612431 689251450 956164091 979342097 983400353 698156489 773600571 64582583 645542859 183439371 878615243 886863726 997725477 42406620 218518299 236859569 351041038 468926490 534721881 5157113 176842834 171637455 389327447 741589863 896198242 241431114 277792991 280880438 846256003 348727368 990237642 448271229 518517151 46127856 436525229 405525410 941831762 470625618 929909297 28877228 568651451 882320754 955659370 410326887 434009733 832028264 966801599 169524275 290916182 350555551 798785632 727696233 935628807 149118356 587678432 233267815 886289111 641821274 743959923 918943539 933378255 568305289 894220281 456641293 717070209 913184794 959320345 723792728 888919129 774680083 971070382 181180869 544204316 74262621 645580741 128425914 129672531 310332597 515267300 737056013 993344787 390173542 510975684 76777355 847419582 981867067 994156419 609371761 783902862 6349407 232749040 80681061 218438858 501554633 650566820 116896600 220889084 134692447 546017677 671355014 712036384 994833119 997499778 903954223 988076879 745959736 766047013 844922908 868721482 848284756 996132826 473658854 523953818 476330838 689604349 414184723 851856910 80655757 885641017 896346326 945580380 447014960 837506575 603611819 916342245 223384673 700935499 264117283 858481111 793110593 959161781 915317796 985541711 327889098 916350394 243333161 374439855 984459000 993941528 485421605 845074479 546771155 751127137 714724331 957363908 87116721 254605970 756000798 922582782 260043201 575304968 470929165 901007986 625253041 929146539 371013649 596496236 232206700 552756522 554498393 783811864 556983768 811751710 756460372 758631725 621409348 668220433 927635034 935305691 739871757 774689988 980811717 989274632 748904823 903172930 789056636 871224390 239992814 465460541 287273357 597570086 27825423 631090154 661033064 886847295 897596891 905318102 11385296 257939530 701249096 864123153 218035845 520327824 755703876 928794731 705119591 738346287 873160568 977134200 13121548 206062525 845342760 976115697 40703126 114400059 660374150 744664187 129860784 726889076 681619612 741682123 598599227 702853366 94471527 626929046 189897834 353637614 100045935 951049023 93090368 636290975 827838502 852916481 895421910 951207602 732940506 915238285 981288017 994187895 253094800 569238872 603677561 731159395 171911221 727429183 65837279 619802877 258102634 561438420 31868482 383503164 554383192 819237083 823053954 940483020 618705439 807827063 163614208 576590431 121170234 985324053 369281307 951603198 640051848 951926425 558667861 682670201 551776883 878172433 127361968 546823565 297395040 709350225 215326815 411021868 717824758 865855022 1703804 675270091 424795742 995700664 19172233 505189509 60744390 515908732 230499098 257360788 596842977 680029688 371312904 690140701 471320894 541204856 802174467 812637819 179386687 407412635 209483538 817043155 964638187 977359805 652009657 789687426 755534833 829968360 696615967 962575261 816961811 848667543 923401639 977292518 146601111 657149032 547621495 859691111 616627894 741376052 505224653 633639750 961649129 990210594 963660660 983766060 784728620 785224527 712702937 972121087 570895189 712282651 593092399 950111072 731987776 863074930 570155224 623277504 167046222 173115681 217104068 591400411 24796949 437107392 198171562 374652784 848803126 987697553 138113996 139488517 386273178 562286491 640474100 965922536 951957595 961443730 276497930 293247702 859411758 991588115 391575868 808390329 428408225 806596905 4428873 343872067 37703470 46819667 457260050 824499713 854873678 920313615 823314512 840894017 447648473 732864179 546262023 590722341 220626181 812033490 979052018 994869693 26020333 339921240 405892441 435998729 640469700 957421959 463865960 797765141 239176054 694559612 968204519 996419914 648036313 859149743 506022611 567291713 375178914 569883720 95490726 234246578 865819126 943699922 209601790 784386155 904587287 950381091 890203615 981207328 984518318 985316569 225368297 729142382 323312496 585611641 597949217 791198722 698681215 722211326 140851956 665964464 923746847 979063701 936830876 969019750 830390062 832034238 287129742 425354714 153524199 728193759 745374868 875965796 137120648 442196933 647434007 949862048 389620981 598437378 215310575 782462127 664923471 934314047 250330442 271746019 308303691 801468786 551459158 684232649 300310683 349985050 855295882 899235383 960032325 998975319 612303520 767680591 937193002 946598621 938963794 949730635 75780208 408769572 552404210 612649024 624896743 869619171 695220645 779021578 844707243 882357637 424392549 480124176 307468568 747219702 488151639 994359566 236811200 735740253 399057002 693892007 845605010 920356902 788330228 901664520 453509693 533453529 816006221 920303636 555086905 959156312 583082597 660071314 217638729 528978934 479542104 813474565 878424453 912375187 749170448 821356075 869520155 898763727 476255651 795276760 476131086 946278208 494797230 573513096 680255978 856847236 937956395 985171078 45944823 735247348 99246344 863441645 745028855 798834423 200317322 845817344 947322526 973061647 566788506 616530572 424647017 794747693 507661139 935218808 961964315 965149638 972506655 992374385 905339857 971091152 708846788 823876431 54575531 480272095 88047946 336223203 163325132 560883029 646854570 978815116 637851888 944641644 888317717 917264409 714126182 801437282 910836272 997829382 744520211 855911881 354359189 749847091 866152430 884474146 436721899 888327344 42341033 44516188 789122861 836390458 527258010 879438783 804415132 917615531 846480694 932148978 747181195 903805133 572740060 672681033 583042973 942939676 302165251 554099634 213981343 994738278 347921490 720752424 440851626 564895805 993435432 998270124 895603170 920649401 217610075 398741971 475920299 521519228 273817855 584767740 185674350 549387848 543556085 838930569 267833732 938537894 919808988 979621050 116841415 613370254 127242114 139387730 930536664 983367135 679090703 928352609 715918954 724192692 975332250 996952374 408784065 812675295 664084228 867891016 182756217 993793854 53988657 734130611 50683037 649354233 564494637 588957491 138222896 638995422 642802074 885204601 367329262 873538009 222017648 596710523 822945439 991286475 94856356 808332469 969782960 978149324 290423008 922491322 194209590 441608945 239176654 358885883 836685862 851233269 944384581 963623520 756065243 787298172 468004010 486295016 264413384 645362228 608283788 696856687 879846651 888777719 766855071 963641680 762159951 909098362 689248640 988000000 206607368 496619211 624126907 745910460 956022457 966775134 980163820 992783463 208245540 861736305 960227803 965338821 331505364 693915034 265252877 799516866 953824192 994856526 724412066 871992024 627412670 847822864 101567501 576128779 578234923 949626500 881401120 966918707 349041006 825434326 936427841 996042906 259064216 305969226 767858909 800617590 810637002 951575867 449959038 908825749 30653814 262575803 434626704 908629024 120662284 959290476 400657615 851375091 194764483 906488065 942153805 980404364 774574647 869613212 693087857 792136779 562219919 887674204 322566344 568542702 187495906 944252845 99052715 455064791 706134293 803404606 187927500 753622596 670581846 809789325 412731300 958272725 563359888 833646090 883974334 957885014 769981734 877879687 750650069 795281255 268929976 620172665 735602056 977473201 634975722 695958796 265384897 868906254 129616631 391118740 112293800 356628248 441222699 698523304 935839234 940570130 592060323 860293370 302620729 903253593 13175333 168756918 144691096 742046552 449108367 593958628 61807025 494198417 601550868 997083202 704628625 974946007 675835436 834263191 485808488 672926112 488825047 788080246 113368438 886288158 845388999 913791090 262026874 846092935 774190804 788153849 223427453 865707903 69609259 418177316 67395452 437636385 484463367 587086913 793222716 906107181 43821160 109482676 500038720 829962081 812359407 998318956 754857756 927629481 458440829 498010135 702413398 781095953 523725791 591757554 986809812 992266962 823285806 947202796 807764945 881760794 966043930 991298404 714727555 853617289 365007030 773390646 463187418 492128060 316078462 746465094 893324977 962509077 752792436 817727392 307544694 498490775 951653075 956311141 309996681 920997797 718441844 932950343 256284808 880413334 176251409 748105112 77983627 103478427 620494124 936110016 357540466 633850536 56632591 744967933 471575265 530530141 167042386 201247471 702916698 824173110 530073297 761117330 654839181 901423163 515775948 997838261 286080082 335033705 795956484 798883773 836288028 863129379 234009580 935620249 907540219 985996377 259050679 272392036 407210946 611764651 126285850 630677381 510149988 751297341 70873346 522361771 243699084 867304381 749440626 900216028 549405157 553798317 364690734 589136540 787903522 922743262 715983149 919060896 383015269 476343951 787624208 889275028 734308114 781752311 513290819 971098456 250069130 522995302 397216345 712144059 509881390 724655023 780680484 786432591 540045460 888669518 661952068 773985111 951449943 958136619 759732180 878372400 959902111 964443054 729369135 875080522 925004359 945494450 430607194 819220187 197826771 934029526 409778636 599326017 479394667 712338320 196299544 386296836 950773765 994645623 163037251 235535650 886587563 993867676 656054006 778356430 292564272 772876617 971125237 975784949 52095482 190863689 700105639 818938663 575710654 587409850 144359748 677998591 565825128 979126648 702950214 894897000 183585592 853583678 64071200 160870372 680848301 691533888 295730446 535333469 75533538 992372105 521026143 915952000 633688420 759178609 83762675 213964986 392732730 457877052 937769795 973540909 739020941 815408354 317952577 339310681 810320615 900915530 108090011 936526412 709421683 856059266 409185728 530139926 838859432 946825030 266879532 755304936 262430281 448064026 889466501 926612760 282601669 699698240 920155188 927178072 822433089 984545151 699806252 902098308 790832768 804860793 242873602 724633648 21819063 115674015 371549557 958819829 214105833 856924081 629708496 788523100 59945497 809465938 879986221 921221345 979210997 983732581 892194839 979505439 192185087 787241117 406365483 589801161 798562868 915643024 891941290 948670376 176478689 915301908 729019729 804537388 820839670 956595970 386273321 913966832 36512409 590430071 660175567 768430186 21044507 625053603 886280145 889086463 249266738 575939185 961188707 965758865 326962645 688525063 989620984 994204657 76992632 216169647 756723681 881011778 935562935 989546500 187447138 560033681 291953690 585114917 713404262 838159998 399483436 483608946 500863361 841210199 477722354 865533790 803546112 925281352 295262518 440010727 160082309 387538811 178431345 235755003 17804962 777796618 897114149 979572323 136794206 225197886 246193523 289747613 935260430 953756998 33465055 657902120 346746005 409955640 915234579 944493547 461836138 642370138 105555899 898765623 389506652 796471374 612674071 989244745 741032060 821854007 555435989 936000347 830413851 988107133 521978767 666907885 297791990 874050988 376763776 633289496 307440091 829920311 58198661 159177366 63812416 710612851 341861168 494398074 881941689 915695270 627887058 760028230 263621011 531656349 983359246 997333136 316145540 930818479 263960715 936531386 579651325 880014732 16348714 502917700 368522748 946553407 679229716 755752553 502496366 582392598 550767623 625392768 361448574 619581458 972117007 989871954 855624747 961613782 378824560 970631126 643095465 765307648 797346124 877684630 368024847 814847738 191909437 988264651 907804059 981727652 972648348 989260507 454249018 994492828 265324386 656873158 747880661 784789279 690010510 918999071 557770405 726684971 201759187 257082584 806505903 900900240 966415631 980117972 654323577 824509669 557705171 872346574 60214897 339952979 238975145 352798712 314492208 372824225 901136521 975759898 69357533 974054337 124813546 329134206 513152683 870207136 872490665 977486889 281618024 946024121 330725767 698688176 838222408 880429748 716255034 973346865 492557721 856674108 129319289 181833807 536882443 704491060 599880068 793521503 772228314 903410834 350990938 384277810 671888187 789319571 87384050 928234077 865655709 926591473 346815332 622137516 157963397 631315944 853371911 935095998 651436947 896381228 433700161 950188693 1626234 459124273 689423414 941183924 67646051 886456880 347633062 348303353 839031540 985872703 346934515 712542820 993462548 998384471 743099525 785274519 754692341 849748310 529267144 835117324 159290602 464749908 331762270 500145191 441804605 656512779 311868953 402234776 725096014 870382244 358206116 447273445 225170322 805054341 95872312 229351440 5190969 202469155 685863685 707236127 858024747 989051394 469611670 677848370 908457357 967267248 621822550 825201073 706973513 905019691 856170730 890318022 807634292 829172141 649402648 723441533 106291433 215921085 985139897 986768943 544837999 689200850 424345393 754788928 34853537 357210167 72204414 192402878 846220179 872729673 677700626 794201756 31647083 89031700 52986932 174061801 517707435 978819310 26337548 284875038 500258524 661584411 436507367 468757475 851714092 851973745 360507549 910931105 601729999 847098735 791450942 890626645 452376617 944581315 815070410 992228520 724598844 923301841 571692028 889919718 434725402 709960240 506140301 545192985 75278547 221497199 211473846 792183026 702618179 809966804 924487214 988193330 571349534 625942101 706522083 792221215 882102188 917989874 873849183 976989794 39140617 450898789 114430484 284443762 655677002 677495348 35543088 514372130 548190428 657434128 891081300 900798373 808637900 986887153 137913627 615075712 768724059 909574755 752865105 993080093 718936851 875228945 597473192 767126448 418730309 502804098 611336003 814889129 476367009 803612457 641318640 672523623 549238141 779542747 344154213 829899917 549787006 654324057 682456817 855435281 514879302 938675281 593222375 748215453 464798744 767847591 962170802 970650706 820684431 825268325 491392091 850933283 955252388 968376522 895035274 928579986 594665214 648506887 401668331 598460445 269369103 623838759 962175642 988125223 493298775 733739369 696229652 971812202 220641269 834273145 398362917 976623422 295306038 796897902 387611808 637381477 974308146 996171987 888966136 944794777 151469431 574176372 997377321 997738983 820630069 971641380 701015036 971214501 191698932 719986148 952205680 958577438 297787589 789736325 222079166 985132987 77064323 91579036 837137324 901394661 643518207 762564092 486414204 944758337 419396961 868156327 94445677 932617866 855850276 856960432 245158120 988867456 678799349 769770002 401485329 479888807 811216511 987026355 179456308 861249343 425009531 935245993 682287391 993336702 635509695 858107427 723042867 735255689 498066298 661211482 690926664 997194077 680028023 979004045 787714656 944810592 114451363 596647685 22024462 849329743 425099109 801443809 228395974 659033241 617269529 811716066 915547355 938184835 217522657 881779130 281546710 936513070 478145498 788917900 908434628 925488789 213803334 386047648 245116886 862788009 612489816 985131158 407034603 740468280 482453959 519136262 390423319 503856835 747085448 904328461 214073374 661220855 797487608 861013059 200932189 742570436 805763794 828377843 835911134 991950145 428781204 524676664 839232788 993334705 25018282 914572621 879203536 988924686 89175144 497066350 925132477 971837239 601341777 849471069 898031651 932393411 573640310 940808440 166636755 956945277 995172272 996510698 117045937 890889652 377981675 419925440 146350140 626525608 367996747 789775705 116634657 998953129 35110271 378159078 468101599 629095483 676456650 936299717 772907721 946258318 998653700 999172287 998648936 998985167 152752611 575235822 140175775 755530374 706766015 938705599 33843747 945443958 876226546 933150734 624046886 862200707 122017517 242040531 935082356 993471692 866139537 866624289 186033865 365020630 395571618 670868698 981877223 985395462 263984664 999349616 677931020 717565597 975143021 981530027 469805357 651609506 24987641 544947369 211349025 299720220 255380221 302245823 990859237 998620019 115618150 308009779 766917865 829927908 650882901 860152141 707999784 984880953 192589230 243979842 299451521 683453545 109248726 787502746 326214735 607215091 290542518 930219831 281361521 584047457 903060417 998172613 387917009 645629155 760108789 946112637 509639211 877533584 610477827 921348792 252995156 270544302 899753231 967008707 620152097 683397676 760555544 868126192 943194858 985641847 958910268 989658071 979169982 996905444 772841839 940867925 363497827 745857830 219398280 959464200 892794893 949388868 264489961 688963627 204173508 679897630 667894546 962401278 102799846 964854204 568114227 609834755 470796818 821476413 82862250 905864985 488026294 958838640 546151195 628044552 991155691 996067764 839712720 851863121 394260913 696721975 268023176 649339332 300719275 517518077 977234088 979299877 923267810 949169304 925599651 934904469 142995125 285077813 875687043 946655948 839900079 926827431 488524097 733441385 361409553 850449288 245274878 664423885 205002747 892503067 762081025 821970314 905799502 943824496 10481457 571704539 662589656 846296513 48035523 550062037 667874295 774859335 790180335 799323521 573830740 817018111 295712623 335784840 845638229 850326415 782893066 839123210 775900275 839306037 90564128 711440055 515503185 988872630 11986445 132002167 639997444 678345514 630467656 798255784 127237340 886081300 582228617 677633168 184103629 244051535 915568597 945799954 170476548 577534430 295893857 383297262 670887685 879795536 720373560 870511566 696456363 866735494 518086375 593701135 465665996 539192291 513639509 522551265 553222050 964662175 272275212 400743754 16996556 130161421 323917866 416534653 559590882 625836833 213104038 857277871 678018211 808932890 743501103 839497794 668963926 860811441 883766298 915445931 644875897 781821904 367286433 464889767 440255517 539539360 304016210 862097746 956277400 978134967 729861630 944130977 922570627 991602959 489587143 952765739 992058644 992734367 182545935 679123038 191012820 470632231 789632804 792628177 732745291 897773063 575799760 661075039 311905628 996497698 472962749 969044372 776298064 992320048 751710059 754598191 635628022 831950160 143246220 633704341 228251129 745607478 25701692 421015694 733934505 828082233 49677473 74352615 754769691 785636431 782876352 843564650 427620685 685084872 13095246 370803626 13795915 307637114 384463902 944063148 948154406 971562212 139017216 305363194 398679415 399681152 989264031 990433353 825806305 999247011 380215028 887554598 862843329 955589560 433516565 541918088 754829113 808884643 658150786 869672137 844847718 847135602 820248152 873228991 602702232 817473830 422637229 974215831 841031234 902398585 594401389 698743247 657375075 746059318 399734600 670891994 906232714 919231195 933417799 985729862 275334397 721244383 907144883 983077761 662156761 780239691 472195474 639639232 572537058 616016741 240759197 298070925 131065337 924265678 921180958 934721462 663907733 890617157 864942247 986145995 743388830 807477126 248036014 591989831 69758284 527552947 118024441 751130557 531065551 864566699 522574502 918674428 884257884 991175104 610651153 641528968 68352143 284366709 333710946 971585671 526545071 560617237 960488572 989463650 913443406 931117201 597099325 943316234 327701643 883519211 695340366 953548409 359670823 774667490 993415855 995001218 198705900 842029541 58272371 280749356 908578789 935323490 91397402 972949058 784381454 852888842 790279718 897175770 341504326 797489623 699336326 747748459 394613397 946559018 598572319 956988088 892640874 905590210 302830239 992166893 111155069 500742517 955571105 990521193 43764134 811849619 63212244 311303060 923130269 949040959 907848611 955167129 949025478 988087154 632629424 819011994 895159527 952232543 289865668 918719008 971154361 996319789 146772368 714417213 462140037 714170661 893529061 962575547 987863940 993514440 426394952 850530370 537240278 711802811 84416524 202523826 275283586 570840607 629873880 630387796 959737369 963760975 751391906 755420438 397858855 750379483 198048591 300573105 159150628 830583064 672038298 773036556 57870831 366331125 867212830 946412151 863107026 904215430 280738234 532585468 907003901 910109764 794651708 854688083 235010641 800124457 934566546 957436526 786669334 981954967 201130884 501774883 260711414 657628331 199900273 569971974 11454778 170314536 212317867 861399227 292396988 784277519 457900330 624960393 134148214 769762764 349499291 386364019 987930413 994851400 817473584 866441302 490148185 738552896 778979102 885042057 19482795 921145711 251601676 268166967 767182155 779227971 985775013 988958975 321519766 370870794 33492884 410719423 413115436 509616937 399609167 554312080 828728197 904395488 211088943 503441173 786166574 848595612 239859916 470467829 725146229 782211873 41448915 173485823 616521792 959746556 721137055 801362953 192501961 674991618 409532483 918028652 288981822 553825062 643664698 944393758 875781492 952281005 453919629 654768909 610512007 654818907 750446842 979498565 409532544 459158201 66714441 88230335 839065995 924637221 263668386 417948787 43538809 576646575 418402634 731702750 164880260 679061009 829413367 900146363 835721918 971064729 360836764 431584995 622122730 825202290 142896825 679971281 689311286 964388417 250687311 318322701 121996590 934875581 121450522 444979117 561089807 882872015 711010230 839376718 490991054 825116211 370492927 398018108 169385111 948498105 276190735 284344491 428366337 622563831 339996763 909421147 843207097 897797382 517022791 998357424 622498662 859301446 177413526 382022819 38162690 395604666 102838142 933074776 469901793 896389362 908928354 931862767 40286628 769816395 288977199 390706519 401895718 645130098 549885863 796862926 264221849 925255287 338566847 989871600 960701953 962988057 727727716 934874473 111396627 667809298 658357035 998293594 313699921 882375551 858200185 962508348 608901306 699422547 780392697 798226740 619678878 744713100 672922057 722227459 385860740 682886239 116585047 359058066 585003793 769624672 474838217 673749977 743528592 745767892 342207474 689898388 222598443 423673180 277896687 782131341 71790236 123277774 808626040 837880555 342700213 579661271 34958569 266279197 436131612 733519438 99743531 364343969 309049007 817846831 380313541 793737139 38477887 833142211 991494229 991633439 482840633 866486173 658692399 926782270 507253284 541170569 931015070 961014937 351423838 423933487 535070756 772575952 307685423 481047932 400737853 559745680 49624752 463974436 901225604 913158237 762473982 944111723 742489789 928386540 570035707 589865058 583542881 864864076 90407935 906533590 697715038 990348821 441954202 801216502 67457716 321907492 951778509 983088053 207599363 670093841 736781361 941525438 492868593 909736515 932853382 966647872 186827159 945252103 630987200 782489410 722833960 960010439 202730427 483774219 105124840 299818246 540237421 562960954 702119380 759654363 922940044 942109518 515144855 862946623 601638414 875473708 435426292 915722231 496549186 558640200 787923281 931466985 530546850 757825365 299130813 697850968 926326504 981026006 916096976 928571835 136538174 748481993 952148956 971546031 815478743 889647879 660017708 906426771 919691528 964401431 171772867 425229866 315997644 775689709 608614750 817177687 421403148 988133487 632004667 638218373 244908310 356730369 39111194 291411615 457857409 744882402 224429493 602430595 296833073 764036588 217908086 949449458 35753693 111601490 135625257 954879767 819789084 848718661 988961406 997174002 169994490 688950140 805873948 989239383 55086075 843964963 949916425 985851409 708505505 962528357 545578033 880711482 438113655 534775829 303297342 355394124 114269997 372413608 753905162 790121867 967826525 975715957 154031624 965876590 230414409 960815492 75053949 424451885 355955629 460739010 175534172 994157914 95187606 505955891 578650667 970851575 324619363 840289656 776996443 951763435 345054853 424546217 484821125 574946465 276680856 641995779 696475028 922558529 185734727 817594717 89943836 152694222 514812150 640862973 292083855 878960910 955108392 955957476 543620213 992574331 817379050 824507738 832838660 902814237 115819872 999250433 111581794 221950633 131218654 775020851 693387741 925800351 824898698 959281077 677146263 684811209 79007774 847530246 880856666 903483648 126472573 365305311 128101938 710400675 611690515 921278517 316124734 779680817 771624840 830917121 741237624 934977525 786546999 920019973 312819666 511685318 69145233 291636275 834712189 980160360 241983185 397480677 49164785 123168037 809923767 906651063 500837655 983491690 916500292 933938444 605629840 851627974 977941588 993038325 106244632 781867427 277899269 478950483 80629816 315756296 133415482 990828708 317104014 595829407 157133201 233199107 172816202 761358536 10719737 951686729 209451804 881761941 150788081 256390884 795816333 833359789 196418669 892477115 302208932 699143007 199529366 407930453 596480702 821497504 878659753 945717346 732023416 855143126 595699402 702666781 317869487 733946009 914015900 960528747 542151525 584555580 957984122 972361296 809525053 839539331 154469239 417533840 987582419 997229919 473322562 584461894 282168772 670212011 637183931 718146520 704945742 795036366 40719437 950433216 309608385 676216991 151282351 959434424 69469502 441886279 277759159 927926299 100276850 943034133 385020963 672239668 795287028 981252695 353473061 478523709 496692126 684143445 973917660 984693784 610986582 665333495 112676606 357725389 309526711 363884623 279205720 980346273 541708092 732170837 854708940 984806443 745009994 962070925 565509259 656156643 120676966 398088803 593254193 983939337 205438193 486656187 17193222 803893811 954016676 986923724 950062812 979501648 18885323 908435351 589654169 615962901 653868669 802036471 475867829 599679152 912647189 919737265 669158816 817352992 896055004 992239833 286445152 766419505 776548607 989303388 153210151 569842217 863653235 886232031 737516431 851427155 907905756 959806218 105187340 490536877 246986379 953095342 577462225 871424813 887792815 958675865 214515068 674995592 437099881 760059238 388668993 782726083 315480502 323062810 904320520 963020374 9068512 659144582 259589841 568756418 740928605 911057656 983339951 989943388 369576255 743508365 867277369 943314903 178017837 249914357 284395317 909045056 361583076 862955065 742422814 794804786 461856080 644903042 884260891 925373133 85246682 939262337 880583406 994058945 309990887 529315337 131167947 332337742 71901738 941395578 128977435 214720524 689738448 724709600 877484227 918254605 843111291 886449260 964018900 991792243 44680285 560434390 237146894 654276015 408115904 677638138 762932747 917043013 578114866 925792982 377773803 392420983 12990990 414746227 160556540 495481094 644439306 826486071 334652258 384717832 394682846 903526213 656423446 677177424 232523467 467902070 205624315 455277364 46491248 77805048 492942269 752562845 496646741 887053966 705579153 759369977 447418126 538434121 541354674 783212112 647318958 939789015 35954560 332735997 423761031 819438235 426553447 883737015 724898532 852193086 245912101 468681908 727343174 892155103 63740460 895238519 714336144 905908660 622408375 829125766 935972863 937249033 842002158 914250282 33286613 268684828 988095633 991326193 693164632 752957722 782942576 832457674 205410949 535703269 703361039 966326638 182156117 865986393 767107753 815706140 13762785 136513729 480946517 990017271 911892775 956253753 738700689 948877782 174416529 331860615 294472166 500451987 496410204 818875895 269610617 395429205 522665514 939624586 835913684 847238290 386250441 720951699 581925430 925690634 572138481 614524686 901884456 952729100 688332088 705309238 230219950 284704459 974628007 986534955 288475304 367027027 622057131 806571192 647757718 900425443 650569882 707096486 19452576 853468870 417235123 575799657 918600440 973562279 636504888 768512634 72728455 983878140 828681503 931114262 972960864 983115942 819591581 918940423 906071404 932601384 65098653 521413863 916040612 950049926 698919173 707971933 243477996 325436486 818524310 956504839 584320901 627622372 212729423 680885282 632797781 656143072 671264505 756598269 965359166 972980848 716992965 831222435 615601181 882079680 134015347 724843088 366522478 451587874 283922450 666379885 676212078 893032731 725126698 807202708 703854360 752850609 851845781 905710566 41026973 629787469 951060295 977685941 277688352 730303152 830804036 906301713 574658267 995833619 795186693 984043119 722762198 932449574 429221092 747069409 840985037 856189561 588453481 780760975 755136939 784622662 413580242 816168144 277717251 738018893 982980163 993626561 844318650 886031999 411572674 960624706 699809046 712644467 542721551 581782529 69389851 309575054 97028537 279413873 401326670 603456727 700844347 790178745 538745771 757874378 660411315 959292069 531505197 795584993 594272996 763635572 673408421 764647783 469066870 726653333 105705178 927560397 733083215 896083691 483266022 799497274 601913863 716652783 456306 774921699 137490808 503319570 364401963 780085415 561828421 600537122 270967633 664935536 466166957 721327842 657353698 660318957 529989057 820223669 543098034 617205641 794220995 971470820 388361631 865903375 277016576 773506930 539482964 966209578 345962078 483204930 696865759 843962293 788100043 883991617 408487690 933723676 331577384 913604250 28301348 709849035 206909834 652466891 454585429 467452463 182337222 389540545 700702599 700715213 872339931 903584942 830853959 916701933 401424647 563384093 72823928 667143342 704602041 775523168 637189597 719811968 24402850 428267234 516874372 850257064 767933161 986648891 154916726 940679150 394424248 912716760 786838983 901357021 610874209 759423446 943898785 950737658 486456373 739833947 815265153 961269575 45502538 375433816 46977118 134004246 948487979 979635830 900713266 981685115 918108630 966586368 619268742 679538988 464671940 865126175 363332836 935318679 509310843 957191151 627921355 788679902 92450074 357191549 183570001 671276342 327488376 378067877 326261380 525053090 744060275 791678773 785834344 819381938 44397916 313280146 868036253 906702275 935348547 951135600 738181585 854874479 796612795 850982181 345299028 783692262 211462556 786580380 939854949 970489046 713790953 734574047 580876866 748588364 487774061 710533923 739168597 761636978 812094099 845183025 758774250 985717188 368077994 983361922 571928629 654886854 178445934 357200794 141174297 265186466 689475757 744138187 486210461 519551123 493709282 860445533 986811720 992298253 810663800 898354594 226071763 970597336 590058883 785093601 679215588 756981940 491027629 539859345 132393578 831870387 972941113 973651543 243204271 819781161 586302676 951509649 981011745 981440621 934996022 953712075 678615591 738278966 682961211 798204980 956440183 973511027 812470960 951117962 690266462 754035447 497362706 655908795 924830239 961585837 677666764 795150239 622648735 831587615 508919379 906027843 376439135 686474223 305173590 453377349 752567318 873205078 781023649 787913365 708020673 775142510 316869180 389391800 45902245 539842356 527559989 967502426 114299246 678820401 600774905 960385762 14166380 59463164 984233199 986393882 415153897 886980982 353927722 403165092 940551817 956494620 935652161 960199239 616600984 922501102 599493530 710566575 615674404 639181425 90462267 757981591 845876985 994920230 836695898 973848528 852369830 972127265 284640435 632869117 515385586 651255021 953466923 984219679 428673014 971804277 797312734 917701388 928372913 961681498 1081323 294182181 691352953 704788552 567874917 650682436 769109117 902970828 187817972 769755870 142664263 710253987 912233224 994134270 72864194 764793648 915006188 955340653 900958935 999036436 928222104 961450657 59580142 292620369 238841571 260771082 382777478 681622586 106912799 542653344 454277589 462037367 933326691 958152004 378264291 613711018 245349835 845133087 740143430 804799747 28079132 668801142 645746729 661346256 218934399 937855192 32467420 823606238 855026624 971442807 129262642 885140373 807135361 950118073 471450206 593460844 660174251 887446203 139186014 309322131 309727758 838781019 108794499 896467377 847667989 925256298 559101545 833499920 770821268 921062282 752033098 828664373 213855000 387201056 651755858 678082381 190858688 870378334 264505816 819915946 747758248 755419221 930948181 956902889 203122183 981311033 914899714 989145327 216605568 741388305 410110593 666237485 765975309 921140729 379725052 592530155 782522666 841881977 994850006 997101738 197088773 748708651 570176685 849679962 668722833 751258397 614293055 811577537 448858032 639181070 640844433 917292432 238648557 515837835 32795064 149768482 665373346 680827474 269640738 308616171 788542325 959505643 141231312 151924542 255031074 656036627 848305935 876380880 27291004 455224586 78695481 272938001 234380633 904274939 990060847 996664978 85447759 472724312 566376675 798279423 607487306 702056535 51912398 622715669 161061371 270034142 434355297 629034567 216653743 980237646 579808680 647678364 604319976 834242723 365276696 430497709 296454120 668268799 77998427 170816456 790372330 910606528 120385429 501081788 88501036 980573877 413066439 751935739 499084016 801835512 302383984 936405831 74547495 729689180 124003817 608811984 191928061 289142496 351840242 716146515 753645692 858529805 151949838 730464951 346997285 850272707 161009088 647812811 273057558 315594060 721769460 978485625 339366087 640882190 540836896 815643087 199079230 579190464 779820994 936219236 825674307 970099612 648500651 987116360 889620711 908127195 81316928 793310021 664921577 914417706 184065026 379899539 421568507 990363503 400682372 691043550 457423173 773094571 835013298 912064755 932705736 979001831 850034243 912103756 685193001 875088643 141141157 672761770 834788396 994766767 988665748 998257524 200766170 967455621 992846610 996667297 310525228 510585353 167219807 619010917 116284525 203129762 29246811 761399304 85743553 616239790 833215444 906153027 32642683 793099180 311607899 809712779 612245341 939141198 670628143 785581710 497720868 827388835 806407278 950336321 555091697 968161925 470468227 596044532 154958000 342421251 430001170 946519174 537803064 649739106 403528170 880208485 70931224 738318210 786112387 800995703 827605253 831678235 743738539 904248161 691345876 950397419 927519910 940080959 109101128 182826266 948076990 976243642 147618216 737232840 781320198 800328837 79451987 158480344 176207927 270475140 158066788 590117360 524584991 752547243 370127500 981103279 981324815 994302217 725633572 960165233 369833757 740816877 518291018 919065366 817883879 898105239 111692731 498093320 609235266 706207823 370174344 537180670 589712214 923068272 306087760 345706000 210588462 781356904 822070588 921658019 698460996 916539502 979724991 984039025 218930617 506230190 248240454 635902042 894457132 989322556 908176335 974938610 612289243 781899259 713944630 941098306 76391897 743652005 897577334 971610689 814932891 924887570 129579827 275840834 973224644 982844577 233629574 812154387 711920668 935524625 314363870 534525100 448730781 810303610 387820815 428601918 938034962 959749820 278417681 973258722 208618662 300981500 957057929 992636331 311378142 685760456 422863284 519553273 193598705 541703549 515001390 610105479 974703298 988622732 501787775 521582532 984903817 998706984 612450516 703146655 699964898 873502774 422899948 791132548 43732822 806362687 765213200 939624761 998163336 998376056 555991752 580597915 432712675 519570475 804242647 840296662 814792037 896630022 871600136 877530813 935173642 956580947 97466310 247359980 103632788 440516216 110013701 275141445 833298880 950369934 364678178 790455719 174322471 603735840 386903942 438828017 361725107 695328521 385336505 978068433 167353069 450596035 426459863 518860459 62755885 820075650 174996191 545171554 616049556 815829005 51767215 509667826 482881777 640985418 342894400 964969420 788725315 971863474 329427231 494750930 512460801 932095458 226817390 419449141 779972452 933183293 257797788 952082473 930949018 954484132 498414277 708790945 705910547 959167407 618884919 861321152 978177432 987866065 638162802 994173842 538851306 942637618 689229346 726713430 367266529 918273510 472171338 898485715 421753045 853981655 1866063 536945517 24653227 456085651 607801634 921552877 477993916 753960320 470551971 935969374 121050589 837018132 20786122 301152628 724100298 991368072 226874343 887975280 687461392 890953390 158346487 720979877 522378721 925649944 164798274 791880111 867180735 892038154 955783343 964262660 641491723 886338915 860666518 955532770 116255476 556198298 832155134 979829071 466919535 890682190 978870799 988826984 306863967 487306035 671030644 689218724 81547086 123900216 126080953 651603920 373181914 673497565 326240575 348507440 237300466 560512241 489881632 962569705 954445180 980872174 196179033 998866321 91956468 112926310 640584628 692158093 850309298 851623215 975563829 976259116 228029532 670638213 272662157 297952202 898085935 939360801 496919537 628431242 272769001 961920698 539105434 936111466 697267034 814508055 870716561 927511531 929740736 977352383 607112094 804797526 75320972 819588571 318081561 831379427 292527299 625930893 511626709 742686842 684978193 843254058 524852491 618916676 149092924 528475079 474205909 669606183 893860526 976669871 911567785 985157342 815560394 955932061 128564262 886592036 896474454 945602823 665447887 676316580 521689442 863625714 534236248 673169569 333560117 841685462 895201417 960835792 321231892 937422651 888425943 920013360 429502315 861622671 471483349 913987086 630415948 695196979 199400735 796510152 326165036 793106498 648926980 918899048 205102020 797426220 542334862 728131698 457408250 552912272 491038654 504663639 942620465 983019125 837139016 973811608 426723275 658107722 203110983 974925095 890145203 938446733 786878980 804069944 494339136 659500844 892244452 892745893 487714805 738369449 762711170 810965054 396656103 505959162 642569048 830753494 843027570 940770179 270413894 435481715 400586701 563391150 632713221 751278357 155108764 974600300 392949388 765384782 389979503 618684131 506394714 978494278 753722312 839376035 34224530 380528940 352990084 825279440 65270459 517508412 493171504 790572474 968451739 989128617 898173191 988306632 623185451 920999928 384420317 597182691 350668968 581111216 641204281 795420182 42297819 289851495 700861160 936601228 173153874 353719336 251926009 268838355 368786566 563111083 361428208 417320355 831995256 989541308 864092813 951250166 313153242 435136983 280750934 679962052 739968966 898149353 718132059 902410055 643072970 675804516 900550644 913608836 933242459 972148886 663077948 681776646 88736103 888391227 21312873 594411770 311158904 612360085 784813296 969969251 116243540 822171292 421798795 882292629 989966980 995859374 344639362 493209436 659983645 670993678 373764632 726958194 897076791 989750079 42327576 135819865 524763622 801178916 206285999 476484259 169149753 715549140 615674129 846012605 182119464 669406530 555085882 953718207 100958729 961423824 161735120 188557871 439114960 985174811 718767074 907736713 598479248 902074036 290444531 325226382 231886724 553930266 205918814 335079764 842100670 934275535 153892014 851141996 456913122 885689554 926889596 945108677 583133518 956437288 944678776 963759455 716735525 786450189 714208362 937688156 478756792 755497118 756538552 803046981 542987985 892297041 976210079 995452637 632052763 989485775 452782860 554621115 459897896 869121485 729876386 993650768 465996199 512311292 404923604 979571325 352520413 895326102 896775365 961663966 747339363 801081846 994095918 996085913 991689929 999249340 821460814 869529853 242719282 681745333 328875363 563643604 369711838 671632240 671999134 913775532 751259027 786460961 423958706 611124649 270088819 561080261 257509087 968531916 956119410 974922331 747081720 974801056 817375101 993154581 602796139 684443570 494590898 806543971 741983737 869079713 283190579 597543180 99332243 116049266 445281032 832135186 913610445 923966302 942925354 944349941 682528206 726149487 190463048 375393745 344616237 753112808 76051270 797722927 70243917 599404912 120383138 726879757 196763008 524531429 410603678 538468928 753490748 874683086 510469366 793802520 967286885 988692462 823834653 910879534 192931878 951246038 859715414 933694004 334502141 573139412 330492626 738720724 828009118 967566085 969727414 984704342 569721582 762918783 484826251 510485838 919649134 953337020 89326582 860289663 830016016 990047853 174408033 323444499 882273439 891522346 287625254 317752776 349337972 972785633 770502932 961170073 95912568 907347279 599025045 914253708 453798089 584612389 573561384 717656342 26164857 171599356 574824722 876671089 171200136 999096376 976609056 979271834 800749630 843041098 424277911 663025457 597216112 703196865 90886286 490329402 966120920 979773813 751655994 848073485 196329014 329591271 502188215 829041877 488460659 927049856 100552668 893400848 729463920 776111813 375480714 784127756 419200777 810680299 917619152 930008756 976351502 995405581 96996420 832802741 680547822 799420747 274095378 933693560 143647345 362991563 533265914 873520978 809297529 943532938 260826508 340010561 731416266 889101784 273505922 526536156 124808308 559424879 679801563 702039292 671710999 910312846 753770821 995221792 632784679 865727080 353725420 899743463 584828612 769064168 892590452 946464264 206466292 817033957 529438357 834606954 340034364 590174384 217412730 338984210 449167361 735383908 972124046 996059222 369079821 422950396 696707855 745647739 57011313 886174496 91381680 441890549 173256572 795414827 974217492 996785364 927220749 952703482 826122145 953483296 315545277 877277793 222015448 237898438 273960010 528462806 881452063 957657452 373717981 588133888 113004365 850468825 61201767 655060580 98871205 825809509 884679063 938645609 543877249 551163586 139967898 252094489 964800726 982258087 947048129 947292421 628896883 793891993 689131634 841145328 273167659 772074091 483361054 491412862 311532279 534101801 106858023 110346091 766017249 786931584 470154631 665231969 525601456 679517167 331065504 749694788 760414066 973413846 707922626 820163614 339286957 429795547 451928174 601430418 743925651 753350390 931319078 946879849 50428610 831538639 765325272 956365925 227459067 465391654 128514732 729826408 459631811 835077081 85016981 860167348 172111248 504043041 869416829 996428874 246454077 398537881 481553366 816389074 307617152 420746505 979915102 992078296 886046300 906173247 889007474 909567403 800162700 977139528 972778958 973330049 461056037 509622559 406717412 481887928 91662264 601855082 665105671 977810751 625030263 925326547 353580812 615898732 915895632 982528987 200455810 201912140 236534606 630591969 949782345 964858045 857450332 943234602 950812189 969580137 97976000 251598727 405291366 483682923 862558796 918270486 560267953 887001092 186049210 990472992 63510721 662216050 105118324 444764544 513870430 845215282 823036896 844937143 643806844 942527476 89603018 792983388 408695526 673671035 149759972 953876990 476771803 844457612 271991917 461261960 730292696 949373853 752760543 768576206 16762554 931822355 911752038 957794103 245635442 612987489 294646029 956683441 563493583 568465666 118917454 147217159 909375344 950759460 408941902 593105596 847587527 933305296 991942529 998637958 184645490 666554499 745565169 925762192 479995909 636291458 507921015 710447697 571600356 915850098 244545262 605877111 72880691 103758063 969092514 981392266 503890512 717940040 40936454 358297355 955458747 996392215 897518644 930952008 772920810 822917839 148825755 278616672 288322360 416979708 109460564 417631206 188362051 958407226 618504009 812609206 106446627 517151027 838079148 971774995 949676985 978443199 495381028 840457713 806204437 835776642 951467065 972272899 465067324 680350055 789397612 867038187 451871241 994789964 978928677 992831389 368736668 860286376 434274269 485553293 863135690 918339735 809174076 831435255 655638733 863648075 833304840 908428868 133292554 207029951 542869211 893971113 814601796 999366940 859120013 981595706 598585809 773998198 422695221 799153225 654001295 673182860 606089066 995967123 150256760 688012244 813594291 874358670 523403694 579752645 114938267 893219782 230174252 900276611 192545491 907521798 720142276 969652667 335757547 961449179 320016225 702343837 459280959 759132569 608330711 989135276 313469793 489609319 710531951 801206313 447294982 565983847 835571543 889343044 379004055 430121665 574967968 637691761 845292993 866010158 486324123 520048677 126889281 441753751 235968423 271580476 68740028 931068379 840372259 871702949 901450751 970273992 85694891 244010489 67356529 269724095 686960130 745930413 368635696 381077868 337582466 480770060 802852877 870599812 770447473 776375369 622288340 963159399 647202058 787884358 366605594 489542155 748367339 901288416 715406851 953256060 281561447 973520859 466230844 872694275 487996110 893256585 262593475 656242474 595341390 661794013 708173478 960803703 842901343 889950215 483696549 783321665 260276731 827344639 716056464 963644045 926340759 947732012 373464772 497065938 398387598 424062594 387256989 849701841 182918701 770173320 913046541 940776643 847056151 936229804 979102192 985152416 102699400 532969708 229604491 613257832 497912302 896757151 546350415 850343656 795548482 815494190 670753957 776311884 585444082 690934762 492813813 699125996 890187339 907596521 798660373 882597061 298373493 584140798 378892764 624684610 129445485 965551543 157146107 669704457 969241585 971098169 27577489 691660619 774242496 913803317 843705918 975755695 463404846 954288668 234986234 400184986 265793388 327881709 386810570 742754994 115592827 495399568 951999365 954916908 11766181 604406855 335207338 406151222 405428131 667491200 777228250 806564346 168919047 845471399 362172027 555953563 235271972 617557293 237068682 874313604 425362349 655333469 239746004 869238655 700355676 779267385 806179449 958286071 50070267 726696241 666620011 993868455 491337548 687135732 467041793 632136857 614774025 921082634 354095919 642433116 559885186 741394912 777801689 969531797 461792866 769337265 262089264 452821941 150553153 818121819 985518692 987568109 58140315 61569176 106998761 340913943 116424512 339024049 834317870 993174076 678251567 819034465 157625387 705543470 11908413 884144977 124673401 273639336 451503198 598785908 128796885 952064003 229690661 934815621 390123786 926656316 233666370 980376603 668879006 810516346 106106594 231096539 86351095 818639838 59328167 622000128 961228325 967306570 268752502 382022613 286933928 563513832 823355852 825931679 479636199 916899009 321640676 861572041 751070353 772343966 259030524 288369886 895312111 949665434 249435227 841435595 805695917 838153970 461174627 819833100 216212508 402953466 958340248 976619346 113408068 734258312 440366813 776743317 222006892 441741291 716364782 896336485 323332189 438432548 846944991 860321360 674760276 865336289 633356082 666646204 673554732 976997952 244580371 903629287 527496054 905104488 40787289 680143563 253700110 349623587 190585823 963814172 818454063 887724291 770398732 982092087 942116975 971195429 212327606 815596825 363776700 922397176 945077693 950112116 84610297 313841476 683812959 744238551 68378104 952586077 100800257 261309279 450455281 951521574 682408163 707998462 158243136 827225352 318080508 753799421 488289390 731850906 192011984 906459375 173749086 255505383 674138414 739858318 904198603 909049919 301395493 639202211 780209927 978218304 691759854 744069144 567471872 585655597 429316229 769686907 930822913 949263522 212142873 698634486 558282222 739443797 505434821 763436636 291930457 386783582 742398669 908000377 759837477 809439865 101418080 879580523 269531655 729779143 182617603 733468613 111569397 917520414 247442193 583721416 167061498 596078858 403795349 745975916 44777222 819690848 774626071 950533257 251899770 769886451 576785683 956499425 333776193 539239574 909843278 997159460 734302050 948600996 733235924 983760042 25740120 833279865 445087342 814352331 197311315 690896003 127638782 218214244 843080501 888058508 959955484 995583515 779304171 860731000 976880818 995777669 144797797 815517563 19038759 929431843 791128001 930800764 500356246 627922481 753445143 845529294 88686005 340461038 315096789 345480840 375695585 490724562 660614901 786328340 924293983 998023745 527472551 996969429 717799363 967784269 231828401 921108432 974187513 982581286 899206817 933000192 821689718 904447264 850 53063944 433088022 608435529 866452114 902348035 598131147 707711417 826834189 850690956 990689831 993890478 646853651 785206699 14984144 385565092 115049092 395695261 18954110 150521234 790838632 944839508 246154872 919645524 589383835 783260773 801652943 905276397 164970570 698886204 985212558 988509096 949394760 986837641 140966156 176407194 234755107 269873272 757221149 936237584 712589198 921467203 479399508 783870935 310420174 836606565 734946360 881770280 413750467 495128102 607585586 689921997 953454533 994653596 460283862 727740901 448572201 753152449 182049647 359627938 640835399 851501480 54029354 834731334 744934476 803076514 378273593 987862222 748898499 815285731 952893776 987373205 516665639 964337773 384211556 644137164 189131134 666721974 21539822 709397654 152601528 773986867 35552473 794582820 323472638 973745257 367089460 405376328 176362437 860225519 357783200 737875160 638988990 793736274 74412164 570104956 144090516 251263447 452894889 597111720 40316885 659302956 852793676 975843935 549775596 642289735 405401399 610000335 929996901 944498155 651558484 913259494 650590596 964154799 44955224 738629532 132048187 658430587 956691666 975267072 701101009 984496054 275739193 542912153 550372705 731420217 917880613 994703105 673806747 940545098 365025426 379002010 69561827 821126641 644186548 675689230 575775978 713054913 851747771 936468980 527845872 993392739 605114200 726795165 688515795 823956996 213997690 608152603 299871080 365287212 801785469 901640031 440163122 489795475 544097521 643630411 137253696 553866697 332644751 565360360 892557675 987357759 52806758 794320207 835113704 886598816 701805950 824633071 261097416 463251091 360413391 932179441 798436524 818037178 506882111 872942045 483176391 864454424 523167492 926140445 265156476 268823673 456526518 590683935 502173834 688865736 459880880 869386213 168051658 628236055 564192927 651384377 285079606 769832701 773685535 806984499 260546526 973404353 431248042 479152031 230339579 558425331 849695227 978391504 628712504 709281755 264529044 987316067 95565215 562967394 802046081 977674349 166708831 797064329 513949050 752800713 527851328 613495346 775899344 976003374 206037516 304040960 686967106 831881705 909385169 982688671 590867448 822410097 778731212 789814485 992888576 995925649 307773778 660535041 431072435 644196499 881802762 983786648 786730775 907462566 730763939 955742033 841638211 848705092 256324814 854791664 109333458 187368433 444344452 549363407 627362963 710167143 75802027 641663941 151859911 353271623 915142361 997939935 260844120 586904657 158337267 385857497 372661859 890060220 232752289 952451463 872841191 889804737 684173916 706525256 370440 799143415 792671290 993098506 321293124 603079579 374426733 398838868 235066330 732981606 587680604 658421595 642329117 676337350 806473921 826950145 57560436 808602178 514462163 723869223 938162459 967868674 904963698 925432472 928691815 979117964 712396653 748520791 313131204 835703547 976269345 992817711 983820168 988513518 42959338 274194279 707678895 942745016 736987486 875339278 854132194 903375895 315454351 853915157 511874359 658196819 227772254 497332467 833944161 994288007 494886710 987885969 696365396 835660573 405213112 640700101 785844643 994888260 555508532 795309365 855818225 945524378 725870923 837386886 250647522 336398805 315741185 668846162 946745212 982297169 746038000 904250509 453687941 616711526 300766512 724214158 495922303 781890022 418563292 505368694 921762618 941404542 596820969 889695140 737190124 955567206 458677266 546119672 212351835 907830336 31608803 202168536 766512535 865314602 480175033 511185143 318988185 503872060 837474094 926131992 930589706 956800174 399126683 424606692 546255561 809486409 556040514 696071086 748034777 812948083 793655483 933572673 618808795 981307221 295106937 491844576 896852656 930755901 805646817 868263977 445509366 616159915 479722991 734878790 583594846 677146169 234576292 520655484 662674872 784152679 657341915 941993083 487280664 924278284 236565682 859574923 820234428 987117737 90606480 879061899 541263560 572879425 570230694 638824059 908181455 962154925 458600466 588858047 852672922 880128361 971793344 991232979 316489778 443565662 404783043 713774581 134999644 755292274 853734938 943072773 67907015 325881237 608160734 686645302 458309887 809279997 441628812 581239521 28883736 950625315 545138332 700116521 70481646 545984680 673306945 953628808 712448996 885880206 752814094 879181792 63782920 793811606 291420675 981345536 397709904 523280906 582054252 858480512 57385248 243548527 400691039 523091987 142632832 499090757 269398353 802264846 394964632 727114465 650751015 879858667 500509078 929414211 797606315 979973944 981685379 994732185 145146349 182033225 37261541 862996107 905022116 935001578 520090835 615464473 906690138 919131475 709392387 754069874 813150500 818410113 832021108 868772755 612729359 986677706 302691874 603791472 290306898 958562663 831390227 994290427 624044760 876497901 879587619 976627155 479540064 576913469 731101364 941591460 38923793 974063982 497547771 679473076 998800171 999370114 31985575 586153298 324153303 432675887 763494695 983672387 582462474 813188774 123372657 747623251 267605769 712902633 885000469 947914456 123731637 686598592 749311986 853319598 281086444 922866914 154487762 180410000 64572994 623749344 511901591 579241496 790526884 903772349 114478082 242563979 9239186 110049235 991217710 993742745 687664041 933059432 592111854 813382329 410505295 831276560 95698648 606846296 99683270 235100349 175552285 306015252 215545009 256216143 762113308 955228567 119382590 408925580 37091903 905722247 160189342 441630136 102129749 634148257 546017951 786169311 300801493 304527705 499234938 575971758 365006308 693325842 910712785 934600162 883614673 978959743 368310728 665334987 927432684 939940318 528289573 630236221 165465786 197074043 685568709 977442439 629756018 666344770 530295048 556194390 992773697 998720099 998871866 998891498 797841140 841943273 408094984 712799450 491723417 592712175 178625029 479932676 310222583 335828541 962400226 996065670 938197759 991561958 237562444 588101756 93404746 792726876 94494110 730990882 690951948 785585768 62888217 691617354 882379458 982108526 594989321 708721539 273929653 879224463 964751329 982759122 422732582 561917588 950805928 970124611 680070422 980215090 436360310 457156421 361970070 981112506 84803293 504398282 682692623 864045033 449709820 610946196 65562268 701198805 626441918 757164935 764556776 790095717 993956970 994678046 771456712 856668891 583761242 788326611 106058714 168210385 734497483 776176619 944132949 947114504 382934459 591013730 758798823 794324126 923495774 948451900 430217622 872588088 240273055 816811580 872968628 989813328 473485077 761229461 340298191 890847960 568640958 643734573 289844322 424285661 75148027 575328203 39775564 925843022 663568175 694699469 147058594 243009797 460780609 581285991 959156784 963080290 749775721 823957406 646917953 818464607 447612588 637736657 370825433 886834824 276412926 728909129 789372763 853946739 531351369 731107798 35820899 40955844 106643006 316913372 293228137 465643543 95224553 213677198 506640845 802474864 581981440 791607818 243468417 508280315 82749021 985169098 843595192 907453648 985443931 990544008 920624123 991385632 249198708 826835775 807774202 976514065 677741692 771086374 121183497 626435577 359849291 779229679 593084198 904935301 313364841 870379976 407862309 570687474 706057568 838568075 903624588 982891249 108005043 131170006 918525638 968085567 875888676 976803924 569438277 979169648 574811502 961284904 163921450 896105809 942797769 956634364 334526792 418689564 705525513 726168478 916304906 941896586 906761878 955518081 999245736 999262624 520908700 865773378 867494052 917417658 857205557 972157130 270882475 730535104 964600182 964746431 917320488 957080365 580584758 767572593 91833510 243482339 92786807 808482595 334747967 603024961 185656277 978073717 283890014 929928968 709284682 749623091 208939108 735894375 377636620 977996010 637097179 662423895 339544207 739608321 282379600 514629233 248021082 372346431 606342797 671938335 494099870 837242150 538892956 918103161 498491516 714258468 972561478 995023672 362657902 465964843 650585217 725809026 861575792 873916531 47405354 906597031 871000323 926487758 318483300 667434842 239728691 320918415 553513358 784016593 631912596 843264255 971610231 994249048 349764849 987182985 845917987 874643342 104920305 951801139 879787949 881985209 828197219 991598794 878826487 880831152 473030543 560998795 408968176 824361599 663437957 865080556 662697986 986221103 51375705 92077777 718340654 920662665 780952733 857585027 335551745 586901714 793255216 966280910 956019705 957569960 551402276 683966280 688357244 750549934 587629080 687837275 618724916 624479952 498310855 713109194 848855646 850396063 990425782 998971583 915923819 954095716 30857973 212351844 880274971 943773426 929150760 965385824 286731581 804197239 157385713 654777228 139958519 350257587 919918549 962255130 591580081 705944530 963627864 968133796 713894604 776543788 691081071 948770243 993273662 997604096 99416755 400016124 265530293 429356499 496153810 621885992 950426079 980450799 259750274 379121994 775226929 905134831 876191204 918009560 949133699 984178719 693061474 940717772 928678110 966823446 965636887 980687136 120627046 621988400 582904180 827327937 683873042 791353953 610743700 786807929 902310042 962678137 784419802 907479971 728012926 908275535 667660894 742215967 293940743 986038901 647055201 793090718 379556741 830738226 640356493 922707307 985269831 995909384 217168830 360598390 264599656 437899918 457366129 528186491 255578392 355948125 428142078 805980345 260622497 422392242 249876454 904977035 406222557 726525170 725161382 761426667 900959906 974596047 274348525 570482318 490879155 611875739 40944762 288701260 289931911 626279795 31300318 314999477 931483339 958783162 605808351 687899947 498168696 918185361 237501881 320193580 491900891 958957290 863712816 922322810 291852604 979992947 14942479 265272711 513523746 813995757 753712427 925340569 967800203 983961688 814699291 967279671 184200767 748261615 146396819 930282293 158735667 471468769 243224504 295715114 679414216 832746675 320074574 672886896 42358973 741716695 990452714 990698380 350113428 855353668 942132289 955223306 850954097 982994036 65710238 302190314 430343758 850611349 905510776 990953345 789971794 835410855 386307243 868189068 291629118 581426095 863665010 970974363 682952457 789146916 98524799 793236665 222176651 608046246 375780529 915446556 71236564 958711391 285804023 713941167 837488393 912818538 24692256 904719225 354507002 808013429 227845755 744543300 185107354 570944191 42462146 444376899 504109561 741370250 361232969 991495284 358132120 560530809 96789109 816703824 903504854 917005393 289868892 995179148 439800103 733157813 377679076 636695316 330677905 902770298 832894810 980720816 575642791 930400006 272083978 918487074 384309952 673540314 400894355 487549227 349952643 925439487 733896178 874836570 179502542 748695542 192791236 316635595 875719761 930177765 363438304 400845120 160779972 257423576 313769007 608774256 478982725 806494330 257566716 965564811 355172378 934064777 772565590 790166594 546865544 941832473 878279304 928240645 132686946 662129306 715194270 718624250 837502928 855054768 669502933 810223745 347236894 988493762 671000071 930347264 124886819 652287502 916375906 950128200 901744954 944909806 115588274 486699775 700411625 887495268 194807724 980021551 274364918 983813910 516730513 548530360 818841353 977117199 817358580 877941374 720641230 904494941 592399967 801158143 218506312 459983064 139534786 773110640 296024679 575890075 247567844 837542287 303275463 571793932 287807384 930563936 760191597 887756420 815490966 932694176 978300743 989766003 827779036 858792426 293783547 973826492 754624904 981978008 122988832 699903812 35377908 575052420 167498313 779637467 753433966 927433344 110335260 853301902 298973775 692102759 73121370 688605524 342238954 709077338 856243327 903008659 300622476 783427674 279079970 496018410 282975134 473898434 253458113 500427416 706411327 971566261 211087300 531767729 766984048 788263078 277770534 418965029 969169995 992967221 534226907 598285909 126277894 649027831 652201773 812545625 419743230 938116266 304941953 388787186 720196014 781165963 309388550 971170769 136022093 394947554 824221337 848019212 304555575 471950891 352932001 852709117 475416189 788714353 833917512 894655278 649127968 846892390 898147193 967520744 843863370 883924525 242243180 305710275 390871227 799832610 960132915 971116263 40394064 306957292 475507084 588812073 194358747 468557079 820710463 983483167 106297016 951732574 204668640 445657184 726498173 808263799 942671450 992172224 208395843 604669794 704773146 862070801 128892474 929333243 412735676 467844964 536935616 898804514 81988581 180405929 576819974 958596378 173939961 405463569 272885810 927479549 158495853 756458094 993224281 995478553 349895747 976916117 544056010 547153939 681520526 729404708 564315790 943303985 561442595 906755937 304852758 757753060 310202516 708363602 645444031 785096344 847563339 912483985 824143327 857786016 401632046 511714783 987594987 994425263 751274051 877749973 537354970 981111414 314165150 791621032 372728769 714526195 111052525 769254018 214479153 671173106 197243812 884512714 710159339 831615498 218230756 709464308 676289386 704848413 329083795 564134595 105907830 470201634 819671336 900177919 203895413 466118793 158096095 594779157 933236356 982978299 195194776 895435378 187725268 333341728 292165930 409807449 44333959 681054256 262495610 781005868 267432813 981594726 356672230 924426332 419591748 776460066 455784163 795904055 844273300 917905364 300337579 463900210 728456033 858747397 755792044 802726661 413269514 762015102 729574022 965377152 642571132 844174033 617611701 806899256 446351377 520690613 712791327 993210072 978312732 993485647 10000339 137500775 359020906 417422752 847692755 945903393 661073896 907162815 465338924 742025226 709359467 975633919 673868203 991745353 722741784 889951153 271634999 919972304 528205166 936891674 77159723 182716264 951119615 982769355 442481486 859641356 889969478 934405508 150654424 454542173 919029488 960887048 490464860 884948240 494260171 604125966 642893091 836227210 191137879 401011962 175262882 439210363 649869419 766340923 65040379 292222496 779421200 804472625 919992978 969033893 460873473 975887892 438948782 603447252 675410177 925965221 537190076 820457489 453663949 803675633 691579190 778508403 982396288 993612409 736680646 783014997 470262805 661830671 33301295 187212461 187215333 706531390 463710567 801033929 534135668 550310048 198778263 700050325 702981474 758924421 721165697 866642339 741008981 920056904 283013903 396329072 405303589 996564476 988638192 995497522 47079308 980172362 774268283 884770866 186482356 329100814 821977672 873091434 651604601 714675950 193820999 907028458 740099012 928840099 403430448 502249532 831274241 876408969 453685534 907488285 429075534 678601493 673394702 867881955 642458771 955213875 262143345 502275714 307185019 473330815 474490620 896225657 108641750 144971662 172676524 907011757 479379792 872424623 403420675 856363391 953351757 970072066 159328513 878089679 839692228 862588466 166780072 715109632 647375715 858900950 491351235 864022402 905742643 998386787 808216260 869476088 26846887 824568921 123342180 425259679 41528221 956248829 208246236 722942661 297202658 310851254 416554839 768151510 983815025 992553622 100083691 987298937 68183351 311068162 740383638 922980374 41997129 338256631 767712213 964562538 23213518 194473286 437112985 559875907 653450184 957952244 216525404 661024978 101718229 307848578 12525000 905765324 675977865 742728829 710794612 713768806 420447970 816882148 85987364 342035649 104951150 486434380 96865627 867726161 184987042 589265220 544925119 699907198 771881046 980794096 235206006 951054543 587821009 868782872 975557902 987472983 904265649 932617340 567141721 585917628 90058834 414687799 605583134 995400366 311636760 381719286 7158804 888348979 384462399 906602408 721858923 738434058 436884711 870045096 859449219 894696175 623706548 893360824 318056651 526060148 24634583 702227742 88267125 155220699 7220471 33547376 205776888 470615638 896286797 945178443 435360195 686224386 261692419 997770491 787820997 847343483 514631206 542247412 773732347 920102342 718420735 732772865 892510170 915644162 714138960 967539214 653202425 816949913 348139771 870959931 193110265 395600535 89451864 422338215 263136495 562870026 550246649 858040200 929953351 937897413 629162507 703678387 946559391 985078918 996725375 997632464 969488754 986715222 101421558 792194896 778696015 843307880 667425566 788947477 285320795 285933049 115016656 983163373 154459581 629620320 814199741 825251185 630479087 673601777 403653861 495524111 396033394 995466059 363038485 424594478 891264603 941992351 197711784 968751435 309485803 462583222 601591550 709061286 223680782 970164857 26306408 497279988 468249612 505205627 177519398 652813545 49140480 807898824 84259931 647495103 108967674 220171569 760061158 909690100 698190649 981306212 316356529 549461681 858355976 987285935 83179218 377667611 705311635 716977666 78974662 141617615 539505341 770508632 53082013 958286961 986545658 995785008 25280979 656396738 979166347 990090942 395193162 830849763 86591812 568395364 331545435 763383334 801900951 858337316 485361161 793506873 105040369 298944820 928363081 935720409 965396705 987880491 246858326 743559741 5442166 929863706 585085527 719647388 792451954 820090165 407161747 878833287 458040679 627009423 534089489 769337965 674107749 947806366 943304440 961547277 80527990 788406405 604324619 936577496 767364378 894397188 844564006 868896701 597473969 834885051 726975003 908173383 524779190 761815475 650224214 966916118 656624692 674015691 386880537 599795389 609498321 848036610 479679670 539915868 542371945 570353919 320448716 585859031 64592688 883201857 988960353 991428363 588823589 793948168 44816097 193740119 392089484 927732307 747041307 872464955 433964282 478600699 130829195 821062897 849860357 897186699 229487115 937854032 509607412 633651741 669032826 869662418 312111892 968558846 184314960 798718485 94510483 739650302 641327249 665709576 906422358 907528918 365730632 504223474 680535568 789267537 873172028 985467148 341808272 460183639 327750527 996019203 56260227 204383129 949917891 965564169 756245863 795183066 117152499 940462472 427916777 693216985 669301305 671580383 780595271 948785599 641509878 905496380 991193457 997471618 932246667 972255041 50972512 369075698 661263543 794727305 221636550 414119183 773065933 852070185 43852091 259941278 823980254 889764767 457079772 848359675 706153850 929980643 539447033 764000075 327960534 386577894 785006900 944751697 154939562 325945889 885383857 971812264 347691164 735142223 443187650 865622083 505840871 593986029 969786921 980031460 840440859 856899864 979675663 996952428 546788453 884646975 792481882 925395217 231924923 726070010 843663084 918810928 521821177 979602544 388692587 980717978 649377474 931238284 382649814 852558258 758048724 766606155 267581732 506190314 672312068 793231798 527264074 704493547 371087678 628509115 482772845 556675820 344586174 871790744 760229365 883490581 582590324 759532439 790432555 963625289 221788092 466930244 955395695 963648835 444626908 796097438 690592272 975847485 758402661 782877894 510059250 719613653 729072722 846854452 262270547 868028632 447246657 735499400 589744173 832616146 495811244 835844820 293434442 474876789 887398566 985920035 576341801 847161575 389944715 766976043 25280052 197837523 405545632 628419594 822464245 958688135 135508485 746761002 945990223 968626698 736735461 907759041 308523715 455533442 311431120 566688147 444612222 701316977 87672181 766589511 406698949 817260830 699517238 804936596 895343912 923530821 233524459 496615538 107571314 398058673 714902759 864050744 76342329 556435288 132313278 405909649 733439339 889694762 552272677 988518185 287377856 946144335 62964240 637831169 646889512 750931131 71735330 600053884 149663194 961128793 54563612 201666801 473855064 900109788 397404082 597997588 827610337 982727620 636742281 873200690 99084107 698735441 260459005 556967255 859492857 879807876 428785193 696142178 976766760 998591080 763538194 916836079 271992183 649785501 962202677 974574087 383985465 972137228 381204427 869413283 452472204 889010049 629378725 971956753 460041544 935690913 363436636 859060245 462842930 978174800 109019226 387580940 309351384 330544689 550700826 628215150 574643631 820672681 440462108 527939172 257644468 931331803 706433605 729885395 320814534 740392773 732537336 997360112 468548163 938641589 79769753 433319188 373889999 556309581 213226533 985960223 712414231 882586720 409257376 517670718 117033546 306324483 120479464 214936184 991032855 997412747 911909418 928860952 793266279 905573300 756107928 986904496 68042528 252826240 390991603 682815517 156768282 951153400 248552210 486791691 992539529 998618752 754770640 947885752 876433609 929765020 12457707 703627381 624511397 933798358 104463108 860085195 898632592 900697775 462695715 716722415 899779880 907220197 642885514 906637920 687178757 863193332 713432168 970985036 462525148 510640354 366159425 961919953 576221862 725911578 247521861 968215083 839593067 857090924 781946111 965016227 110439493 980143792 682723366 786902926 358867239 777627970 983552933 987155876 438307874 719243130 738332170 882591355 31680356 484923789 35065241 417061030 465078575 478087279 972368190 983493170 561098533 580580216 202184806 673969718 638321130 811086838 755569263 915022350 683802324 797670383 743519507 809436692 585287059 633110480 443477605 725452276 692910998 710430348 472426887 786705294 80675606 482061504 440941914 568923224 844025653 913527931 570487780 708165664 927062976 992248985 797490138 994120396 604304964 980930854 508097729 997304358 525957886 572044089 182575268 921573014 938149172 978138393 396802570 813784389 752867051 951977112 519398754 988459105 235349055 555731784 875204175 971361567 397351778 666097119 700300096 853386759 412942685 544751295 391599071 854834742 912776723 921852281 467521240 566432172 733938946 984621506 652443031 825361728 435672939 623945307 83686176 752619992 112823649 465139041 650890113 837940230 49118609 238407688 946871490 972862296 653297659 770599150 942729088 978947066 948322850 973652849 39282963 596482959 149312423 478324388 383376458 672516672 75001819 481095181 982630604 998359320 403460219 733744974 194619523 243401107 145037487 232108683 838606636 956184800 628419721 758774767 942385611 974221511 537266413 811221180 186364934 836936551 138836337 730532119 537325960 737956563 725279448 949265863 724096810 851737363 778668684 958769443 36609726 214396480 58729404 304894567 517132879 867246924 942253285 948016020 800897005 992703042 153892419 272019829 916540333 935807187 456722747 927704155 938815259 994750358 777232424 801278164 259775022 960190391 234775916 902011645 760497874 847294914 791241932 837617814 848694320 982222989 968699883 998421569 873557803 911866498 996010350 997621718 113523660 432945781 812516427 955123956 32252450 943531544 958018733 966213075 749278163 817805679 449644289 859079223 157689564 924102272 977802097 990120477 241618398 450355935 253476257 323087974 549436678 654170184 651428532 704661154 773918893 937191442 100979372 154958679 425358173 992667405 362534574 452694670 229435066 290629931 71441291 521903641 150202648 605021757 80791466 529721428 768245346 892819002 72276024 84609542 267195566 672060294 446185354 740285752 942724361 952347060 164985143 824959821 283500802 377405588 187017905 611995381 724647196 865954293 19533026 806291702 60624835 717367565 662983695 989943067 600987501 615880421 734419742 983097900 394054157 543164551 552325314 762304172 320382162 626573392 573137557 793251150 884299370 992567102 396258541 513808971 115839463 852032283 195490408 504345415 825136726 903958016 11827875 329594069 422268612 809802720 702874721 911525969 181112803 621493140 317309549 354277501 184861241 682238106 192955595 828597385 368300866 440919534 449182130 954247585 438864994 760468643 47339652 975900107 594060907 837238631 997244506 997738562 564685092 744665432 902271560 962928100 144607846 469722527 751939631 818600759 54833015 540128883 765850072 915817120 547751976 628473632 132947565 489438792 946499733 994839072 427280052 776502401 32558557 992604437 974589709 982630331 864341776 922724552 621037307 655881471 868890901 917725122 925315275 934863258 581675432 597497567 75544593 792341995 955487392 960347868 68292637 296834406 475817347 512598886 531029292 758680540 844777718 987475119 979702524 988788821 183504537 419723224 188340007 638582721 803826027 920797493 690877947 757090867 595599818 986476845 106266569 645700543 823531403 967021764 567986551 860906992 588072302 783425024 116287650 497383068 705419735 973679262 533050406 704612620 920153452 963771420 799983903 847759752 645657488 666626849 117229076 970109020 924770232 946344766 146340389 814299791 435595149 475527735 134300478 516298812 228718210 353297102 691515892 897423991 57131985 948185857 458166247 701992333 908704686 987313616 483451222 938094938 71793894 810647563 1348773 301502801 729452914 952598879 837654386 894686697 946855887 971071556 159992314 456064403 174784604 564079428 34118630 488038167 700460188 866984016 704388358 713880815 808349036 980565031 975668318 995226960 37099811 272792831 648979207 656925045 235356245 451358932 979708869 997048726 853387720 961494773 863806678 873248977 550247722 904431534 882063861 983201383 733624709 847035452 435882707 455710438 746025900 928795065 911260797 961234060 275205486 481338824 89343689 201063362 613402513 871839924 902102899 935313159 443378609 747633908 305964452 360262180 52064352 988413575 995354783 995799636 808084607 858060362 192004157 315907052 155504620 966137854 44573 931110979 591499306 605054340 142374211 971766816 173682980 316102274 768017343 910248641 93714234 845260014 398238063 891381618 375849287 755093564 705615244 926261257 468033212 623557135 679385674 844445902 377763045 643301884 450703597 842603662 209014530 287789010 479559399 522284397 218287698 688505093 909104744 991007649 742069491 766347786 460946638 767965941 882831489 980202068 863742843 989464844 112459698 526341241 346793631 978622716 105400797 245593575 720755829 891265060 476307787 514422954 584048319 955516594 787851362 983141438 500570779 808522261 518834414 631461547 450794334 740490483 239447062 242129854 615108339 823599784 379904389 472500611 766089659 951343797 88946705 260455790 303075746 630850325 566352294 735302914 787193682 917932199 670116530 967357975 603418969 863466964 572786383 716869926 317488683 889195506 452435965 494868950 71313579 84830896 266047831 687746620 468279211 520850121 981618752 988634640 715961225 734361851 213065412 919838475 626497325 859843727 716694420 808937731 87415371 936391453 716097916 728511287 424896830 805903153 496264947 710633055 46834028 128848034 36692790 242798514 33944494 54027020 874096817 982773574 165031835 295376647 211612641 630661841 620989357 747905505 753816903 897332623 60308137 261632375 186067462 636807391 498452213 900262088 263028247 389770467 170277951 868007233 321821455 517285762 763547161 990203949 47701435 811447829 104381927 449265674 940612415 971704264 36490209 671104129 35755418 963460964 203898339 933675660 149344247 162273366 809961118 919610414 398382580 759282272 603262878 975328728 387130033 696763990 367807877 853198335 111724560 367877765 298708478 416631324 905251235 967077950 227046241 585125554 895289272 979252534 346747471 788644067 341646333 869448354 446484795 611404287 240935222 278484315 241083737 519582046 337612085 538646953 689940484 920158142 998545358 998958215 37197322 432674965 544791958 656318095 679981599 981414786 356230665 950291688 643280992 968692926 266140300 655310989 366643013 378510095 142274987 951467963 511936969 707040734 838890250 931995284 460779015 483991444 468893843 924812957 316246515 744579424 1780950 680226197 885748924 885792442 159307145 835693380 268136872 674793630 13447403 958578851 308490238 811300035 53961683 115247217 531432285 800439331 155501811 331064213 679727145 953857088 98512373 681174367 333965134 954557875 755918852 917447409 295850967 506568675 979358758 990498688 484822914 761485407 363409803 604075236 984629801 997793358 836513580 899945011 405034704 893826102 455313301 525859859 829427763 931915217 262156011 588085773 163143715 693616706 927974898 954863962 22517860 166330027 872158148 929291188 8147209 40308254 657995106 810774320 739746208 930346006 828902570 857477918 466969801 542941301 228357843 520211368 494035126 571373227 51043993 955164160 159241187 754523429 512980512 967507883 24213453 826284550 662337760 728349073 553392825 928579436 143646000 658889365 509825256 983744495 778130364 825988596 798066201 885394464 4058331 272477531 779440633 781037575 683712956 813415264 848435329 927860652 227923535 597630531 323092690 515484231 391710291 512181103 209389531 341481020 693057033 880566693 39255106 610430328 571128683 939802809 707731820 811688503 799041194 960173087 10161580 683414376 858196807 903212412 325001254 935680724 463461586 660934953 576463878 685742929 199974845 277740198 490473660 841238479 698497637 840846656 598829263 937120876 447297406 507130776 911128166 916279397 853006623 920395068 733242288 783456832 470286906 698479824 233140865 557997336 698098092 961452840 399535437 819517423 341160714 835505472 906612124 961129982 273964596 373207101 407830887 903009600 605696272 660580874 947147785 973356641 89015813 961928484 991478559 992705134 884264320 997000772 909516429 929147144 761627520 971540932 104572685 128933915 115222889 691621680 71042298 770321205 368513254 954405215 712505998 744032212 302035779 939998285 712482011 954701929 452409478 912750763 185962699 720389371 557038539 862028333 812303895 864747134 670755428 843621935 191817884 720311611 294230857 594338080 957426381 977880791 806339864 871905549 454035395 541697700 401608873 834024112 45360786 425847983 329757585 942110925 140838678 395686411 237631737 844609120 222804098 643288045 962849227 994146790 803507534 947396701 634786931 964528792 21777485 498869692 664952150 982032248 484707673 912705272 441271293 531007878 108219238 329918663 944086731 966306544 586146471 656573984 233891073 389572112 658912946 898572539 567922611 737487425 829557166 969082014 344590280 548223086 234620822 633969527 313384091 791602821 811274301 962542145 246922154 467417007 158740149 848589031 725458740 991198288 678624775 766933320 378366056 645562691 594820573 761324533 28410682 883599941 175622847 380947415 389979595 821609555 580648291 737330676 582125667 905267705 926015072 989739177 740651993 832355366 253948044 575133915 75360006 529758680 344587500 768994754 544518466 990602868 915311877 937994007 892834722 899522867 660799855 996086894 852976567 886840500 703746323 911508366 878177047 939649013 822804134 855312122 409427974 945428394 747474768 846038795 817646899 904671347 73892786 663567419 631848765 799342264 468056831 828547857 846596230 884168405 343499521 810678258 487115601 630246270 343666129 670560077 941846462 968807131 901460903 999254286 729690394 944682929 740702092 990717319 48858000 637061509 833322513 838005229 222406634 227451952 560299854 797148073 586583064 664660341 501298502 755813680 187678484 698580966 26911513 477109746 754510316 882675137 450793669 855236744 69493970 604199990 798950127 825741451 309930518 780190030 823172031 843257453 472581856 724267992 743208190 976243988 308720075 520310518 18222470 535977713 726256178 809931525 408926312 621210932 418545471 681359104 174998901 783289289 529478993 964129526 243722390 428230660 158128645 209307532 904072564 993580869 906961352 980294878 508510146 632156017 479180883 829139216 75261405 902053222 880289059 936133936 993567980 994540154 868039410 883567833 880226271 943213915 160591947 592986103 136518001 714880477 284716277 291466432 372049971 715564612 821110761 972881382 317832768 858709950 62580854 818949570 602264721 701393609 674540812 700691078 973594937 993969595 355533610 845406652 606307373 936755926 369637253 714418621 664559632 691456553 536027048 713968027 315260259 384389848 526240086 530738811 194640230 915798791 83733460 464080233 359361877 941819368 942647853 956878764 269029751 270375872 5049708 767227505 209735469 320236675 172350444 464063387 642076939 892343296 255410183 802375271 41687397 56692165 163956313 234870550 126664725 442907525 785507921 842050657 974333695 984588376 605207285 649303061 491972361 761644901 537948222 915927624 875211687 919906517 919729832 967659861 66091881 682660752 583103291 931080058 94196513 285335146 496290121 887382789 208099825 862269539 53479704 617703555 892127821 899579019 660630700 751061335 462289275 605032847 830257412 866436902 586513861 706433067 312483735 460005371 196538683 205145331 230037698 334208222 563977598 898181061 897555661 970203694 859322978 880015370 491867942 896196667 347359722 405673025 708682331 892347132 688562334 698000560 622470987 986174893 376067820 396907216 68016926 695048978 572370851 752373297 93594600 616136032 143605086 333832841 323952341 550493752 675591632 924700891 689704184 824897736 292289700 606295962 786483835 918674357 744587683 827642003 558701426 808746014 937889847 987642565 869255998 888062966 734230723 871632492 991257593 992440331 851417145 910467287 440082310 760136479 406847801 813814152 393118324 846606862 345329876 402493397 849219875 974080692 136264335 320712848 246991919 931593083 844731234 848461796 266550083 298679354 419827401 605413780 553492072 641613253 288041285 508407929 74400532 943068645 65549208 915663015 314035383 559328190 730845932 804394030 77992107 584580032 9990451 948633852 634381957 720997552 462838496 510739733 780667372 898094975 837614680 855407683 356291634 977638919 730841229 864582436 814304427 994826415 239947887 583219195 928769359 939916104 414847584 786268140 449817852 905831244 537433730 569691211 493659317 825628361 912986671 947173895 819583605 869512909 577323478 879379504 401119651 737405428 231996 916329800 32009025 44079182 454604683 512186415 858450535 924523218 778447616 816018791 459918556 626850406 581876420 969861403 391404407 682070706 654553067 899037843 679474767 869766206 89786444 318899658 324099575 641659903 830372922 845183883 355024139 438379409 149584984 938323469 568961955 808471070 653877885 854053753 952395961 977423162 791448780 866258288 865405945 873895136 442086507 442926066 280773209 556700474 358174683 778169810 666313494 723125763 637574583 953885358 923461537 979724745 787774469 953165292 721361539 866666924 618312988 909148362 723610986 752926844 484723991 748624655 409569356 453889401 151569132 741576594 12177700 870415462 379699951 402479030 25718887 247883917 586003316 730448196 766201754 798190654 362884623 385683037 457149357 771450958 295522087 547369052 987686503 993560002 39313836 666097770 589112132 958371010 297129837 983171020 958823216 967864416 937165477 950067772 996405696 998739683 894057907 904027608 477862225 523219246 44818981 887756029 182223647 494656523 71173792 755798519 604548571 898014284 934317868 935747193 948848680 996337545 252945274 401557613 572338518 750923018 104247087 731710909 314655972 737695042 867402187 932344865 103471414 114795214 696831944 928156456 519775702 662064367 335391370 782429727 434722455 650930966 333227513 578797937 654649300 861504939 232241564 300179054 390227929 945298722 249720021 517794115 802927926 847733344 575514687 601344641 442152622 920330582 860562768 989246692 376826694 558879256 993546427 998018483 165130067 383936507 843021134 876979765 596126653 702467329 671719194 934235934 460870004 614720410 896647155 898995428 254632736 945030736 879947950 991153282 48393661 931973815 438266110 759139192 995178268 996613400 116881541 120986450 763057111 896038640 471711680 556377329 281430950 735472131 321831612 750515235 624184887 647958643 806366524 883538739 190336679 733415953 754723611 855086378 377361835 758291925 36787351 891963896 984559537 992851965 667296309 865268579 168724865 815620763 814868352 944618232 804206201 829558702 451423867 597187164 243303748 595651309 943752794 951869474 690752927 888678835 104114402 977607753 883070631 972201331 992650797 998545927 29391576 396591492 991863043 997722479 702321886 821192839 567260163 952320304 521210144 618828813 473743322 756444992 434913364 831967659 278045160 481619078 61427607 884026077 242662086 820731409 953908839 957345308 696817281 806793712 257158552 614158769 776260163 903500895 761642620 774156435 764717978 951843838 562803024 734426541 689751664 717902723 660350963 809138408 259867827 988201577 335723200 893864641 431717439 644063641 142295602 364202325 996530724 996796914 819379787 843004116 773734207 967449831 948220355 957246995 490975450 517050861 963765012 984490669 506583459 682816736 990143976 998057779 344373870 501453174 350823465 658963082 476341718 710171829 685088397 791267277 139643841 775961130 131225348 916320038 80935867 414581034 810084206 879533314 874900653 965441742 675412640 807621765 372803261 765442399 11866612 824714959 563770680 898455259 291933599 954767833 442115543 689775871 324143443 735091886 793046519 880150273 335847072 563220315 436283471 558350772 381425239 884556850 774677881 778118865 869871237 994004455 337627224 724124254 322238255 515641639 916527593 919247434 157033658 289469218 52413092 826830962 482294514 624057058 670752204 707582177 324631543 823118813 563045418 571507722 574494201 741181153 230550167 434600858 89813259 663088896 413500742 960274842 423682521 426591807 940947252 978532705 172763757 851158906 101019727 131663018 753077680 869907543 316334882 905561453 834748956 958134992 914550718 956217930 957245674 996735420 857209035 984165247 711753612 890511570 564427095 946874232 52883552 216367191 369689069 875711691 927382829 982692870 596290230 959490444 407505907 782704744 958731185 978975250 600465782 713285884 960274314 974667252 248913189 694669541 919659569 988463779 983960864 997395035 878450523 895041739 332474225 751575666 993233519 996889036 507612335 576639186 276583255 409056308 894669280 970277860 736079851 890761313 286134188 442697367 868869040 916352292 985056193 987395514 62311645 592779684 470068732 659603956 558019476 831252859 452639823 664050431 443680456 823606671 373977969 511300359 445256697 709594539 457155367 699175190 571000383 647193880 125966334 193533904 294607659 753376966 611931523 896287869 719863068 786108044 49912938 544312523 456820415 881561021 73264833 223276992 325420133 816083098 487434131 548507114 127081494 596700863 955172803 962390543 746536625 791902593 829235273 871004401 690245786 914625630 904393827 989787983 540144793 647962291 868746336 874382324 185363189 397025194 129088546 185584848 607205627 882272401 225108006 604971535 636027804 942464073 127339900 836159467 246548386 724305732 661767611 674133908 470833867 601203856 735177397 883553397 117755576 900342745 681373594 970154666 72013118 975197524 742483956 970568862 187029788 695062797 670965365 833310033 424488760 894311304 206450833 344906784 154346181 280480349 274484673 857955682 921476960 995329506 417877982 911160789 629188871 832248110 144476996 144823167 581843369 846341501 168308021 858484320 147158845 411635885 798861487 909974980 689654805 930562394 987388762 994904708 962900256 972636669 374886002 942033821 185509034 700821252 336788389 348402789 463918089 680434921 22379295 936852798 59212207 712206718 613968386 738922413 564165375 983801738 171723269 884368844 550002399 613698118 529700399 964871261 134862303 882039024 185147446 725972404 851387297 859183607 81308889 520984788 121518042 675454750 541447572 847578699 717830112 800734003 344502614 765709463 793881289 941073018 342598683 396541145 118778093 184403378 606649658 863891153 731021176 796700181 690747296 757435303 98780078 995705145 902281823 924715769 118099413 911356450 302711769 561182109 801088141 992198981 393267872 735373273 737038991 820786394 253641477 309182751 145843240 363114470 29967679 615809393 695413894 845351116 627677082 879206596 438069574 798662475 581916556 806888166 164733857 544712460 531902029 843669666 345143358 941115404 652618589 897141401 484593628 861125920 513779147 534609739 781577886 821529799 640446662 783558823 778248505 782663623 295905148 763471505 536664775 759822745 292610951 820571274 541142000 543123070 303677407 392821369 939669495 964498639 199021665 478145349 824664412 896332117 579389149 636125833 360888039 726055376 761723557 969000613 193439337 998372775 496796423 928220863 277988869 653366836 82113800 931565346 970693298 973487456 619892177 970852719 561512463 613565844 661021679 986940819 503615491 746981922 513121579 680394271 552055743 744789093 20999153 387472729 435961050 519556499 419014078 937143018 517497412 660384124 948798857 952303564 680456019 800980095 540717414 983102369 330356601 465941824 755896708 888476430 616407708 860747256 332377190 418246372 909216002 925635477 188551884 603628568 286168140 767322048 721802659 788796517 763213701 917021602 1474430 15091248 978638015 979576192 210054265 917522353 380408713 396182604 174877163 721099585 638043080 719517250 549243826 889488086 728459367 816520919 890978131 995392688 501134119 660335081 119197239 279609979 236269694 563258299 728492622 785664863 568690506 688595762 782501569 804688249 511294355 957957017 404319612 777016723 435112713 689037570 467822587 777479813 72437244 601910185 542977958 586702389 739590141 879346140 658044439 714503777 2182798 905921677 81538090 775915099 312091029 803403982 329119402 949865141 872755739 928316613 736930180 793625556 975021448 980628333 498475375 820053333 476454780 925477082 133377014 356039934 164003209 405596628 551185259 858146950 392671035 671845899 183245750 915052465 282378062 815164284 871899058 880683934 772985483 929731218 86572856 653717410 720115355 970424473 594802090 733502817 411322292 663570564 555943692 569329149 701753714 887363241 665769376 926446013 231194167 720656329 248902358 692501333 764730267 858359318 886356221 920655571 912613824 961057000 772903334 945987760 969515845 997813184 939579559 991714123 631557564 945441099 591011503 604745940 110196316 211202637 929494026 996577029 4267390 933975317 619911594 641753967 521039352 894390496 76264396 252177715 340811951 531637854 905973616 990160965 655626115 812830190 122575474 537229631 267590726 885758789 463141239 487999933 353050485 486509934 49947903 633660663 72249217 997018187 705845448 738665920 943479487 974060253 153649231 256141961 289106420 580423425 742395719 772351722 227610362 954505706 360284187 808553693 201392657 685429438 173163667 617372455 948062732 993398082 683612303 712839577 858620267 992518916 298820139 718818805 526486907 838583831 485300982 994264701 539540774 977597062 982522378 983298014 125641374 568342961 264869715 607075259 38821249 840169542 175976890 696782692 656697488 745809339 697813933 772213273 676079311 912375236 985768020 997197303 803301937 934846276 733591564 824289751 448406109 608082711 412411959 815393321 276879194 280187249 203589844 761827012 996917778 997849731 808831314 960079946 713884186 763305663 226628467 492582585 360424053 397496127 597527576 741253046 547870086 767025637 997924639 999166536 184716967 486225309 508499575 583945707 126377500 911883863 793907865 800779186 279279444 955966359 151512676 655283748 196423292 644448598 51181991 322749285 427064980 952828419 997006906 998198343 899983947 935812560 385601014 910097089 322927784 737099543 952593455 954373782 450055518 719388818 295667134 347417149 971638586 977322497 37909440 44372158 841808471 852282560 770470744 993688494 487792627 499349597 280741111 532332246 147467580 157820776 350409769 671208772 921190759 939260604 273583173 399922926 561783829 987006433 757885336 768166997 691130449 860197616 866224683 888230850 444158092 608165444 867269969 929414351 812932044 863801455 954663366 994897739 148371550 641885597 922252546 995733575 321400133 499274592 303555990 806647085 12107858 27398649 777112458 962380595 163654869 477267238 881847794 915747833 463171114 973598398 495167734 911377758 75231329 657156950 781256203 996986342 940914696 980036291 817359117 859674011 451872256 698644143 35192669 256356948 489359057 603141923 619344815 965270449 167014860 663637294 906756022 952271281 531078805 612551443 234926648 436432424 324545335 699342397 355735926 775049654 888508859 991427231 129891331 132663158 797914812 841003353 130345555 571504562 454801134 853819581 789763693 833368637 377422528 663002108 324891929 669108790 691161828 943485576 937318160 997603325 738363002 958972031 821415570 881908538 595589037 946333401 250921434 386602858 742389702 942065089 389903757 968689835 550107608 670035975 550212926 854619972 483197782 570736406 427884975 931581346 124553102 718771906 812270146 926121786 571927814 927396765 72488387 713247769 953386099 968736950 731949146 895462188 105170016 544570768 321547135 947038886 616704688 701605563 263203144 693474334 561995207 605607136 566841204 805392769 49456273 366338055 698320087 995303957 195527636 930580509 186753132 587140497 51958471 393084915 507228004 650561487 437842612 912165775 177176033 899641661 639284915 721370174 767485915 877594110 764120981 766656288 730556437 828561349 492948646 715619036 301828392 512808234 527493504 816658537 879435813 896062199 244073920 485625378 98909274 817694294 912338344 991976084 617435422 948470086 841837110 972070195 191358354 233309162 635387906 654688896 228319577 494084330 570606265 682027763 286313442 735509684 105385487 851386814 303437428 654196965 601484977 990667530 165697200 673554368 454625429 920164749 646595305 971630922 25315261 897688952 375472175 856341828 675665561 958948926 656774386 826098668 547291499 566496815 327309542 803252805 47626832 685694726 281296880 513399796 546139360 611533997 391140521 483697234 700047633 914138916 466986880 756093625 728562689 750587888 903483942 999026429 963516182 983239143 262594190 609934675 151723238 825016912 482831131 945146325 646138928 702872166 189484883 656261267 674401356 847883344 456457552 843973587 372535974 657323406 896322418 998491693 321844038 862418504 85413363 937064960 391560106 932650159 325040297 596422724 102617063 511535169 236916687 554556806 661231823 722280749 241060886 284955578 455691477 838207005 751387638 838656272 243423534 960562398 102858143 960612652 966203036 990459889 768285248 813569146 149599532 651547301 176866509 315955911 598854225 806627021 892715044 987275859 138631146 544386949 270891522 425542953 982865682 991615527 662535086 826939267 89358304 363327846 449069598 720330250 752051367 827595722 432313360 698647325 53558601 321132863 210233325 828065439 861668254 881839755 725046242 973729984 222784230 306073218 653219450 784749753 243472410 839782796 810201409 895463925 721494818 832223538 735622877 986924912 880935569 981243808 9075805 250697426 437600046 762333804 508782785 809003678 114103034 437650476 770671411 952108162 881691269 954423727 713360666 793505732 104253597 448653203 581681678 803841472 381912730 803096162 748561511 748676692 480699505 804406397 292864569 448211172 485378008 661073482 767916231 867517992 317486870 638598194 246790668 639537655 73734648 857005656 907333065 990444912 690513758 845349187 53976075 707373645 197755420 618235557 515254296 586027427 741620717 929871687 324297250 987592691 816355365 832998078 604871920 772465201 627768983 874654595 356343258 495350525 962724972 977481973 417519952 533827917 341704155 828478582 641676741 875177428 487060641 846663839 74193191 326991021 288363438 361715611 47242517 220335505 520574589 987972782 651677138 838396391 881214406 938090758 778477220 870853006 527667837 765846411 722026606 770945441 78429772 395861979 690889029 739343316 434040820 574753955 206927880 876455671 389056415 714396807 186216163 906557406 644120943 864009939 669235507 977999779 237201765 741461049 438451364 525143960 646587031 749383409 519315775 635299176 514933889 996582019 895979048 898316669 496003259 654100840 919480448 986893271 297078513 513375290 922249619 978942498 410870007 709536473 864905877 956883800 865493666 912017829 766257326 822359670 16253430 466567928 547566044 960528014 639219647 759912924 603120104 685381877 749221353 944119232 307141600 611419290 906377656 909155716 762232374 823628182 619104423 803902713 976449724 997226460 831640060 910270257 709755437 777109825 824505106 973996508 182901276 663317872 239433364 598217138 406271021 950892734 496642637 656095073 826369447 990557444 939185903 976156785 360670629 755798032 458051771 553722608 97191175 428784155 911947719 977797688 742745616 765996367 330783432 829242350 330008726 679191139 74652319 300707031 770045401 826141113 509206306 532261204 656201790 776958269 337475166 413279350 159061233 397794391 717521518 951738140 474252531 534547266 449317083 900118651 637522317 806893629 99380949 911509360 429167880 743384187 491689709 931406028 597109413 985397493 642510192 991682586 867816045 897629257 732551219 982173691 568833758 739610259 945746800 990837667 801454554 966703515 469490846 939812863 35706521 635068721 33354041 949367676 844258890 984900118 157143031 719409883 380022463 734290975 702474387 912929620 793108476 946674330 297669104 474076931 134270703 227165585 650434744 972655504 818447124 821396487 202700252 554446801 449934579 862919421 707541936 797333202 654571965 805721385 411568901 917811653 949786135 963069655 722843561 805447688 3441634 862485974 878094571 878577837 583466051 927172034 178293608 959619848 500507164 889236461 406488079 499047851 488244343 575124121 1797706 337349194 687845386 839688183 608273027 788978436 280152387 739928257 747643596 820587653 208626047 369738536 670253531 976683114 595391908 689651768 951633194 981477598 837426722 946623392 808856745 991864066 33258317 810530000 390092613 778442091 326163923 579522470 914359129 921900729 799364659 894697416 948799224 982074091 420643805 549936342 510837811 739078812 622627187 638944019 205049943 251353913 830704096 931173426 439399572 465406600 198368598 395850750 704476371 749824687 630565805 909574840 571845411 690035124 812359970 893534656 920181682 966233109 933614209 971140541 902579797 946366698 922094762 928159011 382547475 504305513 453262850 672890341 675389361 752694446 288121707 426410954 321283378 583189623 124321296 974875670 675271049 818928916 293208116 608168219 457578531 676172354 890196357 940618919 95928306 785609972 820860322 936085288 955928282 994646536 260780540 539340049 227531450 573567616 814682207 942482540 959159319 962005754 241563967 614358033 467790611 931951497 57753413 144334937 382788235 869552804 433094854 554366017 295709580 890655050 226542646 826515688 661873471 856955851 703650226 966972040 556481096 705251542 767020847 891767440 570580902 722624608 423997672 432512532 483283018 561513935 963724380 990101154 515044820 621725853 781785099 821550175 415971883 742982922 959392891 965443176 866055940 915918738 90887792 392066645 48620813 539638111 811571111 829892449 897667246 909227955 910728040 925639681 771076439 880521209 958185072 986700307 259390934 446180056 552165566 832066928 928209799 946927081 64752044 892913369 129818345 879437325 169818863 229373347 770427148 974103015 711403801 866997663 464591231 982886792 252971950 794928904 915350635 923332589 510051055 945569361 823907918 976722895 968183306 984428894 293239001 727832278 345328874 390247091 714429034 740045513 203290885 700679292 5465381 538329204 678169921 872244114 75648756 195978503 471567169 632660575 618795178 879600329 987402704 992711497 51372885 140335134 193372172 859892747 488180496 628451247 274177503 613092213 286385148 971891314 725910053 922298180 533556107 717844396 140846219 423263954 599974734 981997658 651298142 965118226 104740893 785646690 252787982 835314252 853160060 913045971 484976668 519786880 437114357 777294320 85324205 493057681 971074649 982972084 284528802 814599424 369238332 410829975 758224930 908896553 535146665 599222072 657613166 813245419 220174638 388022299 1955432 554214089 198713799 450528297 16209613 310325856 419094185 581705224 831926189 899952320 380857163 446186540 230785090 291050409 14943747 601776462 228187959 839508455 801454677 880844515 36664570 855756048 496323134 517932737 697119881 790288414 816804991 949028950 346515553 940046178 590603401 889980424 97030055 347820301 117689038 550398681 63060576 576144723 942282949 946478391 689806417 690405512 272503196 776559018 733136105 914357392 541547649 891777492 703567087 919955243 196197825 788300207 76999363 294137027 65584120 364216636 507620657 865944248 621621237 921960331 400355123 988561979 716538892 732705471 673277400 752323757 86851881 311510499 119694651 520028834 897586548 959189519 481904146 629177870 468770772 968121607 766001023 986243712 586311877 868332417 520396069 812808182 151469220 741737559 355819659 815687551 286074274 396461648 712371769 925076041 690206965 769447064 435473967 771281239 547988531 577001713 262222449 772819928 644396884 798539193 435013313 679844812 217397270 369486148 159181496 701867489 914529923 985815172 765949239 809531855 755086981 817398371 445860262 589968104 449883809 727447785 265526629 621852480 298048570 406261836 955514001 970472488 193793967 884847453 617449803 774114873 669428806 756029760 573305635 771616142 528387233 882048422 474885136 738567981 373895814 752604237 941517283 994563006 448868391 924553147 720275167 840461557 590766146 784650194 950106984 956162475 996387793 996962968 176442465 978647625 320992210 391793226 834259017 931769804 676276469 782510435 106616984 317192664 535057597 769262888 868074385 876825201 338228984 824741270 701038080 969464043 730165043 840265856 224497675 795286523 693567396 960130407 682285876 782331005 196941083 830483788 234768838 306471308 889315819 951727662 128651646 794492176 460424336 716271479 850270923 963278408 171768382 526272389 964671698 972761798 663072971 839362378 846832332 852800581 311952005 720301685 694173404 837438278 25589016 558629661 919649931 959629771 590620746 664517476 295725542 860347108 792859771 929774404 79728348 364265102 746461597 843459048 684419232 942908034 996885970 998912322 345549116 737527101 677405345 887632512 734489342 761966724 194595354 666231067 36301484 817124449 181325766 814949423 88093199 898594642 977239355 991631026 313225797 664186260 841764402 903785014 82023979 395254514 661037307 786297639 996129929 999211264 368991596 455797554 211343873 494005501 280989575 905379557 433490185 457068546 935387443 971712207 925147774 958815005 428362345 525436936 636278131 937742838 185687853 850991280 978432554 979668559 433003530 609240662 934291654 941604434 483566820 570329462 27815209 443525652 722215606 731922529 172400934 495545194 916428447 940994716 965010365 986118703 643623812 668529415 333336020 891538798 508927369 781405221 504369337 892098434 343327558 997668745 40515579 721599474 50989956 263131888 819215987 937066143 877501729 909539504 575937255 876634353 583035692 646315565 837943496 862603208 824968148 957606072 166005575 376980476 236253787 990540117 122520891 621808008 731383359 917429346 72932688 439347379 342961166 684520407 782952962 869521511 936446799 988485229 226470312 613192828 359547967 394633425 554655153 654581746 327519537 828747529 115377690 566576981 48415131 622614056 234730209 376406061 284931102 700416987 131583711 983903067 822425523 963443472 25764690 146315444 612493687 998413294 202351343 485719011 566582009 894277620 735039522 967551596 273302521 359648151 479367552 508008027 480811582 540620585 609934978 702058440 515550326 617939531 658597656 737825402 903280690 934324521 608929277 842090515 362746472 461577999 502768809 628672507 668300719 920867957 175608973 209863975 323317771 951212120 767356803 823147524 200354426 338279058 448883088 561585514 99761777 137622887 195278391 800582636 77285790 342353395 447830341 451409186 360873877 837605169 167534726 768395822 233777072 505127250 556272814 807111630 287861313 934007171 320593404 400144537 596358558 823431340 282344073 843746494 502051202 633057582 69354350 655671017 567216247 657343671 501441007 836676545 612167306 854134989 181144341 621263363 130494171 644735967 746936742 869284899 863405188 968470089 108489795 489617279 184754642 387403772 370049529 938231761 369612147 683164495 448927471 809688712 240012569 530715302 925081730 971848264 422214347 879694260 655748075 726417366 783171777 998707095 884626559 906567896 379823769 780385542 149556130 792857060 29005950 121828754 277735070 423479892 37365483 422390371 565049870 866147463 568604512 936991259 298737124 371540946 382402181 518790963 296292368 405766424 74123045 324436586 44640505 738931005 666324838 892568621 408507514 901585354 309014710 366109547 190464999 795269681 906993516 971136145 420260830 608418874 838575402 894389363 225183773 233430997 910395881 970553589 468148550 544490938 940084739 987614568 682145999 975464717 254348779 861292731 247459745 790479673 600431356 916536689 20080064 739928000 135416274 834666454 731018087 760205651 202564031 482683435 349199099 712481672 323703993 684884645 946953747 958695126 866723183 998242251 750696698 912690161 337717352 860907987 187668656 735122438 604355780 906544377 578673214 715027774 722853950 882738444 490903225 831405661 107484526 894097494 109089969 604159818 460287277 610281690 813208527 892064339 609997402 801759784 236742046 970175536 368844883 818027824 541808492 858435324 881302307 898291516 195849036 677325583 520751732 897563053 54903523 597026595 555108451 624737233 411674209 793301109 466831131 493254440 501990794 903110490 843659620 991788135 221788976 536852024 853187584 947647891 401889023 423366563 840762117 960075122 2768669 968261851 791486328 962878934 929127733 984171656 668644132 809994185 208989838 752014244 687577925 960729108 392058408 685169114 399840664 683032615 646019479 648792287 25497026 505770181 686776573 794112054 255502590 495639229 327329845 859338040 482172443 630294839 718963554 796380656 186135724 592863607 489686630 966540773 625729948 775192511 711454449 926031937 396855369 817625516 573710464 687395092 309850976 966229544 551347746 641575436 495847094 981880882 479288312 482478644 607963951 968064896 58241013 820541772 686920734 755534534 165717297 820682491 516476974 788365220 755157791 884846279 712216131 844126304 381775404 748509204 697500452 702310027 231812931 477322753 838039276 917635594 861980582 911116829 584228948 664777096 247945993 330966896 114162290 343812419 60902822 445923249 200115354 402393919 525827022 922478659 143929778 822533816 853312284 984238116 497280510 614757736 173834404 529929290 336027894 595101453 147782777 496689594 511682258 654727760 714631480 756753147 243619380 336863315 550242229 942404282 893263040 974316708 347179507 537610027 786984873 907265071 828683093 987796118 136680784 789244617 283431003 640978772 220473697 911474675 986877290 996174458 669862309 932017442 241652446 709555335 105025349 400905945 772872446 935243078 618563624 724569104 789922193 803125467 105900073 602047649 402748565 784460369 353132925 608334636 780220045 821471029 813478583 877253163 172604900 402702289 6049682 295580276 255092400 853504355 910159043 943442569 698136929 871325337 127235473 346384264 344179415 752480171 277028401 444928084 279056517 408487579 148043803 608059475 300909015 665626708 188576581 243915122 243578580 334024817 610051696 692275649 685394335 711830471 847441336 906916587 463502417 488516381 255785123 514373342 44705891 552145012 676822098 889231583 496795677 637348286 813640227 908785510 309456082 697827941 726106588 901655742 292835066 515579204 648578003 766503371 181824805 993955929 239699492 326537266 214780187 458925855 39570938 579945354 522789424 980228489 450549654 834315935 637181153 855983174 298377583 765716784 860091620 998735504 749479988 864117803 232669195 795927811 225348929 567195916 930758225 962682032 285068794 965382317 775231136 903757092 815232995 970025269 341694680 961625300 305804518 964514158 247145257 399782172 317555412 616756887 807155815 988198177 933032676 943679358 752543090 888811227 191557939 355739984 549619515 820707211 911117414 928405273 445176646 658066085 539389222 963785391 463940403 672601619 565939209 900656851 137302075 897153165 331061338 487683518 870809075 893765100 344647750 643112788 772904851 812473962 534874751 728163576 963576041 987018124 607931239 863902429 336337332 717998583 373105781 517045557 870026421 879529962 125626672 776791446 25507321 330915861 615556697 701001845 424617680 491272500 449089974 712033748 508201260 835092038 391911253 852496630 724368049 728175810 117185674 137763010 971942118 976640173 243155621 284834457 768688492 930786710 648991755 858279488 22781321 576239138 687094455 718764037 246242793 361939481 43335001 125016586 929418865 998415189 801206950 936242376 676480989 844105918 88934227 306578643 544451324 785469191 407978509 451977050 252685912 844247940 598764948 866816820 422624874 807293831 12943057 931467872 867033574 949799035 360948875 565987764 35113138 562814855 81411727 119319970 388609916 950184995 358463871 954179709 614569982 818900703 237636189 867569920 533139101 850653177 954136000 986783428 931421888 946963013 831069009 854649696 480746342 968207180 866898781 950462963 136434049 218762440 576137953 830226032 809621428 955518316 135106919 928301869 725867234 733502839 688160883 837559563 300337783 846641511 830641601 891509573 805842427 850924217 8137935 856434775 330655059 378234072 892527934 946334007 655459678 664325650 404583831 798987162 87259068 801827674 534587596 866955798 355643099 821063791 966934070 971296964 401723320 736982893 768729673 872508810 66256372 958508404 938621213 958405943 102814928 629001362 866168977 884141279 272019831 713831067 267300800 950502412 558590293 926433238 966383480 982477422 179115069 977160563 329418692 762745984 223893665 928762503 234832730 615785517 252187561 957804592 959450622 979665914 34611491 990576535 588826038 907390603 998822961 999204534 295533516 463467462 827400415 911715656 393151840 753900330 770530172 912822626 744830975 764573541 461974114 775959477 350900083 697859998 498409374 712979698 709913363 891577440 141122314 766556639 959769760 989920711 735140366 765534150 318132531 804893781 782691748 958206050 284710774 662071570 696092311 789256578 98493370 161377046 535376468 777752728 428204793 894283834 58647632 853292686 730904429 735054798 737288537 820167033 952583689 969977366 387911074 801120550 240169543 967119729 478151752 991477874 90439967 644412553 241165839 395077026 973441389 988528747 46106265 494434730 767178496 910334964 637297090 964283640 419028051 435973718 804300088 981668344 408586894 896501573 825443528 879344771 884579272 919071518 534959710 924028234 969640391 982397869 905388226 989850477 133616725 623961139 854320264 977781904 937489604 971389545 34280629 183352277 167905260 533657047 520591336 930680059 801563323 921915222 545645167 657677359 885680269 924992587 162135919 687153903 302301047 829949437 851329293 984214924 757354332 890256051 460278319 932900334 610674057 817021393 47402522 767729633 277941813 328536253 105500194 675877314 721651479 989967816 705309848 989051302 639668914 790543248 999044782 999231895 421053442 454014752 986507609 993310505 79742902 563654875 756978066 930733413 661479382 790229724 351134679 529351922 598209303 746691970 506856199 844277469 981134292 982357742 143003971 296385781 652657962 885340065 637640793 916650740 836315407 870603858 564397708 960651673 461231679 469371151 572634512 671222312 643093402 753884051 17746275 198874329 894631002 943090745 7579577 651289040 705229021 979851462 905633099 950260460 170949226 307696729 474469998 707540497 596197331 738677279 352849007 538936939 362211147 819872174 689048551 942970447 680072270 975006259 433612940 711505588 747280070 859584127 177119112 921667805 506199711 992947529 387883641 448961886 636697624 686084742 776919033 783405579 226870840 371697876 910097033 933156806 228845717 454650334 292640553 293863271 11366091 190135156 730797678 791940270 646613257 790493896 576374716 959115273 757478174 838293987 449589843 686298539 308219286 328110517 209666929 223652596 887007289 897540073 48649611 942509180 148974804 674513753 539341361 848306756 707572206 859213548 93090911 839101757 102801154 290865044 992991028 993975537 613635926 899973748 257067494 576936899 286459769 952126947 620557098 900216739 302222224 659459659 323619967 652922034 639012211 640003855 854621435 859821477 959462218 989161537 754679356 974484442 263175586 582094389 557853750 973011524 897083159 990550169 435666062 779923635 132323584 713675577 492102441 677718112 713966451 863569450 745738568 801578207 69223622 692619119 143744842 787048847 376388353 697951887 349983816 706675268 718153353 738914372 3860036 730002029 680663705 933759143 122194059 754453539 496738997 885911372 126365202 571691641 207935882 513750093 455477653 579179373 209448354 966196842 75360639 410812563 611513104 952751770 996926962 998793274 747866723 896587145 88428116 964250048 725624073 886115008 481882874 663655799 540980889 977771013 103785602 937247897 603517082 674510660 19844110 751777994 556263841 951099813 373570970 896554368 575597858 956613354 853747704 860804873 639686857 800992943 692933684 726813607 351934782 912232460 552686917 572992843 579620572 915989046 212129227 462708517 441038520 789163987 228202631 554857241 264526944 343008340 267639858 456917867 536858116 619849528 224492707 998580055 767391780 875890355 602818097 822267295 498503942 545348540 296359893 814042261 596823520 893099899 964020415 973213310 459143726 582416797 509895774 752850646 143160167 662466416 494746638 539049088 82440737 280320868 3634095 716738381 39430898 998312266 753133896 812461765 223407463 312274815 434028078 451498656 382269548 824893114 433576276 938510150 393059115 893034218 185400083 831787598 418247580 930877513 898236062 989423600 12568608 791210073 463029477 849260754 719399737 983259655 861220204 979557866 566357354 880924413 198025555 574207587 39292451 870400495 767375835 774930590 38235781 694638565 22438112 114906349 301728291 503732365 740335826 799095755 258843208 617509593 126812414 989414868 88458336 839170618 293777939 837336671 635341922 742212075 410307567 451619754 511921302 655412818 487258661 622580457 85030421 113199861 163915250 504602226 432878939 698361249 95218414 752110524 474967900 858009936 356986854 739829912 861111147 907830532 314888853 344069314 675984483 757487568 996176827 999158426 419361575 446222463 817925805 963548576 473405917 881450566 365374254 856885783 631755602 782089902 170592274 537416762 298225650 386012829 122801033 344753894 48222231 199816816 117646651 215061891 779701863 995624828 102463332 551016352 721969025 883265624 256978125 448315354 334223670 701286842 324023436 824618818 547889941 967263442 294026248 933513005 103847073 594556507 561730237 642617124 704540094 853776982 997975617 999084990 548487226 721208362 823753199 912831621 778609620 783574079 419872691 749941496 832934518 902556250 278592570 989648617 21638787 546295278 351955338 544076192 491850298 888828054 959327950 973628526 2267304 358973539 369059650 808411058 396037974 593826730 71098266 921378319 235227346 809657143 41153089 118423958 726554935 773726255 201251166 464695127 331396762 769065238 195245257 750408287 606114385 804829413 986249055 998439478 3457682 124092241 632775981 697433238 305156232 603013057 876965065 979555650 417727324 508585776 164001216 365005183 863534344 949883848 86221187 449204609 360857085 527763246 328897029 516280707 606083331 873003308 549698896 909972809 231954973 315957013 379315716 785197159 781320480 940067890 115252770 140431353 49762898 937103374 49240323 624786407 361502397 803824140 730496375 847287504 828550923 930175473 400833661 483299417 214630321 301265780 282949340 821023146 980626333 998408556 626824281 932472945 663907126 829535096 787491060 825562392 237926184 497948531 521827481 648873090 870294786 983473733 72350870 672138354 654959051 754558118 38799790 522083066 583041267 629180252 87932401 333404089 785777038 813935112 603365693 898712830 307845499 308794767 184585198 573040739 858759612 911988391 76770493 586675154 802221330 827522471 131144858 156754130 168905397 445927539 964178379 964201309 851954659 946842562 789612025 917450050 219532061 830961346 414561253 548542021 184202365 949671014 802943181 883085323 783035013 796673246 135230574 171115351 349930217 543635021 205593066 485965464 575801968 632180771 676872521 990836667 199953979 932173064 689736731 907890051 342230781 924906990 7802163 358932743 385679433 575425437 39890767 294870351 317746069 786067153 709135532 853068412 221100667 980774334 307604645 420370545 51546978 707986976 489663565 951726660 196662415 347717383 658473609 827077022 101204623 330434277 125339946 727487167 168424065 842997360 769050823 907590282 242037546 868747347 818173269 872846909 238472087 987127105 966027366 969969245 788742630 923249413 842455833 867299661 185522821 852367169 333564805 960799597 403721452 965329463 329446055 705526856 431532025 572794876 43054969 573444508 901876606 958041587 724946691 820489503 738104883 917352014 897044710 903730924 343817799 698986223 516621442 950885593 784536346 807330230 380404285 644753984 16686160 630417149 646216558 877445662 351987206 547346534 354861579 757097312 981781423 992177135 929278784 963923106 394925018 502832723 832701195 865071190 200887034 618246976 908244523 926993410 835516610 859910545 275460104 449074594 753225850 950422040 13690944 502297851 298168613 626708519 566899409 767794847 387430529 398338954 36966664 491804658 617816387 908816194 172439787 827391213 710234532 917343263 387356145 623615310 147778588 990088116 562447219 914336655 421206522 799917202 378354812 862074350 111880426 487225971 73507579 695269130 186926499 826474074 502455838 640429646 246610948 593349365 631414227 883077687 792355369 850152081 374492914 645343255 589222916 663202019 9557389 895069157 122403022 819734828 655429334 960255785 148289415 322050141 194047933 631407797 129342655 149043117 466250835 860013463 727580678 758978328 612565392 822029868 407547603 887175745 442123880 562190049 233955973 341484315 594803462 817735368 659439023 718102476 264008323 986646467 209228654 279111513 404979052 920522507 14947566 742405814 809582180 834226099 296388547 636872872 218969245 837019722 40864472 501481119 126036758 471295257 232379647 882766776 919387116 997968690 260825698 565902731 676830681 788088848 813110313 924382843 328484189 869734496 247934259 666131514 570148153 928461235 429253483 776310786 104650202 489422620 740505341 811344797 838802419 889764894 798238510 940860824 682344472 907064316 54551214 416632130 404922970 962254479 174127879 574824745 768277582 884149896 671083662 998247708 810929211 897063442 975438039 992014445 17266743 669460314 737429424 907732675 368702458 470911930 652041732 811453892 385875623 793443128 863887401 906716302 884178341 958995584 423854587 435592233 420154934 684624481 194076591 803683616 876586894 890939320 677656645 915694715 812214747 887864044 620994613 872055707 125815750 136055167 732373853 859824157 693841699 934416142 31370042 853745201 379755462 894976825 380046551 651283733 513017549 982414348 750670614 858573326 140881490 726101080 622086889 977843185 560204797 729514587 361058086 533567349 812527807 903877078 474767025 491489016 946007194 985460674 58112781 332018371 956529155 956619704 310985053 591384671 318614627 924614272 190624202 968314230 85583628 377485553 710031555 731212051 688510666 722505178 570428308 947097666 911862125 966734051 86637484 986428442 377443402 889901264 582440751 924532269 54590932 576169672 242787355 369695509 108440061 587014824 402715543 497900336 754634406 891558181 213714791 370443372 684611891 914401705 612231203 764360576 258655085 872205735 303332837 534696970 158445110 716578814 930165720 948181697 972918836 987501740 388564619 467313654 273417015 990915231 946312803 972891720 163689132 636436867 302983200 926731128 249019184 505153153 674636157 790084133 387669628 810823332 491354804 645072252 5687895 919266250 818844062 843368492 612764406 931586826 975431384 979680501 747341183 962530782 964033199 967050235 812003526 964888212 634383601 932429561 890363890 956554639 627752695 630401039 32741376 512709781 717767808 750099359 728948027 996832066 819309354 976394297 598274620 956731292 707154862 965591125 621827977 917395502 785998080 968268664 253759169 757669637 721885457 924067552 432113782 665775677 701172036 794930268 642925163 811583865 719833458 936910971 464019823 641328252 584501810 988044573 418959256 788898603 859543915 952473575 531685523 768195261 93819785 399605349 775631832 777306052 449846575 514450189 273640167 689863146 114417483 974681497 853103989 872874794 305587338 439735627 627177503 758476293 208152815 500778528 505706355 673624745 340529367 866813045 788210961 818121832 383462095 686051202 87625585 924083885 859019062 929844571 902930987 921711562 921557517 971420079 566642623 602996489 983098376 995451643 107881038 385717662 943394762 962596230 894485905 966106351 472087118 872157308 767328749 882515038 642951638 645236105 655146760 967711640 374418525 711483838 397586367 982220281 729681845 891171689 469883037 753326825 719759871 898156942 793616522 820084864 345600435 776514357 636150147 690794572 494949617 580133968 389956148 911086156 56989318 831250570 49727691 147642435 290957245 581433468 416633517 588884936 462625060 683045325 893118199 997442801 294657413 634801085 293215438 791629490 68176777 516710255 555819192 779644153 765236748 825192869 753042476 799821826 662130462 735143790 791560632 924785583 41204930 877959481 69249355 400491393 698268613 969157201 944305554 978420430 700518877 803765152 821883518 981526977 720118604 799253648 826816036 919980800 970070342 979903846 332786148 496107991 123164024 192175160 498972673 685715713 690737248 915860731 871962231 997172997 485397464 788658493 20237632 723110943 878444921 985185294 267917975 507293082 259139578 383566253 76108406 518279117 14146429 534769562 660386313 666531374 262208582 757774519 111076573 508554927 126915136 345563713 484837654 913266386 49095667 560403588 274379311 461642908 548715752 905819799 83938694 893978213 473182826 925930562 778262287 831281481 637946282 718352427 874119009 926758453 542676957 660203222 974884082 992666559 126734932 952142167 842657819 946755194 894553188 983096982 687580567 814429708 78773096 955704668 520455457 649128007 892001870 924389522 979837545 982117103 249848378 389791899 782193973 885224991 627564325 649656796 138615699 445242110 388099665 436841794 665851961 757756484 691661115 785957735 945260849 982814356 294704174 874352937 657736913 893555631 501082936 615401400 277371160 341543526 868435019 928953555 233992325 367750866 447007494 740997365 80292820 869231239 816327094 905283913 909619602 936774945 640241606 829524429 849162564 969134892 73368866 898394283 643093832 885765862 548300518 601748101 617376371 644034818 499816632 612382495 266167798 985051864 865984879 961596660 172965071 877194076 538106494 898770659 802188990 962527188 518046102 756407881 62732241 196438810 937372648 990514160 73529598 467143300 430444107 443779504 431646116 505101276 85432367 496055714 445269324 586783849 813429577 971431705 876010259 986627434 128900297 812694360 951849636 975996735 746789674 761033500 634485709 853127556 711363199 998509935 689323875 935306679 890017871 998244809 303728316 601487681 652499579 779881234 85551341 753205009 150655637 292054115 501458258 783694061 379005891 634714744 580259212 635616315 71728515 98338362 395167496 521306993 787174313 975318772 194568933 254885279 876052287 929329592 392507291 730928660 868306299 888498750 235789230 944825532 266527428 793308536 737215548 952792253 924168303 955670948 169411825 580232914 458891632 870404690 529373047 856137813 150664484 367294659 470844499 619806739 146995094 504974185 57467629 766865162 933436692 960559487 864211882 946467077 241293617 741829301 112058148 124926751 572840547 904650898 640117798 669913251 566968352 587127307 45322394 526826508 351030211 372039526 359920957 598231850 365027550 970242123 223445588 451161142 816975298 823768231 634302730 690964714 846441118 852170457 38471835 882751946 769519951 802405291 31446039 355469062 576839797 611745032 658599906 700340881 537299860 794431770 457360800 603312811 57454109 941200566 115017957 556660311 932598394 972648045 295088007 885189503 44338049 75650452 21930351 987228946 423146874 565839074 217209081 624329196 906629943 916259594 58704607 979638158 903037044 983121944 744058717 911674470 470496418 672790572 303014596 367658452 463515014 939784648 381875887 909757600 437059709 498745133 369241449 961361926 505848955 605477346 535953321 887604150 185951540 477764749 993472714 997725970 843725347 947564703 150187807 668367925 681301529 965154801 156362385 548507300 627127970 637638411 653703315 879287133 152021064 289508130 749492585 988886633 870641411 953547087 181555080 676144550 771576591 789089494 239596194 762761862 453116251 698292955 633955609 866284110 805421532 861212761 40799716 121836201 77219279 84631453 119064688 137424489 599346043 732382729 154416565 965442113 451011440 904443078 236994773 954199469 179691745 463241518 929322350 960541868 499227996 509871184 876028581 883465749 411227423 611508170 380241874 409490873 101753072 342864649 553918160 955542256 514599692 653136585 311956173 414668045 375822272 938924030 227020800 550941188 135745789 215879508 356023171 826194628 919958366 994369663 745313177 951179248 23323522 144504103 875862807 980469782 600470027 880826095 77890211 738083716 229764648 407351121 932530500 956716264 197773443 226485158 114847722 389309703 639902628 966262122 402660187 945076741 852480004 933274302 354925972 355112398 932673575 946650903 783206762 837125075 941517941 962787933 413194916 739670003 613923586 745045357 839419072 847503166 496568364 562123198 735424690 817244448 978104102 998505110 939912776 968511299 15161906 273969056 749276981 786340010 25352058 164993614 353962820 838370768 63418180 468005784 237687739 525032292 621653472 967841738 146540701 606325454 701914109 743585076 289699281 806426303 652212581 961654106 154960379 342201713 916965931 955756270 815251663 912666503 372806915 882952664 639408352 995666114 695023060 917425730 442399296 627426363 832141898 843789672 463125550 815395794 370713120 747205269 503674920 712016403 826477744 897171030 936273324 968163366 48380569 169079239 623953978 629392894 229534464 597076128 579767865 857793348 781182282 913283710 185326682 986596131 900783513 905153450 207091386 387212891 670104094 959766181 505850771 674959303 243766822 808564849 340152805 839354356 997736115 999044565 729955929 783875493 415366686 938003227 796571966 928817353 867554273 917758302 940407565 964569069 46270628 642020153 380300212 722411015 295782968 588627341 912065161 993514847 888061641 985420445 824727546 971370260 933696794 975155032 773388191 905536949 848045397 901547947 552735006 635792967 248768211 739812840 693904823 718276188 663519305 792162790 504716124 770828336 892395360 928853577 805913048 995158899 2172570 494304105 982113282 987889972 229180262 698069297 387066113 675545809 7710002 880329129 352771343 361165550 356503007 755460322 400354805 837818865 862049968 933139062 257025155 943925289 252048980 637780649 242853489 413869506 519043942 942253112 91220826 470504412 385122530 933145518 328929089 518017423 897684870 988636229 801424991 966033330 672237964 720445994 792611544 965531411 895385175 975768015 824973637 881303717 612556912 816984410 45452713 952552530 443328439 756645653 489530480 664361868 950714686 979650564 495869856 642317308 805766701 818576834 271356073 755994808 621448356 982988928 32990011 408617869 916925267 966467418 417201390 657267270 244609360 647128397 255974671 800110414 537695277 752467086 316679836 380197548 251783288 426120136 857805531 925621133 802150076 820305863 1553725 502167002 605544456 874238763 386384911 715911486 450703805 940115050 309125577 752498702 953957913 999062834 439092628 686357024 188966076 527293767 593808430 989731195 581117585 922083633 101645454 896305387 345997197 695737105 969494149 986891623 95261297 610732702 76008801 700503212 97977016 217479540 500242170 623924491 189320712 543042196 567787210 913383122 118662385 346966533 71659534 248681671 376923797 680926129 68370774 87209155 413794073 615099485 783512291 957459990 378131266 570958961 273057704 638403196 399408720 684203509 210776540 809842741 127905499 242646133 107311656 414067806 75069225 419034717 147198135 324589936 425916191 617952454 411238779 424426493 822117380 919306693 42998733 393963155 564899825 707930802 328073383 703273750 594952497 861874714 88114712 590922047 977342588 991531617 374629560 630707134 818657602 827755295 412221664 606008015 214099536 380470443 501208755 515718258 697484912 705658424 160941501 699890982 766786078 850543395 79610661 402019206 937052540 978695160 872821175 934409939 718596537 778698779 364878822 957037381 194775300 602090661 741183311 839386406 254701874 489717421 460514216 523549373 452726606 789173382 501316441 690087977 481298426 523343236 140039575 146526969 802717880 937947581 62362942 545862240 539525770 955743737 652329960 771987286 742020931 924199209 717681996 921564019 506386498 964756318 490264596 752102880 332801336 383147456 305159015 696171939 11517832 420843800 90970636 105042086 534971694 639386959 75791194 635283784 142205679 430260140 365785431 591799931 502283299 880183829 837369323 861767870 371597662 601248254 610310757 701954163 298753328 348898233 101905888 747656012 716467735 768169388 381634375 953199616 915643794 939277031 361277007 410372587 251513015 656370875 441758909 618347236 45665431 200284047 815354767 925608680 338193185 830462547 239987293 318079338 542546260 585089812 207068277 572597378 819669992 943404183 466650627 854109588 663882956 736535579 607847407 702217104 663504156 733554139 659020492 772842979 982495048 989110675 629701883 911311972 271164046 391357104 670283474 846987040 783589229 939997482 364518806 450365921 8126656 177254041 992131247 997515474 374985430 472303167 267358451 452993531 799089410 965601179 214335928 342862236 410172643 870904198 145919248 315141666 314696614 924171073 158263555 669540114 257917005 790689606 222080740 898960013 112738195 955258471 3478672 986336518 206844565 820316249 273132103 994337268 260079103 771627943 902878241 975137884 980017072 993045452 24181612 82612628 594907512 904491340 666964950 992362805 528901793 551718482 708084964 981448862 905441152 984158134 646197694 980354606 809562012 899465439 499613945 596583748 920963471 967958148 120162183 179277668 266059824 956954895 958147300 965045929 356676735 810458449 291139309 972352382 319427232 384131709 140540117 231316965 958381634 971801435 657066391 857264422 242481587 904529125 302198795 471831165 250374031 828908896 978896360 989352662 465092053 843045937 131528533 623259537 244014234 358137285 818599219 939319080 238757236 787439771 703488046 913511549 82964815 441992616 484938886 934959474 842833756 997407787 359134076 849387236 728565352 946359339 391284737 532741825 522167932 645670312 529335459 804651584 134066475 658396101 589385879 777309445 339690817 483646945 775311618 945731741 681749911 915025708 235826646 430565259 64828308 490739233 997439535 997892228 869326301 886106367 902241979 963325858 188702751 508295342 468169546 989880058 144179256 819452043 111687431 216080764 388250271 487897133 148306944 537825157 713827997 775996026 119038367 533475304 112355126 969393068 980406767 998873078 421003627 540500991 310675172 770888700 41354530 813566042 404034793 867248896 395091216 979809687 277139931 480826333 535467896 745412046 988917380 996079659 86477638 780364451 112771266 587398553 835232135 878146922 285238140 329768603 455171181 796994238 887535813 946280614 606024301 892340120 211795652 803493324 356809398 485289184 910795945 940016828 208637298 787904741 260004724 467700776 602812167 645260240 293666106 751305167 745163526 751019966 167681890 579203842 576836641 586050016 851326223 908301553 673995433 733254200 656182312 850725257 159469604 862816884 627683623 710774996 518491194 929687875 772119848 917349156 963382355 970795480 285913690 874988819 560812498 805448668 53720153 58912830 290639704 927583316 672053360 795600814 72780472 601406451 918257309 961980208 414059455 545068434 988549443 994755515 346348932 712983159 548063766 838336738 188959102 644910775 166254336 398490251 477249058 702304124 869868015 988789347 717065716 759779152 965587772 972653079 979715201 982815152 185280485 871407403 681113587 844331937 936538836 973115632 196670510 890741590 680630928 870781304 86246263 798191897 426786707 550859829 840001430 943676054 227375813 563926001 636531122 703337041 960460520 973287019 298901324 809432532 282610407 362140113 212192445 604076774 682965963 939711747 919112095 949350186 288076604 916706048 252644434 516260300 329893414 925721926 139440349 657781180 972698345 998564044 552294172 622394467 507927831 910126746 538775270 886175505 188878206 890128433 788297552 814078481 654622397 699480264 825621781 894020602 242043686 949386071 392947680 497830269 154803509 989528367 711898250 765095950 906048564 961719983 579692526 647929821 15137335 69893606 103784832 902302094 553659270 566672297 668516057 993127341 452731243 591018217 984944576 985994837 120256350 397034964 578836327 711884806 98273605 931821196 730661824 862444779 598160847 739610700 842052382 852289649 728126099 765695577 127199251 169423771 740090962 944219977 955820560 968589305 344157291 746213026 143903000 213516941 777523721 982608336 642857917 804634944 938412862 952345600 312933541 703744445 345326946 902592915 405128359 747502713 127350052 623890310 339658230 594192064 101635891 227034140 567260372 623159614 75599958 373396453 410014336 642344209 751374051 925799414 903862649 949377556 605503230 908042126 466189787 618600736 376462995 524832921 522281392 762540521 669756988 768521532 607942149 674759230 46622058 572379171 324692695 578191607 636455488 803565364 926010528 960051930 247412620 263448118 420639924 544359186 476994462 743569528 102250633 971847365 752467478 944767236 21598470 215658768 512768941 538234569 937700905 946429101 521023846 937055081 339194361 957135988 35124512 657723096 410846484 571849295 155444085 333858902 541775353 932449295 465978182 736762181 927643193 990737152 702670833 983911932 880876385 933746463 305137196 485707425 790028415 989931526 189140817 504300591 995742649 997991847 94896270 450756506 321130022 338381657 33588628 731917934 640226003 664891807 879914260 932497780 995913563 997617913 554847666 957696329 621937778 876028772 621316093 691904883 753907682 834310615 680391030 747610556 944157135 949205022 64417296 115670908 134810848 175505885 99768210 457152061 607315606 975476801 126560422 343793724 660205766 966467087 114121492 317672541 838198073 889801483 316794980 857207724 877034866 977925780 909672649 942699772 991119750 997268195 908677119 917014657 40370471 612180078 270476244 982508679 424258270 530002245 822559739 924536062 206425393 853178975 833283369 992339875 627149552 790539500 200487046 499291258 912964650 940017516 146114883 380804934 406684306 754933273 202883168 256244946 610896202 725349496 915681578 921262913 413549273 488066521 210886659 436803560 510520786 752189587 640296696 720256418 426342758 679287082 860183267 928001750 542643357 570565365 808955563 893123664 956903538 970499195 242018747 817312152 633449435 750514832 651586255 879758309 839631493 937624927 351652661 929389340 171489372 336761108 259334606 877060790 230204742 697977471 207838603 892626435 489335833 717854189 904325619 969410759 821813811 942203051 692321160 972936943 404506739 493518875 197236540 915083995 91520407 165416587 213858221 626926139 344863403 734369662 534124497 961984329 544117085 747784919 474445062 839204004 411927879 526152786 771586288 798376948 511400509 646336958 982573166 993884762 763777485 925032478 409924288 445221346 770895894 936859144 473496843 772979314 525709533 880035284 148746822 243638885 474338152 555554823 108387181 224136016 874207374 981606888 391379302 410727718 56371867 107284928 702842828 842793517 100017237 422492082 882048132 951760295 313634045 997746142 860107706 976521829 286300821 418562870 717295931 875533074 330454375 661421436 317917508 361252229 696034854 940037964 680268042 756268494 386834897 804285075 169032297 522013815 678641864 868474301 906745606 962979904 384982849 952327713 777138271 802740491 795772410 815316879 775491419 865798892 374804363 436882352 895919041 978113629 245174605 739308187 427748614 639963203 478271872 548830645 856151653 864606920 852332928 985035836 563418451 895855748 34959085 577720950 59559210 508110393 907747633 939713165 375023126 965057564 386158051 731359369 675417318 941202133 643835746 761457891 118162342 718982560 754762163 782116721 377038111 647621575 181070589 611083405 428673835 761383058 627808202 869423206 276743132 283843452 219062720 614616568 245286023 886693829 354016192 558629561 4666298 999291866 866881153 907653363 669465338 765700506 494241889 529413353 546696397 925529342 49951832 696276905 998828683 998836075 177184180 326027704 908169984 992676276 136470983 882779059 527745931 823731213 237651518 258759453 737614653 961171004 685430504 732064084 41961515 508564585 535521787 668134369 667705865 709342896 582005020 800387910 241204392 869579000 674196887 777208096 128214528 148517292 696565569 848791467 589835610 944798473 400833252 773535746 339356764 932879922 218461916 652504234 170740158 885443826 186632809 749467340 694032201 725339902 429316086 468882727 805948901 889367041 106356266 460956176 413546532 511362970 526101767 818596668 227321188 781869888 388320485 586731339 464381217 536900732 438853723 802149740 260928780 831421346 142236472 409210754 171396863 596579276 598059967 932307206 862118739 978589080 582460990 829878567 731780455 891142438 452157579 488584294 632978235 744535517 861875681 957401384 932535814 993892629 35692198 688252108 478324547 876912142 931111644 972244552 633458850 786018545 492265649 596566455 394632954 846641340 75517864 849194809 28421715 74932871 577930342 960207846 149770297 736884776 502302418 671491433 639704093 871708160 933771236 959205389 180858969 516338893 833023860 899681483 564536596 570604341 270321292 284298329 622027451 988242126 685841684 731391396 434707565 596457890 836826986 950179939 772936586 969012993 17368601 987565247 978410405 979552185 517676904 872127460 949938325 977494227 834045295 885330813 266044026 817650279 380673344 457045347 724799376 734655410 942455112 972648023 620169302 962120907 789815851 794775166 883455009 919880704 918548153 930366446 671541869 961653873 25528810 177776543 437346725 886334525 819063154 941162642 302194344 804074631 667694568 867009026 290908115 390727041 554760828 779999117 998570743 998883328 294644818 423017191 294443724 766905852 641997740 721098886 582902863 923461476 362738866 839432669 563918967 714568939 505782146 588836009 99771122 976311768 806121377 992287021 606616737 972265949 621843032 960452351 454995737 784758700 329916494 419081170 470187021 731724765 636530769 987360808 780380937 827179528 497763745 823510884 132410904 985459510 799736786 836332521 727912005 813624884 523093834 526149431 631771538 873578966 899721271 990755147 404913462 881374143 382179776 581719486 517919325 978653445 324064684 937063532 947866234 963943051 174043558 651316461 961434484 971069578 352758382 862511126 465230921 884333380 572495508 927120639 141407327 559916979 978171179 989998255 967282650 970633348 512639834 997262814 996417000 997403005 836023939 979122930 52549384 571933018 752172638 760652954 365833571 886401474 587017303 636146060 772892155 969182464 712785660 962069161 310287887 769963259 940516548 959069814 604185262 750675393 45856025 410813825 228291081 971824150 132798699 501064144 123391638 406040271 149720948 207813294 2122835 728964066 919095939 961954964 99876259 273388738 415242790 884724767 783942649 992469991 857840681 889811200 167306710 927529075 129671062 360671809 495473932 947387266 530872667 897607518 504622202 632976246 797337216 934872925 641879048 961185223 764497695 857578457 291009212 451338158 493737712 680427119 134186054 254599184 428195588 996943092 363066972 945703176 12737823 888654974 495661811 900123773 373618649 961154715 156988942 761984312 392092724 694994455 181770475 680768802 209058059 273306037 808924245 975394543 808589478 862970090 660385872 924946180 555911329 801740270 335870747 614278169 605701843 801117706 139169460 784225744 356287874 989962876 588486743 972718706 261695142 598280798 440946185 987948489 252857842 576145712 235721133 461708316 784360247 890469898 25079069 379134403 670897240 967557217 418825487 566205715 897624975 920223097 707929603 760425367 616616070 815385399 64415016 598378665 656325361 774227179 4109740 8193482 352705911 555153170 844473255 903558703 346496118 978924763 512763272 977766197 477382126 670288699 815152000 871692376 458798888 670018181 750390780 803859044 730087362 968347151 854136221 964178288 399538755 808484222 674647356 915880330 384405139 525791845 801377627 994844384 885263212 886335932 252422285 298186020 941622645 996955659 977741100 987000759 82311153 209018862 475819462 828271417 925852626 926201476 806176956 901696722 220942117 384064371 261956881 818218630 676145874 842749542 965287522 995797319 541744217 678404907 280145897 668344844 875320167 959566404 91939638 214224917 577839693 849373957 935541890 946343503 634564631 808740038 755516330 875621464 610581338 767104168 138201920 844676439 540060000 719429689 297801127 778478532 799609680 863287138 282180667 517087632 325384497 446303912 350429392 948982654 626276783 722161969 524610484 564872498 278730157 902890123 569200892 573219730 904918185 920771559 255484564 797880239 272616215 609340160 641994355 760124311 521486474 884262477 138093762 301017472 851290122 885994876 99647824 673959827 779588575 801917137 875156421 932892625 517196259 635628549 19857339 384230423 413289895 540613695 49359981 120579863 914184851 991383127 140054286 417184452 759276756 804037177 557053320 643005622 685576226 695163591 916456343 978628465 344423661 807978365 676811429 977893108 409221917 977389733 509884936 549991387 652662450 993229638 867939227 969967284 602144156 654271120 502680479 865640638 809857692 867607889 946521013 994652858 148760182 295436009 451099596 686787473 711620311 782282370 723731162 983078197 216145498 905285236 350792512 459581500 875993849 939144595 510293157 574235801 575305285 968100402 72884438 563276307 145498459 303045769 159099396 848269502 775136262 907676162 382537179 442038958 391667677 905731034 88457110 230607247 369237237 402393297 506346974 920196380 573419664 960757425 750265285 972866017 190910791 889473280 70106972 589647839 353419363 884988202 895077128 983522814 174812774 617437188 99706704 110202258 354157239 527804846 476587228 719002047 44590948 805078753 366486101 898564071 267133566 996829025 166804014 786363208 172155498 787006404 390960222 666170553 336357163 717566311 186418985 243239172 555855913 734418829 915045685 996222978 428253185 783824354 384900786 435448937 19110930 953191970 936154612 966031749 426167538 748069031 390320323 649121657 450843689 757188378 345772310 348955706 834519425 918341918 340354927 414164048 842010429 891692520 405244078 745889193 332234530 620509498 50540105 525229893 591094326 843468291 529348118 568980150 451286500 731741894 309006665 619983085 78478887 124233734 720134207 836710928 991326058 993703133 738306326 813902125 877296057 949684439 827364973 961687859 973044534 974325276 570097782 778257963 957804366 999328700 932376772 982137163 867818374 920835777 486745247 808384378 724121489 882839966 472667952 495680776 254736346 561251571 865952008 879002216 536034435 557480392 25926629 968265164 822513520 941602608 385495774 760593986 860747177 919664899 26090348 478715793 710878973 972674048 363143175 735455168 326203451 517148375 637908556 655259966 951754426 976237247 432265490 800193109 894559870 977271098 407671892 958102397 133419719 852062775 442572908 975830563 563403535 811167809 466563340 929364381 403006739 600351365 981492618 984651730 199100445 414951751 169164173 980286272 895666728 968382212 871861278 928548232 476362164 518772286 417786992 469971363 627352501 987082974 502837146 973442785 800758874 964298428 736743494 945170092 96275286 793048728 277183332 855599523 157811380 840874672 573974754 597770715 102488261 446251945 664839782 991435062 715625660 863586613 224000207 373105832 631861920 723840323 133953931 909127971 751775683 844827400 361400305 573471347 137941045 516273902 52461875 628046936 305743082 621820862 598180416 934923045 956439360 959047047 716033205 725501056 419043537 421229323 100259168 336377060 670858591 903973958 60133991 400831939 561743245 714278983 894446032 988444915 868042866 920072427 267862936 385691581 149799172 213859983 19782309 977690975 333828062 799015421 579103839 763309912 493897206 713742620 702668155 971772562 660933674 778611918 865080833 872306254 496612755 779205799 178932345 506878606 746351596 906551519 338595439 511172614 192396159 703355732 189884182 487542616 634041040 853555338 680062368 940073439 873689165 927559061 596958693 658713550 630576405 651196255 40474764 883056175 750056482 843779918 166300450 825714886 554589295 984078030 251485698 386135793 712909084 908479126 995112200 999242451 972528152 995793412 960498011 972253812 54740909 730129582 151623558 440434361 432697006 705575781 99766330 833503881 840073761 861536328 599749721 899498255 552703540 605570568 874519059 980255388 501864872 845938033 962590023 989934258 140725930 400002246 661868867 988319981 288666641 673946115 221434122 654021081 572785220 937500482 544329044 771470057 364418517 914670158 240621632 455390383 4000721 687959918 762494457 991504192 736766112 816990773 44403168 126121283 619584741 693033193 9311199 214575438 183219873 446301573 665099714 948777156 650803728 742181347 444547791 495257461 385290076 955211979 58108302 876360320 747050346 981181764 235966697 286330795 843243142 957777309 885659644 987632420 71040373 304083865 935893898 970520570 575742545 593479809 480177973 838761222 840256157 933511011 312438790 669078975 207180490 363547566 197857657 878968302 550944675 651756269 193595428 880052173 649557977 959254951 54592391 625513596 837057515 922530466 477466880 866690878 915734703 933871879 868829981 939759239 368391034 668860265 881100237 894022546 77035994 330282472 684303989 738695002 395697018 879435837 516070538 592081038 133867657 373848716 969070002 991406753 12066204 869053789 896495927 932524216 248246969 556043572 906881506 992855098 89202537 818996048 3805240 533657995 867263343 967770540 879418520 924135113 832320086 904893176 395120225 803527154 590176106 797919476 902002531 951967813 35373877 211790167 71391574 546659899 719404712 879812258 594551428 741256404 61625218 861561526 838805660 920466854 794774150 880001328 952298872 952971328 130788174 952878204 521845604 655091345 376269582 971937358 765947017 943107813 347084530 484760061 535676217 851161291 12385257 639293262 132324700 781765408 343233587 429425573 76761929 361904683 574820622 782260007 52271718 500098118 988728481 991760667 171312096 834942454 282845111 568084267 598920174 943849453 392030601 660717520 303361758 814134381 272075549 319849795 838163094 886182119 280627003 551282859 717372131 822267295 536184882 759485612 906740327 965015747 362145263 428696587 83781857 435452762 295338326 468165018 426490307 572017118 967263675 992288303 878475777 988102602 209048356 316773123 819975544 833948135 716917098 834053388 286955230 384215587 350432406 358017909 322043601 955102648 849737936 962201190 344789357 955910078 216915201 447397838 964192911 964434247 392161390 392502425 613324079 681958105 216796506 673326933 783513094 904233643 942379123 959813699 224193507 400865552 473757103 636544436 766210642 827146509 86078093 818869039 223601106 633752633 413025040 464833550 912979672 943958390 168995485 381447068 567793168 727042529 197568720 376037175 927365752 970335269 398235820 938634882 821159100 878039263 257606743 955854306 175556090 603385269 945523982 950039406 926114320 941134405 892817533 997393290 505638084 700852868 247414286 702036466 94307961 618678887 373446156 872032593 543240569 809367424 687083210 979305838 309455864 566149531 640238843 650502018 28729793 573797646 923562205 943495780 545476071 789215748 885606762 973238344 675841902 903495584 367073517 721018997 449461251 665573765 95872912 629478196 277808642 786652835 667393452 915372377 483827414 531259856 485361493 887188425 522193326 687673276 315411161 503812645 1816954 892585973 297790257 666054596 955804070 998547635 336543313 971591315 972321926 980961283 610630210 703078147 468234545 714134242 534663387 738492656 344617027 800958467 728716199 994375541 809987590 934759774 592791497 660531666 612686177 935284938 552833042 581030015 23332210 311130210 230563271 977019752 148972993 215342924 74083882 168808933 638365556 641677510 326994294 857326673 396919488 647405993 848833900 951404387 570002670 976824546 573431167 996976581 847078682 896918675 249450217 826708680 395904794 979044051 673030446 933149475 238680088 243903856 310082331 560567823 375129742 864551457 384592707 802325843 371472344 542631980 775392300 870884794 790293350 844823899 1196632 421256428 63554587 959677200 864751808 874382865 38935652 322767756 316905126 380995033 269952547 972652335 772699468 863706306 520905355 745938852 990024647 997815656 517143826 744464375 512675603 905634798 551716105 893675485 458001801 662994471 546972909 805782780 249398984 960943776 32458562 34010434 986285346 998275810 74666960 718159935 733844554 880175880 289917736 819698237 451592977 562543037 160147164 263111532 838400927 935625236 569048279 715306459 996125517 999141803 64460570 570250502 403255338 910892717 607696113 864568619 121480814 138345311 383890295 597687460 589193518 789615569 673235650 978128186 553165790 725436174 417076544 640547371 469748915 807141746 506866248 622006731 370860949 428767729 204367308 534595062 43301936 111991125 678592388 963295822 589731268 651130917 851532361 858824532 140908096 834599313 511601869 924296386 427915948 514907725 952289023 956509523 290802393 869843791 692036316 952391647 263560855 919811197 905834747 946922069 800383843 826193679 906239416 933597522 671008994 859586581 636296606 816886954 533390 553520122 826142473 957860254 158892648 998342770 967934890 970384778 33948019 207292844 172750066 896243952 51426979 752240666 932546676 975928251 740447976 744752811 425155042 909165176 259354145 726843383 877490724 980771277 755152395 847022840 695355496 908508085 17107838 495697302 655726320 675194284 411450383 962831987 382025250 922132572 191870088 334968250 137309412 260410666 911018684 916978627 447405180 970284952 67430893 863507238 956878561 962783658 328726591 989906906 585327601 897416773 365270689 960510297 122744455 560841711 290778379 488345838 242089014 516736312 461183218 622864582 654131793 735374194 185739754 598774075 125574500 426256722 621975422 694954127 577520773 890726214 454538295 651349287 312662990 976356133 190673177 877879837 888134667 889946292 746568072 904123259 102055330 196385880 451767390 548897486 937514564 967565914 175458838 227469574 987197319 994468775 734675614 775706099 199914264 686359357 847595750 911191732 445495727 726407724 727516327 991734535 171920983 944250231 369689443 900557255 892961996 939323113 741768339 752859112 99853525 125820996 819831197 940871989 597842138 670298536 511225387 772175094 564447876 987658778 541392515 969789631 927857545 980941609 438938483 818518952 663700048 922127203 494763142 915564471 261617840 851352666 954013241 962733035 526065481 875435265 5942319 284973722 886194654 939857801 791148159 896971795 639929952 996471551 912339276 963963291 536608498 952058981 372084786 504784479 823278785 958148080 607263245 728060613 674925114 793525965 10536071 394824880 320054220 862971067 201079146 963167312 264306008 403289362 602555442 716167422 781784350 794592342 455485585 787178578 337892672 892544935 752155070 773693051 470790221 700995636 933229382 991823812 838883862 854837338 270885434 295150668 151773212 638441041 253698831 319430615 404089426 939285453 731761053 740993718 164335748 665665159 887069226 909309031 195033581 991631333 43834405 371673056 600608568 860931071 842810572 863563297 933496896 988774797 146966447 917823579 45384307 662775651 577399620 603558505 622034024 970471857 978654610 983445826 509182427 655743973 987269874 992795687 532209784 758531014 98482641 822123446 643429628 975565690 343411903 708209328 872305343 927018823 399448057 630830271 939583273 956509485 269511695 681392909 240219863 473819555 472209267 778435330 962083965 969897903 523461539 561670755 474243002 657754770 549352589 898220068 842492029 936707343 815310371 823471225 882282539 927431029 124047161 816238893 990311573 996721145 699142614 836012741 174278408 316037071 622925267 862789066 838486727 896376412 432421740 952542357 530704550 653780930 99041184 919114686 786482756 990910753 107309722 819098481 7186393 175755719 611446521 793705164 384847072 571303765 59177674 644921058 978143070 992872175 406260317 694099118 54476024 698676914 15120192 619610408 202847078 534005559 633375952 996005129 709066809 975272433 522185074 822012083 218166279 599984526 392285534 831016748 197944724 571474165 885025901 952760444 497207861 779889952 493607858 592613397 844199397 958789104 491480616 690880575 271389270 947044572 63347874 98398783 454976258 600006284 639010256 900748599 68249746 718615029 242354808 470690907 856858911 926652627 416874768 514897972 538384728 702061051 136995662 976061760 95981640 408667303 381587904 861197644 254472294 532108971 241010423 958542961 346261014 377106256 62307769 643636163 148483887 188807766 341445662 619913009 599468792 743072811 185690158 459848773 782086881 805248727 967351660 989829490 776001389 815401935 995415935 995877300 432368328 855124574 13628782 251152331 209116408 601313910 55610655 787881897 766262884 841824100 388152392 434809022 618981033 982219574 796011211 958362686 283079938 768344039 733621776 762829794 176147783 246852910 329345412 613577169 541083182 639770494 864651596 930019090 636910120 898585840 534614804 922953525 358028475 792187230 614327748 785467004 972693155 977827864 827776474 911203459 15175654 421852475 979058298 987100848 543634268 699504615 782292447 826957549 65136080 414463138 600440228 752004534 85827113 202704856 270611394 456541238 675043178 962524658 303213004 815338503 728469153 744387899 473761635 900044804 675508920 837193741 494046228 607536213 86104720 492590566 763687454 779865481 471948155 804216290 596820133 793372044 811161631 958674979 546892800 930016239 125335392 531493781 803831620 917919873 688855945 784985041 3316995 579001964 742590408 952223354 401795358 829357883 325165276 571684122 23569176 542878425 770937212 827657150 797394797 960452626 995473934 996553806 54309917 664929482 732112949 818050280 100066603 600434806 789420389 888331591 769015271 888387817 902856537 904248599 263997610 336707338 733501881 795785666 691311818 834296998 649601880 912660703 391883526 419385876 234380162 961186560 28191624 500280053 900527616 977749582 330681567 940340963 750368642 787765188 948747719 959836402 787043514 873977721 959433729 973844643 691368783 992769398 647443313 800478341 608156075 724072728 729231832 943876706 86492463 765251031 19667130 275857851 5126268 723342442 129692906 337977314 455282577 574955382 29834653 485188131 40448774 175946213 272997101 375003984 784181969 817708609 106669362 646211421 620743346 969029617 716055749 938785831 250045292 653656395 594444653 601301716 438378480 981874112 773087358 938400943 831120345 967244168 50025120 157456391 165962301 485104660 550793336 571640368 192722124 769742401 438026312 872413837 480369404 954590026 461090713 982218050 209590791 740830430 149915302 588956847 421253225 618952232 245490858 397148762 950478762 958326310 227231298 317689051 548009641 662758643 862484351 923260782 456556161 794667330 536414774 717248947 300915731 705192883 159847387 482355618 117495398 487756365 568136945 742335539 743371323 982216015 111524490 316565944 845187537 913341755 732132810 752134526 944337818 978488943 981031230 996138701 195060272 721810580 279592152 740434721 633647956 841070707 557513864 920982868 324484568 702397633 61831933 110682798 398267944 656881546 693020660 978601351 970244797 989306162 98516267 737583469 776640480 993517542 560784880 840852223 914186107 959092424 827932754 905228024 741926851 996765384 427333909 547156428 556529296 603331272 843190991 872145266 396409008 976101211 320735842 844520041 631113462 883803318 742052568 806338494 375912639 470221798 921411083 922541786 291658865 632567748 522288147 799857623 953013370 990896036 940281312 991069544 500233331 502319876 405552401 477439745 293924304 412504006 613987233 828443800 368826249 709741575 537620918 969036827 626036527 796808254 778622021 837028304 608460305 693011643 587723947 686293731 452313594 481673782 410528948 509030039 945504721 971284355 269345615 859014909 37788825 891961195 161881340 168736005 397606664 955318385 922965155 941010007 977798142 983515144 162525657 999232144 432772527 746907734 961792179 992408874 978576706 981942071 255759453 582573321 697425771 967011422 857629475 917824837 701877306 787713384 870585418 941469122 72847951 161750180 363321593 535146719 747127328 960129475 140928278 982863187 234462584 543317312 798998355 868742056 270771259 659743831 628250949 881432861 407716446 591896586 807960537 883060409 246540308 644090200 597918881 901986508 621026809 770212408 148365709 764046942 570434299 597974675 138585328 267856876 462897792 612717705 24028137 642669578 450959848 933622541 220498141 783197201 850058081 852906747 188971659 539036163 448825360 854790180 480565229 765180193 554473259 791413299 722339709 932295718 904179746 952983925 391726256 770244559 138997199 338834055 316067324 599635771 800398398 936782261 461340775 817211343 101824366 782845023 691204698 960103933 986673534 995326959 167184910 899382186 641259331 686755756 740851872 930889017 277962652 570656525 752712721 865549082 920171033 956823826 702534345 910054804 341463578 449871918 343563411 476475101 671027935 787563294 476082281 745026967 891639252 938979050 256697731 326853364 49646321 955159357 494826657 694240055 208074708 538996891 56690606 154006524 353091160 626685035 285770383 536396105 442064252 597137296 270686208 572773289 181772927 677615144 139835611 907870782 781040638 806443270 881898792 924088572 246396595 257401520 611593095 719099087 235880817 244010049 644055056 833497529 235484494 511925385 205115080 334379891 308793837 681211421 769511004 947062232 64937251 140328671 195089239 899319652 298825405 409538277 380466995 981518061 801880498 892187764 763585295 991564524 936664508 944550228 459387582 830704902 505087912 646601742 766415542 923986067 821525567 927822172 269734843 319635230 521512429 811015628 179414992 825560993 733593950 752801129 52935489 974414526 467535214 867265580 445154237 874255534 938793722 992010725 871299151 931865457 344017503 914663544 275043342 431167997 114307742 517549395 128674416 199001981 578807530 970419099 329128169 623279436 699314042 833562081 594050305 636155600 944382795 975330422 683176356 787029347 518409678 627227721 756122332 951174068 939061036 967619012 352686603 650462834 260417035 815809256 593022514 713443400 9163911 382866537 401401403 612295338 674828999 683475512 784725617 995253388 387284908 578062843 178447887 444534278 391061723 521769340 843956307 944508333 575779815 907354740 633449543 986942843 484938780 898255057 469744642 487975627 891525106 930777167 273522271 617283043 442889062 646759092 381000892 545624445 631154450 983983965 375179679 538487332 384326570 956329165 859793514 979023470 559651661 620811304 379408867 604879081 121765230 936184982 145996534 281066008 535771120 731409079 798850067 807322961 738394151 980959055 685314309 738662909 836334598 897884984 908787039 977233908 115882009 747736076 464679955 818302990 315029715 526756552 693733857 736469210 247985221 258345520 994179928 994625590 523771505 639767619 987998541 994428844 804991664 861416290 256584377 497211683 494548606 756599521 982648535 993036179 706589971 843232482 230412805 300118403 846152490 910722497 316796467 725759602 235098897 951240817 950471770 992648635 987076070 994659726 416233055 564990321 871373082 967547035 163878010 915746728 168422439 519834731 320909782 711954562 803170711 992116471 483245985 709658341 905903424 950918524 61410345 589643580 374388896 803064671 131285288 720340486 641526411 990934044 62164135 659425946 391337649 733339336 39361688 566049178 398345729 906025641 877179997 924647804 417261909 906012896 405550587 693597092 616567665 957170608 219050889 437977147 507649335 723305042 993878850 999251990 162511388 484713111 438369281 668052091 580246664 679152561 585578317 835763045 715900762 905705601 135398588 455731412 286647062 366899388 875965998 988420916 369607607 844285483 826345405 964803138 617643916 892508298 365086329 504406003 146072652 407504444 361569753 395111548 156558975 567157852 129994220 481747659 97852848 546661257 266940437 759061276 420596296 881124444 536339163 794542898 140575347 739119374 559633598 994454449 885067930 890678750 188775010 785857477 936815453 974257013 200822589 660944947 246628329 556280819 632990505 692969058 654250502 801718788 236094304 475500839 835623500 981382151 988388301 992018505 723941360 772809524 401216785 748527371 645257619 717851864 770424387 830287826 756339220 854156057 713787508 928563852 890167396 941121811 171474053 289288467 168419271 255102764 168702766 247783831 944016317 967070896 921282283 994280368 452285383 656326734 660781066 731609550 766881746 997890930 909097490 997276400 850688580 939237041 367762423 523744601 756409579 874207842 327081112 890786995 535416419 830331788 388764936 821618440 404225123 502781102 225510385 496271954 709692911 993849383 109403298 399015138 523591696 697368650 287558444 848042905 230263159 417136471 724733690 811122006 97087281 956589332 568694115 674735098 708014904 829477905 266291278 352957253 523069218 623663583 388650363 575480367 44167827 738568631 305504400 801702231 877079116 896565333 372860459 527081680 353512662 816760967 287545099 885204413 543602934 603606299 201561130 234006458 545643051 799768868 548473482 674690656 435355359 839861556 532068335 578564396 180396942 428609221 721972177 761444382 712221652 780293356 137470455 291998303 753062666 784498530 408019030 647256906 600518114 783256017 292906883 652625121 973767685 987349186 353284230 659024847 51304372 322732813 159269006 201928233 651863526 983259861 901666617 905393858 690707417 756650808 241050019 329863616 383207582 498384227 658000844 904375198 190850405 800879447 889978095 918955466 236930683 802371753 675473656 866322090 824567336 896158160 614003269 867278460 96011772 209891888 420136644 672379542 461936112 905017956 851912823 889271634 344372460 666425745 967072690 978202517 964588826 974930516 613421348 695835976 946702406 949769097 222920908 722796652 386258586 930950023 664817787 951938498 389461330 565722722 944903936 979456869 959796934 972028983 897929878 982140830 853211820 887099807 633000598 911732108 732790032 811798297 279802632 709566903 101978525 928706779 856667386 872893681 857796016 971537101 134376961 704981679 395958398 970970331 129679906 639248175 462151726 879817320 844587801 864418524 778202398 990104779 739301623 758309656 137642441 421078054 288975599 412842728 379463769 948281887 86999099 996912960 70063649 552904872 366610786 371782431 389831452 514814535 153348499 819957799 58438430 452828408 765616586 861059025 59437541 964294168 470078603 907822126 328139077 448985806 171552581 193079717 8360233 89232523 416993007 549428375 494133904 922929467 290183414 292641264 671913628 972084162 721508045 728682801 104579711 484308774 326474023 918501506 350731808 577527174 267110293 853982957 643339601 881379536 980435686 991165377 210885486 983779168 233467993 357042886 277076607 981191695 941997318 969096018 95646265 805178217 666057678 916274410 832215469 943469247 58128719 745800295 936151776 945851416 425345437 448643728 770004401 910796738 526082067 923920680 994005613 994705584 667100781 997007930 503675236 959330514 998276767 998790582 693534034 778362326 110539389 964245383 743071009 754758037 914554812 946875562 483854540 877742639 401471802 574698855 14635848 456693958 880551673 896942654 872753454 920054940 514410685 756875492 797473897 915879462 31648298 884746793 996354096 997698306 991885091 997653409 51753451 191221173 281914608 681274166 101753370 303663816 125395463 496459638 36978986 628662007 180267065 802935898 224443193 510378858 286638483 540883936 580868910 582356093 578774936 654269083 324894866 600175881 315929680 563689653 876358502 940780807 474476966 680351537 497700931 776953406 1999920 459451403 791999269 807137279 395269347 583472089 829564179 905811616 438962477 687015744 108750511 811429067 672886191 732157957 55475274 570623305 483401462 997256206 351236942 890282799 329255487 683669244 166903002 349652027 92764235 474408199 605037736 974693766 643646348 871191139 249323838 601030998 334976415 801693919 462719154 728054496 761530592 827759812 895304583 937208591 937450140 950881102 447720440 962832075 230977231 824808170 392027695 781607036 99905082 423952513 461411521 702847199 247996460 737775129 794844067 852351075 595589642 856198182 481777310 550418883 860022908 887328231 151984553 998929141 641065162 758749102 658770200 846258105 344538688 964242028 110250860 526039846 84375010 165670186 306509892 511839327 496369880 872242894 876179882 901181180 377666777 447419868 194900303 900691476 311609052 370898810 49322629 942940556 341963090 668760705 892405340 990960560 689014142 949001871 293117365 608959806 546742489 571033979 855660466 917523687 494849602 574164090 758264376 828450813 566648025 795401945 970987280 973459661 764725653 910965351 577622810 792224664 358549442 839396926 741564574 762429989 107358578 964993913 350452807 833932050 742248139 927281070 707418753 783498426 224679081 436562928 554553309 745242712 597374776 742203158 265235336 796305459 964534682 975257714 762454583 997763332 153409944 571872776 112645657 476285615 912323934 936168893 117916252 297165329 449023389 788937036 711835911 955238884 303671208 573118507 679349141 872831932 306339086 612054221 822921612 933328377 280370164 730566227 645456009 824496598 163688274 223584026 905120578 977147313 169845670 651316215 222103286 697960347 768583458 862634564 33087193 35078406 823297644 951076441 3744449 483409786 37115072 658787261 148757405 491890012 180547240 766342265 899601672 919985683 539478056 994679132 51290516 829078991 2798076 173110268 107553861 685422350 341561151 664614464 806511245 907854953 520914134 957317906 712405703 937867969 35914191 409555795 809396610 885903004 991048179 994766172 593501894 898200852 162333534 266763492 353977299 388563398 620549819 922360019 799531126 860368054 442372141 542765901 524996531 653929182 152002136 578327716 717507861 973705069 197205191 793551278 462208617 848233098 425038071 484806435 771006867 987989472 338709909 726955060 484521721 776718997 753918567 794667095 917132622 951038227 861905522 899531806 788807053 971394497 899416569 953571258 523026149 908526016 465562752 859144212 600280474 746630441 334749764 660362540 218754846 832576086 785131950 991998836 860373643 885373806 322404607 478515353 722708394 789296317 8973098 299497439 679472500 892558342 158426496 520930429 112897922 391887226 300825918 591900875 439375241 587941962 73657247 615582231 429602897 454857466 885493711 899662579 891510583 983388317 17466238 230621452 486929039 785320372 28545570 606594941 149627552 286132277 322450233 741284986 852378290 936359384 871505574 902844272 201627322 598601851 401151023 519847919 835378052 958444227 394364518 835539291 85722793 715332471 413483301 957875555 244190040 919570122 43610850 659297759 762614502 922597052 296358655 458844600 754045811 937384777 798168004 990153202 365236161 996425304 532315339 573470326 831975097 983389882 629487656 726120974 911016991 923144812 547214593 948718225 674849629 808824262 289119283 788254383 10186664 667187487 867199662 971333206 682320522 948325023 454957973 789919505 625317546 633532402 881697936 941331674 804047477 961135957 317446386 803459036 855161888 856655831 300414500 879599632 319251972 932001420 857500100 871693635 796124061 815153861 88535776 566696110 967244947 988725611 234589889 377792796 823091495 913082632 384772582 497957897 419147848 901833969 267875258 574592753 158813688 934278117 586545484 872599742 648085088 698989715 202558334 669199308 537467329 601494715 896802556 961419231 873693002 990607908 924498719 939431168 873820422 906074516 171886313 745322292 398720313 422833806 152983354 918959154 129813922 139995342 478470598 513054428 845320826 956207836 107248873 451625395 966869980 990589121 758368449 773129846 744718956 936660952 342725849 486101188 794491140 931344089 910863068 945721716 665591490 941469431 615662019 739736977 323917898 479793784 213849403 716075784 703732258 874305002 381644755 996022885 852999474 991351783 858714090 996982081 847703392 945089952 42209701 738290190 133371613 773989192 674544750 794314681 380670220 727143077 977769029 991393469 696902219 962110794 642505513 836502666 31544492 64442537 456035796 909074524 390378922 619522365 416180941 472975285 189922728 937020236 848619700 899647232 301732056 978735344 699082184 959202658 595872315 626470041 285570610 547794722 694656098 820706076 707288048 773384703 249943344 330758151 566040796 709146376 496926168 577977983 419942107 924226859 989003062 991132730 455547519 805622088 831612085 953277508 636345126 925682826 540681763 660569302 219504256 441316100 121338288 937541306 339623628 373205641 995943089 996942404 8393302 456558352 384426794 525019019 570668079 961428823 298214513 574193411 437571091 796636095 313361333 540053612 151617110 366886309 800375468 956420600 172918394 671237260 314856773 351786810 66553627 908158424 908134561 965981819 974956659 986264210 59397110 490818240 215484364 457132485 677280397 827970329 198478575 890033451 891839339 892830766 118922395 857838031 509721303 835532762 644091205 671146652 415124856 603234866 18157987 812739299 64459164 526743000 952275516 959864127 770174868 862284209 288378758 446631652 328405700 333109667 304453341 586624668 487409401 867342168 215808838 616680492 408069187 804205095 769690206 788649865 536817811 745660459 372648597 547491619 836116656 936071351 822397993 953931415 817217229 971367883 807202958 828065204 130924951 915281331 397222005 731725029 372952743 633271373 535301794 739007830 452957276 998922542 696721014 870568988 182332261 411072461 103603058 352620211 994121487 999221705 760648787 817639565 417077910 714246867 110653588 497910376 306763240 872616623 480251498 787034272 331014363 944866811 875040578 995829002 620571248 846025696 145419387 683543170 689432930 745921039 299261090 650145859 136975955 621394158 720752099 957950462 898180677 969362198 737036113 932540255 799338321 938911193 342641900 374535086 862921906 872035420 266882390 689447872 71741800 569317612 693240505 810328244 351847030 750861713 794151465 922938986 530021518 719343540 620761095 760675025 997407488 998922207 88922082 671928538 77376118 695379876 12027754 873347723 626130394 931683799 777633386 896300318 177931049 971638307 231436427 510201364 901748272 928606137 970129323 996265429 289479495 961727610 345796479 942837143 74183945 951629654 862800451 935276646 203765021 576265715 374888819 444706423 159245650 503154950 979169087 993077481 860754147 929823267 568502398 703058622 596556435 866347203 98582849 646085408 273374739 793877412 71399609 942513518 534167265 982840373 67461029 448429970 955339306 966439053 195873402 376793071 396016829 973269888 870639217 889549373 172363617 493730910 221047262 986512431 339336968 480754604 662179079 840996775 269576934 391860196 980262653 984606676 418826354 795976308 812700035 990007984 878970847 930549879 117791276 512795959 838155126 936505161 488685677 944700589 203120498 917124161 895347426 998364279 774661696 880532760 785080403 943653012 527078138 848833308 91852376 877651724 121323759 765976075 222895197 391274922 145816347 604246425 149878699 504077581 845799612 954764563 99681606 301345398 170429493 301464102 749461176 842789308 433141601 450632953 913749830 970280322 455933642 837115213 625034897 820333620 537495453 794264165 745750491 922212683 56774671 883236471 480466668 982492841 106906810 871594923 911637836 921041800 23758952 336288581 111861314 852410798 278274036 861250961 499991379 910816920 665503383 964552429 556505752 560556124 72445228 306500179 145435021 643145673 892168072 973211373 321615632 928659932 390905371 503434666 848247288 858778517 788646656 815767561 475014255 967071937 569940634 867053823 540431013 670228302 558839275 709998231 390548115 613298342 424460430 767961242 370452464 715076517 297332918 569578317 662671275 779046538 894302537 953358982 490680288 879715499 865629579 926179437 416493238 608634342 942407875 955910578 25183015 121993068 589963645 994448092 736468593 900653593 594855487 834416644 462646774 690722120 582614936 879810334 101905072 943942449 340651763 892136568 539986826 896166005 311069205 544696196 657204157 697585883 763776681 938300150 732857616 767378765 441701034 758120629 648811482 938062491 471921037 480188572 214179823 515220694 366905562 693835132 840508737 900585356 944935468 958436218 409980002 449211163 385514304 628521878 982181588 987296048 907665475 911848642 577207596 865064323 141861162 150801596 908452624 921349543 661387894 694117794 5389428 789669499 751024478 777397017 55047217 101161330 83490705 348828513 562603722 625879486 282283479 913994456 790244391 966315784 279373935 715382220 921084361 951623460 107652641 955764728 555663711 818743928 192121364 268143643 954841150 955836898 479024147 723588074 744482478 997625890 191456404 830954754 81990760 489270210 855825679 994861612 616831923 650726181 561912394 721687248 54052604 976773009 428061283 843738738 270184045 765753194 306294053 384931780 349691310 436409563 667073907 839861695 332277191 651144452 218024884 949462101 281235490 474986795 313823127 806408996 272348487 694971498 360269954 510504757 427658907 763504783 100668935 376602016 835240961 992606256 939555830 981912024 606384179 834845094 650730456 803535045 335440201 804313852 822396101 901420146 640107427 737818666 513299327 871338990 891838654 919883972 845526767 942313382 663469514 876838947 238002488 330317404 396336117 592543955 430705874 912505205 694114174 931602042 973234773 975580183 949826614 981803838 886309548 988238512 874462575 967460544 393853407 671909541 613887711 956791671 970159269 970259699 618743744 770203224 911583244 988652539 220525791 758684600 236601860 860871045 102905437 373376403 165235522 689213049 962419421 984236829 752261275 753947453 36407872 331777632 56759644 85848634 401642786 455735495 289588004 882657562 283224602 786347130 809266125 880386192 769147575 958492822 742140562 939339352 170542504 953424047 162038194 569106774 777710134 935757172 675796249 949126343 44319368 777496770 430190263 783796361 732100269 877858041 378998676 839727848 372375720 500702847 663426835 900543799 587418329 997716215 269005683 400551398 87607259 872408376 894483890 964417121 724408988 734129464 234328839 829013112 734968697 806638695 700455727 747988053 996460497 997073119 288179478 495690533 710505384 886787514 485155014 527583746 942998193 970637614 862361282 930506378 583084796 654400156 708730434 964281866 882150181 998134323 199268881 972741841 284538191 888160550 536131226 747673253 200700150 470629375 833924359 894465830 598143457 724258123 76321584 268047071 802278535 879437800 349305732 639636373 991063433 995513469 814252097 972674857 703861899 953871336 62895711 835427048 518653627 608810499 552679309 697412540 249110357 759201766 542195860 848569099 24344024 962132167 174786569 874142934 867129580 924557486 672731791 857063414 706398000 829320949 50373620 914312770 534824600 678012086 81026471 987639727 376691588 914766251 997152551 997188806 671616567 689582512 261991765 589506005 664438442 727793353 191403474 917002929 384393975 641230595 748322045 850711291 119010686 704622890 593227197 751944218 705496116 978320288 818406751 983285297 459029609 953027214 672172202 707802737 635873354 948213505 54008240 242804866 763454740 896985618 530749319 671056868 111988703 924848109 574032320 717633305 463508127 744816977 395780853 566351002 451819923 710082132 81982195 793927540 255030813 425082336 803863323 971998906 50398057 185277072 377571666 523591552 767413621 876204819 780764186 983634346 430277037 555364953 342979494 874827294 476828137 947866866 497604296 643162349 718280520 783817219 699131269 963517919 28797072 224427273 401455241 482703032 856761491 971057451 794513201 927182717 707630271 769103139 328964904 330580780 892787950 927547053 225359294 625144627 67522726 832393886 953100896 955081253 54341649 239958999 93654422 982486400 867216693 875710079 747231404 971767274 519986404 614588725 946717928 998509497 610586729 741412057 168514003 597938226 356022423 893880585 57254465 888043457 136845580 255620282 399933930 400805939 425365564 445724009 780338878 811926742 343611836 567059033 147424688 313852060 753218723 930563696 807826500 940428283 318777855 772728890 208000754 283692300 526230981 686562677 306378638 597343942 215833102 260740226 530560974 801365166 219071093 353979423 384660460 405055501 628818583 938513582 772488712 945185520 829932906 916839973 214347699 436658330 8964571 315839148 681757974 919507059 285781395 718389286 48437462 626024870 161236376 430598053 693458940 724694345 102114308 594097444 81494407 232827393 99815682 785282513 662826855 936512158 998535668 998615340 451942930 785086833 636486509 833703529 821090409 835281268 937761987 983520879 434107581 738012919 157232789 594506241 137955332 146933399 319607080 833943031 286504712 725013503 670294302 782321978 137731517 669566325 405226518 801154029 96030396 579179236 254993759 843892665 37414653 207845352 389382769 896668342 738416547 986121584 908112204 982661480 141112045 368056736 83429898 199501102 844919556 920881627 740322777 764021041 600246074 869713051 509683061 535310660 148445598 619960123 602608497 981268671 231050466 958691637 58865478 698373650 6015417 418048907 145921419 737190584 726458446 887109182 748451719 792034762 837319340 989004875 427316924 536678471 186316031 807882521 641104519 918316079 337603294 815781436 649863840 775461674 184794148 485407296 180671534 594344427 823896537 914783352 508834930 994705709 818159496 871012315 31369513 444302696 6135895 95951505 797014200 959006039 598378225 893029223 801645977 846845908 21478035 73466743 210024574 833094840 5672375 292112473 74673037 630271324 381764265 976591901 920012357 943376572 208440409 714327053 827061355 855683292 542547093 697831427 986015600 991663870 857071923 910784585 615704931 792019056 745634411 802711890 627643529 916638872 77686468 161296387 741999316 894967577 171086928 876041962 264986644 929444348 281537550 674185820 543875716 765371673 190288317 941427080 847090949 859022208 351158979 969299119 695144162 970573175 907472345 908684028 982431139 998386573 319482850 622555524 719228434 813534292 31009216 379898513 38111037 313194879 504375730 900111155 388953368 713418389 827414146 922481538 206723828 788954029 109217545 166706394 740199662 972851182 13034954 350689913 955552696 986059440 755547925 881163793 42885334 983699986 564338834 617173280 859364411 894456203 435097832 534337812 702344550 792111055 245323203 473773325 487627480 878443973 408505222 966979743 494023528 533497666 577062858 893689323 690953242 848457400 13622843 169083304 474998913 561344253 337359280 511434523 909895049 966000761 62903297 221567246 382683582 608047522 848619360 920886756 244236006 429663185 51946850 227006934 215524532 603197565 473913763 869988244 288308638 448055876 46742378 212667982 513461255 862583948 361200231 957574952 711688404 953833529 404409204 651823530 119736576 965656803 545011874 777309547 808882242 957102239 272214376 507945578 359694135 438389842 539903672 654010631 796978726 885186757 474525053 761028076 769642931 943332680 115505195 851480987 192188143 270427096 546968657 577827434 578725614 944017036 86805759 280271463 692583215 827615714 832520895 902049085 725027623 823979026 182555345 963133663 594713237 818688571 752181783 760860466 978272264 981122654 164515973 651075014 362045450 496743096 523528819 907688811 230450928 277974645 728408241 989362150 246618741 546307020 449804460 636611771 573774732 918424113 749681038 951222502 403181743 837363128 891370253 983517466 245096564 836285260 109661009 695316735 788544339 891397832 374681423 882669990 701472296 914497725 402794791 550407506 453843577 520762146 58533113 395324122 623789864 929780415 740958338 913886694 684421243 858917115 45213542 361170936 645189593 780388232 76851128 86635228 314481495 416066927 286329388 631766528 91803177 276605128 415636169 606545868 687156501 844491868 102924842 708889887 924500027 980549237 575084058 986216556 791181851 897670628 802048630 859625657 605971976 918888675 213620214 874474906 80279496 802475844 187737310 315161405 945105597 995372151 419187917 453434982 976718306 977854394 753542549 805962255 750513606 977680152 1331068 932107308 991190853 991237966 894668615 896684496 996901897 996902065 749723726 780890666 115948765 678387844 675515273 880774976 611219793 672488593 424983410 783841693 7477798 204463708 679568437 823685137 214550409 665082286 472856340 569946933 891040510 955009564 13546036 599267712 209532894 321450617 709365342 755472832 35923927 641443079 117415207 895760904 798606920 923133637 80270890 410638238 249288084 725236974 461976267 847976605 578011204 605796566 547040157 966725115 600540169 896469641 944455166 974178635 639506632 719856206 871735619 909265388 239644532 768334818 663701467 882405488 80532876 941594676 131478578 591592448 478634234 591182871 513592706 578215065 277182254 707544281 505692747 543593413 730440118 780066367 600059971 902271173 107761987 689844208 525320897 967529992 53002786 715291370 738295336 840135187 124420546 759098917 132114191 694297349 191246150 818459601 801538760 811379909 735810044 965076395 839470387 882323064 436250613 779329546 157041018 649709431 189009084 413015761 720158647 978604040 424032665 526684513 996320782 996487326 588211211 608819020 304824647 494215723 947325632 996906430 966977675 980121336 345497126 465353037 196590315 999101775 912834641 953543033 762753836 820298874 853613542 938106724 382754748 597923220 516031756 794514478 427003133 579114727 965349798 999036670 212822794 764363374 508163440 742326284 520392235 839453057 393942872 900253118 483381167 541504060 547522517 992776982 673362613 958774314 413803509 560369013 479640252 929701467 103045779 561194362 741822298 744523708 675039365 861238153 163724553 365638482 94197206 687809339 57377707 166898375 694437957 992937676 905557849 909167937 735079928 825258575 61641884 476612031 647905506 735659605 915467968 987094898 497260899 700704368 980800917 998963417 86322461 646379814 866652516 892005448 182625129 907028206 451241969 733457252 747296913 967160815 920822093 988212127 22975666 506923526 738555876 803551102 54322587 695020710 734701448 890914011 644635976 932495454 846884623 861107222 954587525 984703108 552396780 711857666 131583951 251917209 221118221 402056506 779031856 958296944 151774729 534013638 303914668 546987879 963319995 978013103 41663144 549842970 867623080 906209701 163457265 883465760 650173559 786479619 314494897 633136027 945238894 972857781 27265502 880407967 85926387 543271499 158144196 338701464 577478593 870882684 828022697 872727199 290166651 467754949 766595462 933944432 524552166 941597668 707089909 742018570 720345477 981069050 57464818 518672749 921677377 938078561 624696812 886975431 330485517 402260760 537475092 798373208 990570964 998007086 491266081 903497184 484907221 769234581 84929039 460119156 354904021 814567187 960819553 988351555 825669391 847156157 409091621 452711233 443340799 805345364 305436018 392926435 73926725 434238600 656573170 670294547 984580251 997039340 7783528 429552869 984032424 984365676 865793280 889069879 505648782 844980829 117446132 511428218 568040818 924062908 22278338 747464926 566770088 859005428 165266756 687077834 769655939 811191225 864395002 989882734 131318865 597921026 304324800 771710582 300977163 386779581 88801605 119969165 993638314 994055069 635913733 821646477 173033030 372900202 578964509 870585116 445061796 680584856 940873590 941113695 451070554 775354836 276911346 556419217 828311411 859533450 681648778 883433384 593178579 743305883 331836963 832165181 725093338 754828950 377431224 995647962 86951186 815620039 287041184 929930101 295949382 544165299 876514372 893305625 384057768 702552842 525911817 542307711 321303313 454937418 436837664 921220171 883345215 885508047 752946748 902309551 509449837 531077203 59511871 328127541 587045347 603629453 968136043 995556697 797011536 902969649 289447960 887266088 147546090 450569360 361848623 602653250 110165902 632841962 799994968 966933617 17091756 517707682 115824776 587082420 216321975 702449823 545930685 741720782 21740185 101066211 991322110 993335540 772352632 800934573 261763008 906820646 600479472 968800493 796798431 908066087 733741641 974025373 312316133 654279840 414902654 596266178 619212991 635585549 489047157 823250282 981306035 983974427 687243492 747283162 810906811 844353223 276336532 910267452 846983825 888134727 26256491 440447360 795321010 923292899 681554693 919058529 548173585 586353141 615367967 858800835 359037018 777407890 700827519 785193800 128325513 473722807 933569820 978719431 182284245 757052329 385942912 606941498 486129817 506572823 483443518 921558227 970480937 997426311 538934322 780900918 367993776 602894554 750983507 981334243 40161645 981043946 648277007 882833585 10149674 69794622 295061852 862342217 424331188 467208660 259124824 646771428 656117951 827384662 53894426 759815538 281471764 585745216 269995041 623729011 808104771 974466002 59965284 180328741 308275369 670767413 623241053 991290283 557034239 834317701 633294300 647043023 898631762 934718483 162814396 877696708 200971663 373785101 753636122 841538687 227638067 638157924 539135469 621445316 139016231 526544057 363600987 455563927 232836464 993931558 728719113 854104507 522169459 628362949 943474921 965767572 756234687 898525513 819440109 914215910 883352458 999290746 732782584 854104719 861243518 947281409 275156550 606163995 205549105 994499636 246228355 717035621 940408885 982881440 17768694 66001594 762126227 876209443 492267435 604196219 849269239 966065511 906062453 930767285 258290689 802236483 254139422 255134713 865493448 884459911 70552599 414369297 164128325 963770130 524462812 976465116 70679903 933418576 988872544 992317221 384518319 500352443 859975194 944184358 702592464 735681006 618270588 913513859 217788352 337439966 924380095 987422319 754478065 775866196 416642657 422696877 942235172 943632654 181911828 762115941 347173982 571875798 885744086 918123763 677218082 883847225 704437241 723884818 993407055 999196939 945747226 967808941 265480452 555260653 934671081 955965635 401179492 432352372 111771036 592378937 879425583 892549600 874692129 902536463 12975245 825940163 615762998 891133151 87491599 471766445 679277251 733820034 164673913 368363882 48944979 265984059 527937476 853182137 241620502 937950028 681477819 956774568 952848744 986257990 125058550 891218469 347975779 613742828 639718386 787774602 911609699 932832089 185434966 571852610 270416192 652700946 442477768 552960136 729966099 807697004 420512735 926602327 542893149 957385084 884911253 988239155 589324282 980687413 799661825 946278567 958984683 983539342 47095505 495687882 629101876 632637146 832618076 876766709 608591572 694860038 980027356 996280897 98101301 807608960 976600423 977149371 592897303 982364955 642767290 905786474 614677314 617348121 11300995 221208562 370979917 668563588 568197269 645981059 133009386 707911592 661012890 919145052 668542339 967383999 185776655 452144714 166066405 983541890 997701644 998740813 208031614 566267135 366379579 823227565 604701996 695150659 27149737 768604785 704028807 880495178 465177380 785530576 505807138 950909655 647485611 733651906 513411012 595731678 160968788 738955425 704533782 930835362 734487539 827990428 408924727 416991594 663587450 847287403 342476120 995207198 238182142 993835057 764100477 770328555 308260714 344998031 282598807 416187144 611135935 932929782 671874374 706916781 92017291 463826795 652193402 897798595 596362239 950861962 185221437 434472811 195436254 519723071 359395930 867349053 43312773 252140276 793634070 848185229 187612516 731021718 248399507 755238568 475825679 514771228 444723758 620206971 286223822 938830122 831660333 963295735 19202689 710192689 444934348 675937058 570366643 891312722 699310249 745059189 330480297 533422034 370727470 903850892 331196775 454385102 50783191 788533104 552002922 978363395 64278389 777189349 828532635 905714796 891239936 918943062 349552668 558594053 339756419 866534590 90832129 774333980 893446504 991416563 790233517 934775005 807729167 988917984 83780494 905000775 353688476 419507366 300266180 745191626 515659696 713890202 972098781 997040008 356983755 427344531 830844949 908681089 762010525 767556591 288419380 335050772 879754667 904697341 885589564 966075468 443825206 594365925 721851088 797768782 435959095 605404492 96952309 624283049 230661156 971441366 21449887 492969584 345563798 461859585 216091636 379714940 777048001 896667380 114075565 169492169 770902335 973963154 624247423 988839047 16938518 162127102 201735456 223556616 597980506 609066295 742734520 815622187 662075426 671431632 308764853 525479339 175884679 613124023 71885373 845994611 904442628 945148190 147636181 642703434 274247726 485452735 532262177 829045739 587109870 637495672 3331409 609786633 336486007 344013101 908757381 931898016 803191187 925458997 191472237 701305105 742548527 790244689 846953534 969683796 921320962 974345211 192709502 777433549 5372426 226203813 230852385 485380153 668255111 734816700 973695825 998507548 758898012 821649864 472754314 941144891 330483167 656904857 429109232 585069976 571940945 871547457 622797756 704762982 627510327 756658699 509299898 927119350 56726375 982733197 520596355 670797445 641868150 677599466 986259248 994204152 863709223 968380461 631817828 728725933 860261483 930466569 231157766 272203960 315044339 496566186 642114922 906324901 811468616 891442289 392197854 977309556 802439237 985112629 386453780 683456463 119548096 922935321 229381681 602528093 29513567 636646035 419548079 880638285 683545547 873846416 499609726 546032069 82699276 738685978 550133418 843424875 503231289 614729337 826214900 978613275 89999147 762714921 558717136 696659972 107129799 584289728 813908278 993205628 575440031 704706447 540037734 896030017 689002126 859868917 372816733 755706359 505089571 950807977 747014993 784381832 593106179 904050682 578740375 664397249 301779142 381204134 450939876 589205257 482869311 658196075 93030107 93726244 287341018 901623599 76074523 516037291 679886357 949530407 139571334 209457677 753805396 925885678 263780953 535585953 857808187 993573290 396433059 545852664 885332931 934571302 352380989 811794414 119977735 277527777 450941610 733162782 808102879 923224525 604770269 730760046 258451056 503817574 751835923 861964476 959476723 964279862 194540949 485770452 227612107 297460503 169378608 584450304 327106607 918960382 99457435 528770719 936823406 992165388 5855971 490067623 334450260 714251487 79954165 695854482 46586930 436744176 517315290 656907900 606316329 915090340 888918533 903639844 69701493 902140781 522566503 626687306 577630601 809831444 587183259 886319178 305129273 725001270 655047420 676913657 988437483 993776576 699954235 709792128 443753848 739400479 184943663 993671829 79761756 682329635 275908207 800534164 114837153 687466445 177758948 963181287 116166538 997394717 732697145 971375114 463142747 917937295 544826979 975848690 657279871 714392066 556623831 864280237 635090644 746728698 311751992 837847197 527830866 532209211 643756915 964654850 614014440 624094983 562851781 693406638 859606478 994694145 593780483 904437929 931978837 937761730 119830084 846263651 21812191 457713758 289131343 738639868 808768698 966290876 330223902 985027378 147345178 330026105 155956311 696731737 73233681 867453595 633119457 636620910 912887860 961435809 756881835 844345539 628038637 845554280 910680244 965213045 471491858 638266086 592394918 962458540 83566179 93544026 178160151 378985670 981080194 987761459 307419443 608150857 323376686 776073982 673187638 886145910 264856846 395776373 52341683 119155225 520513657 921610005 340138582 552167330 299162866 385538635 414143342 755644611 942192716 968770074 258212481 492132125 708067950 856704514 482282912 904336894 554802421 640698966 328253593 748461726 489857509 568987010 660117899 864030051 343017057 415079902 261890517 992672585 813892140 995720566 787442034 868673647 564785496 790377364 420964386 513016773 957668424 988912690 377831567 431273908 88520640 384814426 421566174 463346685 398115736 831948955 470115421 977161647 93696309 293320770 362293085 543771783 384444073 418772959 403795876 787700077 989879795 993947197 587886487 668810343 791709028 968874869 695710875 847095324 212994906 858129600 688182415 948599618 956533316 995142460 77717153 538331115 291979134 299058664 415193584 901501565 775770338 986811375 79717619 709409122 402794442 985747038 33280104 200504703 180355112 550082788 569511797 726202542 557209577 822089058 881210877 993737204 847034041 871401282 808966604 864549423 33922703 680308378 749509172 890073052 295831539 716457769 797253008 924519408 746756507 983051286 563943551 860220824 992131967 999022054 500240086 681760818 397751257 422319868 809548016 824852796 35449202 487568208 246999180 473384774 98864225 190440492 239496151 485450069 291727925 729068393 594636551 848616684 360644109 834764336 534968102 918788419 634549109 991327361 317513159 496558711 497088503 598693316 139384617 174818474 245655193 889299881 189987702 717445412 370063325 784084079 192579675 410324435 698016541 721266337 288970627 916170916 344323894 562596432 694914042 987660273 20789444 68634919 279175121 558751735 532913115 653893142 323760612 547681760 372571365 389703993 675361669 893459350 629849264 917770916 21933708 161256457 646048184 930546481 876742755 896489918 47094463 218675833 780130275 915296242 588389688 660390502 636763740 908144362 226276772 457708592 335256164 488517011 557726606 977402393 655525966 673712556 288210098 874822462 968819995 987902002 950866842 984999203 671682642 773631865 687902918 700192012 425416047 512644658 883779886 929193375 308299174 797070184 358675389 615493826 292722395 472386577 441715505 563404577 192951217 799618325 434354743 553084030 236723145 333166513 246181946 305006246 817207983 865070595 869787756 900029392 800617970 880273617 251789737 828912678 802512691 942343881 898556411 996405405 747078651 866062406 143757943 660874813 631433895 768149361 91288056 378172771 378544301 911726605 683622371 882414664 959864993 965796295 35692253 897330904 790137211 876837932 3394868 144758961 49623032 306065852 502481611 516051807 396539124 549944204 421213967 657209329 877048988 900137515 137648365 147426342 332659635 870831268 567844571 876277433 693026029 865134208 389166413 569159214 135839354 245239094 433422677 912677973 255606895 840151628 713495059 963339263 890286074 945313526 196775620 979816392 439447328 885142623 977447173 987575267 83757048 579378852 560541204 597466468 125170345 844757288 507433468 673081209 44615501 657290899 436507345 631772666 504488026 558039619 927051489 973186665 711928389 923016134 223062027 306411647 501078629 729953971 51007680 329395781 71085572 130207759 756881611 867593048 351642662 542509963 295771772 664365077 337529107 788187507 825539598 874096512 311882492 669190583 533318634 604911002 754990042 915975611 67899006 805547140 404546205 819332810 892122532 895109961 516392159 894118467 968533651 987724882 201781569 794572404 584288698 929893447 713564968 748602321 810813795 934414794 184656997 765790661 470124540 688371291 23066754 955770388 391702652 629846799 707779649 900272614 99838001 871296277 97454861 186364466 217077926 491316197 457889485 522846411 838228257 866761813 499374819 916009687 190492352 925529187 28088414 577376190 356494890 805054356 792821713 881220129 566534055 957648885 883128933 997495375 700085132 896785799 261743020 515837075 308277790 998817036 807117804 849232338 230223433 832154250 539844222 647821841 45407582 64649042 265949259 446755664 118859457 345534581 150590660 485122236 261766437 828034047 80075652 704045982 374543506 501605099 292149311 705174619 212665027 489156040 610831355 778427094 863287098 881395436 743634224 948579385 698464633 881242760 608225826 735048033 60789266 532130566 465658427 608533484 429536652 554763042 316939204 744386136 811557130 828491463 838971517 918148717 667060615 813279627 977273104 978742146 102977254 676175696 121672812 129641922 796981647 847480662 138142608 448611247 104866077 328440058 791715633 852624287 573902286 623933492 824360089 881659926 58803066 971008850 654655211 666708877 218906117 596049592 414367694 583520336 268250443 868259508 350795214 873818403 173922734 193233498 113377716 886255822 781503795 815661009 671763661 865083379 324555235 506835402 245995003 812324425 503471333 617609960 441150602 735138173 891626126 965557513 462831346 958200040 919420781 959742374 82986814 353924094 163388877 607132359 485429708 558913213 839410063 984763548 395986411 813044117 14020073 330610251 511913695 718153222 896752708 912018594 825680182 846854243 32729324 707513316 831820768 974773781 257563531 592381872 899810675 929452277 841185917 907986376 495293008 568088302 768099702 954414161 34215803 296337622 159923651 961034142 762158861 782855191 920133726 946424824 308172085 463432220 465024162 925723817 190118639 209154827 499026407 763183824 166930653 574793199 229072078 464631153 37271730 388170525 853846137 853996102 47149215 386855657 107738234 623417311 117444444 749625178 967307800 996683242 538609486 599380892 938603854 978203770 208802472 923846223 985019541 998258716 528396608 618835417 39207702 793294917 462320467 927320082 183308260 294812531 816989135 837920242 980461796 987256171 828340724 929823609 405544835 651165579 945905362 985530610 80266963 860763073 947847133 951665228 659047416 993945805 819596112 964340046 797751918 883596369 395342551 891187204 623596351 631761979 750295188 974316556 567884273 705149332 587005085 965272013 342116221 555937944 333192773 755532591 720420995 928352883 22334414 764536649 424908945 882108715 827429632 969314838 382934741 484327986 378808202 829767789 484948521 757430921 924345640 980704315 432911112 979758120 700887243 968407353 949251324 987403578 855505389 991258301 499437722 984037681 521149238 529153897 927682373 972219520 76848360 330570338 418341199 491818036 654451053 983213024 397226007 587952724 1131816 601593118 156676158 724337996 714427991 770476423 209798560 555193223 88047533 272942240 11465152 517983811 265784813 965768232 642133220 668833887 208389940 732487037 520557064 612346442 938443520 996379299 158982138 644268871 388329000 951170047 133197491 909727217 136334251 559927764 781491015 873681942 702400200 766753783 126524433 158065097 703228200 891575833 575204308 711582064 747844115 972909198 420952236 641895523 605248054 962365123 527846340 771497876 861391936 892625095 760971567 954423587 129609018 241798698 520020319 777867604 652138396 753888591 440902063 778555492 91421935 424954327 930438704 949870599 489577027 839959360 175045378 349848991 679566982 936744951 378411895 770181127 960372772 992800180 573230218 611478721 729512377 893352364 798694565 971031440 112133161 840556345 349564201 729985335 277775177 725012360 119650461 887043097 387140853 440891799 603882638 732714431 508692251 668938792 227540083 551565704 767829946 946044949 434799998 875424423 887707283 976745692 93860726 869121547 818603195 874816076 229589434 817812115 305974442 523454443 723145110 940412606 644645139 817066102 623514735 732444938 163328708 488128892 758484166 949185808 488638371 571405826 169513930 574138849 615713075 662831058 698662513 789434721 588351538 740222138 457516832 838774870 934830051 966717980 15145454 888695357 891595325 919735132 610373794 871688263 909130385 933990289 873738791 892137435 510608483 568866328 97939687 141903868 779096229 941484017 343582950 703372670 872773144 940179732 879338570 966031761 830599285 947757659 623800538 939841284 725332373 775321734 141174945 535496467 777429208 914812090 104063641 501089821 689992664 798094582 491438479 954105232 317866693 404653110 848449495 876597508 902108719 978053767 471649763 676812883 566084675 587388494 290902611 414536849 565522470 941373603 74651157 605624681 508889729 801141013 907823913 976348082 925376195 966969455 876393222 952621525 453818278 466896530 749221497 789736882 482209545 523718975 803300789 824919577 51838551 525653061 854682129 871679793 847812351 912759557 778162962 786489204 46015053 79546451 401525527 640839032 769899119 775021896 474229217 787657369 232708273 923406747 16179896 707265306 245649480 644652163 593741674 843031750 194583133 951184865 304490090 819527713 787833376 942355964 484627640 755773872 106689448 926462795 718638041 838296274 767193530 937226537 556743000 561527498 438600904 831654772 516864372 557747720 851942147 909194018 109790307 957476052 91167657 973486880 901544116 998086779 241109770 689543173 751514105 876590366 113199434 288167115 445511789 908284523 108463528 833963983 14573340 884856243 481329580 580232721 193924786 443189821 530818371 706546279 648417612 737170484 784449555 824991388 326058642 491688011 888957896 890204090 321681454 945775941 434826150 620057455 899547306 938168337 534169921 604961891 448364959 828442038 922858203 984776795 808725491 898867522 952618807 988871943 182191637 282172365 327447932 951548375 126068148 760771073 346551380 895945661 25527913 241963077 675064035 787072071 570318045 788809923 160697599 659829301 517394699 569790393 134446750 790655444 305438173 574962714 169902724 982038940 978217985 985879939 174355740 873925667 807060416 855484647 822806179 900212542 336428444 703535404 786715476 788556915 840401676 852026584 810433765 926730929 223910364 634187174 14027851 812437536 281259285 377755681 558943828 850493856 636382718 716883727 573006258 877335277 822489091 886427668 355782936 907557225 232807305 271821028 302762561 633309155 923638090 963181863 341108680 397221336 733396347 803799373 191765562 734455560 426701869 650711231 700825466 729357015 430852633 744464928 146404257 929481047 476233865 931592758 752459918 924856639 818283925 913629746 646813964 926205310 179703251 499512511 712884357 783951776 397151180 875119128 980244002 995029751 416819889 524250052 989460529 994077901 332690661 691219874 30150425 804617310 938428127 963431019 578417560 764631598 35064975 676885987 125091991 233453052 157641487 744188433 709285878 865878898 954934481 982429575 541120149 557132254 786371081 793801845 572711139 710543000 309943540 421169353 634795788 712626340 641944136 684962928 16972027 685295025 627000625 650347911 341634293 691861248 216034084 990000540 199050095 237284793 656036682 869956982 482700198 559691229 254712637 753190598 197452814 807066542 406556921 866428784 862250261 895240091 295437590 943919625 533565303 549395312 429387318 444595373 119536655 485119501 706983599 988773179 739748172 899120955 761344514 777753239 669113668 941627167 113912863 395294234 510564770 990790542 8587266 463374413 878741849 900301687 606326756 947768601 187256549 323014404 193213089 439013473 425084854 427538366 535205722 753758834 70575941 112287148 600562151 636839205 612841553 690682059 566576719 685821299 143083981 440840537 128911325 675792549 909700626 952547672 353728778 978719534 245337038 896580882 872982535 938111746 417245418 928287301 792713927 835988238 6840058 369309899 512212442 684457431 776369005 957730704 185485735 738398070 715096431 840197697 735936403 959910198 445423811 563620795 392524319 974500592 506121225 684675257 918764918 981112755 14297281 690173560 354947395 477792893 137056884 300936964 161183833 690178180 917093550 927421248 83012842 493269694 12757562 373880427 766215508 868385277 760980980 784163187 617189568 771336207 75726752 882064417 449788422 553189855 263286997 695697860 625697188 888463410 125661073 294569947 235180186 368210076 916302961 923524197 108879005 558242345 741266575 886775374 640723322 965541598 44174525 575781844 609898009 769997094 540876169 909191654 117258820 685167682 792836902 793298355 314793189 973812919 534747076 631659376 861677320 982587062 331020456 748190411 967277510 975730273 559580636 936330354 607947576 944054106 175114611 213763208 638252334 754707373 555879445 899842544 724888182 755912727 152483702 638489356 228559903 928204807 158875882 819269819 202879922 342435940 65652411 850953817 351140605 404895481 140349097 970082091 221684953 612673002 770176730 911010740 689947389 971219564 672108061 850819582 24661383 943722678 574286784 769143304 738357437 758827215 968549957 985382473 750802818 756014668 999367928 999370998 429972125 695857461 694559222 854494568 851398194 949418250 372373506 864440542 779513788 957597689 118999342 730768697 669403384 784206775 432047029 958648899 280802194 509026713 185863632 584494620 706280545 785987518 402368651 729488472 985374943 993161921 256781224 890584367 315460916 850908786 158512262 915982336 301198394 914119797 99242551 238927923 584344545 625615326 423957503 743227368 554701543 958873078 544779181 815294146 552303325 828691408 207560079 616506462 864135656 974566474 433250507 491392312 885634218 893131194 522947710 604487095 796631831 967086705 546890080 934551637 295527084 520668620 796152214 933291379 515572661 528523000 726908337 779699775 851750937 946411705 892683105 946194545 456163880 799675720 513053862 781400534 598496435 956652958 318532635 319720777 961303438 994741507 523867070 985965008 197147283 638155902 808499779 966501975 397568401 859473360 199094028 307858361 342786393 914217898 507641090 809919247 211480294 637180626 489096674 957889893 419059314 926333083 647770277 901906743 747147060 904550437 705559419 841250869 535534749 817334317 414822211 508817443 927314357 950465173 330944465 685035293 636347851 764158995 321973524 808654820 985785553 990767670 733726012 842670218 476618846 701431595 398821774 524875339 682486925 853355653 333930530 857471667 788315795 888902115 722299224 849292906 835269041 895826585 753012162 935097790 991521838 991938870 792685439 808662147 671611288 757777176 912702261 999311815 588169586 776445203 767618674 906310933 86413831 457956381 517445224 693844102 759473652 895370303 674128601 879912118 36462222 169088886 132431976 799286697 775921030 789682074 619940123 868809574 89362655 287149199 152198546 343696798 5649806 881892572 276450389 891830922 569492933 991051571 320128361 669169336 609141255 629167516 145102536 666302095 532786290 986513726 914169632 929329178 194264573 530956681 107272824 304172643 809096968 826272765 190793360 814640071 867398618 946811485 149890253 800912822 420758601 679702850 662908087 699654273 317299827 824994677 889621484 996840597 62459034 815960083 756614702 795296603 171356461 189265060 881684685 904760691 299718094 464006802 152005992 406452673 894997047 895102075 414763649 937612408 412712156 981835950 657115811 902176683 854876235 990788062 993112547 993579964 109113553 653826755 355130220 723998576 742936764 927796871 365467209 422578555 84766832 152511637 167454209 764658936 135890090 395423281 775128274 943396558 597571246 897315391 312129741 783915928 472259964 928105142 531685404 825333247 851449385 975280005 102364857 376563543 511511181 819620792 325120654 470887267 465913000 542892023 783784095 889741894 446424323 841790897 309584510 688018584 701148121 977728944 294470260 702949740 269417066 743284314 760320053 891285384 417268191 471131483 210579926 646809859 226011909 956826033 704115426 742408330 271054182 800204995 28148359 229500100 624166718 893182484 14659134 116208823 104412283 635436891 941607854 996981604 532442633 636916895 276806026 822305858 538748856 766823087 944977952 954212690 760704159 780626498 265935724 840281854 332022169 578730030 936677063 973382299 590658324 613802001 213258113 879121190 815360330 927838106 732285007 801799042 596676681 755793154 41235940 688993336 89453505 989786116 289701782 934437638 307715693 901197125 179301054 737598766 909933279 969636065 999388180 999390706 137361774 532928763 708269229 898218961 418444321 434286823 605790555 906593328 205955769 297005569 289618154 302994158 438083350 597657660 766450244 987884164 977415157 996582713 221240510 701460687 400784716 769586644 501175824 733454528 131005754 824945702 967123344 969129769 588125062 865253422 5189304 380054877 33727691 76845928 723041736 733149593 537190594 939103022 634509194 804857821 279237401 355847124 359311810 988546623 647015478 988894453 602604419 679263809 426943332 651655178 251404395 395664302 509146277 816687319 433777223 647059996 599181402 642568845 351204272 716560457 621831081 641668176 246466787 996160561 25471445 365824040 980191922 997323548 633570421 675131060 932178979 973788992 873640576 942850076 37745116 418006602 93880624 292673756 277548765 628221501 576690971 930882688 765065633 779641351 450466272 901821390 359795243 394020852 81783116 991745978 932328616 955924402 544096741 850854636 35074288 916312983 293448732 513734760 964092316 976667973 726261706 946457348 428854219 457750569 442923953 892930874 384009015 746424656 283661561 585950580 468432577 676344446 594513020 897703500 250240821 343295495 40168696 117911514 980893244 995633302 979227565 985202117 402957257 417277356 335266378 461090751 4698722 649588508 319364448 502267617 570499182 653118733 489570532 633737052 595653155 663902456 591835487 947166917 235012566 761632543 808577976 830179059 589194183 918257741 18247475 320625282 751280607 761912016 17298251 598439597 432805260 572529416 856538304 892031667 145500973 810099341 427182453 694095971 864402105 922117750 582795857 599103165 903047889 916099935 413771185 799969715 484940473 977246733 386004537 657231308 518327472 655293096 117720415 571715251 633400173 697181573 126474296 489540303 349100672 720523094 41838819 491677076 383432688 435490189 324627492 963006037 453465493 530468580 361092933 672327542 793754641 891631172 582679458 859197175 320735513 725993076 748081716 788794343 502157749 687584577 743921860 883571730 198295164 274096269 534064972 783941896 991742166 994330630 761892306 958622010 139832383 880226834 914482348 982096358 450910278 894686479 880173889 947333861 261580396 997304800 888941530 918922423 693860261 838219591 599498427 677154897 794469984 801408342 230099382 665259609 249130803 585254583 971772002 994188624 551983691 778402008 539607530 558992205 561346456 843402187 755581409 956857898 601427586 795607884 739135275 839105128 908993338 980866185 765220482 927285033 783502593 846536682 863353044 913612577 397678150 440766345 506135750 964584052 303940506 721479262 750787089 844260295 585835634 695176499 969425051 999021841 410522606 735785813 700864152 750800134 214555959 340428035 127065747 463163038 778753741 990067011 946400345 979602752 349073356 698639679 689611439 883357596 381427559 953562381 230052726 702015615 140792858 295125142 710953389 807068478 865889660 937930630 372572256 580688346 361180837 682300633 521058882 936058330 13996254 779349401 711208560 909968180 462032238 786839656 966506090 991187778 369994775 553734568 868495816 940998601 928364511 950257286 509726544 815219024 735414843 897784990 621511970 743617044 862402892 894228801 104186749 179396712 366769485 640886709 868383084 971043926 486041686 671256751 173676883 961311844 364679639 447490416 537278742 731771642 340398046 524453728 148926542 612117244 563024895 782761495 651237358 969195183 11074396 269229779 668926100 951584021 918408557 986347646 535823186 762452296 634786638 790745820 874117275 993632471 397172794 484502488 1709908 718047722 927461870 995887248 61323471 353562121 779313800 782223282 340021415 521971039 484055539 786696945 500196013 884096391 514628281 548630039 989538996 998338614 840726086 996660844 856965202 877255756 658823910 907004347 870162779 980934811 886876769 942567737 582479485 989118764 665386177 794697758 619135250 951771918 571968658 745058187 796517476 853164152 973179020 993392144 269993279 529032451 411141471 989693152 87225655 522445876 592218171 765739053 299209532 434768812 144059618 383292601 694835778 840695210 737716381 815829933 872812297 939844878 723210982 830619437 698230411 705033984 977675742 978827019 730372563 975965005 493417158 494091424 111756148 757749077 462800239 859303506 601767344 941814068 574254843 640172662 784155226 845976271 659970849 878135971 617322889 665084376 87593981 637952711 420938416 734715368 29335580 89274666 215685462 317936287 358343056 540202584 28589289 645944596 531659727 767294201 460420898 486839598 727193230 872857212 210347686 739928681 865375512 867936747 806772360 866191479 610344301 948760766 948626077 985197901 703915437 752634924 475254947 732014552 844770503 871304564 259762612 296587779 552445251 728039777 756232303 865181007 51989498 467434045 738480470 859591515 456828109 488386857 941773360 951039017 633708122 879842207 907415848 986302695 172877859 662622412 396848065 655021810 165034203 867032380 404256404 875169924 113742327 761588251 409916482 429538425 165421168 449986048 945079594 951224465 377262768 674229125 346947808 594148841 409515524 739678261 7426642 579698461 325550411 337592079 477288241 755571574 405529025 422649120 19323145 778216242 741234380 903262355 88153645 431179058 669729552 995296591 48987579 309890899 277249631 317486586 280618753 408688300 195663338 894815247 726660263 996717362 161698817 539228738 259527617 592726720 673173872 687228104 28148766 504033212 658824806 785958552 229763486 653413029 350717142 688886024 519505694 595068401 844880766 874244329 172871994 652071141 470427242 827309680 220435356 740993939 930016691 943415695 855056934 916134532 916375568 966858736 970969362 995037588 874881830 900133195 630622812 992651895 502600787 992758893 226057786 890310733 462058363 529469557 221192110 274609576 249777287 320982430 239161401 493315310 456208398 516756383 584876604 803858306 502485410 632349763 382431015 799402370 885870222 926970400 109928351 205976344 528974225 669553953 8026044 791019783 400272015 749221426 949780982 954646839 805209616 886815359 550310573 937880610 547722897 883768272 115723401 467466537 876356821 927303420 489639490 759738590 726547898 846940060 625611370 671919142 844788114 862971319 552179470 567629305 22820968 547957097 87294563 430414982 7698405 192571375 279995118 697814969 967465915 997055749 120634002 819822351 183236673 810332604 704900337 835765586 635138842 871623998 415499011 541830639 461557061 799633870 433388509 880328816 719232325 957215970 24930080 166197406 250744639 265169310 140457600 852224654 481471949 915419842 876579128 917259393 75102679 685684872 133273295 607525682 672010857 924353411 438113429 951879361 441974261 787131558 293160894 607867276 869498935 872683384 316661305 997768213 22203206 591054489 293068895 712892770 983915912 997637473 924868916 944619482 208095821 286553519 920355719 982239001 326620181 787859356 750945179 799205476 81494489 510571674 190816134 813858418 913734255 981636554 258359797 323928689 703051698 838389869 330045986 438482308 380320431 591214196 784078634 787957162 717776580 988758491 475849783 842328397 120699387 210465629 759856316 895079573 764561486 995225323 360711482 708980120 51031662 364390846 693721895 782447783 268268619 923096188 663335782 986891256 837300618 970181064 567148899 751360783 572451213 708721415 750550171 990616810 740991907 943013911 575118450 811426255 267262769 441794570 545401188 939698661 342861798 566598823 947390219 980469909 128997917 625514858 435759875 671429884 55414124 351218874 921389396 955469541 73640598 586110018 675488310 866190684 457837299 880897097 906567940 971726694 894612604 932744278 475774237 496580966 162964907 364536368 303948355 823101269 141028941 172828181 422265407 881244186 97419981 279301622 600428345 669165547 129528331 608718128 37124946 689550724 870834208 976967306 507230729 876732944 832391206 866541407 186362700 558603614 421529111 780358234 238665662 598997456 111304672 836474021 113943754 667633505 472889415 870099965 69442265 817151652 597640998 841186666 916912919 957943371 998014736 998964744 134238333 648625971 439289525 537068079 501782388 885461024 955950135 972469145 453470052 938792239 344100686 775650721 620357341 624725833 430045245 859885126 138144103 357097862 382718148 450335642 228861028 715180482 835247854 940862242 797973159 798996293 29332576 341746669 610717586 904115520 678187910 830555194 870882874 977578931 339452505 493710576 733463406 905145688 721527678 839520435 245370772 594918377 553112537 936381451 801976747 846686564 604388465 696245097 118078975 352458900 102525121 406897527 706484930 782665031 645006030 728443432 720421569 870081279 920183546 967587209 596292987 915314953 470550310 580949838 668490105 801874934 459899823 699740044 214268229 895143503 828406762 966925012 719614911 874472956 228610597 449697785 995131075 996164645 567583908 695030701 297980485 802809153 808080521 836740369 951571732 985148149 814464282 966184276 258177476 633196497 934582611 996997806 664315797 676323654 666924665 741070373 129391922 352023770 437298570 871459468 108987213 763278072 711905106 834724456 265696175 841950240 406407210 751513155 26607100 540888217 120377362 314853671 839947620 901009891 292464268 858174155 736207080 795743574 342646716 976560312 927587740 940905120 495928852 611585274 583500063 747007981 614377847 642061951 630957974 763478715 137323683 937889972 990601287 991878883 694484086 913859127 190748699 907950574 391540604 848144846 832142525 872334484 178150248 650344711 845357119 943355189 6902500 944242364 873276767 974159312 432801598 455525170 106481758 781777003 251912082 276022319 390509717 886198887 961747953 966207443 23820292 655850533 67227023 648437701 753408194 820355678 908917804 968510464 272552201 554471950 919545498 982435633 22612202 691827403 106522760 888532051 331132060 655579219 234669734 837610963 731152951 789860459 605987457 849467862 424809377 582830119 113270447 895362749 782789243 827682500 449254776 550338758 886543947 979337986 445688605 658427735 867560620 881555503 65909972 844005143 8396309 488053900 391039312 443073620 766038526 895764722 682470405 880207317 665073492 912933983 532395702 611177190 878824348 917838472 872260892 925063625 91466390 821704197 437269104 852504560 474608491 517507133 156546280 620890262 919284581 978774053 277139159 753490692 253469496 587207005 346967817 648863452 395111931 814652317 534753201 800370527 260821778 311650545 567276378 961720995 621516799 706894036 410730350 903365327 284364275 287784663 50585234 961277722 734118865 807077878 270986544 551176021 560630688 986579441 806773182 997361017 65940913 295686217 157694425 248817975 379819925 884846948 775494683 833204428 647220633 656150002 765343291 984831423 822241721 847298295 502059520 960805090 698124599 896364349 922888627 995862553 928534277 934545576 314250871 861256228 570085412 645757657 181839125 984403264 638591040 731641851 29740359 192406901 785976614 884661265 36150201 155219801 441507666 477320691 772237607 804783577 168830164 840413312 49984791 245482867 505424695 958344301 518900639 829403067 690287338 833631401 405964316 460996877 602146216 889740233 97169914 429341169 594221479 964973538 497859668 511492131 320398446 552467362 742611554 747811071 980551757 988960081 597687748 705620705 623097220 892428250 404488494 760997299 953133602 964781809 297964354 497462126 961489702 991713115 56752562 618466402 172387046 625103350 853676328 998323723 949092197 964525747 510462978 788747764 623300916 839960621 755739944 919563027 630573363 963561661 362464722 432584873 718339502 796356804 676921633 874982939 63276413 842247718 172982660 198277410 295458096 562376299 249937193 910710925 806422677 878964986 517332247 599947611 385994709 496143792 366133298 850985535 302698226 754412274 760587398 859112018 97260693 630244779 832967131 905768245 436554195 795326705 93540809 754008316 208134998 291920317 488880715 859906056 60123867 843394524 509078756 910691883 938225290 956095923 69820515 796302079 385136519 593484405 997485146 999229209 400345077 659891211 693858968 733060021 389952265 400255861 184903820 456890277 197437058 306248612 655399337 736390317 517519406 737283058 741713176 933049382 674039550 983714819 423789127 929317187 836903248 960523619 381376657 862021278 808068735 930944616 165522765 738744206 391850424 881785346 783869536 885911070 971829958 998617592 547659482 952930827 949452736 965707959 574441073 836141755 901073214 911813860 803625933 991732292 486058249 631677184 805382753 989363345 671901500 863084141 402901354 553810311 453888327 711796152 122974573 483943224 670375449 688878745 760061417 851387361 635429745 790754726 883342263 944542118 142311781 745620004 703656123 797082754 565638178 581636014 48169956 348599714 625949363 740529500 298902124 339037890 594468426 737518861 893695156 996085019 599027190 739688542 213988828 442780024 15230671 43304924 161005303 277942654 371153277 543818931 959371535 976607151 77827631 491391067 949322228 960929157 705145995 735476398 383028227 685115642 965991689 968672796 213710640 733340867 240525728 694661777 168054144 907519926 132643397 824130294 198465691 911790661 78084620 749838856 175627807 753663819 108466297 878525047 681400287 926238019 944426950 958033493 858324647 961913903 43728764 232201045 830590083 912550977 62855853 242275589 202967023 558088979 585448224 839379392 574154210 918088573 256441957 965916926 302755319 909664049 792190171 994407136 458232193 528764748 253936949 411451063 763598936 902812518 417103814 550934791 986569560 986960205 119583154 408220892 601508412 968694730 144534039 299651789 917316953 965028868 995923722 998469305 978917242 979681837 989072753 993760113 15440205 570960506 754316457 855329507 43869074 178972373 849217803 946180428 445762168 679560043 849755314 904566247 904068944 905107047 716710636 980840335 830547952 995250311 701173506 991164346 361932201 909654034 446497789 763409715 535247325 589445956 757867373 796928300 829244842 958666695 23619299 807803793 548741614 550086179 116273205 184371272 827868839 868557402 839358286 880581580 495877304 883020877 725648645 846249177 181668107 292178772 194583488 470996370 132555597 644897774 320271951 846873095 150566207 657216108 985424575 986816041 978558963 986623033 847766611 937526451 417038484 471446639 816817178 820544418 508014638 535048384 878583010 935258849 757869291 933285512 238647928 676776988 778990021 892040391 485432118 757869107 194210863 351931527 357109143 464831638 908450373 934508804 734480485 840283988 270667330 589752942 941931067 942910411 460928450 709118163 793959112 797467802 801495162 955424352 625196218 669691175 832781292 986621975 353275024 950756659 449031918 834915241 642554262 881954642 706342655 926372890 506539653 922907812 941540718 954703786 389554846 803094316 241181252 266498070 254389078 725522089 28525427 294459843 34168397 48271342 667165695 847277168 325898783 742063708 522368402 836302451 92235205 264418107 723589389 810178069 503694538 785901492 20896007 865046022 560835511 757962429 943421167 969828047 791234914 983738492 494358158 693687588 509320416 985005606 267850519 387483385 874836712 976413915 369442488 593121546 276178207 673368450 925923966 979676363 825471658 842704275 819858542 918577275 219341602 262065612 973235504 990350189 770977855 830770366 227761937 610957098 90538575 676201203 916638842 943975155 184176329 252943713 142004443 692584032 646465153 799113277 176958056 179155632 428839793 985844229 563873172 674912390 221337588 428013847 748923678 751271993 522621663 871734859 398040458 725994153 280730560 577397105 848193984 926492902 170094487 196940962 371483487 513177680 111011172 735851509 250452760 821420424 101026738 802709835 387472037 502435366 698309376 832420158 874441188 940297280 579822853 897406798 347150646 472294575 111633754 234191072 122418811 376725095 311356709 652208118 42854622 558365453 207624801 635572783 813841231 820328306 608877085 982228185 757292187 913558709 319677847 454384906 129601996 723064358 113683297 624162279 665506972 993018510 848603055 862746034 920210483 936378362 333226814 556856034 164114417 366904815 179342338 362708247 321427420 984639790 796437314 799413816 3424069 61541961 845299028 914962981 292449694 566650014 584492292 841871010 169565833 465412829 685462167 923883678 241280192 449997943 489712253 606718949 621634208 796474989 506515239 710279789 405850238 979379375 35815996 797673588 878102075 964124500 23692298 386729664 125375742 698411535 700248630 979549535 456698931 928696872 405270668 669464592 248540552 762130400 407424647 565484995 956132958 986446322 840591523 980185788 255968444 727392354 325229747 635148663 221743822 861605169 788604745 878788535 136887599 622803974 751877073 792179538 748257397 835144874 347597113 884457155 748145163 994126776 490549026 633832044 738913790 803817328 299634774 724257914 652277096 954851511 894497690 925004847 675287622 879279863 904235763 958722365 404990590 495354605 697968345 976013745 644813105 712470317 468170940 707827595 381974224 921841384 706053698 719727330 643322095 740103455 501497471 883393982 789887890 980656388 582935357 800101034 159620266 358415352 333078362 727218077 510979812 630390508 849557094 953321282 484229482 940651063 339884816 737629828 78797929 928709256 965035455 975638407 425311330 760047948 37377824 101838440 498368363 974460126 878497755 893113617 712776092 987514313 442900663 872794410 935295562 967343237 390073438 817109052 64540959 243535925 440348297 723470118 24876310 857337213 205658971 228618800 517136515 713215152 694961363 742096729 92378476 339376101 591039524 868556871 188335131 881727741 336659675 553678636 559549469 736098129 408481651 421841967 42931862 186988055 334391448 759521881 242380712 843074989 919056957 986493855 924182826 945430167 741818221 745660618 901980198 956149891 968880722 971972716 118289321 584812950 559422403 865222386 846505028 929306099 808550744 817942937 507570348 786058044 299230550 942294784 994325773 996467278 782600227 828966404 247452702 461799637 694327061 846728467 536727676 658126498 162377547 722317330 838258095 904961812 588279922 957102531 366619106 517696972 548362374 912275797 27230527 675623021 85955425 329196609 894392805 933526749 30783487 827674408 965785269 978765421 73988649 141540691 229474325 574516116 9177795 703067479 928279641 979092844 924548391 973343296 471783900 607937298 408363393 639987202 600310247 635125312 241540752 342969877 935358710 982937981 966680288 994422911 996466209 997371589 155445905 193797435 360088016 560673231 943119474 990282132 512020143 862003872 410596127 607422199 840726730 966473768 522892107 859121652 440055592 760440561 357668149 802176358 281924496 775577282 212482136 422265129 556120611 568765284 582687440 855983603 755030978 763283233 100250424 793335127 948353607 982876353 490097742 955061997 14835120 541394567 439886138 754151967 898105426 937891603 198406955 391561998 312632003 388244139 538465452 844645390 782444167 843408571 294867659 557594559 447058211 730638077 410667216 512237527 178508252 523037311 58257728 183551653 148201378 764828385 148629253 758261236 989972708 998705716 698475358 822854311 748316250 845072444 474442164 647949680 588124563 658113556 576803297 971527372 356668012 530634554 230613688 409005962 707926681 728008603 672922120 960753976 237420563 544034250 608139183 632010195 129198880 825916403 478125373 601586644 415823230 587168708 696217488 816247938 301223399 768926069 818038258 819324448 552199274 743326450 156668228 711018798 824505503 975005272 529094658 596338722 611756023 772629563 252768667 935731387 948881095 963759134 915956095 973103330 66850372 155245100 318433368 838709353 306617357 588078274 33446833 172000885 654159882 675938134 66925193 920940657 468999632 525545057 710836671 799881266 727046052 768927360 527367284 555764183 398728438 806377618 481233971 548691607 762823878 940612183 238397457 979669697 297048099 995904130 732598754 920615298 785308861 817955695 793723975 876790798 647880510 876694344 897680906 971547004 407190196 530047104 805925175 950078991 28575868 153068200 310986657 543365659 388609618 696388242 87490269 384705406 535319846 974866850 141046739 337462789 820271831 857515212 622510208 860303247 425056947 564186823 856640609 961324867 714397781 783862202 245529370 969429582 675365536 969451653 164194756 712664223 728198062 990317178 933871413 941373746 610512344 989040115 691073842 926928813 887147832 911514367 994863193 997404142 997343975 998444590 540571394 937988934 853110778 896982060 834668880 883756452 260269983 571458955 97246790 686321342 432654114 603498876 924198267 952325082 553117277 991873799 364102207 664941122 334033237 675606444 24988707 746552646 40583649 541949854 237024713 452323903 336437 758350845 982060913 997464739 283749036 627752179 231218149 972868779 814398860 899399223 937492271 994803317 516695089 957457595 556395463 561889351 290486575 967150975 173172706 975979303 690579674 930885865 147530733 375475904 110761845 935715128 527597706 685790233 810455817 986865044 738733090 981975415 345212595 856071933 78399375 191802813 777368344 963189376 57758759 617503220 279965434 705840827 819001511 954206360 678100825 966818853 247989667 499138769 871676874 946952143 351082221 892394089 964907432 973650842 31240115 960628270 171488141 409568893 852405393 964312038 181360519 517941775 336717036 712171116 340036263 840997080 595891127 639230948 78714563 370055048 334509366 756125609 132096 220689465 559872984 612060233 355676341 377397953 289103718 843625307 970282885 999017187 79707395 327035715 750709037 930506585 81720540 799571762 620476124 926238750 398348543 551691807 5214348 413203853 17175855 827866943 745882680 963841771 463710140 569027147 604071794 903103078 470114390 754502353 866158945 937431110 174310608 268081805 977371571 998572842 377370402 716236353 333827142 854203009 179737453 957603639 974639948 984615859 962607743 979833038 108595755 693945493 588744875 892298101 383469822 732469520 406927571 677018208 893080230 996500258 874201243 993859938 928627066 974066408 266352232 683735906 851305608 883035704 652506934 695310119 694846668 902111205 507735402 866715821 952030505 985390581 662721721 669171095 397094770 804198863 517907260 786900508 148519459 776990108 656163697 670623312 665772304 862283811 350557982 378228667 720171678 906222654 552341897 833677222 459085962 894806406 990991152 993396213 784485552 948070840 113740130 985579456 764170412 802950347 447770928 730977390 545208804 801957074 75961089 910483354 850427370 927579086 203667223 553329248 84573442 699340727 59322020 233904663 214868636 494446169 297452187 433894150 255166537 435256287 294950179 896620158 924204040 936950149 938252699 954555321 111501454 537596856 384648536 817958982 23867629 310499199 105417262 147574859 492868720 697099093 65930308 958558549 856314100 897593484 231610811 466250233 720390369 900874523 366631586 883683469 634973677 887279134 579875813 740229481 378488869 446103123 885718528 915662429 511054053 769222501 954503395 974061782 261619271 331746193 554734411 943744006 6736466 17018044 71635318 998463086 964300045 972188427 632064538 758420106 975108899 994495692 396788646 690639999 689745500 940519038 693767008 915282446 721796711 890773401 173126325 982025875 339943258 616197677 299920099 322627655 788906824 798048283 900876345 934265284 128732276 324324120 337800297 849721950 448333070 559721093 139057795 715358615 334364052 640607640 539591149 570114538 758798502 952894239 590170182 907154513 986968457 989155641 240269830 827947515 830027577 878590832 748896422 842574751 589673202 820156982 810038910 908357954 68881372 982633334 80638729 973780482 97038059 508785097 996820646 999104174 966511397 974913017 960545346 992829700 992569235 993074612 537024761 775576457 99247314 824118406 670932747 950602657 280367522 972864496 533526161 923626705 116161571 924779296 471088619 778791506 501857721 853266797 571593167 992043633 862587115 988129748 540254856 579873098 382504166 470843509 820649868 912583495 641272233 659381622 322600593 581206148 224948947 541684839 946296197 951669337 545588436 859040737 610193779 801490074 679314727 841788924 803373562 853466196 984306021 990229067 880713290 956094504 208767346 876911066 774474137 890152091 546165667 687810239 375325513 620578679 638976025 719074134 537132258 979801681 631631685 641323445 942686261 947777762 74579819 988239912 580020535 817342089 12434660 474211931 190900437 720310009 549101701 880736944 907161325 923165559 514195821 933689566 950131543 976652102 394251797 986227821 25058622 180600918 927348347 956590218 607210037 692661357 462319808 976885388 168819117 935522654 548098399 757730478 657481916 661506164 267728852 697455472 353983165 658994125 10343720 906360032 122190887 721169169 776433884 853668907 761885137 982603817 484859969 779340482 530379791 537391324 269802823 729849485 972968104 979712919 86316111 127580337 267698256 912652260 566462361 603752130 383143021 795839587 513612796 639790327 208932437 377867396 634728148 701670703 870160483 878721374 338605330 927242962 828814660 881051508 995645907 996956555 499257989 800167885 608244226 707427047 55571538 78561021 97936876 471052393 370251265 757347034 501733133 810627551 661118652 700197482 184465181 775750940 655073848 772276240 496579970 882215245 653504471 952354901 188839394 831756824 661573352 819159403 216822843 400848419 534234460 926845876 818223114 898731342 946485686 962394874 738813541 751380651 344112219 659466680 504636031 998405630 999097593 999337032 144569994 953735609 336268341 490245069 12327501 690327185 812580028 938494376 749823390 979519107 992705568 996646030 172070778 404267813 431554033 578747502 308897336 908443040 825946108 909078618 586884322 996500716 118491208 761475559 501595079 695384974 765246588 803005715 534132867 717892909 507138705 741631187 378582454 737183811 220858309 747715332 256097056 601403203 588686998 972002223 655747505 921270117 816810012 890341334 818027709 983889573 40514289 163631653 721002867 994174039 543168855 574430048 646251228 857761969 989613478 995463696 201689345 876226610 773393156 993550899 471656523 888706680 722061465 862557783 284228038 758576111 141356996 765343241 595936404 651725638 280704807 312929848 518892797 809131613 561129770 567408982 834294650 847649551 200727072 968392316 895039710 931572600 267501589 669693323 418912472 902160670 701013383 770686408 277050897 463657624 696191937 795900692 521413780 987120691 934417738 985376464 751359603 768766628 972152723 998022554 296421199 419595048 546577894 751864177 994351281 997168626 939818982 987808924 77687048 221998732 516932377 800380152 297026930 437891730 300710756 322177857 231591856 506576290 484290120 726969519 387306126 408911104 570081042 917588663 45954278 388284925 490688165 943147125 15006595 186527212 52888878 548945072 434449617 721957058 346507065 630647574 99240254 551034950 794618287 802069438 853702835 986742481 583438408 617853879 175046572 424940084 258418068 391484415 464942257 853659237 588308182 763461578 89623658 397943180 984814688 992708904 947206153 995220135 367020586 820610953 60135314 677628315 980267715 981783554 170389849 555476627 820429326 943631031 87257200 415795472 104889717 785063207 866547062 892744711 305167046 692376412 38159597 289058176 779979037 987466127 265684379 804029848 848079939 942811755 431241784 588217841 557126064 911670957 869622839 995251980 975633950 977738409 383577356 961526307 710299638 847168303 122073847 321639290 67371308 773070636 831567778 896678504 781947673 848768490 320293041 462604136 215495922 779190995 952623475 961047057 773299397 839401302 6883980 136553613 191813318 858627165 143055019 844586221 42455622 784214005 78291465 199169544 755628454 878680598 274676956 869774417 890593439 978982186 187839427 349920398 713924564 761551172 914013746 918802914 687080006 876526956 789959539 906918650 257720643 301559638 149580285 807129698 893679441 958240392 772382640 967737058 199939297 754731087 899596359 953124678 961072914 967841496 361330855 632547614 388568405 439309897 812259299 964722156 497717142 608682586 258148025 419729477 739738954 865121827 821862274 970434814 317891424 714122010 866643692 973730745 222149479 816907219 240315540 296348828 84336840 447389069 679366207 951216197 258515761 294976795 699339114 709158921 113195974 513382434 322819743 679820398 881792407 929638225 693404211 954484258 174818939 265809056 941346457 949914061 328742387 992108549 614355268 659093021 847771908 934092865 846350172 886329660 775461247 997603700 557716035 882865844 244817277 997942014 982646640 993825248 171180431 985704830 513022256 549379581 956482094 971426134 625599127 813020836 334513820 569690393 316095661 685720136 321184738 741762155 300371225 731748286 345442125 600497314 940409242 998859056 635215692 763050168 371392299 550001908 881216889 905681031 286308000 521707808 310750034 769653503 66886510 776607353 260514895 778149035 46281450 897894632 197591056 254148734 38923564 229040874 473237391 595218616 782021455 798224541 548318391 562452906 674798881 826611319 819956925 869026836 877285112 889020684 329779493 489163599 703163106 965170558 911498238 927692719 761700271 928395903 867104735 896189779 228627176 711663229 749995933 801985361 962945433 965436728 863480345 879516545 801458937 875679315 912148861 964860468 335383129 691898203 222007107 238004668 866315829 892867439 128035509 162346286 188633716 842891060 258600481 385662290 853786836 917943620 19730983 561557445 54742 436797376 844242835 888731002 731042086 847989431 737750660 828480560 477535856 850001984 631292335 917160633 106647446 941007121 686458981 785070277 89474960 245926382 159677163 900886953 91119911 848895437 489171414 839842943 283060338 691973277 603978689 720427237 393098090 795558788 52982665 724109330 396658161 514311921 169031012 586935943 484718003 968345844 546821281 716709493 275476594 986786681 886615718 918768771 264751281 957990164 904427528 914996419 349451323 859282421 709668074 858747277 69536133 938465431 639357907 674459751 476541915 993639745 505508030 594149708 313560907 371147919 826803154 932285852 486002346 713596217 425167437 636710984 351781516 606853245 984343572 989671435 659453400 820473374 883651443 919807581 540023938 939171476 301291283 426917004 824774146 905215565 435882832 602572060 207067156 610114797 918232410 928689528 196916830 239322936 34365356 391382213 637646687 837190151 281594197 639838932 153584583 509105773 196789654 359694087 979425453 985326749 936391524 991638755 961651930 968789515 262042261 313663869 387173513 727758200 243579584 942995219 113422059 592780889 684384471 904230265 395863443 894003704 87945105 227852748 54137646 526612690 51547385 379939046 625896269 772135587 601162829 610989824 588965058 735896735 978759851 994788709 603687223 771263434 407052377 616636826 559925061 636368366 34251499 945006461 714450195 818391935 239227306 872437775 211402462 454546319 93511923 171634905 577445306 765639897 42747423 420578090 39276586 467772745 378936346 770207239 38318591 882162448 772680956 954074937 456738472 484058163 333295311 603715727 363909214 742697826 26684600 162078690 902478744 927054241 813173795 978173834 687230081 974048947 175607938 268098035 715716851 905790556 750948413 884535915 204614732 352034654 770942387 969927403 937205325 990095264 967872985 979367016 379322053 603607674 918856617 963522453 445516109 645379910 75225570 321281491 778463772 848458152 849286993 993444421 437790387 590438292 846514092 883768625 43259506 683658862 14025864 739324600 589414551 767291487 477146565 768222182 236638845 439677013 301041646 849056538 414034573 996559917 15278429 424297457 412693983 514231478 334962657 637453999 161765258 582574184 87682525 403012521 667946827 714109254 42542079 945677882 228664121 733929646 837133603 938616167 251656269 603059625 713183438 886216979 314904339 856483188 900175123 986290078 321857648 904254542 966551231 989129220 481117053 555445543 621788446 762587910 272917453 848001072 136257156 362628390 890409846 964160379 491591217 720791169 442600498 628737756 92506823 896700710 58835017 473251320 376103581 434315591 955144208 975221939 328258813 533264969 349870487 900521647 934758113 962040020 774205255 776878239 81427150 805685518 737941394 873726176 559745713 766275460 164319087 177734221 49771495 614665231 261809979 335268981 508271571 585834632 573607557 733271847 717685493 824014698 785153269 827986681 828691456 877539848 406996533 627049234 629989936 863245313 827559510 934641805 399134075 806571316 432282278 940921665 728847654 742554492 510648465 828480471 889552631 951390036 865705558 873357840 443922420 751200148 123145731 500775385 557870787 829008258 48632777 950409468 556362649 624700264 1648339 785620996 926105823 988743371 121018251 683349523 745282367 913586418 844664464 879527758 796396634 862662234 498998285 717211224 714857535 771406108 829529086 983437443 808306976 991204827 196685567 969653153 166219419 925810243 362617744 885959534 559869869 621335556 623487925 643161826 452469258 719666168 155461369 857609173 117946074 988668218 429069593 913004187 135829694 908952479 582963741 835666755 127427731 601955603 735786014 837392741 711807907 763966417 51534780 465413672 803162106 832158150 161578093 705784396 156397935 808812367 177110046 888484646 790648911 805776790 316074180 476280983 625238423 816254769 784783285 812196088 360865026 858736452 846283679 975432042 163289941 284345676 255152298 511687434 563212738 908178820 790987788 791872393 579118545 588804756 972579124 974179536 522819808 765437879 810038847 840601260 945871867 981539799 708822555 825347010 696454994 868241633 870345651 987277687 700348421 705419940 190023642 464497821 401134662 675433938 11505323 256746647 42263930 146710562 633675784 741753690 376683668 953917893 655205256 775085111 692691563 772228290 296025290 969582605 61478721 440684023 483050738 507182295 98284885 326087390 518017577 549709374 764784458 991043483 842534156 993055016 810334702 830328144 232395752 408802517 218216460 927559677 659756011 951099464 59850163 846151509 334501856 716039261 612714501 936517254 162599917 951747499 733158884 758606126 604121798 605257435 40700861 305577378 898477979 945576447 417175054 562565729 605323524 918491735 911156217 965522926 674814443 818532242 918780236 965483208 240918726 606670377 275330222 461214941 968409597 998384630 287786880 395915523 105129310 746273941 833820144 887264297 640125311 922319446 609808557 852551565 584727906 737587812 721452656 871869259 993171313 994414952 753370680 810865532 374329964 940543980 453549023 854359178 149666379 762050050 664312753 732349466 208623106 424004380 932749295 936903175 216611983 550579942 292236810 469566174 310218332 808472560 124847557 601197184 208167629 717221879 164920054 343361648 83178833 188595585 370821206 847368054 426306884 581367069 737960457 756179465 63498981 477859981 110428559 645644181 752899022 970298643 906550168 929476176 275254636 607025624 801942029 873566502 197317306 901871443 869955092 871067838 598085724 901514733 235660268 237326990 749695766 886588536 769938339 914330956 348586568 848558909 158812563 526213622 3604230 545499917 356182301 383422891 635797934 717422993 328636582 920814582 50060460 203236498 211798616 539261372 322567904 712709903 326606980 449810935 269386288 989310483 515078129 916148781 763885979 937857865 229698556 270068494 446277495 565804407 447582432 453581998 154515563 429739676 672676414 882557219 435776665 663076982 763217026 873518546 300483491 563960432 666232677 687263894 605306630 959510663 986468615 998729179 219221692 694679896 219515873 594009337 293899430 880993925 188032952 603344813 380117490 402857917 937225869 989550739 644707771 740162538 84606574 295796286 527072333 871774762 91943783 718003903 716750419 765869306 413434767 650926822 469393068 517631957 867837418 974762183 80830318 239839422 444381371 626669709 440566571 624315511 728873505 730541924 964574636 993578010 407940739 912394923 810446347 876742401 308166308 574013584 289669442 342382450 84606087 150340328 673644889 907793128 622833222 867643903 144107841 842609806 43136168 758577039 341903810 828331937 698856677 995407463 34901953 951882489 985883233 987139506 485905052 859757729 86918011 99783482 779283847 946688698 993820862 996573686 617720379 879959811 454524377 673001791 832550234 910239412 529426454 896329011 77519533 486670770 539996380 691514837 867925818 875936324 898098158 905132035 159667388 830137885 867152796 963703844 825398049 827016876 523140713 603661901 722022395 811258924 676754930 842755653 877693577 940332567 132384220 503231926 271880926 988549925 82723848 913401252 414375146 562003763 703152186 848824299 17853175 453941357 472121043 506847880 969321997 978702562 36296478 741546079 382276950 678976729 401191715 757752122 325302216 763403669 273257764 993287250 260584241 656482167 459017737 883655671 49023174 493095559 367494926 635772129 986672980 987397732 701928348 850551669 138544676 270084027 968367488 978872545 229175542 979951946 76334366 694725649 698862235 820323544 629635971 676107325 672639218 992459085 868419 32030893 649464626 903960804 166653298 652172943 194018532 719934187 675824073 767963193 192358210 242598886 644799 842807830 260659273 541101346 458718499 530890471 67540192 191833977 507605807 676937929 389019307 801684589 612167636 719188028 718894335 909079143 653888182 974537466 401943961 909510987 879689774 991440039 491898910 663262655 327822504 421107034 343427402 949421869 467695985 637265033 532201066 551745849 97313738 390643791 589336899 807434034 772703591 932524769 207174665 923050453 874531905 900895056 155986202 524771889 909646714 950149428 190502255 488921755 51386749 137059968 240380035 578708234 899173360 917642493 969589837 996229185 548550077 725809980 217130591 392919231 895391798 945857261 828048321 903146333 533719431 716362052 225427803 732268543 740917270 981921532 9369930 335912946 958256489 965296214 421833919 911327995 39601968 390329120 378338744 534556351 505009650 602930543 972551104 988048311 237477019 826222792 828327776 986389966 345058739 358090623 553248380 998133544 849363152 911233174 86077132 301305928 660448057 828669415 480360343 632270635 651248570 788477186 948369759 996755096 375937197 660815644 382449142 822263080 757726047 939611304 635933959 981735792 832493117 865457441 258730978 830956386 361739646 893376516 452417649 535393332 898475418 951642838 444098266 920551197 334341772 392305123 116201780 592645828 150742975 265236097 402401004 665480927 308423731 620787460 818956537 988876881 517922655 669634154 877620280 950128827 621286483 988619767 744440407 799698743 912069286 966325935 726203532 903052615 956211107 965375419 818270768 970657132 530940865 933743364 132754709 159420691 799648049 965880104 560280665 616358251 559486962 869503442 610591688 876094184 452596428 888974834 153797043 448701533 48206415 594434889 882416484 889313099 52267782 670068723 769109522 772015633 806431800 952616757 544737566 824712875 481062137 826276948 296659785 965067587 837076296 963095067 251379264 265067487 17562284 656667940 330558510 601366448 272767497 749834294 843432817 893341603 262548056 286174772 533798174 808494132 110050831 877662408 97448446 533340472 965114535 965787814 431798744 806299445 550134957 610116747 442172963 613026686 408551461 654979444 171965939 649245846 985713996 990838784 333800321 578013210 358598881 525909086 29992651 918662720 65082598 586552886 349181553 943175895 620450077 826381940 757548312 971681068 158555714 855864479 252830656 863882226 334504045 814039605 73091161 235179452 171451400 588843171 624252535 913167494 712055526 772268672 212469513 433788340 120018618 339220369 759445244 841012658 879069533 917265636 415950392 654041083 649798550 817919783 183611900 805097020 686474352 866859659 741367787 845177518 825755016 856052723 516805919 678628525 844396455 948134803 412438963 532236892 659028665 991493949 980856461 995873429 423650691 704145583 357740895 826623106 745194492 770583247 245501274 902854197 351383990 919419112 937552855 953850258 563909668 937825901 183038713 490619245 679072586 696636072 837261341 873389472 233063304 520086425 234164390 544590977 38529232 832593765 335961362 835564777 181743446 250112606 592822231 666873775 929703847 987972950 106817117 513689485 274177384 677023190 743629828 744909565 686339810 774186967 402755997 435199096 107481815 163821958 702689163 968314403 392682416 636555649 334535811 523589105 641760570 968414056 988039638 993450271 641846558 997295704 752302128 960587330 921173798 985182313 158200774 409668938 750923164 992878263 936149197 972512752 301558389 441118106 378298768 990081444 232217919 798969162 131388540 911215642 306509902 556588256 458698181 768909419 960077352 996410553 205545079 396255507 52016724 312881977 516499787 784760102 249955593 354446189 488004631 679877364 740016448 792335929 940760288 968876656 751387423 816968073 880713345 998588662 227540378 275045996 571613302 837570915 957371501 957644941 379310893 804816060 165904834 598782520 800694968 927693786 678808731 730393790 272936031 505969210 37144725 915614558 365947663 801679080 692248300 939733123 702738665 863601847 575706390 698224933 116781990 899872827 945143482 952378914 305005357 670450269 359557529 469283895 306163846 432405868 823051598 831271654 390425226 857427983 913427552 976057852 711833899 755863564 174132583 754877552 760664573 789278867 477393918 985104700 666414802 712283646 592110751 625798630 83111729 349060957 484429880 986713463 110768073 663025408 29180117 212709604 762271080 894868143 249909988 371228450 319463 947508923 2364106 722623261 710935709 976936441 321477424 520583598 168390823 541093715 565322512 691351467 904677896 921010812 948977393 987684421 71939379 483866201 631498970 981203723 135360587 240600752 3082786 319700678 582552622 607712499 984664814 989667260 584772895 703715833 351263346 537739986 924115285 941205372 553067407 570622027 680659578 828861712 1224776 937978494 440492564 779440836 185749159 586559560 949133844 994613861 646483120 880726516 421532768 816376787 453052516 468386455 150470911 253367859 269548853 297049925 656322244 852502577 583105415 730885243 872731637 956858332 642856373 913579077 945453993 984839642 85973690 804278075 21507039 155917513 420179721 784620713 514043667 967356051 980492327 996806884 460583414 646313489 782411805 864308692 398675526 452919801 892643438 982420189 457089816 667005439 844067382 905466022 353729820 358648290 61314408 188429197 168794761 923220739 996664012 997477344 990273219 994103709 234965371 493927400 327748387 493982675 832649451 909861792 539736091 742677887 293438915 922540258 237498649 447824166 514458411 877953224 719042489 924315286 159289944 301539603 754587315 800365672 239573082 436111365 676137005 862832458 890454598 909976291 479131280 610261080 715700091 741546509 387831139 640990660 668151082 873754097 499976950 839823003 619619561 883102093 48404434 317914914 639480855 926809656 385901924 480750323 596808351 714082673 312026735 715040168 11986886 663660805 59293873 984973041 124999205 643717964 706268895 821635492 472615291 689100246 947191401 988870705 262942121 776910580 294986576 526819188 483070720 972458733 247205512 492713439 758795695 880860179 731932267 830131340 515305412 737754598 698527788 953268853 513614327 844545991 213718162 520733779 298059213 869373440 899573149 969619813 513613675 882498776 208709655 859648392 591934194 924962264 698867617 834219775 236123666 866162309 397851847 663616092 953773086 977439038 311050403 678643162 380449306 816453946 100558610 396057319 947138822 980990797 846249412 982813410 801660254 827277043 11590383 301409655 229484906 961580365 799515769 878891727 564955669 878436936 546151044 786770630 502627499 966254593 488671373 673320597 526968871 553001170 558812353 644661376 483278673 965730864 831646959 943984106 574389921 702389794 928781549 994050313 112445219 662145368 172537509 750116052 534344266 843272948 704477938 850709714 154512553 175118635 49635322 668134335 433523341 821122329 629700757 964172396 424920885 897344498 258901822 365765570 465668224 690913330 876936749 907215989 698878602 979710002 425175061 528260577 290256029 756300751 853620318 991012217 831833295 995769600 471696875 587127422 966276013 986105074 985131130 991688210 357910920 890943335 736881062 963020118 811697034 987563617 588204030 798165216 132822001 810841321 93947514 667542382 369469303 866449504 309252271 457664969 817916864 846380866 46106445 280179039 348603781 953177099 455849835 578766618 312069934 729695379 978491697 990663814 963427105 969475852 747395964 907007300 196752085 441793237 777360066 897524196 634100973 794797598 856365969 991003400 582801314 596336203 894650639 945406477 290082796 489270209 903192959 914976233 697710313 751350215 528229084 538977056 180907382 871733720 765265536 855973801 534857319 785452308 191999797 231399162 242110424 507034615 324676717 532091973 379426656 910407793 477969052 524419329 536082265 872440053 950600851 980925760 739023949 865550010 514085884 989658186 689999336 898246479 734344425 757352830 441128425 708998548 453766329 494920740 806395633 952127681 979370478 979753427 820692220 878577111 337356556 492162281 262495432 314807664 365766237 961629109 235749791 786738920 58653176 763674676 492668367 953124035 247761256 904562856 376700299 862915941 393545914 821582473 553280330 955509984 570877416 928349544 607792499 973448287 666382382 736637028 325567900 765319036 916324070 949117077 130115500 786877222 942151993 943108725 247279792 324951647 344724575 738957114 790253382 847285583 423505706 644281789 361131707 874505096 476370331 588887665 101984069 126838104 315800915 932243642 724177973 797920332 898723585 946059585 808242325 872905050 926840418 959933173 37110669 954803559 652292004 991125430 74777560 373503026 472745396 812855252 127029963 237148553 795408615 993089125 389186233 393970112 981753247 991716606 211174817 280644787 295390666 491698729 835129219 885713754 174727018 491826787 21346878 477536583 882490469 981434346 725996317 867931158 215902808 811626873 901344662 935096747 41312294 46648163 341591545 486985699 276818743 866504121 42002280 915242138 373150326 483055329 783489487 786544343 970150253 983005690 580363663 735537148 545994670 578576512 55619190 203405001 106799598 377921787 485968671 827439488 679890180 969589383 919075476 952587338 303511874 802300115 226211047 610500456 856977598 866170930 984774230 998972315 274255861 935406722 452123341 750109952 138638099 789702258 134142720 217951590 671905951 939931574 489783340 620563806 672496982 953420240 806155689 846824644 307103567 493628312 383508577 404707068 435875868 610109375 777486950 817234168 361398561 509404366 240480765 421524842 225811686 243219309 987776457 997869926 508265043 612289323 451056192 770587963 366751151 965546611 807391385 823412557 473556435 518295397 318541061 561525061 140807795 694893722 896933379 928799834 481244288 652595460 522525072 670453201 985742913 992918467 765969907 786958271 251153887 662322748 503105896 810504237 9933791 462887479 841434562 894945523 301616018 372203668 297836766 487751028 317156807 760267497 850783609 951321257 992252563 994464274 720477726 726304396 683273270 799336853 187415559 784190086 793160369 819579079 97590742 398998298 507805593 537178986 986831633 998134738 647530464 962061668 745268497 854823972 326657081 949570746 680755253 687055472 198258357 435263718 156072416 162937282 980074229 994299810 473959464 575787589 611941644 790965952 811787836 865519849 23826407 519508732 682011928 833948676 698076594 919772005 447983411 834093792 609430291 670978723 161830918 775196595 367952818 785391055 632737722 906903175 577210709 922572294 485279859 969959618 33051562 720533968 27597062 946366334 201243217 301312177 242196352 659132832 371389743 903877950 162715073 338195985 535031778 992507895 29441159 138964326 268922459 524804443 616200492 813829302 379642326 625469567 241412894 620956267 810743900 986237144 438642648 805491533 540632942 861424735 575014403 627343560 956220535 976854407 112418269 992905235 370537848 470262249 484529454 922514689 878197480 912046580 433692544 931484683 227126097 335533008 597972269 936430220 167656367 243673853 741545928 798928090 856106486 954362058 631692472 831967269 243845119 812755386 597872735 973482377 508355579 541801108 803218658 840969908 486295787 762764780 43344481 899592037 200840105 468013766 993682523 996078466 227611100 879818501 528964847 737169132 850873265 851461977 438825045 937392983 367760790 874130252 927686905 982594403 463653566 731568315 866402239 888753003 970766259 997431804 569603360 759607016 851543127 954899758 443554536 915908458 549899228 751219993 716255612 866718499 330611553 345715292 679758638 773920565 700120691 888294552 542357120 820928787 529797535 562653562 158757983 273503073 326740494 614873422 686295538 936616202 321529361 749369471 827490009 894990836 792413487 879639986 344400497 415741079 739715106 838138274 56558162 560632018 144124288 958742591 580720615 810282920 348006715 885526435 872340480 951255876 3067594 691583543 876257392 925788406 931677420 941816123 771999380 985752002 469700984 807827906 87403727 595963876 867842503 968952448 575540107 955597845 203258589 924829682 9851715 849476019 635990618 956130589 786262862 818737358 128209671 544635032 164685212 421208739 626443234 684660934 35242747 546286824 717863935 770200136 872552944 918896746 226471057 991145814 859673024 981748900 216019638 652033005 163984768 814579537 972327477 978584829 484659578 985477224 400924558 763692140 716107135 842291716 973842951 995012071 81253385 799973817 279208593 543253939 413859892 582596862 2313127 636713049 557019448 721043973 857197618 943805056 247141584 693248001 34897297 938686232 536721066 575913529 786917660 885039562 92901842 639706942 247748619 461222139 135251223 267604077 333002496 945859094 390306796 511072040 869898590 904126980 248468621 690127893 898312364 930611691 472539849 687679108 229730815 941958741 382671554 655334450 114527211 641135082 940414463 960062901 967704838 980390162 97770211 244047470 73992889 560410588 479053095 722057035 761242574 917099911 752060561 763388150 307459823 715351107 603609057 717889679 994812729 994832866 500441145 728067220 799162579 947420453 598652140 754760302 351749190 423348160 574684105 794845680 597120343 843741850 952510358 956062341 461180039 788534166 160432205 917171869 940323321 945338087 479232808 651365752 982174909 992761777 128675113 495358023 16165513 415690540 401864990 528171251 69666712 245343658 564077995 586039059 574627379 725814613 114848707 666521410 559000938 916499065 234917456 541314738 592274833 979626799 397264960 437103500 770267896 893448663 915224539 971381008 666252406 992108293 288996050 498383283 151370370 810265804 515434264 529113372 250299457 663439776 679266467 909834847 389798372 721188571 704841620 907011187 185921177 870709443 669297438 937550782 125298073 492616219 320469839 770216702 908095380 909775831 680005795 849615216 517880786 731195840 387532560 619181237 220340659 332840567 955649476 968778841 707405400 910746733 712341388 785715824 254237939 390591100 927321225 933320739 818595754 921477288 853660201 991983693 909544307 922199435 38152363 426068917 856930448 938024782 437614015 438961252 932851950 941250238 28049756 824608161 511328656 829757083 955334081 960008815 597515276 695340724 286085515 710308406 743052115 862207964 365680640 500139604 670158014 711336187 557310721 574586784 379583846 756323058 994592764 997093451 322535286 805757206 454518382 652891265 259599651 268976824 609331371 628743902 308609291 613078087 5454819 717087801 402711384 982890612 475649165 640016223 134852733 893751076 561185625 636637205 403676437 874121883 373505654 391453340 595769828 798860124 559851309 993767216 774296909 785776739 876816124 925677063 873902151 985380441 555141462 666816729 73501222 717086661 655501150 980233136 90480462 526464899 817622395 948644955 382601068 625726646 21475171 870710521 479651918 934845862 299640924 951042215 103508581 880897898 318170128 333422759 225523583 498067125 855983272 982796561 955790997 982104407 421019281 655567913 217088516 252494362 456578970 995668984 787701768 798203332 971613163 994978849 735207541 917192977 393215488 848381361 867600532 881066637 492893332 721543993 948766526 973226009 755049937 887322064 743102920 856522155 240766494 580751491 713642792 825328352 141706089 493618199 229576404 419750863 450169804 875293910 275891762 528202569 519623967 739268469 271983747 372577447 704893952 994436678 85947711 575815032 879712519 935625794 298211597 408175967 114219191 283362759 370790258 521375833 731370942 851280346 620135068 827050620 112468246 127670120 174128244 427976782 111066126 973194403 208174261 557609031 343130838 852460075 45725239 459819358 260161840 323565707 700178302 776546456 270972983 448041767 778767491 795154729 859656748 902818244 528831622 718941623 483035507 853733159 232845151 672170761 686783711 699055563 291016677 795510393 722295547 999283494 227965847 331313545 677416546 844565049 800587310 812508598 863072752 866576094 407445386 471610885 713320069 810093486 805373620 920812462 237773393 904750365 844603449 883381840 953676180 974767931 360083005 443282695 138155182 632305620 221941391 893125063 851117149 922907942 921784311 933022466 237632507 498166515 45359710 495010288 443426686 726591162 895536722 982454953 264046710 853013340 722996851 934103023 545048370 674923485 943133814 961732429 875423343 929014024 561517222 849418259 739902568 905644325 776776905 784587465 256795179 685131753 126363792 964032370 223623663 921074088 619556418 824998913 609111558 693568684 873094086 927152350 501240170 652352015 230852005 936476546 355952068 700001033 892453999 900431325 842672996 966827093 656363053 667247634 289432076 966905616 315789519 967032158 780091703 798801814 360752904 723783810 802585725 835519072 836244190 864969388 248135249 433742828 518924085 549049411 980308867 998745682 518663438 920220822 975111003 984153890 688380044 886415369 223795501 407675823 301103612 873949957 226789914 455320572 672818502 768602844 42189671 354965966 572331295 641208727 339439107 455950541 212516264 236929675 548908231 624197411 577700778 815305098 295899767 488364328 473199930 688752502 856012140 898753425 917391816 974662981 929292455 960240155 684264985 874687722 256507760 921163675 132457479 505532071 442575238 839716101 369295579 878529643 673233838 726830569 596873289 597388790 282270851 608837315 537085649 613775052 789487876 868356682 462466815 873678506 358795816 762929040 787231402 807895474 415392486 455298756 60516400 762544037 791688634 980172508 145895546 213868256 282350818 897338975 88078882 798299596 124024757 871074719 711000292 985319465 204241758 275062791 966912846 970509591 421415515 425363584 68731624 739705423 263357673 994519492 694531825 910377495 752949243 964430448 57275601 678120404 376542683 596360378 440488444 905576744 830721939 981794823 344184743 643457813 708865777 910284899 246613809 749389133 281938167 768145233 914471956 967447199 648444149 659833646 58856032 202575527 188282788 613304451 363429395 876091745 791388760 985932062 549603834 760339378 452611037 976724894 442423884 980306570 268210927 960242589 470443037 673898497 572967285 974895831 612101296 712234402 727966572 746375395 349869821 855357003 890440983 989361811 447983406 698061658 731315548 951600539 222623177 650438919 875184168 876935356 390393339 430149854 283520286 491905917 438182805 866273357 338773991 872470194 107458466 637073338 400920643 421798591 888211896 903901318 641867549 867824352 325947392 456459611 648125379 794048409 415869843 610126139 171200660 647436310 892350725 919008321 980392326 994088963 477361591 953643428 978329224 991747020 354434596 622822270 743233280 832072703 490008218 836634967 272991940 452921056 608350830 787435717 174929875 917864299 819909177 958308450 211464840 403860662 86473055 153857202 260880395 278495751 711923937 805884761 980422007 985013717 502842205 927783906 746317300 908791342 32106589 353128945 430046690 536053844 19539430 495718549 920776551 996012803 590009351 647008322 147544783 301291945 209221019 434863748 241337554 571010402 145248356 820689709 990654688 994997619 876243872 996455927 977574838 984423319 148694680 860645081 572483242 624514002 125025079 733995669 887261903 939992991 795074372 996561348 455399370 604534419 752925056 846899281 267525430 509553815 190025767 678715292 735472717 780887296 557928349 881985186 608554477 981538008 344240506 875873365 920886285 946237959 579926307 786489579 134367916 623058760 364400708 701047012 318354541 536389753 345373920 779701895 44828651 415027642 562526073 963774533 238272077 294424181 690715607 889745750 170117377 255504968 333575340 420343369 655025720 925211692 775727733 886860218 274348165 681379444 628085037 995622536 533607267 642193951 577690127 623872561 291033949 615224844 757129836 931605390 74733032 778928255 629076219 655694589 122934950 939156057 272875577 355109991 94096220 479760033 839206723 903669821 732567468 983766872 780132314 992197522 186308191 848054656 95427404 449655390 226297656 914130919 564511894 651595437 854338993 899213849 412100972 872516321 34733809 992177129 80875062 883470864 522043061 834398263 903734639 909726823 347109413 970573056 622998995 792862266 343960382 542460319 369638276 997966471 372507834 809595427 457063216 684099772 95037334 831180606 858960831 983111037 926678034 941361461 650310455 915168977 291738506 936191911 453287110 767386342 544335487 895595840 519092411 974616784 25486525 427940110 864727891 885075559 267934233 460074038 538106161 963468222 678711256 842087730 133775325 971810195 30673690 681602334 880860215 967082927 625221738 835519450 661613624 954909661 282185688 613891468 206894544 818905967 435481136 898186349 253568681 636067672 415017247 772920079 766200912 951526003 266036671 563479634 141681581 382052701 782821846 939563460 406292687 810074373 809937318 937180225 436923258 592554153 41332627 829424275 155193549 519852663 304789457 330366920 560629157 722133956 159359862 643569472 624221774 843966420 219652695 590987407 864244979 881044693 900941565 991661900 401959177 828291602 535472189 897473676 946731263 964797423 86587225 316873399 917878129 949837628 693312375 898613236 186482127 877129484 736928442 747730403 875712701 936576452 156523127 988985977 233953444 338663920 492354943 659777521 911860659 958489973 100288406 248091259 122753295 451348228 728129628 792411361 906911163 996836590 483715125 944395334 800138984 997232033 570955716 666022656 369657114 567415390 698873904 716300416 822017576 935184282 891499907 939049962 124748800 424478297 280459687 735229424 915113979 965836404 208649035 420773343 424907248 950119582 359926092 841145835 768179138 812605407 530056061 570590721 767228113 999011212 840381346 979772059 40262938 567075857 400470020 636327207 368733538 401111185 422646404 639128221 736697661 750318162 333765056 510744250 702929686 763804271 20800654 30472691 911830813 982588639 975711061 985879675 838430404 899728889 306416735 979432954 362484758 856895116 915671855 996891971 176593965 750286427 365625946 464764570 336952107 372381256 14885649 219350251 579647594 948780645 737940748 744778416 55124028 283702381 515794380 716008307 793795151 987132390 888683700 949579253 986899629 993206159 864641418 866442848 822024826 861708624 867157147 871027044 811126092 942433704 168497305 868937656 793861799 849078875 527842575 597094298 39049756 894535261 443254582 983069833 996210586 999168459 158773600 559733189 380868577 966310423 852954366 990237301 976477895 981013247 77235275 762458041 113831034 174505171 791987183 807691865 392929162 970657373 982958841 990048474 117438783 533320002 903301582 946037385 444951641 898811821 522803196 596174737 822082754 868925501 377272688 987478183 857114788 955600235 209352296 663216442 32778016 277917682 374151153 937319712 397515584 742246966 35007936 796204276 423041552 967643646 796894087 855570795 942604032 956248132 360268660 546576724 773202427 840558133 931991897 988367150 377745292 708732593 378701989 588200646 303552007 944869541 726657467 802932931 234729258 828560920 280953940 844664250 84883409 165986894 557879524 846176361 537588591 961826599 989067658 995536115 570044181 739375314 711471841 922368511 948071154 986285559 84562006 305142525 278977918 572558437 123981718 707591109 316791310 983365599 45169605 953099767 231090308 724764229 741994084 921019936 642322381 747819639 864307625 877845574 448741219 751840512 82307471 668885165 419463303 707386661 123424131 996753815 245614734 835311617 210282486 693684746 348789155 916881808 415496060 534157091 244831513 814353126 702267008 745420651 160697339 639767511 2585560 503260908 592565747 715085491 323228762 594588868 894137655 988132735 783955316 908865768 909754785 927843271 519953760 779528103 528749914 568607459 592602971 847745114 211033989 828181461 541225766 694179915 349119095 861439095 548698797 709104708 933785295 942532901 83830877 334046169 145019199 374498515 757508503 990658664 517695699 550692406 121201101 397486668 829796747 907540245 717069218 750498223 488519986 536457654 706096118 798241844 985985336 990872868 185318182 886885173 597291470 933598248 632261918 870767331 146467699 253582567 914965910 974225826 908029944 920119871 487075165 677134297 364666556 982488135 905831930 983480158 165667104 421243318 439561064 976099380 560694504 571699230 745781838 785258149 677675902 812598715 697778546 776383986 648679121 698606573 237778598 528638176 690346525 813720091 304759070 817187781 352162260 477565813 552077048 616133764 57071827 722778079 220011836 895567357 985843473 995523820 124259781 549090047 308583869 982852555 153815827 714223369 309917673 860342116 282990612 871586327 255578644 957594173 935647256 982384084 484669881 986174580 949742204 998708914 639291509 948740969 347760744 403725271 160599217 393203789 100876475 131163534 854929257 900914397 957360040 964854014 112425283 522367585 778189908 842235528 103976844 228940741 371376890 781374373 360273505 384433930 331170341 871213917 965276861 990721174 364879623 590838183 653642062 911710929 859849206 902795907 305958137 904774059 997735592 998337107 961292307 987429960 926462825 961547002 179511882 419966897 200259378 910714234 136338729 522329785 793306650 828432523 339646135 463739343 591122285 629553182 521483358 807163453 954303776 990079658 778616209 957430031 60813778 966789606 750960301 890841462 672656085 692559077 988072900 992350891 375372665 930025806 221954646 271937106 114854614 376891606 564756526 765757399 840190543 952475642 952482966 979838916 108885168 265254094 196178749 486439572 971156159 989453716 273329688 443112538 376172487 751123225 61116702 586929653 452769714 903463051 515331335 661309101 856736333 912196522 878380831 971106032 356780827 976030539 169037951 331902417 97760709 736533354 181776501 531406903 547353923 993828451 219504563 676639307 621154099 758509951 838100269 893244744 402924990 498726198 878098872 997878301 535744714 719589098 782381889 885539197 234306605 989715185 667418164 952349721 717927968 863572352 509788288 760460564 873485302 905738338 950113889 991798143 238475617 312322655 835587064 852892387 800008012 905123214 936456815 957665102 256481142 377556332 57348301 575177323 268852284 282584461 650766938 692448301 287286701 604356522 930913406 966760543 457685806 493203168 248339766 253436301 864409911 933027693 787401871 951556782 765271722 799507440 236007768 323122260 16830363 898654639 252154534 746166943 48434935 128495226 568025880 809535695 517944815 541471377 374756264 991669287 686644533 897784626 287975673 776478929 332551172 828798623 821830616 997982349 707401172 860174711 173432253 963742951 260410298 588342983 49316886 78864834 639562231 953799065 503804543 978158719 701412720 851552363 868704962 903941931 798355374 873151852 70300217 500720905 637172092 697572617 622885653 640347495 709048391 722104731 374401832 808054659 533268200 724959392 170947631 498304183 560108197 563507946 199047028 364603042 945022971 965319129 388572455 581309032 132158105 782432453 193359382 246083788 822599604 914829753 218856971 482838399 176422576 798093153 569762524 655805702 798109025 929891072 851757945 961801899 976993590 991924517 578392884 602859270 162745704 348683556 93314596 643677887 750648735 886500643 21000520 660250961 465979959 638429938 536728966 747260119 679174458 795745371 890610078 930135877 564091358 783035389 72353978 474189045 638912447 686415980 447978035 963037535 13341260 419647698 192175257 891550187 942065402 963325990 101560435 194890480 29626243 197137038 180880599 246984564 930380450 973277358 99160421 157760486 523143172 623199088 379199174 980965013 598916027 761427651 718198496 768894647 450825509 880392765 57009825 368877266 995674169 997119669 736849185 873456633 193647492 624236401 279268262 428410867 568695630 823441616 670019501 920011834 597099049 745711183 89891704 142868691 961496611 989802454 474277114 769702493 114297232 977401232 175810652 839113115 591391706 956164223 685073629 812114314 744540417 949956843 356414118 962413586 601494652 859777638 992207066 996355344 432036455 902589082 588589169 958234768 208781992 399876949 132432904 848504550 173150585 886059844 205794776 813554368 530920435 842483809 205323175 669227257 392681876 720760333 289170488 828293654 336950915 392871142 652251953 998791201 533257048 928423965 186960736 652538468 338305557 391909520 694437645 933543503 925115313 942907486 66960760 989612314 512960854 978112407 134635009 256034887 231904920 683684244 357546456 906206172 247462243 665803058 983045283 983469221 501183212 658915365 466613344 922389298 418475365 998095978 367188312 723440326 845385792 846943980 852525581 939869787 597310418 673106362 826339201 988098047 365208304 672981542 421579954 470581446 678921920 897165513 855275045 890450652 613912101 955963030 802279189 882366046 396935747 978131059 594843454 923939091 459306082 949187851 939665700 948041003 488783791 630437410 116637133 633043765 334805966 854621841 775568754 889803569 369897570 526769145 319995667 813578182 581069639 708771481 883426380 898433989 404897704 914461757 157556305 337526672 18899440 724962633 255780968 766158976 561802900 738219178 250151872 262004376 869654222 879144230 84521866 804659152 148828563 619157948 310933493 604711395 822136778 837867161 362584938 980419004 454724401 719693119 668734339 862764018 71222586 510902928 278104005 779210669 817798679 971975048 639654421 930594155 332530626 863044215 398032982 689754139 335511572 589616056 967046319 981395531 465475126 663054392 259645335 439214845 139546462 907719451 411258850 609199349 452246644 469542645 139137016 154682959 240556329 247411430 327917089 373902582 678164496 881655109 30606196 454437362 74673666 237811762 904410041 952736197 184895296 282361715 300383942 610844408 75155587 826990503 731226131 987974421 293287515 677272590 771819422 987566780 964636704 970169562 158258295 287968794 773763231 865790128 911488928 976680712 854390380 874981693 798496432 898920657 353328872 406842459 876610383 897566571 891132703 928445705 880566655 902823819 749387326 792960138 718950014 905785758 512371541 824065493 360655824 572287370 494026292 967350317 923709518 936177958 812761503 819315853 204092128 292253057 392014460 994194694 631135801 981072411 513502048 985049706 67138847 699669482 718155232 887299624 297297727 970303484 205011441 826814995 87211383 634984493 772580525 990802690 979396084 980837945 258788438 533865872 871134712 880582712 345469051 640734591 982926894 992425380 600790805 641100543 513529117 585509432 87649558 189730246 821218141 999308415 18767784 839378024 20417814 396976019 50369881 200281467 902327571 944514489 150050033 858951380 447502589 808467468 748150424 956842263 493434748 643314586 832701691 857528481 725963819 858853035 543440488 827203281 329010853 635081310 380030885 794565237 362381069 714846421 906642054 957172705 250601925 503220646 20890035 416076662 443422758 557832254 388547580 958050788 44313575 633023619 625081847 981065830 779728492 923602813 575911338 606287736 738180640 763755268 571516013 793217552 3994484 757457936 356996518 473481043 184913751 483822238 544214182 752432543 285229694 903384704 37735222 161566754 144274873 265050087 196444308 568529559 232355568 718240923 60700633 684914920 67482045 538348896 380860089 702449197 11427393 103868068 65329406 590496317 645894836 898092403 492021727 555843605 501077238 911362757 478602360 603965978 466438249 584979193 21213217 309413458 696356046 981765542 565381751 957393887 797634517 859091544 249516497 339313317 571798401 908318645 691183027 839241331 991817591 994671589 817641678 889963632 809599900 831123497 117794461 133549156 132022866 792245427 105549474 470607610 213145699 913201154 659651410 752326109 548452553 864532752 688576074 759562799 367939962 738867584 844541194 940457661 165915991 466918220 959383470 959922708 736544315 925552777 953126644 982426310 402144602 573476195 545073284 558992635 764927559 940160211 926982683 940049942 78301189 875582010 306152287 976329024 118034720 514075137 245789664 946560782 914419397 986284751 579731609 980486972 711015509 770842002 993881487 997745426 188631034 783412308 880708913 963294713 195181464 860507260 827074850 836772793 221245792 924845489 788083664 804976181 570307592 949976457 874227004 928381899 651270769 821613037 808779594 810806122 530822438 988626926 3608226 335230454 562437684 628350979 499806033 757642853 309882694 987383740 784167727 936408832 65647806 967876252 603454173 910751398 977407896 979242932 849830762 975385119 858208780 969282511 30603374 210496629 881731828 976883169 694634438 702870507 405015809 620630189 934656124 958575742 72941626 586007969 271249534 960273899 136214367 593518372 310306384 616943083 639602400 962384324 743785055 792702272 695414865 776391901 256445784 808454583 296949944 341283729 290020473 911200872 718604882 943256660 49549984 311050766 618942854 649107111 801846059 840331635 759811993 845848754 484432640 903854562 716390680 762046925 90667039 92154581 726191435 741479097 231513758 860091236 269724045 795211285 80120470 771417621 772421457 851005273 580611093 944304597 867681195 905532863 340674856 705253946 243732446 829557413 726226530 869093342 444840161 642800622 250626334 685679903 52812419 381432779 522118992 791014552 29253484 330505536 165511991 893252204 799818412 896012923 283006128 880879661 350388689 845944465 462942188 631688384 416849905 833255823 440347628 651310824 207617084 981217989 521555381 669674553 676985827 701973540 802520709 824963489 487334364 836842159 883634663 905168766 152258459 494635069 894242241 924572739 950723429 962635581 237296611 846827311 716443503 931511262 330958477 787497017 390231076 503542927 187251206 613459331 419509423 687403690 562841237 901338655 581792182 808679105 704510056 913275934 890926196 921026379 228499939 274606328 440343905 626463139 510733863 894094350 287343025 881078533 221603565 570592310 593690716 672773625 699037790 920675415 946878381 948128554 515908703 720323134 884218176 931949588 246874524 825272873 846852825 879698707 167276654 321829313 327206668 916284985 456792726 813891668 486755514 850985209 331275372 712144302 279558838 463985721 572475396 636150492 11302229 23797018 259992996 627964800 770242938 779307397 945201325 987530993 597435127 999124741 762146408 953948456 94683726 484033567 829877493 990502296 863620841 873168518 196832445 538536333 869599462 892977856 983095628 986809618 208124258 393854159 149606465 624465753 802662396 946890221 61485478 296690196 987104624 987294226 154324883 526486889 532554766 846802496 360063405 833461652 701970784 766980686 85194894 783881204 398680723 754464885 834107185 839513744 419100790 440538514 253974689 630546411 430258583 949354499 873883991 938529867 837803600 979945216 478628579 704443736 646647271 759767875 22023464 331678906 989979703 990286641 98362648 151353593 377240377 379001655 513788534 776747328 722952362 903716637 109761035 725409984 285543240 841157334 410999304 446469816 332367790 367461389 104004356 748403383 872525847 898991691 136972686 472553559 478371763 769086457 942696326 956371501 435114632 855834404 447061782 466295006 975768352 999350163 885043643 966116517 248876409 382632400 644815840 704963886 437009843 631395033 980993299 998142327 435562560 745769295 77661608 212889992 727035450 784638983 810119065 845942443 147360892 686701130 439933521 668814044 873974362 938775919 964952918 969888120 332347350 733962341 855305083 921687481 294314407 311976196 705944275 846809609 464867562 810695429 704750650 914760836 392152968 439781989 122148816 382359837 567090024 621188085 773503472 981888199 551618857 705178520 184275897 228884232 99302741 439646111 205118178 218500308 420018842 639427395 880407296 897914556 244571865 310913956 892926360 893751013 351207442 911951382 884675512 885374635 788630454 811159717 341721994 984464035 420546854 978382215 294269909 617675065 310486243 460422257 861585508 996632022 261059481 617445283 840198883 987379172 974153093 982163068 681507576 957285796 664206162 733026397 580222061 603239790 716870327 937470719 412176657 435397084 242554004 508384296 984496189 991909409 990738984 997637773 756000125 850328509 168844774 953482797 772392013 962055425 583845397 726403190 267243342 513992241 145042605 728056374 22424820 148928644 339657103 607534522 628432240 772662172 77114017 676309916 202507725 888593191 325272244 594482341 804394220 953356451 228973917 485812767 630639413 961255508 654329854 692696236 282803144 553980074 46731823 960953151 671637486 828022289 394775523 672891123 327758011 691331801 50373080 654578848 797674348 809467390 266314991 309324099 945447041 963668972 251512971 259378102 190564876 542702566 621136128 753335192 965475624 998427068 814724762 926386271 11852214 498448991 887896497 964159322 472287240 674712803 189809009 866255436 73951696 484559513 39384734 187445115 655965781 947735851 308475565 633375049 286748424 310587156 551291632 755049324 80960362 579871938 811612515 895531337 591555699 719747419 740079081 819918097 86055823 253161328 585190057 611538738 547792545 816753222 731674461 904946920 432227808 541384119 12010156 316523101 781904167 977691873 57318117 647317557 231089509 306762063 140443388 715457446 111958304 914798425 20818417 46582180 951260344 954294684 598468370 630328769 72385354 166911211 326921788 544750517 984893380 987009647 521284649 569214634 882339322 991242097 136125649 960874727 407256185 408656884 84677319 821881474 184007737 828121268 225772939 807442014 701236567 981241567 730997541 878985195 301000381 696200491 584799072 891932574 50788364 665156525 788263476 927495304 933718028 973053202 537827453 912366422 862333932 911613321 256946305 270936633 558258673 930573141 134205905 800322606 805475060 963475964 961549188 992669402 642845073 784066518 112288989 122585686 29236068 150541560 151374667 572943644 820506260 845831721 498721483 632337842 362995348 379715878 39171250 404463546 936240233 953285849 639760796 720175940 510863066 638134506 609577140 661676966 484551257 930251710 346502115 553079857 458013003 999260279 947016472 992702536 81255885 258011967 106930595 491162270 378575884 596715261 692019662 811428665 245252540 890329015 300946717 817439982 458918119 707084976 975090557 992002196 261402520 520556487 406077020 979500400 22429636 858376284 999165565 999171233 470003901 787030209 866522611 917807198 496233723 630117797 484156136 637659630 179789358 670291464 331299887 825871268 849929045 974845070 185893029 585486754 692007498 898618065 911872648 958985939 652381445 766162290 33527479 727593309 266618024 959296966 591620229 931675310 808999083 953571305 987021690 992537389 769706568 918383554 935281088 963038768 375456466 658411880 699543522 881525043 396079249 438357078 483163181 780102367 774821777 884727184 952396576 953845194 762639566 766174042 216492741 327300785 873935462 990942975 609528802 864921377 78562849 316709214 206455182 770393095 383112446 495448750 889180428 995135446 224140015 244961885 759855604 901550638 735675744 870485027 463848936 835419533 162725088 949114035 131036281 684620322 13095330 680233957 930780884 950546953 574137370 830291847 332614911 733769696 509674301 906562675 482670815 561344419 44321952 845395377 802667274 957887556 466106830 898563082 677722925 808774002 413863712 800284826 576149181 823715338 543338039 783648122 306986410 384015119 27100466 400210183 744313871 877706387 249099407 672743378 358767384 839199785 495515434 834343743 328661025 698686685 467576594 528156015 419971650 659404754 185088236 631446513 562775210 809538470 868771388 885622442 998082555 998130517 909937461 983565640 801366318 809798970 325996346 351844644 664618888 946629526 434239284 997916874 154787750 660818940 105300951 641950729 674165476 806606915 609577401 671667460 72840569 536938659 647905402 681018990 632581570 651955457 967669979 997771275 576577789 682879329 682272228 724297896 443089206 796775902 151878349 808530545 933288602 951339801 423504159 426742329 486659272 842507287 215820442 387280501 480413106 519640669 387891169 441928126 394829193 624244897 883631685 948168993 798966296 975578909 255650553 891174308 252370360 480083989 637481621 779582128 263607060 412990727 829575509 995002046 933207356 967978877 9490396 784739947 52810960 747860628 561673837 992534883 654328474 694272784 521736422 944755120 651218115 730081738 116958371 300982194 463558806 684451329 872999552 892995776 216924665 914263516 263769979 958773049 43318018 760888948 683666534 821657897 232861384 779861675 153881254 714449996 772197210 854479175 78353984 96009579 91029512 782951059 556361708 817013055 56804264 902547290 612220982 903322921 56576296 98058953 701349319 926016836 175699844 188218656 854522147 855784709 895663151 913401802 237001282 328637940 99086003 612456520 224506826 397315819 376745140 429183528 813190922 931357663 399840923 958700517 459722388 612325361 751881002 815825620 226799978 606057043 132547130 983839248 86204524 930140689 50608114 647502068 546981871 604732896 340043144 481402206 140894826 369317542 325293730 986059784 750763582 922540908 794576575 908013262 632335905 908583295 438354675 969336278 505702520 615337250 542064557 796490415 171532918 770884311 708059872 756288531 497585177 636548679 709348477 943188279 630777249 659296893 954106269 994242996 768368720 777363775 156306924 371328634 148572967 665689114 328756890 925150336 68414940 175172822 333247185 909544249 636705831 773008445 337148775 623995407 62075077 803678439 995819076 996468114 751149370 997171253 445722964 834811058 706234392 934704327 306945726 716552477 188817748 309720281 745054404 764212315 548640154 959156164 58483223 635452946 188571874 195575217 989962127 996331833 515093339 688164278 497795955 819820882 215914559 435397786 361470127 591252855 728409926 761615219 476699585 680356081 308697660 648653309 929401690 937436393 986685459 989501127 488060123 825286573 75674569 250186937 14974296 911043909 518879633 796703199 87396174 458702221 294253147 741681257 878665023 973932486 540489142 808521568 462657829 693792922 667192847 961732510 943330765 956932320 658964297 867455970 464461384 612302369 682687890 770454682 531094807 574485150 252148623 467289673 311278656 816269061 222674782 330834795 305817759 325952051 861518062 878884229 801644644 843045203 324874668 332857883 534486522 671501577 508438032 735756654 156331457 844998666 132967274 317621788 954428974 988179964 499200796 585950084 388139709 946480943 955216067 955849995 314426062 589048712 828290676 992564263 984177488 986870620 403312695 835866930 764203287 787958243 917742799 983278327 462940868 652106039 389719549 597741462 540515091 666549466 451509228 811317466 173734022 689605683 873307203 875755698 166885031 810235401 307861859 595428799 190206068 648842175 939369640 940696110 538402618 847575545 445952201 804404625 523376823 528707511 105386110 759792597 837540296 979318217 344633649 774636391 504398816 925605832 532132088 565460433 811763153 949727343 113276658 445271879 992127929 994882335 206896464 847926098 775073248 903090695 757198802 883823053 830197231 878744144 489558454 587893239 877524667 910221911 690658814 901889126 335560392 462346865 35933779 968570282 356289547 798169384 529793403 945829188 281286853 624182610 858206747 859776700 104210450 695955629 511809583 811944646 207062412 738101888 226535433 294874288 159064228 313523722 325539507 328380341 882094085 996604895 579434993 717970242 345868733 925385595 733442770 871960553 567816887 773120684 211306667 397119978 549336047 960691270 351249100 628359760 737769628 938081465 720162874 894404483 711314085 903440854 210650000 824235470 925612192 976070074 875728582 967335303 412242719 823976958 573083801 679720363 412512484 535524437 544486721 994723609 314588156 939672596 708834961 746295488 900603475 991721763 584795641 754383028 798428482 896097738 357777148 700384569 551735957 805467304 931585630 957263889 630966586 846397406 628567467 896407286 603168953 630706000 534001216 854297730 200218231 250759646 660296107 812726264 877219612 981394066 423781707 714875468 618550538 770329919 931106163 986101775 856578061 866983612 476886951 500955353 818884407 821298271 382566197 787154429 215618060 933167482 974586611 998429595 7806944 369937218 807619997 860112253 517045799 961111773 930045703 934170842 871887655 899700173 235579210 257579162 920476455 979488364 854675470 947834087 674314059 998995154 289688381 440538053 289193660 575725539 739965934 758164619 139934163 945838300 764680314 929325106 436328542 450156570 363929683 768783181 525508897 756438729 131641859 611336643 683680607 934463910 654186380 808832458 827900658 902922610 230989264 587858452 317274502 403975226 47239557 141405327 434120041 571325890 123957878 477221619 202209014 595213527 881679375 985977428 361250407 773464720 881133335 887004002 532829953 556402552 983769392 985680781 968952548 983868726 381908112 623610571 387164798 585685933 596655617 664873278 437858690 650550353 815847675 817112425 972554560 995592889 450799970 536267261 149444002 787624091 814380853 894116148 340419362 619458246 676197013 935220218 544376143 588264672 125582770 143468894 885422412 916715767 342663738 844504944 217716672 776594325 362397017 760529891 347069208 644759144 769688827 872404411 717502296 955858653 687861336 994379489 947279197 993875623 236224814 531209399 825370330 993150251 434902912 623082312 153533098 779869058 901218194 989687389 4018155 78852455 216093063 451873699 250182391 849698833 571458721 639488839 503338115 742298398 444743349 752358467 28927556 760349203 214246147 542096486 513457537 666187369 454269944 643880037 734930345 789998598 388499806 923133390 735510849 900413878 174942755 972439072 534112458 597044370 196103259 856058313 332198694 364360308 785483881 997181778 964828743 982768649 282661939 822155227 65204674 519298599 123354500 377716099 822799698 883439855 640902613 773640717 180087016 442044453 914259065 951144460 862600259 961791920 864128224 979901092 624106992 716731635 774305661 939269579 695382676 920144945 914066154 962041359 942286875 950234004 337693711 915130686 40628731 658611882 90488129 466612525 51212508 445653664 879767252 978318279 738891500 974176010 963242128 992682925 184582962 360182272 702109371 704238481 46456945 502913645 575840480 805242084 387841866 502041636 451811751 456583862 484881586 674010757 78888416 591545655 462912205 649844526 977479291 994721917 698581466 794225096 739811033 987398122 446363189 528617938 873007721 972270466 973493679 980081411 920360210 997980346 999201232 999227028 178600695 746558201 316504789 407251854 418505560 995029384 680128273 791284191 146360934 674150860 742179930 785260350 981033701 995794537 793601604 866199148 392345431 431900371 767770453 838816646 834126449 892177214 15359920 104906402 920993314 978252885 824411927 976812762 873136633 907841149 746724149 938944699 950829224 990970644 738900254 916349193 213049367 562393035 619056353 796979064 13432891 904862703 281949988 616317271 924909611 952103182 397290625 656252779 502135794 670650101 101801457 590258623 808207938 977431368 51664262 510576255 103129253 143230483 559704559 717200735 877741886 937611236 604605065 864169522 227861357 508017602 755611030 905241574 761092943 892835561 766210808 778604775 56487488 906435469 341538294 727534618 550596156 822034777 559694087 766774571 185531490 598298528 112160955 694753851 514527348 657656188 424897418 775093602 523199482 925856076 696918719 963636269 155601346 961730580 768131473 872653360 763321300 805539385 682452123 818179758 730132365 890111640 818887365 982055032 543631362 917949438 480987109 612759943 48879945 433742600 729010912 983295799 557646995 905812750 180549610 939176537 34608759 86287987 369318486 868112208 105918889 888790376 272731905 433055046 946925650 966590913 878618020 922564143 515408453 826643550 142522543 244304829 350606436 382765338 350573440 424267964 741731199 753824936 351148065 828181935 897108283 897740138 357414242 412941310 945641061 993139910 547583419 777287726 936311034 976618811 954409530 993819313 429094359 514222765 371492053 694286258 418972649 825418265 962922685 971908454 908554841 949901314 123279110 523587758 956477802 988026528 277182244 822718545 60916482 555761920 311768194 493930155 953914927 957781668 243723473 985010322 577248460 770290557 166252300 544393736 245926250 985065990 280747866 973871698 611153539 859945505 767395154 981989892 824483108 844302161 837144723 859955416 380286591 677333080 473688204 498086376 401120477 443417547 255556568 779059553 635510737 817652683 534041685 838287442 422386791 529349618 90224654 230034042 119962847 280634871 504387376 602056388 411813272 631366315 722664684 741792618 250583215 401427094 838466812 919896509 708472328 803615834 239342970 268663626 634433004 664516802 926212748 957053387 969260350 993028286 549779493 739217479 997976072 998312722 547782059 861789177 634296417 801715394 425457942 925909876 972483034 981933560 853121714 961643087 146817072 480696876 172288529 249381882 933624156 955410618 400584891 728550612 76418779 493083590 882303225 946711118 83313785 638207613 812491917 872889109 507651177 766419444 582750938 745838044 850191699 952931062 882413355 888378632 312268102 652015259 147489101 307262731 199169013 803897003 811136481 891026016 240645224 624116494 680416205 717908865 175043731 257934780 795400954 810062679 89608643 836438562 528279048 682681040 438872422 728167908 652027754 773243672 273262582 562395014 961498509 988869752 407129800 485085276 606766463 951265675 416553932 857496335 76856551 663500359 667827707 812829128 520424280 554196020 515401595 592903649 850301015 967095320 623104347 916718354 925137239 968425822 637530358 931951852 870730151 955736754 954449723 985545060 475362519 551948857 839694158 950866970 67524269 645416201 661080133 702350653 588052846 959541988 656935353 982328685 673811270 678948159 163846734 793579775 964657589 966696305 528696333 853333359 320070781 534030879 516070674 685854594 681792920 969495518 162841792 866738169 69011377 771504483 351278718 605396143 670383637 684365924 780739246 953378239 306036538 518774880 838928387 960151099 653374732 951468204 969703894 989891690 363531038 562517627 219662701 974520832 588921778 711129539 14299829 294160457 393896624 907993276 708741271 841301531 472657504 604522752 21114935 755198912 467241835 589870997 540971845 606492499 825434702 999170526 816340348 895733285 168946394 344568887 158725060 366504293 919716271 956660659 749381281 868849750 419500771 807857535 809802402 978858949 527219176 936469524 976470419 981256737 191124267 842676861 549821267 701264468 510086055 603550278 772771082 947462982 289442236 522813520 809325122 971664622 614168496 665455773 798887544 811164814 120314024 136066504 815940790 891357660 963050061 968018441 281575426 486807560 765032722 770982013 792603731 811968372 874316076 988828294 873371938 976647665 795316692 843647152 186128897 459249509 479927444 719308866 315509947 776378730 116306833 368173548 418743019 473897605 113434949 700370050 646939181 937124744 871721957 921455439 772037236 938308708 508945106 754283148 600230596 967895541 541689622 893733826 638232339 913331703 507456884 885811444 712574540 774791562 461766816 982572400 603612587 735653568 994869384 995010452 650480805 914829579 788953713 794705312 393199828 716495855 318868290 711169880 701013957 948853837 364591595 803658009 937170313 942500968 304830704 381722458 589392120 612419602 776380730 939678666 774852667 926652881 299218159 370897567 675246326 729210497 236818051 735139694 779093075 786943000 513701717 971117713 205537514 938832071 723952004 819677857 462547398 506235846 840334960 962561219 833157434 972719594 830667493 967944864 993856758 997345516 90631496 295010591 605731789 716774265 454703666 518675463 587022822 682192906 784191174 850850266 442728543 966828988 421528845 771547912 119775485 571166775 223129913 893576265 232565320 335764924 351193086 381080991 248584407 484898827 291137710 517191367 948715344 990109464 863553585 994533068 342451491 498369201 18197627 593595477 299727356 652773706 252640948 586699912 34271292 108748344 565498844 856202696 517947815 815922461 343696484 856985471 653228628 784995597 730684034 822997162 809941900 822580443 857682650 954078555 204190585 915342438 306128586 427212935 583374518 690998710 85223783 392968644 669746266 943389581 66478533 774336442 545991080 699694807 681923459 864300154 558384113 760191249 694771213 938719459 755360620 763822356 747748359 889072522 862336871 906308262 93765419 434418046 112904056 481439965 782846918 983000654 58455653 213445416 516966625 517065300 395958719 448654574 782188223 957005888 678833242 798602834 662074965 689712694 178616463 324374580 697043772 908219135 390382416 569365656 654801486 800552943 504278070 667558259 362313639 848578110 509050761 828410573 186055167 767474822 961610172 973822026 577504196 983296954 600443100 793960698 592291326 922679667 721799972 802607227 297650436 430065870 40397684 779447028 563874788 650196969 172763037 508258005 948437947 953484292 746511603 937854221 322302037 549109046 626283569 687102486 605206873 829419514 790752450 971229804 464339263 829784378 450184719 810552231 342529023 662500609 214095356 544407258 257845860 819737924 775357737 823447971 967471890 995288445 727989743 975261516 496304646 564903310 372754900 439891258 236304527 599304214 678548773 877191752 301847728 559181273 350813253 369422824 971048825 990578992 425176231 553705109 419079904 950035587 650636198 864464770 210591157 414640553 244535971 881772551 450457571 655494659 394689012 992974755 890191337 959314657 162467728 799436732 487508099 759084595 310453306 914289239 867157615 922799947 933592039 942293760 271149458 496816582 974337512 984024462 106295462 152290132 463576570 792739300 388533503 692489217 445893501 799546518 763818000 885669077 518044473 523429520 477835221 961780137 564727057 699508161 833252006 963743028 885758487 902018210 238445500 996160582 609099439 666018772 350052229 794101863 508787750 787813898 844801886 885039245 791163468 996244951 414624955 692974370 901258625 918145993 196603731 937755379 380588840 545805905 633649033 898656353 170949410 508252411 237551673 267834500 368689874 747320658 990047304 991087549 270452766 519186008 967657553 969170029 931001774 964820776 163470477 824637419 499766557 560948446 498935075 884891982 637070127 961032952 260641008 284257153 461282954 511504111 745305997 946561276 10268644 74886404 249899958 735487722 832664402 857025004 543683386 555138778 180883719 318751332 507727308 941204073 504704080 934892881 609764802 816403969 456708710 933659661 573515997 978712360 625374311 636574949 616874112 934807821 90860687 972990318 340915856 773619014 796785676 852134599 29655026 811072412 618370894 846639089 842686894 897199241 388211780 557542095 544615694 734740487 981144127 998245573 500216467 934548968 867138531 920766200 341804976 852115639 236398302 295353604 179973619 225612903 992626077 994521960 689878800 691765625 58333207 168144351 395771376 626729951 636254035 857564453 764652372 809088517 785573502 908676897 371826068 824604601 983997280 992325169 645188134 831045184 334600299 705975002 397680282 617425182 930567421 970078917 456588495 867138234 702252810 714123768 801524072 914627113 544694005 770517401 386427699 878452520 438649705 884586536 246920466 874373307 225463047 370434277 846799578 950717019 235573541 561227060 912737762 958214824 265823513 633246412 260337862 471741511 586653462 678208864 369703153 659520625 286069157 547300947 306107362 810315270 35255772 279223476 361908379 788717197 142761057 613919111 559306682 780993931 602795513 694482746 60513830 788861562 517491511 645005265 379050848 782879080 700726838 909766829 510155496 747268328 843960319 898508407 994233552 998119607 571566495 651329799 207034198 624010652 594279772 683433139 289158250 963202517 405328402 446943448 93235612 196352110 983385892 984511433 338267530 899680771 308321147 488709440 812021670 934642555 189911566 347037920 783362767 891570866 560692876 693977470 238655832 374816338 810048848 913186465 705841879 929419919 965396308 993696746 244392219 254381377 779719537 846312797 831101427 932425396 865525789 920852456 749012370 944592447 756352320 891042051 28339571 200091274 190066391 785597915 24477050 202702681 151328756 216210168 99040445 578396579 503469344 639445871 704192743 754012204 162261306 572205960 695338971 883352755 280106788 583773342 308892853 773304591 342213100 884071408 568286557 863438777 521288137 989437994 67475366 902942966 225626164 386725700 114979465 540776402 932206007 942642736 910715333 924725754 353386261 709139742 448913416 678723686 247080777 824665666 405170397 785435766 469766404 987163964 480999753 913428049 285008481 813402004 501787695 507915570 272545934 444773430 191576850 859169729 59298311 325272843 174941098 956239927 451211958 485294484 190009602 924776350 281596735 530041236 890139219 952791200 471842902 901711971 684619934 715322538 567795222 906861036 636023104 840141444 576125781 609179048 745264184 933284091 981190679 986579036 119323546 890447075 104039090 216194049 671707945 892952271 702819817 754648999 879918390 997771918 381254667 897832687 315884361 806843251 199927170 415994450 764412429 804147025 460271305 906919739 211370441 421047098 281470112 428608906 94546993 944527395 19086827 19792000 95568388 841872857 25269708 907046254 684851866 901892346 515577675 889864337 829633204 874036658 134230659 273118515 745235039 967598979 971570556 998074122 712867816 942287536 119462751 147098603 370334603 463446054 461339470 786073296 389615317 720712986 100925067 392883482 940872441 954342054 663596708 671889854 986215906 990230385 659381130 668827172 727468437 783717630 196023509 729411773 99896386 125077278 73506109 737187605 435899711 489800530 307932322 603863084 404712019 808570136 676377422 751066457 474340994 599364049 870015529 993274595 939301479 991673551 423931379 714001590 314464684 808103114 939158813 989765542 893402261 955655789 235114959 806579404 888354290 914276757 209086353 647652125 576452474 743492235 112177795 123196993 394312272 921601433 671280932 778877917 983414294 994312368 121191887 593389293 582907145 742902462 350070087 844754150 301638183 497735779 123954982 300718761 205482211 407489855 127066682 246890872 38629956 433319193 691701699 793963932 692710735 754886647 592509309 758520935 547585344 573853618 157500921 192120917 976909993 994112839 941501008 983895281 256160049 876435012 241135440 517760125 865138968 996466855 868899136 910750998 354521779 908722510 558383830 916854190 64161524 432036381 274646252 594113217 540867950 846102329 818942047 919665384 231194801 611018177 46969723 639540429 712520241 963627159 972638628 998442547 445894601 486047896 588234511 701129150 962187906 975021977 613548872 700820121 24549877 901414887 906515510 913196390 529512276 845683985 31160836 76985280 142338708 959186105 87245391 717116019 190633721 637983689 824476487 929893990 901252406 982531140 510999512 608662147 181652581 914088472 954653384 993198930 150174959 626970291 923146292 946561898 422205690 637375622 532643697 550077437 414267696 485796151 498818501 898673077 367904299 622560755 404756898 918931981 349058929 430509353 507163437 525386489 986031216 994776855 225034803 938343369 641079557 684181761 125251580 463505410 378573702 782588453 929784561 985221845 225235804 969623207 149453837 563018769 935205234 940404432 644246555 877411864 850732616 886744275 452632029 604843272 742849530 928651496 797320294 960992105 54930684 439143044 777829381 911163794 438725375 947847815 995973665 998565168 117205298 267150420 542475124 757336098 33801055 764453456 279870244 795187276 148760986 354068157 294375544 440940213 676319113 768687199 559796964 638576079 125871592 960470042 345319351 362493601 662591901 731803362 121716586 871955047 155482763 948125641 937433966 978651179 398083319 989477962 336041335 672269148 89297410 582720152 74463861 985279877 717987135 793873543 571345346 812342824 969153752 991116565 265056928 825506358 515644186 769582394 314784196 337518407 986319702 996424568 211667135 958330518 267476535 926450195 36468260 906737156 288781713 845624705 493242082 590486907 138050233 533082070 923050247 988752026 976808189 995184490 810775746 844072515 419741641 956884106 325018429 545230318 370465231 501218196 47754244 798196842 376894488 539984857 1374286 216438091 11909236 68943454 311667489 512930778 198513876 374814955 668270614 681578863 352394791 656533183 815329310 931017309 588949442 990171609 569789114 844875394 926662971 968677653 839482181 883045134 480908690 902354684 992096428 993104476 668754742 771313128 741481021 925633165 685835158 813339530 283834062 495742612 41501029 682359368 968507288 994867702 737733040 949150691 926536676 992591036 787257940 896586205 978971629 995324824 598586464 910842452 131883960 598866892 544751788 600883172 610040010 682999082 155071439 848072171 645190484 889256744 31551262 567707078 528971079 919919920 52797506 790795257 464928603 616511237 732181908 801139606 860799933 867851944 33056574 903264532 672742760 785985570 322676830 678663335 690181055 775613824 173124786 549561181 67565849 648418478 219654482 678421366 682538203 774175778 602050070 609593038 938265813 941811401 665066838 879878423 326397530 832846089 523966738 649122376 525683795 573345080 10317119 609729972 11543089 208612697 900793876 913340253 679326433 855274066 791843150 873706163 561489368 600445261 723723834 753147506 241972763 694131286 269303628 650828482 741625183 806439230 230654494 951282394 164950682 366651119 65585632 770290234 89217850 132920936 312583819 518334591 470464060 643926847 122578394 983987901 45667149 680853045 107397916 781961918 574483768 801341017 139997186 912759137 5750139 169324257 280209911 694040254 850116669 876496134 321959811 887784836 857783174 870629698 201289122 869143391 793110226 796888464 370652065 776731575 217733947 592558822 969036210 994612505 740894092 932194773 86068978 366259063 985223926 986011313 652303866 688106683 958568715 994825798 615858554 958842908 495911010 513491695 590148571 720504004 83630294 371431430 96346126 318795994 764271448 901187143 926172005 927926017 930650023 945309525 471800840 847777225 510377981 601762323 751304324 755155867 326298183 684202200 495968927 948546948 890837558 967743935 292126227 523550359 960817492 986160818 463125314 658057561 33970759 749498776 134897559 475295195 801531466 940335008 649294711 869947092 913930161 995759962 327290810 380812060 843721317 894154966 264879943 625245336 558240699 835032772 768278535 839001155 507945851 770593727 297260956 974834953 707224550 825226155 238703467 428671800 113064360 437458265 115256949 950127421 676932945 742021806 14120613 949987661 524945229 888182536 404961567 768194190 741170358 741297463 372368388 818207475 208002191 808352748 163733422 591184778 442918968 734129292 68256467 797323679 670687676 718068083 916287138 989303863 404969235 641422400 728711161 899860363 875180826 970015134 860760157 948748460 847577290 883129964 835240583 995632598 586255674 745999100 768459649 985879655 865115746 994505075 841826211 969321566 619035852 660755216 438681221 815984062 487890613 795764365 237674569 594358807 292902525 420062105 249530854 951417664 974947025 987026507 548212882 690145810 807488821 861369401 862440875 939459646 940893094 948141459 225286874 320802172 621852229 867106379 176231211 521516282 875362163 915768694 127717185 918899939 375557719 778927933 816159489 956858803 670019912 804132387 885029183 963078264 331961169 845493778 388049445 694141331 768801039 789263413 446499299 809610210 782720332 960661434 670354922 746345262 916779550 944637849 901590227 992372185 264267236 643626870 761180699 803228550 255339704 640803896 576197067 810010616 291934258 970750136 657058447 883606520 281663837 559520884 780483372 939484529 99230665 248376673 817947463 907752642 157203236 389723669 146263280 911807096 83489733 305528143 511926011 761454312 166644979 475467995 665985905 866826572 940076734 996809360 366378699 868809252 914466950 975803262 884758516 906482846 508057363 609698980 226257403 327137675 466916779 969680948 33498504 825895451 454939400 744181432 629455186 963625240 689801177 706233717 161800340 186053654 584882179 657002260 75626302 385943984 793786548 811937857 907154324 964614772 673125692 779605067 860164201 934386245 567915974 800967122 735406427 956346926 478451503 915511188 796530541 879319007 181381369 763949754 459149978 920775075 958757751 960208305 896709267 972240746 90325905 177199956 10957478 608122252 619961101 687266029 261561526 872855008 161822084 168379121 325519569 411245292 896059731 981796536 431455261 469790725 886125490 963097816 480605842 795956924 736387375 754412397 283060202 893427675 220397049 303310842 384559853 681828380 696546871 824050510 684589168 887613353 266624132 376193603 342381928 408158210 772207543 985304772 17667345 371718800 916571262 949459416 838558479 962392490 471548848 529495414 977406561 992131280 778928110 848507845 239110701 460057789 152179284 631983138 303182214 582893311 994281118 995998474 704952622 928162615 39206872 247772725 400578757 422558502 437016954 926179690 913092611 966645227 742295222 998077203 14199506 403262165 389487327 828681013 904046111 912296656 29222162 583243249 218539530 635343615 126435653 586503064 783262544 880712458 966750535 968035462 472621620 542667530 362602343 438878825 757655567 814250773 256724854 931792367 870579469 901017040 467697474 862545987 55497460 152950489 796475987 927786186 231847457 720946877 39372555 209469480 467024098 937174208 850096577 868512303 259991693 905816665 232336684 643694450 773082053 946695949 697555738 796190461 501009222 965871542 896573022 898631186 823544854 976552973 632393914 909085338 880410805 977305085 610886394 649597916 452156938 473606667 583950386 715968997 178363355 246753566 746461227 755538062 92942205 322098679 873581732 933768161 959142308 979865477 341114204 667872356 591062609 918665343 584587024 829215231 829900648 930404709 437157245 505445569 53071261 665832180 367742763 712064747 481416190 794538617 338863153 862420459 265047650 697589569 930281427 993964040 415122125 630988964 622067689 953962442 946894828 985712065 659398168 820673111 818977963 873553041 175757994 247721855 974539845 976887337 906230082 911182441 159451522 812281692 833701054 965422414 515766627 912499963 339116676 664984069 711334871 870649592 807669202 875337547 605358880 806061268 938359959 960012812 759727532 767833185 835172822 959761295 719177561 774308889 170760918 971218181 206209191 982659977 92616427 597285050 354301920 527879683 719140557 884528915 626149421 850013370 712296324 866761026 946391390 950130038 679635544 770015357 919732070 976094661 60328790 433081576 589824525 787592348 147281150 558103626 253575181 535494981 755478330 928935611 459250225 790009375 142135728 357896440 714939605 756795600 223461879 287163768 676966112 998892016 693418182 752149336 725727061 924337359 263016558 892492252 295148410 393576103 530240078 647652337 801090363 882531137 682005316 721701382 913616095 998469504 354292758 778807933 883646327 908137648 56767100 331483478 134516557 471897650 858414371 871131328 668115506 862002881 406105883 952044909 420045856 546441068 174150488 574843909 784420997 956860618 190315533 514317816 298522967 350176854 22693249 487003083 5916586 851002018 122103118 697834159 854493594 921873561 26069436 671033376 140577049 923204700 497096319 558778250 79563401 143237383 959747956 969813160 275206199 777690131 82099473 725658023 160077287 941275968 360692148 450246077 157008995 602315206 919044983 993947212 832421045 837793209 396844629 599165753 712336075 783148760 457525291 982112690 575438787 708112856 72291872 182083620 759433952 809854947 388285012 637351397 343095354 497285009 973547932 983298231 485532484 646625378 376961453 860703218 404537989 678567595 692227568 754651755 586712880 930693747 799420605 890649062 787134611 808326786 801954386 972910215 173327797 514008715 282368975 468804440 464993470 773751239 540560268 645928995 626810341 893643016 120025174 912611425 877140041 947010161 406665719 690223578 399413580 750427148 558333355 942543007 631587118 708209836 804306795 936099184 620947772 628284405 58274671 660369109 719992857 909446995 59544762 416161502 26358180 438050981 847605529 958534727 404944961 597072481 287143054 968971999 51476197 731452808 510644090 559420758 493936059 607070347 691359471 921913709 483105184 540359480 864125935 972742921 6917292 260590891 114829529 322949510 598122779 797212479 821908417 920886952 899827450 905057273 797784860 882294337 815154895 888468606 763341417 785143055 850334882 956447564 505660095 956685618 758931927 962306539 142471793 734259094 762677277 805747181 499340244 602424143 489927676 952148428 789533278 929731986 990828260 997367287 202646984 396050020 969095663 990801904 574622147 913625874 525761112 883452521 726041364 998791519 932365652 942175680 185876686 710584550 922140808 923863570 844964311 853146727 754871954 866493481 439105819 510781435 543200008 901130226 587707747 661120113 476712431 723787589 985747162 991175411 111706973 539324817 148952887 646306427 904308473 943288855 655881725 991510244 131567510 904134222 4588056 942818809 415930209 834159659 195014586 920817181 171067932 290697250 676980584 882702973 959607694 968044367 236171666 493712216 339105088 984549270 298027831 977975249 14618253 595443986 909273606 927732948 354202484 702649179 678453539 871545274 234277484 515830395 364817974 776667926 864063614 951723199 107080229 828580168 345674241 717895880 777548412 777932584 654327946 684707081 507981489 740932844 951752390 973188443 550076016 585467645 372362326 616305963 203349384 660882408 808934118 978203625 493476118 790902254 977420529 997554868 546970685 711801908 331333493 827183782 933277289 962496710 934410960 962910948 304418130 937998730 884426128 963900242 347324581 874286571 289317022 851229616 828185004 845945374 890471398 994470730 481742115 744518567 726910574 856453855 812184157 869072645 975227828 996536510 66520046 312725641 125319599 545314547 410882742 787906792 94674623 605965126 236276343 817090160 595936613 973073137 871854205 886103741 770043396 957300515 97513163 593721579 909445547 975187291 632999649 706936057 862809778 975374333 502861045 531808196 605360230 859804876 814290446 843907932 244605484 314873693 468820920 991271352 822011959 832646894 238890301 765923922 830955476 952757386 274179934 625097389 416390658 729572475 523418096 976148718 160954305 212517914 401617379 703501497 799642259 879831332 10197471 97606829 213672562 414402127 62305500 89542328 374214143 903246453 289473315 690421655 430850802 888736718 214333005 435958192 631629444 958024596 675897306 789395834 39028513 600869436 542366533 690212256 655571825 674670864 753998339 933675038 966321742 984495535 325328492 626967269 481836435 581262050 221700219 880213288 317554232 670353832 974407266 986451780 768881407 963084065 451512018 543981564 757453582 829685423 990211872 996681822 677460204 959011374 74234274 994277520 152247794 578726981 52015076 107765652 543456669 876193012 201146131 393906290 926614667 948842646 123343576 175725990 816615220 896954518 282676384 313846772 760385953 890942141 388496233 587805272 673511984 800095955 797787548 980976191 366776220 478429408 605723180 833313446 560355624 777457912 167068023 228154046 884489089 996229231 918189932 928218878 620896526 756309529 273975584 588880688 198130065 458009328 380756368 498200671 837049432 925306250 251352943 659549178 427723094 704880088 710734967 966123832 662551430 943620435 740547772 876572891 773123589 904244328 978198133 992884037 981107721 992386429 407951695 939677297 941408607 997438591 873980718 991088652 133131110 620549118 633358670 832362421 87623424 552949160 511718980 919638000 162115696 951163889 494590157 753426952 850798849 934444735 918248488 928035750 264848642 483705264 947726255 955347550 741164671 744339389 821314810 902076763 412020749 978023522 36962045 74209926 10911281 726949180 234049198 248871652 591376756 906277022 222229700 620348238 268829865 869161458 502234900 893117843 708591455 767350522 975953060 993382769 638958242 961032375 917554304 947073281 885339769 887203173 64518748 371316526 513648310 903644567 726221598 756927696 84380339 597436439 384850413 814768448 365947689 702086464 677443106 918078903 656986317 669461108 901071658 944075330 567686104 918303970 522458798 781589433 613440464 780027052 169503233 429784891 536516975 694766901 429403284 615822297 396592713 400021188 402880159 530661131 723998273 859088989 316693625 359159317 903131489 988792840 381704701 573583629 184206191 912471963 371476877 446059985 74915874 217843826 577168573 842479702 953875862 973388906 88415130 124991172 828797096 954409718 751601633 895913337 764212477 875417750 168083718 208627937 577177017 672761586 151797359 597575219 163378954 283268243 874584725 968097012 311250289 773312987 383290021 888240264 410612174 642242394 440415110 798767772 366208648 366226582 791331008 895116960 873194258 895874734 499908671 563423883 797068736 963269783 378285185 588703054 662871820 935572907 432681476 497266317 164564609 190379474 36016867 639953007 305577797 359085774 434240327 571600511 359417092 952847069 112204756 561863002 402591780 968475350 567852335 815806767 573330165 806227397 991199434 999029989 54822722 499996482 858133483 985606661 675938746 943455849 869360460 910993226 166616299 691382501 881782143 918420501 635571164 923130206 763278287 880344282 699912504 922822086 820118267 879765880 905750691 965537721 837778107 953579974 745320878 823392346 94634403 367989950 584133678 680496408 87503378 557826401 761557365 844455545 99529423 550769321 178843227 506818399 910762257 958423091 349025751 689441708 392638645 914425130 26923912 802359565 798247444 888064860 232964214 386452773 708731216 760986705 126751118 737943698 27795037 284780678 92667561 488461297 468213402 617076552 878406485 949457179 421648914 679359663 21507088 205652302 602059804 921023789 866308503 928328319 154401603 392075649 959975132 973945821 918061949 942748805 465974772 819977408 410782152 573043226 25625295 973219101 582787139 687885087 793097814 891296319 525142445 838260611 405587959 409925639 47942134 623955187 861993768 968809093 653831204 862455456 834432269 968277884 712842855 919584217 54860719 768341965 628062645 737355116 334543595 763971942 992809313 995511134 661549399 756554901 848717554 875133895 233745261 838414664 967452660 975738106 53297184 967282018 981625226 990280664 765719842 946603721 448800096 694467445 228161673 923833910 209065323 639054578 429274623 562579587 659493925 869814641 864861554 978916410 689942478 718875430 572459703 740435900 457719882 945608733 290763127 383101672 586229088 681362577 558981457 944600583 911462578 973217538 347159496 630577259 145230382 570521203 151871823 273400142 797967457 820964820 627550802 711754444 806288405 923775414 621545458 996094408 892230498 940228820 299293123 453833260 199664784 215661847 675031878 914029758 194862005 961947123 544811957 742229895 439265930 459738181 349503973 365636897 804195617 823061933 568142877 762193572 794975726 832207211 777250292 881839358 789856244 966339402 856347610 903190179 767964433 959348913 961977714 963565851 263330869 827826438 428507817 579593459 34092476 127377574 536458931 838186270 747699643 935767003 689961888 773686010 67245302 778854552 630045263 809044289 184197966 795703790 269038195 341662830 995089974 996351636 527653909 830091960 196898661 615574166 401618798 510609057 510946175 946856164 597459131 602072450 546053097 720487358 856212090 943649431 416132373 572298154 349103298 625455886 778331022 975986814 815873943 914315128 834732684 942822387 620318944 842825387 624632159 772680074 506794151 815131095 850916340 981185105 329945434 876095513 568515649 982326295 93471801 116968749 657752908 759659706 299402816 838572435 870952456 972455698 692121120 861710924 396099136 466810200 338501312 520735642 743243572 998354194 550907476 625787042 874589216 917480320 530551709 929142940 659658301 989950861 542527996 923520094 871066323 940346947 374899075 749972309 62679185 609008341 608275509 826370198 645336999 718029630 612869176 809313784 322213535 500363969 578540019 909322827 683355934 741318732 778382929 857894169 13262767 816486548 35165298 268691073 412915213 970124624 383047741 686581154 377422558 895589691 763779515 923172527 70658793 954469530 764122537 998585165 264974486 824875886 137437445 647789542 513144643 923894259 362648482 532614955 983576099 984081565 203328558 277791930 748153475 749253936 229761940 734768870 211691496 299435249 226004625 306734809 503270058 616398945 116772704 620643522 629936430 716980339 15560711 814317470 470006666 833362683 499104106 569469688 392935457 724715949 290764855 877584039 320567953 832466489 817247815 861982256 413924243 671007697 636755962 672426857 624836411 767615191 213347255 257459467 376017981 478059242 695936217 724002302 786929301 925133628 582548843 644883192 409186451 478460327 67504994 980023859 837464507 940826925 154276403 750538254 408211670 975419594 914217868 956638654 68533979 542803793 627370477 929384408 888467308 950447063 821194620 823846830 326769877 920651176 981889873 992777650 136733059 425043704 738323196 862620246 225470855 711600578 472073380 737028044 638329249 967055823 799068091 979648186 517478036 846637083 94886643 299847129 336550326 713124972 60911957 188055662 998776114 998858778 713492408 799649543 619702090 866157012 650892421 688235307 579491537 583811658 520658063 607480886 411625030 824070264 701885490 991273529 730825480 851362742 752431574 807717535 299759717 332652208 916956779 974905530 422909633 487516441 37464809 186838370 916855362 963823331 757396604 989041723 711569478 928742731 866913656 947959304 94829136 395494716 547615692 841351288 489439825 611836790 822409555 922127739 254789279 448627993 297934000 479402137 670707924 697755451 801727939 855973781 706790113 936219089 60552531 598663436 992353017 994746315 403726617 557297853 618457744 868715015 599509612 779608635 846148412 867448484 808019777 812056045 290954925 650542985 228362484 583934009 511560770 784510658 382355361 942293058 701524465 814820240 838636735 920523093 550861355 674962460 565076235 867714563 779322414 974201590 461155578 969725362 736596034 847428508 758305871 830386318 694832992 872198496 94308884 470071605 909876387 975209477 842383826 915825500 287787128 828418209 2062747 591548259 538911744 636873972 878474801 911436231 193947835 975934357 123981425 616434960 997233214 998185800 38315156 534346144 909029087 936531460 39759718 611030161 711631975 939253201 809033113 844306141 51873014 639258195 315836366 910914913 725189810 912411407 399486991 862640125 623387019 912963932 228225077 561161198 294980461 899486424 178117123 861083700 488312333 522726900 846307865 874364211 77107567 87118384 193735710 620679609 16114304 748363212 580420554 933936910 115039905 255868092 26581877 700365066 858707208 950905014 955318513 985886285 273051080 821658524 347520816 496453038 577370016 891434132 442863330 670799815 308751215 824851972 113391559 801021192 203074718 900065825 724085338 738458862 845738183 988268542 967896279 977861672 31889526 914676579 573636860 883887404 308228551 819944902 500700445 923802130 864228826 932530901 963073873 983086636 285937514 583024334 914770339 952605212 491459128 492158850 215673045 412079806 308475073 998377863 786112687 845406727 805043124 829668594 275291953 403340519 426935592 868484959 746802458 757273211 246203221 836296893 478910060 946988804 41590924 971453373 827395047 878999253 432739415 968668768 675872328 858065438 764655557 962847021 300888425 995839837 695103019 933822099 10173437 856847038 900162335 981650327 868955599 872626610 406114068 806031202 280906796 731885351 490977282 994378842 475812537 717011527 693571717 737580641 101529390 541874059 831897478 992201344 444731742 973334746 92351709 272225847 252383247 833236924 184149027 648578508 382903131 821044004 810503317 983572359 249190864 820606069 615510074 962726543 310954762 424381237 214382021 245069356 928224608 983233028 537749261 549596697 71744830 913570189 304881506 420229772 608388299 796187191 706860229 730212041 191900670 978685114 279017897 656290435 902035853 987445048 315683863 318718854 610439919 913078782 508141185 677135322 674369312 995012021 964055759 988657103 881805246 931217798 42585020 348399522 700900990 721952555 690628952 741894308 348175919 654634562 745828128 949770557 8015207 275340606 21160939 712593214 12368004 764871142 674984990 818864441 614126582 885389578 239991001 779196268 162773391 815809778 230403881 568165889 355222920 437804024 242805489 978164174 586091675 641734174 765246362 966480549 278368615 652220424 861914532 881667088 919167510 964539486 545756852 584670487 875893291 938925143 411965327 757878674 355578071 656557872 449723158 964824802 756631195 804789971 43458152 870622797 397643511 457855815 268513 564923866 294919917 554456633 508295803 938688603 584487469 794814021 836277137 872831396 297081329 978437614 562618597 742554191 177150727 705300211 18282615 767750979 948572095 978745285 314763866 742139719 165990896 575330187 799362013 955385923 69502632 380476202 580003667 981478915 768396375 782823555 565000215 767105435 896324741 908044174 695800095 784928327 458305378 622387589 21297763 584762005 209513587 957767035 68783378 406562994 787375430 884711649 16826252 468064817 473944232 898560910 937460168 959356960 218535033 387143605 274508048 447566014 980705480 989492696 479916748 672820950 518715062 810890198 270942674 443925467 720267517 742566751 25411580 466066995 766333106 970322605 449397950 856329056 237315319 626506842 218780165 342226705 847692151 880204899 112813062 370406335 909517095 914420287 407230238 959197219 377236579 456164581 270195809 301324281 556725346 779798375 52330907 816326249 324315683 537548649 575669400 997058038 186752466 376768492 98207730 439232860 481025738 499447281 393180152 953726393 95632134 771663182 757187600 883508611 343720348 430881016 819210646 880918710 320820053 903852279 529770033 969529641 79243908 884878326 852991219 900986518 318359591 538457564 288035387 638942566 814027802 964071089 398756447 516200132 968495882 987710331 992242244 997708488 624508597 796527412 330511762 549781035 701297945 889404454 983817449 993528176 955019320 990523980 670046762 720403462 378777558 858841887 496558920 659168487 607195140 795786976 694679942 716408084 871862876 882698274 981112977 998315122 84279219 562650744 33900539 451687192 77964167 451152383 874618304 981084834 677046182 696467998 51084115 328208942 737664055 826711917 666032433 802765251 87916044 613179466 42042575 778488948 197485833 820139477 188131038 565935438 590988497 696167418 3301115 456186730 894937902 900672503 272998018 384907868 550205508 885344424 433569797 568851000 201186880 443510925 668285545 909237103 23996161 463001912 237047410 907536151 173825321 577870396 581471391 857072938 149274071 417241116 582671673 996796883 586006705 727515100 52524600 437966755 883272780 975262002 692168475 885615396 718679803 957602309 521964932 617977030 20285547 277386753 20759548 481623716 101472191 627594835 490467595 801221232 199137337 822309733 896671229 937097435 659621330 952150150 547082450 899189617 440906025 485168464 872978227 936916786 754629989 867532009 791662568 904120210 662971327 822327444 980783814 990419074 129175814 844790884 610674655 708842198 735868420 931421246 664262952 712465875 984476659 990945546 816760353 827790999 997017241 999328216 534219262 707400130 565812022 587186036 101554611 883747554 59972419 996724645 778530162 974430290 59468479 837521360 67226206 226853522 856208824 923383455 175376785 731525273 795860672 986343735 625511611 715626715 53098124 508967485 619273429 623008272 958506325 987456192 737868958 876221710 781147935 884812625 602929701 656810449 18098108 289051915 277400827 702373655 310078143 787632451 14468440 707817760 980466191 989313259 614617492 914611668 436116642 787394334 457468778 612883775 922716749 954167192 810259214 937096504 211788051 924665102 453058997 599468035 446118297 451738215 283998906 704044428 746282700 920132571 875737056 917349106 878498300 883159402 857883752 940581502 531025975 549848174 251515363 890218499 315566000 400556710 614060940 710262560 847647438 959040993 141349457 972519894 402161034 431837863 812006192 975058907 125905577 495159916 172284345 699959844 690704071 843023772 101881179 357341825 424719290 922625079 318034273 462281009 688027213 811502264 315172114 456449152 784211864 819106402 248098056 342660251 640992922 851595952 28024102 673528151 912063933 976958573 839135817 933521277 881542321 904142379 262593701 588155326 944545423 964716394 809932956 994824445 248341169 628041394 37541957 559456241 740959338 821884739 558771352 787609364 475246141 559647035 845806105 858607090 112774621 857210500 164117825 402379165 29199673 739836308 230312695 558703198 832329344 912795666 630108039 740471007 422929473 956209288 391787451 733390394 730663418 926291775 158632740 250890677 829776924 878385046 327515336 985581830 969573406 991796244 368386184 740947765 147770581 808953229 833306414 843242687 776685579 801693599 588196390 935007678 798158105 943966387 495801281 582358515 622498799 725058536 46062193 498296187 713388907 960091320 919838245 960495246 154623514 461805695 57697294 337118279 508219239 748105165 789066991 912220579 1648610 952864627 59957750 535846811 458602037 521856845 365992335 697372646 829725748 941523327 976727680 989203517 931589958 997593599 169724131 338119821 474717475 596346177 630914945 632353537 949377022 983652931 787704503 983412762 358768353 803120619 201398984 375906017 366688018 897311064 445050586 549679286 951603305 962737282 148538458 976761065 583420494 616957826 191775030 665850678 109836599 772790721 866664557 884198131 513135675 971683980 654259454 694346030 150052848 541783460 972189501 996293597 562031951 602089194 817740442 879213831 169917386 329142107 730202656 943077546 860125880 877833596 611117738 918581735 685234629 775897833 728680723 786159085 132472909 198262195 109876174 422889207 702800655 704982431 870849690 972211382 769337005 887450823 638042900 708296582 408283605 895443914 510676174 550398768 685189912 966071589 122291433 630355232 301290960 779938820 791477529 858735722 387039195 991393099 676105768 826823489 256915257 678347025 441524357 504306240 715597947 732311510 789903443 828161196 154046855 753445508 675856179 762101568 135652115 620692865 175149263 943786588 369023004 603458890 353292310 842358372 150975308 479570266 667486401 892750107 275691395 906873477 169792907 283843960 952789776 966606980 981779253 995912843 308917645 434725667 418709695 656017898 172314646 990779077 651824771 809653268 491448548 567855490 946799806 986543889 941975577 974685316 635109191 740403625 486378603 528115163 123110711 546426257 496836234 921517559 573387075 986369579 183442964 764106269 479510855 674354917 790075910 945108715 740023990 796190209 247729143 631405786 111363604 915198526 56524828 79036751 874715963 965527308 599739589 871298548 29817356 388170820 851755762 961295692 657041814 894368206 614031318 833312073 465278185 710865922 219616059 906029638 897015200 940208959 839871140 862042674 140858557 409227682 835916608 861471950 234936935 883977475 198346007 998008696 713122929 867227145 769230142 778251563 786955246 882440780 459875571 945233621 650281993 774191402 620906154 841888121 991105726 997292202 7888570 706346341 739966046 930570186 389475983 583786337 749915820 900532060 140713293 248802395 672128461 995596271 871204109 888073421 548036277 608948422 71955150 441568245 960183272 996813626 987274405 991428385 694174533 807547410 688010148 817123610 149824615 853357074 941502178 957248494 12139785 943729446 335037470 831073417 879331790 951014088 586946846 833052894 731935711 985904614 859760590 865495333 351501466 474276551 710634429 896381033 504591913 569248678 316569697 542663599 697282917 943425371 235213531 886123729 900244298 909781742 649495959 735358706 787969704 829443356 866357256 942961180 219589142 635399376 515864067 671980501 540938866 627233378 175670863 756544670 478145942 977769313 549966863 682747601 93626243 395726934 149059584 264170382 205957402 803091750 272456276 790574353 375480821 631810459 236460232 635921389 540502788 626307690 207374626 791742104 926611640 930325858 687589620 981125428 857653581 862239055 286196250 491390281 992663471 996418102 481858772 679771039 439204744 552857624 156504884 164313608 558222891 921788568 860714301 934200107 923656363 990172912 400709043 503366877 743194218 786929209 354420115 374475614 20569329 632656703 266057690 621501432 983239693 986754873 381085120 445567085 860067287 964709624 830176708 850273005 582308273 839686600 68143178 450760568 734596249 920988988 30331196 813928872 719018535 826677805 399087513 704097550 158258693 391873141 45376219 927836526 296321547 394515085 161305035 627180974 325952481 417018166 977810892 990048361 486273834 855261415 409231117 659930661 163820133 931066598 947412114 956804849 500165245 687337754 51990519 394213655 836763026 847291767 627119280 905066563 428024673 576693781 964657670 970858202 815076516 853226717 425576462 517882589 547118140 551365058 896154642 983017203 990762278 997913110 319792934 708603810 769634560 858321963 330293287 741494977 403204177 455348116 398306592 583360972 795306382 933594596 544965836 763533176 185797252 737748014 657992571 880671126 825874761 996165597 813836102 941540543 31492997 284952881 298949874 495088786 504562235 599966415 385413396 577003524 824102905 976465831 507827896 547328866 40092024 496996640 112933758 134802030 359358533 677595796 892753283 996563775 478065669 765713376 862701515 965375261 12097080 695762912 996039806 998325426 835977339 943367309 339834089 958400181 755863520 994521339 719060848 778290008 306644263 966605027 553018854 707393643 595591644 777917834 382624465 618163756 603135277 907224749 85126664 300593008 127954730 948511637 647949171 778774136 902629821 993014847 197129222 715992576 865993592 966031595 284128088 649699906 62863411 107315933 690553417 860734032 115208007 875919183 454163422 597260755 345543928 394923771 829961115 927633987 25992675 333500509 120663291 798786580 432473736 607879007 568528648 781129056 445630980 520676311 14981495 884239595 427514679 481458756 846668724 874410167 405727738 952826543 516193152 936956790 830968675 881927276 792187462 843368243 876662562 935815800 192857759 855459620 674339784 798492124 535370086 653921803 702145496 916745266 668690812 847725145 835404072 884348639 722487022 940186113 896063334 977836136 973253260 985873382 8625253 954267776 16643054 359423401 605584524 618837416 128753347 254323238 745761738 953446092 668917024 993116835 600559573 806501818 531950923 853251484 545033914 878082800 972292934 998219802 89965792 248839220 896629306 977783765 435747846 446253402 539301671 581928300 467348058 911508851 122430988 553393068 25298746 410887442 717659377 776375508 980337600 984689013 307787917 410546747 79866321 859309795 706207232 856978897 514044018 640096109 521067738 676542738 23039371 699539560 207627771 399858621 738575595 952368619 394087309 548296307 778700740 856920232 308955171 969510866 704532160 750148360 519233473 697861176 336606922 740983360 997215081 998582529 36391058 928744894 509845038 717954073 500260637 917394594 338406269 621420820 370659192 909612279 874777887 908424629 708153295 802931419 969284171 970189595 851121707 905403327 340473720 764970663 683482345 844712261 242723396 405123994 395525617 412755779 935330192 964148073 759428017 952606218 892500939 936434482 911984459 932700521 583512552 625812153 618613366 627117079 649129664 989576396 659126592 890783629 294342446 925372500 870098682 888854695 257752305 769899890 179630000 603084816 243161416 444034200 35167642 673523755 167818187 187359876 890745189 909981262 977220047 988242164 848500023 963552900 270318748 968802931 895020935 896146123 656275269 941984974 855742626 949620930 159906722 987562297 435739266 666377729 314426386 361696613 394705780 993155128 845546253 912637814 202360618 209610424 106305447 678513323 352360425 375194699 875922300 895538676 157979195 315922636 204596130 351285309 130977176 729005546 81592264 619692616 221045885 995456372 526477492 670861187 246811123 604860559 756420206 939392472 825843301 924072187 524661317 672956376 871722707 893514591 426894875 431911749 527963133 600386509 518618139 872747351 916001142 922772202 764239879 790573390 18545225 449838412 897631578 927247386 875473168 939290113 498486168 754062768 352124358 719196523 525250311 739496564 447478490 520190249 828571787 974980353 655497521 849008327 44954633 61760676 276484571 767057080 808679612 950542156 24483051 208283091 610629455 675943372 661597841 883424741 538621691 670754383 304636963 943499076 428675729 477601288 817991257 890356179 778738748 984595483 989915507 997878404 17146599 776199378 936540576 986905784 989233003 991952829 157453228 193215441 938609654 989120952 773036967 827058516 746989668 799660079 713334264 823818630 992890426 996108324 749496745 928959375 920873007 922584036 550440124 599599883 851672727 911646511 570427389 676472073 880109796 982904741 510919925 872599010 621577914 655715950 966633966 982635502 913654599 935430413 580717408 916652444 385809099 843626481 471551767 818422542 782956587 865837893 591739408 948520526 150759033 808401027 982844028 988427155 386357154 789874395 803374051 822639347 731673956 956529823 809840699 818995587 191391762 337149774 316856867 657158065 248995457 300521674 454695094 719247309 977781445 996775137 486261916 603278720 640054719 799533983 716047513 718623562 730870162 775345681 177244283 640128951 232514745 918415858 641499698 963809692 101975200 330073355 995987945 998167995 908893761 915525763 60970183 148927529 741953065 774537447 277809110 641226450 30390464 372706472 9708437 263327888 329879433 858776758 386338328 906222284 579074823 879936454 453438186 686661888 17358533 148242275 965948401 977161038 811559983 995098685 549907357 905257637 199621584 493497797 363485927 408836729 655976443 695127533 187634838 216721505 452168851 800580545 323692622 507237676 122250922 858107910 566029104 956193304 883537514 960823607 302320594 848700288 496314875 661117909 633092041 726110138 589474604 650870254 696890509 806447779 155631385 425621231 543256166 943865561 883774372 992163773 978249740 993194558 502867178 930627071 203190497 345427736 439753479 644818102 896846490 991883369 803085626 805432099 553624670 571311139 966154827 982332137 579670602 591179175 366106367 804130643 339499044 467705305 475749609 872538081 308804930 901772400 272798639 935882080 181423564 421258811 545658912 803739394 396153618 697995128 606929541 932796607 616170291 839097346 241095356 269169094 73149498 877279284 627458706 842717886 425555190 888713369 105573620 578207281 542425023 816249235 919376006 993358698 150387989 712519759 233863110 391365855 59313291 245115030 683022610 956399178 264159295 469595082 26977082 394386316 137458734 998525516 877698830 886757676 855970052 987440452 252528213 443573670 435824368 839948562 566246081 924118013 49334078 229183136 401902106 452914088 654224276 793709083 347260416 768334965 495847628 561318977 113041954 539590869 772627712 921619480 141602335 276367166 335183745 912790690 793885288 986748025 34335163 846967000 322895352 619118392 537206102 891464901 586924131 726783204 568089307 695501895 445964317 934938236 377966960 439620494 391718290 407290378 498885742 834387710 418628806 670061541 394714255 996887032 956626084 994082811 375419531 405673709 862546869 955546553 684427456 802373567 766357766 928844207 371241253 960231187 157495561 991814993 174474463 450481247 609493685 630819873 463577897 501409893 46346233 533952259 132602185 253037661 676172922 886625896 960549388 976581524 802093344 874361553 315823667 820686371 187915318 530144593 609035157 729463696 476218842 886338996 73031606 909793637 228429134 732016397 958346196 977520526 711922360 754121461 17370166 861645841 114004391 848928251 379844415 539140544 420109085 429200719 69850186 465287207 317491716 559259766 116268340 550488345 138707213 720563863 592646502 600867655 952239820 972097064 217894371 759469159 71168030 156809245 816695897 960961838 373059360 845756506 459246018 889723267 707192233 816914241 805689904 856852591 824215400 898295431 531588369 563805060 525010547 830417711 639809437 854340274 754556636 800596600 910221265 987517486 912151516 951906640 168908696 734306530 975872039 995360109 27401453 40305080 376642370 472225464 137358497 950505295 74617509 298399261 821292259 823878715 810424316 906417645 157584739 933396005 315927397 733737622 526831178 622275236 441936631 943232681 305614566 503989486 933908995 988047429 124307586 702153547 644324917 843461133 861842470 902701267 847407289 953230485 344455137 565086394 260805508 726610673 853171474 977567880 930829423 943689037 305443945 850361312 727124879 796522618 484773304 906991668 246335548 434569544 30987979 270014310 390079016 446987758 293513507 601320148 997858052 998019153 328781374 950221649 488125251 747387761 77174762 569137980 212821277 323950798 776700264 851412084 686396736 836119630 891940148 909285182 826942976 947317568 594036550 946508885 180264608 898233107 691251398 877469356 299560096 594609002 812990617 896930214 892904176 960017676 92623664 997106936 915231311 969577329 667569865 901209960 959830241 967374724 510981661 888309680 235575480 605107692 90285062 950547590 761955600 923403176 758972821 768298525 225862797 983746152 942495447 993448774 583823266 794670058 618177961 924603142 992679483 992685113 122391136 686079686 125368859 310943996 199858588 722883822 331745536 551033346 443601808 691356620 780728831 881699443 728953347 821283191 800265362 873004241 928291431 980222845 965918607 995998477 551887611 894208390 655068592 803099815 180939859 851053386 99954222 378512708 79711711 264902389 573827951 779522238 702974560 721126811 829903725 915723982 446118548 620353755 754785072 778044732 562687626 586301059 185771796 244933204 734272226 843068879 275783362 885477651 999067506 999262418 899076297 903367670 997748578 998611604 379783167 999339183 501843965 927363714 695435687 968765960 497155776 922223696 185980252 852237980 834421946 942689232 974184067 987777323 496316123 830982883 975745064 985077596 742910796 892310731 49688545 915379084 84308263 908429789 98292957 446050353 897090780 931741356 680560173 840774509 119074395 238463878 137432187 219352187 503193613 543641305 785425654 827276265 304249772 735472692 498612811 878962643 878230123 905015823 857036354 908492809 655510794 926983501 905830178 939737421 696930067 903475878 987052946 995101299 596124009 669257518 706352238 721045470 92955369 157783343 821059554 881342069 527084927 941185695 555507636 983907206 892468948 965232826 956754428 983420394 691344061 716449570 109038339 964724605 883752056 903867118 342068014 978490207 296302039 556692065 66468766 500952903 335257712 666782654 69225624 900907883 791931303 802793139 319156495 534003621 526749123 802119542 564336128 726672527 947029335 998423724 132660679 282108933 443564609 554932779 142112437 798193674 877481448 930909486 222220394 387458025 660391769 808113250 538261320 578888797 540776465 918970981 745016103 773099555 164286142 603588402 696628595 822922654 362792163 453758985 113369287 422484567 53364047 605679991 190036729 671690713 205768291 885504675 259586013 879958782 121890533 859013632 899111919 977382923 252668929 462440032 559499630 653908622 302759937 556341374 860614904 945477397 222963466 678058772 772986706 836896483 601771784 708332044 502666797 843800643 730147858 749589232 657910394 822780426 385417546 738205626 27928361 318613803 331860436 507959334 321513121 801666783 747017624 906441073 188938488 857674612 673036875 999105141 435958060 719767365 32007055 509446516 105462771 550222748 41628302 815208092 267590909 324424737 39649082 555322195 217215606 246173628 527234938 904147710 594131730 836532109 250211972 553429960 236036730 669924305 721470134 920752681 70981914 240858281 870014428 986094784 242531904 696908458 970551760 974956906 316557013 848657642 558650408 998675562 352266422 916922541 284371980 863570545 218721399 488119267 727970433 893639845 715921713 793386233 131244770 766637708 312004573 884793865 415919515 477060816 275891599 340717779 868427635 952716262 940903988 998274472 910916118 995787072 667271248 909672373 392577866 904014440 85077438 293444743 311900816 572044556 827111397 989245527 555459105 984053912 965981101 976033002 875451668 936161746 882098872 979822827 281937367 974068556 630855683 811349276 150214063 954879823 496390188 534236917 151745882 251376896 669120744 956944097 862355395 864888224 962895432 987385061 952668637 991981487 568441541 980502834 429475102 484167379 688521957 857827474 659124361 848769101 671362725 953111035 199802623 779411696 735902635 916845716 363541135 987269478 484172813 985987216 523012331 527168785 854256054 960115993 44963239 65856522 928925410 959498542 528292659 598782671 51001966 479301746 704456617 986980684 531615274 601309380 271524665 366199582 248988816 501464739 177780882 492430189 61244985 924874442 53848030 92861456 504469016 612780535 969145255 987458071 236049387 716503955 259911606 885872075 479464160 842811644 490000693 621186029 123620425 355530180 581482059 820899454 913519479 953309410 446277301 616615911 874634087 981500906 398428311 546341404 974785597 997918774 569411032 804824941 983916729 990924047 656965863 798942277 725646800 845149294 862940557 996630321 875146382 979203879 313202849 398040593 541647574 852601922 935729780 983214368 793337504 800856909 775190828 953916709 656873484 949091048 25248728 667194502 978699664 987626215 283280012 682672773 284236987 827483308 32642115 137830530 90520355 337393187 102537379 119149923 547171396 621456467 927779214 947026423 330149672 386145215 611027572 613432648 563246028 835018802 460763448 959352929 118004648 504127733 143955313 525678293 470498902 923555384 432627123 907893305 928557255 954470877 318559707 741118767 702331543 806734810 931635030 968448031 647099301 945218612 321310331 644965302 843933243 961294395 543255186 724026276 223002633 885098791 347218510 400117333 524250759 784713425 632176897 855327431 994421726 994949611 828994586 928759067 240770754 394521125 72567912 110897572 700934992 703711482 950636672 984240398 809433731 931504704 700320638 815737303 15438306 964596887 547923551 622929873 406401286 515037826 924368222 931338187 142636676 850976606 488279396 990773845 951005581 973883016 900380789 945397549 743621867 942690589 344006777 624767361 469966945 904062855 386688505 448127476 549481316 933515375 9006611 942638398 574439691 716283614 873220344 918592486 515914611 795043491 588166961 764076968 719212785 837071858 887687316 892208324 22171514 476653401 958742743 998950807 89130776 146133662 72447738 679563092 992705183 993888743 377998905 689274111 638224959 922092716 972138120 988214125 240900934 634113760 937242523 944400770 511147496 653537826 821720150 964818612 344643053 940732690 739449932 843556153 126907344 484892718 783621899 799889007 906967672 980140251 450802233 748676517 224063003 919062031 531216816 686958186 692915071 693882571 237877136 895717349 630616018 960749814 418590300 531548332 183444969 382320100 233387368 407564463 29706548 31545845 81987103 559975420 585195198 975045685 410591833 599472416 514816515 823841538 477392271 704418147 905174539 993590768 829589387 963231479 210810166 742611704 231145608 652978598 269625887 903342865 848092639 962953118 935008971 998805591 437223549 455868243 870704656 972147681 567200780 896730751 963286694 964092891 305193863 654936237 362085566 560417511 913282352 957068823 365817031 857260069 623884453 751467724 319156966 378096073 215538661 677220923 336234337 984887247 918643123 950737033 67872344 391295956 176842638 849800394 635288327 911525574 138688006 787079885 87243761 664325230 821187191 841131970 849650679 906930803 382447873 876762173 237004727 868764788 473102934 619417407 205651586 223291858 971889584 991664542 102779555 739756829 865394344 971877753 757216586 928336422 286897401 637178756 923678760 973550364 926881940 931178643 515841536 547010800 281100865 787918250 941210955 977934960 894801613 940219959 117147257 884172496 737774745 828211896 967108171 986049131 767016836 866159864 641835928 702348055 825713594 910708831 38981175 592781621 439786029 811196289 854245130 902807148 343312942 479985013 299919776 870723401 951433638 953526933 825811818 932907655 37561904 511351705 223082176 392202008 348091723 804918852 874133593 974361641 741422910 897380810 927943020 945629545 645349169 885343755 815021431 992003619 56552257 76044808 83980977 511425600 809822201 905282470 960055878 984560612 184672392 398996460 113346637 754536309 23719603 904516007 267385528 577606670 938347045 953131302 374159967 662288355 998491953 999328236 774725336 798134471 404609750 724832283 320285781 990461720 747191749 878894287 700553210 786664034 903678289 903819336 750179490 772338383 53807990 304315402 809320193 847413884 164039072 832331343 627380263 796383983 121921104 215174415 770028151 772020502 320023510 752520589 386010986 791063753 103392242 553836615 213096304 797689957 90518895 490872656 692135651 939973311 768730886 873567046 143982674 213387484 879266574 982823401 92670523 690385497 648235032 946060120 351897245 759944034 81216179 288731475 454755960 917799410 379261571 494046741 805794389 828744385 743424596 860807076 411073212 794853248 542514962 912637330 683471670 847156003 995751644 996586895 63017796 345953471 991508560 996348003 640278547 714751801 679180671 959909736 252250249 588194087 244398140 464226771 541915039 728364006 28131907 582343684 378471592 631255726 326729628 468664916 878675862 952170216 901983276 927428916 32797961 578237538 830639211 938133882 351806600 910621579 224096739 691904156 794513592 825349369 353405883 687951378 177910724 337940850 477699132 934880042 388561693 416041916 991504097 993019543 192818820 489532272 421561724 494407039 840882056 853985619 894417122 945727780 396798689 858486991 948468396 993523900 364617163 696668041 406160996 620576029 412011939 871968629 338241746 598693622 737423128 998251416 526889590 530447715 230434708 670820524 992935421 996808137 808952193 983521356 858048916 960020219 225185218 686256237 175045798 838680876 564969961 708065983 3319033 144756426 535838051 962933500 80377061 260199956 439169956 988467348 400460043 865317118 809919504 944777337 18343729 152056444 951395881 973256688 696333344 743249811 7348425 922263379 319811255 597109330 506906153 508376640 763763330 766302057 283116300 730432224 386477496 679004179 880173953 967750102 705649209 765461277 343695698 730076521 535376848 737098378 398212996 725359560 875267230 929716426 161236608 860037416 613982300 856359136 997796572 998537638 748937467 788862747 312455343 866661094 201096895 277888008 539026005 719931093 287894901 581103581 649608052 720010968 521818702 676001791 366092286 854981650 121621328 733085813 996367201 997641461 433458471 657840018 16723492 733777643 962005988 982212799 419871837 526963346 483700701 816020156 356095263 556333440 41082800 760334509 867550249 978096762 914150638 957005874 575946861 762300849 417798512 680514562 471835156 794291009 666854912 862170479 610433693 806358666 934738594 959279378 147550034 482766328 884034071 952549394 692050642 954755557 378482941 871734275 665295225 705955424 1361036 874285592 807908217 977400766 433280184 675074709 981760750 987773153 529376585 745245379 242724631 973504467 908353657 925369044 337752309 593023446 21629577 665597205 59748336 173279451 529718796 643877742 331016769 785594965 195069913 544476097 914543367 961048229 925721142 926079598 766034435 932517562 40552295 607007465 443698673 820982793 248380093 599817568 399646619 516744065 364576823 711944531 808972055 926967836 534885729 844542964 600991024 790798283 37629276 918945003 397253293 724909450 933728467 993214822 226665166 239678437 155642444 613536881 911147172 969191687 579519512 939735453 283063375 403479143 506211773 554528366 96753569 899533151 737596253 987885062 866667963 964624127 989542201 991882575 925169795 930905541 506847770 537995625 137994451 318560044 143760114 714640847 964319090 977064124 71668321 552001442 932044026 976672355 400336412 449975166 840855336 963008538 543409070 819361624 866607075 913929411 858366891 945368974 362141798 587275078 70887515 268363377 301780882 989739795 667111062 722012732 474846232 562242426 468821990 853866507 860273141 939830214 28348832 964220223 262103000 693381029 233219392 393990865 348188474 945849887 906177461 936983328 898788466 917848236 232105083 842144294 57344284 92655229 136965998 783345344 614356026 979647134 726052580 805351657 188820464 675751260 551416074 697281941 153574190 702639243 843905603 978530816 934621540 969726219 805644489 912043415 597632760 702174879 898991409 998496868 118506083 838586020 670960111 957684229 38230513 450693070 438117859 985800370 583716026 925959369 448647780 508046332 128690967 229036530 201143729 602323614 253734285 724817994 680558569 940312949 622617576 972391443 444081263 573580964 881023678 975047836 958159675 983633102 524639030 920150323 556433536 763094730 533351938 595451157 132975821 765367955 363731304 925282299 328416917 502064522 325856550 979132519 607707426 710915757 975632928 990013866 636435473 804407926 632947064 691245078 366711840 782805483 335564984 803319835 17718723 913072702 90435534 301856464 874402798 934469980 782905496 795416110 969019523 985399676 440386873 843546002 879128264 958957645 314395343 417283560 462672637 601649089 160095751 295227445 353350466 471272216 603235508 704408688 634035126 783377844 952110243 985751802 603824017 920276882 546940855 872940898 808545292 812351342 274171325 429070873 993918183 996118352 569851459 718588738 121544302 767111261 297079082 820955212 637394531 959568798 520427613 933167604 782665613 974914118 410772295 529652271 873196830 952355827 167455494 268953659 180873434 558848500 508874636 694105311 807448762 919306353 216590683 690494612 560415725 580303005 828752300 871608568 518782468 742993494 507427232 910023568 110274236 553353865 959666077 973168747 207223097 952397126 253417422 325078937 538439357 817656341 869603736 898889253 300678398 715504757 570038165 783899195 238735363 983898278 786888294 896760168 831771482 878867240 14777150 335378026 21819208 466168183 535002323 797715322 361298908 914595998 193899888 561047647 840776104 965757217 399530163 885641908 53911655 428781504 720956829 979760489 397007950 941246991 737315950 802702782 391064129 846432579 710063530 856930020 585867111 728848182 791948559 990828793 681440947 987458486 167752526 750070643 423066220 690828908 148403951 849456579 894768699 987233272 903066253 995445688 837171535 878420257 411241936 716915271 188470250 676775976 283471388 824264930 65356991 706404767 236108057 567613938 864532060 941966718 728487507 754792149 157663609 507249263 860062830 935860521 821331388 908732174 277464033 411363486 385715568 773853773 719115106 737714105 212667509 652207888 822238017 930145745 669023683 680819569 983223584 987954746 510239996 970316381 671530334 845921746 863367504 931673397 835342696 955576856 517388060 585405550 138092782 746189174 271248413 419744788 658794947 883346532 944905002 988866863 519787171 577044256 719733439 935168202 386766034 637405337 38751394 53354558 299640082 856722173 936466806 982235561 321911709 564425340 377719546 438041073 127468583 946789006 180536296 967513620 297725119 779908833 440524275 947366727 599280259 695189685 596294103 784332257 291827614 876850561 604972525 684813799 590766251 677608044 242257980 640596842 536168328 556752168 748844423 989636840 608568032 684226293 260376091 981904636 452031461 775333948 527054203 653971303 295132378 325325810 530599492 737686824 502148538 933182405 242860023 658251436 979962061 999335405 739403151 952725641 612378617 884232390 184530787 739391564 231326973 513566525 929867878 932918686 870080908 890148657 992665828 993629499 173055011 879732069 987363442 997291698 668686287 895567583 927001628 987606516 944533927 959682856 864189315 868825974 953953552 970565937 215050369 996101720 674466027 921464442 777426243 829721536 372342981 539693051 986628034 987784890 698544687 888579621 292168490 669431510 387464581 636028182 520366184 837953865 191203425 475253696 487185674 677258593 878583211 900317282 18671272 803120308 401520710 822931812 951892758 952944021 184090167 203506875 77809954 157253330 682537739 940868574 207585705 563581531 969378599 972389499 567327880 607710730 241255253 507486302 791579847 794358439 806100265 944924475 270290178 720094358 103323973 563240380 2572334 69735275 298964038 723810623 773132278 802982209 335587692 346507659 571588836 812516913 391059083 555421553 856162711 917946733 953335139 992003116 397514667 814670384 12657094 441255468 419106660 672832664 260432980 558909332 187390336 360265030 261732861 743546762 237643503 930651253 394868734 973280321 892507721 946569285 804234625 829860701 800755083 936692780 677515685 914693077 459181417 807194176 542775677 818829319 506621404 894093310 674537604 941024920 479421959 896660703 607773116 719260468 47022566 170783704 826765365 902073349 150687228 506893750 30420080 772174174 479673923 591715503 670191031 881585343 211570259 234165861 419707755 477546330 606333642 622602000 445673253 508413801 154962501 178545435 202995941 956431815 337668856 493875493 941259002 947281046 456871143 675286673 366693033 993169787 183943555 898741304 879001145 986246278 186236177 371250738 998559883 998928159 909391298 935940310 395823238 688764941 837761588 845768494 279797169 451351227 168902462 527306812 965360019 976937902 163513718 362544078 14659938 944721108 372121211 600941071 161236253 228752730 979203773 996432681 731079458 748428764 894605330 962367257 307717573 315412996 514067268 796251081 731946964 756355831 932278999 940069735 892682284 979365918 17413970 755646896 39511201 915348695 919796378 983098717 736174560 909474714 306777361 412197749 558759818 982370790 973406334 987798283 415566083 742202098 670171682 772753962 243879775 751718813 845400222 853032928 124933843 601960362 672747393 690715236 478175636 658275241 484560122 852250775 449231992 620756223 604970569 886408150 648290282 898142990 436207342 990405776 246435343 537942465 253605001 727751402 741948337 857291224 878371954 896414732 210329347 809960401 293621932 533106308 61164509 904753340 381237328 393329654 867057579 913996805 148674660 257628446 575743891 844969832 112645704 466939285 534392199 938922778 911150022 949679935 977809192 998780481 585584276 971806560 106081435 918785957 489662288 524228475 292292796 617557329 901816968 906392643 279398674 331726612 47327105 161512264 545464618 730852067 900310678 915848875 234671938 586525403 472930195 777049065 74400824 650478809 185661171 961100926 559273991 984439818 894077643 951640668 767638244 805272240 398226797 406791852 748205141 817348539 232827220 437200043 623792096 664998534 917497462 988152224 45058055 960599586 714733326 955641467 43647339 734931366 643768531 848913885 21007904 408958324 78709910 96317834 630761015 743305991 492003576 630238400 833316896 878402215 104123174 551195256 706835650 784200398 893226941 952008980 686467490 715143844 758332543 972793696 463309819 981482087 145534251 615420711 115985071 259775265 718806918 984237036 343857244 440425138 619845726 755814383 649560622 846300342 471392579 547475300 550318504 621906186 125587052 724856646 872589321 958398400 494864944 600143619 195252878 446104223 84488684 821829353 234871201 565823476 805566132 933920770 759200150 810822277 295340472 566350859 417486265 745097729 242609921 924390354 272604651 959237427 258303233 989246902 329288603 946484960 813609298 903401182 905498291 968649915 251989095 779624197 808949797 834953711 396459687 557763401 496107079 700943397 661433661 818506875 503060895 979792888 175040853 610908101 361582159 704400632 814068574 934074700 933121820 935111451 851537979 895220291 559736038 943818937 454745903 516917065 679411879 890634268 339559280 444914817 40202144 908190546 150089577 930419198 971334243 987862486 204316895 370415740 445960927 581581579 880309237 985179868 144877582 325291959 183752508 273317715 616554831 950015103 294382754 864049515 813428444 933455557 742337642 769846962 647473549 954719081 235845512 402981627 410970060 663182276 800549526 835296513 932677447 961707125 97086107 317954516 172773082 746478066 972220315 994770131 561734139 750281360 282761413 328374081 998823562 999059289 979036931 985259548 204340918 423213585 747076647 994980063 789922654 804890978 696394460 766886020 336080097 504653077 643994924 786057637 274536453 597546091 558826309 665366614 407925062 657658662 900552078 979514489 203800511 479641720 258205037 940937995 769558107 805968922 930351281 981967945 223014361 494905852 449952036 966661737 695637702 881532043 771653908 831718415 498053622 524276236 920416163 939030679 628605158 800778511 251000699 336370688 982692246 984086601 267491117 943694255 748956931 836858726 547710492 985133067 899279985 968390370 841030136 883049662 999255527 999332903 679587947 716760910 26728715 932391176 650025527 926271812 650261706 749751266 114344625 139916104 965706666 968908007 739944476 823359774 389143030 611556869 950103756 974331517 923416524 943126589 359874458 590992320 824131605 963043942 536764546 560564947 432144914 497725353 184756482 238721695 116915847 776506555 797946977 982245299 630265087 913942470 826714059 950358462 758996209 841634109 164413473 799125606 635181957 773893505 392849178 410191589 517148322 949147127 199091836 468241298 478572784 974131141 450401776 749789650 105899732 871675100 667588094 772495457 740044531 985935175 593040355 964276676 420268387 763647013 173195365 388214101 41228274 612169603 984594468 993605778 104614850 853721485 439364264 792319756 978364365 993082923 578784046 982239132 202061401 204186228 192579813 872951353 256063801 807068351 316202782 512360165 402712101 649712552 714776541 823409216 150968563 690325674 153336734 799420292 158293604 337996957 841002770 934898023 595952233 904650349 602539578 869039870 659054308 903578135 409778873 568169223 666629758 879385829 604746612 695720549 432092783 481805382 103767644 284610878 802765068 971650628 716486547 810991861 934673396 987632544 284459637 831717195 539828013 954806998 434896259 514425776 99516477 146694098 707682720 838357401 638940635 678087484 899833068 942546075 510979508 696498379 942574724 989942812 699001472 777279241 486881209 754880365 66643831 401880241 648063191 859767109 60695879 596730890 386765156 397662043 578276339 736862109 241959692 992537613 497194553 732703573 37419767 505359797 512591852 650601125 224373240 264254441 361680749 793530075 502035811 533805643 375287248 530038533 292711913 658278056 855873484 866863905 403953406 936365836 840562273 987689349 499818674 594549251 701453735 888085209 772897453 799167503 588310249 873923033 283667795 868397049 637992633 903101856 941295121 967913230 392403021 748309748 777092605 895084653 733219902 745685777 201508430 550772619 154233997 180862892 4997202 272683954 253939431 418795747 567752277 728690801 336630804 681467352 642926911 707260510 384740481 696474257 700253309 850874378 344055998 947000012 816411276 950951085 592671439 846324732 895713478 966482105 311737555 943981975 262307099 632625028 462930859 933789101 428053907 838083645 605118671 818883490 753290731 809214542 779165239 789243970 771945529 824339167 46203098 173352799 369148198 798423419 457902403 962592780 424039789 429543156 454282925 837415889 634015902 899258568 656909199 690213696 603512804 641325961 937596846 942532907 820887464 939975890 580890507 870913111 492077544 765339588 318844445 680627043 59969056 752850640 9626808 160887517 814807611 836714128 85471611 547923997 18939329 275609795 408335875 568185638 324146864 773412165 452638212 851337396 337350912 961910231 52549989 589129717 467208520 593742839 307061965 950852648 913437063 962881100 931928048 935511153 604500795 803102139 702294571 895967275 750711385 922399547 925727551 994936307 176556802 642599648 542658539 804550736 929537918 960647090 733576087 831181446 337167097 929583556 483559876 903070535 891101717 972576961 435823251 848647305 2489796 873014450 178132565 336787838 26132918 545422840 143036265 794379849 284864248 944429269 161232635 677089318 712762817 894279861 305721574 498248133 970856769 977298830 76873301 168982056 77313282 143976638 781860523 962382384 901021274 947255646 798806269 871327764 876167836 988294795 360846557 385829575 429745321 468632305 577825013 709106959 175994823 203594588 429087049 489855332 874001665 886174532 755839617 927887054 619468697 867924539 958541281 980331250 368609215 583284478 659150777 818650610 783107466 791226346 519428814 577079312 477880805 951561091 977553158 988383829 906430865 936076204 334104472 710924688 376591872 611970924 404307849 969706481 485912372 550589059 871360056 881090517 389378243 818290782 87027981 793055314 27826151 384854813 255277618 366664158 121418328 378339187 730288482 731549749 694272182 960808517 57475072 675108853 93374083 460589268 247975002 274929980 929669883 945243377 26984762 598782869 155831733 617858128 22900850 801117571 543636512 627041434 874103616 908927997 898476025 943244686 70212570 713811386 915378073 996426588 472605468 826907258 60148672 540423247 191620643 907589024 814993318 923432831 428711261 493101232 708464773 772966800 596999436 621520753 955530117 989936344 967417538 967502671 129440931 930758926 132420911 359610774 985747705 988453778 179937758 805791658 207397128 465611322 993418227 995125990 858346842 944007706 181750768 203107378 444147795 682291308 261993236 292715564 31845093 459869006 817813023 882575329 765649781 775306303 846755876 938163924 519078308 737001063 329958484 694451455 493121695 905277666 752307529 961569965 11870323 901507892 14110589 901721141 616365626 652212987 727281235 817080031 530748996 696427362 247516777 915546482 806693764 907021370 317297855 456424059 111401218 994155379 160805648 470406449 983982678 985293556 711000401 715396417 461726356 975164434 717739680 918047149 198517159 785064442 467621600 809917309 101778005 849719471 819382175 922932251 425398061 708553501 763926991 889077499 292265790 483064983 240253464 548948223 45599980 512486011 890260986 962418553 577145310 957143874 374893381 634060706 882351215 892998346 621698086 873266767 297314263 447648323 324313210 648648011 707935072 811371742 549347726 982330689 958152187 994178715 520309027 856393295 749998037 869945461 36988977 652185968 707463040 896469661 702470418 857320862 657756074 781824281 320629842 929215931 23296452 524327749 421722746 506138303 82882083 928184525 614331090 981658129 501247539 859659506 977365010 993353431 731859246 957197835 697955619 870164151 510988277 627697720 448608787 805057941 598887782 691955133 29054799 226884513 471034819 999211657 827479836 944896527 961480307 984667346 386620389 902641253 712358156 835373399 7167286 353352455 932439496 981065462 336533504 508767747 242424326 835012113 195650032 625254070 607077317 682233932 997182938 999226621 401254899 408818271 862522230 991652120 662866405 910379722 356056281 667394861 9020202 93830036 545986803 624964900 832999714 925131643 902831784 977749660 946838895 975546299 472855295 613186001 152927577 434624387 884661617 980252024 709215140 851620216 870477609 909000175 487260062 851085894 640542565 641392550 142756417 933459183 110369640 161966886 792773753 915546234 775642434 835255033 852174353 970231051 289513609 324972827 925377476 994133743 178660373 455747046 470238576 682398253 128750845 797649438 181864027 581693461 140528459 246512962 798762864 893601106 406948134 649675832 121628719 666949676 770486253 790539269 27016457 871165561 560530858 701472702 532652637 680704446 308246083 645904365 857483799 932458051 240206654 630966821 963127177 995915439 837805715 953808098 28603282 595819494 588077336 731248109 535201122 537062241 740628373 770111539 127467842 220000282 682197851 858437026 250025691 369197791 723610767 774228149 261499540 348759730 757569816 899713928 711615657 797908910 264934642 809696795 200418207 263911235 419659287 514272755 382137173 754099587 733118267 784312929 402611809 423151010 480069384 653440999 895995744 905272173 82706268 607527856 4249015 246819650 394537547 458263079 44302676 525725256 572300038 727613635 569360163 575150876 267655536 413210816 233075268 574909410 821628139 946667295 295760190 757219451 192828253 323398708 586767301 605453879 53226336 654199666 157993227 797250891 730778298 842167075 278764119 706530445 601089210 845254867 624803966 733524069 568652015 569175807 455098736 705987495 301056561 706817832 269416499 331172769 257455613 859353127 378338429 648378559 828453950 906000609 394099072 491737055 89260298 737380277 629553422 901170640 947596288 970761345 447543612 470857410 931392446 992640362 543250572 592637460 23148898 48145537 774257031 976376987 438453550 785073417 662550821 823912868 548900087 899259922 315495183 945704846 763354693 914166558 1828267 603810384 353292297 389631993 228667598 346738960 925497200 957960308 515216179 792322340 618692048 751607860 614268746 665652310 232693138 669608206 18553151 164307568 922783968 978308809 245672723 358551186 85017721 239978346 742404295 792042239 397071817 679005209 688649108 770322135 443312300 615752861 101190128 269861978 652629341 799327613 140528866 824254154 930966266 984342398 986137641 992169128 707210676 770406453 941419665 984243950 651416161 683432402 567231488 600771213 213871720 446908151 648327269 811718811 724350283 778511617 17763028 293959599 608665455 808401811 950543990 960991407 374527476 953592552 65891112 91503134 620869343 957175657 698927368 705592999 138531267 217258313 114222472 833270463 625927788 640657332 900367502 953101847 318729514 381419984 479611503 606575606 710808638 751864613 859854378 885865292 996953694 997772920 809774259 825477670 17818939 44188211 596042483 969789586 350026167 555264794 315883764 639531280 872241299 911953628 738034561 932594137 652321464 793376847 270615132 949646616 704929319 706622723 501563972 794786902 499193361 547349562 612249705 707760207 193774599 482174560 232751621 343463273 755491003 823778800 825967821 941186138 849977860 867760822 53720330 649927102 979155630 981527924 173379619 855674011 595470303 929093936 911501935 917317932 37896013 780061535 323748150 869000872 500103708 696095119 253942477 309626247 623956644 694768446 928380442 980877520 558618109 762164977 680292277 771805202 556865182 993399500 350068714 979836008 460054519 827875446 184457835 710239420 677492085 786562517 577231084 589801609 484082665 491419910 330345290 956501134 118437415 533146027 493244196 865293161 808172298 809550069 171462752 506306753 431200452 527497123 363835572 979791924 952529544 978318897 485936030 559181027 583410699 709225133 104872431 175771541 189248922 686721623 293851738 342671793 837449105 865243645 780465010 940508928 957331343 975764871 40947126 747236708 403456205 987718412 276882399 795719001 438304982 688740049 107734774 472251594 497366891 687127987 647128909 810533566 949731856 979923798 67290746 963426164 26391687 895410251 708715917 988197334 700662029 823142448 656531178 767258943 986826731 990781473 980254439 997388013 919028725 974622963 275792079 311864792 165247559 797953788 931207024 972817009 866091626 921448254 873543368 897671297 517885827 903462812 645949027 932315200 617716287 975805579 745825802 950327976 803955957 894728116 111675353 897992125 214544008 915327700 817938453 966614305 443386129 580306664 15817579 551729450 960773486 978856181 525764335 553581733 922649490 965816006 800111351 833755331 979324369 991405883 347687671 868137716 472433372 521475804 799315301 844524504 691327927 699980680 815033273 968464481 782795419 805701067 798672392 878549199 559604450 989395205 142420648 918845844 291145699 861317346 529876045 768996770 159198933 430875123 299565814 343731400 952985650 971887034 970428476 998839601 57105485 887745663 691785192 733705870 948404366 975989012 112673556 221433796 180025645 399972964 703532522 704343453 418313387 866436252 421048986 863146319 239683609 759600794 15357534 89400682 421880434 618334342 557409894 819950528 6896074 558120607 442973937 811707490 298644303 379197020 327658339 674383675 760470197 985100225 338753397 957475615 127189614 938827251 156215732 295468903 697899842 777736628 615030877 867107540 888129123 974002260 354440633 857402599 94392289 298847737 211214988 918808475 659357481 890436438 887657423 896727827 940739002 971141914 626680551 738738336 432937447 719691666 889308176 941885534 286258350 961170870 28665063 953514410 569484968 805331657 345432175 901314273 795289968 812366159 567339294 955334344 124143522 170015101 914894461 950399048 391320350 520171571 206147396 656039608 222642854 988257338 374055848 882273408 355676013 402602778 857651401 896780459 719949896 823724222 896398811 941534839 209923375 312049421 137294787 504968342 15216759 395803927 731418754 945609079 102705573 459874798 826923769 984763992 354180524 743155505 775429125 898752366 923021979 932581704 27174231 830629046 250089178 572891399 918615209 946676015 931474394 984117475 264510907 932039859 361704202 856930039 303498920 984810501 80881783 727483290 312854293 345343743 193451285 790418428 615126248 848009353 701257025 818428042 677514227 787921637 860957527 954144632 464059989 596847305 885325410 926396575 373145683 899398538 379965662 636448790 403489413 561720684 432552774 752127180 143725436 399436544 209531179 557510283 493859116 880059269 816727396 976340179 913573851 916721550 522921102 712570211 128347699 377622519 689634804 796413024 68737269 131031923 280589191 794546895 581973296 868052062 447468677 904866872 990707083 990850053 678003134 705694437 812911995 932434012 406494417 764524410 251144205 688120408 158491163 570387637 891169634 957891017 128964646 199803375 22835791 157355263 993182902 998871218 730336504 912074476 496014052 942479750 324617144 960108756 313382146 485337866 190155105 666062091 666381364 684523888 949990507 989572565 725314329 891987996 495047142 611371082 986153587 991292203 340806200 799296359 562149375 955123290 144567968 165349548 214033549 661222799 184643238 902970479 839181573 876094646 389153229 488814606 406196254 755698266 330256066 799510030 709842629 711903147 186682848 293664904 922862387 952357196 861969230 911521651 90707722 565941551 288214528 959754284 413615143 831269056 663985070 690344210 446540258 482702406 77153473 680792144 44123580 995750198 914562551 958166440 142652661 487238494 970067774 986096477 414983355 727377640 519391182 871582617 720359639 843548761 590136572 970032711 179124803 973003797 772948475 843028111 367790770 865872239 701851753 737064643 58951873 179797578 503521083 609237478 829666052 884848982 437998014 478471081 197036954 730371309 431660932 574361248 112859594 413729828 951403099 960826692 273534942 518092843 678006678 719742281 261041425 662643609 867409987 987239480 429287069 678283468 887412954 997574153 656895222 676354970 592130729 684248424 333453811 357421760 267759324 404352549 180907459 799355124 443885056 575795558 538465764 936852382 689782557 798410845 308778621 361612895 704950904 723839400 356281120 878840853 487463 1681380 613948563 949349400 27957667 82063330 643850138 712307618 183292959 979641117 7117876 923420487 695451266 965317806 465399358 872348639 506633349 858365477 282873516 775820958 424662121 814186375 497267547 902507256 128928093 459285568 262328197 609679211 95593041 975740650 115997811 195924288 278507069 924154762 388789863 589129571 64987633 243518859 495039585 502806484 866410911 970788208 200331294 764789981 108973306 671591431 14418703 267788989 91013714 448314892 83105495 748506251 456667181 779096927 294530031 406370575 287041358 891251703 241384556 242209232 60683767 872675735 558106398 782417326 453280528 813732680 957232575 984796795 813853795 930178732 880761212 952204346 882780239 986391256 998581303 998737045 521966310 774384194 875529448 886328876 134683078 568728762 788497247 807788505 18883148 103875525 388011112 857742917 433887861 969573212 863090558 995266905 697659843 852790020 737396361 872955991 771848435 817590286 186902745 966833837 438944863 595065447 339073186 914117085 780486388 833497650 383207062 911996875 398127076 518506787 729169247 734195641 814244151 952867678 286763822 645905877 399938790 714025511 637246276 944993830 64038046 856614720 340240421 889274244 950676828 966194226 463127984 962156697 641347815 948564100 116913939 697795265 672118462 791740237 790250299 950572171 981123079 982038619 408305783 730876702 719254872 920061425 751907647 811055687 137670537 854126913 567758130 624854652 113559219 894954446 967661120 988780962 673722993 750060306 595422547 812635765 346831816 563823079 123636721 349445890 757716235 816123823 823720878 891135825 138152619 376735368 436029612 674722351 54444854 757281972 777786871 831331545 668097924 866467610 753298061 884975768 654515244 968512765 318278153 899852555 683467947 996270419 645782346 876331218 890567881 940444684 766129514 819197341 328894650 863610505 438264692 998807879 797214421 818917138 597961566 963166617 323458779 426027016 762925873 854235095 45390893 295942497 295461853 922237616 76987999 836665501 717433946 918247807 755831403 809829644 717049849 827525665 81893389 429267958 731548828 811533753 762567360 802238228 693270287 909272149 949505602 966708458 780218454 800696031 532667110 799647193 421663268 911075004 360771648 718146581 548711364 694495314 5862127 677604707 843247811 880320437 763138186 872701999 807007476 932577293 745242925 870394871 29570029 368776288 388915713 482780513 486778517 993719272 947230380 999284773 181277383 934924810 537323356 902004543 399126450 715119473 330337147 393614111 914048078 935653589 34698364 227793496 912879453 920973149 50228618 221226919 610838463 929794702 418253545 965499475 873832523 891717771 577952613 938567767 123268659 249958274 193204914 964973275 918994506 961354010 307275425 880159845 15050114 137616209 977497839 983155419 134475118 630298580 972179073 973053100 791619660 801812058 166334072 664214818 347072602 738650093 363190999 495179029 106571003 129724375 910046829 968332277 882736348 945242442 563856517 730351431 969186322 995719874 88300853 208640510 514187417 920021842 595507389 912048492 47891783 668770399 805305747 984154213 840974575 960861672 877888869 977458207 891014783 981886047 824314497 887235886 939019666 989572221 26876170 222186959 296507151 480362631 69357014 139459029 523020499 766158786 976750221 977532491 597479424 639661298 582024648 613415732 923750402 993508062 38154231 823464136 911573478 972504223 558934085 905896574 443391317 761682714 640118707 742219144 398138408 739141095 866378292 868466035 820376138 944512048 123201202 322991776 655111169 694703253 477389849 729593463 82555530 694327886 418950024 847948645 142255908 410778841 87841950 305153781 108246176 136008761 988305309 998012772 637935097 719549324 127146226 180381378 373380377 531236750 702618693 827484838 563900617 780023709 917408148 993503736 540485205 602098663 107702430 967166509 528625796 717839983 586549854 740632385 127914264 915968561 535805782 904286767 392310668 653601763 855641147 986516228 710217641 726113481 917851362 951817519 116081151 404803975 100609580 585745018 718086884 768950617 325027186 765737541 832394034 984480557 42421384 682331055 467607598 873396500 605663241 676876418 867231252 919828750 170755209 379302757 79820114 188366365 123700005 736896034 847996347 901009520 787684323 916689228 320306782 942422696 634376031 884727666 119066503 340841869 171224210 546735338 405205668 822942598 351217812 665296888 831091315 866995784 943481348 995266034 530439530 592210174 752416305 855823945 136363938 321601297 898076017 951215205 76702734 898309411 148595638 940433361 886635676 979342796 788840701 905452906 581615673 755006976 5734794 100850896 616241728 709530662 686881384 750067962 200591073 425247053 284481077 784781963 279765924 495244238 706644195 926360865 89136405 258852309 826062916 932031185 794266030 901362814 838251605 899487027 366109602 392715720 692982875 974292345 755470296 885548935 28653147 666493209 983488054 998892015 801728009 920180543 391635271 447430150 928378771 984933295 291160918 439089310 453292920 893521014 828517026 919413373 767101606 779180262 925947686 971834821 584545515 834797202 956946284 993132485 691732312 977603277 807766430 900880833 765345708 809550585 657200438 833584484 696645969 970283782 444795046 949238178 706090778 923420052 268920642 808677386 724561830 869754107 477420052 805666866 409618748 849201587 969718253 980806629 475352987 546197149 167546094 312259656 926280387 934098527 604057990 835868242 265843787 718682069 467702848 525182659 11668419 221809653 261409291 734714046 612456694 867570010 171541115 410503324 189701253 298324424 128661682 854999372 286480306 352870212 798922394 881839571 776517628 981562877 794617075 954080552 425483599 785369143 344917784 889080937 661599653 679625175 937155968 972557565 461435760 548249903 133522848 777122146 751035969 817835075 263763829 860428782 350736323 891718932 165945769 746151979 282579461 422588001 481033916 797976821 732593078 742933304 940541446 948712514 402625615 460977759 935027610 988919154 380001927 580820033 52306233 930632909 772171849 825166413 877933332 973093840 681225491 850712739 311374253 590314006 704700142 935240702 315220127 993757384 281102243 876330480 982770224 989448755 190773067 449815228 469882195 968518103 518086460 903340188 498015653 694418287 639059350 834213995 662444546 967659875 321041432 888068122 521954158 620822959 513557915 629135419 719881829 988503658 341570206 953736727 962022515 986082861 639381126 676311326 130817281 187745035 143945148 718075779 290269515 949786315 183601453 691449198 450216203 687967445 164410885 440875657 244964313 598391876 894967371 910815363 196644030 962369053 289567698 413912045 454119590 624603251 224199653 786676773 726807385 940321735 892393406 963575294 477805959 681928052 975347838 987706041 357289507 731570706 413382230 595987574 507129750 638929164 655337114 921085094 192281847 872987687 48536442 219210613 629185512 769951256 154869619 598680494 292336171 963485142 405932278 729812274 799810589 905791490 225515104 435263684 35234760 776744675 328460897 649347913 55650719 729609110 961121594 993131798 253072391 672894235 937887858 958836147 462187253 587368376 987206113 993774247 42472306 889612560 270523482 904941005 267373443 872850340 840137228 857411602 291036064 346944982 814397549 874147560 462990409 771758520 949261988 960580625 623646678 721811185 736062731 895763743 958004966 960745434 656473032 905557430 986537982 988891163 883016081 944123538 586185308 887075530 817262751 948240225 126558813 346909620 925877288 993141025 948297175 958148853 105499894 606254942 386856361 489308655 124522287 604592280 718854378 853163801 208124274 693347699 26082979 467466307 160261493 243613233 754655705 896821397 714099182 891235289 899168279 908865137 842042797 916317329 33396353 216851860 729028412 864132267 458045404 531698163 275668425 361475206 7450393 902346965 299678591 988207420 662199673 772823323 613841219 661948863 280050051 552232648 973654592 992020969 214109629 286774175 979403857 987654986 6738282 182235950 325779241 880181947 921322743 950475109 383426226 821575764 854417587 884133193 430769236 667540793 364551496 372995688 787786440 889284454 506864435 827814264 70812696 782213546 839480820 933477543 572490912 868669050 856252361 985838829 48762633 199192880 709783447 912542426 625901512 813465836 533143066 977966816 527844978 843956538 851941486 991602172 175982464 257107532 777919567 910392767 315546296 396155099 983756349 995261814 351229132 432749396 529292479 998057108 435061486 978440937 150566215 507670472 463135379 567953803 48308518 208969094 334864548 381642361 123705906 466154217 612909741 703412472 173412767 710831114 795263370 972082414 612289352 968789789 919206637 959061022 148233459 318801537 325369953 815477913 132549374 631066339 109470635 707125257 513609851 763883501 83672867 399820628 592538088 765550807 397929941 982627223 303179293 349560979 707211785 979009583 40882301 57265999 262848563 530226436 414493055 424108543 108341510 357373986 650746515 795356361 847978191 971302039 552733370 658276245 575915037 983258200 25617489 603959880 547971053 692443795 841811983 871077480 975128067 984466379 463476027 829228922 330715607 845717983 428839568 752695138 311356440 738443988 823252179 971934252 378073141 832700265 634510541 816693638 22590827 150129573 889106059 997057106 626458340 705338362 657715022 870231384 582031013 798469961 379256138 815847081 748828248 991932246 918336824 990610006 401645001 620138157 842647192 934052207 347257220 418255625 733406816 943421240 488402353 833647762 196841037 571376999 130045431 961719413 466691905 877106542 596432894 681444781 353088839 995972226 707548281 905760685 384279448 883738970 788868585 860261742 474372874 653642364 442254435 853450474 160591977 979804154 676212108 793485870 500166885 542639461 33139572 266092115 972395437 976866627 51053318 727170107 365515649 724715970 842031862 979419718 912188318 975331136 63239503 850712844 62339372 871148477 779770308 909885194 987163311 988192982 145369943 566231078 227396402 310855167 498151543 804060733 987829126 997690573 150684086 311475491 576100386 713871884 542938026 974680907 114592538 487522899 173897179 473759296 660452802 882783291 306657211 472895196 195700713 474536087 212306378 253522822 949986985 969693731 781965372 956490205 135229786 490681324 440820382 916722353 909579968 974944481 42395902 207217996 793919248 912827507 963907638 980794520 349671978 478256828 806817356 899226360 356999191 630587653 557223205 957318374 475566786 879538429 737324006 839383046 322021036 967793662 75901800 498231594 986452209 991777142 607191096 722838362 752914827 831581682 662402356 855086628 416029680 832225720 672034081 850961084 727699729 751328723 244340248 832501852 111833023 173133242 292310792 546047239 751142622 840844881 514147426 933736909 400022438 523929673 586607575 976302072 237083215 381768220 269964894 725271855 882784257 975911143 903115530 920806211 207512680 427314975 595401743 909588549 83000564 966131893 726352186 762563814 600792475 729191885 474325721 690182414 13038523 383055906 363584410 612642041 70209106 672239971 632956599 975682409 90780398 527438920 857745216 888731198 330174873 691450379 428516163 792849417 19229935 353264424 881799564 976528427 629316216 643161742 822063039 825531495 27485971 38908963 284554250 673233922 373958107 732583783 390215155 985022075 286847080 517493732 969824502 972412777 891294203 992256467 175706907 918479382 405881089 584172031 523256233 624213143 649227665 987307833 383640410 922378587 165282545 512649135 2779733 200365696 956527212 964400793 308728395 485711920 614181516 641390360 739012456 882081675 211100512 882939273 106155497 907689085 884370567 918983516 369762137 713981114 980557094 988995558 795011035 812864279 496761148 818327321 335112691 858605129 803079291 865044341 980989016 994267540 164261012 556297876 796113510 971990751 539473002 768505874 491371162 919843823 421896427 573768175 768622578 838602301 351177299 954879959 876913460 885061903 627817458 847515689 871780712 873415306 429858271 899107888 123946769 924980417 547648627 648015151 378526563 635700224 939983416 989487597 718322746 789125155 78677151 269442865 367762449 976162366 616355028 884809315 911711426 943145665 372682023 968195098 347515806 518740489 648532400 821623178 899757198 949489276 408037520 925119843 658019795 790889407 314830734 847785532 916053194 924351547 408601543 508189812 316435157 444767005 456520896 514938457 731506480 815498588 502190189 565870870 342731205 876008989 882294447 942397930 135576882 799299232 724378546 974792050 845625907 909903085 854448266 926242844 792832948 865339337 161227561 417640281 5502472 778524565 401800173 452930971 293030410 949965925 488372684 514497091 468865547 835432013 413641433 901921031 762066120 990287631 85411241 601880802 577782203 857922137 119168144 649950033 54288408 614786459 552644092 912942725 144142398 832973837 658708236 805527334 154986163 751520035 96878333 640949638 181455046 302060550 827621982 844807294 120473417 726011944 381819826 707925511 875373091 980669539 670136758 902801699 736294644 832428529 470518981 898581094 85145071 614843078 120723362 918876482 175167140 614865575 395076391 735078985 228834937 488238464 500584261 618466297 18776294 506509763 71466363 789039900 862294724 913865545 739743710 853188218 796074327 824968077 164614331 751784492 230604864 836847662 325005243 537468217 26538626 503868123 369306871 565680626 173151116 709660524 863336395 873918803 615533183 945671395 205280232 573804074 305538383 464163922 614485667 931689913 3928223 348993930 804706873 911932931 963442201 990303163 528055896 744465074 644780821 664682827 525764896 707501205 464252134 683780740 959052130 974959164 317849784 797968672 179755597 926577679 35186577 161820116 583101794 908053921 353399677 635047965 235400020 657533868 949299817 995198858 149795893 861908944 462312473 819745864 255478132 893435424 726612793 811204288 931989930 991525268 368495862 430791380 821038159 826685207 937530443 985403685 188840743 808458304 661652010 988798607 958673940 989968485 434879612 518728314 963418380 984142792 615326797 849360095 896213211 988820560 628428507 809393254 108747398 190496294 612084355 974859357 937605794 948504127 111354833 689025771 726972250 734815975 177262974 524643873 573118655 892570876 969730780 971763008 650170065 917680235 206049986 476156473 232907176 705418375 270546421 693012222 569939424 748178935 181733372 523687248 49557911 894318384 660222155 998487314 444908684 627887921 696775761 995124165 722642758 814539676 430140735 532028199 914140845 952345717 175767067 722256115 135665979 271080614 377846471 856509372 277819692 778031773 349912341 649936198 434230708 470239044 942641542 957454529 930698473 973046631 808036772 867875951 744299692 799372027 98246817 974810752 254846034 289630517 947912259 982640708 324180705 466842751 421698173 576316490 308304283 734589847 641833322 709434205 780004575 829544803 661705941 840469423 935823160 938111457 716884787 756411463 190259805 195044143 330406269 679737052 34264800 451526542 767524335 818444196 742206673 865240728 643676184 662793980 793776183 959497772 369327137 939130271 975786077 994563792 481307118 649032235 872308652 885180351 85340176 168872717 423998819 848871797 921968412 962494319 481824189 919143009 983769486 990032484 85460669 265094452 493257043 895687368 412751466 510440901 613845903 906511154 722235453 797391552 720541403 852297664 283786245 404822727 234854388 493547035 639552741 919972810 295993170 825220223 160140481 585811457 259933876 867370388 575116140 894985652 692256959 768457966 666697569 865069017 722546249 882546209 163890531 807548270 867556029 989752874 807353121 998545255 652408152 796698438 311252654 481210850 867454121 950245863 670931728 953925592 993735994 995316168 249042755 605731655 420370734 841440098 610030987 874737659 72030578 643648909 106300134 265045799 387978801 822053763 105322451 192162549 131874906 169356656 476148521 996179913 417579427 483438448 601339474 974365197 209625061 882713972 552849654 655881011 974462141 999311176 839144431 905633725 693974591 923379746 347807551 992910139 89661907 271032249 493322702 899273099 622920520 738857528 736674006 876609613 857844326 994715940 155496680 516253145 599941387 691071659 945988572 999295890 209763344 613168762 120450915 706459306 81494068 88173764 393308471 726742201 526836079 847424489 839879403 861507825 952182335 967218624 414055276 921011491 873149310 948804140 400751096 468929966 425592198 517990515 320176829 870624403 875054274 975042783 712143275 979777158 198471572 344758869 886162966 936232193 170098236 899978228 839377994 847174831 943340309 965869848 218085011 280781147 956580589 989306885 848642303 934840168 627160812 771227427 205983422 225835979 487450850 684541833 848164987 937589430 338290633 685945774 257786891 315757984 10959150 402324686 991516121 998385613 160011217 201522813 836579529 862831710 981077226 985584148 189739801 863153366 819995449 991770153 541726484 738542786 176786451 761663895 94181677 623003271 910729247 929571102 344652412 946379892 838070317 895959490 570111561 703538316 87114623 314645350 875150031 910310854 213754166 436091722 987532332 998524219 409893752 853462716 727896887 870123903 640211070 645987892 404945119 418957528 653192926 924087740 612651329 762259320 822223595 958431741 916435098 988140154 24926006 374480802 310266940 460972822 376046881 707968784 720291503 949201543 336607069 690288946 139452464 249597290 977174716 994020193 668380265 781870597 223140930 646724772 442714998 825925168 79698790 120268960 748670789 863018149 122020411 560278298 661846857 759419610 713532648 715221661 318034993 560677277 241863389 909247070 217125682 416107924 242397970 770817030 940104414 985504392 262090657 990763348 469615772 729557265 516632608 830445097 58761007 130705472 222234186 326712179 938085271 992560710 940760516 967645234 478715829 498801015 620390831 902625031 496669731 523212138 33826627 73631650 920468190 946906942 782249420 846811004 728444142 948895554 826069245 973430798 357230801 609151012 79774858 880739438 327413386 551331803 153477053 722722361 457382942 683653032 875525753 923361493 899377000 905197642 247061943 353307460 589511176 820694979 249616309 598789586 39342977 253192637 760837035 848888014 342115645 979362682 219966765 896971702 600808300 636064465 30230333 435781130 507085405 641891130 511957897 546125378 215703648 526029438 809410154 969558011 654445486 940729508 487223833 756241161 766214645 784505344 148539416 223079278 277564625 859838585 677101618 822237996 638255322 895219596 64180938 863651659 980394304 986342046 61928321 979272806 137114777 446591351 888741100 971435927 76033476 794844164 757705695 941609706 376702595 814698625 68283426 806904557 639415075 896528274 766913561 918688769 867033987 939176271 767837466 996324559 758262292 786748613 547902899 766181951 557917684 708040412 343097853 427013574 381750312 889451636 530888302 997648101 860784217 871262190 965835518 987036861 423377025 853366325 434323882 695076546 858742107 916648524 168634113 828978418 237108484 775816038 606877037 979066304 530199489 801753538 491351901 961985458 40403951 268830352 41700502 160407842 682757176 849626997 392023038 823993814 639553566 743520244 624940780 670142385 399409000 944162851 828244427 975061363 76687512 865497287 17171408 818838151 928266448 939232760 391563132 930649682 949998080 988573501 173037757 347330147 951419220 965509292 74170507 517522348 136027527 721654072 903104655 960610773 244870299 839859588 730136635 986870660 334593775 520019654 631191685 820234455 728486890 860291992 299260842 669294344 66790349 420956950 442660691 625795294 862716723 863008656 247977381 659297388 345882014 605236822 384322940 994238425 314921881 384452747 185074342 836685151 450065821 847301569 346223329 696757153 273749940 535775860 573319872 764194780 411318464 534705947 885928604 923920185 862160765 983451706 383893043 914326015 479665769 518920273 593365046 600769387 264444104 733413287 532504581 752564112 786546777 959916653 567153551 865880129 211729503 385467168 678895089 920403824 604367944 871474894 50402478 610791477 457837269 935306222 583105784 706363552 296212935 557223153 813802393 829070527 351210826 867652891 55964236 743948955 453489240 579949086 181347271 465243150 544903992 821130447 395516813 517133585 605643398 998525686 967144089 969990217 781369748 821065619 290195197 323843130 287488917 876774057 622638188 644028359 844016451 932466292 526879922 878907481 58198428 487717285 202606029 604646965 441629882 974611697 613398407 952428435 97863124 839055948 489089877 777375263 960076984 968204895 76774257 404341023 512935889 900913488 311598237 476311210 618964724 703092557 184090981 858790589 237779237 728235127 208472083 691135217 481681661 759540712 869027783 930448623 662783922 769338170 124914757 903177793 547844838 839574084 160322964 522347747 737210019 981965542 868066984 876766624 934516288 986677878 164980300 620342310 808312188 912484156 206628794 925976214 81362128 803266895 476877628 566088999 933580647 976070907 650043018 847057646 148023142 237405546 932453935 960783579 41299572 408730484 517240535 669213701 159289063 564562260 977032150 998931630 486693162 567965788 230122841 644272485 92934442 662600594 667355811 966685498 253276427 256506556 943045674 987930394 916773159 945797157 533707312 812400391 777548707 786537827 250945115 836821477 844291151 897904595 121606016 356006142 719020262 960331570 870829443 928700664 885644712 894773377 761913284 806911773 74428150 376214906 584363852 813839634 994733617 997313834 258461098 822096738 507868299 672432159 642581197 803533473 139818734 777424352 68134906 748968149 741054159 775240138 168523548 168950581 675310015 924229781 751523164 852383443 866575563 929651432 9098672 731428118 657522748 664635837 505899715 872239596 621264330 868595654 156327616 326767689 289304709 311348435 171731447 622503945 737525887 782336622 915638798 976173128 843974469 951143755 776277686 926596963 503991488 676878934 979877311 988132698 793123487 984355643 100492666 635568266 295070674 841498554 333540637 683616684 360542280 422446053 473799144 751256263 949171167 998957112 376206044 890359779 16130738 474465999 790392720 858526332 711134944 713777033 643941209 717908532 325457301 752288043 22017327 566770127 509478423 658862812 678475384 991911120 99468143 589809969 596732352 782829896 391921527 403251667 873818776 901790116 339931123 640808218 388278878 471477647 211408237 807463950 838630339 875864850 123641201 596485808 891727367 935121117 158836184 478272991 823402559 911803844 845746752 958745985 931251834 939006009 309128914 459392217 331598047 767664377 644523933 811218439 726518304 879834123 481226094 733103988 367260199 915070606 754647719 949489922 211859886 334860546 757087418 818434314 887876846 943798734 883921589 960622717 492346137 633075952 173713688 810042176 147190486 658171871 98536362 434515010 748851281 915866890 250545291 622830962 684255944 730121034 148778683 338827218 564836322 876240900 349972221 641740421 719028490 894698164 577173990 951448827 551503102 552906798 121990970 879174793 33519175 126299589 982567918 998864911 102839912 806068942 515666273 846955653 40308718 418585032 536264329 747462669 600745263 643222997 645394546 811170618 124729479 396628555 318966290 497342084 472980385 616958175 810118595 939191035 13611886 207508806 276926952 612492396 330095692 933670648 522776873 754480259 2469062 55971433 975959902 984410064 667492835 918562378 52560018 216337882 145911748 881098810 633866126 862306784 859517438 859930940 79587620 695909431 147649224 150996806 48114173 791071723 748355506 768461419 933450536 993765807 792206480 912918522 744265842 869731590 383726178 620483797 247171237 432236613 256476209 712825135 747408938 937731573 137408539 935958854 758676958 819173056 671301818 777516125 231686790 920578101 468790066 961840836 303885624 513187809 216920527 864596389 885702077 906757095 269609207 911961907 823021789 982940389 854116718 949999475 54295289 633145353 234590374 712881703 582884393 764887299 301321976 665443356 622203212 871539798 810292700 973297236 718147852 727863741 650791844 821019689 496976790 944916369 646798217 974544463 556102921 987239411 920467982 970359655 654335104 976951470 300358658 669936692 488837284 869077158 117052855 872107966 454732488 850410456 684766821 951474148 830554215 971698441 602159667 632178778 67377084 722696705 132241964 425148830 508190349 956903414 559349071 765504801 687870765 951151035 861244132 979969658 659897124 964118137 720848986 740545341 236836757 812935153 185247920 405459696 884316787 975702448 762527927 876595354 135237337 605562325 860375054 880916293 752494834 803159015 838778016 926307062 329048910 828429667 193520473 349686152 870794822 939465967 20043343 778819656 530805640 596018367 952169642 959421575 760390345 766913645 862213412 968152548 400275824 520256126 572267800 987131777 478534193 776774029 7575263 804306112 140860132 307306587 254460262 393196128 357463211 631170675 446474636 873896783 464279267 509511500 641692189 775020705 549051441 777361720 81498064 398350140 365462350 438798314 920652195 982943673 470245942 813356209 280369958 633517480 715134282 844183989 720032390 838246569 589966207 776658152 31457810 314133247 777183684 800739143 132241949 700622391 674723443 904019523 325871719 588136466 664725754 738049932 455255129 813997914 894924661 970167315 674258792 692343097 839785195 934412758 171460414 929598156 465982188 854641963 654918215 867361094 691555923 780640058 664292694 842150626 22122238 892065998 79723910 851518959 892201367 972904550 615553265 841575765 161069734 626043718 120882655 437039344 301457686 367452341 645094836 996593478 572914830 603102157 731387290 772653404 240168220 564233007 237967677 742625735 732681986 748488978 25170040 883325278 880884617 925650832 727084303 807102780 780405636 940727313 343699489 377935790 77339653 718079785 73969315 913652568 41645003 262092092 358737562 460243677 395589410 807300928 977215256 997415883 636159208 802946858 534667416 957772008 238232854 304100356 118215746 850928098 281802088 338937650 467212553 865954748 603495828 947540244 512632485 660589939 567134739 727396167 586733315 727607454 866807357 915844932 76599970 715877502 780653828 977303245 180130961 710508794 961074663 973209926 842882498 857664268 659087943 831359112 595583942 814114793 510415936 894299557 420517765 440055565 511776614 919039071 315722910 966645813 489317096 943584762 766939896 903535289 237263608 447323229 918203619 964535294 813082528 921719646 353543389 601646893 512609605 799593831 459227243 830289736 794595876 802571819 92191219 371757355 424358369 509055315 604779395 883332219 471382494 891728990 862701678 931059442 317714250 413225030 70601621 463489701 666743676 733214980 189671047 786020295 648656436 827837013 311374233 824537742 269165351 387518491 720761365 985048666 754862313 911548061 348338009 497443806 554201707 957361895 914765277 942228655 267189444 561080239 430236594 478089627 222271951 797743147 770710628 793216121 559602453 709017732 552861675 556214244 354431126 684875743 325441467 422462588 966856273 974186232 581593449 912436897 774218945 880941501 135157744 950936269 154165154 561212201 698392189 751391611 397963542 857706576 795132677 862506750 872162886 928754659 6618753 916682781 363970993 455233398 467996521 910302503 249019531 670090390 319621748 422065060 384993769 406710738 565588956 727520063 168573961 834010891 463759714 658336226 684365141 711225172 122216502 154147149 767858955 904820229 525078113 910105295 483070590 885965332 698780000 708674238 323425203 324324851 724443671 868004530 171308529 509826537 62532974 92344199 974901699 987360502 229872233 822379156 36468580 692726195 693268432 989022884 608133860 749483538 263042373 275129982 109502359 838268103 995488780 997922181 391334824 650912646 993531633 997156442 948895841 952499498 382540892 993640976 569354307 869667462 809187905 897720607 566597846 795832586 886689722 934229332 58575228 319577634 437990827 976082297 239714681 651839619 292835952 753051403 630998674 856691130 178292510 188332236 101203114 760474869 897926429 991742332 232901753 411404501 614375238 980029978 719492769 920013647 943357152 960145581 765864387 860134198 747121644 936739888 288699872 552919343 223030387 251734658 766528581 871390416 959885334 966496835 725351001 832866714 344455565 357923947 742139533 925183116 850371078 968222617 115132505 708795803 205170814 893517569 183565986 320875518 691650369 904512308 804967429 924091700 491417553 720793571 399091865 914726459 227841862 892454556 475242799 720335625 212581314 876638041 334205005 836633260 879004519 899997805 65498097 956300818 506705014 780776631 235682206 347514443 174522889 232265150 698011268 911321943 452293651 549887825 926802587 978760973 475484275 766783963 290752355 897786372 819758340 840027494 574662048 602554559 806362052 880847466 858149473 910908069 310809951 818803304 748062491 927798392 697454997 948090878 970604752 976973231 28583877 808629402 814026283 926707234 177496442 646274126 325866415 661834696 345278298 382084377 922021153 999053649 988025432 989070302 750882424 914672642 112966423 851916018 662990734 741209173 861099720 984583659 70437193 865375247 375495565 431082486 381706499 531802520 882053263 957432735 775341838 791766217 592022710 874777592 272711540 713648875 807576551 810842782 97274788 849502280 553201106 885337791 334646762 719757373 347691350 889028622 764582189 994496558 607564069 803390183 371728125 712694570 647411982 655227871 981122704 983474676 828153985 844523582 517687441 537590325 63021495 94570926 587741687 898872771 872666544 933625465 571253426 781126312 118350238 948238273 474457102 801718601 852854712 953107333 678015986 684218880 598251515 979096335 472713293 685202453 241613650 669495359 727555748 894514177 697523225 982586127 215478360 505711475 983275288 997109795 226341505 828230416 594648456 892858969 601503122 685997279 906851533 981099039 736431647 964958829 780958811 971108239 492177982 932275452 702515613 820403161 355512436 943312930 152146729 545656482 587390433 709256491 863363032 945781000 296065 948659076 27810119 381297891 254904066 655544282 355366571 636816034 568222183 658509314 982122252 984198485 967193919 984994703 592084878 750766100 631288526 679293257 604292069 888236358 307278928 479247732 345423787 759926297 804394710 995666181 147906377 520371819 538620608 969832249 266175486 643212407 257890217 715513403 904794402 998949004 641489718 900773271 558374271 748921741 571845270 752858698 427690069 492546408 56784011 892578958 379633556 423750852 569307476 877068571 990584711 997594673 489123725 821952306 963882851 970282301 616596933 893758686 82004541 996658709 842994230 925987013 473295860 806041107 317702957 985422783 728836974 951533305 910302323 955536966 859689119 979635976 344308392 906299477 125157531 489908677 86013518 421437825 296032247 715176193 692819323 918536468 642473701 719817704 417653737 516891677 851053228 926697745 768261577 866151996 112953896 393231186 26706391 198176788 975490969 993961615 481953954 864729800 738889298 877031214 904187387 964814138 59905582 567867149 406071947 415099814 300406260 902292137 64540285 235719913 205841845 327097561 311979802 562672589 390850758 480396341 871325799 998995773 472957747 652584430 740256995 748614756 23806057 389181964 512948889 773573422 999316817 999340918 719700956 954329852 279299459 708619787 708448184 773183861 657501313 831416526 560058954 681562677 390109053 874037540 655157327 685536973 760607766 932083924 750811303 782388596 409205532 873859281 125842411 623833782 173523098 452024160 275604790 816615045 200230059 858336000 700950706 919746707 586753378 591137271 397497996 864752276 373682833 812699901 251737699 872874050 353708760 923140161 687602703 837008060 538315476 933418664 321370140 409521832 763113580 914887187 12887578 453426638 765765193 819575305 441653699 470612506 282117540 450494871 598501008 707562163 574285632 955963766 13765403 319201881 12020864 731022820 159594850 891445524 959091738 986382787 150507285 652340295 463631892 723802401 981723359 986059462 336627832 524472769 172686979 519706328 864740295 869068004 690050983 865647695 315944740 647768022 66523830 923812398 451450851 477636500 550368333 784081790 694358230 750856590 501323399 620361697 279109488 551670445 505709643 668840206 765398499 996653222 54599858 248001076 969646486 995080206 210189687 693650214 420702620 596660206 391461938 919116267 424577425 706920777 692702399 960380936 297893407 391735984 363249227 643787209 220782670 683237526 957090359 990003067 117657971 381650074 557008041 715858100 928844188 979705815 266486196 662608722 563571007 611943347 703328040 771058507 960089114 991390390 874923010 940268282 74278995 294385183 200345035 296105417 931691831 955864883 733002819 881934460 995747163 997412444 394823541 850522624 826694970 980013646 175737561 627776190 842698967 948534851 826374168 979149251 216072811 216880818 650648366 866334505 187294941 710715620 714898824 864752314 324196839 877795978 786355819 964730494 93682008 654215773 652855710 960308922 218200676 668982715 62317565 901555598 381154304 446548801 167931063 307034112 622854444 660313293 100314660 220669027 387871029 424384421 821927614 904307730 404897860 652800571 232077952 688513417 916720042 934589487 624775834 877351411 440251001 784390528 269047069 599354464 522447273 985383345 706371261 919025936 329023064 874417511 917357504 995638264 60912819 446711892 73816858 658990820 292341038 332476660 365677828 619182799 630950367 675594268 232310671 442075566 921366734 932529379 54247635 879752553 304789011 822861383 675586784 941717068 524758543 926037505 148938717 398293812 869563287 910280108 269892761 392287042 886085965 929704052 578171852 690945965 745469736 751955495 172625653 622599600 490052970 896914444 842344405 845324305 984112195 986186129 206936665 915033688 951909358 988619806 316016460 834822488 754953781 906250510 737475070 997660036 781855731 939107982 847523155 884301722 175793138 396488815 976337046 990982287 600778681 679796108 447718782 883967420 410962041 800054385 682438844 967115139 752309426 753844612 74431867 963966943 164152833 555886561 655838285 737599901 748402120 932828452 525951048 751224721 945289542 981641344 883037095 991806952 909008727 918962989 193147440 424910116 344613543 962045435 970978619 999138261 675161473 955546788 564710134 622884595 301990263 710951793 153282170 372565988 680222613 692757207 862254353 943370109 543003832 749952514 957817426 962523634 511357531 591644177 550311464 799074837 847335958 922266324 417881651 893013213 372879865 823005031 878988550 998860214 55435571 119783085 825633132 917096708 153968874 440716416 770751778 987278866 252348183 300915775 714750512 994620518 268584977 570761408 779157052 805021542 676640766 829648632 417811514 917455634 245850814 723628995 704321395 837767518 517298567 703671543 531933407 899783865 200619950 522719035 243949005 606469627 16284007 979360351 768756478 896895667 148407195 392991157 95697993 818996945 896715839 976325344 637850628 934817989 438581122 892082239 902073914 912851306 126126153 516046625 848753245 930406775 864305333 953656631 939168316 986108747 596899770 777896759 245645551 503526345 763907871 767058157 700698410 829568209 86398326 324626065 605535349 703334295 951723587 995631907 213039248 387981636 617216571 822078397 107616665 999052034 45605713 251993037 84250396 968360716 402412423 532841383 196106287 332876660 811446072 901816421 156209321 582768308 600271495 719714374 377016379 382435762 707870727 839705175 906206997 913457979 396116794 896925039 935568536 991385050 68738402 186855448 500331290 660763628 639779898 929318406 495974969 870021669 968112651 986103045 79041731 510044351 994123296 999107708 534819202 724059281 898913986 908473585 625126861 680262640 474007889 912907449 272373312 612738144 118978513 458087895 856423601 944132478 428945184 779612757 43809883 332724392 638560774 909047264 577306937 976935493 277745795 469600986 454524819 952731399 547412415 857305877 887250608 924752503 219021969 399310098 488672376 823624691 229938664 495804287 446823597 702594077 691888366 929020318 428670435 608428714 352376839 417482906 710850070 788873965 682972341 979037613 223372646 739200156 526273481 937166419 513832112 672388014 701656027 816401408 584824014 757420481 264622664 460264228 376252807 966664641 552657087 873323864 59655525 320874462 761471825 855482841 62555875 578962909 132103905 449309789 825188794 922548690 924266904 980856586 877387135 919983222 203841475 448550212 709059157 717183338 719509698 792314589 206224904 217047411 140964261 341942780 485326081 926733488 405577528 927980244 230760404 517158423 669948894 900506636 567941809 694042764 766774127 785068225 891397797 955875401 168529954 277982601 326327191 583321606 44969975 531508883 249394740 997950227 175676049 991577093 272807767 577954940 67348622 219256547 629760241 866827438 847245588 928431551 937850216 951532507 883219410 929697916 227414876 537990742 455739239 898498051 745109947 961126662 161966449 191710253 592808536 982909168 496844418 997145650 415043507 417404972 84047784 851191300 737835486 934504558 35355759 437949027 197380453 463036579 107744254 712373732 657299480 768144933 252380382 544355200 185133443 240970818 271575922 818059622 453114 657640034 185017088 755502729 554048380 935359609 646017894 778460480 850731398 898920683 41857978 773140927 614318312 878477626 641485393 747260587 501833967 643912302 971800600 977519308 229097778 626884283 945223152 985626649 583573091 944212292 450888787 455223234 716776261 866133199 611564829 778428294 242425556 698622271 99889384 182814793 517402882 756525843 673647820 853729549 783484126 790019018 97964139 561365082 660626093 721150704 486759509 578019921 220651976 997170705 191108048 420640948 456085994 636619242 642400089 917630192 825579524 985181797 301984621 891504491 831198590 850386113 960227558 979674639 157436688 674058245 912937559 963964114 144534595 899276028 877660254 951701842 611315471 619912703 220381951 586327902 535654949 731889576 398196577 831126698 669957607 853340510 306888920 408220388 77361163 542417072 359426323 854744281 867447900 985249740 303474368 621821153 331610076 509593198 12521692 192005934 645625871 775910764 313736147 651356038 956162378 962941517 485699522 865168764 525790842 926066725 223719164 440707713 493559201 692217640 19813713 915346926 668173739 901975509 469075744 936978548 958815121 999141779 691700717 890958698 387309944 942907227 42719281 108822838 907727952 955634897 713077932 800643412 591632228 752952617 33522608 203149032 681289793 980904307 859665988 933047763 891440676 966821428 321444520 820033172 133563351 854047805 467329493 850891536 921590456 997477700 53610026 701415259 486393868 965782228 106189075 523317312 493325740 927917894 847625955 879302105 784022541 830657459 756504060 850317612 509759985 542593901 790515353 935742877 570950258 780213814 308941299 775552856 32472255 470174853 122332187 790839170 274729262 806163303 592628992 975822228 12056579 951818161 39410624 925004491 698546121 715041757 333683386 811533514 984076882 984816866 301618171 840604615 616765474 905604854 190030442 455509964 63464901 872092413 278073294 282551474 418400886 430364342 94905192 557293361 788471 686608258 254380126 882341582 974780466 993027754 146547985 751348639 131823602 577445374 247039691 487067442 635458704 775694589 93124334 169110019 819503679 976123855 107744939 422616228 845430900 857517919 439251952 509892153 625749483 706028882 616327885 942469001 558458875 875607046 987334464 995158918 453342256 500779059 768515357 805478740 895014605 950594217 626810065 657559999 931215186 936284761 186729440 792668193 810383691 910744366 56977580 503750862 511332131 996718049 257430480 672501330 572985942 931849512 674050762 703006236 699814272 873047993 363630973 962684364 606020285 645527736 129245522 293078999 296953427 420716712 581259563 693720396 283979945 706710696 949820669 975333371 894003688 923687686 972241894 981218795 141624474 977643629 108977521 798127254 189268191 863789430 389742388 598029279 585800288 827689945 474028543 628003402 617958980 975474014 193394628 492380628 891705021 907433294 552541882 817965836 238632280 515186336 735785102 886450084 142315653 402678854 891574076 913669745 673879688 967205080 124170345 382746299 93424828 864889722 610742168 931576026 934334227 936615907 667002590 819287633 24022778 872600215 340581418 619533852 496256313 722955889 102596050 289537752 379448621 963611026 218968587 427447051 780271847 861506093 917130640 947076725 987986182 988681306 660258945 882533367 262266211 553011936 694484061 984940733 564848029 617542952 911522958 942453215 119334370 192737455 987541182 989956850 762972922 987204844 960441336 998565876 855258438 960067021 912914088 945769833 524486613 819031287 386425014 638611384 132220711 163533999 154853493 194539933 392333668 693168098 254827775 902952362 363805829 571566293 742494231 973624118 63759752 346564116 832157767 891017261 756619511 777980545 902601774 963065164 196702897 730883068 614328529 895335861 736287303 863861237 235119580 687422989 286761545 365464254 356502154 555292415 65479923 600305468 354831519 689766224 201736618 745581999 151461844 378575511 111744632 508585896 199275231 387460509 427511894 826109257 343693862 752064497 353607343 380055237 464769994 738689062 205510479 660262333 580786647 755056603 580914154 681434644 11647911 707212228 630947662 964740338 545395606 716593328 440436354 587022349 720648131 919419546 208645287 749521439 483489461 886689240 563319014 653933699 379727394 449823323 435255726 533121654 431417667 457804375 479263898 955041780 876605446 962953733 79184262 426448351 850448217 946063473 288705412 746857584 543168071 726668672 38202345 661030346 248413820 672983019 341699981 451302212 856265926 944206081 507265395 550860578 924849770 979965661 861145535 986496962 565777567 567577178 812801295 924107820 609751435 831163495 484647064 811338353 766656204 887796681 18917299 544328107 703346255 796132546 740394660 906894590 231673621 281101623 725465536 830134760 634237682 694185456 549135944 774328867 540852418 983840433 697517196 943901149 578253515 846131612 357058327 574150698 520279838 734716452 475100052 664496081 494117889 809272928 444367455 445797808 379385904 551225686 771927 297970944 495967479 502486398 2373697 557263760 878387672 916286663 638257439 775343708 319183947 449681982 104245100 521653088 741092014 984520944 159226790 302908727 33022951 450753305 650961632 698178119 234442502 515546087 956594216 980336190 584961273 673039598 740077709 886233652 533911471 615222534 558053179 979982334 538604210 754316149 719456634 786006739 706574546 917863633 596532452 657504545 662194981 769660486 352175501 848137265 996670612 997925341 92020905 903995135 24494660 436920749 798140347 846228627 576169415 747594554 598213167 965797720 285666476 453820901 945335421 997221533 297972272 973426330 805827165 838263878 352467585 594908996 949345492 972418854 825094671 960442699 497468702 622854661 376312607 680929309 765970269 795378348 432823253 509316054 146129542 959384494 137548625 975358069 964396846 973237574 500614866 613609262 840642482 937226774 512289258 649772338 451201197 958030320 584375840 856632748 45345083 912596279 460257111 479318718 805046727 898021749 103807885 954162992 685257492 740889165 390414218 869866423 764050578 853548115 879343582 895080843 96721700 622839421 692358556 720431625 713031813 764855986 838166109 896900699 991790384 992861797 855040235 921440206 395041305 829577701 293201411 648879176 232073553 346727603 678493432 894402134 534425599 772118033 628565988 853205421 963641122 980929672 133519977 260342888 547134399 976811929 39983797 691356218 301909680 864246945 835728342 934580562 967593522 985886589 987681755 995297717 964012146 964664343 867450330 964656477 300417887 745635342 535321531 612719455 293602961 614044924 136778406 336722447 824970064 950777010 420551223 521347772 692507704 881402598 802925999 945632667 628907367 900812215 497865001 981451458 994604008 997118677 699750584 913987262 328381331 838659678 124809196 378653574 787929716 919815002 733536152 791269196 440807206 677507626 402344485 695233923 132267841 312531375 750387767 877609488 128255676 389600016 332962497 472458439 162240178 922967061 581968166 887283161 954587065 974477087 92108424 306059129 910431554 928346548 700136307 974443702 678656969 712963913 750293533 887897692 448961073 890519509 258567106 392663918 56341937 248615529 54648764 105337612 69797675 78100572 722384567 810070493 895619774 955427851 420052768 463934540 714879043 825090863 448924267 912944788 166672821 577385913 589558017 662645775 358166386 750798421 910578328 962127086 749103250 964475412 573044150 887252447 666768332 866349302 365213572 827503317 916650312 955084458 708093047 748178849 700530756 774962771 760231016 981014153 38016011 832904125 973467941 988507992 642270609 888026616 402270011 825798923 397055059 989773216 830553956 888266805 433348409 450556601 423894087 504493853 449367184 826738586 637123438 681621414 524671654 591992670 147665909 747752041 690893875 854498050 737727522 779655322 299038141 455335989 674053178 739608514 480494172 546865481 237662132 453087251 258019207 623911177 286131794 474492709 440028593 652471293 339185364 786042179 970705196 983961870 69275968 74428231 980328213 993759646 912487419 939112113 23901808 454717906 628150697 686768206 490515366 683533844 581902325 586074332 359570153 846689301 132260974 325887645 696990523 762194867 362394626 874133356 337027156 660229618 728603477 794767006 626384817 915063897 421791025 966234629 650734908 709473934 254751868 950895833 417881495 690047654 546654383 767638664 829687869 993918051 801762711 964408706 784074409 964882338 959663022 961763707 642474622 766118617 351325812 992448105 525026343 616371009 607270990 764537216 856562657 890975941 67460864 683522809 142914407 809915622 334955881 749153855 828251605 870197910 996368036 998498250 748828993 903448468 649454217 724070772 182250860 626368169 932817576 984267154 334624104 659172439 185934883 702254489 337337021 753036210 410919745 726825397 737582999 757488215 255677675 279464472 952840349 962432538 222484208 395460866 855652454 885801390 167733728 826076628 300748500 785259810 246261998 444895944 968001040 999231344 105312833 699070461 182675203 717886101 349630164 672560262 685257587 752737191 561142379 826547094 351220568 705416303 276505072 455778371 656477908 898120490 613765902 898204841 795908710 852460803 136469996 929825382 935475897 972903376 843041960 903892187 95559408 697682590 542493839 923866610 772408202 979618999 619316051 863416010 767312527 958881103 868896500 950561966 146892991 698433377 153500691 302879397 975603701 995233234 823644862 923462753 83502409 823976575 231250755 626301462 407125745 672355817 644109551 891741129 90916133 447911356 938885067 942273316 263541984 495356543 234414213 664776808 473318800 709710122 971720852 988132277 818751669 846589168 442369962 911589938 745253118 763631313 919891934 920415334 654745722 863784568 915773551 927791275 332824777 785953524 976001272 992682510 98109813 574052625 522733513 841922101 546632577 624911501 917634949 985856507 91164965 437211689 264415128 541773468 270800197 803070863 686664346 782122554 685783110 736027786 860765019 867893815 172015199 535465051 531121452 754145980 513919008 605276125 446396044 617396380 18393006 524029559 139984178 591455422 321001974 442683641 271797102 617370127 580531068 840491399 780505470 927733283 874637762 924698726 367249277 648920821 529485765 664049764 756592147 804489255 233676909 350963699 496381840 718557240 366621619 537576393 250780455 515788468 441120805 785891951 375204136 713181984 682561305 861754629 432597223 641643689 298977444 387717718 41479104 628292102 750150523 928533025 921639946 981257874 22744153 290476505 325139382 614360895 989545994 996092891 260739377 597508133 690903035 711944242 88080718 467177892 791879410 938763883 954242865 995309134 503741669 632021061 51744651 335961647 313731853 344919559 897080620 955863645 947282254 968432528 152392548 595105276 970673643 996742042 221139557 339802375 738433023 876868321 501011264 623419905 927693511 950432531 472160976 839657396 499089528 946374598 958167650 982967111 27279884 141308674 298676075 482515263 731383622 903201113 861403671 866719827 908099318 951491589 108996141 726421678 944016857 958459214 51143747 881859267 128319739 917021185 183526315 948843185 409139607 815804730 990089073 990159942 513460531 854989005 475121289 980867968 339046292 493136729 86815791 790179969 597326594 914356281 82702750 91831655 4879148 652185404 37663332 477914498 439971019 440136496 234193778 498446023 929203543 938140447 195185679 703639296 605624252 765186125 856454552 989203554 894489941 990424796 661939955 814080704 750606676 859942779 15564196 118694903 765782169 827939278 833338740 846222799 729883028 942394610 240657415 338880799 93446596 834798049 801214061 834611113 250214015 822653813 590959620 807376732 550561363 852899395 337585030 467316918 308140693 835902035 557280352 759027318 70688993 977915657 356354060 386444276 570218254 712359746 592540987 596741465 185423565 332754151 861736825 870901221 543392399 956680589 628051388 631789270 567270010 941381954 765262173 916504787 572268893 956808188 292238119 420051648 74680129 104734632 714149077 744949645 245974627 360284122 926233985 960879676 993837092 994066095 987961221 996840893 831038499 919151754 156470633 452744537 391427885 661607406 579913035 709425549 551604076 733596985 712722067 903861194 430443730 678526028 828469832 985791779 192228539 902839933 521804920 757641695 988166509 996341720 49656502 401186669 373412853 969899292 874798844 982664108 504137880 974631321 941113134 974509321 395114026 720539751 388012530 449409527 39461254 584094398 941868595 998922530 632699498 818467039 738161320 893884261 797800799 847380537 11402101 678204955 515360613 531796172 335303668 560848246 149660108 361430679 262226492 834086874 10950399 93377456 525646583 716570307 45189333 896574987 834501574 898371137 332825831 707794787 644249490 674882467 738942542 909647388 940160091 987261568 932580596 964779233 984711741 991219201 650044809 769956351 446825381 808773967 266027490 553558949 920304273 985308651 633668869 970697212 162184353 819338367 43294946 658406558 639164889 682201790 922503716 962335488 91908113 523141002 197638349 233268830 620491815 961655536 620610397 702447457 39352561 700774506 414012029 692272860 196107563 598780353 413627359 745514411 538006628 795427724 490602194 970923734 293845419 534365218 591026476 771496195 629425508 926992790 938547237 979098104 630101564 818978856 969986006 984118882 781683589 884112760 896838313 904462878 546389753 632389253 734986879 878567573 806062723 996084795 679672825 709674717 395333149 926610013 588666800 852449549 885542097 963870046 343967593 765583370 862842831 924851567 151196269 177488252 920791866 951417499 555312357 637159146 809023851 980711823 646705466 950496838 230151646 426527605 120711397 726403957 462605829 588868916 858287903 893016625 946862327 960309131 181080025 960102253 584817210 991199670 375347220 794565898 919801261 997310490 471611409 763690187 105908141 441966213 44056510 163872774 553287194 956202624 904431695 981979945 581175131 592337877 695741454 933580232 230260504 247680295 470334002 951606170 96274512 445228647 362604095 506068981 933142133 984525304 276545987 469912847 811700187 940809346 846556984 955079524 217553923 580746619 723292851 893283028 224385017 750135046 372204994 389422064 971406641 999021083 304117065 409345297 679695497 823148681 345673972 967289519 967249927 984089174 178579025 396914296 461279474 515969307 804830124 946022048 678007820 908186108 521553600 528692982 734549734 943141414 105893819 339855659 915160302 929910391 231000857 665730744 418135068 991241745 114612350 609244593 249759802 814791855 156174436 352505780 538202860 778189747 926451679 956831125 362495145 658408300 903102990 975740604 716367634 848596709 574492481 808893323 513861890 714658547 369256849 751273098 473139421 628968066 22591418 774187745 111533266 160419743 185135220 997862862 750393844 760337422 967344781 996005464 792767630 949231506 280451420 884127060 200572398 650011350 408368241 473455721 364628258 646863704 26196577 807278837 930903886 931427159 4560494 339590542 801465956 843447194 246936392 688783909 412078479 492896861 432950570 628666044 712464812 988764643 990728582 993883806 196463119 242033190 468265583 841685077 125455002 736821597 933556616 964180046 958811283 998340553 381447275 435139420 106865974 652937177 612572565 853871757 576235380 843612069 455758137 996212468 844147364 889196382 550132313 644498669 226283746 961639508 709842539 996234941 78644696 158824770 117830176 183167553 313241902 931855488 32480360 487519594 918771216 956642101 317813419 911753548 133949422 939741908 140410613 708379634 455700608 683812719 944469461 950933458 517718263 559917559 831968394 848422815 867100429 879401786 874200156 936102339 84360799 328286213 754963621 812977562 458645192 805729771 683348643 989443358 12574584 775712552 744130228 773405107 423475003 848453976 749833475 872961039 56398369 504677359 689910460 926250874 564482660 850330141 635852661 986127139 250524047 564101252 144293735 152264105 184220072 867396048 126041779 792178208 775396219 942800148 311079272 632054929 979074539 992697916 816467008 943485390 860691216 884401850 927143048 991725305 202510707 382858747 110116801 943932351 621170833 734983385 505554051 749224230 431068821 587655015 940921979 947998854 166822086 454343420 447958045 468127026 360757413 742436326 82344061 779254163 747788032 923355890 358611730 495918750 766796234 979133911 348217145 599454945 114801035 874855369 336388911 706058930 379663982 669427146 907169820 979194094 479444972 487489950 140818539 749919257 685234307 746449545 817902684 920821347 602203384 822310796 110990823 134283028 522038662 536095677 872562749 928333737 500224968 733167192 579468865 883242791 126343626 488974384 817731403 936938333 65712359 849516184 795235331 931410603 463379741 515787326 206615624 207771847 319346726 883123813 249572993 872017480 942094928 951575949 818288685 829655422 810395424 899294261 183041167 791073604 93394049 910877519 95551954 839677278 204511426 268107089 817293822 922651007 629014619 833888249 188293452 264111592 612141359 682326035 791205539 883429071 707736100 735725376 98537327 242625617 292547601 872368379 962322670 965584765 147955583 495181940 673732485 910420978 373529751 391616580 227412626 851877279 532604979 787860786 14626744 547093598 718888047 946228128 44272738 856598590 327825580 744184257 500933825 591965338 784862057 884701779 420844951 857350057 776954790 958478802 396079590 818400519 50573647 714198664 199550270 735501148 503369850 727962173 391548259 837618961 126541223 130663414 407721314 546867788 912651993 927908675 603914257 926327611 192488304 829325676 538539730 759417884 990596043 993848922 497713103 626825049 420915558 572576575 555330493 706960684 951867715 957201073 943896022 962701085 956619285 992182472 925264836 939500975 88897913 618636607 987937886 992805003 757937842 895106207 9840778 758696297 454497741 601081532 615224076 705425548 963605124 982273974 152005265 580857586 545316725 702182148 218979814 677502459 705415809 914925215 427875715 831839766 512385760 641904453 159421147 459775042 935287861 938543580 49021508 394219534 39572159 542324690 958912388 977246529 756537433 945912213 121841663 835943499 200237962 824236525 669157298 989075120 748382459 958095222 597462979 627372336 702644004 772461072 681604876 762720745 326376402 823044676 656020454 825107016 633749308 828665409 69437135 728702019 593215929 904923531 226036950 544864068 926209082 990923224 897675490 906912870 472852065 909258494 912405744 945191716 506332580 794530273 10696327 179476568 170695745 980754325 484463007 500564755 346064338 394127842 438922081 740000146 557790339 763447721 464636435 628358421 103564042 224645061 856713468 938086913 268495874 330659353 177477878 962590493 154897217 632344361 218639868 590555271 566268544 953131868 478590124 964232404 10455774 246563012 346393109 930971390 170948116 525552004 988054023 988577356 43003422 591362353 591506572 598771814 462235036 814066688 479221955 921196230 635073450 671671613 783833167 982184677 213038619 805283889 875718905 923635973 852518733 960363228 649038904 958488725 728809691 827363056 831386376 970530082 129404637 173906843 415332641 550189337 246116157 367965011 660992824 760059029 632229194 652973132 953578754 978811016 171800092 445059543 486993411 857146232 995865338 998976176 836721473 988467633 654833476 902629508 875786251 980115295 23116367 754424268 394496409 994865475 547539115 750096610 710887081 761693200 186546479 262648537 405032598 904941432 973474859 997246630 619079807 843671907 689121133 715452026 396273475 459340872 678659003 706046913 74919623 982498072 70770790 642765360 699152172 738010330 895891329 984859679 626016070 751721739 482613211 576741690 963117667 974533826 66053373 384064979 199144997 533533816 692483087 856626369 844158432 867948399 589226166 881276166 832247958 917629604 301302965 533493924 313206895 494305229 417550047 587799926 419856089 566303300 163258085 368823324 731110836 736768318 171898764 757415234 663398194 707536239 827884143 996733772 625467921 638406460 294264990 409803524 950640384 963982563 932056998 964311696 194407465 794763997 694828658 985577541 633887676 970170302 807383506 851378748 642426017 877815208 848513887 978298343 68707954 880408297 967386671 982482240 951508885 952264830 542239284 804450904 439416807 570408176 784447473 882920606 553502437 860342725 997088144 997208022 82002573 217015355 98294894 353238449 486005613 549073147 7585081 944352443 666158005 695757797 144400962 314548351 738502296 915556847 589924804 830189909 649571008 731844852 73665898 493800932 740330574 976111423 790671490 972445793 747139653 807976455 1413804 285023724 438868549 615193163 5534971 682102668 16041898 713330159 572500555 831795629 958812411 979300466 693052553 911323457 490485558 516600058 464909316 595170665 616042803 963541496 467495197 645973138 427315538 502396289 562465922 635153189 124594790 186674890 35489441 106472048 89631505 934846777 141150517 281882419 38024193 737255200 650215040 793668043 797279784 895562350 491173142 592911240 386066682 503683016 91646912 451638095 1005352 131809299 225297126 851662437 242330744 392990459 658510805 905422585 100509468 451188052 409946764 617610675 597202990 655348513 421511684 843777691 258641571 834764265 643431041 724248449 179567717 925691390 301455228 341728691 884201124 961774848 3584807 14402564 748920780 763901115 712237800 971713165 630534642 703563191 502433689 775467763 587215422 593696755 520602840 992709306 903164260 962765514 622492949 697592591 944250248 997742496 550998761 809346352 938539303 992265221 779515077 889366668 82173510 322291345 457484365 883132384 983054573 984033378 375139432 810169080 255442858 372085048 98021595 393857126 614030127 738489794 878817147 998156337 606876994 952894286 154967516 242151649 173992971 781141153 336022997 882462357 596175420 955543523 931303595 964968999 828450162 880948580 586277136 852212472 494898630 972655441 594449512 817065289 900836124 926556891 926924642 953135334 175192274 944744483 838678461 840588381 51089307 188237990 928058320 984641725 565840762 678720193 388176454 560335805 121968254 672148741 998679147 999105313 510919166 686743485 741943982 869216033 553573776 898092315 707684346 723341136 390251054 956696581 953223460 982797349 872363368 948349650 100249648 415722623 60845473 524780412 660999118 745215161 900676366 911149684 678767734 738193783 751200522 759264377 911045785 997325343 626051636 804020458 212291672 856499055 976007298 984025596 287656900 775791965 32643434 714033238 434285767 765329451 550908882 756343140 144932513 640513465 485847112 696472435 219352674 618069664 766780906 998631519 796921038 860027665 702564256 758995255 471825480 927100118 517237036 643305320 533943751 547959967 267355753 628958497 251891724 966991322 925562366 931971207 672957973 753983816 550575446 770482234 354417847 802952184 736422948 972355260 69846150 330673078 270690051 787006711 669077407 958760737 462394229 544724402 105243182 396759886 785762012 826805200 104031446 422236628 896694937 967174335 623781941 900451679 52129272 300439008 591718605 719173314 773571166 846712677 520089772 888427264 85821612 351164792 992171313 993034717 131150031 388970057 632392945 735362213 829566430 904079950 274702521 590167215 281540627 298136490 443066445 681640981 821489594 901961250 384003474 705463996 636195067 852555527 124026773 256993220 895241909 963762932 545219172 921531719 199037527 653794596 878523655 883537771 62129441 571297825 564445387 922035472 854264280 872530489 320027828 573922493 608686232 888997597 204631671 612091584 726389722 801495295 96708816 349088142 379251730 601614456 379846801 803544250 424441430 964475658 827050195 859145658 411246451 535569801 557742436 620925996 654650067 848884550 631859975 940239699 621881626 902322304 928761637 968611451 786655003 795787953 438053881 723697502 379860171 600436129 76110696 368789728 681025493 785944179 94879685 829680406 284738704 307965903 846929376 961239283 138674410 161293111 272477294 633213331 503667427 691072078 207894254 892116795 683640989 793224195 592681758 738321675 497123448 737588005 51966521 423016230 65232375 963792594 391026733 840687841 316397873 938170553 885061847 982737047 258615466 982406188 321799648 340353382 803620913 880517069 784995422 912892147 218281400 795064089 26064252 722509006 807483906 994760478 975730647 978018026 810292909 993732661 533331152 576934120 316078220 678890655 582538984 940069390 470333707 602211909 106373717 208148149 887437299 928113668 916011366 948897870 327670073 677200544 539268797 568653155 353960224 420725818 77521384 777074242 109339063 184743502 828278067 902016386 684109268 767011180 877044391 984351028 668285402 898838475 160215517 214044050 469560107 846050167 937618776 951150935 816062938 902111821 160321960 418860400 734655896 777578640 287288006 462831056 432243272 675656098 97046603 315735051 246617968 779241234 254250733 907491682 745681410 790598784 802686857 883719317 62721963 316506553 752333525 968533097 522099800 556599432 523229861 850813345 748244741 917394822 540324971 560719772 116572176 847420406 240425275 336719746 588028601 751686147 98273499 588209110 130564623 853166064 84568863 479338857 531542474 908543230 201049145 591599177 132615669 745040725 439375880 993006458 759361007 869597794 668749082 726053499 843152145 879432901 458178771 722540866 274608401 422431112 430835791 598110133 363795057 397224902 208188748 372360233 227800779 610708237 144701148 600622422 313227511 677887447 686609004 846103146 255396932 916119125 242163044 605933507 156102174 186425495 955073883 968303009 743345367 988590635 955796313 990612703 178020144 922868112 355329489 767670489 164621084 783433944 100171131 515231566 752143148 935803078 720789305 788155657 601357708 867448412 161208178 300185918 78056620 430401804 751293167 916368318 233929204 695324266 419153486 488996723 810620981 838859343 581157604 916444225 395402891 636457395 635910874 821166996 947428674 988652761 883484488 989341479 403071611 867000257 18897684 763317680 48297722 166154135 24513274 399131251 946546441 960812426 508352399 659013710 249956448 910788727 948968990 983677398 824732807 978557641 436973573 471040513 292757870 949146722 547139107 919641068 529836919 540030504 696211206 967567029 709319315 902012914 849313502 947491948 401169842 794587880 901071799 946722552 623272398 720017105 816257385 862916984 780904974 903655855 195576373 411176077 336553274 677632977 505738698 541130445 140588009 189844075 753505537 883025285 670297994 798937646 111081916 252034925 62739503 579129722 355803767 647388333 106877604 319142300 737115422 828339308 264335365 763680306 212881183 782578964 164702817 605680114 524934360 651979353 805408465 886232298 158783270 598191960 742427137 770963642 499659320 538919164 26997806 339249928 163668090 682391100 348913773 945791266 241145577 727913006 246667037 651205569 564854874 958708992 903828477 940684983 21708281 461541136 666002431 924164585 306781868 987820960 157925729 789661560 496576454 957584757 192788990 561973822 593756880 994804186 671555545 766501912 993353482 993816832 630589052 975133682 683865426 947370820 825474073 986501714 97384429 714451342 604481531 862860263 92674374 162400211 627238204 806451686 289788519 397585508 374683674 384060191 996403015 999149190 84456495 781755905 369103823 995790809 531510181 592399168 941502503 942641496 926821497 998673474 688261580 930486502 713986773 973113315 664002004 689339090 231944955 868462524 793350285 932014744 68871610 932308710 375013805 624616526 748368817 941609786 786349187 813910916 803783309 979181646 894986183 998466153 255214304 422241412 706287215 773413262 712763106 747874063 627043270 968948405 726503323 835667119 584647115 773806989 879179824 899063857 993874255 994072305 685643227 825856382 733776109 814217098 627630314 717045699 971171669 980153558 10428294 757223119 26991273 181075508 43426720 48640400 361379526 486210638 848567927 863188235 456263987 569615567 859562746 894051651 9999490 924293046 114677096 174241101 789304765 982478267 96258637 181746961 495306815 823850772 210302065 829276287 920887952 969928216 719424497 817905916 777512244 823246291 61642689 430377279 996600206 998826945 811452335 874504238 555613584 821173519 563877479 751543684 525622768 801820923 148956049 368236590 775980134 855718665 145179097 174450918 724135564 834357999 7550960 527193441 79739697 507740531 683278092 872699412 60817109 802935437 231020605 290309520 585789308 729767762 411630819 874615518 301384711 868301714 801977473 893051407 25718491 877125600 812090610 956642031 123566953 983778842 97621015 380931299 538906653 859755133 151261104 706831059 276253820 536359241 195540854 434719434 345128348 390180811 797762097 841408149 601139464 863989626 27146745 995775375 74431643 143029783 752342709 907282120 360656634 940518634 188206323 363081780 93478750 171022775 382685607 427426153 512676965 936542118 333073026 405549962 270488999 928512749 307365534 361133737 121745211 378655520 783496012 809383092 386014102 794484958 581100695 874143552 327273543 774066519 305401841 510684231 360594503 832294914 209507533 728238344 916557071 995737795 203348083 729380297 316035877 770067742 746737798 833764447 635056939 717858727 430177067 620829386 558574462 973955873 677949893 901104501 613146386 863547781 41085628 424376857 718519613 826795619 442754918 679667014 552431685 927076559 860341724 889683983 846399010 978941874 504294968 745981928 127380008 864550538 164733063 219987168 346894254 986424529 833005842 981970570 560175441 627199743 825544878 922785051 571996381 973592627 409010662 641847056 395280112 689406493 157780624 406854770 44008760 667680293 572469239 770697421 217198288 582269545 400497444 536071197 40487125 316800441 541518414 996550647 289992465 924354421 202488772 209442431 957500568 969217034 798180949 924288552 839448033 973938608 389839328 671616880 322161297 906433457 2002359 300216227 977765658 990750034 303800662 700349983 881394384 895067844 871018894 920677348 95527232 920925916 321226141 871802528 646168732 881570253 90168835 752756194 749536779 846898474 363299487 522765545 123981574 800249104 274550008 684566515 722241086 729399204 401287675 820753745 48070107 896385090 823933285 974662282 207890404 263147776 648380472 760019854 704229994 834674884 248769833 911321658 373556999 650557811 170662383 939465698 267038580 396704306 7915827 599288412 949767983 972065584 149410280 741534513 137719301 705000804 300872426 740053860 192215723 764278370 158367879 826639300 520530323 758415224 34361856 930347998 773334279 891968888 896602159 989616271 270196782 274393855 559305032 708239694 945041085 966883650 690127170 693701077 565172792 644827649 116255181 742703966 42358560 905739651 35479751 154215202 816444242 859968560 942455315 945352115 733101749 991346862 732606388 831762118 261391657 786900440 782224166 948214172 386224954 877442991 585061656 707644771 865486763 983994942 706838889 966279924 635118213 851431528 746894167 991598442 647661455 827764328 359944613 643598909 144972370 314403174 730446413 915845855 498981478 546786849 617758553 636147921 15187648 737404850 419091068 440515501 910552781 934510968 362342993 410543473 588102429 704419609 212229509 661027333 275616710 956537088 316973549 777100095 798508029 853125206 428842085 881120614 518133147 564573471 299108908 838588521 967737717 981300603 701122226 761194879 408101999 478808324 658969552 832521559 321291860 919517330 377170808 917255169 395674987 517225499 765077771 994720988 39702983 400710469 183692044 920936403 433670278 487949111 616486353 939410820 494008182 639528144 906056886 916732997 166935981 870131413 782261301 841663187 809668974 902996176 909156431 941201385 973131341 979929163 210487017 694331370 315038025 344434325 618478733 980400488 101532504 401679958 9996752 154619911 606123080 757595859 625392604 644172461 985586803 988037733 220092951 614378924 233627682 910088981 160049463 508830272 435159851 989627319 274618409 753251331 342838991 396368080 943539318 962779877 177246634 472828892 207759053 549242991 997296164 997708572 7713780 257779777 223693840 958060037 609460736 720759557 129242351 996804226 938157478 975491123 59455564 973042239 366073246 949578752 693936051 961963428 78051813 181628802 503215697 625735599 914597421 977723246 484705126 646772332 238826613 502106563 90250312 777860310 438703242 821485372 399475103 749582359 385970818 642599593 285115537 501762035 422892529 499883344 462836169 919954734 295517301 866743324 654389371 778541041 198899689 603384888 284656703 575985700 875194085 929722389 670303586 962036641 812296930 885378789 885844777 922402986 980718304 998406330 287459187 678664147 924716470 927575121 593133265 678361497 579316461 871460871 569705610 732912722 893564682 914089738 755284845 996276897 769830652 825768328 451549846 659185481 48780496 338702903 130127597 513167235 415592161 536713502 70889137 582528974 503275202 973713022 822425021 857554636 460811736 991985180 419236497 976425189 553721667 933202194 214485404 553909222 4716913 456995777 857091105 982220842 350286314 407693455 256263282 532602093 120364030 136708733 382433871 790214809 494352903 928505139 891670181 902604589 553000271 988544425 717877849 987716561 231691478 801010638 526378690 816193174 74797998 754230618 422732548 969413567 466266525 558810221 424761627 695165682 658749528 962384951 771296398 987856235 506890326 876914533 344623225 468655491 590315818 746507556 150618043 565670311 884234579 943307233 63158546 457312108 857079394 938543005 576587504 630759324 424405775 462040857 559011608 612308706 479878655 637540170 378613587 479587606 99732046 600647564 661608395 671507423 539275462 802211890 13313434 68217348 120627056 270797624 387800175 940959208 249297897 971797646 917142183 927039030 169911127 285884328 423544267 658189799 486543176 547416701 321459832 538853871 549556584 690462631 346846081 853077959 765969172 871442074 303435018 588439471 473034829 672930249 759552652 856864727 494426391 792312390 776587878 967838319 452562407 812573329 138016818 919698805 606228231 640565013 59628772 94765114 463567410 749657852 921747776 971581940 958305699 975621111 306377651 535492760 245516643 768615798 315549007 952177242 711134407 824610153 26716167 533489598 564582589 959876827 808982012 957640060 465859579 924686445 526341872 585428308 249804119 930414547 96355355 832056494 599771550 670935043 350355459 385872115 334514897 637555194 20729922 817893858 788289482 905014399 398730934 704656617 422773646 447537239 208555906 292574343 394204439 850195019 440314378 808801829 468438761 550037993 870624734 889426950 903048494 910065077 861870156 869154830 43215222 906577598 230968762 538761046 176842497 678548000 479625689 587210499 315594836 339899014 956684868 965080867 191573652 524341637 806831903 863667196 42390169 635916744 142039780 484277109 967658951 998218699 430182194 880846323 462494127 978461602 343645175 642453656 926925295 948448209 742621440 788750705 464398949 881931356 863251891 892847708 368304345 984071041 854962885 878396270 598953967 956290851 764866458 975187674 110832603 977137896 831591563 994215224 417189964 992614700 530640578 650224328 88035882 329027884 183385159 817409915 576425855 697050005 138820129 970913358 134506925 365964489 935645080 942646889 509235776 662211225 50851186 136681847 896248207 912716610 63242635 795175659 736650610 878180788 810275522 835617331 170607357 311947050 9912394 301124393 735564422 978068953 51984772 966605578 21896080 424470822 5217337 931306515 401079302 689053616 407291506 664540467 282024265 842869566 560634176 795338477 156154605 980157727 782691473 880453737 34694105 945841957 984488094 998978294 942436125 982291646 443157419 555378029 510712893 746953507 28932164 945108752 759436756 887655261 186393650 852382343 831967229 918957608 204629937 530162760 954035393 998027308 126228097 699300771 798300125 938518058 931056733 939056511 668926229 796860912 478471624 647214006 4464381 480095104 921643325 983181610 670195694 910991569 2149172 691898339 299512525 325479895 759469176 913535700 159366003 960478493 408752688 466884283 32473482 478283009 426174506 704861733 449586408 655512870 142086122 610224195 235266149 469909210 68119110 794664422 418875342 764588085 15593820 780192683 308410910 502499903 848285475 992764189 322939694 369625101 377536345 636981267 362792733 509167185 338792282 721039781 92846311 424178603 776658358 971523748 579953131 855141029 88739306 839531596 885339711 958306534 164980393 568360409 328466456 651538444 253048038 702708942 726491201 888834094 679293499 923388282 453654361 904736767 345138004 558823801 111862011 280390220 141931789 416124089 50446663 211115338 827546435 939145762 993377329 994328652 925778033 960721839 987465102 988345383 495784369 660445997 789703313 966316832 829621713 841245950 631678271 818807678 957515725 972383151 32779153 490952396 959266876 965282374 874921079 993180171 716442972 844203097 423997807 696920401 774812735 858183417 174249037 923323898 700416824 926613998 356146236 901951753 64891406 93120232 691801180 818204533 19430417 432761202 904603087 960109598 885677171 962168923 812901454 951922718 806259763 967915088 193462463 861304348 911784054 931263499 427278592 954083289 723378146 808834199 268352939 543790917 587930705 923437327 256220607 276119546 55474503 291611447 59080139 657610599 98762729 635662308 146922701 915037079 366923788 978935866 259971133 916811133 264000051 554067389 204879091 965595124 367464647 487552074 9575934 879833546 991133628 994213426 323716816 869277323 571803465 712301908 958312259 960020826 803176704 960417833 360079842 431568179 330706679 957003336 89299643 883100545 981360255 994957250 758190001 761624560 81605243 331338300 316836088 572285216 459105025 814030459 747882788 805379793 934436478 945178899 430267936 705028963 809333076 973674046 248862258 416061744 304834732 484429676 327544642 611433283 197218396 684034234 912871895 971853227 829867805 978315515 943884805 977221544 858650347 864294051 946576841 986515985 966716616 977466239 441439785 838820234 667597054 726934005 19647486 563882890 910324253 918745484 592096388 622121241 800746701 861141107 985941683 993663840 97211022 753339727 504993401 915431730 611036858 672406638 610268283 675327952 393557012 666058848 353962040 823870196 98997679 994622283 837276830 853222231 673593857 884009923 410646560 428779187 170601980 693646773 643347645 716717992 203305486 410590641 968581618 972859435 537861569 835713320 510891242 581564111 452881764 591670423 732033718 854524333 555935906 695929648 327064300 982027947 929929581 949273118 263239225 679709595 388580779 561208779 425614664 603337661 231515298 942244507 926288850 946685608 699894263 776272967 671834501 966963837 432357393 910993381 933009867 953373826 510043905 577331825 32284692 141747205 429656203 736043480 405463187 833526565 151673837 438650855 221038160 553470854 221106588 593993759 963707309 993867215 882607552 893594600 834728870 920485386 623105697 929090099 316433673 876805156 448432615 944471256 307100691 364057157 237005373 446039842 551790037 856208397 946192969 960276109 777896549 820140631 402202751 599578909 625215569 857116326 945434298 976781628 179485589 397674075 873459251 893815275 989042316 998768432 136809712 264989482 360780979 651412421 791056175 826782680 707474971 835920381 200667596 420870834 472152974 520937323 927429357 940422842 164438659 473684710 74864037 209080413 163066424 201292030 196947612 327448248 496956021 505770075 455332321 467932326 988232080 997230218 287688566 441048027 815151216 846334729 380959701 625670895 192151859 995498897 301500085 827860275 621649609 839781923 37018644 796697991 482792790 988525547 838156546 991062572 984398701 994594470 445189437 774214088 509542246 639195907 90896265 346535156 167004626 929146727 704015910 974732241 455503364 607229918 648977953 830508529 755841412 904287847 783957575 794429307 462431175 565448682 597304984 620468657 916633613 935201115 322083089 560583644 102756474 818672131 873404873 997576684 37469859 397772834 674397211 928575820 149314632 334583975 614756835 708094425 83708195 273602023 991485186 996359681 880435012 927639932 400666137 973699000 12375277 822921700 727231819 917626804 807462564 837855564 263237101 808980472 491526638 805662737 422234706 682542935 256351035 646991933 196383420 584702179 773370289 788522532 441660925 465069129 743839073 899478828 93162174 198137067 658504281 722469289 265774546 321998627 273499504 612657884 490996821 930597818 568882490 877186595 828760019 887562440 979158535 998516157 847126277 855682789 844110469 963005809 788193048 924115980 171386960 849048366 226102956 578992191 247924571 524843149 915000764 943078274 449233656 761196447 910942227 974543757 657494352 697569829 190037410 646176975 33393030 136622838 101802282 858908150 120272013 762463083 932229995 940563206 608430414 609623052 266017854 460468335 512644991 870191263 636008886 647442552 643149426 817336438 620280930 859044711 704995986 830257973 307637735 732584120 578611937 857538089 219377463 749843484 236322725 453456307 293027555 634107845 335700781 889774099 351870486 798436805 117826208 904402279 495235470 922377045 376969764 475454482 73015639 554866862 855124153 926429487 623136073 898845946 737626544 862201476 147343709 503591066 964315648 994028407 860314873 947164586 827476583 908018105 610655039 847360510 809794180 959224569 885488211 949301368 22556073 329931019 117732111 184215037 968468392 982652013 123805407 354798236 513365719 702974527 554378973 729162448 277200063 785041719 519878264 780883419 529736579 899426103 185247358 915401129 256620808 405202405 500141949 513927969 209919776 969205764 302610384 976230313 718190247 986728268 202534360 277217352 797604158 992155106 635282260 668923380 136284960 308563528 909769844 910893357 406849225 701129046 495974212 976607444 407510774 475792502 336380778 424189051 750675468 923503351 647149843 967593391 55820687 748207984 490308705 832647633 632817377 965273792 997563599 998533519 991944530 995905160 498813537 525054422 14500607 289466868 97609238 585003441 549381525 762495811 14110162 474035565 898002949 998175554 362625657 466018442 616469955 951748017 149903245 554837468 656819876 886474905 356096169 541844509 114944692 835937572 123835146 609659451 574715648 964278789 447200801 944624321 555611423 821767982 542478957 939677408 258919284 827442621 210926530 651941330 103517983 492508321 850052578 986080279 668677226 704485315 148097026 888732932 242089161 726021992 206620038 312396555 609796282 917379833 742715119 840953879 784020923 914047406 415513879 826649950 883328803 987992734 719527885 911520528 149826565 554853766 458336208 905154207 930256581 967074559 287098326 754228481 551762254 688387988 700188563 870252856 382417070 801468951 602692163 798280474 861297490 929578719 278844909 595353440 992254713 998744085 3072502 796545356 338803993 607459920 928735213 962657484 577221204 654278345 514065134 621368719 640766516 997937735 63107543 406328336 615337465 959222981 719000622 925748993 225650691 885182335 466184400 564651908 331449353 354964067 1435568 499185379 53733613 213198017 787106921 991897549 864724960 967152973 842651377 845803177 458488758 505061816 370232461 633673484 382521607 552865093 699108381 900553912 526940721 949762819 106675107 371855726 309724435 557292859 445959407 788327481 349290334 961248935 782264148 882641761 69030076 992754220 386850965 598829621 843169245 985374441 783506897 885977297 358819103 410255496 807541156 923692774 563080724 675113361 315786051 443968787 224304342 957808979 142110631 554434823 611090449 822806165 258012401 377852509 772105964 869576517 955214837 989333389 991328924 993404510 379954541 938897844 373987664 846391963 843456221 955384036 957161664 973586450 595301942 909626028 194389249 775975709 161699840 750611187 712608594 878967395 485570409 514015589 153221021 948210571 586102380 806655429 296317118 495951634 729484742 768369131 705631506 732582013 381525693 585700978 256419958 772559351 898048403 926663813 301796668 348526189 728635036 755463908 380983562 437877606 67315380 158286100 728027421 933653413 455798796 939772926 890304876 922119778 77721452 612515481 795353455 931365624 509046936 801550858 178128074 555629925 75395238 533971162 144302140 500800727 820718702 870892746 725240718 981612338 123471690 605373937 190007253 610084618 110562129 659376821 514669152 789872433 599782956 635474619 705152687 818294619 90244288 816511883 441584588 860532263 850682628 914955243 261768826 551736252 404295090 762507649 727061471 758748341 299824647 971760437 10897989 318398204 138753877 830701098 113875342 360610692 38762791 249018384 825749053 921557393 46070002 803343610 450612972 725942620 90207553 291133373 903796199 941397232 147031158 915977367 738572431 934559282 988560704 992807363 598870852 897192243 61327591 369146631 880821231 976426513 147882625 489283573 42421661 46697787 201976392 543634852 202109483 777213492 595486368 964215119 514193914 817397956 222324108 719644735 698482249 771849298 268984030 523720100 416998801 873117904 668694661 689663851 598368318 849755602 180144452 324263951 378851645 791109456 412475514 603357422 612748605 615537936 623027842 856670511 497092898 955206112 360813392 408032203 314427843 933791012 838886111 889567574 640527414 747813458 717602759 908880194 837913209 857379120 580879055 872401141 616595275 733095863 133978268 149122291 903339030 913289446 441950658 590277213 544844499 988204443 153809411 713350013 53927296 140682271 371006755 850193193 887528435 981515855 192437699 939139917 996702697 998382422 230865015 592810537 342582428 687895432 377390027 714306402 213525957 239136876 76853863 299172254 469073099 860901873 567770910 768828914 467514587 546395261 986105264 991937535 30861612 161569022 984453123 999156626 717013294 961249328 588895316 628290534 452617798 496706011 152775770 320883197 575276467 966525081 310586297 962850942 810861232 933187163 529505407 989048413 420384241 819583755 896464779 908595863 579558720 929571209 133419938 871897889 588928871 935939928 753056551 952574412 661426994 942759192 170197776 840648934 773054117 804561742 933701918 937014317 305045045 497874075 676950500 922854295 177980627 846407213 747281841 752740132 48848524 648926016 966993847 992538852 210681068 417911663 194957503 662365587 693675722 783630996 541982845 886037388 389340725 855466609 500346355 581377777 245906689 666859523 493166033 675021943 988699350 994019593 215918521 505847308 585984637 863525406 179244704 407640374 11491423 16438106 165189309 365086968 480385591 624877884 191868732 345178683 736389252 980561272 213144810 291111860 334043630 561461198 62247146 703869487 91958002 888881019 281561313 697816065 227755233 848773552 745433310 844286177 374585714 643106811 80863649 651658152 659495547 993828503 824128002 870849272 473405933 618756910 332379543 443093803 64197858 812261501 245758841 293757331 210979755 629473682 630603084 827543602 241422702 450652525 601867488 939709504 768504052 902500321 277925711 758684850 393329192 422327593 116463382 707728888 261105509 575129144 127796188 872008365 897179383 950248003 450535597 916595174 749195686 769586239 277190334 618341882 592008431 854233339 946004214 965833994 133196163 139087885 927050098 992862893 519399281 587299870 137854105 598328642 869834643 873155062 953961809 981424843 379312901 549778287 123256990 654641936 18959965 311925131 774256153 965791389 157398337 342501587 36768099 811564658 426869862 886371640 649202705 762364264 851868056 860380816 925363495 960527476 543806028 955874684 918530594 971537337 929586117 989545964 266898462 957825730 162761853 730661954 298627579 628004094 440061777 640733810 666418431 833905079 873461404 983366667 94167264 457238660 870801154 986234771 418140054 669211500 569051629 728229805 666388261 866033518 478445717 506222049 647352723 710071312 142541046 299299514 749786610 864960153 317176470 470957397 936209860 982100711 761316460 986389074 771968629 938144815 458574749 722675562 912301812 970511269 729672352 739483718 5493201 547606551 203677561 224007397 185511948 442292235 251953493 760156919 439852111 611441276 903587243 971576732 801158221 924296446 732709058 847144415 300278646 565207854 872896043 936898673 228104059 622033919 18413804 716952449 187174530 894848843 394435033 689366931 10567859 494463196 33732525 471486181 754288747 987802526 892109255 901841232 599664391 996712810 635653587 791747729 145160098 927052494 821985059 977909783 850617197 883697409 90723141 628760335 158914226 318172567 280499835 711410642 74247281 217534873 82228021 765546912 885752410 998415372 355218526 925374625 250530659 384378687 982534588 985848663 613865559 769389877 413199307 872006616 763044995 770839540 813762622 924175502 534403967 655847244 445910894 538521283 115631187 588842660 114618168 930707056 890309989 914532595 446663812 503026790 240875884 775191242 755116236 780096818 420863478 839574003 515582542 964968295 316652862 698037631 231270786 869579783 355681843 853128704 868007355 872126469 619896969 642998297 338209620 458062072 932689749 993343543 757330373 839742266 540208074 611941288 665853183 861246733 375114434 941073485 380840560 485543292 384206164 733882509 822001671 948264466 63368292 810414327 172894083 959924699 901204474 985041773 175659030 566387153 849872502 943293656 426666796 444840501 722064431 757646268 875123555 906125038 663387552 804372935 757664802 867134790 849597393 873234726 519814575 756131666 906226687 938727823 491215196 725858915 676569579 831560649 779152616 966699604 753333613 965415038 788017257 813558150 603220022 879271734 104948072 569078376 388480369 410162738 78447462 710121587 555585255 561468676 365838240 745434940 977441076 989837197 592200677 981284603 293273630 475008802 955039368 968897054 561526195 687137296 197007109 599160350 56989364 698027336 892285410 957561410 9972480 520021088 862990391 868931457 98134847 705638975 199421045 250476107 982600665 997378688 268473920 524604391 488918283 762633649 441804834 619502256 850592714 917933044 60488152 166564009 343663761 705681606 676293742 685745632 66654575 593629560 225146585 622954824 118910172 737447709 928594366 967346426 963344924 990204313 67633418 219622753 878465161 887348856 737902616 773473378 392599638 702401842 686252978 950428097 327282112 794476417 100168392 461180927 582757027 792369213 512800837 732717131 781614349 814376262 924633580 967445899 520696907 773109344 108823319 438689372 375612512 542835713 579783712 945143171 355554684 850141298 720620746 757846038 390679203 632884297 707323980 786615867 841197076 864527512 627365456 857775909 445091745 574596475 617901863 926670323 678516024 981510437 413086522 587299006 736489015 762292312 821977077 917216207 651034774 920822664 918724307 922658601 641774180 727696670 561883251 689572976 676053718 832066992 904516052 968350062 685394956 959493194 581311397 798941244 899958407 899960718 805797896 994808052 594487943 965108978 465993452 706404636 778857027 931555246 626642582 666179127 721026293 787447002 831481926 835263375 13768819 468360370 369928759 610883367 171745032 673845599 906907469 968220931 370936243 709925274 530395072 589455632 201436438 775293761 336187766 923469680 177345990 595260170 539454384 663998943 741489967 992901751 540171369 813018919 381936103 627508638 964241938 983519103 573833146 867979914 326802677 736137739 298765669 622983304 694270144 818772604 565094018 808805124 123207675 842118336 588181728 914754396 725896704 760920890 852456508 947995836 650536109 693739315 433064419 900130470 781556850 878801691 360654758 987436746 173178107 840088076 31297125 930431712 820921720 979012031 419980922 480147564 59188182 215937403 237319181 972023525 8796402 384865988 906181621 987212240 420577450 477909717 889071853 920120339 852555967 931810912 645009773 796206022 953163471 990366998 454791150 773645566 266625643 842236852 1941468 7260152 552796940 993853282 700503586 762294684 81426549 846905446 51620514 826398474 181850728 568017299 29579765 70609942 813277841 961442095 801666151 878598127 795797919 803268029 76204080 484541118 961700845 979903119 100558695 254981634 407088905 426313757 798664824 966686964 494904707 656014928 129849336 265240282 249743339 573920975 190382169 322324581 223482987 592328965 938251554 957094671 882452456 915853869 795500503 882118584 307159955 469480731 699328460 764723481 909640006 938559239 398273149 596383593 703341948 941157215 882000936 997393737 102389755 560011929 335470295 505713940 841220298 945487472 334533153 963986308 345508892 746056429 479949786 898271780 644556620 648478410 311353545 611096945 110951257 891527145 362288410 759782895 567420018 678205145 604056939 623072563 196400088 443731738 921475806 936162753 983322679 995825765 171576121 575137723 250408606 855386497 456339698 720128072 13763906 345329518 564538180 989934531 32798120 377691769 772357809 913994316 881802628 960013656 296311647 786940459 117015926 959223418 823138426 893804304 682027736 688424683 724114221 879305944 490109717 548737122 870061704 996291333 459111867 964318963 884829751 967281987 440051010 833047313 561555362 750597476 315306127 351816527 546080419 738423713 660338670 722574806 22096319 942709096 825641158 836864363 961169370 980830501 675257630 954625796 647134304 862846952 164784098 818453217 661321393 887604256 547791435 968475884 694558875 748506312 351090636 931348443 238707353 245592795 22238074 354844320 482743919 538321560 240123007 707113633 480458711 839317676 797508583 837125281 46079715 838461164 527268649 715256153 494116156 611969637 889026090 993853833 21535149 279690989 580347493 698561618 793363710 882532321 281141794 461166087 246225028 895052525 53498928 796127238 347208650 626933679 385126762 629002305 232787075 618392359 657032471 903526064 878187484 956390044 748959853 869894458 625359984 979603160 687674105 951067937 212401680 295857165 25181123 557640827 492535572 843279112 451603521 635718568 286841628 578736496 740323453 947408046 944708294 987030566 475306640 733705375 704177088 916815886 233102097 751006439 640350333 943026027 755128448 959225123 931499334 973032532 951969505 988099998 153334154 195586791 532136861 850908549 823576486 898099109 961192708 988558502 447896133 799410602 10128630 529713756 558670043 857662126 955893844 966748004 189568084 527815813 235898959 710650506 975480886 988017870 873120392 958049601 929761486 961843392 914697990 979943308 206877293 483891242 442707946 649088104 923443594 991379435 721022110 956565670 863606870 893611725 796170040 846465170 511282522 779366755 77934279 489745452 648603072 976838165 938668171 962333034 64722622 936043989 285189396 349792008 774446248 917787769 512045886 709165818 406632132 512363766 142877205 235126333 166519384 535111684 314223294 341645658 655555820 767015836 727955891 880725838 568048281 660495443 202378893 493539364 832402600 878618669 551548803 968428944 571993325 956187129 335168133 986999373 994358044 997089621 50204570 782353027 905738994 970675380 441559487 661494956 64207309 571779554 311008619 414299652 84020144 118181803 912034854 960275194 791488881 908097356 999278131 999358570 651820510 723198973 531509982 955153007 648423173 988948605 69090920 957928772 750742724 973826153 651891830 981909275 688114669 919497072 437355150 747376828 44237901 332639469 672595917 768547896 800015036 958519250 434815471 820818887 937191913 951818408 482193330 784399792 872670622 999247817 359692633 414599322 968142138 971613030 476692678 989995103 262142393 282847648 580302821 600512603 466202340 640468724 129909660 419148676 374180915 390267117 728146380 932644485 698230636 707669822 714308191 923603109 158209605 368103272 363960884 956256209 704484279 786624048 272617701 275401197 828941473 970214306 314986407 481159078 767814580 876638208 626448913 629623263 757739224 847667723 964132541 975071044 217976689 238863376 555842020 725291540 691690257 996267074 28298471 592558844 518166830 608060066 921582136 929125181 396386565 884700944 365072369 806032843 543655789 706732209 719084169 973854356 904769927 934043085 957910560 976136203 668258624 866901501 980067134 982304324 650847206 895701854 753395828 910929701 708235211 740427479 81623978 853884469 6312372 482822689 195687795 588157578 740521573 956851096 69789511 365451257 871442660 958476795 928088067 929065892 191349654 793036043 160966742 468249603 466670086 650276381 272869791 507686085 896231571 933855619 344138883 382712260 207551888 899333758 119126985 708066662 515235216 893171978 625565524 661297982 598924810 672192401 466213370 712120130 996186187 997100448 653054819 692248988 206083332 331078538 650313228 800106082 141083613 624761915 341692968 503809968 936390018 947922603 855416222 969894176 940482740 991038764 822968100 960093056 273042559 332916016 759279766 940139921 654185766 835915789 954979867 970743047 319914256 770681691 664356256 849051365 4474093 462428871 872352721 970071945 251006587 737281045 627327305 894018815 549393805 760629543 73793815 76280468 837201776 988419039 725719191 873706841 702906694 843026922 183733985 265728725 810317919 901580913 976869265 994816542 290803608 858566347 661503152 716797998 834867037 858722356 337378472 554974342 67684378 550965808 525239225 851603088 389657754 754815717 853194077 916981318 319470052 491171036 501272482 884016739 646581219 981219662 17676909 581624649 449033381 462429235 420251085 880517903 676967774 933484409 248661491 424551811 993893295 996973237 950262277 960405520 889596128 981153388 340960567 611718305 155054271 396233525 804628749 825923320 914758216 997236877 932451633 944694269 815231274 902455785 694551960 976041168 621319528 681008511 338811792 484098474 239699868 469878284 766291960 962851537 210265249 289064858 198814270 291016944 885067796 927181364 330807445 720901581 577873035 768354827 406777809 417381159 405711371 484296520 32640158 209402435 306238828 982312019 688121147 923607557 634544465 876920396 268114339 636073495 197955499 865997503 996166742 997216027 67370488 284650725 587868841 958565185 396339068 878180406 298529737 647335860 199297855 278300466 755181233 846039362 325079289 435116931 960303239 970801461 709237651 927905563 477019267 478189884 736085578 741520529 935540914 950410128 923074875 970451753 838346037 965509271 910638013 947349269 682730811 915183126 823965648 912940942 690672595 928070991 135322806 637563483 98152781 291650601 913711759 934942994 667163160 951980324 322332418 751569612 799886013 838412419 690935814 967045834 453077949 777632100 933119788 992804653 548140818 599756492 419385156 639303903 158832888 303223549 897917641 908971362 827017444 872338160 155857022 313882830 86182999 294482713 189535770 993163627 376178752 886389385 596592815 782909193 367533774 816652045 696013419 734944971 392715690 529595399 969621162 970754951 350393454 775004571 88150312 665319342 549091639 822663980 576785261 834351636 794925860 821323638 90469169 678378189 154394897 286232447 806638729 933465590 35995396 119612633 819922037 955578111 591118974 658164824 943004646 974563338 19836381 228128165 785136223 975156034 980973784 989321889 429524996 453484711 409435886 634317173 388445530 877464661 929981629 943710656 393599140 976679238 924841971 981208482 526468253 873695226 604905059 611685426 28470543 354645042 935005916 974974521 376044786 862094532 347917327 776734829 484201242 793161828 568428968 575664587 751632283 888820519 591563157 633371610 591286468 925243473 81942600 850893512 186954993 893884627 292645567 530785939 356128466 529662289 963760687 986169230 190293284 256517291 839136765 957216171 864780803 893777089 3711799 570035521 617597045 988280023 849056710 974705621 854175092 963679935 1470280 594685768 874394267 881796573 372737096 656518488 2729551 727105794 574860080 959850555 534456708 658100445 828137047 973150254 584274813 964000399 970113247 971030365 533431920 869295795 317366664 356771997 761552769 975861134 324745780 987533858 241852860 690145718 94768343 119581321 652792160 688637707 526774689 638364296 888430768 935452525 961616747 999002370 690515664 814254706 787909901 912860947 420375969 695781583 405665750 941232033 53204221 874128461 956506936 994050383 711968343 888331423 635536833 723879963 598097763 806615991 188786321 308978360 515468407 701299631 436316275 977963805 950541575 970891053 636747674 909657086 512069232 986289332 172085323 298531807 988541680 993273069 331913860 348061032 961047792 982032064 548295103 788058609 876119757 974120902 898272756 960552389 497632444 516160944 982326186 983359016 157782933 516826837 838473380 888295402 413906418 515529305 298423753 459539538 51446775 595353047 286830465 917253744 598099400 868851604 559149217 601027530 520426602 958044447 720349459 769050788 200527866 468363775 253822654 254018762 852227331 939898370 950395927 985942904 436038008 738963589 262635097 642715807 246342171 662495075 518111397 769744527 717338231 856228322 118196872 279261425 53707070 99898119 166940392 196883873 995188288 998334892 410558784 578148127 196698540 424444280 750441257 809656744 919593039 954281481 841556021 959829135 495569907 581583852 813482879 845937992 98822562 480587129 194714359 629863495 568997325 661658937 164574277 798241949 950548808 983992597 228113382 932458490 762434826 874589007 431278657 944497366 622687922 952570743 899148992 985046129 762859688 924318259 903527153 909907071 828559588 902764409 422395208 718747336 890807464 996393555 417326601 610894182 131641891 907862452 932014497 988023087 354306276 552200787 699440745 775362091 316945912 704870993 815183706 888884447 903955631 930728445 808923466 816268883 112397283 931896740 665695087 863394171 850174593 957835952 129715079 438059816 273581431 526901411 940379088 986484214 109495353 767670311 591674362 881688927 302154650 686552492 380907679 533858970 725478188 904321269 837723650 965775018 545702729 947485028 671499371 781670158 816879493 885895809 323454711 585166972 520891379 632462767 405104969 579021448 893578622 986866839 815613157 830476278 846679151 959271264 262470505 969697277 47320915 295110746 810225195 934434656 995913097 998701427 802739021 823553573 146227579 745938933 252284514 275090665 595064334 923478953 533598802 593836289 726836469 863465089 723331488 745494026 610267292 973896368 242105140 669693127 138174527 713230488 813805061 911557488 564791990 665624006 832382408 909942555 959292676 977925269 859827184 905669032 756508057 951442816 148838004 684774092 530272069 680621959 648399342 654812368 623128914 685531691 787064318 860830375 408375131 665900414 839108591 968676990 595180002 655576925 178703363 730289151 846104750 911600635 691778397 782228860 12904819 449997885 174208565 776177864 876488606 904929342 339930716 523948739 661818832 768227003 450514262 809490767 300590684 438361250 608132162 821191817 117651041 878610157 436624331 864977684 736163993 939229793 29012340 372465337 841785864 873066248 370838124 584211203 782599073 896022565 606805660 921774456 304847326 641807957 981785528 983357058 584332323 736880748 280331496 723589903 975928367 988152569 72918458 721617480 496466942 619705206 670216110 902291370 260598528 847384308 702532700 786929041 680361820 856150594 512284468 978524244 756125192 841487194 319027442 629681062 174373070 190728884 314208771 795554510 480723790 530813886 829752799 907000436 727459949 923561354 257458103 372918019 465079927 961327830 342575822 982667708 774473147 934202825 532244438 777919011 63961963 517392896 285901404 928787613 554003928 834638462 37828728 432164322 204570617 774417735 382869538 962978675 981449474 983927080 667655292 711249572 865423829 985594785 454013907 905723810 102131018 844590898 555440581 977132144 138025090 471279120 688502334 884759941 413985718 873001927 6667957 422806418 922022798 987995168 549762817 586931683 719480132 901395738 581517525 961874192 588849432 779122258 479319570 724774766 977405401 988733606 578583553 765487280 723992077 858501765 372823102 810433989 478220308 846094393 791541737 795112355 66538109 293985006 666322982 683519818 802828505 887577301 249198386 857989289 165626964 587500667 374588528 510477624 13394446 45379005 632402211 881213663 214418749 557190961 502337873 519668373 720781448 801790251 384011031 572211603 409697685 989760924 559814906 877521701 581852022 678680840 494179913 767985029 278273732 533361300 909558808 985001096 686733876 793002947 566859249 640193476 301464259 876607676 180713026 271077007 500848201 803929526 312274668 731962343 344494700 397129827 273702473 760267666 221724856 792273240 372937204 862578120 59782447 678960947 227921804 978065094 872224022 880726931 110209506 433108428 9547674 866185335 974858640 975158618 436319153 772579495 247114122 965852637 738783236 836364532 612958867 894672630 637044573 726414379 709012364 930643442 76782562 621194058 152873311 996431434 149161873 376842423 49535800 269368725 665578815 927386907 827167455 903267521 82032883 948679349 480708850 787980532 6257534 960802160 818423425 978195782 409121181 520091947 592555919 991619983 269735791 532952436 751823765 906595258 184651485 242179598 607843892 937467522 360272845 663914037 525675077 983370183 89389860 971960630 384930290 979751119 346944587 750865054 877560091 931525047 726268657 813849338 799535616 951755315 492083804 522955950 975667134 982776836 244062293 516062119 174606349 997235889 176173830 423442248 80869746 620563688 208943548 521113622 752969450 906447321 447515859 881553242 255333860 518273721 619710798 972012924 160714637 274801341 510749807 977513202 720722184 744190070 600515686 683302427 748120823 825143091 719315291 846152014 338591951 825044983 794667031 805452370 879249319 966077350 123199270 660007361 597835636 846009385 653176259 706275075 925086491 950030287 13007778 551877762 383505915 486099434 421468699 640463963 333387327 904375333 82698173 692632697 812840798 998582816 800417300 898491409 155456129 698195359 817115464 984873009 396023695 401719912 264697259 299289571 704069092 784943583 774949212 951468571 665279659 780945168 835566336 991019228 465455662 943939998 150137553 759885702 440205255 763311818 769892779 814807090 942823266 983539403 32008658 431311833 419978713 594366706 417208525 809991322 402168143 734100935 669531893 913400662 21995536 421900399 527653222 697421886 993494645 998815210 886796805 939808633 310217271 833330420 525642835 561445848 607425586 800744026 609250352 837262339 539518824 904287600 745462912 976650558 77836965 974057049 112530044 562382546 370962168 897096765 684307159 912051868 527564366 762716333 201925852 875347365 685066312 700005736 610341958 759410196 210095354 724766076 151266708 270984611 244624390 323343302 437282888 852984779 85106850 158859985 797799910 901034736 507993676 846041717 597958643 665262898 579087521 759935081 328557585 777808047 602238040 831038368 207026185 550996124 578080246 965156447 166733338 453218912 94301617 525129191 62986683 79119979 144686395 877105473 423345865 887247464 904384206 932742921 547803943 609445081 136366942 364597846 321772377 795300399 272451049 908004284 613114986 833913549 414899378 627910156 610948706 747939186 693700495 803075136 91044998 954011598 831513684 841486304 715285489 948191456 183913872 610587471 310265264 602968676 902250494 977646156 858208605 915005009 704272003 775168351 757160590 983771533 690682554 835195501 208103334 705573333 6786327 623154606 495380599 504976524 263204886 525121402 336774138 563175631 807461240 844521814 321725539 442847088 898949361 990844632 68584758 960847583 860457030 868764923 283507458 513262116 603361042 675811841 548973462 710562059 267400999 660987375 268472015 441418896 805200774 996559660 926981193 974312178 279570648 917374158 569522919 994970645 272368102 784360334 144678898 958832700 210565346 260400537 685908973 883301212 787617298 937035300 197780101 469251205 290964833 708869272 723563597 986621985 306761491 968466068 512488914 523479928 893447701 952207580 440040298 569141531 87381609 512798228 901611852 949668422 602044255 684592343 962665905 990727437 901256519 978618024 343460676 596364332 510654287 628873604 728108868 786451835 323860672 947195376 459728300 971374331 729779773 897861745 213782209 981598687 22905357 853880673 539972922 979322333 106853291 922631621 42056299 143284957 923735892 934053858 610382668 655397151 98789817 222475877 53139594 63745601 206465736 557314258 980534118 985047016 525279037 770775271 80704692 773781992 547110524 635878774 71761365 233140630 927672482 965104801 706170883 753121641 623206831 753379572 46876315 490837543 619045363 690407945 161794793 454900976 447903282 739513129 65777673 232753191 291853890 756957535 849801819 965684276 806001752 923910296 5616053 599140157 807424068 962798010 698382435 907376527 317582867 620870695 549706283 754029043 550587152 616203480 358627669 446243760 922045381 938266967 832576556 993857316 100736491 709316061 950349249 996518797 132780174 409114233 243503623 840563628 491135367 650858156 855618329 994271682 257448071 941014296 536749796 677402759 846620658 898318390 553408951 575434747 773335092 787976745 790076299 979225113 330393739 918355797 688618895 852551692 167537388 230760822 340713765 893959369 216773789 501969113 327609855 634284078 388135819 647214143 677684424 983928203 969398828 992913486 92586511 489502213 592063953 911129862 399007478 643053828 809776208 910223165 297538483 312393404 535794872 755728891 914713273 961616418 243571186 820833638 507506319 904941566 139492492 798174142 901774775 904317576 681367652 695911045 674964984 814387157 518057473 832747889 118643538 872371399 669206538 887690804 182893192 629479459 266644861 589071832 480109146 653360869 887337265 890320338 642176260 727138676 764505472 995205609 989110186 998522811 636070722 906281189 48207791 615362321 154930076 730878648 807418615 905437236 1491487 828692320 711323396 743862523 85108839 898410206 320436779 801332116 392672682 623440516 170717964 508124791 957326884 992425208 316644435 503289347 722629614 933352306 761495331 974920789 838287681 906288287 556622988 760822927 244621681 600462412 715217483 978792007 577974169 778113867 402620098 552498798 641259971 793566234 335497041 577696579 869789150 961333190 815578152 847575329 928417600 939686819 635082090 922207579 485758753 556410715 559100983 687295281 472938846 969512453 586183220 656585229 864784831 865316786 877131909 953780154 335631992 582183854 3740857 514658206 372538183 577367595 523972258 843445071 785816430 979035393 764074098 782659771 914833421 931082893 403732638 681814889 417945665 636326129 732357679 884922493 112205531 206609397 686320244 882067679 670408557 689756592 463270207 541685154 275529751 997484478 148741347 815608950 168283154 593237476 998439056 999102019 923025432 971521996 423897719 667580595 759729027 885351188 810654727 859686543 18061028 781927736 640421136 872183287 241165688 647611789 879700910 906072617 739892320 750909374 459890921 806216423 351570796 946709982 450978990 746716810 249507323 303278499 108362643 516709869 877518586 970606910 760997567 764919012 589054283 683129686 928753643 949555374 195251475 852180188 702135622 708612394 561940837 815393931 302825091 618675677 492126546 785244994 197861690 778294505 578972602 606949764 558224892 610456887 695258823 936766626 514585138 524154212 70442597 381532333 649170935 891514974 317784016 481054394 337588794 379734637 76242445 142163071 884515114 906491111 567302813 762966033 159000323 172903541 753139796 799267920 344666636 720682371 652332384 910320793 157146634 388420017 929799844 961918663 638726241 834604940 212998502 369061121 11414997 249895960 897152830 923183469 11602608 950918818 628962976 851855257 22122653 594307064 607871849 896005764 995879125 997141746 108490477 235238331 885968203 947183186 958990347 975767019 754968824 830492802 403865164 589873986 130518786 995285553 792035390 919733059 544151141 710120179 58224948 776360760 80993683 626128670 868227350 955672177 395901711 397927932 599999680 893062512 728383594 935934207 934016236 993594477 583409543 639844831 705718614 852383804 945159926 961969407 734412295 768595309 652738262 672322824 361569161 363052954 320880073 358886021 506669987 972927977 471411174 680209128 288842667 594594734 399064083 536749789 126405228 949723300 166205414 813255029 266007177 590920117 654374831 948620956 408606670 846356293 6606135 217592208 189778594 311650519 796177156 934649651 774383082 988270695 386488462 953391881 254919847 648894592 873451581 894146176 317269737 520847587 165160641 399788049 663777347 797930595 434664312 789840620 214378880 754795227 168390848 854640817 230009446 854298396 471280026 719147919 228850109 939496199 524733933 671226492 234444208 444704856 824845139 849747484 330919302 889837250 94373177 594798937 244871266 289555674 488327800 672377286 949922837 960535226 109000149 853324847 706514545 975826815 971100877 986446552 398330791 798157648 74536916 354792758 958746765 985544442 275119771 908637883 82379571 304695978 373931398 719210404 908986735 949789977 416493432 564977985 60067993 388322563 667895138 729886318 622468347 667751694 917722162 947382929 212888488 471687606 621723775 815282839 577267460 581090512 578525200 744499003 442781105 497806615 751043548 794181080 445933500 500819829 702630154 763839928 648070262 928531846 892517237 944407610 52685252 168512847 739139768 915955159 776353022 929974147 991066227 992647800 129754281 616586835 349687761 460107101 400623723 535421913 606276853 816044078 630166934 956989890 443036074 612414664 412680709 474575665 507811210 621511515 188118403 682769209 129062925 949115544 538696704 956353985 607141302 890020379 538126237 979957015 275721182 310964660 616086842 619021254 853102416 981529121 671741266 826109907 131209573 496219855 317289932 655299108 625917665 788888733 55039171 888594001 508822890 641420073 391491319 505841636 345485439 617918928 331977995 605710978 649477072 731581139 641024612 773140954 417301450 995712059 665139054 716087200 426165560 821594538 160674196 224824599 510047572 563290590 837839731 905829681 65464904 843689147 697624198 776323462 791996907 941474063 5880284 380927538 583273900 689673457 569069351 582861715 78423719 332534286 710620793 729096202 910271426 979020069 367448189 852680573 491033281 976441612 36894620 378969378 994011807 996928510 367409273 647651808 875725702 990893334 391423002 710689297 383585696 440323384 29119120 728326087 691329766 798397341 514008931 666462312 980472300 996685596 426294133 485999197 162810010 653931402 745800901 754879302 986342936 992728610 36383269 805399215 824551893 990488420 201575732 681763445 595470737 790826336 461211876 935719629 499962084 694836153 868020652 877708599 693739660 772778941 1101596 120535330 783524031 974414865 557957156 902700826 33711691 384060682 683040252 778845555 16782923 26543225 108741835 514961608 306425406 895362728 987604670 991515675 45513618 352532956 216683327 641669561 142392172 488076070 765574141 970327745 585703485 638081033 888983726 935557852 664284899 701774859 959583781 984924352 255788862 740059797 394674671 660297105 643759252 796333356 511985376 971698972 224572159 652446741 506699283 812143929 48869343 815914490 363251972 395851489 200455760 852793135 370703897 800510118 72949409 724294946 184218744 534331857 675028350 724977177 113876500 931733733 460886002 617594574 322782196 769856158 41832656 47553313 801283771 999205360 401437319 872053973 260934477 661902193 71523451 270514609 635165113 784110949 840534405 850620840 473392157 563641919 431412526 676992531 620721355 939800668 20171837 368321132 524006637 886484121 862143153 907682645 211949513 960069456 336261126 336731220 427645050 860073241 417909158 504480607 750794579 939713022 683923097 852177605 859954197 883578185 989324439 996848676 648820074 913550772 478500520 934686465 86042177 698137265 126906463 911460738 145357315 661729488 50064665 870121857 281922758 869461704 286791689 453219042 318636528 675320447 483642359 837973603 98180059 703819438 777412256 983604229 827396508 993011257 172925848 675528346 457843158 542315785 537826664 819155028 689833326 733199740 562693255 589440622 291217469 298196953 912703778 929713312 357213613 805584660 200757683 704270349 747451761 949342677 411133845 427754108 733381081 815769425 243964950 620490188 531475859 787689716 684793239 749864243 117170867 641228419 501072717 974282797 343550401 457384619 421417328 941228371 612554949 860600009 166812482 390693598 213071957 331945836 246882114 358399840 232253556 619571168 766154267 778662090 794431385 908774377 894626330 989662121 707281444 721538827 262397094 776071245 712637899 916209728 257395125 984371355 922966588 936417281 247041961 831786367 519602211 812084182 185634312 570702424 567264344 960098328 76845170 539906891 750037657 859510389 776812239 932931217 592696778 746430755 489552750 866048930 606769205 930760960 973617671 993728919 341501261 420241061 467307815 631359154 767225982 863795937 369623182 938818382 860090801 957117252 980743970 985685777 374396707 471669397 562122733 976918711 432953764 557062693 725204308 942074226 958045524 989751309 858433306 935245655 469501812 849678658 560868366 585243054 993988624 996944661 924105807 980193654 613479637 757579452 783581318 942712135 290772782 706670267 521180662 977317032 560080879 765689371 851794223 880925543 920948899 998590625 202793377 309522126 811773077 976482270 731305388 821690454 325810054 979636431 378552679 938895675 217317884 341882623 590839481 782214495 434383517 495684896 406771084 921319580 20931678 178423830 265063665 691624489 407375247 655907570 292511517 594753854 804435503 874283721 862721687 925367208 470684239 920713446 103222242 163929150 616190185 691724189 231370002 253225884 30644952 444964244 93685327 545775549 369676785 460637107 139238606 387423134 960556803 976391886 394422246 981350569 409290782 855039372 555145442 684421183 55916138 937284594 311635896 971437495 486407871 935287566 553759360 750795585 921279736 946143082 478516206 858676349 954412996 964435270 689824615 900917256 670670496 864757469 556325910 781847634 710306893 768757986 160784118 289889041 118294481 689407499 227074404 572984471 691746571 913991319 289295984 491848236 807277499 946382904 279706555 765829123 114274318 654324400 651737493 933214455 176878974 312301732 310531459 512502310 580682846 848024608 697231269 744186966 367437633 422621750 318569072 579906059 723290418 953554154 310819285 467002142 991548513 992740217 928076764 979096766 637103759 966063060 28402508 519236033 128576925 557182311 524650259 831150531 261980870 827379300 146395849 661976394 533375182 686754481 147581633 207852751 442118584 714591708 300794740 586335073 925601916 928310922 810454453 972915489 494921864 789751235 50693022 484894257 822507400 941287409 495243431 765968985 572396600 708577087 904950367 937849832 298221058 796939670 183245779 429510798 502056380 885781073 13515658 93786274 757505059 975656483 342433272 709337457 219220963 288400333 496806650 534962367 560923871 980747383 10762336 537130013 133462762 458238048 450119214 645231181 194626417 207500310 698379707 767463143 175319787 872338957 534204446 660105769 55815141 171944958 495648435 830847080 621001118 687876470 640405040 659813112 112887927 866059806 225118070 477118010 475486450 677284728 614472706 900741693 67271244 96026340 983782497 990512363 776068918 800642603 515100319 832450143 790080021 892594734 697837209 725983882 322333786 564572903 481511517 481516412 994328910 996450131 225720809 760790586 265859333 641233845 313953512 856918786 59188277 707320363 912301989 974245579 263105464 690916328 804883246 879623016 601788374 726383392 450693217 889889493 277604429 792821819 286357370 485398209 200179941 366698552 141728216 939534292 750859415 964363906 721523774 980878240 706487815 749411388 394217472 716732791 453069576 830987390 422155680 819406709 371235143 486266475 751268280 933742035 775288986 984259757 569396225 879686338 11073220 594596180 251750823 728301717 182480917 472480561 320082741 473209494 771693577 998328929 210643640 286894632 274845755 510488283 890923403 991384176 742228075 801115729 92548376 503267685 290558074 421447361 640013064 982371324 303454520 331333460 81814412 316781758 576279819 660199808 585416462 753391995 821212622 869873035 899920304 925029640 769923756 970696457 174962958 810256518 388346023 596660870 734030211 754273924 334261582 539957621 766964855 850135926 659093799 701256976 120572956 849885889 856331053 951734173 352964506 906125719 933265422 997680858 925143820 937248593 783960588 993388857 139230400 513769793 514716693 736571825 630233909 673268610 424917993 482734790 845300136 918161774 722850555 893976277 753306910 788034475 864565942 950882200 167934646 952468693 432959678 873614376 88951723 930648230 285428370 387676322 540915021 564135926 884990899 921872365 890699405 939326134 653636001 869482063 632797928 919964136 206926565 673755673 875404339 972017001 843855310 847160043 463653442 913259402 821973104 951135894 139652923 366319436 316222251 703214174 737675413 942053244 343845121 820063585 970960914 981076206 937495768 995506948 345878618 653474091 377718558 818440981 179112040 878716139 978979272 982626668 716852871 722134481 478850168 591246908 50214431 932865232 220677731 817429580 44995812 277792794 231580794 798277981 502257339 892079309 893939339 935104176 530277706 685740769 30510500 800724111 871695324 947731512 632415864 764371549 59518954 385737292 4822236 998441624 124390161 598265987 360698669 808077649 544857666 602281217 377755864 699692107 276378589 705319125 673656595 912426099 686303807 823557850 337345971 803608615 480523832 936401229 885488923 982163064 648613546 761064693 97156834 451195963 43475149 58974761 395315252 618966134 388525882 500254053 116715722 138345350 201928517 873840392 26037871 326820036 242468329 616134806 992362696 995652814 608599777 633747896 436473602 571460853 74121555 805198484 308991788 775167180 527387023 675388846 416992649 947885455 561356652 774385813 925358157 955957019 810974981 866252178 900219631 916815617 823292256 851336110 313934599 365472363 809465742 978956741 144658453 481710807 478463712 832216674 312457116 488141200 377798988 513328703 348374014 919067468 979113333 996602442 646068387 722348708 662432742 738590323 666238980 887367924 677413647 822941703 799614802 921903542 855591995 918945975 74869283 469967011 410813238 795429969 944425280 954873030 534566305 568369807 676408848 804840973 626228056 900815851 317099526 342418541 842332907 937857653 862456203 880539860 740937997 786277297 142409659 351638644 339282357 341534620 150913648 472838885 119404919 760558592 452361145 475739175 595731537 880191577 875486193 888528482 606150408 769139762 387704479 773104588 486267608 938105192 912565445 973893027 322540753 891879660 597954664 890556050 721747051 815328445 216151716 941218924 227011343 523936964 395002833 696073171 924671011 977360682 647997700 756568032 821823260 918653277 777145948 959128734 389913108 640456491 349425101 792522441 82660560 659386876 477292529 637572404 689064849 865341607 34868688 336602724 632428620 834772545 449716514 936927197 657140534 886804652 796507939 891851975 166675877 676244338 518975422 733334170 419538419 969820834 674624210 793121529 170697611 451914588 94379356 175974431 521538990 957208611 371939270 428780626 446120086 570399666 659221179 660641716 439699569 466976134 547609786 841402710 837434980 941150736 520696083 771776807 229611949 382910382 317876760 648951228 988358189 997382205 359402793 966629306 487195754 733221444 539301954 883211587 464014591 855467970 625238688 842030635 716469812 971715092 499513673 899260785 554376573 747366359 648353131 745644456 743194694 894432667 545946930 753727134 497329097 923087418 609810696 617257960 192573987 362412800 783987717 962754007 13502253 322915842 7751042 491915110 907278972 943238055 578489071 828033713 32174320 659876538 379642882 616129581 586628089 718770542 353250155 516876411 457023563 614006507 384672505 513025626 604039632 637717033 379857669 744614442 930241259 943899187 486206287 820158611 815070433 906666813 857818219 944533683 528996909 716482255 517681242 977027221 684141447 691653207 557480735 808043224 949744592 960687646 794817692 855284278 473026006 927215740 874492611 994772523 996600941 997662232 988005062 994394925 309190149 919190953 290677635 646104999 174453000 708167611 531997174 810860989 290161745 339881112 694906763 702961398 732841242 950407558 852404276 909477254 266505133 564198091 738877320 851179099 218336644 716160901 97905028 266583907 633023349 781302073 246758002 860776727 922289487 963789490 184227603 269086873 224006429 561948677 808848928 862588618 591824056 651012833 371360699 481838028 217828041 978806314 546258088 989861181 918121118 970294744 252569510 594260755 216912280 488513530 97364832 484614723 737969004 925368654 228256876 815366787 215819309 746452479 253850885 283736566 757182370 855705037 152289307 979138833 443458870 841179811 893247438 943112783 800182507 910502623 658561874 830357969 324389182 914267294 524742011 868714662 268160124 582592543 616446665 796505986 807349047 846221295 674761333 898364762 902503094 986985374 511663632 703225258 268729930 864078115 103274575 757251249 911905548 999357881 168156087 577390604 779614809 997697835 518024542 763225551 281794730 541812240 277215107 839099926 172435996 679229666 792819609 892981615 153871460 364806872 194816936 875453738 362615115 727621447 841606839 909424239 107900621 977974672 223265719 597382895 201574606 583161467 665937728 779220979 222723488 229608816 656611674 978435087 551175234 788154222 154194771 989230114 859581055 938693270 608767235 706928210 21338713 861840598 759617644 995539991 948888320 960955161 461122351 863230471 722663745 843188717 440500215 851217867 235274530 934619793 207513449 555139576 624847330 806475199 136286483 942958706 72419605 709321394 571836537 908300218 10413147 881988936 734576778 924500309 449318015 734584143 968998830 981939040 769013279 930675272 189081895 768166459 903947565 996979816 413714104 732600116 176602528 639386800 498218640 582582754 951279607 984753177 551453997 761442688 419851730 613472475 811993065 948618117 982696254 994174986 288424521 494316853 631132343 991440451 519656655 840844114 442252414 701867010 738105777 948579091 477941888 657725146 834871399 889523792 429143107 562383949 412968368 711901507 61074585 215756149 482254155 735024972 347273245 581915083 564554850 567524044 778552209 946327845 815336044 941227645 127755419 923678729 846499782 864335107 701277442 714065407 583046357 672685770 580817969 961439940 919063510 921798492 886824353 946793289 484377234 716512332 436745769 465029152 100195502 575015289 227055590 333819162 630168406 895587943 84873904 111119131 260299440 586348232 825094820 927892445 513422916 859053239 904584238 932961925 167363676 192736247 789155917 800655519 657438435 716435047 266465303 517741973 869639460 920465362 578460171 714411400 461306693 639326355 105719041 872144956 242418948 428491246 732008368 746727837 625657347 936798812 397507641 782360673 657578995 835387879 704311047 893972094 484875803 533104844 337827712 357313922 463326305 953547568 484933947 810700108 832975980 987115856 368343416 691061909 805681254 948970485 821902932 865768729 973973136 980913812 95689707 993682709 483694003 536638849 307199743 849329696 256270324 497256898 977544045 984370517 834105375 866997317 303840453 748601882 524509372 856267511 792210493 936012979 595563971 721710112 808710782 840399963 126879447 978458857 427503333 605373816 63283323 113850249 935957530 945979958 911318007 958650480 142146074 630075048 378178415 833139622 952538982 965980731 821097990 841771393 574773922 727913122 663605481 889229247 716174081 858337632 69245558 671884210 664678487 870967318 106974604 285827226 82621835 968649907 210024961 977967442 46878922 751749044 552148246 789735503 493418604 924558901 374744463 535365696 841480519 861942737 415664974 938615829 480804671 656462873 487647556 944063426 966690335 986214705 36402625 730973003 210743930 549220362 202034503 243753358 95110456 898807658 373339882 637440309 710780860 797962027 235571810 329077187 915071438 943906123 5205744 531046512 818237886 844164092 663205412 805450163 970855001 972770083 220741709 801698584 892680872 912736581 490747132 781103328 302559000 409314233 584384986 760892051 115969303 502856107 523024711 842778982 791823912 948280202 719747346 983783447 860391031 929188496 867200001 952036793 958149264 997335964 504448743 547164843 616102666 902579974 941531448 973687247 933006388 978771978 448912931 552959660 358349726 914013945 234804810 347386831 190669770 712199354 653346959 991210354 864273567 890797448 515473318 535921733 935332551 948516593 904343670 958934865 904802833 953097673 849926178 902790086 782890627 909372801 594576649 760864850 374310726 447229210 53341810 786186894 154096945 333390319 195981382 677971567 375065926 764233509 951666563 992304058 22916314 877770695 623138820 880503030 154795815 440401631 207378079 526965507 74797891 799000055 648364749 858654028 894691072 903253868 870552279 944087837 822972680 946852459 686310273 731691041 416112230 970055152 44297642 688452846 386359545 614193360 292835556 844890650 342441445 474102079 347814661 921032837 79044541 330963580 464941146 794857534 679056721 799851262 423819203 646800296 899009466 978862830 799693485 815187739 177805283 873407812 792849206 870971251 174337290 787498944 480889827 993503702 980419866 991511218 983245635 983963543 669718552 684953345 432222339 578441331 223254813 643158647 796566574 865351971 972771879 975195109 478374030 884472925 83686617 440994388 11929428 851117856 768114242 985701994 650026168 727568782 251330349 796482204 812450129 842420895 92827163 425964113 395274539 886458575 140119174 286559440 378448077 659329087 17858048 37719464 980198464 984112832 787861916 832915823 644852709 931294935 909329434 977790744 491956198 642008811 707063098 959858586 930319007 940388335 529925767 819017687 117044624 204309883 251321464 365815509 28979460 88497574 914276381 959606865 919101620 935497814 943188793 949434425 354692062 894449720 347674991 530740171 757421506 799278347 268978825 467843400 261357829 281371525 736607720 963264482 877091515 898603247 171077325 709434857 939317074 956738094 920462807 935622378 891448025 923522532 808293030 870377013 212037190 800162195 672390245 819939260 507097189 678547601 573387582 844010370 634534809 934718344 703870841 807970919 600199378 708328366 307068752 402789571 261176242 823847866 518428908 532125554 408750607 692673216 549421957 730322603 698792739 792318039 310790712 811659194 521036968 948771040 504811895 926905755 733523548 745755350 787291512 825213102 517969520 692000120 227265105 968810325 473600834 857210741 804729044 870597996 989481797 996334738 560638820 805768903 481827871 590017916 539145657 940401256 524945375 664227299 10523895 176680706 233892177 557866730 799548977 945942325 62167839 346967397 643390555 743462787 520172448 697442289 174805581 765595003 806116747 871932621 156577867 183850984 308305832 670855389 802944280 927529336 128585974 210185767 71367635 674980573 353451191 738798809 793959797 896768410 34510018 375864566 59988000 683369978 243534325 794370719 341776771 442583057 297296126 356462523 401877040 523531596 18674709 936111567 595276510 742884683 176796145 635502278 235487697 565901381 452725433 954471790 376740269 500840481 715334176 901449811 919531819 987462233 182969640 521950332 316272187 482875536 575364051 923178654 491681902 889764874 915368105 952370784 836901093 922034885 716347572 770566999 321089056 776706927 270442402 481185115 914874472 969892868 260953481 968834288 750998020 968217664 767661593 969781640 901124112 969832011 934115205 986432290 557198910 741583467 199110486 924189581 7046722 394269949 459465153 912170610 430220024 887063726 632377438 810967383 945464738 997990465 740932402 968147725 195000572 799781473 553617156 648221633 792032400 994194390 994005889 994314761 786475173 878416119 652860586 675600018 126401902 510291559 87493097 309847639 420933394 634687176 879657331 908302332 386033320 517206323 75167172 973148129 458740669 757813018 816613785 844097826 73874324 928714698 580506510 582661148 473872712 590544972 412553295 446047787 869276437 945343362 661508119 811895425 584909901 900947140 494064228 668624858 467972243 838606352 951744612 965751044 922140432 978950549 90523788 987168601 976574146 981977591 225080588 395500967 223532925 951002315 965359741 999201515 994007490 996266585 770806516 927918279 423979718 748899064 874502917 955595069 103120389 606641561 385552426 598894198 826169492 947660243 624541986 878559361 492686972 516873747 342273569 630140845 838268145 965137346 70878148 555581553 58924129 776971933 311095126 787647952 51006972 939356466 929742228 993452384 507705935 655586559 563113420 604163139 569428146 605044174 153672508 967769504 33481343 194627042 970861825 983487636 881853731 919802184 617280716 949140726 805977238 943260505 168705369 931429779 415719794 505917693 431025489 700084499 987050093 995785561 829360426 873131877 985439184 987931336 320432894 871806986 144679065 413651474 997839950 998905430 576153311 800888781 749211475 764184218 930694819 982794907 63401248 271091109 876453958 994817213 720146268 780423360 870262572 983034861 26402501 753122930 498939159 849873169 215364708 441525553 277611625 571626464 12705047 421990124 898147476 928272291 302152094 766486600 91047251 101937873 165508014 299104819 97562171 794913609 680350171 921590864 346332497 841187977 526100464 847838157 26790138 284491177 700985985 944589650 115125832 915806253 563662446 931399376 599460235 996256275 739966312 976518418 31051972 667119393 950091149 989468740 876371339 948615764 112792157 208663419 151598072 405572094 78195563 647560925 914410113 941902865 404236587 623006734 788337624 922087970 347560523 513771220 459509942 781332115 325066391 544094107 163136989 960865790 331883096 856731008 74501043 655678457 476737297 785038240 801151603 841559193 576429515 857927798 420073243 663184305 454059220 621675768 452841999 701404504 758295227 798756445 184235040 728062635 199472337 603792068 833342435 937689156 627297647 727508307 783956869 809828829 768196854 936811414 669432666 853109339 976731055 997635904 466223083 713223952 709956609 955490717 304078637 958035080 806900286 867050330 534585242 704878582 667705159 743424864 240326096 538375514 540846300 886638657 4142016 562353084 147082569 348893243 722992257 826185706 178206261 694888787 621453902 781292644 255621590 787463411 772709016 865043861 842265764 990457118 687837536 743043077 72419462 805280960 500836266 838787666 200746250 421896219 581004786 590635716 287290275 692846238 833294570 940527127 232104921 337062421 783588295 868268265 676679413 691861971 47357749 277799862 263437693 568839456 270299335 535254278 574696469 633301849 728174939 926897273 710534614 850729025 782425845 838595367 52993731 912320512 709010105 789926997 938322542 952727689 188361246 266389774 53475687 602050030 340109619 887100248 34810647 859744893 378391989 703511971 440755668 472838600 792584415 945416785 548189449 733852644 971065701 976990056 523289072 546658901 42158998 986696660 812340565 955560262 411893288 555124587 503016531 700960168 64986407 908167400 708533348 736747865 127686598 440632260 600096881 884299267 171666540 239465939 597142385 796005151 506859399 816867077 116463466 977874627 179564644 708384595 816828434 960149261 799923075 807639628 842426750 941846062 138198114 757097899 652202040 869877811 304737801 502144459 869402094 980312909 656462812 812510745 871977048 893258226 821575413 982672129 201110990 302581673 880580861 954185837 984501829 992619669 110872200 287526711 392051421 620787083 249005002 705997486 941371908 996966018 743520646 880086686 860011529 913772703 423754230 599899229 897674147 989742300 506412331 860984044 224156568 586015261 134740481 428472012 6396680 262983981 112743520 582708040 293533218 606233723 553476022 570690927 633768545 686797073 200204927 288651140 468349612 679023672 23355316 673805324 610832125 949775113 385100049 651281091 164695060 683838427 147328411 828466921 283859667 652104187 257668673 392473862 70196461 924457512 515910303 519785094 276402888 389921938 796330344 818640063 766113966 866227974 285300136 777960118 557127986 611977461 345852074 437866275 95715264 971719774 916745231 984646562 175254768 697712020 557822624 873220050 953787449 955995323 994902208 997030837 370105048 970177625 983394026 994337383 544809252 884328908 854882856 916912927 433877185 440794715 757858187 908003002 147669328 851761759 809575403 844116322 777515135 852866600 656785741 696667514 800318943 899802519 934089351 963514513 330322996 627043992 918208003 957723125 84941382 747914695 823880701 988211334 590834310 829679113 972058258 991741000 374212243 403844169 291758687 825366193 138426698 922338569 344276928 516031132 459814986 478392471 914853279 959203208 376270682 376512209 446240429 691136450 34995992 799108297 364714871 706951767 781917923 832388383 600671862 650237214 957957893 991138998 644829914 942348991 699703772 707762069 654542227 912518298 129173244 596598424 497782942 886038153 317704210 623168895 464609403 752811842 908116658 998496947 166003311 553106085 850671723 851982718 977285193 995544280 345449435 650393662 557641559 713356601 640044173 879240658 188154948 843011171 559474545 835850298 874425679 956456314 866641344 950429604 275994376 748858780 615875373 914711875 214439637 529919596 320749225 959969017 512147103 547721173 455145718 768353277 311638406 919677093 72689814 447342522 965644706 969536052 264527142 353493180 482478513 906658564 7353525 535640413 22922738 250041445 364923015 995084946 16635037 939195176 871026999 923765986 719150833 892440015 79418456 300583488 953426980 982963130 214344043 736868842 152658869 619811116 518264808 777460306 749246614 751288746 806379480 868084733 100852865 415014241 550492136 767082243 638099198 885785710 645707223 721650563 281643915 832295440 311872476 483599278 461024671 989535324 517296625 833279321 442987656 808814756 792694494 932808824 647018203 965028602 39370537 523488212 330914767 711857570 587325535 756887989 913513753 971001889 190181064 237489986 366367928 844048218 437362030 512043882 643962952 723632132 130378149 370331756 367016412 621298639 425989309 620879325 248688004 680149322 781513486 830420163 336011721 473241964 755627157 887926271 262639923 570801009 587598513 894710387 772216818 979253466 803777863 875233880 153796742 456545905 911614131 957521452 457332289 895338138 297026319 481386589 393853238 599414646 968671476 995936927 490593120 733798668 729499116 980096131 944664326 947294278 25481403 34441404 555860153 804536263 749677887 887113708 824796416 907918623 675276278 737462520 444967332 703278424 417201168 552911266 939581414 970720911 852412296 976186667 673086264 726690698 128208727 787118436 856747466 967227655 869609998 971611002 544323520 653712599 259384446 415589649 307072442 441907260 603156820 785822483 680640215 945842179 597551842 649135565 774554784 827226845 630389826 955506936 32961612 980428867 248473285 791281939 138482745 427749706 38550884 807289933 479209697 676558441 483248808 600644533 845505987 991116895 441142767 899791885 671549762 809081011 505317306 561728106 830624449 956296964 260215060 908683386 341759779 920394995 885772960 924644636 266395142 973682574 258783801 317962420 335207388 462476882 755299506 923776141 557203322 592930935 442165277 965949247 904281791 924819925 87749060 373663438 40055177 42946581 139730120 959806239 414321124 983362327 700155715 708099161 546912909 618170517 182954767 603593958 86601325 428306067 908496244 993170758 110026009 499833204 802912978 971273086 826038770 882087623 283921880 840693879 385872508 716809826 994623342 996188902 706914875 957530659 357427412 863446017 256902302 901209663 844669603 885440204 659352387 687409868 415344166 493611729 744515693 839872300 61943595 813704068 758333520 852038518 451937487 960970633 201080561 915143033 672861525 962162945 5983185 186224384 136267054 402268224 108200882 787181550 18507217 291367836 952444556 968843416 63815375 556522067 210158429 346583371 768703771 819062339 747568552 785568083 866186571 896029790 679972748 955121518 833434930 979117923 269020189 442647953 543893642 924317450 795158683 818586767 28007936 207124216 420536032 660614785 757092895 960035551 16709313 172279198 486953496 769786815 471968946 958145243 280190704 333450157 878161075 937409305 137237663 896537950 530075174 731767610 28946417 793210235 631839045 983824575 587425101 804544546 539840640 540813847 904708135 983546798 914956924 936291098 285390079 758722548 260481151 634141645 217674658 673608513 936186920 958360172 910902397 957620907 886109643 889148045 544335053 864078743 737792187 765595266 722120578 930315108 201705298 977649742 247518974 309360582 312371271 378460758 339901635 927521440 966309157 992078936 804851125 917218195 546324799 664789590 549593922 930088139 362578164 683196203 309951938 644450455 56374199 992803668 66763759 489675350 709039813 934952411 953811867 979020275 914854125 968906017 916204997 972706492 341853553 483014242 510088622 644145989 764361738 991380400 412347594 543609770 646357655 997279852 828157347 962036116 785332211 825879438 968659857 997610934 856093686 965187386 877618447 966843834 52479900 142604372 403379234 595623309 455459486 843620549 904309096 997174193 152096187 315575398 588422475 762779060 330499325 457827126 318181526 395787007 43445686 496772228 486871816 575033855 237406174 606821716 720129206 939977391 646124147 861841024 199568864 250414387 572147790 634954834 930501514 945961716 90441472 856830209 323912563 907699377 850451745 920585874 986029493 990709012 436593537 731326829 304132904 323269946 635353108 717985184 935087222 988510973 677756144 681987577 863711450 990531419 192296533 718686323 421242560 695137934 336514501 531126725 450790150 816035946 830870839 891383749 528613324 979771246 131708684 690389220 780222178 890497100 490566817 696545267 962912506 971488127 945817806 985771960 318857439 870766337 313771264 446872481 238577210 722479502 861521762 924581089 874780737 893307262 678801627 693364379 32241493 347045372 545316207 807957647 181096782 302879736 846415086 937908677 154171879 696398981 378199666 407402786 343652849 487792533 958054026 969468589 195816944 505783134 535183211 600262212 713261907 982315947 15486244 803460272 397967759 590566028 428859328 710212904 878835647 922133248 32290218 955005925 251863259 668623955 855098827 934151048 571434418 598970374 99910912 214332231 343083124 868719117 882081042 953751789 442698666 542341935 967794997 994878159 254872674 386931647 986441143 995504970 148982960 322492178 176165776 987619410 709248825 889364657 511502296 842763112 208856147 328686102 328013365 363090043 780319942 816140238 35733635 886868763 234946534 286113315 630727515 990135489 435206966 607501439 208020812 769980518 645818053 737926177 234623350 543698129 143978656 880180874 133603388 301063419 883116986 980634562 931195730 988052059 308679813 902187057 628736570 678595342 584917516 956126670 51358526 143160422 43463357 193976942 898938810 911641402 759214878 789086534 667644075 755768255 635942121 768833482 331834073 618148984 862697296 869144352 867931043 873289697 596890864 862094956 982192163 991940091 357497434 996582004 363258679 666442033 233576900 601339064 789890865 869420509 383005598 591939979 148797212 205815040 669663807 870822895 753414242 884163908 1122630 24257970 122548108 974366336 437751180 970550973 649314526 952157638 349132183 690702136 140420782 983684347 359769652 854843689 428247964 795368472 845993701 987386057 773114698 833528580 449390170 865655276 891847250 893911484 901508602 939637292 145536727 305259646 393490617 487674725 378900626 863630060 138544845 332512563 445814146 848248593 323027602 618470284 698299192 801725614 142929736 820988465 668199099 833010031 117303819 608452727 991508667 992479578 584306136 760818914 44505622 813789556 702353906 966452043 712439856 831118652 390198202 942685268 976784257 996651550 920790133 983734237 245567727 474803791 159138839 420812890 190134456 201042592 550443456 638571911 113484497 982734070 336839893 607276613 268072586 464579428 737398329 860206885 148403384 244769391 155130260 482351625 412791876 692143498 987236450 990503299 756421772 941175121 110760820 588604591 297469056 484927495 927795844 965239058 567682275 994247787 624967481 671142156 700007303 929721923 171096677 264845997 872412960 925343529 637274433 670854320 483679415 698324230 777051857 781633163 258708856 757710059 610112464 838014383 23973525 179365338 628144150 977140499 801330522 828063731 498904726 748460990 473978667 494023472 560038670 924969446 109181454 444865683 843021407 921868140 192218332 824919687 959520314 991789427 833215728 978851272 772387358 875009533 25647658 724560118 777544350 778173095 919393169 926578202 339888957 790554105 596273542 778616966 906518074 973357516 352631202 781461990 487487637 806452710 323767954 495774033 705050192 818931296 659312265 670992807 891042857 892341221 875026349 950271201 859772946 914328760 675258759 687104416 534420012 808617451 682767600 684418478 480221009 729653124 37298396 444121729 674854061 703498907 570787385 658920058 734840042 781789303 285146869 534367666 625899179 770201675 1978465 40043405 281189105 759411004 427001099 541561993 924840825 962978985 660253832 820410766 268781624 908805728 18630119 407142555 617427165 726119812 556786695 705476386 283245185 829847737 563973329 740014956 55438047 207633849 480009770 802902650 495228055 640359018 77137111 759634646 265654370 301329081 766422639 894955409 10811517 476336985 506977673 905160082 375907258 768677548 352139267 652115392 632829567 775430705 884883769 998298840 695194951 992683390 917449249 958136542 343277076 875953384 434885540 804243921 838058576 889739761 749193514 883237701 75429813 401807401 369100948 813966347 950692983 996953292 345561419 857896270 711460170 869458748 937680046 956587710 474358940 532699784 49213029 55200132 19343292 272107317 490623733 782880526 693389364 962834259 513263780 917758534 419045020 807465549 605315033 817673907 287095699 928363821 475267211 638114646 559956801 833710857 893977663 913460222 454662880 630678667 794405721 929419197 610781018 924209997 504743813 947085071 604140963 818106461 734800151 818120507 437781848 976113087 519984544 755802776 585227974 611183123 703932244 998848750 792594717 901391982 448041043 500476068 646855545 736374903 942412862 970368869 228446391 277261734 212154418 674500479 869921970 913125183 119084978 955018398 695740916 833678272 789161793 974762285 258589837 471293598 234138003 875363350 273829381 918049566 852085604 925310154 207046637 653649332 51607242 920607467 258389995 453716105 942415476 982925789 409370968 499560683 169226824 285631912 801222524 839628616 747150067 919939182 630225089 994995444 725806415 931089035 168228033 525161162 930508180 973601450 51301239 276672067 739739912 787268128 285623732 624701748 590744494 630398469 564351699 770736771 581943435 717625901 279460957 396041098 686975238 889037862 566594856 590345168 35988782 855397256 108796486 521795045 667740828 749482567 32362528 360180424 950309445 967462826 110794975 607915968 219577411 404405479 549541504 967893432 910391595 929435195 946961415 977519984 728660711 917698741 473749618 572405648 947114921 950128173 328981361 801517591 72905019 917890504 272227697 612845203 460377289 841750471 624332621 633090716 330142527 917304657 8487547 436883488 942457119 948052881 470796868 725091040 16751317 922507759 99857395 594523618 621248739 694991874 462442835 603703569 327728790 789785965 57187133 705806416 818981826 959485883 411931746 737669686 134297363 357109257 199697622 207857895 758812239 916386535 993110484 993863951 143868712 839454735 353497409 476428646 659590663 812328598 165615387 907193395 969719681 997925991 206309868 328667835 928006299 969078117 215857370 279055436 451728308 969233358 482178770 855203902 565991634 828556483 534261950 618210761 313411535 512243435 224748519 760449018 926841235 963171749 72705224 521430155 424253083 517769683 816065701 949063146 192881825 485221238 861695607 890829638 443265836 521639910 921633047 960110204 397457152 620287996 723036642 806180117 801551183 921229494 418614728 842277706 317747214 709803953 649385373 922806568 86287205 423918670 241423470 807497332 601067465 788214752 856992526 914130422 276403807 996774074 372469740 857252890 23111568 607961983 346578159 432937050 107940357 622571115 672312976 936182329 844189761 901914796 702600357 891132551 836836596 953955664 550956817 962755095 481062447 867151297 372836064 894739520 411460627 577750576 558125288 975906330 627672165 780929781 333184015 678849958 472487309 682477347 829927808 975277954 584457980 921038880 551396783 822450423 30031316 145262664 610868026 674877716 471376758 499678605 461720444 751137053 658941098 739352946 358862179 672812655 38538705 47853032 110496573 277908733 87236957 604874651 3507165 251363985 711555311 863467384 929932970 973435637 557284872 643392547 665135159 940832218 882364075 893380564 416477694 614049309 174200972 793178983 446877032 746101468 119185658 417547831 347040077 433765028 694132547 708663523 244755666 856640283 990527816 998491747 966268818 993568046 675394688 735006062 657857785 839830267 471588188 507341462 733744261 807622986 921599695 975537923 338959167 395353755 285501468 582797510 582996881 930105037 896476645 982819243 780560762 939541807 747923941 852441065 661174841 955068827 340559690 498993785 600237106 904590775 739142409 902254558 401267882 668559238 369712149 844545880 257185825 566409539 17973502 248232815 576075978 831689563 212324303 857271092 591371764 862386853 551701886 952535574 267472698 295153591 677403312 859415119 946877914 952217771 530010680 768869826 945184089 979314029 7105068 184745285 148060465 205755294 35194211 957624908 893308119 915598058 55370762 459448532 194364452 344970092 218476988 805564760 782815065 969187527 904248966 948018433 692936223 984518729 307710362 393209287 381111599 573233537 893881481 894789014 697852021 946244632 130034373 168785127 723943266 810553962 535096701 753390923 880835889 989302034 513175095 702721713 876234291 993703411 854760159 977219786 654355378 973923100 792342861 901932157 994372756 994426372 524826519 828597472 189914486 575946875 234311110 760137902 552296662 909898300 21511472 793971813 392693387 608810369 702954584 999129489 453861879 784350722 753174881 837917303 543039273 863905827 655539936 681489244 948333380 975047280 762269676 922236752 513178861 999202821 329145814 980272546 783126944 944058261 225972773 574675365 232273788 723440683 344576336 657885430 483731240 799500599 751970298 999359541 303360442 321206647 549328240 951540284 657925053 814710889 207490395 585194179 164560540 645405429 37464871 902694923 693985876 936330137 953816966 960019815 43866866 383853230 119514797 935962364 319923315 976236980 915172223 946611325 392962976 928662705 800788609 915677164 505821470 647454632 862980732 925168104 855684954 901954222 137180590 231926479 681543844 906593426 631447820 892241264 205857592 932390221 487208599 723061370 777834150 867503385 328636314 473442423 390134332 675078062 482158480 785738486 830303007 941167980 479623836 865433858 446263384 861654041 901961615 962860152 843262727 928971011 337479487 881025899 43448094 536829222 951953774 997665302 553924133 903398872 186578767 712080633 650829608 681724886 720592072 982499085 919026530 935344830 389860889 489198248 461738093 534218518 72966063 112693819 738787043 756394607 134731802 202892337 449184231 712596735 245519477 523252224 744786116 833112398 336572705 451000331 897997128 978158037 462513644 667998473 770608547 862272681 903753871 996015374 739940587 766295041 849712438 862712516 351928694 766131189 24672553 437015322 938609318 991753102 398476544 922582999 751685978 754798571 875153291 955373689 387042921 410344346 419641356 533544152 646487093 827990194 503185562 520656013 877632117 971263797 199132061 953648020 7652017 54866448 438026649 853049178 239890215 618046067 119098758 370658291 113299317 317588785 369056450 912428018 831462205 947228421 701936058 819144683 175298989 445338797 629744090 958531948 379587375 636868833 927656351 953690508 583197243 938701491 874241113 939288580 136781581 624238394 842906856 919241926 842088266 988665431 968358333 992134142 638098057 792559405 498101790 980347103 303788601 515210607 474348271 760710380 244414720 481033473 112209196 553395924 677996730 765167940 629248643 820267600 239251461 611736205 925731610 974606838 375087673 581632835 943423907 985773539 181664920 730655124 24143258 988320616 359597163 460423780 612619174 758510746 852552542 970188927 956943499 978989964 398024038 751434313 519633837 897093025 553671257 830252068 512317309 937364996 349878277 878385492 38405529 568017711 798139657 822337012 962451359 966715127 19513712 757514861 447911010 816549964 185248382 268204975 298081931 751365206 551361322 671270868 656472792 789744065 108059770 986157717 305012331 865124265 998707205 998759799 400299806 861702598 98319424 660523200 841410396 955382286 294859017 390819583 923641924 962114857 330660072 449552815 720913743 832360971 299151169 387172338 683338322 745435202 887530167 974696548 528596054 561092126 439612176 950935214 823382379 879872257 686685729 801472163 262922449 591581528 208609480 244574564 570532845 962377382 339373562 450471444 817307205 950324665 685327556 959690297 722221280 859766621 743827346 863811330 836043733 911944094 743327828 801587136 557540662 718374968 508198153 649860391 111088709 650285504 408787676 766534344 490824189 945002064 395293722 835761217 68409392 150998367 874215452 971845252 669471470 754457095 987132097 989974736 36063739 98578977 381368706 971317634 102887356 963998087 157489625 932377467 681275492 971484585 361829925 824521642 717533139 811384367 831496819 927636095 31660931 574333575 339808452 569301109 748694865 792265898 775033514 869779082 574273634 809591728 64948076 212474888 199510367 613889846 385417564 584239587 662832145 899040913 366231175 381219942 244462618 345099949 587774925 828961506 135705546 494595670 714038886 978852054 497147963 597490818 913287205 975312598 995940383 996881602 272959512 487553293 292113035 935662650 40992533 529422100 198132239 669153523 797773510 816562588 824897071 990404674 803446874 997979607 434195739 955239839 405434833 951584084 343355476 478220760 627583098 701040625 213673550 463369725 970001648 973026460 746574411 791954568 991550440 995025753 882480985 942948726 107141059 567095973 990424132 997154427 451729132 769632288 568343185 606230537 879507027 894600637 881725529 928651236 898796830 930384869 196299327 581988532 638072967 921353957 33149957 60542260 61481522 886921156 629726992 864664984 565117542 576697299 388021543 607416591 267732820 323411474 527156629 780400382 908766174 916088430 526685519 645537097 957481846 974819746 461714311 868791279 893968291 957607552 460142880 573664021 798539227 807737858 928718922 981961428 268975016 399895514 522701908 678680702 679976221 766573338 497710325 882242574 41650693 531184927 79906452 808124321 899498534 984338312 73206574 759742478 30874864 548389522 949953052 958697824 927793981 997661622 455360994 938638839 975595217 993883416 867988107 884966982 802435219 807374468 517275291 730298047 524800176 868607460 661989183 961500628 694436724 858533054 330135235 361551244 387645801 701548858 297583247 858384434 409815291 428563568 253467260 658078291 925820187 977496241 137757667 683949793 217799564 570373726 878916404 985951211 384635140 462955324 513823287 583559308 388293290 921264492 733749758 955424376 95902862 916669778 872089664 989388395 41257459 725802460 294415567 758873056 86523026 312683848 56319248 88941222 874395001 961340142 356083446 752418282 959070140 984821058 111379538 480762906 969608989 996605286 122627486 721914450 332438943 702865052 410913038 724069380 356707475 638174095 993486435 993927410 420449784 868875637 406683225 557084127 621960983 996901720 753433984 831338096 511829565 870289050 215577944 300111872 446255136 747110273 960182883 980901244 765726033 937173449 970641098 995918307 319355699 557372419 83456521 833788079 631239685 670805213 656003283 973702317 502889200 525998686 123349585 300655368 618526541 619273988 662854259 862657975 249859401 578165547 791195345 796362412 557388136 662272101 834235905 927810007 880133572 910594490 415499019 586404463 536683691 594239998 924690358 990969906 819342623 975591626 117381572 827697170 351243575 618440005 998591943 999379568 897043335 973814894 229661807 554480181 822538640 936605831 638258245 929640699 410354985 814253017 257717938 319719278 185820434 984944056 267997357 733239002 670630214 866809512 222269152 319657047 558578685 973260019 450278910 573006729 135489197 834434660 601293102 748920095 679444573 897177854 980932176 992868747 966351477 995088256 28710638 828873702 309125378 984907903 963683402 971922053 322845404 549705659 112258542 820058048 154281415 352711923 552604978 807071050 172042838 351598858 444140939 994846369 612385611 807099569 144392205 608270624 395932409 627790576 969926806 972816261 868073464 934620085 717204304 773821904 569613245 812073431 82659578 882060764 133548473 964837170 658474223 851429034 616823532 838170016 273680626 858080593 42108957 917036284 994116666 997917293 578116321 588580400 241105351 576445916 778010887 956882562 957973847 984961937 528404762 587506486 785888065 891219235 283121004 284663955 908627455 934629661 350949586 362644448 453739963 871496479 155790109 400003043 222404443 899779364 525610493 667715631 421647188 913832351 435909001 957079944 53938946 566933745 812722020 824889482 642097841 756884435 475894341 712282694 992177114 993690377 689600660 876404233 650359551 927616260 741140804 943962623 764155700 864776409 498995363 862679953 444368160 836681797 973326537 989131930 799581926 839298077 36814193 322627441 498289215 758735910 955803077 978382689 548377817 842490814 163871400 474641363 222512142 335905727 595464315 803006392 254587274 814107450 412411470 969991891 651141025 825964417 274240139 432280579 256846856 456522406 713879979 819834730 427059392 637712276 629088493 800878019 646370328 686716562 213846316 848321538 135895068 311177278 522945107 584908396 684874736 687820042 629404467 648412369 56728314 328058770 298828717 613045227 125164825 336256584 230147285 748991624 983502822 989456658 930133235 982452823 53479698 982042931 765788179 931525002 898903647 992779451 71753309 183077090 758081138 954149220 11511048 37826067 771488775 813757251 979229599 999216467 676237056 711416110 641969390 930018311 399098795 492550557 284440076 417878936 763729067 877794826 847761001 938487615 934783256 948892353 349094662 730018581 227344873 330974627 160628099 871992807 120591961 231259688 398641204 517917817 542381178 827574639 18177114 934676816 899530601 992016011 38107229 153225019 349316868 600056945 841035630 992584782 381725075 621437696 986036555 990292498 955751273 969329613 795322788 978227285 568550482 981863629 720971660 778763396 709103602 894833023 386079283 418806610 178917773 312659056 623953821 719325463 294030605 731141814 70738537 842966519 761917528 817973640 379986429 741315542 333863536 778250101 332251501 947150754 177125654 901180290 961403269 989245472 617984214 642394485 802029097 979023469 887902085 897949485 226020919 862741301 160020319 863665073 366909786 517415739 982978921 986848209 880011120 907609719 698676737 931764688 254745847 635782952 781144406 876420190 135137459 750295191 879156537 906887668 676556852 677704571 667820306 823299880 17080225 726508081 604856724 916851242 529781517 553908014 492855542 804477177 536513284 928595209 329332962 823609996 116164579 885542879 17354255 807279250 551854880 772124712 175259330 683555451 147207305 437879165 576104822 822449261 515894295 959232584 959078474 983177182 991617505 997456541 571788607 772248255 911492772 975890671 747082267 907395920 624641695 945890544 705356851 958136721 557378279 873805999 160222820 947233929 925060648 956706808 451237269 924844728 943929476 974303866 718411657 843439185 176361774 994674597 664354106 745764234 749444895 831599447 455656139 700873874 286732661 583295323 794625798 805773971 108628507 731272417 174227496 511330065 357489129 699993417 35498349 375729977 518006897 632232505 722791417 822018548 312954199 763248204 997786384 998818105 680227303 752432794 555792837 832935367 461016946 931861150 250950263 356115807 536135717 620396040 685335724 849916716 676109427 966219815 545006708 923547010 557519765 850236060 891334236 892479254 671588660 892772984 23302494 864756199 317521677 716331832 689785678 785853908 522190346 584257384 235857344 766084028 280919385 840796093 439658135 639786247 922242725 988138530 931965381 947708893 9711534 115634956 25839256 887290650 286529926 377968525 560462620 728430692 825158082 888636770 398075322 434847407 810414435 826847908 570968435 844383910 775684976 964526861 159403692 646406917 222729715 534921713 162985769 938331946 599551514 874187719 984635928 987737480 724584787 996766053 182172306 870821412 960626193 975874953 404262109 942256789 185532610 855325769 741909970 980357919 661454077 724155797 682206495 714655382 194990868 350738513 318883630 913996617 765159715 768492009 291429202 312375283 440776018 933839562 881486486 893367694 886133922 941290266 383552188 698076835 205144440 524434837 975401050 991000289 539991078 722381121 339687304 642351403 444882952 466518616 302030342 826009855 275309436 779251117 800335006 840218122 270278852 482801568 995010331 995801742 953193237 975379840 371453678 374787668 774198834 847256726 123612302 424656395 250436211 970187675 520228655 725379989 372287658 471592802 281664692 431806358 64044868 677095656 363768852 815395006 748840646 976714975 547350543 842337722 702630828 847067655 370984077 397144019 646640176 799759136 537346053 949045783 309662260 925726206 191764815 579635996 803329357 922979260 985366879 993030219 607559581 895118517 802281178 835360066 450707746 548729972 485464303 932288830 917978589 986835104 540394557 589517807 200415810 991041245 891165864 911223586 18610157 324104333 552466168 734403026 60125585 312859323 261150576 873250748 577539685 931436736 465422767 605162401 214934657 753394347 670278694 882819068 907975973 965099904 469516995 692999590 601878368 856848602 948601912 987024332 10714233 694870515 490895393 643652973 479172768 916910466 352175620 913864276 300551501 740882064 333075057 396263125 122389366 166713365 692071989 925503269 702950186 974705289 784126060 993970407 471306134 526372493 846437493 905384793 299031716 481326879 406877239 838818833 244347108 798964869 450063379 606634293 74064421 362992087 635811643 983756371 292807919 643586488 110272735 903608596 474977391 881443266 794545740 869953681 300364634 432750342 681478156 894067224 795196684 909859934 942480150 981071981 943562197 948451888 951074917 970369132 345595550 632034366 878160493 973128360 754072638 844720442 449855055 800858514 701467087 834266890 214043506 550400776 248995350 592544309 83835967 294750235 95274024 407832833 797770441 982004771 778307260 841235849 198011816 883741622 864353326 943487962 45550271 872344238 655507674 920471108 928666946 972198832 268316298 938379310 182905915 860912022 107877321 512667815 406502799 879902287 866351881 979363030 159478719 763834085 642943193 788547575 438878857 747238813 38701096 726384482 154069270 691999967 474853411 759855128 813485721 894054550 553958948 984189129 462420336 840811401 563540314 658634025 122073672 626699418 504952690 663715741 934715661 950137947 974702659 993518702 761400480 848422840 494268858 968960709 462986475 761541456 134130449 514418635 188289628 267633434 480328584 578715273 384171321 385082906 770806308 801000644 508437305 758130309 127009440 634175906 494400062 931731230 150602692 981197846 213918630 557139457 473443513 910531029 739493636 907269615 421102144 621809904 961700097 971838905 610012981 888352093 21354523 226604773 626455024 798197255 273576722 439273685 715507538 727091120 45286006 470351341 633422768 848888649 974343488 975017356 904019440 963805377 391969527 500547444 357322116 365535252 194601810 417153017 97497556 471959512 559696214 762973138 982784483 983534981 868291794 986731021 822541121 938242600 702763286 746319096 82571733 220628153 825213476 929973097 680810342 824576992 639855732 831597275 832985451 880619967 816434100 894769542 518385613 523190053 839929973 842238624 152112307 314977241 302426706 979261510 333378647 838872045 87304317 160650167 217228097 220485184 481909710 642583391 725759008 914562785 43330288 137234310 260373137 696898934 802632694 816823095 209020796 451425971 465015842 622611339 385691555 683245154 234612642 243939601 399890161 857499826 459968446 815281311 63115850 811223503 462731676 586871663 174047489 879685328 814828274 836926949 63338486 150626645 927659479 949446635 901570196 992751592 975452674 978566489 934474885 987061535 534643456 880139274 719529279 741526735 44187846 829484904 752400317 806203153 723566164 726009016 871159440 925702655 940239495 962522049 416451831 429649422 321945504 960268679 655783699 667940297 453483334 944302064 191341809 835495723 192222740 420043404 196664445 611383494 552507629 958395120 186199493 454011077 822991344 969654806 430818321 845710513 914553572 949128368 63098034 822209779 811316280 860602900 429855944 927930924 228333714 790790590 831261059 948379429 357284744 752745379 672462863 759361520 989280288 990401392 533064299 576652928 547991847 837143845 357219376 957064793 85731842 993238198 788685143 990915216 788040668 985411806 642264499 993580061 712086685 878247466 10707774 449801757 653442368 936115620 451293872 617619670 662875972 829115355 881405104 893116546 118068489 347033768 969970308 994283987 718819259 895858944 804507055 819851372 873289802 889680503 399909154 876539547 222851611 325017366 303498119 410081831 498771417 810878823 618911864 832161038 995901974 997667452 959485909 992317496 670363205 860263761 51685536 390682822 164345749 948272065 278899006 428220794 646520071 966270270 819622562 848209668 615741401 847878896 504671550 608354343 815600443 946043177 851591539 875515814 657226103 911229757 389689415 982682095 348776260 405712052 20116621 548690740 273797097 624266064 755597114 886258405 848213586 969368139 810355742 812711844 285686160 786855017 839368365 858397597 703747992 730366247 976898392 991957937 242710495 417731663 77830782 301528017 648181914 826513978 118046933 874243721 624042796 742200022 373324832 687664617 22933832 459138556 139954289 661154197 891426472 917764854 384878091 737825580 730778436 845348696 904222579 927520999 414321689 436347204 800416262 876950707 836539778 889329486 840179409 988792389 212532841 859408064 608733792 618000384 570407170 921085604 435575662 855252404 841804180 888948730 535107638 824120882 863451731 987764189 506365416 543118963 497386939 607844185 168737122 678723712 524871034 527811553 815452122 936520715 998418899 999118454 130083287 868099075 319302080 417183950 533128270 759754002 648733986 924436995 935133647 977052168 132939465 506009625 938669214 985103053 82050041 852749992 811378318 831898008 145611038 910000917 37648990 334169370 679604214 838747390 466953885 601986421 182432409 547035763 130830890 903041344 85001321 913818057 447820506 468419662 326168488 838708423 687259220 808275399 275466937 940950619 784979852 944791580 445453118 793298851 189583493 225342164 804429529 942657096 22717025 876903707 589091951 693008576 262691410 693041981 105857235 392659386 649142728 829878714 107226830 123775353 239048098 829161661 86293265 828387365 92152417 598471504 552938394 606136376 393470506 675275780 874829465 912140304 534449083 833518560 179339793 468958786 181303607 750345203 287857905 904011045 209690277 546068925 784450313 810920419 737424024 785416730 501877963 575154416 464418954 817428830 862095184 932127397 306202569 589534518 740088675 773807722 145785740 960388469 503980100 965543530 262309626 791977849 938223150 969327879 211174813 603347141 938356592 976834857 133188646 446253716 964229665 976132150 204523027 729515355 107054839 273039187 126774790 423618462 319314100 383430620 240136728 343002952 397034270 480935646 378534755 698366677 479801835 574820337 420081576 713692266 580583675 959020021 99805266 143516803 455774864 881477614 594617403 678279552 211286151 432580609 345847545 435305435 360158958 552400805 777049147 796807662 244224417 268388789 833695550 989780007 974541606 988861938 757654516 919326467 282269911 925328140 649898500 907318455 124891653 690116237 878583432 897439666 721283440 771438722 881602610 991178726 284538048 909712233 983930541 986150404 761981367 853214887 846458957 848246063 197524324 632489650 846910360 996774779 153972954 170407159 833955083 985492864 575971127 602357312 990365500 991533624 637230974 809831211 503033247 561433420 184382285 380254200 116246115 375872348 119434891 691568940 352838554 991900843 886893177 930183792 372289503 692911407 459511019 695275184 506953750 581814007 734993335 951441624 914488060 995860156 252598438 822387345 506960160 703751508 216906515 731997184 564789879 736818181 657521694 823614731 205998808 951301517 580152703 774420682 795371285 808494870 855399917 898737452 772178142 794489086 468741919 862450685 885820729 973788744 917550491 985004817 582489690 900629320 626700237 904911678 934473679 955658970 942261865 982101529 877158570 970102299 732125771 850617531 304056085 994040386 715676517 782505029 686832440 944498320 455237225 774107308 213783215 678340197 530555451 587676281 722702725 834885017 477908825 499698343 737552624 862396495 58167764 784351666 195629872 499227253 611899463 998206802 171683405 409314748 60473415 119296543 818527404 876312279 283820475 408603510 712431366 951221736 935425648 953067625 233135020 559318412 764377335 767882068 83256602 458318281 185556083 202449799 902612692 942068318 175670788 646074784 781544688 789110050 360918016 899953060 118137007 948508782 395602051 529375781 879337437 991372184 245382903 871760332 451882797 476124611 566735999 847431486 78404736 628620108 16543598 933917426 519367821 955587637 875606185 895356814 871127221 960612702 7537393 140173703 515178241 779355522 482600073 801823563 728172276 994358946 708316889 808492269 738007227 853865600 965651319 992877041 969365234 989471476 65802542 987254925 546542243 860143457 66799182 948981259 339877794 583833965 137869029 479294731 103888675 542599430 340967722 821020363 3869775 177286317 852032987 999193337 747209918 919283480 807968840 884619482 260620138 941859058 848789496 912916011 870661352 911581181 637296024 837214962 363515983 964872984 819302175 839362915 869784885 968029756 208864203 581015608 592279461 713698089 500117299 816256336 682545741 727884722 183834078 393929972 766182719 864063819 420148989 501500869 474071960 950828350 390129163 850990147 537153718 629183191 144843271 610365734 29433483 524553609 207273606 255415151 850128400 983521515 17202463 637953979 190411603 535639135 513680781 698770304 521756213 806950678 621706984 867052805 593657592 966187318 686567875 987364191 125160127 383158329 149056932 934522586 504409517 829827584 44493211 485206591 881145662 924777721 875751106 948996679 98697974 239862827 151761590 864979499 477522919 849768413 598437778 717898336 487232605 497825582 598717863 899911721 628833724 653207335 737318982 881478380 917353759 972008793 250103912 643673376 677108222 714075329 628039139 822644952 152110551 382253892 906328864 992153459 503741824 905189795 57602569 393370371 827185367 874375477 937706100 947524871 218748487 710005308 43801701 47855721 599065060 923375230 658217165 940181232 893421606 995552015 205963791 761748099 35153708 341896430 252633405 917986074 397510266 717862301 578108635 814462976 93590610 294094646 20376613 896381343 262289459 278481694 198054860 586241980 261878367 760763934 67664545 310397757 9356380 206991424 230368170 978351670 873508150 889579808 890532265 908143180 626941104 717514632 7818282 157509663 176630335 382608774 66549016 104838902 209360062 504528327 576907008 924221770 521226180 695988461 394046731 620632233 79917499 593570019 661193626 671057188 544953000 915470894 99892406 200432222 145509334 902863024 575592815 938902739 79872934 762179285 82478899 460550815 79401421 614243081 430603946 487519560 647429763 769404362 365951409 543528481 636107752 715515355 370163765 684312800 295811715 829941449 13340001 174388858 578403658 716378746 91877625 115220241 974913977 987318793 932655718 963378171 650842846 773663390 25641837 659472508 833103455 869747062 405266752 530085650 871135707 930464771 233824594 517161891 898658477 933219825 121624853 645997479 522294117 763157023 377939833 439247257 910127926 934894082 827110356 990205978 485757766 557544066 72327968 497785127 142503254 532108964 800338475 878756627 843106134 974365677 911343954 980112838 793359517 811299351 19507944 678319996 404957320 820921169 951092150 992078872 742500089 806985628 916070534 929133946 167275228 380890207 669054824 871023465 888075858 987518419 391174546 602070915 49623917 907182025 314054303 387113355 115401891 868966785 376184897 742142115 644688523 835796150 162264186 639910412 355673951 665165169 959010113 965185265 308156176 780254917 900623038 984959713 286457066 555017026 698694110 882717367 645289155 745331715 840279550 980255409 384948261 781880642 88919951 748045333 202804357 700454893 496079462 578883432 777225770 906077359 849231402 907035941 854880503 902370313 869095950 973249005 251933120 605741399 418550311 783340861 780831149 783598843 104022360 315137633 693449287 925865581 919867006 931641680 91464985 809447664 815804967 933066238 301996906 382595558 160744099 879384711 584436620 922817002 979186176 990206135 814090010 870333314 603646384 932990221 707400357 840836581 918621241 984448612 772126355 892597700 524747663 860833226 861140018 866680365 856404291 944395515 426695598 714677881 496826985 568138486 518123513 948804845 178805040 586396653 76096160 687927482 180990798 373353782 378820648 785984815 740562185 979301589 283077600 497516779 515067604 787491525 990168768 997752852 430729932 574339875 137834338 183915908 243183445 514384594 276393185 649035939 162974684 847339003 789569338 914339131 633804402 875461220 7620416 170021400 381761101 967277402 170733997 518593404 623964735 624969427 174622469 254852902 80688487 248723471 345885199 604274431 435493629 910035595 167462656 424915057 451205517 701715036 810093940 974105275 190238518 670735214 393329197 700588412 564652497 816236395 348105786 468738536 194298352 749232935 707248362 867215903 707874427 990307589 954951019 961020231 774882158 964527313 816848081 922249495 213679705 242450375 997027967 999196645 641915455 748829842 631265142 925069330 950519256 987970675 79525257 794694978 332210200 436507150 766816801 852951469 886523887 918785181 129198029 654117211 523545160 548145743 897274078 956225650 805017938 847655585 800092898 962652443 707816349 734373033 310627775 997414563 480201855 895523028 829997380 974861943 65400316 432416745 310864776 729956987 136730602 382326270 865705543 944134581 366890665 463943327 531364858 622324894 20914891 720941982 536435534 567918220 605559969 722032036 295186784 725286305 290208080 829952415 739325871 804146146 818959872 929771372 558491890 978549391 92267119 125098980 86632881 834401367 201369888 397954436 648465981 690689683 25573134 491369451 280914863 786871232 360238481 605261091 3826968 290085953 349882441 715291811 777152848 954317757 124442253 778905778 458730059 839203274 304867978 331274716 185536052 997730315 212943280 522997360 288966155 512757361 483182489 650521180 984244293 989316148 486312738 531362616 148367304 300723646 402974029 741881586 469688973 974560032 42482983 259351198 645392730 672533150 20283776 655452432 112476585 917900222 450220241 728593499 225279635 415256438 295518618 980900266 234063315 424910780 427676626 484312577 817415938 973429718 368314196 688374341 209098646 390674635 437627801 716172178 705857755 894988049 354026366 682924122 312976989 884570569 534936200 970371230 732952085 764450667 427564632 695713165 852048887 965904332 758571002 923298331 63435611 761737927 157615180 182597601 381307323 887752621 991996203 992387392 577505870 952697506 882129642 942322104 806269464 891055545 855984920 866867435 308594224 549086117 18292922 589641977 539794199 967450849 166917665 640733337 506099276 541811950 512603524 642847535 571065628 949239060 582150821 729099860 9182882 787412373 213378533 568931481 704303215 727370635 805852172 874948857 444587690 942305083 721697988 915985080 615536383 917564196 341525409 383664718 753048535 842227085 68756140 100104964 929712086 988310015 668369687 794806702 682224794 920221826 710778888 834473426 977425427 986693162 702343622 704445646 224141787 340715629 241159386 363594871 481084347 635207714 238031367 707311648 407695813 774973249 541062764 556492744 630181724 972002070 174949772 734861772 710536575 941610272 371059007 735697484 780405758 810851321 133923920 530567615 780374589 851731447 453136510 874019148 80361299 354185682 161526258 231519811 221414483 293024019 387611723 567462558 38141776 196900045 175102489 867680285 544767792 819665668 207097640 756379092 651984109 731184636 102386428 298315166 388101022 874854949 540771575 797963251 390774442 631044663 270202499 951100615 626976367 919269867 961524644 970978329 20190406 925493147 355724064 590143179 282897396 392640945 550563655 755294259 764834228 902064130 506383806 846740439 353127958 661237646 633004183 875418569 943606113 971303377 389186829 739981704 788227789 867799281 443118523 828795160 601093955 988683958 235146373 961222732 930878266 977249158 993668439 997074778 523111361 767035274 781980949 838321155 556487270 979153124 961892100 982908883 342199158 898716572 56060480 483220377 692314588 856736641 555995396 981631960 312075671 631199975 998459705 999139178 980821095 984225536 186288781 448468934 826754818 925552588 650180958 845764184 144280733 965047454 940689378 998852569 599749879 881483426 358023907 482617806 889561383 926050024 41056135 490818246 981703245 988457297 70810950 919434957 935206941 973426565 672177456 793417383 176513493 855399302 12997789 211335397 716340955 878110129 694903875 766553248 615143011 841826042 605834147 839526963 151837459 409163435 313899709 898789710 879791748 886349378 252036568 668275933 43577329 710701842 294787845 736604075 455112536 638946125 374434433 697123464 715250106 799983667 700709177 790076526 138837194 589061297 554588191 799268450 603140144 832175143 747706380 932908860 61783548 632248561 633706199 914562381 431789454 525134752 516509303 921457416 386730674 977569816 927922729 943443058 271629731 828725661 134241473 978036325 159347991 928565979 670670042 877431191 788785133 970012144 662990827 996538238 828782106 950243806 778021127 947282570 534598579 694274382 549630005 950786125 18094487 833424859 693610631 873238696 663091440 837378324 774067447 863218658 430764812 715596143 492632914 745596611 691485463 899556720 866369936 972697204 944734269 945282459 985607022 988437691 546577203 893480334 638876959 898132331 788184160 799210176 339478937 816835281 580953288 852685237 425100719 442391338 933199073 936121714 414616980 872560462 799873922 980139094 571894410 779053501 526625028 909275157 876355151 949258614 605636085 615851070 520102643 680738115 35566308 972978562 30298538 278141921 308923930 322914171 616938697 877575612 364941767 949300159 618276518 654602616 994458029 996665408 276989100 834968604 19348075 252264207 370269953 501207554 270621669 934869538 13674479 173569089 544381842 977123974 597924768 678907672 918991028 931410391 851844011 922829573 640291282 925804988 535168184 845126578 358902485 491600474 598745756 879427252 189971972 762208717 78432315 324004109 141660085 571757796 832760364 853883804 988754931 992946685 275785522 393482769 929428349 944019305 109789964 349225642 143712426 852494567 296894329 996874161 881531288 957511996 348353304 409717982 966932967 997167406 300890950 489712135 652421633 703081268 282419843 345072204 677279164 811891661 14785532 695336184 996066163 996241764 504956752 770193007 171710786 197249958 831428660 906696724 169822017 570891863 146978515 574640533 19679337 122873583 763332988 777768972 484801591 546600533 18842873 541713559 464681745 652580896 496018429 520704517 934123447 958702515 747321338 832163592 318329505 386791445 415990367 650578494 478084997 569858792 377506142 832839792 660803206 813533284 648416979 839115165 950264272 994748521 453311857 674093367 453479699 673370083 603201091 789144936 846830680 965729534 245460319 902673483 910321363 991593615 854474127 899267427 804871212 986576911 36557066 903842650 713537932 759895656 952264647 982973389 22988738 618702618 489101112 573347943 650612937 952722786 27718699 430571869 208922813 521184797 936821763 959463868 30177314 68290121 846407003 873696495 757647493 854704377 582157730 995776132 629823171 770331667 640248497 870300338 231611173 562679213 203046939 362495778 964903798 983989163 175024158 312788730 596402386 878707944 735417104 792837201 518557096 559887803 185666565 731594063 888622988 931060085 719869598 742176667 185544998 317595864 621400348 658740154 658510718 705405738 748912822 841315989 163559630 755716859 582973060 799894652 93214366 858899618 998384273 998559803 296270062 843054353 849955215 971065808 187992715 344177873 90426261 808080752 817170939 991703196 679646982 839718706 654408109 663901890 630887486 647738152 656125782 682181484 762818318 877170671 529929026 828131077 79386718 498843419 495163091 957863444 722451397 755602730 482654530 616781849 719934869 843111849 350455544 706821962 828741828 991458800 513636134 840690111 61010753 387673634 276591191 816390997 496672199 593340160 577515989 983883644 662627030 805703925 814081287 849872088 604529055 847729426 306439616 943632527 103597074 596835438 8607028 851735158 184490076 539351684 191580423 869286107 876680712 996177536 713810316 884207310 982523921 987018480 399271120 477199981 994154508 996470408 276986220 330918253 70789837 201719480 907792568 972536595 399629567 742538298 605965176 720165908 961885218 990008403 552238638 901714219 672703634 861443053 518944152 758007812 642657925 770099562 918255386 966823414 279361061 596519536 346604311 459765964 876580986 940864399 858697148 868706775 715379625 971056543 606733860 649357138 378905353 807839055 445555230 690243954 514379308 989491805 591277353 605132335 921536564 964100057 240107700 982601220 774208533 900358292 823484282 940215884 233699864 802806907 296600880 548503931 302693916 477639593 601761821 878510871 503345018 633508586 925391169 998719664 887332985 940937214 815692877 952978976 59536439 111845643 160766364 474973273 572625947 898861555 36894714 790498897 940430500 996736695 156967890 872978479 666468145 843192412 242391806 393432847 747832167 921467473 938315499 950773922 978635804 984798407 651626363 779584503 400103334 904484708 95205838 424416576 267892110 421584655 713644767 889350568 360405291 684126795 766121057 775996172 766119934 930070985 34058725 581687173 347706486 953313305 88162193 135506114 32170516 852526554 465821668 624517379 956888025 969625236 273121421 428643992 486939285 734919002 4567612 977510608 524564565 982774172 652151706 774128052 888518244 999081925 350297986 728114930 261795111 658451807 773735337 889992494 667357546 822426673 837702051 922885435 338050008 513727322 276520011 385529793 688700832 938667259 709568714 976434606 31149942 190721422 696983105 961912558 917543756 950823436 13987321 920187181 611254157 683228908 385226695 857948292 319295830 971845677 786833299 904549834 765204126 950608365 517777776 930291312 442655416 530690072 722053471 882292092 199244922 859914957 210939239 819175599 612065385 816034755 581902386 971039670 666274557 785443605 988709734 992465253 126449079 320361016 680851046 982782127 866545532 926541346 593953796 867450642 998758217 998778974 484184774 917771129 478727411 734534359 818441178 850155962 745326416 887482970 728558819 842196903 426466420 621792300 192941553 581622523 412120255 523695596 764644434 916371583 578237254 805050216 859022919 892301813 176496586 606063099 44195622 339603680 878323474 921379168 729610726 939349455 27377691 853532248 818421908 834672239 757243006 768110622 380470539 699019901 818019826 955413241 119016049 894014527 402039881 452922741 726075193 851693505 691277044 708067580 893725198 954414259 925498803 951690597 715170601 921543907 998814200 998842307 743002430 853730232 287701404 773882483 166689067 912229721 620508332 694497494 172738196 792693704 437578043 730457869 367834313 599604781 631407791 927324084 9725629 978733767 430709862 700823464 668049641 971735625 79597544 226244383 286351022 369439913 697172231 752929216 408638028 850567563 550507068 797265491 754608904 881832650 98473620 305599114 167405506 653209982 224452552 620945418 893609545 952749729 2463131 923470340 404628033 737055374 492838182 886979643 73063350 898207847 794316584 823089155 936886264 996129988 337506776 837697527 892339571 912126397 520285523 990776058 988372597 998269081 845608240 927985727 988240211 995924094 460968418 770120056 728770851 886508194 540474997 729184932 476557774 959586880 348509116 642391715 876915595 997739366 549191930 587006810 553776745 729400207 72692129 152037407 291027364 749185417 683994753 899976593 129068568 967380900 923839860 960857700 526961871 870058338 529789068 953473157 83270394 416705486 473869715 684270489 881756587 918502469 299028286 491332652 933740745 975070253 145385964 357049305 750102381 856845157 404319841 449885841 622028615 840647982 300332494 513367484 550191594 555229085 627741936 778396233 822507947 838506081 717861843 994372558 821056899 989094587 693860764 952727171 482809270 789923531 590086564 880627938 776417405 845018936 426694114 462151488 133185893 481921365 84922993 817044247 175141049 637635876 611731405 675161972 291453210 822656469 651629290 816120498 520496360 818253023 666413361 942520798 946588045 999020690 199007904 719016344 268523539 933865765 947382905 991238090 783923013 993225691 782152384 837576216 633507896 915561585 846378145 904532863 990056563 994980965 357921609 426106993 200360416 942379761 188499881 820394488 323290160 612396769 920233274 949792098 92075936 127827201 959996868 974746866 372353885 621306206 165180878 572318881 747446477 808880309 768028768 818201580 86761043 751448883 562084081 983475215 553676629 657060024 73719956 158767506 46718655 519552841 14203091 179879489 713656441 967885256 312027356 816277271 408973200 999028141 284986169 551675587 315958903 590324123 536041761 610209327 124798336 752139125 444824696 535255910 754962858 828855461 744981267 935032926 808516427 923767113 980432376 991236491 198545636 565956988 592886535 701772841 253612956 365965414 537791783 900532442 170967620 232792910 895749642 931140943 441470897 918959057 756281785 959685678 608541670 621821152 423503863 426559284 665233346 991879686 222151676 371732020 182300267 424655042 179459852 652054871 757667497 783202264 560709725 852539693 171213415 418557596 617871744 920322871 138756044 968129818 779764458 790110860 840149209 984671601 751711919 847134279 112328583 872830978 38870362 734435881 726380619 935577285 394533411 637685050 57823515 373103052 602035977 947645391 683865422 967693080 677571691 754934691 163211139 306468788 720326723 721686779 676127016 968125142 420597680 458517153 19412805 859668739 531936384 581310094 510758712 594281365 768107044 981669455 543407864 695599067 541903283 714159101 604668195 765406790 742730923 823368341 604897955 818724868 679367787 864409707 744432034 918863364 415354203 811839064 15152310 436378131 429404340 477511548 301873504 634833905 349153847 505155020 715696719 832473454 618597344 783389306 659492084 964829037 841880218 958850181 311111423 366975787 685072840 813417436 574028762 768918243 13836114 499293633 402611974 618371008 270291398 329367714 685774733 992302774 919586922 991757342 468800174 649201218 804708280 852466686 268026718 616446886 191487431 393442975 334871190 540288911 998172600 998902114 218949352 315518643 870165708 966451891 916489927 957821807 819598549 897439628 22624558 934187876 22699856 302222695 651814533 837633827 69999015 666988145 708814931 749446098 123699841 975141235 387186417 887273989 222884655 703042920 271433356 333785922 396533891 964716170 662157710 937205881 724503285 892670238 982474622 983068867 341924778 994394925 331215819 566700725 627278274 969429322 150401263 575845202 43976422 304135101 139866179 822592170 21563899 660634229 4668308 369285815 225954696 736807056 273175634 456887678 427075006 771546943 702921625 834102551 219904885 425825709 516462625 848631085 909159593 992064098 975800912 982869576 106771004 310730263 654262060 817683533 546281422 857125435 604815694 922782166 655938364 873757697 362105298 680070261 241298063 995398647 969129173 972562034 360058810 624130375 79766762 948277901 890482127 932173398 771693110 800303809 859571443 861383027 439159437 826018800 625377860 639893307 447868758 701412236 261410409 638563380 321680410 367936891 139049528 416572924 729968215 842732769 560519237 889266051 790265148 817885312 133993012 593533604 921592137 990290593 640643224 742645542 917788148 959175967 117529891 290095379 449699705 725480080 745628145 797297379 90642853 430638739 249472916 254084746 663693151 910254187 572476197 815956092 521002145 816531718 779749577 894317168 764600252 975177391 544698360 742838327 756172735 880760584 38939703 179219266 558727456 758189577 140604781 663524974 485809687 930886167 941486799 988444450 108187081 290058293 638523147 656530086 893960452 953546263 479529699 592685150 438195967 534346838 975731070 986318106 563882613 616409644 43424034 233952941 319586978 624956577 443259681 747368076 998154030 999257063 186157590 360207510 188149488 889948863 865376893 999370363 353239110 881996231 5267396 855149024 840529250 882962520 758690143 821467386 474296296 760616024 425322056 704085563 401915542 823547776 578553183 708815123 137608009 497181734 633125940 761259753 354573556 391200424 180543183 819511999 596015167 720010351 661636253 738393837 576496882 975609345 382343280 973940694 606582085 819065590 164730778 955026812 67926589 789113533 829348885 955953030 987337769 995164244 232003525 445286703 630672945 901292079 947646025 971926643 246269527 388125083 144728495 176895404 862658096 873548874 576354872 787837736 115112896 698475311 408248754 895472576 313160942 342515086 11268825 556377763 880292096 919264465 292865163 878848279 37786913 854691675 703510579 976013057 51683444 60556818 113894999 762898231 164627394 195407437 35729478 302173144 945643236 967580153 875871893 902978398 386491434 938667034 476030108 832001353 998812243 999324189 404660595 992628998 380426562 733568663 237948213 874582680 864836117 908883125 387121424 788476217 721109481 985603023 232887278 663524202 609029690 645122787 866319647 907689632 380178615 521571005 809256669 817981876 145703592 894536280 884945908 998712559 378349387 737722845 510972226 754954874 257389508 914871764 83102305 404655092 641744782 920411935 315726960 812181063 401472393 861669006 160986063 689311826 973981212 977239060 593673092 727594945 562202902 658673930 379365410 459891155 996984540 997044750 490321769 764505898 467022740 518121789 493638327 550182587 959816004 962989857 84051356 824004164 584704088 964925370 533536636 872673568 923874568 930734522 926417175 978094464 950438799 963096485 224738777 268491636 783716634 863423186 672251797 719005371 676178430 974368935 207147886 925566445 456088193 876760624 503112748 659360016 122483353 888587250 518176866 543055649 2121405 853694923 134521457 494944355 346717818 416249340 436061737 685290373 598154056 927292140 70599441 867217155 372618706 898592238 594313759 990178868 923041755 963694957 587921160 681826767 130666912 583474291 823723519 838142171 588244344 599812758 114415045 440271090 405402369 794418250 447694376 680902791 868392164 887165763 842139913 912999179 939848819 998231988 351538215 827721257 898859792 970614232 295840705 625415626 392768824 885344301 291845632 630216650 137457283 207433675 113791076 431907380 697894565 903701338 819199611 997041810 946787026 980917502 162462440 587407361 323564085 625577581 342295679 572522216 548437815 643667418 704598327 932139240 680614832 914740407 621722277 829560075 46205417 304101499 69691519 854404684 538346455 868873501 526268660 578662252 986217162 991204684 275679491 780319406 923500209 940350219 286520585 798151449 815308441 979453937 420531038 753397762 999097534 999328789 816782633 994420399 931618539 984179111 13191842 735704388 962898835 970847468 619433074 836572162 589076433 706736380 717161334 841942525 35307002 887867358 197738348 841442645 512407064 666350398 620373870 853147079 186579033 609494840 532499874 689765516 405161126 638415769 242168957 788385735 558999908 568871324 211577314 299655096 210999608 251983426 473193999 516311877 50019359 160990062 290223886 977597965 332104119 619795023 322564405 709482471 385979772 444786390 326751698 857478446 164285312 614117065 571537011 727161572 534508408 617628174 322417577 430906075 64285823 239688517 173058427 437204714 466900804 910085596 755475358 904281650 509177587 870447851 715523770 728180227 434215363 685613227 681657691 991739867 391058708 590221003 686902059 964018893 68818039 105499562 967212650 971470974 164177686 609945613 994841146 998998649 920812761 932071072 545653838 860625805 448120643 538610689 198806508 747001605 369967893 722546812 468026900 729106073 459792366 829309251 650402002 771504119 925414731 989938443 714950603 772003520 392687909 473562173 96307415 527998201 453221475 539483936 102483528 540996157 743758582 890892261 826349885 899902206 872164411 962170785 930561008 936279645 577199960 878145122 109248364 729868149 849762027 971429569 808636799 843657157 576904335 970610646 340269236 654028315 141214807 782750820 368203273 536433566 494217914 629748918 726628146 806664659 737237891 860408806 761303041 941940653 407436245 991658611 983610284 999071374 769498168 998314051 169776125 812418744 747210746 874438048 46077120 860882263 424993233 864945005 586370691 914583860 440370842 732535207 889368683 985890952 513194260 878533729 189545953 689895380 152156193 375927076 311770455 841117350 961073625 986208559 89410603 685570228 106267362 828993735 520401334 941527913 952315477 973431159 781338017 944178758 830250772 858408860 713570999 802929432 52333289 888109724 745700609 849716415 375834962 611903384 404475329 744782747 708959980 966475846 349038372 884023171 243494064 933373975 32853910 274878129 765536992 897184715 780412059 913214464 855885223 880250009 665699415 726135844 790561699 805300417 399609182 430548055 487724598 892963834 769530420 989927665 440264613 589349844 155603215 744068784 524364509 970459513 28447019 522548887 397858162 814358946 998407740 998532405 64567798 486830894 28372303 179627711 576532003 800299174 519916548 718798270 36713764 295575016 634357824 867632220 186148653 255156150 695078938 921493588 363554565 927321017 571607276 617668197 866041114 910790858 808970045 837648127 456828344 686691407 808977314 934802152 548299411 555833656 993101148 998387218 466768082 652128462 640625107 709709657 513773389 874150753 201919984 436153449 770589274 834824635 769722388 982071527 723132680 875725578 171049157 877680506 176699129 779789907 794020204 877270815 431428883 988857380 366389619 872854417 491620421 499157706 847938012 895191057 565333210 921854007 13827770 591102389 525909587 839136736 436578203 874693414 653961824 783604647 388715985 851687660 900577774 955769340 136607744 280129340 691099981 694386435 224261456 470645409 467757902 665069759 720740297 874586516 682010476 806086194 350067762 860208910 109508323 709255078 982491824 986921109 370830748 431296699 400784974 737948329 217913266 530628292 486853007 565419084 398175394 918214797 558040924 910941480 392194058 994999332 67664785 903363898 548479055 593164245 616426510 940845371 612117894 911724893 331724028 901960425 253089211 896325132 960369719 991264010 191855061 384342092 549848089 649707839 830173263 911807290 191676428 202813895 63527130 975914526 888448379 932560283 672915084 902142163 713661673 726289309 472203252 923335601 197633489 267238720 923864662 993930005 318306900 692670378 170760512 271552552 768695169 843782553 267184424 599378821 155075984 907880140 687808868 884562402 73076808 252072270 422497615 885829518 828312918 945989055 411258472 685507655 812782305 827349045 651583931 863876993 25046087 367118771 141324808 432557503 601874920 956005241 537306846 558355762 707769366 929796029 840276229 935122420 151936350 346925454 224772095 889514644 227462398 548054925 16024339 295530279 534026655 949496168 218404213 946614122 736905661 793278505 733347165 839469025 663340479 988304610 471093052 646820572 200451666 687434219 44551643 288249790 230811443 921294617 869823674 933192270 200919674 744792687 530027726 623998428 255490834 958631970 780503442 819605788 990906164 996178182 832545764 857093355 38133662 640881652 977292546 990028042 861685996 914578888 74416634 313256731 964950828 997581239 431930763 541880179 426204829 498639584 927979223 996334646 958545488 958752875 181303731 202101402 554071973 928992417 667328600 916319539 528439883 720365493 386240005 403066208 339135654 614720897 91515959 315108862 417793094 865129164 738986852 968333074 461103572 599190784 950139229 979705824 6216327 938444851 714182611 788382668 305798201 660538885 945833641 983576041 288232663 915770983 229362475 755790584 792205982 887505817 671782086 976165142 362286527 757034420 707823343 916760743 978031065 990576219 779749529 906103661 248805485 994559570 589379405 735097393 822007574 921609351 805004784 913274229 226690237 968696113 243728126 921855837 215113868 788719319 923700407 925702597 378634142 456032199 129674536 435217723 252054185 365352435 838237842 943701344 980256137 998505899 809785059 826050991 459694977 611179387 956360744 965527843 56271649 710526345 260511793 651768431 867619748 979367848 992872740 996488562 865531722 981057086 799709738 947592928 292479259 704787077 196810991 566547812 718768330 770658224 716310232 753998835 161400926 815993946 579748020 749343761 258400889 772763190 683220805 953459124 404474552 479331344 933049975 998492644 956030733 998491566 906584650 944891854 916813693 918511181 965718578 980065223 910059929 960111029 392361111 437906274 256437795 353408351 886527908 906329075 721745049 921583077 471221321 642350179 481217750 645776967 688890195 691264206 955843742 973576108 936012845 958932284 908380111 912334813 542909825 868956041 714007542 939041852 222435436 912177493 277574126 898955040 280402582 726834054 826495664 939394924 116081950 969227124 308919369 620790363 436542180 669607138 280125838 574560080 993873309 999048014 904077064 945298738 184931824 370092237 208011153 354006383 602855524 840689413 529581101 633123000 910382922 932431596 942742164 950374148 885331967 957379276 623976580 703533298 423847216 594974636 358322979 685962056 332055082 661305347 619422217 966155013 663843125 673494414 586554795 669860996 268029930 549769558 737378513 889679921 872832502 936877133 306399274 796312156 233418072 861849708 296420692 346761320 390980499 779461565 969153220 986618684 598582468 672205048 251826868 773570542 526451796 772904568 783686509 938545363 510130005 680334580 39669430 373274758 107265908 194822995 290982079 370432778 236115432 651325995 485099405 898144158 532499206 944026528 756776300 920905181 160868327 780468053 984051884 994434136 889556703 981454909 146628041 861623553 948297523 950685280 985875611 992024503 916573790 946850835 528422688 877069516 787556858 897458553 391098103 495978155 253456709 505939934 755168636 816969001 417231919 736885798 546985663 582564669 690665635 727000056 505155745 644654901 344906980 396073691 49878911 959715763 515861503 957966002 468536099 866024579 455202507 717679911 353218238 635005891 494543747 970016314 54725459 400280379 660884061 956658019 553608735 723137021 150359725 623806608 287543434 529533898 578749781 649515549 717444678 918929424 268777985 349799539 850914672 981022343 833817592 987388995 797412273 809317184 951088633 978125862 52244608 602366583 484685088 776855407 732430139 897529044 170610892 680374349 776834777 792433943 371722531 603029678 929766821 957986884 128278563 584418163 599791511 744458490 295778974 524733251 436045734 577322485 791186853 839054123 515216817 927829579 750403254 886838210 736083916 935328745 201330505 210159140 470898810 779002753 805652278 823767601 776783837 871318483 337199737 723108587 985383764 987822682 784452579 826143040 805641810 939633320 52176273 213316934 593534885 786593295 421853382 438518026 504854802 973853873 252198478 593455359 719489197 911942647 678860797 749047367 115274100 917007553 299581466 794567970 382182096 970565801 30657933 151481019 392531512 679311835 505117356 533773559 998392738 999392147 132058094 467699972 616901105 738130580 799795941 949938799 732811381 912120212 197486860 572251894 729822837 744424282 597935202 807473662 271548795 301248822 745036880 913995446 136883348 655669163 712317512 877890639 307678817 938180017 851391378 866664993 267591822 990499841 638176228 883188682 567386966 747416910 830637076 949220509 587198354 673583006 642940627 811001248 455794337 494782281 991003248 993465900 379813215 515556148 886292061 960434544 250158280 300342263 775449782 896378308 425571094 449169102 295770250 828005476 824921449 877097523 630949483 998753284 636170807 864749240 159956503 432320954 677431632 939194269 950705031 979240550 99074760 901271692 22306298 689763483 589733056 632149368 847474758 878555474 425735235 468287381 336372125 853109740 852003671 914089637 184057132 292761129 978170690 978201177 909301496 983589134 402075150 650453605 50405508 534995243 537493962 701452217 285378878 415679889 295666280 884579414 897612374 930762729 515474264 971864761 49241053 766208535 649119519 979339034 672510710 778757587 430955096 866134508 7282349 198567503 117751742 383445406 148660542 348227037 901863674 964465498 362355125 532251687 926551817 949241714 900894536 960097929 16340131 344802174 380291990 652237263 907279939 989426822 20207908 882270620 433759791 996062428 537567806 754385126 116916404 509848269 785514570 822591864 701974007 959211164 718195621 744834506 821904428 857459533 618622214 701362951 923840849 998130243 113715576 144815345 646035191 873596767 837268926 915073710 427571454 581944920 68368021 246126863 413374072 531969945 579233263 651887163 459895714 891098274 646307586 909861841 292360672 381343704 404697740 540870717 257460236 832339076 380873409 715251299 992435085 995436940 192583853 902858949 366445250 931004328 569448545 769810227 742262816 869820468 322706969 650578722 42557908 457975765 184921301 265336639 732067682 747349102 115492499 541450818 295388235 719130122 25830071 980220797 144004956 856087737 226146511 793743489 783668890 982482045 606182978 731661708 451822474 832406474 559206066 629304528 320139383 680699927 982216705 991207250 629647159 683215910 830594365 990452480 596514143 713375462 649932173 852338229 645833518 843664694 84605513 351099743 932917460 958518043 350158769 423954128 972964491 994851721 376168204 555325195 472124303 958092482 204566221 483338981 279876331 617183234 318183915 746896505 162548046 200948627 173551913 977797247 520977768 652562231 510948084 541105045 563575519 982997241 366555457 660205826 787179588 927324364 700096323 874847200 843801630 844309097 557771444 680848418 82590148 100059816 799617071 833503603 435049339 972919676 246709479 349997722 490917927 640980813 616737717 954075542 890541665 929590130 587181016 868038491 807266105 969853961 331118249 869833436 413946645 900350943 706272785 757782381 268290064 585385271 239796628 855822667 38787223 695390676 743768721 748110531 3823065 814238874 58832297 463170293 452801320 932154207 21462598 296096427 469309387 563611189 185609042 429514552 914179847 933511681 499896983 894924893 576847445 810690020 84344742 843117646 398475572 706807356 137268522 359295331 576009771 869834172 239600894 240525210 371767732 555857723 968102187 985042638 579025738 583716697 702411446 845152503 128894094 341327624 795616721 875734800 745988243 977627013 857491527 972052668 746000336 904207209 33497631 473676561 124677974 229523721 746687648 987493506 169345089 853030909 905790644 916154924 586148906 692763869 809017520 930430900 954056472 997377516 929667652 985752134 982165884 997704557 628793453 822814690 911555971 942931279 238117895 716580622 563576909 927438522 817469771 891662075 927333275 946125505 861420217 891033460 428284333 757484392 244128048 249721233 653907261 899679312 74504883 670873267 344615562 423195487 203496531 443259088 887912592 984386635 245090559 836456879 238674381 748709859 588387725 996860707 20442602 705306945 633097638 768176735 831768621 891731923 2147220 153738466 14805551 701857176 559857275 566112620 342207483 948863175 497280897 713387833 824542714 914766327 244515563 778385984 346772606 782070084 330462874 692342326 734228295 896896349 857632876 977126336 694388111 876343857 498076895 601963876 379041133 406791135 576546883 616526419 791136907 859370436 488312156 834332085 397292636 642750807 482475671 817528993 399120393 534962406 124009719 559032439 332044716 337958468 24527896 685067867 787572675 857340977 106167879 582302387 691457390 811452142 335810487 662368494 828396345 995352161 251652154 573717005 732766205 884580902 472904217 618787009 904824903 962391989 518339418 713406555 166563262 634052276 878642393 908695208 219670840 784640191 998730039 998735712 625663393 730072852 676426843 979635864 429281295 914876644 673591619 732561248 976787690 985913444 804152863 867564420 776687906 871194786 3042635 114098107 159536801 433684909 443379377 579563867 42233960 800841609 239666483 415564152 167537453 248317828 916238859 941757942 144359807 310631313 496679454 868494097 929918714 943351626 645278264 698773746 126059091 680860483 193017857 304984466 556344726 759568049 255009280 462380279 825825889 955931544 684586262 784781736 261537738 554568719 409988370 745096969 26897161 477510329 278127306 430400889 717458383 928522742 680629499 799720484 474785908 508329960 470885979 626569854 263126539 816966569 666054549 761407998 875093290 990209319 371401463 938420256 453299828 479286098 850743357 930786548 137223925 288527870 420320548 898463018 512674266 863426231 988983111 997422027 636380401 642209249 889473030 997361918 414141447 629139947 214896066 633437564 568371061 626009814 156719024 952884118 941794292 959853809 518355945 715598821 235426290 673927943 549287265 606816064 607319536 872559820 333738682 471423259 166094860 827466126 858184709 971339727 711114154 944998413 176772412 758212608 387685179 701032697 26062850 419249416 785464534 942427435 450223484 548805246 462857204 554315235 271155927 674671177 450100872 623844894 59225051 775738522 492884074 981648686 485195681 601560577 741210048 987015132 908460654 983529082 206210540 319582002 678474221 813478843 200464725 237068119 20821819 977691044 471576332 892866975 565301915 731737732 544203453 726285526 460890442 867134062 224250300 449376164 347546483 649390018 492002910 650409600 97615544 146676404 898517182 961427704 777220250 994356800 875144775 915905302 487453979 593800201 465452127 474583557 410209527 870625418 514147519 803730501 168813909 891569297 896272659 995043262 651525951 856569320 533353797 999359548 577173038 808137629 80743319 557069725 925436604 989024057 146257551 185945841 605589385 941636119 504816164 633813574 161397887 380170729 610573387 731471276 381350819 976060841 852139360 884237432 567369184 808775727 13597346 404234183 362559341 623509201 216216055 594807334 834432222 877389169 725277513 893006454 426167099 827690491 520898002 773600334 630250488 700442002 823314537 973837607 691108188 694027372 366640146 568524453 524696113 732187597 978222765 984318423 54525041 586993878 112214939 439003559 217764819 631746919 522926 653399138 834339564 994942111 343349453 652740747 570140221 739837758 28888991 858295382 291211904 381406469 652488180 784853604 124803901 169991595 538801729 590266341 16621287 979664676 787437501 884646774 397974670 427164847 22295793 106223484 635617486 945390569 880288003 896827437 485711725 537525425 612099902 961546820 276052654 614907401 278357178 832860653 136823168 329668577 455006402 530219909 758002239 903406337 364653893 773698067 308207288 938475531 101328923 740956586 644045517 724530299 811772963 845796290 864053690 905569656 151141671 240995000 889445781 968101186 628698441 744889572 800146267 932152576 641428277 911882135 476842735 823909350 146572917 899923107 100189542 390788691 341200233 666560238 106219745 532263155 963004172 989153546 985573580 995763735 515284685 771750033 564995221 989687564 99938529 434789296 697163185 825881120 682665924 779163068 382317037 549140793 689133317 816827750 506428925 573278701 360330109 805153806 814288106 998041498 684570889 906115848 916840028 981823600 434216883 920919220 254520280 940819988 414816537 435616280 433197199 897925312 816439144 918775982 830537833 971134198 485021061 680530776 580175520 766017816 324273745 948427519 358128337 371776090 378331395 982112940 487347622 623874395 583102980 969740284 255667004 969691163 722741298 810150728 381283861 798491040 890169234 965549467 682961532 744131728 309114767 554104794 450989400 638570738 482210728 945398604 201371464 788709321 273462700 494926320 918373995 973235610 812543425 974045206 810681466 919666079 339614258 392586332 262560558 992933656 311196217 432522635 796141742 915690013 282085903 434966134 453801335 855097949 867916623 959389709 399870864 446720819 396549141 937521447 86209803 336074972 126848900 929352555 767941554 984334238 17233460 838747632 619174358 805702340 334060745 530621107 392385953 618152230 292045679 701879713 250662580 290582095 502468785 810230987 737005698 763225806 724114692 868134015 482712247 720198262 917106817 952894508 834935908 883130942 99959241 284598879 112918731 231109161 114343582 923720271 649998058 841107798 293455628 882664835 380987106 884558670 526260322 881974822 732645911 902614709 789958202 903655314 651183031 965428242 723176879 925935116 122775310 723625713 203098808 684211991 647313506 863253123 288851310 358961779 422852003 524941570 748728620 791251889 636727017 667039921 791675505 982347225 534870905 823964946 587269423 934957385 22259 171428596 346017085 673223937 423088016 427812859 478978371 986194482 264081121 931133706 267234816 553763910 870321727 940968029 625542441 997644719 71333070 117108601 237046065 637862633 289903606 381475113 414545940 643811327 43993006 556442101 138078506 937849473 435515355 495612000 920546208 933645223 320227383 621138295 272262084 559448999 770857860 912243314 277869399 759664198 164390058 792583420 219081177 268369910 72020850 426695993 976359671 978953663 363544862 766646590 393956066 474466635 733529453 757019320 139199538 356554808 287410972 765241566 128485607 254015544 674515138 974011160 648937558 923882008 558818820 594696496 508814722 683259274 318087695 866949219 393578862 899832354 591324914 688342597 145628634 501114469 151990851 313415231 434652212 576662520 551773607 930988319 189565565 405933570 437597472 969685607 907184656 964463430 576462730 950188443 5367998 230835141 871088177 982052636 976176448 999280106 908971884 975240262 651132568 678145299 154484861 898980175 855043609 998392627 750507203 878555417 1587315 736864853 650393754 752929010 570159298 969545287 81881278 732966798 863198522 909583209 697086018 759251327 797234019 840355636 316683107 508331475 783173527 827029998 167220074 736186694 642516079 966931259 977145372 993713924 555353785 574964548 432742093 828388289 380378581 957071563 11959617 167778904 777566112 866900885 331316914 442685524 802803351 889300005 841941250 851595004 395546123 599190339 972492991 984016447 544332021 913841561 286539031 848128526 695523852 774306801 244257758 258640626 82772158 592935677 328082663 867521483 231819566 251795248 416220160 797822127 5723837 333677562 598856860 717935867 100193996 889982747 224675250 502182568 711909298 949962618 870200955 985035749 153328330 209988528 524557281 769170442 178529247 852264634 620458512 795933070 936436969 944466403 133941458 237167991 860201328 936848743 340341524 363339877 801347588 979196405 90682080 875434639 174037554 296278404 647404309 813268522 356663514 758017503 308257687 827765326 161351613 625302780 616675997 819341188 674845690 747845687 729052819 808983202 543676063 924620898 753359986 828205026 142920223 398647132 823295666 967347132 122436091 523016495 915292060 945026329 203303774 344758120 279224130 357607949 134549765 825858568 392515848 765933949 343449128 701278507 453705187 877102814 158762073 191917404 904406021 976469433 466191361 736269382 737501845 865636152 776562061 921411544 367759394 781659729 171624817 693892794 644750512 698129074 148029756 492464877 838878242 908549365 119648276 254058020 223877878 788465822 199916871 832345151 13064681 218655873 720778853 777457186 206372587 209927802 454711973 753687509 733698509 742045971 17977136 712548660 322524438 688825539 663719575 887626534 989278155 989403246 497019848 947257979 93112102 505994062 404415382 987357976 370592880 685153494 277011023 998031609 146273250 442792660 437847150 601170304 968346396 985826884 280276610 578528486 812616099 860171022 464134934 800765129 831172024 976260720 461695947 475249389 54023594 215218438 951149761 993427463 591101652 976460551 33462026 230547463 667268454 845245352 111046170 378174161 397773603 489607610 320637539 498878359 993243928 995037921 971352947 972144412 107634315 458325103 995210423 997857065 813067152 867136893 539012461 729589104 572104429 773261102 707863654 730517741 103503333 830776164 992796665 995146318 574172814 892740575 509766531 833107951 443634946 704307361 802788064 945473548 948437099 966035162 64343479 277423265 800572200 862595441 503707782 555299704 66227311 339371819 507922833 717503512 864398744 966349902 572302081 875195131 467270385 724506692 466538142 921107253 517769219 746224698 398034752 991539946 862569639 892029673 291310623 532268310 92033239 864327434 917213385 977075816 620901628 787946908 97810951 998924240 343509380 721666906 432364120 864969072 742063066 987143971 466089101 718957595 284572515 786663408 254447022 982887572 501275060 969481851 315581937 449612381 388288846 583784318 980152368 996729735 610083546 678289933 803621299 950864690 545184923 852823653 570823935 732952265 496248779 953020158 917231123 995355564 689927645 953203655 22389540 773310437 176356323 568708694 233640873 621712886 991839537 994661661 591593037 905772636 286641391 694280584 738692261 958873055 25658375 298634744 693799734 767192063 936504345 978734707 25864850 658417864 702807495 799292047 497301891 855674693 502309659 585707508 431172135 690229556 696870756 768335152 520604546 787482220 626465557 657542827 189412034 819279926 216616394 562990210 544187066 803983794 383816863 707422606 782146003 902165691 611856300 821064896 277302750 679502157 316333753 619984861 686073987 729553462 778818063 797432571 369927547 391906724 65216241 499675534 559234628 647884159 441731938 754630184 62215732 123896858 827435619 930031887 501614982 897394954 907882006 969421228 536763126 969081245 793758276 932974875 2998804 233928704 72603824 598769117 504699784 779670589 193849493 302855657 153289861 233048038 127156049 871146715 939501979 982016932 732553032 957966367 963552542 997224044 989498501 991245221 785128590 792700103 113508850 982022422 370353158 803472241 204802644 376879848 716826711 926134015 76475873 344559696 428112898 632899739 386564635 767287971 67983892 683347864 340816962 623260628 483783714 689553101 703179463 929825990 191575842 509834256 940098889 960116663 809307730 846418502 448741049 642622831 823790214 868957315 120761670 870975853 778999650 860131251 366340841 794992267 56172186 431694522 227013225 823114039 662342341 928301182 878013270 879747293 956340132 962924049 32709275 901961196 690833553 743791568 239374080 581231860 19701426 644213391 217858779 554960217 975690179 990965039 479435387 694181692 790107098 819351780 823255091 835485401 770659124 973225223 121736561 301265757 183449539 981909752 474392917 834719415 309991502 356977861 963136678 988525143 508606057 644264532 587639300 827239209 174221309 351878820 983420579 987027108 301414687 514101594 445059067 963186600 828061398 871082566 874733932 894093807 164649449 342993655 337911566 455904598 524329006 751658851 45793694 818186903 560903411 936627448 637805269 693223040 42182597 186371903 983016741 991127005 389029080 855983434 621886830 926581428 310679528 805399956 402140090 576588138 492934951 731691826 818197169 944059203 893942333 914825972 208332532 523115532 78055818 947064347 932490762 980153481 675151462 708419737 447659362 575563306 781329723 908705095 151247925 347013987 673855542 726977420 122146333 900197271 197597228 646357740 116187520 375897718 382422252 382923404 501424797 512515681 130898916 135112950 299954033 523923882 495471052 551554058 923982840 988474125 407348793 603414514 446353081 626129524 821641314 946814588 955872697 981704296 753007489 832926640 3275765 653787399 25287896 867081779 844364930 979066103 431411132 732692999 943995638 979794003 167674567 470979043 604911951 865796559 566757723 573191565 94242653 990337267 654610635 967324173 480763423 601916534 790570064 936145459 234136047 644074991 662022711 932331830 306675030 331370500 528504192 913215491 418629866 824201400 443200195 775177246 900557454 940616766 405725070 595064413 957729290 976536115 976983395 987402528 20494583 589222674 422810103 671284576 861994337 908464871 445913303 634747546 206863065 423900261 126342256 793691590 628134055 925143161 514024667 733264025 522912910 792408696 786217880 917520653 384797113 997927478 330147854 457872376 137495033 589783249 991603721 996972421 978649484 993652485 94770572 795896246 891313970 932106455 445325163 841178187 978147799 983553845 81352282 793995681 208405575 680457450 434712624 785222477 959638993 997218385 361975610 678295254 442622974 871609365 833947944 844601937 516497063 651880000 414465311 783638537 214170776 948843604 303554027 692922435 327636761 565806474 280777780 861877988 383759141 843431693 317276017 779776733 106900487 111294231 538541754 608629488 466822545 973933248 571395 870722878 867826273 914086617 223997156 306406418 72234012 642898331 578509765 740141529 197251794 853095750 396738851 766409600 255765706 286112866 470200069 681195549 136810624 789570386 92996902 838097615 242818561 656913008 74294094 820458819 512284243 941300560 168867808 383347783 396229599 922537163 545358866 919775354 530395853 790567055 716451013 853116519 875940937 959581675 568391662 808268717 378672985 606081896 5489703 847116948 3614458 342489357 195469321 439732596 601529512 623647299 626367342 640786564 579093311 686517213 848126905 943011809 757900925 829285341 227892860 964084322 636875928 715388865 638974400 949589129 200350828 886083708 764792798 976642823 981256469 985584557 611561116 718008812 170066426 452363134 484693023 733731811 242602545 283234538 491441676 690204549 62822005 258669409 155066825 662833810 985015032 991388146 261299405 763623891 517544148 581573196 564528456 742229749 283934087 829974889 795905360 857255615 199900043 364607655 964387504 975802407 742035654 841953285 890502992 942163151 321637948 343121097 474578461 644325460 292229305 973110004 30102165 221375933 124542099 694255972 147940690 674519049 577589133 763856997 663435458 981503296 718924348 936407421 338826111 743827145 775497409 846368874 982732899 987144139 734069290 804677235 595544095 934680866 739054116 740240420 3128133 443543221 620321268 904422956 868704247 890157262 964910537 997200167 824984673 945681707 520000415 919116361 654637542 680824701 792322792 863178033 303659538 885280165 589052683 673710379 275807527 607879895 562145282 897831786 971714079 975980284 1438149 883203211 468157467 800352612 527938986 896657804 70311984 522852665 616964377 996589193 104680642 560417003 757662593 840899985 430835257 586243739 858450334 939919386 936005967 981370309 827233293 903046883 157464246 729289597 297639765 643651960 927250837 943376174 516191481 581215239 769941369 876965805 652779918 688428729 501573648 891182005 895958111 987845013 52905117 167274043 14216018 756524645 964793710 973262094 209381439 796643963 753379468 988689618 861794929 960860822 961846360 975000389 78501800 252783079 829733608 902413040 493853331 673407773 861446696 979227370 937825472 957401239 994163631 994967669 170915431 575816485 913513656 954873352 626534551 729614835 727618270 932901619 752263127 905098460 887925684 915763856 202099214 632645781 983913347 992373624 758652090 832660624 88080018 162330512 222896437 295293611 284312124 594418262 743033369 847831087 709126721 920141585 814906886 996538393 943994321 949556643 607926955 896124115 777594369 876468017 942036853 980449834 804467955 830803222 305733624 560364337 417980868 741754472 349723682 602103407 147258042 179248450 271750159 666882401 93781764 732899459 663036076 715085154 741675589 848310556 101703759 199733195 99218116 407190766 9825359 400265379 45600640 480198845 489563751 778706954 825023562 974342366 734664159 895830565 882083923 888081714 262884961 708857475 285931413 973909025 249677914 917540982 335415778 665310208 307753520 365361501 324889024 993312433 802571252 916264191 88262018 677744653 488153006 793079808 516173356 724116840 92535230 653473993 953882366 973001227 67774744 260091269 677529655 701434398 92678618 302889125 701951589 927794764 8963516 61223565 338236780 718655751 636916235 705973440 646635195 732387861 773130989 978889378 298982183 958488379 643579339 954678699 13564281 864644867 89048328 595306502 82144032 384237936 486360060 516604206 114270642 248988726 991342398 995628796 494531003 918262674 554957798 749715542 546668748 612392972 100353423 521607829 5958764 831839313 281726777 417888248 506140119 928769715 107847989 186358914 25054426 176661523 171718592 341185205 729146054 853447328 136907386 962782099 154236093 236368276 764568803 952447989 662358374 995636375 442996271 734929291 358459967 489140385 920126370 980862790 930784459 948885696 468659680 836893219 941102476 946376583 503422102 988399230 467966200 783670133 650332695 715977322 305253717 668144722 540405998 812682975 204491380 369785920 532406268 824297230 349362460 670804647 826520069 885396188 784141851 893732497 668298388 950187141 279749215 399777138 526883723 636296271 831115132 995307373 235604079 978229707 246976103 551722803 954708015 986312095 406174639 582173363 279891540 343132224 262811334 564676285 27208129 75604894 307903864 431384338 308713344 860188408 892413119 898911344 220784771 382573438 673117570 943618175 168628190 997552889 41559262 718915390 666312881 994950373 822052184 974322807 302319276 728105458 397776077 484327174 687235189 693472525 802589416 806852421 215011737 564452327 350552824 740113689 381965957 846258123 677235146 773457032 907656409 931003208 762396571 852211975 944972954 984577052 627120593 692770808 982668297 984773016 332107521 937782409 479762285 975992875 223095277 535123839 450292642 460829259 529794129 665689706 115612781 503143577 104093764 928117041 343516227 822560716 727741711 878012315 842811916 869505529 453084452 531791760 57263018 276701548 825138561 897686874 187275063 864928601 492772418 691720609 114171801 312144819 173760502 215599617 182644707 201305636 191083168 218596953 120668019 392076399 11611186 913185393 926528315 967086395 228353103 334053636 529849179 692249594 977116605 982732502 443666524 819560007 425315813 545237501 771677574 963708389 659437635 688672071 193805391 805708457 642552200 850419613 828543186 980702802 619966246 996412602 357448443 386282054 545111707 638562884 361575177 797095725 639117528 889580603 584567062 837964774 552222678 606751329 859656589 982603400 635259536 787765879 371696809 524141482 557710370 574014176 738138252 868229976 492731424 605558671 309447605 786975719 866367813 931457224 180442248 262569710 342261538 676582530 955158391 988567680 171983999 315686600 665051840 744114136 761508315 862375884 287696800 931983823 466288430 617936792 350753791 648715289 389673492 946392023 62050463 272093907 286028751 672984454 399353576 824151700 424697612 625498423 775690737 912754320 38322652 254409854 926022791 974309458 424075127 791897431 737804630 927994514 110460146 646860425 401861172 752526476 403024364 890214492 848257329 946409163 650855695 796782770 156829470 509187612 416558202 614796495 424492923 461480929 903611731 997906631 814783876 852772215 960466839 985815778 658505884 794104038 665768690 738799049 25141951 890106063 597026389 956731546 905965618 952524343 70520220 804797252 331978318 437062798 932244519 987627511 408036517 973109082 663927877 683014046 305217039 922682859 847419346 849240974 459170317 839613430 141599588 730094506 969148211 993070874 963063813 979454296 518025911 920579155 896158724 907655846 527827735 595382265 112611697 403606176 333046706 941889706 275816952 439730533 213847531 610770935 186322387 776706423 77503884 107054453 339612623 753873881 367441487 800028912 90209510 107514906 155261044 169316049 434951874 435984379 556142523 601953591 181708102 804197991 780874870 808271788 50672098 378145056 87686372 484987486 653604781 907245362 392317108 536548655 146347691 785239524 785942436 992219792 814095715 876903174 588979666 789881707 710878724 752317316 309060300 911959681 125610339 329822117 656733538 906110625 921938715 942994637 447784734 524439373 368670718 879639916 983292287 989237039 791838988 901294983 742928132 832209841 435215944 446322189 833179696 915511154 109498578 703704888 652502072 719639975 395503223 462234604 124985537 529582465 135016073 303442823 917775299 925456362 196103204 584615843 608877872 921891896 815896275 921362850 955445683 957290903 31850404 896610679 491748039 555292128 734610436 976908083 277792339 327892696 660750720 665598651 141319769 576673177 303262633 848102432 544086240 645141245 530410702 670965058 882128207 894657488 461315464 576225023 965234172 984437548 357441282 966145070 402272576 802048329 745286897 901672711 739104976 831136966 585886391 683561804 391655390 616633647 835646468 953035709 556708121 563946072 460711521 819216318 350041005 612993774 255174987 658120783 136878368 278497373 111813059 467560402 579772271 771897082 744028379 948885959 715082472 727923575 730171652 757270645 538312088 951104589 674396129 706154752 175480000 905313806 612863364 985498562 313427981 952631444 680020065 769854186 857878585 930660366 686605324 978188593 631781080 783590039 478311070 990464677 972515448 988838539 97779933 444310780 76195033 376868536 528398238 794340623 153981415 171458026 498294894 502650502 903686071 958451992 785989514 813484538 890903363 998269287 58845081 980571797 465124602 603079417 389011004 767618066 554493006 728795451 721013201 836662194 100396147 330407364 160373838 823905274 411901600 653110805 6786551 137568847 608205467 928792020 718283014 745814852 566512770 812871277 575174785 812320443 526675010 530538119 756188792 944765685 49577419 775145110 641287334 947654535 974496767 983623067 914703245 939684017 942932046 993488708 74903642 935580832 257125648 844377817 925410075 979309334 313067524 533727843 560228979 889902730 929778996 949736800 244807691 675782585 294847553 470856027 839051388 990532624 223909846 608617038 921341903 993459895 536911882 637562570 694622605 744899361 914439902 966316523 12574532 600326581 42211177 654618626 665823413 736845877 803581745 918727681 527615617 958797320 883186306 894278441 631919237 758256723 846895432 956544841 935758307 964983067 471688221 550559654 40086074 397437439 858652159 894977434 973511685 993630452 27973329 776280196 302186662 324603306 742042496 937735526 973708360 982037381 942663168 975067999 594374820 992008993 744294403 972731326 542950271 550272459 553694015 765430562 578363161 865177778 767089868 939638223 243114052 708156680 776020257 848333614 80435455 229290466 352386466 882189620 117487033 515796224 997938428 998020805 328660184 886665405 692463694 990729265 21514761 556219478 915640051 986613951 52483402 559185549 20319830 237994432 970552452 980248933 879027454 972791215 899005551 948782999 602013640 929470655 971063787 992455529 803605939 824518536 319665690 571478416 164872762 194632879 116362158 782194699 313998452 665053379 523378607 857261497 500335245 897082395 566785263 775026355 243296852 730711183 488129107 844811750 712590360 871908876 404322598 717016669 177614162 942451630 714871744 950539042 272171986 380959498 369828002 762802494 686910166 784886035 419385940 573888783 987722474 990309304 708999988 732019331 993558115 997928076 691199590 871461040 684946205 828742747 689598335 924884418 41523122 738608488 35692885 712550957 784481817 954737235 127244446 950265458 339040160 953063679 798551473 850436334 345282889 893055769 280366454 547592218 948981670 976239200 137286686 218472571 877587956 922425364 878321951 916350955 840181123 951524966 450821716 460498044 694842929 854444080 754662830 788064734 173854797 749292759 626576031 948717003 217576188 464163753 68007531 658168803 502746301 979052846 469245673 656733686 552756255 727684301 133452426 394796163 640930296 890238372 511704086 967117711 246589076 408802065 506860673 596352050 215006619 421377719 650996440 701240661 76084716 167168289 125609065 930569710 773780482 835254952 166685744 353006211 202242057 839115598 415873242 733397221 564169818 768293291 556158907 796487938 829467610 995811306 772392910 781658920 164045198 630303274 167470438 370216623 306519748 629908610 615747968 990842777 983221701 986359842 119140988 430879715 450757225 660026877 24350335 219730292 924074639 944130249 833863919 979509440 839839336 977250016 417206229 697938557 701983342 755595021 877511072 974717338 959439363 998784516 808163622 876449304 212671161 940292040 752794633 792002393 242402594 921672575 55265505 578304828 568970470 735637273 752877358 871327992 314753599 317084804 329600281 407568732 843910599 900525055 171343951 861391020 587724798 873644746 799677061 987682032 807895903 910689445 420864531 672966895 181408027 423582412 124181072 424012110 177937130 333457991 822998022 969184814 75160326 987322326 532412560 877520495 551931680 756964614 179709170 592819048 66949951 747511118 223920968 925005287 614964270 735656185 953783293 992163311 193709011 235177804 889656786 904393876 675141042 848424852 901349927 968039925 721873609 728836728 253860654 579596689 427596129 483137703 761010027 919136231 34551783 596510958 67980675 265598936 233924168 669373676 817747679 856718121 368118377 705103943 272380082 458025499 104741188 566578858 912625416 984852150 920662741 989765439 345662745 406661229 789772548 854550407 8101119 908221386 114020107 357243868 850241303 982266498 165506559 180487244 294257338 396034302 767301979 900922986 735225885 999227627 433628755 933000397 101949057 772157667 76932540 982406915 733376378 886691104 180165696 955656368 149250013 676811004 755073983 931637020 775150651 896852391 542850308 805620739 47353208 888781978 247860223 569224892 203074761 993774239 708739193 737658685 494625149 591035744 633820355 909881860 83712722 184303215 519816982 920484587 160854472 364281904 892977428 897659872 536632905 798851102 691165849 830841063 239662484 547242453 822336301 850803144 329065186 482412023 848655604 910366727 337108341 417339647 394204447 814975457 302766560 633399684 143649043 242383645 141613580 325295269 65839919 165892410 678982814 682786937 703956928 798547752 736722899 869190671 687383366 698816247 976130792 985397258 425087401 694575668 515575313 787576152 404209033 638496438 314320735 827508614 282774687 895320332 184068993 687944071 385795444 736980712 927791808 987435576 233037235 773759010 93473844 248103282 661242304 802372893 659178578 945600678 986664029 988979117 447607419 659655579 587579137 804055998 978766934 992817872 640407147 770034389 193563287 553241571 439614539 934262885 657211409 906558893 955905686 958722827 479426730 628475753 474240905 589061259 735087180 949748984 377926049 927044764 153523560 844629593 844993234 910311821 918639246 976584791 53418533 497887476 274753833 990554739 966083802 989857629 982313225 996258648 721560912 958162359 447575591 511352268 377504718 706653979 951067199 987668994 682845441 979604959 310362645 846151284 545790662 845771309 552677742 702124588 646438472 788983932 481653833 507150603 858340867 906362575 261074841 317651669 869576834 922583043 813887189 861508861 451602577 909361171 45714154 848931185 313098555 671601746 903995119 920652204 3989501 230285440 447854864 710408083 627011789 811431959 287356337 796401835 105270595 436104232 658658928 997737302 606261995 895534941 268396067 974162727 12381532 461955412 509852524 829238779 520887812 977738836 343721493 854682222 282394691 321384762 390191102 589500613 874650543 946249898 362765896 610424325 169007105 680249295 527207914 832331671 891698317 983068229 75617999 831209807 127904235 282763038 784124589 903990476 7198589 660725880 526070171 887104572 518742584 605029229 129663640 245539965 565246982 934096759 74083053 760511250 401331378 599357477 244690972 429403660 101266300 977748583 967521454 973782396 907473078 911168752 132560531 751724391 83057209 813680830 722001050 909176949 554728033 770387302 258011796 824047406 458644563 833216170 345542185 657799359 723469660 938020573 66754011 150534934 386003335 833086611 134708708 759676614 586480928 603513416 476239105 829726186 50844624 753242041 779005720 916963897 822131009 973112546 92505230 683550276 681085293 891737110 75661968 150142118 998254488 999346615 984750593 990868154 833046831 883322781 747935087 891889395 940849927 996372996 273217652 280043485 83702397 437449401 736028966 778943791 97479964 607498628 710339741 728066452 204437978 516923792 8734539 794205250 976041898 985109152 827601529 878168597 582836325 704067230 623222886 675068326 124970181 242992238 668037521 977403078 448651236 556047889 642676969 942448433 302115770 848513389 615857532 658439007 321352038 980632676 928100219 944787435 861070675 911109326 941724188 996582020 653116591 838174752 167091037 787327871 854093941 929718148 50531444 433141934 57094264 885243067 335318469 976605643 193243283 305581238 977009292 998881935 304450315 840697126 62051007 767174582 614669624 847141489 423462928 795826022 841939467 928791642 292059562 859937825 520211849 758703649 228775999 652655587 587317846 666056579 840658043 906025665 373886349 796346926 271033281 960807634 877424995 977712283 933759062 993757798 364631587 382215552 341895642 570137967 992289786 999379823 621660882 657506001 787954857 931959761 229713920 637136736 791251168 951391337 548902059 920329556 820197273 826923077 318746086 743783514 907198089 933779892 733738390 849191339 707264925 920490274 690622327 984379996 666485872 996650007 503747968 883316152 67746860 870568674 837094946 975816420 325069813 662344581 629335140 809776563 234661521 406225156 898667447 970536915 545195436 874346051 749799417 802608377 163711208 469467728 763368398 974491600 45392020 655577455 717445515 938483391 232249198 453387216 778886654 954808073 319748538 475567048 122621422 175771003 881672197 995153116 835995133 894730504 150246826 395924525 200433349 626078413 745553972 788463502 804627029 805952318 985911547 997072207 324826785 834689281 749173435 854663762 652883956 976662522 252526602 317812823 733332444 776532021 226627299 690515374 200704592 854191154 107860456 379435312 420008380 659028489 953685254 957054441 862762661 948767637 659151064 662842450 420566379 865568474 913544891 929612555 263653883 484963770 673393820 680067857 171748194 206916926 810369008 848927103 327113002 626012401 451804969 564457767 949654533 982912984 847633110 857725590 873430014 878517644 661263334 694654378 646980637 940541487 948973962 952168865 327752775 900051935 786102655 878320361 13392089 20199883 163820648 518289805 888213101 968414530 6727583 218996337 920789932 961663771 944378629 949269491 154971772 907526147 311618802 920262624 341512697 467678608 493882067 657643023 25215133 851916827 583171620 863755695 476107238 837948318 486342280 738213989 44480144 964302675 388567266 600462558 396523751 559845978 511236267 552185912 222202507 566264526 116056810 668526464 63414566 647230360 568144302 760322309 364720226 402949041 875068277 997362842 885067011 917196128 63395485 519864027 392649342 966759580 830020761 848242795 256174922 565216815 272109237 756951560 553553120 759819162 124764908 147561224 840432976 913187029 53273279 841730504 707506889 965643684 84080087 184019027 864548949 920129957 196740351 602877078 249822414 998535599 756248071 812968646 438745148 892010280 162832986 638015286 459022767 722169084 972141312 984691691 38167912 959193808 318702010 324541829 283817565 921773755 53186722 762481875 863686608 894846256 618792933 853774138 895786136 902017997 527076049 634092659 814919159 997244435 650885384 888730235 985177281 990089757 395750258 648874515 767022282 885127076 735332579 998909855 92667762 530063219 573939664 835676039 150255257 676559559 488240800 705602963 385863493 988497328 184274658 459890946 426154657 828875215 118778649 652730435 662478266 806029855 475398765 841980151 173174158 918172382 162937389 481662813 729431636 893070070 282579992 560017063 782156486 977803206 735943747 995420703 841281544 868081482 560953707 969587403 257080502 884344621 654597344 869492988 986004231 989756632 96686844 634302815 368945511 993114477 476772065 711483860 929809758 998699499 389354172 985957216 374905289 423583397 962704003 998324261 158898973 339748846 872975911 941177600 638133517 692926668 419440247 711437147 475190316 517882417 158249481 337054787 486812207 937867493 616301078 743715829 313311564 966576570 664730703 923240485 208729845 336778175 512872288 873987428 987938504 994096234 723719345 945311742 78426504 858176177 865216606 884186938 778775685 876309646 58310715 954686118 880791507 881101498 446743974 554859069 289167964 311492057 533392803 887725526 150479210 212769276 791279348 901175307 378579186 550418108 936076754 986075772 830187543 949989727 587049786 786133254 572290562 774907837 667547908 907754272 860506114 958268440 625267891 995995142 8647077 37804819 876522838 983166168 966956848 988917048 254987660 465786320 305540560 777929411 173383316 560842134 692473916 701979883 696875157 935623720 295388382 768849415 972186036 978166656 63682219 302994239 37164470 570588684 912753451 961549800 803084868 824759972 581305165 840746619 640232429 702276381 554414860 608980110 646455600 770871262 375490549 502735524 120585127 445295496 888072683 992719837 563414250 843657895 315639693 654023894 448735692 530179709 790314078 968197274 479832686 892844386 804636007 949410824 341337690 730394418 625462632 779401640 925724902 929810560 772684672 785242705 700082585 853416609 866553256 912717697 577043277 956959556 414844548 867027270 730070179 946793306 546987452 731343892 526488174 625605055 884486223 896740977 411805679 835410656 566920594 787968132 303129506 763158388 105666196 530900736 694685579 973846628 436211657 457252553 878087177 896588906 104925195 337328331 909835970 948621660 293961347 322121453 108829099 791606829 110026821 424746946 288939596 401885271 436712758 841327643 226675380 956380764 775618416 960060852 995612806 998854750 293614364 502526690 416727252 447034874 463860146 933338280 245856577 458926871 625212648 766345068 2442644 549590948 840706098 924512074 286847237 602459761 959943854 982600657 138514163 325916317 731013531 955621423 797514687 937733517 133074306 786039510 761752348 836165375 655245827 968699273 782395014 834936181 141111359 538740039 344213119 434549668 587143544 943118355 719304070 937742628 474833364 565803459 406449468 697700102 94248841 393806509 90476399 785273287 677023653 978197861 105342114 424677487 265329887 494482402 209687663 825368209 501646575 922829014 386310629 466282548 649859114 953282738 678018926 830338313 646726741 981823777 592588637 848033367 323640056 522760841 814136098 916045542 70969935 987451385 280232135 486771582 868596790 976188849 445319526 456888929 931721454 952387528 295560867 409224499 95386567 328982224 560473869 997758617 6684797 386554490 534260533 997293170 158349276 985098564 151592406 942533297 281145712 405765298 779603952 832279040 2926040 326938374 373901336 900242110 12157837 22744464 388655704 421634170 835389830 885316637 651675582 845263844 281468971 594295238 971420677 976585394 33438666 484682045 953661444 995090005 798422412 848554180 760460373 898733386 183223451 757177454 749020805 833509418 651515310 747857064 641928369 703479801 644877020 864394694 482181914 803728948 768603176 837393997 550177943 889534179 23750522 105944173 698083136 868897414 875261168 879084162 978345480 994990082 563431130 778461253 632485815 893075135 702131715 752352881 218194444 665831742 359280118 822505560 119704011 362809466 514350456 817630854 440333797 759237233 79624112 84651627 904863373 942718358 269334633 796301982 551144130 597299733 404544378 521109828 66457751 362215045 904445451 995444571 20594819 524403712 340350059 829774793 304106137 510292752 332306927 422722590 317825362 688478817 946211456 987588744 414513996 831664517 232585826 502364629 347744292 545959057 471554861 817835110 776659380 962481003 436063061 754897981 129293245 520144557 15707871 96175287 471594543 763483569 127122604 516892111 843628427 918699639 149976874 908580342 750751999 840476362 834305371 903334449 343979063 791798503 205112209 387250762 499472557 842860161 233840566 477017700 998938513 999232167 585462919 907152008 479736687 801828229 190210971 322104853 28320206 530992455 428149971 433024206 873553518 970984099 115739733 395299528 323818075 368064634 258431421 516614165 530966084 913317303 517564138 728090347 297988571 439782957 703453259 880693739 140319880 764959114 716195248 984632159 932046469 992871595 49236873 728474514 902466868 995140844 413643069 585856249 300309230 572040889 237135762 366187938 556035187 730440582 405253298 853879417 550432224 671060902 502049915 972856435 275217172 736718180 53711414 190692502 528550332 611334110 936607941 974139902 33469187 548051125 90313283 144153955 778830514 888716872 903664849 926109967 760456547 961514134 347461862 549183916 909766748 913594696 525079900 626920612 333297332 958527099 210120582 665880311 499933814 619864380 361659181 925987367 760143526 774058798 695338300 990350894 12369545 632988530 65670641 984391222 893119574 986155353 12921047 928819877 42377908 545875641 669842736 828374381 279546501 474338953 68777978 501076410 813943893 992524197 572059973 661068122 835670737 986001041 346955046 511818180 746912289 996316896 344035746 851186055 994773775 994897636 454121364 614801136 900820131 925435233 972983030 975466512 62714800 739056820 773529665 929410820 745018937 831309584 689169077 741907126 167957233 502949136 761764861 964629867 280538249 955521729 466927296 511806205 976020910 985415012 338377173 403982178 34233730 811344969 951727644 985720025 106069887 585962288 274511139 633256599 513454266 921645067 878825136 986512779 51333643 715397866 677182587 868067265 585070636 821741322 730068314 771569812 810237023 992952764 939431315 977970116 57964983 913403704 277792150 761393154 242366991 340618406 201067023 259128665 153690155 542583980 459962363 827242543 836946909 937564447 138374730 599556255 608686731 625888830 725420754 856215800 508310107 867053379 804518395 965069218 165411743 929969837 544183475 839475429 264935552 561119915 445423186 785003767 823493578 863390703 80270634 826638566 464098962 805523488 657553873 757422447 374567668 469324333 261351523 570920242 502449775 642214097 411585895 539855799 242726908 274124688 989504549 998333143 540549290 798063200 213098216 476913528 778138371 906585279 337647114 540830239 768976583 803740795 586023602 741327559 145657536 360851071 335554447 609866733 443072748 646562313 270624829 733117099 802833692 951660373 571709800 818318623 545069820 897252311 833735080 856862028 209069848 240785893 877144963 994812991 482377967 518208266 979982168 988353233 200039725 451580625 994330666 995392451 281220094 343890380 298091257 594111949 557985941 806933512 218120882 296969166 330526581 754918719 664713347 903473821 889737686 987469750 404457079 702911265 574577299 758920683 310043797 844364852 479064938 479753992 767767605 853229550 189547193 407191592 795779588 828305708 177518712 809705003 902041895 908824520 104446716 340154008 537581639 844363119 832506338 980503381 963584314 967433006 517102729 791086440 253550773 899370767 690291226 724758267 812991404 972641592 575526509 823795476 560435225 953078851 588825664 742312128 422462291 503694583 607593825 957670024 198114355 214916501 704394104 838775978 286185304 453605000 625431457 798347690 240816987 382432279 802811448 865186146 607813185 784514170 920969061 984233142 853372996 978690829 118973659 251577920 112003234 765329506 175782833 585879248 393729493 825286991 45149943 448481098 550808167 841707866 709150738 921214353 332511478 860356145 512168689 697626181 127565711 253110607 45255609 751646500 545849319 683909013 235789034 769231949 108404069 217708120 455570927 893785614 122842563 472190907 661275103 731836361 191780917 225185689 849264541 898444286 581158994 761054117 359274751 829144670 244037657 498325581 948001656 993263679 557213527 958280787 398997649 739518866 324903334 507508848 334603694 603472085 340269061 817436173 431183011 815471420 484709227 490252362 684562730 879016450 66178699 154696510 652411088 664130633 860529151 926628740 256577202 819518088 815529889 874108794 672655630 977259438 882539626 940953846 66815843 957341696 670558993 781273772 718559133 977728665 865615211 953116238 785013094 830679315 14597942 698341508 403187973 585017404 448284093 725382021 616533786 635991927 561390306 574082908 889604408 925065760 945556529 966931899 104045661 838392318 719308997 767402402 877634400 940852395 899194851 984499547 739233985 753043704 974420097 987687368 911797519 941626562 188236402 632753654 84304733 286881405 386738378 958837021 485981704 705735886 761999629 800138358 860585675 981752837 691927904 954573080 172920527 498298183 441312241 979330666 132047346 325643180 819661431 881515621 103983009 204121668 973305812 990840349 800293943 868225682 633774171 836070837 419528319 519406098 540407505 617378332 752367257 896535448 16715986 320262934 610509716 685666678 101294812 620543355 100584834 487457799 921681892 957884136 858608522 978523448 348172719 463408455 265490141 798806893 815038676 862646750 615871008 940881142 495628987 842620507 897523890 952762934 523752352 848946018 414832304 587300108 301559382 484172602 116315179 816941425 559966786 657894180 895791414 964036166 144077145 684481813 874566131 916337870 45953544 426376678 181016762 663743132 790484107 906882058 586949966 625425322 688839863 950610994 827204640 935062144 947641010 962375568 125286663 416651697 423168909 514584659 46588283 290807001 133861183 579803894 805286681 997351789 615751017 708038735 212010225 538482011 440954881 884762791 798352404 984469844 47250156 273040757 231366590 371063314 105453495 854090010 496972010 880477978 209758197 323546759 75032698 402818157 372164708 380664635 4295048 813489323 693452347 853680080 180726194 365997914 115939055 583541909 75908312 696916081 47310572 821996848 850873392 868915250 460759223 585356735 293653630 725986754 486786 354600070 538164923 941538944 55896988 373486484 991461508 993890094 917571184 928858370 506239634 677532035 747987944 766809567 558402347 863773047 153676176 393182337 414061310 565108835 69838851 409698479 159352161 260102909 38366350 715850066 219156236 358631109 209981348 963862315 782352535 882916316 888236436 910777832 229106774 392996906 728249383 942224653 787767707 988727289 505813804 858846868 878952576 889073140 904168316 972689724 224538684 820776934 35567078 581375392 392261348 919862139 656684186 725302713 384746318 991526826 33751092 654946051 730397803 822682680 70597189 569813348 402420212 577519356 551290287 902954254 236753389 949844823 599234730 832939598 924782323 946535911 740960925 830700211 454954299 657861499 595287647 700817401 90203076 196765782 101098300 308756737 84039937 470349567 652916760 761528890 142554154 733264007 735927142 869852820 729913825 742086929 119414357 155689354 596589991 737415207 76616460 690510683 975150114 980434401 279222223 512347232 46440175 487794085 779252234 960377999 556700080 812909828 546126385 619334420 344174412 441159831 494367204 602027858 62095258 277464645 297986976 712913974 394493744 434428878 325937955 647891274 114565077 131726227 536962173 708982625 698383815 957687456 375432690 802413011 222956029 324336472 589045697 730904556 324209045 718409396 656743793 799752418 531572026 607497025 202223072 299564923 661801142 929058792 424805764 823389095 597078025 806259656 675345776 767581290 269170864 729294453 91002009 787968250 657556958 660772903 759972945 832067825 26701595 740424763 38794880 291536299 677216852 717189738 548350581 834238032 572586665 814224395 223820344 816239264 518467848 922209729 438431565 645589926 144822769 850445620 425278410 945456193 764699150 897344866 41661300 977109415 3426929 150646751 214755321 556000022 534358745 535681729 579846996 875941796 451082894 823856274 122947228 993324635 809411310 962623490 730967370 810518367 738097068 867726080 213412602 727789159 831355611 943480896 747899255 794128441 619630932 638589276 680890304 732796238 86161141 989781201 240032252 660183762 214031441 345895584 99319197 417419407 572749209 591898172 170940469 951799211 250239825 315544158 186022637 376902999 622252543 867794385 520806751 743297208 135253836 331088461 201000728 891466385 143028116 726698289 993504370 997467266 909389260 988685436 629969207 952708490 816886198 907262802 484438702 985470492 20926864 465071249 951652318 989641076 557676096 862455052 979294446 993670919 517583071 849251239 209972957 657328624 953712754 973501245 332625935 525001013 24624671 302586062 967222571 990465222 909405233 958664331 59157360 160008114 404114222 441828120 623421799 984818287 239956910 282275254 296756053 432733290 203621708 812019162 272131433 657414391 902514072 944731529 413187252 646127722 672977905 681910909 32527781 913577224 600989277 691455464 389131858 982702307 960315181 990679251 981588526 995843243 223873528 834918835 392123641 570705653 319837527 983455500 320055902 505815526 208347269 801365582 70313604 512801463 693104752 740080951 890203115 920968769 737927933 898275010 47156405 289567531 587964416 701570631 708941558 893745816 269071160 520323436 311195458 323636547 904581269 992206733 247164761 624278711 492000006 625649880 302802514 418851188 748125072 951726100 94599210 628033201 186240601 945756488 444718658 748163324 853468434 900133046 406328224 931762500 393581317 643052946 231779267 587068743 369831164 781281256 624075809 642478791 893332289 972022709 602883301 787982563 263331394 422101040 599403476 766512439 278088464 729639727 274182069 351344196 292126863 892456263 125599088 683783746 547508084 895066929 184338076 843607990 711370856 848023250 301882664 633774106 251930532 512306963 288172264 843482442 745483239 825065891 271730404 634384103 661827376 720343095 797588957 911544191 915989733 931588522 282331604 396541104 504044006 519223047 911474105 952286831 137032426 161561744 464568996 621487698 986450211 993989791 276774064 450216962 552760701 765324951 208519521 688879542 743086771 816795603 901991271 909083071 4105878 950389093 599549080 809979205 90707756 324281558 703038014 973653637 424266018 622858790 322601214 883393138 15445311 771320755 254412281 773940363 611982185 985426431 194722682 210021016 950527722 997108314 761009194 893664607 685208280 770079743 364568234 955184431 989496711 992645864 26252851 326064997 526944593 731759810 676453179 960552059 770781564 836148302 884778014 952358325 926997048 961974869 974397854 994922528 940159846 976151034 934444716 938854410 218141354 871704608 650563714 903618122 166656023 615898298 159081938 998544723 181291967 934059383 77892785 405103995 696046493 766250138 278195888 931578802 646012271 997251887 212737400 494750305 61915873 788276179 467593746 596974004 285418463 438629450 543978131 855192652 768138938 780364123 34564638 940133945 253904179 345880022 569163377 954191320 858599807 994264289 111294461 481628547 352770046 680546660 694862624 832887157 799706431 878048657 429037983 683974473 296172856 347339647 867009589 898997533 1763676 333141111 929302097 948526573 271845204 908451032 730216670 930287930 409065044 866710520 697987860 725861587 484602350 548624681 194288102 546009964 824832092 939835185 394716685 678501363 603235475 641153981 368018901 828687165 545704575 830426479 57132737 321143832 577079893 968304592 540721654 973392729 781524704 800070825 311069226 841171029 917367148 992054059 622720973 783031452 773739118 986395612 585617685 685084501 415668293 839980914 370495379 702328684 945442066 962141409 243847772 835953679 569257151 670585129 704913180 941582748 438368573 610255782 463933675 630434243 592446535 783243155 208306421 420952506 388703360 615636876 714278315 980980580 678936830 964094676 446827419 902572596 368193336 715165523 673846693 774630351 5516618 731532364 751498112 842791433 635459882 675690190 270953704 354784539 196726566 786901382 193264485 256960503 788611791 848023812 258537813 881558638 559844920 705073750 736905156 741016476 992517345 993297245 703133637 992716446 872390427 928719312 416518083 977725125 657836953 781835644 592712269 787740126 189321822 827605934 625243689 918262252 71531431 986536004 591332646 726513494 606940072 739519140 167097616 431673658 961095385 985740051 408092243 856653067 761255838 915285316 764454464 805747330 411874054 589473268 809925695 834861094 403732154 553146701 950795284 956158440 107996646 428846753 416288696 661705996 194477154 196515261 217198378 253616326 97054715 147290871 640996013 928183805 674741593 680390497 66610255 845890106 370418796 810718737 796136667 926668632 85085377 780208240 795928594 847027148 911575264 921509709 182735463 559057709 252241431 888247620 706499756 933393716 379919982 689517475 82325138 114921268 572550495 810109309 939132490 948644501 463193368 770350542 714209737 760475179 914323060 917531504 514632220 793471420 696115894 944452883 508429066 983817825 344180652 833559864 278382918 629658171 927156773 968968596 333624183 896860616 883917147 947384440 725451993 935076090 678755444 749453888 158593559 470776908 915918925 964222724 181855422 583008051 895074563 969436973 374283838 568179410 350168371 532386244 86624206 791605593 55213785 304606926 452394675 837395975 732265637 756619331 965796773 993887831 305906060 989780327 5684227 618356870 301208896 964308395 136379771 444722049 510474994 912655803 235529959 983766526 467684413 626441348 425935929 557525255 257294923 946823433 578793878 835666378 859959643 968482032 508360636 758256685 199685724 326507678 199099845 466283068 534194372 903764345 987577705 998342957 648762665 801797173 190484613 282667481 588180009 819498310 4866001 834113987 408952474 988695336 755686617 855341218 829327970 873374917 95600942 987770780 201895317 833753609 882486669 994964186 986530199 993670723 122871004 413707989 546213154 776703668 592732723 818654295 889313294 958401458 913217567 957807639 888065987 895357447 714004281 732710211 535102033 765179558 744817181 821295714 511975877 656916267 274109198 426087847 415041099 962774171 763041890 854690976 513107321 803503536 478618052 518033665 893829525 998317762 592024962 902282849 574925237 854608805 110103432 748796902 935188580 996533962 900608823 914078496 434472947 881180652 259806238 681955191 381233181 707245645 243195963 793070999 236146376 275338797 739025731 771162235 743059418 894495983 641311536 730899030 827335983 976087858 15887794 809293395 942266483 946535050 555868932 603568562 961073720 975062676 106620578 409069293 547661185 660294550 813134224 996866754 433806312 695542251 416713050 847693814 326450600 671483587 727093444 945535683 850824060 874588463 911286180 948244089 503979876 529142795 926776791 984742491 707135329 770101243 234846919 499708800 956679770 976759241 893737711 927961551 116939776 223035078 546842318 612999383 571711153 604793799 122909320 956579708 44496045 225455303 444011851 609431562 178239567 496783675 22545581 152488835 832343780 929428497 474869128 696670116 836787028 933953371 465259686 931609783 225987720 631531982 188922848 714179008 997211413 997602334 528696045 993605080 437599564 883056610 659066124 669398502 527595827 961081973 7654180 590623359 931748816 942190432 720381573 824472971 988367351 992875052 203344109 684675878 672299135 690416373 339544597 674337840 541524327 705719249 776828660 947334477 566816136 862221391 559074263 721137998 617278345 866587169 546756166 799653524 678218343 782140243 367214987 606578947 881197903 952344306 52406779 529329484 782942856 862475175 245322458 672180737 273317077 800968871 131047106 787544890 94442229 815048491 564160810 567134762 176525138 481984714 534246156 630376193 275846733 687302244 528206650 560838163 926706873 986682208 389491715 567007447 170863186 177881477 39978378 75790000 838292582 841587584 675121643 871847148 126814484 509419835 728957597 844311619 66090414 938176099 38983739 891060829 393641901 996459085 462935787 662015456 8661707 333500177 469000216 961079092 566822721 777750124 68488479 313005027 302122138 435778046 557403702 998546608 733785666 766564412 308234103 974978239 861860797 988000505 677442972 905720887 191962691 906487688 101909076 473680277 468982693 677760897 98576510 201443204 19068668 146548674 69314652 672254153 758714929 989036180 688341300 804633490 746124691 835306119 478063010 823392314 121004758 613746519 917007855 989793359 981960886 992707970 353508836 843057262 444097105 896241846 301032099 707688731 938837660 992259558 731094433 776084320 72663974 660593113 59551491 935536933 124274515 208931463 25457255 563486864 174890744 209308392 723059511 863194312 983976887 995234468 35864480 274876710 650168034 804915911 254354233 272333538 29498800 237547124 248323372 823339653 148212715 815920070 225305000 666383368 85547136 226765796 610603543 967005917 14343882 557991517 892584214 917844559 774833432 956105930 565929473 609133282 922351154 936945505 383693729 397201274 922251693 932512385 281662187 643563473 443822856 460993171 379039836 984795268 370495525 887647187 711514004 731153675 683118412 700142522 561510267 836485452 663003525 994172620 198443719 535598215 894366696 961200770 519065731 987577374 906644690 969166428 758227790 795148051 525130329 896872576 199821447 804181717 811733816 970911624 688239672 778169455 93195411 239672122 521706634 599019358 451687574 712455325 551880521 771625675 859287229 945509118 871607627 998982656 326380580 902858767 718155984 844592885 936341865 963431437 876504522 890276975 667815256 865899928 955434651 992037221 755626579 885502696 152543397 808362323 609939782 910521713 158481888 888049307 337259811 523608606 193020660 661992402 41021736 728954825 807232541 827412512 935977606 959791178 867988618 983341311 317245247 945982301 637397384 752953888 180711552 229009403 353658521 934384473 946903997 947186674 522708382 895307430 957283809 974948483 473793710 545575354 983851699 986081441 383601897 703658308 691072416 750023502 757261109 940730472 65358903 714106732 769516235 864664418 288980344 533356865 599967959 731570534 801714160 936693424 159118023 765940246 760100185 882487647 631534877 796285182 281329850 470250775 161483313 817675617 81602952 414264299 130950601 186739267 9672692 883822792 654047382 837708921 413175938 568917814 998110030 999134464 248488114 838802598 582382228 800944763 437217950 655643664 233834417 357309130 141390284 795877789 245085715 940363209 714480216 994648847 873064453 959420481 427973577 982620819 753581464 982479296 706169148 827439817 991328757 999153927 783408861 894825804 943528620 948633799 427640354 971750173 666162482 694983731 505899274 565019901 221719949 925513544 136510524 502575991 946169017 993869069 139971236 276948772 565013108 573146383 291438861 992227745 825743443 860249711 941090307 958049189 309503172 693729845 292830221 477290948 846209411 932515313 795359586 827222645 656349840 796468437 263048744 833894856 802336575 867887890 665343286 965087559 555139562 608643837 299304959 802006100 349935567 798288968 564481350 901658422 914324098 916571324 57213572 142197029 645036599 834727135 719102405 735375347 840235485 913154130 887175171 941550013 127907556 192991302 296692127 449223058 239925319 608525804 878454549 951193848 47889713 649249629 596833458 899855438 212984313 247434953 649166418 907793542 972107924 994507451 57365313 298462794 500599740 741064790 474293066 905017446 823198252 902122567 286593240 771504371 730046891 809940241 230013947 661026371 183100656 878007160 741362659 854725326 286334207 310888898 555259276 990865773 753258235 758609157 520248942 586807080 472987759 679529208 215991640 716215539 1125480 492520153 964373541 993433360 212981211 823606040 153246464 781506764 659339476 955894308 34472496 457841562 729324203 752641655 607535958 752134043 643186381 967044884 633023935 750084545 323161920 487500968 863904863 885169412 573482302 882258545 592969872 598791428 499874761 621636367 927723675 937020918 268796288 839098173 629507244 649595140 667233733 911139048 304458161 870473376 885020310 932020431 322340853 709248104 862390495 880717469 626325605 864401269 762369181 983384172 433327511 592093018 328428607 612387690 46082583 622474276 229820050 321653502 709222938 912178506 74176782 194942399 319297402 588733499 895867160 962257437 490946384 930671971 985534250 986006265 950142266 980458186 413876310 883163234 602339083 898440564 348213272 993913289 302181449 319361293 450766666 771741751 279645677 952074715 83959264 811856761 872730734 952174481 107978793 403583391 366699034 992581397 611980728 623628322 57551505 566109547 821940253 884255063 485513080 787950161 941950678 997433629 702890107 744173730 141306853 394443332 527008305 894224571 360926633 472038251 207036636 216016534 638412218 938018693 978613856 986974217 891361409 984230380 943439350 996824924 134924909 916252352 102090647 187671569 545489217 907062348 78129605 454087413 441159523 553926352 773708885 808238277 66441758 219266840 134995909 642885634 258782345 885942899 911243005 949476879 891710715 909618613 858987204 915310877 748641014 808322218 886298948 942722342 560162109 615240862 540946262 676862008 687659670 713671695 196662603 758482186 890059163 940019385 95034205 848643373 124789731 986185082 780277228 879374950 812983016 844796749 271702249 803049882 702644654 729768933 721008467 863978693 506143704 777259734 109105654 172917527 55593241 612037581 858955016 862951987 642379184 745145546 845876501 848546075 308507262 583192947 506875344 748806282 18312627 576951965 107353587 524983562 838827913 916749793 744994641 851231946 814331468 829799407 548024640 828285706 81431411 302136958 947968145 988867538 151470486 469005724 116797455 983428557 353848052 596855458 370143683 535022413 96058451 151340914 95705790 228236431 297026016 386256347 515733760 759361300 486660907 790434440 819482848 924418360 269406280 755585989 14331421 648126057 417471127 623974656 3774668 559728566 489002648 727588597 348106693 620679645 911383290 947331502 180252557 564067050 561145804 954365912 414624900 636033795 783789497 951851492 70235227 829566553 898901764 920867902 107795181 849659149 76579242 602337877 159667666 718152434 997285016 998250984 461022036 736172777 490673982 635063567 459231326 957080044 309223040 394123492 957413127 978395858 688587133 763387661 197400003 592583277 222154471 687662659 121482467 781511631 690953658 727482697 318056353 989424707 601441529 825852673 156715406 965698555 868988758 884516853 908717524 989601785 917457383 932879137 620159892 889756002 144557672 882653112 209195314 418166824 594146556 938272742 107475282 239059194 369554783 415263094 546733460 873148889 227923908 295413432 526745015 623301852 651853057 955644399 301076499 561070449 10293639 563787263 590130942 644670817 95141240 889252395 15851037 906479443 421259938 536653747 431981653 981217767 661447691 831266746 924653539 973442117 182348896 817594802 751548538 835467463 468552522 928774392 285792945 981091165 883480137 888328300 691899180 972341665 730753584 918628066 479398386 801186590 525747184 535430864 571693202 991060884 921674657 926209513 432301088 978722996 955307529 970683471 834697660 957039155 549986153 851550645 438603001 834804165 356728134 666272499 190194215 366671831 663182840 695761816 90962957 235831992 456105494 588243462 43987022 844011063 224191510 838672340 721156222 868888816 731406498 948843826 500677404 824505232 544461128 910142551 39056403 864890910 800363831 859878891 359334777 809132314 282138285 841518319 6483102 648979378 33511868 825136779 735111625 835808374 303896791 567305508 646613330 872638712 989084009 994109021 778424765 948447292 941025261 990151645 832536317 891919572 52203666 955630447 330383021 799500675 523148991 546188620 621381223 696256240 499443441 965800356 813146934 923575953 715310331 976489727 150579804 286956921 7921840 530557273 682332139 893650566 237287328 988558308 692351303 883292987 181950082 674117502 642730915 855803394 340501230 750551635 187515559 271283804 113065385 853492764 86849771 147553772 176157469 414935357 754988563 993827840 989372769 992059760 204122700 661980752 134767376 399728244 278002912 329997481 63598282 809199937 429948341 494370879 469344750 651023600 938804864 976688941 125831223 255772649 986595716 990944321 231475911 560745497 15478382 620899811 49107365 223864466 57985745 465637574 469130610 529029301 572171434 770601416 641126328 938034793 367020355 770672430 296231730 644927058 667381608 751208200 78921061 316039384 457533705 958691398 42091744 783167793 786034137 854484776 101092562 496963341 416473516 922919553 616697561 853680882 786288255 831450523 573139357 910793508 203341884 949794789 539915288 640063872 846624953 914001778 7128785 406592698 131450932 581769125 645009871 958407964 312478960 443769815 158302157 352750257 264904472 664893628 445477617 821897111 103904945 725947572 799931145 943172163 79895945 650017354 310331537 403577991 798831937 820271491 157548065 663513734 61321055 351048265 172906917 789248528 772426702 910383464 519908248 967452159 279170193 754542220 706181762 744023969 698203103 836112754 284702019 448799575 541511742 930044250 107771454 243781205 629163875 732274286 789389427 830225461 206839869 690529866 816317465 984084913 648183615 748589619 785585029 981744977 525993855 647996078 422939680 621501271 817594971 852185394 779053374 942712800 167778406 263391967 308602302 454114357 297379482 887253138 354266572 760611187 412497510 505176871 122377224 798594084 894460223 956373484 870856297 943176086 672854712 833235958 699171509 711547894 745198987 820542138 995750769 996413418 700251311 780506385 438461709 522777747 793604110 864568957 753621873 997001237 712448698 936922062 512075667 936026294 302244008 469405343 393228505 708838091 266750865 628817932 147454761 634029343 638417808 656996929 906178410 910802371 393839588 901034680 891272056 946049012 169629469 246270062 72800364 985414650 425662815 543980364 711399520 711484764 285289117 490738653 659169502 903405854 823801580 968043540 566621812 611230136 587423772 662046454 842508065 890044873 617537209 656535211 827085618 941811176 27672311 597680390 475216405 982105994 668775985 740892164 81037906 129698776 941757613 979372951 21147181 102790049 173535113 729286334 200762940 506336354 550945162 980191963 11836819 137617294 480644752 963092302 889294610 911735413 561204493 900572453 215403382 784378644 300495068 337729760 334367077 466750339 213596482 823118120 498280763 949452263 968350305 990991553 580925373 873979843 93320673 813752449 455968874 533342300 494928570 826058696 27994437 264518156 613636684 616489775 894933603 942639219 369525602 921130559 420057861 964021207 989760748 999192992 398389720 743446123 984359576 998307811 245997729 823626780 582506918 588234317 726765116 837778712 477026812 914296284 136724800 771997025 607116518 977043484 241644720 411587009 839603807 869888874 977970480 980498508 351812099 751335408 977209166 988360795 680303019 815616194 886079745 916986431 47770285 227251270 237988876 772271400 458213819 801596966 695342812 905542179 919521753 985858928 929550725 992469763 638007851 750295349 535086040 635714102 867070475 962135413 540145589 678398082 828367803 844478576 583731107 806287235 842751005 946353762 81497734 161005762 543196769 963760262 778305999 906145453 882265332 970975540 923790554 981046436 400844126 667943566 655467576 744434428 774686753 852104943 250783181 728284587 957176584 957771815 831409154 844802177 352168550 594322876 530476271 554438717 270950647 507904197 406987429 469644618 805962737 812140359 519320557 874906214 726745180 749794663 295334363 735685889 390584154 625000004 105571881 474813763 528955371 815463925 747151110 962104141 783926410 803683581 691296619 941591016 882691739 998825549 292070543 819185865 980497738 998980083 76846427 744538427 472537360 900491245 330294807 412281030 290332023 819912425 2030775 889784421 65798084 201615177 696257494 828696846 123766220 966033037 308576847 998680166 172935856 736541983 961633154 986345372 975745398 997463271 278400691 988453306 532323948 907788967 847172983 895808533 297716427 405853567 558300437 706817609 639946153 735063578 518479676 760424485 425743495 516936789 189170903 662642710 829991096 991722276 376969970 826662259 525438464 544171261 94793246 236598277 46315548 596490022 894726749 966435898 798050512 912709473 723811334 828356163 673577528 990266225 401967042 996004042 260249253 832739723 680345931 808497902 872183965 948794096 532361275 560151473 996579720 996781762 73249366 618117952 51971074 347538670 376089703 683957729 949911546 985404541 381177767 436887053 636569841 676276047 142874488 196488277 111987074 537881356 966910060 985803440 147279437 975957946 589273354 702940541 385147260 869436269 769519782 959279880 228008626 623032039 580426277 724885188 432671889 841014527 647328056 960679361 392995391 478343959 422673130 783931036 115348414 389189244 703122855 764802937 786716531 951635153 918024587 997436661 47652109 877262300 213762535 918073949 243109687 673626008 451823746 966230483 721848250 774154902 293309920 753990708 190212693 961408319 803209428 957966288 719692249 883025865 147184538 424249816 696348380 771414345 525586506 543347109 659244039 673548481 536602399 759940041 672191462 901622825 25641396 719220494 942427813 946400657 817068685 961802289 282761558 313480064 27257587 526113512 143519141 702748847 144904879 232494752 410077592 996751609 780471968 785078594 561597171 798747841 287079600 307872305 47769317 948843504 436614257 982143491 783046630 800472754 872757209 937362055 658660679 976116006 261338657 994107678 997287159 998970377 89357812 629442468 203333631 388713051 231152450 905087687 320152082 590662441 947703734 953031770 221644308 824134313 137297074 768900827 425378448 990209879 542837250 746577843 541834847 996439568 959678291 994820531 276470302 503286124 329211822 539803843 812062936 885086661 347086977 834874804 752270327 756848193 7674688 920468059 506507734 776194744 331784009 646559273 949090087 993045587 890618168 958351032 722901173 974739923 735376140 788144399 975732332 997212371 395550934 870034671 545413542 613901363 605351472 915744678 27992268 744099965 267981263 974267749 846929449 961893031 729346456 955411829 302434009 863328304 823344202 886679769 684285978 781416714 179125879 267871899 623441444 975101570 291596366 687776580 513887494 836237391 698049082 852124225 909369026 975041824 83239388 842153590 135867877 575705475 723500343 763045015 103546436 646472768 481562485 951733168 844350442 937873729 118656501 359549604 322573408 880839951 320384337 776118487 401218816 627578568 612365188 855816307 958393840 986212349 259658423 396621217 219565740 647073067 629631977 815107716 988835727 995532637 819283858 933341896 19776001 509055309 758046798 944076321 566744496 732864826 788598416 864696184 357623215 873527796 237525048 450256557 171443846 282278940 161774947 457267471 137091103 590539223 597674622 862649030 776895301 996609562 331597159 886265842 481165696 518518829 387924293 822412297 518085050 953424272 403185706 926939706 765338568 765810852 460609779 772532682 165085161 988552763 546836070 963673481 300027352 408457163 863836164 972119906 677623486 806876928 665708999 876614293 948814272 972869099 351887924 716073846 981860547 985873900 766983008 959089651 918772375 987943610 774281541 815993664 122569311 578129439 923343232 972547060 570458873 618990015 723476625 874735686 135638106 241112637 42915661 221880697 624348271 722356444 194004803 669715333 954471961 998992278 323846963 454324791 958550295 961604894 933875630 957148719 295107864 460710015 126463891 653730595 534054019 879952719 331259418 789313894 44904989 797880480 737532652 814098284 190951160 778745881 180687700 363262691 978696246 992186404 200871581 224341240 814143035 988401889 944887859 947755124 714522120 858513819 636801272 888447887 679620282 748412242 37131823 492894059 475823068 691770351 454803902 817953740 648763728 892709108 584430072 830074084 778939030 954859862 226523061 524751251 24491075 182999134 651312902 862548483 543636047 879166369 792137641 997485603 523774625 897285791 209902769 446267744 522350183 886019897 908576816 964690010 189229080 858755504 360280502 980879529 519061558 773685982 786653057 859796321 294589923 516953455 799231215 851137593 249302993 364145608 304899571 830005801 492656463 987579374 659263052 746690255 290073902 930982552 933183695 933373970 371001335 461089423 605818489 972087293 527995151 948940159 669780566 908885142 387314848 617418140 670452518 753814173 944888980 999206374 982392791 996110615 43144525 654204537 321353373 812834528 428433448 985374561 363556819 442450517 533977007 904557023 844115662 974853861 248834496 575487886 643142971 818836177 355467310 409227392 219285104 857325292 950191744 998800569 828818186 987150380 883009307 974971405 418709314 445786529 322948062 877455527 841226147 913897324 925355370 963983413 824889829 938851065 454627564 564897276 924525778 974285882 587878027 647534047 779916424 943703796 536433555 898202641 872370702 931119445 812350418 822783933 942318593 999214458 831937138 854413774 558946228 571219924 924195367 985307108 624852036 786402540 206720808 614476173 27629884 331256593 778288495 794974137 818470636 825903398 152751999 289951167 684749338 781923717 815538326 958375316 483247656 650414373 512172674 935450811 568893195 745529136 278235162 397827126 853565707 861952919 365863696 499122694 499102135 713608173 719852585 736666577 334809533 573683005 201295213 743220958 791460898 981785255 34565567 919188193 608214383 827381317 386408862 694906897 538749356 804019354 544965379 887484482 58362 65055620 222940817 662198029 973335059 994768627 847400630 963554343 153779592 284214131 449501143 831229979 433907320 522705201 415606907 959292773 232644804 700763473 183801882 625847864 442989711 749229655 87281839 987128049 7862345 919634781 700022094 940248448 106271790 602291746 680671208 928116236 388035852 426540138 246055264 633079413 737909476 888825784 364263736 381876878 57553265 776566205 216601127 750420248 720668724 800894231 119079171 650534070 525736459 804923968 868013160 942293312 895429531 930358642 423663906 654674140 113208547 348982714 374705579 575469659 641536807 813418903 619907174 822278850 704734797 873895952 942301059 958485730 265364398 916144483 794329639 832509917 70846519 879558503 234314718 772361686 36283377 439468542 328336143 749281681 37189092 496311366 805505999 984401776 336524725 656900141 316128430 468911193 426951645 985803157 626380991 980283320 916864476 939898566 93704915 139253959 431031775 666023635 239282534 794231492 8766162 178009172 142825867 353974179 59139744 944636179 404439891 813323125 233023745 595983553 48843706 170093157 316391375 412590471 607886046 840019230 701881688 845928124 347485681 571039621 994643360 999141961 221785160 940035012 451125209 873832844 353880531 366873352 128811321 283189393 663403061 950719923 293248334 905397978 213880832 636339626 761199574 997404200 954341004 994161840 263499789 548838421 180456954 240502963 124319807 492505684 803878975 849295104 945788839 996246801 828246673 909485105 885505195 988831469 414421751 604777956 10512487 242840149 572688241 617434600 85911314 475023763 487271152 731154940 521482448 672736792 936640730 938382144 405592876 856353926 95060642 617248598 358875090 403327487 262345273 448881036 173988626 303611727 994283912 997434827 197527920 998078026 670649781 760288433 722432952 884332154 916256105 975782848 129079414 279356989 644957860 868189813 684541782 907753778 260737290 580803604 673063475 782006642 258157797 306840975 883649765 939346279 256463077 634951222 167303319 254269649 519389670 919738347 581029466 883987255 543936627 598372798 417543314 947620637 409050814 766468615 948418614 975410422 770843039 895731652 417072191 913772901 587410133 965877315 363721667 784098363 555979904 627976218 495876818 597836781 128856631 645703710 951192735 961825509 515108932 611230572 490057420 951407616 621559934 688174010 446421786 673709648 170800150 213527433 762303520 872700338 924217575 995017134 271382276 915494071 483736475 629237407 633658795 713436629 66416809 218369566 905438119 985461515 368163740 725496615 891993264 937383765 289237218 794085580 308449758 603435720 82048891 520115173 657993141 885369077 658065330 734690447 467772289 512763035 3746524 292034674 343874428 861133060 98483084 959679275 123621840 430275174 678446608 890147421 125697698 942368923 317766672 743424973 609954914 875289621 42665936 480104636 262353925 591403230 371747645 682755196 846426236 975103991 244929830 977935545 824173625 884592272 541894468 892207328 943385214 953745706 563751541 572065634 735540157 892751061 424933655 733092617 392762477 638057807 473160047 594956816 92813650 752118032 346921106 386868292 549075339 939390322 346259481 419579313 664874338 716831635 310789153 953868626 263320496 702497865 84751308 882261004 284449891 716658482 455692793 557545787 86707880 155429124 238056700 965592094 477571603 766425955 810968053 825113350 305366731 960698968 400048342 637669716 727875933 851393181 578991983 911368757 580313236 614797379 363936390 410631008 707882083 926082113 273695976 628418423 346430662 573017739 305525930 543783461 872031522 914252044 340590971 731901705 521325217 667938399 560713180 987190958 671516935 689448705 191358868 299166698 789216745 979728561 251136431 365147671 32754113 537786848 182041009 801759772 975393493 986709664 433323405 536847670 433421809 958354170 475553012 511169849 638432413 765050274 854435303 864266607 102863030 254477887 249676736 524968643 700875217 727512870 71153596 981904086 70463551 745216401 45408244 840388999 106002237 659101982 190680713 658889039 805121380 856300326 174944572 849691542 451914834 944107870 42641164 851001652 480799852 823954295 585829545 671321450 106758056 778354060 582416107 656204027 629450526 663170310 567208979 796477388 806347438 902963913 884692679 905408266 458787647 830309693 44107803 547118834 756142259 868287672 765860120 826163444 29091838 508500797 40223320 152361548 848800263 887805283 400320380 431886870 270575775 455041343 987760347 994007355 989821023 997350738 345022093 932161167 349543146 770319961 92981582 515633201 92977239 334868337 890862175 951943588 412977483 825587539 133024939 700184888 900335872 995327611 768746651 966368725 286012672 877475931 149519778 717741565 941725635 988183041 861681110 955634428 804594157 966781424 959505265 968263424 936451023 995748949 331994799 544973165 301949876 929407475 316424270 549577625 384585021 623830089 191911338 339173207 579465487 946255857 290533866 291793233 790407393 961068906 814337612 911915736 362365114 733768698 707041641 996610070 306761650 564642694 145983457 734229389 758167280 823632258 861690748 991145955 1946707 570932141 828747943 849989230 635123959 710200842 646309664 859766606 626501954 698146618 643396460 668085203 749640434 967644179 252213220 683458107 899561873 948788561 137150197 659351273 105951036 900352388 220280599 769702526 157409934 876480299 130687159 911933904 146900503 531002071 489233616 749862881 604350961 895835077 343280059 995273525 270574785 908218040 434120412 593846294 332133457 373797720 592707267 877180498 661348150 890831429 376611926 399382226 150846282 597180341 417910011 454842991 111603429 672503118 860146659 955707731 465893641 590963274 27176716 525269685 959040272 993189471 68543387 642863441 839431069 984798792 332635793 336037163 430948419 788700458 886624650 928755801 893325473 905561298 398450229 983215626 193317191 777658950 818889496 821990113 376663019 630703990 234549965 442476385 253438571 394198100 284129353 336108909 872404723 889099499 393511827 840647944 111596033 354288017 47010586 558227044 742146927 992113376 447292455 576006668 733716253 877640297 803640668 863519951 169273891 428006966 431043091 527841389 153500584 770502678 632232057 639086994 427782176 782634318 416847939 907966129 490236638 828745873 423173247 768795855 603854768 655134767 412566205 567252554 535480960 710025015 845851479 937878220 703331301 895407806 84517938 884291687 3663275 732248018 216441003 521722215 310312032 472528524 377296267 407647207 924878577 964637170 82305697 136657750 142985126 841981565 165823147 555546958 373886244 788367656 372813702 851236098 945477458 946695034 122375278 701365411 955717922 997346228 674343362 996330526 126493669 667999655 454646939 469298875 937142443 996466270 296688375 670943030 908142365 920605178 317636012 861855033 528963799 968215917 768080294 956822314 705251942 907992290 97177809 614361564 902440796 911399442 910688302 944128728 656828635 688523267 26225731 447649089 504280826 764227920 708311506 975757056 890498303 890663642 37356463 985452841 340975056 782318508 921203942 998927471 212848376 764136633 373130141 688930226 273436049 496034101 151695298 992343975 346953468 705539877 609930406 679761810 384597501 535129924 70319855 815955272 43367400 265155697 67519741 324378777 26777825 200438544 620900405 926270897 447434536 469550121 190984426 962792975 107552181 180149385 102472897 253342824 419852116 515121525 661851510 692595954 773124487 963199879 300970154 832433620 44034930 217106296 852938876 938111670 295930454 753373311 272504370 914511558 540147911 791095587 610485232 613726363 197188333 247541653 249809940 944372293 521735899 557900389 192379864 758825664 190779277 468969716 242506377 517241146 263611818 774789771 449041456 609118965 151007396 772086423 809136666 947359993 754385759 951486167 794182405 989289129 222623436 927239431 868573438 985438806 749707107 906732188 149425685 839052334 746301678 930784131 961003612 979988342 775225521 784722947 144325102 396044511 39619704 710539029 877915300 974710208 387952431 990501319 721171196 766307039 739556073 952483041 451117942 565067457 275571109 666230709 626523516 804639388 265490293 621483169 508118601 626555985 802459234 962230825 149736254 398965439 940983402 960439556 669441927 883848404 205703100 429903151 623876366 743379808 240285492 889441281 712244153 912092271 304775263 759661685 570726886 713163384 23754478 972823308 662891483 899879343 483456699 993574148 863615516 936109522 725817867 791206125 599667408 856671493 503409942 713908382 853830574 941752721 410239331 898102844 955698438 966680982 340956493 894579612 393289802 670704219 461425202 895829611 535212832 778923806 892270580 898561257 29497168 511314106 995691732 995838603 821992285 960078465 644814606 781725724 968244375 985391328 796435624 860207258 841272555 920092768 453915407 975700667 944235765 992789214 413813369 500307344 449615789 627670114 683448302 755886823 599604036 839256681 574461353 862557480 221846157 621083903 848723663 893863772 624372997 829242290 535331011 928630041 235075689 495825556 464258183 485038844 46549858 365906858 824365123 908055427 749182951 841027441 174504813 608837089 543371984 589387739 906606533 960788686 469100466 612643243 188968993 513841341 592443230 779945153 763624383 908933271 725699080 843365719 724351477 753564247 322262256 499000985 384960684 549720949 867327047 886851892 769395092 785478076 288163797 290150021 811196793 987257772 174479250 284592242 698065385 886597102 289368004 377304738 627412030 676463327 89587825 520434824 705430606 864466483 622520262 828126173 637605175 940287176 490466426 564758834 374918381 996459011 335185447 955274801 207867288 969124049 86557622 488435168 230135991 719466544 550516395 891525979 117832515 666440843 721809349 823185469 384513286 895038855 673006539 912334816 109868616 741344357 755146553 888892717 279253137 475213784 519683900 963550774 361702019 426167449 914544835 923593356 110484031 703216723 556263876 627009087 794072831 996978153 17566024 741055036 601211387 628389489 882486583 923412393 453310974 639466381 168585879 662603430 646772248 665118273 266014847 458321015 331519360 944295328 924515785 979362128 834111416 908833322 386512126 665506524 479359535 601468773 279008654 308629157 597328969 680287679 55888080 574704506 390330742 972732870 663693339 949377739 227105099 546736189 813818998 862391447 965598634 973552260 972475530 978940262 677468286 980706739 282107621 558618269 957269371 979763353 961724323 988941445 888915796 908083682 28225343 293522996 652439658 916896919 924571653 984838034 601451035 798442892 778764399 833570870 552992647 725061448 792832570 952256179 982512236 984365152 219031280 772534116 696307195 976522063 282640625 633084550 59101657 91064996 869837421 981132041 509428822 939805617 319866393 984572160 505328020 799920509 722974802 757263651 431705008 884401616 95608018 545544712 302312524 607472110 649395077 746711289 303246592 867937079 194708144 478030267 58117516 672133800 353481082 568071136 526283628 531175241 763461065 898079305 182397261 288967793 220437786 643508714 774936110 971306000 513698639 764752638 800162295 892600969 864872718 876535984 776757545 809881920 832296493 840065653 588171047 785387875 703170512 997000654 35402410 47032701 420819186 957572379 850540291 993839234 302721308 439309825 303097849 416599782 258279487 981034742 515506557 569269716 784339977 799025562 442881858 466157378 155350961 630159782 753189813 786675356 569500091 776926324 862170084 964742854 166837905 778944404 61467877 944410637 368937727 451085699 246587015 649382586 126992169 728304758 181758729 183818293 509395860 544299345 112967734 847737137 770548484 835390445 493758438 505303406 227680060 591511833 417599877 542127587 738425783 797107083 312971513 966904702 400947300 512760825 827738835 929375132 352232425 592067645 963722618 964006637 937800310 967249354 497169031 877212126 794589819 902237212 644822457 727537284 832464774 908939028 228649763 648254618 295557957 524375429 755983146 886075627 56282520 233260009 560003184 739769461 506619264 882204797 655324925 919715251 861443638 943388074 514807997 762139022 298966379 471273419 742225441 968420339 439467609 563611210 656145742 748737807 472740617 855983509 275101578 382360494 171713932 420726531 377639316 470322003 320417749 974934148 14261868 298308313 810445370 826358962 198817756 916127158 90224141 622585577 895769640 982271633 4521865 546665637 251614041 871954823 2078030 700948426 598184194 898100274 847613430 959327491 763938676 792830164 104290309 412640842 685245917 936228615 392915209 845882671 686273159 937213930 123421028 935385904 358042060 520509147 615571222 638716201 841037261 928696141 122172117 492236926 841858788 948883829 796555036 894859528 358049927 440005774 537503718 766535352 321078288 562649254 281350643 796725010 825215723 899218900 675140312 767534506 503463223 655616264 166334027 374741994 713823699 837756079 707863773 805276382 635346106 809920215 167114179 793312862 221425319 427860706 367526061 937627648 27591949 720461349 607375530 995897907 7525247 539072937 225482184 929853147 444339797 446997206 757211617 953442906 18610885 37553948 490454501 625018599 934127872 948428313 867062782 974343995 548394567 687995418 449317607 722452242 41320102 417080336 219279694 989397271 997886827 998029757 608914058 900502711 436170070 592436265 603556480 880027001 693471691 960163795 559502315 780731656 775524372 942828136 819087535 933974835 89514892 535294418 94586227 719985582 687587789 994845470 527125353 626076364 187180939 841351238 8210757 828490055 478192565 818051711 440704908 666235217 264510038 919134589 319664496 654235630 805211941 805383694 305802488 966889219 924721788 951003996 783592878 891628663 601478718 922769806 170062731 915364308 739531474 946201896 604103696 867961389 245945589 630972816 824689405 932195205 11988428 393747904 854485175 873936633 923956057 982707926 973625778 997136503 674472550 778928563 953231587 961007437 536121673 759816805 438584582 949712200 857557598 988024184 292215522 577286071 47019940 597990693 81539821 387914371 271021601 580571963 988674612 995866285 34618023 511553717 67853249 770190399 944697297 965696400 114712024 964593637 963655452 984270449 923105936 925521621 376517366 683296751 873800633 874945148 454144290 506294396 652639047 902560145 967339193 993817152 879031896 880767351 974649909 980262546 546312430 774687614 469706018 758143648 475614994 754844747 480506736 755722530 216325263 811396777 928668221 950777671 70724481 423552502 809051247 809386059 149846941 801904760 484416821 732798916 491139957 891501621 716497362 839626058 192194908 442032510 815489954 983642096 438636549 541300219 155961221 662370226 324972305 979763936 645216105 723022960 807184693 923343106 180087810 652474723 710018748 898051880 63290446 623748147 940458987 953305545 133468618 273678550 661489652 987238973 703872704 913342069 131265372 195186921 758291911 824070203 522858764 908286903 118018338 761078537 205028995 700826215 72637645 877474317 552222009 729534990 678096773 948019836 37348359 459258648 792459986 986739088 20704136 91748424 515320738 748194524 157286412 356444122 672785003 820632190 846274654 893057046 95288342 514834289 175803451 379966384 347649451 738341766 810250102 891632829 52199114 320658956 100439797 456593702 12883898 199107236 405397388 554452148 329169211 485200670 962732517 985376345 918728804 921880322 875848918 877861441 514575116 706536668 905617777 924524716 500491598 665195050 180630426 820225265 693343374 945341195 159442921 829887233 245331531 715624923 873264936 879702169 12283743 963774060 332906354 351233966 58809112 732593861 949196797 965440328 513286126 580828851 486811855 551911642 190370134 854029264 549478403 561165704 96749239 926545841 375849652 835629265 207667077 273635160 323054725 338560779 943407810 984319252 236484442 598541620 368933163 636783781 457102424 846189392 307291937 345731290 282343873 379948457 835955842 984367774 457205930 612030691 334069551 675494539 490373420 965720707 449386502 648873516 301301516 805271609 408658415 511143879 785530329 862185581 666878857 790904729 568092675 658265013 577673621 969972751 691886340 837116059 842447521 908195164 589676455 721621704 976267692 987891190 641195574 861550607 828081676 942791338 232622500 349197574 387026958 636092723 93626075 903125397 127043660 806682012 439251075 919258248 957020550 991421980 655655449 757262092 413821676 916677560 828040463 905492064 876943207 972830186 993780934 995288238 314065484 669692648 780600757 806438096 215418843 539049136 210735704 347842439 473796254 657858923 837425995 879176101 461315219 595802711 361803962 743640417 698064261 799093745 507529566 590155377 998295242 998790280 17383496 462489872 52824660 674158018 506866074 717425550 158076060 848798182 529727803 748158945 547482078 851621683 202236079 520305190 936644415 994739016 785290110 924407504 713296191 908929644 811414122 994788692 487025618 842003207 577551323 993442533 646304667 987594999 797215726 926615250 54723425 338494891 891587490 997466186 978670372 993248832 730623951 857714492 253171434 868037559 318487397 992703216 366489220 511792251 725133884 858027902 2778153 321055718 372019183 946909938 475253021 820778176 844586524 858174072 749828142 840579259 291937634 439965248 374992504 411671017 329988355 798957312 331260889 426378365 496436509 879696029 328369033 390253974 830386280 960479074 701232011 785122340 26257223 571012754 50960251 796695326 185434250 840837824 411844941 631429555 736359569 899534682 163581996 284421870 686893287 902696896 669138211 678887870 152767788 315278272 990024102 992683283 275819158 786452990 174689476 844398487 891562417 971164292 349002086 806406183 707385713 964005387 630569398 820058855 713946322 817837908 23226351 864724538 37378805 867513118 782455268 810063066 705381834 966004912 420513659 558850515 650749664 911165102 598404712 976393087 745279857 762033687 882355724 967507830 994005586 997924517 235471335 404707093 979118205 982413881 713643259 933046398 534051057 848631654 759158328 766502593 93331386 207387617 992446827 995712891 239129579 984354224 440093750 834099029 337718986 409582000 501996826 615176315 543303038 639000971 909080588 933655433 582045177 848517463 413970683 741187520 283100053 926219527 915330422 927558902 399480113 982907709 3440724 238679636 364206642 476554878 8762343 334257106 46197105 762005589 331552174 536174046 582396224 715990010 77300501 454986626 875800360 927747919 903952170 925586846 640936761 967793069 159690871 550651828 476608633 700061944 719928274 839499915 337987217 806982126 482075138 487060584 657707994 948619179 659787926 987184229 425763919 621245316 546747410 946851638 225800905 531197888 469384358 473289916 411988060 964298341 106931358 417965533 972746074 987410612 600804361 690728747 594540157 682249984 69534439 738932388 181889945 261187360 734971512 973563949 22003824 468428906 869376979 959993356 397168862 705108093 658080757 683406159 81693663 876240824 640394149 713103046 291360300 963043193 103020505 481732510 16476656 528082709 65276642 474294884 445794848 462126179 309401603 751539134 832717708 938269053 257566775 342603587 84086234 292068556 607580378 730737748 336213427 806842339 455410169 576049635 299611066 535223350 85470231 234826250 469104920 593711943 723198405 967394926 133385372 395393069 298466192 476413638 988903177 995592406 538058249 951202671 349661737 767230407 788009807 855605334 283405387 704524874 868219385 870867932 139849406 187666619 233999095 641039840 217064054 672127082 375415425 667718333 534191030 978977419 368254698 556283583 554137017 968690006 835753913 936526773 599799176 615772493 221006444 794638854 628460104 964478589 115749046 827284464 248382853 514041474 999196244 999313669 450917766 722522901 254437010 552845642 692486192 836792197 182674705 836460892 635661767 741532799 73169677 409368951 815079736 824171454 825010726 962228984 6236374 548038119 334427716 488255202 332802470 527104856 840345875 997037870 51102125 277841927 327730473 440850861 517909323 686158115 93116762 957909554 961777956 989446446 748535959 808927988 107760116 170134466 409818031 773871884 788012685 817992792 38928474 949040481 374852747 587292839 753522412 859974078 249324317 674885278 863326992 974745370 551981188 974027438 139934443 965719224 727405146 857984918 467405221 799595248 795212195 832578796 719703359 969152652 71200739 547187540 534450132 756408320 979664454 987207549 729315440 972984514 965553464 976214374 157427516 336515486 253744454 746316035 572515244 820346066 310837056 470926778 37698900 656738733 702560346 949723208 655381977 763088701 363417389 868494782 540605504 883933389 966329713 973252496 769729228 833271124 670330438 937396214 981194001 991121994 511455758 816994971 701924950 820649349 27251281 82467169 151526359 889410575 927109209 942755769 128845793 570777504 11036321 955141553 316373521 576380138 193222890 965250939 35478040 62781010 791581573 958286875 887172205 991220533 636507260 779665786 268322417 567566538 55669939 732499904 588782922 767270600 968206545 978196719 949106739 954025300 522355843 636856778 997580125 998307737 957511318 992040771 252582503 480108938 968822992 972989986 209495897 718264226 958611691 976561032 68615030 631536722 221343683 950113934 439728662 722078413 907409860 915524106 396452973 619545266 355477523 695653693 582712300 967942325 147990186 625804358 955082358 959706772 227496691 318986318 116457248 824362412 659441092 837503568 799114550 885794129 853819561 989185107 78440901 253273642 414844726 811820988 562466199 868840068 920386470 941700237 682494840 716257659 214936325 437930327 430693729 623850091 673191120 878560275 888035472 976613343 531279267 707486865 268417051 856747236 761053579 844497775 894496407 932596025 70520677 642836717 255398694 862389910 173058240 334594925 454718972 474018303 722208047 957618007 864344448 961652664 259710437 390107518 444308385 501494818 185700833 684698391 961634724 995429623 210752972 873657067 868943515 993942107 211842726 580873868 593658279 784027691 546634301 818283500 933674747 975239358 257426336 386441244 579188798 981936423 714991022 739487283 768106697 799438897 430971327 753028362 400936132 797731625 164375065 767721154 76006356 469318576 77350159 815186272 970004337 980097324 641057169 698072033 624747135 672120466 98552487 206764433 701280266 848698276 416678766 762633954 398739046 915677307 30218934 697751723 412272352 887856566 822905817 826341436 672848387 684814717 529015289 795095736 792334373 806799400 58368938 100066921 984226620 988531280 821976344 857342367 15049636 384435124 907552418 962004366 900721990 930306662 644711258 723779123 754748159 999086319 25260361 856819588 563793549 883393554 759448423 915229375 255517742 646019791 400437221 759080916 895503713 972933016 566824995 853333211 324816728 770262550 243822211 441508007 164688004 756369217 56594154 92480684 172566798 213477757 951788523 956764094 537803582 876553934 172301339 615038648 945218569 987103066 486916539 713936866 229238446 692820073 692793732 719569037 93755126 607293576 156932028 343616476 740571947 960632996 297198814 660383646 230720593 785229504 840034185 891646022 818934356 860157818 15181596 33908900 861136281 908031610 658787289 985826403 183303583 620621556 283553626 776410678 975718785 984803963 298522686 829925556 847497613 849669498 294157156 687365774 968277330 976894651 163404652 395432036 256172268 261647718 878877949 993803652 687686989 790678615 12276077 815851967 282682187 310403439 586363052 593674247 599595848 897622063 657506325 918018914 379673186 759563410 943176096 943634783 200208421 928598307 511886980 555358439 867402258 925731040 590262603 665598953 582942645 854663423 871133197 996081221 270773320 330767226 571539126 807708539 393605174 717477165 588318865 793629507 686731924 879892016 225209034 876165057 820510775 992229457 27162059 489418529 912109313 919047647 924285270 968683551 592984660 745982897 901133246 975567376 195101234 845286376 856454487 997870129 91358356 647080634 617916140 894802183 198409347 715724071 371223596 924647513 805692214 806412434 652397182 916154573 597494237 826983172 335578516 890095552 816117626 946378441 635519703 961710786 867483067 992029735 694697785 994912684 107603067 762795825 23821115 317694480 334938781 472266721 698289780 978260907 402031094 990007889 40061840 519705853 521684710 957918316 55423685 974387657 792634500 932073367 206958848 284700062 696215002 896527507 234380238 477471934 51368377 383858693 867885326 973703551 342941233 375645996 867332670 995477277 931416912 988656952 544207550 721819842 290645912 633720858 159008790 448644061 528512461 650621459 188619669 356485734 950815565 994405829 113740056 142119516 190886378 587339997 697590773 869784344 929806823 989024571 885099912 943263213 40955217 889138010 115793577 776628888 366901700 663968253 349640997 866555383 584294125 935435857 919206088 965133583 420447591 565925502 928109823 930264190 668254779 897099922 274264347 929956290 728615008 978547379 258368304 300070395 46191234 715693127 788767912 977540455 762567097 771244221 975725587 994719095 682616324 950349348 512557794 627618547 28776997 824777650 853754796 922738996 633829539 690516470 389827639 397708913 380993773 486225151 144217453 680618071 200652234 849264100 530642284 642219571 595777065 879528913 454431736 913731628 451292932 684174842 637378279 719792135 764903425 848862543 711406412 936606773 222593869 405733907 489871831 685982791 774718823 801296396 401264431 631769109 282640250 680926415 376225510 562799426 642868567 666457027 240770180 504019379 543298053 562067944 937105198 997065402 214270417 930059637 941366909 983408203 275585679 462035705 901663454 968457113 767175362 981342600 524498805 581626802 723608740 784033490 247664519 281446687 145124647 893040596 250121415 671231720 33680001 348764428 345613052 579115255 640479539 768481935 36256032 530836897 415080444 631114148 68859560 477949000 313199357 520446355 553810424 600027271 351600791 424860547 781262137 865578788 222626411 370577414 335501993 599378780 38507708 989540992 457521174 572603934 188968314 851879628 355952433 370701918 133392003 529285012 866693305 900585124 903770244 931488227 370607867 553346811 670749822 813724644 985333690 988066147 609843032 910729830 566670459 957614527 550483801 797528842 973082096 991401190 639759278 863993821 250814870 444660491 722618165 954462322 325022946 399542427 364211746 489112394 13143057 64811510 537322223 996134347 354015345 804892980 919205735 959534892 697155163 889460134 248735663 373979788 497108720 763203206 317669421 364878567 813599237 850209038 611648969 678562458 309121090 553755445 703692458 983556654 730373954 988450854 606322492 974422875 110603405 390310059 763833874 869793040 140303435 370655805 509679763 563192928 725320701 782142314 209396586 745569741 648631593 961106708 428542944 942405878 544164134 718099650 369202820 893412886 499326129 952763429 832302610 842339353 314767726 356191565 3402384 498361601 690959149 865244032 197710359 785802674 904180263 905922759 502257731 971022108 45259267 411726767 3683347 870778414 671677211 981926476 865898324 890151494 45787104 863852995 233650341 652725767 621393548 979782431 917008924 998791592 809758776 826081635 683359438 885775557 360500365 364256509 175668172 796223163 591367606 995871400 878559253 921429197 509629430 737942728 373158840 915026044 831183465 925289677 718034711 859394110 737414495 974689544 658736094 901439322 596583826 729525207 870341418 959395441 798161558 894685928 866094158 890150884 209101937 316547869 233181860 756310538 494307571 566226696 259989277 889703356 117879578 248444852 501003340 822080510 487890050 847212750 178677875 608212160 870235186 883686548 660590063 717945202 67882604 913772097 381679957 522851905 251756793 909923651 288589081 692790421 461062026 536566770 35144478 120901616 419431105 420884123 282325183 823060003 28658146 609433687 617774196 842701717 505753597 513776151 616898817 998830038 766977227 888642192 973318885 998310121 367077505 707920876 879131968 937101042 332416392 997672228 486513261 707292186 689870418 927671250 46951628 882589464 914619867 932938374 824367224 846244869 362104541 891609794 503640396 688297843 73171528 781736720 660031257 705269196 461109462 768845970 707644190 994378309 744206169 877604648 664871673 891311002 841770022 850258306 495388342 938314990 563139757 858082811 372477253 732321217 678934794 878505416 399575069 537268356 955866830 976823673 805596800 818684934 313510783 542074654 723806244 780854650 639832398 654963492 951982303 962668990 183009790 562217576 693067170 876270691 56902049 59440209 322464974 472744497 116816677 150543872 184638600 548997569 135160554 678923732 973350313 982847493 66253144 105867666 470167428 898674518 12687383 254330148 797812244 890107709 740988707 895025339 688310827 870176703 527475442 991298909 771894120 929588376 29433502 547587052 597634710 876425177 428895890 775927254 383892956 598597594 558089103 577787506 880830119 970892098 583272636 754461246 92546212 562848566 864512742 890729823 118681952 673412630 637632485 781036219 28873899 746389423 937460998 986698219 508490199 756090493 983473554 993266722 213102457 410345142 902680799 932322783 9563686 309456654 536266146 741977625 659426664 728412446 71242325 207151184 398462394 473036114 482892327 528642517 331853676 622777466 49361150 582134904 978461041 981463825 225362742 451167156 524153752 776015871 313729720 957822888 70625480 137442149 538355494 670523034 827200722 943050616 631911698 698521905 475497835 665333500 308122864 552844422 954590101 962210823 740416250 928314417 407383652 702227029 892470836 998708829 358730764 382827195 773801466 836652442 537316445 742642786 349305797 718627285 156815888 654603316 612316746 995505674 415913718 927508959 320998120 752831524 67146477 746742068 391035172 618503777 128318693 601689915 52315275 950152247 45380017 48066945 574442200 666870136 13258929 654415762 458899231 719942289 627863972 636352840 556042706 594431900 715975717 719881349 373996405 417918043 517320487 729945692 747690287 894765100 563731227 678631769 48293734 308032608 373403176 741104791 333312134 553982553 728025376 932961778 526661867 985843683 152000649 268973778 784846837 817091859 227503289 936297672 67592589 564960634 551843897 987313639 263519097 952576470 106105380 497552748 256242972 365653332 302109978 534674442 960657785 987204306 667722603 681406964 899940827 918312335 106329746 612092606 531854768 839463046 904796757 940889529 41467783 531763163 629309126 878746272 267753979 976039414 834432247 848946555 348508064 779561650 239555473 767537033 471193182 703510454 401578409 716463359 411645570 707583753 50936433 646451498 317878564 630080910 981037264 985683671 471184895 738702328 191116309 373461074 691149117 721087029 510059121 868203699 879228004 896568776 765832584 811887794 784770160 859863170 388536001 391568613 361934536 424932299 267011467 439068154 428800733 735601882 883364017 923113631 367786006 385926658 545018672 834026531 773735984 957347128 594913413 665352580 251163124 629195765 983038020 994582643 753879049 842071651 242686212 847277439 711974620 803468433 643418081 924860147 119654435 380033097 634417491 932052977 91945831 146894528 229839248 736967831 122058170 538007651 504877658 600952413 316055781 747759059 850435459 929111529 364051759 749623777 350867861 358679182 144565424 564332247 723149079 957744402 688869524 905453256 810047515 922445054 507282927 966140750 165142772 174430156 617683248 742137714 398938154 458181591 689486120 759169119 250490866 525265428 616889501 881413517 536549957 887861708 407860045 429514289 540771974 668417658 124738537 246507180 978302261 992635777 697282741 764952369 869589563 909544943 180793925 752281118 397408819 433530992 576853442 753554150 586683940 986593929 151625085 839185894 399581490 649470028 657366223 686133002 327440447 975949380 159361301 759311649 845279414 906548888 56432725 643433125 624452609 910564932 326931388 603495996 328353252 437061620 911972521 987436419 191529384 247645488 761528951 918246594 528834864 821926560 84413719 391797534 647859326 850734459 15653837 182109152 327374071 697957575 263374255 687778728 794935207 938663784 293040603 363647108 251808398 290382002 411648093 672897754 65249241 789428865 438200948 935074230 469129454 852345426 937748030 945507266 226380395 457741534 497201964 904289338 437794949 529899268 513832107 983705229 283984339 880372960 990047050 998500235 203937966 374399628 934430317 976463063 89346240 644183976 46893708 722321863 805870756 937871905 680646806 718403676 682888428 882494176 111176314 331465146 196228637 620568950 224479563 617334101 103646285 267580757 3299277 749001090 152690699 571538722 657702358 689026237 469756293 749068912 841050944 992507872 822479749 985835709 539498828 729849677 323877548 483382344 181094320 252838996 866440538 897757682 142927410 330935465 548355591 824553720 9991525 99666259 376100994 519256564 447133308 615741389 311540640 825090647 235406181 565733056 730674852 976329211 691995800 918147945 970708165 974805474 146739434 436757513 712526742 918570569 76356936 835033944 224457267 629492615 798803535 981376326 179664188 196635409 945423364 995421763 527108727 715488111 907861341 986315066 731712873 834066838 471138883 734638855 304491234 984904785 186649043 339637793 374358919 392294518 107025545 356888541 902232686 926890625 744701117 766769612 421513394 563456368 576339379 679149487 269343408 429856679 9447380 821019120 33208016 325742327 586182000 797791023 114244634 924376443 273124746 949913793 104223060 372039529 882653198 911995274 741940616 825521839 976146611 986856070 128241351 204843074 823661046 895449778 961835662 973569902 270555277 576747634 41019970 434672166 214967753 379520219 54151562 597199875 565876998 584474363 649210888 874862593 437878390 786686893 915850676 941230753 448721877 891459818 72522986 101571063 642097709 991827334 84012837 235138622 911040386 936696185 404573165 464918879 84193210 336269194 828063553 980755153 770484679 816271015 467897758 653771004 705976721 784155840 681351635 946595898 173043397 642308656 423420323 851812307 326698056 348183234 260244648 309542386 997024084 997629986 884442688 925555564 995406023 995575481 486521365 931033504 482033740 735111926 650629291 775008015 109385538 505257503 874872487 948947172 718070525 756337228 848122433 984678500 705571778 771105786 330031484 478789614 461687223 981845855 627319908 746426508 57178896 887691068 840048730 912052443 926695156 975193165 29519920 906120839 147479749 251132563 123464362 273259202 532605226 920564641 14896457 997535089 258254278 920902118 193242190 974589648 439185498 484073369 131121812 903080404 47344221 547365362 563474703 757016284 614689657 663186604 271653080 382429560 130731781 205073459 309646118 479029708 473510332 866098275 746064602 861842456 700921209 831018052 651770082 656510928 197517834 961434868 583406675 607377857 259870980 299329200 140023172 685975431 745134188 967498178 860148859 969883412 425181058 670705181 742930739 882031758 936014969 979711685 188114130 278975592 838806480 888855824 743560570 959520385 121620600 684437463 405290685 528013242 809362831 824224864 335278944 335341045 242390027 804466662 755158348 984088659 363094651 962503962 296316895 332577500 234765105 237920673 468012356 479230777 517712344 707486714 813090279 878839620 653147161 902464734 891348820 937552945 397099150 951297184 12758723 728391773 903255852 996612584 922177348 965214983 244342858 256300465 999108159 999251692 540759503 755543881 585606731 873753219 373266225 558378737 52817652 195899611 460816569 975281721 19119297 231422004 970764090 992835367 791667464 955586066 689280143 806686608 34170366 487298098 843998919 954258823 592050140 616200463 224721728 509621546 855443526 961229878 486385680 937909451 983038225 992865931 971740940 974655994 94200941 273266885 183020245 990412944 224914197 830594824 905066103 989634234 872701697 916422669 196954302 958278854 999235343 999316658 308968305 572971604 331119874 384400305 480949231 592063890 617877391 989277589 823684011 850292988 420129363 524856143 703869748 995317506 667802049 965555031 828298503 864966063 652407427 830769128 206988886 834955373 255876550 934525258 207075845 555578019 762999704 928283576 614939919 817804256 775853578 907160025 490139741 760611898 617508232 812316765 337636796 970380907 333399827 352014948 192551691 614230650 121691372 906469437 535593299 936927906 414401580 679662059 84401053 175654779 783375005 886234046 878992663 994627694 395921040 608282111 90566867 570165861 882567896 883904365 28248468 879962359 299247847 652706725 173611168 339499108 325412386 932290121 773229056 876748559 571919242 671907082 503837293 882962138 102636777 254055993 271843876 351328001 789456248 802240902 603184844 760980319 822716982 971764311 562273136 779516328 437899650 721476622 337057421 734762088 35290489 946877022 723546776 883120546 100537048 624766148 672934375 984230988 492923293 703946734 497287136 626473565 756182803 990646703 65052580 917895411 421639727 707079311 326685411 751568093 497816705 933425441 155357365 945959064 504017639 551298281 708842764 975716377 973088265 973520240 68590828 215050074 921993036 948093590 561297362 914184118 685949034 749698516 696155961 811828623 444759779 505259698 212474891 678459704 943615713 997046328 136729542 757113874 186949523 992446913 502740623 673987189 578521849 883750811 127405167 378770731 533214859 625636501 697322509 939091506 585931276 993738376 938122043 997857266 590902637 995130754 53616786 816893388 877956623 883345533 823489350 870288010 89304107 358214570 64101663 591004984 112296352 331947456 720741514 834952977 519960401 837085230 975862905 978106903 990894945 992937728 340688174 540221133 562689910 689417346 185424754 889807160 772176224 987310713 608674394 711487577 467681076 782386202 576033295 917151568 3457438 282131639 529509025 668833624 705021752 870087532 482434724 964968484 244490326 927662869 387708820 854116549 718532111 922305507 672959288 795003593 236874542 795517992 693685233 817823162 171659355 745916757 280302051 298280577 674539076 918627358 860363065 940062659 641180378 715230177 84900455 457614127 948187530 983147237 337276841 840577934 707526635 917035969 506694534 905343831 11052522 556817362 498975983 896075774 258247513 338425709 852068051 977011832 270285076 411894601 155966171 502529987 184940876 427141382 798879660 954624857 86192 225831595 384302390 784802616 842143210 851113036 836488573 897828771 694182987 823460580 309365810 373140577 931469322 942272154 156291426 780299787 478013423 928197932 12339450 520234387 602888409 752251552 693312846 873939777 450701456 488923698 543364671 939107984 222890844 960254019 202990390 835916965 688733481 710438868 998722874 999190274 303216022 439869475 518868845 677937553 205950059 363397037 516941499 769555591 525729322 863678853 621690664 925274162 149870023 402962141 70150997 515598550 139452654 185099365 954497691 966177969 250951415 664964866 581238329 622483622 498220590 976373053 761683034 965839693 658683594 900304909 449777029 785822969 536813646 932166662 442956862 922829376 519816588 753551171 851393299 893059196 623264519 940311573 232831327 780484499 276672950 540675363 201906924 434511400 195003744 491494184 872451598 872856209 517959765 767487718 861111 490375214 390380554 516903923 162640311 511469701 984299003 996921118 351097510 859502535 79083489 311892137 514708475 801476503 227767824 433483415 307460862 365063051 748288690 846079832 12882271 393360187 646435774 686515922 208675213 713805770 599251529 860066345 450681393 564643134 134524569 866551691 829706003 877746027 754579476 939468271 390989428 828782323 351707357 603193789 745005241 848147568 944421102 990011782 681033831 791270507 112422617 313676791 450967153 634029102 672579421 817813183 167807202 676304899 533550022 759760721 965365481 967393800 352728550 881429449 640954486 673113400 340603007 508713619 649193396 743480838 409004779 969320458 878558591 932729857 879204521 948357765 989656637 990297146 860752587 865548025 487476749 558533018 992809466 994071188 336249064 508752778 286904148 715422920 959317165 978912703 29416539 494370500 177163002 769866497 670264302 974929863 269110211 748355470 205652443 407176933 187758342 947413280 588747491 811523806 457320212 836051049 110961226 739750815 681213145 951744453 514690717 905856488 930707460 946580783 550931464 829401307 600458618 986481218 897136387 976602853 687755123 713208126 38097364 152007256 619884694 880577897 282808184 712151311 32107234 794996858 518249446 552865836 988384581 990898052 941261233 962909355 581843070 691696245 959494457 987326795 146507708 321604574 915730515 964998374 626111120 659786010 522539637 848518214 746588015 801163137 941411860 994805778 981376674 994470821 791713340 931958975 322796462 674984007 362906755 705380736 395181848 800930484 948857081 968321822 878944289 958666965 623083224 744704851 40236939 729331346 901685215 992538998 24420792 192776036 934082523 983590678 946936929 982936932 583402995 804428819 971880684 987975865 510868686 767963849 730110769 733854243 516754890 984717603 838089456 998821179 849715138 955975758 588554218 987127816 303487140 467274579 30135491 295878750 450805543 650610481 468633714 685240659 938749386 983732674 940538653 988216593 232113764 553271954 270988956 821272639 32764366 865052482 110883605 831536413 130566759 296981518 281576391 786511507 432148158 959014864 563882327 995393095 385692389 707146129 562230975 956593831 935070889 973557148 962136695 997849237 19549765 957408433 518927388 591599044 523651515 807680236 411634978 752731663 671255586 863180243 714351479 839945840 146641158 621513374 90491100 631769086 275832754 888716038 883299665 900400171 793963631 888421369 463755730 491279837 735781958 988045565 612011115 663093503 126727241 577449869 44728210 45056451 404269116 827059667 376955235 427750196 439174419 940146991 751262737 869397074 669489985 801336066 469080433 560632462 494250804 527334409 692348054 848855969 581895876 597783957 760736115 936189583 32729567 539892564 671710573 721343308 57573355 379107982 508773704 927681067 582031430 620926484 184298276 784063669 408836674 861089724 252989604 702838451 890604649 991624199 128926228 936812588 279094041 764311462 818292810 885212678 606743263 652587579 445845763 943176788 168349105 427356195 965347033 979480096 250597162 551741196 394719860 850517004 146067047 689125118 572311343 828533438 586380744 859283273 58391432 133923007 280994440 919620874 414571348 910826602 766412097 952717411 632361485 653633690 858260728 905211558 118326789 685967967 647010665 691573125 411419624 682113654 555567771 668628146 9275838 349131694 308990336 989904170 290206970 395853673 597860245 661169956 65260156 772268246 238062270 721029639 476493872 663727372 709858574 950534971 766377285 949756491 171013444 651848913 609321082 665288198 344142655 567163255 439169193 966717361 507678280 809212296 127447140 208901501 776243681 955911735 943523512 948326227 951269983 971033523 712741686 989232486 73211079 572857088 648794815 743653152 607551229 905062452 89098569 291795571 193256424 394306260 662907558 877718862 885020041 904087183 70185076 799381889 394117675 966367030 574451101 959791355 396075898 549878603 597206619 870880167 437319373 728655957 373072396 814860981 164380416 314323541 26402863 499656750 448469773 569256691 577160869 671994769 354473602 650635449 874461269 985973101 976269779 978857287 304573017 610698753 142076551 486876569 376638860 707510463 684745261 816094361 151716801 687103700 424657134 439532292 607739378 952945522 188819563 845720420 69031675 830295124 70507508 144145834 754672392 898917410 739244437 743681565 901909265 985546182 661196890 788198497 408457591 758481765 68495065 564383551 949449135 973075030 914716832 947769194 609771812 644031794 564606969 781459950 28192796 428435551 256929232 353421841 646806821 855533362 472772056 862695129 991832819 998025406 291491792 336755872 455414156 966242238 145871245 149721387 312637202 461275940 974903848 993651410 275422555 968181732 562406412 929605027 515611773 857040145 9213466 364495866 326796517 867023985 287021648 618641780 561528941 861935000 797969855 867618879 53010125 832681811 124822201 789942535 642137786 726003304 57428581 762521097 498808151 746029449 768399573 929860788 903412277 971492814 765306342 967939093 113042734 161796888 997819069 998268847 447484317 946203594 531857646 597282011 543319058 840384886 126447703 700824483 629898921 659609386 682783277 868849306 527540656 776179890 569756772 942180963 124357218 358904829 473914728 678504064 673615885 962635727 975315867 986218067 879233135 916773401 973040956 980765725 476278973 604272642 903976524 978826725 25564976 525291255 108308882 187037692 426104471 748683917 491906014 987478120 674491386 917793131 745012273 817898663 32878113 407567825 234227946 848112866 895847090 907328419 202974132 462095579 457499304 704807598 634324444 892836810 207262644 539288182 879674441 979388199 53244796 301084613 913592990 996930156 644012039 959158341 786708287 879389644 934564061 980800105 442161998 526528597 983209505 998347774 840086812 932606104 605976139 815813299 420220473 716404747 252091787 344583067 877416681 883724124 346570665 659673756 464776950 941162547 20363140 716065829 540239255 729729252 894828878 902062967 130977093 519031002 237203805 535447036 539297312 638656448 742458292 959720820 638660019 783692323 717420584 872887166 593728826 915070787 367794733 856613680 369864642 638565201 557798846 636829475 995085061 997660900 46647265 929125208 829285137 872625365 743817193 791670788 714361405 727752623 315700303 808927898 717531521 922839890 329199488 894573318 811011974 900438961 677567436 771614558 432490367 706287075 134552947 405675870 795891165 964097890 562141046 959710483 226364906 302491636 230877046 466806826 786241318 860747976 399009596 622323747 578355006 601600571 400584464 770260827 353664463 615481783 268161471 846689604 257198299 563197566 932413916 996269572 386783650 393023343 254878252 997962110 847278418 933677074 637036585 824818711 145643763 498916347 235387500 524903907 637027916 966820682 91889434 122126587 541310556 648379240 722009824 771439738 456256773 675423938 443951540 601746829 120237311 156407905 948578421 981542794 853983464 900947728 614066632 750831670 457475428 552397089 340005778 842260373 824114708 958942354 656175948 776104209 399862307 835544935 370970570 959609250 865424194 980222076 227317125 604915048 15796112 774399269 102063971 822631909 680625707 795010554 823282887 899104091 214833769 965146708 693837540 709314327 330623745 698763926 420069015 684210096 435382177 807008127 83663036 345697135 924440553 982598417 331521612 350678482 671469588 921082801 297096544 715041874 412495465 500696504 213564697 353552793 211336895 926457981 264202916 763491430 384479871 499505522 7225038 600049957 989254988 997240285 316435793 549197083 511286457 725513874 332920067 802843801 319896792 941605189 7529002 748824033 243804204 752864001 590271910 934865227 923931470 988057017 744657093 879713392 36516145 802256477 156669224 343800410 114558967 456840347 851849637 891287409 371872756 956395454 727836746 778707136 922018792 932661530 379473092 978223163 49810811 465253651 64672627 301982720 140735589 662475620 130640412 261809429 177792098 498661541 714549765 845119975 656412950 716170899 940959239 955298980 341069311 842829134 867317868 950591379 190042357 406953855 74195114 919041563 423751288 595069104 871533582 903992950 346256738 349329204 543387490 894207713 292423294 696278433 871063803 886007320 889298753 988952837 431986807 523577563 672193847 673092373 287579732 427826469 142123459 622526854 886839906 894672526 874847879 882323673 922909798 928127975 51894215 531076577 960614494 992663094 67115492 493582338 378994970 392675896 787484132 810237098 963792928 981396164 961261666 971937730 443468497 722714573 816791882 949464821 497564873 822764937 422854873 476718608 802673841 935165350 828267464 877804335 387394347 595536047 936655362 945793948 818732644 892302073 616118861 702570188 84363670 94569156 783832574 987527594 381577150 434996135 623567679 877168750 850021184 892541929 523997614 904680124 457605671 688206062 6007600 499972125 932039157 983941670 954016605 979418697 666529562 962230105 245914868 929598852 382318954 491156203 984642781 993721194 232355141 402847606 825892971 928998841 740792348 965124204 960634496 985352222 118571255 887089982 52575372 363033564 917694551 992591435 444590681 989256382 917271939 933672694 456625796 815900823 765908839 816186890 700054251 973063320 202493952 334309348 864567889 990407289 545787259 845234549 232043229 336696013 70697302 408606899 894951828 968969223 566617995 962583305 101168428 230580876 557913862 695457694 865223620 996016318 511166786 828344387 118131958 945608697 749928323 787620406 222475171 596736134 410618337 954847699 772194889 850475966 591534326 628157227 63552665 581541024 459230098 980294286 414444544 806198254 239793786 246566896 539983415 576626511 669134533 984470918 365810310 866455761 175222068 672091861 670513173 756787701 195374406 506839173 418320589 652911124 646481935 749226774 708320817 991598044 883810599 906991593 910187057 939743737 24472804 397577539 145421752 348224299 221817603 400447021 641903773 905986155 256911600 502205983 177838544 725748088 745775485 922398057 760643870 904472327 173597018 421390053 566080286 728671072 171407699 315651318 343942718 989379333 891612642 983608705 953438487 994500150 142593019 333068473 39153388 662365717 988518207 990065265 517801638 945356110 731062343 925434807 33821607 411204850 832069980 922304483 938775673 980751957 178896567 417824157 664809961 986917685 837939246 981013496 987584794 991823968 534160366 755138345 328468656 348276732 85163728 550328913 331079872 958745064 852855950 886947019 99684311 348971849 824898684 852496011 574327389 749076923 191661223 372952569 133924033 830877883 699364560 994384397 388746615 625342977 950288216 992620579 695875727 805952712 839847585 989202413 518329778 860204881 202048920 986190036 502863868 891803626 340384570 827722718 532058797 667485610 656435760 949928031 268174106 887639301 428752483 782394333 591005056 660438982 118948706 515669797 258375479 706000636 644125098 965923381 230007462 773486054 788734942 904702004 152756331 459463966 737751987 760323958 988442770 997907398 650929072 700664187 314688477 726304542 793206773 835625013 138875743 550303228 898641280 952692807 20712070 88228105 662611964 994227312 330061527 921230397 246195620 606051825 271070535 546342875 297526789 767061933 632933600 867700386 252924395 983241733 571119324 914803794 516557350 995469065 135648011 390974217 318777011 574173686 575605021 732230098 648321421 705007003 137673557 420080727 998022868 998527670 855023802 986384714 637632888 809756410 856461727 911941565 713570512 832399806 838661265 902149912 153595080 581387454 139066510 266659752 532601797 670575533 337082846 949883872 324788235 942815856 516698035 798669427 597310426 754734578 762677551 929496789 75412095 545067855 831063847 860665598 797060700 924408509 319692888 753634643 557261783 849312316 33018884 961507373 623396355 663494657 456009238 858854316 140206941 260995538 316309681 407241153 766367739 870086160 831535876 955375789 487900997 597278915 237589207 260420432 814011814 923906068 85788708 627438793 180328473 995229039 18803372 393512906 566919019 885588838 688357912 714092082 711417109 922526578 648177019 673242839 86452915 696191251 690660387 853319851 927262670 937932703 251204533 544468887 958382925 961072669 623681395 691741693 43692197 606040116 875939505 876236938 824824565 868320481 983799861 996734408 901031661 929235674 506967703 917948502 307130673 976136675 546093235 773104881 338163240 653347244 868719980 961700270 903421182 915415653 871504201 933495346 275808273 732671528 331811606 991949655 225684325 650290068 835955370 988308308 645897207 816437280 63942671 282867741 951461556 982425416 49354262 592570417 452933482 976042051 678315212 745295480 245368169 505484254 205107097 259362947 243425324 949862465 664489405 717945541 378800199 995081648 862191176 968089559 130932199 553302977 289402513 567266227 368668501 708636441 433600310 781164708 44899591 871272698 831706601 887628710 660238940 752560168 219416249 624599165 877343371 893137913 579092224 599521110 925912532 953591107 401290562 487471327 312218360 473600111 574490337 762137354 474720614 974568888 58559721 675708794 770700832 888811316 520888079 825805290 606026364 722440254 414038854 949197779 229388229 801991115 770578735 956228036 614434532 680131178 34020265 603286914 988102528 994807995 806761916 914072785 738370882 780799358 737205126 784474907 456876244 519734826 389140983 430428869 959246816 974983285 472111214 515130897 619115348 898438276 547345108 927695924 435083008 855832960 692931779 761350807 386664216 453204970 407302302 743725787 533696162 979213040 532870217 756984836 828506408 902730600 718234110 809222311 657044230 691307166 175773711 995652938 588830399 848205986 451084143 997857064 225238628 552760715 483998430 558224692 833535674 897737676 897168576 975950303 105389591 526139893 223491041 685663409 468005402 804173590 236258066 862560715 437480868 757227396 616565498 928050571 698445523 796222758 789702538 913244593 770561110 852082377 858237999 869308516 255710962 880290962 582736875 678837810 793325064 804982926 277622632 792822261 88495268 159618451 714600961 869510872 966524242 971494366 834757347 990785618 57566842 892500713 214982967 801326567 780948565 950382418 851837632 994400943 268438430 359596180 89228238 215084803 546874554 601645446 470095654 684276975 365038173 589985638 418151905 704805750 662536208 699355535 88815140 550914200 111850101 455105160 712983239 726204678 619748466 915498138 259238500 577890134 455979665 616760167 369241875 517074635 891052027 898502038 78565845 894524059 586714531 808966871 347325798 780280504 638668645 868392763 570835122 941807709 311786556 621320225 661674721 998316065 507425137 514013095 202983710 421497919 619506342 895922973 347921651 934856884 548455285 660101319 353664020 921981163 923223459 977130904 242292295 816607887 30282878 231604378 822540171 851566127 592176970 640044492 348182594 947665603 19283731 738158758 418663949 633930988 397692252 822583051 949102105 994231176 12983679 756242784 512004466 657682701 204852413 371296424 975725802 980449066 911395896 928268386 642297380 679556736 733937758 981789707 996679548 998513523 246436774 840548471 175184556 500567137 162560545 264727039 863865366 961804217 711669101 993192490 158703695 313694616 200468341 909971189 290800927 541373051 821509396 952247004 984942198 995281984 528067009 716581978 491639564 930078908 707518351 783242782 162243938 245918626 590877184 811056511 899255087 948938689 606914246 739084548 896234268 905182895 370305105 779427207 867531773 939057282 842599006 985322009 383397221 504476843 535095693 902486482 542961416 800313262 312081681 970292538 636969515 716143095 609469844 676424550 262185176 476198464 602493516 834063738 189965043 400918625 423811993 557627714 231005834 323529540 636643622 878833803 414461072 722576159 61416229 874391648 826803897 972002640 126859387 672130054 383261259 530737682 939117450 964976696 18215769 745716585 372991076 442482955 275862008 313372420 630055338 901064550 264935958 499628766 303747014 688313341 145152960 966434572 699559709 850290028 374373165 542657222 958899840 961682128 337794644 720318511 775442152 865056193 767018211 879614813 206606893 923450788 33242692 654181344 631379653 738321240 101612115 905391347 843874572 896093319 109274214 295598936 942222466 967138672 599343234 943840076 839581478 981792285 301392401 837170620 401305397 868801641 54481587 208425358 554382904 796390960 235622757 866044886 927230036 944601431 409144876 421079846 751548861 795627332 710504404 768034989 312188772 349833683 155141611 188496838 397303282 500117029 234318350 814384730 656675663 705050529 811775711 928393891 453606321 927432410 705225996 786045381 294251800 657615898 674701901 745319730 72575096 541993519 649808259 917603836 778616018 826074360 110580493 845996509 463448215 835902606 50509048 411503448 259580388 324535999 836517748 987139636 880016649 920123067 398409304 997169084 715681169 829693525 907740493 959180260 819214372 872750452 4091197 814548904 620150805 674329367 382906602 488306638 335899025 386303062 834382641 991854313 550441933 624419629 704551977 909608805 482138151 796881449 293526647 405898775 550605319 983657452 35499667 769973911 86377326 872988687 296761902 815949720 364299302 959463792 837341746 862335187 227672577 381468842 758669335 945233447 625356718 631478243 682338742 717265095 152531437 383168143 354715940 950792984 110175921 776550461 826795176 897425386 814711774 861249146 509658196 540617071 239005903 608719090 234293495 582123813 656333685 858064434 485999280 988529822 455598924 697686188 46081966 288861018 834545319 856897428 373359903 620893994 622269347 873955631 872748156 911501772 776122020 792670761 292028848 381151684 378258724 441532388 378236856 835910505 93836828 102339007 1274749 972352858 612759214 733491075 211730528 828261322 903517239 993074555 200934312 590818297 365195360 623508773 886756367 973107618 634050713 799951651 938863453 995309662 950057667 993221277 718664043 793144612 28998389 919725268 593585382 691420004 394958115 570420859 528441212 845797919 336138710 998144983 787456677 890753361 689332230 776222020 905839635 960477841 91413387 804136903 816167113 963167716 243636243 650785700 12249925 692874337 472465983 933182298 776061265 783424400 119297738 558061640 585549653 663076157 182555320 279912638 398983347 795516210 479340612 755412723 181871607 505615824 770614660 949935117 501548255 871511849 839652067 908156138 362954941 632355361 380160849 409713830 578797248 906498478 732584454 923825663 595220506 862075868 93808867 471464167 890893389 966618412 270695071 488066387 183500591 947862327 891766690 945363339 757019702 897686365 318911208 870943824 430767949 700215335 176718431 337591027 446934832 956267312 951419015 959943250 84041646 801584684 522194328 792473543 698427379 910901181 55973336 912466349 934137076 956038288 35580785 357108810 765669310 884372028 361881237 689879693 816828331 876306336 739614003 902968669 265811389 992374964 488227280 799760931 211574918 561324978 403737850 578071865 778665131 834842635 877716167 939977543 797189237 809147771 506681752 846816970 915222387 945019200 569652466 632819375 925524171 958076897 503264490 831886303 102165103 564274222 140764981 573546891 830048108 855032574 689698384 969667878 927050659 953845173 173898283 900738707 976735204 986589662 286487648 829442234 917243061 987751899 220246017 577998739 291463312 948110027 420459915 527112844 315768756 886071249 943572124 989269378 144725709 363188160 672167308 893339930 694237785 927657261 170993300 440552209 510260246 773473692 812731148 927898867 52575898 324270274 873365825 951128071 256528639 398815999 450175550 702189318 523863151 857175561 403237134 589458450 817523984 874993842 492327333 658586072 640379650 819959380 7079318 769942906 410849703 840068308 436597264 446744956 180001163 342440535 521184369 554317376 50758993 606213513 100617725 309600158 544760826 828304022 120217050 742377526 838556059 901653042 863720115 936910249 371842988 834344192 501475038 738734809 816066402 945117629 25340084 229306505 132717020 347300917 74338294 880082298 739290198 932824710 610864481 896996156 484314459 586410343 743794471 971409887 715801721 746121097 408441097 635599086 199448174 421633841 303021098 973591113 182418062 653308270 603910113 749858183 341440187 471939877 466509777 629286338 897115963 938557975 973421722 978233834 278818673 791383672 283179909 519676637 57317520 292331402 615966135 832693545 290221265 679754771 277040368 895551594 546192546 857548430 788546376 889750731 966530947 982609979 813481000 998051411 466275188 821305541 390331126 671376318 811804710 950748610 198203538 534003653 253125414 448427993 410151503 745413413 287707141 351508633 489102512 886925500 493674988 826578470 424541472 608127605 142038174 376951781 437661022 862821784 390463151 426804754 802820075 991662366 128752802 710605713 517317136 799039091 398328271 706160203 541297893 966478869 195140521 935224813 74559256 372250813 281039543 704285999 423568833 676119578 956471938 985178410 336162813 636670808 751116007 754389859 190567166 423038842 453115131 610727646 609438104 889068658 61023472 302619018 556081404 584809986 865223722 940003237 303469111 593374859 309237280 356243530 923227433 924340780 579809506 769873304 584446802 607134631 802717739 950986636 131138361 649202109 809462071 962470993 236094207 324694055 229492514 964143819 104508937 804815446 359832463 989028085 872093393 989659787 446749803 611219124 32806866 289569529 677426009 930534114 70404745 221289385 236562520 791105599 275735198 292904128 552494930 649206988 752379603 885809873 900616224 955005755 284565082 593651666 416931305 490103156 598837508 931941546 761494522 817561681 424575296 775936539 7058254 572818266 237724659 595019134 654122768 974649465 23794965 475288274 739317785 919705714 942299523 984791036 980670765 982108333 158976357 551726403 592902386 617506550 27983975 124423727 286435906 976956312 837636966 924300983 87596690 171375396 60048875 502897554 85796665 133617417 77311921 252585288 271408160 373028869 935453781 982107271 872604813 930554903 756501522 976291595 18712798 288471575 791930781 920693077 288525431 747219538 319368078 416667927 793851260 860545482 398617548 534863884 449644885 765758260 93941720 959913232 474180233 633828161 19604416 179299739 402742385 542778403 192049440 595963147 582661274 988405807 917838663 937872281 621337035 864880435 514719282 803757240 820874176 996475805 124012660 529435954 596413514 817814798 593914393 746731793 856618750 857447371 88310672 771635575 609880959 883595113 875646328 966020404 212110791 386765338 22575723 571239805 178161259 354308008 482429154 758204856 854166353 999010200 976565525 997055429 221184489 513684975 339764895 837721236 49993681 147860647 108369015 297543101 242552250 467085777 109843150 737685212 479211572 532915756 308247801 713514981 88806186 871682099 689624159 770613939 86874377 393550301 436358986 533759860 854694366 985478189 415284363 848282637 691868993 974875972 694618215 890357847 56594049 222685262 267766651 630191856 389697515 737986731 654305159 797804814 23270657 293097748 581835631 973152213 330097424 740318042 508635351 951804032 334173911 334356555 7178851 816088616 846528892 921109197 654357763 690713775 837975317 982437134 89150380 980367703 648377828 928620208 648226187 712135559 782453385 947145037 769697450 842983929 777997117 817864975 341287371 361071895 50376028 392535761 239349319 845491555 79738689 232197355 186622428 336374120 260858147 321086918 213078737 787199077 12489082 620622419 380002606 917905682 122736396 391823756 54043814 552047563 571598590 618025190 202417983 723480093 538664795 844248744 301797694 742211871 551030015 869766190 579901590 971729484 971658327 991875549 489326701 718366107 51613642 375088072 99366540 227531580 49047088 104041538 903387177 947909828 247210772 658870831 179898457 554711515 131361777 659119160 450011095 502469211 425072433 966979006 807634472 974658901 906892789 966066289 395127447 571424749 684299428 859539137 970271205 984699053 980676181 995765905 718763440 912042251 39784757 686962926 435812504 870489605 992186545 996983110 372202278 903400291 719959204 916648636 74882778 846633434 323535075 850238956 399380682 893797707 425988024 682062160 819684647 865332049 877545636 932974697 703688196 922135082 39629265 563026490 268857995 377558005 217082560 624022760 553345618 721016331 647632044 940226842 662911497 819172825 90980305 94970558 137116263 213639538 763934687 955440802 526715920 845817205 291667161 987668362 510701132 864778075 199788488 419613909 373028958 662479325 821981213 893454608 380636835 671367839 22163470 423027835 586926184 923100758 108581572 402588580 409000169 441622221 364461296 945486739 108736407 352274006 831782049 883634586 495965630 505202874 236822652 334681425 714050985 734423505 465801218 509311251 273425015 793175568 720657585 810699630 617958105 983351598 184946118 198106234 176082077 588162347 260229152 270565196 714981992 733455643 500661574 730724463 439836416 638810627 784802909 948272238 855250641 929327908 156560878 345554861 878104753 951342940 326879393 646267694 975579031 989126757 882967156 883772264 317114547 713392897 857933422 880025848 279692503 297877006 109465963 776015964 257001904 608815661 950307241 951401987 330960365 942396921 972978410 996732065 562033441 821405573 523791238 528452064 315407188 450691825 401237708 932117171 164631544 804840858 597376941 976640482 931615164 989125820 677775541 860112689 299644365 669670294 229644874 983121142 678708068 830062967 992190778 993017308 558405928 620493475 664754149 703061129 196004067 797188579 673654236 864358967 955011776 980417892 561805707 884294792 424259498 472110042 480776238 640473939 987813221 997304094 796066755 952185192 95023284 647082956 588544151 951643739 667652654 981880961 163078321 270202427 620111180 868154171 179195964 819397271 358734066 434175875 418778044 531903862 862413227 894319101 838975248 878916989 752474890 903718446 706178279 753192461 665762445 799449789 454147865 905227263 611744680 839014396 2415398 762548814 986206165 997281708 224008355 236075735 52163776 339774689 117932504 479213696 327357482 873308341 345797051 555922214 672771120 682314334 505271177 593321577 503160201 840306951 583079861 982517975 160089807 198868657 869525161 874164544 755435064 849653624 891674019 955730785 538626254 855607368 688641443 693334942 300212364 691571824 698338230 983383465 914611307 979384127 337482000 374743720 849488172 891071446 796867395 906689491 642290958 922432460 822771849 944436629 966641851 977659238 130328863 366292658 591193567 687535686 44216471 366347441 62468721 751576496 680443675 800744647 544982196 582250619 678824200 709009157 495847428 684540917 691619235 834325591 50623179 333360289 82328612 537641916 789472549 860765299 554318518 947134189 80145719 120396695 880870076 929027692 875283418 900358588 618233295 881980352 209045545 240635724 320107017 816469853 665007539 998406524 53794806 582069840 481399328 825700778 303113388 736280463 817395919 864486604 596083622 634297203 874214670 932662894 400612140 774953376 173123110 896202876 125654118 555755743 245566424 896036578 443923300 537218554 197439815 880650150 691642327 868887788 367325787 538812618 965389070 997715854 763908039 821638358 17815658 76592899 261333450 648933349 19359744 472263330 674798818 916413092 586862942 884423776 767977009 989249509 787073867 816832395 619204746 844718675 162297176 634675816 685020319 845850081 718481045 933320477 755139559 820440243 373790075 600758609 725916902 954858807 844543710 957600403 827095662 837485657 345351439 425116827 694681231 961330367 157001502 398523690 807903068 859327088 308694167 325526660 145178298 847391285 815228617 869778380 459022740 789784816 670218032 842937419 91814339 842951189 342131253 566118821 91541854 654275299 169618545 315978296 949419446 994022699 905295693 994918717 836776576 901009333 814928867 896845522 417388752 678798470 575803950 723585650 480847224 684441408 538287284 835687435 208909393 229004160 182895458 607390964 375558898 576417034 543771730 665702418 566545972 901479035 513269626 764584302 353060932 733826523 786100280 854075831 162489530 371167063 192184217 666616877 330175167 848098134 207901820 858582426 70992984 133401508 237703062 637586879 278781859 485632282 111571505 791616159 908334904 968777112 303642871 874301306 221519447 897661778 134953734 341332746 964250603 990195180 836246808 890059259 77532098 780867114 407822993 478112698 227994602 594491677 131457607 703573415 58022512 411710618 304982834 971165872 253835967 664733038 897429555 992550443 389850723 743329491 252355064 414230084 739040284 836311647 297746955 757012115 900027355 987830890 871014771 884195412 473868607 861440093 774936530 949930226 425685949 909837671 421909911 585803660 357102463 875569269 376710382 425837121 518778454 927079877 879327094 992310627 541727317 797229234 18571478 462419883 247296325 669395462 478472368 570164341 468452547 634212264 482476234 947665682 812494243 892211455 522115812 595348695 218700446 386955018 671547390 671678079 457889773 661532524 250140676 979972663 31558120 956428328 38602239 60228500 307831069 345913630 11870918 964549632 42658599 556354287 641202331 797174852 360874068 893725829 979016591 987418009 435888978 756602408 183737006 367071949 92789872 510757017 937426408 994388739 180497745 655523117 423785429 430297271 709890839 995074857 789211887 917583180 338343850 738488164 616123193 960833225 787671747 862751656 955105297 956819583 309083300 981692088 821290951 841265311 329035540 459411651 198563927 319386902 852190285 894067129 947189679 962711578 661413185 770993476 4423943 67081584 335648702 506180492 903980412 913098102 732648583 756295645 268662637 329453815 297968911 854316671 926683591 972673555 400012006 717587031 849747398 996842128 916934682 948170245 441900902 935288009 839573162 859498732 195943966 483023231 991336084 992948773 774291607 816199698 77326726 917433134 95734314 584309469 779869249 891238630 790667668 842111024 970409314 991746286 734640023 760351045 468252854 470092408 281211921 766103607 318240258 818090098 897210469 975985493 287330460 812573774 527506454 632667484 235063110 992577633 543434370 760397803 395281449 452381298 979501626 997232886 596556067 938245156 447456579 483111358 223711060 567935912 651855361 701108394 661305931 787701222 714840715 873456913 997667141 998818990 436627258 899304377 92507694 670383612 852421697 992710013 874983361 910654655 151392798 336375566 831945272 868136451 704939631 971985682 222041850 662739584 716365413 982908861 168880728 655187102 343387590 714700560 736906704 884975396 145967434 692354276 422136850 784530600 628053805 872842120 757460215 928714841 256217513 566016657 430480337 992131428 487300148 784164499 699401727 794985594 350915525 641050577 350311704 990548646 630608107 721540423 14514037 72604569 785741123 949096289 472604031 633405066 82596437 711508308 676843880 889312050 820013554 863802766 762087761 800959236 743810752 867545758 394227116 751480379 82540195 856432931 14718480 690514839 824946649 831091500 506494366 812377437 577820423 915306879 631189208 791520221 6093203 74354850 806183946 806598745 952791714 970027277 673388999 939977897 949026991 957942086 213522100 384516375 938777805 953905306 63298402 70766901 406710003 644106262 943467463 956770781 659728861 848349895 305905869 857787131 393899893 631232390 643795119 643877217 89805702 345013577 823467435 930821428 83133286 414523336 419889534 768060652 757174870 836059117 98546756 716549497 176044339 716471642 560100310 927609262 60197632 888263562 608038815 995699080 162686211 266881752 536713948 778097243 521869556 733515906 61261763 73650078 665131874 796544890 321634010 919427256 72632173 936592945 677269533 708810156 981211161 988027819 758849126 983623522 368165558 566627376 81859554 352490816 114195612 616054275 831044545 862445150 219989929 536492154 821906926 826335363 871555628 918658911 781313990 992543782 893744929 965467655 399232361 440132423 762996971 907923565 255544365 471326733 593406908 613336191 610971255 951150181 58950494 241284136 690884472 836825773 578296116 924716918 538728064 959374049 554531407 588262480 211193122 642478320 275132530 602082682 815763605 912087535 250364007 316051489 229611096 756410081 294484754 326766913 752076788 954632689 827996364 969767111 997457105 998262235 714716577 792535970 513384184 738572910 949089181 997214989 645246220 827472259 830198654 992330925 539541552 736691176 256131654 559658812 915602079 990881318 971586824 973334019 20627226 911841909 820547243 991689920 553506121 704923126 457230139 905626059 182556799 204583516 481866712 710450816 609145833 915853529 270288587 625736176 226256219 849822110 294172901 527837156 667234776 912061136 593662144 666502852 987128310 990305164 458043916 883337287 627060640 920088716 567733658 715142239 152935564 620178878 964381506 984173785 484790602 926234517 685086331 961227788 967217077 998178564 896459470 912024304 668347654 875224511 373003981 377987065 909141330 945292793 798489267 959659551 877186636 970715299 83074454 431450282 674892810 905263155 467389634 618309037 733732738 831648443 426329975 632385815 314598003 992763641 523988657 992328394 105924675 607049168 663846797 689886374 255335430 437796919 703144122 891965284 85135276 116750000 130863445 945454816 967144171 981732362 511454172 591355972 566336390 982235988 194270801 664525045 7385403 364376864 287047855 998474050 760281640 813010356 573145127 733592778 847703923 980464151 290124769 933479170 605277367 762759698 806916813 908822076 908706849 981178814 242219903 504929213 977577471 982391570 286089411 621124148 216594700 638393677 686715552 866281163 232866871 241797922 993402331 997899770 643307837 955045880 22874770 679065403 275072348 922574326 234094986 245154580 572244367 669500856 759949069 860725006 156171349 760467553 979458396 986411750 108735198 148726187 26569771 234430415 284496248 305942042 281671001 488903723 855203779 977964695 88059891 369332042 738110651 857674923 772880779 966137502 896174735 899648020 26818335 716317644 260890315 599427617 108303803 624243821 381566288 777342132 845671038 958066075 758051786 761009228 556935452 803501517 952316552 988103692 889207693 932877585 384863586 987249470 538868729 820237941 955347230 957930316 979523552 988541222 693744522 994858222 839332592 925356640 855673384 958617323 585081623 591575162 267341639 838139950 108106542 435247246 904981991 942697389 932922987 935771356 57609791 391892517 738981145 749928583 733807358 992201918 89198300 112698418 5075433 389648990 605536053 872536783 628258251 826474579 20443472 360561477 516271263 548697230 611118069 642394934 499781065 745536326 297597157 982839513 358240285 462718050 862897321 924175613 977930897 983458299 706585619 994468525 643594226 760903907 858608364 941858415 632703923 895333834 237521293 809342101 228460602 902495673 226144348 553861713 794634442 884765362 400949923 821941776 211413375 537542181 833660451 850242837 488885348 758876942 982380207 997268038 275310124 966428954 551602847 780435157 562145646 894427478 64259825 561269271 486259457 950594499 492408062 804650645 850505201 908445579 582900497 894497993 112561771 289831307 151464417 330178566 471337022 613353246 802302504 838644982 91454420 144787726 685810221 716250419 300359588 365469169 264896000 937468136 177054809 809783227 787594957 987963751 671331563 823863642 515610460 523879614 571182552 874847653 809262651 929714444 687858989 859518303 813467441 896200140 103266489 652992400 175711537 667500709 495042594 692794346 385335808 823241206 594444521 793505924 850682430 965087085 212804458 532216055 597359690 981786236 810626475 877810085 763297093 920219419 699598156 957211789 146593988 647526502 637231939 713826770 624460527 886016688 178716652 535757140 758572857 997115920 866057972 973623105 675420669 729809735 233568279 650183965 373745951 403933234 978655624 981126361 244668372 558376192 388527920 897963612 573311301 953708777 725149777 942724562 576333538 926389284 656910524 919991215 137099221 683048294 751848816 772872698 5330985 296728158 208651947 850517263 111794748 472396433 939852504 944871558 269682727 525290934 842907784 993601784 959300072 962239834 114004500 778532168 347852062 698977598 463426784 616287020 45874055 777027454 273380041 848801903 651630456 919589951 614246919 797215745 612966773 986495138 555763003 871178257 785686868 810797932 162866217 776963076 621792463 995598276 115070501 785322506 467182776 610050911 595063026 923676356 621644557 659100836 482532433 865484488 972156363 979148552 666338334 938407086 890308028 958837271 529990423 855835054 874528147 999119354 326064599 422227615 410138084 953762398 698332738 852682043 811498816 916113777 447570553 473447629 724255970 988828714 40529146 963098362 398783886 651053124 415284593 437820584 245583362 322892157 203647755 554061976 949343007 993515256 840562525 930287033 928303007 950599094 122820192 881096707 177959200 539143136 201027731 758017883 719731222 903297460 973658185 991298619 347791410 703745235 332283769 743134312 277278200 493982198 119968605 881950321 38807724 415545322 863182630 897625653 311869764 683572972 360495346 550193325 633430951 785217335 183224718 525174449 364820381 972129400 974849200 986401874 164452018 672745294 292055842 380284546 416816004 678628516 324551411 520824289 691225366 901932488 284697156 510205279 516386871 519743381 536761076 824408616 80338035 116744330 598415290 692031570 649613930 984068783 734905571 960702536 642458116 768803441 642665821 852205452 14464492 106320269 715870572 737152380 384305160 391318528 963360883 975616772 209447868 777832153 137729795 677479858 402550933 622832796 16722242 555689742 600103811 930211980 49944743 330677770 265842395 580087501 369222602 578599778 272433499 997582749 815293739 886704835 299597509 311056669 399492339 853110006 972212261 977681243 243539998 719788141 582629814 867891261 942921241 947107621 505485475 569488109 565918016 702264522 182938209 878529712 94263663 434237518 570209813 922501738 751569211 964015477 341854065 799494521 712911195 735688803 561945165 828116796 984529376 994092180 655733579 807024204 594270386 726031685 361259435 731036844 228047210 494660100 203098075 234482441 40160410 852217648 121105234 587729186 166024988 663954877 173722236 301708602 337958186 490297686 299800435 353612472 464064202 744418108 485219711 772096448 790189404 843396936 923268215 928732946 682229405 853898436 602094765 789460654 798171705 911266516 301302170 521261141 569260066 907777118 826663542 868368825 595538348 970715782 974344278 981476252 48164966 742558121 809664154 868932290 351077235 643120428 456433553 718189159 367878129 470257034 345591184 904314812 91569075 794314572 235096563 777094635 176807085 356569705 666244114 866718264 201537262 242291563 445575901 891968451 674552605 910764676 907532178 941731524 562741163 643759763 390294772 991540907 417967618 771289234 470521886 484642430 974117548 992988236 260578485 785286029 53586412 613752646 731220976 927053205 56857155 251758921 859681271 989058055 844974489 876519484 133320973 986098448 557497672 740119249 395095530 903266447 119351969 643515863 37688158 842106698 705245740 946076980 79708679 384336658 37209038 653963129 7468475 38420078 534865824 535402927 843487918 897417813 533546484 955928414 795994748 992416385 63645237 491889159 780269421 906052162 898050818 918471162 275917383 392979786 208383370 460299307 331281340 894482188 639710978 789229664 227638165 229529013 574524597 923087753 682560579 793399176 540978637 798156331 178110342 669356935 497434532 971198870 497394164 794241920 779567612 784002834 33799939 65303666 4210069 980870260 721184805 858975237 183298371 205705265 804042665 932279176 316449731 997000412 94358322 609432072 96568158 245952710 367314198 894121674 467286456 476320066 546143247 730286559 301531520 824702158 630137888 921113376 743710117 832591034 929200502 934677649 145089479 309882891 278063001 324402795 560427385 791287884 111456612 425988873 879159129 967394114 880535532 906690265 163336823 749908082 957708190 999146133 561854306 597438663 863234119 980847030 854425401 872420629 120984841 255467833 993196500 998820260 691346806 868354243 940468762 982734598 419057134 633376472 181820408 223836249 432774613 991379693 958199717 963987586 342405205 980237470 272365989 284173156 285205165 885638714 381785437 565396764 406489643 640304551 903116759 946157776 883785998 965971249 404314250 811025504 802030790 984178956 721404333 977307337 954868817 984324972 114519317 217832671 406722577 818160694 901830650 931562689 422747453 492070870 291366152 881677597 924158482 937925545 179186821 464110433 689894044 703795937 554622663 870949182 347628196 407309060 571528610 584569572 311522540 709118591 477244657 545064509 298772224 415977978 950360109 978791216 687206085 842905930 976506774 982343526 882884498 941650972 868040800 875058243 801996602 859006707 394237863 870164573 856599806 975201083 796342971 950941489 275753985 477494663 658717871 822777895 990690772 996184895 769363875 836888569 749336101 789427947 31086178 77174874 557619373 705581774 323012170 441231005 583185042 621035978 425516645 701150940 459892271 690755055 902978108 965513995 55842062 621200155 220913980 806511056 282991447 699629698 232805850 802397474 992715533 994170730 937410944 962358374 355284882 483030501 199510902 699847468 79708380 550333245 367037284 833904451 702807593 994500712 818967465 825600045 560213044 981950153 425004623 721263524 641970508 696333343 341996361 657973211 115833597 754552257 225094521 607501689 251273114 967676185 616984678 942825768 184876367 713904795 207507497 746374472 685723747 777074900 113875102 379049899 409860400 793997671 613657670 713386906 432765075 920206382 987232332 991204219 78422214 721422827 70890405 176019182 736754343 788523026 117072886 686565511 140503590 336091187 168582209 386297825 674311161 938868985 179358593 910385947 983600707 997709146 192473085 727417749 63810545 990917586 364456066 658172113 871399760 936065496 302682110 732489532 900749626 958013548 245707300 356819206 362256651 769777212 80256119 442369633 729132076 848327616 360045941 862072168 356543950 565229257 724803655 940646355 827739670 828629370 305988472 606934047 389506041 837125428 803212115 903045251 716310724 953399038 488833435 523247702 583247510 849479713 803198500 841908699 815570504 936731235 72671413 978129308 503184343 731023578 222030689 900588767 841239180 960512233 148848931 933943871 556230592 591266029 978672150 987817460 444006365 923687016 376879881 631653798 522388244 686909168 818226086 985084249 773925041 937955034 872945748 985955938 615378005 882205135 974423328 995182969 262627825 310769152 152560994 773485160 946952769 970298443 906193581 997969690 178400915 259226621 231401781 609029868 393262254 780299999 26470607 811128845 201691914 842499675 328058961 783047887 979859436 980986566 905199691 999189345 568228965 921369868 314111141 642828273 145881429 836304826 963018787 999236204 297278874 667093805 703784832 827133581 325653570 617460512 62113039 956164152 225990738 439603143 381046409 840065155 3686727 657868767 148300918 292434375 495767540 824001631 849126758 863395509 911976187 928226202 38823816 964501935 556283577 938980865 251112340 503290390 670048539 878543946 738465318 946936526 984667601 996048347 907956595 953245972 206448800 374862768 785390600 878557429 611403807 951362390 278956459 982610656 613872247 842938287 73076646 125360731 274402550 462711236 916208678 950932969 973077045 975812742 81290022 265377173 270312050 633150596 497376966 595409963 845265532 860718459 265572357 958867798 485242403 499536375 380650418 746288806 212940103 746846989 956710919 988824201 383775183 962991885 699979676 789210864 524572041 799591124 780512623 794004329 851902007 887447157 235448780 399822645 259703448 421115337 423894437 797726922 964484824 970782528 397295028 429621946 208455064 844607528 806473116 889820126 463488756 834993012 573827510 758990447 397815060 653848352 181673412 424641644 126905055 985372590 384589685 859849120 142526318 271382902 487957998 709441872 966680134 989390921 908272421 962219278 170849718 493033077 171178915 896935511 585628537 648983108 890057786 921068005 339694410 417247073 139323181 215301302 478619078 813972656 84782591 176703306 35102238 294490576 892776597 988280047 529077897 816234751 103734591 729596525 164187415 328495647 635187424 814603656 458172114 853258296 727155138 937148392 617511371 939667346 141942429 447641596 920148887 990343640 318885001 602710495 840882472 847321510 467752647 830049526 483369050 658490176 362984235 774957141 617612859 830402282 112672685 859060633 604101469 823255407 195350304 938163777 837411481 855765565 596557486 932018374 575090143 764212271 704227092 982304414 305972851 721305796 977946313 978009247 706437252 996000216 437878167 651610861 931398628 965693768 57016674 293992333 828983319 891000339 702132728 714829842 699290203 965596396 941680563 991461142 547551857 918627958 563104204 658027725 650822254 872911678 596397136 953650742 45061141 614773712 418736400 949099466 264086892 397786050 986385299 989759584 600670394 818180673 910213357 972498815 306071243 851850728 832043077 945081593 971124879 981388517 809958745 859553256 559726502 730082339 802640471 920235603 500774788 818969941 376449676 394328885 639277090 850807992 863512289 875138123 474959128 881484382 310393263 832286610 276703136 568760598 830732805 893727177 777691428 929105680 342415452 960128941 432812100 590849703 224180655 951515267 483300858 557074252 842517262 994676767 905139764 977871214 122204577 197704460 11569229 775797665 162083147 715285175 201915776 727746866 159453602 263491850 538727307 613660802 274925024 627984635 136239562 523373791 315469869 379602733 877196233 898928434 23275273 233890804 468330985 487796174 301252299 727719893 671478825 937798658 162459124 450873706 998347660 998766950 150232884 776411468 723802071 836517685 802336079 817772355 798478522 849599093 506769574 647675353 774664426 898912228 730879140 876982422 321136009 617916048 291028730 533390506 434980003 673528431 309440861 911369128 122907078 486820732 695770737 904982939 748009748 865911874 730073070 754595819 712195096 767370606 324070377 698430956 234746743 348452830 640481276 815031247 164805722 460967627 24629515 459494807 674956558 794211349 449212711 576319901 814043298 850229541 771171945 857226493 361974499 489733621 861136072 973724880 684357866 829412164 794473241 817477682 249230022 793064198 857700113 876210541 444738125 707228916 166294270 363078450 615484936 822619299 834424524 834981320 948509034 990818820 761808324 883576498 22423188 208035145 32565964 626625077 79990336 444346784 349307273 351153793 124171575 742193823 799777882 849769004 702975198 762863184 179476918 277811754 742979412 917631554 634265450 770427722 429030337 776643127 869998856 925204790 741793705 745744829 83620102 191079989 105953166 242953717 889471272 905078756 12913654 333133264 225277740 323086829 438766779 598025062 923772476 991188924 257191740 333926919 484656033 887017581 897905701 942942456 625614449 689887942 79976922 872293405 947656537 981332168 796929597 948806181 165944836 557511682 704759220 767943874 578411588 683658196 529776184 983550855 631919015 964959532 564827529 583673725 465024523 604509265 603788982 876813525 545188124 991601791 615652199 823579911 74838624 381362512 777198024 878253713 929491279 953849557 680121788 681287376 40351867 414620050 972473251 973106148 323782682 449441124 943297428 997816251 681373715 933377534 595324548 729676102 105967998 644523027 265370592 782098209 298001415 663581178 105495972 909240052 54592230 54798932 494651988 862730678 695131726 704173925 468475674 544298771 397735637 922928218 319500457 799835704 892347150 926294846 979640870 993409986 824733486 927433554 37365628 388961203 407697230 924677187 496671616 639826104 484626530 685412063 872531564 961012152 565278899 741092816 857729544 879152708 673396987 913054080 945744475 973775280 751389318 997143536 355167019 493847958 414721434 505968200 681597360 812803073 795419170 868810155 245202805 668680328 953008558 988870388 215329321 774300177 88218289 505167226 109109158 930403927 133748170 645956665 87708755 592698671 922755376 987807664 894277921 992859902 754122623 839302093 379335607 973046361 664536846 738931934 103688288 823837627 275688624 946729123 572440840 957935499 507103912 769634675 590882525 862301589 959805615 992533622 659546679 674819474 893546700 935315540 486726334 783762460 990165533 997156896 903859536 940355713 361469809 491025313 530431471 583672547 74473090 91917181 441547256 989758447 111715765 611053284 121451198 725190049 977687193 987313187 598492378 810279753 54114993 89153897 644292814 885948100 355046722 841603115 15951086 609410701 724223699 760471195 258137773 589288573 27077792 949810293 254714778 990091417 327609428 979120241 651621417 767805658 742468792 948413008 750385983 992457712 569717511 661674026 311834654 901639405 990636581 992138954 453597651 862263137 465164112 685370464 332019057 957581238 365046601 708638756 105665487 330899142 20311033 467910582 884960924 966071475 970727316 995848664 362745736 698259240 154014846 843434830 777626531 875022501 20661485 413373211 415050010 944845835 697505497 725334464 561022786 717736371 257841436 347580417 96727594 555997047 978818611 989008254 985576341 994353258 14903176 832527460 983487243 995140489 184261523 872894626 972230282 987725808 115188789 145414745 189147582 438981483 486836075 946111666 269026254 816814325 853580756 934962328 177993148 422274792 650926251 745648869 656521058 743484686 930593453 963398433 739386155 817194516 949153814 993808385 506211581 951942080 783704441 869039224 619657339 777990969 43471135 87360288 681645554 863799240 698658220 871268155 457632912 658504396 954443770 988237816 14921008 128288189 524561841 985310686 780448046 936865056 438580725 826006411 651847235 889685663 44191119 212793863 528235199 957911060 135613906 901655355 375172551 392445840 493537175 502905385 208318691 919777675 928382865 960893949 620763355 720438709 83211347 125818835 898345279 976073026 543183481 569483916 721252517 967763414 168513219 375737070 155513976 591897927 316229973 709640753 621443552 978324415 950044886 968754077 557465396 762880192 320848989 993104773 471448463 614124145 777687347 984151835 298151224 415442452 72267771 406805634 853743094 977644994 541840451 677211271 955146966 964774308 423915681 656185277 731461804 920414158 698529911 884540679 790265547 867072756 650322679 956163631 781011044 788405400 289448143 887869615 396427133 870901811 701995920 891546111 89208175 973656662 107704211 320107892 327152720 553322604 532900700 718599966 19239263 877785787 698803635 779967761 7808146 557896469 951735456 991476217 202596114 361268830 2245363 309453797 671022904 988914530 29414968 421313615 961417575 962597183 208229492 605903290 420098688 551783960 595094756 894457306 365600534 989213343 341424484 438660945 585688916 881436864 484466050 583729724 82183552 220225315 599220396 803347848 77123167 430742731 285758706 686898519 574816073 858017466 427904390 473231837 839615537 880533805 348901181 848062053 406972553 683940291 288705238 849482740 699703982 884529026 315457844 391279586 681444887 819323392 976321415 989169399 845202173 989930495 671828418 851098717 342092759 368518779 532574212 758524989 525166061 765597098 163899729 261522379 49381031 745070277 783395798 865614168 343246596 385110948 916799074 924151319 228857711 630675939 50627997 357491436 750360551 902771547 705225605 985156201 420557003 815528627 507423811 629168238 680410383 766211474 271783734 985333718 379424860 592781110 188571536 915094089 331272419 526431718 9077699 365788704 919362800 989584196 204978789 495349391 837535503 958941043 831175630 851761788 852083539 951818221 750438838 819384045 609359039 946640628 616626995 946462982 166965308 740336057 749972023 831992644 493691256 654694120 852389874 945990821 434307702 767831716 69728069 405470172 134774931 607512505 385113916 422791612 787249466 932692171 449274036 745558900 474283326 541135848 844442198 996874590 200474550 735980048 950134881 951073952 691010471 739313076 186285261 813309835 492533087 529531632 602569149 880916193 207082763 402603297 533665880 736159919 916313295 919827104 475155417 609210823 105838918 297022487 528805816 754146640 775511891 856815636 864016410 971840922 734790082 863602903 732779094 828777274 184347880 360729898 97885096 148560756 248143752 822290384 187744451 711100607 715367101 730173938 446862845 698405649 90935891 422963786 259230507 668080559 833983932 909472996 332990177 938880624 383889138 786353116 775033385 962574262 512859144 884099712 283411398 393229079 906879091 935287916 484070867 710321823 441551648 756987280 666933642 807944112 721278656 759721905 290628139 587583689 903665697 940790580 636260811 791476412 763452319 882573618 993808672 994520620 617406101 685045033 835206682 948578940 557428702 852981011 804996780 928447503 780163098 895575852 145624842 909510484 994934005 998502430 23726218 471252703 821005850 934625345 865200533 871911085 936622077 966029154 885009039 905172630 504850305 878475123 929013476 978768207 807497810 956114186 824231401 953947475 860501473 916385593 278903305 452252229 358399967 568662689 161669824 295573745 534886874 912567384 597602126 611887012 95640159 569443764 855095832 860817690 35875231 841450400 151658372 633533764 310665824 550587356 961326269 969928487 180429390 859886808 476122647 709182775 95839386 356997030 318741888 513115213 577489976 853043334 128052008 343328574 290152239 537865163 207910187 824475581 81601656 963186363 468279127 891807754 390096426 847956741 519017059 932993478 23428127 200115877 451309565 681286781 110536660 877549508 301428369 992434377 155048878 857292242 711045753 898665302 913015269 948692175 170591588 671753871 532204681 963297529 312555452 760773179 480463104 997950187 974296663 991715693 13797750 77876472 135384776 524314763 455876609 894760574 382346058 717737581 662246565 822441391 169906275 252572020 414662163 434490710 451246820 526960134 202276325 760118767 62953101 233683549 962905975 997909965 426214705 626787037 323638162 942200821 810202197 819586644 978352042 979563870 801770065 987676990 809886246 889231011 404474047 430496822 289446075 805194791 19490603 177787325 194184747 839841600 194689656 575259759 839885126 899663830 196456979 216281811 877916808 978636143 640567089 937845385 198997588 407043632 29273288 472997290 904384817 910864468 357793732 729828917 568474131 580679475 837031818 950937756 618410921 753861855 620473634 983485223 807871318 918681776 281135857 920013222 685265137 847227343 316530775 963960935 9315238 672251588 926435292 991640849 445533152 648035425 618360190 619209469 338033757 827768267 914234886 949318696 515961997 810020162 71571179 101780604 633825579 706286076 46652256 894522979 378115380 450922798 300458037 848134052 266154909 591637429 703203076 926469201 623645683 839939106 309503627 384109788 832101181 932589858 206672 812202817 690136023 906909651 875442292 905576804 703196975 913469205 615750752 978130634 636447058 969264745 535344981 555667473 296365519 795452028 110401598 440473269 401861398 457083528 148522946 933869490 501371132 926565673 975489567 988635460 520709836 598161648 368627171 916383500 972206728 972572392 278188678 855590436 152629734 473705562 633721528 781933939 270373140 441136578 607610503 695374123 575443173 751099404 697758280 886943412 392954467 998608425 972290992 994853011 493723301 521055014 632531032 717964780 773068413 781276795 960025825 965528979 996121984 996308404 344357223 679255056 262461904 922036367 127743267 928906446 15365979 808631029 637215962 967148188 806131348 946881345 389243962 679447132 883909812 964372751 613992678 893611659 441406483 650800926 391627716 863984401 15523025 624031147 572932636 595524765 317676757 581987042 479210317 836572094 427668056 681223377 90139815 421512807 676983857 700346695 477423898 567844366 267395383 408307524 493687199 932387478 271235818 938601041 453925301 855885723 368666933 695266861 24381436 378889109 321591072 646183204 368021767 381522666 927374684 959194256 834554925 932574616 580375306 640752560 722802568 855454875 569128104 881965398 310599606 560211760 155322443 591610479 974761637 994370496 30423680 955950458 230953821 385314071 635122109 947235048 751702676 801187767 906481674 956941566 68730396 566813528 72625305 459927898 496183298 602925483 248154110 736984574 83531998 752120877 406562588 924402278 427539910 901010951 11366425 783485884 527326431 764987920 545633569 877206895 281005022 643499936 756225420 927070882 714514719 868190848 100888051 857142072 793231328 908795467 596372078 701143889 930189824 952473494 427505240 503106061 578497892 964787462 735636335 949203078 300725318 956364187 895722267 915123867 811909401 877784526 405899169 556956161 220203347 674550138 952766077 962310867 222934614 408551255 963433164 986644648 118915645 632323632 696431973 967610079 927357320 987837402 729582812 762517415 137770126 936299165 543274312 723710741 447649840 488534882 41229572 664187065 445191998 859861830 427501385 638758708 817960288 831932438 45779636 413726563 744695824 881350869 530746013 723570044 128841370 393849868 346039560 813414368 149305669 428021511 540965555 542630011 200125400 771320655 243121637 369262785 542256170 699065869 315493667 503741922 425178778 724599392 32602060 372346115 754756569 911774286 134189406 271429759 711328519 837340834 18751164 562425535 188727066 896084843 212714304 998468681 513460131 818556796 477384827 704011919 552519792 602307278 448502713 767437095 717081008 929409360 394316314 499861705 567841375 829248841 386153211 586181449 281013234 495145429 643496843 679090618 722388986 923999483 858442374 979744888 889351148 927982896 25288116 463320933 527936708 739323749 982914108 985616962 361727321 362473737 995062585 999216087 637890734 659640217 507544581 670977328 95289684 760200774 277528942 330433213 657431462 701978006 894623923 927769092 425077241 759675720 906675534 990302439 38178270 594490847 276903609 770860451 613453738 918656289 4173125 208742158 861928269 991662115 112638493 733681420 229540857 786035387 159003194 891779754 94202740 347492204 658741200 704500759 205277964 946092390 936825370 970920965 928996941 954215216 721337595 885571985 91411244 664493025 218401218 598949603 920060638 966320840 346888677 642083484 107202690 757254140 478717826 656727840 257163014 844728252 940415168 963705931 512013854 974988510 102517269 828684627 250804536 279601363 249267892 967916362 991064242 997920708 528599719 898700332 681408066 725651384 242477814 795482187 255390563 555313642 546602668 917708286 531259182 611798065 97676405 350272115 719341867 989964911 729771342 904515964 542902367 995712938 450368187 585772160 537170598 800833910 557620954 753395389 921613310 939802172 596026875 607384918 127657396 379205289 358303143 866677401 766911079 842282982 643958425 829485106 327935802 962689790 437674192 633022168 945161695 960928353 830215471 869154313 401355916 829181366 75513996 292867970 249603841 636027107 44378988 791096421 292613587 327158096 844934699 929377940 779263608 867365879 255661520 979339243 475698439 739264963 530474575 855695536 171414552 814748845 487412267 825915851 919400367 942543730 88527727 757203053 935219657 989471879 544219006 582159790 333882304 487185741 977966215 978394701 853333515 993278844 63887556 279310893 66308161 477047401 86861824 470942331 920087092 947763504 806429844 843839363 648578116 931523037 222023031 484987972 14804119 717169592 738066073 881684271 814049611 920187768 280920553 510315792 50476261 444918664 590944181 724513517 382560089 826836252 905626679 926833036 352894635 907504327 678992836 740202609 421828175 488710851 35695339 744248059 887811917 888741822 11098597 201846704 260925123 736157697 153692568 720943200 613860892 778839597 866380667 903545690 948295379 962332971 43107010 604629165 831803666 853010450 948660869 969187459 966065877 967111855 102684624 178524897 247703002 428636305 934661233 935297447 616305074 948418973 99905447 527196083 300783635 523208855 507563992 779761888 376644246 434461981 937171692 940219751 729865156 742516221 129167456 855790227 399318532 905053389 401746216 491202103 925536361 986468726 266728957 616459319 540921293 944660477 719013716 910393976 629600687 930168276 663727390 852155390 149452908 218900859 726076300 930533752 756083066 973004975 52321836 728304656 247112742 668214616 354776939 506662217 81333276 897151471 947050778 953084836 374253357 907623460 878166159 998727666 507853176 876368968 270011212 761486878 457099329 481755641 604500040 852041012 431357801 508684196 783767840 926551937 578874254 669684746 699940641 959499174 401587181 858881984 444343916 465646329 796939908 841605489 156617182 599090680 952681910 975515530 733257597 869792059 624605417 955451351 167046182 875134583 48251054 240314494 289275988 509702671 838976924 916504881 69668422 320020428 42588868 292759056 850150331 924004269 108874626 188582448 464050151 521430225 38081723 377906256 528081917 878364961 223681139 889923020 889738769 933732911 326470719 801656814 454395813 636987751 446187129 837949850 324560506 968478523 890418261 959721379 260328208 951100902 698292604 953107587 661654203 954516989 292708312 370525690 567488525 748243277 149794345 422557862 500457785 785026650 983102005 986693676 488419070 688739626 399012344 804066512 600447985 875052041 328092050 544818633 328462359 792414201 992573072 996012050 27483955 894137285 723568877 739374612 601825657 848769725 678916335 861324721 45222924 563848173 890481225 914547416 853557942 911522131 291497544 735495571 68252176 288655176 956502903 983403428 843181258 846453704 526741776 606771019 922866805 999278488 111947052 731634951 556359298 947477820 587010640 845819648 40092282 783327878 112126454 816643598 223422771 656538923 503084956 993740440 486455908 582389304 317227029 942935092 351336851 583067459 819862082 831800797 701665159 734904134 526412970 687093424 879451052 933778148 141716345 903408118 982663681 996472647 560838532 732736560 424185462 463828196 241415250 624760028 989782789 997586380 844550734 965826858 775065954 839003536 335965563 576034340 211287532 570584425 1405255 750300601 768358731 990430269 521685795 554276245 473608639 542270598 255797535 513649859 225922430 604046322 724311442 987455894 384173273 839982753 202017998 917550663 653890197 880093909 51228751 137117083 991440352 994629837 184991780 682955560 791197263 940899092 987179172 993641048 15312451 649007768 286373424 905936573 947076746 970239367 403584207 817421526 399016601 473669138 585297323 652496514 559842488 790286486 454424010 870073489 896788497 904273190 325369602 877533328 681635775 829917092 220103805 640393065 216059000 500892964 136966596 796234070 308425969 888796853 400557062 690605485 677452567 784554305 44460426 261878858 811162688 965756586 467847604 585997621 629376754 728254856 21077721 989557100 995811022 998316646 960768908 986622594 797235601 892657390 353178084 611083979 118623102 796566778 379159411 472695291 243161412 313963474 520537786 524139006 54574268 285022970 46169910 434495846 686701087 784819189 88434569 417837140 780063949 966993454 280519680 302974899 25988722 52249552 12577898 305969766 338998032 366410874 58493780 376440765 679572971 811308102 839214174 964731605 947455578 984636123 698233307 774449412 683442220 752514238 517127922 528613359 435254911 585674106 871811390 934344657 969840014 971470686 486537404 620497798 135677442 405436261 836125206 851457320 271818651 371745912 257748682 989114490 483109328 768526048 475962837 605204252 975138076 979575994 500086831 650688314 527779756 782501874 899093719 963182208 552001233 944974673 983554912 998601124 389608927 441536913 52431101 497293640 220276198 484518270 759189185 942850861 342415998 531795605 556163733 940928940 580810569 833876017 94987535 881821230 589856208 780831882 774255013 857558184 238623366 798848436 58469762 388228823 814679502 904015445 643617586 982966357 919501898 924271424 926390721 933065202 721686335 949738989 529859253 929432599 494433697 747112377 930642515 970137418 789302560 990652868 347416639 584130499 351426722 497895944 750731286 830926406 408151836 774174169 357525807 603915700 606423187 902334027 616217988 616414788 733719899 887167438 669641149 944625852 240274182 571062626 176631140 327708959 985186396 988348941 531677224 885036289 666393195 944328500 116746102 774642884 284916099 964052804 337913405 831366884 190968802 869792792 145113971 675356367 932878586 976610249 864417159 949466405 246864596 345361701 893121077 970319343 807356887 892462997 815124963 987259335 305364890 632088483 911835904 975759703 104181696 632307752 516677876 582222374 926510368 972370824 915242579 957745158 438423722 803020535 635459894 923788431 231944072 275615798 493556190 829685271 718623838 796383387 514370842 742907498 860253749 978516095 415235367 569266590 860896232 927933138 200540627 896714412 762189900 841530432 520761927 677263056 227468675 722827280 832160842 988035715 743602398 974309156 148612427 450361538 379055551 476749679 509318235 772221529 788210172 945143134 627333100 695138542 971166987 985375449 258707012 674936442 356231285 729018044 565862823 990387035 240650424 835770254 898023262 975350752 995666807 995876953 922825853 955331305 342157840 426017303 288139413 891335903 43232448 320760502 257925280 266199369 596478596 833707034 825552799 951338456 872308618 910870469 941284831 957358947 360253861 394341462 344211965 795783133 931110406 977304173 96426907 531197320 961902786 979381124 281964782 481595587 492834522 610502191 268517785 299190834 838510306 901593829 363916908 816641393 2521555 394867099 927045946 983383496 311590715 458442792 947177315 948986204 778262806 912064708 399531204 714077944 219273194 869014342 156750624 747035428 945983400 954513818 418519811 788884237 353715016 982361407 94413189 243220205 378068027 992934872 762546918 833772038 673577931 945922924 652183433 712061631 143874105 238989051 72083345 409488746 438542823 667380457 530686556 991433856 497609601 718498504 222926231 644158950 246277809 695409876 101677975 823675702 169109579 265855464 314820093 770319336 15392506 686264427 160784778 629614361 624697985 889982114 603141470 900351365 545007 897503940 753526636 930022029 425193651 782957162 739493806 780247207 957073096 998117428 515674857 788571112 839551802 884828105 249390385 608162241 273181583 960827188 681263918 995364775 261867916 879786102 776279141 911400190 469236384 924459955 854352224 872096270 922645875 946302210 27695089 770476511 145428446 796091672 96587276 516054859 55314358 710986596 735657520 835123525 951340072 982074534 216323127 243152716 131779094 200627356 500902734 915561942 317359982 792353373 397099802 701020515 727836629 905225877 985552423 990212941 301302013 903614368 247756792 581229185 158304820 798175982 398010895 906623857 750540639 755676355 77380031 986584331 701634059 830559911 451220721 970087331 707497180 920857722 303598287 679070190 281905999 734280678 131532130 626498049 822641153 895275132 511740504 695622198 105301250 816963900 26960047 91150057 160400615 187232112 740595895 860566105 461033017 632566825 573036080 984200879 311741768 873929186 901582872 980284373 615850458 771277391 54390569 751563945 94320932 976263168 340296217 727384678 863215611 872690461 81039271 628635967 594053604 830184575 429817931 941153426 840991711 916355484 769123973 851962735 463382187 512150051 976662331 987937001 848291281 868426478 447941852 984839554 93399627 633714975 928293097 962655403 494901489 563189849 287621424 391582278 912349366 929937469 89963840 793894479 45563383 373415845 209187052 708192000 846325707 924677331 196267844 574711276 352780149 379653317 204969775 559644763 711283572 785590306 850108290 888689138 957541062 968263524 629325195 966067500 987638522 991266524 677069537 951423565 256616676 389135534 967708741 991684988 94697617 647326632 946509843 971697486 309781546 371083843 838944207 943134046 232960574 782775490 46892021 742723789 602130746 830610081 684571207 777083574 670385986 726532544 181114286 750963973 651393729 719222422 697645369 704194604 85256767 330047909 226774658 806364441 443672108 544985773 880205070 981683758 345446365 449077700 224559782 737814382 614213460 621148204 886568220 940831339 213145353 341831685 572464113 639209504 736363727 981779039 557944372 733346838 217970117 558896122 596337373 729654764 66470640 75204583 174165737 954511072 174613407 864407798 777662344 937327212 301151583 302952545 177860091 839839870 751040333 875600193 700190717 804059804 204620802 404656448 694411157 906615027 579966002 968520134 555813199 689999607 900573409 932481079 727315799 836118647 497983680 525991746 732507034 827662931 560602503 817463729 744755411 752336137 305951030 359659217 629921387 859647234 626117474 697128483 132305727 607797732 336416702 475113406 654903042 865705476 651530655 858560244 790045083 969388202 643716466 791428185 311652490 494542421 917483003 919993421 293803727 313075902 290478690 967543006 648037236 927137740 369713518 859974424 125078092 614124078 650568674 729833938 166140682 318902251 318048087 431974284 311796852 707854967 486286807 796024133 591270908 732341453 178984732 630047986 858064801 935107401 168478668 760059195 277858401 871889804 180356853 488977881 910429000 973934770 272118757 796805479 582870058 800808451 880783815 907262137 69387867 684434731 458012714 853402926 655248694 662940922 264903710 796212965 895353998 897783080 365035166 755522062 842839815 980127631 615279661 724463447 552110561 704995658 520751877 628553727 958476923 963074978 413444469 488565490 891924383 979556729 905521071 918129093 262502750 718357600 176363831 649035911 414675535 492104354 369996519 446887839 122170686 457766561 157444463 756657501 741486215 856576392 104094538 545285752 804313265 958144990 385925126 466679581 546438380 995066221 330089379 690760643 218629476 490380516 638278863 866783280 639444150 998916328 588273015 626374138 219864130 649668907 727146079 868461448 979332842 985506629 105502202 698819578 839984895 998413376 651060075 732080829 320373144 622290603 432743952 668924604 547739619 901334823 243518276 714524381 545957288 718464005 654194536 859675352 547114489 697490584 834073862 967661985 109780178 343413765 317299344 934324153 962321856 978851671 2049878 124016423 470286665 814057051 617851885 937035084 453608422 589862073 702028066 972698117 178657401 635904861 708414914 881850868 958450457 990876304 331172371 350351782 155377417 706616367 812066278 831540604 436378787 875884359 398176346 674890166 628484405 898522425 81926081 880049508 995104622 995592839 24764969 976913033 91592520 248942412 495367620 656534976 830825835 866589421 60763785 927851305 45475870 978581924 803037781 808652127 970745352 982611209 711375191 893436270 772936524 910339381 951618188 977618431 64634601 364472563 116925880 596595019 304417338 984942549 553103467 948020086 759680365 972323085 711742496 817731764 507553400 735518850 617385952 982925065 289401044 743591325 357340997 728989987 390235782 913841366 58962852 485867296 184112514 622853219 474363358 816581847 808623059 883869212 864403876 972859401 615752578 849006141 635001006 709116617 242142616 338781381 519184452 853752645 10006489 762545644 762180300 775306814 12453878 562677494 558444996 776527679 322440094 447746798 730313700 756779751 880077353 998680694 516649324 775418301 71207795 295452315 814886886 815799970 123587153 667251010 613835829 958329733 753457371 915214688 239458220 264266168 12926455 923918902 609376611 754086580 363525470 545978764 966476221 974637660 647570961 851300196 519895801 821208974 163893800 958434776 929009854 965462252 464081009 522642687 529723680 730490324 734591671 756873765 558614611 948211743 454251571 745568690 254712237 360508019 811233425 833435521 347891977 703854866 559082901 615037462 399706844 836945203 762774455 858308540 93342704 776259728 655187351 877606160 709084356 960704733 659731795 852360407 166489999 903531193 12618594 298696041 261237074 742459809 589341960 928228943 110759520 159766081 13187403 704315143 17105294 655366488 731749977 931151686 436396528 454087568 446446211 889382771 878708952 953559488 936863162 973152879 944809192 991431544 364874636 736629364 575523589 737585003 804170318 851567769 112627531 511381957 712303286 863499471 528885600 553112274 201824652 766213084 27428866 200813312 454252211 788131042 284379769 783213582 42029175 359170558 870246230 944082561 234050357 857859132 664092521 799109814 869289044 895418922 763100365 939957093 611905396 836061190 959782382 995651007 954189945 981410356 624385281 748013002 367258776 387498781 710865225 817874284 306595189 759009274 726175128 964183446 882833051 928302447 739757894 949170370 579862549 656175221 884973818 937145356 327500577 970122720 642686751 817243945 745741831 847888798 686640691 728246868 363183880 790777353 513916270 534951513 151377460 694068981 97680140 552278299 180053502 236650503 766483778 810234880 819359013 955619556 885381859 939617607 884976452 992177763 362723000 920965368 783764588 809844000 771830129 775429653 567431469 702599624 178085659 629378590 683884566 795211174 100615834 515544633 268148392 437123286 422309465 717190564 107145877 158168930 58184169 170395786 317714631 496906516 785219903 984561234 945088919 993178387 774050237 951577969 150943696 444844693 295897883 902991483 365643147 598388032 199776748 643651917 562981154 818963508 980969840 981607831 482647489 921647876 367289938 841378399 809094951 946105212 827691994 908825905 125770205 130301814 902399943 928135378 786143018 906547086 936972689 977586898 564481116 656844192 42636131 957503360 287623445 386732175 496097770 799938751 825751357 851503844 568310434 976006846 889436077 975517901 27158101 450996630 340183977 508930178 903710855 924066393 987395948 992840286 807244198 901825358 58263529 600000847 755183333 858074916 43959848 485216098 262476477 918604266 824093451 869312468 58931070 472724878 63863245 77579458 915407249 924375376 636672007 983318471 627938965 941308045 249720962 875303270 1184187 781403329 409589102 473880204 475891409 711007262 52552625 495668894 759657280 896940609 688144381 955930080 2453343 736154728 785848488 881423278 102636349 566478486 985888760 992776239 110377480 258045489 234221175 569849009 423401945 725356123 400688064 714012111 828344886 977740658 699751959 906992834 961008776 970743945 499892331 819296734 379185415 805732795 31423830 271565535 333031735 937398515 378402395 996701316 991548523 992349127 90652001 696202209 374082044 460731633 371112348 943540263 72216446 771539144 585885998 706314527 665000546 925474563 540650710 641660476 576238417 866369060 623957712 912756667 96293746 728036979 27666458 764448532 761517749 857571700 509621119 946174996 292515142 485590177 191833892 738665954 6088218 139851563 170169670 422179826 650568212 699536350 99427528 944723215 537869127 747808284 763497570 920236750 385970506 420041255 931454960 937782043 857369029 898437839 854531321 870686238 970895435 974088198 58061640 803295616 120017313 520499199 970336881 980197689 654050455 670154845 64986712 399817088 920072976 925102160 269722800 279254897 185215988 613476432 415475092 816556078 37319664 115854209 904003540 948215601 286905915 790111119 63718733 996892924 401537826 645904808 239061409 414940489 798838526 998993687 619389860 699512995 979719073 994902802 864747536 903164655 838839978 890227026 475146503 927627836 357126577 578203134 945605461 970282699 927781418 960099826 634849407 647623692 985357339 992737611 215823183 433012897 703076311 972112263 41806426 52728337 820555057 942126935 145972795 165650725 644097766 844955618 181207607 510098318 579528939 759478788 722551821 752430106 702566843 717309943 497133302 701668637 906028288 958253969 887334822 919451291 159801925 427765050 457297148 875574658 179378687 657426554 241881824 348888584 637949414 998391411 709116520 884766477 593602994 601093421 165240675 203704089 769317971 806016725 688221799 887047731 725260123 898207781 313267665 453339346 151887691 433944273 556772990 957032771 103747971 644477090 145544707 391960085 775926097 804910069 987986623 998210639 650509568 737604673 940244982 978714656 807277608 909082071 294476800 402161527 52377856 147282611 885083089 901941147 425810307 917148175 126858273 601266833 147276113 786436027 235252056 531434511 322635411 990898647 798416331 885871666 170281909 698335900 888673639 926482504 260299324 372204745 866235574 930874873 148809273 571006322 313152155 636752543 551979561 971894825 12253967 809869511 12208462 180729938 503406343 585524141 764039794 792623676 796367711 914962407 990591303 996639174 440385272 763148115 665608948 814200647 194130451 341321163 931497452 944437813 967343285 990186634 544522700 950115571 980856121 988949376 649568667 921592259 244445508 821765669 197014762 882046748 98575708 133762011 547016846 962030438 608293366 832001165 144390897 269160955 377536362 853428004 827435259 944673958 588213754 986092367 822604542 846919139 546955415 930546546 751356869 857478361 729498546 929134718 584955065 707842239 907738417 991719253 97300947 748966299 652478049 902490000 424199547 449002460 923864729 976844553 462929470 743208606 414737270 669150569 52869833 452638619 827457826 861340180 902817006 965387873 936495582 970511462 185485672 582759854 636435084 905350227 661009410 838570099 902166127 983750165 10381325 497842880 359755588 773261490 928721680 985637956 731955673 959966359 510485501 525620422 372771934 955148713 81962480 225334593 21992812 242158495 982670352 998546403 662623025 771164984 595704305 679731985 814018411 850075105 596458351 723580889 863481729 994303510 577630334 984901509 966611696 994443696 922112740 931580409 254220789 960668469 811243588 980581269 955764924 990818206 787280598 853211662 107503104 121602459 76187055 661360286 916780602 958657733 520507605 888466679 46028160 77363165 948047065 948156049 118226013 570375085 160658942 198494830 557746790 648012590 688644102 700880373 640287630 685657437 135854677 403699244 864553118 935750250 728245054 946919613 710335898 803717694 187583193 633863915 120822551 844034221 715976173 718164533 26451062 914805974 602969959 819929697 220962782 238627113 341387512 592594901 941990114 954019958 659377762 754139773 533740828 543436298 611176264 827066908 483996718 811768149 615407151 773985846 242946002 924280831 674310306 789459287 184346756 659186580 334689190 937376002 925312567 974498811 496411002 550970055 350746329 887265152 864544129 918350711 919306877 926479306 226187281 907335773 377876557 975286333 587912149 852372604 776056954 833582619 116816422 720768661 223347177 827767870 458932730 844648850 262211469 295006213 517329212 690969013 735115031 938844581 562854870 733805729 225107243 547984477 274974689 420117276 624256737 914515318 425928501 446222772 178207735 211832365 997452365 999026729 347657695 572827075 141040562 921278418 910453831 995268277 784455099 828762790 165051576 626583633 524572394 765159203 856075957 898063762 892515507 961946729 292736882 369946080 13841386 562908744 89361403 104625527 183254726 414102248 147064228 753858654 285094862 653618249 525572920 532173020 459552775 468905992 18464119 168842989 170990460 459361783 755429101 869877956 511164692 960361000 390930825 478186102 579396490 834080312 715073737 798195545 172377752 566670068 648139161 753116366 648182711 703843159 202282548 291976652 13937331 480033158 752600850 901181393 628900529 675444798 267807447 498185934 689485439 961471593 53031286 682058820 941193107 957179743 174067390 697239998 554869993 656294653 742215675 986026841 915809522 955426656 105532694 630380059 579538286 606291779 476148682 780532705 246386469 975829374 869224605 983884318 840614213 910933038 854066588 933251116 524294208 883997815 809719462 871586934 895402890 966660729 994178182 998230066 873930468 912816036 348164734 553924553 43928231 727066182 615654638 932461461 111138669 802568072 517988439 849294532 100782040 684367724 69245133 984826361 400157843 465704397 452839847 969418720 633784282 679072281 273026261 614310417 880822631 926744004 983634937 985322624 574728753 935000420 909949905 937643054 694575925 743231665 608634986 733960415 92191934 341967783 663740748 999019656 885968262 955018716 928430620 997309748 222368824 396536364 774551850 903342290 60900485 365619109 893614915 971674886 856122581 989242101 348019880 968339765 237892462 396064662 260779044 885065184 954900145 989461037 271653871 927636066 569472304 787321131 310727743 514230081 225353694 738174178 664142244 969743914 830490915 894205729 454325064 768344563 96826692 919033802 38224694 505922359 693444978 958715521 551450239 565648019 623784527 929855511 839010284 985326125 525017673 715776052 765480189 825191007 825869877 889867175 793074011 959228199 27676398 827904322 591315182 896944294 33043101 981677933 350759126 674856739 365001753 944396235 361638133 694314132 873101901 920953446 691146534 916344175 194630590 259710042 26987366 259546035 82510690 497486193 274325321 938365650 72055963 697683744 445532308 554597173 559526204 578507004 542836784 618615465 537305823 812729692 288097465 899937039 410408750 644257725 710219729 985024793 852887506 924088688 22839573 312252615 415218421 638710739 400036443 777429440 117321838 416072988 772310195 986196070 58934334 312497001 453290835 600770699 798102373 937190016 741658002 806052441 113311558 748217656 196786509 387112940 250042057 752576021 823653255 840640631 505683392 867089605 823776202 834437268 758500373 909618898 483077970 545358508 206516930 830963993 981329167 983617144 631426377 951953854 121763829 365267097 526440483 982230162 705988205 724638236 875725407 949643744 349826745 821757511 765873929 774651016 882908986 947142662 907958541 910832208 898524408 987676179 727544393 732498793 697086663 870118801 944406026 988345461 121504935 511928486 710403372 809737302 837131291 974321659 183268449 660185542 853874387 952919798 9641982 673887719 558808495 585587441 409806907 762600276 944477444 987408837 51844753 892212599 494235951 961641314 970891829 998022309 997932244 999135906 756640452 993479404 644089830 784217821 281647447 728029658 7376558 915438297 119642232 685278792 660142360 994185903 50534118 664800141 215917848 545783296 186179771 429091870 953019344 953360063 944792814 949166784 610990748 885267438 739374211 891025517 738537057 960490485 936501272 945698130 515396027 551053829 697235433 997553343 661967583 897939768 543553422 647606788 916172875 989521605 431159906 595068205 422722260 672250683 178372481 600964006 652402368 890255702 737417200 996851238 853330238 888574969 345033527 451062506 469420153 469586328 306595617 744306494 310807707 650992553 411045238 510540362 558238063 899953881 780885708 875811872 953526876 962931800 465313442 499440795 121666879 528886685 627809141 900725555 775261161 953856201 193181315 808838115 583890768 734152203 30186260 832220326 825969978 928891648 139124644 290683080 997099517 997557763 122361711 313554101 617464043 936231539 655569463 839466126 88502280 110682004 480474986 951381591 883041619 998353035 858991859 929222532 35429260 43561270 648561917 676143912 630938492 870027932 934845995 981133732 690136045 702761344 45096241 482838974 403724265 599758185 59598752 98877262 391744478 653428426 792006226 966730780 854419578 935990640 616524309 998669952 233291084 832401864 227209265 800525014 791836171 929792072 998021337 998335099 642144713 873596731 223617702 790340282 785670424 800878886 904597377 941162940 201598085 411520279 168447502 676467644 689532956 699213418 222302996 462735252 728330009 771806006 623084446 806401605 431558318 807725655 33512175 192814771 858244718 918612264 482524932 880563271 447842822 486482760 950137676 981039737 521079777 546128801 292787075 295485410 61454982 162786722 893141598 912656444 540990034 809483915 692692607 850419057 307887538 996004840 829885607 878727290 712137578 981536977 928861089 963254185 825430869 870535204 239976593 554036733 710122616 908649379 264370953 846919317 685360833 727734299 452256865 789811724 47381159 620829503 432906861 823091274 148940732 183896616 363207976 772565949 649808669 913963279 711522471 769542637 968238102 985533536 20843612 829441161 781266031 912587763 117375022 852439007 577239913 981217590 663438521 937573568 279757579 626430992 214483863 813515386 165864814 358431676 711470256 938233469 703457747 789544999 76785686 233387614 176080691 533545547 684387890 972833768 392634375 891289373 430833835 912094343 490060602 586482756 707792074 724775557 277315492 710553520 938568142 959635055 60843195 206089000 244751028 668783965 987904722 992139027 718974744 982528313 776439550 966401706 461705870 538735712 972611756 984554463 791895146 910140607 560705947 851206441 960069341 998196821 380690305 766257794 383522220 626943874 816858967 866078171 961967843 968320954 748191802 903882643 425751102 718025153 545909864 994815147 6784943 847569783 891337885 916306661 659314540 821500644 375313837 556426574 16213784 133142533 914626225 940817853 602879351 683406149 973380276 979917773 810389313 906576262 246413249 676898821 493055970 898873978 522884258 979765122 225438806 619963905 906964958 931438547 246359665 480058948 888989608 964139502 21695873 254528527 758352028 973211751 379687824 875768743 475348440 781198493 802889557 837289607 368465298 592008777 990837346 998449301 799182709 909142375 837260622 960321134 436834945 500675833 742060547 891535001 698910629 857881984 744687577 788053020 191893080 932284060 233676955 387194918 460282866 500079603 79674574 248512084 818559477 924931167 287660841 907906175 293030854 752363671 578280141 660250077 108523573 418056941 660379630 681022527 597612910 980703320 332095132 419568135 603272336 688315925 66687328 978148763 539980207 875661951 992914251 994963112 923714049 956297268 540904810 543141596 626313708 900888368 589943219 755486310 107121781 190489371 101962595 192106234 703551284 970541457 590833623 601404223 778399132 851060216 256270469 829235431 952357120 989150921 66414274 257896988 556218288 642306102 440431893 529920433 840564303 859893595 600486045 908709144 624681292 768328195 872913403 995438884 116197153 240126603 787930209 817692541 997855933 998758383 312122255 456782989 143677437 744197062 940862617 963071890 598731226 887938711 992160108 998879513 377698321 504977570 556954143 709443867 84133088 162625850 290553379 751273707 27559911 365483111 944708097 953933542 485044895 650886478 132028716 709248359 448602255 895061955 843028180 925023970 471065178 672240957 49211013 945453271 923042445 992469783 386645483 535761616 117131260 245194392 591566089 784849813 933771773 950434481 266381670 958376479 877740074 992833013 736464886 941565637 34885203 691481308 276223915 604292313 523886991 764186133 913635668 950194057 25880300 657503354 682075213 972965137 556575374 796913923 406173494 539431253 233006186 815651290 275731234 840767701 39740413 687222122 176064035 370233489 208777148 452061516 655625882 778836860 749038570 861728462 538942534 557906678 240039377 962281141 969256627 974709764 631756354 778497441 149370404 345685463 552976217 933748654 622184487 959505219 415401153 832060226 501066824 807621412 611707264 792524737 914733600 955924169 960795421 981851565 325711584 715214036 481977651 772027018 435245471 771534710 24391722 134385758 885590138 892064187 454486029 812368327 649294396 682753904 803437747 839027363 821317827 951014955 542233870 702181813 913178430 981144713 597932653 973080872 854667086 860075806 526922792 597199663 509287116 760882657 104360842 343947768 167252319 466814652 264356682 473380036 328513685 569955427 931614958 969542179 462205703 609098337 42877085 490017111 642271740 983471570 497558242 742030117 623961990 688351034 808730348 951405722 291726278 827106935 984385122 994845057 104155688 180104538 361897835 813314457 849005855 895918572 767866553 919247337 435374785 529287148 492312174 847278825 733681015 904550861 277017007 975783449 451390410 674349758 378188503 833003238 952892331 964442740 348586848 805615849 51801512 255160693 136394038 975371734 425100044 921391999 862904638 898446207 511035525 984492040 712914369 863037122 571201350 826591129 824593749 845151643 253931962 304125314 929784084 997881848 541171349 844422796 691709570 762225233 609541800 885703616 484426357 758918048 880663022 977835297 940206375 953384850 634562839 746791435 320190936 740783006 505105976 878821385 218502330 777612472 55904266 380785234 986662429 989779711 270649184 878315633 833009126 956565196 23478798 314236504 380528429 550678523 995650337 997833299 537971597 951839698 400520699 684129389 196368940 495170592 950309296 995154380 616894383 622056716 170708547 495606658 115672401 790463817 356879336 578497018 311466000 855796463 109189834 391171112 149033259 649697969 171062215 633935335 993975373 996373840 751528087 880800749 746128720 963570394 537322805 817932567 165752870 624625898 275873464 977052005 682220601 870030471 368544427 460072154 284604482 436075983 872866146 902359185 509375245 832806330 880115849 928200739 865209321 874789334 363286901 818407577 453996384 578208723 667935586 977269158 642208126 986622149 901103147 965824930 756228733 973166754 356731354 868736010 949190671 994436308 655864501 838714266 663246486 838853564 954428163 992077575 675483022 754459067 449372606 644130055 143674459 916151934 143714493 533905052 441539643 485347284 413427710 750517068 933200598 982834104 630000380 700069773 91665879 177836230 932101763 973763723 854137537 921096828 748886702 978521017 304279090 350019351 215050683 874952690 602105259 702002997 203632295 224748681 262618377 845634523 642725737 850075453 502063120 549084011 678390806 865361192 300616783 607033486 470777062 665983250 67987477 205614176 38820621 972987542 694204946 784429553 163469461 646930043 792561070 893440781 173902244 758560757 506037781 580673223 784119393 894788166 489298470 765852836 989598203 999222581 65453233 341707616 515526310 688923920 222077320 363850432 207617898 391308394 620013009 775430163 878160773 974642716 117633894 669723632 397816487 785957549 89143404 169881026 690213424 872873968 412597867 439866892 778179404 938544091 2241752 927025468 31748878 401559712 67597997 287206484 170885799 678745918 464178509 611218223 622638301 833875904 802432917 987714458 170238931 402960268 71881631 216346768 147156140 813230115 357982561 921492095 819410402 937757664 986295930 990692040 813684462 860220888 810920987 837862870 771185908 900387917 588379531 710544200 204757031 767850531 235969410 597452601 449429373 816107233 79843899 520782541 486953953 821256482 676026793 797836093 973899230 981032720 785568870 878106013 840852887 887159496 591515443 818981431 706009347 716706397 738405732 783490347 570393659 917015989 388928455 712929842 997552161 997884634 556246868 919987031 103467103 813263331 476277233 735594853 879114072 902816289 549270819 874881142 972291660 988229117 775284517 961740676 412732852 739575420 270708048 482511364 34775865 48375641 748823681 914234173 202830704 637011339 93344004 818897202 414449418 877261731 409231824 920020500 585733390 811795895 547870329 791818725 483900322 831653795 436560279 731573126 615303554 637507288 551910013 998571716 259048044 485139352 908288976 930673724 989526082 990628347 762720094 958718696 370983025 561047508 390046230 773743558 276236609 609292024 978291487 996186310 102633211 957174620 979221980 998744799 284197349 458446286 146713117 722837188 688701666 988940034 347618227 679410732 940369262 942416685 328414762 424408503 845057624 892360086 652083749 740979341 987815630 994660978 71360434 326426729 329120014 362597664 283541208 955084289 988916563 994081825 57007037 367496518 257480568 271783263 153102722 666265999 273510093 332566125 21128203 961579635 308891882 771243339 587404308 963259492 846868715 938105479 79638635 724911983 254772027 337234333 814193956 944248565 489389407 842201861 646783190 769891562 237534542 768341904 545342627 939366726 130079811 714425107 979904233 981694742 62460987 496418034 680618136 926501232 409683758 485663822 148474309 691606346 547172538 764549442 229838155 528180798 181217733 589549064 993092064 998912999 750354090 944243014 895151707 976066866 20622943 329044494 901828698 972898427 285582385 420927140 369255182 742883588 752466795 893515905 194209459 616479036 674778324 758281769 238804988 810461735 859775262 868895231 483946366 698479058 413721983 819869683 143554254 638105066 519826051 739249059 854715846 879659186 240761961 642554608 484345514 654311370 737567399 926225096 815375560 859788534 575913535 977821922 52101342 833850829 458769468 622177517 257159807 781857485 511306060 848775602 392662969 466897682 767319183 930555657 515824361 721212054 496928564 542739538 440502990 752929240 541503094 971865954 75879167 273172965 444727101 899419861 284232015 562262823 466912732 893905703 101676089 522816623 936124197 947117634 218321112 685241901 479599073 709366704 593055351 673666904 59471940 609486394 7072413 580104991 260141841 301553966 932818251 961699431 836244747 897802154 453623263 552944507 820703224 910289331 978528773 995182278 777401008 920567620 554269913 946498325 551040173 729099043 799128382 887752742 912163821 996832172 4734957 718813464 926697881 969840493 427352423 881478812 793980761 942883746 271107055 593504468 563799796 688405583 201603819 601108292 719367117 989297870 118101207 577555705 480323831 639994972 281517413 540770610 670980222 965739112 692437146 981463383 429520834 659563568 314154233 592795042 817960956 975331147 444447832 792196669 963273501 964924008 118864126 243497686 65344737 821323511 573991213 636915979 115160892 575030308 262407470 404589047 527181959 954441527 881579215 954200084 6675162 942429679 150717078 161605335 626266431 897848397 848758456 902787484 779592022 803540331 136450518 334315713 692512434 860796216 924427889 983649312 720600133 746728066 82152706 357960154 50178604 705869751 515602424 705332647 579089976 847030934 834436770 946153425 92930772 784898296 74478084 924140291 277888421 433649164 691260274 887059327 540745776 623657118 217470235 955233617 693686074 734568386 271101811 282360986 413113953 994187100 173549570 823336300 187672396 632546413 595462358 962746667 416699832 566817244 361293206 840511706 784862261 987459843 410359480 669391802 924877135 939906429 402649351 593153775 373698454 473751419 343122907 921960668 598991753 634832866 805862968 894145613 816379550 863298013 329068060 459259864 95402699 528583444 502631919 731989954 363446479 652118631 191580529 980880173 98343572 790382933 161827958 561464933 240470036 322637924 874899247 955971818 393592775 632825321 339219267 461962846 185495963 374221973 324162265 998532559 631649542 743822369 280130708 632229324 524719655 874767384 621748353 784688161 548314612 865930945 632066739 683921532 787835736 866601706 562310550 677209234 403354270 974069359 695838991 796947104 467199042 918327893 496849031 682155951 440871884 909433119 589687588 845859142 564702547 588222628 724192131 728048349 37421617 81250920 269056114 776319600 724673796 874275865 520786671 748474560 583752425 951877736 493857060 986275745 458803511 998492497 477389586 527290821 84530716 401429300 466747219 829242148 742813676 920766773 463484535 864360630 270850274 765054209 237647029 517522180 176273086 910432959 753824727 959174995 363749305 442708127 489875082 877414035 66608132 980796633 928618926 991201255 597628515 708904071 38887244 553646916 509750671 746728190 430685563 862354228 599301180 881767495 501368979 916783368 643150672 942840523 5712028 792184010 270604246 692038677 160021887 178364468 405413082 932407458 986031865 995803125 970386357 999136321 759045611 849780139 386457661 849032520 535295864 757803319 30540964 183253813 848177584 862812977 748834391 918812357 675707818 919291952 297937112 743033959 228995971 883650511 133095263 894164758 407280563 633009610 487508319 593764418 559976769 954139838 807504529 840712122 953056874 982322981 211334819 349726460 510067013 539891498 148531502 580697624 547159787 881448127 177652654 588365941 633454112 652874242 36000631 472406285 190518295 257988737 832900845 889024676 899806151 932384187 614755703 748746288 413661994 695238170 294288008 395158409 362914618 810671364 135418242 414884996 526296421 877312345 545731453 730558978 370229504 727963179 228402160 360151300 677785775 991002559 172324697 524154182 671202539 946762734 847961472 849044716 928729246 980718450 377698109 528348339 164530558 394027524 374976009 961007113 385417238 528345960 271772155 760363375 399380042 690990939 291582467 420769476 822680160 933773043 893683665 980153894 518328650 777730671 605705157 798454900 714492416 800436687 459159736 898991215 329153406 842361774 422281063 779866557 889022435 986818926 356259655 478040839 91913968 188485144 363486453 625204528 172869187 716600878 540949121 987411249 20489587 94968985 511611614 872535318 550547762 712445840 617212835 974098236 919003127 962173749 325346663 902378215 16285919 363255332 19229208 427996550 890223975 961054631 668848501 733433227 221468520 880310150 472321964 957992047 283040895 670803602 242511552 720587407 793373639 976044627 902616399 918755386 230908695 417317480 156367119 611176318 202096545 998641344 788777129 958586659 693017245 705887575 824495152 991908104 362813358 484797975 722463640 746408688 468415562 873305286 105361994 678282542 829380257 958438130 193491201 282039451 855393074 981218477 757191258 948377840 755301201 761643518 333459983 983452900 525554047 919889132 965529578 978455981 939479418 987118725 178398520 284200596 998617717 998802280 289989620 473101924 333767044 397954646 576232001 641283208 68773203 579256108 290661946 425788441 73879388 203371932 399924631 455014631 315174652 793936065 618451297 678307821 638008841 831000523 192810577 710549862 764123300 961550955 669599861 788757098 855787489 874197933 213384259 642552633 833247872 928391635 941553731 992881467 667684771 902452837 829362377 935878985 248497140 344284652 442553192 944058690 187663445 618067653 218666001 591904403 713196622 909600384 966829575 985145744 559919201 981542498 979157289 988052367 215168712 911420690 221346858 832372307 576427517 913829872 609931632 997841165 560435814 984305675 763970095 795240103 461187692 963365858 252304089 786228771 760675192 991765193 385909129 386618025 198341481 628746877 745518345 784940397 851928704 927112188 671258113 906596462 543207930 549551245 644386247 970879213 673911022 920056422 191407566 251029647 812627246 886208679 888524067 923833206 580242832 662851635 653112564 665621160 902225882 976770488 845438666 955088108 642903947 731772401 469581375 583416132 737837730 893536744 974626369 988049341 332747795 746555775 931801319 974205389 326612541 377686040 512840686 976206338 979639114 986097046 7155459 419555142 934268986 937623694 264756145 903338321 270919995 796371721 42093018 157169204 772257645 784057564 755044901 798047468 737173001 942814180 673779530 803266139 629723400 836578103 738484300 888882531 287847591 776987435 505083432 829285449 493946176 651262983 900038352 966887366 844036240 909226820 102127719 923665416 811782982 833366652 67541000 812440706 913848578 994007854 75802510 241881621 687504663 787654256 73940261 465608529 261308699 502232346 152103074 742708151 582502280 892372955 124174347 427966031 174062895 384102054 786834560 912278870 867164550 940842123 539170741 962113631 217913237 574846699 267925727 309662605 656541165 829576609 331529796 565148896 192821232 440646418 626688654 673230708 128413819 895439508 920723339 941613445 810860052 981460536 829432075 965452682 44812108 449416470 960440449 972090763 643101208 677682787 552050552 794626480 649440482 710690741 458008854 687578169 399662131 538154627 562582691 691430429 993318161 994023077 610912114 710249897 573898816 941944751 278452393 813845531 991144532 997876869 611834392 707511741 508033015 519723049 856856430 950292812 772773557 913510544 734767090 945474170 696639864 792988540 963623734 974016706 554674995 758289128 206478034 360873584 685936963 710313311 683992277 839403499 438696922 588594840 310752307 439899706 773847429 852018845 376233084 627249741 385543852 408912039 726405580 829955293 640998326 829927308 237501619 268836781 947179439 957009022 254476130 654772943 486541755 770198178 807595284 839452412 698569605 906473076 387952351 634877298 548813149 661582893 307276041 978297946 648951798 767164758 389195292 885804512 905882701 970481434 440893089 822504531 762884031 787623865 758217259 941013873 423832763 774205189 466422357 956612009 672503320 926619027 261555087 754145787 345762655 439693998 40063761 780387190 206287974 394609846 3069258 529770074 573178021 841411540 53735983 392277966 771113947 922079450 594162065 731639841 598832452 607858993 786957186 794126069 783904266 972754931 6588002 507767054 895886640 939044033 72229008 514166216 625373184 699458480 717053534 846339017 195484453 892350814 484777520 525727590 689713015 916189348 274822681 822028850 330850439 562725700 521463744 846010017 847618250 967072061 982683689 995651961 462802918 777257906 535896138 824720245 490228444 784948734 177704260 939003875 934928685 940320353 151141239 234979887 637593422 911629677 265526198 642876360 412353511 426719848 962323272 990804269 263861807 934259590 374376286 823783483 345937017 640321559 489492417 734423385 794394412 835679138 818701303 874723499 987751561 996951698 386263086 748332796 355545544 579343907 590955869 607721452 776049101 808767045 915013571 970386660 999010836 999129023 564769575 990812968 455293926 994037694 724358675 867125989 658965871 887694397 146090866 597001029 255462841 622784211 767102879 787113919 71310761 455124862 294508670 756984090 209393221 403911925 795008850 879742707 332061704 947394269 783450453 836139953 406440956 487769281 97273496 552867670 103186680 438206780 500931520 639222066 804261771 873750059 838168489 915816922 487337380 535610229 190466824 576700989 536149633 789420214 365700677 657256778 197521793 598521065 295430553 295565721 895583960 981800571 334907551 622031941 704621671 841348987 816835224 943638670 867244565 987260807 143956836 779033585 265078409 995608467 570745631 876119351 954955223 956959642 182267464 423192945 990125728 994530873 348796325 406958920 945802962 971662547 255727932 551049906 890085038 904808028 815942976 969301231 336778130 790406779 855753981 945080585 839656259 957042291 947454638 974750328 36831589 739144843 184576265 531453369 159466628 662004449 783460400 977713354 857892803 875173664 572274498 643163196 126773231 250024364 474412096 897825125 973217116 983307335 672821062 903238625 742012233 799165422 164615654 513643393 567332744 913129326 444629130 727146144 316638750 431927157 740365255 797991270 319418707 501594347 274731931 818357648 5604805 396028885 669644928 672569526 897834653 940912032 74665166 914532039 905828411 962890025 525491046 697527253 294377396 970151622 146762103 625192882 346287266 850462682 42384426 208039678 825654925 896882574 904894339 998326540 346613662 802249557 958922953 999263101 669144011 806791533 868044816 973696916 254376586 734114031 904140356 963011450 930457974 951871861 726144292 865935244 108369393 112904080 358077517 603729579 310284131 749866080 840438414 910191829 915268944 993598020 422536953 832307669 696961702 870272383 772199134 974310463 542320903 639568352 90096779 864411386 248824756 434708276 873696642 899823958 707902415 879955962 480309909 815560217 332556696 674451811 24492159 48911898 658767746 694177627 576134812 801125433 261291822 639433591 661282254 765560580 459417632 881669705 653819403 855660037 232722724 899575092 205998259 856944771 24143286 106389757 821722991 894904645 516886281 840550565 979217065 997620990 802297660 960723938 465385148 559711812 543824171 764241400 506122935 891935942 368425008 966029595 266482835 649914767 98454138 400572991 598833684 814306758 955037079 980280981 211353058 515870327 914142190 975307172 685718844 820729172 664398289 819404445 625322106 660710098 824170408 904234739 640893952 997681378 82216966 131237773 577703767 874708118 906775273 973951528 692570979 707547681 119376850 220869524 507314053 894181856 321510280 628092884 298179769 506630221 703159285 909985722 682604322 737386040 894145197 949546715 262044056 659743416 215114872 300813693 98017170 598097684 933425076 941949657 647240470 824473041 927078832 965581350 392302834 710822443 862803917 965866881 631655586 902482871 180814544 193603603 258779722 507614488 930853754 955983595 613048182 692743975 312168868 615713271 445287232 775584679 164827191 243038470 1588529 802822259 329006379 340455632 197951760 449368163 598006633 943944397 221740568 734276682 703943888 749218027 449075380 564568350 569119565 669386971 423699725 444152528 683407431 854252312 590075992 745785223 902946635 967970355 724873311 857633018 662910706 744892009 421354037 450809273 93507502 699563159 915091674 987403926 83694014 782124622 93168347 971096904 814855529 925446063 524124233 555557843 517072095 582897194 875334989 955731900 129181442 907449074 709394218 926255314 235670569 458439316 462894043 482463419 179159085 835746338 547553295 754113950 46882268 662946272 192254919 289867141 505169959 929714936 831739054 989416961 358402519 520990884 851488768 997873651 911278381 939602462 424753426 518173387 938166205 992005330 60136947 524095465 626687147 979126386 121777295 865681623 273833351 967677617 788045905 931149074 775267087 964830357 81270472 732764415 390453015 936969149 476806058 657436033 642048498 747285484 85501742 436655894 708454179 929938091 799263659 989688682 745399046 841982229 504545602 703027933 876353253 880890404 775638785 880679975 530998461 685509596 176029957 343358138 892427438 965133650 554093360 684942218 838751768 941103428 667710109 877033539 549290248 577067736 460472546 513835311 823319861 856261062 622038917 728752762 349563960 847833081 483439998 758125762 82668794 657106044 700753077 900004721 163404318 439578172 493227523 568568161 216621082 876263863 67219316 869349451 781750061 848726366 520526314 724140304 532976423 559851176 36038781 573449246 167975788 238009637 314612129 605893522 389893712 705957839 203306583 713579220 523401799 717247831 463560827 816355342 184740974 685636112 69312655 606932519 405964663 534823217 899977312 962369958 132062048 537699916 911719721 949577548 63899317 648422962 193232491 827649313 375149786 786860946 236278469 711952385 902037131 983872811 867771285 963919697 336714638 553999823 429618369 436334790 712003215 884761560 730173879 919822658 662203831 675182384 262424372 875318790 625272315 639179403 46503255 64741054 73410320 426178311 495895846 767934771 613277981 915932819 545817145 924944125 504619093 674669262 87311151 474813223 603585668 828185261 653122489 763916296 413756857 490684766 208392612 490190718 654912438 861343075 675176599 824213064 331471015 396396278 570105386 744138227 502444316 542734364 286718748 729956603 409813897 714197226 366704161 685256355 900580745 957490903 943689692 957415317 517500255 834700495 535473828 794419489 684888450 916889634 157822567 887713922 882031168 974051729 302494181 402724858 477740975 504924402 748364096 752079023 957943755 984308801 880141622 918076600 584786731 940541909 383173628 464034583 778909347 938132315 402012084 730008442 27430789 261730751 484740398 948507570 918842889 970756795 734754679 981447358 648885233 965668214 852513971 987563470 803122933 909509721 27332429 557422058 786011070 898698413 364455679 734561086 64819798 275686442 673304584 919526530 449175476 621862888 702914506 822565128 633773768 786010680 849724051 928298506 655312432 814507509 518189917 924476811 163367528 986176746 125261174 170776988 572117472 672433108 369027343 752827852 99986805 869648190 803328311 950215916 631112112 841253691 811866415 997876843 747432682 783152774 831259447 961922033 478865794 819584460 698038790 742457065 511040157 796359419 704981326 914126001 846331107 996627707 601734201 686639017 598904272 890878576 477251410 859462005 23950054 772061597 377294613 392643557 380723945 381045852 423520774 429903970 282244501 596909551 54112952 152568758 564872508 973870187 577762833 848403509 32890579 64700147 976648378 995982096 353030023 414826610 821300316 925930659 637358432 945887442 79307544 616148649 88035128 589107331 555961371 934415943 389405559 737767567 532810954 712465258 280164094 656804131 632490816 947072759 172427726 860831780 61913074 988406367 541243155 933156340 946552813 992904045 762313898 991539292 313902432 335718131 164727082 819013622 77554191 229185253 635622153 868447528 724796166 733253244 394605696 962486000 363947577 787947282 115855863 630730272 930283886 975794909 491790532 889159443 972978094 985347086 89737797 222136487 611097814 765836310 518561623 651728633 773626907 947687874 553433184 769622622 785264264 876455779 471945532 628417654 963585735 990584097 458151590 854517905 38838126 980319800 42344489 385779791 694040267 807742504 136052417 364217398 947696451 999288258 505817032 561827206 26238811 237545727 174540796 815497514 577433869 897363438 547648683 968231562 471539309 832104878 684370697 815301685 47970155 289851987 878357302 970052727 737777990 794242720 356140528 863944380 389484049 811635227 37268444 763080804 793085252 893140670 74276917 756579816 713833339 758363648 355980072 650272069 674403811 775470347 132523706 872372730 100305423 841910219 687164805 983501234 797256745 957208459 786388448 957859294 995667024 999056423 336502953 662551144 949018010 962189505 231697679 943625481 175456874 736497584 618169361 827059845 283582262 308256279 354346411 412366493 892762844 954499052 593156345 899187877 906737501 953744200 718664106 899497082 100055443 686977725 916785338 983718517 626929958 942414672 500936222 642824951 478734750 705668025 834400460 908695131 964129092 974482540 665215726 842530735 760880870 994325043 703174614 770333216 7590541 826548418 269620236 544942205 265165796 720083496 952917609 963168122 360071756 823845597 535954262 848946997 99747829 626763761 399798059 993109131 534976929 780780323 197022239 478504608 38984872 289491063 211640870 337822522 813987884 858790368 445956812 992022312 114219858 777447209 688924338 965306683 198074197 676898343 463692198 855989748 146834075 378923968 670448678 814823805 586849004 836165953 917524321 983491614 585968940 628913173 528785353 746500715 775930309 785298616 191644489 868220970 746764645 827681116 555494737 782603413 264592419 325330244 40695033 501207319 52549582 730420734 857344094 871359247 235046970 976698787 931652389 953909686 764628093 983754288 591567661 851267656 709144318 839282354 959673361 998322213 367146487 622072526 679561442 941223872 505167977 783348643 527228116 706434511 320761895 965566187 667201248 708181860 494820167 892738586 792662929 850191859 376458135 784020090 553633114 846084502 407137825 488972054 85031770 98640187 506036831 939354272 693602560 719144229 910123409 926049734 426596457 566965760 845819357 949288996 877415270 908786278 883094967 908301928 133227794 463458040 683733077 793597437 468766615 831067167 922741959 988812290 576580322 681284985 651791014 686918522 526861469 708401143 949994905 978765810 760498401 955278423 697383438 785523926 925938568 982126639 92465483 712741381 123765391 203620730 101123932 220945996 303101644 511961404 937720567 969506795 19429400 813178638 762254985 852024001 664538836 768437261 483424152 769336789 930313498 944712159 699442236 757879156 550055146 915257462 872604649 926123896 569744645 705903518 841762343 870129404 105960921 799334578 626362756 807725849 660866400 709675261 351118517 513623837 67624471 400526588 25781141 866465768 184302437 858985027 787309061 799233580 963129578 981459561 112636639 184469718 946391350 967485127 160639034 539411346 152164303 337605263 172434398 812209964 68113086 81190701 144783142 972602875 415820155 934888082 126531788 827423062 149020927 413535079 419101997 597828315 788076798 933305093 337350341 779117050 517072317 667610033 919123976 928891698 46330557 275725161 350493689 407926731 743776288 961797904 986677464 987830386 491541783 781271530 368869109 529460549 560867915 596606076 504609443 839683690 102124461 487784966 32698724 796734838 500089878 689676665 931814372 958215668 296843456 317191428 191389398 966062216 301327588 583525863 346179672 634023275 37158421 567280546 33378744 689892487 978040901 998954580 204368881 898218481 888219756 917717151 95977006 328410850 482185981 715514193 556517943 662940844 576464801 775743177 855645916 948493098 750927287 838237411 79021912 555435133 25332846 861127736 126900935 920870650 822940171 995725675 557585521 979667098 660786897 742920847 988964128 990072698 247406550 794567570 339073320 912321700 208921963 391126013 711797618 886695348 701789639 852874109 24887200 151644789 887286139 915900450 376211568 523860444 55619186 244856448 947967729 975907105 433885254 973405986 216900106 464430280 683960952 907113471 850208196 995698703 774358242 834539117 375745297 723882743 257308965 900487292 610878652 781862305 467460021 837104826 867272763 887673674 128229754 827451617 712316926 752454286 749476270 870249598 261804330 974480164 243142345 413330396 871755005 961884910 477053107 875948989 584243944 752605107 137822284 562745048 517264638 567385414 645398629 767164503 424801710 753242033 657897299 920272355 140833163 390916842 819699396 987465254 981041410 994871936 984310299 985448402 101014906 532925706 274865020 612720075 396368256 398187005 903106512 982181507 401852674 772985929 751073530 991928449 270290379 311083666 101367697 607670482 353090511 827335434 157445469 591687491 858854244 954032102 195508762 699169262 297856643 671517746 557957226 901647088 585620970 889531381 930504699 983779264 314820394 733373538 121964182 612098414 608775645 799976074 37739055 862586548 23255072 988803300 32467030 98077477 588191137 942769767 485438158 864913409 466304459 560997431 646080326 796641258 295755798 303993210 104898860 670828029 458994499 863672433 211557768 809934873 317912155 772357015 927943250 970695949 217013000 528086510 723384699 775631471 396087688 549508714 415157114 799305485 57070939 312582178 884516508 961917318 230180080 361948064 448253563 728826534 415658093 845904797 980998700 989113960 927959213 934138348 971886489 974124041 387342801 533723824 633657139 774561484 932809370 946941283 213475107 426429248 871040465 945096308 744410387 939243255 310149226 758802413 451890203 752683483 708498248 896785516 315647875 446793343 386796121 551923513 69256372 546596544 542701049 705011065 516913133 864751706 920626668 952555623 203611734 488299576 693972684 944128753 775038208 898965843 933511854 962771858 572344986 733298137 450872204 496370189 155087861 796300792 805506645 978338660 69378480 890356030 67393331 394901748 17225390 598844759 507692864 532947825 41495204 569250800 69738030 234885144 410283387 441741494 921689973 931381559 47818219 850867014 679594337 878163733 353918184 920827305 994873863 997619287 711893355 851762630 183482127 715291129 214527665 755979387 858493672 933547200 546486788 936023250 54573907 455446308 392034122 551339646 587323106 877053340 921078741 967893325 701700979 861240442 249297465 567204240 976593752 977295943 927574999 974478164 29149375 720272010 340302747 344806529 635258815 724039654 523144501 738992276 299904804 346087194 16166743 484097260 867559884 890629001 122364334 184198635 177683897 367896046 406568180 771631752 780935200 802402364 351175160 561996255 82327073 182219071 884442810 988852971 211305858 385396522 540740784 953171005 534678033 606463930 385037906 761376069 623093065 753683659 283822068 485560862 45270539 910077074 500642875 526138172 90840795 531274473 557098254 734069873 547344718 764881606 820346686 899690690 647882712 669760137 986580513 987326932 897284144 980694683 974548087 991294589 699346897 820088014 828778225 902583554 249852457 334496669 422704244 462484850 168237083 548315781 320542164 999077361 801636831 962055634 517860704 841965308 404863800 864834363 240275182 549955900 555425890 994058270 413202656 690344918 587988524 997085338 632710450 633406893 601785865 912665405 953459467 996207970 396310395 508243260 9599570 448245536 534047457 780901138 866162558 899217445 832261360 894162066 867130854 906975131 421980532 587115497 351687318 935482335 144508824 587048510 861158180 948227442 78872274 796326018 472902489 861872545 421880611 607574951 829673656 843169058 999116786 999265821 393566797 991319118 216555064 220990223 741167699 884531857 837474951 996733121 964193450 994024604 515322421 589534058 351403361 503467254 631634458 735549899 141703766 709717540 642736725 805512332 900947221 923329897 53990797 805890085 416566409 453328194 696509011 700588920 168537335 990710356 415858484 490555364 129743341 443898883 579378885 699983892 245523072 658130518 774061507 972757451 114726417 436668940 318545060 340854403 746479981 844149284 541187354 739755347 743996290 853493767 409020592 720060279 305319704 321203216 46815340 835353281 30266174 185306859 51568974 907272057 62556699 637740280 376518027 679682616 113931304 662851419 388322030 856072668 110683722 957766026 992319558 994444208 153064517 359713414 190634896 505892704 527631001 632571461 165340127 260213533 653427956 988065676 335426553 505590557 4298209 128361797 14327987 982791518 544657959 717974645 325998035 855296561 637509918 773902644 133394149 482301391 612485735 714722060 214225029 698839546 284320119 538638481 894525806 912011570 622412149 737580733 305244477 684396083 216607830 321459470 573813000 756592537 871125793 887112260 49400636 543515431 442852965 524812585 184558097 970769819 751497751 873110486 685003243 874011849 981401280 991898251 356470838 440297081 129481383 408791555 702801746 767272605 293253047 830668742 897761764 936665186 679599485 866359256 421105749 710281914 590172982 987390941 163836706 547552561 944128134 983169364 52108285 292122988 83893342 318918450 61707805 762344331 781616610 921440165 107721461 377425022 44327814 573917565 279337184 691594880 47231639 623298048 342983702 569806282 372229396 442603099 639334198 939045890 942808629 980030842 133690734 762129983 536205898 910017297 919396462 973408920 345887152 629058977 226886468 900357870 718100764 911974182 270838807 696659432 335223067 373430599 801634998 961507006 591939202 673416763 137910654 732247784 749497291 903186610 619698681 764106259 158785153 515880250 201040375 372678019 538342622 743788646 667256560 910034535 422324111 739918555 160484932 304081968 334241942 446664507 590138429 789544750 619579948 888989921 133297963 306167627 861409624 874758993 553415132 602896493 143864196 876718143 675262833 820368232 279066756 494492007 259971093 595376801 234404714 365980442 553736812 644999974 267827649 299149019 574219695 862399863 244616171 971676238 50451282 531522255 25755538 57724640 237687020 732274274 25621680 307911098 963310766 980491097 278870655 357514215 491959999 591014643 945967323 946486648 769385903 943695605 727885758 893597717 595363519 690181879 468396466 485647309 100006414 168896622 781255184 982047321 687037264 732988220 690456725 844148564 886147240 999257671 684869796 697006486 233691580 511484965 609389808 837219297 871582456 964562702 605833847 665858302 85931726 671100107 255397251 298500889 434857471 647020686 78759600 521764821 163747442 905909173 949313322 968988269 983177689 994125760 627629082 846156957 944717224 998127990 659330347 702173070 173518583 900025712 72341536 792607630 324186221 991305672 401933268 732487182 730964645 799411820 634485477 747369987 402649625 666229421 240733916 930531019 509012884 682668152 197864147 738923936 374968736 763679747 350341668 473250359 263798379 348266028 686398529 965464109 545294674 875377081 861515355 944898864 184267103 209827281 787239363 842927347 434710622 491769503 431822471 529246839 455363319 564001839 406238062 477627273 144373022 991287717 844555170 986309612 416572070 540118206 369568812 424810780 590348212 943511454 907796390 987147777 644935755 840111629 418253162 787375404 383894089 613164645 204684691 227699072 750728607 850081931 400693762 774119839 927205857 955462812 371631751 644958023 194284076 722097360 629191191 840575569 992312768 995513066 316052962 895363664 594622636 818387032 416596410 576314051 363473378 650438403 856420314 916031130 405890197 907497805 665822826 828598857 158100829 728580375 431981253 728377835 67010045 112027757 567880813 852407557 301263071 764799506 564808963 942606122 465132669 486487923 193029052 269571297 620815336 770694260 68867424 149631152 871428473 872602658 511706899 714479843 452996755 802202316 931595355 934781063 453774427 497184247 638789747 742162153 995960835 999071787 610098031 820526492 358024880 663822363 980280019 994071326 703968719 899241604 549262754 692270978 577774393 702326443 858088624 915348956 872794805 875277706 405794581 677677194 51084074 70992076 289325931 946929411 181060981 421435803 180928327 434348744 875938371 996104760 415893007 453623128 754636471 888846121 632771821 749849420 816539059 946128808 359392951 984906482 723362613 883749498 651592364 912145069 980772546 996732735 480608095 616111536 611757137 944916536 243804695 869730635 557008375 712089150 251604523 631532947 585790336 738362962 354432864 531386912 268185086 401921892 57148998 62907197 217199057 479705188 904195286 929496009 793477700 894746720 156221886 181937193 469965423 606169917 697627373 953095276 321756710 333136759 252390662 293872248 310009106 420018538 48762241 460476504 545598985 967203145 551499218 699146956 101382501 738892502 68974804 834869706 571833780 831882779 513325585 877047142 938526575 973468427 86228852 399384291 308500462 548298822 861232523 925272871 296865063 621064765 167267672 935010731 915563274 980525584 411629834 694366211 718944826 949905312 592661698 619472857 813938618 819790918 577637946 587346180 768398284 844241850 476933561 914400236 700695196 874996709 794603458 912582642 963340412 980525158 369001955 997250033 93700023 447492557 92537737 159403645 577506646 655873610 262919734 343124430 486460232 673352300 980820000 991055326 729750720 768590000 404124721 438809479 165785104 942835787 81873092 456623251 536561609 968924273 226502164 505397094 929620886 936187971 741514254 780229452 228642182 373019116 692892247 733273289 343711718 359981532 15326161 803998958 858318602 998981293 775910973 899904094 724553046 809626219 846918147 958688635 231252379 335481925 610544963 633560033 954801002 968763183 895599734 930790544 211571229 729762278 624856730 761028220 877256317 893656781 27496013 912901286 807830286 943518623 846229569 901898841 261430859 611564898 49826350 132123406 395189381 739272266 590891277 763726656 437827343 628448555 230128362 988124636 565323352 623133501 878778657 930299283 561239341 588338030 267993837 484953934 628147807 673994308 121228937 430259241 190981505 440796437 101030913 498027341 911901558 931055347 460137213 674951667 966987028 971469577 384756123 736852457 583681791 992847756 24995543 843696092 504774334 807501599 639378045 826778058 327076977 494439782 153312417 810600009 497532147 629297223 808383163 980899720 150100025 403904241 24832911 83201572 411103773 472822477 680641509 742803793 482133992 756958469 64649677 673938114 491665593 758792510 704309589 892675909 736690090 985453977 522563515 762816709 555289106 790327984 998325834 998603139 791270594 991215994 493090772 647435097 172972405 209426093 485370542 541901457 539347208 706917722 718709259 728525525 761316077 808964729 239519541 560010867 484220863 504247238 619435296 851762948 450166009 988249432 590688604 641047697 183618993 789035872 425532509 975826394 648020033 742172200 491048968 542680306 864655494 877055251 827064388 959051140 971581110 982152793 555327463 589939119 996660997 998472938 120529344 953679607 476226527 890118655 411260351 821383632 567180174 858481189 783686299 962506984 201723739 416529638 399731503 752462931 405587132 633370554 847425345 987547320 832014475 972608540 742626434 854713763 834024152 873049557 46255016 771948899 60186053 995971032 827266429 905996409 31567679 544811150 810701639 927331292 332703728 356777407 268643612 494044459 487878625 765928449 986647422 989503200 891445501 894916904 368756977 656421949 441224812 495335866 857463992 954240350 499408143 798901941 969552013 977976140 452378651 603396197 674955218 706357070 278496909 543404695 843888376 920773183 794677358 954868469 428082256 696657992 288670408 824773390 945145321 995818575 154098092 581083187 908817889 974197261 632391517 919219693 747684361 893979318 274300372 637107082 346584514 842197000 232633688 712115300 859794597 961476533 908010723 946884351 788520494 803912301 127514646 968065662 208316081 345394819 45664750 403533156 126755358 562672292 373434644 450653248 91950804 283122905 425472156 742979158 194116285 513630028 313607119 908619963 480615373 959971109 57779365 839698392 987996196 995491534 555453477 873661181 372769416 863890892 685869842 992586087 238112388 594834350 156641187 848417857 311780918 870989123 548644722 677142882 401837989 597195274 99434438 831863992 831037615 945306972 724568298 890972996 458668619 607068547 227045899 805288894 838845222 973142720 118627057 713325110 121056682 374593387 654371143 808155990 729830869 751443453 233861157 756042005 201273304 405215919 26800754 925404445 135171311 562894287 20477220 703074150 544544314 874315133 478725424 555241483 997086450 999309147 940110403 947151882 270330636 664368692 570565673 695793251 698525912 867826705 956073341 988185923 667939692 822765051 392865653 881519780 74659994 917043349 543631508 976559341 481412631 902945243 347946815 953722339 704093471 892236785 520506103 740992857 959589406 968947577 484660235 746867756 247518562 567656155 384548201 980859993 423143436 711546582 244676982 658027392 360693322 480436497 10960913 393304920 133425573 540720406 540429320 585267227 675607358 827579090 479294353 887630385 991994129 996572949 961679004 981309467 723307062 961273635 386361409 447848409 736969322 899404673 916141102 925269652 312531543 602619389 980537177 992347604 297308076 715769168 363144438 556616039 141534557 618125425 141984160 872049410 555493767 968625732 765866585 793298038 756847111 980508911 786331908 944472451 47214845 884417976 354812596 690670816 228481319 967394055 657493309 866242359 563161958 804781185 430164295 448137182 849281572 986144532 249346940 459524404 249924332 386234734 638339290 745482019 823169156 868144634 835532264 889160866 395632533 612203296 870510782 932812689 428550109 888646577 830751244 855605497 81855877 678175699 349143083 478586482 125054808 928994677 990214507 997019107 959226993 989073066 23439923 93133860 871675791 949047759 457747217 709958150 724896102 780519280 933753101 948523063 591984209 668243238 82172602 135617324 245386431 874973046 916844647 930620590 581104137 609473462 458290831 507854165 834079022 905081181 830688302 934552834 475944609 535904478 220074233 783054410 888238058 960153428 402250224 963075808 464294805 687095389 761303074 864567015 559201712 978781479 507862322 998803915 804774770 959913189 269690443 307398943 339995857 479736166 597856045 805552680 104078414 812098195 12005335 738507361 470348452 648323844 40216450 968382350 243096759 762471744 743392651 842921410 662024824 910088954 940522865 976835254 378634299 961239643 170108797 515292978 833769126 874378045 348830877 581733409 583735979 951395824 255973322 778984650 983912096 990375450 290047392 359218374 11849931 760623839 36783724 187390573 935155072 986856882 442520640 500292730 470553426 809343320 951519206 996740896 107193011 281060817 211022299 914683036 283917092 450198609 325262650 976609465 421184853 556302416 97490845 595163680 969290622 976342217 626222729 912637266 540872816 787677141 118101453 625986759 60760459 153261840 749112310 799058141 48211601 909110116 584084719 599537867 819739156 938074007 286625407 321305614 94325416 199844400 495968895 580619349 222046724 587132090 208067861 367334899 233652786 909022888 512991239 670751951 604353661 982749942 474870955 809219505 630469513 778398470 812686446 834079066 718775050 787515502 913312826 913804428 430837507 552381899 658569174 956108731 770420908 847563826 263483773 316332400 63221465 318459567 61340666 982110632 562818029 857807509 7060180 199678712 455838890 939088178 606009760 613983541 297287687 560318093 597825917 713630444 525665976 949939040 684219941 894241309 840968476 864963373 57692813 103703415 984596555 994656987 997516868 999271597 585543989 592018109 933932125 944155513 626520785 630613081 487398277 789693716 675137754 852918679 323395823 413959327 992993479 997150256 480707895 521185823 708521897 912598623 944793979 947647768 615845000 693243237 986409322 989875887 450282970 987589766 337645724 432298952 291779466 359387805 716788363 840275354 58119468 320761462 66421743 160804245 352042832 409501618 179985641 663384064 231522337 517018277 816811825 942577725 364211857 788606842 799713569 810014740 24995950 502555105 233708187 495914256 958284274 992333388 325722854 962371168 500017000 934796711 426367982 934210206 298775183 829105016 268823610 706771404 946379285 979357476 180765591 326929021 387515135 988784950 840223246 958794187 328451742 927785510 81673593 902179166 386966675 548384850 544831308 965437547 300192442 863529996 490569341 989815894 955417297 968642831 150528416 780767385 570757358 958196513 288796057 888563026 40391937 209877377 317910137 832547107 984430070 987035849 168296194 491892851 422597564 907026109 935175182 960485209 268123457 710535014 276354973 383358433 725804847 937913633 567045623 777293768 231063937 699033428 607080096 666488823 454634217 828842301 636765559 653433692 321837007 967416091 526556264 908130491 260661478 271599670 412300364 599616235 238992269 655522416 402202422 871587957 327950975 405917673 275615327 737271583 555427092 621999918 116830601 989133104 132157893 593948315 197942949 234457546 493103146 785782520 857810089 923387944 415951274 527693768 710120183 714351426 531433200 978070479 524544319 652450414 66552968 876464458 629731958 734714850 517286373 998021503 467669149 751552316 409684905 934080848 902943442 952144333 29511244 200682352 359003581 849507929 760302199 806955218 30758793 604189076 954562481 990510563 590827766 959275393 35197057 878606365 474356761 698448315 562708728 793896442 780305349 810224060 262956994 654976596 289514449 636178888 591737807 733647191 738088496 878350838 353604707 778917917 458226102 835565848 646251848 843153180 527890736 687751444 335928583 497633803 774997547 825981591 981678170 992405710 692050204 805053952 304630978 888291069 522679716 862764408 972156674 980936207 356311925 733562734 836790161 874749454 549736116 758557654 426177866 711915570 808809131 909709363 976241923 982960616 678512238 914896026 222435842 739038404 982044192 982996100 272159987 797876149 404808808 574553356 924641714 998551723 134888008 160389225 506301402 672146517 677357347 806880652 101468679 155661054 591972207 772056227 115810743 641106012 296317883 898029736 301889736 965415181 334803757 621777322 153222835 424813467 750594870 937523455 615859831 824787097 975468908 978748470 448016052 654504044 340122657 872235661 144439966 894354561 694397932 780748006 121872762 857358462 49727173 524107588 55304469 297783674 915134841 963806053 984746807 998609182 513048175 810456354 524289958 907279438 188813759 729711403 672275942 911676803 944175976 998071666 515642107 697579414 759738191 857099521 611684861 616195521 680868839 909192806 234908982 242604621 545509743 875501718 257567660 682292733 377161786 852547180 661243585 997603374 695790296 734950947 114937524 909449613 265311084 493010144 766773641 933167082 736113654 751790880 202068331 591678779 504713318 943588242 671771636 880328535 986431246 993329783 923925675 938483750 151129160 745935294 715951110 965241664 353066690 764803627 171964356 623801146 637670676 801706885 156538827 708030226 847085326 971283836 827440112 986774669 357361240 787779826 22588047 817968640 360270625 750319035 696238071 913042638 442844988 826254766 41217142 102255544 470904163 850318758 231822014 779714323 710528895 878584062 797630660 823038509 564323375 645694032 872720436 956941728 585712011 875030935 87687133 816406584 269230581 548038704 911470611 913424736 986087171 994019501 42134281 527557018 821152282 908293493 199253761 992497568 121892630 330239374 686077800 891280460 947206398 971067326 445007479 651985552 46149752 640786841 788141794 821610931 278642829 918013857 369929591 789908448 323597868 549186788 920622413 923439999 869780140 871240830 855765006 897825759 485567838 937955248 219048486 715185878 772670351 937344362 496877185 664804199 7474828 304718584 79553820 779997816 254803007 806179105 492784388 788786503 532308090 628498463 27023817 831442275 707224560 880723102 794455973 855929920 308657484 363600938 404815633 617120264 192286646 219355409 716177174 840380146 906116247 910050742 247276866 635499907 952812179 968058204 777471296 807386089 891105865 991967786 629259231 872475037 39100550 50118418 826392228 972016532 958856070 989367557 622028657 798936768 100405669 545043295 578097349 706683636 294772550 564943145 851982187 988901027 905369689 924593227 837835356 975355403 181176708 617625327 526132066 763596506 886556040 983557914 515455348 573908127 940089372 978903686 40462127 893861131 267572504 413590164 925037103 994993597 822092750 831335334 555587399 832349679 465713064 589227616 664799481 860872615 804810537 973164337 413099001 977184143 750226100 781098007 828703394 849360648 839270640 849205471 706792079 936355712 455609834 779224116 863324916 960042679 815479017 863393516 297446666 748551541 664229167 806821856 205851295 276362854 812446047 951541788 941729375 959685736 337856862 481250016 249580800 639717122 977015366 977350972 978651417 995800108 477265555 604332413 540484476 557789487 214153580 819233588 700386676 840589179 623458113 855996414 374073957 760699772 663174365 928803465 478408075 882745897 74944289 679568216 251291129 657813749 707814319 891494128 490698440 748737466 504189299 548686035 87126488 679669171 557432968 871027296 920314227 931829738 918551041 942454294 86768720 458083655 401515110 635681560 246708940 743549293 538284024 716829771 964028274 974302127 42430814 257684050 462941155 651316051 137643625 925823199 536872686 538852582 454210627 921304654 815741044 833198636 544188781 780734055 287278668 416743339 347321916 986982148 294959714 954312861 948368357 985783828 67761459 788850959 359369340 912423266 681828097 683884097 880796329 905906732 964154879 985983178 49401481 299634912 989240280 997414313 430116614 668665013 200785974 505301455 2553795 32209827 268103119 307589585 477185307 863028866 363133699 758213672 554346809 715760254 813611351 898639506 304063701 879178624 772576358 821629396 577570010 636321204 207312141 850483246 113136807 690714463 810480516 864160690 95748152 614463236 270902907 718676645 549808147 922650743 928483917 987961105 641839687 823993261 45258400 188460224 537675165 698094017 466991011 483334924 638119677 855008146 622957259 948631414 922708759 993567694 705349038 857549054 290071078 681301023 340833606 730907232 526783431 584336765 525469669 765982708 885082536 989035665 465691777 619795216 689280889 918977092 347399329 981292066 990299291 993711333 741896990 895784046 920495375 948622261 228053274 458173571 767573873 988800564 377836540 455724470 982226852 983542108 73788388 796831186 990373698 995555177 545179991 666997648 920529809 969421725 859145555 958533005 198384990 379989169 436956765 824076653 626551232 822041374 432577143 583597798 581714347 734320802 878162457 966928542 390409721 926059774 838744272 900572233 433247357 630601221 685678087 707225458 885687031 944089570 968291147 976744062 658583420 810187380 315982484 499908418 30179480 571841990 61792625 772370637 51348943 64725015 324682545 343816584 263264020 637602132 299437776 640438121 632196651 656066127 884839044 955014770 198807749 631820530 630115752 987333599 90939660 970942210 820959752 830861657 771756277 939756061 367265573 627989318 141964158 542552596 569206311 956505452 546479887 829315314 379198516 479475901 591897079 664626315 898181745 926040875 777917997 871414157 491939731 587724313 376685796 744870957 715460366 863708584 934030222 973574512 946481755 952285435 673046726 766289624 368246980 438802028 478754483 776359793 518505142 597830963 876075830 884322590 243879938 355082785 560340284 604907514 280970259 875346452 239425499 945342760 900426031 981773493 837471536 955112659 587919720 952361518 324489348 817978245 668140836 992575941 324906938 993017250 316663827 790184126 14581037 63865436 633277871 953282781 102351240 906744485 378813829 605055949 393622378 460560339 384869800 799154044 685344838 910163462 215249935 648549316 509665234 664418122 961496185 977377965 466893597 590097094 366126848 702604727 379934016 949959713 14329415 76959259 759646207 847773560 808746321 907117680 577769605 912684903 182663485 612236712 746824768 851702969 411996885 595236191 895853628 980435840 108021780 799430121 259875713 440067121 565339921 806948141 724125424 807206754 626886209 802692529 468895045 955882841 760769956 893208661 451190072 776871776 40922243 47550200 637265495 898949754 634412460 897545048 508675370 852814077 645903028 889486818 780331082 928355021 803790363 960148090 799528143 971990744 164933228 608022768 398858198 535126578 570577851 601466057 312140254 912542237 830288885 835708348 898828615 983200425 747801898 960127901 377059459 921160088 161545901 969084710 301360983 362630909 947292153 949063181 956787316 984678014 757702115 949031511 90943096 431320510 116204936 916528865 633397968 886528661 719250892 730007558 928834337 947107275 915910684 929889191 594432687 954931452 823826092 919923553 397826230 661886414 193296586 271466942 62040631 593332607 793466635 926731931 634695303 675032852 22558429 664463962 791281000 974426512 92429075 186468709 706606682 785391210 71989314 262090202 988219481 996106662 88007994 779528641 593310117 738149773 499671269 746936679 324011238 418912389 116449118 474963466 987591175 998616010 535343346 836411825 886886576 929181511 19308674 615101421 450555040 888619816 639150855 876010249 86563767 523068223 926203712 942020796 603890934 983530374 532355504 906875769 285812653 521435803 720057618 877829168 860465534 891153026 790376867 833578932 59921439 787671974 557346756 760630682 191488182 474107043 241649505 676660944 988437905 990165560 679753136 890079321 900575864 935242577 999168046 999195576 765693199 842408794 929582464 962089914 406723656 714620197 749269020 934486531 935053351 982721750 317265036 440809974 981942789 992112800 929584678 956525220 79593779 152315331 988053143 989408208 855983863 985020257 831978432 998392688 292917447 992646220 760417474 762123371 721103900 923075646 255573978 905139401 105228586 472731017 983501248 986994075 296972326 573880086 388011494 769720301 176632022 400738119 407675685 772673145 550293804 914597869 760670797 779956903 481228422 765743386 197174195 353220052 685476998 687121249 929535994 974623789 645981943 647853379 131517955 631468117 575326756 705442246 759558388 786088556 430685874 573830405 366159687 901157455 13962723 775108656 566552862 819571759 930783723 973713114 180852979 997629755 892847006 940409987 727483582 896956795 647714614 881484399 887665839 932902923 30934296 668927033 39534956 895423707 162828612 397409535 929600138 983959886 77109216 418007661 719237074 766565737 749665681 813115935 812593156 882223994 208522881 743940916 730061598 807296981 555337372 941067757 219638308 759536343 454174098 507544133 371330285 884817184 213724471 457355845 32469033 587773654 229039296 589579107 357719700 448828831 770181461 993456144 89597512 159281624 544719749 830529460 983799826 995211485 206207102 440834349 491134051 560984338 186214423 895167212 381319784 918151310 971579826 983067426 912267798 929211594 8801896 104987896 260885954 963047964 597875283 730762544 891053061 918046126 36826395 557264509 612430788 721842548 900932992 918072417 518800325 958637692 934588848 972267035 930011440 981310222 272112952 297672090 617856627 692849128 778705277 873353288 273277886 370209879 105600082 394706083 354882722 413617697 221774078 301511474 636706150 814344347 804504413 878028031 858706970 988497658 86649909 984276045 432977067 566293793 502156482 838261900 709851974 725744200 426251686 608319822 780244941 969059357 956328500 981831530 555952632 689665154 28198064 915001922 991627724 995802191 878501784 886891485 911072944 945038461 879087412 905065144 643603575 740592384 552870596 556617099 154867645 947393976 638645740 928049231 743267331 806389472 150783514 690957451 1667701 909129656 944179637 978164868 562079765 723066794 955113936 969963361 772278514 918320354 632163895 853868166 338395350 688278750 859787758 952606038 158052002 724129295 781619330 851168749 170927989 401426642 107483382 667243695 414437233 824863088 408818569 475259745 420844512 552299907 251685135 686854478 482737772 511381801 390304854 550607190 919827841 952984004 40432700 159109733 785169918 938824340 208621697 931691272 238034234 601877673 794593630 844703602 270864795 787079503 100911304 123883580 31992213 53688318 855285488 881454679 854027416 890764112 719209924 819791146 57936507 966850856 199132454 243582825 292768427 560192860 247264271 839369470 431936475 690074517 202740598 617445965 101497676 340875844 229933920 560723705 575107630 891206638 724948242 939987623 810311510 877668016 486348170 924052752 118117628 788373079 228877545 471176842 481647250 553022922 146550675 450905008 360423019 727434871 470020754 860038390 549529818 620879346 56326289 353520491 177945944 439838989 689724717 972355544 70267164 832471700 961385430 997184087 854297978 924760224 751163859 902346103 301599604 432156204 371735570 647446626 419047825 509942078 200304416 714357282 874282962 943210082 604259089 967983447 360969502 691549980 897261002 918419608 725684370 977658898 622525595 992371502 924027358 948946350 58611279 486463373 768638484 965486784 990965645 993076841 814997921 930781627 833023988 927896944 202777657 460605575 817757579 863755071 914154878 970688517 71789351 97020975 410119547 921450746 568975928 768481685 303282587 918168195 740416036 871440285 680504104 966701680 614382476 814398675 585247243 868609958 293790417 550234720 381868058 479112523 503622710 957472068 23240547 821234435 901444420 905260221 9172844 452547813 120957165 733093505 973789839 997368438 183786416 376826964 681236246 955927284 348364812 749813059 246558865 820201273 911582215 935146531 655601587 839077393 869764508 967108940 665359970 838793156 821682553 821808040 181935682 880981870 555046795 633268547 448677412 465681505 937894961 939693634 226171549 308140295 336940271 560203963 229986332 455101359 643614599 951847583 630469612 892525640 757964866 777366406 961391454 992013601 110098728 463464805 45979149 487623255 274632759 303828134 617143723 668646377 364525159 845473702 403466996 972234535 384287460 956249878 841429936 994546286 645986152 911466425 49015036 414091069 424316840 756864807 768602799 892062547 653842532 971434332 477647097 531936252 729377588 878550206 57702081 907723525 19010368 990834582 329091761 344017162 106617399 919415676 999193849 999299766 955476070 959599132 721637295 785599610 315069490 746010272 885220894 975699076 570802168 745654322 206058646 395191904 788166503 855754502 676344802 807956573 74143640 441426683 68662520 858924758 86102129 398763044 660470924 788305719 417314068 421189916 705050457 781036581 989125743 996945724 15010419 248063021 776866702 871083302 957559378 986018234 638026261 912316571 585621302 760705370 947062058 988569217 443770977 445765588 351985933 781957306 179568025 299897031 962954881 967755841 268296390 488965762 760808428 876412242 982402323 985544965 772379578 797294650 894588886 970112783 646045068 830355021 331764656 664200952 503859298 754030323 660969860 959402496 207911341 333965180 677593735 921954990 52132490 396102977 464939268 783639840 286289056 408374659 417865567 801153562 637432910 645356405 258220895 797855226 481172842 866401611 228832681 429434004 782400690 816180022 12459342 232663646 681148369 884361790 613136603 956165769 136199888 822781214 21292425 95328997 943735367 952212746 148186604 775969270 151203368 973966656 79291969 339786382 279544302 553531920 40814037 507522704 171926844 171973939 12932922 885530962 447031164 903898145 204175124 572625874 812963606 898384454 752837719 885118222 182137184 442765503 563630747 751324190 705660704 860519184 546191996 704828558 274985272 536089981 690069715 812766896 105067679 942806963 549963930 551355499 61103410 614423119 891326011 907664003 852846052 981670958 774535966 929787313 925138890 986323918 283845832 920400568 294621966 994218967 805266624 922313662 886586442 913627529 352663791 467993456 750624157 964816343 850279183 895141161 670563246 782197287 687269241 868839423 283358542 659807351 799050668 858518717 570958576 691935945 451417809 483455379 34190842 633376316 272931623 278463044 60422612 624321507 883261184 895413309 232178307 452516917 752027566 826390801 605750335 975044375 809185019 949735724 450239861 974746054 861249114 923540032 911100981 980780275 193223531 906460140 634917846 935284891 821078472 873093560 125593087 469285262 805820378 832459333 411572830 690695912 824271641 828386081 883589109 885719087 372328015 451640064 570865849 929742754 590524790 931332042 770513365 786597594 247069500 558135744 821050168 907734347 60362003 76296415 179481657 914321569 468473363 696455336 836372567 994030468 109207947 180594618 981301373 982867113 721134013 856048905 517840430 766576886 206959866 505147651 885083098 940227556 975859545 985817067 315080815 702871694 802390443 873349884 458583982 759033625 157478602 532441131 150643359 582378400 367931768 869712496 853494239 868961682 867963563 963298391 936518310 947520917 196184518 428099285 543759487 889847603 599011043 931407525 108145341 567561756 861090 684694797 5608242 818183528 730240231 749277485 166883968 641327511 757985677 862428940 669594326 808370557 103808553 436017661 151421382 747016286 131923050 364714676 408227646 994916338 272546855 722222033 35106290 309298119 34085324 691216773 104686601 467048539 102499758 799214162 750735378 951362699 925585637 971411133 277221868 428207277 453731309 989664208 162163582 454575281 747263044 982053137 420094979 706978496 988846797 999229138 86476083 283278513 924731496 989473027 402782005 405389540 944341109 945782480 942174443 977766133 411264455 491321711 543662004 980190078 633151460 891449851 88347838 594245702 987493174 997913803 16575363 127148886 134641335 299958245 910620744 956736293 289445304 486777384 588143994 990384145 154625030 233331575 363452056 903809383 74303373 151689499 141745327 254795840 667724817 771811542 916869720 917884076 897203648 908742672 378413930 393050015 23575469 305493820 834532999 919469952 722361972 780228001 196444358 901519012 486999944 651162855 690950730 714143585 625566016 838711728 981845974 991988672 214673015 284705877 630160914 634462196 266854264 360523828 749823482 890397171 878344786 881695567 892464322 984260314 345140506 537263319 773968856 954565485 330181270 836977469 268754857 702984432 319246880 541234625 756074228 774335727 887252149 937500984 110865186 217865102 286439906 956207737 755645186 771434255 235285853 433340312 941122236 954130945 965851326 977689963 13452903 718162837 253689885 403067479 879741230 920166888 108625955 516599557 677677138 987250576 845556769 873154728 580329147 646056213 312038036 727312418 196357153 542600736 779325865 994532831 520436605 675435508 704604888 802761750 420470960 515248366 163475282 947251144 332681162 396791081 991855597 996804605 632138504 723738202 983930388 990260822 4032818 794547406 291708220 706253942 855888895 994178759 215418514 459728269 947642502 960891407 561110824 601018594 364094533 413354263 147166369 580668242 660569405 826011779 448899129 815064484 156189577 524470453 122847759 783083319 896613296 945413583 278528187 485546059 105851248 775000609 36401740 304054404 788465799 893110487 385693204 638751110 551839010 836639852 277092657 359046348 387016015 809315176 944194515 998236481 515004186 927669121 4149237 832658236 965294191 990994892 106093450 510717835 495269223 594654584 746725354 806851302 349333836 560540851 483660665 714786976 157718837 378397380 3031848 257216275 818639744 956420897 363423823 926579526 983507639 990495723 266110301 730488716 939583136 947222871 573876619 866242406 896664774 976054861 980878512 985212062 520166585 990589412 693598027 726480085 376055686 753066747 437259046 664196631 75528343 290995031 735479239 924624024 366015613 543562479 224014372 660325261 147510849 921388160 633652782 996437390 343050896 588313047 648051826 840199625 769358560 797617333 476492518 606450708 17761312 372448142 235724806 457620488 9865226 870678000 591472162 712943989 368888500 810374532 661265108 951003936 699012807 834716554 89593655 168150929 684181889 747279584 830475553 922727350 328566653 491515536 757544625 964279386 332665603 864858412 414516713 860571599 552779489 731079091 502341547 845637359 594540321 979948875 641498447 745511560 215210388 305905210 944806547 976334812 301474955 338108278 83460617 963619740 57558528 240238777 951303975 958740162 370005913 431598723 576654724 930434797 199568513 573525888 209732615 891975052 389037240 928263240 898334749 922525319 582407839 911654641 965601300 971701040 298898936 441216887 983071707 989990392 470849676 578607283 171375634 798696081 228036484 302597078 346951669 861106572 641088598 730752898 198110555 405743052 492484833 927474035 245458658 732540659 960276035 993298498 627569430 893568510 956388532 988698810 705326766 845766086 644469185 729928653 642003239 952158962 608783009 889340537 283412706 672554333 313729560 468814451 498416423 635326825 656046799 910680567 276414097 714164279 331931107 850551936 538948161 753405091 916164514 941660132 256233926 706904788 343562194 445638386 846311469 956818463 973961100 988716548 132129429 885433009 452082435 935912727 476863142 832789597 477465800 853562559 253450407 546897941 419634274 914629156 69427920 189779752 821863362 847151998 633677416 638385549 695792305 952940300 131303466 309890876 247894606 358202013 501715469 676861345 700793426 878038991 518523884 966835523 449331916 946119384 935705869 949061817 663972177 916428667 441279365 640925643 763814697 961645763 533013795 799070103 860520883 907387882 242667830 334826097 509978289 765030285 62691905 836421522 113884231 555263607 550500991 856274881 544839365 682197775 499897741 541923196 430912343 668563290 869566470 914860116 693913433 873511188 368677942 520859626 377707289 416967611 433552254 465286220 242285583 585641965 730634773 992938968 467969625 744714489 877368555 987541989 227722312 522663484 920496212 985621161 66537522 622512659 101570501 519781397 538694339 617201216 769357453 950427878 661832294 812570292 629485538 843867394 811262579 853402194 902170182 993719229 228614143 657746509 235414532 618956084 81195897 343196350 938121375 995923194 419622205 806260359 806919169 813589642 826015142 869681061 520968144 893631911 38804325 925930797 104405261 692004171 272316974 651416249 207246403 223329112 128743797 719580572 258749232 406638947 840593922 933996353 190739713 388141760 369706247 566025513 829376113 875224877 557862408 649851892 177835662 475010785 894692959 961714897 298786682 345692142 444266174 532267587 497232448 567050527 70127981 215167861 71159472 94078773 793522451 861527084 40065556 148659979 652549591 828527439 609974608 822324271 66542626 787565973 598654459 734487679 793420783 868020036 367374494 841189717 446355076 619240582 376345262 493402988 780916783 877717185 121328189 350588032 498317864 866476398 275656086 638300085 196231444 485443283 874263144 962946854 518733543 809592717 521906529 870772216 297875849 953919094 745608702 946034026 656459222 980676197 931445750 942507310 476103596 980924039 712875538 936021192 117463738 688972213 437054830 960857651 967559628 969012165 341723370 809981447 537766252 998049450 677259671 752794572 258842707 417306076 791130099 979451853 471846923 542254487 75856434 848222672 51469179 636172596 442655075 855259964 411589265 878471613 263183818 755202321 420736746 861587560 734743340 871428733 632564366 638448347 903320317 987507764 548359676 882947974 975369386 977907485 603429977 870780184 875008190 909733335 666770255 698250221 533973444 896315264 963932493 966321910 616744588 918316536 165019858 672272920 480872681 732532134 474819692 569676478 480581012 901006620 313780455 908215999 43842290 687006658 339366017 646964060 235558994 599742943 728805412 908248495 890067439 909866194 357263598 942643221 885168575 964733470 600385323 843799661 881960435 963271581 662616188 922524888 445332718 719540599 303467776 751418250 475680965 593026964 830009895 914082289 378457040 619909515 741855155 769468189 685510736 877870667 390824539 812894797 70128191 748725968 870907074 874697148 853014201 887765749 568963550 816512203 241962298 418178310 662141256 829246310 541970312 630024262 359094313 461764579 870288423 936897393 999273334 999286025 526421125 849650733 909879965 996467222 9900629 592121225 78092458 718241040 893699853 930765936 182135944 805967314 234445842 804985924 486422077 905079886 105637746 131085491 637851350 836219757 11352320 371632624 501732611 755630072 220184595 798687990 892689632 980256451 379347111 943434942 697761936 764758114 418800851 741702219 233383050 693083185 987164675 996336176 874691839 922794286 379751173 812152573 172763235 836303325 577106308 661022423 966232615 984291074 882482743 947805742 446534575 835353254 28756239 604215533 930987368 992563457 134560214 496802624 282953300 408234142 678996570 702647766 254419870 390578547 853466093 910513047 23393671 559653997 604393160 973380856 581319507 935666268 420333653 614088542 870191137 961388617 679803416 745535060 846843507 898518904 471181716 515313118 516666303 844157417 233963798 658732926 648357795 950550492 28936334 663837942 282446343 409945721 207874787 566473305 981558945 982816391 517164799 948772977 365267295 712991650 790423714 831010550 777570237 992172347 171369877 636723911 155669083 186208191 302985820 508676835 316417260 723820714 331394372 752497264 557964989 820317040 35863900 853439729 759642395 783188754 122242186 371331619 245274052 724847718 8416076 201580583 662609041 990251380 475034315 528319235 954462910 956525802 264274153 344786312 348902902 901303178 720254380 805997210 397099976 636065483 361637923 634105133 411704015 652459709 492507691 738003178 700457996 842455091 893013654 922154419 74640253 279206127 182890814 578280835 18894188 966050120 991967932 992314585 178955177 773907178 86053095 244638931 558898353 849721676 35657434 280557495 380162470 621625976 589820619 782295188 949762586 987786115 226452695 325467662 863843922 939270171 506531508 678384893 347690584 495860428 662711993 991588974 109103882 403814372 496702988 993331732 775738263 780315629 12250324 195793233 177461603 327166130 887758949 979451486 126729774 904427346 668481602 802878530 977151007 977889786 315563111 630823582 308030296 312648617 576964412 834185509 788731201 849363794 822264484 870342475 364763438 779932217 242131804 622918687 768202359 846092426 559841912 680917019 589417082 921914662 908688331 983596045 979955746 982472989 562538299 925428831 96757574 219252598 99813073 697515836 650053285 723717708 172112362 850762469 638655986 726412097 452696817 817588017 514273150 685271339 975270392 986519922 871189551 992771474 725327718 757162993 427081184 802658826 569862249 855071028 363053722 799148015 255807114 938324165 686225035 797701803 555703950 617776415 615666533 871035523 687403803 874805781 530087723 909901054 157681732 807718895 235964902 640309245 337620113 398791308 989125979 989283216 694926764 955589426 981395953 986060442 438228253 658555711 39344788 770891581 553980199 695407837 789387184 954164969 700903187 898566741 406402283 987295255 803399115 827605405 933349044 964631232 351355218 812004706 11437507 671763538 263190226 628681468 659918809 700424905 840042730 981972743 138083682 405119071 335274364 867960888 658069312 840867898 562435734 984521396 118740860 185937569 959500904 980022356 841861295 915775178 387191849 531067469 520187732 677285545 662456187 879629990 711230297 978076130 622501231 961290018 135387116 840517573 825407724 954825156 710340865 714410939 32681159 281158231 739298985 947965337 804741799 965620931 910372983 910801281 282941782 467946051 506737192 545516588 604882394 913964020 122167071 945545217 829987970 874708813 309562590 869206096 786954181 815643962 675290455 943403266 232652529 234130511 337425693 620635477 686578216 898236111 603388323 761714477 802307671 993660348 509129612 649919807 37208172 192307737 416516538 497166157 553407219 563844660 650675917 966900878 577933047 982154249 752865143 885096906 48944458 176947931 956765068 973609520 925147796 928655581 892810960 894290792 670706598 829714931 173446568 932564369 432790511 539246966 662497894 694912000 772000785 988717539 554600282 568402702 994035623 994864035 966858744 966975761 822412516 937850024 140321424 847237003 384233126 913911342 107704535 553876972 509895023 895533107 342255574 352930156 788035222 823756130 908126522 977787214 327985523 853073140 977683935 997514873 685310601 955204892 749700529 850780741 19743512 297571318 513855798 880537455 360820027 643517758 881787831 966899903 912608974 972636856 737844501 889820181 81988024 115690202 898360616 994876681 419709443 648997341 436158979 717201886 929735122 980100343 773267564 983037749 50969252 697669285 951070655 987206761 955424236 981364570 99408266 218923363 86896814 915481099 690648349 992932528 36124724 565250821 263745089 355999624 484848820 612765789 657513329 975624678 907778310 982473893 871120743 959003743 625111860 911158560 391143064 841183666 191721974 949570330 736874351 740138716 508859639 766134690 149881596 659604602 641217721 653797827 219341017 593085788 15180338 492242676 534801124 648628348 964260153 979333123 487277831 591395196 605611121 751041137 463789970 547543857 373276537 444422379 411949902 834466749 985732366 995849206 855702547 984869904 683983986 764951353 237850873 567204458 162780993 800285627 591100543 636063195 604663471 888368153 282545858 497158341 282266238 449157897 570864664 791779204 509456296 951413873 856415180 931412284 58481196 774938070 638141444 757587545 282337917 490169112 871543705 973333260 473046368 752789114 967394037 979769890 153395994 727969698 521054686 988045720 537885531 607176769 852872795 895850759 731753841 903755832 690435422 932561098 795136948 834973624 945440456 971210084 912070368 940388379 717595137 810196957 117919061 131513930 771447277 802425685 305811946 553500315 361420477 434584943 594161130 941054314 951513300 998767666 143704239 600466852 748633464 945932091 664127221 900501960 516364510 883631157 136977004 748809550 359609299 470139277 449413989 621532369 720214508 763639221 385865603 898232470 286356747 898994759 781580560 925638305 325880968 732981985 326930253 346245954 115252548 624400794 821009706 973700661 107929351 545692753 331978024 520532888 280112075 991869569 149864024 258858424 801869018 980549362 369370151 946454582 334305105 842248723 141306368 964075782 118486798 305074532 312021263 545694276 46278911 388679763 738595452 875669627 795843989 901521123 232742396 755542307 372690830 748418846 649467782 974324403 906476938 971171338 900129922 907394703 325187368 376626821 722498733 745878288 536762946 583961429 948006161 988951674 147669287 546281208 665193991 840280308 115368453 608340969 822237788 885824655 23340545 247517073 25027199 405683027 80327116 298977967 807283317 848657852 878272304 934165057 233841568 555467325 86345318 940137260 570988166 803880876 597814801 630362313 532503065 883485376 193571298 764932829 706336413 763641194 427295163 906232373 424923936 838219418 134042888 512041411 643358519 969930428 697922179 927816448 232351853 234343306 205287313 880888978 636856992 852138415 936254666 992083367 126708228 969970348 748148001 795924994 990404328 990600625 981359095 990923073 717040502 869944606 762234878 836808501 582176516 994266275 190417267 507602173 811063560 897231570 923158252 961694326 769532124 891751209 306197020 420125541 744828695 785146603 813673448 883237782 323922453 900396118 192321401 918221217 22490886 69033554 374848726 978945108 819958308 824251094 79217780 596029594 891825348 908674052 716027227 851390034 628524421 678118211 689790181 979623790 608586730 959518607 462180758 538689763 502297923 720520277 290375147 469545552 13587836 161434738 19285244 80816638 662235277 710675717 296397006 404314501 332712412 475629140 940959991 965770723 320507432 736201886 535117427 988404724 772987867 879595903 677083551 791083853 851052378 929368908 985964045 986722577 952576151 991528281 770306801 964422936 34597671 274069287 687415513 705006267 122209306 834464058 301818757 560517813 671364721 834739937 65866874 300032871 331712496 629028032 839786734 974436193 764511876 989793280 443219535 495322920 573670903 907593857 721365712 736673951 846059237 992836801 175781922 970391480 969494704 995541692 97590703 269767950 321933661 677619582 727023904 824109054 837695570 988484774 48534588 690798947 967562755 978930538 796455181 866923490 981601196 994105734 161025936 447186535 340458305 486695051 880418418 898692424 300151153 827944134 109642463 729002519 262367322 668773529 784013829 831522715 155695087 707232331 885687575 964287652 717402958 863707850 319741904 650119268 83665126 138886480 904885469 993858821 555654766 998666914 228791943 530936534 759905315 808377617 932082337 990102786 395063195 962012435 547452002 951535454 80663473 764289167 276565200 685325224 523787703 968540871 358901736 638894927 238767064 977134910 503783307 815265916 619409176 907610310 399682925 826127467 85657207 620105778 145488594 554993093 298559459 995100075 822944877 912217118 661573824 980817012 727207883 918383757 257826578 866634950 509465767 976105957 291857573 947586783 571926137 949157860 992079322 998314739 414036577 599236713 722819114 814329986 283005899 589053146 340452520 881992559 574525154 605694845 111124305 588357863 820080361 927813632 107082987 688093583 924716595 939732560 116141019 205141715 351486905 675554832 3092453 227415098 349008915 638069702 356071239 767885723 166161017 177554375 829732336 976288009 579668189 993132849 256119330 412622142 652939082 674690346 710289733 811344832 176399673 227858113 407584038 956882357 976577994 996431770 760659951 990623123 673025789 757316417 160697832 439041695 153784039 182838538 775938129 886118600 66009822 684471607 714250285 785211682 47389831 283756018 45106373 506758893 571642535 889546661 256905599 884409046 729411464 834855193 101507637 771468914 233454972 298191508 455122592 915289138 195182 945484370 137556248 911864279 883321717 891679188 996342546 997180626 655029134 871169831 563326226 896135810 151720750 598039609 942626321 979661695 157709524 964531852 447114109 541659995 871905786 886104763 843005048 963690292 611502695 753018355 511554440 814097475 7391560 971612543 999381319 999382217 210222513 417519615 626926127 669579762 518737048 597662458 571435477 732919154 911763560 973057878 812054212 822136789 695334759 705097242 335757999 639030214 289046913 693370282 842350 697436328 944122855 971748619 723297282 747107667 846169670 943108164 976250543 987858081 971587115 971963125 66083046 599760117 892998460 999256566 503683767 534127315 517673358 813063961 668863504 985485394 81837900 173646898 215097069 774373657 923840141 927191131 505442564 661088694 263167690 918888382 26980878 51037864 513811924 570356439 554285038 716402456 246908993 923338138 653211717 773118800 953043892 985022044 255946522 975455951 414936092 763838087 819499626 961162724 51202977 860355336 372481638 483899645 716069193 973505280 295000251 876693422 238743367 821453799 26535379 563403591 961127380 991593108 671658741 909774243 267305159 394146285 828215916 930540214 930792791 944742799 541598373 881470935 708351718 790387349 35534973 428557872 869300829 944966836 279501210 552828889 78161425 337296981 481172424 487587963 455340665 796194970 944884699 954364972 883976120 985085924 704297846 821215625 858881609 954345668 313216354 830358265 604525922 625528571 686004672 771598158 955000567 956344003 261222769 800698406 857057029 891650709 313282401 400228426 57559181 531028594 262960522 736184199 208132359 270403209 885086353 953592380 141395200 952939594 510316560 784707698 491147558 615397510 759432445 964227388 426521048 856876137 315907417 320941356 962571097 980110977 556138472 590801721 536383619 557527238 110644617 304370211 797625408 850537914 553589651 736592796 425586823 732819583 531785508 655867122 955931032 967595421 742777704 939493367 747050254 878747221 502493404 787326202 855473440 899169369 515410751 835972255 278691784 840066440 288392913 719423141 724093311 974843205 151572609 838693955 978617184 986595430 777210632 905351222 142556506 532483717 321122504 719058586 869230760 959836467 616153231 857508622 19234391 607660249 541226379 639244093 329537839 646277519 764977031 962504642 895035569 928346225 454789686 784200182 294634458 563250115 673593245 962158802 733833087 807368252 829777577 959364995 311445737 935938770 891516493 943657490 211613072 771331819 726964225 927526280 11316315 136948891 224210621 791525920 743703024 870161199 688542213 974799982 816529560 906326022 616669828 649049100 304732132 389879801 553950998 809338017 606891130 878145530 182565192 429557947 694455903 755516126 107775782 608241084 429288838 439872896 900393613 989461032 198847157 249859749 243281490 744486289 816407619 845450866 185497917 731985102 344869659 650241897 945860418 983222166 659255901 833640781 863537535 934623985 121110923 471637035 887482682 921689765 288324537 829573758 648935676 832202269 947450466 995804366 988282647 990774831 804944220 887842012 594916718 635235281 282789253 403287057 213298919 429406431 205282572 885376313 573100736 720496672 954772561 998930076 704358837 745227835 951161928 981460993 877027632 924329013 759796442 996444002 84666468 114680169 919295279 991702531 559072752 633511265 776688990 962921990 218558513 439231997 857630514 981215660 571411381 828215976 722105041 814560696 667104120 893576479 505814157 617235028 735718900 839564156 258872001 331430511 90653210 388206166 775161392 989920273 285300539 908681241 291147103 390256158 46951195 701480690 227428941 863470982 971278339 995796891 538473002 652830074 562684693 736907995 866784788 919362883 332081974 365677447 416478313 908648050 54545168 581700080 126738141 127794245 18349265 314388242 731817849 794391536 457456499 995091720 140634270 423977687 938832952 946815126 421355137 621244553 797909891 913020348 632199092 665361144 83514321 234763293 560606340 905620373 134578343 954876917 550974502 753089220 399781720 652334987 854356366 920868785 79737243 330318480 824367559 846892318 182168268 465990594 85118975 236340615 268545690 832870592 968126619 978787687 826424536 975465708 305718080 646885438 440448339 889035472 523645312 854407353 470523416 725202245 157479775 763903458 715699303 772454666 998948083 999061931 459709864 718634627 205855872 234939473 148492245 388648166 109233797 340582452 766552999 869720059 197081191 711836952 363614187 970587675 290830450 611992666 702580637 769588470 761609846 924728673 16438103 630851163 264517029 898724499 243636739 332567604 484194032 539001945 934227458 978737294 217814035 517578820 472223825 975573313 812639291 887524123 348468212 899091476 941986944 964073726 503195163 996932635 351990336 505662854 28888014 151685813 681262609 740087923 896072839 991418738 801698753 932207148 369178005 484206725 607107866 910295271 926461394 933246166 554846364 632288506 33770349 752836698 433809674 838429363 607625877 709751635 176148638 644769910 84911911 172422612 136278248 217738965 563889594 670987773 444685470 541508972 402610693 442748228 35396402 751834003 726685451 990172380 252118989 839963948 716834669 763191291 64124081 451358527 40861415 527680161 205789947 533547498 531924867 531982703 698754833 730039760 611324346 981924212 617856600 698813506 779966853 889000853 841160998 955664160 909467930 994756470 945977753 980970446 661149488 964994531 705658709 989940171 179269151 213872234 449823472 610357564 655417777 769729084 274489338 764883307 512033215 836464806 219484428 700295176 816971022 839776987 195445919 206837920 849919926 874284801 435210342 495488088 431955529 942387210 873561577 898558561 643438376 653713236 920362863 984631232 946951731 990003894 122417388 479768513 891467210 971612551 809673104 908568370 684740930 754026220 143517637 847012693 978899276 998452218 469694581 949989294 940426606 967538175 358803787 979562654 522925850 864969818 550221899 657234266 517313973 560996384 787388683 855857859 858486796 920320326 461078251 690919107 984218143 987819217 422744889 866193458 697474689 811775326 433660662 768990730 822125678 851684336 781585219 892440101 579720498 883232234 282427060 627633540 484108559 660357593 995914789 996459032 573120934 725958178 428738255 912919083 612861411 963770075 669456788 978314301 233060991 337596938 340061561 514785483 890106894 891158166 886996645 970837810 786072308 951226873 560676969 997236025 541873469 813394907 89411359 498781283 997411559 997885084 871889013 985824380 717525333 805667238 222115504 737309228 802909170 906803971 851195318 871714117 20074770 799013819 685870115 906205699 77721911 618116614 34646160 493200934 600761343 630540931 745012571 882993291 653212807 803843411 29181496 396864037 73192398 375488684 222917160 877976802 130528404 961321214 181741441 334601915 305258697 863273922 779714545 864901822 127359909 226730630 927831658 983714595 935936749 960164427 763157252 868133336 312501902 593694017 742323800 902047043 424592849 548565818 472778243 808019178 283651679 807349617 497845281 950161508 577587648 598242762 97222178 256538978 110875415 478745432 57108690 733279713 224057044 304858447 902575057 978143126 299545784 708921579 998505266 999142938 968099396 997288942 685692178 773577587 113987475 937394332 190259757 335253339 351986071 987602623 27376501 281868153 38579333 660588259 262539680 985628395 972104568 989532206 442980792 803725303 53627849 856369283 771319460 946513482 569697474 847076825 515471900 727076755 139630077 569849533 869187805 989807943 858565279 878122476 890054305 891108895 218001331 528294086 120105673 940280587 951400567 980108332 785216124 932192267 571616421 600971456 850579051 938940291 312195795 767579465 324677312 952924707 618586578 687721698 329822659 769791036 198188033 499041139 413777977 521461980 73493215 839187769 252761483 765308865 422489469 713372903 92474561 543612690 51574103 398768833 450509108 525046355 777482907 863520852 861849840 980154969 488318107 789710027 289404683 330241484 344830473 503559836 713837626 942814227 489654781 785487387 868198032 907005220 303984454 745943485 7935516 456013382 640771749 743417971 624524996 642061863 998069468 998972900 572654087 697703172 520071575 754619545 213881206 233230580 181399748 601891419 807569173 936771332 198083390 304305267 412906431 857784380 533127886 992118728 404762028 428479042 164104531 475675833 879877884 895598305 877912165 998958403 92199045 308524128 575867682 658295200 898158918 947681137 802334157 927239543 56533413 668969918 686387109 986159674 95593283 534091944 29962832 782252209 400516201 873456785 138280545 950171718 942102668 944152893 680443911 686315068 952020448 981812269 957693126 993879216 308757325 954618558 210339985 301902486 105620663 531204392 844508164 946137118 908053499 979824174 253090846 382643456 119130992 988832781 772955572 939074781 543777751 813951962 97347657 209414593 587128617 863624063 850674630 884974874 981244234 989433378 161909857 679116081 299934657 610679041 256774443 364418714 169183571 287162065 403680716 450385631 778322817 940759128 592302109 914380145 476014108 946236383 621574871 706292383 778431258 809144877 406152670 927739190 819024065 917538758 808870240 894284480 331468170 841586980 80361225 837695920 419911869 476400885 71956610 663787194 54233118 411428023 913749183 987088037 924748907 976861789 311757741 378495696 732134921 806575233 42338197 616512046 814611798 964386495 759295256 867859812 743937696 792543259 896816915 944669581 549187171 620034336 606103567 847268623 935884520 949748685 653201628 987030152 192730125 932609030 725970159 985575407 288051237 988583003 286370988 670007556 459127526 661978441 310600336 940163759 277177412 635017707 362173663 661271855 789368727 853091155 364627949 812361559 556582704 790521177 431193779 806448260 96094204 229742478 285253720 705932977 381309303 777709934 437986910 490751920 366484372 685729470 652313196 795207147 636898064 876337473 588022810 819434543 844011449 882847114 375134219 860096821 874281341 908808742 465262410 675258097 123745932 232498618 343555502 607203821 953794472 965810219 77819166 587289019 110017017 421035279 774635251 921411589 703509501 906571211 627383043 732978454 85768113 940265257 421669230 814227962 754752025 789754257 321736237 893098990 154426194 748219657 32125042 492043995 151662596 449362643 815315950 938811967 546405251 859548741 443431063 521115956 358488746 909905482 338851932 536527451 625209210 825587154 720118208 995814699 211653713 940493467 406457206 476029110 192965669 687285211 908924421 910847172 217775525 242672604 620942696 891713910 969894102 996250990 793862162 915059080 312729764 711699694 514637089 710291005 828495449 863990841 443120262 624919628 368533569 991080698 29786380 55970970 712845086 716358608 679357970 750350922 469720213 984775255 473266272 939148772 514481252 852341897 159812110 490530214 528607851 795154247 792457841 822029848 722650259 954229962 971274573 978084800 947968838 962706718 376792777 759935263 138342571 708668102 441371365 662100825 612974671 676339215 830787279 932921077 606524418 865726649 251584190 651035766 52447907 918881638 810494996 925134079 624963606 632650992 272536877 678149037 465886403 759132651 933533527 937955513 2183325 676108904 477713029 561752361 113499849 833851077 932357146 976269285 301422864 508787487 40357785 452996967 214480607 239981020 287926101 914643828 803395551 948853096 67082934 968228474 502238121 642823689 97141600 275331746 795133108 839353718 393323269 711893745 249194429 426546663 773688836 834301248 753975105 814518410 227476770 497137495 337658192 539780624 543746744 700298798 204856752 770781662 723750207 951599604 680659886 710306896 199695006 290106074 36340872 356934178 122086863 687407810 686049330 790183655 732628426 937242264 699526637 825745237 724822499 817785830 146256012 574442070 902815577 904073471 140930677 692161504 983257912 994409969 383991426 908429045 671831017 905249178 125662732 535837948 900775193 980400873 21713825 225210530 522757373 580547051 213893068 309998395 783153470 787871631 406654832 562355435 906856614 940245696 988947729 999247381 363604509 374568285 462124991 886284422 407965796 945558505 669822470 815583387 870078767 937865655 187538475 543356661 23994324 166138082 201401398 607419225 307368996 673631343 605388425 837847087 230705651 786877901 352507224 699353497 69427271 377146518 387091983 841925628 184120346 996190475 460922888 720536228 899896104 975865603 288081513 668310226 591775589 644747458 517874679 574743165 193724646 661405844 826402863 904529003 366702851 762709860 500129344 802035870 448344069 848013310 213558228 748069812 720193834 885118887 477867034 534359173 795388259 943090627 449887380 954630984 578046249 720904334 569614565 973456177 265564903 623630454 650476304 974574829 966708662 985097118 161764338 920983044 422099590 656751975 78577254 433881090 948933260 974459789 87554933 738082066 926137068 972568228 49634850 294457780 696337459 959136255 448673047 877295256 61288329 850206219 546164071 617231550 338436061 805541320 261708010 969589578 550013679 997834760 214916354 388445537 132128154 225070295 377016970 933629309 829761373 952237325 885912146 944513477 46570640 395762441 116605472 479120067 653049232 933674182 517279305 701508191 514532672 847458598 195465391 324778461 45255294 721933787 440047395 798644080 181960657 561965518 864229696 981722800 351443614 530275676 864591237 916990709 277689205 763760102 52552079 198806296 153472851 669240314 20167662 188818849 831432170 985902495 633927336 925508322 280557670 936491883 745260401 926464814 566441779 658997475 544176279 771954019 464896547 643799448 559128879 698529893 747115189 753469448 424714451 598990806 683583670 773039895 254230334 496888278 543980170 773477616 538333407 663481567 55051236 362426261 104085821 380912571 192724328 572630100 587122889 885873443 563871630 591951404 48092604 590520717 796555042 993068239 797694171 904597084 788733707 808324384 388351037 886354238 747522949 978309189 141295608 245856540 35300599 71537895 988173062 998147203 313971736 751437035 470842424 782499212 966959253 967768342 697948646 806926551 440974404 659354892 66767916 499172659 750856979 994403139 131684551 455835154 610551104 795707619 312368001 386266812 830863505 978733207 451614142 644115564 975738282 988601643 970366935 984916094 236449706 832771167 962612121 969283128 528528630 968588287 55975005 275413307 267302759 753873938 136638542 269916431 609136872 742706792 844872647 885843437 329568323 944254321 797678938 820363895 818476860 869638067 743388005 984007978 974508396 993672014 277247567 351793047 425931218 822389883 209111908 436312451 786869141 930396963 389439000 607898739 877927492 948264410 177254497 225023114 540304009 790950216 486073040 971119368 148714980 713328977 133177665 678771196 581582631 755988441 622541109 789426647 220755566 736580203 214346623 750638261 314838658 347855517 949137379 958551212 216347243 570852279 945229421 962748367 18456561 718677307 770963417 881734569 361807333 518333550 291293785 461898010 796484218 801003728 157072091 592130453 470986987 742131618 336538743 678067568 706533805 800385593 347916217 922460080 242767637 833800123 755674633 782229752 406307802 614085721 242308084 338810968 796109476 901874410 112485531 870783134 525635453 707369428 68250316 699173268 865851180 894429776 281815585 311776534 469839839 661082860 474778456 717800203 167150311 518458584 40342719 884455388 895035233 967926465 344305331 359942444 669647601 829927271 603664597 715180084 780436919 821087707 133212398 819652933 526586478 927100943 933177413 961691715 723045666 840309516 780373012 829481422 100767877 141526128 176830342 605407180 927349938 986251596 251276596 577876156 379092505 441884755 373415139 634182254 419600094 725269886 636200276 714605904 270521110 664589918 422355494 607081831 287573050 804121927 15094290 723854842 270141016 360339943 973365985 978138439 460641456 554388159 699522530 789664114 529427656 781626383 753507791 993084354 240982899 982577582 764210437 782416317 232887962 456771540 14530559 560433874 208099954 282863489 267301647 300622230 648248072 815898320 63959663 550630450 986847666 986916344 258517560 832566505 56899607 893030414 565572606 947478524 282716114 425126900 116341505 994442195 828945170 860243169 541034232 757511690 854587696 950505122 459975875 600482832 523959448 530205176 209023486 307123731 979928178 995974812 153129157 473062428 157163048 179864630 784405674 864055075 86358139 591398536 956510820 971989482 209358671 896574749 414835682 809437897 743800560 895230788 323664160 486451951 329150710 775249462 468001455 679942325 239750132 458189411 128470577 690875334 429571691 998844783 897565438 955469933 548278296 736924178 450537712 693747975 874305498 930913321 892208080 952927464 169577383 825355529 980110777 991955735 989194625 993224927 859322247 933140730 590086182 708010066 993001145 997006343 490229801 825420405 345706269 764297487 149848401 663594369 671236356 924193390 407782196 726468821 492048222 732168605 91437016 265890181 493017398 643591355 176353520 581289848 309997150 933418450 946391277 999185459 22779202 927647209 230337922 231696494 105372142 566702139 699582261 987237828 79659168 176050435 624429866 915304541 703764685 960984331 303914338 621207379 451091249 964018322 325117640 435770490 456475980 643138625 920065953 954967628 573205389 719727874 266311707 539911285 714837901 723079337 312392092 377020189 942492951 964326693 832674884 875963812 321854060 330089163 276954080 950584146 212194797 682953981 653395205 658558295 964609433 972823151 249425871 781739181 831298833 985164035 378515138 856328627 416713806 640827542 424927121 915419279 668528147 759093145 841745858 995152640 526007917 798094875 586818134 804403454 349563261 803612582 33998772 918827839 334614045 819422749 584440447 650889695 778522912 841974031 306905503 321378029 961248957 986897935 607266224 939269943 177508091 816873999 824153461 849411150 955211358 987124849 33579051 897803241 983694750 996850644 857002840 857149474 647154658 818582997 931214089 955891090 81691094 465217122 465496709 704686172 289816019 305600870 283650816 879203119 508635327 545789956 836039960 857125471 936063219 942366686 126235121 342235171 917783327 929839428 55693036 712443831 419146334 848711380 922402466 985776527 812278348 860388934 754205594 917829172 643655308 884987815 643628711 648994162 759487413 822097745 495413241 883280217 928153023 967093974 47520276 223591618 942901226 947883663 37094907 143310462 152430312 930967738 365969742 645084811 636075961 762538616 425618774 651855517 460081506 964959108 977057733 996601744 32600401 306336303 771782970 843745592 341699006 416751924 945902237 954080642 204462665 296498548 368797867 509799916 120281041 529176269 23647479 105918930 283239481 344610412 472226135 532179415 887915304 898842950 647278965 798495880 957662048 959171967 12290068 363558364 233893915 413695341 608731755 645270674 131713572 733574343 749800072 779702023 538239840 704947456 289392359 502278368 599308167 756601492 478313264 947810822 602323399 933542332 140975560 348244245 233335370 986982761 761408478 795285973 733176346 787504315 707134736 840110609 879210490 923473520 559538653 716964959 744554902 763486348 322360599 782239685 642173469 809163865 888205893 932164727 188051525 523742200 854024540 995117917 742303602 976834505 896426112 916044916 117107310 995805525 106721545 129208961 718050398 902128593 117065627 735286275 791985101 810172555 563311561 881737065 388880655 805580798 2335122 694780173 208606012 854679963 428181510 959538835 554442338 931372883 892279857 913698037 663361167 913095396 447720999 597063392 890822300 906160755 176826446 277476443 323362426 950136788 179802305 572152516 587399428 921361956 53582215 549080557 991085175 997860391 964184441 968785453 741709357 884335787 533303742 802930765 233247877 408098445 67589674 955638176 922848386 986929126 885298878 910226841 662695032 891342747 33966079 968839050 339454916 815213777 561731899 970379912 240381654 561292350 803284595 881371116 735252599 845946798 695656492 919330991 233762366 610852839 260877988 804931599 886561968 900034469 528853332 736716463 124921195 334394212 416866914 808173290 590780194 786979303 687193720 777242280 160826319 761955279 685136352 739906580 165499466 573632692 925097225 984863453 572303688 610566959 81623246 598866531 835431948 969334740 601607100 808919005 788127380 908520011 412762551 622511162 304450537 712915858 300579113 442141090 491514546 923106511 854250720 886368409 634821743 753990130 37835437 166294848 672194365 927703352 158279225 951834924 271159434 684888463 778182159 952479344 597987249 622373060 81575633 868108911 803781278 950938655 662512426 809023825 152471984 270808511 510387624 795394453 632206306 867486438 213192800 283499590 552894093 803655103 889869694 968529479 12346494 29316526 568055464 621265259 904547338 919060759 430312502 708325404 687023036 959772847 213873963 598066759 354257666 395949844 899124529 944281001 155937253 449242783 225577863 957844334 762342986 767458517 412340254 419840327 306126935 892657190 792088886 942314661 509372712 856049922 96618098 265370380 368064285 503725287 622659271 878743364 961061230 962783457 700416167 900067982 822360595 933304761 172751958 505685804 757220257 765552191 155628989 615791194 207853104 617742441 170969802 870860117 456200713 641321899 821518739 865678794 411155124 683716447 836935996 929742613 196728998 702425134 406877818 508572746 518535497 602557359 579186349 651299127 188114998 938552282 884006190 939820935 31340351 592110016 494802982 741133610 534111648 819077536 174864165 658654985 787573271 969717677 964035489 983041946 345640773 440361332 376986910 775817608 138758826 700896954 434118794 489220175 109727610 273699629 690266596 811915667 137068838 887704934 109199604 343700098 631764471 747016839 384219566 467854127 895611926 933042303 88853953 182328754 597535411 886579037 303396090 534254025 933786433 976741004 694434029 918918633 791574151 909351054 184569886 704787653 906421018 952033187 818193942 888204050 438678340 638520900 319435414 546201892 659046131 957457659 337236075 871679682 9344980 761287044 699169862 968671942 538044250 951684606 812842269 871251010 675728690 699513742 851834742 925438235 533306877 695451299 756338725 802346775 243896285 375919709 274411978 373780344 939199935 977211867 531939021 682952008 838296779 985786640 363645315 801663213 899715980 902562004 417644698 632424090 573455134 741527159 415803875 857068692 956070860 987309745 595669047 746729123 54617451 875680109 849948933 890724079 847807256 962351195 879283245 938795679 612519899 643649096 570431201 669434017 28336796 710529392 536979766 806474596 200259585 217271974 448691595 586632221 425725365 918706728 587858398 655415668 534695020 637217172 757090572 785197702 49174028 264253447 293033712 308098814 273824556 596417474 67811449 483739211 580974664 708117972 722068780 866731110 952924460 996124236 649544607 962074918 433822176 558069269 238928014 837241934 271227653 438190625 740724055 966978162 507323322 946492444 417199111 776637529 556127202 817504132 758717084 819535436 986063725 987100563 554196330 785918156 464882547 707076973 520067007 641034563 235982354 427516312 594157651 616397305 398595378 709003501 250433165 932599902 233338230 986866394 472259513 602105546 455636295 628112652 522222533 727720521 156628299 923498965 323523156 484189290 398074969 694470429 34810075 837037804 506364162 607411823 649397019 891136432 955252283 971620896 959431962 978010287 554208959 821519098 538782162 813034000 799763674 852728865 90083620 418570903 923315312 986513934 385756990 617648199 155676558 550806556 755892219 767581462 52148490 780053362 666867323 861006634 21720420 899677718 475942896 891673127 250518130 664760014 313789605 322231565 17803621 95985894 777405338 995143782 252632063 807052619 259322327 592823064 767021086 996346087 365261212 936700733 794707896 877892510 896804113 940233203 900738837 920080432 479533838 505156382 755427241 993653350 58993744 500968038 703536969 962246390 311645492 595035361 328215185 342565963 628748024 851296324 576262627 635198120 117512452 910413645 80161716 220785270 538152194 919215647 994862154 995020639 255452003 505225490 655834935 710326054 190211497 870823149 859305543 910756887 516356768 880693729 909958744 923934913 765538450 997349826 195041506 935909490 500673 720526928 675424470 815210527 173634369 489291313 507023978 686092106 246349996 653143477 961374817 985918365 26772495 151931756 155501833 403543422 204782744 928338951 26275666 203839871 657739128 794046592 75950068 598117196 125675701 789256798 630046201 908930030 380260759 562763418 235285612 556772735 340184986 950051534 705567505 914863532 914982697 942637527 111711163 537205155 824015396 997438279 527577952 970232827 399501565 974029331 704925623 859946848 954225761 978136691 178890520 981119095 116718535 532076605 71022665 262891150 552005351 627757149 549044327 960134182 964271471 967999829 683516861 872095877 755432715 984361745 805164860 987777852 762164199 786876175 715230091 726350957 363409659 628246545 103383852 393508349 555226072 763235652 528959041 570649871 367111231 600358207 820657059 918223540 368697302 573067449 839074690 940303527 260422363 642970003 758851524 892973864 950124343 984853044 434886496 709985491 523158502 698736008 2044304 225214625 574188188 631657778 287272844 682777881 819132246 881621983 599379107 793282739 597302670 959515148 888609896 950873823 252977510 473912742 506855376 883242646 981225317 985363058 837849900 901526717 431948264 469865571 712912777 959944992 50641451 490344036 500281156 700512876 974439961 994870965 872077938 947560380 633477644 805790631 842440919 888010301 54124674 71630351 530898148 729181060 35214397 750601632 623440254 896161739 222746096 640096026 734140814 988038952 545488044 851200066 148987833 943999556 684683254 693042491 561017384 584958000 965354705 974714080 940145454 992254885 152134943 258089343 971999573 993304636 779093443 859353460 384196189 857989979 563588655 630892330 510939944 763036908 969501970 996592523 327819868 348476769 195340301 727442524 736340811 751272140 487213847 608255255 860550016 989202326 688216997 735740669 657673763 908307478 310117275 988449650 561741156 658781228 935912876 943247026 211156434 215704350 272931189 663100082 283423782 627023466 744709265 783737451 215881325 281456699 66562535 844374552 201933300 580769181 687364171 981534601 145780408 913848664 178626072 210249432 280375202 758765565 233042193 462311893 206674523 603739627 80460766 619420289 291861335 902439944 470065777 531942432 481231227 600592315 713389059 833302410 390559374 561515286 290946598 554616856 520552230 725000960 24105147 888644084 577875780 812111810 615975831 653357229 421680668 806269104 521827486 862116859 961830586 971904070 990807454 991990598 167957666 444335181 212443889 745750106 720545853 893423820 922793951 963167796 343381567 694619885 83919707 549414900 897251377 993909198 497972848 756393808 540402048 779500728 168985855 680096299 548752677 882399265 957622021 977463810 69348062 592910028 770069559 997667269 617789264 701053086 645332369 645857715 907482286 917020494 991202999 996487033 862720466 912188846 822966688 958120616 452852229 896095183 184472814 711359988 21047805 128544375 555257342 978916107 72576666 480993483 826886900 873064459 282665340 471311256 604879552 796171655 162733554 427191876 578066427 877078753 267902128 287537092 863971377 980089025 628520140 979416955 272072233 722728801 579489439 640544780 205977792 333666731 572465668 905738795 192909283 593918544 601271284 973895677 117047380 805736512 607381925 826160023 265334877 750056367 899093425 956430437 437685534 718639106 431985797 663522532 834266807 963535302 164682265 463644462 146178665 497593463 111386200 442578276 346692019 776415750 317356245 499840833 680319657 785678954 454765041 690290741 881517772 882458728 325180143 777654387 572345320 957357359 44600656 484027520 554634254 845531897 798516979 894333447 617748414 635849553 287738158 371943558 274438772 825421856 806632758 901765412 545962814 693578597 806181769 915231130 629496319 725276566 764308957 894929535 171043600 934217001 491823800 606404251 132751663 855784998 151007210 967411652 190151123 195862308 36560270 244419044 328547446 952262364 434945258 990876611 224566866 377172081 350585892 718690461 561207921 782636031 110517627 871107390 278806161 697701924 973318173 981406386 243616102 597893424 317992104 448852990 101357685 750608768 823435205 871788117 365097899 399267092 590080433 783366973 201048713 543282387 918772678 938692950 104920374 324639330 967350267 981357421 115361684 404339742 726977122 989351392 553611208 854382286 410007622 547680440 123405618 342679946 743454270 979180254 381274087 814283104 26067562 515386631 84709083 547662254 277705783 387161371 144086613 247583982 120689369 180710141 695704820 776924665 860237805 933622412 749848661 940173727 263918064 770576403 88301685 473717855 524132836 687073591 638457607 647523677 32841955 827871312 277672388 856365075 979378438 986573912 70509688 509975009 758979465 786182532 944673488 979274285 679318347 808028645 429616428 522484761 124263145 774897635 125929874 867905640 725567460 894382021 477015445 529668177 277390443 525549956 345135777 736714299 299116305 421476833 331042416 741392182 536628869 820021503 353825564 913995695 27458031 874607260 715266575 740075476 16223318 164445713 579156886 675346561 39251414 288621556 645741947 682822438 720005162 826292362 587056626 852171981 605165327 722833873 970108146 996039991 179044337 316921752 704088161 759358433 551301445 567318508 354131057 504987626 175671737 357937904 446848435 748360614 340659885 544027452 898190092 971895768 868694569 931847086 669251483 752225992 110097803 724316438 87729175 182212791 418978775 469714354 980515482 993126986 254270672 862103678 506011036 790138129 676626831 732438215 841680082 882100107 917693531 984377811 399304515 704688766 897838478 997672484 963304598 981566406 99801306 349343576 784408625 957611164 783901435 845392113 106084721 247615405 406750765 634082933 251522191 746525459 640402514 809904807 3218071 926681690 399884558 775409607 682769953 694397275 118361870 544445987 988528470 993424963 924272568 957786906 703052207 770243973 547272232 828795036 19151740 658755803 16725588 465235102 760543561 992785005 251504128 979574278 63607843 780322721 133961106 384708751 432466749 647319642 349930301 874109170 363397863 492201151 513645366 889656645 488228036 584104088 327968310 573268286 950388811 977968020 156559274 890270253 900904158 993677385 117181186 336610985 538704944 834638943 708495307 909279187 344484862 630453712 556893354 889148537 62382734 834994562 343368593 573770813 348367842 455585418 639947490 881341669 386177152 745659046 162423123 552370768 671637177 851096923 466786576 617038113 651808437 844880788 66190421 80805980 832570709 965359564 924055920 925791042 734949160 855660855 122591193 870947557 137044115 588150651 129704775 424637416 768196188 856356590 515604115 882171325 176264237 894698248 662800606 906206054 567971678 598732634 612728921 779404447 753430985 901972162 1062756 317515643 714039209 850338187 272815133 533772112 333280297 958771902 167527286 516793203 183243218 196514093 279208348 394850681 27563639 876367146 670046674 976664848 920355089 935883306 335586234 718977971 96083008 607398790 546540954 804714584 878088513 915476619 710868843 829948442 779926155 961089676 68523731 630370553 614277115 836886891 704578317 768985917 215543115 627665329 225292338 398481652 363087547 933853572 698788111 812910457 111040651 337537546 428318064 784204362 636148015 807727531 682542850 754058129 25020228 474814116 962487369 987500128 277606857 313698113 480707885 835392402 736366918 754987868 377359730 535301614 377929788 400809801 909852137 935744725 627233444 782212307 791574816 982022083 82327150 540270594 703187257 966492943 351809329 559568919 19541884 846054638 805612657 903663288 847908493 974484870 774801930 941125581 109344588 802368527 150894896 905286899 429271119 590786131 933835018 948365284 545679331 840195448 779301688 897617654 922444364 937545105 586897842 728521942 93732041 849405858 86513782 176847318 100472621 146513602 415649763 911930567 239796440 423199964 6799914 956654266 751324784 856058773 623294997 699206869 26625154 358006075 77789852 711670177 391743752 847660076 143432918 738182419 559371749 865490852 886349582 957536515 587066938 759369201 951974317 997142694 206702536 831629766 568993713 748787324 785315672 885453228 620762514 788783523 833781559 846834350 678751977 975387918 994904635 995642340 656822848 997153181 147901232 651029190 156597903 277429261 150316798 664886322 71474415 202204596 191362599 911827989 371623267 608898176 447164685 575136401 667842959 821902537 30189511 203896697 277714564 513381203 955744272 970562868 887847273 992106173 843817328 948460045 416712021 837888760 690923227 869656948 978601397 985788114 38457107 211457809 296041944 986748296 810520210 941677897 353860261 391884969 226481029 745374421 928872276 962428993 921583150 999138397 442274265 980576227 363973671 421600395 481627396 937086961 6736831 599413869 371162559 803993111 283575142 942649836 156155577 583337545 405975925 408970132 318723504 713768023 631149101 819055147 557909079 712363061 32341965 961616530 991633695 994873499 270903787 700159064 274305819 643684653 958400018 970807870 643899015 843308661 83247660 637758401 519927869 911027902 490413909 547113776 327002544 563114398 64402941 604640586 176643170 207918625 730101883 834981962 915332212 985455886 133228843 249613508 199263891 555411811 434296920 467316826 316131366 700413744 576804350 955822900 736861135 919372849 775990956 837684166 572788996 671440710 415244609 533788181 663960292 798240824 194443006 592442593 570858254 935719694 57516582 64949981 929556742 989068672 411802998 479954254 684406514 914497691 940030786 979559179 752734279 835076986 381560515 493470128 422825472 668904513 865897911 928772363 379767041 753989022 266312065 833937686 208533009 444293246 883852621 963978014 903093265 928618362 698340102 930950959 886972571 942530715 597634908 972804539 664257406 827248615 62722642 879060570 491969237 608470067 661339411 709307942 351404568 586462192 755953449 949890913 618034043 740612431 695424788 696534603 120723942 185211914 718197318 945363802 464845039 561220498 608185815 987236664 269179969 386716506 732243036 751596340 458041428 607109772 111466375 798009447 934297755 957763478 107858884 694211595 996856385 996966859 841756023 956713010 601563134 835031629 476042961 766343750 13461504 679832367 383013129 641687002 297883089 369459192 436312214 829708067 288718016 845942295 706282034 902285459 946367842 972215949 452426762 728292780 763470448 782969260 395622588 907953490 845298258 893484364 986915817 996231964 123710808 187126013 292233391 928176629 34256734 238698697 818892712 889892840 975185957 983489237 472819910 536504773 595370498 856714199 875363820 980249332 141307745 819352285 119985941 187229805 70122441 269965953 3151983 938042938 460952069 518516682 888192342 924569669 781425405 891190724 236940615 258014083 53195882 261976175 885796262 937391951 754698560 916276095 180162767 987500651 43957942 162297203 854013206 857666206 17499313 705321445 160953681 348983972 674894289 780878713 688207437 759249615 519144127 903107303 966968994 996927641 551218042 641411626 784212807 974278268 974417805 982837799 974243767 979219335 30902210 277468626 414681502 813299896 177999338 218702325 877778946 918419940 814940715 946884591 32254213 410837727 920379611 922180739 264068399 393331313 447863594 730221797 232254818 291848731 546130631 604505894 407508612 499405833 739205353 951864077 584130300 972938780 878963286 962201432 1319009 730136835 528995576 884399197 652163888 749417517 43136927 926622996 835026247 990121392 430688002 538350198 679079575 772180495 40867498 337316576 263975549 264086469 713258319 926275662 701357995 829297615 235765638 384223308 909059282 976937481 259660332 361624263 689532401 979843619 748643228 811104227 194412426 670417831 621002242 804479743 168583442 529938124 739684697 801404531 623942368 827678504 723974591 783722538 908637346 928560427 775805690 864711772 12078429 564812026 552909142 746110699 244487925 456382227 355497827 881851255 326051283 778869857 442744606 734684551 669195615 838799096 553297761 554553371 395223210 924295972 177875646 528829171 18142026 580934186 540679348 720708769 814228617 993438737 170762786 311219040 864663001 887229234 382087484 600546642 761539477 762370247 929194955 984365470 254604105 352797990 450972223 588960343 449312158 623353832 72329359 294579181 38829708 988346323 948425094 965213438 598321512 653632042 177267450 868493876 798808093 801342001 734691965 851776977 769386632 928157118 363497720 854346097 935134718 978674426 80513405 147830553 494135554 783164825 526040485 858378722 545784567 862057222 442410601 962626928 333983711 621560456 405692825 892089011 595712983 949672468 520872455 805155334 844006355 902863686 80969420 84032940 490413897 708719277 268465354 976525839 366532560 627653992 204894582 603701590 213169617 248214345 254225892 681458076 427928402 820172840 910552268 922870943 300596275 619594331 638890310 664329821 763088759 990009477 376425317 695147182 852851587 955046846 998065341 999352612 562130791 893278911 724919015 874854554 83122435 266185547 496776024 506717619 487599433 747123704 865506313 949662633 895550732 954719665 757021461 912664220 357349758 449323261 296895413 798233355 407640718 564619329 667434854 983802505 85193489 725777198 711286908 794118171 119932674 304534357 486122071 871528585 414580064 650089112 640023242 994828429 492991788 662503998 902618859 959272859 983164036 988130109 497922817 866865797 951457067 970874908 58074711 582053873 129495 866032339 116460913 564508739 874078727 973859171 608358840 927680202 944541506 948359396 753875032 863167944 972783183 978840478 407936177 534704446 464321394 531740300 813875675 835217173 417212231 628397046 880161449 986526480 628752574 631047810 512548898 841146928 156674243 817714374 9044682 127579909 276125466 622367438 594944804 968542145 382672661 841982146 592625609 680206437 705685913 988512486 404911916 606448773 634645473 634668011 147655585 679877119 128718272 885764021 195557763 436408458 669970087 795324471 185908228 229873237 78882655 903296379 229278924 431748595 950629786 985044113 931834044 990372573 416048470 608158304 895379352 928487954 861867650 998253637 610439836 888717317 166317168 401977520 447002516 541223769 836993309 967302172 70516584 941283460 203333124 623498375 688756459 983816237 487832061 836975801 933927994 964296871 989280266 992102597 866958285 896234076 903961764 919912048 478950972 687069424 899819488 917981931 677778528 926455021 683434284 790865297 16286116 910626455 304167321 523414216 261913205 727343678 922618429 993015553 107048047 527108413 474693505 909802597 653999773 787556091 727943795 779331825 941176595 998771904 720734701 783862925 211108319 266641750 217211712 837998515 896725589 900668971 315196124 458870613 224442867 896573944 601525830 839729087 116062817 682345312 758603424 929317313 529864607 958148970 416876312 720337918 674772872 811263820 679825872 927521883 271466864 622430005 195294945 407733464 187094767 310348214 119590412 296326630 72447915 439632287 935832534 960111538 28936625 736576828 498912466 852510707 314323303 949982785 943296153 955013211 978856393 998172092 989066270 996508103 884906624 970291432 983342765 997881587 269164547 899314984 670431131 857364882 876633177 884414732 731149875 744403289 775097315 872560534 388205975 400869623 90936496 877794747 780797719 874933360 644210872 996471488 311067932 867048013 196937569 555893928 174910706 822853568 819307122 974588638 123667526 303093545 854885583 922704485 597580847 649269748 32245668 299390151 859464295 981452554 946554453 979185670 7962954 687435795 180727335 565140417 324613719 530565405 979394366 982669728 341868106 372475419 590602312 702889885 691211655 781678327 259230601 889260062 139604335 710767882 901424675 925492630 636798990 798908351 954678586 977677210 490720240 734737272 974408560 975708676 591347491 823565730 526279610 668384494 102816793 753607080 580041828 683363890 992048314 997359793 513076310 716741532 497969135 750129528 909979558 934358177 532748796 699546463 985714483 986281295 295979235 318732826 817214413 913303493 556096614 655577508 121367736 727057978 916274282 980185119 74918256 359254588 939810429 969538567 335129173 786959329 205537951 577553125 615298033 759886918 873275633 897809410 973940751 989907098 155104371 643430626 388436035 437029212 580732776 590833044 626441545 972597888 955344143 981838502 299414270 803729753 210021619 308707146 934245227 970349207 138136918 356728136 849069779 870789202 641232240 750466832 626950467 698292439 513818751 954577418 683101689 889364756 167691510 687827588 2902314 238805872 469908552 541002758 710676281 711781209 153826504 840886043 631380979 670120337 995191573 998962386 859104518 997020370 57052762 432908001 272069 530309208 868436533 973158648 882243894 933127935 216465237 318537746 319795425 929545638 258368020 314715003 362288846 725148191 195542351 322028472 900415723 997876364 141250910 498575318 124090930 977609139 53395660 989816883 998906309 999258460 520965477 735187848 833871134 852235291 66287221 130281479 814896140 819306182 10344307 43894075 535883731 787216858 385846488 722533811 15627912 121241277 654338348 856577830 213634306 933535425 818028537 898760807 242304289 927521159 315274738 681406460 523984576 964524043 98171550 143747473 143881518 558437188 646884403 981526360 318752349 409827026 354029429 542227121 55522667 976584100 244862408 258667311 140977271 898249475 48385774 905885295 733175404 742430634 422654021 669768958 59915405 779066831 899177578 940534892 678298942 947293066 652935448 795314354 217140883 712478243 342106113 526250754 961642833 997519100 743414774 985572252 780195734 874757815 602610731 950627158 372937987 976331222 967100505 973214097 372501406 379121156 198585740 416436457 643082502 905478775 221973466 566754065 852450161 886207293 396013904 607724277 485514598 980180454 707384613 804029519 948084101 951398545 799725138 820974172 984728274 996936901 576850989 932693418 14369903 80482232 195298190 599091225 279061482 773444563 866066890 905716663 213934992 868709567 287513333 733297508 957544132 960051181 632557041 705872935 291660524 614012933 275927727 942482093 997709424 998277868 108638692 882068144 506330152 613008995 593923849 617981651 451637047 904165342 854507964 923887324 483663050 630940429 933577982 943828463 745901678 964956128 703712052 916221540 330803965 948340983 335790583 553103691 657471970 984269681 828533536 927895033 547710295 851991388 108797317 264570411 553225950 830119372 239695775 507022195 642748543 644848753 876903419 922601093 256873590 791817975 263174865 583629790 901628725 931038616 791134128 990565225 521485285 571665464 131935306 543893373 55482751 129923266 657743357 690912849 339430561 482959657 115431603 731053088 833525366 970173980 351585232 477489905 477879689 531581890 940829553 983029313 982511498 983329350 169216822 624342243 762685466 957891663 726503848 773096043 760218716 875934295 973743965 993787289 681891411 938105011 89436563 761940275 853601703 864746568 910380157 995210364 442440223 521211351 84295880 724830182 68980154 541787185 142111483 393355396 544974116 787368517 191312606 945535693 274330585 732606139 162209654 596274965 823029446 980537051 117043415 692260101 472024655 745401566 296072649 995297331 340381574 679638180 485276515 803529606 25133493 129416257 460479438 777987030 785676009 965352795 107366416 278001754 192460063 481674186 757010401 784406221 950314607 962926155 96153604 702596295 704772746 831809257 820206191 996901497 824496351 881084908 50512384 271954026 880966081 932060118 960468346 980001412 361151328 635441674 165142359 382571039 102059543 898967600 59864768 246664039 188366540 985263778 817722298 822216103 129739243 488551013 278573070 795111333 808852315 961283478 689986610 709689522 986660882 994195590 215135601 559613181 701991680 908478141 858328880 997857681 170727718 332182604 449278259 477710755 728074968 911618235 835823486 837503772 828561979 934275286 329480598 463426686 366917560 379057069 766206605 846298630 664904560 984029635 199618716 451370013 732862138 866752437 54285623 745024420 969845853 976224118 277433576 994948106 754277063 924791947 294132966 941915558 226788488 324329289 369017935 395829013 437490387 951932967 592125285 681999905 678531263 871484526 545975288 813313413 748483500 995482539 409690936 951667394 181942478 941310211 571335191 994763235 668896657 786927946 538581939 788874655 42772345 88787784 14466334 834335432 964875362 969757210 497519902 576543208 892215493 938086310 354550018 871374575 331938645 782806403 85947915 817191850 86780747 979350522 677861061 792090527 177735129 532566907 560102822 738468183 282408216 506435507 121572919 917474802 868182843 876774871 322770887 379322913 955463234 964849837 475359193 529528878 268852193 422291907 973314159 988529821 716742296 793387182 586083536 882717054 350526629 968272078 163671003 743932245 340490082 765582692 599238776 958199504 875644839 884550876 748865344 896663017 448625790 456112717 404502595 498569298 187604004 539651714 858499430 922498734 638665851 770894416 926461062 926815847 942534156 955833463 751777140 809406793 280627974 359921806 172902526 310204806 794106 916655134 208293843 916250236 845234668 856221678 773754336 860839261 782768808 993841989 34725990 352287360 693341720 780081606 229943847 759125551 791472605 884320851 482347045 519977707 192509519 319901479 475788544 779110688 573059011 968768302 32716484 590940419 906639113 944883218 245573607 732554734 348018378 484171384 996864016 998651403 991888314 994035906 639885858 897680674 359308423 705187495 687165629 705957810 69049663 661182947 455003374 999035759 329382030 701155303 362460531 808256364 60927554 732969683 147102528 661336803 442391727 526489898 211018157 373369723 544906196 736667209 994129781 997202915 691894226 848867548 772869077 888057687 69016662 927278297 893949316 894911186 58746847 102414523 301664167 686643890 199722313 875963543 576474243 832022999 780201969 889404450 891796924 958958172 307068657 345349936 736768489 771388160 540360099 847260145 230125556 646411575 679363962 961416605 605565854 776404973 907214614 914675057 477016950 670878303 686460424 746214972 244285316 323504734 303804185 377051550 903516581 945156790 24187934 907532117 671695682 980968525 619366650 757197159 591669853 670667915 34916983 341176742 387389491 937448260 70666084 612155369 936623654 950421309 955725330 982395198 29765354 328854731 410646817 454500177 524498812 971382180 801527382 979296505 523130699 636369590 678580677 874668762 906048651 916601099 39322236 947018198 891754164 950619683 9166021 466861843 446060428 923056334 895911695 985955906 224772112 366242446 571340631 667043141 571990015 705001721 543524785 951822319 116376407 324313952 824431701 867033802 300134048 921586365 189965682 675960872 464755100 772081195 542101233 757506259 548710184 743500236 344301427 618966566 990044242 998959576 135229914 257520845 266881985 592689333 458649938 522852965 362089609 839954573 483268014 611965912 354177236 695357418 68576630 207314373 498959800 697773899 336969026 369402243 13999592 777531843 933929034 984627123 71038037 695177744 110893801 925723878 83466697 273107876 130778508 719138618 996169914 996558184 968502474 971727120 378315841 658774609 256253220 391354794 568545902 925164685 430309364 725874756 662379078 736067317 952494088 969519597 367055114 559100809 95956327 651878412 206636245 484829938 941427702 998425807 181689586 952742547 585464285 749366116 298601834 777418462 952960647 996264873 960191343 964855102 824689620 988288204 349504663 419318410 671441917 858701107 175766920 429283008 823665129 952789180 794426540 915117542 721520734 780420380 29948823 676080447 293565773 912423781 546427370 704077258 551186574 910039155 856015832 872860477 349228857 846790292 675080791 969431787 709907966 919614361 263589894 561524395 5431808 601422051 526237892 830921700 956953916 981379131 717598662 732896264 236067390 674140258 354285464 503271530 415520425 789124568 786235642 861145732 111836350 469804780 509305477 958326327 599899476 795759740 197551854 714123335 642676244 876160945 494254742 912394398 209502035 773449220 494836101 889506610 39818109 343977688 441493410 609950707 706576440 997567048 905240449 922432356 900049350 904166967 394806087 397463699 281139791 733652201 242951907 380414417 824995360 925500380 679706090 951901222 827669781 828736847 957526413 990290075 373984574 555297062 848276939 857552654 578771509 691435022 546785281 694116246 47589593 378682072 731055135 964292022 112481444 414565855 85166424 670358363 302072402 878462880 162009056 520881459 533692862 834229634 566479321 803834765 586212863 731180428 358224988 998202130 17031967 547399577 742640110 915798553 370315344 464946160 81055085 954784597 208452225 404995453 821356039 952990628 69760438 513516372 146630490 270256428 209943236 994718301 409257736 720790900 366439591 442136498 181111563 366623775 459157592 696654080 506030362 870379966 363058689 453607019 661615258 900137683 322075915 899822926 296569607 600044161 573171275 856795308 478755999 907474159 956741918 991808235 776045411 973426773 280541355 989214040 200664323 381235538 72397733 384038301 175043837 420367543 706696242 967492715 417144701 942186754 860491689 995955414 137356059 667135264 324228554 743892993 142647436 786289996 620163059 957308763 989943923 995414106 243995697 750617556 546792417 809116584 606637066 944488991 833198278 880368267 126835292 252186189 948347283 954200668 782385991 943984327 27541783 850647474 912003212 952930117 623403056 851657191 339751233 353287706 130548062 568768172 281771971 461466876 885627256 933279299 900919028 914382798 940479145 995325082 154729697 164617424 533136606 950821027 47332077 832534192 502300346 668543926 715399450 825900743 531592905 897998911 741453744 984683416 538715831 827955985 398001404 427011523 842825158 899577668 548979086 704616568 942519144 989773182 365408971 795324975 197139138 708884358 506735062 554002069 170949245 393132181 12932378 65153868 89210200 910173062 904532427 976178526 116197904 517612516 658363412 683599898 765287337 791320318 585815139 974074773 522401632 527098234 737985660 813095371 469219967 777395799 175200590 398781556 918685286 949980180 269247850 838212563 802755181 846964847 833608940 993474417 63644106 255179027 208899663 987848631 964234450 965339927 380058658 650399240 280192750 654154734 398430436 889137725 989387858 991363646 460438102 559071705 955175673 974577946 508338400 546059370 257564807 346490802 477360343 567852667 418958310 491201948 972426059 998616334 536493651 830435180 402978524 575978978 22542801 576446747 932570784 988373820 16974301 125142743 991652655 993915910 851844627 967917389 312205716 602979721 135230422 146893011 640928163 844043983 60364534 82974918 803947614 891256605 189342354 257249450 120607813 147888969 979554838 995680021 761778748 997297184 772953109 870587664 230575648 424715736 425110394 909404674 96379859 464208568 928673126 971061980 410398277 895500423 458562708 559858258 151087513 360595696 168044356 815221345 185741162 543081397 934855957 946842247 852353354 885685795 804379528 916485850 163772381 841812799 961793929 982229534 740947200 841007710 886461797 903584593 539678484 734785924 61399574 214041355 191000060 807700336 484772223 558806740 660194768 938096985 557653203 967521305 79588395 248360781 921575644 979191856 118117961 395033212 704838898 912564070 549352568 729390048 97541414 232744837 533780838 598975537 444682502 730299618 920486106 953956496 523587263 880524645 391881527 574031356 824382779 967051752 143202556 631479595 533300326 740108413 679185719 806021936 211289370 957697419 861236866 968751255 375963186 439548975 17909709 46767044 430073425 936835437 705002432 796914731 884938157 961451724 571939192 850922940 762387779 907839766 947501175 997273342 388224219 605884930 682245241 871465443 817679678 914933488 281563595 656865057 291427895 964044655 17826761 519250754 925694865 958739364 412177211 728861746 637081745 723615644 91379043 729503618 669078613 918808061 119990498 326099571 565982037 862320008 993019688 995587550 775430107 838491728 837331079 982712467 941725117 948499895 230647393 613808674 209441182 869615517 74669303 348824772 282916872 632798365 801731110 987297560 183941707 417701749 100932049 477312705 828803138 875053036 397407723 607835150 227948308 440652214 588196901 708920318 482552417 555908004 296228909 360573197 45666798 364024520 931367013 966082398 87429228 633725884 74899615 613663354 198865210 419840802 817079818 926919922 277968097 703983829 833236331 872748910 778806587 837254210 818298827 833863764 245530156 489660533 309383560 512186300 440586126 632614611 971961513 979840487 746823074 808304988 801372458 958629267 203945341 589049261 762584680 762846172 146779126 403379625 518691737 813316654 926556629 992827319 988932120 995945061 143847375 784227360 780568683 832940560 213725887 470656340 530158794 876604896 535870942 707292018 600196928 985521953 700708457 826734172 554758347 861099286 435138152 711719098 649876590 984426717 331818250 975851623 889601247 956930381 948436334 989262714 196186212 470301432 22037747 407046489 322868021 946936751 610576938 897399064 581507827 743198124 214694958 475449544 924351111 995113253 986500979 989504849 988051757 988064457 261119253 666757502 924127871 942995438 789516101 818763549 667371384 932535674 52001307 835334127 327771050 867046942 572868391 747138891 51512864 983809473 987158834 991192197 547096664 604110155 154690784 327790800 708257702 740348074 369706397 658270244 372073514 521201800 218017588 453744020 581303199 723501810 127595198 147223590 450238809 662826859 617688638 780159886 542038629 832766438 494770010 589928507 537811961 722527388 638905633 856789613 812149686 898269749 328264764 417509988 645515271 949422898 491747588 916764673 788601635 934390932 302431383 781582183 474349481 587130537 656701324 840115916 106235039 640953243 991487308 994585369 346512881 849814209 883251963 930860861 339730948 603121515 662064897 736681812 937336997 940054770 81573445 497485997 731347327 891809623 326035918 418449726 289196797 309246178 150809758 593554940 473356574 918101350 216163852 899546719 912067538 989356563 753309613 907058284 750721408 961682539 232372762 313010289 704558259 733219563 943235327 993804941 676537663 925599869 829026135 906765556 649022041 977774580 30012080 995937832 79269941 825881486 739352426 776361396 219944748 515518349 591139924 704030308 910603175 931778560 508102894 768531472 990317371 991594293 308529906 347612237 858973761 989736363 721568380 878658246 68362873 390752702 660811102 944654561 424844206 637834712 76768762 881482927 208184733 245380945 318124846 403715712 879519336 976834895 971480304 977129125 942244225 982839234 901313871 922860279 539470320 745151021 77560 695306755 719200153 791285417 512874113 590256635 404039830 966133002 946357365 975569112 205359755 421517731 55947176 174030048 135702134 704098506 461537972 866055588 857690770 871613351 751536 18118504 413826624 629063030 812562909 922772179 878698608 946678559 885071577 976478121 153719524 948034849 737121731 964529443 497197478 744295340 491314678 603585308 884030430 974272643 673413427 971842228 806328768 988503168 131789725 666044643 600309040 937172186 540978771 780184564 392876377 767063612 660970036 689854173 545840823 761299080 576207182 984306433 953941094 999342603 554617845 841540153 980846955 981677997 659589365 694966219 958990645 972876520 946543472 976166915 939870933 987610729 803290048 980035327 746267261 839119266 567839887 930911940 502818155 951249836 182824345 193503485 156932814 551090184 871010060 904052595 115577976 955747596 237390063 451803968 674521993 710928002 108482219 945449466 109098886 998960712 737954420 948951816 546176858 643845700 359229040 681607936 924608101 990409922 499658647 941653421 126079106 629325066 564705720 730493466 305573411 849959610 462723215 734450663 502879458 907621524 43740157 645785566 680984863 990654920 611291903 963214448 535061075 863662465 120217302 182075960 842817122 925723006 537211442 871670652 980003565 996229498 89725981 249427622 426491096 813036081 852150002 970328602 717010700 758582168 631050466 917870849 358508992 537671038 479112953 565457188 582240583 620688236 534137581 604746544 852864939 911316468 740941127 892522879 170412136 249372071 215793536 786040796 123901623 249486507 524894994 957551002 880301556 976989697 155263129 703847642 313403528 908322860 664950636 978527002 721393777 877613713 727789151 738451025 262466751 401461121 607581166 799372847 79454893 203898850 593180086 721515602 375895320 953285760 781159922 991697332 606947808 726950401 441103439 931952015 455922151 726314754 580045628 645483502 477148774 535053718 227719877 978790032 353687587 535746273 163619127 683684880 159675378 688871909 303063387 603035517 650367617 651511128 249727709 704245106 562043790 749601237 876304788 936851014 605311318 774902408 592687088 668243817 763712215 809225835 134287294 878680360 18863715 686478278 634491427 830262641 616336087 753783663 934965386 948938082 126575051 780442081 540774828 957090794 201655434 985742388 519830607 845682891 909818499 982648061 19109450 722770894 27546130 735623330 30720051 841577972 167966307 902994920 559677231 842906922 787083006 970370196 437758088 785602459 875787851 895201496 825601785 856711631 647008643 672615922 811322803 927888500 994404316 998483605 424080112 943291684 71491474 734957722 264500541 948165330 359540268 514185371 29467102 983919719 613533338 821973913 824028159 981869611 438666717 691686354 92728815 335774718 738530361 769434074 370522095 962207399 466823328 848840103 498839813 828296834 483850195 968798249 642247675 950759174 463781392 797063683 989163412 989619458 148937374 582680243 216981683 746976518 798416054 966942010 586684662 701677639 240138440 326182025 160066036 489680434 94414583 377990245 367070169 932570110 97050453 314645449 850842100 951648909 287030137 871004845 392316817 964258507 928267513 994990346 244777043 289817155 147200902 988777256 415188145 480320295 356516236 495474256 512462093 579058699 49417696 284899442 7066568 818154568 347714664 415120806 15741062 524567727 118758926 752930573 399125960 874301629 720591418 828438069 678516172 875778100 865905681 979956339 29711163 542365059 610139944 794023037 822127438 903784000 775169397 925929135 269706036 420593985 382568229 490199150 97289090 389363790 139635420 664737122 650673824 903877875 522793283 966568486 705535467 757720797 701233422 908661608 69565257 602649489 435283868 610325003 76348203 362355764 370489574 660040472 695586921 702082283 123443563 413195762 161109256 874506530 588572834 768130839 749974766 806376573 292169340 988711313 532572446 622064146 682332340 865403733 318831409 696712154 159145471 573217857 531155276 653705577 491543454 550447061 959853753 998779963 874236561 994938460 231199036 722102769 205474984 311000374 471287865 483487125 972616271 983677122 85945663 862579866 821757509 940138294 632212972 966672336 743799307 920143988 581002425 947752809 257309256 605449240 517373596 782149642 272721577 349998442 578234506 593916637 417846145 638124131 563049501 936494723 134520244 635322924 635868457 639569451 781804616 838637038 938396363 991643683 936441986 992746307 509858931 716485378 706779609 894583158 333765964 970188802 276200665 823294159 129655826 528008099 75476908 976656480 208841415 290338178 235048959 708968487 585032396 655633996 931216432 960511956 676220871 908786297 879313304 901240745 583837052 703416891 727163845 889450655 550907687 663398374 733342854 943366321 469438766 816055801 242887706 249641357 310569128 607528208 498931293 572474156 733702893 979736595 614178596 656063796 998107559 998774153 903996496 965150861 785482041 846406510 415786399 607899965 198155913 851344329 594482927 647337054 994236583 994645830 550885495 775350021 774851862 959998347 657678758 779777322 352011283 896979122 568423983 924443734 784659297 908538797 920007746 974594625 182524615 326606058 370509704 922049865 720344556 764842873 570241930 933098787 529101868 832498365 921232532 998479568 254459032 845838257 380032267 486822182 486634334 794072993 837216024 896343707 878182844 908305849 719859753 919312969 498265336 643898518 579427652 756762090 747562039 795455505 451257318 729039900 694752835 954841025 172178934 269466360 120343151 204975032 673332192 799526467 719483402 985302704 538836944 951151292 966722947 974916004 156045069 430054658 557808324 835936147 156846074 651654362 923938953 948371740 710090045 897307601 107075362 512204646 343569331 399371539 934801198 993534467 438923024 679710181 356152001 995110025 529029539 616846085 796318605 852340412 928652969 978421049 673901711 888971886 327900611 806078620 418006475 773555804 314356052 611542057 946896735 965721184 538814704 689110495 689014310 910724081 654789116 737105551 335824791 757281435 293078 846633135 649816237 816019704 644045338 887938503 237076055 905370250 260806842 401902864 625068956 676517673 33904868 225386299 379908202 466181222 884283608 965920243 921968852 971258584 203355438 797771545 132597224 492031211 980310059 988774937 270554371 501891493 486503667 814374247 728314488 819070127 696985166 895391113 928508915 955872097 703524072 900982282 997643304 999018504 899729578 965264068 916623357 944233039 547023020 604494387 115736311 169287687 336724200 376243836 121890269 487778345 688555629 877129359 335778313 673715353 225669410 672982474 812153369 813839226 288477184 655753605 522141365 881840625 244588721 295633699 4445582 480087146 63909881 368555904 947870627 967251386 275943825 684170110 144109257 368455131 363586013 612366194 29055171 481318167 145888391 214010515 141443249 640431422 525433836 637149274 747212347 914600656 179334992 920512213 203283335 622491830 315553488 591924760 266730682 812103518 369956904 848565445 744168159 749452678 842348738 931063794 183898690 749245421 27946178 357192992 510331669 835486067 813299943 963772714 939265832 998931130 338165324 687541718 239854315 358517700 12128668 415270716 896751965 989081119 302508572 854933287 489706447 565054506 770868557 780474068 8376562 495390505 212702477 847725551 11497972 106485700 766694055 849798970 102356792 600142513 908557228 928699952 438718301 477685404 545323142 718289593 764659334 788217014 651938002 929169673 435370622 759741840 309911654 764222781 322112451 652270988 10732140 127970739 776345227 866744256 322641803 583408716 824581143 952438546 467398366 566609879 769784441 902761866 420172163 548953843 531679701 569526618 477335269 993724791 604604507 617005234 244251384 913360643 465396113 530077329 996269852 998213934 71552302 921159597 647815857 821295504 417513969 655669618 290960496 489080208 626078800 636916815 714099512 977660130 25595239 791751416 952083401 958002889 504364323 827448288 735403461 915676903 263735013 973914467 101414576 470053153 911386177 922922907 563498984 603292528 915649810 928546129 516390185 857171232 791131542 895583563 470656235 946209424 523198173 787828698 68623072 959877281 507884360 611159916 257594258 366633999 293048524 881641576 346749278 422645103 993299559 993753591 802981485 889414981 802651757 811616093 71818319 706892670 96600144 644451340 209228060 576550028 436658480 742866682 980973820 990166841 598993282 792914048 822872854 893984489 558703530 823123959 666515343 688005541 323843215 369918216 310452280 622940717 644515327 685814552 294010646 966999956 843759138 935683348 793950433 973809166 821843924 831465068 709699762 777912136 672378289 718640363 430651962 465147115 793327137 880697158 438286620 692486498 962019375 990951984 925534251 928375395 512946268 619664149 364188229 815097378 931694995 948927547 4726811 53582199 475917587 834902259 23827255 889695413 370668222 794802807 238835976 446909779 622008358 775314883 64596274 219664029 920889458 993873526 614419147 989217677 636922591 983373842 668568149 949875433 743442519 851612901 467891571 610817600 33040431 813892486 148644898 879838906 121726951 223277266 324406686 847399995 356807275 502059176 506420038 742783996 447739544 843165403 226930321 660039436 719173818 881425039 582435499 896460435 726497717 747976382 404521188 958497929 799867733 951990272 217588976 556132463 358879535 699843633 443672990 576281832 529267444 877664257 945297 50182452 866940628 970302982 324565066 414301363 1036381 230011268 332408720 521646782 226332556 393147623 146164151 182485155 376425890 945201386 296176806 831648650 910716314 975421138 262583986 549555514 598222061 835370166 269497490 623961785 313740894 638762440 196346764 288632565 121838737 361852572 140933663 153272961 294763703 623117705 756194591 770679710 166312699 606544507 721118096 930683591 601825068 770458557 327499467 652584842 871441237 909222014 739065893 854038861 192903598 527307789 370033761 428610540 777864158 960934269 46381004 949579606 70830994 502869967 78541744 979258751 218469429 677432063 16259229 729284158 866295177 897073896 928967279 984931870 496772436 813053418 506534799 971979315 173728110 804837781 833978674 904807169 438659473 616937013 480391249 946805228 806621180 954532900 550569719 958856931 468173632 707016071 184038812 850679277 465274985 769958557 790234742 919788317 831479539 856857166 303176124 677202466 473327415 731389428 127566037 263251366 91664943 721838393 969515120 977252707 291388966 492491389 375746078 989336420 861214828 981274531 945549142 953618114 559974492 692553478 247606412 753272187 115236912 571257494 427559158 613673589 734609926 735205974 755207858 843717328 563780150 697573290 604879086 953499550 865022415 881417790 186307734 910913912 615981036 920718241 266528478 919361670 553482312 649349678 800859569 819812397 912690172 913735026 373786690 852663489 781283276 910489881 332567686 872141637 130228590 771528120 745429315 991211878 409409116 601506075 213485136 718978849 741305007 824309483 975360314 993649720 845998460 936195297 867841564 935512531 156305861 985289261 615945448 918241923 384179118 565075864 76985739 254900518 705512258 895588959 883996377 965600609 359835044 539531350 680323612 695371144 253828140 548070031 6466029 83839236 443187886 964028209 704304803 776066248 513610194 983716966 430415139 811905283 895130911 895472749 446084512 953228858 40976482 968228045 378266227 574700589 318434088 794230501 976725388 997026926 653770881 908327089 505935717 925503021 243098596 830211166 46279666 586603749 871599766 993617595 852543388 889455314 431984400 482169650 726973349 898261723 623422643 914464909 798419809 813412007 828153739 922689155 247103134 698788421 98930194 613140345 993232204 998120638 288183038 517361023 741266721 892387924 70770568 847466345 16548570 648832111 754304011 963196885 3423097 438916676 117598461 749938773 149702985 660463641 348005287 858924446 745227155 991782067 904475180 907466157 27610409 809744765 426808569 457985462 988643902 989961836 836688926 879559251 224794939 742406927 430378892 478027358 675169627 798409700 161015415 587330914 59005287 973993062 516949509 666149730 496763065 792281560 736723512 847140286 375022577 857377512 865906720 939219763 634494527 783359399 92923998 573978259 465924308 871801266 756083977 801969599 529062279 531596611 34519382 409685350 475717659 718453510 251127618 339144744 899031590 982590655 484608965 718785551 307283169 541433077 901595075 914634167 269020036 450875907 591786573 591884454 766759624 909502656 241869077 302039720 531829093 822885927 669236287 953061467 49160219 904312854 560134805 688275087 580521047 793656036 816123069 867613016 986508598 988147614 469476167 711798004 267301233 555763938 141038316 232611458 408199279 779635076 631843388 673973479 109393245 973901944 427740461 561428292 439730731 764092846 404113473 991883984 355178091 944868920 184431465 259475059 442271257 637764366 397486462 688092897 165534440 178717797 137552032 691019440 199037819 982942657 944937056 990826751 348466843 397374289 533457240 831132561 433107733 765978836 443832752 547958773 392076013 806612885 492312014 991128451 30612096 44138164 296840429 426261221 306451142 609753746 738612896 950086539 348152838 372929181 130436614 515491693 575462110 855322755 97392220 166712869 302911305 925580370 426763198 836753657 988340729 999051455 118298121 329671520 527822782 987851842 283693137 796804846 699788170 919787967 623764118 671370504 341457294 518477349 881743385 949273133 333325034 623030361 905687197 943610118 977069191 989918156 596091208 907728183 157048515 453728451 189470460 627071056 463015300 677881731 912972842 918727183 940883331 984332267 464864794 519908272 546912749 936705647 16924004 446496999 606508148 675898773 355940411 593529418 115202042 404162084 837878126 857067562 211380983 240699169 179306182 897213080 827567603 966651066 73964721 124854941 117099898 466399130 689516712 826026736 102176185 402569667 966580942 991357650 661235399 998565077 506112750 879221040 602622655 937283342 386789526 692657452 280270545 587817642 879287494 972868319 43504292 815760602 489374642 741466216 764428109 781551754 633376621 814613787 648426455 793582516 40510973 698894585 159675360 453259045 620364347 818646483 751572325 839849645 489389295 748074586 543483433 670321329 717755074 816857004 816927330 883471566 657672894 995605477 124101733 694064014 251861695 801220689 375418707 864000995 742379787 962563266 456047319 994566520 173858929 466834295 991310066 994434808 851558523 997516678 118002505 754742505 833306991 944372686 775691823 916657826 144338157 590376580 168973358 849383974 335232133 768874591 874048433 917464869 911941302 966526431 531057135 613772952 758901474 945833703 775518411 894573397 261900817 669546439 730047779 916250611 747384916 782771288 11322097 398085947 6921606 724069897 194012654 894532461 799799897 938759326 718107293 742782722 684034027 875700041 787295845 908695066 899990364 925373782 984314533 992007867 138004361 459724317 517759761 611367106 600523292 875186129 409828517 882761200 760442775 796995991 98134566 99829061 415608165 533735492 14862713 643763938 899005191 966695598 84753613 753947140 495897316 957629004 802424049 879181089 474038832 615963396 404149989 550689088 415151373 487191588 566974762 935834153 920630699 971627359 723116067 860848366 136275187 428977876 665194567 685975811 933680082 945774740 26307378 106735788 210513386 657503409 342843647 856635480 706024331 840461268 191290971 825790651 469194714 867943478 233381103 344985984 425160469 611707845 85789627 158023170 494002929 879113054 568169446 672670616 262514603 566864888 274219358 993477217 674958597 862348574 155743089 538604820 281490356 379846859 602887064 944706471 156537675 566463252 96597346 545268376 331581486 456826087 423188927 995902533 251111565 809583101 223825037 780531360 290493336 341097645 346853655 383659006 724357870 992043931 3588562 805674474 234104237 708334785 208079324 571324958 875620387 897292001 718347308 963367991 787778466 839918130 891410398 957664168 753390188 836417706 385257822 389860231 227659653 295823413 885979225 945186863 945174002 981988155 566077636 831019488 447901242 866004550 936952130 948503418 490696676 854821495 478974207 630481340 181302978 366284704 5901360 988810131 661150710 901746774 433230526 780237866 570052644 913688671 415797732 901426073 750537446 762925718 144145874 811412567 834597935 908210674 247308921 332841214 232860660 243411476 397047483 844507181 467474176 844364071 643616782 668115880 561078069 586625032 231108576 297281942 531829499 873750794 993003527 998824496 259042654 964511338 73732180 86189732 858892979 897401187 481722078 754241519 261917377 910460132 180004778 714227680 275159068 643628917 83148203 305457128 280220136 520041580 771513472 820909184 33055102 462006245 22885696 760322564 613831106 790013491 692510428 931072854 423688135 964267709 212267580 933664300 175857806 656798553 786123123 926754841 460962790 814031708 418903304 764695708 829423921 973390976 941565859 988051021 891323967 900667218 856345476 999049833 67320902 68769348 509199379 577965614 676138359 791590310 822039293 944210594 785572102 937766815 490769894 988810130 252405484 433286222 472134682 834868900 80360598 195645963 436720915 517587089 701502371 715901044 60576569 276766776 270919282 917572444 111999778 204000269 426660993 760868800 560692326 995778457 401164740 780393971 600737336 697417522 51715064 965950827 943387762 984825647 51478873 671215250 463351781 947871001 539295288 783175598 550076889 867003591 219624957 848490365 892377217 974170611 394288131 763747277 802840808 913003145 474498992 770468728 117492848 697029399 682239753 910011877 245136727 340179427 605673034 729617995 761529146 878714977 22388267 462126516 433044189 967954456 574681769 854306572 991845089 993523998 804165093 997310658 188530512 348169697 801846788 944164753 832596355 896713591 983338899 997655787 189601847 338144424 130293540 134567471 307772750 313741012 514672731 977526207 54709653 638093658 647035520 895053951 704138886 755250658 473393312 727847333 366443087 474062998 794188932 885664253 69843657 524136452 337999854 901309594 872847256 949101210 915746369 980608858 401361351 456767187 5413125 276569246 491833720 672300418 195018203 748515125 211176850 524935939 205756451 276460153 259070948 597870161 307976220 973482347 962031358 983167085 429005240 881173319 698934348 918431268 214570388 662718642 118430340 451214751 786681819 896528198 50803801 452513978 403917546 763626514 528492970 800691148 302302180 551837211 463592547 865476887 686908769 981475067 830294462 904218825 890167637 999149543 951636253 969908833 643321965 691714289 865476316 865765575 808567273 872138235 75783721 759382882 882254104 932828087 265373555 314058054 18549576 889241149 45578945 959026177 507715197 883267129 63984983 211817026 319213998 438488567 60875131 407928487 973629278 990557762 946181189 992261809 959817257 963009297 636098982 782671460 940486329 972540444 284040371 941319848 59319339 739045565 228814371 457240614 869637333 921079487 444222733 984382150 689338437 699096266 799055458 960864440 847089526 900735378 80318125 148946295 679407253 997064119 43959017 875184799 598947900 926157433 805971026 894336732 890953781 931597696 466715782 722292077 528991758 848063157 288591799 740597100 883607504 909295886 188148367 529593542 984787492 989034085 449051302 716818985 941096182 967199585 807349544 906844640 469472859 553632532 676665184 803287992 485024427 669996532 994063874 997230690 383640403 763589071 346152634 555304046 983871311 987388239 434154944 860456204 242115882 738851987 444066126 532632076 672443703 907449718 191766013 810082414 25126306 533938630 20017445 767465635 887283055 926178681 880408452 992388335 455945419 596911444 329279442 367546931 319663487 818276132 499838403 892947408 213187672 280655827 314070743 747978679 179171898 745311956 298108129 396663753 281445416 455484549 822116341 888106757 382576659 448144084 253691436 975000868 851356578 875066321 386342648 869423116 983265392 998359110 318292138 995805745 659934141 981908549 277984867 723714780 435547699 873329195 614304790 793945783 92286364 894873432 370430936 801390631 848383665 958125453 773947115 863962479 153708286 608099779 780440726 892146663 43873904 103337471 632763681 717264074 246710625 254247693 295020749 667465015 536217435 658399049 779316109 780960977 950691423 981381827 85135069 534704569 590852578 854347225 682664122 898982607 717588592 835721447 56155952 733522145 445482654 755276468 798999783 814870034 241896688 858102354 783903173 991983490 411877755 824005822 972761882 974455955 510663816 965416957 72093524 470305274 57163075 954714918 682206375 873695014 337685102 786711794 531803315 543948935 883938262 915635646 966916316 996751436 806773735 963917143 481123357 738773541 454070532 678275834 576193952 609101413 142126721 326809211 627261988 664735234 353610665 392147376 806367168 886832282 722462834 749318945 428762378 504164681 290309817 868586213 497622665 538066037 73578305 905273993 283749321 576551181 469594601 822582180 419382415 905447888 919336939 996540308 660626936 804194595 852631817 947823511 292144024 416613311 677095056 944752063 483115653 676995728 777809571 878051379 989460856 996502635 505686851 979466617 628492395 899246597 677949040 834058037 610564538 871214776 330139696 479426335 303333176 806834398 678279646 765934886 396611888 459280126 890950517 983367629 446317035 482403221 314673004 550603704 551957330 967568459 349369952 635730504 64101580 543074640 66719482 125887620 66111316 676436552 857218830 968962000 356371576 673514192 952257316 968844995 914264803 939704418 53877093 521923145 657684134 660766716 13427585 408711960 743259749 797173825 798720428 846517047 301150626 783602420 801903994 974555396 349181776 766509611 189441508 471912667 807041286 844220700 69177062 78062622 212086200 775123922 852196739 859429801 630903984 711627596 812002429 989334438 602387033 761509926 532013474 990580074 685741762 950776653 961898967 988999394 720419757 875926803 19264353 417771625 118794790 472697486 465355627 487651776 293099043 763286063 194097688 296859140 302113491 426684625 142356193 259361469 788248975 801351353 656790047 845691093 443666911 928266899 57717620 276491153 865428386 973567241 755114693 783062004 105890396 834997551 565146391 882810560 135891757 819885772 892091822 905550365 169337630 243472950 460706590 672042598 368009761 371040412 41466393 589300704 257888468 609117262 138863331 670867787 108658016 667102073 70945582 627273593 877304353 959210833 169300516 823334263 173625208 358530162 320382579 510721056 739252771 781301444 569176554 771108772 964782546 976572875 957013953 986739684 958378056 978462303 862917215 977082448 782934353 831601798 482379999 503504281 997182404 999314417 421561529 849130680 7113352 121799247 393197913 854792474 820603922 979058624 941655956 943383473 539443357 610243330 851562883 981407100 708071842 870809469 894837806 915711655 3319154 963309241 194780782 548151083 124506359 520934528 747296405 967181374 570626426 944141403 988616790 996018185 629243774 787878468 735798228 794232349 537916870 858215169 159081417 821301735 623502541 941196293 956693264 991274573 132347015 553400060 186178334 251867274 81282446 887914913 859102796 871472924 91177309 211968528 486166696 590458129 424367192 813822428 95959782 228245534 708720995 868588548 73173623 719624195 78077892 727759026 50338995 436843543 166463218 490738709 811418506 949201221 727975114 915285264 913682017 919996640 70196505 210059701 489414790 745972971 944886573 981899498 14216604 186279098 19751150 77608978 51716170 785306414 336457727 675915600 964746843 968086933 49034539 350558801 849766635 935243709 316069642 720736555 272203456 526143188 351427109 412991063 285493087 299498714 651517616 705337579 843106522 994561647 339881859 626434411 620072707 761625413 815640086 825742331 48555192 586553208 170041480 558299038 613228345 873464134 722597823 848661339 676110412 798376313 87971619 528028333 969039375 979567905 436985484 529929136 361655576 674112409 296420267 629545232 393908148 929023353 8283605 952803397 104511439 135509469 534118265 751340106 673002222 841688976 725419086 757246571 570788948 981084911 511688916 958629819 813951732 985771310 596390849 683075184 581007275 913285866 688325283 945749763 739061372 838089426 485866341 486842640 112476782 508917889 337150175 897046657 307127079 960544935 771948315 913510037 799799846 981812013 102607889 506048959 401251918 959535288 312968597 350774882 239336730 678469609 655868470 895675295 101902872 415337327 74384828 584066929 477146315 971909851 957050330 961710317 47207924 228109610 755950969 883353958 961620564 982898216 369861047 474002441 836926055 877844348 454099566 824074411 236701179 673564331 800188902 875831461 639880339 673354847 104455292 517613294 394901081 575532830 124658479 779084877 212897078 606989024 788324010 849961387 707219750 883371956 415285132 956505735 735740563 737053181 709763916 759490075 132615878 240170763 690982943 882075189 804584497 834265322 262582542 539812299 810738734 832691286 301606085 963260961 523119690 635707831 186712286 592201009 13134844 438260234 941460870 969178577 554053222 781146304 217582366 423584218 58194338 808693018 748047151 758098960 639029962 896720745 826222791 909800039 838177033 976450261 153245885 955932801 608627313 772240498 672993376 794099956 685591982 928267487 324304173 478263310 163889942 609920579 116954550 519255717 268615121 884359865 829307624 977154007 908835470 994589931 658221198 780045456 481863293 587872698 298044531 320860412 979271378 992237813 938970601 944767862 495529897 776401578 193778042 888851400 978032590 991153326 414026610 467457827 926857610 963542042 250344669 983683176 371879107 922151252 384699010 962845537 817748847 943663031 354123584 772414925 177280853 993554484 885931983 943384353 524769868 672114552 606018419 993454611 42290006 117090845 977726748 990255002 516967204 550020959 919568119 993387786 687649628 949595053 396984084 999049021 925526408 930007457 229812338 844894083 280973070 899790167 325577976 436738938 807225689 837815511 275426469 283191527 698473691 908327040 455275177 840023635 386751431 960023751 692781203 759792317 1726849 235386586 889661825 989030699 947944783 989030029 14298955 609451611 192359097 711595087 936297081 941177317 6744127 542166258 949642270 979664396 978023157 996786124 625005158 863873563 914174770 939769076 451109205 976667876 375941413 916130814 876980416 973270379 259147492 714902146 761370962 839058728 785816987 950613274 389477242 407184514 746609732 802817011 632515127 972462998 712819951 865704131 429717610 694295646 237701854 765242797 39392369 234467152 464820737 601685425 182288944 352411734 404252880 500025292 688922641 710228025 867371198 890580967 304950601 350457942 323673917 475298986 57574030 292941133 364144230 365502638 712309888 840862698 568220417 919310550 335740369 371504793 941499468 957985696 282814049 603901456 574389481 612639475 98881065 402949990 638610779 639352034 758350838 946087369 68581892 214627607 451429236 822867959 999217676 999344560 368222430 560149392 471597681 902989672 620960618 884871334 772485637 975474298 952181311 994349052 292943477 656025623 144429933 656080171 513514222 911417159 174905845 833953000 465405241 671576869 648867254 978600910 996710962 996948340 111939274 305458731 777819375 958321356 845438133 917389223 66402471 405113240 809382328 916572814 569324421 713647927 595511593 828413054 593980873 997742329 353581294 535850401 100191423 651975223 901234594 946631968 281467906 939981834 61683914 325861171 862100345 991208263 825147879 906756570 287493773 801149309 591403776 922763732 137139961 923406731 963568073 964787754 712405638 812716670 945490206 983240968 21109672 353650397 606828074 959723676 752336415 829402167 161701424 163991180 323223184 794528259 944448430 964428801 521821524 588453904 565453111 709119010 417915405 578864186 49404153 840099718 466349848 730632354 415361928 975786320 198381494 490037935 313138046 777051636 303889770 585334410 616785997 986653587 626952417 821324473 75254561 360177853 829972933 848145204 81202020 205245050 967446509 992038804 695118558 781255344 765456341 907479858 699521803 918038882 952639541 956898944 139164393 820097395 46060555 394769653 842210657 864152081 826708489 968467083 721108536 863332226 85311033 978327491 206668700 300490242 34619146 245014166 172001533 693184136 389043471 396978509 936579392 988736451 859516278 908442056 350057349 417838474 150900700 619667820 897989277 966046713 735424219 871251730 514787596 900678551 927098549 958970285 14560194 787112661 608111773 773132946 219650484 756936455 365196634 706015105 116324518 402698194 798189516 853999878 268105509 687316358 115470637 704844012 288695671 458739181 497732197 559800529 790918239 984685496 66686484 768907757 404944143 702605737 231605128 894667500 943244879 966939302 182106599 417884535 240894061 947367953 674164610 931084633 546330841 558457666 687923636 849076008 804750073 952752379 810198582 880005719 199122616 625610830 563306980 604784206 355580203 527747808 913457537 964379801 91965478 849083732 895428894 988110317 41453206 93192618 22262147 258920669 218773352 263820013 844415163 921544205 634423667 972740848 360774658 400142109 909491159 975224416 152472586 834383303 770338536 964334590 343711186 659289541 774510443 775640260 597848565 863114003 227575102 285725575 217101714 568738556 767126890 889136319 343759390 952137656 383808772 807348363 933955446 957679253 634623387 904508766 778714979 884822002 1654607 401119902 479914534 496546920 432332315 629429907 63096083 63168697 77245081 148410931 248190304 346024418 916225695 970810449 541283831 814771971 733621714 883309933 422647671 900717468 544196335 790062155 610977523 863474514 920477842 937927554 170703781 432638395 975883790 993413709 469372402 884711469 351861581 551168754 889383154 916697350 210280028 939439129 241832347 720171130 252283733 355986816 193501057 755951995 841164021 982579607 914414773 984391768 156392069 971144467 267682597 940584113 367429480 625374856 229519935 297707244 75961079 536437636 233766634 242627312 654695589 719321040 281798113 469355576 490344903 977294264 481309947 940207866 43706477 161445832 665927848 915166807 806850293 847571945 496724492 539377726 98895459 866073846 362734208 805681040 578691217 907273309 756553570 792733411 73351374 355631186 634477894 906748062 523202871 546817245 770799641 918042634 52769444 541285291 550268374 970610646 181467947 894488386 863329367 956053553 137242029 634889111 967657570 984517228 457900772 627569455 72873557 863586072 256195237 542067597 960107687 994850345 747015181 885938843 959444924 980472878 329554433 834578892 253019599 960172734 249011440 391513409 480491124 484654968 489450047 901635652 178488779 947172676 548138308 674721542 610027083 874252349 857637521 985658524 115657504 495729777 360570271 674284140 568757018 570358767 352004245 740990175 7862661 271726070 748547697 815704940 34606776 479768368 869416396 942561817 217298747 842250852 490858002 730407036 271539262 327247583 70557002 207537672 534668044 709153118 423126182 809262329 670455099 686610679 280159725 471742568 661435916 835550056 202460813 801446578 291196007 638001973 574847530 725639041 617739825 846644913 607958783 625930410 366081628 878647016 521010440 833266929 817543518 939021374 389225563 704644055 387616670 647607761 710585246 766818172 579298911 780829137 223100919 371660416 703399104 741781947 415825880 699892741 539191832 925624139 335281269 411565169 751769892 806890567 217303902 715630124 439891761 477730203 349846098 472664200 507317029 661785936 417845875 702928643 626441588 718803396 240966943 269057010 46545215 716698603 74069768 967311922 755454191 991559108 319819898 359015058 281923023 767643808 988879400 990781361 78005678 625677860 699879340 711203189 894239631 955451291 125348818 144370839 611523790 667581591 79176425 953357210 768814434 963946128 231998991 431394767 709121781 870446352 83128715 491666050 176599082 631835516 884577248 891980946 229845432 495398450 180913271 703292429 233754656 918001254 579788848 622115766 17413820 715117008 642460759 761991614 288064542 527326390 744902061 820989283 359752796 926139910 61080375 714435365 434716973 718098065 457077127 680310257 270001065 773469530 873165940 908061631 996300774 997949479 398579060 881125038 2815832 383373429 493802318 850994613 58193358 155964654 103097131 931926458 764176760 992866368 250649215 266315606 318490744 533999533 473874220 716784892 610370632 667708365 529778858 911513255 920828627 925901543 821429624 916552818 943915524 985481295 883628624 896755053 35482176 896921946 776118859 869544847 243957134 965252924 389503514 972105338 395657197 489444596 210900451 522833931 941593051 992025642 804232657 929676430 322576562 374996433 666016343 760044273 301603266 991845094 178159817 872170479 857749797 925659508 491241353 871327464 145876501 547075320 632845265 812286925 145076373 331244165 650590167 667742339 709547750 997502186 500109 152444784 791851442 901279190 530168439 978019538 189377393 440948935 310801506 459736366 335238342 934290297 334285569 997183772 300850356 630935459 95970308 863898948 315469710 965290393 116145640 415487895 239217904 726756254 541988718 762294070 970681692 995004609 388294612 568750073 446315543 964887470 813951747 934708948 769664344 907523944 615759940 821516513 706490034 724885357 91967837 671755089 97483748 371228729 681054051 829006356 119943981 190647176 23349713 563381148 636594919 953783535 4933875 700084990 721876465 965119343 838170585 846636621 59475420 143923342 480689148 963336918 429221265 860409165 286812489 967598485 187529425 285116976 179862675 272323967 42050813 545825541 396102157 640537036 858292455 931950147 290756056 539685711 356336038 843695724 304588859 750851271 398223344 869994820 675988739 837731501 49014479 976232389 191862259 856520618 194034519 928267514 396717219 431711761 505577191 581138830 652097762 968526459 112940048 220132340 383936076 548783426 585611604 820035110 4386222 529742765 763423022 972290782 860504339 938212852 73754086 108734793 708645232 865696133 875294708 941980017 984006620 997788669 536588999 799344752 603845912 620984271 880657338 986022034 370470755 517335356 647675724 748262102 463056017 508609674 204947116 530882181 613767232 654259203 896408325 966135277 977800852 991703914 35292124 541356378 992094642 992516324 992290897 997399606 249224863 739320519 768965369 913107823 358352706 582975903 889174858 993640403 849281319 945991525 450602691 551778071 207365259 933119276 197123510 804975321 521087571 644172936 824800876 978091377 632071862 797560515 533042344 571776954 217748890 777263933 326567684 927333947 529079897 959552682 66193809 488469665 315037097 465575251 853250095 994903948 761233250 978138242 884873124 906116748 885055794 914049629 670525402 912779564 899007370 920228612 912618618 957734668 789305373 996017011 862071102 906103120 26763413 699668579 531454411 989706913 203910152 592988829 489757313 738413322 653095057 886692351 704059509 778776113 465342385 799643696 304481848 398660971 141022630 256858167 506204577 705928879 398565073 858681482 318739311 360001101 583792830 625395219 995931065 996186226 875869422 942361903 51786225 723378045 507791018 611401251 183116933 391883578 908560986 980271162 798237788 978652436 596129529 605734207 412995085 459061867 858729083 931127720 901140568 924466916 642952187 724364475 146927979 761934159 374393644 827989736 725851515 829239093 116813687 442140965 187350825 815673161 384230208 932052802 549972708 924764879 471909080 748349640 14195384 355575072 43914636 432566403 449213532 895433145 82336748 711558050 267728325 333073961 204960677 287704140 789725574 934405642 817116706 922507915 520496931 986670329 673878517 794597487 974207595 974901543 68566741 642187817 788428219 917049842 138199772 820646195 55520636 269476737 53070865 383606109 942690032 991759955 450731458 897838850 870741979 980352516 921088347 996620917 854909047 973677867 675957958 836698823 13757095 908462862 147102138 953483791 896191453 957743172 558448427 996507183 300348397 341670765 492920655 873000045 881009715 976900939 194641012 820253697 313512697 753010884 895512402 903203082 368944043 640435273 856015366 885358861 649875795 672324085 228231369 969853064 55233609 483274238 544303774 908348776 164992493 349462516 613385646 874774373 19706729 737985718 515432138 867609808 167588795 649987139 485104560 635343815 914978791 924443279 856202171 866986028 212563715 250757595 419760332 878946972 998379997 998686201 666709411 729265329 432023876 726092543 708655810 720169809 118467779 950581699 830909495 969467179 499947588 589317547 804815603 984588887 125715783 774433452 292692308 471491047 805844214 922050301 288979926 546255054 345050165 575656016 757703692 797159983 430878885 967893131 723696920 853565285 456468156 746262164 44761623 216381473 848568333 911442319 543183695 985990666 899209617 937992459 238926343 781934809 896724209 917432212 601529918 834373548 703198845 852615294 452892095 650320044 209068071 627692054 264389693 789746705 279552643 658185441 402445602 947947682 108774669 343013594 616358460 833404008 924556683 937739023 504311078 635131624 764550025 803237699 393820875 680876008 985239623 986503057 167114851 452763831 393292981 924654440 593206734 667986670 340566658 787768487 932391812 978914849 737339791 889812168 340982835 853952078 613765380 677602037 985987745 988715835 823530669 839717866 667349418 697358885 960234345 987610776 32515132 571192790 719975808 768433381 242139470 503543450 103799959 482834482 704443509 778250414 579198839 878795605 531777283 874546749 383327496 721324860 315523508 905227326 703949915 822616684 311306602 937814273 112696442 270232850 940342199 985677090 125664601 428812456 950339462 997274098 438407882 617233462 894420717 898771674 976356264 981669791 638933444 758877839 215684157 392158037 838210405 955783364 190723299 673401544 285050162 679966839 608948064 904960816 633474892 772692754 423337091 902388650 671043127 745184218 901511122 921477902 749463608 848776529 970603130 977954139 909327791 989018566 929270640 961341426 614762787 832732475 99417610 319359411 635281945 757161923 56014651 810707618 100798483 276791017 410540496 572725805 403278379 829176208 805439760 975068487 934108314 973395834 82162572 889812561 267879806 454970239 704359883 766454035 127827334 967594676 337983177 934527613 94748391 526951634 771283134 991906701 69496481 951629356 636822751 990330268 70274377 993571652 125067913 494853681 233808348 738548523 539897631 900201645 523943338 664395654 927664773 976665446 196060331 269921623 874558578 966146125 467287703 744889265 775639284 955842883 367342368 542062978 928511404 981150840 460086083 798781995 490911726 885135136 70572961 856740681 104757151 225242816 490175867 638791722 252161730 791194122 517473764 722781880 553787903 649360660 559583168 880918223 603844076 775525638 958067752 990291537 811158858 997649777 534968503 751538406 735678831 915062776 660385256 924732730 496189875 656731820 146874123 570523041 470556189 820074563 222834101 506175053 981659775 989405337 796009793 953156239 124032723 500918913 290667630 758255954 549364873 821574926 680737112 833880790 602684164 870899370 715913222 826500128 367953180 603590856 717808099 741504656 863840708 931709181 388724782 547049887 46951451 127026637 98961690 369241201 374324672 736199308 750357514 780165276 458508373 800310818 34828085 354606447 31616997 278551821 681097912 970642920 327800885 863355894 841725060 978814639 871429453 994455918 132638575 609528151 470306661 507389841 231059787 424752878 740462751 996233442 116556828 795828055 285270581 817311613 969035632 998666925 922861689 996542493 76468730 496663750 466478626 940770875 179096803 949870649 909999853 953072920 548419366 804650071 751449605 798194662 38598714 428514842 598237554 815459894 384394895 418539712 435873967 803415502 425417600 777207846 261529649 900389678 435601244 471621966 612740442 756375939 631367917 832462063 259576347 770815131 234367317 556875539 100647867 453696693 967271854 976964240 278037635 968962749 474496010 534681127 128052818 460751106 958394678 968911582 408256292 618170460 20725580 108753026 255750004 735480049 651528454 749298478 911251827 983714271 750721846 852448268 449694879 647377744 88391865 328073154 832218033 918967097 756248087 859105735 656640162 853728205 420171036 850643356 911231801 952968123 395433582 451179007 165583016 566695046 778949441 851554792 597231545 610029099 783932910 947056008 402498426 921957060 846846140 874661329 535892199 659181092 900140637 932833461 304368059 360660306 268974895 610502030 536722387 782952093 805481826 982186425 622327381 681908398 471389077 903502339 626282936 896760435 165638050 175341614 67367765 475845704 578884430 923039814 517438443 539949438 333378619 346402976 705343238 973372163 174401429 872620233 695458547 891737544 472397508 980660071 896048810 958193928 653830623 841580379 70324304 98637992 551537571 905891532 185127385 362698275 706270944 796100787 936485920 972755631 676257463 783761834 993783240 994172327 52538421 486510102 333874649 992427768 684006490 910746402 25375206 670261819 837422123 912012593 830474986 868764952 462197371 684318472 752398126 926187594 608800588 663967499 945559344 962502582 13842466 153691783 610859940 780460002 356141594 829802989 724607656 946687457 889034944 989348257 571698132 930115673 452958357 824819944 131940322 770191982 578098649 582578373 415487504 884566153 524740763 583429004 278912023 432261869 840034692 939858893 673698751 744791722 352193027 936652843 753230258 891717703 474693400 868200053 91078013 688400526 172642202 651744619 773815018 994101668 574454834 962439942 39012647 211831208 315757988 760438879 491747872 672847897 55122818 344655206 585337644 703137782 298183134 410058399 379348182 678224155 692394312 864943208 281877263 928534157 185193462 983580158 880937447 939934266 145568813 255268523 858456411 893564214 956343277 988132250 407547550 558071477 392372156 983125166 868305704 983353627 919282354 981228448 269971194 777854317 51575092 474795424 676482611 838616269 637517153 751010511 830799718 853252310 950220985 958303138 883570258 915068297 923881025 931666224 703031257 837867246 215360714 350637079 540570151 705188117 402088563 851812948 469886482 903145787 246852047 435895531 411202529 704551471 270542739 983080121 177851297 793746673 889663316 902003033 444567447 584091259 605438283 908375619 604831851 786691282 690450461 959719991 815780369 886686642 684234513 896436277 300044751 634996361 109765787 921358295 406239797 722971473 881083604 890167951 370836145 879165212 884834466 926400741 941808855 989428963 57801677 481431093 654473054 750543853 879127610 996827766 606420124 619407410 76808836 882981153 160816823 898553719 158882238 510637193 289650690 701322802 193554368 331875803 840551404 977895103 105418077 445068625 194537029 513750683 123254738 667821252 252549010 742749692 718088396 963129413 671737823 879666182 225793064 526513714 52441 538651025 436683530 811681702 809560559 845642201 136375030 794731578 716793521 738479881 167199940 565508305 366081887 694767653 622007118 726529969 286933504 334115427 926604315 943685875 472440722 597741611 473685332 843265915 749021285 925146971 109595138 275023093 899153538 996530419 733417954 824446458 836403544 896008855 674697393 877114652 751524860 942881158 224026379 765413636 906221384 907871211 23140041 643632634 496372159 729582157 198381270 309688952 954535198 966681813 364483896 589896684 279972101 883629295 316537514 645558661 245701843 908782988 662568077 974867337 768931903 878790420 671531720 737483935 727638687 985962122 294494816 386340977 32729532 278258428 339450306 802381830 584960942 952294648 170278428 633762704 686068756 738604097 713378938 995159525 213694240 456272790 642617340 752253646 664355318 945557925 307223999 890107862 102204911 656793519 149759869 600355749 508188475 837635360 346698250 884375935 737080030 781031124 511852500 971395992 651868557 746983957 183278634 727140623 921464415 972425442 916866484 961511471 151013580 823123358 507456712 686662549 834228795 927819024 673640081 780231601 529714925 709039145 106069359 616629280 246502057 835896687 394186180 636099369 712010947 956977807 549091520 742550721 468086975 922778145 632429186 811386516 846111229 870561952 753694395 839552407 869571090 950020687 136271981 624073559 313976752 820841974 733541371 927060445 359653769 471517067 181812429 865264317 455010395 533093256 870215821 990466386 903152646 983480777 781508986 824904312 382051175 484023272 231517184 657261368 59768177 505526621 178224059 758680242 852445995 953981695 970066356 985673948 495934086 823316019 121375482 407020947 535616528 862872860 404802388 642293415 425769836 919455242 353302245 745650358 373325972 574846225 942371096 967326589 724667105 998479989 210092786 937771059 889437611 962303113 324546544 561567083 855062638 870769888 24731205 517847854 511460837 985497160 13651114 106462578 988958542 997128153 703351983 850609695 328432661 878257004 646586734 903628181 421619589 466038678 312812973 574532083 858586660 874400750 299943029 651368561 541744559 774996547 165959789 847496047 917562778 989875680 181698069 658735873 43407800 176973155 831813965 868857840 446266394 917963562 403485110 484876703 763449335 811004235 159053453 873266359 206873040 553656423 1282532 477919158 661714181 775307502 533795330 542095581 399080773 828471465 307872288 487453480 907667799 984775471 754870443 832164576 179474095 389313563 737699171 915774738 282967861 475563472 720298435 934133419 537370635 553687458 965627268 977255659 408246287 594423604 17690675 356495660 460709248 923857919 312927971 315839614 160010815 224217408 538774910 550059200 591780146 778388805 951064089 953852972 264978537 526483446 281231791 765122652 817005724 861605225 791198746 951961864 701105573 706393199 567981237 598755183 675105789 823618162 97648896 690135854 326268555 499892680 624632517 954129291 584532082 882249061 381029511 679792035 26704242 894574214 87839196 194193738 816441646 970971697 708048937 985521530 94162648 982157194 927564079 962806046 194639092 570253410 503449040 923678967 738849127 905506219 89681016 491012743 880811654 923885540 507551151 877798391 617409461 689873086 453547621 746653074 832022917 970412777 743460414 772464693 675949439 888130733 132371453 397327534 130866260 645633897 335422352 653820834 687979938 797265096 143511212 805379674 860167390 950538841 104071186 488402773 553327514 843378189 710676368 874031644 107732542 815093292 613989406 783862763 724300859 748257255 92464376 558313659 251533333 463919042 415697174 802362884 651792728 906753635 543826531 787910136 900999807 964936777 974417844 988045673 483599996 649687917 100446611 361234494 102985106 144229936 533429095 940166065 204690930 667151523 463994256 531485448 361670113 480912785 632946569 923017763 734234912 931093316 255433764 497663737 897811156 935105460 192652310 373165939 991086889 997683713 955833439 983509387 328759425 992966997 436602472 522772236 127063804 601983453 308131366 751972179 769014669 893214614 966672434 986142552 473362098 805906573 965874134 998150081 883816783 896470957 839744870 924044585 779243811 938757178 99465327 516076347 541486058 599394374 384559153 717791909 733487709 955520177 517168026 590452649 597096124 635469840 1337593 490545603 374759736 749071564 753732794 761147330 390387663 635584526 996489476 998764461 547514754 935609946 628248029 662979369 661692624 870382847 731191964 874827063 70582959 464085066 326051127 689040218 85573971 258543001 297990230 432285518 126707222 789646357 199376098 244118215 489836551 710926822 585410348 660881338 404726295 576603314 549925753 671036062 744388902 792615644 361217673 754438016 58443957 746384675 549871081 737324098 1967399 50217864 869042330 961086423 915468482 950518387 362523488 394158869 782135589 804321650 219333170 287548265 676738621 750091204 760902045 876276286 322342483 477677377 13803603 345789412 503405661 957838140 280021212 620889717 91584528 178391648 737313104 787790376 973253559 980223273 130419887 844502151 478252177 632475006 183616101 929358534 967420962 978249770 400128149 787719094 715286990 722078588 486425669 846204859 417347044 709578899 590498913 603528633 54541263 155303490 64253142 939312063 540036219 544396539 802780307 834254506 862357690 995076089 109090265 950812194 719386742 957981734 162772450 623808919 131334704 837931426 602506153 689101435 35107427 787135669 759676047 802153036 571769051 865460507 412439582 557267787 43379131 103402738 384807523 980828818 680109561 892557295 40258114 609369187 380422188 395066219 80614911 706297078 256521106 928568278 133648692 290882342 835339311 918999196 471495087 907942592 159906969 169013772 527802217 687653500 304757222 470949842 888116814 908763182 657646819 921689247 560285662 809345854 657877038 722571296 95801732 828378995 111723219 777377959 47075241 486616220 834470503 971945873 919170436 932444731 82738525 277970500 914911207 916584362 611280093 638671718 336708705 696342126 71553711 995749398 961288904 971171568 722851123 919337909 402019217 970140043 633669313 950309573 847568070 967739945 655579507 670387610 681517378 843649422 260513388 412271237 122007554 910998981 646123018 707545454 594644913 669193155 70983209 126623362 952630716 954146794 792904580 880971063 988582880 989410309 909578974 972555361 22292979 416531177 175605823 382635568 158056403 224383761 978025754 979034371 428149883 600263570 683983296 854274607 617159511 656947837 137468017 632610731 460347192 760556850 363203293 495467587 760465705 864730552 981686518 996882906 110297865 287471333 506601832 696006664 603939433 935221881 98098243 188437904 349169778 401405958 503146897 822921686 860454416 911302038 980351058 994206281 597012814 893248675 215240492 524021324 564227648 943763135 395280243 875591782 283648724 708437391 215051240 539500864 548561625 750959922 148363071 986369248 622928730 718617198 87181890 434269633 675001624 744201034 739170316 986266109 469896653 907986674 368213671 553388648 349177642 860026549 6437212 407558947 276980157 396114523 85253115 624503947 363194051 415858133 539746294 770457524 98319789 895265891 724898790 937700318 682493317 896558517 121065750 980978411 544070354 579822281 119962424 425357723 988835715 993339122 350661036 815968753 92423262 584192985 816638354 912450741 494574603 562850487 215758704 690798429 379196644 517934304 83980219 237000368 848776924 990525407 276852882 315385869 254166607 346512781 773484862 841881311 645975575 992581393 123236395 142842869 526214198 829297316 783366911 788154587 846399801 926188016 548138013 680374818 180491527 842433524 90303636 657390072 110860012 165531884 572555230 587890872 298299327 961092064 158539637 607857491 623198928 873577111 480968491 990261774 108245494 841141334 950376660 983194876 894034892 907125958 183384543 960674734 781225698 886416559 985409393 994509708 670545049 716404034 832033517 975051743 712658638 877252673 359090436 937395474 200527515 894178003 6039416 502791426 10925860 708083245 974356288 989838001 688083204 827017102 886457393 969595884 723253160 984163015 448301667 998996349 621015815 936968340 243502806 570946273 8101967 820172787 926906632 952503333 507991284 565091155 184506824 894897873 622786944 765021926 795299655 906671186 678724810 850487768 531590030 890211543 425628334 807643584 231044960 556454116 633601724 942464323 481712188 520518899 414746031 626109850 731613027 870978790 69754216 79651102 630232691 810044613 269378018 542128811 482057869 767973440 900135903 942758776 829320656 866116822 778712570 938438376 412086121 432604614 792769110 820500690 38738224 691129431 617054785 665041630 539180904 634121998 233003065 676631245 115109866 500611643 135997214 484799312 234117013 978574839 690639209 998822210 28750065 982707285 169693582 363193209 864481498 902007581 803035098 810715397 793947231 819863635 539798293 983861704 110252126 732370695 120518610 833394411 119543987 286527765 404235610 684742577 611290103 997294828 67627028 831688856 92071046 129466766 829722342 962402479 374418848 440257875 110209194 227845850 810551840 957732700 789883339 929479371 513761387 886192665 605444376 763320615 676781470 774893805 585168158 696356600 12561126 452324697 249867104 746990390 801781345 897572729 624970050 676047737 732606701 788479137 719228219 904718482 209998412 429829462 585669345 905977072 560345130 608546447 422580335 904065492 661252251 889619783 363866987 576609757 198953140 325329812 949067301 988184276 126172899 398892948 126911530 873967366 473340088 650172320 497520480 861944727 828401842 852682224 712677420 719347064 32715012 512663439 65947225 516442029 723303428 900522984 998179191 998366862 528907570 704008809 487543473 949666307 992714990 999022697 858676773 983331971 596453509 844458215 210990808 627680783 19166153 427515408 333224574 407497512 178689474 447624221 520912515 812016897 611377418 953957601 457804407 566333896 705122021 862050946 588335454 826484170 305882464 637462787 233946786 705555003 724071309 923499350 197804209 883965240 78470253 515074052 636733565 937835486 457735110 814147805 852919704 883346372 834167959 886859264 654587308 947375976 612827323 835672791 158169325 158657664 52675433 878712039 650162141 954371797 545265942 884019349 396026211 882441671 615651964 624384917 737169373 942601391 230292220 415808801 566476578 634471820 666137776 744749706 940838762 993215162 875857494 935351413 366067408 674092502 410349801 972670311 629715705 764659067 641451636 650372641 885071140 903184350 541788431 598552887 709556207 857373634 375092909 393099687 526932966 769647488 939513863 971122800 347071435 839394788 133622389 485726913 949037776 992884832 922612701 984087378 210674828 607027124 659718423 992164365 897237275 929422458 927008392 984690930 203010997 283006823 512098186 932944339 654725311 905334669 212272513 622672048 966814669 985061581 441125268 676671598 389240898 560121821 90346932 116061648 718800898 913706053 507557405 646297889 544265754 662445413 821436237 992662463 875982287 877721408 877080255 938602504 625235371 739348817 568941697 998840734 521001299 697242699 756239139 766449922 813945625 825924087 656392064 860547460 241181896 337918946 479598211 988082483 746073498 963484955 637010496 887130124 497299946 743582432 751967875 805170480 872407857 927150503 907517533 964926986 535520414 920652053 475897147 481263873 365041818 631326288 419377713 625046041 321083328 618776959 119348397 930137555 23838368 376967039 832902053 905555530 362657344 978523915 126773345 678607044 439237862 612304934 276286101 627921022 116453146 306321511 189873652 364507190 571074355 992046323 681853701 824022551 85401498 195120423 727612176 995688865 513458827 895005030 835530842 898955717 374770577 618808647 738604406 909111146 320688508 660743948 800498134 941805235 832239720 873930079 669978783 813421062 206233710 632420691 586536784 896976178 237059798 603872501 45750941 365403141 532471761 974465255 790162372 837695430 422318430 981776048 347330699 744471764 652586890 857776615 947773081 965744402 790818576 938354799 107788157 154930356 381979717 508272441 763181980 977339466 764823623 940579731 809661160 981054859 375733801 989975502 406160745 417216738 204531748 557413123 879017798 981252920 486235382 961060239 944202366 946818284 663174917 756014029 330342878 849542780 387599867 504417797 154123729 865552979 610712961 704544628 659729594 724909949 253426280 522006429 364412268 705610566 890712833 967796949 880980209 898677334 154548670 992810947 822578359 869624788 876871288 968886514 346858730 537258027 866638000 965515605 536771124 592456301 425545332 559666980 488507863 732620531 902812388 911437461 514394152 937319129 521392556 824557807 496296596 889917324 327993816 422815768 486484857 612239657 232803292 344418432 58047636 541317287 982956883 995766811 556821514 717452705 435118232 853905193 303100346 788019970 132024849 506642261 745776807 829417545 888853258 957723218 289528761 845383376 309480753 618815032 641286792 688341879 53042325 235023023 831605461 947275571 250587204 548758785 764872654 893336527 118091287 454751380 886606835 909558345 599223846 868456639 603754931 774075042 526127477 785140229 471213812 681973818 923571771 924266361 49792461 785203756 183097307 193188826 253283922 743644471 576990191 730175014 942252831 994763786 904220327 941501405 200956142 996363410 938303787 997621630 995703504 996281968 157529438 543323483 812442641 866966274 568652715 585394959 124769876 422270128 789306876 845861277 336799068 908943111 335833401 535197457 476038396 639774742 707805895 773856216 815802862 879704233 976621620 983294293 630043361 878368174 623807822 671068575 748261181 909597139 974825942 986765838 950927117 985362574 324896226 711247895 954401416 958323792 337334598 410872328 22901182 633470918 575390966 803189650 246312143 793256381 675910863 741231969 327687397 590719064 564453924 594118961 665682720 804645567 615040293 897406692 45985864 245539097 646178817 963545007 166917127 467506323 717788822 998448605 337064243 566441033 851729512 872520380 940425228 960422365 350072040 632054572 971128247 990184554 694605374 893726116 188614582 614254899 559036403 676678006 905428249 995209652 598017765 983108008 700136775 736782490 610516258 842098042 796321655 991600105 681173892 975138980 428040102 447955546 645709900 840860289 535751682 640749400 554310109 829121136 257340427 878715359 520377097 639350856 515912245 944235702 441009890 834062379 647679889 657570546 929697576 982004132 780042267 884030101 550210221 861940114 708191267 777230217 271461449 986116789 154356343 865673769 809876928 972751051 18819079 590129530 692381328 991634915 536063577 787622964 901233485 968988412 351571083 464065621 102228864 506976472 806513422 967673256 546909941 625277808 785384974 853786268 663352615 756642002 534030132 777439737 814580289 892829670 163906174 758393772 564864223 774310074 823507796 887765351 966901414 979432720 68293123 990028506 934726118 941095829 162493592 259151510 918952609 952727864 483703617 489874306 534373050 909175871 744296721 803163392 109976634 155033444 463438999 502098733 162909228 578787526 807774246 851876272 114030149 114466062 854176677 974612781 754769669 965258726 552559593 789046021 236953998 689613572 444116517 598838825 209588354 309945709 59648698 493729640 805983802 989548307 234362571 966857349 312571229 576126399 135171290 319639779 957890531 985468036 326174172 431950402 78480516 702969681 510667298 657950024 255679972 947155921 277014279 739442509 226173832 614517918 65529726 731644416 732420112 858774254 279009628 598867516 536354648 802894005 371226557 546316337 620032245 949365802 853957781 990684998 775610482 832697731 365055647 641698001 381851200 725429694 922780470 966040268 287817039 408369158 796391901 991914723 789701215 797095347 184469468 831721523 603123251 932537331 932082697 973963768 179462227 511593240 548617073 884274558 823491045 957181458 693449986 912963422 658475115 673167644 302124441 622121267 524789515 841130950 597714565 957361804 197639210 926574509 489377012 668583882 296544671 540042359 926639147 993090779 98586656 387401536 473400734 593165170 226573833 512477939 867241224 900880660 287357985 891585551 223844622 957314029 518120357 703259997 397496124 775404459 859437670 883335090 9715441 867572136 637235401 813074843 838605092 952332734 297389619 636333588 171001344 627164576 950560608 974385893 172772114 468818016 277929739 575675707 554609490 559489863 443332390 903969392 550163110 799407226 162903045 725269969 791271808 988752834 480072795 895170670 86264147 917084005 405360414 928514579 442481548 811926655 745325697 834475893 314782670 474987431 763021060 861791277 350383075 457568036 710518867 847218567 654147542 839069065 181859228 646421477 2670814 827046809 209916920 461461032 52064952 992176036 267395766 647885513 809068886 967929398 933156842 990485562 463655384 590513410 505879284 601356461 944167669 945292266 268238730 318017273 505168058 875917792 31028537 192260587 649423110 834802567 452534609 952900851 795118746 896616394 249699078 772998834 300533473 616907275 853735874 927501719 527828796 953106094 172102072 966096201 741493163 910468220 523837222 820777430 749899530 951279564 188376282 298908628 171532020 192532618 640913938 692792200 557281915 841808737 907085646 948168901 727330435 890910230 471470832 529475545 747289616 801049034 824740329 996811109 117472836 774456981 942455325 992372089 199438498 326939184 613703855 711724670 411345771 833132860 316601546 610848824 900660325 916358169 169497427 492696635 335588532 632686634 947285941 986529800 710693827 847176597 720942489 901055719 691126904 758721444 875917761 950868216 536665102 796817931 795579078 923292658 477267472 972566403 212001665 823449879 325480114 549535545 307687148 424102949 15237984 953590216 926904898 973428364 129950097 409564287 141895404 585111049 54560941 649489709 413586268 672796817 986477903 988178691 880928352 895180961 460766924 994180746 734873541 981279356 312101976 563226881 697545477 857835046 655249732 751142960 33324179 356309970 94659443 734783428 880649819 942373653 164859983 449400680 797959954 958950609 73632608 752779044 555734322 890732789 771196049 795380461 188230921 221283141 124046524 273654634 25154716 639706261 182153687 811931742 377477536 679801214 653712566 775119669 118848237 365609318 275218731 334526914 87651192 963066265 947895585 970182995 625777155 863224334 187298497 725157433 441658224 621050013 148860646 177809451 183316490 714366974 213359386 707544042 340557053 924891427 190303712 912406291 43499859 222821048 487597084 916711179 745716747 773208511 664721679 933781857 985244840 992188797 538305153 934507576 115347928 599647049 358326624 720854406 513540646 741154522 330872795 490104594 990180061 995809940 189295859 341643661 106155552 464158071 698490755 879535091 749992486 904596862 569430824 798037357 699335158 716757983 871348948 943341151 719505266 751444768 887114608 975519174 773651528 990830351 630862705 740788456 163782236 621395106 96605871 968131465 78273123 772127565 564655219 961535268 533019680 650545804 366401349 371159970 840032617 953141116 827524060 832019341 646048745 948766407 651230743 682138470 804670293 926027237 22770130 80789759 844221291 844513290 909420800 936724945 520498183 696255309 598109544 602244006 802133931 976844026 810656904 942614859 849959293 880987839 190115596 828345309 237180831 356928350 487476307 686301122 244134001 405606840 499940790 977956097 860569569 900137761 375232337 973052010 65633747 204930886 114455380 878857181 365090252 484632094 381534811 952929906 260852347 401385786 885508838 962071807 18820622 773110937 305244497 456544973 94189195 394609704 631138760 660462110 872020511 874434638 240118504 581724288 929528920 961509017 621616521 697402807 769819973 929725870 820039727 980544497 395513870 567840875 367766526 697182304 311063008 320618636 478369071 778716664 495610430 545029635 814931730 942680633 718048216 752258965 309851388 574804712 163968462 736506079 744318105 760947008 137742020 940958189 501309513 580797751 608794507 967300540 992191171 998250467 472542573 895388751 746936470 873701577 922390809 954737145 382376227 453026064 275290553 521439610 824030376 923223180 778061707 891719937 298180602 759479664 397623332 465227167 572926149 759388467 698130134 991803047 485693842 613310156 502419937 997782535 61413175 763463859 722126995 982223328 357053702 880612298 443558540 939386622 381826641 409119577 92872885 437352960 587665671 873286055 31886746 991295045 674771765 901038756 633283991 904269552 776893264 868892275 188672017 297959075 308601793 451312428 807322188 942274170 335481651 535378411 530698839 769195528 580564317 913595592 28661184 287021327 312115419 702916199 779012788 896109533 337757010 407106049 871924034 942078173 441542595 782062956 604417507 919263240 251261060 596933239 184287097 502790137 988033060 991649627 75487218 261881195 311926544 619493486 881102554 898911633 2183537 754997804 620814943 621822928 472848255 504814234 477068402 663358920 658520773 833618363 889564253 931616935 50239814 205481618 374136111 717408129 809541529 847080186 325583538 544535472 360527622 766329588 78351250 486149549 551670518 674943095 189628501 544191781 602944452 687927132 491271788 653602362 632031786 878692238 881956574 916123100 994330844 999148553 890114491 913635826 843759649 887886250 377885249 423441675 754413123 941659452 902629011 977694779 244147903 344037224 517373456 860831574 820078507 911045907 752879499 948049212 842350600 936464102 26081512 279556723 275762273 906254400 748567709 949598292 425896710 431753835 12652522 407808259 262426453 451126297 842685074 872635387 361116410 759570208 800130076 826547095 985159605 994012203 242922778 487642478 941772183 963346659 226254749 382858206 318271400 976328539 41254287 304797110 673767237 851706990 342728633 786894802 206294062 989211033 255106728 546748874 539292762 756547521 542387336 819472584 680745002 843371235 610239232 869552595 323291550 840846632 997728498 997879407 867897865 972347784 5139999 799581438 214502865 890352983 290971173 292487648 237744672 520355026 996839300 997492313 310790734 655388347 558597284 853659604 471087692 473517576 45695799 55893137 633027249 668625954 114814221 569351722 426215919 839602650 823102997 875096949 101090218 748377062 700877916 836012662 590599984 975211889 937414077 975242743 666166633 965614133 3127815 982759192 489665388 806079440 513611892 730474392 872822203 986824479 923632706 964881400 787650803 810631373 507430678 972673523 762368693 906371477 6478097 978479361 18213548 134758719 411257103 926734817 951322787 989456470 434816053 883731973 505388209 930398587 588375074 767773625 595421439 985665695 169160816 408959446 938992943 952373182 230605295 233200026 852541471 978474655 842848622 979429502 373832185 955229732 114014298 650628683 500809050 720102023 206465627 296730353 702647927 902087010 635267191 945595417 178908287 342740406 54406182 56786726 160897332 404701167 176721485 322820623 494761675 536931485 654508091 792708345 480936689 841693326 651093612 896303754 849416357 994650542 731327695 803002872 369757415 783071819 711242786 798556331 823434284 925054545 590630428 940444850 338464217 837511552 13026921 970989012 893120900 993279804 842691138 949331445 764098529 863541703 800186230 862055775 251307773 617663874 764077275 881212390 179791928 187572963 857044735 924400348 732715710 983649613 767538169 885253809 301565079 451884947 73177995 999284637 191937170 592732474 490529181 699130766 890432368 963957600 9142988 982590792 541635403 882219821 796881012 837088546 869129990 917078870 225100001 856912743 17874754 572811250 39394747 105340295 274937469 560647781 323182436 530165391 203262047 773212016 320566784 625870968 474847116 579074730 236499127 429448962 407287316 942095905 542812671 605752407 941927382 961029279 407817320 768797227 475756071 611377924 760863089 796802815 818110614 824284717 287719541 672885348 419610603 833758309 655463970 841970136 774627564 960397539 206728670 542518238 106408497 222664226 619385436 713726982 229497429 945133761 712556906 990230625 105593607 672679882 386155393 491333082 297710778 890316604 375211322 654296171 537839597 697184380 658339618 942788280 990310376 992188561 266972251 631177516 544320678 785053566 773168771 864110265 417640197 714778139 398406782 721967686 680109612 761983284 947392273 958731659 458754001 855900581 947617029 978473999 715856499 774016941 993318136 996875340 406513317 584399690 918976156 971376420 878639242 965600458 56628633 338717922 759078080 843122484 284818805 374525980 462812102 855916091 9601483 128927104 488783879 528368154 269325817 498601752 854542009 877839399 762805586 825073691 343792138 381738620 518775058 837379264 33252532 508060878 883278139 951976753 337275035 965844633 257873832 986412789 951703047 966983930 416123927 922204680 318117570 531047101 845952381 880832381 902080283 912890138 956166233 964598052 762553130 840329398 905035132 983793026 989415607 991501643 461274253 570391832 972650882 989326466 167902673 375595963 870149123 937140867 338350748 523915815 63490274 709267252 991058159 997100683 346769152 566431250 526313759 962481494 348748123 403678245 219351176 657557807 834233318 917878903 327362766 388555162 708807809 794825220 310012502 836978713 956082871 958412016 921165559 923374879 22619366 171781707 315287655 411461531 726794059 923811783 907342090 939433577 489563039 998163244 301755314 821258018 35751411 428269791 948306081 976712569 976320386 980482505 854435178 864333674 367242250 979080676 544052798 948713700 508949041 749258683 961411411 974084561 330918983 954585869 87823994 817135534 787853243 906996224 507950831 729288846 411315749 607574587 593444512 624535593 698084307 979257251 828654853 940247950 587574299 603413316 22054744 807865440 328003223 391953948 324402080 788079294 534635264 746638305 430858004 615043451 555796024 641180616 271685940 290411898 333605560 568823684 194351841 943016241 177148172 734803996 483815175 670746454 800987001 897716432 70151278 225162135 716467723 737543960 445391220 997622984 981419999 990104176 247064475 771869513 934706891 962842888 530519437 947992257 566468415 713440861 186404128 613855937 27379543 449923602 913969051 931556960 56074586 897758039 564258371 763615840 99192893 633029732 860918622 861449316 782319369 844065167 287600328 335634139 656093282 950792787 886265415 993195191 220226444 420325692 588658573 864481019 657414272 936369232 820410015 886231458 769744412 782795828 885563593 913709111 952050682 980684615 497233430 561937599 874035106 989761367 924913140 952563308 658469065 842840451 377159980 463648193 788241277 855163414 881198717 903873201 743581683 833196819 172169529 336698924 855131026 984881405 193119902 770326465 227860602 729788072 920650075 997728742 559807679 932623986 585737641 911858341 546704951 960350036 861143978 927460604 222968669 659336003 839845677 965139269 830395358 861412050 588697459 818732745 419248366 752149570 463480347 545024815 540083889 673064206 285813187 754714965 273953103 322706779 531817097 737246169 362961875 995039985 352170942 599355205 236102099 262622288 420162978 679929307 364135209 507490801 801566333 943878958 394493973 442513771 417026480 579996348 589802940 712743335 95396575 427177597 745186827 816101964 253960021 298135151 446003160 885277693 575809086 747958114 876069008 976481557 460394105 818265294 451166661 679861765 810236814 915652491 881805569 901176024 856830106 998946784 862767090 875175594 413607123 915538385 254879336 606232735 405228065 459034800 940222460 974304698 309543014 996600292 876268643 946814986 657778823 904778086 595903594 829672479 188624719 310293493 862074577 867792536 814462535 836767653 978740645 994054835 66976943 297970985 88188772 687248818 558746164 739415207 727910963 806717921 857511641 860179641 668818426 928094912 326801979 685489370 460700585 985350825 282017338 417879613 246435975 545617979 174145474 825621144 202380081 366654034 534292682 921034647 370130324 484902963 74448366 489408180 707134783 739168839 220307259 317276776 685730963 878494767 275033575 755018692 523976771 810389570 468863454 545678193 282791480 486797724 963227075 968134820 921960328 997550463 948412652 955954050 905003795 991401040 294613897 997861027 848647810 909918447 426958131 432048904 980106664 981876969 120513091 987340990 55202650 159496221 199521906 720256972 788026391 788205561 60357179 939373094 496654461 601946740 872230839 898379928 795094011 809958563 893051323 997701712 160124822 249732382 929085403 953120655 822058977 904855390 4906212 266522234 659526892 793143056 199585405 740727232 287470670 542126035 896269483 963576775 182216215 467780990 601934946 700413578 368282650 692661383 408243669 706570812 763933834 833210144 395641507 447263219 205199587 412762843 378189197 416952840 707006191 740178040 922201849 966035001 66262923 830768607 849530201 981261477 253444714 382165904 30449671 612086546 362264831 878964214 534478556 698781173 466465140 888903536 212158960 852003172 437837469 915249456 975401354 977505235 726356664 756555953 990859904 995270976 22534049 968428782 973850264 993817086 531130354 672806628 296751759 321958050 781891508 813164187 172774593 487978406 913981328 952501870 961949089 993818997 27841796 882976866 410272486 948676145 223958032 907807811 752849197 969584878 58747000 342613555 102212508 640815738 358256929 820782566 97149493 193354381 321712031 909295668 484208164 714943460 560084565 895763043 68589803 589010551 846085822 980211807 199514549 413749831 997914901 998520646 183437450 898814064 298879144 740477471 146920295 930426135 731699145 870989017 239119780 824979552 536576262 845049233 24871878 646322481 27928910 32139836 504067153 597820572 798136677 855448325 910543706 930621509 801307402 856122221 678347529 834477244 274343907 300836001 675376106 919254624 249522109 946184301 547195503 961095013 629030009 759940069 986978124 997051933 180974820 884536831 707747338 958910118 470925814 490722852 171041856 404952312 383774016 732210998 169879163 775414532 508948866 775883121 699559854 784226128 976376028 990939799 644664096 669922210 597544361 847184922 7132311 50169519 532722256 882687125 861648164 931845639 328916470 463574022 69839091 133122405 662882279 929577444 40187863 364612132 531649314 869050347 493680541 913454916 542503177 753336965 855086473 936037742 940917185 974023787 356052555 448912465 973800157 996630719 146544571 671142969 592128385 752093661 384857136 926174127 201907208 262411610 96356872 273879006 759896501 936355357 956529642 973277380 780256963 895282501 397924032 690595559 468811808 776146318 638841887 872009214 639413022 699172931 652233762 852786740 245787623 593333128 238775148 566612106 16870535 190326588 788720775 907416162 33900349 868637105 183422568 877996070 729361216 827433096 956494225 972824292 298298015 340452977 476756809 857198391 347441475 774345806 407303220 600984695 961210171 990499539 301829272 660027523 680757783 770645803 50079497 744461345 293777605 387137883 265944784 914881755 331514890 365960804 356761007 732610593 752496113 880267744 607825336 927278800 4195445 541624843 821492665 925911106 51386514 302658479 124847132 301138366 271249235 488421629 469068107 920710609 504172400 753335651 805408442 921049304 211540298 650917401 717909681 866097344 503079905 804293774 404360885 894561185 32523043 905888409 674198247 738405227 923583685 981726126 158648043 159263549 150823306 872053163 454639950 727676600 989406171 992803793 289427905 459284914 621015966 870527248 186794201 924056079 879382386 884833426 555882346 791665382 459723254 998502012 370817580 532769075 700510545 867512514 191685633 779172533 635019448 862315489 763205295 807946381 34888446 875689038 757991359 795468245 488304104 818127515 19909774 678669892 451040283 803286823 68886414 78682935 928769476 947118976 944270414 967394820 774055696 915073820 851439903 916697702 106048107 492376665 72507103 938616249 216744331 791847018 657439040 706629409 304336513 370021944 750289363 776821743 42391766 670155905 459705193 890729131 753581959 916244523 221742159 244342098 607003779 772808008 208340000 305637299 792914718 795263696 724622514 986078258 487827954 693568883 886613627 907833093 32871649 107434681 372380486 441796923 620126458 662257105 898093747 950803409 721693136 757251332 945531889 986549671 838076831 977539356 94943414 504291961 355596593 993052529 10954552 253748082 820211569 999118801 110174844 970436778 241630736 377268095 978810252 993872217 967973309 981885933 364392574 488307556 742337946 972046525 352358713 669564380 181804918 571176015 881264919 891240009 243258311 495104229 743819867 800954903 685153788 808684689 143851714 201687530 193357786 535249665 721822684 906120031 339434735 781287029 873808316 909818802 471708809 849637361 656548118 825439172 40900281 184023245 437235930 871284538 489694003 641088303 157536474 160015389 746183375 909905080 416186081 625998027 356256440 522599160 50358928 982137006 855324077 875360205 349640339 971891517 560947387 626279860 480768539 652272055 377767762 849948794 776501446 817311550 363650808 521607517 547021333 681231080 268870762 451315795 89751863 852705579 681329869 789760657 524931382 946926068 469917096 674262282 432133433 812809032 850045108 861627538 888060254 954245692 971828575 995309726 450061209 918701244 695224357 820761760 524206828 591843642 186454744 538622559 345431966 452717783 871307724 906625419 468676438 833685623 164671767 335868177 351935635 925417223 610624419 788953624 810419298 936285274 851582266 874175144 689915813 899068654 73582739 988102950 118773912 167857636 18966323 782592608 693507522 746699611 787980307 826045396 729219835 999369891 361106611 755995969 912437218 941797938 605671613 792416497 956272148 969553192 504611540 731887092 657129634 952372346 528817112 821532221 576640121 679253961 846376696 860092280 555823817 746495837 795312043 866861948 747635269 932613022 841706776 875868852 451459938 657157335 893805074 913929702 398925026 714137072 490024873 754951808 895867115 914992731 638056706 753195171 373714910 527292733 525961963 658986431 218698155 360331284 551912406 626551093 662431831 971298163 609515691 736587905 992736233 995043295 47526742 651744954 635075299 648882049 308330262 458605343 47629122 937761410 163557092 350182083 249720091 438661534 101822531 351641014 2326935 798736564 821088037 995542902 466788908 965508965 929551145 965428267 42165268 167510428 274523338 403707759 469552407 991014572 175452847 489788031 819631330 999358057 734108130 864689334 168755783 749240813 420838447 509528781 281786211 302148245 841407835 848431413 533735215 911741916 238420104 405300879 189945419 212395117 55265952 259439851 663309966 822834915 312311415 845303522 415590876 909959183 144845843 972041959 630358703 699485909 556898113 990982853 928893606 998690178 710002538 930250419 360116222 935721317 726578338 956985654 718712009 776402825 856154528 893076142 421345138 556760578 685925945 949489048 130068951 912561762 52934701 505810702 639467308 659528769 824557446 837284740 149411310 163081728 261506370 495492795 305729960 371771515 176988550 823715267 508651997 866693174 439986855 719132134 947910248 952459673 906077441 938454242 533680203 638356930 521827875 827492806 617291210 640694168 404096987 738662769 766963323 812499128 199450849 432875466 891644185 965405675 708331628 778014366 103989638 439454777 746331487 900511891 83396672 837969390 338961394 843817611 585441965 998631889 693860705 838163547 950858700 998682487 538368340 586473871 424398288 677141690 109989518 716505146 593257136 850074890 118978155 542679546 930162401 968474896 194322369 870462847 919065796 978900154 544464574 743511849 639306002 879437256 538311604 691945282 212093598 559548696 231450739 985438214 268963139 560852830 907483661 996114372 158881784 443524207 398807907 749240017 927837075 934601808 834669748 858299147 931353821 938886031 102174828 381860757 199702219 838416213 84096424 869716960 909083116 913329661 142841934 266272956 497703718 765953164 765211631 980002248 474387302 582923461 187866587 582614685 864805997 961676277 974210283 975804581 249726125 838248766 582631125 653748597 139353152 836815419 946875580 962596637 628072831 679858163 772597829 773186546 443667855 961174301 853128873 987066717 588892723 717242793 138991583 934354978 218438653 307133844 861034378 955948273 368246479 704074319 722598324 972720906 275939427 956546086 747534845 769498156 340249548 414933987 39808757 271684015 612723097 992010211 848048599 930288393 955630770 965945282 281732360 446290487 941654987 945036011 160674144 293639391 281516228 594266416 275530179 928883193 273095976 421107161 551518510 885119180 747708926 795838174 853247580 907504528 684606585 767660850 507130016 568779914 728663708 893428008 350108138 524421171 763114247 980077143 829214290 991502256 303734332 903677394 288705914 501560593 705197763 986779451 541642738 866901220 715515300 978227493 581247571 727769263 174170583 613275304 203187966 551382255 44056451 453563109 466211917 636114710 321049610 978492652 534049854 682440501 807554580 914323395 720175527 807055118 200346311 353164515 485158529 830973873 824209751 987379292 20020237 620119559 745527287 998644189 988767605 998604325 718064197 993243082 966551709 984471843 112719418 151759398 632038155 942102118 429083256 536380999 652875931 670005040 780587666 806779780 493940468 934020448 423593723 497343201 536260851 655068266 97761935 205139934 668445875 894866369 738308933 763176349 418385325 447607379 216279782 575478686 77774181 891955022 17747514 887122696 789032088 856039439 848517514 900942901 255259262 784106607 746950794 813332809 174124056 669494380 794176922 960967966 661777354 832143335 590934672 866813525 232958902 850173733 809673972 936361130 65845465 334874089 114925748 257216041 563956334 600945017 641740842 764830516 832228803 837280239 208250161 900486187 466204926 948570435 480609941 606187711 862092323 967546171 866250711 956834339 637557393 706669486 683772660 821919564 188378238 426644558 116408889 720664674 825077350 913167419 823471650 887607005 747691228 829808930 786832658 994809066 190960438 969205398 742474714 799017041 103482028 739791550 726075470 778313220 703440722 830952780 123538900 859595684 247465078 281448914 156516766 905542149 283252281 631982337 296020506 603433334 321237051 512347921 391633803 817842898 78503819 369014005 876791234 939097976 625812691 941289619 777401638 830036214 631211253 825988983 634442447 657579389 744529678 876918567 459493309 982700555 387569171 796333774 600800846 932144931 932586061 952108898 279954725 435543488 820573294 983422744 828906133 915827966 532632820 665306546 308083322 783158684 745760122 829897992 60348339 529262759 103972329 247540794 767973693 773967853 283448794 907426657 911831130 938351096 474291414 694413395 407861818 834118950 766666011 976516136 840899054 956248197 22146291 23493158 879073899 936003325 757585918 979273373 104840077 830592287 477510864 529296327 913373485 915985239 61969105 680413515 749419145 985429201 494992821 720839678 102193276 679171433 559616133 888457580 265340590 696241500 583929659 923703923 362514692 580432845 128051377 301555248 496832564 828998454 773765820 993961340 188773891 283856781 617086746 841392090 972075095 998322530 128331336 698726511 951748981 975981725 817168034 918873601 566847873 924376421 404168445 598549211 157954298 231107574 848079112 868948687 175904932 888792558 898773169 953709006 856574297 960352058 626689340 858543514 718223065 733076010 945250619 989276707 964468270 979752899 587298664 895767499 281250931 758759725 425465604 748988484 393783698 810154213 587707938 978048892 846622609 871815246 927441344 951588344 891932098 961456429 491515534 892241002 823583984 893318540 762911861 906330660 936591557 937851511 354432427 975332437 235759212 458699695 30237269 172644083 861435143 905836877 474148473 504011058 778398905 977311896 227402930 544602711 721151556 921333685 952272662 982008589 994208496 994614848 639978282 998132557 812288213 815692489 363457445 882450722 204104228 320824779 261066191 785581427 519763927 888055743 52379074 108690477 179724040 937258239 768575515 916237749 476419333 610995373 470755111 945522632 260659031 633938535 275662665 783148948 201218597 492139588 269745846 877910965 919453972 965098392 201665850 430465422 991442755 992854203 911145794 992596251 600767249 617374809 209166840 251456985 743640189 928148322 110639965 339277619 126433123 877005306 53332944 133477050 458616181 895759372 742834572 822471194 497310293 550214555 48088343 149045548 614651033 725840283 831483721 930150787 185097528 733238080 850275698 895537525 516384223 626617299 483646811 869999341 6027146 525416307 299752099 709813236 484408836 782694385 774027388 860094762 140215070 861502677 822065669 948385617 904993463 991281538 830665154 838525903 384591676 646574243 826097525 878546813 672247632 884619528 717882557 807196419 246186208 392311842 141498325 534938107 422086834 759008989 574691647 787610435 597321779 915154406 948394699 991457917 34359032 707824564 656334030 983674519 497885393 787089925 576220462 755377278 938592601 965959947 223836050 753993660 377316769 650610338 581791873 830151496 553178887 612192784 218238272 753944679 194404714 658171301 756355081 764240847 354769276 725145426 776859380 890655184 311501815 692340308 55068720 946247689 634363510 758879768 987431266 989910138 82860119 577155984 794154587 949841122 675251726 876754040 942746012 960900784 421555991 870512468 754699524 796847613 965318134 987631986 812650974 862145671 883376165 959206184 381380641 504260370 672266298 857472353 799728142 930368674 271330130 448597566 276766002 580222297 242497927 830287150 931562529 985039044 328365967 938306236 153432835 461261047 449818199 450652574 194509902 826423548 712483270 725758610 874098571 942420411 743713113 794378658 467512315 811795018 429351243 884050050 773001865 917883700 209898960 459130116 256886163 588857915 809658859 932474204 169919094 241173948 488483461 605967556 82638363 771416873 56882230 481678851 893150057 989929996 956044264 965422316 826613050 908217292 257728544 485459629 414391309 873085645 703357137 891224335 944266035 951660567 35998126 344368022 461886196 711347437 262168339 405318233 70796414 585771063 794711411 892062731 563511229 784327527 187596485 683652904 358326660 416254815 572373442 607817104 221328187 693246091 154751864 834485683 57295372 502966810 107988124 644521286 309256207 577704489 569738248 657077819 664788547 828623952 180434284 785093177 323766601 641415019 433863617 820063358 883930021 955569958 389126983 832770320 437516698 920002965 829711894 876942917 530756611 736346270 427092274 724263373 349161118 743405103 791429926 919705646 581065866 666960920 137365635 417577129 826645540 913353256 677027502 787098077 358856748 459141512 690857614 905615647 654272512 858844025 896808446 902222712 781517008 893979585 361546011 870578469 574240116 627962545 743506417 882438293 821128002 887885828 571296620 706628345 37511217 435713177 262948329 614951828 603597072 830973522 222157222 858313036 750309655 979935128 545578709 984664751 613394879 844073263 969486300 992424194 683434501 907346490 726229263 826251925 718423546 909396103 835231757 907023150 150530402 737223883 444392485 805146666 291574761 494866094 690340737 967260409 918636232 983472752 53496611 203495520 5046585 130729643 66462574 450587523 122377213 948761778 899987542 959039780 567113358 608430121 180351207 288632050 452462677 580075881 243273283 755070700 430880379 527172658 540336251 776298936 478995330 664639085 790301359 842638915 157294465 323926639 710507063 807647911 593320724 872166432 380723183 654927730 215904912 691725049 348063820 613012161 446530072 845517540 237231157 732126708 376400893 864097700 447210849 989038244 552135299 653721683 670473848 842959397 640983447 930025832 65037178 577160810 203836011 423932770 289981946 827996302 636224540 913070638 906126066 930309212 795426146 936736904 547176063 862039464 938961011 983799228 355966650 436471661 353290493 526747752 83442886 173388149 338973952 622257347 37637782 228135121 630924810 972607393 140940169 799911549 118527747 927934017 377977512 798704765 398405622 544672996 218453991 910139045 524553332 797888340 115631970 642504843 339459119 473087029 617579838 669254517 833213130 837653270 268342708 451780718 732997465 931606783 388536785 856642892 861892611 968659676 104666511 290809712 531489915 763222014 512409528 637713615 723187458 935994852 543944638 586427403 723670246 777249864 25271254 119515354 339143192 980564620 892912238 895561800 488256196 854590966 415459592 547969880 848109642 989122525 812052825 970240156 895169766 910868608 169103306 703130778 618169868 870143669 334234871 823129226 79255795 286290723 570251507 940143391 704524299 907325634 113363309 497520084 136624841 684645642 243499129 286932750 326711714 451185967 654982142 883030800 478217271 927861330 146201186 524140699 909156897 911065642 286266523 775430244 242461457 704225102 553740841 847965914 3938313 80801350 701720746 703486791 440537706 735693472 799450213 898567483 894924969 987354717 170120134 873468345 795478219 906576582 612637783 971188506 34673459 49131299 893253047 924331693 541225406 657575222 795599793 945300991 125816639 974178807 893284173 936859117 911591966 914966894 330405511 572345975 436088609 710334117 456171771 695606828 616866627 967764158 521456986 594191156 705554439 784417982 555384194 660407795 264716413 598429206 36310729 59083138 602272110 877840745 536415690 637455501 614522734 972976194 253691797 795970208 99881908 336909260 746729407 824126361 110525296 195604478 358404094 508307899 916620428 929465529 592791498 935724297 870926011 983527645 590819499 865923737 757477559 893598874 577078265 794324887 57477395 422815046 531674589 867808395 207643324 300476450 125461163 862458784 785713163 801188076 869285196 905098428 244247240 570688122 728561812 784239740 958525770 965531961 729554634 944386699 581953499 700630754 759754872 904787416 12625173 362118868 863586762 937152130 678456993 703193896 685358803 844512729 225620551 838752190 704692731 739563933 982026786 989138772 875096506 891897549 29788095 582246185 821474283 822471664 978035777 988373461 544008908 859660479 300943517 983526989 612472773 646055533 370498496 452967651 721168140 807580191 828688039 915849797 217399779 292701327 72664937 708516980 423643367 536080909 351805879 975194288 421951651 889722500 97961986 583327204 935095282 955265271 330515890 833144016 418977174 768147977 686704349 779655492 433163382 552760247 958749921 995815249 580553845 887914748 688133060 726637328 882466583 985743149 694682317 968682939 418498998 737409231 17276488 854225261 443553795 889544510 495459265 977258007 611146470 913532738 374557486 892022831 200478140 302486137 285685466 814974636 305810796 970566660 113901632 702605604 970622368 981569890 184636527 999247011 444102290 964836169 858045294 892399654 259809326 327339040 659436711 700523215 14663951 913996578 517114182 873048333 37450154 127543876 841919970 918843948 196692431 278857373 363273858 883882677 240527000 724387742 122701123 235515776 441999385 667501263 147982315 545645930 713402147 721963086 690663992 764765210 441630509 750768289 787262823 968829782 243676726 380323039 137764466 403700201 965873893 983653570 119327467 454634542 163598530 787853691 620599424 653288409 353299749 989803634 106107794 834500746 399650700 467385203 92376073 833359311 480068169 969002505 196086931 397619759 303765688 679558768 305922859 653702919 20281297 752355469 328670020 444320471 560269916 818947668 133145737 450051471 721391082 784177486 7017857 423171560 986278233 997708554 888635810 902998716 568690989 875385677 225585823 366013545 960724011 961280808 19505837 231175526 217259761 636281984 524903941 975064066 24661630 279411576 798528396 826176626 596263222 722799650 853994617 974126205 409339614 528160247 55542864 202817123 585230191 853924026 966100329 997797745 308509182 636982934 193089988 630083004 301569591 623519903 503293517 736297043 977241861 991216989 308525658 885502467 873972512 969477664 149825302 467394841 762401484 888005234 418256474 442960967 928186116 940167295 424363160 932164860 814945108 905859001 455956200 938292552 846552580 955351388 338167422 763496819 964097982 978359464 872586386 873857021 852368006 898577550 294347093 347812965 165009968 543608442 409393231 431866360 520367233 658916537 975334932 991327561 273990745 594041164 622076735 873250819 337761581 702233339 231580042 669129542 845820610 850216105 820793821 983833998 559870168 642918263 115507718 687804996 191174036 485846422 94240003 135573339 492091096 702480049 506231918 721179520 39486557 301098649 382831744 786825748 692964164 966502928 863728882 998863808 514974700 636969427 13709087 17681554 643310804 976391197 67246322 495147290 719426059 884862558 103056672 878182093 659418931 777308942 892262182 929189273 936209611 948059450 170217606 383291028 94488171 135559419 295604080 451977941 897423272 939932914 377880252 533632658 99637242 288657528 532255503 997572045 119869702 826553876 485792257 716059159 520779991 957487490 480933445 902804067 30802114 760954605 295530779 755852587 358977652 917770783 976891353 991777457 32157312 703228639 650168308 949252826 806267510 833305188 392930177 638531050 360507699 579925939 744451621 902918801 208520396 745244622 374255032 397944006 441730816 460743621 510918583 952204864 6496525 503995455 85798077 332486166 831424056 900641442 215706631 488383759 276834756 445079739 852270980 883373986 701877407 833237837 849453921 941690483 727096501 865299569 720740027 872595119 603067474 979534422 381791872 463417003 235659726 683863370 8002872 311827335 671271413 725828193 737642170 980043506 673439576 875545687 179708413 268566651 120516841 345731765 63301776 828071703 837760913 950771229 732755120 776204588 617397320 906619377 734033702 874767186 50951229 292944208 427522971 700083854 834499559 911365716 499516714 920340707 200123302 330044926 758153379 900203095 607445294 935398463 594417100 981824029 736608464 785161154 992300592 994847626 641175490 839953252 127659480 611316544 524005825 571852563 610396232 852161839 542485797 690201276 669350223 857315077 491151088 991210589 311232473 536381308 821503424 875335975 372126556 876116437 756072506 969155769 681832329 699563199 642222723 668112874 246951733 980848371 855414627 884209891 500454168 593965757 840181513 914248637 656419118 699389348 560976870 972466860 662485954 715024837 29215292 672862115 465497423 995883339 205524722 468493779 481645682 697574896 909574270 984185329 885675108 907505260 646915497 975185220 175040279 958759880 447668504 922973043 774239378 986505136 647035974 672824954 287985366 613748697 249064182 657978695 446801479 834101962 660026414 813610867 202395956 206647170 323401593 756072523 913376827 975562737 753111288 799267468 753920156 923363630 741326778 973568535 738195033 994529768 724526730 919772575 368453098 680830440 683633872 701112394 151494966 415073208 192997389 662487873 891763873 959979900 788716737 795964045 672677419 945355745 743116294 761228397 188816486 887474252 324734107 457868224 815413729 820375230 730016509 983145152 893351242 985444785 296831269 699712737 365800584 636005554 384057711 706959134 860470402 872237587 980692712 983260662 296314452 949967177 370069624 641800466 819054956 840133719 756073889 964709863 662552146 833316576 687548764 713064882 948724800 990206310 54822741 807437927 916289151 990181349 492746718 687503310 188744887 439283814 63958989 169336005 277591622 619709431 404013959 753175551 803364749 915641432 503268985 512339836 469285018 887113174 902306096 966923652 492054447 798434489 820778825 910968105 638658370 654772754 566019825 656719294 104814675 851987522 902178784 996502008 222959027 239834278 793168271 882979640 645197856 847036587 535337425 624288690 242586778 930808112 612657916 793444785 646958293 974766659 485253329 580344820 913657812 976680582 822524855 838792337 450719094 887065599 327201531 366513817 816052036 899704249 110730055 476090929 728636173 928555947 695830563 892019811 65505507 586647704 555152866 884214132 637534021 944711341 299405348 887058128 620697206 992119784 964813677 997909799 211155120 561717150 559694560 575864630 945071634 962579317 845640017 949075080 345332399 948461794 155278817 577460339 171554154 396158373 528806610 794019060 377490580 808906461 588713223 691829390 485841945 916305264 821613639 954005696 220948171 900707617 805363311 832900775 851684392 902359845 80320276 559507107 318279095 368950390 426055848 830479093 733161872 826562228 418523362 765029285 449232451 695685853 112637494 640098150 276440602 449466175 582479904 622283296 300076040 746936489 970175180 992840085 961106475 978108826 883145471 914257753 310607018 544948507 99136588 856051994 29676053 458490159 208943512 783140036 683502400 773665181 234671151 473037569 271985616 393946909 406389654 668308644 570399394 645779047 234631922 278807231 418061237 769651863 636215349 877065649 32776486 841536434 810019588 892094533 449086106 628773872 113469009 210817485 280332183 476709023 138010805 859713933 617595352 887004458 261080984 997220469 38203338 504278859 751296601 797109889 636598858 894118147 398546126 420326337 291497373 916215672 629452772 795578547 787318226 883422169 758724581 884951710 806678258 825175417 121780952 707203148 384917325 581867151 76527612 532283358 56283352 545913295 713549547 811214816 244523654 973587934 93008818 707284256 482344273 822030261 382143067 609007977 968043362 981924976 27284330 521120407 910677785 912109129 787423054 797436113 495115844 673816871 433247176 941345971 58339584 845909897 889769107 960618287 540718632 860869258 939132118 979366280 474158217 826635930 92250615 777651247 669834769 779729853 732980946 966904400 738054642 945028997 333482842 849915335 696291610 762780256 334892752 565431950 726661709 910078213 438732904 795962531 291953360 501626974 672043143 907733230 832755506 852298629 82628731 473079748 196096461 977287864 69249044 420661697 424496521 456315049 520015716 580046180 738006531 982141180 32724286 148035780 160297615 344520810 863162231 967396615 172752927 446463145 754794709 807444419 635251869 958581492 956525297 983172554 673884578 752376432 808759856 880152902 760948442 965249533 186348857 799824340 521277940 904317519 43228093 258442504 514787141 706073756 136824619 864809686 400222465 912973135 399568609 512067653 322083531 499642681 472429967 536967763 643513420 871472371 975822607 983527169 16129179 244379494 697556403 816172212 822157023 910419941 414339596 686682756 822539619 832444948 32727136 750230485 210505794 976023897 614804735 911034429 644769096 856683291 173340208 579340871 776000792 973710866 51212482 799888165 99311574 867416528 696095466 851123340 643187216 730703791 531227525 957225722 969313898 990794442 42687865 443990902 503568331 641851921 432343733 720938174 729411964 851761561 809910011 990568918 961910082 972147620 578840423 663400286 72942073 894162412 85653765 927849737 307693451 757713331 513746762 783559712 945652597 953745285 79410757 571222979 711687237 927081502 835965419 918381958 903049572 943124104 898074116 949472210 664105420 750504345 886648061 978054366 861366699 917212500 416459348 554887873 288097176 663453251 938688078 953948782 5291804 156020732 698474184 806833064 569046960 993517704 402867307 536701715 598224600 781639051 100917815 197599817 4444476 593849072 248627557 412563846 143270671 449845373 226597793 593502766 862441810 989542030 496292151 661785639 902051835 972157461 808098688 965858513 908192727 938049925 324979320 867779531 908722396 929950877 52134509 966141405 29029220 164853011 700141674 896199062 269628724 317256884 204999882 308640044 125868484 133117296 317072156 652164698 848796841 925684417 605440617 918559631 358587905 865020879 634672640 922456972 123345009 639157643 248413819 458292418 800457944 964026411 162212145 196924339 631576326 639876858 744518369 829161036 102225909 592197207 496231785 893219728 673749352 934531963 697857221 720656305 845983052 932720598 627718124 852003790 377165923 656251163 286800093 518257863 736416390 988565906 967225498 968106334 819587382 950988765 732345667 753163985 951003771 953046508 639711342 762226235 903983457 950812510 172179026 283283053 69262138 422056939 126744322 719970469 687509910 956895665 762712366 973583923 827049420 953012704 153180688 627947002 738401745 749120211 566185275 874642792 502627773 718720953 301814507 320140873 422861847 438879215 586510189 884312318 483604255 895089439 586514188 906412571 71637042 76875927 394315803 454296494 378861961 825106116 580373311 766624583 256918296 639395469 714342281 750612058 430893299 915162257 943680191 971608548 306403754 828280702 362135715 934340456 111054710 507949387 454108548 478526666 339769104 942966688 802848819 920408888 151273004 797760972 653176304 897357705 107393289 366088748 223521399 425619930 133243477 311469603 100465439 111106166 303602518 656780924 715396750 904377566 305422463 850835146 177486864 520386693 69554333 126707300 892325451 893486388 359468428 977257393 477011033 859951022 270910250 641573912 297740793 909937034 135744586 562741574 120321805 721131879 413631898 997896517 409818672 951883688 981720844 988055838 85300341 386912835 611471761 862458104 137279907 728759283 819949295 825584997 166384269 883280428 780906636 977832190 335640013 976265764 325103326 761755230 451554922 749364778 206407945 995183805 444644542 662987538 825454187 915581651 601727729 882859759 295900543 468279097 887756402 928536934 587688010 940279176 749935005 863665653 797285983 812394199 630900481 989283834 950610879 985634047 479583171 500608999 821892541 852904861 931083141 963897309 401525444 899938782 266591287 754853028 167382209 461733600 573823354 728425800 988740357 988761643 460160800 615330536 592430873 940114756 304996500 986873862 542821151 820375356 510317987 870358029 691776158 987360069 714238599 932087043 547094310 682976911 906559725 912882605 640796730 713180191 398076771 909202352 531619207 579620771 745258451 840809591 857331872 973194712 496545979 776527182 475174599 925188479 50962565 498819351 64214410 907474957 384300976 402923680 197049065 724841486 129615911 908144120 321002378 682508794 842698275 913484860 986115918 991186024 28679805 834089674 896157154 912096605 168944531 942238617 67357304 904363215 150376225 676187721 399582173 480353224 39427871 425411359 14648548 696635759 360431021 815460318 772839807 934509552 431500190 532387096 761229952 898327196 593346034 909396498 606711447 821498622 358835470 630692798 12537297 263586188 345226705 585434180 145388209 229266776 487680702 705435308 77695732 134861724 515211800 866539188 920541474 949822759 489346197 498444957 941985141 970340943 824418805 964607458 992193303 997618110 251525174 618027643 654283372 740634748 413599992 565562495 30680858 605043260 885061746 983330179 370037849 534663076 192041093 340768616 491346561 829254188 832589307 907703402 6696780 555700467 330438237 958101165 119200646 579012954 577462088 934098247 93885917 844228491 506292827 904729531 976918973 998710322 163234906 579587788 680585963 888837908 81245123 468604587 579330276 618281992 400020983 987629280 834810956 974042226 808972924 863844901 990369033 999328769 780101173 854163368 289278947 998806278 887439607 978569389 23304298 256004447 629360315 639464672 331631706 579923447 813507215 921795115 288960737 751513665 144183054 633091600 644405420 718963836 205765331 549909383 467560014 531376804 707335150 778356400 301486155 701714655 777710344 859625702 982246479 993515710 702494258 726373210 193506589 522122620 809083808 948488943 320965720 430877551 950118164 968921374 654335788 895182085 863410584 879085016 656652387 983933398 629849378 996731855 665589084 835162695 45378294 600983491 269121056 383144216 151478043 634584193 483649474 684628447 734367051 763360349 724969506 877106076 140522984 150268009 934825020 979301485 355974598 544096512 629029821 904665115 556664921 707471266 745166375 784536312 29517089 765701254 741746828 742595578 420353259 908545585 682657463 781541182 256624104 986546887 281900039 849350292 313340961 790706419 629332678 926605578 460523526 519318949 393615912 930430705 80005423 681323757 293377459 702749633 551181851 708285048 267484356 720768829 407592806 807451746 605601886 801770345 510565386 977995319 431770460 646253588 489547541 750145612 497853243 891310407 754852807 884306631 374712598 558010637 412166775 924093647 517048118 651731662 411115306 756203792 113182815 599372544 650784031 865735241 913282367 984750204 592861876 741729303 675121382 745418046 49951203 882076168 921569504 991693116 998912971 999130618 482750283 721396060 840889565 965214055 474950703 815785568 559323976 732986646 952697368 998186710 724169350 771550123 476463695 982525754 591008217 957962631 246605361 968448964 77925085 78165736 796993201 974784948 289009253 541787456 678852078 899914295 693625363 934418423 423962445 933747336 971022056 979440578 930303929 971743225 269570969 948823786 746476101 830989215 644584619 922953831 644815352 697188244 675812809 973576654 803428820 840527520 939495261 961496367 831078118 837345411 249054554 715295345 768147925 984424046 651763599 784871669 201079094 736175821 376557307 843814039 162999170 685901078 313506306 794619699 74194588 554775320 225872016 850499649 555921112 972971117 584081362 742047041 528731663 667213607 27176050 655514039 173512546 287862154 350308263 983660777 244933497 592461343 141525923 582919036 390014809 707164513 826777766 835233165 934667608 984278678 192581286 995280302 305830653 847485278 802851167 917513206 385892752 391966066 52879466 146969359 611562988 808473469 161020393 847214149 426014525 754475485 777574046 944263505 972687016 992338149 679858312 801595281 948387221 985841534 300792608 987532032 260294035 632610608 713361776 996148515 855199761 947729872 865656321 880126337 496297756 965999752 990074926 994048743 489899766 631615472 29502671 676146895 782993757 884322956 819607328 925664396 169070098 227095289 576133426 734285875 627187231 987320865 749259559 786888929 798414283 904421457 475612219 961489977 473805840 958125434 574721167 661540166 848683222 917001006 414728721 900925830 776480422 898770858 715107746 854494898 60661011 374704087 756966026 902551082 509034069 657204458 849955102 908111475 520999815 649379027 767011934 795286422 285864722 866171809 224409233 247074364 203524410 728154624 926164319 980350694 741209761 843834182 43417693 671990003 518071573 619935727 563195722 934932713 35046291 760169545 178900038 799257674 846537898 871776276 723646602 759684647 463851444 640924585 619046190 828422789 25421063 361164775 944910391 948180193 400011652 734298621 529282403 905960495 392669764 863319720 186943330 313488647 817797149 991921216 24683234 751663054 222670138 665772008 998008663 999283546 195182714 912184214 111681967 234987558 269349872 750153533 864416704 946087041 406541202 413145112 433692529 813243979 522229377 658043989 531580025 777894966 109102445 619043347 803915456 920326796 573999011 736632947 969515427 980042749 321306198 651966627 15783111 767692589 724205980 814184136 54329726 414367087 178194164 306818012 418210924 768186518 319436932 669472241 20967203 464662854 168930459 803809571 454117904 544488176 662298112 973857184 61785023 260658156 434994207 869610588 45766370 440751408 48373409 962196422 447143037 693022332 729879894 939341970 31720359 556280904 680522948 711994405 407985707 748559344 97297262 402686823 493702872 691363723 297615129 867615672 331751171 459537069 749600153 967151708 84549607 144594112 792667234 855567295 646224963 695765139 869893589 920753322 760467897 844715555 413550298 974361373 235679046 645419415 216041216 520485208 983922691 998222624 646416246 790540547 638056809 745679205 608392975 817129079 757592781 896168742 441080501 746953431 71154337 486174455 953892583 997772570 681394302 846643928 716861417 885332429 498670754 673134315 227315380 962096520 482202305 758199984 297361757 776242799 764553779 880200327 233844281 490159620 229139233 927590692 705254841 982790997 729487804 967576683 259110212 914868435 382309687 492879761 354051118 961931125 904303080 987012955 888073260 924987940 378586429 430757667 849487149 958098353 512287287 545976017 654042770 937763007 283646181 397717432 649221971 677418676 749960638 890364521 588119864 949690505 171384492 395088758 662628666 697883959 645604788 894694842 400932021 690530928 367607435 719410917 987528380 989885482 247978201 251145625 640601246 940381474 857680164 922065681 426149778 678799680 927830128 939725846 776266874 957629004 387068030 494787500 99139343 334370492 822276754 917013713 707905304 765491973 589624308 650540657 135086929 441036537 40944052 811829691 928033172 961734848 184017943 468768079 368632956 637032678 44628256 973954116 762468439 778230262 55084291 223082291 67357967 246863677 675282383 934615302 908384476 933633638 505472895 812313289 390012898 542907240 496522176 898873830 928672625 968462646 802053451 968967730 40864944 811647426 842062581 922749406 542929390 587237479 451859090 708809565 254109424 693182992 882431526 887585690 83652482 457910062 673377146 974856690 289863631 670623513 225574108 777263566 466556529 713720940 65936340 904734754 74355526 989893518 220077771 595749132 1416484 594038049 560430809 811746084 755173229 829175567 408329254 766429403 30222769 250203204 270674113 347459506 601800472 959810728 603977829 613543589 165892889 810880581 142801621 583757374 846962903 889037230 793571136 956297831 691594043 724913235 85480910 654364877 301254093 513636535 13026748 787825783 25869079 398046412 225322935 924820225 982479519 987339117 216926266 346132122 135615206 518042547 698876979 851230238 892657488 927427461 919173210 989214414 886867565 935576032 448801582 470251009 810590163 960915298 52477679 370201783 363094321 643917320 809445496 867369645 147249338 432112210 832268092 911867866 460111770 508050753 971998950 998021266 444546013 666706552 888207690 910794440 964709944 988312133 785096348 888992975 179112008 476993504 93504482 102018128 314867262 682467406 891665760 964820495 471631451 925572966 983645163 988966768 396456166 826877109 843980314 952385930 295324309 318157950 183573137 245545684 960596254 987886277 28887073 229460324 382837511 511211385 278471099 336561868 357425488 870328035 167933599 215254696 549428225 989521578 545004294 781572218 849570294 890061958 380970509 601888743 984141967 998878167 502436143 919757231 370903756 923514025 100874010 388956683 623935702 937041398 531974833 786181236 304604159 999343615 609077371 953509534 253528722 634133978 538148785 916853723 656354539 755164351 41204279 452133704 897660926 935976749 298739169 993776647 416486956 434930258 128257775 579277495 560856053 792777987 807229226 995103553 336018743 387528733 558980333 894459184 146943301 743148132 690053414 715478128 793627273 958055961 634506099 929407077 765288185 793619316 412920445 652902499 806033699 961034871 640761145 697809782 735419354 770869035 422854424 775498722 673750081 963164446 305768562 369048761 865790724 990678668 845111634 969134943 609897029 622763521 799835504 945441293 202200271 627280256 626379584 809476876 588180853 747061807 603960121 704605314 866689864 892249973 845032149 861924280 835190754 870582396 89115629 844970101 533547745 539504809 130704574 910339987 905300797 934005650 83070258 433797110 283696714 289635651 186838087 864600855 825229355 903595181 582094552 760867432 587273865 860072106 699748291 876930652 286420070 518295739 26385337 128975074 79005726 652121013 977902609 990693692 995715186 997619948 936110204 985971806 854253437 866967409 181591994 581474907 511528225 728892173 667169613 863282737 603689082 625802897 770370725 944239492 714103803 764923732 391091106 680248668 32764510 107789688 495042070 520269717 739390866 914245329 85463023 477620549 602432622 982434823 224183912 378507395 452186289 822781222 909264833 929330105 557846224 929896571 427709215 467013758 791614435 855799907 309181623 640826057 158570166 475698637 470062663 837684610 305923593 769623026 484710822 621381567 141752339 855355159 636481749 758254555 132977901 860985784 793072186 868626381 757756607 859193861 912195971 933452067 101945224 545572395 355050209 632640752 502304889 576361803 771723706 865816258 134463811 956612395 490753750 652814370 769717096 772402043 744349863 844999059 252033804 630142622 488648962 706278123 839979467 981047798 985959460 997227559 199588713 388810988 847215703 944871807 691698247 743026749 94436188 267912626 122637854 859217580 8623736 719645639 716703354 866496924 992577872 996784362 338594634 969340192 922452652 941763470 816077567 945624119 716200174 983766731 162315819 463854757 382552539 570732748 840640464 923433411 814639987 816570696 447339702 727908604 568917416 775838027 321549493 795861118 898628730 965526090 475887709 662486243 373128902 416460766 618927209 800987294 865537995 927254550 294795741 921074937 289270598 506350248 274312470 556926679 723012969 953805247 442576296 828935227 766574572 895084304 633890318 879592688 245670951 653277706 636614990 704112175 241275772 564909909 168146571 948088123 404676279 804633437 945518209 974852576 571289986 632354443 982454188 992328434 467414589 520654593 945615924 993901031 66255505 650165591 951155681 972230300 67083436 516751365 900128228 984007400 606986927 746591123 738893389 989651827 285295630 555132223 692035184 878101549 407931067 633076566 544743958 712084161 630110978 780727881 934957393 945330025 973159501 989924381 755906474 777139038 261348520 806475099 789658565 953928682 959807553 984885686 470940179 602184194 629090103 850839159 595871207 784878735 273030808 675424811 505403414 728918746 860291249 888216684 440003033 621694693 132052751 746795977 517237251 532141455 664176748 705146983 346112827 391741678 467341227 689530893 75932054 952519018 206886146 581307698 413038626 619817650 300725379 781064683 33388993 287374284 925861730 989932242 954642803 995092204 568515400 630780840 816042245 928911224 986328602 996198630 420140228 866740029 955486536 981126742 570338005 774558677 702096612 879496745 511237832 746076264 552515751 678099070 232781002 472381815 126284719 210035757 143120119 938973018 538249824 807716769 483108786 984076559 17753421 82465746 14292723 20654763 637962112 835977065 142370592 212338178 121083336 131195697 557867819 666842160 493373774 935499205 963288226 989616169 863115212 980284217 100028563 545789789 588911887 917279745 285145676 954313088 921113438 972756305 816664598 894236615 433521099 962611581 419343677 852209127 109989475 281078830 5535043 707428917 338821692 687058268 686734099 915448311 127533794 663681108 731622136 919729777 317899285 732150049 816192505 860017360 609348897 685347352 637874166 688814892 436279185 926576952 545016355 622541547 225132459 868573353 291993024 496695932 466630101 624054295 790920044 869965330 129817674 527893367 758617703 888846180 921022629 991840427 304316537 629873568 515618106 655462238 805035588 906902842 164628379 274151898 458234385 642210088 385583377 450626144 617468229 916589300 1184917 727768635 464691414 755972819 842425261 937742686 728938128 794223793 408569937 884192168 290121625 934877706 792203216 802193171 761449455 979671668 821367239 882436878 386787500 989417118 8172142 996484608 862794522 877335523 753546653 937428032 125562427 247184449 645873506 840404737 277316412 909673128 308643441 582070190 91775486 371365296 885016497 963276311 51016322 780651466 275964434 510651918 982969534 999074978 355561998 399360206 923209042 983635468 394945162 428574647 418952853 631609455 638804978 846533618 233550896 726256713 540046871 830075468 749726598 917040781 436023864 542760605 723608868 880956445 153654127 417151594 822248241 853073869 651074973 838025283 533157411 771068346 5514176 794502668 777485147 919384009 109678068 350517185 621634231 747914095 375985014 445669425 277478546 527037029 371539045 802264435 104660796 136387876 626124152 843541697 753692352 992319958 401052666 868146844 165824915 275497176 539621289 954581357 283726629 925182892 476616810 713174640 226045893 536201135 438801828 851145322 276212380 996993879 191209917 211189176 769770726 886141372 407891658 793350096 742583973 998923993 700170819 936762654 865550869 903242233 124354035 681621916 959328682 973474187 274737768 991100072 57490449 253629385 167928045 681670171 714099641 724278815 287226357 766891776 45906891 291188044 911273748 980997811 968285866 991217219 20669211 756704150 505413759 805316936 414305185 907115402 255681034 680793874 441725200 780577373 32345488 196212638 861740967 998017510 919912646 999323173 250269364 843800771 644916941 827150203 889187844 897182113 325000532 693274761 508798046 766282484 4600240 666403814 931522536 959756458 235304076 513368947 737555577 893160597 966642869 989127784 591453504 884258857 600704208 902149691 927836373 950722925 479381936 542326185 619911924 876588473 89267335 954679494 165992235 274194831 625163811 818113286 88728243 126567947 959493074 977313351 387586803 799166685 412413344 713676532 796190477 887939583 463335772 751966550 389649902 664795436 187104744 715278269 879222372 992626340 232324363 263954735 9998400 554683245 455674598 909964226 724145110 812700726 425706457 877740011 273783338 393790725 607979835 996721665 62589660 588439535 315062442 529788024 676220291 960937015 306102583 428020477 987551325 997260123 741892973 764967250 774888868 982998806 173409476 872476652 691082155 911029595 287135565 788073272 590947012 613773284 888774745 942931272 550348037 834845451 547827372 989158097 631966714 988922601 415458456 980144497 803150130 901915699 388684587 424579001 70234775 709509434 988335110 996654490 939747342 998416078 576126179 588227682 133397633 864501926 677880978 714572451 592255541 871785343 34690964 346570528 657239513 722953019 930496361 972704862 201716999 864654932 442991779 766331020 613355674 833751420 899534417 911692988 505168692 758118632 30750728 460473112 825401679 953168148 926446243 988576642 237874733 837360563 382022389 811016918 711198533 917360049 921591869 983868581 436736771 706581465 351175170 884820430 926349041 988537814 320159743 688094404 609042405 632653538 893233503 960176895 910860356 985509118 377365571 474756907 219384258 545658391 95700335 993534665 634255786 931929718 52214405 982935333 487293692 969504206 902049152 916798784 464268788 665737883 257836323 321534638 632836862 689094110 871842439 956357042 331728570 646161349 150792506 574572429 663970552 800069121 169673362 842137504 18701518 853355030 282060827 323589556 261021865 862824177 802737035 870436861 635173314 718614408 232524303 610707791 82731090 757135170 899828777 953230529 179445969 480676039 472615529 777396175 244905180 592435328 323865762 925760965 576579688 769338066 844129503 922699360 892483619 968833429 461964454 929700072 132004949 910742653 804967981 849977336 988022824 991155582 473927080 615518476 421282373 849060207 586415514 829197305 860333501 969765426 43022302 79613186 857300348 924269851 569748681 643787381 161841899 768356985 454314990 894240931 344384599 727463406 406844920 759973260 873471521 893887489 538896412 556347988 92371472 412978726 306910008 861783321 578228662 665974087 791800557 843807617 98788689 971763978 963427649 996007044 612684015 813143254 331799673 503224754 970251357 992810025 974308229 997909653 698339522 994504085 608183547 793343933 836395864 952185495 661408555 754975514 78337055 680588894 54696299 878516881 657960269 922672433 104855879 230965675 436663300 621670420 100430113 120746624 45361921 835178804 109033771 972156987 309525471 318281080 544847362 775426409 274541488 405233007 863755046 936106189 835133957 859107639 378892653 838266999 273524642 470432527 969587726 974496918 883925940 915234938 393317417 773686488 324911797 425252520 592349761 603182923 898005303 940952956 869613325 892245090 496664681 809405016 731198491 861818539 795298666 920318458 624785592 861723876 528539949 536682976 698113742 813168585 995930753 997107318 920501187 993343183 881161276 980004398 452135526 777984118 942749005 959968807 421336847 621780308 61956990 641904868 257221614 649344587 393659154 498177631 167193420 985734302 798093958 860514210 808356624 820817608 341792808 369563104 670985922 805687133 124101840 376440902 675924408 747086433 563189498 587181055 426291951 665911818 709038361 906288430 89136488 384042185 157448813 750148335 187281155 428888554 954365078 995969459 344737080 450075998 542638171 566270957 938992808 985346679 969650881 976085016 299370324 953421368 261364679 595919888 544922740 924352942 693533911 718185174 474112380 708097319 371541161 428810776 267750244 637106607 291809307 718388242 878201606 996928865 381011 387493190 536071322 951916776 654710179 931263558 522737284 608751409 360500525 820221110 643905328 795074867 422721453 464780944 20393568 427563920 646425910 849119408 191630446 810994791 296766205 623615179 240952444 900794758 397068756 412183286 334978160 674061507 985636398 987179177 808813322 895092445 194354615 546341698 197782761 494936044 602925261 737883008 139379428 192651628 402030276 757459487 771374869 876798138 996123920 998198506 950741678 967401567 863637739 935802957 213256121 327565634 930823868 931320287 625168594 976989196 96579875 256324092 782680991 825524360 194372177 405044764 707216281 909932753 993355043 993676179 193682925 556194726 144257934 515422569 859713748 883414650 443061269 514538288 662143873 830162945 18691535 350236535 426310228 590431108 855898579 933352864 248575223 858307866 36559415 809030851 240862692 551429058 985034122 995354695 571732458 709718517 128777250 508534875 767916566 871630442 541323107 608099034 830522828 974922135 819325862 901849546 875148962 935108366 929199432 976608100 143551506 909233759 350519675 846961332 595370290 647318589 280990529 294932759 285951903 636327568 430278177 714393288 852389599 887842576 660812890 916844516 308099136 875354659 211151135 831424208 292867911 983928105 472709029 990382816 709579442 740528075 58570708 761144107 863313604 977040095 854964748 983685272 893928581 972817341 247284051 729819576 269141830 464730590 650304043 709112394 33243629 868550691 778316441 850676678 584062542 967044772 614797350 959744633 350858203 442903511 292282436 319078307 155212947 958215819 224922448 396016013 272129138 819238062 984813288 998901126 427741558 789979808 625160634 875805218 81734707 108813931 34501066 872345268 698174634 729683749 144876703 653627826 348174294 438811691 50939145 271707302 60555324 99930514 389834658 931039636 171811841 255798845 152525030 343951437 183250035 336319286 72160246 801551539 928367078 990328280 539703807 631004857 604436667 663498029 723568267 838884974 146007932 971445751 400805084 981126485 495895718 587558081 9355821 662523808 748288948 885546534 105939839 908820476 506252919 530988113 803391379 970355144 700415179 990773774 697528980 923626644 18848781 427429126 384713269 499501354 430603995 933818140 618777501 730631790 124958989 790289382 489126002 866350939 861066602 987407108 538212357 992588204 265513556 962218201 133188491 624230361 659823621 873768716 659906762 948802458 786741829 943298217 23626836 167544443 195460654 525755784 80213424 811836462 223101412 361754448 225107293 252034140 943367012 967165575 803045577 906594832 557680396 869561053 993944480 998835340 331510261 879920825 166542742 342635781 304923105 726747519 500488559 762202515 387368834 762515187 928723895 940298266 971179674 984892153 510494882 727410766 369539724 906083461 6161721 335722047 612342548 743821381 228692391 755725186 187404346 652416379 877408291 913213153 505279911 803358345 97338403 858681922 726672625 867396752 954833110 983509518 645550813 962986587 449189232 480599382 298942804 624530234 529968411 857897552 527084492 613968521 913051057 937208496 204095833 500285371 788859272 985516440 442689985 852772764 994150769 996079027 795836525 876629403 994285810 994543271 859331745 994354972 38116938 257598230 622056469 960034468 56479909 436356738 236265034 273752500 544074800 842041145 307815468 469485478 610928352 955806745 176107918 775312354 378402314 902300027 518393156 858666343 831177434 968930389 584283169 965730841 493797340 936731214 387505895 691015389 899615362 917440149 739813246 817543881 505196613 841302372 211298408 921607662 439126487 851453874 205494582 552243111 561001286 691925734 661832062 927151168 564594403 719355139 719004341 858873312 827437589 919685164 882159813 913266179 889198439 976391506 467101385 871786533 862448042 911004032 989425562 993684110 228493655 673065415 135169420 948695561 842608513 862449511 692078059 715078550 942085197 979523682 993530505 993800757 702702827 993038360 18231880 526570542 105795171 227453521 114405014 967019480 290013009 417364032 72363934 192205368 562659125 596939606 841479448 974697607 402573911 412567343 811715138 900862330 6773813 946321058 840809676 847542383 185068405 334688064 429392008 923817566 148665043 575574412 245492663 985386023 825716674 862269269 693154053 988476360 767686429 927920801 425891882 458924646 34056169 332616408 880327992 897612457 195451854 809881917 127676946 263201917 622805169 701333031 689942083 928354105 105359247 187860822 514583833 823214537 183243736 820309290 553949282 988892700 752665984 879837092 394792821 452572058 22701019 692975809 736279543 930344331 534158982 924607445 674438399 732479377 106185462 832625790 86463054 844187465 161618625 489691757 415586395 863650354 576760286 827686374 715233910 849989707 959546688 976102863 4884473 521600148 420675010 491371281 733094998 951957654 290652687 919412712 199524989 649216435 249868370 629157653 581440101 894939100 598880067 775670312 887845792 913037731 243181182 335760891 807223491 945175261 875215898 955099948 250234942 996748177 352570666 870924946 306107829 616014411 803455286 919510708 182091421 299647128 987326652 992373408 423225605 797080017 457884142 671564055 969617047 984950021 264469540 285064654 657876316 891421013 101372307 113501915 642291542 887287314 861391853 922113157 671825758 876559688 146283629 550618269 696718300 740536178 323521252 436082387 172129786 450822564 338639664 855549303 552165703 748924280 520983799 800011438 45232075 90382657 338026698 652385171 7292551 725145009 309250901 897852449 541974610 926534811 63626066 145732419 890552536 956330867 21595696 979647106 662316555 789955440 538300139 782387565 637474809 672844970 835854957 990314547 610749827 787652298 189649673 516761337 747075583 804550496 158211412 398442151 568530878 825662092 167163624 818558503 442517186 938033669 342610741 364549756 348403498 512320830 142459318 848599393 630634272 811995762 365903036 658879229 21412076 980261838 260041955 948351203 699724428 994434630 405795357 586653388 216377714 698321438 493610335 933243712 469348637 700068309 744787001 895835065 254447977 598233817 854425457 977651680 105031025 185364863 909681176 995343016 596590638 991681894 623359728 677731749 311006471 884636225 804643847 875628124 328587615 496990627 86050864 814773396 192037662 220261524 443532300 472422675 508894580 825965336 253121057 622355109 782636607 821920822 98087026 910870857 749839705 781959736 981609256 990454904 966579451 995057424 60423569 339456259 376112872 807218257 949871297 956285370 496778867 878723445 601339480 880656265 650939231 923984230 663111657 774477155 854266433 901799729 220148055 291713899 845414246 942707303 745669138 759059245 718727903 795393389 343873552 790389364 805383754 835267856 476512689 961389303 540605336 723358223 174156853 970261390 495209876 552503903 650195274 703171836 878356556 956874967 512072159 951298021 221741716 550270277 203890215 316656261 764751826 804437051 313398560 997996379 50443542 447658046 774732075 954206662 238775604 387408902 805643867 983930822 241605153 280543586 97881458 784237554 689717879 869375003 885550148 912151008 887496093 983485626 921515871 941757854 913839963 960439845 113507496 309545244 3964358 798890299 715537848 981456548 294735104 355315769 467409221 502697947 899519991 911595115 118243813 525479808 980947529 988945467 767656381 801317387 423096031 461889609 901501558 908614552 821660693 827532300 242109563 438861330 33835501 744018633 923462830 974255583 345589332 871036661 76714151 288653460 183800264 900708845 928998442 936857469 895165882 911489073 353552414 612378468 30208267 895116692 586929818 629682688 320411338 834365326 355240635 546048010 128233393 322589764 143376186 542789581 102415039 699552361 802623194 944149018 319974022 915851305 641007984 916273380 778751630 882524279 539899546 562419979 725315203 929102052 150301327 828964560 689126129 941009045 478382599 500598934 784472412 818475674 166804843 249473572 535320067 803163496 618940103 629227187 813261241 985429254 445795830 720704615 826613080 907293976 742731341 789459357 492416175 625028570 398849153 612982437 214106706 939051080 601379835 866966921 867901780 984593171 610149405 615777830 870658416 970076442 522372478 610651132 52182615 777081683 515683328 679918224 697534748 775778716 459209820 713560853 783409074 884733934 576268343 704880527 271423644 740542499 649318565 718254705 81704106 524483953 471145057 816014961 159077748 459231643 1199557 389870628 886558435 895643497 352257663 431808120 961622531 963045862 940870462 952274826 749239546 756751195 49953123 262912766 983795881 988226995 361432689 470579799 212982130 387685274 651715724 985859624 342466034 677092920 550529286 639461384 815530971 928068535 627558295 850886071 216601842 657620039 876341480 941710709 510611589 631260990 253069247 604717629 931234880 992135902 607108436 719859500 256937041 381820624 650435022 924972641 877726840 925041529 732579891 897271619 533120074 779058555 695827839 746311082 503477248 700262628 877072331 893923470 537726587 716144154 678045520 732454989 86501971 980144494 410701415 511431784 669844755 737588702 403105447 989877594 816089546 907554968 976358525 985361373 724581412 934870531 302621472 843692817 538466046 904486258 824752176 881278908 647710442 799557786 903194953 935145182 482573897 624950741 766559105 882290211 575647466 694855850 890625731 907637480 916260065 924907723 818110936 934986510 392505757 469470980 111353513 891884757 630618048 882448027 346350991 980554191 409516596 770973293 276724573 627411435 294024396 899239301 817135598 926361717 702657992 715737812 796816906 967716488 359424691 879522531 888774746 975980586 127665018 589727272 93689299 560955294 241496128 734623813 37606779 891081280 20408825 635017566 401802251 978629086 254722155 808451664 717684173 892835606 358141476 771245321 312855958 628908529 348179547 674163415 987143844 995680175 753471777 864898249 606815069 890594632 865441936 928505632 116218035 361041664 171230338 928128831 92157569 153420693 203886517 869558464 429845186 524610571 70414962 150280358 475714481 974782067 340936855 779499424 607997571 833117609 493467310 768399335 819931496 962454827 438160460 957190097 276375062 897255374 368834929 397611598 86626352 833151070 337023009 342844099 905096408 979824925 373399241 763287200 759892762 835587837 107495692 150926042 323708525 533843872 808268892 893006778 766178739 990165363 533966098 860750666 442840725 741413629 120465695 166014002 122133031 685055925 131985927 600272999 285203137 609519077 355832542 537772289 945930719 975849205 810176941 952488725 354115396 355755565 225343605 575703208 376999156 965194427 192757774 880660804 435383289 935242266 948426624 966811397 519756440 534222697 102940617 788887064 172239565 283877946 278389228 645560991 97301979 840877260 675988173 686358757 611140784 706120552 65814506 334595890 147666523 520260858 808785115 953970981 596025494 610098023 933081284 975238543 39004886 204794680 126339003 627030093 112876644 427816343 214597357 284675775 411664335 546482035 658822905 882363800 348023641 515678858 710361481 850717156 725998743 872944396 187204515 983519341 772747271 963668540 861875896 946438056 281965772 714710592 835176401 868436735 436763638 760501532 934240069 951364019 817921634 856979977 578797843 985686677 828979191 863488736 80166964 259112885 849056619 862226333 506442123 541506420 278809807 533513116 447291757 589610715 939554669 980432864 568775112 656413393 559881654 856233483 96531107 885704286 728025831 793912620 495688387 644944453 449602431 922054735 12736477 457960000 420196284 851222677 236091635 312781791 392431406 431801183 397447531 511224386 921471598 994064064 83795852 644152055 196545284 722548868 548462361 796354173 495225253 894015437 81649864 432155085 11537121 290896247 793546140 873224996 787315163 937440396 363503235 938358284 992514487 999196510 198179584 203477996 983610195 999086858 103105257 405264302 892603197 984924201 202067772 868555217 300176457 982853115 994155395 995057800 876319538 884920965 383348863 432244559 55077693 974544620 356123179 902126103 566062632 915630784 184251733 342358195 323921913 641994743 988951150 990084856 197087895 248121529 181417699 314947991 523028975 574320097 490753732 659546681 613622850 885520987 935608237 956695364 516508002 585448706 259514167 786013501 47461264 934320239 160150024 191674794 55128070 137468837 977535605 980070555 82334280 816490476 522488891 665945514 84408661 142415048 988125914 995301990 166299336 804024098 522417764 990232712 461378953 621045277 872305848 988587256 845306079 927773465 987280861 996282982 183045462 895850725 552853286 813324390 927785778 991787058 237177733 381083421 743167052 831917805 776857489 780117153 142182880 167957920 539987725 639098974 197953548 425080775 113684516 882777376 174650386 542991637 497654657 542076139 264883187 613057631 426669188 543223411 755119151 825580406 930408888 964249761 814217881 897629649 439498634 990858707 483902011 565129293 634296819 878410727 913091095 924783316 351439280 379962279 615179527 645509672 442026706 479018187 330453300 892371871 833142554 955811416 398090023 510774404 323841481 593337557 747549471 866761228 747461491 950418021 391048812 527562591 665658166 953539524 130057648 138991255 921860004 986223415 333864463 806175713 997951522 998732639 412829349 755218817 788910037 804106946 539154929 574223712 252277770 909196702 606694880 791162183 956851879 961888530 426663340 779890432 187308671 452040922 724873109 823093567 980367290 984915201 973512667 989166647 422931769 460960729 906965903 958460660 760131359 922869645 427035913 480704548 730851277 923365319 486855134 773833416 674665844 870537257 637789064 815853504 938026979 997607877 892981814 985108004 873109285 893555126 758065291 889128378 85386229 351284461 968491340 978550908 680945388 719876993 115291161 928573054 376843479 880663648 604777660 878854736 313780963 709074640 953675659 967096440 842007643 932130346 279125222 728629596 276963467 402336537 563441951 685473045 347368490 895048819 905613001 959913661 136775366 889190054 375222087 594931185 266081379 985366710 925963740 994809931 811634257 989833390 420040466 488921585 684564279 943024489 898307790 905778755 969200030 975919266 170651154 662292180 112579142 664559434 973108265 998898347 104907481 920595030 65318299 770391935 780679857 944928620 254046977 737995373 553168551 740337653 48807480 997705239 592027747 911041983 6848122 395319992 787797661 806978669 742902682 767730539 370221157 928091802 503022921 750384347 399500776 962644659 849697934 939688222 135410961 357310437 864671841 929932675 720297020 784428503 743352299 891246119 505712883 544764541 505430841 629292528 923759463 966468732 664289848 733741787 803089703 875080370 8117375 106671799 438150584 952669556 133303394 339271669 498486636 774062743 645656225 717677502 440585430 457853520 395455588 567784134 582826081 711264550 715854605 814141398 15086972 90943727 823734863 949981311 148895006 288184425 623035826 628201411 584447545 885684674 456765981 571542080 911228258 948841257 833000313 880890750 756472522 930824585 487483498 903023154 844883014 904969546 783501466 913155788 129414089 438787064 155859863 317099235 450873305 758350339 686573324 835122529 938100669 945766814 107583033 807910776 675240957 683235754 362993928 834461522 772974376 876434914 137090386 948845271 346588042 837142618 212588735 829454721 79760793 975629433 489228664 872899021 844960529 964012033 302369791 612457668 590962719 664297746 685302013 935842441 415347364 723731554 764448580 798763230 752916841 944831200 657043996 724671793 552285081 877630154 876705908 931714489 953348485 955289336 602244845 945415053 105675116 253408554 590364660 870881221 254411164 631318613 460995215 820141613 850850854 881311095 523193084 940759556 433255299 786525934 641676143 829973266 247934101 251530938 203662647 861806757 919317440 941590871 87562960 759329521 444861359 737381158 988458397 991897647 800317530 855553322 289521115 603106529 277250764 607981729 657483190 707686928 577781697 740300462 805678984 876779782 668404357 983385502 424280559 924098326 910439258 961670524 615554611 926696835 898539099 995621680 270050822 606944322 573786297 732496640 64186155 503837439 810561203 944303578 135498216 970451604 194847544 593869832 646028398 851845404 22390240 294342012 220060043 567029077 355141886 620485987 252811341 821269714 330538032 379186929 364544301 429899521 231457615 535646750 547781948 843956333 287538545 332680185 538345834 661555460 69508485 484025818 973028664 997671162 405845260 950748847 941587524 969719100 445171559 592993690 571252494 803735919 308631941 555387318 293017718 730526384 930744381 966484595 372546008 448329787 16665352 504043106 110358956 218007823 236314382 405607809 687710531 854139595 992818408 995607087 431973520 464237069 648714676 871620407 342883510 386733787 384580310 451633790 412704770 763616738 853557290 936219239 901417153 958835409 843747567 952853224 111454629 953294328 575414973 967354464 127630014 875812643 440144911 746261279 870670615 876047439 446990001 486018674 823249338 882272381 466145406 486681053 26933077 381636380 364290628 825068661 304417833 404461892 749346198 939747845 753681554 906577959 226815239 492550401 120356995 311730189 745831823 863243694 875853514 941695752 759213182 761789855 228687280 600144564 696431530 841178645 823974248 985989139 508713781 509283846 666996924 763734532 579094813 870426124 478592199 791895099 219298175 445216153 248196696 539798964 637439592 750411028 191891690 989540191 185388247 986806006 252991934 430056395 207940158 399597297 960738877 961155046 511754754 796900180 207596649 833712685 701669627 977722158 586043506 828398286 777580581 788557831 535257317 707844703 867278243 894952910 32281759 84886058 181953675 388742452 909262586 912440247 10936220 53947643 230173455 835608856 155250642 422394169 149316429 152463923 369593268 799023612 199193654 442280297 953861124 983526570 1911253 585061002 117247547 936454744 979660673 987732862 540558643 666363825 833979463 896069597 10029122 479560603 70874038 99906805 512600566 996113870 24619452 707664443 864407533 880067482 225570116 903830240 570452479 901060803 241956461 569792020 702251118 722946518 685096548 902044685 716468 151428719 142881986 631655267 262675538 483392864 331421437 495779081 101906436 830675733 251763077 497004641 477021199 662939713 438641459 930691524 527915955 699307192 629151793 806411897 595932382 674137751 745673872 835381910 546980557 855386268 685400821 687342583 802828092 875938804 703413284 916492458 723385319 990852561 795749359 876329708 561047988 587490550 318301929 994091213 873242469 938081595 500219914 908624844 452306061 767944672 464423619 634938721 845652756 989879344 242481406 855718444 680172059 907033403 231536949 801725862 57186292 623686003 84923191 248925326 319781980 774018998 490137119 995530063 72101022 958776223 571320636 862888437 917440374 940046640 835403076 969008056 504219869 508735996 391064698 401884941 259256396 518725577 241828293 884505644 421156697 959508814 39313936 737333277 119724996 978137184 51770038 966523542 603132421 924243918 318467694 365081136 430267801 984553489 678637872 933367715 208336647 707684304 856641638 865407874 563189674 870096373 852233556 891586121 372601877 552751506 128004680 923357346 584690204 972554232 646659910 817721916 27020447 662998352 261927940 987592807 29687426 204647502 447081089 753278129 423233258 622672939 357338058 528810036 838713111 904598410 771222710 775608079 709727245 952799076 948610293 956059676 15508356 974352507 749377193 941101306 551622937 692322541 654121251 881869567 536781680 943309219 41645337 536468607 797335372 971989375 929431248 978474883 699223194 895102874 496270000 824054985 580436580 724554019 170107138 961010416 787656169 855601428 397857382 588667768 916616267 975026135 205623111 661912558 852878440 882523322 674094942 938456155 463709197 707378246 313922226 547897842 647156913 841095966 625295404 673975387 386880656 843429926 828343798 875937268 105701776 196667489 160573207 259573288 813890354 844030419 365825257 905924321 634075571 903697090 684666336 977408813 502047805 819755065 141865645 254764630 925607679 961453633 229389227 674267571 502712623 863414558 988439319 994243117 970759246 973343500 451611322 718775753 143817758 347487785 406661403 486315761 108478727 241299754 800189472 813446004 698595505 827023297 957924113 979817900 104127349 240210970 948333101 973793292 528759848 561234919 512461469 863750994 869665783 966211319 841020203 955287648 478277414 960777280 553810117 910657893 355475878 402020123 455746911 615578201 733351249 801051842 170134478 647108153 970566285 987957735 699662989 941057317 360079274 818591356 549147691 700470308 877532866 910599926 230849919 703510293 702032897 986192115 665555321 748321223 41310918 85935650 236830866 812683752 213563839 736201214 751777475 795231898 495944331 645235387 784029620 952759718 836060060 950734841 997268598 997943081 431774540 476345718 459235976 888628275 353259709 469617800 175715392 190554374 750063800 949317365 988709070 997552690 859248860 891019176 845678968 903976057 984444668 999018979 555128991 812354194 899830171 939313955 843985778 968680560 205511793 296517031 253881143 475449625 834755641 875084408 229318284 361200213 590139413 654389953 805655277 966897292 961567460 972630316 412306659 851693472 557356611 692572887 985407112 995091596 632771282 729358633 412753799 970877208 963513366 963922020 607002870 813938464 375817750 946173185 547803842 562798210 552059995 785802003 645437295 764968697 69985353 728223671 530915660 616940696 158169841 847291121 8608226 977937717 252517292 585196829 891275069 965982841 99721408 301782578 703126496 943038602 454348540 844583598 183273680 854189504 175776027 944403860 745058850 989586773 410388739 675348680 981090518 988094232 49818767 408065081 776622317 898326261 243340 206388040 400192324 911063491 351748417 628199601 323000371 475284243 69292996 360595469 860820814 985023729 817064312 876498819 779659815 806576628 86074763 199975127 714622097 803990677 351126426 992798111 774797778 812288018 641137520 781776932 126761447 257879480 63374283 336501090 475057896 525862362 184670297 267048420 923389764 965118880 824592140 907947563 26892690 287928281 769814871 818342452 689842227 948656247 234104462 634841846 80814750 623734078 243825244 324603266 434894783 515845861 379966218 868681144 486730805 610980766 134548747 763244271 162817760 174311904 472705115 751263411 652812583 731608902 547798022 699059812 58167338 555167386 759523106 947630348 820966843 961613663 245957645 616662360 856055192 912976531 625375048 954698066 195645605 598213246 383662660 961386616 50711339 476083125 335479220 656329647 123353340 641668476 916790987 953556186 887280609 958229749 485035366 766678069 685179190 773402779 463045553 822225539 919797361 970803618 934775877 962434408 304085169 948472068 645801690 828338754 859224305 922003960 178455059 665091374 88611798 939467276 411564729 471462942 296505870 542525105 583213005 632472974 139902881 507040592 28710127 142023354 392526265 457713184 107132747 826071202 169151507 734771604 376421642 972393619 781321590 846841251 346933019 807009347 345774506 503683095 924538522 953182341 591863033 605287378 156087359 846918729 567691882 585900352 634397511 934161169 369609315 890054230 211826410 473891151 404588547 610802819 450295640 497005161 741032877 963548675 356223572 985396642 985483384 997871736 689254544 856390080 198293072 559000217 362332513 938931239 320007373 906920194 737488506 813308169 480438969 906012821 164667152 375418280 195686995 961972628 346514253 728691300 676130424 701478816 783018550 901380847 239639660 625651055 715693761 951670238 813272476 915875446 394379386 655682264 877071122 878016026 894550077 914628878 165692539 409955347 168412192 840682493 962581341 980389523 255740990 848721382 113835347 575929296 734145286 790932819 399814455 980174219 797791336 907561427 485332453 935368784 508865592 794558160 670888025 975535162 3002721 923642758 243623599 935837003 560373994 813094164 234867210 901827893 755639126 784177998 691492296 881177374 788246314 839928318 158519444 925373656 287433906 637457462 751688523 897316001 271286986 312965353 202717894 661224067 21436358 127718769 572493866 852828185 991556958 994337512 762406884 904432155 849098918 861215578 497467508 884784510 98642104 394563937 834962955 916956689 563790915 726641846 342003732 504510299 348865846 848409554 518421592 909545263 738962377 868833440 204836935 358559608 28682678 166773681 45142950 706319493 443702681 696182455 440077679 950113905 87150390 817326405 300688473 786718329 920412867 942590941 408991223 739859555 130195456 997960850 705903346 730196682 604550642 729738897 977649509 980958378 725117304 970241368 453561174 686509401 589029322 644380749 150293636 278683856 658376884 767132643 893362641 966673591 790378967 976579227 81924 861836714 37579725 937440945 359664109 606205901 787231714 813651891 29439025 238462806 571689266 749407220 837679309 841686416 570315825 907506773 94753002 249845608 813102656 832784381 547921127 586782975 796032228 997696963 256165326 384551182 701719256 745083694 310384369 452183207 725739096 835097585 727774522 929580548 359831233 988829384 109747702 749176265 115358553 628879691 480360237 626190735 788440827 981342954 644975116 892574078 588006778 776399714 607965507 741534304 634946039 974977696 947404087 997525417 605272238 614430249 162479710 193483063 570757832 653930480 676506067 979248980 809910723 931872544 348458466 454820076 756129988 870829766 563001831 870199451 53914004 286051891 634976366 690714103 962084389 965265835 318645353 970526798 191930508 831541839 501174715 870791496 88966217 159430736 610355697 905385471 891315337 917384298 410607312 945512243 609642831 953772302 926917363 986644482 886546317 888202691 465075674 972778953 332413311 773345708 929275060 936215920 268856493 524894559 353377513 378090596 633737610 853852660 111846248 142792417 25320103 58609319 393873996 792258983 214739771 702191041 911053384 916866167 661383284 941752573 771460052 868990744 41727408 333434634 442914200 992523221 261779318 485952883 394325771 923684463 276559521 750741696 908011931 995291186 771464688 906809365 931178627 962838318 311800964 407267328 844204917 946577554 696248385 965142253 678481366 965491177 869709646 982025430 247414300 877394572 537775420 959081817 408924959 985801483 834679439 969393717 581638685 673037172 947200279 996944733 350940581 578044220 742089045 876938375 671213328 815923041 156001926 566722812 193363566 286397280 860115469 969152465 516273946 855606189 135090711 154402625 46430435 237727985 516804987 815267527 161140754 911891669 332158202 806549629 132041899 780796910 878958200 989158209 393781407 537302912 96949946 439007147 426009846 490966252 989363010 997774401 528953267 575143808 294749713 856627836 940930558 953918779 988684602 989117920 349758751 996664000 681450064 873298844 383117390 991794122 109999033 317419610 688372176 897042229 372798934 561334633 364478207 431229888 265467366 959931833 356483308 625620620 429417195 734509801 268988942 634329025 541993062 818437401 613018649 918726632 709031606 928962682 722513887 986324262 72672679 855613026 75305426 807681606 485500003 818669476 495318730 758053568 933147737 946735634 310964133 952461929 211230849 308358371 468693666 912791190 888946120 990664548 111108612 324956929 62086540 737001454 933866101 950064820 657899920 837114896 96604604 782685705 815373185 972625134 590429752 731226247 211347804 336057228 269037223 698787074 861253879 983960949 109953868 486130666 485980568 740175571 20501508 161968274 966868130 976301449 18091605 509751866 16528294 916698167 372115076 876823339 814058503 967971300 178128887 908707205 615208632 867839525 901358224 968210838 308175705 837511132 707366375 899423249 837981938 862919497 430151849 959869030 655723223 873501683 976429055 986546765 293560420 460497151 887473291 997915083 724529953 777978967 651185358 981712867 607265984 837078895 726821649 959001745 774279433 926540321 827013050 915545647 84600045 117181585 911492243 915357330 708951348 769645306 676405885 806346194 451500245 921079922 99491385 363871547 193110553 432022145 679998996 723833465 268710566 477861188 212799232 740007911 646605833 871307852 628822250 827145909 473230492 524211623 672339916 805364164 771266128 918828827 559637250 903092848 842637878 971107908 372374597 412677137 83040166 555319285 320632346 549432586 271877251 405086685 723474488 965683352 147235485 826061634 709844889 928144988 45147304 909807021 337171859 601289190 701089843 869385227 460029876 809934193 470968323 524379743 690902011 942300413 806040225 853595257 967001988 968538766 906111619 907372087 687647479 851573889 222366969 391084460 411161103 908626524 82642330 399627400 866279703 942387503 487830099 825555401 234560235 490155927 849137366 965439435 123173790 823871617 183087792 699855132 92337063 144247699 887862617 980114712 729858044 979570761 738846153 886821178 559362748 821595700 795828170 922453593 471534761 622003579 535765832 949211736 221991469 345988853 539540227 752398832 54643707 359517413 682693849 902951632 883440936 975589963 454837617 625421209 185360397 533357213 30885023 114998405 4961408 115316780 795769496 887745849 295038355 852943938 368248633 675917951 69977384 848921105 762104189 805748915 574688750 930357970 935892700 998406041 900424018 962401869 416339889 946650701 655195513 764167603 165719379 290684971 987053835 989173704 400626485 521311168 311675900 722417732 658414749 823345220 153165013 376792152 768492387 887016702 21738618 27021918 518895397 814376343 753182269 843235131 623395771 809788937 427535709 734890625 831636635 974308712 129298738 570831074 386293426 724714942 329581135 856515839 448693385 887620612 386898336 533683991 998256744 998320340 341288718 573290411 308286979 723868230 915127190 923979081 10148537 492947049 318653415 670183648 817828940 899334601 510540015 820360055 112340514 764522612 452868438 760001478 770968197 782782162 545042375 803453090 18541511 636690666 554338981 780135038 759109047 986513518 166410693 809440522 388056035 656752794 950099563 950788227 221658653 824313058 339836616 487882773 726702259 910134133 290680046 561596878 58720517 501481945 517168200 894709947 215329498 692713993 89115026 259185200 215716346 566232532 711120939 716542149 295351720 618960556 322658 855134525 987879155 997766812 871659700 932080415 620078852 743872505 366007954 465582764 448374718 868689964 629793013 998706105 308628360 355612676 746832855 770397260 463298183 781723141 604018173 826024858 192184922 479305186 810439197 976838330 564734980 940384644 116998288 472062512 50468504 324825121 829910452 968434250 980213287 989943573 189046779 619018300 337168299 499254343 917548367 996085124 840821248 931718370 155164653 895299735 700401747 901710277 699288370 878194417 979664165 984842081 286850493 521728835 439524593 499655334 100413898 226271871 461979877 911930350 173900758 348098758 372600135 980940930 440142890 712058738 879687188 890970052 614432174 969628086 70845374 258935260 914617756 948682917 479308217 793458093 602657481 968206549 347440250 574847021 456716883 788220815 304123819 586591753 190255413 619735666 200882287 597498901 913405731 976993438 780143711 794460311 481363055 802216537 315892726 878182547 529499702 907829494 696476767 914690283 991647078 995830916 882009039 898072309 154160661 192823803 563747586 603991352 524667168 863906924 775438470 905785364 416345653 735917545 705144279 745609000 936282099 956530584 534811688 819807424 329925042 445400970 608037617 877850925 871519486 987968840 678100081 693317084 328399760 409735210 114562094 121777264 738340427 809472165 474413797 762105236 100626678 609221241 786344692 801868342 757312294 913284795 900764564 995390554 922739870 953681799 448097022 457836469 816227535 840122361 130136825 312640666 732958502 795387737 494523336 715979523 654836456 831830850 637481735 851675242 218438401 638410175 73717346 824319642 142945757 809572181 949419779 955056680 45712397 415069511 471372750 947605402 687009911 995405662 82912254 324986323 588400611 739517650 996561516 997890796 647547244 958935900 262799690 331259449 618472166 840639758 937235113 959462646 362721676 444866577 523081649 805188851 68697810 515972335 463835069 719761537 668966077 689086200 568080895 859902231 296835860 562469131 878378302 926005205 162238732 653648433 512100727 849716861 94150806 381000533 928241282 929932074 358170164 847076948 459201678 659363641 481157535 854329981 894135879 942949117 656946895 690044067 668069304 695142938 748823445 904919289 47242358 509736594 615689816 859288726 132799525 882094083 595790422 985539435 99512785 642071257 657533369 728380009 214008312 348295696 939489394 973712648 311039912 412560784 354162332 883531667 243469829 272002701 995734871 998511154 215787161 495492462 503586415 782539603 399189048 649804409 104446697 567968864 774781580 912498866 408529454 743895371 667144028 690501607 175888822 303130853 760189806 876860526 291867413 403226001 653642712 807575470 266014995 739994213 704171594 991971739 730528078 900005754 307817207 401332296 2277272 936146349 176696862 478229395 789702985 945249907 877420200 997147257 53501625 216324850 783774963 908794361 738908399 916357241 632103419 992785830 807015377 833234118 393567947 942318892 149671921 264312553 627687177 795115797 149228721 292348170 991045783 991681687 179307996 796282903 164800113 810538675 738689589 818254276 977111439 985252609 851684857 852768394 597331204 790244442 14778165 831888211 485699333 747794904 956997687 975988108 111534917 739967645 173706049 706829536 370420475 746696564 853262483 940765883 843338833 950832592 27111064 745109569 978056515 982624076 865832361 870324076 700290583 821186072 329839905 546658562 236523697 992266540 700204069 773510985 789852661 930218490 992507526 998219652 788980622 909221420 669510204 778585113 937848774 989522669 947327270 981890948 825640695 856050142 60215177 401836599 700113315 922269701 293045657 805697239 886844086 889443274 683497843 757440370 468113188 504844277 117229637 735346815 32215093 479968935 228379653 610375278 823139131 865204535 542626024 869300597 167316463 290505467 444981121 615415834 104293015 274053942 308255184 677479781 764029532 810985070 626707976 664162374 7376803 827509499 534248961 753408891 764239042 988808142 577123667 824473440 520611253 921559053 867934238 966960382 802458085 805449655 417945613 550150209 736872279 926140455 932860099 960232772 202421678 457897177 815744675 926636586 818964665 831068542 341528380 717849994 694514064 877074473 658527923 762380578 952917322 967405906 960416245 977172059 829395457 999226701 300543098 665042017 130078058 720446813 182821759 735159942 247661946 814254804 107028560 946866417 507021090 614186356 884338022 984545290 107225544 707964311 935052837 968802936 987841007 998628094 604973301 819720194 361712640 872779766 206296066 362277839 265501029 636409952 661631622 695964699 948641270 975645263 689475948 775539118 590402000 598444916 307445394 668304040 510914728 536009165 342755916 697109462 604792179 684540844 586494044 622722735 845252468 958077720 529114003 971854294 842074485 910112324 768059654 868362735 700350186 793492069 516415746 985795731 649912807 969208481 544128050 607667991 164587599 854763172 326194277 491832687 975656221 991736484 817022683 909094902 548659570 588572692 632203940 982734953 781805028 982582241 305252414 476981223 345182036 400540002 898923441 952810769 94809708 677293878 419660456 967764889 511740752 879971925 233826190 466060757 384788631 545537100 423925518 962926527 240476698 346687711 243627246 936726199 873750049 894552458 525765274 805975048 721655054 799996325 239347378 741716404 963544684 969469733 308839214 511977233 335796142 376204330 617630200 879286870 199771813 882551823 595578736 684362376 777924578 938409283 803904694 898001859 654608676 909195717 146600184 962046977 605269095 785539745 761851780 997567311 812540271 899049780 855024440 990617379 372313994 957115203 149744886 770687034 935495187 987111792 105211247 581844533 521962164 604350216 827390243 855326370 940016878 979531706 715536253 928334365 799501387 981776031 709730858 969272041 297555230 456794779 995100600 997773829 305746049 547561570 761998121 788343703 355752661 619626868 525704992 651063885 773148976 870921900 91732837 567071519 921298273 996308345 764032390 773755625 746047520 841199521 315797646 803337952 257272249 557766337 311614633 908150545 184590668 337911829 785786597 999200460 267404154 450283417 507064686 652647355 994296140 996516321 143216012 352033136 731997684 752041955 808801602 931492262 986503082 988413779 378108063 415330728 404960705 497539100 620932959 668911870 325821777 869501166 640137399 813291065 695202687 788201126 915310174 977431416 376116563 670153701 830298063 881990534 748116792 892755513 651458326 778716384 305458449 722337111 189481294 376300699 516372725 643292073 274933336 951010578 68613446 634206805 929291334 944811270 870457400 889490187 105201767 781031377 590611961 847637024 173059474 305179154 890417374 896980332 112080115 925513793 154062196 432100103 234465346 749071619 860936410 994555016 544936812 882771739 723407043 869759669 993094097 998991921 219537990 926726909 823662489 834928345 529140657 638472353 608428632 815827568 638810946 860792124 822470565 827623893 738865576 941247014 94609486 553946520 824550703 907556891 356390060 542326998 383829538 789910444 168600002 952744093 154492776 829181156 283439520 617919495 640948922 967700311 799145597 922796310 527525807 845249673 965721995 981358438 894558603 898756738 446638886 778028962 207895758 394853416 2201490 240540522 932687490 971674626 957803894 958785179 357857997 361824047 141909676 780627857 947890192 971803377 756468576 951824502 445511329 885355424 454180211 473729640 977940357 982262620 621092176 664009561 317091822 853857533 621462071 934540384 217214392 840478170 482772622 641466147 800540998 929117498 156934341 769456336 348168391 553518338 635648064 718187132 818431915 886902184 268999318 991769602 741387103 875022147 678167435 850053566 724296700 938584168 441717577 983974563 137092441 219425811 439491682 897697252 398377768 671510935 532979921 932574460 418825954 493447853 434039458 732390530 870179454 983711111 235622976 705858094 357981821 916542219 94797870 720884987 697782372 985120577 677425232 682314130 161016465 394967724 721759273 908486174 448445766 501556919 890919971 946619623 539598218 775875684 709470828 961144516 564002840 957379455 221032786 807269462 910583319 929677032 870945676 982454542 483790855 648830163 108615086 904828394 830708314 891120570 396182930 682463007 301304664 735998851 871885080 991905397 400733149 914987007 482428641 681709566 94174109 894765607 204023163 901181619 842412800 998011653 658838200 869492990 710791815 972129401 775746075 920776233 989952700 999083799 404868330 634020582 653594966 977540723 109253136 626520093 518071311 677612600 695336205 739642039 636227931 837499201 632202229 766658216 188593207 636011146 855598431 905010267 305839558 919478452 296463743 682932014 56457994 624969004 437344657 744177975 32139894 569337343 406184922 792839689 317473915 523076559 743585512 879683510 387193482 989405702 553446559 912981125 122811386 406057531 752710587 869867182 101043062 358741421 594799098 861547229 432901369 584049699 242738757 815548244 94093676 131137391 885775951 886436841 708960186 787098336 228675678 831457818 857683731 957365970 550701591 831171102 266135030 852783982 365516646 907453618 6636649 935302585 904405608 929688590 51244642 560663385 19053273 72105738 665313742 940082582 683652240 972636244 148706276 180081588 542066515 715768424 374315977 526065216 57398282 915228301 979101697 999361140 864016187 998142366 996523599 999171635 594026004 953758317 550735223 714357618 710680666 712256163 162763556 216587006 42961169 408152123 996202910 998840960 4964863 275219363 649740949 940110321 494286785 627518840 467699892 821583978 812375566 909932234 197236294 910203158 270207778 413095173 428891402 596531041 299221195 743493886 482202216 688825290 490395732 503008097 20674751 393977566 549255549 922544159 445327251 690522380 177759840 674569740 200084614 776591821 246513648 808928594 81814331 304000714 870791180 963298010 212188024 308383401 494619874 984053436 447691872 766536550 191894286 395818760 804852907 910563262 62290753 707789237 430441615 781015094 412345913 987230585 387327717 860552194 497334825 576958406 129660185 992645311 155572124 683061286 737201285 846335257 171965566 220069532 476880560 617369174 482046373 801831213 914843891 929820618 478939349 763487509 974999228 995626902 524967726 753858738 613280363 722763501 116534129 732709835 262356920 525735594 10442501 664572960 231921597 823216289 191559398 825451911 891427284 926169270 897658344 990613639 233039944 766832607 637952984 721450722 50303831 656906506 925921205 975268533 483288881 766239590 593902222 974037029 735408699 962050569 408085786 514411323 656682419 679891287 889654724 978527349 897650231 910118717 850251370 866164659 694336758 783003732 649386170 736042190 675954267 709276527 383408792 651987147 927435441 939340766 311053279 417545637 22845446 369692161 278663106 704215883 183492548 534251609 348841058 594871934 985963619 986857216 673195251 905388054 821794594 899710589 663411032 982122045 224436301 662963111 997854208 998993478 20470682 885255232 853815561 870044246 562189507 731386723 520833123 779431928 202711817 561276979 526794004 960790465 467903213 961432992 665077416 784153987 443816343 926506123 758122709 843368263 80736804 408853108 951995696 952400260 353993055 597322597 172777557 650077414 915413893 951828736 394952841 652159571 206621452 795015477 484684470 775759602 176518122 491695488 369613168 547293003 797588933 955661594 577115346 597366272 196704622 711589610 196392318 719586867 769994306 839926809 854548228 980680995 115682434 936500278 622251103 628447709 536693569 872360777 86274200 771182903 815734183 909894765 269508458 427540100 509347332 667778547 546291338 901585190 315844745 735616819 800973237 867304442 806152255 974780332 438020645 460489805 505883006 985249895 517054318 969381918 165426086 886428715 651806245 850753750 685276859 851540937 790993873 898290714 855243445 893732150 921491767 926595287 583638162 899301170 247651204 386920364 212855213 351218723 994700262 995158377 535208151 539733674 135888994 696937372 78280372 373188859 68166601 240088612 523981275 990220093 485441150 543176761 121512662 792781546 171525822 361072409 289846488 613994857 655653095 963658808 577389878 748481672 478610035 984540736 933788299 949440006 983578311 990603019 637904688 655520858 916820054 922558882 101117743 579530343 660514037 929223467 506806071 839196266 409648200 647891230 759022228 827338686 796497221 877910581 120329047 226848811 343745304 453108939 91867164 626745652 713798619 822132389 104180835 442366692 113614332 710141176 366047825 947707069 560964524 665179015 654725003 741044551 92170644 125202567 461259350 481378780 428841658 476591733 808695294 888374767 171501935 851046878 391255695 470671638 127031514 634589313 85047454 915031938 105879204 942623162 793120029 804621904 373483229 540210748 781667974 865984085 173415244 748997990 351735742 426746161 410474100 475125359 421127139 594581608 105062376 905712996 892723300 898471716 984953518 992639108 558000298 649338236 503649130 865081057 538968404 934746849 418981669 629679062 828103561 906630931 130210644 427692867 484358079 830531780 800208676 824036590 615342121 742481771 636112531 957464735 656468545 750000920 508152338 703495660 650787103 746259386 2529800 290898527 328786688 618731089 993978167 998630801 448943432 616016098 900243780 978195466 450047988 504051714 141228269 489273963 755027252 763675804 854649211 960395101 593502812 910524615 181356832 725459082 181009725 865546231 677225015 864606359 776386874 919690114 97764012 894621237 870390329 907571612 81460798 814892354 714142388 855878674 130989565 881354065 884253195 898988253 371157653 503075631 260266515 884858661 206675918 394104585 652150179 759697257 198283408 459929924 177743946 892519162 387567615 915372236 155822927 685145568 952058514 955877075 695680736 819489119 565273650 879069828 448282026 940683090 313895030 654449015 220871351 565660211 660635907 965170869 974585746 998774519 808278695 850314986 817765418 934320975 470227597 593728866 583391997 710453441 43368290 213796120 950141647 988548341 981026607 995216189 433617034 899621546 1539603 360100632 44958799 434035332 802887299 964288100 267363021 395500791 423309751 611809958 102814326 508377995 895398346 943470883 411920788 500850331 500620628 920968785 672036803 797591695 321878963 919693730 916405786 968219831 213110028 371103841 482265256 916707638 376776853 854973277 83163354 890694581 937720469 976743490 516685188 925173209 374949672 820362877 5213482 190719100 177535274 569419269 244077372 282987275 955391672 997477590 496516365 886635767 631668868 639725756 895413214 994152938 507125806 799493679 129487851 263740760 773598513 949130289 920409206 990292483 960918464 994001413 742436663 959363295 935319848 981312978 808857354 941409215 398961246 745508237 776561987 974605423 899862519 988255539 951644963 989102700 121603790 512031459 422954900 541678284 106164940 132003159 634592079 883009580 133918561 187800942 107756014 174481962 759457325 812508164 274600124 984938628 747895200 769459190 251528421 896796960 660392410 975169905 360845802 857934054 467871699 896442323 971876606 985436418 452497342 962545341 372959226 616414094 970121819 994116626 668942556 720156217 187150777 632977027 899715815 965375377 651336534 724541297 871392817 893685707 864024612 875821317 740501897 794464955 123902691 705920000 454581042 872948659 9472820 198117067 782389069 866792347 841760474 939773910 992074365 993787807 715060426 886366213 629706331 639491396 238593480 907275211 731009005 937944840 923636038 956583033 840610223 874466702 598614408 645643361 171340728 826961499 325268691 740785845 437105649 900903312 694655495 765436979 539794906 812561902 741784195 925952760 302088665 905005787 353761632 863950943 269421257 741055839 442143633 626677599 362733108 689366288 659228249 888006775 829232749 949830869 628798739 833270474 931835582 987109785 8676421 887226892 111894831 850177569 176843452 223340992 971060606 979226653 604086439 751615086 665464093 971774399 97922842 107439839 358211625 974412067 661066348 947902679 833205430 837747375 278038478 475790449 691647422 993089819 290130613 888399991 238456032 348579382 939373469 976131518 789566365 870291862 71036168 425156711 280129504 749022275 987911387 991689409 742230764 810433657 430784745 464984863 310095777 679961570 567998741 714256450 47252161 155015516 374200852 636130665 782001104 992234653 182108919 240837236 344440098 714494954 390686348 749626141 143854489 189189668 674217729 810619068 457834064 913442906 944622655 985089923 435707448 577958868 117870373 618350309 138537875 391473341 972068363 972740571 629958563 992661387 976680910 986706765 268409021 540396987 412847681 509843051 220873155 963224246 334007352 927155658 975626072 996928912 782532432 994843357 797032515 867742138 261769353 284735154 929552289 994704247 182695508 632432986 101006428 389888717 439409329 593615666 286363448 754341388 458579893 906164074 570046003 889515193 986551574 986785176 84804805 204303227 726123339 781215590 384554130 788025280 802398652 823966775 550901455 974281404 156189700 487667104 772964247 871159433 311308888 579592761 669512318 739051012 581747342 817317671 344047838 999141463 337415436 613535238 234969941 837600292 353817576 912522290 226283896 983709581 86597456 624271324 815737096 872881748 764222058 934742137 670258130 909577011 453543380 760269955 718421644 986884484 214895932 886156592 326661973 586888365 788522523 846019752 903927421 966995989 192206693 641566939 983295382 996654223 79110729 522845419 942206472 968522470 698050857 830980179 837905385 866276422 48266481 732419977 238451689 965020646 592852125 923474689 390107848 572132837 623558877 776931196 223390025 774331874 296710919 473281553 656795140 925894024 842395766 951097157 86875298 295403595 830343901 886458863 766472485 838346144 56235082 323680446 583961672 618110970 372731128 456709040 676988716 790581342 3292209 780275807 303415180 469234364 257288377 779049180 315094602 315610101 7745202 581190600 90208061 899722339 841008329 944512050 366228308 411093061 558357088 787461735 639259701 860553572 993361559 993565773 260843011 407934064 381637159 529558852 299418028 793961024 374201521 773075551 628623665 847293152 974581312 988502106 223919880 691771750 596246840 651308927 574926911 881851837 595164494 797652280 843493024 948870175 341669800 993889533 769559235 993976395 680243717 793718255 692961110 733276751 134338550 697213711 910803049 912684234 788722985 909955447 577848767 962869331 432208118 784882247 446369490 903275876 628293273 867523789 539273710 677282632 942294982 974120513 806234103 916879332 581348298 649983056 366996793 599614471 573205209 733194578 351616230 683707893 342522570 827791988 600638869 733291897 943780535 950200100 901243032 912812701 833226675 865960414 126949696 989162404 106340509 837769820 807454194 844680073 383830692 888716414 600071941 771567689 27538517 646436497 185196398 216519245 229517171 779128723 934778735 996458427 513728877 562488292 391347414 614343726 800746103 892445350 821124366 838409584 870010957 910018153 380621927 883324116 696206661 802877775 54546202 235421314 784696618 838589218 305586800 581272572 433687646 773836126 614778671 986729350 998470628 999128822 488265564 768661808 183012781 635087835 411931350 559107565 855437595 996548049 346284225 916602965 268398775 404497070 264368016 754363280 361118598 967094401 258041469 387732101 411396478 942906072 46800070 814900861 739917627 887116358 770072495 902877512 599885156 984995345 948455726 975958251 738463657 802458825 297664368 808828443 879872008 880844691 420312067 536656872 657501819 668565306 849820907 878720517 290075941 899805383 868543140 937371010 574217416 751724678 788013958 915823723 472240733 506971168 844635024 969174935 291525039 594038728 711067570 711360512 175751819 332801827 899554670 968482355 250043284 746722113 323510661 882297390 608071547 698586808 539683113 876608114 443847250 580588908 109438658 136303391 804977841 889105991 179990904 752052422 970038979 995002399 475032111 832125647 76187912 250895961 737349712 993449962 787558252 990222235 132438394 941004796 789662412 826878471 365237678 406254291 433589231 723351565 314913873 366076188 67198218 718857698 467804731 907639032 114133797 450564085 74191507 215590943 649671606 810881265 310955946 445293138 539287312 805370564 144510473 169130583 668161046 853528339 21510528 296174873 64718281 75912071 386048270 608228173 270035542 958833389 241674945 697516434 438106583 860884361 931475464 976990182 149043841 331795457 585735697 714723110 452450057 986622358 349839307 796201267 236923735 375955671 295057597 755338466 282214532 349148500 239252597 602832807 306030065 893390118 249298671 271561172 399325855 532071523 888744087 919376490 99471676 262169002 666872544 894591014 551365803 789068197 723147804 878164233 142920122 978686309 253965705 626030430 483960711 657615774 747419010 965719987 515633240 618219790 868580542 912180635 779332427 897073594 813695466 962517598 645325527 678050151 951521995 995676845 484452636 941035290 291467427 846766979 314727791 393797553 30341614 367470718 747778449 917034498 767789441 891921207 246955063 442869222 140786484 764954745 780486176 848054035 211468174 706338463 276640240 856268816 332809685 863863656 286249550 682169308 332649883 724939127 393488578 827567565 912874928 996809515 25812754 543046348 735091285 955734185 578474033 894414521 581008528 708062963 297102712 399663615 204149994 876599110 515114425 635229071 489826148 980168137 648155271 826785634 436270801 535020631 304180327 770226153 531852266 673165100 90434191 366500364 819470331 896163284 100912108 206465781 852382307 979222090 108233274 327341544 259222579 580711999 591240313 831968808 479362731 501609879 804539657 981344421 419353763 647107700 621680292 848962288 640604 247900380 857507961 875503922 260267833 450245965 893690746 904431208 427709873 697991479 121184443 147307630 967861310 984793690 193654700 467394061 845912449 860723467 606016015 773582584 599111864 937583217 915261476 937770818 739858476 795781749 348227243 916512899 166653685 683515547 776157098 928674016 419050725 709044955 157140081 728547343 957859495 968801418 500745105 760239961 44564978 977352065 313645031 464243494 658529546 954781668 770518746 820604477 343159523 531676020 673486620 839642078 867842112 884733219 694000157 907450986 762163268 863995028 635517927 730261859 456954096 533757032 851738425 880070962 814925402 987578031 433192713 699663257 508719580 598227212 185195835 670941878 341056178 461243448 987665211 992181130 977732392 991692814 37820702 612723717 634095940 738392390 690460876 904950856 96502841 268546467 778055420 855877896 105358058 939858279 494876573 841074545 404268121 641089535 269624946 859607899 849322227 966075111 734518209 940414830 478847083 923098456 947715718 991070422 496022523 868200032 872740162 903409048 562274958 788192513 595366662 818064362 267253636 782463789 151275379 903816021 312359349 546433728 266280310 513328448 352729632 610677105 721229983 985828723 177542503 477864214 415181923 778677097 569982769 717369261 553648375 753187047 688169138 819137189 909781527 936537768 593493477 658738443 556939990 745964404 148324783 899114310 314152751 647027603 205819057 954866394 155072982 705180140 562465594 679757345 190118974 292589717 650752614 735891558 377339052 555034629 673973256 891198717 385649728 571866546 615225177 909008881 54869687 847927887 416490237 615639889 906831212 925241006 443235670 863914828 340152894 514509246 766729672 978779098 62809824 500078763 683881222 788428533 12066512 788297692 135856267 389146372 144907968 375543901 7915400 887395119 856786036 970546334 248579426 296578590 995176532 997969426 939206289 965428057 912530398 975594260 644970136 814480289 315789921 656977301 431658142 572014374 829139311 973057049 715923075 834182157 259586278 544315128 819115805 976738679 337502572 438061002 387368907 854300706 188029027 504400358 465937861 879942815 484480926 501813637 815742870 944965501 163627945 569206172 561244922 895540334 140240246 245026704 137936131 877615017 91689755 395096274 773775559 885352347 636991627 938985198 227398490 342690664 213675811 889513386 82446259 975280118 608866554 746384223 465903053 517829989 559143322 593049068 535612195 722538009 207872990 718373644 783531626 833181551 969552987 980553986 737908602 836024348 329719879 497216569 468506591 563670469 457815755 652981485 40924429 730342728 32879840 418877262 967143036 976073116 511991477 928672468 366492958 793391536 825140511 890817278 279600964 721650109 803602568 857229500 659463782 744897166 552100443 997042590 197641302 372979507 640230029 664432408 354899061 728319164 717943769 765398704 390999221 708970979 788163469 996731452 708567550 777159656 838055648 874253180 588997839 714337805 268211371 520304159 399360769 787551066 860671256 914146757 446419703 837202999 983728298 996852943 213715380 888346840 140393888 585894373 609746747 715004612 488754839 871283965 397907255 535440683 453074929 998814386 492958679 493006756 37164638 717312908 207298396 345862605 24018009 625403368 90370722 124801361 604509378 712519670 994720558 995952691 727336221 781228226 757480789 908573713 809823602 886430490 535836483 540254664 882150772 948900218 793935444 807899021 239681795 423211428 909135927 921298804 20220864 25051842 457631560 879949299 541486349 781739900 126713823 409077467 618268179 733220907 194900450 929803399 787346630 958368648 234152257 638188807 668874459 913431546 596949026 798044286 784966188 847170948 516000935 743676451 789512310 848192438 404927447 417826341 310719582 819386264 250830343 988404910 389185698 514390585 786074182 840871553 335419031 642875101 663774782 882418860 589637516 707638355 224132965 436953512 806603620 823970708 260843042 467820153 581282227 722493439 538347884 780839597 492268868 921398998 760713397 897186352 279515456 671864992 302952971 398659785 644168266 850890946 848263380 883878191 975574543 982312542 520991853 966937013 378288471 848963371 92043191 506934872 818540118 984385047 182949654 521213638 873176475 896601584 486036904 974493365 503972451 886350702 288029065 959552610 144213617 293109853 587053667 806134267 255547474 744075827 674439996 972848857 967854112 991902935 766390477 851143719 486028572 702956807 574961396 607509672 666523517 859527872 983567078 992764719 161939432 631223259 336855856 403081153 940965168 950441174 252005451 370385571 173327700 702243785 82822315 776839740 733520965 874900620 965778837 986382762 184272381 809351372 182049235 608531826 865749946 916831584 502519560 827893209 97162045 576786566 691395563 996287867 795165559 938800212 841086470 892877858 612794421 861500848 41189468 450029997 713639133 931206665 748507453 929191656 834369624 964364716 995280030 996526324 877516483 888617018 603570279 884964736 426601185 885200110 30630194 360229343 499701292 596470395 625931310 763623342 321092780 825251795 606044978 898433230 459427124 582067800 486817485 587698187 411505671 774746272 225747253 631463941 816617180 892663519 963730614 986715125 878684074 892327405 320000975 606603469 136745693 554706477 284791031 627889836 284372032 539694596 822120584 990945240 671560841 925193773 799884132 810287967 41037662 913186341 67254439 745769453 280255724 457000338 597233972 848879786 817654736 817867673 233704369 709041385 202851010 778786018 913817049 971847540 611428690 612831007 568145618 985469746 714279266 822229363 435873593 815582232 643014549 973609160 167781243 686456812 151787719 775898845 380415335 742207750 399967602 527948894 901771093 909052411 347461655 914980377 175361762 954429477 107717043 445548774 250631316 371653988 934346119 968842806 341512719 463587481 146424744 440644935 191288022 321510575 572216861 771529369 426529436 749401576 699425365 785648831 105817508 215276923 403271939 716155066 500608729 983105099 496122215 905919618 983951060 996297789 248360655 326591091 461959544 525482481 183270436 558876770 124176763 170664150 116825739 533890691 996541271 997119085 196381220 386780243 404243832 481995469 101124618 333901770 551958499 987654704 899884604 954256939 549916461 683824117 807436832 815348122 72600319 305996439 797501300 906101481 199255269 933298440 748012567 847026327 873319169 884822545 19007099 555205279 63312399 897844190 373537583 556348462 471850835 590643523 417861060 682899610 658461748 932458753 459098870 569805132 434144565 785700055 706985909 778162819 818491392 830643547 524628876 777079962 870913848 962390326 161288207 440770631 715583376 781377362 426055483 708736611 775058988 800144769 423318389 618329818 454518683 659625593 868016284 879145019 361306033 691462649 613310081 758947952 961669008 977305466 130163425 250609416 648545010 782246467 43037847 950579765 549637537 810650779 830157440 881537490 679734893 983458852 585061432 693203680 704059004 980767633 374820443 699617944 857306395 983851796 222518647 458475882 577488816 644928073 681351435 937915304 226354008 353619380 6479074 628466410 374364664 515135822 47949024 757113574 776130475 823590460 442833669 970311779 727369387 993351009 287697910 733219198 678350226 745622477 491380043 808162057 546565016 568792352 23119461 368646369 914187589 937803291 548270245 582279129 243870238 952855893 667834809 934591962 544804709 710038229 51484990 847321773 982094088 990057732 792354022 975364971 564480028 955184787 908067045 928541770 985506307 996560114 113928525 219873027 141250648 367052506 246301759 891716157 499015720 851399429 167508134 981855596 75824313 399506912 19971317 960035577 315089625 741735033 398276919 583043695 75766664 551700680 271297157 928948575 111522147 602971123 392709748 664973239 387841706 398957104 834215277 896267680 801287490 940055374 731304762 892643923 880823687 955039205 556724242 574469761 697630142 934408589 279746054 699422176 401546235 847838193 404726359 416077535 362452706 366870180 800222592 897816555 545135579 606926871 700382906 956766782 755779667 987677895 124451449 726731004 762411996 870555884 909988795 997666453 63467655 417730641 93935958 930556452 657745348 955025319 19265326 470164191 430654567 996456490 290787394 424561288 959352785 978665373 309843862 386176707 777599163 812635372 809085840 870078315 492654900 887305498 466088941 522844282 882387742 950167602 656025117 974708142 691111734 921245695 302636215 950005082 839927156 864338180 372063502 774164940 616919182 806220150 663548239 949517135 559488510 977668416 554772493 663076565 660192033 739046200 507497386 528524781 595539541 604636555 42533311 355036113 109746658 847980293 330822371 542489058 933837660 969892584 860153182 929518703 778738137 935742295 71703118 611434441 725808736 888476102 37846125 539842353 173348125 903899498 115401442 960489260 232845707 962580230 696033280 900936836 795011816 815239238 495853652 663102489 2622512 573744330 950789337 987204618 325737474 440779819 52329220 163149556 813298204 913764064 88858932 942856271 123782923 417121298 244579445 711335706 998138264 998246741 610891932 775625611 2478595 732967288 8634189 608623831 297211531 361400249 479894845 820073588 880557186 958487826 943479613 963505038 118330720 254665311 538079734 904644306 177604001 774478957 969247302 974710110 206311205 439391280 59005611 689985383 347486481 999300466 654250296 932275945 729687855 847672002 960127474 988242989 190102796 243918428 622970917 669144386 585130357 654051134 651818013 855587205 584860576 682435727 443934827 735716205 559469790 836043574 885249898 950105577 213517814 702470917 807537074 901312535 513310729 780402756 605788832 883169398 277323072 500086883 812177153 998264328 250631655 724001159 607178283 854353806 750082874 817189276 620455241 629238151 636818751 887083492 165608037 483912344 427613852 826542107 164177789 548288668 149166658 771467401 240336976 793474598 620027851 633283036 206071106 828301837 654671164 711622071 958233133 961495112 911145874 969074796 482019017 518469133 551867896 961569789 884954823 928736736 53553739 232843440 544350467 826451525 497610598 693435385 157227368 846505653 129226270 472356232 23262392 325504826 861236625 866066859 430566886 941629010 967291431 999106876 470805273 694407379 545160277 924824941 730335321 927610189 679735478 721919267 324986741 610835041 978102667 986791241 494886408 894021410 92586992 871442076 744036476 853705960 76681596 698398942 892151269 989124036 129728456 937401171 662180325 934558713 993370774 996978333 527607669 720568351 728473938 830923043 987115075 994658525 525806493 590084828 285537686 976100071 291353123 687795853 226862908 401196524 454121567 684060465 722039592 985037070 880461427 951035754 832729126 997002692 135119199 564594944 471583996 832291876 994571848 997924738 632747645 668850776 779263882 838679167 918378950 943880366 24785578 909093057 547440778 955474328 198550959 555622899 699665844 718174362 630021965 924496648 229795073 403875344 80208282 113301631 306736381 834031060 725480810 894841377 955602291 991005159 182747745 489790772 173057452 912944023 114588931 227341006 849214507 875560559 990800367 997072037 290930379 573737304 209492462 824879695 663774827 687349541 765389908 813566839 537621442 543103255 798329523 857156375 735247179 974132105 97525748 812544812 504145670 895716238 48641283 134223977 499588328 940700043 928894928 964010928 462783709 786182097 561700065 809967696 93825179 916928179 320957747 827965763 372874043 672311849 47354149 639494984 894016273 896119267 187862137 547208473 849886957 949095401 486544765 914529958 517590719 653116030 217683900 914209615 453635445 907687252 496733064 590259523 517673112 873386737 380239016 672854805 819138160 988121663 175632028 916768947 20391205 319632518 861505541 984565907 906079031 970326907 778566270 979507881 291463256 444129905 393842025 917731776 705909721 922354866 406888136 731273595 800972316 817399714 746956192 950224448 674655859 809868608 421852901 677212180 737010809 814491597 711453308 789925381 115482076 291561891 106829177 902040616 970875661 991892942 27158554 446183903 213925067 944038254 973740836 981403008 416882505 683368969 183819443 974351874 508375485 753918074 835885592 915242342 136058606 252773320 190143349 698476707 26718166 845882650 883079465 982586256 955887169 970629404 226992887 331574212 225500011 450193132 432788652 596889663 787483567 864338367 967154425 970428220 867187723 969469291 289277417 916488354 22965239 884520570 31108245 974603233 937419948 973685616 229760773 545852142 701301609 813605489 54259383 402218938 280931116 700592720 703622622 924669605 474892248 616573035 905053758 967576641 491310257 700400765 665006609 848598389 983319795 994737994 38948919 69212647 329150648 758546191 302249932 894469716 479050369 912915132 336871857 784075058 515474651 720960961 197920518 458335816 804832822 970160715 523473720 564331972 559099162 881213246 999358641 999386296 933798386 939970750 62489972 987110238 725674015 744343534 691917971 711370965 245104417 279948447 258763280 434141964 812416581 956628160 936990935 988805397 756356941 799801592 726185806 886620527 589641015 723618240 841955723 989348636 691878359 924172787 863995077 923296905 693276889 760961186 911061758 936612703 889794073 989076795 82737528 938049986 944484111 995212346 541839496 594305900 385391717 395833613 614279270 932605735 172951707 808753001 66374751 163440678 653164480 929185592 957566576 975010632 761626079 988654949 41396551 873296197 562031927 930500196 29737039 156539460 260281843 533718559 194008568 859467653 147914521 354572746 875342176 919950070 400298886 496046844 458683666 542477002 84495567 417497461 504984833 614828228 39729488 525080307 61612921 541557762 196507529 839952893 474872244 558807983 110408746 130897269 590689234 833309443 395295876 906488069 685854155 969325143 464475221 961936346 604643815 885687378 501772122 701323498 27350096 535642908 476216465 661580641 95405685 239787854 660115364 799772983 46531014 559112955 37838904 473003013 593602950 802370047 447134509 978225129 228927298 292846506 209773335 407052143 459797505 964626259 5582076 677761017 177043372 555164516 202387463 995649654 753254333 755407677 201735118 327900377 655282853 681670217 97122943 805262240 878751608 967985158 419584862 812415109 812334234 928690496 21364003 297006995 159293084 199025535 875941553 878960670 343618960 496290139 817634727 850293776 85813405 829873645 733677683 883302354 499886946 578280478 379962792 594824515 188798339 217919659 436403423 521926122 132868308 481060590 91907162 596218426 917996574 966833807 424197715 565578041 721544292 799467316 238781407 502081055 334579557 527172362 29717707 294136395 128795102 608664896 554181051 885093402 907294980 933996563 971691772 998980590 611194215 701733094 165014580 920686687 862449216 889650783 257735182 904156509 478182707 791339873 282162324 692671154 517456208 697297604 484701133 788570222 100515955 615271376 597341676 996397712 82594969 443059281 122902518 864995449 612812064 838797258 767972793 857941288 467089829 520090111 295036564 973421752 579741764 989719039 98123116 300920296 586484366 877037102 665603819 771711545 926158702 977581943 569749719 583253823 641892657 812812707 57754583 423471120 111455110 769898044 741050965 900659814 809756486 853845248 157518854 225519557 10502158 487735452 822411877 895092912 305628509 440701210 634847268 898807005 39479319 600662800 398676846 605771971 925742186 960437155 229954997 502561318 990915218 998510789 388822690 877364914 659152787 993018751 216993245 622345830 574991257 700417337 502549481 725699342 741700420 834767992 584027665 915209598 886915478 914186270 245373346 538333666 358613058 593381496 546953813 901583450 448775339 898009514 737460197 745433020 881449117 915655626 786705219 911975227 628749631 803954243 603200163 699067706 431658896 543575448 694888879 957273835 349866985 784411195 240429989 278741827 926940466 988506519 396721326 438689006 19311834 999167129 494850917 699547392 45855512 857591734 607461303 804739843 495710371 513833164 870087337 924909804 598603555 896188281 416198575 712832091 887120467 983489015 825963620 844389767 101222856 826649478 447879190 980585720 687361310 994600645 681561469 792552544 194659148 305099107 241635346 844389717 246146213 938248268 552793554 866427817 399936621 985486290 334880243 863264894 352715047 394065033 387588503 577770497 974295483 983999702 394042238 571340148 133590146 370461360 4714424 139811129 981556067 999167997 679750906 863571911 476170591 863957198 687395863 992805004 531810152 908353505 99617906 129090989 957837805 987834161 54342406 864500907 160761590 848318131 3396363 303445942 485422248 727318977 410905371 495403840 599195062 634183110 414510673 857190606 864092243 969369905 862545955 902326877 907114119 910319781 841102555 985988141 252851827 858462464 995746058 996936166 434814207 993098796 126842566 444152181 622638946 659933964 287449175 616222435 108966465 773623878 830262013 950127185 307409776 760464915 786970588 975478263 988022480 991315841 432686023 921418615 712322196 856928925 764036749 812463195 425757329 921654769 454616376 749311077 825025574 949259468 126744189 321851523 332777212 956513964 268869443 444256499 269518907 783092191 727715623 918963465 148780924 730268556 277175832 730505054 442332809 652294766 516978806 562061292 781941042 954052675 645044727 991053810 824602442 947021367 786675008 882373877 504940819 755353279 572753074 665566770 336665345 808525758 829167414 959181906 213328825 901939745 436247463 957165803 42334083 247667505 526596242 892969361 98110829 394705192 458546497 986954017 458134460 830692093 835147556 926360699 830534066 910220286 366874212 433866481 229528651 355905686 189919199 580231529 899971620 932909319 97423074 696348159 243092626 982706339 50132545 662322377 125332653 933782347 95405976 678500511 752217972 812164772 600744920 925493886 566935540 921658452 373309414 396031303 287374146 499295262 582062660 905178471 961718056 966172956 276429295 562012667 423497832 837887544 38432647 858655354 215420713 254425155 351873969 402254545 21456941 808578288 595905729 941107501 337065976 801403039 829737622 932515760 775859068 817912170 150875984 545906140 761806106 894993794 685298656 987293698 524723880 863217091 34981861 775342828 343367810 694921824 81044258 680511851 70331070 948147265 399246529 663940398 179329173 554728979 579306660 886400069 515355586 779696010 784410812 799763449 69696022 572928787 131293314 489144166 496181364 869715803 94836240 610813311 256479080 454413936 562550709 743021820 625584201 680899162 706149311 942860200 854217490 946782196 912750920 941101653 186837925 465776659 692936963 839759387 135886704 225510471 727742384 952926743 288928622 602829606 526620101 856006404 864317245 937155322 459864800 649961938 743020840 860846391 487745405 830639267 666280216 925024600 242621327 620852694 30690138 871511768 483187838 507131229 892695169 897847722 827615066 969065067 660632239 975847797 936110800 974449464 686398520 793246180 593546753 874248989 9935756 948040183 857583769 930921456 260082359 494147626 385960231 436237356 887678589 929778719 408404997 666310706 964246266 990422471 430949720 686595290 885863065 907981294 679054379 880602034 920560788 998418752 297063466 305562955 624003548 860810802 966459740 988885926 764453107 989701073 957461174 996751298 845077842 905469859 824690912 874931117 288944333 414249844 31539344 339315107 125301766 692808238 307727135 661509045 474350644 934497571 672650322 867490588 184170146 235727842 309584758 515434320 235252647 575941497 625659121 984080331 911680929 956498423 472169147 941803887 537097342 771265707 885554405 942629744 525246647 812871546 422050377 921627159 95775820 120505522 278356934 987169169 305885410 450238437 484170155 792832481 47425776 709242375 750190308 912470885 243304188 890869226 433714316 934471683 976830075 984061725 327786906 592390581 516027399 729482784 814241425 939147967 443549440 916115845 187163920 238203291 154752534 366798649 841345270 952966644 771886621 911111340 825838337 860315798 749372989 969241972 600412118 810504526 940649131 943353188 355745140 773617482 382422276 802765433 906337956 969489569 116063621 275807527 792892349 828593449 317000733 443907297 822566653 851237746 895956169 950711828 929520121 979422970 501070023 846084398 955645166 969364632 521177541 902614860 180853845 779023904 385201721 978804483 311608339 959438822 849023201 973194966 747347124 901715816 432520976 562836754 336648941 503163191 753167339 879089503 281714028 890176588 903147175 963738388 356352642 791601585 944288001 994082093 552021602 911632056 404803719 635650443 737644396 905446419 592573187 653609289 137678771 919275145 456605586 512785746 61278789 757677675 445991796 916948703 306181278 498629968 860796862 966089981 310359986 733937063 17352409 955234663 898948532 901228945 717874721 828190949 666283685 989939079 982159480 997541763 460168744 629247368 215630209 591315129 852181337 856479635 364295636 714220802 60568321 421902284 662234700 960665927 370799831 568157710 717811341 946085815 56462671 177429197 909841750 937813263 895637436 987931120 13496014 126326306 970113798 981144932 487776807 563615359 525572826 930812766 609405305 901089019 341800862 576229192 459043312 852624610 530046551 750935759 599833048 940424787 733379274 942280519 979799054 998740463 63385879 322435226 502783192 945886201 800514208 963559752 979064149 991769591 582037901 846111965 238391830 279932266 343873210 648257252 93112618 215926955 840159302 858966496 719362671 806388542 294344305 473761412 474342361 885187686 137730201 384555334 294556888 669463158 477048828 558472554 657836743 741790332 48875852 224745767 959564712 967834507 56767259 668363544 746571297 750694806 500852294 996523478 820539630 856504141 147883206 527254686 799897977 908569326 642040964 643726848 831756161 979689225 382041882 477766488 708701213 871926438 116494783 643132173 243704445 735315620 267888319 970886399 505793905 928356820 190932128 393018584 241015824 604149881 166739703 691209628 699513032 791355992 703559878 833785596 922327149 970365211 236047239 527255308 707921603 964124016 713551430 795980721 505520938 657736722 10337955 172084419 391203932 629371025 531881046 707184477 265285636 539022593 212481095 544938606 399035195 411561427 546797102 871690325 392276921 579575832 161034380 721989929 803516212 897666994 717146371 886343496 917471890 944172876 973132402 980129181 701796543 952901580 189402956 380790466 491320921 978776856 87904886 175495829 638211976 808548248 449355482 629239350 69422655 198740681 476002518 993382082 550902064 985247618 58873210 857809590 581253373 818213571 949132924 993796931 41695422 727726483 691120418 708912111 18144566 721283839 671419704 974440722 269661672 830432710 952722148 969445507 973093046 998805027 898229890 946483413 965314581 968223198 983671518 988482542 261979882 714725209 283494735 780379025 906396131 994784621 864896861 933855712 137551862 498868163 37206565 447200869 792895702 975385882 371171950 706789612 200023364 337672933 1962891 663392390 240608398 753204718 508392155 551846301 37870690 119585912 804576430 867383392 568528069 991641736 196234634 811446998 454111831 577078094 776452713 857181593 147651978 193110389 380225956 687747939 156289828 567665032 997757781 998778739 8524790 11005161 408773537 943936377 651211691 782291822 516997486 889626664 757970225 815625255 394365110 950684675 920990619 995714318 119576780 756434502 321382221 824714146 571244956 927898726 15140520 484535698 47656171 282751061 643441942 887236733 839610773 931164307 376936843 515404137 410854718 949990145 67525074 980145107 544694673 681113396 807034584 809194812 653761234 985464702 720392495 970060401 377053915 547339970 898062846 899866465 346395188 707227177 994136328 998638972 535493152 644752514 16016462 966419028 625423894 656390276 43483091 686702190 63055654 588847333 189989676 232215005 658570892 773069194 985740380 986666601 699327733 813794608 78470560 643204206 548786739 840791776 642538726 789553570 447572574 821961726 953572453 994139276 336484258 442742757 997526583 997736409 163946617 962197687 233976632 732707292 882718953 889112225 966682865 977970253 877444956 907931342 971956733 984037592 380623574 745338342 802146036 924962548 985710420 996179579 842609719 909294620 638062355 885822509 185286105 441754589 683033661 701148870 226304506 883709792 328450564 552098828 903919382 982556473 817599503 820576759 380913698 764385047 22917913 459626966 530479931 736861240 456743164 683283054 938223438 991354335 262303416 551241776 696270999 792097293 821472438 832110830 16275238 997108398 333963804 655472720 431316913 803298719 308641630 865177349 494787097 633236994 270411443 476351443 997152237 998202965 871036598 900958825 249258989 864681643 641161802 925705970 803291382 921141526 108064125 761014377 247426601 884566296 754950712 845013188 988073801 997892977 341398574 588743888 503236688 554936795 764884324 895118215 531253980 717103659 613564590 846324421 102285897 458188580 865385285 922222593 269322813 865117819 886838338 971905714 55041930 164799337 553532360 752005708 915327530 994520689 119608030 618505946 407242555 475758336 263967014 269126140 309290084 791172064 977270904 978989399 439809949 579455539 142024817 337106465 87532093 525472950 232054194 839853333 40119479 579206544 438708216 910532574 887151623 892680285 823627739 853032426 65162898 601452875 86986768 633941292 258933516 671210048 260158656 556146532 5560275 445244133 50304276 319440050 146759247 975250552 424898262 544294600 374519276 441824990 99171952 471615459 830414911 941157065 19323823 49368048 918690052 919538204 151963589 587985969 624948992 648417736 464284290 878501063 798523447 998418249 712072862 973587528 654989659 723689780 593967944 957851107 870939169 875218303 911999929 961805973 134479599 831047404 487730047 559454181 272408244 869762985 437467787 582904217 570582668 785465949 853610601 854733709 670891452 747943256 576618289 744469324 701641761 713526966 311039124 318060102 179510543 777590920 585274629 708454030 534663443 636121898 896565221 960340776 958699421 998611340 965820385 993530187 103853349 299287617 364902572 662972895 695849925 926943063 486326562 641641987 652803383 847103948 994292209 997374422 279374194 752255882 435522583 529649159 268874827 807337044 2587347 967479160 784108860 968356956 210593665 743535318 273594744 905832825 739179777 949233253 602285522 840670436 240641588 494818238 739015704 894939625 947730765 956654294 563387086 998893781 123616343 235609172 157647026 239124690 541994508 994755882 702590468 814591589 305611637 563972404 361438787 482348805 565579282 833581765 52768455 870409534 357735910 880348447 532335340 681649021 396690339 599558760 444034096 499167756 505807035 568794556 735049587 885348637 400258364 524641450 392238104 945940700 79940740 471206231 17535881 75940216 981584965 992602158 284744130 871705477 770304319 979823927 966585313 968360485 149027398 222854675 723131636 788937930 644764303 833985905 496485041 532923656 206795216 725584406 688072987 917718501 161927642 406068908 284008873 610225696 718696120 761385139 317742867 777487422 793731223 910066275 775019352 978388651 334477536 469705943 623195640 994669540 780084044 919705689 323224688 785844939 937852598 947756488 735963463 881034049 59870266 219651538 632645584 726958132 408273951 738799445 854790713 914811977 972232976 988244260 994188324 994286299 847773118 923788062 154758626 221348655 867753466 900209720 384681263 658899933 419031923 751878586 756570815 762673608 261376250 865197425 285792293 757418939 146596719 221448382 552568166 862630300 621168191 841882446 22084901 570239537 673644459 984075235 267245800 704630460 106622520 698323036 302638663 966043426 704352176 901269182 204393146 833193408 485232556 890449996 561891650 608286577 2925407 992718185 890532421 902600663 145621738 223964350 993313991 999391326 489733074 838177173 45382987 882829041 551251749 747782964 605560515 710497367 832725437 955575851 495734432 628376978 623427316 898913208 133459271 511731264 225978994 643892618 985544771 986249276 121580066 875663536 643621545 920926849 932163280 984064649 558233254 624401058 648003778 835135517 596156822 999331429 608747473 817968400 471998601 725899491 801371572 876321351 828620093 836854545 783873116 789600571 494819117 946348473 395786406 523604511 205442168 422289599 173720157 563222950 666247516 727359044 266975495 306016146 79126884 206870021 403451988 983243800 187687426 625429763 221841206 823804095 203260933 420370293 738994717 930661035 677776786 842472499 814681344 968289029 444711532 818397980 794252974 867183332 229923521 952771515 476929254 869047843 148111134 932851406 508374186 697883069 692144643 846105005 529249450 618316865 52948524 250090728 264710955 425700714 957486125 999109219 965011899 988146600 764940578 982099373 335374256 933697248 394856441 414052856 707541311 781983680 709136586 922863029 898490883 962609657 794593049 812758528 367565287 928619819 324744202 984385442 931600018 947108581 83162373 959907106 336505405 513622416 800237099 837508965 470138674 613229241 510022919 828769784 164822474 526675423 370274130 817204278 774843469 839611859 50767222 367267754 339914607 538671955 135350046 306744418 206552903 435130400 38750377 932527891 266312433 470197573 700705375 794236434 566788463 605807930 445843445 545563666 743248182 918464362 53197084 62440153 231815683 274568762 812437777 896231637 214305307 673007770 326117172 939343145 640278038 665133141 267749231 537559838 734498155 805324271 672107810 725474782 580954329 742242078 967521257 969701054 963073049 991175446 395251225 497609523 57953101 893747632 576801676 895569553 977395009 987498301 254923810 355124404 520851131 543835257 645724539 649269272 994773216 995647440 573097029 605107036 134437516 692678445 970259093 988960577 67658704 922240812 855944028 933941806 292922635 293901895 339921257 358189398 586797900 681632397 818047581 855697286 710140978 884851790 918929706 949507441 588651551 628138828 50327823 560870704 285416538 633166697 300346 513169913 720594089 759506218 189128197 351440734 488122830 846404663 646630819 844469128 379021272 972427320 544884489 611027019 436380234 901722700 504329245 906137054 69799614 627239471 755220077 913203596 567496623 792455200 223871288 674105188 385532603 772586781 199537665 888724598 194067406 982952184 899537657 998253453 768777545 959350828 546668468 871078556 15228720 998240047 256466073 399083942 662916435 937544860 206074528 445453176 804967712 842987625 156157821 614733762 493292516 924547605 16305948 99708181 374495651 470025200 628727773 734690409 3538780 184387984 718497723 869190932 907617932 927498627 249118982 356292419 237836036 744442212 277223270 374628586 506338462 952902649 916737150 964237173 860140937 975436561 156887653 635438417 848013537 878342470 26327035 232997476 136814578 812801458 39152467 717525801 504951375 688435122 787953988 979738610 228314255 485340137 718314974 736842743 728392837 783455809 388979812 875440838 520637934 586355421 378313611 639001937 794114719 857662805 82686313 432482592 353520877 616552541 196100780 420945711 947907296 966628097 191847407 646398389 241934429 609744067 985082946 991786150 744471721 883266989 406017875 792662560 829807184 948015776 584436054 764547555 837453245 881912135 390257489 715136633 689375731 843182134 169094070 601929770 700832443 762221704 954535790 982672401 769611444 968790222 390297422 888181861 791251117 989111645 747318604 921557402 778854487 937741456 539636100 913096480 918063972 975392045 359127479 753775616 760242220 918882207 726176248 995664656 817992513 859533458 709289620 802047495 123269738 346732560 169750246 558447781 231346783 283230512 890857401 908402767 908759302 990155911 224962798 693083232 461159291 589793640 831011772 956023030 909673050 923455383 346871863 405133872 710484921 946078322 796279999 809037296 740218182 913982946 190435352 281153605 766192478 910563308 527188640 638041696 143116956 570610090 590876440 894519800 366233438 811180114 637271198 808237567 638311924 889487402 208786034 668910161 64899222 261075310 108178655 931281070 984272195 991855274 896974279 928264728 693570309 744985602 581557226 845196593 407011981 823243384 996400399 997512395 672813972 995378844 967764273 982370645 930923865 960077051 491963439 516739158 297248653 787819764 957618764 966124774 860890725 982455924 718609929 958322067 2609880 447327511 830734745 890966863 187141596 728059160 984365583 987896099 837418324 874943112 569667196 859749866 221489084 579886378 892370617 974870804 590312128 807902806 2564846 28374331 958307878 988705595 18662806 235983364 150921417 410948045 55118770 579904805 443858665 598922049 582485133 889895395 475863494 639751309 320843202 996271525 334562736 911863410 403400675 415089047 877761161 879584437 587138486 788478894 843848956 870230351 756446912 830099859 133419179 746881773 220419115 779504365 901721572 995506773 317423257 728689319 160780619 913031805 814817404 988594008 124796253 360037900 704599430 960634795 773418739 924040781 278282554 315952120 791320210 924760130 886841065 886979687 204928199 234285106 993939167 994102598 547826523 671477008 582217079 775700889 181563289 703469804 30425981 478879300 553890801 950514978 959604616 969942873 249751819 255873862 594491431 740556305 213842132 705108891 751011407 790858171 705098271 809287658 56728531 967536486 485127502 662698363 870310176 910340526 773288852 883716063 252988948 295530050 390869517 406373488 274520416 518892360 436078755 901476237 633241306 853969160 247131819 308629760 673446246 755800411 250015403 952760952 659882950 994409555 579491922 654022501 975494252 986477262 205765874 462141915 501054449 820775280 277050873 826837281 44208385 611679529 741062735 950122681 451313806 816503028 597955100 882104789 903810415 972935532 928517243 957173259 306059778 810440079 273770741 748955840 620706606 684328155 462934290 482627685 608675568 808705527 937881146 967824340 784943047 785677775 645811175 919007685 671678728 773382733 716053134 980984657 636319937 756612460 368083052 585119019 759849363 943864242 83911303 127232504 273229780 722334876 877552646 959154003 921487417 923052782 557855260 993676051 308228537 636667513 532504811 594112803 422515592 977757690 963524436 964287554 346993993 791338571 362886290 688655063 259707209 377693125 912920236 994501529 589995411 919351325 625634144 652571112 952510272 993017042 513784649 821255176 24354025 336472100 573198493 716443181 474778636 595434323 651648283 720179783 858692484 955346451 945611839 991773062 535810797 546775517 558538031 745343581 500002516 749464100 67185872 807170187 115577630 906714050 9348363 197804228 733769530 945501270 998538293 999328957 544331677 757932390 7866875 949252066 151850884 299487357 650240563 718004567 102280026 709780971 185317020 607782574 359555001 927804202 535311387 890510826 132142455 397696786 261868384 990637747 510602219 945755425 612105200 640688322 194380528 880667674 957916550 965725579 227529944 863406073 655842711 717580651 382369558 857192366 679121655 695556933 139593496 985808555 12545664 314917203 28083073 917423716 508580208 673999657 478902700 537162718 305865034 723143235 434924728 657145889 981462817 993008081 388716780 618901843 934212622 977512196 636457955 816321654 627237011 644694827 645162835 863399278 62654151 120122898 604433533 842863613 354684003 795930135 209191280 741544110 421600182 510039388 176960226 514870446 526867090 805186845 761018230 912940642 559439669 669165564 52897662 207701236 278092734 294440667 858838865 964107522 90751307 399072797 357129080 882341190 958688335 978677193 869599454 996353463 299282245 865022745 144641381 191112788 658245735 996788103 52345146 325569852 177127633 819048267 406958574 471910588 139947737 786951004 653617628 874640596 401424623 963030919 390189784 747526791 449897558 939643664 72245611 842890966 582123831 861979800 52271676 288582251 732028813 931821032 40204860 993324287 8689810 718639831 140929808 401212899 921255 148494079 128006241 538198427 646087864 983141546 991182205 998634810 850532562 931734842 452936057 599089653 331755701 802904648 494902988 727217506 196727856 208234427 141464719 670486959 266087552 285340367 44655608 593976223 15324526 951430498 512371347 732623000 185022909 452837845 250654732 949245588 78889537 857300856 299426518 394771352 526881986 590203015 203242696 292246019 104585227 935958302 569434029 801283572 977484049 985672884 946171451 970104368 804163534 969101042 36768391 984533728 633037161 663575631 866671232 981185319 451730528 632192905 131323398 530060157 871879599 879138719 609743365 681291091 139554254 661374192 706109894 777201488 922220315 935282146 894839691 972573788 581587157 739074488 188512207 815072433 147305940 212620068 681141394 689734782 721869785 851686690 692045551 732601538 629867943 864978747 611520083 713050162 641487486 941352878 736131187 793859163 816605083 951074053 661352335 822796250 853319941 880333205 647273481 864103466 481683497 514427386 813503744 852694571 862611755 934701631 589952502 707062287 224559883 941860128 820019854 935447430 945357921 968721307 56012274 180665642 831839304 897194805 403372851 471299310 848994635 978783755 752312657 772680193 996925848 999308540 613574476 693225662 667200392 673488234 970192330 970613713 328477422 733250684 722436219 875475575 195319998 575307670 166891636 929658294 653144839 671116376 137952646 724663372 690867301 943684089 912767148 922353487 355998737 750579024 53474906 643410903 833947774 986073191 119060465 918275591 870179704 959996328 62195783 984868098 47144201 233256272 47091116 284227608 947803565 979592272 633333392 704575532 258911189 390186652 984883982 997238521 330981678 966952917 555938146 603965516 882282983 948971233 788344829 897309728 448905289 995363281 982093514 997625206 97236948 423243963 776451360 777981504 672994405 871421078 547184848 579726351 728715344 908436534 231886956 567379639 691260101 763624606 778350478 925856016 607963553 952603889 843114146 951194482 793065089 890286552 184776789 262448717 952136142 968666881 658084811 879292224 341505537 653923037 123872030 553298556 488846748 667076671 693012970 693500615 967446525 998976364 153922560 598514774 105733454 381466937 548888305 933263791 139644680 225044135 898698430 930512929 907384274 960662038 894985436 935432944 435696855 542972526 99507158 938312827 507670994 615869423 360088860 738337455 504214826 983413372 742670925 951539478 151506699 626104866 771686175 998433305 696885403 920065672 322518867 653619311 24092283 46882905 355633026 988409049 157520839 655544675 770642349 775535397 680754814 954304988 698329872 963369129 949495159 963124250 114524012 997492391 193834338 801144528 332048409 477539323 990402806 998222936 48979507 83995227 994985062 997210786 191549818 800935216 917824140 930043389 974958885 988358569 167031451 990830913 200221317 763848752 422426524 662994981 943121456 979277257 5767184 961149360 48975323 219105411 859713352 900225884 265681918 383011068 538566106 778308391 709638128 806054920 506155246 767048794 896445648 992411639 680011429 706476562 889839707 927734781 482773704 903956200 278285259 322912937 919339513 975845964 13318439 719415149 936594202 959230538 346845955 396510810 79424675 467412795 776520029 913592608 262787046 550408129 302232747 780653318 52843457 537614825 246435633 680030690 790009250 898191706 810384823 973138989 453937653 943612760 4479451 339981527 573008568 684293613 692565308 946804645 618511753 988287795 392300000 597447160 55208827 206081781 285797339 784091623 65624196 347858390 586100710 922013045 719147231 801718600 502289105 689102647 235455430 539654780 141972232 456886024 690315781 908837923 652955015 766075698 506149745 628050524 250654734 640880629 63288880 124227903 926998846 979658698 969845598 974910639 263875086 877381989 912342044 994115269 868037055 899911169 587397964 839538705 33793277 142060340 243441194 636631809 299816395 828661427 399053352 748514367 860147110 944597887 650766621 872957861 63435184 602603087 397323471 593986096 481465689 770418407 81829838 257402015 95623493 527207115 677911792 768965631 832005562 946443058 174233077 782241588 227472923 472461055 768296638 856987879 512723260 848267371 252966438 681912251 248431296 286801141 255245972 588885354 233365938 578523806 598105260 648747727 599892091 937193205 627926242 878821267 549274580 955913740 701726739 950317253 725805502 899300638 43342050 864707470 237454840 870215749 730182624 918387445 391374097 574091905 175431071 538910715 461909858 898403243 601158176 961796842 11793238 180888089 987620938 996017081 106967000 332879736 888629026 906423008 224509066 332313170 656195723 895550410 475465827 729965394 770365553 798147585 752992507 928072170 343490294 937121867 830184609 993720100 380167757 459439200 349827264 867340127 476782612 867588545 562219024 579111640 203264161 306454055 802417719 989876980 768614428 880151472 79865691 481020319 875473407 976887248 457009725 568111834 321169461 358208358 449175133 951230803 133332723 898139991 572387090 634734739 909601144 969820974 906169450 977117141 991220801 997253362 507569697 612735847 124087737 913523437 842883082 996277242 101286861 378757495 77799411 839182534 34770607 364446313 988167076 993841049 867620767 973709472 193131837 332711831 73885437 771479308 372704729 515133934 89226826 765683074 711252451 728701798 171665352 369616213 485064486 743292762 42576907 61395593 466293042 994484999 460250524 991634553 581061801 888556478 485900704 759954230 338265648 423287970 756585089 785088271 20545180 92438857 480079383 994063769 892608436 935644462 816829123 859723846 38116967 350123052 415571500 793409122 66834271 658429618 585979081 883406696 456748384 645880322 491027895 910612486 819932386 893731015 501994471 595537986 454702910 806597111 978473466 988900219 766082398 798712130 921248533 946936468 787922388 851099512 173136396 574444422 49150499 637795126 375830597 570922554 671791732 760198913 702926956 716428058 63582057 536088913 5005960 677425646 735008953 870031132 17707322 423456669 348174829 395153967 962019505 992233847 87228069 328469665 223483048 362047903 764981732 990966869 44135085 857510732 699906606 820206530 549499586 872448511 621605337 728049644 847105174 919910068 515371469 562893483 260545987 512522172 256629056 341562630 84098642 376587067 815752719 941372609 376028130 972622510 490421975 919876885 810032273 922383533 299083040 968529754 504861853 745336098 535414787 644259870 701624882 988015331 628228844 890278339 742989591 813184336 609485406 863752412 555200536 931324748 37632272 683705569 250587461 430092964 523033405 795067206 192139992 892403864 240072965 803140799 517207665 668439394 315738204 388814037 374225616 653964497 414610234 548125958 228418546 500738551 216323352 704606073 426234766 748309042 107804978 764664872 544605229 942806151 185567670 379300767 752650890 907298316 636971420 921526004 567340933 806120343 951783702 979877073 153594843 326479318 220245485 943970815 31588929 460136543 184470625 360464004 349865018 726428834 842796783 960401549 37167776 675907527 501108584 806732746 343585176 532266051 881296227 883820872 17751004 662444208 172757150 946624364 464131500 560390800 344985320 952585781 535411133 688445074 409933740 830467079 327050646 543984639 416824644 757613360 550954492 977660459 372411037 825255329 73078467 362876067 333389621 705083998 704019505 897943695 194990817 874986564 706802255 744809048 775680220 940655358 73082337 592050482 998946184 999342258 476887088 506562424 570316960 576019262 628464061 782590340 875025959 901692774 691716421 969388434 334055251 734020919 102626551 354405596 213569626 926692068 661434948 873089947 818458341 892225931 52918799 767055073 968864706 991028253 95776377 821485935 771838519 991889798 483485103 681241316 959689609 963925816 597412457 935291877 990177222 993749598 594161663 840029822 737722631 941676364 738853692 780427615 168199962 621083194 122491337 277598904 17020496 577524428 178950201 180024203 283362763 393487256 94735727 562751664 884603743 912551438 144731507 862068434 628994535 943237265 645285384 948024869 164558060 604032641 147824524 244423002 346386259 988262417 436696941 736236807 498416780 787865730 178108445 903319814 697786147 778796855 121372875 452583207 498080081 505283494 908326141 945655089 742187795 999227149 329354537 346979565 520702062 740493460 66950666 591272073 629630986 848740764 975605523 985092583 159919574 661085829 491130927 907494593 600571943 827789336 356294887 859528164 610079017 888838521 397706850 572429671 924691773 928995150 637580514 769056678 7917432 707132548 292560732 827505939 495468224 551217807 532252421 982564284 563775285 565060249 305293931 915380843 995374984 995714687 733618691 849901643 409595481 789056460 259684672 904247371 386522204 503528921 564535578 693613335 349361560 633611140 262447815 666113249 322724094 940469703 985817621 996852125 262430404 917451571 265524538 773016606 425790992 492868781 588621705 662306224 978460961 992806990 893752925 956884544 623887004 840167416 109563411 279380624 680594912 954118222 229240702 934920223 661221834 941570391 25330460 780623999 562711271 980957323 556951058 998863682 467550159 791529197 995642415 997818981 755583838 841488591 247833909 326339665 692751475 700034126 536772637 919107365 833339259 864323356 696191080 893227942 443048305 486723225 231529523 329841039 80738140 308779380 846637492 868765823 936178711 982353720 694511769 952852787 481408000 960687262 950109783 972103522 15480779 241183183 488059285 829212355 393045603 898930732 775300141 813850979 396808508 942321173 947805279 976278952 476708871 777074597 999157481 999390037 503918299 984371485 320202262 893913673 196801237 342758082 859253657 967579239 36587977 835288712 808709624 871584687 987209919 991447560 351227726 603704334 570491588 641113144 81066536 382621664 563477597 811499313 48591381 578126268 625032296 660750493 405523002 690548764 562236077 809123890 910475643 987799602 37610408 574416973 285745765 517336270 543463528 884167204 868101724 968046910 523920502 831146127 401020494 419701003 326428407 414966958 450975325 532702452 695275312 910518691 220754666 523699843 182656026 822244642 482170247 745735312 815561930 988004172 67416096 955479705 257207407 510465831 134540549 475921924 405263619 539553151 887165637 958585048 471075535 720571286 160651554 585446362 836979669 881565810 172662621 418495775 820880492 895006125 726958008 902888012 515789280 538353121 122166554 802984073 419123602 848385887 904506475 940280226 5447355 947577784 71915794 961841831 53875083 864085591 815855324 864793657 146992619 314830092 138935225 856410795 643331942 881017823 906464179 986155143 938618174 949003964 529253517 919707694 587170688 898394594 788932344 872020515 340447671 413742091 950816650 978576293 518639546 836356914 676471029 978153255 626621560 957559745 961477925 976727058 748431062 901172967 77727109 443809536 873649234 966345540 398644782 649127518 643925108 985351949 267882107 291099081 883619249 990489948 658103970 850748585 413287549 991523840 745889156 820902727 105849135 139488099 853121176 987724319 489783890 592325950 606433424 672306670 897340830 928518540 630444652 818963636 999290289 999305534 40791219 224586360 825587242 861993248 704898806 718866873 494113473 641937134 762542475 778290158 703207469 837684613 229737902 370288322 456196276 657790445 483638460 492199583 871773168 946699470 405104916 955050710 487736374 779718220 572996420 959666316 964376011 973710766 789518867 813022146 727261971 782892326 584000738 795131600 225238062 647417845 457884433 579234215 213837962 381368678 800186725 908490980 227217221 715445667 594969305 847001023 898951912 942045763 648328451 785053257 663544463 682747800 365447119 519941539 229165378 933331405 804838298 924834345 327868711 913475143 270208119 733808454 71065995 770268046 765314552 845903581 340473561 770642583 303712738 647561552 940832532 961660864 29524679 431583600 816801134 955855332 842460609 935675320 747514651 823480048 784892174 972688242 453431844 728118252 621737520 821686716 954784921 956592310 22517262 760950839 335290752 646721596 529976474 696763146 831555547 993353910 808981577 838918447 371093270 674554351 325760326 505612790 388001868 504000392 379626095 969734954 929895858 995378533 47219957 209328731 192718542 276300060 136701390 644766942 552620303 658244997 293424860 940597289 462530858 830568397 668079028 917871073 792149115 814564690 411317808 642889974 381041932 435861106 220756158 962019770 651745554 977926228 29228192 959266116 42031747 495887708 917462520 918655512 609231687 706824618 947664032 973453638 846181425 925026567 571952008 952894335 457830803 581726119 644818798 772909850 808437365 874576065 346122838 499806862 677449434 851978246 771012333 825554113 359884272 579399247 667881328 672715603 708587740 796816660 877030827 946068164 400569100 401208405 56733799 612470129 338044251 715760437 682560902 886562920 489297962 681469027 127152307 716988426 807602391 859656419 257174938 587265115 349896369 684047701 373525220 513677720 967699103 970205450 461393347 905932360 567874709 689603019 329541549 546943448 203951613 395474191 803153161 909512160 972593327 985077545 516734405 963358392 555454278 870611557 470802020 720029240 975271247 979160826 758601261 860572856 797333502 988578210 609801763 854156266 620344746 845691443 531815415 772793433 637959369 645600099 728183319 953002546 891844148 967137605 284896492 927975349 876621806 932376947 514047497 892074789 799024107 984324108 458670444 909247160 671181946 738702862 718724092 757005020 942070423 997278149 492674003 808245860 6588405 873724558 238157611 790243265 20642178 839242645 871713818 901536404 630573490 645749616 463416936 678174386 615577903 704777915 610254495 718658875 313859802 965777698 414319998 833874026 453709438 610895109 285963337 330510068 219600834 515368626 863220527 923398483 907554171 929102031 347579066 461539569 719844272 883033754 276506714 994507248 537586942 804164263 692499302 817886941 114678661 553991409 947212349 986697210 969608813 987469286 892046676 967338842 519971617 983476970 199954172 464005956 287705088 570303253 689488544 844499827 600852952 703690108 687308519 716404422 334646760 913493526 980878211 999390732 199811645 555869144 686158962 828571805 452948512 531934549 335832601 466813732 280269263 407313145 872515195 939299494 843100571 911489563 863066794 920579233 177987425 591316819 308656178 641150297 627935084 935020042 114972054 748467000 479201382 713753994 716692802 800813310 960049043 992637859 187116654 419795875 702276698 816846301 230221535 547036832 677817124 829448722 602617094 738691143 827344335 831229654 521044053 621611305 742452601 989371979 35089776 215262652 163327159 185811785 693386949 811215291 369729404 477006036 425989440 841506329 979442356 997950994 606695175 912389256 686283536 716367263 846936611 871735548 322982373 440089276 711699297 814167046 907694985 909707958 631599793 810833287 894681735 958275103 420957500 809297761 600051846 943337402 936382683 951318761 857584266 879616239 710344760 905937743 909860759 951435439 841199236 968941985 7945647 911067365 878200302 920658916 39699180 416043294 555007054 778678099 138742792 337791127 545163320 840300252 495080977 505497979 716303562 804097744 583303198 956733205 634780377 885986158 552418213 659216116 915679526 976090705 406906106 825707389 603644155 906272731 52394262 359060570 90824218 797125178 785930912 970497953 227472699 665228311 115424609 761907189 261840649 786164964 368514635 657884910 31598891 238307833 699446641 847188668 213979386 900958880 803834393 926781832 987648290 995324039 434117957 854617732 660015289 877610170 894374096 998665438 885321643 926671877 815778544 998817915 150056808 482905327 189300145 876934982 9600616 504791387 895346766 952521064 779592977 907151307 311652529 581477002 811127283 938867021 278452244 731461890 269258839 888055969 603859325 712730806 557390010 559577382 88752485 275506159 193048708 823425488 930236947 944791846 99044200 565922117 649409787 765987332 252499623 868481765 163748573 995289183 816353624 998040924 960786933 998749872 150830081 276674510 179853369 381417511 296464677 751474153 392294932 412279570 115957434 476787777 375231447 375751430 878554234 936280091 771543987 847303380 647476357 734173477 119334674 211330972 836758815 852758322 855075248 871651102 177863 362663233 427965111 716800404 140800227 863336830 121910788 853849522 277148916 309558375 155451920 565861633 680769469 812785324 884965178 990124134 323063187 480942186 690973771 756948685 962371803 964462462 155342338 424280743 673111036 828723869 539142772 748358587 31574293 461676071 709343332 884422910 991688737 996833828 395375876 573547393 770850231 887620237 868181945 963002913 335543014 472653765 212672468 272163568 988160540 994958031 4678750 825025679 435647076 641825958 883164147 950758727 612008539 795499160 177549172 944844296 512849874 991928694 931797139 989399871 3109016 463054711 685382173 775813693 227346632 844294432 615948611 874690144 561383769 908785796 855996226 859225918 949481446 958580792 298929740 984879237 774237800 983811460 860884547 987041398 865173886 915238601 70192319 498010999 723650230 855569078 420660381 954830371 786357366 809002597 254240682 699694577 883949328 887945883 409808107 441238906 523855171 731575186 457030106 722955676 846244712 935224953 256849642 542452359 703294114 827086493 928299401 968743543 769272853 816471499 248133613 647129641 845025956 969679890 842955181 946864773 418349161 822600253 382026355 707682746 154010990 239531032 529272017 688389540 608824937 921457751 939944040 969783644 823592116 913591189 627632157 817978080 187543658 776202080 61423240 208755931 207421519 599302834 437477646 611945836 945970305 965106872 992545578 994282404 279744930 282806843 669603890 946020712 80497710 530985406 388499228 793454499 245290053 645616825 129947868 483515006 144038223 825165494 641385824 977189768 854832931 893669556 901575950 946033363 141342688 448924654 412087085 557686951 870438044 957072605 585433871 794264240 97342541 930450110 127057751 503114701 976797898 988029335 745024478 768953193 239988140 811545089 604005936 813005141 303926656 910490756 543122100 957217048 602895008 915716931 18029729 307203452 86264305 861757283 437214416 556805809 221103339 513392706 812313755 901478169 140171752 555658953 884238659 960274395 794397008 852327162 511898928 973129825 726349608 966275006 911869761 954903816 11712117 491119503 436606080 610708778 259334050 925885286 847923057 984691689 19711539 651493910 919265340 953001304 423149073 844856175 268350730 596897009 818048855 985833746 148310179 456919878 969637401 973673423 186981971 250886875 672777071 819279447 399124631 733136243 61844424 99173784 49385373 438767675 52670934 127027184 869271076 920516580 892397288 992451009 483784325 654036548 656884241 925164190 87460813 794771005 64593435 135506949 812206549 980095819 262036105 843057175 171843807 895587003 637438426 944685468 680459873 908754754 654935338 664534988 692410872 713502241 133523224 222678191 763965547 847829025 560573574 946309850 604158917 975505466 668997877 990916068 32324840 482392574 871305218 901229932 427233107 445437354 214182514 736668257 922467705 998395791 336999354 392782373 189296404 275900336 420108960 723112065 645852883 684365078 733374705 877185319 57340028 92477265 262853797 304776111 947323806 976332658 918588096 928790170 269115925 920872444 733095154 827726669 643717068 947658490 44043830 825255710 94338092 220446738 408463701 870199486 601855783 764067153 760180959 918038797 868154736 889742041 430158314 635226038 691877929 784909047 509439686 594853253 305682657 404859041 859234896 920339388 746055464 863952690 282587615 860710521 79176789 311694577 51494181 182384869 300832817 643599729 903338287 940916538 748938111 803117876 950720050 989511542 749550721 857150437 534154230 602465962 71587033 757513375 236544477 825236654 715834337 943298407 682213985 877877176 605834132 953873195 695631124 737133844 31678769 439440874 549655116 591843666 353555787 649649722 653243012 659334341 319482499 792615184 224997251 574341474 343286709 872490724 63104151 637393393 326509753 772103313 931505302 958289581 797356527 899796711 900489436 989521458 544624803 752276807 623722067 779312215 143211011 517422744 958445301 981963210 259088227 383325620 724435442 767466743 853908550 912946703 488889113 856581709 189515516 768166503 88013306 613746869 91835060 883022264 93118062 569111796 854506327 988741498 494194038 672943986 372983340 687382841 262894346 714454708 321946626 918264665 321750170 453772287 287481078 655262541 200952546 347615135 332440016 868237791 502508338 817229546 633948298 698211609 46738264 217560690 782757106 987043233 761160952 837807618 142212576 275779399 861755063 949780364 589785875 645569423 58122131 670930904 152229791 708521008 182921544 394406638 374214684 838994215 990027570 990638749 218821598 851078951 144147284 714386310 656387124 716855760 672164958 838008908 611786219 854028026 216763736 383489584 918966341 933080522 921395131 964723457 206904931 447920468 130081866 911625788 653927861 725863778 114868591 680318615 666126122 930507344 469241245 500808312 673804531 724380205 310866078 549121728 971681162 976480088 332841412 645449193 290718209 606375269 654108675 896622248 84215771 545653246 840592164 931715722 149742361 237593361 281282734 651556646 976737849 985161199 372738750 390142569 896935450 967366477 772019339 787333426 640257237 712604396 97060794 823153073 393496607 965859743 911078799 938497484 9996224 621224266 526303307 681077192 360763757 608647346 190122277 903503457 334613313 404798598 138334650 923333564 695802866 911917929 317474105 460453516 535825368 582113537 219244471 396983554 491896849 867294528 853028257 957976250 399251840 903798108 599310376 727905388 144548612 854279591 490556196 650532933 873765491 920014773 592610962 724236580 765601839 923674372 97950995 810746687 252261950 621264808 613154127 772635886 786350102 841028507 151358009 979233159 775171366 992639365 629323305 884008513 343074767 592617067 418853641 977168837 625587691 683236057 997778838 998906025 412165748 694806875 795295816 983633372 402253285 716143288 857954295 908714216 414738124 908669719 895991412 973229065 299765045 603471554 962281065 969994875 653340170 958150226 412322933 763007023 781738273 889905850 133396672 812540850 584489188 939980735 241479550 522311304 105987016 666879966 86020976 938984541 707293006 811064886 54987642 639221216 218128594 358733589 967624580 992067596 343639771 614685290 263749801 985222678 223718403 379407543 660430714 887895731 291834893 893761686 971160323 977800697 810164270 929142516 613294072 709892390 901823649 962228951 771306385 801718992 82171205 499284233 62433899 886342697 564091148 751740596 678069934 928802998 620810395 973304694 250530841 563136490 352662795 408231504 823238788 900907861 276670147 459080797 882711159 989087992 905769719 920291760 465481789 553877013 965228173 981277063 797099860 809265161 85509160 622252562 150382818 775204009 654834517 735124600 370395871 718035446 853997825 877904806 271617110 486372300 21535529 540746461 929897867 962687030 268802062 851608411 442786146 660590435 341591740 775965521 409475298 803130680 928318834 935770857 686522742 851234865 553569475 579937458 527522028 794287654 904803912 932767362 900226589 928562607 759624352 969053267 560173411 716776764 936600344 948286548 522338499 794475776 574077779 684182691 361915538 566675671 409993833 515499187 641893393 934671098 141321824 992806919 249576106 647739105 501417143 590634050 254444294 920597528 226286801 473795387 654907268 978157429 418274469 624170263 145407030 290712482 831109048 854888733 527275888 686552696 239575190 574917712 149013151 445050142 237905647 304460061 280808782 486185104 354681430 854218332 462093657 539606107 449895518 657122593 927686754 975542300 416723912 973795263 352428578 513161063 413914468 890260310 763111813 795349287 430441368 489468662 441221668 679812350 578285347 788388305 283950237 454425839 775712619 996442390 812213285 838436213 625594614 790293456 767987863 775128349 452812147 959529781 377619782 651953012 899913241 921962430 847991651 955890946 858579013 996049067 68630222 225803168 681084337 971241826 103511730 283341713 743059550 889652872 667582636 900456873 413278653 966288480 857400000 997453857 227843179 506654513 304430656 422525303 37977511 679031206 760223569 865075642 826611885 972028065 514025582 944091492 335158140 846432830 138319165 273487672 589421500 990850676 129572945 145860788 803655877 852323162 483938536 528736230 998585984 999382764 833940978 892395053 812386018 961251953 733774833 941047029 736179220 924718418 209659455 511435885 896895546 926074962 414008319 473746154 560498916 945462379 591781423 911674995 413871605 982046201 581729365 906982184 400279913 879237932 548792466 873582908 653199973 984137289 120792719 205703815 970324335 983004031 548847147 591614433 406542503 890907876 673754873 776003517 952445501 961441919 761548142 814975051 126641043 664106152 359948927 562467510 616684869 885700311 565368742 819274298 884817936 900026397 230364043 424382680 757427886 861957792 378625279 829781397 475269919 991979358 981459312 986528211 346730618 594751635 997609881 998258666 25312744 26317180 49505320 233069260 298797966 384385364 954347406 983035272 878576130 931525463 752391927 847826054 595920991 718939532 96781733 603061032 297478830 636420590 932964087 958338936 31192217 207713003 74508418 105218535 144179629 384905063 586495479 868069435 210359703 611774705 765218203 846651405 698095181 976649690 850830757 907253539 996155294 998735651 401006607 998080279 344455141 757632506 834300090 870542160 65504570 969401353 992398724 997725723 203624239 368072450 184463356 426956494 912468854 914604413 428491259 533251109 955136952 974362970 696972460 729065163 735877886 873845473 693727441 766676529 382047766 786458575 37954501 241385002 388332837 403324127 880398607 887267759 858828566 986220043 359322201 967485862 638441085 840075653 314267647 599943302 231912696 508323507 201965595 986749234 845641124 875356922 702339252 732372367 859193955 919097523 207618496 869161336 695185229 706794592 474130337 913785344 162670913 164189104 997394014 998325119 184690143 928213336 591109999 780420534 68374621 334785778 762732377 836479059 445166746 762856998 361686547 738584839 367669533 969914140 197899390 359755673 447874628 543752713 95284528 412224598 707470301 722814824 789717384 941153039 676570260 814534903 326394762 589152458 342133424 653157342 111390276 673380233 947194090 956746812 647097568 694636761 313870869 564638960 489272924 956555725 688177778 900587383 157562367 893569812 818297155 823119540 715310067 952756984 212297940 417393861 746894303 825589772 641581958 873979578 868576394 943059955 77926149 388176996 274085135 836626119 926846769 930853123 542963678 680509958 824982542 910062104 238482372 399473054 104709955 723434162 344884476 942690811 160798424 715282775 141261863 804905907 15506942 221137724 173175743 613533674 117235735 246871841 898348425 964495510 73728715 436785538 429308033 911416784 117725469 806177575 826871795 973211928 82092477 960270075 376870860 689225024 831541720 891335827 473928825 861349577 751933182 939255954 859248094 974370126 609128745 852122099 543818132 839070178 425261421 552624777 654611051 994795123 533410391 579530978 650069891 886588849 583532387 657276689 92525745 188089577 235950716 618347968 779680471 916219153 541718461 667659474 105615069 530112143 507140227 702392235 595699777 776807812 770588569 866438394 520107047 902794066 349241426 520432412 999362757 999367952 122208264 790420522 975779539 992659093 137780423 404505332 280157160 465833409 844830160 907908792 20288903 936061072 75105695 349030462 49781718 880751427 44869446 677664951 724022732 930007159 118240532 191051179 537145500 777706103 681781931 789698941 58572217 271109583 610508919 752946514 62012941 254099041 828064444 971125193 855410660 861820986 973648073 996351496 449786493 821723171 815622024 842364798 13744475 265543401 540472692 636251088 749838757 896493774 997258083 997435231 645442150 865332327 101057992 534332948 219989052 378925673 266821734 406574375 148101946 684949423 438856739 493017203 408791673 931725833 5624871 622992700 57148653 292874532 535073574 553158517 31569713 784569596 56222068 847464949 387394864 708573169 414516566 842618011 511426170 542817412 129540035 327552871 244821242 470869327 378734949 809757371 427015316 454885413 738091686 787183354 806550102 877074243 533095518 645059873 872136220 984756655 816925997 877300562 623669263 757714525 404488303 898748700 105274750 410882307 421463616 649343903 483446858 992182677 726949944 786627999 857159437 956704682 750985372 856972055 419407454 665524350 399680803 545321230 415973967 996320246 922849636 932328301 124098658 966524853 215555811 349526083 591314445 713254309 350808970 655450638 755727614 806661060 492188064 744783560 419067003 758546111 636144609 837951750 384576875 489742268 926427278 998922763 191921836 956506355 402207979 819621786 242424332 263513947 836147989 936729217 94377955 834374943 88655724 729038261 52811858 923291987 513692861 586144393 337760456 724189019 228121768 938527223 647368776 843260073 732079834 765458421 746452657 808121581 20435845 744799463 602539286 919350135 64958285 219254674 550185026 618999044 11624525 502646321 264294360 431120335 560154853 870502967 660283448 997416504 875075400 921447655 826562329 896965120 543996274 624250435 140281944 519570847 774984667 902924772 128434667 617946962 805639689 975498765 472889878 679280396 371034163 954231089 906704869 979063492 822576303 861900767 740220596 782314043 92952891 377453364 758086647 939061133 908324816 949209756 887719804 923501565 313260087 742715760 89581878 495302691 861561989 995521076 763996856 864570909 383267241 898108416 501107284 845062382 616952052 981689718 553983224 943237513 928087502 993563143 133280038 410077780 353753900 719173210 826825010 917346676 131930964 634594456 699096568 741899810 944611600 966979580 58504231 674467976 521755046 817052096 852358046 929812185 566794625 708655878 974510339 980235291 565135801 598518381 295323841 977750230 200545946 634005833 134128334 351564684 336108120 430636381 975113382 995240633 875935239 960360568 991585216 997024294 113655960 273914682 361011572 540849323 493033899 876172960 379270425 508088356 145822935 316607216 501716807 757130565 536966509 977853657 493646881 773952315 344693097 463987214 725963336 925132719 782985440 910566730 510815838 934667390 474357895 772367880 915503916 921981482 771761514 976545997 134317339 698348038 439528503 531199731 108135120 966433938 654534085 906542988 988801360 992858147 417309866 882330330 496037477 983253260 482948533 564318313 16013066 215618386 610915972 668477421 557722164 646018597 646387545 999237274 594246523 810156804 101801904 909307240 516284499 556221051 360782248 665175483 142142907 905648431 933322616 988883663 950204842 957193219 240549757 919828886 329669150 366439631 368128927 939684947 599509488 894986948 249283515 715113835 654569783 890589630 663197538 969155221 563587309 770126292 362235521 820380293 53775754 218184470 372917466 892623385 799273053 918005979 638939112 733973869 110583123 997095098 44133765 146633560 731375262 840622009 676226541 809848684 534201919 705087534 197101096 197444475 288923588 667795530 625624885 962833243 677190866 898625356 190163058 493829996 300009416 528237012 806613856 981689696 617659723 923694126 743430725 794909601 257277582 697298857 300217639 407378154 135089327 657486755 244609970 636464463 706698951 747021669 553480224 609076559 432694110 454894174 319206308 920553347 892511359 957676180 763744968 846730429 726169924 876527605 992799688 994037248 421986863 659766447 419875268 951158683 185111985 599834800 283740330 453433359 360726417 844297758 163264118 933007576 278524909 477566283 145919153 422733802 775232392 950213115 129262237 448885632 798879830 861128418 796104351 905990021 321027097 528484133 47106691 280105905 823355048 839097738 31199847 667324171 744130559 752493488 390291737 664287585 676752312 697990189 487697410 805308063 712971936 743616971 398430702 492065370 787664369 916912438 92722429 316647581 383762270 908573729 371704391 803598331 929568423 990723212 907763021 934078042 288097116 745429527 344356598 984065278 285084942 339582882 807079093 936753319 946037205 969439192 752040108 863077055 682227178 806493136 310636128 891740517 879235276 920293277 433251911 601416893 461770281 610131851 799341073 973538771 45352189 572241489 581475994 886242537 788138174 996194249 25588246 356364226 821657614 924315689 276956774 401313966 252679982 719526515 519201694 690087720 417270584 901230354 323091292 581469890 605302650 919984977 905019917 945598234 84840617 772079377 704048305 704495210 550961842 680534259 208671403 557131592 197105856 530395074 408913727 508915544 600655679 957825504 431415242 655495409 306318673 587026737 521941978 993348266 322469099 527612327 39846534 121656927 794192170 905019128 559454484 767559097 600766317 667071541 858925233 954773567 684770627 856009037 30829502 277049031 667605550 868635452 509425936 752065828 298473377 338921636 665707150 778640745 706246231 804638030 488820694 539851313 231926146 629659577 488822082 611549200 129788820 818005464 401276379 660743562 623901282 806258038 294073182 367755986 416811240 614548826 731404987 788663654 52276298 607977530 134282 712825885 83119492 976099642 213058762 348696823 848592793 976589357 778474672 958330000 523085517 843804997 560996289 601421674 594165227 650138967 360399940 990275522 407974763 431329069 854101888 946241556 932516372 957454677 963007650 969438353 321784955 578137190 613577726 894414074 916811570 940729919 71248339 226312710 712959702 776839097 779536246 941951864 506339659 852583062 559046824 641465596 238764663 666392521 670075845 789545495 111031619 984350999 620586416 881661356 837042193 981334164 215311427 228896581 309913675 591771429 571945981 596366862 766244565 979170298 121610294 312788309 291860089 498123400 575677636 835037845 390983104 907542499 261843555 520195817 174138834 200886940 756730251 817428567 520915130 583879866 188677948 594971635 661299861 818220346 266525387 901526325 884676961 944303020 360368041 843918373 282302738 682564746 228796623 241987416 821492228 856136338 501817565 908041648 17011619 379275118 902032529 918164173 118163608 612139636 691807896 842867443 585521146 981939994 113978904 485462381 810753114 989812698 909635289 992954362 894054602 961520183 424660007 861691653 57383449 815329193 537446626 810029115 808934511 845608929 278771668 525637191 140095013 970842748 47740581 978667966 328866027 982106182 689586109 990789051 606128872 895498271 230569181 323578301 688527201 722332600 912563991 951808010 139375285 269772080 81277765 557000256 76016366 183750049 360088397 975327709 505669120 579473119 716272466 870838682 944084488 982667350 164194643 494941252 829573791 974101632 191846909 223242303 758143152 898483010 628291222 700697179 319952482 692961372 696685006 755453573 871622492 887034479 921550623 961613281 897778951 987688784 751086151 973564869 29461701 201351357 73986061 433176212 806219222 930120983 585944498 724995381 614482338 864236131 405688330 649742917 190310886 975035814 636820205 740904512 843938521 953769009 508940988 939574495 655654830 927911306 793494001 842738198 639562659 858460328 637822599 954775305 573884300 852506463 244234879 522479747 243302351 670845908 430803412 524515595 957196465 984775892 578058713 907814245 414796979 981975893 967932643 985179659 661335068 674953336 825590771 932327405 55038910 657384815 399357422 543591602 620366439 908306457 264704448 565547130 195523575 550846995 58405554 284235767 804305971 830547678 825749239 887432676 217436626 462486272 702519254 718475943 805444077 839803751 70822021 864834772 638838712 758920246 58027995 688535050 200129538 553934862 523557039 702653440 471473399 985199662 615430334 713394503 523515994 684335568 872812538 896520681 534220795 771649106 538606426 729387986 428270224 902709987 394972542 998985046 838621383 854268305 273027584 950777503 37752256 135718963 221460234 975868529 392329513 709887677 300228541 716928610 489383841 608916482 428905383 713497002 60877559 874740451 437148014 624909206 80939128 379049026 711322879 767221055 171221890 276003508 225681355 373281189 892886724 893759016 45538388 697340866 865600523 905318441 979473 511715241 574877098 878811357 978924701 988636281 153948371 664995605 222468300 237177212 277210038 812560694 48176705 251216523 165680107 345325741 431908239 474588852 832139897 918962186 172611629 792206858 733160498 910676031 95299904 316728776 859777984 885763686 194424709 454851058 135864076 523891046 790926001 811450483 58569247 742754048 448476052 742734285 646803179 931700205 921694807 961122845 59413896 869658426 733880359 793622663 680489878 818782416 224110549 846747458 671916230 799809290 441306063 796371194 236255784 634308353 474378922 960800841 472280864 974891477 565429446 607909373 851123194 955077772 698144299 945608855 717716985 873214915 110357806 362243665 796725726 842138430 593949352 717515041 461765581 609749326 128753488 544206552 806714196 854808499 658908410 995907909 719570739 752708771 725059480 877502109 16631718 639812179 206408138 244431251 428327735 744574772 690482545 887506814 317281314 370079907 65433896 482525418 854293026 917125394 932164557 935578050 845386068 885169308 732342354 758865308 617305864 665040580 259793540 795111283 74972108 986496898 629201803 903735629 937194132 986826467 548010207 678113098 354228214 860569232 467155788 808632819 175977798 833679051 824228903 946039284 170366986 553356934 659561155 744288376 73694789 779229813 183941065 685636574 783997776 893816414 569243590 860293680 369598653 840469227 264100562 708321701 588917652 871334360 548687950 729859645 591309981 860083548 341970213 579779851 876208606 998025794 328306487 659649378 213232576 706503673 713994143 825917407 187875416 870595477 670302171 913597478 272209222 589826410 737906550 788935842 512354611 812466576 388678317 478031377 745893703 866563219 992727354 995745147 997488778 999284909 265725847 525054317 839457070 841760896 90874368 955606584 383459857 945352079 132205298 772835411 235988188 295457456 569308284 939143187 217596983 612569487 990140659 993347579 288197982 655765123 373333994 452258534 266106519 426472168 820164564 857798277 797844076 800354728 536547572 709299359 958837199 974203427 98137549 703342934 760922121 817342749 241896633 546804862 601080875 696595882 53098389 919564902 334126840 604354273 948826350 989933609 391056062 870929087 691505681 818897057 652208348 714829713 873753147 930807218 331637550 625635053 247610577 398256220 746105307 845261701 731463886 992324748 536517380 585125008 760969127 796049566 326203446 731871362 546780676 962154483 292477932 357427390 849404534 866823122 974045856 974803580 781603299 904643439 149215020 244922812 813193417 912299144 821082708 850282904 906417882 923124651 32138885 484323756 82282278 190482754 395785118 943754355 330396972 344151485 685485400 885658170 565753354 877357428 398963355 823928189 39144675 942593271 475552525 704691154 442727647 832755848 618283172 843006073 581154302 826991173 330030860 348440181 195345415 649002057 859544836 977391430 359991868 674943681 945398638 988919879 342454134 427120238 843212578 936533226 265680654 353247928 737568450 863744422 425746587 654654782 852821495 894132507 119534492 720075644 537331341 761910858 241325911 464486070 569781158 661362371 620414917 849695724 218034894 363591932 932635781 995896010 863465741 980861271 630836947 752105279 659823596 966675554 675733790 936761503 737492964 923464258 671036022 986196987 18470864 138964335 596506975 821403809 964345191 979007980 368108029 601951887 987783083 997625452 296837627 873554830 405860122 418521236 777817364 889479831 378911814 665350777 966041514 977903683 526385259 693969563 960168079 966004687 539321517 930199029 998589808 999104849 373377579 482531166 390382859 652960073 613438656 677818604 758767321 893336785 668584950 817825833 731599927 935912006 119850711 881883799 868650653 911797928 739470022 889282591 730049168 971477921 119976835 229392318 416407412 507488719 418652911 423610184 795608372 969082598 634481843 815634668 419671534 622480793 991910660 992504016 5589867 751078400 684416028 754283150 404233756 831103340 518856354 785263829 901520205 933970408 340077070 825499650 493263423 505776067 795665892 879740132 885113522 894247582 807829506 942623432 286459698 422444247 788967954 844986552 171414079 842937059 467293407 607155674 307993716 466230839 54030683 462639881 939612026 952054102 504744931 664804984 369701613 953820241 928284444 960882944 885950445 923144466 547630467 699218224 140593184 550477563 546908432 872661964 281384675 315585913 202471530 688852411 176284113 706846671 688408991 817827298 292263934 444972864 965507325 993743362 958119873 985236844 49164948 66626458 3786276 929012221 877266558 963438758 861614800 954365619 33495417 496347167 811115111 898053633 21657041 656027154 507862387 529281842 494977991 705498444 468478450 974489288 707253052 972170821 303296107 575145282 322716182 984455750 265546556 935057355 685704809 931613980 988954386 996935152 662372812 854461159 942287605 959196104 801383379 824789898 316025171 894903520 532941188 842534836 531886215 697387004 939227319 960730969 523714785 802854496 936923828 946668438 727156009 995282467 513276638 816521383 409893126 995403294 345438726 939541493 208080087 837138818 505259598 741414473 503800611 743879665 527430735 907560822 757098975 899905791 199378339 804154069 924218842 956355570 563606042 644815938 130545176 613629706 809293354 957556124 365078 25207175 344185632 640027236 903403433 994108392 645967206 854669285 886620291 985751872 676524912 991168308 761675778 875464761 489920038 929202140 202389449 337540497 146840764 251094049 959508214 995091420 490738670 906090899 323217929 931991646 775446908 945154028 961279591 977947987 430067162 464394064 712132715 936066818 401418206 650949852 391977675 470087238 639819574 649871151 473823168 992288551 807639716 821037092 914078890 955669662 559490478 639029436 284468335 876353687 163181858 687070276 189155884 825540382 575233087 599834674 104098394 963444421 845748578 919129077 360575792 431159642 816041441 886477513 644597111 789445567 155660318 448542926 469993470 784293382 945140070 992253225 605444229 717071538 250564352 829786662 674307023 751756991 853221009 918659734 655098433 837389599 284655527 496363818 997440392 997789251 364137676 856531048 190762744 712186445 108550828 249966497 872689671 902692249 899002936 945576101 913186060 914623325 718349573 722701892 213503323 518953706 556456540 574078957 748281155 804931026 838165713 920311837 882349671 942499520 603651040 978783381 187337066 870662145 640328792 725001140 522882169 990118021 450172037 703029611 416934365 731687209 368655298 477221794 875746678 900522444 359057691 940468989 77066012 975179521 161126452 564532777 673606298 864382683 732067721 928222458 617805044 968598239 945242584 967441612 293143030 576158374 955725737 981042163 328348406 522695349 972891320 991819045 218423033 308905920 523899166 808860167 647897152 656159168 856117030 885252008 855212437 972719687 662720353 749951661 728346776 732135633 195630849 769638157 606272005 942805290 452849743 516873052 54499239 378282114 70705692 250624885 627040904 767541713 212392684 784074051 880244001 990774271 855023546 990252899 741649950 863847957 662507624 828572964 446648677 708330125 82169052 197033818 773298336 940294873 254676513 328063036 245024634 815189820 60820910 428339562 49773045 660632636 476457157 934044307 229326279 999236403 250543030 400913029 593727285 848903086 437393674 554666443 158309614 512754226 909251793 927293733 429330471 866692604 978924777 995875019 78242129 379802641 840747880 887078626 474650691 671174210 910288920 975273031 127762387 592242092 559642046 590115458 510046267 776564127 972356566 998927243 846918227 962911676 217311572 595272477 949331199 974050522 291796512 515125289 513071832 967723078 208856164 450413705 516749277 888117658 980568887 994084800 415833949 638397392 14288744 677274545 95730315 424814112 926503396 932292688 391087236 812618874 216099575 582546529 953957195 959527282 549618903 569609374 359081 866266780 775670017 776397691 162076213 443893444 808004704 820843208 409895646 730829504 40318026 750398608 330951398 519542217 108300630 607774021 639519363 917265120 249077035 494350086 878614507 950605455 2796217 197942979 393376626 877705020 265473474 349703633 150392507 832734372 656048450 816882043 896808620 944567131 621710472 629826488 634733849 650594057 217098599 453132172 183085023 977898474 674435540 983785192 800452682 832881696 121328581 659468400 129098887 966312825 310218101 539769115 789059833 819725236 708159240 878414072 737635349 995144250 727022692 931574521 458204845 503501840 656623831 963980626 40958549 195279089 659939399 766436198 360437892 996804107 655134770 846512399 751613070 871696233 230603287 942646428 331710074 576136934 202087760 898079147 13898246 279900813 643131823 781176618 391678616 508952974 565035957 883821959 577123510 686883735 16138795 904731917 693236008 864109606 857817876 971638593 428825676 949890882 806433068 985030688 29683335 620893837 959326753 989962721 932177916 969318930 342618819 392825273 325727733 997459869 350213116 774347265 175860267 367318518 81474976 114587832 92993851 685363871 825961343 945213093 729174878 807320894 331552385 488207249 223041104 238056967 791508097 810122842 186845628 326496697 778410032 803325817 166353004 404566560 445102861 944046548 668232215 860669292 837645501 881961506 950078723 966066550 967366533 992253525 834751779 881818161 86092282 344141215 460117176 940621215 455741362 463753431 315723618 408575526 502366597 830518075 262385122 920851922 273961960 838273097 880614360 928063788 742881961 798372892 70315765 354254487 37587853 137478673 92463610 765705778 439306730 989253419 578040021 587325864 813679755 918518522 956500972 973338560 261707989 430365394 789074552 961391241 678112731 688138132 110647965 692270143 44668887 382154255 466347492 714893892 540435954 824126476 8585133 618623480 526853864 910538642 535989945 665579915 814270991 992257058 163667281 890928755 839663635 917555303 129370407 784957647 439176907 859110767 324139698 820837649 564327622 629797365 41483845 232434079 750237214 802890946 244467217 255295482 103840344 932857701 643780536 861977726 520741785 791129255 844193481 912566753 61417914 951401019 147513738 962922298 434915625 985960672 760115586 760814153 599792675 774043668 166239468 382988941 933620874 945494623 751855619 878053733 216267923 484304411 137608508 447475112 777628922 909492617 692913064 825937269 117181898 938201559 134157654 556147187 465123255 734067837 723910141 864887607 808231500 863155081 438016721 832848615 241358529 507277711 755186388 960586413 254757561 973828435 903130510 920516086 514604179 957304617 8151335 149308617 432531816 990479769 892045850 975814359 603611939 811567555 601175996 670759245 564047718 775334527 333038164 781308070 807815417 847455742 72111272 635247774 585716464 619628519 175174629 370665685 296517000 867106319 785355922 861006442 408649236 476687783 474911286 630324839 14512827 451467859 87524053 259117571 220339606 428179985 632192483 942053405 556263277 906467827 134329303 915569346 845282178 963693066 120489732 314605891 194077744 206666748 671077209 772113128 716779745 903709822 844254773 903014552 563806760 852530254 966539981 968941913 384846132 881262316 622285889 834565853 440645743 570769343 98784303 345015515 520645204 734836115 348185661 673614636 844030732 903854576 6242613 772411491 261994996 572587433 286405040 853348296 71116891 953386012 355071366 978365615 549603249 590787786 967264198 990195997 786171621 918203562 30883209 495787268 102990035 782538195 759794257 886907974 609389282 778136026 905148031 917939637 279782335 882272268 908212081 983572314 719605919 745138752 709760841 792529703 947971245 960857148 324237719 708437201 133951384 828399915 906552831 915596924 128514282 648833623 581234585 773809251 903396704 977688643 793952415 795739809 400790793 881931577 708405341 965556858 805334216 966773480 902150442 942185460 529678066 877707348 196018358 571465637 994868804 999020019 934418145 987364037 748138964 841942427 13115368 179551190 729112424 979271358 227286021 597568642 894845579 956957224 90634011 587901742 312433812 977425503 483140816 826031057 983945963 999015100 808947816 947197878 689470006 965392515 765143229 865078675 141691544 820507209 151335061 932270097 492666073 910704301 879266552 923788661 16881579 489053142 499193312 678756332 495693543 811849865 950927014 964311512 105202727 204277391 113498502 783070092 945352551 966452314 403335496 915196399 60641247 860617555 324468504 462156780 478420453 539456698 490305491 654117876 446778919 677491273 778738387 895060035 867200078 969204740 29688857 438041974 721819665 961661653 280318243 327708703 6394196 339980498 827665952 888259256 159256432 949480743 597134957 677880171 122285000 822467312 357723299 390793966 521888998 559769052 711081315 907801121 312415071 948439290 683093940 807920397 933474421 944034899 588429471 709495691 251333501 762047113 747750846 751919644 339323107 563482745 520827566 893216651 947461598 951521440 492457186 521584540 276028713 549060698 759057997 803580392 127506149 283187921 513891954 629173520 673955438 675363863 358813697 777215460 924318587 976940533 264366241 571142868 168716756 438133262 846936407 888825825 373551882 817536870 432646215 645415834 116953965 529606059 497491218 705595755 95348390 264437769 817005865 826167956 660167427 712494861 204107770 827616264 822118356 862551861 622466830 805690054 969665943 980583095 156149329 325507173 452117374 774347189 366518893 707178818 253382698 301795176 660083768 934275420 883321394 934465419 143580213 703743066 894899471 907051385 990996729 999042751 45284153 678334206 762939278 793724269 87841208 217235582 35553529 428905139 632047156 748576123 876912480 979933119 625816582 661497314 427449490 739030587 273690105 952647114 676414360 693824199 194671319 696577640 397180377 776499377 875211080 897454601 783242393 954877968 600645022 879161824 372142097 699306403 664011010 778080744 538653093 989200377 868937921 986792545 185278842 591039379 970551652 975402473 368410820 678502527 659474787 739482624 502207898 760227912 390421443 728222946 170260213 837365222 582930197 969738269 700651699 900839128 666183364 830445904 498276596 856406138 233004721 843463329 932139988 993332561 527510921 930490299 926041944 982599492 91087761 105772447 572346612 620154939 671035152 779360351 9631775 83649725 526003528 993006151 876154783 893468127 479293420 813499307 747602781 874335007 918589791 999251824 314585127 518465480 580452109 590711372 993324511 993526250 372276301 980378552 705066994 808889389 589323085 668168138 918563993 959055305 234191361 984507331 476267758 839513533 181623457 401631602 663281128 946173695 853728850 969901442 467943797 929643057 393686388 821646844 477845188 913564768 77212065 83109485 489484136 665996184 960213787 977119155 202831896 515772023 415908243 549545012 366326776 616447046 360700772 398933723 110937574 621498617 120470098 209472550 807107733 997600559 979078834 993124425 486355834 859106903 649296728 997991021 54387762 597174936 840585530 974790952 504435218 703122339 896862252 935506296 334285227 450065456 366919624 768436037 229103604 314786249 353616552 932898233 536174518 649675649 188832325 921954706 121161506 673646828 471656285 507089819 137750181 513540532 764592981 839987765 245855238 876421954 287909738 452146853 57147355 542364495 405244656 757697124 570259435 729839295 701087866 925979074 733555305 851208462 760086404 850814442 647203361 928212434 137370454 269928813 876355960 956003761 149725007 968424658 627957309 833703587 372398247 791250720 976311755 999013438 554599953 602911563 223301832 371760688 834615581 999048121 561430699 894376911 805677690 996839847 989039315 995245739 390634389 566426978 739551347 929080907 694206570 942298153 360559667 417344498 670824826 986016075 503067382 597171669 896078825 956147614 138386069 620076978 694332955 979368922 96325254 839390700 24254471 765043559 931220851 983090753 558446740 810219315 348551543 822973968 712673879 743350816 458234986 736539721 394635952 735281067 120780588 961597896 982847825 996362075 631891810 683319693 634906075 753869647 19192092 265185603 797099741 811735927 5000552 627005313 945804362 985230507 123064912 367540268 387776757 861744335 106395304 922134835 844084395 995216182 915038284 922378582 668511213 820720559 365922206 463654395 139275582 935744898 657050331 735233614 461228528 787983814 883805239 886540207 110239663 437046270 88995469 816941634 52057379 442424728 326887603 980626861 981327408 983572830 624104643 899874865 532313217 827900745 11216968 436323379 106649381 562047165 194238187 389745731 813251665 870234778 363433966 937465386 182524396 348248511 283267337 837981830 570607334 651553292 156418031 527275812 837977009 846400274 571770926 615684450 700404063 880543925 1692619 615883496 673340749 692103953 5828175 254218938 859228803 992571750 146452704 770278313 107162683 112161744 763583104 805578306 943708005 949263076 55737301 648401912 26216149 993485836 138462599 397164112 852853580 865785254 838547878 987574846 660222092 889203851 954669639 972659813 26293706 653707072 233809588 407336787 197306100 815726479 741744458 895072224 198028294 732066938 581225892 868796595 745309612 800270758 182416960 368528113 23361648 648197658 367245897 479356612 171548224 779509177 381517037 978735227 525783251 566740761 730114799 941776384 354173835 722229030 45661218 597343399 1053872 391687746 467537966 691549874 570257903 778548980 512641874 625155812 748166519 917254297 895709037 915814447 428720480 623957783 401967400 550310955 235827457 786048977 35268003 652560477 704861287 925977150 943220485 947627522 388412032 850527914 500721912 619594052 23825525 485203413 422046490 722998659 152992563 266339072 111412055 312118134 685861630 692047779 720551598 726496233 200039458 820583304 219280112 812718205 276472832 462084310 14660115 975526370 855198472 934698854 791215202 962485790 427381922 617767600 440951344 820573658 721119498 815769851 754853317 944986225 54245737 837233304 558864117 750631368 210240052 325682386 767086 278672229 181554352 231022367 211946385 789941276 470862237 571704793 389711073 826470260 546769543 781961962 24023771 670054388 70363855 116990597 885926700 944317572 713349 816101531 803755214 868825446 332976233 860418327 962884577 991130604 561515888 943811758 733799294 997167824 268320468 453192137 453449479 963029115 511174803 599473691 92409620 663417975 140033922 146434986 330111491 893837616 310951236 379552970 666575844 808285500 268796203 973822617 578037582 632776672 876617288 976876731 121536769 487573213 121048425 940132046 100296725 567814056 368189152 853389039 908316552 953272752 302904265 782917212 126768461 152254958 599697838 755808916 325390255 868845843 956335681 995376182 278871726 980410383 252099721 604429297 623948117 725520789 437328867 575790435 578604997 832470537 748312852 863563522 147637476 351527803 779674858 834562285 678115968 833402373 655402109 985690152 183565841 258700884 220011367 950124772 922992453 924924958 270250445 876704863 513363697 564938082 243157871 680352884 934103854 991342716 363677032 892751661 404917378 754914528 662072413 982191739 319567655 509492735 14434503 615803096 989921672 992571771 159828393 499569876 764160531 773945745 146295469 854130763 7896465 528899088 231013757 544806573 587328297 878316162 278914956 660542213 643732989 698353697 845514926 906902601 91838084 864968709 489192841 711959975 102736718 290494961 947464740 989750885 65383884 215465384 633164969 691472020 645557089 900833217 440373740 833745680 559927607 696584452 661196492 780964961 583076094 774768484 757592775 908148905 343130646 557771022 74389516 695120445 473240227 474187811 590079966 691859930 535326403 608414997 211634918 219922417 709620351 994466288 428936390 436159044 519729795 565319694 425317783 622084339 174799692 267256093 435752624 758394198 903187917 950454015 926421490 958260442 170656945 363026505 553648469 697037911 702886519 707443342 858132966 938176223 992158218 994879796 736483337 860945408 155699703 454947664 658263043 814330317 274065315 960491866 976673709 989450067 659547592 691966072 285281444 534973929 390618365 634355912 269143986 695440237 316261077 484248356 576753535 766440995 780765161 785838853 558642618 734902903 352135611 431934702 492672086 519522592 65429019 632036542 542997197 625155759 832437838 899599708 418718348 447571493 890916022 968559860 789898846 878471029 297551701 689474050 524672567 663708020 57532654 82547229 890479121 903872413 694696309 993052292 927391858 995911435 810336638 861430239 641802130 922183894 892538608 938955958 960817735 963921650 606815512 741410208 863350617 949369698 827048069 936002087 634303260 640291631 50858893 909644920 478187402 587341785 392938515 885990010 944657404 953718155 875698650 963305163 858419934 936951041 208721690 269929982 627064540 997922911 668114369 791048034 588204378 845788452 286940453 933919913 708718342 970847284 817799394 854626757 18426401 861082487 622330671 997969258 543465354 717120377 540346960 632543755 984762988 993887825 368172087 753342255 358839964 710353336 102979132 953682169 657800423 960781137 463550230 695210576 104345075 880814123 939588704 980842594 103206755 836260035 307895575 748422965 839667557 939699382 456574773 466954138 389682347 563766543 4112589 5313174 189304886 801585941 931357320 967326287 449725462 582410552 224944789 771074842 504031847 783521570 93515664 869239985 829241781 857804414 806737696 849481883 480559273 568321148 642782609 811685463 796006412 911469204 661077066 782412357 540234916 647420972 331362308 699732659 607824483 708962596 526672662 558788873 501188293 663512958 473126045 495898991 679581941 742880363 252137400 861271941 822078354 857044217 967352659 978472318 15754053 785048028 698833825 763034914 173243027 385586638 668942171 976569957 625328310 745693684 462600768 926548808 376809031 933911429 59880458 118444278 797166152 982125400 475730945 798561198 247530554 278057439 125692794 193346210 363421688 825582973 508719684 695638087 195046146 405305532 828275297 936562994 462420606 842261910 527051336 986957273 789463496 822325201 154601535 849027596 896521841 972285260 205762279 665493316 690176212 728251181 528833609 902227674 149346533 231068597 346151300 817074095 521921100 831715848 933811895 943420404 436891706 974974961 790147446 997710848 137669459 181727874 974315527 990483304 301954940 673992130 989595954 995792473 361937931 549065655 872993267 975644754 207223988 887653625 781341977 824928681 218182749 359772404 131409090 511783177 988304647 996507015 88750314 740545344 14506688 336503629 267690478 298309624 770842849 976639977 711622475 945094343 969708970 990922269 200573645 522147744 159123626 410921377 324538048 833217000 624767215 870671877 941084735 965933634 398128705 858063986 547393916 932557737 463422869 628581774 660197420 787560382 108625692 540316897 822220377 893801310 109361664 290843323 523369090 572441407 162921876 308076281 307746797 515692759 277495921 600341571 5716498 858989697 306946668 959098368 550368228 677780420 772257904 819153932 584026179 706370693 450930320 899137085 721559604 992438371 23125250 819615151 880398002 926070079 126704326 809819720 194148313 916767600 740256474 863547329 799848343 978828018 538605936 654351106 698408237 877632976 678894682 709065358 893600957 992950389 862202242 895860400 532478775 800244180 421629562 884810550 894097317 941914812 345142344 859454126 626932177 705638203 261046072 491271433 698055433 795412880 942882467 997122376 34068932 439758332 311173256 473207908 863726726 911009984 859981612 936423380 234263208 296979439 122707786 912255397 938599543 968456068 324477817 511072981 811626519 987675560 459347938 749358514 396756295 624528504 590777584 859458397 526466456 614831711 988396146 993424841 435473970 924303774 973126516 980630028 554934126 964939868 641902858 968032389 784093531 932490988 529712393 748924613 16012404 798909570 363701072 687937811 220501674 941279180 750592344 778071259 926468559 946334225 126209277 771124254 121122625 742962177 212390152 371913741 862848818 923100996 441445216 923894554 265277620 799881068 989448669 991061994 256449790 678997359 946494424 966519865 635401118 663066927 59829467 158482747 669245386 736178798 602812156 650762630 822629929 996538241 682403418 808724251 269721199 330603268 877263514 975086242 333053560 990073324 244342687 587681809 943877908 979618259 42797635 891856512 812027752 963798020 474354061 885890787 131625405 206002994 554478276 811216317 965241287 976345974 326654285 329296337 839723408 899544941 600679509 740297775 548750493 792024208 570332689 912666940 589636392 885474475 550011782 995718163 725142395 926259172 81824283 980359853 362273017 394915921 887102082 904354884 487653489 803075244 386442480 798715435 774639929 896513925 916338550 937111533 812862157 820858978 556619231 812336558 929573071 962309049 51344461 861023027 392914319 868359358 136228120 802934239 915576140 953232131 638366448 703226217 288895249 362432543 158348866 195869615 940013066 951354321 225397490 895196729 588144226 891308385 210032748 539886953 616384206 616857194 380093946 529831601 95873476 662814277 796682585 815601156 312464603 956098378 363731177 534250604 307774975 622603119 540808508 563770147 73134329 832341655 202356158 995707711 490780797 636017531 8921062 550318783 452022776 815809221 151246948 776341547 203933287 221096827 594011076 760104873 681299926 781452688 302718751 948739191 14711516 250089541 385300984 764769422 363647569 826691430 417779711 418982028 596016625 613057028 981780395 987157760 534931244 753817041 573982042 771798082 998180016 998655164 441592287 671772629 576663609 603832242 141999931 284345801 899342787 964345695 275248232 295756278 597252017 638949776 256807677 429850289 144508346 327929914 107757410 538609934 941175093 995112125 41586302 295515835 180869205 690046310 383482134 474814773 313344035 831841188 257385880 867787886 494693785 552858983 583583959 601391936 662098106 965508186 719559927 819922867 817094170 849983965 642095637 984936301 834999927 976790347 792218593 934599541 554808488 668817243 961619478 969132396 407144512 920047246 487030220 624573189 368511781 996672510 921887238 947016971 965186105 995094705 725447559 823332203 862763550 871507079 677157304 713407841 691416372 994470836 490438195 831503736 370412820 726192945 253611385 837169392 28717166 967643166 544841156 811711971 932155579 968150637 887558793 893600883 826942052 914190210 497104126 856673508 3684580 459909925 18972987 257524587 725002652 765081674 569751244 965048553 806761766 848013818 73016482 353011485 147471162 808632865 272719204 550937695 372461884 727850307 188807524 489830713 691548506 761131721 190393790 674969508 539852120 809784993 267011600 911683076 357502307 500032015 664416711 682987401 477797335 587434715 39930130 718889886 663426047 708820949 807269412 829295579 611880341 767229880 134612159 746541417 842200876 874060741 25704662 190539855 306309146 811953251 290794780 292629617 986991116 991564639 259431974 928388817 516850276 678976503 60295803 297813574 126349937 229967932 89409515 714933216 983111429 987821396 137546737 760007727 348813211 542794375 45227397 741433940 490514496 588514618 181377703 968558213 765763898 772713154 547683930 784057260 661979365 960419881 770314917 801981893 724630469 958809626 82038420 539851401 561914546 887781351 791094554 911206394 425834955 941476351 189170000 208733817 344896993 465634349 47082491 789344055 869192949 994888705 658922366 970996984 370692544 416435106 50226679 385726978 639869433 706755321 830205665 959024915 73225249 373345676 758183671 909185237 630482114 898307584 315858935 967390056 579405952 844489445 778221964 807802747 688324402 987976399 517389464 652505658 83055769 95432050 39567524 779596802 210450012 438667824 878207906 982175707 302064562 717415965 717914063 757405105 815285506 961741339 150598496 195776489 67599838 280335320 579822712 809182619 774287246 967441801 936904020 953367947 437091186 756799472 333634589 536074820 108568941 260519588 559233498 959848112 766258623 846304199 459966596 885086208 549263679 576372372 985510662 996731950 32590882 147073057 197871488 457395817 706570331 919783110 619128542 993214163 477404651 988370148 932958527 956210162 150116154 684140066 369617280 653446764 589661371 881472305 245856265 954370468 386834958 940694727 888185650 960351755 503795125 742940004 980308257 985557014 224868190 284555183 734296266 757724884 803191093 891422379 830704306 864923124 394413290 485945263 272691880 527356750 997145522 998697151 663242730 718337238 462598091 848078566 867086588 957421224 429931428 670661897 821113741 938514687 774004261 857436090 929805382 934227705 262811615 490598962 919287421 948304770 975487653 993535434 229980331 975958449 557321266 861856107 912263127 950110302 917377925 954568517 646521033 800142508 671382558 743634775 705662979 767747346 335430121 739181550 495057351 815122897 446438593 893582296 417946918 631689612 382300518 906149065 877510558 982973533 360953826 927685266 472696829 818577612 447138201 930851154 300381170 989324525 240443193 403722570 649649461 661745958 713442460 935804239 804995796 853769684 439999229 451636156 224830461 471608822 736020176 902919017 351991853 660767645 945793315 998171991 874261585 895302233 452862355 622643015 486323769 673145941 798124639 833332227 978402749 993919200 821960235 916140106 372438432 735155810 135328389 608993759 51685926 888746168 437523138 979227607 111717485 677977001 795362488 864226997 260824362 429657231 129714894 361625981 749251578 860716769 591141850 688905342 323813630 613040459 415639854 585181533 774124426 782524728 195847020 263447835 908327280 974447106 715780049 897114050 39322438 396522756 896202844 963555910 807915787 810001665 358186623 594013518 429424750 955530884 136475393 500935696 486641236 533734849 329616327 495763571 955628582 961733778 516031115 619883716 280454904 801634089 583286682 813134319 577141252 714349270 115556176 961927548 27581122 430561066 612430011 637118175 836139455 915522675 907765401 981394532 722418404 985870015 919965531 959001403 931126219 954139685 63501075 636634438 342253222 587821198 32808942 892539061 471547234 961466086 642913104 992354435 566644592 739612299 167890575 681649480 460008589 817442258 103961210 490422935 613939941 786712594 43660742 211856425 97385157 149886786 670279800 927148001 984671602 997672366 41153139 881394007 654767074 683776317 626606531 825211276 586961903 861457094 668495150 860990262 357981262 516612255 352451473 863547191 352361376 623189698 959211313 961736298 329917502 881438041 678934375 746713395 510985805 994116721 826568500 993222532 237048944 456928397 105494771 829983890 88049587 710602588 864117660 905362375 748729474 785876765 839117184 954712946 816203572 991766970 215991765 439069907 984631542 994894742 568469374 710689032 404344090 936827434 620363455 914863459 347626023 564132494 292016329 692887152 718464482 893314066 31601078 90647384 203984200 232442696 190240412 521555346 542167566 970552697 690393160 986340298 950996628 977283508 793772428 856114621 358997688 725972425 834451265 886634996 287049822 786404283 543883691 863931810 495264489 674668140 185666332 585852992 109705452 945200473 815956742 816974421 59265252 632674537 995615186 997147689 100447261 279185669 257490970 984648616 774718099 871590961 92101237 413688622 705787675 727726348 803142632 918536122 527091712 989034214 655639884 785095528 378045016 757916764 767035923 785745957 743508529 830203537 190764922 885542671 77061969 954037037 364193388 634023276 518589336 896210875 504532372 724418897 411791110 476928475 152824093 267827615 469914074 514788894 159521651 424328024 487271440 922438722 777456758 998369549 805003388 922610909 379338888 627013343 190549561 599236566 532298509 747610103 519360623 949426021 123984344 565635809 573725035 852138403 813513842 818442616 970497600 979782709 40331804 462842098 217844709 814298899 668079857 739320752 605769860 752025240 181200394 314046600 845262790 936648205 444162237 741867627 757085014 775675722 384498971 862285622 563452166 993986028 641752966 670967854 261673302 434043761 438557552 450674361 615076217 678167962 614250681 784441255 548982155 903261092 799530091 834860630 709895654 750906191 161191574 214858563 872568039 947405962 220197797 988084654 759898107 793407244 358352820 865113353 584786744 601195325 897582827 946186306 554370363 970104983 407000977 503513936 368881347 737901281 386096516 739419150 214988347 876856427 9576758 767995471 780193297 914726158 96679699 574600213 207494674 712904706 524470447 535882631 333802950 907424384 180185526 808924160 390137714 568569397 84648161 501233519 276541957 650740382 382144 346175004 899015117 985773390 700945619 985105429 930186895 986440975 997107217 997625876 682059698 745430066 813751498 878304131 653167173 831729509 718394007 968869076 344429167 922161309 505013875 564625764 614086086 935842873 607195031 611343260 817388167 988691785 770150030 825250419 729942085 900728592 262235091 834342541 10233282 696380623 297174034 856076977 683447457 758332920 31726485 763732218 135181322 170709803 877275172 911728983 13035939 593711925 466164995 670442095 717042373 975453431 374103105 814352995 805856522 855354087 99878348 401098470 822150187 845293380 215186488 624700049 768324238 786529807 428062200 597802252 209100835 766821664 217575478 904674333 716589402 734534866 402557867 557884838 710503489 879834034 726978658 749054766 514189279 900181910 78228557 719425738 92013260 967988584 566682093 723157211 80209118 963101945 500896695 872452265 544827033 665568328 726619626 951181598 369783509 972594823 46465950 73918050 315477491 632717057 804866811 980313959 636459276 943843552 646575960 965978972 925682466 988282211 981722291 989912960 354617233 437837447 591265592 974184681 211155562 441996945 482950172 700048280 929611722 993735576 521023134 552605586 828722300 898702431 988425051 997630216 590433997 632329462 859230222 923568739 798918032 890852339 649381682 751031461 14631589 403643812 996602457 998772958 214488753 332865217 269627587 566696242 90193611 621497429 778326841 978655386 289573406 489040134 190831601 666574988 803011097 875494952 570253848 630388733 739022587 962411781 473625856 666255643 949180907 968022809 225692500 701826879 131327357 722181135 862329743 882338132 698444160 865495758 743828066 818508432 214865003 422079801 189505064 552375073 341731973 836414493 140932492 489068277 864751448 892708143 91432096 977632790 693946552 758799506 308631843 858965441 381873093 483773096 426277269 949766302 803262890 893547653 674072627 905826633 187084062 679251838 930241307 944288492 443087743 811413755 387011927 666935015 173461001 353279289 544943545 901823301 752023348 813133486 797993807 865321798 580540220 969708362 672339865 802756320 91527650 246090403 223526461 494242192 326855057 556274149 241650429 382494018 828002565 859541528 882242001 899308192 284404835 541129253 670536579 982077747 638078349 941420826 14062168 404120722 901846664 943641169 102729353 125492960 251191526 574217448 327250024 648664627 910898173 997810706 131637699 915175845 866745288 984100873 689480980 774584158 268407121 723899904 848579117 997593823 874377469 883052080 524340541 703646194 93531902 576627702 188899104 408604332 93032115 104887328 326091105 348402198 229411866 894964335 105613888 107925083 373946322 504984307 832008250 967861579 479355077 781501929 443766456 562723645 817310351 818463536 591091445 976628076 24412087 984303741 107784256 617171647 339791891 823669479 176012532 777316814 182957862 649651304 902463828 932936257 280206289 971202870 565321915 706876088 984309398 996099188 561135661 893196318 313164334 816805568 65248483 909142571 802488012 868589659 521995410 533133528 437113128 785433626 848862438 989068157 831718660 885316291 217740078 662382030 77442473 462511592 99833452 361634430 254364677 906306098 397731311 404939721 209553033 366650166 345576507 807628710 66884338 552029805 648207666 816340038 613582160 739180258 275344101 405770702 896536405 924440685 777826383 996572943 55749685 593804505 162018264 421488377 672512034 688883957 36619928 936142865 277741076 476201092 722916221 822136445 768106612 916583494 904370632 905487114 246239857 758346703 717500744 802458897 777733913 890162505 320301110 380315629 257873503 387425399 357601884 720830768 953537190 972617887 609710547 721613218 430239569 723585975 824642854 994624205 240670915 308292313 717347426 784051412 387877718 848372693 912997484 979296261 118701128 885947463 785586234 976432736 593861609 860791214 517037840 786854325 784924567 939526880 625894794 700479980 358364147 634006266 758358002 960071392 524784908 589989322 577710650 886974236 43344234 416811036 721437846 964751046 749086664 990525450 487300445 929641721 17634340 849358189 63156008 71234317 288312399 546307193 940411284 990818170 352662546 812196163 828553901 951614151 648980199 759881418 253774772 676283618 258791737 632734772 628293802 731973501 552358004 571616753 770310509 968752805 528349032 609056373 465036150 873557937 283281466 937421523 592836781 611888297 427107719 505309178 670114973 850923784 406796577 737598119 278083608 621689208 976835386 995239953 967275134 983531018 867754533 873696033 346403352 508502930 652498376 988499075 358403272 663223438 81797849 488471316 330295812 518232347 372796885 757268748 831902476 890392459 518230284 659764634 133247456 428389689 689517296 897593907 279477749 516565028 716891612 807700350 124435506 250909849 667920539 942386058 778637285 788250028 865584347 874605185 412295960 995199140 220208104 552194813 912046855 987141428 326540080 403344470 857453485 953096382 420342972 789442029 93793879 544377540 639049415 667702219 277102592 761209870 285534025 718577021 871227958 991077260 924910608 991592031 884036414 894886343 993227562 999268240 630294058 906380028 976462609 996902136 646018706 797928822 595578175 828264546 578682597 997574722 810156382 871715003 279804994 739202853 395773277 715239146 766690646 810738545 81871750 940005545 426284005 463326905 551333900 863956544 898363114 985085632 922598378 970523220 131321441 539324333 17213390 552878626 63192877 972431452 273020962 336612898 560854851 745109922 889915158 993674317 451435440 852054204 403058252 513370871 673380817 978822549 309678626 319188509 632987803 727523041 566253360 952857661 844971202 963495992 364179009 866613774 761910838 832998363 897148743 924837067 329910743 824626480 243187020 786986933 945872834 965624878 549667933 559447618 360450715 446691200 792277454 820925805 200285455 840695433 983814859 992338824 990543338 991927049 766741218 815518357 510176596 897591320 154269910 184376806 894002750 988547858 76933473 992157359 429146490 481373816 22375709 859615710 676545707 939137584 519491454 605341163 112734895 235583365 518009004 590982917 700979781 965287708 670811605 674989666 133895762 764351102 391984712 841522396 579915415 705587761 2457623 114611489 778167495 895209540 761275459 872460806 833321938 860332508 722036242 912922845 861752261 915121749 531687135 871180294 801923256 988431467 915575972 929145073 826786124 977821908 250546271 492814451 269212384 968671493 129586828 675621561 763682794 973112393 446667299 684368987 287536012 508987056 421827575 603772497 650305284 656232106 954733193 969832451 500633272 674216940 994778546 998838474 208160411 676183514 562508621 897884021 915170471 982852993 589083037 645458989 214896342 721429125 992056746 998064552 92264836 562083928 529294925 870954202 27416480 33750075 359263215 726224783 591579225 691292101 175747629 729558929 161769170 671968829 559516508 743464082 620310128 684351902 940377380 973220752 446097141 915280928 56533296 458487889 905421007 986116047 584609521 660574044 423945668 967258839 504624134 749934466 811065826 987275204 523777211 633911459 857280712 962876795 420691560 490675177 356377388 964642488 38546603 220663606 178287238 256668041 952684462 971509694 454268400 745883345 558868448 652028271 885777931 977177089 243897694 668562074 478054620 661976189 514188596 818034144 962461575 986369308 78610958 680957800 273998079 288422035 975506698 982226604 168610859 205924818 989143454 997461809 892247023 984997569 815815661 816995144 195313248 945224566 370907605 476462175 42760343 739657104 330990884 581775110 367018492 516911678 943196444 949341942 467825318 609754878 132387543 469506112 356704287 623450725 270089246 328374730 593311092 794152661 86767884 946026096 785288329 802240559 98408181 322971282 899886710 965164404 234778303 469624023 282932519 398588404 470241719 624834648 113665406 388479547 242989936 774807187 216125244 606715085 779642636 984013207 457071474 775247830 842868680 988172903 702684491 982203210 432157755 746058400 398447372 771257676 337645888 845448763 665863236 705142416 112597747 274023513 196898590 352391911 972222741 987690250 797664774 916621569 502851690 860920521 549144257 703269371 488286172 738809428 555897016 989414736 448900320 922717898 909691505 961003844 998415962 998530930 882320411 952429153 448692074 989421816 350613812 951059488 762470911 888126270 926806687 965098006 241740764 624005909 418181120 855105984 254224703 860217810 406080941 835784905 145464077 832050629 861893774 916653083 584371784 759686949 743955581 996085676 661943235 976546063 117767259 258965319 887889992 902969031 769867937 784526772 320807225 552134378 649004693 841144864 484465054 693408619 544606680 859631349 1420563 896259762 300242962 362487307 393449109 774883944 932821160 936376689 34030252 781440952 669400213 734253746 326034599 610036956 941366236 976082670 768745388 905238014 57249241 179346800 867941335 992530233 391139213 756835462 497770874 977540321 355459329 918746657 539062681 756191802 850103766 989210980 278927923 637195024 745565293 943003307 347349280 713849092 568444208 583780491 595900796 757679316 571524120 856150932 580753651 888654118 253382243 513824489 213358385 361244289 375050621 633215124 640409920 754410037 37452885 943660641 307668134 813163669 903052562 974922358 541044671 588453600 476059554 785022591 793612742 852979096 307548273 476659969 831804243 966652398 545585121 568667615 464679852 603125974 338759750 456763281 303669667 529771160 544053357 568871725 177766453 485597603 718482573 977929297 405795519 764924029 854509111 917138158 264311283 777127777 712842931 776519536 273192138 668138862 690318995 965785009 369808717 658425230 869529083 959986342 83101376 158326319 180376658 472559263 155357905 594284361 680218766 780361460 251357196 262114108 226243001 877552176 763535594 786243318 63991920 965639029 331062672 373244309 709979539 731789377 849953434 861160630 688203590 904694964 822349591 964458710 921226717 945112964 301570436 954766126 558712739 824325733 953084862 967530734 546348363 751492684 366990528 431817041 268408552 586448001 557521860 599083426 17769888 858320118 340668214 891217222 608080647 940227333 306965889 562336085 321152920 977472627 956247287 995590577 134065430 826268080 762724961 804102788 68935184 423271837 650975808 951240205 756613787 786019379 992992792 997350440 626199734 856046331 210533538 948098443 246410351 873990850 127234676 191722375 511248294 862160450 163310438 538684151 6076260 988888745 741804461 809661345 707476581 767334339 580671436 882474689 467220292 595163382 94413524 777081434 888682263 958214476 923954721 940016168 249649660 517333907 820549515 988353064 949051185 976381423 754130736 972502106 425901144 463010327 643625256 957997867 1979295 300703549 414502163 762228067 172391946 501812276 208306980 799695615 167728837 336928795 536790924 615123231 180696328 809207043 256075012 557521321 315354423 326117475 970166975 976322691 652814678 760235274 962085198 978007553 601323342 797755164 430113703 928035547 270750354 867033110 531259393 716874620 341957255 825686867 895900435 950689519 178778595 626274208 719754689 806161478 862443505 965536625 369036730 565742724 407937399 840254587 334278635 752849389 553037261 764834310 247108987 529123929 479967828 630651260 621289736 923308554 339793513 341835573 272309427 486904056 724806980 979206666 663184559 704520106 888021973 945385085 356396606 954237230 564757948 834548365 293746484 685701195 615253875 771184449 228299638 547148826 849589886 885826612 41408704 448179967 270676780 275514173 537583089 994633313 645652131 772454774 901608329 976221344 765627295 984157313 726407810 827139735 566559130 963160153 845934214 934350811 394789114 664603818 34621104 465852045 260578791 955639712 648454273 847080824 674687280 892490664 877420164 940846548 764453382 859877192 99487289 948118981 719978200 842417218 40143585 633337413 991127325 993221749 42946320 94915827 886757731 939986655 511565825 549465779 936091220 978885365 458148482 501050526 185937556 901934599 684790353 884924065 785084368 982522813 430340053 817709572 756069467 893544504 905073831 923342842 642198946 939060114 47286163 425656173 780983052 925799251 1441807 329593303 296750322 821242280 112167489 246674698 233753185 576473128 11944616 929961882 533064513 785810935 247752593 518085905 754720772 856149893 342411008 394218698 384366469 526725120 313839476 859062014 101866406 402062396 511318857 575612926 864909948 915379970 357466941 733540337 142115374 971534231 353834503 665750704 78907117 728346311 150416295 816774400 249352748 924635138 579385434 788288145 661492513 968481054 804507936 980540663 978884940 987396947 268189120 911961443 163641739 313071284 694850976 992223557 967232060 970524029 70787125 967934868 458442444 496403545 603807761 780050464 158669402 328480631 519191423 762183831 95895096 260241211 393586558 512637130 343557488 688609762 865924852 916037980 567989146 943517367 96428554 511605653 893858125 988548551 483434804 692614668 836986870 990496345 26784046 887140290 395324412 817917300 737144175 937405988 943752166 951927264 718215014 970569886 926613121 974369351 596484949 736558794 849980922 978468593 981423573 989638980 83330670 263717900 124340799 430557364 296669106 635717731 548373260 829652870 168345195 974517656 329906364 802849363 560806253 993577558 207344131 492312652 712219001 976886149 441355162 510109919 792314966 957068688 584998906 738905559 449945167 934879943 501207546 780964472 163074973 215830626 414829277 445689498 450268789 785128952 7092026 477475684 529970705 934832929 54728818 863968109 168064631 592915472 531934482 827262567 385641618 933179297 392106637 966283147 567011789 819011229 93603189 826108018 109300862 896038943 362539743 486788840 198872872 992613545 46701082 929586199 556203138 948343085 894490018 946550520 529616013 580884706 633158206 945665767 770716660 977816757 247731217 687787917 124466297 560334475 627211330 711395084 129947438 867119220 166579688 480681654 262696196 472493852 991965005 992156673 811194719 976676572 552327943 938631306 226642432 670876019 800484097 927051471 455420762 478059063 199374787 556045702 619974121 634976631 85193878 414006542 355577252 909549959 568430905 737176617 508404457 553751481 959240471 986644367 223151290 926186532 136550768 330049991 706622115 803158516 529168814 928790933 43850187 968021256 146639791 513045486 680539499 741921893 63803215 81636786 481098018 599048510 566013575 972990588 53984316 738759054 864809618 881085170 397739218 847361029 446771896 823491459 23342544 267942263 481395293 813791488 463176908 756905813 793431125 865481860 495431315 595152748 300754515 783033698 894822621 976954103 696062203 843666933 938075945 986761936 275405713 460454869 991911143 996804006 902074477 934940975 321298144 853212514 335282802 987928851 168342003 169958722 572151749 665215904 851953756 873413010 782825770 806023510 77355243 731275032 917002192 958789769 927874775 949449222 761498732 836718351 64248654 908284514 167028394 261405763 574056885 951197787 155560836 809482224 855177150 979695145 95952113 756388959 431966885 793997258 819079865 877512346 647870931 743705942 899532947 958567167 181674520 370046389 286563674 785627061 876762177 897773823 924551633 941232370 638857451 811887243 257115893 725643894 150701766 244293387 262102512 962703855 929221537 984998328 440917225 670479496 21166460 344801130 581764101 775271049 109398185 708636134 582684367 706783935 406597002 972537621 167563253 277738183 894269035 929076346 190067037 760525733 237402086 688159937 259549902 833537006 636615345 704629943 521703235 889258952 34505529 542618798 986317983 998325891 282808194 613690910 638906167 851651789 854344359 887595698 260236103 262940842 888683585 894729250 921729547 955162289 929275942 955216898 46447765 445923072 495749287 778970830 894558196 950124257 730503022 862645686 390011868 874238193 342515455 857690919 34964618 409764560 15773919 442315042 799591036 813061851 279539107 790956882 783265396 872486219 28786891 772606797 474327127 490898780 752322085 957177935 155455907 424309833 955675151 996174065 555724146 682388463 794254244 973544939 818030877 843251396 849066444 970157023 574474491 587266994 822416514 928224657 730501074 933254556 476312385 946463524 41236673 75315986 454911267 782080334 269236846 512814245 231158444 259326750 135213605 525496278 674184548 821287284 378879504 380256244 510866987 964805803 415061875 456833799 860725474 871785223 649731029 693805616 64248252 746978947 256543684 426994350 426365889 991318459 90394371 849829709 834648589 992695272 986804837 995080983 711247716 910464325 585295862 623953295 954602380 959975177 371668052 958199434 726303358 806194853 36114776 265442705 596957102 715466363 312123416 779052180 680398440 818216856 554561797 956177812 579593191 782908467 116056202 980101002 499309207 896305489 599323511 807411251 841559194 911894808 98466360 881005311 387386471 539739213 450190316 875450607 587081560 849560331 726929963 774675167 958255087 982980773 723951992 791614562 841562496 879226646 802504198 883458048 851553497 923561096 365392464 612338213 264410671 731867419 326087649 605283418 431587343 928344989 424944395 690314179 440692464 512861320 981068302 993438163 553326094 812243684 476608488 723597033 13351668 645031847 117631621 876545669 989136458 993794279 266549114 986557623 513321160 980005365 68249561 845456457 820848954 917781534 15134348 908501276 837334805 968531977 272452531 340341425 514146456 684280417 361264760 717063728 653757840 709311851 55528672 749909589 287256779 882481016 514602780 971260382 381813533 753810178 703844005 922579305 564930065 971527658 171796075 272991378 366165097 512861452 935904253 946493089 356729536 858544817 32823574 817574234 629251023 661404675 948256235 986444674 963380923 981285009 111333004 828199955 586627918 835783480 407317903 518764940 913751069 993522271 383364822 450111334 709821263 745106876 562929827 608179984 173703684 425136234 781869819 960735727 74936514 164371333 906220056 917930037 399298904 512422195 898403854 932332707 114019776 751055808 717029853 972332291 679471712 876792354 640320292 678249419 55218273 112877208 553205096 744310398 569606870 757493033 947154004 978661467 602985706 987328894 61715605 634746330 584114198 839326266 84263323 486219770 38526155 182736922 546751393 967328745 119399273 664659982 3752168 706518799 369201277 431952346 41609764 211732609 406356237 538657064 467458321 970090940 797214481 924010348 624889539 685356523 598399853 822561633 850589500 881251030 575040773 935273071 293326551 905573049 916446536 924965395 661067358 987905285 179462919 226777236 802877473 819177827 698068975 884110090 207117172 949739093 133357265 959416045 956714965 967734692 880172748 962620533 877873518 977090564 448107598 751462080 313830980 833599970 199946053 945938852 735723439 802910899 341805770 582785332 782749522 863243607 745076535 986029983 314296217 852555200 92796137 283872515 750970283 910461999 592317947 721720297 91028351 286416438 658342901 850005612 765717094 912758516 809947474 879402293 846453173 868139999 962466522 970461794 916488753 917962064 185140747 803658231 694340178 938977460 251206630 865637829 342015703 672513023 620029929 801056787 552322426 737510767 518733413 911066167 804298930 823521858 223481725 588721822 414388362 638334215 515469662 984222372 547220607 630330129 550117113 615736618 192714775 706556780 139919140 334475509 927747761 988478712 324415658 876456875 44930779 471270827 743827157 997121165 449820922 598446927 37544835 809727282 975286950 993526490 735158345 750466897 588090383 954373290 58794946 218814751 512388060 681691090 822412087 899799908 753067341 872185734 424165964 841201272 274089958 299417459 141449292 213730144 181626261 352988246 197788697 762059043 212326803 515636041 682126714 965673853 23624663 739410209 791634062 939404728 767152712 847741153 72833200 131413217 888000663 998160265 599960271 675850748 434579534 969073536 991585 60023823 198407756 254597462 617173064 636822587 996988542 999213911 407087660 644581025 616948281 886987684 52659061 885280291 656052248 775260005 811295754 874125690 325067836 328740931 969759778 977128428 259749334 869723318 164625825 251495423 471113617 483920260 90336967 107594831 155813698 329802206 247029976 433291323 832354563 941287926 452320762 511672403 935115198 951962212 979704948 985882981 565100587 885972990 884465879 919875246 23420026 363612964 131561419 369376141 586317453 870887447 482797490 595985068 683783910 949215467 426774338 774709651 954001441 958954776 801547003 916634159 82454134 418839160 505993752 842056127 821576287 823318582 975231133 997716854 239846502 890449036 768168404 968033873 155127495 911441479 505978448 948396771 125075760 321082438 852778303 983385672 323991189 815402121 192366122 577272835 669347349 866575205 371121392 920730831 274662132 725904107 808174200 830818318 234954656 939643469 914627905 956235553 466568210 635437788 422023598 977156400 166276963 240597915 213288552 850546883 177497085 991174077 270049148 913085027 753164522 827515406 380167097 421572885 618064618 657223626 212008304 265250404 335702063 501095118 956140695 958303228 424793162 858251628 509885212 528430374 647973419 736386401 483863404 791860966 712185938 827499721 784464232 809564515 399054699 650172600 148422982 724247904 522883219 601144296 549524946 830256360 180935963 924819736 41398196 768817371 774718424 846378812 467831514 907019302 90395074 128059099 163237164 469623725 62840342 446472106 794530593 957566477 757107195 758617417 973702509 982268075 986283285 993232263 193887979 243823529 769125261 833018082 640762560 917238877 544082581 919158281 6898921 73325647 719599351 831939372 644121799 648499369 404744601 532990392 467761205 591522152 401223224 835734912 149133542 918222371 986694923 990101010 613420065 777472185 92397976 985437516 683539730 779458232 423001426 614333528 716389519 872602691 626129098 833192101 110714917 256351503 637823864 884563902 401478020 490482850 742848274 874551496 21072774 174179601 826492007 860812168 80639777 925190715 879663816 951842095 416136434 798430567 130889033 526729541 118102629 894343671 273634575 701177926 715512686 977718009 345452700 420459820 294798308 810507293 740837732 775477434 946349829 953729965 12001524 278538109 875434056 949489839 689648688 854376746 39547757 920146486 325814226 348877363 415912825 799037873 876348721 976847655 955343804 966056700 323659899 789923091 425607526 728480028 387823835 961687693 290982591 545472769 988111870 998588696 643040131 650674428 218756896 427372959 872448606 914124920 192080877 443381035 647956635 697159752 250787247 293249309 144760980 688561214 875921228 970794390 912924805 954789831 596384500 623402195 926142473 942972538 739341798 877440940 65416093 130709126 441236918 661632610 4000393 915724017 894938154 947510560 901115640 967139192 358801983 369715885 977094039 991296297 132108887 767786655 436532207 902308756 412426358 987907354 1929157 277901052 647794573 713704693 567525445 965216109 446464976 607011134 453386253 716116964 642009225 905550895 7151790 453087578 263825851 962538518 240821095 602580482 197750825 632942118 165358921 992533166 730527926 878690188 980567985 985189741 359363834 843478238 324035300 507887652 920888674 996336901 197546934 586984676 30590073 201780122 611935733 640221582 792334187 896177447 497876904 939854301 335443083 617920534 735141 541678325 258431193 285345470 212027763 994480003 944089289 993885168 715774453 887149063 371308713 832933634 156628087 470979420 733331760 920526869 260425813 650898854 170877127 696940710 621394990 701189324 445844423 775332642 723758063 996323712 724144209 866396626 302963082 895130400 407608038 432877159 251369774 354823049 200163837 750293673 93030847 96334706 84010956 324503465 544016755 585036182 141695853 886280598 400599037 481993568 88789655 746391265 870603668 947751194 164363770 445075283 367892638 881502320 644941003 951071985 301341658 481289850 856537221 904381157 406701459 655367286 18004581 708217623 340221782 767443974 947332735 980241776 830902732 895942043 650128454 911563750 135595124 756867437 545390067 832167462 511002089 887853573 554677604 786075652 573348224 663290809 128496389 143225942 280355888 367989773 479907911 576710934 138600541 490377265 358906937 377957363 452356468 845529168 462143766 597534772 3357932 665991861 409356553 510543765 776022836 788549655 154491740 722916493 674996493 944744325 377069263 836960281 48858835 922148960 995748387 997802210 145279162 742223036 613600713 803882279 847164232 978073395 931706393 971363968 84277819 621141278 552748611 739806307 711863913 790685811 997064760 998566395 37935618 891194204 947267224 970276123 396577312 533576702 103335791 672506912 409854599 887146559 492463528 910037154 70215405 442701319 175546429 553810096 767853102 999050450 175031782 209102346 746849212 838993721 170894014 594301642 679881714 735751040 389001167 403264960 561327409 613511101 844502167 874795248 863284794 919791933 227614211 373559235 534243050 875589404 938329877 950685318 979937299 995006158 303917981 947608294 360299369 452523022 428835880 951273579 310738551 929032328 557268538 861487444 416147391 514652816 897738957 901342333 737594645 979409591 999285695 999372239 141766019 773626064 482834776 667280314 742940619 862611075 717524177 973795391 323392430 796177510 817100892 849885575 797801745 866342543 471241034 931306187 870172915 932524764 148663931 356781856 608344073 678495972 219888387 446818969 950061333 977262867 15705682 586007720 168350782 699832405 646594845 976413559 172230678 521998589 964618937 982525694 908160681 925905166 830636586 841526694 412081157 764055353 339741764 563207304 919835200 956390540 620011234 628174948 222379351 372720915 592897943 809621329 857487630 933473662 676387222 888202547 452547509 755076896 320282597 325541805 722049580 876531545 831596215 844903034 404902009 642703593 640440208 888451474 916915688 938940778 306051349 582722432 965315543 996668499 425634125 443742965 70435558 613339289 853631619 932411456 676014316 983985883 514743477 855671205 687791972 923396394 734796077 815665783 164552649 419106301 295134672 553235206 218720975 418499215 757662172 983493723 234875390 440922665 160558010 756410426 192639240 770054710 820381133 977658013 528333839 649051531 465515830 928597613 904510210 963937668 13361322 341209637 816452007 903746684 199512039 461515429 129545621 650678763 801411477 933051522 325957803 698023334 480665797 967464394 548716381 984750328 991881932 997157063 206318601 729394299 340354360 395133397 789819740 979990439 982364321 992818457 594567989 882696490 397446431 520856832 729225411 925495108 605084205 667904635 714660847 917353512 135767457 334410613 39734108 194137866 399568479 941458620 18800945 376892099 623821319 825586305 227818040 238999084 382713146 543782802 709590170 928112581 525522585 562364359 601035451 985421656 189826833 716271527 88022557 612274106 758021930 945509474 279539642 336255101 645321068 799812447 873091896 972372593 470807896 941294033 362783012 396202513 270323411 422911976 975275491 983690784 39209135 634679971 720760116 970973989 627603656 662123023 559955370 614191829 593686522 775468729 623308259 650897607 833011188 923293131 271896926 628199975 983034895 985464860 530027620 723696674 279722935 508808813 873477592 894092525 387835191 455330672 71760071 151346467 919020362 963312970 343400148 530339851 437558843 446674876 953003156 970996819 290616369 787852217 426707411 775662395 271359036 467912798 844831674 878892986 453824761 614710506 333791885 849982729 799686905 930733497 758790867 818475540 218049700 438458154 949304106 983875653 532115799 996684165 627613334 888228001 469566718 915377478 72506385 627518192 565641965 863604432 547085442 671509307 820407006 995919891 785968919 825263418 789062882 886395391 975985311 990516506 217340143 785993018 45141628 550012062 208531034 296098073 943746777 951298298 447207655 480196724 614309026 922393841 879344930 993263361 655998846 819051318 699387749 845736395 216278717 217728407 204590872 314515184 418004562 760247159 72748238 682544882 960744636 980428279 185833490 426574619 421301292 779661298 606285493 776874137 773960255 895176612 657663816 913111883 565198939 776139532 198404074 612973370 947899034 971059869 89002875 873307962 385085162 674343196 307166333 952301606 170785715 584162877 112455847 611890388 768055624 785458344 839123632 950128572 963041986 973565628 876483896 907041884 283039128 520622291 537891674 749247107 924893613 951840126 789518010 837841910 540206283 653664601 315389618 619080037 820980535 999283024 118447087 434957379 217252379 525008682 896320625 923701656 169958773 814011228 831068955 987593081 722936883 842600501 858065106 941682144 859754811 989752420 267559768 780455089 540966427 938445673 748630036 900657680 792446133 794658079 472185907 505710406 917825086 972632672 992506066 998571432 53030790 789071900 301950365 838467168 175272778 381939304 339387092 579705152 326048888 343675901 404294590 900408417 707941070 853070701 549990284 853933227 563436923 737784888 500695279 884679523 540958458 692717688 760563822 886369158 940793084 990294774 418702992 438301649 891148257 995010534 291887300 481216252 815950974 864022854 610174413 938867487 411135566 646099623 596348528 923202729 588805521 706973560 599124823 628645043 483682722 515185525 133566174 939676345 842522521 905590470 774288520 910237539 127065315 809245730 363724824 814331351 749650016 960439880 602495666 934588070 563195493 983803458 771787102 772078400 384760542 901182739 350009458 654204384 130578754 632832805 69259984 237567581 975963513 987541694 444316141 948142591 358632682 838599628 151391918 665796896 943625772 985489730 955029052 957555884 135771448 721588729 690359726 880890854 568794935 964108037 158120454 461877604 875939862 996623261 107120345 148648792 771730373 984799132 191334298 932699726 622940114 785138941 989483837 995928189 751221390 773059587 37071046 406098049 365140349 812016675 760740416 781264759 415492755 697790084 509973631 683261612 528520751 836385833 925781536 949350900 272980475 796410357 820857633 957197626 43265442 164302923 700570760 783142671 801772323 937219973 517576569 529491159 873667703 879838881 193641675 825864294 882271437 896267090 82650712 309092326 470613703 641620228 612784258 699274635 853183749 990228531 901085638 992632678 822031500 831287801 439623044 479479685 401066015 627996831 861402145 943115845 865559557 932482496 995892420 999145228 659314045 789644630 638489707 745801796 998177498 998851260 250813203 667272328 39070216 943061433 659518007 944565692 145922699 581224607 923976771 947849350 657745303 802444694 550127293 763476823 907790389 957105944 88592950 144807801 763154576 837600663 237575504 620073497 978921424 990420761 365087287 842987126 955181773 982054071 654820748 847636065 43429373 892204256 14285154 257767989 489993229 510437104 674598541 763632128 580323098 732979790 579433612 653089431 34224324 250182426 141694251 248730908 226011642 502069350 253014221 792055419 573788167 947310799 392753985 419621920 6087927 515282032 350624499 540412702 67537737 337493251 21185879 143719330 655173515 870930738 585550654 638017982 853900081 921954995 400155729 709055544 119686194 735669391 36239733 248494139 73193802 683994819 697914449 722011725 580428120 650708264 359271738 647264848 318097844 487588069 844619456 978227982 898423169 942243678 474563021 833096226 896375313 920639891 318881278 698625084 844290734 918860573 841761229 916152762 325237424 977926658 350586294 873147256 288941700 627137742 871825076 968387058 758326721 939238547 385072786 894943235 518202914 530561688 930599200 957628247 396878156 937432763 569865471 773155338 913129858 933036454 747690577 863716530 747046375 852838252 761005577 973769207 798197670 953057705 112871577 648740580 508612861 881617166 828156248 989271926 752634062 854685691 23535700 838016181 468609806 692051744 46938018 545873709 870905418 955921620 350014615 989969686 274408786 948959034 359522449 884844189 364078976 480364403 292952570 528936422 778780455 913404999 964433687 966738518 957537863 959868373 64667064 795806192 404796043 602625929 350632075 921587246 269726500 725364515 234803724 376741566 192094529 611479882 662795883 724501283 368483308 763787306 118861286 200084558 800468097 999117741 929632628 986435832 691945272 858812185 981524293 985814161 628040138 643643683 384818070 734135500 166938027 859520363 849453022 954132346 434901786 852693722 956957930 978132573 341781392 716772659 355862210 767695445 548185612 772388564 496589485 606507410 220148228 997992169 543984974 595145686 535205130 955694314 465154852 726431984 964456776 998469181 616075424 833095809 139115645 549098574 481208528 564423358 559437000 942702624 459063342 506557668 31672000 761334979 425251023 699049770 169086942 492623052 834918972 956718285 642325970 736718912 265255791 702887992 253734910 931496549 272585658 341505805 167270238 693012716 353147505 397240293 233155195 392404827 599419284 715772898 178821115 317876386 655914160 972018426 843026358 979771104 818355352 933176470 93977146 439057648 337166767 996457014 988632480 998634514 223241859 484911757 411323588 625365247 430999358 749389124 851351481 898573006 62837080 882005897 18819355 612042554 433468487 953377981 525234646 543720410 551063248 668392040 540240223 746946466 374804934 661495186 377762652 584382776 402434004 508913237 809353452 930173195 577033721 972413553 663949404 822533791 754895452 957481146 843760212 988823004 761176999 961368019 834499627 846329500 935881654 938200267 239264463 458511877 168275306 918970485 664415940 889566129 343092086 358609781 405405777 855061948 666391422 667280129 950136068 977149563 538980937 598009932 984819450 986656357 705403963 971277737 744804016 936245077 675148993 899576192 863541207 871713698 264397487 437454297 514757780 903242705 479676021 815958511 324672842 904069994 323818658 816313062 397302 479464169 877717809 904057753 660190352 665109149 720262128 849875798 22480044 996051139 605610494 607659322 297978891 818278420 787471082 897931620 711677974 972416108 998115517 998205334 610733645 995002452 63929818 199729047 885845799 979843907 43857650 126996939 837198479 854043669 615944855 720513731 799605256 912484175 983520364 983940319 732841860 785604018 297198492 861511201 16849611 791402962 860098515 985562485 382325755 788867473 832197537 883133994 748672783 850345517 812836384 998396383 831012429 863961800 415391240 497357506 390154895 543451424 167859804 965438267 406862297 593183798 30841610 667482371 947398286 949624704 562954812 936993001 312814141 658406226 873513089 876348444 84665188 464071676 632872441 719500411 284994555 892371752 171186912 473812333 240468067 284012454 814049917 831236256 674806833 872345651 170186071 541517805 711252461 981341818 929244694 964500202 81662751 671010240 778463306 935250100 401675352 832539651 134639544 750987145 79251087 795218162 997551519 997698955 541030496 549268436 404677708 902524933 966060742 979068968 440631251 844157649 530438614 953803398 424305351 980418766 222177149 881412060 375922074 869740584 949291922 982163071 448523131 707446402 792313385 815342352 499569203 833254458 520569260 764839277 134347506 196832397 204349873 365733297 829718114 973075864 606001073 716647287 336263709 885491609 456939732 501474495 724984373 728535957 463837448 803230159 226854081 876432562 449459987 661815403 980129537 994757399 768590477 884588019 283763311 689188074 626976396 774323780 642847088 998102189 492009152 699630915 673377117 686987328 840613208 990499104 167635636 971177344 520485949 829489750 392653080 524007236 212374512 904947244 497324474 590749286 112261719 137290281 599970149 710814031 974406427 998682695 464916309 650180229 704931795 805001124 290732710 537515469 128822284 845987356 765974226 909104599 123596607 466355048 98470885 700400145 88803622 98851091 534792738 538912498 667374981 869204801 39132281 257589229 810129076 923939556 872345458 955151675 354166961 584434622 250434841 582477207 675776641 697199361 504908254 723323275 59602042 558239461 897381619 966624578 862155218 946009910 449235291 635073227 636067671 887958216 55815599 124902672 770847790 883653414 413847841 940589469 895580026 935435307 305863055 711567055 294339527 438504758 862033882 931662096 956741046 979367144 982504354 996207723 899020027 924761045 643687261 886157399 112908097 349224794 376120657 779414214 893110729 971560866 410983257 998783268 442958844 674631711 285327205 657353500 531321588 594175834 371901410 398635701 388447395 764794350 612113761 694776294 968017994 989055342 294260203 982435591 10087503 957533912 469387853 498421845 226515668 290709583 424600185 450150654 866915814 888880515 992772938 996454929 504652907 890503162 878452115 994220494 287446600 370125850 560270616 743778673 157428757 413226950 540559230 641023813 344066208 947664323 324730241 901951939 82538670 800080770 888480745 949407792 548459360 896652253 832550531 857586684 476790911 895557985 18576834 789392321 578390285 675761745 599585933 763067639 246300732 785855903 913804398 919028431 874829490 882959798 640766046 687294460 235235986 814522071 659048698 818597433 744913805 947360456 460593880 470273716 318677623 370644604 416630194 499182887 223823230 470902973 142024447 773301827 168358923 380540666 193401267 868283130 608313830 780924770 397352422 698856782 931334403 973412357 586775826 743786950 547169724 966906596 217360381 509382826 191193961 795973544 453341217 578324939 418231370 895965283 888134289 971559975 609449918 660695082 367766451 872628517 733653976 811145025 454205894 846314084 826345286 886498053 941589386 944958268 756958004 923186284 473640167 788067243 382389328 423118320 106366752 151077387 936926473 945610845 247622762 931882456 369704144 506244765 222389991 938343631 16604450 302799029 562004973 987487388 383648532 936326252 49784877 825227271 902950888 966650587 96258100 331691350 711307680 779864626 551983353 684795331 705580621 907803033 516405670 800690575 446297427 938734605 385817239 572085272 278650239 314115151 726879347 813075407 248321409 535685403 458921236 700725249 938826921 975833190 896125360 967734950 117424183 356448960 988661715 997969172 29977613 564563480 156594887 448822899 25556038 694253861 188909406 361577305 863097895 880961358 847811912 977609227 469869217 701334880 798857751 980226700 835954721 959276407 284112961 571076527 670714224 986369554 456909539 692968831 436186076 970349210 838684799 868741863 67346263 310361891 905889863 911640237 391692906 575570013 40586056 834419544 523587402 844079068 936069188 957980738 951405924 983981522 318677912 759150456 515579291 963172168 98319462 160763538 455446182 806037216 63368621 918676129 922764673 930037977 989869941 994476450 700535724 732074136 853371091 921394275 643312234 812532060 943742203 945663476 253628137 558600916 734467629 806307905 208525153 552549571 343673360 676108082 583289253 992896472 959630905 994124542 885814308 919768457 269550726 725112560 147603355 582088727 939743338 981893063 748645155 802038923 604996008 624264402 479976622 947481194 245806233 530240941 878341412 929093561 823086733 866514373 831085220 908322326 16217644 733171940 461249404 659744120 329064918 825036524 777148791 838906638 711521499 871117180 142025326 645767265 358232146 537093777 143202025 603607056 951673188 955921856 634771201 940614375 56115553 150671242 189332931 289361523 473993151 488801748 820772004 992209718 46019068 175638973 933168542 934887604 606097746 850945498 909667593 937217205 237833934 685493093 187277780 190645268 659823759 921466453 25701452 759787006 647776141 851418717 447197678 980528220 139749779 830830826 31147385 936197657 961253588 994224661 897162671 972356306 648337102 806496520 664843033 713177790 905032454 942030950 860270132 909664759 306996695 724388902 871794079 959394020 694247470 943227182 823176186 959923764 435760789 599364141 460289929 646170052 37983340 481043187 708940311 815828659 919240046 973214684 671720371 784121176 893051033 932040570 25367113 150390901 403463085 948667629 574365261 867289569 366668973 940679778 304509249 768750823 458755830 630551689 836712136 874644326 484503953 765418376 30959070 44485851 335443672 377078680 407771500 834093025 15832093 562607155 984828857 987431950 338067599 343039324 260804705 288972572 374796082 975923707 85677867 655841915 653432022 893097829 966087599 985746830 790666039 875549669 818790787 881688019 674658492 988014730 705383552 706919548 953868408 987010913 805986421 806305846 984076090 985338044 779367340 851495053 742401416 760265553 889244493 903587723 968254867 984707276 66315384 802706502 456620687 837240275 740496114 825231703 554724158 600837890 967984110 968496386 893694871 949144840 336304065 909758100 492308459 888449728 412566548 989380675 94270479 834632276 387812464 748123535 456092246 762074247 949131185 966527281 841635678 937435195 465005142 754903692 950239307 980941435 518079327 798944499 419549564 627113166 817360256 949754893 861408452 958443452 472989946 856408177 506858106 675427007 984795590 985307967 832495705 882937602 984980216 998373421 403437116 566104269 716117908 940939442 707430602 896238401 707274059 792759619 228085174 600356908 915225725 992430048 92779494 389000484 703300369 708229205 867110728 987348531 634837988 746624923 155692787 344904503 71678025 596196216 350853789 504658510 451925775 993774991 874988839 912299438 526297746 649568606 380753398 407591370 378324965 534247163 862133247 926771384 482786072 966561198 504531554 741668809 539576100 976700214 250003589 451436812 288333195 829104139 651068019 847416680 389117928 986917411 501152312 799455890 677158717 927289032 671625919 843600997 153927355 700615910 628721863 827159705 622437720 682762435 651391710 909772216 913345271 956331190 872749977 895278212 441704468 961278672 77644617 563282385 75196919 864685841 809763892 883464175 860680308 987011493 442718055 901629344 324753080 911848744 446193824 705859062 63799457 783170443 601766139 950501390 368996451 734204033 689815799 870074063 889875993 975062827 710526787 724033376 732346215 963219095 891564115 982929349 810415706 913247052 651442665 888271651 347291887 444753518 441013911 840701712 253998803 361606586 166184192 456620690 607300483 651881268 586761940 860697364 820052777 924889905 221877065 576875177 962503978 995714525 479789318 794181973 83361922 369074506 277291079 614329583 320141448 553577291 182130054 579524264 584519085 936514361 329228958 414795353 915548164 997746538 788627050 863980938 263866085 626101673 264230727 749081496 268841835 717384047 100159663 444678012 163384705 936681437 195324412 765613878 173493746 581318840 310642826 796837774 412655031 922886066 732806309 921281865 756735383 875951655 834449985 887457046 977720704 985264101 360986964 884771923 751990366 930336586 573827930 899030370 47582154 314841936 383355738 971468012 118209190 704303785 652831538 885273597 599475108 829847776 355399131 782592867 481518555 858377636 847278581 963381559 70682403 815857657 737135144 999215366 68662096 575854005 800865738 965134559 657579515 984594170 91796731 233032003 575822327 797373835 343813787 444473368 180031921 666437209 771622905 837279469 415961781 707811378 743428036 979904558 702866843 980127785 424074780 555057135 465724945 493629936 651698902 789225877 533695418 895487957 350150714 787820403 9593101 98505293 919683107 949687474 562346821 907991744 179430502 609358728 998161487 998983720 279300674 995334158 362379625 651434110 455667539 729174696 841137766 971329544 670648882 708559671 428645558 966383061 335427507 762940249 520822298 996348452 561891529 674157045 721146552 764575048 867949827 962781864 91491409 870617943 909051958 953338686 860225317 885851705 596608272 743915858 858043395 969006716 223170314 731382292 744176692 879160747 234496886 546614939 558251918 860036783 886611402 948701843 680087589 718021990 812326567 848820216 302765364 838380173 275083338 745459357 729034488 947056724 536335508 977321867 296168797 848395587 927533683 987777583 380553825 855675418 178173788 654456805 376275006 922608893 825758363 995532464 36891387 177257032 368319351 636023497 744026973 818478962 973259624 984971076 760729898 826384493 89605698 387694591 165557041 456813754 980204657 996014770 275530572 823840478 643398806 787891926 594969707 819531791 269037308 482867363 917635871 944510454 773723263 956989367 816410949 907983504 685120034 910475788 205311181 709750939 70485619 528095544 630209438 914954559 802276939 847710554 205950134 594204838 90117886 169568844 542011742 981686327 60065973 300986864 110556307 706589790 193128838 246685896 45315438 315183457 369989642 528416704 540897515 770781299 120594177 835762843 715692081 974597226 11643007 986658440 986753653 987809442 200798249 336273254 157797167 178634828 474815810 934402339 72535833 160066335 819111718 966862439 383247583 385141882 449413695 660235585 36846282 407574444 370292925 457315502 969471100 987732233 824686332 868653161 614312910 971576261 431378888 940832167 823289817 907664852 766487531 942610904 270054198 671901419 337798049 457997217 301428159 630269182 212628463 804999379 877411360 995029150 579389358 788852006 627129131 833937091 477606513 856891603 239599809 469595213 324124880 579475754 734314041 752172617 522860223 965118427 273746451 446981068 72729581 143427728 15926418 603187078 927868920 936473940 439271208 886752951 518683939 749999932 192887689 440078743 989153487 990535965 197731917 782484494 854252633 949886998 249689981 715678995 529549208 734389503 229173792 265713321 539715865 788582412 873556539 889854131 445305354 582499298 237483789 572884447 158626226 369974855 423668967 531985108 295140575 463274298 41758765 171402607 985770953 994188935 710498488 834703087 731428241 893599842 294707232 734826401 751721443 943755581 466206167 788874647 513279305 788945141 880347432 935886181 685573156 884644521 929337031 943930277 449443873 812589553 30644571 307433935 824491110 845844032 980158915 988813423 501859246 566575686 636954402 967221692 935601406 974577114 767802410 982883415 253515297 715994136 586532725 789394404 14520818 74716899 280222080 506476721 100419807 136001075 48516930 827818899 733878978 932690345 118757274 469765207 7510810 212979754 8583520 351655333 823326052 838580538 868037597 996633112 128252716 966491336 383455139 613630875 225724649 230312159 492876459 594232582 921305260 958582823 273759964 521464779 92055446 555212222 475512276 756154471 995200519 996962820 907846864 995934259 295130863 396948261 990688333 992620763 733665067 978877600 124859961 356401627 928910498 950938697 11600207 586904977 908644081 969819570 819722381 998838621 510655386 820003433 343746628 523155261 634979811 994925809 542605625 921566110 886551337 916996849 428882311 544763686 899096106 942853358 683209280 852791169 624866022 625775078 68420403 744617584 607310529 642174447 189839088 495040759 500144663 818755903 313752120 842061084 279431103 917306518 31245175 714969916 81417468 387363770 331074470 963860010 717697894 905723012 353889327 986099496 488864076 748330608 502967504 571944506 666304134 752600439 145400561 152073742 656860303 789886113 458992784 796299813 17277104 88708290 347427414 759061782 427408797 553252935 166826333 653437869 516828892 787979883 835908516 920875356 775569640 779811499 199102431 764311835 191133486 201258403 466683204 754638891 888470871 972428313 605435486 901858016 878102058 891012928 828205204 932413422 889073271 916816760 829588533 956815342 539842279 967621301 202458706 465118402 495875107 708159517 862555826 931744999 669077094 791200917 288855313 398137173 558506714 942027643 181362118 575818035 411053956 499774697 435917547 473557278 258851756 914774160 323148834 369037871 838299471 869031033 443714210 456458260 857782567 864980322 460750601 479945775 894750710 898139991 807295964 827181360 408804194 634951388 327259284 619424046 627216043 964910760 477960254 610102686 153684246 303710147 756720941 913853945 670686221 712827664 742044416 870148767 560864375 674896113 292457212 493024488 643790428 745533022 258565505 552161617 961624587 976305205 14063693 223705085 538307641 978646772 344355751 504792317 29423031 796446952 864961112 913489159 367361986 594638748 615220531 971499364 327070108 828863071 432587777 972854011 658427422 882964400 943794627 963426514 178473086 988308725 372930054 526002578 238670836 683282531 456696134 926702020 850597449 929496244 768214192 820202549 302986485 489723371 48610840 218876240 875873442 923586197 806064090 904043718 75417333 587604043 528690155 843703314 976510183 979898923 148037649 387985157 899926730 927515495 25607533 445784302 378085739 805028348 489785386 523503984 782540687 997054894 607019330 782843312 448751982 553797510 964737254 969519210 775428147 897378246 791099979 930364267 810800907 908817859 56425679 667034689 595468109 908432565 782851479 918708663 229045060 541212241 998221477 998962796 358424991 899001608 65442145 684321468 560203372 960734227 362063645 829007462 479326110 548043790 426806728 625377699 800720151 806660895 372592329 508595363 786485852 941008121 131398092 789512177 523665894 687985909 228878886 833423182 689555528 874145980 203862774 218009120 797115557 865906762 767471937 830926133 180290291 199518416 471006925 941232650 575321435 668924828 814821709 873823216 141598458 197532490 565508577 835349297 834140158 886961568 601334910 602871935 7742248 79060144 789082158 915259051 672444953 792802928 686923910 938390652 954447363 962128460 628548813 809176508 390732120 856314527 453980008 974342172 429672785 461429696 402974213 858164037 370562831 665799498 442354375 859031091 386877080 892542496 503408472 702158297 127552266 774662069 255002608 837582997 437709509 614413899 552646188 735932322 377929396 642389234 810132694 839625519 153868150 946293798 828033532 959896148 979662960 981410333 403139042 596825708 896544944 938079375 454197914 566966424 573351648 870425707 897056647 930054290 982294353 985826060 207154998 971846899 97088188 108852724 547133651 957585367 186971061 233958531 650962020 780769774 188025066 939702835 866587562 885672718 482029920 550856842 473785304 648403838 133507307 761150024 697434846 863960143 792025342 932371505 343472590 419281314 307778017 822732588 950793460 999141494 715632307 924548395 410709553 669642647 142802010 340180171 458648184 929060170 265866782 793458280 464366255 893280930 492540957 597126458 486110243 515443815 668815071 867014835 373266415 589626808 789093785 924112408 335531266 728576766 377725305 943992736 248638846 513361803 954057934 975821000 810361691 810569204 550456459 723659704 669808512 982734465 912801001 928202479 431739399 775749459 379286912 714866942 500387063 621767218 209205091 460545626 193938160 328182438 509201088 683359206 355270192 390509564 969659974 985380463 876385314 915393719 617526938 825314899 753848157 861531585 437451399 524396267 244869016 610172508 605891256 651636784 360996226 691212365 271514396 572427794 492995621 796430833 906811534 972330152 514005489 877490446 753119879 790739178 211600038 864632003 764156117 841488696 380419083 728315385 13262841 479926677 622205943 698043289 964877031 979438919 260418339 277133482 267188277 793512398 761077092 816552060 670041723 763984999 727663552 884329988 326156080 367223371 33284609 563650643 954674682 955234904 161576090 747372921 441121917 481210427 911584776 935027651 374525622 732968058 985919246 991003277 482901013 494234076 356493247 789776526 371124394 453900013 214705424 653365982 487305653 781849862 280893883 306649385 101835049 215896688 854415419 887583573 45457334 175791108 881885313 959418612 910829853 918028640 335630850 526783138 612848365 903245139 426727979 514708216 708447135 970578509 772642983 810925526 143901486 157897169 578535090 940570477 214124746 344984883 328490723 800624604 49870009 339080086 218028149 893378709 443911758 864494894 772018007 783117670 197885402 538942124 903516275 967186389 551224413 972095447 638820823 936739513 733085951 835045321 9381307 255969131 150060305 620255025 888218589 995208066 469955299 600945097 254284656 664630247 890067301 924713675 701505727 997849664 671752444 999052408 892282176 916458854 866221848 883678487 472540920 603315952 146949589 737148560 17632676 36221348 319490399 712860513 863087897 980198047 222236304 487907606 250439225 735476757 218865387 699214426 607562496 969658958 18541480 696396224 593574863 940719976 187728527 249480137 983481916 989466106 949039706 997947360 356010086 514673853 80537311 471655562 987488383 997908677 116373686 430851117 642297936 826092298 251381462 416811803 871278378 888253075 258323719 511675468 684255796 956230439 243969455 430064942 575161550 817319551 811466081 825762371 739357395 865630655 242593260 303846907 295091563 692510014 641167341 864821487 972887474 995963905 509834710 757909596 564526226 582078924 667674976 791006704 722169323 766465627 506028341 627607744 903747878 943605258 419411908 817886375 630955743 921596941 998388552 998448805 525586840 756102747 152537422 794137226 849229190 914975388 586460077 711816132 918689251 962269132 18558640 757868449 496981198 534133593 714657509 733245919 150599494 830787582 592778843 914108738 579591348 691921508 502095727 983265821 137382491 309010489 632537893 849262093 840186362 842879021 620912793 802804590 864257887 995824370 637328863 715449044 637162228 969088365 433736559 952092988 873646942 893622307 162641985 704152744 931049278 963908313 229071323 759876866 27248158 291813683 641146931 694089957 644755508 955424284 68584702 665160867 61164324 187874565 126858932 444424499 294102651 482389732 701635314 719413156 266676104 559457882 283910126 713936387 730239777 861505675 424191031 796901313 511727917 959235442 291169327 395517389 718772404 989012466 202364180 824531466 968629284 973483188 409332275 699526097 711662254 732622954 676277264 990095503 994435661 997909246 556025484 602502336 872575748 901787822 792660378 926753456 75875688 949791953 217993202 567123264 345643624 646014067 843166342 966582920 743451471 880574547 103154080 422597181 46970334 200047164 130625834 497686880 353077028 361898311 348609082 504060351 808783799 831930598 958998858 973751265 142026395 706062674 986330658 988434638 160703557 589459753 69869466 215807248 4779943 946535613 211215118 542045044 228047396 401567015 553905434 672830811 923571343 935609052 468113474 738217318 171420034 259113935 482959900 763190438 211985517 676457341 628432317 862641082 704067668 816123883 744798889 972530539 254553841 286504184 36682630 286737172 354149884 589167035 539826833 757365299 920086518 986563922 663078453 712555263 463719930 944882343 272535074 922027788 121369371 280117531 73565577 580749364 648619554 722708662 443990622 604468856 850386084 860423339 771041941 937005757 585313866 709296048 691484091 970155827 75615775 697816861 679259141 983079334 389309339 637146969 984928701 991208528 435450862 474853060 299331633 563517754 907991376 965736640 415863130 946758395 792449104 888346823 849032029 927605603 120433110 148202029 207880508 265349908 285137308 879209952 555658921 729333681 485246580 607240442 160648972 802102136 532649624 537181681 266050326 830877725 349260380 956057123 893620024 909106119 661139762 724250955 286714162 402526228 313645034 905452923 737483422 872122957 614512792 779286434 316423768 659158245 727180684 832276035 594010193 655436128 775741038 901777601 708595358 988345039 609847876 963677492 748630066 995155019 178102434 852098837 738895522 907902680 489599670 581712782 627950871 937232928 591122211 677960916 1697067 770867316 588724670 991426609 191836277 800733714 604187480 819709017 217829337 343389325 626849071 933068532 470159440 820215781 118611439 389371227 566455528 709359114 117502724 471064707 312726843 468668217 418808200 605458527 829208853 847235808 399757467 812672794 321398886 786783349 742566473 802702426 425759337 822059993 38916952 339804164 915758431 920247133 900441882 955369762 984553727 995712849 535781389 903286885 344879904 969228131 119449636 409593864 132010427 616977684 115882915 871832860 223864983 809226269 699610280 823752082 861688977 989916526 684299681 970964381 75822373 296153830 26308720 57960454 884190263 915203802 488910746 945395435 446979378 738648200 472449704 905813338 453320446 929982556 830423834 975212263 722240090 886163317 748234190 864694692 826451448 829883324 213471879 506333023 207866793 913629403 145602472 262620994 38537045 867921399 620656200 693260823 155853935 655368919 693804729 751936270 166595768 386139223 623566790 695099925 133853046 370483608 965083805 985703609 629770581 676933122 568686417 641606040 350064003 812952258 784861013 863789290 307516666 842874427 220085289 255843062 173657356 949360089 700868430 947910628 856802393 893406984 810396342 815666609 846663078 915556098 768869189 845181933 362750752 368998385 298459748 486863491 720053966 866889129 418372929 624028023 623257085 788656402 323320874 792395712 965715061 973893222 305867842 540163342 769673164 866281760 96912413 735470484 2166721 843722140 375692708 941532889 316085016 494435483 692639430 718848765 348313140 872741724 700236536 819555715 500866946 604071207 207227961 800258854 938814774 998794431 353595568 721153475 810306705 982638827 507569825 869703841 891093728 953090973 297245962 422407883 602333829 983602298 68706294 220612040 362183415 960379509 929391018 987444689 129514797 731536913 478728732 991434278 919725848 947394808 728755150 945469140 492031040 953149318 54774259 607426962 613551882 980822390 269754633 770152552 11791161 764339105 220518036 376771736 225610194 241152229 58415027 943344285 752534666 778191924 421623386 689483495 911071766 934595837 895824412 985200068 784865033 928565824 743448383 768125393 980741442 983345619 628557237 807078059 664030882 737180650 672788381 881106110 992906606 994203866 904865454 920141349 392002720 800612572 301944808 801818750 851012548 973206924 580469565 647755504 809541269 822587137 91847893 500754742 225340230 381758407 280108905 657309119 330360663 685379947 886566219 984348563 835381375 841066118 415073416 966007927 136504419 660918846 326669690 969412521 582386983 996102116 184730248 737532154 434181380 667870589 837178179 977998462 378193999 718778266 60607905 648783698 950884954 965082966 973394365 979143596 272019693 744926458 89373003 91875688 253565712 323562179 45198740 758397353 867363786 949450939 764808404 794092074 111964286 274163395 860916009 870664885 590079138 821306597 20858331 675721485 172803065 414705445 954273946 970499936 672905512 825968001 340656935 929119516 981440518 992500494 777762432 868122063 544869516 810867657 170489903 868985005 417242497 893635477 286524082 937183554 491532233 985758203 247279782 884051172 692576353 906216069 262419956 557818874 883694599 957992076 355370307 875763376 734405808 766351238 338393193 634515444 768370607 821032679 688650041 785072988 474612237 907118134 976616550 980426203 226776778 826322104 330885756 453936479 596548112 866755423 851298104 879504540 177698351 879534558 683201115 843169727 165329802 378375325 584624839 754461306 338514638 448276703 348117615 565400351 358745925 966041007 899148249 971504297 110013371 371543954 806946197 948706931 88917625 956803070 515793815 887256738 725220609 993999632 259261262 701517940 100843278 871739911 50677865 276268142 133706913 202334687 65944227 827456639 914180671 916483922 619095975 729889719 177858865 649944180 806142260 994994965 865650282 918896646 322146463 877280717 707557620 771262728 513808653 962227140 400608405 763922140 230486916 328017920 598015319 834097873 455264465 788431837 116014634 997105738 105913998 440766975 245296788 586616574 797655513 851752499 278129113 920609986 735986345 849335152 79361458 996286681 700535912 819224704 715759993 768141759 974285852 988947100 88605169 795480414 83298136 838339166 279904431 525164928 169429138 331435382 897446435 974458087 775716112 818081331 646815140 667136365 539475388 871632514 364986694 672516183 907244222 913389342 182847171 267729555 941027769 958650220 501959030 870758874 599579433 679107209 991020370 994499459 283475179 316692683 442135104 453304596 274795420 564558894 491256828 808828244 678717665 946819188 347487557 974394167 946773022 976748638 968632609 978259138 567143501 916142017 290625463 614605470 74074683 507651860 506583739 975982864 421977647 836983522 10110751 16333092 68105116 612863082 381242758 882706719 114733247 914303214 884328895 957748418 347076330 454537198 486359916 943375491 934357992 990648224 163338011 188862151 246163816 717868722 771389787 800634033 634598098 892262080 648488784 727450659 820005241 823373294 724994116 821404623 371946540 446848769 859194096 969462957 64105659 636948432 882281492 943571770 764766162 818338948 663436972 947186624 624278834 757924994 939247439 986176662 430904103 635192896 201783559 908356477 114516710 596650357 612691336 981247991 373829197 686514044 858825684 967546635 135164264 815444839 280000946 665052811 33320976 433935420 523948702 587139065 881971564 891722389 73938280 443062549 187157075 468217791 281219340 665329889 791811689 994257863 494048591 972451617 929814627 968886362 319958661 794196022 844364828 942595171 265445004 280455916 723079932 856961266 446585875 758113122 374411827 864663430 765573945 884639489 142344485 966606411 639606391 790154869 508932665 900030811 530137913 717072534 661415720 699839181 309769660 936388030 931630543 985111558 996151933 998730808 390848440 771090602 270238937 386355166 617732211 651413878 600325254 928661521 154612280 364633816 497665816 733913936 934244009 976802516 995959496 996789720 544742339 656806013 753953963 987559465 536684886 734992471 324270999 622501827 633622831 962616809 250960028 541026396 484517847 926126261 336261772 817010488 693992165 792295772 565038897 975127916 941525050 974768606 173480222 363220474 543110819 858453208 612423305 834240281 827542915 933667256 929431205 984227357 173371113 789333888 976925795 980430188 185166260 804656713 259705254 346473668 827165887 980984120 687915106 870839389 17479085 352153972 620492809 935144031 49248649 508380518 601039605 929506144 372837559 787140563 880323483 923411975 38973132 409701010 361234375 818316409 282951894 490601879 890856647 976991461 641994570 700433486 37217122 203572137 747537165 997150764 915998844 993034620 770029647 841952738 509247554 564618730 225750235 493792777 909944673 969684429 739834317 761602009 526602182 574334113 799940087 945923580 820007886 947125291 41524112 826369873 690885184 728861557 524178290 545752667 891570748 974826580 577280404 849956012 5036707 318137267 113781429 575452390 869101315 878025270 468293479 491933972 347570828 687043084 255583037 701971982 92725855 294570814 439238633 476892424 355708517 533078938 975816859 983404348 289585410 364995723 432089662 518404500 739138519 950120666 273611540 996874859 937561846 968509941 318757150 978651455 747815337 871022024 421057479 876210986 410100525 980701569 351282523 684273277 525763919 972310514 119957037 359303175 971855487 990095249 478254206 864609898 398287539 701256161 151410012 507014878 926661858 946284486 185818248 585895292 843861754 879644970 933898667 951422455 599554917 736364161 355421943 803411213 608836656 865357607 393565647 468507806 665425889 854152394 721477751 947447810 349493359 735989776 16748031 670335562 451230759 630298629 974301772 990976023 343845571 659757431 851821264 957926234 830158460 872907259 258145753 522287045 21304352 947393238 606646655 800585487 293229313 542306769 337743874 673827121 612496687 689020651 960027242 989243884 410733868 666871586 446514936 478113008 220855800 356087469 277067797 436431104 353010364 381788465 309673794 609503978 712425664 872617369 952047853 977812543 728392 278817397 882548425 942809113 616926458 664620569 309067208 385687272 691643668 835680966 275620200 982873166 392306711 409699782 269048872 570712395 587137405 997494538 100567921 190776937 572616550 956714276 390398853 672189748 613448290 805772021 828235587 845185732 837766344 876448806 255573245 569604780 360973037 972921762 104752063 595297670 962206766 974185794 793526580 837296137 865898213 887060737 955293154 957180809 749532902 846357526 341895276 978304780 37918544 361799940 733771207 837236082 259469047 586103737 149523623 986445159 546556852 746309765 257590421 991208417 527586720 554869952 863205873 906554981 658021664 880566242 996706490 999016000 146554312 721031510 309500408 393257809 269486808 472980251 270311705 472583655 106865402 253637049 384492776 885188650 462381444 874136728 619927191 891203750 190173056 486708301 852565613 917118778 766253200 954086413 365911493 738386122 349814273 352520763 693253021 871329317 820904933 959190554 2604780 370995586 260267489 339911652 500834234 837662820 490905629 602380186 116278096 833750430 8874076 351279349 433540770 498337095 362994975 463620796 40587920 859201701 991393131 992849158 386512455 685239997 336434662 955931154 781585789 894034958 640148851 686182958 566553837 798394282 41533813 703438454 924295122 944285864 109804875 631815627 711945059 757880225 798933822 808817286 775433577 971238902 769700396 957706531 117347936 931145667 821945200 993744795 106651973 136228470 503180444 810932577 897652342 952900514 446416460 587831548 219083715 365598582 746862382 913007968 296688365 779357898 355126322 380567035 302845111 305940905 755614847 863528370 617309553 690034410 546274385 602310738 937926584 977460667 810912848 862714258 614995379 861812686 584335361 936785528 145483629 208882817 441504255 768942933 754356312 779499093 420471222 656108093 542734690 652846298 139536746 685918164 116947926 783922870 215971853 412019040 227968019 588647979 282064146 335327008 339862761 545586249 999070040 999347596 228986955 643611340 75085933 879906943 599632636 911231507 472819955 882529030 257178794 571913312 560722549 704573773 262896148 907224924 698362328 998861502 128892418 571194193 404924296 812686724 401187731 486603859 44082368 441389293 322294657 493116866 32685173 536405429 785684602 841115394 705868134 965625223 643552884 706396922 597825219 693505911 588062294 681395326 743542734 870375234 550015258 611694372 744686336 847488263 344407493 928419398 637706988 932546870 360338274 902323081 234454295 277930395 457730211 487030330 773675330 868138044 302558619 948993271 978218403 995407010 396525835 687303808 145082632 464760283 955797936 999184261 944937188 956347387 58348509 362446198 107911719 150855185 694303455 987457202 315214679 860707767 231592793 857732816 712640659 790355200 927556578 967447844 878476398 936660272 256187642 778138831 579653186 847414928 251497538 533816924 180778267 433641695 571472512 741012340 698085417 981007169 507819698 739509484 8569943 653402641 403187922 452281764 340822459 927379758 802153590 866672173 351089358 964074720 943397156 966086297 341818814 605074817 47270432 61781167 719126842 765928939 234997242 690239498 487723734 799795811 602569182 627719285 133365978 987920527 397122508 678239131 967741282 974993160 24240512 458192757 963812875 980154903 333878372 956751751 526544892 915440086 982487801 986834180 299191674 800961588 497307439 581176418 324889426 851780366 100983612 821542365 12022665 280263850 401569197 643441100 940130484 964600095 652864893 926322203 360186456 514295506 860848269 897144376 207548271 485003908 858547902 898364749 228116055 716530333 372803784 866198751 227255399 812171810 158554945 755107767 339304490 579948516 271790169 585969220 986396443 992542268 849605952 927706132 902796023 998487356 470760485 490077789 855438899 980749352 563886977 731624474 595345922 693601198 927504587 988142494 356508686 407267730 956038110 997522720 402653801 546883757 252330599 722413138 749368616 847188108 24420425 734474480 76606108 385639174 790728228 866071777 635827798 823823321 496730976 555479557 622401265 772153856 134213716 279299029 724741511 988191043 602239329 704280874 821429138 972807732 195920969 242136180 172617229 487719840 474275243 901015809 545763191 735153340 937905997 971166384 737409084 745528873 410266004 542144438 701295364 961888197 151982324 750946090 759463762 995957704 943281634 971238758 884798584 970117569 954842703 996552405 956863691 986873630 104072463 260983553 458411415 982577233 939657857 954100437 301329302 302469336 628716747 819806161 367773354 723532266 716772850 977460143 114243653 538762428 755397661 881223456 52050976 137187682 730203334 813876259 252655480 429702857 789239517 886222008 513141860 653211929 424122441 620745261 122577764 931839588 259441754 886558249 126871123 211537889 99627654 509162181 127127803 534148334 743002619 879890813 647586091 826964622 931381254 932415663 34195646 965029863 228954352 814253734 112188232 159953618 361365299 476335391 538801246 615510456 218231474 876496222 256633043 570448949 129226166 188416345 285988043 456521218 689932513 863304764 274982099 782692769 174142818 308715180 263828615 639716889 25692483 538243967 606378237 836903294 63795823 720362877 864230127 868546075 48255451 784144205 712884223 900459199 599304219 917316793 223771748 467016561 519360700 852008700 13196034 114560486 620069915 977658367 924663408 942748486 282854996 291280886 991599464 998985960 279306620 441538639 169096393 243742684 122542253 247322560 300289213 579602517 805446436 807590653 891532748 903393842 104067509 108726595 555983581 636514693 62410109 106498783 251103372 623788525 194920964 657749290 108452569 499701799 740164492 856385122 729276191 810621025 870753953 946455969 12983951 517046753 899189985 935709096 359119836 934254601 134263013 217781446 242647163 456346602 900203023 922741054 628261054 889518397 787656792 974930408 349014661 564276127 648227133 685891058 641402077 954343233 974904858 984163849 747409136 767813023 851884668 945540899 369987980 387846495 282711369 964575792 548601731 590531997 548602947 578908082 346811668 712847860 934252127 942041950 244113766 413335850 202282986 848861499 923337790 975151469 134978584 927817365 613010312 714355326 419032461 483944063 880093680 988792090 774434347 842168051 789827929 982043242 153825655 242702434 331348812 512509825 603601181 933999910 350016921 690244305 601173038 785123679 578314187 611857240 272808792 303359267 168557170 585988520 614166793 791536574 558309952 759486608 536497416 539135131 353097831 924851794 25413681 851740527 824808863 978619553 322757502 548835008 737852136 986518998 832694033 904180458 581655211 882409556 123095505 356809744 167120573 616765857 960561201 963203062 440288776 470234070 60273628 324224634 447638191 744799478 694296366 949282855 77388655 825843857 234653242 842543994 772632130 849883657 58783361 915036686 452538777 673268609 20956133 293309224 652039582 797883089 228021138 833619917 700565586 900513054 88577563 99498663 187403963 794244874 591089445 986768069 182586530 443523105 972999929 997573132 102689688 875074504 975054436 989052950 399295318 582231288 267673701 621803714 875675214 984478752 673689012 877475395 490046730 707904007 3738226 54565911 212695857 638220082 213692337 551645653 682046646 713957750 495868933 549413931 905248727 906635769 198203487 877081727 470191841 762525962 514431550 624080127 465111341 721002261 680132617 892908038 8289542 996374799 264351056 635191003 511215631 840261503 339472370 908083908 133072007 777270199 842856866 950136404 777367948 987817419 163365413 998468082 308252029 560030269 695803508 857517255 440420242 732846135 831575105 849858054 292185999 336866866 153804583 519382189 186653422 583146571 19520593 393430984 226399057 978368091 115549209 468104439 438310324 593795112 982606097 995285458 944522813 965389249 219480394 751758508 729647609 733970013 277958319 541868982 710097049 911750910 734313004 893336091 927190102 985095365 208574218 576273134 423763650 801864680 457742389 574984161 979030910 997729130 891245492 973337453 778225045 909036826 489255639 767892424 953274861 985873340 429055370 503529245 220692651 732975659 129029257 192926340 100808364 431797906 221091394 346488487 306978748 875530350 516614569 991181856 917808132 925915718 737347034 831317515 355176828 761703226 798427025 988836028 777683139 916991628 482322358 689366222 900301641 959591407 882348398 968743416 517457843 746301305 758881393 887819911 645860045 871949042 35419828 39962649 768963205 816913853 284458151 583772192 576833817 735940893 314235997 456817573 823192118 930825308 889837265 963326053 32561773 62401803 590678070 693478157 591162364 721241347 924956329 949289219 904381275 944403401 780413675 918836000 759178883 897420161 598076628 786491349 501960796 538549041 636883148 667175727 857125388 938243814 197422480 621664600 99520924 243354981 237082087 683635852 947573020 973022818 231483894 718174623 595637339 798655629 397726369 618394760 842654692 923068006 285402339 462701718 790785553 926066627 527954550 971160978 720323656 842373560 865447497 924264958 310605771 745872702 95367929 660289665 360968834 792507693 742371469 796197057 689194750 826099845 159918035 747574605 60256043 469397951 25579644 522458235 34687121 659394674 90180836 241005849 873498680 918491591 171627017 522131839 991422659 991737253 853629914 864676613 783560766 900182438 483520566 606391491 893637991 979269269 907893688 919565172 377820687 932821630 901779630 959317727 729336368 746921903 9628864 572143854 402697421 723351996 972604212 986567047 45132062 92647345 219314292 929362411 263966151 446665355 247452635 903469753 532208795 957109028 396341708 933553564 750318182 794235712 550869442 771162884 186134536 363225399 80936258 182986890 193025571 388427800 433673339 822034339 610025357 720694512 177809464 538103056 741025401 743152376 637900777 783782962 328802036 531588862 876574201 981350795 950254976 994397543 394405613 537400961 171663650 654318818 981921166 990084368 560814492 654794419 274480297 475509333 644344497 821522129 547698203 754933313 355185159 659384451 100744677 762088527 871133518 930057703 291183941 905690832 736514943 853008268 411187849 549714293 803360449 963194599 345114940 755652846 343553621 467488156 787919494 959781514 404371418 664190981 773830350 792163940 505559301 751316729 583860168 666652792 495640449 684204207 626563632 835535085 730235225 795280961 302665318 758333208 327483249 826855849 49123838 560925886 850926561 981508588 991001337 995390381 565110522 876507980 227183616 896631978 178010207 576468408 600678683 825629512 37468017 700016757 278754734 971749680 753214768 786936481 194028346 568788908 593626525 705582379 760090651 858450274 515453952 802565920 150327797 442123688 159440056 631120574 618613535 846925792 784128883 865141248 389206466 775472398 144745904 431871006 954923374 991096182 350933761 960102424 277062232 409326160 110245654 895020976 51270034 878189630 235447330 817941100 360957706 839620871 186352350 293351037 205481942 402826166 25946208 186697161 468797038 542856067 398910850 582925950 965440828 968655076 874514714 888020178 634389080 716789520 698166191 793163831 301232224 373948950 402678283 926015183 127547021 282360030 318516898 727566896 645182225 834981039 452173570 913529230 283541337 478213539 588268869 915020609 486485760 845332396 337441056 536375214 839421971 925590279 818474500 847276083 988340476 997976465 374440018 855664551 958952960 977995307 658826787 942544745 351376050 682916312 79500574 868671326 645753774 749595215 358585686 455003738 989195692 990216113 936065154 995914502 394597224 730641596 189357138 527045752 593276122 771581345 790612403 889036629 79252076 844545217 291642344 513776079 679319124 906523461 106316067 180455342 323196485 519264657 626903067 825894242 410180982 490325443 391177606 943958062 470989777 658586860 587510939 656183441 772985224 891850275 467731916 876844688 691570828 894317695 604584175 820957317 460016247 806164398 898257362 957591706 24731256 608634208 654594702 780158221 690064541 720146449 7820885 86117083 448112651 867924203 203253050 213418198 843156925 998326751 441393157 488014542 714237788 747851798 781287100 910776634 801639660 823360129 460675234 889038266 621140160 964380981 673301906 695822483 912269708 928269138 724213589 995927592 635213995 970667614 460016886 771924388 732089949 871853551 34667535 451296399 832969387 995467193 123906402 705005485 504254467 931978751 466714016 723249560 798446253 937788046 188555092 236265805 598005647 823462395 110871431 879619264 843282006 960737433 339759890 448191273 918323692 975379361 113397770 591937356 738341882 951625735 547790468 930705338 318999313 493409416 14903710 515743141 919022750 939712150 157433659 889396030 965573469 994113620 565009978 777922102 631624356 991235629 460899317 980653291 596939200 739948522 189966827 198175119 463399024 548633389 774039847 778874516 737189022 790447802 896089534 960909113 619178108 691097173 171311001 848806566 934466078 935821934 592540107 990528340 757038270 857928784 358877310 808112013 842241172 906617390 974246834 994414019 912683175 925485448 360912315 687321357 48923977 428506000 269684122 729563993 486783842 855934416 683039812 933626910 241246240 819760364 334667673 806708889 718073852 861567425 233199002 934903318 639521523 888296133 556381014 651491126 529869833 996994550 216743091 695753213 293819606 395135297 219498441 415591342 173035342 421484530 963909390 975342632 385046587 502952519 166450015 574904889 987117929 995449753 192607830 698548633 603396940 698178653 262638945 461984497 929910330 981628051 180330758 845920531 984688890 990595542 979164899 985165440 378380399 925933719 877141670 893306826 943541609 967277318 740166659 817724244 314255898 807405517 554887739 569826383 164955320 262582119 829470558 896477049 203950023 769870572 526757505 956967716 572831723 957512417 408377033 853254328 802070817 826895171 93164796 318393328 795759381 808705727 115673473 655178904 267918518 647951183 514336718 864109261 429775938 596289589 58254304 350648977 663296357 883569189 402644317 726408588 825801821 864922245 227020609 901946747 410399673 426686382 184841636 260621817 868531392 994098050 721140293 826366349 255922549 690433941 410668279 915459717 588479326 689287460 164215935 637823486 829186408 985124003 271819694 796433519 741132684 880388333 688159263 967703697 188035318 973207755 759368978 865815501 916770190 970138503 895945717 907781152 124493847 603088928 71892352 75805405 186359653 302772347 210285156 968638748 395445300 721257505 761186528 901891795 475558157 928304336 298822401 660608489 864486860 897925845 705887876 835875567 660890512 895645556 178088813 428597992 786483411 918800766 512322504 994219811 830247991 876081150 38903876 276306840 722149343 894510371 994071680 994289430 888606181 979314983 619425516 830513376 831078045 928943779 392716075 971431904 823760901 834383824 777901028 882707994 512199823 819309160 836392678 908518759 359699549 882784857 134242523 581702254 920812538 930678436 375084641 387615121 80192699 967755869 67240472 917883278 21891375 78396351 236676725 262987862 841987580 884756560 216054803 994381380 469048459 857291146 659908311 686410622 479881271 618465349 285355264 376365133 956236117 993041377 620228503 867754709 221807299 358317866 395423984 753287586 153610953 697386917 38240585 506234989 464381748 611810029 782113178 921005507 575438465 673885974 159733547 658483577 50551046 453394259 692315969 831727467 270675840 680292881 952224788 995573253 915965223 958786844 619391088 748362139 782456815 900169335 924562250 958249806 849282721 910458900 187247346 494702280 125344807 279040580 655525774 750869049 136263681 490470516 830048779 972837157 372896369 993598415 70477823 504042201 282271265 699302735 100307346 383648188 839078816 981301942 998490467 998763348 162412807 823565942 342291148 729125526 695349901 719372443 361603421 779916617 253886612 987256719 477129954 900233886 209450671 517418655 928995758 982687430 154134949 525737917 412228973 846567266 861526757 983689105 918492316 959909787 51112114 704450728 478621416 710372352 152839571 273176896 703925951 919765844 812789197 884267231 560307098 855692974 720037467 982477198 239538160 574948259 698134162 857532417 618179655 782237163 100286032 471628501 147392623 799750614 291829675 686503619 999107507 999188590 669967456 774642345 490553987 523474341 221852117 739161281 818198033 926049053 428146423 866441549 633808488 943109351 205429809 833632241 805163773 966223088 941115610 953827241 798353655 813552224 189554396 819969387 272560843 684195245 151361302 963843221 21084922 250308823 614735988 687124673 388062393 665495552 119090888 869507374 922514845 932527988 442974401 828904076 352054956 637236123 524852104 647560418 301675304 928968859 897477757 969491549 942452526 977118813 811540957 834378629 559581657 854439762 699665710 881156774 192840055 765314793 751627175 826485082 131308068 859746330 130459215 474469778 488303045 926206936 972959303 986649462 261968658 342865926 640510088 837825336 747584807 956679741 684035509 938939652 659557402 871885165 676639781 883488432 693704457 734298627 704073240 751372353 32961457 962399866 45771339 466520603 393804833 775692442 699014278 912459427 723112901 990196286 970259567 996553027 638915789 851353504 719734904 778912144 290820951 941800294 388165757 807482324 563785813 654700953 644813352 709666088 351978854 736459119 621639449 851483952 198393746 496074669 744721990 896104821 69819331 693487178 459731386 561166718 653032954 988559263 142897103 981646988 816710924 854284610 365756047 955198167 309892985 764720958 739929654 997765275 182175333 365556436 184054219 896434172 251555864 642118249 470595439 591378086 694689170 923640350 103360971 327694421 195057274 571413808 334514673 551740660 191167121 312757574 105968782 114363589 198086676 586868741 907808145 936914853 183519815 607506019 345844915 725732611 15322901 142320699 420556576 593135894 949450768 982089573 935105001 969044511 99207216 702953399 294733221 334557016 474232474 671028854 465266747 885822064 723216123 892514929 375373718 713297883 68183066 461663528 752307997 940062459 974181749 998165482 49443610 684839575 492611457 961699312 367705458 916605467 953715518 960534311 751525527 850462124 420414318 771293084 723934428 888495016 462018237 675531134 307890157 541180244 51929142 607749629 219492216 911286200 101803281 703560216 124649690 528004357 290570828 791413539 318696059 610424851 201862715 716467229 238865143 497164630 442575121 633350491 48396944 383328573 818372559 983658562 228447135 866616094 291671576 591573447 522034701 659644190 224291339 556700360 124732105 180115860 971929103 978252856 86076000 574827548 186319249 636080175 99914702 307695670 420270469 520494385 353800546 679893027 89806818 992261597 654465125 886409677 147905677 686948101 441814458 752849384 207991301 817601500 981110375 995169429 812142642 944716713 180108887 925247501 842616861 940107895 259730648 481360304 678136242 766638312 35525370 514154063 47030418 495729138 790835995 992241565 926105762 990875374 36074499 375406014 10218482 334870678 239222105 425059912 628643814 807264323 64565432 933635241 888215397 982532674 195810924 553753481 981797909 994038939 811748285 998718168 919461324 953073195 24534576 315862251 21296753 133282261 136234472 387571769 115904492 954971637 728374889 880913746 70637712 253832571 46179538 478486835 37548068 503459094 586690177 847668960 141339184 529015966 792142308 859530824 908732408 942799590 474244768 571193745 771554893 971550259 798690736 884910812 782223097 823509255 864969954 956444597 586992517 632019826 529609880 991041765 817535957 943432750 618144741 790262690 175289779 442733608 223622075 548338922 775131336 929144785 863157854 894468840 85582716 583514732 728034871 840009402 914584090 942659050 150865962 270364400 791630583 812143934 270002457 403573951 576080080 806819031 314163521 378894560 154970828 529832648 355523050 857470128 939183535 951314840 879843406 938636438 456939770 817755601 366783124 899588392 640008359 723500551 100694031 270092121 741271644 793278205 428496688 762472318 533249004 786124090 598411027 607028467 738844093 775133371 937580819 965307937 345988299 642884303 261021580 581403200 312412170 372391802 342389155 503056097 421861406 943915550 223303644 915803121 769530010 975341978 923390315 961263294 726992426 892647052 839153770 842854764 474356644 892446640 406697532 828419601 228023327 874266875 175202897 548091936 145659935 925818708 942889585 951590132 99476430 644636379 333226184 917143364 389151826 638689409 567501266 730352196 133086550 453951724 246095805 268335831 979140823 988746123 534851965 897757692 591436136 982327136 577706170 942952747 23624227 424103174 300872805 550083693 812603318 996552845 888085460 972047236 433827566 581987661 540242061 932113893 317767676 431809642 408458184 774438757 68537650 649030986 415797412 567625408 81724648 933526542 213557060 552190875 259870317 931154904 88966148 378565816 179447340 474940191 926043809 977885733 315443066 601370090 889568115 897424665 529170447 718248376 548408276 853329780 174361405 413569953 638349174 922637298 657292889 674797884 798948674 851627849 468126666 805927806 938071958 980147975 71832888 601033536 453785601 745997488 193138923 721464034 622946757 854139294 729581588 839345538 490338873 952397674 72546378 775395061 917444387 986200391 148510026 217276204 689649019 840678941 450615851 852106706 980166920 994326597 69764400 292011796 73905546 353226403 599021991 606640704 248274097 909640150 899851039 947212586 419423299 571468222 78259106 131773638 288488185 429064975 447492764 765227908 103569666 600226001 631663726 938830840 510673856 850325716 835837589 970536986 532028709 970025051 563239887 761650730 865762682 986757749 385289868 546650046 300791309 576430760 738654838 796666662 104926175 209124417 178827725 498751412 920896936 939810064 957706704 972299678 285981836 428500542 867971708 971441918 254947800 480156861 740492869 741675217 988085235 993522531 97706238 409086555 185826536 327352231 124803440 126368831 644188388 811409958 959456953 988385357 393185469 462984714 837544850 950796362 357211805 598539321 287321839 798418519 393749373 923537295 332083939 350553637 691174446 787726679 662042182 705282807 761399475 889413476 133898048 883671151 528383417 657863899 209687124 637397651 820989995 958270816 226793937 329997789 486503665 789434067 308850439 477605338 831839150 962710420 5723061 833579929 801519533 839549277 880314496 911924790 883845032 890415784 713562205 740065408 490659834 768278442 877950892 903149546 649999321 709016532 367196718 867477235 916530764 988759117 755204711 969429575 882783822 898168482 532984780 973007466 668169281 925652936 660209137 823702001 240073123 431101878 648585528 819764126 772784879 823440481 260496558 465627189 911113665 963965386 482690197 776295109 504357894 997909628 510766391 935847587 618484497 862827129 518767151 993169310 781992290 872155836 436654205 654012858 561753235 845077432 86648047 873587143 568706360 914834796 220952248 682490700 99625177 628353047 466509446 838506574 597157097 765377856 997005695 998596433 529404653 970498913 464946169 779677510 627563896 873286603 486887705 659379924 565435291 759994709 114761698 531512124 874166027 933816108 108290297 609675464 848847632 924131124 705539840 713063280 608834040 848349086 495366133 719610945 104054447 605162655 928124469 984392912 559616182 698358566 741253186 991849592 186014638 992900423 811908275 931012870 140751487 654418117 163044817 603864711 41398672 650219150 655949642 783125971 142505492 526322722 679389628 855292244 482886017 954731456 900807345 987925551 67881637 204583709 211382360 784519149 984732625 986925455 882899165 959017833 940826494 959266555 97816952 960781241 216898989 753800435 912942544 913052082 828205009 907367076 618423679 941356746 908839859 932557388 105473964 477917797 620831031 695896978 107019001 930803549 360028004 459482046 278932376 302050096 48979230 901023275 584241376 945680642 123380802 800049907 107990464 985220812 570013690 940228701 537670437 596327188 645328476 898302784 990767872 993044383 992263464 992800681 43958083 555741243 718234148 994842553 345656071 397309507 451209697 512816863 696668452 706900930 543097277 934704988 730079124 936723186 1986843 761655419 138131436 286472540 516343572 888453617 561776441 745557574 190199448 952749281 836503789 866177216 559199024 605175959 357625611 543136167 2191965 749294697 930743851 936762736 680207842 755330753 638858501 643192253 194929757 474579409 122200986 414287698 790843177 989063867 268593225 357947492 327698963 423885230 75687784 354942072 963783390 979678810 558886194 774888840 845213130 938169168 147757023 582628497 733857162 997678015 36749048 79513545 514550571 550207182 99398771 192220799 672907801 891062372 47892882 538576179 124940920 947540349 452783237 911605992 234261004 959667370 26030142 676881381 139320258 831559439 730505361 847907125 69506000 219231680 62475020 501929763 363959355 445979163 925647180 972209637 795078576 839647724 162329401 710201385 412459900 611033500 908457272 991857085 830631621 939183392 358864137 658116452 392565586 680819700 323091982 915790039 201677209 834500643 301206341 590362576 698161830 704333159 354426945 831155754 772640320 835743362 402829728 861675711 181837691 847158149 531538556 774232813 57549447 926646827 338935706 486273954 518069401 571931226 7811811 627067531 245592297 758313505 529177075 664453060 626106512 892284742 596483022 961411745 588767254 804631955 710716413 961620659 785504491 804945243 582556132 933859533 756567607 952354528 915676657 938598548 291746152 493620161 517550358 896587110 634353094 836829204 665954374 900243028 96312111 331828065 768588043 854301426 721193420 889217727 143886320 682655299 393372969 951158322 118096079 182465252 148397401 729806523 393561209 403535698 505734703 596228870 455716738 620924973 952816578 985627239 947578619 993378544 57002688 983171342 698658899 705310427 716190366 755897828 31420187 540871240 788760682 886537300 948876128 969886276 778351651 888725440 813198793 878577286 570200296 832444217 286876877 836929317 389965277 539019933 955065428 962083637 606509305 896387042 448337468 793651529 418138316 479883673 414002235 510613517 881693714 991665527 75635263 627979670 807439225 954199270 125013884 968765445 154044691 327912768 814139159 858275256 489751848 546634526 597422427 976956185 971817500 997948572 750407295 927947856 657212067 778791051 69797446 339080960 428209634 755180586 603423857 940710890 350532575 824344754 582255681 740384607 397531204 588689777 91059572 574569805 869947520 898051063 583768533 897293777 888480006 966689566 596133479 915475646 947922812 970053241 425569405 430056472 503400677 935235170 891628401 956864075 968577396 984324479 211917733 697793619 785570276 896452139 39558840 747301174 327089932 588939569 349152257 369621191 756445132 974462510 154144740 838684237 111195778 660860147 404785764 739636428 163362888 750777845 4547032 251041076 248276804 469998342 281645441 726617641 535110174 736845108 377588769 525645992 201583316 629225671 612234776 712604540 277462509 283398456 388035759 573035652 154736272 208994436 569420820 827575154 719052316 988605724 671930622 725695305 917268226 923692613 87197617 669889204 807532901 833761119 89455732 934460104 105683205 142879375 424224637 899406958 456724995 820877970 546296211 882604260 353441177 386990007 298359079 343125479 655896798 666083403 879853903 913996009 152286449 434482413 941090891 959834424 321302756 782907644 464312357 660724027 555920214 904092413 462452263 637808584 62532142 201266517 133750720 735035186 597948201 892986685 414023027 911684019 870909212 906668297 369148757 976573652 965287490 988181506 93624129 568459954 562959381 691734076 195056252 968121860 866648833 976500929 930226347 989632223 138475000 226122640 517661604 975301935 23351455 985630644 411340465 560867925 267980689 401147555 470865233 767663910 120640404 941417359 949423514 953943672 479911842 584264099 963999259 977073160 431464530 837294486 975855353 979565413 24834658 501900827 891693575 955159375 838858008 861561890 641697969 838943153 683501265 969486487 451334240 924192196 851991723 964319879 849718746 979513402 18694230 984807132 93730283 756457746 831450177 943092184 320891602 333701338 970986554 987286601 887460635 960304307 165326166 192723094 880704221 951199474 847972927 930508190 664645634 983256892 393366862 519292252 245987527 960311800 967756653 975472836 930117674 959734754 734368698 789421634 573171354 647183079 304441240 534437594 969918414 982283628 207002260 452797130 480675183 753979437 737180890 810142204 720233493 841499147 72746362 614787161 955536490 962795139 530696113 772745466 541889699 791164554 27464579 35647548 385775229 588781612 499882540 833431885 782451900 894139296 616424488 651737802 204052748 589362414 251846790 382955206 48476853 622381243 512578803 979573957 441218504 818082221 583316948 826718337 987570089 998581576 188208983 562237173 802765473 978228852 44572985 791416558 72875937 374877048 68555891 422699098 199179474 617577691 524883255 918204058 779424776 797172729 193024903 456106211 738145594 961888995 493232575 848405710 938527860 941070549 202115752 912688216 202399511 888315351 527906641 593454691 529917985 658013463 128216843 759442772 680491808 711075633 336322875 655872579 861207674 982250904 971757426 983395459 75185615 580011614 611966390 899679988 581542210 735268764 617566163 861540542 106299934 244338458 356738424 736405494 916228618 991788937 531463770 933593865 338853607 632734271 116256861 859118680 907164277 989705884 907365949 980729600 134489790 939941506 563772858 953336980 721863397 867375856 542307304 622459470 181154661 200961759 754001456 811343451 126286110 987502039 970461562 974289783 348149391 901435719 594735890 885378406 413935522 773371792 379082234 660962665 545634938 648653464 341671204 764373748 378377539 840152925 377674070 763071576 648030190 656678984 911218157 962615261 398925644 800599200 989650602 991868883 678107936 873370973 40853300 273953671 349213797 900049515 734896127 856869062 411726816 566885913 235029849 805506716 492732974 659761160 190226062 304875563 578717268 598954308 94433590 849472380 382959823 880153353 784977498 964758681 677843396 721564077 269723415 273321457 542924164 729800652 695072068 949112024 17408186 728676229 72905355 536571693 731849594 844387040 588793595 675180933 919672514 924382080 794394666 875856074 315588173 972596539 618758845 756609266 979618800 982649608 687458716 742212556 700447138 904867834 418424586 814470660 440105225 894372156 597404049 636886378 242307800 381931753 412123403 598670898 964137365 975691212 447294026 586592072 205534341 247082611 890876439 962623264 841703484 994378708 482422514 755534101 54805997 294136087 646455656 780563433 346140728 740244726 262091795 428869291 30689878 240261827 214049067 302132194 618296058 650092404 86112965 387438258 100343228 357425439 606103550 984254795 704840344 785587035 725229196 913066530 283672498 595598789 409559668 441843895 789688134 815167427 38632226 137602819 936019743 970117371 6282640 576213663 287815261 849212594 364197557 594811343 232100597 700035155 447389890 691264763 119849698 861210998 832208490 945479225 756072279 850116828 969786530 996461729 201600987 453516205 39264644 393486157 765315962 892012337 557081043 572163870 249993514 763423281 22923788 363716123 783451048 888222538 265967922 694845142 445142903 529886151 295324196 331888216 992581396 998458810 355621750 539844954 856204212 982304950 949795265 954242352 928602901 976574795 888253233 941068941 316235775 471836834 662611148 714885956 584074627 841287062 242053615 389539614 482514205 676504544 828665674 975771010 109209852 319308035 776611311 947366717 750252462 803507251 923433523 940057222 134568924 947126615 48506849 396963949 672950759 816148351 188610199 574897058 315588217 744429787 490955792 570282574 886074630 925849141 34584876 376288022 812031456 848524149 368765372 779061253 198940697 742118975 627719712 732861632 71631673 261225160 500108622 629040009 930657773 931184928 722863446 812645061 206914219 428716828 220668911 372977138 959072947 965901875 21231426 99337601 29005228 813468339 499684548 542170020 233413696 702511014 431627577 656898754 885482370 938605585 20559754 510844370 65657203 553996758 542396581 670772307 603369386 693285653 821236776 838544198 86671090 193894258 214895914 849296523 343024576 853626445 236113179 258340588 978302787 978679066 92370030 984819756 543812956 579337994 858189213 984463043 977973099 985538581 162064865 430803002 878647198 943316275 378062839 910481625 275490965 912622994 392554486 423319757 970096256 979662140 945249465 981749057 350971900 481986192 38479130 733626476 384668702 462730406 971991944 983814349 955287406 989569338 928389851 970401306 598599681 696564053 424882038 539681432 277331621 759976564 622954412 716609265 466856461 968189264 865606674 965074395 785037410 897786149 833337250 846516789 60305204 731643041 450288231 704414644 801566670 849709369 820034027 948703337 971757271 986112214 685056742 886604089 908383661 996088499 990052868 999128267 984935917 996535181 885692528 965216402 4138474 618939479 51264799 321825754 233806351 315430698 703054580 942470415 668957664 989644394 966899194 971249476 942470143 981486990 760346703 895175106 284153682 402568160 162720174 470966671 444663265 863006042 637159891 861699826 767895976 957382721 69205335 97219496 689361928 921074639 926052259 989254537 336736525 827913376 639476439 821689227 42185240 477531877 275186928 783854617 124655227 497183058 449310278 559406677 464657087 522450440 726419206 907681219 452734218 609415785 860496471 905747081 75560987 187633624 738291530 778534516 883765837 935495327 578540138 712728470 774390006 962368487 366226994 503407611 52215203 857130271 722281705 994593014 915872838 953798476 959463033 971351340 20280948 355302849 795867748 932143727 468863925 753092068 197881636 858317580 109984026 111499958 894553376 980608386 442542776 554325688 572594306 745745897 654198650 726907597 188526150 380690025 791602411 972435122 578350453 605132055 380159752 747585345 114613449 149425240 657262307 892480175 33981401 891404771 787368203 828522673 927396528 986485315 405675326 994501020 928556575 954560812 916441942 982581521 601716285 844640729 830713533 898276863 990631404 995840713 876778860 953138459 81980089 324226408 751122169 797388389 960112952 974639208 47522695 846052997 623111580 722789322 648691086 972763756 475585424 886598218 879818319 920441414 167117541 332283024 375844067 869864631 736382366 974911366 923711681 945796731 698285263 778031878 952318265 976522371 480561969 753899851 624934724 794936508 356955365 544356578 775533042 843045660 841727301 975953087 813259835 923982080 923456839 931432013 596905084 710736825 675834766 967286552 675559913 896962885 531609781 887745958 43340780 777831793 368191782 433834728 785241009 942966578 178345215 597886555 654331081 859902302 914558457 980515993 110672524 479606339 960159545 988798409 315454378 385342855 301383830 688857508 253171951 527785492 780344087 964111928 26272683 918827417 678213107 740346512 804838153 884305866 139771405 810905756 766529381 786230748 5313533 325345230 79068663 802498487 123800681 563035099 665612383 769601178 114405002 815204667 489806160 754548804 352639267 588105625 323917289 689933506 650006506 672551060 549445277 568037739 245167993 635889651 554022517 685388066 870788680 945092887 398895768 748501087 935434852 992398910 835195836 947100710 137397797 264915263 424611810 605285756 689911925 759090644 794103369 870381773 799373383 897717941 548115239 677831762 963115172 976386952 273198855 970519383 275011665 719610284 695478579 818073710 975646389 992484494 980145163 990852405 592602387 647080123 91892383 645208603 985314256 992056016 934761386 983087343 458210631 507280183 985004329 992231154 271348828 820681744 669234009 693113151 180253220 702463342 944048498 973245280 428345176 825723516 175385218 760586645 692922570 800153688 272569936 442348506 252922414 910657166 289573904 923514675 740903877 829236518 787561927 989809703 6750269 239439071 342700905 943390018 657183019 995340828 364020509 819643822 330876089 509185073 900925805 989648565 721576384 827372512 232397970 366018660 653377287 864822826 438611959 854989785 365737075 727926510 115892744 636711187 462044512 543273472 258692456 272241067 175182199 720077977 720871935 979328059 94649630 722753762 773723042 916058690 465828782 650738764 168557238 706866633 956146600 989127057 599361463 978481744 718734475 779154799 319548820 906253179 840110987 992450836 195672716 537106855 14848105 352586741 605938276 963757761 449609447 895572810 689105674 922644835 758134629 850911145 477027856 705625380 459822921 926663187 889578025 905578721 313994252 328853541 297374676 963099035 550491447 820450863 737536563 848928621 858931823 894062530 481983144 571417973 679997667 781231940 916103892 945043135 894636980 936492496 993311835 997134783 310835656 696943391 733192148 873777002 956748513 970822188 765955253 775490489 91691104 579645062 962377316 976154710 795926255 910114262 873018562 937672188 901295216 931280398 500637123 669562664 922459684 979141773 266253400 988494576 855060672 915395577 945300316 956356395 758319913 956198759 158823334 258783097 211196307 689347722 767648370 891818283 566857391 868185663 928156777 985722504 929007548 941915665 587161564 637931982 635890706 964061267 746611338 759920580 445576841 940407087 360469372 805944277 717498278 772334820 770842269 817173445 277092778 390163486 706115274 933132433 221656793 520409813 721932032 726125839 498355079 598640358 233224073 373325440 303412413 502498055 732220189 950447722 677436395 861207388 863981947 909391093 465054715 552334268 526331963 702446496 848859014 936606668 324606854 341155568 373261797 559198718 565027449 960312428 234682524 534670994 581184355 709144997 432790751 657009308 932752389 948701535 792630086 901087585 775345846 800705275 204315109 516171060 205130950 654501201 821251973 877812343 314809719 853861389 567746873 875268675 954082439 969150744 208442016 467564905 568491170 699572069 404693837 506606134 400895275 973646653 423892925 918564350 393251928 703784857 115302148 614260442 191536951 413565433 400257818 817282355 175164186 506819396 912171316 982248425 186573532 593977966 235906277 784012987 877120065 986431781 277986567 531982991 317241262 972410191 982618555 999099867 942884320 986848976 746863814 864863556 668882786 989764909 671260474 736085910 558798433 670357374 596766014 967241650 708844055 811494801 904663624 981462842 3556635 419562701 337680380 345930601 939707287 962635784 420471373 891330174 521924362 852443747 965283989 996558296 109557886 652055139 741189737 768239916 474876152 712364601 798875471 909197948 215859595 497149471 163319803 964767204 946152420 966526579 736071797 841011366 765393991 956986315 588611073 663421036 94900036 832589464 712304826 853860328 968843234 972122066 107679396 517189042 102008848 974927605 615261354 729005840 879106225 981097493 700242287 769313609 49584503 707978296 228543886 250416405 463000245 751277776 944727554 966846585 830295239 928722367 972609114 980226546 913262522 915543557 785673171 909897981 818812628 852043416 926042083 979124830 685050749 911434931 959763035 964514532 60032894 747230986 116689964 416964070 354917630 822043716 300152223 387357487 894321937 920424849 511392192 564570348 398650643 635403431 284858183 472390732 180923680 430209326 466550473 698732343 435682495 625864095 665677247 791864585 401982291 992300374 337623521 352996822 171262660 325411091 529244870 691065079 309853135 510167968 580390988 848640911 319610832 504280226 281765530 423598306 930144707 968513817 951209141 987198549 166989607 384164111 184319564 700824668 613320616 801985966 568818261 871909515 940027003 971289724 118976872 606734446 183794143 938761815 159617154 986513611 30036153 244867916 442620420 839015764 33693206 579206344 663342558 883440196 882280291 894110433 826545924 881297219 364788007 753864178 387757280 720875350 64814648 691702914 919775057 943458242 180241622 460743226 384619382 809680789 855820966 868755484 860947734 963812634 212534298 970909626 193983127 745168259 927846232 957345754 88701571 458532006 914394658 977493224 656855928 800127505 321316499 891297170 685833933 978617946 962322801 984345349 399015030 460559943 266123385 456499848 921709883 975885452 956345124 992811847 420633022 731104639 818161863 837307058 916916530 925599424 487199782 807882047 769405048 808293499 18256235 160610736 17908348 906884068 479340107 922619501 216864445 775233519 374724864 567629040 457693333 652038249 2819294 740329200 620917616 901686483 670439808 709118140 872242807 906299570 99104226 517268695 631196469 779512959 409811241 575331388 132939210 576619752 754428291 901382935 495891622 931625431 766924341 868942556 101156011 671674277 180762886 501088704 723486832 761831526 554919879 877705653 544486445 916419681 250215657 319153364 986685331 987734162 506759685 896238475 434901420 650674564 65602152 638854257 232647243 585691015 794094274 951089264 131029043 423897138 156990835 500936488 916440680 987463670 312403368 858026794 91953104 346306571 148618761 167818590 903554476 996700515 349702203 373032771 573030592 917647894 52287868 923757647 148211391 508341944 456650555 776095320 68794482 531104979 877642038 971614655 638757399 749291438 366593569 843981086 450233908 755910903 70559722 818406162 186425004 919454262 486059637 504839532 306807580 579554492 633944608 680031199 297463927 607990454 641070762 856299583 9847275 542927785 857643388 880111518 196804988 655535929 616881564 691848817 516253508 542097835 937497016 950124756 904551735 917118750 107919758 311432667 261562624 321000889 459571509 742600910 115882683 204349896 336664481 437202244 160640269 544025590 995994303 996792803 981524811 982832301 955101674 974849003 155163175 714958645 601385154 789518008 143266446 461049332 514546539 958332854 154625837 555564995 365842682 585285176 899578591 915396289 200871772 973924322 129623472 638194790 665040819 812826191 114710353 864647069 789665935 973208223 434360827 643214308 950542633 969856076 445815999 567676129 609248201 691938006 338575888 548043436 894859620 961026258 807114783 950763770 652763906 969272974 444464837 482856327 153661573 371789636 333523760 793095107 110653340 343478597 391659364 625915779 863286231 974070157 687598182 780956701 482092876 511515669 927003160 962375143 516814764 747513795 121821634 782934341 132104140 602163244 410998796 555381197 40891521 707407055 777297746 835711051 314263878 532027343 527895733 993062179 891428419 980950479 823703977 851074934 370792908 582259076 96471605 357978832 691254447 951519096 526681723 967191930 206565108 931001557 588746303 833003404 901628225 958806278 153890349 704407034 140243857 764943612 922894328 925768927 343904535 716182374 305646754 886151968 156409750 581036762 95788937 582084911 403926492 952092586 692902066 699457886 685238475 734689003 871321655 901090020 660973371 953398144 666617813 769356024 672893001 993208431 883793464 920550532 727903699 908453018 504839703 527106792 814595452 869531955 166053279 456170875 505034837 642954456 816608039 955785097 554244609 621635128 515304928 759524825 444469014 917126372 678044732 726331694 638556451 723877945 612096638 676174409 286338542 876888594 655510075 719037773 777949106 806172372 240850884 250575985 896817293 918922704 735915938 797233096 22939662 63125606 951324738 976525470 564098118 752102960 211250873 868216259 260922087 657371437 450906148 451255549 576012403 640001641 185714001 625864975 678979320 927830814 907495589 933681691 885676782 953642224 817814458 949958095 286554402 913442138 381083753 825483574 21154986 615492698 344098683 798955797 213699179 217973168 265481261 455304283 88261354 616254348 681325747 954950105 633011288 741645414 699786002 830201047 301484994 989842155 165435243 966374472 448344434 574205620 382330823 640186096 951474260 957289103 559738150 567279542 822164604 885240312 443512900 579800097 757724088 923978284 285378274 549266350 945322567 957892701 763154146 766020808 979206093 995031129 534652410 716364532 486792135 730759058 897243297 970354600 219685213 331502919 668436584 720464952 584616255 969519847 765665737 837002945 461962254 929049633 164077913 862439053 263268815 888326101 908898897 972113407 892923144 905790707 458446713 947168591 598284533 963289651 743138331 974709965 4626465 369081906 408677584 566073232 125206370 477278075 479618040 569676824 862252958 996866603 786519762 883015516 648289299 807943047 573123056 832288226 54904803 696822780 684932502 927350131 302256252 454206484 305594468 738388455 199400791 867542100 948888956 970847529 92923473 232278266 333522486 951938392 461155609 858990731 388357205 894543637 502386964 638103587 527681183 924827482 947922808 964558820 167543621 752782469 16373004 175540377 949332984 978156471 776353867 790983065 857416152 956223324 419406452 736802495 915757548 976185071 683043521 874056341 534259938 783254153 791571162 986621701 715092759 986038861 821136162 821795956 692338020 715234607 538205389 813741964 41121611 602431223 933794080 952397182 896499151 932685813 21891432 821073768 647097664 946964780 666992539 681274324 506761082 905205688 304500949 701136741 893057156 925003860 865154464 992210799 593571602 760377426 607724046 775773519 952655275 956196205 210165502 605245854 225235051 838725981 291978396 568976355 824763569 876571943 594477986 990315468 869835607 987152977 654842508 849785727 608720134 638786103 746219451 833214862 946905796 996010194 585268718 932908871 145252872 552655444 262031636 490774370 848080589 889207107 633202015 666835332 72786749 322128731 291611421 835554285 269022439 394528586 269544277 759311428 298026875 748746385 262179636 384937844 340084194 904170530 167239521 193783810 391229918 698385073 294454806 674286189 824630965 946537689 709171060 733758514 931435579 961399511 116525956 223361296 220071240 307528820 561932135 772134024 109013 969039211 868258992 921068350 577447536 769967567 619558568 963568972 282955698 432724339 589145581 983622438 506288058 655806936 200311429 405045246 409168283 860803149 990975161 993338529 828037272 969887147 9771350 660643435 509690685 922787945 564775870 818080496 957848177 958852947 59881728 223114990 330084367 585124163 612524095 816378685 249006800 834016948 48750472 790790346 351026096 670159047 408458173 600550641 303055851 699286911 493468280 873036443 499301338 750884055 791439237 818407119 436927161 602772517 969411005 985784727 992581296 998694166 800664163 802598437 863663647 972587486 200486938 265997551 115207403 509816118 926484148 983644606 866472313 993832841 865265366 867498400 688004583 938008056 684244187 851679273 602821599 615413142 639611999 856822885 45346570 357747157 753213600 823621855 735563489 887804801 388596770 884324841 620638840 677557536 287137658 812273490 618396551 664013451 392659091 503092765 310075244 515492513 607212950 615011314 379716849 438179615 311825136 922645221 592056735 644042556 296746400 403708098 483585893 681467819 481089103 681026916 996953788 997567230 554702606 936882231 481366558 993289040 50725354 195578764 743759142 966162476 63085831 708048453 292154799 619310508 859502963 993158578 461731787 861341921 272185958 883434588 69390814 780172794 290602167 495251022 306268402 454641084 45927911 508759214 936937328 961111536 51418402 508926398 613627161 648531755 488391049 613282037 523891863 638263350 93169041 115728806 704015872 797076368 881229295 936702975 872816758 885495612 264983376 610642134 144318823 893354581 758646237 893274563 624868260 761410022 812427639 954031806 431031462 613475200 102502003 678888514 669451590 703281568 919287057 994706600 15491883 97156251 295425839 313640620 276826095 445264428 905967825 921949498 394937556 496553391 352992622 571546269 244198399 912400125 220303707 594776676 245979890 912229820 431562747 564378264 11347525 469956533 879130376 889909967 803366036 949264507 339145451 972649584 230795568 623833309 680922191 792611082 707505535 980309991 159487468 308457858 891533838 964016345 222589733 979808603 734234314 828300767 969625246 977342361 604901077 789988541 351590878 495011124 618437911 656615915 864158556 929453820 754477652 808716555 540389797 638866700 198176351 493083235 734276880 937687141 459269130 552813263 260153985 947277774 327146130 932619204 922644564 937507852 332256882 572158295 2060038 750384940 984475309 993610514 447556847 797273374 858479311 892611995 270609786 478544813 588056153 726282413 595355801 902291241 85279322 585552951 470260625 477200401 389276315 410200492 635904231 696256523 728443997 893893411 165372508 285943843 433943420 991214266 636128801 760032182 595995086 904941896 686351616 919555211 605662671 739828830 792352112 837486034 635420265 942551301 510200855 895258641 451702025 579648741 972580881 975413842 906864560 916213738 197301624 752754593 486245430 514512731 648795437 901548416 210320796 510569409 178806712 800020703 439079069 856083044 583872487 591967950 378828415 980341414 738405490 774595748 317003454 436071365 481933036 911707422 716703665 875968260 835830188 988096150 653617623 830147236 424074696 987972371 5634858 635472189 225552311 386024549 97249360 177149077 695539780 812064382 163284406 456430682 513934901 544392986 277374210 634189588 863559039 963515197 377200680 547664246 689551795 855491452 128936344 813517811 887151157 990509079 860922668 901664731 978546698 979380082 74867059 654710859 450745084 808515182 822991055 952297976 530439986 948185649 653419710 814422782 958195528 978701131 557773937 585900635 944863278 969196470 798595317 891739353 138725112 577087280 323055882 740024323 590220862 682297982 489297625 648189261 915087278 968487365 46550810 434256006 411547341 949421124 702212056 753629028 450927767 602171694 624329030 784421444 446123145 966610242 6348044 344528236 781299549 830510669 3967298 177075391 218676848 415278773 847951381 891198435 800593932 969328152 306409868 870811535 230586340 574375489 570930602 775413651 606205801 657733125 586700342 760947932 508839016 726132589 447457949 953679522 380320721 673073513 180143564 607977606 492935984 829272825 363373976 985502925 783274533 845457268 760062513 891527770 719673117 915545404 414654190 428329246 598108092 703726985 671033081 782100246 251089120 432146998 369616293 495037717 357821413 898626264 369491013 905895807 927316749 993638940 20064710 544895415 291340141 319504685 496360970 765520172 542183248 574852363 196674266 709600185 225775984 705393741 574637439 645401788 179594233 635643074 946535367 991679209 987647175 998172981 369937573 441306219 927514828 954782975 819680033 940873840 51815135 444421133 279177008 818072324 644893452 708219674 583536939 956882891 706632046 758460730 411076598 442472311 560845165 601259167 525936705 629381490 222068270 318008391 556515162 855679224 81181238 968807807 152128404 537394892 790107563 842107940 383244700 444292724 72793022 744938361 692620806 755865780 552214833 923367846 349813787 881070330 216789527 389321297 447444120 583451435 434069411 594722715 467112059 711845539 333784856 699177474 373479595 660993164 749828300 826903079 768543673 946779891 229512560 648496093 514212925 535387677 962971563 987897804 828242093 964386938 176070346 714794467 57294639 968462897 947101289 976140399 751896256 900092383 918400251 989801578 549165994 746578509 235510406 643199260 422881014 992316974 583153331 638072502 197451327 630206655 228381485 663463345 786015815 944466884 228862969 767407574 541744265 591484085 803718471 881600972 108983136 912783554 106227750 941649800 146514220 963765684 59748245 133789476 44650952 425709622 98306400 199870264 832935394 975569609 94637712 650370759 189480640 572154440 880525373 957578074 234514961 798736662 214484872 613753041 918625192 927155916 268289657 474741466 443293001 481701412 289759812 826699554 298412769 490926352 54208937 633407990 578005328 772906746 47447455 882031577 88188366 771227330 380625573 387242998 90961929 337111655 839333181 958583180 907841029 936814873 492840885 930937235 100676013 379600677 12055989 916533893 928972144 955058498 387770836 808301943 548971996 874567546 943051094 959451471 230585304 278331747 752969011 922750454 371499295 504453388 920939727 938281389 973671893 992222792 693600508 832011099 787652377 919364560 223350643 635034405 187139712 745132892 246319498 286388109 152748262 281167113 58259642 780820357 260562113 312100543 263860177 412193225 257269404 530907838 599962917 690295226 64507468 507192122 34163889 864546782 803863003 847183008 250881846 982446422 725328416 899505085 500170983 702989278 506489031 863271390 137057955 184071373 324842695 776569727 665922985 853140551 525352605 854768058 316657407 662131345 105092843 801609373 889589078 930876626 916972795 940028585 231142798 617079804 686491452 920781293 241414226 368623520 824972039 987655125 98535953 488504291 770106305 978919326 351335361 737731577 741682964 954529490 810251756 845519929 50716463 617395108 115110067 322335956 678792327 979999779 228136843 876875900 55245307 974063421 257749952 585092801 974309921 986716903 247416000 346992152 165893782 524156495 341511649 931941949 625249531 921739813 830280278 854775707 793239743 828672413 11111663 121191550 910932907 988520396 318099784 800692401 312763275 577209372 191449605 197025733 919522877 939427015 307199260 663074645 565197488 580668711 472855860 901721165 139648956 203590066 748416888 752104660 254678220 595573255 142855095 404322581 799328084 975438088 934515403 943114225 688863873 779909796 165964352 386766943 549339280 708409708 947859618 985194703 175551835 757731700 492806143 838772541 711179790 718763762 262192794 548373551 745156969 886225080 231266416 750700055 553326317 759237279 780140749 882087358 493500330 641137503 712566436 842992584 346551934 469600514 669541768 749626802 270335506 804869657 281940098 606730824 895377210 903496393 371606732 390652416 418275390 958632005 695098222 891535187 842483509 946473175 38985820 705565616 968900153 973554090 85483556 601487856 615815044 685567106 785894370 943062691 48608503 680340552 610984424 811565031 237725037 648433302 142749335 434047520 32574986 931490458 207789723 643971093 773726488 790340187 594709556 687781694 302743210 412359027 527447589 670001727 393067541 518206621 606928106 750982484 825575656 865601477 850800271 868698017 695437433 697687714 763826486 889251569 821040158 963748385 856039400 907325811 499370347 674090277 197606286 277312329 596751841 615000166 378032201 485215645 81185875 555487790 93298689 470848164 15825372 101657782 547795029 691916924 618450220 932731001 109511605 277741020 674133679 929424717 462598163 557217934 803271115 812882305 207049789 219619445 103631657 523160919 957399851 980834913 696477845 788518108 370110378 525973725 416068301 836660429 249910606 488522945 549593894 841028427 50858162 497986788 351428030 541231604 175053176 658059689 523706556 709471547 51933398 79024723 68778308 218578116 167273462 187963677 565008165 643479852 812889327 974344046 333311748 875957959 634721846 842436379 744794529 804090338 314862977 755773615 195018988 260759353 420504640 750580839 256030610 418824856 473811339 569361422 806513985 825813799 889945662 953889918 187858681 901837709 850010486 927239960 287880889 385272362 196515351 604106469 283819966 708940349 895964906 917874660 727193119 790966368 478098122 541974548 733743745 766587866 194806471 500193495 544979322 990506214 63797291 959794875 72763135 208945037 565286023 866266685 495234351 640612843 534569212 815726531 213728813 401919374 498465500 635065147 186639654 946039453 238213187 319224270 370095728 562253082 196377895 636336309 284012331 547132777 589551634 847465838 440920014 876054896 706383077 915620031 764779483 837245961 485325258 986625494 824978670 855536822 948859872 958018302 326811525 969509689 915785878 925020168 794327553 858071827 889853844 893999045 926205014 992282643 833100474 836717647 606042879 902718898 770277670 825790689 322739493 353186720 586237366 989980895 245009831 554285320 241138722 286277268 245130384 753192074 311167169 567794085 801851493 954556723 27605723 445478236 583326807 598465217 841326742 949766272 691124831 959670664 271604198 744226869 21248584 243710691 606611309 749124266 98060993 896303342 530814195 657773876 991801125 995618012 643649838 812148331 840433181 867030334 661546522 810378269 294244006 460904238 486887406 899734669 664143533 722938272 158145433 295635277 441800041 993896565 733632318 839658590 668413138 849278722 565241230 994368685 156948901 350220800 394210682 529477897 347851471 880721719 42124781 204751107 841214898 986694298 782375239 829157397 714993646 914389458 65295355 602147702 812148126 871198890 392068381 722302987 444493764 950274534 358965102 508207801 153531425 267160286 328945124 820669947 609331291 755932125 82399982 714047386 507765977 738959038 714514644 819415260 937194119 967363316 638039591 848645256 879169451 931433640 459220703 787612798 129057145 323823408 427679819 829293438 919477822 960358580 936518434 983732271 969790086 973790691 909529678 986333381 257083417 804792282 82950308 405718650 479544776 644610262 748036015 945725878 802133969 954981570 277381275 428400050 603685607 982080714 680796852 989751739 522741553 723572420 733837809 871414381 836226697 882454643 963373369 969517564 885340331 956520339 822422042 915436267 997414873 998263747 472576642 934293081 193729962 558615190 221018167 715971756 373739650 681290712 281002819 751641472 441376346 949781488 331369124 475897721 798973806 990257738 743813373 821615861 360983283 460105681 630255786 759397034 413548033 631870556 682528483 946813505 983820166 999167285 64256815 178373392 689800001 753089016 927300132 978960568 127700607 331818080 471227697 944478130 476311098 522063796 31058635 744495561 365227752 829031578 661809111 814938819 949228 680124397 363146708 534851973 849505881 871476662 601292248 727977817 475122128 535015749 259106271 557370511 268980972 645907733 354359959 437175851 352563161 915269168 406174290 680496184 551029774 808343577 720248615 956216965 182829357 460297419 535792328 993673376 492016274 542265502 200037000 983438456 90797108 917103300 881119736 891069416 961175182 979285647 198526515 253550400 628449510 841523895 17204723 104032460 555725890 925505730 901224263 918726897 929801204 952608625 913560001 972379681 125911095 730201635 5737535 982224870 495651805 740485626 754274863 992859650 193694327 278647156 606201795 662191044 827468679 880335870 603613067 950990830 16706384 217539379 690072142 900183037 266800557 663811321 819792737 873533882 286134996 596066076 353932483 635361128 635621362 984731269 80819124 94578516 276638038 796570159 572175920 609328241 718252059 776258424 562612806 924936254 432222581 916840567 781936362 829541948 709545802 890057075 768261517 934583714 174141892 598231240 859066184 994778567 859764692 988849587 253681063 703586478 528215085 564841934 406734244 884812037 257789620 885914109 485330820 735350052 404505926 925203195 511219731 942171436 430528460 516786454 549364308 773722449 680980444 998952683 832434615 902746074 488548277 651800837 552242530 960530724 895963739 926602217 428003655 759242102 315374710 724977777 714272010 770970854 862744833 918230199 25613580 249124364 936174306 945771612 711281792 989290588 234081584 252238297 696710933 951959423 282288682 668784703 406843099 803230566 981338311 982289726 850152819 924510185 111752504 534548564 828202038 923080250 159961335 587587755 560069909 861608333 343659035 367179949 97493054 771868127 827486013 985200806 758917017 868066510 290233904 810593023 424607975 767177432 501806381 865045132 928172496 985738334 53074564 644495881 463954140 770323823 760083711 773845950 922780198 964303997 808775556 820406933 886245953 906704360 789721823 808517965 595833713 996216527 919113702 951236578 432865412 996050211 615309069 619746688 401536465 566588843 427866885 542367197 495397834 750119673 353379985 705664842 736044436 929102582 714527527 866823788 912286625 998224714 283442347 965009452 725193970 740675812 584369597 891336851 442919912 495679826 830295795 981042588 345249816 696483037 813191476 881495283 451136306 471398480 89274942 813592054 752590951 775797599 785947971 915927128 564126902 982338179 25256968 801589109 169552631 910873468 209377705 741684066 860732500 966234978 510370037 676470687 318479162 573645842 504283139 683774368 620712715 705437973 620917738 736357041 590752229 733295755 133018337 244935038 224778775 299614572 440382651 937733518 196056990 264330916 179230902 819410357 42018620 272067202 996927729 998690940 237637776 526029816 424946225 867978659 394078028 451196129 588727618 974537346 908088330 911026801 476229470 546843900 583477905 691938436 847356020 974448670 492529651 504608020 105790583 755280395 303230166 862637037 162028647 428993815 515544446 590966105 134906895 754728584 444627881 548138649 858888060 996707381 289556890 706769565 110576595 941411499 797878640 974706206 553669456 689136921 979601529 979905704 882563522 997308437 973880733 989484961 393872137 546055006 264577281 356133161 740280013 985293309 21488614 186188559 628376904 960518120 846702821 856643079 665437271 921782077 719366746 940523941 770894843 997412165 903760537 991388328 679295651 757406055 406911051 758565660 807327288 913414228 427034995 586725290 812946866 946648894 290278403 331341371 563002578 922941834 98753931 307516519 977042611 988725854 322800379 929962585 956590403 994089824 419192690 568403932 32065755 334291001 139373172 217914654 613302322 799869970 411008342 738847002 237868823 614043253 131932135 570116120 155582104 483360078 993509671 999083963 404079107 648860811 189622141 353677621 622799972 903704811 972480908 984807132 600991033 622574899 61404846 581559178 375620977 847124485 482174121 962430650 301289343 739113762 68978552 452694043 423489947 538494734 737893622 760098380 515479269 566698985 199789113 293171105 467786092 959196440 346254421 432605520 558137735 572170768 850031314 856559066 557120717 919030472 574373689 575551108 794424808 902328386 984541431 998447158 7952920 352886440 265078949 675974781 234363061 387262279 206314906 314520288 565112414 946939707 932249043 963543345 822547267 837857110 782439857 928427916 399581007 594741223 204449066 243562603 60174660 523657816 383815595 834601603 506539807 930278785 845198800 939833376 981348779 984753591 685610902 965821930 335076297 776495030 673513769 901501583 860669240 877400388 840749878 972887919 436092471 510971890 193644993 922957141 724286982 762980485 457980459 546276341 191625756 517847022 16846708 456694787 284470741 976791073 691529602 778818891 945213843 994757855 929372035 970767173 131605071 935395827 993620385 998021199 123310987 187062422 179266460 233785499 409778686 646742455 328308241 826213906 875742426 995390904 132477928 741019381 266032343 522564700 151766861 184019858 590058850 670869072 209733597 423632251 692157462 706231783 782294883 841883565 499675430 764049175 369470985 851083011 673690434 931002160 338872891 629473402 960648846 976297631 759727136 923132520 417177555 615765627 911503555 986541310 994123851 996417900 227903389 673418110 215781074 555702700 816265739 945772907 221620207 244687063 836486470 982315664 496440925 730061018 687974790 720764136 294417635 984852790 43533057 561973460 773190533 925339363 420450848 841357325 565650239 595512650 66206168 813015131 737217552 774492789 462976543 476767648 626974058 817674588 367704515 735027720 361376880 624092060 856562083 932530405 255704952 988916924 649951253 717833957 440433363 625521362 698574908 797095843 195201749 942815898 978102266 984198226 211713273 253290912 226832504 382668176 810960115 890124504 864195376 989210570 699885471 819125826 734134957 768388522 237547129 413057046 310754968 488235607 24971712 968126292 501889142 850990117 515800289 752275037 225580442 800146741 223922514 910106462 66268408 634467000 196432084 272012101 629203173 697826043 136302856 906558583 58323485 930193127 983616746 997266273 230004043 954981111 300084387 955386249 744447733 798582938 506998894 650040676 586005176 882301251 981236425 987082566 773364171 797689034 965639866 992161130 884491861 947046905 765972435 821856795 239712596 470357670 931718822 979861378 192543579 776429403 962319181 987334567 641123315 738791804 491351763 827213587 997061255 998379805 365549921 953901863 19848769 68288687 917868055 924530568 355605032 726351628 199856375 847986365 246859198 561382468 650047110 694104080 867147079 877579439 402195681 504194104 487688643 527078812 996070056 998561179 289026188 719888757 845923738 929459604 901587719 982979278 695758754 913052944 333533084 978656320 191726819 949100666 512903906 605239588 323790434 800845016 415834734 918668537 519270826 527202854 952332004 987053928 107877483 627363673 386490171 585887303 689609945 930216469 135637766 923471802 997153848 997284417 864573730 935175293 631128753 786971320 696971774 980864254 949542715 968748374 586019778 925818882 85346102 396635301 975727914 994911488 435535533 535139363 887980908 984594793 405948673 436681579 168785563 221845438 979592614 987785415 74069606 975869796 710140786 965203975 644422443 828245567 394602813 414507185 235517317 645453081 846847806 869383179 355443352 398278726 651907806 966129666 821189259 843841189 784844404 819245308 583018610 664112437 112987067 636193030 636630430 904455802 788760891 860729314 914585637 972520077 717722849 752887158 747186357 982343338 489903254 664964125 358417662 786099678 962078913 976776484 974011653 978154127 784639177 900725467 146890318 405674085 227711851 369107150 758338517 869854256 821310789 879191964 505535129 550843806 248213437 316245659 20912889 550362152 64308391 588945164 181640832 757329909 907769741 959066408 651066526 983312501 701644686 763803367 963603394 970086042 280687594 694481558 584968336 922750117 561871234 657495688 699514142 792637063 413220246 926209233 502383664 825143005 854539491 920971623 547234226 903579848 108320880 217855194 766522208 928261962 567877383 642925232 571796851 678691939 447171507 527864347 800938329 844961777 84487047 789464402 583220864 861865995 348444983 506579015 558222155 882333464 979857107 987123760 217014080 234084483 837575836 900062710 795144217 851119051 793852019 974305594 931431945 948480873 715418462 905538644 736605756 752694401 809377002 840870450 118587320 222958067 218681148 726407321 796181954 848245674 243007256 896294354 217130633 561333867 596694230 967382767 414015177 745833762 643483227 956152166 745108960 995391109 503055001 829062284 263620283 920104451 260675975 920746894 952288365 974885523 796159594 950875237 914904610 960661422 987236304 996245355 457401724 642930352 840641936 896568994 110625958 205523960 271631416 653210777 139423639 464886354 452337741 657609491 710152472 952804512 195896424 544936409 207937237 621486817 36592563 447605572 545748606 603561941 870870571 967060943 752460172 839984775 61567209 712705352 186767341 847303243 500630626 518644031 256167859 557132442 866158374 919530206 98772563 411356550 290128722 798585277 817258094 862528996 25508376 866324976 987903845 995497949 547001483 706552870 312410724 722141392 243763226 424301985 974611285 983914334 372084531 507338047 423428298 857761154 68883302 720996886 977272268 989732825 43983395 311583903 314677471 770988141 137883374 883447603 843508739 961350856 432759930 709029506 208391794 966568226 437400321 450005049 86648271 117541526 658461292 765322112 733637801 992085792 332472623 564754621 119516576 692006056 805209305 976425514 633769767 668341883 494202077 646463956 400599731 822614862 166252428 525051778 426571754 609672657 632058275 886378089 348260591 436563924 788357813 811276951 184415543 780831581 137933417 800581790 437324640 740750052 940086806 964565270 460546683 843345654 244165246 295024937 109573159 463512149 246347199 965119173 254503615 483558284 585342294 755770150 81345023 961072780 929964339 984165589 882484006 930075089 800454666 961557396 128089239 745277352 984706365 986299894 702250271 995630853 866203385 983160411 749370902 938655785 68381935 78522808 193895557 741364577 94124959 480696924 313255348 746451110 399475692 871233232 393902297 542526993 757750164 812134704 155733086 167472597 262712321 874030659 556959442 723844497 237058549 614523899 410353203 894522446 728544244 816729174 314373921 335662644 325293628 778650581 670703298 918471516 335286145 968889790 632007205 845798201 927137743 958743863 144510464 672696956 9309931 262200191 815150216 823511055 65813643 479801387 927828804 949117854 532206791 927693870 32324263 217204914 730540508 857394408 772639581 807827529 668272485 893831769 732769645 865442704 191915273 386030360 685805541 886295828 338693454 507628016 681958494 921653090 741661534 955072207 318642738 830528683 684113227 886814328 588935118 787243994 996310444 998938540 77313119 177024676 942092534 968171185 976529125 976760602 539417806 932106936 191261265 897702040 320322281 664055701 483586670 568719560 221040819 877123670 412091901 505100081 779270300 801228532 887636904 983144170 480131003 677544423 485676084 783635441 170374684 999060429 964850085 995852269 134769050 255658541 92571482 628328549 166825616 282365386 969684918 990206397 232170798 779656009 309450017 752463746 613336690 757244959 41847702 847226774 719956457 765900636 86138562 788590345 693489661 903373046 700292746 946775108 428033609 887967846 813927963 864888628 118725684 201838693 163082024 392039287 613579930 639816428 237012958 895065114 260093755 544434646 854855668 984872348 279077891 428416659 137111659 621677437 215642430 914578022 737849067 815837437 255340175 853612082 444076797 753507579 188531961 859031666 275902706 455857714 508225597 819723074 178550857 925135436 61335298 740609549 462827960 715578926 238071827 457062382 856943875 931245916 334180512 702497875 682724553 995193675 48906671 544264918 753404948 973470608 642713852 905713011 222168302 717258542 404277155 620690810 886062348 976541465 946742241 960452271 805642054 987093730 992048700 999322688 91999386 141040055 411460736 481616621 408106680 796407539 979049141 997435786 646021654 811296218 161079418 806642711 698494910 729699985 284005040 808612177 237810292 771874221 340052978 717583864 742822435 899935210 591546407 859713780 859762258 941681302 634224547 895229472 796381455 865685086 427653171 655922783 231364799 627689875 994592457 996338818 190482142 613963131 675843786 727051861 955716980 980565554 945654262 959310404 546715812 926096898 362864183 393783789 229904134 551146269 74309309 837317002 949530077 959821224 968978673 995415397 402943804 405892764 480501981 770195512 593991448 654647576 256121688 641777396 572847201 882892683 955535138 963583626 824111718 908472113 231862917 601857853 558256680 804125055 901351845 965925780 511260102 567074934 90558174 283227221 46187275 59079847 792572170 823356302 155499541 405583555 450657160 733092350 286379143 863608508 813936486 919103642 187480418 782469515 371892375 863586034 794374013 828943077 289351620 608097693 345987997 531909402 407356443 502931745 330811289 497896452 199132491 421401085 123993165 890110351 392091374 755239668 411759610 738753352 953191090 982108173 887667189 926837395 16198837 134890271 891050625 898784057 201798098 487224267 268855960 970925404 677896725 766982449 605971070 608306320 124165654 214344869 501927889 950407620 681299814 702819121 41107046 583255601 93160884 287662488 836597149 916856376 138317537 486611897 287394039 832335233 552457921 752537160 663409968 708560229 654403803 942471687 18616403 400506423 73430482 986610464 255414236 659686823 761506624 810140680 771263867 982453282 85269714 859180840 501985559 619799183 494324733 606828869 602881741 991707273 560783828 823163528 92101337 950677298 345398676 696319903 524438730 721724765 958380711 982655690 414779252 918112286 556631875 905399602 316784534 797419695 455437845 888652341 164300537 604775636 156183711 678229521 867356854 976055557 505211731 527318412 272309769 685913654 296856247 895574812 905193663 928516680 930437304 969571758 675657792 816227893 842789282 990940063 614312055 861651799 161341818 344988893 184343555 876898441 287696726 379554385 246450218 541704088 140387128 562423979 387434763 493670016 303541068 743998146 408995713 452662164 18607493 354643566 855680667 892298646 180702249 568767266 703555395 829437357 465106103 576965361 917554681 934088656 175447291 312028678 814458475 875717952 283738160 672579300 689895991 725203409 935847331 983137669 215402122 236404452 561838489 639473238 581472753 898063213 619697904 893083029 540574388 562714805 771087579 778098386 368772925 548253202 340296941 787390952 210870002 665743211 699317668 775225132 917546636 997668871 610861567 827851723 785924108 966539375 737408694 857289409 929061063 951451063 574549983 975994309 183202269 896969511 560423105 764657370 118994802 230056064 786598114 928772437 353512932 747816965 581433694 873282597 398548473 508634840 944044761 991761133 883708960 935863426 913653283 989889447 970787573 976929806 330566856 407644939 332647130 830109914 859539421 977979400 55151854 320915127 620463507 821555291 848271777 913334629 428796450 657477658 574173153 842820510 49976409 131057327 435921216 928083973 561110294 742894630 294058998 661580590 282641181 817424079 15735909 872590901 627895720 883032817 129035568 691166475 18907337 233264490 483070488 504781725 319233735 662847953 849890498 850006895 720464469 893316409 830856082 967879172 749504702 880937453 482845341 538649491 883708344 966836279 692636158 805163210 566204688 973983786 595811130 951941487 893118978 971358669 949138922 996650119 705880253 897528925 868936490 941791267 209451531 560703149 134207842 822838783 5334784 256146015 994805127 995281819 991229134 994788871 612147188 834868049 992029732 997207220 671435442 792821484 759801691 832397051 939375125 993492947 779215577 794766835 320462109 603269607 218987182 828702979 227245638 580658200 722509137 783383791 374565037 982327725 382485046 631775987 900377795 932918245 361628063 591834802 536842082 589688023 695493718 985272451 799380495 802910947 379553550 701644178 822223103 980913558 787278218 792376592 173099543 624323860 741099228 880693847 291011574 521394559 743754435 763896285 437107179 604440340 917006846 930110381 700535905 854414721 242536518 747791358 304227109 334607367 688424849 912640643 864351340 879827658 26149757 667580321 965854241 969113236 838424583 895845968 286399963 710973151 776271230 959363065 411504187 954448504 507777830 818047231 320307093 680167479 742607926 784747965 536025297 772357557 560858890 870414600 841445958 909099323 564767918 938088949 213988246 321304960 178218999 325691559 631511072 783294128 714372616 963290413 819864900 893127130 181480532 585941041 627221767 778453367 769861186 981523702 791211861 795952700 499671484 646043672 270902368 453537982 894626510 936115741 753967956 836074926 553500413 579871257 600781620 890919423 797364867 940950000 942775328 975355915 533260304 782005320 630924900 834167979 522763096 585145475 534412125 904733655 469786091 985983322 307242101 333069734 906001128 961632811 117686833 625353404 831501588 981516733 486819150 760838175 283516965 601216239 42378303 457778804 784036191 966254327 519167052 564861909 858317552 971922723 190087554 387640402 45939467 453427060 323076986 871833144 520812636 840353113 337785740 876619989 317147858 696972615 2008252 247684948 578922817 823166174 400343325 697125723 739437832 834342757 815122024 886019780 296838067 382055741 194598213 516824886 759168069 993583255 446927025 700348227 316044734 907372671 220655064 578907579 241976997 921446452 246425432 298582890 897971243 944631208 884272744 884457165 802292685 884735850 600146090 717594612 78396845 989468449 598513968 660105553 556138642 677797010 476160475 587626101 420632233 730870065 380878956 574221004 851273968 981105515 191559100 369729742 240957355 777220689 343932361 451912845 990296258 990928750 711909945 915423349 286991494 329080847 490382877 625267601 80098084 481012228 822808535 850405430 113495969 305360563 393269809 506349026 618379235 905761216 218218670 626011998 320944663 399687798 817186647 921446582 180304270 339681263 803492656 893918361 127972424 338484802 187184960 579257981 553436114 941408974 574345839 784988063 369675422 958560827 461202529 695371181 126132972 247353901 289012296 984273941 397621753 624711479 421053664 948834029 732640103 972246004 828044122 859550122 783785149 971009860 822684619 873918967 266578318 622451257 524684159 859336056 836082565 958118652 945836195 969292051 527775246 751620118 463943759 896138729 878852860 967746358 582132536 681441726 974140185 995098634 549081359 753028926 858774174 897660749 404502025 754067485 430043336 686707984 448054214 510994063 31400868 407200725 403969157 417602311 342278046 494204438 805073480 857818210 226495551 572501091 88191646 492226029 431846025 648809759 298221513 489287982 993896600 994269854 85653512 134235173 298587058 312712219 527863029 916106459 124269010 252220314 280123244 942054016 900306068 961756556 260739783 894603976 292029499 439679026 52163517 645851075 163676658 841931860 70012063 79442445 451224762 676197835 513140984 540631097 646267803 691236506 64878200 896347093 424454005 698651081 48156224 90134388 504014117 722229053 97184964 485041333 73534888 555935515 585539732 792847396 100231171 934847720 341509320 705333720 797634382 923247402 643434146 814576020 920122755 976587344 337797576 876526443 763135502 842261334 228638989 860038083 504813587 716442270 261059451 597989809 981134102 988600463 137914678 261337881 31923169 132655345 208389036 761995770 824459452 881666585 38501357 153747352 910786744 947198898 882215964 960340764 209953339 862505113 333504569 573797048 429522648 625338819 936440640 995947179 282686370 944235278 729536820 889245598 21021415 560754279 459262540 897266044 354837635 898503408 474638669 771299211 565929315 873850233 170596263 862275881 46427944 141933292 343240306 997056617 726315031 836307490 593862609 613881460 515810742 746060546 437352313 978713712 958243135 998589877 491134401 650252089 181711523 936497951 790418489 998285172 251274759 546742567 879894766 936686072 979336366 995468051 717725950 947325365 403896102 552180404 775486191 967657440 249413316 836049692 370171355 667288016 143994166 743264913 55883969 713024205 687597765 842716253 401982849 705774626 109316775 544326698 559902814 893016332 702212284 774675547 666013513 777190054 14847370 691547127 477256222 654734931 977748389 996047147 604967632 804045761 86573061 544412649 150845345 381226959 319559659 600282945 643119032 749637438 550906320 742194797 451573641 669001025 210121036 993320440 128835392 216836883 529808944 831368283 690663854 912375977 196356396 723180473 424490840 936540296 806075077 886728157 263365987 565189545 210540904 265302335 504617248 812167355 41248986 286359222 698137301 876831110 4045110 889175960 102904628 184206288 242596282 255458748 840706629 890339170 99420068 735090027 904403748 959006260 913225604 941332576 183298552 762948719 756355145 948884463 774829581 912362186 944996337 960279874 28072772 796260698 478977704 686293106 311289025 641366780 861002329 988016779 183689223 996289458 292280997 664737043 348316447 793186520 653050193 965176412 776708030 919855945 111567762 654825286 599550111 987428328 819917585 898379468 833169445 869799874 571601698 964002485 474454922 766096019 122608283 958140456 946696810 985655046 671465161 899028541 67834690 789444631 307495133 862796404 334530064 651510603 301933964 953269551 193813222 717000845 339394697 800775107 760002316 844559562 327021569 711514609 491538595 938853994 6440188 959144709 265843223 526671881 188882147 650520017 840141499 916035477 350280054 607537918 344584887 665616639 943236540 971280319 312494341 780716141 966541789 982124681 285463979 477798739 362023691 393368713 309113723 993315401 759093357 998145577 983436659 996324220 982408912 982706786 203498546 676192257 799523511 800289119 214866457 820160601 524458792 865970278 640152594 679345696 628588411 956447650 575380435 594892769 99862258 479665878 312053674 794270019 680941512 772463792 7637863 353786067 57907996 194269582 631578035 672183454 29904032 858068475 989703343 993053749 928056371 935785594 537489069 562277552 619357106 692562678 562371562 602728951 961916600 982398105 186691318 715807911 596137128 616849753 236171429 514584624 457714596 474981468 289090005 655071814 124856035 506883716 448776313 887825639 483591010 642419724 864783414 981191872 746366470 827919225 869023905 890849174 364290420 471320126 15588822 923187318 216796506 791675007 684562522 705765772 168664147 315704074 948384804 995105227 572573445 928594711 43277261 494481676 770335109 966455163 518170413 748474940 314872576 774649996 296416063 609288410 8135144 820754954 320277517 865677753 21335992 948544710 595907252 956854513 411919399 439047148 777181754 949691544 383478545 411854240 512566117 582282708 182678727 409138439 998596892 999095799 823632511 851593200 325358900 775252472 285994376 376327714 576558282 864032996 220390104 771537870 431744086 813696232 877241413 977672718 51573256 131372989 476016587 557146874 491900855 955764783 549624192 566042327 918734879 978884635 822629312 854887907 426671434 893728911 160384134 874912967 821317670 832978167 800922877 900051341 221519660 620599860 725051570 823418970 388014626 901700589 749752286 807150407 433952325 774160400 638007323 916690765 471035890 961752782 865550965 992975951 83409297 882711674 943823122 963185843 723597314 923938332 443482822 856610384 997761717 998767596 263147787 809512199 531114284 964435677 894562811 915175080 61775822 377983442 653855514 712349481 614984493 973670225 485958997 948024239 514190835 772352029 716855543 905312157 558331200 962987483 470740958 756084203 450261314 944184686 230236438 763499381 296349405 505782065 495390859 908321697 452926398 615888528 757060697 963405829 93647689 363284515 80389380 783507426 656461246 875954985 950909408 953500268 596559398 860636831 709788995 738319319 926993756 971815510 446173351 483173133 535869884 610459955 539934192 706046483 867083235 883797200 633061866 773707502 234937575 714709091 823311856 843049215 537118397 997924313 965243455 982855957 771072919 858194369 881661638 949331596 118085823 850489544 848310356 904351211 167556847 601073112 396314587 941298923 205114044 226321302 872884292 880494115 752227426 947525079 903711880 979032725 170621376 911581046 181259951 968446451 802629288 946382043 830821120 948415578 742043552 749253267 76470164 247203376 288927829 856859822 496525289 509082419 42206005 302562070 76652035 909180300 855395834 947462428 966320290 997405107 413401000 498137995 588080200 996369214 943838185 993291797 406182470 684076961 496741461 500808750 969358780 995513641 767949294 970667713 784985732 861893464 925146925 993585079 53004554 186838893 197430695 816973217 621997817 989120794 434847457 893341107 509394045 704143679 159703410 311307601 69586393 511531640 720692263 954842003 249612526 746276191 784892260 857770640 463336296 807714703 63023989 179192198 232321265 757519229 993232239 998130629 153354176 156888881 520056701 687828277 906507631 940901740 357431816 552725240 175364816 732686366 135110349 433582153 144639851 728507205 895016750 984784015 970045045 975035724 586225959 779719483 332424259 858264964 242812542 800978833 637666285 811302255 606215782 622557286 276807231 749653900 669364371 746736333 125183802 284618021 224998420 292265073 689935978 919853304 156981489 492932222 859008585 871392204 889097394 982232505 257659250 937998463 860788317 917892198 356381146 861592782 60158512 784122654 127906766 348125948 612640408 655308998 255662857 898415265 362251331 597827064 477612767 517241467 144057062 790741759 322535810 504748167 979516446 990363288 873846769 909946869 267648814 331981269 559801028 589299206 165608117 534895870 291421191 450475740 425215841 784092326 257772426 526234520 12291645 355563911 874249699 986183203 533018785 627398035 976525207 977007647 230522585 373679511 179946731 303057284 17891396 28894769 217191912 480864268 637380376 879485223 827608110 931664402 640225531 842581283 464103698 906507875 550237091 918574618 348097624 521243503 834853007 885089810 57040508 771487560 85406164 135812364 308744743 716701670 872211185 959105412 729994703 893397406 195241599 665319977 269424848 498884356 909034263 969526774 508076569 681739256 751466 242945829 649678236 649884827 113099544 566770501 838757079 888935796 275509410 683320017 743057005 795275980 996973766 997565210 303071672 566350665 122845283 783151101 359427132 545817801 733614255 740114546 980389230 991553358 72202415 631321457 599281292 774978413 388402656 775415868 51691721 146820868 458956690 498482998 172941330 338073164 75540679 198139200 217440870 848021784 706378243 864837333 759579058 965857845 511997006 761945150 265144799 290344060 106580044 265140556 198067982 287261652 495276441 830750825 543733062 945269917 380166622 531961541 195291684 373163382 187446305 397194236 569825695 871352908 441143298 599595783 631927909 847893893 763100381 990205853 681328306 913859751 476679599 753720109 669114104 801592323 673757298 732338150 411156947 572128879 454570347 912880716 297738366 580715815 824743965 955323298 899433239 954314473 963829281 999383146 604681419 773006015 698338827 728324222 211026077 807999645 355274239 470261660 180750309 806460415 847169056 956130019 147885181 870081832 967500690 992575194 583587862 908758534 700796407 986502756 726154161 883707751 913700828 957637180 510100320 897857500 108765294 950809451 566684153 972138919 26796395 376738113 487001646 739943666 901508876 966006416 842823465 901392894 261351079 302928833 911607913 978471428 223712988 643233042 137407133 703791654 134973676 789475317 245733714 289070488 348695659 449820305 501554326 834692051 850171920 908703140 354867186 560302573 300922391 324559833 332140843 348580535 334524915 356975853 407801279 750809972 790551141 828785799 161720070 850021437 875396446 975978619 353918196 596684378 396680359 828198872 45941962 506038785 709803877 791072839 416920994 949698099 961600367 991896770 581929629 992276311 915565951 984546574 792755510 854225172 841520271 924398791 609052119 716501934 265278014 362028859 636947965 760610439 200374691 509500038 717115300 844423780 64727313 917972215 497017851 722200909 253704513 717942755 752708942 842078186 272225820 744093992 648991563 956672812 898044389 943168009 96692750 420643009 502616289 710848139 969424910 971040233 867472380 979226078 934294924 990354324 500623287 602304354 968442707 977160875 781051992 983676633 45044515 551850770 102519993 743094170 580067386 898958903 989793125 995356602 864603017 912267798 515984043 956066957 151750452 804571683 188740592 470058563 179839612 358185517 265855456 370530469 312242758 399086783 796347236 861525814 731487944 970867818 972306176 992416957 372314241 453349033 707026128 955522000 461795193 897618154 709941156 789495312 831813663 941078125 591123085 745674246 855055504 940386130 992474702 995038241 529873222 764886910 159134627 174132090 396469673 771598702 43824503 784822664 386078500 526504175 975020419 986921000 621772732 661722370 747610436 870198180 265643895 289214586 784210036 784535383 557159430 887726072 556938324 874135829 221976114 932281160 186205568 627710834 810212827 885037008 731813393 937345560 260508521 885360115 476332110 785238007 835687193 863037098 228668865 876317115 258421505 796385442 101525718 273106986 142746723 843659493 952253833 954724689 961136560 968932863 196827126 950790467 95594854 939858320 711816967 806992521 240435196 632229651 336715223 957829881 856094895 943042044 861095614 922838503 535035236 685318252 972126622 972669711 412576786 863992570 283849274 734579024 623310362 926253383 486706794 569128961 945228233 960468013 391893416 964692173 110339256 660383962 511796016 837241804 962933736 991448319 914415160 918974573 668762189 957185659 367793814 748982923 93335740 229574104 686504354 726831672 971164897 983993948 618310316 687696128 239122287 277500848 6870071 465936385 183246129 625736982 185468204 396740313 898572919 992336257 754797505 775438231 541590181 923947523 185613245 256681554 537656141 894159224 860070880 865222828 263104493 420806996 38441309 569893644 533810560 941998341 907977479 975106369 579545399 658931700 145904121 388959963 729224836 729983569 998451020 999319417 979187058 997021542 148089843 862579260 76460760 322862457 755970952 878111227 30704714 929364674 621095570 698253509 814228850 991812048 158652717 696041989 708267569 859676837 729468031 867622661 683638819 725815040 956343151 979935564 287855030 978056786 213119222 942765189 910564570 996849468 590959973 980390983 246919839 959493759 546203619 775269808 463824376 519110910 597104352 641147619 137589256 252887208 831168807 848247381 146908124 964812123 518458021 599939440 63798620 626499459 984193950 987485634 428245253 955211751 321355613 633075149 129939671 371038897 730966269 794758626 409434710 663738730 872016365 962147282 22456879 556149110 316789650 825903439 257900233 566842832 443794857 983079199 894711464 902035772 225077579 294537431 653240794 769369718 911043106 930764946 262876723 747398681 519070179 779666957 544595236 894551950 125430141 137105541 515566568 599732757 111824921 897264130 172920924 222835379 460623145 628279048 697833164 997380007 209327093 719978895 638569418 998644808 769842061 868254511 961907586 976216114 571075300 896662236 962401674 968217924 717204224 788461975 938942549 973012043 240889770 469961631 75268795 471827956 578784289 795705171 294776083 514503563 947913278 964253545 285756998 881463532 760573714 793369205 471848046 879297471 283825816 663865214 77561352 873465681 442469770 933735537 634748563 884998414 399424053 739073797 273988308 426940880 773878686 934831366 305681218 711302042 255735636 885653457 513642802 545560544 994372324 995858195 259159864 579607801 538583952 594057624 257836718 910049460 399957590 972211994 119446519 307040933 396361282 636989088 589724938 690350357 720922310 889538374 348221972 933731001 722253043 835259329 917349512 917772018 633440601 877584759 649359739 956753425 381134901 884664555 747589816 929197214 438670860 736482211 374060289 844967630 736966535 974777039 979725668 998706894 432679588 796581089 570647324 728087432 632918083 955236350 102184170 579693797 794103011 982125444 942674323 999299959 748507272 764301077 904379422 921639718 631730281 637470803 980950296 984847000 454772358 749344445 690661823 714812016 475064625 943404393 724528197 852751321 820800263 861944057 416912292 761329604 639970253 818859399 167914257 430797377 679585458 850097889 493900588 558264099 799546648 958983594 351026066 397352859 984279251 993605041 225076884 997565161 876279459 900647102 708653060 886344298 891834473 911994443 189968136 950551457 215996954 915508711 794153950 951977868 142983288 507848169 651679473 677081763 389893345 690804916 181574900 253807926 373356981 922281477 894596770 949814566 942156763 954519884 23191375 234456534 361981620 563878464 101928260 806421941 535817137 708139334 433076225 434422025 534429981 619237996 862444152 902618455 386187357 847005998 955851361 970477847 924105517 936174157 413338839 500034905 331603807 937827178 539370950 711543924 126703037 502694437 103070635 555365320 942928674 946904383 898234864 910234931 818327562 956835608 231081701 470860103 17780415 893864674 245688464 574194844 693826962 971262946 455093761 467991328 928913363 936665051 634028504 684608244 610575718 646343042 584527796 646467993 862375659 958851834 321431622 387243617 975175930 986558246 73239950 668765677 392895127 628402488 116724747 521153219 940696528 972866826 759122202 910011068 535206876 926865131 543513782 805359034 630623636 882066000 135367591 710566962 31752997 932707287 542073982 874048027 962188558 983760324 192874335 383513993 475307924 614220019 512039276 896641507 768823668 894973795 538630284 929441418 69249918 93414893 394522476 497101282 79434499 770063993 192778480 899263665 336738458 631855190 753602282 877749711 902321511 994611054 548051805 725020763 601921126 982640271 790373189 811024256 720216340 931227416 47590187 624262777 790624832 805288547 491521879 874977691 18384921 458449679 42493469 163660081 889624418 942668594 927154770 978214604 957617604 986572794 962085312 963518199 432975210 682474983 367821933 524073000 756363925 830176691 960557118 988859853 723846437 943172395 764776723 800661652 137997914 801627651 529200255 741785783 302688460 736707995 943886527 945009340 316137957 751036318 112810289 938243908 933570131 967791434 992709758 995773173 139078700 778470849 989362357 993118931 592252275 992347343 374604270 501575568 663105283 915104194 482871673 723275526 399042364 624942741 481139476 737973908 626753580 932329036 174401404 918496283 387092349 602312263 310417642 843626021 956617488 979254434 564557812 802432045 86063254 648358886 938141566 948905462 114661847 533694031 602673188 676097806 274749155 617660337 811143005 904138316 627358304 838510627 232337847 831514174 618565148 867823293 893674369 954067864 730367060 975210929 885045289 922965421 262639193 278840064 441931093 945569813 965299642 966170814 270042960 513360047 641065594 927828744 344134855 446290253 332763920 428670434 325147237 937105198 121002390 668874186 71116454 904184463 271990908 460252283 1586728 686175227 852038348 908066635 807463763 924312587 596445341 811900653 280652978 954619530 105623141 552821546 707766489 756135177 441715390 750280841 704015049 815633565 978246245 996782888 258472740 384952640 387260751 860413897 747201201 847602773 783287346 947689286 656094242 802103902 97202635 973433106 428954300 829467798 350185061 539144936 570068788 663704744 34708660 238721202 171958366 757946255 320128440 425163113 422498044 961191124 477892663 560161600 354277248 696009729 167534237 804747756 785581113 903954170 263091725 700778209 209447185 540474734 866080172 976489780 825352099 863637838 408566832 534109203 31801012 347121395 625996238 650042390 632643822 821517384 905013065 967424659 343963066 368137343 860585185 919508926 154101770 997758241 733603093 943121322 890593148 898697428 214003453 214525011 896068772 995192631 99385638 812294098 733237772 762773011 816830118 996418485 731107185 820615789 298431593 394569939 330391523 872895884 52949881 541015485 340852580 666911003 52084813 114411299 307657701 775539798 935621303 990105778 529468790 879268330 376917403 758556426 467449897 586673934 551462173 623145335 634632428 787316333 741990391 970342189 86287261 654214583 538460229 852992493 344087209 760194644 345731700 396049760 496687460 928975379 629305060 656346174 676368901 748642204 308953053 738115789 318694009 882962836 107830268 120054276 765122758 772429807 702075171 733495861 498762257 869945639 988407439 998921955 806938966 980855750 296705984 680717731 492701364 872760096 124624824 210235257 457251609 954707337 904707673 939252767 875776784 944125355 634699163 769659436 293939083 578029088 743427831 959699254 531520891 744210244 269863825 425494209 379971342 795276608 227205122 252718662 839785242 924821295 572113175 865325425 770174038 880775520 307070869 790670403 227351492 835155195 281029141 793373517 103925333 852532594 780095242 797810761 890136650 977446283 90483096 171521244 938400696 953821395 868452221 998076507 680200958 794778206 450114002 907718380 801242526 907375397 817154210 870627818 915598299 980195276 131435978 904244877 201185648 530261519 256131911 954913363 998449874 999259053 297585596 868207822 316371734 995166469 94816501 599810015 986103788 988021529 171217797 955863527 422499823 750469487 302324888 506642929 103743074 890015718 409547021 427349707 953519558 969622377 258205718 910166625 810165344 987306085 10028622 420186979 729529635 996967799 283343667 484372659 511709726 532805237 938496417 946880446 819449649 956019760 736159142 891257753 267239272 504526042 351587843 877310739 236204186 391038064 143393035 322266789 700485588 749834778 297815142 781151437 197061500 664849402 452343926 784734238 924934679 959308219 388673823 916372804 970510512 990428770 235462688 577350302 806839740 811072958 758731144 910572423 952426591 978528950 289462113 470897106 335640142 755389007 816098936 880550204 657370342 840024025 463710717 954775748 657457513 708121114 273022272 514765982 474869532 787128895 973743984 980855675 20008331 152016579 667176405 930445064 898349079 934440616 375221848 562120966 536173472 927252224 393940745 514791817 481448671 962196947 482189834 484642798 728439550 865951485 744466210 898063605 79287596 471362645 496850212 656670479 241292743 807817553 687198672 982710402 548954954 569551508 770427268 835555733 888709895 988676012 958675029 968528096 468190226 761768841 54214830 271585011 85518764 916496447 589969237 923608514 249208783 948530046 777170349 988252086 236906014 935603484 156041414 567177843 847937745 904476373 90806181 346143583 348985494 574517900 883294207 984009614 512119679 525343986 291851115 949366286 864839299 933510042 412615274 948231063 309804476 423524866 402953700 866962104 98948255 820998117 303901813 531488833 192271681 476345728 515342336 755334300 445741408 648761259 782553140 979791013 931918458 943938897 173664851 916350451 557346864 682214370 16488917 401542218 553458306 805758211 856455414 857076873 38277801 951350567 327612862 753112959 782259144 994431706 516081238 737706236 781303231 932733717 266821780 682564636 280631893 682242285 591982519 623700251 472484274 744819938 197767787 351430790 4493266 434121593 199727180 329145237 28267547 775734537 182781213 218490267 957546992 997165335 573893239 950192854 958162044 971750496 118281529 829589076 498288164 941476418 570940481 982911535 74628624 386874824 578360867 776868422 594525860 926852559 89140259 847061581 428053521 664102235 986794961 992116550 897300380 898435161 885485311 923804938 282349137 292107084 690236689 831690028 955926398 967940599 309308846 689855673 261937676 707172791 831014758 995972823 298250874 569802525 805196490 904752680 759374698 799648496 245232403 658651675 863722389 997586085 338738091 377545267 176514841 880316092 928035214 931630686 668586403 684339065 896814516 967598623 895672424 966973371 562064696 668291171 289494583 350892197 383892959 965785819 380380848 803361384 460143586 780942353 731714253 784441919 984235455 998457811 377902308 444201875 344449585 947593988 535017262 764833690 893518936 962503976 163073953 196438501 159668420 595072150 145975825 211092179 161241595 404060859 951320465 960675934 758393626 811134275 157794908 641710899 414221350 708077668 228740694 476344122 423007369 630746024 20562270 187342861 288457007 696795388 703592966 883426031 348639276 696252105 245382254 522061079 653026562 966873396 56650429 757835222 196232425 884098543 673141158 978501276 921698612 971710725 602932925 739171134 772805895 851838057 366302030 615707838 90950252 516212554 703567961 850619158 239226250 244785506 475281055 715312600 953966692 964614953 679936707 905425955 888487102 974093698 955260952 991053462 992159903 998794819 218755911 341571764 218881385 228132354 537704910 948812297 466271472 919136979 233908559 354903966 335732947 782850748 430548328 995198332 855521124 940390432 337665199 405922463 214122585 730187870 511645063 869444767 122404342 143307181 929875073 991384661 517783863 603120853 225119647 635405406 438705722 961759367 907019681 914233242 52580943 115790629 64049381 258860517 974856040 985380941 639650551 801482843 333443884 871530514 880855223 948656739 423179757 581810378 147651370 792067098 892939547 997645711 421392458 566014299 746647221 897274340 744995053 779780416 810234794 969665265 667443510 964470843 616780859 795015016 816987248 932590134 215750141 446341022 286220780 419938735 445076125 948612311 845406272 963450711 437952583 594058543 140108347 923254190 781874108 942407627 723343742 816890334 507964643 655126865 381226571 924222146 928240723 936320957 308126806 758417869 58619807 267739462 945023594 984019602 522104966 904685927 404552894 574887594 197765158 920228298 661985964 692581837 826589096 930296375 747374285 961389768 283329768 315001354 780197887 817723587 902092896 977149120 377403431 975104126 355921667 532570785 321304114 705330440 467530464 747100584 538641823 567032974 762566828 981569780 726011148 806395184 649917775 749476876 180746599 420580378 405882355 559690899 839889939 897348660 737317034 874861959 118696087 571676157 228291376 792910055 714466156 998836428 157744639 364313478 76453471 461483004 881197812 924993460 236126750 759398845 935600807 962219852 574889051 622071226 237604722 968819033 683639393 824997020 67814750 868566848 482472383 522739575 146709729 209742876 31567263 994151956 816595204 816864402 449707920 557637501 32115687 399924247 599273631 841780287 98124314 964305344 952585274 979645498 716671897 898389044 360691133 447215854 450009112 613462385 880451961 943221714 357060424 759151126 744971035 973285844 979436093 995018491 995659096 996722427 549438375 726256037 152289049 923243494 766061357 995113759 742012862 910971514 633695710 776881709 329709233 377613487 30808581 54229158 719208214 931248523 290568139 687721295 506991163 508541387 57607299 910829612 742289309 844549022 934330073 985011827 4600852 614743015 824578661 926926810 906247414 942226499 883996005 942740090 13892401 684900884 926609805 930746762 214504918 991650977 302401420 534245783 342734138 821354235 425585572 467429041 762152056 986994233 498865579 825577274 594756514 601395972 296123999 982557264 89595784 734815717 645300661 799894864 868840756 927772682 487276641 761443693 663807644 687790384 416582005 733600091 431742478 625775650 531536968 726768597 454306196 525695761 115203344 446080100 193982336 838173257 726011293 802568513 905900187 972272268 57554064 891333846 573838293 974995608 818055941 910946086 943031155 957655615 12740984 623795400 980198873 993846038 899240588 923359980 629766109 790575260 485989494 860591457 726828660 762945783 239721984 256602996 799089121 949536131 250256535 715185529 245923109 465692933 541309354 954890585 18983668 464000441 461889713 487487370 332269157 643440373 512850245 833085946 278121328 991539204 29274786 247931311 234962471 808191338 538885148 676607696 16473231 996454281 88623682 287245244 568819127 909991207 70518403 358941135 828645559 968917741 749201705 917663257 214265830 427906903 560161065 698279165 493027723 582227682 144251231 508934711 338935409 850218621 329494981 483999789 397343353 840260952 21025978 368937813 780359821 992591253 448451639 811372129 428047666 932183044 693590327 898532099 332782796 762146892 401388246 754092876 566350330 761361095 359157371 477561992 981185838 997091277 112582425 379200748 957932365 985000811 882440325 959488461 598263519 893029972 876784930 943091475 624021289 687273393 697347403 892871627 825934952 978365301 738439650 763695745 688986591 975885557 211013528 764148531 804553822 946320237 849990514 991901030 776005932 859774350 494857765 511561258 80533765 905864440 329669183 916158978 909442352 914893991 993069225 998650962 319615389 463790978 440965810 604855426 824583760 973610689 155176194 967028830 152395178 548955085 350679889 724497812 267141911 667598824 375774268 444333290 729774142 775418877 298523710 427354831 459565995 893661708 36904597 203647120 774465827 861771632 125687007 460939464 546357249 814789056 465216572 899247325 898465002 944816657 607095947 775170727 203975319 982418539 66365408 360000519 778108022 875032608 359772246 992608038 904840123 912999838 439412193 986653150 97965412 626449660 915713912 980943297 660059065 706876024 168636667 930034038 737667111 805246375 15493532 146264380 175067414 855410951 818448111 903095222 220589088 305686658 583694983 981074111 451335296 638296080 524881670 811157693 891839860 974561778 309118779 309599371 648994598 876752084 417110520 899026515 678769032 689496646 622552459 811025892 567747992 662276628 563210128 827785787 476458726 524068467 591341701 783045527 802421887 859598251 545839194 961570440 539204945 690361450 616838921 836649417 843113492 866353453 697376067 946967313 88345356 801161733 414877108 560544944 395686323 611232452 888770048 911100172 494360267 876618520 175777433 730630513 972751705 981049243 654598050 985959967 514366897 626871595 896320892 958085702 932300735 998802221 855567906 934020771 4198606 197907394 180544064 441920669 497777812 579053318 391458366 728783800 590953214 969961975 822524413 992700958 813866061 826551626 395042905 524511642 320651198 429910865 153945412 612225605 413726947 627127192 786668751 839339652 432415897 576210613 960408352 989650227 760230855 826643470 587075697 977637785 837005966 911391761 598433996 608849888 404667629 935653800 233044708 904462782 85598634 546907121 234340804 692177833 826178904 937353492 260146691 552654149 683491147 816043443 175757000 489669180 321983171 731557314 225114431 590893646 78097567 242681250 407542983 650889617 830510188 989536761 256629211 337100720 299896276 300540325 360409782 951789636 582064525 731525921 515420672 955337488 372726820 647449219 342348972 533261587 796107112 980394952 229918056 674929379 27454943 134263329 3879258 598716893 248871303 340001252 305320451 744026669 648356713 720384301 518187705 592706404 185314916 507556286 804048033 823465146 610052818 908248022 327991900 618350646 162069340 469197701 495461739 858432089 268830523 627065829 328326635 964837573 688700160 863349010 495970922 791834720 867397460 987887147 366902121 383783969 321262863 792368809 354914185 526730569 913938476 949492188 125541467 222475458 627701697 672977486 597010526 803490143 282460416 613717454 263182787 938162186 92099764 712944813 828493655 905077762 582032954 715951851 525962602 662260941 109607552 231119977 314349097 392109990 779154578 822710409 187127425 730187635 973199074 986180861 136122332 501894534 28073749 227679014 145424167 917086544 914060381 968331462 238939541 922528398 767834039 990237455 641423525 644827826 768858534 963235044 606699234 769234873 636983298 735495367 753515189 791763996 226315231 465767612 462460774 627485448 930566756 933553440 823351878 829987303 234008983 629920865 906193179 925618470 756909506 932789041 306561781 943073332 345306658 982591774 919926189 969486503 397801256 548773220 294143396 589571284 254245162 309242314 700733018 916668209 69729714 660300049 367153340 861677263 478904871 818650994 512702122 798664755 88880646 790453526 834928336 954947097 416499418 531021274 350168497 631678516 373591700 762730948 561760400 724138374 550846981 774518752 314648794 934556027 144418828 812576029 806628725 839712453 542824060 630652103 8039521 230976492 898630937 939631592 886082157 931085520 421839393 691489609 950065110 971294106 588287617 955205528 363758482 640920779 578947556 682058627 530258141 783419713 22152484 372347550 728561226 872293104 41037505 387342490 672079261 977352749 781376061 789702694 762995041 804646776 119693806 161269303 629003723 860369391 860273487 910706917 473984750 826943827 985332441 992423281 262879175 433954611 305549199 984963103 212692203 874309779 470183409 499586461 385858190 989099601 44803594 434984282 189085912 779583976 975779341 989127770 197311268 802530347 395821730 958884513 931718294 934215161 645738189 664790579 910129048 963493470 141720070 947559093 953865833 964119970 423803166 485662095 481777459 952509565 623967707 911896495 478759060 910093815 330503599 552352862 273581536 413216546 617397535 887510417 347337271 657057855 883228611 986508095 961933671 994615906 223009367 818878120 685684943 761368727 370538341 597339233 536977800 783065666 147175462 666657567 25480330 490503789 905663218 909729971 821047221 835473408 542634531 772249444 329179425 535737137 742921865 883562677 887419269 997313318 748895977 932499704 601000173 872872162 908855601 987599038 221163340 509097696 147178302 350932232 94843097 416313479 543875107 930784130 299481198 576766755 593982244 818737593 751611544 815149477 606957162 887382488 996897972 997964714 168543255 474162118 902499190 954909609 548203487 842229898 563023567 710438370 940868835 957737170 147981589 835496188 911986059 929699334 448285203 714082838 564970983 803603264 204698237 497903904 977651214 988623511 454165857 757822426 724230962 864341930 603641346 829461482 43012133 658721602 739173990 754092006 94073416 147742187 348361729 720919784 165317802 331923512 655696196 694275386 55862640 818137951 65157306 806937626 186501142 351962100 751538427 790645315 143469893 966810658 821272754 998640979 642874403 844668710 214140020 491530879 463009790 906562432 536904091 585147291 886189188 964691442 890392938 898936436 178852586 539938427 522227912 573435647 619031283 917659326 242321792 630527862 72298429 397744361 673094260 919182417 248020036 608203140 391811227 679621739 42379992 176927512 459713704 563322124 430232837 821658344 791391685 832236005 177354871 667124584 543025840 800263672 561803313 757716278 772536249 788496789 555275495 861858895 29858156 79643244 209863573 518696882 507166098 603371226 240947284 879327584 113888661 381912016 978310800 979703662 367912506 987295438 418998758 959847084 338071904 769523902 883413277 935716638 623386082 859120403 9532521 426737244 117126978 805594039 708852684 827632266 599490185 766537109 806319034 869486396 875071913 901244295 1847673 107327833 43307561 657559694 971811464 999338654 236190347 598589218 379234921 517704300 560973828 566022723 128400316 748013400 25371219 36391294 268255212 902219485 329362523 555609036 501300022 785163876 60283252 709119049 612718957 772295202 63386262 260842238 532187631 704144491 352836242 673165450 71990869 608947448 552281829 899754917 74422952 275419043 309153527 909883657 585780803 828263115 995631325 997901884 679333036 702576596 982286427 985124483 960014819 975593850 308535491 890971494 827630874 991705714 602162162 954774153 41808633 460575683 814715131 842169740 810377838 835773233 925131284 963554595 513921168 652669793 230871690 462646207 889729224 920939750 934493977 960664482 873172173 969739195 214050961 982390641 425478023 590146890 205053321 686798845 931279811 936251454 299618247 644371320 146001964 256063681 848057344 848891130 503208193 525234720 723015353 875742057 814525563 876189051 668870134 894070654 229497900 247956565 807474082 833453944 292361824 350324749 774735655 776876873 975483900 988954458 451312958 853156226 828234457 894555873 720767263 838836005 107588830 491698205 576826494 961513194 716528610 734959586 717914925 860557392 518360081 929332091 256992579 918841221 870221577 985726703 676516590 902973830 215049336 589600458 463714603 541508290 751263835 831725365 763141275 795740439 361107397 628535540 731188556 934089282 660028546 786518256 950097541 994430504 156126540 644152633 180869406 716175972 348575594 872694282 867733800 980490038 433772990 897525585 255883634 716267583 119895965 898481707 33655097 986639826 791702460 808099604 395234536 426503414 421443586 611155215 85766584 426988497 918042687 927021766 54456938 384273171 683198939 805206668 735503620 786748775 388706651 817313591 743076338 851312564 701670880 991378686 169563098 347181907 667178333 895211768 171620998 180122198 288252686 323837753 562576658 993783293 424758669 990467412 301680234 712940034 740401518 780626578 398959533 590456141 379339088 925698965 632732186 648327527 214895342 229932343 446586641 567363670 581879448 596815634 950826410 982496703 295597804 435390414 745537505 877284025 329128070 555255955 235521752 354139910 642706712 785072172 114992814 189293941 654358074 678111222 663552035 771172709 937863945 964619658 610364641 876974567 312541175 804803463 699858500 734337276 295716202 920614103 73674095 593781472 266666338 415784024 122618130 654130719 457478164 666202923 117308602 585431842 783861943 971412357 133946200 398199297 468947241 965407757 421044192 817504425 979113132 981456188 940184257 986172393 957547418 962133078 537940503 828463546 551863469 950367250 571572404 682749089 752321316 913538070 354642685 874389371 291313150 619568785 427784391 801347427 683692056 886104903 129310233 354331534 766176775 781035765 516253712 586592682 792647633 933892856 951875986 971087509 788934456 817562794 776632128 920440465 307135276 420560434 997220374 997938043 597320132 853977134 14094828 115095336 151670100 780783471 494842958 525291612 560927023 585368063 876055253 892370785 674932754 901650551 550538176 854476815 899822882 901266241 335971566 431435773 494164542 557895606 383536075 887969114 768695080 846438984 420822512 709165528 499311401 718855357 10261909 30732244 830542957 953088349 790402841 991892486 820235133 863070655 400183698 408767634 723242280 844561466 408320115 611687069 823108781 963309847 755101248 820932961 298918231 745058830 675054670 827299251 617119364 788818226 716698057 949865904 492004220 564916378 662275034 668098104 356847793 583301841 426313134 504528491 545353912 935213471 928030555 959550965 735639262 924605507 285583448 875268376 7081662 497760845 466425122 669874244 361745379 497129836 454151203 670729866 123240193 817678524 382526061 840006883 137606362 309466118 25254843 726547631 795586965 891993265 280680446 449365927 133441453 579512683 312610138 890173403 726212813 758395679 463607619 932675711 152330369 791628681 652461883 897492508 646569126 936705397 573266270 955385370 521902568 661943120 105641727 535423885 595658591 652815289 83471665 274026680 893524300 902033765 440849436 743299380 918447613 993513984 818023010 828953468 151929277 965366080 914006562 968102089 377794048 990578702 53618642 967964957 17006355 839163081 289904306 466396314 860375636 962459134 145928076 370060398 530286209 951069319 667787875 677064273 189842831 659759482 691472522 929814547 114573347 498221971 3941332 564433295 883890026 932403678 201490940 351854729 589417879 959032065 574715675 578398080 777812771 890682270 978553961 998603484 29225791 911129803 788530744 880777281 489493701 585104270 99911497 945442028 75829905 191333597 939920227 964850522 958533522 974631629 906333913 980307390 396864222 922898585 968781429 995035875 497872303 922420690 948956329 980760232 604556767 954534849 107266488 445918458 985643080 988517878 246488819 967273252 67004365 762294844 105640584 806192957 954355952 991297894 328592488 478582308 102553038 523909476 230403152 851484123 381637440 746412169 959843493 994340127 20400517 826712782 531773430 664199944 636167022 925394385 427206921 880269516 686504412 971115214 83618642 642366356 923084113 963556172 470241275 910496519 391744723 488356739 855539007 872855610 910752105 926079523 272148714 998385238 865002679 953750695 690265022 968429129 712624411 752778924 932960059 962422746 386021170 483018729 312903883 384476905 300287376 876073850 377154052 509394673 353586916 823530481 329460742 390270159 747288843 993897263 322011580 894634353 240606659 478550997 573510121 964615269 844395896 902530287 476596628 716832274 987190660 996820648 540579075 987696047 275476168 685669740 276313324 647291040 817764658 945256048 79125639 564318103 759689173 831856005 737622829 796129283 625467460 839482325 75867873 462014452 376594678 533198572 447808498 852642684 658237098 883669183 58928884 989279313 946386828 983362127 768151086 832564758 864598772 933221242 743638480 881304757 460923002 979607869 822666600 843275563 328212345 884989877 945790195 967284490 468990416 833777768 189346157 195105048 639905176 681018820 133257797 615549287 751094961 788043736 156575391 370372832 773546508 787303911 322023000 625907468 410131235 613302030 163850710 585242192 477941361 739318305 369912081 591200539 943239658 954679108 313334763 749384636 160582435 492691131 250997656 398005234 816993273 839655888 656271455 754554916 208374312 362095520 78468200 716846970 106351068 293994991 363921772 454519752 487590295 750712261 701617302 978162405 975683873 977833162 502861390 772324582 725990754 921634217 961147564 986266179 731997590 930431479 964329524 970839888 781977300 801676091 127698787 491598925 908844440 997053479 170412566 282729394 809949052 990410742 938455941 975712270 266460121 600695820 50537888 870430227 104872725 880648135 576199089 777519218 815523844 946782006 963540197 973975793 283189105 885788051 114219097 437346357 790347429 900607282 162231129 909673000 420247654 914650041 154980619 222717451 241420696 913380674 148648540 975264257 302798098 609235038 663321816 763202298 595512825 830061086 850341936 909337252 542730571 714744102 609935956 711303694 60641866 597612276 442464404 990883780 12936947 978686891 899630243 906109553 898305509 966574706 177398843 294714507 834608335 964917757 988863164 998163906 905248809 937770371 590402030 840792607 412687908 766473472 167453765 427371513 655914461 796716633 420291009 937619956 353353540 407282628 348355786 644259815 307865360 608558900 243142160 636638882 738899866 848321247 858017286 904043266 552441774 827832754 155954075 441173715 528540266 906856047 738597283 970100878 463617041 887135564 804375836 863030045 311598345 792647589 846427058 944456272 103096532 409352618 43987572 811441008 768754889 875004811 476103756 616417654 815378586 959493210 85175340 537368259 326414519 406894720 263284767 999354590 188536697 323258767 683987044 809584229 165918642 805012365 96948838 425527218 392441073 512488289 797180928 856199920 450033774 604523832 960220156 997207391 868762169 875495535 281277339 617206526 542977159 703572817 780372583 841364029 290810419 793992000 573913141 904029262 681890943 824945106 785701703 800925812 267639057 800453491 57769149 768970296 469938398 834480785 615840650 899622873 853583907 876515702 86408361 557847055 692806494 968435926 438289761 900705985 77757718 297361911 403649711 534671072 758641880 847193740 900922049 914026747 58206402 122555920 519233620 589359149 120803673 184609087 177933438 811380752 844667869 982869363 954432467 985627332 876901303 969370246 956069722 976579516 224245206 672502268 898159050 976918394 109347551 451519213 623402390 903023099 256770852 774770909 628763886 665496448 260451790 671214318 448683823 688592655 76618304 121635721 744300299 827481475 871278411 932977007 907264990 995387149 282973227 809810829 32915499 544895186 293260841 350716380 540216980 568145496 446660225 654353615 333899997 628940009 229987998 236338466 373936757 710696092 625751695 675785428 3865376 750125091 299453239 642626249 36148086 490449552 763154753 960389090 251822517 295551781 950613481 969569894 933021901 980949188 27164213 389236358 611167080 932310683 481093219 996790387 633369197 950606076 651555533 830151868 702215883 986704363 416447128 674480750 368146641 874292563 584662272 866652623 520097504 864391406 380821414 962487778 88957854 581802557 602970485 749615229 420974487 978051453 57706237 171427844 955207367 976517267 448176775 699856368 405961640 479025052 956411987 976996147 288055281 361030386 198557895 677387361 650781118 923552853 965802597 995200419 769363568 847388370 898194509 959587564 408031274 803039593 322639508 413041664 790486153 835656969 723559951 885377216 928564271 947061459 58340724 725764045 200123157 516679222 845922223 896901221 215223104 599910174 926204294 946372324 695539778 735193830 364360882 408146130 995927076 999022870 82353354 352168494 612999417 711776653 157564728 274214403 99004175 809596867 217197407 794155798 772362622 907741786 844156465 903794493 387942556 699436298 363280627 465804372 758028537 984696858 681011928 853282412 792482649 842658125 371849453 536807908 155823253 205985222 219118416 477190637 84888624 687671864 97604368 346452828 747471916 832375587 38081596 589704245 768130024 847124911 751785625 800484170 118838570 282267053 726900718 728169748 447414423 714978356 355464523 651489223 675519903 839144904 931716072 974427331 724047419 954052931 92588901 115929056 772861050 987320896 270597487 772585120 313741494 625450378 173133893 729152024 428880405 940896750 465525191 594416204 195097676 530967064 193541551 739271891 639364819 642518163 879505904 979770416 757319961 972921332 219806723 374845366 314347646 737968721 768216749 915022357 661836466 708241305 458465995 741642655 676618493 909684600 817729337 915384734 70305848 80755271 787364128 983160805 169827498 813781079 2410118 631563609 161756342 763143247 644477528 686594436 330476321 830371628 864109047 918503394 828570175 978498731 362168133 412718848 509741159 867354990 465822002 804362237 197624090 674866734 248855438 266348183 641576933 825373597 229668657 549932103 837492654 839375905 596723015 898742065 466151711 572719464 687112561 919818621 507641573 800198065 816167713 823099338 447830715 557695428 136408193 694864150 407677459 670212319 758703846 888495254 811903743 966492586 830561530 971336197 424649091 662217304 208195190 956197991 193698660 229285324 831650318 958596543 35746474 954471756 642610526 942326695 572254146 805981202 757330506 802912680 429131541 755234794 879716008 886272362 637894092 822021661 394623303 891558798 395011305 596348269 150010088 683849253 693947770 798167215 244257473 667910069 505147342 879791436 590348240 806701493 403836437 415457338 981454411 996982249 153434065 528686180 870349932 989977327 499229027 659446319 559071880 686418066 761982494 836595742 75777122 106922684 390913487 745886100 248123478 380849529 219934686 655080051 331474117 371982679 197164098 884327531 812261157 982125730 440999381 705095904 407062552 578947691 777111061 884715693 661743223 702414835 251068429 972446425 451090231 914370027 877229540 936924209 944522003 991711455 663360772 919087345 845452277 856766877 442343077 700741434 129705202 467877847 721537858 870924677 618652681 969973144 246772633 680363003 130271487 339236312 718398499 858611989 675706713 785043199 760941461 973849248 182500220 587703730 492309504 548525360 592297277 913406003 249544359 312712927 996411990 997844123 980434841 988476485 888029951 950563888 105990402 569392163 633832351 787288140 254778075 889896235 208440439 490463658 596201719 870477389 312384507 642047754 995236843 997176171 606084185 801007188 287790724 732738059 910780242 955120034 108021231 337769359 706371905 997546088 926746993 990114736 795913922 883548295 494188362 908455661 330647722 851223943 345207180 834338857 410695011 675617872 558005832 622474435 536679827 691928737 84674362 124195868 457793973 549674337 129842895 789319755 159611133 892245744 341726784 531052092 145026109 396614500 988552394 997903519 216161753 413855871 698317586 853626151 253825635 436356411 752014474 791355114 612528838 630478865 864782720 952976941 928929211 937644864 846065004 945069983 340751281 797368387 280263432 808331134 195859604 494451860 223632803 812138127 326128238 910593060 505444249 969172909 402867384 935128763 972897903 989188280 21730119 810767630 146220934 415673059 326893812 519607692 270297 55671195 664028324 704478553 155735921 471785482 133505891 980734926 139542439 801547377 601938950 899793314 8224838 867423986 979636132 994458823 315781467 953316369 221127338 416796245 342165970 981899203 29788039 937103976 97424298 424017742 143757192 184104003 380285995 657558908 544819292 605571435 2546324 100953614 395803045 451651557 266367590 803082535 273932859 641904712 279682538 789153822 796368464 944159814 850287293 947361756 726028490 975629258 80370928 899825178 304339678 507293985 322721625 782591861 206446320 911421873 371316096 984923371 560435730 677393015 881409258 978446201 380067439 486862735 314996206 702836457 693612570 882599146 437116346 998786811 353702836 520476223 198532396 488239470 916947672 932196795 124437552 231304323 165662656 365629206 488719625 699759506 788081041 872791023 732590057 994465149 196834951 428681667 333018350 472276944 461469514 727412314 460025700 659172502 724665216 957247605 566073641 880860728 488774168 885740897 978372351 989616331 606693861 721456343 883294760 902591221 745027222 766633792 120857102 578369839 886279186 929344582 281406760 704624691 551772091 643601298 201920293 973921740 236232816 318858862 13775336 704802164 375328566 407374592 971188357 990116412 216228287 836444523 540305763 967361884 345332772 961513632 645100156 709864926 667016963 757507377 27353188 532093424 947344500 983323108 722969581 980538881 341721896 342144577 175027548 896875166 848419118 986106094 341317382 520921501 485752957 902122427 849544759 888762489 566503082 918179818 481241930 758948526 635320815 944383230 881042217 903108175 67376803 610344472 13929306 789846611 840005458 936175631 565608151 721527454 382907215 848227832 69031446 920049307 714730319 733870854 164964581 990609679 486639944 627851128 50538220 179037307 924397573 966587280 494414686 770691826 683242210 955384643 313249036 388768734 563629291 738531632 927795322 969328054 369701133 911185131 741441864 769275724 602011201 798986760 128881930 998508313 878438690 974374429 930705171 938001902 3827240 400591384 470874469 619861138 902780229 956025352 618363081 747927612 495711929 602276353 175797903 190063739 372075252 493856399 472785821 613785586 819938002 870493312 547482679 768015056 274016477 758423429 63207021 381866325 778289183 845775284 61177262 275168691 757156529 878484746 410568898 509605889 665102220 818251597 129187982 192256589 491914287 580180659 340525865 820083546 153356495 164923786 124438072 438710091 453975007 565938731 587090101 805886271 317801448 839325280 26938972 294075719 88755064 528848610 825507533 934481218 900436116 934239476 987375927 993833781 336623055 421668162 141893706 203678647 844390094 899951902 30552214 989518033 429316796 460685865 462182116 840153518 256888978 800102687 671394384 844226220 552482348 599253638 33508658 330512423 514186832 747121357 399614785 683550383 777531862 783354845 115396881 199669077 990101787 994774952 383699913 437741172 166171210 183280239 739791075 979625103 622141271 820006979 93037726 173113321 501103602 719556501 365800610 882181788 674057721 888941362 515463233 746035100 511744373 636339405 945330639 991874883 493064257 772441716 727054250 985161404 804217371 948414879 33724603 530461279 170741999 568188010 861649105 947334947 374298417 645585370 603021542 875255788 874098910 973956995 644706270 718998404 39036175 255253116 846591477 984877358 577834210 968148168 372817732 807963567 338354536 968903081 279854761 520200364 228114685 747661995 354383533 992085318 381972300 903699319 537982991 815382280 434333531 978107813 306500464 381826756 58449750 720453784 937112806 952766096 669108665 793328000 317576034 973615844 922962425 976387551 428051897 449212843 7943195 900174775 229448616 678581102 895058077 946338803 568116095 634119251 781050896 834671681 258920497 953138927 744750551 979532862 617125977 801738067 227171551 467786339 906398977 922036843 958134707 984885744 507435649 649888333 598579681 875546200 907611334 968242932 355422408 915279796 895704017 936500578 639525778 867469886 722130671 900542877 94597387 485458660 961250024 986830315 435965828 564360764 508548549 631519842 339173383 354690563 657363377 866605487 75237827 700702160 541682234 631144210 532374845 762841744 684668918 686412268 930682983 957545069 330627305 552108499 110283093 788568077 102375455 762075799 31698881 583172728 30401386 356748743 539864879 646325645 715007310 996081126 595151926 917966398 907612191 976083470 306199571 828169322 48030815 189991844 297074154 666008124 227041657 914122921 133268079 931154341 429539401 856617903 468650058 613662496 445118056 901922211 612573698 809870634 328166102 575704961 837199477 958393314 213431410 407730977 904330657 974323670 515303458 682008304 790749028 968049121 542910445 600567159 449022683 582919817 755151545 908552850 632586012 906507222 946340663 979739286 768328274 848508894 971099856 997975373 160324190 575502274 874306591 926338739 901414157 975949929 936167848 993085347 979372865 994207318 355310209 973904111 473873467 651224024 771736134 864771794 837783719 923326793 527273227 761362497 419657736 855168785 820876162 982462846 378689460 787923806 704016972 887312756 775105310 870333823 513323296 702485300 951010747 957619504 558727352 772897150 308075371 371969802 292541314 530920979 410460282 551988014 446862772 537989143 141426653 398877886 815913336 840779674 432285097 702419612 799293970 923833445 14827280 555074014 356215696 476052423 540054533 881569531 365531272 745002059 838720098 872378624 854220169 926391188 323930590 423966498 165400681 697918382 545591224 798179309 430452613 714998969 32921366 837824248 304976896 364232916 379867103 796151929 843193165 987453629 164425808 546646461 587183638 591793017 398519223 522164697 832632568 867319195 333891750 865552411 116932346 344964103 675995442 991096223 733197988 893606534 934540633 967276555 815295635 824644826 607632255 868778652 176809939 848311916 689824087 987296605 411740240 847092747 433537853 942932277 513771983 833197559 137181403 167484122 706468416 733455652 841566657 920073853 479420612 522408467 854204366 929334444 309264764 325090857 808494978 836858120 304059752 333644663 565012269 684073131 305985054 421458040 941685340 995872861 425803479 721153326 717788122 957455570 906027364 984597513 700156657 860849970 391421781 621984991 921134601 973622860 179785934 783086316 178739510 906881969 414672160 439249177 279826124 807839072 872565685 897341236 156246738 819378096 9853871 322348120 539856794 791299542 8379067 438296052 967292853 981553114 981719034 987410203 257347750 333150224 931910093 979187814 263787865 924611076 78658821 752984175 914485096 998345919 577761942 586478092 929170347 950796840 646203371 674015702 825241843 858270276 414342884 501004426 729230867 760520869 949149304 964334030 761363183 802261874 569976493 676168038 979529651 998879880 247605189 562255331 936528030 948327079 638818250 777876316 660060307 960613382 581394737 765321777 240249282 964506851 313840615 869410725 262755926 464031994 627719664 899461619 899357239 904168057 153778027 427043624 332170862 588336639 955591389 977835329 881239380 952114291 869848189 992456166 668602990 965521939 301760155 730953461 826582776 918674587 352538891 622008745 888529964 984836834 760291845 846985535 167621388 253068380 396516332 915611362 53845626 670973301 736038538 983703630 656536655 878804885 519824274 729401453 538232520 779518486 117089331 350934321 66355769 586489820 596988927 822139217 289841310 762668283 605595447 952310704 959576895 973639873 114735097 661011484 311318945 687037790 303627944 496109810 382407141 778887438 760539488 781782187 909358565 921188978 186080193 649847563 452346910 960973318 594430552 948746533 304848121 659074962 184227438 702130900 338764306 775428181 658329021 939149025 59469967 576210690 79194379 506144424 710536353 814726301 716778090 838637798 959998964 997456689 405919866 850685165 653430189 750204161 480994180 617216011 356505469 582255653 936192583 943399803 147370691 787806175 192413944 376856443 604582596 614262429 750359963 799477357 960762289 989738819 773403542 986049886 717335426 965866507 79173726 898392784 481417586 853278820 807911874 850708993 165494941 727610682 262640005 849049811 816235409 855181613 604770782 635895823 828321724 949806564 27478214 30487450 151351826 738474187 529260571 682732836 521495051 847455855 132118194 735707819 353102531 494325156 472920269 475873549 707425559 970691939 985903618 992632716 741856903 960910304 595802607 781083799 271796345 390869910 616660367 782220578 540776978 544817385 957954423 968433343 837312485 899861615 167665392 297410592 304155670 555265355 357124744 820961151 470216886 984963600 412675724 952438670 35435012 590344156 853509399 853664127 256884012 786934236 875377192 940335705 562232904 634048133 589159544 701183009 835949493 982679816 554367513 656750668 217734418 386777412 852823905 885714562 374539981 407569783 669336473 911993700 787840074 987143135 530690260 584028127 650846993 725415069 808794890 923854253 561421091 589259087 777086076 971599197 946416784 966065778 56433566 463005993 494306110 837518714 673929785 936343315 88703365 905463169 110028090 368108685 909419431 988264905 418953783 677418477 516079851 527026397 766624457 797986479 621345591 693532082 173221313 307501029 680438810 738333526 400043291 409449687 415846679 958008129 485371223 604250552 95833202 303290662 616247715 751494748 856878729 947038593 833782467 854229527 615293724 717020430 560247256 884474352 940003688 962914931 194931808 252266505 174376937 866563714 717352928 920617201 996054849 998539984 807687301 860304557 340734894 805336422 344316629 590342087 346252119 790885425 708515351 793283743 443259161 606824036 390871225 867279039 282408342 708927774 976006713 986292824 702266479 715760276 279044154 285039454 937088187 953204549 444309227 796440950 488859027 956515827 916868885 945185933 312258986 428727243 963415089 991037317 180502162 242691407 520605976 900577565 901475154 929365084 319764618 593877624 892944182 928336810 627172470 942901297 555096365 800898290 953817965 956032277 651950853 652271527 894694509 904945926 982240506 983155750 793418389 910946312 875508024 962737533 43137309 936262327 493982509 980395757 442981029 523228253 101289533 740006053 641221656 833782620 48825985 139955279 932841547 990348875 607738479 971682943 838824273 988923922 876732292 941422579 429688301 532191887 815888437 889339091 632720163 769967367 467325830 558026257 758869021 901311676 318828204 622463313 272164085 345509238 803031408 848713347 979213689 987389108 476264975 953102816 465088983 511761210 486026856 897894152 33166079 84930594 423488309 479536706 460763887 770436275 187489995 275054461 453791724 709003207 269786922 316453393 262795256 911216297 810940989 969786688 418765631 604201602 8076148 781896570 809571181 844636337 42764878 285663384 771354003 810064364 801454898 972085471 731773093 773150077 669934503 739848279 270958526 531225657 282040931 665892711 536159110 673136958 682969727 943229174 801365994 858557583 774837582 904083066 485616710 835101996 972066630 996416071 804205956 845560074 805734774 809310476 110147500 538480183 421441442 928333395 136583196 530020999 590385562 812626914 291840797 388555425 240539861 686186633 350362396 866112069 887761902 987003080 843068390 857382630 725706390 725806658 299135621 561087408 575975431 664591193 636434784 961994682 782860178 854017880 684836652 768476994 123769588 715388093 547926673 613211177 714465070 864310838 71593707 485475847 981607401 987929015 37987523 729308523 25849110 601093973 535445803 773678812 852931833 952585503 697062165 922884347 344503848 771516619 981258829 982914501 262759859 729690947 477386649 762569513 831122237 945529314 978590281 979292893 583196964 965341899 99312949 343841305 969331427 985515742 196976561 813989552 123132273 809037515 437849069 883952107 804436790 823574567 912545474 962694592 749439236 934383218 105272690 997971891 5595806 606679943 4273354 717201927 948395511 994369267 124776707 743264255 177300916 287198486 294025808 302553742 624245491 753535342 115094932 270386048 966104447 995005846 59608133 557005233 747230842 766489687 771580937 915132165 52078465 923005143 579948659 811827609 833665222 889094090 581178638 804622339 194408138 238329828 639763734 777138833 377026257 870236598 171646767 767626294 739321895 990319405 207383437 840410240 450112262 698859547 419360773 800479912 386338777 948438521 682124820 764121475 23737996 442924174 726488598 942345241 152854102 756456557 327736541 807695042 132524651 711883665 269672522 949962380 33690409 865820803 319771238 520367529 119119044 492378884 246782156 543632166 438803178 466948391 191787780 438969043 108208264 454209490 379124690 507289681 3768651 381125402 572113054 719911333 214292728 854372066 58099232 135975389 366527975 922511796 922041712 968932604 932711107 942239375 728778359 897207629 926245868 963561008 818321748 916730898 131776552 483928957 445771099 620594772 713660522 951302650 550407410 668041920 613569224 914592341 64238894 328001366 672161184 959703319 444602575 983450180 34465730 777053176 921638889 972935007 97306360 534513437 958507600 995028130 242259496 976681633 980486763 982761132 118820906 398980512 969820692 979409831 310325655 343006288 661300319 685351070 304846994 575422603 12619960 65686678 85982014 418025729 265953017 652330947 781290949 857010268 899638496 905545543 89460811 638484470 176016812 997891832 379550875 750665863 884147117 919119756 66454421 570568035 417120312 580165570 874427002 946663388 487237014 756121412 951064360 984231448 33908746 189921738 908356093 985464501 397627718 468399903 682464529 969913290 915202357 971159902 465145956 745486445 199197451 671577426 192104416 309690604 819262659 971317366 786222000 834661929 936579606 949856029 952481455 993780864 334846909 566846279 363318329 501579905 689436268 977967619 466847178 617092499 518723200 665185081 481493437 625116244 332870629 567416800 857556300 871347392 583855338 813852338 867619787 895138748 341676010 877413764 99850937 427991517 311821188 460903695 442201935 739044126 562602720 841974841 86008773 784860112 943246164 966558826 128891268 726434884 996078640 998001955 485096444 964323905 324253228 541308555 411846206 941981160 736322849 863297383 3421877 167702796 392391194 772433279 546171343 582585839 581010128 805506815 545652547 902435143 436132641 753296706 727166771 775407134 107016173 353558900 843197503 851002515 962180996 997981220 785199947 955455443 905604328 909527174 744855521 923803305 575458386 792336272 274563614 966828979 287714991 440763006 320229791 432548282 998372644 998553537 712586197 941076962 157939848 481876387 237416663 591115987 507585279 586367239 826319540 977880118 393643725 609160177 576536913 609007364 388661140 764455111 135357542 429849965 976238194 977117221 618455098 789371189 478835193 667917355 638821301 787303031 848240512 869893425 66336470 690223634 523169234 571394959 847165883 966097476 762438189 961142507 492652807 618322877 983286298 997801707 834037075 970121890 855629992 908677285 520952083 995338240 838534277 888827992 927884096 966590820 332318328 712350526 607538052 772440181 445215061 521667430 13688104 65065332 513762086 773497932 928310557 985454370 997954025 998200398 961432899 975195627 530139493 778722710 659108933 988094851 291709052 483591914 164539953 336577343 387827840 723625499 306768251 414991364 319939653 964233874 934336075 965730315 820373108 963019708 326725957 495881435 128651455 639888991 373694104 640661717 814724933 954350684 342954536 609194123 132763051 534811588 864799579 937090882 98186633 248935427 390498168 861273197 180001525 202985756 168653509 823560723 991690791 994724870 761732551 949132248 764268173 805774105 357954576 879845985 275760326 728462451 211658558 312039906 447978194 787413716 767563609 803971939 459163099 671459628 833185998 998454258 562274491 761400320 641664029 971322256 658070871 709160783 886477644 983774614 760050837 942209597 734019334 972847801 873530707 984027991 841244931 974563689 12644266 952089402 587676114 823233801 101036922 982256276 840028862 941718857 396411646 426755917 692034280 730504569 374316376 997335716 65168588 396499838 630333760 941796050 332433263 996734961 371541908 417583946 272382459 437739218 250771033 916013751 310756868 533464085 742434193 797842848 1336975 670657852 580381924 935088382 137166858 632896541 434750928 945695516 468692826 560472637 378566787 867362902 649435846 932192891 222278287 513282095 158623260 579053911 904177686 971282533 633484759 849544889 327917218 723501639 881117214 897778562 255325352 803460142 170014237 726095892 610219397 996143865 997411824 998923903 366452249 997415256 76839379 918960049 312415763 786392096 863230195 911032362 285772875 562255916 613139419 785665682 990805933 997609943 940493636 954186585 833382580 890031941 694497410 712373234 343300712 903725223 853970083 887572605 674205295 811513208 786788766 941119749 895822399 925493428 895564460 973161250 399701542 529982951 561541938 754809604 762310168 778721992 723362571 971199650 947658005 952678501 492203427 642493741 436705797 783911984 137189544 884777050 351897684 861065275 457038118 965304297 895201086 927125217 630700347 663228970 571450260 780640033 469798337 728370495 894742633 995808270 591672222 855169000 139217726 172923531 316018887 865690969 243889611 582104813 799363592 812139308 443427824 942036431 306541185 688026665 556346503 679875232 429913823 790296397 612925313 812514117 105038780 171828124 899203562 938003600 589875466 681468185 539578942 871624947 938097642 952312338 899469354 940647851 580409975 846065184 504256841 767615040 879758405 978753113 938470670 955468880 615367283 751039092 819867010 985150843 229374706 288892306 386076379 776242145 977515260 984505171 931019028 997984945 33397801 874484745 270902451 983299488 185750746 915251351 58300844 883201433 851447045 934128663 933421831 995302118 289058426 813573850 823979305 945662295 385913293 958710418 44102022 108469586 224303207 926551352 136474904 308972215 758199332 867987574 189443710 452028062 357264404 620410295 471612373 890030067 784424670 833543089 556834197 920221187 406271818 622622198 358692551 796678863 388519220 418359564 980944293 994649230 212478127 836091479 931880434 956093800 804071908 904032486 519776043 845389381 804060049 935035983 868142058 966192419 207526178 857322846 599753055 912624362 720641799 981043088 253916364 364915906 568124319 972221603 879608434 900646843 395759649 547605675 738696465 985350883 364347647 382875312 978596750 997990050 508908572 587882550 934171711 994654729 933981932 944105075 748610121 788780361 731356911 851019449 776285384 776467271 138605815 163851406 675620380 985213653 384453939 758459556 517937900 825438762 685881570 867948740 290879694 812472993 84607457 216848162 769831776 943754513 913590793 970242066 754570087 870989689 347590707 980466763 507900058 680584261 971417407 985254141 533447890 672169646 123992639 454308086 488926974 554889712 357832378 713991143 439878393 829369306 343671448 959863429 513332850 929354783 330637007 360072358 651872559 813103009 695741208 854183926 225735647 899345483 321608212 679589797 505357362 595951594 412508236 812213920 677417623 791889062 487772515 888000787 926852474 951703771 526065845 977012145 699726672 783354581 531796883 916834392 201438727 777338439 207143496 779457147 784815083 881703729 161384804 764081076 106077041 867470967 631374504 901498308 257261065 481588664 975836906 976130814 373987254 989443926 784486197 958700224 220068035 504649451 528287431 612125477 105677818 286843100 743500747 756577357 299874477 609697059 199370887 913442457 910913918 948944461 604695714 911990069 65343592 986275417 121703267 958262725 346176040 784183689 7732347 601131160 455292867 583066872 663981076 800282998 207429249 867725983 514848679 943032530 722113100 871167768 388241440 820354391 452543016 675517541 442453263 868108386 381536182 929139479 145957933 556289014 480954629 826329310 687639755 706910799 592789770 957882884 229957127 278453860 846200276 861104682 480908039 871475778 382007043 395289205 355225223 487364389 495556464 869706731 770053175 861743840 276150237 295231255 435253734 860888835 449646618 940517399 55298858 950808393 196168731 205625343 49908446 580220389 977594094 992083683 748793747 779248453 375870537 751490408 482599703 900381746 675798624 947215330 175654292 792244204 813124603 993610090 843544996 958375058 94106403 217826201 38759728 535113173 571619028 618227017 720019617 884141122 120374956 367557676 250174036 914810999 560035761 697589596 74063706 865074651 923124329 976795647 321688629 754462374 343392719 580560151 49891800 495485639 558404221 840922639 137168851 951017653 104340292 215493517 959424529 995536739 513688526 832730346 682575689 938585010 141364235 410075513 23343432 453733414 142348950 617597020 713594848 734940768 899950706 975662081 826481003 973978693 173472898 298632210 666035881 953938718 637602671 915874280 624014370 661409139 911883472 936273331 679558737 771878269 661531345 700459582 720274978 781904007 63859278 294171755 366591556 722466679 700109633 786430237 184628656 341096598 181816139 520040003 674800321 932839701 555535153 870078605 591020532 887985735 568131310 946009499 826537455 914623198 258093396 888259467 615987811 922989646 859970558 999361646 877740887 991197781 811005436 940011778 84786524 376693193 229862176 437171455 513880570 963871785 189933512 409231537 481932335 530222599 474103534 790179173 523192033 571339192 773855587 985288704 81481322 923064102 741001457 741073363 593491218 904386885 653533551 673145753 957367667 973364674 280958668 333165582 894122944 963201068 726084587 920828275 194116588 594189607 222518142 721471443 202675202 500023839 266555121 352589648 448323710 943305718 746006460 858658332 161891546 349079425 245285403 469347917 500666013 980108483 759027188 991925929 819357186 988266779 908494809 936778372 272153877 605683471 304339134 881947761 817750646 927794162 235847762 957447956 487267251 643703014 264204152 368888154 343484337 774857123 880436350 897643152 676521460 945313423 740458882 853277552 748553166 858095777 827705433 859850732 719812570 976643620 131908854 854096353 906396958 950702966 219776855 986981982 126692667 310239439 496049396 545330312 507679557 832031871 23114340 496014101 489209968 995259230 563128165 863997672 842936938 954354144 876556348 966805556 287572494 462641935 435597864 744769798 445163437 803678755 409355939 593217589 873517576 885380664 96663932 236061595 256979216 920661322 130959014 627383450 769429323 859163301 662249672 921538462 230576227 737663711 649282344 714701193 334010730 834934400 733237040 963891161 624961228 913848288 99074474 642124259 868477860 941203825 641779863 752722077 938776842 961988301 922992509 962592856 435093265 752022532 297068448 805865726 803279576 987458099 747471421 836512957 77665995 647366676 631710147 901870264 965601542 976638149 465895219 718237706 930689397 990624535 915601670 918335610 141403493 175823692 846229269 865425692 645233060 794537590 399986248 568065435 279492652 485113117 85448352 395928229 988056000 994691280 776423924 817761263 394188334 742366986 210004351 705349175 197359113 399665185 230956959 763091152 502559553 616698731 968148079 983709462 634808884 774749458 917667152 941750864 473453837 950621830 21049075 400158718 305771476 929390786 358798168 555794547 749370991 883194107 509272225 582626459 363106066 556445032 497833948 781871684 140228055 298769626 506242940 633312179 878813819 885581087 52264037 707440820 771419977 771712507 39522464 189445762 753434478 760528158 852012687 971467361 595273065 717879380 968157743 997184263 982023331 983196379 457029817 472630779 273929567 448184694 302457992 820830678 883465535 944636858 863667874 965333245 4710376 148128724 728288837 762040392 44112363 736171859 661273047 697344066 987809542 988121204 997392791 998326545 933228694 981325043 413875546 424192651 869785229 987471775 54901994 907166607 387466191 561705669 183410366 426030597 247583218 932844515 219348481 238150583 359230802 769337773 403291987 795948746 146500601 943130822 851369276 922796742 232970379 798869591 856944438 869275130 215357109 776420068 583497753 658779478 543540396 585996759 749306416 782585070 489718946 538788820 348856946 882673612 751654986 903774455 460538083 811302370 748533312 984049471 684917931 746641255 92917006 323438894 929295019 994012331 765529412 772027293 222202072 983674619 241926236 932575581 878719976 909260185 636605933 807650595 60226664 938431535 493902852 880908748 898216941 911747066 398938333 781286074 3708508 486390035 829527360 905664330 909644814 948706669 133317294 969617937 626447423 806040680 596387843 858600056 45680419 68078809 492843030 678192660 727854276 767614907 342306559 712158511 905935632 923189558 197497274 705530114 570286718 729953459 996925831 998482226 860900650 869367342 631206529 842276437 234668523 777019171 890170477 892708411 633180442 832288005 562643634 606258740 178573914 546668079 11530250 166394383 104579982 726791041 568270869 962823529 935129804 943135551 810043620 909262492 372873548 702904390 389773523 621342685 85316441 434077463 874681439 877970352 707514411 861146808 953881790 980184510 200923787 264126041 152567354 524602334 688503146 993846889 797123370 982771542 457744399 981198974 208288093 830953900 799674759 865759954 180062889 603806542 398786395 945147549 198655438 390291733 841830842 939998195 862566414 886630696 547857902 697392270 829451578 982314364 771436255 894726750 493045211 881019746 191177860 967339038 994903165 995766168 53895042 596528237 295714072 512480410 691405528 824380444 421517544 985571261 131917939 784067927 718430660 954148705 563802304 744672143 872261812 943919540 776770706 879665899 532850076 602049591 789447711 894858326 29795109 998879059 661935479 936207180 475487647 582357216 475414288 669861620 25377090 539842447 307517717 387210481 72362562 112062187 129221681 463355394 859870132 939431630 843809373 942672867 773604240 973354649 817398663 905072434 935915163 943419148 55417461 741730491 798327297 937126462 47046205 263987451 767162529 849678131 151047761 710891882 615832476 818502416 869825673 956662561 275049281 333942431 35332976 277182273 611381446 980607650 296159881 740778362 465697568 945952932 71391958 344588961 711051890 806140523 382931510 885668342 73400962 580354672 651630926 981598030 521731383 672419793 509680855 684914316 247855624 890627752 368007054 807347176 490305608 504855119 29560280 496696639 298223519 308746827 45233769 555445251 779376641 843052331 4015846 30348107 492847600 876801459 616156478 794907581 786649864 942648836 781755154 991387723 48170110 163824028 47408872 498299246 620080197 916180194 360944877 831959970 590017174 685322076 109235191 225301308 861016755 939879368 440391477 922208909 500301371 597598801 165561265 362006576 576892249 866072617 226998894 872168367 197788742 411949442 498579156 834474762 721325062 737973072 817609288 986832947 447596760 923755918 15709351 639159092 476642591 895446056 623183464 981306614 895988272 989158294 50564782 672362012 324634709 389425446 465873607 657087770 399579573 588233690 470643954 620146858 294604630 697786764 282726807 493054152 640966195 834276826 202471694 828592771 504030836 827864919 790360664 995535160 263086879 606862031 347395882 401472504 928165187 953175400 384615405 586373781 319023691 880604548 60609710 300987610 318486318 797954649 514939215 772158985 692748651 881229329 387846489 640110525 967425580 984164289 309776906 667604685 711292232 807960153 188527169 695758056 605787572 737529688 828047272 881641074 770618642 957888327 820816325 866409785 127057920 768420875 97619995 235059149 541144846 558726370 21231233 265951225 829033050 876632461 14159945 280484376 566278145 816303579 890431140 962653781 606765627 913559347 603146689 629980089 724269943 759122602 417129362 577819981 482972821 739890812 521006352 870991770 774219481 885019249 977001418 980052495 469029958 973945044 964269661 991236737 314894144 744719407 349575366 832877547 620695950 623167709 998494409 999268975 890735947 950961091 168899951 993302680 810791211 918978361 2297472 196833656 14795689 296007595 364430735 580071724 281404814 570302088 528472966 879751143 790540523 804032338 808901760 826823525 773225006 887135005 251339749 373057754 205876080 788553808 425181307 552443522 904731433 986556022 457055503 864916208 355868426 729409031 249367038 969959814 904033739 949841731 538894116 734244236 58422182 242090251 793563215 888158200 161909729 337805629 916923385 938264920 271325724 577881759 967204263 997244869 260182682 560127607 572753412 926456933 844567309 870579283 673246294 910630013 677069056 700114085 270676407 569248416 726672902 820812402 489636040 884241381 66853457 123936201 448817026 629819948 918795615 992185063 49316219 911008815 709290106 736089673 540416334 929798096 600927387 951431383 77273079 488936216 650391246 897980599 909822024 957785375 552153148 838000845 312429154 405046088 3787643 601635580 921956810 942455778 894959698 954274047 598334573 944137387 913181892 972567676 131193001 729104031 8932060 785279381 405980991 494499428 266368906 319908206 934742874 950761523 362936306 943123457 669953868 935365601 910706411 929502741 776999469 849473264 362519663 783389239 356177319 915885076 310668864 691606833 504639051 665740268 656348231 857318245 209769013 212401186 802738021 879672017 894820994 942301781 386555368 676300234 368705016 820862554 842303342 968682067 64984572 87446136 904879551 973819913 721556139 956119729 813252570 850709849 15389187 909276416 692055036 898328550 612083144 688184603 78655495 462117303 154856421 255780017 365450777 945512551 438005654 722720860 282835542 822210410 104173839 541070806 394260825 722579671 860526323 942756035 695021036 968946100 200346837 782425831 2355946 182968757 887310077 960886424 178076269 401592223 604715640 660026669 614427040 868631074 379260446 532372951 229177952 374481908 551889263 730472463 416652957 661016902 132580514 608976820 227080301 771724321 957907864 996584485 325588472 380111429 491082571 652746940 663567359 714897811 292162222 342518705 188972570 812232565 51153624 738319930 424500314 769764944 351847131 355051867 301447034 709871773 250960985 404205549 492357761 822555465 965672435 977613464 276547166 479774208 798699792 945948926 882784182 950203870 193899958 287062370 302018077 806511173 571505275 620820571 181954939 340608732 484699598 789302151 563096487 801631941 559948422 823537706 90902502 900249425 802405944 976652985 753733970 899082910 211214068 357225523 924136299 993435814 291713553 374214061 152238420 246745091 507618884 780437281 356429017 382871505 750727592 964595936 179814131 425230269 41524833 997759964 169315511 500631469 555157081 566441204 480318900 812812074 208620283 889606069 608353979 958311263 599987201 867560789 904653514 979889507 531879839 887465819 381860194 637000514 511400747 564599394 723557014 959180929 3285517 447430545 859576532 945960299 828730533 909670468 511888418 515977385 34324027 107001540 379843256 895838284 598868445 645338769 428789790 502025421 177250506 352658425 110366350 718597978 756672183 761937236 729757222 838223569 739219737 863447615 412612813 764910956 235325862 989456597 26564427 826214145 619424799 754499531 35339033 150472084 602552885 639237435 408924682 634187196 569966522 999210997 242268316 624742751 630186191 905386623 988738082 991901554 672321688 860177310 147843305 231984413 219847757 240341889 303350999 943032229 430026119 468254915 793819266 907374680 533987490 599036737 54346897 789905244 80222530 168698923 397716372 714896549 181207750 663878128 77145900 245361155 554090179 897226347 868166896 994997584 980445491 988844106 565963714 841639641 493740163 675940523 92255549 404745710 700162989 981627816 151404741 291583293 618443973 733113665 311542193 313565125 342375975 986605401 245498058 306504968 568563837 961073162 939121151 988735052 74213312 782953964 241002355 475184327 969498958 970604598 183860648 934857027 57243009 241653596 881854954 907193990 104640814 837428883 392943881 856447691 39703751 389455058 691435568 772456140 351799285 824053383 165817137 539141900 30104886 701020851 505137083 855309761 705668062 994083289 814324895 866112316 275049450 832784129 63496873 799483651 281997651 941663157 555196918 945441796 625115752 994055147 383617995 523729364 938349568 956052710 837993728 964439915 996607251 998255034 77203585 618681337 443485172 556244693 769746159 815097926 923996928 931906996 578961598 698626361 799154639 927403068 361022152 938941271 133305984 385794274 138133647 686800693 738361440 785194659 771195345 920453767 694317706 988372784 460007095 635354344 314123864 358571424 834302176 980764047 298874115 360055426 901505172 983263788 794064035 841981377 134425155 895296587 907608661 989490360 521599776 662231191 915747030 919569358 969790725 971348793 230343693 286492409 911463461 929515940 212640216 624349117 294266464 642533109 78321362 819907021 817270459 967093234 731048015 843793039 116292845 515884103 413862737 429913019 780380720 892603804 972711522 980222988 69002264 506988768 228284904 366794565 318527239 982753601 187959250 382034638 722495624 847763702 317510957 973504929 175520241 556024732 46325578 315892685 359444513 912400115 922745919 964985407 721999150 798916909 177117021 197641522 885260188 945713313 588649515 855782119 43419877 204660576 509430419 675197361 476039083 608739924 859771195 892005117 753404436 969081488 584749804 747540895 392656369 711375475 590771310 839639049 628036249 766604108 321558936 716298473 86792107 206829736 542573987 892039395 148680031 346074945 101290611 366436930 194320114 239505964 938634818 945483237 846655086 925742991 44578059 797118339 472544709 633229696 772893639 941570588 676348711 678498591 373573535 399782362 532266089 860971584 475521973 679649247 149962098 432261812 335527392 624653846 26978357 559724552 871587110 884190530 267590850 466676701 516060808 847701605 831349986 954123481 830990448 892990847 890451773 973494311 620023916 712954103 231873112 450494975 727600929 888135120 337884848 404468662 548556374 593918180 701672522 968171028 456384719 551433140 269744746 509684957 598693348 964682581 692468489 878375166 950883413 978559262 247554678 357513260 773146768 841499051 391970190 702954569 263027604 586347106 303003061 376069575 38546367 960437505 855893898 874079279 820436882 893106147 577063457 791639538 409573936 576359588 654033147 950065241 688419855 922943099 944326572 995141293 790012114 881009783 422513764 651619821 364263297 762254359 529599021 682155539 751127262 821459274 819471388 942600851 262425726 578071430 229807023 528270411 310331036 543805441 370292976 555025257 726077713 755887400 19004776 718971518 863326446 910363426 971085374 973073036 176295047 414661882 589642185 706726194 145543171 376332347 955408815 975153786 18564580 573524364 621220513 879041896 802351938 876785096 352616476 736535186 193507883 360793670 617704728 990876635 716807207 819520152 543815035 812908408 450387352 617758653 133849554 372494964 711841781 751560628 181602552 986929171 280694666 695050872 409309961 904320213 274674894 793862166 382979996 887358534 181727475 496645118 182280122 258769217 479800115 754645927 718227883 795072332 860279321 918111845 59518872 476377701 595442531 959865523 751593782 867395251 915762066 937666691 878660774 931575062 938239971 982201568 986836142 995687855 601356698 923054136 24357299 285675676 906582415 990598475 17068516 992522821 313375703 515886519 18646960 130741885 493637847 788286029 371194824 522868879 844454264 845623241 955200277 987427258 334945166 743345447 785326359 834283371 363610791 529207142 608934542 646415801 738811619 761875767 933216122 997765002 597085815 844593295 657199882 953985218 521819504 560911032 460349317 663086804 795564953 863053477 311790603 420888960 866203223 940885286 104397237 137774580 714216208 786862579 393013117 429608966 879770348 925955852 326732969 373741438 954779138 982193798 313825479 720770575 388937509 527230680 845338368 949931780 929958393 992209341 511064415 776815970 364447852 982908869 154822106 495608756 772543125 938250408 952108149 957623768 761473783 910873109 703879489 873189995 191357924 561933194 354351696 513007107 680569818 766867734 791610991 950036186 381896141 968726695 779319185 964460261 867077752 960615205 988546649 994353064 472939095 684801484 844885134 887432799 185550796 483858335 682034297 707989077 156714250 570444483 443719025 807698521 243104167 336343244 973725973 982151049 323231347 638722485 766271028 908372544 379441383 975263132 292423568 489814854 105494212 927889979 796561487 904033209 22374496 505786714 200232022 305753319 261582587 957471352 811211286 989526402 24161653 584825785 570540289 678429260 556322947 762846577 396117899 468986866 730105801 765342458 933940471 942470630 681873797 704723746 489250060 803211746 399982580 546020270 894868938 991016588 607509320 687134251 863671615 925604265 503359394 914272572 102802350 904739521 279313809 322018564 634129402 652409400 265889967 864882330 181726559 396524120 532839006 977969911 628141758 960478667 545735596 922354594 776141727 815671283 353694055 739277704 452193792 869442129 255804681 380082651 663051894 699938295 474468302 684881336 822474507 922454811 809974745 932421301 850720442 892528864 611166669 983413245 900925167 927413753 534461390 681947408 805924296 833772999 616114410 855703715 331792352 717942866 689763588 875761655 560201566 768275346 438934045 940217677 231161515 442556902 699377246 707135448 686574575 819762998 546777469 862932711 564763202 996716644 948750626 955625732 979590301 992060653 296566738 779024070 995453664 997830753 992126780 997524087 685958969 980516179 422249214 642381126 779507676 918082768 499765355 503804017 822480362 955197362 307392024 994971759 587076544 694022430 317181371 445711964 626950436 702506409 264913468 945933823 590245003 802356094 779379024 860449406 732673044 989301435 820483351 945177147 10105855 307923987 838500144 885175359 102016577 866012131 243676199 714198119 43143351 180988988 306628582 770051569 551221954 617274740 296705252 981537720 151745393 930205178 369582791 954234182 88653907 744002008 201483552 673339520 837678616 945014062 250332419 947445014 805164578 964783981 882625998 968057709 268905050 465778251 335348697 733561866 19908727 78808821 855098487 984632793 814271590 992584366 464604305 842827794 464026931 870250763 508481677 630870259 937137573 981138289 548586667 609065813 151262606 834940417 279970512 379163552 975758812 988213565 797424743 858233714 339416421 771567972 902051242 903402101 402934399 649648548 195771341 619746775 335231671 789705761 671094893 855438681 183984581 876131255 955032612 959072372 482215373 497428952 902451090 984877418 236970624 247969249 977048249 988654083 481900486 953666566 815495551 889156476 51203809 318856435 348266225 548929892 806947576 846748210 202672136 831506699 208336973 544637783 549936527 804542147 227962390 506554825 284840238 356929443 663103242 844638055 113169508 213806338 420830712 464008642 600050824 636511374 69463969 307483514 429279222 589402899 313955208 628552671 635441161 714512118 123659911 597255650 772619843 989925211 337184943 516183471 902408074 915596518 910425506 941723356 414803312 812197519 357368067 405755450 708392216 840040367 877041795 911867898 680581599 866970137 932980757 958415927 643874088 748546978 782289911 925495210 274743676 790231798 96395270 766138968 906249488 981617127 206035064 709102054 369992058 388933483 137045220 951334055 874884524 964761219 705207540 709738331 755306612 868015586 201707504 735692711 17190099 318484412 363173810 958981734 344931663 568576013 26902484 933973307 63010049 243493275 476515435 593357365 100205346 319589819 527529751 826080110 850782147 884571842 637382794 707260000 117260730 620475259 107288194 412694058 550845002 924193284 540536540 860305016 722812948 924848944 72197818 333112881 528278772 546082998 512114110 895532379 82010913 558038879 923728726 977062661 700492619 901661999 931396016 934013828 531391094 693210503 154935292 551417730 558231764 873576945 72601174 256161780 434872457 497225333 632895138 917630311 483108366 532322838 128975236 322245010 502295759 787408252 748854379 881205417 990428174 997174611 790235135 993221368 116250992 505499021 331061402 438646020 729987665 740969533 147763946 731013134 791021431 945401131 326491142 526936921 459534140 787611940 926676748 959744663 642519533 861681949 231853207 289243420 810431713 891191085 945381940 960177234 322424461 834123598 796270936 872376184 129324644 474922511 296510839 328011827 887244534 919263588 203225997 710944432 655279635 930899801 60594015 652786628 320006702 406614526 512303334 991740246 883707372 981476057 543839396 813854878 91463728 423739841 382026794 654439191 215896887 997008334 494710083 768615831 947050347 949188789 680673792 730590066 712260968 973702634 291618914 956434319 954656172 954845665 341922312 559005414 622505253 836110811 771561692 812385150 655369848 978118123 320157018 497074920 64897864 311681519 15633616 565999763 140018820 265753905 864698177 983331968 775104465 783244305 85230441 558537681 189635072 895684783 913791281 974671228 995616186 997291222 381873973 799484763 62731418 370025734 941364955 950034192 48324093 806004883 427220949 517691048 347778640 778016517 519752 586832493 514103145 914320789 909337181 914598221 57389338 145839052 841243031 885632691 575388058 703564238 909451350 955873356 850067588 866428166 548047910 822354420 365391396 374772462 944398740 970764963 554761957 836031989 898026881 986496889 254951832 409402059 962182951 970423169 389865497 500865077 9281203 314257582 545954279 875628724 906413944 960484173 319817096 817377425 619590947 657756323 184179491 435422768 864632928 952886359 45507452 306199810 641037460 899692140 185043147 233818572 561564734 919150021 566604764 857567843 236140285 836678703 939941499 955948421 245765974 684205159 806963242 899868344 881153962 990576268 731776180 747579442 74085632 222299727 501345352 890607875 10114944 902784058 853693139 905088660 773484383 990040682 533200918 892505689 652238123 805585321 212442107 678417949 907092286 925276870 727646810 952409810 546109344 787617207 864566760 870553865 677372679 845002374 750881085 924257561 390560592 825755628 800311566 863944973 103771145 975041237 91375233 891904279 268427477 351722316 933642505 943483199 20324822 711291919 353567088 401837315 820541239 878453220 609268029 810882455 584324460 927870145 261647477 708666759 555536951 937493614 929163260 989104467 675612939 864396857 735044970 884517479 161786194 804736508 574279538 837173705 906912255 936230522 839421119 906970543 439388244 884437043 262044648 933426604 433550542 615197365 107464659 204787079 177556183 589124724 661638072 883514467 882489713 911284082 716813925 739094691 369063856 490756897 718251029 776403375 141023509 341427282 813140454 834689395 874275955 876854526 781871192 912266035 773816668 840924743 540917256 781649161 150699555 277183119 283112561 619394400 215082465 867168471 184721541 693509903 432107794 912353298 718578554 915375551 128826041 553452301 141924690 152565155 49305887 886569350 459394379 508067827 945913341 984620941 72432090 548572435 781031080 944197510 902246493 976706033 438195068 676538628 203680692 771270311 657737544 994936971 778396225 908389881 335317591 770959075 615583548 702229173 164877329 766905193 424361422 980519131 190584636 771865509 804365576 818442789 213473392 328383402 745242016 915314579 378626906 548969193 180822986 370322725 124624797 623525875 383706454 714056734 913868384 989672555 520786310 533107322 774952469 934607336 556596391 887661058 425496885 426820076 961374603 985279372 616840698 683176723 779196140 804580051 19535480 591181510 215229842 629228271 342312076 902011599 553136634 556767437 861039903 995123827 644355527 847878003 48067916 502431457 565362929 775290460 995359982 996134941 260371328 408753218 785041512 961379074 172057828 930640483 846685482 932704730 890000326 944755596 125626773 491172426 721728254 929983583 598056438 953654664 92378232 989507094 738074636 764587609 678257713 928827100 54925719 335941169 74902051 486486778 131017667 832548545 716379627 877006401 228052884 775109208 553893332 696533026 708050684 729423213 653716837 855779569 26425331 998321424 4689106 802261892 63485608 344797511 947516163 999221965 927164 651669083 837128570 837996341 672664013 682046614 241692949 910198759 297667232 528322731 557940735 990737326 714558201 759580751 916895566 996900879 647414709 927695916 176209452 593502321 488234219 601157529 311990129 451797954 70659615 318271510 533036891 707773506 614853285 740875650 300673509 322032886 676501533 773978211 412129797 984494675 316477357 960752115 335692937 992552507 256203204 584347168 815621067 817136505 204340881 340326376 177661687 182505764 902957161 990172809 817535213 901094230 22069631 397244759 727718665 762162690 17775241 672650397 188720785 870182064 166460175 690423379 244512719 906583470 740293861 888625443 499485899 887143161 293258727 676887179 253112809 358185893 742671179 845774349 774902509 808649297 64535874 371399355 331776914 663104167 138317286 459464942 739775035 889028620 335266336 881463602 964921271 973096107 502954632 852618360 525513283 749224591 856745055 970387688 666345150 712058914 21150311 264032531 910404632 985479983 486020639 731161051 272400462 410377665 567859021 797593101 609608427 943700603 791623752 992845007 565107665 606040251 683263871 903344026 567772908 989168728 971780749 985450536 204339931 354526892 686641635 966506127 394304380 521842720 776729013 944904225 471372823 631209028 706844227 775945372 877342568 920277276 44540014 627563314 635821594 868957953 578099615 907280837 100252139 510124120 128781577 442213767 738899380 864497406 617784291 957340927 695653942 730740239 774786129 808761116 155203236 901906204 866034602 902273573 878845167 931903732 630098207 885740200 889369876 994540911 166791941 918017272 540059108 713049516 309126490 556096813 542931884 639439907 823850659 939168144 960776422 979258204 169181124 742808415 27346932 219615572 675452840 851175476 383718271 969597817 957259237 980846881 187349043 605511638 707195708 882333318 199739500 810455396 348537920 477867247 665875046 781916782 569899172 916739281 519196731 668946486 875229012 942074167 231346272 312735842 607928592 929363188 218777704 446497236 137498569 268978023 640345002 684965923 725416964 850546958 909413582 923298363 850681749 920856357 639705221 796022522 327502279 822313461 179434021 211855922 117862589 282367622 425617453 629298628 136861293 383636491 608318151 934591572 430715727 707206645 769234413 962878749 681293607 932269994 665160374 967111554 108793047 711150017 9610954 659882092 12725812 349376248 745317488 838005376 316882815 856521091 192152433 940122267 798667102 891505721 404957498 629387097 50284105 749584286 931666633 992619299 674752909 879470040 21063194 576909982 141630743 672783205 578996064 823456515 46156447 759629466 851751588 863139368 208035779 474034188 932254864 990937451 629853332 763008301 4676919 687870424 197676755 701890543 320857392 641177458 461962718 892779190 697805561 981396088 142301373 840819993 788619141 791174666 733147883 935076899 248268851 843574364 532905012 979902127 933296130 985766876 254366407 829508202 435414332 822816395 124907378 703221888 932902179 974012647 87170426 458839587 129602688 432510769 497451695 571326900 624625450 818556920 464983478 517276626 986018885 993582873 153237524 801830687 138655982 858177898 113296673 545152798 92798237 846341633 211819204 289922646 919916411 988266926 556303010 573908350 188751293 946690571 875340994 940972995 128733517 405542680 182642692 438713562 63873125 529199854 464495750 469099516 203273215 674888665 228009318 477802554 412661239 554928870 349296139 746516202 586247703 735343132 563813912 880726331 613836217 982512642 417611883 472285529 293610045 383929614 327431963 659297074 247842089 610886717 643927854 780307710 634676100 719666262 473452974 515483197 937527872 980135775 443616502 869266035 225614678 337890580 150337318 447268410 160598910 321614950 106831892 893408492 14687670 867069878 227705473 331917156 723813959 972428195 735758340 862312079 41018643 994323647 348628916 763786005 879354577 999185399 415329389 516095177 565370774 758042636 945657248 955209154 926105225 986700707 845026930 925978034 459734441 938511263 114762787 825343642 345213313 433121813 371624705 910334265 95549215 791814910 69208777 541504042 57107396 423377882 566986915 587920559 422363947 851998631 64332220 160997855 255563380 615061246 71721138 708543235 315945256 883855455 822916789 942002410 826567666 936556301 761553004 909542077 132023851 819902982 778993310 954347521 2102283 151336100 955996046 964957198 341547589 547443319 785456367 858039920 174281768 951211708 937397965 943844102 955844365 960681018 254104156 815686992 967648292 969604528 41208858 766560404 877606070 953810517 310854288 404871220 582918769 594664057 588703202 873891820 323779726 557723012 810610548 848069587 606874805 935306722 880220518 979215563 229752856 769580120 685384026 915195783 493575282 907929464 802492252 868315274 230320544 971809562 775849532 878711399 140165662 559754498 670553357 793558465 818463418 920757201 247383613 739611837 374365336 644429397 677532440 943917384 911289907 976494117 468905020 761048275 712754726 774379393 155451932 522467805 600929146 790973048 478874826 864186663 597353495 867676832 866848842 973996160 552349187 823161213 804492299 829487027 841641184 948015433 230145649 882970613 693651361 788943863 859888822 978875850 660651198 908690373 654312137 915841697 647027650 654958389 484980748 575605290 991526898 995021780 597621836 753313468 986301311 989078061 860737514 925666652 997199270 998840073 623716408 798677792 230516387 830262940 634323940 833456573 26642477 150381786 550856088 661385078 40127172 247698392 500417187 592666526 432702760 811895460 476223382 833035174 852424008 895920109 349644694 882118019 448524717 565688571 41311204 249649416 381882891 753516214 920279301 976517553 897683801 906006385 624096112 979197590 544448751 629767428 162194684 215422908 711515906 872689264 631732563 916214788 486037804 491460425 748190428 956770722 853419120 979714966 143844045 738359862 603916304 903282271 192199265 359838306 740842085 826640779 180257557 704413332 364293000 742239932 998106335 998334610 513071544 954507452 353836723 901580970 440596814 768321296 104708028 442810140 928813248 971379620 178295231 922027683 846933947 874018998 856056565 874000051 932016518 976383571 899284323 985670543 511752269 905749893 85135739 937540647 660836767 984375857 96883643 581138651 766831276 890842306 837785940 911868011 607405642 992896087 638018629 790538135 744141696 794742079 372372799 908545010 983538143 996100353 272123093 396972932 19500380 598276656 301630374 684660381 442047859 617201755 360162366 366439743 852227063 954301696 899148577 966281338 483615865 510951432 60906228 375046178 885577676 965923267 647992513 671747458 310533694 545557030 538010536 933250997 305542318 416581371 112338703 408140275 943627370 957082501 923999126 955896034 256560005 987355258 67806736 637704217 953264504 993282602 647754158 657763947 979894137 993203429 203486372 262151148 689812328 972194366 839251186 894257756 994072999 994289926 378511465 508282464 224278241 943625059 50758389 473836845 953547308 958848394 345586605 466909031 639367308 940756915 882933690 928774273 609380267 970773094 184632310 975438747 409858200 819620489 270015748 606320676 649646803 729180980 509574744 823075064 519369630 817661080 61260522 358380803 131915395 536442083 680518503 803916208 790459138 984832500 164790940 645215842 247140682 256231357 497040783 515102553 212682716 712795277 277171517 779150426 731534940 856543649 521529444 931637613 535874847 845221413 455658854 923892929 970035379 994631972 885520992 925039790 139282627 323189634 925540145 945969942 930698950 949530451 653065503 681334998 825872312 905616505 292239480 403352287 466027361 726942620 743157688 990580972 405647863 643724504 302295889 839157063 474147631 565866664 690321814 890054928 132688367 556092232 924462793 992843059 732588437 815498249 997881157 998711693 692355090 870304933 814414424 978092136 285203222 675623195 746892544 853412139 764063397 880337605 849305107 952516715 261002827 886687852 688124379 897342390 77577076 93041348 869080535 879748962 145781380 753936606 347573853 479822344 18086493 982360693 744026694 962249972 747089684 814517608 335254491 784111890 784806483 808897610 713162430 976988483 916713600 994182742 675031687 679706317 585095181 678753311 123514013 513651237 589873579 732641900 150756294 186370622 830768333 920772447 236136101 732509972 793888278 982401760 735512668 823121196 142535682 329875012 96239563 472503466 72879558 376290955 108122195 261994826 647294175 669635094 190073986 386344839 740871045 930633021 279162089 979942933 174831957 714859162 555051825 687866648 905458236 961318035 416955784 465289554 863749648 992984472 939280371 968015092 370942173 907925668 933565270 975585434 675785067 719330217 395258948 584454895 872031449 928964487 101441302 565895343 734672501 736107038 844026133 968187119 633495088 677180363 504555375 852808769 393349584 608309283 266326268 789881203 780384334 927741177 164858125 707127157 232421692 841264543 985362228 990910801 549557933 890253018 229242603 479093915 746368650 835087671 785001884 787108368 769967209 814323192 446157081 629021631 694757150 839063860 939392757 942407126 297102489 713632683 451539173 722003341 271071437 719181097 817086585 995456547 83365011 398823269 170999024 937433965 385663659 394038254 363430992 563643887 753979692 881611212 936793710 956624791 255985093 349885455 634944935 896923601 636195779 695075503 934121944 975873699 355877887 736787801 806717075 971826760 540204611 821644288 939241592 971260142 536682557 954980871 378938997 523867115 74177021 940924669 470900158 594414438 376088909 739021067 563150338 699847940 260442063 756236347 308492341 551060798 689256144 986819019 747195134 791175163 828536925 951069966 945956822 961661745 722998560 727178907 189389706 673442521 135249407 561703292 779533102 872157720 961673058 970923926 491815492 591500050 442901926 585669680 124699933 163457506 217248935 323608992 627725335 959283679 337547687 757693885 862840553 888327019 581693968 880643926 572285093 686251954 638523476 799169555 305391896 760128780 162638906 715531151 414525487 487462632 400543890 988055292 971243248 992529160 576435803 767747965 621742526 621774201 609623737 760528894 501021718 647012268 387793972 661750220 238453657 609861755 327719775 988921543 227389849 556117494 758208445 901124732 571540373 843585337 282653513 446711061 928523139 939078783 472923572 508182502 359429910 847590745 714741129 715173440 199578640 747941275 887458674 936361655 196549963 370617437 188403836 694125930 796094873 845625045 813493816 855125274 388867080 539578307 166013848 708842326 254174953 275331206 329100828 902812176 736641448 931325398 37360744 845415711 769553179 983986903 751676267 973818073 150302590 174176769 921941103 941761013 857783119 965607164 128485783 356665472 335532693 615274404 256341148 322903027 48661777 403414847 205955039 437695760 243941061 436477821 301812820 306852967 145006409 894831225 785534522 891959669 806382981 829719883 359606021 679195106 797143675 940625355 579846398 867668961 936888375 996952180 776456134 939657497 400707880 652602534 86039846 823587558 976769337 992328652 973829157 973935475 696248838 872319484 417515613 713377502 42410481 580929372 817966260 906623724 605479548 820277231 57582958 535497259 752749843 992028605 116320524 972728447 342256186 902950267 53401389 62937281 690043442 902334152 21475075 126340690 574609438 886861294 145092111 180741273 626618135 998140203 929469798 969894403 585858062 634327686 283619596 670797997 259942829 466500002 347736658 429053814 411224038 449560366 862227412 935579005 953154099 987367540 419547517 975717993 968684026 976780049 689645590 866091911 855858171 942483001 71851324 349493838 387353935 654196610 81030472 619123179 995759782 997578324 930343105 987803497 470522313 690282424 790301869 876665341 970752095 977631705 277066719 407253487 954809314 997435892 668150353 717178736 185854120 681536818 397503501 714980476 862040365 975987305 8352648 651734099 209315401 810209906 324976903 738415315 692980717 978271441 15051934 72456732 696488924 737171523 359482195 747856606 923186282 969297204 427209710 689386930 527894586 770870994 345595998 631748928 613787385 827403939 985984510 992469434 76412809 893113082 71652122 198375001 128586788 203373124 41590917 806177828 304318343 859097037 120425265 294429721 977510709 978648146 803690084 903364771 241840978 423859290 66504158 701294886 423234740 670319381 904725448 940988378 599508557 894258168 809638035 961478961 252848363 423012816 271755533 851917129 108441966 317377190 649441962 753064008 988473891 993725970 255348491 744794038 810431120 949273426 842074323 971482099 691625192 796165591 97475462 781722534 251325521 336881425 57594914 920993503 95945073 370172269 984183165 990528336 867471293 953162188 233064902 889762732 21052514 83826284 751075335 799993114 305111765 800627179 906252369 973153078 887510144 922677724 180905250 196515570 909837607 947037810 254978468 891397194 826437894 848884110 455070810 905914439 858063670 873363074 51758204 675536076 195088073 241194781 207227950 329417530 239709162 262610027 575403970 619516684 921301771 970465228 831389959 909899473 457735671 631397946 255697860 516607193 205543449 374190328 694801005 697641140 208872863 458861737 264102494 374180896 864308105 870238822 511240150 769809789 843975005 908119939 303625218 907998344 908583778 937163100 796885404 991894786 296986618 656213788 686200809 747404829 890934763 991832089 536191849 818881289 680194894 866127266 496430086 635165254 252947469 298702086 623497207 710971714 48138471 115400154 798900375 895034492 857294590 949133830 872003117 990732861 580155536 683430412 101448587 406093060 957937163 960401962 264405945 528505589 421044069 550073059 919060670 961207854 909207137 936117618 708209213 802250576 929686589 953684441 543903787 557830076 247808571 881388157 268814460 741891148 831667696 951672800 609822722 812320622 435523776 908251234 291885373 596216223 416843860 686347408 381075236 526769633 967072846 975078037 594797520 997574258 914343118 957643954 562933062 774758819 698359560 839491741 394683263 830845118 430164025 473129705 696966704 959584056 627426891 776511921 501115750 726014850 372313947 927959586 996751009 998967538 82056184 896193691 828845366 983191489 306026800 849747164 815056902 816697231 651492119 930790837 997489482 999193391 626607155 903570238 676034880 906552235 4204323 943912397 181845225 974882595 503838396 706938201 836724457 947411515 174835790 696179964 507827030 952561188 365673734 639585152 34824557 325893646 742768586 823432364 678226419 849910023 399655319 995717924 610386381 778108944 431392281 453643162 406521393 787376783 181212918 876695069 127678636 167198746 841437323 936056811 969096382 998458253 915386779 951223684 646666044 949617586 78650777 568561529 603563558 916352968 236951521 919215154 375016513 905829988 163551250 517305990 356328247 358661528 393232320 900263570 969305525 978556215 889935523 913975202 360908788 693303370 77385773 687044579 894980811 973856017 838032855 989181179 559589934 928081243 365111344 685436883 147917447 912510802 290432020 326936407 525448133 832240559 709210878 929280381 149103015 183841585 43460431 806364846 278364955 405089566 604550343 703033598 2117959 678272983 926233565 931306210 974997593 991522168 593279359 974442041 523759667 935683291 408187783 526737841 496342061 787725765 124424737 583576578 607696072 965312532 190781265 951084178 787924176 880994348 742859433 841651536 677123582 833632960 560507171 928492130 926804492 954009227 831359791 975387405 348281980 677685355 365592532 582454004 564078727 616444241 631308583 927940971 583284806 948711306 955515233 975281051 671186153 846338398 817186743 920331217 502455363 649913291 814134812 874974436 478813071 806545975 851236801 942101019 450075930 926911192 748786810 769600309 616071856 807041303 374769848 983286944 206268241 425921770 463048800 978824468 608118271 833182788 67308213 599195053 898908565 967564300 428383433 625864772 408425459 839502344 976150120 994785247 926793355 983057056 934148717 959101214 912817135 967071133 758874710 779331761 694416336 815678937 834411686 989267608 779173013 913055858 432675798 709588453 477838641 866203546 803716172 941318782 147772674 812598094 404128657 623045113 519433756 993721453 572222540 880059655 837195052 979548716 524218567 618760797 5305637 876340542 865299047 903558781 646177521 808159212 733167544 910177861 562307519 946494765 195241043 258162613 861834979 897489567 246840705 811430954 771205588 840820048 664296100 835125937 812205191 857111623 611234037 717058651 197675856 970137559 225042657 817004170 37691880 863176168 422394203 574869121 910862031 967682789 353159239 687164846 165291228 883759618 926779160 984575481 822988973 838541501 532171180 794372610 823565181 912892853 217949925 806372324 18470317 678208220 188332717 632112578 773518549 957472356 638555752 828796665 459153181 472411716 571111693 599271503 621641973 626590363 775803748 821453222 428892018 457935737 445827890 854178941 79643918 563689556 900567544 924772905 510424560 927030639 440036941 504038892 793888377 983493947 658201883 839882695 204568262 260633139 303570071 988116426 548213673 860559159 214500550 768846979 733563717 957999421 225382918 522941934 155109294 448842084 969174656 973308098 134167458 138857647 430970974 447272691 910850100 928373520 377597419 692979721 779823491 888315792 294669902 932207424 102716803 427060375 767545460 900238824 710949609 836651150 719813244 958336877 453436619 856136084 657571235 921214402 16894600 562530552 474158315 660752141 656257089 915714630 88175083 139986739 321058570 583953226 362876634 614471334 689236348 775308217 214357491 718977326 269037377 531241667 514446006 913340342 517313728 787715754 436383408 596507770 625179037 657563309 132039034 176888610 851326112 890007101 744295350 904721115 861147014 887294810 56015202 670823539 497268803 900615327 273096945 777210284 702973375 779228937 841085781 852888871 586257986 742030450 75871427 312071014 566997784 575804948 739823291 844447370 360880005 454750042 301796429 661477178 699157945 791268572 900099330 949587650 887707212 938704942 258945462 647217960 215002087 903826186 975130665 998116029 677956737 780527808 112354743 877431207 547438579 681065848 873624177 943124305 83143349 716353231 212791289 827885397 966569729 968176432 924934770 978526697 674780801 926020802 25733948 567729785 159153444 208288700 307856047 995221257 868093299 922793236 407597296 472157403 712807744 757724049 222732192 708763127 359274872 957942733 588843250 888891770 597170014 826029227 357956409 730691849 669978348 774323684 552818140 789321466 147818394 630284125 758325005 963860932 822582484 956158625 116629122 603328438 587227820 777114806 465118705 847041555 713364316 854868266 902510695 924540330 784493370 819695333 119802821 578362399 865543188 940613462 105541344 951112082 221472499 810246393 335075624 624306564 148054874 943845868 811886737 953241248 716468650 988332687 117148759 333011810 875287875 976962386 239607053 826172199 622302537 914666877 329221401 553907150 191452796 660949495 643770066 968587980 400074030 607323730 814686942 903838116 369804397 704074196 316411079 767387761 716732601 941925582 468461138 622225667 265687154 504355570 467314179 872724925 935542471 942785585 957745073 959145014 984647146 987666107 30471292 695682225 70156144 233157604 979772678 985509427 888794544 925408362 533027271 695478901 454819199 774152997 553046720 774267493 711743731 827341206 857931885 865951578 336803912 759359055 990396301 998730105 949900969 954044224 660360692 850452638 629996770 876847416 382543048 709469541 141278777 251238506 739615965 984866615 832242440 982889012 590732960 950069900 757513284 825938284 75911643 628768686 293984704 379041877 109853271 762164228 358508548 606990719 419832774 781082017 745526963 864778137 465681699 896044951 497806737 719373507 461867781 529611532 138262332 268113714 874980132 897233077 42988548 578536617 38078747 314303393 189720957 772532405 939078293 960056097 296266955 971185184 301723572 596828186 83992358 276392829 241035508 807912645 361950440 967993612 661302560 996769738 768565586 848483594 765185734 792259472 482756878 660081771 431443782 500212313 421698303 769377219 930193640 948462630 451852864 522299080 801735333 845551614 282935644 966857920 430614096 524877886 910843679 987595292 417010883 971149096 194505591 474431148 707057233 759355337 685407635 710364705 514320178 733324996 425955544 661894333 694530904 760659312 321771548 540478599 753028272 868489040 969914234 992111376 60983168 108216069 810395891 980810946 434646954 928196380 374142971 948068313 359831730 762637774 715634493 795781739 200364208 587634661 49118734 633696582 451464510 490322669 429685442 915884348 783582682 846491499 157727322 373029720 287320955 493050902 362762579 770274886 542441555 981659360 573628059 579124437 579583573 920867336 126206479 158565201 677835074 901649143 154578085 503436913 589272553 784276947 548631360 678502574 676801717 818169229 699336075 870867731 952818043 961901591 429117804 936844056 816947366 942437467 839641730 887958749 580738513 695097853 669280473 836278822 971679931 977984035 978690076 980158715 306466789 573075320 784869193 936140178 81269640 102559314 922038036 959237247 324190823 886075465 174035768 192485485 786855729 813806923 92408266 886562096 582995713 603395126 97298947 239331440 91992790 878017994 330658938 413978333 710351776 964542638 63679353 632004453 749504609 753133972 332810041 560564823 557765353 955177995 728452971 965634707 518029571 958007841 473185416 966874380 346116246 794569288 137338651 461174748 771042362 911157835 617760856 799394604 127721529 722240655 234112402 588171374 4527857 189448674 463529847 797421847 336133912 382531015 89103959 763701370 949901847 990362334 509071235 988634858 217306461 573119346 212972902 664693541 45347118 921714685 878218581 923983335 525235796 984713528 48013946 171662713 684171881 688441949 143370073 549353321 858906073 911899509 746356150 928416515 337546102 652548490 431083941 773425855 854080750 861480042 776411378 935691127 39037866 635864179 862530228 901994237 477456957 595812132 788779492 951868008 416902855 914417570 657779408 844680920 311470221 695501197 872866131 942845585 79251450 962894498 947619993 989593748 87060179 243512870 456543459 465797169 279049264 377488852 93253777 396421846 252494574 880636828 16162683 308537151 353175977 970084814 787552590 845755246 470233779 846644077 942034918 989642194 71082624 489156842 3211416 575440792 252237483 392974327 529194182 924121149 115715925 963297375 708756452 978451294 809036400 970284268 538376124 794672884 477323814 789883687 123344647 650443378 285440010 646162434 561309636 681001437 107031007 139500644 744608336 758309600 990269514 991501304 609122977 779052861 66918863 772099888 490960208 541074326 294019186 503122298 779444030 818932349 717900300 882112600 240341894 905332088 603518655 944711505 969425307 974979308 785378564 818321425 19344394 314543948 520171561 983722055 968634058 972475233 825039986 954758917 867420170 956005574 214692618 762456068 783149553 919079448 690934442 732712136 544209738 779339662 128546158 616978558 775519937 950968537 56943661 497637777 107542134 682346679 926696563 973800670 454996456 496850683 537610758 769878824 796799659 832587105 814565058 887721420 969116200 970524695 845576676 961288162 421941080 469222412 599999009 958608981 249041020 729406342 787182723 967725890 657721186 978321885 363470939 773214220 74470042 456925615 910289238 968690919 212239505 955446379 876033100 993623532 743513749 967749370 843926584 856553836 799279584 968139394 776532313 896767912 788172297 946454176 242085710 873396658 434866693 501556044 377171447 544942679 165244107 439736405 360031792 643174691 581439577 647548221 859290631 978781104 463745898 859297752 980031627 984517020 868150019 984619136 381125358 803012347 335812754 488408243 894255764 931924049 349755419 492606438 562054375 689893553 888524087 986234175 140601813 300703844 412491529 912456057 965145675 973171604 704834004 710146246 284220323 737498938 239999747 611565349 375124017 671834268 194151391 358337514 727390977 875047146 104904231 937745183 113320155 874208012 367826414 959077402 370281022 436915268 393623071 680142733 824307886 923012495 278658310 480113792 847532504 892838642 230348197 565879309 614875330 766689230 410417218 837871076 72286070 973306407 573715786 742403027 826871844 844010791 764019511 907567378 777608374 888341761 994328781 994333663 73893270 406269494 837169102 892471669 270495046 620499165 620453084 866580097 992489767 993692519 707517757 910966715 82451836 835709721 492049830 757434862 707969488 759085262 525232671 746462108 894442282 990327648 267522153 914433980 414604981 498231631 816988105 947712078 406950489 852875634 722729120 996785668 159560410 963670240 770698912 862059828 437905246 623746978 830686055 976649721 14824973 877802662 954472434 991719857 118475417 585189247 968150350 990210718 401710131 451934951 617564548 985773859 162939318 326135169 499676535 814436871 759236700 946191637 909476031 994863977 668120145 970276555 499356839 769431090 457045461 539420432 979119626 986379180 640097326 645642897 164137451 224960420 378442884 674915913 181681627 909383044 663280907 754998767 666403169 815467442 897036046 924965714 186363466 860382627 549602491 805890919 771705035 976701069 966353088 967663639 106170835 276744832 153587522 268084999 649531730 681114987 11669952 486511357 756251614 807225363 159553149 905378745 214248334 626312643 144982758 459480654 418730775 669708754 232473405 772607648 550371952 640969692 21471463 538633865 507788482 687383377 46215235 514365607 74719002 159092485 275185521 585674605 818620542 919243553 466198431 839422758 823064241 839217646 440799000 860260852 424422327 575456114 514705317 669537842 50961530 297793314 586849066 719853463 745366403 783263698 236361422 472571997 20357504 857540397 383645103 630109288 102821571 988276355 922649600 929800395 414538747 522810085 709618148 812624875 205976657 327873651 410991040 819097976 492708539 682662212 155915940 544036172 490427405 979305937 614705282 914697469 14291086 916502190 984735921 991158316 405643222 665569636 855442060 948903265 970949974 997377421 971704374 977125187 599182578 636280314 754765430 866014881 878270082 937689388 337399698 453819447 462370047 495234083 502420172 766964778 371894133 664468670 923683547 942438550 170665997 791446901 775627506 995044087 36436007 865217599 306581012 634453547 217621301 267450919 241335642 258175560 945091316 945393601 557630010 705701895 720611412 823880383 617733876 982620862 698844851 929684370 148388056 603763711 66018477 683820606 717140853 965143859 3390617 289230084 725355867 843135572 358997681 503947177 559837212 830593615 804689265 857750930 560264690 883102943 501028391 692141748 489271080 677078721 827413791 993959218 703003749 810483369 397508379 734642015 943457981 989705957 348017701 348870685 972074717 983608806 194764349 554304755 786585712 870964721 715243949 890654305 814776213 866588067 368740388 913584182 517128741 554543856 29937628 739313452 821186242 973960447 517379988 807269901 617312371 798486511 753419341 838451555 866839151 893493987 972376408 997673665 38088454 101897578 807098889 808646821 618857011 846060401 117507761 355311771 78230850 535049758 238405784 554856068 24519965 509395507 248354760 630059787 649832060 896566284 57888823 67921437 502272643 811822237 821402023 977118821 377900856 614925392 897226384 907188568 306905985 986705054 883242041 889322545 668835787 716095716 616194672 777572833 852234264 903766296 415325948 809595026 560312013 993900474 932567383 973197493 247144448 276617564 629737520 829216199 473972789 766649341 423452187 628279884 28980501 471994207 459034996 974322488 440086900 717312903 908958107 994711502 567006241 577072346 206949330 563583927 107273580 907836133 687760531 915289422 366676730 428714128 312484993 550401994 961948610 988062231 465927145 762868871 607498039 667423433 501042295 646798965 150194729 294283174 160410288 803630097 292890932 481596980 86650771 749770366 72496748 320947649 336577124 635771341 376029962 544279586 984908488 990036997 431355503 956070430 668391075 710018044 883883084 891149108 735206055 774397677 940519979 946904158 905140372 936964102 312702118 553101992 320723946 782351166 835985213 872921401 964117839 995276168 540368990 621083303 238698421 397673595 207335591 928894774 258788785 764046568 693793371 876317747 333107864 852216162 640798857 647925182 330312881 433545212 148163270 223633774 744604290 969307540 201567717 454429666 618316380 831300889 122713765 184453750 512117100 876387141 112145754 710450803 712817632 883329733 271759996 705877307 442384708 854463571 702555665 739134811 453250753 703589184 196665473 248837022 634233276 739625876 729620338 792257749 212353392 450333465 134172600 305306069 14878337 135110915 793750743 909630005 956736542 969615448 458616701 825164079 930014376 939783172 568480082 790513334 972992029 986235655 740232595 942103068 432585152 630258711 612927704 824969807 280173040 742392984 962689797 962861997 832116103 982593157 936015165 960798341 36588494 386867118 173493741 969850352 730501406 746151441 414827379 522720511 276897738 951444328 91374546 869707426 778470737 943595978 442808278 466892150 210759548 713410487 29513848 552617713 736056592 996156756 284863893 533825146 199921523 418170355 263435872 736176708 392600294 590275155 805437529 962831304 582729448 856587281 685107249 687268829 290989546 686353076 597972110 710879937 677634875 687142792 378627163 509243192 77710720 710564790 181518259 755761312 552185549 772946807 567068699 830859257 862600312 882901700 50348020 63161915 614083228 789406617 712769441 729733281 583923224 977838945 300794654 364016851 305613095 507223155 58632675 415722198 291231335 569423283 139802588 772518989 320114656 947769485 857564110 947068030 884004109 959672997 407815224 517577749 877279553 957672765 852319098 989250546 17951323 719198633 376377984 896545132 273485732 975307132 55205008 910290542 599490825 648062660 174745358 656026354 248954794 407421419 705095130 784938614 474965222 814394910 554681052 591874717 591254385 639218016 425285922 869337814 61919720 648805282 507688415 700608415 56441463 804662181 48693458 920411038 915679334 987650737 263444349 744798259 61482563 496802913 133999803 416806572 806319978 989538163 66923975 87861217 888968162 920861879 997516581 999103237 213357218 543122924 160963415 728767316 428042678 783457448 204944991 936297792 225534790 411051144 676632957 733011174 998048212 998197572 988692845 993808502 977485197 985385937 560900041 837743718 828961849 901720311 680358002 760407495 617371995 893121270 871727006 952087556 723729411 876347843 776941392 892537706 553784817 576378845 227726116 744049189 15956860 565665371 550488777 782019325 61040852 927264869 626882605 695638876 568134123 652069510 525962389 828954129 509616850 597214389 829920912 948274794 113887051 902881546 700104758 968503847 346787418 510045805 743396617 836331232 825165430 841849409 244701752 607478749 438541157 872275538 778498154 986376059 129940057 464646517 368414353 569933590 43476640 397426684 119800764 902393031 159717101 721715227 458629120 645871367 373935648 714622012 671885708 705809685 578595378 792479388 127970457 363703816 581025167 951248818 343009899 885627565 895927396 979533065 457329622 490258023 574174815 590864161 844655103 857165791 395591840 753377881 678168793 937590288 248820174 449899171 273497833 827452794 235605286 450894594 173017864 181337347 297594425 770526923 742880261 928751202 4498112 589926681 285546940 563544536 853031924 873132889 920551882 939652658 495675645 496303812 31959668 852377272 213661473 846756249 505973733 738191261 85328388 974019672 960754615 961898332 325595872 779790203 875101538 965431187 485143964 554082270 43560046 856323377 403155779 864791720 299301407 467014458 611453963 822718059 254192735 903010502 708339594 862069943 335071646 550299176 864659475 932249705 237252470 972048606 128986780 557089498 580437060 593240700 528309814 652840608 955800461 982420150 202211084 550737244 833009583 835405547 839075060 859635901 822125586 853949259 44340511 545464146 383522123 707523113 379134770 735617444 108559109 955699003 576781660 863493098 454222452 461423348 100509583 604415928 948875687 997001233 136702457 507710624 753056126 830281874 815957954 886950865 923245292 971327468 572700180 882147120 158762806 228619693 589040177 815984152 111068262 784757028 429718966 716461967 584588748 879742323 46824384 429767432 257660420 968901285 77456184 679971300 782751062 834314044 511448528 582765171 734224819 804384097 527461239 812116978 758612888 807257824 842648655 919311711 227470530 565423558 17609500 219458801 725988546 888899309 262134085 325676364 340615253 665630079 43237583 173864213 151771568 963525698 749158071 946277030 62177018 774604668 90826128 510280680 621010891 912010782 719354837 728315104 931847054 983219263 305689203 785375570 794114598 995687989 370680217 411155549 555885467 667008393 998893431 999221706 908972248 915949159 578520429 622232509 45358996 428456761 133429810 161253693 857946632 983817643 449702107 507602878 803007103 927727950 801657535 973764978 20074381 251343754 386523191 453018220 560289187 634972298 585644245 706478789 488996164 773419782 862059086 896349214 680856484 787737977 949791762 968481522 800852561 899448794 10559391 58075842 536936572 876455844 457967660 623843676 85739861 197657435 283469805 815564058 498303040 566338665 125897411 951388495 56710888 904036445 759199390 835388308 589464017 627342263 834218972 997674005 786018495 941250879 249351220 559590458 959060380 987247765 738891791 987354476 671728587 685826812 942228357 965291775 555599196 904691155 594010197 894224667 427992656 596104327 302414360 428753983 369303101 426192633 124409360 869706062 144015152 493277630 948982818 978303123 249887948 407545212 501675 485588244 27537282 537776111 285513424 619038890 361035175 422586912 153608589 388239110 496300104 504400697 795040396 820219914 970107386 985731450 52901527 61082729 600604346 961798444 148656614 740524405 182525141 419536519 837626550 974042520 583339502 784820781 506464285 618081902 96673136 396559583 746073722 886431917 454386047 458730723 615959603 652513853 832851395 877128932 126999469 586329257 876997907 982073327 56797565 173097991 783385628 933761512 946410111 990968065 645931718 995494532 684675087 881495531 534922458 676440638 654781211 746929486 586918928 783445183 521618982 531565304 969994245 982424457 678315215 988998717 301869853 547666740 42966494 949942877 25580160 485522413 203064684 752058940 460533524 810547116 387113634 652171963 210958166 786410426 110251364 528737521 746114529 965919384 561881091 774962807 393875644 901647859 847270644 993856806 314287703 759172754 564491448 782152164 349030047 944663180 505100483 531881977 656260653 977188436 482240915 931504713 259341879 805363180 421782202 943937411 65771463 80037919 596033601 848627411 491533694 568179166 11254310 126880312 503758306 974337617 225713876 585439790 748238699 972851099 667077083 870495027 831141637 853128106 238803965 754811709 844889608 888000050 621590910 865280891 851405024 928259599 985589355 997209343 637243429 901438372 938913271 995400814 374475706 562954042 48341908 92612957 634953273 811628953 51918590 345466030 636395033 981382137 468182263 917314718 707771251 902416597 352632442 989376121 585956561 901826160 29805016 45292043 754030017 995873238 379453085 454439133 966178289 989345547 678601352 724672635 70007008 867532710 617234259 793463121 756386324 770270285 648082872 744415772 903828601 980974234 920592852 984179903 747442612 861417628 123557726 671913373 55092584 932182470 666571134 734602784 616571203 973222222 328564621 423805359 556839222 933921729 771037176 935652145 213755170 288583753 467900749 865685661 931861140 949608811 611867471 945508657 377011361 994543832 363024678 564212119 456395908 975558636 354962427 790478635 118747623 162319168 900185648 989538088 200004447 741565845 739028818 757786509 617281674 659727089 465005137 805516477 593659880 735139822 249171267 466378826 262671697 803273729 563707574 745671120 410590378 917929660 81083634 520928241 732051468 829921393 811534928 910506509 180150523 798501693 609059911 928147701 746460579 881237916 275836831 774752599 192598247 542079941 968698511 993536781 423970045 560228970 69899948 754617022 795290732 977490295 451458759 504979825 423048345 688915233 819256523 893328926 73781945 414938109 725487150 902267841 918341658 965140507 677415002 970602438 316822999 514546850 864677757 916741538 967572545 985030375 963666612 970069860 347608869 961613537 225975759 954045463 933520097 969483970 841553829 902890765 857033215 902883335 960189109 984260233 761594208 887333061 746967012 938188206 235951173 442851372 479980163 584394085 323129937 610328174 316582389 447451418 258252715 734145131 632742129 990390585 428581574 765623065 821548352 932477389 501346492 798274134 579932818 714652328 85008417 173009491 157177184 924134066 169493206 371737229 268455505 747360325 184198976 617381537 198415477 708195188 409011396 877075298 249630331 403350353 607676302 785398252 150646554 467927049 532634796 795715308 79640186 223347133 867309290 958830348 257437404 304117046 330043012 415404893 371477180 950670826 525705657 986180086 642657658 919078854 264770559 911787907 829398136 838556972 354745999 678792889 518105670 945199127 73342246 495840735 38355931 121778432 828054165 965597922 529137203 911429084 452130640 781985811 420353009 938898252 465566636 580960470 650314975 920320028 323533630 326301179 91544016 669223473 18989901 594652509 431891779 791187600 438876963 934734110 905645544 914538706 332599701 843692750 360358317 695896434 661603750 746738437 736243986 966181450 945982886 996617082 152427492 945612047 244688360 690350000 597142754 784782917 554474426 807397630 963747269 990062245 703228158 935477330 580018617 846541497 970494934 975967052 338418853 949698962 319389356 742633198 194295540 733506457 530865712 646866995 362376205 506876423 490329335 617305005 362404584 860972579 403624782 957305815 929496357 976681174 450017814 777556556 553898812 927582542 290060511 421561484 984503070 985816437 324928622 449758933 14784586 538328175 184570873 384690874 552402638 921467773 677492124 749748947 313105320 743792139 808581988 822956346 982983882 992819179 49006494 943100506 328165756 849396027 812817404 949708410 711422656 795764231 361365036 948407661 384974254 917075339 536132362 764134334 49852859 980409665 333266032 556596263 855748561 900333908 662612868 835132739 128212512 255987663 761817050 766846852 77116301 807448835 882189841 942335253 665966442 714762234 120569588 248420882 671349804 672255330 331340824 535365510 298315824 312867906 909787545 933388098 843392024 880898835 584624159 628690464 922004315 960992961 618892461 624178863 665189759 831917689 159834678 252627332 844162033 910704071 829552085 957190652 832722356 974351917 899768488 932734553 554885324 725599507 266287987 974481063 242775850 478824132 265319476 438383815 126037751 256995626 94072594 576660892 222372718 895005448 11895090 229380962 377484740 821595053 577705892 661318694 718867273 984728850 925839847 933348763 658358998 941721522 826163425 982867662 316265762 917798418 570669190 939993928 505901436 649172671 925089109 954995742 143572368 767598955 280976674 389179007 457911293 817786769 313237912 674445223 213717692 265017709 32269795 981623867 534845588 702984978 926823617 998770563 402733605 733067936 967870339 989995546 631754355 959655129 322385830 624556336 707742656 897882474 446176829 662835492 439500645 894616092 79026822 274719259 653697889 852090010 586275967 728816855 300709211 877488822 83939743 846654999 664028992 867627405 745101224 919598187 889630369 918658450 832580252 855831581 626556674 849210687 194240412 792362081 621449760 729904061 43527871 329483589 838189626 859400261 299784163 839098927 867355306 996986813 882393459 921261930 765703922 857676318 554480428 634568784 512459586 829688671 980430899 994263807 200402107 677345063 761743589 936346641 361395322 455744757 302678826 933349112 464656499 798103132 367713848 507537549 516311709 592505509 754449533 949909768 821179520 953910207 384513784 874559577 905157064 937292850 272376683 719395628 256586891 704403274 583245539 712809407 406892587 953611264 597094360 771865473 549667125 825537906 356544158 953591584 228559972 564942289 142677643 445962291 429261730 455103208 753035587 826290541 905234583 986107099 10853041 211833374 734543123 906393853 580709075 648424341 689221826 825767875 769637447 975231251 394020615 667606608 88097882 753745444 793066447 797596179 952525923 958953632 261766043 434415903 383509548 520872508 275797020 853961478 544129091 685222422 438150418 753156834 500915760 794372994 393421524 550226048 736615680 865032784 801852397 895123515 759448853 817894801 599028664 647826336 64099546 116982074 496107758 549667911 62982785 723540373 654567279 947138682 10529222 421339338 211714514 445295029 684604638 764335738 196124191 251313612 982842719 997185141 379673851 437450141 785505555 824504341 522227684 703410622 69769616 720053454 940314750 986208988 334815274 363507397 533705177 557803619 298041747 325305679 799036952 941055242 139826339 641111971 849285322 888444854 300141204 676887292 833975667 904142447 833750765 973731066 352419200 817655440 473548495 756798222 535216972 581772112 897676629 925583665 174715737 319071994 357261246 516615086 362642549 512775442 820643067 974110471 442549525 768726516 834986576 933713198 635473897 842092715 708184920 969469516 164033249 447147501 467466509 894109835 26198081 935177978 322646890 328674476 227016220 825478651 720269667 817871075 35838727 122089760 352352410 993348123 403519265 653332257 582087810 878501163 201611943 350693855 600009027 970794940 656798381 845439487 781820899 909452714 269327396 770538319 606579291 761328005 746058381 933771908 367793410 639996105 737520216 901698266 881876621 989839119 467661767 576401682 96681815 845818462 507522308 802066074 764051413 967772473 188131385 568891768 63830205 678011327 794256718 928112818 420689583 751115796 793905744 854599427 490391202 883832384 660097621 976290846 732227920 948799448 597218239 724587489 492860169 560817377 643351592 711144810 5075654 781774527 939287353 985940908 995746231 998964039 820543981 822760554 931807614 938982367 11970341 162661764 143522434 990885055 98993909 178019465 182643418 592600745 780296315 846053679 787518750 924557100 679307648 740594692 672784863 922100030 795668945 823615632 331804917 586096004 32045384 529081315 611399509 739405930 273135454 643202108 770372598 934423606 380484602 476012715 916765467 970094054 280634388 291001928 952042586 952818864 823799051 876652897 178891389 240110767 509113438 826016332 634985107 835234702 907202658 985413194 996763536 997437886 477533263 482992286 948974040 966523659 511818868 595165939 901114780 917309869 351951611 947295890 184631954 434915975 465654578 478312419 129371458 316541681 132694081 638232380 551767299 601330525 986838188 987745132 657876864 787114019 65567033 418590269 930086442 988014406 230102102 358023793 119552844 768183963 154016101 584268977 253456014 516318279 541406027 787570613 461455656 873692997 160009434 732728103 322011080 437885901 913194978 961509839 368930369 596578471 243781213 324656012 855896929 954701219 817020930 943390215 366164149 390712438 502517518 645851767 104337526 318164976 155638873 432656595 872306361 894195074 312500767 680035587 273472044 532547289 385535845 747424389 191026225 330288051 183170672 550737004 72916747 472910152 294988024 580997700 765371904 941280909 165885456 920086977 561295464 880727147 412022993 548556822 278351123 307302319 145795418 883697091 50972547 83835661 735354176 959721853 845645800 851327518 837363818 850613375 659232698 709106892 87561558 711097270 29845043 921422639 694754516 810856645 256068848 475885527 494727394 868952333 405600517 686320899 499303187 622863730 834856261 853537228 4477730 658067836 112796235 636354069 274792274 468721546 843612999 867323016 705511203 726597686 924587864 938355527 130244485 185576642 304394109 550707747 452084759 574771275 538769822 848262414 680200792 722610026 452681298 904306516 284929463 924985573 232169172 913476216 728605159 764521325 923239620 965439101 524156179 852160995 174189968 709078857 911998912 952079764 525073804 939211917 369603435 514216525 813330484 831873197 237144047 671778750 692944005 986237491 555314780 764041907 33206732 824845500 384849795 595326623 805217424 827318582 328151882 601460213 19662400 174337900 226244383 705147828 842178722 885879457 980332067 988311933 928895706 952284211 565861743 701048069 262920319 439101033 317218335 605130043 690296848 735908711 960102076 981555053 964827003 992468221 243276935 860495859 162849237 461999213 554681569 996895043 552150817 829873508 669288862 808841534 331722326 386686221 617941544 967204127 918828980 919695882 508069772 622546996 869872230 897257803 48399482 258002111 64208451 95660623 746138559 873112462 328487888 604396189 378805469 421559160 95971475 700611098 343185174 928136243 260292864 993338796 768536507 799837030 890782027 944278353 166603361 887894601 555962956 995574755 451114037 916633318 262450863 662209155 984620178 991058331 180337176 739551271 485840817 578019241 28962804 408280810 367684221 553678482 504266538 799693904 202153522 727462423 257543327 591275538 333348136 918204078 493418385 735698926 612476338 895112969 159690151 672739502 339835547 547244750 708707498 754293391 154985385 512150298 691578580 776794419 299787637 488674483 654429857 713843745 274891847 848479818 120895565 224951489 462200695 748835535 16127975 721977735 961446711 962106796 91426249 803098533 824954226 847556360 92641303 875128105 687019061 791406301 782388337 927157924 846723811 858572587 531167927 738778842 488521670 668915146 759330178 788628618 941086144 964213001 957465033 976852727 169101110 215980625 82059385 875503598 781168894 861556814 294515266 346197109 788927624 929872030 977892660 980585321 966528304 983450584 487710628 728870902 868173954 951595948 427668349 487360351 23208802 174590427 2940052 380423666 504399426 695392098 982399841 987026163 194685541 300501363 59766279 644927046 374414374 407489998 853129431 930212340 149783445 990370428 882884242 891307262 956456467 967218224 125882002 541097379 470498765 967411714 432892869 996427990 721743964 740635155 909297242 960503717 697074645 984479100 812011846 993279471 272577520 528209699 590804516 737452854 513111531 846681908 540315452 749596230 637661940 853515490 301092409 802734269 285915922 379329336 79542148 932300226 54082446 221792907 637076715 891707245 173375503 460520636 613919280 690570582 886850337 996603763 262806958 512999939 826670722 849559271 385355552 582498076 956448709 966750940 544260048 774047447 550848225 820923790 236887894 548763859 140728170 810551493 140833512 820643834 85539876 423645872 581487411 616928725 111015479 113777223 349018541 456063795 657070995 680194669 85617359 534752222 933334356 933337606 713999431 753233555 248732069 475435302 114243754 248055140 262861242 499690220 612923573 986578094 899654800 990756348 337042000 913395095 631353443 892303801 151657358 705600632 855304710 900792425 233073259 547639708 379598049 486306432 810707900 938057564 97105100 924987066 448357736 646659978 524253149 731212808 162830613 193063214 295254846 812274467 203644920 825091831 755309307 778588291 827714469 953452974 711568993 729465011 86444071 212899707 39233252 314197956 770663268 880739477 178649709 753356890 427250413 473966424 200911350 865701864 846983695 907218263 918905461 923280595 372305515 629106876 39743299 135341625 404330721 857590641 124072863 329026053 664965542 953574068 142779866 592166693 206609591 832387837 371765687 766214195 787766079 993387332 451031227 463696828 423503811 610146859 247525469 986555739 473166970 701980752 689494103 884179308 73298040 715877957 236361419 719037365 496687757 614545890 202663093 767816675 483328359 816897022 523734029 570454947 828546410 924078408 204116525 324433408 390437779 617246876 579640279 624513712 502563374 757919693 544499470 840099410 170312262 755269437 794668232 884032882 852039954 874268904 313289682 379028494 164876456 863414747 832999123 849223211 211341767 549302868 110842884 856047301 802819984 835012884 617636327 753565410 213302225 939785931 263387744 780202947 315597441 519123787 619185272 742662320 57271294 168940215 204652023 570266910 462626701 660212627 341830831 573239937 903482150 977123294 326318770 836377019 487514365 764010720 102173010 354938135 595482836 842287393 638199109 867770772 465920305 583972232 134331346 461362626 72944386 618866519 639133970 952039140 245624184 264296012 512218715 588737935 667635439 668363560 748884657 878081811 139378461 461976267 179618737 488244165 489535805 760678022 995973394 998435157 31402489 546392577 667350867 832315784 477953904 886737392 633467726 962688515 182024345 563500040 74711735 583922169 570340516 772586963 234458071 782663073 323896808 835247672 915281978 961915967 205294683 609510394 900422557 904513506 198033955 296945794 927628369 978528032 952896932 994258484 447435083 703728739 11680789 858565235 902451412 951124537 79140006 173149729 138700292 450401853 986114529 991583257 954246964 954971350 550975858 653878235 70829423 403770263 232762862 885693040 308289083 674289569 748554413 945459629 323823674 477118739 80948625 959186478 547998969 617191228 347281155 490682384 871568862 905214413 932221225 982389581 840062850 857322699 763404759 897581239 250062911 462349859 537205717 858377680 191843693 673123045 477729358 657619444 283467431 899912216 225645906 442166099 949607415 953928976 736751735 824155831 159130933 495386146 906955185 914403337 441269010 841787762 280139294 939178828 579505554 621830414 607944473 742248385 165032836 757631683 172331637 787814693 655924976 969811596 945357950 976327228 877375798 898741774 702436584 953133846 36521798 413619099 299697593 421516516 666549979 726703813 572890561 735231548 184213806 467252504 601042723 875235542 915965112 945430010 164469650 475357371 421758405 802757533 636981969 763559808 396248932 851325747 729644031 914162731 266355378 950121615 994735295 997223574 554795563 822155698 667034699 718424555 972557965 974172123 260685391 804111882 661344025 924602020 476500033 751538533 958392243 976467507 289498365 898414002 553558883 706905689 797447843 977957260 52928185 69377427 697998273 981990963 385052865 983541846 534498513 911031809 772675333 996901093 250198854 339154525 836450853 870744986 776722032 814069756 296644412 299593795 568971761 781164591 74326899 346906083 411671750 762349236 716298323 832656947 186083357 998588328 867695727 982667288 492172094 762897676 568949799 980046680 311096335 610557280 693964021 766806546 374205314 476309099 908181289 973649535 589750655 626233904 756562686 881643057 382156818 849584597 479794130 619755000 613869888 857246195 181724551 510755241 440225664 992430684 742798846 950487226 437529448 883869116 466367236 853906389 213234756 858069913 580820577 757364720 175041543 505095579 975842519 991395712 227054789 265199086 171888716 659218865 521656006 808454032 50711200 443912363 576889809 960562571 232325493 482476239 548461434 615038278 193836900 937652015 828441437 982053037 69621122 546822376 344172821 703787137 118159601 325280974 609663130 940917221 520059523 759792503 22441033 211977642 891305605 893595822 991846550 997557672 997008927 998186419 759885910 870713561 59047274 549448608 892436068 949875879 188551606 569752187 233231155 415547050 693717785 808482524 558353714 976039138 778422419 964626906 299483263 320635908 842127193 852198326 893560081 907075010 990766414 993468423 229403154 564136371 808927579 861992306 127232416 614237253 882788263 974038738 251102957 973447354 330043309 704141377 253181835 482987573 859589093 972267904 600188277 660600505 438046085 734810745 878608566 879962238 267959544 625216918 450252082 600336186 774103619 940999814 866182446 956226423 572072705 872819089 704272202 876095969 135646893 392622569 537550418 730726621 880007312 895095868 66490340 527181843 590900607 681902328 506902307 541995158 921893882 998071800 211633059 323530781 372610400 773142843 143300340 984840322 160137244 755310659 889321902 970822310 557027970 709172990 983212058 993724229 720346425 736402517 422556693 508447819 499849375 553761133 52933310 162873529 525306036 556443354 131283987 827823930 166294964 289700017 157111265 744919441 853647766 861357621 397902322 947565458 183254450 248590499 826008041 976874808 678176606 714241901 747235161 787565467 357818816 793949565 151162982 931022029 295294165 855285726 309614910 491912842 171399485 181270731 260014176 924673952 886940206 901713346 80364559 448003348 60961143 159239150 500319137 575100175 671600052 983400155 68130792 642669153 728806054 816398708 478024055 591750548 127695492 664119063 541247696 975822162 829924041 962338321 410724187 878623883 576606033 976034050 642704022 886966861 520678564 868750167 360814305 454875108 96328889 790751545 311781578 877893412 409614476 461037401 919119477 963227648 367388732 441972915 789979738 956702061 144186649 405514838 504932398 659962370 633388751 901173776 733716650 739558413 172908173 717320918 669692162 689444604 527316772 659079930 164254871 447025975 36355028 619503403 287483147 529999476 745597905 934667690 578258734 777326070 594552784 714355799 659119612 751864744 125304064 741294975 751970335 754878790 260836221 355632817 673997408 815637973 543133307 813156033 418098039 712528227 943022169 974287015 950637208 979452043 920953082 998089311 335746898 893123387 382496433 872083367 117729413 968873561 976401790 984105772 448166017 956005415 897250313 981176010 320453038 540224880 798155660 982678044 612748448 657061817 644466724 922914293 386276116 566512822 622544166 688292589 248550854 367883914 817216591 834416580 360025887 812186538 967387914 989816186 295545818 355366965 982304251 994166267 353087750 540822632 478682967 639275953 732858596 971714308 799270576 831172816 425680141 676645151 382262702 524331865 634822886 931164574 432730858 780947948 751407473 963956685 854076167 909738989 434328406 775001158 75642884 646572732 808057026 887619859 291208228 947557636 514242844 539516422 719778003 932764874 784516799 878479133 373730975 576447523 273072852 534898118 798059079 973684832 630185259 884149788 790795355 841896581 419754899 460768682 465463410 925300514 723438023 868334674 163247948 605100792 972074889 978089682 321595395 948756816 803356298 996184291 928218578 928857302 466548893 472559689 276585613 986299993 145923529 859385573 386298628 916964485 138765297 926197183 799107180 894448951 830034626 863478710 934978226 962938715 148391222 832684044 815277175 922969268 157178229 346412190 657155759 849185901 802212156 986642151 179848984 249569161 95757106 537211290 798007464 968256178 843828646 872093645 375701383 639276869 884208118 966867445 942830373 980772922 416782630 862855488 635868301 814321791 673273648 980541702 250349256 552735363 103858375 879018697 899058770 903105822 464081814 567333591 566088119 876481126 458517327 486329144 351975932 499570052 63191303 307041762 723041509 940801563 846827476 899296531 626442494 716746347 493392491 948852833 890004151 912907840 983494333 990927668 997105767 999318134 319176253 617614309 324841475 516804367 600386669 853955382 119080022 761217382 753793603 772187609 480782424 750925360 602647477 857909879 733730697 960517932 450485129 813267993 801279450 918063032 818710345 891749017 717832506 878525303 557327171 558817476 771082531 873027862 463015648 665295543 533584999 967592836 851918825 869542658 976752000 991445065 744019751 841133914 366790270 620415951 963594589 973379520 471201420 729717361 526874665 964385482 50377721 133268230 429173625 919118763 91030218 543059225 830205316 903763251 376852006 426967746 812153955 887548359 138975556 421238406 904122180 925477214 887839344 902866096 899488550 991303446 134912590 290519424 376754381 800394874 787144745 889817590 539770796 593148619 283457335 926941367 922604008 991240796 470094977 569839442 650095051 789045465 548011218 556888088 831888248 858637183 225243132 886710610 788389285 966400309 885045115 916068213 354810599 844568554 270453941 615523665 265741094 573843527 433331327 483816986 667938388 718240564 303064820 846427262 16166180 842936971 969587495 987704209 342205391 795154585 701627240 964377389 39069482 569619997 433536754 585392702 176311044 587700516 369149221 397006823 452219307 837908916 608087146 792463127 690759201 768982602 981877558 989208470 776689948 792610467 856628071 877730861 110350497 793722654 581323141 598828980 570113521 630069807 859969161 880103681 966331813 974397277 482742500 607449053 96122854 339248439 761703249 953772652 563921557 990406060 466757192 975419844 160452514 707384247 278657691 482821601 220379699 292397031 702950698 859377014 763107192 864565078 960087365 982884081 554416872 827394231 346619980 351402207 962165343 964172236 60869319 193094392 191471868 838015860 17726032 384712275 650920297 776442093 650556764 670077631 618180632 987944828 627780176 671807866 132641806 625994217 411091619 486970204 52671146 131998781 596385053 680289124 739991183 870572698 243947879 512070253 225418746 672912272 841470963 916262611 343650134 380933293 960767566 977075261 833919546 995875382 108601430 742518627 38054579 966022578 74935993 734959565 613035233 756567793 271498673 843858841 423712002 638100483 773367243 908743130 601127895 963288351 710756646 892611051 82062789 477691091 763448054 907538230 737783230 826368076 41140784 458802133 846725606 986893987 659233792 942136796 79769995 169505079 195461049 335577398 729963721 863738720 134708178 521746883 564900270 833054615 555285313 975960743 969770750 996213097 537425732 667995616 376357908 531895931 647264030 879816018 171818119 546362745 56013301 946772633 172385895 730197226 801483732 921821630 382369282 534984949 839714448 880276063 231184283 970794502 21909449 486189884 736301657 886640418 857368549 877078922 270013402 568197152 109204072 648124885 975301724 979973339 436683289 746738284 49776554 743116406 906888169 938673128 68602586 476325417 52159772 592522334 206642054 728356765 428307088 733331019 163511773 194453959 728465645 981625404 944124947 966065950 130566481 414320978 176525171 631191350 723525585 880722722 450564460 868254530 96802504 248169128 516505372 598650718 521479007 777629244 860185175 907786296 327944429 926230762 180826303 748199509 301091760 681139164 54868485 754773921 420830070 625579998 899861912 938774937 329798699 391894416 310490010 561895334 590191327 947465650 292181579 328682784 473217214 958046909 862785798 910752809 403501093 817198762 457761 727275101 133405507 180251401 245879018 769224075 62258715 74981251 798618509 868466095 202870811 226582121 985760118 986129230 565807896 794772347 328866905 735116739 283081365 299344801 530379763 692861137 696995030 787803221 943820246 987623810 860654690 937295584 139977670 888770556 220789270 848355859 476093740 476850624 936882115 978813830 31138418 405844921 526461283 756887846 968486718 986899838 62586594 997474834 375857903 526245145 729379484 829852940 64384042 933927371 474976676 933555514 909172464 923589815 215043156 270072275 835066596 963279124 933387446 939676597 168942113 709626774 92672562 647027570 315788912 558874714 959978228 984982463 462336362 672578390 979969507 989155149 983573850 984188625 950389872 997708191 286532632 662878245 928464461 979374453 161179622 985386417 83262570 579515675 764249837 811220778 479737797 851873188 486564412 900803333 907734802 974669104 849135651 934793463 984390589 994735976 763705537 985350863 582292274 814533059 785656276 948438055 285937092 771817005 369102616 573016168 210742252 851122155 973357677 981008613 762258664 930857285 1755137 294900471 561258557 928438770 264493188 966972590 228675963 471039822 330462654 337244108 146128969 943901685 288142272 441581771 207502351 643704130 673114676 976739410 475681049 950653871 84487396 862946411 566616540 951191381 622854563 799707347 101467529 344430084 243669090 864092243 125636036 668945844 763062112 851518917 596981775 825867971 204339135 565758915 457911138 851016125 41622412 303138877 113810096 479161149 715025105 969455027 518268484 622782180 340222163 860962783 200854333 970994700 490247653 499935671 161426346 830565824 576916456 834690120 675216437 722805474 893589439 909386677 442655660 519586227 132972596 755773178 41633889 117959728 26188653 749644762 927173958 930643986 862030493 964866565 938328100 988653221 676100613 918700163 159716881 202348401 285471667 902390564 346486160 608652588 531807903 977304332 825453988 853365888 978930745 984177751 997076695 998212026 228144424 546530126 781877042 876973626 389423369 884633079 714273579 898684925 33720561 257682406 489008859 905999364 90897027 457861029 619897689 624077865 987244344 989890472 552074219 736903123 340739928 610815986 999268027 999303089 766171395 804940785 896897700 962492409 193936259 878143664 867038291 941341409 330226379 603915760 400278277 439806290 680688597 736767131 844209956 943667447 959835546 980324357 657431032 743271934 231223074 593004022 525279182 543921314 338237933 406896810 808715665 998610691 982225933 994976982 568179125 961990061 586779481 594827384 492707025 787793532 552100240 781442519 476172325 889475326 643698932 983869202 589549180 665631948 781484197 909259546 336758592 854075419 139666927 719600430 569135490 660617858 459974444 517614278 320797555 737236442 135035528 423836314 72088229 892162547 640554063 907853345 739361090 792713502 56608332 931982394 361150138 664972871 779113251 810206886 703940682 760015202 420159573 994281446 193888576 911158924 538022197 574693296 346248086 717115994 430357148 905984061 320421136 378154836 411965608 473625623 484847933 870176177 488355848 813250616 677657403 956381621 57751963 413811901 910646875 960951663 257422869 497493084 516973580 683275636 325740578 983869789 839690081 916355183 499707596 711685429 865878381 982278194 557384509 704755995 939331894 961347994 8409130 93411577 318937290 439718728 280782094 751335952 921265983 935526964 99539186 753445279 58648793 614372195 598941404 663377069 508672777 887374642 456064743 972664103 908000657 940078484 431380917 464968621 15323704 482256884 926422054 969486973 326315062 829420252 647533344 844608372 942760387 977624436 487485933 729247856 102784117 420183588 744580299 836044620 59585711 509984328 352739649 560889110 847706367 900080265 715552382 853336204 920870630 982501276 337280156 691897879 100681825 329654757 307175367 602412779 692240255 881014440 310255561 375306481 917219326 933767791 654179383 665882258 210507067 556588313 568161595 583463362 433391419 591107213 222428452 583340243 484539978 904361026 158912685 903917063 577396283 807736199 761385376 891233890 606457744 740166687 31830590 448761762 910866022 917437152 326223631 501450092 448527241 563812837 863238910 966188211 718379652 923376542 471335326 557531875 6003985 518004934 188357485 756373949 257997550 415820883 361249945 743557888 218123640 586828154 160290137 180843434 63177110 888308306 943580676 956923258 917039912 959615557 8660990 240521713 475667872 898393308 912573049 987219885 60859289 357132383 42608326 143984311 775404546 783166336 144017692 586248539 937172154 981712554 827466017 902761767 84576848 811637865 298325190 478360735 987124499 996971086 2704532 217378564 285226662 320580501 380566269 861294014 109062897 651207011 38779431 531665166 710594397 856013814 63202890 418456113 341541199 600542791 598188318 991784959 252899246 867552885 681996829 848210079 852879126 987585656 832714056 927568717 628851392 784384680 391824298 762910424 824656518 987359469 422593256 864134491 676429988 751359020 527009505 816841601 424745320 545263391 732071210 883971596 500111754 815008161 351915144 796246400 412054095 820764878 24596736 244726277 750750492 937913833 801891882 869266323 620446729 930821390 763354663 768378208 447654340 968593994 678216819 686469055 176207957 324581272 332088659 387756682 559568799 919451189 210560795 527693093 45891999 259409053 456580875 677359178 266653573 890289636 53025104 279083799 234340613 383485283 936140960 995191129 803552078 995669445 998512715 999322284 102556315 416973164 879976129 930541313 843478016 955050342 317137039 649398300 468653812 718839131 947169877 982282035 386085425 480258695 968831252 992827254 233812403 565382948 762418904 858920100 322006594 345329577 502585498 553196081 925446247 957934088 301826050 356053859 33073270 747127744 179739266 185253103 32039435 151551602 347724463 549469671 180874537 738916940 121373342 240839908 1988028 194516796 398359348 571096868 969248404 972260857 932203773 989411230 332751316 634868043 888598562 920874640 870192041 902080955 536798037 963408031 505421577 814043464 513334141 792181066 670807424 874726668 782832838 884368171 450246513 675458237 638314186 812097516 741935633 855864021 412979482 801741065 87788710 673363840 356612875 836207428 691114403 793350239 330032397 635646054 449796679 718938628 342462237 761796911 335987391 576387456 197723486 353487238 811420944 843155108 433577601 864347981 802121153 826955171 776948802 847019450 323189658 726842200 435026643 655622181 591751829 897270958 896230262 935595733 115549078 267182574 137566791 556486283 673230334 964005873 46031638 434943737 929833898 976590680 303018058 656153966 650441485 872638234 994424812 996571954 411635259 763594216 215239155 456934263 653085810 822995141 235792670 989387120 114144284 270852913 923492580 966467035 931778155 945178654 586581783 636457810 704178661 802142551 547686942 559434637 566248512 776014569 223209249 713981096 870987413 879484813 393269959 916672346 586996498 635945765 899347661 975075849 851405263 996952623 745533045 941684104 931358648 996623844 710690559 851614256 342964003 671715219 198934657 822600528 647086985 704047672 262321626 885494044 680224096 935062497 935110603 986083402 679516323 756427357 847174171 912261303 289260277 452400074 217748763 952201419 238305214 375380735 41130762 75043199 222608055 961233849 145155285 575750258 170261021 747610999 884621070 912186469 460846527 950504677 952106467 993774669 293570593 307514642 837696997 985948480 777067529 802687676 264220072 954097600 923412147 997189021 478939723 639539594 669142805 771869801 815545773 948729560 97397600 932159682 986589267 996626718 505111592 881068834 768341377 973008522 179192201 988063471 383018852 622029455 659860202 687224695 260523682 880618395 489621126 973353006 844777200 945608726 159495553 263376205 773962601 783207454 933429910 945257532 982125470 984336905 91821101 259061172 968199901 993661069 260801308 595357876 137159842 730308146 350734808 512888711 925889950 984380321 287731688 739811183 196072102 779659206 555758455 814428322 406045461 628021504 296394767 985634536 519865932 970940831 534097760 604979897 303926459 552841702 539371336 866796911 179075187 193741941 271602301 535077409 981067038 986089574 408355918 963101250 46252866 519033401 303044084 852679070 900223477 911752170 545454888 668100619 139124885 769031123 984657866 984956337 100627123 757905295 336004122 676133119 854846143 899802791 284871471 855084253 276929389 865119336 473022514 738747894 85735441 499051843 116196040 677762643 699630653 807222004 694316825 837417453 654544505 965292800 436906045 973592957 147223511 692861553 226765889 430052501 218943667 417670480 347487230 948264174 584446108 994242074 337831823 376967770 113416530 343859713 540386959 607645792 362434721 938175618 934884339 966957314 556069808 862325027 769709473 942868448 644503065 863115185 305059019 831204912 692435164 974219716 185518641 298165285 340742048 798126389 770779492 813503804 948541685 953274697 13637228 683799192 779532556 913719552 986928101 994098840 339386348 596916525 937397914 945213712 175917088 930857540 694284329 820366759 235039473 537543440 655115957 843129935 660247866 691453625 517150639 750799900 766136008 978154699 218144430 342026823 814075156 980723114 961082176 992440812 362497376 778874127 224839441 583751161 24538509 791347739 240110971 976607728 454400079 583277506 114608569 223243494 78081602 963030649 896686642 998905757 383204473 889115964 848703767 941771667 516895537 521382259 245811026 857899898 538070321 551694503 681471820 783515537 47368174 330358948 714684000 795739546 832403181 881280639 745734745 799255392 746158649 848230406 184845522 906105753 650804607 816753262 444685010 976952140 932051774 995895224 670863190 862716847 266124908 873346176 448325319 853925398 871421704 875525814 95464185 681521908 361481708 950380409 140730849 292527564 123923552 979408771 529583118 932209829 58390686 327489107 870631792 889967051 154131525 412299911 877393652 957156925 692986125 922463275 950072048 952644822 879772238 943621840 754993974 993128559 679009486 810826616 34486858 243284137 356252378 523309554 925880965 930829063 663686535 873065355 823858830 966460870 134180073 805521531 258523955 758563791 132556758 381748236 31417393 50197538 241073811 465086018 973096942 993306565 794399598 931333882 343063035 582679007 596433913 858004228 759295421 997020573 670417331 880886780 768343165 863176312 962514935 988884400 259457508 960564918 640340987 750049049 228989846 549082508 250245392 519586512 637000488 727593584 385925384 837080831 547982216 715584568 290773683 963538100 659539738 938579836 519234966 863674302 508649139 606815020 534252561 705650549 47684441 855702104 68546506 372249000 89356042 712406634 144500721 785946250 939754853 942977637 6578051 675411470 373796204 712198402 247575619 829944569 268070024 371473102 409170813 804708950 411662752 524983874 894489508 962108414 564187071 889602833 276768958 591674365 665790590 979119375 954290477 979344045 277228000 752848743 312233471 688042379 313554016 531002829 870304735 945325260 611554784 945727998 928149999 996029001 11678429 613633742 403368330 780500815 300517357 346359470 733525495 853812233 385101418 846088146 480251549 639055275 751630266 824304763 616820822 764870889 232948129 890651917 981841981 987836075 170512724 663446611 916284216 994720629 108787601 869139889 957419348 959208736 197334953 799397546 334366608 869676949 463113402 719222364 394265918 576645073 119869833 846303530 405656851 463187078 511754513 892610860 689590910 750013277 596446329 742995970 79015817 520602978 73076471 735791735 157949480 501589279 803594161 910496824 519046844 988383600 308079547 954889852 397376659 484034466 24875490 151359870 194857640 529207636 464987113 703436469 265523441 697840254 909105033 958971635 472773399 945794089 959193731 987004250 889053215 903117838 528238279 534501395 698099182 913611808 609167977 648500723 439770373 780860668 567414704 966797786 466058368 750455542 183835395 184858874 806731573 908667816 40490800 634218661 152231234 756402060 550440339 814138012 597995538 810421288 804242713 998561469 992041815 999289602 254150347 267627752 545807595 733319900 615522710 776130440 472227157 509221769 924945206 947276764 955616801 957871442 909335583 954122713 133071804 836634647 620912837 668328333 158983513 179778838 979834750 992262642 64779755 952176635 886249501 898927437 758391583 905610225 927480149 968979715 663918995 674496346 502454846 779712745 509384198 590851044 915890376 956768722 260197207 547318119 897543245 909995586 183464954 885720238 538760351 853348311 914351036 957292974 808056541 974706674 284175455 885651622 653269834 695078013 782368728 851492129 997320020 998151710 540852140 963523152 184867521 630737224 1214303 921767806 572498313 771844902 960194331 988727410 992039788 997777830 993082294 995277902 430384482 993594796 95804377 572084600 336806494 430118023 676050325 775453658 365055384 406777137 602145085 991185800 624033258 739253062 180459106 393913751 592381320 600721687 776445394 879710642 211712744 829903140 759605842 896391881 380910528 801005642 288544401 591864388 977988684 982910263 137677908 662351719 156228747 846729445 119667152 511995956 462423167 722508850 475487360 986085991 934369935 968479594 951759771 973554092 22566850 380497541 228461604 680910140 223779967 310337737 571859611 666425846 997106470 998563068 10506511 738021042 668299218 983168258 81623734 431357323 611585481 913726724 338378448 650447090 728812466 735628755 931477005 986259603 827106856 921610588 4057287 744756381 891438372 922471811 263407588 923717014 581720807 714376869 628729948 835433339 216817745 276183761 397903824 401721661 758416769 965711697 204590386 318009457 470618236 901896135 708826571 766365509 954577474 986321035 599197771 777187306 710815055 966214889 729158118 750003900 451011748 599067613 75532398 477463135 890827223 895649662 43425970 548799875 998225617 998296709 685441071 739280677 312707540 987721321 212119334 328322277 267404144 542135486 767696812 942411422 503555784 779153114 924021115 953057368 448423272 549555916 500262008 789326472 238931826 754246694 251769811 646176838 43571136 892606611 886670644 987499433 11026157 844180617 778848352 934076550 100561002 555495313 651477279 773711029 763534021 765441853 200122226 741700783 272727941 870684379 679818309 774493264 891145329 933590849 160767898 536586547 800265120 905252003 697176325 984158269 649231354 868547755 779684794 801540231 478050272 941550027 207397677 282639941 408446172 785011261 566926119 948839224 595687724 975020808 788972394 965301264 756286515 887872967 175655162 664553449 215811953 982514813 60985908 754395876 426294961 921241793 624614955 965768137 155375679 806450660 341361317 504047444 169995811 919286313 801436837 895869189 719338852 930370658 108390 385442158 648834230 860168084 903973097 917599869 716471191 728026296 327617416 833491355 379062340 439105229 767490719 890578356 357991404 673268998 75076467 923007999 537649529 838446815 4925664 755888906 46639011 540523495 394034324 939555221 320052905 660474712 989134613 992149311 85169846 647640050 489539188 644285426 89470971 613639777 341102585 591664599 269067594 751913462 759791235 972604981 369607522 384401432 850412031 887520940 606411120 642107446 525741531 864186105 394442644 870262955 483884033 660741548 92870257 165766026 99168917 353559704 70694449 286153712 723779276 782147536 861242423 904048924 497640645 820483328 215479187 745452169 79131407 261292416 7900855 329846222 175735541 532916882 527908030 886064588 447766836 519777283 445956666 841355390 257256758 818476001 87656841 623174175 308380436 921307416 754744506 838742411 698098217 992868566 776776790 911745005 17636389 227214009 963076598 984592801 619791022 979159091 359446622 397610058 411720463 708180055 439136662 706988531 544938128 683982387 874391374 942157908 798180733 842414066 363067862 664326498 976596608 998947776 235487903 738587053 437315769 849011740 605630639 948727093 590879572 826272939 474089044 734601107 620451767 953768982 278813212 399958330 665967048 765035863 640816647 969356341 972383091 998098204 166495317 799448736 312943553 432355165 398417841 590016625 592460159 687776892 159738541 178103283 147031816 330644472 518483382 522313640 597474796 603735229 727716676 970526095 874498579 920867178 886748912 890604868 499917084 659035010 749220456 853073510 474536987 776560677 387156613 610762017 958101934 971825724 526175161 966409479 759242031 954753856 343298896 725682696 196957711 792881665 949859654 970702022 614166819 809356641 294050329 892221102 100540782 966571481 599231932 846608975 208581439 707410205 878429816 986421172 908353968 914085944 770981813 959135121 663474931 671341606 698869585 708358178 89351703 927696381 113650829 545458320 378929160 787443147 830105339 959850848 115545569 811591055 164702167 602797758 917944187 983046999 179955158 993618337 462211181 567599518 836443827 909111112 325129968 999355238 456253924 695300141 648644210 996427773 501445722 720529291 977868357 986701918 124203109 722322246 793738210 913161035 193304550 787675859 584354314 940262260 72983089 863257271 87148869 462782207 657773958 709492472 901403846 989798548 151684408 700649543 674149110 857487233 483176608 487240248 234515257 275383336 895988163 943111410 799937664 998344020 907380615 985177651 221115777 725804541 170076371 817695047 412755917 941777019 38610358 773591913 123237736 271225273 383135222 825936765 696585198 760925225 508003964 858467730 692376735 828485743 163845372 877129676 486851934 911656319 213750319 707951122 266518138 617910011 964014150 980082618 519089463 917881939 118163721 801423783 595901128 861514962 559014687 870766505 558321578 885233047 898190717 962522918 183176206 571554098 725357215 785465125 652976926 892005341 291258327 315024875 941547241 972522235 448482209 608319480 763580909 966866816 219170602 825554369 441587683 653259765 908169262 926252702 676103248 909340179 914157632 923047960 424593496 843252655 637343542 781402918 246114594 503569597 988499844 998172104 74761072 969041494 953317240 982045546 642839318 718212202 431458060 858965418 847487316 876061635 428695330 974866079 141477687 330433914 950790168 988180572 581971497 961284945 118884586 794572399 660314929 782075971 611999744 802375891 628853383 670391175 111571630 477661778 211016963 455277709 732522786 790736832 839301578 993627635 361893900 513250278 54208081 145380533 332863578 571702843 370278943 451795280 622942662 660447830 368415732 879847495 133581646 977062747 322010248 492709564 453857849 825413759 511526940 981824634 949822011 995410859 140464555 940857345 244713716 708752746 815879313 920576077 326830038 577701925 451803472 942163817 463575983 907116466 489122809 898417023 777076019 964557627 104977030 374540120 536383579 692287456 181235378 513513664 551321797 680483319 239363109 516765438 60902117 912197066 175682686 533600171 569794990 972453088 928829554 962800930 710454101 994820383 444398591 664851233 618417259 842181237 773186828 972445247 644371871 686722902 460119427 630124755 206713924 837704622 476355058 679057732 269353406 569510858 713268724 990646089 576902916 745639536 306960734 540018474 761361816 973209678 309151957 456899423 299592282 467996078 819266141 854376511 141249282 955161470 847313534 943485539 738815665 750146519 939727385 971758258 864307144 927067683 479215038 688902545 815684126 967696389 56179580 258785510 148498378 205838944 65665469 835038544 192218009 816650989 897724901 977591960 764924447 939872972 708404113 723605873 401243785 609745027 13605966 21147124 307650587 914842376 964931545 977445914 925334672 937146001 1808152 258691061 920069465 972241988 462968789 519703306 713490845 881239612 396252438 494340986 530244896 773996206 527738478 594550732 584610281 918215091 24525579 481736850 749508863 995317888 337084981 634637684 920619006 998079884 530180421 724295435 943243463 978677368 413223645 689841745 755347202 912476149 615475041 906869013 659691540 972365883 391331862 719809083 843536704 911739183 39501943 744426991 491483721 908664288 982656532 989092183 934914402 972047521 800756824 816816042 705140272 885805962 615728512 962783183 849351921 968564717 524569957 545294630 211160060 482394489 2778236 831416135 159454957 947853257 793270288 973519836 866382194 891853417 421161122 680730451 672163714 881421913 533167764 985524350 489670830 604948344 822064630 964763633 443028572 743668370 367295819 919791390 967882446 984746741 743396810 952204881 251930798 926151512 280811638 599407261 470749189 718967010 970342804 975821782 843619025 902609063 544934878 582644517 637649825 814325513 53391352 207917281 908309835 992707451 496371259 959929061 306410425 384401828 25682026 211528273 275337200 350186014 61255554 924717305 878236381 950053319 640810849 997986908 294187572 843153000 710172967 855385415 366593114 520026637 301373045 341854828 145036909 521501539 797968813 961697627 219192631 656793842 489107629 792203831 146122499 391810941 744281240 897205749 559407989 650835403 347834600 748932330 798303399 981723612 783477614 934625281 388805351 501326984 29762064 407110051 138687872 780375947 192844783 549438310 756017369 832878245 22803769 112084536 87746573 561136599 974063421 995051080 242879578 397964674 721625899 732952208 892637838 929925270 331435639 950133542 737673039 886701313 564449544 582344436 430157345 618279134 129206510 164519665 736607702 961747984 145781825 329458427 623808052 808853889 108612231 928743927 673982846 952769389 663755613 787849863 838594247 903537104 946583630 994627756 897539825 914959281 138948872 580010490 282485228 365325111 204167291 969637526 723856000 749711060 837779 318100693 1381429 787499798 394660162 787464681 607162801 987183546 128085072 524970311 176748425 376123482 562206710 633211971 398524439 968267262 841036612 948722865 472449418 585777978 36166915 384126394 189856598 966559903 683508447 825811777 284846442 511417954 696118952 925392608 814375034 864928706 765153677 982422042 743466119 945894421 136412961 321108734 133958549 612057152 331730901 366161466 521347305 926228380 926096614 951404049 87342327 441385602 730071655 811276955 341864933 561625155 788776349 837604404 769405172 808412535 513779250 647453102 564896550 600934101 333089366 873119527 297795708 323380583 678848164 889869534 399984783 589241156 366693447 954094299 242789917 679604821 856119561 927258289 423061596 489307926 54734274 489755613 16170056 697591468 726989673 999359519 76654899 996216767 449649447 568976653 505711888 666381108 805988339 870706240 740350289 907898856 7776593 596807241 845685357 992919010 800716372 879542996 767698952 973321128 31569952 504244348 767554770 893196725 640919880 926558067 804444392 850889292 29004898 908706242 194831005 611382970 283523881 664852511 655407893 724610456 382903088 558548533 5402957 504003502 2681044 702184940 98028849 444773912 460809118 926080655 529352470 642346630 24814007 515022639 133869612 810087528 626789108 954307875 960850615 986663633 474982363 548933052 202996544 548275343 197713563 994869481 254217170 491540639 547130142 865093345 35325826 681611479 744669712 973087683 259679742 351689868 314049876 725758884 463122194 622793892 507039605 558307235 555723061 856857461 452462402 856537311 314580703 789131821 315269217 379084216 395445717 870000258 604882382 731299935 249756748 384217885 622676 915930122 21454476 143120527 208681857 573971071 632985434 914911778 272181152 621789533 995834294 996401049 577122738 773112170 538483279 716242367 223628264 256966319 337925804 451674840 897390807 973610326 485294161 704421494 990959712 992924122 881977658 940587174 253682939 707821519 587626147 893273630 634027210 802949834 207852118 979579944 921962294 995160597 235238897 992991698 102222584 786469174 209386381 414996149 482729919 672195932 424402563 889060441 287971049 843147950 757875543 903257252 585870757 860165707 843871116 905548176 793913998 986459412 784485881 984231091 416895485 565466974 217546396 415501810 243235583 668507154 312265068 870734486 756963540 988565720 695461175 990711093 253348736 791302212 75880843 195976768 329027355 885210219 774181080 972402048 972457959 991414089 908446880 933078204 903308689 959133364 258427384 974226801 828995446 891608685 693799381 748981644 286844319 865941019 978628629 998645223 817632464 984882895 118125431 872346594 339242847 359285535 986834062 997637921 825540860 969958267 736209916 912418222 568848338 781982958 66493341 403173462 522366098 871793809 442849959 676529818 803971887 813521205 79345227 445908709 894618450 923593484 939833064 986062559 52723611 287675267 6311657 653000388 804973031 970323293 507979449 627046358 359882588 399769256 981546311 992663199 229620720 553207486 993636015 996129642 860004594 862527457 521081205 682544021 853123610 926624932 811565932 852783780 787991684 918128379 993412441 995661242 719284125 936420556 672418909 740359388 72604208 623958616 760242350 914108653 223850112 806953983 933050016 991650667 981558485 981736577 729381771 954977664 378612423 553275871 363577032 973860280 730078142 748866708 615824181 951461678 426736729 520939679 624729341 810114103 870443833 928833192 403287371 443435045 169486480 523543843 895264670 911647662 783620158 827229068 75977100 715447391 563007488 923713633 351273961 647115753 861116307 911595903 129223976 725986439 560781837 731514378 225818770 691929794 373954688 745917642 66764990 661349492 895000384 921890473 890975507 898284037 972098736 979897324 955196887 960352265 710178005 880583094 166778297 198566309 693305874 990854627 89733828 372596344 818568341 834986003 514974022 880405559 337334432 403862859 501907007 959282445 78561362 429601733 470511365 880758897 264055004 794397957 399083894 820943783 236371905 766196828 208422325 659765143 691984341 830763530 38309053 238639051 3366308 224110087 433228402 801613870 868808467 934137957 315177982 456525359 806937220 980065024 612553076 934438680 266744520 615272603 570308997 781255466 602588350 661338233 132317508 697323075 837414480 970287839 317429582 867701995 466431101 713052803 656783954 791503233 609201204 919276433 111253554 551535598 639449259 785533843 814508155 884248602 239377102 603175256 35626377 497346389 672729246 679530569 731459817 946594922 876067294 997961136 243680365 563754203 289043759 665741076 860447769 893901470 475453866 803819283 241779382 781579024 821818988 966428952 786774561 966666935 85702013 573531255 463511912 889206169 522865118 800089929 712259571 803430340 114535450 850613033 379732110 582116046 761688685 927293075 130756183 131126171 178098581 401646620 656047589 751755389 396607154 986119532 90440133 577507482 159237402 659201287 235162275 394632202 746410964 873547560 856255045 927111136 792700847 848169414 815106238 880622625 366356231 779905599 847383428 912884124 706335998 724669451 395460527 779102979 89257978 980454001 958764874 995647471 130969647 211601101 881719700 882237452 958152594 969964520 602345921 974506185 656412725 959965050 469353233 580709186 332118950 463031660 995346727 998945600 437840743 816823030 437480398 499623567 634919597 797803629 554736074 742033851 339589556 813490746 669964917 752128744 82512282 851267432 851151418 949817014 186570047 377048318 951655418 974193817 872627494 972139599 208845785 467175738 452598033 530978983 566958431 585805197 237137378 671825883 348331185 475290411 927520728 941550636 721371226 792653485 504485822 675445853 215436026 954720128 901333001 917725209 431019823 755827769 442749862 806551423 464508699 974886328 80832390 566022471 204707050 252423655 204873543 456003512 1813501 874531880 308466123 592408912 446861513 701590387 538357110 732396852 636513600 747281645 470326779 906959032 993461720 994266390 901521663 966313773 290573089 618115006 511760881 703930626 738429528 944224073 453770984 610681206 425927163 590059240 228645386 237978868 783305734 958789180 931724362 956061133 717347 141580609 239220147 811348958 78416790 461507901 490345440 570888243 824687078 983150770 722779152 994281955 234181118 433346647 733361963 789469195 494857371 749653981 85952312 392836689 281874279 703348232 742029820 757892501 697339903 780946616 714760342 893080887 205061459 209246548 535903058 886716473 518231362 586503631 556325924 725431513 770558250 807935295 396665725 416709330 143606842 890257502 498025893 568277410 366974412 717067910 855528431 907392082 49826893 891887821 139840398 767402610 337638844 556974859 111987649 303832762 688653351 952248863 683596385 725371331 497457216 601358895 233324805 311134337 978852364 988431011 845286181 994617610 747173893 906863515 176094154 872162193 546984127 714401385 157296869 553999723 355804562 677203589 57159905 557668820 750050040 917344991 108732003 912754504 883321702 886901272 44892037 496453881 222056600 743121971 659933058 925852496 946153786 967347060 453157658 954572252 782783598 840609020 476054670 650728417 259522926 735048761 624764173 926298464 753256491 823962300 438413830 458220027 368578502 898372109 114946859 700602821 873044173 878726512 389800748 468856875 891353427 988697077 567072165 927515556 920447386 990500221 818308210 843338316 903251770 953051214 983392852 988524275 851694475 900821037 308190916 804774374 773887635 838802691 934878769 993552932 682202109 975279173 608605491 636610765 226605958 825364322 276422675 529074542 548147364 966795078 12887512 427850743 419372095 978734622 682962577 788377935 732586283 913953775 172589700 663829739 284888885 589909242 830041593 923111444 630242011 821256991 850787047 980614939 65569718 534353364 182783593 859506409 500356200 747550841 612032913 620008245 754573876 878462725 131999933 161499837 332498261 698546369 606661130 898548926 85413858 378531649 635581283 708727644 372829300 968237106 267308262 950958316 316534578 400780992 250314583 422148136 835245543 976581884 215633076 239945688 15773396 844639857 791731991 875133616 794910782 857376971 714988722 877237529 43329271 156116809 474169710 833812885 596851430 662732845 732326524 845351560 235038254 355435024 327083082 579340499 285520314 325736387 945231720 980606323 308411556 612155772 984908892 995885361 745681805 857767329 923931002 986731735 930345900 954661136 833607091 852741426 369717442 965759153 972815404 996577436 594310913 754873040 400567497 403790205 594897747 890678239 292940627 434250995 829303730 901088822 988816857 996045558 144567576 705676416 25992332 165240286 390579685 824467123 764908955 851342101 377289406 517881472 594852482 954786971 128071666 657505062 110483155 453041589 758775492 760763748 181717363 270290379 587303862 860308770 660060454 990239511 384236461 392604693 11464271 516100873 113870578 245476195 346243445 625855282 314580899 760641812 770710672 907380013 511129419 678774709 701726734 730492113 833693431 931573389 607751469 656403021 837765345 968783768 657044433 854909375 889960263 947705300 560639213 744336999 752532476 962905655 786006069 964960841 777138092 897004389 866444580 877155102 132571060 689956568 783167251 942377843 157393360 564600009 809395131 924645333 425902482 433502861 127985105 572938556 10020024 254912831 428511111 764018409 561400700 578438984 834602396 871399974 187210254 699154991 187377384 826349228 773762447 991682405 579398582 927750038 933400191 995828414 553206574 761144237 776791869 936688062 379840082 706674497 267858628 804149428 128959966 963262003 68195694 663882796 203527449 937310280 613048182 738209367 995929334 996546126 264290324 827283285 747704190 874140119 105238882 327463548 8917383 667669313 84305972 588935490 330602003 990512702 140226609 141121522 961807433 996673335 289284906 789945510 978552399 980383129 465385204 723464067 348450733 908455856 223045195 427446258 816200894 943400290 547921740 813252347 546516330 568303824 706081411 914019831 766706137 787867672 274258592 820426824 514007332 650267919 629875582 630339702 121765827 997362640 540858061 723518456 438706603 679324955 62728323 69972779 48095789 974431441 558813072 898022148 799684643 937839720 436217224 539801571 458401295 993587338 471798748 930131441 172897841 209068340 546032044 572673408 195513781 828591817 293387073 311898382 937336857 970694378 68079203 582415672 555354031 832153794 957171749 958261164 439485781 576393892 67389902 781185598 76360207 200660147 908946366 953261560 175863487 328617961 767017235 984918760 598772833 903981869 536376476 793243449 221638719 857912938 336689877 926892524 883125322 927399887 599074639 768206306 696383082 745319420 777053755 959285843 904321230 950729122 579706078 957644691 212928568 722197961 813087217 907505057 913842412 971305738 555728659 647378077 605708862 908592028 613841998 676173855 153336850 463511926 623530195 876075649 449253131 777688519 571855791 844476269 558693607 977052822 487558042 613861356 935708234 945357590 267794337 307552777 631274947 670249523 201485033 478204879 925922715 945924908 205271228 509358735 318772838 543613342 917828153 941274099 52822867 274153391 171786863 563546717 777257445 782513449 891294902 976784361 654601806 794025608 964912638 980656476 8874429 647859678 250227572 420711675 205226415 816662600 441690104 719839495 748739361 875452305 814523011 900419814 887905523 889921548 947340958 990920048 6396215 415472501 607314396 631531274 39550372 817570768 967722061 978443808 318206774 363566731 575010180 589164789 109665057 409167780 425779536 517347253 156881385 977913669 779439794 846490839 747247420 859251141 407829786 668196597 54080487 912082209 691635846 900775218 878060960 879830440 606804114 696245210 617472953 713128854 427638618 892905027 944047365 967573550 568912236 901359356 812149167 963585333 713440665 835168924 891761424 912237419 635265889 882715413 278278808 483745752 438767732 880736532 65906264 811443346 610695363 980856770 290102675 743035215 423990198 502207666 327898078 528869786 926630802 931665972 384171887 462243979 142401396 739457520 417373682 516562995 722797134 830012111 228264778 914677986 547118250 656613845 576984391 693881286 478218040 977983286 523302523 810427184 209716947 438386516 223743928 697080287 124534961 817508127 898620115 940181847 144016002 244007109 838293937 871318212 164059571 700692978 876311591 973108990 891845022 907099027 861323481 990976564 181881127 264270157 807392294 948419733 189380492 353784973 263798859 652597692 293196970 847902786 16081196 706461752 58594573 261344431 910589661 983348630 190468373 663712411 416961414 702655813 677156562 773871206 777112963 888598793 841615000 912862785 615999796 762646449 575219417 742028035 324590922 684057940 164794521 384677756 473508445 732247389 187259756 782503618 125770267 444346677 847260597 955122811 107498008 601105718 769655092 962555838 183590725 285938701 300062508 767859264 585351676 901038665 939420344 970196898 642063533 919639319 191264000 666558248 276676314 673053944 785957532 970918717 336433002 569485535 35581456 175745351 997781413 999088468 875662030 901495309 637719005 887666228 120941401 507573275 308253286 619942822 6476029 117146745 339195082 377077012 897227353 948026337 659272731 777402187 2592184 865943415 326295245 959516534 911975825 994181518 466499082 682893996 274358779 612260090 848520234 951247853 465357710 627252754 105933672 230086281 846044606 894405507 181909434 869869761 721407470 862187344 657248132 975124926 641144171 936564770 313430556 703199764 453922192 946468728 799224390 832028249 616921522 672656105 443901881 796865975 955342904 981925057 516052871 605257859 72378696 944697718 402541968 744193697 80493183 912779952 849053714 904874151 317845713 386748544 144862841 689049349 663554938 923738127 645451353 859759784 456286456 803765112 368963126 696744255 894037074 933583843 24850156 385571727 997320842 998761719 102365397 552920470 705652006 866243669 328168482 375831042 17419285 103540383 730809616 810543419 941518636 992541749 87008542 435557117 857328338 955223472 45545381 555220122 731039125 833312473 896703576 980774577 532406193 654083387 359956124 571977379 955185812 964146578 508404964 586879727 290137749 925113210 621324086 927748484 972667165 996901121 329709649 675922577 969114982 979883499 911693503 964913398 263272758 791616347 126127717 479287408 513106149 946501650 313468771 740003565 812363335 815744187 932792708 967487010 310621916 817924709 237286840 784814917 661582064 960935795 394927964 619204899 190192875 563884362 272426728 931719061 975070854 990520831 521997251 830571087 212303646 748511335 347725893 965124630 858768163 991385026 678807248 834808805 931005663 964445401 370741193 764470831 397523993 879967694 983506480 998093235 121438705 282094326 88443904 635779999 927820699 994693522 493696884 602437941 57583616 767622848 383663235 708142516 771834691 773595048 599681035 927727751 555021627 919843903 554068808 665822394 301945895 658675415 765073875 832657815 776756862 894125431 61198371 737294288 132237942 673011814 232077711 257864906 911662341 929530844 255528370 658579949 801613047 844903530 838656680 961452102 109672018 425216235 378370841 846021766 312417061 319845076 865211340 966761682 342138361 632296465 459534424 504057386 907190879 990736397 70685517 828429214 73167323 413416388 276900906 763779370 873466249 994726134 853402342 969800328 866856109 965063647 733316770 795282415 93134047 590842353 87853946 531896044 985261398 988804373 785366857 897544468 987566628 991017802 480153945 726071270 504603168 892413344 766212787 786604754 600324589 966348971 910015206 935641797 86090588 864178752 84768559 948521504 225739694 899090534 50899531 183213777 476736905 983620335 241737934 840305616 845777302 870333015 452084277 897073203 349050809 825311061 15683360 828987779 787203969 997516716 10887987 999298633 171497816 731599414 924469026 978251368 312875039 690751963 737476933 835108950 696818460 992631193 618233435 881332626 626926994 892275230 261985645 773816804 822598670 907345044 785721211 975523296 235182689 273954173 878240214 932472281 701905384 968622015 11308008 176693599 595341297 596579118 900574531 900875878 797277487 986477089 464049521 490575209 144890337 623004182 755139885 825921422 420158617 549816155 237931370 574921544 272167859 714847878 967668130 987210116 723841430 934273741 386246353 807020617 693118411 853847850 404978395 955303907 962009970 975217914 478731941 606701342 556382289 570986991 925013891 968159907 930628257 951521025 145560334 622478129 274952084 540189967 857172399 928729812 23865659 273761160 736078173 970195199 717248513 830731507 104867674 394273614 267010153 735779886 473130041 624171059 399130400 751446717 480784419 557302231 434466452 532715035 189782551 764976395 136560540 663115674 375655328 706070226 559164183 857668538 121289818 227175727 894885473 980412829 604614312 630442009 490708135 762754631 495828814 574375603 911519555 942115697 86023811 351872840 57752975 510604055 710860535 863313227 703588531 774696460 82106132 414849580 263389730 856452133 289565860 913233145 396637503 648077097 87653470 207082867 872553393 882797880 256262071 862136475 903002357 904968446 511687321 654235039 387456788 873837361 630801832 712787976 354267055 946331992 504216671 618550297 429546870 760680998 702131598 717194490 953361112 955987132 25974964 652597233 657304341 989096010 234323298 359860357 199525414 268834761 253643180 284175406 284318110 989686287 971919072 978212134 563778887 876597031 275885625 913432526 714658492 939060723 658328200 666221599 238907091 558598200 21804887 734428073 224834144 227355040 79918969 955447180 233835866 867976794 55449476 282173727 923589273 928572231 200232373 232603693 315105928 563076509 778491892 996181204 28048827 397164188 139361909 377938302 641633594 643724802 43133677 585261422 996529082 997849545 976124061 985824863 502199111 741670158 128022976 447092174 120709940 977433245 704861501 732902104 99396024 281437220 379814413 874918771 483727682 823090828 783747926 923494655 66363510 558265192 984072470 998431433 584586438 695001911 268448666 596554812 273390957 912917821 806079403 849109735 492607742 779800908 413787030 983303588 738152434 769146888 974652690 983282828 378238766 981958900 105128019 415582602 809957101 865704866 459707073 610639603 439668385 500311981 120563809 483665994 966392513 984153892 653804780 712963653 256563093 429977621 297440702 993533797 60644442 321110211 500045838 929548289 20770189 647829096 805420514 966850668 787622508 917341829 607467189 724596549 594730241 905966891 500887364 844733671 876587237 939504692 510928895 760321025 552168027 754475025 958090200 979612280 57466745 851103721 464003495 580007234 379242214 455866543 625339211 722444575 786803391 886466301 671757911 696937114 800335072 849460687 729213180 864575934 485552489 516086303 325306539 674980381 68244637 851955627 458067821 551028898 654041113 981604666 842828074 964171607 859249221 920114676 640474568 671984584 253337782 898508232 400155543 553062647 798506125 983456186 872315346 920730037 431681106 763977284 862876928 995020444 910484746 950900983 641140961 837458879 676151934 744404635 252447805 954755862 343725959 826091083 330646055 998417477 865439355 993804585 329071926 580149690 57837775 86197113 412722045 647120655 4124055 760100432 11263792 411019247 18504011 679779246 598044931 682158709 796076044 983010007 594391779 789315254 213478618 619472807 890574167 994305604 228783663 851127857 339111712 831851601 916905272 987095227 491968363 615635761 698946183 903772852 296832808 492469249 554810818 786604089 209728473 578145216 774875462 858332211 480682036 774076548 344959110 886164571 450186422 801240948 637910882 881873476 424015188 439273674 787647326 821347446 20373141 749986237 123895350 158747471 950118550 995105286 339834691 832654502 596560971 918131593 317919441 630423001 68804170 978609253 237964248 462624257 381725962 886161070 53849176 712730002 305761428 994061763 269444041 399767697 36589832 879420668 840885191 922729033 562958277 961988887 91003925 641254095 802843621 923619599 191592768 235409406 100446826 829558925 790680538 997246739 466196092 982737519 710130682 908299680 271007050 965476291 140020537 931564038 202398821 449600555 980442627 983675952 147725673 492284852 113105862 997778869 627823111 960632205 609296759 806973715 646840163 885349363 692642620 842506293 77270921 375621313 378082845 830648148 562430682 898894355 775317294 936633017 660796984 787064011 329530553 682175575 571790091 851311039 587230539 880372354 712218419 886718706 313046775 398003373 700320552 928186193 44647312 375350156 421120031 525914917 462085058 538221961 882087227 904054394 233231689 482236947 150798877 765646149 844539946 925486071 832317189 911185234 107936683 184454607 469146222 649016173 478635817 736979732 961112839 989245666 353450031 415122958 813547369 945528600 79082105 960760576 272672068 308964396 194202558 309017829 789503187 795400269 340836023 790922200 137621074 289902733 161435954 512690592 328874930 687627129 753144718 950269447 564539691 658981371 482888753 748141525 131610864 242216638 840693927 965274424 866332352 989350939 77110850 882645134 809240801 904252532 318991104 639355552 580193233 938930875 857547454 930000790 644983864 728884656 660214248 812887682 128360736 147709722 713512822 777122716 831446306 966808388 550852272 722472400 335512269 776489858 480404802 834963333 164266599 852071034 81049929 765842826 90074324 744502389 791517013 845322192 684139209 876824996 549785833 818142629 823901914 873017212 573711105 972811320 651201620 921684105 251962050 496488492 372966701 599431887 740464424 983787367 619627211 983588949 827568555 862360948 589488241 652306609 363924422 957079267 304921982 890085536 407310749 997596560 719534006 879627937 844880466 873255381 585860899 828133332 429952912 657403225 536628620 781157750 650055699 847321645 276534794 344234300 164356280 808926274 720579454 905186138 900781831 995453783 132288 234551794 527802581 878274242 236210150 455917889 858076398 983449556 566668055 896996556 797496064 996665716 860989026 910891154 446103359 665905831 546143856 700512866 389735848 896729558 363752489 823385757 870971789 942060207 61387697 522653099 284747687 640210653 278804342 821143691 284709167 706366603 624846590 630755880 461051488 467965312 93195898 169045798 402553758 608205616 535367298 681275207 261225793 379617616 802369606 954651983 191577460 493064753 619654706 962684900 683971302 844257598 485201098 670429444 410938906 841440770 990547512 994059038 327708415 741524158 990483434 998822797 838252929 839765239 224910356 449119037 154965877 750893199 60711786 679021148 171836195 856757670 316729509 469281772 977530372 991945182 319071443 463728211 961987223 984881269 404670892 994155341 340254430 477129856 896921134 948405877 821510135 874991930 708718284 818607245 193167894 448707293 434371275 475678625 269828249 271991473 982379239 989591934 991868082 997314967 780562297 831685302 93789315 485256737 860535438 920744836 492448611 813110444 201159981 767037018 142759735 508682806 99539916 531762395 28228730 482563202 538088611 717808046 785913847 958488207 104786522 682340494 898982275 929434052 890675922 925098160 99130284 958507059 379932086 528915785 815985754 860177042 669396657 947701263 688732922 886631958 109962866 414067995 423340160 540473624 534314843 826974100 796232722 929818449 55847578 447686359 180317003 773018867 875867098 964332391 723926642 888645819 697683632 783564190 715434730 914344500 942320147 967493662 115793104 609896995 210220894 467365511 891448351 892809635 105706413 751469199 751739313 924536028 369408330 693883711 548988180 564255231 418383168 523935909 626260524 661028590 711044636 871894098 220365683 683647967 48654503 728198720 924494844 994557292 904144318 949490391 56058548 765342447 166041881 210782697 411198848 443545781 538574528 816278552 863547478 996039940 959061202 984598935 650375722 833004590 2410940 403041453 453658943 474958510 650479212 676123132 811822081 982181254 271403286 418669294 89125841 481061912 559776599 611814194 714478397 764147505 140479019 927685244 573683034 705861861 674075782 951387036 620065238 922543733 802889048 828629656 16300676 612848931 161351507 778414705 792055837 970064953 955997699 970638302 389027561 849133758 93835166 870648202 848752869 966861613 358373915 457080445 260179648 508535102 469631085 922534756 509886709 920055849 171190630 560408119 895243775 942850215 964457140 997715568 510664708 599695851 695791608 947204488 559326309 649777364 206333059 632653995 860609679 981059922 809153046 824286816 98757702 777776110 96442021 134292597 308399413 700508889 359326217 378485755 693865775 956755912 434557764 451954208 643486938 961379254 308405998 656555206 313654641 379605568 683789644 836487235 26776073 305024694 58840081 754750635 998538521 998826514 642253442 815959019 756766332 918604968 843491726 865729884 277371125 395719040 62357968 111530661 843884909 883225836 79145577 827692828 182142157 912531033 262540378 680268851 253557129 957445928 563357212 667850704 649347131 692143061 871785737 927096066 943745817 951701646 938699816 979454647 334215227 873679415 805030183 917444928 363075882 889571700 986652098 990313928 483344683 622194271 914859461 943978369 323660826 645413354 99792602 518620578 933226625 947736596 426593755 837529437 223802213 444439873 489285501 906163111 30315067 774499938 423467127 845959305 625579603 791167195 33594019 965223710 311322677 544061372 916292287 968904849 267705488 603923909 780814608 884186342 96930982 194530371 767696374 920437573 455265341 834656049 507097638 694064766 811441749 852801864 184431637 976019838 304145600 469671087 95996616 583066722 293930623 987344876 412020198 799733479 953562158 963855059 547151761 978823371 900759697 928604042 188796378 966231299 578705024 859264855 160287165 492669120 191711015 746854802 441003972 701117938 816280610 983538029 960267218 986581680 836289697 911146012 355947932 743170931 62757013 499655355 793888421 799142232 427470489 724162644 87182905 211560745 176304320 556920417 673169446 784220039 900055951 958066110 952220012 984577300 594328523 954690791 113682971 514626853 783170156 922809239 619849151 936154891 284277444 581503755 778738082 810958995 134417292 242222979 706365265 927929751 707278470 716097382 388931216 579215961 34476290 892406215 271953025 888742165 279075509 545334497 631286467 663311972 728643119 899143651 630947550 661081389 796388044 939816294 925082356 945228218 722816797 923770434 337970229 599333187 196896840 559366101 189003986 581834693 338418475 792536171 779132424 914257993 514393961 985201228 437709429 461431494 437851397 847822627 720644822 760660292 672218502 844267330 314350776 553707635 487728257 517180469 532542703 792066046 270674394 649560829 389529233 983663986 455348372 697993741 874497727 995941287 736610170 918870861 186117044 827301955 289506734 339579049 454873509 886267037 175060312 952951474 431161653 919654261 132402583 725649670 586730225 744321231 914750586 927916929 975945924 977766662 330818956 731819250 891359829 896163982 853350490 911540817 40284814 475616309 979643078 993491114 297870793 580943727 549145118 937975526 763492572 905198437 918929608 969967307 695516192 969698779 706356223 989582748 637843352 756519519 352225464 529040580 535623379 962011137 140599195 723992921 624722069 737158255 62701747 841573203 508122775 645483166 154972584 179570450 569097454 871286192 408578359 476108884 173759533 480169019 231183062 646448366 535956749 656575549 385687704 760564717 577151659 918787679 326449011 948656391 622470779 777445919 43422188 581862180 690246489 773451851 640362848 667333419 64538820 810853902 626814959 798776310 254173970 663511643 468086540 605045910 569087546 588907093 361887122 485323641 49379384 243705597 82316584 457950046 76912992 347140822 487192098 667975978 247226870 910606630 53420741 214562622 845146292 923922000 112037906 994833794 623416974 640956142 91583006 137010500 672476674 753954566 598682334 746047995 946931603 952156135 87843516 95418660 238277276 385842960 791702495 959905678 679539739 714469015 874224453 949229910 341425369 360735013 122201157 885391777 868743777 945237173 662259292 858007638 938499214 990880846 480850974 645850972 358388752 993509956 375057509 741263301 273136004 715880270 428156585 607371669 214248714 387322475 135885168 469133888 548522649 950450168 709407656 751777682 496681840 885507360 879600129 911916212 650430329 839858525 443656357 730393825 722209005 837198273 875694246 986599108 582180103 712294691 745853488 767603075 507395427 520961276 328100059 942562671 337074447 941733233 207624117 610627088 479707268 905930365 362929780 888695656 210223811 320135840 110970243 382099945 257247157 418126896 958261949 983545575 281361372 546792791 186333736 422814282 798655641 961977142 382320756 707469851 255370595 384315205 317072156 446109755 942205191 971666304 263440473 755660025 480594714 741675034 495662932 508576425 892208236 961153467 908126600 977668810 54641307 205109890 56492835 258384113 119693655 514901144 945267589 964446074 749733270 977889347 698649987 798956937 282877029 595750988 670622475 764037659 56478392 761105780 77751927 813396936 614218075 753544046 53914028 712798118 34974799 247797132 633298266 830401950 326718188 916220336 968878622 977380602 722667011 819620338 995889418 999055136 628785706 641494899 597137684 915621273 855583333 919669495 376408413 835703595 195156429 950461975 211342630 595752200 731419721 870270097 848509109 875022490 970479216 977313025 949433089 972840676 905051044 912336799 325542535 570492888 765221865 975146781 886262216 964466295 912025935 951289334 898604859 909769848 350191638 803856669 687984363 834609314 54641226 590425688 684414060 970225127 704702978 840288734 462285026 771439076 131616962 893519359 477324550 567930333 195930089 477594817 725861564 882246491 339966803 472047507 616118085 900314966 403306602 669392205 436991984 968388007 447344803 903117543 634420043 667410470 432291083 565675840 164403255 602430502 448082363 798830420 310200516 357339126 737857266 768187639 765536801 925412438 616821530 920926110 155723757 570993495 927089307 971226393 590254218 939215520 340867763 838743405 133406843 695113812 592108988 641632841 803487422 842946772 523389352 991232328 513046718 919663261 731327798 869657446 766035777 825050724 905047842 916226462 960842178 972835800 563422449 731259372 386263909 700452009 684868223 885794273 245507139 328907216 367315869 440088856 516729771 988822996 379615226 616276354 885743318 938354267 694613873 776746175 351905022 430620390 481900017 799078811 193022169 932800319 626465061 959311764 890197810 915951125 74094984 521922447 195797894 653415297 55431744 551942544 983885429 988003525 299499968 608281231 587306675 817102291 570497405 890669011 201270425 732891362 518755144 706920857 825187903 927391888 668235168 691188009 462579800 552752194 511475132 764703899 188822262 328419426 520369914 894997753 151627440 747379826 678028759 722536289 597758629 617977045 526918191 915919534 385462956 429006554 418855608 732914874 606364580 608392178 782029427 901214119 82675536 909658953 948534778 963297404 985610385 995059692 444201781 734721824 757298173 980293151 52979836 180776952 283650363 310232312 423770125 453840949 836382691 922816184 64424107 621319083 387360427 971829438 445390466 697491502 101732717 179120183 188451542 932402728 376793100 670235061 139426971 543271587 258927308 754216317 667707985 863224361 401785776 512414918 177877093 876600633 880078540 895431550 450219592 712410739 953872338 961523617 989440327 994499411 107505811 856697206 643314513 750713413 68678276 670277464 189769303 883566888 888024817 958138719 184529468 233892933 100888647 811618304 478953276 956884012 9731933 73950348 55237903 181942729 343085713 790575910 4160742 316918605 949929860 969096907 282063018 299949118 483851955 791752945 918116962 993650444 227473194 494067241 509943486 956881063 53635648 606246339 179082241 460493765 733766255 898780800 601418626 732290118 143707925 233195647 333676459 351440674 724632813 992408432 407753461 811386729 459627077 952507931 331963973 511584781 766706015 812275857 801103164 893175966 371357601 563462176 351845883 948835038 38728360 503650375 197262073 270247962 207171503 280792458 784401630 916897665 92991202 703893936 652204875 997493571 383179975 486425000 531443100 679343939 663129178 745100884 431039868 734765758 769070571 786087560 849142927 850129321 42444859 177030380 7761588 9270728 593797044 959383342 901151452 988584842 400386365 432711532 351751304 613548610 432927446 485182066 996101580 999227605 411127389 787556527 5728212 798843178 217693976 911596207 224445928 363749309 802518439 930601031 633927598 864742807 344663942 611955125 890469765 954922134 555314608 567751242 718280266 880193717 433631565 807593819 5955715 813855070 140146481 220643819 581108545 798850975 260028322 978322303 604798878 963869337 147466424 844106979 338036685 514733525 596885835 713886118 433618649 690840385 406532991 721440859 590742384 851249260 608645538 712418454 983125533 985952542 793397002 809841806 21870255 804262163 447996762 738544590 467223391 714031555 286093539 552002368 577106207 833766020 942395833 966398212 247885185 573753369 275819490 664140028 857777585 902768863 157841896 509194085 845410850 859846922 954575415 964851009 528967153 762090301 753886426 992460259 923644815 985102733 596546281 682562781 818421504 940299477 331863571 545971195 688638803 987524226 268881282 824305672 505578082 672935542 796926086 858983726 130376843 468163190 418440599 686429839 504679269 687816237 30715198 952085631 716033982 781240240 821020550 851082123 811949227 836656794 278794928 514151905 972456684 975928713 942199604 950277518 477410623 688075011 831985276 851328381 224083165 478689893 723697203 915996638 564291976 928341337 238301191 544856395 766751973 919976754 762232535 975879351 12294821 660404279 958227555 967078052 125722769 489001318 414069033 928425882 386225140 809178366 930467250 955166250 296431865 304011208 546746063 644721689 774686618 874204863 63414361 358492716 415251608 924002018 435121920 442907036 438606779 684190258 171171469 826683673 628754442 892418962 234203213 995486830 495801609 875605937 397488484 717663569 490638906 690153387 884494235 969391811 913080610 964947504 271463582 352737624 62752579 346249824 618396028 663511808 48792025 815599971 596673715 982514116 45458642 246555197 880621951 905029474 187861401 839164118 394475623 768826663 432297892 887472272 362560738 952436716 340762079 645173421 597329741 604650448 423773545 777128873 810542421 816794399 860545454 949064012 87505731 305442319 953047289 990777294 471963581 703255008 170169536 910686139 142582311 956287257 311571902 748162217 413839047 620676006 463511525 597099428 778681032 952019925 651003568 834793634 665012147 944651520 776439897 813257239 705672200 768165079 814205934 863763821 334861370 487023375 394014992 928628472 162796281 994239495 54014052 902242059 507405112 969493047 741330101 764597455 942884991 986535498 985225958 994212318 87776818 220142029 323865703 873595934 532715180 728722729 57044870 637355276 252786395 868940951 778703695 822823914 306621326 482533153 359648053 820729482 170866457 973135664 213833028 867996050 518465025 805244038 285824937 941166458 453427400 530242455 429585407 878507390 702885733 930201544 950748533 985380381 246261890 868151760 255648849 417465506 106219336 452300212 514759254 521002564 613107178 910992036 941199390 969276722 196769496 201226719 919378590 972435914 886701817 887730470 978362762 996301072 213719083 702441857 349001668 854340159 196103860 487716381 116848582 359094936 131503412 827168389 808725004 929327624 980774756 985730970 492285102 799949828 231083590 762510605 322234547 525924656 872262685 911680373 701768736 825513192 374219789 390766961 988811160 992244557 516560795 550836365 756363656 962380330 442857261 889634004 871202617 909576047 714842114 931494486 771665479 885002756 296302348 836948465 150771060 733002462 187414607 983136795 46349953 695518911 994858994 996106949 541912495 709979770 697813403 982119838 884145778 976680111 782565637 929424988 472303411 767709561 299648658 888936357 243941247 728245623 702829789 787976563 491644795 590215113 34396871 118286087 158833451 281486646 938570924 946151583 405803426 819194658 794022409 886654208 320172960 624366758 834811290 971893682 551784228 836441915 320755384 592488752 507510625 936266051 412532436 887106791 372719916 666863568 624254669 635525784 602571455 689177548 233239954 678214801 365281903 941155490 386332007 997336341 136160808 874318601 58814366 770309118 893214256 987886081 978376992 985347145 245964300 527046558 337267598 474255696 306083673 331549227 79972142 812335426 648254202 922799603 744150970 955910706 468628095 840050955 344394717 940797156 274930452 645424815 36082396 852428642 50583574 622771029 305100646 868610947 929559483 949637734 208820157 583242228 178453246 519143048 289938223 559183034 675378843 907581797 86613486 208595757 975482700 998244763 751060553 755142847 732991121 875852008 541623555 795181831 74276105 548874211 165024708 167407151 931652744 956607807 983922751 991626780 935367018 962508132 475644775 586546060 188746658 655537915 323486441 646692750 431696052 668310449 242535208 433907779 486730354 868986114 515974802 965019850 185312122 506899127 259050988 738729132 322574405 635541002 133129469 550633426 817227991 907557826 723048468 971588892 938379951 984026704 255754469 949238795 335693667 854991633 18630423 631853956 507623666 915242353 958652604 962965397 367277586 618784521 422154116 701972191 369084921 947721617 594093146 748131704 915412388 963874228 877025911 952407754 388011347 941119071 161715382 478307929 887587214 973253681 321688445 818963316 73542152 868447907 96506724 183323069 264699371 324855633 9041857 326728479 277529977 939889016 312838733 712767891 278676585 878620932 482534160 754677541 293147022 945245347 971772717 974410432 268024749 654264432 899552546 961166169 430152297 581352368 127354731 475137100 522172106 731263976 519927133 565280612 733422002 981103622 915171034 986164303 454933297 725225069 96787570 963458048 895767915 924818770 543727953 843543838 383037406 941699643 123278034 372668707 717311887 979466423 909766598 940077579 861019083 875978468 119448303 154784471 229752209 277634125 225221314 364455960 926696247 999271147 354384070 998368917 479045413 741815517 679686529 919882657 194776414 791440208 813685764 838623143 630540605 638236160 881695231 905325939 540716370 655552808 147799996 497682099 695617243 895932601 968158392 994678353 427595750 480096015 319825560 707347732 874238096 909101922 190391510 460898239 347226552 470260284 182351417 565788206 68016188 449414458 308317714 323317319 335595590 493756198 893641804 925962675 234434370 979761679 319603212 602571067 275376494 836736514 683188818 908920457 155795328 443576465 43460589 966960007 202776788 443801941 453564803 535710563 718289399 781380340 814229299 851623454 107587608 327005146 630545286 989326473 218918939 683777375 133150119 265824092 452960127 600341151 443284186 981863415 999103979 999121737 459495867 775250709 877513777 968593946 427064861 736561468 149826979 976577658 293133821 877284822 417671097 932427085 910829311 954188945 370704581 645122565 290720502 565068160 28770537 606460412 423304035 969794885 180985605 947084499 248342066 535896749 499759658 601650198 711684689 874228374 504881519 805669485 201245283 479028167 395604314 543984234 496888143 644203707 184118127 592794377 843855260 978459637 98983476 674770958 586793941 902032804 196284533 839462194 155772373 594601429 480292210 798223348 746060258 868489176 994252734 996541636 400046076 584805932 211379400 906356449 635579654 866498818 699207940 938610902 663831507 864167686 994220118 994866015 69214554 209736358 836668299 991072039 143146562 505080338 327499902 692748129 882650795 958483253 217740097 372255119 43757882 289256750 19088338 589700943 28152034 823862878 355782443 809184511 878859910 966574306 330777828 413847286 956041611 991376087 143795502 747733165 379935527 694503444 80797294 569679049 202968412 563627497 928162829 955860821 113108247 984024080 622543901 865531295 778528805 918442661 693055309 789085369 687248887 785389263 122656668 736188617 374325871 605988598 369858762 569502970 462209945 863538029 777353990 840115501 448138894 529444630 550597769 575418071 354523237 633322789 881157462 934353502 509460199 654933373 90639366 259894326 608694465 870660236 992651209 995559756 460452032 965462589 486728061 742674461 964313447 986432428 671387603 976550812 491635682 581900694 318108475 961643121 685354983 969489678 772079357 937218807 514358396 518712205 968083074 975460578 489537056 971010182 627713446 648735394 681663817 857927601 494861676 769125608 957115029 972956489 52961943 930846808 395869492 772069340 261608924 801750690 890237056 933587567 620975373 897466906 498491171 890305644 227654555 974367369 119253590 779606695 587398239 756441366 46588428 120775589 726977967 770947040 217770264 467282912 233995532 327108500 799624931 925802604 460083824 566268978 588645197 845075550 538343070 839350627 696741287 973461427 77159851 387520745 828788212 926138037 982501238 994190190 720979840 914380134 846306133 947257666 879444700 899300600 650274160 904385090 64072415 165489606 950246751 985252908 692571165 781075112 324681841 452725740 825199404 927432825 323726857 793023539 407841683 609658095 306851372 439207507 306024336 871794029 691029185 710196323 515791521 589349536 96492250 818047647 47521120 826254439 451642247 631291500 537623 421735277 840997695 903847300 219555480 430503406 212832913 259090237 505417729 837123984 586695009 840225450 334114182 751204668 62380201 89902006 777277085 844216154 991453904 992220019 572459860 969231868 350341275 457999883 790587980 861198022 601009377 874691230 179319267 983286173 525521935 653240351 179736347 941821929 343367769 693746699 340164277 768667009 253518175 355910964 754214972 803799024 805746931 810297282 28985505 864096044 786405490 973674576 994655862 997300993 361588920 794768566 929398798 956443761 383706641 712632435 501083862 978415547 78869964 105074375 681214266 711478923 221561190 239672966 533364916 534497289 205383185 408402271 122424941 331888533 152563264 817676583 975148921 976186126 96384929 654734503 115512481 677464712 344370288 899311976 655747164 665454235 116002168 362540294 161350729 615961781 549752777 932210499 126168221 496433799 9006468 50105061 411864923 865571229 28325072 361202677 512530292 606776583 480478850 849123114 934921419 953205651 436959301 687713468 850263885 870818272 845368942 890624969 630231843 900420363 638000925 726387972 484718459 779028523 703084756 726158550 470700969 833612436 452011313 869142672 514687378 636747949 748327924 891894185 262947693 913534250 482747850 504877520 495725650 958754837 494038970 999290260 296342192 465073504 709467002 860817055 954437937 992235800 429616096 707579208 84481672 433084781 798111456 816433152 71527291 209249961 745140132 916124416 274768406 334283131 677888183 923168286 762719319 926415524 679476662 964263635 479653247 688568554 575507847 612312557 907340660 925284289 439160131 691669288 549829332 660844468 130112328 682165490 477257154 964383205 681373054 958110857 203496681 900773970 635648010 685161612 126018618 360864380 847887874 971744504 970650248 993597538 600894119 611770545 780919107 977016130 433662684 486026141 240494673 619942628 741222256 979696986 283858444 530090301 589977537 819269667 490277288 863999822 873065548 929626881 643565738 690177802 247261710 784314986 862343608 936805563 790470348 794690669 941574751 995604428 181541694 787903896 418212558 782066631 877299743 921752716 727249736 770479068 64583264 738036019 324460132 462899839 972080880 999137371 785941544 908130339 175479828 696642202 210194018 908958636 402569262 630629982 468691902 482354907 889659404 893559943 867906793 987829482 818489252 840341850 538990515 946499280 921766235 937360582 993466559 998273654 7653044 252830693 961198558 962224647 906476094 908223416 364304322 513634194 880954259 925939247 452837799 913673241 567518827 825431300 323456322 984182743 487008024 548828289 550516079 710538963 151197661 785393490 793966624 935169027 825582924 989500749 935773038 940311475 167791574 714227780 939779916 976412455 788814634 977503507 881422297 892192371 585796796 964134451 904203660 964039846 888944491 962452487 800686162 982000792 602198196 664976784 379586237 983571325 274503277 335954900 759582705 837741607 73441607 710396975 280125189 879903100 559199225 639878785 348960766 957760934 777729822 942506972 476598291 845681082 417268007 938037393 457753245 830843494 927268654 988172264 908696311 919669844 51044993 307812277 282247347 416818494 632231795 718449459 383772302 472484240 535728782 787415358 56453637 555822114 482704353 903062401 47067677 714080965 120280791 713221826 830572663 904897470 377661522 477463717 456047092 464732816 70917976 449306352 854239096 973287487 254006367 703794678 897636100 961599690 196790961 906760157 730753533 775764181 801302882 870860430 443225004 833959623 190854232 783245061 39807184 490022248 552945951 890230153 76488522 706431958 723225200 876111678 901887369 940669365 132507981 422317727 536833937 788551636 576546466 899207906 936073607 942756572 186411351 253555751 642775657 993992928 245356833 705195419 726291629 758234141 42223624 674503234 192928604 735235691 522268976 903230001 861760395 949153772 507848570 690665485 530495838 675583709 984385076 993281773 554504429 882496900 742545153 785688683 587880874 906821580 825492776 866178828 845395206 981533001 945409103 998825716 191481840 703449007 889166118 891825755 509504993 639750933 17062910 581837154 961246032 977868231 123714417 785861807 63658409 389142222 499071939 990132673 866112633 907002383 794254225 868873144 2838459 151285936 567477793 676142836 789835757 960073488 473734844 992856921 437556584 973264483 609229794 689956767 780505301 900810000 580635242 894183308 79387767 456485888 938606194 947088463 363375372 957426363 58978031 289830409 289945438 534326245 770824387 936077005 384140638 455409331 459806784 783500325 407248453 872133044 909159843 950841107 347379302 800294072 944767213 953800357 936570422 994455028 888599432 922925228 436867835 605029594 776520064 942842680 462666389 687665085 658824327 782621400 223639905 639514106 853591520 877671919 743607037 881599117 409435278 730218929 840348863 926032480 937155434 986354328 298031413 349340203 384400547 651281551 689366222 784470860 816600765 866885369 195559404 694198693 195447868 248278874 490465756 862288665 258118835 510622275 133076906 276797300 325026457 677079460 467896606 879966980 402716253 446772489 783360221 882350256 212657847 270815963 477065978 962358974 430789169 675561125 533591632 836687496 395866488 412538725 97081949 445630993 220711924 732877842 934004310 951209997 177098252 542177159 910442377 965688354 639194241 812734112 324268615 563540988 886901118 929657363 580667553 988571651 639019110 938268004 230720207 844267414 715143021 903338811 453928684 853728444 723893567 971338056 133451982 178139999 525496382 525505759 128014329 508397489 74861252 972885238 83845227 796981857 801573600 959896001 810250868 872428089 417144388 428330491 712003650 850122884 946526915 985841867 32013858 163815608 546762394 674916688 944395008 996785857 602239425 928529621 918936230 986428818 443546411 918187261 204745795 637135731 900334734 923161990 483844018 901247501 153621207 794525739 226731070 811301896 388874435 522742549 175565851 554583727 989180408 991590151 287657049 399279214 863286078 978357586 524838236 697568757 962451504 973558532 10801057 428431344 940139250 975864570 868365072 926973104 181572628 361848547 523602286 978441153 897976724 966795208 633480744 845825122 296848277 419379867 520142034 629493931 940490039 981381194 41957201 937801697 375769655 609709270 96061870 121641187 317011216 700396355 763407951 856646360 949029692 974654314 274866761 805604083 508921771 610873951 229612173 896164130 816094955 936775149 1106337 448329965 877823437 891764990 157643632 942265287 108337128 434444919 817611774 924452114 16508088 399628674 747267379 826479194 545043824 918838423 113566419 343902092 477556374 678912920 501502761 757381888 252402218 814502775 152659595 219918652 800229024 997970567 291975236 347662898 597651755 990833127 913989756 979841489 834225724 950171267 535425170 811010069 14282350 997336228 502059741 836167980 647652801 766141673 38504186 848962303 200175732 604876622 465859470 735306124 657090680 682864988 39715387 76647485 317838599 820737258 196308374 347754682 100606582 681945020 105215791 733211236 588423622 712890993 597914115 996021513 932754224 959072889 635261927 929488789 596024123 615824642 438333477 516826091 180690354 540665546 639637278 818288165 818328079 945506546 917174052 917470595 158557576 533364349 869842623 918240308 215262131 491612454 151379121 419594675 508121113 984988587 196804444 415752391 933246657 954450936 743630692 820722531 71440115 549307336 175322752 759965836 153241325 241557634 504095552 924306947 27334199 279093766 783813567 788895938 955984526 957249506 295841975 376999405 747764448 785136907 462524068 789752196 50241802 239260397 838847287 963378958 851932986 995730799 153621403 973962809 509211043 972919196 946217822 970257190 707394521 780063378 452907818 928241620 776486607 809098834 631359831 803528101 449944966 993333292 407028022 725746395 528773483 956391171 346829509 398367933 317151647 783688357 337184129 478720955 61621012 512960861 280726444 768465905 403522932 903326252 173876327 383012521 191346193 527234025 548758281 644596287 165470148 797297590 771969518 845872265 444948729 535360303 770485028 987883271 735291456 902866300 397016276 893534977 397195591 934799517 211066404 566389820 62958706 447560284 948809471 949204842 417177489 765130479 560077178 902343563 573199261 804974976 244339813 908071128 276370924 995257119 419149931 571427936 461544786 583111054 394893345 668071147 328044292 496843151 943546328 968539832 287560641 329271645 679948304 813834799 349133916 488017869 339377631 752188574 33163312 163347821 458434866 865915732 359609950 718818197 977583625 995205354 426419695 770357248 754516132 887345705 221675272 254482425 653493090 807814479 981874571 990872397 802262160 979001003 7505585 451899225 454212099 616638362 511145960 982073166 150774794 765691462 67065846 689586292 56917149 184878118 374155584 523784327 774985748 824560569 495356137 836110178 34375513 497060066 230816231 548143457 829840427 943187179 611894652 892007947 134639837 144870067 986507192 991247884 851762521 912233879 153545867 601656950 216322000 511832410 416119841 846078462 401011672 483776452 955205305 982053818 982206893 994602167 12972074 358785729 247596079 318140457 507483845 969763120 515168027 830511177 555611556 913424316 737174955 877329637 109810507 194799971 6400687 783469103 754049322 867366084 69456841 935295026 58077674 850781451 327849627 836650258 624097282 963005289 520345935 950265858 14963388 57407339 552465927 804757934 426760264 533333421 886239940 981292545 602356708 800330724 940503047 954956573 551855908 957306865 193641353 558548435 982505101 983738543 865563168 883494682 960242293 996682757 811586686 893920390 125678268 406999965 307283386 311749660 134151183 615485422 377234746 954523463 455484051 888332922 261527047 695081145 660319311 794214817 468013160 755493305 95451506 182651852 273246379 421021516 152929497 542496490 164345374 348590073 232633901 355251908 103916546 348160135 767887642 841292070 570295915 766553449 521302337 880322877 822035609 910922240 130220411 386503411 674599297 864483168 441232453 948173335 242447543 609775404 261074000 826821159 610350349 801216791 736887580 791441331 567610701 846801684 206402110 495506047 639829528 857457498 404778244 986663379 764991268 905621713 46060048 264212701 986170041 988652334 245920524 831480550 50483010 183990478 496974811 618828031 431136574 860455393 572175784 736441171 766145872 776358508 52425217 150094244 834958025 918191662 180948643 547267214 263030646 343371114 313765442 973086634 349803500 614340563 352418576 530054408 590784032 597170379 771525864 915147492 819389800 823700927 298204711 969816930 348274108 746604836 358488277 701648163 884679264 908601937 721204019 827861783 532219572 916254197 905480001 977916832 549485133 894144783 278931016 358475659 278110119 782454958 449728251 852648206 316332343 356767265 900895860 913354194 724825555 877916934 516461200 909827500 278452959 586572028 391243937 949363718 935096411 961606779 307017471 463332276 99719194 288327878 826447115 958272565 938853970 954497390 702895930 765724572 388522939 695737785 945326408 994710341 408094221 826915086 6748756 851626374 64086650 539923143 132533580 534268943 804690837 896886034 429890107 609432074 468424864 749011144 744333580 827726559 732716462 806853082 869908755 946184602 132286373 957895152 563227275 932095285 433240373 589766067 22542374 251806576 443048384 881339172 154385321 896965741 938340018 961022410 711585303 884793249 265840440 507840434 798446744 965063336 376000022 904965862 865744139 908127207 843802372 981870819 746485464 993116430 814733745 980549535 888195227 945827780 718053394 975131710 703805707 816946245 996213455 998812097 601368274 849754203 795775006 811882484 556522555 738164489 644996460 670916590 850545483 928268549 869276947 961118426 896963225 918507962 149549285 853197699 610005920 924214268 933598992 989535546 820464426 832577251 166103965 649559361 676750687 984458063 884850245 948402026 906881400 918526404 760692882 789378005 77969289 201777406 123118347 831057277 570577179 661350237 244128807 821541329 499404738 626741032 603499482 907431897 658942187 929958423 599004461 679808969 583413852 929077902 334733480 408696246 500226763 501986452 977034826 982963439 811308185 959573747 670559665 963559863 792150603 997701092 799710820 857131208 289288581 410607584 204668527 416935862 259758746 286470769 868311874 888329801 830884258 874088936 645860402 827173149 759380697 817936555 911946313 965508972 335123098 874933956 790849764 888239357 49206142 206683722 233351189 271742707 866086828 975462448 360244473 905681666 414586376 754075537 219482750 792862740 868836706 875084797 470597110 674799099 464517318 626797980 534275374 974781421 807471158 927528860 836611028 970583878 280384765 965264642 377672173 871344273 902279307 979720685 393307698 864608133 655005775 909452159 218832227 549855491 124468801 374130614 311490771 579065354 85722543 532367118 16253176 965586179 905524209 939057558 808556833 847725856 281211402 676509897 651176632 841782633 849950854 931158193 913919770 924142180 980271145 981213055 970576026 994324665 618404992 875491545 926301007 934012492 87328154 577650162 141393297 658572506 979176680 983942361 236629025 258556370 412564282 622196790 364537781 782452740 319260083 681676620 164608179 282453903 353095527 497404612 448990572 611383946 989219376 994627062 168144834 733646442 586651304 871230659 465494891 697695218 604541067 992387047 426502848 468965139 109495507 647279957 318157186 987484909 720505749 794418709 239874992 749153652 20253047 137663110 72540586 762442739 433831397 599917538 58275486 752821313 650827276 732745212 995897412 998313661 863858968 919488692 411552825 705933364 608197133 690145248 106907881 175495864 234528966 758043735 930354487 971742656 694146042 792155025 449754324 761616396 324872010 453287891 471410726 702236625 401854047 727054103 333718128 657523895 572999230 699105406 708557890 956601508 634888840 671790828 10545444 351092334 874064046 979195631 303850383 887386127 730626338 763537499 213819310 389066931 659589219 674515938 838770052 911858660 170176054 627871898 258839856 479222507 858820390 902521241 340731504 392831354 685053017 992485088 165995497 362703379 345672202 379155715 881973618 942264198 161286862 916123190 547509826 826783537 807051875 851551692 679721984 901095673 543056321 977436389 16860166 681097659 33319490 55442059 190253980 965521754 562543497 587663631 303697732 616445302 993083448 993698703 810192449 982281929 637682803 694312724 605943260 878879300 936896622 978255374 391216173 473010728 76465286 395856102 312564927 817554294 422856247 583198823 756209775 933527098 137845465 187152970 896929401 909360930 321405733 687805631 623609559 744931109 46801127 825062935 334862064 722952975 130924354 895377830 473545982 519094330 860684818 947288117 984002304 996393891 383072938 434485687 265195895 886792000 21584438 555133838 312533819 315364005 648152168 706079780 378806635 951706107 894804212 942038796 587134632 871962145 123701594 643797004 513817749 514886273 930351167 965786552 732326813 907235718 379086265 800823002 150867371 772313104 206160426 540926548 606884213 716684746 163868495 594674509 518863179 611170777 695064621 971791074 650276627 765229098 204436840 653882634 890353377 979123265 108829404 194080253 23729734 708802433 69261158 753496749 647809114 834043958 206098152 397183649 604732626 793332065 863717736 893108197 246012135 952763017 607587041 941354002 467136750 550693835 67414151 592911135 302125849 710347407 165480253 801192826 275977697 489687215 500690824 690397206 83481063 941371167 350477547 660880092 231721875 562951039 73649872 749580858 296881959 528603179 761989423 932297318 139080332 323023334 389638587 490570283 953712469 974238352 547100442 618753395 403636388 543729218 511173515 585572160 273109430 798964184 394388191 625288411 115965324 271963966 483710314 760581925 537332979 972267043 915451016 986706107 845685605 859811791 966993141 997681961 698736402 990136096 490416412 645881567 464630881 981919800 794353840 920309345 465823947 743944580 54161940 542647543 945333789 956095353 79027903 127352298 724035826 776853900 493052858 858397940 320544162 346871537 383244151 509346696 733762060 990878918 763146839 829482616 765582531 935038054 275513406 992080421 750663437 790459195 336923638 975498605 586200924 696962610 716113163 834093590 256572720 610590746 293993722 970621488 970956560 975017869 44647761 863602546 220168482 502118251 798560520 962207958 75198835 343826464 332660984 965034255 587726366 885449639 572772382 686777330 313565782 435233918 215907367 660548426 188414443 801896380 634203601 838923612 512687053 819576625 944011858 959563386 246409784 873222695 2230400 887694517 189615614 791397402 280069692 821036982 275016441 895011413 421016811 861641873 724442036 799156608 17389231 596296321 415456553 539057785 813531331 993104432 113466213 698875977 921546382 968652476 977082291 991674780 601722458 876186027 153795403 681801657 362753994 669179153 669342880 839414394 450986712 569316395 822097315 892486272 316394553 595157908 960938511 976454447 3316076 296478685 149533077 473126609 944690307 944820218 96379687 586272085 784446107 848494542 64801387 918737960 149189857 591725350 877812783 895262806 674313414 877930351 574103459 847384582 437052480 440677092 175093205 770428384 25987497 692882227 159163274 936222729 91275081 761733280 122943426 686033754 525101781 881585289 812612494 891846084 593972552 813573889 548781234 944851961 22483981 257556862 321579708 878405646 479084759 936785307 387923632 772759029 837295219 973741441 140593428 824563483 150440442 186555418 611225225 618010095 426158433 983454941 413040783 834557258 904768629 928857731 48610709 674365706 981700481 982464657 143427547 410481594 578888640 819863624 521127338 682110704 904171107 949836381 380543166 709810887 7656275 110113531 286269360 530220155 300128667 949373988 495191966 807758414 970797289 984708115 875019437 928336145 35091130 753507019 861557218 901778839 498034729 563921281 899228863 919090558 265020440 583408178 143712250 880396271 39922144 783332299 19149915 433270944 181579802 913908106 615616761 846720987 644361044 952109848 164279805 437207026 616694125 687130282 479399790 804573157 382337387 524873774 536980102 599991669 869256475 983999089 247998044 926990782 79534625 542462425 341067999 689529342 366196240 563639854 416830620 593430907 17607109 878009527 583122387 724460715 628777254 676419420 564236950 709227627 384531148 590585892 138966846 167181463 418151232 934904900 122071306 642929228 383898860 479868789 523866897 981052684 325980484 363160819 83558102 651829162 312210320 859683034 479224260 701617106 917133158 923202368 746204123 990079840 976601271 990657020 124997846 459919255 468712132 471210067 440917628 628348391 968792878 995316918 620085471 882012274 739992274 968525550 186638995 296262022 179090218 430924959 165028373 506753484 844332840 879478703 797757053 944170524 442539935 719512021 747208399 779263846 342911582 802883678 621562692 665389463 301238329 951647311 252245052 369365817 786981225 791464592 353131627 827670041 198039746 686920587 960969602 967902038 464098916 516328845 958994065 987183201 681476213 948039700 837626196 948025920 229413875 554512878 203385068 332100827 20784529 699995319 606446727 819106395 479005200 769709245 349882200 725758723 329569204 500920827 1618463 768094504 137742470 425898129 546197670 785979350 327826419 593786921 239152325 773640115 861861675 888469844 492368492 523441232 318346477 594154461 998377531 998550239 957382385 983102819 347838951 682863787 18607988 871376649 797393361 964470089 875330984 956678695 874261932 877868747 928781485 967567243 250241089 657552758 492717691 676687888 340478324 902252462 512552708 863213403 900866317 980872229 327254838 375232884 695864482 973286733 484319558 944695844 314620771 503416116 66666526 105161641 434969145 877995308 178563550 431792590 631790808 898056263 153798899 405529900 277204199 706678011 500213710 977414615 790707937 952469710 597701254 835637971 109886862 521889563 915631372 969321552 380028385 939072681 645490496 927386119 834540106 865780118 90389240 112486296 346050467 828116408 513436840 673497334 142656841 925178072 870551819 911726995 710405034 863827295 365366692 787328611 100352448 464774318 121811965 931127870 945044341 997516680 561925349 783577886 834018763 975940974 31887670 515330248 324402358 455957172 892364343 950322482 492149857 724266471 678150414 738888992 245187653 684111457 236839051 378820636 116097767 315183214 746533838 845793313 830526485 894925257 190504916 665575211 772773007 921316316 102007111 538859228 913598082 955628214 317727418 363984179 130628000 348242137 891369687 939473401 38233603 655060941 500673019 624605867 840655825 932023966 444442083 702063558 931556788 981754636 293226691 621579906 931056688 938268746 593012302 858098757 107587146 540692601 217402362 885867825 856235188 862864213 406227868 822962959 906487336 938222675 742458234 923265361 909485148 962168144 663155907 776821283 131026632 719698746 258384167 846158628 970526563 993335132 838157396 957060369 935497469 997516296 672618250 938717715 841707149 886751632 887830214 926431943 313307145 413812829 426658699 714056149 140661450 842916916 684243406 753353585 876980915 987998074 657886142 901486279 879432211 979670587 782327309 900232115 741397984 772779041 226663393 885758489 18106355 542714258 619658249 762866684 985579180 994799114 937753054 997832756 549111772 591446686 353911478 792572700 618677194 866495292 273174632 766462032 781656732 800614649 178789895 778548915 384849119 907812951 681136362 908756229 643049493 692194694 98836154 345564208 211039178 492910766 923420072 974948679 540278353 816162902 588754079 598799068 967703367 980296063 405678250 680981333 190684137 486509470 714763954 783901087 280670540 998951212 95085635 799886048 318271138 428309627 311857722 611524422 255027442 433307213 413763364 880293600 518297915 855889308 292560866 553588541 403870329 494318123 384388984 871726938 745836557 918203911 637494907 994226106 766314276 780579783 908037707 981386380 271639193 533096740 61195947 200298666 136147730 463487133 15428195 929179379 73655892 349478024 720940537 788272279 595030137 764555484 394240886 576782407 683589717 962939155 233379897 984597098 253035615 799133655 399568650 738483681 106156170 454383350 31937725 866247292 404707032 657641471 660964343 927200523 45404162 336202529 402826858 826511526 598357091 750887480 20142026 20573418 513676666 916721416 308194447 906207634 190284703 797384826 729653284 879935367 929437097 973237806 930150207 943478997 580252012 609901024 759048884 967420664 233986305 765570115 569472770 994105034 547397009 967679962 354477428 583181154 843082501 950252008 281602442 366393965 861164716 870629305 838625869 881855903 757293764 896201083 461080191 830923630 465941579 788605567 264763927 759334006 550335247 767764487 53881991 737007019 618308808 930486425 837509175 840149714 472955667 538644758 260299930 811991621 113296203 549268747 457620872 871590135 773542719 798997326 418318875 998971023 802221723 985353304 324059496 405550266 408449728 834181746 417382174 721744733 162313521 404445265 656621387 957007278 830335309 938864419 661098682 738935525 144201404 304476246 939065831 979274836 315189 186065442 8859798 819735902 493501251 774073919 354530165 706784856 86309109 379480607 377233847 475044834 70323191 746241158 907847413 931193012 468420099 985365921 539863291 969299527 908551068 980715268 535200996 949207585 430839532 910813668 842276928 921291812 803954735 978425140 649405627 760144205 569932424 726810920 456690444 857990101 886867900 913880258 301284778 405262855 901465732 912724643 815640284 979490593 88423338 834643642 352735952 741559658 632926329 809655261 480146159 886332126 2643157 352212373 962077585 979780336 575507012 888720399 468930297 799479421 587818353 887796248 15581901 481900858 534131420 687322755 111094808 964339269 745013924 936661911 357712947 619523011 641710960 868466416 168746517 613068599 158313550 354356101 439080220 562984773 981749531 984154608 141387855 170264185 457865036 704935978 151092014 350250189 724228812 909589904 699962051 779590949 936725048 975551880 845999597 950199295 426253286 724971899 854101355 867289633 572119150 757403595 567802670 717184910 671659950 959091929 316575190 639744474 620435308 815065369 817877567 852457327 43610285 239222482 183141914 356341890 915089140 966941841 564121901 633667587 67927238 600760302 417374350 904069781 532353009 737000279 27442411 100829770 245550095 789689762 987946841 999303226 440453822 536758811 969077468 992467737 457887656 699930572 516443563 944804490 215247165 701519044 96877024 103894016 288359700 587359466 31682790 164614971 71919696 828406557 96675621 668849757 749033074 763210681 165527634 179758184 276896207 510141890 565858733 910450049 548612422 598464061 259115310 820980127 899866231 943834473 285052834 338991448 966872116 990991872 563858597 581680019 50028542 873915283 39885946 103592041 516941684 873278648 379611184 592864290 278368611 983150666 706306729 896237213 314380384 992539696 170784123 611554807 470154619 486893626 389564569 879850509 684300764 700991259 844230641 849054460 837131110 930855529 729108061 979141709 978727062 982081414 692995271 718911706 653435605 849758828 626038901 920102413 711596862 930234315 236989918 298105240 319642386 719669445 877847293 940838320 158125557 779186788 156138394 179450302 393119164 748673908 924880609 952837608 650376023 719901371 873352460 985410775 950925125 977268256 269043893 773457422 932125232 983032556 971376732 991871767 934503883 977496810 722096519 915135605 828416062 951797198 680893154 727037646 328179844 889749797 27230172 221888055 789689396 797116418 708404261 710503526 644596562 802915491 416622303 965435868 849019718 880137393 87435844 897925112 52934057 396220962 719614859 780804862 826972988 988248732 796763522 913286680 925967064 960555490 713949379 952270973 656551687 733630684 975603161 993794655 889356322 943778738 408772120 424931907 306704091 556382254 204159740 904704561 417379070 449226203 7550435 716092472 824317074 829993125 304254791 304623899 431216188 672949949 246491530 844412067 431090606 815327625 287919095 555655454 195506270 214244992 826034176 871562716 159225128 983965729 667376460 744012425 77997604 431685593 960313239 972397579 41475656 258426563 457606599 512421837 551563774 617138233 203155140 915212540 439721094 702613901 310939319 623952443 650008782 842827100 357622599 376212655 642259414 993386067 724854722 795095133 682369660 789704843 259023652 347483827 79859974 593476399 946317681 955512115 657389043 780821233 953858978 993493521 138398742 610148284 623912066 902299172 812915069 872222353 151012733 211163646 331041008 847281042 526804340 591423938 302347288 896009650 371303973 859164835 161004036 397033092 622418608 714731271 88759205 642877521 815269443 848672074 519678304 854584130 372034612 446040806 101650690 180823698 580305078 909493064 866024018 971034794 586946971 941062556 841613754 925416870 946304113 959767672 993469933 995433513 299286059 859918860 336418533 666195359 567234040 626141078 967296017 973397018 21650209 606095675 35331521 918105747 179643573 230139781 832050442 985847413 509309769 715938246 712601888 726142369 245563041 950525901 795570977 963022638 458497013 590187258 736784694 828716465 112818191 691062056 332466195 542763925 89033291 306839838 541272115 775394254 227581571 854807252 992265891 995170592 366699476 431077562 196711920 782236465 43497201 715648779 48102642 215122047 285624206 712365080 534681629 921074100 867766695 937646325 440602502 478426995 649886509 678687355 299680273 953123871 524553357 771021881 879955776 881122165 495089719 679799486 479524481 804271339 912427997 929572892 456788067 931110004 388818930 945620205 39643087 441135881 888050380 978416789 500742315 757054977 883765728 984989184 478777832 760234378 727553547 981755386 874137481 979381331 302502237 797003188 193247059 220688270 925845100 938167761 120071026 295298249 26996037 970189476 747614112 785096124 74330694 887579166 459040837 486132213 14664979 172394629 73826239 308260515 295494396 606338137 298159203 601390777 529132615 812193034 183127571 893940319 788543214 856494788 723209267 864297725 165175581 989871099 425918564 651381591 371994285 734828736 107774421 904351980 922700752 937907573 825926560 914201159 408087644 635195977 212851364 725583902 557296614 884978893 765198026 772128189 634502214 765220098 882180251 917298587 640422312 939798383 329225476 980672668 481943876 924640072 422756788 837124970 578837615 823929390 618506355 915515234 672993216 789480226 480841782 573490946 377438811 605950043 563209029 702759911 837992623 994781989 426737156 759937141 74599515 906173886 757122006 825811159 687848238 959778731 310065446 916362745 219685153 283054318 874337908 982020858 711256269 753703362 457458751 863126416 110635808 885243756 286472439 315492428 99983741 383395086 847606875 918213117 74100187 439336954 780481688 902180555 542917922 878585199 902956587 910461569 592321493 974208082 358300176 523942589 594606882 854613900 232747096 255478580 603158223 892911014 975261986 995364457 456324045 987618587 724220625 891184569 610186513 953200838 821547704 955423794 932628880 968868216 745836119 927462664 498271957 641637601 291619400 765574515 415308330 883774203 802284502 947732282 492519523 966657447 574281318 879121034 167914902 276529248 705951571 756075807 586589114 756753761 859757371 913619865 440300420 742641497 883948359 900073543 22711116 373822152 253186117 732664165 191827554 766272013 434993080 614359964 78735514 303517401 139706488 162792613 175136843 477192787 410127252 948939054 627788789 767572325 978430359 981409198 875686913 971628009 237028056 901083811 324606207 941082895 56647745 93901081 970440817 991959998 934059104 972866139 218434938 255155609 921922877 979605396 649559215 689117140 103790325 985410438 880291233 994652741 747999130 852508453 939542000 968528104 978625958 983656192 153672764 355496206 559455455 990097944 417079015 958243063 524187718 565608597 262326063 301789188 480254911 845304517 559569880 817358623 503096408 693732648 386769431 624610836 461961023 666290003 172556350 240562855 124332757 410615052 952298037 984435034 718568027 718892243 96384810 406799598 643431421 684488680 497146462 650274344 721556491 863478006 969934234 997986172 129844885 462138279 31572017 763376687 650797548 810524120 895933579 956336379 34062492 408938205 494702791 640818189 139747617 335445121 707568700 815245371 231921632 842922804 814837636 879981735 636542364 922750380 686701090 941849896 400988735 523157493 913896578 919269625 134094050 840024987 418634594 993926828 391304915 458904860 216647548 500270980 283977436 770874660 977927740 987968318 523072468 762712258 712103824 827195855 616781207 970787589 512433523 694013276 916200045 970565167 988670688 998829594 636505688 969257589 658209856 983553409 942584167 967782569 62821779 368862176 566480715 861748700 428624094 904823631 354271047 831866925 782622073 959661463 310604498 621744811 608511678 704275094 216966359 604605735 768558979 827854398 132961884 517943572 832149311 995198660 643997962 883513778 766344696 928240574 242779742 565411257 331916877 740550918 888212846 974085223 445035677 875795836 21707049 498478437 952546251 958794715 314068618 356300691 21343851 748986151 331282921 332062638 845424284 962955050 170708391 966745788 486873246 890202051 341466525 767870083 176797246 572097908 529571219 809025210 741280296 767056416 654767592 832775035 217457319 563449048 861502238 948364288 23074943 989202031 504877730 997456212 864480904 987665640 645332866 830584890 778770905 841259030 239580126 926234400 436099511 676343213 33324613 447453523 812899291 815444627 479237659 550115430 931821184 989104923 291048166 352555545 171937523 855498271 185216334 373052118 119023201 447524453 239101031 830230060 806236599 960928398 124382000 725133615 530419470 610734755 550711024 929236987 207107409 499078879 690703181 741291102 646213112 922471316 11631703 812029813 979445759 994480879 105038564 939836140 785423621 938807766 381631135 681442079 141777462 595761191 182103546 679186543 197982988 625500634 544225974 859492548 301801781 934303441 772803560 946259150 378193923 787181344 725756648 975634538 207251751 947920177 233427635 757054572 121360586 122428456 766974645 777286853 828676078 842630390 153081456 265884931 941638048 961275834 231728436 610627590 906120150 909142746 771863582 950784038 462677642 545992739 757411801 957651250 549267683 729268294 690589730 804768529 172488903 914526521 92763795 654532165 111286795 588239122 883454786 919698976 626007746 703534957 807542838 877264880 638263571 669019762 171801443 387203518 148369670 170380416 230303699 624544486 495925178 685010445 906084772 947622067 700277150 872965019 701038287 863333109 655692040 800767612 662056492 756909524 301475095 890357022 666223489 774036509 819086453 900191103 577332010 970888228 497181386 957606728 462946080 573979288 121195462 732100906 542607694 635695008 553060968 774708850 606720815 945486631 552767099 954051640 179769102 810041992 592448077 655441673 210455856 434475337 836976936 929891705 25218548 596902809 739438874 742231045 723959151 802744542 455307746 810580816 979776462 987339135 897639427 961998709 315283827 581220777 400000545 540527080 40132273 173617443 511831545 963550783 358916247 942506922 676710114 994663689 982956705 998002301 318392210 624967201 885761938 942926471 469685840 849368121 987723757 989562281 286506102 739826982 408872185 970230424 211871976 734572380 214781412 723051256 915660125 995412144 668671045 887289419 154989920 416378268 604317329 961634204 680376603 707063872 990220825 993765154 879084399 924572534 4043268 462139391 675927602 692596223 532078341 697815824 727490373 970999374 160060088 531716716 370525021 782159235 906507008 947771375 21046786 483056617 174068241 980421833 584303848 853199459 955044574 961165527 236298102 777987882 943261641 953817898 301533668 463344909 442458033 700145486 339871389 486010586 641582304 799877664 962994276 995938276 514707418 638013508 46261328 751317136 489234978 570595064 277653107 694485756 61915422 312544608 15003868 934550684 202966335 970770064 22656817 333008896 870962426 902536331 190492886 255093530 195002316 869665734 641231327 880214073 955041902 957457416 361147584 924096951 335608629 583131392 208369958 359228587 404811319 747627266 549960370 861204206 278748283 985120966 440983064 715569588 798595855 920020838 839713930 964044932 681247554 785295752 622687284 766244824 776041442 904572982 389302385 747066224 834252305 860769526 401512939 476305823 614930035 686437177 636083724 719419891 692422654 981259595 890211816 977411162 98168635 141366381 435282245 952679522 633515656 858814762 749227054 814532582 849424584 978672540 390655406 588947657 39754816 906688989 724830942 901798109 128099827 778926614 219834253 477266367 674619838 800805565 616072324 915763503 74183650 712458905 522277012 724208774 843130015 847951053 806179487 843958449 998633598 999258938 475626529 833470690 237250740 521891845 683728154 798687984 953814482 976725830 813993989 815405606 249780780 910056360 616442868 644835247 51429845 831033045 976723581 988920436 188805528 482556136 169746307 659642549 225897032 821830980 549279736 635628934 628324186 802777348 418135361 884422411 51981202 310385095 949762060 963209280 194896568 900697465 29997391 215827223 851391336 997923284 891614346 903708035 829152284 961172025 758417517 970235984 764657534 869335099 711369116 775667652 781365158 825225463 929675014 958515756 746804234 923109476 989168664 999190062 904899200 974660018 638127730 782582806 710454998 963112041 614150078 762200202 451211131 870479925 811637892 935003099 802452807 904752338 136442904 922566910 253960803 917466832 202100927 759395092 506975361 927638152 963102600 982256650 925584783 991290287 362545204 453481342 642608010 752023149 648158411 868490573 181240703 865991087 155528114 446156169 98176421 526542374 405805345 425812696 472389212 688505591 378374412 596786062 795929241 884961646 656987740 717945194 209657549 826225662 951171964 953102387 257769403 344740798 27881621 393726114 669440430 676375090 163029660 194057536 176314770 934549255 840862395 997580291 745049292 762064508 659662524 714830511 161805324 353731640 962727967 982703018 535889688 792465342 559426025 643419592 506670676 815228055 529451100 979261592 907942732 987298894 919971698 991806936 894455405 947898433 207213914 212035606 63961329 970193063 803486688 877276286 413869350 703319777 52358582 640259554 307856840 518829990 214616645 610305712 499308364 688691492 685161531 736853396 938702171 940390462 162590927 952154562 494269112 956529847 906649313 968510555 631035889 886486377 585578195 591420550 651557244 823374781 242051469 409837718 883909005 967074325 437898531 454850771 767017402 959861705 83607709 110057818 917734302 997757631 646338719 718385616 680209809 854290209 116441090 367379755 766229698 868674079 491832932 782045380 720594013 921762105 713124714 803260675 907209466 988642596 20789581 102138467 101406662 842447163 345829585 437477085 890524257 924060353 148394546 467111849 566825547 757024110 238980052 381194253 917193031 975831293 820732519 895567613 966088166 991803090 297157542 473658508 77788506 284180667 714189977 802715019 799705475 811615880 53068407 464285916 675999628 834175848 575189464 973734359 180034204 481101574 470025193 535058314 882251616 957067537 883428535 971980389 428598331 646983655 875091446 907649915 937660259 973927328 410383540 846157785 285135369 559389976 776076228 898458173 443435986 909333781 52392427 761576159 257471658 600480627 105580919 577642630 267061805 962857983 41186036 211699606 991614806 994360228 959368686 959463944 446268818 639152831 107391129 466567684 722424710 854800596 163398877 641342405 710302751 843584740 176868947 419957157 55817968 135806560 945745132 952349606 456220962 664742473 438376511 682838699 656376686 705818947 966528200 986666317 604239578 649661627 259143072 320219316 276115019 484559840 630903127 897114274 799630088 817688895 349492924 454230857 343518082 349489054 143370506 972237349 735218948 842972566 344675766 350657271 659731651 783254292 434049312 724205326 927082232 982321106 401755025 474040432 740394543 900185672 634531917 982488499 897555922 975822371 675751288 947836937 722400074 897426580 325856985 817759467 412127517 639542478 560505361 916306534 31922933 652433611 337232072 484148624 151072262 616973484 710218546 758160672 781057793 841674780 385590142 822702735 738283630 772195858 341264034 899187801 201464504 615457893 237054903 669504649 770149265 904768165 168150594 496286048 153372464 978920513 665704209 678927708 80856684 316922438 126832641 745544401 710026682 909108698 799146628 811831533 46650465 957180626 756850703 901716973 674822473 928675474 690122015 878538886 351680241 661058635 87130455 647506617 724518248 763787150 804861064 832759783 625301205 749848822 507003493 566398527 972749451 995249254 600281763 789935349 613162189 749420971 845041384 948698031 227597745 821518927 570284658 906564838 392293834 674236421 448957429 944843909 68362910 941901014 60746926 262576446 829230386 930703255 877755995 940893770 464625543 586834487 147908973 244926823 213213262 702036131 937146498 966578935 885600998 985225871 256604846 771685052 414157739 961572620 988963923 995707943 866722966 899031774 819230632 887519572 167595354 261331996 921479804 926544701 155818596 488005483 803761171 972013672 583159310 641135208 425101164 900272286 699425259 888387194 205123653 451205876 661538503 780379913 149626211 944520807 540264644 694802692 308914378 988698016 610032505 857973743 64783344 565756886 393361826 899657072 31262517 917161881 994041526 994753383 746699039 956631214 311600375 801805526 756980257 782440199 187390527 446516348 778985551 854220325 324640261 715571824 406827283 423522759 318232806 645006956 889878270 971150172 562485221 646397960 264175667 590712294 862552443 947338154 74785227 850460989 577384083 878626722 322257375 725393534 379333510 586133501 508164362 732488852 929375171 938272526 561510102 825993341 496753442 547661047 613462737 692075981 975069796 997213007 455470807 497746006 499893045 696688500 291009000 517417614 210266297 651510330 857630043 955985719 344118822 474024126 810278772 877801221 66785341 723141073 751380775 784417761 36502480 781116542 520304665 798587743 338856452 940333156 566861889 800202278 464050230 819989996 265393917 507746804 405477413 517989969 977719518 999302890 472353133 997095961 510640010 751662341 710555248 866586125 287263398 291553470 832591144 860111339 524737502 868891927 500592823 656906838 94120852 470585052 137268262 535733463 302491259 435799725 621577707 749572027 14225742 878823374 743295162 851949137 837698380 956385779 151428093 234506357 673482219 693261560 764190278 834720045 676921189 757041218 604229376 639629099 480550506 566446652 120829688 516946257 830166664 831635118 621505174 685328540 704208731 868682435 95407632 921422229 261584774 746568334 602290007 744940120 541041517 668841130 174579411 989384726 548134320 851004046 607538145 729181256 471465914 554307648 46672840 180140403 824583187 983769426 524614587 698042211 347375369 687490503 940745409 967920646 798283757 830922303 447408860 956284600 204981640 696328931 238553821 927120952 596714388 775968006 584726130 903005540 904853805 940358653 20448693 401002804 616887226 902751633 764911796 926702930 699081928 900594157 284543186 419256868 283671582 822243244 64654240 150610905 272608170 470989989 308893840 592010638 93801784 897955814 766484823 874123063 869646483 924713111 147703901 977927586 147207399 994106016 595915381 821230189 275457847 284665111 845444741 864627336 742030623 885344413 305352827 493485181 944859796 970931162 177911565 281433772 907783943 934532827 296040417 465217563 528758946 661654606 515420475 883785333 655318485 923366766 632708568 653494710 220546300 569315680 922812415 935863640 880907951 972172049 674538258 881005087 373413506 713146783 589877738 906376294 79547354 613310432 360390817 913261506 612588029 660535216 571480494 998588990 995445328 999178376 353168176 428001754 629467460 888732613 809047052 897314674 931118766 941205236 379875987 962328592 919301094 974350102 433217724 991044121 128365366 407322855 669086668 730526154 963119 218313179 907505995 992108044 538318636 984009539 610355274 716068682 441239119 522405465 258828581 547332729 99743302 214676019 877908136 998335056 538026440 914288327 180568102 779903741 843120505 963802424 808507773 974720062 850608715 863931506 574751998 943675114 486773872 990407751 613236231 862141419 161637891 592663084 875194068 877157452 841057556 942931652 190237034 213189014 243679068 684916915 604783738 923794997 662356131 984504142 822171794 968365290 795580956 839708783 851535482 971630266 437901545 723064515 517566678 660791235 648422967 901305663 586803981 914678597 88421486 146910338 431561325 945773796 703208981 739769824 40015121 342440621 596032241 641001248 10655862 51077054 619135758 939461662 124565278 703717023 256520219 959118281 177690710 301691821 117539316 484652066 432115609 932955864 375682109 712470566 948245157 985580207 149471298 782829976 860166581 958666871 210268065 630673439 580291354 697945275 5077271 952213321 765187239 859646562 34450186 579401866 249633644 324937813 700483829 850006297 555988152 576311193 3830484 505140895 399003555 413949221 475942796 623331745 366566839 720523320 969109654 989798381 991245889 993257698 725210801 854987141 345813484 837129601 515866047 636431921 922264852 990708594 960110254 998591757 901711066 988694624 897523148 942278429 377489346 505295708 721663515 973356913 462394266 789364923 630397763 841758866 838764789 875734304 302657542 701102390 840691185 854667048 427672762 567157391 74746662 529368414 917016840 962732253 105406264 755508653 843457477 855549758 559438852 683196040 185473906 192482153 252752458 535557376 175727771 721305059 179597587 562098950 932253202 940295419 555662601 880361094 737126726 927214070 751540417 836053395 606121144 645851996 50513261 175820597 732075978 911244102 403108469 710239635 990369531 991257210 583889090 706968092 73178728 834314888 452238570 762829114 866379611 906337422 708894683 997550730 880961700 987512037 675611910 792477143 878668845 950693337 311555937 674730933 306270746 681339420 880294860 934655382 439271599 568335220 338654305 691636457 91824018 221968935 514261941 871479200 108448428 370675312 323936435 445866346 246230435 403029296 358106465 705631412 539556914 919566726 316529599 514594531 803414327 887541449 3410685 731881674 349989580 707839739 273171100 286750540 417457016 909455161 887289403 914685876 844327531 884556536 546419145 909187306 992484169 997994789 832123580 844682225 84266374 421999613 469845890 845571855 674503070 918146855 935013855 997399247 67313081 714903646 619945261 784081614 789558604 796993334 547534747 758091196 651479636 862223068 390491794 720887344 292448250 655107525 92154253 755295943 327340701 478692989 767933726 834220251 400422420 506697645 971714997 986091242 81431755 448770669 436866563 567510379 810422109 932851993 2275379 202248387 905062587 977880508 909896435 979818259 439569133 535282324 240520667 400575291 202795848 477591254 601944931 923275976 541784670 628249269 658298472 932202646 473709654 764766155 215671932 660923213 369921902 451690180 214232416 248655937 855976651 927305132 242939191 942429405 514791249 924374355 550779350 882923284 743618851 758232945 208196213 361553028 25551542 214867176 463357668 771925627 832401496 897749466 654532883 986721129 407766034 668252643 568055790 728743458 813647594 820956081 374351933 738401187 544386640 705445555 459178481 950170261 747499940 866634168 680158759 821747995 282345194 348749766 810595646 877455355 168410383 335078210 952591244 982669958 536523279 793209897 90235656 348655556 175623284 903540128 320670858 574215588 977940575 995609131 25581153 547882016 249059912 344763289 328451150 870274408 870298209 882398911 898415776 974326858 459355942 709488012 979693217 996283825 911625331 918536503 360611029 415905254 489354028 524816710 795008865 936650427 782671872 821106433 562860884 722948874 187793375 481833347 73402225 181805422 750925869 972320175 803350826 980965117 193123533 230600576 168577478 367484837 506468519 784103695 261364411 815679839 585403403 909985872 232119623 781167854 127817970 177286532 378423196 831814997 182893817 786445545 638810183 874102114 581458754 719156744 218729443 437657195 76653967 538177910 722499472 933834666 559682030 893943908 383756703 427130742 754864581 970693469 176797048 505075351 860371947 922741853 295318808 981651220 872879771 971217356 230714627 898380259 366560688 426815451 423429848 593875987 957513368 985699551 591391173 954186529 850592334 925022916 174706379 861198628 778200505 954770622 322536537 403437296 955988440 958342123 52374477 714328572 999224546 999294141 858813581 889608661 10817480 537293540 311522830 772398387 43906772 161474404 360029588 658164561 234483346 389409945 868916474 960061930 29476552 320401952 479868275 928978423 165867354 421398593 119954652 658123087 728452541 844236682 139673345 537234441 476147068 689232428 60983211 842915639 270023140 739683413 927775148 963926056 882049802 983140337 273209211 893807691 153006065 328498210 908430997 954175983 198212569 881464543 429396270 972570647 275900351 760635716 401498346 971456044 705161520 772035767 803529684 997859438 619729601 814075175 358348601 926129277 385487534 843117491 832280835 994568585 991346650 993095615 400876237 909695114 986564240 986934419 283327606 303587176 448445986 508229831 602020295 916256190 398209288 969510887 994140579 994464059 316648321 464353747 829425262 888322334 264721177 272408971 838339324 991962151 302926590 609547408 771607933 943902470 614270818 625110656 585911889 941320901 173283128 340152378 416109282 988632321 644693912 802838188 142594040 324539069 761446022 980160271 439497324 996815643 437173466 571617960 151193819 778519157 847142132 955968706 536064579 891849340 249147165 636164303 646595584 883243028 847669183 999228989 241573277 589411154 984978214 988656596 505852172 903093005 689544651 982835769 822540361 934796805 357013122 807741203 209500959 858842415 449435903 556084611 714008029 838530188 523758159 677438807 766744791 928198435 651672127 878392660 181408865 285209896 301641456 542792132 450637834 844538063 247856851 611262115 203071020 993553604 483662301 754552758 409486154 686166150 605823217 880085235 901084146 990163404 899806599 947567171 912263409 945276566 592247440 795023945 501752456 687666843 506417406 905257482 978492342 992589529 800451832 936599869 597371438 848904656 738954811 876682143 235767539 992158091 877968767 912727608 264774873 565589463 379794448 927854781 809032099 820142308 910723978 938348890 654105966 939572638 85573488 525367042 141096630 647390470 864427186 921047004 681724441 953239951 645608152 750976043 597173711 712495845 809457257 836726967 802860580 987859579 94316720 339984367 379057952 845109987 290204096 510432594 583061189 658315182 898944869 935356820 278306342 852240626 867439933 869111674 188955412 471298401 454401410 545301511 986712885 990334568 555482740 613018090 573355205 649161072 595046222 719628339 551510735 916528029 760317200 875325495 232629657 614422446 503610736 985377484 491259114 912237985 429370978 996074595 745143845 916786206 568443229 592348569 161932911 377828125 467862441 702640402 357197732 674612569 201785514 667502858 957125909 981399215 79212467 286013446 134001492 805486792 27512731 402823131 802876473 983987826 991257623 998081543 149781025 169609880 82792225 272811578 827056861 969390540 421349196 991147322 27105441 566367346 359708416 376740280 492663478 540947962 434515363 790288237 524153556 805384918 819414851 867448767 698231852 759584750 506632766 703652830 963893054 978559286 512032251 872834225 36181163 536261438 994064898 997307991 362637454 671120953 272468366 730501517 257395578 350760661 570875974 978482762 144686534 477291291 542137038 967348546 25116992 123882477 990843267 995205614 986693187 995917265 845338817 991613453 623356366 972689072 928509088 974650313 227068504 436018143 411051082 542626150 763021091 963565486 557440842 970753337 392735266 982118188 333907953 718389805 54006409 424025545 552315600 752953594 15100762 770296686 714203309 800729569 96782124 816775945 744152653 994317242 663310046 880599958 376472663 786912127 985215664 991012375 116717006 605225543 639661237 808245089 336131941 617644157 572696892 939238329 159632873 785852954 758462554 819326250 145190423 893212573 899192721 947681763 440765490 847155722 700521099 782908898 6272238 726802326 327325712 643113757 669715477 813475490 752826610 841253382 604803548 729234517 603733749 879843585 221932503 686975954 423874646 539167309 258034976 436129473 361080145 667170899 645942480 901358268 537814065 687880648 865854422 961167176 776296890 993502925 191022599 325165318 439380608 572484685 399289566 807588560 878857911 889112610 501704185 971740585 203964417 258809542 563507289 889235467 305017699 599444573 83845911 239592845 171320059 283241786 193247619 241454256 182528100 453622567 854943295 864026645 961602417 978248564 349915505 374243337 389015939 660568140 313353601 518595065 652852454 739696660 332881074 727845474 398132871 699884093 804782707 908326398 968958411 980144610 749048146 869021383 958589442 970755036 179809052 822140616 916085060 928918843 562609717 981487126 549302682 973214956 495124583 959044798 971781970 983939480 621253148 878183254 204865471 422731062 131396077 607109787 68714119 350665830 808801596 970149010 211352119 264520006 984423379 997021864 375530194 566431128 967239070 971938329 209991121 922864433 178029836 809665940 255721572 485990374 805508601 978296101 677347100 883597938 370742454 738004617 632349974 743276271 109512057 738365996 892856714 965114297 501698392 894879063 658854693 998022053 475628603 610171136 113066922 267733211 7676072 920733191 487121268 742248369 950144435 974425667 176088375 551534106 657985034 882832439 358727889 612794735 497255500 528915041 597364775 889739240 917593606 934341460 486335624 626976433 555428401 715869043 391511607 546893039 155545619 483821130 347138489 660538869 759579240 966468182 202517800 839378693 711995572 871640384 580928110 675740712 276513809 742194866 543750291 830010117 56144254 659289844 715995985 785753954 877692380 987348860 210059698 293861436 936256940 977235671 835593601 981531963 612398509 727132607 574094895 800484490 491811682 854989012 925115925 968759093 204389039 819344959 528791674 913632537 745306788 808633336 144227814 273080303 379960541 989648730 185247853 621237333 414514346 730177278 383120540 723817584 970063451 972629785 840840974 952822218 673033321 896522383 73386905 727593688 691811408 803915979 422304038 944964771 127657390 472162631 168886007 976835852 287067427 456281195 115996545 273626639 419456464 841405432 203333560 318090310 262300249 889141378 919887248 945994470 812610077 963066872 621773254 688626847 279121486 612801378 455142744 822269634 94865562 974048321 477420502 671439431 291160873 868602045 560157018 818219253 15076226 928114485 119401594 654358342 158134439 590444277 863901283 878783104 182250292 755055918 929386063 937899034 61893866 992078934 730977513 737641392 230213868 691559404 199608410 463871991 170073920 845535559 480859223 583131765 651538374 694086154 7360819 619250343 634907117 865345637 594006216 632291298 905891337 956794668 267836652 762409358 904673382 913978810 86911762 274993926 812737580 964202804 303436951 854842994 497296671 516603383 659437623 857126973 101244318 320869710 830637932 862743550 845736604 893743250 204670586 440776818 780186112 913950142 164056432 972609021 832931792 896971897 537878868 632393171 368210868 988141511 862616583 980649057 177119686 598612752 589178159 789899509 747387990 985361220 632830635 844326635 188008251 800636890 874741983 957396033 202847977 674254274 572550102 726491879 727432397 802472805 922597333 924009821 966969759 985205366 139897438 776983394 746745730 817008148 743141885 770161407 54595895 327542631 456423502 570838418 47492102 891372860 296243876 660189467 26284592 242312651 870938680 896087423 442516115 700288635 189957067 211329508 79506182 441584069 869207845 991309444 255925997 918437453 296634220 999209306 989445274 995371065 2578743 916872625 262043969 386596883 818241697 989779612 725238731 747071497 777682163 883918803 248348546 900829976 760300037 965321046 494721501 693132922 915573061 943002907 509902392 723124926 506229782 851415891 819246883 975819468 975407618 980669131 817025625 995518646 164361188 560272136 421465386 864222219 277079040 708742819 764939684 797382549 703866474 794441899 259901903 698499056 209348416 278229360 809231810 859761402 430285476 771765551 269604858 484220263 76005304 223473068 891488826 954925951 290116375 548150319 911242544 999285515 886452135 955375494 499653453 824934135 34570330 522614383 117066845 588563744 725314286 803468258 945828355 985454689 517480501 888491391 770612301 945897849 734339002 924854467 875429108 986963257 194902592 878578825 33210487 517492077 366334434 874504101 533946251 537951229 251834113 915885187 182122670 707608831 686643749 787732340 781238763 998588312 293024001 866641071 66474924 439166686 809641803 941031252 283764628 719544390 607059324 626019007 511877302 782470428 944100120 995501324 13257794 576011046 563823579 982554459 767098349 833228098 282784822 767780250 426323584 745636801 532056133 794301762 14516026 340451806 360897772 525485795 837869358 946486963 572231652 679462028 676478640 753542379 724950606 726931113 230188693 380342050 11056553 952431964 757730419 905671323 265820410 393610409 389779970 405331716 116235540 980245958 338540865 565409555 662348793 960413295 138752150 533404149 254387918 940192003 591184820 759312633 15693013 769511052 803871058 806982432 981593606 994144858 194335400 478413551 56046424 610909315 208271174 665032375 607127830 708835980 442281377 873870548 803956308 865153236 11137302 971305588 626184392 955462864 357848630 450760511 573880814 852261369 95480384 843559875 620060748 761954152 670687205 735803893 191358748 849097324 163370355 283960404 909293604 927848891 423858741 825859292 61002236 953012886 449596320 819698721 848145647 892000807 735553760 917679978 720652056 811020308 76908052 565931479 856858546 925181642 927878405 948765386 290049684 689681066 172974360 475306123 63102808 666744585 4162832 648622436 461639248 901535643 145747846 435826112 430599592 817972423 97386162 109176475 471092261 756764212 494152294 690707102 229213311 287301314 140248683 861008337 662714259 843086076 707400415 905076808 449569538 545836761 277034684 703309880 674906128 823670697 856720687 872274947 808350798 829603914 717392428 828945757 851831689 909586458 388271004 985424771 935198359 968423187 596603174 950002412 484305404 981467572 549388660 624511593 832596719 983813830 85040047 112056033 868724958 936916857 749874151 941523150 92730706 655765512 751172786 935023631 136346143 695589556 208317133 355655754 336627191 885750918 744017823 898207261 152373195 969121027 655240943 706627403 424592544 539733094 986085427 995050235 486477310 856035815 516498486 983287216 671713474 864475895 195049393 646707257 535422092 602372758 715748069 821383728 642983057 703049410 260442100 941740900 401617348 627476830 917455242 927061482 939876647 976576983 944956724 952147386 793104559 853684088 522960586 536768047 531077126 883937327 976367096 997669303 442290677 530675670 212297041 489588140 888280653 896322221 260861872 909576875 820477724 832539201 500658290 876752567 959110422 982798565 174229241 582051578 6334916 310969353 663572216 815611182 378451104 729615420 680977722 940529806 297526399 749499768 67043224 688239192 462910207 522124345 132004244 485571918 784644457 983374891 421415515 487019828 607798687 662074153 280406280 986963179 488645631 705594667 762622277 763059655 159636371 268471470 705060739 903812473 823055650 894714972 959288852 970326541 546102410 601048876 243173014 447342308 665283790 789424309 176712283 399526675 441695895 538693073 771907129 872552098 168585990 464612316 231293007 417024685 553709564 604069582 812904157 959380270 378894812 574889641 868126817 970853088 106593609 646691494 456401208 906304601 714010232 959129995 148735707 496833021 236708281 686986753 23927425 672235484 742908741 881143524 294338730 313358749 534647896 947486467 62672863 232373128 664444402 812539791 109765842 636918726 105695356 732955562 405952320 408789092 130691824 939900955 406342953 470341435 417888792 758061772 827055367 926100505 915960654 952149125 932638363 964541685 41050616 840922887 42209409 287191445 921591169 965727449 303546879 716007350 354153619 838933898 957097405 985055734 935230731 998311409 809093067 841530002 662558264 914884200 85386449 520126121 264320681 674091982 670399597 975545654 50927873 800888518 49636249 634757516 236529360 400555502 514845232 552107742 434697565 658873166 392092596 477029845 730596680 782649646 651307375 894239068 554250050 593232324 467085049 882714244 583656059 748247876 395102672 916526614 684002705 762555658 216650356 406570591 821814911 953593000 213922400 323934248 18074463 385549636 761775560 982745059 709382442 811706990 105352397 853903778 635046758 877789100 766497154 954002824 401713722 834285524 653976431 834674365 755211091 905078743 723005418 985641329 548093014 592294461 483068871 575658173 884542487 958518031 527078373 652957128 941575948 966499161 924226703 957463259 493269738 664261373 254174823 500760118 931442731 959192577 443136160 811986230 524765739 575198813 528441973 906838667 264166370 989367976 965131093 995142011 626853080 724900597 359505881 791299433 84320784 159516945 364640062 926345278 481906463 832309923 903102887 921077922 528968088 632273709 503513980 646876997 291105052 510753355 832099421 894631606 803842707 992778662 124977872 593354319 628276805 799877929 818248040 818580685 798069674 960613058 866492052 900274485 202993801 395406865 369220133 610935904 401563432 888615680 441062746 576894618 775321802 982148264 993781280 994273768 940573918 963571434 834299377 904850134 998403323 998648457 283840639 528303995 779315957 911394231 906045480 918740694 380999007 409098285 116513403 963836157 968064508 987555079 251107574 305996237 705369746 747970442 290655638 567540177 360978968 965665494 430107184 633104909 901913114 981142861 833911141 952453202 12249006 638547664 220122660 703295878 82334191 802756015 9272973 165999130 178664185 813741140 122207968 372076261 516799580 746935738 291382316 364872188 48296060 804909468 385522515 649585591 542012171 760836474 611935340 926905423 467716961 590699067 73849493 191094573 23784932 241226333 430313241 618712507 941268832 967437106 252027833 253360395 403429448 472902849 778317010 802583927 148358524 639621497 472430775 583294924 74159660 506264925 968824697 985559276 231442893 751930051 15532116 374515116 14063825 955393157 175455275 737627230 152811473 851785069 20070095 110445394 6630108 629997883 8733518 426529138 573858596 695137876 274277395 459488848 657994349 795564761 602500529 938436105 347687164 875896244 558390075 833548002 538888981 588936795 767629023 796911902 253706415 651326227 381161354 772458856 2653466 698524437 755043246 768034539 76434495 924260761 927071561 974306743 847483035 973726341 791750664 798501841 794035715 837465401 6859351 943761628 793714493 841242587 290133960 552379812 766661517 894321428 27224382 734757192 345313081 860222988 339684446 913543151 176191302 935982443 590877450 683038999 305756642 886922647 106050138 317076361 924423633 984707822 378320670 407727222 349412171 720347411 818737081 884461653 782007857 861193816 234289147 728763111 145447064 665707124 530775760 914061464 477610030 898906834 837872372 909633244 381534214 770247135 451235453 701959153 664783487 782688878 201603929 386784941 769504750 944579185 200582179 621683883 9517664 686234934 100258887 901936537 585063276 994633743 174146948 780990661 232716104 452753025 216458882 826770241 598154851 792855011 490670391 852865641 94780894 807050686 994554280 995045814 301732620 502243456 547928343 850506765 299506089 441271316 272587064 553686169 678242165 708472542 51135569 990851069 878597760 972822123 869153875 960859629 110371501 505340145 623702793 655671725 82163326 933908492 500297340 807461884 618733984 893431498 606446399 860043697 453587307 685867575 618290568 956018026 413169066 645802257 691159449 894080796 995384860 996502357 852055415 855704558 255025045 441205774 124284250 610998484 137117025 789264445 668475346 983945022 761249260 845489983 568316063 812788058 364050712 751237043 159989715 785633826 513985872 581254264 928298306 934701396 805576645 872871920 768245641 950457528 546351386 587024823 178777091 331821596 109464404 832648530 236239299 340207092 15022243 199477021 202908079 575194207 693498737 835827340 890551743 952711373 226112214 510030576 235854653 938696327 30894808 778113874 615249727 908213013 871388722 938971990 90108869 127687101 723157730 725267687 401435453 788491544 14279391 55904793 492707993 889732773 459999012 797571431 64755750 100809693 153267858 661078461 498183378 525437574 781769736 969423986 638392589 775421505 74979590 80310433 854117689 948399082 674750657 744234074 784271050 922469980 942101426 980277896 180501818 534684198 538102555 886977882 934112814 944065329 558519094 567732313 364696738 434216940 930600796 985108694 871277935 894096052 99013517 353352903 541567936 781314630 751789921 798604120 267275176 672093138 787898547 946174563 67647995 754236531 213635741 651978204 968141492 970226436 972136577 981622199 243162416 600047575 541346693 766559434 411601843 425964859 414804377 776383146 881839510 973705076 727356480 877926752 193903926 830133574 374895573 486843855 192165665 796667493 613730099 904094173 628613196 794278527 235861830 960659851 416462563 792229960 406430692 872978678 43213747 228655330 71009383 920518595 471772122 966990586 70617510 518521352 694264525 706314666 674288427 682191274 483475820 862653163 872338748 955352919 133577737 405714749 100145464 734686411 667139710 860632421 763994620 918694534 401286907 438121852 23930174 380048636 750260474 975616909 879562707 881321782 354690881 616277476 570933248 935308486 977392009 992067995 861666192 874108161 168983688 969463506 310370453 497322653 298790883 318109341 458594155 867757986 36989485 557469543 636528706 994010748 147935724 894721910 211395473 521481503 490181279 965273367 70248911 910231856 309618433 442695190 685343008 879383773 359453961 469560238 843065292 922350703 984113951 989385320 635279380 859951508 564775665 655639171 649196471 790288253 843151654 920345697 366516166 412323297 888350609 896908062 687957848 788820273 103687294 745029411 749076977 921212882 611305576 764749323 223597085 885381482 763666803 799904363 867457420 943454712 832693531 993270263 686466795 958812688 913186190 969035421 536597460 560618592 249616455 296044521 240115170 386050849 234595326 968682761 250088409 529660387 506637684 929014852 8792840 978811880 897989133 978045246 374463079 859700462 553555389 764605727 702426271 929358087 743290667 947036287 714992262 978587725 558256977 988378613 913230592 969296575 995885836 998430878 665953480 703774425 934922432 948688080 343370787 855653089 894068562 958223396 131579211 880672513 72435912 505525100 717109427 836313650 368897927 939602222 857045839 958644366 153975169 506697848 13785548 589912994 971957466 981391039 590249076 940901589 932289734 966381870 172101509 608762992 819536177 974947523 692109674 771475685 156588958 725700120 84330482 256155635 528002820 595703388 511081021 663997597 401150631 426596476 505856713 791365877 525045428 581440173 660254403 954421060 318697374 519796313 789078877 833275784 317478393 338124277 164579089 990119944 975415156 981494260 171998046 596360784 72510432 341339843 385957313 555198478 64895196 665802481 934459452 943401479 449055778 621603775 918022869 985342220 651421905 711072224 56451272 635885227 218985173 231367165 276102544 279418135 12811289 618745094 358908212 950103898 917940952 945906382 192739642 310678191 171885355 225239027 662072678 934263479 420668952 938007988 225369351 521866527 645986410 877682334 549355885 691794034 617275847 788085581 262400885 859936617 413168677 830006753 475728005 628652879 597160798 678987136 831829776 851908260 150913491 957466146 599172351 789731930 217220 291780248 890376318 911546607 439142901 496868118 586756449 723869112 16296143 899808030 345324101 974087644 746369063 968935143 852903856 905262675 281095998 628036349 155917099 592990480 6771274 383293471 208359460 531091542 13690328 424523140 538400316 910255956 218988566 468191525 674127856 938628804 56524445 164070500 982703675 986508463 283522551 899203586 56865517 414745571 153207420 974515763 792931413 845190130 515512318 980935366 376449366 718979673 513564493 827068642 712402790 865698170 757120739 830899063 995677853 998392047 378266662 951096175 629349186 676523786 13862831 900486500 208480959 329675336 36970327 480961507 845060004 916448718 589203921 860482646 364655921 497719388 746197881 893082486 605704467 648852327 706345818 898444347 832143528 912767509 464001196 766862653 751458435 823592650 116552009 840180067 373351192 607187388 125125882 236689213 415252516 540699728 992640615 998624549 337474960 409149806 68256977 557043133 666080664 861714158 126923287 705714209 373475443 791644253 15239906 248190081 234527268 455430680 176039218 891704076 15779897 538820798 130206084 176240813 534462670 902203788 113558636 396625854 514485901 566340338 730586469 916474747 271582367 862315207 10482533 747432414 423909521 864189391 490890568 565563020 114446111 491495520 231351845 364103300 126785474 573046756 701290885 845850762 397764038 593046214 329294181 799840681 178014138 860771972 309750986 776502411 69166148 535931335 621626157 924222469 920699371 930523450 791021748 832986259 36596217 892496621 900924376 972949045 268595070 892694494 539458263 573552705 514937259 889056617 246378020 317369763 969818569 975704690 188962149 799555766 600146128 622322033 414523146 910377289 361185847 692751875 431473767 747499764 143895198 945359443 696551043 716326028 504926248 865933028 563283984 770631759 416755983 661040560 260136667 978228098 3553166 618627724 544379054 641897661 282431954 409936043 397413069 439422126 603814094 931746112 731391459 744318744 528550903 555156704 312612823 860675193 959164967 980510855 211796717 981514573 807548191 837944673 598789826 988004806 3808474 58735072 531187588 710309026 25964213 606628639 289003875 833295182 136218378 943317164 976804556 985017281 571180036 987082743 893238020 923995763 496403112 983326597 99056432 670168176 397621003 488576881 873532815 933897296 633144269 984385926 663384018 897409916 98547178 952489336 167331357 829885703 963233969 973787162 805148745 828145274 993269492 997046697 225509646 409851242 574217010 847869464 51374869 813431281 616948928 925139042 973855774 983544012 721365929 888185699 68846355 490198035 464781129 870107361 569873270 671894460 9055381 389905116 649420953 768692166 471484972 965181704 750380718 763009766 962640462 971152652 358141917 722498294 12417309 937473070 532970029 711195473 864726138 871682287 669545973 845208291 530171664 854538220 948101816 972178500 543331172 822475442 559900124 739722253 650848872 701815830 997381202 998435730 574462272 821535476 9542504 990474458 207254408 538503453 210832596 545642177 305640126 834838152 333648811 952891662 327451585 344325061 7736094 531085483 500559599 632431282 605684037 971379188 923052620 943734827 441959651 834385837 463988244 667217843 424269405 946180999 448026583 703632107 209027738 673107846 496485572 666000306 959472632 965702676 791402929 969712564 267879320 587979608 340612983 693738616 292144438 455197059 635842027 895857451 664146685 847442768 522753093 636065469 368091735 979294387 571262024 929315123 330696140 390133969 414014727 975512725 716621746 908726522 11304761 447562771 41706138 195112097 332173914 420915103 738310267 939268230 671844956 869754879 816147262 971586048 803827240 843073337 307912506 830137427 383525250 477644814 534942951 853541386 364228460 947451336 656734368 822868007 441635861 508205965 341240369 419374852 905316977 906041411 620449681 634667957 220584702 495437375 364039745 784629164 594748307 808624993 937600540 943416964 855855003 895631946 546116924 796062747 392869516 759589347 912524397 995298674 919847595 934207249 285324658 594973494 977245173 989051860 291135663 369574463 151898417 487977652 874848137 929748124 528983172 555819983 884382199 914431965 566294483 898719054 592393301 984159151 793688485 901090808 796559966 884356738 799963233 957748670 853299949 928395438 879916193 971909881 338751750 779344085 448691802 763590849 480147265 856033196 755887929 811058869 153254201 338670398 355787413 567471130 362084691 641067051 161362992 411598873 966825018 973299049 884375182 991626008 104685856 445703046 684416193 837951468 49396482 798153712 497816029 928492638 510054029 920664442 512550693 724299588 562340156 694035938 454751340 489327988 271554602 720167009 847137481 972325747 747296760 934907921 689517858 832356458 620771390 818407590 376858282 414436255 228419730 815248575 193633464 757423348 851145931 919580941 814022354 908231315 747716720 810839128 150098911 756089905 845507831 942337819 755818508 833678757 735138827 941176214 124885066 297067971 973508697 998629468 37767836 664049076 867839337 990917462 877673791 895127863 880990995 992973092 822313964 917902761 873493016 897905642 91944019 768695843 324097015 547309065 34301433 942978354 970989477 989927371 378581496 553267798 562345716 969953641 619637760 993815844 401108809 985315973 437704259 851206624 38405205 531865726 735838152 766687167 75559842 133431373 937056678 986829309 157041109 466199656 474944758 533315481 750848586 979380225 647836269 777175605 872638420 986923113 740596592 849865894 318302782 833563617 441049430 733872601 622880769 846656511 992797279 998003085 172817809 786913735 914440876 938713886 898860753 971082597 194775807 591611236 85394874 357066668 475182595 623489599 368679114 564638863 902944677 950951503 573496153 932417704 788931332 849449182 539533082 929130854 577944915 640443971 548450226 600459101 974088069 985863565 342412230 391080606 648698062 980948818 894054874 966882460 103610474 338600656 912425039 972371798 217481935 237901200 787753622 810146976 588550699 926980191 877819090 932762144 950395019 959182787 563292690 663010721 84220420 818787591 378783220 851752898 13858322 28070734 246925933 694753177 518051616 815219892 412730013 850050795 531951481 834302276 672982944 764792915 504012642 565747353 442681278 486443690 571538417 643880281 574116697 928957883 592294905 898204527 294252554 599269785 4970014 214952179 117724610 787373137 784171328 830504611 366610707 777577065 945751554 991505477 595668764 916184638 625288663 654745701 227032795 527778779 150370694 556504449 210590995 272759377 394100089 801387472 243243126 644170777 151042461 578069215 685186508 921418516 321475807 899613088 839219561 843230111 436736248 469376917 568439412 982474304 405350365 671628487 733611298 827134894 186908196 519274083 770687420 866040615 279377562 565859466 952290305 974224887 504618223 762845168 450179777 514470973 570512155 906592409 578558133 866683671 145145328 715734010 677442946 787603180 975648327 987387718 354110469 383430866 676454367 770920029 928689890 997333587 705222881 816489125 4849740 169804102 204070419 229096552 605430163 681210973 819850019 867567781 499323452 828687803 875812822 978613292 450829993 792551556 191449755 559401202 649411393 776724172 546377722 555631986 981701068 991727750 447858665 739296697 683336945 763243680 62840645 356051232 562729345 976491644 116384177 133678426 977508924 996193633 359371257 824656235 544363046 713923426 894218460 919535928 427366676 512262110 609137531 666847813 560106293 852491428 555358571 860366014 127134918 371222458 827438203 984671207 958134279 994902031 459875110 669914363 236509031 695695282 60079508 640377453 737883173 861521217 91032923 598826910 621568176 958800833 146896385 202127897 296390806 672583221 248401868 596510353 398136040 857096827 623380771 748170793 872995454 994425652 716291745 875315350 103150495 600744628 823086707 845094494 459769657 631005880 943108921 958235855 684581468 961991658 748001182 779451333 354281303 897018647 862568408 959674358 736940688 846372102 752840434 954751655 329107650 851029136 128278555 672207933 850445631 928442107 929474094 958507307 94863597 903937721 870893788 980487542 3697151 424697476 156946330 410043861 519207222 887181445 848263566 886145502 641604883 738827684 764312651 858745208 37231466 738452782 175650854 224574894 604217754 978595107 556763839 618920884 945373554 946085810 389735481 450911606 140168557 463407001 259818362 505196564 320028777 340500494 130433473 773552303 588047103 601358951 994275514 998846583 241321028 259562853 798954635 962692416 116881263 640428648 773763505 803629561 383206053 471670353 158192003 663889523 241844868 731640711 75621948 809122932 867411665 971955429 87515546 790924400 318557174 409227517 949651778 997505485 19133344 780182155 729211804 754098888 393686028 857665617 670118012 680396084 744950636 755234178 171232155 912155223 607185378 639090400 617777359 826813794 471380538 511500125 773162210 971698543 707226881 851697126 997995980 998066745 841042807 897334507 775993190 904041560 668142739 980421509 13370786 486671106 861304554 929372611 726742020 825093604 550805302 694804948 15631279 34562331 597691033 864279255 859779542 954996871 92086080 964033136 767781742 849399318 442479234 935077462 589200422 888258222 891299229 973074658 79976701 719117647 166170648 696496800 699627796 837500052 141735460 566526079 817344515 889165732 907311074 921412393 388597753 631035860 878706998 937252529 858572119 953528361 285057898 363826492 404842609 959217822 741602667 869145431 631192925 940460593 595047581 963974761 140536277 921993798 957253448 984961314 374858423 837931907 126820637 532225180 116772020 298133655 816638087 909248091 531053110 649049264 529301006 659109443 177292545 591255512 890990210 897522499 431243309 594485752 849515058 990833749 844990599 855204389 181302713 478660351 419522549 578306635 243988739 769692859 813865040 904178530 492290923 692708878 900061910 987819558 189183192 613803305 238912314 827827056 483007010 753979898 384881025 451678696 342429332 845256907 550367394 819244286 977030514 997915198 277477341 672029057 320374122 963186470 854572928 977347125 459311931 963859573 559968184 711288964 22533708 227613387 987354355 994516940 962411665 982582439 313439173 542379708 689890550 852672342 542554493 940801171 921037558 955274994 556529365 671218264 517370520 567748306 987964578 997480201 94599457 724042692 481503999 729060748 378853519 821033234 220014955 995480167 161686122 234507319 239950918 680609122 61599395 827700122 441567673 592821625 891747451 917224768 717977178 959204076 847210850 931962722 661404907 749486768 223650928 958399573 568897563 943995945 373750580 759844266 860569526 877882883 768271514 919251482 319600044 556463745 573153353 986308989 870374031 968401107 929828032 944390480 397287874 645045058 203815601 448629532 467363432 767685765 231916095 577629555 961065562 979815834 881964827 888411273 817182663 944797347 656248682 765787537 931116590 978424884 604898436 616150169 597446939 656097953 592234338 864196191 140777280 377012358 3582448 46654435 194482820 782037198 21490972 934884932 395021426 758773923 543080293 784266755 416597105 868698595 505163740 643547226 684905562 873184570 115441795 981152378 341963526 557323713 619029121 718574188 355233015 572148503 879704019 895485286 672098775 905439592 333374239 643814414 746104797 919195192 307845659 769380430 930400826 940301592 645463901 910492037 29088156 148203573 187959986 610353122 241293664 285964696 804874516 911990021 616341581 618779979 756578250 817370065 752632698 867256202 499553864 992361189 780311843 809812370 423625884 962527612 786739815 963717053 484660605 991508778 362197262 720689224 379525930 386207586 634621240 852122841 526943721 735712520 705762197 807049479 898488197 936883981 658001761 845020739 529170439 727181276 654679185 814338320 992558027 994377156 671316345 818181647 680892506 818466518 609070639 698732166 100940495 369375425 826852518 830975343 297376771 402356055 53242727 482384675 957107508 998593657 830159914 921531591 742110838 821485618 383498788 538296385 117208740 711381836 754262574 938773301 756806299 844243406 318580339 958576282 542657143 587924519 809718306 983542518 970639274 980960775 295749712 606280129 787163280 883346564 73302300 636844731 227896572 473970521 73405202 531109303 284739985 325885497 548899182 595172489 748715232 923546823 317886100 941100993 629879015 951243985 784902376 992981562 237070945 453635014 327832310 490335056 826641997 982272985 189281478 881290115 566698358 775121843 162372479 267435067 818655430 945216617 106609713 180470969 918575853 931927954 574138648 870972711 11552568 805621240 268227549 372835576 960354065 979563250 371252511 562722644 149310020 867653815 754741116 837789536 110017126 206906474 564096328 997724017 754338059 802457093 831505093 855774751 555054399 876760372 914714939 921889960 431679360 490763334 830082737 833352648 578229848 692147992 774219816 800471296 833113371 848208211 386605573 539153008 782209214 853753101 52801029 894042067 685175581 716921656 731571837 839000468 500049149 889581886 555863184 787691559 370047038 865559089 198215025 297104855 123663851 768569564 832783907 923468225 925248570 949846620 6025728 19736123 263111468 792025041 35899504 681184702 739072215 820629331 47755208 354570106 776751917 924447010 109558986 317851036 565084252 856178814 229156911 240400479 13291170 462548726 938162547 953968231 751569063 994881687 697460122 822135434 226501146 382901081 328048256 733736685 12905994 441132253 495451981 769492447 944695870 985378479 302840346 749622612 563958868 873935047 456516203 787389691 627951319 810731137 276138871 301444504 635306221 991687658 3373086 520137324 503998765 932511607 483176088 545750122 489778275 741722842 805518492 831837983 771558548 960008739 651128416 940785892 836830735 836839299 443515166 962926603 39639262 851801693 22707164 379920271 653640077 664029937 249711413 792415515 586205490 700972338 865601051 893259915 919871487 932402197 893906017 908987353 763766818 984524150 964474126 976934200 778507134 821995950 250529652 800449596 411341049 987139868 128803532 272874003 907586868 938305805 490190821 830265309 294407366 578937807 552541287 988008653 84264814 364206338 413786424 445065078 691980968 884370580 438631725 609078066 639823978 992296413 688166957 963943738 137864814 244326870 879749536 966977800 549988199 795857123 744994436 768818276 911881582 942081187 191764101 945001180 845445046 911521017 362007007 969676233 162423367 962422446 41242264 746765937 612415166 845886981 722006323 992461899 166277218 468922895 378164865 886568239 15313997 727769817 382312498 566056713 955264756 959146159 345666413 762947282 734639487 902028182 20348666 902126764 997591100 998768803 966125845 998608729 332574015 493126413 116011993 685732741 519134096 799320991 550901656 768841344 722216977 990063658 154105991 241912032 661359398 885329198 378245906 784824739 997613415 998874093 809099629 916958356 187246255 541529817 350219010 454111812 38000379 367354935 369397155 533125813 494972803 687035757 587473618 943272344 503911842 749145982 460545711 580469767 421689035 910106915 334567389 366685084 854790312 889386684 786755774 831553434 261885625 728033744 303149344 934453935 460146356 788770200 11392610 422973959 899945908 954846087 981908643 997912423 64116870 339681525 193476412 638894817 358576779 747449696 587049453 786103133 381057424 484239181 642279921 642964319 643038128 721319939 360534536 381156866 68365439 881706299 529118487 794463585 431014088 574916162 596442098 654588487 298622886 484366645 390700426 818413880 841117328 965306786 114281358 823171188 73884004 583736042 713949628 786842974 441724343 638992401 476591223 520644494 368910905 944557614 122976695 532728246 408371014 883069456 26813313 628158423 107531041 644388906 549262949 711561699 15575307 183937886 680849501 746014299 721637981 802157800 812855045 907998743 920510183 976488693 78037791 364459624 468128073 596680687 92115639 832514604 213650392 616036882 758382157 871844036 847658736 900445188 463676593 581340786 814456686 957585766 450070507 628646527 824810477 874576212 886057760 951661936 541658095 650627570 354817838 984909675 847256808 963933052 476416311 485877649 470246453 642805444 464421084 774069238 197972922 296135499 129829482 134388278 796327221 901398966 278091235 963439151 972170454 973874005 726259906 795843503 9889357 461115865 306703755 587250135 745284561 757796373 820838625 875006337 292933401 359043305 298249917 865260370 58323194 425170246 513073985 738794543 926810813 929337164 232919027 489760703 652685432 711155472 912746553 925601255 660022996 683469186 151702036 519388426 127086536 831005611 677317719 824385774 174426044 977205919 709660270 810402524 692015207 770357482 49829002 857203657 85823289 313371486 34338417 668601292 643116744 821274766 820762743 975962694 86285195 766685463 946168986 982035010 793885727 809265721 838573908 988287347 577180900 772147598 91668264 699315512 1172457 240564295 803106875 920822464 519901812 653452797 971832276 974755740 572101915 775112904 712914348 875107674 486343271 750264045 847032236 884930268 523195759 994112268 43304900 971111358 382724601 704290225 880973696 954397303 193800127 457689679 82931463 803620398 74577362 496308189 556563438 798428439 719014792 901461821 866653392 870065282 413546469 911821973 313959748 932143054 17477930 208887716 548324827 900843205 799031287 799451998 595776565 632320255 680099746 793755735 399344645 867511919 297798936 795130989 503648313 930504560 236960594 285038035 297355395 725436164 855963056 942064856 588178023 987881423 800837398 957815391 398085759 685075724 135252952 288321580 632296073 856479342 376657537 653685637 782291549 827369974 126751690 958509208 188493437 596825459 658316333 690616314 291416625 602073838 494982409 965391643 366107545 770922053 472119652 708342516 997422593 998028505 419018772 673970507 622278077 775053365 815842945 934161401 10881628 714996345 175390970 671235705 305744824 624777359 454976873 793575161 839614739 892402246 29044505 150329002 133151171 737808142 59587767 387406818 204268085 839397716 353423930 786830751 809111803 829060299 785150855 986856757 845877215 948794831 561455340 682559431 777777741 863532520 717921745 718627681 327775637 863515187 361292453 828915290 915984389 990234029 672672504 732637440 1971026 65973245 674766260 767265197 945350488 998437363 16754209 993431154 87788638 831964916 19688926 890953849 107199054 401712871 401941151 738836956 663798521 995133648 899857618 903216044 855033012 910805407 963412386 973206565 180074689 849321403 516205544 899861723 161027167 438574394 464579407 646163882 903043923 907042335 46919026 240850776 436949838 692535747 191470319 742123874 200175553 794365679 445769984 948829786 325174105 582328132 39192763 92389817 223255526 581517355 991546336 996481291 388464672 736516156 781004452 821368850 241208179 452777350 895147061 909285114 927231565 943557790 274848844 953191869 823300365 945384467 505500406 633205027 747383050 943601706 196651993 718193320 57675209 187482748 922271884 986727653 96025837 874290248 852810769 879109169 808977608 949787508 613039365 985635413 155340132 654254667 140499564 178008997 734628112 886593467 564227595 857534539 248218528 826571332 49026086 525714001 922992564 977782155 263987595 667686690 289602656 434372560 381638935 890098813 96312799 723177437 40014905 552030547 48879829 789496341 763663790 928108325 376165979 804743479 907866717 918711527 987923780 991374817 194695235 912790049 540685815 644711064 202984591 290833028 763289270 832189199 497588307 916643036 644763999 790244721 505016399 577921090 944754266 981768657 261470996 659090769 910865681 973428466 998644655 999198423 458212460 881280839 11541930 562230487 552109175 648641694 989709665 994349183 407742328 553225543 61385185 668144997 915701915 974768499 560194606 857745765 995378725 996545117 553960928 631140693 907015088 994767949 58417049 918271050 683341264 685348133 165773520 188450207 940194844 952081375 127458349 440567532 580905018 905944746 899019570 916959112 79775926 299286038 296917995 378982567 912466491 913754422 535068787 956791002 420526877 489049063 897148952 928308172 492885516 512577456 119893421 918309360 175190009 426726922 974991411 975858485 500959966 867710625 197245084 476318795 601673377 728114635 632749283 820693511 794357973 907047721 391049615 758797261 913206480 942555213 703698194 884331853 713623113 850806398 418808768 974282494 81963800 306179155 217539039 617226867 529245331 761648069 782121295 805415547 103631543 221929863 229755057 655780375 859168027 953119213 425355277 532655498 102294761 641595303 865262813 968602684 541086268 723819077 163722381 412196365 125178769 818330543 546673822 638455221 69663315 931608562 617965715 793266408 766294552 868587864 580254005 618998375 776567424 929188822 191198279 950316625 344844842 889298763 516911944 683014623 820982926 875870104 155494104 636989408 520705292 731845141 587326973 625688032 599052949 890706155 675679784 982406773 868812497 995422158 935911609 966548620 79426286 488180347 470829971 855420548 439182151 799815319 195900894 734329169 952893149 973874141 340036602 541950686 333290442 946331764 101831082 937711780 580486968 981378467 697674301 865593388 279695391 996560434 210818768 396979583 37174961 505576807 167070014 465882785 366937465 827053722 668633025 833818413 562663365 768446703 291950290 873806714 905622070 915615145 561904840 688061481 687734528 693578482 663976841 762336640 303929064 502960079 506209504 983735069 471039609 475508311 791159362 808142161 998074849 999229080 815997858 883332686 184075325 268358251 201516914 334294345 635219411 991515543 492180299 525580134 531007839 991981038 355175751 686378240 742699971 828864828 960355915 961250248 872730242 952489237 193223901 911319584 518731731 728861297 408505245 698903042 503049932 700319985 384799298 600036532 737597232 776943720 295417981 721080431 696339245 980784105 62677343 599325576 403366392 707782044 59911798 350836154 932989317 988865471 532691170 545762174 112987892 183497174 531091545 634170523 308526172 688552582 245035321 384020308 330754985 552445035 789871787 914438560 529705952 789088985 31325300 144909026 479153268 642897998 453704967 509183430 5061584 180607078 163922485 827367156 497215941 529616606 578857516 583856466 353002142 462654573 377917923 635550022 825614001 973393849 128273509 290343017 351411878 689626566 942865399 951412039 501666793 940115719 373239047 393838992 107677310 575579926 788350884 954476143 257768686 419091095 729651909 971942035 670752369 972338438 67197626 820857725 268947379 926740065 981059917 992735621 497145834 761382422 264531197 444652624 537678366 679055938 235583927 861233216 93918267 858453708 522189005 598645546 129474793 175327855 764353332 826677409 813230762 909064195 395538520 645143845 762192006 916305947 584012453 959646219 554760937 685820750 189022105 988761540 529264815 940750480 337266310 663478352 803400422 814417291 549551549 818864332 864002411 869267393 731030982 833559305 300017753 825410032 912649367 927069461 552842170 829313449 706103996 832321971 91575370 213992619 6352080 649513217 563167993 653785495 824759953 943872045 272131389 468888928 401807812 747222953 854065183 867010902 625479363 792880334 115815272 795664558 456387397 726330887 638428253 949233466 66302218 735034437 601210559 865021983 392551401 956431399 237627857 983397669 895627802 944942993 628550236 983189696 437704146 615146684 949452641 960819002 423197109 649073558 994131242 994606707 231060667 669276039 591120 215011073 623995157 852079926 635113305 722240140 289914517 614937033 540352552 726381429 39702853 517453645 834324187 967784301 444208515 463517995 62808582 429169377 126120892 461993024 950692388 971847443 449675677 836080479 902734417 953307424 152044274 942454139 836488748 984089253 285027944 780788489 773551469 990699382 567424897 760644175 439394928 891265975 67246375 712231825 334006467 815640979 718926503 857841571 114095199 566225387 446348624 553727900 823034615 869758776 531476106 900429837 656395384 739167125 251564423 473337966 851190066 878059144 112334193 675888921 193886325 426176289 591267510 986382869 879468619 938947782 326316450 880122052 236342161 306930114 464395459 490030703 788803955 824338948 173010573 195192127 695355593 905729287 223010834 440237954 282725640 846902797 210210849 638367226 886987173 936007966 779809047 859754732 172543567 491301431 155912203 280216946 589041033 842984015 366160274 610016128 525991195 655416075 824240849 953033880 36014122 843886959 822335099 982574186 888249854 995204526 238109281 270514342 204925008 525201020 603887753 979069540 101611498 464317003 506464945 904579048 922444064 983839723 153711950 797591161 769808052 897142093 932224994 960111011 887796902 942576165 903204594 938185895 796444240 851858484 226439933 726476828 675829646 887289161 397050978 815612004 530321271 814005781 40399410 259060274 703974395 835965500 260406422 783118937 604489690 974661764 261049630 377658654 907715173 949749963 102195707 368869409 628144521 856690167 144024211 150320273 190422657 473048631 577440076 850715564 597926942 695485845 701095942 926541241 852066705 933330236 582979558 583459553 62036890 563452931 463538342 956374027 748196761 916710015 907854565 910275880 830270200 955836816 211449466 485513723 97845469 322988451 528880227 904891843 827647660 931755560 883376257 963588633 823067916 963353546 674030895 959436646 265788338 371958374 916422652 993313575 448370642 493032066 687389339 744612142 790955704 812189397 286000351 759680525 13943401 992251644 170013378 369542656 390052286 480870706 889425205 937343055 960822355 992864608 59530447 836535120 703333917 848544438 712541854 865660227 556331329 987333747 896303059 931763664 15428359 735581532 515612766 554417356 185042412 847655305 320557647 499571079 707218298 785340979 416161957 915860430 290078334 462727654 632103921 842210931 566074186 978830551 260681248 284401529 371082078 863625040 760906102 895468150 904774871 976837759 496541662 927688859 690086985 858519739 209286309 649731515 638026221 817564507 610827581 985799138 259418289 288256429 907532658 954432696 763795235 817887753 436489280 512107486 397564493 791533126 422648842 646528600 410223211 531541023 300240570 363409493 250336255 601916652 620803082 686940628 93643370 233628685 866559887 988181867 718191492 965539364 344431197 472721181 689590132 863241766 263083666 779998657 159768676 638760275 883915727 991378690 501330413 653702572 188563709 903118083 358949683 814027620 933677392 937943560 149905142 985411092 153421283 322840497 200161961 513308496 928126416 943213551 753768756 909816775 494958685 524262684 714206684 950918255 146763879 429755852 710542042 916684416 598964899 631760456 640827312 788195788 397367667 803621426 166897220 456459291 209184998 390122404 822456608 932171889 324249252 652744023 20057244 224966660 213894191 340640047 123769728 161281710 62000846 656136481 645475467 767884356 611207891 859216397 452313759 583962330 878446117 940511395 480067876 827618547 263982466 707335494 958731093 994215312 766237758 922567879 599770063 776415267 701881329 768283113 797367104 980342817 208844167 253676554 393754104 446231166 670415424 690433727 897814535 919255376 905277276 943251250 596534021 641621262 427101931 982736624 652333080 750055215 71078932 770768135 49540103 941825042 451497862 483830915 969460881 987274385 996278413 996722462 847311002 950453875 307586399 669327953 259529551 860740720 656164059 792353084 595859233 802269439 575987003 583278117 880967300 998073297 778508054 813613226 158913138 169125156 704373243 747522077 11402611 515085537 909232360 947791266 395802353 816482763 361786956 936140967 329715796 505053842 774527719 855966486 829274877 936610037 547518944 991474166 591930388 629485899 320750834 728150197 213375225 965447238 591901580 651752628 29804010 982064968 793522697 916608643 425318181 888724417 977402614 987756241 416857434 556299544 576933162 689345083 709751393 898660397 712621835 933757726 124132566 237323956 915377836 954324655 835711562 858869813 728741706 865049015 700243323 951252873 237842384 604634056 590289143 938523568 774000571 912139403 66846525 417417998 807743594 959695095 775729389 910346463 483390824 939683239 352384941 652655146 676407746 922242940 928411400 967997263 902493910 903171433 924280696 982020592 54396542 187704440 307083769 334319572 710303071 959712122 471894086 502185114 33717420 116097160 376108868 377040790 322236746 905094113 454710603 564742878 620040649 790549374 753551732 894292417 621658901 659502737 227343757 763986472 262138392 546115298 656038131 665159586 11239556 548977740 786423788 964011771 500641453 799206287 962225023 986322702 126690862 655219195 423931210 459745811 954831942 991130771 263729332 651209531 413876304 738640748 777779643 810998669 668669041 750861701 710609724 848397393 441643520 879150106 365636394 613189137 211197839 888799122 62640807 240967939 800015386 888140475 961906499 971912221 574586027 757907805 255012652 864475559 289463310 682556907 415986736 960297358 379208550 829037858 165805421 281949083 432017056 856436898 57756810 185043137 903582523 996525276 438953469 991656041 626277191 725820262 650477140 986868492 615025146 689662534 572831642 822165108 648543642 732478820 965043594 984378346 174436561 399285610 439549282 466436404 977668742 995896603 10086973 362849643 457730710 716004586 426044787 943215259 301261458 583088860 80333084 909817777 89018738 970037964 399823612 867353625 585582357 816698095 783963950 813961697 879025758 930023379 133910280 622283262 299406532 646687453 631417561 797198525 596372686 941286059 282359854 723987993 423812160 843425391 497309134 922021864 113874535 988499292 841671701 953419044 378955835 889156184 861069300 975900453 542782777 832449559 966838922 994291093 804158782 873309078 700916493 732334139 476158925 777833581 216243060 308076366 122079170 918822888 907870247 966032117 196249521 929766850 837289456 943255902 754606772 904769396 141115276 413426509 577023119 813640458 699457450 856590574 895167050 914624685 950271893 976763452 414625463 678938029 273817096 956547835 371518788 972704293 46434401 580739175 472018383 850132040 873103464 996606833 246139337 807274375 214698580 342934024 987291599 996191636 772981617 944364560 916063858 936326436 536584449 832852941 525188740 821170791 823424127 934981793 740189080 772287295 865186178 954004737 596376370 908781248 20021738 788711797 335657473 654356216 152743494 790637505 910439075 976874259 320247783 829518525 570154483 719533068 120478951 569479438 522780779 839420279 988921448 991813877 452411843 997910002 226101005 743601256 712588623 896704741 530027727 945385350 492800337 942112800 149573375 660612000 162930931 525650518 137098291 395251706 861118458 976963403 751996058 915871672 153768454 969041971 752251857 755711821 358895267 422832654 906359545 966732659 955437329 959134452 157870694 951571427 933020007 962654444 877171796 903688941 349545604 417316533 731400645 816208551 285610469 429500096 993873943 996282020 183971648 327920394 610136386 774238710 348256793 955328885 548372276 956147898 452463523 671906925 957474457 957506828 599676689 648311163 519110632 636763007 511746879 894636815 770699716 939191537 530941875 582455263 177058281 981257551 598831845 777102020 397609243 662139284 239702002 867378163 830515184 840873175 47312871 267539979 129653424 684693707 806010030 943885288 500604223 976737590 827981010 863558977 389615990 717785846 134416278 782185637 593398050 726979385 557329508 864536696 429624037 810508089 810009266 912945451 898568419 904301634 160407873 427835160 759958611 837694386 186505750 846035312 836421276 964147782 69196729 319868618 624045411 832001866 752379335 914128830 14160437 969786606 386012374 976687219 245910937 370061588 316405503 770534477 678625324 708954247 71924588 933193835 746763253 841126955 885268605 935703421 340369371 775748860 62226456 324406855 217040124 256595964 717927878 749273301 246342115 370778775 706186397 794229174 28613025 388108786 891030598 954197394 808071060 847831753 295986365 889168978 895326898 966146369 200419636 644422798 491995502 619794765 256473683 375865595 101187574 452617249 876522735 896786143 556165469 712912943 79298234 632030401 75451174 212259983 400530342 991815798 917110303 939153440 727225077 845859346 447994605 938429295 2946839 378895607 275382543 900600533 249792473 767123518 908399858 993447826 716964429 911516685 776016819 967735936 588765470 836795469 362228263 582058548 590163910 748151586 989564280 997797261 150936397 883099385 771998002 943241848 726279679 791816160 529153644 958606387 18795455 203966734 145904707 523781581 537772267 991343438 208381360 862462059 824703074 874843887 156836939 276171933 621007180 733900041 557740195 763093698 448692330 717841635 45106953 205643763 751256376 915000987 411391823 587800077 81975961 699400877 104288349 261978872 519459855 708043982 367891465 393703233 908236303 987224269 549895655 915568462 709036873 813362499 112477400 576621713 193548400 713475898 636442600 825408724 90479851 504263632 782985117 982250819 649906336 845675598 392875651 719584485 40408402 922887071 30962679 721585843 69679309 920005200 974705619 988425667 78696637 510906584 103791025 183000181 461312095 865758993 421852334 922070702 67336296 218420448 536729973 958600548 896951598 910507088 413050623 625766820 127733712 874986628 979351571 991300122 273710132 554814382 732921928 806769254 152705444 598914353 613707746 816625134 633356829 918158367 912184917 971898566 425627491 580171130 822630251 904083998 956974551 967062664 631460123 661818464 882759915 968677647 987046145 998719318 176236841 504941957 452290505 754525396 202977090 466165538 661819935 886348236 474572682 677339873 264014678 895582538 540991665 697593402 984124109 987909678 200867631 354388664 768082390 781428740 392076839 901508494 947206708 955263305 148997240 840752523 933719241 940875839 840826461 865648608 645102861 828322861 255530052 485064388 219625612 919449738 258383113 329476648 354156307 394484304 438509392 745808393 67682922 108371503 420385483 852283877 248287255 825526073 320818202 974025931 267648674 474376247 289468187 544822089 295522102 488017711 510118708 645487643 856599286 936846285 737014371 947265183 333645313 686030474 961582795 964615276 317249920 789755816 306041223 392570732 764871937 964017578 381136698 450986001 285068680 678982398 935008978 970646440 291528099 841600969 718101664 961374094 958419609 997965039 769202178 831244347 7956217 499522354 333223210 736334066 785881250 800052825 632453930 976968680 641677141 905473068 206208505 667242896 197964504 244973810 613400794 857484093 867111444 907689594 667302918 975538437 969519983 993343080 179747624 263640060 18289272 819468738 872850776 884252810 864781191 901963039 873976236 936424181 976336639 978168804 234591356 619829123 132054800 650211190 238269002 384810376 667157641 850958902 345454970 862049156 870978199 914638562 390334209 435072292 873273467 963051267 817592185 826256249 571257022 951111837 731341301 758822739 380727846 959222098 849735763 953619530 813050403 831354865 407995038 934421524 363274273 677597728 941987692 945730033 73427602 316053406 537369505 610158079 545649071 626424484 759629199 913014965 299898483 911164275 124871748 954271786 954209346 971670871 606125477 858978119 133450747 739137475 917097643 993430515 350324175 535506281 495774754 753866617 92091478 276171480 526368720 993936159 190100971 411619219 498718382 556919265 593535458 992556064 539482474 585707952 691070277 802129429 415276619 557639556 390203904 824238254 51058346 317859908 6158428 319951869 13950105 339037005 993380429 997602036 468256941 663346652 951250043 993704965 609186027 995595181 593695947 638060143 644532188 987066650 260719492 713354263 795216445 867612694 738222192 977856736 185826479 960256340 517239013 982254683 756756155 775258151 188600078 852520622 547020470 918551496 865743522 960105936 357455724 424204903 991022794 991510187 980923340 984224347 758413498 852248813 197619009 778822813 390756081 487625116 247415690 292851413 71223422 630270767 586001480 753263069 512486477 528023890 243434541 843969187 511720390 889430880 628197256 887360297 376104589 672608998 166001623 542330062 523296303 752598342 763326630 795304021 948615135 972651586 760003597 862615807 256151999 968461350 509259349 695975892 321200158 774076648 988082524 995715753 330049168 453637096 832317392 905542536 863602611 925287165 463986985 908675376 623582314 680969765 281856475 591868463 816810752 994158758 191702068 438721722 949114331 967465975 372342357 636292151 646668203 839943217 461281272 489884532 654034701 713260725 204416623 663672623 942680558 969587634 678031650 735258823 769953312 971126677 361423822 848880129 217382268 596054163 869263893 972034406 805695515 952560168 613814503 681215858 507532077 722693599 296456322 871028320 975327174 987696782 354468221 780709576 337173029 765251942 818215390 932494017 335201878 829697375 33785054 322483102 391995032 483904554 975601949 981625468 181049646 289665839 783483258 881341610 732323727 843890033 778742655 945423813 509093054 544172704 568957888 644862918 995395870 999203496 214005916 758173644 985971539 989363832 876406397 918470886 725092162 864166296 685850982 974472092 6413501 379709809 734496876 853965443 597434326 759837282 19116458 865653180 256672564 921740626 417722654 554544881 212875722 268400441 982511356 987477883 228932874 233272238 184298376 813807551 546520819 851889166 250164368 430164335 838756521 988379068 928469628 943125476 474968209 741946244 823117093 873682160 792753365 875657911 692201318 848534585 398033666 619310352 398294125 873039916 584034812 978271257 433876723 864524188 445469747 811889244 118435046 843318399 245623449 484677567 431535140 941672852 218173157 853215131 264787376 355214939 745680069 805661426 889007399 988991138 477294800 905532922 26033589 272708001 268558286 493027619 552485150 949293719 40337871 342720454 160209900 504404971 792583889 813874225 344998375 993309295 537249171 874250810 373947715 376410090 760528819 847934340 485843272 821416480 738332592 872332253 93128327 409924146 949895038 990324978 440208890 743131815 944395929 966332454 768505629 777478698 264771290 967926932 76206392 340855642 982221384 987388972 901921721 995017064 958663405 962002477 147441604 183225328 41560224 697458533 229374035 916785110 25752989 775713231 708187747 974446866 112052852 265117164 926835574 962399080 570574279 645740132 216935957 961483511 826151085 938339733 39075758 787392779 503810414 862154277 506719298 742422349 611614392 906279333 671894552 692921771 433102670 891868760 809400644 895578124 138344771 168792830 803422329 898932690 320839645 882925033 324213947 613009788 628789829 857880279 946406088 964216608 574056360 834554796 143569683 987700754 401687195 785687042 5066284 654797039 906794257 960777098 392976620 400401931 612192101 878090698 510541239 847753779 648249191 794813884 889628595 957203775 537791489 992230459 281747007 297746999 523165719 607177092 946927078 969614281 152951352 583480578 833218419 975931648 918785286 924989972 35049145 856399062 621987749 759842395 524177473 662009507 767558125 787909473 598566745 762698572 516412471 700121731 989593001 992534992 192871672 528722270 131008405 921798445 518474264 801820201 60526233 828030383 293430173 560571360 313372686 810009799 902271477 961241592 790021826 841654940 392352454 479412686 499768904 706995125 745560989 849725727 505159052 861075179 84720931 478968661 441659631 554171236 995192652 999072521 266346484 862390033 405738538 501081156 911806025 921654406 649093069 892459077 825399080 906138266 416695189 718757737 984205591 988891605 407731819 454270895 767769946 822685064 404169531 953032629 977844265 989223955 848047916 963125637 115565644 578319484 578264586 693283969 594822791 798127119 788817435 845095071 795605650 943838874 837036821 896637911 644233948 880329814 467227362 810805670 816204683 856089838 524976868 987695955 560503884 725920803 526266067 689409738 551857593 872436457 144769112 459931749 314639342 811544060 168178543 808301928 515607597 584850776 679440531 842778701 975061792 997435609 909639885 954561604 368709714 835713341 30742188 96362122 282780285 950254130 452880132 973329471 286638746 889545395 953091780 983317610 282159247 532491973 529854847 932104448 514245926 934054745 910835273 955588875 846625137 944118691 780545281 820244197 257288213 611059722 80339287 445866810 873917032 881358167 214679561 385941171 57975378 699341595 637276080 643718048 504989434 755860857 85504807 330302959 984369393 994793254 363476198 663165940 454703728 908567917 45417084 837865107 458908806 710973731 769598057 830899002 653174869 657738735 392528412 421612893 954873854 956238134 184415449 650064248 833127441 909926234 285338665 687797364 896557566 999186121 655182866 957676319 243276677 697293948 202525886 416451030 753708728 899885066 67299451 130684395 453319556 584764868 824629233 894927607 336283446 946340188 134322819 559104152 872858946 981778107 641716769 966252447 723167113 773972514 417181562 739623607 501820935 537667081 110424326 653317923 918325227 930252628 332538002 954275627 660680081 754443218 977748931 987230853 262441342 308675348 985958360 998228029 814153243 947776409 226476598 959154098 955531341 957721389 347713988 463173456 93408136 285442765 153421566 625425800 943638086 995653272 796270115 817918339 840804531 949912481 46337738 219308821 595342891 924212482 216752059 828556943 275059772 683611354 504242323 568207731 425431581 459336095 971565038 990648972 692073479 716128454 329888730 833625725 177305233 910626340 808542601 941985731 676466729 885916309 403293336 491763614 887135489 941691694 241518014 325595128 649775196 693919768 315047587 834780528 641220805 962722165 525528689 659227428 664083377 900392838 624779275 878219730 365680968 537820429 544466771 945355719 710809434 830612330 588426485 959424878 936834489 951272542 568026356 893131668 687707217 704732719 136225193 499927222 417047989 439150600 218352150 510227477 332751453 662681937 761287365 980927628 128036539 752967958 651461614 787671859 474151597 848133718 500822299 564368971 789354433 899359272 239484973 945389592 370168206 528200154 264024948 443378207 874441960 971286083 715537895 994124439 853851106 969966043 829374192 833494419 783142026 988917295 363215471 835323498 241903807 550818803 577245158 690955478 356821550 939269307 388048403 993451242 445705576 617813243 478764337 620819336 525379179 690167959 134991855 374609966 858361908 879179720 595313627 818921503 758038708 791162397 918596701 969129088 269204884 623949065 802512287 821968485 200454623 352721638 859272762 941772956 60900465 755439626 384187868 770503895 912229916 941362897 921728271 939595746 209554772 517690393 134824560 445596930 489423359 853354563 386299052 555834561 965565446 984485991 179820915 879185809 684692937 918287665 703694852 704248069 69239280 932632623 361000124 872237509 862883007 910567277 777944001 787126406 512640800 590206940 152484425 434109465 489565066 974589115 585491796 912782884 440385681 989288742 185796894 478525115 81671116 694521640 32698654 580758488 18916443 955342510 993196207 998668369 336598934 410520008 573375803 664365334 440405995 956860584 270763483 783070728 629892215 941516050 792928967 859939096 231902581 678088577 217263338 280557317 704341866 750199962 934013706 977020028 137645218 970067089 920765802 955642173 990994938 997630017 833402898 975002749 968640020 990378944 48337216 642487916 45199502 455524634 715589473 747718188 644227671 824622103 144548329 897220809 789573002 994668910 840902746 888627446 273127838 463689815 731709022 868507568 618924128 869930959 807971597 809447814 978987011 998526570 440256063 854760094 313988014 327933862 808433749 821412015 563034956 759208059 535618765 912288681 213707809 547634775 454439013 771242696 248291298 355717755 473591174 812486223 818727393 995533353 929320626 961956700 392958469 784937982 384346256 577489728 548503388 667451732 687151012 783026613 821598890 996168216 599252289 605260259 142224691 252253669 855070579 906573401 895413569 915689666 28469596 658860015 833848319 998215658 46806365 415481880 646942630 909039381 950048950 953395361 994004816 997352558 477110431 604459479 51317302 757561777 482757833 673383659 640642211 681166088 111964369 986633628 189744745 263289301 953571445 975988833 845940753 958647266 111085099 521797727 788335557 905231489 719277552 946958374 785626742 945822638 485876310 916731349 47143082 879701398 782253563 914269053 686265084 698042959 795984592 819928307 501780455 612912288 578428598 887874481 346808237 512027467 696102137 983027960 176950420 485644078 872895860 952413273 989297898 991758064 535805805 746046059 246133679 954763248 420539654 925511744 748944593 964226737 875811831 885056160 690839598 722748654 477865225 720137830 411469138 418921503 402914630 616477651 513735447 886082708 248402757 691482424 808332476 819771462 305754695 530387205 792945559 870467731 265585524 542588494 376273479 925155171 218743295 415849472 456169722 602436826 38302712 530053262 619660372 780348532 81165774 349222249 550009891 762876172 574860275 883566262 192752527 675141070 904576165 926006710 487465018 790966353 469552246 721724058 365345518 437968912 19331067 47345407 58514925 379848476 761159513 922347708 719335561 733477691 467334101 844503496 666170484 766120512 138052876 795265040 819218319 874768426 654984353 945479885 868977436 983785900 612359947 773866960 320728607 979928881 170707661 659773347 447836440 616227386 64106329 868419580 19252674 60057821 967017867 977333814 267514330 683657839 260789439 862594343 520853628 943132863 712232152 851321656 669533874 834816009 260684156 338848556 955157082 992474999 523176685 741598723 7849927 121099841 986360352 992071676 701863392 820624035 704029063 736023680 26635638 346757394 801113753 951798082 293111217 387979592 954394802 998960616 723874827 823913559 638885318 707750197 464385666 621770322 37051908 782652340 613987893 794393752 915199881 952752075 838627337 964161155 804802802 841442059 506195809 950504018 152054198 972901262 589473234 661263169 992401393 994256788 800142683 812533648 648692037 960951653 593303640 856694675 858730213 974787200 631051719 749612971 962952173 991856206 332318894 441066807 242796825 579138584 461470842 554753256 785222563 895593377 352640752 861153105 506080022 624414792 842690331 986017512 708344114 731297932 640654688 729316254 50147982 941350003 783142015 915338216 226731703 925203634 954221833 985622539 255637417 504422265 941365928 989985149 820679409 960309774 98456154 914801013 19290700 931290115 997859794 998324137 6429505 578464318 19163530 196262490 715781838 867359471 952732222 975113756 137531738 784044788 10923423 917160295 174802334 721853078 677745936 948206628 985674377 990396817 617040826 977336325 849394118 934569604 141454712 522608632 166665813 347276405 617464593 800774999 773321483 886729978 876623703 890606299 624986415 660639341 858452535 916622913 834427070 910936819 604166072 818189005 21737600 382567330 411584996 429583963 102680937 423952877 353058960 726257965 297739834 592135025 354988132 386197446 253568823 659955892 252684744 478723972 769751019 934253607 938231387 998980461 230201812 584689858 397886095 766840564 999143854 999285111 655796968 715267646 440568799 573385976 188359733 200123585 906546626 995518802 731034815 990014624 792495293 872625770 932002209 961998938 614224061 956781735 300090507 548758296 444730796 890795893 385729371 898547931 151719636 525873227 73543272 164323941 152898345 389660269 514966888 701643256 317713050 886554628 482944700 890831576 979031379 985796219 537758217 544607922 656307709 917980794 146812609 331768477 567921720 797185007 10612187 593356008 883614027 940843402 992217356 992474473 429279385 665721661 384651055 612091050 220431800 482220709 131286339 849710183 841252935 947822719 358266606 866799115 485815191 826474573 695686597 731341959 837971216 916341437 800120270 881428404 657881348 897723528 957808064 962664739 762253598 869541461 777982664 924648393 592037538 843096103 452376153 819257906 177313676 806025498 721005656 880755625 699957965 808141579 179414455 794484332 552620854 763311023 67774181 763967858 511147026 701832027 521278595 830065332 278589788 510062791 158736688 562687122 537069438 965064295 730366469 743466965 684880498 732848034 5667489 400152704 153392692 778890634 260071735 516810268 212402286 955597850 109377089 672802634 215421210 497132268 787094652 960346425 795181232 969579265 166270314 465105805 126227619 974184232 71199191 128406329 897264681 929773013 702164924 853551672 522105362 912541988 254256358 441659300 473446563 826154086 528733025 659730009 169339810 875078921 626259906 653673737 631741830 746763177 645013691 976936952 726562708 924301806 71695683 737861438 989209350 991652217 129446423 654644591 515225452 837950990 548086668 633079935 982404286 995035176 819712667 877400777 109496667 331044630 640174590 845538073 927749933 966704160 234221620 531271921 357534140 484484193 644136148 968463496 243899226 577622473 548684565 813514140 659662861 826893722 663010843 827387032 735257621 922681895 874958532 888961693 349132347 725363675 345091506 452576313 311042464 886814249 161506877 829393766 363408860 539501826 472883110 537225053 977482250 993937312 508648475 690097354 315409854 498011269 420458238 767565440 811049985 994281033 968591279 973265418 909797643 975722011 814602034 908471300 298482988 418634688 292872669 494098029 165564310 811522216 181975746 895923219 292175630 415350754 520381024 592314383 508357157 760726369 289138363 523166163 263705068 583001564 588237351 888875341 541864668 993291755 801487934 830818558 900300522 921623338 946767116 963739048 315988292 502218382 50025100 337153914 280878725 539304566 257029515 367920265 768034401 921397823 911626453 993476045 84021722 796614670 746934523 787666540 548134202 752130812 461749672 746808500 789674869 928349702 263357944 321725456 596057378 875656605 205454977 556834011 717515862 936329332 4877718 487461359 452595669 683550329 804520606 808703344 317543082 396940767 495545945 698228012 353254317 374933175 536689159 940709586 874693280 954079128 491505405 711453110 40412439 396039823 45224580 616715854 998741483 998826305 153178656 212079107 13589117 786329528 802315607 951486504 46874549 591703459 769723509 843949172 945925841 985994363 45024369 857410925 231146886 349899887 357790363 595736500 885501150 982543751 254197003 923322821 16261920 58228960 592105437 920333258 167398405 396145450 318625214 690119503 385718631 532674221 93367703 361657128 505578846 629445565 660277642 672552749 453095005 481906970 664968452 861462250 162782229 539753555 896063220 966307704 923454049 935333172 158391460 484181111 566327578 599310687 592506537 878143606 933290611 959348649 813445762 931102479 652077607 800988308 258708200 691411468 192587864 329211439 427966949 930702125 488290799 697213096 779683030 981379417 740160400 883195068 725833654 797979579 399664536 788935292 949432066 968804399 932968301 968404199 787999457 847674074 229101717 787741674 339997428 820017862 869646281 950265363 781363880 827154523 39819090 386452308 208967588 904873001 887416208 937657242 387857908 648636707 314861438 530645216 104192387 539635781 296287554 505322495 679536976 861524858 436973812 896566620 481939631 615459490 78769608 822993196 502036809 920828268 847765622 939318594 392450595 508095415 134713755 956134627 667199722 963690470 884627818 979928458 645003874 813384285 93894483 980276810 403519718 427438228 892572835 940436530 168173264 887879507 182515381 824565869 464473791 732397009 149223272 685487095 738822829 933785759 449307581 461885119 985250137 986377946 443500803 895982653 556431258 916377739 331941652 952003486 705287749 926617922 276481985 880442500 905904598 950748070 434585814 736240536 989372812 995438468 69109114 201848092 227671694 443544577 181685986 554432289 64217874 796390702 626116243 779019424 515638242 607968872 797060749 992216970 829712916 882496746 495410095 656069327 973281327 980751873 284524596 898418416 170791891 670945394 761465845 968776361 273201520 883898317 774043050 891570092 880983329 940117450 199857653 551145649 852602938 894892697 375411806 614768440 254920582 653527294 169555884 687651379 273362009 853314701 567119204 605529762 332324762 985016024 717992674 938655198 141674448 829399482 906797404 955494211 882704205 971356558 676571244 913451515 32214029 374310701 626489743 733988393 353647265 434282479 797368635 862687083 37519786 603347218 370796684 431092416 776226198 846884789 403727304 444500707 157079349 170542591 777037917 954189528 223253529 403109002 933853990 947263731 659724653 700621756 359851371 711118678 679203980 707360155 287401082 656752705 840244834 841910027 248544084 747213415 823988513 910492015 471838179 645379443 106728127 456747889 622788062 997654532 691176161 819915941 5457047 270086855 173149288 753524958 296153883 876626311 273476288 396742676 600776164 989285618 876618391 907019016 873598223 945840542 106848168 183559747 499494427 719385905 548762824 884988514 838281947 875652661 391269788 817162658 299827044 662452165 837108549 845900726 148514407 800957114 804023705 912587127 574926335 882050454 232522310 567003526 10447051 659800738 173488921 666194327 105574059 641074207 459854400 637256163 259242985 890704404 616210853 715205152 884390848 916187394 839066356 864171682 766990890 972495630 943227806 991847845 588667352 640885436 702640312 709678853 720502416 889490944 898804347 956853059 654203923 991756604 373399667 475485190 326426310 939339040 550640363 620125066 829467457 879554487 109100160 849318868 451524809 657571155 737793394 768603440 63995949 734639561 909320183 930682777 399379595 627901239 562742489 799932738 841256534 885414365 303880754 614414353 437325350 443260509 858677284 962148261 464384489 911692578 537154739 670684064 616361848 782521112 937900327 968135292 560764823 805662902 270566829 555998561 388487593 807480081 33988231 929987799 714302396 745532254 3333513 242938023 855007344 907386437 130587785 134242280 744736017 790719332 223895330 902994482 958837982 993596069 555184682 829605029 137930734 656736041 319602809 854896965 296208373 850402198 369032467 408952969 738522500 857120471 253625692 981848670 255749916 361774810 778971575 948999244 270954741 941959721 154686243 331736493 73851922 197820848 915033870 975982784 736058641 976192546 606004815 703345835 517423164 695188212 344146934 751415676 179415716 641072607 57334832 958606965 214988134 713042148 752567965 820720529 33087224 125760482 806602605 956094865 502545411 715646691 866472477 983131482 595319276 732478647 175141941 287857844 578364614 946615191 769646787 857095588 89367465 438989032 963273438 964228331 166706705 580794743 277332254 483747675 724765058 949525069 219017503 971640421 811334701 932544056 301961836 305027988 219647744 721503768 899224563 904833986 78872800 956116718 78333462 877078296 352757068 838831991 121368892 964052846 394392257 712354707 432270829 789680945 284458256 883959698 250790160 695900076 913731933 936080494 250725097 866944581 593854987 892399706 640397187 641092658 815292428 993782609 548637012 737702386 274196237 593702860 568534160 962232987 747836735 937594726 557923979 781147610 532812170 627276265 157061045 910980590 270159555 572091121 382509966 461279602 544122998 685746620 639217295 653219696 576409795 806866908 242227160 786015727 413328257 815297520 186887806 299806577 909264088 991932993 87744071 354417149 872594960 900034440 864664213 928154311 330219566 808600310 719526611 758903783 261570006 729950044 517262617 773596549 730408152 936541256 776232555 792916744 15083410 921536581 777911236 875818759 136697058 903543486 425734790 467608294 521944436 946612187 664702486 755892600 840625096 854783405 425047738 536092730 394954723 844526681 122570577 208131350 254795794 704115139 44322184 195605706 433657378 524085873 339820825 570209108 680769324 748600108 210946831 529981392 593147969 931199602 344546956 992570362 423838403 566227004 265265588 548152368 309807214 521601807 937713655 965338605 253127011 624626397 551604615 801764294 216730816 972029519 772689908 994220190 531410639 561084369 273892571 311890866 88163295 932749328 925380293 960156623 950845142 952099663 997212153 999341425 616375441 877135464 67270656 557003931 814777709 857885258 668207460 734233886 244056926 748104587 416313393 746531752 415590829 533690164 281968245 471817401 866674924 918651020 7709937 531886313 923757137 965559871 493653258 555251718 146615649 758378120 645709305 929334123 191446680 440998506 880123822 963336471 306383123 646425175 399193263 584194621 743708752 973059955 180429227 589043477 806667597 963045842 410729446 784444778 813560965 833940872 627151353 917627335 594237236 876112252 310030783 783083861 982248481 988665862 349377698 909469332 583961412 892749651 278068804 304351547 307443661 753545664 522087198 882052478 993088292 996579927 894114963 930648109 190619697 661652909 764446160 807362697 383326387 518672547 45308808 818536315 892553051 926596427 598478619 933682535 402953183 991267841 642965027 700213800 70195301 672782429 79993189 488020141 776234668 797682797 773614674 998389961 113510062 128727594 352897008 983505231 255666359 502672093 389174252 590880179 733683865 802626546 510670742 940984486 927670033 955991341 91279044 326869536 19399302 160388150 895688521 962959474 355620744 594168759 613211145 756679649 75766399 678259840 439585580 796962410 704575234 730479546 161920476 598191939 970128424 993415434 879683165 905770385 364426818 644549803 5133051 292051615 620754142 920193519 13149480 680382272 547206777 597013868 719314471 858398151 411988766 744984150 926709306 954432268 677010445 782085340 659338694 845798465 682064226 849247518 676963483 715256294 263218840 711539301 932217602 997181563 481787690 947089380 815431756 842667528 386649892 739409977 788829606 885746472 918568490 981776404 333455863 502683368 665664170 941240605 619094330 852008418 182322679 380362216 424697962 519511707 436992725 666790763 103182135 188401140 945642560 969929460 113024300 628300406 572657184 957368262 934634407 940520807 755980970 776844513 279801072 846109430 638138341 752024119 735080884 953704224 222678278 969730799 585326352 874076369 634198675 717088501 683920926 879308747 248257885 551774162 680059506 992722074 801564218 976816030 374363359 941953145 667739079 799004421 374858102 402789173 128960440 783354707 72199577 246523639 441669823 565450071 169112202 724444239 510846365 949454988 252693072 956376889 255412091 970653770 829317596 878868690 632117603 853828112 920300753 993047452 255628762 545182292 881131781 920547210 107417703 236983159 226488889 567710015 721438848 806743163 842965341 904409211 762315996 906945610 894036987 952157424 457288558 913307556 127757386 686483435 89530890 473547188 600685054 741585086 183726861 467954395 373455479 729662106 741657807 791866099 25925236 785997925 640755171 687704484 603122922 695955304 340123620 879516327 137849968 262102932 205786979 984284290 971710703 992737238 385539871 424131393 3965468 595802729 385841679 953121338 949882233 998949253 596588237 721722552 768709953 888533289 232785778 486290964 876774975 936044901 116211923 507646100 241940526 786898860 737966018 783163033 228683731 856841803 195372706 629579796 238877432 307041412 704294016 739569536 233901508 932431656 24907645 65278109 972169107 973633216 887056099 933798178 578811042 761412859 583867172 722642286 629615046 921164184 977706507 989065234 867033072 899875385 534616266 942179772 226358808 323324130 830638957 945776173 105558839 844149194 122585909 615292910 765251773 827416253 797178511 841642947 899557476 965232409 492432286 856130667 418646369 786221028 833003927 874019555 172253609 748631767 324659325 919069008 112537759 626330611 518822410 804939770 632490867 706703254 167927227 755130301 156775519 800382755 262923840 530298411 927344516 995523340 108570872 638436292 70927691 767566001 409938079 878045617 52659115 508344514 317573785 538404228 645522900 960198140 99649146 627364486 419851190 998269041 692091717 745323995 32400235 331936075 225766530 281298614 757864346 883773368 738560006 972557728 985505226 995643842 50869076 693148985 992889565 996995468 107804043 808086541 185048577 899234222 779201719 861629182 86223768 117232522 603020094 753880968 95476460 977459809 961954291 964088915 855292421 940067503 582624747 957490219 371245281 895649988 853608213 943757905 868378634 895397088 8809976 757756678 435651689 500395585 344651639 558369723 619071250 953944146 82723055 668922405 360719807 899044647 302986563 309853787 221920640 406122011 891873935 964326996 442864131 707959139 241942645 609504460 250882265 670775610 467831225 974391965 364911056 801085491 536773310 603314640 304405571 495100014 587978663 976700512 288641221 550040089 129375052 345107970 581400297 671965292 913626055 971761602 859371207 897138990 473385090 663972362 177767882 196375714 190127404 975779731 919802978 938822895 517760570 727103524 85390972 219303388 650370600 970975322 936061781 938152628 856265732 980076866 961094192 992469200 612366200 691016877 596778809 799966510 342541873 674606779 993734721 995925234 300059977 403762845 579601680 690602225 336779227 790972207 408735276 725311935 119036910 696669440 33687575 933184086 197944859 713272525 867684909 952395483 915841728 964706257 583641539 635258018 449777005 943464848 884738914 996297721 341467253 763829491 264229399 806519363 337758722 872154238 840216628 858945285 919278546 959747299 302324831 588984732 449116211 850471462 952891479 957251024 228699197 315906429 555669363 955014375 372016388 975786217 986280730 992764395 975173456 987496441 572950901 919229468 349725506 689441007 521855190 845840234 89223728 793449239 618923409 909841888 601553988 934782031 260619165 296735691 665192931 944771283 189250599 687542046 490800948 555084914 909883707 971992057 74801243 210318841 869999927 888203881 235782856 708290029 956789481 978906763 837983013 933509772 914339760 939817769 964806235 977636736 469285027 986232914 85679893 355295345 435334768 852761976 615063380 663210247 331812606 495805873 359438137 610746472 322968692 472322943 335904822 708199257 700605390 756564537 782724529 995682169 871313313 873134432 433566753 921513190 497212890 744374339 264169399 477680041 765238440 842303886 898889263 930212535 587782724 919237147 902394234 927242128 957672859 979271646 593536777 861363464 607195314 840250797 5429519 823091702 978633907 994100853 619145627 843923897 186287938 267577958 932292263 996804361 424427010 911354641 43964578 795176914 563579495 657868742 818244340 951958495 364849959 927186543 966858100 976350020 943504333 992446631 994682521 999094571 569510018 904139596 985180792 986374477 916360323 965775520 368672965 826589241 715966457 840200793 985974514 997600088 46436540 157938847 903565597 962051480 859740581 892860279 796180280 849701607 774666652 861985389 238407620 772455832 624231566 780470076 977645408 994499241 210324734 420777417 17801358 504312392 547044365 721827154 208163489 957663113 640243427 875055413 475554385 532370562 164826063 172130152 624185571 790244645 217675200 973253901 388232076 871852365 778063719 924418051 900311377 907258087 314044127 445955866 762863448 821463529 101655619 202084448 334511274 336324194 788151054 904276687 131171977 986428936 287630296 456467908 812382729 982197378 586488761 646812947 679554349 855933993 395497131 784843609 306913330 546038806 811706725 864460816 850611007 982947823 152868164 258263814 345845774 423582069 401307345 571033302 339155797 713993107 552956519 888528596 693091683 817130507 780214598 962225214 881128565 957443285 588794351 824049887 159728548 247684715 726284089 897742297 954983204 992556510 217853375 280491276 367129080 909898122 612425638 796307202 151670530 988523904 262593192 885015388 980248834 999326142 431616089 484239813 271551622 662560456 432833235 491246299 721356302 824440829 973721582 985866505 189178417 411005982 173874074 523452864 220698235 486425756 946482446 946892540 821954769 898723641 631957106 768659516 586737238 891539431 187848936 447152153 325927161 343688417 716834030 740926185 56620022 613123324 799546936 994348824 800410933 838428696 651880974 801620759 227814536 577158530 2790762 51083112 356680193 859179444 354603766 604410720 944407677 997621197 325571287 499016252 460890165 644283770 711392528 750934774 40807300 543604883 285203877 683922993 175509607 262521097 832319395 995428144 790623864 943670090 693013242 706974006 786871151 894486035 332933464 358671415 708906057 898081569 442501759 697661371 180585469 469648610 226807987 914627634 350700694 768573094 357676505 617583098 765077314 865098462 280704274 868905864 296865150 865890645 631835198 874485337 982035999 991705864 882436156 934357846 311453644 699804196 480015832 748188226 425281469 808559043 614711259 762580896 970951273 989435114 321132771 598856814 858524475 880521807 933616817 953603434 770416224 921487834 60132423 470610209 513805413 777707699 366188808 366378959 22362767 726922958 255209599 696196055 230018041 662641270 966071155 983840985 792822459 895659223 346467563 913016925 463030044 552119031 825728032 934327080 662362562 974613945 465035866 610610471 589438917 796551710 446568265 690205779 302796441 356623293 550689024 748959797 266029043 511828517 166331170 445421325 627616220 773745502 903011727 930567775 221548288 362523146 620330703 635066918 272937910 668883233 341425793 593243297 727906593 753308047 6203496 289981061 455758256 998844302 791519624 838295786 311674921 963638046 206108603 767571858 203129231 703124120 720580912 942698615 117675293 803485067 330330959 752199113 67715273 751922816 957864401 964606374 345710138 795468928 216318823 945878362 7103899 253979084 796754463 887703162 328433878 557782347 236132066 243939336 424316751 577395776 361681190 617152480 970089436 991163480 491939845 896717611 618578644 836806204 677968440 840986055 849405150 982364124 979537652 996753899 350327469 528173489 283342806 739367765 717333791 887111834 896213428 973681833 714195804 782314979 923027233 960789292 9840718 219390100 320650771 411693952 57728401 868501658 676701925 983362368 825806897 846434181 937079165 994423044 419869181 661766525 319955234 952753527 188646212 518682174 217981463 775011748 111224342 490122831 917325494 973497827 186027081 343981892 80618399 369958633 259923594 411333044 937197415 989035457 343328451 561374206 899437799 972709160 120155295 715154873 579177165 771125819 383696208 790786424 177997893 520479344 796315724 861361967 346741528 518595129 470569862 962032206 823132121 950993695 404859783 483390943 757996771 775383096 95489266 961172510 605534549 748401858 942401773 980615037 654863489 702762877 569166596 891062366 2815766 281075254 972522484 977903159 553890409 730837126 186881924 646261582 458154345 931091120 863257754 953999721 836901767 872197255 104941666 227318442 867657588 937935780 682312978 991205128 532793098 535203753 847438571 977374511 50546954 69959656 870993197 933766026 791553667 882534552 288980794 904082491 944003601 983472691 817339055 926386497 382270945 581476703 273516184 821922212 220448254 825838541 230232626 656861270 251547079 814352980 18317629 904641733 690054129 970327049 175621880 832350047 679120987 819619790 887212333 900012949 303572378 373611810 812587478 854099065 366184225 791215932 488409801 638783030 191594270 865788254 937659667 956289103 542510591 698615199 232069310 283197754 729204592 943914019 734249558 825350599 587207478 722102412 541310427 781962466 862632520 972363096 945953529 980106140 410737624 486963046 474427996 772809818 164084640 869372884 83230852 436364056 229019599 974567935 927661310 950181375 709526016 819191462 792254788 889700713 419847205 929828356 92335113 528380421 863432480 918281151 53807476 454831123 395099382 820305783 96134668 800820266 391773084 709157659 683922671 754033425 324521565 799511541 316755283 736282200 547067656 805397532 199455550 493755369 121689878 142880079 243434595 346390527 603368332 955450108 434923838 921687141 614844675 842044004 621564447 696503185 340289988 930548532 186397489 805048639 134338729 351520443 219626368 874134482 90133493 383751085 711938404 782907120 600104368 854452588 134922707 838347270 591517500 809499629 510622840 978651548 661761273 714222727 112643365 825120114 329370269 601488803 163636607 972207333 897148098 938791698 987213623 991164784 987285133 992437982 640211601 710736759 608775269 677785437 439522155 777854632 358292038 835789848 357319474 429262976 536745687 866210128 930190048 953119875 62109713 646773849 133872087 746909274 117667903 487128539 563435340 718675517 93837937 985135101 880937610 920461599 677286155 967143475 358440586 608037044 323919430 843902194 983829715 985532153 501218926 702420269 468115974 911048379 237190551 258122986 292546150 504778240 795634841 991019801 578926279 899475797 721757251 934055873 459862244 721439133 735808521 782470277 710560505 794500068 242836931 465112483 461530577 813232985 703540964 867482785 970608688 997208264 613926532 919844940 104372534 634649232 533601380 572049176 447225017 512543848 111947762 670281132 351323322 866797202 57328016 801549763 301502780 597152725 376709069 623537491 115408353 207825764 793378983 854902495 781406795 929973071 951759782 975789703 895586617 902100233 946190153 970227250 484511815 814431102 749918935 765822196 892060449 977529339 249333358 958041795 181372249 606100452 308136271 578182820 320867009 455113838 655274483 911540505 174236286 998989305 881192642 991345410 466385929 531072175 833931603 940425693 917703318 995031142 659340681 881045213 507247248 733867789 988970596 992940102 629099337 872679923 847193070 952963341 451906796 845604247 677043666 943040752 453860080 739574229 335477709 359826378 626323320 796339891 422221346 703097297 163212079 466130942 713683256 938637301 337932112 452670834 922809216 933731991 677900044 865379587 207041291 383499934 336657725 634788401 325159362 543020027 171758983 449800720 736246567 877823012 740557380 859213380 507406205 692310000 187718298 991163278 157263092 588541143 703135181 881282801 840265847 936768364 265560484 420351392 890644157 937359934 412044622 947463784 563705231 881680123 653600785 785842348 719260287 963817862 350195558 982483469 261039116 614560496 816909502 836171492 123679222 341808917 419966298 454327502 158779035 566890353 454124004 956724697 341920478 428043839 855482445 907416925 601474952 985387865 807441905 942522498 336915734 744051163 712477610 980336555 419441246 826748101 913378935 922463612 103900090 209241129 998181552 998487817 554456598 778981114 806214437 917510084 46635054 363184429 940106923 940243258 373598817 687452130 852341233 991340269 846020818 946429306 342713382 650640224 919720623 998911012 368077621 435752515 777167694 908995966 960816087 982403854 745813368 890077483 579776222 879596019 201966150 635903817 340396339 641502100 835553014 895977439 701485575 759867985 436308023 685281915 870347257 944777663 325625973 550671599 418296100 772139021 507282219 557317601 330511990 953166414 510841835 793244547 517417327 557489593 744976708 947862705 439542579 541383184 981739851 994585260 64647616 888207799 868147737 916539153 993725226 998200922 91037272 314999183 62822747 979842245 550025723 658441109 70721677 746067232 622945886 663432035 174084672 257110382 684558404 788197950 334073033 623325324 695984917 985503017 888095216 933515280 349686602 659886225 828529799 872442323 312361880 333004901 123454360 206124958 106123418 624996826 14394452 75952129 247492348 547948589 768457904 812064111 413791194 532921754 589802907 776237053 706240687 880967518 910293639 950535413 920974207 991822225 587332769 818346170 883157706 961916856 713820782 921475681 833396953 838147380 237443076 596847141 161473316 754800538 433108787 502303836 836283397 892608252 986315010 994517355 382280233 614894599 582248332 790445959 357956434 951153073 740631423 971210031 844639702 962773151 502124659 618522056 970455459 992530806 682774995 840332438 531683522 589872619 269763157 633358571 477618453 550861658 20763909 322318095 843082269 926156745 65673261 363269927 536891260 814641085 851339534 957529118 956984413 967819602 382268421 817862905 429794865 524090136 282475295 881257280 840864881 924647356 938296211 979216731 137713441 699543785 359651634 718704761 375692473 947331504 887690943 976740198 491320679 709189037 25151946 50231890 420192186 780230638 299255151 659450975 667984773 933733275 407601636 613269328 665790245 895665495 294084619 934570643 572402034 737598285 559723522 894984464 834973003 969609050 328859560 446501018 150501525 576738518 266943417 464132780 161660333 887921381 234738540 463648871 42255807 546213136 303866689 355334464 995326630 998208797 141697598 687974051 178106499 741848365 783256368 814477650 141135179 758319985 352195335 745092959 541266566 753394664 432668535 457989958 513713987 688082839 539819033 667341971 110974538 663942966 414335477 844862808 199159668 578188984 423426429 658163285 238928344 726135709 637828635 811513341 2575190 424500218 4351926 528994204 186255504 627606583 366655902 456235109 900108868 942601566 290025462 979887726 115769198 598717417 961023086 981716726 758088405 828852438 278634220 283058107 603889697 997902203 846833843 908880863 555415479 698846349 22605086 142353863 399485071 894218933 6696700 104457097 167509029 926822836 271040664 707687092 407254060 936663183 771435106 881144395 418952674 703464431 663019293 838269095 388774550 420643437 530601631 842639599 438635390 933592824 563086078 922853173 608834332 809384471 57012446 703872137 457795893 766511805 604364644 797649423 342074436 536322719 889390194 907281960 694295408 845192491 419681428 540717167 93325419 551885198 285190741 333865365 444946525 556121396 474710431 649413829 356488270 507638523 424081323 961896414 965613366 984249888 905139214 926214622 790604991 991832519 188748659 697851972 955467561 978990918 272597332 434208742 932247676 943436665 10912217 830056847 488454582 508618439 228562755 811612832 640531470 991623709 200042906 868498271 534108578 831703362 854683951 978375087 217698416 414002012 547294330 643871813 191197590 552892790 859686496 985295848 934546098 962732501 336394599 729498181 839391397 971276210 544837991 635913814 494953128 600623324 361034294 722661172 880305095 910843260 276246137 388531136 791884559 929502804 407859364 579734859 184035054 434674781 750300061 796851308 716665885 755813055 692943160 901335284 426910054 831364969 974875678 986479763 167177301 712091264 72234133 932727650 95267415 691999929 465346507 712237840 346341372 854340299 312269422 840416380 336451937 400233444 994424034 997419765 487323287 942924240 358024549 722372211 838692563 990227728 481694072 768263446 699408172 934984979 588420353 809480817 880946574 937056209 292213728 922057887 839409546 851669664 361363352 590122594 96132551 364009024 148865622 796761492 591303189 718075652 778048414 882340248 588752081 807794837 502837060 805708413 662369415 677968003 552590485 793921032 673629566 729264714 540450461 890130161 39175825 648998844 177121254 195617573 862459197 882407882 859014592 866648878 304839998 311891317 609401040 680211374 491953957 942320227 206545414 315890275 58333067 240191060 961922880 966395706 631955408 639954397 386297245 414992608 588062400 891550865 741733594 852390486 901461376 915982038 471499641 473826068 619145770 669488472 450241169 817318473 806986274 976393010 49594328 765967894 897486205 994297445 44569612 766052819 308279854 862133745 511865141 539477812 386322573 492990015 665297620 688326537 193450870 929880652 758434344 832495103 56720471 481193778 609437161 964004446 264738522 822894682 536827772 582359901 958167897 989474912 544156321 960303660 980652441 984383894 640300180 979136641 566341914 905088178 374205085 587747998 873423373 973160930 35754100 807724438 493444193 497080189 897222152 993116898 914571950 948297248 791346081 910949298 738215029 751534962 302843229 411711721 404462455 623103483 501490367 941494232 133608505 355638230 184289258 385401349 572942289 967144197 460021799 981934022 148337235 390060310 784048332 909246363 809055048 866273418 77474633 673036334 175061669 644982385 965918186 968389726 566320435 579803595 11827304 796946459 781843444 817466841 133003925 335700956 753349160 881134515 434579210 897939073 653529364 954695021 276162897 579662812 78627162 542358389 73492534 858140393 945278028 969273177 849759826 884815376 77881432 193464986 674034427 693237207 451824894 482673266 662643279 845688178 241221446 897616672 739024942 923477003 948188397 965722792 136519574 587281131 480245304 591512314 524416084 765123617 637274893 958926840 124338779 190730788 299818342 752603349 789236861 804055203 793276685 936954790 174169940 446279569 923062739 970241557 986016378 994194013 731575800 774575235 657639594 769696258 588126527 957046675 848409803 870874198 150963504 169299422 545052419 986018833 991913369 999167775 886926517 963303924 174299827 185465705 132067353 546777636 966764266 996311012 237317326 807279039 970672026 996599723 73544021 533838769 654566293 848997475 244694591 365736626 490897071 896252042 167295403 711596541 607365862 897289208 606413233 814762673 316141555 751229203 365275921 400422610 323158527 360157975 794122437 855718538 544606229 952612282 459891302 580375080 841808853 887984613 318436462 488834821 351610120 964132453 468236555 725292972 541075797 559850604 396348068 609760521 39585344 407949469 197300778 855886479 551458877 961223874 634389783 851683950 601724629 920049961 95867432 288877545 139972018 973038805 112855736 318683774 907895270 949872273 436456482 569586907 385792021 934716614 431373453 843000498 993703520 997871573 327930862 956090597 61297497 188350973 131759911 592797447 299221870 587036042 720979245 875136405 736906176 875700381 214650515 329813742 627165705 963882467 798954742 951375074 145560332 719680216 247025636 259102338 756119958 947966002 989384991 997516424 602648587 837653311 113869639 481937475 661039073 713146707 605846545 889439285 76579127 612063898 467938826 875138843 143648589 192990873 537553987 621975080 712228336 782661975 701818429 967390565 586246839 747226877 101640639 354156615 107718670 116878297 441922538 587826493 32773896 965206435 465108615 827495504 573019530 767264699 957856839 993194685 100169838 136460281 798541017 968221896 499930983 510762534 186689155 467687925 258786950 831468061 696595063 913484987 262334892 715754224 15061306 31157196 706712579 731740912 636666556 792885544 890395053 940603946 224719166 346158609 899570219 984602910 721635285 735949978 686582733 902094265 100079206 795607491 337232692 709929504 360513785 938987235 23395145 801347504 106067598 551424586 424802000 433965258 575235125 983290661 391086342 844583442 821999523 983661712 896175750 967277522 915210651 996552229 103537833 681484234 604807113 838401850 486349003 709623940 991784913 997063629 212371634 718808965 544187239 567041923 881102954 998782137 496092594 642436098 112523815 746682425 463632607 592346148 784737505 997329180 656626807 946418636 510865200 707292905 418967305 992773329 578667511 724003762 672829764 758680064 142398910 545697949 353373549 419458221 728920304 810333350 139853220 485612955 432095593 854533111 971575029 985186104 683939192 789389961 102297332 427842517 235977162 558252748 738246479 779829547 485341493 831967614 344456346 957816687 407305427 738027185 329076463 589313719 772000646 774355477 854080319 974475792 725925395 906231483 734709789 939341892 113513724 339978307 708523963 932944108 689583255 844246077 431675968 794884160 206184609 990311110 469909917 619621334 207108653 700880243 186366983 722859500 298480755 854372028 19460553 447466677 213120778 871992589 200424659 513250303 355336217 712066581 624411238 695816435 513031324 832889158 110483856 440441977 306998685 534258801 587548488 915418272 377989928 824371839 621061472 956759748 461737459 594581768 138956077 438239623 518027702 519900685 911259434 914410763 179094209 919876807 719301089 753742267 853418981 961021912 418460143 499595507 927827812 947839841 645065296 762261949 740654227 816808772 840065694 877807985 86491457 764376640 257268168 433292149 753848013 904381561 891689480 904975715 855686011 975001742 378802523 687528952 375856705 473070652 249405296 377658364 219204958 478163778 665405699 876313722 509493046 962422988 624249021 955326279 131868978 811983205 476022154 976009617 245732973 742222684 653993421 678333235 724803958 872593380 856292082 868736322 278789803 378592808 325391545 950003591 87681379 113984443 440697433 926982727 235684695 566888905 225179484 875043917 59466176 932196507 838255428 957775439 80472280 755685475 949840610 987363614 607130328 720182646 473120959 762367383 636624406 962524825 829700017 861512194 926453541 963852022 553931400 617039548 795599590 916131730 390049526 617046731 815908296 891083073 768683406 982164141 493152899 500101273 833146826 948676181 138140894 420960008 140371127 351760048 146274840 385131914 644082981 822673938 970642815 979083964 156463588 262802118 800785851 828426521 738774217 790097203 539132380 876318461 133083112 500241521 687593687 932158409 135142 694097575 727464680 901059398 107898710 769845537 174412701 720145073 207218440 813602483 604213057 645908424 990831922 993796270 587437573 980235569 141203918 499702334 843040106 907975426 843785734 981947527 148816487 785357054 724132026 948725277 145143610 321349688 789331368 905345025 882821409 991130143 17563760 20958334 472921278 659883867 330555847 619289685 675865783 798449366 334893206 661540922 69092875 897130834 938492858 998629329 220292323 630783876 514196576 896261107 784710364 859693301 556502109 606775250 100089603 343906789 725343362 817420040 780867602 985376457 508766015 907652430 169764031 889599009 761012649 909903956 68955393 172806300 594487709 819605578 933421371 997158730 959177517 999372068 715426478 984262096 768607438 898634569 740305801 929230522 615342123 805326153 666862399 731851419 389043536 658835714 540345353 903376258 89201469 802373912 515315449 752922519 254781049 840963948 872805350 982284263 166064433 604144800 459884385 781674137 282963393 954345809 950040056 979051028 168721284 388449978 745451970 852113734 17957275 861612728 343049073 372252764 46663995 909991899 731709032 973059409 622226537 780468619 275466125 340798314 103005097 373176597 143681248 701852486 719289037 859505013 754049226 970406414 87302982 476300859 633069317 633152959 545818106 989370832 197044187 290575436 968140201 994681894 83713525 708373371 205855791 397278858 377783669 934987040 201871006 519849702 728450847 805443116 325294274 928669564 259148107 294935138 604542375 998980035 349330055 642830703 325312672 816848379 470220787 629467440 18791748 474272161 396355420 640972253 665914765 997115338 380945955 644825895 380884962 468280284 480174960 686663869 69271850 967969251 223095818 265636980 882838157 994929526 591367480 739610215 602364051 855773886 546624236 674143186 487788609 734342489 208050640 978939119 666146838 825893337 569172994 573018251 257897217 542765006 486285762 874839459 818731303 838035611 959138304 969358858 120431049 347257955 90253105 681211769 63608255 880658470 484308988 528323586 908205107 962708773 845858740 949992561 438732609 705257890 696625997 951522954 17858402 393315203 233968155 603621879 872115882 918284066 394955346 914004670 576870859 973126342 657043084 898579205 785422054 959547915 125289384 158104230 37942885 921960868 82361020 395068578 450280994 590751994 135184060 702653190 188706186 467916796 275707077 915879006 745667581 761765857 463189065 645302071 470939374 620747663 444745427 483413403 382021525 606776838 795831811 838502291 784916356 857036311 374009240 881758166 983647606 988412758 793633822 813423314 962875231 968663520 465241521 519775522 524318333 748540700 171065978 876204480 277372558 396074475 552746471 612321756 996100964 997597083 616730232 748041169 223731080 794589267 47503314 195845148 569878417 794866667 893449914 981679297 684880013 838441487 232411700 980143333 416357163 948928965 717146023 980985783 354953165 879616855 130560169 887800393 783365730 880727802 93890374 712470312 990506864 991842152 637857046 641522508 863560759 912521518 652853853 915636557 66253721 93611940 234743922 741239740 839987002 852456157 118325795 429680665 458334175 850334734 896714749 983628195 338996181 576174028 280124128 794208893 873536999 898254676 909736829 954039622 831790990 960426458 135961109 817339025 854517632 988054613 74130010 838896969 255616358 857236106 538933746 757568938 360478239 640947868 748086159 852833521 384748710 390580083 306905995 684583249 443957031 845945411 226898455 911310818 233513744 320451562 835412213 869389403 371956662 498079510 159526728 906410185 691895856 696421768 339530990 505761686 386681238 842938175 171790500 245130973 576273445 700778048 291016391 409688542 39951708 963226582 614067349 719826944 445596884 455522719 587605676 976996845 453397268 763861462 881431020 899825024 997675595 998096813 35887140 102851474 440100694 914879943 734302509 792540479 188357721 476073919 147103675 533279115 339477257 854026472 218098890 512328881 213444678 754765133 826654115 973756811 355908510 777882540 220141964 264632764 5692357 149589041 425403867 617501806 725558992 898503450 242302202 793873222 516888041 817117429 670003334 952986222 634055068 844916983 170060893 513016698 906670715 942692852 832736351 882109731 670184566 986988508 364693893 955413071 417521562 623053242 814757373 936758117 757108618 801026490 104662148 240095176 668721371 847567026 727506384 969311649 582732386 992422138 6804769 141919017 699939731 979724448 119443437 645177336 128707774 686638270 327899237 997023626 432700433 477723178 29689789 789657654 357516070 670479195 831865820 951064554 845016489 976236468 377689265 533109353 414298925 849300857 85698030 352675961 468053569 805814924 950615303 983256981 771568000 889181456 259316157 959708914 752303764 993320941 108494811 977264522 800014858 888690200 304073664 410346666 191010367 506796939 67643242 734035030 608612657 630788811 196760475 684404031 208455543 317624166 584810300 988255797 963687558 994767223 948323778 988284776 952674596 983183183 403732457 636988738 8174857 318801933 663911504 789422759 466278562 943735714 957867023 980022256 555845329 979160296 1420092 198319975 304601349 393681317 935829505 956978765 984286996 996561075 16912249 629281008 187636208 286185482 985697908 987775040 147352834 159539155 856694193 987285294 733855841 846159679 539763278 850606533 509787754 913335912 925193961 950852520 692530665 882416433 364234845 384590659 611036925 671643124 439327412 774067830 824424776 897133029 795821716 981174611 861291522 991117810 422592858 660874142 492337308 846280267 669961839 696031749 5412536 568454421 480550277 583522040 228546000 800539779 602139007 708892577 50468238 163452598 316289659 712431910 354247196 677134787 851336213 852352721 985213216 997995659 693044151 941983589 79950438 865880307 839491511 943782606 680698274 938383712 276954913 594975283 670939169 961746485 590124557 823053753 302114697 367722194 847732867 855110622 876382528 945502539 859174637 972927630 682988087 895759973 241081230 600311553 81653103 82852849 742656782 895410626 795859283 805311380 113998654 707053562 20853002 428315395 197099550 434424877 987337373 991685325 124588316 800225023 845955521 868671712 276739368 737104379 644961102 965683891 813496061 823017878 864840356 953537644 227766899 650034584 988919321 999374597 532010596 658868922 764485179 885794696 312052091 632590553 538708261 608973999 369883093 614592710 375380011 820179069 175300839 615126852 257066199 936016649 927890473 970720609 281337647 523596135 102824195 911301755 785720771 985372816 514667721 921890338 856515523 965616059 644001344 999137964 461357314 680941289 425056944 935464971 163295521 609068145 604020943 988653372 744990924 971083002 543831673 975121747 223794726 792031875 98558517 528788239 724750657 922970622 490497497 749043985 756554360 934011252 2843712 753527289 457410564 655480413 496336658 955056531 7697295 400047283 21690798 489643876 141200268 376230755 674545727 765664741 344840541 349060344 288053635 473706467 390119586 423691713 764482593 896712464 441224176 566441180 997837790 998778099 750500525 988207403 539627882 983408072 692420564 812434927 164315202 958454400 29041875 996075528 111061436 927184298 55106416 766661131 103247238 509775464 328158652 771904276 583554698 794304802 933688717 983176485 918117710 963907091 917320974 951702654 460216487 538490880 652726011 983647872 372419937 464680748 940703036 983383102 601074119 906211324 87244441 736613666 513683684 808328593 568772779 845828243 286414902 527428757 257630839 519736427 796891110 920357113 143529888 875322103 649114761 767441231 664641358 797675597 689804765 707602240 570625478 891476709 981159448 994304816 901600591 918124714 295190403 869964431 881913954 892061644 190410132 928845132 356603148 655512120 301582623 918031770 904943810 972800748 83821468 431726086 361646319 519090324 292788424 894730069 679316628 827714894 816727724 939070537 29700814 695188831 150501051 233133869 614481333 692045636 982876083 993511854 833880708 931224827 360168264 441448594 888991781 935339926 112920154 994771015 742598964 786189522 124547640 906040122 754132156 760961424 462685079 785838124 581301961 849142599 707562213 741046620 98342520 173840315 163253955 767473621 783846340 970471433 643103148 830818950 976585348 984369825 607790604 917674800 227856885 627889779 81291157 618823428 586152079 589904375 953420212 966571702 314817544 909152033 386447333 984548455 603270576 980935913 949512543 953609620 751588933 763601426 41003481 641973459 384341097 598912117 660527089 850574008 447671246 907611923 674437621 945630057 60842124 427942771 266239763 475339311 404501171 806712376 401880514 730256341 859583647 870869030 555693753 615581183 488008722 534897552 77451879 618101748 908094762 927144180 2919498 447373709 252873642 566715382 745901817 877737771 390631671 634004083 330164973 983131998 473209418 692150447 721880652 735566072 807686808 847032085 588374205 686568988 291857147 702386108 628261913 716519510 911048915 998464785 601941637 855932028 898894719 915318724 241678849 301988561 485199874 532770845 224632326 316770116 363295002 598398024 257726800 783118506 350261166 578703564 605092429 963189763 950256580 954410403 681817092 917007101 58127091 905732122 648784616 841391306 551753611 671334043 363481639 543804098 285506098 378888122 184308052 268085572 620344471 732581465 186813955 977275850 59784418 695522301 470948220 485681430 268441384 981685248 865662887 995516412 684000849 994291054 199192005 485515097 460258129 875316214 922778589 964789772 922725784 973842689 161921500 469929929 739015071 863296019 553583702 950320625 186842567 716647700 320123664 948496624 31134775 165184211 289681694 766666584 403709243 625988189 829701757 909483981 530723585 899340033 566002833 962347697 600677017 735158218 661579248 806188494 974095730 995655175 842734636 933127995 418748452 585197181 538981075 815229569 439424880 852416255 924313289 948887299 253252977 844154019 73598514 309711300 380695106 786855554 725611298 955207112 823167895 889128749 216012969 320099081 194107103 640857490 22005770 655932774 924289359 938404660 188391589 313241167 756043513 857406169 251978596 418086241 235172366 995642782 636779390 666851537 577423471 791497994 254179605 395914100 651474973 762240450 138195762 616229073 644603458 720885484 131912977 175349680 437366108 878470070 260049378 975826624 756371449 886030542 75207944 503299289 473749759 785463361 763147621 939402911 206325462 638064482 725200341 779305715 655513912 936989471 145064077 445326017 87177300 101904849 484066967 769857166 333472215 915052352 672650460 763463602 136322369 390575747 833641524 896485206 779185702 829008500 750836565 944471070 952533489 999322542 238953849 427967669 630880887 943511447 804938288 854856324 740390639 781207300 820083429 859975997 309625815 532760782 587849509 665456824 365850064 387467995 163156205 209021204 414758569 877685567 145965633 598194985 293029343 395477597 974664522 995770777 713408013 751312707 940578191 963141118 13591602 113151430 727786205 734920249 785917296 798211292 607365255 740565916 887071724 897070224 398462416 850465357 329979103 772224644 542229917 878336885 713164664 732787775 231330880 265878394 401280243 534746380 450858855 739210247 394281823 848903758 445937564 830823599 588868288 840488830 437777737 601043283 144893120 978125573 321014380 815559790 790584834 858126713 394895196 785006102 355877987 821440424 561763765 864162900 191022568 264514428 793179784 809578359 19355470 703213287 760344278 860848344 620016889 879174264 250317399 410596623 948135339 998899097 607322454 837377554 106507245 790809562 290383992 886773206 181815506 696024078 636753634 640106448 957550758 981136659 267724028 929169682 326721103 836760732 655827595 827785632 464014023 977757242 223178236 289153625 610633616 726761572 829549569 904128053 39927274 639024339 619112619 907217565 269900926 977746192 954924973 960487857 517187670 554094192 325948351 447845534 583434185 790901020 554729820 586972531 76618413 938290009 113265929 434960580 186880748 579937329 36854435 726055741 387897878 953133923 778416432 887391650 242865982 839770165 781407135 900470396 107076068 990204119 889630238 901941742 488393860 843278195 352849335 467362860 207900903 542535096 583488254 876045221 217164621 742722438 256424348 913998183 313311877 950547690 89624322 412237236 971637341 974633407 183827852 782087952 219830316 686390928 548005659 840113804 369660804 953147310 929403695 943419115 746298386 755059368 592326456 821309782 486000404 896633046 537719223 950572569 354668316 400718271 651602256 835726370 486833295 696918389 78646044 686447635 80494515 386327060 72361749 641059575 863641184 877315273 178591895 287774501 719668571 854090370 445533281 587814831 64590393 272543495 393565558 634199534 319296465 947582864 327597704 622992961 532048888 628381103 5221836 74556272 197053831 904399174 779421517 836872249 778914259 825918747 725258410 996596611 749855258 971406639 467656057 611647683 519818972 625293909 601149727 985604071 502082022 710194738 516948458 662950047 481539944 964560294 435624662 773768471 663446955 976199067 960014546 964885816 553476169 736750047 512241162 594023395 232564821 284189414 479372958 599529389 499270262 916877130 157699420 806781033 332526024 509450622 625272104 967983685 604336316 692082470 721452059 773355236 879037357 940344568 918158610 933008448 988398112 988597381 651341002 943619924 276869271 505582583 180190007 616696483 8487035 906571800 413724163 804204794 265801705 920711144 51848607 721804732 285166275 880710777 61190159 494075390 545891106 711457430 16035144 878688835 933088697 958499630 289870804 529764044 646107282 995262082 327383 746418137 592583328 907594109 458729659 471040998 855329077 927828347 797778119 833714606 503781307 589436097 213125130 603383236 303992583 598882147 872164626 878371357 990713481 993236259 788462292 847334648 206059799 525956151 320933537 756918871 487543970 827697237 933751536 958586367 930811045 933999575 763844822 818674895 526876356 776503857 137055533 966713019 190855050 596276244 261415488 446884322 15078971 580189048 988324388 998321097 378940636 969885510 135231625 230558681 300064796 442723409 529159955 908367572 161747682 809799786 624281293 640735462 618212296 663764483 870914834 930063290 944425853 969680971 172430485 300647805 300064951 366684030 661564988 945398812 150904647 938696593 591369226 867895276 740069315 809753235 153562787 338750777 228834183 389017548 439312863 625728778 862893019 946177387 801907761 924084866 68998872 428752131 109999787 166250638 371022989 945084840 288957734 773854859 87488228 474817530 434537210 927757408 893960220 894074020 59556011 240081388 698294142 781872567 439076113 786570085 498122703 948130258 146310621 859548835 786791881 968951859 475114288 805685321 23527359 818674628 578364750 944311115 839789485 912018583 558102348 946229199 309230394 746253658 89611751 195040392 125451976 702773364 394056592 886053411 598143304 745225051 433662805 478276932 543956961 599386122 687766163 931019069 619241300 855699821 430923743 799214944 984013831 991932986 697911357 706408360 469589944 983848084 699339405 964137348 933282980 981156136 698409930 749437229 432943185 983216007 953895840 969310379 287039913 428242091 510383280 523735995 503437503 861416104 444111104 813918638 376748360 452979159 193440854 410341345 118542546 916890845 630089500 921816506 974590478 989313162 651454348 854141763 74452257 248306993 739234982 921367515 955375174 985468133 372057839 841206675 758814353 954533576 138803277 258893260 831435600 994940666 679861710 806437734 363823067 679707796 563174544 599697937 294854991 583116595 743193505 769657197 819704066 827134305 753646806 833210599 695988761 985955245 33648707 100534577 289066985 944160862 116496313 131769116 31901827 839407912 274901188 368976521 262905277 996067871 862361719 976760109 846828654 883766250 356100272 728420914 508827745 950855133 738449372 914578956 821867854 895990291 145418024 270288235 623084133 674364877 875652493 950920335 766427412 879834531 261162048 991138668 260227536 294124204 344417090 584424589 786470178 792302139 901172027 973699979 226123930 978749437 381396554 995097495 843501648 846299780 5073943 468193907 446075523 960602438 958840836 984709834 796200204 862138052 188370978 842373849 927293273 934578057 947347251 952612525 329801687 994938387 196225976 832690150 95512380 756192346 872905556 929508125 789946414 803118635 673922001 892809217 161076690 527145690 17024339 248415170 374248726 812994296 133589540 387022820 848367977 862336263 899428036 907241757 202075013 336783416 178234730 469943216 230486528 935961701 177668488 720315107 849577141 981388092 703046808 775947098 210436847 317887214 427902762 920727075 526374458 693291099 119197270 927275557 975785868 976303444 490160573 678096522 367649052 378812172 795275504 853804435 720096698 843764514 255587147 872192757 320665001 462171682 740659571 937649600 322026035 496202055 2542421 75888910 448237400 611792491 327232322 491978874 204345246 591152645 105198457 335801245 931882724 935415409 508086076 807189610 722950426 880004713 227561683 586871559 756519627 789850208 728637759 923844177 351758873 973403006 739549533 746876236 606273521 649577739 399418417 877525052 729202198 731250081 69157529 758142945 804420892 903874580 852433294 886381714 358503770 857977984 418244008 450717617 760131894 992155296 645448090 694365599 423470146 534829648 796419934 990333438 495064140 553351865 807124691 875352270 78382337 888461499 486022565 996235414 826651650 883431730 563021579 758808916 379496615 516471412 501982067 865707858 264168019 941452844 835661796 858907728 505917306 860659039 346356399 349146159 375276398 492012308 305468544 543819578 889008250 921431027 821309410 872737478 318967240 931245734 367585167 399672475 576175680 998915862 424052026 815791800 925793447 929415625 185300427 243280575 118848541 992534681 755529691 929973800 920647111 944401600 780786899 974356607 243839342 854213747 247917822 248700988 244552389 443669089 459534081 535959576 721393083 843359499 603282721 901061032 734771789 983730462 797472572 980028516 928206181 965768739 6636528 647833115 363297673 405328957 213158014 816773250 647564583 994660701 32597517 546803622 83184892 413937648 144829295 556997564 580098775 655180960 827505072 952048852 993429387 997671146 318916419 595241975 795591970 908161997 271034524 408212140 780900403 901365172 357724584 801837422 767716772 938009850 9954936 432225004 2060002 374462732 967511593 984113208 830926461 974160012 420246913 778206707 262329306 921569317 586935689 853239011 475255976 936573661 40820457 492769556 744136008 794241325 306862596 444775673 385609669 832806765 854183487 879430607 983499215 996284234 371421483 659622965 797907738 890381846 844031809 879223679 128894156 372297569 726396777 953895555 984590089 994869305 506555256 667311763 898859617 975402021 272511615 356517261 641899201 897520613 594051178 765987824 631329264 995945977 363324043 385959208 922002477 941266314 666762556 847351903 973220241 993840397 693429107 945725944 681455851 763845274 737865382 834182261 809405768 833872348 840073837 944887788 816320255 856204246 171203220 849373615 878572288 892665508 427286048 444723922 247579392 395074108 597070124 733440121 917903970 958593861 489903015 786325204 284317298 659589988 404722965 616427832 873339644 973272765 505319719 727805311 89885488 123772631 793910912 940780053 908823778 960703748 297766906 793141168 987885484 991111205 357671081 994052187 767290139 835141138 195346510 405019358 848722507 954535490 888976346 920663649 892127970 946906810 120008603 325983923 914702167 962591835 596341442 874621085 784803280 849193562 493788608 824104785 564910766 886097534 389966819 420546184 85825050 500568021 657494664 962406450 270384866 648482747 489317331 603486285 436078515 658110602 280298377 553660244 522239163 846065217 73349851 95031133 249293234 841055471 624427940 701510818 287989736 772720633 80482983 281135611 195234163 579446425 627092844 960287805 736812641 796978799 420950430 608826467 56112505 152513631 141664572 778401999 33632280 460273031 942431356 956147433 375454778 995881002 171921403 660219512 36470749 814098635 924732940 938089589 939013282 957582023 426661561 838651417 447410830 808045468 851579418 908666181 554992333 730158851 564447299 705750167 979420944 990391698 76801197 359413362 330028726 770346835 719585273 904359712 505532698 822022776 250499621 485086948 840410723 840900774 489421142 716645100 37135942 253584775 292486533 854715216 825924534 964228617 233152906 954900157 890993215 987675372 137935906 278388807 949871406 994525569 793311709 815250301 880745988 915035468 511558220 749319617 756296613 953702233 539213861 676123656 328064508 498172928 209435939 724559697 574281142 830506026 696663810 992225525 362371317 381065699 296040422 473533216 202849206 737992543 965628671 991863865 828905170 988470619 190834641 314175115 141999119 405476150 309664401 335906774 495198757 711109431 448631062 644933086 569391657 997823364 465341353 467993427 587283156 858252776 393276401 587177607 587340285 804022391 195137373 929457603 403091031 634727345 145865324 653394691 223193456 581284766 510282114 848097640 620854188 719724063 75107398 445981058 945086662 991114759 713655390 768722862 320274953 713429902 407726873 635566263 814464431 987736975 295828905 334968399 990058449 996078616 287539185 632159962 173325149 277847140 844791933 903049636 418523173 500851373 757746038 937542070 947475604 990609189 495708440 729536582 541783939 764382105 300358400 761683137 145361735 217689136 882939058 887456012 428464984 861741231 781690352 883969726 271843947 877923686 431161939 456186521 155926278 554893763 451749566 576656824 421950487 895591139 881148311 916134197 383348693 691903741 272528929 786228158 519700635 620307989 367621822 955183751 633472033 870849908 776954672 923434812 822796245 919614777 201390614 711087035 985428105 991277231 477915488 563524337 443142801 495885684 509375412 912934062 346370484 553374218 731640096 922523264 531904418 542198313 773796742 860310030 626834072 990360523 165266288 628688892 680921910 827635836 175176202 272591512 261205936 592661730 444991767 819384886 815592666 903073730 109276391 668861202 750425040 815778769 385352108 578116618 132171281 454938598 793863103 941361144 757837942 911599938 94878148 439933554 364645147 581437461 326376435 374617533 390107449 723092815 838794621 953812845 447169230 570984087 913856035 938281973 58250609 584017651 398268475 402059574 114533162 285105420 219221056 256233808 703507151 851275141 210179197 336367539 319218615 646517146 361581984 980583890 493667779 757127120 241453099 750167422 915047662 947892460 481027469 975035535 185699637 690977408 419249235 650580765 505443950 701273414 28035267 778853888 59038821 603379478 480721112 789049809 736810776 991708275 887452315 962848892 723295107 891848701 744753049 843349999 618160213 783222463 644397971 689579555 460816363 620138270 226404825 945588801 224142663 443987639 578341093 846900989 316342541 348156823 107120656 925471646 344616198 985173027 240278107 773694488 718756082 739954257 310305153 743071223 128067473 224883186 549352542 885232534 910042091 989867033 470766440 552575407 55136999 870857180 346174663 872064424 534554469 834871903 107514699 107539642 698181355 898477371 29488430 586629665 938795693 962445722 337624878 384899425 523341017 577429877 913740899 939744478 687197301 916307419 76497335 594922056 610746897 729817157 74295536 875050477 764271502 901829497 992509523 993732943 485678728 529226381 71843750 862735550 932914198 949290759 598655544 893339336 460868030 466020867 82499679 128716428 147443782 517400727 116467140 949966236 561288676 710787383 67792730 229702520 913797844 932618560 897573473 906984191 54617432 126004374 220894370 628909098 363816003 768541866 879393831 911304760 698164784 789389467 436967215 920478578 867108809 921513623 987763015 993253360 790201750 905977614 203538866 613714121 610588620 998937264 396599712 474398666 934345066 949214057 400570938 839680164 651208858 675059968 250791753 692850091 899142761 977690830 887578774 988651832 166470905 998190813 778106874 981341899 101004334 520703339 969718929 988475890 661364032 956666748 419678341 558107592 798062609 799318275 609386882 790211327 464607746 731290786 251321905 852335751 648243459 948815174 495489155 656112485 758331999 937693269 19358892 700262045 949827879 986132202 461376397 461577556 582548780 637524819 95954357 976451532 242197898 950221134 549055113 572516808 295988195 458521183 12638928 354064132 627427 847569857 616834614 627329750 633015239 677674978 844209824 905685535 958395133 979446544 595991308 861630943 919798158 976464552 107475428 851791304 746199618 935929092 488696913 909351296 349789501 956158561 395880802 607163051 970149334 996012027 612405553 676577262 234096265 831032636 535637822 830864013 261068487 921404927 563256148 896485153 499934303 511484106 650174314 824542928 768809365 944321860 854593472 950512595 742623415 915825402 237014169 514739749 170359920 195913362 740317878 757931892 151454931 866327634 807326432 896451283 749351438 855875397 290373743 878100215 137363720 684412477 99546647 635130379 759315049 848461066 993381391 997072521 663328771 944739685 715873391 829737622 450041616 640177208 443313916 502509931 629220012 755471552 185485643 554589163 419297393 504917595 133319730 341466586 272569748 447797745 530010279 548742638 258022263 464464025 226836019 986557853 270994819 606574502 20580962 294167852 559014721 624802011 898217632 975985070 662524692 804954985 820080138 957675571 192318316 992448317 604945272 813610613 596292732 813218105 591083864 930712846 924032564 931730364 626738153 756723849 286915159 507260796 31905828 743770679 653808470 977879635 123860002 142261337 932271829 972410572 124311274 864972324 928296728 978005738 785563558 787513128 37651021 425297147 384527092 610869229 659901934 714437989 811746544 929562276 621359787 740434285 716860829 851750226 142102142 989649560 586373730 853310147 960261587 963532083 375211344 737361289 683499775 841127831 628358872 824690416 210183816 535329430 282002183 532887849 864515408 962515909 445104843 498846589 698178608 848930929 789269983 884009969 179646349 364628559 375789379 418856940 357241312 958457645 510606410 729452896 196000512 196333996 390564994 902726449 801808930 826260367 361289814 597103171 320113983 410427483 800305290 882406723 949703555 952508961 330234279 912083827 935284641 979657132 373177325 793750658 434521741 824907179 826256506 845446838 739982803 771604330 218730364 674114082 148851567 722043121 82706384 962534570 986432688 987052560 30832542 282857343 680043559 962101945 22308741 809637321 28360534 853616427 873783158 929453158 981293511 987731666 489754983 588916067 252703788 463844112 159686233 476427553 909717607 945898388 861517565 988507511 274230386 436829182 525199681 527059426 632760029 840448079 684441246 969170410 157767321 882519968 620112505 722649187 769772679 973734685 418314918 519943054 171640221 642845523 27393612 904761182 686916056 743124061 682535209 880667666 155447855 930199457 512520771 516470695 960009522 969520206 356828582 656265258 638812118 829042820 369323639 445934271 384998813 841685589 397428885 753769220 733444129 737863899 991376340 994728597 160453163 388501407 590556221 703733385 430184602 525909039 834910740 970154951 433305972 542031365 925355280 991119997 67495596 880264059 141924752 781310105 921982061 956961416 362521781 476118934 668738345 675932764 437669433 729352895 818599641 829742792 257504026 858129109 670051221 982219807 611376492 835149271 975702978 976117732 602672190 774786841 355836419 405770924 928146455 956751776 55833632 630942411 356310261 781201835 17739632 201306027 791123781 971138553 484876088 860579722 476606406 744620622 156480248 406885028 256977521 623399498 499525097 818452435 591575044 627940152 985235072 992275171 80079913 152269321 28289559 226384901 930947914 947022187 921870114 943260193 783208274 933436617 94051440 645500148 272944802 872458486 231600033 755387031 108702588 213181416 91767099 543538955 942901794 980400853 941352390 994315402 227273746 643022005 459257514 643994205 782871785 994796924 875346834 933663390 64647116 188341623 930324998 965586905 923141759 957518952 218013787 457619171 301857595 623920693 268379510 490529490 735467861 902917804 71102787 858622755 81991964 274598687 524832381 859899144 782874449 831961091 21275675 582524026 373597719 591913637 735328015 872371277 406801782 661441639 268329551 276887973 879209709 904122339 890322486 927706017 764513816 949571033 343982687 829106863 477508013 722453318 351653412 876632465 376250021 743257698 245742885 475884368 595565895 748477795 275673154 569477798 74069469 421945796 498763835 775854231 913055347 984477724 303895033 793387909 553735459 802234897 818886040 982364914 394472170 882054656 98340740 266477186 690832691 833269800 686116247 736787014 337231488 898340367 521519433 836806475 111400497 983761383 105365081 737011221 615892895 792895568 597101158 701502681 986686039 998510944 50785719 785338783 896676415 930136037 363773644 410126191 406514268 900890063 201378997 371030271 668243865 865704972 157292416 945937558 99570862 213776342 23646427 589516044 498060266 510847523 799287230 890071475 867002224 974216489 946360170 951273388 421215252 607204584 142035230 873919857 509532959 561051497 132389714 743180896 281146358 927201893 744887483 924771420 921742700 938625345 317721426 588315339 751626743 840545540 773703167 836132652 682353275 855361541 524723693 683056055 549698239 790191670 516170215 692519129 249855887 644463981 371549625 889387745 972840465 985522416 632222962 811304862 867415405 997456764 529787348 980538536 865495040 893951603 200068474 508646326 127299698 421604224 510027783 747575713 41959688 656079707 26894354 454394591 750507290 816036835 139139837 351479644 460833345 614967075 184874369 963425068 19332958 117176064 965451489 999250809 377862139 621880876 253941686 766535372 490953367 850543243 691421818 828938826 373822265 767616053 57186604 822310421 12773162 930329923 314873178 856988570 11736172 133612127 507770387 584821419 991186502 992518369 365045753 605933601 475270511 638450109 68242977 546428126 196230542 920427701 192335112 776001798 591460761 620610338 863811234 980468504 985644261 986365199 580590422 644203442 814559440 877365748 844440471 862355115 829739468 990431237 445983647 826110964 806886571 862040028 251988341 578272167 30462460 589379323 756871880 929750586 449665264 828869903 501572788 708831694 292669572 884197293 573933152 712715761 480747331 494550604 713597165 824407262 886037702 920110920 996440202 998392649 633655783 752216394 724368013 873762897 991212965 992527875 337910332 534335158 554948182 797747932 800245586 895784852 31146124 69152839 174248882 506977395 350992244 822442444 974350740 999131722 287956193 838074424 155536982 567740323 56277498 934978514 737065972 974149951 232944001 692490684 881367353 911920553 212279501 483756850 329095151 994291229 983683173 987851996 610524132 933145373 633548464 652276653 182495008 215051667 244785922 285882604 197528922 693763547 314727725 542757762 489110129 886223866 649331567 887868932 66049269 369024898 411920425 718557771 315781075 350279371 450492188 648517924 339543236 387146048 454813412 904921326 862674993 889829366 354571501 947845603 719441774 976110257 274868736 437898524 321488768 541713481 110363100 541151189 678058638 845065435 772031243 821715009 687788770 761752965 577694651 817713596 632227245 812657164 144862556 778066948 170553676 865309561 856198777 866085102 899681100 910851436 536070034 717352796 485473638 526734631 586733292 730187482 349267990 446443123 538432495 632282568 26052736 604477922 31671526 797105565 9504012 891663473 756806843 768569001 129544112 736157785 21118502 520258821 918664437 924177206 776387315 997908820 504251726 933587290 595889886 739391976 249057832 794945213 639964022 924209130 351703913 428541434 967448829 991005197 964475338 978788331 467373507 622943936 718625337 790854476 755250857 952475559 605222845 997701685 473940677 952252606 681138023 684984765 619689551 829550961 659585628 895994357 981076711 988359074 979386925 982097861 725333583 829477413 648993529 881435163 214369916 650046516 355667468 458399686 900101116 946517891 548276115 624755761 999113622 999224815 985402956 998618345 478618828 559471164 1921160 697568133 2314951 663738944 136077449 491993358 973294418 996118375 465504268 875623497 665018211 929705683 50911415 352363556 238687578 259820210 347555528 966729005 678436963 861171684 678211500 979095427 544924815 818357792 603547231 611529679 645440484 718251885 351399747 417201753 740345110 893229987 92512487 845212189 230913096 477821555 201108502 849905565 777137426 836383964 294358317 721228979 695315247 701284562 649963746 663770419 367614901 705768175 511878222 650836657 826266777 958880470 60319618 373540276 447684324 850280020 103881653 145580426 75426685 498535598 694601431 908825441 656471247 980288956 628329685 897404824 886763000 989511585 685416362 979662372 378916696 487871567 216123788 433059640 825402979 903411536 976416385 991082612 810746724 839961233 478071876 907004338 436967254 523948951 893511960 973661609 751067115 763648243 310983404 656998668 753422835 784640385 357278771 790149790 714594875 830687609 920039930 974168228 516353447 622188229 359915685 884575072 938195024 974136241 665142286 740168112 983104189 995152212 270495679 306435533 955786755 995091926 247095932 848861725 444706686 956809504 271051583 776348083 685955625 835679095 975435663 976561628 941789856 951770292 939519001 943302862 513134230 606149291 524910215 900708435 502655882 897062607 388855951 990040616 197592283 547944085 797693887 873723058 335074458 951737572 433183777 532294273 843935389 961045786 846961407 873719990 477667851 833754102 761821407 905156986 179616740 200751696 559117194 809002693 101809698 776733073 975370652 975896893 252823365 278761718 65714587 436112275 582669519 638920482 9760 690369523 627458296 669953100 66992449 815089573 70775955 211182666 784491593 887980606 278098353 329814303 229168117 733200293 469204076 487108161 40918565 927423137 357897208 845282239 732575628 871557833 94484844 285363867 548350274 687191669 705480902 829205128 261295347 626758105 540664258 803477068 459818060 533293833 948695724 976141728 366950640 390677929 120052384 619968254 345849001 885455318 427698685 538067769 54266497 367706434 519401210 655606519 301411064 750589783 547084489 633203897 383805329 576974069 439539492 814058162 189273155 561995415 993253775 997676991 445611976 638991812 723846703 824792702 109976074 988939447 344259816 779367133 889832151 967948885 574108014 748799268 809047081 958763632 406571653 623913904 354357866 811175666 989214166 998899419 521587349 955868260 412018483 907994189 940320892 987976150 396805183 412361806 69771626 259153927 391610738 797610511 44188265 530157323 622708066 770897439 725357179 964368434 331156384 939617372 454295782 790913437 770265044 958709065 205810099 687994288 902935812 959907257 729096164 956183113 304329624 461333085 536178196 791064830 801317367 804448580 931414742 954630141 813679480 949721068 891249353 980769255 620199033 974695107 275897885 890680444 40199683 988952105 805464010 964560545 504670177 916042078 69717844 553230603 300982232 990804322 649761370 715310057 105407447 383405334 331507809 535507915 52161948 994925738 669124537 675186594 132123677 716416200 253457236 973653438 708884218 833375719 856609627 970410111 647039207 993832405 688639567 839760089 721104173 883430673 936762668 957043275 339876974 502769731 281143332 838529421 144623326 680688029 859831753 933301545 431643311 810961945 601596989 643998304 664373773 846269893 32521590 408937605 358284574 957137408 558694189 719897713 710219666 966301688 132650138 462809391 68816690 962356574 692545709 973134400 753524456 818694482 238673146 650221336 338516962 766229184 501678471 982818454 540811240 543107673 883699539 885395566 813927432 888505706 994626400 996773445 256526106 280399726 844849118 936316577 581547844 620720715 639113943 796206750 999196238 999357923 60701307 376049559 529311088 722546928 178491852 964037293 558111237 668348113 521576849 955349714 803635453 969752128 334433979 481298178 666463863 875349406 121749410 424149851 932217072 974695477 812457628 897103274 454285928 472366430 256592116 909416927 353639261 928920822 414870255 696294591 164093442 292436474 816231067 923754044 380787290 774698163 16632057 554618719 776253600 938059594 102792371 491400667 56613783 717619913 89572434 617340610 982936573 984125900 679039364 745067763 160717249 275313994 746077911 945339446 232382369 798638418 817672933 970169454 895614827 910599905 137031321 282954432 181327732 570890004 219740761 879487196 885023541 938433938 914004741 989733117 811273179 880238341 960469702 988987120 783894154 887943087 982021822 986604067 210945517 506937452 676712638 840155432 318306441 344898058 523156729 874225132 146890241 986743099 713417526 920225840 985010704 992752785 711088869 886724106 95947816 604803953 160239121 313962214 586959325 969407435 392325210 903508280 260107991 746671990 836234353 992889337 733010503 924729676 312564429 496737080 563691561 597352064 66971205 466070702 521467970 691078094 529867243 987992610 391410293 721241800 824820352 987741162 204492053 311339194 625891077 627323175 54368207 303265608 297171468 605202379 130257435 760284535 332698396 726225527 69714284 133615138 975230110 998960266 753717059 924511292 527851275 541155289 582416330 850732991 360241857 755966617 859320230 982231414 278939252 498405423 782841577 795635726 667543759 958349784 211697957 338683474 316260217 701225800 171118711 947276330 920689526 967517322 537356133 896517999 716117468 997584450 51328681 434504992 830142966 918590153 267415160 494490398 702973403 851196636 59689714 199986138 939213466 947938459 402239083 748552910 918779432 986992238 355148151 884647056 175313716 295301175 795902665 946877825 86211938 309446961 505124660 941854932 783017785 885684214 483719511 682409216 181077175 868784242 920033071 928588070 78031406 429325756 826875915 939625058 101756900 474495736 564092572 963263923 109590289 678942044 734536308 878306351 645966633 886994195 793242302 887345988 348396235 561792920 594447596 955489487 238419792 766989875 893395768 899450271 559155115 896402253 278924480 944958170 765472004 848308440 311417067 766465954 199146814 489874883 730599394 958897744 21847590 40643527 617360143 902026245 594412473 879123307 428528422 722119585 982061321 998928089 577795885 950487482 459549451 825857347 900795149 988632294 582107354 681541513 996837134 997823568 54880794 760240408 913544148 930534375 326080916 656596164 252707831 969797993 805764043 888899638 935692991 953114906 528079819 580610304 931758079 965789758 882357833 887653488 982039316 995488380 600148040 645566809 785326491 828416066 827014683 908834304 9417415 931036971 989916755 995473346 955434068 992182911 733573639 842145666 128316530 352374498 791718823 908974819 812080501 911044889 997409554 998566482 560583519 823961353 768124684 912795961 249261541 472771776 651288035 718276106 613713363 985188457 325153741 746269758 84206068 445434081 950644663 973500772 857866974 961012397 852254176 862382844 146223654 706400156 218284857 391045149 765163981 978746667 393374649 672450154 901009146 966837569 574513959 954860394 269834323 734850020 12642848 201002396 250070630 997922143 405349269 967951171 452422708 721089748 318228217 573803030 908515656 958478650 136606779 284504218 140664330 972763637 8695526 349253777 243174393 738127122 594942755 927382294 403921955 935964947 149997895 973831102 500453864 946452940 236799727 937992464 808465317 852761365 23594989 760649198 782808307 996766087 447134056 478299053 401247228 788242676 818619542 935333125 924462959 998617918 423085513 822146060 198089654 580801304 330505733 895580378 656736416 778281124 789697973 855812132 994307975 996711037 722541658 797017513 323306584 414596059 877185811 918816205 331073998 924952081 489743433 670001622 523533796 967884149 829054593 919229055 16262752 283308152 294131683 451852214 505240377 827260917 479117735 638442269 206820952 351006961 431029863 442450564 554301713 991864563 966701754 968546597 408591534 590461537 207449267 945524065 435886386 914277642 61406411 728830276 794452442 995626548 126141603 366990690 21227853 827428087 559037549 895438512 833880092 876182131 114516215 397221572 657275153 879790190 605332550 910372748 627286708 760433320 162738708 677599414 226320289 861326761 996885116 998193287 775925723 952022805 542534 133330103 300729363 516545946 956487014 981073967 81035955 938902931 468730128 895603390 519000121 898187788 816558121 844660862 449991040 613948633 805522856 989410174 899852069 918526073 2948465 600449743 108086247 453236216 950237824 982522882 623593201 758893776 430867916 908195484 403027004 504524460 821481666 825245794 264454265 362469293 150238870 920019165 335074665 718158564 599791568 846752869 797174299 973362049 668772229 937403795 748824454 986483405 730835539 948875175 134915436 496750822 259886640 971082906 733867081 944700312 812173724 817414417 878165472 978038556 348626768 922835680 742190016 753376278 341730059 584947772 66303385 715118465 24258345 750400934 924880705 989583492 619471079 697343285 363013082 511983025 877437890 922225388 982900289 984556391 44595955 255383511 885833548 936760608 357758660 861721618 398095048 826916757 626991653 844318687 18207589 236672291 268071656 648019121 6037635 294549603 901095807 926176519 649870329 912205421 339018395 430517546 842470298 951040369 966817 666180617 867051540 925353299 695368206 963511892 988496728 989437505 18671558 860065696 938847367 948064492 559988282 952400031 816856428 930117608 255279976 882388124 841881030 921146119 224543127 497978417 329239606 834021186 961279420 991326188 99457462 713738572 280962291 644455050 432914938 589996562 810333532 878727674 699476509 942394791 30509720 976683658 827604269 935683797 624145143 813259891 799104237 881056418 195447978 673933268 476828738 533314970 46898499 708028157 445613063 475566552 978451258 989935828 899670967 993584796 946572721 955302307 283752491 489569075 798482539 872113556 441601377 477551601 804019352 894269231 545003696 873003619 361932505 783033037 566145663 995848546 585942990 599655093 790667116 865201866 836531215 870048650 342574291 343611367 744014971 868810825 139347986 438048948 240742732 724607796 561816630 604226342 990767615 997403310 805541976 954453216 41447053 849497862 573887017 758804668 997501972 998520139 650746986 775601348 28164569 487666839 699992219 971579337 170336890 420644004 359519955 600129387 351383776 928180246 585130023 909036641 743145318 860084333 395782295 594115818 555910446 659077687 994310709 994587831 950139454 997857521 336232671 962538660 985276649 996416078 579666842 680103507 803196653 861046422 357864973 895771583 415076119 784499688 431232434 899958165 645832596 694501096 369837868 552211310 286926688 962154465 169569427 217470065 748529995 945479482 495428797 809741115 325453022 448399616 298576788 604419420 179939336 282525769 676642147 997166576 981840695 992125445 466018168 510406026 68561979 398386894 756465532 897638204 578324192 909919826 111971741 544545840 277265194 559025562 864085743 866774717 103766420 995318669 665856162 858378057 677618246 946760176 771552153 835627591 601920761 874543671 626551305 863887800 980594120 993960701 482559291 532138448 617583530 633159929 340600871 353190781 235245914 467553901 319864993 494632591 206894322 582045749 359113284 915795201 417951263 646449595 949876047 998819602 245806340 418351007 32271814 67510677 245693968 520731062 791403263 834665217 32629320 572890737 488852171 501271278 315990123 380760382 428121299 870741650 397277111 730386216 956432117 978468375 34320373 868746766 62054761 161665169 909275842 916545135 754096050 962400505 656788100 734265726 271350553 635718363 900521204 905630818 464179402 837033290 290211324 323519241 921062715 926798855 773150370 842428749 391808633 688402184 924939891 929475591 1479503 588590802 98209105 813735564 509296420 973301294 394651412 575856584 471593443 696186675 380866036 929847775 71142936 320188777 378420633 383189611 459284020 502594158 547697648 820351278 555619863 731480052 415669025 849736089 806471278 976984026 132501317 957349161 486980125 791651558 555404551 790869762 178887030 877702300 840362729 964461477 961611708 985186936 507604042 733107828 774049447 851707505 323380365 350712617 479419500 552327799 532240759 629143426 178741340 841296007 19401663 510750280 210494778 583205312 393797588 438003192 868151799 871632339 305932927 849528794 866775029 976655401 168710341 517480829 945132402 996047818 64597858 341265564 978064833 989004047 738678278 989350673 268043640 508778843 616120426 632238219 684903941 753839551 100472421 670056929 577672867 842990974 916102612 923392289 651681708 810990414 590340623 913151537 242144850 267650287 510388176 730831136 779654509 988326695 915581529 943983057 811083037 978613804 454829942 822550256 968997467 986825257 325111280 458928692 340006634 627882774 863545512 892632985 989569089 992705600 35790153 84039812 39945832 443886428 754389977 849299133 77253501 453335087 300430091 890602874 216623951 462881268 284806584 418594062 695753863 788563562 603322732 776871599 380048064 566354465 918205747 955966707 770887628 861304688 264430850 651981050 779550786 965828102 385844213 492182354 726871801 800366372 103680262 115953452 138810158 217438710 551375313 838873648 918776408 926116490 495280820 863439899 980396906 982154085 961809821 977353011 496452503 614911794 493045586 580442252 631886174 665463179 753419038 939291461 799498383 816680149 321671214 364199712 273031121 758657331 370769790 393333172 997374325 997427085 18508187 237749977 839442844 887614178 827648112 909437066 11324422 970999544 663703229 893408437 479977041 873608697 76524516 196886042 165916018 333784923 309358156 776230843 379579619 744728104 729572106 848358392 871618401 913367824 501933038 708215368 454987168 561125586 314966582 607818723 469139735 788211068 310556228 988682078 522521312 892285863 601885294 972050489 173608383 988134449 202885271 716604402 631335348 979031856 493005111 556817166 775975774 829950232 968482317 990086679 443467238 695355958 815507328 948972113 186586967 427359897 521365138 523891802 157660892 770134231 354504161 686284439 875859476 923362333 923299752 971535517 691421127 958199517 992645990 998246297 532209318 876157632 894193903 930469399 468606678 646469503 921696585 934441437 526435029 560469908 923551737 950834211 801040067 982317597 924171797 931306001 605299928 879810081 33422246 326040059 139868745 630592209 985523385 987729087 571934350 632055221 99407416 867328108 468066427 557130862 787493518 847455837 791288354 793653242 1191116 839247244 980365624 981102063 757335464 764177623 995494978 999281573 192981036 774663235 653403071 841669079 573858921 585149467 685121885 995373447 598175908 654707797 816118243 853151024 183214150 714783296 696324223 804364676 530541185 629713085 878622279 897067608 392269494 885904190 610900555 705250925 966017053 979714669 34376621 868216853 302132127 764013334 360115278 413782345 998276335 999197066 26462480 957950719 833209075 957317945 743857897 861359819 954574259 968737971 254364351 923258454 379879124 924936372 511759973 579471274 3202368 746196223 627076493 735126157 604495848 704918370 788629654 802621476 417990956 814791280 900779675 902635523 195048700 985096822 662117141 844405577 920442432 947765305 983037619 986520158 238055403 498713148 504682038 505214152 162307408 419180441 352184148 594602825 510374724 945955253 732533843 732709854 36462916 129787445 300712797 418392715 205932905 576725631 215255963 516109977 293372510 882664727 475583003 820487654 209146073 288270396 305985613 671570396 862913189 923065342 338881215 753062312 684808404 956062870 992146915 997842219 634759823 795716018 20670083 511600953 106139495 111230181 930168886 985822374 772478200 776134432 24298968 94933968 784510621 955642294 300118599 943865725 59921002 981282672 277546438 687081406 421686249 767645155 654474435 983059725 116997865 637417717 423680355 438479045 95108106 177334768 848164968 915451467 980922451 997507568 273684487 705721515 852126698 899544748 448027219 663846388 711940007 854394148 140979576 699060740 649609617 858524469 912201942 926459060 654226857 707968026 370165967 855099977 65910354 116933014 945188636 972750675 52922264 715343435 504230574 555201480 417786259 640212080 272668532 841842140 588479357 983203244 741431270 987743015 987145586 991290138 616566115 861779290 35397811 859266196 304446659 610901356 138974165 996525501 362155573 994718520 25166827 207438298 586446324 907954869 307114894 672568721 697906789 897074321 277874921 307967160 658789766 667833301 621012119 664997478 573240912 917946080 176674296 768822772 554350765 859456810 682197892 914364045 561791350 772624957 628962986 994016283 881208047 917139552 418499599 706490566 84878303 144294671 455920933 671952641 502323257 634328101 825107831 904057365 89498392 362446170 885473671 920626617 276626244 887390276 705062353 782142490 512235380 622967858 263721564 559861071 246069866 331091050 453312007 565686109 295514279 684726553 255050738 260369348 227593279 983785219 489031688 922787355 635701682 688190955 777785050 947050711 940031966 949755232 697568322 890734784 844107067 931813282 515621857 570669393 645982436 936691502 109139164 699305742 558965657 569175756 451746914 906450404 936692212 963853716 480051700 743545285 823745389 947817331 557760613 862162111 91917812 658938182 721407894 901294472 29410862 844271634 204055809 585865400 725834269 952324171 456208576 860845360 782645972 848191524 777752717 949878232 922859141 996591131 796057075 943736017 390747848 507649381 838228654 938636314 855872579 899127796 938257332 959871341 945581536 967610278 691026462 782794904 537031256 614314929 108490437 539341718 810268187 972504471 478428080 833106871 426226882 732864922 674688172 742300182 198470039 371947241 375089224 899298999 447861173 462460890 229569163 690216879 11441422 269806076 818319057 862555926 281496542 804778222 753654929 840139296 231861054 889744030 397633218 766987907 549016199 816729508 601453327 903487844 454587811 506484965 521203660 898061017 575038847 936171447 202907127 775594117 235502979 506480167 990692181 994223125 121544018 909716936 799882348 881167048 246680362 361560433 987271861 992127528 108441544 412224930 103357590 174016346 448087419 946481537 438698497 619664098 575357094 807083644 212273027 847458640 800701650 947635515 714086296 868810329 457201869 485653836 99917433 338047652 617520905 786961099 574641917 718454503 681132620 791600409 812897015 856836633 828825884 942652961 911080989 996590561 428328352 578180746 811346051 871321283 945186692 952662939 553887107 589425440 277899599 556605481 754653033 755855749 55834015 786311970 421011603 690272146 66272252 897737931 454187475 826740200 966405403 989105443 809712907 939101454 355203891 530304231 798709200 859930245 676830639 766650389 406583040 822336086 891392952 973120937 231639904 728339749 104026849 146586120 900327148 912678680 738565012 934073537 651088317 792567140 410914474 420341943 380519398 423637729 889020237 919142498 850708090 998786026 346936860 854491790 667135925 919983665 402772819 933833721 736022320 843775399 227755123 669445827 514004387 905781387 173651210 631447295 405606761 437505627 688205394 721387320 998268520 998442591 138114367 300137634 722926733 829713110 745612581 878594026 40799551 564011180 187588022 282333180 264082255 639734424 834620315 943962778 849503698 892627282 381567632 701279905 298496760 643035685 648067494 731451739 360090254 865729115 116649527 202364779 889267592 921146702 950231104 978410812 767060589 898876058 881747034 930449172 235113220 519549986 730105641 824543308 36652104 636784884 451511831 939656794 798616924 809197000 531552298 556243596 741350811 774415666 243968419 686230182 835514643 941446313 148121014 380947641 333182383 836361814 407572896 787640367 529783596 967751207 409351721 630748296 46523008 892999200 855314254 938715916 845069555 878599930 128081704 401977880 126108575 969325915 420412530 805414984 620896534 965527759 896538562 953230245 532224905 687480111 198612361 763602927 278461622 459755325 116542539 514256296 134403752 570915588 694322909 897589714 161624426 251114675 228912916 671334056 728988105 826846537 540259410 750477598 326110313 962116118 156595311 567498451 552493581 891591123 130674247 716514339 839868134 868631797 278913647 503494472 512392552 651358865 761700512 977010993 978406594 985004616 369436088 647383134 749991974 923239829 309852008 935057624 163614971 973622954 919387325 991728627 725472838 995486967 707843393 852588009 257933510 306312034 498545270 925743370 907584987 992345284 20468307 764985946 445861495 706944671 790581620 871782705 258643344 872544559 432966608 773367161 451809034 910059939 630603015 997874554 745886966 988294003 677427291 926217085 729813703 788463317 461500518 775616620 419924204 786145931 312864836 606049907 821082611 828644711 170037884 750115325 770186081 858763378 589067360 868424129 555757078 602366399 325790964 816220943 197494690 347895153 678663798 837203125 150529298 238326116 633944270 874536601 243108339 329513302 789307405 854454968 576409408 934776908 6581691 219176418 175036933 768654636 469282129 596602748 863184007 919248329 879115717 969491174 206940101 932026513 9918113 451041006 390019516 955002791 155292443 352245623 664500794 876633489 429509669 680283841 899146140 907711512 330656883 618408192 36709747 306042791 428916015 600369619 612772771 625963608 836545630 870880746 329964857 768741787 133503108 674059832 534449728 747018874 550214318 929430155 62765489 363471999 970709573 996772157 138529044 657845090 395302333 464254419 893465052 936715298 935867185 948502058 589554015 916113683 858999274 915708940 828052525 889529700 873508329 895912463 212980407 385707241 440951003 954879299 506508833 717704135 650039117 852806020 570019620 760532509 457325393 636722177 134871331 357532251 420427436 856946491 872299956 954424281 438058128 933218483 519553223 867236151 730150699 887843132 838301340 942283321 129131990 343169006 353585128 721291676 54408306 822423721 401988710 649123454 436843019 624235256 167653702 377333767 118514855 900848882 123947910 675180984 599027816 895559175 498441054 654294693 663903433 750659874 914805568 966931040 940913914 990873687 408983384 693474124 323184718 525484767 705258445 852884928 199872361 479987157 145248547 384626521 699690496 989796728 475182840 642598053 389707332 762549660 555179031 706215444 315305570 718340648 936483921 963128571 43297149 996921331 675241278 947150805 69763483 270237903 554421665 741311443 885049144 902744095 951641642 971001871 31961942 691398509 604893690 904061207 798784932 938404180 321160514 720170783 94713368 308506994 925417866 959778401 67877651 91593206 358365596 364500807 887829497 955927624 605844511 941521010 304595485 772998022 279456889 655165696 189196731 802308833 357421661 397196370 427526659 870590223 588970673 837603476 726702173 842102785 473856605 584491215 280064558 560363214 146077301 686910527 656160299 967918450 720771779 811831978 674810021 958720089 664072774 831948675 947330537 989826971 182009581 657463797 16628485 717244426 309071943 310200225 754570714 774984366 283660441 353137338 71508896 504008425 152831150 328653477 488372881 602667691 498382894 974977085 723392266 853900698 496276281 522319770 524249224 629273328 239546686 730634744 763990061 903268492 229504739 545428515 943861165 996227260 515923293 658380609 82096790 923438348 653527147 673695581 974951462 976139718 126112091 808034934 377426560 474434490 179071981 534759362 390317753 655815337 227648680 331035878 851958997 873016315 374610310 613396776 17086043 944562746 23060532 692182211 450378085 750852508 880131497 948971079 144773159 441455277 766261510 845034026 864295513 934962995 260326183 493657963 613623724 753306989 990838845 996771207 641898882 785112062 164660336 281171952 100254631 798916777 613546691 958837646 172185278 413914719 183215736 952348888 568782740 578123818 946211027 963496770 534984333 741765615 138364905 568334947 315611767 718384366 728574137 879308430 159581055 435959756 152940341 809889644 188958123 509305465 192401936 808827646 554686027 743713347 665427606 824586571 274439785 671931619 246031871 805783899 880847420 983405935 450358714 767282656 470928623 849585411 211598551 314805318 486432442 705595460 14681937 135287412 335599503 608007594 426320699 710066734 692133949 694497282 296119164 445945372 356867624 619947166 147646392 215427810 624064577 822238913 608740936 813855976 423314281 506040024 729575627 824768760 676685084 979007215 11304321 33970340 132154690 752682703 451382898 477799800 192359913 477622855 342091721 422924368 375061047 981658961 892086693 921178427 258932514 487200574 660895335 812884781 998713471 999328238 937620192 946565200 560006492 858210262 15317764 269548022 939535366 985295814 256766923 876340500 901216377 944664944 879629334 944879560 815001327 936665594 899496667 914478999 347621529 517335572 520290443 961764376 870539248 920314333 732235138 881967243 59831587 749161338 639778572 790738963 738413731 803601434 699928986 786644101 961786621 994115073 678399150 923381741 204154123 365556234 312139386 939260039 143057013 315700550 292015687 774930381 496778008 767716888 372446995 631357093 428758199 919928137 808793749 847734007 206459188 496336462 712729533 991691460 695392458 934458561 372062482 534164043 190780654 710578229 383123378 745218652 675265201 735138028 381925127 537716708 686318210 824560928 921010847 930118619 910295032 931200774 525106342 759962816 635834792 930036993 228876944 764247081 479793837 975586993 2030285 680420334 672423335 710869520 223046686 651453365 154155800 703871029 536884258 783659200 853687884 946939621 527258638 747915660 639016606 674273360 750426862 891464363 738282650 758340431 408774891 575450636 489206641 738049846 323380996 532347209 687907555 722759616 977293987 992828733 946020739 972463324 270832650 872922144 511133275 654771097 943324711 946388724 435370540 476057605 889341146 982458957 894828895 969870075 523028741 973883509 58122218 539997445 674171617 912971372 171694288 440157464 115120402 911486341 734505950 931994316 380111691 761193586 794685175 879176030 729015289 801268453 931666502 957624047 494862368 771859750 254458650 858369310 143571695 347554833 271529950 839654486 634232523 977828606 218448844 348321606 625624354 845780167 655876972 847156724 859072744 996814372 314503186 990779469 62636360 321772925 773414896 955687201 283933773 566443778 817155840 936464469 513963998 716881491 800006817 896227984 270357560 491986124 27915869 795056992 79828531 285236852 371934684 451015499 546605690 745922756 192132037 443086492 828711691 890537984 641222447 846356699 89428214 918447058 308059942 557001206 426259284 919127007 650768296 885950735 34293699 813561761 772846605 797833848 730634874 874514399 338019922 507748278 279224261 569951458 136165831 238915894 135093995 897498612 880440272 984390384 582087070 760465236 908739759 942991838 567031888 890080042 374341963 819710873 792475054 917593419 246467251 986587097 787870667 928729173 940054015 948995087 536835135 537002047 742771842 957788787 197433015 450806186 800265345 930570352 913489572 967632643 356079839 826472534 128468467 329703281 103391914 158328776 610792212 671894241 632137754 889041137 690365081 853831887 803547641 994266921 525324355 670672910 779778494 831615607 580920472 760647124 657571623 997492519 24828335 45237936 835571534 940742928 975222967 989766741 504681101 923173760 240808452 345207253 446403999 637259442 320739912 397961546 5657272 315399702 921844970 924278482 81744975 860987206 519507624 958385435 823343341 835843787 820708876 885858627 644781217 839207204 775392536 946411778 539763569 757191478 314327544 685062407 255628650 945820190 176959850 890350203 680194671 951584057 664430603 979859282 112381155 840183964 226391100 746814901 177687266 335607087 434877906 710827803 559935502 790564317 961945880 988978508 496131224 849348743 804030033 970034436 180787618 468810343 428483072 486108326 813364346 991986340 933667983 947789591 486515613 505511156 616008906 792534013 257390133 741983922 840828209 992005087 989892217 998700949 237295762 625679006 778687356 805420901 66679301 838759738 915206709 997103394 649534877 738975532 18616952 113611771 775436621 912346270 786302889 804218486 482482650 599848906 744648528 921080914 300790921 328757787 562957949 644948952 251213333 686431378 303405690 998996826 620709608 974700800 139552447 800282246 75658678 656704630 66861333 446167513 181201518 693549638 133124015 668455975 936346678 986433332 529586176 586100773 575478277 897486533 708907106 876970053 403610078 459989966 38986737 134609849 573851927 914702887 201550112 774697696 589111159 659126786 165926144 569526965 165985064 705052421 765256272 883576354 499924219 599967815 303854475 727725456 597895056 724309881 841932882 858866713 220237807 363506806 243866238 718773121 208392400 793897335 870670046 902738393 318349108 944703280 474297138 593347194 821248375 945612977 439304730 731340947 374919163 671429674 612970531 982814035 14263897 345926974 431204103 819442137 62546982 537031059 724188484 809427723 272188448 642686110 48125618 954142629 825104533 848589559 622945405 702678920 304814099 989013601 849199715 958139653 94589235 504045399 518948604 812448645 864916486 948525240 123554202 748824663 614043465 884673192 346976548 381222492 711357755 722881315 557390825 857945411 934815059 949081207 942982690 995713382 82826878 640968369 118144460 510512040 880071027 950457621 330391898 511723101 716436376 904548135 799164237 973081142 969767857 993172618 934447850 998848515 347004052 528993749 475879972 651072073 108197898 775537087 799393995 927054093 859853857 971452398 81232538 833842393 916399559 969530195 796689794 875073629 860946861 945621266 32004073 326444909 861251353 926204684 671669844 797947471 80145704 771853339 818446001 890060191 125310951 873846695 380409738 615130882 315089322 961457114 171219693 185564505 619622600 672083126 814407616 996603112 105005559 143860120 292304145 451100324 819728478 954378214 671108634 824258120 355760352 647734435 478201715 822669586 922624898 925871496 36025202 426627457 792249412 904122601 497307020 831832262 834435969 915875322 424566384 855476354 447627442 959601243 276827498 825605696 852578819 914573741 750662136 809711385 499949731 515802771 861136513 960849059 460845872 661217572 772128498 860707418 788931070 903847999 459998978 754291969 183952252 664851710 635319024 746430371 444349726 447654200 413411612 463962246 215703838 372123833 174914823 605257977 810512325 988620677 465608149 886432807 903456456 911221167 563303711 648457459 369281802 777217854 632675225 887334881 11128955 402520628 469398662 896702597 336016525 698161422 855718309 867639195 831155295 905607838 615865817 676287754 171687983 432942402 211962930 290957639 719992552 919213419 181880419 366647375 150709454 988645683 661192585 962509555 159962112 842284703 129888852 400943209 440943829 860682994 344403721 600760901 780977725 913593287 727734730 842263533 794314403 882429591 392548647 859901013 782586381 832024718 816756153 975664983 100552707 897320754 384280582 492376796 121164021 453834620 367625289 689607049 145517231 484285957 167495898 671090734 98594824 694979973 44783344 129821891 827622293 944553858 820853013 978145022 855693089 893506751 974517027 991016099 249032254 578213093 758655998 782853356 878417678 901297011 418624023 833156897 873363916 927317921 916908617 941459895 229808335 346425956 728933404 805829739 913800087 924651182 440491158 451809070 215518901 729000884 276836649 306318642 332004157 698179676 299940948 302966121 827543686 992129171 608379808 812394471 984860889 992742025 763810730 911259333 801565229 808622548 294672489 336400746 714368796 854419825 22891507 789764253 844262732 889072410 324829093 371979676 932753769 980985994 58583704 76708656 333208473 622622985 218081416 930744384 956703356 972642713 789936278 846182763 245156487 796571639 181727977 684482975 254840163 616610793 108720215 531613054 519637023 832516481 962906116 966573198 822875669 877106643 123612287 544831820 168031176 356312487 568426495 599645155 378067386 573622117 820168646 944034161 485405799 939546633 128906646 174790021 196168696 790152850 58959432 174638004 106485687 335282534 74056111 650839508 909447173 913093328 151297427 898323260 242935103 962795403 885464905 909416743 112676450 591756778 801201869 922268070 916742037 957067109 625537158 867942218 536659277 964651898 860273693 995711691 52487178 666599536 123399384 926661627 988130202 991360037 386969551 908131434 496473399 663533589 149966554 796134202 756374540 795075336 159297340 556244505 57228426 517826089 271631508 562824450 340995180 500428323 828029707 899511539 515063318 753595663 571612904 610239577 967582326 974715678 816257937 947957312 399647597 885545502 81592883 224864888 137315493 914863995 95283668 478288961 906767230 964708772 21395383 57935874 912705062 922072946 295296687 471508164 712966243 728299725 808739298 871678033 974456781 987157579 468968418 870340524 749820229 785417272 702040804 961344453 311737158 539670662 162076965 764404042 488667835 517995421 405637833 464410047 291094778 865705009 913879465 974993824 132285032 338679341 576676284 605204476 88894774 870789779 741526625 819336007 838929334 866475598 837612230 897328738 968391902 983191469 965447180 995094533 261376160 980029064 838840228 903310649 386462597 716599406 996267437 997802207 19707413 724743886 1597383 141651490 595949217 946140637 283014453 884755503 988506512 992985525 841605441 977454090 779439312 918326761 333170258 643084694 39833689 213460204 4127671 51375457 140859727 507956700 607795741 974546616 846622641 930288966 985135517 999228645 257274407 594836250 292681380 477983870 205484145 532097917 4201245 608598913 205106318 682796854 363247083 594793403 636233673 720925675 233295987 325582081 676775567 774629894 372045218 513031308 720498132 917108483 389077114 866366129 269576276 651393090 266170656 505834575 14331044 973164109 944288092 978204529 439292451 536986952 144656127 781554222 521451414 948657188 398091891 550172308 316928268 939638210 147405739 161129239 942397469 988065514 592088768 713721078 618333196 631794599 355038925 479284052 932570767 955735917 157343058 842276836 173405258 794498133 841870449 978396113 291701765 991118467 868549230 908448082 151340966 443750074 51161225 221283562 69384837 323044684 63681333 219266379 532655291 864684830 709680492 764734043 462547174 512401851 164698442 192817566 836454914 861443288 223415152 478930180 379369785 648437001 385604786 573334772 576845285 875454668 6712800 326663677 490063969 752231290 681925714 988975607 48229380 859346915 568124559 579472409 550795818 981563596 724523038 837709462 332820627 540143344 740573332 847770646 137351541 835595041 384734086 589607883 54489204 638993319 8477877 850087610 705890778 902869724 456708475 872764521 275473318 937846762 328430047 940893186 697263767 988821458 491454559 538361864 656550197 751363950 155463768 554571439 7757235 279326660 231063195 541488647 278055034 878050729 835518102 947309146 989127358 999186211 75714397 817268692 483446441 765247658 91246176 930153545 377646421 586427152 987413756 990500734 350056727 708260275 203369587 761053771 944062002 973630438 974557252 998678850 800024983 811272768 846509142 869311839 494914178 896605722 578910562 674010532 342054182 859776715 579123999 844584308 533354062 647342550 338546991 659269381 10920991 201387333 311558539 622543115 172943050 241207420 54756761 994498700 780855677 988695199 738835959 756520996 8368827 157354599 313350134 740323995 360960979 796609048 237982998 698517411 747207525 892749418 296440578 338579466 631491452 795315539 823197793 894217526 719746027 895826259 180703332 963412076 442498848 636888825 53884499 345401379 986964613 988634109 654623116 891159623 879911736 981663521 317004674 655010717 753034207 947304496 7555324 573199418 75290022 277533480 876503592 908583574 541701878 702241726 785193769 946036749 698368829 858805697 569823661 680764356 116093735 396965591 68518116 532910648 575524517 728951798 545910887 716333350 304681461 866675017 508234388 791899040 211327803 791641261 259238769 971324207 385320649 706600271 580770112 879649072 45461397 464956039 802991570 833862019 90699984 347622709 300090320 898997741 693680224 865338621 307736464 496642353 274788644 631192614 257299710 903235100 698269934 928991227 829198087 855504029 383354513 961912828 564518384 746673751 464165582 974960904 7917167 925244869 12152410 447091989 930780117 990947956 141703081 812917269 453516154 512799484 219488790 757081575 721391178 791913306 983406164 995410678 510361103 890075524 305554564 995229717 38175276 935491383 555751345 949350849 684989594 917423868 810638818 865803583 305431388 455080258 928727502 980746235 956227610 965071412 370271911 837137396 951679315 971425264 789744698 824612516 649468492 870501152 781683742 868818194 647669073 752159810 467365581 500825234 58599143 483683821 429868692 813039026 174850298 229734989 278296183 877820039 244479348 432547232 710614443 862109890 159305840 492228414 209481985 979247800 959820974 978451647 137698999 845634426 582832447 983823773 862302205 952369722 936578646 948538281 591438600 900762573 179154084 217199425 880779957 888079049 99308732 845977080 477011838 609209837 844219848 922910213 328484056 744882617 132818434 747250086 318767210 911643445 84989172 372880466 747357321 936775425 923548634 941778868 916895639 967452146 669786461 919561008 39317913 951477179 123117464 171664798 860759117 931104060 960058382 970899998 696885197 716660867 925981910 926325907 149787225 716704465 682166811 899689216 636816662 816609258 530689189 889217796 768229605 952226897 937834058 951624147 744192591 997209659 515650844 735577216 23365288 461769700 180636410 318660785 339413034 487559715 707261150 711589951 961499173 963849811 261870112 975046990 116172648 199377435 453705349 495325897 866371009 904526156 90754024 525011541 143562305 542141213 968553613 993404828 803031711 921830315 878404152 974735618 840871126 978974274 176868751 687952965 458095435 515063286 554472106 655202233 365101252 372706334 466999848 497473858 660925967 769017249 278333614 437957712 808562016 822867722 397160024 922235474 491250284 717349732 343050245 940412457 617644988 848753691 370573864 578329614 518619566 871150943 504885989 856717449 117483965 856648596 651941209 899679447 150618980 713872044 347024874 549286411 3023780 755415321 576136146 899289975 375739981 454779945 938757149 953387027 448479043 883217174 893594610 961634247 547651822 997286664 623680789 711777353 90710436 911579607 43974951 371040177 213557394 516077237 425246160 487722451 815954437 946818650 692214115 889790802 255172654 617962726 520124129 538355400 213825548 948726517 704860163 888789484 680541180 886495136 365769489 815566508 680634526 709854641 728400170 934688398 264657280 285347757 726541478 765461887 110010541 129259659 361255813 375365538 530362200 642077577 782523869 849887300 971970784 985639983 192113426 351433910 863348661 887059085 469271058 878536646 484297648 746467489 693609957 789622600 437562497 662174139 828735768 992512647 293028050 318298045 793467982 826435730 450709405 866712319 998262901 998534956 594047677 680149599 378757495 988556992 249980052 791056547 747388017 901929841 630950033 934524631 810570384 890402964 203134794 532246738 913538774 955157038 518003606 876010800 752069722 923849983 929743277 956537912 177501255 995494754 537940226 678378988 262557889 463705557 840962777 893190104 515180262 589818837 968084800 976975275 818252330 929475638 115633528 553902932 238418702 368297531 612074006 718656174 140847367 975803452 844473358 880478454 854581998 943236213 792621891 875642308 879003486 906175644 328413552 335836300 319240240 352534405 587858565 793590144 243126996 755234240 902435287 970415946 266059881 327879685 537372051 558393325 268632122 510149844 261806606 661040163 861063264 968520683 611206353 803305993 615555540 936835506 504962548 936794976 458956907 692544264 905886662 914747469 814884534 935053074 155034259 407619638 680934042 777768982 129372854 674180824 228848980 782013274 369215753 401919105 329205015 762491671 306087540 685098281 278056732 579423987 349871650 970635409 834925131 977462240 660711408 753429761 464483938 523933556 7332502 187394933 719036359 909176675 605064704 923385997 899081764 984272554 271990666 835720390 104237845 939762617 544202883 707266248 376415462 796811894 9116883 664818698 944854813 957331076 254325641 771048377 754767262 854957228 286902233 961968083 332862083 761800998 297513269 511411367 401762257 795178487 474370622 551876608 158539391 808860808 73380808 739924734 56625991 331489789 370138293 813423948 804311781 860592474 126817630 258084042 844249643 901349457 373238204 497289725 456338388 718373866 748581319 884713607 758812186 982380616 227178198 882731348 662728786 686076232 458555316 591183630 710157513 814624877 899179867 941158020 934854728 941675285 64845903 547132977 822246988 982965904 960499903 966350849 882182081 895944566 678094484 971054100 971572674 980663643 191744431 620716351 30507906 724943220 334733798 479940031 771111983 814440824 451463858 840158320 848771333 896020466 937923820 941005569 124611378 938089081 443833045 938190327 269335211 786176979 720624720 798887764 787659162 972627533 978316111 978644329 329710714 491519828 928071326 980237357 748869277 889431395 345502586 854703816 750973473 928402586 583003046 622034543 237492506 727421897 676347781 956970539 48676539 233072971 128551290 235182776 887790899 958398934 740401443 873154070 477611951 667824653 680277928 757250400 15153558 28180258 759337342 950610559 82517956 284699490 853994995 990820298 785233467 985329394 167670142 600882722 19282475 817798106 159965248 813862434 168003095 781720333 328287545 784815889 251082574 475253873 289246627 975229660 17974283 554158775 648983426 786069688 589646466 986467008 360237540 964389950 996876298 997056270 404647976 724835223 937602421 972865099 97333129 878816439 326304855 734176909 670291788 732288583 424454796 584186585 893617446 931581084 144270045 349792413 409118752 862226433 493494944 741950449 374494655 494776248 314646682 964471618 244765983 555057022 278981510 992209491 153958241 254204883 597519087 969166974 600730062 843458050 288143269 622465628 312089393 905840937 683163352 852333941 505125307 619079370 338524285 559856101 256826092 592786422 954190901 989902183 333073942 544830713 199268099 274130854 885145451 886332174 213385200 449287568 820611764 959222156 644020171 760345305 406606695 784625074 600425429 834345288 415336566 689098039 177663498 536775414 895924171 911151980 488876638 731807809 898562177 987331695 221885051 566804162 624392250 765939923 473963797 856905329 218196755 708821880 943566915 973550064 605381554 936840897 135887018 920155585 299534908 580513980 727495877 811619859 953577499 978288015 447997536 979916934 730697136 855937550 387176111 441323873 1992129 675959833 29523386 686615833 341725723 777629483 417959817 937496230 285399281 480044037 276450757 375080118 33723833 663300680 335803870 925201290 330889398 410528730 608475223 655686991 327014273 961635744 726347823 821465451 195822035 237952578 846102997 903470324 158385730 372407711 868356486 950101161 345329993 985436146 222360207 259922712 775392408 988589492 709565685 896386284 454743061 633468878 21055369 558918888 133234436 315605699 812769264 956830327 309310852 784259142 110037996 793034663 460231421 743972664 304520699 580541412 35116672 998897350 205363548 993357598 787368456 832217081 641586368 698608352 83455942 325386266 392601167 626534958 687920870 917187303 197204445 300793283 975025373 996238377 177916925 583386355 987229264 992230034 520142316 537470369 309073980 502528649 610140911 706377455 511294609 793961388 782679045 790237707 637963746 891960567 836831795 935083218 260539154 438979573 607613985 808062505 592576605 735707529 596527537 607154723 893502559 928384793 609902616 982209718 339840973 814681108 312160615 674613844 90172711 421963327 957985543 973751990 567512698 632933382 890727496 971411346 62354493 507024328 467690020 526066454 140346917 668247194 788889267 854573894 373265559 669530333 344890869 955476304 829171192 917150622 428846182 821514282 864417438 953943581 508432048 567664050 109549112 117350473 495067788 897655996 508415246 921178950 237302517 724024270 620031684 823215585 436050143 926264690 103343442 149914356 785268279 995140148 900679302 972934024 97475768 974945113 943782127 945633594 552763562 858904506 535534794 567243558 131673901 716694658 883141991 890882219 550010927 630521713 585975894 997605441 416800399 478782037 827706227 869404204 457573689 897512169 49526659 335990272 870574444 953194645 706131283 774581954 32091136 351397778 352503963 464698234 835155535 884979254 81890820 730818872 40108743 958095249 825581329 954688261 596433046 747341563 612993139 739287063 359241994 901360329 544764457 745257835 945041122 982674821 137703359 195660229 262281856 776478830 986835058 998613412 192348076 908719586 327442944 862051605 34254055 878581300 528040702 998616042 373113653 386335804 368827998 691222555 230332031 547136850 732571503 783924325 570899110 670178394 499308469 531378190 787913314 957052594 868224719 905082302 317452156 980207316 255367069 691303563 816492096 858632588 833696851 998265167 198188657 262340716 982797521 983749748 903504686 907413537 364041537 790133738 355523084 610533762 904716239 962740020 828385471 879609083 225749932 866216772 474047617 876434409 148739265 957287197 364020619 909564855 155568690 938746304 474501229 673386946 284576588 870446455 377905736 780565242 689781196 853033358 704368654 728452454 594519312 972139917 593440339 807332866 814550206 826943488 251662279 479276828 106134190 217998760 162855014 865817688 262462192 408418168 151050905 530557583 157774797 827492594 437411582 918787995 244407174 420477503 848657762 850653984 846227947 985027597 397313477 516771240 4574155 470000300 681793580 789341632 730748757 941571863 408438108 976287620 479529484 588856527 35949828 551989202 211315218 926203592 726045140 925693766 267624329 595410039 338446740 446986960 223738019 311955218 711994552 913547172 453142895 863329623 692305227 732816263 305759398 781019876 482543810 909853287 68731641 661519166 713245395 975332097 118925337 669285802 888968773 968467514 293642252 522387384 506920436 561065194 881118843 982566711 586455240 990486922 715865830 933553860 187680469 944158502 939075792 967470614 889503213 905466694 238778475 983710823 740484494 921332119 451841329 471214047 973120610 981295550 47497153 688022081 618346997 966716401 895825822 948076248 280249965 578234649 153074899 497286290 308655614 629986018 321030317 946513716 875147954 942390340 715408066 793859073 374822393 765928501 47115625 405237018 96070018 171211454 784709698 906860914 833475501 945910166 744937848 865494026 151020658 437731455 955512369 963380855 606858148 952813581 545588636 552719057 831809459 861006130 306300957 421625634 667589570 688097485 273969917 524822200 971636023 991522417 937130397 957112966 572471452 864160220 849962875 919613247 993059847 993764055 14823687 886950135 712300645 738921488 653810403 679578655 278238349 790513597 596499375 732743242 340910734 553334738 443814359 995243051 506825809 778127340 523888371 822805667 629156703 744405064 909301656 970186227 60875565 699641525 798599430 941743409 657176377 921766157 683526805 929408836 90535402 559292070 69617523 679634489 895915033 946456152 310946875 738351987 584241938 816725653 418483692 605915448 700973170 847121630 212685510 363619435 818879490 930519798 304438868 539018690 834385685 966786719 457684791 894092425 51100939 635173795 617085202 704773807 605476852 879916822 734507156 915848290 599141709 939954411 169769160 985056172 602441719 925561582 857266504 897736553 156722747 438967984 575259916 769141428 672899045 863332417 58678921 538175911 133808532 342981194 172517526 514156236 776635768 792374142 190651774 700798131 121084193 940694448 520041274 853611370 114304125 650316014 516781703 914572930 280460466 866297573 918047908 978544606 48205271 721687995 845722941 923892493 11320179 151323260 909913750 918885882 160768654 266515797 903523865 948483017 15428777 919416784 208493224 354871952 601928245 645174058 866462321 976220034 324820022 752090220 154450887 566026152 635124472 716003779 303578036 530236303 19116214 817136057 913647674 998767224 212509213 278060283 100968489 277752260 519202367 576550478 825700250 999077925 605573312 713553472 541140110 724202467 992573679 997645985 724468542 910572875 95143214 306029251 28303129 994138226 523174439 609122664 49163982 73175918 635963645 895997891 769621032 943434897 243669087 802482604 293136627 440240140 236592082 637437630 771350544 798052241 266127945 797317984 645127754 707091573 101744175 149302076 666584113 897867504 913032156 925818553 196019533 400228017 394128576 773144343 188569141 786978544 993979108 994307566 255239490 593426489 761437637 988357173 924494399 964292829 300353512 683938999 941975059 961338187 217042497 471200216 315130912 350302669 500727093 552547521 888292154 996914949 28434185 735121730 890697784 905605944 445798419 822114164 72242104 426872819 329472360 770591632 847196451 959555733 138325082 365610689 777969098 905158776 874415823 875031065 122476948 311242813 739981008 940940508 366961127 445759012 728972959 847817716 428411117 670311224 202093491 708926932 940465659 965307486 152532305 762140296 426771232 596420255 872746498 981206149 217909356 462205649 297980486 341558555 378903195 989320226 572375945 602466186 233255573 932744308 34676512 574424922 113782926 372170865 150680424 935983840 228188862 241240098 730054160 893629246 234148094 783904942 353149971 556205125 765352191 808315894 48351287 829819671 721851706 974804988 892741785 959292046 862116191 896381566 675274639 864752539 68997577 319689157 263559844 281142284 348157553 725679569 727899306 872481190 570113567 608139545 397597301 854691199 734049359 782262358 601423596 942923322 250313003 494347617 580746565 940389804 260090063 403610191 813371177 958936820 778751735 809370456 221771544 386249606 808611217 992256957 287833147 913519263 587989107 938219309 495634429 650591052 816594656 882037480 433570038 937361185 725131971 980588719 342237212 587902749 179399091 820716220 376094125 853930747 914217923 950292020 367704669 533181720 179963770 829588326 46656694 802810265 853464929 874897770 417555256 781284329 342231747 878327579 208116545 889756648 414693375 715981232 735816108 764390850 618792134 966848931 279965552 528010199 510502678 671115443 427776855 465586441 427700328 659390376 507264325 985983020 79668623 921302200 291521249 501357431 522182297 570924048 459115323 516063520 744524711 756337235 153599441 465364128 219340699 611395692 234788524 866061784 891566770 925369585 221584717 598035002 61357798 727379949 578611636 630283283 803273255 872747050 635683246 723294505 255470664 969631985 702949274 951966016 726514147 852281933 305703285 641851878 739561762 816308191 445416091 691154939 775351768 952075731 503762307 887861593 656674899 959693245 58529761 492484937 709735708 812993447 888260861 911982761 80316746 424557180 517224758 941410726 972766551 993415023 625735952 639815317 246816081 334595473 879352209 990146426 656195520 688063501 213373761 707657562 870819226 949737993 121301609 647230915 827908949 985052548 889082722 993413143 380450453 652930740 721144053 915679931 218859438 530895202 394335423 564261488 284213407 703102423 410539220 570627308 875452023 918077195 122741721 570804314 283674951 808895331 520359397 906664307 579307710 858243573 756135035 822945587 615882539 758138829 356968000 996767902 896901630 970909272 216492828 322144713 498344995 930337210 179781174 252532968 679032990 978255529 306087080 846466430 498556642 902294265 480339227 782089162 686088167 846853993 146323742 618994034 622613066 701407697 240920975 769006508 715072922 731491674 517554030 587592833 91366592 859267712 112477468 993240205 589234447 794071304 780450929 979891404 96820625 649923404 828045704 893466447 781094748 783772921 573488307 991091995 11439083 251663508 20123873 216981970 982299224 998798190 246337860 997500488 458835073 666777104 928699577 995659847 211831090 290236185 295631377 466198157 921081038 978356359 532311252 679309724 427316745 866217337 56420121 927339983 349806985 682996317 688294914 849707431 953400885 985249622 854993305 989439389 121356933 210059278 165072344 267391459 637554827 752118560 224558951 259345570 57227412 966411096 41933304 209781218 847219910 977333801 802591687 912083147 933131466 979379012 836403482 873465907 762689130 852472550 295574462 369806983 78710902 96450558 385842840 912831646 776168999 963745214 247799788 577551150 442738082 600462944 471178485 963447209 86920531 676220957 537427236 998345372 594938372 777148668 151601165 973356199 957456687 964770797 761207882 843668312 246124167 338262999 271744387 822225220 516456741 664684378 141650150 828842152 407411463 658710128 99465438 254629660 345682553 548492275 859882457 967730371 730012454 890850575 207115647 452395346 760684062 805761095 593171606 833923947 497120428 499009340 740899332 984299240 289316901 702864851 265745398 344844714 388845850 994844251 453048093 647097809 304532617 704328341 128498871 219566402 991820677 995668437 54347091 612533658 819508369 959282748 359463452 642609899 674762323 767744313 9065298 9466198 356209685 855380851 793351277 800661452 565733939 611910324 344167833 836556896 53240361 629170205 799967175 884889786 420707304 785117911 588692230 733391625 113015849 481003280 105125058 509824569 342649856 962966882 136474597 266930920 907245671 938845651 904626732 980700537 74163204 842688581 413408437 813606354 711173139 793747927 443603882 642476690 538970496 824766859 713916796 720733453 188781444 805163592 297761503 601647259 868627167 993198346 839708524 880745194 875715091 992785881 936544167 997730200 174425427 238794328 748454651 951557136 280354647 517205439 646967096 990517152 805935920 883245106 132521679 781798526 934205843 970457756 124177446 488190116 203220219 455756528 814734620 872608785 951915543 963334321 908027899 911708416 582417732 794260357 997661841 997823840 790795191 908222602 403106061 530785009 952784495 998876930 582864755 911312557 699137793 722507872 990948837 994404394 171547732 355793790 339441344 721669315 23198449 292284042 89884889 138582539 17030315 827565440 761073040 901216009 28509800 650708490 972657337 979815468 678834332 950663553 746001214 747582800 758956873 826045064 40406507 684776217 443440466 515348402 459062321 602182801 434993020 730601261 721450409 888719929 998097235 998871761 391630585 536973991 125079593 223123439 612694768 674623398 50152031 115661091 533342247 728974135 669027647 844421866 98275175 660852907 629796 370136199 981948544 994930217 200033474 516202163 111263047 492095898 511021598 548650200 238343145 882685803 767965405 888393958 42035804 674769951 661368821 774480693 320909181 911305531 937849309 970592770 429643398 697306502 431798266 820556726 365717973 777236229 624965948 627789109 958758631 959684929 9806596 266141463 970856970 996471890 634393425 885971158 336985343 443553578 266935184 998461448 842136363 898744027 20609001 967043760 831449287 888431779 860932511 861547969 572521145 856490449 848456679 853670133 684519609 822942770 184645155 725590444 526859793 736164991 219154643 641236562 389183042 884319324 110864507 953499900 293647594 572169310 16256967 949263033 674613106 949403707 204445982 822138541 481438045 507083882 428901745 958306882 389081399 955507451 981022378 994747772 917207553 938889333 689769543 710919413 102827618 858378496 884187403 894192930 113035522 761851296 814631508 904319455 822941987 962471885 944827429 966796054 30502245 803485228 359463656 955919542 948200705 960361310 394151437 611482670 93135597 710178211 245765471 953027321 899756281 914532045 947433882 987876571 150902217 787306494 353517419 638516126 341121340 930873422 52049028 337881830 956822576 992842538 585187256 928590543 289955353 553807822 622915643 994683806 251870282 520455668 879661392 928212469 974813115 981531106 139682191 947868399 921938332 939002401 494916821 632222000 16889641 579731175 42183213 985447543 58171062 210284996 783366167 896398580 411338385 973142723 510821979 984885214 59814544 585272991 754482326 839549529 978860990 985071553 472381069 882910365 184376634 335835127 435727664 759668204 489645461 551292931 870308886 885801133 939573979 948540234 98419578 191745556 234444992 819675577 373789811 432267515 242490136 791074270 806907378 825445255 979349179 989843943 335541725 938177182 512574178 859303245 806336504 879383030 718620145 887674127 72370877 663920920 443682310 504664455 15233381 546138319 185993036 705069766 217855012 665168205 619874627 668119272 180397227 645388379 824762907 917029163 404917425 736677356 917662313 936798868 34342154 880586556 192948039 250011513 97575229 485559806 128811712 515116027 381745867 383298409 529421167 868707889 249698693 468148289 132958079 168055263 471311901 484426012 496406636 824437020 1714532 990934563 875359497 891115556 815593818 843957850 702221208 826178811 522553568 775543488 885945499 915609732 736635134 935221002 635540375 903773988 524033394 810011798 428601677 786142666 21861282 337956008 899549886 988930006 972355168 993322148 252503809 894032483 560311242 929458357 607621373 928534243 845760449 941866581 704223667 820278346 960165588 967104141 619769132 860420456 921767828 922042595 993357366 998185636 989297670 999090954 343901914 929380506 92957333 743594989 303235656 806722737 568809469 923523487 31560730 854714896 868858236 877674772 104040048 367379849 238040958 448086558 626355286 687079484 900888528 961437217 614692574 675896495 465753348 679855683 800090553 894000481 618676847 920580451 761592110 967379173 190804180 450786492 309515789 552757591 912493008 979214034 793407668 885083342 475915391 707888629 913063058 942263927 109773017 769473207 27587471 991044428 27714815 119921878 562515659 600040480 235169632 300852996 897984394 929014544 24599527 60884117 146514040 713885403 491647094 880423411 579809633 776384101 438358565 852342076 42841272 721457605 226449245 840860753 148369762 645661885 175757496 848818749 141941857 967782134 121005662 682422903 817916161 877480488 681080707 976331972 312483896 788237663 23246548 511272053 142011584 313009083 603907550 670345819 918892146 998747924 635946195 667858615 941419737 997456192 222858459 618428221 254199703 791241585 668918013 797317316 524847875 873596776 685606600 789247258 94613422 434094692 647080504 675355241 500029750 505124877 394171730 455113963 160154526 734169683 213573240 366652232 270793226 358382505 281426779 540012030 328349539 656125671 414012844 643532720 998694933 999122276 151546444 568366139 80932168 846365161 541928844 816963850 962383493 998822374 348017492 609507732 861873702 938606035 686320437 692821377 313563473 964653238 465306404 591088866 567211522 586492290 270067022 515528883 705162062 809379522 555337839 696868904 597195541 762191927 541016727 961441557 367084797 741665777 317981265 967597599 845265101 886556577 222682924 401482342 16058290 701524659 251137413 636598006 986446997 988028800 275348859 870196759 455734613 839452482 476921753 506051149 194899867 959140104 394330612 761055610 674411592 746700391 617242057 774681659 309603981 825375852 364041245 374187333 641152978 995673176 912814692 962625527 572254274 921734758 101866840 927251680 327975511 564230235 95690946 547453586 521225480 768292638 220587274 712007156 77655494 962788822 542651232 877041986 802996620 997040532 834308728 988817386 660420425 708456043 117762666 398617375 570639370 662645232 524590009 977798531 24679086 879608643 414927576 876398317 893755981 996426129 687438546 831275020 491346946 566569102 949854427 980965170 720737492 985124272 931935655 979659616 408822906 804749114 909724184 910747014 681803984 974070591 806412823 856080874 780686265 831570358 325318241 518463461 781853320 904323400 921260751 974658702 753331848 857019574 203631292 882646423 334774159 554555665 701325904 745776560 528910996 841448310 22890109 805890621 48015730 655294611 704504820 871196372 457743307 689787362 116803748 879435532 549542980 657361893 862382390 869202834 54306438 64381152 408770718 469916822 145706073 503661071 12472099 535114699 444745210 864621276 871771302 958791256 197265898 352201860 25906845 819656964 228404778 417780286 579727963 875686377 581091954 956117457 676244794 898850451 799028912 840258069 723400749 828876494 881153682 931314891 177012201 500331561 219192832 900266535 591569401 755082140 408177792 778434757 701815906 757020649 44067346 639156632 742733106 851256905 336918413 677645322 332387667 525094237 462381161 531418146 358119984 925803693 109374089 296404171 698816682 908328902 60373696 230877574 269200943 966383286 390547411 776649645 30856647 512774146 746552110 898650782 184646208 892476340 695864069 983565189 712357920 721102924 122316910 975138298 600152109 681482541 865666814 888394354 671084648 863224350 619202054 905437928 376468239 994262682 468745473 726220231 944739279 974524543 967896410 973058713 292365595 583733416 265415514 942430720 905508946 927663863 691839328 959159004 92844369 633488283 628052568 834594735 772295371 941784680 95277130 984460660 397399881 757745076 669298006 851720785 19403194 484890070 756362777 965942711 421513242 609653064 371570194 941962095 500637681 908339601 332788072 947759076 933877659 941247844 770078719 791310693 450503184 698407663 164882864 931159898 847451423 987181889 852698432 945343449 488165920 680879947 652989117 724177021 469505347 911405445 653725311 763369349 498086418 673344672 609578887 778158700 87181454 323210044 793445534 884966636 961834528 980501658 557198708 787666689 363497105 465521470 266902970 589545827 631597916 695401440 873929874 940282607 122516683 648856872 89510387 540948413 783053632 884527773 39626097 495622731 461714465 501314101 414827641 560060530 986915813 987859252 992508629 998662941 686892731 879710373 358079875 682036020 65782949 689878581 785963596 907783894 391836567 854474110 372721814 958712589 769218247 842147871 686425582 802542774 346162818 558144317 854410889 887371131 466816615 961071347 861738587 951262110 896358343 907548385 943664655 960551825 716646094 959975086 452059459 626882636 12161171 888386264 270579794 941541554 808888162 970794529 859027062 924934754 454435777 661195846 376867596 694811118 596813318 726972298 205828406 327389616 62449729 848756820 14152704 438872398 386370770 667944943 76891807 141848393 668522921 874416958 886432670 949237455 641506085 995507439 663173612 882669622 776880661 796829360 964499916 997160228 697375828 904186713 24709119 555294622 255407175 708142971 573610725 758658059 147781214 437639902 568414855 661295481 53781741 127693926 848692297 897834476 971926266 995341327 6518495 526122035 481004776 681817386 241207412 438615405 8875654 124791462 845510581 891597756 796113396 821552882 395291816 595868318 952686954 990459770 103117041 422894218 439092277 573068258 568388406 918566215 436023935 944571422 864088309 880811435 716957805 752189051 263273241 987799248 551539705 833369771 172652888 233773187 290686565 484239002 939747314 969453059 880163289 940292390 958547830 997429842 935015228 986938589 581120841 789053128 252613879 565421473 795539851 892641917 20823303 884899337 62951184 920684814 733133276 869713932 163832409 794122863 289972967 909291806 548926808 905893380 609784342 848252166 5992348 17127666 317117399 779864350 563429702 854690277 129852705 793467736 414063841 461069492 701777987 948843654 107550782 966202451 125268998 932912143 790105205 866275269 315465896 766225186 194606177 989958481 494748805 689156487 83963145 294885929 143746565 179459712 541091785 884683643 106310879 641655082 895759902 969137856 921487525 925272294 882074235 927166246 902120304 911935126 325030210 482837568 823962876 893150662 851295966 951310555 283379933 662326093 612263060 786276106 691958437 907753436 942821782 948313829 589838998 713428852 462147346 776499673 777963215 841247753 306839855 693902629 814488162 875720095 188497351 519340909 546674915 944180816 667425579 749266679 582872397 694728324 703828015 891265839 526924375 757826932 326800215 571792680 19193100 224363921 329987503 394832292 80261894 442387092 428753050 580235175 226253551 908853171 646985117 889310673 689799259 796271579 538082783 754023011 394156814 499634770 256340687 944616672 726473343 897906585 527865484 564620933 686066049 901805104 770993674 795398127 282417806 857276736 440015381 644662638 221236282 532261304 801241774 995160771 940768104 954253161 487129499 730097823 524045841 647227264 382169963 810078533 31219070 365486149 49002196 714187555 241393925 412405253 787802054 848461752 868435298 980524614 719396670 777827459 251383398 807776431 608048395 785343139 743453155 772338718 157709425 865456664 540691665 842320293 448140625 785703393 928245520 934270441 949777657 968765458 90383302 294866585 878642572 919853889 380329515 991976074 34743567 123454593 162936991 209197123 868095100 876861257 649914949 971495959 149021115 235454809 669354161 865477344 934285681 986366281 593686300 865983235 295790030 420747638 759126418 833137271 378310898 462231427 326080290 473979220 743409026 901621098 861763133 989335093 928355191 999390036 767626438 855301903 959859949 990044291 329314928 936381357 835680491 903778400 12056194 854544456 834143305 903610483 630456389 703097112 97406945 910591665 543981313 736407201 73238920 935065322 607734480 691486831 476544783 518630902 636707971 772136780 825506260 859191141 373720586 877405125 555457868 728042012 563553007 635637127 328022131 472475060 375596778 402775854 132296497 958708938 37988454 257756006 509744749 778521487 611937841 853601588 268075635 789073270 724507647 998101054 68819343 764182263 279395902 865785653 246794761 884734221 607126085 883629954 101697932 239182540 250062727 648777150 279468783 840779434 295799931 857253977 102882796 919428669 408458272 912678478 381045361 881952086 569147458 726813299 241608473 659975855 333691220 847905182 365792693 908526174 809648972 908638347 230223526 310729845 722809184 823823462 376371304 595571048 395146817 916005418 553112958 909779971 777624744 954991734 612350296 843430850 737284064 818997220 336740606 988288706 930140378 968229295 908883354 912524914 450531471 731254668 890822083 948187003 964042251 980574936 960286475 961321912 313961746 625629439 779672725 886007452 184673822 704420949 886703617 930122811 633291386 837722100 486511382 703769003 626168817 842620888 954509623 992397550 658522420 960499901 758702953 994190618 548474884 551144583 293810971 769373649 539584571 568277383 455088309 830653723 959066846 990893188 523929724 878427539 213958456 593180216 875187757 950512722 779729080 994427427 886006499 900710570 972057893 998475475 126336302 787422689 20057654 564237217 407518175 490797185 830365157 848375132 488444545 589528736 306719076 380783821 812847152 944633370 781164437 832654506 802471966 958166664 380916924 613052710 124105953 847572335 651357471 985523363 910645344 954404249 827175873 912716161 481644328 919661831 365921558 983320114 79251331 888397921 550428319 718549216 427760386 506173657 577779392 605241333 407433209 459184351 4370051 946551625 180371562 710428426 244756403 399236991 72657235 809404522 707815830 934807950 626356744 696692813 92778044 270807647 181939274 729553392 433826920 568189568 606833954 697519779 878055726 969371591 209518024 747750437 253555214 825406464 559733265 722348873 65688690 116174306 741116574 914802428 462134612 665505365 521763961 761194495 690681502 694385379 842832352 927578046 911553991 973001087 663697046 980593050 7337298 754799499 874887539 998772190 356661566 722936619 492514066 576216538 813996493 998333936 828601954 924774924 866600602 976063713 985048406 992972150 102973818 464038863 869528153 994393090 437669025 993743351 761444655 807020506 66597553 847726511 699222475 832025040 557610389 883722833 443042966 830818534 772409026 923277032 787240524 973329426 439369451 467475592 534227286 601889238 223408016 628967262 350657102 847937455 807212458 823167125 847816625 978376539 676724447 783506877 425537374 664951478 637779349 955496475 315982366 916340339 664609017 688001531 389505338 727664262 202602497 304625129 944514081 966891834 669563278 699758657 605139713 742461976 382301567 402899216 246829458 397135263 254137261 658458314 852692630 988289486 5679839 564446631 140542802 643578484 311788375 706398751 197554171 853103010 757545535 937329659 326592404 755530559 14891064 815188878 767771944 780259981 441162482 603017114 831325396 955864034 594472821 602801142 41665749 299641160 810174853 936065482 348751831 947498542 865485566 893092833 900968208 907440352 555911056 800068038 258719604 951463698 491068879 521129721 117897859 181728079 657606286 729821360 748154604 901155955 755324867 765935578 821092919 998972361 184840962 460551350 872850065 891256100 463703945 808668651 502180904 882337088 965336256 995136940 387637503 889950702 7558310 882216543 911340986 948808707 997859828 998260318 314391319 603153452 274217246 892181721 63094349 784928032 510881467 955957345 732648778 761015442 402730698 642548395 729846908 980008025 372614478 549141618 951960537 970289278 871176227 979632094 106467958 915539474 202121207 535764493 440635312 956332555 936321349 946338612 553058996 999035787 81908859 635883131 91691984 491718247 977609788 998173041 789809364 940931629 186824598 259677547 617530316 679122397 215885201 651783828 847090007 959633039 311990006 470989818 578179866 700082891 360834631 769680497 729179027 794906244 2450762 222109585 797245348 852662403 320962660 411198830 5172317 494219579 182533039 316105783 99069269 424125520 904553336 922697481 359839874 371011917 796760411 816018780 457989545 788065366 149103409 673827299 320387184 463139060 179169514 250279034 583568558 609149054 327585084 995753712 11061386 227685238 971568015 994368936 434524877 526973184 595363003 709393294 923127440 939505880 632096825 795483743 401670187 653667918 56783380 279450957 648202926 648918390 158804708 424050730 354236513 857059505 704868253 935728282 151466189 697377068 318203013 888413146 164186397 169568620 348691474 463470239 892338015 982692321 746065966 801761295 507713444 645264391 833139811 952642729 919217042 921248381 185163994 953012012 829568156 892039575 842348156 988784084 282579152 513669727 794962522 963365228 498140387 667061807 458284158 737334366 338288623 384714683 956589563 991099698 353303185 555282228 1605592 190471218 323482203 807372965 756035323 891054304 682152108 749302864 552812777 733623730 98217612 623134815 695771076 831114072 550573540 597635402 87977995 934521907 555792996 974928967 754681905 857258873 899711517 921120248 677092453 797530742 668894533 812332621 65560266 887406902 558385796 790119538 132149981 677551233 974939484 990710046 160650797 337612209 832985077 968543069 557181399 964603715 555762313 587634942 264113123 413613833 323519670 681042724 652458158 827954188 810605081 928711693 300788218 850309083 826867769 943153643 632894324 952103717 848402283 980114357 578765933 931069539 128850569 656900543 190182327 970303595 291982402 709226117 335119633 953091266 239241384 680165481 365772808 617912132 50905731 538196902 958611478 988544909 841827678 900047010 362754277 409526803 54131560 936269757 762525792 916283532 507489218 953723376 763825300 796396225 965054987 992719907 547149401 665352917 429347938 554043362 599581350 814948645 85705903 874605879 626719378 788280886 527041573 695075600 712654345 888843917 932722623 968501965 584202811 960002721 352162229 897635948 586308176 924228230 513510449 748095302 751401244 856844512 600224419 976274491 311172043 991907047 643143059 730664742 572484453 668295105 223302573 400715133 262851768 629123660 605625200 643396800 776147571 853335404 861746040 972123345 18681740 403112686 983307717 994639555 811100608 893290354 229151681 426643184 131314392 943047168 419278199 998266294 245629193 646757696 926083273 989390939 42626540 195201511 744312143 745391205 742954380 812985724 21901895 966577029 923316817 953551521 950525449 956762722 299930533 323247426 91643324 315027085 564637830 721533864 756404397 938922570 139891626 718014209 202728705 811732454 169732643 506065248 253706160 517476847 398269918 645331605 722627401 801177648 820963735 997093057 628541810 700150836 493320108 901357264 723461092 831816172 853693742 995994298 280963899 866809950 811437996 866450022 710909745 724021833 669123674 855479333 342142433 413986868 333004892 575869808 834710346 897513133 780233575 805147507 442359865 546901023 631642616 638240039 132411416 870264766 681489559 975143464 202356958 467423057 606466975 693192115 211426379 831431218 483541271 874889725 994657308 995154664 395150040 959518910 397927568 452427682 499196157 978247923 74589425 552965529 243080133 305629319 82937249 175859591 601458374 637969436 220065481 833647166 382103600 931267918 791236008 904697644 106135054 286359941 552853341 634677672 929354781 997940010 501542746 575706942 959577479 988518258 863747334 966009927 870630793 962770772 440027238 820031278 16111791 141937513 767533795 816768674 912209557 974159816 602888551 855787034 913580355 925571158 127991907 941771247 428378494 938424319 73676463 781697827 587261370 644780356 2203871 147203546 798852452 877552099 142596697 481549561 347776608 873334277 72520578 972048567 623362332 770668815 851437561 882159170 347809516 822459798 497840013 928670573 588905862 723721594 161311518 523719356 556907753 688526650 285331916 789717346 694119547 971314588 678090533 782851653 500579957 746419213 599489106 997656034 834314520 915626167 913749454 982494985 447675573 708723888 272966014 338292368 129721768 295184965 457308010 775947609 24259214 558701761 414345653 719257185 558054514 939655531 815590898 943948249 330147968 598167839 430791777 638312287 386199560 817732342 526658069 748918076 279386448 510133192 958159007 988751320 912557306 921357524 524202786 818259375 453348379 593450511 246231426 986318235 41208919 110007565 263872850 738498222 298847243 621776051 864772401 881892900 960584781 981390071 112345491 826477290 797968124 958346540 142480252 421465059 379449949 507316590 489321491 810011136 287673952 615189016 716247427 738409007 868473529 906524898 947408241 985176387 878210176 955777919 799436083 877474686 908168146 962549410 467457490 761201578 447779201 902389528 579444465 802136990 76695974 786608392 950008325 990805154 313781859 862105660 475298773 475962968 815489247 970404686 66965024 572297064 933261216 989244704 462828001 956655320 697817603 735504433 826365256 985919316 204157571 776854662 412679965 913333356 51447091 444885013 344128117 554714116 512590153 627279044 615114042 867208876 464477867 707703737 234151994 646746786 615728492 682029112 526746072 992044878 708458840 997404795 33337568 65320930 92787912 982361640 263103771 623462831 947054129 984303272 759526610 988506458 165948905 802020579 23676826 833350245 281620049 931068817 365477408 560494960 974624509 978360895 926698573 988537128 743462271 802931112 340258411 957801231 499969065 714090100 483430070 532417622 419840411 583937419 191284903 798560954 465872762 626519535 956823131 971265255 998965790 999270741 712082080 872401827 605623074 821144560 6186968 981298369 236757147 691712862 814970292 866909790 612871720 886072596 222832172 448073691 358403641 930021395 745238623 876677901 633964988 807775463 582783078 715398966 935947701 980966435 727950909 839154144 759818296 992730358 435147727 537012257 174348376 246507380 377417346 483333930 928550650 981523517 597706103 686849420 546334557 674104055 433032141 745311472 495345731 797701701 612416766 720486659 467122610 743068635 497168887 686475849 54210638 752833369 871009707 871631608 535299490 920534553 828065529 902103608 595807209 996630317 815500421 911257252 525272817 700236349 924847186 953904081 283679492 490867101 698537651 736873385 513456977 575511233 845033145 881180068 358076425 405470618 652878485 883679097 442144276 788062161 474390188 691579158 486190377 735214933 279671855 331237893 477821411 928860430 516642343 975358812 240745230 903120603 599703075 794788057 816299253 927468026 949136957 981616808 462980577 902286835 93444531 942672976 134198812 838935081 440197122 692607612 640834744 846303429 377089536 804714610 8055556 986527787 818987935 894748122 57801407 471568924 904014468 906126536 984902244 988264555 956534635 956747065 732938017 905487223 582008799 643806558 488206266 701894356 889879910 892443983 448276339 652800679 864921677 910475801 710788578 933735158 612509148 871240028 58808519 696180973 113320457 399458178 490847417 806956146 781421201 802193565 807489163 951676701 614794198 623339157 62613126 411857211 234465638 946812070 712928461 982185449 184499593 291459813 605467465 883395284 772978247 802519479 268682954 663205447 58150026 483844144 800222639 901537938 142086677 480898492 814018648 940743506 46651140 569086460 839454108 853928059 721356176 954802039 290125999 538136612 960228453 961599749 226112480 567614380 28133296 658527410 168152682 435879007 50539053 503053407 156985312 900930240 493103066 555815456 590972162 674731097 189833243 244521142 573257091 875715197 988709823 992922315 223833237 557774102 205714285 602268432 817804219 819923317 198410061 459231950 22867314 250590336 787888564 993071026 229974029 283751412 227033017 743909295 483183797 599921327 441607693 451916569 930549402 965330929 353849544 901481319 336767762 435855345 338967251 718315956 298145460 870553327 666476027 838873279 106296497 633507058 249586022 704972038 841967272 970210937 532746883 546871525 880520629 972500542 286637726 430694303 938664863 992595032 168534974 668603670 211003955 920062685 337017734 972176141 770028286 942351385 585248105 938724939 349002774 682244163 956847787 975572709 555870923 760610756 97747179 443072739 807789956 855441037 341014674 751711005 393054649 771499535 927602754 963182550 121174118 619195182 315871886 455632319 606736844 726231564 475908660 483429183 934466107 981808298 378768208 495531317 394032365 931704776 480075585 768076043 567295420 828049307 223543428 289266048 397941692 835981893 174969549 359635408 682113172 957292360 537403535 811177173 355090288 514039564 440552780 499044946 859059931 939750006 763552996 935091119 307521710 913702371 966150353 971614003 689901430 868517636 557662636 945982499 571163249 695974538 368537207 424983987 482005129 963087029 751528305 889479230 964686 240954665 480713121 826375035 502845823 790340698 608206870 619343304 562922668 797599931 858260108 962850475 300271835 883247837 631224829 878223002 234152928 538069868 578930794 585129480 484512923 862724725 172218197 304869728 638588407 958437569 988094170 997976521 959716374 993526681 919486432 968404716 113402921 399759228 16120332 18848112 720184390 738523841 841809006 991013655 84952763 643489727 869971435 962880487 697966146 882697483 43877120 301747521 781755183 837557393 960488792 963760634 751528161 920696150 803327126 901771824 714538063 724327042 977067 650105559 385901263 936258431 130166567 517528551 530372916 610812661 841136243 942563630 191273411 881397733 471545352 970187743 272974030 383866567 665896093 778259288 875868466 992117709 104929032 901223738 134366285 546403270 686999244 781338493 676699486 728076377 243321772 732967572 590877695 663024103 16505747 545062174 535457346 849650266 408100716 922811305 178750942 180149313 89717431 550306804 887135632 962853910 889480548 917351264 21307825 802979295 840672610 935150500 893106561 896711682 64062339 404051485 516772217 623860269 982274013 985408019 99536089 151113024 977847574 991280274 897985497 957241428 302769491 971048583 41961584 437778017 380240664 982922767 48737717 197052200 16714632 416340145 885846019 971599491 954356371 994981998 210829284 399793102 95436800 578429133 190609686 684473065 143128183 642747337 271701173 826046084 51435279 527209457 296608275 527116268 50975912 594140234 90133457 856582629 874605592 974841676 859937062 884143206 404372073 761319847 383935896 944408078 539474516 688856727 157062141 545257134 256746973 962514783 234559709 651729147 567010608 773776486 537716136 583890053 353930980 531416633 540625957 597016654 870314902 954543293 577677136 786654656 694478547 976819057 905946603 923052426 122860583 336618410 639884373 867355504 716161622 951695267 480217427 902759173 622534101 987303761 100306009 257198820 812715387 860013699 542539370 836791043 15371885 696755977 808036329 924363416 54830918 742775644 371583208 678335199 583850124 669112688 583401084 806228100 773681201 913626737 278876224 660771581 914780659 961393289 176636437 984096604 257724378 802404261 20298755 493037977 553019940 610818305 279823471 889442252 936290875 982225954 540213670 669533004 638352448 897057560 675275081 908396814 453635744 598630900 699113 63790085 653857361 839327804 152987609 415657664 552733912 763518046 581250434 705886083 662154619 908803244 832802624 853022802 780910093 849182972 59241635 242055426 212683813 743923741 535587854 663667601 544667844 689321719 156080680 989184035 788294522 833248909 882759125 975792245 663175170 668282904 92915667 451660185 5510970 173179117 880004802 975410280 508819785 687919586 773243108 792358306 33961738 197917274 890417781 910887190 691939207 875830292 421220949 660269450 326777742 502481455 86530448 320093409 287059567 995666587 4066089 205038804 974313643 989710134 139734796 320897741 789909698 929058074 792412098 964103951 951885242 994429915 283373653 599309978 283255802 545446040 917203077 967898252 10786518 514127639 69890235 989614850 961257566 995943490 135244132 585807649 23196169 661302759 122364646 140752243 976573020 986138470 567359110 768623451 843757115 933113023 961719362 984100731 341601225 565729447 346152055 635885805 831564552 979341640 936999290 953599920 518622248 840545857 321530199 884371199 478384972 581796744 141216379 450456974 784620509 824228357 831802062 900817454 803599535 873880275 895859153 902580288 970268699 998043148 137198083 580468548 958689811 972798202 956340121 972454587 895988235 907189561 637701073 819343070 344198477 845036598 298782188 719412559 284381628 618334473 170362496 273067095 728486333 824216310 877287158 905461028 365454933 633253361 387311961 695662395 922929004 946769840 636076119 914564045 210501746 611717982 887382738 887814315 573867749 918693354 211036171 780581160 215578769 779767522 100889346 411705683 137624806 195403014 597466647 827144489 284056265 851744875 736160027 991406650 460889038 946574836 877747347 978925532 981919059 987609296 99799730 475325399 867335361 904610110 607799876 752524625 977138743 979838728 454888860 662572270 491364722 954733061 656558808 797383343 277264880 866024004 999355149 999357037 62269608 861695239 332562241 716861881 110122620 462024964 877252600 986286959 129178114 521527360 561062030 671500766 873427167 974603838 924984767 947298285 332830788 378807318 117068377 397661043 383647073 665672554 787344420 992049876 244372251 439829100 848273828 924314600 957771367 981429486 874202786 890881575 475746361 585168514 164759375 869948367 90339914 598610253 774963913 912783946 879261323 946909655 9722359 798210664 830589593 862407782 834091053 919699464 29541780 360613780 83312461 113676378 577263796 954893500 645717972 684067093 223035904 826790700 749019340 898168409 616156208 718570740 145984039 315523763 459622989 743460538 620642108 932614192 424190099 494375149 956889533 980989284 450756225 660438191 212697576 841401005 282333053 723738797 971737548 972604070 459626901 845930135 366164196 390624791 993824381 998601356 566955943 923718320 59203891 554305275 176808373 681946135 192790791 242405091 419117932 756521559 525807955 690991396 58001702 255295012 400289593 707824548 932114876 972156608 671230556 768567224 185706405 653093659 484326583 671440469 983499890 986402923 5406215 390380829 658068393 683571928 440052045 589918919 63842959 857479953 63261648 263308340 380527089 615558264 447861649 933821220 463931336 598083366 52166401 487494450 100728620 519944012 875308901 903273296 822726396 979378703 299948198 368440177 646280637 951606897 623501339 869221142 634319846 680088764 758969096 938280195 386317621 857975271 479688172 658184616 917614247 930733297 538462107 877359091 470413275 932519617 350599475 963694318 951922042 990580432 176332364 557136882 689510863 976468027 261131134 896844391 192577090 966808727 768993913 861511382 546369507 973357170 518555458 679185063 510565794 567595130 663270253 836218890 865212799 957476491 406396476 664351857 427556013 857099709 511400949 881461558 345955328 627047823 771491178 934089945 599557871 695823420 265955863 308641642 681061754 914890414 28725113 346399750 235948357 451469661 194194129 562824859 546342076 675853660 221402399 838136585 304029042 787830360 462073386 671934028 214550184 451666736 660811615 663100364 38473617 519256797 445109607 916419148 546107224 659951365 994057652 998062237 80100533 253017045 851094749 872959394 310673253 638757757 289421797 403943047 849222674 942782374 160902846 860031964 786761209 886636503 787763491 903470180 95821327 746607255 744782312 752228229 736712682 813055444 733425675 966148930 713685280 996536821 481056264 642138171 238839446 309924808 503620662 597484097 361420364 488392716 234194533 322959246 267834635 832211769 693201009 779154370 949544502 969171648 804482857 945368805 414637124 782938983 416641610 619106730 259436028 978568832 999017082 999366171 245971525 677078417 885758250 947746764 9165035 451029826 16519791 222074366 548945972 829019205 403163286 446575126 693228240 859868986 906765460 985649355 244127545 484798437 286437377 874074961 216506750 741601372 672250904 887208386 146213542 513698921 169856147 430198637 368370550 396734900 194670386 439398843 952655813 957398584 329245820 902181992 753549091 781143038 527658012 775873456 461889851 766202925 166645939 916888013 139984403 625362181 575039727 793934147 531850305 923230920 368276109 489737861 202032636 373516816 140848777 651393486 343469895 594371045 863849880 973096081 326797811 943289636 82136231 210911785 925558384 994964070 607966162 889083874 319450889 408811335 373553977 933128664 545817942 611576407 171629155 397800838 852235531 871588962 299657194 940617715 749882377 947441880 26873552 211188623 97371229 887136168 433067506 654549168 869495578 966333388 345212162 803690573 731712909 895136630 708265758 949327070 474306150 516855920 53162781 918724840 266470886 843756256 97128944 866960328 136190864 464681095 576243796 692997464 665402361 919413912 654692969 732004763 702977800 992387882 202357568 244422660 248655185 400796314 3074986 695734303 760414647 804232622 307404688 991794490 47067955 715840008 368893213 536372289 804604454 967974913 964515626 993016189 30927911 933487356 126985089 536436583 566313379 976324552 368213228 688019149 383509729 880271700 198900506 416777858 379771247 946354936 332677347 734411364 689541864 762058274 909895724 939327668 688195085 822678675 791404079 980937566 481414221 640123563 286088692 668263235 804913491 825041975 397526279 634283894 61270910 465791890 879546909 926521747 236896678 930466652 703059387 900489371 896634163 979514282 46476163 665519581 762399166 918833109 260577275 887464695 866046151 926862774 555317703 755336465 255430579 989542335 540729598 841208084 47554110 693058896 539287014 627207965 499992614 877829489 526481523 954409938 579407795 916378588 956507525 962956738 497774359 995206708 804047329 859058013 510793922 851545229 253852194 844779863 335315176 338064117 562059539 827203012 838164167 937914058 363990554 391680153 897622437 987783084 501134945 529092086 740273055 747800868 509280844 750384787 288097673 362342867 215696317 246625096 321688788 321747019 868015591 954709509 351847555 392706906 788290796 976629521 67909760 700492834 96449969 468344129 286162131 763044707 965171814 983553505 25480073 152523008 468399382 650019750 550620927 810474761 156263919 262560761 753469038 791599467 985977996 987768084 789321530 802900694 462124591 821127289 315915715 329014001 277055296 812685523 569970265 603563776 820147920 840671789 787121421 831746555 743300013 982551102 305854909 915781078 568066918 586264223 153869517 238053139 596214528 795769729 801273637 974814463 470624803 831590966 310798865 929485070 900568098 940544299 827610520 946053952 991095308 999319911 293472334 586210997 439442361 845513673 263812377 913058280 391007515 739629720 496408812 677382907 124308530 458713622 850150452 937479978 809610244 947746337 512359578 712884634 479953408 873129427 413018802 970096214 821021006 855219584 341909853 453100427 133644241 853747772 706028986 750465778 557885028 789693803 205087989 840746111 616026455 860199453 267220171 528048950 954051089 995131168 185347129 271952503 183580712 899408892 792019758 815830563 94578888 606630009 668881357 985144437 811960426 940285069 614729469 910262733 47140880 182026527 787140157 956729033 646766485 705704568 221225679 696477495 732078228 942157984 31888199 721461059 84895887 619515918 801541608 934253931 133032114 249511689 820917568 897293127 503452705 577305205 400238293 553193783 880863348 986722397 390486119 972933060 868997809 925490943 107058547 221170108 501387770 521385856 439407263 559578119 223337141 917231552 59830900 590751589 119129333 307651839 594682188 824034134 133673879 917495661 33465522 199118897 375567023 799434491 547875681 552543229 353097585 945020450 289605187 594983220 541268218 837882507 366440915 626784826 715504594 902389611 108803006 464027325 351996832 405984157 65227885 238991406 621059889 834555659 678566618 865236483 2251051 711895499 613451 728807397 427925535 687203299 151306471 508739586 168271116 778836626 998961792 999057840 655046906 848610475 202022810 523183861 294934648 322236627 847492000 981913486 510678682 532578720 544345630 910966146 626995421 909077389 992207536 996632468 535593891 809288190 370124275 638651833 116687028 715466130 6163304 579663434 770623377 846438392 774159834 979255827 964426658 976104819 818907003 933923023 695216574 701527623 937620119 945191342 468533871 644399377 678488743 858270897 562560769 833071755 428618938 446545813 460946977 673903051 380860349 932842930 323827758 391293514 42946207 335472143 659940504 688370578 354267751 357344382 341766347 758574019 864770773 874608737 708234193 767969696 895414163 993245895 824894857 896835446 453970131 976993614 284744828 435585945 127707483 214885036 389138967 622572460 797502811 839348546 170537315 671248748 341240739 866719641 428931899 631908387 107415807 934809535 107388318 624427473 813293331 887670162 352714130 486434901 856830145 955911236 27611959 660872848 231453629 958457090 36316010 455505380 925068345 986618761 433430210 732790450 822573391 997124521 913416880 973436332 828684357 832377891 948849795 995322545 687705901 831990210 69304699 215443717 825537670 875180806 740461727 767266168 631464823 877679386 373684692 375373381 355812554 405931434 274707476 882080534 492891213 873724546 218411515 797788262 677286919 904646720 946602418 960141646 756495318 917685639 161994321 870978632 152958035 219895116 526188200 793554658 137786957 668370349 386956842 443894564 311685506 326382880 261925194 422963953 554755152 981719665 329825593 440677541 807827037 980110782 993833545 997948184 164169839 587885954 80869937 584331811 594676577 874647548 342731746 716420752 746322363 972175744 790120472 877124520 250427161 302392720 240337340 787955746 217374576 437638628 97233457 918470811 879250307 952681817 593061655 760547792 419014698 837425838 840537494 846448599 330826239 514056514 404397394 665665001 707924640 852537173 378262863 906127809 628599437 740261804 644178077 850908895 952974147 973112897 303322396 830466105 690697163 991030821 947510923 977307936 861753342 997835888 542223778 646490785 150817383 816690759 902124394 936552856 66124439 682544306 394429821 570470265 798500139 872331132 637949008 856753504 198105972 699434866 362197332 997742718 879806295 921264106 604962005 755962990 933913774 983740258 400782232 530779857 539886408 593527595 455543770 664535070 79209127 161587708 593413895 998929468 852877231 861965850 319659884 624209582 990160878 990563259 539628537 942028686 34212417 954850430 418688881 614650340 467543862 491195121 539365441 984206474 339002423 871033696 205605832 410419070 796597734 811988926 576735755 766635672 976884130 980354522 942153259 998671102 801972393 920204217 282840794 298613269 582959840 599876656 9166953 232780290 230769469 496143218 153323678 519703973 63193693 763989438 120358688 453135579 981934934 993818609 658606582 926681379 818845786 842673110 959587034 962607423 581924554 598999002 764633809 975613871 488567282 879368297 42686532 850173872 438354687 556310000 781851028 802843388 365523702 752465659 419552008 818734496 540468444 948459718 921360932 979798462 349776771 820030914 704602893 884906389 430559730 533502086 118705963 450579673 901348905 983529397 451794986 706469076 156271903 855934628 75644002 593595967 156073411 280374204 213098280 503166895 774112029 834147350 850718854 954653693 531562888 752588421 455724073 889605852 95417828 135190483 852868070 929562090 908557130 928074341 19640488 326423394 345780064 882919314 933882007 981093893 833501328 857354500 283891348 312097702 169089790 490079931 938393554 987015875 198209284 755728809 237979928 437360770 465906742 978855951 309362024 714709590 237025188 687951568 668502594 842579196 806062089 894273365 892215722 977606624 662492421 696358624 566365761 579351135 171488777 818422233 884995576 909190171 711466517 814505481 997235852 998374116 159208661 379546997 214131494 419707813 36781147 43495654 806272532 959539398 495745407 983127152 259549711 382499595 60948795 371315772 704787078 902214086 925817438 938556284 512236908 705061746 656923384 687215391 605581422 730153585 582864237 881995612 696459352 916842569 555400363 736784445 438131726 694432835 798686984 874951962 909717399 928689675 809011934 929310985 319471537 791847359 731441314 870146706 949761897 956861749 67915246 875542448 198960851 209010568 334927166 437976048 216539421 484483082 450687914 759790476 193484997 873251005 734890439 896780513 169984851 613928580 965827080 966285767 141910710 445693923 304579259 340372161 146629860 617295361 801280765 845541989 193376956 817438509 659992374 705971525 748927433 786816675 160052743 866518529 384163102 700965191 861483013 971340740 940966256 964229743 34606448 717923070 267633744 654511296 363478743 931586596 683176340 971377607 994443098 996052137 383805663 653473414 6566032 176115734 457165089 805334579 161240256 536893195 795296437 846483592 671387805 731202345 748544502 808585083 90789323 682878971 874726032 874899352 947948881 950180375 650109881 781672810 870912203 956014786 771232557 813805278 329681713 542628233 102697643 863873555 293168245 664994506 972324902 998434239 442381196 874624803 193549256 934186262 110963032 378062134 268801156 374278540 385558687 924820961 377516906 783911322 112191924 177980479 495523501 810331035 419376254 718307682 850546150 977619744 246076927 780953657 393401635 539072583 220859985 280952664 54469797 747877524 707353736 813679376 20556316 597541733 838551726 948781185 677663531 839023840 583523100 990231379 832667699 917835683 253982054 664647056 727856496 802281396 318067378 743201969 360131479 913001800 814254404 883786223 291063612 651546376 410173953 684861496 144181263 563886476 387294246 629103242 807061985 889847152 685314904 703496685 705594358 812930534 614669032 780228235 164819009 388912588 52362757 510317863 643305709 684243528 234540968 289159822 790859158 911818586 428831083 905503697 475498410 783981322 451010435 721415067 710491474 991090587 600335146 620321600 494345902 557788701 45364929 167332468 932595024 943751646 327337846 798676710 205021487 560220824 765725577 852350139 433558819 511411554 726976656 918047779 378238686 950311223 89990477 296756253 10956835 428341391 609559220 851676746 76700724 468052196 734981439 910600443 106371214 276883297 674063249 781427561 98727959 557691074 596151495 891773586 477371617 814474247 456954885 974239550 679189870 989018622 462592511 930735477 905715529 963008027 365256528 694355889 374559001 755985479 702901489 993890740 1848454 547812971 765829860 876882333 29877263 862900650 362155782 659092727 387276426 651352750 675343813 892623085 729391711 773906932 646253022 647593420 997541209 999108269 99681326 449205937 217615045 314674995 405479764 669977431 500894188 707756791 672852088 710494222 998529787 998939807 951182035 985272259 34496302 601707809 396301550 859253443 272203174 822757377 933656425 979168796 579566646 651365574 160338512 531984916 869855880 946376190 963263573 992450887 590520688 986708957 239579664 983039424 484153775 669789454 348493037 620965640 79407664 546060042 576878518 604616187 69739977 567176827 129828050 835447969 93999483 817962153 66380187 691365938 122463535 377510353 87981722 153175708 191128864 218242652 570325791 786371901 370663824 616999062 973449348 990965787 689869819 731194033 132906076 712017715 726899177 982244163 478901301 894087622 995833768 996725532 717303329 833691828 303766089 915460894 980255777 984388961 586165021 670849458 176103695 471489287 850903182 922261948 742957438 799501373 225647308 803818162 454622136 834356727 214945116 969577386 886534964 886691186 948820406 955329291 528272385 727541636 299695788 420197537 38325404 393613907 410241207 749694226 255101847 997139285 567795762 794137426 122173032 870530098 337796476 632340490 480480337 641945045 154448090 976102014 326664615 676403163 581406774 630172129 877794574 926569173 424928200 855387411 742340742 987205632 145528025 875499682 497434778 547852349 425085481 657534312 197639483 357251805 740362291 895051668 24198023 775301478 136804870 492669964 633939891 772456657 379646009 897509373 910321618 912546256 269339879 352480884 931963426 934537965 166812677 294901570 707499940 977696118 494340244 816682304 955339675 990886762 831470424 932870780 909625556 927731760 405759091 555747208 128433773 211546467 909573675 965669948 147339011 814671057 915521488 928591105 716367238 734250029 966802544 989354007 843294924 865438202 357640480 363204047 916678399 946946659 638635994 748349375 332137896 750940452 246244497 506139611 408989016 718012928 366984705 597641283 604887868 772454883 104653656 924504363 824646728 993372378 151654740 674084461 482208811 941824180 341637696 780115279 545238997 555994174 175375995 536281960 867257038 986183860 123710722 355268912 704336640 864226988 254763824 748241281 78610606 618550865 15224970 812258245 479266409 794691489 510314569 977565039 23124835 156967284 38504177 541211135 867486417 943770188 846992955 981555040 515153805 777233771 979672251 992548253 443080368 584266318 888669593 949425215 126895770 611972332 746746594 981606879 902943283 972420086 19887834 224644836 555780442 927879978 354269389 562168366 824575592 831855718 648301810 695527732 33754349 718832334 880133201 970997234 838413817 882571164 499039651 832755654 589320246 937771039 323768797 697288945 931288949 980082202 840114162 863520298 343555169 940614672 788057619 872496365 166103123 250589213 197302525 636296010 780112261 908657451 586175505 688190671 296314360 813297218 994538196 997707171 610813282 863109482 370745143 489163001 255252583 835805696 514164011 949527029 860650665 986806601 585665249 671013458 949403455 995765469 357278054 616581618 149481111 826218191 404759829 720570766 674258004 699320531 992603317 993877857 762256475 932862665 261244142 950076271 890769285 968208490 993722834 998291800 135687037 537964919 153953471 406183561 863717852 969435037 450393845 913022803 414655337 473006889 16752532 540900808 437123064 713655418 808295092 930373979 669314321 762115456 953146719 981178070 162641638 293292315 252356022 913163564 330601745 820523515 794444692 921574949 726794255 853399016 152312464 268776038 984639384 996004694 225642055 697488939 540670402 585005550 785095125 795050974 395192326 494080855 552515777 608035648 209365048 712413163 112922404 199601463 460104723 539255833 313422046 652964592 217370262 667607993 375329777 540045007 642114633 948098403 579368947 794837028 756158904 928300574 714393894 995932367 87575914 93062458 426797915 742089164 310636160 684046079 611449785 685173591 93158212 192499348 476143046 654992323 827169634 863776118 922059976 979368408 61631693 434973182 694402773 956152307 981097026 986449047 229421257 412107111 238907708 675319900 410147175 511915898 402840649 620185257 261397608 299215847 21916954 769624187 72062129 961756920 680470230 993155603 512964405 746467093 339415516 496586099 768967024 833572846 167660744 589865796 618426632 695850879 606100309 855971331 450940000 460484129 488797349 802936830 950267063 978152276 152016710 736815294 288398878 321206498 921829731 939645212 213422597 285899983 663031200 858446214 488436529 873916838 280685280 805126099 751581462 883913716 216444833 548265310 196458561 308815214 632358000 869641856 633873426 825571647 263278417 916193375 58119966 901150214 163247086 351737004 361074390 848259553 336810380 794635045 590074479 869578480 943939551 971599925 480975402 487640527 462657776 616009982 495757721 948054536 709153178 725022979 998268784 998731899 261323630 317815684 418770542 626590587 207064955 552487181 921506961 942518318 408884221 936879730 278159993 809346855 869039441 985397798 767653215 807424309 503050744 827502498 63658634 711055048 160690113 916936242 273024543 838399548 512753367 732724767 770969150 897374572 830855549 836650697 888285533 890939092 290283474 855109883 163827212 755298490 151577450 188877616 503449461 603801909 33238861 889109831 985153174 985183163 381361282 472612840 596617186 889490861 346518935 570034000 99825648 532018477 405297035 727786457 867866039 996351123 552350337 876158518 686325972 948043354 388339655 914576320 810231526 810357437 582042749 600155728 544859234 582238738 721091017 771336099 224761377 657462201 389185910 945209677 747764102 781598727 261997190 532664952 189290642 524196219 576016405 784440686 905620445 924231642 391799797 946860910 641443872 696259364 975471416 991331414 922831102 975234760 850903275 870290690 332173832 342756699 234190700 586475460 484591087 673481843 936123330 969175012 458522801 531629064 662126730 860653171 549259276 822791977 884986047 938356486 774406393 965926930 576048676 622434175 746508354 857774601 713301657 810702651 798800218 803804775 945725055 998553595 167307150 175176424 892925419 952175606 622076623 946330395 179696757 801940675 382895231 707772040 951318761 999333586 786749580 987207008 199333249 593451552 755561141 981605814 605392963 695045949 27214775 446443702 858943434 930285582 871392371 912295582 513765656 659469682 873414010 910332205 536267 525154603 264666444 553711270 600658924 974098222 723974499 805380845 283517262 505420775 876351341 943432658 510926406 762683038 500454574 852189550 83676051 430104178 215548778 297437628 972747929 976301032 799895636 999017759 504629185 643120375 353056767 636728887 162812702 567847970 325270502 569575426 522520861 957865876 472441567 939604575 454945619 971861672 663112137 955440472 455573591 749594688 380916440 456847520 918290736 961136519 931280196 938908828 131522180 825546297 679272137 878252987 773036586 974688803 465601039 513323789 912257334 952725247 800007269 925061523 360476791 787314605 304239696 895021132 865272852 996407719 287566678 628827515 774059330 881761651 802035122 825271112 220669899 870251178 868356580 910944686 296327329 478283432 67606506 524552792 732433270 892599468 171004970 343599399 708848280 964541343 592214111 629436128 847691605 954253128 187342845 998815494 382608265 579293979 955330244 975430722 369181823 775104281 160325098 354193446 697678033 719364086 499578388 897157627 312007197 710568682 433414384 560052360 8116947 399782086 696298024 923510268 769583581 813564333 443678101 865120299 762130661 984065615 79131562 98594078 61696875 207417643 963650618 980466103 319158982 875892210 80872695 796161114 62171151 364003309 114746375 605559711 615487807 744972963 884657829 936425242 500176120 720955221 56860058 487343763 355261687 390717393 567019784 812662004 473447240 959373529 788899792 952447804 121911207 360650126 634938574 646743474 151756621 500836158 933473954 964878528 97496464 990024635 239825051 617471430 923277726 987257958 840454541 964547489 614530268 916822092 290662684 489943182 729796249 787428216 714477016 905723150 705347360 902721178 360296724 519501729 784279518 902707937 280010234 997171569 727774527 955940683 111806863 535655077 943147357 989974126 317027532 652855566 505767887 941374912 140495305 506545272 57193490 282846370 832472994 972359582 898639713 989897963 583881502 693435556 876866923 975769495 354547388 384792850 776234371 865525823 869678290 945181975 959509405 974279437 480762016 508598295 842662034 960591372 325865438 346439882 197195553 419535091 424155644 488657924 238567938 398001171 635515463 966070162 172675036 872175332 484740757 875645514 608676074 689348407 175673788 587857050 618294943 708804001 266044262 318297261 20602416 558357349 778280703 855967329 134345478 152078403 362978170 642700053 135708920 806042103 58289241 300802504 956889035 989782493 279390925 472498315 844497067 989790876 508104012 566107390 104117743 140868743 640789316 899497415 144197022 185241747 267260082 885702904 5183756 108549239 180941703 778588321 330572707 695713026 699230299 871979464 25572766 852605055 466971078 878283394 789165812 971344427 956660026 971723777 99685640 733631043 262545802 730631503 197108134 492591758 724996957 899688773 869383424 976263892 607714238 868058540 474072753 631990903 302788788 654605267 403922399 609446506 628788787 813941845 173152359 935586556 992971855 998027225 632935088 857514524 965848363 986175202 897425509 967257929 846692675 966360748 236575761 303160775 234341393 317869195 708949280 933477205 640295253 749035214 297309002 814422194 80623678 369040519 296339853 368626881 154628339 399364693 778729821 906064193 234150370 827179924 964967896 981756222 577412342 750385465 168392487 810757756 580438747 947442847 660916188 945984240 350135320 578930191 247720232 846959693 791641786 801622240 235447420 665039427 748134318 877774616 140335274 931506997 206280289 900849489 247258575 829982724 217668344 843194956 791572759 994032961 893147551 904449167 865175801 915466708 28270747 298781025 283107363 760806549 481142588 977763748 661949932 951607018 912897734 997039167 288790703 638175685 133786329 517144236 664946269 958285625 419385296 931978744 329913533 719901950 476349544 860697634 936006391 938083214 742506578 851817147 370631808 949927723 422236239 696181458 107177426 199581333 943262892 969099696 282875554 824058651 878164497 984629666 906448383 956545394 762731608 800270322 270951417 291678464 960771948 979875028 143556963 274837589 907731800 983528530 311404724 967082528 730112623 810192496 157774178 227623737 186647819 752124969 634916502 781385102 350698908 576924827 247100146 443561206 211239934 817855872 439774800 637243619 681919438 704051246 167830635 947494979 891745826 982443281 419517123 580321979 710093592 743451747 116805792 688215814 33219838 979348134 645074040 760903141 914917112 986486714 710804989 796137045 101945930 411460661 958896005 981497369 957757470 972636730 519044218 851451408 952630621 961836068 426891878 553988204 918120632 922487819 667244987 942227915 227458415 907931938 865487265 876197255 955182522 957122470 859923338 914485590 376073070 993480150 345139433 647644065 608300738 754035942 371157912 652747049 109034632 936050594 564875121 973924081 584282466 641879067 832930798 952329762 135574705 288298387 517579704 997118017 7976748 394370410 113322714 235127422 190045886 253487121 507864503 933733735 338644494 927390124 681032108 762133224 250003999 409626294 125126040 224248286 847625277 893029596 48701089 72574130 262912351 329536134 361526719 849374277 111914464 504973292 234535864 726314281 852327280 920123054 215801097 504431190 38988012 280282450 629129479 949266419 713485647 768358973 266662583 771287585 643487754 720767117 226215126 238650531 834305463 928174100 152208666 516845096 720649676 912120059 758842896 874227935 603211683 705659619 964631556 965041587 729575583 743684290 951182768 968387041 839281084 957142548 541763497 928908730 788430707 897780138 434007445 733623345 366177349 673318518 822859852 890285020 174868902 424087531 962189723 993015384 5106016 645452285 45752454 489900025 490156295 577926407 776996562 836707640 191047522 973156748 431563089 621198562 646306592 651377427 129789930 355696722 859010613 866545840 255790578 615486792 545713220 659705318 620060098 769958101 10288153 694195163 23372904 225352195 286969426 625090914 273176865 273440332 790692849 931480900 224975586 407090750 789078143 980702903 962278585 985661390 144670767 257443467 702030588 761634558 203093678 279079117 307338306 568067344 152223452 584490633 113986083 864356455 46930509 438131171 580207569 648138244 91777901 577104433 987760341 990909228 368682084 462925287 770525270 803033614 816925710 940328105 39899265 429372272 281813568 703536144 712841205 907865682 297409363 347376764 323509672 341711040 15741413 765653397 198083255 267163353 373522213 893443643 113552814 853564048 229510475 942980766 744005836 973460358 837105460 944592501 148106946 682582076 51204192 58306725 24994371 114937246 1236816 171759664 223333490 734646221 442512394 775862885 728229960 804795583 846249796 944180136 695847574 822261985 990100605 991678745 256831417 922330154 907120383 910283094 392949544 833799031 245148858 542485004 953597181 967967491 571833862 584847086 788209561 928358482 362189532 532663994 814951340 961820182 690932838 997407421 87721296 547414769 228688748 405918399 672682131 839400411 322344033 839806501 423533805 557721356 453466644 679271828 346589158 860748927 288247933 619302317 567321325 807392164 782509901 872985334 90596429 998228504 767456361 886198401 258732037 676016346 346398648 779424660 172474916 552453850 29433010 818698043 651403263 782389879 452050656 648440252 366683148 765210339 310698179 360392895 150878266 576978447 839845197 950757391 246239879 422594720 783138335 968859761 312766374 656590721 340919641 520666509 55858353 748630215 282576428 681442925 655174801 941584425 400983285 676299079 755267106 820484479 889912644 998941758 654542527 964598003 335768920 344525834 813839067 937702372 247842330 367119310 206690232 267486738 851908591 950246912 107772948 163691630 51471897 510469600 742186741 873324077 616452488 686383283 441450654 615395368 972120717 973980620 158703816 364676852 785449423 961366936 474115220 878968475 141575961 171766706 313665089 924868753 563060204 774679307 520411498 638399212 93992206 779688302 72039788 820492600 930378781 968060104 387334395 719132951 265778388 652077056 995872671 997199604 357440968 848790780 833837390 870875311 229879467 398903102 447220069 722610768 148970526 740327598 800214909 895718204 378327413 644727302 234168228 960625139 592553308 953165849 931767724 943740274 3122029 36070579 58886011 291460905 133784650 291022146 718972531 755529308 163057891 619200414 26013208 400074437 92490311 978482894 928646148 959813836 355527130 409857225 517734725 579579325 780014204 971704102 444409646 446534210 301510942 742061045 98973399 364159094 817908574 956453767 347251741 786004539 276101352 678077846 735605899 942205501 253442070 590730852 98124729 407261078 474107622 882907398 81506962 776211459 778895405 779073902 813018515 935254797 133854763 372721088 715759635 962665971 116604069 714634105 162605016 944492278 122320470 983440636 21180167 107868669 627358807 694780099 417875898 784634617 830480144 974532163 969068410 983064488 811506900 903616598 764392222 928274059 627016826 792347459 14755187 264000203 906143051 980807228 214566290 375047294 602444778 694926958 859841499 987846538 322171547 609412317 817599174 825667971 693794184 806388563 649329471 803244328 318007428 874993346 776593757 900450022 559568299 655476313 311742533 854399097 265837544 876969864 770932816 803627056 124237181 584419257 876258485 953142180 943779005 948179889 11189177 297314298 146803620 821172637 307248425 640744419 741143774 955414104 968876066 985710315 875472714 906289488 820526865 850943577 371274998 430219721 609872057 989110088 583950199 642259858 446169771 668546232 210687595 874225451 929194492 959952355 61143678 676262587 240726543 345909064 605246461 890903172 759295851 986263059 23381628 61740719 326642718 839084517 922688565 993776115 843230510 892225205 199276552 835139395 541584357 938172785 92456446 231443301 16944212 992838546 244518941 670496891 462450184 525324894 569504662 680618535 493726293 903740975 711278005 711383746 100344431 385573623 978155408 987800031 727541330 862187504 18163917 316982220 70666021 672042024 391445699 950910560 312653213 330625696 612198774 844332125 586491002 654963547 809413382 934028756 21556740 768336017 983215475 992769302 296429041 435820324 134555031 911083298 713273987 961632113 410439542 729312107 375257559 755498144 428322005 455577470 217280261 671092632 61102496 868062098 617036020 626313606 554088507 849411946 456568804 834397915 429809225 848736362 475546832 517283583 851246529 946960987 557975024 889757176 70300709 935507294 778387054 982828575 760314341 778985815 524388115 949849603 119642555 544785494 318814959 993255272 135990294 419453935 476373495 577195625 835513605 877922763 218486911 860628291 187970808 576717000 620773977 782797207 921561253 979513824 744377532 751169116 805117817 813606039 947015566 965352216 461172474 718409717 238810070 806019540 511921963 531785238 929089672 936165883 429393541 846903150 319179044 791310357 747766531 896827283 564441206 947684575 817886892 904711380 443903037 663297415 626062889 838707664 43369201 706960589 5171912 888777437 712074504 977025324 271332378 297520070 142572043 300579415 28797151 736075772 785524719 923364912 428210717 544723262 412555562 629139192 914196419 970455858 948996602 962316867 734010755 823746731 4882802 758758928 429299141 809251928 833336063 888763808 760105776 812686543 831345237 959420169 622201188 901514318 947805214 991943092 170414685 902008598 725785764 759016632 350611100 420125445 296588319 572647417 145073793 749797956 859142294 891431604 410548962 905499160 850595967 993168274 746697317 823598117 404793377 817873603 900596933 959707220 544649057 835761725 731366291 837807822 815118754 983196935 853510783 907333820 919900813 979985755 853168367 974876993 974989902 983674509 474667784 810108798 749154213 750021505 906484545 956023901 496419051 546256664 592354947 771117450 471830973 701910758 269314486 977710122 98013515 340732574 519062948 819447750 870408784 963456582 662093769 859108609 41621393 488871572 381328109 677515082 279181938 785374947 370830224 559829696 923439338 969636745 194553296 479075230 713217431 922101349 680126302 691919305 631180420 721739062 978169257 998992860 196712114 768443039 624047952 927757294 634735400 692487310 251026826 310292075 54864773 202200869 418428604 823963558 793577397 933989918 992641465 995000224 150931777 353369320 830159820 845747325 139323409 309669688 75567266 116960699 721179815 775605804 571966256 726440657 474122296 933328728 566332334 640765199 688470102 912757459 738230474 873056102 845744909 871431348 457802777 584938212 659307413 757109572 374059561 742742684 270296451 633357028 252958776 446198299 108041753 150379349 252111115 278803656 288989690 783287518 892814272 981806579 228498177 936521769 932390781 983962463 685145975 902486452 673524015 952677693 476812658 975806344 809678352 954864895 605513291 714836799 518134925 523477568 621292714 808906735 79490174 537847716 724645047 917555446 840700368 943457619 606966680 875259194 268645255 380077849 417608353 897040693 534969332 714326544 120531518 233001125 222913265 667267332 800893312 833056247 509517372 780155359 386888910 547437896 670852384 843067089 743192940 768596512 642234815 702596156 629285586 928690204 181126574 973153855 318445165 448381232 253175601 894498171 141866034 255014119 790476699 983554245 852686764 947473112 865488375 982510960 276390803 379539803 549009320 613029309 454901450 544313725 230155004 458333385 351947123 773348219 419434462 849161438 474429184 969403100 475592882 913631064 99730370 219615828 419279147 616069891 926149684 938035896 401432695 502988977 690131254 955875427 978271632 979812300 892167982 974447171 2359158 609645053 95351120 182795515 798120233 851201880 974800564 978979462 722794079 759557552 865734757 929272872 352370700 494124550 201012656 233170893 945721917 976770405 367176714 737786249 417732434 654631526 516902447 743800829 327759933 696913130 247353021 939426938 985848399 996793580 534626968 940197888 112951948 198500216 146279824 963703857 494329381 949717417 492041702 699714640 1198206 282403788 327738789 668639470 256372168 306467144 878208720 933789946 972337138 983063055 541202865 619016014 762143524 924382548 268595548 611700507 642851302 804636314 827844753 913143678 794337427 809690076 301876517 385316856 650819983 933384863 829114873 927625152 305107781 708601514 464530510 590151728 607518463 739582508 3900481 852043025 409668413 786622702 21378770 160671984 272645692 417637117 817959236 892515775 113222609 560755193 342951368 943060183 12256286 151238000 83331107 858460657 871724435 905399921 53250087 770008513 440484301 918387531 545898109 866598234 802493787 910332148 763782257 869742846 129463982 235068351 467403763 753021890 998367359 998758962 233934447 952854665 722504136 846642089 428867087 885404475 203607035 941991230 562516067 966368974 376579130 678880524 910427792 950405664 711099148 848870665 273480359 275825484 271555877 746734790 309368467 649681237 536005508 958107664 410470405 644816132 424399712 547468229 232304077 651511625 429961734 872658253 662465380 956403686 917329133 982375169 648388945 715345799 953183549 994332309 688941578 949400081 713877964 895005878 600551687 926761149 98375169 862182837 47799094 447256966 817497175 899108176 508287274 619226238 563750157 944397803 111298416 266901346 497152743 635660549 801457070 878661749 711887522 732712452 573038985 623017591 868695344 919354819 709181119 965303842 104417010 361880303 853672049 890743838 840644362 881982282 738491795 889068194 181001658 613315928 681504414 774601452 632949470 995728394 271611492 548843190 508404955 627345884 461768956 602759973 211676220 650649353 644674212 874533130 534286590 555604751 327733060 508664037 125474672 389016624 583418718 815218427 569427354 612153688 625053635 658572657 134785837 464276398 494304337 941260224 400281641 820252907 498141509 604213277 642378596 832335523 745562454 801823935 498424245 863060809 752805526 834417326 117913077 689303822 932075757 956646802 917579971 920197597 167329645 839783611 269792607 469498357 657205453 827962719 958601396 980664376 527607274 616534645 501004705 664864767 420663172 704492378 456730591 989955326 254904463 802438001 463915515 604809680 145919253 318988000 747399471 981888670 211548221 979125701 452215247 474024712 817852856 820278745 131881996 573029103 27738066 47629023 163296861 950680222 16810122 741740508 39598083 135217386 780496748 987264678 547811662 561533587 452656054 974111467 320129911 483252748 861456613 958603555 33370744 169548705 358076783 866909525 127369650 582572536 742138036 857248305 555593255 984718211 294963085 671215994 582414700 621975424 657428357 941612157 54830958 660263630 269717856 793051697 937371643 988171113 609743238 925808829 121809802 385227228 583819631 697816042 670385975 935036287 163063117 704288763 56799221 125869693 404934300 650602777 42623911 428253260 157875763 302141387 611495387 653886599 263446752 386842917 771985442 878342138 408785753 482664099 410934494 796759584 535321751 680356440 122507334 371179449 445428884 679205915 4859986 744992770 411175220 464656473 140038072 312719163 484555614 523163753 104926369 780700169 946490498 963797678 969181044 972056163 34954214 57546347 722761630 765578918 790929795 834343729 424180519 531752048 939460760 943994744 247908001 525736164 119164938 378396880 110869782 170902775 296757310 331245494 550226580 806573082 830423231 849922401 243857098 616517567 71501736 313953843 662965995 839037785 339523245 896264534 124531180 485428674 846787394 917205882 477453060 573727386 547880888 938440763 745915938 993149289 974071254 991353292 623241349 815425237 64284468 411694123 46061598 463960999 21073610 149992440 242902145 921724733 340773745 757427362 464502918 518974468 214517012 308943260 507041470 935329622 813323606 961370846 917743235 938715385 677127935 822160049 37550650 860331631 41722448 248531673 735521372 802628217 238126851 511688224 388337953 723993476 839290387 977849581 411249690 554821895 929041680 954597885 189123133 333876532 640434097 932815984 534146844 909934863 981671504 983820352 715296766 948770282 799474083 880950391 901591848 967027152 884157249 985072909 416483825 476244307 916195326 967206410 292079189 723714698 506794003 532365520 61032815 468825418 126177741 976112088 975501288 991531965 750214730 802587336 53512159 544999799 995168892 996104386 331199451 868113634 594227940 792260989 628922435 968869944 192803097 342802120 837987632 855140070 80040377 818758203 46359992 798160199 641982158 942876253 614031426 716421859 528222759 941717843 294574055 970311813 428819220 914256120 448833300 577186692 551874633 893522281 839257882 888080267 785734556 940997598 741396870 804423986 135889025 430366489 435723262 825052900 887847021 923096807 456022760 603834378 809229067 825637172 219841941 891330360 989592123 998757169 870560049 948056587 287698491 988690412 985191225 990311645 936702194 972458518 151674288 560317019 508916284 616852795 337466627 445456039 785115130 922744564 722086492 898991841 574547829 696816018 835937393 919005316 209479170 228347351 970150900 991501051 35437958 923779949 870707168 891653478 503087025 606721453 833910206 930340580 344386370 519342974 897252608 913054657 470175072 816567133 509365428 667540784 157312852 186521059 684000367 919391886 897667065 973049604 689667910 950220402 8608807 863487650 609041788 781496921 331170320 933046163 69935143 80251133 640390347 785299317 934849497 992768246 667317480 984145876 393231979 870211496 251981684 452443945 929344414 966560781 969800291 983976623 648465237 747870360 508653222 836270931 33546304 397243299 590926330 807475731 782819347 913575345 805352571 920226527 488189187 563125831 33108783 38480845 599364412 780756244 331929034 884853982 983920282 997602728 202083436 611860126 62170274 325959340 822887133 860782546 858636785 948187495 243474207 581473281 609277465 810974435 454843459 953028925 846839895 864427452 857207804 968524997 63378089 322838403 106175112 288042725 172150409 800615474 356674514 436669709 397750919 848574623 840446251 983554110 600102682 852813179 405000106 538951389 958775780 978426855 390134506 843059316 647438340 901965562 777398183 782527455 85978213 394003845 849247477 909589791 215596935 237542912 133637098 404834413 608604149 697926530 685495985 904831627 982688345 985672473 642667503 677689575 606634193 723355992 528525397 872653899 10243293 865313430 316555090 640856919 77926218 790225722 866838253 958491707 183466635 986682381 103216494 182412172 419631817 533438317 513035203 704704602 121696635 248817975 67077567 527958157 340894000 567710255 228388721 796439463 60141358 385649090 481048680 885856434 879149367 948097234 590068455 827444479 398255972 587192003 968498092 981625910 859321199 957271019 496947804 828130539 728768123 877440936 123804508 669166559 493722658 889608985 402797032 542312937 764780797 987835718 337090125 906070802 711679554 770860491 670275280 763747077 849944846 921161364 564262977 899074281 314207507 948203481 793361546 969017842 310336469 866100653 12926055 258491130 345872910 836556297 978478674 982264387 683097450 888994822 387810294 521101408 89928567 187985492 499311332 714413690 160245915 372868022 506333 107937019 156753126 996481279 941935396 951890118 455245692 884255236 220354540 473086009 806245384 883295763 622917209 858046188 75981163 192619189 562058319 706011478 193726760 895850311 824510319 878764069 169922118 601053000 471428912 672062242 847507195 957540799 175512187 851734128 381154283 927500004 390656702 812452471 500029108 986279673 21797838 528392549 300074105 418111623 703504126 806521928 28429554 375734277 737461186 954555707 937437473 954502468 366848319 461726667 226890323 484100504 805548851 897497506 312272060 842098942 263629340 869916889 696796548 945412711 983137974 992703422 180563892 521560349 5349342 570547240 505888582 668668498 291280414 632066019 835613225 873107903 574674683 914426775 387185095 682863236 966709025 974417066 511130701 872493404 834800641 896724783 701573400 772118047 242055113 408397127 822754968 927776070 726142211 989378125 935015829 978576154 626617927 900363357 216001608 626140462 214213127 396977552 913783345 984697863 829998655 852733625 139562417 799495990 577555890 868254501 80198774 742346081 596065764 659261437 55278367 578823691 734170367 875387157 682339521 801738623 971403221 975961170 827008090 923473143 868894307 974214764 935373820 995013286 487588844 829190313 249432564 415600062 803555196 998667650 624479391 890914579 470808572 501764935 951777071 952751776 499258029 653486354 581523043 828112940 663496191 704155796 171042252 832633863 573954253 734441365 576493224 610754858 718916173 913010444 207939450 526051176 409232198 568490011 110244648 194745314 459911662 911760199 730479000 786385212 573859845 586621847 217301210 410900971 197307580 913101182 219752833 590548386 355857280 506273854 989925357 998945680 910723205 920758023 389162047 632165689 939673378 953162978 935675041 976046856 636770206 943357862 302332464 467591907 229752137 349087015 40440921 657410800 625593033 726330282 33310768 172903176 974123245 996416347 54216691 125968079 506244690 888426885 351810609 456778456 606619753 956807404 150560940 307491416 908211406 932139448 585617168 700903268 674267222 841002640 477249262 925643559 667987313 786684667 994693899 999196214 510245450 905945353 845563679 899416940 385226560 581977635 945485575 992292002 759565584 876492963 89826125 918727598 242147096 867156958 612841357 623142656 64842241 72291303 808731987 875608346 83348641 136866425 152601984 303520123 594798181 616788879 365745007 400480077 693646295 885813421 55203297 833749705 63820174 69581082 655112350 956436443 651440732 956086406 218442486 935588627 375835001 521178159 643248659 747996751 221865227 536673631 868651355 920988547 990773774 994057030 998463050 998923290 490211558 963616979 79860714 419147222 637300043 840176234 934662653 951650066 556832839 637104164 25636460 823542458 790292420 923386597 816090045 963351298 60591018 201722915 68876326 356634278 162660877 689251082 855985240 953543988 3182906 845835015 272022881 356952995 360921080 651121706 746456137 757405016 162703930 621115524 578627312 579851485 637246578 891751912 750626735 977706204 465342022 492283773 696061374 796949613 282844793 927313640 9937821 757061709 771339690 936542712 546337975 857050124 346254680 562740859 546623495 812207692 266568235 543006141 285217250 938895871 696434909 919243208 826103731 997097418 331301971 560682990 285533084 375301128 469267009 712851077 500586707 866102408 840000147 869991747 559725216 807170819 224279584 855466909 679695183 971403526 579296082 644986472 480416133 818363606 279696069 990716564 644811155 665588468 8275829 925652824 540151010 579267613 831997077 988227277 949885343 977389370 293272958 437277865 147576368 531197224 264551801 590443372 850004377 907916966 508075549 770689018 246237652 599633280 751862331 986607595 181121406 463667429 228323913 320248176 380310133 483732374 619062278 945509236 496096318 921349700 769707866 889251010 269753418 441300495 477560237 656837362 37942323 812192915 471830192 930797917 342842239 575003257 840719941 939705945 590952026 953908809 879948384 912238305 796775035 925984325 409399642 492319239 109690449 192526362 604205034 960289989 953045356 963530976 41257227 46981184 607217273 799008885 771113720 879251367 972232172 983107153 611460759 790549783 134290623 179130069 138701007 750727054 974584235 980331864 289188515 365119497 225185043 450498859 607212186 746065576 369466035 793483801 573190731 754561229 745800896 884419385 945348312 949947512 943464598 998331365 967759298 976591079 948506101 961563315 428604656 869441756 505661435 890676498 710431560 761243592 19915106 435543557 565202122 968386077 32544692 561299500 814664371 961760222 928788424 931506278 114944690 334505006 146566693 395286081 690132756 778867089 882389943 944998541 949753964 980010639 532762773 729747518 282774597 495499379 589436235 729290742 511588411 617957787 16919459 565575019 504570374 990050573 815499168 891765997 273586390 604099578 744723395 812123286 385716062 456244506 986160089 991427958 976947475 992940254 523282700 915804013 466812117 805972429 810969855 854760201 769129261 855503378 947949945 981087845 236954709 677275302 268419896 470149030 12605503 159220123 454048338 754260238 103250036 739187019 50436117 635300160 724610525 776585984 864261263 946965970 253417804 936034339 276637805 277678359 392722461 697418218 315534421 385878380 993213075 993595330 123577694 183419600 370073425 794229463 444463189 578454075 323427300 741924752 949260538 973295121 968596325 979732959 46435816 305362386 211816441 988109334 924204476 954277118 541901958 815634744 807284764 816161151 916063739 928846172 288465371 977049988 194627506 444158102 350474751 493659939 573805702 722148662 586559163 666305576 230903673 545261618 199333826 451802211 742102743 807580543 119604551 883678532 798233966 874005454 713569252 733726936 272950832 940156200 158432624 350618219 757150184 839199977 134830345 382612845 246756464 734587941 710475406 775541771 581528964 616955410 366525137 641585911 957242788 991381049 408007639 745224430 458130937 919375325 212543199 718166759 108069939 115730545 990454548 990695763 146602126 603347286 613949791 897253255 318324598 676327221 212214946 351694646 642318264 998999067 529701719 865085113 253238405 950150111 302470170 941733229 561766466 826808222 567678109 568866286 675276561 930546757 161987184 300111243 795439093 953165741 910483655 990819978 789445001 805797857 770867351 852958140 375606509 408773014 512261414 572822915 405969655 411843895 528059280 654858564 684221990 792421925 4188603 431174247 629652549 764130257 260575805 931081535 45362604 536109701 702960936 957309370 839665233 965594605 600604309 809004501 268651014 666336621 461236166 754907270 42542198 850605675 311837573 462850926 483057145 890948228 425086066 647235396 326951999 446061880 51178855 852863624 737933944 787176867 94177539 848191292 369968279 980092936 190198388 578955329 860655727 943106352 147074099 216977477 616606825 891767149 392763320 723229613 994456740 996277728 640783323 757628899 488100867 903049240 570126803 751277110 532864209 818876036 301086975 604795072 83895999 108528306 624497301 768613343 282678693 473911295 895042193 899398937 283784904 301342295 836383925 974414864 202396775 282452362 198680694 205401325 956507519 963958794 71714367 847834473 6606920 462328612 152509283 681907222 148723022 498361215 530307211 666255746 494022312 612036914 873782794 963893398 633635829 647196877 230251268 701445621 256089857 383152994 27429330 933942807 381967317 649882479 152191546 926642796 484435566 793126066 4210025 383193509 291608925 646462214 456583730 718171610 551374343 606225342 800331395 905503051 183856822 220541695 405373606 609489300 882986437 925124566 313966913 338890086 510620000 511396349 670731593 898190466 905187896 965519229 318321017 506834647 429442348 718131551 922742183 977424644 493564237 759899066 639471542 815230323 606923957 880783230 757916278 890904953 658364122 943934515 274923050 312584655 967575250 968816480 293831663 896221310 274115654 534421234 553454876 808290878 348282927 601033849 898593296 988014540 906498221 909000296 376212256 661170749 852245573 859288483 414959815 634259729 343445719 857301350 370336610 519909356 820445203 906803336 447323340 839510272 625721611 790644944 391483437 601493757 399829964 840379694 462405134 983730112 348891258 390432458 257549563 682201393 206204308 512130799 312163284 744340703 74676894 373018035 857352972 903436508 188613449 252143543 102512952 848342999 653974423 654771818 916517741 963275146 771212477 911642132 940512245 964727215 412216352 533219348 46356187 83658262 681954574 864861535 275642177 997614213 507913800 996040979 75291435 802623113 739952706 861824279 269439533 729286894 941401015 972783839 825970068 970360129 185129035 708935058 569240629 648467246 687418063 930833496 676775474 837435825 197081607 506252557 635333484 782766192 891198380 898163493 788817630 922547195 78666846 752776809 549027146 617301996 357124537 868634605 432799992 906629701 739257907 986051123 716018428 915740899 564837901 967094807 223648281 784117917 306834795 357452822 625464526 776484254 166144935 594471010 429764138 500122092 124712785 482782125 582586203 941597771 42161612 338804239 960192057 976876136 717946702 983472881 334745540 959371860 784799441 816581397 925345686 937206213 696853380 882357519 590385691 780526415 788479595 971273254 989470859 999003551 23095022 811798772 575689950 644175706 224033635 419333839 525876213 569390613 80951155 800005138 794103962 894643829 415253513 605827150 218873267 630808728 62543804 690873793 652141253 755446077 254867383 376397092 670199781 720706724 983628638 987989022 997986705 998774569 637016891 978095314 359874688 570355929 990616369 995413598 80033077 558481148 623370408 864345739 528291359 673966552 341649577 830032279 820260598 908635567 89060081 662536199 185005700 935784621 840941541 991966602 192880400 644580517 676771545 883907100 473682289 906560242 365698353 464219803 608877424 632442116 394978940 913957353 456041496 562066995 114160148 921485207 898271770 956646952 145553488 773385356 631595835 863827303 709277824 712724560 55854741 682271657 631233851 717946827 1888186 909885879 809586019 820976713 382460255 958278399 321698506 351725389 335725607 553975729 791973973 837332610 255293204 553787060 549466134 891902530 339688971 590529670 441322623 949271901 674924395 868271824 828513237 925270871 917086520 923750418 1367435 972594669 617264430 954525121 960471902 997683379 7962117 85326100 546823191 997274095 172474999 958993133 90048279 401082213 315114236 688895447 993914994 998722530 150608154 642773431 820811870 848860860 462104220 779650037 330404668 542487543 442756375 766225389 471609652 932097416 906496220 913597936 524040997 988639734 264285293 559500965 336894715 858006080 790521737 805108748 916710709 986203772 914607847 945010932 189640216 280924600 581400596 871539247 706574554 997685404 853099309 988513864 659255175 997087724 659580423 865751480 552852528 625469605 47974606 482711014 151257396 681116467 622279613 625180563 824594788 974534559 259105317 415117562 222544409 234606876 780591349 864264828 894160534 953408241 591873608 920666204 97319055 100988501 508321174 882411245 561607155 800838257 776560542 819302544 734526911 950893081 204846349 546321933 284234546 753129810 959449289 966894046 112271961 414346415 829465400 836623085 179607333 198874444 338204187 669781427 599289021 957584848 156779842 250676538 653862102 807706221 611008954 827456450 854602716 933082737 804957370 815311243 882915618 898944615 797325536 988400969 133996260 353063977 384425283 827364145 400351055 679496176 198373608 859185551 19308134 20137828 396920147 580761313 741072448 913735901 57795484 958910617 112140770 795651349 320359151 751311047 717773747 868302575 823933477 950841246 386474213 926160538 689534276 946055133 46755994 239443516 879826857 887681909 985811169 999073854 468959006 934861148 666452980 684879619 208936154 962785350 992651763 997390875 448883476 805387723 354133733 868119181 139325898 796368529 487089975 922078423 830731222 851572272 697464131 741048311 980025730 988382528 18466076 911451205 911969365 968726595 959847726 975924010 628041353 816383860 471203280 955590160 734748260 877980170 72112511 569577459 285466740 372869327 829005058 870007866 156427776 894813308 784455843 858722759 886822864 904490289 593352061 745971895 522175445 570294801 219178391 449797904 334288318 556533965 414814841 762029010 888276059 944438726 155446740 857904709 353461242 384830900 833904451 901942985 507622748 722783100 247106549 395386206 505302575 549312262 654470340 659920297 706806234 726728582 533532312 948630273 475128733 654790479 896838214 958045046 506366460 674442662 352384225 387054553 423358390 821630720 843715465 936414325 638146099 665331546 687882409 887823954 179611921 841435593 637348755 664995764 833441690 841671725 933249302 980132500 627589560 907180818 391562006 719704049 410614266 474991149 414131514 535688431 732609718 761408712 118033775 993491522 485410780 979483404 369816024 775182689 938530928 940281548 183726630 592140697 933644726 998446804 448019665 850831250 576265 396642217 474199140 552083203 812775615 994355722 226065705 504446595 373963212 827971616 766433419 965713941 917308697 935836650 698800429 986658949 956575737 970695842 563566797 726133264 270901725 284959897 254428885 971918972 805609119 829598540 546373406 959238969 36374478 721674665 954980989 981346242 785959495 957347491 926144260 977785267 808343463 859141184 592776334 650319541 557516330 925156197 988732196 995262444 57459381 215784022 447651022 844504645 109664826 237962995 980001417 980829095 97990921 938958174 605615655 938619412 596565872 613808372 469927903 615857987 457009985 682007668 689884343 700839009 696050553 946262553 889639270 989925233 932973559 935764514 486741531 675147752 235314078 418998607 839122624 887459375 606652409 660067969 843242466 962561164 303872242 549796982 844520770 867784777 906246620 994243488 161890705 225049564 891809077 913694249 538775340 717816437 368264215 635866079 140014704 923735812 629763551 950350729 309835965 675760895 832344239 886067777 857785147 944514589 256153140 755653227 561773578 776342984 150929076 847899785 769677132 821918008 929972547 981207734 338945392 743833920 361811990 804175346 129570746 620027729 254209127 938848093 888899947 985557336 545437313 658769755 336188710 910561699 531015041 626828645 371158122 765343204 564338161 606977887 779306267 996878175 952372626 984400229 834584024 873185961 174978718 933638877 139425297 439525154 222649299 580862794 162048370 948056253 150909313 956108738 716843185 859909528 311268672 624667222 355984751 876568209 446397474 955817517 806746581 888161003 867998577 877390712 530086254 857264941 868038354 875304187 921759319 990396688 571875389 866510659 52701823 889188124 883282605 949825151 808367498 862462113 976446107 982634786 802504027 966446474 407831061 630957672 531479948 782452309 380425251 397921541 722598925 987831398 761154449 778850881 431850648 774340062 736626116 947553666 427213045 581433990 873675688 991202203 710710428 757555030 834622310 992290644 358276728 886170013 846165294 945671300 234101516 471307062 696820419 876620610 652471762 711501333 638395104 974431281 770782347 818884769 415145997 967469731 759397613 859115027 981324126 984006050 373598527 545517921 786028900 929145150 891661335 897835941 29297092 434198752 546105848 762442154 466941332 693968473 811094018 983637057 471295140 894885276 515638878 985285476 219212478 661663640 147835178 945325163 1867977 993800697 608222183 758082185 100696748 860600012 522893313 945547118 133062559 964594685 165491034 462696366 470429912 564335905 266697335 480784316 13427380 381599587 178410914 228514354 94890084 152387664 322510313 496651071 83478762 399413529 579722168 662906285 302747046 737892383 484876890 687896023 255589606 529203810 323900625 343745593 646951995 754785805 787163826 940987780 494558975 851252316 955216003 996296657 289029506 693202540 625564802 978243113 378917101 931296219 83629417 382972458 492920449 845921169 121264799 833809199 85061163 649977725 686447817 971749598 696425185 770880907 279478881 692156737 282427083 566801271 324628908 792650897 94594704 664398341 462788709 524577593 193923153 704436622 925482255 936909231 850371653 926445740 617258833 862338380 303918210 455386961 8168543 10707612 400376706 607051030 222075694 839544270 482806731 665650168 156481791 238674416 201992293 696461449 934745710 993410227 219426229 871028396 301697174 713732772 597417467 885852011 805179075 854815197 856879068 969811396 58360785 550048089 901033272 979778806 136575236 380822546 560754523 626519302 37100082 512369024 938953705 939508679 901901560 949440257 979509949 993391983 804766621 945968118 347260421 562955928 894933534 948186427 314738831 505626672 42180383 916275256 467576740 981205954 567275759 742036437 286344449 665801761 889156306 889891778 971765589 973246666 854776400 983013769 371483471 961971695 349779283 955955553 491995019 963212748 18977895 347579921 791848270 880524310 512691165 884665996 443568641 998490393 255254458 978053132 986869796 992265118 209498495 336501333 821131073 996401009 427518957 768991329 462854154 965366139 280630989 762479165 301354514 776037553 753464305 906206028 657220427 823294772 497118703 833990418 806882271 880185611 872090724 981463311 147886404 299877761 136308822 812368531 831078513 886946641 609424532 613394462 659980465 760407321 844321876 933038108 844587075 861350089 91020614 139427455 350702690 675704883 635594772 990191447 205687929 920576661 255559641 971237895 303027259 523864278 457260164 901755937 282778083 927184473 373926498 644157391 721618487 808018709 484196537 828566804 432054829 435907713 299366453 367580813 874607872 992214487 527953932 620207541 169644590 438723174 139195622 884093955 497784630 973811459 766530953 952334807 500742380 709770277 939963464 972281646 668535276 715246028 930940025 997534094 218398783 798049957 406023212 729903453 66672265 209096936 902165711 975188033 346909722 646303562 971139562 997311013 57765059 551098340 376919067 753681972 104100655 298386987 753781186 793443086 916524430 926731560 362224796 556502325 281446342 903193911 189501582 653443124 881310158 959146256 390378595 969599671 293766235 751930022 329982971 444945226 28963937 329646568 536738528 880404116 416243476 531090027 329506340 779825278 374030503 797035339 116338744 450409541 729267574 882926739 559884214 668162809 419518489 693818380 738215006 778308259 876956084 922465011 583252115 719492257 524029102 919267836 178256446 938739736 603131810 821972779 933694315 996885268 749118632 861166569 57021216 662299480 927319035 972747552 890500809 916237689 184274074 587660740 183471544 875044909 952624143 982542256 182124055 667852023 963402739 993894565 620387741 667817286 602131373 909676345 243916671 636801986 512410735 781537040 157811163 679267659 505679325 783043830 458032287 941873102 572262945 800818214 772293550 782595135 499187693 922601775 93571010 987831891 333724739 887646278 799911610 865937571 290317775 835106234 471032813 973443616 332621393 855997266 978672478 998123976 364913904 780739307 324347533 976449345 584922040 862255425 177813675 421040019 591667246 990473225 800432161 994096109 335283619 751161328 88499800 449223826 861309709 960919802 748591467 868862133 87174302 664058343 343156208 904948544 673748117 773724593 23541892 234593421 559352843 679623394 735076031 962834321 515052050 784627267 326636138 670289807 34612454 524566994 943399059 968312496 57366184 82808215 21670549 187152658 599963214 729335867 309855207 610615732 472571887 968658047 270606038 686010780 557460851 820942536 22411205 274765315 225584203 569798323 261586435 445530273 615689949 715498353 920515016 983055943 514081321 994729829 348835729 920408594 839326946 844455585 898379098 908942586 153587399 463369046 954540844 960756215 193626493 610667095 974341560 994617385 90619823 672500164 125425190 669928685 268008746 674205539 471753945 771659709 246711115 445705265 55193588 307956581 336206596 554749074 276880460 720782839 708776848 876148466 980426873 989819581 225787670 229597062 447983985 629413521 474726726 940348898 842342278 973211142 883492509 969796355 311896070 799360718 461315173 902349790 915426249 980062035 987526876 988958896 428487440 720277705 336422175 606363405 96266262 414714656 273136512 815816920 642767371 771517712 307293380 725680058 316901307 716769996 855351620 896077616 121504909 601208051 913619271 940327098 613177875 869153135 765205572 968801711 622014918 630445702 384963284 478212306 290005878 551978538 727713511 905749865 26601149 769553230 864770654 981795751 403299346 570482957 514113805 940695049 774047843 817544108 341112085 789762834 20676134 834707128 823669719 966580962 556654012 866971236 925790413 946990355 905635358 905775361 40085149 139210218 684223275 737650780 499601539 763790852 118096540 192584370 133117469 909398619 754240477 869125446 336292426 728422879 986506172 997538396 528730564 582366585 296917870 960092786 188394834 647152456 58399007 890170047 442566641 838937402 525771022 537528424 318848738 743474843 727858324 881865098 329461629 900195191 659974258 947657930 355826115 678389803 403332657 456068089 990209858 994102926 305251071 436755913 242197914 747506437 486429335 693858713 517827562 758919841 299789171 921298569 436250996 721083271 238802748 753715961 967739860 982005081 338739750 531691251 636738415 702346355 685381922 896842823 191802393 717555408 725231509 944617958 524952386 599727529 184963456 887561445 380855245 541797868 158231648 307401693 79738108 87085478 285340583 446279589 416817919 978259927 776749849 908575468 192599978 552663552 196234706 722267740 406739226 448134538 211527256 802794987 444916129 961139626 446258760 735963127 474598007 664934671 877716698 909573767 847437279 958712944 128701091 417942278 539550311 745680710 726700967 883384983 349770348 854578509 18155800 798710666 331458276 877639410 834699147 927678520 348397220 964111791 493833840 572703157 309969521 420765713 788622883 816578648 620731109 989843361 996852507 999311041 121387857 650198684 455692021 613785227 360293097 491018542 522052304 707691356 342058682 998136949 530140713 688455429 337887879 377110225 106515160 755588202 342448701 954781609 281452545 424589558 285052759 296174346 423497510 763291277 647913030 905813214 555070541 655789215 811134691 924951599 907721040 993492986 984912314 992988847 763645246 917349310 24905170 580537838 465299290 680271479 708481876 748828008 97691076 142131489 946000156 957671301 451648232 843957859 802638371 918458945 880782504 987972094 322363912 366340507 654335550 878327697 478967810 687100385 312035199 354903878 672398721 675316343 979032459 991438459 996979295 997502598 992903363 995362649 322436930 757939861 871540496 980385082 370330578 454194147 737397979 996719761 830282055 900365219 661417752 785553736 876008820 993201269 161955903 205731440 397633618 575777133 302096847 781467808 461188381 958541061 515746829 606206588 486644418 753113698 573552065 675094345 580625196 860633305 278377053 425281307 164080746 271286139 733090307 736718831 129620913 423232610 415050723 920400246 930444273 972029257 248865515 472082722 546233034 709790524 386988704 573982827 759530223 939554241 808656556 996638624 151639599 297791952 482518791 666042614 87724981 936112687 716927048 795993890 816648254 947215989 796293485 878265913 387093656 943938906 671515004 742388953 117408965 703853830 593708341 609527867 683845065 935725100 973237209 980224410 514715564 833527983 352315851 641891473 572596356 930450124 56059005 66588470 977222400 994414090 749948907 897669618 228906850 472362553 472491083 944468500 810792222 928715418 526269611 635423028 117260694 661511804 300756074 480674394 604856559 801954753 588452500 779633092 427603332 533772103 940240404 976626313 68198808 425200669 331916160 479579815 95705554 763026088 394793102 863971029 313789793 792160664 530778747 946361675 267433002 873343034 661811933 940942879 964131483 990344629 206114920 505366900 106703719 562845021 225537406 897071246 265848104 866370420 483189980 760180623 320726127 452164758 662542666 812466866 664204554 668653374 857232811 885913562 960740019 979451344 253508580 720178682 996423997 997323827 729690221 755968712 551028148 805111820 401322220 698916042 822094418 863837140 249262312 310982705 102559123 571953006 914187996 939109420 406689909 791744199 601020980 954246701 941492093 989572606 750003633 779951155 377125200 679452447 832500070 835686552 404148637 742750970 458282411 674873555 182769819 938821943 908612613 972181053 76487856 949049723 819283832 825306750 588236187 810554446 212628137 632421482 562667820 710480139 424364073 966464909 212398663 482623863 923189161 966335548 208728924 607409505 409115284 541239050 339673505 431792330 778465178 905975379 452233452 745754917 750766717 824779074 915156211 931199395 326507067 957973686 507978793 932557325 431073803 938239958 722973979 853166507 990523654 996314593 914526635 921929890 293603580 782545105 830119773 959279110 674238023 968484281 396624975 754923154 197861157 543668159 602933347 812777983 356033978 914067428 26778913 816408537 850165150 859891588 587815360 843672729 456236421 735527212 503958560 800427591 121359441 679021524 357363255 651713402 175122841 578745168 901559618 929418529 67498509 985350604 492533751 499493073 837752217 993927951 331574212 693844623 570564961 952243602 679129709 852017375 476178775 628804865 1230157 8778501 65475310 820907031 510657843 723655647 159034724 196866167 600491894 685094403 234555009 577864034 633798692 843625846 650833663 703838645 838878162 956757838 618138539 888823876 971764906 982742233 845390157 928103968 711849135 932090729 521901124 637446542 451350167 493505054 471635793 966691958 893793615 992137430 976733561 986751268 382085448 958207919 233591375 397316937 449617555 680077364 578927506 895383568 328874411 688352585 897673390 910248452 441988597 660967212 898133430 918439206 196970029 754301146 87277843 525358972 218896392 533412993 801289301 948298993 779920993 854794040 544785522 663394125 205328027 942482468 808078871 874539030 136265269 499981267 820399916 997383265 271561234 409529405 546331237 970448160 860773194 881194912 400530274 964379937 7552688 571888350 494513245 573368205 469404945 969673000 863275003 880988581 420189534 648857693 764271030 974818979 295631930 658987514 23861010 69045170 538123095 918476830 555158174 621041598 207180275 241127492 872018086 904912907 825884622 985855342 829200090 912089222 935028805 944020654 337397832 466417118 245379321 594783328 377753984 950777396 726406976 949541349 816677857 888093909 940961512 975726933 751420524 867541011 386582462 916274692 735858298 987066255 38777582 872002952 608662104 868811132 956671006 987987212 252828781 953098195 668487684 914321524 972026815 988334960 165910063 501909565 941949478 942045919 354269124 372597335 818070563 883634360 603477421 937014056 645790152 985428506 888534965 910946201 722695918 913686322 556506068 903691130 558330765 949758773 745758353 785027825 607482812 873869419 749743091 961819436 2730509 877573809 128233622 515241386 215183495 868973694 478375657 902288875 155021614 840143113 916514877 947144972 899063268 975327193 900909379 983959766 617698929 708885777 28242130 250702906 421609340 736970549 23444313 827685966 595494060 599706467 187578229 558199289 978196847 995019269 10661957 685387866 122108725 710979326 474545213 971802646 316708025 511178655 649676827 967027090 55915294 948445841 747629294 889495190 567280487 908000377 861133865 933822794 166231659 766995047 414897444 462094882 251018236 582803971 841475931 974904290 301529921 839265946 65702868 510811608 151181320 932691318 476670884 622435549 831519161 884848025 943744887 990492192 42863353 635660941 690169450 741651058 882452384 897988279 550591660 763651102 53770185 418782467 453029788 827025714 851804800 973593694 711883973 893407917 421257313 592094537 716802654 902484909 317805800 486330093 393637478 976333005 345068590 842192128 723262737 863191800 953053013 989653084 997700643 999351618 112137935 841283645 793091814 854414035 907294336 931536479 198650481 441055381 821378129 959891150 781557432 987687041 728347728 836539525 297848550 438170290 641223038 888586634 427400389 484079095 25312486 832385747 679074794 841063954 407368210 840728286 973415202 994107276 404215979 423312297 110726665 785478796 105284972 891898091 53678295 318989331 396084145 672848327 103036621 965349574 788265658 958231933 937921487 974807647 978815233 981845898 595757538 862236138 189065029 751427432 724420333 814323048 138623813 598875306 286312374 422887563 868630546 914238179 797207997 889350625 132842052 757394602 746065514 833483798 675382540 736067554 674757141 966944315 302046666 441945992 835782360 843994087 875681249 884619807 234686963 478013219 454161104 734520854 906709703 931188302 14570741 70961058 884266097 903290578 530989682 558212027 963488587 993334496 784340252 786376376 590436639 903643881 405416419 449736004 981354422 982116669 772272782 778500846 99475394 683349633 4669065 783087660 704286636 970379881 41809689 900583066 942713153 956640478 939717619 999130950 749770888 969079593 557234009 946317019 746703961 774220427 678637796 869607742 683305066 801839684 624772124 977104668 63468799 203625885 800757765 896398159 92500648 612397077 582425293 790118719 868868994 987356468 399809292 799958344 870569373 917675398 813927405 946323403 104067660 168136390 180667401 246008174 163142405 854331100 182181380 828446031 68914730 337947126 809730980 956979057 52523096 395032822 966960428 978081489 511681768 809756742 93174021 889499574 276972385 621533498 108206063 671310005 220498637 286003191 482764188 931959739 230325428 734197122 936700049 952942835 284969102 876648362 352824370 464730065 909996464 999095164 235432701 901597755 662101970 956553459 362219898 459853947 46615146 112907231 298018141 304931601 703672553 860279788 484107342 689292517 814069171 947853554 971701512 977825054 326289275 934431312 205379494 660969628 33487060 132386759 110238518 528386339 501129289 567517354 624343070 801508071 396014134 701276117 569023126 732594743 25728347 470371329 932129026 938521253 858246304 983902782 293753232 627605312 651567887 836573496 255354022 397121083 172382663 960769962 545181277 667391292 694788070 728439947 913985011 941220876 777240943 890481516 895423994 919317009 89921401 533219036 403336430 637082541 174965737 552690602 321620831 762602291 257446964 777019115 488844205 609412892 202131155 682901366 933051286 968517140 971510599 981248438 293518915 392608340 200655804 676823972 827794335 911850677 733691337 910345878 790284589 830982043 410675120 997276507 716939161 722091871 672491749 744964457 967431930 988761525 530264576 601159812 804270453 944517875 661671960 795937285 651627258 948180496 206503048 433542637 471263275 978536040 913424971 959780168 119934751 428901594 346213494 651572097 771511013 913994850 620061467 837203190 631386713 896053518 916514207 996084774 117002150 902767892 482813659 869894735 509746693 727540405 849791390 966094043 195009451 483195032 286160118 443588508 318732348 558994774 49620755 155173773 457971634 808724093 739437032 777902341 558760578 716262896 202175313 916027110 539056269 729076665 496147274 932725560 411899716 459712464 146436426 932700166 855777768 869546900 192320849 218698167 152347114 874730734 402417411 803923286 406388706 655598480 565020624 618355040 652708131 958173569 826728595 832765328 238632792 546206580 684544661 836196631 722242385 984363027 188517895 681382317 243331808 706732300 623863759 990379170 698583228 808233489 856780248 978675939 204435592 923997505 888550894 973640898 381137140 475168402 606850890 920957666 814490792 820039501 39583078 344015708 45621752 336330672 196668443 968457432 421890993 632386963 48118099 384956414 206058122 849134297 141621232 722002777 647019387 928976575 586361264 761453199 682097029 847224415 536124812 596252657 273275414 740820541 528726662 562853326 789518657 907517893 196836034 707705736 735234434 916219178 85239548 97039262 752919944 931215017 57539607 654551165 24527746 675900702 564499389 969355806 590629311 605864816 71343268 542952771 138835464 356087365 723018560 744173917 183175898 856706970 159212440 727831248 767136126 815601161 471001909 919831756 289751756 563432091 898318066 949338857 754015025 903842061 227196474 910044701 684926339 827910055 47720839 732617183 24549128 170344752 988260020 998349565 546528947 700156662 822174384 879872576 945358949 991635152 69490214 637090996 184023392 575921326 779647699 913116883 537214905 888874185 803086743 953962231 939000988 953924427 745068128 920513370 270871950 744754580 947483520 990756220 917434763 930539352 241373695 456014978 499593320 782533915 722772691 941468106 632389556 937311936 362003586 618537577 518802819 957959160 695521627 864901009 87237773 842578550 569696687 827624811 749210588 970852201 93857101 148426942 146276701 218382986 74307059 115399063 797804119 933171694 227211648 997821510 507052690 702838985 687773273 889395655 703906549 975179606 326630590 687855975 861979923 940014911 977792730 990120295 238129156 578742968 388295516 818641119 784904013 890141044 188323947 204609752 89589486 137306858 3965030 871897106 356835547 414972292 396042438 823778361 963020333 964481521 864769409 911314793 560080244 569682015 466929405 633259960 624222016 694971508 668743836 995244665 936877232 971269974 382607476 858191487 464421303 704645761 595236786 605051725 397164744 540848584 667959854 949030917 547566839 698993092 224692217 975162089 608260092 892988871 472905064 684566616 125254494 907451220 892424397 987231273 659774229 941068596 594100598 905373006 431261026 503189186 576378036 705914535 503702869 830296451 22280980 565315115 40143608 303032519 452320665 680265760 383008730 471770072 408292938 626505754 854505709 861325908 516588763 931567220 672552011 950192650 649339839 965796214 178088786 215378163 585951799 643894560 819333716 910893248 815476328 991394302 880260144 950343232 944402999 979049656 151187964 359577270 583684712 865348587 713146645 799217181 432214745 494639161 912226487 992432648 109946728 619870181 905315333 985770799 378735540 524111865 297168656 936662325 801545608 967086514 104339292 974845584 138479252 608469634 288684154 578728054 866625453 889001536 600695718 986684584 266435798 898775000 391945441 662012028 202918697 461065076 184151137 235808585 802571088 998914186 459400916 719079309 798505643 898561363 994728450 996363779 193976148 878241200 898998529 935847313 198805922 835169290 546274473 949903343 173889298 914491483 17563822 233565614 359352195 937946664 358621310 689229020 618874589 761906738 375808902 649952826 85334892 263359472 650254978 760657056 285820178 797182106 827061772 967420110 374655156 965500540 164300871 603108546 74770866 998394062 293639166 392234271 436092255 913962803 909058280 982323208 912336049 982562393 604872153 854926385 404481885 767649647 960495243 969462898 181441692 625499286 825007061 834512900 667814625 676287204 465348257 875630356 332380814 866225216 551718030 777485953 227313914 446800655 364874786 410581290 262073725 740320107 24461941 344758450 464029020 605496856 344448608 660975257 426945519 838879530 128903042 343545501 361661939 945076846 938834300 954884342 128091517 707339973 784689943 927313288 589059751 820204849 648138845 651569266 434251325 800542922 475770756 498342286 755709052 905395064 112843505 281415928 839538624 997274996 993915507 996218138 310943536 873972469 940695708 984029110 423078568 514607781 127693391 200497336 729648031 891568714 573008183 963701973 59204079 476183191 768194275 996032258 382051465 968260034 829862805 887606013 18458662 42889064 77490082 948531340 170514953 244203671 691000486 959677159 235713144 328230226 361121816 610231286 286543455 436872442 187313109 384163943 545929016 742821964 19993624 891764796 105180897 347261053 73819211 294571471 282071535 494081543 753701896 774742804 660607060 885794464 677105581 933850987 53262368 571939703 629557686 961196493 851842692 994789937 517702762 735934790 471035090 951424949 925909486 958398801 839501401 861722353 346576684 434129731 603593564 924237085 238585477 559200354 174351478 202047921 467953132 879304154 139345587 869955315 120409242 691678739 201894703 664849284 228107571 691242497 282561783 662379309 554767633 898253268 49253606 659070961 854675394 870170071 14983852 758837063 185919496 560624191 292492989 568061104 778686916 881212844 913827452 943430278 51351056 455269806 358968410 894146169 244243623 870382499 404215006 732099814 984139978 993632269 916942908 952885300 269738669 561477366 969220594 999101064 186183669 307252093 100420572 564081686 292016022 413518666 909245154 922770920 526113415 540400190 776063805 821580347 794777780 990157228 311762031 763791488 596189928 684446892 827942099 909406688 214622773 927085175 602821566 813452815 159889377 933403504 876122500 915558720 990288289 990532052 823024742 855089560 325427365 376405277 666666865 667739011 306045768 715265754 233585369 251354798 252899365 813182466 62826453 512917358 70454824 598778805 18599542 276967784 173340034 377512077 720083595 732582387 311130985 516885324 47963971 272703206 391047749 829647799 123619695 305667087 439852930 948179365 521231190 892089221 606735121 962752303 405569489 770527445 292089129 435218208 155786870 730714090 612104713 619428594 195399888 600428910 421369880 602514839 440088954 957849890 360010209 491148602 977728952 979982529 934973029 966162510 218465142 437722204 57383349 231200399 731462488 837488296 492301020 666105636 111730356 939238583 947555020 985885136 641245470 973521126 426888973 634462081 268785379 423526671 145178693 789720205 699054597 876414719 598958536 731795286 610787030 769922596 170370461 763299220 449186531 575488965 945120711 993991252 921339559 956386311 752367348 911659938 950301945 962335687 754459381 921666520 277113796 749988252 269403117 575259689 85251422 898691974 582507706 666447070 974544739 979682780 933264469 934367019 889534247 994325084 239101133 475693582 664918543 686284585 885715357 886933776 422395677 460804077 186343790 236930692 619542348 727931615 130983101 295991615 865640408 892355902 460818339 725142605 148628412 729160799 665554969 977376110 193944518 547468815 430251524 738887918 647504252 723533220 474011525 718869149 650247005 899566835 368671248 491520441 956808869 975062535 258279758 312844440 27504284 993986228 432237500 899939852 395406505 877682236 333511054 408503559 993690315 996393875 545917539 629222378 565634387 864754374 960896992 963359696 815695881 945933489 606295379 659157979 631752405 871772713 3959144 793360804 466525855 832585205 269939067 926832157 60852267 789919761 240471178 778460271 628763416 741875195 611914809 827050770 300006966 412208740 9988692 927179051 469844731 620825822 377719048 754272936 870344667 940024549 800268470 919457763 42746837 514482805 584516607 726308019 289745538 994302845 714419210 938233095 541304583 721617359 160465066 925924926 351533411 430992179 550328815 592086764 858537610 877629390 469413705 619101994 870263180 942171044 194899051 313390033 849133230 851840301 116570620 781863145 141454220 402786547 321909476 504441228 397960734 429192346 475081319 803218641 192988989 434879260 641587628 688429773 983519308 984919876 860176315 886495383 707171172 983668046 574820690 876071928 839438833 866744710 494249844 815529231 842894181 862669007 351130638 835637103 576605782 781221682 564441619 769536642 524659210 780727366 979555323 991025418 487339734 778735483 971804492 995730517 48271562 823903895 982243188 987500252 770303811 771197904 561534724 573105452 179410972 247058301 599490975 737200659 456117079 934446911 227180250 324735680 596699868 647762134 372689725 544273840 138079308 365869904 390145973 580766970 363147957 871591571 45103210 808087042 546894326 642189686 832073702 918116003 547595291 886722721 722548873 841136151 307970062 368586312 708229148 724968300 840410670 979863457 460559280 564570362 689077601 996880856 737414844 992150060 819654577 829822216 290218209 777141545 517985803 690728098 247202834 308885495 444887800 659993145 915013627 980167290 608206389 868311304 784141165 871731195 545587884 756322295 609383662 688010890 905042736 954732703 349292762 596044662 36199932 846908753 858611740 923371393 190066020 565321520 433379630 620998741 373594309 767748767 399131185 699024818 871389193 922432315 633824803 680684996 575867335 662585478 330728708 855444500 913381511 939119656 870737993 924898547 762167657 889822965 877563526 998484550 75298600 907412040 905386918 969703978 854982639 933316218 520154531 938196238 756468740 988887296 917621665 981587803 765631008 931096402 119157471 375597590 138503108 531939141 670085725 928610570 734628603 745266358 21296491 910987799 923425616 934266961 832519846 987715910 780622642 792711253 554643611 649722671 266666795 719891663 514968456 928953356 587471343 907488287 85739950 628430521 404332532 833150846 105704517 701483113 948373492 998280755 547110633 552026668 209768795 625320284 438077340 878985548 971938323 993795585 127652970 264655901 546314465 868835687 884766435 998555531 337095859 617477159 722809588 730272916 253689976 718921252 145983204 209188564 747886557 837918428 853118235 966627572 311134444 728199213 398417858 560875683 342960859 636845909 705861206 994276166 3291134 824543736 927721605 928774609 836532880 985169635 132659761 524858561 294963184 331995527 166878764 826560425 424051114 702130304 189695610 662314048 524878143 963672809 192664872 302145411 138410156 422352204 76756846 573557405 775653640 842489798 127911510 275833622 292516224 729676952 988994751 996443029 437347998 961197836 180641927 463865331 959230328 996394257 557379199 688647794 104379412 453393530 212346840 368164951 30816895 606774787 523412026 796073078 641183993 960772520 457753629 931336101 777320994 926667365 404575152 995362312 990469097 993254451 940604574 967225741 95482262 613921291 445658072 482503599 983232537 998076061 402234683 573907713 584996721 830079192 568291850 737926333 769046534 887335210 519321654 929607128 199080931 978122366 232443078 616339083 320928172 856834430 55961838 743450922 292316112 344979944 171456066 998789381 708806628 832044155 326405026 676854706 501711945 801501342 681527242 779895245 595815279 752658353 173948278 544120104 629598089 637899950 154406984 398797190 209914127 870745485 710806112 877253185 420471177 898524323 236128062 618289078 774735631 803464218 784311140 943129861 852486939 958550332 104014445 168823690 751228114 786746225 222653526 827513917 836513078 911786510 742248860 778126757 751201051 948410247 488116459 512434053 829085056 869707779 512400658 726694731 652796668 871823033 825124584 933262805 998059325 998490118 490533333 936879390 731436257 937064012 694276409 928884993 610272286 792891510 632608953 725771585 939090985 987009915 984051142 986723882 877098364 887756696 124444824 296211971 426354213 830183587 719884132 991160195 964452348 998277936 736799925 976080495 746258392 983370891 322868384 649575145 183026867 276009280 323937881 731525557 677412843 884393491 245862708 406644399 60188389 573064820 128217353 682201826 802477154 876700215 411859856 842199899 898011391 986342562 384063766 638728611 481495472 942319076 252299476 851896459 839129501 957719059 371430831 481864288 926107281 929419024 28575117 220824128 510073851 613222896 717492732 767441733 458880884 751063351 53614508 900258256 377857322 439247636 980046295 992128245 524449083 682542539 888683735 951083605 960084539 983024210 36032252 835875301 977419537 978828415 227840124 372746787 71567223 708655359 468211251 602947912 953637426 991777828 646644327 736634337 744120118 940126309 979264058 985939998 878702814 915040770 81627543 600937609 506227190 552393450 446292139 491804802 141002185 743222028 289085767 419747481 189839382 491056995 277443600 357754652 846876048 914472463 246348823 961269080 246084395 475944427 529233880 593687826 719590422 947836567 318620743 982618448 817454451 972659212 888637474 945003371 441525967 774949927 637894143 873737812 126532419 167422112 903284798 975670578 435859034 919519889 333024390 592275580 150072871 994939219 835954026 985669330 376535705 976172631 976770149 993590045 566388018 625715326 988686355 992743515 597420579 919268462 503416212 856070442 215058403 339274427 994595520 995474092 508240351 722030077 98635513 681132726 980783406 982781486 530989776 799332208 203555367 376316676 146442286 895512408 944498042 983205288 262774498 963064646 666987452 921927815 812249413 812272831 853658694 939015794 728302562 818028869 278801974 347389614 86105159 818574241 742364017 847454095 141125179 288474498 525623738 693678574 327017585 615100327 939133905 949220201 972704710 986947247 150033782 566607562 736648974 893411330 693101712 782961640 17225810 667548159 605023247 931921751 395884884 488626442 296168626 576826371 996419095 997747507 899737433 960042796 299432706 797811011 703739246 790011455 311476656 572064048 291876623 858438806 78304698 787342251 540715533 653190043 152731605 578962942 253051203 572826899 179929772 566339420 850349238 886888464 56583786 708424635 173754710 733716152 594611663 731773367 594598795 970271388 697178605 786478415 642750395 843521777 35736509 471854413 398249282 878148407 503357279 839534284 957536588 959485111 8481369 523916203 914780606 965549912 855491332 971084872 517678162 726974733 394567640 458534273 991639909 996396151 632434938 988049010 915500265 954545768 885158268 938613196 830524865 848358700 364979250 555223576 104606510 161969246 816488126 980432637 823075890 861513392 701537619 831862409 613590952 788526926 211292171 611726470 304057709 441254821 914727953 964094633 44731524 958000434 74423964 511853115 201222999 888910249 765529710 902527623 260082893 340064657 53791457 222025559 907349524 964985212 549343175 739719469 328871152 688281089 625387869 952606546 34862043 469182828 342156495 621735313 761712907 858900627 638568032 787802201 541927597 988195400 505467005 711574351 116120627 749705002 431055903 822635868 214782517 992960460 388881988 496683281 928129737 991507011 695534551 839817669 391738070 548666497 576627160 742426951 681419479 873952511 735090847 790916997 451967726 952885437 859430404 998747534 780123289 976194579 356508533 843358004 966030115 973314651 148769171 966952911 109041046 919239914 451531536 828465700 821666402 976986255 905416355 927073841 410259095 430078053 816838050 988862976 445292137 813565621 458218020 747662384 93886124 327004934 216421168 649277616 328387339 487839578 308141656 984012633 180360309 660311248 572905187 909174920 255018118 538093001 346195744 970994075 698459069 947999369 47536454 680758999 482037834 949785727 150833664 829347955 221326839 409355734 150002762 795248907 9729160 800512679 31991160 110038180 655476503 759050363 921024083 921555708 773762084 872077330 82331160 160425605 247001254 934480543 880286293 987095491 776929123 824277322 631288576 763678736 302184984 325131190 914370399 986707801 464076273 869995810 595160250 642930894 845602585 918833301 855409810 893065605 858948953 955639788 290709525 770285136 654128811 731912412 925778499 965533847 128463116 527326895 564242716 796620764 764309744 959695239 322698703 744312389 476799286 623497521 558835656 660613128 970958731 988518966 868366106 902649964 198183198 461998024 883609716 993956605 261493220 826934856 564231913 983514122 407690053 466576840 92661643 663508326 68728905 544126091 444189941 941110456 644751447 901795505 649718494 973967792 296723964 693126364 947412444 958486112 931550529 990552207 490154456 724186340 286165084 539151172 898938942 962080335 305186218 581355198 296758915 913129331 671885896 883540490 878178434 920732510 286055584 986040954 188955222 660396231 745582085 837912998 395628587 487344199 105874759 690199358 2124780 858110167 51592669 53507753 44411463 678893833 948483005 978727113 74621913 296435361 353085376 972414780 690196910 828102305 349989283 835889765 561104774 631843097 624533897 647359224 735176538 824901923 278160216 995601015 187829119 687050338 36244231 973178011 708252340 885711543 308824064 978624126 885802981 913756738 591805880 930524043 450440741 459073323 405155060 565840953 718812014 938137274 357626496 689856097 461197314 972741332 407102025 902408461 866635403 981731678 661013803 989097499 836086632 839100824 831600163 972679873 31009829 343717414 990388769 995990343 616777945 626436409 761800124 969311361 295539527 969252064 544682016 693630768 633494977 778737174 31872632 909680288 113124266 897223937 230553902 634637691 497345310 702007875 650564585 943142251 198812805 227695720 154189025 986261696 458559056 498428792 914301131 974286930 152007860 529141006 801627015 921418381 447277696 844411077 758400732 772802172 273181913 840488385 283183968 913330143 778399294 816414018 279116341 480001849 843092526 909197672 882416239 994726174 843429830 925635096 306710544 971774720 653715410 654771453 128920755 925681911 563648649 867046463 856158285 878882755 41253452 701363784 849092514 868079723 909100113 987267659 254159782 995824527 837966672 872234943 568731234 744359826 105966545 229931395 166654974 931596100 310615712 576314859 703091383 780084594 550641369 821895929 686511783 872225919 991678940 994449079 117175335 897772038 686859292 940713254 519253476 839118017 320390409 748692352 344958519 600223044 107446962 289639444 955090312 989433935 911672152 975223211 265533831 922502720 800207182 843861884 422041905 935970081 16829549 929771162 254276211 418768063 135071737 534019984 640365250 738864606 903057595 973271243 578060001 581936466 401156028 530474915 813584031 846241298 649123201 917188334 299495917 710341795 105794916 956032501 909159007 915675173 291966296 370097722 600106301 668228470 950060414 984278643 993273382 998903294 429657560 498970193 967645946 992335813 998000676 999124726 624364755 848992409 319721580 911275345 237100187 243233201 117845619 321752656 781359846 878449243 312981785 904651534 2023194 55440310 952378090 989839995 96858976 575425498 83508750 453903435 805555581 956587755 455284032 525924210 788456006 987742263 44671818 246644776 349655942 977552149 68515866 702795693 696041768 941660824 841609931 873391860 591244374 758484455 356010654 856761644 820274109 856769152 981346690 990509621 646000518 700780492 738650278 958610718 729575518 848135006 893506481 991711959 592472074 806482471 971913642 974510568 537808582 847341893 26461319 872679367 561560061 611215890 905273289 924542420 553736759 769241312 258725735 952418949 824904990 971094172 353051082 363923297 383767406 492635459 180573369 223550425 241173964 896474635 70863103 530459156 69473407 587658661 834659160 854520960 216500123 340224700 171009999 991920066 344178243 814507915 711826313 893891391 614566928 842621094 790031478 964672882 394125975 926572356 203499798 456838106 216233604 500875654 170954514 317165949 7120798 172759437 37997415 973733927 680293878 959446866 367303886 656500234 241837559 901475069 673307735 879914008 696942983 969605881 264755067 946177778 308196342 875345768 296412444 576327971 47711439 453640682 652849214 768141574 3885069 586831138 943080153 988218007 492860746 649253402 653580880 970937460 612790115 920787347 1467058 495624155 574105295 761780041 207205862 812251907 403074745 460610692 682533092 907169016 762263103 935567676 606691743 857674453 739297270 840799940 250169650 493243565 828319443 946326905 75195194 525649838 532378224 940633398 48332581 269935156 703872415 962348603 763050580 817084942 525113718 773128225 497982644 563755366 213523662 939111060 766762156 943014721 513841718 933760354 720887321 993318901 396532619 927867589 158142132 887060438 708568425 889506821 199608119 524489812 116736444 734120642 606152466 835450351 407674678 982821284 8865483 806171191 624287525 876647817 818385132 981295158 183838028 490740068 135370675 676401839 493050675 810120618 529721601 889382341 840831532 983994279 531575546 717568204 204108764 578447385 975680404 982804296 596711824 967184415 798157370 854249143 528822760 983443195 531825701 738024735 391638813 606480241 962527425 979209122 5276672 349696287 360845360 871898308 512230966 683988886 745095041 756718784 998031406 998707976 113931075 416690893 776855056 931768798 838445042 924683360 510976742 907509940 869844714 875555339 30577763 148999939 179742451 820111433 899062866 930646894 337102554 757581235 345008450 858991123 967321601 985017428 106615602 603845193 183344391 735210975 30512388 632237343 60483539 235310407 867102755 911727227 64575214 833359775 85223940 653980927 691054199 929530792 262076219 920244499 997268264 997493722 735703580 858573085 248219255 929941400 568386792 692954286 255914742 278526494 45314710 997153619 625329801 965816353 789280120 910140014 986446240 991879826 216379421 803469092 706361382 922974813 914411912 957252304 986171159 988023251 43850846 670837810 767728369 788118560 644959296 960493281 928939436 997356889 917856072 927762286 750767489 871744053 267220338 885878904 35225576 509264015 342584936 561864134 990383339 992323156 516977414 777859188 52223366 660191772 332049470 629836500 824860859 987352472 543848783 588012704 850991242 942754590 745231414 760623683 623917319 875742482 838211215 901055695 447631648 994117302 676500308 942302380 895543036 999028994 444144649 521783400 585642574 964263931 434849323 771835841 713327151 981073958 97859134 980266903 256544970 713052755 270357552 396762343 658580889 960416581 93556512 592468364 685211709 979605866 663341740 876903309 143219674 321583711 174811696 934957198 815170987 916230752 351726627 448166154 983151311 992785337 436181273 581155448 998737967 999339934 669062032 974396231 401540177 428963605 587751683 591452549 142066741 344094295 192316568 756296465 205324601 878309524 480873152 685682938 52723766 616079669 161299855 196566888 356124807 524211576 609405671 728243714 355335839 436069363 93860881 665147201 87033447 850658397 490484837 718299348 746112555 805170437 983832821 983920852 556881579 622844932 300015597 849433158 139529402 640877480 87183511 352550481 734998422 861454600 450380418 845198144 652673200 806109255 693137285 931507191 986282614 993016540 293776513 557712589 672005770 912566043 443797662 975006805 409967396 606175976 884834577 975152711 659903038 808299458 813546912 815964707 926006331 981267082 753547881 873532614 757288892 777996411 185217049 308247426 677128361 869025735 376639736 658965387 86390222 984511481 938682335 951480758 708271897 936517174 322514368 669396903 738390883 899386760 123158023 298455828 568330641 974350813 64688039 553924720 583308277 943582850 102496211 716791240 342651122 367803177 104151337 657924761 813819345 816536160 584350786 827521187 376453031 499612751 29185120 957944055 565693140 665127992 862029970 921733780 457673058 863238214 503618831 514031379 75950469 798666991 604014924 612105136 998296138 998345656 347609090 665221512 754206787 824425769 300793315 611568531 434158150 513059848 371583004 878483795 459704095 977278724 834112346 865615200 919491542 965153949 204863851 211928930 754298963 898595716 650008753 913938024 205460992 883981353 463537426 965083528 312188723 834760929 424164010 943009803 688683588 790376310 616623415 962514260 847442005 886548851 607636002 676104333 420417319 840749945 831325566 875392018 429815992 738163717 36179411 991290864 935996220 985703718 983343090 987008536 858708957 956405581 703682867 724560961 198667890 578814060 348607868 459892359 539694308 837994494 122993436 852259059 389506563 998236209 729962567 964821220 2825305 798368046 824801776 960141433 942077844 993284952 469566361 870369869 878765388 957027722 304575446 584413217 194467721 862059966 897586742 992913943 391580605 463416944 263827251 753633832 584577307 688605513 838219263 935906883 348878275 386580929 404048844 995146684 458928910 707307395 933882136 947758803 67413622 370241793 790116671 938391368 687401796 951416134 547704051 595950009 813195700 979580129 237464491 294364552 514297268 678346100 561026034 573769672 903615862 917857896 909525425 935434163 32166449 424347942 158435160 858398186 308915952 490845277 294624598 672916918 720604752 879836319 318045591 929779315 872673891 972367591 681522427 903263537 275649052 834209614 87927461 449692382 511155594 835567128 562159327 648258946 56951825 454464404 298534121 715744724 203628722 571086524 937848325 994464147 96425190 992644750 869072834 918694213 933083043 975241529 857812265 879411298 242553820 709111427 621723513 873355431 828575753 837634122 725458724 981556822 259698180 536591562 426193518 679118952 438976961 775688639 496029098 648348472 431959588 664562388 391810471 755777321 94987542 586476891 515143053 552438992 75920996 606572359 478846569 772630471 111583548 415842455 179555986 867175935 637081276 870358758 358382281 889889279 586683653 996917069 803394467 931261126 87668459 142485691 358835642 461031522 398969174 898250449 200485768 387507480 375100296 645387869 873359847 968876783 174034318 733946874 343466246 658617874 561509501 857254800 903490391 927959185 441351487 723947075 513718912 847223832 470958235 965400643 648991279 950535243 977608588 985669668 896983107 983495741 311508063 319061405 21791575 31599837 233739263 994466389 932631710 963190003 125074578 179585580 376720660 676809895 611988379 612270524 792646607 822898277 126521323 652395444 446641920 785141132 991525230 993459552 650389020 889471618 778158516 859106725 283752259 975955548 599506397 646591380 957285315 971927705 447678488 601021080 875407614 998351307 220051623 912798522 450789173 912494816 448777826 943846016 19406819 613044610 756710496 838828934 540480941 741054514 933351863 991146759 434715802 505802555 473709055 580903204 985642437 993860328 544646466 948207167 158736332 970229221 962442114 968456481 568009116 884190208 823083925 853149739 362305587 888657967 222041946 648409394 763953922 809973234 896011502 928634821 863934004 992032386 719269808 849632063 957224665 972335311 547619084 677346414 623644071 867458210 748810198 934736516 889455844 968659196 478417653 879270667 234631964 368575995 766433172 937535369 249162971 773572986 770086372 850774800 519830396 702399835 17626620 371226621 434324976 791330784 833076062 895419389 357826169 521096467 252322760 470259341 334067722 610345088 672472989 759204806 307275401 519200096 321635875 557874685 944266901 990527622 730836154 934113152 573004597 938495104 149413025 689214136 304255177 546702109 17106929 34545230 391829362 870056701 806891113 972525713 67207003 759581207 536495005 943842439 65955357 943763689 232214244 297374216 906900591 986668839 891360221 926852662 472627012 599637871 952016695 967553950 318373677 774831882 943179663 977204350 630147007 764523986 993796903 995426754 764184266 895410928 730030313 785809935 835231833 935389636 383878630 798840351 925312762 927914439 232071696 384580520 600518460 871379696 472645154 825288225 905219115 971507242 528526161 734621874 522239490 960409067 818247713 969057331 803513169 968079871 449471817 848308421 562982291 676644945 86551898 331028081 363833692 828694492 580735524 971749611 762480446 999073411 10692917 650037050 328948969 818455554 295098502 544288686 304010898 337090112 251532878 960403325 842808786 954349370 479483910 916729484 497755523 533709194 701895501 743800308 863522107 958909628 32569840 808135807 290118228 896186500 910709270 990296648 453577353 506678465 134479457 234686002 487051590 922235716 878307512 878347537 938582095 985385430 816924156 930361748 933185415 975124172 557901670 651153239 542673832 896660920 337049405 641484802 203275380 603918209 30691391 135675064 341117575 658245645 308396559 629311048 416497639 474154105 639898094 761581552 86651834 937891096 205115530 555586380 411298194 905979584 920694395 962444419 456486781 615390602 465382189 954339813 358314646 646535301 176534242 735480751 951811932 998377695 609606791 924544310 879704369 954173633 528873892 613218054 339127263 568970358 480345351 740352221 585056028 809181082 575245850 862147526 991447868 995561136 415963047 752186667 611824729 666763447 3472191 946001181 191432706 952022045 606363324 660749325 807614486 918312872 386296570 521499273 364268627 600327864 146574687 716098792 37376144 747132333 866449467 943139533 588943719 600265392 364736944 827389908 224030686 651885012 88617709 573349180 381238621 846652600 493160916 606202759 151146426 623632354 364124578 880435413 783497340 940710300 726258947 886812907 317592235 505061092 261298828 276817142 525169876 885116575 88348987 507358916 525132977 862681401 156015573 161633669 3194680 882655041 640896160 924156213 510009193 623880500 701099575 946510577 659710002 837782149 23097617 350178613 960598668 996368111 349167261 559197434 158674062 938805390 306657554 880939772 552787752 917878587 355986123 638482602 379178815 765643511 583195618 662557359 744234302 871792658 646940689 681602715 946264383 992287122 526925965 882882548 210381398 915003886 817174933 921228018 507664840 875866174 946820072 987496669 222391058 236895460 512351234 728001186 52713670 667873065 603158096 688048217 40885961 507399830 90642839 669871590 746795208 989455402 141318464 304254256 572010594 756787423 946059966 995804734 785197136 897990245 809389856 844159818 554693388 608853080 381675886 433987336 864561486 899716786 207132769 479450644 210989345 270614693 170314273 788189172 611530066 784650173 779189489 791800733 526050058 634196372 774738452 781927847 90648030 466103831 742188165 784315476 335375889 818398696 792880512 859518634 625319167 713642357 780863876 891809616 609808511 644242087 722471235 762478374 641335677 754387459 892331423 894587625 844490365 910891536 658710058 993042184 110838813 740338619 71996027 260998441 562143032 583735500 255861391 880763907 554915968 952902079 35308668 422301834 422278401 546463320 502285146 958276349 379351548 942009220 548831294 658534944 639177834 697812752 825789966 831965994 962988432 982339429 115342683 810078895 683894669 838038798 311558548 741289988 122194496 342091427 806808852 880387447 283799874 403818545 495235100 940766532 992761552 993071156 108033068 470064419 151357246 670152639 239755797 738605710 451812292 710584376 310001492 672768844 735466980 839442853 154818936 184905580 502028916 836906832 872016542 926017200 544522844 559143980 956860259 992232355 995189792 999358407 850686302 994876185 188513799 412442068 511759352 927854007 727466753 887965390 980073128 980867103 37654498 846615228 989292898 994743371 428003664 759028930 952573795 993865488 517590218 640315493 815607676 968487167 528869555 996563843 434123377 940199853 653233933 693367582 534209555 793148691 689944999 974539347 339121744 585432702 319978433 669061395 992892089 998749660 451851801 550088968 539424084 775257930 886984155 914818072 675568211 851205194 360297216 527577726 7887779 31869051 975155611 980841035 123336121 457043760 476716372 910200840 277852520 330417695 884838256 886678352 69838026 859060275 835235025 996101696 81501758 376670136 658767639 727206767 68757221 143093960 560809157 938780459 149671063 606416808 453611434 687259736 86190912 719129351 974822898 998448583 544356938 816299225 597360123 957183562 440525746 809751103 789475078 904478083 699691265 760259500 773262003 945615087 67057147 986697667 124635056 399986682 680624099 926396874 492944259 696421237 705302093 976545685 887062414 889965222 474838389 954886326 829654290 845812197 881372360 993972246 13730724 245262817 487288613 826951564 889642886 987658100 738094535 979386701 388343605 686776407 383586779 963091424 513190203 608775449 821877009 964683475 724099411 837294890 327327099 620971859 781232428 903383104 428593621 826024694 58743118 688162310 387033581 601016958 855744072 976370685 669705350 891024725 118824336 174061118 522058921 929462496 62334896 906356620 434272798 550329343 2173194 516200195 399087587 521026493 537891178 988994850 188972483 244724089 188516960 638959787 160046164 700929236 930758401 955598390 108185667 727932247 898159458 953758732 876134993 886713064 602079553 933958300 507655010 594235503 453380691 831144137 571377039 839402865 649470843 715068519 57172854 602300601 485842985 729051565 405068771 858927792 769129761 911269463 313862975 359778706 59248614 916551842 237311505 248579789 703254030 972434743 736339208 960288779 668567269 995301765 779963949 969360468 540883367 633278439 199270574 751407833 99677521 232852145 589827140 863741134 891005478 893456404 178485167 327116310 886368504 944987680 149245562 616118897 523914214 641495879 494741506 983445815 85474055 602693525 760036492 828321815 707152203 719409124 400837052 791597588 900364426 972934319 901331159 981833585 566990594 677868083 314531524 450508391 366594383 959429495 696171082 700803662 358473696 889204928 856534069 983644828 5094063 970740061 779797240 849889004 76801116 566954246 697869432 921126926 294036218 485669994 892315879 969244215 328344675 962638612 389495198 759798085 896005728 975550960 71614354 825685175 479373265 602233907 71563218 277277541 626846644 832004068 862715215 872584962 658894048 778490483 253139022 923195105 133121443 361699127 331936884 351978338 479557409 670673699 542243168 637184845 957751153 974956890 579905216 920556960 236277951 950163793 569403868 845499412 597871126 969847041 164161994 696284058 102216357 374475065 251112004 731914678 138808626 791165229 160195038 628479222 661361831 700592614 223264014 419042317 877619060 940671012 297124546 872801996 794588453 946930578 932897966 954838409 423343739 843503553 437275787 829022038 825098658 883626867 132879411 876704874 261461820 927026027 417057430 760451549 914928217 919839570 105741998 696031461 126992375 169058040 393635341 701631287 966004278 980233982 537634605 540225943 284992215 817668052 211851738 544410595 624834264 752335275 920323044 929768876 264352110 826086386 87891639 346935031 483954748 813517499 488727692 562768675 778381908 833855153 349515563 792499728 163514785 636656091 633329042 779982611 281641174 466195527 289514393 445059926 983530260 991510573 124034159 468875464 216859619 284462079 629731302 876056159 630330119 638124051 916928386 927808203 314425328 801178162 307963444 339779677 340259934 664285954 579743868 696333116 287978023 765242909 349355406 389041597 960927926 994080996 863477841 874651874 860524549 869834405 65937738 451055993 752787373 809057117 141838717 437172551 412740379 949373152 875779395 941422661 867358331 886146193 545021827 686346709 219386232 823849815 893052455 942674464 266513352 657438995 934870806 941033830 909491553 918400925 749581880 894102466 43631065 881031991 831703861 835111257 771256962 885427695 167074119 301048209 746009914 887609165 989199586 997507467 850840846 882967101 653776059 661399255 521334482 894631319 20148385 251756867 828940704 833428167 488479296 924661059 676055892 716750613 360394635 907952464 640893136 982114819 707326745 847273369 383179586 547827940 433735885 929838933 398626999 474645980 359759372 471702433 76074915 918842293 569929137 744401760 242490700 289331085 767516630 841654218 398438744 497755826 830917185 840110267 515256071 873351269 926925481 986092868 293099560 845404038 79393140 302247367 766816225 767929537 917600231 963594918 958022141 997805848 283720556 378012364 866489272 882699900 301680372 645978216 756622069 794114022 623862598 854031287 323044429 781621365 455738094 639863255 787720080 870675547 572003548 937570931 285530616 543407413 446396465 911558876 393328614 509995476 601614321 968703626 862329069 983119612 520078092 880198454 128103868 821672273 26592119 333242991 267113255 809368638 872142728 955733815 597045822 795841517 198152273 628256094 59241328 665648238 288435242 334858823 260804019 400340386 587613536 692711046 73690556 486773591 956136704 978492802 876967308 989886757 155307814 403610280 233747244 352868748 904214427 917369009 586243684 680550410 884016049 977922006 597240055 997413461 121181050 231566086 561436612 857419928 250552474 327068152 477889041 614678498 214539892 930689368 64333106 777182089 174787120 612156463 546743278 627853418 245807146 347905238 370920834 803424820 569209205 683958229 323411080 351421302 820917887 883114032 291982931 794826655 568638445 834073158 334073582 691823804 311508321 604989427 660769592 972889873 947210350 990066973 787883273 821222083 376448920 578013042 64043220 366969383 68758644 578801454 254127597 847893810 344614574 383612861 46507786 148256231 84403905 525618163 882998471 959879774 485879121 662052439 732346645 812927227 172299035 180969288 651928562 853472698 481490874 667859069 961530561 996021954 892854142 967154096 750805281 964293022 756852467 855235821 413908607 534401675 880956960 922500719 137188611 539683889 785925326 848097298 719349413 942706071 518879929 610310596 889875367 938591044 142184099 918572787 898866089 973737506 470573611 790361197 412092047 660056892 968364903 986383746 262767399 466501886 751678687 902530285 332134378 888366738 777580990 837472926 800824134 870125553 812371816 946957383 727441693 987013869 437865826 688092485 334283862 596477128 798114389 805742972 474440587 889728120 526351504 593829977 562779879 723206568 464548410 615894092 543249450 827740973 379415813 884430458 648794828 983828472 301676337 367922841 166969714 988789209 860678664 886959924 46772636 954432664 396096568 596102565 992354959 997065414 9333255 670831243 844283580 853746275 74786652 744962988 322412007 945624216 192940698 948288268 113819273 993845226 260600091 568205263 128393352 346243294 612366733 790473610 28898445 349031172 205568735 695721542 821923038 931563388 39064951 96370590 774455798 918476496 879058157 954944797 467472231 744087383 830359599 898421850 651409473 750411098 304539526 498753889 295864942 965570440 320311708 532883501 490410018 763808248 89799057 887471971 256565640 439377047 745211704 759575709 557488645 840271990 280390410 421190391 455419428 788641470 747462458 994865813 77461913 134519100 6211432 471492773 944024513 990661204 192591069 815772847 430315687 819731460 834582009 945489140 141385279 727646075 475149050 511822697 414826453 532475973 186876434 513539742 623479623 832672699 579672095 916793806 63699436 949977410 76176467 313700495 718540092 870812611 976526700 979339746 229383604 906711707 628872772 776927794 681826937 838710502 267464474 478841996 547759028 786944231 762732106 901762536 187216919 615357305 300893015 332645977 937703283 990956223 434356625 567424919 341302474 434668339 3429221 166517269 145765912 229198315 941542853 978668176 667152379 732375260 616028929 647978717 993277445 995948092 246123074 641311466 652112788 787151795 810654785 888869092 338462168 635825914 322161739 374988805 244858380 808339995 628528657 982022399 175518143 451864959 878555736 932333013 286595801 604262269 248320510 445251451 412271831 545667414 979082653 993544435 320663547 770595649 854333397 974429283 145263598 672866767 948194709 992533779 664263965 856078957 766451227 854222482 449244071 611169108 793100438 820636582 121529483 897730529 819784605 846888603 10678878 13123789 605543367 658620508 216579919 233331288 635880178 773274182 43129872 153381123 584614637 656167745 610834279 916122774 373236701 855940064 610272005 695782437 816354346 955329129 220891168 843190988 95107589 664120824 78437892 574350866 897951636 963797753 726672157 884392653 454601227 738766255 162786927 425981053 142612398 986264753 228954737 877566665 791389156 966809888 775023615 851177579 57153436 68489413 432943204 896027626 337543703 772703657 830027775 912557168 929411431 950742111 667202320 707339665 200116768 844456045 564882284 790547451 5185648 65876995 215818494 499280054 518668923 913223949 921717898 952780405 928579082 960392512 94676455 348778437 570654939 782282121 525786857 876517775 609237770 815385452 577833755 911628601 163787834 886247555 720646590 884185807 768649450 824180902 561830807 865150321 128511842 311866368 172663733 287523230 331257123 598565190 491595347 818957010 254529455 521374867 598698507 991336654 311982366 513666224 301684517 446841139 830205691 929718348 564965842 655276641 511462575 666543009 796152327 926662396 556550789 785786990 84381593 852185636 569003802 621338619 981137438 997138726 355238492 374815580 633818938 657933145 666191048 764296630 981600120 991652411 1317905 376226636 630553858 784154897 813381783 877622179 273469309 703791724 427886193 821226947 838320240 972181413 510376586 691328283 456007769 961956070 544080281 750465150 219076364 674128561 693126912 854423410 236871697 726101251 434474800 575095157 738302724 949721960 467395228 910308167 869658352 881240881 76396642 373278840 725549876 938469782 703540994 976073976 100796165 760393645 283816089 322693659 638325173 771592386 676263191 785084645 196679345 499892142 807979018 936198379 899066046 945844454 164243415 892236901 753208499 858919544 642814820 771624709 71544348 320622397 893368348 925133509 780821206 790035785 297226334 515335099 90855959 668505401 359525819 796953309 185086149 233342369 280630981 544683522 570950776 593256206 613207246 997342713 838074311 853578258 224016809 964062133 51412035 68547222 406880269 761069852 390785040 735418405 540388633 878751140 716548049 785535400 637122784 736913844 213389169 880666364 353669708 764553721 460061644 895687600 682466915 793619621 244882860 539864276 523657166 832908077 441507717 643185227 706567641 933995668 182395997 907247453 537443883 716358101 659089776 921865567 984275939 995181540 377734725 756852481 611032353 886109487 921445953 930392373 43957320 982478931 495544094 620507567 139174118 603406606 749180444 822029901 689794548 735747533 760259914 840780227 59957120 255930975 527121765 956468493 320418246 410559372 748833232 986110467 789909053 817468482 485448224 877288967 165057950 415675887 590954220 655091672 866079383 986162514 442442188 708999934 471760280 828892195 857020459 931616011 110941888 313282297 689204740 921721735 50541356 781380676 108177406 299052934 277574632 411600425 473454923 709134050 413527048 422407092 883190455 994406740 842970418 959741786 396012354 414964894 247793180 891697446 354397194 710760974 31602350 289747974 108204183 198291871 742335954 990590935 850242293 916899318 363825006 914694938 1773781 379714650 550708266 880812573 647659239 745371333 81259631 703847571 697062148 846430848 85921967 100097719 9101313 545141541 225877617 529629783 167545711 549089516 467094329 761708103 883933823 977552147 971761233 982359809 211881829 849072255 872310453 949474214 784811740 932545952 364266146 634830753 214538761 463813680 371780715 498982629 273850801 904047744 601530317 914184682 745342140 935859150 393894758 780186503 289866743 633554834 659307379 761105435 749279441 781095350 344383518 873640553 224056502 531785572 991369352 999253953 737041549 786777001 571984222 963467506 853692768 854973088 97770651 422808442 277989109 408249222 79851973 469692817 911213832 911989089 305647086 328270074 716211028 716605097 215292066 436504707 298348221 813517711 286335585 441107796 972438602 993979373 730991854 959983737 305165736 609480129 101065575 938586069 753020487 986963034 676074909 926753708 990278559 994413939 449137704 877311018 660301758 754271263 384120079 768154947 366304496 718677716 870807278 919356656 734352042 974810557 246288567 384322293 1663584 50873340 1749468 603031300 68262609 115482825 580445870 642167883 608283668 706235871 424959539 749325588 175524092 750929443 177380602 361473074 927115448 932301809 67501327 874330292 954871427 976872677 43306484 518862539 472369588 838935293 139060956 770046051 770461409 810760940 610694254 976753145 218759917 524299729 189167915 794890848 714162098 865760809 844956221 853563909 334064857 956632426 957411812 959351188 174683383 943654067 833787323 910487123 948478636 974288262 513220107 980680161 716624954 831472561 718091958 848668613 627174666 921082630 156660930 270947177 236415798 435332638 337769774 606550879 119793349 850347339 398387332 415897123 408038326 865375578 347709127 697862452 547612844 842240103 676578245 740619437 412908792 475321643 388908117 575463660 396717187 441955223 542168128 864238839 528649501 996381441 42793456 620483274 121559154 600827063 18699487 517972859 507804131 787097576 222099114 458159127 626002708 899331065 913351710 942109811 943821411 951501204 696613176 754774765 819107762 966975171 328174189 580102812 406871522 985583315 116003954 421857052 796024108 942348471 501316957 803162445 849607909 939657703 767798301 861261653 513184220 883278070 199947588 631439314 379903904 710167390 769093179 936540035 594027334 666763295 172905995 511257954 721727796 965084219 763800701 993228389 229918887 231576386 227353980 445192565 157630686 180188359 474006687 615835565 440809781 577338937 508423420 821701930 5893299 928689424 167338507 646554349 839143759 994549953 390870415 868929149 891283685 909055410 6644967 220650219 725829889 729933826 134682784 978339443 361005681 738056699 343816161 753161359 791850982 837534810 949533745 971311187 628445410 766821896 540510386 638917673 166672871 541975124 704755439 783528308 516704950 796701069 724245266 781345384 196260788 621599161 593082407 628429894 165550223 227325779 954676380 956264991 914299427 964032028 719238572 757133298 395685746 845990931 617627860 776913473 285968280 844802889 209014259 896693224 475388561 776222337 454865155 635653933 121937223 839659524 616625445 869469175 904688121 988329036 598734941 972818994 358345245 797524938 378967535 438263221 687249022 723932541 719090462 723146466 171530782 922186143 789693642 867198035 873272533 899208362 294881620 936449827 15126572 78423892 160409349 513641797 521182366 639919712 701090265 865628084 851322592 967813487 412335086 978013734 77904054 323488761 961636722 992162540 723729787 731695405 351679144 745460575 874910829 929661769 836184065 890819266 877519948 951591366 1929956 914017653 266573788 800807733 625900547 774695568 253013637 347238485 815561918 850073767 241017735 504079553 761001512 813118243 662557614 885154038 564168904 645162979 152613742 353184054 11837466 72961859 227936382 623018054 157526314 329509218 518646282 574288582 956724990 965692416 49484552 467269680 827007761 964877149 823473949 932656762 467495499 862227472 405555782 525611811 579534775 702376713 125495146 622624599 984674471 985612325 897112834 929784748 554619098 905850146 681236888 788449399 650932542 971826011 786775044 986125187 899294993 916066418 126014368 928328025 820578081 923586846 469326295 498019666 406261615 952900640 109295636 691917517 723307820 940762310 488365208 557782826 211715203 747810458 700475614 798042030 354378570 610102209 984595891 995217792 317178065 511533117 754699433 823494333 411535434 887066025 679255708 992791778 169349522 585207193 450742286 656549936 152572533 655131383 250873726 981075888 993507486 996823368 804069589 941942240 401177954 898171706 828872640 969741394 884707366 991416180 135956706 174319587 483225984 643425802 597503022 732026519 666368474 712238412 886291340 935751020 209332979 827540092 630155875 729184374 70298072 843425939 410554720 845569563 931009808 946313052 573709851 678300766 818729166 947526745 868121890 889562412 602705985 615063842 815497615 926510841 189007638 292325494 29304699 863269890 337806206 553050631 510344219 748284245 655508442 908544870 584455196 712357487 322576621 359771354 349970714 888429745 525884621 875932757 907846352 910577409 385227003 532100856 264761163 344637148 797665450 959890153 324619636 831423068 968353370 975493911 295253957 446078808 217244911 808832394 563174857 761925270 903223946 940486142 307311473 869014726 905175874 937874284 925278521 971004484 91064113 396367548 798274633 838261739 753220809 993826460 600497227 654394107 993044590 998256812 675190042 818005635 869088480 919425758 878967680 890389841 132338521 407917226 478115175 508669737 501346025 579669084 55424592 278349620 758501648 885770719 761821522 816335006 665822830 672555444 691785975 725813669 358633116 981172093 2996050 568035436 222623856 425252884 243236592 278945785 620263623 873029267 858866998 971703943 6318349 660192265 183634326 957791362 943174950 975441681 149430903 877919646 899792907 935733989 455648344 892955765 479003484 558563340 865107621 936662875 962880270 988012078 884412202 961780875 272174408 455306724 534548004 822592282 823619044 895190322 588294438 796767792 156688052 969331027 598126332 821072291 648813495 761238764 561800201 570063991 300299036 736824431 48800175 885858931 330677042 915745042 695095823 730474459 297398853 903581499 773717154 934850194 659952502 740889822 905741515 919191468 379565624 506359157 719484831 975175810 156108876 968351772 178257415 822381894 75490741 856662983 922434281 956253457 114854531 527993274 636580930 768649429 776826492 929298773 732314154 891811822 236601163 400217616 681396072 998007023 521795184 533268781 323689746 919870827 758264213 884827747 503868347 505523068 899436513 937378560 787784150 859958423 347400881 850194432 592686737 738207102 377010105 667094278 109007309 351702203 939441979 977781079 893453338 981892185 105395782 310356220 403903208 578372232 56285621 517296499 326607919 542230825 571146356 952469212 826924027 884749960 906516584 960988853 877139086 892010306 32777616 517316646 479951606 574089235 828133555 970538122 956172645 968008934 120693618 737666481 120564380 453218957 177514831 959298582 7607269 64327135 696451309 765165150 508992480 556574703 85410011 227102662 942404788 956038028 641512707 914671307 932707830 970696520 141505306 152449050 476842035 658484865 971341840 987892311 817257804 952381120 330956330 445470740 43116277 448390902 983888938 991531678 740070471 932459749 454208691 501178267 335220497 488890683 149724586 727131943 788402944 917127130 590442423 839178931 339859542 408963401 291889113 323575740 97822754 966754247 572767248 587345756 150027741 824615372 839795819 850160736 542034991 667015674 49450756 62873712 612037622 690456673 557368274 616038056 58161124 246775665 386597971 440909289 148788336 276383752 245657098 423895910 166151955 846361103 179182444 735698366 6699655 161676552 680459652 853927001 108322153 783543397 190672842 954909738 474467878 939085082 267963461 613558094 29646151 846555878 457110398 624863578 477356016 618808651 265691772 776923614 751982139 930490002 187016259 471105531 261808740 906068761 392655199 700242118 589617516 816624680 476845311 667179771 299653387 385262940 410007456 665784525 861387071 882308502 801783940 821362574 740436265 867094733 825339880 918091849 215425319 237602350 855059717 901223942 263073626 296086102 846009237 933451315 271091371 531975940 178519954 512347317 835611423 943417900 992039048 995924769 615497154 636436369 362978816 677465783 615817091 946303812 685217131 921068617 96862464 494657552 362639199 971814485 403955854 553010456 174947512 733363623 227736367 355338829 322800850 964415137 926997858 928440438 149866288 767129303 929137774 945262508 798346521 821382624 371647533 630690399 824090621 878807419 988948372 989684268 464097270 572074910 786318817 790951543 36709712 637057980 836483950 897780042 952033626 956832631 153310686 345677296 953568556 987721766 34465326 538085600 857858132 861474341 467620802 580268756 427365815 508058185 495502815 691210329 753659101 997577458 56233 912984894 927388500 942155246 525088976 811100366 757682236 933077903 533651820 746876995 451937 158279234 14629286 33228000 690457675 824388968 276644725 733264624 757353677 992202166 414417493 942705640 995813482 997109660 658413174 670587860 925482155 962036260 837480836 846384636 619002078 906884231 155675386 587634570 887814102 933872756 840099213 966269196 826401166 832618746 497712253 524881653 410102514 838892214 477469010 544849522 874083296 925961648 509290485 992763867 933343787 988162306 669948728 985560366 133158442 324449492 825356558 877700324 181833554 986436438 387346312 759106438 837140486 907889261 458120934 728815298 729492874 796698826 179598123 878713711 7529935 332655338 168083957 660733581 170646186 795259469 639342430 809167941 787229768 818064621 17785785 522067842 321772123 711860432 625041926 884945880 680289828 880454136 841711026 981486809 122363077 553001477 774590210 784875953 135417025 773418287 962966814 967126934 407713747 857758320 622240648 710884787 600861452 932528741 990952810 995587572 697650760 762685220 203702059 316363692 21998383 159341000 356210804 611990888 802035041 827551618 375123700 857688379 392718743 607488905 329969749 386570243 893634720 956687433 234288366 884965100 333719719 620942140 879736658 956540338 535080016 641861614 283233426 553869156 436604920 530434392 413079154 982770197 946120593 960186704 659945616 960623782 269981641 954554793 501837814 754037860 491247419 744655022 819708947 931538132 117399400 328202590 529394347 812167869 147601896 266709916 536933203 701835188 85405844 797650843 185780694 194842216 143288504 773450561 279315193 933527098 47609920 526588445 673706638 985283231 829559525 835918816 404506262 800691474 408541433 951281993 684468057 731577981 507760968 655008915 474938873 954067552 848892258 913168271 450934817 765487951 497034366 704325293 992121863 995185355 123270658 568095855 689544991 864023447 555528655 788824481 150375110 739830346 306109015 840755407 786071630 982102314 953188591 989990997 774062331 846910465 305215586 724141337 487398133 888225289 359190152 716555058 257537920 849470549 17542325 251719201 115092752 411538721 708889907 962713796 251145681 384580561 782368911 871906082 573503156 781680133 895042050 929851718 172228546 648502241 343218443 563022280 445314210 504991116 895478124 940289773 581052844 960048724 31417777 363414460 411577991 850491434 485012763 981108722 670449921 807696771 264967921 587231751 235102540 878684749 264931712 856137217 660085055 991871989 186599496 990847717 926634030 969341493 20687731 721802962 64034273 823231464 19202808 231471004 975816306 976635775 408642471 539909651 204223039 209784259 728163752 918220349 971547479 971695423 425035797 813284001 963747362 998770156 728083712 873060435 120437064 554886928 212927790 406704670 433269983 553762785 301052739 953883629 771149123 836894352 265163507 438996424 164130505 900532799 117869880 453550321 857342414 996305225 357485558 581093804 885641770 926082886 608204080 881265931 663849347 782284433 595483937 713608973 409657295 507086486 960347497 970481046 26868339 809254557 650243942 821508762 427208933 695144989 811906970 857691080 32597401 654266438 282764484 516635463 495299733 570832291 82234354 427279686 396851913 734491223 924329092 967728928 543137798 595250139 994027095 996524389 355826052 945377732 327380123 608360330 985261215 996350139 492166961 783710209 701266250 938537478 980598473 994515947 378266718 733601076 222375032 277392483 359799644 693719639 515947791 988044258 490796773 576969724 189930180 389869690 477301179 752625141 483569496 632254581 50767391 810584337 74904362 85033589 466382957 478511349 501047712 916708453 220218146 642878156 881493951 884519893 970211400 992781571 746388969 748036022 725596928 977019379 725798509 769004472 546417612 980043786 182699 327506740 17445316 302300741 717637830 868831404 524295563 533481439 622741950 887826522 6502187 64355456 277206840 525932375 909320565 937077968 329551782 830720580 167108361 772949163 40395048 184459499 320497557 705994801 581391368 939207258 70012060 379922001 236411120 395762903 69130602 535917428 412554533 491121121 11071986 990290942 953062456 981760879 887369120 948100538 446364612 504492761 360162423 441088973 971911479 999129077 863207338 864649111 625198378 640002201 64752805 198727235 449274983 507379110 476434665 780362421 565779057 773361618 942485113 961301498 724561278 748410143 720512555 945876764 998516233 998600902 986785434 995668903 913710332 998057307 995910139 996531493 403826653 946409539 404510103 443710926 640181263 691291126 727164855 814453070 135328786 654559113 179508121 796369657 636774156 724733319 943430494 979180669 174942574 632186724 812455267 990874016 389971783 998914161 165291378 232153271 43909367 469834728 160458123 197008956 695701104 897634261 734282946 802899767 566603414 861409114 912459127 956304272 107572550 706504296 314818807 927587250 709603974 737150731 765757978 865699522 776500621 794527373 274447325 976179106 704700268 863118712 919335656 933887689 197077337 835973674 142517998 518351346 128818352 775452308 329912902 636932232 354552541 444389287 202991501 911595484 762794521 892633440 258793308 399381893 774389659 958995291 42219990 465607031 482598103 914919680 512257152 998506208 174011639 945285855 709313708 991052217 477679269 905660340 162746850 234571487 236945702 531396185 654205994 667358461 544396914 559267674 331124595 730746185 257995630 345031307 218151282 806713841 293006616 858224844 156373025 631447981 127880014 841172704 750030126 805682164 272046862 613484668 218051964 664282871 218527579 244388473 952095135 968442021 152573662 993303990 925126599 934918048 480842672 571512604 94978877 744660352 918800262 919634321 92390081 131801648 741094204 821731878 818599434 842619981 491379064 709115270 37988536 366655852 421944674 943826575 185233761 220341443 520497269 929514717 742317550 982656359 716304901 961724026 723982499 942321320 233150361 631049851 582989721 955941762 347472884 393289218 978243610 981780710 839162649 852569280 446923426 564565577 969811063 976762402 629849809 678463097 400142605 674171774 641636443 897335388 951651639 961678497 329028697 990887853 697343272 832045156 525006497 869525132 722249104 794287049 594665741 646570762 491311997 947931668 776721548 919762356 982344009 986296880 187892923 554942764 128326713 151498675 658920176 665349473 801843874 986738904 450014229 800632543 624797685 824789635 231895353 585930312 141299748 526048254 811393878 895424031 970891252 997143068 659143576 924189880 475539404 818712986 171039879 529433488 248147980 577957751 18016422 408913866 504802614 668096293 794124088 812879186 977593588 983520677 533672800 807373786 693599263 752912026 933578776 951237288 538990410 575243137 197039331 489477441 602844645 959520833 271212789 756356530 859318357 892193017 892850478 901538743 145604725 660340656 46721234 715745060 312003708 870206253 806687469 899258596 882895654 993159754 589158681 910491080 284332911 457679001 424557263 663336558 72500101 262771769 558588820 570978074 340935733 934482096 539591870 551314596 99239190 338807802 129308833 988123912 12829736 442443343 252306870 793085087 484451756 752868116 359092997 365494287 10133903 408875438 261319334 334207159 571030496 711141266 371069926 761630865 623373924 936076514 978770241 989605750 520095612 938900353 944705056 981418510 951238336 992763825 894014088 915719242 312686971 931200667 382896235 743607693 768353773 772536235 100354648 440703915 746085575 779179667 728593130 927931644 981264116 982248934 187588498 998457133 625756869 792688253 656731681 688707947 966210147 983414074 386793081 569747891 982952352 984260068 909180870 919149539 508239316 963552433 935199535 974718148 96051224 393966726 889200735 902152740 284913198 399379172 180932264 963866845 555198517 595430269 609341641 896069912 851640143 881661100 890937831 952914491 550289727 908907525 364918327 819492173 695448530 874120395 897228533 957426696 800269986 932191612 958764291 970154386 278339108 752101548 950358549 991172639 355205608 894856468 652352075 724803308 983210641 987780087 471367056 826583311 107114912 494732848 470752765 967539701 766099411 927147652 115410465 147653179 859962815 926776765 273405731 284400663 365760474 498324081 914728863 940152166 781052314 891775692 56496248 568969084 268157586 878174321 50199567 111270643 390074208 952790603 924285997 937226619 782021963 986718193 595263325 890981771 335275328 952852087 15970937 115263721 670709034 821142166 691697506 971750988 978920665 990260013 503971403 895027406 91491684 836313148 249853770 435818209 82746931 123300485 57866566 462637878 148191131 771399909 508918230 982225667 306128912 545604879 775827020 818580007 748697395 904911212 9340989 337263617 225719587 553463674 875331090 958446839 259137876 467124523 421756085 962879458 608515747 995290814 681434486 701703426 970762296 970986758 48188546 147105017 618674230 859205789 877763320 943083189 289480500 594226686 455865621 905842916 576213176 961383169 420820632 866243114 509439546 958085107 508005024 515050274 463628128 706636470 996307642 999156912 289859817 340360040 347644298 448416622 515591572 571199110 492609368 629222124 592088501 942346666 921856458 945109011 495813488 783046266 193032017 296622254 301497588 810713368 22030422 717248237 718072666 828098545 228350686 510732621 970563666 992460287 126844964 679946835 132807024 323461677 225530237 487615464 901983558 956306569 904973543 905741959 860691148 922676604 993453869 996845132 106248906 855060024 941588716 978009289 319438875 711004879 817631832 835412611 508060514 629751071 223996028 612741140 592158971 616697704 388711681 536076294 448216664 553717980 231765206 835610723 787206456 976805792 901330372 908476053 136849641 176261101 473712979 989156809 332868882 360972167 789393119 997455287 460049098 959938861 228593273 768398548 621968293 626585636 457424135 470740354 849203374 984643334 528340653 953607681 541661545 936252494 305301386 566815549 676435917 841230965 134891118 703359684 581951051 843371024 140528328 797858904 534511790 569830603 234995657 712148629 259028314 934656644 406683944 878946451 214027574 234855170 982846394 993447838 565617355 867696930 848077175 876742482 552680055 562516857 487550426 622177334 488387826 562263551 484866350 718310943 47970359 647082772 653442868 765553915 494514523 923090183 366610755 934657440 754829203 958538527 841943487 967615616 197785431 300816983 950364073 982296635 123205274 576289983 422776510 430147407 172337334 659972035 449034602 758242676 333401977 524844398 992544102 997246403 363344037 854986686 379405079 650483629 86815057 868733069 363306163 787354138 174676034 610494766 859063235 876157131 669924177 958381654 728024453 890042394 720138169 952631111 763495187 957929825 41087182 906212890 573316550 882241826 43264355 733148365 748125753 792740156 702481917 961653298 827133587 911886547 880697141 955810954 546983077 939535825 415766630 642015554 297731443 812927550 482461421 840059806 437206886 794733056 909008882 946259463 598129788 685439976 979001510 986355221 847166788 974106179 928989328 970396637 336616792 765350323 980035001 998379864 573990619 941042070 773537426 927852377 652838225 783233733 498586594 647021358 219987819 352591662 616411152 807757952 193446186 604715287 349196284 672469293 888164655 959197712 115251743 494032541 299192126 983178099 347236379 391571511 269464094 864602160 226454709 965098102 118302947 913800961 520856073 594591703 22263949 538640595 286037794 843781570 106958841 140807853 707354609 784106062 992287717 997652691 731600411 825321888 826516593 862677672 872092471 952638748 126554401 587849810 808400451 893718240 609059616 704133116 806070910 833821578 593669446 677083729 323520026 378798377 423041706 906934980 904170749 937788647 206083106 867743385 958990965 982874912 83804458 188459373 392950694 626335354 42208134 899541127 546766667 705652719 244485832 563272259 425992877 660812103 758070781 815935968 323307755 325169986 471257862 705298463 182677743 977564934 21159029 174228509 364571203 641025891 429571755 438773936 299113750 489683143 944864263 987372767 368664987 563984057 460673515 908775069 927998996 973888405 662683093 685838647 166480285 964041049 669442456 961243541 347064883 708650777 857110006 960065425 256010181 620555733 604487035 877069588 339706333 859812472 729362279 956531513 753374535 945758969 86875117 102578908 308337311 871443303 447543475 833805860 96289093 892118959 571236394 683910326 578080724 926281517 26931289 407694222 764679530 943587839 980053104 999326828 976723071 984477923 632771856 656232364 561448490 600626117 630026329 993746551 574179681 961412909 113993174 963703379 372155555 626752075 743707328 767392684 228097912 291874362 82457579 732449469 404804871 598902345 947186542 962068494 892602906 947061527 827350186 848872280 417915069 431020569 285524842 367714493 755866373 949511510 809800316 942596847 975703546 982860407 568560601 865828230 826830477 920017662 891266207 953543010 267783236 278020425 287504424 712717398 488783980 538300747 395704548 515412274 10694738 668567748 42953534 208016523 745023394 893289954 593926426 760086449 999366511 999382013 667852632 999026043 636623701 868703547 268342189 466819886 991008662 992407194 352054031 879563951 88405276 157701796 672032028 798640618 284189373 940086788 702817268 998036966 791794696 867316887 78571973 387378479 619874722 862738757 822383443 843629496 612005018 837228181 355822964 425794692 451814592 789289062 50524575 846496003 719416684 734730223 715414031 959764457 471886424 732522200 537558282 797411932 397551632 512247589 546308655 643977987 734549744 735100249 447132446 690654006 615218429 931398504 407214381 723896383 761423622 907804917 536441883 997379438 763625100 801384019 839171873 942626306 749465791 945217350 754397852 930307644 614692018 632424917 269633005 625514704 740280174 769703369 453453092 511509732 104694023 864898914 402567252 700299363 196160236 625202826 987049747 998270407 133647215 905346195 149952923 963378374 498139353 622520034 182443931 574279843 64657541 361506742 258245409 311055316 383187332 398342125 206608688 473324922 973997958 979927299 109075314 173711783 369640694 498490792 244188820 652140710 317995263 972847726 195797263 868790266 119177840 584420949 59456087 468453018 818458369 895547483 430193646 861796667 847379737 850738849 595701649 679942444 529896167 767458648 339635230 686124558 625849530 853502689 938493110 954223580 485048369 910948433 600522641 940925655 119062219 937994144 905141448 916677442 452777104 654671906 976911990 996212343 915580403 961925815 674547055 864924118 277325626 956864888 824222565 960358570 494443985 839133106 975790822 985050381 321933118 919488071 842199341 973337798 71345505 246482409 296640960 611815980 791028992 877795873 200354209 473442567 42989450 213388546 952631196 997943548 176417426 366328201 776318840 903883857 100911457 341446232 203145642 884785124 852327423 874345162 397731718 447666290 268131576 916220158 940578943 967581235 374411294 725554540 84773593 844743902 994120453 995396953 799404374 829418757 990084365 991001755 736677563 979184042 191596698 288151836 261231780 700360316 424692666 431935944 611300448 950382458 425753310 545821677 351677511 806972190 984939739 989424061 171851720 676212634 351683117 522216042 747592078 824590959 606910336 875943384 596420486 834118407 66875339 356085807 764768415 934537910 869455141 889163707 53952684 582465033 22485486 174923329 580906467 922253907 709151855 843354745 757088843 805679739 80014892 888186328 977490471 984578733 938913383 940412707 383535087 538353662 560876492 568765556 61969207 818587770 8505158 577995291 538629920 705454467 418504119 492461941 80851181 383959312 516655374 803818575 237026702 555920541 972706135 981204422 530838705 962825364 283509458 637712586 18051704 291393587 130346764 198601133 188714915 911832768 684763340 844486355 810005632 850642660 740023557 830825418 650135986 914575398 559716121 595595003 703101475 823683837 772489333 779381908 579321053 589808971 342693269 403049112 384256797 677888627 813701359 963228116 629028478 871899915 65578557 524881662 581681287 754120124 680330655 776257646 370129695 497800366 985542789 991208633 115674833 244385763 930852004 934487423 641084399 856313343 552061488 662511262 112637808 596673422 344858205 868258463 44717427 69872755 521965430 540994185 969704654 986830202 698191304 930773349 507364316 849405566 300361588 634254137 253924314 305277806 589626410 596679244 259304774 860065837 696301546 735355832 822449086 936938341 514279364 956793480 877255232 954242007 865580534 973586262 344395035 394825815 236040458 740557283 948480941 991373181 526029696 542061034 937799666 995376315 792672411 798051324 204003683 265235553 687023958 744363005 222954811 348511814 897402262 949099315 203895325 533051254 843346318 852228111 314895731 466441019 458514214 687681433 583393624 687177350 176738974 456497590 708230060 996857340 891610743 948939090 504091639 925554189 298838479 520558152 918908950 991819625 379943936 865950846 80856175 794152933 958479535 997522862 81662782 837502268 909820650 995023144 306243671 541216397 470050586 784745384 368790407 976185397 256288641 696045118 535514184 660044335 825551562 876193280 694016611 823928029 838469900 936310563 709754814 711784371 927554689 952508152 944877456 961969626 297003894 865388485 872832335 875134567 201274848 663004304 155418094 759776112 652668178 830696831 360416977 699724138 888949095 980146993 960170947 985179702 831020082 894443315 258813253 860067591 872062675 941592302 631116733 721312818 855523801 982323123 183625010 188125515 207518343 446847520 985310962 993554523 46991930 199348802 592485038 793023773 662056144 936835117 291259181 543317708 484784093 621108408 229710085 833320533 953213769 987771801 120279314 991271867 976100111 981589463 61662623 827064942 212498724 982015968 823034574 972405694 292362456 807775381 462355148 805234690 701829507 771552928 950734843 954869995 255049238 591726524 773187428 872377805 203015451 782614094 632514418 985146892 806958345 995621217 228654767 920045121 723127697 848967302 386555170 562331772 947357325 987506569 405394084 721166777 581862754 916227052 605092199 980596389 278318644 833697904 560061853 674836108 880897987 942867515 846845690 932094595 630735897 952457607 753201028 992235261 738290920 895545996 106879094 508875683 476463982 627424283 724699867 984422462 951245028 971567143 176001197 435546691 201892960 476187896 483052544 858432563 818413760 996603109 2776523 748769887 59504244 653092276 661331212 780630325 144197090 848304611 373053783 725583482 256745048 501075597 86813121 505447557 569787869 866842906 258220145 990275829 833224346 868355717 469683535 692233548 784258535 806232761 854304191 871272398 345136368 630262544 824639051 955761024 636924795 728505855 323087604 524200527 112411113 644970445 195367686 797611677 8339061 464819505 930966600 994702058 866152750 921976699 417539842 790738922 86550879 885205874 821538117 875067964 746835935 860795305 834989244 951726395 795584101 942284271 165003568 895837310 99461431 666788149 335920513 659639383 818991623 895094943 350872170 669086838 599322643 934571036 638987916 774144744 895928552 910179729 29374382 589427977 566162177 817130094 682687284 865432355 38624282 264433988 467399549 908424527 259875592 919508315 846570817 912565763 180790016 837874936 755010511 870426237 919646499 926095442 307846841 643965453 287921148 315912794 391591502 711783785 999312379 999340420 769284478 791075962 360216156 539571599 668169047 706057189 607683704 988048198 417635438 443174311 279196526 833244583 504892536 992064041 410414495 691761422 859555768 931243572 429563869 489066436 350667690 970447643 883534750 926523733 586505623 848803318 484442605 892583303 659043883 982276045 158552213 624361428 504830914 519958270 795340361 909448238 427972342 596791308 517696377 831893662 780951346 947134752 237397829 702817629 272543595 960211292 654360085 869260482 391636331 495597760 949590189 978885698 101696452 867072554 485438809 786069289 644858573 678661142 918190130 982390412 561886653 678843729 8071096 915838540 172659866 653527705 293605431 662922883 118081309 405638448 908538062 963373365 125375203 366348771 344464488 689681624 73370737 932703043 231121382 370013211 894082701 963898736 664396316 681048378 442714571 553134269 973319100 997409569 909241922 957450056 396065484 670905939 311104451 859474629 93838097 763565249 329552233 624148316 844654894 910358904 68907863 981286001 27991298 525657799 635583969 664157963 369710836 624344452 813693920 931038873 130734125 188110323 121432875 947419363 927152650 979262682 331100936 777140605 56192625 925360893 670529623 802844049 938596035 942679503 725997094 947910415 30662275 207074683 92204964 175305086 885238540 976813882 110898432 221711016 715270110 909060114 776455403 860864339 438473632 447907795 356777086 474323548 824612086 902474740 573920432 969726048 587080096 905292466 691960219 878585822 827207651 956364039 258983239 931111396 221853209 340206604 254838049 733606489 503529593 678864479 857557369 980803197 497908561 615890162 32642537 523739693 566091650 601780329 113861926 581002353 311611692 538588563 659534827 867567942 769628680 872243065 782558819 848335966 362137157 500281210 819265534 963620807 156596505 356780057 681773501 785298064 278635369 500374741 826523159 921840407 13512254 736998297 870367010 952751599 391357253 895297736 457871958 796816478 204112780 747908144 485263781 749697507 662990841 892574375 530990546 920371987 937625658 985465152 492867125 990733357 560746512 566558550 998593498 998765480 346309947 774149519 470413265 935289842 621811127 803835893 571876373 817147018 36457981 363457106 364779459 626960833 665325015 933855910 141357971 771501779 633668329 774637371 79659295 717378139 11582727 31479489 645682498 766178368 825490422 859111179 602466668 675012464 808841420 904184385 595132540 927823219 371551560 836018539 63270135 465317267 254746767 967538679 580328382 633065493 200507226 448879927 286018603 778028646 629287894 948946219 827633193 990117717 797850367 936698290 918806742 971551036 323876509 384368840 692502899 801317938 65283506 83590243 75794721 642073426 718458797 979171501 397128824 912522820 432727139 998702141 535772172 855219244 414374355 925875795 853419039 900258172 361896755 413648021 323152306 448070872 517300836 971220755 619357178 846076596 484100188 877791902 904467734 915558724 459520457 963423797 23493323 775481906 938276420 953972255 573136542 582616499 75875158 639609567 606960307 966412710 571799642 834409484 980451543 987992882 172831203 432006357 903798693 979471342 244862742 482273756 458111225 741898870 146489939 503104091 424887876 713046172 883485038 991746689 78334688 343348083 302993007 849016284 925422025 958784455 886457739 938458100 269637300 513662110 602558136 646916356 951042528 957595118 942842983 987011893 266549053 446999878 708012398 963021586 900770846 927580237 264077765 952405774 824080673 957149234 580966647 788472184 99163629 242639062 36553524 487009736 337020499 529340474 848804588 863905529 686566516 841138161 762991837 785426528 435307343 932974377 888557979 986880039 717682594 770018938 160227250 639827227 423361551 878907696 525118793 559031700 84002888 152187119 409033119 702695561 966532268 967264528 297276542 733554885 106654332 862201100 833106941 879064861 444895930 987389304 154393556 278639338 559366540 667467904 558225275 696569406 274046151 535584460 758770247 792682329 632412176 816737845 492048426 658223571 980182807 988734283 403735743 581333770 713053008 909535539 219727875 780189685 979179010 987318430 820531620 887089967 60719935 654997289 557615671 988029123 957347059 992941931 310692293 872367270 593515174 952210319 663079550 952582294 943072489 956400303 502437838 511832026 774316280 934090558 203067995 921942334 115502143 972607455 394703551 528243486 288044121 664549760 218364295 494056717 98274506 862714687 528250671 813854647 789446559 904946188 484827665 502687721 810777900 924387785 477345564 623673441 644598466 954695229 372870934 575395556 980434816 994424524 365322586 483228928 96558597 309977324 540803410 899150308 377777832 838954787 438896227 513887265 589324252 769400991 666497207 949517277 366550516 758049122 86978045 292551302 455011283 503512951 794400188 932606859 129150853 340224197 918081145 936657959 277101985 595716925 27900086 525644174 977995489 998593423 364784164 533021863 344546355 874538913 721105152 753595507 257861837 652124849 580222821 867600494 634294591 673299981 693425981 996237675 411232664 508591917 63337620 790386128 993150786 996806042 591087634 809662611 792974553 930904681 822042527 918911327 471329628 707215050 251791852 670264592 260638717 824030066 158124187 828928678 624846541 745015085 486421994 600367038 917400204 978434578 598218049 758604878 270932034 938956761 414273543 846186987 335905345 613272032 575760768 932401734 66332976 867672620 271681340 583154126 298061093 457085246 393813235 688873438 509535370 830760201 964542548 966284474 689329530 778744908 550880076 610884659 569487327 666644427 301729136 736145808 843177642 943926270 700506237 816463893 97961553 930457518 744891968 818141723 257322425 597049995 320620796 927586540 278846733 693421076 232993906 745505162 801536454 833773061 340776398 665718296 795121438 876934409 950304432 975426697 250554379 856667726 871436984 920852635 641102601 835554745 620715582 657996948 206304493 875378110 24215717 653911829 258139307 436494195 891614473 991107115 719778726 736547821 304784578 752060626 49715590 935673329 115293290 669668328 813755217 943233426 316004847 592585976 326658384 456110533 795339543 886992390 566283089 728110147 29442045 180152971 210508318 775708726 198812830 397134808 605629458 607923055 54825034 722505713 122102892 861806147 166611166 961033420 899422469 931919255 452875640 837854725 682980218 699685961 509160743 951678067 291604560 656462801 792350689 893620511 922860792 945370905 402339650 410651799 393435142 949297209 809836537 888785954 841909439 919625050 128745206 787494968 961678807 961965905 386440637 998140097 372999293 401222015 889338573 990401513 669682479 818436194 957892885 974867368 5316096 319874264 689956170 756990610 362295148 369313747 441284877 816189030 660054502 787120555 923288867 979863504 674214089 883729042 718190699 719291924 715111736 834012472 867283036 910769889 760944380 879033100 325127852 602214004 332491645 908270265 814003282 899856438 479338392 895906196 328555154 423514975 696773681 864973313 496681459 776190672 142347267 211190229 61122273 831899147 552730143 802102257 881818348 944303127 615589627 635854106 912221854 968267191 967105790 968552235 371752836 506528307 493042186 685703610 738328922 985652948 323394629 694704861 146743046 896685541 740746228 919485115 86966288 730480317 886228406 941557637 809650946 932940771 481733944 513020551 42273227 884023954 530554913 549169062 277430546 460031908 970783156 995218498 58448215 409789277 340629679 966955198 693795863 809764601 989975509 991435367 615174810 673209559 365079538 445480804 612952931 709208535 666148295 905839940 964220180 966144595 835508037 966201891 704779927 794538934 44446209 851875860 212836234 529068616 381834822 783019523 13199537 736044325 819443731 922205233 682133014 866431582 824962807 876387806 309763504 427469585 342737356 992280202 644885955 938380625 578222272 865271311 335943194 718593339 408204975 757846096 105178507 474070213 505539511 936961490 900279443 949692597 784481109 964479829 44147741 356891894 977107601 990745421 75024839 830114663 507196713 990342100 352531617 548838972 376694756 698242537 356713233 526352360 759752064 782139079 871244227 890625233 317061854 557925660 83984226 576556988 337749583 681731667 669000859 809534778 754270224 866032397 778772367 935727035 153847649 570444717 227305800 247753949 112607356 120383955 519313167 793591131 639557992 660447491 344295413 593053763 443233031 541979674 268249169 690074962 761668940 867855104 117269140 982796069 408218610 519701732 783680568 805746131 263092720 595452257 536524224 866742134 501869131 784120842 627746076 909264963 560455102 946120977 717128983 727370872 588421500 748113250 367832305 715126246 11666922 638171807 39544622 757933569 937849776 992757109 307779540 785745828 572660277 603073009 895954352 996187478 117073394 605258030 574462649 825617296 389370848 736582524 673684077 727093858 378881526 966196875 50588452 784455211 756302634 913233484 950595378 954763479 237796902 422356723 470634501 632828341 43806889 872020558 813281580 901433481 136731228 669521691 368314917 871654240 472817387 496593087 880442795 963147841 36612069 642970285 389549129 952190064 301562891 488069828 836648703 890446413 80504200 143681888 236907597 924013816 500784514 911996697 883000875 915525829 371738731 427885473 699596519 807285308 709115306 844413654 326363259 908714357 173987153 433023777 619640523 860312592 75180596 143579807 825506139 828397016 527388220 872153131 815302851 895653009 12440731 206589996 854335823 993989388 326908259 986434668 562943471 741634968 755987901 970175695 952202196 954005074 972667434 998187904 715835480 870872244 538805372 599112616 465253796 482111793 916298473 932613015 640762738 804897907 695977856 764043532 82458251 825748145 360762018 935857020 408914808 581594574 647228099 955490336 373488605 697893899 53351985 503567418 927529264 977075287 666052980 862599055 430124215 892271196 318211010 503445213 411211276 824954943 972792987 992624106 592514312 974841496 7721331 872544449 682403222 749344270 598648626 988261849 78897500 843804402 692223292 870331421 127499028 544794155 787989672 818085082 963053907 992843908 352824907 631288625 476129433 992012968 69573421 148191088 417922910 802353761 743515654 849291162 908090899 954341873 403404869 600665910 610951485 716950531 516859831 622696954 482086127 616811101 187993411 629386622 734859290 907988012 89407829 417027923 914345148 974807791 361943494 448553227 913957120 976270238 688664315 764413628 443501987 906189733 812263461 855954891 946856756 971411402 45675003 490624755 938434828 973234709 100428730 436063976 454381433 660769630 789177072 850413672 619508329 810290485 757289499 978995824 188450814 704171549 48134658 449717629 63583014 201634624 36041592 838051892 48153102 948193194 788671420 845799469 893221972 960844512 520930276 632828017 530711438 579130497 38446283 104731149 884583485 903848272 691926260 851775892 755895939 761666527 379136838 926323218 687924281 893484108 183921639 981742892 270871402 652532559 423314915 935483840 982493064 984285949 662449035 986099502 286173135 589576468 817702466 847649604 360330344 683367552 400700041 819380500 844893153 924229550 368808558 895934224 124302641 520129318 80814382 322111527 682859008 752706847 265620209 900595986 495512678 520993494 656377375 881544670 447553571 650011177 28076282 400636445 72548734 515176635 730578920 737850708 765283396 946798490 935249075 970195845 36723888 328530080 728029779 740335162 97669630 493233672 916430339 924383602 459436646 566055739 501595431 524418429 352761908 447751423 306393209 572821894 834713531 962143060 763719966 819001408 528479143 891882847 802683202 881635684 96993774 138514664 170985450 695521048 520390436 706687924 677964473 728986216 794454223 927438678 830106562 935043318 78643328 295969981 324698815 607906313 742337393 896775701 609343247 625390577 266881261 715726932 657888732 970696099 676993433 723948355 51086500 428770402 474148359 993316377 270718650 697336883 121039318 806250461 198528638 282711198 718092745 744261439 649878765 888665546 445201559 544076827 979399324 996551055 481223375 619859266 63584588 909814749 826025119 956186743 35145938 976170166 392049465 597133116 80463277 827874904 564712003 921580846 362397147 896670161 18236105 613095854 250321928 695666802 492270520 988703653 344091972 927274573 317247087 519977881 174520854 449543070 820068722 886870799 479457308 885866875 218443721 812283363 64059087 164828408 315314754 370817225 469378219 894929698 645953232 721573467 426763661 683920828 108664702 601840931 466566224 970826165 264199096 716430464 467895296 736181229 151726442 822616667 459040827 744500541 888666857 901475609 64624036 548067122 233684954 570038365 314099579 795839866 684305683 688317167 887886443 939446361 316661550 451821262 124100617 380933129 849922272 991986146 910621307 975421277 743018581 885057622 234476601 634709832 52059311 398507639 484759179 629880507 644148474 873951986 962202556 966785370 630556260 701745966 640604070 790108085 37108324 376127973 354837330 584207812 236646044 532484659 781817302 950509356 120077196 678914242 158395207 949701392 3076669 820390699 217895781 871638994 987969406 999228805 819926382 938515903 527422590 886270879 929456482 955380731 490167974 702240957 394035753 804320519 46119553 182144566 953708162 955528372 370668857 688567302 700775164 915868179 549801226 758321987 235930867 278285924 855135640 898744462 291445102 332448952 894789071 938080705 93458414 797817826 769452198 874243480 263708900 794385358 982443383 993055717 71760261 799435168 518385777 845587318 138037139 483681907 188310058 771136122 500141059 672956544 48642879 839488805 295829987 589436323 831971896 843203498 948633788 964410787 951727585 962670514 1600089 460079303 799334746 845434286 167555703 292384746 364995588 763695832 161806411 544669830 521817779 582506627 890742704 911216228 138672505 259688977 466646265 467660617 138513358 373200353 419365327 704159471 35553034 174297080 342091363 777451333 422518023 886689258 255541494 300076632 506672930 826226266 900533456 986593310 361189830 544435696 710527059 755669393 844090666 935947909 837525263 862959999 439209615 816572961 854732453 947589611 567613917 794722031 640411787 700195775 686014988 822251844 593997845 981571436 109042853 802302209 283406231 489137475 987253247 992313692 918513043 959821580 556038724 954660134 482201525 803112455 470163676 881852202 75354664 374601353 430751884 900140511 104745788 721916244 981839210 989870163 612997762 724465700 788447945 830266204 196246696 305259144 603453985 743720089 595000600 802133398 61783648 928783422 808651117 814392181 783461526 964140673 751248029 816946103 701542356 867845454 836318394 907216347 983547399 995198353 766322630 846593089 538287150 669712109 460874965 870901028 233253937 819203501 144767342 986833007 774954671 909832376 480679982 989496719 688186341 711470560 910049722 972394162 724236631 857447962 217180349 446307023 637780652 741657100 284607220 958784058 1294673 941710848 654376108 917787014 491514490 501773907 822588264 855261657 420101895 517452538 6134577 987426003 534893554 687323458 349810213 925756933 93833037 672785812 324217660 405395015 562847905 772352098 548071421 804655733 632231760 735821987 768904993 815171013 277129581 874550877 75514062 459264541 303731760 441072552 844319023 957810754 399358502 902988534 222557262 965273813 30818953 215422984 648932397 655703252 581914767 952236721 826321590 961368120 472507905 739816887 893486895 952368760 947407161 960880663 168227109 871139951 761970159 999348142 515161871 694011406 607431423 993881390 155841671 547132466 444158068 582671997 585833844 684066995 231330757 621421902 916479305 995832179 541320321 553731056 960503006 975155623 165529646 878880064 407554286 962249063 717330225 972388355 251887353 803331203 564425901 863453936 84271216 99048213 243542049 964877753 845544742 871403271 849213494 878814555 662686031 867466529 38138830 589880515 692130928 895791872 596909205 953291245 173778760 457903565 372609093 906292772 262112096 856498328 334918457 638762939 802980857 840594131 598444824 669141931 510918892 827051624 366440128 938181906 787580265 841132433 2464133 260573739 124102845 504821890 69233189 764429066 131210945 357429274 481937378 677767332 283853269 799817456 871150231 970657288 322677474 707241041 59726214 786687947 206482253 969299061 537695779 984629961 631556981 796743306 570879876 610646819 528629384 719941614 37231092 789582869 151665639 652124849 522374417 524230687 582969937 816661330 828861867 866492589 758758428 771690647 23517141 359565582 185948777 606030058 203208815 262342665 575947788 594484963 835346307 964022968 346666483 761432300 3225816 324146129 75925083 300912619 547843298 946910101 887750397 960874297 957198518 985166734 552139652 831417078 891021157 967850670 809086830 904245367 514612635 550299222 957760993 970880756 346128267 539882115 988231331 990535416 399283097 504617059 417001100 467428588 604653729 708016078 313311728 400637074 383775687 797585066 383858036 731122510 30923637 134399940 598562848 703811102 667404403 817925353 141394697 708428396 992520159 993603597 359275770 896865700 458427505 613045540 948224542 962532485 12315911 886730960 502535784 744056723 513967061 555144224 747851280 864056614 519041651 918325077 362855634 674840612 614283460 734403581 19497711 446861346 391921621 485140911 509508908 512186705 932990594 969425024 894632813 963120800 359247187 400508010 797136468 994328675 486465862 710945620 847348322 859238516 2877896 404991173 497497840 571021347 176022190 775628981 802043771 963657574 377512444 675863210 57524048 599679686 642514026 770449469 176666550 889516511 686862443 882036323 276529238 444518943 336937178 438714201 744682342 793996825 236593934 621135359 863336845 886865209 311602466 895777682 912134676 984983458 339917166 737349940 237001835 818891515 428994101 909337670 375086505 919300766 226528052 765242805 582239856 832369935 685688134 857010467 882978591 917227871 893652950 898247229 9593369 821429986 290782343 438195428 490520457 637575096 819106854 821232385 613020124 716308473 227438816 857148397 39090729 185712601 559785923 880690132 206800601 359129892 541915024 841349560 729981930 828267731 286588890 894895521 912637282 977328391 551618652 569211614 431479654 477939958 982533654 997288932 345763086 371107259 248713655 591220733 264236280 947667017 49767629 482547371 153680443 854325019 872252893 919086390 476188801 569599468 775625261 862912054 337834378 895966133 897978998 898368657 39546105 60502771 545480500 832553520 386839490 610214113 122467302 477694411 881740297 908188180 342954701 894065970 831434949 974397449 256985857 969214100 532391086 759385659 954736020 994027169 473829820 928775771 97101891 928232125 618036711 952012926 919913052 926864737 856166683 947136554 856163600 960697037 359007098 959477067 845159350 900194107 307737214 398228061 723150618 948688198 862352915 865258327 282061497 416984372 954639243 960477496 768037574 824733704 65873253 818524208 641719032 808430073 20898981 354172153 378702282 397800130 340042865 740308666 964957404 996561472 630396359 860893788 383056771 669735773 747272680 774014394 399577506 452656041 662459017 820575365 96561285 489121461 356782150 941042909 832760049 873264323 123823164 714265837 378886471 750869245 749107596 938907649 138122846 718706739 324743030 669774018 737626142 791359302 24039050 987628076 624484659 812696714 424499796 942231775 364989019 893121356 481195714 744610564 602637093 777968383 385580590 749322826 676915920 975485695 160735928 914379608 615221703 797303601 505909935 972162325 607544197 695278216 481813969 864251450 67778324 566404081 107688647 395298201 179147131 870447581 343412732 921376379 721042247 818298285 678010789 810250007 283140190 610072049 802037456 890372572 902407852 926086715 323074629 544678562 78832066 488575620 76830914 510191210 242980683 398852832 672126274 942939593 213956309 297374183 351664349 823194727 603778266 675971609 74137118 886612151 828106644 834572320 288800803 492172859 215573426 972875418 165974689 299187838 987097074 998671022 557737551 963828159 205771348 306567676 913388004 961703515 966120154 973500713 879321594 937228243 837142556 992815701 662703866 908613445 268859569 641256570 352683354 458991404 934947684 988162114 910270233 985987756 294129850 612692744 452198411 610633692 571104671 810092994 292462530 982894088 597151667 762697450 818335013 830494937 754620495 810213174 54315821 934343673 411871050 440208056 862076371 967747889 812171328 959539222 366024182 766113111 563756564 759821275 93113961 250521042 200308690 557578581 83399413 244637022 887875328 977252081 663516997 977014563 111090269 903201299 31738197 67244587 153738073 158429222 783561136 885632653 542590407 816108298 939682138 971414933 654854876 865076990 697779914 881705678 467552051 978858366 664528654 966701141 358069941 600661485 219370225 926053278 459388007 512816081 357993829 578456687 788715472 962119099 597701273 800642911 214710569 740640230 111012234 623189890 122248930 454261293 732303797 765501128 512141985 844377336 263457850 881846424 455791532 920821141 878268927 964968854 304287608 453386915 936978542 973007512 159873838 833118539 707101854 864828148 959384893 999070343 103234644 690932139 126911293 896209923 524261541 943659075 700170192 722148648 445989717 505421457 396328919 636026533 83842850 946917259 362347262 953091254 915525353 967567150 950699950 988166683 241351449 544767183 959020923 985172444 954127140 976858848 796107103 820689135 241077499 708148843 218292697 904805619 241156185 630098250 604261579 774678553 945518585 998121057 851434567 889097022 540612270 983242735 258966986 902641427 565785689 764308591 490631913 895181386 135304492 182738908 725101398 924679659 434469102 698877298 901831739 982085307 254730827 499996945 630910786 820228807 130819780 673916742 669859217 682099114 868313879 940893240 743373484 968685431 395878059 740968680 888204983 991096802 556928432 654083294 282977317 851093882 681656796 920873505 577345583 957258659 840551768 853036140 975347640 981861112 89400604 856778021 256516205 944588303 364764305 993657637 362198573 857518214 734127925 793754212 342684495 427979915 397506733 727268928 504912268 811565462 919013566 926801395 704358867 723825195 931819312 965138259 740931767 947288443 426305065 979038910 324246038 433373336 524887598 908427883 37511575 903363132 890237388 914800264 934831528 973078280 501253182 727689187 964938851 979105980 278963527 841364474 519968708 743688322 789700813 943114734 401298404 658965779 472846576 680178211 88814603 183013162 169887357 545737760 437699889 813649907 320134366 931735509 368285906 928082280 598838990 850119151 416538978 496451542 693496753 975848769 428056111 613085416 852387910 953204304 934340421 973595860 705288623 907811524 211538234 943809923 411614082 547106284 829213895 863362846 12161423 384830843 399954835 789203399 720038762 958154982 929563800 969122596 559549699 982402185 463820679 658041815 649012532 834158910 966083742 976792504 285433958 317222122 799847520 923288526 171766880 575063881 16436321 460297333 217758711 651796355 399021737 508892079 31165840 915718566 948816023 952762397 478436850 757869419 686110724 993970087 866984798 944114880 850677317 916325380 612372163 819156656 376831161 920955332 503078099 527236903 130085739 861432859 505451187 840408285 900256461 952752856 600993778 611851105 62905393 406443368 686784385 717418989 853234891 854566566 760756931 907336009 172472246 434827474 261605223 295097093 400981499 668878956 346621484 866174560 60175461 606164035 950450837 985036513 134240930 610719054 443299461 905649747 894908234 980636577 797560554 855253915 865906342 917306802 575538428 689693510 838976434 839973883 563880043 950373714 26596162 727839383 281485594 312736048 904478455 993443457 927373290 986097406 629185537 907577506 656302744 802779176 378357163 926689924 959432585 973927208 355146473 637833498 153939891 707066368 412861173 441866497 475104476 931449582 968234524 976345758 813741478 842978865 634545123 951176124 504157961 728045233 250171336 551888390 462023083 801497453 169385029 478885408 178969172 605108269 88353658 641012503 649010270 724470841 182753132 895897353 271232381 273586512 345069653 481725244 865024690 992962978 507644002 931955067 166739544 334558078 268362495 331593649 806557013 851763938 408662052 486000083 786785364 887724847 385593881 893594418 433539897 537127667 933848770 958300781 476367593 878707395 708933101 830680388 27861141 404425077 944280698 946309499 319540784 765764431 680865790 912797092 113570528 266696810 284299248 544249601 835506780 919661624 67364907 769874798 684391280 756103706 761434825 777598406 579153905 941969373 349325711 705402716 299578289 745829975 96009684 688455441 859751446 869582109 166257321 897299726 412098094 736504801 902305657 910589197 991368893 992190173 579857093 955220829 258720364 581625378 824240835 844017495 523001198 570228622 821805899 921544989 416186811 849239995 361574688 497774579 899676649 978539483 669696266 857595011 927845202 962433841 675749451 796852640 847480887 929288970 156264216 424991918 794781763 936589440 669554392 826004568 868856333 941232795 450485734 909521098 358149355 899410931 978072232 996182022 912244708 952683154 638793155 733828645 419495782 585761929 62432016 879635073 676292025 890755073 974389248 998281889 842151599 856064639 793432899 870320263 975397602 984430488 738960597 847123868 801954089 880492667 638237927 695387431 612901311 960288573 931647376 975253779 905362231 972265102 940773787 953875015 71391043 428968402 429349944 496599261 597732355 995551467 917841605 933648606 872278665 922124255 259904153 787725170 109268624 409246035 259598373 435262779 785117239 947263186 281949571 349443649 607625943 686078065 863227060 917671413 414787908 886419764 422679624 846342005 988733700 995749729 958674552 962696847 931397812 982437461 812706234 954872242 923981198 930952931 155679464 384645275 846534804 951120148 430231231 690816136 574281464 575975581 364408176 805178369 271105284 402933106 78423521 183057166 579222469 850490046 597229891 646406624 907104594 987226449 701530564 867322144 930639287 957409320 529780734 858901458 346259214 757293533 414437157 736965994 127630734 335506699 685940606 854704145 34070483 828521330 465660098 502421593 242421141 738545146 617592517 967001009 3133361 554530471 749581636 759288015 589914128 707454246 586995810 988137941 552259589 669615691 983439334 993996278 443357535 606141723 46278053 914490675 204678604 549318975 765122721 835662321 184152693 844362209 502861648 605142570 586047263 624944419 516203446 688953424 247210674 727816178 862247646 951157580 523162267 709803253 276892341 498887256 118540606 175634104 787128103 803454135 19766734 228893498 884803562 918607009 902391765 958908423 352308219 659962469 970385996 989398676 51082251 288341148 21683754 599301171 527697232 805549193 488923204 916523670 327602798 640059450 268102762 971432314 842736194 864967496 434584981 501054247 799042071 968870208 47418603 736609303 874612084 928632772 125144527 699160566 702384123 759955401 449493515 724433311 270592980 836400569 559604886 963148088 120803334 300668311 647518856 934054771 228452468 732139243 409326241 687409152 426202803 859188218 952852379 987666332 2982270 514766021 87573159 740672779 898118136 907728781 243090360 813254708 34354504 581415439 277731114 952493476 656825712 971865971 197157665 763234064 48104725 915287632 90356305 515383598 377042353 429016864 276006301 576712154 906148720 936877613 912382465 970611600 394405572 560323752 49288035 446878516 100940873 236591178 726808738 727578645 997168503 997409326 805672630 967672122 929547009 954345899 728244525 988091804 620895345 811790946 849607363 959110935 392958475 750251014 119121905 326269192 829301416 945807944 985044329 995498744 285809941 998595617 193624453 962682745 309180685 530845791 449772815 976418355 488740888 544647133 629732933 931943815 670082986 876168362 481491918 926176304 333172586 779493747 646361624 777770953 367918412 552474802 184221749 774177580 368277386 853575576 728141226 801635756 217730154 979070478 252087640 764147095 461112029 643480871 314383670 664030476 475053199 505228793 147003077 747771493 79127049 469398784 531465723 768767907 536985500 806384257 199146755 892114261 985700842 995412228 355683311 996220777 824713317 944419133 330520386 414751619 30371494 946665891 919722480 940503921 530441922 772350125 459556267 838140819 107707963 642251695 510705152 933190942 792983880 846591892 933496447 939646310 250224154 828434012 665917907 833829965 249100778 577743204 293420580 547473143 499555050 558132041 29022824 638589169 27876541 318764612 455039286 537798458 285371408 698607822 575676616 699033826 977272505 980433310 284739256 822432682 267860730 489430382 342893602 410506793 19133562 348424646 705134051 884041014 525381369 997821569 263746432 956183817 564193721 706243158 646855982 814946494 597949264 985915471 739501167 770382786 913851495 962929342 58447255 70382000 995999339 998572595 994516801 998528687 155968990 432737585 577206654 711872979 363897515 450992574 447455857 704392353 963197040 978949184 411836477 644071727 148003584 820825083 922125047 932703641 998957216 999306751 553531305 851800190 382888851 741726448 731872656 915080505 90266752 751088148 146678548 865022640 872058344 875730836 260691303 454528447 10828856 887159457 269714512 662659483 588562821 926042347 171029359 987222587 779362786 997411920 762614437 855483597 578313942 747358023 52339659 144448011 77015104 134091048 982220659 986187813 994751700 995525149 541689299 702418704 60490417 469100529 25221269 235769470 354779390 905032253 660288764 800139931 873740778 918037042 393325889 973399990 547289097 831068543 208536950 276000044 99883332 430567060 201794339 470564943 98015861 336979036 852507205 999339001 269983098 395000426 940147237 972443046 406256533 414346395 957519361 973121894 724262299 824645570 366286692 704930292 917510738 961410860 463179047 501174101 127568329 336633094 321926806 586831835 80006953 431315071 947933158 992573084 783167716 898835740 633122657 957477605 139451603 507914117 861828316 864312302 327427176 569434625 628680123 742078616 163489668 679495971 889898334 987766120 847673929 898578257 722917593 930031629 551273415 710645669 767622235 868849048 763555814 765832094 35648565 92868732 8129406 491432625 700945333 992283988 175765176 970997015 872694002 996368113 47659286 965010139 845984476 863505970 740054465 960530513 469885873 914937422 795752297 840563535 572680637 622402523 945234915 982777005 759394069 852735701 82823755 677876851 539606328 667965764 169073973 699041333 324708353 679738013 558237715 619259040 989165788 997264183 262662582 744237075 128543764 581042675 485746308 605173292 827658966 887209472 879439489 891671816 140508091 709384711 240918658 458519981 302021706 604544342 112635443 993677546 999108580 999127229 960777338 991276695 494409254 653645171 937253942 989834587 691197035 804821043 699433529 934898892 187928680 235107655 331025846 500413515 275739431 705220136 849311586 856433188 165187647 370196567 722168821 766111717 497089613 863728012 641715521 728506405 809826225 888153956 876124020 879163329 785000913 828398599 491008229 601531620 597749051 973250883 415014809 657291519 458451031 721639122 345894684 530961941 340033952 611138806 261775271 313871434 639718292 680202041 962874415 979328611 316087337 952947993 856520940 959237612 98931020 842093042 35139489 185878360 415627502 474268849 951092373 959040758 170120857 725369528 979847346 992385884 639444312 722718744 816562124 926394508 624011702 963619631 569848708 788518326 592406127 723560307 43602022 621997836 59426342 379105474 602985937 738100054 271159779 813751996 78158768 578082417 6565409 717682424 223189287 415363168 563646524 595206850 769239669 832005835 780321776 919634664 450175979 767589529 354680197 459063909 646327446 963276834 827293264 963294835 899307417 927875147 86150698 193467527 195939413 891203692 175909141 529763026 989447195 993870285 268755528 500834538 147051681 703542078 823293345 901956981 617865128 785620112 971874373 990190930 451758839 677542832 472299588 593423353 490074975 948026471 967674713 976603727 154810073 423997031 606164065 926146862 320510255 795125441 685447196 994237548 518966743 626139823 671832061 987569082 753783570 935617704 772872312 915470286 375924024 756763878 635746290 754798055 486912978 593182212 294018087 845974504 278501171 831824101 729383954 840383890 560114518 742987489 263052294 744831925 278497615 727179436 578922321 710627800 646466971 724141503 121686334 234423681 984715034 990027275 130236727 794164970 928289581 934098878 20524220 152072202 79279984 582583532 186298637 591267784 896343273 920614797 532905826 805093650 73285500 778417466 710277783 761425682 136284790 421337884 797187329 846161054 180877533 784726402 170647133 532353522 717075784 859546941 832947217 964865874 727747081 873276953 238777973 831254479 938022477 973187978 262860190 539055602 718002776 825631344 782494760 870736140 662480052 975905669 250725510 875548363 145522670 678763400 714191894 770143291 937289106 973039089 951356319 995559854 534396523 805409568 103824402 987796226 480632133 783439537 388823108 444835271 326076338 486202471 593587021 729636997 657910997 728282231 575225374 993136889 476469439 681897814 339107627 911354686 895277453 996201872 143198191 525159590 513254408 654256088 394842446 771086014 633079715 637438362 425278762 961858652 787176669 886498994 762255056 989923853 420957232 714799806 106225667 597851923 15003420 570531276 854072468 895933471 713300908 973576682 83476741 719855651 216602126 779497913 102675982 683007980 531222253 970010096 15556333 402693670 350239494 773262299 727495302 786324331 584446311 873356160 960396067 974490487 851031139 974772337 91582651 141527303 270194482 522154899 806749366 866678785 758827347 866902537 663508527 766912531 679123663 928702069 430269450 551711679 719347414 926166676 404740272 444276219 174806933 781032395 756595117 975372578 124454759 235798288 589062330 926746088 3544358 869018054 61519368 929085078 917000232 998725652 819941168 923123216 437759218 663917398 16359588 307126744 484537766 827817865 546607645 775756486 423104328 883825835 798837134 835385854 829471006 884291737 449066791 931132311 74637377 897182174 597607338 899819854 251300058 396278286 165504869 432601789 822828181 942522962 443839943 644715482 634408322 924282612 814779247 864053202 349084630 438887839 735765738 829177033 15263804 604108212 528738160 647319845 522291535 570009635 954801318 977475520 18487589 988211426 732919246 874834317 804969215 830915529 347489452 983867109 607896025 917047185 427680871 806951239 269022643 611611299 357595421 517588461 602279495 874045532 88256313 189490602 35102442 67170718 584949439 595118180 853681513 992410173 289775667 949242586 461602019 618884668 388324448 640902449 184243521 252892067 973168983 976349336 665941928 889493708 244895379 795188452 573485117 864097029 702994111 743734597 685435113 737786222 811051305 812976897 571436210 928196035 581269977 943493525 86163116 865055710 771693866 774468605 509219812 761821452 954118990 958588375 621326727 700293265 841532632 908205490 821578390 856411980 919731689 984394141 639756636 774648237 764555949 918097553 626717200 943931881 419832672 969787932 649086316 954431542 512031898 987492760 634596958 869657435 101504881 921112981 337249699 771807990 670310947 745388063 858317836 931836327 687508478 841159019 241579093 409632913 588314889 936428675 807525919 955275364 2898602 742738821 12752020 675683843 907807995 913641385 509686640 748719313 670004564 761095589 672924196 678362879 98777916 440943165 475076121 659710116 448812577 686399061 80788289 664849661 777801733 947758853 12376197 861288542 454090003 523127615 16972299 50608343 940722527 960965138 837335841 845527134 619578521 946742363 800293704 864226548 246425988 248157907 103628458 129096426 760344960 897251459 764329055 958589142 894174841 962046472 809009729 862937375 243387100 815040711 400303839 546051336 141200119 558529964 397411296 726981747 88909799 657825642 355538720 737362787 635059723 853916548 531498075 977313108 665246724 762072412 815103232 817459767 70826605 427777467 199463734 797304489 81514735 593015358 527344664 628330204 2318349 639380115 749658931 912542463 430659106 964344482 149911927 288090508 762899149 905367303 523399145 815244644 595798102 803145508 400187519 937431853 108439762 880827456 242287514 859067064 413348251 675383688 461107680 979063010 753550831 816392056 764329360 922349625 769967515 875742670 12001387 358117470 405839256 440173875 813613643 861745435 193314709 680308970 147053955 720571051 170409201 503090555 374755227 424619112 199617617 484485882 934133119 965747826 937328738 945353667 944277045 995465656 667534427 764438216 902693656 973484379 527284661 725725178 344532057 886748281 917676078 978701032 728421101 835875381 602754838 919796686 967624130 998821776 800075708 919969134 936921854 981478126 369941524 717782965 473714338 577754372 395684167 877789626 625480281 709218593 283182802 561336145 501364927 648241104 927953590 997423078 436830796 805210562 459352751 870287992 252426538 891329110 5796153 793750959 774304669 809809455 326539934 913196598 929997838 975592162 559686599 977276807 353926469 946462840 119716495 540136550 990704196 996979458 110022891 376707001 516664786 527195455 162364054 331112482 944531121 958152363 631245717 866637895 18328259 501494453 182138044 349776181 818556273 895308073 945677158 964358493 469887910 529945381 646483479 938436823 126123342 578960977 218045100 688138631 166377955 724145716 340842615 578411092 353670691 406878316 529039023 738599486 518468306 896898405 372061845 779575273 825559689 852502994 768788300 957139648 307623251 909933243 229125260 386136717 371149470 530908337 968631095 982705807 365308683 933249393 343904839 505907408 991447834 992809958 339511835 373793017 355505212 435047737 979557530 989433537 594636098 704024663 565585705 814464459 637317216 795855975 860532785 860922379 525501331 997876193 6196238 464129428 148233615 659439259 660595702 674027146 714051109 932345369 625988284 669611010 461713997 567163566 751125605 909307852 687947432 902228415 737782351 784335841 487343525 951615972 370888498 658720177 973545654 999278572 929199859 995303715 296795392 548161932 484509983 824642215 879439284 975062273 136835079 841819939 735598465 971093105 333353525 932709226 299156805 936603950 220583146 330362778 99882717 662893236 108274568 566323519 78837808 380766099 949459121 954231232 209713434 841096041 643778274 999252079 405848583 537692534 56411551 700537147 282575538 813863528 610381221 652269091 530263181 818806083 320115051 782723065 533905109 756257177 330578372 397840086 405484808 420537857 742838024 989886401 356815965 803282616 810132897 928348799 644373938 732118131 815937178 821616217 742395041 981560484 877535565 942094800 100995699 224729830 911309513 995066883 707159424 970545636 328592317 733799196 689814530 953473931 859133057 934580491 359180129 953863256 229690944 511081866 614023709 727827987 833499826 941542252 963341655 978456111 158011826 171427807 156055601 982919444 612764796 888265767 567299257 637940892 513223471 660429102 674057342 830070690 50671924 310253603 788873454 915887059 141851230 478908479 435120552 512818238 863536582 942061426 884309773 906500196 474378079 939089344 849401674 957417348 365005376 787878773 932343531 996568568 31640578 486674406 548740553 961864723 936084461 937890460 236029203 957281238 61645114 297137141 699198253 860421344 678050223 736815850 338355727 703966805 199301069 997736898 220754631 942027426 367960044 868705564 122072630 673224234 769274904 954335892 904698559 951840359 198618675 741793022 976479919 982925152 79502817 995113229 893460752 926960995 561782637 973525788 52775172 914913611 384292412 512389185 579603491 620183505 802080341 824307069 402564586 467566584 199373001 356441847 6304843 47499728 314811201 875233094 391017040 472554511 167689729 579732494 301226715 957409670 869683380 936049657 923384145 956544136 786052953 804568289 304917198 685752351 70902537 411526947 35060808 874180883 568141437 642295089 694579647 736957875 300426329 649410395 756428370 857519572 468969306 939624600 145477461 182942947 22934143 359314396 665036706 939176186 676912007 857322283 419891689 646604903 290600413 743466616 531155589 828594241 743137375 985702095 649089743 955084357 869611504 974865149 339692246 971064716 35776859 691428314 658844747 668239621 565652376 583355046 390457708 766787755 300595639 302193406 32288114 554369503 665664839 982446890 845975427 943815966 505311064 839938718 508729678 653080161 339680578 760667484 660347104 666501045 619284038 921425297 876254917 898291392 258460225 693079119 421861111 577804934 194844771 747695643 341560820 878489517 278675679 542360539 183624484 660539514 48128460 427006184 270924750 341330178 181749142 469427888 794944538 845129486 830174046 998044890 637798001 686613391 421859902 756860042 13259990 961798811 316639447 954810594 492527415 854474867 582446921 784784109 345543558 753306316 102765774 690540083 478864190 527405525 122799059 135734638 748641073 825858158 50158791 732849017 839676181 887010677 672539144 847400825 609405578 912280955 725763323 821330312 494124518 764541997 732417897 933402720 382668844 969653540 855370968 981791796 859248220 896244837 242285316 792020333 531398926 637343145 785985089 843124714 695289304 783556292 857484236 909458445 299599425 633882744 229035432 646469915 464417327 775079114 983725741 990423264 67504158 90620869 289181434 725932960 260561337 981544299 977925862 988406088 794383089 920674807 920140405 971438440 837691930 928345056 883583044 927966721 50810803 735447463 710093532 774842189 237424970 833437110 925370478 981257146 318471331 631166029 883136961 926518195 822353627 945128351 49285142 542556956 758918182 883965058 547759226 903002773 104529937 624829571 529442889 915927053 100301943 668704202 350815087 511849708 777599317 918505048 54551294 111191417 224952809 491889973 951661566 981480860 349207467 566903778 724031301 806106319 623575929 766448582 933434699 947417523 794089879 852514114 888026523 949687210 454902075 723349313 224369480 971441214 761363297 947297355 553216638 731169206 18354360 267063188 503433730 714021221 223272855 325083403 829290334 932053547 579187851 737171544 576545315 624874681 94527167 874752091 445936241 563205910 247591106 748999712 326212465 338728603 730244671 950091141 478911707 770439046 826177643 981321427 463916294 830004023 325519547 499905623 478333043 772656296 151982762 205151884 528155827 684119702 991333329 999189570 355517794 629864566 577739248 797692090 620191844 744195888 902388381 947158650 412120398 582865359 936558973 987473290 587247261 738739789 168829890 587153938 251610674 349672152 802713361 851196696 806362119 950579553 641384493 765305045 812340329 996500219 538519322 990215126 889612184 926302400 35214499 129387281 533823457 746245720 960324414 998150559 553953126 826854426 53639651 337167944 255779849 383776830 818104090 882844993 764795703 846768663 180754454 721770269 161439173 367580454 489901475 545210379 911078263 981808828 24137771 665984038 851391091 880349681 213641852 744505396 160544196 473621341 807520138 837324158 306831330 375190142 824374043 948444465 442245869 862461441 342714344 372712769 942652849 965516782 479257877 792738559 207378980 270715405 526117387 719643223 255633743 768934949 284308209 757299815 671411033 933112433 273778070 664664936 129007909 821290488 357681794 889887160 163289955 711051920 656518264 661620089 87513538 656529609 493322712 897822088 952985977 986123536 120656510 134536176 710704341 785793327 527971885 710049897 444419542 616757870 866118224 928079406 898384364 920785106 227340357 716597650 592221034 977063369 932278262 967088210 582630910 670997528 924525866 939529396 154769728 538773448 72882563 765925819 990550765 995823115 485304201 705358445 926585545 988302770 780751763 910675175 561997715 779148061 719451789 948363253 820600463 837279859 718303656 750592665 836187491 861182267 841468676 875112752 896868819 913508837 317668382 441341011 368827392 496268483 105865291 916777877 346380478 385718096 322611550 898767620 436227020 992307992 369553008 479766925 759540956 962068655 641895521 866221365 689115547 774271536 942639535 998756874 445275332 472466845 313918430 615000675 176806792 483626561 103232538 699696663 785050054 890894973 627958258 920409185 750840726 985988851 724730159 886645027 974397702 977478048 514733363 803303252 72709286 324801067 745215655 987979396 91371758 754038551 555901585 633773735 135374169 359925320 809477069 883240096 244616650 691259999 969768745 972532282 950389790 961085530 872179746 957384275 932003082 981852739 696468085 954011026 655022328 936086197 615050761 633104154 867746334 887110357 899979988 923060666 629238910 778389587 722193112 765737012 101989002 146598342 38364556 807272416 551570236 982789837 535327072 558808773 887491280 919831676 23755300 217969949 185435057 689921369 893596209 984014484 455640453 754812545 774157311 851208674 530697504 836766425 690412896 812516631 99796432 488752010 642533457 711893869 969033150 982148902 379509695 579125008 81156411 309356520 276751568 758692103 627151434 892991366 111234427 307394047 660090601 825690430 246913067 519170597 299533263 851199735 543456143 647705049 341981830 741904579 724978977 993415376 866105667 919881191 107974323 462657166 274977078 619045386 512744979 603483047 446012688 456450822 738589029 853788275 520049143 595697006 548027022 635307507 488896063 882324582 772577865 842405485 778483138 886000632 389133174 570517388 872840472 884495024 37298597 335153964 110849355 859432470 978848493 982114197 843442044 869061922 469295076 782014993 822839212 853331553 791840692 975615004 255599958 517712114 878888996 971415036 546830680 666790990 185921279 588388120 699600650 878635953 210525387 291161474 581285905 707764542 607567385 699934598 49080090 703453791 242154610 689746614 841666234 892625388 743307355 989008243 170117595 773770052 134530380 585431423 89690269 550021298 396156610 956934618 189482913 336814980 500301631 764430041 647346020 941845447 797187669 931893271 283968057 841707404 307060859 669533901 528762159 967992385 656692691 937876883 692579429 796385194 242722954 593128336 516406343 679742879 931841163 952802702 202526172 987485951 155520524 203475739 701368562 882062392 13486237 162772929 773404095 899710775 929525293 986019745 448312642 894183599 815633757 844100975 252164266 338484509 669815337 924792470 375481934 686282355 294479663 949776176 918864376 972166521 353655588 517361306 228086761 967743883 211841920 805225826 196348345 228894944 561861859 751989956 827071607 865697116 617721768 754974587 853687842 919537999 592910186 841198988 981330280 986989602 187170164 910847594 372434965 995835508 491533617 958037333 158357060 251215989 618230480 996620018 171840696 423739785 920680566 991126524 58707932 224104068 275911527 915086192 338375144 991454545 379533970 439376097 362359166 902884440 998531020 999291962 620570110 996193972 665008186 938978213 818177156 943403992 671904998 862754012 36369870 166166869 790270588 968247825 521155452 691578200 93851820 919416591 97359425 520875394 597829021 669414904 833553815 973264485 165907362 526782750 673651153 799729434 756765444 828109769 908014851 989899693 596461355 706977247 183961164 315150534 965746200 986963097 629964415 913861127 812444710 962966982 106016610 617708602 302643074 876184345 917223707 989553746 232920645 502280818 497474790 683888363 704726651 894732574 116423008 617825708 469471052 503031767 962745840 973304682 924353865 991270468 202381279 737538530 808978995 853478020 901567800 984991036 926820113 933689746 608992470 614609433 843217487 963663149 488135209 888694290 150408986 732025193 497204058 800658855 528310432 865046237 691829960 817642146 769229957 921195126 453923604 644307593 531210305 641356755 527479581 992930545 689172963 849324175 497832721 872402254 503415663 834231977 662641786 712003280 111225031 562232311 685184426 913557938 174214486 282590637 530666118 780100376 768158990 768325142 512761288 753175767 812598242 954238517 766990184 885388695 543397353 849032825 555666222 838736633 162326637 269782432 317368345 456769248 945302524 999301618 204402272 466432603 348836234 884816945 799327490 845248442 147232685 641866148 879167302 925367296 326475101 448394170 760301685 979614166 354967479 966231963 71573711 921046663 108436672 505756596 891833676 894385871 628999370 773110514 364502032 873068369 666143640 830236805 66990715 329803053 359664836 571597173 527329064 530233666 429056963 620993228 96344419 613851908 367227616 453940781 867628560 894193290 172216711 620189493 642422356 689691834 529089828 688624201 938681789 963296526 967108414 997191867 15280361 969865210 830234576 892779613 687088263 974015423 765902625 860176250 564658625 567317762 659321426 831478965 190193041 732168673 685048198 887296880 501741284 756081106 169478390 702549694 724793467 987429222 887317872 958842519 338233986 342102139 757275695 816270563 946344120 983476514 801395119 803355772 629440662 922878470 624213287 957527287 347014188 499182251 726605986 839969583 696393629 785961025 862639402 868044951 898149018 976011529 963447570 984544146 354621845 417859262 696170246 810945820 222235519 338811857 331318744 923771913 978469068 988881185 38274718 848275352 333332915 813923034 666025940 937626662 29849017 637586131 184272643 721492445 24305668 868559211 866697068 988925341 121825982 798064235 113383244 677671667 598826621 779981846 197060701 940636992 691263589 917727813 613655329 917380059 227657113 460663897 507657824 978800782 690417247 809793167 160790672 831590992 976575640 980136700 436331215 626904365 939573037 998852390 232904924 935087510 275790901 718153314 890968034 998990539 974125211 984039623 190860878 850960875 657478640 659596609 245584715 892875107 624703677 913126989 324639680 493293086 507384699 704430917 383966039 773116786 468111192 791408156 213207791 807197306 962228287 975297748 377824761 659234428 850993120 981081106 435928087 922976378 149429446 780096256 47992495 382421669 406696982 917752048 130115439 256888773 687506051 696010102 160179839 766718203 954043338 956604031 407104471 755225653 641215114 641462640 414365251 871610398 472491949 578612317 767296791 810614512 217217741 343924543 786633792 813459075 558745204 686820993 601755194 816471515 812634665 959971052 172419454 826161380 754611250 882175789 643632888 971562044 628186770 789802664 489474925 616793238 611215321 690636344 771793505 995890458 398683825 770405360 343540479 831078525 961049019 961736034 948164823 974147636 857465700 922934087 771329797 833681384 372814222 585129726 911782766 934629896 501304601 598483085 136626729 521858406 483637224 528340438 143207888 852147487 479010613 577431191 635220026 636285251 291809548 446651981 108488637 872461580 741576769 977252673 419695457 575636939 32162762 164604580 859361910 979975148 428876373 524918340 281208865 829877605 240359953 991029818 936755674 949936026 555221606 637750184 851248651 922572195 364985780 861064420 618472605 943294233 703992258 985065254 492679327 728211716 182288158 943956844 462252874 885094059 70365579 517534548 425345166 510658189 499332123 564763938 805075097 869269648 190795085 912856756 487136796 766849410 490116821 698485653 63306694 78699114 105383263 202920338 109497223 352573743 15054584 911741738 58815556 954691845 819173920 936208720 760431619 838878412 798955989 962753767 916397062 994910049 26990733 115536814 116471951 215974988 653550748 890384660 69941984 762562548 734073500 900995026 191498023 410452900 53046957 888922398 726035011 914733569 699694547 890137305 680020735 714352561 866994869 950603944 919189143 958165778 769077441 956655688 580447581 774763692 293610574 314055014 696519881 855966913 469688464 651744232 923308086 984045282 588252434 975350273 89844026 111365552 779893764 978852389 311871126 988482953 44999186 123364120 992432034 994920547 765194839 981348695 649143275 764858497 979122934 981821145 720565246 915999544 474236487 754093948 315603558 900870553 217954034 867612123 748022615 868889282 267169847 804524355 688414877 832013402 703700803 942636667 669232343 852448669 250317870 863381451 48977912 294981132 674010955 832811120 651439025 837190017 549988705 973750566 400020099 813621666 747242038 768794269 551396486 747889108 870023749 994094105 458703718 826923221 287807675 939849862 451284194 897283144 477209843 665519382 21537160 141524771 807978491 935728846 275425069 340653932 918716503 937705436 444220162 860202960 991641030 997065769 171123297 595783259 472929682 552482215 30185871 965695261 841332226 993649929 581081635 899501891 117346508 204790200 505202911 617480924 646242149 766892423 619369600 659308107 48850150 613657765 602403357 897837098 844150879 968181744 982368599 993293377 268533910 760731555 709375243 823728373 751428597 886295771 704031180 853923330 512199472 664933984 855636403 988555492 371645645 490252050 190847793 263264278 17156150 306246117 270523338 466549381 374264183 421668789 238509151 919598659 413469396 878059730 72535177 326746990 80773290 657379803 971534634 975480476 334368950 650658092 608057761 854420592 378262905 879833275 670061012 863624961 295693662 688949991 608541314 783368182 820355618 922220852 495200970 630589726 157106349 211090534 878009147 920966696 827570137 836500181 166492838 647141822 528963723 885146332 855214783 887687764 589206640 976574973 203971633 623844232 153756552 975831528 40649606 242284773 76960537 811166533 18009978 436920045 476248918 647987679 230699862 841043471 704400413 808849929 952804527 969394101 980619489 994140502 176821868 513338811 950750389 977408667 526988161 705567873 645368390 799951027 918859961 973975648 192262585 429222225 287335566 721569138 282963654 292766906 862029871 993924756 328178843 600498078 563331192 601890502 813482454 876766596 740340326 939741731 150330536 647876134 360097311 467772843 323305935 918102248 945017118 997531860 348013748 842211222 696592891 740747229 143996853 580700392 969107410 992143255 692651372 925049216 719925764 744320728 869058260 987036924 390363808 390491024 708498713 843717836 756821816 932970216 515130376 819088813 896628940 924699686 424610851 608473024 441139073 524086926 538442852 570929432 622673297 655359844 637253237 881559322 178507009 900285546 633239048 658864362 882063900 893337389 533775750 864081006 441186510 674802223 17329670 760714567 586427672 908415588 5977646 149867780 647692820 992347380 62224396 90287762 722052203 968899101 13998325 16669784 429253623 513573786 186656695 802145425 235254281 845536996 150120819 324868467 350585914 551770606 508268753 512228641 153176459 392425179 515433793 620368518 453866544 869761245 812245468 919817428 724458537 763854465 688670288 726372726 370584334 746165363 737427332 768851046 512138049 562844890 399894477 847083066 682071213 929112833 939904535 989859667 302965121 552367665 844864799 913464829 370273688 490741520 132400965 495946655 776675789 918158430 844104115 948855037 9481484 631351702 1660388 303419283 232590007 547440043 390134494 423716398 670043769 914460881 747883836 933822693 658708033 793174188 667121830 746510194 264358357 794929855 3197588 741983298 526305294 618506006 127709370 257266664 715999895 738296456 792061098 839060567 328964096 819018467 175371154 691141548 979687348 998106735 733347596 744519017 244685876 932864512 864121231 907033841 4195074 641801101 786674219 824014981 419147063 483960300 499255652 849220489 983856915 985027613 923311454 985480267 907550706 956752579 399437138 433634575 982102464 989627232 162436908 914654319 563555437 668851905 885156425 893686939 91707493 408555057 562669988 968899257 575813809 875604506 608906500 885782720 399351970 887983961 880157211 935044533 783567085 830285272 89773695 217578179 988338346 998005410 238517609 771306654 243520640 639224144 788337156 862680301 129484255 538838463 605556887 739297766 373671484 641417969 369663675 722087847 472914000 738557511 428449506 775596293 731587822 825446564 208640657 459388194 290954633 812683946 127211532 318215674 508084692 973571516 124475300 477059738 593667829 830007244 209998271 627544271 291994346 449035027 629421851 693722113 508367039 523120777 431708260 832992323 24452981 847751183 712292454 854819921 24984220 608907228 289726043 360952325 137316540 217594228 134841558 736327198 933526438 961951271 408491649 885798233 499957670 562609396 320810515 829294589 115098371 969479014 536232504 772753465 769188959 803181131 537592983 861840247 504644439 777972330 581897005 657797125 810365466 822977693 720478055 891278405 293814604 921695313 818333002 845680233 384924570 922963171 568838527 919323533 939160835 980023310 870019711 891920020 893418430 980030860 115971286 483173937 508118711 911949633 991330743 996206645 759196780 970596785 369102348 418926103 941008986 951280529 52865068 467233090 515790063 975118094 287984468 658202536 198584019 262024664 644066920 730153198 752779879 799728465 914863831 923734531 115263812 436244379 735921346 954772906 32529463 241410145 410788950 915754550 124043731 160481077 274392923 578758409 190161944 795405575 406766220 519636353 232948269 260795878 317351980 742750867 819546377 917443679 171300186 557707330 839408464 957493727 657489243 770894072 713794084 818286031 845122915 995915658 200548880 464181774 980983527 985827992 903190546 918207440 86564864 548233740 583990073 922015782 55581217 860885798 353524258 793359691 669085180 953900633 361458147 798323013 829702145 842475554 891489157 920617393 520382896 682205539 664994190 925368774 599729498 724307454 500088322 593073479 865060175 928695012 513083074 894066716 398768069 442112156 318757105 885372163 562972368 941372982 931026801 974456031 255476517 909194042 44412888 858459456 430023172 972811504 865938943 989695186 322234299 492728928 877913943 976506367 216992063 895924718 478380993 805653426 723861864 904368310 179560187 451408801 5129646 156284813 357965633 460969124 868547077 901238419 21788827 219509443 301933959 954542932 883294311 966151558 354096126 598709124 175459060 332298117 328507165 375929088 453082365 929316574 827715778 959150594 94793853 405733403 648541648 778144349 261485833 832907757 315900793 339277568 967931327 986849804 185531140 371801626 299457584 838427676 821753156 986415608 567706752 570484578 764623996 854501390 448997031 693636970 137209333 457636782 364724371 527618146 718754369 757447358 963788347 969699521 234914676 354007915 182582655 997025587 957574829 988429986 704383813 705004438 335168116 391219931 951355131 991811223 992317030 997713671 188445632 520289098 140771159 185174737 476086169 509421754 365813422 919677020 275742657 691020082 671947166 809021691 373549577 555544939 227620048 805679404 671419126 821052089 445362939 832756197 980510913 990882743 888016273 989296702 339735962 847976624 286631788 478370176 60136174 200621866 125125190 694058985 765654699 794199896 665086494 779603452 859507290 951100264 323129036 808491874 54164394 290753450 857195189 915747212 982874078 984751789 424024757 500432593 192529846 425892693 32943199 705739801 740491995 918578675 661138714 923958837 169751439 520992142 33219044 340368807 186039417 576817962 800898149 856740342 141640698 474917298 242822828 819722304 479176779 760896397 786142812 901445849 478363945 715516016 440903084 586628746 624014726 753979239 770930262 920961402 973822267 977619163 830491550 968446507 649347609 785355625 163951164 327562028 964385919 972879710 331589509 910080683 927157536 962813164 866454303 920162225 326111639 648429917 661792786 859566964 253178806 561164388 740800664 761016934 707824963 832389587 836596460 907102253 470766607 630692489 72376202 675868833 745031166 960738648 205813761 697761457 939642052 995384111 150831165 346251745 632641157 780093823 894732087 907992117 382291115 512699158 796905967 852096975 917776021 951720082 143101973 724761586 640988735 830494693 163724282 708699853 165867274 379857334 216817228 276295229 319325330 371258111 914327781 917387291 952792822 953726013 778901171 903865055 652491252 792120496 415406417 891972452 137119999 851892357 507928461 588198393 808863230 911631300 244185673 884415248 421312125 920999137 497922093 626864406 600175097 783973082 597010288 778882043 561466681 830449269 374844744 389476462 687037630 859497238 164509073 553443083 134585798 794020327 816953211 863626799 258929939 442742444 375925901 813435310 880512971 889601915 677178331 913069209 51548708 333985205 948466113 957000469 573410460 620328516 822396645 953244311 434973223 675591684 710041989 859441764 578469097 723504667 55110085 443241640 505350131 709484496 267705596 501585893 973757855 990329379 933618013 957966362 93627572 490258635 414317592 829811471 304492184 587383416 666470217 982691577 826871423 949107966 639526389 859641508 508698047 634125921 684762828 895005702 619646308 824592332 280528829 780875324 705534824 882230922 246792721 568843708 645664468 902248491 399357121 524850360 933907295 968130072 542774605 703672945 497803725 813266423 473260161 970558353 344059664 996189485 995706890 997841543 694721097 792360531 706034845 972823018 695017561 717870284 165068657 574973000 567368175 881010889 953091511 976555447 37177126 842244706 560955371 848132935 10407219 529482754 927704521 978338347 314900317 532058959 822808478 939993242 483236035 676636256 935855828 939754872 925052509 993466632 243648000 662435728 409884303 911389934 743265151 830651934 735141437 880943511 983728618 988401368 411007642 951560696 256555494 680369996 114447342 810408938 868165223 868517457 669931878 907181350 853947765 875539997 267846475 822906457 589465426 857442455 302591751 660076750 890496532 927480194 119052652 512409843 709780646 963792931 245070105 472591581 144790117 743104504 677846838 838978964 240764511 350145844 96051477 736189607 453661151 505844264 700145662 982938117 474775802 608066293 764026635 851433437 919940562 964323518 194038274 530658123 107961052 734685865 286352202 834230191 786211823 825263303 268359781 695554289 339780325 836679499 481190862 866461199 875874937 989497969 936833142 968771801 572032454 598315580 700654553 847492979 738983191 897313436 187704482 870389013 984888757 993787195 588608376 818629831 1213450 25683693 905543266 947296693 849035974 958011515 796777445 976369564 174805937 952085615 420668169 453749772 609591821 820435952 232873388 547907564 715458830 790101723 93286350 806032585 60789219 283892386 794211554 836927512 468411695 537779263 798077495 882278687 75164356 156809469 541276596 836273046 665143434 744004229 781428513 944646258 350556379 527615058 779700667 903271113 797665815 988310258 285510060 560599084 50391667 536190724 160400188 679710862 394760666 883993625 146485609 199508342 849830420 989233389 735929354 793055370 472991953 815533443 556555099 731525946 314168468 896102149 266761359 644802502 220991891 523454308 907251136 930912625 914694303 921407264 95659351 658526503 597785099 969443821 383992685 651744694 925905475 985045170 721503231 972212732 915500215 948901083 654857468 895463826 262761042 457529036 965598396 998044693 191604519 703061417 687863309 804986467 49326688 690817441 158007342 323323396 18064224 140857708 114756132 210569338 824789612 849038293 350114720 365246207 690553245 947833808 285306437 562829477 436422441 767429700 832052838 905846363 446887817 620396058 640524271 904585721 517130582 837943465 408274664 600944721 381732433 408960877 985342788 989860228 281932280 519533802 236265172 269399669 368541321 655302803 187228203 395477334 317742055 842841993 293886256 524476347 193215629 836825261 341939210 885155162 304372038 311772452 579974085 893409352 291259680 517926027 926873661 943232710 414949178 640110926 100215799 997041036 852375703 949786497 118496791 398595767 329591848 539448302 960555555 967923214 381326062 438868047 449809696 759515988 437472509 516176829 909083721 990617387 96379919 726416832 911813110 938579319 256222818 914397512 72734412 127197799 527765433 662755965 960512232 971322475 545654171 967859055 442223374 527013859 993160492 995034285 657326351 830844532 229039969 715415198 379036326 478346814 585219530 937880283 177637540 812958188 171862592 549273246 540130733 638529540 369222676 376687039 304565831 348226205 294840656 558103665 189567520 622148493 622348990 838680776 980106146 988948333 338947542 392670417 889785837 927685245 908700258 921976169 112252416 638015908 674150090 779577541 309972940 975448119 370109374 419695721 421405762 606673212 831959430 999079702 638072773 644447445 447005652 734069349 292135905 426467778 682085985 760883818 628212177 698332081 68469205 266649763 66668737 450066644 299730339 904198737 434213373 498358049 222599228 983689152 994268024 995019514 675051217 853460399 768403221 961274166 490097856 917337846 465976709 719498239 499585129 796169003 128766938 404902690 133040870 801751804 978990170 984133457 294701466 483004786 694363870 975739634 761021877 888601562 961127705 987114692 955640782 972590022 965720082 974065931 574479722 832892887 656630005 725885573 917423964 972728575 228607259 585815339 666398408 974143084 79072538 612642631 914011564 979818558 279012452 892218686 70401764 123886623 112417818 289226916 828710546 939326400 657821113 682348053 966982664 970824656 873793307 972270234 216764007 421822119 356456060 742065149 800467306 992130710 597943331 743389257 319296037 707730117 540728329 604149854 96452644 695040871 129180371 717788844 161438538 485921423 421062827 947730031 629820424 830539019 754746360 930322793 522615719 624020757 122640910 744204773 150985563 503057590 757746069 965827819 28656401 211588592 115838424 149360717 45037820 169394654 417128340 726423382 740062416 839481632 110141495 419778686 342689142 968491390 480160470 882056728 496249720 917111824 153126468 939006313 133616012 334862577 998058218 998848682 807329300 976160396 352691827 995188996 491288475 640457097 108820377 918018379 221066273 313890298 557061998 972114790 663494999 940906826 927799282 960439304 434190382 692446278 491229113 589999977 861058835 880038535 307685543 561799417 126243763 530376383 82771915 580808725 604806936 856026050 430028018 800582456 463558261 768632130 362775229 493729656 611871785 832577576 720380626 909002510 369819160 385515724 283410529 325866450 245997718 757121730 224970427 957372695 29113549 174466475 271691283 788831516 118426571 561005596 961288910 998365369 174105204 368210494 20037067 783200842 105264915 212234117 849139448 900987834 483745355 541266158 307385472 336097189 981856085 985928360 421587159 897334779 936210519 948217133 731736674 909706447 503444995 840921108 356672550 466166244 815796379 823049429 604532365 937405135 254770468 446197546 504640309 716863386 880243866 975220438 423832590 480963922 206597692 744462328 110274862 191701007 592067364 806472449 610171551 874519600 489823133 994825245 943181313 995409881 755544665 954228300 744965652 847624078 471918305 888694463 958203067 996469341 786161769 859191836 455876068 493340273 307138221 440368279 812725071 915813356 926118838 945254402 729544593 848307361 774075763 788141585 688378750 715699454 251388582 722411551 11108076 347501991 237661299 431540643 946759911 947821614 455825572 958673344 470775811 740559201 134129862 433817452 867729138 989079137 326847535 384803638 995527807 999295955 286431229 919591729 665574984 805586725 312741936 725008975 181389843 423784770 630907289 675810275 289014479 698070949 460809553 524843340 421053493 981620618 22181948 561311513 219869754 632974563 925430794 949306939 55932233 389952790 280085702 605558744 525171720 976390463 708844706 916536671 350363617 611920077 495240193 670775982 500494760 535044324 971867407 980354494 626033500 820487435 754915232 917201539 401589053 986784310 242502399 931711755 487759314 934900922 544920367 622719175 393643382 855878254 859530368 893811124 66549405 251758065 508022301 921427161 151799269 951612284 706949330 866038296 248139912 691841212 130312532 753537021 707386070 876200637 84312896 279852499 979644263 982138448 277378991 396732492 618211655 968495619 220670082 351874396 54406220 250199358 548462629 747601539 716697061 841128750 649919889 900144431 1055009 940969874 596183906 628366534 800260245 823249798 176593219 290088327 96441232 226514207 224026938 387435857 340817703 806094754 37456321 829533472 988045468 988093665 34938 621091408 984796719 993441387 642080695 808621801 645874097 750167756 154858321 470905313 871748548 911854526 339290605 371458058 460459123 809482772 916769345 996007147 84072544 245712202 573976539 585087823 40308540 175949663 492577598 995947933 254388815 630015098 250682120 764240869 688542971 902103948 991266253 995334098 671150223 793597943 930132104 977178668 510332345 991135778 904409495 998921545 436090337 547725792 993801907 998262612 261521645 787163004 557509813 690759930 798988750 929088288 716912876 811672899 986443352 988756332 301674836 803501402 778326817 909089369 178784943 741813285 249737837 785739515 539478298 995367164 82323276 271742914 122392097 690112149 506195967 890799839 681859145 920237742 285923366 628768368 44130091 756095876 738231689 839783534 501482905 799915504 424418324 675479779 213944044 678088229 931232864 931847202 943857069 983554674 513732322 863045516 39633673 755847203 503036697 873818659 833557398 850827708 901281231 952625929 995119865 998048741 122861456 400967239 116716973 303360625 567863394 979830022 87712710 840674834 728043553 760929656 146315433 505776895 825865812 879252096 391074023 875666312 536896593 838761295 817339079 965931851 638249457 758934045 204352931 343937715 385894258 808197020 485011739 719801209 47677436 993742262 204578007 752547940 23496158 229144102 619154745 629565898 359289396 723473497 412240700 466590260 527768038 893742986 525560329 772285975 532851889 609728208 296256466 729780381 175504691 398545881 817257534 994684949 318209309 807095736 764804381 895590226 712108895 920272091 439828765 856081420 916746989 983166857 988444212 989116474 632889297 732239261 902144967 939729803 339845808 877877561 237197583 861256447 407800508 874602531 990097261 997459477 549166961 965746241 456123017 699487655 917339326 929453604 827195153 853951488 261246333 970262073 842625181 950040445 651253218 696748714 739400253 820436899 252247539 570802409 271491275 666347919 614579964 925871924 648330373 662779440 325811267 844741880 445560540 952430943 512020691 692342813 769841174 792082563 127803487 267683694 566057032 969098247 397284784 827479229 28323212 757491034 495102234 677674831 150895905 840862895 176791253 937240592 160950376 848665401 464063047 565701935 295203442 538501465 981214220 996710486 763666357 963974294 997004161 998045937 465032869 584980384 731974122 963396434 292065841 567914534 891501618 936000566 251810540 336655663 838110436 981779102 807445814 985386471 612808683 750705829 933397666 975531327 311349565 484778727 866938217 878855752 584705996 741429227 556369579 937151740 613121735 811915192 485970986 520999975 426751886 944488238 126215609 354814439 106386040 484320884 970083268 995027629 403909469 920091388 685464020 960312486 877507731 973355024 356442193 488496442 582285752 778036191 257003823 814280527 229494110 634301352 469758888 529797264 9089587 432516163 35489005 373390437 780701973 861503214 991355094 996764965 166602429 373791254 565535758 577126261 503172463 902013689 39084097 398665644 656323305 946766844 919397562 932284525 911425611 952743716 310240696 562179862 41051836 419432758 239149795 969685867 189035217 493717184 762684893 779817789 116952352 204896013 534127648 804819748 95403580 845003042 824703404 911359790 491631035 783921472 1616163 958101056 276655760 803084971 541192075 714072349 282174984 754448187 605557478 728372534 241707230 677962127 886805680 973534939 958663591 975404507 145142153 229991763 243224690 621815999 278624753 311142866 768021707 811974265 276059820 422218112 295729705 983024137 613459693 906984096 228434306 995779588 287719914 326949369 403032942 500736238 260526180 373051690 79441008 783244972 124466096 528927836 290355781 442829637 99132498 319982063 253948428 433470670 843140611 902765923 526959991 590191229 118412997 402014267 551917685 968485006 247188917 352264622 448987570 671440152 796715236 878714857 63701826 153905423 923409526 991504306 406079080 922936104 511490479 591556581 691963548 951953851 620573661 756207991 523512693 567970368 478352361 619750356 32309409 707068267 798765261 872883963 556390912 964144230 250838289 577344457 50503992 525623287 145968090 990332949 890954915 997301931 133115039 398122963 322133842 913862469 592684026 721959297 990932862 997371684 508429879 847750420 610342908 888696069 970119082 976701414 852246230 962107922 970142118 996177914 357542411 901203047 166682865 275136921 680698426 893541602 194514524 529152129 151680216 800522691 98870766 925160321 26291643 84893241 447417830 960419838 371505626 923742056 630584712 687491023 395184143 411385637 696732504 869535628 721017425 839746696 454703797 586454850 353209544 963535593 238732155 785609032 669741619 861184594 566246594 764908414 209012630 753299527 463124725 607495088 592497925 796525461 160727825 467810480 94089133 109696894 378138944 382084726 808462523 831656659 831797764 913496161 162493715 905233292 45556512 515627925 161243437 893217936 82081685 104613781 278701546 879584915 621181277 714103578 797222764 838221870 514376754 734783806 279178303 292315288 554995638 663780878 860112459 910321218 39655491 851076990 216054759 242716884 536291871 742779173 210207474 348757260 786094825 987062357 653991263 890899002 802117243 993920016 11197541 215984339 894676869 977500199 752473455 918260135 464205739 514355411 89432531 447892703 929491763 977477340 718333569 778707980 127913305 588502266 506270843 769009490 667501345 789977890 213509716 465482233 595207302 963704367 807109620 898992757 923870271 941077391 236708822 766325556 45512861 303760103 586016646 636187603 46917613 711596545 925713849 947444697 449500995 895789436 592156007 813447562 684704828 852569254 308326596 612615368 476768021 751739388 68414049 818147446 319316461 950340490 616074210 671175418 398164540 975627092 327323897 704966444 878953492 973134852 207225093 695671337 411158712 889863263 991299559 995002099 201515587 664012427 293356130 513595958 718201741 820159042 908372214 945945464 395271108 709724353 353867315 551803491 315861769 613594521 169305029 965845415 521586039 702292309 709035873 956138723 54188094 249550435 541017787 602207832 178047118 281738134 387673436 802063061 796630559 829126833 220550860 331552310 370339365 606881374 572063023 838167793 54084275 216242016 180270566 193849599 600640583 900480747 390825492 490750030 892923159 900207485 218029460 799645865 419047723 928944937 799676701 987852469 507461336 909942826 943392520 996683296 81878408 85329277 392572166 909246427 508854119 781357139 307328176 422042393 478156379 619363207 307720534 551406982 394271982 716066911 632320477 819661375 408317250 878968804 272325746 982177703 452984696 800117900 168626295 216299052 985161177 986587537 795079216 905922065 793391154 980391986 96105723 270237483 485660085 734855004 337419804 468048108 70598594 589742622 836739630 957050826 847584625 931642458 371013680 828654594 853425899 906227186 993654717 995929497 764422747 939238579 922228514 983041832 472940547 989131798 530310293 952193389 687759704 863195561 623858595 942428564 873126430 889685490 197613219 940062597 429337549 677836321 518226703 903029620 402359010 964737460 390231979 390389032 730816982 737439770 180836809 208595873 152128771 441100803 494655274 768077628 394305140 739336061 666376462 886555647 980765507 986438378 599187281 634212558 871286008 996138687 750519797 905707513 163802095 658134428 57481214 104051028 299553662 392227905 531921850 754746713 328927349 536999369 147709659 500387883 237284206 372398267 645391140 817432097 265253307 919901860 880088493 887193757 982074052 996646690 780808101 884307729 377042670 640251146 835854838 919764892 989062837 992955399 982997335 986701943 142373979 640875211 263463807 651204778 524640397 850628269 587534230 663019471 223252459 772299107 691628478 764594659 786392643 828882374 29886325 605672170 934815153 942822009 250278467 936630684 803217988 856925495 366265735 732998261 955509477 959066938 132760080 210814102 591809543 917945765 889463808 983954464 23579588 933470468 200808808 931763256 491182143 630942247 942980356 992947069 539544937 930326048 227608842 399172135 16238190 195781234 347124020 422036084 39909474 948225039 358980054 826361436 463832769 480929421 218090503 957274494 70797915 387223165 911748753 952735365 382723925 748666849 787365319 933004979 217219722 602332832 232227230 692119256 715656339 995720923 588390071 821255357 929712592 943619967 604117361 784011373 694347939 862585404 668457520 683814614 607660397 987454297 156486814 841851612 455327455 618908142 782195106 827466971 811615269 992082686 57094896 924928995 328139265 497336162 820443261 888464926 900645969 994847113 21139480 898553753 806488152 827007877 875106927 969444604 584997123 835012670 683620276 989538851 16323231 689044971 839418462 888214660 568930998 752236070 988046108 996222497 857722068 866397126 974444630 983047415 739922559 833141649 47735769 962476101 856447642 920563156 824659305 874668771 427362445 991828797 817768324 884782866 654556434 769253597 642654673 805818482 165783227 770807914 423740081 556162888 464119494 605261324 715026269 996794988 828338836 923843392 625337076 806045126 813210920 971265472 709302808 833593121 710359356 842563342 194323246 941628178 248116839 781264780 925788166 950264043 333816669 689729901 248301057 884840093 749569752 865000927 247595808 527062253 920680681 970645961 257010945 903028978 689067153 713020403 45382706 806992548 526125663 593519668 869687034 929599259 446902445 804187615 827569866 954291834 113016138 666628478 457435872 747911169 381726177 904999002 384748347 966701787 503813013 953970906 813761111 970791043 357408809 614804151 73798903 732692392 3910477 957247515 395262323 769185648 543545062 881860708 479088348 666257976 679760793 815800200 181536731 301447570 4818363 173695678 699262507 997339237 513744739 726370699 165686589 716165686 17910196 880189067 14543707 872725908 352195276 587503321 249504842 715462920 12171379 513668452 885470791 901316871 665221647 880564072 921651808 996962272 836949296 998620917 989263500 991000958 562465489 634572973 399767395 973592778 39724892 154598060 133354744 881651652 983473227 995556879 537070327 991098038 614310288 975270581 232342332 927610054 156062393 432951665 288157184 542485460 221785514 799494787 918367544 936579662 716115251 716740544 860604126 937002779 406688309 603082271 664041698 852995734 742556594 745349577 388073944 927377584 432544868 977353144 362670964 975239132 21451845 888918005 703565189 789167340 474332512 871326585 569304058 645873270 228025274 305229038 255881386 537362076 609387139 765853160 523938351 999166544 906937142 986310603 634075341 904035234 698402030 705703393 702596233 897426945 415637646 648937444 855940614 867588599 663377952 881425637 28161835 916235012 668101233 905215695 415712588 977960906 359238496 923160935 330560055 672722623 197219630 383261212 15142120 859847647 973607423 983982923 692586514 831158145 688501241 925072504 638261607 864622497 997494995 998161024 560328008 652686407 526561483 954507510 689306340 894361731 767888357 816099963 668683213 883093441 714979577 935157985 748477241 932011918 669779749 805900435 751954742 804758712 404946359 651358835 970179138 973558058 988449249 991408065 269765337 792583169 351156708 765245987 439980577 726951161 531046278 879378301 160588415 530789741 97039889 758412964 751241592 859000684 568110609 889179580 855091146 984207188 338129008 786961578 219116036 534348242 57756907 394266661 239219394 424939363 622512454 842548667 994528951 997667566 663749609 959712517 283613680 924347226 677389563 815842751 745329129 841169241 868771159 869279622 862624101 951606756 812318796 890645378 94242386 903767347 752911264 860807308 632333806 835936532 525043043 847420130 373821748 774698596 6656479 879927913 924978618 991751957 21282334 593065399 126660866 908452819 250203594 505640002 244404613 786584210 42621918 427711902 532633710 767396511 195729882 573725329 663796934 965137517 282317302 644355160 733448873 953340654 824258484 935608433 881292823 896678779 960136551 969209600 771309113 920620664 292804913 764523585 416270423 441523250 960045385 973307680 490037828 974278995 995196494 998201833 561837119 983595132 967171875 997539650 195660446 605952121 455830358 725183936 705860870 834494937 848039184 985286443 813711354 940221414 219753122 258353130 491822177 817299630 138264539 366460966 153568603 557358880 751487070 875044508 644888960 996952785 625277837 992765436 954862632 963674128 799652608 862781813 984864034 989608281 299194569 460980723 640902578 766159225 311753864 607144568 397012561 820077860 365534865 750319634 997833856 999239746 325204867 640279410 759703847 811399703 337077410 614089590 238425875 489737400 732073643 957283133 883226628 947763087 58983427 235779599 593626822 671165529 120437649 960280631 559154185 941193666 643686267 919635053 149327075 828984525 523361388 644870604 589875853 645336569 738137510 800861877 472852424 646789763 183115101 359408451 239761489 639098318 837105733 862214836 814198119 988981443 897050969 987878451 335480324 998611527 5702474 316809063 895476124 898156159 636137322 687326789 819159412 820177090 619888163 982620409 981830323 984005767 728650214 831851942 476167413 706349048 337800533 492470395 611347314 907564756 460370551 860268912 409039841 874938249 439599505 818583667 930265670 982487252 125438968 962537377 268720420 445379969 616781388 997487579 213117417 368134443 997398158 999319252 630818089 752609948 130708054 389388315 307944077 580872001 168468128 821111644 44672039 255950426 87897861 655557813 637221860 833872683 646476339 835615796 712725165 736144134 609263000 949964331 54804321 562224087 254118665 759513285 386356803 765431583 554799919 978234471 201170943 986040999 48444105 957370419 341304345 866699651 545985990 965315443 450086190 550008986 751093021 901676258 690508886 847763475 741362910 818088727 776060227 823969503 744579678 874683174 416837272 616568305 266630776 311820894 171532668 625771786 363326357 547935825 63788926 566272794 150399548 177975199 158657749 913875864 830872162 858903350 867208170 980636946 666634770 939992130 318887980 886587248 251276451 997410408 291195766 873818404 860500747 994285304 100927869 245473665 173762353 661472243 37259779 412755684 240166931 684597314 926282881 934023880 789277655 858539174 908450177 998238886 21597620 923182716 598614544 620421907 408195031 579623286 800644315 969941806 325041519 613589907 302070915 689942530 759901310 925267835 296244890 719244666 533033710 535906743 681901110 819911833 644644047 762163407 655466381 672560012 912614959 969021393 502069129 755224920 528438270 905780936 129566176 204604737 414519016 954537620 198856168 396278157 794905574 830075294 48965628 518709043 120715435 806465694 490126801 938744990 383128072 730379141 878028374 939543229 979172207 979905144 406772156 818274883 838538393 893269317 54044052 791838642 475097035 701396608 161053821 326998372 427080020 581630218 634485372 669951931 60357884 613686409 18768373 502715812 464349940 575084435 850001861 903613816 250604746 831230354 410056361 430374326 460791977 842554220 408926533 921822494 900536687 989841262 58948990 180427738 79731332 790884608 88174966 142416930 457713685 483738346 619302310 836966659 267799861 918753894 325074228 701722894 156726786 809057038 410636277 753663741 800598850 828991755 617686612 899805875 182206265 634969949 695580906 783278750 256958385 564980832 833941063 857369522 888430286 900166775 679664550 990990955 699802754 877557138 426836800 870149645 922852902 947389234 92067875 404479675 713399052 984851690 345336788 370404103 422815292 792666438 609857086 851084238 846792863 856850913 767097537 831133196 529832872 757514938 106309711 126713358 542581147 862784394 83428234 814613904 71886948 494143730 182000974 644409559 170575235 917137467 756925585 900878726 760786601 933663161 486423039 669036444 577205589 900557972 625408272 996706053 678225807 714806014 398579949 912209550 260760147 930427710 707156385 756316540 842696892 940177171 268752345 494917832 774688715 948110845 160731962 161496713 675107689 735568205 649333676 769218434 957173636 982244848 902172742 958090401 406033994 726429364 434155680 978463162 464704299 647920812 527387854 648765273 155460002 533470368 69409253 467519494 885495828 898425285 370102674 516389763 214316485 619439280 769968361 976777074 153951231 467758543 184734653 864311485 112350379 217628620 103762511 627137647 380982672 671925972 814597596 925198069 42044314 864207749 343029010 452146352 64432681 999247183 22494740 416857182 722403066 967865028 140341757 452025695 578405738 873198116 354205467 853163568 893868063 956510775 86432539 970133352 812891084 863478701 271519332 436545737 294911076 521346786 403928220 757531482 657439889 985165455 605818305 925804939 585085454 928157904 370472935 628603661 772144547 950332456 643630483 694952335 18814444 420594482 810843538 970766979 786124938 796942280 41495357 627832618 66922863 951849578 488685931 520362250 544637818 981655448 769208814 802407565 269308895 396515284 65028762 383387070 132460583 727828756 839013617 843085647 458264826 654751852 161055983 669674430 353506125 461741923 968903422 975156277 287668252 835435916 527808172 726587787 650649944 717159409 36918785 971388528 325009804 430695669 786014760 824589924 253311342 865553061 618125361 739224454 53145958 235871973 116450127 618296464 390246064 885061492 249120092 250929268 441805435 831095588 329262854 951804427 75243200 112804762 708680753 728281178 34802524 342387849 489236924 743243115 437653539 808896847 81282256 795308108 78301846 696061185 455482043 891646548 77859809 907633488 271451177 688049628 850258844 857109587 674160 23656111 977176904 984640059 783790949 839619068 18554656 467820618 233828845 974636254 5107255 753658545 896674040 924791329 217415461 307538927 310059768 923144038 190531380 411774220 348180296 715541090 99228317 234947043 162421780 236059664 644844585 942756016 929377025 957587129 95860636 371500515 381686565 824594544 22189865 689510836 947076313 986037650 378645014 629485205 19417568 255997058 777263292 880505270 886607712 912847527 313273269 469082098 227703216 572234299 271014852 429893746 516575810 567037920 165539523 904882533 620492093 993581182 455295119 655677168 910259252 972083314 503594795 636501219 948406002 973484477 391531765 820903257 958825883 989075272 479283610 676068738 960451262 971649371 225751304 413816825 783615659 888125878 848047437 965607652 742383379 950943514 975266340 987552798 761809371 904306861 242329978 361707685 680828725 727617907 237398943 830372738 645442586 919833566 387854157 595299053 840735898 959908812 704477460 741831912 386681689 994998422 659813517 921472417 318674944 693482791 461142469 982197865 987757593 993541521 937123552 998672395 217476632 294090067 916450638 953707198 718595686 919858802 393435123 437355840 698008899 807331661 464699981 719505731 304253829 604645841 36022713 562120064 149593422 766060112 221109187 874394233 165871833 851429396 177058269 602620234 962247698 993872243 145144246 296096960 590818686 854737505 79803655 429655095 929076849 998026199 30095824 972408688 587341402 824208832 767401438 869958778 151288698 302451127 514731013 778959466 900326912 979637913 852012764 854597965 17100016 695759017 460949814 766729484 546055837 726308374 174669911 975264207 179189069 346078488 101332803 823932692 699810291 989880212 332905025 865019939 754064308 802214486 327065455 724465276 320861460 879475263 698672176 701681332 532673105 718818662 92676465 445187301 492772454 607743019 75391610 381420921 616511565 899086254 19972120 992244301 377504621 546664818 946766599 974881334 4901143 818328166 55215129 772174432 421088810 706588425 4234243 544105399 331782786 858295161 64910809 130994714 969727001 991622574 236481968 517083350 217562466 541200681 202832052 300499373 675990440 835852720 621890318 916882600 716924919 749858996 164534639 919305864 508026272 734178804 763886465 898754013 761131357 782160302 946609370 951828624 802064004 844132453 644020704 810678271 408553599 799403823 97924676 363342487 520899138 803643255 785746596 847884102 423602045 644046100 737420967 845179587 78570641 437344805 78722388 195190072 511946060 669255158 654148073 676769845 491535869 542813055 21737114 941149704 356524299 696151450 25171984 78682391 854253469 877652576 286988598 744769911 894216991 988227801 420889604 866092978 426423386 649000969 962361987 966180473 946245018 958860789 713150042 740394230 34162075 485332278 887579886 995559764 299923062 494558003 181789473 990088728 216057595 312717687 176521539 575677208 259879311 642865836 945138423 945146893 6939344 514190622 364105325 772379969 217008004 788056950 452710058 478166921 656124815 856081830 254813062 496078395 43258932 186556988 756888725 935739076 312838217 759041587 361510455 514366313 440966321 867307585 627743057 781492591 882048283 931136882 407433559 959673909 466918427 927861138 717518906 981858647 717452254 772872137 495452547 495503824 162795062 573219928 78851117 640733606 89272858 388653065 58024192 598659885 301010486 421195358 333997982 487695691 979613245 993414637 437718917 635005261 990298770 993039442 772925222 969347153 392363695 714048789 444000137 634694032 446834056 574423102 263322251 476759369 794366714 847335329 872589509 998755957 888598449 961042249 893243776 942325437 237555135 585422017 720905888 891107686 474948451 995493560 987974093 997405627 24578458 584645752 656811780 730981534 24191033 997935755 88115163 779860291 556674078 631267619 437614619 554206828 532964576 996330946 542385100 880270900 515025753 544284906 146476960 227481816 650837675 849839147 919872732 987340348 958885499 986348426 258604906 870899786 777644691 940392078 715463044 764608056 669448451 931149870 25870021 560134599 601835260 729579545 941387109 986409376 20043581 74380828 493359564 747228706 257701248 316109700 462489127 912369129 522659361 879450801 930721170 931397793 917339715 948159124 198236143 618700762 7105704 354509932 575255023 749163338 265382995 305004697 569133384 937492287 212224639 319740901 329797841 864219838 598276825 786701703 889534486 996288823 236864881 253354708 997484383 998182399 478930739 530081302 676920462 710756370 686457413 955068781 168645637 294692111 33102293 560328954 790026481 953433736 406265412 645901976 771703213 932868788 902406002 938858678 742811051 959261149 39635674 289131738 475836838 836027261 625289392 722195076 179195309 278371000 110073229 679850499 357026530 858741635 403302312 573647419 105368550 319052717 773515248 854695951 263360793 502994559 911995198 958132733 352589882 660427237 199819158 230404161 468021248 507809030 586970276 984029484 546533406 995467487 260305967 838204910 941212224 996261956 109885189 565511241 506910176 626386689 778093188 779850114 973981708 987452497 321946079 430447931 171382613 280289310 892553308 985892965 616593155 673028341 672326870 725072609 305903539 795204908 770389249 962580705 758388513 803650530 765955974 839444079 517020993 799012427 49398011 634916002 949411120 951860457 2657831 335259372 808592153 873354385 253493392 372510457 743090186 972079537 657505281 786173851 227707638 909280581 633997603 747703503 747868332 752172533 120010637 821942293 230653888 597985867 736589126 954570158 783667309 914858583 622954193 989848843 205023834 647816123 665108653 876141187 829432788 837169213 428258418 572949842 638829584 963146150 724334946 912941585 661182245 816072906 176973205 824742926 155254208 776111716 243718937 656207758 987561524 989484730 294306364 684557038 215621258 475276729 611141194 937557063 328223122 971745694 64748673 429258307 457278484 479883835 684347643 791980075 42438752 671356444 593178873 617016397 169030278 887208830 711565345 959186042 172852424 703726272 278950869 344478817 223980869 296684019 624018506 798819733 177090946 686168123 945580126 990790557 4504215 306114246 680318370 840860469 211757360 810951216 104733958 369638358 741812897 904406023 890061818 976243755 93422834 204346950 603644986 680526707 356858532 554755233 792971142 929453496 544193112 839427532 31762650 398894764 209428953 593719346 575886019 983369972 923834329 951880711 818314405 993479312 735942324 853049099 132664242 803567383 394189169 413136764 545085989 775403602 251839615 728009330 913377759 962548260 730323656 915364843 443946692 605582713 506696404 913527299 34031568 910293472 578763446 770702780 249494706 445853991 531052255 879414996 710380910 962139486 840354920 931094779 560069232 782218241 464744752 967656099 932385498 934562564 484044616 633921102 707986667 873433762 908276248 913845903 326815084 874836720 557284181 812183517 626677823 658316880 101736664 443734485 559467411 992223614 195501929 225270147 238295138 578282700 863217938 978606002 195298933 339376574 928208395 996341798 767583209 838714791 216509887 250562205 435994770 445034946 114685936 837806963 192910972 265364170 762497330 777906367 605847102 699274579 26313834 408955689 185708418 818145041 541679089 924949973 206233628 355892046 815383100 838922222 912681198 929339004 714429205 779807260 934796527 956538498 912086320 942021022 139369076 154028351 651690231 877635680 28537323 341034040 105743884 264370726 552640423 838339541 8809217 958366620 684361515 742453275 596553489 775088883 410072974 954145476 770345739 780270724 842328083 965055757 200807486 291130720 584585741 798340777 275150147 766380337 807001364 901178377 122371960 671369882 483594747 732395447 770620674 912514938 363584827 663931460 248043726 713833085 374681999 628944484 464721346 965328873 405143532 894897359 794414002 927303115 774379138 777505502 985178567 994935687 739140229 780004460 264601545 656866347 897404803 953610148 941926487 984111779 379089696 656223831 445644495 966575991 636407536 684026266 862296570 911420422 131861258 189619582 846321042 912245656 272555952 878335809 480068054 737981948 509719132 526387325 813962531 831197393 710779760 800842369 585578650 681846179 802201774 837011940 851130407 913646171 49827418 294213513 153548166 232305002 213148422 392498550 970364054 999111931 818681996 930637749 774018382 914840764 754640616 892659477 320190213 465395405 426021375 796484522 133950452 967932533 648247259 768201070 970835357 985887787 866413531 904732070 840136925 989953848 995259190 995908272 52170962 444200767 24453728 102884054 760385770 822044604 871868218 892911791 814821583 946738537 105455293 946844909 874559246 976660160 54419864 952090827 533227362 919325354 927990495 929388682 735496268 751891780 891529025 902704607 152570420 179515585 311386930 949392729 293401882 992799263 166212894 807555744 967208602 973154217 375159260 509425309 12382866 761107937 232016118 346448038 97347903 694680111 814171931 995195081 582298496 685094467 922216687 959107601 2104878 336919130 101810235 352820149 825338095 933694871 714159222 863598268 852571888 889939639 43355443 933157066 316753286 474669959 586238123 762902672 665400676 730075855 719033105 863387557 394291166 903143133 527274194 612502092 650861922 983918302 309750161 525797119 207632194 993025340 888515721 898638239 323467228 390878223 20364187 608189401 773871149 898869710 641117821 872073425 976332662 985912338 529060864 707865944 468872859 626391906 261199121 655846776 912480989 991146646 516852133 775739265 916326667 932112478 868397616 875269605 684352321 786409232 606860625 796506654 778367899 860737707 911024660 912058717 686248812 967264647 146290366 290676717 895986819 982908501 709898614 756759300 601884935 698457215 791671976 884605199 716715596 814856065 309327519 842021605 861627247 959780051 474891529 895250570 471694617 621566981 645073891 942791361 653603684 842614598 317822771 490613426 807487548 907866132 343406748 813308796 661290773 665929773 704878440 904640415 336614759 629642258 227521513 616350591 769328042 987955756 44116915 88874246 780681892 788290011 54614560 653637705 34996705 737605038 746162105 761789182 150139541 755924719 684822385 902951921 171158214 908772065 941465352 953287890 717176688 964068625 945866381 991927725 444927060 625589575 195049206 893509798 409112123 503426160 843187420 972780947 541135913 680160043 15018650 400121023 156358333 380648679 503253444 703752459 388526691 396431356 203374285 696769047 431416560 670203451 307719659 542445454 208098457 857764058 942976538 996234144 580138777 612972608 640837941 974002272 887477162 929542369 683591603 826106491 116407995 337280724 630135603 858471448 105986467 767077950 264141970 588970205 527698238 735189834 585482093 771311488 13353067 196244677 496250544 721606007 201120567 266470614 906567460 968391038 740865135 758749813 162144110 343544003 534764223 959422829 900385363 905436202 278972692 633266906 586269772 968255210 688096542 835366564 84715486 155564915 794639985 804208496 865241318 894208489 190411569 320446935 865636254 916338827 452323175 946211953 174011762 761067051 244737720 683418993 688020229 846298692 574936958 680185965 413899478 561796116 331657732 895819953 577685197 618411274 668305766 838089782 913476365 942984486 462633190 836320393 733801625 815884915 369858610 620348824 712589307 771154047 306613602 722821666 622243142 944744257 985053568 998445083 378110693 942304186 756059273 786033943 561204831 975777232 531551753 727206811 764699644 783938987 188082322 211861860 493082684 819093520 845492098 946028420 854643371 893742189 75104316 725049550 842549685 875518523 327495579 862379743 660212616 962429224 638477341 825621572 776623755 930107542 264468161 608822859 961587128 989438268 344472762 568868007 250646297 743910924 393574073 909782381 133995457 466113267 248674351 432423358 899773947 974257263 884155856 965532769 962832931 964565915 522219414 595260630 828653117 952979018 233263613 993055696 716685347 976605658 213805807 218158485 230179080 551962697 5226602 538879146 448293822 540574408 914675148 962930898 179323840 362938195 880971489 965655737 747933431 990331864 949687625 975688009 62643125 633153098 198204952 480109290 831570840 911759618 666268518 924882275 151273981 537258637 664494010 877916971 178197271 703500485 453836949 638928723 381303388 786671644 505112156 750658264 388500076 817222496 744390044 936279938 51275126 145837727 335446729 381008908 406208533 562518886 35676991 647753373 767707826 906574447 601364925 787281864 292729553 363390929 578238642 976123387 952533475 996085114 64042205 762335533 105254106 722771582 691525007 975995841 991728584 995929226 312608456 757059964 84743335 664965367 16528696 568496825 150683552 334191260 49680486 515860394 72048132 328480957 316459275 336079478 199860669 391076662 200893961 778905359 755159756 889439854 381848290 597366682 189080534 198801001 566278571 588507109 690822672 837720473 37130094 437300007 866097999 873344309 386064324 405156310 430359223 851454376 502860250 703568086 282893536 721565142 895299045 958839872 484210064 664229239 38886640 664239535 473297015 941433033 533748929 889588323 694840837 834784826 516261520 621033260 675960145 739193276 580793740 956698169 324635821 681859160 783123216 879997297 335406407 513589140 5173022 53329064 971388104 983730303 86138519 178211695 267687988 952915331 869491236 909735233 835424522 970974977 840888013 910525255 657753320 883322702 221700872 380546852 77854069 127820578 850980006 919887215 355032876 896183875 432528804 589556993 353008622 742661304 465917685 980581496 887872532 935562719 611024583 779475688 346055963 796728755 980636746 996110137 774625366 800521784 797734884 964426076 426214374 743429385 284686863 535581344 295402951 897020704 687876390 914498321 985987494 999180951 877080248 983872180 596428760 913236349 449326710 936992003 749353593 935232436 558457472 662959892 690766258 782729384 963682995 986176052 379751372 479115263 829917723 923546445 551301659 945521573 178030363 859642964 128038695 730256570 499909845 801693415 492811562 837764250 801647180 960644912 545857919 814580122 748668687 972971971 27095674 492466821 247976327 556644812 361933859 927231737 920109778 997880309 892670641 904323818 732050326 803720654 700228581 756086064 684735480 789530508 216310259 355453258 196575138 256109404 905228255 954983581 355020510 960773333 621287455 897191572 431471727 614921410 956871235 969888999 701457277 805799939 558827590 911188363 932131995 987726097 725972055 903788312 930641790 939305489 171967051 886987241 821580975 944472113 228831068 317008581 747425505 825416980 295370296 584029497 647599898 830554465 16059520 232143284 842555563 924741316 334481314 720436350 714734385 850650327 676615308 920419806 372115542 775542309 209680292 868577029 663270244 956781440 96595637 310529564 611850342 998369736 68330426 109969254 789096518 811967978 84800917 153926923 873341004 873427932 587110135 805141295 220480958 398734632 294073735 331378083 180743155 454862468 207662133 982253865 11118892 712261041 219397733 916496774 961077966 975246605 535718319 828728986 890749506 926464081 994579332 997065688 490064090 858169298 665018929 706833733 690740168 887858046 992312048 994119030 930166669 995652756 872347463 939083311 688828495 890447235 566861349 833185965 519560396 985161245 410587348 734927445 393239697 799799032 165694495 441276331 5426374 467199254 982827615 989953330 717245132 914968507 526440531 670397582 636075880 881220336 258349387 804404348 13712765 876226626 246124993 459400351 280428089 366449749 499705957 818809431 781493666 782792202 508647289 633862396 175339446 579256626 502255986 815752044 987741665 990773509 561815808 944670846 340310322 528728223 668608200 823522177 832442067 930774545 460300498 771307644 505476352 760010246 787256781 794630715 782269994 862783761 381601720 574860472 739434310 876989616 858824448 902863157 329955404 863791518 360724149 852527859 989398431 996057992 379258496 500983248 231909677 463499060 964600961 969858041 534508118 678288257 811162713 966255934 660306393 744469736 466978933 932711468 195487761 379677660 332701769 653217701 6983762 904497297 821848320 948420131 275236246 277092790 488426674 870657513 216737521 920062749 471635161 880537043 749637668 840115070 699683662 988100214 323792116 562286645 95676310 349514997 122266169 174642012 763603779 906331508 541106398 915429748 990239155 995132432 155788841 402651051 824226852 872683382 586962443 886961222 801764154 880520118 140659439 738946379 201142578 426526387 826197380 983060315 686927850 770490324 137004199 673726933 991902257 997452829 386576344 984652409 39418153 920439384 493527409 698800682 691026398 979024554 541452583 909975532 231561787 974829386 151378305 249072417 784725578 810681233 373132753 436628808 840603156 960382597 640704144 684278149 12471657 335489891 26573835 159311328 556509676 982138994 654942078 840712830 335473806 649236862 141083506 859155291 144626905 621003083 58869564 148203492 959549868 992722537 467756917 659316322 908033931 961511900 165973270 356393789 203716066 531224703 499234670 537343202 101829101 216227252 293994710 776982482 253069947 539541716 573043777 986481780 144237153 163527840 650176425 857884130 942246454 950245594 692251989 769431472 568470436 626801890 378514683 993259933 584747150 904721535 871697894 911857887 389866804 482980247 697889904 889527874 866848427 932953912 600251550 608554967 985719362 996710854 21743419 154241964 47769544 321906621 181117208 576687144 704334677 725246948 985011352 986353746 986820277 997531011 273629200 745722129 558230415 757315961 574929613 734365870 798469676 865124264 645074660 692317603 134477902 829900397 968264005 989936114 359245713 538235580 877230881 931263903 655209238 726743758 297790784 587670983 543090470 689370393 862676166 916666471 936853028 965802215 635987633 652951858 247183632 545653028 425056562 884472541 502098738 921112818 894387253 968178705 446919525 618730567 190502494 226087162 684837306 798784125 991235880 992763783 146603047 323523191 427718896 430319424 540140517 824431875 862374325 944052049 737171827 751967955 406653484 973330724 669205432 682449405 548864063 694149425 824850351 832660830 594068815 789775690 152785014 383042459 315382306 951685378 113214015 161733324 969906024 986400570 390375427 409355439 357001313 567943863 97879518 944035427 566263171 909586407 825219618 869174197 58174549 553316896 515948465 625216468 90266005 342226814 915621328 947060147 466513206 620824693 609669473 630841039 429748733 724883567 471116609 790150586 137012424 974883889 40483742 498352657 576904160 841338250 266256353 474483327 109922053 938120554 189684197 210410268 984521920 999163062 765601269 903457331 964419084 976739871 952066507 980432800 741822543 999331981 876146154 961036029 994706929 998232792 96873396 184332235 193797518 586679302 977704751 991147071 111090017 367078690 831168550 885994414 648613413 662800180 350786587 559397227 697329274 812636851 858417900 884210998 152639872 471652865 108369611 786924673 253371924 483142337 248922463 454220176 85052262 610310797 320043665 933632402 67845951 579101508 894256163 931929696 195284124 814300713 730005626 760502947 454000351 474875955 348446590 387504383 479308721 818808672 992975254 998319600 596536639 702800658 996893918 997427800 635739260 706474830 348413313 487320627 265401300 831881700 493764887 910003509 482183595 612426951 760645338 829411758 253152060 545094844 554677078 784886604 33422138 46051681 263887288 897183014 320479697 628751757 784796691 984156324 317648587 587701422 738614017 980313021 825664036 836386538 256193047 992180890 497074446 751690172 251827534 768832176 5657682 811000091 543846356 914368228 333953814 613140077 769187835 794077475 90875718 555152862 760743399 857593725 133200063 806731657 907197102 968590105 639820649 681938332 964070413 994415025 651319167 742316715 223794444 588850954 465923905 900187614 497028809 834509152 266372164 624678918 802536169 971180204 301052920 834479358 508528234 859170165 712971694 939726319 917582198 971146533 108184718 945154064 645313181 981455995 132313590 864179347 298568296 522694345 9642403 681160175 715757571 964914798 939347309 939474488 893869316 974160741 154306914 732595240 490027757 752272581 311376231 972713156 315478306 975279895 504150903 507861030 234621682 816797638 116489762 212991072 402447317 973611291 310527663 876563008 688762648 949538641 792170184 809604347 258953000 763349609 409207921 578201339 140371017 380470432 708781059 980595349 693372322 789609171 947005905 958755429 739392384 812637685 46949831 877011276 803592393 921868210 821332810 856680099 50500853 409860578 293250913 947995761 131269911 342155583 248683536 292819429 53179617 492808283 257270205 708773843 426046051 429103463 341294467 762834426 903943492 966667813 339399315 711636050 99973033 899012492 478170654 581690264 470415195 536460887 194140425 403473094 245712744 616334323 91766069 116210629 464955503 532711250 408671142 551876814 943743734 968899232 724570272 905977091 380240118 395884896 254683297 542211621 603575223 809811621 283574395 432830569 616997220 964046254 651463660 787514747 748767298 874915966 164133485 912931512 648955602 674361647 466953446 970467413 666833186 782883004 555576742 824562659 997790664 998069419 440542663 859712878 869634960 937855243 989418922 991656139 599621322 642470203 599733968 756699278 189409901 775907526 626460998 958096992 19613209 77009601 83129827 220668019 757986135 916005247 538689944 618342092 663097801 909466063 722714317 757954638 685969430 832455485 263077614 809697646 231179365 367125189 806118942 914800284 73705694 289090840 67559246 77157636 332829809 541798486 959375604 982709256 234486465 722850028 374051807 796545805 451522628 763555764 162048140 769404864 264634417 910898499 981623347 991733476 125512881 770714338 181592561 206167854 667239355 983082346 281316681 597143138 681186553 975626325 63479417 530297401 970287247 990261501 371394885 407786886 160317636 230550408 681715779 904871988 958390522 977052964 722122681 757298674 819167993 946228394 918254960 943805215 393616888 766496004 979626127 989266107 821757359 992421776 279309269 335387669 596204587 698714132 935289589 984575169 917811573 974289689 491473251 663757400 364044429 521773854 866596184 873274081 418925477 532792371 446428040 594539786 526680397 582374935 182733983 743546563 578060255 854744712 314535804 752843546 756830659 851756243 706044976 759045388 850481499 890288335 132860751 562707405 786974239 858947815 491404259 710100668 436927786 743153958 707828092 904580005 219906294 667265352 406054831 752300180 894076972 937085861 721669300 823847190 84767762 846515174 820886612 843473395 85187607 491487977 626798506 927048850 610175587 622757979 992297243 997668099 470137088 669466629 879563029 887339430 849707529 962196810 611316893 836687547 248098551 355536558 75123821 140730472 87827537 385256231 991206837 994045914 711134232 763489082 830585306 945484660 734605741 854572054 347426306 667825810 895651188 951835166 798960189 843702696 432490223 823599875 216849491 623402926 585773989 956016404 273297256 769383387 367743482 601383345 442283168 775361254 445412446 690122579 286236756 871708586 824327067 862480003 970768549 993447057 274018325 863724942 624679288 952601843 135390607 537258662 654538603 681769859 980675552 991726247 122344120 499112793 975690284 980932413 554108637 880487025 277639108 347170424 207361123 337293613 304879408 637363578 289334046 367320045 886602979 992635860 295169763 556880793 476054068 756332888 120735603 579079870 986824803 996670180 414769112 730903108 537508361 808974949 415127879 884909205 534278224 924057569 925764410 929145566 655470658 776587074 3227242 781810124 646218154 656739970 459025320 489844627 245553367 949547124 385680922 446395707 336997592 948329976 972487488 977877676 296538409 677842064 299147028 370535699 895219699 917810861 799514857 873977395 877710687 961584777 40486653 811348513 421150761 968762903 175171361 465578825 562398385 920780941 928712606 961249407 536811464 909096205 986877002 995429958 502975177 928482081 159926477 641269591 376044940 933667514 575594548 841458657 820481242 850632931 183728109 958130702 450891827 505778649 877877021 902659882 682050186 943182786 695817385 829321258 862048634 984965704 576057382 727388754 937414928 991492329 882279899 939915168 840179028 851234889 877315532 926167351 870992957 882610295 827031133 907948745 268892824 296634174 966196673 982812795 461896502 775541510 939974333 979204842 441886201 459429866 275150357 810054981 805727327 901227831 521439232 757160701 953881982 993897493 331167497 857733135 382772814 385603334 551387132 719242388 179305106 534235739 212968979 953144116 160211047 285413604 898730856 996433589 783881045 833595284 285693311 882287140 198279062 821741283 394975745 709119519 323227509 931878104 904987854 963403993 996624411 997323888 305548404 872554780 20437069 31210400 312021459 627603528 838831906 954668464 844649716 912453585 266171506 530515185 14042841 832906065 561255010 757168206 322617887 345463417 44630044 406225770 241826262 702069500 638285518 761270710 120978042 914145407 36813449 544714601 209580569 836483097 973770557 981128144 253608694 760565295 815122229 966476376 856701342 886067533 166819193 683014722 310322999 992966162 74321021 991259375 408101542 467684131 122307033 990206632 167628862 460796292 298616675 562492172 997607815 997903316 582673746 592564843 277410762 832058746 819789010 839001892 730321435 855146150 434626499 604506966 474887540 744642326 984798353 989244007 448619954 886603892 297795504 598374632 512675751 708530628 935795396 973683801 745129345 804300143 588367478 874201558 980515997 998682760 407492237 652330159 71431060 253680352 548424255 917517534 17414763 823551407 747391817 854125223 824061646 862714432 414596173 879384374 982145801 998595276 434656089 992102596 108668843 603122446 386212995 904005328 900135460 965538021 770720433 781676080 283394667 397690075 110969183 357346920 435109401 480495880 395560314 617908938 133665710 560841114 32122684 784460199 726013643 728546172 403990774 754202108 806193241 870238409 313668151 796823473 220433274 640316773 781690064 787641992 219835804 443574190 289284553 631560017 733653137 759551225 256914508 670566921 721265277 905874749 597543836 875221622 464680533 698921253 791307953 879208503 629237506 698339878 823652489 928211201 876809241 942445493 358616267 458983232 240218373 908151299 554800984 694749473 131360297 779515333 729957189 885228593 701117895 950150318 735583137 860121275 216754517 230757020 66633565 212994036 621954326 724746370 745118352 806191625 581751812 735225320 482179159 696801319 75027598 805960564 460401992 842299667 92354647 806733680 272939917 640296833 943820999 962702466 256018412 384482527 282261399 896581400 525080269 868325081 990228592 998093066 439693982 639613283 851043580 907714736 419815972 512920716 692065217 956735228 847605669 858026715 624449040 946371833 809707478 945863995 235053459 950043492 612559333 894669324 647997899 789812737 855809392 990730250 948922144 955380181 60729022 947073315 80311772 826302657 566924302 817334950 678345294 786875893 467090331 803330924 25212777 370983601 946297431 968076098 702106045 968019972 454303738 506132915 115671341 767899797 477930915 713975901 608681629 900102119 382468822 398214236 447199789 830964042 915595503 967856936 848936207 884502406 81112679 190203569 664588119 976055385 76103367 851721553 113496280 468157623 426030949 850336301 912070733 947090416 762785492 806302304 846515151 886897900 468954509 666454308 879058336 890500120 794931960 871730943 684565725 869668816 207934622 882951508 957118382 996828398 72629624 932120609 799494625 985885252 551660587 962543905 962808762 967921860 124596495 287827436 340711504 403470089 930665464 987146304 428300950 731638896 856267742 878402455 68533804 717210877 403632826 864981089 761037650 923462091 33323124 660822415 834064202 975281285 238355185 364122289 867202897 924527224 22395839 732732046 530579301 814152142 635782065 785770788 64120886 379421616 760987810 888619435 665957318 710870443 166339346 489843610 603030314 954881378 951029785 967173225 939647006 972529190 556165960 592159477 789846038 973454345 569784534 710642051 423130694 507873812 285180730 406334933 205582336 884917950 961285754 991185982 82955684 938380360 128217861 529088728 754742945 781460150 294641835 400162991 662029557 886752764 263397174 813544328 109371183 633481809 796224482 848269329 506565665 573303764 753886510 875486891 102889625 727647140 39478855 281751074 524697180 986245656 226673934 970803371 53110249 976046170 209205872 222959276 595615093 751477617 568568168 952110182 626516920 716372819 477344252 631897047 527426053 948105166 247721965 597447834 560035625 579991075 201568008 490522316 911583197 925867721 445856593 967208831 74731727 225347338 411473637 495032050 599873251 931922625 297626003 918821825 520055533 763146184 9774959 787926512 263329799 839176795 155512757 939923008 951194406 985925469 690797372 760649472 646652327 687874492 493803741 525835698 954276997 967479785 16867411 992000968 929086459 977206638 144735672 644949004 353472478 544082814 477064798 516668839 106399920 425909888 299447030 357912294 675504650 847979319 89021034 393905037 993630431 998543608 103797089 763037550 403428162 969873946 558616387 942818708 367267089 452907811 543925593 709981989 383785455 882097437 598254872 678624143 265454051 887327237 854265043 875797043 771069746 902562334 124058455 301989196 825710136 894808992 543370757 733369844 870937678 915959730 136919696 706012244 717535508 986655120 492981621 519558476 448229314 549207811 394786234 804226205 366930214 574157858 393863629 779456752 195879414 228966216 660179453 799795920 832288196 837291468 756932611 988330669 506184731 797823481 827276507 846246434 463538215 830876584 408970504 904313365 836819025 862844507 75479011 194280897 879353837 977370100 645768858 799179834 307662343 644449615 28617141 936904079 736865459 774141164 306775194 998394572 881762503 952844529 782329990 952764298 375982263 816829927 760579172 769096909 975941828 977483402 191029590 246092907 297043716 740406933 617231028 653092066 858713008 955871690 538800644 672748533 781620554 891787777 882941340 957313624 470577380 861283147 230754478 364125211 567865058 576806449 49795982 836127755 706001936 952350644 918428468 938656943 330569975 331435207 423154209 539256350 218832796 427178243 842179494 969378994 312371512 961773467 475140792 927250827 926859344 987027971 257023800 767045845 306008116 785273834 432813131 854116102 683390428 947659619 560478420 793954638 286265415 789896028 371735889 985808893 857275452 911355076 456669468 765709151 809892630 962401190 451334540 765563932 818841749 882505748 580625858 735089675 671647889 690703302 148708565 902296120 77173834 532990593 822681404 845610464 928978839 989157617 919630769 989646384 504143287 598349147 586524567 616421024 292784004 780185615 746965712 761450064 487554663 532140992 790299307 966037615 107873679 378022331 995519351 996538522 203004183 402716982 740449750 983242982 803270320 839763352 625049544 744109488 940104312 970566761 523670095 607427692 981889096 997360514 363892390 524469762 339313036 512324562 853234952 917067871 250219831 889225829 391458498 988075334 495234493 768364208 204491683 405521457 32120919 98865252 722570147 782181984 96938097 311077857 163448965 664983428 353087854 429001299 566124200 626798648 949173627 968596439 992771494 993267480 523121650 713466548 592461565 839534824 296556387 881423540 453389424 529072765 396484373 955344612 91680691 808878941 861233143 862395202 175672680 341214080 268438104 944309503 98228105 826797038 480200068 667040134 144659426 829148833 972264927 990971988 742939672 856597292 760719665 830382256 196131931 674598571 20778680 989662343 721714130 799981767 270166633 708073469 823465170 848650978 510244349 574372302 941430484 960752354 93159939 301694823 766561584 882124147 904228860 989073464 496344228 542562738 644769545 894462967 668297576 862037944 469503392 675313449 936766547 980374560 698677197 977264821 360249390 685497128 828358448 972853717 765151032 997503390 512470944 597910723 2006756 610673523 590597321 771244462 764598306 800956861 994284014 996584623 183730116 782183273 760699831 811319845 534289843 608615012 300905345 923137781 337122328 785217413 72486652 370856775 704008087 974332398 58986326 361997018 403924825 415120206 698154234 955589070 164651967 183953416 303960575 534987630 234744489 553167348 712471495 865555985 509749852 591277421 514656306 749954613 747860856 893564018 88519014 854775567 853385307 904976397 179418937 321239131 69060959 403949834 830819496 998492029 785027169 832220813 837493329 898536597 29670142 577170024 391755725 929808611 199949970 871752875 858359481 912639171 529688089 660569462 230289578 266677847 96928315 683798458 357428792 833685504 292587568 820629072 974056047 975766022 855586698 888974662 514955764 629111446 229617308 715097111 766253466 775886208 718464055 854383874 183727718 223104891 962413033 981779317 417796832 572362732 290111450 793483413 752035851 773083694 837487056 953749678 689258724 831693897 534695114 608511292 694107464 800101070 111049094 319539391 329788680 496764383 516035003 804232357 310507433 928049750 325091083 486356901 714118623 923584913 628421069 780993277 527228585 812842899 979902779 999120788 307848968 698047900 805310217 879444541 363931325 960751472 456354547 774283674 837088294 947301512 183229501 488557140 143468058 714749755 445882679 686597596 207695167 572510345 541708854 838005590 130877248 284478033 659396562 943680764 289104235 849288281 671377852 767936697 761412254 960964528 4336036 640199710 279537048 627604351 874975419 949702672 217707981 394111838 204782764 266887760 755572144 951825447 738470171 846599639 328865187 706374399 379475636 600750547 989196373 989255778 223946047 640848986 490052696 966357421 76903284 403992300 341315831 532130192 118845338 836164873 815319231 887892090 789653391 981168964 41874122 930642992 56411086 152197904 700494621 876625132 496494083 632678421 389843299 467246413 85952496 903462018 12102387 323767702 910270481 922955285 521049208 710419576 971488443 982544512 236195555 721290944 222763816 572300708 152507417 888002439 465106202 570890210 687992105 851187023 878884566 957301527 569976676 628649080 585637896 864450951 319454323 507645395 413399057 511985701 920414801 935373792 224386072 407904550 388688671 624566865 302776257 742487845 340330889 974895434 974917628 978872532 883278511 935273411 379974371 936553117 477257097 628631414 812113703 928801066 418305797 957843508 590712215 702791728 708067300 974837127 585977654 604986715 400998033 507488878 597206108 662877037 804152386 989036279 914785362 965709685 895132044 997974348 669841231 846435523 343533290 395331266 924711603 956974329 618045669 748793951 423741730 577860177 467009366 563197591 297997808 352048943 590521870 817426806 707016832 723028212 754991689 924988675 339430117 373861819 499380823 643359618 113050129 792427169 855869144 889077458 267598394 350180515 980516778 994172087 884052504 943139295 756091883 943010639 293272821 791966524 714475859 973535858 504774046 917416668 699557269 799616093 561410658 872566721 548415225 749904132 128620447 657074372 458716117 823101099 790302511 917160089 982687011 985279100 78667394 277978861 418764952 696254416 984327897 985983087 298227488 628702676 904857991 990565937 761395412 835484245 527559571 542764571 518058217 586361976 969200098 970227828 759264382 859105773 359821519 373439259 514178973 627106677 64529110 254608067 86865997 545765772 671712935 700582073 391184819 583058393 430942384 671909282 160099115 759194043 848904009 892240600 283094772 457682998 686918988 699776521 122812838 976376604 506674031 646363433 7099531 586196666 246895292 741740913 736423201 834612084 357045596 780749543 447419288 634790702 846234141 911744134 686551789 902381116 64302011 326482226 661344290 829148373 357696500 544397064 668252686 774298834 329020028 931981737 852258118 866484061 735996438 887622338 657074455 827158009 540835866 759258874 315883720 932041135 594409204 880070350 451818193 759833876 778786648 981870112 847251964 979896800 979491226 994366214 75751293 264922398 907875674 932958675 431135693 809383909 99961723 601911045 371199020 390978039 695066761 750237735 24966692 645402133 821029843 908240110 378206650 738399375 867422022 981753137 511592933 786517918 140892848 294966489 665286799 707505605 979047208 982697766 396635796 557460178 702916941 970662897 524845525 831719827 300512081 456456773 527948641 573089405 593200369 752369999 310803914 891020463 859927106 901998511 475754937 722727971 991796516 994983362 362775675 614988409 979819080 997609269 346448397 407065483 120450428 549459405 546255975 744694860 105964563 857577705 883007857 939604658 42089131 172349064 459522838 776667447 183961647 909449937 768635794 957750735 916494982 926468586 344007264 365424793 427750966 491256396 466728648 597342605 380597309 793692870 454830137 895077860 754962332 813632355 59020593 378867398 726863885 978544974 653822818 694140579 443436046 451774525 953429161 990673854 729891198 761891236 747703167 952722214 674760258 800307983 641152813 872786529 769537612 836445708 103654290 980312900 446734408 878803845 56107170 618600760 972030414 989979146 382808979 832187283 801880821 868680945 929449228 997603739 626773837 770930165 621663091 785481496 112049900 174274723 149984277 856668674 363679539 692463105 342710290 483512567 766357249 991421427 852502477 918327823 657445765 899000750 146392101 709036117 696048895 795256028 157426954 211063698 416927870 986317880 222767383 413088507 754820227 765935707 632551956 748408655 605008202 917422032 480081669 722694170 680294998 807230920 422957450 607064059 912592078 974631155 356177960 990435020 531627275 549434824 643671519 890087343 566511318 777704994 348631449 645960859 73732410 240989654 305671362 989772513 952020292 974200855 859999275 866589701 220576961 430336440 90797994 578921710 638157261 782264070 137397548 626844991 987534737 997604888 474103107 829893063 775855935 942836318 854693255 889649449 175352338 285859865 350668858 771983286 994134498 998289414 586854867 630241401 880313975 912604565 729245316 981942406 722140217 804413015 13547250 889352510 695040415 792997789 978818806 984563150 568048859 936337249 817527783 917561573 983628963 995458171 339385539 605110051 535723509 852371837 251860229 505432917 686083098 975620239 470045929 472882272 264774783 441448447 272042939 815058332 307655445 712627552 987820860 992406460 174995274 644280672 32628619 842230055 155342693 600486279 714764267 804394726 682955446 683179172 382776377 471704013 343868330 795778122 873033256 982588918 69394913 334760906 731739029 891944783 843483739 844537451 236700301 300721783 483155770 651529930 782425368 859311112 664482560 976846184 933101169 969131930 921519293 943216164 646436049 855443349 791550816 902571988 717946038 943718099 489754609 544061994 453272303 513922626 374105959 502780435 310105884 508549653 642222607 930457081 863510873 954127165 517734782 633136530 418290217 476998965 652912818 765072423 398925477 624325363 756655899 785417353 125772143 583517863 157808965 313871787 34027897 596590857 859606656 976386240 949225472 974028173 568646323 635572337 326614464 972312554 280451438 681804313 330330272 768381949 229398708 914548299 662036176 734898648 32994881 328366972 176832827 608048261 548151540 632138586 137773618 467145288 985323101 987960389 482633424 932481437 717129571 778680149 380889819 783140069 863487901 897266980 122968037 538648314 813115126 986948356 549060661 961936537 998962575 998997878 587812985 810315701 664207165 822041698 733162257 735711825 387768819 789803058 396064459 433156100 8033132 823253639 451203593 618016587 393628470 516480603 386540673 822173128 305553186 861421814 904735304 966250668 404118927 833835866 812536590 870599042 291939543 766215434 574845759 782749209 869455020 925459758 610478641 799812676 231547118 456243967 25157187 973501238 331416229 466659209 817027970 845154608 546981204 874205758 875439000 945348114 235544316 808887282 710953225 843267813 90078038 995197503 869724394 883060569 719794782 959772703 699962234 760404415 889830617 970903369 298202565 986088721 489607387 730573978 547482173 592762836 789742719 856913077 509875847 786119117 717645969 908301766 699153973 810265767 243735674 973362193 633499434 659174877 830411946 877093906 676715226 915524494 573492552 667786745 156613835 570463810 604169413 985926143 537402515 660992820 846789675 864461256 655869723 766228201 325452684 437597498 705378762 801503197 601411581 984966278 347350996 459338524 212154449 235378896 798395172 937844726 184605056 876899307 797994967 837675789 591025319 669510343 227160950 334042479 763884610 872451847 264007546 275862056 974982219 992849409 37391502 204227028 131449612 837166456 88791214 296780347 189523905 742461079 88074616 982403140 869303523 975265084 909746133 946937623 35114425 923597352 207648774 737007067 739894581 867770632 254094683 420212437 611545531 973300108 276874653 525661259 76888134 831109958 213486864 692852442 996412285 997079386 213817938 826484033 234749192 255031041 373300745 800249164 306254835 907892908 973900531 983750799 872637681 979452867 788532042 901674885 881673563 925367034 941377289 963653581 89049192 822713749 50282022 200264030 677366003 853618456 933116458 960484774 280563449 998794980 651858312 971346976 630514047 825933447 824850432 956931646 361422416 965761436 544034444 818305267 228006121 362476466 389521285 623495564 991412170 998702447 741317025 785656246 227375684 954382204 369834025 838138304 358284883 652115192 396952834 681668207 219943670 799152119 715371455 742511153 263944788 562566118 234063927 538033261 10391146 932892441 980813399 995892362 223274986 591409355 821038828 871145204 942525556 981337265 899193543 928421319 997046558 997679010 90627208 157886858 331682202 511464802 865092716 927828309 978693145 983043205 906716524 998465866 817774689 991200057 408710316 780195734 325275903 833640653 948192022 970112113 297033121 640282066 763986509 967561620 87651058 730495817 658655175 972608789 666400467 800416330 220346455 564694409 438589062 710842914 3982436 804336181 494694939 709948187 73493170 867733277 100758498 234271753 607166072 714945698 103458557 651683974 935102344 988678280 21026008 337292001 790394250 918892064 223908202 835419498 466639490 689423585 530433113 651787396 932278417 962945666 150532404 261355364 940281537 961119798 191612794 443720833 74485996 766591131 81831300 976464760 928922373 977878342 183197829 382381798 392309218 939172241 149121269 310721866 810036109 815413019 971786162 985420757 318213642 879547758 414629678 588187714 719244976 783747740 235816424 259292329 820152709 982755295 21762348 240456625 312513953 637530091 280118677 305622727 399314 948305943 182998446 623534075 74323744 500764841 548460653 576124304 385708167 934591708 930188461 998344439 317824149 913140458 586226242 604749162 308713366 458293829 896304882 958577638 481494697 810367988 656030397 894607261 348071150 460971892 142439843 231088075 799220796 837139917 243996181 664735581 415875346 620142272 94267806 227157916 690078543 892249450 626108000 688462471 845842670 939055526 924138094 988703783 939771733 996673726 381587717 822709440 269345788 535448273 131379270 519936384 302484881 688930927 706949460 854240782 777478672 803983805 676909650 731221035 583251863 955744255 831732759 844295173 997251762 999324025 520148184 602750211 843538554 927589832 373079699 401772063 841475322 897153507 491766091 821923185 117391522 407923994 924199578 962709115 216352504 311269903 443469525 700178121 191919037 708505748 959569154 983500178 248354613 290439285 804786935 958469516 730239054 898053895 919842519 982365456 21766006 882279653 368956416 547815980 873773134 899086607 995094484 996220988 171578170 791168421 444915406 513707933 269035342 484011863 785044222 850644238 12459128 602608066 893550881 967253794 891652272 987057894 306845687 438486198 939446985 983174076 791368342 946372567 301809135 690232178 777186988 791942678 904364879 984768974 440100500 809150953 937302582 985460632 717101764 949518627 300496842 868933550 650460017 914138886 235992403 242631202 51598978 405873104 304988529 411852285 816880418 832430914 807105693 935597503 544725312 660179426 434965390 470152239 244570182 475192932 863317180 913189793 33207562 576482249 293267732 458146507 202782589 814682219 646548315 857090250 347122935 379939305 713433789 985019311 905638277 967125169 673094744 990908492 765988454 813817523 795750495 975419852 916436216 924595391 757173510 975970691 187802657 361061937 181350036 705289426 660034353 961131910 610523491 930438745 552822733 624803600 505678759 905944046 604419796 950908469 105261430 766384303 920155131 930505191 799520846 949575373 810279754 886883963 73240843 432328707 443203181 688416220 151111925 883024950 198403564 460259960 762252363 843791497 99478984 575294739 615531727 779766461 345175323 948818985 828446233 968071338 632048326 697875430 857373896 991789468 972469650 986793418 480291881 966740076 722742095 977883450 981387950 982005977 717178856 832874572 733959341 971544920 898014860 922243285 353780994 535868104 772217476 984460818 771286860 790303631 639767039 885045145 102608144 122000079 56681703 669769262 266313692 428711047 796333858 923790805 745126858 917788102 277412011 631205019 707069924 991976899 859237387 903839960 649665538 720597272 619601496 959826958 671621804 743935551 169508014 751502099 692221714 818548272 183317421 710631749 371429279 473352224 649421742 696955509 643423461 702444032 502643210 545158622 538236655 911810951 368205034 461112796 617207729 694831900 417477051 595686327 919757010 998079071 715401704 951791002 514524788 868061095 498791104 887891555 863916490 889895213 883448237 946809062 920355620 934185991 798659267 805844633 377409175 673521468 493055926 660296563 100693364 482104389 350248368 677637040 176052643 617126875 583164056 869877411 485932552 701108172 632398714 832131744 107985299 625968472 740958883 779590147 70074153 777501972 639938257 752426491 279662754 942279719 225449086 470429775 655692494 795185127 95584032 879375526 612091972 883399548 708553999 967923181 64545632 479849829 265594005 986057653 541470054 895496488 476769021 638577571 877037052 946368341 668332826 925954426 611238565 770754436 645189446 699236473 707363708 993305061 891617469 927874289 155607833 991565808 472937263 716604607 696532842 930243344 440133833 938910292 693929314 929102489 899178277 919212942 324891709 870987774 385635102 579824843 909387285 962983342 597235342 968535626 485538942 682225467 98080788 260404101 257239212 945671182 383355302 759107139 666201797 778824490 284824181 812811981 484792431 792931888 643075379 818961909 468773832 495925005 499848239 554722614 967088880 991289847 335605490 564796244 770642502 968540221 118210024 137273175 719008086 764902326 466614405 865096191 292091752 784587597 373223966 828217166 551954451 909542162 451820950 841800247 352208547 705126532 705589275 801870181 504777210 992828997 232437745 618369777 376787481 929072461 597223596 672686001 289635175 597787035 207311710 644182174 127416125 373892596 839859234 861696498 111085382 673121877 946650403 973191283 141314451 573220114 1781490 282125614 271460721 859977386 320551519 511613623 67748383 857137172 506016365 959760122 506326520 751140802 173699510 616093500 712279242 725480072 874207804 976808699 601512740 837938754 24264788 756053717 316955649 977796712 67959810 496856145 880347054 903091151 562154815 681323160 328263295 722937844 707428828 793102169 739859078 835190312 568556741 807634734 97939411 410520823 873817150 925371750 111319421 493193308 346650723 882340533 374233178 958012137 336056785 414682594 352213073 617531544 648828943 895015072 42296878 353421147 21128798 637784179 153966827 214474578 510924631 786990157 730813931 766403404 120258463 770845649 213198356 799537981 615068996 781716084 395083433 397521086 122743459 578632304 904585309 926044731 790357353 937549723 502676119 930654957 347389913 967758909 330846384 721338816 527003434 717511402 993234469 995058955 122111188 633348340 830601660 877708936 384318916 499050139 705995472 995826653 314276974 661489903 355186134 620938788 566188006 587773281 709337107 798531672 300388345 701052251 701795183 778370718 476329338 662266271 102683192 892187891 415212189 817309202 953565177 980609276 595686899 827002967 816413570 890357050 650172867 865038185 34647999 873153869 560184440 740003534 329839357 842992390 895498218 929444311 145667503 518951381 838529529 917206112 828661604 911855427 868821743 997894304 85226622 410194846 744739876 927474374 627465163 813334970 990926236 996310928 162154494 371127306 890370637 940718730 942849629 966269355 627032641 943505270 566092984 808403615 123101747 927176981 242695128 555458658 15981356 797030310 480820186 502092730 595294940 759673379 622306808 857942766 388494175 431290545 199272987 451444414 536268783 944117353 215929670 818688868 356765967 882672654 361173947 585087540 7046689 722542101 614894892 876690500 348791546 937916748 104108632 203015648 535540310 616651676 500135220 664684121 243047173 586764578 797971602 991304696 666990179 783227030 176748871 869881956 343363096 399748915 329816339 857783798 928017613 946550070 762561691 888834724 279261521 279720357 714214376 741783709 70993958 602208706 486903707 951458517 281092445 309537954 10087346 64740677 628650277 909170865 562885575 675553333 702341462 716232050 847470273 963356004 312926672 677202798 788745200 791344296 185564706 770630983 824431436 832988771 411290929 577465861 12147264 591125981 724080902 946590070 618498753 816421063 625230868 667159093 427841867 612217502 381682316 919536580 802231170 845082148 92151095 566546722 199872723 837975501 510267502 774274092 886931823 912868689 28194249 512533347 787165557 980716696 747499523 824163609 943635308 955079123 157304971 388255095 839967828 980305470 56561898 937620779 620333754 699195845 554234590 680641839 361166209 717092383 901822981 969978715 209060115 781084542 830930091 985987679 692534958 964375598 302640240 683664421 888375050 979763570 868023118 914699011 480949300 531986106 933338478 973548860 75399170 489591757 240027962 909212885 578912003 860669007 859483650 884315889 109975761 954841577 72921048 456548136 617470825 984411640 593452711 594080302 406615129 595225503 189632118 865519091 34768894 379859694 767282175 833758506 443871870 672119842 592478339 656081216 123742096 436964769 361887257 841432802 666972205 774786638 526315976 587743544 780154487 992194704 206725382 980430403 184538884 734765280 179818365 549678404 199492011 528906312 765479800 872088900 53477960 153307646 958148461 963984261 292875873 448818665 321857178 890251602 614549057 674526341 512394937 911392969 592463787 619283550 480203923 984534878 640175192 734265536 923462051 929048163 381369198 454747058 303915820 346460481 826786730 841443655 176652388 687372164 417820870 528023146 381286318 487904112 737500353 858513274 386725320 757518429 426800248 910495934 886990728 965821163 628466791 945880945 987119209 991276304 168553884 729250926 368554542 883724554 987638902 993870758 716043117 845193037 573039503 651172106 796301633 993283119 759477727 868895619 542222919 806158572 650990448 782069779 984394557 989357910 541068000 993188879 106684546 201053460 765924757 772730564 524125351 579900478 153705464 330463221 372890715 920528815 179370838 666407583 620665408 792862673 338326884 357089112 935305659 962303936 39697774 734512276 456609340 583353457 950524342 969331186 475079751 713728438 259283000 731775944 92299985 666916079 941879453 967675031 525054469 952297573 884446684 997911339 67302971 375854326 273581034 372920567 885300906 919592394 610746468 905331363 118798823 744616889 984232454 997430809 631659159 722991849 303224966 730826693 713371741 736376648 974962231 977019595 128753863 481347994 121020088 934290945 432173295 926795189 384681741 731801224 356111072 994332237 984011999 999313523 581128638 785543893 938583652 951271156 162882995 942053571 1561487 876867623 967756172 986646952 577903256 989795752 533118895 915489840 512670783 981753380 117702742 783780213 818343865 982553586 255792588 843172433 150657176 299080137 947787125 988361178 707578041 838452754 554330823 846767296 869036903 996435255 641142344 702293135 473331401 817732946 804889657 927732133 644767739 690514081 145078718 596624194 653317754 670493632 431109425 710809867 683368955 874982801 403134515 721185404 774215866 886868081 541476422 919907259 71545817 793331196 941182945 943306234 571238726 762923962 253663702 374115189 446742474 559962819 91020357 595084515 417097513 507557900 336268483 720211726 881512992 889727738 152598226 422008089 578375916 734783291 934368738 973595574 85467733 442521635 98878945 321522160 145847052 245518017 399329490 542502364 547963990 863057118 613144301 846320447 889615149 925296470 545037751 938998265 272679153 729582980 998561121 998672842 824983773 940895305 136624047 247050183 307908390 593266357 143094684 393868426 63582729 999011695 386181760 687928789 29324903 156914787 275976990 668665291 624639786 876855229 51457033 794150245 510787478 540737243 723207669 897451444 97802623 269024813 54712989 822251709 966194893 988619367 194489597 207880520 527161714 773206642 54836292 570848518 196917363 368485144 843445129 908184674 565619692 782177376 35026147 129018828 601324436 956347579 723362603 757261283 321496118 878511709 433691923 778845117 586526424 711689436 128421695 443622458 678108370 870525704 345042517 998511023 843019891 954223449 420470721 524752826 865265001 881512741 634662667 938926568 472200131 522673110 889342133 917607793 22188754 591919213 122853932 957536708 365478818 816507942 293361796 674632756 232212488 426057147 916606619 953359704 940793343 949850048 969598512 987917970 583060502 604187483 775849723 883236574 344766405 986891305 649836971 869207821 813180344 832158985 111446403 402370577 580151158 957584812 759283128 777363648 888675381 946959950 797197882 999329973 288528594 299699731 554372439 821061277 291451039 418028447 435939618 712348313 220274077 510539379 213400729 849168532 773236285 984207080 239073158 285232575 278844871 584386944 657212461 661881495 489397075 817866738 381625089 682454243 979608761 991507802 642431035 821435852 562435350 981171696 309254789 800489725 956101855 972810047 9614831 879772947 830525459 953433228 186163303 827048508 280566686 856908687 300943393 568917791 611582295 952194362 328826344 400890632 736007974 952455852 527198834 938818915 78506283 945013966 205585066 806517956 653702730 892964924 662754570 675610969 199284878 342265150 689753294 766029626 182124924 758007986 437766064 939044515 846913736 931450768 808777691 949658737 32016339 918399469 509618006 512109930 458577031 977401675 771991475 944351973 691839375 968099997 694574354 789224751 937974917 960288947 414274376 660597467 93737121 658075413 46067682 160193194 759658725 877483986 190556247 194672364 65873240 433676921 548576043 887337664 914294871 980922252 440454448 816141870 847227063 992290038 353892235 579595894 832361468 910361005 646483299 818971076 431801884 731958708 395922540 446364389 224803790 677460263 879849909 895630156 551839526 715838490 135142649 904497195 906061235 913254169 871423543 902076802 398302012 836285995 666499511 908701602 464802610 630177508 444059368 537544102 956394323 987250507 343102039 790957254 169123942 828071583 196821502 855357541 320687061 493423267 678172649 751449518 695798263 799911900 447091364 567284055 890110492 994012527 332833027 458642321 478262476 710616989 876281241 957738753 269604255 773454848 242386038 588721376 547185823 711796644 311639237 428321223 254486554 331107570 38421245 363123640 526932079 644790513 807288124 889819316 7663770 112197325 383077736 440785204 148875742 583516591 508361070 920643548 623378989 901088208 652252383 910838213 850476616 854472119 956355660 994155011 665252925 826817746 115320760 305171923 698185264 821394070 879555829 924974240 996057023 997904538 272838075 273293269 168547901 807627315 320673449 899324729 70469160 159645591 574434692 840090204 609485020 824901630 437529866 583171789 853743656 902004157 592278583 878928712 150940780 633659698 893080610 995109785 943434093 949888817 11170814 839963187 858753324 928479502 325533900 770435334 949599612 966500701 587723120 608737831 225064847 476949746 731723382 861813522 455734022 711934512 228531184 387427427 533380382 571896448 356245263 566320725 187592795 597216848 779654599 910530163 718704457 818058578 130307578 709816130 22594453 148107990 87427859 174166065 354394663 957774905 748343904 918057701 287697639 917077581 984973789 997881196 424861960 444147517 503935981 597137083 190729003 955155885 167585814 447207461 115956502 749766814 587503923 913325592 790417141 867378492 140840700 958086022 985402894 999386989 30798483 513732849 174910621 573866316 398506374 935660516 377826854 405212360 294537961 637128726 288916501 886357637 233384335 884592940 50664047 916891192 302229223 316966706 515263041 567785209 101511220 381500029 9455011 617608664 649650696 975739409 800457697 828263038 335431341 515868814 996529194 998924466 402531851 842644205 991343456 998360793 274743223 546460471 168768972 189828527 423401021 744034440 348289218 522237829 504368613 557381371 471115014 529715664 117937260 236530467 113541806 413643013 210621516 478854470 162680713 577029531 682565495 834827989 699355490 904956214 678132315 729269524 681109339 737229185 696407377 977110600 800291716 962223971 557163991 962575609 120572965 991853744 979371389 984484468 928846802 996798303 278392404 833036753 58200017 618581821 234479447 547500644 513807196 839591022 796245558 932006306 749246503 988656165 27075506 917140274 135075087 534278975 52846438 980641720 263677171 286562340 510183225 642812552 264578824 768523523 670754193 947924027 41528318 631887056 257868155 772761381 231410198 333915894 931752765 939794489 632100486 889773363 400999755 565201079 894425919 987181724 283046632 905370093 172645827 854329467 338444687 942335046 419302199 493917578 360800714 361488047 972332397 975141804 336555638 951659278 450594585 968134381 201944581 876909183 425112762 875980431 204101305 728118432 193132537 774837733 909154550 926888621 732608334 797801154 50192673 140433463 624223324 902361525 287043255 566031500 106242647 978546966 627646395 951267387 322567912 726307964 65989454 433622515 780364241 831239904 506682211 825226925 708958674 925491666 938135892 961845778 829421449 830092918 570237306 775877768 138052254 888734552 534888771 599658208 61362882 797311954 174198105 431958486 920564894 987376613 32827041 834227162 555040046 834064854 860026092 976812126 553973401 916685970 354780653 505897276 504463466 686108670 552834412 646621843 577212635 597865864 219546851 494094290 317068033 731062387 779950309 999261639 123842717 867597396 851511484 855927951 971313606 990154020 290778281 557686065 664909972 874948989 106546194 619841151 275747672 526346379 167783670 329103708 787451081 882589378 673796909 708085465 571397486 680210394 795888525 888150410 377523946 998564265 864827316 952913920 62239523 994358406 897395299 959030724 534779375 730899506 904067232 986250458 91345588 757847403 92396468 849245594 878487351 957057191 521549214 681305292 337856537 622916063 541826625 750396887 123194457 661738729 937517343 950182071 758287115 781964753 460252763 982988084 462901289 639209878 696840497 774956816 788169889 947332872 747505660 837805833 632371540 889805356 481891009 930575549 798188352 807215217 82668619 381302314 711456734 998606712 552414645 695416226 766923592 800306328 202261320 823870163 647167035 904542507 58063017 84008266 620742263 679789768 631243493 950399763 528912442 626781922 950163548 960590525 657187674 794096004 532222457 959376380 26840343 383321611 639605809 747836862 870218847 997924282 768847967 925134698 729632460 926415985 114887710 750632329 290137930 483133454 100419130 879105380 601512122 626347561 571807220 948165412 468089080 880805799 395354821 842201567 40988067 86964182 315036364 464703726 949859664 967221589 314425294 797033620 921086181 973617731 236072714 800726976 859759497 904757740 198256944 280842475 709689634 995250428 433686872 952281871 739829813 984761046 478967322 811464570 495741457 691149567 96152478 411822742 42173120 898957028 457999442 712001313 499407552 829820394 380653921 818288773 696775829 951866712 831617462 950457813 671624848 727343650 50276170 843309956 345209607 888725252 29869037 584255935 489290506 762688430 725722951 875551115 876455542 942682817 608165835 702524283 387085308 754134775 168499181 491442113 445123203 582354019 749445724 828899002 474236859 920995855 374009150 666007844 836028677 911497730 561136755 911862380 111114494 157268998 369696066 576177231 994409822 997345241 436802385 597997518 743820813 897682146 580238941 995959419 283597765 483183240 32889039 263127600 712740489 751458352 781861574 985752211 588149123 916841699 738550172 862406419 111736667 981694272 616423625 622967855 385937936 515554304 464960820 882853534 120287372 606992819 845849415 847662622 156532478 315451452 389307588 667789674 469940692 749753854 769830524 895594065 954005312 955173793 615883065 984207698 168337774 828819278 756841589 833386030 298809529 863429549 904115665 905775696 522453564 603197415 175403173 418187311 987659119 992150986 20917147 957694791 332092079 685038815 753969282 765288937 137715156 985852596 983345602 991343050 949829937 979764824 764321323 851457176 955635342 991858240 33021969 363743537 225044307 529121409 560451461 674252862 243716606 277702089 277503011 351509414 890776852 981606858 304931249 664099664 526335724 923571351 156879893 166409280 630133821 773664722 295714534 800685375 161142607 517688121 164846515 302058825 372785353 410551975 630888138 726611028 724092407 862912401 831633502 886183530 676272866 738214770 188706416 478518020 325792587 364614029 901360095 916580803 180268226 463376254 603898344 853749333 346619314 879070986 249436014 434108820 336999459 446051415 723340455 956359129 126050362 576027291 220000180 960062765 639816519 666404234 215698662 565163528 50563840 452668207 986331722 992048322 257536500 531574069 986660965 996019571 812914880 825300378 78375107 970174020 729583802 979852397 835662458 912642698 423388363 448288957 972983941 990050328 169018412 454874525 486495675 704285273 986181461 986237842 727005355 731201284 162254520 510200526 118268516 672677422 663866258 693500526 862143947 983635404 226806500 923904206 238551656 830847378 903845356 973995000 608106253 771690824 182038320 905424025 754593432 911630067 280363923 422043099 397789079 856235831 508919225 791473997 149057743 298506563 167612442 904261831 137034624 232857828 87599089 968878844 788529444 997226387 635524860 959555072 774895217 804223516 524937756 754911042 417908231 493364817 396399715 683859567 621655066 824426342 554924746 818204122 223137358 483359556 793484582 953111916 763839383 859136655 760500167 783797714 713702377 761266975 798630804 870339526 440609526 483399888 910321611 930348116 218968665 888951662 488846701 628213028 379522157 447833523 774556888 924089648 583842883 722471323 476065972 712749557 314412494 944946952 913509013 979461025 533475523 640608672 273229264 865828243 140267691 464734550 682371498 864135831 444247623 945322554 317673848 356949698 502045845 715156360 658356812 987525658 583175582 698330064 368127543 499784774 402535938 428793023 64842225 612510421 303731877 945535537 783851628 838251130 569104385 981469293 124885369 515426852 406047318 846921163 111203369 726669065 551305877 607590204 88441613 277828092 710261526 975817422 751260548 857987363 591593916 971586191 257533824 624349453 233369049 737938603 855694983 899353499 745649355 753866678 631291124 751959164 112036681 482491056 162763226 455149497 900628212 907279844 105910239 357735833 318318457 578724936 595358823 910945722 966022047 993796438 676405515 828227743 80257817 235144314 461269213 951753679 498010407 667088482 936325162 961375021 781057934 949876756 241121737 935619047 831870306 950550878 589300214 752074101 186378905 348350793 966163296 980235540 448160387 986206517 307971227 498886386 995348204 995589073 324117126 376652033 917102178 943005234 808214590 814416501 434841220 866308056 349653394 531047852 656941134 819304811 949898031 994247137 784585050 793081708 642765364 746336872 597939431 979703753 925702310 965030616 508684933 628037278 746914291 798505533 151906685 709396999 338955024 576414650 327531566 888194106 754564516 810405168 204930748 882135668 966881562 976283469 412426607 694515679 632651493 906058996 381824110 468956646 149596060 359264631 448878657 449195715 481432934 949842807 527446219 571413997 219218539 784569549 42723660 135829560 496946755 690950899 440408763 948356586 572026107 612253663 884171493 919891842 787790219 941914949 611193686 826041326 142324655 905860254 856053339 957868782 547012794 585755391 524116723 730406114 167104408 546276792 804632530 807119889 769705394 881809146 155583762 985746586 943988268 965677709 292737061 446145854 802120393 928212797 362428518 912320070 502121100 908460583 873114074 975303953 54203889 279578683 788527237 926396676 257978734 897949331 917510888 937372088 873741757 927228992 215837071 667856869 625377800 953036994 256914424 388551541 453374305 527746048 735933664 880180577 136130973 307099809 955882038 994097111 596211528 983971446 581179571 788820073 986719531 987773101 695287566 715617411 540893929 986062545 498483620 979787720 762300989 839082461 196527553 831179417 325948566 399338904 985047060 993768883 552740389 578648888 206066224 984265294 26642681 164834879 521770827 684503008 846762535 980584927 524893333 926298969 421356982 905841865 695470906 750137413 944978637 988597091 513288276 625917988 243359315 738697048 569279248 719152914 979653723 981884827 144883043 510682523 948590266 950418266 85314592 683201079 238832579 257069515 397860650 403832821 676137888 955943903 757338717 999227046 328244763 881609252 552236160 565342338 796712524 886973320 450224255 495269577 604382160 663352327 79626272 476666333 679086005 903173117 545310139 580798515 464325614 679874146 910610410 971265538 848797769 876692330 928056380 969500888 226429010 308956040 156338009 516149681 127512593 975071596 197184573 291873368 899172526 925100441 598411515 784327841 784022071 885584082 796807318 887184319 709311253 952739364 719887268 791436304 572816151 762638550 267043305 291555328 282072491 593454270 908380272 977617482 53451653 506106899 882648611 889826675 3153644 124188684 702695337 955801920 573268207 802472160 89665446 532792007 588837514 739366068 106678415 762394750 457063105 618862898 850047639 937246662 45828963 779769773 133692235 834142508 269423980 794770846 782896441 849690737 615199846 912128188 355540199 706474012 564151369 936441239 120007698 352522868 136312474 632495755 4979305 251589272 865294850 988010109 502236576 522766099 824363619 935028153 992505008 996640548 854081602 890181589 814873517 831904763 389808935 491613852 249796253 398564861 702626096 784938737 871166144 951631077 115542707 674349479 372731327 769933066 735180009 990688600 115492629 346101615 222560906 812864490 678583552 773682237 963965674 974231793 470117688 746423699 367367788 639543217 226340502 761319646 364321947 992346160 526925810 954821215 442407097 736609290 25364484 133952116 227640657 521731774 904187767 957520811 111439794 202569878 350045138 676336006 568468954 913029582 517168777 814444819 610436580 901735467 885005047 988698886 194262804 862314864 493381301 762983544 370991338 938137986 332789753 536742190 346613316 903890564 45626512 246381815 170539425 779417214 855989960 866638701 507326649 669070763 936382989 979049611 283742278 512488233 639859936 991481927 318639677 949452063 814405112 902004117 719890463 830598181 371296489 681044656 924046210 965008079 155703174 607162969 743495254 973531242 790919713 833131883 458387157 806367978 667193807 990837755 336748873 367359368 687965369 994724579 483578821 872052864 547999597 696950475 295871576 365471968 42764841 384358216 156915321 404235960 817479771 997373817 374301710 862706905 6856338 791414265 362842293 413117246 681282469 820312754 440203713 552293258 560988632 706301691 982273703 997084775 131926069 670373837 332884887 673785201 969295914 976662055 90940454 561192152 834531156 998139444 806942541 865765873 904411539 939660295 270623199 721535385 590305624 644040175 409887612 859038828 891706751 928619913 615876177 693501247 920693398 935499767 598743841 838158397 813514679 912523796 421481403 571904258 394996676 759470354 280141799 898798858 899251177 901795644 963976244 968038133 848448065 943749052 317406061 715775251 360351025 450266672 293737819 416690129 707728184 783261344 81147154 226893177 472273349 720485648 968267748 985488613 897112743 975384929 47688786 298156000 657817201 928926926 936790401 939314632 64539733 549876341 225826648 837467767 996353408 997745354 454773530 941499528 245205080 704731387 906425585 976077008 880653598 888576440 852741023 967086871 854171730 868347407 895198790 974599493 29910542 146494242 709587315 833036427 456252800 840951641 44351909 106232320 810192806 855761315 476341218 777790665 274255670 410984849 835854677 985016256 592140802 851601155 281689421 405710818 276326372 755331439 804958769 902306334 245048543 426077666 399592561 787889351 305058579 484029956 465448470 980612111 652649789 794504853 43549934 588005778 844867029 987777531 316702797 518209760 771919805 865208947 736836309 920642075 376132279 465855976 315384294 811762820 534483748 819317690 11154809 292510434 583386916 931578331 197062534 506856256 8924895 649091290 690231095 833785300 932144489 936809013 859165023 927678381 306107794 727904999 658847636 957787996 57577107 946005857 916969555 978450648 495005774 791284347 902039283 947404101 43630049 976200528 824504189 990798969 160524282 592267661 261299100 442570202 62662764 559748158 106610075 455698641 21369529 159641056 919085777 923741334 664395825 701090121 663800398 898942027 70327644 447369963 767200981 860972164 354302602 817919947 367329203 718953918 818221531 824873920 305780215 668687008 915079848 990636476 122955912 421444648 737492790 950735086 429339980 488768479 216137185 862817345 152349949 210297976 177310300 702514077 459315485 593472030 387368921 554134118 523500638 711100333 416668959 741796069 375682342 618508176 350650555 859721295 155353451 988168271 445899689 625135037 10042915 978621190 730858058 812612985 384795369 509452966 655985087 896288905 312140326 464069985 615526938 940493542 784734417 916691682 57603573 645706782 715286356 847923831 596471538 879160500 881202392 954361932 919503811 956611468 398998851 633681033 526833166 693378016 683823194 989987708 877577191 976402432 596130206 664288968 415579871 601774233 868045179 874702995 505205764 859698841 588734033 774220390 663079920 676578082 36681793 425215437 839613366 880499514 10638104 604843515 486410582 982555633 112950547 394410782 523765593 657740838 856081745 916251096 227859791 573019661 775309054 889577668 974749414 984368579 806806173 849037074 402453471 584187670 34192434 953119985 901202407 984486927 440861146 894987686 806923257 886982327 356905046 636806638 357793231 784600988 831519192 930537038 358852939 524404297 993024026 995761262 40480202 629940610 761711241 937384088 884954111 980716835 122608832 767188163 865343605 942767160 850458764 961880022 102029635 192980367 4926468 127913256 125392115 154847564 228833623 923042853 142863457 715726612 847638064 968832287 106563320 605732596 396025274 438887021 543619486 978039152 39003852 961916989 964446276 984083441 766297645 864684357 344554657 614596145 753913486 992041871 916847800 982801983 945389232 968040744 554042372 994935437 866731791 886824220 496242961 741198953 412109659 687533317 467237071 917461844 172255984 941781861 612153738 897603255 446763534 712677455 758063774 970067517 899784447 931510847 327788821 424713668 499481558 783154676 724882421 957615597 68316310 994167304 96938676 103045566 391853852 430010204 295897710 676663639 527647884 781950139 795357090 919367537 987900515 998489398 784350814 985658948 714448710 749748107 203954593 386964626 796844722 985064916 410764834 984888039 111642650 591182189 537942079 859475648 835297345 961418505 704513789 854721934 493206383 956241090 674487260 835993666 418807552 572607033 218255244 450356109 68950160 689987053 564861665 864509898 675446610 719779950 832365864 909680477 199821676 986080819 372577658 612337167 49306621 86975827 74738222 950505471 321392488 419727655 99666352 760670501 290403581 458244282 557166441 899512078 863042413 956116019 25924327 604791066 433755894 798916916 718288095 846914578 580494628 673674863 978947180 983515015 478032957 768898041 665653564 993209838 189199269 663405889 707608938 924301177 169621621 597311031 90070191 818232717 530248275 850348373 958640671 979271170 822692177 963006225 861321137 983505521 947460367 982615713 961822250 980631486 705527451 834580752 279382553 509708086 969076677 976364312 803139353 947875007 846914410 915230177 534747066 945652457 634699543 983777861 79869308 949644693 509758514 922675406 395569278 632659840 708035949 931656229 452377810 758352329 51536266 520885613 479294532 974094824 730469134 854738984 855440502 996946435 442370195 822633817 238982453 573980364 706365111 798833647 966477812 973221316 586429421 699015929 571118646 976105520 995949805 999189108 986578419 995773750 431718459 551124966 217288520 222496942 271173475 567423499 529570958 874869171 295337454 370098770 741897124 817842488 313039039 707399241 961508622 990161553 911434539 985003536 47722266 798626035 615761816 750296073 148459282 650272780 772633776 890994948 289614899 403914832 762355353 873200081 722595903 806728867 560276171 681751619 506040082 662142836 645470230 995611964 659714580 688688738 536315015 936638733 487335968 802325766 244770045 528151342 801112288 812741359 472077955 846602198 658911274 930987873 588849208 594265884 569684618 694164303 557678300 802276198 345221054 903564028 3826098 788460405 64604216 386386417 644673492 810420365 311086342 473452538 40659328 306440557 905826899 918525372 197607489 610287162 677515924 898181095 594332437 783548774 117239579 400223122 980599314 996867122 567072668 786649960 107446896 252945355 560618464 806347367 635974671 834515279 563113354 757718533 722454798 940381854 649320038 708612434 582969987 825796553 311277758 635586801 464759465 581280239 669613438 914229936 748769842 900371364 204254691 940175315 994114680 996741420 241854998 753993592 283234241 926766484 670140793 998063862 88591433 910012676 139831325 570851774 850485383 921902980 343644632 892250558 695918546 869748872 401022516 615948681 617710165 803019223 98593144 956069753 818199181 838471929 976544286 983558759 487668103 609941315 356625974 546864202 879692194 952400781 448021952 909671704 297997828 300507367 4375352 932464328 811686404 964027469 679392212 799030954 138583072 416971973 332095689 832435865 39425478 913309940 972616457 999150582 320775025 770948920 987372404 988830831 229394437 918505138 854379806 959550093 287612215 394678316 578130231 814888516 485455880 775790812 58491697 163153167 501159832 588163896 278552174 864307531 761603778 892155105 836644415 954663486 379227456 767115553 837070300 922359345 565905269 726578244 809914758 840898666 879742067 912689867 734262230 997946938 58971811 287461812 923702731 985795696 112252412 935830979 684279101 767796192 242816140 424527350 542449803 763339196 449943020 675598534 121496184 674489967 348525281 627597103 328311968 892215947 687099484 711630064 691007312 988483798 329950614 751112021 96890312 746238156 774061193 785522856 872514959 975690550 263802758 383872679 91507816 162170657 549864026 561803975 511428220 599874891 287736851 420265956 519551156 677544199 543867998 544146971 877240377 968583374 634096440 894026855 946791267 962526252 666145283 852171989 380826177 774713584 831543110 981117671 672271220 699197830 825099462 855069069 515098159 966541117 244791558 442791755 939826506 981684630 48775864 190861617 557920832 926798364 124704728 172205787 678883429 831483084 816928825 850753233 719003459 761237301 716424640 864843765 682995058 831780205 865001111 882328850 91287231 105803644 778989019 858299412 291985599 883425081 961727729 985809355 893341906 994032529 541670669 683135739 490677341 722980347 598197717 615706520 974259801 983408345 159002005 546376102 447792199 492913957 883280663 983603764 354916296 398153112 423184983 597961835 37516693 175988753 124941109 276541324 18162674 569629497 869194188 954520112 735409749 930975352 984652463 995873647 603192250 954862056 914714063 941538853 414459016 665828243 106226569 602613990 564382285 985371011 860433546 975771680 450014985 757430952 646591970 977670546 903752293 985021637 861946784 920425335 753864045 976142145 864392939 956593410 273167337 424743663 164250807 367438800 937106052 960291821 941810928 981745002 690843542 967865222 535509864 657850964 274850048 481301360 959534328 973281174 601451514 780321333 476929928 721431893 785493827 884989550 22334032 302611332 689699849 830071217 975628280 979148796 685887838 699826435 116862157 165479412 919655683 921329226 258924678 875682711 836443089 850392613 428014397 711430540 688714856 914844377 910980647 995739072 15139633 81475943 767157346 941438700 523139169 640006199 500720130 565071962 12506713 13053588 262022392 394014534 206781538 671113579 146980748 360272861 592339027 637912113 637283120 843083732 321150895 873860866 610121109 906096854 53650693 112264869 777840706 901771059 989977936 990853905 864907775 928744882 117066303 670474259 645697250 925391993 786972783 810085277 390366882 863085321 487959603 924928728 183116104 873618259 736020933 888218198 615294844 991044320 962132258 997781223 635253838 963567666 332796922 852625569 703750279 946260097 716811610 943359917 82911207 445745927 397821918 982120694 574195517 593453640 434302679 762701758 965410940 987963824 898225187 940691416 81126794 671929069 488721968 967643186 897595652 996945644 886917360 972511866 625679756 923988455 615944498 845249500 919773239 928081493 845836952 943575383 637114405 730220785 71615907 132616569 746218758 841876346 21944809 528743673 945177833 947200615 876433760 878592848 60030612 642305271 557282976 965537666 506722833 559172953 226488060 525012984 833270322 974235191 113689439 676207959 822260504 942879004 210353390 230456197 43043189 408823069 426773595 464941630 447735845 513457705 205047661 505293598 856734943 967018716 805133271 807568188 671050002 947915456 300670104 400997576 902793990 908287611 237023061 481927729 990293851 999038171 764635112 926337269 782368413 936448234 21395344 233666345 118829985 491255654 940795625 949544424 291145384 311362786 425087633 502586510 748663500 994317412 809338036 973805040 462681141 653039011 549473436 554757876 667006657 957497349 110959058 953854107 62601536 565657949 421525252 876000265 994139378 998189850 420980009 561852958 919555876 963731638 495057819 668973324 968262056 981816828 575773979 849166046 962157210 993016054 741900863 985996371 698279623 937084466 318190398 692396380 912532687 944332265 24256893 357080372 758140558 967724331 71434538 813915624 732118278 892511177 235245769 905542260 219907093 294739432 791092016 904861978 187500907 252376738 637877965 723931877 581054665 982444209 736934878 941864319 39711722 912985095 86632800 432992352 183190189 433940976 240560473 629861854 381867418 432319436 395201299 625888356 404591317 970864086 142777313 911157704 614664196 789654185 713418632 893576385 741873024 826400737 810732209 858242316 973609423 992551296 87349007 835761340 735752861 982522444 669420064 856608865 902929446 993882163 531059401 869159035 803034332 831659823 349362801 491458195 810308191 838511846 769419509 991347483 628295099 661238796 112111936 634971664 458489779 951798054 893612186 909445948 608969930 869520362 424291407 504527468 453238315 576939076 722265911 726426903 464239666 519709305 351119255 803980195 489580858 506080686 454149708 456279527 79726100 286678000 96443937 844658498 885796576 939869652 899210284 962344301 276865084 833922529 612651494 871957182 114871339 206369304 36359529 559553665 771882372 886722671 664270601 954910265 355886795 757362961 120466324 178286506 612905252 660139134 885091119 885271957 396587836 953264858 973906304 989449099 331566052 852811225 835436315 882705078 276905909 738983988 811418595 965367821 125097593 458452515 593342685 740309741 888815240 909931896 738529583 903798200 295255403 427742560 754885211 837632699 793947582 839176440 611389607 624891039 579776883 779325667 451071824 462097170 886457395 889362454 251996786 577412293 64660016 707599868 507046254 723516612 662986887 971777036 580037569 628766239 212477323 658611683 854632733 923984990 872905078 908268556 839815620 912683461 353548362 606812811 469610253 843372067 428737241 832351021 706700202 895556832 838940483 902557028 950592912 986712749 628926660 888085554 813440794 905629282 933024387 958055372 18113934 696185550 20772502 278216362 522016446 936953702 522837413 689615429 506833537 695675446 250497709 737138921 207805997 289893418 508590213 913522063 453666608 601016040 194048745 470828382 57359707 379731930 653328980 897166712 350105384 755776577 554456959 949605719 377903511 611006508 244889172 296965859 431510518 551917796 780277579 900298290 420173817 882092015 934449845 985474379 976182131 977720588 575362921 587594592 190107170 443903459 229728053 682814009 273143870 794383495 614721557 779192422 994730511 995871917 667904691 761702707 803908186 852371964 19128473 586687404 485634388 875302679 299326820 727152401 931937003 996677085 610391374 790407594 33075217 381608475 240325573 979915390 617437346 714066889 272899393 408060578 861083748 918879564 126408960 643365281 387295855 881328370 270300563 605960865 605452471 668933854 470153893 826126734 663882693 919035297 311964585 610448432 632887629 661320326 706873232 730078874 403313675 409464743 730647331 779089500 862352031 934733893 608452328 772790913 182837164 347048429 715117779 987087569 873897181 911756836 923370757 942482766 209638475 634275443 881858988 955149847 976110410 979986247 921045547 955038505 669223601 988964240 375596360 703689085 694523483 977614042 219210046 903360511 749510184 942750887 577027799 709886522 717255179 749875333 267859486 377373222 170402002 924826357 136325325 780049572 210189449 429164031 536109722 690040209 135760616 515659291 493809612 579773913 106771048 397386423 491590351 885224800 773368410 860694314 628174282 728947435 497489932 619909479 346362314 824436575 998131106 998825541 622121596 849096042 91028230 553892727 347305936 800248097 826654915 906055760 975559783 981981978 495771987 992219187 15058406 363693615 659896538 927887912 33111138 311578813 487134263 804498350 937166360 992547642 593176770 989902413 802107649 938656275 266933831 295377407 744079618 961685616 486404393 686788046 246796229 976859543 874532669 901629102 255562517 759391414 812860027 849801857 829313958 919213998 836434455 956878682 714474176 988003983 583366891 736471567 316111244 582292046 345123571 925732981 398986860 896913746 154453183 908898871 23020048 674345651 187619216 330549264 337561061 556509603 144552486 643554857 623903699 802680311 439642226 587896055 786471940 902232274 234037509 602842854 876979710 947866228 346813279 701127284 177002218 855541206 820815327 945998040 919118832 968527349 499294232 656963530 505452476 998182922 827825179 946673765 673568897 677781477 46952614 947665572 587951863 843816927 434832839 520122394 872125267 934137094 51652095 836528056 888331906 976697704 645499636 825660194 748831113 842936889 734933992 911320477 865596742 985877532 306073798 387252843 465031178 897084038 593749948 746094463 239860816 800164603 67111895 673095404 682866632 912033024 105007273 872125356 80510169 474707511 717550455 800251943 217402542 477017068 226439247 716731249 114336642 890471647 355332375 704872861 591334688 740154229 86528282 279154450 501767943 668965529 602244519 724391679 860030704 884744240 717757179 917012918 70940589 953757313 828162487 972368459 815976947 816325348 85683567 370396865 378201551 410206300 739901542 833665612 875766102 951562283 700203692 701774651 758960654 862465920 219813155 945937486 127985721 543205349 771493317 875251553 108217659 504890569 37560706 302556033 495297750 894167554 210424127 562619399 893762622 953538887 750639480 894679028 562951089 606415903 91212227 497704707 629265472 834729617 292925438 769827467 157586893 900423110 872027235 950490570 877052997 934153772 499615979 591334413 864684844 911980045 917413048 934871499 85913041 935573773 358580533 736355388 211646178 808334558 261859259 938393216 923440498 926949278 211955972 573715702 493808800 699903741 190698337 531754692 974071301 984269751 709815513 991248618 992019225 994230894 39984359 177488977 936877304 940435399 442607542 876563878 429410751 674042241 715898885 731786382 882129913 947125045 870213748 923397662 583301212 870589331 666258963 982282224 488839005 560551010 306610311 661624370 319441 947201740 493055223 604231741 400482793 815701228 282403464 981693462 62293618 846130156 291448610 700774475 719503548 811630463 309293303 423398754 843170514 921346155 652195596 806762599 64541585 126442272 810784358 812363462 603739431 758163726 316544085 509604310 815891963 965168065 630090074 970114259 999242292 999283394 816375760 965459298 392740600 587615186 843153862 949607030 598547525 769605405 85339139 392437554 211264207 575383549 945129642 956638595 941375348 982006985 719849833 757620168 203346917 609421779 512666463 640305081 16622273 340100832 484779554 924268585 214792636 863093261 758747156 801204427 152785708 954114931 562255018 784441302 425816655 509453825 938992953 968859521 37275766 919402119 135877127 776864287 661883105 898848071 464321334 930378883 161351798 817728897 390404137 537951178 164767119 190836962 138435397 239565789 307996780 953780779 660630671 947150548 256351023 830291721 697395646 816398042 39710044 587990690 428360251 848587839 650996101 880986903 358439947 951578314 548186001 668332077 750168553 923526624 14916813 482260643 141631062 400653808 88811617 197708683 654026762 897431756 602216927 602411376 998653735 998659946 2798687 242199689 897476076 983466154 549695312 710106674 426230029 703110532 865060513 941451055 281578770 886669871 610142978 775834631 830241852 987729770 465010501 506365072 3838640 711819764 165990856 953777342 86487323 563888818 863695257 921846237 600620689 894864624 644339307 670155563 701098083 888876112 576353081 941486133 427204036 916089316 165177888 401903252 76083581 273063767 778142192 880444999 406904805 949305037 128548229 470386432 648814189 778052896 183429725 910777005 797807792 944450183 717187325 967885996 198494034 259894845 434579490 605390964 248360608 946512628 191997657 690049174 135696074 870431154 460735444 858998078 563195401 590844823 833868373 923433156 61855634 421224976 618522183 652121679 235547189 979004204 302499135 776131469 870410659 975343335 157829857 961499198 249206609 300314909 648164167 972027470 894246202 938482417 953303929 981217520 574766097 619210828 784359570 893989214 55311116 61536038 7476991 364606960 745880965 853739062 819348539 836729228 650351551 781372867 158758514 425511198 766650115 907905536 658752921 866493540 180972866 521280557 293336154 307614838 223519242 227639430 10803549 840607119 309859521 641546527 577846321 981125741 943815977 996567056 352457162 764622958 558712991 741607991 34141499 997497564 15824426 185268628 862629988 892115737 599721702 805299795 390253001 398915116 71593697 946061327 406110178 427810111 2888234 272341936 505964007 715395471 432522522 524607570 415477715 682474101 230314977 879497097 779342706 856367558 304190168 669545592 636844912 917352374 597890928 609908449 105294336 242603581 31667963 224938480 706650340 993117413 21156459 131304670 456878747 570030934 672581336 941087399 21113690 929127441 891950669 945138257 53297176 175545232 927882984 979667077 528268025 732491210 590875515 918725690 596794016 965386209 753183907 800795004 707358127 917746761 448072140 675204526 167363328 303941660 576095744 886157131 891241048 915736199 576979725 917005751 235802232 488173304 846515686 858905192 575884941 886443363 558368715 947908780 686257369 787875357 882831938 900766518 205920146 845667553 256587160 362134374 866311996 885815923 308488155 337501134 73879084 890986396 618907885 987122584 958864597 984981185 39068700 587353287 679550094 987649173 849238202 920917759 903596901 978502505 197729866 327211222 32634186 725954646 588008142 679379277 831767909 877302569 343885437 495506212 63646650 437561328 430527854 517320340 420122586 663736608 565354578 883093153 507653780 914224171 444400342 783291913 815748609 916245790 823988449 875418670 612300783 815638263 82722931 479211767 168811681 993167289 251659184 531286843 555441473 658825677 731895732 823366165 848672086 849285215 583260194 731173634 624798308 685240684 481547069 960097885 449189776 573909015 599528679 718649064 688360041 966147914 436764850 724142742 312160116 998964653 202146622 700719583 39918511 996176555 757194440 798368829 847690966 918636647 109115049 800977001 701569362 977471903 107444314 591911886 602157607 842879643 583917587 589177490 173446518 857384807 516153280 643318763 433267751 552532517 39770115 905108634 258202353 905723290 37885371 495923424 947075445 948893289 475715522 505079777 858808963 984565459 943891480 984812103 307722008 978500049 617597447 755229160 543775093 708622309 864961424 906015448 542058869 988705080 371240865 948377466 888152750 985910434 218218008 869468776 676481534 974841787 865792277 906388673 313353244 564891759 457224756 957288982 513461953 901875545 846778157 992528667 198419076 339556293 518406424 967150063 207390196 975551546 592356522 965912500 129851238 145760655 364321043 661958103 166231256 456694877 339032254 589629033 581139285 867599923 985811384 991932694 711281388 969889199 487430958 875471007 616293726 996698408 492607729 525104337 662072209 716809841 73566996 408794964 896941940 938411249 864403751 982628332 285525761 674967066 196625897 953946000 766175152 981287653 572040783 777846494 567929390 665170724 113582787 633016575 278081939 608871471 66020300 144270660 952433259 970691258 864724005 897322657 906549415 942841280 138537662 707523398 657870943 954059683 627447154 982653664 187677020 379094823 652999034 886370425 740654023 792860014 550599842 993304175 177984788 823204608 404713005 591300448 633451940 690699383 537487584 893444647 143415546 579178612 652246326 739397923 988507134 993141587 862439953 991141684 96187968 198399499 297803925 334447900 637983426 812420920 969290462 969564861 287902261 431850735 512639443 668476348 349093063 820081931 599558157 708162931 666046709 822778588 957625168 973956930 420818382 706303569 285778173 506274216 684425034 870339194 362399537 826325947 397928977 711388239 818550062 959238727 994827650 995209257 636969286 981814406 96022847 217825637 340242622 881961368 722089616 923045660 334322072 452393775 426259809 436218598 987101985 988638039 211238507 914554652 692521312 854608039 670886869 685758926 239273157 699926506 841049367 861358741 591131234 629169397 201330321 582652583 831244423 912608870 245771509 736189149 61632553 212938105 147669058 193809876 944604123 955824466 27042874 395505160 691233030 997591593 371997840 685632463 252939231 622952274 434157813 628308808 423695916 802364378 337243240 654140922 178580331 381629271 783580289 832122781 175653342 917972066 265328667 334785663 483138475 579000653 36673963 823214904 103386379 523575299 762393428 861099859 499397728 530878378 857841346 884323512 145600230 256910310 102143677 663098783 122060141 948549813 845019939 930297823 519864483 953704341 906218353 915781610 39561030 933428725 497005115 677559452 266418445 744831741 639889235 765844072 957195816 965569087 598211301 890316247 22368536 719702745 955030476 995285403 722670310 840038286 706879257 985279658 388360437 722274349 123849809 743619147 252794464 684568351 975909586 977035750 346112137 821168048 801838883 994132139 805442058 879917046 355829661 896890497 335802364 589847553 543431764 741443204 386463735 959393682 375603490 902591845 458957127 954274982 433103017 877615541 933569060 967628967 308161162 526810627 155433416 889065388 466858895 699515164 143994530 353102561 294114050 798390583 863975245 908186859 168186573 902574809 482550850 727296392 26718881 501226491 652200859 778729465 851727310 897376709 659967739 689997854 73881939 167723449 311648143 672579191 284414410 926202805 717145086 807766885 537774168 636092536 829859697 968032031 58507870 300018555 919664030 985690687 48555313 514031975 511781988 567621335 180345872 785589318 161131773 693121114 857012965 994242194 201109255 945802711 916164735 967052002 214547051 771053765 644037317 696830112 903205906 966523077 115283488 214749085 495639093 829453912 516404746 685511355 708661886 825281172 101096789 741842841 990971707 996229114 327818878 768906862 50675606 805671225 517800377 747978237 832950739 875517221 2733042 339787379 465262076 846145504 474313342 582182493 519322705 936350014 861122350 933194885 192091521 387430438 996843595 998674593 244734142 340129965 19055526 471774752 493804029 885990137 721339964 793632242 185468127 377660164 397695458 992095035 241548319 931172783 130546725 144614579 57288437 377633218 947338435 992183361 24818917 246676814 595406815 731536540 63145922 268170652 149247025 779601910 595878746 701272056 393444499 402779441 476692472 841081756 904519226 924313396 71741626 158668382 666613846 999337424 460620519 693496162 529495349 953051664 344143494 785164914 418413435 625289027 735319602 738122160 709147005 936210984 835445133 868156045 729296113 818688849 955591094 960815940 207309256 319943181 607449077 824543698 806594269 873809704 691366900 928502601 574998978 830175603 849330757 851437170 58299628 592419031 475560764 864155507 783365426 948084015 545362819 926330922 160374851 934837187 82648911 189258762 642358099 676888259 9850120 785128550 850974714 965959761 449379217 801669967 427502096 589396314 348648938 679210615 913241726 998582420 245030651 981373674 269443815 373692252 803553668 972711212 452503296 500293076 353274865 791730212 599394256 625036329 570088357 757239739 586862623 740714319 581369699 961102220 549602596 955571743 494040249 970741064 775790550 975754856 552880948 795481342 652099851 972064956 179350279 914204097 511824228 671497602 533495970 792192994 648750937 873871123 4194901 383064403 94959641 791682226 54779082 412006661 905249880 912274158 59553609 59877580 221385560 294540258 264170022 892698273 857528080 881754689 70367782 84805297 696772972 791750278 642096006 814114586 824451492 897026237 863029882 868437585 359848757 594575592 307008217 884692933 973557151 990908342 21594660 419302787 561523482 781159606 537408655 617289589 273154119 433050475 485416542 721395695 625924656 686713867 50137081 808497462 790790412 887350941 46546805 592078192 754448494 899019096 289501239 669445522 270968161 482145308 959078872 976450485 368399663 901136801 816076290 962442544 933127793 979715149 842291126 985170163 908288636 958158026 402355977 503689325 837397321 912419576 231166695 671927316 438961238 979955204 668385757 778229132 265022094 538588397 656904543 926970131 921673431 959509567 593589644 790931790 339702651 742267989 641260939 728028349 79709922 230192784 718283321 782927099 188170433 828211990 435121643 460853275 326334176 421535847 296489898 466852252 534901061 579067054 378298359 557394558 306108199 828453549 901299713 965926678 459556726 756602139 995191830 997108371 292846161 577060343 297616128 928672904 657560258 735834512 993470809 997509723 649372377 807019534 609947449 892099807 949917993 952129554 871961859 951734305 770433890 866731393 169644670 752447691 91800287 305322630 537015719 641819157 277868654 836187912 969762579 992565460 988986667 992825337 865687357 981417311 106085688 588132741 403610125 883414579 904348702 995815255 713633842 836836153 515241965 752979768 527532348 903580325 498553599 559334723 312752901 468997273 346143042 441816618 277685643 399512459 568925546 769259085 129493515 162133644 622573 107609447 34566159 253595233 662132211 934710232 215955333 420228589 704593494 850681022 964613838 978762960 659337313 692951076 99818408 857063513 405571678 438366605 572129282 710539111 867257916 893102266 450998735 544797696 656179929 669210605 714106124 780115945 912845223 946399032 206738618 517495680 230945944 778130377 247682580 907721638 135893297 937206246 517353232 819614884 747898551 842926990 612164040 861746496 36463059 352656752 705077128 939648498 802018087 951333203 141155107 317500012 501433183 759550243 656729322 827865942 409489862 480347162 205194228 760744982 958255690 977484544 250569725 719927383 162326935 287573558 70698256 976853491 723144324 920631767 132799778 752835387 200521977 832193892 782774463 830895651 453302151 846452592 282454647 959676032 323806695 355295272 239258588 559543614 49511777 638365389 873019424 924226026 704656384 962589404 969602785 975317755 41790588 313621242 638220164 719764357 227829134 788844530 714323376 726372497 991860040 993068835 721356024 815992513 672340096 888135121 498680754 912092683 32940527 790549001 774753767 825396016 415756227 968256186 986160650 991373529 327766156 827991176 475951365 913095779 47998363 994633682 429036028 831214508 657284589 889739121 5221141 119964035 101886894 687945993 533291247 656320275 887344977 902757080 219564804 555617596 246757549 273174463 171376710 997833872 899935039 929737541 783065061 950109028 998228514 998767138 269902800 868591656 830562629 990066729 926253737 978952596 141585069 202716898 235883439 396146432 556220483 992860349 748262086 766979454 59686010 91339709 335849268 775117110 240264402 449909868 157489378 250120000 660562353 692107772 223739457 224079217 860829474 957308221 91577002 709297136 912155524 951384132 465192636 953387688 793960698 917927274 984296512 999303017 621524690 690604524 107279134 432311361 909122182 992512143 373932813 556986322 399221721 810323683 830994454 940917978 835601971 964294166 211811205 812358561 150095063 615791610 293852602 744096716 1257098 73377806 131280963 234228451 39180584 642441729 703122919 916164061 882275565 948236642 175490812 401243603 558558925 612957987 728148400 746955815 745295872 884357881 514156829 619197486 371317875 954202207 571682751 635266110 133090775 196545615 889735754 961092103 64396425 745971778 989424744 990724187 22371265 265602167 673296297 873602229 921165274 941855173 116349590 226770493 105784275 378624637 814363830 849967196 181128756 799122696 242946256 254017320 987598846 992883479 437615790 498806555 471281586 567849142 297926264 963024665 579284749 985272661 577570668 990362968 966928263 969630913 110636028 296108089 190863272 704553816 709502411 844155971 336559303 484645090 76891248 102258710 42738179 972475287 717665918 931188079 813038173 925022045 358789736 813691872 808023431 878766030 121252493 269979852 491405115 923061701 301608053 636858872 219056098 703042104 70635056 757986064 21409122 436044570 309362970 997222187 75560783 543724953 149465438 928779919 380426246 474761049 272186532 664444829 104410551 865621694 195956080 940937026 850320419 851201553 292478519 833737162 975763973 992856136 332711939 617295469 281975863 700508190 507062785 667148934 680331555 926602465 67019603 811097640 617206959 777716904 179518626 433652286 78546609 123548454 672241256 914800572 695398852 827616913 501226450 967739201 502886637 895920665 62808634 200758062 17719333 718303289 343074902 627741187 158316888 512355957 306577963 559747849 67975319 313314041 246893124 736490262 329442285 669553599 966174343 991002703 710902319 785425455 317776748 969626055 524032597 673414638 115068082 391503498 86230443 152976103 246710033 761988616 614794299 729205900 779744795 943309362 836800833 950451950 600111396 691290567 896543645 913988945 154599254 870525300 354465524 639185370 654982934 933485435 474410919 785218201 451725973 515779579 507791161 581664188 809907318 974780986 82423315 147426919 625568155 941467112 198218052 831481958 298199443 602948660 95908713 120273178 121359804 937684107 516692940 534102153 631755219 903944140 569443883 711294841 630771267 998288867 938307076 979293626 95413655 691472694 380624912 718118321 715580714 879027318 273633422 979705720 815421769 864766951 309793252 779271028 100980001 220466313 538515826 657634147 668607707 700539990 562685360 606790860 704875214 888081262 92896958 826462080 48165735 514582500 494383411 852974138 805007993 997969962 882808 816018939 228646704 436513421 282330578 707033010 9357242 182798436 448693988 845027021 142145941 596333086 676055052 710944638 791347920 880761984 159629255 797554721 327958309 910520729 452495134 875598981 252256831 909928948 205337469 531479077 85290750 253369907 148412827 598920481 992822676 998050655 712516878 880866922 957143454 998686498 982110457 993509069 735697007 957237221 91487015 240010693 158509416 447199865 265445775 655535358 249290142 556282868 753315439 983119165 315392008 752356957 932255810 965547648 92202133 195512595 42830355 614155181 275978016 753400175 241088196 466025976 401466278 646347602 415050022 610716647 320121266 643970237 875304497 882816187 887156112 891655118 965540070 968493893 766036568 926794237 537294773 712189995 525365535 838525354 380141869 743506988 826638159 970376428 445549145 944027968 948917574 974555725 471485486 555975345 976748504 991316708 820589810 918561555 616626962 673468536 345410632 497831007 911653225 913621862 626443374 897822551 332782467 878687847 865873945 996223070 153437736 248386848 973163551 993488410 109856120 781583660 895754002 968468555 241378854 253668593 491723518 570198710 136864891 274922604 272535131 626171781 483118628 867070738 171875280 638577668 599352158 691965672 190225211 867815907 383468609 755030260 713051847 843191744 868659064 982890985 482581209 505120436 649529560 994283429 745650350 831501544 355198714 940507816 810592220 956921776 45383705 146622784 287227238 385895751 332766530 664004972 289155366 306280647 453122402 667037693 492576678 852056031 230846128 743462889 786669018 886298218 437403760 646783344 940516323 985003473 735743557 766129627 914686753 972215287 357749102 501186129 666740656 842739917 130626982 938969817 109003339 373942699 326501266 981857199 884018534 915155401 682285252 838066676 579674671 934882262 472871617 664427560 278071005 439471473 959498616 982373844 136181077 860298660 726123270 809005212 621842126 858871872 666274825 983921029 136070620 699398175 900135705 935054980 23240918 491122985 153852745 566922167 640861468 965626054 369175576 609968721 648299210 903633219 561456983 575684746 5126592 602779583 916810861 979032584 765416122 815617785 280410072 360243700 238198054 457716735 883779996 899763571 417055530 841233466 795952817 807775952 912555173 926186728 945624253 994470926 420522831 439542475 720210808 821154742 801909037 948007366 780069802 944398502 954575283 989265430 111238799 648538225 425222872 731895477 638077877 974457416 622089465 667316914 895560882 964090657 216812674 481555954 67197346 214774763 274616465 484749574 48456144 878882867 927561894 996955389 44114893 175247361 946745062 978928638 529512146 624466043 428922933 516959927 622868037 885508695 767857819 809264511 340753687 861717983 705703989 729006541 372395113 938788390 632667389 982798193 242551223 731845995 794265982 810338290 726916839 815688335 567433174 793558052 760995245 909951356 974104411 998021538 433820401 462412283 539915350 571920106 523834910 946663498 204444922 519225927 293392210 406676638 846302198 859651039 834368114 908717911 955780834 997664824 113282269 420450692 703228541 855358418 414273033 472336852 148526331 788228628 951669293 995609888 713670830 842614827 878448529 950850962 942177289 963152866 347179405 476136507 898492306 973125496 278742639 281590681 857060248 992592862 278429359 811606148 504461461 868094544 752621977 928756358 186831967 349898927 777684168 822931692 133609313 378659154 17410585 304842896 797132153 947044330 859216610 993764371 232809225 385223086 831346400 871286718 613543819 944835142 244874949 408508583 490012497 615732445 56007759 173183235 208625293 973570787 165219311 551056213 29613391 33147868 586408559 918879128 977232599 993316968 710950522 759042903 763613940 776140440 836305893 849468723 477223162 784096510 110742981 205841198 124513330 333011581 970335512 973055503 893278261 941466020 592011697 901144854 39969432 397009839 256770334 713051569 606612754 624028403 921364167 948113362 451910156 819479252 330277500 669359203 961367403 978152339 820460042 919188082 401167463 868629627 516808991 891407277 340172653 351190238 273263592 577375954 983230194 992757730 406111118 687247713 728664837 916866827 267185922 564527035 455805806 662357480 385336651 654350493 136801279 963173062 270092371 467500662 114454622 183369581 645340459 965006619 106164595 210309072 701234607 712154205 491813489 896173091 655728718 662629999 270797869 467573487 729158114 779228291 965984700 982199293 401721637 662061587 172421194 739786537 106456960 567965417 249402682 529979221 415646292 819100535 10082551 120338269 447467183 652818578 902689255 969230526 298183780 343038650 750518675 840888329 121863811 371846165 822195084 954600576 88244335 648594047 338499195 572340652 116453511 429315312 54249814 603227309 802809699 885695813 486365604 967382619 174549023 920649299 297367678 729828183 397957657 469300523 295902073 309891058 423611339 542749926 926758013 945861811 731921442 995059978 164481792 900192721 88013740 510688524 166705456 371154832 521498174 984772905 171345395 264144624 873896016 961591818 666677169 767109852 837383580 936286113 170171150 763495193 70323871 933237667 656475820 810663727 545365392 925680527 410874367 616908498 184878919 924237088 215987151 517803387 30102491 304133633 557172015 615839662 229601050 254076489 642935206 648300186 132281548 373712569 804290760 979443324 936408342 951398980 889631858 913303768 399995640 459768789 102303581 179745672 649676641 902537877 587456729 806689271 154201102 971645969 241174997 463650251 899269759 916338077 114310514 571875689 19865970 444111472 386370678 673340545 656590032 939404394 553844966 969562489 456133597 957722435 790157474 850443857 723593189 738358555 914020851 944632861 138540326 903887427 162923112 513691606 71093119 517135247 476807604 561629202 445298338 500151681 964100290 970930009 732162294 950637617 938943071 987372042 333983383 843807748 733013152 976097978 673281613 759387483 147827283 306325501 148947753 173453256 572820943 694206917 825107336 987641177 132464039 985677199 754870356 759257981 985657350 992088978 694806727 727137948 795066995 960752423 31085710 915517459 780970099 885348495 287319569 911540796 976965439 978550430 18820315 641540260 625352012 837907347 157023170 710389981 539759047 829637592 152337443 616105767 974556746 977445343 947446012 952092647 957451969 984324085 216542487 532176380 483427559 725412308 495486527 581332308 663666046 891403544 443932189 967678145 660279965 671631857 387009059 846452108 652670177 817779052 137656484 194201833 911547849 932701537 186962495 966877104 58704572 168681848 996235690 999153394 455040025 563507584 605687203 822386391 940132966 977621552 517744913 688423200 513966243 806589529 79144270 876598286 237944301 435102087 395541438 594793065 406156326 591143302 498823500 941040498 32464965 970448441 269925230 834758711 743575870 928056029 13673775 214196353 88300654 658735927 550834705 890959278 513465 643454161 176051501 374396276 817846002 839635871 177693754 427073533 774266539 777470123 183534099 970415375 86893355 273711269 18251481 26555932 59836940 503150658 155075073 335647258 803358906 845149480 168196307 736802921 212536673 491805688 784394569 983589187 927190436 972467434 76245712 141219679 781216422 965973462 163977117 397867725 940837995 944080665 300932733 526951211 891611700 935372895 185393134 522991306 283609942 457709601 35113474 612804348 734968015 761830448 888327445 913071285 38031709 408127021 956823233 966606235 890208846 956649969 183637032 561799646 353863251 733830882 172337735 596289675 931861761 956392012 649925650 869355723 905969791 989628379 96579112 166898734 913646659 922972121 86231496 359134615 369591487 460038940 69742944 422699049 726170557 864726037 407080808 518123499 213833651 553406586 43445207 413896127 994613043 997857188 73489819 716773249 557932511 711930933 959133893 961821886 78928732 203064848 679097136 780757332 47291029 302437566 33311105 576453894 82373233 553624737 685442578 699484028 110785889 774028445 472692571 820435084 939072838 940084066 472874947 679152110 830475291 896307229 451121521 542637502 36640085 835666997 585707051 846869500 84952737 995435742 418250684 997564237 682466392 881964265 324738026 332493431 968020887 996886605 997512838 997889332 886804185 990209190 163067859 605132231 65461615 196699708 172894756 449104215 260429320 643947120 881827443 884981893 211595741 313989966 382098334 826930579 674365282 925100965 935493718 955063710 459490741 633821293 690378153 802207015 187466155 616595523 804395622 915991037 645084899 773415130 458554112 735579989 414945515 871648277 383905199 451551977 828432957 888840827 572211074 597889144 985514761 994528757 692619708 822735114 587880800 871125172 84224179 658687494 547717191 730924798 740036484 904186536 630858030 755888262 865924557 922434616 363155259 371821209 224031979 440153201 981093425 983145906 645278904 843266340 259295689 439753851 519557496 983089818 872948617 971303725 661680092 784033412 491702453 828347744 274190210 516823164 966012824 984296848 423758533 906432311 253947770 943458624 520736314 975247101 702474541 806693568 135584974 212304385 249246799 694756902 512026017 973310767 71420865 611389044 218939289 287950706 593244233 816046760 562870234 760011661 93826710 244386092 775812734 984258084 760943774 895561318 376061430 876517601 298513301 901894686 722954102 955492726 506628009 619944335 958666558 976358101 883110026 997056011 164503522 938354627 197877345 465592069 367615641 412359585 839935143 970404757 581392657 626691051 336552938 368450313 175845430 740298584 172146887 769420479 116324401 434613357 549146609 981611825 596471037 875621604 6231683 487688258 928926581 989899173 589542864 919362381 841357191 842424089 720912635 848643057 406212543 412584907 402282467 729017294 690496016 828903786 694252648 819102487 398224014 764895558 826269222 890835010 734212607 940971728 32095494 531144868 635006563 889108196 806737634 820334932 34543525 108170141 282039245 819151313 67765285 118683896 450419011 465055150 906557132 906910553 353959953 402636757 585836604 698955401 568084469 776522551 639052447 711912777 752531770 797273944 121133515 359151252 747122484 952806853 210670106 803379811 727873843 790890923 250676731 583460506 799546158 908017031 276195233 501884795 248435833 647251564 79556350 977757735 150017273 381202458 465948388 745104704 434366201 848069391 501162061 825349859 513387891 961357770 711847742 813291753 253994607 776911377 25582648 617540032 151259977 807612440 709870459 911026488 404086832 533844345 219897644 412062944 18843267 926733468 246175722 548432132 194927416 368306010 732147964 906006183 535245713 545841849 13470109 623122989 311359827 439670315 206787800 538512378 904404356 913144466 516509141 864793944 250027370 356551794 681846783 877181326 616986556 936580866 253324382 995300848 160420507 317711523 379577306 523083397 587010336 994926116 539734927 837242633 532169490 604932229 147727207 624163019 397807475 739951145 735619580 981969531 665087632 816726505 23111432 68467827 135647067 521163638 801083369 801466474 924224352 985141321 689155307 946025436 34978972 732460753 842515101 848290655 587165951 837367800 275481515 782252813 313013961 622918133 935276963 951477587 663238229 879636497 977163109 980276255 993734992 993762175 959735397 967337407 749413891 780896170 252997773 485105206 589807224 658801194 814301899 831243558 914114282 955037347 62128643 867988419 469821856 645772132 822640363 842377005 439004585 537386230 555069219 755988317 327047744 903885862 76844441 898643996 251312736 909768095 872334430 912109978 959258732 983481745 961842413 982835981 51831819 566985474 344041961 373839884 240071793 988057361 721540838 736414472 787630429 941798067 859661662 900780302 767471976 931470258 54435895 831323496 854465759 957895508 483250965 600786084 29362745 675401320 842232042 972743323 609980319 825821302 140846950 879103670 72115066 306248702 667059842 971141862 26463337 899121292 20786794 156243210 428081658 431889129 566250659 950165280 902027802 956620031 140243656 725644786 811756142 813452327 563295179 906064087 739729349 977775942 953989076 977915845 922686077 944464242 649821330 942757479 546858345 697949345 752785089 931759070 105551108 213864965 406230434 784287514 636196141 657612440 49782918 171575542 571433023 685007065 330668624 423922445 8405492 664893277 366446085 631311378 973133188 992854727 470589476 815964227 297776005 828547961 958050037 970376256 116087076 677643055 634074355 888292385 375843870 635228487 836766238 901229258 978570655 997930399 309240775 534690729 521024544 851411476 494748748 845383022 412501196 733116170 605818590 766580354 62424860 560418972 357124495 646811012 969344487 998723197 564365241 611149197 172666736 280338007 176961063 559964541 933246650 965340482 573745869 971116322 551030405 883917573 453695566 646171199 748451911 798987050 408262379 480693071 584483867 601937700 492056282 670989009 155974476 636279418 891734101 942856708 411326647 532732959 755842830 806745624 124626841 415859478 134022860 211723379 458949994 914625549 722175702 968610340 245070705 390809991 176029452 852569215 582314038 820695050 179201854 707719226 926886825 992438506 460541115 849247513 701223222 980004217 493380220 747627439 583115705 891822680 320255677 588570520 629258524 655082257 643420410 976274412 917381102 970624978 355952962 781307146 265661900 709357526 471582824 572126886 809868776 894661644 11150329 663274899 738868539 918605501 483020354 646914341 696090178 832873157 588192110 923516106 84776972 477915661 786863141 923912552 486044791 845189685 933513021 935396314 64861505 805078099 123592869 978066770 475430427 550330691 995095004 995840617 815620513 885030300 878366946 899429741 761792031 811436945 354399930 964612314 906341932 989172517 680540254 956872099 269881424 343564814 605767053 916900733 491104325 528452643 30948879 546468703 397947579 501015161 528143257 530761773 77613370 602376305 476507852 926640722 709384544 959752421 443334959 984480863 944714068 948366472 717138577 933272310 857072516 868929357 132562295 630098795 113041693 833763862 699111184 954628226 923601073 967997810 255022587 439343809 584545240 995548654 87599989 831841151 951450971 974253208 569307901 966009520 756478699 765529557 260430961 859537087 613865756 615467350 574832651 583328122 308049254 791841343 400612028 755253195 295067481 465626458 123636430 591796928 336400295 404963107 494375187 498521877 348093738 992310457 543488843 624230871 672639504 780572448 232803272 976714659 890378155 897580351 814548424 895281488 381055875 621739515 543300971 915553089 6012560 973774556 365711620 705174848 587057434 685496423 212671773 766664280 744249478 885692672 731609272 972807483 10136062 676102099 937448022 994673974 192474820 547507228 655870642 776669804 596367332 899780946 830883272 924815095 569298145 589028357 292533508 902967631 897082826 946841013 277122099 439017944 447464036 743188740 138402360 402423356 455424446 755834922 391546744 732563537 650789077 984455802 660518570 826169235 507691478 533516044 817615088 907830470 5160237 353626265 95339005 187202600 598076869 948519458 63547901 411378455 371781372 918642342 784694527 937904398 226503361 654585840 216155177 491665538 33354071 845535018 289799206 670465488 987368573 996856889 789004075 875799973 361844101 664883691 7420457 743097478 627898238 924276872 398238681 985319372 702483529 811277266 700587312 706666181 336405154 828445706 965089969 995331682 836101011 940936170 563490481 739790749 381369885 451753402 163431495 462511338 774524323 920061266 578717121 970488162 541922333 631841137 312144097 918958184 582619825 598483810 298591190 549030350 171772349 324847870 990826037 995274152 973480718 985784260 142696472 914911064 101226991 846665481 145239141 193516725 285623376 308867621 738004811 870999734 775940545 869677713 205724188 775408105 617750215 678027692 795894068 860038055 4823039 634836683 33245195 43122986 547855509 832411552 292531133 886596769 673153198 911577605 952869276 968973177 281116237 465187387 935238990 952371817 594270886 857832129 314754541 963141600 93340864 156218100 290476666 477147361 163855290 404296708 601736449 905102948 725469540 959354623 169848185 855363808 458836441 759093316 371469265 662517975 282591937 766433334 318299409 335730016 715861877 913363428 950388862 956984767 313548927 350148550 106005483 383196501 945188704 993540208 519672024 840095348 708595413 872847504 407639452 993108585 268118618 876156639 560181146 771749014 573029676 965762479 803882449 921548709 280399433 481604203 189494869 772660132 363510771 520606571 798321788 802871534 673315471 967206069 596581740 795449857 78678084 476534674 592396675 688044774 139762799 482975169 544215244 818788568 777113188 898068894 157400787 623337606 42791137 91137985 572849197 602736068 641950456 957461524 788208305 913338928 835299430 897748483 244063013 372380978 359454665 422912843 399664471 854366924 784177870 981515356 653987344 899395251 987604767 996989675 30473133 769302932 930801691 973892121 435971556 604953666 266024894 727767924 838198944 907595837 736659315 832965401 815008784 881194757 157483899 990087262 138269278 204039191 498449342 991849755 596812942 648056301 597088342 973629388 973092002 997651402 109019027 503060975 96546134 274926090 241706437 283319910 95424756 751010716 260500086 828135967 765020302 883492334 15630148 539913226 236543716 922534730 599931548 882276259 140249600 264378718 755039785 888195377 686736725 702425972 133994700 379445987 64582327 962384697 311270220 505791800 209920748 735672442 693920729 914841664 454195246 741007131 358369340 671062054 846896822 951307270 558215690 598034249 753247061 887448403 394465341 511540462 655379469 788579423 631493798 978065969 964626539 969112838 361274349 855358035 772820934 805094189 248332381 689712534 666698991 812570780 892242293 953822248 986703099 991301424 245617604 666039852 394209329 601326732 151026556 759054479 69076344 121241333 213983238 394232499 351833433 375983836 577185956 596081603 308328207 645248030 489351981 646729391 378678195 772706528 396300666 872671640 927162190 960113963 653548456 917587910 84647128 459626951 140254507 330497150 970132911 971219373 943696962 976706126 638097629 661780548 67040360 425690567 289657953 749498499 796020410 992563184 945387976 994076396 411986521 744555504 49664978 233179064 73860066 619124431 307666619 460466360 246565640 923723320 440300061 645063558 543688505 691011713 927712566 955719217 298178381 460075844 632636558 771749845 402343683 789480705 657300355 742964823 796276115 892795812 939907820 990918870 513519480 906556159 812443322 904206110 813022060 931007792 25605514 62991133 481116310 733595501 319155256 927066487 853365412 867336971 955304598 965313817 951575155 995067548 524855116 698282850 13858466 907968707 299608336 673552174 844986797 947933078 776795708 947401156 67902475 302516223 752047515 966164907 810372218 983407406 167190902 282401005 877986943 893479123 823871560 963828126 518058268 607437968 871288184 943079291 406258702 617496654 38334836 107904746 545551952 775969338 955423113 995746590 486410035 666990896 110128851 783528680 870091612 959072947 681653080 975137351 887058774 897729732 265291337 900891217 656117631 787716290 359981866 878712959 590670032 753932130 26276257 255327913 644709038 985889476 621367322 930786655 258821953 908141326 544936018 724688316 225483219 798081497 93779910 136533966 569068754 597490021 640823155 742821130 350890126 938512123 686504616 736155575 349868140 433634113 713689843 975261063 650609076 717685110 913726631 984844218 377839089 487533426 483666130 894887979 843655269 985348130 231008902 814206795 221530369 598092524 606262066 783704489 395186342 759073385 272377737 405202335 17851950 689326233 252574568 479007972 439951736 440093788 409124337 779401544 951065927 973096182 359170622 559580547 780255610 867556905 624831492 647156946 364843279 683731626 44896823 966675943 285005470 730229948 502396059 921651950 734011672 748508815 257087368 742866117 402605073 853355385 93749793 143158988 506057589 965813523 450336602 951813825 757471063 899786369 244900128 706612222 850046440 899904210 505023402 512846938 121797620 909881763 920281962 947412943 202433457 443567301 210276358 465691503 762576438 990890966 107574396 434423992 632645722 937316018 447645101 523673435 647631822 733050849 935519405 940444017 835367065 940621057 923280634 924133255 236621863 901743310 782550354 907649644 723396243 805933304 513670845 984224615 599980259 976703396 741531926 939013379 456380175 483015990 519535506 988173840 712805321 846484138 52902137 393725687 657217641 748016705 437879233 886629545 157992999 525925633 638027604 906729223 722689354 813264834 629951565 721234981 258771510 597564875 834688110 865267515 705026200 901020969 545848683 970474701 155259034 851645842 835460551 909884869 856572208 983946205 335772909 336722755 262129469 284175218 470140501 708076021 740567774 836372226 930555359 987525609 862574295 874290668 657858094 869907753 317844538 412889227 545626989 838738382 183452769 703623794 476713196 491652501 903998446 913787804 24758879 711412667 580350733 592661383 500245510 682748229 653986737 782377205 173361151 682874659 313896202 944289004 407815485 475114949 689649468 698601219 344929629 862927233 668817643 905796722 454881214 639412533 117815345 538676264 625275271 868452403 912510251 919439340 380829043 680083060 235550747 983971774 1454845 382246652 30047454 971288698 52717360 143308748 578754613 975859661 119280605 783547340 271005598 930336773 817422678 839963330 615091963 736833410 76233450 690190372 941043598 998499168 259281542 452080766 739874292 979370677 184560772 380881535 928007707 992750053 389020422 608731993 107199722 849308132 172211426 218432078 256463656 504006383 11763484 548596464 40971281 561998425 736532599 985808554 592669025 987598537 962050037 962280445 881191741 958147068 485953307 973394902 936314668 979705683 429877791 693615281 10238295 677944568 654312169 898107338 123496072 932392162 615662717 624533189 162767498 417485982 773348791 855307949 284351253 478168183 683914250 856825500 966789321 993492816 184611460 607188867 39442947 398805411 757414932 866266475 524341965 598681528 317310850 898478398 609782002 891943805 883650917 936019567 973596126 982094459 590679488 723456872 285597212 578866859 990309816 998922330 817775614 904243979 998171132 998217113 785660653 923805347 379869436 997216187 360501266 754319723 920956368 956766041 854788220 873489468 196281201 736963048 503466556 553919968 294441638 711856630 29343103 573718721 585226673 796593822 684552341 992127572 244713506 638879528 538690576 665291211 196923855 209793579 837560415 907753975 934975651 965979687 909257793 953112978 228748307 411454154 24187287 876084580 325930602 922990560 681480863 879382451 331980557 378568783 120208796 797276800 145821903 788181134 500866540 886715660 135021124 996162538 217016643 499229609 111616709 742144115 591115106 824875519 320023411 523687023 741995388 768153787 691726199 947777778 908746634 938154542 649795509 833427484 73695501 380757884 488863961 703361527 509075402 960653984 227887421 779254548 86996995 433459724 928696284 984421787 179602898 847587994 771671594 852628208 277136949 595517142 754634453 941388627 335248136 927898547 772834657 835394100 817147472 905152355 904568128 935372632 310938094 532456136 927719502 949786136 461380130 838998772 138028476 141424524 421767654 894664050 820855506 837803659 252945325 331022549 607555963 814506089 729569264 894942269 260190533 543955938 768911985 914539587 690849252 952792192 241915776 381563863 136090579 223336681 95360481 112582078 278746968 446647754 60902451 489852535 239215348 363708247 861466646 916257247 932765167 977537324 79782595 381313785 245212279 524232695 591843793 856905283 337936502 771592618 315970677 481533209 558517630 904936734 29284021 140312497 146757476 390286979 56754260 420943575 263806572 394897284 388867928 861489406 781852753 947433370 831228069 898077976 104074362 651426254 502795220 580503350 374919440 388726136 337195105 673228921 627785705 947110163 148223715 445568187 121951358 773450031 160335842 574177562 708266723 772788190 31080271 288914639 750363615 791828562 474057074 859656581 201475242 447120533 807897440 972391373 882712317 893367177 964121585 979848575 935277234 966214730 418308995 976590284 979235892 991273193 812802642 812907159 7347854 233520641 457007068 550311929 953076776 973125327 605393058 957420877 395827286 751086254 198266934 675475885 124200636 976012726 456231623 976786091 887282151 913389136 178030619 652352215 616554004 793525541 606985805 756518220 195755205 338243388 387860331 917113097 717871607 799859938 487341106 889418375 837536033 911678194 546469575 883864008 471138100 552427313 325691372 589000170 259289073 833126873 487596556 911081439 48399738 192489523 707456178 797907609 374786311 822731982 62205004 161109443 509024697 664306720 244483494 995701201 11759342 885968221 42569375 962187758 582265919 746571069 143170532 794076026 587889254 871500580 452685495 635752900 953563959 968598191 365910059 662609423 257483730 913166779 811409483 959407400 487963657 744309765 425191450 995699403 621260775 973781497 672892844 987415031 406329652 727843187 283737357 637139054 988999715 989930084 990832621 995891063 788705701 947650107 704300114 959723524 802754574 963654930 522049463 656014665 512637610 952873634 411151721 597347021 565912149 625249445 253700176 643536598 538673107 572880742 978775826 991248663 176892733 608298328 714931487 848654012 679850208 701707308 91175089 891086313 590388630 884521298 865706867 977405606 651729107 829368092 17976476 984108035 963144161 976381009 60517351 608973026 135841380 465448751 615838620 897780163 378326991 465857990 132423977 692328018 416309120 693617040 729228923 835712913 779426299 789227219 105219011 288300661 660976689 749484397 325142306 897408962 812470612 974510846 484905540 701363265 241750399 453444535 70610480 714566601 470475411 584277284 327162206 790775764 83644922 514204938 695863299 704436219 767396004 915033946 246394919 477235191 10653394 538893385 645529030 984698203 843228061 949489822 97788422 205295189 61709031 750387689 105242017 558229864 723904481 793957162 30765710 425347785 843730310 935271437 23387102 197904100 521938642 640438364 428818298 888869624 229176523 924342399 355919199 997238143 650917303 747963921 382834366 610405866 277724352 365846338 707475060 988144639 616317026 756883545 927896517 934906418 33283375 294696654 872460953 984158237 530331854 874616272 437496281 940362913 722084700 781552836 952120922 954291350 255902460 845089694 257008719 977593256 476093760 929452543 239625691 835319867 1727639 129963967 70811250 886996155 605002469 614204519 948660766 988373333 216113581 293190159 15288151 876040495 336723380 481757294 191432481 761920903 231551753 391499699 128274906 526558737 391931425 400536564 27998737 74721114 149848013 282941710 720406739 853713839 837485279 930567969 766978113 981152384 692477427 806418976 197679273 710536495 827293810 919962457 702668518 912288025 277112084 409802835 39401456 576159669 433108255 882800056 163510013 238015174 337816896 525978467 823418519 860377047 196278424 692583379 545484927 603004462 349239272 540701159 148447231 444862519 827610998 830646884 919055915 990485870 976894803 982692175 146135460 499097232 168775724 666353411 847706265 929768208 52877961 814370523 302386299 951560407 531815952 554963876 830404761 915004416 169313753 620098842 811196988 926523219 522727906 730033212 794356090 801473592 575936677 742241754 919225077 987415025 897270316 925673388 564776167 914912946 516918726 761515837 981511314 996813007 705238195 986006783 292472283 704423739 439221006 543813367 207642827 640277529 392883372 527924090 197726006 229694991 452158692 987200017 201829930 344065451 981101569 985106537 125505132 472532236 571027124 663590856 517668132 938771071 297767606 532211487 781077972 927539833 82040629 893194595 884159152 922868036 165818412 972173548 793036314 848685682 205983479 473883022 100432376 237766560 201260012 505287337 698414902 838980413 456652783 542418332 739371717 774624712 350255909 866346303 955645150 990950702 322965905 547060653 971785222 978205912 946842822 949527247 367539679 559296492 837747364 876097098 271083813 487401821 314939921 345542259 520615056 751391434 90765491 553347203 770170363 986214322 761679301 818677694 882354 935188584 94305416 857206916 64357492 137197095 936035799 984614127 356377642 442983214 852515888 890731670 71529541 715372691 974369905 980765416 757100760 892937047 792644399 863023107 352602312 733948148 60058848 259208665 905743012 945594081 189732233 698151425 35250379 507454518 664134796 733129834 52782488 869891528 997187362 997487445 251886567 263449523 700503656 959958045 670418890 681485377 31021808 231180932 816941978 924978919 185523100 218020213 112783257 863043896 75118150 492724232 337388497 793631013 77090149 673809453 692615807 919739351 840522943 963842499 340325629 470802843 41890973 538450194 317433108 618149083 474720420 929229674 692639665 831626060 915798773 951455755 641264865 876658084 958640978 997885723 309658821 809585165 930451745 953006740 479861678 734306726 438450296 812531568 53118977 401035013 872411013 872886858 462993462 549350380 31614514 471391743 236299413 959213574 701265757 964154611 683378006 880185322 208256288 962358701 965467640 993781601 377435543 828309909 990409353 991127707 476046051 939021285 547694694 925703612 31254575 573435279 721789471 843766922 779172855 995486919 892938336 929327121 771117389 878814093 326440904 985913569 862484028 938191297 784458791 904487843 585835029 792546338 281737231 368083973 565249392 889389364 24770119 645067040 263330553 790016150 945570067 949537090 664767373 986874307 850004901 979684091 664204321 733959817 639723097 642182813 110841344 495373664 56537007 302831036 538784422 789621309 448970231 740371544 321857328 587643851 153805574 212375840 351611563 493699861 215603142 701091803 364090603 687231404 690612602 849507374 161469984 717018926 443235451 709172619 310525836 398340477 808287660 872471038 178365843 477974379 588039407 731855629 511948764 582709957 225637299 386915382 729907894 827987962 885558902 887503570 904641610 922460273 265725610 854821596 401816991 533836500 901450956 974723276 569664946 585592059 695612785 848594861 542318451 788488535 874295974 941769229 455194207 551095941 192882545 944304589 586126936 596141734 449357044 655344687 80843470 737441336 352359456 904490942 854753002 917685345 296160683 861980042 769730143 915608782 749182823 845506271 792658404 963182256 621568327 687653364 491359763 717569832 979119878 992367201 978862012 985162366 79863575 764354555 299752423 471901478 973994630 978729701 423708459 531497543 455915528 713058179 283844482 848788160 545142217 859153010 918712106 923039425 572565663 967664506 691743070 778298133 408193353 997121083 266362551 319132695 370203692 545987229 473380945 987955707 750863288 767529794 956257858 957805625 73100916 431782553 761032266 902172224 595572309 658572524 936663820 973053534 164854674 496606577 439973996 680634525 660160059 723146449 636156165 745296577 390697152 474936262 723114042 725592562 798149779 873671296 150400492 935473304 992878045 993838584 558453729 854918770 99810199 227962257 491370366 954600043 985619200 990596777 804517493 820642555 369294760 538962656 836530491 870331360 501578172 564513949 747565419 920286801 799725580 917530051 232996334 689900962 320573414 875774525 915126304 925034113 820806003 859279813 497537408 778845082 517057848 846150231 96436135 982156733 999217518 999326115 91840886 473614837 435633047 558872197 314390617 981000054 296964252 456209307 622799736 727285306 423841970 955115136 209446462 682362916 137799135 557650869 762113479 913910303 94837571 108129681 790964377 837229960 973194807 993948698 862628074 894694301 465679191 952095384 303620068 432322401 212035054 860455940 258048981 650066991 797399742 933162967 600155036 678005874 543452154 759652677 923388351 955901478 142209033 294199273 847553935 873185689 366029612 661577556 927692464 937705421 967966590 978788129 516493791 886193195 792898111 966086942 694826730 806521620 351027437 602907592 422257990 835013244 187534325 731158942 894548313 979371563 792617105 893828802 705138090 854232673 209914447 814516837 216444486 652611790 20192002 187194493 848358962 992939487 543496517 784029745 147448290 224495805 291856815 442319368 461013643 612788584 289748394 386463907 330778801 820919731 928865825 939367760 313065530 677755964 593182452 759350248 318336232 460203920 534420942 760220530 743976850 750571652 947064419 959239693 508324226 997033877 288255362 965047152 711820736 852509647 620950896 867710750 541109316 747452787 473494920 898876102 9923726 320483111 673415707 792637657 769488489 835696979 303533283 385171376 975018574 998016320 870743992 921086153 691585205 978650695 348026823 890954283 461259009 546431467 369185816 915974471 394396711 994949767 555086144 894477017 980800957 986571645 826609928 831463906 963282741 981873111 339925785 817247954 341505515 462723366 746163550 879291950 40296544 179257277 243742206 408168624 597929306 766220699 82022739 197759678 243562560 769956359 748840143 979928521 431602024 515766727 746078096 878338148 239896074 417523881 661558721 890474036 169188778 990464685 266243375 802515394 981263973 990096934 449457201 751782476 610169892 963648794 643522805 996111025 769665472 910001724 110590112 225963437 350007639 386441023 815265050 845557037 517818170 761353201 761677777 897215578 613545446 631287577 56406326 94598941 251613467 626333151 944023902 992170819 679079741 820532614 899818100 916081233 670370268 783668184 996068630 998883668 422805589 896331340 103806622 715032847 583588994 765170312 765711314 932831538 366543025 917878774 19269405 390591681 524017354 917993104 245068882 786215797 210991530 600569601 886356518 984405874 301290902 478681807 19050174 633130879 936827039 993260212 118915331 460631453 525102632 869005335 21525754 404634120 820578696 989113237 408473413 812747314 411455452 480824863 192673491 478345935 244305826 971539107 186800598 537679001 197570557 857693742 878352458 937466654 101388408 464688866 165765269 475226039 555120574 917269813 316331937 473476876 475723724 714946805 273401239 321560095 510741603 663828021 899658798 992931132 930673130 936030270 806651095 807571919 353663015 401380597 877010519 928148948 564091447 929221453 101690039 434115875 723392843 845944400 983936512 996258694 259722261 771647366 113020848 530502788 129483552 489661447 630515887 643922050 346416146 987001024 31611760 666635940 348761248 990745263 262991268 659047698 576606256 792174045 696661866 988555953 138907776 544205804 445639574 794595746 122669114 378822578 30658999 67968050 53977570 958856933 699666381 780710300 321723610 704688580 666227988 835515852 642194760 783507786 747183072 804320149 959862827 967340343 817821962 988715314 805747369 899026227 134271235 823396477 138517432 415017899 940792716 989758578 176198804 489213855 341537171 924290691 900790065 958235201 964996849 990482532 377475797 816815201 533627133 605634449 965526571 967453511 592179129 787712980 981426141 991118268 305898167 814984485 387711332 554725660 65813253 931858497 578854042 988236789 144557249 630103012 677762582 889356981 432557570 987159107 313105225 665362589 896095193 997398992 395651549 710403385 598737403 645496127 730490337 757594924 973365798 978806948 17009504 187417411 845554440 854585750 840058042 891753303 718250191 898189912 592236442 858511221 554914849 714848473 661186413 707850253 752358956 883231931 7388374 449834819 832708632 910353168 262330198 565331097 351869228 466800773 544329252 687680720 390681117 529101866 830838633 940930933 172318330 522658839 728970894 948208156 955998267 972926061 837191884 883002901 342676352 902003260 884937027 972840303 503012311 607482003 159523408 652233400 586862079 949864935 354579746 523078007 489482319 975697173 899260759 994397952 961502671 988542303 961384450 971750371 81848896 91668129 222238546 528409699 409076991 858565692 454441031 566067888 776565904 826187276 596790501 902305048 405148668 870016843 661139318 688871228 130457420 991634116 635357314 933815855 833685894 978929530 488004681 590168189 541729333 817165306 39070640 972348172 65046551 618145611 979473395 991413076 359328464 662280571 656778831 770216327 359134168 608451613 371824035 714193089 403423608 975258071 365005439 953841174 105519486 471862247 650656318 718553068 898865087 954079297 174387538 779658318 389838900 453512995 85226652 249252672 401851160 830252315 882904393 927689605 40996344 492939663 652338278 914832227 977819495 988793253 194998004 949836352 567918600 888953958 785891627 982793673 122494349 641011299 527989401 562340876 578530813 684324207 560805960 808430484 963172050 968856912 248898448 542841011 357111656 628134586 860523010 908696928 676116891 762907600 117236610 417202307 85937346 482363982 511714349 627897771 853324230 996114567 452970801 913387430 578231380 793135917 326265035 961827404 210800968 414636356 309042882 457692982 686089355 996043989 340340674 373688921 948439920 983037369 82383581 452706251 523768407 656328982 930706873 961940016 158479775 480936926 338326683 468933537 400834745 945838747 173224979 842341935 420213902 428621271 150821989 553581243 519050992 527434285 324081393 538886717 770892126 947323545 539923589 917196558 365344836 689238733 821379787 840649074 826012845 941309384 392275672 644551541 82550056 608995025 618678366 696222475 112766320 600667558 409437026 724858640 15757524 632321292 188866101 631365522 398370530 737318176 700935861 708468857 877754508 935705748 544479199 721163206 342990682 955877351 824617257 899795136 406536133 938156505 416059368 722105798 115606743 528174635 90725892 305299405 762055313 772466701 528713810 563738144 290559920 712718595 799213167 854495448 920457247 984334458 819319740 919753983 516594178 626956930 684890857 977539540 817421485 837499922 346585401 951167640 390343314 903342712 301723615 781835005 314972178 407565965 161195691 616048014 70410640 732452145 722629297 995238615 649691446 733625567 457536586 884171784 118739312 243697454 585869398 975475399 102160462 759444089 271109114 922546110 427445583 880728896 268437704 742170384 610233533 925429543 439715803 680731936 347623907 450523800 774962351 962163878 82618388 886492550 805876019 843754154 929659661 930513122 10513441 696704895 738232671 882352997 284317323 562088324 636883574 778954230 645210424 722058912 982791785 998561297 502953870 813252508 348516510 861001335 389393140 925257880 606809008 898398517 791051965 868978788 206487188 290897899 535968521 772664393 121175380 375665973 684820969 793169262 313938102 776326397 152127598 154616709 749385459 870607924 87656799 303726608 650806488 871392235 795465511 856399744 81846105 573744697 199607425 518046563 594908345 852008903 359264367 490577665 925277785 941934800 683856508 802981950 122337396 942363523 183782826 308858708 393900609 601012800 403739119 589031730 164883205 476097091 458983342 755414125 195169524 402011928 285228916 495669689 45766337 861144197 963034007 991519795 251969465 454841723 86994510 365761181 355511228 525982166 332533548 893179320 848041639 906954118 635066431 867693021 265038859 735258808 955384565 959890315 912188892 991845433 231066988 938085148 455778979 811775740 560964300 977339058 820675007 944575873 576576218 937907422 452087236 492715995 570760778 664499672 396980896 571464412 369410606 807390087 535076035 949491441 901205554 991919415 729189239 748864511 977838207 987167024 363279194 910912041 395136076 719604915 395015975 442279113 577024695 752657145 875050108 904738907 872950949 880894846 582564381 809264165 964222049 984427635 372278024 421934602 70504966 597615467 88261211 658457519 402902950 713973049 113364278 880990664 871312089 883339701 310859338 853026954 498238929 503555308 816779772 940571927 730019835 731765462 466311240 539952756 493010521 589334467 327878762 559750950 294292055 904723343 889138083 982095631 412759908 447578787 413529211 933452697 466729601 768677839 30736044 502827632 653260595 807423089 977212547 986790258 963784329 986681902 943578600 951146421 664722640 710214988 460143119 698047252 638684186 659644098 723516602 883853980 640983898 785642278 214310920 457547212 878531260 973749511 885551394 972038233 263407836 416706596 233451308 600121783 329120030 669045731 782481795 850459887 546493071 694443806 981833918 987023278 94233951 861571572 655045339 954508000 721181859 969162331 916902829 954836979 210100077 874283760 193336760 476199896 786128986 993490043 117900959 457930958 246769026 259305878 1547061 278115374 433161423 830675611 561524315 782374025 759015552 788362504 365509724 518329117 350956081 565460360 571921660 639839679 788048553 832289256 370428816 574386207 75575465 403916756 250293927 521879365 233224840 459079627 305367830 462415112 307457651 329292052 489812048 679937706 790815248 990026522 848828638 967551431 366169153 552958069 578486112 853048503 959712892 970237949 645767358 675333233 885935209 889589417 380479480 565645941 721214495 827200286 846890839 958309198 603430088 941260013 438840131 976114406 969627266 999084981 780188707 937870274 102699229 706809212 366696715 943575732 498063419 922445879 370534273 798454748 499221920 665831499 189764026 882995610 674325205 927017630 528572558 584696621 108885722 743788807 592550966 657204776 318482059 675523069 561493759 850606706 600506738 856448584 889897347 920156879 429816061 674899882 403740918 750497975 46015380 135760165 818682363 951754311 766565794 953770168 459854300 560333351 238981586 491733136 839523206 946869631 659398269 900760793 314865809 405093063 755794007 988469275 967625186 990076802 506025475 629253742 894406284 901418277 890416649 983973584 368827788 600400906 63982561 711343312 699464925 748823410 803504156 962883164 720845575 841883488 868473611 881226026 795711523 905574002 332637529 343523035 424614280 578429480 583281430 756608838 436584039 806509736 43067481 168002614 3267132 596384264 907690402 929332526 482672500 806421857 208985128 509976677 204906699 447269641 211827779 607279754 43306889 602912103 502541852 751618166 132203345 293434333 919633679 940047163 327642682 419009603 499326010 585274623 968159566 969430111 637517558 903792777 457329468 818284191 866646303 943266551 588287034 819251160 942413523 999240306 800784940 836458682 130084997 604408208 938216371 961818962 549360368 893124678 67788149 604833657 539645593 673320636 51579054 185969960 314244796 627839456 734406721 775177656 1474788 173013485 943153148 964831936 651295658 672793422 166434280 621869164 778507865 964329479 115405599 258812270 764627326 816358074 318277426 901912265 23203775 825987120 167789766 801316268 413941491 774045064 368217350 661490480 502095643 717089170 886860515 976890434 194396051 942519032 732598496 818760763 727508042 918000333 567832190 640020265 755081303 929516767 112275219 903270650 141911764 220403492 375183724 396980908 927984929 968983194 868348654 977633134 985559287 986343020 139575323 704024608 983523552 990347490 811033034 894064933 23661357 954358263 71869469 684944775 467466227 850780147 129943422 943013080 421797650 450286989 963756881 989285354 801234529 968410177 282370950 450047068 932740412 980939894 731973862 853836966 813469419 919012915 673801477 861926033 977625635 993072033 624651421 671417352 527237987 655225336 558664148 632908186 758617830 866304127 496842974 738001797 909666439 968113497 425662838 480427625 57384544 715967460 534219519 994108362 670840911 793196800 714454376 928206791 86383255 509147083 637253557 757116126 594404135 932087568 54520996 621377737 247196501 493755388 130489294 986090163 479020149 694812450 2214723 996776736 941976341 998987818 776476417 962059457 492557452 925080563 134938990 514425831 97093936 638336354 716325510 936742753 246059144 524735289 155543390 883900740 418261363 966581726 720755610 918849634 956660118 961603577 783723002 955758409 287305299 592784387 212582240 354732319 344310217 789701448 379951022 845110994 898943852 992327514 768890672 790953714 606513238 633654991 19732134 344464272 135047669 572069766 796842589 832631273 388959814 644514704 272636592 944695634 850283296 916044139 632504361 742639947 38078971 928395068 426187787 694190239 847680482 962518586 531554845 718942290 902808804 945151056 40691733 162045440 139511088 238146510 464917577 961335959 114015258 805769269 669718499 952721668 840647271 970150929 174547331 370463309 227734963 702478083 835736320 883000372 910973278 992111368 688377791 915269340 112818024 296807241 232569298 867292555 502412336 846253296 807318383 929290118 189721140 799426493 714220316 789388573 72962009 950789590 429327582 812409500 569658797 769736321 896466080 911774310 368258590 513861120 41925454 917544944 115421880 401244483 513206423 628400545 269128320 816699069 756875270 880151073 716672754 743259776 189714707 349886660 834670553 840781743 392115469 624024908 192928123 890121268 86334082 805141494 436708357 902413425 562615136 826095325 81430267 113589823 632979706 908431556 981530899 990526798 416211683 647266856 144655988 727462651 270709868 303407244 996895918 998616505 233327992 429350298 267173430 891281944 186863141 471399674 892533190 917283005 535343728 976351422 324276346 399691522 753203309 801465671 197101644 986354767 533367630 719580652 336774793 699356359 86788283 609300586 806328110 914568192 275749098 440875449 872375857 963684054 891407360 969950049 251387371 893444218 960388332 975276491 966023030 973284038 159169394 638337470 25107264 571162028 159647308 940117525 14199816 654550709 271704275 784194397 970939763 996003540 528705753 743522618 418001842 611512092 825595837 933978212 531234338 817162619 410374730 846615509 4686727 767148419 758088385 895035179 50781451 512807884 21148936 777487638 33156768 497408086 770902321 995039137 52981919 902158751 299752544 310202035 471970040 691701095 667597215 690244512 801660911 831245690 958752101 964622871 735490040 998705223 928958395 938351707 824084472 944866413 868619873 982865093 844213344 882538501 472665041 833570500 5884961 674775964 819179624 922544042 791710190 893108549 224443637 413790048 139766167 983344966 779629844 953132263 901086004 928821406 794874428 859510319 324167428 522897732 852772569 879559674 891231703 960274417 454336670 850192562 702223961 741804000 856061840 938076613 427214732 489458222 117425424 395456870 187371797 362911440 963634439 995250610 731208774 957698444 683345800 792584164 319225813 806273058 616955143 800339162 251713283 553454489 112879760 262065280 359325050 952762377 456396888 836949578 456709684 782298530 730874495 995116743 179238864 377293523 302366734 725628922 39627728 522370940 311853646 376608534 80489186 261132794 442499618 618595223 552934456 944762373 617063382 792498466 917920935 982565418 541303143 693783434 931918432 995613464 328410664 627657309 226169704 950413169 914355203 943729157 127663888 171248615 956501730 956973613 797014876 913386433 914793557 941339950 604643732 714424901 145615782 618861638 485600278 834784631 113910440 540090957 723009496 828948706 767146914 779847860 521308040 570116955 603557531 746123152 626084233 885643128 478600591 616854222 54629706 790826372 775865518 825892854 25178412 234291356 68310 262904418 628330856 748585898 907717732 960956774 743435936 993647253 989681942 995191260 644209917 856543947 230355382 854519930 783359184 983828025 286324045 642754767 700161768 922596038 778747912 846299732 914014816 931901831 729541787 978865868 952058916 963357309 381860602 406085407 293569748 572214090 932062429 952032257 440073482 665630624 395057216 748294477 848781121 970403267 998173817 998692364 849654204 855182805 119644768 605940829 748131641 818019969 74986737 880909909 564273810 756141141 358722710 652325300 718362591 865156723 514202517 579025162 822938660 993201096 714740916 871308166 656612093 986992752 718533207 949914273 633383370 857910492 568293454 713953697 735919547 981755052 831118222 941509499 579640198 808205826 359956918 639196802 416860295 953940046 701968884 906649867 710036755 796464608 165652850 257374784 309196101 321770068 241609628 698048003 893215641 959171026 944500748 983595390 301773817 540201880 9003010 559153423 533479175 875061890 117531267 339555131 26571106 703839532 519987215 892573327 175816331 480667764 430719787 853719413 961065192 975633252 85436714 735102657 466908630 663856029 541617666 621618518 944477598 973369647 743734492 815161618 987548708 997469170 270133833 932559577 741265125 889396364 780103427 941285415 363560830 820904062 238399032 598261678 117973883 943593607 81103519 581302328 523695290 891101616 983392424 988477337 135997948 696679772 663288881 882453285 742343186 895128199 305969628 837203265 98171987 736360184 338248805 757484955 487975968 998034880 178295686 515350042 12286796 261593888 833910267 849851525 157484302 631014370 150606285 529035894 66765720 805235802 114118308 193053688 677996457 946622449 954830361 973638423 389728516 888065597 665566006 971619467 739519256 853453994 964521198 984583783 953724143 977250762 164079977 336183508 888252878 925982138 401222339 941841295 466437197 679576468 316140568 779292700 517116176 854223384 709188974 733830421 492760724 857626457 480605275 901330944 810034198 909147169 569866965 948495940 985821061 991688668 746329348 797432725 812821427 954040198 915981706 992021981 646781665 841756789 293717641 769092208 448659429 616835671 339327002 955046663 100170863 586321629 614507894 669500371 150350137 280611158 11209727 966565734 62012406 613580688 348771868 910676226 605332531 844304475 449208909 621121356 918111349 941154058 919174765 959962814 792028749 971029629 609204594 905883718 90769855 641446152 642766390 831804888 460908063 621387956 42269740 796763921 711614458 785693657 845806212 951326517 479380921 524591531 676413620 891014289 899321812 976387430 903414626 911931031 516148572 549342977 664655065 765564518 394019108 617908518 563319286 619075708 842423747 960241690 203802363 363865046 841963124 899454017 396211594 641442878 919435503 959124596 420406276 875676055 654201578 767689330 882979415 931395347 47742530 512522897 143984006 830364056 659737998 824006890 220507167 632512792 622169247 903286113 845012275 917904206 462943206 881583245 441064042 815033919 286971214 304041865 592497434 595305268 243508198 782262122 854619175 869891935 121596455 386040703 504629374 663408137 364803292 932921354 565570683 640971999 266276606 847440334 201962379 943346235 621953799 946937522 847820849 915241059 837083875 954968325 995412466 995967998 644771186 911869308 483712166 549677189 759625172 791971884 646387549 901069170 920118056 961700218 816487814 933546750 839868312 996941042 716253645 970596926 974742728 982943568 600982043 689970931 231451634 429568300 138964796 670921675 412553614 525848303 788503372 927887986 273596155 961685591 699006912 845560297 879984884 909900968 273934277 495348340 216208318 276620864 364754019 628668762 27159531 473407023 584601795 629440752 299235338 736678545 341118957 370177697 469320863 543834129 349005720 392050733 343336052 874561464 476883174 616272520 306901634 790645892 692683005 814107310 497238380 524563722 379568372 734737622 8927214 353345458 398693771 524325834 623319636 814499273 683488549 791148938 381520807 647047908 229246042 374351975 691229570 715691088 333128501 355203996 714488532 751944841 225175961 492581183 838518118 962861709 98852945 292151924 127017954 225093889 393250379 432774965 910085774 976693283 583558916 913370959 661189701 809698510 612235071 850261552 23695482 653945273 606658748 983287925 473888338 497126824 712365142 946901628 731098007 767479363 279389193 833134482 552217115 716314605 450450419 781324988 623536322 627733155 58189794 244330114 219698632 752699006 757772995 978389082 843951453 888671783 746502061 877804045 626259097 702003226 838613096 880335354 160278710 737498390 858185564 882127005 844214232 984644921 145861261 463831204 109787955 731049885 254581864 809387629 818691018 882960119 750351200 904905481 727309791 817063603 143063529 659109543 726303437 931947675 711038995 740923512 456660172 506276490 831419891 877959953 710523274 766791856 803128567 902907813 684649913 998891911 900335115 902973652 5100866 337028005 668616604 725871538 671083763 878017845 590925764 922457568 281446132 715878205 231827236 742526373 658083290 670196186 772860058 927831474 615472123 835687595 900452919 913595397 686876346 852657311 53988016 855872840 200986027 705071774 181411273 602114337 300636668 818068685 864209879 906062315 377221103 594370101 205918334 941710600 333993419 351722337 638253299 835195287 710708262 892710586 316377005 888389540 415197078 866558124 295773477 533096311 443590695 517165789 454177891 589513982 193986218 530307094 21077720 543795487 764264811 780186531 56995504 140771328 992661357 995576670 669185385 769112010 540285533 870350170 635342006 699994460 415575728 579400139 689425892 998427193 593962786 772744586 513653296 877556471 596988481 632877685 161712019 873632134 130771142 648635483 702570556 992905613 645753866 984569950 336386905 595812632 804588474 894897455 795662830 899571002 489047858 683588675 925701804 975081365 245078250 685504632 470546983 767611634 874573638 994440251 150672400 585739917 177486364 690504078 949334574 992302070 701180149 752649185 802284390 984343129 579832107 906174973 96808744 329110718 266099294 799819652 912471138 991587133 441668106 924956799 237203974 753487786 15248561 819679499 569992789 954716350 4979713 304806815 955922742 957997896 996472900 999088308 605799468 669962968 408010814 497043423 559841898 916444397 19883415 826087851 106792961 531534982 973661665 989030863 100096912 617386184 610406263 812882202 615298783 836105653 588543842 995030921 233716743 495506990 95499489 375182491 354541740 864474546 420443743 770452367 48921614 962296896 576636621 737292811 244404404 555217512 306203978 913409932 835247941 842176563 459848841 919303185 364961268 982040374 80887532 385955771 223773958 456332321 294516608 940105147 2295554 258805173 575669234 575931818 855903044 965565878 544313853 674452000 811188160 924331338 39053217 561093585 397582116 543226395 468007750 698718394 267449239 382319582 286897267 388380467 303759103 354639594 680483036 943010955 643726445 978696577 402240634 452776948 907165693 916052609 119279394 393868624 854768780 968326229 660427107 800073982 487922653 940973283 399332610 514183808 840251586 972477663 104908568 889567482 236138258 261711366 503610636 593439361 205767715 962335546 253637006 636233379 935459158 970745839 467459629 510301200 181298844 710813768 152994994 403155988 825215382 834912842 435141716 821464886 509871111 729313160 105740005 358919937 155550860 364237967 697099936 847103421 403872462 410123141 116693132 803470560 170907965 346144375 443309410 596976763 220236683 496743867 728509604 781084620 247430473 409203910 175283071 896043571 87735658 616586408 579779726 774693004 262898241 429228442 920523436 996170240 824926108 837391096 640221670 841610660 359448930 698963399 168407592 724486912 970263893 977077229 129207069 730067837 409127650 933646369 746586571 841817803 206285107 490967137 424284121 899010158 650369161 980130625 884540598 927104389 741927468 813700926 7978943 150886659 35887102 583116800 758044985 866672151 632652789 968892616 274317876 400211678 622649759 663135653 872087623 950566418 185629471 480629120 857821554 931749305 784048285 819774449 337090644 413111590 573525968 955024510 549229753 978317626 891571873 974829313 218722810 995559416 109597061 771403177 478257468 870945157 253771840 952329234 25077780 861583876 278763729 298779439 223019784 290865670 391617522 965388833 466563152 976638862 801566111 837995972 530098881 864324797 51386911 601161065 249095120 469249921 76797581 159268565 143863083 954159389 377795819 635712150 581935891 868608601 892508892 928164561 574572757 771412493 186246852 832058435 792147554 952219145 786407464 803005190 464049959 712775103 228043076 943037693 182755790 764270896 928330459 984829472 855727765 978455582 11284120 634825996 365089920 856681266 435174188 726488144 63574014 701995902 141941833 518751103 396740910 953719715 581546502 963434433 247615018 297090696 31924670 737117941 974905571 982700032 695075213 959599091 676473669 719546396 14502225 59175982 790251569 994538992 997241694 998959713 185342175 440584846 804639892 867523255 48560776 517972400 860467887 913793698 296310165 327828745 303592773 679011888 191656372 299549573 164270658 535428904 91722069 538960720 870785072 940855069 261901116 269736452 306185176 487161301 334714996 444682043 182511241 686171462 690370580 931428344 172969356 997296094 366807813 938533120 408800628 645379832 821185157 913286084 954714136 986664425 733766674 784454526 774394344 883174616 897997897 928575632 42533933 824431442 368060430 539765701 756763341 836101336 990557221 994935324 393699605 516462712 25652604 331593260 843705309 991245049 803475953 896542212 996280884 998819890 666178347 736033270 340870378 830949531 313752859 445769897 824755680 973669129 937045385 991672854 608286946 914186626 362104155 772809762 296482710 956602694 551720051 613757915 341664620 489521478 924377594 985190168 157725811 676589868 547493297 603256001 417273935 734530521 255593098 855078103 873581594 882651874 783565149 797185057 979330687 984672130 394718496 470675760 630862180 805098624 954525438 985507556 33272246 57632798 109744931 793481908 48628715 92399322 70045310 876611423 35533304 421082189 415740370 450180534 671090924 843138175 182307359 509687489 690269374 985442228 543093621 762787253 144601527 612409850 421077050 824925116 211846053 315836562 115901234 823184673 698550237 764871758 554517591 903872756 36593650 344326939 186543065 705836638 366864164 575089083 986432034 997659620 543761644 852843929 663962736 755011682 424133160 537381443 641223494 805335129 304459997 678685197 68279518 688227396 53607166 793619417 520480083 716402716 390688730 568212995 304918899 405318354 409499207 445933812 314670832 321848988 418342855 886226532 846610092 998448818 795590677 909631166 126745717 373778654 155451132 441585772 191425528 458626605 687820673 884756850 400517268 856260470 336763564 374016309 115476264 123281287 811226330 994522423 168425682 312698807 936369613 999055607 409661335 930223807 105006619 987871600 79561829 833566002 394205801 976253488 825203332 923410729 724849215 772965086 464789311 730186272 372737527 783639163 759987782 883717034 198080055 877460980 643092030 764544925 200891747 809887883 904652328 930863519 734804302 782681342 608286994 609660060 374498169 806609485 385473245 697020945 146554283 297701885 811011781 919421941 105039582 747540557 155900063 921310182 186474883 394837373 653299363 932358106 571185251 607438444 764655672 818824636 13600823 318109395 472745019 742143261 395032372 690750458 863164361 945549934 91248175 531763463 891198090 998361608 206490008 539775415 53066973 449814354 475944644 697156518 749067871 964094194 483619452 932549783 505528764 897288356 428039768 965824372 797620048 930839832 516695336 621447296 325940303 933265982 251172758 559052092 648592543 873838329 486651108 716900811 469957414 767244361 283266007 660332720 758193126 866011215 116544735 194152787 687113870 911296045 424985411 437663804 851493133 985113409 115431446 499689853 474159233 789786481 618624153 621975591 245865660 790809030 762721586 890964765 728771072 758118230 193143592 581102300 853138174 905948623 914198456 959813991 245249417 839154783 232156253 831277582 245643815 740800035 87259674 487523248 839650479 870724976 840259944 998701768 357921534 974204311 678489715 959649689 696360587 924936897 772550808 925590461 878569583 978779537 280705562 480878021 19195566 615289006 156925038 363598210 306884461 964088463 172391485 412579190 438919607 788378982 775864579 948962294 473527940 487243129 76215349 670149268 933859396 991360710 151506321 283958954 178275432 345487604 114038015 940501380 994668084 994892171 108160725 662467672 192139253 247980468 203422860 996666267 373106769 541786664 70337538 694507778 751682269 787664083 600540041 624248220 923190739 984531796 196877546 505573250 307539937 781953878 644701146 982830464 90175343 707867353 539421383 583825753 275343739 540855357 488723147 715966163 259627983 363384273 754610537 913346469 34126145 159937896 828540431 996482786 788271697 818026932 349976878 353812104 68075476 677300492 345292335 664481276 127623925 167321058 438474570 514317820 198159579 807575388 743840938 815107412 680148663 724014165 769197868 980282729 213792779 254279590 834914790 860877069 540561553 577632530 684448766 705581124 825047029 961692706 80403425 403926220 835648542 975981715 968631415 983287770 857952958 924818822 191632919 977010555 916361401 930491076 991873086 998549703 821427716 936843553 249242074 578383362 602473191 819351372 211727454 641227733 999164172 999278724 330007744 691411158 162313054 190703872 33744938 346614900 229883820 541870967 515115349 702518476 26230069 926521961 274401073 675325200 163432059 338118386 754079404 897671214 663802552 767759465 22387897 429913157 521008774 857520700 431309580 864164665 20615812 579077947 262113061 561639809 677091177 953844199 335291444 488606694 181611139 996841331 357115374 381088455 771901775 850079066 111444820 484616909 225694520 527335791 533792341 689085182 712663201 749916038 223573865 818279395 867057722 875066272 549796594 932649709 929771853 940148182 363087883 697720395 515135806 916758703 796385457 929838448 266920636 551785288 52927535 840189983 511734266 594238254 883054554 916243059 307447491 819939540 31051573 976910719 767282462 858585572 846267027 986602314 988185798 994186203 455635699 635788747 159022650 566609802 984292329 995750655 80482393 293926730 658631192 960360659 776820662 837720498 976275002 991654926 862663549 909260647 975238382 984136475 547672671 958924499 255838084 736984209 510289617 992718347 202705615 461626162 947100716 947551913 603596234 925734967 343381376 432260155 986156598 997491634 602899137 893105312 592109453 676151180 78603286 258714364 969321479 998405208 598556962 741733751 137933250 378990813 509018691 809529761 940728319 963017633 236118851 626884570 748946702 807205135 576723364 729540836 967463130 971091144 564355252 980086553 479088623 734270424 473565796 823143191 321806811 492072007 633578745 829172488 923550960 941798769 799886820 855879448 381669582 898621742 136094898 783787680 22553998 838389395 169142957 321046608 742979621 792643474 691214922 987445755 751196095 765146999 980154827 992848613 976712476 980539033 174372576 462424754 231614822 921074756 804956810 907845231 334886901 797310398 104668757 820646184 598600335 932892474 642312471 792441256 314340308 568851042 956758887 984120934 815378193 890804173 864636591 931283130 136887130 419839752 967261712 983158315 358566438 582075235 162509213 389900009 654615051 931527423 685579365 885371381 755652062 992230385 291028700 461109853 35968653 88338284 3111331 673352907 567532631 764280265 607220092 695683244 654228727 864712879 198418452 528301164 303063972 476038560 501573385 811607915 767683498 955492206 86625922 179190750 394136381 652589880 24203700 35041315 651042484 804324880 624615051 709995711 348240943 868471195 191332683 237086851 777404856 902234183 295298971 784701326 746110434 851216904 982981379 987079408 825369743 947573885 702149531 972174083 218738835 533630714 760420574 920488697 368685459 569858828 948853104 980350168 391330200 656680021 121762009 642426403 90394787 952122999 988954482 994385190 144137981 866626669 441647609 735728458 365591125 657658708 753181147 785651475 189677224 222505372 622586449 920814257 58476633 105281110 178750859 561187657 117448853 720480475 301088061 772506321 668507201 912764319 192876340 949331737 171018844 512372755 693735799 816082347 954008563 955853544 194225503 859862979 440522081 986823715 484848968 680140448 37324655 109735438 64197319 588249771 399886739 705828374 575851647 879877557 133999494 630356525 206993205 462781718 623826925 731525642 745966864 796641247 722228506 822224570 627434907 644067097 970505110 984590825 939735387 964644516 69417780 671519123 5281485 581529655 838704227 976375815 799227380 887210003 261031017 538340080 810940125 885119765 124699091 945696309 29374466 989427589 636373604 906579164 942647666 943484935 820558472 965494348 583251255 639704438 55159009 240035758 858566888 879867402 124199041 671017665 395085140 644066954 649073417 652422881 100490039 737405001 982592883 993314873 140957154 531271513 515211131 989459871 620286928 793055588 781049310 961036087 335150254 883121223 696202445 860445947 487953071 535374083 888537750 974868073 377025093 728303961 775016948 815336082 474867453 561196421 388613843 465212916 75082131 915641103 714230175 807686615 601104919 904357041 526803138 914757423 188919449 887504898 605678470 972414670 404407430 736125589 181934010 778790067 170882567 427680096 422799147 867623132 133916394 200063289 482642837 649029203 963226469 997073672 900642674 949002436 121403250 649901786 991705240 992894691 126972413 172906180 381372783 841995002 575994666 604950535 562503600 926837741 16543952 919149079 407063636 921274813 195535825 301527690 988200208 989992320 47638221 306534235 315489081 718920240 72205284 572992304 290339984 795716386 834589439 891637250 414063375 449834352 559048483 935024462 664712902 971124591 450176279 644718167 680301984 776851111 396235153 657692648 19435314 825676096 421689916 641387512 367806820 547131423 576100446 703839111 947064455 965747765 507783233 617498641 966793313 994521541 626644416 831609971 161844287 882188936 360200217 633587131 741337616 936542699 945938241 967993240 480601603 827547744 564753199 685176373 603851885 668454578 73078064 206546454 92775613 479290095 762896241 997803513 357631166 620146220 982212900 995448170 472363910 888125076 828299789 885574049 267405020 448359155 244942250 725902021 868032936 996958209 166128498 842561051 417416887 797835725 607814790 851565245 460244740 701733970 563009514 702539909 275066944 631579475 934115395 938958324 265743229 333285183 42377200 519082869 984619592 986432376 252690140 833530993 561650545 714637511 987854337 996778883 924204738 944450577 47787573 263147889 263935286 817318194 358150139 381903940 249259341 818847635 85622853 494760461 981654103 981878536 178330967 607205434 446935559 852393029 866578553 949503431 568335891 721411512 382270848 575421909 505057714 929666545 973331892 978083435 31340894 819425625 128260342 965730399 125112477 932012031 741710393 754525434 990043182 992445694 84828617 590038891 306133517 599139594 976938424 995684251 791553916 876504966 713557477 738036874 362561783 550671900 49159305 938226951 409849071 550015942 160012207 845176536 477692765 800991703 637873877 913769838 30681677 228855266 947935689 971998417 751073536 971534956 572232341 641563960 206323149 352092513 528888975 645865278 635370989 891414969 574352478 703097558 308639676 534367484 52671711 422739093 16031051 256530675 219463200 739623561 319339263 479456144 193220050 194672639 118447313 318034615 371536843 718167951 276749659 702852771 705115640 721840824 13906031 32307689 385432113 917152217 370444031 385006771 868700006 948792606 626718622 696003516 441491786 476609563 125935669 805571062 676082513 712230779 949499796 974992078 301403139 480505444 341728790 586297827 182015942 333555197 527789210 568122830 820327492 939703611 184939137 820682123 646509988 674625165 75130850 865524463 623667121 675287458 282408665 695600390 88023721 761526536 847947561 857062992 390559794 594939568 439051248 835562878 487908509 973451093 650860223 731030151 835031115 872859887 755761260 993633336 126077957 954250704 512880960 836620400 938804534 965422018 837097761 995491855 297959102 544325041 548714662 658320344 940510945 961903533 345224981 776078356 992597827 992648771 818101679 885550207 931154568 981471450 796954854 938013352 581356789 847099597 90863721 236113213 540819949 669635564 711839098 966361629 767564496 817899330 258623644 664771877 689714170 764672075 219434537 689346462 539397646 992990288 730559046 807175323 481854175 610852788 748303962 862438583 426132630 433616375 858036386 983304882 655647662 730468195 560742591 943376489 458055240 542872502 434766449 782239629 109513609 209250542 869086282 973091241 782641865 889063844 311909650 427526446 48211623 937459160 905301269 940151889 527500726 982087297 70052938 335740958 242186178 608569756 382223634 535754314 903917576 971661929 791633912 945428858 192534157 538773536 5782000 887635941 75394953 770533815 504288235 681891635 31804016 759953862 621561480 804749910 699902444 874459164 799927418 805240370 458369624 919835392 204385392 836209570 92997865 430119131 417992750 642139842 750200065 990749691 490907388 728793656 577928675 594258702 983231844 995830126 883928186 988485964 284289027 801276772 955842713 994539541 765086495 964325706 273795920 855074095 171877752 771642835 971255190 975917885 536820511 615110724 895370929 952173080 704454894 726630936 687572604 695314881 295396372 754018117 597914446 842027836 268021950 972783780 367197995 755793336 829050733 878817688 773349708 870050868 568265411 883286116 150941201 152507964 867539563 959954296 142406249 826547984 943608293 969313641 458581878 773326514 878487137 930697756 729048391 959892406 375623499 821622794 530350188 791763817 661292741 876017769 835651434 946245490 845583989 909128232 888970426 921981228 800737312 919637457 332240822 969345285 506917014 894135494 567340117 667806128 67227297 929532971 889759180 989509080 381227070 497740606 495549153 861875279 223006296 659161587 279050445 388772060 42574410 77606678 406445830 482436314 809025180 931334692 942493261 965243888 717314046 870259366 354307421 513948979 639128449 906245627 634393411 827009577 772033601 968410513 309665366 857529727 456511604 948277986 754029686 868545562 670790595 839810094 917886853 980800770 396042008 437280781 548865586 604564839 240069200 601076140 483254567 768222632 328706438 502193539 36922849 563652915 755215933 782405100 988434028 997909094 66670407 138320205 701352004 773729101 774570513 913846669 41106189 996725294 961147159 978931405 218565828 989246454 667213534 853595682 53860627 763251653 23780313 387006848 318793039 460651012 985003384 997032493 477868131 621286471 855806011 884134376 362731498 921471971 679535491 926601118 832595863 987617684 434127242 806921047 707102029 948849131 967405190 985399835 706624070 980693658 303533098 467192542 858099135 996371594 470324515 736622284 71113148 969831040 699224131 843892119 492052119 634572246 157741574 805198670 525440359 564423085 887335889 998759737 777113143 995865253 437591847 937758246 911105174 945229509 477137096 557422955 210042472 985111415 144387010 855328230 544841941 646153951 25903296 874611605 276446069 852000326 153374579 241120080 673791963 951757226 364097049 403036257 567583989 839040274 151303251 953323841 897808077 947993613 965709933 981636460 680670704 952109586 341492717 664413133 619057155 814094636 704971463 986856734 2693166 405171524 62703836 139438657 898142686 970376852 969605010 973358181 314023111 752621473 168946454 544988453 568328101 622779142 287256690 305208523 24002929 854137211 243587358 882224527 654700361 763994143 515017025 955595226 270914569 379823717 678731009 951522428 34647514 792460969 803249671 855123926 159336293 433435088 346032581 804505286 609406217 869264994 572188960 762303349 746633195 866645641 332105866 912007828 66602887 831577642 355756598 925021540 619730728 768737348 662889048 811122365 7859360 429056697 596292681 856866766 458609852 691871883 863950762 924221965 137124998 151401024 302813920 608303488 646871710 689336769 103425893 873827151 528611064 890466648 918332711 964872856 379636135 971392950 589260417 988331118 815619475 852361339 551501878 764168051 41030639 901604742 863381589 958072378 207200058 316868732 455479477 698875058 18716973 569795018 260982961 595550191 885345729 993009279 360553208 467390767 604402181 949880692 195935305 677744482 960087939 969096444 252972692 804015358 924702330 992724674 883749899 920489518 998188367 998341192 827461085 861692020 673587842 735046108 724207125 963078488 454879695 479161469 96127795 936318931 158152940 662663996 352360179 675933701 199343250 301013202 937369795 990277743 364242748 887154146 550379637 708815028 414853959 622708800 827958845 928977050 334629335 735508917 756421696 839764236 803099338 882228135 286412462 340071302 367357997 406187571 986868693 998922382 482519323 776454555 655086806 770675581 119473864 244586296 708806669 774944944 445220142 742700047 41165257 454111738 297195393 412269326 562976965 888964153 694283325 803017598 909302450 922725296 794476296 904957438 291465221 342162951 241850020 643699976 536649882 565652454 501127039 588067678 457513004 558497287 977909429 996011214 696270089 840296900 853284252 902570203 437959684 698384662 836717733 985368314 145692419 477114284 817161780 918189031 799104872 960226290 177817766 583159889 602408614 729782748 291129684 614963290 683325348 883188767 843820992 901956269 294126344 393533070 872670440 941292249 375396751 384566414 205129483 232913474 328495605 480701150 618121970 649589105 467626443 804157448 448149274 930672137 828450398 939960288 498074088 869407742 754851981 830141963 359966497 430070918 979808640 983381349 578876228 658151942 816568563 942905192 510705685 916266725 20844449 576112788 220696028 728856436 629289388 947806755 84654781 124235996 173827720 342723718 578737537 717810638 452818871 741526882 721736146 956686790 463155175 548724570 734373654 963896229 340404250 765612163 339916326 728672940 243858010 358274107 103093671 906397190 384494257 842548878 759065277 916719431 323426164 711947755 590929279 796263825 30800740 964075578 702864522 869129303 768270496 975161288 186538490 319910548 507981856 675102400 369600532 469344770 248745234 692253546 838171562 894564560 978598542 985261861 446021597 870420221 769457501 989768345 89781566 760345754 442170730 487599411 513397533 930742962 214126549 627119803 993119218 996227515 348343771 381720424 573717011 912156049 382863033 863894745 347819995 620952066 991029948 991874034 838802747 839706517 705196370 889529203 785816467 787116515 425624517 512442367 26506338 663325238 631839744 770853080 220470255 662489219 35123123 167224599 341292858 439760717 63518773 664446739 955156900 961695920 489239166 585977693 573056258 698898805 217699311 816772392 782945784 905580423 357359057 472312207 887762932 991473317 172298249 949446338 639470112 789688586 650708238 983749630 852959591 871358015 764870216 975238182 709476216 743190739 106842091 891053176 775811565 846460457 911453393 994148419 6578096 18382882 143855451 656971148 398754328 848991860 456710065 657426480 208998393 596413848 363890835 871381444 548641407 656116994 583708749 674714092 813486550 885884575 502954755 560092884 716637445 847097698 193520800 694182809 816195790 853281857 4890987 432444093 819811009 934640907 588989797 930640357 26957641 261182346 722613125 761021796 292796057 760060087 734326275 774652728 434367970 455462105 91548096 158390766 201525595 215760698 667795501 881707772 290842685 611335703 311324826 450079703 703923952 979355605 111500133 442016102 808702755 881148618 766711445 954704340 125977243 337274718 809567866 958607265 31665493 264514010 410187687 998164279 261598183 543831359 934148593 936055815 972036452 998920469 361123277 946943086 791158864 975876232 467505813 576759822 755620008 868741746 444272363 456588099 694630424 785218292 656416868 763456455 29379995 947646502 620154091 834666531 822380573 848089156 318061127 977244666 762233374 849120048 652147948 925779330 426312746 535768342 438669112 880203073 156620794 538336306 558754839 838369272 424438915 562774701 83274153 311316084 253532546 738076278 533505969 599091978 876241129 886708142 248959649 929653693 816971831 942695349 129296480 995801005 25841268 486176413 164572530 388457885 570594947 943048194 11440293 887792684 352827831 650655496 841238555 940396592 753239662 792468595 567745307 996887179 148609487 692989595 817946924 984468514 420617238 799257837 109335287 189359365 472597019 726128479 754610711 933857782 599290945 954600745 151214004 884743843 299468243 913576746 966983470 976935566 381210175 507730459 134919128 778305305 790820267 988763884 652981161 963269264 122021665 762679797 853961101 878497927 902099451 991818493 468424302 751018326 627714423 981871617 723367237 973797219 450102967 607031585 436083713 491174182 527923554 650072656 13180275 800297030 303478862 810821330 242386242 969193803 44807633 263801763 648544623 811324535 963478128 995992887 962038390 976419452 965036385 986285521 494710922 900524882 292081352 654317612 894342413 897584656 870208816 935126823 59427627 531030924 241450721 664270209 603744679 844514140 753887895 795530581 547328364 920030371 928189160 968981899 745341297 992416235 883878287 956414779 446578269 874085656 190171198 548159062 218421423 462554631 225749002 627842776 959314150 988618173 603442748 818551090 805175916 999316220 893159672 926284365 256329631 606074184 348392692 772861061 935125456 939470273 331111085 377510354 265962398 967310841 812931456 991198138 367259075 857053154 872915671 926396262 937282625 969775948 756694182 858804214 269993942 835387245 606896840 697114085 892477516 982085454 91834025 320122561 403193109 924685604 4791604 89359560 955655519 963178185 473258404 698663444 757807455 992457419 192509966 399882659 435461097 922476118 414118178 823672825 34274742 907896510 79566620 139636713 863450516 990838631 550396791 877504479 808326125 960612941 470884471 544628808 734752744 872294135 457549527 538328851 827851496 953314499 815862492 915099159 26263439 31831227 880550658 921642502 27317112 498854754 15558307 314295536 136478496 343054462 907641699 933331148 727947610 933585398 721779954 985978996 669574947 853261130 512560090 648606638 369799168 803633219 322636035 497461022 679677296 702885646 435744296 487364558 971525538 991711404 522676899 908811769 911074898 930338300 315772579 582782211 271015485 656390967 223183191 509141060 866673991 917201064 534151780 579911846 654575386 807037029 386010298 720418982 445799526 448013950 241750330 412032714 445133899 959003295 55514014 516890265 410594343 642232992 983836307 994923075 833839410 975161870 733216020 986372777 176745711 604930869 808547658 956763310 425349738 653196340 56740732 387659729 489918356 887760616 329548589 844408429 769330614 946645906 90296633 430980625 22395232 80977373 530542075 795045504 239254857 964433650 653467112 845504519 950553121 980323049 226668971 860822766 352186517 575147734 751487404 892672967 34491378 68517068 242694474 567163678 7660246 175980791 602852033 617438403 39120705 341486789 843387001 953759631 771362151 873455418 958499122 976485525 618776094 913477599 416423317 917527816 747732658 974321556 571384580 967555001 587099034 748163776 56986358 301063220 617116117 730960846 259046650 459601404 273701537 395137238 537391641 669077982 359993473 779953431 418797649 872411209 926839050 967224802 586457656 925614108 699922346 709929203 180325477 533927539 278767469 535417365 940999184 981235333 217681659 569454826 671363687 867193187 632548271 745385592 110190484 240950593 878954141 988429216 27871058 358439021 222117654 632105196 479517616 855891563 686317649 735141172 620252908 727128287 117563173 321310106 388752443 847108176 549025092 887840071 188529351 189540785 691012505 815081019 892429545 988736593 435367183 609205484 833560812 979583600 382014195 860384757 894738478 925333093 56092822 524574489 296162338 781566206 546965813 829326948 286357210 796530673 498259479 717562118 828682314 956410461 20562343 21048282 884191062 912216453 309483106 925535780 528393646 790922185 724363055 734608249 80812007 284674871 813692242 882806257 819471526 882338010 684057976 719677029 706005913 866343547 413494467 583331706 945761077 999193593 827366489 905091199 119182504 638553618 518393481 785282800 336807801 817066104 677044583 932243474 995526739 998022354 273705555 464363515 602482646 613897619 93350368 367045359 497818625 830181925 316038826 777556824 606887568 784918354 478737756 625930784 813773598 832061494 282554985 945668588 954379607 955022409 733364459 922304713 922298673 955021951 486596864 808164399 832597920 973326267 191663349 682313647 456139218 959511713 162717349 998767732 503328488 976880807 587978483 728264084 236526621 888254062 222039727 481150517 179743392 881695323 633151670 640884935 36797989 164495952 928576465 987748747 765173317 905293250 989115389 993407031 36247361 461501502 477108464 697273225 215572075 961920567 951464063 964373072 628640409 810975893 834432337 935904113 610430099 822221648 62384969 902414224 927205948 934240072 431425225 713865537 638690195 939579355 526488225 961049032 223801030 513630127 158440301 793272235 401287680 879507116 621790069 689021422 170909914 814970859 639313501 729358471 872156620 996271378 568491935 823904419 265626784 962092552 242004169 969736561 863951131 913589107 629642654 796780998 955752601 956958136 759865489 933929071 559440084 693529139 990559955 997619852 685183474 740827352 326635484 393465226 246205166 302423480 789163932 965346178 119781571 722312197 439707 116818972 793156257 874943795 164038342 995278203 770925720 959361053 691092976 726234543 513779680 732915716 892605926 915816407 357273637 874421362 674760499 912675117 500302207 708656174 762122578 838065054 57175187 255673968 566104576 761305046 196066238 270381760 358317345 478948624 888435956 918181259 321838813 379471050 22408548 146750693 718468451 964737300 939907699 956073802 979224337 981798218 85180358 116565002 519191197 547126406 400580968 740677644 137222350 453021875 641183448 721126978 73320075 462570503 765265260 895137594 773535431 795959196 204396632 262816936 559605952 702555701 20716364 552484218 462130960 636541821 880270544 938667498 956807108 986335755 252484172 289024750 46770921 566368504 658028128 914390350 757657848 914595715 127829256 999259135 423313162 961697160 887219133 983958021 291285658 571776054 849466096 905307881 593262389 930890438 979674602 989882318 487547568 627090407 355792801 873392085 354379819 970573480 839572610 846629370 298741535 875786293 209428776 855500503 10592892 433788450 239994546 594267839 258929393 979835253 491716734 688552733 480369601 553928768 729629233 893293096 705096191 829218270 708755826 809464035 161750935 868683786 590625115 674008814 217708728 494288002 713827369 928171280 881199219 910638679 44716542 292118573 969447187 969724485 509684522 689079856 477293785 942367780 532796073 713396372 418800182 657823645 707137349 768414379 190031465 639136452 506148209 982560029 367657439 658587536 854127815 971168738 398508188 646521998 236577927 774716248 797338498 967727490 262894910 294474502 896554102 914875619 764823865 942759529 95409621 111484328 515084513 725708280 695999809 864518818 716653574 808933660 936860071 984806643 463150618 800106905 423417157 916674919 748032954 990510797 123551663 920852942 311325258 489057858 654243695 657063028 543005879 887894403 623536182 885140821 551722195 608225163 311490851 520069734 478288865 969293868 255893173 866503381 218535444 807378222 747279306 919333256 292134769 611390978 295646761 730902733 284865051 884057218 413940956 975326158 622201632 639266058 182713884 952735762 663476211 853743729 398119409 520145008 538706986 988784566 855610584 881463087 472108995 644039977 659425132 946901095 857349891 985074033 451724487 752106977 405200578 740780477 528813467 603266707 650524160 887392181 608937103 727706434 245443327 921771334 636008317 917272773 937198738 962183530 82517278 229677508 99831695 162878363 281146400 963735299 567587418 622333051 876435143 981446456 397805824 470656887 846326242 915768458 988865977 990797438 186717910 476243500 810619950 968847226 881670993 964684929 530743008 704574278 192118927 972084906 114770425 779114084 718472342 813016258 336889155 459123513 989431816 993644305 905514947 935147217 794449997 886547249 555845458 620551866 769852306 978841991 297792970 580033504 655836403 916264689 345399771 518506386 976732421 991883681 673456033 678857291 746452216 768575419 183322500 742467742 579425022 756163047 901485782 918495297 337527967 606669105 978484204 994780619 583365562 970230149 242389209 818087050 634014885 719809243 562411670 578641359 600664156 607556259 652239609 853943402 776735281 972577039 175246793 897319455 969603103 985636194 339838154 729306390 263510665 628855116 245794354 984408529 633460533 772692937 933182379 938732633 128163087 647697516 545858736 800870742 785940173 882592418 392852767 547708368 202593636 394973620 93120465 294765497 910434690 931919695 160783497 828449916 468429198 913107203 400696295 585778967 769936948 976323220 825661280 891938204 208526150 303927091 750195236 778143084 1083234 261475451 673377847 944733677 290346411 578799618 620088864 947214074 144752605 362717445 524371640 712087646 428503137 825891336 552646632 625765818 763225444 975810615 795998219 979682826 312426854 981743686 853925386 871642307 874619795 969493539 663604268 682979154 810247140 947132510 499171380 541466478 855559989 875053162 993354505 994776195 511565975 998239889 551055108 612956854 136432339 427591685 496606623 942038332 439664378 744828387 348931326 864281448 354296903 614175137 770664834 984599085 553247431 968193052 875559875 947980504 853041177 909214668 726405661 913969231 83347860 411000055 268923323 432064331 690916620 936591711 185766261 780765103 627829947 819627184 990143558 991008405 446197299 734987783 443332351 482006152 151857871 540889477 315240238 537073026 927898989 942952377 312719354 528124802 449068962 963857136 270677221 961558907 485760811 959174559 920836152 973449848 848886239 936772226 734208235 907334910 425217162 928280667 767002319 857594971 860333063 968095709 157844048 866021095 383781725 896172264 423174160 626447049 263771427 272857638 324371971 384236461 936044984 991704179 756747993 799231522 327826485 692271545 771186792 892274555 595447102 612675989 99597464 319573401 443366368 852611225 123538686 275796751 606574474 730092992 4535331 361685949 852344301 936458953 943551491 960222499 587868416 925569809 271266589 987104873 485730007 506913440 568878666 659154854 358253635 615863162 494685348 893551751 778753485 817995169 945530539 998720902 553253627 660143044 214095361 641294192 178907038 372988922 812263845 846026407 175169427 294577980 238195801 707774049 404365874 789008775 782646344 898147041 617528503 643654224 768199614 943161080 802536751 875880598 713282172 841468409 692970861 919702866 725559899 811095141 598883805 771172309 605164666 691810458 408097229 648874256 814763119 937044683 200379802 664427363 225295214 726283440 122347877 859611511 513988175 571771214 326173283 481258488 900308780 997722410 733511689 869009631 821971787 850255273 46839189 435836810 163930038 189480503 477019316 984658344 670127732 841731496 85340929 316950698 677190772 904134672 193721962 821655952 990868662 994723879 952678407 974715579 820264392 872578627 608170620 705543412 796227141 801822026 724406753 729259031 379025421 646614571 921097827 946621019 136764093 495983099 700819993 975485972 67113282 523193409 447494444 530008531 282855993 567829208 252405861 398707255 129006590 773800296 774856652 784665296 119330745 971497326 889684679 929913080 349529373 924993544 381863244 622636486 746163944 815100751 23012769 910524724 269012622 821808688 169421081 582076586 463443376 527562743 945743834 959016645 494879194 953954019 317146588 986407478 276684024 577798895 99989877 898097238 725886479 872783165 414883099 453562745 501510972 532048492 524942764 603392088 75589988 977260481 381527887 971229231 713648201 847969518 177339037 247038787 1691540 576038890 741027941 986234148 945228431 955013336 491604254 550877205 950290552 987375100 623267600 660692646 548321437 764260321 942494605 992919062 719855467 981990068 593466183 604187097 873515842 998786331 146488302 718020141 4120999 157018608 315530365 573699767 360545325 668883622 155025913 953928474 519744883 676132172 754400073 831648624 475141032 878013136 981976687 991784213 762915981 936591706 317442509 800156941 302840747 777406336 861220147 935087561 811057835 961936617 393967635 906466832 776001117 843039848 821208265 996071037 178086749 391341638 920967027 943963985 929673802 933938345 809252618 905323458 379538264 653586317 487312889 994954622 611076268 963053166 997531016 998607275 765692181 860016860 907531055 908274867 947982318 958012504 933147311 993852174 578445756 856080379 390809518 647410285 793911939 855302438 199862123 215055767 277512988 805372236 527916741 776562612 489509530 753855961 194418779 992241851 475114111 611965297 670187830 761935112 13201821 156763750 351664616 979150844 486185931 691931990 44467144 644771087 920428937 961770547 156337296 353279898 294201369 618362327 362232446 949498157 353691453 484104446 211059781 482562119 586065179 614812679 561380637 654120398 923209975 994347104 67661421 828204943 544594467 717187640 698209040 792897485 72270353 447951599 24958921 543525115 569632615 598892450 179318753 404176213 961475374 974957920 691415463 915832549 90808595 966717809 267993845 406571014 664879592 975745596 252081072 413389545 777601997 916232655 969431669 991761422 126161192 869413491 791619187 826689160 23385047 210940570 677205403 735015397 116036504 931468050 178790289 855749732 196048470 336636167 138431133 675308506 585812642 676226066 729520651 978100867 461361337 560335151 495359937 615436949 422365751 584761439 761795454 770455530 698675303 881605416 947179438 969602339 618796238 655604296 347230941 995647188 370369663 999095589 569218992 619291844 212669938 377736710 399530344 843572553 652999756 843926410 839636659 848387563 709774166 784555891 955683324 962265568 8416276 632716382 69236759 588583937 780304475 871464172 452870388 567257035 669257893 754459984 323249898 490561135 381488566 984566590 427012856 715750987 38326447 104835630 867253960 886537136 205851384 507278794 911220947 984417295 281465820 866611692 692769708 762924539 848931301 965373744 494227856 980468578 954098030 965523305 354589657 516891108 947457685 957734739 126512454 951683155 389421233 424442810 327320694 534573933 139173225 317375136 336398905 857565574 362537091 721786656 263247712 493189050 21544932 177401279 45019619 243589601 154467775 245934172 230399477 539983886 41121083 705705444 371793028 938029780 901293954 986716333 247159994 332643603 537097281 694741982 853630537 855547890 30272586 702177059 665111670 846135980 484416522 769714365 66726881 843761732 754642336 832703913 161736657 910756365 909566827 981876821 143003868 735557100 298639740 897222129 429930149 575264385 938477081 940037652 664307953 879378839 235462546 832803210 458750818 765366657 810174750 823626176 780252620 949093132 97841380 468804435 976018311 998076243 734958615 758125244 213878961 764381774 178330449 677087861 282901477 926561012 550079981 593542084 422364077 478463812 733034098 758900120 755785259 902898909 583722455 608864604 321057055 690188614 578817213 802538128 378698317 895977188 740916375 871142423 165781444 640516299 754295808 902912876 723507544 980857985 298491598 761689750 883833146 895118488 964421741 997500028 577782999 847962123 115032890 683831639 597017580 738336385 828432749 840818037 206119379 651176860 230789723 347188172 297350943 909004715 224613992 871820529 75944135 745414383 158555770 805062219 582484535 985580978 540794174 891717894 81272566 856433680 794649085 827390669 693633144 916885361 157075137 362543463 862116311 946471319 928539607 946766403 616853179 935506850 88641079 668357481 41975513 169517807 854463775 948461226 585524660 675349206 124729661 215319176 44454673 456776745 317812053 777997433 89206553 578275570 312829302 908107704 195568877 979947777 639686305 725569253 538335420 827261335 28338892 590079704 984171409 996147665 269959632 623068199 48724756 398913217 337602376 887841740 582087339 905302552 904053635 913748340 57211901 553066031 747609003 774949954 881846457 917253106 335413995 517909082 543998735 931032188 373734442 522586631 404433728 409586636 420684766 899442596 643498341 967907578 601640513 647510078 225603006 385514586 323117498 724807313 139917775 471190985 922131970 940276339 976879252 984226545 100186308 226453975 218959419 761607546 640798616 712479069 724297535 815165558 986995491 990840577 121054072 168294771 350941176 473903554 754042214 876228323 973316976 975750633 166179776 894671502 851863751 933813589 567599163 950888909 374403215 665251381 64703892 678679062 480560504 824809384 541746419 965601755 781137882 950231593 75338842 307135378 295040986 515456153 114317616 375751328 928786277 949128645 675410809 739911753 259254306 939720840 71621209 731682565 243791732 655119185 413888307 962602893 520709573 619641467 406072073 486381281 302910550 995685219 601429722 919128087 180705381 980912707 908290239 950339697 261772098 815088905 773702726 812012904 694284810 985774319 522811284 930868262 643061239 666739704 507592372 782678345 187630264 914797876 856643843 905161965 827304393 835509758 783211540 932094065 40206157 783323600 440864034 669728862 652820065 717218709 897334126 902037614 103672854 789974037 352473735 990826084 242131921 904513929 10091520 502037176 352456963 785132503 752256351 788684751 717480781 766010291 285447842 314953106 595301243 814208486 315124036 798456151 680798955 853593214 99567086 960479953 176535972 683601376 990130296 992152596 152200384 706804294 804487987 829659060 14022456 506335032 304469068 961807506 218312399 676819491 481960618 954196558 418573634 777246016 212858826 265051368 585221377 727511893 806460534 827694890 702999891 775557258 266965826 508584745 215239935 466346646 629059399 850982780 528711218 662269059 516229413 654653694 368165903 394428632 294195920 783146571 552687080 811622526 175289836 269710535 182216250 206119576 463006529 873721034 636416525 697561896 856621666 896426615 583448952 607344359 81021916 915942745 194993750 454681486 291444399 676327035 866276895 869670517 214759218 667046877 224804142 478414931 276989643 656053118 749453254 793654111 47465588 659562119 997265053 998386847 310927802 403653123 500257122 811996386 840629750 986786555 114595901 368430410 739497869 773086038 799195781 968497312 369485996 584906646 285605692 640330518 781364999 851737804 53694741 300913801 54124442 354961760 367817383 924144884 178247269 953740609 101101510 642158728 668253402 767569105 888687620 988838848 296370977 404435853 763199599 863886656 25454813 749081641 189697856 460685675 970755077 970973334 108717710 338721460 128237274 767893629 277185685 576379332 21113941 771972971 494420549 704088489 272051891 310355971 106244614 281368781 498319580 826942575 545210755 715434545 682132529 713916722 671594270 981794437 888507110 957006555 848560140 852604666 793470115 867744836 273483213 625411897 894903800 895063718 395199488 554847406 91696600 854530742 467160664 994011857 602710999 777719154 596691334 928134849 70505076 901191602 451543903 927348465 553201932 993875540 796200034 835243378 65654366 595803720 491615136 573596984 473178660 682096482 778296726 913611577 452860056 863804303 494923209 943908789 247325661 360360098 620521888 773533364 481159443 785243537 889920464 915979536 902035041 934322617 810943394 811005551 358682800 360094603 734171566 918606746 691909027 834009347 225176766 324410573 822590277 889049356 415184038 816186411 578575333 725475202 341189317 722201872 497605265 960988606 723277161 727611565 935664631 957932467 142495611 154346929 891689936 925128042 539471659 919878164 93839143 619998926 276457265 297818265 750472216 844590817 801853042 935781842 817700163 878870780 434449818 533165115 551419998 687118467 634888085 636128548 549496934 632230688 614837432 708799525 158194787 231521504 248494370 283865494 829509564 896218198 582127383 734929297 371658086 737077620 206317224 599595777 243709603 790862470 427840345 807028986 572539398 961693253 419870348 689962411 171855039 984827864 527154721 714192707 828798315 969969841 311551380 578084000 756186830 939895679 410146325 500871666 738278855 894587097 240519620 733898499 642125369 888825895 364032376 884580090 866170499 876939123 581831505 798231743 943413861 956028787 441325041 510576575 966356100 992555985 314471684 776561707 166333481 168127316 479232728 680841700 540502624 633306748 766797614 857123314 18753697 817595535 174807637 543857852 861304946 937327227 71365883 280931475 990369114 996512115 519864128 780487483 474760513 709019762 400309638 815862095 613419665 625661956 456496478 529655890 506855200 549805522 411106487 859540154 996763284 996772573 368814772 385032307 64612655 259926120 871291331 983230874 627854172 931460342 110515243 947286787 734145663 859001473 508866633 894685470 888939144 926849215 859695333 984233593 744199339 948825901 249335586 348948311 358819364 407865049 299030610 387507665 280835836 424807921 873351921 889693389 609640065 620705736 853725934 927978432 745022663 896963501 171935218 241149617 48682233 768370836 154766972 739967270 204865925 812129495 926815127 948260528 183946395 989816335 362732546 978520950 322690191 347160243 348945990 350325208 187238556 584626215 603293333 894303395 998283509 998428872 430343251 577729614 73888847 229080521 615653211 654196698 745010616 914351550 579205553 812503199 7442221 370551351 104139802 806618813 979532572 997731289 270377681 843687950 457083568 647682535 185063209 204934416 553336204 645600053 194243730 461885691 909974942 983662609 584792806 711815314 380878893 828328713 322641536 699879640 670531546 692006712 810766922 844544935 699258126 805664238 670741084 693602626 557295156 628761525 291866823 757470890 523243817 666640892 717213216 831910258 9872940 924377938 16956036 923743912 547602238 832374199 27074368 404394080 814332278 961453979 57127016 447981117 910179633 914719288 518424566 831407063 838388872 859946291 485941182 506519025 291260596 623291962 203039954 693445605 368082058 645169008 190251020 822458541 255641509 584757274 40191246 600286642 350906152 542883864 598167084 690099384 582114753 628174669 997589059 997683086 519767766 982803150 912830181 929593825 818570128 918027540 293381338 824927850 589375752 930675051 770144677 981060093 169314166 559746767 557692076 985121307 590418517 944268183 412612519 751202580 124836601 195080816 770853453 872782230 522537850 561030015 877525014 958302093 374976790 429162684 470980630 863014019 431570469 781718772 498976191 593901409 34570536 426898837 110777226 677290108 496411770 723312151 20390194 387233907 858181391 874090137 626421714 853287899 566397778 826465434 116813100 907784016 500074493 982865142 929224199 982678929 153600047 499690486 152967919 286422053 952633349 962488142 615661737 968651076 46034456 995197261 475634876 491462904 637763442 717527323 41539295 244684541 234474746 566482807 138706384 432461838 786175753 791950522 884774054 891270092 281473398 679927522 38084638 180438146 698396539 845625079 225419716 563626006 22834599 457894692 326347281 928513712 947190385 984840741 177793758 454454401 560206004 615962024 527338367 980447819 325344064 659363708 334093388 905236005 575591536 847397348 71733585 471315269 661232180 982808885 290703386 700044900 229738224 948136048 207497096 549475961 640884412 746643364 351314495 914406277 789143756 923336100 461635909 504906530 83126646 553482790 324279201 560636215 730207166 880941315 639931182 824238526 755357959 872711795 353278831 898345999 410469509 742949791 636242771 967655142 66062818 246311782 590946871 810794061 243797597 664739296 410980434 716123091 320620948 987502218 767216128 807449200 832756721 991032943 20839015 874898685 137368199 877717780 280095528 575708748 747623014 873377473 250701347 330381364 213687869 727901515 531431193 535267390 124102426 554558287 742476227 817847037 319733987 881466484 652424614 662712307 265842747 352611410 779230381 894399932 866220440 906441847 105360950 952395762 753529325 779220906 773118918 796279803 956808426 959712754 598679093 671669525 182199309 261755452 780269415 833843463 128538726 604074820 256335533 850092739 327635151 765532087 246302367 951438829 193765737 937923716 818683055 892927457 177855237 540857012 450653988 819305586 594019173 753813292 265395808 608808972 349868525 696044497 167761038 338321200 797378722 861797208 635628078 715638376 670033321 867058677 166494201 328717063 620849466 712893880 171823884 849608934 321922423 913696583 369464234 866620085 293522074 817105950 751982108 811471092 587287315 685160437 573873695 824601347 594608803 738896403 53507981 843612197 665138261 937773484 149869235 995344282 145248478 945705068 453957049 613749460 394720933 751871482 893993174 986402185 701142064 803667768 337645585 559861848 44831732 363652689 127319743 643401204 310152593 607465801 283121736 935344674 447001352 688772584 253128746 789935114 734202791 982916612 994632621 995849870 654822417 678542755 887866780 950227737 318817818 954738162 528063104 564618957 544792806 932207164 81272717 686663585 385421859 959277220 595173777 981249910 106842068 639822027 893913184 993785053 882794990 972289742 341312114 806553014 323918219 719923549 569875547 884628697 630837793 860719116 104459884 615899937 508814167 721510427 478535675 911593089 653741385 917614251 537352997 569933859 46953894 110222430 522388908 826941076 941399654 994631892 688129129 947227868 182813958 185322695 142002802 296829455 459420683 808953188 53555500 991884791 240550787 465835651 427677925 735455377 654350001 696347983 772620199 871184183 896215750 907837027 877158601 951049430 421186577 921105265 504977713 653490863 650130904 977446744 149410405 963335041 838343388 945624840 390370261 692742343 587928182 974058765 474564158 730311878 465828367 588025517 573153893 650200503 614314949 923890401 866207693 872944524 292593467 548862216 469158881 794661214 481033598 969403694 642106903 944553025 12152651 814249494 610397094 724417989 952408913 987734034 613675554 953845504 610279038 693138876 994455699 997206805 297730028 443759023 103236511 562186845 581463290 699551822 967038131 994828202 391555154 471786426 619197288 685432456 139176989 342104428 367601118 719337704 269652386 672775674 498282631 562859066 215772571 296915173 539010687 671899280 643358750 926898575 228810604 846633176 776026165 974921925 865324614 898978119 462744514 554560120 299949216 700862169 806502645 906874185 150734640 406576733 158974935 646870164 892017287 974650889 725252453 925811088 66628064 232070929 304971565 380483612 797726786 955689611 826819503 837550565 540897352 918116517 548098860 765519783 250757899 594595721 975627778 980760794 882845100 955438860 629613451 781080699 152933715 547677368 173230113 915373585 465607099 657570963 991545297 997588189 787999100 884969126 180251749 569510486 138742129 899023531 397265646 868693534 660620917 754799482 375114922 508808045 348740132 716679662 757828224 790948970 816916453 860764926 679908917 786117199 913838643 985182251 682261273 758741707 140022946 377904406 380448319 636249549 779450944 900837580 390130107 557214639 22358929 113863512 462236762 759039610 42920787 155536684 3301245 434543692 351506768 872506378 243150368 349125008 489786420 708656275 978629970 980181346 240237994 907536426 994536667 994735078 610123297 869604683 664557484 945273424 295479316 685834471 594664400 614375032 508303931 942873995 688686364 697916474 82322512 319360701 335744218 533572858 312555953 625875988 798237036 874652856 165148566 328155188 153263553 715129898 613327195 885499101 368589421 585807966 794012930 802740995 848451102 882626146 237453071 554375320 495990716 506615044 855634582 949140593 260464816 262859963 355989376 502924280 193793685 635398151 763606417 990871703 378940731 667904913 570990177 718352761 993604477 994041194 716974593 722233477 508523482 565908720 465508468 927691225 880925134 905351956 956310211 990503653 663012774 838801842 119784360 773850887 612922498 922134100 592315215 609554138 618068834 743418371 67731623 269950191 52265005 291975073 79633581 731044697 464971706 558441577 955006625 960701001 133155701 675356846 562096145 596595448 42754724 540855081 835556204 998687381 772171229 813181993 48500850 555061230 132242324 808534252 344276240 796402326 118794002 329536424 525012895 953170762 888409335 952176702 202471516 876137324 696836664 959630204 468144513 478254188 8530363 714355692 998197501 999141858 921390249 963960987 507787949 844972206 706150379 757586977 507772752 895043788 860004545 885926300 88863263 315855419 8784043 9219267 14750488 441470973 532595486 749604309 434985720 953085218 166456969 349964471 664771566 862039548 569163816 756021503 992164149 992850182 130507141 490113002 644755878 894618739 531814132 732640033 899224262 998844846 940776290 949272743 292746122 950469452 18945388 801522814 149909048 203993258 267730045 930848080 617331737 807217222 369448017 381530303 892309311 966591617 206512256 917280886 984458774 988553596 926769844 933618713 933514803 993113174 883991621 982940520 378717818 384704610 256644127 350523708 752142315 966673951 270472178 941349797 190245253 507317975 460587096 820826055 25935737 451904910 875662854 898032782 850944495 883347731 154406369 576484356 722928573 981326260 358921731 925020516 826610652 993788596 956935245 977257442 901376217 913610924 178930157 994236576 467642061 652407162 143043256 775401065 597636645 736134066 45762605 456812611 190632747 949170040 815050525 817817594 872511427 933238901 979667821 982653498 200726390 418914632 941478196 967751966 277862243 463471656 957495868 971232246 377706405 559631880 699519889 724150855 19737765 386877596 157874236 284572170 820644948 909301278 295119985 892246268 935221303 958261907 980116801 991047551 612646344 895773932 77931145 178914942 551026230 751773329 211795092 797756538 132787782 224323687 231751767 318963270 868463692 936724684 531888219 639632558 671797564 807770193 825311795 965523755 532585577 907657357 483813400 631299223 932129610 946212157 598412955 749966079 963154034 986083820 565537378 694066680 321510135 414993157 289319785 501583003 442296457 957991731 659807273 751092675 375503705 967624728 685464939 842921643 6178068 42860630 843330214 949675758 819849879 820017366 622457387 648793950 461147330 725630030 876968708 953420082 880005697 916866104 92032883 473369026 491394125 881070961 879515248 977077265 157044501 504329749 191091500 692210451 222900851 363452965 86152868 715670798 996120109 998611075 536902082 645325991 878115366 921890138 465044885 884431736 495985148 811527841 68468699 312977381 842182304 980352816 571830208 948771109 980478705 990320036 123735149 365388349 87947279 137521704 525970194 818829961 146269867 602464919 550487335 714094798 293255663 733354935 819332890 932698059 894818399 903382242 986060172 990485609 710749987 884311999 864513341 942022995 458258908 685120980 459284778 561993536 257703935 616465453 307310567 673536811 914975759 967894723 527894309 798177293 678116028 873372800 288034091 299849320 9499879 814009989 39240435 285040261 196877994 464883633 116310366 344600404 445057755 592446522 498370340 608277088 158460114 963813509 786385335 947238366 163569604 619656786 975854082 985861944 668849754 996229430 881529577 924304708 157360498 360800467 922329739 986492724 567283855 633235704 787246034 933893859 552649482 810064158 38026243 470063679 708924876 857331995 425701358 465798149 74503586 420834437 499583242 502597298 112792109 958613698 662789193 784836306 146104696 605711154 795935664 959060720 894700481 939998917 762602650 767498309 961239899 968663241 249454684 339856161 401022152 953144493 423084078 808533968 358501206 539605349 347511109 412061468 165438248 872025347 792111718 922056504 181406734 680454575 915408874 964439885 606306693 994097451 578963870 872164592 656657182 771050287 805649036 930941495 607623924 704501968 319329366 596114342 495997767 747533694 345956190 636132511 664853305 944315222 680287632 863852953 249700436 603554008 810154340 816000259 384562749 651195422 730482277 916297695 452721249 597577579 94095704 714642401 273827536 485645900 150764258 908669756 407522558 436750612 805734888 966106135 246886632 605887803 176654680 422484782 709716354 998450400 424737038 685955661 447427118 648507061 685624520 764238995 668458122 751217932 847177582 942900905 68467797 409818144 312185413 821045162 248055485 451907802 215466142 725331733 380322191 626717059 344219167 604573377 519685052 698597253 293551021 678921924 289922784 534767726 646254486 875072101 219505017 965879147 332968694 692101793 396034748 636994225 320150995 367512203 204105115 904692908 141951627 205924222 624317375 664758835 413736414 908407873 219322024 764140836 59364674 446088663 912081426 962982646 150512254 709855224 655840473 719318685 97582225 620192452 353326259 616817082 511364784 808646473 336413991 635428009 128504352 678696093 734919564 780073765 476285083 884010563 315171677 480148101 286797068 640417475 8917461 649153495 237507816 940337986 933780870 988985684 985240041 989077933 137334324 907649431 897121845 938619476 979712147 997564168 761677494 853126464 976738117 992403187 762695491 946031527 918887196 955127623 957851932 975064636 277930793 867101120 740977690 905024448 748028017 785998533 330688921 796489819 543674991 785383503 517836610 552430307 888479431 916081297 636537500 886403518 709174233 797900061 604909463 863225061 312666184 979235846 758821067 830917095 205402679 932412672 403146889 495976980 3447348 228039731 69113136 410204324 450869905 849773320 112609441 515167964 228813507 333432413 681147372 764386107 336678523 754023276 483583473 513916678 6704627 375875758 192379666 364217834 233493722 480876820 567218804 919282289 904292562 937624961 477001948 708741846 895433208 998554088 934733514 980971191 803531578 993601677 538411911 708325126 963363027 990344778 241634995 241662367 202405370 803913560 644769888 837389086 160640460 332629023 155087113 805976401 946948434 996206860 452436954 914715700 367104350 801607530 79977560 407480253 647075090 721557044 519724962 961135156 901431469 946691811 899690346 982314202 751698881 907081726 76346205 419959032 63639521 620733135 728141532 978898768 188565413 212215848 32740843 959427181 553161982 863035693 171381533 592363246 67736876 672407011 364943080 422239709 272297224 661885537 608718875 626915811 568547379 631188346 689488973 862184758 335761214 709594023 836929421 957376528 579877597 685041990 619812501 988701416 120063430 474749071 460393836 983362357 99656342 343012536 996452226 996923906 396005594 411407307 178722735 476793311 85957845 472847794 904272174 976851284 530662048 734256705 631064425 903818023 540003815 669847538 535149486 657216501 715161411 825224830 770681002 890747136 239568403 464228831 97606291 876538641 479759314 802896661 810221532 919898934 236490153 582599284 690457815 890393567 814050040 825271742 105356490 363743966 633411659 944608693 598712480 951554266 379086547 427171039 913917369 933461087 289484114 833697611 531181388 677591949 377144421 580808114 256772468 518706471 756793399 866063335 718704711 850364563 52499589 514163233 95674495 453555890 802145074 856136332 587355844 770351389 695912910 711087920 121526115 571790517 492345608 792199310 372848427 604497758 799100558 986905663 697914145 784918629 728412651 754932237 536402621 585416043 553378994 861154005 487579836 992955410 153939456 485744656 83188606 627211843 373324017 990378701 526186858 912715195 557297105 833417540 367261910 590765714 637757905 872386780 499933510 544183285 124582610 564798673 66005248 215403339 45189862 827736098 47804829 841387828 24006895 624831881 808611870 937456505 999323425 999350953 902217226 951623289 870352782 885427727 994680835 999009234 160354958 171367985 98156689 197584238 348407448 790803577 57353091 516163142 127304962 282586525 645155745 826480663 348941830 605406167 7418400 556825128 74152710 351996161 42123713 411563002 580121282 814456962 715592930 751601832 861823823 944475708 710719205 868425834 748756402 980742436 871976237 916654255 621537623 799715780 391333049 843950466 243356775 323199548 698769080 700832727 896615886 996950179 246758025 521572560 756215960 855300590 114484487 927388448 421145712 749778239 724670210 866560146 894521745 917474507 724874345 949657209 383208894 510848839 377840140 955856259 961414822 966573616 76941363 532518363 185472054 450319258 508386864 836810047 778256970 804060037 736005577 994085762 382222686 759196361 260733282 429000697 277156968 936397895 859419234 902534771 711781837 883581017 459928037 689069777 495414989 623100711 881687096 986787051 729156720 992940476 702613355 920068836 337988672 827329007 126263971 997951395 174320031 474703016 489112985 602166111 865161979 875551957 361845028 514956878 443909073 675618410 179639422 672660521 828392382 954154352 871033859 904454046 650199387 910880290 998126434 998393112 438103344 756826785 929966984 945621791 720458792 885224959 561371525 984716154 143344344 647391257 238095534 754439811 781787129 905357377 937729896 961476878 302290201 974712047 246216230 611275759 414407552 578960135 883899913 888462114 773807296 985713787 448180637 874349376 928616125 930913147 281031337 501116257 519628715 807146591 507934064 659824680 164627654 968452658 877964070 936203696 123035237 351918415 272372764 442852532 709773931 820030154 489284921 645235064 947871019 955087403 419719822 971893472 36553496 640671227 416471049 797226520 415559249 571967630 833773366 884232136 175751553 749897342 50155198 579049757 130324107 364213825 461700241 872572751 496501666 829446822 95070078 227666857 347638418 497458242 41650509 237631861 527599550 821480161 601351376 950959298 26263995 965399442 222602647 569524087 309841468 949693830 859546470 959735475 91767740 273788053 526201857 909542197 439045675 940471222 841208915 890056510 633190117 734405635 992308289 994927375 993202437 997070090 265822549 282526610 610008923 788560980 855911633 875438243 360701247 912718398 441227760 792662029 462309685 788078159 613204836 822825506 909443868 933706480 851712427 880245237 64166713 300366774 918336018 925309885 828084035 978248388 921316462 944354400 311718871 552340545 427695926 480734227 403093993 509934937 948103342 970161779 984519855 988737477 919732662 968560484 534088474 968552174 384640263 442356241 975444358 981961333 233033765 726527275 494456099 829640672 560623301 573230647 496632639 903394704 371955242 897834088 214543005 837035703 535691914 551794320 910768200 982303435 138853763 718096395 890260885 891310633 57984621 336572588 489706229 619716225 766572209 967113456 197353597 435821734 411641525 977174250 976567481 984841092 95343104 632216675 891473097 918459058 884353589 979434821 677145052 868311393 223270406 333234959 779563933 967036749 94990261 977217346 678457778 711709142 872590975 895204878 778975560 966241665 5506223 556726045 858893347 955617672 449016951 464020797 256701323 629778912 879462985 881822652 660912907 907941572 102974444 823586588 706491015 780296867 692068891 793907281 648999269 703757733 292764686 854503082 650116016 801438659 408636836 898014884 108067069 848639701 589636458 599770867 303571607 650611687 80495293 281293284 520149867 580870815 474672455 592719593 253035151 691774231 287678796 509242838 732555404 771320564 322046869 990917545 232279541 688360939 780914008 925874688 986524924 993404913 100221771 604642160 577056277 662372913 684915314 768094664 610157356 669466481 955951856 996042441 271738498 403594292 134616035 293536925 884394920 981411095 286673397 625529997 505351954 573672695 770693077 841844929 403812592 492255813 304697706 340094280 917230498 923494698 478510617 665076439 492750766 845252084 461259422 803794992 731225275 979741544 108125055 231085170 190399469 782205611 898504837 920707389 334816051 809876797 866016723 944172837 164149214 932624894 872851588 979121998 3045495 77679806 438326986 671646182 487296160 923133781 180729839 613007881 124720794 159242944 939975777 942027746 265418751 533168899 807289042 959711499 823940441 994246613 116656520 348699557 218424148 272207253 299010512 909681525 581024766 969527043 430361048 816235722 46328587 570003567 958226587 990318202 393756672 929400061 364127661 623247361 837398508 902048945 93781394 313996459 30408633 160116054 75210053 701233614 558588422 865655523 578588370 944303000 824725287 847073276 956937559 995484197 647774718 730610028 173375387 888719619 713560109 752466620 623114090 641389531 593884625 875912428 25245935 470883413 526230616 912113863 710334344 867016026 289810478 804855252 850500336 892313522 902335528 911675807 889675626 976347077 473489194 767096140 635081780 717605580 183140246 781635478 413716641 874708089 146808316 304310607 849859398 989204976 148674379 416351159 525364939 534118466 415745954 872940782 450093533 648866340 841192178 971328907 541581788 562278873 938679801 987315335 938349961 978498898 657913764 713586418 141769658 601635508 903056318 928483299 868357522 895855692 859021997 972528051 502663194 668947607 691286144 971865511 845561178 940141400 877938535 980214552 135265181 784723070 749109956 820199596 607404722 921459893 685019760 821546350 310997293 397097563 63869775 455585958 989987739 995411519 357270903 696124735 601665110 827575907 67360791 744351107 557244198 964805501 707160695 786310505 181859920 189821813 462579372 800504571 326421942 529825383 949723615 996972026 255781862 910294254 655541852 975773662 134539191 513699404 854639791 992577692 681681441 918564452 650821833 979655999 908828995 957017680 127532136 221417492 957797153 985360903 790179146 918832550 980350594 996298129 877886067 893169868 85168827 545577904 513158020 951652580 381485239 571294831 111737268 167700086 876551347 988263304 798239890 940937552 256492981 405959037 204632892 657270608 384635440 793379597 778527645 840796361 645893214 906487870 198989619 845371013 808701707 938896187 670800905 730293305 137289422 706584595 217676663 468831219 11126727 976461198 135795342 530693889 381989672 808796198 855157043 951994856 867147548 891437621 263563377 385809116 955685162 981317461 862269127 993394269 866260188 972437266 263928815 889685652 758502937 906144914 155724422 665659913 474171088 617903392 85508272 364010418 504261823 950263318 275011498 896874618 134612487 330008871 234702134 543485107 995493481 997420818 737622060 989411229 87433651 465953199 557457056 889364159 581687467 754945092 794078619 977528692 27742520 43354418 345389759 853669484 861130221 987635501 260854711 668676034 43444962 832421203 804371894 838071425 971406969 976710272 986754606 989875935 15174931 465104438 617064042 632550132 590062601 650007391 317705693 672392680 42572510 907994903 622904254 870342714 429035282 817968715 163774375 862316966 898188207 977552824 580675343 791228138 706169492 948156756 539571343 787561330 363677774 516659653 854304317 939562025 223276147 431263457 726266036 963686870 128819925 934522210 504447022 682097842 44069762 627077447 152740940 475795552 142236017 708982568 986233043 993141303 528118989 819538298 52535581 293709769 605664027 773598389 162621833 434230049 124414419 930051442 729008619 830346465 562306847 576617382 448206655 823404897 299908226 865732334 757515885 967387418 679364706 962409160 59234853 692792225 972711444 977038481 839823722 989178166 341285675 761618793 47912415 900682224 636582183 724270744 347297141 628976042 549071652 702689831 446043865 913315130 187828002 318738926 676123223 724817201 605588524 809241251 416227425 543343148 514433805 691146777 238387297 803939201 913917318 982384276 76492602 330405450 696674217 927770627 348229271 682878707 160467044 819501510 162634600 895144468 411472543 458659663 271141719 859600926 877641714 954695537 219545775 710712631 242507819 678861762 709007730 726699752 646966344 767563088 185290763 352863358 840326555 999271456 486892166 588063804 516532936 608163601 181743056 862895558 151323167 414683960 614787372 892564995 417619431 998094905 981334900 984713330 808850870 858259020 993326561 996790333 841036360 924921477 26718683 416696531 889698295 900439613 91854893 617587538 998182165 999058578 537519495 992676222 705278592 892482361 565709496 786704536 849753432 977995588 682192200 914487225 36237349 90997876 490889344 638333822 908762935 971489480 932384598 983190186 615950232 629059553 758253238 982977229 392971469 400808129 687162766 862883807 447476430 722661993 247588790 316909912 492870445 513990961 127833678 676187374 864603367 997648855 811055721 970154775 322560329 751739588 205214911 953420300 344041878 770437391 134338557 242037492 50571765 569662198 191210723 432729976 486465244 647881476 747812612 944162203 792073329 883475543 599808261 812838278 417822734 966806451 663891375 894173119 729073177 962160364 484398230 590028481 301188927 632242441 35042610 195040548 131811936 924924875 977640496 990338019 721625785 789960635 942851473 949555515 879792176 960555250 183570329 443009378 692355366 845936185 26035424 174170820 322677104 933178389 624030627 722081439 728969205 734966466 982776236 987597284 336980647 347900388 647077664 666887065 707572160 878128208 383063267 659023892 564622952 873966824 320750604 767747907 483341201 980683326 697333496 766137373 145872350 620410278 163134454 763167209 37351088 911247368 850355650 873657505 704359813 949149358 618101369 922786685 965704984 991223869 69761570 508378352 118036362 975561216 344281683 623032520 770623982 887771246 813046895 917115751 349250192 804236138 768078423 945201196 840371833 999277084 394405432 831023266 683084344 917044315 431033266 630839399 77792584 755527304 189732828 669922024 592043193 938729216 356585751 847333960 145124735 460250541 996638490 996803857 15737452 726303943 185608555 748655391 428735974 689819733 464092937 710751534 127443082 396571847 705698137 740364652 314552796 962018986 242271599 706422891 569290195 941514791 426222562 877426245 573712915 863478902 25403539 900011894 613995523 987233641 513456491 822767686 952516728 960227661 194136246 933140169 82346002 800469836 227649648 553791613 730583299 788613213 279974217 723392266 748551144 879447253 369137976 971575998 722247851 767664753 423360700 692193506 672944165 679991524 46012814 102889976 542367599 835061372 633222654 711688102 969763234 988987639 451095752 978516956 544710944 744206168 996480375 998058392 139332446 579572469 783579542 923245571 1920531 460645218 893265823 906670438 427485582 942621531 646181560 962659394 219632043 233850492 252307328 570122232 273949581 901664883 77396847 719313602 1716331 62469583 638096177 861022182 338039245 419896725 886851721 946814319 482189207 632547501 343851196 375573207 184625404 356371811 77109312 419480850 818387591 910520023 559684768 574069385 361434781 489562593 350974986 431095783 402581866 760531641 28224620 698235995 65110534 196418141 640135574 859739292 897432919 905655628 729084607 814113221 769805792 779205005 997107876 998108892 375956588 599817229 84459563 321112501 51231453 489686250 378934134 671879002 438666708 441657265 983166896 997293647 559456782 842587966 656730444 943922510 649750362 756697382 262068752 370484709 944034434 978387670 948808437 967657176 362667730 674216226 720366769 817320440 398790922 867861153 708682186 851976869 353680523 952996188 954456833 986293676 746415725 966708237 330949906 715704495 262784395 694801133 682560814 965308361 551379633 630901864 87425233 752421678 520311244 882861708 528930147 562456566 714284459 716580619 741541044 812880071 84565461 584443748 782650420 831192197 267716779 650788480 166397969 632020806 742863611 843414576 824524788 947836619 28447174 261837927 927473776 973313915 135207314 796638466 62169303 918905234 193585064 400091777 423047338 844251192 873800622 888752006 923194104 952091435 207445956 227204110 429645784 981871514 41757315 86784220 470849022 523749535 906771740 980233366 675581943 703774868 139033476 382753354 961119429 986123919 117090893 732963486 974726946 980934137 223403900 461192678 691144466 830864159 205513813 807634170 833499843 953451661 335571633 576919645 641468182 876580357 503991973 718296470 820008574 857110117 845323911 964232593 429246614 441847783 531553431 783223783 551094600 621197824 302844718 773990457 586701220 911915429 395823331 523561257 627705212 742258180 967508157 995282087 283732389 759190418 650586806 787513261 284011255 544850274 854332978 884381546 775982983 901570533 265103584 905251318 685407499 884160792 787546479 820706764 153132035 221441363 258485143 393859167 340460754 790464430 252651159 986440970 109816841 519236938 880727662 972307999 880957191 918998052 951332014 990371853 763680386 838546492 752762955 855460423 163182529 908248841 317632243 502550274 499727807 981390209 434940342 708646939 87772968 143857895 765149546 926330325 736873212 879944323 772114877 820252507 214939676 927659034 98513228 750243556 653506614 983828667 580842139 793430487 204757981 396544181 682164868 865803261 361463095 471042660 292154454 431594374 652699302 906838777 701775312 801209640 276515223 789175897 801994593 934352567 268985573 975191428 76389437 153500325 824192767 887225057 38176822 947225072 224303067 848031474 503840960 729308296 555636907 709087640 160110736 529231148 444964271 679583688 932976677 988227890 833129260 944213999 356322454 879824610 281943551 576875982 18850130 344620129 791805207 825951723 3165230 71279267 765430281 941777563 586585835 659869440 703400342 917949359 217136546 860552936 869903690 958678316 161748075 483904378 617371667 625203791 2990967 551736137 432493553 567003569 698587361 919219981 152032513 965793351 265544144 737390205 654768379 754248545 563232542 831259718 296735231 616341926 297025538 910223780 869601505 881031789 152557781 445672096 686972981 891396401 421987307 864054014 896343764 912146590 650073106 942336793 617425909 989179621 708945224 874790871 254186989 808691031 695116920 796507589 494620825 886543073 777277877 848729785 164091189 255651619 390660677 961856769 349836724 352047659 661381028 685607662 710617128 833761985 249277209 800671332 712061989 907001946 108403029 164408734 472386281 652561394 558892814 707122351 562778585 881236036 289669207 579588848 909009365 979724279 614804528 886670333 169797510 706393279 46223032 856622242 765583493 838746266 620811538 722619241 337918891 774390316 422590477 960832027 660452631 676842701 290094783 533583207 499588306 806823883 674392851 772691942 355916915 735679358 699188297 874959662 351983024 588453483 695895779 890696347 90004030 330298306 889566825 919309031 20997700 547406834 152744734 405059382 392012916 770125334 636353083 806217142 672982492 926625756 1199300 160169322 403109963 781639552 127020869 902328790 423894253 622793089 990057112 992778554 116906850 587853080 287730530 293392264 678479302 768206859 36677553 147610723 433467464 531920462 614619144 877215045 99142409 415488614 101996238 174737835 884816315 893049870 122730338 776492533 434408324 788586908 325965192 679562211 789719442 865737785 511659635 662223306 631410198 678327794 95898471 172190941 337499446 545751433 584631140 665256657 469691945 923718771 411864902 879501654 214300557 243039163 928505598 997317573 943622433 963607778 925854533 941720989 707616294 814640440 840957243 997363331 351782791 986327113 965514752 984399718 510995105 569995982 115340586 128532057 263395091 924135314 11816881 984573091 676221489 903487930 365479024 964821587 875472779 938663724 268410462 587554590 59785014 719069715 88801683 651935377 245584898 684336184 930780312 952073438 122584295 752319554 730787857 780880790 515593003 734042980 475649447 687781088 574830339 876276469 74219254 241668406 753916831 787750495 611495713 646956277 256667560 321366548 227666828 902425453 599056915 620802211 931679910 944859317 701379008 977117576 374372869 816674901 391158014 592108528 499455112 961978017 149851034 905118324 3923765 629722469 643130066 747039691 782352725 867084136 704745199 903969336 325855634 803195513 697813417 869839849 462541909 941264550 198652448 286235041 544726920 589749099 693562151 886721208 600749865 986679486 259341137 391894926 609783295 933132627 220361933 970119043 787190759 810210493 971153908 985427943 453268634 635773359 567843974 623437344 453759757 816703806 551201664 714370427 14234414 367330882 254682465 261932476 757964238 770234552 354923347 892596487 846959432 879665590 995381715 998467933 428202111 540668159 63424036 727254790 571344041 576225829 687305321 996072788 680022268 782643627 349383057 584763546 734669716 841169091 47073844 406417999 671327894 896697371 560517105 671599090 906579799 954623816 700250745 812297532 744023185 773944841 649464064 720095803 424382218 881549006 613472005 634407897 639184565 763457817 159895853 181947511 721645218 975037220 733482303 987781976 910280125 969405863 219086205 659325819 924979767 940805672 832563596 927278776 123149205 473943137 858170382 916877105 620197921 958196816 115321976 779525919 727380328 813671899 963028294 993074988 267550598 831111793 100286775 460671836 150969214 985630322 865118747 968522592 436669045 743547333 765336807 851779530 70751827 953202505 485065362 593243691 570582244 859735301 747231129 905382677 359022965 559651261 28316964 432146171 479102791 708868448 739976457 953993498 33041274 799204038 655113207 672480401 813527919 907822226 6101632 590498722 429453206 493647404 90956855 514848039 430345984 547759166 493287220 845025757 138679843 953687056 482387359 614051764 234294709 844555174 147173274 492033883 791891456 914848429 889167609 972440027 68974767 278490484 52819954 671860739 687735239 806579331 144478336 811320130 395654727 733189453 156884351 257350708 19158757 463027110 422515528 929072500 552127438 709470199 801227208 882617408 517474011 967222889 432171833 938892480 44489797 596691847 442037884 585619823 490165745 763679875 576336689 918073935 234153345 348319494 514226992 763373628 878020233 941506045 208242729 534994721 445829836 511045957 776883099 836118420 510634158 732320357 558254126 911965758 367251426 612669896 708717865 892997327 315092359 494746718 117917184 357551801 281806747 667246285 772415895 998832427 132572937 226012593 198650917 300513513 852919534 918626836 282253741 806489250 571360439 759065377 800760969 820299962 840229343 951130830 239873812 764718210 693665583 715712863 834307694 848716422 184314634 452015713 881556035 889667397 411713607 583406294 546575266 680226673 344761621 390030419 754197242 994785174 459444199 780223025 719193391 934760386 152977309 175341391 272780439 652392111 896013363 903768650 509966090 765113344 926262006 948268688 249162125 661778972 155046576 982360370 974997451 996780442 116927512 233868253 915501226 933760736 188713632 333568794 106406322 782696850 484306006 704531411 722663704 994219112 102089211 149102322 213702054 679178056 875999314 973605271 612334875 888751986 214480784 948933485 62052496 570186533 515059116 597506475 468108346 991185309 325421256 678621277 975344004 979330345 846965150 958904109 269505105 332356679 945851249 951826352 640566962 797506050 212406989 387181213 6564623 74164071 588143112 793628602 586061242 805725340 940556483 960465712 441894951 834973806 774065331 862541531 532542713 615020607 585806223 963379440 507082683 962980276 40958893 306434775 441971125 443932412 898956129 998527343 304943183 950303891 373351550 569594073 375876140 948760487 142015624 915881802 95540636 827326200 891807370 947350273 799101291 981820587 450187747 574359348 885985756 927310888 428899203 645900367 217969725 501047898 3984459 69730591 577343913 903264402 496160538 670733943 692504811 748975437 155756060 547900332 362405492 929505158 82174524 458441107 732519405 956175242 388888064 850585721 265906340 668754635 55097179 142351734 110968235 193734311 689546415 744226874 135483004 928884260 841218025 964888333 515389559 730072006 160418530 673252323 28407155 347362474 492382877 871247062 165309575 851259475 855559531 885867819 137864993 458194089 865658322 921228882 744960900 995002292 447439753 878487705 799135969 928714457 174980475 512991072 915164404 923215216 781934224 883072811 103133123 137152267 631162713 691947096 93576096 781828128 498071846 813401594 947358070 979367337 822955402 945175443 667853288 698920428 93514062 489712894 219625047 684738803 692319051 865227624 337884100 756196310 150238375 253031148 199537408 672486392 309937233 713317453 450113406 869113032 264636342 435866929 201945318 564835448 832676134 867899630 625826103 698800994 719876107 842122883 70467725 119469523 814133522 886606424 855432965 974203757 20684269 85845109 881630565 972633318 913647821 969565174 526615970 932301874 682905580 912488193 314981277 502907558 37418317 619638571 278009650 811910101 134930731 351602920 807932044 862294409 96806155 799485570 635279744 958563968 258356736 846515731 755876819 834704594 850884154 984256002 190538552 268870412 868877340 902822249 448731637 811567190 686436868 794571395 955255493 967315652 429993333 970108743 406425511 584652285 434416067 450267591 517249396 591832743 178509676 601374062 304787787 827708229 540532871 604272491 521108594 735169357 897412320 921144829 897729219 945094277 980750202 985501277 730908807 977882096 490450118 594670459 211968422 634188732 539914062 591992946 870571568 945686795 385997773 595861979 783647243 995730849 424705999 520006563 251103123 663621168 163282650 166743743 949893690 998519806 211531664 659610085 475868087 975035255 562310243 735359449 479490819 635426360 670497829 984491531 761019835 956728157 36659898 249401602 502727066 766014684 647561741 853635124 931141099 985243602 169555518 749918217 122749452 911725528 816617356 925544771 903296661 939753808 772253139 828822519 470604681 937076409 369241880 430627494 698672455 806141453 51747087 346909087 484481116 743077861 472820139 893374657 392960323 652554374 54864516 862511091 493903952 952560735 995915077 996852243 107144991 992283580 77531846 516101401 140306079 713056881 487580243 843344580 326752512 978309394 976904681 998780933 484037306 534233198 814128261 915061599 418781631 975829784 609261345 787650090 15838450 420461746 575626067 961339411 791297188 819031975 633978444 812340239 337053624 746085459 583973735 950159049 997062729 998892719 177218753 697827507 594627993 999289993 997563340 997835506 231049828 471831673 578581250 810968174 178207733 598529529 876029244 994040275 927867884 965242474 499528796 536918164 512557289 819707192 346231312 812438952 125092401 153486488 842264314 894613305 568467213 593303245 661201053 761039661 137534737 155912837 545266898 608185205 177460506 848472203 533339506 961202829 262382329 300493646 716008903 849313703 336797406 823844288 127303235 444524527 902329587 947456899 479140325 814177387 858336355 876933778 982209682 996349635 982500087 984397716 421749530 795170806 382568328 918249292 567207114 721866698 452848788 961237851 842179116 987411072 372666687 576029038 322405283 786695265 56444694 243813589 342195883 649324432 699179953 750439617 678797716 844562342 292518919 318403181 769875765 904441972 971737561 977948443 870928789 937469772 766974508 865179620 504299407 792620101 676037997 719697762 280357615 552635967 16864229 984477179 752851388 995488329 132676579 447135594 789814968 846828674 577320523 981295455 410993369 989505737 462064158 753061295 751985131 885236560 725301618 844927939 476132325 565367169 864458565 974084344 693535779 929100516 893351941 959737587 860524511 945152420 730258877 740158317 149727316 884234345 455147789 924857992 378918159 392764342 22304594 640842311 915865142 943519504 89470302 416695768 351426537 829103255 985285544 996904525 703326811 901318830 553689466 782782149 12845998 457608225 618475533 922343576 417369176 612696935 114567196 264734686 968185462 985993785 695466266 861404107 246088952 391257053 974951321 996575682 620096358 654100573 157007661 617370436 769370007 963886246 80265964 187176235 667059370 744430340 230887091 687553806 225955461 455979981 203517565 519617757 129077678 271665299 974388343 977851922 275893813 333743639 649408091 805478583 384102096 613292992 79851804 469336818 404962762 773039835 50042389 270416725 708934268 884417014 371046741 700485712 149066254 681252512 413928651 503917835 552646266 658334303 904231564 920247169 185254964 429017031 114317732 299601205 934785021 980927876 922788543 952126214 103979879 768804713 246138302 975513445 305541236 956375336 817518911 922190022 674271476 869575580 662204672 691321659 477500573 634464297 312254666 530392613 860131888 997638700 21822338 155015928 286591160 453191002 159906149 942665425 119103336 507900050 434989806 995243566 902678772 959981194 429646148 771990063 298152252 670365859 206328723 664977981 995892878 998522215 527771515 767297025 114642083 914704172 663840269 893452430 785225626 851272131 600277177 851129167 385306453 880069644 208663385 399463640 560539975 977470431 796021886 916631016 751536061 762678197 597571536 772535116 480778042 882000550 958766266 996459801 120599096 774850112 652103071 685785829 644158858 980108935 315882490 739459514 223241091 690345934 250008730 506284655 856961206 922479183 294158220 777923302 842443493 874399820 962620041 989431812 920065241 969101574 574396453 782181213 308802950 735078577 277647091 398260023 796955590 993644960 950496491 965852954 940378986 982590468 54406591 424898575 571768218 891814530 421031822 545745644 625943937 632036438 55862432 283944642 138379603 511611325 591932695 849488617 285682979 615146452 597352367 902755545 131359305 397762739 953976514 985009983 201684005 879881941 447540164 775900622 581693558 866059561 198480353 532210407 585689857 951148216 111402631 351767478 990633039 996760454 585132740 832780501 380680003 941328355 243110066 893654288 917833594 927661409 366225489 662613554 394645970 887887715 379800130 750032815 970164522 990259351 23032362 501179602 587919408 588973374 60065849 130101528 525809558 956086895 388170586 431741798 548370511 598571640 729723080 973342653 1268366 843721796 636167952 791243985 821848672 943877179 745315595 899232715 464564675 552717068 200207121 952118791 72580597 852238048 275916044 593171489 481393169 755496047 614045248 631157344 783882038 932935523 323756715 478932676 330816599 645513131 409502635 838025871 945991125 989892876 873462558 972453414 389749258 946442163 335740887 792700196 388892459 432227019 622584984 770403530 404505355 444202447 633337352 860044771 787263982 804521931 256399097 300566183 665056224 706904504 140808273 176936491 994965431 995272201 772517719 837156382 281918207 748326828 698048929 917006379 466055457 467608185 243800995 699134967 186553575 459872749 284178662 929168198 557760149 710466037 311787950 967213557 877766109 936452544 451962015 864329576 990110096 998477351 126294259 405810833 920416211 935989282 886732112 960542397 907367114 912331266 695611044 932527522 269808393 413413418 805403449 958777860 779798823 792299061 171497191 350337683 105296010 305036473 358236515 992625685 415460814 483216243 253512702 687598798 233055516 906554330 251397716 556802968 468779902 717647487 543974251 875028309 398077606 699217472 654296839 839389063 5844274 977876181 890176773 925840741 418393116 489059643 645542725 892816242 724717607 997149718 343851560 567318787 458743310 736743829 274766578 981174756 877459737 960940772 318628080 460322177 693665842 953157648 994437425 998520131 887155376 947504688 251293135 846941882 31795175 681317240 633308642 945023544 619621800 787540043 995966648 996195540 522327594 538299973 907573446 982394396 455290858 742261146 191380810 976430448 352160026 553340204 714744526 725379906 973483811 991647750 810966504 920022576 189143789 609708219 888854455 942614742 823221245 849823864 789658074 989676924 920346887 956053524 494595970 737680916 871704020 885134907 875821566 952209073 859287445 859733691 187576741 991696337 439513099 610179740 548406836 807095693 733922729 866262678 89175061 650869580 335677651 678788975 735195711 793076511 58240210 883155725 810879976 932694831 979045851 987415855 656294171 954961933 605775522 914058939 807384019 965587193 824884726 847361382 993014316 996288220 32332128 876225004 436303538 529307364 669207308 933891829 792791225 982553135 227222374 354622566 283471078 344853569 616367607 972464683 6147548 38634905 625939092 884132710 71603127 896189433 622232874 793156618 890618252 983919173 883084381 965974907 295158898 799119501 96208517 944529431 214362029 579798891 392456771 460961203 644500464 684656717 184292394 825169487 383882891 919407655 101114420 724894028 648755029 826388444 740622046 934997536 875702766 893473354 685741009 902929467 265997044 611540645 233031446 624764019 751850468 838566013 734479299 959222609 42453423 293803817 429021074 448038822 878867114 903630364 561133493 729337377 37773532 279126177 180217517 647563311 95602391 888922173 232117310 775984911 503248730 614171920 341585236 962794767 454434451 911273787 707090584 718314758 559312313 900984181 193720648 868306228 61547273 239343966 852696219 887147931 261016199 863075671 499004061 912410410 968586066 981907785 738171716 790131455 445596019 798986586 331038114 669845167 269014259 928318921 301068580 753464013 495473717 634725897 449057957 641081701 836786173 837832014 871107448 938329530 528506307 759048535 747346356 798690613 890338857 916808298 832911921 908697920 32598795 966162103 638473947 689917978 449091331 960186106 436279491 436639563 168477653 172182649 984517392 990105587 980772354 995446003 719874217 766037419 398119308 801340629 173336401 432654054 607905836 884340960 816290601 834949357 95160339 941956034 674353182 862066444 325508107 946811749 233357239 884122898 605879874 752115715 596316924 964815648 1881003 563486071 300064264 420042882 772309340 935678952 985910760 994051232 124747290 610383132 249155053 920992775 345981839 888704328 943390555 962791681 207883126 845094437 855183797 991606708 502928606 718348601 673765043 973365480 416362840 966307999 356109310 419779753 807933722 884202538 578461400 838268715 682702268 689364272 437288704 897195042 764766018 953303001 671655439 867592051 559688970 686826747 253123830 719628550 568241959 963207293 47624814 388466784 589833108 623818875 399557071 626704854 860025111 978872653 353882161 980794882 30033599 167534031 454114277 806596166 846983713 852015250 882699260 940029913 662990221 946353234 899958924 934847694 101690388 473077155 239683613 965471565 960724361 961780246 772855207 796401847 236003610 329895889 201426348 409506014 751450281 918267285 843466746 938910569 204745920 706567384 629130991 679354048 102928221 718888556 291645822 479096753 14907363 305544899 61749647 206895472 815884797 898963667 399302329 541442333 294508712 762505057 750660867 969237203 551228507 779100445 773534723 989724248 983070371 988978803 692580913 926797610 68194704 929524901 417485522 754631774 436073539 741811934 211225953 387006873 291806487 498503616 719986005 757854745 427389567 851476266 14774735 654717502 476004779 837374444 778414316 955639168 459466184 853593983 195621167 817339639 919837789 952663465 937903418 968217166 747136921 799753738 130045862 896648193 167737385 775998706 908065886 954508286 198351711 862768132 780719940 817020065 13846804 32073339 417513869 694172901 467973652 597305508 690847328 984866596 194467864 902728411 976530590 993080948 793473102 842445781 789626586 839962849 287495185 377804089 125382514 753483227 324658452 440560334 451423444 580436153 988344489 992598530 483187863 860554942 215561019 334083468 935957699 940200005 56202033 478805395 694186416 742139038 242818957 967972026 629663627 756353008 295774389 989341866 919435772 967959821 570762422 603465392 969743413 978217336 786577652 822903013 560921186 820174263 439086824 825926751 850233176 856655678 983982265 993996248 663109667 725312780 436460923 525906679 86200456 442406699 635762994 681150737 769327014 982854570 776048163 791014712 687235672 912657200 256483870 962559321 856998055 989014769 821052133 844960655 225965448 396594803 671958088 766788660 809873747 902585019 548809110 674830043 783259907 976396602 578607592 869205043 770866038 906445637 664395193 888170682 567639411 976701512 965856324 970582625 136950316 691200989 801416185 852565179 128698380 695408192 932483787 974002201 425449700 936329499 998785938 999001856 190045143 769591065 493189036 964209323 556343875 646872948 479700371 585351920 38765439 866121190 534062132 738570637 508934728 769760536 18579595 847065173 359263541 434123423 430022794 742807989 710686157 940286782 118368115 381503163 311116724 685736519 100888336 363056644 66350726 479593642 936416194 974877077 151136055 517085191 747639352 978574574 440191562 691378556 368305220 927703818 13888798 116770547 791606203 886500682 77950055 141802211 737078543 744117917 754644886 839113841 103032024 358944806 371242404 698763102 881714534 907647612 627896753 703113038 643777259 917497618 733392143 788794237 109897615 754771999 175179357 928776241 927599357 974526585 57113 790372982 766433589 794630812 310106442 484530759 977216344 991836067 8937802 851086044 289340271 669265993 367188656 872283862 881953540 997098393 920131436 925911046 466585184 495268187 901319910 931201363 388223629 574230778 516837991 796923377 229890164 366486263 937739151 993457054 98965303 641462730 120928386 506014016 832073184 979954172 631215109 703764549 58113892 294902275 662302501 928913280 822366566 844940030 691106381 691561167 403938313 494715425 955744682 958300837 241789728 514255002 66209900 383344218 885874999 922997209 465255339 700008420 570268589 894580835 851651415 969704338 192177910 602451168 129644831 911479407 760515074 856870291 513000457 751270051 66755137 555347687 253672204 728612244 492114817 606380104 223581307 842048911 598159214 800583007 266725793 984834851 368427967 676088098 534821823 664826047 186554873 331919579 512349829 936374945 943742848 991718798 162890765 350881281 827534451 911883909 496318453 511635780 324504521 354002428 421783743 713515923 639376749 898048450 548063755 649855454 663278754 888474548 663205194 832245706 347035174 747753884 335854599 478350423 624514497 686434806 542685144 913347947 865349057 942595357 682428464 731949718 63256965 771700791 354576880 651446240 36512623 577811734 117896950 872235315 317844905 587844877 292195623 384861238 132457737 989989027 83982889 356215695 151102292 554926563 215748040 250574709 99462951 429175580 490772030 972422445 62287210 753253908 293602049 570082193 672426070 857613528 615754095 762277957 723663243 787179081 528468054 647952620 250762934 320309534 326560655 771594384 330691598 599133540 649801999 707006589 948885556 964622157 46844283 284939346 235860920 504942304 208966707 929672467 170445947 846719900 483538916 667267919 771544743 989481505 456946110 660623249 613698826 751990259 869488460 966545409 946943989 970490032 362269464 625942368 110623566 273294084 693195848 772733288 170300603 181528200 484074704 876568279 612925584 791415780 826623851 864724903 122562493 891041259 579154011 800782078 179079355 461034397 423235275 541255809 775297711 978388811 349950849 635738889 782401061 930564612 89215216 848544765 407163926 578567677 893089607 983173274 795118199 821486088 933073674 987675473 512406815 580334954 930887 203079478 903297897 998420623 29380369 797792730 169811867 791346558 890485591 954460576 942449705 998662284 723343334 962066291 852806692 919458872 116947394 215362256 583018849 639642466 699534366 813455462 350674179 817560034 274148502 732617642 388590634 743676489 360902594 952629602 989840342 990670269 913320373 984701250 284153083 998402177 679085575 850428220 592525493 879535347 533125295 888509815 803786847 916448038 322330389 653363773 767859363 895893137 442034219 502332736 188257606 301447631 904174742 972678620 713059526 969191434 242009233 316823250 197001163 367474473 949361083 999083889 311743788 436050401 462293554 793091075 519304183 544462715 998865755 999333645 64742857 632483175 192543665 997095585 222265334 401207101 861060521 879425213 424517853 646120002 881177555 914776940 271124894 387060924 529583817 871927457 949377234 957366812 538933039 879815024 939415545 984243630 218951812 449084785 790900438 853579305 175255164 347867185 151259116 162848659 928901663 965653035 197905433 308241020 315163911 717587688 861790506 890467773 306308309 385583178 444076088 503808220 624465532 935134909 582754449 860853224 427571404 586714982 811983310 816113804 538679193 757393680 811303851 889422557 739951036 753604463 750562639 918935417 65782443 713274445 727240016 736900919 426418613 519434414 859781782 999352875 675229965 977420875 873229291 891742721 861954802 890362013 648407801 942577256 17283991 302584872 585099306 666781021 323633492 590127924 887454995 894330428 270330398 463873797 165693579 912428909 972933894 998182236 946111505 974171858 305648778 845425306 336775894 818383470 868187691 994270475 198970708 539413591 887569129 970138756 370547387 967884818 355346502 539382765 126864809 654846177 609871161 666606104 740771765 875770366 930220608 961303643 715438566 781394609 545656652 908541224 891756787 995509381 131796006 372941174 946103661 978380595 210059303 272847419 153414159 724772185 965736302 994433325 450850283 597951258 614782893 651238399 242648011 791608637 260847368 817586033 223763389 340830008 443378144 509428269 355779916 989172547 156593109 685995865 307506204 780358347 939220544 951657922 979115079 997395311 881747431 946013203 629816568 977413396 277290891 740522724 729010574 969156608 38097442 820386201 243993303 768063882 473429793 893523217 667158137 905302277 760828237 860780143 950933761 969408306 773192426 907121214 764842212 792715403 51438125 199061167 583115479 801602298 503518076 657462997 780352555 940420095 987999677 991063031 901801590 983852262 426300388 623163275 3880119 427647759 769634533 889200920 125383518 280578611 16360837 471071546 91311223 333183992 15100840 657614533 57601394 395987028 516780227 963737168 71112494 286031547 468738593 816719524 588341666 589778347 382770691 553116582 789296729 958187788 215053486 937825190 180375477 290121327 473668629 559433152 236587721 454563686 691049094 956215898 842600878 848051989 764901683 868131664 512081476 730038335 703140214 757896265 254633930 318378410 140608577 814686837 267217723 730681573 724266603 845979590 558186920 784844570 602565908 846890679 380962706 476581696 366763184 367864921 777947318 850730098 529699465 582753981 519339565 768904743 5940827 216370726 758229205 968375346 352592822 432538744 699354561 935454998 850213233 885847494 592334630 784882417 26206226 269358390 542023858 969864190 662776212 866205240 821809685 949720384 932740255 957735740 43285670 917692140 8187625 399394613 291823977 539321515 910877961 911201514 369576091 802169601 209293135 253193090 838385907 917465929 647797793 678074657 714263641 727173115 712642942 904543062 152727339 746384350 52146746 897581575 359092313 517719044 908320877 941339738 102181234 125425314 176170310 857766356 560272241 575027917 912407301 938658197 267357658 816610253 35825060 879213807 26151030 667395258 199801461 376899793 556657131 670454828 596475437 642577182 812810668 867516465 395287214 410782449 57622683 281169754 488802482 703571719 837880705 964593860 979340721 994502495 811301392 970126988 146184963 857486876 181915295 274784212 599753683 811627767 2108754 158194718 334276255 354858838 402598011 973219569 958967790 994599139 745179695 765340675 849638238 969966186 746891608 805275921 760513794 993004205 253751066 988267865 580488069 766770077 46722299 440263693 545995924 572474311 674258423 992146805 756213510 756298760 761765603 903206453 668179197 886390477 313265500 520062027 126173110 756479670 391104591 892188822 209792517 933490544 843669975 919287369 864007184 907226911 153372429 794188715 578633454 998029542 335717944 781762312 467970183 487366322 807215420 915839103 949998036 957389802 92652096 430625015 536250508 605046330 750788737 884407861 129182583 849526063 632096237 726448374 194321047 532459831 823139491 857046740 570614977 643216883 77784809 176935573 715751417 716360044 45502582 426467270 918142787 994643316 241943258 542215060 974852709 990400440 942088461 971771074 208460536 372505967 56861777 510492262 887615273 933681948 491368015 998134385 999305392 999378322 709633245 836503964 291148211 316882240 64643873 351127634 295529189 708407673 509750452 554319213 950054069 983422502 95459571 452902878 147213624 319466552 84241670 279576191 99816935 786110614 895570944 987275200 190106304 477572363 126516710 767145385 964695515 994832696 673063480 885053781 857469688 881396526 829521306 854936902 548936100 650241125 284677521 438544986 648581168 852900473 559314023 570128634 96090995 826560374 360692484 489835665 984760714 994739524 319093004 561175741 471210899 794251278 695193454 886897870 252259272 633343729 39277163 455607916 451738923 823768250 962291498 978065735 233462404 901599283 847284992 860939177 320433376 757579224 246799573 377316697 552801608 644804856 656637162 864787869 811664362 899579118 959370275 985736499 944784317 955223829 562890827 824437520 495102704 596832642 702184346 778359644 554009956 747296332 128825540 394341855 442635720 717186396 908850736 999304240 881578155 962473298 919540571 978359977 511334821 728483180 644104950 856542198 279412568 538278026 208608968 560802694 867525193 966725210 696271570 834478290 707045677 721095646 693577445 837559811 619153114 909102885 280684745 451910407 784610062 844512467 35542002 574693657 612154007 672879600 477404716 600274964 280588506 348961197 336806616 796933397 792389440 949097003 697050679 840510305 683873396 948561404 677536500 896387536 239743779 660322026 868376793 886189272 377637162 696061172 753751724 817236578 35092177 615308442 784583056 857881540 969138090 978669942 532775484 871263794 281459917 878066286 559887597 619479587 953168704 979596927 351339884 867985958 765068107 830838559 6234394 516966057 656891998 810178076 318410322 508460464 454342280 836518464 140737725 903294080 601729696 961657906 780886873 976213637 42039253 307520104 190865150 346552694 149266435 468242990 734516828 920597044 776031687 973413424 60989942 83114289 275210940 889569544 839855037 870585689 193229342 927251297 598253866 775002115 138647390 186839985 737397137 740494947 487343371 814563222 287282391 794180177 507987359 736535817 480897394 926637418 916016402 948196339 267952998 526671338 841219507 870713540 272584421 395270613 334152054 391812559 142588649 400221226 639574081 941744091 757899843 768166919 672987153 875296155 333378942 753274611 646107271 912979038 637892921 935202501 592056652 878667737 174714900 256805614 413408881 868624296 680433396 814524623 387407474 965521886 307418598 658164169 66240853 101869537 735003347 752273595 414185633 743696478 465033835 629061957 279454242 517486946 819298163 891951105 734637776 846039384 372188922 864090015 299819994 983452346 911773548 948591398 81108778 513601869 362976365 797811954 752925871 767722675 406445539 408534019 266068317 888202853 749445546 865921315 604241367 803320366 336982671 793623165 222514091 268664045 56746965 261935408 527288950 571511614 335816387 693737243 240390678 641649656 835184450 904839256 698822332 834360373 320505550 339986334 511254904 711197483 288364316 677223648 337504701 589891876 763865987 816654136 53133518 458982817 973331164 981066223 546492220 884747321 219688955 574446470 66823999 908423993 276419631 839088325 196369008 632162156 796743071 930292140 489236786 707741431 454685807 600871823 375953933 759560256 948085667 957019161 18912553 35910338 472114406 726751710 632187836 736431390 6440896 685512180 470310955 638269096 668585220 831349153 614952041 929786102 430260621 583158961 365289233 967680200 837752762 977899469 431799408 447693521 785446324 902257187 603213197 737436411 637357765 814222980 912616771 937743402 115289142 262332328 236438257 721713251 130091651 667975763 906551655 908216085 950338912 979844538 822958131 984837970 164112994 563522563 394248648 846956872 12409119 733051143 913292261 921490162 220552425 940402302 190794283 965226011 276936210 351099650 376168189 682257136 239072493 779736923 350638345 360196438 264325030 585855861 152246069 429901058 480337337 965144727 393862617 852696032 573236178 662343402 483479042 623779767 551450816 564631714 380462566 475204367 991482509 996353393 260288591 385997461 436950236 759593502 239243502 262817596 482460787 500967651 370605919 512822393 643048280 680970831 435465822 795267791 648610074 649313885 646164079 760558948 914627092 975509553 740250484 905973444 472166576 600427575 17165181 38632999 309151208 822924353 745359904 768922195 400930961 591754320 787555881 991018946 369206649 741990676 381446516 495289639 784760696 916628897 981273454 993220171 896529185 995873038 961037947 968106212 105660858 952505409 10603441 342013448 640103789 914008025 951480080 990483524 643619893 975814016 702237140 961737392 427661002 468271695 960099588 990778577 371458693 755995391 286473614 634147184 282814043 470727297 104742766 767416431 36239915 419729582 484653399 709685226 243150710 541771391 563336194 585612581 338287995 605897284 387825620 402607569 51027133 272855000 944764569 965292558 948903613 967512035 994807275 997047843 643218281 951419832 662923955 978099379 313059418 528761008 926163233 970670466 137015394 156196887 324499743 372172401 934030646 976216583 672251100 815995589 449322045 516149463 682797842 761664595 644576489 721125748 29746207 630543755 481271909 777995461 236417812 836806354 625316524 973561682 674355130 770082973 678593064 996750638 633149138 764202170 410414948 637810161 995552445 996830468 691353926 719883638 654834922 736291035 964021889 988628569 259390429 531740771 271403561 848798163 372505261 441501845 179005738 350598042 710579355 978689049 950811039 998356312 994202567 999285527 14802032 484987490 822288423 843388814 49218988 234518134 643325771 815283614 296671460 577939487 938173573 995353482 905697481 915899856 513864175 889566309 375651812 681094489 795589385 987717175 106413316 739929694 740948997 999321979 341915123 816579109 694529526 918554303 322436413 890491202 102710984 128908899 636606930 849392252 5725074 794383910 937244166 983502548 544370636 630201696 1946211 659927111 246395413 511459845 862238515 979942192 170283276 540503056 884608366 969201435 652121378 939740549 13888984 696833069 17067003 374471867 437334559 842715890 40187296 71447017 855137295 978101118 465035224 943596659 47092245 838156849 468950805 711513004 555267121 780368839 758208077 830407337 25778765 201951768 861221986 942404565 425187908 427828100 523114264 733923201 217686390 222327443 646008559 861196914 93688596 513250422 374000862 532998106 675835819 874103859 376412462 796112698 327765781 977736514 134153834 257781869 132418140 315923950 820623004 906869769 884535127 918296525 305292490 809345555 6603229 619240808 774488830 851542497 636743296 980191194 682759441 835727394 626305260 632749615 988841560 998292349 484692211 561196907 373418027 841751011 250558766 454711339 514800952 603025737 141811368 878681219 545451845 607691838 834838698 895758867 998508703 999145293 305545832 627556855 991410188 997759561 653273109 692570423 638361678 931257554 487449609 981287247 845575427 893360422 639680811 820956146 258630740 307403179 15047673 896789391 939350753 954188588 142825261 995426119 450779820 826435005 262172988 379727160 91703889 942251239 981249020 982144203 827247635 914771976 171397507 471208965 872134940 886415352 305596210 509568037 17252516 391642421 785544743 977023726 316072156 778165552 541967792 543935153 774648880 846463626 370539480 684108455 947433686 996799976 952838561 953153720 154557114 799232244 862477132 959997044 117758113 538182021 150154341 807455794 660691276 707201483 687104835 983589888 724967841 967934431 167347521 540366083 453655274 937681279 27998994 931731001 243473595 469142633 961892096 984632468 312882987 450073681 69570691 844045476 403272961 876911787 171154633 535386210 645549422 956306914 220035262 349028317 922786215 998402565 791815295 816487443 580743168 595387553 648046731 791224840 809630417 846136155 826078419 944528706 946368447 951348898 228213199 991595644 997208163 997209076 964231910 987862364 997939994 998506790 593251581 747492467 490341646 905160060 502641587 650270984 339540476 608018623 748616614 777261669 468925646 873129453 620422569 658020612 871745692 874260634 358944621 970635858 471616347 558781225 979229124 986063036 652505327 984018303 613285060 713186305 548490556 653955111 591202704 599951444 490070725 514150176 896111724 990459200 889623119 961292641 223247190 752880321 414573882 780247420 374146007 984636217 958407350 970424995 792620119 909562700 894851166 900267011 287980299 621572514 997459720 998701860 570586859 700335378 221732639 228168154 120799627 244817495 335920873 718275911 358014791 504227255 190807229 269498315 700343140 805722814 582676796 594138197 247864982 746779556 254120290 486422231 967618596 977156369 375658819 543241440 717530950 850017865 434440934 483039767 128928088 289037363 57648492 449461511 854941533 902469962 509443458 594297807 719189031 915533303 568197815 843647190 835607670 936608572 810022809 847896574 629803289 805866809 176556219 784738852 98206594 661525321 841980180 907296746 959524042 995415115 22772793 158621441 877676364 992419217 332845121 815124156 953581607 983589428 162907830 902691507 723051635 888228363 605416490 656334099 909807896 946118781 367884006 389781930 483464486 683574706 849210931 869807795 600355219 608374739 662602552 910703867 625033572 646459727 607038018 693049514 426887639 717984505 445957981 706492315 338689625 699481649 501262704 548184346 735101077 790105623 144255501 996984104 728779853 802727146 757433 352248138 8821553 169616716 249346647 682269907 69857500 469417564 663470462 830768657 736864513 975704834 292778036 520602815 652905803 852024062 707327151 725178385 890410496 957928065 723192328 958905316 418275545 419718408 38620984 996768334 133197506 279540673 817952793 975901649 187629742 421615157 826665253 832817601 533557204 790278050 824936450 852484561 479619710 747094975 876733505 929071823 785694300 809949224 559556260 931016569 132560621 381952112 583245112 598701588 426244315 587907503 66979469 830120927 704339206 718105175 539070117 715758430 110538913 527772964 428317708 950947284 515655194 806209386 415597953 423030670 862898297 922141716 669599412 821849120 772632650 797473798 255882920 924237454 368633418 412239946 527939350 601437837 248880080 769629045 201483154 899134269 569020593 967425723 60562957 557959706 879312993 951935790 18422977 518555142 807468398 891319538 780697865 943198587 425176555 846151990 546918864 653990916 987554523 993832198 754222339 805712599 257244793 927712310 895551127 954227530 733428538 752388820 760609794 853977941 582867478 995843025 256583646 553690410 120558864 311255560 600047295 759218559 47918633 58540414 694649660 823131098 448515797 811575608 250491289 624224499 234725470 581666442 650038865 815725200 786154617 948103678 980508336 991317887 833796464 845462698 944672381 962782707 530517200 536350000 373618342 897594031 839932023 970789945 36368286 924160247 371233112 501349080 965999916 974477851 141088176 344546193 139360367 356895154 903304914 927016543 270027490 663083449 711644897 903446374 658906334 805529732 699652506 770980113 155089166 812246737 377715823 967587287 511267530 725110222 123913777 327780876 422542041 938571567 734436162 861462059 786811920 936077704 161324139 275072715 429822598 872555467 119067282 618452741 794944901 904308515 658378671 884168877 437618441 523338999 901049757 937579313 13704342 63140774 695402940 978342759 769943773 895440686 731951472 829937824 547209916 856467875 53833379 619229388 503233420 886099975 64335538 833472595 699417712 900643482 411452085 969620775 184489048 578414686 862366166 948099160 351300459 832644955 736371531 857434137 652709310 975822021 492217811 580594838 322014386 913250903 916917919 949776789 248499058 453278936 688344509 760147183 968663783 995435815 60406248 502868622 200601013 374948435 849346741 867994086 90975248 177962351 885012856 997194741 207201627 560382182 414681074 994001035 190095943 314152197 715050561 752668739 567844897 621097265 28345700 417606784 943316410 948588847 473061754 852339411 169879027 568656494 125445865 158488142 667062002 893877664 486990411 653176775 46271393 625013737 192532273 964849845 839671176 919854734 519025077 561752853 327410411 453260977 463760059 538399673 685854944 686644927 267575391 322916230 76128948 788873772 597497955 829162808 165444155 358078147 839488831 899066272 950269457 957599454 90819056 972067498 118367268 269859597 365811471 948663155 836299664 983456012 558693372 828981182 872117405 875914311 601248484 617699022 231140916 908177704 333214895 497949791 803143792 965261437 164999468 668235501 117484120 459054363 91923079 517551791 327706766 604897401 445787692 792655333 938592253 949318492 967191954 968972698 440800824 695302364 295737906 432797166 141300242 920741915 279864856 613420210 810300749 899794901 663317773 974855796 396685024 570289418 547602208 851891073 553541525 879285593 800715941 866633090 214495013 655235168 34896652 971010757 35954643 975853033 42265085 887914752 524636142 557664756 106505085 218007373 325945003 816991463 184393752 953038701 594083786 858157265 601136610 853750938 863950543 878176912 342518192 633293592 979629571 995920886 232766556 386301581 361982459 885556055 35856750 320222984 502079967 877086653 149434882 456179091 358716983 653674527 499102134 840358523 444026647 511976095 161099881 722426440 26818341 964841186 219507188 485049670 142898283 528860170 50604763 585657793 184386864 994378973 960818256 973672010 54606088 278521507 970895282 985200000 121785385 666242157 810564440 956111402 210180510 292052677 125979074 279689779 252143996 460282462 138251764 558275458 463811950 619927365 391389930 423824286 337700581 588372069 358423828 746854027 656505920 895728960 996303064 997877496 304225324 663195579 826924628 914866178 640146440 670803767 206141944 657397715 66024764 276395849 135720794 561820480 793255406 893393592 541537248 854516592 642031597 957683237 682540221 981399229 219756966 427839249 495377329 647957568 687577762 857234280 653715786 879008528 876452502 919145978 819626772 882688374 316223742 865222994 158017179 301558197 133074871 623874776 923143608 935325602 907525167 940273850 124181606 124920283 738650464 939253478 770459499 913318782 124615455 942746206 345456268 485967154 382224672 419492356 555045045 965618430 396529251 610893235 268226804 467998510 560409781 934912599 475095163 970343260 982503377 993483018 7915742 193024017 966255074 967633809 608222584 886014803 408555301 965695104 622491555 872807112 676833662 879966127 647581144 978001302 204830285 520972230 907324785 944621079 909648564 946159068 572701648 757474977 540816615 593965348 13883857 915602878 368053900 839428212 594220242 870760474 829243278 995832931 239063835 490520315 881511818 981338394 489423710 849652587 802681063 991819128 643986628 849182079 116945955 859474515 781618767 830518617 116185982 595092953 839251801 965903751 951485156 993555364 446282441 632532829 674377645 691020158 53840126 419942013 106090951 927960372 735331935 931090236 172548659 424772155 363245208 383204061 821226621 905831306 938294906 983125210 669276797 909964391 3458308 346069844 532929192 594664490 409284569 856911764 816069457 874854457 871305814 950380791 573659056 599200851 78820977 391009557 179260546 655697482 323193157 852602729 56134403 875479964 951932743 963164492 18621517 432176542 363473970 631682610 632152790 814492542 800687791 944145325 625564624 977324323 330228013 956541610 169905509 469145355 971224706 994190251 576328121 620994397 843899162 931348347 793450134 872529651 385213395 851840414 407736162 759099439 218903649 489839481 661336635 929106388 251246193 430828255 418934581 880768023 707496791 982073067 330345895 442449382 964975608 977409131 807178152 815603260 687054564 958686474 50850336 303541411 452168582 583664416 425631194 985449670 816129678 839268400 176527927 947534533 246846613 707833035 87195669 732166979 367302322 742657084 365780910 624039451 939455076 968168189 270942075 573137723 844328277 893096738 802623447 923519686 266493572 905296667 120461942 263842655 348388202 505933703 467932413 625978588 5645298 912094757 534153045 682366896 190452243 855945367 660588999 681707816 168114029 950632594 587924419 983602483 800919328 836488686 836265815 867470877 411782139 801714092 156296476 477507106 809090469 953031692 647736663 656660946 743232379 997680503 818255248 845861676 130408980 591895086 593305059 968295409 560803475 651468564 612039922 683360556 399253928 798558844 457015645 625256291 182979085 579776416 558727558 613715238 18241821 513462503 842239068 939931296 537343876 921416866 411535676 880578062 885597120 955337248 356016459 528104997 781874756 875298987 633771242 643178392 861779105 870516945 554004864 609727138 120602032 637110384 132426828 246239163 112924315 613204167 804879650 891280667 918687204 981309299 505351135 941052663 717787831 740340403 440873938 598978102 269562515 766051995 536803948 644376610 873867042 888114400 644612333 675469485 315947689 635449822 209885260 464406831 258595546 361648416 825122905 906028013 8296882 54607022 981954562 997321789 264700209 308120366 362843007 931175264 918290109 996231432 833492948 858167874 360568941 939144402 7989912 638797171 481215442 500899341 190098343 341827595 831703537 865218049 754533131 789233923 251164506 858984937 896126437 948645879 432187854 916622910 538765365 607728154 527150287 590772412 404787753 600824364 771408562 915628424 782771629 896639822 218080176 967175215 691349072 718727149 840736389 952522194 264595590 535631463 704632158 727028396 309521802 775857577 860145927 943428482 650826591 695194048 609292671 890284531 977856787 985803580 157294964 230085308 519619431 651943364 496289603 834740214 437769204 764017204 91286342 657177893 544718218 974189717 978645548 988949457 290166020 593847918 504908479 946782536 640806202 671127114 249265979 950493491 390811915 511973323 177010511 961285351 308753527 711772380 251451098 722536410 325283648 473415884 990709812 994503321 130374655 864142747 501643030 810813618 229217847 550399731 30740117 177125884 253211567 987282173 761056218 791968659 880019431 949374090 890476409 909588454 489280358 623907109 311559066 494346794 905532673 963969182 451702848 891670591 8251854 677092700 589891952 646802810 926177934 997724073 671173984 714038053 537544384 681501225 874025957 973924051 727927475 852109016 439527367 851243345 484775703 532997730 551201714 921204219 736275137 947318561 320047664 976389444 258722154 890260332 625255593 694151612 787255223 996118963 372335450 448785919 946159096 961863383 866846140 940071925 379791224 631532245 543767949 799550955 805116702 986458685 756482857 779757813 160987134 780439173 720721542 789381549 180852969 765368119 531241381 771692348 988954633 998193253 423006188 540412692 938029385 982795879 656673873 994536595 522626552 962502831 513475168 918511637 460573840 724869557 240733037 829340587 910265221 915097077 758404678 909415049 398454986 785294921 600428885 929084010 168879530 917207083 905174444 970091566 890025149 980828349 335484647 510354738 90329581 223583532 433397108 738946311 890015968 968052235 86287179 792700622 553028249 744317721 486611857 567623787 988156936 993719498 793476314 979211700 115161516 232958836 766551090 984412736 162741895 332175410 369576307 984292121 708124269 927000526 235948622 594100242 669186945 808146382 745678023 797374619 627328025 887789491 264673502 575061159 302388729 568927757 75515480 91095521 282608342 813829158 64806272 878261672 699059610 834647948 47147959 273427208 573127321 850906832 861349527 881105002 715367244 899126610 740703487 878877546 784149554 943586208 864845146 888236757 413130083 651902424 895206079 932910356 102417856 633268844 962841459 969648612 92859840 816197927 465128768 738143873 259676941 683751203 950891180 998020867 358118285 430105560 429149549 684446254 893831252 988336612 966517821 987706524 883075165 900095867 723491809 997964462 250155333 671042330 464782591 993091056 2043454 417962569 278314870 285715442 129579171 302057237 15481036 786399249 983425922 998898789 366505768 889087649 787638471 868780921 462161002 578989599 848315248 885703390 836892868 973493295 338749420 401158331 733677976 997298761 92280308 984985813 398207184 977462015 919422884 992163689 874611087 912097247 68986237 277314490 638490630 954348103 345849792 510616134 799455375 843850615 180027558 604299169 158672581 308130391 150160856 763209138 235223266 868928691 932003728 991487320 37041814 858872162 944571471 994494251 904644388 964787769 252245089 783372484 959206194 999250287 882929608 893459433 743804577 793653224 559762750 830291084 414525022 781230659 68163342 960294946 623660518 958621997 334217357 915840435 864173472 992986956 231445770 261336054 682040059 732316963 372656392 799399988 197861143 742983900 466896257 814185139 927811518 942220193 984931110 997626337 187617080 641825134 143663250 149605238 843241320 872965859 753740258 988091793 844180848 971253708 496011043 902733181 818788282 883800748 698195796 736645969 874674979 917907614 438030959 454722413 991085632 998478340 875654155 931596734 22103018 282615294 659541590 897392686 332986492 695668361 487076630 976153498 90569498 990788921 461947568 967295412 150633130 921490665 750486949 858581552 926128380 966943729 846914371 932927643 476692215 800264447 740072274 987459364 473970633 545524427 143072789 433989206 392060566 521916759 254091706 643549751 31944210 440028683 363225297 771100563 494739018 961772877 389666974 466291663 808860315 948617682 674740473 908517160 1280236 793938158 566841644 689846254 364741086 847958416 920159235 938155152 272213088 689775242 241205684 627051624 844052782 922487156 299357871 519066741 715344555 794620190 99075932 739591256 773411334 991162917 413565236 441098237 712923602 893214387 524175594 532362737 974987410 998377304 617703348 817765212 686364791 691554368 364022232 935899171 156997315 558079553 891282178 965715104 279880168 996259309 85052552 836366847 397731815 820627274 298060718 442412312 160267997 799787726 58921200 914150549 977027421 985512998 130079783 450166293 582029491 921660191 401531843 499656054 930409244 971035895 128770650 970978808 170824379 615346233 385676037 547573565 781833443 990917230 672929866 689189329 916542494 932173102 396940040 896955000 646784632 820442722 348786597 571304997 861292416 935448331 779114957 861806880 376590577 378830273 265527891 771372086 609552571 971292965 246873309 852151589 75250835 116403791 950488980 999179270 560762093 966343706 998552078 998889349 33431961 744957178 427582225 990569454 75040137 223595958 137145463 875992593 980058174 987084757 728589064 822593698 601084530 917899060 92953505 167524815 266854936 636974883 387320322 981053195 770939600 858413858 344438641 410182012 794330401 809098012 587104989 897801455 762819536 995451656 835821027 901612707 637595500 674521404 200159047 446986949 123486427 684702318 66490579 730658789 521178592 546221500 87777938 784005271 919743732 989196277 594143152 768111866 683959472 908368714 50641446 619592337 778612995 816214327 75318324 367388789 213069672 216571858 655933505 678618044 243544830 991968110 986602761 997427449 846185742 880553006 988492587 995672311 996276628 997058969 750604603 775910831 418131712 784950554 594146315 779307198 390280187 412895613 818664222 891549804 251464442 301274200 300344797 468751023 526977693 593061684 983107925 988107879 136697761 854131209 3410770 190460831 237062581 395009525 293091586 298192319 537373633 897589536 388395524 970388128 409871479 898216512 172409668 426123863 544529709 576015450 537733735 890222450 121403101 387439836 860488937 888101812 192086189 459091551 275933122 418206839 435450319 629233294 269064581 844952993 691223585 804868679 377420221 904611479 787300520 856761443 338756740 568622833 958458536 970886036 653063311 756545371 970332026 978869815 83231360 957452617 762848891 990324421 3689461 893049263 810638083 924475587 279056979 939937094 368958301 786491336 138228666 336728882 196744257 327528503 938638809 960806983 850984932 896734181 267914367 385555266 101360212 672807540 811175653 996640094 712727550 715643886 753291873 943405538 216489644 555523343 275764114 695758882 288392007 517314457 385952318 537401279 996990011 998005578 129265385 488074238 766384315 982038647 23144993 662068798 900975108 909494153 979531047 987672832 739743557 842034843 90342248 140301998 916302910 927356289 627355395 737264450 601056719 871949917 397966699 684211762 259765054 520591606 367505189 591237586 809825 324658195 648518154 857017228 159206036 491327832 198657884 376175620 593079935 713132673 636440759 646210720 774426292 800959728 74034430 418914475 87262287 211174138 88232186 837488530 357905061 801472454 830146098 913542538 771979840 835047331 785961890 955083467 867620154 985743857 997888809 998385557 392478535 669975144 242212943 743086118 716842108 976279423 398541267 689272794 715723987 748693900 891657901 944469526 546956597 730565790 132787673 738285940 278998361 623348562 792315072 943398025 256826666 706981506 596152103 665791319 478329363 702534567 120660950 934351881 565248064 887186104 791681193 934085539 917101113 992891970 638827426 679086855 839441250 854065684 802085086 975417113 320039000 695281740 738674748 895310367 383471321 677378663 205142600 312390139 286937897 844217452 653234455 959482693 106473350 232812052 750110540 858063055 620703345 739150148 124374237 566791068 147354484 247613897 708199953 886632080 988827805 992387642 486641768 525552601 368366481 936915075 899651874 939676856 625402265 948671451 148049430 556286729 368330507 647980650 829567238 963589975 767256499 805499997 604643525 736216943 544946025 868767272 35527464 555303189 781790804 864823674 17276600 92073057 870991458 918864602 200264679 915189226 465940326 518941978 156253758 564193554 926170325 933456260 921314017 992661854 907486094 919954102 675258093 956029708 605026232 891897021 504594147 564598956 8096028 761415942 656563818 947152254 451569663 632998576 236752007 937600872 676679637 751577176 964680294 997928041 277684160 952440541 202672822 619844879 150034654 330426972 851140220 895427390 906473283 933508586 205371801 355056465 301144348 534411033 257723805 660325005 298748046 588295386 42527365 142194963 960070531 963830890 44652552 412539296 887424745 999004844 624169991 929344650 771839095 903645958 515197792 954190923 139842652 960016899 804650695 964453524 365951382 980457984 341728392 737288746 5687180 523677583 121060798 706052065 339612769 497167250 912764006 958135562 33914363 188086675 257579338 600596137 750026037 852123759 527010343 528400703 619704169 901933673 317881947 345845201 965900474 998900876 516738755 936206093 277187141 786073779 590528758 770746475 666171476 893593566 808816186 847879288 804926843 908740248 314860310 409712996 806750130 863862086 43901301 74884570 207562726 308620650 491743934 538058941 511766211 822500414 852910678 883814929 417441982 424290419 297662939 301598751 756742461 816502518 322876156 503802976 905065395 970534192 42883065 441495048 98166410 288427229 662446977 797283755 777190780 974379817 955969692 995195006 355321493 455813028 939778355 978609339 573897566 826931733 952010475 962410607 504351518 719919661 841707127 863983127 211073851 504054059 600310383 792557898 28127614 213271591 847446429 981039295 389839043 998764675 620041424 816617611 993123752 997428905 318946753 915477175 767733164 771336167 323305824 638331114 463674067 990272791 720181895 827115793 377250671 625509202 62932462 765826691 377842637 968914192 421659060 849826595 867140368 985127543 170380677 278100075 687255945 885456124 559732248 612439468 753040990 962839454 109610230 482764052 494736757 652576369 446060951 469588078 586457194 695740022 306349661 886004218 691811209 803689859 918953747 984031935 792952089 990014948 303203016 465964617 233871291 364334573 554863666 618522717 753532496 839422804 831359051 902551665 176949121 556044090 610530956 960487749 530410870 869120917 586413917 881705890 117097063 234926088 765559147 964789950 454566336 568182134 193685539 390905569 150424938 634408254 133701475 320699059 134988971 978589052 117114465 664260208 563454478 749899632 397129579 811854027 377064240 396882943 403874380 553318444 632041391 690349393 434925099 544258593 290617770 962651001 373312060 919443349 180345004 775968836 792612129 993191928 342943272 879015441 686446752 785180972 368053504 810992506 214546412 811734302 627677974 764690411 162139881 434833532 26981537 652544663 718814552 771099064 29931996 485543991 802892789 833877670 577338864 926952689 668470535 851251967 56785776 584512563 944911500 973648449 603395051 654602361 244973562 969627000 959338878 994853446 693394669 748001219 755848922 860182965 895132855 907689211 495902479 713969931 858895110 868861084 215839731 745910955 952503524 987405333 161495751 968830080 499980257 521384977 766726304 860113061 149943783 690845959 337537845 732842834 592137611 723598675 329939228 367471024 581167201 763424062 418910225 599468184 558337606 798949063 201120309 798582442 197468799 878517860 196386509 851350172 361001620 700200452 384693 120074421 396645074 831793444 438170322 909290812 234593906 539855573 529824374 865638837 559710563 996598855 231050909 920117241 740478995 933901105 76802826 446886641 441362651 698791569 545696909 851752555 123322349 458090770 229197027 773406231 750515151 886207971 19841792 799962308 414803777 438822011 914063608 918530563 213449736 901130638 151295868 692148243 500356623 756206892 262691972 866472402 907946521 936903029 970576271 999125691 165782690 452507440 602595435 699982890 437836929 772476413 294864975 843246597 218529574 265831639 661359841 682893641 948518376 986923014 817959162 940682859 381863351 387390531 438681079 907113748 949502398 982850994 37011610 658617668 831265955 834849297 571477334 614148021 611494501 819630222 925643090 950973137 495916885 904280706 108121647 618953428 826118712 879210714 453747754 851538848 190575613 221827817 452510792 463477076 597524469 993247798 141768410 883436067 828143363 903349585 269355113 688190655 643783871 681537760 529231222 579193500 77861936 997428073 858068728 892956064 689276940 710890712 751300080 985770765 187352372 794914393 270188833 793252490 997148007 998125833 333921078 759343830 884664308 922943670 582443311 599549810 612956062 855898105 599344158 652804427 57935240 72967156 363585747 793158148 869542309 961031176 90485866 260406029 286187928 979249916 725046143 764966195 80794684 771013015 856759763 987584975 440799056 543361035 760897394 893888564 500089043 946599614 532269494 588191260 620209378 964367374 625144601 881613680 897725465 985900356 720885194 750250735 493904776 624564906 836333400 974729630 791382968 872481270 230725210 918579103 802168169 988529727 101223393 249239691 539796165 779397306 78847429 324508002 829800481 907120741 127636179 641787349 629380562 678225808 824041736 829413414 755907238 849887718 801800152 866606489 151152335 568007321 383383379 541621401 114726700 544694647 506600012 791758774 161843936 345278177 241316170 628379405 106111815 762028581 86547394 517218186 639255349 716880975 284129956 831492039 79034353 639989525 178206635 309357478 883768829 992227837 795419771 881536164 892729736 908008243 902973788 964908695 436812751 483302707 582478570 641754575 825996626 984922029 18922586 734598216 109483210 821009985 48319476 673865099 985452277 990947711 268501762 382588581 734771339 755103227 684847702 985711602 379608937 649380575 238750755 792712394 509132260 674524208 68276335 212881456 791695792 981754113 223299542 458939089 463037824 828238272 185488383 377057300 815190471 882172250 603599881 901452276 748261891 801711019 888822364 911967405 415689150 970819450 577005127 831386593 632335480 998474118 787219597 848369669 105450929 651375213 888799161 901470607 488513537 861389698 590827441 678358557 993058125 996051692 152550530 333599798 171101983 713923424 437133847 901028073 136549746 649450525 111194759 472990779 714474715 925953312 761819600 994110947 598891110 966977033 593204300 644208798 267839368 327098146 706060423 951851629 343350975 633654947 41713272 964854181 656397476 899819770 796787598 905874098 351866088 395191623 612006311 953450048 644729173 824295013 977967988 979643153 244820912 856241712 109900726 586691442 879303064 881713059 404407287 793983048 789147702 861630401 824823260 852121819 117485926 880320940 606975638 737979835 926542681 944011588 245162135 401506862 924556957 977399665 456659913 607652599 348292096 815589814 403932934 994688497 725104949 829795498 674993354 903771866 578043687 656597639 659657762 905675873 882400828 966941011 262696819 597696190 763258981 856405482 409047235 958086795 441590733 947801410 376383831 689100534 778699946 855092086 625173228 727364724 929192950 990415500 859184723 995878612 386103477 885455902 206604413 293043350 246281750 455401229 337288015 360271440 609830454 729198076 714910415 778475897 136553271 160521123 372519353 682872890 722454289 921368591 653788117 783290079 263162754 476910271 566801592 878127818 17733621 640671683 310055284 582987452 988465573 994802124 575049326 891480906 106128790 131627679 344830644 975985452 131451121 906196844 374698979 792149125 133743032 959893473 189170800 353468699 123515427 197973422 826086004 934333505 769305304 905533591 643387584 844615459 761430440 956290803 76243982 195547334 162104436 842511078 750972146 825269894 858791111 947706841 211750732 775447482 41834434 460116486 924093328 992305659 151684826 287586594 621596958 892405881 220506662 392947159 63674724 493238306 118180694 508673188 678656085 981746848 356173450 754539876 819290857 919773189 272355911 975002812 351022421 530398874 303839554 772465325 356869875 522529186 803620899 910683050 656061265 858477147 590464633 842400024 12806378 846086352 851326906 855637082 98612926 821682568 809819368 886712701 200606961 737421444 264770310 667657205 333150335 489316204 787824218 864399143 848202398 900579283 59410529 849815537 550016625 799140853 15286100 735464021 827240198 958845556 479204092 727392408 317875600 605582552 805020553 893640796 370603968 548091394 996938064 998460644 802844837 836166110 153748141 771654229 70261719 906446138 958859111 991928731 31324188 765736747 848014250 925627296 859684860 955606996 344903835 685653593 724915213 788878640 559240363 892607537 865775539 964175152 376042518 604840859 211233078 811299574 292892148 705243099 9794955 295229640 512651485 864228769 742159161 781607567 200421551 387926728 906503462 995478216 870969723 935305579 599445379 793696100 793616439 900030130 750777469 854963336 421525807 767510484 847527282 918838780 541927355 853099440 778493250 889994469 343767244 664891530 356999453 411104363 875024553 996398705 363238116 626841815 540559533 987093630 18547274 206835270 837767146 864052028 574370115 898783285 814251169 969477402 749166242 757687197 788271102 876236541 912125698 918312296 956175134 966995737 970005767 978576116 411940504 671270998 910055501 998223616 25937576 933559556 660042566 877397248 943330142 971847493 123430353 664553525 736274862 866123717 84508720 850707127 61815462 960735451 787766955 800179390 461144523 898913984 685155960 897101971 45706878 61402873 912099910 957115949 832714088 859048149 516974807 836431743 278032270 927892712 402934101 872185984 620228179 628362559 621453728 908638182 990913092 998562311 296423900 849006575 669624076 868478602 97586104 495716785 665076974 994010455 761744893 860740576 362409668 665402559 396377747 448368783 924494367 972242153 80915463 140111101 264757752 669486982 200347840 976720435 432091339 896984721 590286528 891373480 790044658 863021068 813309650 941737252 574122469 601063451 143508001 197269087 712441602 877574230 140978352 461528985 380512901 531721404 269758551 323856108 848566146 976746354 161106522 569313717 222046434 674590019 796806719 798932813 783674137 989270110 39318757 965390783 43412684 195679251 637379102 780100797 914695213 924548426 38735888 596162482 168824910 825635270 150517584 634298956 378253497 440701523 706971992 711108289 842620653 932798967 184385177 507836264 619822239 890928752 825983307 977175528 689932727 876199077 987951485 988710314 493511749 580765942 580251078 729621003 369327206 863688076 595853131 919034208 878853491 992555754 632827440 675634605 102791631 607914584 129016966 640272204 383612277 881794329 184331404 812071987 467403773 581948786 779535492 918833998 22033131 678584669 46498623 246756860 934089120 952283364 534159025 583934688 916975299 951605971 736895928 827310897 18533021 448216375 434600808 696592149 333789176 524374020 722039137 772853956 342847177 522322849 405896613 621218204 662197027 971728239 515325901 822051888 635566291 873043690 362844410 585744948 779499828 874957121 952369619 972953709 204846620 397293141 680123698 767048567 26652487 155628552 75395600 291514088 776936062 991637304 647370762 775656134 598935224 987448786 585899416 991292149 598001218 885482770 127363782 724575928 310006718 362046053 6574904 658094695 282184595 716860664 977428360 982951376 515080289 900123060 797584832 939438329 197161030 989379613 57029441 989988970 482497594 982181512 707018011 736186498 655386064 839848154 990370120 997622924 109949877 805642499 81629042 847712357 797051711 928278716 284889935 968454570 844600834 866947352 862404283 911744959 514969376 955869338 987546106 995957518 94517775 620282041 658218244 689309762 346993139 402696167 468298179 640332319 916046559 948071854 861460994 885976960 717490348 925598927 80348159 549920944 466296218 622700541 215844229 716018514 44624669 351833968 89186917 935113360 286647271 736336636 365881707 646337114 868944241 949671321 918092136 946693446 248778809 549195751 76214390 480053250 938260838 995418766 751271428 959836146 427235112 868889341 97242534 933941695 555332383 576177027 865861528 948128832 628743415 938967512 516414769 946555341 725988545 814512952 674606514 746829107 877731542 980976054 205954884 506707883 221504232 752169954 315000879 858173018 581901698 868745939 571166685 930809144 883275732 973230586 884625549 996673910 533230764 772515367 478296862 811718063 654432682 990733088 703994254 947576566 540105817 962033375 730682500 982676244 914733065 954933359 466793076 495823043 649288165 933091810 694405282 966671621 839463905 955089600 673526445 938901503 753950989 933421961 432954973 808997127 523927664 877226896 636381868 726772819 973563431 974432514 565676457 600153257 141216230 147599971 513562564 591514698 389614271 958314150 893837304 944881694 860593020 960286347 445468511 992925756 172618047 359197928 175555583 720643287 236964933 489231403 534332427 765172756 490186729 839422524 269937912 667155313 961305705 982901945 349053337 522174909 716528890 945108168 372228490 929673374 30866015 469009959 810339209 892464396 296984442 794470616 811698825 957039952 229929711 905948700 296158777 852276153 920550138 935407810 794575570 939883190 44257096 730149140 709382847 763494153 565144919 578793734 847754457 952450594 954491613 996559858 158063157 575451525 589898815 656107406 710357909 993102382 720534965 914703571 908999339 991478525 128055763 132747916 727524849 830824019 400184938 957347664 455174831 534358138 81277256 397056571 263926240 989229007 209219310 257194291 853899753 898054270 819797316 874214521 662917074 739053421 689660942 938190791 524973749 802563505 157571047 388393911 607264235 972752586 905905476 931461459 750392758 794368255 157399857 812063304 674151920 680949485 686410648 778193103 979456553 982079480 46832453 452172375 352827654 475046647 637943712 778650302 460353506 527264596 226526406 970090746 455856069 652243017 415409960 905138729 440452440 974597737 894097042 951205336 770712718 943735939 753136204 940591401 662018586 815713890 492260225 872740877 778737422 923579865 646171338 712745634 284589589 911569488 757648069 955000690 749507741 904792034 160335611 298407597 936386894 969854877 425931007 918281729 450820530 563374533 62766859 802105312 540936274 645321602 380667343 767551962 413096790 554387712 522823378 817190518 725437735 957280435 452765335 735422227 172261313 598410074 335804867 628378123 186036352 978332600 143422009 884899152 466472644 840189058 239278765 381738137 64846785 820336402 238154473 768603778 354329538 798492681 487459713 641885819 735738734 893647841 894236564 934306938 70087892 362694402 387018258 523152944 942840708 979536390 868159234 872925003 886140254 905802203 909182397 920461060 979279738 993473596 942802853 943928407 255835583 966783524 994398743 994599524 278421968 934366182 629642770 820992654 912022030 985330858 973132451 994917724 372673344 942736477 157718507 843966513 766889946 918027382 59587729 842526395 224536080 308737589 682154153 928770906 310853159 531547105 258893327 962903351 486985465 563792153 525743259 806397084 73452443 680995105 496611293 730084047 156877480 787215975 892122078 971954843 833871753 961033942 125619272 331752682 673942421 726174644 919887898 984687997 345852073 855386888 363904936 363960850 470838103 756092240 112613557 944575161 376818343 459140128 226693430 822040742 228584437 246486353 49852966 535372503 294808545 772702006 436604156 885216751 273982815 638755399 27583277 326297878 304865199 979099953 970357703 997163884 803306572 962043423 401467366 452237963 291950162 960921673 327945018 432102032 435907469 446205951 428795674 657799310 667440830 973655814 84429013 994773081 53080905 165644623 318229312 763314009 422338592 845859990 652398011 811365585 784532267 974562695 557973884 621057829 392368007 594315779 723929219 805105501 718528665 766752909 864561095 872899826 774389778 940789178 771147839 881936417 73102698 190352181 339444466 479310975 534179346 816735292 58738703 858757338 982527400 984777210 386170474 989613041 59914908 440832071 762576446 830413434 155447758 827597908 802163895 812183180 902330458 912463204 326641998 424270394 34292993 980707297 838352358 976976354 315955881 984083318 74992791 123445856 452900742 875560238 169440794 189112102 101713392 361004321 64653656 441331830 794904331 855589152 772530975 841002837 972014843 988283832 573002531 784150756 792438342 916176055 104735866 268032724 987144143 998617625 383415979 577597216 731772141 793719568 605289260 965095939 130449576 156362473 664657734 844203661 134310888 845090981 510551683 794639229 462824516 708208830 88437652 554267482 442800244 854546739 85710265 997265911 949798786 991464594 350035610 363906938 988478297 994715755 806530857 972604877 505632480 960710367 65302532 544823932 835860784 939493550 844699670 965493414 569766540 822197203 771976071 923077977 331765341 979887569 833765522 918179745 19450207 238092360 214056063 996099664 74758865 421304925 994060289 996875321 721576081 909606427 982487040 986450988 329776264 994423118 698867415 821302091 202151012 652847346 967850580 988372963 745970567 851102157 546283184 697532017 852953292 971315478 409243028 719131003 954418829 974838872 953116304 990957433 572449574 861270371 643065425 845920302 330628758 851013000 459332239 955217799 762138026 825937033 80939232 328006657 516368862 909320376 665247297 823155776 198699293 578966450 694485758 953119590 578287119 804256439 159017207 264400825 579026263 747251060 596202907 855695979 389768014 765268910 190510947 899205461 372680996 446806865 150797200 717584437 107068162 661544457 908901040 939853435 893964395 994687907 665002849 766019952 468884591 589470842 23640267 87368752 53074389 515992256 853188918 972438643 287981480 817944153 961695658 985927610 786671860 885596941 490453161 700400684 179381719 987337261 627439361 644793253 705903998 872252993 603876192 912800460 85169377 551685504 297142468 674783572 896180228 923802691 619921754 973362140 382351670 576240274 372425456 552541669 431333529 586216383 947753398 993332178 993020369 999211322 308884852 694839297 397162013 409244567 409685846 610873242 834027135 838452707 138933230 436071009 739303972 789376216 736252233 922970698 995981562 997733138 365643152 681884392 909489401 996121352 507841470 639871831 470592427 741234949 518339982 915260577 338007369 451115432 66903109 717512238 377353282 636558636 840888751 916638107 358386668 970058105 339308315 466705992 761618429 802294439 713009336 792223169 442557329 887338226 186416044 257162207 37666790 368643359 137732149 294386063 780927447 872080432 120724530 142591467 979159088 998296099 873758002 911638246 864139624 932973182 151889921 572952399 160504533 821683432 114148448 449150416 321834164 800788360 71480513 491569807 743404610 922069198 114045627 288434409 385669376 850414894 646184728 873674906 740531287 743209972 114127094 570199964 988899038 992275188 249573915 961418543 646171673 766015058 166826232 606100762 430599157 868890778 666328507 807841765 588488435 835053650 785779891 839415812 980473499 983661042 393265854 604687179 721541210 986038806 41763062 823885615 458334262 486284768 357729872 896965318 456871536 672606121 960951385 987734899 355434572 824703335 741777717 946571441 774208065 804032618 94597706 992899056 572091473 920602343 78568322 248315211 377991069 441073290 288033255 792183190 441400679 462558175 586865416 990691902 377809406 632865064 356926073 996894090 375978133 800793000 800215693 988345601 210674656 330471094 948411928 955486975 392106810 393100468 301655695 650989220 582519207 610126737 573329981 906967681 335578340 455606245 21505530 672376807 755971532 885812703 865236112 943749105 785496036 998935458 451305276 631668720 877144224 946509359 784038077 864941677 209395768 707457649 801191815 809588936 246146311 274176244 782667681 810099560 524465259 890204866 611272187 926532256 462026843 513692733 931153688 987816694 504800696 954157366 330187747 474173382 863468380 882927705 327479548 564592351 747605480 805114302 649908895 746213465 24210747 502606178 122780235 763349402 791972366 846606340 145646555 886571841 165074039 941757050 272843250 323739352 107077739 841039819 574424346 814500787 794327714 922569738 392042059 913271344 128724427 220122863 76252533 634594346 832417721 977103363 94012443 403614502 797262230 919568225 379997319 621447334 515938189 870468248 149566375 191687260 777038247 959604810 395685382 992234291 740802581 971008777 289757584 408148377 408625429 739003274 983539708 997267008 569687041 924654923 548287199 809645166 611656176 942711772 447759768 828310304 322304171 570718521 89950848 901443191 133918817 305285333 799353924 851085160 138816712 388928573 364919697 678330124 477418315 785870088 116463372 741434745 74226625 725471305 922913380 954524350 112251714 225263645 308706247 550207165 953818774 974996694 748825973 877965261 379345926 850130770 83004582 170555768 722462403 998795286 200464495 530309905 261505383 594742872 781745947 955675352 788577048 948254921 556017427 594405346 178147603 191839519 738621062 770584918 629625678 705596938 16011335 398720432 476919336 597181626 14083813 912556528 501546762 763522144 247239576 361134690 128755567 496979936 671736143 689373834 509732050 705403794 471220168 932951111 434886468 564831814 550059543 819086620 501313400 529068765 113912831 890609266 931932140 988282119 477251702 761951436 435867500 475573582 366998752 529673997 958757181 983573816 626183890 730082673 281132516 791193119 915962291 932857412 914056510 993172354 793946096 950954527 221766666 673942535 689865174 763500981 938216463 949913257 916600327 993427345 122114294 548607225 6309713 206152167 97658605 643904926 134499683 905869827 765409007 958856606 443194553 531230328 960688811 973622653 864356546 992574744 165962749 890519132 616659725 671424996 338565869 916218932 868258035 991286500 664674666 784344928 30464821 209492319 358002637 650536225 634282536 792915935 161875159 350442580 970697083 985813551 284058751 297170956 239750979 312956890 319475921 444277833 848852972 878198546 906236565 931143943 191046421 650815525 312249403 992577898 535182293 864260885 703645228 966176452 57913768 738079940 121954393 631689110 938801103 958474073 568726312 884694380 460149975 645415721 624294331 843191671 651752553 811476892 616813531 729036025 377042676 934805290 42871951 558438158 351146535 497096436 875653363 967785665 253164528 413550384 969583603 978245243 96247731 865529253 431849990 626760114 144726607 632439948 864926164 992391507 899496518 914844964 725538221 924326949 72517418 560728571 718153195 894205455 167877762 597617368 698553052 890047502 349102737 901646647 170760306 464656301 644321152 978249729 61929897 169336018 964785366 982975582 963166776 990161107 847479337 915755528 802197266 857293925 13310345 599275304 277588994 390990402 30123400 837050088 993791083 997020722 351640964 926628448 692241352 749275390 599678904 796514759 573449530 907419815 135825701 411113764 933744615 957264819 867080304 925121063 215318315 388802353 589916818 705943771 225224146 611025054 866362429 873384954 640381607 818334815 526175157 698480949 268853733 889709267 780253660 960681674 704199898 997155758 396097472 834383080 235079843 827776677 118877712 859014209 54419867 649204787 305957498 374676436 502979216 535679771 356639368 710529066 996098539 996507851 709533722 995137745 515469980 923822782 910535318 928639796 241832930 273677599 372365541 462021611 990438925 995950748 477462331 519458226 840604067 938204594 180521553 348631357 168037451 713078801 671199897 956054154 512221196 773364949 298779878 801328709 347289975 517258017 235005023 888675776 421655175 661583273 5720177 861453345 110622515 314782352 530787559 775885722 936692189 973077607 32246593 739204453 395608578 809759967 716774848 807346942 549688563 578107829 472781798 677068206 594440147 922424411 711416100 818240669 362593564 418754941 405631224 604889714 429006510 489395452 852814584 987144224 232186180 936496678 696422878 912850729 622872511 820167072 972450662 976957063 307026451 648069374 546427850 639472126 377938231 634753771 231405776 297444279 861300844 872715343 934452860 991188120 636562831 929133750 461465749 641106240 275524476 811884347 241346063 663405421 687253436 889168725 973394121 979645132 19546284 223849023 135222311 861828865 275013866 366864752 691303906 829368452 439075816 465081978 588507922 966425827 617769170 657883455 56463746 622914124 530940990 819425819 366070537 442354682 144346959 595271568 179104633 649322058 538038529 964648535 848086876 934795072 948428212 995955288 39770663 622701712 818610932 826019792 30064517 78191560 78268522 356405856 949967700 979709899 712796922 967319256 394178039 630990572 811016127 978361607 662971716 940898565 578068463 792152063 797195120 849942220 711602197 828500810 324426945 986794623 111179513 447594362 485784057 518456304 98733717 113873895 647897338 802025389 107547490 267382665 115496680 742758383 271413992 656703875 762432189 834960260 983587341 991455601 42173990 480649693 346549397 645111955 107967198 376821316 9437814 58007505 552650284 690000122 550052596 828948810 307179350 398204357 178354210 599395986 166432518 345119611 82336382 191328458 235148602 564056583 716155910 725586670 430764673 912918163 41393346 533120633 455106412 991471771 304082967 483646410 910815487 960522429 730522131 854406944 160431480 892362407 97376232 911229163 379175723 558871874 522986653 562249868 399092014 492156739 684216946 708623931 159973100 565293993 909602945 919528768 893002600 990324377 601028137 670378501 574223763 864380389 801457447 807901568 747823109 826944017 245237550 546062674 812536886 940334125 512914287 720829769 775627150 785444058 656367948 725956990 607316692 666808793 267297298 945812568 42929052 146504632 287673243 510043987 289588059 368101671 204431669 436525421 145497512 462200863 449186981 968033182 347534285 899397809 661870036 774357899 337832569 591599444 521996606 577153240 808715270 939118822 234483298 261179996 645530641 656235876 927711104 968108059 779559859 906257563 632150792 727326652 909900908 920095377 441703333 844478009 95610732 717685064 532435627 738528564 216476517 608142611 703866812 985859956 460893222 880147961 768420600 828346295 342085457 967776920 194768975 271447010 799652087 988386169 639534443 660780946 958669954 986411613 674472584 745668723 421942539 967666362 584037355 867803551 577452597 717690489 177529789 888421990 279303239 829630473 123112568 670044124 613720369 834739810 216342778 779530825 665951221 997419323 784699115 954393635 979313664 991634316 826428940 998499513 813023886 835439410 891429801 898464193 787116325 858029759 384181850 847831903 922533721 965362393 987526968 994414163 642591706 689459100 949510539 993211237 317299780 962338276 76782635 940003362 567211630 880803542 574453096 953708341 357450679 846577697 950908340 959898824 501709154 941462788 408314273 763472003 441605547 517027613 377720370 510500899 829804285 853825372 638447560 761655016 90295138 346910470 372710136 678793707 741939862 847212862 100024281 437228982 404139183 508571877 803990912 886023215 588327763 925161916 690993800 741512588 278807399 428011439 617477977 990970350 481792337 830225970 473872284 663701125 270160960 689031774 142883861 512903267 705319241 760598728 389939914 922242459 117931356 976877831 662540231 969685438 524250114 539371279 396262438 908686750 473339790 604806773 833034927 989732188 82174121 735005240 206689674 754061116 714095047 977663447 588973602 935694530 798590003 855578208 941393177 989629288 117807642 808741675 645758737 871701149 614207315 746336501 269976210 507221294 307314128 982386258 521941027 819897705 280421292 710432613 336299019 979181640 674952973 951380275 932835839 993799242 636030960 793425131 787221457 924733223 779607979 964365741 713146760 769895826 212550198 540134169 354336007 774439853 845110742 988776291 879225707 959315854 480089585 812052985 655348564 715267242 404861275 687487782 294091293 513455958 399832301 787917352 787005785 926746879 675541581 742236821 562992366 719039551 811371652 956393685 674766708 774036343 410187362 925852265 118873893 427955056 187603867 917520356 828143393 945417601 177285639 665722989 405975248 981406030 333357059 631816570 43162820 488712467 601342901 992654895 220647946 521026315 288985813 774829830 647731297 823544860 562740072 779607500 70324709 247028892 970682736 977060486 505156308 682480851 846431422 988264110 679128101 753385422 895448108 946461811 548836716 641681808 343590432 826927093 456960590 664652716 161058576 501124088 139212822 339588219 398143465 441837051 578490364 742314381 931085519 957301992 38993293 82395713 850963255 856429668 506353563 837456643 269105385 958252075 614713125 743084657 642204409 798604902 589067741 808801583 159314892 178400047 864741206 882668406 30935627 786326185 740362033 809826938 724003809 829956420 171199255 846985151 101073257 399133824 477051980 588931397 837117130 991563998 879792304 942236547 263608733 960514557 507944787 866095567 531010474 805942850 281365085 491545863 864170353 958986073 284015628 632073911 242763096 952369094 682415014 938557847 47186824 85727446 949084883 965738326 786777205 802610784 607782775 899024141 809436337 872191785 484845768 793941651 297425570 681487403 509926001 671384316 263177090 885521271 571108838 923719613 847330990 861019253 236430627 308118706 315971987 451115921 280746781 310309693 511158959 743435958 672653511 696240221 553517638 590338057 248256182 594263611 462704713 723069572 530195075 881337434 106330583 729062737 763885961 929975368 914338068 918986632 328870119 401133187 50922411 272882397 155858869 855559432 24358333 547002675 490040401 663974966 71132740 121531070 809123315 938125579 826362925 985414164 849113037 898877896 412690856 958920694 663646246 937270483 183588114 966833702 658954675 796979237 714997214 920956627 307137005 546246429 736289323 959338494 224987463 831405337 787624279 799935531 155838113 765575608 751010282 933842142 372900428 938576480 959216994 995298067 670527793 841178293 374232101 592934273 513825728 724998147 440575898 506186534 142073202 470245694 808006619 808853354 710969722 725062893 307028685 413966218 244037454 555220779 263679062 402417159 910445406 922898393 476412943 529023298 900932757 947416130 115690509 349671867 35632037 838375228 621459071 959990529 964355604 979218026 582518763 923727228 153939188 789934363 192785776 236770363 204167130 275196717 873818482 885530109 527635399 968874583 821458873 956967524 550326301 688534838 887356646 891976431 632570890 783818717 744852208 806929037 112051755 329907537 535350160 732591695 817102421 975105441 84052907 922518951 816774144 826084003 760009044 836064480 447634215 607471598 503185530 542877469 964750170 995512815 133915132 286418537 740171501 939268656 59265676 335213800 864495602 925670605 404759813 784913189 206217432 763696005 369424650 527217517 45892647 853533876 188019952 453541821 455901704 568952667 413147246 934448256 482999692 864524291 118354384 693546544 670174899 837343020 95144840 795958944 987469161 997687201 828033798 927811435 263151327 433051014 302041445 932844317 394921417 655350407 129181483 216239356 336840769 381630598 709325429 733054033 406875 814276141 50520318 376255093 904652972 954483849 988838444 990260710 615088423 984896600 137964409 194146924 516713053 517604163 884495149 917683456 893076273 920417494 858985319 963775280 24510360 653141635 202844013 555595659 244793339 441318277 560389886 883538426 28882306 796610787 885449698 896504326 890687260 956167682 320249185 783563672 778606597 848740836 125048469 210504342 753301207 925674364 520419474 967453717 1506892 839859865 326635210 469037194 596958370 978084173 185808688 213815569 899263703 942930684 8347847 678257697 767245803 950299206 828382273 954743753 453564200 455156363 436803320 652803943 554869322 985076080 428680812 717230047 821413552 894302863 462125394 560921804 412728620 922179926 850569161 869806584 74806094 757777929 621271716 739954599 556737746 637382181 258341127 665060546 474098441 599376797 517114162 629964946 112986881 691864725 982862274 986032892 4077270 374720890 511548622 542213442 873083637 925221581 718762626 897446645 727759657 735634455 655676570 784361189 949481309 982699808 863413677 889635004 518212519 880378756 714974286 991769750 493484002 755613514 625678441 816225246 126227724 910213563 660396255 770259952 190959985 380878103 852620008 986400540 180957776 782365837 695745846 867416884 836598111 872106593 518729986 945143745 260943705 343157052 47447904 331275954 122551580 730801846 13511409 600508990 25533306 767883641 935462533 948334355 596196375 627178738 277183072 665660341 107730520 431795494 892830053 956524939 345052254 626632106 752245699 916792591 835533540 976743207 912893033 959050267 934030421 956795987 556431308 656480926 782260881 992867341 837584554 944439869 803765551 886740759 420544426 781420233 686188736 773039149 217202956 930501612 919856221 972814856 685794102 973731929 415441830 790958962 335180915 496879587 382570614 782248085 895422847 986489254 505809931 805062112 564219312 938487317 512986314 555900380 443676030 883118135 533229860 636385168 250402993 945175588 198959461 261762581 929839601 991378438 740677733 894232755 955959754 963051708 433217555 620397806 231531697 725463807 953201377 983977470 943678229 953435061 892575798 982872880 913556774 986016384 233649880 648782935 559400643 708734108 863490555 912349402 641269250 997657285 732344298 981215405 179700808 491282864 267144763 908761104 926401952 926413225 134615051 504029684 207783421 819708776 431222184 758295137 474715547 971141768 559975697 933906691 601350907 808303711 162252850 451233335 683153327 929061210 984847980 996589138 883017661 967475592 813372793 864248346 459771710 736427258 410004526 585679693 585317567 685866010 451419133 828305693 555823723 730642166 412456965 740930087 765993524 973952804 738834761 810466154 616630601 997619225 21646026 931746208 566779274 799618858 320668080 324815837 935881742 980134737 556518247 769833189 469740386 620456328 27596439 917331076 719543622 936307687 981864610 982589722 740337547 797439970 604706187 966108131 923359469 981839180 906318188 993107081 388133066 792499276 962913350 990677349 145369795 561328462 85701192 157495586 481324670 535060633 957644789 983164283 788273389 811847448 59271324 772619109 38088339 291652986 347695269 899358843 19228211 614991691 287795317 817003852 989576490 992808440 566691424 572990422 718575849 817909360 271222918 789215991 982350765 997180911 365137516 563900417 264911339 453490099 143216877 357041053 830574147 950982205 604634924 936711485 672143837 771216937 578000847 684696050 397539469 737576311 562123705 742785757 11657940 135715399 648036387 752946015 892863127 915230553 994049334 997258136 654129707 931637079 268241070 641443465 79725510 702766824 644268178 977536399 491016557 851307572 551196619 740018345 713822665 986711302 364765854 670155094 717633377 737656881 85947972 322663773 398984903 842912833 205833218 329059753 67444685 795390599 258297848 598080379 651326446 795619276 241147692 851075895 489917203 969287971 618597734 905104472 675945050 810112539 304750492 314858955 58228111 611839667 343135231 765845100 565533464 568360834 32581252 629381066 653426909 762023209 756488839 992923258 801412193 834027527 99973017 321902940 270515886 736019073 106495825 325532752 215376057 850966799 804953391 816403601 214630266 734780644 244452219 420598255 482889220 868516830 315277810 686661778 688607546 736470770 569741323 865661026 960787556 979112282 617351871 617951089 448609975 987901553 76657176 996423222 965243820 980743435 635737246 919712391 347490295 486001763 544918942 822867944 236320201 310335306 969356699 976623433 939467199 994816922 170436610 563324241 626740189 902486007 302474479 487133686 489015463 547171400 872280552 911076802 370084458 428788305 809913196 810978199 941988454 962992099 610589493 690712498 875518315 998046338 631500828 744659633 502982958 674498735 373983000 449296229 230683130 639954044 423337372 852302707 412673103 526302515 409236773 598674816 978243326 987289352 970268995 993309552 197302510 306503891 542199983 939353871 912744188 976930719 500452809 578563823 160064008 375119858 439521770 488058895 993755227 996471912 309004731 419411592 378473419 621326895 489315665 626787780 451864333 763083699 354675143 831381800 35932448 791986506 827681673 923766447 236251954 632794330 896582424 975340644 607952291 788251727 862612861 938219053 297288854 810221129 992575660 995244157 476727664 888020624 776539046 989270457 314515708 513582865 617762600 872048140 902952345 993323981 502511804 847929113 306527313 975432970 565434379 625393881 777512981 831647642 27807863 347843496 439065623 903632379 154535936 700643450 268730579 745106116 627297170 857374147 61778109 468701112 469162521 775526261 134065074 902413414 404524680 514030383 942143524 968203256 16482041 520067241 412823103 964297318 984988730 991521817 819390250 846882472 459050821 512899376 174077406 733677947 514894933 871033312 302683911 979836523 827631018 869578306 654401231 896855489 872788274 923483626 134597740 431903092 620569469 863172775 712202436 997377736 210476 420998781 642157847 932085599 180894802 403823645 481580883 883751664 987964734 994344159 266758400 295063819 928843941 937166359 5530063 752589668 669890709 733502062 784318039 811029261 587743161 830006773 855158925 991641068 39520685 442954135 934709579 955688554 897681100 940431968 767610727 858023358 398873371 636940859 749281905 954260734 597610927 914033883 299991150 827993189 919908799 928931128 564717201 780427616 246081694 482359660 209925265 519410423 658474645 726606793 189957133 950805919 712075114 874298647 275289907 543167425 794285586 877751593 135867292 439767481 194257313 543803740 892443254 999023766 270583915 549426968 404355892 530938788 673696832 996084412 573066212 920302170 769910168 889905093 805969430 817708646 345500709 398174213 483788473 667153704 362224892 993587317 753526985 935152619 700551981 939500751 206423154 723324499 387902697 796665248 722589501 789833676 706749694 835159806 252791203 677586653 924741180 932108083 437194619 611781259 159223849 917171236 829246645 992190284 174256546 340159725 853953545 954589390 475205874 920181688 840767662 852428880 650523969 852275634 50867145 314190449 258166518 435455349 64527607 165570599 365631978 506467953 176897720 612428288 219136730 349636970 712797636 845494455 374894929 577702874 545891119 686487885 20325974 258241322 946438925 986598290 219136452 703569428 750802168 837977640 242871247 381106809 347294643 441985840 684753954 765463469 300996584 373119285 57366704 755784589 719244160 977573340 899772104 978147013 454985904 642886829 748109587 826154134 303397361 906050352 801897978 992508247 580798573 810289203 846827819 928689234 710708223 961981283 307334321 561605566 721554956 928152849 156021511 720085361 786519109 851055147 710070706 712931861 124447149 715878585 385522334 569598836 414096166 481318324 244354416 392434475 548894363 856482583 741030956 968149127 622852058 669903978 952570337 988354520 248599190 829292860 677069728 875673100 653971790 839460429 294928032 942519682 841050400 873010952 996563052 998624885 249604777 443453142 324752225 381344847 438757771 984179878 456317777 668831196 133781275 692740035 955529402 993552879 194743641 469569208 36390950 531426908 190017302 252894312 356039120 556240337 355929499 717086984 777698558 814644946 436400050 979941886 276623804 942561174 574631006 618435406 605340972 993981012 32865177 989502917 314540390 635621403 725602246 927167848 503927548 801709387 601368361 604621667 956330677 992033423 288408612 439208321 500645125 551581180 708824936 727736782 367221527 667609097 464224669 805016488 305822600 644726399 252249591 510415805 443272303 714508515 619660280 791863842 720130791 852978573 406386427 875464911 155216341 746118066 794448765 939928007 741431325 930911821 965953030 991203695 813710315 929386555 318202961 630627359 311305097 562494633 744693221 829926633 318717634 745370468 795186780 943260661 378975954 513328768 499200069 982580267 56431671 477121571 892747125 931858382 493142156 846061579 990043033 999102666 196437897 364051626 154862867 834308072 75114280 894614815 975782255 981364910 397493916 762174662 282387649 494649995 144581225 976404615 450967945 837927978 371146962 468335478 30413408 459901257 400194677 881002045 898516282 988665546 1745871 65823494 155249145 640533125 348832579 541651179 530856183 808999936 435333215 897468314 778645172 953422414 4040644 872996667 346805358 510565802 698511135 815108577 352268757 684783318 316250255 794663565 633431586 722870099 130716581 787754697 515676275 564103328 9988829 249942692 540438780 841161046 88632360 373555612 468849386 854178224 830640410 997523751 370297537 375557553 26273058 899134198 422131833 850554760 157324759 992672311 12000317 273795659 245365526 539624163 721525008 724289485 967098889 994712872 560141 590507130 180093591 860015493 677380630 914946022 891178822 905737046 383748418 677532460 591080224 623396707 333430954 852809882 475490672 892746582 575714245 738958222 294405448 517561669 216213433 520567876 993683198 993912000 435696320 525711166 372068985 594855401 421547963 603552141 765951424 987286401 471518380 962394158 774454961 838710067 995003750 999167025 539844972 719673059 658842088 729287167 10587029 500373673 307590485 649105869 274733958 898700097 926984846 984090803 50739645 534181318 278709853 644980399 476528099 692697346 507538512 922089183 893450798 912057150 782300931 947319815 878007514 926797381 141253876 642476987 448272209 853581897 350286222 603058759 221429649 695791530 50374877 577261314 53288988 283644222 365482120 468899427 239901091 958659303 546150063 585007116 433370757 727317067 57508100 766039395 580538760 910846311 159923735 484938737 895416226 968291790 113170568 181780004 727936653 747778680 879914524 922611053 966508673 999204927 664098884 804509633 942475758 998344340 813369982 945769243 407971240 529927418 211515689 628771513 621456576 785562702 664353427 978536981 389206232 903267260 328155250 389466485 599910401 946274763 808915841 947409904 456218244 813577435 282312570 664155836 599300312 967924606 80802414 465341183 356153036 697347221 240279303 801763798 487699234 820725855 159827956 659456728 363886421 542439938 579130347 957242436 449499406 658734620 33414117 341459353 5812148 404074656 466225495 885333902 667595238 778228698 2550223 427003740 513470643 780182192 291693543 399752452 118936942 745356257 65515900 383863238 428093342 553597159 506805671 996486022 74200958 869735133 850764075 935349247 832520563 995358883 34429320 285799791 242462694 468259104 621194212 772398447 871646039 940113659 414402784 957267815 720399121 780143602 254854345 589159039 313081435 752925108 825251277 934526922 519666241 618639354 644669545 936709366 848125320 899357867 494567984 912590346 749994782 864070549 366400309 895054372 159331964 591124806 550640707 723769930 605897947 796839526 307379162 924768181 663249037 682517244 100257736 482965799 878192526 936019071 965288976 979654269 387983213 891887056 284480630 296412612 99788354 310883184 648049925 696611785 754102368 922570788 604342192 967425504 805899189 806232803 910404269 990766218 722283225 956064669 387540793 994098504 632063900 973802744 370944287 670782909 571643886 576113533 19148199 483336831 778542473 824415868 13328774 869911853 353435461 507199251 664777521 929221977 577046449 607976713 189506847 525781231 431937284 570781957 332919201 490355478 464989620 797905943 464903436 656170908 569192699 598341674 107484526 781434093 485278154 965414596 140803380 309898339 821775076 986954720 382775706 749570153 80269564 525022568 85960094 602581242 527876115 842544874 892839470 982025493 611287358 949624602 753628224 855870212 873062961 974133447 754776596 917488245 435067471 734306683 903325686 909494887 409896518 781483369 778739215 972381004 6308854 47197288 843113574 975251425 398611686 428228509 264938736 946759947 168119080 477989150 783592686 864554952 111085560 215638506 322327871 571211705 706503365 851071562 21169772 197121235 458721847 784862039 814762786 857193086 678730934 887454897 540989007 909833378 699099829 988355358 659955488 802300956 376672305 611004087 187255526 454500573 990989007 996645460 440336697 484574585 960978467 997045625 652348796 961606836 335565973 429296614 997588231 997677077 946174402 969579439 599190408 933770872 678757402 990912430 535668280 585120646 542453916 551959899 87836669 371829850 788741686 910108626 859228573 887263099 359495389 503922872 881860009 932097034 248533966 969047198 462980852 605636896 677067224 858485305 970067627 999070835 984954979 992736652 269104093 559796125 388113425 683582435 681074442 994616094 672659634 905740484 416737366 432083204 648648737 658673137 113070683 195636331 880850694 979702548 783046474 995246691 101437379 380966736 798012935 808756241 734619397 748234301 39998393 697770680 355268412 818885285 545121648 577008481 839460754 928772701 517950139 976266556 9924054 896156000 270553203 401621475 471453715 527837423 101042887 825134917 236659512 811990453 294743607 745106317 633724206 880640046 726915574 836888116 247781136 438226442 114496441 808958316 590355441 881054647 130575854 858156374 805781932 827833268 769242202 811124136 978907724 991651223 69807375 832631008 564278081 782875806 422986457 608812952 419491191 677196572 988278274 992049690 58739898 733729716 600749085 758438577 488070641 869339594 671083826 904259397 655883792 711056506 198538429 354741496 222245919 716557244 481555065 923583316 60475765 226926638 972320076 975401193 773897861 802969365 164357501 956037250 214533875 680538109 21597628 430992051 956053483 988489432 322525307 723390631 329544069 525987550 497758168 903282834 222399076 990186109 41222685 173028756 730008451 930786702 304496052 708643850 388612991 484958354 608423908 955269951 494919955 785919851 52655509 808699822 117603641 924116120 877742641 938079885 700037548 740297365 130789605 426575975 654123394 658197813 118900970 887405636 178795462 376659183 369332977 593324435 210980678 907037178 694208012 806789129 21860162 80427781 441705864 685065222 311161395 458359750 342470479 870406736 35253104 595961621 773364971 835866654 94507310 557032859 980946201 989321991 369647013 831987806 968371084 980396502 575651628 931037666 470783906 547708325 843415475 888845930 922549272 924407322 535031010 703125031 87514482 287253462 251942122 800869478 990407659 992966930 372471428 633212297 353343618 569379786 54010177 917647743 301154697 713444625 4164567 236255099 958028720 969625881 233742615 673670854 977634676 986437822 57919236 858954356 489187578 754373306 931215779 996624411 397945480 665465597 927436412 931541961 497951320 547019905 628985505 950516387 83655809 862701356 450445855 659437624 901798699 976478274 847220005 916399798 185710138 683780002 237014779 913683693 408003033 681361288 158167425 854204156 891721930 903419491 19930686 878718008 71833220 583709705 315291516 931798549 809068309 826970078 604604763 988260834 153667720 418475510 222836987 863530846 48746467 472847276 889230685 937691102 318153620 868703853 169418617 556145532 665717417 811380672 12823490 560711390 738932822 761858455 528928308 957915707 664196559 878545554 885959071 900578560 298095626 796141896 255440115 857183470 391218140 945277770 886231489 911299020 589071367 743735824 317615691 846238729 236939851 394773207 788386162 865494428 83006542 764830113 737101733 787062110 611986884 647749676 953408368 981292158 791687890 812007433 68163649 334157851 646686072 958992652 747480922 800243974 264869156 502237664 503619034 642991017 780478287 853767279 183403501 233666589 519670642 851754248 253245353 306378796 494587688 996594452 559852250 732243211 97853335 716849036 369399819 439160899 921270188 997987034 21771606 531873215 727876644 898015355 233843595 686666283 82922728 692935685 107213538 581119864 580427111 954129500 302011155 699127424 526515377 563434758 165123178 624190374 555593158 696223759 867088194 939860837 850701910 961463333 408412452 875782199 771773120 880326955 919725673 980541729 762394460 838898741 263159578 567699245 975399884 987329052 638054546 876033827 746797407 748633573 23989416 964502804 87822243 299877717 909110232 933073459 176271491 674055081 967708739 994300123 676470953 810287993 267296128 800608201 684302710 873433690 559210279 808663932 652643234 700008492 511991300 780547266 813881906 974371353 781211642 845206515 299995762 637036243 155938929 463137955 853106966 953630662 725470480 945633216 180693821 458752158 15878843 990615511 122526796 146732992 413679259 436454545 472851504 908568435 778348423 960587842 544250623 986146692 417616827 419388317 608409554 742818223 288262523 580263421 971034159 985334231 110178038 387679164 807363505 952453417 548410910 572085487 521608793 814946496 16990049 703171036 400617291 984185951 250201846 641875496 438264264 799094646 488337760 605817278 704840022 725878433 230872654 544097833 601751490 972990825 992763722 998833103 460609686 742996209 716395277 890915864 541537968 624245119 858046954 995028305 513540941 984208210 805368264 902661479 939983666 991482973 194157948 398945180 88834622 772302092 284054949 594109858 234660889 393521817 927065294 976539206 492101810 531181414 522887169 889665639 215815122 555068852 109216417 444328651 322187698 700841525 921120055 939072607 302742945 790270852 361336251 627163697 408008776 889780552 655409658 827478840 54431118 173879452 194125669 816405028 60114305 577339333 240633389 467771296 629503176 950205067 166041168 708239594 208835173 822515253 366521739 451096757 833497702 879172982 731936997 733985908 866153555 906686653 586133409 966206018 294759596 973504366 557243563 904586302 229233086 988383499 701264734 951757273 794732283 816312196 147841101 411939854 982136911 988323772 474305727 710189391 52378604 984105958 245036350 427351315 934388205 998378691 619131221 930425790 789555862 983183800 741558356 916384328 637528695 673907392 150642841 714069179 538910161 891785328 656404343 951060826 977557670 992268404 790608054 812518055 292842916 912051799 523088359 915283311 718603962 835074476 942850309 963481962 101787486 705627858 960626848 978602997 787092045 792073500 992448659 995548413 405124412 993091305 80982224 261011000 568299852 798390267 410952911 606569404 280065511 412808808 762108398 786972044 954019292 964663740 949160595 958313231 596472817 779577574 530809 659877186 494770420 722663304 898020587 953183294 659468359 665263179 36441407 921401615 769743788 792497482 280142606 387890396 283527799 414811433 913646800 954683189 323463807 802673783 430745016 643147748 713604966 791125099 296157331 476937555 597292190 824644262 588556289 612094450 810127259 839905375 988360500 991122051 363751205 722114496 895608837 930118169 357150234 877469108 835174168 854720182 489925623 643977923 886907228 981327345 800707066 919179523 405729404 997905444 970862116 987232978 245013700 569437094 561942995 724835410 678771453 865494076 183011493 602840208 924383636 968521122 230826290 749505511 137632855 912041115 760343291 961181808 247165783 993597630 867884870 912974812 143105677 485759556 311141231 755547126 191975516 890207719 255587056 904950564 261845653 559678319 729462126 896033775 985357356 992937801 486053755 518730416 409192035 937686230 485307098 502157959 98521229 413905982 385286968 676277004 150542800 710571359 263746537 629858652 892466949 918313626 705131616 994487143 964979872 982660818 887606018 991949742 509728240 866873108 844675568 921817628 302925210 363456651 74939548 650433176 870679291 941301947 959677470 963660947 775988722 996018686 618465505 765225492 809998154 976724232 743961418 934541978 453213307 615549560 508753077 823369394 521863634 571263148 904083402 908393894 391465474 484476842 263074563 568111301 242576981 830720924 659565137 874714190 614402120 862402561 644571342 863428788 827629155 853179702 250312814 787957645 676826119 889338800 351256013 840680616 603044899 773275466 891885934 902246781 111127560 720889514 525817951 742898153 755125317 800195586 23814253 947091792 154506702 802266057 150661708 461352783 266392069 529958625 933085986 982704769 251194865 655118894 211864910 233487095 503932464 870890132 874936751 991225290 353770353 831608631 433203017 624064407 757328970 882235675 279914633 324934354 366799101 933891801 393328827 652090108 377791561 767001996 987106003 987288215 781398343 907697908 515769414 630567555 104397998 975347715 964811103 974965749 109362076 325481841 857667175 923005903 429866991 720062255 961766779 974838734 568983172 876494730 921876042 938704997 572219974 754347198 889692346 964355669 238092194 724098383 604958312 882943736 706334964 954867872 352662696 769054333 631686331 958735514 224368806 730696367 766540940 981153971 114276026 202566350 724854121 736110804 536000126 573801896 487654217 529272173 442538364 897814448 396341928 396847172 220849964 901634463 198280955 371891283 539225264 792166492 538638635 788033827 800522022 909674077 663301334 669244575 544016091 586444560 151495068 316463524 952521069 983858948 414351414 561632693 375431185 523865977 704110968 921644084 742807125 830475772 694712715 835838102 752452667 946952297 961659252 972906127 910209083 913946448 398829837 542527286 66235838 316206232 766687327 815945331 799415245 932454133 552773257 693486117 822600029 992079252 398577353 461269720 473734188 592665127 357009510 604501725 210527611 259672731 443940901 985412768 883414411 976094748 101877102 732585317 390285623 560017394 817590102 891941862 291276464 902681417 232471109 473243010 342843092 505619925 710964986 782177247 257604980 801166518 711435060 970759931 900216918 950264318 133932677 878155753 968716666 979500257 190671514 337920833 190503700 571588271 898794573 910900494 940498064 968883564 725891473 981967004 766081003 825807514 638991088 883285480 252715308 697252573 297543486 703356345 646735478 832212026 102709643 268781414 658032788 672032213 499851073 822506367 963146265 973076753 348575901 513350601 265164186 797065447 438318237 474846832 537558459 680938426 652704941 991446464 534500823 839498076 600397311 895301071 796942350 913527937 384170760 651242002 974748174 986610534 536198883 914307481 783746312 847077681 505433534 760541622 199930566 641709985 584649576 997862572 900060764 920055130 404951264 562823117 395470185 595285990 497190869 535398380 725978855 795991872 392555980 537781263 831601585 864617050 939409070 983403737 706096992 777752941 996385892 998825884 951891083 974228804 198086151 752002986 483816316 950257884 168792938 513945216 373070120 416745570 963840999 983321594 161268895 737286838 29284288 71501017 692255159 923102918 872500946 893541886 164002415 494559381 414406352 789545494 358764611 662758344 952751703 980934665 103025213 631001835 76919615 662693779 587508860 952542140 855085595 923282533 890149963 977149922 21207612 643165741 467534550 902486098 8074372 964999056 247825123 724118130 650605376 930157983 819774248 893537344 889919508 908248074 500778458 548019239 769528415 901829538 905827255 976961832 98089737 609908686 622383949 988874201 785348585 902273506 2981754 812951544 801454654 957286782 478959712 522027644 770788865 974587483 97446261 390880535 601213082 935611033 474130120 905960013 903690535 920494651 819471496 882899816 782993360 822998644 778334447 854033181 837903126 921105730 331799133 456784112 149111262 237120630 759302941 944559154 395952888 549607792 861833283 990597492 948046481 952307252 477057510 932567524 795084384 804797981 664246745 788943922 624614341 828813144 902093123 961944137 297782715 663062869 722718780 796790372 728392118 766047259 785158662 994808073 617091511 739678446 160425410 181329348 511334157 883650813 258902661 706952693 965025484 990643087 658352712 667332631 82675175 778204971 725306599 753493421 714105916 782081747 279528725 362111857 208564577 734281135 655067330 948336915 292617930 750867226 934852705 984878619 811903630 987845198 560160179 626808051 197327148 802563451 823525756 832410648 498648946 761233409 53190253 883915882 798684820 976694338 828932488 889902984 615083356 725915261 979314875 992809071 294259302 732598085 756294636 837794105 811131976 927997449 131353053 350716556 431517385 485909771 573089077 773102671 629747334 848164150 780086923 954304287 753468746 901836246 818868512 969304443 542400816 972503447 884560440 943831531 427018364 769690718 763064814 799546922 746342385 858675835 319561889 992528460 406316348 781495300 317152592 506211669 768020528 892772123 744213423 902490911 160502679 268003662 320013514 958212995 210953645 446495623 870011289 941933788 32996256 365950898 399668370 447140386 964302281 985982844 722303198 787577667 175336101 492938930 842354623 909557495 183724265 291361086 986707017 988072651 528723204 626220170 465959129 949409990 395158270 630321846 544028561 627020134 248836798 685441366 52640215 362749467 868775637 883973455 101363626 577741149 79198080 216154457 703659235 992103915 53324952 178120887 522169491 826883859 904357983 921762089 874769670 900028237 984565881 984876850 118922390 814630182 756024099 779676931 844498990 986783767 998258912 998606494 840150350 946893287 495288595 555642039 409737853 472150868 5385982 661590251 221787819 267824967 815165652 871558045 324417766 825835659 888027461 940685636 612973327 798008718 584924656 758847124 357344274 989350713 680797377 989422475 526412295 921740685 804166787 849981386 575807450 740822967 19927538 648206237 255977027 735468422 21002443 192874433 87405291 930149714 771212039 909620863 604369079 885177789 571635030 861984277 444902047 959949726 752628645 769739280 433128057 574645139 275187455 601076761 645048524 684190936 656607826 830331551 380630654 828282290 146515020 558377246 754604681 986620647 760722162 857132902 697224325 805600697 13771026 459931203 940660242 962124989 409816909 704331794 136691588 967331833 452782951 467063379 848581213 939848056 438659035 760643783 451858283 841733464 874126873 949326322 579696883 954537211 901563079 998146927 758105016 923210975 654996523 957158310 917537644 974967609 867606318 900211688 83037063 539508121 976016156 984014695 605387521 676238263 182108271 255181574 910640172 941792730 735951249 951746974 908988141 951829374 851319447 867857361 400547119 687338211 935486779 949738733 363555496 489499775 271909751 861151841 468286736 774699619 483110131 940048249 338646475 370367200 39291827 102654614 123731399 413799004 937530285 960322142 618694480 845849694 712592831 786343003 306589331 949204126 143965634 390283570 362346003 969672915 4936429 222040594 839324979 983965454 471669937 560559791 672045152 943090238 731332879 986279299 240471655 564350754 263215180 500661729 562777438 649753601 6436353 531423742 982330965 982721304 818325558 871415580 215877183 730684625 523392071 684543635 806686831 885237884 570629553 716043256 175546532 291439515 613708379 823594790 274863182 561876437 371942502 447132631 577076069 705767309 268987712 833602837 375961646 576018533 807972566 847773074 854806039 876077026 646170290 670375067 945653805 946623381 767503036 809663504 10541707 517004589 768375716 861778872 511337739 869005304 591063309 881833157 353610343 939587838 318817970 935044670 943349122 992308835 639804034 894042553 405818536 458343334 716377934 762764482 14443486 865400692 252183332 279419949 762477207 916288784 945754162 962387083 274407409 991756377 587859625 831947458 234099404 844044021 373673441 643428508 772241636 832359873 908380302 973851779 851346938 882330448 853547089 969339074 619921123 959337157 832589967 845224878 715260958 979549046 921185640 995414256 47613758 269988174 499547656 592029713 628320695 895416092 835697798 937317301 668905661 888306285 154362828 582549497 372432097 613325732 575257244 628043900 236697907 481776943 629729813 812290658 671179804 982833040 76041621 686486869 821752089 952094948 469943943 920411058 212577487 371010357 701799829 911894664 558364789 810430410 45510266 110692437 439447160 656463819 985114038 988049985 565214277 605891313 607155591 769077958 514015640 675203492 789901553 900157633 822208787 966303170 716335052 884879797 265577135 548598237 539833025 804854819 119328108 482221543 624974233 886346354 954729258 977546149 634250506 673108456 497783686 981113698 182123007 856567486 226319750 941039547 335718371 532633061 417378523 670588343 982906640 983335340 883407181 967809557 369701219 534280221 437581834 650934926 500254433 632255207 834852979 874949147 646672515 944248279 90838935 114650807 689592118 815850096 504942274 753401333 947981101 977609712 546397973 903844656 237806486 939683493 489343743 493594159 502520328 988278146 287218598 720254524 425962684 718878080 143765361 546904691 654285144 753049064 68134126 88444595 780792981 960710807 461973430 531251683 826908511 940032600 560164070 666897612 592093123 768282513 351028471 953796843 153669011 443804542 90982538 403329166 198144278 944967121 602817914 958901959 187663954 453126149 332089052 468452324 564725066 740649998 112884669 646369255 499997768 543008570 17536174 417311590 378016838 887587734 709630571 737519218 694653489 911563183 258835649 374777000 689050978 774841072 765272810 985631301 875438016 915601728 752315365 913076297 142774184 866355129 424083299 855150211 634534512 917270105 275185966 938631817 691010171 954284142 445673141 834179923 761931396 901008064 219656585 891451622 933251691 995143410 983761615 993718389 349174705 383796234 7962310 283045173 583887344 859016234 999119471 999189025 521536177 899095194 963130289 995312154 791223578 982988342 900948662 988008401 54790578 616095863 102478179 655958258 728154065 870242588 264509143 982081721 605453185 747612994 837987649 886594873 247195534 932045693 764494265 936076851 981066211 983844618 173158235 381151839 344438149 802962885 2056596 462539974 336023837 435011149 82501830 392267074 955425718 956702979 463654861 691841666 705327377 705439231 934214790 965610022 451439364 466826621 726274577 755441301 779564044 875652574 515222810 799210796 348875241 662644408 937488334 967852484 986191999 998873777 988986505 992132921 626697041 671080926 229537635 745844568 621982643 840187197 481561736 924925335 980190190 992721837 260428914 422622755 502173392 913187573 425195661 646922793 771974107 985602844 193559884 524767013 824090963 916845525 712776481 842084340 991011146 991859473 440496153 445792277 411206556 946080065 254458473 300354175 63720766 947367751 669109322 829365957 341366294 898538619 420745820 633797209 612318969 637062819 785053011 850868327 621782336 712644890 447480075 453243042 802404399 864530395 950937958 955988281 659004755 727990894 3307940 631235193 201062195 769611055 718772920 928517878 67703096 790478019 275621258 863359683 241674013 313896341 953771308 956294642 487053496 578401416 570288715 668580874 383739550 976623198 446870497 887850738 147064270 823026774 431873422 611213596 785861725 961288885 119501441 815231910 805914979 929831964 761551264 967924714 997733611 999177910 651724166 985116205 851943299 949182332 882812137 994226890 422421097 746584207 3017570 312777757 716843619 737681523 758208437 840214151 478870416 745663156 400104758 576884283 182944085 286065097 107747055 895715927 758634509 795065811 629974713 640532401 663230691 933913024 923702950 936482517 773242183 888529053 493330673 623209954 854976978 928338217 199060070 289823248 710752365 932171462 540365992 858200188 702125078 922503656 29513738 993665196 512711688 683599662 980085878 982201421 478048909 932119945 855497789 879661035 505164242 786738064 631263072 827139231 345041712 815333514 530771334 996626947 913494329 935581485 740547128 788148284 991344590 997589636 120533630 866823384 140334685 320201714 109161809 164345969 545784536 651649644 942104640 990394776 951349195 973275827 310966620 777349579 986600976 991650146 526131830 950471482 38820089 944143577 619708829 973224591 268908921 727768359 53856783 473431031 494779467 584227547 694126098 701885521 140108565 938051375 104157189 419311316 141720671 324381077 268721536 897824738 207100117 421054284 580952582 647255506 63808838 789228742 439770490 688321232 778266207 978814398 784373166 805583295 116704681 886822455 351127484 910806878 870650850 870834899 23485111 420685958 772604625 825677007 751411139 794441809 931711957 990482274 920907215 975644468 112773397 834390862 257498180 315023200 409666506 942765843 631723573 781785683 298875388 343188643 937924491 960965308 859493933 906365374 243778688 589450267 29922633 251599006 993831729 994660069 26666917 482279062 186956523 612446550 791711483 871622094 338350917 885854826 930989407 936836291 789222891 949959732 970345342 994639636 177218940 398485589 312289711 339580840 198973232 636538459 273589894 868867601 37841928 69463324 668533453 949590066 741345728 839296332 629216480 948762776 984773007 995229796 884770926 900859261 224223421 856274167 424052227 854401026 696165954 714814630 68811614 181630474 864620414 878571233 168125359 396365874 575516665 922056419 459087321 498214648 711344616 767033567 597979405 676674724 95035268 588577608 138145444 952045312 52531302 817518361 657961697 676525290 862364362 994002804 790406496 832001277 484200979 902802068 675513580 859459867 797321347 803857722 133896038 484145056 720196452 930487537 604600342 658769032 173109029 570630373 981107119 995495480 267623778 379545272 439937837 541191178 977355738 993199150 331993927 705928305 380490410 627603263 400234848 422635915 632066086 834427826 919667411 925127563 801277368 965661456 811883289 995396591 913938388 981296557 218430688 708222057 920595976 965687905 606186409 729182162 391431724 883608031 634569673 821456944 216348717 475090246 495267315 859246065 38578937 724749582 965195833 993183496 125907818 823580623 856860700 912861292 776522349 818386718 565278035 715798948 417312134 716333396 324891972 641227768 532245586 921106917 400702858 760653017 95775149 775436034 497678839 848914289 567972821 649268221 587689936 815268560 478660711 660160847 575291395 901422022 334299910 443591355 384092172 790628261 267440477 859151293 691290618 948014419 425479366 782898681 967798423 985417982 883775993 972274588 543679407 683070833 553968874 897919018 484963283 725856902 819650347 844629844 12019850 195467830 278494052 506001109 871690395 978118054 311327087 839504395 837145011 853246115 259117490 557124231 98759490 274916660 14898688 30345450 286429852 838647347 631394091 728204725 764040199 949190710 187769976 663030093 670999645 888143232 628463277 957425385 466370409 496970240 948065104 988190786 181744312 319111721 793409450 808945111 981167955 993488337 489277750 737768359 477034069 885521053 170642200 737296678 953470736 967958067 651903488 902369324 444773027 803176096 3208548 161408048 679611381 901109563 580332913 608453018 596063484 899649192 84463025 448222781 86886709 935190140 208637129 250139008 804008808 916582605 835703000 954869899 792000957 877729046 993392971 997625257 651881003 991067716 79748908 978046256 263725719 422636140 617171574 847548821 342994090 849110361 813788309 973038344 866438757 981632728 902302986 922943767 853233683 975061862 50744975 551482934 128782848 437713874 24506924 510376611 902786903 947010387 57122537 236170848 121342011 914896910 513610446 880803124 582664498 732681049 938812004 969099218 815646329 884564233 920934294 924223318 546661274 686658658 508380274 674296463 164638140 944343698 88109840 681515791 199397212 623096917 395274204 467361744 393146980 507131828 266568170 832758075 156247472 773927138 29856084 319054867 623178636 811477974 602103674 978759251 652954061 665287235 587854367 608529021 723139354 944446446 849575966 996383829 572348572 960427245 854270978 861285738 283978591 363798145 372018912 942454634 981521483 994521130 895107368 908185093 385741963 518807355 429676964 613625983 513889223 721446385 856728878 992716205 811516718 879403306 882542103 975236077 592539746 774594124 394549111 572091263 934658024 983947003 622763760 933125116 941509432 995669823 153087456 608520353 858406089 938534428 437301582 513011504 389090060 961132492 484728656 526645163 186563987 205730035 285695998 661750857 373393027 469464997 33947258 935173890 152902788 775965532 174203425 837635685 850860138 855905176 376843949 980856137 271915203 983621375 142336144 208572117 851783041 882605003 906999170 921985221 963910190 975093995 953963310 965993728 841810044 932715389 344225780 830117240 688037652 849111216 917184615 936275147 112990632 783160548 765875958 912064625 970548905 970715799 181839000 747172654 273679721 979309257 955012966 965324032 246736025 505756111 368784461 940588108 423520000 771242200 941911538 977113825 156326489 514519226 806271040 936494068 852776002 929631807 711911344 806961847 422246541 660595282 291964466 497978096 319973046 610207517 135723193 180308426 275631531 627081307 409805580 480587147 543171424 564884125 812730078 890634164 314009314 937374371 2932573 839523661 621500037 690884376 832227586 909864167 335265697 667962321 274366178 577850328 156316486 429321621 881513170 940582537 360082297 581688787 90836706 436826581 826193470 854045134 624213973 997963999 984642202 989020738 704046608 920153230 738740419 830172538 58310920 516848289 11121601 233129253 557177719 784467424 74382875 952716160 650514694 969063402 325763440 511758884 315901566 692162892 806060397 875155614 946296471 954803500 615874177 962938062 70647943 634515000 241005915 679697279 47533203 808049330 635853837 923238077 956102705 964154497 773170662 889224340 136776530 766421421 361285248 803803350 269488646 613934393 61694410 293650534 113480722 551421756 271730676 790565190 78047517 949335779 797076336 840126702 165024909 875389802 751393961 908677863 630318240 921207785 922608536 959381837 634689218 883639096 423554125 789028077 211997788 477273150 40294910 384425172 625688783 717916620 687126918 832567082 497886858 800567751 302885737 324062644 446086289 897948677 169951614 256968486 761969344 853962131 207786319 377655590 932968758 973958904 325058106 915631311 331863593 612107579 36310321 861811017 461734781 947509613 589273908 724303525 998326661 998638429 11366172 298087346 825217366 996772919 457194471 724093044 726943048 782398686 117942473 693790370 227353718 275282057 968082590 997496457 25314290 813915792 382734896 626285269 244009824 713230007 669283423 742836804 977564441 978472825 441722290 971166484 823221265 992552463 569796909 782539166 641543152 923518770 478979194 618263383 409832485 963706042 658148779 991091017 572908431 836145742 362355614 576521446 318465227 459702262 685209647 740870601 294108214 432965055 377514559 466517923 597648545 725149735 503529617 805908387 550845245 749566304 836884279 840374587 555662351 730181861 301429860 762198209 451980005 930558352 745393656 939015955 968831748 992376930 444237012 551965790 309840180 475207589 993151016 997663236 18095392 104323814 9658243 431684908 258494181 906416400 424063378 702684780 403377288 803977810 998959507 999276431 482479274 546320090 59463951 498697142 964768955 993472355 447136400 467049018 881629353 887575016 144533276 608049133 87846421 599921179 633821734 981592134 382137303 969896580 765120850 870604192 97134379 107790500 230865247 719906861 623913023 994779660 711148138 739842393 51638531 554478725 991970355 994584858 225951801 671176373 785592405 797445483 769076045 909159812 240476854 996083084 127912561 468953496 264784959 762744430 470827364 737755028 725249005 815156287 62743211 673619146 570643866 692322638 739275330 831750993 102914116 683533849 703521415 728369176 347584302 558606958 451412348 838088777 137091150 219159346 237466801 838370406 85180560 688642120 157014603 701036231 419488808 671963255 79188249 915496812 654219271 867627770 207773549 282804095 778604702 862879293 569130453 852000950 396322850 582317371 377227003 769615562 178319863 981618853 937951279 959546597 726336540 952718873 264889155 498544418 462606771 545037603 319047178 924543592 122142326 272368781 386103918 613471032 466174028 792931551 428802156 996782519 387360347 757166426 825987021 886842866 201412383 446382481 651346910 989827346 945062038 977773185 162867334 187520254 716782171 889382385 235949461 659636397 956252553 983948871 591118371 662438083 211712381 985043441 741709963 951594882 962082689 981456897 996536272 999019482 145049536 575319727 378874603 800815457 307572859 987626337 477915263 969364096 477975011 626403245 309303027 408273238 692280766 745523379 375635538 905177833 113746795 421731114 2381517 891713933 819736442 826563923 519182727 638606842 400385749 461091141 274733954 845152920 836547025 894710605 314839760 385210886 646638336 827430837 806505942 844598985 684276374 958523274 389055565 889082403 270132417 646481915 894391013 970660490 604764973 774842324 114674274 564078555 954042199 994600834 511901350 761540745 962903255 985151519 416266647 907349694 350124376 899103328 243743379 796908632 679919936 872714615 280293547 421550118 416160215 781073600 439539622 992873459 197416609 668136600 857747664 931702556 660489811 986066857 175943332 241321385 593945459 902726790 123546707 225692545 652943817 849320747 463763608 869776665 468962580 845652187 245199037 572483596 675460972 853433449 315916684 743910962 402071739 832339014 328155387 657851517 69187379 559130616 594160214 761367432 877100747 910179965 684991390 704342693 994016568 998246296 223120060 835949882 391057962 715117137 529168222 740406832 975383786 989814985 50803019 655146214 646986833 987926344 254553965 976714183 462222061 637500316 564764948 659511508 667925091 811547757 832760579 849271647 709756705 743219855 256437375 757499827 347278403 592563893 665149163 767411747 981510463 996923003 633400011 806640013 522806674 978608493 903548034 932624800 529265082 740581829 987295341 988517524 38625002 869460226 602413435 874926514 439248736 603916125 959925791 984524064 760137388 783625859 355466680 878762105 245772962 997894329 545971122 899767090 161303592 450081699 544939660 599016218 474131572 776106323 673076657 973907735 231104670 643092344 86230254 890647802 388486164 516976956 973862845 989892552 487283251 597071136 737227172 967994576 93420508 651279312 372438315 929668174 636132934 703788521 667137532 992687015 421231240 763312423 972776704 995868628 843567848 843782355 711744793 808618791 934107803 993450271 873672765 893973376 379638827 806322307 496165552 668441091 757690390 985914182 367277511 374620583 605267478 829315905 144193806 813717215 237286805 392032212 105321185 438401730 775810902 806156224 888643722 968262391 566424364 820990648 568156559 769492224 225812683 696575548 802781321 940879421 973739175 976043423 534777978 700099111 592842801 911562797 927302331 959496108 432532809 885009385 590802154 955008108 825502079 983713518 482595998 888283472 759763694 960492593 933844963 942235057 867503584 922151448 675222903 816798437 80526373 313676989 12811154 205157062 144867236 366112044 694750202 915325918 74786553 639090232 751677082 885284881 103097408 462878831 965554568 969734425 496168435 522909830 996507520 998586227 81601596 556681242 407592207 561945414 503719018 680556548 279222187 881598125 795927795 878066859 536610459 977906100 195839390 854542479 961992110 986487690 321517189 452592859 180171376 584337383 840665341 987939390 172824550 515446540 533980533 887929031 521224677 563448105 414068080 633329263 333394039 520477151 925408978 950530025 665849305 846738570 465574642 495031908 222799089 964276840 382540038 561954136 4125360 72450145 964007199 972924135 6624757 304121343 447260548 525672100 906909114 986035034 411528297 471183727 973492415 988522342 224024786 389008322 118918843 147252445 485633189 573184413 758584645 773503474 53961230 496363221 456224081 683442576 617055792 716200122 129270481 571136875 147075390 803404002 756788200 954379934 772327575 923319212 76295656 202076710 581467756 781582368 276629954 888600311 495203320 730487971 12478338 766601589 893963334 958501000 92476573 306751312 929808517 997931228 227405011 639201267 315563612 423628963 104603607 306008415 455675071 643503132 921637597 944166787 361561973 563438657 257450363 467744599 780834735 928856769 650175381 888624311 58427775 422374825 532557313 912269815 457773817 497778720 719381787 738278848 518704102 983221404 508454490 978154275 159496943 896623867 5787843 376116596 753893995 788655246 627642486 819799614 948363582 955616655 391914717 863916267 367985518 702010441 944913946 964508078 860914285 948898353 142797727 371265409 420274898 836736830 96006095 878346855 768646317 877692394 739904295 862686529 916672248 988163055 680954060 927570709 17355947 321108752 214489096 711349123 415545145 674900429 661980728 930503714 336065657 613450752 814894390 971586822 558063304 597946348 907153912 924199185 938659270 990199865 121206505 727110008 328025882 349449975 899035743 909569115 260490655 930187099 521910313 794497764 175615960 740138794 3731055 968351215 545679239 781299821 820157322 827045398 40716012 189582463 840330745 854056211 367148267 837723006 355517709 411863069 844062921 934314593 743612045 852374901 475594813 986396760 50023406 860916422 59935888 553141254 71178031 976956037 814703011 867569004 519264396 778359370 578132494 605772169 729371617 916469936 980313209 992000836 725439858 881777546 843275872 916602354 52138110 115803698 955036264 984142279 993682708 997620118 425065051 966846329 874710066 935950591 22994929 914994195 154524681 681859227 294181959 301451917 471614749 604526256 691942300 756893756 942412440 982758816 458235659 852019276 642803444 948086719 497368035 869301935 389580348 917564138 69052575 213067737 413382404 901663066 935638621 967285663 877764846 952908454 878035730 903139794 159843944 850808197 683521242 762346995 511580783 737874040 84687353 767234421 173423738 683692694 531657658 591100605 448343690 911663583 704648665 951838058 11515364 560988855 875328543 964919315 785078695 836608676 762692586 806834718 995498887 998103111 867936798 898371615 222053693 504329481 438394731 530053426 153048543 486241360 874063008 967926316 974617700 980230356 481201251 901308841 535846205 934875291 209549894 844887970 374940295 399126474 93919892 462382119 382452070 938819475 279664224 903221490 664459189 904544108 857117663 950343044 419102798 744404958 52311908 939078666 767700823 996290947 870646595 981491683 61300409 230961879 131088456 540656904 669044828 889716494 857911748 986550870 549226224 978632059 620666113 845178893 420332241 549207322 930774797 936510176 397216721 822183459 523692114 671996999 144678023 564534302 595891001 672393091 249599438 337450506 110619452 380946935 447029217 666195434 528256 336410210 694519151 989921922 43533587 798582121 530262575 912300542 456728878 887309980 641149510 855177518 630389003 808142630 661987342 760185056 298065317 368748719 136447893 778973164 820432624 957550491 803708648 912800013 407692465 482398775 4914004 912039818 470989697 830414047 758918209 816141534 914320698 939054898 336358659 401747252 28195226 385452474 286224154 730304531 621808211 653028410 874610708 935821088 139986258 232798586 770915547 837175252 360231783 397509996 44349648 616784712 36377958 271285141 589465943 932759125 498859161 635108063 219720487 475526365 231103403 444167778 625554812 692619188 344780704 475494122 739326294 983824745 89292798 643907717 607704743 719853993 97572000 183229551 398813267 703002719 238554545 884538244 119118185 973158992 911676628 942889436 52698020 239114031 55308313 56621497 537997440 946677530 848616714 987881397 270159608 917559071 47481738 968055659 254623824 909817194 204295846 735024690 488296447 776420908 145048434 177075051 581584439 990303441 329363727 632772630 437828068 894114184 939145313 986737345 588385614 840826166 782796956 899692889 334912067 367547288 800478955 855351289 286805109 398198506 674107711 762413310 241219548 581828759 550397115 595524585 331948639 781480779 820553437 888928173 606397831 943815646 75868763 757814162 969939491 987655337 404613117 500218926 485162607 767787362 743332789 781689057 623801297 758959759 490052659 660049323 234775283 320602372 625696180 834679286 693428231 816559168 169539455 548273113 405668542 598459907 627639996 822802308 263743277 343558149 410461930 595261065 911300799 947978337 13867138 647248797 232719459 326436414 19036723 980206595 825227171 935278138 446714533 888699704 82149554 940295355 392903978 530942248 61297906 193940989 170642673 680919718 403157994 926281511 657674583 747356953 999169820 999320089 484193323 898782144 983301926 993258396 240609790 993483447 450068962 689797476 26796371 44202381 570993848 834335400 221410306 930485358 764541467 819096141 84246807 289814765 840905536 990713814 993451572 999261698 397088100 831030416 417167317 433187238 841621065 982523152 276059388 893516067 854695824 966642238 650554797 696945687 820759077 997422191 882826968 995701634 407549662 641157097 268390043 887415055 743913053 902018573 312710729 469078521 157880938 410066075 2398818 32553424 356587041 877895115 365059835 373153187 118792326 367075295 360782029 479242026 539871397 884445789 188977974 391035431 544565144 596866803 984365275 984550113 690717239 789811460 644913503 797018940 504005394 543697954 9019378 69214561 688589061 779333501 378808422 475261022 762529934 769174341 719518370 786035147 369778853 930874711 819373499 849885536 679340715 739914676 410530837 767698190 263272493 919585203 814941384 872257298 385394959 711919534 741336783 808968287 551980508 681181416 259277046 511928098 217354290 260270799 831879356 922029261 251758748 440361568 902036964 942698389 279752568 432373738 191878413 991580895 829147791 886910407 44376212 606305172 334661027 770868476 786627931 796019238 624369091 877067634 390667680 976199806 604542092 980050491 349196348 691947896 869047660 930097648 430210357 898977996 21453622 930801353 748076828 860925757 12194691 303974320 654263533 972162590 525245566 727231978 395632353 845195002 533633813 924760784 232984476 573320119 502103318 518818604 253420603 331411406 148477597 549660766 959343006 974959188 83801294 158147213 993053078 997397393 92425038 207941083 200709460 276894528 42767510 746401432 841901278 998341099 817540841 822226051 251707934 763866634 93632028 805097791 624201927 715948170 269323666 426024080 801162033 994207012 802591062 862223309 674591093 811232138 892085824 916640256 272459292 925790406 352380703 614490659 21060793 366683334 426613362 798969137 627153577 941305327 423563758 843968035 173079073 519620437 35939909 636600396 528434015 782081526 28916476 935141381 83133575 487853892 559234652 957789153 736235047 977503859 129107808 919420276 276394697 634836203 965290903 994378307 342280774 605013242 891006140 966177159 522487474 927141764 617555415 992855087 833176422 961419838 58078699 702691963 955460931 980084982 951578754 968370628 418276002 452003888 788410005 892831354 621727439 874072832 250200571 524730293 71671547 899483097 843277880 986137961 888883487 968037549 561158541 651870899 865924870 945428474 209885096 713550788 823395130 941519577 876703539 953763372 329274785 951040585 480573811 869854153 65290357 752236225 264904546 330390308 553435807 936940195 976323273 986306948 95234283 132099479 956481016 990018927 780741358 850722147 669031522 934731113 780465117 925453033 38157193 936277082 26938624 71281516 516698524 773190098 757222268 935415409 288038032 392722581 103572380 819718869 434188728 854316043 568952852 988288796 377517404 527579303 696051231 979367801 573131219 711851880 973158713 979923788 970168553 995823589 611775162 706763024 720583528 828873093 706092845 729289592 963022613 989342343 84616105 983719915 589789418 891981860 32625736 228223137 159694986 171263849 189181597 527161597 960116656 997860785 944919545 977527380 264651709 701529009 215813507 584583727 15848999 473947291 135417212 321046803 505775982 679511730 195094136 756359216 318731743 520590866 101775239 277748085 91170728 183402067 578581770 968805020 502189022 632020612 608024063 848934765 162048816 569340404 520329677 739922326 255383552 403269343 59644867 716803207 748363336 913354236 713368511 965676936 777088319 849218500 858393773 864382969 395794377 475427191 605716897 636387521 303778372 629797844 805127456 889828794 707140524 892355272 593829226 655885319 283467157 714821554 869061890 869217147 641200612 964624389 143550691 795943955 229901147 738217919 768940856 784631912 580350950 980838939 509679380 648926205 807648536 890530280 609702001 976700047 233967097 314794810 287421988 325629561 94977141 458306010 963910169 972049297 900025374 901987870 385951677 904449978 895330067 993465259 817132683 863795439 968989236 981741558 774828862 983144336 32214992 760603616 632837261 951698376 106482438 142570479 346848273 655320256 219786885 900610258 785134527 872254228 457515744 540564691 718985074 829479697 492780368 774029533 730443014 964163612 175673248 354086701 656273030 961036590 681827070 789792608 548451778 969116672 123729495 262575914 366825550 744230067 989968408 995602331 205925058 784284817 373107726 926592913 245000443 596043765 599752401 655142866 245461358 672091792 727431077 783708108 319957027 750051803 389081069 747115584 242302327 756219583 779738328 824372962 798706792 983194559 729522313 956753499 720563570 872705002 678141530 903231930 504479204 754728806 190674279 229794690 974931618 987973829 637170252 915613693 487052003 925307954 923126800 972766876 150809730 414125472 266437693 885728981 735277464 877501445 114586206 393152002 800302233 867495094 830753293 976864422 245783356 645496433 239442806 476825351 285150778 405824304 51920177 651024813 129444459 934832137 775183191 865215804 904844862 932775642 434267061 900739773 51133246 735900456 730064232 923109493 143318083 848542629 540751506 754916404 449705552 684836131 129057619 688071857 8322908 288253695 962182000 979247406 31742011 347878563 656304169 694078913 326751087 709199070 915623853 922782979 222043173 905218316 185264320 495249278 88320367 998009598 517422689 916226964 211732447 508080016 423427134 899133785 574442067 746463460 989084886 989697607 485170935 745550541 597253025 699598661 270223330 324264573 844526209 943997889 239612101 431965354 671116831 987343201 966448531 994902636 923294822 973113743 811320788 960947573 24212365 449276688 240059640 391463346 278411615 420113214 448777928 704457187 96748510 181267663 534284637 850630043 861136075 948473236 743617688 881100382 465270068 589937862 831374660 925111330 943453937 972371413 398914291 717896976 393477314 858729144 122917915 683091030 431740615 777563153 312357661 447189044 732448044 732531997 634307940 851329442 411269446 867569719 818688669 904644889 560803661 873480430 918339197 924167098 62251051 966321943 362845399 721296458 992298295 996992920 189793961 556980197 570151180 739193631 816396845 927345692 19651567 260840227 251957517 847524502 781515175 869202395 463333867 676176457 992062335 998396124 498446381 952755856 995709021 997854106 123940562 877563145 76607944 432224306 474578839 903091513 136888775 598970272 484600648 634813070 20006260 364507939 671059372 705564738 712988657 872294533 982679995 984269419 184273250 401526885 676908758 761925787 543072669 890273450 86487980 653199510 997187345 998414926 892706605 963510813 773857394 883956350 152818170 299874082 65791187 550042133 280648462 831225701 205238208 223285107 5364718 738615575 546980678 868121225 955096989 988078542 149637847 878564628 427814702 803276710 909636494 989176688 809817235 822942108 104934184 779676312 910342100 949211395 213038177 714256420 94013245 111628719 633372174 875522870 453172395 894561362 616821820 938926997 277316732 580769677 605338973 844132983 347413462 617798752 550855099 945793434 645137182 922006089 739176150 855357712 798676814 828647849 863252028 975844736 220876620 837528050 426098470 964022491 84343705 576427321 114481879 272048940 678926041 836439585 184760983 988100203 111368084 474943991 295523280 980624017 561987171 608989249 520044008 870761990 619176374 902431211 441331646 662568975 358791730 443454137 564782406 710078547 880603677 941097661 65669027 754290092 668699390 747830515 98286687 434824485 913685181 972139911 140644766 483495668 530886709 778385916 19296421 418407444 81307508 292414677 661939044 669441712 219842228 671816419 726614838 945696723 204641132 995873185 927923486 934090187 729631641 864491904 625021476 897419436 234088207 461875585 422780547 624631668 566198628 609967918 173839151 231022919 418152430 517227177 494228432 718330675 301858529 644678051 305782920 943809217 327461164 926016965 939485872 972267717 620844183 972617929 671644925 982658058 478649187 600672899 636068469 737673343 407406085 813521403 677897843 986701064 986822489 989503044 220278740 304104528 245584685 759423449 810832012 935088570 269218526 364559310 908619649 984839173 68066015 93107978 43992311 850307524 864284336 916558087 543166666 947231629 409147550 493582899 522033763 693154369 590673974 611057374 821601342 968139113 653079189 821812021 459034109 629646096 93697193 820463089 550208400 857333562 810442959 972076121 387754709 772621436 195760160 262702002 162301903 528528324 673183183 824075374 99610879 963526272 796638529 982939254 375192086 529830905 404468401 724817501 661351364 867003709 118192261 334745943 278862611 584172108 290926478 794438660 580105822 920924643 28351768 874684474 777854323 782921048 586780336 975566570 713936747 778185429 463194704 824607891 122155891 126963363 599105294 648863788 537252315 771280097 186191514 350731507 734054483 740205158 596564706 949152637 247631724 408843533 959448174 998507034 412174935 643773499 21326621 278229803 631409768 691616238 676165009 851292905 510687731 824762653 252794239 764315526 803949996 955176997 309117101 751315895 955142280 991356573 392744377 933224563 175380969 181800750 931853394 954738085 871599408 994453696 12307290 770879569 764805034 980402430 349071371 882917938 318577270 816078759 652476316 850664868 88326485 194411555 579075725 796182475 373605878 992995228 155128973 791208355 384384274 825717766 30217996 578237958 597724400 620776320 701051658 748910946 659721459 713230381 464244923 758986797 198276312 763609158 176274792 544037169 649423895 820746145 611575649 982830078 733251870 803145747 465937875 615142723 6196420 602989278 511690169 968004163 667045031 982732777 177496885 580374727 936441971 983357903 36280248 573110712 584057159 842715549 367249174 463550566 912925856 977025870 240049624 480246200 391028064 511979622 436336072 972080804 859410809 887791865 267723644 740167926 568256054 794573235 998612368 998939382 646928268 909785997 576673447 634132608 132999161 859064292 298597828 318029593 715259373 720116649 525009918 897896169 455107148 854902789 957442684 991815796 902430329 957830296 430502110 554096142 738759565 915211168 930973368 998746883 90382767 565125151 411758444 730432272 423875198 448856979 935038649 976469623 638807045 790463598 536007643 905345839 274655455 421610137 852258899 973050014 701796627 951952049 781332813 897598247 629728441 708956678 416092812 683573599 699590181 889995053 435868078 505504374 433225603 994617827 288442357 504380573 613972681 975790271 34042820 692543326 19555165 224392635 358924616 495556813 685300898 772842849 237834649 357156306 163822793 241771895 782698438 855390188 921128169 989656173 53035005 198581144 347797931 812743382 725538188 767701774 42351602 153824574 881142017 932093295 470377479 870375601 454609042 559564593 754011649 959385508 791256020 879958610 614828779 814716691 741829646 935079661 125096506 489049558 275267910 750559848 523352027 812575349 129798940 820199105 286925516 329147108 964231909 972842881 775728388 942620636 442303418 868647572 868871642 926586107 307707446 666759020 88135301 513767098 419676400 933362038 973669175 981569043 585990393 926304989 279355502 867416144 521051898 906187425 910187226 937468491 21497711 651531700 487482944 688643513 484109540 696529507 670545555 690922907 313835523 979688742 877221202 964537144 791723736 818023657 264728904 905784242 491176089 882034934 659322515 954960597 214586200 693070590 221702786 620175325 319408080 735395560 681115702 873185207 446410235 889951958 471517803 851570470 162162083 606769971 582887159 615477506 966880657 999256874 192384409 227838854 368181797 607533536 10791159 804313141 486439721 599009155 598179871 937090190 310950272 809091981 461773410 817806390 246909528 642369104 523329854 591358686 181120338 183430962 554505879 659512134 920186945 940222505 548657947 604220662 267875479 569744454 654520699 718199168 708192975 915458429 330894847 466195551 551250749 870316955 133646138 200086245 713524050 824516517 176228919 246809863 512497558 514493053 513994708 901364272 417458411 584955651 858783485 991489531 141858391 785595807 251202741 278449491 26434064 275330762 109437772 302560736 514173577 605139555 78288954 703761666 95047236 532319254 391173227 953199144 837957080 964647427 584136028 658893905 217900256 534452239 583878128 601075554 497069130 926696710 385046143 436816586 721120139 928662943 742365709 839711043 482207682 589943915 968612677 994645767 436287900 625708026 333513863 823993660 4042132 357584318 304586540 904882292 983991147 986946026 900543969 919099471 923660893 968372184 596887543 789967216 721748508 818541833 432030197 639545806 676880170 859634842 502637382 594507399 834304575 893474191 840705354 857715798 66743795 167481361 49471326 226510910 846775163 879053784 497764330 779987046 396515634 585176354 206286190 974973263 378253957 619949212 676256806 818947921 865511966 869408153 332958141 468667044 440175925 514909070 327865928 424975803 677320251 776696897 98159458 451343321 408510583 596483765 514578872 526361841 542923154 558657410 693007566 853688403 486570582 567546343 535993332 543824843 462064601 795786849 303299469 976894008 347611007 929627676 460901084 555176835 352885819 737412379 599696894 769884843 457384165 960736248 91230126 197449536 211102381 317954011 508916826 610878438 783982007 815673992 217666819 725765456 108069367 818450834 362537194 794273863 144791056 997909384 466294742 551763637 704876633 710834689 120744008 348395587 699050525 955912214 907359633 955038961 142279688 299701320 755650650 939572884 345557008 467260674 294505060 584213953 549846829 925836328 625208138 944759862 865218341 898699748 474422342 757569289 455275319 507465192 699422640 716193424 348484505 602584094 902328235 981054223 615066966 988447793 200940689 845377672 117950994 346586559 408779551 711191751 850493382 863751492 425701023 739079229 539243916 609235344 872593541 943554580 391437236 973043901 146696989 169453787 224445670 323546841 348325950 496516655 926506350 957559289 498651254 954232496 725390105 958737619 542264190 696746320 772677306 786061834 806244668 811395025 934933611 990747714 699790659 809561617 408585951 939075054 944644848 979390045 249225939 917333522 668176804 801627830 573359443 585037851 442343766 990327681 752632668 871650206 45991424 569488413 962303347 979083602 751771529 983145298 914928025 997072655 239114782 812490507 376673135 561571827 629948922 753802703 993681602 996849008 920911607 935872769 103978686 986487136 530346044 675635922 675355918 744386826 433280307 578717896 494842108 967605636 638960040 696871980 675280296 910226660 640572367 931184520 981221474 990652115 876731130 944126539 689194667 880912370 705658694 992484490 343684357 936620133 76959162 715545749 203811666 269890793 548653514 696429610 577456198 872929246 339896525 743801312 676780207 993950338 903588074 996519172 39672197 774167352 41362941 359163444 731313315 838479402 951915448 984597417 829083554 907949380 379148224 397088344 524466481 721015501 504141121 733523877 383212069 652818495 676159063 790696526 821654885 867490943 577243182 809089638 630897833 942576896 753641282 756871087 98207284 640328841 879613935 969931688 906525482 993315756 692388407 982498547 707373985 821680628 858512253 920706299 411498780 620715277 667460431 901797283 14986827 801367338 541852112 742693307 273816355 536265084 931761434 973797265 883197877 964981560 358327016 800035382 256032305 418866925 701884750 789000606 466239736 726855727 193469007 497599598 79971290 390696036 985759720 990417275 57341531 532900737 327426179 532542065 731227984 936929835 895725101 936438971 925304659 938567697 810102315 999294765 330521027 430633959 665837457 988711716 590017176 748157128 219928595 548915816 135848479 242842668 99082124 507096822 543121803 823180435 57291280 666517700 737479525 988094904 658455520 916199791 747799447 773205822 976357576 995459314 266420826 361271301 786360015 834746235 450598024 612009895 80019782 412293232 598200844 981219006 770330672 853397798 9473149 390116251 465643208 840570462 62757470 248707706 219515196 498020971 607935010 974223704 596928151 614489012 666851847 695695615 733215736 851154646 810616002 978584354 914601956 947313162 623610155 676106810 273684536 906989972 611009523 939918014 182880464 646408780 46218687 804638340 918194070 926936543 882783108 976378620 565940943 969076137 95022160 419805234 214965473 579576333 344800170 978157268 773537212 841078728 718799900 720233876 173062838 475808979 624030727 856190440 425082046 891557768 689493823 887234736 122924546 534240820 623164358 706870781 592579482 722598823 797736517 832469717 804607024 852495397 12051042 701435606 271221886 280272982 569384114 578694197 554960910 907994101 628785199 695558156 926917912 940507515 12269081 890912064 57504591 251517219 4397437 51146273 937972361 959870614 854652638 864398330 265804921 910930819 31444250 917988045 815257451 890388782 669036250 745683497 934257806 959020583 765894463 910158318 291157330 742325117 167374120 897806663 470254583 672474626 888876096 986466149 57136275 462774044 219466478 523745073 708298731 743967138 52295324 998696984 820525475 874080616 128007513 586412774 618794474 715022266 621420147 997728540 848962456 908803986 494166808 764183735 319396817 461390185 765614429 899804587 889129331 971532425 529414497 699034266 995020571 998359290 957827261 967020026 370369082 595161061 489966250 990550812 883054989 979166264 686803730 963765353 453690347 695515031 141171482 377631560 78830493 217175588 304685421 339196834 530188570 978342970 831967443 833951761 460015797 825933672 995912772 997543380 46658146 116217612 770894859 886865625 345493650 814568336 239950049 833835095 256258872 800380726 633346952 756259648 734201196 771986717 500841582 831598225 575365567 761491382 766448569 806750969 209496784 907602244 592488485 716725075 164276822 245084505 366033555 597667223 51637188 636314345 892759856 981602042 101464808 631217970 972560522 991546556 119066789 498388265 683263586 975835189 887248255 941892608 455225398 786189355 884713670 892839374 3001741 272815645 967166476 976643426 468667169 763323572 100262225 226536490 329893636 793922891 953699474 955556598 237349398 692180661 195193226 306157181 90658236 455770567 949890064 992384618 819899231 979354581 827905340 893492781 177352887 849532749 296194120 498944891 3190938 243025778 574475775 886975057 992176895 998739679 897157274 981378676 491167679 870337873 474340846 688887004 957115856 998704684 839010337 922506081 177136469 366567704 405591463 646933703 610019866 730271019 2213362 847048781 296672631 852596611 633790213 842195878 23894788 803627308 269142026 789706009 458198660 876617081 29559038 197671042 468948821 992533370 511416451 651401730 151469256 831276622 735615194 798036326 109718148 348656937 649020971 761045714 409344212 511572026 804329085 938572613 805876310 822316084 349599625 426505895 342589719 712898695 628628594 863932508 103195537 612966882 369387746 554126175 745852743 942291117 29440579 158804569 794667600 876562825 885508095 896761420 997798977 999361358 282744006 703881093 317816120 401221452 714702520 771048524 265043602 381166634 611877400 952673609 465215069 514097847 330105226 741847226 605518010 626022193 584366635 619650334 194300112 947641080 52759635 890853162 249600645 893953979 374590064 454255832 278090475 715422223 2351872 877099311 856278118 940462451 605671042 745249328 646601700 800210865 703130727 835751394 78545862 897831412 575864180 829359289 867686389 919337239 59970601 528641170 83454108 475746835 113666358 608482479 462704729 688353947 394102650 888401748 646174679 742593643 416856595 734581658 983379810 995087715 625623042 990823729 122920910 521623092 787190996 850900535 938352076 964894222 995950031 998187469 8038990 106681173 146893213 584891731 902554214 990413495 796436599 926850810 493211698 813725779 671100437 895464027 614912491 753481417 548156671 695450754 147711177 994315444 689377424 866328111 162242321 990555104 387174215 888965339 682642717 763461539 703927388 820658251 916328852 956310801 976362591 994307942 63141847 921916089 837731131 867161337 272534430 892786307 864829137 884685731 724494957 735421250 856351646 994640988 56061409 111750798 225728153 482549391 259623660 707773847 609297191 893017634 385177721 773841836 379306301 728811900 784548176 918938187 792417576 856509558 758717814 883256371 706815872 787203390 383622878 701890598 554017705 999092421 847282819 848698587 779830321 851190616 577995875 852709079 79133255 306377401 440823294 450531978 907376177 940207810 10419429 129560897 364684045 737273828 395700249 607136727 364483078 621649758 914910272 937894674 356155079 831477815 6092239 54103564 195200370 696229923 219715134 311748619 938812414 940494796 299840117 361377994 42111863 228375044 866851735 890345590 182641816 881407178 567892219 947680278 559049146 836242544 619684046 806554895 517545869 533074927 729668933 921545834 623637723 776845376 570521870 742082562 372330145 799259564 338640688 503587924 201953261 507435831 880938258 909760435 840652530 881028655 700052530 928847397 266421270 706684007 912368157 925762144 671634794 784672545 389278245 724299767 29924727 950953920 704231811 810587367 73463134 178985751 358664259 732693527 694345405 843240705 411932337 876521687 970877013 984356127 245976721 502472597 99856157 421431804 166995327 996709972 178249765 226151338 830933026 956675401 323359172 435834366 695293299 942232474 228764846 411577713 888382663 947245505 354957436 746123146 698405720 908167915 199959341 551683248 47901894 638491772 519850953 813905648 646681704 880619699 820494178 859354222 828280274 859970443 130408251 398518714 989286380 992747221 688567381 786926944 804269619 903841052 489387761 871033816 606699061 850883682 661113516 666634969 549029823 809541711 483009445 874052543 231677091 307394442 253267737 696170238 158803717 556623777 658462753 826253640 96057797 452343003 796676487 973183435 616857017 743120378 563180085 792143137 649571359 746256085 234179382 397781754 63919694 391130158 64342206 334557267 164690327 940726337 828193799 943949849 970680689 981663576 178903038 888218082 826802899 886127285 47005477 190152619 895092881 898193125 774205015 806363543 26474875 651435438 330327536 671923308 625958313 932179990 538797154 929641191 371970888 575494594 12252645 660731884 902567135 960598444 456526496 639988669 390829499 433675032 753794256 877559174 128223505 910121994 356095034 415050253 381391425 786103537 330051158 644440263 902892343 941779575 494158380 853926456 726395394 731760661 359677339 546341898 795749277 816487949 894359046 935683078 539445115 651402477 767322375 959096873 312689719 935041595 569915785 653927118 128989962 444763055 460715273 652332365 430257461 976420008 962169247 981280104 302374844 842486873 908238829 950956411 508990123 711544111 361317018 861858130 581753591 795077275 854688794 884905338 369597078 852522769 518064681 815155123 332389457 991108675 445271618 677838538 251659215 970791248 599032057 779258127 872850112 949017348 629643333 801570933 586016463 861203538 369056973 940832659 49044925 847762580 160862076 789688182 722285898 770093402 603716968 749817339 297895007 489307720 978584834 990406085 542646885 555303991 575058688 796073112 987822399 993994991 524081536 557140975 212298926 405625976 813847098 885469943 519682116 987980236 187538045 329880297 750833378 987798317 177414641 909807396 382709919 728044495 429377545 618107991 769994587 989428371 38644490 427052004 412118072 788468390 58147196 327372539 424055458 656539005 889200572 908357918 293194857 878422001 423801881 559896951 745935490 929543101 27459128 238044164 946471704 994878524 595594045 725832971 838451723 989217374 13964595 534691917 695522443 913785382 155023589 314124894 972018203 988519877 24155495 257603261 719937835 808686620 213804034 507460139 93276242 120372231 590846702 951849127 366489682 724560360 80806104 935384994 132388072 378438213 77094283 892909768 190917566 374362432 459903330 632622681 265953275 282232588 619246466 627051775 312563605 444761525 894889569 985568341 12591666 292560779 970810776 988002934 952916441 987286353 662658851 783201324 878584035 900649504 692107657 944228174 221044877 937897952 425485314 443823741 41801530 442587724 180455591 237586444 500538703 560151627 864092052 913227183 403709880 698493428 814959758 852943982 832461717 945246123 916887902 968725212 277929777 800654522 388520149 783169049 886040740 894999542 554893146 966463152 468924569 992271402 872842133 911070965 648302630 814620284 275864168 741728669 236329773 373305067 261643097 863404998 66728679 100551476 669621231 872025118 233386442 806966248 238362086 768911113 36678741 558110300 678446188 964268853 313755413 801590318 282089862 750586617 501122538 665358989 803349171 829187280 54548182 971288208 495598083 855276046 894515622 947187209 834001667 862416531 781389048 818740036 752327492 807593595 876869420 981593128 154407145 851815035 407132106 436440814 693207481 764902589 362562129 862966901 2056047 400739574 358686752 495838536 91264127 514347601 401390167 881553222 300666464 708379935 436835767 933653080 410070382 990429009 660972756 865487311 35723064 567620121 642016942 676435955 575090025 633756791 586823940 752296274 866100567 956571371 32361182 879263367 404254190 917769740 785302794 992777139 817463516 897401694 605553536 991469199 137196595 598942260 871511592 963551585 620647222 786159164 294669083 611140254 778296031 780478400 719048648 785378032 763649565 939020529 722473997 915616801 570655464 870160586 960691301 972291327 499688547 860134093 43947123 803007663 145249840 637783993 752452823 818579558 804260289 810580697 131258390 662335235 715078706 996825225 675957218 995592709 382870132 838287307 907048439 946070921 548919010 648903513 754022904 937460610 394788278 574158299 685819845 988489933 994912955 997990390 439158560 550450702 331642660 591371801 977058241 992528093 235440798 388647830 13108184 195516297 182130641 528769465 178427592 904788684 795431293 952698804 259247959 397913096 233481009 941338541 101576614 586809020 674838174 964547522 439648066 527762918 396261880 918244505 445846393 600759494 367069134 810813825 954474419 978052437 436434002 849412629 455390339 890114986 536058087 563873179 630810732 926614324 296145495 498727001 842806425 963778146 579620574 625162357 32354629 591464345 499170117 514295402 110853430 268153490 412632849 677354244 359035549 896507123 766325059 955988355 625382314 940988549 49977362 583754139 904054264 943093156 225442451 935743104 21049822 966681733 617969990 742104043 178800891 750136973 852513538 859776174 859638364 938410508 956829390 959866093 657816637 965220402 189159290 705533636 582755174 750833816 90054159 149385313 809961987 962520646 296630382 368995517 715887251 908624301 698668280 995348323 497113195 769886271 674320154 991291565 684544017 952778491 586758050 786045561 847926228 998526119 718704828 817443258 883592798 908695864 529607792 550409201 862453306 866986010 64233421 630281700 90652187 523039485 605977481 818716679 405915883 480609870 168980069 632325803 471522248 624143600 823716012 975719322 840537225 874520265 224871938 442064715 763891070 938629828 57970373 630517656 529687179 571748996 178631934 334432727 73885391 547447032 7423084 86612778 590057209 599638925 328421445 815418321 223710301 271562108 197986319 663120194 326033911 993851322 403881429 434676821 121681984 835480408 830921815 959498811 796762036 810135900 649938162 663422573 724837785 767546720 120767195 504000156 895731428 924265006 357582611 566365206 576195041 655144380 539251253 631167937 515274486 755242676 856959207 997863945 796546910 960046699 946631704 977995521 446591980 543369513 129479564 254784906 88374582 673827061 462582926 623556312 451626678 718437850 896855907 902038691 978765197 996876740 532403269 673617550 923985322 999369616 456733114 610594490 797812699 996836960 833382600 987761154 237784169 998758058 14327244 100787085 367093519 501165237 886715815 993981094 136371581 555388973 676137566 775724098 419240403 815476926 658513099 941203926 260522555 853182322 87445030 238659255 614790211 929969213 618674674 865577273 188832394 905455135 75010676 426274882 696571591 772575500 384263418 625115322 931637700 976818993 392641385 540999468 206196660 997588155 184531097 293088758 252790273 894701248 309743063 768723760 320137895 398956527 793538878 843281410 916361199 992559420 748848995 877839774 660364898 695981189 49848415 865720980 466460150 709768552 818865679 875948899 494058490 508035510 178631156 729065107 349098179 982370007 247899677 647193595 489775561 616850184 688796957 854537997 796968989 880016915 893915861 942620106 992970606 998437429 164704929 977091504 408018271 464891608 280145513 867716145 679106186 722535665 842967694 962437066 410925908 719835706 488233860 495912070 325402484 729606839 289853515 959186983 100946569 333942965 405386988 804581644 884381649 941709451 100245308 283777243 869342938 930734425 305333634 773503305 667456150 963791171 96337430 252902470 544532923 751731533 295643427 771371325 603194948 842960040 548514777 919101363 240580188 398526126 850219977 898181407 314819647 458532670 54757743 429237120 184017234 929963470 244226934 976262456 968651655 972355115 429424566 961277630 673398520 736941316 380166809 791800012 354573186 634917127 589747127 838513255 456519256 710151878 252294325 663128301 502918773 986436994 469233962 643735837 661814917 894118819 759565685 791419788 44143168 824642919 771788168 969856665 416642169 882170579 524893306 530206638 87351998 707766187 276751293 652744830 417906634 547197579 344562471 601479385 764291161 898315566 496895735 649964620 220848171 539954737 637964312 959743841 777676298 922360147 671334901 687558481 396490721 425723600 877538356 921326185 698186780 954083452 297434421 718643930 121971803 956689065 544492077 797843072 45842244 898262662 39820788 476278952 109936874 221516715 295399234 352196807 702481852 828720051 518754234 808741421 883677906 904768511 740336597 816689593 596126274 819990356 195845702 282394005 11544247 934221569 745208382 905472607 101678820 506316356 392276508 414022911 268511460 364568838 699665355 971035614 188799104 941516416 144438018 623099095 123136596 721183092 844251150 867244006 308860372 721478143 707374759 902951734 941845704 996603435 355606437 971215260 213006900 483449314 508499052 958483850 25033175 782827514 735009240 738314143 205961289 361657868 225933735 872304863 633762643 875157049 133376154 800346153 435055350 469741456 848332549 990262038 561437074 735485907 521922076 793651888 34819406 234720978 478300689 990640023 273824868 347116912 471830220 534899071 502085759 598776279 49966380 769842814 990709261 994787674 50287814 444296457 34371498 973880809 473169065 565742994 785690211 879112465 117126787 367070598 856045391 866096236 625305401 741869065 395573851 851777784 428198287 860916013 423974517 748756509 754162761 903404278 632835790 645902249 285564678 973177704 311503387 706890828 997692245 998437317 180311873 659705181 396517098 737542782 610648292 876619927 261623040 333686575 453407870 710593639 515529417 621763088 416605817 898787672 56402347 202211022 106024402 576214205 482541243 757277567 634286086 968783671 437028240 523418679 371584379 529931866 910897990 915096402 648409955 905870043 456195690 540702314 143682737 371248399 172210500 344078639 214071720 417123580 78867961 508585121 269071423 845810443 986318066 996686595 377205108 663986582 130592367 658802513 521927043 522292631 920129676 998056565 751054570 860760432 718308587 908179690 623742052 841293803 688784537 827876728 509313589 978691902 749876446 821388940 614712296 920353707 488430376 566555923 608315473 648417411 370723766 976068065 85883729 241723412 421703079 574603009 450345709 709700344 717029654 908665285 561159586 950354916 126726144 794592042 154579115 469972929 145032390 678942574 857493944 986750505 884721177 949860746 598570713 693411560 867706306 931853737 426759886 613222739 592519034 891470395 249255284 885054494 508399443 988352079 482101919 773627266 768224915 944465236 510157591 871357172 175224296 824890277 814186493 864619452 320297012 960438059 452131258 822958709 161585350 422236326 487071008 834576173 989572865 998744740 199988021 942168472 168440250 312190688 394008316 693106572 922887320 982738409 807004930 948591312 910002187 925033664 281987245 388038469 363728832 665714028 583830696 914559272 696784416 889649142 482986406 520882489 210772058 294319643 123938233 604830816 825579574 848549816 386682623 551490701 10031982 883034689 660109936 752127756 377080708 385642707 149011347 990442337 83233031 331317197 192528376 234561538 191150520 917310306 953005239 954765192 462717436 751387995 702131834 825276289 729863315 994206902 5323959 770583921 571314799 779747455 504502746 975444131 143689010 522560894 538584107 657430193 187027971 675241218 896444076 905857243 135698347 591558476 352261029 801926220 987546734 992463414 417371932 769002145 326463893 619798282 932471928 996135065 675920859 759151131 127491913 693642398 750262505 857319899 184827960 326454957 202718742 424979501 151198069 566647595 284048902 681538174 829808732 991239421 186897653 510413193 578765499 964643348 200903071 696599596 916281678 946295043 28167961 416776397 594197236 706104161 959799540 987710782 859791705 906509072 471937819 858681475 149315654 845508811 97299332 460933232 863967950 893256519 732471069 898470755 247104148 253884435 614181814 752459279 980013585 986726954 434456190 511786469 723209331 953824821 259881357 899758142 875130415 942132664 194669005 574285862 719077221 964886390 101971200 160385211 696988976 775510291 637142201 804083970 367045340 431300394 437209813 556613145 227824852 459554233 98802090 192129340 539117977 749089683 932156603 994982394 321999211 519434589 717197262 949908812 519659307 627089463 996772142 998965882 378034293 390897317 452731197 649908456 769596712 897020456 301899393 496621511 478461144 914180716 89647700 865783683 638383274 749662166 759290705 903625985 769064649 860916577 771133836 975088794 108891205 674620629 457156844 738796644 636836370 940260282 169772739 292903891 917358822 987522164 11155977 31757703 179054965 925257323 611794077 788739775 95282674 594804736 74119980 308155551 572027151 982720379 883732979 988338244 659512699 698789649 713209527 853502390 500987536 614201489 559031141 825040909 331490453 496266876 435667578 843806240 302787459 579200989 981749544 993761116 361825296 680750636 234862989 362206193 180780276 328775407 280416321 649863327 173070578 991336671 830850817 928197253 721799472 914983293 452862399 917990940 870678744 904027077 611280080 919380058 146331935 549536826 893162637 896077140 179951817 861878276 258688202 357575196 895273336 974465613 67124866 265047022 186899571 654418576 281093214 818249564 722188751 898651949 596138793 856695358 501972552 972722735 463859674 988498755 832300613 928216745 7040310 572902505 491470134 615046642 831895273 840131761 274443992 943808455 879097014 992331019 23398281 524518577 569760568 960895271 149432466 783313149 520198673 564317328 882387621 914511933 398786631 415527931 930646737 957927804 381894157 687942797 752935443 981020731 705060671 750361363 7564802 336500851 523550202 661783986 739655061 879596417 382877799 561241771 197755397 649902224 986297544 997606624 654504572 900728356 432089562 671861649 431225119 985087072 342203395 771387036 67371127 377436919 926312124 984806212 283283228 718457131 3092954 352530872 961550011 998538940 966801787 972737623 294011865 561741410 984484802 996820635 515955595 731634228 53412260 696201665 120466323 565958042 547268853 968143765 512874605 934014170 450791270 726745071 280880687 931963119 877666242 951696271 341992766 396913105 218297789 527508836 384870886 626673084 525835366 988420930 238258414 752088141 492131066 787175425 97364438 170887945 79286468 732247632 1583867 506118520 69966352 373887633 386589975 717082908 674695948 817280634 189309422 877867562 922190233 979524745 68029787 416009773 423329777 748282696 199440372 555644295 40488869 672321939 819703371 856699877 764269170 965490399 480340142 963438770 435931607 806865363 668182227 801296355 404137014 710476587 728827321 961537553 216131825 697337649 62864981 581898971 419092349 747422963 910402300 951462497 963261029 987390754 248300672 294792432 46498462 391643830 340821335 473021478 522435917 711231133 470945692 626794769 590109972 847549105 155413364 540002863 778626571 949406573 97269679 564198190 775747167 894673378 955627368 969297921 655883311 809284546 86815382 717437029 169218421 831879564 175554062 544418112 399371212 721072784 718587972 940081424 35009711 75710186 484685567 569345134 418810159 945450162 229563794 955605331 946484940 980804322 437172630 574655337 245170661 824874202 950078725 989125752 811542925 813953623 911527209 911639670 401477433 936679794 66800799 406624079 769457308 856767408 703048436 776237351 579888343 852765398 19597684 509349366 930290624 970122304 850355257 931993352 238499697 610462341 893680702 935683927 586164548 627362083 161159868 678646579 153912281 214149251 904695758 941645926 416848379 741405575 624642099 931799095 328547208 770721171 708621245 816853146 560292183 830764175 171554976 250503854 750096136 795164394 35045008 140081953 825406874 991722472 610663693 907792229 835602674 854693049 162224158 563648673 355602546 384016726 472226801 870501214 973043876 999082403 234592438 742500625 489390505 631587452 776871376 834745470 410132125 859007409 96290624 591504827 238755111 944947666 166858766 913758947 208871676 716946036 827751885 894957880 449318377 984001988 906547600 947120327 602539265 749174029 634112109 826328267 179575080 553051455 369683756 824775143 54582438 85032098 350940112 945947662 137258003 464079362 651846897 833858507 372433688 734459198 673533242 952966119 500340411 863974043 340112135 973783084 866031317 867317111 425505343 986341268 411938533 577669502 144328857 649396683 123490574 609966694 520481212 533849996 333467073 435001116 862626711 891351001 649891016 995424141 972380823 985567749 153981033 349995104 266449491 797698073 503312352 598032940 578385529 980789043 602614261 616484982 396718706 521516901 899662886 918052497 683858812 732914463 913669032 921392661 283504809 729638202 869761232 883527709 215223099 963967447 70271627 242741872 525146326 635067522 580157153 837519587 499681116 891843216 504107961 838450379 686177762 878817206 404554570 906303793 628738935 770426143 427970291 557533017 734095985 990772919 165102625 750781080 3711743 49753023 101841583 232142858 501438887 817430941 134631357 843911114 748562973 875041297 422000181 915618634 683783296 831226653 781045367 933421776 388299874 787991762 526338354 755567771 1483176 688015320 221438684 842885124 37174423 973951615 671592117 747871390 437694435 859553054 623002366 667947004 585857019 660361519 588752784 710773285 158041880 184562809 934383514 955435376 134824183 551168887 953924130 956900621 116066384 672370024 853326837 875962292 593059818 932318292 409260358 831196245 929243916 971414353 726723232 813816306 104846788 278366330 943832361 951024338 306503643 854648224 369777911 595500200 667725727 935922445 606800998 776040435 370150968 455128564 956230757 985972319 27562402 593920272 781609438 864750528 264795111 357370392 347878001 849448123 256744397 617870258 91207557 182613224 167062026 727987783 846097640 889090431 31299310 36430593 366888830 843056261 423706891 582039257 58920399 484058661 771261460 914480094 656404934 777471418 347169879 452731201 121936951 569655605 819712786 973771504 409376889 690452299 82555300 371863796 375600489 516727611 784782953 970108511 353775524 980814100 747518945 826061530 699717240 736754620 481437315 491814170 227656661 543466217 10096941 780795957 920336752 976707271 675172692 838442947 710000073 850599173 647358017 759769526 816346824 855756183 539169999 606022265 481137455 939857642 856559728 904987315 776560493 836789881 422002170 771568259 431189645 543128219 82266255 801639936 912634418 935759306 74789744 317797238 215423839 222033459 749440932 772935964 261366798 525218426 252451386 902426302 733112684 799226165 1437262 161599522 494780818 666038074 68404994 344568491 278081744 390675267 86566707 865908136 12692262 370168161 995624829 996676071 84382814 502846065 153878779 689655258 695314273 713833393 390346595 437081875 793637094 985196289 746713543 848096206 586603252 935898386 880951884 882213052 90197750 300497936 153918405 498295661 921330613 949448415 600186418 704594493 93992843 853822816 808142834 822196665 970102819 984356763 446877345 737877784 592484238 723653391 665033385 865006989 801876249 834951189 74283269 142139286 613285925 743116196 119661603 561686054 805000413 817821347 492529355 769973650 275538153 463875863 934979091 987026526 628337764 894251594 866714042 935600044 815892748 932561450 856680302 950286388 421370754 879562805 825143630 831153875 855092524 943190180 484869111 951564036 580546095 813519802 517310907 730860634 456682205 521223005 90391931 970737437 345408939 521187627 288747377 909003088 578612698 914066739 764427461 925220106 895288706 995352505 591867052 599401252 687963084 728121223 546569147 748597405 166554905 300508553 594719782 626691103 808671250 966756801 77882333 416317830 412036557 430266039 974261434 997678579 284588494 870357021 54656337 247447513 685248459 689762506 958276539 958780289 841093669 986455968 349252948 900246590 112282054 191396766 569922522 774437509 852018350 928621060 745893735 900575452 872574361 917258094 660883195 740166125 956649084 971209021 305987283 710412115 602113415 976882134 13412096 537692908 277259317 875371617 909365302 968070048 51282461 761759210 655120593 701914859 317904432 462741299 412017032 448467394 615405517 697368319 423846426 808462020 452332358 599802729 144989384 429612907 963494215 991948016 929932336 965601278 693121880 890803126 705595202 925888797 854641716 952427261 957440798 998454337 976106279 991688377 49633727 973254733 184238782 849517198 142705382 517437815 656280425 724223694 97352574 906037913 636809898 803144571 277364386 835894675 522625332 577021421 947298774 964553291 551699745 573670333 238113639 476969903 193277456 791070245 722612697 936280492 701718421 873414326 820012317 850054963 40325771 698594474 312014568 565438720 487869034 499959411 259593506 597560628 317143955 896036416 159108101 410621737 126010743 448627110 442267120 786705165 993733619 996816745 989090928 992625133 823037098 894641611 812919011 841680387 934079598 948133489 709264146 781352124 560955177 697838367 159147731 584859707 524232333 743609839 780103510 831313269 665811163 697526174 964379510 992794367 974761160 997564533 313076762 946132081 685144120 940278119 783150027 807353262 768029878 821891830 586118525 629985117 802448596 891974867 196080042 367717236 623853692 755791514 122684437 602825867 634869208 778398189 260335428 608069953 946113157 972710148 204222743 883346253 630478038 699486166 102315104 927309430 891419206 979283102 54891107 242860536 124371906 451404194 727575039 989904306 792219104 933231458 484391029 485508650 283429227 496555015 142086722 411707654 167111668 540488313 598453648 777619635 77286337 826193124 209863727 605759938 827922543 933953298 385536934 851665034 421944152 804152174 987234542 990007381 50395732 295127968 928210213 987037145 623099785 665532951 629418056 704256317 499125909 922808089 932316642 956219170 871627659 935058715 251242730 912305832 200431026 841978008 292124843 840512373 135712191 232331026 963193893 963831848 126073663 515053068 191443342 880810787 509637270 617445543 646987111 887348517 938932417 983123298 501988850 953149997 143658127 950889198 950774606 984034020 725339031 824683325 120102136 643644154 399271830 940779559 582547258 725819639 32067710 40520414 922473553 961191086 45155026 864597929 655590862 814081671 568766602 925460261 3279859 422752197 557355369 749732368 10990947 267962610 784281639 947703480 50712170 319545882 901117536 988003197 511145292 567242255 126816361 796521177 618162370 771772265 370541258 586561093 742749664 882799418 159774280 524291637 841473829 999006838 487703933 665470588 232781684 767229889 218821146 746894713 772028401 779108376 560636604 702852520 995644452 996321836 838785313 903457591 939563524 976823374 562478818 984559139 925229574 985603035 854892496 950720488 828959160 989500372 101153877 363425107 688637069 867018020 677452648 870512200 894873286 969419527 302375255 776458543 6864418 974690696 127483198 234339174 676301188 704026229 46102514 369844744 869134509 982743725 781418423 884888359 676164428 831250962 199926969 677304405 817102363 936849827 625533079 801768176 563547619 594817567 531410934 698265224 147738958 813345136 805980666 954011112 324000121 652595240 443163862 937306014 659158822 932649507 418988079 655989021 863969390 887533831 211362571 572009064 43453248 949362823 890154210 958467273 167060042 253189805 962143115 976699020 148756647 337623005 703555477 908467892 441208628 856163492 755276985 804570132 59204511 689589168 276327706 825656276 725805899 776767253 108901799 279617344 830696905 889127620 149375288 216529967 888205843 892235171 351301737 756370065 951964326 987336976 210831669 627448445 495895741 644574322 856948425 978726801 220381745 257561969 186688773 356599562 170405556 615504584 188548519 606180386 106375565 438423002 75987212 978726266 835312514 991490958 359957502 461501789 311239333 609406681 790668255 814328540 425542751 875026251 559585792 851675591 937652366 962773260 569489149 792614408 571759029 876011332 338579690 521892268 855095698 927136120 383226844 649492265 105279525 281273452 441472452 612063090 400782318 619781563 66961996 448238648 802915774 810832416 900864543 983711623 298900230 958925644 507161756 689692011 760170755 993454357 512490403 753390446 495194222 564018807 76662856 159983255 495887653 549640823 700441886 774852215 740246916 824898061 239230849 305514712 16535561 146426437 14387045 777435400 844744678 998391828 500298738 912161717 206606305 499775979 979829368 985085100 668033581 755163576 927269556 963350056 83286971 616641137 500328470 827691730 608732057 952168854 641919621 730111038 991506541 998243962 617059429 803481473 92695723 620055156 279438863 694094958 876373440 947987810 662209277 944904565 784237662 922403976 411938559 928379308 559523017 977835944 168670415 396019287 648733393 676656293 865343204 988417313 924538453 970537114 826511837 961461538 57355367 460735490 673037702 918356744 431311836 900418803 256130321 257208998 544454900 915065935 9114494 836083989 846280766 978569687 410679309 861091879 888778485 908119694 164082845 435868490 91182133 489327061 118996616 226684730 519300124 583835993 259614296 711885517 554661023 865595411 31603314 72458229 224548383 248277501 163210215 687775998 643432442 767736400 245939086 398733474 427667073 836733136 684629016 879131670 208105061 900587397 621860750 710827131 412215847 774880127 445183455 948275633 297910513 918448344 199621646 998594331 704819958 984865011 432036766 592645945 896443080 986305217 591484026 704405173 349220873 460191977 816984995 861714404 111479222 615985574 747230219 846363011 721612437 837911376 504452727 761894879 559144344 807628290 951579535 999138198 2816113 210653764 392133350 522642894 715666258 955948779 635657697 998635015 261185839 727081945 598479831 766762082 355517081 384272746 878304006 976348762 376994898 531795089 25395638 640645596 742868749 909439213 414849630 882367306 153751412 283819511 534978410 905652116 317070595 694111969 670443087 825455438 525055354 891981353 815882552 990989069 244059168 878071778 62016713 801454863 316732443 853837833 887312496 944156573 4371630 93510773 739822882 818858991 635198588 678178131 304330965 874279776 130150356 719636506 951380693 967201480 821269433 919506878 181310127 957512829 959370213 966426197 329236953 627916213 979113982 997321783 337323612 587395729 166130298 462442667 796995335 926638593 601367291 904965803 596659543 627335928 349937103 499332918 214541711 621771342 945179980 993448040 617632146 695273806 888097562 958522096 483959340 924903411 373738766 470132695 86568625 500470901 748775945 829630173 467024515 886578970 961097037 979608581 712344164 978996721 401657879 910462699 527240288 744762811 614590310 914715948 394331673 651963216 39665746 147169772 914750166 941794561 867926782 869680657 997843895 998494865 129074902 380914500 519623427 795234300 813441718 967853842 126789519 345399870 684930535 713035007 322333662 753456926 769618020 789357846 784840368 924699282 237031672 447716071 24823095 190821049 574459490 818220777 323028877 806123852 48638107 842988548 227391513 682198494 524905494 628055307 87093056 235780198 286695148 824157571 70844990 702162034 283695255 457217877 889843582 906770702 301154333 805977728 25721323 860087328 787586283 852576675 988926867 989669034 356582967 791002168 510608857 741756436 505272265 655641316 251478021 750562509 672019312 708447707 625012923 647911180 216405043 493179646 56667570 822677332 252967644 687801270 547462488 953734992 644697576 706517737 964226037 994333767 68011003 747760831 310511575 826568084 935473846 984584026 128910932 855655826 15894982 785074502 827524790 977315276 595119287 686361938 944902363 990359067 896485597 929474842 985674140 987443970 252221250 930985710 165496471 721027520 729644948 960808323 130465344 752937707 550748216 573581762 744034106 923267100 576991648 996211189 179392605 806397273 955137341 975181744 754225861 939121636 250204979 414281765 525113994 837376641 961486164 997478404 913273554 922203644 70048842 162009787 378909874 747252502 832146900 944505175 51094340 589913998 964876976 981846272 624680175 835216669 603543742 790588155 496187542 980498348 707177858 788031850 553906816 891452422 783337302 809788346 738849889 869564497 466865897 978055901 961963370 990550871 238556076 917816881 859721708 942485609 700049101 708443897 182920564 909483798 151932093 518876764 540504968 579588918 585304236 727242712 307982753 550793692 214133193 255889803 871236420 876707801 485277135 772206061 428179539 747128792 745338284 996493559 842736641 892262775 77014158 397386818 595898498 782649878 805063274 999085170 388758078 708678437 910061000 966557934 886175316 965692734 964151108 988790661 385579517 766026520 945783720 978269404 45832156 967257538 786987725 877080953 174438641 456775283 809637102 912320897 487576926 671738694 539599480 864787940 218056261 734152744 955646876 963502454 914500065 983827999 871951654 941882150 204864223 556799413 98145541 499738399 239608665 335424754 571437871 832054821 588909250 879772829 404052173 662186365 973473547 994435342 521745502 710262418 814025228 885596652 454322608 942997667 455824625 876317804 890515527 970927874 356116815 837926812 682496567 893827132 206051182 517727658 966315470 994072004 181582071 969560573 422614578 899578271 689129661 753274013 350047990 979650263 568121847 894728453 64123809 797571439 394270165 639259610 216309973 479871582 10054168 258151243 99249324 392964705 553459456 785520034 767406848 813928406 152242905 206956695 444378626 595866081 482561926 639161990 503702401 818050291 713523525 883716596 186695227 596708034 320784576 818595946 859824683 981350823 750797398 919781418 690474353 981423944 973034683 990444328 527073878 566671538 357374873 361822334 653558678 932204093 100087421 624896841 635127316 996581984 497882919 599835626 640381768 705371515 401145083 470381047 483324941 691815485 481819907 978841022 589053818 793962856 651888137 845184541 793643984 935463761 367917408 781881811 723695492 947650343 421377323 640978456 369305132 865788677 982551694 988494611 608042864 931952139 340665885 859009135 742738563 828466458 740863924 983367666 304839745 722358732 403551340 781280350 18302013 338488986 108786253 545609547 616446007 734064941 16681193 437476677 564195852 699764480 723628630 819081801 122174803 909335487 961150466 965224648 525005301 728735382 882659432 920317595 952164899 963907129 128832150 670789658 289041032 851290315 580282683 697205754 411950780 916584954 184408143 752818912 289366115 689667895 594560720 641373576 204113892 959287211 212528472 934904838 233853346 964358026 175026053 753892190 473889446 714979476 994593713 996790909 783768378 824109713 850675026 874337844 216059742 450991942 882869871 894864658 442513292 552898464 986744867 988578793 673665379 955051665 571779856 792183567 123112313 975546521 700940507 755649668 784400939 844411480 496886020 531525903 986875760 990922815 942634173 970206343 220978887 542999052 226564683 551665257 740077766 797642333 349037742 484197196 3020102 642594117 844403659 990512926 618127810 899203180 909522836 949381538 547595151 704889362 59332509 776356079 374401337 673086249 964669476 992694756 143673246 971287987 891088623 930513874 153848590 721939388 809999474 931710905 240143527 273053992 379217754 649582120 612227530 674341742 891878865 945691998 738106831 985032494 214738942 796439186 639734544 669460873 541735323 577803075 298748526 655077540 930550185 953531091 500944961 558847637 291188704 310881066 951392801 952615691 389397681 641807582 904543984 949208088 622356908 788626468 776279458 849944861 506803965 804012713 511441874 658042127 785125995 929624833 336585193 367015923 683866987 917826787 880216629 964094366 124193646 589749356 811620531 912174534 21158406 951857202 662206626 842257671 127006751 662012016 650210312 710051606 558023544 760514123 737685649 921369662 759098813 767802383 226670633 857978515 103703243 601731925 518281914 599805037 570088560 769991363 822996141 871130249 307296469 631048272 329348184 423870020 65138049 74761086 728881892 969389752 369727262 384637015 567743774 886511382 730596334 763462830 974412702 976027539 931563790 958156249 980677738 992004405 394841580 425679241 445098892 509671637 263969655 982093492 987407953 988532020 821339126 852743304 654948110 989097841 775272543 965446261 954920760 988076637 671351153 904139204 453006703 571260806 766235587 818491316 886134713 930852818 443751907 866891617 864093653 884201756 331122163 847375957 232743968 517578130 166705760 736241453 347752738 965367149 713783417 849625857 803778686 927069049 855074727 892228625 937350592 947134846 375123230 894074690 250259465 612927643 724706650 881389564 741296257 827667400 595288142 793286102 418495832 479009375 125837925 151504883 467330139 700957589 820716793 979553953 497855477 895778024 756375254 856793759 190289887 801767652 162369338 505105379 457784762 806891917 869590913 963849988 452357307 924364575 185246353 611125699 277293248 617804935 493292456 968344744 950741264 984043098 434888759 692574577 760724326 946464604 95189746 420150034 52510778 462310592 188050491 468335290 239178611 732474386 858378830 995535264 651546749 814454956 895685318 958832841 575581213 813421863 340475584 719013234 411274051 805260686 908503693 965875049 723484135 889681164 4545630 639464195 733032243 869127295 474330466 705613539 83777692 949246755 327034807 994146386 358000607 685135619 375018169 470813853 51014477 875955718 564012730 601508987 567078224 934717292 123877231 388072915 442515673 770161659 961405044 971851907 471208564 957035298 365718041 771542072 777910282 942300498 616659418 779218445 980863669 984859897 855631368 880288232 89148532 992378819 965990226 986988491 673149376 680050182 988465988 990218649 319181457 826960313 521535228 940127926 129558620 274620687 251947712 838588532 61741489 502430347 675123444 688303247 301740153 519018936 514695968 733160176 759425151 924032279 28662478 241127494 880126878 901866507 525699460 588540651 937403112 991206557 862549745 873148856 694742625 862582992 725321355 802281998 433214808 570725853 343749622 350856924 120374338 574791698 643926809 845091750 789834149 978509685 503313738 748726410 820386077 953019170 48309882 222811372 330392250 541111350 620181127 923293399 391375776 570615183 675843405 731161433 18185493 68634050 677327664 974371258 190327093 583662968 912366894 987030598 270049564 322779729 179937651 600760342 784633056 924237046 617117160 848719865 188310160 909435143 73094065 496189948 927737459 963583584 283426838 985342129 592319468 821730465 608933752 988298965 717422824 725031038 336943989 379916691 987231197 989122439 329909876 715999866 887988453 903817125 998084681 999206800 623034291 663867595 668606799 738338083 224218954 576510773 295646515 789812318 256584559 916097407 883509746 910205511 930225760 981599019 117552757 121053059 847401030 979127084 368387257 662067256 609567192 776411050 456360603 526404376 658848166 801195859 64730925 803620138 800613083 957334707 602322981 668630002 826040612 854584205 491150436 977508786 243157242 308995727 290736656 447727535 829750883 836062887 843294052 900202107 513734666 809721733 117376868 138819119 345308852 479591858 977404888 982022696 134808029 725884216 707956538 930384777 385153841 746110337 913559156 997818099 403941835 535411889 644060192 931575881 352705006 423993935 810517871 924574806 988543998 994701880 66298096 852612369 257759915 620273954 292288345 696140773 531460068 963058158 93042687 138424025 494981825 860312784 155364070 658831022 654956357 800261839 352529368 864072351 771929172 812498475 633815719 834272966 501989633 900888019 820125007 916884428 884419561 916111541 469618782 942632286 932780646 934823542 940617088 972511013 771500005 979529535 595212621 879920687 125438047 407777888 764344420 879119452 634848206 637177094 705980266 771336262 791340756 936044981 186551450 308142088 452602211 603541603 539599612 819117106 266170550 668793905 714059616 763840264 236218774 549274449 899033704 916179086 559454841 615472337 872899323 980133452 101484436 634830878 706730580 793413506 598608859 936627275 106768395 340730927 964394825 977590092 351482921 628485283 156775409 805470967 393688952 848120256 585093754 599486134 796237818 912734629 490687515 972506294 325513375 840120377 392419610 493407314 674244577 993404954 102423744 304816313 95024991 671961681 227766726 505666908 36556292 263773481 657348129 852991018 154669240 694078159 618079893 643437578 732667763 953776485 176818280 449619490 103943549 800068564 60414824 644903987 205629461 544973506 646799732 878594185 199464552 545735713 809675692 867612308 850670098 903066153 246370230 706164483 99685594 690061452 808786301 961086486 64050633 74528273 441916116 709706821 428641443 994321643 812170568 813238517 553862944 951547222 431824645 672600906 147915002 488478261 479202236 852184562 52591567 128544440 847874365 975348217 617385008 864559014 410447157 545754529 628884253 761644422 574280205 996588459 958919925 994453950 141538449 447985271 543824000 573493670 673889337 755722464 12638962 35328075 928595210 935277627 838247931 999179239 212814095 541426117 59326539 899736612 522026886 590306300 226198497 572151647 803643728 867080886 846608079 947011013 266621734 448261202 857294408 992043773 443831939 747757493 246924838 575969735 127263776 976145906 131032880 504205995 500510191 816289179 212056812 612079864 285897493 455917868 114361935 709239118 169300088 206500280 938569133 994207024 83180198 613873064 264579940 885109407 586974535 739893320 906615821 991169471 341200848 614989083 462014998 520051472 618392675 814530501 736834130 833455618 957082312 970432178 712800900 784369841 32144592 258233699 696064105 914835043 16109348 677630378 159938190 626530704 875249587 889858205 831874038 941462490 105107701 512540824 630530612 792834937 923487417 960608271 211572654 368545868 630570734 924083772 265562656 925872623 339277767 495439765 566061073 640907913 802752507 893892330 38390479 590311944 208643315 630928242 596844057 945338306 47941330 701139411 874008834 879386547 523658464 723553368 599493193 769099857 663015505 697076778 548189094 973736140 462738228 902056306 961024869 995087261 194541058 799663233 384726266 550982371 534918021 546367025 426250906 713282859 23187796 338367721 322610886 890142831 845425330 878594054 282876392 347969964 355289457 519229682 449545145 770682747 691946622 848257570 752537295 874361401 648057262 849265035 412866415 757334212 893274832 975541697 305911908 977045465 877424183 951883484 608897134 965785732 530644725 623188498 477503789 669750668 547472926 880525565 17402622 22393353 17076903 335502482 449272181 804128636 890171412 922530780 259429034 854979714 252857414 904992467 639782270 744725784 412614197 968606784 98531331 337662456 186039585 411050902 319961155 463029031 286642764 311422016 462864152 592315878 256447480 761541808 405643756 906282046 554283471 863004466 937738901 993788575 696319884 887547363 340635758 969607436 363538080 459161507 910853510 976013715 498685473 722108571 718195852 916214733 145786738 433224208 321315010 509104957 873661349 914914937 880801650 905818305 739024915 761374165 351260074 434991176 654708161 829429013 158015665 199285630 334757545 358170760 846935842 927473510 758516973 826746393 126387972 862186548 363577408 995712717 945766690 984861670 252379197 474520590 639945229 917327976 676126530 900977158 637155733 834637351 650778736 922529164 896211221 899579888 836211095 917967876 743991461 969392771 519489259 891831726 591802125 886093939 467075439 652334260 854175921 993988589 316818403 402810119 302936500 729187289 314924636 537325493 868198065 996415466 407424553 982018822 834993828 910613829 619092822 893749405 415004173 965890120 513901087 977673054 206709400 657053315 280867340 933958486 640106698 822543210 461925593 882272159 486688644 597979851 92575349 293954119 412729411 772552198 272189859 936049559 813404209 960104754 942670850 993043697 10550498 778814523 820280642 912210057 467428511 992618028 275597282 672721949 684683579 816497623 795362499 840624158 60257381 314409188 324233978 652987139 264663542 622117201 903835619 981760609 957473881 960269878 77731968 985285303 416395938 456829450 332858642 818906309 650045606 871986795 388162827 405740429 704848221 882147806 785559322 992115475 546793338 557986297 429364387 937228742 302055399 958902473 420449930 791995712 488890937 666963620 783514071 831095017 847291449 905269787 758608507 958214024 264930231 999325768 201399061 242789193 783083051 785154046 308403860 951944968 22002533 737492466 370417383 671372323 198513508 573774194 78357259 366523392 450348655 542609149 325401608 437275008 509118577 751444067 994011169 994318197 562949402 888353223 731790085 736507811 202660179 889819470 40384990 409193357 386481516 687528531 492847247 675630255 296290960 759236385 482207001 724899632 541371323 779282433 868575001 915468050 465926371 710799477 567973143 721735580 264595839 761691633 624647141 932190453 943899303 967943017 432272244 959908905 765945161 838675190 804424406 807376694 799999019 825575510 120105456 842182337 843446776 948808041 33135543 593387841 249913107 797691326 815988413 966766309 695758224 938298192 256986917 512537977 540144442 998352911 745028903 774549117 923171539 987798813 138705796 900077504 19609444 83134937 327912130 731878176 817661758 989405323 587596414 929758526 208265737 362343204 861209222 958191438 632767429 974705465 478734813 493211642 968456235 970815372 436815194 604798654 442096867 831400202 214121281 442820616 647891286 846506317 583382007 804094939 513121460 792584148 274887702 683266512 485128398 911350075 749252120 955698633 789687976 898866953 96395938 758519779 761819048 767954629 545108628 830506484 218538416 929174248 443302183 609920014 432978640 904125030 453279963 833090373 824481230 850468646 941481434 950289931 414131061 908202316 529032403 907528727 216333542 331209521 161982124 243661443 59287920 751348691 296174422 324998679 395414538 535381121 581359693 895094299 591609512 786848389 709929474 914607283 299920895 817552507 562896972 677726807 161459952 752692390 843657046 945980334 385900459 710285269 565586685 845866673 621211661 874936562 145680022 916797318 30517897 277286625 305177070 679640655 12667086 576146798 227864419 280073927 733631846 908732043 230651137 547236044 137214425 241593144 392089586 942866547 678678593 742736165 508444472 639058106 447493709 626322317 332132368 668769683 141130040 256125246 434003157 876077489 985839918 986268613 285264749 671006442 640646130 646568371 135119086 728615348 917718992 918128538 705155592 738255149 682079772 806600566 840805497 842816846 364982996 994668287 417852985 762292923 560281050 701015385 898627835 958874520 699522403 931883915 623487883 769541136 962647724 996819696 22089425 57383170 116564964 932940274 762637852 952388149 981547448 984637070 849825556 973489904 37574118 354954266 973544223 987541575 530293918 827447227 202144522 385733551 813673051 941165039 467850248 771235342 80193199 939171466 312305830 726029799 623773014 659482251 112927318 336630598 910703851 934975010 647692791 754717999 687593059 800290570 473357338 651897027 623025546 797213630 474788531 965456454 430169727 936575610 370941053 640049927 310919422 636013991 252231570 877591321 338323701 480497479 325572000 532898131 774984306 847019829 51443268 100343863 729181811 772796624 713580364 939520854 746126553 948618598 523282808 683848384 982939408 988882949 315867521 690252909 289752159 928022965 431468615 670853538 347497300 543782661 87907356 722694492 168258254 781816268 697875842 817414076 228229633 755158308 587070800 881539154 379896284 633681475 643448008 802790373 262132338 754007476 498459735 585976633 403555821 573874847 136700932 699046054 142734903 925557303 833663461 935295817 48456374 893525703 386665476 759524494 859075324 939001586 907171080 951890054 471533132 575431264 182201295 348052302 289480266 977464359 841732807 908550200 209712050 815931987 485882293 506244931 247502155 562936243 371685652 622648663 333715269 612638916 635219859 639959117 421520780 535934076 524609249 815208856 947993983 987146323 140745560 509694072 438042100 685251009 423843341 538666003 15881047 467017766 331193305 533636172 281168591 281592222 122219537 683095699 637178463 674659700 19823628 152338525 950089896 967133353 873499608 901140135 215944655 814553119 659080535 813747113 62589054 523412528 62768632 242409517 344076597 689789285 59797280 834441995 101430112 867324364 20210785 601563099 240967890 292481131 868116271 977992575 415943080 834152651 569761174 864557076 413980733 482139126 392068290 661127831 929755561 962976143 523633969 744530711 427607112 982466968 568225963 938983833 358891956 382586609 135264312 324764401 812433189 838672627 626946122 903183589 625604808 959586851 255447714 767265582 806212256 814344532 462491169 651855045 247322148 317994022 273181622 342518427 151317042 631410962 820078242 976192872 687182620 954265559 620624730 678167809 987242329 998717162 874183369 989932212 655331845 972257786 567103126 765764616 157458420 477001812 516362382 628980622 736327915 836033437 661456439 746110765 911323052 951465705 317236187 695165047 821053578 866880716 181879063 707091547 604827362 853150260 505558446 738227547 682359894 774850152 861236811 987714881 124294074 428025915 659133338 824207706 609951311 864026748 394817165 727724458 133912846 574503062 906392329 967456627 575684986 686355535 427046607 749696404 684670005 865903338 777371092 959195028 898724652 957270466 526748959 683603705 952455578 957419411 457689321 556385939 76174530 735366880 434575368 549796279 689413440 695685482 39379529 151621462 588353777 784683237 21181457 929266111 988194980 992806786 257749445 967901165 968575855 994769001 448424439 979769106 720240184 868592406 725628677 938562590 733087368 742615751 760705260 804051995 962135739 986845153 437959556 532078025 902165449 978140262 979517475 982873161 113386915 993635380 183817995 977670159 598620603 771901168 972668862 978305944 940685409 961859372 169644307 787525298 77359211 481952081 280804643 631670149 397869217 715297003 748242066 923810787 145427130 935759009 776296239 862927209 813137018 977906026 973564265 997390906 916139158 991571402 31198616 624520499 202065366 457326871 977183709 987131214 232550037 398690636 800035711 876537464 815396066 912313891 655517488 805962457 794079176 886367615 445509931 958739564 880254393 993097466 717125416 737982338 652998855 762847196 258935205 316562949 950658927 958025093 903317440 976385390 447380480 861584889 220819993 518363755 221243221 871291751 127458234 749227165 217612347 782479633 482995714 825850610 61468678 374297814 464082979 596334156 295660879 869277873 441301594 487066836 579588004 981392415 299578346 776342539 756016280 900429266 435909061 559488538 851242178 963101705 96070788 247936090 605251733 944419171 63617011 882778793 527860034 899488979 299589911 313258479 580295643 719464748 167252039 568204560 462833981 775916095 22422629 499401821 950882352 968265862 694618913 760366866 446303163 744208328 957330598 963946400 578238666 867304294 230679679 570050117 978690753 993580096 760150904 845081700 520892172 847846152 865303754 920613098 935971273 964819006 337413592 621757771 408258385 990422910 428264756 835621213 175350329 910801241 298135677 395526607 237248862 766343594 557911329 652940598 735237253 736390894 828380253 894025556 440864515 615552432 421226329 748959160 778089610 843411734 920165980 953195901 922460892 951760423 664486576 757064100 478596678 873388172 370151853 928998256 55112672 998306010 731940299 992597644 825536890 986860982 300623202 748754104 768753002 947474707 139421191 534854807 17672085 124338499 751554416 913312890 705149714 813327400 413844414 748632288 580550225 674476356 131456012 815773231 423894847 449429351 969964881 990616381 413171638 933218701 272841341 507361437 883710822 922558071 600469533 804703974 125110216 926208634 663981436 830809813 402644712 877830192 429250491 663519659 573496143 610865189 635934114 923325641 31123327 474818009 353819883 599076481 321747629 895091647 819979272 855553562 814775599 951540199 453664249 767800138 358668346 983151166 821045667 902146620 957698974 997495074 918782274 986834464 666203104 757077509 310293731 318665318 290218590 810889904 854787383 945906076 458509488 592626901 647271886 899190483 913999347 967969112 150736062 633588683 538915414 666310131 727489969 806850068 294757333 506333813 846751730 937439637 843061674 945215470 540361448 877899634 308081628 565977386 507737819 663763122 104630177 923973652 350302661 492015028 792547048 970631450 498467452 766759282 323347205 780653659 812002842 923623948 800102981 882888522 304513601 814303054 688719547 826444862 388768276 913953962 199612024 415559242 919786077 962362938 520002988 630186835 716897677 752193061 96092935 965538766 779643523 984504789 498632113 738556383 883049367 980275202 461783998 904133695 692007479 703756639 499514741 546229625 353762389 382401770 880085466 964486466 434279883 449123579 140683353 224524632 780691014 825718152 468117529 628091646 837541854 982973628 312409567 624717874 52352439 170048988 311380456 416883077 255258570 475726591 910250308 964379483 927402958 943887937 542538688 889779547 634186557 864344624 682942517 786394602 696829137 724397381 135248172 613601618 52105690 332195470 445615594 602205486 725444482 802900936 586691117 801952771 922754662 944529844 603893586 921611292 910833730 956004766 762516742 791669272 818814082 859659171 132059651 516364998 403091554 452316893 749716051 907999996 527576663 954865462 955714533 986001038 95915758 295882237 133258162 801116122 517199336 926944120 378937197 429130254 707245705 923276936 547845840 860120295 386142008 529113114 786437118 950496646 261985348 559153123 257111762 572036384 198574849 804484447 132391723 492923044 990529606 994864480 872827348 873027567 286564071 707507167 685772218 727686642 896466365 931965263 959700663 983204844 543423731 842070114 559254969 751151842 201081532 420833058 410298482 957254962 310287150 393164930 630288300 946154589 511881565 979877307 899631555 938990159 5155914 606214342 532705478 832141866 38524977 824030986 950358814 963895106 768727069 960796280 620366850 705093524 127365846 570116867 574178069 947248076 440220151 888683294 164779779 458031617 42061920 196986043 709174994 947387502 441946948 934763994 678182435 755501085 637624676 909071480 16051938 547270912 370886780 893774576 49319041 582459419 311613592 836674678 893626538 997307484 116047652 772652448 184958290 266271189 385733563 637757446 735781802 812462873 795567878 830533470 185134803 658945413 430259551 809043326 695622542 969100889 720567660 952814495 636100426 763850995 40466547 694318023 10404110 957752938 337792451 501224156 513974998 991003290 280400510 401994036 150939312 598611915 725709608 770051495 119610567 614424930 137553866 660454793 351001865 522532993 907153721 970914380 721366186 968699513 810011360 878230288 517244552 957679386 427655644 986986825 794673655 963265092 725235198 985871591 506147444 662903455 730320132 942766675 987272979 989686598 434463045 541610584 472527591 755447728 771061687 911357224 756976286 911492606 379611592 651019348 297468842 984186146 105698501 896617607 984167537 998981292 980445009 995956806 583351702 838877895 284087273 907255054 802632954 987091805 733418263 771904583 918580043 971887104 476099980 996322273 362603994 979314746 932997542 965727882 10463345 42629046 947929843 965011712 148910226 307804413 57636945 422659587 529817033 780530230 79686238 609418238 251278753 449238761 445815694 762726689 56085405 262019074 996198293 999153474 876369715 898772861 366595909 612981671 133956758 170979524 894489818 955591001 891336891 912273794 891870025 903620761 584062721 739246240 889328375 959779056 695420215 910707704 131392810 175344570 80977833 337329329 867101342 983531823 141576176 354241914 162854646 368220743 737993862 918780992 193446144 707155695 853465467 853614015 134141252 218923129 309453409 983249655 918367038 997940679 880862476 919259364 160730693 673507495 433786737 477349653 966443179 982133889 719490452 807887640 167440570 632232362 643774239 682053285 356870099 815711936 247725064 256292914 98121882 964326260 452693160 468534056 551506291 618109427 488676200 756449009 872993330 926682208 54042742 404256212 921848460 976617205 280174996 668068472 246227241 853968632 436518516 733089739 776899192 902520539 38453616 216460787 665501435 932403991 463846181 834680766 930613172 952912092 999334047 999346401 820900234 979720217 369581648 759664378 519993406 890487272 116737800 330858639 308280028 865226314 398074449 905727036 861243889 975767136 22534722 698742661 31961462 81509193 88775717 730381069 908396110 924321239 201052208 801529943 165326164 537393282 228777378 324342430 356955871 781693852 182159091 661026878 607759982 625725228 276935981 626971707 525992692 831901035 999152691 999244295 527029376 825910749 803935095 870194327 530638953 811520390 44910895 735804862 93184001 358110368 590793618 976987592 134589038 505983083 318541370 687160133 393883095 474504455 819694015 977612485 462760933 773803690 292361059 896423197 981623386 984712765 741181846 776784820 341675016 606201812 812254434 852789155 689404147 980388178 801185669 863375129 440602627 452845054 316094267 829643998 332758351 863720125 750729320 967797350 12244254 478354260 656520489 715041513 776956432 941853059 916857992 998162187 144098678 684384062 994380594 997232256 684179233 991797748 697928498 902266065 383839398 774405735 778216826 891485670 232085359 908324405 888575944 982701695 606084916 797272621 984042104 984468587 92114020 394367207 624531271 676540157 110863678 240500495 673113052 694505057 828467906 920823733 711481543 850730848 16926144 386943855 459850480 836282784 31930547 950935491 843771419 931769453 754216320 856306159 84737033 412218719 369487254 544337457 363814557 667570274 206062846 475992677 914401107 920872738 966299079 983410816 253416529 727249226 395534390 695043098 176014233 309282245 290269411 525059827 272032590 678207663 544109875 818895091 602375764 719675591 967988197 969687688 496240947 641320770 334731332 892034944 939670206 993657088 461967303 499069935 130367131 874732155 442962691 868458546 166177562 431099985 758116633 969687756 254640571 533661893 788723100 901696134 418589887 579987452 161853604 291373106 711513470 931610917 924295372 994029823 828728927 949938468 335927605 787813115 924011859 938424427 178103163 231867780 243316778 520164308 809392687 933122226 151534792 808304014 311396802 886971206 5804716 56586314 729589070 920603430 835097529 914441872 533373418 698436454 736916695 932531717 687286980 801076758 745789490 790495452 264020148 297445929 981803401 995820943 318865694 454351299 315801929 966381189 648966617 791387538 239904257 901256503 560918864 601460220 586045208 919336219 7763032 946202778 529063002 647808036 417186218 761973219 646802552 992407793 144657326 624446525 600183539 785850004 182307018 485135201 297273010 756871225 430599324 719881410 820602490 885559559 660956368 708725128 612653098 626231841 967855859 975855419 895532664 921160728 35654049 634983234 206071846 618531078 21032959 788169429 647628664 648288139 889189880 920126227 647891695 669793417 606893823 612810937 256342298 372106745 517980658 802231555 340248057 752862705 434419164 445970445 900693289 955615006 645365402 686687855 909868284 931073878 946430750 978815638 328897396 450198556 523679909 753858150 313293079 875246845 113228192 239205703 873329093 892964986 667199400 907746247 384072057 704145482 678791236 846466629 635752048 947169653 129259023 332497435 788952666 925796917 973854947 981607173 236368482 769353938 794982316 982065436 39563785 69305952 798067222 847202768 43994822 457984730 739896741 819155002 401913216 802869347 303981821 437037852 695342674 966517037 153122194 202657469 202134164 641314732 370246130 469175558 832847720 961051125 260494295 712721859 515668492 904384680 731986587 861136522 404766286 580337910 980930314 989549879 480899083 922174074 366409997 675563397 854747326 930238910 318423686 568237341 896817365 938441037 145761313 686229528 600987575 999336070 279004746 679528384 429557682 819577657 565206514 594887465 114042911 996433254 601746360 637757536 78093575 867944580 139497982 435456645 651765246 795697010 691032392 798521743 979683249 996947236 40797973 471735073 573667015 846479319 699322328 913363517 394967828 621490130 221125921 922756166 532680271 829122494 781133150 864418393 275600421 883227517 332465380 471818517 820594312 865533580 732349151 860160686 326146891 435784392 362564094 524548127 344261259 426209271 413415467 676022452 773328990 854223939 90173205 888004044 769737257 929719057 298379216 341570106 778754389 932860897 480670347 507133048 461803367 494784450 266068071 477207652 181630553 551120882 453139821 882773481 826694066 897148959 602288009 891020110 779817770 899898670 842156327 967179846 593264247 987249216 600990006 776390913 668567087 888523830 434522257 672361495 892730233 898091073 623302119 975053021 673829260 920301142 847345645 882112874 500542119 513257259 477614485 511686357 93971310 571130287 424794164 940065289 948231658 966142028 723546032 724887507 282332937 998160647 396156189 753192031 224434792 723837075 592727728 945173324 903137213 990340284 693445628 994367234 167098751 916059422 537637977 982114664 852027549 991658566 687528595 929810238 73395355 200029309 181890209 234025117 18951625 492037595 398408530 940449396 39768787 277634518 726708801 828846279 252298712 882632658 620848415 723769562 483901093 670315346 871927344 971905053 600099295 809669539 763491636 952227093 796021807 959749036 363307323 601320436 302869 171561409 275451616 658596925 760397293 900974030 226208655 843590917 191398250 528821063 837888758 932082642 172895525 289120372 712737824 714486312 850323130 910701748 787544281 927454000 17429715 172592371 901375808 968037156 448230104 991252631 347103792 994189773 223022458 424368779 881004098 929366350 951864675 982119013 589604513 820090147 620473434 812030805 580783290 788391829 193868748 256318005 153962725 349286474 242890831 519389725 644601608 682454914 717218436 845538327 158848927 961529588 675650465 716210366 545566795 758688029 86465896 554337184 62591838 800330421 860602205 968214975 334676678 443454673 415215426 815201146 518874144 911558953 331385414 533640695 590048031 846392329 501704051 849501004 938766991 991171214 694762948 727275554 431039274 597736716 160183324 565104454 249651107 289407802 230068634 236360737 121704898 778288062 149181048 401669186 283486071 997332731 956605921 988153374 936187054 989646332 567436750 728434071 811674386 949605985 15363080 832495696 707814859 944116760 945835550 981380219 13464496 179773077 665872134 969277271 464766330 978166402 579708286 678749491 930790545 960704978 123022233 569735271 454728150 955034508 685594663 886925751 845796522 952268756 176275112 718912007 323457609 763516838 119574555 785297599 501327816 820188262 501902348 937134755 990360021 991639800 928113330 934070967 61986190 518993516 240322035 446472264 940540139 949768000 784990255 933037921 447729274 674551037 76639200 735589320 348060002 348350662 427249672 476804315 353080944 733236090 515992831 974730310 213923216 338526648 988613808 997360492 863267423 973673122 460589588 919770228 955581472 992997199 868589428 905467028 732976862 856613869 189725069 524881487 824866984 834214923 780953096 913681254 611533419 784927179 342234741 886013172 416412568 972127526 870706883 905904826 733291032 794089637 132045015 587604197 690652250 890510114 823173591 949305053 548218920 800806353 140880519 769295227 236312802 887548364 685121476 804592104 492537793 650744339 449099754 884530445 902906108 965159167 409165728 941645147 437743982 527558432 112240470 512001993 957412712 957494655 647277455 825839050 422896646 637674021 640630178 749371107 128396473 401925668 866246272 938462340 409963148 933749929 122414365 516255404 40499034 200476241 428830951 772898155 889778943 923368659 179211319 507143533 995981219 998152170 354135839 438957847 668728919 782437608 725502519 838910294 523397879 894283772 986874113 989858702 904242132 981214873 624890995 797485786 114022662 794923941 225019486 990938637 59883980 825696775 711143916 937791208 912955765 943390906 15521874 689035372 644996537 747871212 126454858 130035095 521813302 649241472 784649577 803260436 678844008 806964391 372344080 443225526 853535090 903526690 444697737 646576718 254400421 775139195 463991397 757319734 906531241 926564725 286542866 964810843 52936045 161083191 270100391 956920298 639184019 822041512 43990667 173440732 442421247 536621242 216257044 849233793 814567600 885576807 261447762 376442126 456807447 580824006 446517645 992029551 148998846 265837604 515138174 558718256 26781811 100238326 369756892 906564153 669444517 888763712 858310734 944436569 240306986 800364306 521833325 882608604 22007727 46002521 194767867 766853652 378285927 454918597 314852243 623847016 718837592 996388481 880327849 902720543 587540003 927251311 252725998 538082378 798928065 920485215 97613766 816871810 508913519 554939895 325612511 659981576 186086150 397553976 525809472 929191223 311482962 961492193 527034731 823530305 363921155 888746987 559040883 885065189 869765143 918637732 729428307 906491917 56996376 904117748 525642987 998370154 518232002 560386725 613919096 685750552 166511026 770215276 766993980 903645707 40072612 392811199 645336058 723689573 523077901 718529184 680856549 703975844 855075280 990288115 52625262 898616279 527193614 738916236 93262844 431242420 795397638 875623611 242115750 269133299 395107030 615507128 30885648 956190728 77426231 159379224 189645792 921318497 404635130 849280732 633570890 786755220 838475357 879952374 820450153 864022714 605638752 981332062 871003715 985865335 567559961 805754429 885072634 987912897 701065473 740991922 71080358 941004104 379434914 450898139 756526669 926837893 713559835 791932911 182262980 728714182 364853486 819090872 718753165 924371585 71901301 877404740 335393802 977770089 52053998 365741804 465752360 979110128 871845748 993187071 44292831 119881454 183453455 340253372 175870335 831640239 351541419 363751371 877440850 904144297 643552442 918846551 3753829 942388322 231011517 238411980 991443362 998810744 368930567 614319740 15134560 933855824 270190128 581627330 208581592 436750581 266513200 546398664 695991802 848572494 334957028 951798908 464383402 919074063 847704661 863948627 562102575 655482547 514872730 541626482 295594271 861583749 87364006 495552016 243118625 657329811 83458438 532306231 626312666 760961376 449261124 670079156 642112599 713965891 953576032 966750910 8542158 538082392 439642091 606611628 589333817 650223156 567721454 918661848 320291056 983365621 64986240 323119158 692705815 861478650 1808049 628431609 928912787 979262750 788270952 842266908 174411568 235812038 214993332 359649145 777255853 823607694 562225940 690931776 866050985 934908716 53974346 799288282 210761928 249109422 251049927 432685939 508429738 772114201 871682128 953644064 846522884 864554737 317236625 476678810 666666873 734157754 983118319 992491504 269384702 946661041 4129470 483341565 237704807 817954150 667435517 691994019 175589632 576537459 329217766 335765456 418156443 935975569 446915620 937683208 691588550 782493854 769901363 948289097 345809655 794699684 683666407 826844307 903816845 943364598 438213647 860230465 7478248 358713747 31657144 279608721 214718062 972730180 785710813 951479077 980765374 992162453 505704227 929297279 139438348 719967936 443630069 530484493 214012481 874671418 571919625 922852769 391804495 881936706 676805514 806632392 72808676 889166617 453228234 559283903 814752597 994938372 4621832 995876362 231796077 727102371 20175455 462981190 837917696 869045299 494145314 723614120 337218245 719088564 81613238 645940365 117228814 241470243 361316001 770129594 102207656 158062941 271169504 814760767 292159284 928321955 475937378 919785449 250246670 266628761 125522181 212910119 514245481 560186196 414092679 528804573 376582980 907993288 858598592 924947331 171189011 843423728 770723903 956649559 918266974 931689668 197650522 278063924 179680367 768168207 475531942 924752779 969237608 969496682 8974909 881533961 191559114 734470928 223514677 925055955 755932194 859886795 434150513 543019381 488132479 599913173 104828839 468625435 192070041 317115415 174649963 368205912 70452613 961378149 529452384 933418528 553073138 980942339 877725873 914038657 2647233 950162783 215930178 678681717 901107159 985818853 144299130 340020071 971332673 994354735 412480948 647971960 639198159 713852950 489014870 594901803 589246597 644454458 676462444 697566352 640643350 982465747 491352492 908128139 952079741 995943623 577422897 989639733 812944368 873457054 294183841 869837931 148395924 929608045 748153822 815865363 537180492 649597567 214767541 814825525 503092226 940253700 607254090 862068560 764941413 880022931 196429069 920948182 460263915 634176041 90611735 157220902 269478873 709416917 175756778 181803592 848418898 878009344 671237383 893058861 44725660 744735715 741143219 801488024 741815213 754234122 585948786 735948323 737718043 837479659 79997531 445259660 902496300 949281073 121517709 962781917 31718344 598010245 107403585 567777320 361702551 465524865 487314787 734274081 13335454 174301069 586306998 619043663 754036868 889010180 891262826 903126419 995654173 999088054 17237301 152242309 230547467 332424165 657600460 668767575 733257540 857906889 416967342 444090683 177918750 733615549 491536588 528292802 980225446 992709719 716776168 880003218 880992605 936746912 885413476 974850464 338565498 481826072 843082580 843279598 865804248 979181938 31855890 868800231 709537010 751398565 907764499 954133519 390006353 955962709 702570113 964757648 768889532 983360537 162674299 489347746 326052428 782448109 615544039 620696966 29824675 830497257 853902087 887194256 442457149 532967082 844704808 944824584 803714797 858769873 644105020 701518543 331730495 450477046 337964712 484132379 442218109 730633414 397583771 601464542 854364854 907580413 606406449 766180324 25342178 309830742 92894273 110969519 811094069 962377830 907700764 930541205 719052627 958371225 958481462 977090508 256461410 819412122 139043488 604062620 258259027 954897227 912472933 996029104 910166297 980325267 557725411 891535912 556329891 776972867 853237165 885859799 528741726 694669830 518422876 740694422 493098265 722001998 720816599 968517468 491316770 606100693 474387225 935546218 485176639 871414662 840640173 936194573 224126791 451087562 412848304 579433075 889162011 993900442 256727096 955557057 883982638 887951306 335456557 984328517 394024070 735836224 177318403 588068955 674698168 993740422 843006976 883408410 564903885 598102650 887924208 949100943 25900529 849602791 473029799 750472843 284569105 501075601 800841719 932570066 672900281 707313865 842450035 932335801 674421072 707087439 172465133 937652624 862023654 862732538 242239067 658923575 145842637 944088413 145891080 356555005 172582486 646857525 652128843 868297744 278237452 630462645 816433015 955191335 392530680 628899441 295514677 905683716 698819179 814830978 604724143 716259559 881728039 979085095 556904345 804662505 578128773 912198524 565872293 869547856 537875614 633997072 282227991 489069587 362057736 373288041 628605956 846208631 180022260 970894075 661919306 806210811 768808554 896282669 221617998 869217768 29049224 968123956 532003466 538646305 103329637 452680235 972921219 978121374 791411248 921974919 628643340 824225819 947366071 980216200 618032011 948543649 391881172 647146949 12130558 470051124 628268950 824121591 90971244 157621559 352836020 606970527 672707975 958207217 514639064 680784624 971773547 985920258 778971870 870091859 997252986 997350777 14006612 969247946 79718198 295704093 162632651 900175770 411821985 872095334 349589249 483959472 676955127 906623681 332637681 461985162 879152477 897386262 780086610 794985585 344372788 624706345 585783332 702342076 402371468 483546228 586600758 756230634 55178008 945958716 362953939 980671211 85793757 584819394 705055335 789258678 443164171 676670028 886835634 930448683 188755585 663218331 447670100 653878985 601111277 938118031 693093875 991228166 665129720 761629655 363835684 382480963 958439900 988238468 476300106 877755947 50887297 986801396 541848406 693398634 896978113 998875013 976191228 994852017 973270936 994361933 986398937 991821577 593447411 870842330 2656208 669426581 131144171 840418985 530625350 613650599 4087445 644031292 224759498 805287567 267254239 900940110 321562086 361073809 175492599 269808193 881230922 908172943 439139274 962566801 663395909 850818709 42306771 751452476 237396589 502619301 227515445 983520174 28130174 499758730 447553126 622961895 290614715 893703886 666934159 728384445 579436091 973891129 955946174 995964422 618214569 922385157 454136749 651029365 473090473 891830840 720731064 996270036 302172784 798492804 685667782 890162150 410260356 876224591 971346364 993035222 632008362 900109702 858472536 916051939 234912757 697241632 250326235 899662986 710995853 760441157 859744609 886625592 570798626 902047148 93384712 501401969 987453011 990528465 832806296 972138598 943480651 953865937 123827206 579631866 146075563 458137840 808327754 832218203 327648212 427040950 690810375 785099756 714906582 806645307 64350854 257389907 754967360 855748471 692630708 733024027 791673668 830968123 380560402 584383443 408821074 604493701 121484246 145040474 655547847 774954709 376492878 885851643 15824674 917125456 416051762 432725403 479315758 520655317 230510209 305255618 957995959 961915074 220964446 409540176 902341788 931385096 389377451 527503828 473439293 704118699 734686845 972103709 479033868 815908450 72313436 771433385 92895365 373805003 813316925 913592554 334755686 690240801 582317403 990199119 179730965 484907800 85570049 402616976 161832983 830070663 751566837 868867068 671931252 928610380 320434787 848323690 87928078 298330672 987132194 995778685 16501989 942114975 617078242 836116264 52268972 690727025 953558615 972132856 812209602 853645438 859974049 892911795 460369012 806189039 440715868 738788391 491167660 509860258 738030158 902582806 479205510 660093718 774462244 794503453 203108453 265255639 134047100 424526631 286565266 768053617 984576467 994170868 56582255 252399568 852684716 985516293 993627981 995264828 816614700 857487859 291730023 741567091 215696768 289872875 240345 939400652 946307888 951598395 492252324 586346165 978256260 990363623 747883879 794444268 782412959 886146603 962552145 973283458 959517847 986606348 883980401 896997801 205756996 336897893 772069522 894483811 781555606 840498440 827047205 854674354 246306417 434001356 43281450 152493028 878707610 893612934 748465766 996929854 454767135 899492207 545609281 792929733 36863405 46808314 631388215 756762375 906000170 955077563 45529488 209299570 888643704 940425334 626688703 748382769 376824936 485269719 811495322 834680139 678210618 989766976 426163577 822593135 217581755 762032265 737738179 850032606 815041656 864549106 143770978 696870873 154972645 741750373 167064090 791619517 95892773 107107198 653791362 793980890 529528695 894887881 168766647 702137196 190757186 491576352 364766912 656245568 737170915 811464275 76538760 798990807 110257587 813365248 397672830 753754782 492108606 588917308 806900345 936731466 997461248 998449105 846545897 904176582 542924037 545829443 719130556 925720010 699700079 839656079 92363124 643295424 207724175 964792753 945989536 949379037 541701806 688643836 691631776 876763968 976307311 983793068 329872643 674939109 532897989 791287646 723969858 765097155 361328028 389005413 748489213 952187337 884476969 885589856 528663984 813060404 264143734 625853005 559350257 662087714 139894700 375742309 340059651 581847230 816917793 892357107 257001125 349304198 877510126 968349819 330569314 914634649 377498308 439227285 261602639 640896172 241165796 450608900 221596130 246129924 313044635 443988228 824085376 915799146 206181753 742826339 905900940 923631501 847832564 866747641 258805535 891043999 718265761 838954804 771024991 933318394 361893621 483681731 944044456 949818177 223366201 969313758 251730321 774685487 74187861 325774089 487367928 962989879 212958205 944347003 590298400 652985835 911678022 937104396 222787376 312052132 313850001 528454143 721257515 772790756 682010028 838106787 456349741 690721581 184576755 814758712 645130327 878675362 257762310 998797735 702263067 908807123 954451419 959079514 699784617 894279826 549496519 573239962 819766963 891791285 503479446 999160549 977017219 990495794 752197389 844263474 402056692 784186709 359087592 748259911 313949661 987354741 421326300 522128166 973001061 985120193 591599518 783569527 907931710 952896644 607911968 609344135 367361518 763889309 390095952 591080324 463030141 769610879 620496181 814778768 120738668 701739021 841644075 998133906 788736959 882663202 117227889 418600476 887697717 971326618 863037253 999181366 600603354 614099536 968766779 992761127 770124713 832827413 123363837 611491924 240535159 457432640 67891030 747756921 507005898 879959149 223584485 658835255 489470310 786139724 221289958 675892014 738953591 778557526 699583273 869131803 808024888 896224296 645363103 735525384 766654604 976067725 358219668 791847661 247144949 346368358 6472102 754795402 619529602 870414374 666589163 975261186 6156238 499724968 267898152 454048330 673816913 987715049 414301878 960382718 677904668 679151372 38892458 866883353 150555714 923727614 571157768 890813411 460090900 936083035 278012863 990597101 521083225 608935575 680065066 737252249 942496815 958485676 838031981 987715343 321119358 902357827 148461557 654847231 930765408 934463346 292698104 387001489 30176688 153613323 353588589 773018139 796619064 827543819 395676972 870892530 614981525 686342353 57174801 456885918 915131412 949522314 680554821 895657067 58527167 208654801 635307761 639797207 591359155 812694987 472405939 658018091 291055625 991534797 886870937 926537617 810648865 985887627 236236330 426685184 756624357 900565602 467221954 909506117 90213583 423191274 365373532 628348317 606837516 617009220 291220341 956706225 209343771 770292339 130489153 809896583 146669289 199028373 107204883 917298457 252221472 614480208 666507011 797325021 386180114 914566808 714083008 847047117 775972993 809462624 395757653 702838560 591175935 867181942 846571237 938449325 895570844 996627273 499449725 516727988 530925910 883088502 881378862 944174139 386746250 990488877 197260313 535782322 806910464 879950315 513433690 557461677 974038811 995069865 996240494 998226280 15680889 321124479 748138521 974141334 453391075 486243876 928955253 996542135 135914286 582795639 589486066 984319446 422984350 797242144 81975043 730959834 40654163 411369546 974901051 980378891 799307917 852291279 231123975 447758840 80874062 342658918 440126434 808998140 248184433 872711264 252701340 800455177 415272997 428843461 308896863 549192687 745736088 896923133 47434780 543818754 236264466 873851667 885281475 953101860 271509394 649972845 244643 394863658 610325341 959427993 846054448 896184412 29165929 386451531 651377669 680318681 211335322 772942570 683625698 990534926 322626949 893800178 700704503 783468386 899431416 908962525 821424355 932164889 334124359 650102303 435479185 892035932 387014730 792980536 902995023 971008338 893229387 978418490 253558486 969904679 4440350 552778750 811486346 906960952 868555499 998452251 25620660 153413140 498265045 995192013 209780555 792028391 342483856 570947118 562918973 724164330 904699242 944706489 169580948 637338990 609605871 906772140 65576632 479339851 586469295 727580434 981206854 989966539 402181276 681592851 429200408 670975646 247380886 850352059 671297523 934150912 879798935 997235169 308478856 932574665 762787191 976530334 954075535 987504775 542297902 589492853 274061340 740428743 781315787 909148056 90760045 395530574 613532362 680110283 78541338 697041383 786256567 963398741 561891884 586030407 22084527 146421826 376541034 609093163 400873055 965039524 499906109 551244158 450608910 769928746 767345458 874665618 119271439 175591292 962350189 970135775 806972857 927885684 682604560 909407673 821059993 853578388 990064689 996064173 894630492 956522602 725291662 817466968 209767040 353007919 773943237 834509639 149175613 979825359 814804003 992012137 283134812 674891743 539588622 980726034 180989305 365192212 194015609 924717685 986732130 999100066 813006764 828760454 385435993 590786457 552856654 873697964 423395554 814794048 819072725 967486177 21161369 290610800 373480290 731355952 212677899 820868436 596396598 954126672 447968232 992513552 663336852 755815488 155107854 794700900 824425585 967317354 66979087 758937788 268149340 463821469 885157611 929493770 723760722 738636386 420196031 489694369 748367107 750122926 538341107 865898426 648930277 796556233 42474009 574709932 769362893 847007923 81213861 101506397 229870982 459243237 327746811 458727570 429620294 958759024 232162469 809348773 971064996 992024371 858201914 907704905 804448374 983128647 631965807 905565496 593116874 937788287 639368111 781890484 257429793 688222325 3011638 575282063 416396465 814031964 855365907 948123926 335389951 964632215 400010022 591564523 726017889 746785256 253331046 911588950 550703705 750734644 742930091 827631819 607047479 898094979 436616759 983424390 217604279 283519730 900354818 928181079 559725876 564864848 687056842 972690068 824731205 991142716 853000767 856565261 473587488 572639558 157813547 414970576 856463556 997464267 255930561 287773160 199359690 771017193 723654643 750878869 235381872 830543849 596860573 719506472 566060666 726162991 812561673 876163496 230569803 603432404 93058287 931635772 600672354 626126815 140186803 204252407 953440369 985401601 372867604 459233980 450008761 847608019 146317199 170085066 456519852 659347912 813703357 997118055 345416327 676114982 194329428 623400461 122040573 149792365 341325012 838576920 391365847 839306757 205819693 771405181 573866341 758069846 321314769 608607760 237674405 634499316 343030599 517672372 986509097 986843807 527957604 632821037 599401238 704168370 573142530 601791813 693940661 739937404 35208667 516859094 259425865 844339431 665565305 819126772 921003828 930658013 222391886 688689676 733695279 819279713 158257398 415690750 194508283 824112072 517893789 635051996 144792901 770509823 888864043 940688725 742810538 807507304 645354702 828772408 405782602 565245311 966521012 984107966 943616407 984834244 924501954 943310780 374453674 993997467 171187006 463879379 944967746 973196711 704124791 917995139 415910442 530031295 643472272 692617534 412705975 434790676 152222431 679898854 776878389 994376905 723057146 963106201 551497688 605158834 62613512 425753890 953319694 984899714 380800678 537973073 29599999 772561429 604831387 710759880 415856345 882521056 606573519 782362855 148771495 353362661 542927417 848139491 58647865 678848919 158864565 898606561 268058737 948657300 719547282 734040436 165835817 561867662 682607953 695231325 266880385 490744538 304057350 633982729 814538429 815549260 168202479 452730560 207435510 747938127 91877616 719431871 682195142 793582121 943073863 985272526 433029503 842117825 460170146 992204635 61024070 807912962 681751769 690391658 123880986 410142399 648956757 759364279 146632192 944726526 632375049 845386502 552332178 851497592 939597888 960535480 89592965 851743289 561663578 666704841 662657389 824740791 449203297 772435994 194325159 492717616 953004539 960391913 6908688 996714891 898095772 932154500 697265396 902212438 39650558 895750252 767246760 972396023 397276542 624629973 987377030 998371317 800957391 943943740 220483535 951706212 569776941 744508353 879247551 928451434 496216758 634948749 66390258 258062794 203430312 919602720 773760570 859783926 600852190 996684669 489900879 592545961 697812633 733389153 49163262 510190125 898556310 920656699 112342134 959414663 721230597 946163647 933740633 983123864 895351247 970581083 515461955 832895184 449276550 754716353 515718057 964591618 438794579 782749154 736549683 782929255 474512089 741174676 743442177 933947640 805788101 832280517 741877217 807660031 177934580 338976988 509434792 933386336 745235722 886724786 823310011 897323943 172764307 939691378 460426675 662450166 167779586 767069402 409372347 664837171 89432379 793953254 328712911 888013810 978754332 982227254 716664321 860597558 814931538 996399709 919102671 986378695 379951273 616212493 41264463 607008856 973849690 993364827 873174616 969095859 792902503 939133759 15436683 534957239 236629254 867824494 782394992 877207796 57623001 172096810 746289877 789529603 777290396 888065749 913726320 994456801 916757585 994080330 900098741 918907789 91217503 521929868 393191972 676439676 870893339 916656878 33595309 586146428 952448437 972377273 6214494 266552332 953656951 996106364 328734757 902330826 826226191 862687623 31005947 379689741 51322115 389793991 302250276 371885942 62910150 820454918 929934318 974466910 323004887 896017474 786354502 805705131 545385302 828589208 737422284 840699532 65587092 674889176 933107674 961827662 37063551 404877267 430619006 574422274 595668272 811714695 697106728 829770007 771920225 942900807 681587245 703797138 24910636 722550952 989495361 991189122 475170684 568391702 926890475 938518703 81885885 512474078 497657536 860949232 608377130 880150117 624707128 800827221 964251746 980189501 692377147 971635358 109437821 311221443 897449461 977992488 581957480 640152205 565135556 881725841 542021511 729959936 195666273 696146891 76816580 248037724 477293012 666087948 481898047 711301578 623684108 987604343 983041033 983769272 380723941 554703988 135255 839558746 535490672 651654628 680730273 721725174 357429964 890746816 73115950 401737567 386103165 954646831 658535104 696620665 695560096 745518429 241943187 453446295 337548232 703883541 635459825 738069057 47109763 619223730 882792546 885410306 15486484 526350133 98617032 801056630 891177625 941915331 607860662 819302918 60879506 797996770 848910185 880759667 284515751 832527079 997423755 998940479 790086761 945090546 193196441 423763428 227081922 441360735 597941770 900886132 488430592 940800104 97688204 595179619 850472384 996479236 548796300 973371352 808829907 979757962 26280764 826286552 24410739 55780939 668800551 773342224 166062833 281058560 752171855 753262094 994762417 997939041 602601583 633348101 421999538 980131767 924579452 988705176 454335993 560016757 884437364 910227522 403156394 508423184 74893038 362358516 240787824 271844920 579264334 610085490 645618288 866564719 899556006 944956776 691071758 719437148 809532002 881787133 563077068 971047679 502387601 530554870 5632138 32862332 282774233 319904914 274077973 927294430 48504792 67270559 93221042 664591038 275708441 808358078 68698685 456549834 118408432 615676010 682373866 793793014 45356142 331427228 653712322 966368881 253071194 857378459 478869454 883307931 851333969 997820826 518306152 879072278 766351172 806850492 989071420 993829038 20466609 768000364 111053857 160541067 862930512 944568657 226991750 266267472 225331995 796547796 51684955 693854353 322542054 731818690 210138173 762187841 256406124 841900760 291816241 897979960 421469908 465368743 233181868 890465823 319305815 523244748 5347491 786710280 560451014 906355830 336075793 893430281 166807875 702499521 765274769 878234375 482503859 733655957 852206041 891891738 549155938 703232443 656886543 777317544 249031183 312990993 501608655 760391750 459807712 834911146 1895563 272980784 56623531 201283015 887334171 966709810 214042229 263081043 308328971 976416549 913599636 927831992 936859930 960598234 295134362 514928130 110235425 173188613 40408281 429061079 816438892 841344841 847061454 957978939 156855826 851068178 217835062 629209936 617569826 720210189 694774411 873937365 242273176 354242846 838622469 968368754 368433674 538972121 600788459 901626102 809583445 906061069 264467004 459855947 80877215 562753573 20115477 624061174 595676696 782994891 92454524 700572879 72160855 378110833 97451533 615653680 796624813 935647269 595631169 699784257 809557720 857560063 454043625 959370901 471045886 841255461 335885701 556932939 95879706 373299441 707203995 935166689 226314807 364137595 757227827 955587861 465387554 640228424 397747950 737292537 854758491 999203938 123268657 262543696 423168298 507667893 969270678 985981317 867195185 944188340 322828456 355918148 995279799 999120438 514877148 515751100 471079292 765467562 119970151 236738367 814604066 860119147 300862711 919851322 459751666 496303357 745266386 992872861 977838281 994368512 151927711 959362342 463015194 990571567 842977261 898861621 415320136 595826641 227993214 381165564 70788532 167304296 642987880 903548259 3116580 262466173 719107817 900330832 680290577 683381110 600555797 705298027 513660146 515131351 529566449 600351629 24175635 158360564 563552855 581241271 733116713 988440102 66327998 685502812 32972440 109564171 297600099 705385255 166993770 357907643 788796452 923325715 898399914 967508737 499914367 534741030 197458386 329805206 193580568 351628567 436696255 746126773 94297855 260383053 984954302 989963789 28521508 256087715 99249942 849764142 625525546 974803635 776707006 930134334 874722186 946522577 260266808 960482312 108662035 659443302 460670578 921161358 833743317 937545427 599563360 700552705 891765858 942629491 209031439 787896031 293466007 808484080 663034341 948228057 716616757 887344752 416820911 952421409 943211420 992398707 494623404 578413061 306331494 609171848 621903253 963239620 205012638 232149469 54997993 883468053 519289191 751425158 102266911 582697559 683341220 736391797 333608313 487420913 627518447 694571834 462368727 596873880 180284805 962162910 935715520 991220956 625254178 717210831 214160403 496216300 235520599 509910500 353772987 646493469 268971875 522812419 248453137 275351847 752147343 810012615 770091697 951871560 939215296 987619128 400512034 531732883 514131223 651774092 12389333 728148040 460770591 891432581 263588405 975364170 589708004 855710487 916572957 979644669 727142291 813756831 246865794 807541132 298235860 621577046 832309121 842082214 409094581 977937843 180964426 234457962 815318496 846678673 392668108 456162833 82121144 491452664 147280252 414227514 406577806 833117195 144701490 486544518 855559009 941585698 461645345 575399053 573057316 928019675 290134192 337392299 15521809 849778602 172554902 864350884 24510877 69209130 897809926 965215198 865453082 930239846 116062557 179170604 996935192 997290248 632375684 934511125 72357183 564862047 899776115 929169403 940812554 982370988 894308769 956319681 957038354 984679991 68419328 545477720 704039567 848579994 788695143 834453895 10579460 107402810 133370298 998887419 12027207 668821436 940974984 997845975 453184203 598904747 122383976 465287987 103345976 718693641 464507378 864174521 595511706 596946869 794338828 835908846 131471561 532757391 13495379 964104703 279949828 553103592 188924290 946956810 985932595 994208785 356289673 520002455 554696776 847700799 207663101 892987534 313021065 699536563 671578980 713498874 596774519 600648381 488372969 711312892 107667438 583221291 258522789 811773542 417090835 620599213 810231803 912244027 547949633 927481228 152771146 667431196 396378275 523231848 889643163 985628390 73139963 447072396 660873635 714436727 277624318 521903499 798360203 992091018 63564819 579445880 946495509 974077910 310054890 582684884 338847774 620688061 841039762 869172292 137322038 629947423 45938317 818146194 24060734 615505914 810154506 850735038 540433463 691666541 719747954 895187795 338015728 900610300 965940167 975590731 288623116 803866552 286917355 938387622 184533586 380350338 851290258 887210825 342873488 505738832 883484444 953797829 195262199 781520202 76420468 791232724 419620207 869595995 706385962 842329104 99084865 349750393 390762886 645071549 756876923 839969292 408588169 965977478 143694930 157211694 332929299 727611519 787158982 808613567 145290046 439680242 502341230 618354556 167807275 465841559 436131763 659392402 789699243 882163279 100810270 183841525 757137584 802782079 699796392 954367726 875977099 983612363 253469222 563734709 733954777 998752672 65907018 940030245 934247058 968574440 894545505 907551738 471051716 480155064 68326691 705663802 806059240 822142276 564521000 574643513 283590391 646251351 462375230 548408074 835551907 913419637 953538029 967323059 185073589 827009784 805933517 849454958 389863143 663645477 597776732 916908556 511175472 530073222 334965327 623049441 585199563 864636932 861173741 992781016 623450625 728172146 674010876 850342483 235389756 246460029 715684143 909671564 198451143 310772897 20771828 376867645 276519290 472251961 309682833 859386982 379259367 802225771 170712242 600048788 20234058 812738643 641131721 717487142 231136308 528968952 360280879 841806911 443876094 471898811 155232379 687900167 631738262 784945117 173764811 411332421 441292886 479894712 99608013 218501840 929325997 957042432 878757524 906895301 406084511 593683626 854977935 889476937 985046009 996723184 816348253 866580282 899944723 921900103 898332124 934664728 610921076 777890854 23747105 29567623 248151667 862583825 616374247 898396335 457578970 977156141 891399027 892917948 405205892 924710768 630525461 757219554 839847448 939408246 872489300 973712643 901473119 942465758 758580287 840274621 231259744 818691143 666219984 757955556 191775427 593898650 199805224 346845359 727555810 778708067 882175347 918594980 259994362 477230095 568444855 821797545 239274096 300181128 538674892 605736169 623241692 682412231 11231284 195120525 281738098 881869888 580607334 732155861 602693071 649008745 687387257 693922844 812436198 839278288 110113945 677232962 469397559 557326232 33486995 472252048 182806415 610342985 309550660 787190930 376424745 415613463 803240851 941856518 13535712 278229570 897829780 991589320 746861838 748690904 898239092 953656805 875860743 913711245 697031177 851902829 845675266 846367956 845410072 922855633 504753166 822912847 413126907 721266242 823335327 912064605 330859322 850382113 394987974 473348008 459594018 917782709 58612719 484355063 337106099 935662270 971977437 991366619 685572537 828155641 310183032 807624198 104650033 333297158 4633888 87991644 921015648 922988786 119119283 343064633 723463718 848405826 916455547 974084946 133122988 635597863 347992487 422031135 623148255 630710067 941689031 978495608 443879394 876742187 99335267 874904400 286019831 373807307 750602257 775559063 332369087 913968196 161537053 943817175 126972129 518654912 295962262 841266854 904843078 928898364 862412273 872513225 407438725 572332042 649216977 853553939 634569906 842035811 664178233 939105926 951393877 998645862 841991291 904118181 131185317 387137555 390125016 579075962 375848655 486548351 355123894 906513897 457756427 477244165 420219771 992967272 551084363 754745514 4475790 921278207 386513866 731588810 776754707 929106558 994242986 995685742 79238793 758739995 149570615 342566250 535508268 669951128 886432674 933438452 628899645 927157103 863844126 983704365 784224596 895690360 911233846 977094671 470731434 472918023 132162969 710700838 46169856 565525482 551533125 595733651 136336642 216777058 102510737 810298753 141812165 720939067 389188502 908728640 224380049 989715061 314487811 407122606 668875395 750973553 39531218 929253599 943338589 993703476 479104845 727299244 471235331 996231374 324143103 888027869 727272664 766536717 763426026 885402681 445947996 827033134 432885896 748210759 167189262 446106773 486630745 768800033 814100444 929572241 694366090 803006508 548635042 774791756 941774519 949084844 539180867 895029585 628401587 948380667 946397528 977933288 41169288 709503480 928348581 958934467 558793743 880438743 235194750 544560274 130984614 279195313 393115695 879121199 316943892 861170165 734844625 893470711 526159518 925363461 15898148 769008503 116827763 818708131 30326568 767194383 144788471 432778709 896643339 945975819 998477724 998863740 64690285 762661281 987761506 992572633 602877051 815667405 885127850 960171584 561991094 679934433 369938891 659126881 920901696 981497803 587009088 964433624 629495386 732186496 756401594 908204212 665466185 692898233 18920966 790452757 23188272 276795427 785183851 914517614 431681210 914220990 115118877 787067983 492504164 812426407 918353852 971631007 498430206 675073100 238394675 484426588 176944092 872061428 176985992 796645776 751271219 960213243 409977727 649852559 143121543 283499153 987265182 993557991 63808052 198548016 556981014 980098535 532776363 551956507 872465836 975842313 271551780 590278583 468783205 515246958 573359910 724386833 169832008 585940325 410452360 975763681 950404079 972925739 921142868 951138959 954267770 954795682 626441746 993102610 240202532 366643277 368453733 884229876 783739603 915057736 495330975 605917714 115611113 936447702 259949381 837763862 816555940 887732580 392384260 970425632 584615834 603704900 567641822 992690100 517737630 825743965 436879423 946234093 765153182 798132453 201920855 348379401 184642436 935906440 724878536 959357893 769577595 993043515 798742845 982168756 409920144 628221345 152097747 327476633 185321907 808969463 46992217 172041844 388607910 401485988 918651571 988131068 244742802 458616292 206460502 809851469 597192804 777493850 576268008 609958068 693526819 984085811 893524358 975189946 223176986 727504451 569979769 573773402 924918147 926912195 119935412 885065951 47614475 946543186 603566333 650706925 325291125 577528964 292663080 749697533 764481164 775414703 615740375 695759584 708766659 858168093 291639316 917526825 199704496 295208049 903902949 985355655 399597020 935675815 748498935 852147398 519833574 754074510 298894913 616514061 608053047 709791138 785587284 854504215 246658905 593881033 607277163 683055412 649213984 721941268 680259857 716056108 173225227 307078888 86178247 494709639 383177134 870033375 404618749 951514777 289898560 338684220 345169281 662252909 980047803 995959404 794611042 992712801 263655569 982472485 965950250 974412103 643541895 703423857 83481631 359758578 437744176 993348503 497190034 998687427 993276684 996112254 180526750 649960301 922553305 965101777 679551004 978744269 757388170 883860477 921748313 990984538 605283020 723780838 664090023 684208700 17975967 222228710 79368310 488638642 785450969 848351900 785115374 883624219 234285144 634623101 648446363 968636283 76801150 648771125 19431145 701572728 45192571 253464506 879014595 943071306 897298608 990200456 404114029 754720224 679133023 772640122 42640008 913527534 481053737 485643073 897556273 944255711 731331351 961109890 955848496 987086717 859415884 866952698 849215703 974205940 700126920 852574506 359674103 428256292 813538482 850989634 766294431 943716710 339759861 821047812 791323397 827085224 145531384 435779522 803278534 882164853 490277630 760410493 437279560 901983393 689477998 790469789 20398411 555742044 538765500 762937267 837516345 904572856 843421717 880293368 34422146 738915364 226296792 616393442 343097544 527275009 307988936 485466396 631527405 846618079 379091624 746360822 267526277 685490575 61660011 904323287 317417711 751533385 145632915 408308964 57477837 116811710 232286187 800144167 919815268 948267857 167232468 231591306 538693944 716393031 715571333 866320689 366099224 586120402 596642914 764471284 773053985 878571394 350865431 660216772 16125028 884637701 512593426 865618996 782972196 803190880 294848929 541225819 752694721 934597204 124472630 967804000 992695386 993816875 840127794 844737247 949772784 990625996 294890852 563696033 79026313 521309012 422584632 694446411 624039445 781074621 245321723 309041645 536539082 927572609 857875097 935441512 184539642 876622010 13466658 99845611 317949406 414575439 885851715 985333836 753711034 875058962 282363864 370387400 970712205 978187936 179283675 593083582 37788397 832017687 169431419 592745462 836415280 976787086 782084579 989904670 862766604 909933547 908614873 999095970 717412985 809418896 465105893 787902398 895096845 913737364 289781264 908101126 92607069 823911634 746569928 796350873 18385835 669749660 970316348 995440685 607979495 849375361 746231656 834495711 607187479 607322269 8623062 86027005 200771207 446958450 271146004 526679713 41504990 167719777 180017665 728020256 775461542 958867365 269757489 321145428 783975381 961614505 877579679 992287333 874655172 904497742 221681741 913811184 598496550 706025974 907138429 983724019 898287794 980464363 252875375 598356248 253560780 259287236 617281578 808377705 367412807 536596152 427209769 550352242 668645406 972179257 718113334 808666967 485531682 800352597 975593801 991350596 814610717 838327740 516361376 989270947 504647358 862583737 118512863 418957911 173637211 615727976 38954457 932773162 472916280 980643524 942394706 952772816 416763212 428425717 293412491 955551135 220100016 290422267 796547876 974566866 948830216 978128057 299970019 425071441 35705984 604311484 770538841 846783402 563796820 907146324 184183188 963800911 253437713 380419089 411988104 583590079 990065305 990724335 67191380 176780125 34140404 205003184 927316412 980946434 78299906 856626940 340791605 799438096 780463373 922241641 315198202 901980298 639716844 995764731 440873595 448203437 431101446 936431727 756634397 927534288 293638826 410701226 251782473 698318509 600713247 954353632 184170574 949055519 974148404 996673642 466331113 573174542 29220764 391667930 374542658 431364394 802958592 868706373 29208960 953980821 833099338 968514942 164955457 937940380 801680233 885144574 24225782 230631183 109325456 121011613 768736895 975671050 307408320 983398252 709820862 939761264 235351403 587590882 151642243 321171803 727340653 934420103 150639576 743373755 189359824 405743373 66303158 850498425 397180722 731766194 11254669 431158905 337445527 520787271 131339244 476110410 628396254 808217014 739525130 796036223 445553865 500617070 567168439 810872634 218015705 574368456 412849947 970559546 970511976 982924450 709602189 850452280 925418191 962433761 659364407 800714271 375739058 810676700 348566082 844923500 401906123 810656107 77912202 84040357 837784606 939679617 588389094 992180893 560963544 960132517 623297291 765970212 416210384 597531456 643295440 786839802 750119791 787058550 295612180 686387198 296230467 429313891 83040521 606944543 878769641 881341573 605637572 957690192 924213910 937108155 970918339 980504743 361935405 931929191 237057865 257955348 289711155 719782172 414607447 622126296 587189192 910368369 144893217 280554119 206633409 739163124 674987412 916723879 341331548 518477744 338877552 613387074 73469373 421814683 856174682 861261229 794315859 925390459 172897044 404086918 586512616 808624676 657303369 975934281 397125315 828142799 376883913 433746108 94233854 491199407 857772590 958595911 474128082 765653149 730552654 800914900 664286752 965031270 19252751 520999527 166621723 368365095 321158366 553818038 635192523 801663511 669750117 737967686 837164749 858949378 611551569 944184554 495589603 501306406 644952921 725787051 276441956 876340621 432129818 491932506 844542680 881697862 571625025 801751636 671186380 766091424 713200168 780431656 848905100 912585045 18201864 562059326 773874757 945725658 150078250 297014680 457719338 607467337 817491851 835094923 789543756 964153107 777681930 818721563 784482947 832800770 308028826 962340888 681406974 839720196 51242161 512695592 776192160 785622566 228033941 490508332 152433464 193277969 866518233 925347688 507616296 826581473 709640418 859844291 214512029 532962061 301504778 581164530 879188043 960119393 778642604 939960451 45967117 920481491 120521163 528562452 998760158 998762638 408115825 702250911 564916378 653784531 724151360 798468089 913433585 973473879 114127583 700777885 194221005 692515117 841392605 880201351 153033231 790253897 296782956 552384586 857756016 910653068 422071495 521490244 897463347 906541099 10772707 595612697 244426555 991337588 806005500 814351198 107500654 243749162 298745721 439028759 881688261 897690449 518371019 950312826 228473507 534416940 734261582 822268433 453974738 845168978 434370297 596232493 146885015 576246418 942727937 974568975 948537140 976378453 807328386 828816673 254569186 449985420 267563569 466051878 364707408 542026584 977274713 987273813 856898857 985430898 736793522 924460545 272632737 952223434 267284976 877841043 704477834 882411638 19602755 291250075 285528369 412299355 546647244 568445877 655663407 830921186 72612002 296052455 664486673 810046109 46322720 60986574 340068542 589482863 264300839 994770302 887843642 908446052 942421764 964141517 463618113 912753091 226271177 597598713 183955362 647040786 786767504 888215359 146728419 206464688 177162826 341250686 353324230 567676529 869085481 938760453 182432538 392467558 35826900 435621744 527464364 984848301 366121278 909997973 146790871 829688419 996655093 999000559 337744422 947207085 315729665 841201219 475435455 932003010 905647829 989764562 232250218 655195419 412450212 681269925 347627557 356470287 418986160 782233411 835773694 934148991 96785939 452690467 138014042 143402180 969287263 995799600 176688984 176875989 538301335 859762254 790788833 809541574 480059665 585461122 802303134 950700245 583466365 998406087 792427991 852989248 356297750 445417745 155052945 529747493 27849784 400617543 257054033 512450222 594787195 889816233 265801419 327480811 861278283 905820196 670785710 974854334 440062772 532142448 223968779 971152704 675710326 810293191 766743587 784588935 956905218 958701281 539515404 580815758 845599784 924276957 823014162 927299904 659907677 956530045 990182648 996258804 404403155 406380346 158475710 510751535 997166851 997176918 61671182 882167555 851867007 949172192 972226340 983782982 218158245 379902731 364312432 664941512 418501105 973102123 458837480 617764232 884480912 915778940 608984749 663522035 884914697 888407673 175513832 637838756 547234174 974503902 957802658 971452464 195751079 302443380 567553217 895814622 128098744 436726571 241762461 859819981 91334410 962902856 847824898 951685790 289256445 467235540 794361490 885477787 669518106 746643300 875489472 915957776 585560847 766065453 577174034 933946279 356022561 374246262 379027293 830524391 888641791 949376568 135492036 410080390 772647171 918478745 79583517 796703118 165863613 600583756 634674210 835247368 229250822 619289834 615467387 756361012 55182274 689112280 997042431 997326504 989115761 996361009 731180312 934281538 192654318 438417521 126764999 441928847 133994439 768069135 93555941 724718493 748293880 857879903 276076985 498436635 74722003 498041058 341280197 341331026 659916438 904662801 862534 730393421 705050701 841351586 725969775 971559520 382112225 899971864 485494360 946974312 493865137 702461351 200953280 836583683 707715958 870611591 751667653 914604406 849581323 945806753 960661232 971119272 743256822 774183336 275703104 629962982 845620374 868275489 682603053 872860798 846209529 915300147 436777776 636300191 405224730 669110336 666712017 820257305 220376048 851359325 771047311 968559741 861502610 990345492 353120121 778865328 605717597 988040756 937270875 998141797 71162769 882668217 533869386 637498451 650842269 942814741 693431690 827923918 929796994 961469787 841137521 842865141 637943733 724868945 851452695 969949919 250225624 511928125 690922689 988600970 886769964 902220147 789902513 984744388 288021751 904950254 934119935 966580655 760241888 888702911 35338436 582991068 562869793 699500036 840686965 969811723 454297315 582772926 685063666 915248364 775338931 805108533 763324838 823753730 761926824 826216582 503255396 778129888 706999764 853100118 663168089 733179676 590478618 935852705 504182956 931238721 696225743 787590473 294085651 545033711 790038389 987376866 249364197 787075462 584794975 910524896 892345706 995438412 153177033 800122702 780792151 819674604 777251839 974371157 583885243 785873635 140158004 618470612 377404320 781652033 884926389 931807003 106858524 696653520 293141002 461022775 692840192 794101833 875499638 985805185 503915158 519160872 301221603 684499185 77015155 644655852 320723936 617734177 918594174 978168466 926137274 958271528 118398234 582196145 539421748 977276621 525584744 954740171 585806469 920688162 924505081 955780085 475388991 957940009 638389144 869643594 126548201 393035547 250997746 797716166 620867112 842270691 891274548 989477873 889384385 951795822 425117594 653928324 72805423 779945001 118663812 887380726 440187473 758533195 797992815 893436388 350977673 590054707 895228827 997274921 314485298 621828851 806538008 978458794 776103267 974528314 428252788 459589114 109389275 183167105 954318863 959128457 795693803 898182767 274008595 728097221 164872018 197471620 556949409 626084105 643772416 644617880 724187584 860482144 574082423 654967663 29688828 619806845 731642067 948887506 498288169 566223188 451688158 474426078 512409352 826607117 488919399 757792582 292544798 965800759 486643240 645171271 961742328 984059848 798445518 972016911 455273048 962108814 834194791 892639435 30725171 492089048 402460444 621142595 264701630 317623117 395732935 725741951 398017310 742833650 79390284 680111817 270188484 505351437 468682653 653284601 539682568 625186586 341535858 707965156 78817393 797001517 724067763 744057952 931871360 962575768 43201040 591691358 140431365 342773827 214274418 412057389 621424320 631583640 564997525 934054720 241644268 766632043 914530021 955752366 962538196 989423443 688762110 734684807 310680482 747257736 420804235 550306342 245199297 660831879 727171133 833551939 379033455 601711084 224382783 942582724 744055023 831976667 612938672 794398927 437229639 660854397 321224859 677636572 215363496 482011938 808725426 917021068 298598754 631468090 204760951 369398287 870326602 897254566 489659741 690705746 960406969 998210264 413061342 543955098 998167659 998546368 75930465 504477814 167826540 772628754 610573106 790181011 965844833 995284480 82672135 503446690 319930134 477594165 980718415 985393044 242564410 330125545 775098965 893779690 670379615 734386707 495442689 881982869 711955923 870824598 347363691 877163990 188257885 308359993 687525444 930728625 422674716 703229885 231096142 880769172 97438551 481076301 953386968 986182113 950907682 957265952 458798234 868949566 702538397 820183406 117906166 946625132 605679029 606481629 306484292 449733873 812262774 974202538 151887222 770650772 602822866 846598320 221434235 238286091 897683308 951988226 944926052 976289689 1894736 435277737 574404902 902272543 574934225 944412588 648623191 652084862 912192347 974407627 767124878 985644840 842605195 861560870 619377039 942096532 515707670 572826782 439042877 549619415 738954618 926664778 698828141 736033864 192385324 302956299 436436922 724121040 95548266 361334957 186961571 513913767 919961163 944265891 773960 604211100 467495304 487475316 853696165 885018185 178040480 932035727 933016495 993448743 936799301 953452010 952750962 981441510 112352037 730761155 27302903 387334044 911324332 940069372 16778455 54377846 250338531 429167088 160985117 753897656 186450339 909737350 937881460 953472101 486568789 890024594 694583764 870061295 723334683 759537086 689914371 850374814 280575911 657794305 329009340 432571710 128668623 133477684 507544717 656752921 762257123 892769072 866164839 973633574 900797760 917543999 203613707 979627471 519891694 666261002 686210461 835104295 509726651 695585965 284147364 747923084 287663370 936956037 337266211 388812528 924248166 936557112 795895956 844005780 816364996 968648659 986856095 991913914 968481008 975103060 670841286 875378129 618204481 760871818 924576011 930382672 444098046 942618742 931412367 957708891 584227806 970651561 238830440 812930404 749770155 956358530 543567072 998622536 330694085 968574152 128703853 716774879 926929995 927664511 867452826 883974545 864741062 991525233 813249742 997725691 221940003 413775354 942827627 990705741 753752821 987795616 678151947 881783249 732669384 906486778 456929134 833940351 964430640 977052524 583879575 868391073 246324055 252422587 798756732 978025350 361959104 776001957 596306133 960230201 526285034 672691721 657844430 668799387 448430797 492812094 912293211 990618970 413516032 450923515 843652009 899220311 56178172 289785292 87748598 438592779 555479448 604595917 845730421 889376858 278908098 829113977 894279917 942274861 379980965 991800295 905457568 948838570 745430430 998553015 895126487 952482841 542848298 715610823 346621083 479721411 496125068 766137540 820421931 996109567 539770779 776942191 669705553 988024614 101598417 537264588 294803396 732060264 576989330 701382318 482243169 845738729 294680448 957813705 501312062 632104644 386620004 658940350 478521764 525747438 490859694 881736176 177625725 916583717 737307635 864651708 520379920 948755670 414655199 743115374 13965946 737627991 957812826 988528450 632526561 868388144 715482110 931688792 870251562 924814818 823523266 898792686 160640924 506439195 259843188 701929727 296392218 669639259 27252430 608651222 904364140 926366241 244767892 599627102 888164478 973680133 839735482 961802503 543497903 616485771 526088237 780045358 903481938 928215156 350916700 573727610 930029579 979854846 460843196 568111751 322256308 444368185 554994118 684500401 495616708 918666775 309797651 410876443 332055497 854805356 898877586 959356571 498705361 881487000 536339290 540571547 531161061 837733516 561740233 992218350 479544249 902798133 927222314 962070784 461947051 882524379 954638938 987774414 876149963 885531699 731503293 863861521 522943448 633762439 599812032 618403863 329361576 644810603 871642230 943831621 881381726 976726004 106587988 935664140 656592697 915330708 767749525 864433133 560119655 879987029 435326701 450863657 391420226 879297109 108863522 431381521 817286485 982991969 768500993 779983249 298165864 370422466 373399249 769352840 525545256 953710053 309834019 359933868 904130761 967280441 170514195 384557383 626940556 704364968 189349418 906706745 33479165 226897278 268109373 377844417 800180980 815668341 264475068 991123109 420769543 504067121 186669398 930231623 625196534 972885058 853175592 949505757 300695126 385783428 200715326 273566812 221715334 479879923 400661050 630557149 200473057 869087891 786156311 964093876 735751022 841363959 144011849 924219533 134980947 911473109 7013523 686227307 818652974 849083610 75495617 441795892 433756945 895326086 29989817 411814903 630245645 942102829 442133821 535587546 608609082 629215085 678378117 741321710 831150422 949720122 453935366 582397913 205187536 737806670 414572362 485690295 884935664 942417097 700120346 850403585 711243652 920328518 57831993 531282863 861126901 902571165 581249151 587950984 236807018 422171400 362555132 966802789 902356639 912684170 527945126 673483771 635357593 669044640 715951728 769675570 508023473 612495099 447344161 664994819 708503492 774033210 994852680 995177292 320380984 885906573 560336120 864276603 190187540 946699491 632765237 743453740 857801022 895285522 309104540 759723012 289008557 634318683 938059666 962871101 724557619 775166003 303487776 706177391 771875907 817186345 876267302 934907870 532490654 884975582 485378646 859224868 656196227 995389731 944840153 947785413 995566711 998492764 944448391 979928975 293466738 293768321 601508504 893406754 552503059 974773433 431589605 579704380 200565551 560071174 799054083 974584290 502591809 625582921 624574833 904804057 591958726 867828532 727043734 908806892 974189238 996670036 425604384 661322200 311367949 318747269 356616364 813066581 62280731 825325113 334345207 495189962 912187271 938698344 369939595 806671845 194040013 508449414 873498471 919169160 64901503 346983411 943266971 990737225 21668573 619414865 890892456 973481595 424714984 671731017 118999861 536535754 56198413 130669142 758044568 941701583 618896063 734823718 377407845 418244114 904496039 949839353 35845448 463355872 580575090 884745329 647490457 855736005 643139374 731349996 882833776 937726311 805049637 875983952 897600513 932807981 526285774 729088964 811299058 908014004 308519053 571331185 883564905 937860116 479843883 614692144 955848691 981725104 21002772 368010584 581604237 912505353 373980863 528135583 784064022 838911482 597505607 697408532 220574212 334071809 64839290 351154956 745060526 831181062 203373323 543102604 620171877 993597474 49938152 676441119 967864088 968435912 36102373 898658146 197997918 476203118 17321588 65253464 427905449 573032378 446133618 756057418 393061828 882454710 997218483 998725219 286450145 286825078 441909110 724525870 53451065 700672121 975101905 979599720 204828706 783465772 628973997 819131557 448591331 559464574 225816820 380377397 916008745 963980801 759729362 910995860 992612085 993714594 527304315 730114264 899604763 973669525 824012584 897737980 432868735 446836036 615745171 765071363 194650591 820392204 896317196 980580779 95327704 601901049 565144922 571785483 184471733 424691895 715243417 727806545 781214512 964708366 871112703 930390451 41719912 244729680 14136448 137622871 879623450 919185212 169171940 174267300 106662062 154749385 808011901 820665435 255548893 590001794 450254319 492240412 572428279 841783370 372124433 875610037 259245661 319198075 638689031 874061859 685467447 950895877 600602564 659593591 639353710 889324419 453739217 548612156 859532046 871930815 474098233 695621996 797109845 958452584 659622336 684033961 699252225 945518400 677927222 775095955 296075814 764419538 274985467 320307843 759914999 863275913 830561375 888562593 413984084 504006074 658705606 964836001 402890812 633697869 317657233 430543753 684008976 697078541 122237252 351343337 811100632 938268378 301839599 676711061 396333802 570482665 970633963 995478060 492851277 901529531 10694832 941496094 907541546 935659368 821653126 897570583 656800394 759632819 709610555 933185702 951752763 952047643 735929017 749809955 651905308 662169703 266164494 606292206 875521835 902774196 915660701 994843674 956436392 977493654 798572598 918768614 35332356 691504098 962950485 982724629 470989537 639086607 706212567 989507610 281397015 348676996 926480829 984428899 885445058 947003415 287055031 721056749 441639351 582929900 106245414 594315179 65859759 420696732 392877092 576288189 292964049 514427835 427384154 435557041 6748946 564715433 168909881 696854585 905374791 987746697 421999644 794002514 931174834 951159153 139298452 157089378 313473535 862641875 773541484 884281884 688737142 745297953 977773176 982437844 819725922 994611534 258328514 934184409 262154290 928130788 160048670 694836919 779685242 939432251 231755017 695720195 775370640 855939746 430177782 807055401 532388916 978731631 562119093 622761043 471218757 897272970 710768754 793246471 574779743 839893383 234157112 854390706 12379808 909801278 553294860 894145890 441578206 679264554 842893327 979871186 568398676 805681737 939617685 998510929 861217816 885316965 745425794 846484834 991334901 997255156 83341211 137481518 240407013 285081903 286920865 940589591 113628242 618269214 880660506 943319008 19257232 372669062 199303687 385796794 774723223 908622465 733222549 817981561 532112772 600393098 927616360 962733735 975400780 995488523 206791856 560309855 953875227 961943366 375678020 954106777 268025852 875559317 391494225 495135088 256822027 878208797 319826261 957794502 83877404 269291926 987138880 998919066 317909181 654457832 124290650 669826300 871609637 907201398 645506365 939314694 368188610 651514177 600501114 695266199 880428171 903691322 91529953 781212902 568641898 911726676 536817111 779944397 228063979 766605752 699215292 871829216 703381887 772946683 41266535 158442120 880992229 925784218 333371265 476490257 685405595 706974460 85444146 408981279 211198790 651300294 254788517 952714647 526446305 961223636 524531757 864457069 48138009 985899809 477163653 507134036 372871860 804031405 129875847 899600972 536283556 981436101 491008755 514018345 115202714 469103729 955004863 978298090 639554577 810231341 850565383 920581346 966069149 973826150 424552760 443138841 65337052 88993481 699335672 940931793 785352319 949575017 977161906 997040531 825470072 978342183 964672683 979530751 823256985 992246591 716804059 899274662 566455659 846175675 84084375 452072806 830650159 924261379 872403425 962581681 196260611 847641104 870449767 985866006 941739075 966751608 658701007 966265618 821768747 892640756 88102505 906754491 9509012 34558717 914612671 998347152 441388546 694833107 860223581 977303133 730354693 927646878 155759224 899974696 542629861 727594950 818002547 835363270 137266605 849459524 505417024 959152754 967312118 982603127 183506023 580329210 968398104 980630659 529888562 599450011 923206213 967271982 701465416 722997068 512955739 761807694 362270652 442977756 890736675 956739470 640985991 793643687 667314352 748553840 617307573 809625718 569580141 914633673 306037886 538514276 650343209 817550459 377422338 426702605 278118612 443329948 162989288 205249552 77788438 662448008 190070260 592859309 348851689 355586493 586606958 806206967 660152129 816143618 534812304 900606516 942617340 963292188 356923593 644872947 574630045 864267679 298670835 516939240 935341250 974083277 419078235 875906398 300311879 581941715 882338250 989245803 13510655 297327952 411520853 463495665 195849622 230368898 726517654 748023980 178550687 435991573 499947251 693004433 225944607 561122175 393646854 480804177 606923239 627344421 688066166 978239027 220539063 641140598 593853119 971671125 206727105 529457445 253371884 532173512 522827421 676237350 853624512 951049260 853348425 869560248 343139849 671324945 856693461 992222516 135215237 488156931 935167158 998032644 975130384 993439542 405965502 942222731 908460383 960471647 458993254 669949512 206748119 536464616 385776282 816394836 57247348 273588302 866388106 996355615 232164419 653035146 631855094 947033616 988455120 990091184 590287447 756418646 882306748 921903143 107591457 971680618 718470285 776019078 806440655 818197647 319479724 616583615 420505968 684956682 903024183 936741884 417715025 939000224 712947961 925547385 52075300 902959673 948301687 992942524 298395424 736742542 927186648 960793834 265932146 471789734 926307576 961273745 394766875 433605991 26083076 383377158 994885443 998290662 88190914 924608436 529605386 570783549 110904048 433658765 47547035 936319594 268380945 576118172 350839912 879569359 641066237 735619662 257995493 358479996 443520612 726838109 605338887 667636760 589859192 941761114 288036147 837873559 582728486 818713605 928956121 929516655 765375053 774821988 229251396 683485922 117399768 573671097 395150048 741491792 921012896 923488415 58742913 355984427 132351225 891013944 87475998 176093537 649393703 864347540 914685828 919200937 531858320 897095957 222422123 743680512 96840470 303887113 726510413 949682227 73105269 150410414 296972582 355740350 621594247 680442481 241634070 380974737 60420570 785411447 216436817 434056268 223841252 767476110 252500091 929537449 59955137 139392489 205260940 631511758 422025900 802735965 193404983 985273763 777462162 931458606 587051632 963637105 450833990 684487016 574152148 660877880 696482517 876695670 102030937 711897515 478866467 946162113 376615853 872575543 103223107 306900259 194920323 484339699 418668946 898515484 749618836 769676937 29558122 699880281 751593737 755972622 584242299 861763818 174740735 335130056 139698701 784345433 610295493 655111063 506531449 735489749 906602993 953473942 386671235 640974431 621735817 913065278 317421514 721285336 750899732 939306920 540341282 912315064 236610367 251855578 21353948 507721242 151544841 969501803 911503490 986493207 313651440 983283196 123698736 900765669 60994556 461834470 60218946 952520867 682725137 819223532 537473693 935382532 172470662 653261089 154605969 486497902 839248344 844921288 696916806 732101037 517089887 754610463 576669409 742861240 754544587 990327204 950673673 981072550 350191307 917274457 187891571 610482467 883571906 970657244 315388731 877248685 706596848 840691397 356343566 994512621 131863318 395476074 796684545 816025905 818046684 932299676 632097613 668777361 885865083 969454227 834694452 853576336 802441561 965798157 984218485 995454508 828609797 936494988 207905021 412882469 878293145 974681499 873362168 942439787 412138374 730532003 803920468 941511155 308449356 889745617 74928694 670662872 217073865 482621105 828848265 866189457 293418377 538843533 5703335 586668687 794862814 975674398 378348701 823187269 352631615 667765775 422363511 628899231 85376983 665318406 911116352 933874350 609715558 651873348 563943146 835293720 188161875 206891461 133899425 856326171 278388196 927076462 488453424 714323348 406504272 466775280 709242111 801775427 774864389 945533275 108380559 263097488 966370670 995784300 165304848 921351099 8775541 46608652 277526253 952483896 249487749 521730332 284479450 558475286 883128719 952786452 430256544 615319937 1929162 631427372 333171272 681552018 276087535 276676467 521441252 649589423 459501927 888828131 568117986 882527070 516464752 604946545 6354843 794104742 530960320 577143080 879893974 997851075 15976559 616285942 20385156 416357653 549442869 691135082 912415281 939036590 98972723 624323699 489617825 637409273 37945169 536013861 613139784 889394144 912672319 959130994 893852432 939554144 563754602 832327778 177136276 775472792 228386083 765673306 45677008 806550753 941563822 993075633 453645426 914465492 399713899 990580528 112271905 876948680 952546758 984900593 948552688 960000125 459277580 907778243 18202503 438785202 783964826 967987457 492355545 498731817 113770281 466395725 489092834 890696380 912905011 943724535 676709123 933469854 568943530 816940660 919265330 961797516 597496122 768050598 856989821 933927265 326653511 894221283 757892632 940340204 252917453 311255428 820532820 951258362 824426767 848408325 876642250 985642078 990922990 993537012 238522432 619234002 209849761 946232442 239291835 831503841 139501458 678648504 539886674 841163158 227752932 668614538 156757711 576754023 935370753 976301501 493571 258160923 829192166 927106076 802111919 961791673 657920171 740269984 426859230 452330588 124413994 756966987 212499988 665263806 38427836 603435670 177849690 734373245 343059338 677206112 554563396 669113664 824130858 914861240 631837819 729565523 621924523 663561200 137501991 751869657 880665806 998439189 367352127 849070304 328861933 639235314 91830461 854622916 243295799 341540509 416424524 736278975 602236166 937352113 344931824 788208638 291684048 632773213 705047913 822961812 815501959 895188406 20859642 462739779 758373820 983789681 35270653 975876892 228888015 288174990 187392706 997801565 252291165 348030830 726628126 749507846 440879470 645736868 169761661 484575035 221262516 867062327 482574419 654348626 748583202 902452664 656613316 686928397 177400209 890043682 483150655 682408997 731935352 910850758 911119240 932402562 746818448 864616024 120860317 410127597 179664321 316845118 762842131 837664111 526094405 530851698 893547722 981080525 989853393 997136005 451740645 817019213 934656089 954263698 443254423 518351366 234191480 673004418 225997432 898968455 862624734 919552188 655727483 848552222 285001427 988772411 805562008 915903183 940888490 980040889 325618449 841296300 536258827 822753401 333285232 378728490 78288619 93877571 579723806 725053594 764944262 849662663 757001469 837835085 205209972 637367911 357537897 391952932 523684597 692314197 527764161 923620619 486412993 757544014 770318764 822973742 376519877 577174151 244684918 500622392 621482996 703683707 112736320 370556944 897499250 916593299 631889033 658679381 406379948 996763277 161866425 396585523 284218679 931603867 603886058 812822050 464886252 831963677 897813086 994032668 951129946 964209732 536319917 720606257 721813146 799605189 797820192 984455551 918494220 971959633 712211994 859695430 805936057 879530346 550770502 905259178 655820099 795565529 190627900 685157639 692543976 920692734 607817858 923229567 901977599 944601950 626540697 852468928 77355693 270427668 548552119 644759404 644708636 889912327 783044720 852735471 365121699 731407919 763226030 950663764 297588528 806822216 386532053 973712533 613375535 936005519 924030033 954408912 502551980 569482476 67268471 126586535 620315141 973728923 525196117 954675816 363037558 497313768 618418092 869942491 785022982 831817036 727530968 979728227 283007269 494696708 725153418 853418711 728898134 741648494 442563221 642016478 260118755 825177404 60119624 418137494 732798612 924141922 243486770 912380452 24522278 603542248 567976218 967253833 181835366 718548649 939935280 996295916 731741981 873089009 64476433 824106269 991522631 991827080 295717474 535306643 9789173 861382052 773225123 907501714 326248584 742164880 253717558 604977966 768221432 812316678 291540633 954931906 654695193 826527256 407240624 608479744 320437447 854636766 508101655 731757774 651528356 706085176 632138566 651846579 521841985 634509238 58933992 493725279 448368833 977325745 540621453 827781348 600254474 994063083 457795216 631220662 787026247 911233931 420461409 525089572 615109771 617961905 115474464 729301912 657704715 672633272 598375852 950099151 884336040 886018560 74185520 861072981 290657349 356053010 486501866 752654854 482224754 532806463 889951734 900360019 210594447 895123925 510383283 907079894 319926721 684512138 610309693 763361576 390803557 458090016 782298413 787377668 618226169 860826364 979904316 998806987 206858593 474289612 899973626 972229845 39856658 235800142 466435682 934961375 261792064 825677776 309630232 857866228 538966581 734950926 513317114 967383679 241376795 760125693 286618020 536680151 586115866 679624402 692849818 729894304 333882425 553120637 112769159 128942994 21053261 807556080 390021612 875918634 206437239 504355838 653368259 968200635 226701654 796623176 376004929 816852730 860009299 988306621 607257797 675690386 157464403 459566189 879975199 932162259 799450718 886994299 231371028 517955190 400212357 749292652 393270364 667308611 581989525 772367439 511381240 546769092 92260263 228748825 948364423 975079057 984248805 992853424 433089812 859335029 485978324 869251174 773733109 862908381 227269936 517943656 503265896 808069610 890269262 969207011 584755033 749296544 752625120 869628614 609048735 910677702 21269590 456932144 581458802 852281942 60274918 431668155 446762814 571892112 937210511 937363323 405479263 915194093 845028232 945038946 59989810 671195037 79111591 140021934 71776212 414006517 136822325 691719886 40749302 926290418 416719614 879267771 285016677 341281646 772594699 936453035 586440903 847043912 792372380 921737041 331794436 802101489 129729870 590271730 650093309 713984782 556896531 762161713 352787946 727388668 358110502 507060003 299174150 733971884 929882089 947168406 885394584 978813619 896568758 955387480 837186481 995724917 787150399 871658010 967892445 978392779 361240358 856430099 732564497 794288460 140113374 436919380 180919661 620272054 216897477 904171805 508924166 779256269 840075618 914041360 722650148 851959725 602433045 683046036 312488637 453474720 750379486 936276301 329163359 802380895 914359190 964510752 237324302 321517928 453821915 614061019 938553917 944855252 833818363 929676839 160240166 190057386 840869217 901313851 317600411 676002303 41000653 522598129 785677629 950255703 752256798 835585049 485148493 776548554 565924180 785631908 212635650 259993079 487123298 648955691 435770494 499828864 442892732 582342859 348106138 801015376 622331847 898085841 67500350 360009320 966073614 968718491 396343 605208544 251049083 337689143 740672822 832193321 646053963 647859472 369455833 982315125 913416414 930439120 532210156 865481661 378264842 652190904 284559821 764039773 370852361 950556172 939607454 997964659 860322171 948787814 435528695 621646245 68565390 107729246 912963201 915842508 877926132 996726750 753810706 766828485 799612107 869511209 578477138 820388109 105702118 394334952 609889676 995172851 656080614 705128087 453741684 889193810 102432090 837806295 144061239 961009511 28295186 402326330 939148230 986206271 62856402 984930766 345514511 678668737 785411022 916929933 885973143 977176241 525305698 812326802 735536676 886279643 366805592 421509100 550485910 763680558 430786030 891802437 134897521 868124629 803529793 840595122 973147008 991376345 140499199 247456970 342513645 841226277 119225705 280467581 781380573 829733480 726911904 983296622 740052244 972938972 479589981 917300171 455295609 959241247 121111425 635513436 457768550 757135108 337884333 696524795 476399440 898403046 148471922 755334985 640913296 975181158 940763913 962537638 309951758 965547194 265470861 318604225 526635214 605441668 496106760 524480439 885146423 915252040 263629880 271935747 703235629 766340754 312940777 842441527 42055792 45072243 642911814 989757062 581749657 929489257 592441740 751305886 651453601 976706046 63951620 542744829 314708548 783373717 918654724 954980955 724512889 771768473 896310591 956173178 708058090 782895077 55171948 995649888 884965347 996424107 783284451 994670887 93734638 899606079 728617923 794010612 542844803 639962062 145892144 478216673 342090626 895273378 806534161 838682339 298817880 360939899 766502565 953262748 673010623 822719526 615449883 636499295 5260616 668449443 805204053 933199878 230990227 772450110 560633482 689068788 366967717 995097357 367534864 945117298 968372266 993208271 857597726 892844127 342602406 961460624 187887472 802485244 635628896 874881025 898561258 959086800 988510961 998876078 509040698 774712217 453779979 717045033 461670994 860056018 964013849 984793410 123502087 422815946 579421556 898045777 253062761 796818024 91860533 441320131 153798699 934955298 490054527 778772049 182121215 693720688 563916218 934561821 101772421 427704547 75801343 297600047 738122110 885434512 950465832 979177076 831680823 991314860 783060310 843718822 403097588 890835416 430838372 896458600 865277124 927681958 560104501 591079196 823143038 951759150 43119938 527811637 978797292 980532428 294574867 950876568 665031561 820889791 198498437 983297535 539864420 830507652 96917154 308909405 299059875 352391345 927184869 979134775 388013977 962999451 362109130 938722393 837357490 838249946 621101567 769257547 425841253 824425702 845698777 865273732 78047388 831704701 621667099 921443388 155899214 733066105 623512644 792892939 319311173 445508055 214639947 964385454 117837694 799245172 367609600 718513766 483711623 667859508 30412135 162928976 54465120 381079144 481435026 594432761 112148676 290436746 95358764 893862506 822402109 973883813 82227 96981254 685363803 780152955 417421830 542159051 662551660 974054024 576589568 898892468 969301068 989657163 975432774 995040249 820919667 874868937 602460693 820223138 158380051 699621685 871352515 914335024 565292453 633075009 251160555 680650488 912325224 943852405 514378482 699396061 789305672 902412300 943539244 947993706 600815578 793076182 927390815 950729937 281932684 833361587 958171345 965346799 17310563 794411405 198607908 928577449 630949371 867055085 396811516 607355761 901998477 993181223 925982588 988346044 662610621 706549107 392279429 994848165 789685606 952137454 599137541 944964959 957924052 971306082 919829879 928563117 808454573 957717588 823334415 896294336 377459332 436775805 196031006 681093728 749325562 869789563 273707402 368624638 324044108 923189798 442426884 509355712 686482708 909678808 916684911 929452812 274309444 714155717 112320025 171866926 246383330 450986934 76681794 600272606 916313084 940009722 571236620 587099448 169442715 213227337 686380551 774849819 424248136 525465511 802493456 885942977 159102683 583425367 970750915 996679415 874422288 899252133 965720934 988667871 242803937 708635543 996167527 996789528 185075225 511742447 163122703 661123256 744122473 912877765 74102833 540400750 577166984 608044158 534237837 848645372 473719554 634833818 730526379 988642362 870080046 974408878 105513492 438276542 905138287 999289298 918808402 964134970 607597700 750729235 514443413 685497799 782897356 987547403 851540353 860776622 263759902 649008019 441334841 832465196 353601700 673254740 951148085 997312945 57807597 316083194 355950874 770082670 967471664 977160164 601084764 983515142 868531098 924688703 273298854 326459207 499920592 860551674 806317731 990664552 425586053 534837215 141980070 695656110 557367494 873916288 402468475 789725665 399931658 849605991 635308013 804823856 917853283 945358002 945049208 985914661 211352833 506414773 285119132 691196807 338206198 912876170 609248794 809644555 495789290 967668608 144757303 158815757 338415926 449638067 235779575 390651918 466187019 628600184 875499434 929146715 388281102 622621098 687494762 872560527 889018163 958804151 616730388 980984410 608680240 669523928 638103490 875626435 992872258 995584409 978857472 998875847 88611872 224453548 677869003 698470783 448201105 901722244 286451917 952703642 299979350 380967409 38345334 210635430 12461026 587511182 992389478 998760412 296035033 905883184 715537220 860548683 21722400 854537522 71358702 187364785 8474773 739258197 426541285 504495973 628359606 680189881 23722739 707055264 411532075 446917401 719433465 974541680 691284256 777655732 9344723 500622579 900246383 968196702 508866457 944100371 404123840 974317121 632384209 728887199 159076132 699607584 512594724 713979898 9880 653121888 306363736 927812644 9711160 588908862 821664263 975597263 457526954 630975111 777922763 802821774 923655874 955942685 964716283 966677425 574552741 648847978 344624821 925341812 129252395 248549821 23867466 569961401 556741407 635768111 417715131 433676481 958523589 977513800 498944261 988602159 524129991 657587078 140045039 869479100 853821968 866699471 846751900 998882959 335331788 814315547 81549822 129734904 813319707 994885741 213957428 809473661 813053618 860940336 818117556 968007763 884649148 942289126 593000641 734672869 182017475 235421990 807455891 842739913 667984583 698412210 858758752 965198917 480172595 963521065 747350157 885901772 812347383 853144272 605693316 794467612 290657594 582839281 401306987 477195698 293721431 933147206 409093020 874296486 69919374 777413193 417420575 491277080 379348262 918314956 641392643 713140400 98175489 109659621 278512930 928889196 541498785 756731992 234811825 352436533 170817100 719232890 154517252 579609896 204009058 609061018 465471572 811843841 612313790 662915405 459458695 503753655 919479041 973417749 77160463 696278700 90801489 679224254 157718693 275432899 70165756 831137184 69761864 568047079 669753886 851038366 928449597 970733805 76344237 175775025 994752271 997195090 242076005 846189212 901013748 964363237 21466674 296572085 505138599 844607969 376895765 419862665 428478882 451573173 407138430 487482380 818130271 840442783 478404556 795960173 681336924 873183796 268557069 861460413 341378223 760373313 521024383 913902988 410857717 733703224 192208299 297841136 537022892 556266566 245320014 342268088 631825012 891582575 153839728 965384248 351313182 426781501 896538106 912794204 439144880 917055335 60970039 378245170 566098779 661535895 86773470 257276880 10312387 574698908 293536123 589772775 129192766 139523916 405166480 429455125 476241400 907363279 110509627 422156907 990299503 991414094 847794738 879247365 723921741 894382866 13149242 759616312 706881897 751042803 677468949 869893886 593397106 853475366 172569508 703546635 976953294 977341061 702240764 741308635 731965357 815983847 656708891 818932906 178169459 180734725 86424858 932812972 416897224 543300169 699029533 786665247 224505591 769221466 335985998 699388267 457297334 874226376 771535261 772118780 640080081 900465041 802739483 828412987 155569869 840831751 178976725 201009879 745457768 928967535 140181243 300282421 992029782 992333856 100852855 921990281 479652709 710727540 842036202 953762651 309649698 322115806 916622558 991224291 173821877 244714519 114913282 135857232 562545239 846206026 836361876 992956169 841410830 957413290 667246438 949568515 761506398 791024214 270787131 619996556 946157633 982225499 346744885 411617194 962116371 991342196 953060636 980723492 218882416 700443039 146315229 527326695 470768097 577428808 458599377 660550890 33782784 511031646 71987874 325869502 104650048 962998620 80031219 271987305 971209805 974650021 832376375 932093799 112345875 720993359 95976574 418221807 908488390 986774234 293136498 934993078 231882786 995396065 337902944 866529455 522396225 831233742 934238253 984505700 840548363 945574399 362820620 383301208 340889005 346566324 732728433 988000742 832984162 853184402 843564484 889694952 76958918 893359349 921812127 943836067 771195288 884659296 627240361 687770239 88655831 176207115 236372043 837367681 13021447 305374322 609259730 954377552 11412722 846682274 976498745 988550850 532336996 932023662 252295332 403534601 41413169 97593149 497664025 518069134 661870236 946899933 739026545 740589623 771021311 937414611 843621074 881860123 384727946 410921456 911270282 919937273 901110859 963013398 304322850 351475919 493036261 614039727 427514612 503918748 855023061 971665930 809766571 883238034 674352412 997751223 475874210 609939220 422949398 740938578 408363418 804400812 608225022 982761057 629498353 831482078 566574975 718020426 443539388 699588419 641018943 687036579 107101526 697868812 779564616 848192784 84806748 463094538 708373312 943453758 939651642 970499648 771832764 963686695 813943890 852785542 3057062 148644597 375150646 749463109 348166295 516832355 838842389 845250086 240857808 896655165 400235728 684134886 765685605 973147641 26053891 579602530 811721040 957566628 30013696 876836961 46397386 296327053 275448738 753359821 253470401 398383844 80209491 464148242 370220835 478907890 282385031 630813199 888900925 920983122 926372867 957678381 70546098 752323133 491946447 755992867 515536823 639247704 277575357 297690010 837727455 977499781 995497265 999127204 145791613 213772961 692536597 949315305 116764032 514047755 779387538 928525341 726905732 971608820 503525089 601786992 432853850 975056372 459511684 678114536 259025757 503478446 75347197 544446253 412660255 683703860 70254406 85266987 143108259 282111744 300454457 345913321 833456016 951895319 992472426 993817468 515168058 902549385 687036791 896259016 573105697 712236181 938052731 981831079 975243247 982038465 179188467 966349164 402285807 541967127 532749181 727725765 403585261 697711971 614126751 794136978 217346494 363028289 75293618 572213474 831764759 960081448 407670096 885810356 77448619 552874415 818630533 904829961 406478471 700247339 593294366 853954360 426199113 572703605 850480869 901292971 899171535 901927458 891399806 951273206 788388846 805601281 832351450 865779483 754619151 920862380 152420606 304224227 229856575 803779567 279257378 385835543 938745160 963850918 278803910 503611258 551980439 810121538 381039759 920905392 65397041 137317828 443521966 739956307 918930739 974197525 618970831 992772742 566769687 644820692 266963548 766884220 411159507 978102333 608268835 667454189 115343449 708841267 386758833 456828049 947700339 958445554 582002750 726584022 470294844 947596035 81891351 927710769 587525685 754795883 680157069 786881130 611432603 795318810 121521235 603669145 239330697 616716300 823210016 989580678 622300171 756140304 924111508 988928228 654342444 722349640 24428755 938515112 544596986 929958959 836096399 860368378 206976152 803676115 747557207 859551382 100129713 781538388 306814053 613321266 827780897 982268219 666660446 867025361 711075977 805259162 21123087 252579499 389228168 446214399 61732114 284888513 351392376 888785086 123040860 786525017 724696812 802848355 771289306 896754221 793251417 803932828 226106197 749668089 890601388 950353622 552845534 576183707 193230355 414397440 333028081 922589203 58166760 377977660 407777059 487423535 309233513 693368952 277337635 349473631 129963986 739833764 29187066 885373784 276215602 640474679 824066359 889549973 940737219 976991816 938460649 991441430 479939634 631071443 814682400 936951073 661424953 922534527 225666208 445557128 890991405 976809872 489021475 822974011 153411107 801483157 823893851 972421124 707786125 764406459 700409565 892143831 735500026 970732809 636498530 789774551 206967915 823796863 658486792 701251914 256664085 839844372 845164669 985207598 938947072 969235717 452385332 485257367 861325075 977355851 698408965 935504051 305809201 990559258 274872795 705518207 591694953 634877161 206937388 761864308 6644362 962363412 948972405 989640207 514245322 973457426 646506214 710517737 858037404 980807293 548468281 606463440 987458040 989601291 960564334 996036246 651206045 730185706 564692504 572920217 696445810 725322727 950974441 957785324 114410791 251658568 616302441 681174004 444698780 511926861 501131475 570424253 945755480 949219406 428141237 937994015 664027636 841365505 205553328 380216338 507433909 710173341 240207809 611809715 438726496 448735529 991569501 993043849 978309036 996018236 985063146 995149030 956665970 982436141 729261468 797356496 672003749 915306247 50499998 120165425 965841293 995903172 846221673 917997424 961810844 980675015 847127053 908665340 479907527 638006682 391210657 692560624 107168345 608745121 591913040 979549358 778002778 968148277 541803737 825157980 261090063 477250762 783800838 927968292 970633241 982722747 463263028 650026242 132198946 309783398 494904457 630440236 727596781 784626920 518811499 606343735 429037779 466599218 300296239 953986997 559482499 776220414 823784382 934654684 264179139 435707295 642028832 788168842 266688143 919707812 48465673 300956679 904684557 950048679 251211266 680851390 735424329 875080381 606319481 815184053 170347633 662382037 88465879 435236793 258322749 345429551 608301209 656544187 997483597 999339798 779460279 807441189 947011269 961277281 742531782 795542843 888399631 918407050 738501485 860453439 950667306 984397041 652955789 887570592 457786382 825243259 686538371 690097228 471069278 935621586 82717777 236308691 978675891 995755710 670748486 774123982 676068441 917092286 648128698 960491202 667822528 838484771 706251406 980273393 636189971 855681979 907468494 911707402 570483297 783229074 794544542 820363317 691987042 935554954 565591249 880899676 464019450 842019545 737502814 982982944 958440776 960795648 898689297 959907376 86054655 741116730 984624556 992137906 121092868 255467441 362525485 885481776 336052672 583947723 548233019 917707571 577424870 770422531 555923333 947611857 782773336 931680619 626765987 905293384 136277775 358979583 100461249 349290808 18371089 601851277 359458206 418175880 89802362 677272630 231922045 315588570 544938491 642070667 632133183 716492145 53137405 291986979 531899663 744192958 346287857 585079804 390169965 682357427 909355037 997332600 747108412 789360625 2499350 134759838 304250901 567142184 159924015 325011126 203113198 290243841 585253378 698174267 302378460 537568124 920600130 972568946 599273595 624714563 356750611 953781775 414072410 561122300 933834438 980365517 420445233 585584676 678606205 863122781 80108856 457620524 148838278 449125717 826756697 879578272 412804591 843768138 89868575 459699484 577913493 650246198 648794977 909975033 273866211 686020558 277281373 765488267 83746216 966308666 347310912 712417489 846271883 986248639 816193001 822722443 936228559 950968780 812496524 837453530 842868994 854246467 255711338 665034833 898752107 956435352 594581548 660950081 434043867 617774859 50231748 704983217 217300668 404691427 697668410 848438366 914161400 995687351 251641871 915649108 561658699 567456155 248154271 709671223 484660561 576963115 306887198 375315977 37015296 649302779 327755451 622537404 325810071 930356677 325476796 856891337 940697370 993803368 647045920 744803210 757997979 864030200 45411209 554559478 553030360 559821639 386126922 661995239 377620476 507564619 513516420 908867676 923675197 972701863 483261726 890106543 33686159 835374744 896554366 918247652 193527016 905991693 866877701 987756021 285562729 351921019 753749766 769800450 321282876 514556247 868913719 916461803 407676251 496997656 540544422 821989380 914909109 932087074 868115145 937249525 822962655 960903628 824330103 848242946 241481450 260033140 58731298 498157463 492152340 694705596 1579305 175008332 581847116 640311483 802956832 832442008 405998744 730875260 709183120 788717889 64135774 103581345 626242017 650130114 316522535 779399251 428616241 528399395 156181910 857766143 360941500 701677487 786655121 952429553 812792985 917269643 112002914 790551579 29649646 361906661 843635121 859031560 189875834 995899337 676003528 930745149 838304806 985543022 767302226 943224060 518743522 940535191 60301623 714305439 466528226 971278760 835174797 867878074 386378642 928761754 923884010 927235916 367152422 520604288 668561215 693764809 228218740 658488831 662355320 664738355 726232642 957663626 217057099 415283629 300406404 845946123 369994646 768208616 677749084 970477087 678224458 742979514 706054594 956806049 416761349 877998748 937063837 950114496 558828073 930791235 218973982 707508454 659604206 728749577 710737053 837436016 558322292 822589212 234447458 373737119 127172530 144626153 51174493 310443293 365309222 370907011 872666265 902347723 425817394 833509975 432660007 724093707 5600902 45991860 907181739 912781126 463737551 858731295 715114730 845425213 735955248 785095495 209550920 440038193 749593383 849174360 558548970 747381056 705595395 884409736 380524278 803961091 324263004 869909480 725898860 846867440 153909804 644657253 242203281 972120193 777915971 802374103 321932601 773208294 188464237 229601953 479375214 706767559 783174846 844729113 646486527 719566743 164157220 168684628 385492903 391333195 941512986 948913905 540359296 685042820 5476912 240026897 947408934 996182160 99723781 856831998 637015720 666535945 180664365 780263500 922493471 956679877 526041478 653768682 992278991 992625161 194787049 706997270 558083642 843306401 91797727 136375360 19337485 674269166 134765350 867262226 987582632 995298141 9932804 360894188 321861082 595193642 935302675 995079652 691029240 718965293 132185221 691079636 690046546 832551151 410993374 739526078 532446520 595631871 127797818 959103286 695770687 947708953 825819635 986244493 108553065 774757474 901864024 965548231 169994876 830998115 970798222 980258488 352509103 530629179 959172276 982356915 402843032 942033913 707724648 837483319 635073849 872691045 427966905 791418369 695779575 803118873 131342770 403867974 793975149 892140183 285063434 302255324 451645347 989029206 548429541 959196139 534813656 706664848 416197191 503433521 264484326 830684470 138437856 826263267 10434034 492359464 602602010 804286081 943954535 993728037 5132011 724723832 217448227 543593579 600740958 860561156 925698893 989154338 188531966 614721308 190786990 214387249 45970153 371644203 413553454 887376146 848775529 959515976 748252370 765241360 686374847 974099929 800720605 877782545 529259369 776814118 301441564 841599882 171076669 380164855 899030199 907279987 117063588 851387723 775191565 876787383 997139172 999237770 304292792 953799035 193299099 440889262 228719776 374144346 591933477 782977200 154546759 688997467 947970476 974969557 956505108 984618928 760081924 817787923 670563232 754743256 72497772 974187952 985312682 994549004 114196301 426573442 577581199 779022931 756406406 934082982 687309922 995627586 642156320 748131194 11037338 946142295 136401794 163402767 121375533 997663710 848015858 900512262 44345364 994105616 842856704 854059110 638393448 689350964 423334647 619129392 939125345 969080847 603628045 667729320 260558929 304316444 81424086 620684530 488640021 740979308 459397485 810943113 532129045 665679020 913022076 972237686 424766477 872424635 529669368 913206392 772184138 847135517 622270834 659417270 880283133 920778335 490880967 821079108 590381976 704710178 572214484 831531714 688864679 859156894 713354373 870295220 871980010 988941861 640219696 876150707 686033265 917322882 533592825 553394815 315522310 430088987 903184415 919738832 175497897 373828826 948580451 976819204 810615345 851506388 64120346 344956839 429349437 740310744 100720826 896228865 250104485 380195822 17723102 828329605 439708763 581901178 145754943 877348487 29966427 745040102 400065592 724312715 858261148 977313792 600682710 861397087 487824588 705816018 505774568 955450201 234877145 318200381 622455063 663938852 74675537 83609264 120315095 797557865 470552622 582392631 740597540 766809810 622151047 869580870 629780998 971998825 234608268 799472690 296093692 589155234 442383388 774947041 101576151 693767651 401649310 412049858 47529158 690412794 627112601 752867777 90019078 590054599 728065722 865365627 601493437 931810065 305968877 591227648 219333056 364198610 810521730 902541938 608944875 910803594 38745841 223429043 948022829 969253258 771087915 994028091 685070976 921430982 184395449 882727205 411393653 756067662 341571312 582432468 10653589 466690690 323501275 846741851 347026429 574394464 65356019 119806350 31122773 447900117 651625978 661752371 466569479 734021260 596582640 775020796 247952432 772086477 207282919 957906563 957950193 963659583 197308183 483589532 987641997 994723696 631542905 983072547 34286572 274627948 777933064 980487438 801911375 958521193 350055607 742164223 331078022 710815806 13891015 694054226 87680884 425057940 501982820 650211535 177851100 590696834 888188380 953563097 965593410 993057107 856856044 886530246 366468914 929320532 862949745 940584688 725514314 773529681 529340798 578012984 425493635 590809958 217320384 441037710 581493847 807131274 600317329 823446881 133961356 321687480 208662602 303945648 642284818 890662064 117288219 320752949 773351239 807037530 307455895 821347522 466843202 629969167 998201118 998557478 811494119 887456348 200512621 358750035 722167628 778864362 671888551 824074958 742605910 878147924 624222023 845768958 879343399 922050675 997367287 998607428 202041919 979979003 323163164 853269933 474218236 742256890 346412896 663291611 546417590 616208338 277694328 838881204 311447501 633416767 730464222 839541424 455165150 658152149 818079083 973315930 797392045 963978050 990580625 991790004 815853810 913808743 864702115 873929575 808988677 994045463 373232609 816696259 962807419 973366475 962450234 997065819 893153719 947556261 613483089 805090985 202331850 493721878 522843174 945252791 694031117 873306875 483181658 551592036 723196518 898188543 141978479 710095515 990894909 995763018 748766525 788596228 966804870 976449659 638476450 837473153 711556572 887716595 180244420 714233339 995169430 998825446 338975383 616905025 209910271 582027970 160223063 464198809 349018084 936755731 795455534 874365893 44843226 908955206 842603827 959098853 130858365 205809933 901777434 907569952 345908563 979376642 672514756 927030376 245187526 583393617 448988824 561166885 835271028 955445925 577474971 707254100 68090049 414403904 48664102 573482432 695376343 720248957 91728243 819901676 517704024 607496481 906379464 956700452 991180659 994165185 996295332 996458416 460638186 800401835 282728676 632465474 393085647 726101760 601937190 858905467 375154158 477439720 406575913 535218325 485772390 779977442 531108193 605557027 473280805 697981710 328469215 665936846 270105534 562680217 3401298 657090859 637243491 699870569 722126213 756642315 650657829 683545696 119067518 790061125 43627560 622206359 730070571 949619322 104592639 161574962 221601527 429991551 505606723 814917867 413468896 514229109 901646216 903484917 658338188 769124557 122282880 208775441 170332588 505495808 670513981 996194142 265384480 990623845 786332012 942972781 24145868 391844621 238079896 267430977 820192869 887925005 288449 149314717 386781130 499178611 791069384 943057611 148553337 559208868 160572809 854714607 335718422 337962966 255642967 465723743 215386780 856729968 996903058 997060245 21007715 982131130 478087277 699944945 877388064 913555841 889125195 902499010 771562441 988917418 244843447 249200695 498754927 532678795 289721571 679246014 275274807 524117899 390948025 825618230 421731685 513920357 728958389 930305595 858844548 943435137 922583860 986093538 693665401 878112312 798877569 948944890 366184249 862732037 622763626 772655953 148233266 810982089 77604032 616599279 418529507 953374395 930967098 979670879 820843270 906146097 158652737 333472976 628640227 836828515 583609785 738670445 127019698 860498242 572943653 834535545 763445817 933569783 605437297 945679364 928050700 957110390 673136663 730125888 70817337 85177840 67553424 329929786 193926964 531003531 71764575 723365896 877622900 935507830 850879807 863880509 32824447 812632926 206406905 348384144 314823817 555232739 219478405 670987749 939025854 976818835 515395503 924590644 481141635 746732828 702455606 853162948 554527872 833352755 78004730 646375895 22635015 304625601 685374726 917775894 481470832 495382439 55096912 870182208 265986058 373878943 411093329 765105668 237450343 404460472 805012161 975628866 490887534 833541611 790851944 872901391 204699700 866864072 72139308 522401053 995134180 998141413 307495007 695296006 327135335 334765990 905078184 970662023 832883483 992263657 989572959 999295846 235934396 635056450 454929873 966828567 71667822 446304811 821872183 880891086 459203371 579287172 96785841 356860827 739717150 741342623 474754733 854854601 716572799 940843383 712337189 795374685 436780422 692547635 939797770 976268712 178875766 477981557 239889826 407125970 160833508 699346750 72601461 283298729 661193803 906449392 619475290 901246719 94444869 680935062 57926560 478097596 811678960 826120122 135444865 980142707 243654759 595067769 972154745 986335315 735737152 934435418 867134358 957730737 652952229 756548524 597209317 720604550 90407302 116356717 568806335 597107417 357023469 476141480 993936306 995619364 818699322 864412701 426333276 620488927 842303351 844564997 126826857 484532852 357747607 490544967 85505950 519523071 961251849 974889551 132640391 257045410 957504858 990805184 964200463 974492997 948439064 984252031 944543299 991467589 465832343 489171975 895507940 927490989 43368046 217385253 501608094 739215478 291838272 390756268 487566757 611738173 837711603 880013225 72042189 474582836 490399726 830306771 371130620 475972123 363508573 772399237 420300782 789620329 960831256 964878302 495761989 983491799 411605632 708397532 760157603 930911180 844717786 866976553 116722607 227350797 37538237 653011493 396532277 875987805 309075662 521751663 747690048 902124335 964557417 975463275 934006391 998542882 92226922 225889546 183234045 897753240 793649892 916124247 722105319 733470450 840467788 928429431 355627205 642743979 888272055 923122318 158604100 371630226 803568070 865035677 909242387 948952738 480636928 562601543 676561305 764251464 252816251 610671999 771618758 774017870 500819263 579958530 898693170 924264670 305098702 673558042 166786698 948058976 433670327 549915987 288306432 427100959 395820012 994162416 382452552 939453124 881409296 944777250 236838549 253195639 419000407 425617052 352064913 845947323 838030510 895366907 321300299 972563045 629434760 842077942 512328269 834223487 611322443 858512907 929917500 939750694 153242675 976642830 916193314 942349419 446671698 671049171 706537814 991680892 306034760 859188890 327635428 497555433 851304845 974054139 37771949 569851964 896179630 903182910 189431629 692404816 658448610 903496024 129698335 580867821 576364504 946319693 513334740 640611515 471202959 730925498 91198453 252999211 496085715 553514853 147674540 522405160 929869261 955112039 437276253 486605640 294304048 982383649 254276666 673810442 878159718 950825948 859747178 869085815 62113685 933199258 955830662 995563198 274064921 546365023 754240616 923041162 781957403 837452917 682142859 995557382 117183004 353953927 205355603 535410892 943874842 964954313 396825340 845582733 763037292 849481983 202218151 307223120 860639239 903687300 699963843 811919778 825833412 834579598 939213693 958816239 514522824 914565541 893046996 953883029 945743277 971125781 677888256 760187092 25601736 336482642 753230768 922459469 893488860 942006128 523519335 917422619 325488588 536378474 1728374 371887464 987638649 994154785 835226833 962530326 778698295 915299586 44858187 572646660 165751219 755752268 833175484 839266957 82478662 459264884 308205414 372286826 905709468 970279760 865742217 916688003 37646751 957463427 563354214 703872221 606925127 861634063 75884543 245127952 440343868 739915666 702891553 814473987 62182299 456124576 145227337 685255500 951366418 963421236 392530565 405174583 142735358 945987431 542674069 896295493 103463472 250787040 482946278 900093337 65231418 72373105 712088180 821585890 703029971 907494602 770368427 969662243 657290296 751905690 250528624 425338454 801036514 857617334 165994850 794800956 726982642 805029394 768527771 987558283 56017883 787761903 469222566 936717955 56167477 464563450 597729957 967469843 544517815 835857191 394843956 735499039 72244477 867884563 553018357 743889542 527136114 533469307 54503067 817477330 599152606 753779899 308375106 771839569 638991511 644157625 458553375 858973707 572993136 844599032 573477495 599623159 9985691 723867129 195918650 565923008 783293380 863516661 458643945 927800406 916960093 925985244 377671473 833750726 413576142 636691043 706457167 964776335 61196443 768571139 809113233 945157211 57722310 325489507 539370211 562468854 978915877 997095110 936553517 961121331 62025843 380106350 561361240 989592589 920065810 984644760 901188196 972814261 424518313 451316417 178332650 779459287 39428831 228239596 39540728 451786460 107511594 784316053 657279883 803686495 212362511 322215812 345843646 858301021 402749958 936021855 488881273 817132379 815696334 907904915 169292570 494695243 888579153 950623225 299830943 397837122 38684756 481584752 328504628 794755680 926702879 935316029 527844150 590483445 251622434 582734063 91774149 778538536 37358917 201830410 43633585 145455690 324040832 608794107 844541563 997687184 940388241 968466609 816261408 858998480 881629399 950645711 677830200 706555056 818202462 897769309 181925699 281508866 361911847 503488999 182075361 823724019 256001337 806776983 659818032 944788887 281886409 949255616 601845937 771356129 538810326 819456944 369603262 445302746 258478574 686400993 388313146 919385519 330674566 380819146 612131696 796547869 792829934 834265034 138317690 451189432 5102486 340221239 862722693 892356397 949663820 953196684 256062515 395315093 96561345 672305021 706369315 771253960 514922830 986900907 74251045 981989871 703906195 946263990 243668071 730694389 910688250 965846006 335048164 770530195 483628252 788063962 688796801 866773160 859672082 875183515 573443306 593684884 126960066 942614970 608410068 888520117 268776870 808776618 326414651 480725865 884293755 891439256 619993866 855344673 127273988 993459879 50547006 306408913 121923386 564880896 453137602 918294705 230083865 400410549 956830591 979465922 197561916 621418462 703543139 779886578 319295586 755516908 345498895 807856142 192975242 912706799 165983482 765667723 923367320 972249784 49697276 343980211 162368731 912297008 154553470 188921703 684465850 704761386 461463615 689646686 306748402 757465553 975151719 988975687 965564278 982156993 492456565 855832590 914495229 989349447 387428428 757820265 815711727 890195518 689762722 893695081 308964569 659578150 368124080 961752541 672959391 690557905 290029070 535774459 9867117 569205681 673264905 858824397 143585233 192970332 99527206 545226728 247245831 763702685 89256654 699503692 318063887 439736888 111464034 585890109 798000169 960387680 818046959 884139295 726287713 775074747 894366217 925614175 38337188 251721679 250240466 911802021 742183011 818072427 416145247 903974853 260009556 357642941 552180217 610852673 444917071 804042032 847956142 954585730 339165667 634036664 433785166 703498089 821797685 937488867 248915723 763987512 170985938 259884816 801306241 955909284 626324313 691456150 543146188 636729651 954491189 978856486 160884659 945153285 911067528 987088237 382961079 750613291 283551384 524122883 19852215 401236173 41656658 975771835 56909849 665025371 828324048 871488527 555828750 665003357 199051767 503215624 153468942 569154929 726376980 769094695 809282735 870711451 675231572 886973006 481148467 605166158 553372753 798628114 340690018 781920467 132130102 628865534 237091509 508677586 804680393 915426772 544089295 548366908 886614719 999345980 400902344 467225322 84938646 281017724 512950669 895786600 312104398 800708364 208226741 728111360 252734984 269335244 928624765 981338813 569476482 961930336 55900744 532257060 415711112 667326145 945353775 986310959 235478917 519934038 561116984 981763676 795531549 804904835 812202427 918759283 88076251 407973134 107529518 295357055 209932620 219849961 371188507 750537023 409833144 528428747 659153347 663008288 390627294 563434218 590332581 766692461 754763245 829051613 404002441 863263640 187028174 241513926 681301997 787374290 344463563 869507403 301870107 792810219 745795656 763059211 142679411 697983774 952152943 953725224 432484565 857965491 727806848 925182267 928299513 995674231 119787476 416180446 353970135 892944932 897000974 965053361 145745217 442850431 605407201 752744444 935404096 994377912 740386546 946953833 54283122 445695886 28893782 505483708 158559521 967822594 679296847 735299661 816107610 966993494 961050446 962150032 967578075 970237707 722488301 895602507 861834730 865790270 240097423 568847583 418575155 678851047 438856571 824396022 916993434 996118428 54738261 852873126 496939177 576173884 228487372 425355150 862400165 908862053 240733585 723789322 636023457 755435010 58487220 113543834 692033428 945115712 284764334 477126003 644475301 991373403 970173521 977345345 186452029 587446434 615155800 818483968 877206248 907544836 965271412 991260028 51872811 700572530 400113815 566802755 764983942 818101656 456857719 563329578 774189362 833149878 423352572 569289270 428741131 442076773 829006125 888994427 216603007 494055388 723125609 968089117 321061697 364116705 166736332 496965571 836998909 847582143 292038420 929211484 307436043 631798980 388378110 818500907 754368209 809177027 764371135 775551000 245582243 491774237 567877707 958126095 572140205 979524392 614596816 822059619 922011593 935524998 574022129 629674697 462255386 985460672 875715526 952654029 335063508 503135923 997204415 997574655 633876542 892002881 891714117 985387727 908127241 925371748 672570671 950879551 336705981 836808814 881127593 941860424 339764791 834556933 166964742 455103643 635097364 716821115 462014129 600230776 182667471 489786060 604880933 973103391 670380785 735272470 170726733 296585906 452471381 582489480 183919632 688585658 9376341 670797865 259290466 874939678 259435842 428658250 349178312 766610368 112030230 274420769 81057665 981929807 428382866 738057817 489445614 723399463 339086818 948706849 894291303 911539815 302217299 780744704 136892714 610659364 645073976 942587485 976457047 985533598 207514623 487487196 315317882 928927266 488204404 648136540 804002966 819779972 176512691 248093860 783916762 836177769 160174558 284784724 148451612 769449250 509147539 977025296 132524022 916100284 475829830 907314256 118824044 347190220 741287989 870816903 916915936 926825725 840620447 955194791 876863071 982400840 245364051 455851871 520137149 680555135 681423546 769069594 372725217 841233385 350477436 876229283 88856353 271748513 976883763 977352817 352316351 761849386 126858595 226388869 126948252 847403338 775514967 996949882 428702185 595443518 685805434 974273989 560122588 923115929 901722830 977568767 694767021 862716554 856175433 865657494 842663246 861856767 230607324 796552610 876124908 885626851 262833929 288736426 795841329 884992368 401594981 936704532 486147416 830449597 942015868 985658045 758105284 769597918 444759032 879290415 323703259 982931366 862250397 915541051 240890074 423614990 914362981 992765418 10058874 315048190 687338875 983415772 129212545 854413374 534311351 570009009 67383864 496640915 457970101 707311766 154821362 708540968 796518613 844411556 680827689 914126163 138319210 731617458 717941249 877515696 885880753 987134397 363393837 669697665 139600981 349343634 696338866 851653534 56227224 824654283 805302184 877802348 630922535 774108158 398545997 942025060 991861709 992288042 541693449 882039987 565102858 869022450 639504967 894882706 907786248 933377000 889005624 921968357 345597147 470815940 732288887 963550211 742859590 812970997 249726062 989674731 11172989 247682241 517260816 796055453 749336822 818364550 568419648 880813838 770905460 784491775 617486646 992518426 192324950 402198855 600200594 740645713 174872611 221443024 137172471 236913995 175189983 465920268 356796422 755207627 129161175 211309287 207336063 696602255 343365366 984372621 346338729 750686187 235030886 692834769 282300899 406920486 268081952 434849181 698222995 704216200 290321140 371008595 24053559 630682252 907160757 991331377 412382185 740867627 119173024 908130340 123876802 651406042 260691185 698895278 68061789 331422177 984372501 994443261 233804763 814803780 34011315 945449463 380254336 671864716 870589517 951794932 740979962 778342350 523319881 694654918 660219693 978083567 200322749 331853950 628368718 689344715 536393720 619362576 929125401 952120033 144085628 232878729 683418492 909956261 980590910 981923191 496188883 806827403 944610213 968216913 889907953 927107530 65908533 205012287 665791338 701605906 47246327 655675304 554037217 786196843 913417480 934437894 954907577 971226017 358330524 564505132 381974962 854971673 926916328 962458229 515418316 752544956 888497894 931728535 170399402 621891432 564631326 870862668 461439946 550622960 763095796 840579938 602480071 623297391 179770648 292257126 20755590 421431121 209532838 730830305 127516262 839660485 114746141 467724525 13634030 550049031 32167401 214129207 172708313 183252938 590735098 613008038 550985310 576706754 917873484 924594404 978499360 982478099 871639906 872100479 373533731 924844067 571848438 683556546 569007630 961449567 171559421 360401846 646417496 730759250 829126089 846810615 742773841 857769874 343567430 983560552 597222834 940280759 237955111 259811281 328754107 984841057 520739703 703297933 673711529 859202326 830817296 915703068 193303595 896995031 385227708 736412265 670694733 993361394 396578153 915526348 674351450 695851569 733337667 790977993 749570438 760804214 97150625 919541750 570989320 787743362 50798911 108244521 768076698 996389899 134467097 775973949 949581181 963642244 643878722 965736155 92850799 594809595 794790719 901398227 673788062 827902583 333860879 591998985 138969629 268557873 129696841 963014364 593101978 966375609 41084494 349250556 843637164 974851689 543944059 743429449 841318485 902760073 789752686 888282052 401897362 977092821 691982966 864552088 774809207 857037460 978920083 995809540 910497670 974822561 688854140 790466134 490772856 666931394 312134774 703370150 724714787 976662325 541769021 605972348 123459581 418977315 730755723 875978495 373577458 625884494 584630723 642400944 962575418 990886897 484158751 918036531 578421844 719187188 76457079 244258995 830493575 939493848 412307268 786113455 898051785 909677773 395371614 399040579 659786004 988951207 598128380 613855627 877038939 958987587 885087085 986615990 698549716 708098840 18797090 757662863 232790977 283608790 277527070 362606276 826233555 958831196 780019409 874976993 611681045 912717787 737583166 967732664 243661468 913894111 769919015 829428112 814501392 876351594 939090798 986585601 534123898 577618183 963185113 990863864 311424124 690903470 46178602 708756729 906947320 986865795 938537748 974438529 656785 232992215 866404711 876022252 933177927 996962594 65524494 711353151 409799897 862342338 659020316 696561080 327168231 352389356 944070744 974159208 338209753 699198814 484057598 523850245 742775653 827126614 450745512 540353994 21207999 742356980 358713383 929111677 550012779 620541427 25991279 474022250 759570297 838283450 511195988 749332380 115554582 511461363 410680613 845584555 273454028 562885975 782202716 933087626 796015184 877428228 749065906 853485631 702490630 799637730 154156702 472120240 847327144 967642313 443469602 988409651 147872110 430234947 607358797 844960717 880392947 931147485 635670660 686330262 605262978 677832690 333181692 804265617 681470535 980930244 258700948 521081057 361175435 861107417 728260578 954794095 213145721 561331466 54210612 965225090 846180604 944016801 479051392 991002948 701916180 768114190 421963004 780027139 659605813 722625863 409168488 935658882 777827084 920820742 149758205 615637314 496270261 821084199 475514070 491789817 494576253 929932727 836143769 964780736 85894337 164952582 447068669 714478199 801815230 952451180 814270233 828031876 772412041 983549779 180296982 829178285 174157541 264151054 491209124 565513856 950421075 988979015 424737988 830727818 10978590 761447730 755643452 891919081 53174807 870904064 928834443 971829358 155644900 198280831 550217806 654135683 683966166 689773903 937904891 949389165 718985855 960527429 583293872 879431991 901665910 935026546 144143605 771014819 121990589 190186486 987139833 990337395 25984035 455821406 460435009 769242748 493052574 740430580 145376744 739639818 713565128 924981571 295747823 392366969 209674877 631433691 237468366 270492766 320851761 650094483 160800045 887426743 517506725 612149148 779140030 974717751 52985686 89065299 414129662 981784623 789344738 877376147 787995169 886005342 238457309 917823886 629038979 959942895 643341528 747897431 232122441 469201911 374213142 853915905 758698757 943263879 102601994 242922417 918540335 947305580 429670686 861087551 604406817 868888982 719468902 777880185 144539241 924005868 115717191 281875307 651257678 720312755 885090656 927727399 691975982 896936128 76489441 411312922 28067106 400885454 817331984 933684949 339922096 765806277 528724038 986608757 457757203 746357820 738937439 787323436 712323431 828789446 90929591 466629257 988720459 989527510 743425173 867931501 453998135 616848975 873081996 928816413 255409321 781864529 349672911 677159663 973329085 989982679 784964926 788196414 958899865 996289721 941441262 994230142 914213986 987599972 907335419 939329612 24228945 182906422 674110664 983792995 953295821 964230034 400669969 989974514 864509417 912753764 242220214 495892793 297312785 750323682 765224441 912683850 486678121 555743953 972721240 979918438 434783104 661920727 851579845 882392579 196057273 766742908 574376184 846532803 212050660 315413907 975439526 979989658 583796649 934313729 326278334 592786822 79310240 527089873 853779861 903104816 367593931 918001682 249076759 297085524 173676417 713604799 296891591 336339225 644622998 806302622 689137162 984836405 56572357 576350385 128872867 954012767 916378826 965197695 759804691 872854951 910025810 975586586 741757846 914084133 823354624 879639897 533947695 947444569 373214291 738678109 780235997 809119598 819198154 843431060 615160575 950559163 787501146 824363694 174264648 797516516 388450297 474840155 215644389 307392272 437854837 485109522 91762658 700034967 281619981 316551669 951809997 988833922 483642499 733525097 324894963 810790805 729284698 744439211 29184376 322510769 165557120 848714134 114925032 678992533 437433829 751338104 376807486 443958720 49765163 816659036 349455922 683641634 753151601 829210372 527107335 723221123 851452879 853017426 326764026 699301111 481658237 923939951 515661435 649158250 515528001 742643000 588979117 656086384 809152802 811418687 483534422 751678336 606698782 722984697 410013708 901789183 461507947 559876186 178961808 597850702 111949441 352565929 847040322 938359223 331495952 969465740 791220647 908386989 734405602 882946332 426630666 859260230 861916935 954965058 605076108 796060879 2684360 439456346 295921755 888594715 123251638 518027560 911398331 982151807 65424691 749170040 390756334 631594908 770424222 836305816 131463538 983974561 657558630 765539956 73680076 327476061 76045538 159539636 909642800 951957124 610189999 642784820 480214704 861058010 21543955 593030464 77939235 704031361 295604243 626717564 880725186 990033285 461336114 514300589 639980596 755739363 68610873 568976885 300318205 443956694 386797021 913788113 344737003 681542476 116395675 483554921 517846966 754699026 304120074 351777435 938260824 989222471 854030195 927217249 417553552 651603996 448166796 915129176 216312124 275203268 488003770 515440094 198199547 433162994 173256740 680044951 830214344 895320409 724737679 841860422 64658540 198738024 10851190 941089954 406312507 949010582 817850692 958740022 878859108 913343098 918725153 956234530 470548801 547978648 530577901 559259358 821994981 888433548 937853335 951860092 372412147 612679390 637755389 711086175 852654245 916590666 43247364 199405517 419876902 499994084 180443142 317171460 202663755 350376280 68698985 661639030 378692991 566631246 540397221 697580554 855760706 998777176 66361345 590026346 979790728 991559015 929618556 966591796 537068113 987142565 84740144 837946273 710481336 991288266 843325475 973283813 465842023 687954244 496867094 592217101 599421015 955271468 725108673 822839409 359201609 744287313 393072934 727964166 943467876 978189982 779169991 897030966 827095792 903402570 275298968 422874240 773250196 936269818 177180040 270746748 127073512 682395335 104096232 235590954 134120537 695307083 952453157 985294065 280969173 888740070 418437443 621008465 329242596 981504972 589738279 615771737 364308403 876581019 309381649 673307700 28761669 768525671 485518254 875656657 203312559 443852572 279722884 418193063 432492255 966409436 284542148 716204915 913715066 955700862 396150662 437193146 202118799 508101763 727580847 833867516 896621535 954929921 152348008 261077329 224158182 931903192 685777088 861963053 300927630 982209295 35614234 169151015 582863220 753884511 341313682 899524135 576746912 596170289 177729423 822190656 980684047 993914089 625654716 857323485 257529915 423650351 552535051 629603851 277322394 675737581 919557098 931351645 986858558 988915835 789806942 838727519 449352772 492431230 269888630 778256813 67583231 572335927 986609405 995568292 153307463 478703092 895634138 911541822 773243077 822891000 702893184 998786935 796303399 864144571 49606484 56105518 905559301 970977947 268911576 851180466 513563964 590744572 878574721 995485635 682502918 818608259 346479336 748899861 4965452 551251374 949064905 956143049 550713709 914837827 660129305 969199776 167595749 489645468 669320899 740012960 502954571 860863485 935225675 970499543 285422792 598113519 158277043 830731927 818134350 863163928 357191307 636669801 470212696 825662831 928941500 969005811 699050544 832869962 637356102 759106024 904253064 978712288 596743521 770104306 313149155 872900291 471835776 783120700 545506009 597015670 430043446 627072972 498893128 620116559 304000938 316239397 709301032 872036299 456092539 758367290 520548503 635173129 555091508 904160367 286596643 514699126 789557700 969934595 943964989 969688709 516990139 818643553 790439552 819862983 21837791 206872549 952369972 989140837 210905740 277461147 395254517 527821596 340342599 829888536 968193908 975502473 554383688 664571108 707665549 819131138 882125358 974761451 241902618 327929072 783914325 945177331 543566319 904470299 776822074 993431352 993438403 998847379 39656570 317219070 50956563 733605152 139112606 684179636 456546970 944142384 550595831 840874953 953914453 979265220 746713607 784810127 54152129 300364836 303921261 419165674 302784712 466649053 661178942 679316243 773588790 829926004 810457320 984559178 674447708 793094116 807404341 972474132 494600592 835970407 638064536 747169674 162241221 453240975 952721314 953356154 337203988 476361420 44430783 116016479 466214127 736880883 649157116 675115868 514400709 888912200 541036823 677790235 889525835 970623465 288903187 399119429 761071498 788620116 885506471 965414863 328585460 979349307 234225688 806684725 894628778 933764474 108884911 919685484 861924884 950182467 677207844 987751382 809232329 985814833 534825038 885971591 985097694 989950524 526550361 785614328 766925720 986135888 246820308 849352234 547979882 949315783 978042545 983091042 382847668 682856021 492876398 753201326 85678213 765336881 561686087 959163682 47002553 105863900 789302742 891173258 354240039 528641717 18866003 762967308 503597409 813588685 653677730 978522469 654419427 992062076 831780679 963064661 82060801 149783610 34672105 698829881 102053986 599630830 614220081 867561853 807863001 963820671 134722024 190126564 293276191 635250267 908162167 992122331 86702500 881717701 747549103 776540380 627248494 904145299 334101666 780556986 656474044 825337310 590811958 594294018 565296459 898803004 240696623 324044283 503076718 719258208 938582873 967976712 289376082 501458484 419796667 646438513 434033145 670152464 212426425 802478947 246385303 772564279 908169649 929856462 840864727 885034717 497568918 768301137 765705388 998657903 187484160 487763502 518639449 582408053 55032453 550716665 820835818 898735555 319403270 455422504 730069563 909515767 753733914 951814473 712499054 773448704 576633879 994574084 660815896 932708018 998223579 998851101 673773813 711412242 874655373 994431594 913420350 925459738 427214952 453451483 879710341 990283305 359954495 652363035 376459746 501411608 506996976 766960858 469453587 858737692 89080367 699348683 137951393 652635057 233677394 423311365 805749067 940720207 360011510 783467875 154358726 221269408 763580425 801799108 884035248 910190295 106058428 498190367 433053887 970757064 899488677 939574973 626408878 900850866 39464538 194161739 690616915 767612993 751500160 769124642 57008628 791208217 19229003 825386578 279198846 422271696 25191199 685599095 399218972 807165805 194804269 574609695 69626106 521490774 354229545 990951696 462582568 997494332 556495543 903602901 702493373 984943563 481809065 822369154 375757598 597111016 285824682 711868001 504857064 890157010 622052868 966413265 73234086 885403075 950607124 965644163 577716626 789994859 386567991 699548398 301476349 717827625 37829635 407287219 77329503 705664521 25162369 736038223 335865868 727479729 775358529 974850870 809850422 947886778 471556865 948749568 154404767 305394722 862215062 873912078 175587619 554696880 84959743 387756181 752469231 833660336 535104327 817995698 4203707 797262922 571777510 816883986 562675942 920241378 651414897 836007553 100132784 538833011 215258499 603651102 56640528 302668513 170743214 338527237 345056661 589165824 641640288 945580886 65758057 207106335 815271113 982439120 311948101 371629241 318127368 512103899 688595775 769409940 845820885 973590376 681139131 891505000 93168269 563373978 423138729 611655533 9961134 137854626 215541890 576507020 589456278 711132005 725260505 883009537 173914238 770081832 646168108 754952530 237542712 509845066 322618669 808281716 906176126 927040104 776874021 925584388 624151986 864716331 816570196 987737788 171241588 263997930 911338253 983878470 534152857 874602974 513897796 517467634 463288913 622815098 684792291 937818264 644721991 978986225 172361163 722562766 473530434 516245436 848590472 870914205 935836088 993241831 507132998 963086883 237970494 490358073 568421860 667352966 652610944 821913552 311030503 365222924 555736406 707416826 236311949 325217145 502418166 837601209 553448654 645147817 145505255 565674088 626310993 861062303 506431608 618017972 557140038 895872404 157693623 811319553 53034060 333027981 19595054 173039580 124524099 374570149 331348223 991454987 180513103 803487585 48212562 876881160 915706039 977272370 479551743 853540227 269736166 491121260 265180049 602252191 781556020 976152689 415244532 661717624 102244269 759739195 825984761 990386131 252536733 581552322 320452607 688066992 961669208 985692638 910860822 993237686 255166753 510406301 587122811 592348056 252778430 906848096 475779316 624967830 315304903 656035879 13614585 139555036 867562648 877977449 550012791 929826601 44248072 267863618 654961241 680260503 701749034 925291400 577794201 702516809 656012485 950931247 482072666 563028272 415714637 991455013 399200746 460791390 61946092 531901857 507363359 741302742 710044397 901379720 918523466 922982343 79447324 690368004 80062793 205357321 870867926 990815746 327269792 624225586 14603443 967662371 746027748 911522250 536262061 724249219 181716609 849502269 530343728 669711898 325826 111434483 772964714 835781179 496207657 964039880 820191910 876191442 412303127 815228877 995590247 997170694 480289335 978627580 366665798 786337495 851484899 986598228 368051460 753574399 753636997 876372958 812411769 875816011 796863695 873043517 483462510 852574761 619324790 955611141 597080378 732853400 900645347 922835015 267705191 561842639 151763850 892577523 523118460 524359834 924823498 991468020 395810686 621075969 458557506 793108317 224984147 570570525 488104084 902149145 81521807 176575692 962296587 965876672 321166041 841607318 489203283 841650689 148973591 744876147 443484731 962806335 381961388 559924091 362106618 839686572 868157284 887527935 215576397 331221440 875353232 952497214 983811849 998445451 448327429 997874588 635911609 873611282 740323846 751719743 680399369 803458003 779372358 961943102 449232270 870186105 933905128 958899933 128411502 708171570 597345866 747784565 457148840 731834916 944053609 964645536 45133871 495747127 100052629 711660467 783824875 828387090 899807262 932127457 986301045 998448135 479224219 515693803 392617066 403889391 762871361 800506729 647784088 991384794 698297459 925925348 517493894 901557737 937908769 969298387 203751013 350685042 294649300 654905339 989780622 993036770 279726406 566334384 603061003 823305929 217730160 973199649 32811118 273944754 78402661 592177337 200217123 668989553 328483395 717807565 686172625 689760693 839952235 864327256 613681879 802653980 282797186 553098581 30638739 363924673 467764413 733973450 661481032 881049686 369063701 597114081 174633546 513647464 174934247 403165561 203705660 735060250 572324971 826249886 634824249 961552239 19162433 465604968 416115249 682477928 61756762 863398789 75211789 530104070 957838892 970720154 91876933 652046696 728288201 744261319 435371513 995550619 358754490 916009508 433643132 594817403 787178726 898383143 740245296 882567716 835662192 927216388 159623301 324611283 58761905 286209575 947262440 950970960 917406924 944164936 924925286 996508131 539202799 604606817 917411421 920935727 220785988 903638977 251134766 348378898 638449482 941981766 602654946 893637213 290405032 666085258 479900820 824437714 295344514 324851309 861808439 943154652 521491785 571215825 91717880 416537613 861042555 926836374 960298293 972148878 603055374 909598169 523521457 632413694 808810631 939135721 982834174 985914535 445251445 771942931 347205931 807275991 551139474 632644003 145096225 459073516 304160595 904132768 73089116 387086718 353198708 401588671 160333578 584130134 868873647 911995578 611882729 894748661 280235932 986547526 486045725 671874466 902831352 938655484 952326748 991802792 179725306 655306532 10375659 46881845 123750917 326826830 713868999 947110568 443632536 752103966 85750674 602448148 671680986 995912025 418931989 608523934 676208701 727687975 714401124 977239418 895417277 943296963 735835197 748090407 145197406 924168119 178742767 256815304 154625796 496487547 95058927 417987022 970597863 982505815 445733335 932022722 557266936 668506490 859497418 920395281 775120346 909445444 575746271 771425562 217107167 867449867 65454612 359516178 104268496 182273464 765086411 843572996 796561896 852061647 376517629 928673384 380553641 508697295 920398457 920698076 428238459 945340310 277398725 765338570 666723518 996369253 201382365 768794609 139664109 508258149 13986512 712551822 96011890 980273438 56847480 307034504 251914621 722014814 139825524 471422925 427436941 961252046 635300973 713935552 902033841 993633025 772665341 789959679 131160134 539244081 962647142 972134864 862900966 898506876 181655394 445343038 444383657 475893180 121279046 764637070 633511085 702868386 738730894 912190866 97410682 943144906 417984770 724982952 709891723 980797754 658065549 865901768 579861464 736776097 949235666 969011362 325220449 496518065 847936573 881784890 637745696 852961127 784623436 793847275 607701676 968092267 76849556 637391308 529668513 560452223 38329255 204569274 181101184 450728879 869572112 958912902 710671217 900376729 595858710 621356086 288471191 858591193 84357249 410469364 422610093 974447442 453378173 712205498 86924786 849553323 895746875 948682252 626352893 636245321 226729725 916903200 397334158 532572852 306754668 835495256 426126397 866347431 340204819 872662766 139488678 350008128 660493383 777629932 697163599 840012529 98849279 101742606 901970367 902603405 27598972 314149145 795761975 837688730 225278778 777279579 158698823 368568126 876291845 995782745 885403340 920251332 22213253 439923223 194290697 515826798 435772583 635669012 41757147 759884909 358149616 813392318 829253537 924512079 746552696 923035163 313523013 948563378 886739784 925672863 805473578 847044241 124183034 258124324 281214328 527923074 204334960 652544788 247036475 263045258 158511740 442464966 157763722 397037265 693847776 703446092 163240373 883680197 64540152 278299169 893558970 939815404 437045302 771627085 141271641 629879537 666937446 760125409 312042567 917999454 850451523 934359442 760014439 781021502 617225447 797409516 902173946 921070784 313567001 539644714 937336721 983731958 125697196 810544031 618623707 765704895 671512430 839137248 767729300 914902806 489058481 619741687 500812356 798951709 674192126 839565245 998954207 999241123 645444405 956756489 511617974 546112819 59684437 153114180 297669309 671759919 743929314 794695105 577570396 742045721 461408105 994096909 202822575 647603607 430419768 832051332 466688263 744564908 713248398 990710197 820083505 825993008 551484092 910773810 156002194 750290669 660362245 961937318 818373529 930208724 859805167 871179133 548640556 823142235 674450964 947778551 440712859 950904441 568590607 605106332 590384694 939107158 975144142 985668083 270012127 293477939 343773154 927317243 855326414 906294474 471531155 995397797 230977752 647621430 855857367 911689201 748204816 749173868 694650430 999030056 37538129 258639708 402136038 596419102 382694453 493139791 860925011 873003036 977671341 993668505 881481917 918258067 891471678 934135677 891304910 982582452 933213586 986259245 87379730 171776280 517505283 787035104 49143366 332244876 749567559 768800220 518591139 681605664 423053844 473913735 48943591 355315866 586913556 649655720 331551367 412184342 50771584 449919585 634258930 744772608 28446024 140831251 41270887 350414493 150196946 395753036 445783495 497213323 598009031 815551865 129867052 726000886 842441270 989105891 376943616 820322041 738696726 844552501 250109947 788591418 707572684 797322858 11579006 770556313 418676672 666106594 168632512 920945394 13722782 656537364 269144057 594905573 486029805 946076271 410319595 546478017 619036942 913085220 673746918 902060778 99830600 113681393 557582887 987983877 651665746 962349491 676717540 777398056 343379084 972054566 283155504 428747817 396744992 736680184 121293377 208695706 645829406 841887587 454920928 971069077 540225280 690976259 239276113 813474416 697160486 730370010 819751677 992307507 100321681 483036505 376108871 528060906 616364742 717390354 621298276 790182603 683986684 926686913 739547418 797650790 764774584 983396977 172456408 511241351 846043353 895058441 159728099 318365910 291520904 889128924 248665945 767202770 63155503 323101704 288515779 359432180 122768243 859825476 87808843 778724938 442070189 579825228 747660781 875683842 952943781 990715443 94686761 928618242 490439482 584031742 62895768 944760616 493905462 947181895 56989399 174463911 365188373 918696584 453442345 566431027 363690249 690009218 918742577 952604283 683567846 685635913 821475529 988936744 456844526 919106145 808870788 996536650 666222186 703558194 11375491 284823684 965821403 988053333 735936883 828308987 479481203 914709382 965389881 971259867 949196298 998626362 8738806 239061823 480286968 777748224 273200469 640591754 184042070 541147743 856942105 946451968 741321983 838064544 815670251 898334042 693187620 835568423 68560853 732231554 620683738 825856100 790487709 987411914 473293138 916662889 441391005 961325784 445455189 774234970 911948729 989630821 112748419 556845547 129726293 649942998 905509631 969009813 820944149 909637113 454786810 635951535 977941743 981814987 327711737 979758106 860680478 993826372 806681552 850747136 437691540 545628819 989739392 996246727 415866485 657718219 977211274 978946934 803180014 803552090 959872555 993644622 17718266 50773646 775440872 852812445 629425362 765286112 499436135 703355516 475608389 751914592 255217385 838427529 425847404 998697466 691633709 844124968 398056188 722239154 14280255 464420619 632929097 676327065 509594971 667456143 228127045 314710157 723452357 734641842 819095596 861765543 782449860 990085735 709518940 803710524 219163211 626938139 721209914 794650643 70343653 141588763 33132997 730520621 132058055 534985647 896401389 981947656 682348194 908427160 215948777 741214264 913519390 983945801 360882425 993192941 112907826 699669922 75960593 645120399 785469540 982811377 698881282 725668641 64377570 258036166 964117387 964261043 681017558 696704357 687732454 950430592 217585362 829156604 444721758 682185140 644406825 867185091 378148611 436022268 697435198 958594043 676386629 903909543 519917581 539254589 93909512 337061852 420819270 826908404 344717907 871838359 326956233 586208592 121460234 951061184 695049746 932511467 196668492 799255264 450978130 846480298 373752142 674515130 586376019 798526571 933591121 943095419 165745795 493978141 137581048 715034948 567508056 891006281 5752639 434319973 620162846 687399083 370177926 452339981 627655627 690617919 718264125 945525064 482499194 874590994 193391281 895499527 782699656 948054039 138763791 200198832 922816912 968187945 2920936 752049876 909816187 972192783 220546662 420975947 332647178 523347422 832738970 960576595 255242279 922244092 866094717 886930539 893715050 947979122 76259508 409224968 984445638 984837282 352982968 784559366 165561510 386472151 179428225 493808591 269397960 550492089 508530577 569935014 733648753 741917899 92296382 698077651 613472841 954125823 560388728 864656039 943459356 993226999 760563275 840568169 565204472 871696530 581291494 938216876 607439726 912540874 662248234 993116493 670051988 688210217 156978164 779757319 354177919 728580547 637564615 888495476 528587889 788151102 247053758 289693916 89628596 674473999 138379021 605893384 686139016 780018658 964224730 991283200 794422131 867002526 990628436 992497120 512786645 904507634 757418124 847522714 679363241 737286233 291213737 496752939 61898575 832337628 571416322 805100205 576618998 850750155 480821599 992330086 400878969 443515998 695268179 995833750 552197726 662024052 988105344 999262625 379805596 877840909 354504500 869760352 709030627 745278184 900628470 924397339 980026090 986242154 350320239 434282461 691690624 745713684 266636660 673807170 822700973 834267347 254579301 283833877 701151717 821340116 446747432 881475811 28338998 443960941 991649866 997337507 88084600 752276030 279289608 533643749 153428339 731541482 579343655 891267673 817389954 843496935 178532858 768218509 299336443 681090072 169700554 416288680 753921043 797104759 85852540 261584574 841787356 977121312 308626963 850723732 393228482 523071958 215776817 596959262 298835407 913698879 184356888 361984746 403434895 740049412 429901041 789747944 214576893 349688576 354419141 474464197 538883689 894491970 464533440 607769848 783513311 925303186 120823541 290691599 637258687 653242794 267441712 485819348 905001417 938606293 973082229 982783466 141220926 928991237 772230597 825772486 129233150 348993513 873042976 880931183 814884784 920930209 12966242 491888216 830085823 903317068 500102589 710415373 728349058 799301639 13381739 702768551 231872936 352544383 976469475 986809733 59053051 473239527 268414708 743213056 206354482 636470621 229240928 556688128 870567034 962682024 851963369 966879016 496598522 802466622 805802445 969514504 947030120 949425234 1729435 348610147 539211331 879880892 28585350 148681093 257381614 466691400 970184749 995442737 901403980 981860812 871553711 929960707 65250063 687227485 249525557 834441091 206590864 784705524 644401220 655586286 48461698 824096708 794206091 965099117 585404431 588337403 1184929 159272203 596901979 865471234 852630708 904230960 678952515 717070000 315418334 522570126 336469844 710983041 873571842 881282086 122635579 883963912 893377313 909745433 240950732 264439869 526412664 749052163 221817505 966884324 865698870 866162941 684464738 686205237 917376281 939538864 531928855 958438058 370717845 769077131 24998198 333043069 86380876 500229176 673442112 891807617 492987873 966234051 973720063 986353567 684190438 713687614 239939381 984571908 591872949 692682160 956224184 956852030 860101248 988710404 381711333 949904830 311088793 621506701 453509360 853204733 312709019 435435993 864600807 895660371 911951934 997082262 393580409 414174616 923972847 935342705 77847552 136376816 651364403 972938921 402340951 586934857 865318826 888894886 447355941 647240768 992427720 997112122 425244035 692407135 446479882 669748655 426475088 614308297 341855547 734265353 191364695 306390960 314386919 793531895 130019666 630767068 311034495 761302327 505793978 789352373 421618460 976146675 414584645 482559550 745998227 969249030 41615716 920811268 893699164 962250303 654839628 760047870 627552203 976696668 951245982 991728207 17391426 704214199 46117910 679234269 913287848 932598919 353577170 443494769 361653974 906972659 202936944 498008319 48338899 514757194 91680030 697037904 64577378 129409719 337805929 688025186 374220935 529701057 262044206 811497310 19073908 112460250 114160970 354937842 431643563 536017589 118998170 259392020 22187289 459552596 264538785 759433907 649688061 817573947 451751548 883427753 827669708 907622373 617994456 780650094 843611406 990786003 265243445 767396665 244243313 362176610 893809003 894086357 715908301 764824282 880002187 896421123 77015552 428535087 526365847 617989608 826434281 943473598 274486086 331573396 978064553 978564168 158970378 687526332 702536552 800799823 331208054 728354186 95908602 529992142 469371168 927239662 744058828 877244610 465481170 839402685 886692667 986933253 820861685 831183151 516428714 716129380 248577767 811434471 540185994 760533335 532899151 916369112 301249794 408035344 593465633 719138527 381117128 659098895 955816060 978002580 357004667 600068799 475000027 518429599 515126815 744450606 709590559 830361810 843632145 918169879 18811762 401147579 201065671 883442680 596971064 838836748 455884142 502963730 481030259 486247648 493618400 675494114 396086480 785775871 895559597 989405320 510034710 764948270 633894686 807236029 197834422 954216431 201696016 683745192 738491773 930466448 649858932 821558165 755763938 921870735 99014905 437690562 647396474 877516136 521297499 603171880 498140927 825896468 110663815 759931574 724370643 922251442 316474206 392617332 135348260 758111063 671906983 782542184 349553586 484002427 808601433 955252418 282268453 869299604 151076825 242140096 960454751 965634079 33986475 48015397 822970462 959061971 766146583 926059255 327142900 530704505 826023951 892015375 335657141 383285482 898583356 987427123 884066616 976868922 358701659 739003022 211620656 819253621 236146197 309614536 437401895 592772886 511422172 633868809 530735460 574276312 997029407 998047411 773756018 845317908 375473419 543305291 133908467 783428372 327561320 499101448 982558191 986573410 813266542 947703706 597051068 620778424 959672588 979809420 321668213 651147761 614217206 740445833 761297400 780336509 910335013 977763628 376834199 888840555 669558068 974699943 907448805 928396831 609708633 753957758 847568284 853568436 873529897 880537554 397879769 974062537 781246555 988210714 39340221 118233046 377822661 670408154 873669696 981789409 24463476 917378947 257341352 980708741 468406151 951200723 750888080 856957974 771398885 922069457 230197655 973391918 976948548 999293570 380491604 516697719 145909099 901981986 694457029 744084618 615806707 956573823 391506199 494890072 659619156 682205748 104143778 839938182 100488839 729601089 654694506 787465345 822921123 824039541 7047272 248811299 947276006 971811008 875513741 995169015 174748875 972005196 710752885 832284375 528289601 729937813 707103343 833524502 751926612 775555642 787042723 822554926 870507591 876535884 73368908 723685108 660823858 749898629 446557415 787360970 763774357 935986041 518208403 538243218 734206136 893289819 376545272 646562654 450298860 937268741 293366005 317890611 983205797 991380085 546677473 912367843 941731660 978872287 393381435 560005753 890490566 927726292 662530617 882855499 227464391 338133277 766143841 876659020 318208165 787434424 433095982 581222572 480956746 981153922 422563957 629047249 70474900 236626368 791480308 948297832 762728836 913148111 854445511 860399220 611832164 788813793 483141246 615539108 242267028 446846351 152436465 947177358 321013595 858376293 149017885 710626075 49862430 578236365 608151484 805615891 673025032 684383970 869306221 938167041 40533808 919526895 668312642 985242778 144598462 816079041 862838987 873548627 865389836 871989158 62578519 277566408 406043867 492661775 692427819 825353744 660601439 744552724 53642770 619703418 408899066 654300259 463982349 575669127 515085744 881022099 638446735 957911257 271219138 289045458 395152834 790281174 754676744 901204263 181112639 305024910 83999498 466443343 181367810 501971787 671646428 705577258 857489277 998922565 840997061 921504433 806825249 909840231 839036281 938564535 103726179 306376379 66420051 383210115 248753664 745183464 249345843 305225153 409416217 411713963 943886191 984042338 940160538 991151784 395865627 398974610 413189026 764142732 841534660 983614856 369408841 839395662 222383983 953343594 426375890 470602979 930151803 935907476 719498062 923428214 882731463 896944342 744215697 955560881 207673685 244072641 963453686 982777029 280014297 701122059 979579470 989983380 865518743 865863167 513607677 563467490 766139833 771588940 228829198 753228238 42181128 406876708 757947159 977647567 47724915 643621819 667273930 805459801 879359828 992304835 519395458 700013279 395325676 775300709 479366750 646922799 910419487 954460572 609311049 731278951 66863605 678828529 579975332 872438468 646247574 754549489 481077870 584437263 518432337 583684076 810241797 836409186 362204760 366440443 556925752 570693116 309759745 675692629 319769020 372428904 383904128 525376679 947415644 952939298 717527597 758301794 413271849 842241092 982359153 995897137 936589024 939748805 146608580 600705019 874900353 934559549 94253687 98540687 233707682 914218463 331703274 914127973 701846537 880067649 190090730 588576135 878097681 958896876 930071208 945628274 998652223 999337733 382461814 616802638 725490880 780996457 943858683 972085957 154364708 304357566 854061259 918473399 736414186 861307348 31847999 122866031 222142738 751175072 912033520 966322908 719034465 867268402 241688318 324616838 427275824 908820624 495648081 945641339 27285990 929680605 411887313 902901864 588208885 984100956 85729725 827122117 254989826 385078510 745819206 995481649 39210979 352358619 987048179 988478665 639845142 694470972 721731327 730019197 22767228 385962017 948991964 980251440 652241818 851828907 111661253 510879125 157082296 839665562 138683069 687392770 122207299 731587393 457275898 492877765 379598286 792226613 773033724 904702054 192753419 576226338 713134202 931950645 813301326 951953500 903611832 997306014 697145658 836595060 84616245 421776961 897099380 948003775 657702697 767569374 168873557 550886860 502717442 672400552 988725189 997286825 595320958 898943048 649041262 898506827 7696486 590687657 48696835 932178276 919535607 993710880 12491379 564850725 924594133 992809200 325912092 554748200 546242707 974870687 933319059 984589055 968990192 978061310 784905674 917132786 333020682 844650871 323227476 905303008 671350839 872606869 7653940 399523379 995268362 999158965 859624736 877334195 763557695 815603816 245099420 499933132 491473773 936700316 931441226 998736120 800492695 995421297 280029087 510067446 829908312 853959557 756051466 945601947 371459835 398679831 383145493 842512140 253593526 689685978 782757271 917268059 743413037 820590496 728324278 793956036 316060089 533117734 953122217 974053113 522207502 768484862 688292498 789283086 609716075 810893807 220731221 655180998 147830542 996204112 622370241 886183987 269174042 659303157 81080544 875324326 734344069 894633408 279884846 345468553 942518430 957427425 291426453 557274483 331150569 652504805 42834271 282895358 951171895 981357145 371431243 836887415 965024110 971989220 266011797 655837594 402707268 844455381 1234877 346144282 791636168 915622807 634587627 983959477 771518361 937440315 28280092 623704881 335578413 650146916 535399707 775859992 774491835 906137112 329766456 585484541 118184427 141640524 415750790 742073673 354220548 597495396 982899989 996684128 222316154 756394625 72476541 670836116 433876850 860712480 460383562 551055702 421855144 809437619 967615329 990885214 225929849 388203096 990347915 991080585 962863234 994797467 203207812 795674575 482733187 897139310 490674148 539643895 771644234 890921458 990103786 991475552 605164284 623782720 702065183 829735855 331277967 687512567 257449840 656594341 438991030 604298395 951731392 995893741 933018844 965320471 844974671 932218099 751422326 977025145 351823803 884420727 939948899 963442577 418665972 640643978 114259093 300672329 630979518 834357002 934434762 939023453 212848616 459070911 296069162 327359675 786040354 968353237 123661819 377903732 405352213 555205425 37752049 296273552 524560617 971807320 554524558 831267989 277102283 389503110 863252732 946094312 76692570 853582893 442975494 990913531 366188488 981489338 115645097 750776280 787286331 963612707 912870168 973741450 364378628 768615605 192762851 876163137 294042364 454145549 480699036 522177788 468744878 951274834 549308454 670000226 27682259 507616721 394450076 844828598 969299794 993605829 456972314 929712692 945213012 961309246 189417611 748991638 598861569 906125102 42457212 635569282 431827370 453269493 360813476 449447679 360702176 838744770 942769489 956154108 925998724 972293414 816942843 911686276 983292142 984015877 71925077 318860872 338877060 924170921 420723563 559422820 652254966 820599247 590172884 687315747 339191145 451489194 42540094 701112571 322009555 804253501 591378821 727639260 18534617 521635420 431595725 870370693 270982073 814874489 63179476 760174867 784109882 912573266 794799890 957340543 235417315 433215238 394344749 679078345 969155054 973268842 655410821 910066259 183604038 665182505 723025348 825358118 685748309 997277401 744730942 892187553 951451352 986719844 642261149 750583357 905510016 971410660 863138283 915234916 489146792 830763209 413791069 984438992 370126143 787881505 589776605 814781443 55666552 226312693 796695072 984841011 623126710 850095848 860084411 906947652 825143649 983564122 589012945 933786259 775269686 845001248 663334156 916720743 249898641 306941720 234787188 260463135 585501007 700689169 365847015 505425729 261353135 854670248 612533356 893783743 474774464 660743748 450242182 761922723 989809566 993364380 144261150 160132943 598574309 937704877 604714116 656446463 112882956 202506696 852082723 924233679 703109211 956038273 786561596 821085103 24511837 401659964 945160661 968130681 309005194 447298011 75658688 788634909 518341644 889451116 460114480 683612209 187888201 325253465 848853670 962933030 997572290 999008439 92106475 411028126 416269523 472827668 370823449 563966613 655782515 871754782 19197401 736728577 675188809 828037925 46531712 550065328 396625570 752267982 70678067 858225099 19756616 631107950 366880361 913883604 783888944 784538017 780655494 916888342 874799971 981750992 8904092 468658608 611730558 893382768 310682054 583680516 87864170 251182724 798756491 877322226 539439511 679519527 108174139 813200860 284412317 466981876 934968552 950789488 975601900 996567169 721257021 742109159 942422528 977423528 355603628 863171330 219924144 603463770 330907134 349218840 365779396 855980037 178523012 489491007 700071537 801700766 858687516 933920331 658916321 926041175 95274409 561268278 663575070 957589089 477747958 956822883 392427295 584014992 622442928 744943941 252633468 620118970 37731990 479293059 145929712 989527358 377653949 581815024 928006080 987131370 912017541 942866405 808198707 877202006 54557890 467731418 338403393 579755523 860739774 874158957 761875105 938272265 226302954 358406814 242033357 305642378 770233799 820723746 34859463 90450046 19008236 632961650 694159899 884717121 803588450 912051294 901243011 959249359 502934153 829182750 213676047 303956190 726136360 983152771 313702492 747537640 752145521 847934641 450448359 995075733 864772587 958113237 330093373 751778951 662235803 951156853 623192031 915095050 74793199 518974426 579303149 986957283 603366681 812137105 236849843 494679977 419166462 845959607 58978535 617412362 499492266 596158605 895249675 934035868 965240430 995471433 181902075 274505860 42983728 577014245 754544227 869967908 998883068 999175931 227142680 553094195 171334126 847178638 225330088 604723089 409220222 568551270 669518083 766727405 164898093 525655334 49923902 716257636 194307645 260123431 666014194 863776912 736066300 745548894 275512903 309381969 698968742 795669750 164065464 788095695 14396934 729731639 372466864 705667950 509194500 740583586 591280562 609880175 907058636 927783721 967660620 977501449 192136098 458842586 823189363 897491856 312428426 818114170 894483198 909920927 535488560 887880674 334190577 575799048 110439307 446613530 775998653 959899904 925162414 964349707 996517711 997347045 46507363 565135391 274271423 458300676 47643369 146801413 998119195 998771874 581443157 701852058 427932535 979870488 192985438 654743928 438731362 901238527 707880350 767826238 93913096 137533178 11915542 68823338 520870770 930848471 425419078 543113966 555827941 745607417 426846216 482312021 443670937 986437235 336426787 931131976 865869229 959304415 824826569 917518848 872203076 883246124 586877606 726914739 177900191 989614426 11306323 947968899 837305128 865069601 998050802 998812277 743337520 798007133 285357002 523685079 224864492 511281020 356474341 479086514 579586978 990734385 504721069 724061940 315453055 342165188 533282148 577862450 492144964 883596014 464182668 738926683 4093821 741921378 143246319 423000406 203462096 343680078 21810675 34896011 999335717 999379087 676803498 972466329 755261344 760319985 912021333 941947892 67217376 165814370 545119020 787261156 362140792 387960445 285128897 842961425 636261042 880444559 896689817 987220433 737067368 983552089 366758131 898228970 233281409 800134814 97520952 741311795 323049664 825041009 244519205 940449126 81945744 737105900 781691683 841684336 190944394 317537912 249971947 772682849 992858205 998969577 686667231 996160873 129546917 895124090 909549484 988829578 446729512 657682586 893786444 983857716 251194924 970143076 108285441 308981416 64254894 890325522 689724842 767235951 215559150 604351490 216368868 425596387 661345729 843382199 119672449 741840949 264147857 899840832 295040398 488389557 972690 642281037 70008481 215367266 767260197 961223815 5374920 820900445 599509838 970491196 789379230 833398626 447384650 972265742 521951805 845305944 603381268 931346474 281636476 922582199 213584304 566378573 100678004 546366504 292548909 432866833 104466449 572508759 160853444 434806055 947102598 949637871 5818246 591719305 442708176 937569711 846556720 921943869 573999228 717881821 871930954 980685843 513436263 961500813 258873781 779980716 482179377 814037606 914103041 992178067 271292730 404841651 405691906 692139827 262254434 346045576 228673262 271541912 913827939 921289062 798946620 947033945 817536812 963052696 355149466 794147623 488261351 671890877 359020714 371168104 902716019 966259259 199697338 696186916 282004037 639456455 983745840 992894380 809274486 822206073 788208730 995643239 272007677 421128755 402974783 517457147 231442713 821819641 955488692 958593237 780347845 833433968 691567820 947871184 819044094 842042073 916374132 920794662 133985069 415940048 613404331 832776668 153898266 158878941 295264889 535268990 632336056 752373497 431078133 979046327 69528214 345829247 810738633 813719987 593521721 654120236 976069244 999285633 443080801 932167847 284002131 716383431 715899652 799964725 159747697 534417667 927157725 950679345 498495493 720310903 27385859 871185491 363133500 511740942 723063246 915762404 133529710 137670237 284218541 753543382 636236157 733145436 135942923 613362496 212869799 919899248 36581117 368685737 924135045 947681265 125365067 445167711 355861588 953344666 223943635 449345176 620682958 720170848 816300746 972088013 951176262 998678673 936522379 956882637 690050466 985390658 87245735 904661130 41952071 309847146 127372516 443680431 76431139 593352776 681253037 825213050 560308360 873238960 619964638 818027681 803791767 922414675 674462534 772058233 159645016 831361474 382591369 701773383 146482831 922605928 641317590 741437275 9292784 449848091 979379923 979783101 957439965 968694476 437563730 843171877 92497022 346570982 653677894 694399958 379134971 419066884 842363208 953601962 724874015 822045390 390799965 831881611 261420879 658739914 843792373 993522287 112779749 614112879 844839554 931681540 862963337 940122250 633607483 729117870 502445178 581754071 211973360 446957591 164468845 861400992 131993049 344186120 953552650 996557700 271192051 870149440 533453059 866148540 684272588 886727765 132246000 711574134 353237870 908022119 69185024 587782231 145161245 781881707 615891402 811126133 877333688 912813976 288394166 916314028 558020976 862270771 574514496 695565289 988603703 993967956 439872414 555915696 823026719 993832703 267563592 517509480 449339478 492223944 134247223 386756829 125834873 661381032 149263599 876280066 907831357 919557039 729848669 979455403 698358653 761194942 68594258 476353541 719774899 755545231 548872623 924851940 263033113 336677363 619293523 679914633 646067110 939241887 302259155 419998197 934142444 998698050 991024986 999089076 683756240 841465108 567965721 592100124 296633341 602773246 784524076 988593970 383445240 644827744 584505099 747751227 407391655 945930816 997509864 998058933 111789769 707539278 315798525 941776256 370863112 688601104 364676244 420265568 16635072 989395797 782616224 840977408 59299992 115399645 667390353 942828170 657206770 690879935 479717573 720649193 252436407 345820386 69699743 297316228 545501264 658930148 748587812 834170066 20316321 742395532 315225680 523749302 188905729 825776213 923335788 931127576 882287312 995204452 944634786 958091155 502070608 600650874 512526070 971976430 5410447 593026646 182421506 831122290 528974769 823322712 55207684 715343191 475853582 977712085 301278427 395920679 206774448 849762971 607778520 852817412 20945831 669391819 942888879 981765771 422106272 467743744 116802035 237053254 372344526 980981928 533639864 821195270 279829636 658268465 29086704 462957770 698797921 896545584 427876043 698014615 177904083 786400870 657611711 966846767 272386969 298561256 225881557 828327092 308280565 792420588 961351062 985303393 225207466 668021566 568035983 587704951 61652423 97155662 914307580 986615494 806472762 974749099 583461064 818283515 696218525 857032025 325736491 987696357 447193706 674088961 967352950 987802211 948384860 964460571 803139180 942377331 777440790 881420576 742650024 776236525 114897661 333930400 410550153 415418097 388590218 559088838 331714374 723123363 246055531 996040609 566955148 923845805 613179978 710884066 67223820 75272452 314720946 991697896 31148925 804174115 239150452 938936095 944562451 989635152 593342674 845228953 17178089 193069293 526015196 746895437 617306526 754216100 765642265 955153941 123774434 782653401 955619966 988762925 108948528 332703310 761338018 761547458 392070779 868001695 134183372 815928102 614582465 743360609 328827102 734686332 961118972 997145735 584170990 726342267 894081889 985532872 238068454 669033887 62047368 390569116 575038123 642639656 685727110 986131664 232172887 681858449 855078270 914210125 388011259 844669611 669283178 777818790 370329649 914131387 891570172 952155435 773580263 984381590 502412289 979881957 481802465 590284553 282633512 661525666 162866520 576363306 806020941 902237202 907846338 929761440 504148703 548727959 805204899 824895111 765872691 997562620 568181785 899204241 925313532 948285393 293354863 760316486 787986836 913092130 127481847 697106815 712733919 825147640 884411387 978877151 842228714 852254461 78872286 152934055 651099236 689142041 3381023 54435758 204331789 902498752 910078569 970086542 729945773 793569236 276311467 917928272 155179758 991838133 340923718 871640818 642251752 685241540 838249489 923482333 884844176 947845735 337015919 828144408 979705681 993620356 546348095 942882644 992453281 999172874 643996150 778480729 496866086 819400477 51175582 915948866 715646991 966813931 386826965 979819121 797444032 973398976 888876280 927624332 662209292 821911021 803067272 941984366 227063720 885714024 316391014 953333603 544518780 754960903 249358087 333356833 526790735 577106835 943193586 961008133 735682622 921729952 822560440 917435539 726121444 885271460 344239553 512861297 887386830 928809399 757387544 948757286 708617931 738003185 232446223 691346829 783324254 804638499 925976308 996206542 997376672 997519862 469432093 564237735 195368549 805068981 582840191 687482854 297947789 477979767 468827778 929967664 13803131 289917774 95772065 238879281 411261686 421576792 230463400 336544374 853875276 962783808 733904464 942313906 69840821 782089906 938486836 985992361 93328030 340844091 655241804 931512164 179940810 609761180 537491321 793384630 113493605 123899248 955699640 957898730 321359403 557043525 282442586 795416846 365915120 928891944 472221822 649695323 642212864 718756004 307459262 598301017 744587584 874701261 679595766 735187739 201639575 561778629 329571302 592374586 638205265 766500931 882609437 947682087 829532959 908064135 852330180 940239867 44587662 677043465 775379735 997584644 549281741 595496540 117250094 746430905 407413944 536745793 138113363 871831689 682282793 757301807 99395730 899344629 437992749 696935700 226553786 711154617 995198155 997854960 558667024 634272517 633964441 991331838 354332835 863574808 926088338 931290780 623486583 739759700 980637172 997793579 170091491 432689230 409771200 670168195 720171002 993480753 24068771 932215016 359025434 735061828 919100939 961952870 779454914 899867201 775801121 810218093 429239448 865594913 398575931 641113829 392041638 724123717 328490988 374057613 595631351 804401153 121948711 422719373 638340574 824430121 853639693 870215854 815851757 979716889 431626775 852282550 234806582 818207510 762735977 797425947 511010967 905421008 988487124 999176651 324502263 607896103 437411661 476038713 4721855 482393345 911796765 951637045 351071512 503447845 967566389 986998233 903918662 994973329 741883919 861859059 295118389 919713922 158284316 284554021 695390480 819435900 17291228 838241854 926637126 973050542 626672240 892789030 314302887 415287574 121176147 919600767 370095822 983347349 500995117 606579903 754460275 764342817 948883806 995904995 865522121 941735703 74077121 814426485 19999824 220504865 858862458 935348043 808751235 814056605 258206484 480158976 145810643 689490446 680165733 900045142 917736627 931850160 177871202 865828963 571237247 792233589 866873434 950768843 192536803 425134585 952861088 966849639 285871408 561101421 882167172 927671464 794888910 929221479 724516052 912419115 542031204 890186804 862711068 920127056 863277338 935776382 4046106 119507090 638782934 727175291 214973160 629240260 56934509 946030594 171990745 310771404 200118826 811244776 569376523 817440233 156889321 721400357 589253870 706937645 959000290 969565061 971994827 994698214 303195962 312090525 109280180 964286080 556348714 631285698 781109396 847440947 603677576 942136656 264480327 324230696 643400773 928893166 392510584 897698964 45116197 410361853 909358613 923296618 358807992 610995004 236007850 845326759 158913460 942050038 156237736 372270924 660855083 978570948 81417005 432523895 317108908 884478621 995057927 995426307 474240796 851291620 200926796 541040857 460065689 966606400 344833268 351272069 464046749 873379001 725269082 845592638 915844590 987459737 870322561 977577604 121515534 288049273 538765341 938860888 595914070 753932255 364847694 430291109 244407377 656626219 680134564 827669553 302762305 793913490 686419292 864785120 113472826 879701219 451290939 711567400 490254384 773860121 746457609 875826808 210121356 501061183 294996579 661130434 871743883 896529724 757164622 901855692 166893262 558677811 523073120 957413389 699203145 750683927 748661500 813512098 514702473 834508345 441293776 598833572 670881273 945232019 456382055 507064739 800031 29235050 987837396 996824735 936874330 984351096 683662223 849684953 489918948 747341818 102055187 900816768 681897968 835739166 621079350 719213455 722064493 893030998 531422021 629023160 244700771 533673267 753415544 798433860 589469678 647679075 476287253 880330946 60154556 255975933 58256836 147509232 526593601 859606141 518244940 637357427 626762838 968469190 242163779 531021540 155921429 776982836 797336119 961952069 507695068 863774880 997254555 998687442 427152364 502034913 628287062 813212997 838681446 919751166 860918667 862179242 698606122 895926854 448905500 925340421 87980070 137738168 847973722 863950237 349223901 926738112 91258258 108496144 832555259 844815993 407088894 514784035 421250342 532407142 332155593 405630402 227587378 421050456 826000500 923614117 51438853 635710686 967219155 974991941 679981389 736526766 848270445 871992573 574349703 735358169 610562122 815788053 513889231 612169964 927807951 934853376 737901475 756603353 698053766 946857871 164978539 517275795 406289129 981559681 490610230 560797011 38885882 679291165 848958471 949266273 930017808 933420622 48769562 443397459 704134345 807941253 6202067 481158821 123669706 806405819 213926599 747940325 488553041 882111086 774863215 833660906 554599738 671900012 888054714 942001274 782884914 820060825 4656154 615190883 147051144 863344692 44186946 213955225 956288274 977866509 53049354 629104021 325885967 695816528 942758903 971600152 831342454 832350023 585509629 996454079 524308900 678565587 964372100 969795568 11091261 18842772 478602544 522773534 294713209 391300872 839676084 952144354 903805384 929071655 751477213 809457747 890130069 951750305 797129916 958008201 812230296 938168698 556166562 667063282 279444824 720132525 436083623 754702361 512823394 968722659 623521085 633069294 644717152 903221164 886729186 950791812 934690103 943664758 987307649 998594112 100921242 744148900 110273353 855920313 357096623 790336849 888058438 924047349 428721562 768140011 430742657 441612208 924765511 931987257 58883393 981094098 688209503 718522990 9803735 964358280 247733501 829540213 2242287 671835698 447359558 503369591 62599971 120572604 24011726 328024630 371838180 845848944 942525168 955578737 105475498 249357748 336703460 832904355 471795819 857731376 567062337 803498369 316136959 374370893 681157478 760502058 253401379 883966255 228855592 758900783 785712452 884674604 673884820 720006360 336535703 969838851 53829939 494855644 614781133 787385641 855932903 861077861 247748269 381272930 292072515 335215002 353068100 891121477 257353784 363777218 148363424 171628355 61348654 723540535 812441246 927600821 88901880 103770348 156340095 658311849 79146906 563871203 997771190 999362662 202201110 980308933 665092917 737072011 681628390 956395564 201608213 777922437 625066045 884915143 555882166 900602506 463212956 914199006 348003178 994645334 446616101 464027932 603336163 881372419 220231655 867494622 278722244 647173430 125498937 560832454 549822677 872266403 107198373 528493146 193785260 544174428 406326329 946845357 54462608 964963152 657331199 954316119 425619977 783862779 12905055 496838002 876925877 921198021 295654962 307852432 876496140 972564954 212509552 802364070 37614359 815299007 41594234 84722036 415136051 902487826 598008715 756437938 730446629 788594798 814411321 875194641 586404708 671096109 506922972 941196815 523655145 759109005 305406326 754524501 957485510 968705313 638522729 751602370 399490715 736666551 912965391 997955812 929643108 971437907 983765666 994921330 525017163 547668450 562547240 724137354 203443948 995288786 665797589 699918752 974876235 982629815 546219891 635366411 376479527 818891229 114047364 823975671 325883717 603024982 947406345 973064669 310996945 711204843 28443365 719493828 193718695 866239760 942721575 945693592 685096052 917825307 977258207 980650946 28649416 613851606 288140859 362999295 703280592 928269554 788001768 823169404 631293068 985492315 139351918 363478143 641038552 928109025 9747126 74713283 238364045 552849316 984794261 991978740 634963567 838321775 568248906 787467702 956874939 987471163 348841205 961472962 916119153 973160855 267077698 425411673 34480049 254060061 22410959 909400498 986744349 995142182 227842515 647395945 912055780 928933011 705142972 783481301 718865126 907998058 784780002 945879907 691923230 869612818 569034554 857676000 282128881 833827113 656277067 919703697 86782944 493668878 744674945 801802676 15302236 219848194 937835196 958608090 121223032 651488344 86583879 92827924 777530077 894252516 569873663 878724334 788548661 989956715 63395217 743570757 317264945 582222249 243935928 560325799 405745871 947083799 628771885 784028618 477074679 622014684 347937330 727986446 118918745 144722988 367217491 693946605 682746471 800127863 619352703 810685500 57742485 538469658 210484796 618421473 783043689 816805842 635832163 962224789 43667747 628085592 346376704 499945610 554573763 576786270 772361368 878963722 853715244 979756577 842631853 904603035 127828396 847444809 32091330 867758591 829680482 982503455 133467323 898172924 852067649 927687011 162609479 838515259 404707701 768084324 179212557 223561711 271376408 397211091 278242215 969467157 704974424 994702738 731432761 757192308 279730589 814330853 415420253 795492765 699198319 748956012 101372689 586950434 414403440 476933146 960852930 981607597 147931751 307356254 49170921 172253386 609836769 764911340 225580063 895403198 644453147 877351520 29975056 461155875 596272512 701575365 747171284 762758674 859104654 976863317 692473464 989008144 893083249 897061388 883045766 983222494 220314764 247534900 355393739 904691037 681322609 780114983 783713392 950958197 273695223 856127903 238789998 287581331 581627946 888532534 152448316 778286616 158256900 733571220 469543768 611343088 841155144 886755624 469685195 582301563 504153441 889194108 608357398 608862525 609658679 839231387 191045972 309176495 124879700 495928364 979699269 996565713 561168942 828229925 24205214 704183928 842003840 842238244 515861355 599682851 490901989 912609477 422538995 770864147 899866507 903371171 612666509 797504687 55146627 812533002 972058452 988783936 542831089 811733155 76360258 508855787 447643216 992627090 110079595 519180944 814513474 943825868 727972119 879209450 650278211 834020941 641606738 728101662 4125319 311383511 111302615 442241903 10499933 797120924 284519569 513798360 692301127 763419089 762527382 773899242 927141495 940695485 777352181 877509914 684566687 989601428 507521760 641552247 766507681 885356255 956928685 995532015 509779609 880539026 632886124 870280156 617932518 937093706 101105394 484989068 443099867 659131427 117066584 533688752 911295628 995064396 652698057 910224507 889760529 956355027 998079858 998120336 592968145 650059303 405574780 759103142 285932454 669518784 839415629 932662879 778524479 855095508 463886723 992001331 791620850 840514341 326950218 750183651 312127998 432044451 607284185 984504215 27427180 598709987 553629475 716720958 745027070 749965653 487162348 891041818 177411312 552789915 275611952 348692770 280802675 523874545 612841491 971674859 42735029 691182758 579081796 695560891 360563398 617720076 836441644 964940259 175389899 859672902 986007523 995227803 338205578 688998020 753458851 764690016 918785006 929067906 639848972 799012386 137401180 644793173 367756731 555364286 25901455 694719756 642530920 999088520 635319764 834194804 15816279 542383917 867284009 957508188 779545922 799322985 88778457 677178910 378321385 998197445 570255480 862987270 811578185 821455594 824880234 876591317 783130825 843843251 487285571 707572450 463685554 829048475 401220492 578056750 788772495 859250120 934515144 977848667 768774643 903471749 973542008 976120356 137448555 213496669 144863598 730058491 272210 926249814 267395454 675780303 299718699 849691262 849198309 898421198 666007915 884469451 303282219 796386189 281983082 518494517 973885882 996934432 142699782 213949236 398071054 568456733 770367657 784932968 727451934 870068758 882416189 972559488 91247409 947413379 20180302 37056726 847768215 999161678 718263888 852958332 683581126 800784667 605409721 941954208 244903278 479024576 905936483 964070657 962177476 989106994 902557443 966351345 376514621 453833138 894252649 914869720 61672236 407454230 549205139 658468430 7987149 496130404 477047443 606272942 570348769 903031748 92163801 488661750 712629846 795847476 724288738 857979057 298371156 382719404 137467232 814444630 507522825 921662388 724111271 948287755 143870767 175861053 174005019 334348430 817599725 829194037 134784783 545609140 720476689 884196535 791591252 846363685 193479680 811741601 742663108 953922019 479143671 673334745 380944064 712225554 461183317 546758921 675397587 968232454 673468635 936493621 363079700 772175367 182021084 351368086 368169305 990693278 819822685 943272761 591167484 927384452 343167942 877423318 968571460 974049742 812254906 982279916 696513054 914979031 376317327 453036225 403725971 929181234 739492480 808800989 866955462 910500058 25395894 879166215 604431978 858719676 504263687 821032200 902724034 951942326 471909525 609505646 41694286 979724413 522210016 769901925 842538440 863830812 607268483 791384873 200353748 207491822 724044451 810739131 182288726 466224293 34403867 837007036 597656727 852801268 590389217 860506109 335646209 882415338 362347436 764163407 942106191 968142378 190843856 243098697 736060481 773096575 190245851 422436564 899933974 978297245 732259199 774708751 694861940 947141615 215289744 497101361 727870094 828794793 819560299 846546284 557720574 943954497 743893094 786790535 243545861 775969271 264380689 895749649 67585669 344960074 404542848 443938434 757285559 825714759 568275077 727044754 378497801 838341656 558291142 886113000 775821456 933476042 53513233 481734111 753372306 869483145 263843405 546972787 313056994 422236378 275472649 651269264 377914982 520341416 327235643 965860032 625855220 770763255 22113092 98451416 886884938 951676204 495616166 589238487 733892131 805661904 641806548 864517318 851428828 899619992 358952477 948023481 64370401 365771243 204505738 815120069 153925075 224197068 79945282 793337206 266823610 283870098 45912164 553676195 628188862 748598193 481229944 764302948 948918990 983153148 700517753 712011803 418971643 423342865 53818447 399338850 636179690 912055499 740272274 975240793 850399163 873149381 883086610 965366849 532078624 833271392 629941925 754525069 759035068 885875199 720981639 747110359 754799632 990948553 141724698 512961792 323660993 523322222 710812725 758124963 956714519 975158401 75811372 656362182 72213299 903897612 740484756 768188249 990732187 997234069 228261871 996663763 563958729 580002975 177427637 234842191 276924006 821392558 953359572 980463189 526748899 977017035 161874306 877225646 330167463 748433019 848729105 984380766 8038984 495698894 107063919 931460730 328446968 834101670 353169018 459169218 855223379 869216581 851855197 946556545 29918463 218847833 554525314 855329610 278072873 689785814 40555795 674451018 738848368 877121404 964906004 974793342 491012479 878785833 488762593 680330851 653840640 949797421 620332400 659744117 564714371 566439016 107322135 749934615 430692185 476970695 491812570 980444798 669914254 733352199 833073319 881189288 768486204 795924694 141613325 490969546 8655474 129526242 960475468 977412251 602199203 738535413 3553709 837069779 966156029 993897618 961878656 974492546 297649554 861195292 963068657 993471892 953057559 975279239 690632360 880804434 254144799 738055154 717545690 989774304 25948441 336761281 365272610 464209641 57991378 930846786 4318093 601981935 981385330 990521787 582269867 795712730 392315923 964013214 267009173 469384943 49450251 530227302 394250697 454668553 609086083 695712324 201910119 582781451 117736430 665958998 163414048 301464746 359147874 760717309 38229220 438515557 247549885 447848743 278959602 481697249 200472654 965018420 811899170 880396355 539291156 720525436 184300790 746826999 527642179 661438802 655608624 905714297 251798823 795558853 132471535 402436097 935458761 955568146 912165624 941943009 585945834 688018492 870699417 981268630 201841206 703739718 106978435 207543531 122205030 591420829 632644589 686779098 976350846 983538343 727654904 732720388 979673110 995701975 704755673 990236849 199088445 497707896 419487691 515962485 963957743 983344944 120755093 156191480 939833760 945031100 319409416 646676996 907186843 918412098 837635959 887382684 991388237 994505629 183101522 775433172 896852931 931836875 953192070 962806171 167708902 618264878 621452058 638510539 356017545 638401078 495367459 877616126 144107250 540936572 20952749 561486377 783572489 812097753 356932848 914319923 661809550 753710491 903647434 969234247 72344010 726109329 893074057 992515855 996296468 996735592 49391121 909819324 475238166 657338550 779648358 845963068 617104957 824141549 791268708 952477550 647141472 693227549 573291433 743647469 221541609 334373319 523675286 918877458 924645342 960652659 881308960 895513968 234752723 694866322 617280350 807484551 323268998 884022777 25837549 688405908 59463565 951459714 255982310 868182832 908714911 925957519 519262272 792416955 115498780 145451702 127984661 477476840 556494588 633793379 379959493 729851544 317167177 771943003 461589557 614021042 643952794 823199238 534702676 829302060 276632651 410333482 426742129 459205112 644949817 861013063 765128944 855757902 342087107 346769174 682004993 827999539 566160183 672097406 991314025 997517499 923317076 955343620 641105766 974369965 657667873 877047721 769124928 839334253 709839995 716427125 371213930 701441714 69721971 863176010 670579522 734355118 671480980 848462475 264958047 417277444 829074441 887780326 856321643 928225777 32048775 126005426 595551154 828705198 966294379 969319857 702432418 952995667 194281382 642695074 155643358 514069279 358546500 632920437 492439623 691170700 637605871 786404363 967633272 980548343 489877664 818601690 542466787 620360924 909062386 915562676 722026981 795125391 194773501 502046071 720310693 797655078 662069589 852668034 799689140 913654744 653303630 951228918 629899557 729096365 336423756 388832238 425351660 516200415 158916672 461904542 83463695 307113392 752120026 929353978 769622470 907076438 348270951 658837220 685748589 866545999 388000300 976795995 523454816 874431354 404245687 581408781 869390217 958634474 210504663 355659538 733189325 942004078 799387587 868045789 284932130 813043684 984540679 989767486 1305059 147232218 304307804 962396668 7256606 803726532 190352189 563823383 521207373 867905860 638369655 874296351 282891256 368073113 888279386 969292220 343132575 929719003 935254031 937671518 680760556 804249048 979963515 982582306 439962112 465499790 510351347 959921864 78592748 473715908 619849334 914255364 932636052 997005329 719990180 812904973 663308256 861294107 821279716 929427662 485909984 734481774 978210560 997639877 73127678 269201546 169546723 936254744 288660329 444332597 63083922 918583124 286679906 440049190 533275566 601303437 778509079 987585536 335777205 770101128 460088706 762425221 148733608 862132652 434726546 734753830 166740127 836574106 524229189 544186180 362226014 763238182 447557003 461428830 496698607 851667209 898304376 938799852 218434588 504635002 877689812 955187132 819870538 868975397 322244624 441790491 938315887 949389566 1754877 581158558 239192820 712459804 294614607 677699556 872128871 888651886 199472197 832772259 426788002 534825112 684747039 861066798 525744816 570270934 635625448 896561375 589586168 915123291 563431132 741667481 754896306 945416283 167780065 897439046 471278020 943971881 81789905 997713762 46660607 782253318 969993521 998340201 424619960 747807794 624444388 663636004 607793432 652531897 608342010 790601005 303386597 472817976 690945745 781245676 390330744 961566842 270438030 602943417 5232520 991360432 793786248 830395182 699186137 789862931 587674237 955900332 911912398 938582983 803693990 955067735 99425313 181049031 104077417 463389624 95762757 888969720 602337547 922974493 117241018 431385353 366391001 786579408 426484697 910353423 985246361 989761133 548231454 952002550 433426939 974429019 146757182 160326798 682133676 758514449 593924134 985754998 542145667 962981964 875304156 904959407 488169922 906042900 433157250 944629045 976689178 994853399 472425286 663227192 436356490 690560823 118051717 714364365 672147779 737609399 885251771 972763279 771667117 790586142 502104521 877143699 269811347 983443945 247577821 833036468 597087289 991761617 73212002 704595455 342330013 589955861 540463117 949619618 16145421 208531558 145096701 564323626 445723011 690770677 328601550 706489538 452516896 716619520 332510230 838807691 704454160 851548767 296276587 491729354 990908651 991093419 281586642 963309672 669522266 863549839 907431888 962730953 337781978 510333329 462762107 700336258 151235813 299474407 321442007 961150783 93648757 736663967 710905711 871163375 336139253 673365228 264281359 693435794 774635303 815517682 463919168 786759099 443607756 744433134 618933685 807759475 520589291 860868853 786255381 917420243 527116177 926148764 657004140 867783012 34563183 588274838 218899555 795155204 176146322 655506833 266310795 479140794 790833987 933954758 73444607 739026521 933163277 947719703 492747594 492790756 66977822 887224631 855647387 982685572 626683104 934209973 394706034 695926792 398317909 544937327 340429854 490031971 251940488 565488722 736959416 941484182 676064318 963336550 549306683 994015968 288495582 477832781 762019935 918163640 927512212 950770950 455902359 482069708 116424320 253225501 583819381 991715171 29267908 447582013 572653964 667231706 828274385 840714853 62752614 801830328 729803403 875283159 430578845 538139012 431768152 484426759 871353673 898738608 60100628 89166744 141960995 249568150 911446645 948483073 606220277 854977075 224214735 961414265 123108311 532067191 883302422 921027223 837349386 997139635 420175339 731826875 408516627 550704719 616468982 968518666 337880089 972567136 107088950 180151628 315331586 501109158 20089165 65130579 522318114 633445008 846476995 881079749 939551993 995803684 508682326 880499262 27868872 829860624 289826861 542133889 791582224 954878749 158060284 585926387 830267037 840000498 578415092 942796800 195465282 408242544 864776995 899849906 499027375 848909199 657470228 789564928 716338760 953801133 923576268 973210600 685357221 906883897 732069604 773762418 447088135 726020401 428957018 525553771 436927267 561941476 452105940 487606082 549467640 596516055 281732904 483905924 559822308 561711271 897640827 986341602 414935802 713533955 926790883 989401615 411055702 618969597 334662750 945557305 346594526 412362477 579039933 831654203 84014566 201401278 752637956 953698873 861065367 925694190 569545040 585280280 793277584 976577210 137184170 547506526 547484339 851014782 663994071 876050133 218853901 272028308 859245655 919117390 674518828 884809705 427290340 494697590 810848912 892464859 488978663 659336851 969735215 994050995 329137181 340086550 881487932 975260526 871439298 966618667 486135793 894918292 399636554 851106898 963145999 981304241 946977836 992360338 322245010 813773352 39763800 936823669 774410862 788402701 239117262 961226344 114797846 461083561 471252139 798343031 266619845 929218676 865211848 980362884 555524692 972099186 77879423 273563456 827936203 964810779 299977944 564418617 847783959 944801171 255582210 756350588 977912460 987932219 856054964 999270273 540526229 627943945 912822393 998495390 943665853 944304835 472231467 667727770 169199925 207547743 705803880 831209633 911868862 925109427 736669780 839946179 466666542 969105036 712665449 994193327 865334713 969368696 823910559 894886775 190659862 522297699 839432569 977812479 494409634 732438002 304933285 995120756 523799543 680155089 400709001 726309816 116129200 905313826 81835569 656021430 3227823 193712609 142989552 807848424 976271850 977139856 917162014 964894119 771316791 983142503 613157913 815005985 827860257 833567457 917069886 977124783 289197268 314728767 576902457 616146031 538663438 935658993 28190361 60558584 693721151 919422134 686294247 894329943 824394978 826143980 728061964 734369317 86445169 380083713 15014604 182144513 889798794 908813017 845223959 938373389 302051812 578556126 125528242 630010865 52610601 135715182 763282124 832693000 526957742 922351141 526456593 960690518 192205024 267507125 160884125 550800214 35111731 890693955 961027717 983202198 9940742 771676642 586003158 846887142 123767358 488575669 574229534 843218953 458328815 895439893 66994990 236904789 456689414 460518485 467832134 827867674 967307725 985308572 292227157 382804740 597304652 801802896 570940315 616880624 434788720 805553758 269013497 403559115 437205538 491978850 156133641 396009862 237571667 375555667 823088731 876788455 687469272 969863530 649061304 760281570 523966974 706826528 862340309 987251674 321816354 955510480 235292973 382901529 978192628 987739923 25110420 791780347 915258636 945220267 624905953 959260331 903733620 905035675 257111944 891058292 193399172 483110082 262364538 329630224 774763480 808032554 529799182 659423841 707963648 810261073 782555316 881669421 514664759 677109753 257882794 896835907 383887577 430617093 236814114 780963817 49099621 938312879 456489273 685869161 284519640 877999264 191105476 310967127 392688449 543379344 413044716 625684639 249295681 556515869 975610351 981859738 41014607 641588946 614592339 843841086 396573846 439827069 451085441 946646218 354503399 695886094 595514038 954753481 101496477 743901358 96779773 303773274 975531063 985684637 319193936 920542475 41094361 484597721 22505545 512865484 324522776 747080515 774512400 777394869 354714647 503451199 659845812 711422706 734281098 893719634 734177626 816874605 307246676 915756916 110432133 387998742 169480663 544947746 512524090 800388057 392283976 745091302 597678660 939177578 160183470 929682174 844066976 848407483 933378047 986355535 367646459 746736608 6463347 699468532 307626906 817749894 975120193 995260524 228496374 344737156 446824105 701469508 456995738 738582113 143151616 956107981 297827138 743286937 703557748 707818661 579007199 988973042 649543767 959648188 552439765 731433199 469398838 714064132 451229260 460777749 633101294 974407754 890957065 952670521 677421800 999121898 522219802 814406844 84080427 683233324 168630312 706841040 253855935 878325779 232723633 623801343 361768578 661983603 160559130 477358598 49399660 750900719 636228414 946126730 106246021 390603086 154560932 376800481 770909198 796797413 139764430 384748270 525206054 848252627 136035074 505910503 164593175 317636367 283667885 832536861 666263912 868477467 578611702 711861323 132257938 552826101 563179014 701400148 256554370 311489445 296998344 777862303 861934161 865059068 583510629 646030724 167842404 458261312 422509539 847207565 177544849 933821598 356771927 360090352 748125365 853946103 191749873 742356218 113551392 506549251 621791707 981680136 869170330 943816239 711466102 997640631 925222306 946570566 695150694 861560582 639407491 933087814 328846927 555342579 546785768 660982846 747311014 840210805 428740220 574965164 259588406 671146210 473243837 753282724 365999095 680985053 460523725 641000454 520830545 690142287 162270515 501240761 865595102 960490782 654931718 727747484 690532128 949805701 914881086 946465540 73326359 981832411 415191593 885797983 998638146 999252159 425348756 794101384 228147239 308507883 255540874 749193307 74544154 721890530 763266367 952321292 121295430 408745273 963817556 995229730 996330000 998147046 527094033 827157293 283850201 872762787 441377031 763819101 280654139 301369600 729548631 896653641 304864267 449403332 82530469 115603406 838831670 945299312 606511640 840071101 698178553 721686354 115984032 155325484 400075655 901273164 746042629 786218755 543253167 978775364 523310169 840916048 13866408 528643492 780127489 988810565 693228217 854413082 307288298 951802317 37977487 730239381 852556798 954472877 583649855 958910943 945895178 986315157 395450867 995218592 381295957 389333185 102128844 535024167 585210437 665584654 887741622 947398692 650390977 779174791 195355104 887372187 141820232 828552587 41220361 897100031 313533037 324779964 395063990 597436216 265641419 314562290 735746268 747645008 580304421 588856446 621804497 780997896 659195366 831999258 51159769 642748690 271385479 896286630 86633839 677884691 48935461 127464031 578950509 892907399 59890833 689848567 366804938 443120027 970210212 984988512 972850036 991128430 851582874 887988956 985844919 986081812 7921913 891605194 953231125 955685050 437921933 684735195 41903825 441662361 560098098 675113610 979984561 981970342 162698788 471485416 63760980 368361916 481489425 832526045 912754310 935454722 497913434 787744704 18468115 887977475 942363452 960600782 366492505 779909988 760808699 918240661 563236504 668233601 881495932 961899886 837496251 915411640 210653461 700707989 226521243 867721967 232608766 394659353 51598649 754490156 405694731 423699919 446454109 760226732 975156744 995390697 784983674 891568407 989463413 998055636 56578624 682538603 323250474 732903211 137290809 501273471 209182534 598987987 926154159 947200421 790284563 993397323 155455819 687185395 474753562 598610257 20640908 224746922 608622925 655669173 187867663 875862132 583044626 756938371 990955835 995146829 245937295 250824321 420549667 643969842 188868823 631178663 339131046 823447532 643062419 819424034 661692007 886042150 290231930 971286976 111674864 290711673 136449664 485648596 264172215 476605818 118677167 621331117 148521142 838733381 321756210 919401334 923421759 992910150 190336826 372270120 397588318 831706750 701995269 999050838 167672998 485769002 913273981 945971314 293349729 952934215 445727667 693135572 454273868 474834885 110769613 732170029 161757881 689839358 919261521 933460270 971622033 979746111 647229443 796765222 311948615 616914125 234674965 618811889 485847178 589099872 902710427 960369930 108815999 697639836 513600449 875385358 433365066 985249488 70857938 471926021 489175166 608241281 71200217 85243911 331767043 453469077 630707404 895148683 8783153 61551933 484502216 967519622 649942800 962396779 784331760 929117985 604327962 837392632 303520745 393551015 682624182 719492829 517580430 756247537 655916259 970841565 3610086 190347014 426336481 504212591 814111854 966684163 792267054 848017357 745205106 823068811 192867823 378875878 440957709 853470564 12074295 139534697 280366013 785277065 734440190 903555121 854412843 891142953 215188286 425927898 541157291 983960985 839854929 901685857 101451902 487786220 959431935 976622190 793509526 991398249 526458577 819370307 641405769 970262087 87145857 988864421 407973453 750400543 61094781 633664195 958758862 962640872 524376933 577430475 88817975 745208394 720414336 837051763 333349149 672691003 451663752 760235276 846940443 884516962 886361514 943249398 675641573 914707695 10798873 98277330 114766821 197882194 818406397 841395321 801847929 881139264 19810949 102497375 296317133 705335292 448991147 625764313 547237698 922551714 117357425 401370748 63970682 519429990 221136464 935461892 105945323 458458998 308019486 669447815 529629412 627119155 984322056 998239177 303213413 921825487 685275384 779754454 58078530 808495948 620150717 996797888 459575303 507040475 196465604 286454690 901857799 951417192 479102688 840528264 188762988 289665106 1814633 612735870 446761077 590350316 518909638 958471586 846087575 964707308 92909979 595041725 747528172 894898871 839866487 891181280 602340682 892041636 74334013 371311255 681169390 904562755 442306140 472176870 59029383 287767280 78007045 860044308 114931221 786998847 966218440 988480976 227404654 328201003 145160373 393969144 216292369 510867390 305476 974468831 312502687 431038147 410252662 634662135 126176846 730490037 777733190 859940287 350037538 875866404 724655784 856762565 38853506 235133152 791840041 877510144 319780873 492479729 136508415 199705515 511903156 906168397 464412716 889968942 843519295 949250143 265565883 461714995 436861399 512030996 471102244 865997232 855323520 988940921 113099688 129980436 547968078 733415976 389827738 690731412 639139090 742332689 407616371 893502676 269309306 391099888 563150645 861543570 387704656 836832598 128268977 503175803 228537043 291779928 156387387 699445256 283066772 793141701 764890166 770480450 325660307 651642835 696666603 742005879 616378009 975372917 500395205 873975366 169691243 492112727 684018914 941699858 683411487 897757529 182781056 606471887 235228496 740245568 40593982 266823270 745088888 801809969 371327178 875806230 488753884 608178813 993781962 996389855 322341759 399871884 501296033 926839219 434693048 600332932 757450935 792513330 528194073 543565593 835068502 991938869 220784906 766086265 591219622 815080755 914074232 919177024 143181701 352978614 957009229 971579539 31719543 433600104 216033348 609651295 458629671 543215975 586779362 843779447 360512221 459448323 755118389 786976691 533367087 808897148 297776537 578990419 568436464 683104574 976359233 987513037 432709561 644621310 997172986 999239245 294124919 792825494 361605996 892220519 919151883 994987813 56464024 307595069 659717702 976835975 107878152 357653610 547190943 940336457 408213561 852567265 662889656 901697087 472571473 798038980 344046480 620313404 492113455 811586384 585328577 762484499 520892026 908165819 342429624 635071323 672076074 687188425 879610158 923407830 125393044 699033368 16752392 304667016 49195591 103315204 473981133 778835576 622192051 632749370 427397075 852956175 157278620 320891152 736210397 910008859 224314438 579888857 572440555 823209697 202774151 661221532 543385878 713367744 965413934 991473728 250653187 785982031 406483331 688337831 38285604 90756947 461508034 475419019 636642043 786526336 888593062 988684358 915937464 994663540 995655716 998129699 62473960 809687372 474106723 780622706 928441605 936629257 30900723 635774909 685885613 891327852 225725775 967943307 782641154 939784541 580881938 975687680 871744968 977708582 374710278 836451550 976200819 987413698 404972139 700792211 911206657 943561239 398301661 779784321 287748651 549881975 205760264 443012409 510061977 563652991 426993118 505451127 391033259 444598444 646322148 997629357 564346075 644289790 483923315 539168966 59429676 732517155 663903355 821443481 361242674 642899156 701553672 950000060 563374297 996254870 301133515 491639299 364414946 609255794 471732609 531607629 735956054 768312693 651666455 871226017 843743804 992125587 21830857 868374302 479172908 704120708 241204869 567251710 17399265 490399629 550430253 874023624 310283323 388044865 918423342 921873541 436339277 692648837 973241147 990792956 822360284 834955587 797843797 892628089 322442303 607771964 250683950 808743877 487742129 588530082 956033220 982927268 979962457 982554491 219110335 892877731 112751291 610316908 529883354 608882890 269331487 472513160 451043470 801971379 900811664 914205304 607373296 761092822 816622471 965867944 902796124 956787627 847825506 859216733 626422560 964427516 286389146 494193172 241850173 837549126 53675950 468001887 141666058 812753854 18832958 194585245 31445114 589876382 879914446 919652583 962820008 988003739 772779513 834891750 443180886 569304524 84446688 552813023 217590069 671838536 100274609 911311002 496171529 954292840 37078759 731267184 591033479 944625195 341512449 691504900 603059773 902029746 326918731 859973793 822933813 827545131 860582465 915135980 919065456 927297290 971021277 996003926 90340230 506973754 840261576 948421425 847537891 871709968 514586439 954046599 913872666 979043919 787861368 939601449 935358438 980575181 579504024 710898383 139923777 992396369 943389515 945359194 536839495 819282860 67228675 80322415 219808077 343273679 122663526 927657495 487252774 834853111 606967474 772528893 737496663 913749724 526686001 579924670 928183860 990175861 862166178 985058146 196200613 524109499 699473354 714397194 552415335 634149028 139979143 487536943 314641428 731840947 771397777 814985945 20901766 720965501 182579281 685585498 318272119 324813011 64701909 166257317 647741231 746012250 129193815 553231733 745745345 813145378 190524855 773846120 16847412 518488673 801778315 957144606 976414502 991380998 914434233 990661708 509094781 566988440 153199508 637811787 432386232 722665096 94331500 601367098 546164642 755098322 873675920 983075379 297819211 553440386 853373311 895976471 902912740 991904108 624862049 808230101 971748516 979986194 529893384 758908260 851983345 909236539 938913060 980002110 808184494 995815599 69738920 373758437 232894940 369597305 906200323 915982262 747103409 972570621 152763873 576224971 643694042 996581142 33717408 993991556 279483755 867102394 928782441 977009452 425894259 876760263 230706925 901803394 309257508 328564779 407987613 432666063 740095212 961374937 190629000 485081990 306279193 477101028 740586248 954266273 975017781 996501415 649254638 693782149 355104141 692780431 875805027 973045249 185189484 709456454 911491939 911825636 732358186 921736155 653790285 918029916 93481215 428077483 93053393 544068198 462642576 882440987 458193864 691968230 487726806 727564922 547321428 589158133 131403372 457791510 63729390 117196156 734048006 877891252 777945895 988140551 457322594 795960090 236298367 715285544 445676827 890042578 472809869 854318146 661970841 994704852 427054231 772205452 402803579 694536003 4141046 124975843 975164750 983161308 125204502 494221485 649117949 777904356 847930051 875075808 933853457 947063097 826849091 995123081 629376166 835856964 831262046 892734688 664006396 703947619 13685625 364564292 262480753 370291017 565377674 831465572 518644299 647341957 181306514 502644640 55342093 887720092 808878581 925327606 42335921 616539748 7267896 564575243 78283084 468493540 401910843 595407278 989157700 990767406 542999416 605303870 96362379 326745065 300554885 873282281 453617384 571112763 186920268 949653997 862789966 924134723 341307217 656174760 207096506 293272278 996838759 997141007 487561560 889371987 222552390 689208770 425940985 455583082 183688785 544549456 332802151 580393085 445465920 939507762 156364451 242868078 998062469 998203414 112697088 983391762 442587357 619370797 325415136 396760059 791042347 801068871 486593341 997865105 382196091 508001655 899749792 971070155 33176955 173467329 681481057 890893923 451269955 478843926 403657293 468767138 648432566 867704723 904647319 910546107 305992817 881586039 385299777 773972677 396022141 787361966 708287917 747171494 630375049 641178404 822732000 849866873 136928277 356968728 155586347 576204437 45781968 225723965 179841178 360371099 146268694 617354625 291067758 763681828 120347457 230395842 410345439 984180143 39596397 606857781 875367504 922710902 863224622 892032227 55639723 638576707 693968971 864977876 813367338 979865095 283385389 392037330 118841381 355563277 847704763 873773864 209152554 637572754 522581912 661416185 906381133 910379819 847550154 956265588 105360938 481382776 85213452 816382994 3204633 631899981 404122516 668664380 433735356 544824622 511631915 820938516 626450021 975374503 866075420 950891244 931835146 956470599 501931559 958354347 134474910 215579990 192426042 239690890 292303599 686206559 426721249 543136475 631912950 637214630 928411854 938109431 792131253 824515958 971489750 980093665 675077118 751900661 83891357 339115102 222390043 843310155 238115827 808309563 455857128 547550513 256988095 390800296 697203149 984953270 628526632 936266667 828397251 945928660 886999544 978452061 168596173 330784599 455953578 622628055 410738474 978959470 126870148 660792234 33628158 681937220 353442865 968318200 29631900 155618820 82083640 358783751 845701314 951982035 988732423 992452508 838807114 995426502 273261462 807264911 328838447 796462434 49761070 803988399 988543143 993488032 487860218 812187929 577355782 805446191 813638022 882861746 44596916 883529669 856629645 920441484 637438403 887967500 381150942 882256307 178867843 650745507 248235124 430861848 538213635 595940002 919572067 997641322 285487927 803812242 372245626 971046522 546218051 886190807 145502901 791733118 138475684 726376687 470733278 688816323 946297320 966981463 694951023 843860047 978196487 981146817 110427158 882389963 387331200 702617800 197004138 547946853 913940318 931337519 251041173 668175733 663041482 684048182 800915589 939909286 115948369 891900931 328935620 745204937 761215442 823305089 459646227 943516110 693025997 958613534 932721339 973240087 850953982 934204993 44317105 854769988 78079131 707971304 316288029 615178114 230366961 935782937 953579548 970232906 74269897 313371993 462274002 897277514 772195741 786418322 114399053 951447981 243296078 342148091 836427375 918693956 951835636 983445990 215782034 843413322 911025682 987334851 216235456 933182785 251561953 520947423 121737486 512893351 376661660 928461627 652015198 803579307 768653976 893916746 688055371 691169062 928636250 948767144 193836774 952316690 80845572 359656559 134238972 759788379 722866516 870187194 958980305 976243166 726154637 747064108 517931486 842795775 529796632 712053204 682587383 760187694 25472413 315433420 444920465 475764024 259780119 994848002 863933074 904520618 174711060 205854495 676867699 836074815 779262865 819827810 453656181 899760383 290262995 342722758 135518085 283442825 252857012 262998625 690364567 798272035 659968759 987275977 649451212 749191390 757270704 926446645 358582153 545041057 267037114 848915322 107448207 464676647 115286941 160993449 260883772 711795480 909301443 918613759 628790189 943708415 238010702 893942942 320853045 378899370 544967799 594577704 210107734 345813805 323413247 815606199 816804337 833733953 41052867 186998166 50023929 621271987 894977292 970312884 449945941 601437763 409978696 721210737 404304040 466223515 354381329 446731719 839750736 861305321 292429335 456847914 683660233 816279373 792995772 982754934 478419 607064816 289769459 810840628 307523400 841190902 141095863 940669412 305399168 452698494 685827198 926893227 303188419 548247433 783821904 837562429 379652634 620083611 207729135 229725708 759677678 996471726 230759897 399219412 21970874 276378528 283968809 532571579 985357899 995578722 549530004 581744231 776600244 874420983 934625223 953469120 781019388 929070826 543186970 792873344 398590758 596402765 411630766 513279377 353164912 682804893 738592402 835726964 798553126 960471697 160683791 351284984 366049093 892189410 876006639 982442674 258114186 600789418 140588783 911234887 769452423 919881476 477650557 539144469 405240646 453000744 849486562 911821776 875524799 970339812 602340054 744407103 588460009 757632722 529563799 825407753 557033143 818196552 551851491 794905424 312140197 436142293 853880424 921357575 70709686 355783488 426126337 521533432 766344593 963165686 685807948 943346696 994990071 998858138 218178558 708619580 895633934 896621114 425031999 970794319 61330460 911854428 541081139 784344605 50955590 558531918 366181859 687387004 780169467 863234104 880075524 907886244 580938190 921993383 857109715 909023786 588044052 735014791 457684571 789841681 838557163 881205668 815964826 876618350 123523846 347481633 402899498 869434680 177235489 354065229 173319692 784928458 147613012 567741363 27995044 722440492 467788667 831323771 34764318 413542176 541493378 607995326 43689651 988955922 362091135 852641942 305780189 466988098 217841371 261298549 762505349 877092791 55262294 590319111 702343837 786948885 810158352 832163299 116946300 505704495 13192656 869688963 718691152 766906517 87633565 413997561 152880275 638579282 272423298 330612187 341569106 389586201 283233998 977975065 655825567 660665231 975254923 990954447 20289651 956062307 378752517 407029587 214972297 361202052 695079149 950537946 522761717 555766920 728814886 931105883 222827567 694177404 136798477 430230152 164823804 237628259 881088395 961735164 992669559 994109707 359740543 793731542 727013060 941609292 65105338 930791108 129743721 751744147 260721580 518249172 44911869 972756860 664345264 971974879 453125983 754670994 381584750 558165866 291997557 626248859 571208146 811366404 185217374 695868187 214706648 362832162 984854425 993236455 785872646 834671763 905488959 993487579 52183857 102249838 882210787 901307521 941634681 964588955 503258657 879531879 752397195 763765200 638307977 755655841 305875803 906893518 232897334 250125102 549940395 900876854 102055340 437298014 579109702 809796514 839213198 991420805 183021330 217998282 46083551 397137732 238382113 477486915 434067206 857745569 851312224 887208836 296939537 588999933 202575782 889160226 357790643 491060347 431539088 970815502 398335804 469889763 676671794 712518321 915990221 928566055 729133414 729335297 698576589 864407588 115625317 608992108 868671981 976796111 237390327 653584266 43413574 166132954 293569520 508209258 459682657 776889581 11653249 671032373 959125565 984072950 320482091 329481259 306129529 636490139 503128404 908589953 641047160 781239502 555890694 710836089 776675804 873737001 666755878 894659454 646996139 978893194 197635838 920166000 377425570 685257885 497222265 832316928 695871265 981212854 28827806 797841940 955158981 959001776 816307251 887696614 297281084 614121430 56188030 723306546 644432035 954325680 752626181 857499667 854383237 908231623 954859264 956440056 386329010 722009768 499997119 672342222 78866421 274502859 272075855 710192836 420634452 942390745 186871812 943870164 629006738 719743065 82568828 135092614 900601852 975857865 548931413 553006040 937528194 958923585 945682043 947502171 632306141 761224767 713374233 924300813 245037150 575348955 191647972 253787938 786588293 806636322 302668235 673373145 973470013 998212076 482820669 886461334 217407676 716326746 321276835 539631150 806802022 989975599 843324307 873239240 224513239 240261607 682263465 871849512 621506288 717483504 342046505 499937581 677944458 878276464 122187235 522211008 127987302 468161096 266755360 558945661 663800912 994542681 500110059 539951087 204563930 291960480 751614697 845129955 195608914 922273069 969919104 981962654 514679339 908050144 213665881 510919586 919908157 922068306 497413841 503514964 476925682 856131560 934437581 980957809 420436456 642118662 112126776 630283778 252114055 531820398 166907900 354820816 274349383 854046843 158534143 448338038 17114125 213044405 191103283 450533091 481934648 986700293 679585474 737622200 854740243 856312903 65837605 822737199 35796158 147630502 409819468 682583954 432114280 974790362 939707893 973331642 690966134 733835156 758954390 902083812 497475600 944613028 700919547 767893696 660180228 937543999 13332863 418133813 183883343 524486165 935690089 975388207 448150921 984900009 701222226 886849679 478336488 855798799 230226399 554185767 581236219 619545094 942889040 968714888 72625470 947386872 342993649 901183469 112435984 336582021 490978197 716138888 283757629 967236969 718220877 829829988 394073922 664282221 343660239 862177494 416185582 983272189 714830472 975962758 373550425 869384158 581821196 711665667 774842405 867517862 625404067 986040205 561210818 699086491 518716516 708254565 864636385 958130784 789584153 817836877 978597210 995004168 281442067 901895834 100406796 646079046 375130820 889831523 994181319 997436379 392687601 531947732 713423614 866590818 538935105 756598890 186804924 473167390 358149559 377983446 315126228 646580494 874511929 987470849 165837722 655485229 324805376 701516938 524126435 550042517 261539834 292235431 183667218 659051684 73408426 774469558 695853514 907381303 726178616 844402366 860795719 927665428 9555248 66176937 980051625 998973012 256194269 258691498 674664299 929935599 538947878 794686487 249071723 923918992 783565220 963187830 993572060 994248580 336288906 765115546 590566756 829737183 844539447 864200762 475359543 609809877 715706913 904488878 478542304 706090642 631138779 832989776 841748353 901297825 912533980 938529136 143906231 695214951 51379917 827907805 387858954 855803966 226386930 726537050 637628776 769894215 885497973 906779090 424362596 887674015 832760147 977938355 297712463 568018505 708054437 772413159 500068501 668959539 356907876 788481912 932645637 942204639 287906408 834848005 543447875 729586361 634538344 685616240 659101685 675882016 883369219 918631155 475170944 765574723 88702110 963340996 345486054 625147795 930710793 946869875 617459844 883865928 773518001 952135295 703339310 765688190 844249494 861015532 825538907 895818134 722961493 746924258 477899525 926952798 903192085 968401161 219085038 863651339 934780529 987048176 966709177 996799592 205184637 309974262 684454620 724335076 6711430 620245212 639720694 897026295 474516779 653929519 722186917 726262770 421653289 853336384 442698763 691662432 678125567 772773637 401334117 629978044 451230225 566479309 829931454 980500203 132752438 466286803 319901151 429540419 999126286 999327697 701212550 725896511 980220761 992153054 736251939 883400613 517208211 696524302 920226751 993516361 462585023 785780371 550460541 964972844 324608854 878474523 512312404 586129282 239154104 973594743 112861873 711218126 835228481 970827750 972930656 989829875 781473909 955436418 507238555 735396550 565552391 639635600 116320680 988665478 745194036 860067603 823882726 965649449 677104734 826567402 437655525 769437922 651872808 981625824 987475875 998171329 652358800 744038866 881254445 965064126 499079471 998745271 311743236 713221791 726175030 800436541 807610729 898331638 38897788 500075604 306131822 599585691 498781561 885501922 542843656 733974650 150886837 957612220 22538335 670716463 800546605 801535946 744104768 924710552 36257519 335851349 266044140 357617019 619347073 800425559 753547940 878334510 344596536 465858371 280190759 742508724 803213738 919138365 853482958 948126957 668934039 687660577 453256545 583490907 307015797 520023717 668574127 994973884 385626274 822178986 772626933 953607027 957461124 961313252 4367625 711180731 910730056 951802011 303847634 476625182 518899396 731242179 382250375 689373718 174521840 803436244 682110758 709455843 810012601 994651340 489511006 928777779 45587006 880532833 891232504 924078504 750840294 856863075 346130700 701513191 420601184 937786347 548734535 616336314 786113389 954600951 773132251 933493798 304786035 648321100 439222184 822552299 667238747 679639375 147756680 954828025 310304027 901111755 680627472 709961987 604995846 887473308 931279830 980441815 631614705 859945117 238383337 371465116 301298116 304480312 555244202 967565122 112521304 381475796 929070359 935483608 419603105 881407144 605802050 914975576 338677528 380860181 681745979 934980462 788649662 904309406 633936443 761069511 630395986 755546770 601370656 719431451 687735133 932982231 410987815 771500722 711743788 845148213 812736283 839601755 10944441 236002406 413106409 777369490 843333521 955039488 666595228 814825566 418255249 836056567 173236703 975798710 125391062 271430907 874223228 888616436 357388099 576394208 650597267 810323982 900705239 968585223 495916850 565458373 782347962 796532318 123021638 959803920 241518285 760618726 467410784 904201114 59112042 89166179 277194327 970768672 112901461 611461900 467611225 849698736 982325036 999333911 535404436 757882841 404260264 960229810 571598195 918689052 14006961 176756737 296527248 408566666 579749573 718414876 157991753 845145148 124294788 992439275 973649159 989282907 394421182 504376170 541232239 753549991 662733831 881389209 401484284 554654495 114771282 917816552 679755777 791952779 275955486 456829276 771319630 808795768 217863871 869848678 528527451 873480585 765762495 944263297 200983532 845647720 112647497 356022623 667521172 805806122 88368133 309072998 783487756 993144512 266071832 992873175 126381047 578522422 120911925 206487729 488806229 786663825 235526282 261974547 406698280 608056516 47272893 600166017 392352755 595804660 439067251 784623064 240487067 965891779 334334790 978921388 620259534 797665852 575523647 965945928 43266868 133665159 123503729 574574511 987531768 994849245 504125893 511626575 82948772 214286068 733043028 913449114 636101331 757628845 129819268 972957771 268216020 879428235 546296414 760272470 434321907 618537544 759386349 994470790 648805978 721467642 281656993 365312340 56977377 158939505 98993586 145013461 909674386 945419097 893587719 989217131 293250125 709200208 448332609 942811951 748694678 967589350 420299339 810857456 183547615 730370248 713434535 828721229 882515228 983317862 830378592 855914810 2125940 570454318 879120698 883483529 114154196 445741364 291864426 773048622 221316221 521201527 660333050 782292901 475208758 931205863 85518460 190731000 408440837 963416632 424395255 659671245 629800819 706379334 461168921 643830459 240089751 927732868 737457301 845000615 171595878 875826555 247028705 830904616 644225336 879365828 56506187 293051305 614911402 904170863 200219633 783577948 249824613 617422757 911505939 960659968 245518614 885193407 594286378 720793357 966619081 987867215 113365373 166142274 38052103 490075599 102389650 418266828 289710670 710578302 375869425 880357688 56846511 125035278 504268403 986474174 264175642 879818757 849290737 886231106 602832617 974336477 673836580 679851256 611405416 643995379 982446775 991137751 594343114 746718116 410278391 812159216 512611660 597650707 481877247 858079806 910982285 999131605 801770091 958815829 528365864 606988391 566720141 678858945 640832389 683065120 115219640 666276382 443384212 945811657 797007855 990280133 4011573 598519563 590765887 867609185 210147657 814915596 331226976 365269111 688535837 995303122 303250413 823300527 341600657 438471561 460937463 845361596 890024529 929179291 941617548 964598669 390962470 499732363 207455615 686577356 487744692 520740094 73518664 993736840 372793156 550748960 49183351 502963774 511284541 536627150 402197826 648598012 63593252 803146326 940481923 942332853 888531448 924968195 40992452 709088326 312093690 779116923 990931412 993315472 903715765 929910569 635709743 829391653 588973536 637712957 884900996 930085686 527331890 756583948 311936575 918005258 490431559 730121658 965963699 970712140 171599703 182193006 557061978 586500991 770329332 927384616 463455026 668820442 702779297 885491019 264386082 755360448 372295256 607662132 502199511 819934287 565783854 737012019 590070011 908404279 269209751 901167449 918948904 979769839 475481149 964370802 467810101 523478955 531708484 889503499 718361587 969485129 274285755 395745225 845664767 964412455 236734418 384411049 607366018 727035782 761696173 771824105 607754730 957128106 605048987 858942536 867754473 889324227 875460302 940464137 572702963 659138603 401825695 767298039 234054014 614054972 47861687 997590467 515930743 555821577 80535297 677950995 858983391 896976199 71998384 840485940 104655566 522004673 51151101 635300191 760628656 907101374 564435539 849965025 823254909 896698186 327073360 336319617 445792784 864346824 836615692 927832950 668919630 806645090 507728835 571365146 979066641 982152543 808495861 829334799 479548089 680640808 108948571 832867481 877933058 966678833 562269814 813113526 821764326 912184720 87869804 608540414 543631186 940149076 303162232 751758699 739607132 984712764 89676982 322748712 3419673 883220024 334327354 823893960 36854412 111668094 394951842 715255379 952047890 981401534 599904289 771403985 732645882 965631370 473513984 729749669 630777022 751216647 508766284 706049669 553129345 840161403 320091961 496025610 470202999 493110828 598818864 754285885 86391672 487136820 246571220 770689205 371679689 391643497 243133042 749491521 295886634 601167080 828811510 942488794 446694221 663338263 201695897 229276234 70755516 709380631 89903117 952717685 732342973 737422556 151275917 561840050 816339443 949171452 285913892 890258961 705330890 880257660 806720964 894355284 599722820 625498550 430157438 955054140 651581371 687070324 279150937 599227170 635457298 762141435 228816162 463406892 187108250 233282497 481247277 621248944 403617794 435600379 284229292 442166987 20970375 60885522 904673117 949103111 899841242 934771099 327164740 408235222 593583862 816155125 669721592 717546319 387849420 585183150 623187212 717477176 179132629 636868908 887468625 928911398 422969834 669772650 812980990 991169530 432622304 504474127 579675912 996631150 306204392 945983366 599812983 722946774 25009936 111769341 665924782 921723298 540269709 943836517 869718488 975088769 473417586 784500903 560101814 747529077 495807253 923417858 186035080 716246902 102981150 233443824 857721678 933961498 392833711 505077021 350172317 790778392 30404981 435842116 662439632 886805982 60439557 77540669 64608460 266310818 67535847 222023678 396104236 971665983 715877682 811325463 420339144 998470168 284125054 652639872 519011073 544534452 829539892 957437491 203597981 956737198 332559565 367756284 749348252 859870138 947764535 991227453 319991781 967804290 871221975 949250658 671458628 979002337 692241304 738487308 741250508 923386189 67339179 416319818 737458174 856725625 355076472 799244374 306255337 475181663 120803225 625816295 195398597 447011329 544221863 545127970 518848368 795756739 834341986 850804413 605331805 741910063 275969604 712834503 181989278 878717812 799068666 840863469 119647910 432688134 472917984 904284004 352014867 408038560 140010247 508069877 41990367 79409307 172311240 890189888 592915035 793647024 440502295 944376886 630536455 991616340 356257779 674343559 837505743 865602909 72588676 607925089 589891539 816732157 474194296 679425220 214938831 897620996 419771740 517495895 306586916 781865930 449221807 989964916 417179625 600484561 608981955 782520314 529463660 575185845 221526938 520966555 884515846 981527865 526695103 903525257 455370100 490453306 256843096 258759232 250886288 946970604 852558003 989208226 441686560 539005011 792881548 993483690 551058813 702370658 638572758 976525767 632449228 778913821 794926739 862298443 889624154 961117267 242701530 815954608 366540256 553605468 863201583 997740987 895044091 918853072 842583248 853804299 112611702 781049228 881019846 977363942 436215633 599968200 239752119 437801284 541406147 552649506 463915531 668758631 643211928 655208922 203688656 906173685 688846232 988279569 745566497 760277155 543376414 734098932 951959633 971481823 29315875 688798913 943875951 958055970 718015211 990702409 989070375 993231957 60338605 190929546 893368943 943912854 283941359 917755038 802691362 847687365 735601217 830540545 673993118 776957698 607972543 806451931 59405092 830241252 979194648 994451322 963229464 985627520 194130123 295485306 959086158 993600413 661171122 847296340 113621157 583015547 801955816 821122567 86308783 991115513 520861353 852266109 801931207 891185244 63185864 656109261 239977919 952690937 653982905 718602676 602568787 967345532 406653311 486178939 113224954 753049346 584583659 939383756 150568870 788208540 611067761 770077298 283665669 312472553 557606268 741954368 762494239 769369811 355158897 900604544 427542494 508931730 28425364 221212260 654398575 822787309 137115722 156691866 967851637 987761716 495448102 911412455 629322833 905953122 889803104 905183652 375145910 950751844 614227683 826985397 206265809 773552395 907329564 994748879 832493689 889504522 497395356 501435356 426866873 733444460 754672179 867490091 796466497 863463643 374127125 416522662 508011804 965441672 303432303 731508479 855744628 988658044 551212850 881800035 886965838 927590847 858302793 926376385 667825045 973804289 399843847 919082101 813476049 830890112 373132447 669712984 328521436 587997736 853266294 994851642 625901645 825872003 4048524 422014590 669684291 845958064 419388888 842298830 403189096 794138593 432699052 658313748 658123134 708368694 423804451 648847192 835651259 906194213 728492958 976969351 859498501 878437545 656717457 850978947 933823979 967247287 203048813 581079833 868586953 889106582 828987311 987161054 185937603 728503922 874900295 887095193 746602174 766438169 363654474 969913449 94937300 986332461 855982042 918785374 827116615 943442174 154230531 982132520 857145811 876485012 837912102 859672987 155770132 820293447 461575767 507020335 955930092 960791726 381812445 586762147 798849884 881199930 23268278 546795542 870510999 903666889 164311348 444043664 381874768 818445964 796306432 906177330 96139756 475548415 549556966 694903753 552946966 666115034 932616220 939006408 550332190 712114879 712963237 896633219 120137268 452468130 219836280 698330849 709910904 996458480 674203924 818139506 615671183 834726445 833177683 891826688 333601503 341137622 768150377 782266439 614054533 855109533 582134270 995610324 313267996 371838831 846790314 871710946 319937494 984504573 288191111 913276052 843540579 998596061 101832145 607294027 868456549 887932740 742550349 932828097 739403655 797249184 717123417 972695237 69756626 392136135 693897117 853603181 124883936 878428439 712060642 862364168 800681797 846731188 206600279 961472351 202092047 623716039 56363241 179092839 356724359 527804134 221387980 663066788 795769385 989210520 356073576 744413427 401094382 652805177 44168499 456002724 28741929 107763721 775302487 859581806 39643731 284477532 41617710 429676906 726696233 847776984 376546830 964167167 976237982 992042920 206902306 902119293 682280919 709053992 292276007 368996831 245049582 347352881 598028298 880519704 277491025 925797928 529780034 579554216 838184603 953217316 397407447 407120171 785603965 899797865 632528134 821180081 651632225 690977487 574137609 739246738 726293128 819700317 534619008 723893152 106996236 346426780 661691371 702500362 414032368 981293403 242513132 448849563 890791365 922803004 163563599 514994551 56032802 318911588 475269706 757219846 947553845 984740322 980153944 986016277 561794296 795690097 291614769 435338581 888712195 903084184 432294345 953665174 282859936 708778474 830601221 952716922 195951660 732738307 408269559 631999970 762396592 955997879 928171261 955279766 252832593 607199084 944388285 988375470 227806672 816371253 299438459 574280966 582637975 858736570 634961615 924829719 602683584 819041675 212090786 784165565 687815892 796089946 395177322 435173554 228735560 928068194 862139191 979987165 464276618 813708748 348238306 602387265 556483843 708036072 588453841 956348408 785656068 923396256 935900538 950922713 30603469 386441285 687757802 913483416 147384680 872190884 299270793 348343719 874811104 943382524 985977153 998231323 44762453 639171210 355243321 744872829 470137085 989265891 331902780 513429428 811331019 937784376 828634728 961625510 205365049 874423214 685372428 918123477 883125939 900756380 849908423 850727376 773961024 847656878 325991502 537245232 719016346 730701550 609494599 991575076 185727219 905609619 287764763 751255638 427780821 978461861 127287311 958275379 467838212 633721450 153534469 190529957 246483496 511936974 752643142 978803240 931583856 977081288 620250415 794186735 401448096 497944237 116253253 244316162 91478357 447883758 228845720 336771721 273366062 512640251 526612381 530174816 141551264 258624413 214348763 736668355 236834445 695998521 671994830 950343340 543065457 770437809 289055509 311915179 402239371 831746408 893336579 971720154 747582969 812999150 181019764 754971009 728909256 788491807 978968024 989723419 789185197 807911565 861593249 981450583 299289418 741315969 727107256 850332733 26846006 317265689 77230222 96498473 998597834 999140026 357843444 425497086 992913430 996429648 817991892 916555647 803294818 958552567 331713162 654698972 903484332 970543711 808914663 937392172 63216031 82848059 844544412 860708869 980896772 996811976 149372203 469738401 564746876 947535519 786927615 854347786 183429075 943409630 563680293 815424922 858805971 984689348 36621059 905597865 750321100 924627559 878186307 927747868 282979267 636602975 125463119 913580144 807904047 808584861 782070888 901596511 958465055 997375212 624999603 838385074 647023149 844818278 801129449 836986487 191537378 247189121 596458840 862544839 895467799 910255314 966497407 985551611 493764137 668812023 635519737 702052665 203960430 522574355 584675987 794712102 530838914 716940040 616540548 769051356 380861030 548691889 331799942 689401127 43196729 968103083 159564027 360155767 901114358 923600124 495466670 683494630 835431629 972080340 454048797 819987098 720348908 922842404 691040553 988761063 438197827 670569038 138814712 761525749 563320705 614632109 272405201 384633201 309003414 514506854 445293137 653056806 199657045 560662363 911381639 951815770 106882100 573937733 121550037 169942630 611342738 668752991 29857858 199092367 345406861 879238622 186170434 566121895 24336530 590300635 475606797 950791566 384064057 732214274 206755329 760950722 992005041 994242989 689791142 750261595 340619311 917114515 766003302 806683185 427337739 595728933 345751865 695848139 957729348 964705395 889158940 923099386 190887311 540593661 91925366 957107538 49244742 477477648 737800191 898114602 674733117 864190956 447985516 639888394 410560494 824521843 923384039 983825492 123550029 185889295 655353578 922477042 582921265 910305547 67206533 675463828 487089200 741195786 237984649 474573085 74759850 188771166 369345801 986003045 723165435 774902103 379757740 616421543 803781267 830907579 472394421 828985885 667778667 774786076 237548174 702954868 79651473 378217176 79264567 626164013 335905683 463433048 774574510 925862991 469290304 878390863 570680584 855507000 36834946 897370416 55953252 227696851 253949326 777659961 815132709 823367758 909542061 986802261 163349850 191063336 122850770 261154388 328515631 575170756 822877059 996311641 990148905 994171665 603622741 669562689 823271734 886920382 113440278 720755068 602439817 692883581 129692130 660072028 990951816 993533597 736557337 830939901 455051920 665527559 254339178 661768920 55260396 122861282 713454407 942280966 502466982 776215565 465831664 611804083 896313451 977429162 845525240 923220347 94209444 442429562 863233454 882801380 716972521 828924247 356280050 954343892 948285051 960734696 935758271 957316832 590898482 684249273 31983839 138253145 816970136 924736639 480871487 603725675 859714159 894369542 243703581 939398746 538890170 771252291 684450563 827298022 882875867 913826683 481579251 982986425 112326331 295904770 628215640 765237446 933789679 974294422 344429190 828451850 872748329 897537109 1712296 90993771 775642309 933754646 20718369 91847249 464580448 493378643 787700109 947833494 704490288 903343873 133576342 759340680 820253966 900678579 503112552 664933042 207421872 640235206 662866393 791363291 941975706 955249798 470942154 962146682 112308265 548902731 220228710 474477822 346811288 698316529 323279545 880874009 210955815 624098066 685432487 794067746 372195302 372662963 808877842 935240007 65261736 818370771 815234155 910943440 782197463 822097116 41480603 389664161 332463101 356896455 490397840 949642179 621393918 883943562 996071264 996999508 854055775 925121893 88586550 410295583 448559071 894878733 488887227 990088005 184151741 311371786 459375205 606621676 535076737 979000112 882141357 927669582 666138440 909236463 389071162 898804383 546816021 751905405 309762229 571059559 518858489 524689771 8996722 526691263 391361445 621403459 603286968 904824519 303824737 481939825 687656153 991083241 139651089 930827686 346525743 884517837 437720220 711139906 916462773 939435379 377229247 488854180 72274536 678760741 606478265 829618776 431419307 787841432 961477795 974246562 492480265 811517647 758314679 807888722 820466826 927004898 76480060 287606571 789929185 871854733 494221481 500223335 421958579 790198503 897818085 925875996 453637528 647270534 180250909 558307231 485677422 553418844 208943447 903405348 283249350 583319423 489373585 876129129 82931827 622317665 373878654 542758146 705994548 950808461 693574964 753640348 325326332 618575884 713138522 940358524 748690927 990225271 842329849 934021145 412322667 807451258 681959868 759695611 166154610 375112911 545891726 663310388 988880501 998954995 346958392 364965184 254398625 750747319 699457377 956034019 207511478 831056076 69322495 837947367 332295124 624107174 654866944 961927171 799700613 838245575 363769460 390152147 833476516 916616112 353161281 484757861 647132809 818418239 381465566 834378845 268797976 619493046 158657217 721872521 567228806 916869932 419303272 498388352 165852499 958806722 936043357 938730731 236203480 266098305 242695837 626750918 240967232 700002244 647668859 757611062 957170803 964876585 789792746 967047248 509961645 813937796 335985420 827940031 114678861 372454274 47288850 545457220 136128657 543699480 634384358 881177398 399300166 709368619 102815294 692909824 194858923 979529478 240625270 797009477 158281571 726195321 133471494 143652685 754428345 903786301 503393026 790547366 864454903 875037020 850939229 855600494 748783329 998718014 341855727 995139031 79585130 360714409 935282002 937768580 902966713 970715016 348440108 944068640 963629045 966929076 976069999 990431835 431905917 645592969 766434932 774908780 556130781 856510238 900712203 984592814 510562652 988436989 813105602 817725761 313920842 672196208 104690126 604767651 792205189 914650305 660117958 768109169 256490692 977066767 597202092 900995106 708922061 916938771 304930539 380918859 738318511 819169420 525149936 725363184 649196578 991268691 802916219 942123472 120879893 618455508 638571931 937905251 519639791 587024497 889435587 976918354 251267652 494713163 71751895 276796015 401503171 425437989 256730577 780190982 115441393 977513071 325790718 712813661 991988729 994135620 297694041 490893022 948141379 962512518 414909706 619150053 889998504 979579668 239305325 605069193 793581242 810764410 331476015 984467450 364427744 749339861 642997657 648474190 664092537 745086123 683030682 697575067 113228722 451609235 285430931 726228075 587125647 757357122 901201375 961407370 291467655 328704160 924690554 950228083 830230865 908717329 643333564 790993418 248838373 943882668 227291511 703290428 223158114 471556292 266765534 406779534 663583311 742202777 693813392 784823135 840214423 944383093 188085299 908863694 634484343 875556216 984912865 995923474 251987737 468579187 193466687 515308132 995136538 997562890 77396512 846954231 215427454 403776139 685722016 826725102 800421499 985463538 113728244 674833478 934172024 937402749 427489336 848350743 646702706 760425893 192830217 733042681 758973528 882506054 622621460 882078120 491074256 743887342 872494948 903687683 301346654 746306412 755616158 816552966 636551767 788996491 98065384 437842306 823127986 988664708 109941757 123398659 582912917 810752082 813410638 909004501 272196460 458088880 802692064 993583165 152684584 440922828 510468691 959791469 198089065 242401930 926264331 939249025 287243142 452080487 401076004 525023671 151987405 407968345 791538349 984878304 734271536 736905488 577221568 728228706 44512665 465150697 282173660 715774486 630317753 658118699 759252086 818479473 477111591 555062579 600947465 810736615 33014247 960234551 209948642 606039204 574554226 828675102 210135563 223103624 542307469 959690870 862508486 994305454 190460799 603837922 150098657 436450387 86190965 979776227 897366344 969996198 283007282 300572717 284559045 570912323 188282195 674684304 348845269 581757862 180720609 485988082 937921358 979184113 525854692 684219857 519456794 665433119 303450904 320873937 990197442 994024122 784488452 903765099 434704995 976772487 918993818 981984784 610380428 798074492 294774487 447613459 979696447 997347719 562581898 617381919 998042969 999309481 113958500 373909411 584851196 908810871 973612864 981518067 614674521 830167001 607694458 632437637 785767471 801377785 818823492 865796878 65427527 482687036 69253930 560099491 521492475 870407954 523091642 532497481 255670504 395849460 561662818 917311462 161389084 768044917 693445270 957088653 796571466 848180432 531478651 600892448 591024512 675859562 908533386 953323931 414359089 557640778 487598226 978673565 118705359 423863273 88996740 239481293 621234422 700898070 979014517 988078345 796144429 805517127 461507456 697562031 517261669 588831793 577643875 731756639 795582307 935334019 878872534 926684003 356561738 479762507 838862963 934974262 934585024 997816435 526004390 607388167 261915080 521049017 510405558 693841235 130341690 363807589 379798951 469658724 432008674 935445256 528037320 902129337 234561217 525455808 978983505 980208785 77330280 967173422 664033426 845130602 232719299 654181577 71456210 83508015 58768127 667514451 166434047 778977222 642159554 872142939 510295249 549533964 701115772 715553785 829988462 980290584 219308925 916467089 801871491 879252386 551600310 782883866 844838924 878775957 512129128 870127836 841803747 907682526 415064052 859763288 44391912 113890983 307380350 675693918 71978579 814659091 841570555 921223731 430872607 449748884 818451513 987709217 238565927 405131753 59811580 836480579 362873907 432711504 437906570 968473195 320285213 974779548 302030516 431656961 338758282 442847301 723480607 884790222 287124704 548198305 257306110 291103575 751322061 792542167 799557558 920255073 511412944 921982788 701691658 786165946 615608775 858196548 811491565 822044072 135660369 573122441 169268123 382636611 784954442 987847316 418030532 980325690 911414695 963072736 568617347 701921307 807989311 809650952 628335478 861091125 849779595 886029219 446456244 643235333 358998401 529287975 160127949 357888077 554208186 686796021 828179003 898764481 483875789 721601352 319471891 628682054 456103578 984827138 7979478 156366125 698699891 787039411 894995781 946111208 873721074 970837255 892603745 916707318 425834582 943215271 600241977 626291171 464023588 899940687 705753631 958413816 855024583 915770515 80061237 849367152 767287397 908978505 373114860 948197747 986021643 990043026 519855283 949089263 157560631 822465616 915930227 991381455 882926894 944135550 716572750 846222084 667506473 826123899 837905059 951916127 15057376 159456295 823385742 918322926 394313519 829144852 383546779 388711575 121640011 380696201 723195785 878378348 544868247 745930119 607681354 709263089 767173933 981023491 231412268 876205927 604977400 738471323 662035150 963238798 277788712 904486081 693227369 781461766 273804939 637456189 674067812 947344213 989522983 990502696 594332875 961540948 660003259 795806053 751658449 771690676 151244006 207227473 599681044 629793039 466149293 735611054 396572762 691620182 697632238 799902105 408172620 740108359 38893290 421786277 823863613 932316008 572236745 642702744 414018738 640456735 433739774 630206224 23861322 86656958 478965265 993753118 46256876 690931566 221851199 735795961 729161299 791366162 565858676 900675962 941427122 961384769 712154329 767327416 68291727 742354428 427853238 838697136 193308720 363551434 683583221 972814868 34998189 901994036 599296400 719170047 797841285 970681624 674658020 728704982 402760920 442704120 452084865 662702254 160067083 309384917 458845848 669600756 910585100 970656510 313288661 410093024 581068781 590486364 108888226 417251694 753247378 963201869 10288579 556283452 59555187 344433159 352463089 664678138 921096760 965427730 865231808 982593538 164280762 595342244 149851047 663902986 535781308 965005645 678303268 952780802 648769404 723704339 967826374 993789587 134473817 687565571 336644126 639138493 371111793 397279214 368005244 503904129 152588437 295322635 576158023 685187582 888433127 899016846 865079571 962900851 466924281 818157484 195013708 560095104 998543624 999258823 472317500 681030237 734968863 751660441 154984525 671687087 129854165 554759038 552127320 870231070 34604541 225606298 929969156 963187081 995980478 999316557 769702120 886018995 345930867 591410509 677222268 993015328 960564770 983107442 536405331 759974455 430494233 725004268 987270728 991996106 843874774 868291286 953681158 983718052 592007772 625638103 539137931 575629905 883656207 934210284 777620022 794788551 510947183 946544124 745500556 820485667 999216910 999264435 497643230 802872492 939831678 956128069 287197866 941230758 380653295 908533530 443301700 516928424 735232425 994729027 851088459 982946171 328427470 820752793 715388282 730818136 846775078 867028607 955239370 968813763 377163714 778635594 57796517 264518880 836203713 933783202 982249042 998708850 561347135 756461012 789624641 963657540 268383495 929367453 720302561 830433652 114258346 944716626 826504893 911801980 186345430 455731644 680684050 723457635 52786164 910455629 844559046 870907973 219880340 957553823 25116932 249255083 520138351 721933703 904480073 974393812 92690741 873910642 902242727 950700406 575484062 908770279 873623489 951105254 272679752 350006157 655448634 740726379 929623406 948355967 990152060 995893448 506584067 706814987 616151086 761449732 782207838 921464333 400863700 739166764 677273684 897999295 115674673 492100383 77745286 970304042 156692946 315468195 260691204 389973035 990776180 994298301 523219784 588551122 32310325 220142886 476693114 870336892 809830141 848366902 437821494 555023346 577114661 891850503 485590869 495280312 257729889 687876153 366611836 983208992 494321012 737172256 277858967 818580420 460827194 965065432 238974407 585909522 743046255 745571379 652840467 934293215 976787137 981715944 711392579 966006264 446053120 913045289 510905228 739820384 181068744 349934119 556246703 791815403 950380268 966186518 73298718 790253203 44452285 836243430 97154261 984108294 174262568 504218023 433570478 442922205 387356296 881847146 898481629 938089427 17967537 799850059 84934215 520704269 219999532 381279351 325575604 683528374 268636930 840671897 822029572 909949495 537787798 942754226 892769741 928587715 721137663 727562978 21643794 785967352 792168490 944825077 686215506 790661561 849651382 945005907 55568801 514755150 58406097 444100740 532373347 992230229 778409338 841135382 735001772 807808663 144763839 689782931 529317556 915456673 25774130 383926773 737734979 904770829 658917805 997025295 66722854 444864543 754384936 839965982 566235873 677402512 840198754 968687361 654265814 844141826 246529681 374454615 867755186 887408268 879538437 962311258 954979659 975434433 699894888 799961838 488686945 500739405 205474370 935127459 920122653 955830536 31450203 925035781 629283344 682069159 952235124 974501796 672677187 794622331 480076673 744340111 453632267 876910106 257139235 762244958 190927393 661582439 56560211 557913855 439426452 950778903 516654687 951556324 729907634 865175558 730530393 808233272 351732175 515658985 787924487 847385787 718623110 934545666 471090431 986440839 701895901 843638471 427624171 977541330 309936424 883035294 904203566 915624778 465947362 942000382 942526332 994084610 621820102 689738537 656296806 928277457 360640914 529135889 484020302 953909839 446620037 642630151 899135027 958647099 345750831 907500871 991939742 995847658 240508061 354390928 304669955 803268542 291402519 564246149 868764145 897431463 237283820 939453570 595452268 818859210 244201829 914272771 617747125 936467922 92475123 688710798 404800434 853418930 379885093 888554651 476823976 760654948 390647001 954649856 702535016 860069580 407308203 723476690 832273698 926039270 108442138 694812071 152990401 416667050 519590952 750942509 921103942 993282200 880475965 935583762 173810611 279645742 827853399 851200112 913311687 914305845 91736663 829961378 344453841 749971364 151918579 880203269 771157117 918966455 664475770 718228449 635313981 797346619 910250832 954707735 483439621 844557991 721445737 767273541 261318504 333752758 59049671 890147076 437376522 550688341 38936511 727749204 194084857 733273010 328563584 779076264 371922240 997809285 464046299 814058485 896281110 901552309 490068514 937495061 318328866 780545390 951852412 978564912 628870460 896602631 913065114 940027711 758617178 777365016 599942767 984250671 556661482 881717103 57816909 516128981 370043568 981617938 533165037 881677690 919162052 973396988 657127311 667367905 155950390 737081168 446613516 935286605 410397121 424956802 869300920 945543020 209395868 603903262 190237852 292968613 976708910 991891858 352290752 524476853 409984571 595032816 288652532 398802109 658495387 943599716 614184929 759110245 96012093 285940978 624521331 928101504 400154761 861054517 240241119 705890630 123022773 287630757 613527761 653877446 633126896 862454336 338252777 374154733 930129421 994250566 403477209 533820942 977168938 997517912 192551119 350688858 21243588 152770982 591036650 884873365 402658314 776022642 187407271 563552998 213052793 784486266 870564848 926999236 588883677 760421611 532263878 606398345 944008066 960744380 275727714 510240913 312196203 420509171 426632637 718593752 801582786 826240917 243665320 388482617 214442486 528392293 370538223 540295241 761286636 792415708 288404488 952032629 428238976 708064544 469526944 842280450 338372895 794127988 323712343 451417870 938446544 990952234 602520211 622034017 461752433 924259885 110727043 278300998 2574717 807315690 432211186 943365249 507831546 976857980 926682336 983935732 487966071 993620977 809777789 970755692 880050146 973686514 957533611 966570709 742363951 820348377 747487302 943415192 532902574 845321299 96578654 777004436 733829313 806837628 801088315 978704557 341835254 936091467 807786524 873253342 643719898 709946531 916184616 985610254 248697436 423940651 702703851 861544465 315082681 925756086 930901537 987667799 155871389 941367640 834085103 879198823 319486 67893023 242882790 558162019 530026590 530943236 702489965 746742447 866329743 910652302 243966899 678082903 163827389 511834103 232331497 244165603 926201878 990593148 429707468 749985876 611793112 889488206 128518080 940044889 670458974 770815938 14472543 252355202 192421444 542284338 72100930 235518584 298168330 400671530 433922234 580070201 860828607 934329051 139600534 343224870 612693700 617141625 994133745 995674395 338958614 957974341 262994729 289076269 745981977 964850862 835658258 870518942 422254331 502134101 913173038 949911185 756317977 958072466 562154864 808115688 490256205 754249309 894637321 966181751 927880933 947547500 101514180 514438285 514712009 794006216 933061362 971344066 390731830 461320828 293929501 482994860 811363856 867553696 514122149 725583004 142472892 721861887 427706591 935366879 754252332 933859466 813776111 965819186 421232037 468892584 540011807 588515390 704555070 751446962 353597951 660375901 576372702 804795080 554828463 558916586 302931646 340298320 406254912 413640392 743091931 856333689 482963646 715350471 350795435 783258917 446359429 533182804 401508340 846406535 793367868 794161667 664021547 703483072 510916293 854489675 606057729 985568764 42172181 770419036 551595305 706112304 238776306 423798876 245443255 820815923 604872839 784275736 395462134 461401708 641237780 789653639 872869408 972849428 373319618 563521152 921762513 971435278 138269337 430113929 790151923 882581431 907575351 959000507 43427956 770088491 683511073 890043947 749460230 756676098 603058902 796668427 783965490 930909820 994095577 996200698 178854323 817496642 682556855 808429197 789922914 796923768 484157999 639874305 628611308 717155045 35451366 44690639 529263990 560402357 927144980 937556806 356096441 750232651 846477270 869839052 976841451 993611251 374485581 994419384 296698480 941787857 882607487 977659583 820434201 950326863 812950933 893789515 757945977 982110964 884089279 999122191 327546979 902112618 183318480 360379820 119095721 637101612 375628930 969876770 413231165 814444156 130738741 213307870 445131080 590495903 590984874 712245559 918878115 952370982 232138971 877418979 678338171 857056930 208730775 297473340 743164941 928907252 33875752 391748567 229624388 552868636 362532110 498084171 625874645 937080646 655442915 871899592 829583931 913354738 575546146 911721467 551362323 752029727 800956414 882268794 841152048 947154090 255384935 801455023 691068083 892681867 111929734 279882294 930388746 933929564 776080121 937351098 675863306 928446360 658429087 748304718 386676068 979447204 353710336 651728548 990314231 997908152 751124676 811354132 391197415 967384048 598215114 949073714 666947559 915688880 231961043 836058133 620574632 935411973 177360002 433320038 736404427 877107707 918017675 973087539 833378073 992096488 836518804 902923482 358600060 378671513 794380102 923832465 339011220 546684235 409127100 856015366 325294431 455582817 471492549 499862807 300492732 870257200 646200443 910357580 863643914 975421329 882418760 944936749 234102693 785658861 449124537 702098643 398224386 558027957 418570011 761021230 920033800 957230342 449091309 766180588 427164933 791133046 493085335 627012841 925010360 932801284 37652339 273016145 949523490 998844119 356286459 392617796 847880919 953145294 870361000 946362490 865845925 994728499 549983776 639456492 772182019 788190798 91590449 140383136 463253896 770423949 307973213 762032465 388658686 977415284 896464401 900985530 63977491 777234861 600832372 630533447 323884730 589388958 997927783 998379409 249364996 429304043 364789725 883921450 668276222 758463997 95737662 765316075 232149335 731116473 986815916 988411389 48183465 318612896 316010650 732460442 687619548 878367039 978203517 990910137 96107863 667671829 975948808 988378187 820563391 982226114 790963127 961060563 279057541 553584707 648510089 806809456 760666044 785652787 807304619 946392623 44915194 912795039 707098244 763791984 673565533 967248427 870873748 926635394 386628865 942269242 940551820 942508796 803459981 863724741 722685788 896549338 408344611 865477427 157203174 980549748 781149975 979952655 244892541 522956228 112589483 222099082 508714314 941099656 924045965 929712057 514452942 848920648 127162611 882783842 328675326 672715762 222543907 809866655 941117493 949660737 382703029 867104701 248007809 557317632 784060942 950850637 263172330 895123290 304308813 581189086 821969301 973322035 218390460 723831526 867344739 906126747 432765488 944492237 514098201 945860778 200279855 898167152 699942986 890929781 768320917 988519372 215950970 357882275 340653965 615026065 36661382 366260277 490638613 841693193 126828185 602882545 300294354 881852520 690612778 698747867 936637101 956603486 237019739 598586040 76795704 935982406 619676205 714848053 31796340 260222417 882139263 978962996 701528463 747002406 612338793 613500515 559495012 822491115 808855908 966662332 889912340 971855675 386801126 517609650 830407456 986701950 623257082 963356702 814270305 941762080 526042804 625789156 694192464 902500662 438035636 829786401 9793288 126195506 156365627 339735495 610911506 935727971 820460239 848489321 12572598 646231444 451844107 456221627 446182971 622126330 851715348 911984030 177519809 312884166 275145898 305771120 945298405 970744245 686312202 902765950 423714190 471333700 718053216 868797791 950882909 983246512 351268382 373988273 209772731 774534129 20567309 850340087 255542502 410324390 885843973 981755261 820710373 900919227 173523882 405743995 660138742 723116913 246246601 785594668 236689757 706576045 412031569 417662488 35997322 646085875 981900666 982025203 589868029 976314672 360109423 713926564 402051780 977536360 125981625 853718295 791761627 829144370 522995714 806635755 543649544 775269434 606445925 691182834 591060534 778141084 963071968 972491416 713004343 821773025 612740527 797380340 679605790 795431748 901200389 953935503 429783941 531930250 844826454 893775550 228404628 715759114 664926221 917319775 519064657 949508739 292231777 378749581 213438681 578968200 152385196 612162413 206038120 485432145 907950151 921486564 898176601 974622790 158001505 734834845 837318400 961294511 13190360 552713007 505708859 694460939 13929380 145659318 990113280 995575333 776417037 903544026 228595842 234101338 73088426 958695070 224207241 794822290 938963074 958756956 396691508 819013747 995505533 997035556 898439290 913277938 310793234 840301624 986149084 995392081 411269605 427172678 866071297 961118764 832835045 985318981 934711712 957407337 191368700 333523510 336438582 540247705 273632068 900464887 184935953 416164593 837590746 998783506 95563579 967288913 344799426 621684864 242606601 552792419 726127363 798519062 262810749 860663070 991324499 994772325 732815186 746885480 722658877 933104281 58768167 906087723 432617846 999234207 802625281 812283978 552625821 847278396 611908909 902836801 980312270 989034177 586782413 631888961 551002977 725110648 770578015 943985256 783912988 822790856 706790199 943728071 608236160 705860725 372899535 980817195 500963015 698624340 233169210 368766994 23867908 448983584 356233951 616875047 204811123 359960183 616670530 651150359 201676260 445472410 712503915 934734455 250735195 625403492 855758293 951037403 250984695 409890592 189223213 597134689 247297782 940079165 285152020 814313404 631291747 755267479 879518546 894349508 183515044 943099584 398770889 878410257 490933298 555886422 671948831 810094812 767631109 812339234 579720707 598282680 474309514 983200666 536878764 813161593 549831097 892221297 391857284 539033776 123580913 965236490 644644056 710478942 99617456 503347011 135278418 318974329 257089850 691624014 633577668 813416309 838905104 889719979 325131726 835991781 79380779 368287755 565396279 727453461 781804715 834925991 622359797 937688355 619836107 638557436 260503649 600976649 870649177 979855435 364661875 974604171 154993414 557856232 342329387 729625363 997578338 998375329 481747277 845437106 171159349 380539018 460591103 962514196 944933940 999330680 22452329 730748435 228105464 833621936 121098352 599738115 684644410 767018691 919752043 973691434 567251552 595399609 698593956 777835984 633291470 640315290 321797212 704342521 218007972 244408748 760877189 938185591 618418558 954726481 710414785 771832396 193009755 991302044 191004729 693307473 424531887 498520580 245314630 626451686 202164224 416095157 118174048 710698879 638588860 822305484 215624203 328802621 293654325 697278960 140826746 977997311 437169312 641716672 155568185 949387700 618076827 944336273 920122679 997991165 46267214 615499497 368190427 668078742 606537655 627642901 99295627 801714393 793871050 914669099 297305708 867611711 993198936 994296518 282824486 379000656 430717093 796930125 581131317 980158449 719812352 863873890 525997707 538302771 796477109 797939124 678824710 953597286 420123045 849459207 482476924 803026663 826511510 842527814 474803467 527285965 819047006 995557742 225662971 794828764 102898540 662006174 625958944 738229546 846567153 966868912 402431095 406634395 332858821 733024340 733567421 778551127 114420870 164059394 541177886 607247551 217934348 452213712 101496619 785757780 745579090 840491869 385150649 771644030 716536300 947110728 307500402 585308855 615502301 989052502 383441078 522572418 364113236 412888836 878254732 915807171 358506140 800590521 617278315 688306081 366224352 704693972 390680654 987483965 534646980 604297241 229428355 476748354 335060127 613405449 259773617 887692637 786009306 863144903 932646721 935323345 49301400 859567568 73721242 497632115 200703808 302724009 523286778 962769146 17977101 953805884 44465147 321888516 702987075 804792003 819770750 819992694 549957967 938172724 259417869 526193564 856611354 998244782 745380039 765243362 237368100 828733192 251916809 720254073 346640664 678917366 192180849 782237919 323754487 757014645 460911396 917569945 190207075 451928200 602625155 946590617 174852984 998071299 337132413 737135064 426017226 970329031 8641263 547258913 360661624 828417428 877126636 957822529 807788507 950010613 20912810 515799902 318363927 462171011 544911911 753163520 700130619 825974501 606398255 893277183 346643127 918381756 508558083 620937830 615345093 843481885 441148568 763835829 443342495 866856426 8844561 564046728 913940255 984459510 207924534 582745101 128804535 601760196 855148297 965112853 201702580 296789663 780961017 998831882 276329949 552770377 296034531 790228545 907190888 980329216 335250683 634673946 851797394 879397421 139383204 290664792 538320323 633384751 106178656 466760817 948635136 985769829 57899223 801843803 69077169 226136042 754458159 881300162 850601614 911991524 547235005 643734949 206981350 989341724 57620353 780102558 819816899 869264837 751556663 948127403 664639876 896037949 353018041 777642410 361130868 936125514 572204478 720332705 813771857 913136412 426451812 613156916 994255446 998494599 799012342 818502300 2743754 40901953 131731695 630626040 967973876 987666215 740282749 953951020 465928805 648880666 74051341 823050726 190482715 206135321 372529738 938300548 843936803 922465414 589846072 708029933 38649972 247674458 845068388 865872763 789106497 976117217 25100472 716416450 415300308 727489644 80398063 361958854 766313534 864084782 336711044 618030709 949682935 973056057 950645184 996101443 741058395 972573550 588203674 623474325 840631504 939107903 378417078 567053529 730255417 888635010 767850828 967533797 753645459 986514276 15000337 732790444 721424006 791443149 673231988 896046465 866738999 982879196 310512719 596614769 450257869 931587408 542359168 775303713 631886219 708428204 590248836 922984965 501481191 926335068 548883475 868058735 717084080 908738531 602284707 920087616 17933379 571206168 862982573 948891791 705636012 904304122 639267058 833354612 453467194 926676130 229847389 424172655 274178957 379445020 309042882 631691027 174299661 518810824 200969670 236751224 723436261 963307963 494360365 566954552 254481502 920740130 288437627 300232741 570734738 986264580 24366653 199423865 843987187 972858921 821477825 971474906 75429379 935436757 257204558 272684311 255509407 335578071 674269497 702643385 161939831 343709642 214471509 654094683 995103299 995876042 733352556 864978802 746054693 982762520 914130034 998678002 759858859 971053070 238952060 785850689 436180098 574731639 344459461 556036474 635179236 787366750 183410984 498891355 868466860 949353015 16887849 367785529 669218093 807181233 17207394 609412263 694778642 892258301 592791699 664855923 323418683 560694999 475307303 698689922 841105533 894650683 910340562 953196199 892157226 924084397 283491916 584272268 577324404 848377563 467473659 873412334 711545819 753845025 811065588 920282978 205849751 902033958 696276411 960579924 600482137 671317034 507208995 712758237 183226876 357150595 959899286 976824013 649184635 659472259 366508534 426545631 43243280 517758025 33645821 910314535 309292385 724099762 445926180 928541718 735868241 898706512 845893996 901092559 442969091 992497539 324579522 416769080 57485599 416042165 704128324 844364335 573354589 954943596 794764953 986738084 851013255 992257474 80446067 279084551 242872039 596480958 264666798 266398136 143809860 369502818 72466649 349621640 232490720 345226758 664800367 777406375 945181644 962770580 360326370 662931315 38824647 359664504 989672407 991400601 197694395 251504858 489856196 859125473 981321780 981330361 288507206 989764863 238583085 968251268 526475220 852887801 73776467 559600820 516649174 602140613 948626002 985121336 840165337 924153366 756010017 830326444 665464963 985120716 511940058 626868602 474356582 948027914 966690836 968323105 739916175 825833289 714635353 855356353 828922578 923159576 760275079 819275394 161310670 284876447 191311637 261588538 360569017 363540945 23860816 151231952 167915076 219404307 927157511 954010913 212195151 328628165 678697389 931499805 359109897 526387423 793054997 996856860 234761021 675122694 485833009 924720210 785246734 898296799 123788742 468624294 875414869 960836337 686853369 719709400 462330232 536432759 482044064 764229931 91505936 524725741 752915398 850329471 983904135 992932045 187751393 663113387 320695496 524627653 470152124 581696244 738583315 775321809 259658847 694586593 652717585 910235305 406221387 429179130 712177171 724203744 798752916 824966151 485739970 583577484 421289005 709170956 610689195 706166461 67787762 79329177 558038113 582393829 533616076 572183445 260202015 336815194 823962074 991680779 250566934 565248593 471241325 516601384 910661395 957338252 966614850 991610294 910900497 935568962 189367705 320357005 885981635 992315265 926887029 944278983 498270516 570878375 636743231 785112094 388864843 470855027 333677629 919514714 52336121 475818004 849070254 948129014 468469113 591216743 802061056 935031004 995796127 998666260 241960641 477607036 890501548 969408380 50200080 208854836 229267436 374875670 765314902 827659645 339703972 806820967 127652702 335028255 205070059 328910061 296239445 826195254 692948659 757969210 821440700 856518501 288411283 691653922 658470042 979919263 386394331 677447477 459161305 858733123 686487529 958105695 742500695 981204928 692534738 784629568 357617072 401282093 826592673 996349325 890872356 976249544 528547013 650731861 87384562 671055024 710431141 724097939 691930971 711290519 526610947 939678369 913699212 915392565 821922437 982371070 501812770 612329857 108594100 643851577 488127182 853328262 860073059 935068948 776392823 879293124 464636140 730702104 500242878 997760008 41889304 266302527 134780269 539125200 941617543 992668804 403683144 554852648 532261713 811094513 446662756 452677580 317503054 503401597 46427513 496988527 778727296 960298833 943968518 964673339 464524324 883371527 633170406 735698744 898986910 959571267 561101 725949461 906975176 914064328 896298994 987472888 537204612 681198374 288050662 570934543 579238838 579624832 537633089 803173605 619257093 773540932 613579183 962315750 238291188 550595750 748406437 775365922 247508382 758262216 636770761 712881215 474404076 866961825 903352244 922430535 576484734 636538698 382476789 843695975 339111058 758503052 979382493 985818696 280691952 296587272 9813408 80981667 143337232 187723753 584373360 766561908 10621136 52200967 612467541 686767260 194632686 332489318 887273682 933077094 392946940 844177381 239291428 807209722 387173586 731064131 825765070 954381334 509785813 915090694 191323012 470027513 513373530 562518678 142482756 323240956 799480242 914315087 718573401 921285305 875098958 953530276 728280777 847289167 120110710 254110026 984205752 992903061 823171875 843203039 644548667 847745152 937760359 977003600 77578345 237097997 698308282 759592353 338227926 601960865 813674364 949631914 267382809 336894916 297705733 795525264 662752099 862942872 970486223 999172745 164334909 782224711 292551479 326581177 91133976 138969315 703961511 734046305 885198091 920193269 136861480 319297351 346797227 988629111 664521003 670188773 538190285 954317405 303516370 483980553 238702608 255661366 521569559 612204954 778968675 894842282 159818431 253798905 481095029 803228723 925353894 982908640 652202193 829122366 531655495 641530784 937250082 970082927 122903448 384993122 283609443 333039474 897440634 970115073 921706410 965436917 811379933 926402260 595211569 663960320 209297750 281127409 41576616 138098164 13122451 253484074 670180029 890832790 776070965 797499672 682128414 916623125 470366464 875979977 880417431 993962419 326827186 948294225 737005555 949315099 921225494 959859918 611420475 808577797 474618213 826826599 831804267 832502602 720169983 965344984 440914040 830680332 919840183 941476718 131458978 979357825 612253376 878831395 546206766 659230835 617652562 843494200 696463603 857997356 541069785 975310623 399257160 555408290 507839424 739408758 865987738 959886741 761827829 849934749 75049132 232078941 753291838 857231336 677795364 958356619 173901366 739947336 515512647 900824165 959718141 984663007 156531667 679209917 425720574 502348752 548701343 868225977 997792064 998107022 905642877 931535711 462251233 466382793 659782948 747323003 288560496 379320565 996517281 999295885 671976576 678037615 121541897 996723289 257856974 818792691 268287497 619906346 257355839 395906570 826005710 850821719 140223930 387911280 877157693 903595554 523213778 754072977 949267714 991183336 363903050 563002409 418461285 826979107 849287345 905697865 53486652 104357228 743920439 928403695 671463964 690103821 954756746 970371198 227229700 497767248 237663427 287665914 46767618 287267468 169866301 933687945 980208505 980999631 955133115 995853846 686249796 950565701 497976677 791169222 35621429 632356548 617980183 677054241 892354751 921672965 384931668 759952684 855617504 893874968 868257226 972790917 701241511 824636217 610372550 719658749 994088014 998564980 137782437 523050702 314802570 933091762 389153446 463223228 586384630 819163693 796130506 958820208 13616495 446133388 937245154 962230781 276313619 841269475 950317184 987330482 998101620 998363917 454838545 827623204 226456350 782541569 278934267 943695796 195574231 878326638 628395355 817485268 811045493 901247006 546891267 591863183 116523683 788495261 389437169 657321536 153677847 877320242 812121026 813664716 103575370 506245538 862671110 905904459 220652889 328499439 510251940 533376269 736224397 944805646 337278066 810686363 192124256 390415723 956951578 997344028 16045983 992082745 724090808 778258651 78609366 122722148 441892593 742918020 312026212 374018361 818317211 912944534 494680095 695358121 385907553 653661032 174884682 244352415 616201170 832160843 221414596 502190913 80336457 538963398 824430005 895619775 240573254 263227187 818678406 947248096 814859474 978915521 643501326 765598771 6970217 408931602 759729558 958468594 963093845 978884759 696060578 996410456 922133102 963617976 995181628 998851083 819608523 886601847 369354061 959810587 13056425 372900187 868113583 930848199 450356236 802586169 301699729 332978982 620528077 947424578 239286885 349075363 637914337 753240276 545722394 559826922 339837843 978102638 668955147 820154536 684503375 963495548 543931076 860127300 296551354 495888639 699548658 846475843 772905210 805548997 235794839 722889993 940423714 983395092 956819873 958864242 396150973 766078874 16189772 385164674 217022648 541236409 596257390 756693755 457889270 952945048 743826678 928750244 554313 218202825 911783524 946608702 500546535 610097003 948034136 976508418 32520759 243621239 623195116 966580176 705451502 912445045 403583336 498035689 916551788 978606715 311616370 502604408 79379158 340054684 761948151 828141785 624568873 721123831 573367346 665390159 754432243 917084814 438501855 894925097 810128140 890914580 984098036 993058301 10928944 177969918 600037823 900826535 260789045 627040570 486065312 851159086 527299221 959482940 650397353 662902868 159266388 345582636 38300420 130192347 49400030 873376625 298569140 459099519 548772510 695300488 686343499 798160542 401938425 885796282 202988649 417914870 62643402 398536259 221506227 533405836 136541876 593880496 553500452 709162550 566900467 599847712 362275469 939812793 56508904 222626035 232937914 488526181 911829769 972364984 916299599 927900822 925581228 928609657 943683289 999022283 416502269 569071536 257864697 373633392 681895662 842867314 317577975 764544798 631195791 769462562 336688392 669175494 975628924 990233516 345917743 468766916 889010688 900375518 413929017 496554519 820537499 831666279 785182737 991446197 699421227 795320459 419645693 624158060 317752370 919792413 26756848 270427185 337629267 479798683 468672097 922844105 188769808 373550347 216574486 709103358 522630943 531517791 559104643 936802614 426639999 609358543 672180817 793675862 65846225 641733908 104698071 655124626 357525358 940800889 327853975 642727834 613165526 840251828 873965590 890755228 852583762 968103474 343383349 873519708 725241740 916974197 19460190 513442040 55896818 587685752 871922025 904032262 598380774 754132597 749989802 941226747 614484076 755976169 443197671 756512091 387901039 905771422 5515416 61716676 624261211 800703483 623065992 860190604 513668767 914425587 607081839 710574991 913576537 918048839 474668690 926158561 685296524 903920318 135117061 757821285 332950652 573007143 93591858 389116919 86673183 598056448 49441481 399944813 678851867 805669554 567640640 898461453 473793928 908019807 377100992 536159252 745896861 862453289 328591106 928128612 293676518 448799428 838129965 976352006 137646453 183006694 817372482 840935502 103415387 437005193 447234041 626598658 141007740 207720226 290253272 739703918 571894609 615337437 874614160 950462615 211323193 601112693 586879194 653843329 152364958 556311912 581958023 622353425 751737009 758056957 976921166 977716474 944767347 951607202 217324916 485056916 370000570 534455250 139646449 852433531 182694959 264899034 935349789 969356571 405095136 462043984 646319861 876839508 80660218 697431831 688452323 887180389 181554102 780406980 857966408 966716180 45854293 719070742 539768318 751920616 357452544 589872446 592782283 753380062 474052915 880927757 210331045 556999920 885172985 913056492 528898064 849904216 312679994 821643485 596001750 624075425 446949706 999389729 692434580 845153973 736105253 920960706 232146084 668361694 589366402 971886466 927636767 987491177 440150570 479171796 360234638 840516323 68254044 545390234 58733125 859214207 553722853 569111006 215935565 349881024 687304771 748100972 877658857 890879180 515505156 670700489 815426145 973168108 843937497 873590306 533204829 711177895 707462538 752082735 626927581 821498353 445610187 880675060 944999027 999159135 34192932 282348693 892277825 974272008 235710493 749910322 269183470 625383665 810024598 938456629 871363555 872338696 805401787 863481328 406216083 946690968 360935682 957945051 465011885 628585410 387963803 474676434 154324237 880294139 262208169 891807471 39742963 994875600 341040118 478262186 439375503 682904087 826408970 952990976 410452975 725831996 520418388 551370619 531119623 683212767 350301941 960509197 938712029 965181598 599505089 655956833 566595356 599807031 742048728 786064970 836283111 957457072 641494376 711080725 33229312 55450640 491209172 523814391 987041738 994510644 424077366 946730279 509163955 537370975 220343027 631450585 531872894 956368816 650333005 889257643 77532851 864984349 223025023 510493103 480342192 803994118 902811438 905793068 11689508 544102375 960594922 976461044 138953534 576585514 569799877 643882493 378246068 846818061 427591206 475331481 453640458 512226775 975381613 988802854 156298581 202116866 502115421 658877163 266233129 379172488 780813509 905268691 604765622 881435493 40514899 529256303 110575620 142031307 46817468 700842125 216419381 586119266 572532909 688889399 185901592 546940878 728424402 989966636 509891318 776072054 946667096 955525081 79178830 887424583 65927939 400071760 934404566 944330355 329764510 395017073 726002364 847458092 433478467 547516523 141420474 226654725 427467489 689641803 107984054 257757251 96097629 313706974 515870046 918399477 407655697 917208881 251693769 935535357 241090653 476073550 104983126 925358767 900671282 970130146 308326769 436700485 553801580 733838699 651563289 781281007 102649930 246401618 461770582 772552272 423817281 723998620 928042045 943469904 331774879 358324540 102953605 410810149 269439701 315656049 917067655 931018148 493158650 805198828 780744069 995203935 681046916 699468354 842559187 898436885 200325113 728277994 542254940 971261675 604322916 811361534 264041525 983779511 690985226 713052277 803310898 948025420 999243992 999335179 1746477 966775242 558603260 805847934 731504467 741938864 624532160 967948911 853309967 943603812 86050781 703868512 879119671 897280205 500674961 681393450 45604362 804338262 960172974 961503502 313661867 973228382 531690696 752520035 121981983 846282993 559266151 997046101 466825484 582480202 420787086 520649469 85378860 413742549 63251482 128816094 133974780 513179943 310497210 387995453 817680203 878551958 768352628 874381650 355815821 973529268 341336705 728445262 468995693 955953233 366048978 524187610 594270556 892468911 932933382 962681721 843851386 956930114 313396538 565767574 646239199 681571221 320327107 746066883 555814273 594005389 522488291 792258131 216226376 385918172 77472195 477164303 919953644 961462389 917562450 989614328 203758037 205075936 843259516 957277874 570466989 984865605 117523924 393543133 834216833 874573936 618346126 866107312 223619648 892581800 543206403 889978189 863184461 889675199 536508738 947096611 495312136 551518000 156194267 475084159 979197457 980955517 441366389 678836215 414148605 773217277 920775697 933631362 171211479 329441798 248692617 442362828 164822689 224289233 953736420 956785071 473777077 510400220 423247553 696080949 426149497 915179944 510414430 520931969 790542053 935197005 884307929 891234129 200575489 649438471 562380314 565187083 28119622 680268068 731518849 866009037 809313192 868975475 235685226 520472720 731089060 858613556 414142617 745270062 596470778 884460767 2399391 493604235 969013621 988487442 225709353 979534063 269213427 955244998 701786988 714905344 791054357 810280266 224481549 534159290 538458199 611585794 449060164 781585211 201898136 794317825 925518024 986446416 456217334 908656498 832504843 963988711 552896494 873523521 586877156 824032230 155365384 831192319 362083619 702171984 694771318 711695406 327584571 621705926 96409726 258223266 458310351 699284349 547861016 995277899 216715294 513844426 217478620 683349202 499020232 754572293 991657244 993284592 35649717 551091221 222607245 717804277 470146938 825227355 724346276 766433388 493009871 978961318 436165240 908964176 390605710 970502087 971253610 988675497 426375220 900409112 572195029 752131168 429744829 631682715 982396704 986838715 18931220 606440786 366075871 684876818 373000070 872417561 151915216 397492355 827423025 972786321 200185046 933096104 854923558 950203192 259961383 279243815 437423181 586574553 361885608 525244784 366694937 973684697 408591412 589784788 550907007 800091112 158705415 374633526 212777346 535535678 680805132 894222938 863990692 869355820 484410135 545609050 243425413 949466088 714081328 961451731 967310794 986604452 222926568 279438077 883888393 937810081 3736814 232939345 39184068 997130668 862590368 903579952 45579646 954653622 613616311 872654146 55858971 817992222 617018641 895351391 562244646 804257033 654918278 716578213 977998975 984414815 165003767 929447314 372329459 889429561 269910854 747891330 116908454 737592756 697030624 843120226 878138760 970202977 776288522 938008261 131778258 813147131 187573468 862233882 763146214 888984247 374595844 905877488 851976144 960392932 573869436 793677576 528851624 562721848 400378487 959477594 423352772 945261045 160007362 236580348 992753039 995830940 986387548 994872433 411799696 601747347 832948547 936279554 150845475 965165509 767550813 963547020 663636917 839030293 536178797 652160936 610740381 823495712 356429734 959711240 644076113 714682151 748425414 972073163 496418716 826532242 754313334 919489454 930746371 960815727 133635698 457856889 294294639 721056676 194615852 477684926 621077097 945342301 158866063 473581408 891966629 921976332 198214916 888404978 276305756 350815611 390708695 666843489 848231077 925697067 297743503 353700020 596464410 933061393 532247908 847296148 431784837 651026117 601496662 790033709 885182470 925293448 874730232 962440282 982275498 989413781 97576618 415544428 440402743 522209392 663179747 678776809 491751404 622024925 755079253 996511425 455127326 748048042 205335378 930684836 676058287 913892228 996811970 997605064 882848396 891431630 460076041 509755097 960985925 995107402 28565345 457578620 742629146 801543382 167923487 661927167 468233181 802124521 724567029 742203096 800787611 849258376 851296171 967382915 648442318 960483469 478546115 704014321 320821981 980657169 360777277 366153028 206849727 877448532 588379539 763038474 914553748 968626571 230582007 468085176 861751012 876266140 582260332 961814807 298838335 991632723 716737667 847891913 446828055 899918465 232148741 748011415 380212787 453948686 375976774 576536304 9348708 22094048 43372142 831037990 591085417 835317186 877463427 989217689 484703067 723636103 843547646 975795190 97432529 660451529 964982936 979229106 218028906 353619605 311982104 566201552 298795143 707078118 670440532 823255401 42181514 690732000 846037305 925128442 229194561 629782489 44309986 346240492 749784725 828908728 842651398 886362933 578907741 716652493 66090013 546187005 472108890 567610217 247751093 822319668 904185041 909384533 830435983 931575949 403589669 434593132 368924406 728144406 118880735 911927090 726518447 790952910 748712887 812404474 551687640 963789447 961232630 966725819 583400089 960164014 535662488 552505234 816949402 866090680 244392159 328703790 991894332 997676542 500405913 997865973 300571889 627133651 110278191 178391572 885662563 966999068 625197695 994915498 798334639 799444660 649065400 787712837 551331148 876020134 687233564 941393632 853159773 977079917 69426643 337380072 316214691 497546720 776121859 847537638 446662859 468769836 100753357 242232139 918179011 932446223 155618028 369148464 73449316 701951155 317375562 413378323 887979899 907837283 671365780 781552786 750040 325644307 850311096 924022374 914799735 943416807 106107951 602851942 369510533 686479467 125365875 994482611 210584043 338250611 593703169 785038561 133480197 249726932 799746247 837647390 42502593 349607394 987923404 995494879 898465726 975925659 239626300 565076937 124785613 733940200 348623273 437231211 234182383 266723290 496008538 610321027 513090076 552480050 150874598 227131154 218435051 755764390 678107133 715270230 39773959 314722255 517347378 943690457 89779557 435586344 189654706 361302578 726744126 733905262 792084486 985027288 521380394 737364598 455446023 790317918 119988846 297851923 226684220 960882906 915670129 922386807 685195822 841489351 549383256 638229563 783816284 883999840 128500361 514510935 666771374 916310497 525935462 812186902 24273084 683083888 227090001 613643547 206493033 487621081 974160593 978044650 404886290 864464915 889276477 930032923 648881021 881502844 750926407 924388959 30889785 160497813 725575901 872199530 122632538 739783578 810419843 984916983 760145961 846478348 830630949 955450188 364050231 492993755 468350498 739393200 244593195 263536342 665940284 972445980 396901051 659990858 443589244 511483900 22083754 727579656 604851974 650892507 228164866 954238994 56308077 869232971 134346798 394397842 256710410 290127513 213766333 842935807 82741972 353438051 659244856 948394577 627850006 915332895 850016219 850680673 515296025 754549805 369215168 717554994 902686919 978258905 620266149 806013119 927486850 952054901 586723253 833154937 257962855 778600191 645009664 801964967 99565617 192503054 206809285 571938201 206532178 531241450 261310157 778746210 297250124 511349840 136350927 911870045 949863559 963155577 645519624 925965436 417153338 626991291 859224454 860067309 62223991 495861092 945127726 958780794 186965278 354530160 688230310 898796432 460886709 978128655 676671075 918980050 67815606 532445539 617001262 625614414 673870385 839368871 922267152 988709668 191519651 605626875 768731439 927166795 649519092 995361012 863523649 927467116 510734678 900563842 914910491 937033647 818199858 939759880 339732411 893632399 242298596 550237040 651650963 912096936 694877760 778813136 4417516 51724662 620554609 673811504 976158889 989834513 890362311 935217581 623397011 763405972 200644284 697806515 607375796 641918727 495086585 911554219 571183735 930534424 721614043 950460307 684182828 973346830 882204189 968279562 588191860 611121595 798697092 986497038 339704868 493156435 961726347 977751427 105041636 614569653 76204745 288713878 344976991 762902839 367144594 946136914 816612716 852246547 675501409 897788683 873592775 905834121 285494207 387357865 532594947 790234488 674688621 881988442 265278447 700665212 986457716 988630316 632085308 837597076 208021657 806804612 688135383 830461334 399218221 896743471 762809061 782112675 626072635 936274595 599094841 924160498 982256263 994703772 510724456 796650955 61470004 284475750 563486022 580522348 155720601 302673264 905644834 940155560 308819689 725651898 588671154 954929865 544287279 938716745 735723786 958982333 162053293 305513782 866641590 906303486 728485218 782676422 304332721 683268496 771177395 959188240 571873428 774591451 85281902 814367676 646162694 720954382 166355849 300421567 267047728 576252255 527081537 909330209 441208814 632869246 963342976 965662678 455149163 670091288 549762173 875027287 342168695 461603069 86517520 525795576 445559605 578848005 253586169 877142360 918213750 979572622 514555109 677840740 286555055 651770693 413331757 589519005 724512289 748096304 183988498 885419183 434503499 862459353 113610883 897624263 366242917 985558727 342410910 729639801 829515553 960910103 347607633 978521503 646715858 723468700 492161371 671195774 348700657 431346746 869301965 920400040 638021435 639826694 616741235 820609827 765805110 972686800 842553232 891478380 694433698 937698186 493997937 669279809 533656347 727651170 812084402 911794237 846346502 887477031 769776738 882114792 321482794 666896647 859257295 982467564 27970311 221713801 842365797 842778746 93923852 883978447 274497048 406643287 121923993 599509251 106221777 176225248 92828757 631304364 975277719 992346728 138998668 387682257 734124658 851719717 623848030 670624839 773724159 841784710 745013062 862893789 19208380 606080865 586407180 937672102 306492148 994186022 633880818 668244766 629457066 745768319 991149720 998995808 352460867 745686020 107102355 263757502 152802 369422545 867723316 874820086 471688438 993153872 446359953 552944648 637887051 764482245 435183210 696008638 275400553 868201389 823171543 847951315 206892193 252101545 194578379 895764822 874760733 915982253 92006286 128742746 237686332 273823046 800110582 846181376 913126255 967870734 202726636 600307446 544323588 648744418 360237653 398627851 301446560 979831062 410278095 926834512 226451745 242480002 163763471 290112038 644043186 697308147 838223249 933615002 886693339 982017678 113196734 131959053 284560968 297450997 391293135 619429198 949768219 965790043 322924373 828568308 335587421 494567500 737322503 918917528 417455401 955808439 610683693 981223205 927973871 994713924 347368402 764794133 797144064 897374797 996723772 998325615 522567888 648919861 176129937 380170259 702250201 905172534 6445374 875213092 929917868 965356252 441424336 789622427 48679101 716794956 492645163 595406648 478898524 739969939 257578414 989550567 284904315 649845367 46760905 651071680 149850111 803607403 583486123 927684483 754736007 799239599 968307606 993838018 833622211 840041659 522788145 613955714 414581090 890921830 36234053 651136616 582997675 970693113 263707696 297659923 729440389 975887073 862469277 942087664 603639365 757836577 697769085 847286239 776561105 911071270 93586602 341491645 15257771 610056180 461102287 584047104 416171545 818342217 970987408 997866993 152399821 518800079 785942298 820449065 998681303 998902507 55102163 357188659 203778000 212292622 902143177 993629302 725804675 755005307 764453735 936721007 161093841 619969732 473444806 589452669 200262016 511422112 172615646 727827498 775990596 988664474 83100835 825138173 232063581 538537380 652674489 678349983 973291903 994381353 976014766 983614831 286944287 857002385 876391318 979542551 80619796 999099528 579796180 904614017 855487015 951151300 295995056 297481453 385962431 849259039 620985832 641837459 505705718 642285412 116737974 320119800 972150897 987497560 508986176 930316279 959740168 996909127 233122849 579345014 213977446 459799334 138923213 921600172 649456780 862962031 514990347 815793009 337970837 871811996 793702519 875659179 18398361 296866859 730107015 851055208 754015560 808305609 602549446 603871132 65657848 261379870 266706274 775602994 498304748 560049257 325195886 742257827 993187204 993838482 416519166 843669151 627914497 736459186 768098757 809612696 670972493 910406319 6646531 78674623 493607608 500748669 973438717 994194992 94115309 150530843 275522397 317934603 325509860 692572475 826767547 870319486 551870470 893503623 813538169 880670509 324718982 676043463 839518952 980465366 491363520 933242601 402666364 726632958 440675660 820309421 918551754 992040869 319903751 797452336 28622449 776392904 79949018 462009757 132070031 484256423 733617562 788017413 842177361 904804992 575249137 905143618 594167628 827542060 481109384 553490996 63279972 496550187 258660402 552289658 784814258 792156258 606512572 954833050 548075885 596836477 696112536 760174973 273726452 567616369 31670458 485573112 690919210 855963032 189773537 769545348 562263141 589858630 743195366 756555004 939328643 943244847 93447693 837066303 241431819 502311036 513527078 993348098 370676814 928231015 789512850 930737560 692902870 880712401 350367100 731440566 577345446 823927721 779747203 882795226 163687204 608456491 595519678 885519061 834401994 931569166 983336411 987704187 325873357 687131856 631176331 676168822 921031051 959481780 699682173 832008083 290472195 497767119 168722066 876767811 290371171 658932313 262336867 977141113 564484935 986291333 356899275 529285679 866794419 939205712 124163658 758015386 31122579 501045070 800699155 862884719 793485499 920133416 655610121 981574743 178681720 606633490 855040637 947293094 789488899 824989161 88809947 827571465 763257520 961305099 341422983 722159948 596865761 810319967 304167741 475021874 511517315 648857615 820242995 861737384 103891756 625055635 60674140 723177903 391481780 944877304 68959528 828938325 566085109 737905745 498897405 651103723 483170715 540106737 378654832 471868410 826932432 966574459 628602775 756282062 756019142 984487691 11790464 447498440 622682108 915764578 537814824 674699490 302719008 969047365 470492658 520658071 784738443 953963592 313154429 896759560 826701795 937426770 671369212 925079881 106732137 569890912 456670711 590572990 459130818 811172794 426912052 944585514 107715327 135272129 753523790 882127143 64373172 912154089 278347977 944330344 48557147 62074000 944058913 985593212 807879585 943501613 36159441 664962513 683243764 730056318 70754518 798135570 23755081 473576014 880416436 883844191 497646238 821281371 614767688 742075581 361167347 586046057 763494771 964948284 483848081 817671656 739432046 926036969 449142696 913063214 605339831 853606826 416062594 705633117 399355883 675591640 175018008 535866760 206171107 332435637 34786026 891225793 709036332 990891420 483985025 510798456 899313147 988172190 330297221 642052351 149738789 253549110 416214155 592591771 37987060 200559106 815348647 919539027 875243944 945644677 629152132 752733434 258962510 506266633 447143675 753911331 286606242 598611018 144077245 568061942 914993445 920214097 762740499 875428323 207975714 275598035 995698413 996893967 406494671 822416306 930677630 940276250 476772614 490559004 37598239 509535921 428863197 964310450 132378744 786859381 790568863 973141986 441752966 832878514 249869161 588047694 808564516 929874771 372241901 884473390 383925200 868898914 880700620 912145145 591859633 815418551 700433943 949873664 340987833 675733354 222308263 873322236 29770748 136354633 221137504 500095324 499058158 535753513 278943110 404077297 278905581 877849067 31164311 404953492 226500251 286750626 437227984 715761937 613469631 851635207 598082980 853241399 42536143 761941892 503533034 944840223 916168098 993076638 54331786 72544676 244723151 711104076 662870508 799039254 442905371 684381365 326530599 565400961 49326603 251006676 922603207 958707967 509447112 771023550 988877654 997030839 605711865 797994767 495181951 842238433 323830081 777014672 441289524 681262428 671537544 678023731 935214631 940356181 487750783 701116964 988675282 989941850 88179308 466584980 111269034 920129893 159996818 526837389 651595978 930129033 299074561 797485660 728551104 745548205 962727398 979970283 143762915 702126921 370298044 961207428 712837613 886809662 583038744 671687197 215653710 533898960 750930479 939188375 496560427 674342897 423984961 787698547 178531663 946916938 730719930 916761277 815263866 882624095 410404854 887999704 910642869 983733142 945209685 998877959 693311114 982558159 463978097 707077193 240492531 399699271 615741192 749022724 383977674 664494888 799737313 873312399 14738554 370789878 733842962 843853683 881796264 947179064 661963404 662536447 412519128 730308548 717446207 882244447 613845210 922892990 63758125 398302679 262157090 901386401 498841464 956814601 401755771 488201408 743964150 909166105 511637947 830584355 609144528 888793217 755590634 916221898 779317507 961152214 344414195 476464481 499438188 563806427 350767525 658982185 98961993 862010296 280560501 813436695 431331835 529934478 224416484 631007503 15209029 237128972 697304931 763493173 241606984 830684390 433663733 802256315 985001247 988402590 859113707 998326420 261995358 425727184 175003162 187033725 125255724 738898692 16694498 444417574 97188729 635986404 440259620 464344322 691511093 936340011 955485372 988811931 103313074 910336331 365081280 992914227 412389233 596629714 106160437 447837738 668084004 887236557 98252775 824363827 292872263 816082324 750119002 835367531 968046740 977093042 659637 21820332 889819045 890521309 570364367 756039092 807516655 896869911 241668130 940097835 533679913 683725310 619965782 770969493 36870370 586858685 271986474 828896407 80540340 422348892 597788079 863936268 369844055 929023564 944801500 969834151 931583095 974516018 563399009 732269597 612058539 768913551 225311396 594181926 372015978 853979403 285590489 565659486 296892547 986555405 595362698 614312131 28247107 637485383 10755210 179697911 831220997 880521904 376229370 966072578 66606020 268949116 434869599 832794387 326533621 543631619 313467718 749175998 796162980 804425192 16221867 325470404 744691657 948495873 788981911 854883876 365420138 668943229 319951095 362815217 671630167 896263849 55938151 863406979 91959970 406859808 369893128 600611860 718340642 982729442 564635602 954879293 531487247 885148950 450769234 553659523 350604684 490247005 980198562 980608601 627034434 658071033 977913298 995946993 906407538 967589447 721546922 864410433 897363525 963551798 602733569 612498772 917766471 956607282 165527027 714901985 948697068 954288372 734904044 791816986 331304223 661436832 632682414 761481751 195201073 960136320 175357294 798646224 857603199 925897909 953310133 966769621 248828313 451381585 921715102 974461330 633078176 758870565 337272274 465173801 485175083 588691143 732466445 862167899 881543073 978380596 458816048 704057988 510329010 850537975 151413364 275037828 413097667 776109457 482539038 694197465 650172089 914716732 795764938 829393765 175217603 554082671 806031592 977127594 781702243 874752262 227668280 369135225 276018546 843184000 67819023 543339529 206697666 872173716 381471959 526145891 894264052 959185747 559328497 726800087 744905576 876477464 147028720 236089191 216752450 439228640 91584186 334089794 321316380 661338260 433303019 957782542 767642798 882900322 313566866 820168814 295297844 743393052 791114321 921731713 32162725 401806138 830127811 896055741 889289236 945628655 502758495 688261591 754227140 788713852 897261705 912963546 322213319 986148964 219694562 570942362 420056027 754528758 990441938 998743588 321661592 424588172 131374523 348108011 582273008 796787104 109244728 906352972 927539766 946055115 124329406 175015665 15322938 250420333 222358399 909006178 638941343 671687414 18518240 965539022 25850110 864287777 2069092 534253132 87263550 823811465 709370296 872111521 197979003 714086229 136811812 873145141 478612997 993759916 223238730 314411923 485765821 549675617 428189035 632054689 221000544 917977334 99396495 475092285 948532702 970666892 634990885 949261351 338233929 399351031 13420208 579013586 777156065 861260000 937286976 962105882 55745714 409085619 503060738 936009398 921742811 980799528 5401909 391011124 182892643 738346816 894721201 938411116 489497460 879186800 911608894 996882870 581056542 651090666 936581326 986973486 815116836 992528547 783232738 881831529 797067324 869054312 640998432 879827651 947657889 967464224 247950267 691335454 226718472 595805298 363187209 539303375 117924924 587948059 81567143 667987146 13258030 727150782 441200363 614097440 239917481 779480902 454618020 903648421 183128819 861860294 225310816 638076689 557919680 837071015 815336785 816289388 527263603 810632113 95032324 901786063 80344582 836164213 760560584 934396105 906937866 970455322 978678344 987218625 487982052 609921098 956669306 978387007 577807297 850550387 475054444 788138670 42242866 815079592 675495405 709765709 444176934 972894944 713857237 913943322 62000318 99454122 167492227 604657220 87077526 554314253 197538095 681006452 862515212 897890555 703907364 999133564 794838746 868246651 920470749 954080054 664372898 820652958 150598404 806191658 844304248 998354124 659180719 875101100 306397436 969868159 581711939 972812033 152918251 284118384 724001353 963436452 301370714 923737771 845038015 923915190 432962213 751963972 236548344 545266917 377460945 570412916 181067673 767668692 501781853 547048726 964673609 992807004 495231272 536012498 730897150 751095284 621752610 836423973 404322183 600800822 226141783 997352938 805950683 871655592 433057871 657812410 751131814 893817932 84007160 564240811 672702996 994571801 341149418 931155388 48570041 836555443 355743552 833457616 826904908 831302719 990475040 995177042 708895366 811790976 825775326 930956945 743123204 881591145 225824638 792954757 303827922 793138821 690388030 929383365 809757018 913020806 415695178 818633054 323383258 738952373 592852985 712791397 140510697 849269117 443568925 923134626 172093090 351328892 559802662 889161510 61477373 218451802 668542263 777230949 626453938 735629921 549697435 588352439 712588101 874004162 511256352 698251634 644035539 671479807 487136711 854209163 976176017 984592371 263338509 340385180 409183998 594678914 985583630 996818108 889056954 927258898 923553739 927516855 139088473 477125131 996608387 998837354 650714657 952983053 521602651 715150519 228014251 264209982 745030625 992983503 834142457 875589371 515307695 924860800 319347209 932845210 488832649 775240200 695506730 879252383 305886235 612784496 306565711 404438154 934969109 972534867 715502301 995715616 745001648 828290782 802244773 996347333 557786894 792604912 919080804 997917831 357119927 657790523 826988445 918980334 696182253 930326241 542097719 886948649 336992259 829174779 752481897 994645814 769004592 912851130 149273914 167966039 449725120 805517431 427792347 610604322 669712097 933229025 852059714 895290864 15950042 766394665 939131385 942921739 343281270 849688739 19630982 565679387 353413140 510799186 745296272 799129500 78114433 232332780 258163585 713104692 272555742 981405712 514950402 517018423 867841064 894458115 692350107 972006442 330018053 359385478 90217213 887677864 693719516 878797599 905336130 912730241 564568289 751760798 276294909 488691447 166695163 603519406 63501224 358472115 973614902 990708254 306901692 614365246 665203541 861038735 788586981 871597268 169699280 727515276 467521333 913616665 804441956 908490861 151286267 715983564 209091346 298443872 844668750 906369257 900823799 979358396 154754458 923139087 481600940 908105960 26994946 297456867 301825338 691217704 829770583 900870871 978196877 987846064 479442260 564591351 540685946 851044173 795423124 833840773 107024133 299636496 733157556 783050504 935437799 995398023 333330918 539054756 305047802 792220750 415347442 909651177 564828675 717913834 918735464 928877510 335101220 967120732 53443495 383809786 995629827 997600155 954266056 974645258 146771551 540668343 338285808 704524418 457610040 665958025 795980994 975178257 554497941 824445170 965329990 975702742 888232610 905176660 746603021 897534240 627490947 772379287 257889603 947909969 677616123 889756594 276246144 790433070 736038820 870704883 137621008 814312714 49796470 143796305 970347554 977805350 911835081 987791587 251391139 680008463 212701823 884149789 242533678 427154149 44636673 846832225 845740446 991980653 86576518 472694728 44978464 869135422 849183998 891735222 513622372 538267142 77989529 485063873 308369049 573323491 699648088 744194880 15083053 302679145 557770522 960622165 334042058 716633611 398883111 639526584 788210855 973909161 803514914 877145470 698212656 883802270 630089732 641365470 493424396 574578341 185789663 351037272 488455558 677677629 469674374 695462639 367986573 956480047 319068334 859681527 60746265 595746208 287992595 645357845 228851285 837945270 276377481 647418458 193301665 429805195 121760555 160099850 994796398 995358071 363246635 493643837 60443642 645988239 653226545 967551855 896700484 941265290 862368403 871546856 132253883 952663758 82108472 168610944 262707875 716015777 810349849 897947882 555448967 997371930 693528736 772835587 795940033 927326227 991120053 995278372 93947543 126380099 14091352 254462609 512803174 819467126 475475737 869920991 398561301 984899066 164041153 984223738 357657272 776549196 258416733 387216230 998934233 999044704 496652349 995177487 623205983 936046577 352964734 572530439 858132148 944911905 466807188 874707165 714118013 823796972 297674932 746675350 718770610 724341720 85269232 224018107 507307632 949424087 829237081 910619751 277772646 812912506 300095562 451682161 780152193 965066582 111038413 688201027 101799748 771391785 707010085 710070755 463180987 599025912 528833555 542663862 434774092 528765752 16126219 135219386 258819583 353769801 947338195 989953259 69705159 283478140 755005858 917503151 554576577 592603337 655766066 962149135 773951533 902980511 308313292 697894333 616973964 967356024 277666118 382966387 62927747 69754899 462605242 759192926 302602966 704866492 552687189 932919620 31746409 974102046 673731810 822680052 841985712 972957980 786456953 965345683 112568699 633360021 333022331 926400180 465161218 629490513 226543335 602673424 912813381 972890900 485310501 648182435 591829335 852223938 407711223 903460575 265147267 827990112 194122717 565176810 519486241 659286537 675552230 815585161 96436284 137012067 580153722 900118771 766564478 978926575 733209106 861598506 130713168 378886280 767795826 844003782 452228826 550814239 437635709 780648714 554891814 804594985 162825911 578259765 853301576 983963797 342510764 602063577 5174889 792753518 153100870 162263940 894754328 904650344 945488119 956023451 322869836 506530654 19028654 733286403 603410315 963280484 512753472 936135591 634674123 795542411 213450780 837155634 58580164 354205779 134639199 888484907 260291756 867774683 439942308 487386268 818355562 991060724 236068243 942516712 452460373 767829065 694358761 960926431 297684674 604813136 726534511 800254247 279875526 506444116 966796462 976316151 41703718 276590704 781469608 968404001 85140860 923867208 787187070 847764620 439427695 659625326 973476028 997190472 406747067 567131205 742627435 912579554 148518823 287962044 382331653 629555208 67174537 785917760 447284790 874599308 58500644 353570503 869319906 895759733 438720938 836746234 869413010 910598183 882497688 921682390 687758506 757390788 706941212 906704636 360051310 979425176 423195058 997491777 919025933 986873000 627740263 930614709 376814478 516486660 26474456 712769126 125886243 522370085 602123922 970697943 141042809 835634304 190487088 553451089 118638214 321590098 310729990 980985669 185991110 931698379 702926718 789083136 177348055 836700758 122168133 757798116 466928672 686614300 561605051 984005834 620347909 652410911 327879243 619754345 814773905 976871024 756610549 846929540 46598686 145441276 7517704 225910642 766667603 935701085 810319122 844595617 424666701 702239270 266125551 385672795 228263364 948397312 88390001 874306839 784155730 812667931 806216743 858204355 362932293 650680776 619435486 950684909 601890293 984878814 319616624 793837004 411386182 595389893 603497381 614437790 877614451 905602238 262432495 356019705 354239641 629828917 140598697 332711802 341492019 650011449 102219254 615243071 209393401 231784308 335981967 359722319 55148539 565608320 150828576 284146925 558443271 791549217 57659248 273923704 37220315 236505331 369713386 540546498 336681996 752317956 651322432 949423923 909494705 996738874 747525362 818889406 606089856 619577495 76301 211206787 574704360 575352706 166456358 458344457 779590751 960509757 331547074 610689465 778209385 955097881 469866665 844668991 170056075 838078818 470902493 673391277 731133947 749195297 463997455 805808419 422597399 946516441 445582673 814436180 406819331 620400038 919718295 962587778 481602859 781172388 203038551 845078184 192462227 615645845 685656042 829640471 37151912 563176913 448575922 900280655 242280372 639861636 847079861 971211305 715906000 947297373 490236503 816900140 862817822 891935159 146115414 917704417 241742624 466776602 419418532 463948803 627084146 729908832 749882394 778613166 102968282 765183523 643894736 865846577 814004448 835722815 443900139 702460236 274705848 884635534 439280901 692026225 998911098 999091055 72495990 171221829 859337595 900448963 950441357 960980758 33765756 838786790 436167234 848555858 108823163 323564828 37454255 815390396 556500112 965998169 670388087 907187385 543127140 902054450 944550098 963372112 208179929 388703546 371405105 691587748 894171403 944047933 379661647 911122205 266049299 990410924 91086687 206943490 47749224 378306821 401056712 544520157 638958465 964397042 248738392 888699845 536402441 829930333 842902419 865753552 530413802 584152880 395685298 912236185 397304295 544308374 809400737 980883824 637654014 896938187 763059246 901920944 351910341 936473222 126815770 732343991 549654941 595680401 712766912 942307924 630996434 829056260 332247654 443209166 185405789 323078199 827594973 876105400 513127925 517865765 633093315 644356987 9100043 506941459 479220953 851590304 626073132 651554206 702320783 893561468 723715651 838977762 403924034 983616418 651995887 785495244 1721833 365633234 847104069 881282391 773143374 932598636 821466986 963135034 611806748 927037011 220421875 661120342 844062185 914411157 761480348 879396483 355484545 520612895 631992206 656923800 246351636 472260072 694752844 713543556 711853719 856835243 705877347 942131329 162152483 276539319 293987334 370699011 381470232 582183812 919915371 964644811 740201284 844214684 876633773 972268058 83221456 581994216 322616708 514835495 688119254 999303241 594042678 887612060 9246445 312490415 525436732 658901254 189805340 359652559 969545071 999287553 531793145 818503217 730238068 892438548 975883920 980513708 967583618 975389599 36988222 444107118 149583748 652515427 157006401 882048051 327617371 361467520 66535365 215032988 194728226 770979020 341916176 779073227 134402158 709941500 265250805 947544004 455938820 778526084 850603729 955841814 696174335 853324341 976704286 990458384 685267995 804197081 50202096 267145114 344493777 411474086 351343322 851138838 694994969 927938544 286542963 720184085 531597519 658862031 633449531 885464971 263595782 931220273 649795908 811916726 208363418 379872926 844087177 850987097 246916500 753403447 112456361 714742020 718960576 738332369 816065087 881792089 23007274 962941207 501666094 833131661 687239969 761932759 308427396 424375769 146708044 569213558 802339130 906514030 580333139 691175031 807014304 823282109 224265187 845174837 411519414 632608831 292371860 524257173 462361132 483468266 431260475 556784521 957615002 959231680 928477010 997570956 452108353 709365236 592862404 628935132 330478275 544139431 766790237 901975039 218738643 732266480 155107939 361519794 883937816 994173338 652808659 928783358 956285856 984759670 797360488 969815876 389975764 571458708 270937396 511463416 631920513 711120019 894997510 970823568 576794480 900037882 311166926 944335707 497312973 686366813 577763159 609088562 480785639 726724125 134287801 990318707 441399325 943878336 759459267 802029572 301641232 359981765 850164791 876700393 363527425 518820257 805613744 954074930 361438707 703916297 268296377 747724937 831729491 966943451 200723117 862031464 649681189 997391633 938116962 968836493 459889065 583335803 753383631 880400588 677707671 885108835 104824786 224477901 197522661 489456110 400623010 532531223 30006392 887242645 301012030 510276411 654245201 876057701 14543541 278935618 790625779 792768387 866125542 979929998 674393897 883866333 6476345 627711728 961318595 998776541 509921919 619467959 447699896 703832866 984902978 985420604 681175654 846658157 269767832 292843532 133414696 435290193 863131819 994029912 938250085 945268773 618362427 663612168 300731375 453180642 60328287 435725860 555082227 979452662 808531866 962403962 277399649 800976490 453801566 967371653 601942548 844896522 746500459 875789648 254361106 712541258 176424013 977010294 871204948 908334027 443325736 954813816 612075776 955922841 486711568 779032739 481623893 534647827 773767867 949515915 660607392 699822746 237806866 449357890 701987563 899667267 936083923 936293287 188668876 213136948 528585908 966202011 891255961 979458955 871650736 920443323 677605405 903217657 346514442 724073797 310710745 783250286 778670702 880681904 989956321 997872237 606484634 885475877 537778048 731824797 646548063 760591517 901814643 915628103 623745132 642954778 704841646 990856153 811561826 953378529 866710181 941798217 750646603 796435760 103933674 486382231 381688740 443811700 935737222 940598302 569915573 951390660 509038705 683300098 654762403 678974129 229546420 314066117 921140408 984077475 12091086 28889454 494461122 848287813 42368672 381679638 141625875 610845762 201221949 964208688 722068930 932448832 188433859 780938877 681024749 786783384 175116990 865592379 149077140 376160559 283086840 437356290 972256769 992090441 161091305 172286185 112782007 785004913 507487276 955396918 272274397 922512380 520590029 569120177 446390630 538856742 120834371 870175786 695958968 712820382 388418145 723020133 666615418 924008065 507851464 950003563 869406159 912947908 527178053 669052407 962538493 971848519 262437713 622278565 284314210 983006989 927893794 980695477 388271675 737579003 703622334 983433704 448226543 876567894 48289327 927638608 1137327 627727332 119626067 765209977 661038516 775836240 980178394 992980255 222854881 610267487 720337922 987440389 953148972 996145241 845767611 885800507 838201169 966358023 516384769 771710209 753617878 895002108 841837470 889106928 133132832 149515303 602653814 773793834 514394859 639977832 938906783 981105433 511080366 810106526 180166643 534660818 29772464 83985468 439193382 840265632 132785239 201805172 585854114 975361143 675043350 994067042 701352617 953346203 36277216 182824124 631816935 848931210 384994805 749589899 441250387 872276649 651909466 853013173 80507927 220443835 403228565 430826396 57295995 234683792 406494865 778572859 912909873 986069673 446048648 564089495 440889810 510559572 401427513 581392459 922245159 993619484 753736165 776519855 206637765 964990077 292728665 841961293 998409750 998767607 381871620 438776206 364805804 809543859 85835089 981041939 721944530 722718950 721723722 995144913 756793649 972723875 691759874 776084163 225010703 585714783 585130900 854434711 362406661 676400295 396836097 915871810 122765064 769355837 825404378 950429963 978290520 996301049 342517435 818799129 258471814 541351093 150465382 949144259 594905744 984169907 684130816 911030435 894595425 987687225 664031297 704485037 29268271 416874827 656283050 893448209 48964918 754715916 581520611 594491421 100513759 383153285 591692284 620781615 370223704 866808774 675638019 776760344 387575575 956880394 216729597 503800148 586823841 850267655 419551571 449890066 563304233 648929592 269963219 531816446 426006475 721377581 364371182 579772956 647826792 713820831 936312023 992616390 897821060 960531711 64886816 485724742 841991768 915893890 446207 979596406 246626797 560539792 795146300 923898893 151658850 230411114 633746882 708722041 80690893 961653865 493096355 771698270 746014981 938923683 515859812 804359984 396248747 943513988 289933174 798361315 398129945 846832303 464372765 567234318 704180978 947196468 641717565 884020361 21946372 539805151 452408765 887099465 24801334 436297157 793120473 929868656 673975543 788548152 812485156 854226850 423586709 728628586 147747210 594535844 500648047 878558067 95996100 501109641 645481800 961451647 602598118 848171169 556401313 927849348 53870343 68669116 313706556 439348352 699434006 891301684 142933117 214432510 342782789 521373772 59971853 198866617 626702519 820454710 492456618 931476062 672291671 958725557 367213625 424416737 524187880 538861396 962295925 991214051 548265572 550920773 216911361 255285477 577993497 900035649 948993096 994258018 439072812 528588003 416368356 578657179 643112791 804107787 462577573 921683366 134420029 157917360 85949749 145422081 788569680 991058602 898229509 956106143 947856901 955066664 950640114 959783185 307087064 633609207 466413132 600075449 190265158 860687653 859454969 985988523 708909674 713511308 756637899 790001169 43091111 111293664 534221507 894430301 433929401 862877433 93946998 616150689 249353702 301499676 695576707 768010052 418560501 464948169 531723501 918514065 100972825 756810736 672534883 731387883 657734662 661499433 423109216 684280456 556143342 677360357 338624613 492244306 457568164 740334691 483991860 517685327 403943509 942690489 600695835 768929509 662804143 962027596 7359283 438528653 467509570 641013236 288930376 421015313 234147921 253007198 867017961 967230973 305642795 682705976 245775459 820271583 982575558 998232561 423045886 620079777 985815764 999343808 635116393 984213156 545671380 920421173 647018501 751052203 125004468 161895934 728977149 736089412 472877066 625948820 874773141 901439434 156961286 436588061 948487442 962805854 840027263 952925713 217877795 435058438 909514336 985103713 527670704 901223798 949936526 985676728 994855519 998371592 799261141 908539733 921654105 946720675 476061535 677136620 383996534 780397563 379920418 746542247 591864966 998581019 377643117 466238571 266726996 386827913 724081894 828992662 528171604 802506518 12815814 149131026 385456033 603467863 989553616 996227922 65398090 206330522 355228015 898161555 927786140 937516229 629770239 814538599 191176239 475206376 494494054 816517867 138397896 896929151 950676541 988126312 671924495 827731585 489824716 546362678 41884565 610364140 268097671 617350183 593247146 849953122 366489431 686463210 401619951 901562164 665328806 708243738 518025816 543899251 140733833 946004470 732428182 981636877 902089141 908444820 591767473 909632256 226301124 313913532 491504897 921396561 938894908 957486207 995388642 997470626 859290680 875853864 143338007 592563744 150240996 871763987 264618885 955011745 512065493 956468164 332117359 511144474 492257786 938567145 501446861 625569458 608259808 728445361 914602379 959569940 532655844 589375884 74900792 628291446 432359064 641813659 344960719 610035036 289316036 780257659 207198443 252738718 630132324 870423521 596060019 854010752 618412408 864212767 601855832 644219199 473470316 765125351 680878563 957517075 610165997 942172743 582846163 814774247 941003086 996581938 268501390 490599235 22443479 49798018 484666584 779789244 170673642 345111538 44036153 186883896 848525617 863919245 47480269 410471981 987622234 991227132 225302165 733316730 565414393 656327663 666175820 947419641 376327634 720858152 398697308 833444395 198282554 890236190 213506695 452442745 201327930 970140236 58854499 745995280 360861083 718452922 506241490 987008143 453230364 794406133 68760190 411388621 443810050 515157344 697602105 718678594 523157246 950084452 790875251 891165447 979116755 980902155 391120220 752422266 8920932 697977789 959684418 959715161 745832624 807514737 457768929 924460784 734210052 958626243 560597215 925393852 52197825 59585717 537784087 696797773 723687174 937074235 498264482 547784686 474764656 910917073 50166217 627372314 425140214 439939825 389068113 641460430 370539096 770117005 902062625 910366089 773091442 855287519 704078696 832863950 262088065 612626802 510907090 912001029 571490575 905882667 348452960 753277311 180772565 670928872 765837419 815475946 948217288 985569278 308337270 992912819 281461054 896842094 939924833 988598361 87233673 802220622 132150740 260829958 105123892 192952905 366454930 992636347 175071819 519252534 953809520 966802990 675260917 716741026 288903209 738828918 978535367 984652591 227294997 233969691 436122474 599241489 319877539 641371035 625084129 946210094 698999189 718407029 765784352 855696416 244075889 648615497 954911429 985686273 714757794 758325076 305696793 727855957 710918930 828519191 808506197 883471448 385212783 438113119 430063465 457924009 439584091 816703633 378909158 464009609 418413276 756779527 232948785 901163291 993264784 998046998 924004168 966976749 67737250 835771574 999387953 999388120 895377874 948382003 435629951 533658981 56884738 865699350 390117593 949582619 689402197 706359951 316415164 781074290 932657979 984982813 39075766 70975528 973146898 980076062 269070041 671372646 728477398 859252872 488548492 631843265 625088111 668574059 912668242 958660856 417253793 502814710 402706008 819704492 857797429 908062152 435267993 630065264 376942966 992190136 434567033 614691397 885426030 907356298 396146790 837614634 451625646 990757689 374505533 873596206 851030768 942129752 788468312 952863545 328441611 433401166 685817170 860883540 856897403 892516600 355940374 476873429 859384329 934405519 681091022 893984980 630823778 671625710 152381746 299660662 820204515 898446355 129059098 668907475 334578220 359844818 784249674 997955116 137262006 553967276 907292498 962173428 449195493 869152601 888296076 932155824 654690012 666753840 715434735 991760531 499828584 520930144 111263503 485629471 489928261 615928248 658178094 670947389 368214127 538337257 863809303 953279971 464346860 471923982 599550754 640277746 274492038 931853121 755692905 883799637 228992887 357276952 24263629 549511542 390667697 845257427 594706642 687365421 139517645 364183241 612569738 772066293 620201094 742115979 370620648 935550205 446053093 482545849 262415910 717261713 757390495 871373260 410557268 775339688 721124011 727872669 300236566 977661743 208346458 928426704 641378800 903998531 768967231 890335076 661028890 714326881 932292909 995562848 747188840 879656036 799836744 975909332 674799141 808985661 310896205 335270753 867558550 921207674 987142833 996543981 783692887 873204685 794581362 986659404 21337710 955282715 441896696 806368819 273597605 659736543 627166861 724689989 19144579 544009121 860519045 984301348 86303419 374960370 914647977 998196647 277416422 644545737 667551987 701960369 780214103 865207997 355874944 790029616 69387929 873725700 231703635 261623420 281048844 997814506 467892134 477573982 769301675 846892402 52994380 877925799 461766697 520377756 763226288 940423097 426331 938481042 886919658 982914211 905494638 911829397 148479951 598576797 709516606 799943540 681167747 824076818 316011448 382696316 865742652 884992194 802268469 994466575 310388437 458019101 121710666 395580576 769423905 787764654 796610834 989133380 696139966 710012017 486296391 831454520 14897837 56939241 593601873 601194292 644716003 918510792 798090767 958589507 610149162 806227294 535055246 589026437 524180630 918655076 583498207 680555369 60784355 364523204 863783929 898904575 6840931 823490997 463426826 898694914 143870551 947846523 775813402 797396049 590297355 752706144 433491401 524104804 910275472 974921104 265430595 327828152 849356243 982502091 815829587 848201659 411592545 878334434 76914934 374113340 87437562 200222523 741169140 955940156 208820363 251745186 268439878 957967907 626498630 676782257 651314056 927592507 965019022 984015911 930860099 948756876 612682344 648210446 832567358 910744966 734018651 944529457 704513507 777817579 99322 864432532 957540382 992342359 296151512 819510997 750757195 838049291 899109024 981571236 443220977 954073933 347927899 938807952 855016984 994390009 481626006 796052411 80895185 487535192 273245265 929095031 67019774 790749247 24083122 800641315 621036316 841185012 323931941 583972623 895954964 957781533 301622158 556558191 441359146 682662647 302991610 945349887 912995478 992459365 499475180 775250203 536461123 615683308 970527271 991464588 307215995 378600053 876544178 990154549 723808051 796656859 112334416 220076080 145788740 213548995 471361583 542060831 851411891 954271285 406976701 575716728 679462897 805970921 65630831 612781898 707581339 744115456 791475490 947193494 949283911 953645857 316428750 354161458 140615472 860880816 332181527 355581727 275557478 802993961 774339562 908309285 485067431 604465627 969878126 987454066 959610262 964560721 757505945 911839371 817349658 820987379 525055949 575725048 59521465 837913039 383940517 690944080 365166534 594308636 79305213 680657097 500792733 813182357 411628760 455269552 567560685 783609069 139510542 856103200 257578070 533255196 702257112 799881357 296936413 570521735 656925441 938394861 749377792 912456277 125939077 892128322 853056920 873242711 684913819 727670430 270241369 393294701 372797919 412464190 532126507 623731471 659956514 986590135 143015567 778530933 406453741 778872365 905023705 915538000 380497896 927976121 595612493 745926528 993554230 998633513 729884377 919648760 952360331 955900893 406463425 850990366 475882044 566917724 858840603 940026075 445642097 503205409 881773919 954082378 63057571 974898957 627070434 683641783 807979741 870407625 149677554 857886750 422707090 920548680 149545018 656262617 719773433 864542159 205462875 882760301 491797539 552474860 332890380 602951034 234845962 374284648 892154297 954926375 747476269 909265114 45325291 137150081 100376321 445086912 237583067 904180741 969139089 975915757 51301128 420948780 742406849 883332714 723569279 728445231 563246735 647668583 87121802 545110801 273723929 790804096 207915447 897815115 91978280 130871430 539640088 767213383 217786164 243156532 935262577 984618488 253732431 274632400 902367191 992119351 41539593 503229643 994448067 998612197 959353850 985932319 964145353 968722381 759807339 789744231 465331442 833311716 565845789 969405085 228932556 522714374 771687708 979214234 688422366 946444260 387716981 427962514 558732087 599276860 493725236 933735381 722257683 740179840 464517169 671674448 796272570 878267400 661299963 930742052 888030303 901546074 155994460 395920796 67115405 141811875 559924146 684723017 784947199 951979490 987531769 992013758 130943087 259878690 327424626 926948857 777174860 781291162 842103736 862844855 220374449 834468866 83489144 535168139 748266546 941113115 413136634 569867276 874722803 997527642 929023112 940578797 383301344 462073369 624274744 660631171 137957718 411307176 249826401 986650042 772883383 900399771 550551036 612017318 335507171 649001567 230351660 679060373 293551892 599188587 838893391 972762746 296152385 895491015 620991068 689547644 410430517 731061778 473011300 877134755 403507036 902870475 910373302 989359285 598181345 864025094 562935497 857062200 42027213 63822708 777123852 803264362 523739838 944366940 173151945 262302170 558324090 664263154 48856467 685587640 914781921 919982135 490879273 525058808 393901443 786229331 946046204 963687298 101161912 886185822 747585516 808935245 491394255 838932589 204589495 600489170 24257156 434659547 739609020 879308752 828084601 950675988 335368576 967320774 4701352 158009246 568287086 749621716 820596802 946348574 486355450 856154013 749459436 912627054 730783041 842234471 534630716 724701646 170383886 892192777 789139990 915086096 896570866 929039764 407988280 783661144 272560449 981715444 988103616 998325087 115099074 352032831 267255975 770094093 929032433 975314756 894691289 976688646 465180534 580097087 955141130 961331033 176990439 384108850 637986925 735206545 783546433 835850484 30294472 647372145 521147379 790253222 587554747 997315297 164632179 747846443 632861990 717188764 767320214 805952072 158372386 703295105 720207921 878519084 705935145 975956467 913319732 928780240 327454097 642280937 53321597 205852747 89343056 745814296 758191838 949617885 699069346 724640092 548685845 906167321 162927420 593622641 310765415 899069371 983429262 996946186 964719010 974946707 501848230 899324205 475290894 787657295 774315494 985379535 335732205 811265182 827498241 960997385 444671905 691692971 631796892 884050915 970467303 981076337 250136334 343643784 86873351 514868149 681762711 748743243 949429129 951667781 682912007 866102807 133903171 782740319 920753208 974862085 130411162 321023014 659003417 841259527 943857294 983534182 817707646 944238618 321727241 454239315 697366903 926544889 110290602 754296251 399587390 705841722 877926657 927359360 4649351 232810776 365786266 497098817 200160284 669636214 62755022 766603420 390951230 509745579 995491310 997333001 45414888 352103647 309449987 360710710 404334627 646783777 352082281 479993439 155177931 737704748 307051079 501209848 141638839 449980754 210263191 673611545 195118587 726710449 504158327 641552329 48349666 310464581 758870917 838176772 412938395 929042746 391277546 840182694 171250606 367736648 166361209 685204724 976744430 988802243 756604097 968936757 385723846 565677026 285777505 331603249 617507774 670818834 727508817 828660781 648179358 733277176 259324765 950640353 403169172 815421588 97069763 868922954 703608159 991281723 670074525 923516712 379323250 828066267 307790207 592171021 3790112 70664684 163927082 242338174 913853489 966830932 997864290 998536466 571521391 953536221 248913405 408247310 40854665 879601909 490525108 822015370 498784726 629437426 396339908 466314215 554100545 924204360 253731128 622814491 458662848 889549965 763058967 883243268 768075312 846699483 729854283 846563171 851775035 893255214 276639226 900074109 905689807 987234624 577259475 860442241 910684566 984133026 730239630 756056287 94822324 570032950 655585728 823985301 965596048 980344603 984022274 994007204 833937192 856621524 650782371 744045120 154102020 587894271 904050909 921330573 670899851 908565746 631356294 882118355 719863698 820540564 468273024 582347314 577103639 972058088 185982314 813738296 704892084 829983327 737201839 923115251 738982967 857377356 732027881 805989518 918238332 987572505 989189476 989402300 548797337 820916864 468252577 630266190 659663500 979961809 670132190 857062949 761152554 766341270 305892917 967650770 868125743 872765985 105963642 865386254 683973254 801705725 805820234 975349240 981801102 985926893 305466323 775858187 145983698 196367757 491506747 969418633 665358445 737467861 71782389 793716907 858717810 863056699 513559377 882041919 483267339 615585723 756078541 788364345 669951639 868767698 273799481 703051158 65861821 266277596 673288668 939532548 497763268 654380480 218260114 648633319 203203851 910846543 144237401 958201325 708742068 769783053 483300721 794225060 744201536 788101211 846123488 992115866 549455387 597823825 257670292 515809387 966648924 969594154 423576338 925872723 52930513 723895377 41510355 207005361 312134112 976631968 683309674 739245287 76788598 841016408 827440011 840189290 3072506 847324376 545664636 717815145 695527109 803613980 866652707 899168968 852772383 917089816 147047689 364692433 795219724 884358275 473546599 846240700 222394706 723854812 959921213 987264156 858556640 996738629 987876367 994112404 582324430 751989298 680262454 865514829 288830005 576037040 525216059 647978720 620142049 949056204 467136587 763572307 360458616 895868818 697184302 930989457 505671127 936593229 220235158 765524498 762010856 768915148 875276339 933375049 973336589 999060417 2768180 746410025 440766696 607473604 344613418 459317179 236736289 506022344 281230508 704140163 119308749 384749480 674291882 894950258 543982455 602910835 166749500 199558503 326222916 976624270 219309554 271364495 561747275 661787582 638293381 705525927 407750751 628729331 1910166 575956663 6576484 256986567 605395876 606356003 6203467 170211410 474197287 839315735 168450122 271276341 641740673 809467997 909945488 968830400 977079515 994341461 861052118 903632898 67102120 781676834 391668392 891537358 898055627 916344125 855923934 881382644 870213533 947464650 359455113 721875776 163019767 736363179 539027866 622005624 153614439 275182282 172892868 856491342 717717733 860937111 366864940 505540634 95829368 426048921 908191405 956860560 681061647 794845977 835960760 866630471 359958570 653474969 607882955 646856919 190077096 220740645 636896175 935892654 781621129 925717718 447074633 827367286 249671654 805447061 292655247 411413892 169377151 407907307 918599690 924875933 363441695 876494588 542511162 690983696 398972225 943335072 278254941 771105670 312915764 598604333 22615959 169922872 659724101 988495536 927614837 994842796 234294186 483139016 930395321 968336666 843706113 913673884 758470801 935713624 674305789 677927099 23971244 768082636 437854815 641667910 40530298 887342737 9096947 407004032 555452379 601815704 512390685 636348396 596186054 914588976 184507422 569903222 335106294 370751340 106773880 898566535 124001287 248793531 515397383 869296624 301766684 516756982 64040358 131066815 299781618 787324587 368938777 484335026 73859270 358317650 598150474 674337164 182468755 386084262 426452924 674280967 548643672 966573213 735022665 871586833 199538212 947612987 200992304 915640669 108142526 484085964 934146743 949227369 427819244 731955856 515734255 893325560 907816352 946414688 706412791 981132412 301496277 506116188 621254248 765934547 367369472 627224600 551790422 938816395 298880381 699598285 804081559 928905061 351818694 405912959 172556639 358613617 124776922 892897624 74614998 147534742 144792713 608535891 387423051 818617603 895895165 910722096 19135226 628754288 938123647 966240503 669702947 782802340 562034030 659423542 573816022 955337677 928942708 940669765 573432820 831843492 55551207 462830525 902333001 938179973 500399266 652395839 183219760 771666142 19599055 908407652 907982776 920369214 268012422 642561038 37417117 525044068 721260883 912521813 519554142 752055049 902379136 959872856 561850937 673910881 66941464 744685735 716987527 801729309 92860245 752338761 164519239 579282456 205146389 909256482 361864446 856857161 585346898 819477355 907807692 939847487 700078414 779798745 520573541 700646832 710779102 851032823 599336920 600264921 968918422 996088618 942133241 987287020 757009399 956702526 402420922 846623631 124478795 813660969 410412094 545909314 46803139 839406948 609030478 818688653 467137920 468585541 746710161 931511090 797485882 921197738 903669964 965046170 160803251 426777094 670688265 678199465 975952176 982308127 190489801 851411911 307958116 602051022 261923996 480609574 93016051 332754601 75285469 489645453 43501145 672026661 448410805 922520121 263378933 944862801 957611583 961482675 852803092 902496094 618252111 743372187 498282028 523858577 689936353 903033106 595561680 848929613 141914845 550613204 59885779 369100716 730974511 804734225 935517530 974433199 175054810 372819424 149245057 158533419 22007211 989748860 850951926 971328877 417323528 860100077 781129172 795203696 742169981 810495162 668738722 832730867 230008528 790575807 359862905 833418577 152006005 315208952 614617842 657310424 154841361 908900522 345935938 680031679 392229403 549665553 343020119 674674080 787288846 983625674 108710564 836317533 836822974 844672249 427837212 993532982 268871422 337264933 668502631 752253495 784636851 838001121 159961052 491041339 977663212 978550867 453629797 861293283 840753182 990822201 547290409 772391249 361111511 421912153 36805485 578533766 85929019 711219856 952176237 978419939 659245385 819379031 650349970 851164906 770110471 774877282 367913226 792112546 641921758 914836295 646676669 710974660 850915182 945670939 843168247 912641331 156804975 474727378 821624310 972191562 725858092 758338984 388313212 661320852 263381035 320536492 221544243 856325035 216855021 726074623 904759935 915542954 840400145 874259689 5821461 370101517 742043123 979897100 836779849 912067627 770497180 876588954 458341781 603985885 199987268 485167496 635529967 717022430 270197665 833226335 526178190 829507123 116244121 684875302 683186165 881283584 616416378 679945398 193426190 573032170 189079157 224413637 696587990 743116199 854154517 968591986 618639621 787367251 759194006 917437842 799776149 940408489 492793011 944506823 583640370 935238511 804457020 996161192 517408486 834655121 248742576 742656582 200647894 412528577 275119148 631951976 708105371 760332588 397211013 792437626 581871500 706798178 381901259 817805630 142806409 418095186 934684207 951437683 741295547 990369463 867580922 916930019 937779750 949669584 813554568 878951088 284267766 335785270 502767066 963055557 261117230 619180247 636133194 803378221 551565125 864356372 385737178 571911665 112681497 348587975 437077483 639066411 227399017 621245229 952728259 986593728 266987277 908196472 956793722 972255725 728470041 801055111 772952409 783630244 722839696 766810252 585849799 973977767 965819248 985886934 292580104 808206083 102232850 856089724 898151877 942046918 513010001 720547401 6481233 728730002 991373214 991409162 366785266 766409190 995567625 997032571 709166451 839683832 756694025 943276872 250900905 968905639 822766520 913384963 218225540 466584613 912025835 964026940 703695620 846355942 535496103 930707837 319303682 703589579 137387930 294557393 281961152 603481944 485265917 904663770 158370481 721211739 763253921 975417158 351934718 377653758 838826961 862470590 75291253 425197993 846263925 848759483 814748722 965292597 605640640 776721725 614197844 984974287 320396739 959258062 912966216 918939203 831317810 903696738 418401835 579536244 15301591 885726373 788643628 918577712 13483042 557599777 381952630 734522135 336657815 362679468 217437498 794576029 150921535 316859376 607919348 664994825 488659136 940425286 597354608 827398431 291554239 520880250 978510877 980432557 608778422 831676995 100987289 327281928 91783286 872565755 971766972 985911747 49704629 201029114 247269653 642844150 918586010 937570035 812678497 948381799 358290895 747659709 509058904 626325123 708603315 890086446 114354282 882083594 505759742 718676883 278031324 572328105 419509425 944752268 594772767 673603993 229212856 875607626 880480175 896013152 541863227 683032744 502925560 551759416 5310537 331464308 726932094 966920154 696765781 946609631 772420694 900096001 805541637 875974344 183489320 621507908 357829819 606226044 217498001 717432262 558978228 790685329 554418095 595152665 920700345 976575707 107755875 255963902 837284405 926645838 110526867 491458235 413532171 487062843 47925988 814300304 635328413 819177018 128839260 261973405 933854911 993045242 9188479 773908825 816218825 856675098 629821336 938926962 310210437 498265213 914467787 985543312 876058383 983727712 913033244 969975436 405781318 810524532 281540806 735402948 611855804 889145384 655165157 873439036 259945172 476027168 140352387 418677952 228002119 907936888 331676363 413481308 613432737 845241857 693233299 718495321 259732309 628723933 951240615 984298262 120288921 572610077 461088508 761180540 124493824 377146046 568951999 978599404 644896427 984642626 257412900 877280670 590411927 980681686 604748576 650210632 874753431 987044454 764973864 915017430 719777989 888717401 397151454 899333686 658630078 948571212 277072228 546067863 444394197 645921121 971023679 994521448 504608809 555906884 95791092 180774052 834818446 836624133 711101510 825445648 115077008 438623604 116643838 809818267 605209440 948427751 659016879 963590127 56850977 832314594 834937456 897333332 149562934 728052863 35689417 984569636 511351533 845211367 820576199 975010149 779539465 789837348 72727406 234146767 312031295 990456771 378692446 382743463 640536750 767094048 87869228 477768133 27572142 555286091 216582075 223108928 901694973 998015296 615294788 646531415 473320931 749396516 889416658 905099016 145058447 223485679 998770301 998935851 881192622 994782758 949843882 962784114 752507451 892859942 207026942 228950235 698584729 717136416 340956753 412992916 500999148 649039753 437640529 967893277 426670438 893643890 33341099 53009864 666707212 729145035 91322550 753766798 867323870 908221897 790065927 917296300 686565994 908882127 446514020 619563023 864161484 947235110 435869980 515205497 480587856 771078774 168317998 375343157 1932209 642957871 745884658 777411547 525250924 528310552 259035382 544227909 767590654 867933205 82203042 792099542 610442424 937447531 96724752 207489540 746999186 754672089 94028427 526629147 518682986 592629915 557923703 913344252 701059087 894835021 12950975 177650533 64557821 608424321 352316461 853303768 260594789 553454696 993222977 997487641 505448593 971303034 301470362 432189603 979618579 987527237 544289374 848665143 293557563 890829080 198733164 482171050 179705031 194528392 137986873 872314120 537987985 615429943 737495477 778910050 689847687 844595403 369450290 832877251 782371206 989530734 254596312 708041536 761958697 870610776 393892860 562241874 65738068 879005548 282166234 545740700 610084774 732380007 178577979 284565500 594266575 887887244 779116136 849442804 870419644 940351019 603618560 904189515 321638564 868673035 875244289 900654626 19884289 229849475 757402371 946977759 893355081 960973546 965415831 983981070 994790110 997535822 821105259 919974678 404294320 858758411 230462118 282550886 476369845 567393059 829079925 857903461 62828353 712520878 463137416 927745121 628864413 731147182 611841323 979893141 696590783 873792939 727182424 944301545 253655453 712231826 890553563 891753899 643094814 704805059 363628369 932673330 46325106 623708091 744617063 812025458 735029926 968784493 334402786 846008891 684888564 866676055 624751710 688966867 901878503 920917012 700233499 734067809 346064464 366272319 873679765 939886527 279271653 965731311 398603571 671785020 877827728 944059901 363838073 986144992 197494854 834845303 642111125 742454666 183706308 854800130 487453218 679888189 970383857 991357835 340173060 881577413 363211126 411712756 728073217 777729713 510202354 778905388 118081205 402251943 523845495 960790798 617432538 682614062 651223150 682197779 974737911 977308791 72041776 87010615 159229831 330789024 349024109 434709673 871403309 993052068 670752615 684703712 571212474 756906648 729963278 779722854 496321033 572037885 875731507 978087615 905201117 934356450 5098796 422193352 784493064 973552840 526140377 913340810 794653558 796077843 81785172 373978756 275595298 751513390 503298893 777986101 892070921 920059353 415348268 455679352 399892074 990173112 978449470 979572258 505752158 788868910 4694099 728675541 992139867 993686341 292596506 312631249 843980436 856950944 585250986 992426046 682796130 928218085 988186939 988226454 41281634 495092803 256784018 270936069 829028570 861255874 416880491 694237664 563268711 577133329 768300934 925008434 609434742 753887113 858530893 893214430 147789032 838522151 41925703 598285557 449146687 883779511 324365466 535316361 109390228 896527087 785296948 952657448 466371121 875568931 811980858 980198734 813145655 909757789 267302839 660146522 296901292 433290764 896601720 993379749 472839163 654037007 987805879 990879163 748313750 956245322 53980762 764173641 791952955 996129096 224234067 652487990 966683194 985293815 610875925 762376925 787965481 858621471 40600382 934811033 951587707 988811333 840655876 948042255 918331196 953976965 966571662 990880064 82246281 340894786 747960810 935625188 226630008 766967621 568965137 866172483 914655792 975061525 65831005 314912879 61125535 596372505 982281456 988167675 597757939 933577511 46304211 486596129 783374338 811377315 551337393 629294974 692559912 954411709 745017132 929571574 304745100 827726391 574362793 961146330 552633602 766047539 414128817 823284710 691434123 867226052 315532357 405981413 311210197 559842489 1205339 720436896 178160347 690870150 587478717 795497914 205490560 865526444 1473241 675932147 89683453 255737019 642651514 857491464 44106679 583961901 201396137 977110669 547964786 782176325 220777616 244466289 415912768 979423684 591278803 904548630 160007434 236862578 419515741 696656799 157823357 512637257 803075342 869536317 33630073 836589984 251688077 995631565 201014392 464609090 306129981 802308082 401148614 758460889 554695817 761798872 286104368 332658006 294843224 997967554 107991854 495283028 429601645 604503694 85746947 268598439 566570358 682520080 697729349 764227261 535980124 660789061 796602974 844784264 28527210 836112725 300333594 470842385 56778605 185857132 547075659 890585096 163977931 520156871 488014271 755114893 855793255 930023109 142884790 876839091 101863197 459060350 188905523 198076892 629345121 716884826 329798359 625437782 339603981 597794531 951844084 977935095 446452921 457002003 47209656 387904689 48998908 836927104 287707147 590242684 541376560 941770208 826823564 888413279 395377394 908349948 120061911 154976325 405208692 452033746 262887454 656112907 720337216 989324093 978004682 984608204 889498801 996405228 525283857 537636756 847753658 967117747 709444620 722223781 821189228 841732802 583932527 793229244 515454657 919430830 415514609 977022239 406994380 727505103 718463001 997530458 959286804 991693708 247462924 593723003 800345557 993940319 758307603 898900370 64107219 860007266 312210627 586926782 497178815 926995596 300320895 742729002 823171685 945475856 969825281 994051346 376265507 829041499 453219626 865581865 148194597 930897252 509371543 838601084 969284182 986161597 72298675 236507258 308182925 367042879 754705799 880381829 603666066 896603146 210733083 702751966 44828116 325041019 425733858 642613332 759848463 788253542 896074019 916226052 853640184 977878497 617394733 871451221 442121492 641896938 901189179 905180974 225001303 644184125 296502185 748006332 527109206 980645674 852262808 900598372 845141147 953673580 936274754 939840049 996575419 998049090 363193779 829631121 617423765 639910058 21400659 706540905 461147208 561160777 972297469 984670977 519472631 611181561 989062264 992918656 200058936 461243439 476270356 812161299 901382811 956581525 382650077 748691724 952488368 977699425 188329146 920151516 16412870 861744677 407038377 796251365 53471150 564743699 932762552 997721213 737712378 892801413 975897471 978997536 220943433 661649402 116840591 879453387 580254216 722108301 883864112 989581891 147901124 706755909 280494855 345150663 921302333 960611416 547920573 900380329 849802105 958286228 588148864 958216774 405711582 652209114 543378886 678818083 178133028 598590465 803950569 989620453 648620756 942508755 52518189 308068197 804630336 943005626 216365461 785881263 12848996 728835024 282876349 790532484 600352922 895238470 125592487 554889318 330245720 413933535 960499214 976506433 327347101 570320281 92461432 184081713 995739379 997653709 351691439 470945554 716938538 943263872 921479214 957673775 58261034 180571218 627412062 651324198 446981707 772839281 445697949 860454397 228835199 742163924 696539843 787325898 78746599 315420018 585488002 796367698 406034374 633580279 579002478 712126714 307830387 674582659 18335829 911660600 953617021 955866817 903512743 931903800 909048521 931792069 864490262 941491520 198431016 996373440 894514680 942307033 142839313 743681894 625222419 820569709 497273314 806600280 256246519 767349219 817388186 918650673 460540913 605403960 299270188 798951382 901723209 977285829 408536478 880288589 614839813 754210998 23417552 964753564 432784500 711271751 853207312 932355857 45905233 975136228 728972234 968674308 480535664 682451803 7362302 471269625 643379022 665525540 597011359 660276523 637096661 744828188 132422722 834281604 36549408 805574456 941735342 954124862 526800106 625878301 140934448 273763778 267597563 479427679 139083470 977875955 504336868 779336891 510681514 962117708 253072250 690974185 456781004 542094588 324655454 954456197 699604801 918775484 372196065 995969062 400348349 558975307 299833319 407406230 172388824 923051048 718020922 988131319 291391862 336572221 207993173 429119512 517281506 804457110 576989588 934773606 97752559 471771200 391375687 927406295 366060657 558065923 462406329 701787933 207188053 938432629 851899011 854001278 926828834 980192074 663066535 983502629 89321101 968079580 123990394 634325941 234829046 718201353 529730766 535349721 453889840 862515309 777854607 967835619 907092052 959134002 311592872 423292622 714617633 740871982 83436954 922942874 739673490 894117570 345203458 406197980 654892993 722016975 455941757 984502321 401508808 888813178 480341964 927191763 580858355 871732103 768728899 788752396 831970848 996024481 634480202 758943103 827976333 908303350 817190618 901440301 665667397 928699735 561444440 733921538 922673781 944545679 222647949 434595463 107801428 687243341 714695281 874614990 32542833 873767095 740218830 869953926 329075034 372698695 243366784 443964086 226171557 588512400 169229582 749934620 113101474 353750267 58495180 765495472 101943738 744873989 681218336 725915390 590069824 796957981 313251012 678017908 138359432 335764142 647750239 894941474 937260130 952890279 481738833 576365057 193005368 431511357 687783471 749889666 976435088 992743699 801075640 857758204 792698212 923298366 892993956 982924056 675794086 702830475 414291106 514555570 772209408 853532403 754294884 838274177 813230552 871497241 23467216 313780834 994335875 997152733 517474263 975426192 841939075 990619867 604724511 928624204 320498097 946242961 237896193 663903013 447588929 496209804 732628034 990350068 378455298 446862288 328977459 633390334 952709384 990582455 833034564 902718523 65912461 367766026 670224170 851915256 750467773 796860780 198751567 219761754 498047781 538910796 847052569 948531495 930396614 937792137 407143356 628266127 902169381 930737885 950632861 980920284 476833161 938312156 611123044 769371135 910260656 960335733 780349230 930347624 623219515 846898204 518485359 730017625 325381001 371044579 805492212 893820978 358331866 400000985 938269361 968528187 160602436 862450403 394070269 606450098 657850987 752321807 963357721 963789897 312807375 415636278 441127886 529962390 549584590 979641625 594766245 942906620 611743839 781111340 960461620 995175627 751843175 762615152 951132429 982778488 89186152 560360309 648827073 805453976 418845069 812650002 581988766 634154019 763626667 821086630 188917075 600725371 912769265 982479448 990104487 992975941 316208147 915490880 644106998 757699890 851452690 990065772 307913102 933048561 706471991 962014768 263604356 455508731 491628919 782160610 29396067 953607626 72733667 834734637 621922841 719179215 297110709 472736660 729721100 867399214 288699690 882517497 575486652 636760889 208874078 357875524 729201617 759820384 364269341 504717516 899586251 900659005 925981229 980947054 379077173 764757446 478083706 716189911 685377045 873925153 593663976 868615581 296522291 670753071 566952923 693185667 694140814 762901648 556895069 914222082 648871272 922385922 432711443 614812280 532563511 630347975 242784151 965505377 364730187 947251584 440178437 675390318 307914281 996178220 964011228 982273255 860061843 923471401 700936226 983034129 297437148 563303357 962711900 989969893 139148555 872741742 125307901 887486195 837530023 986037993 905875374 934903725 924091994 948431446 675181239 719946518 417863001 949333068 892412406 979023637 933452171 990535272 857087444 867064294 538266223 796721235 162012825 199533323 979879807 981975184 629630120 716198520 939345011 977392912 615049522 665027276 262064228 566004812 43660906 269943665 216790855 272364191 197934939 560275345 342736096 976216776 370523552 887227969 636014232 906468652 789751883 990590690 888555557 951476504 488965874 736875389 146185170 194654545 103494561 712904173 178511423 206226451 364966577 693793058 302416888 582037140 18519410 811575865 710481275 764843420 475631924 849208395 771677022 818235884 584238996 805956609 726789963 744332509 197027942 860735321 875821826 949164670 307548138 409253156 493927357 680396538 17675324 642101832 286349487 864785605 266216187 801506815 962041916 976207865 210556287 587805008 83462839 491121132 680639667 717510788 383442931 525375004 470876273 792131978 424780781 497248943 717360364 838287615 260999077 834311486 925510863 953129801 482601508 819076570 696915663 884457698 193029794 320101871 107145598 494894819 739206326 769561015 107656638 209128039 758165310 766595668 990347303 994407563 274561050 398090221 718081799 953685850 218543569 601155767 916126863 933793722 430620358 564992355 462973208 631107613 822951710 956464977 168272497 270787548 311897749 325887118 759542858 814363181 324943452 637894132 540453143 920267969 675207212 694077569 852919224 867014735 258877559 661383589 931788061 980610202 39424173 88737277 672527194 921465535 140565763 287261296 693928280 903661225 579703578 648988805 751303657 941164152 242832354 880957328 846070467 989521419 338348250 874491422 376290495 513184698 204238747 699457782 279375861 900448472 395437198 418464017 196583223 272725670 40581593 330075581 137136980 665209743 608034824 713035438 571707167 823901826 882771837 912546810 684764994 722192347 416477616 660201975 689729542 911707162 634871682 936995126 440029373 812176599 454786915 513882029 600308448 844747078 976561285 988987040 25964346 537863235 764349511 901421430 14791904 424723913 7683328 882662450 755131619 864709922 192325978 760051257 502645105 973941953 738356273 970846699 144691009 167964195 832657386 865479523 241977462 366685642 695436647 985319967 619902655 982568542 406926942 546424921 27155117 79741665 50319957 798514908 622431710 981464450 12939325 929032778 965763450 976803034 68134915 648460186 634044179 894874168 763484132 877039948 68572187 385325709 645615669 706339973 233959675 732811492 503034934 889665688 633223642 952830799 284077706 810695490 399556575 594645317 154567536 826301038 616517835 966184298 20861442 282766446 923703772 973282808 74583170 983137421 731880268 784756136 553408451 890607492 443991731 978614122 700596550 976692394 913745866 989823863 820714951 832165386 323778453 720610905 744248871 951935020 17314522 554353325 819214440 970198226 63618494 670008616 665943953 993935924 980082724 990245855 388160819 713616890 146526764 851367963 38438828 223769193 357189188 954066614 963488956 980596974 179015231 967531014 590025797 714033880 557088696 724277553 733764119 803171553 439982807 482630957 166226773 928220843 140435438 598461035 172907486 616903612 725808915 787911739 508418859 675568312 55259611 797883601 275083888 375193847 552154051 750420192 39303758 498151323 863766528 952292412 271026282 448295122 893054984 962453907 574724715 687637295 738099001 877616501 653813342 755845674 36931203 853787969 804462182 897533241 561894314 957628122 25544786 200435017 53631233 96042581 891462707 892787760 421244413 868870390 330145464 886581504 125938016 622672673 674506667 752419210 625641043 882032918 886140429 951292982 551180142 804983817 84386249 933080038 941624872 948501286 644293734 730408903 884425489 913699459 842092326 999154371 633268342 907986695 39492639 754555064 536504071 717089588 338825991 855621743 788970871 954949224 724830223 911030885 534687222 954678853 478009803 730285307 269737493 842222506 159994500 386959770 805638728 989028995 344921238 644068302 341918388 473520612 150924676 774183646 609628537 674639884 757041114 975393185 22296896 906823129 517078113 538466997 438838403 853713059 292534264 677310100 229312313 488833861 75804823 978817486 621812695 838718605 714943849 875930782 694778723 950010617 310042100 651192940 826610664 851142714 320430076 405217099 464670608 467918863 851923115 897312934 499863438 513077997 634976985 761969653 542370378 729009325 115164425 155858596 161431679 411028244 628818094 630976264 981025882 983738756 476174953 882146236 792946365 967776701 992367490 993625930 137223725 784800019 847556699 880196399 244429355 506567173 596332211 922327813 340301562 946295919 291772938 903453854 430061390 910474574 231669422 754225916 989632970 999193206 655777702 941493876 20041638 415478281 515747242 921271367 294749690 472563061 855720713 906694679 797334058 902587804 863789060 912081860 186596440 521404620 335340326 977566232 779808336 811409565 503010570 528663007 511470835 642206657 23464840 484312605 340039790 801957240 747250131 871674176 329997040 537865141 237930745 389796066 174068090 641994152 941141988 946677921 542247530 865388452 841420807 939789136 595480940 990559534 337397297 938294884 131474623 288790919 400803186 495349233 477466172 763494385 49222234 594433537 548200575 907516902 96474936 578543446 904437735 963565833 418196391 712132142 926139585 972366808 407794666 474019780 87058051 564785037 76303658 281183468 685339425 909574800 322267573 877276746 158459432 707796664 870286752 923546569 248989205 893962350 241970398 346516618 374409232 628734648 741517127 924946708 301796061 969646895 264823411 530152564 438000451 610141358 4379212 959431930 194149431 470260300 81220657 970286471 791942751 875720130 772243074 915308583 294260878 788995191 114008036 529057837 963982215 967034151 410066398 628073437 129270653 750819167 955142519 975865936 952835252 988248593 276510832 359529120 645859364 943591070 117271206 197782424 232719115 341422519 730564375 856874615 370186056 641683873 968831406 987143103 232878530 395532956 765242365 773440835 668365315 735319229 653383361 902572368 470576807 474952000 852666164 961738078 424115454 624968251 603731009 982810046 594504771 718494463 429965908 944542480 282068450 693569940 280682834 616790089 351157903 572915371 583203780 686441463 628334922 971264833 301874965 853876840 134274412 552047758 709546507 827270051 181033378 840303036 710884553 762947363 727237862 766859321 85522942 317863384 831391140 916775522 359536676 368724357 964525355 976329557 619830443 995155966 189864267 767959355 545236065 650292823 555087791 707662168 491031185 961614610 741443704 854409333 502894968 735705000 26497426 128599633 406974248 962696563 215102421 978563404 795950675 982286626 112456356 791113514 925809258 984439639 74359671 600448311 654619881 929870043 422278449 914344592 535387369 613265584 998877617 998912322 884210606 951261739 97352883 440402429 59661109 215204326 722990574 932361293 556452172 607400858 470407956 994656235 652515377 749258913 416279149 928950169 180192677 196632156 871080988 899511704 1537137 973061298 419586864 949319515 507719267 562626033 167362055 653612980 379141862 638176710 361355683 469232501 755966340 797922178 963454866 981288837 523252064 763187143 728815609 739529639 486563749 584656502 292210160 716337884 249622042 597202888 124846238 403226071 395723017 695694126 46510853 727727480 72263411 953214768 548936062 852314363 684513420 876151488 435979361 747299259 488168820 973456652 920147172 975224956 293318559 591522582 327050510 667396652 115918777 640476902 617651042 794491912 93400979 407174782 896509997 990121643 73277748 226596059 454724527 846733470 912938150 919699785 708467918 907700998 401088154 753977550 403582752 837134186 203000825 867209128 369225645 925132684 26312962 353883251 195113313 670001823 607050829 835689292 717366688 950380560 246398782 828561619 318482276 619403955 49340289 468988464 267639307 581717586 104908393 857949757 279538836 432434851 609450582 880758838 745144995 756413711 197239269 831869057 283451912 763261022 137461746 829673966 47132274 189350209 846422777 854463585 396178589 717211049 335663536 927822427 281292935 360810976 310577495 359157247 796735629 810570355 788276882 860035226 436238607 684617757 29341635 717472187 614831501 940553759 222894652 636054351 782946153 933027897 189231254 941087699 48793516 910614269 643031046 698350274 548958689 628451351 828488468 923262786 594440623 676465241 581331161 730799361 737448801 752500321 856870356 919286316 774603389 797125070 29708657 199442374 715198801 997353261 236348948 354014307 571858907 812219762 220253428 874943796 966427007 973864887 448972378 568550843 177190041 405098008 483276278 751011931 35740943 813997427 99445441 355214848 953317542 973041014 212293440 390813712 715690900 780174315 560723222 773420094 977192870 991587997 835397025 962945500 357137206 929294343 687874197 742304243 317617167 966408543 776186893 921358998 728777852 823455091 48175823 952708963 139244372 299689710 6796824 120910840 767221922 789006282 407652390 982101674 619828281 903448891 611243519 663519291 744061485 744541839 484420806 663264319 992385538 995757132 660758461 786512914 862302411 948696467 979145967 986876155 301418093 966762764 381028981 640591019 496331426 653599731 78207653 199386995 224665570 239627716 461755396 575163976 342948877 809941868 538083234 727582411 789063320 898491504 967956720 994303720 541186983 643820745 134633371 695753146 998823211 999092333 962380779 971623057 604762393 849565179 653824994 997819773 136359009 520259556 221246998 634465780 336459920 651534547 876489371 910679161 63331509 789595047 69187351 969448013 568707214 850509876 415130285 895402568 236326732 427453451 945166507 964467907 430661296 904910744 207949279 457659755 437062649 880412623 845762538 968655251 303672153 774957516 278729516 616538797 965088650 995838440 258687799 787988053 469661232 960768576 765575027 883679944 123014124 318638698 586385578 666544925 726388685 871724910 935656130 995583215 625274342 874124620 14059887 829740521 601373206 746527001 490513629 792407250 844916346 957826452 799229321 931121326 802562839 897306540 560042825 570615958 577209366 604178287 51470682 162788907 390967117 633412919 522199661 647634013 596131223 702427450 930472872 982705245 310709133 715700919 772998844 904080506 44027877 675817988 768000171 945720184 855482098 863372762 524439981 740346168 791643255 962733420 602813713 839633350 893415948 971278860 344890136 485390198 772325893 998618004 244065 570281175 416896183 450079568 141324107 820035093 18721857 779433275 721717298 863496383 504411506 929465235 694008480 942577533 852083514 905743876 975671538 987890524 754643344 790342095 878751110 990199792 753259956 902784086 556362046 606377498 644713283 897239256 526218896 837637497 594367656 630197238 413899491 738567292 406632359 437690641 798935914 812020603 599393251 622726691 864505997 943894361 313295904 852508113 727721503 818013843 117447431 590032298 326303686 997966864 403969548 483955807 385087343 471147566 709619766 975232305 270604059 920167150 199281617 847356497 410271564 650896429 342317950 704287166 140153005 867757686 523005848 714096935 487668420 936857060 479295027 487012325 363591296 704893657 160936655 180983743 549805112 719408551 286013321 307995615 653848899 989274795 534288442 909039248 856603568 992315399 484323113 928430749 882131929 920040053 610909373 757765070 512339280 574976669 451052096 669543570 485541767 539332492 603176038 632484173 398953831 861925886 48038124 69709566 393395333 476023581 496036731 643496206 379438153 481532614 598257639 947713187 228820876 865295800 572352335 971710017 730784494 990602946 1303146 939490689 169113752 799811356 327568375 494607644 350971890 470187677 860173709 874669347 434079859 916809921 585864788 703081411 395688696 977022645 631119842 980366606 126602536 778692765 677437232 956185432 383236240 956571762 524174302 892599221 60025020 348340018 322686213 450471337 347307591 682585640 189925596 228929616 140522000 591237548 769732534 794145106 562926554 705538133 623616713 694315881 978606844 982378162 187237580 757661914 436624761 473196937 858757763 922726105 927979466 989147438 690874078 693446596 395265798 901518522 212492139 371290256 517728483 545317152 350971961 603246838 267470145 750987546 261067871 411556983 92506750 107998657 600870203 730612436 866488140 960596638 461277153 596290808 765797113 884618215 742663723 808726538 4969949 514167344 876775091 962330686 678517900 751911996 166630176 688016604 853761708 912752030 721803414 892337353 636051 786563463 161103018 696091719 577433911 640434657 139547111 641598962 168957132 763962885 175086418 939138777 413195010 445399504 436195880 647481975 112265305 738863629 594585244 743254811 545383824 945513263 740474572 929932343 678458194 910660250 930809212 981156476 225913468 232773761 32556117 89489804 790196683 813639637 190137717 630768078 322503052 611201282 519107657 607603351 510627211 763659840 661860131 976157529 542981446 816146606 866594879 940016334 507287256 514750445 25230281 372082087 987411591 987447756 436215348 837551411 516279061 920193072 530448227 738237046 845535850 957028496 28373007 120839439 97497542 118349874 590286531 686483952 425907697 763844931 648579963 906665216 939412982 967193560 883934923 945716922 718542290 990635376 731357358 878404773 169106237 410061731 172197614 456926710 27703351 363238610 181174746 587024593 627552853 822153102 294210683 373431766 843356675 851752299 863997664 871640230 36174717 60711103 797306896 851416546 493201915 787706571 392485607 735215512 911263197 987489651 24985302 617948333 735373518 862437777 511786074 797955874 594415116 994098341 459935237 719152073 289710889 498975182 787133618 833744685 799647121 854412222 772666034 907000766 661188396 779986863 557518179 583655791 386641753 475898316 634050370 795923698 376428017 573395451 379385524 837931565 782269100 805175883 957751011 996430979 439505975 975229396 650277212 727902803 684834911 749139996 680149582 867211388 863449085 884432607 905543966 956594804 805768649 894915348 873824750 936059831 734594284 866016051 612888560 794620431 570376208 903075084 938284823 978017487 352186800 801350232 750243498 819259502 18798257 741772389 256058462 353703971 585629846 643472108 470738597 684349323 332717438 352808364 954096556 954688445 315695312 805551873 148988954 792966231 553044871 558007835 617622160 879381987 898271342 914317881 535677038 555647884 686751570 870685568 267816535 780428530 102033452 536949049 620159868 712638623 123536759 401086957 321718363 430769042 414017739 732289839 294644505 729005938 413273838 834961261 733733020 843392261 192311585 729145977 692827850 801749714 10236504 192902194 545347952 600810634 491222815 874988364 696620217 881300658 502074605 523283868 801045623 980818475 330890239 746579975 707556475 737861803 101338155 892296440 649109762 903616168 827889840 835309024 610020673 772107284 10871776 269344974 151912242 282868995 439369103 820816497 632332475 782163239 634482162 907839454 957560196 998090288 871193344 982473924 467692078 948447223 224154053 353607938 393135111 605684407 234268958 678054904 605623915 817361990 394003562 540827647 426495885 651865907 243782342 326170350 34928121 241156287 284167555 533761115 578980420 863336785 873170149 939854886 803491329 965046215 460815250 548870538 197885581 920690012 80395308 621725638 362653318 964051493 379944287 766162553 478036242 709807224 932742196 939070446 393549086 454663870 197634419 249551240 652677786 988940509 888823932 893791556 467968772 617815023 337315073 818397223 396360282 829270961 129011814 331649006 990570067 998545092 816619528 843343552 72664638 109080353 297106360 708773446 699517043 794833935 21660777 917391047 454002343 653065135 172418345 584837041 399144876 740056671 480477003 634803160 454839960 603480654 737120257 758568157 392253329 854745986 161165583 211725013 711051697 967565942 36160413 589168809 831421460 953827748 659920251 837477098 600368519 804727986 640413579 976836395 20395650 966780480 444329094 600291518 816851612 863493675 103201791 408196285 54550235 168288968 573775278 600831268 190417623 939468451 596836063 949329375 765033182 925789571 628101689 684365384 504283361 548655928 232733224 526508577 992197374 993621968 893421253 930906812 541894302 717865515 402338137 647337171 826606267 924837274 597330588 643211200 354245296 924079802 680622668 959905151 428989548 535261639 61172366 440083220 49617454 491629816 130647715 993684377 750895249 757619656 966701426 980617342 233576080 590761786 236851422 966395067 597880300 658249267 877637916 929804591 249875785 446467837 172386036 265724147 636499128 828027773 943676529 991257648 446120069 707847254 927445220 949413631 188632974 227588206 269071650 993750244 47869135 935135390 272406754 282891946 430743007 749308369 782754761 929411016 677477663 904690151 72172249 204671895 223441799 307106919 694340234 964988200 561512486 792414596 152563650 842286945 628974727 879914471 573392008 681626271 376688206 599545011 330992046 783246717 948978814 971560370 408507157 908628909 520386147 790953654 827515546 843805517 658369420 885971638 917825990 945258075 570172201 872467358 167926779 333007253 470950066 659458272 38104738 215934677 895514878 939607898 1393043 51396525 529865532 740088525 844230603 959287064 475529781 826554980 935907026 985078219 183788568 810073590 729894323 935674531 205681478 755953213 217523122 644291362 146087290 402224792 61126756 814289620 374982002 715354979 476004548 589792084 220905619 290075048 815594130 951935834 943608373 964414421 603402780 824169188 807255479 827953381 91011780 424401669 306998084 434906321 193517345 548223087 124663754 559788763 226055342 844856356 588058086 749577393 8150077 248313384 466083605 957295345 265352416 637010564 351078880 489248317 858582071 982283432 10130253 435066922 265133102 269642961 877475802 982413116 611669652 986077864 699359299 799541283 158119544 665504563 399532371 810161239 824578241 848683121 825530062 902758148 493252046 993983588 260679919 866329503 174947000 705198432 620782124 730507865 822741124 910923296 786199150 921763300 65541449 711341207 352174493 629194779 624756960 881091643 218316577 645378396 639775843 761172364 82648065 942482658 191617802 863610256 773347410 886003610 360300559 843814246 633233588 935807041 554030339 709521094 243950890 989906015 142849654 806033089 512904417 860714450 750094523 949909525 326350877 640640936 367356138 749806580 100535525 452613146 20521496 483160996 146065332 454827378 262346832 379089722 268223941 362543823 50550708 229338895 508338340 527008384 836844766 969597282 479749190 998519438 357463721 454342687 156840321 656188576 124450686 968808274 201171962 884462966 390036229 982798255 945748466 986986143 331899350 835700905 641699615 810647766 228555494 360716215 113743133 467362251 531652581 695621357 306141231 796976259 827817320 947701751 142017282 822339539 494868589 798578539 785379726 842892036 977647816 998271532 202514649 652577774 432075094 800876699 445779389 634050333 286396495 689638804 507684739 988741140 508684714 996759753 863873038 956859772 799871239 935588170 187236392 703679252 261684394 960241038 746614649 854655881 448544818 717147931 327679002 806642080 708612431 902570756 416371983 420305652 878173113 890956258 273636104 815595495 553255176 563272752 364276948 371885867 556581797 663593702 983487041 990659683 146637065 695696232 170114767 761561884 406092885 825866993 227146586 433724565 433015419 845178108 858162938 994377038 768985375 816599408 544653223 597494007 735451460 966183618 189908680 751151082 331812100 798443414 54107452 639618753 978606682 989618330 730533863 832405973 616660551 814785844 668492581 825476551 677759942 712247217 751059255 801787273 118222751 191183994 900524021 930776395 129193297 875148433 322636529 492074665 162524692 360071456 562453434 951667330 697578985 779188464 898695507 993751490 874733670 974217302 362155290 961806817 670662623 774349437 650465212 818323474 827883365 959318769 222644707 686133453 114622204 789931415 135644509 697264427 668914024 708154628 779871290 798449521 791184529 992510060 351141378 479721398 340307548 405685091 81333553 207510948 552742565 675328554 939477177 967015902 396306853 775196671 222061644 966668218 135498001 524819365 446680010 798363462 32226553 940933184 367200561 917507742 843052138 930876170 510667456 836299923 271858157 685450903 502946675 627464211 939119554 941001198 335003881 909007107 189201315 987987215 895621956 899476378 530323773 774631506 456210347 656157909 615643053 639256274 452290327 906711383 870442793 939736792 936353948 945070507 148000479 258317415 401125254 666575045 883070062 996294514 237219706 898558670 308810211 728234317 520376626 811872703 440091707 734674652 865753714 998367757 11371866 195703942 191973641 486378124 944558833 978267290 139484767 883958979 279426397 395383594 523531988 807287420 859885923 948580114 896077628 964670870 733125344 991363604 149326322 514702360 592480035 737067077 374033247 686048486 682022764 935490958 33356575 613314626 767795717 783887301 425151174 459295671 568955648 987244159 220666419 250530768 256101982 784938559 56287422 170448100 99947053 771223960 993053318 999018625 928387091 986468860 118359557 428337987 583800800 803783722 531700587 645635380 74998122 278348069 227519248 996563491 753725816 776345395 520720278 620532098 182835890 833255210 517509296 762187959 416358781 855582967 20574906 565370929 790488125 963407125 509224275 612013709 313162401 689180520 641149640 984120916 211245120 224979714 649158324 896275039 767375971 999191159 406203155 922299524 342795072 932818997 307931880 732583673 219969002 502488220 676468963 763247406 640645144 751315994 32058754 217815928 568064939 816463739 235650170 478013561 320782526 946326855 477082552 842543190 218085823 573253000 603877087 656015287 80395143 869256774 622808461 994470031 974503818 985454576 229233539 805593002 475279051 542889558 314607408 588998676 215362793 834380586 384117516 407819046 339023940 533524582 206827720 360726946 694910837 695360344 315159584 462627631 778545501 792012188 708023180 739312751 443518451 669825514 31276744 689767699 498540442 952441128 8645293 160343079 998556684 999167517 321954165 650234716 631956847 965969840 209167678 784471625 317836403 908494945 675754557 823615536 663907735 838338338 614761823 808686678 67073807 721770204 289641440 775948162 448018025 557606162 408466607 901677877 888093117 941749597 586419771 866274301 527019556 662713824 78247654 112130820 725321053 865289127 667401044 906617860 512718091 516091242 636828116 899035430 551178670 880068493 839372112 964329145 224433534 352460609 498213745 505991472 601601683 627719633 153381103 361584164 956032965 979018734 804721814 884094007 741209371 985867926 820717320 836591170 550575251 556656558 742955812 862235927 179259349 614865398 741680993 889519091 528583645 613766125 726620966 858933020 245020955 876469485 33303889 734937443 917981149 976810075 591271263 606924961 488718107 819397017 75214368 748924446 201345321 536406769 217760860 804247181 475665600 694363929 617030378 954612754 667121954 831597537 809195366 904945361 356520877 486326613 4641403 670441231 739683530 741295061 236120838 903706676 539083383 544136166 543738145 860733199 174922934 248405016 126336344 863370682 436563126 663424651 706625166 993125609 551422315 804198933 114046086 494320318 496286622 848225383 238484548 749880697 857473979 898755324 325662410 750401254 38397294 587481098 609394182 881426824 455958182 904499136 908886638 968074434 113724381 333736892 867988772 895533022 773918356 845436405 986073062 998782706 943785617 984501942 567695237 640245279 183498602 558981102 832451849 885442820 907939027 946581892 976432421 990542468 280143727 453252947 395799446 767325208 284236976 732117313 251710871 590004687 979135736 996447512 815900863 904552187 656783989 823245433 190728302 704123380 508034337 775088883 846596769 884481990 515243019 684440735 510158750 533275142 934860245 939791595 275229062 356516938 459487638 878866508 99632567 200181240 935735651 963030850 857792942 870020240 282982877 632719475 251032253 706521175 261786966 319169205 186970157 719615792 771949990 943341697 111862961 648547715 173115349 850576406 270310579 304868205 543607701 757554293 802257679 972717138 687459833 723434481 557117940 887364939 946643903 964530289 338137343 628596774 680337916 921474124 989991575 995298817 164883650 676875957 94011833 848539649 709296926 897171178 253478258 682258423 805995979 976696120 574608529 883389992 836446446 844943285 727433710 756705337 121936935 281784953 126228357 188713062 465541369 620237780 790868106 823222494 454584281 745485078 547296942 955197722 433038916 941876077 902942098 986316406 213002744 282855519 837654571 990066565 358241064 399433969 901425256 963366009 538505198 567171523 303171543 594168517 422734794 629342335 912486908 961274848 333510889 972082445 918259950 937308072 747935523 869277961 846550818 948042577 241096125 699465203 395820361 860236695 951216397 991965069 352203251 404739324 441486839 629197565 962403362 975685798 315011151 523624246 317092686 870807665 959161626 988997817 162429785 793756380 425165537 458387444 353724973 724624312 16966076 339323496 329305333 832246818 999053091 999315758 670311079 814599329 793518533 907514996 558771505 902150341 524839192 638919044 306636077 935390086 22904174 286018626 42711006 940295533 953469633 996722337 522110028 965195073 785917580 793272939 874658723 987616489 680438487 705837155 738608806 757861632 934131073 945828471 417230467 468409258 84577424 954169029 206606827 283506800 262239248 928882192 509206391 750500828 44185903 146643393 784888809 807329438 613366531 978122717 749880618 935166174 473047279 875200090 863308456 932158832 993311876 994135474 892513141 950489962 218605853 963512164 673654288 683654392 964001791 977951831 677443402 892207695 474706440 507958391 312350629 992090792 903393340 976540864 926790729 977802554 299672414 857805355 173756072 546394722 641274090 764209037 73613676 544506569 32676585 658009561 520183328 571505160 291990554 842649219 712389507 771725222 59223165 361864524 678303628 685095303 23044136 967371665 866438470 987099004 428471778 568452790 810896034 935305738 102513282 830747557 681867416 695223567 205324059 491014476 413655239 579169860 401643685 611321416 247932797 612402550 115647320 864093975 944842648 990618404 920287984 997512717 37104032 85689708 531014342 812007324 681162726 721439584 686614692 964565982 73986274 265147549 679804059 690269135 51011311 543706494 5292106 287551458 68877948 329989746 347895697 873482250 837838178 849468222 947394909 988705779 562135109 650334730 858780976 903886512 626353412 876887893 479798912 905544292 175679555 239053970 110499138 911759267 162085873 543961328 397818330 401651865 838109790 908853327 455788165 976415617 877939428 993960060 311633217 316004086 334236221 924386887 298694768 924272722 554675108 716434749 89855204 829598058 791382257 844712759 997467253 998065620 988814453 991375889 398794844 725380344 278171400 458044353 666794758 777014066 113325062 948955217 412301232 933357770 103234171 848296685 493568360 917327316 286804478 437309611 931220993 986982892 216748609 931800108 116701798 870385465 584233647 892436790 731302669 891882306 840894374 949865604 38491931 934986990 608246 875045676 20390473 887146473 371793613 375576376 426482545 761682425 96104743 962298418 632100651 966221650 102876411 915034059 871556269 904717221 192129114 842994056 327342836 476767433 444586960 535496398 382736921 870444457 858336957 879034451 612921959 840109184 243230075 947645400 962250265 971190652 191086241 783838145 834961276 911527470 645629861 667582546 386595467 594076730 206782864 366766229 85591761 196190067 604944908 638024166 582213688 970255486 991691837 994298169 459148339 864620698 273249642 449125187 235867517 251235028 883998197 930490625 355907382 393163269 218265140 492928389 969680958 983152527 753979207 805238339 425922470 927269880 31675871 258772021 286554182 915998000 474382703 678098089 64796343 180067475 17737294 561146679 689907822 911466509 254114574 895247047 467260929 790489706 238540870 844863904 434181116 515322306 590928741 756216902 306142414 566420010 331482180 735878901 507717839 729064131 19099239 197743457 992277858 994563739 697547940 799710019 639158842 649536964 976121600 995129465 941168916 986356332 97388758 163866869 505725016 998636327 470508460 629461737 917966296 980655934 439427792 710632617 989546134 996629353 185903385 500990370 327831904 837219116 333265480 644327705 336660394 787327923 787313892 943134137 782061323 806184706 556487497 803287296 541206196 813566138 775279027 906963120 812858010 874247343 512326991 817828534 416149395 544174530 473828871 624162194 169341580 970107120 632084769 872274898 579398057 726678334 132882102 429803860 489804661 801765026 456955390 891799407 743515212 869580897 550944576 708296426 601641569 894907774 393842690 631310821 610988510 675197215 889577321 920025940 311218446 781796824 495836795 602131409 594116758 850692349 304490834 388479487 536027977 779989312 435542200 663205635 631887399 994584572 971809490 988364951 150167436 721449490 462956458 524271661 879702753 963545058 991215915 994721299 190580267 557406499 357006517 894854141 577664720 732037161 988047531 997384607 963990648 994705949 424161029 486617043 235847528 476952654 25346390 994597911 989603759 994021147 23108702 128147021 148712809 533736549 571025362 979545742 799675849 910509494 489613922 820975447 242161593 312790407 609212655 939218418 406171715 932914231 11480948 998170214 781289360 806594333 306956657 346549526 718237710 903704849 409319664 458780773 182606246 684997593 405627241 412276997 60968913 999075528 99336540 255350535 247936505 322518886 850595258 877061736 85945171 712975301 358110498 981849253 280151731 764660699 216545615 915828927 798084711 812379259 459930224 776481209 578522256 810133181 356001782 863292540 629069856 923771616 22565097 431982476 218352330 857109529 458351059 520199879 582505095 986305504 424530109 817177168 404396079 623464449 291645848 703385008 335279820 883019477 198297406 938798170 357370016 603262977 901967695 926179607 69410477 325625274 799013041 898699020 888805484 992484544 801303253 935059050 381200417 508578807 296359547 566238225 469456054 778961543 88795138 436885828 370087656 588293664 537941424 859130226 849048341 852057870 269598008 633199698 777758329 815496106 669142392 768978613 441979944 460790615 882222472 896712641 500735462 986314400 19804602 44078543 568393170 615076716 657212091 723228817 491958618 884890429 239220247 728115362 343099570 770285039 46706203 869264266 475511721 716095307 771539743 984715415 233597030 979609739 269690931 349820794 459080838 580057704 731169958 765374624 659261278 910757581 14711069 556994387 638780818 766988628 945880693 988615706 111514672 250558019 943866157 951083758 726341136 856343545 435952104 806483991 990123074 995907651 710847692 814336007 243337146 758533855 210792976 390824212 596870026 612629828 205449017 488748885 822090546 886359337 391557890 499038799 125528818 977237340 5851677 351085337 396871348 809997067 412832874 720993819 793961071 947408892 576152217 629444685 396826762 924325814 735174316 981949075 70087268 479895857 527495692 650431548 526439222 877212305 33283248 652189892 63916650 216425029 602449177 611640803 547104879 670526228 718542722 743602451 349697052 971123380 366428688 502490918 258420435 298591426 354391362 933068092 533293567 799762635 228455502 770120610 802144772 993195116 658649160 759077958 50202668 448765975 311460214 461914706 638309647 877521123 393299743 537208235 271953405 882768810 409943551 487354620 100723302 789754650 948642858 955940797 677998371 853751415 457048342 579935528 607636724 806819082 831290248 916716754 564238329 805701023 948516499 979892658 133233739 499289439 819646089 820964175 57695852 929862523 703845491 799818865 90447297 811889395 269471002 358795898 51701210 245173889 7759489 576518257 738419309 886707065 411400007 684199085 670955839 851676752 275673748 403246298 281450979 343287430 497139308 731137834 491430874 695160901 716608039 997131473 966751043 995212382 130684961 394452126 421387728 814380806 657985832 742431631 716893953 803181446 394120903 462951072 602557474 741961850 320545600 659887941 919739006 984533182 130153674 980688742 819032553 917595725 169587650 292523595 293641879 370187848 377206645 956531660 390969233 454757155 344515051 499438520 416023288 742006306 443057783 540005894 530002084 765933548 906955809 935352355 527347252 775121087 831252484 894066494 666917696 669011083 634730197 769984677 270919694 627820746 895677373 938915077 940307953 983136846 656452638 812128354 97546533 656245035 870678915 985166868 778390316 931362218 650604425 815288004 92225256 817268643 439673813 818061824 101901360 506177991 382054865 639142541 289101958 665949287 377772182 565819843 409768084 424352686 988094948 992061109 893776954 928106793 206717097 508010762 578212884 816000054 361216238 985954915 212113082 639848427 277318074 884552376 105619655 795842401 90281440 275441073 573477859 722464204 863191864 879884897 976897954 997366780 235713469 642287186 171484051 282200270 865623983 981786946 737544932 867877236 512064742 660194303 720778836 795178283 714459356 813290142 237583285 941572229 706978756 882100953 207086978 409077266 5384857 391522586 907446066 981742016 24577530 428042699 223543534 630887386 931190021 961755853 568807470 899089716 521567 163260690 421020243 895147541 720056542 852942200 22939910 707212867 407956991 792380017 771527384 871555458 809678089 892482321 424892655 929926988 482624691 894153935 415875879 879104556 962859965 973706725 707928944 834670846 336822795 553207132 160352080 504658653 15491438 570003391 242985931 813712037 715114982 928522511 813683839 832906420 588100920 884749064 237119762 582067104 672863442 799768779 163986582 697098333 941228553 951166823 18775485 874212784 487014536 862933265 635541621 701395719 482049897 666627430 408194202 751727335 107911211 163455864 154877074 182698199 4681197 570370097 285261049 657378291 383296167 899400939 60857382 745413346 155613635 750152956 458439916 947146024 34661139 622999534 310047289 835738613 180330415 218713084 802845461 882879597 807624688 945993905 856968730 895223794 603593331 916211050 359454623 939467454 835083441 985571542 605234719 965703165 80285665 249986213 425131357 613908021 24668914 488293470 694072860 853810510 449813463 910306719 568177198 977547456 161490870 951235330 922215034 923568732 865196390 934729839 723892460 959575210 173714991 268330418 338472654 909956446 369828995 413799214 642861362 662357185 288295199 862350213 406012476 605917987 512840033 589822174 352119430 497161388 243044018 590939463 903165651 935192564 946685135 972702584 731023168 922173124 541129709 805376927 535752798 717896921 497054878 583695056 356955435 393187287 466466321 763650138 496502754 915790309 562156065 888335632 950229412 950823357 812122427 875106134 147428191 592219209 559218455 640664535 18735634 728125310 743104285 881717202 907673684 952679546 817553133 958755811 949923855 964987899 266441019 934263116 474361760 525159965 29509701 655782288 478070328 600115807 859632852 950075039 365630700 796426941 53331226 777232417 409350417 545799396 37299563 686421390 729905838 992219589 975056300 993687636 988193880 989683867 1018227 500237662 98160525 187997644 60819467 452467341 182656923 795105112 13309542 402301726 758276541 982374621 187294869 895274275 592889405 636669646 940211484 979316803 132254344 379376980 383518077 803455823 172632377 868610037 605667382 795337256 684354209 868084971 853238719 955575684 106605339 429095587 893355905 937188969 193988964 574816629 680857079 846404538 582038000 588592239 148254573 555086141 118212935 691457714 505578162 774859102 535970752 608626935 573381783 650308167 898280743 951121430 452852319 599763980 573825590 727642462 649163902 661122010 734056787 932200337 618790023 943792153 490619124 716124343 718202768 890767685 183106380 911364993 304908853 887730227 252008996 760801460 858252885 900180496 109844889 257339977 875281209 925556559 88586665 137291815 899396385 991539947 492963033 501417403 977561942 983258920 530416381 738379946 287163563 581363927 854557091 923450998 797556791 865755163 243702326 828793050 101683737 611164381 540248436 552807956 499629075 628891118 415721889 660725174 738762215 923368410 666961285 940661597 437168600 717896871 49228707 929230977 947066080 993048391 758182317 761258827 822989399 854596460 615441545 992094300 964008718 976869411 266107900 304974929 440792070 447952014 23900809 757374208 974232315 979919420 525839497 825925732 120535436 719701161 360451511 695884060 305003238 429765744 604172620 740561208 809769678 885907864 140410614 765267449 258848128 453181513 422665322 622633503 999213934 999392622 291388615 679541270 274382018 335702748 866658946 964881610 409467689 910293132 856868145 911996614 73489847 436895402 199584461 941328865 86302557 484180166 893911597 928101673 265996033 960559739 508220057 621163536 975298619 988022731 41875104 807301814 788354565 938481115 839062481 878313454 617284338 633309361 712087172 770692616 180039575 651574288 546376529 681931474 922407225 962783302 399207690 578109360 196253591 786052799 853310631 894817081 654369190 782806549 40582906 997369251 577953527 626932979 25800305 117994215 88556203 467620244 184831050 222583398 7844506 926621837 544960860 736203092 868447185 902097996 837173312 990919653 828470533 914459358 658099142 966780172 749034065 793291047 358272938 605146602 336263939 503640572 738223841 770976046 836120308 848203949 807340398 851943021 461954940 682766590 694976401 788588979 668538101 944976165 325513067 418584527 640197507 669809704 177851079 645644906 436329488 630883352 233720866 512197705 629450742 970901031 127745938 339362943 965902581 969082132 247026989 866545032 568915443 727843184 183192810 656724846 285513592 858035580 49610973 67321267 855418243 891120783 315843155 327953355 831345577 940662526 835260275 937244698 231392151 383138306 492718433 545899832 383016772 572759790 926655169 984038657 800592405 968365561 768933425 931688502 490411516 620468615 90304440 427512194 730169348 955483947 420084063 592134171 878955498 885419031 68721744 601591150 904970676 970498464 166871744 389057781 668997619 807540461 542079811 863618094 921999181 948557511 779985082 838575937 49770906 812470912 474774046 659638329 517473356 895641903 827827526 910777516 734262085 975969105 215549344 386588551 423061820 681598773 42777777 50124328 661735727 837395563 605183450 798330120 828857267 949523603 489901390 684912969 185231698 794108814 428871363 800545539 302964644 355731496 791487623 841789954 619781777 667499515 193332345 309730731 731488965 826898420 969897060 994146390 856429321 888988814 97859939 780738258 485575156 699240545 804227039 974452460 175878647 419050929 167089278 936909464 662438969 897790687 863329785 892739577 608932188 973373330 744411166 836443432 122528848 983172953 170806455 630255432 359167244 846871746 350429422 458519271 234046943 477735122 455849283 730221834 578674595 898903740 401512721 795297449 506303337 975953443 715206548 944289924 208435437 240987664 467929534 728183501 370413698 467117232 891915004 933974026 419939975 835502094 893748064 950519658 859012249 934512511 134818529 517438132 585607166 773949287 248973947 357869398 30787600 735344551 251312987 651855674 446444124 789086083 123242634 981236194 15959471 535256330 185145978 658660507 210381899 434699591 78797980 931561054 652997244 968379585 662990478 888872573 201940534 942277799 473729921 793163197 269839339 383122672 266095897 662797479 479752034 774804876 796196158 812136905 641865662 909796535 140957064 481530198 980778121 991351088 347314757 827027447 249886221 586306694 109601267 998853778 784117255 970372483 165743665 502371504 447726559 816764924 503846826 598692115 591075485 819992320 578643407 773037214 271589479 370822144 702171995 732813093 659179470 697716258 292294255 691522445 136324414 978737133 333627144 594197739 833123141 973995093 189450478 234804253 961078864 999016712 293965334 603138201 350192326 403184172 515871619 855336275 109455281 279340890 628245031 749932102 867406671 985771655 825115727 887522387 958936923 970240814 609838144 658175477 730599897 955433433 674347703 739677386 849284573 993930167 629570323 671168550 449090468 615892848 14814805 314191500 357960084 663024946 558636513 983744402 870477615 930404849 284622941 501801352 319986600 394992355 959058452 972248230 906920636 939426610 608454682 751924815 730971577 748715903 680243989 800645307 996884902 996891187 966980909 989050000 445706356 720854106 211111727 482330187 319908370 324092839 517437307 763366249 305847256 748360428 496164202 646753011 738233829 936289703 594643360 652689293 191116604 914701402 28315536 46869285 932532014 968838817 456363989 586249974 626721482 800953697 269031721 538940768 101762019 112909539 271714131 538342362 257991151 624267588 2226548 319929792 289644114 733199268 837759854 890293875 288149094 742275538 585931212 963919016 482776891 982124779 908553535 993695669 989614029 992343839 336720221 711588313 826549238 878374623 138472826 595137817 212551029 830912810 515939618 891003659 169057323 284556832 490582790 836057601 419745709 649038861 325731602 707427539 259093082 450638108 967817922 996114682 466753877 583518482 117937962 339859804 255461612 400722923 645331054 741620310 394530400 990703111 290601710 343426999 953040582 961368499 324865441 821818942 870738923 890640199 157525126 261658387 23481211 833836370 874087837 990115960 103949244 528063838 48464935 276374633 648040994 700837740 985569867 995847692 20929063 861897815 334722988 451537444 429993956 692258544 556170930 752865666 787593036 987927511 205614680 683383682 53097331 685464827 864006870 981830175 891704638 959246994 256363796 525828347 69046344 102172949 306245882 980433111 109944566 874419608 902283212 963556106 301914565 432261634 112160286 416047391 132356034 943286141 598255869 632772694 842323897 862327731 773149574 832184706 650061158 774158591 995261128 997860338 371965474 912397811 197814752 820147833 903362081 995985641 251671965 758638404 298896077 786961032 272712248 861536027 792863987 838716993 166956884 992080911 223235176 247144126 716875885 956273458 504998412 583881486 760614429 983508623 445623042 885218355 126777914 743534305 950451617 978683549 120466604 899970465 738123874 778814963 586043694 870813000 636041169 636995213 702486210 912356563 494684718 890242067 267270169 627185752 386782357 917524310 775234041 867825454 700065134 891735933 499486897 706901161 866870750 923028142 556724833 711789278 448073207 912287895 321091435 786616698 552355156 812559878 132132444 699212668 873889379 877064177 808464763 884362652 885863073 937644240 447720043 925802399 292639659 742245253 681087233 795111000 949874814 984970971 174448650 553290158 205460598 818256570 122379744 363446053 356886228 931957580 266968187 903132780 875107546 933826442 529079441 562278987 86264186 448506045 437457999 769152941 130324820 997065982 734059656 826915149 764126701 853904266 757678951 973430791 310224524 410763350 945671787 951294364 863481047 949006383 658192315 897900297 107364016 434589597 218439590 433125085 451644857 723315861 287408293 742578605 83974751 385752335 978875349 986614046 18794517 47416692 89503849 885395089 914885479 969576782 726309139 888538227 535701542 714905977 286682648 883216105 170344276 728562763 429474190 875150890 410796506 502163535 105306968 741650180 6807583 328646380 394916067 650813157 249902121 650570282 960224005 960973132 652795843 860690313 145888230 460134172 469663356 739017862 647932323 818880312 263300522 406201002 723821016 755791193 755337276 881899330 871024850 898192475 930778532 932527906 664423773 943949014 66466050 549598163 63858248 787633906 771894178 784004294 226321312 838714314 499272597 913077696 682125653 763355937 883296328 922151405 200102312 920852702 728621411 843145011 866269658 935498532 829342885 859162051 711810937 951464763 556149106 689470806 547654884 842088008 121378510 729450451 147537013 771014471 550667647 938490648 900148374 902229007 675626156 783924716 922390849 976121330 857962591 903509226 398222490 731042539 489219246 605374588 175133477 851462660 432390734 882244077 617815910 622245794 668061563 957719323 318522874 872893013 229430460 969210934 649764868 753172110 554270022 954091881 125621300 749336192 89910847 991146307 129788350 870599288 136462130 227081945 256626112 892918493 111619081 148670064 192561843 509567023 183967607 922582509 891579055 954725085 410180181 786959003 255964015 358322849 362567032 991932217 847078265 862810000 604035159 948536538 314561675 597356707 835069908 850637821 75729837 970568881 254126918 282191381 798126655 799965262 746570723 926277619 532758346 983084942 79597347 682702651 482455544 727534277 449807767 971526140 307929551 691842976 339722100 362288566 313203801 978326774 439874922 688051151 647685542 894501218 17134625 47705698 292744132 369089837 694015216 978732385 658015551 771791885 742963140 899286124 818215411 849747155 503078987 680134356 503985917 532152656 344254817 404747550 713115270 884242230 856566112 943375665 13171423 426436782 363067719 415346811 485256797 996444340 816032893 861074143 991696378 995533557 125383342 156028660 319384544 927256835 212993772 937885114 992497020 998959292 525201455 873399172 637342082 746240086 652060195 845039256 610397118 913787326 541018050 707879430 110652952 793404933 938521232 982251325 453118370 511053577 292084544 977412600 514013309 985891315 138377396 744196961 760259799 951663491 356458383 703992947 763084640 790065899 24449140 112538730 739787627 846591111 406510673 468519050 442151009 529683261 887109054 896283598 407199020 902714763 658579184 876822018 466752686 932684725 471733603 699292464 370965355 678442002 694481416 704737723 793581095 854567459 469098641 575635282 387727677 951196512 281001158 395371906 503896844 673049514 380217643 542247147 836289998 840727525 519671970 825607413 680530723 901136320 528015671 963303157 477158485 591140568 307457927 381762206 437485663 641512976 632700308 789273896 788935971 955476246 739143574 871402746 783669049 951028072 497202461 846754434 60578492 692728930 357446306 822310606 609194279 780732688 752858619 803984748 149035671 515433649 794959877 809039170 926161191 967090665 925038184 935205952 969475916 970157726 234749553 969124483 109412884 320374895 866311242 964514350 900066114 973750150 623623920 967021927 805836032 879920516 719051820 987969351 475104115 750015239 190359156 612385084 672462160 712565939 810012925 999029310 562816035 689699754 130733163 845302798 493270969 718246007 750099815 913870312 239481916 351083000 103430506 205947975 154377401 856670858 461861109 585985723 587568298 994462816 596716044 678349376 54984887 424479964 298942292 947757266 743488047 831936639 200719343 644728089 854326449 913548074 993316554 997158586 541910324 796532947 638038916 815777230 961541455 983668515 794012108 820254361 683083612 817263412 215801141 796516109 315239986 556840193 694263476 937124763 305530832 595808801 986151062 992218433 383959096 975882085 298831985 862469300 664811097 707495042 667032287 734453607 144513181 364081637 563522088 688020197 218208244 511583767 233286944 455101857 217214986 974734099 505673846 557798738 318666248 483333121 674248263 811550226 192956444 691650316 119600410 928642163 118657642 532981091 848192589 897810595 136679431 611998755 108040764 622585472 284640204 943703130 878402780 879721799 715034878 792991432 108168083 337403264 454259425 932652731 664428247 678044323 510277065 771589412 870531281 994887613 935505415 995256167 289243270 935644096 9518514 793397173 873836504 925931011 68571258 763267874 600016909 629425788 230476544 948192683 738307283 762565996 580245798 632181200 327235013 847949113 308972449 997059465 630704642 717105514 288199706 747463491 474206709 900999313 745219638 921418505 727139696 969232294 134934832 821497327 385990262 926312130 571136024 966056736 842501041 945914768 587992876 712957084 403367378 650764483 775684005 946950840 816324790 952705280 258497957 273955129 699915085 702389183 433736621 564118572 580067084 892901738 835637299 855938943 42485530 989331174 8578278 786429728 33697591 301449859 129799145 315177257 248846543 762660963 780725718 899695523 245312522 381015286 543655941 690010028 965853392 992175538 874796377 927369171 792775428 930919270 580862619 945817145 651959434 867371353 328164039 725319970 343509663 830180336 954632223 975379517 854200192 860362565 661200331 802007163 372915405 828266018 731074921 794663463 591234782 602350701 47371988 892194634 563234946 920519754 775070916 938023516 891343721 935653337 355256735 835158860 517831430 665517049 518456915 665488315 352511429 922569699 636097867 721599153 327810484 484350250 352602400 572052935 955902360 973358004 916171578 926228052 195829339 544274559 900221389 949541380 172386977 251583115 650906723 750951447 21761956 904832404 330959346 492772759 529349362 770234725 857341500 981017780 722445242 933947484 730822498 840369057 124938800 819289686 831857893 861694413 548296812 888484011 695597546 960804663 514799600 920770327 950462718 958734433 804539929 839158653 427182580 607697629 866747358 905924988 217847437 510121216 46851718 177650084 340766990 467482205 824335173 859545954 854425345 862549634 583616639 622688397 517007975 735433493 796465737 868465916 997787012 998044831 73609715 205396554 544308590 810045728 204125732 645375080 71217088 973703369 735228971 766213455 435825175 998546508 424775301 941820480 772017344 849084770 141811273 748593076 468373160 492945666 717953926 784210962 759060706 941870738 465737780 505819051 364748912 488010675 629906820 718839474 572520806 911461784 933587649 957454907 223576342 956263874 625551762 753411575 359690565 646290947 173004193 670739826 817099089 941871329 352071852 960514277 742613211 824615677 857859417 947333599 512688464 519973666 355817858 907509279 401475401 539239713 906825063 967869256 511191000 840201664 407510533 635485939 397795814 913636575 358601272 862106732 879590167 950870070 624761343 963266415 612948247 795976913 68385493 151643768 415459175 985797783 933111466 979107868 145906834 923827735 421355028 846818714 615721728 972128553 155744475 270835704 899011943 935757486 716323587 783652448 979439505 987282086 760995186 820228440 119013970 534251867 210940869 406513169 937710994 983318478 900654088 932326907 244493236 993203948 969757044 971364539 33019989 276124873 447916262 742842008 569468256 734164018 924043668 994099910 133312803 898292644 257713654 261131281 827784033 895261986 572637836 749801053 50917283 715033489 741107592 758831280 509139174 558263538 97953301 861664700 781265031 973476985 296699841 298297320 334388207 370093634 941150577 995028649 786406827 861323852 636069110 957408482 244639794 670343396 132858190 605394512 243200129 544960353 162334061 774896837 98935851 656266816 140792584 200937070 165377592 250843712 974506375 994541494 965805899 974843266 284040349 688215394 586029930 612356129 381635960 746831764 449973959 934570030 395298638 547678411 334835520 994787953 30423736 652610948 205887824 619903161 898285447 931720726 627316278 663214790 539484425 940863187 157538049 959032965 45472609 839898458 852807456 948977041 743435635 871426589 890769837 901595478 821879261 833822261 269358656 602005849 555544721 697836109 157919745 493115563 434849900 703077391 207421186 537621050 124644499 750905590 555740290 657847991 184591740 944286964 585279693 862585890 420258121 547398396 582208862 689168605 510021062 799436354 11411958 63404905 383742810 470631161 745879732 748191452 663925515 854513433 640949224 667166902 511113642 722097423 683937417 721662023 757477849 912782941 849598699 968275719 455754964 793859501 853035805 980896423 640325898 846934203 669218160 833220600 886030083 988964258 620061396 622134409 639914641 673371460 802907935 913086367 906069164 929668792 263153858 911809409 780878434 816630513 532887165 861040847 701505454 751464375 714758333 897361439 997097778 998572173 51627856 537724487 958727153 982966595 376871489 724566156 474272619 975347765 81978964 288455932 274124533 974172335 122918713 341086846 704069102 929948807 482122324 575308818 77666156 145366991 998512175 998560245 906993490 908141643 850868310 879597109 65682419 828912874 918665786 952044229 893829034 918422286 452325497 842581099 244675563 408337797 286568043 738841163 431916199 764366735 461985536 932884100 295236699 865244278 581205107 715326043 403510579 596328342 256915090 619616765 630330655 862965217 583802280 800536731 268590338 679742085 306912219 733796014 612077656 985550450 118562540 775154287 349174516 928618782 901731030 998796999 699224457 902560756 991772410 998654054 554896021 716887999 885260759 991331291 216254494 308602056 536028065 795907127 774222805 906803254 35703387 586534211 777383232 856791487 477335222 712749632 173910867 744632562 125249407 600800942 487630838 972639900 202936224 648113362 238108654 628804756 723917442 848837411 340498417 541101341 692534747 965894500 251664833 369147428 498048003 931552568 500178698 858531821 512180250 945797050 453769242 809694494 737236994 948223549 201388693 386699076 21564014 643158354 818931388 843848771 712735020 928446423 702579218 953999027 48967936 746977728 271469189 969458900 479697890 537140408 994105700 996283319 920088168 973780417 411686691 856745167 745122078 894672335 121689348 624895920 28175994 471076866 19918778 719814429 640778866 986897440 436670884 898463302 727550216 872103268 561755847 738729576 748687177 993247599 635264649 962113253 378805420 906658763 352965983 923537151 71256892 242403639 43582963 443165983 729515102 734893891 393839390 806213890 404256224 535976426 10805240 531389485 728861977 776083470 679593758 862231966 652438052 678743860 125289667 920743144 817151176 857020324 433129198 578261414 694673810 752214053 553170860 556874578 75674767 85738563 281936318 772694997 360016837 851721056 567287243 875130472 814770165 955443232 105105155 443858603 200542033 381801935 535535190 752757781 638751973 915363994 776649173 923130178 47400675 781987411 111438154 850550172 148535844 974934940 994638694 994919212 688459936 806955918 670646265 796339753 727776118 911123005 808672274 859366639 233740381 564255712 696748815 900703731 897451470 958934411 953053962 995588739 653588444 747437268 117685914 647711273 973986773 996623797 144034828 339183412 164857577 686124347 517684579 877797113 162185796 937360861 290090793 679466169 634285365 736086644 487132108 720586337 448240269 927354526 959255660 986495290 860234433 972733960 744278313 973806356 542366398 604290927 444617558 989062770 379873810 899970043 920998625 928466764 395983279 493469510 595316765 814438633 902235340 991495112 43011927 630584271 123401186 255436871 335195909 894444385 732961183 796940309 525779426 906441696 787618736 914813087 560971392 988207393 619974458 643639150 315011864 819666722 795338047 917300567 522640521 859458792 857988732 935684101 690230167 890613763 111615473 136995007 130473850 154820550 172001080 546377964 733100962 943343940 836043326 925127117 68402223 367396765 609662093 690396402 88682603 259521018 796503967 830790804 678455536 941964247 850618324 986214568 20036501 909757731 489314565 776873842 56103417 605464730 674775535 692914588 399332462 945669845 133170337 901650820 358587694 889352907 585640641 947131768 260207306 630402336 787275645 862695994 72965417 805641174 456581347 656742519 684348541 891738175 456115783 474419051 198283248 335013783 438071475 678327405 598655745 851638954 349316091 929132779 451312739 478918898 348368114 417291019 53838802 494554942 341133754 393497448 597694929 907102627 187357386 538577159 405517277 506440446 76761048 615194431 268348702 873932857 480577619 814205952 67455169 224432758 274836113 610417964 258321148 981773008 950368292 959725321 566060325 577614562 592927045 626786558 170884299 621842569 877128339 917724116 734024846 928496373 763142999 921622852 145770783 627449822 816189265 845778139 970449932 979358240 731231995 756881795 301603083 962939594 494208627 524205323 175204190 961829236 991863623 996119311 988186015 989865045 239819196 898797169 849797182 889534277 258577709 388609096 514405245 588470575 738158051 933831795 286628186 924103466 604964863 792400258 798217091 982632150 623725119 711901378 573979489 791581614 337740096 776460199 418569970 900553799 627108549 748518589 175292930 655019889 369673729 377970962 270504630 820460860 213532476 527674258 61331464 750422381 475721141 725743799 104626568 658551676 130420533 800849468 772627483 904084814 578079014 686183100 173753622 797990901 38905292 906662320 409964618 632562820 770818160 857291822 636325457 796743441 852323557 858376807 733250144 939521316 603873020 891434125 19092809 575986678 804861558 820826133 499211138 891268310 863579667 952512464 951313831 966318879 900878751 914325390 252732483 634046634 367078489 566876308 117832370 854738175 243995377 891617137 30336189 477132872 882595009 883042513 28473992 724935311 160775545 520848949 964791420 976888152 774768406 907772352 908062195 932365423 854561520 937263051 654778699 934897209